From 37902d914e509bcda1537ecb9fcfb71e1177f294 Mon Sep 17 00:00:00 2001 From: github-actions-bot Date: Wed, 28 Aug 2024 06:11:55 +0000 Subject: [PATCH] chore(docs): including latest changes --- .nojekyll | 0 404.html | 13 + CNAME | 1 + FAQ/index.html | 13 + advanced/custom-block-explorer/index.html | 15 + advanced/debug-wallet/index.html | 19 + advanced/different-node/index.html | 52 + advanced/flows/connection/index.html | 24 + .../flows/extension-communication/index.html | 40 + advanced/flows/ledger-extension/index.html | 61 + advanced/flows/local-mnemonic/index.html | 72 + advanced/flows/p2p-direct/index.html | 57 + advanced/flows/p2p-extension/index.html | 78 + advanced/push-notification/index.html | 29 + advanced/sdk-info/index.html | 103 + advanced/ui-elements/index.html | 319 + assets/css/styles.9ef2b1c1.css | 1 + ...eport-1a9f7b44c55b9cb77ba2c8f4bc4f2654.pdf | Bin 0 -> 179200 bytes assets/js/01743682.7b993dde.js | 1 + assets/js/0b185270.b409fba0.js | 1 + assets/js/0ce74438.755c0103.js | 1 + assets/js/0e7ff25a.687fd098.js | 1 + assets/js/0fd61c0d.94b145bb.js | 1 + assets/js/101ac4ba.1f94537f.js | 1 + assets/js/1051.6b559b36.js | 1 + assets/js/1118.598341ce.js | 1 + assets/js/130.dd62c394.js | 18474 ++++++++ assets/js/1650.824f2782.js | 1 + assets/js/1675.a04b27f1.js | 2 + assets/js/1675.a04b27f1.js.LICENSE.txt | 13 + assets/js/174.b01925d7.js | 1903 + assets/js/1756.90d46048.js | 1 + assets/js/17896441.582e6ed0.js | 1 + assets/js/17a5e4a0.61b2c92e.js | 1 + assets/js/1966.46a599b1.js | 2 + assets/js/1966.46a599b1.js.LICENSE.txt | 9 + assets/js/1a9a3f27.85d7d087.js | 1 + assets/js/1c09c9e5.f358baea.js | 1 + assets/js/205.ccb78266.js | 3379 ++ assets/js/2130.3f253d66.js | 1 + assets/js/217b6866.b5567768.js | 1 + assets/js/217fc9b0.8352dfbd.js | 1 + assets/js/2207.c8d523f5.js | 1 + assets/js/2237.df05d168.js | 1 + assets/js/22dd74f7.e13bcae4.js | 1 + assets/js/2334.765c02c9.js | 1 + assets/js/2557.a87dcdf9.js | 1 + assets/js/257.806ad7d7.js | 1376 + assets/js/261.e26e4393.js | 10534 +++++ assets/js/2627.b39a0a0c.js | 1 + assets/js/2654.a1ea61cb.js | 1 + assets/js/26cf8def.12487983.js | 1 + assets/js/290c534d.10227560.js | 1 + assets/js/297a623e.0c48be19.js | 1 + assets/js/2d4036fa.8a16ac7b.js | 1 + assets/js/300.96924fff.js | 2191 + assets/js/30259897.f8f67bc3.js | 1 + assets/js/3148.2355113c.js | 1 + assets/js/350.8d93a742.js | 3658 ++ assets/js/376.f69f96df.js | 3669 ++ assets/js/376.f85d7542.js | 1 + assets/js/3773.8ca02dac.js | 1 + assets/js/37c45b6e.9e4218a7.js | 1 + assets/js/388.3d9bfee9.js | 7 + assets/js/388.3d9bfee9.js.LICENSE.txt | 29 + assets/js/42.aee3fc02.js | 13621 ++++++ assets/js/4257.c73e0899.js | 1 + assets/js/43c645a4.a8e41006.js | 1 + assets/js/444.4cf2dabf.js | 25998 +++++++++++ assets/js/456ed9d3.e2cbdef6.js | 1 + assets/js/46066526.0ff98873.js | 1 + assets/js/47207bf5.57d43069.js | 1 + assets/js/4774e46e.474f0463.js | 1 + assets/js/4918.51c847f6.js | 1 + assets/js/5042.9020b18b.js | 1 + assets/js/51.c5a0cb2b.js | 9887 ++++ assets/js/5138b276.1d0b269f.js | 1 + assets/js/51a2d8ae.fa23b7c2.js | 1 + assets/js/52e46fcb.a81cb908.js | 1 + assets/js/533.714f3192.js | 10270 ++++ assets/js/5533.f50ad071.js | 1 + assets/js/5573.308e9e29.js | 1 + assets/js/55a63298.6b3964e1.js | 1 + assets/js/5725.a65b6af0.js | 1 + assets/js/573.c1946ce1.js | 22 + assets/js/593.b090376f.js | 1417 + assets/js/593.d8984807.js | 1 + assets/js/5e95c892.4bded512.js | 1 + assets/js/5eff195f.111853c1.js | 1 + assets/js/627.557522ef.js | 1998 + assets/js/6337e8b8.1f3c9e81.js | 1 + assets/js/6459b84b.0cebdbd1.js | 1 + assets/js/650.ddb4c2f8.js | 11076 +++++ assets/js/654.dcabc5dc.js | 7849 ++++ assets/js/657.d2e737ec.js | 12931 +++++ assets/js/6578.5add0efb.js | 1 + assets/js/6600eccf.3594c7de.js | 1 + assets/js/68fbe426.6cf9e4a8.js | 1 + assets/js/6944.7323ae4c.js | 1 + assets/js/6980e0a8.a95ec79f.js | 1 + assets/js/6ce25108.75382553.js | 1 + assets/js/6de08067.c1e639bd.js | 1 + assets/js/6f01bb8a.4f3b2a12.js | 1 + assets/js/7174.37a2158b.js | 1 + assets/js/7205.f054f2ea.js | 1 + assets/js/725.738e1627.js | 25810 ++++++++++ assets/js/727.e2e0176b.js | 1443 + assets/js/7285.38e51115.js | 1 + assets/js/737201f3.d56a77f9.js | 1 + assets/js/756.a4b79c01.js | 26001 +++++++++++ assets/js/7756.11626590.js | 2 + assets/js/7756.11626590.js.LICENSE.txt | 1235 + assets/js/799.8003a73f.js | 1279 + assets/js/799.f5c4ee64.js | 1 + assets/js/7c0edf3f.0fd3c6e9.js | 1 + assets/js/81aea14d.fdca676d.js | 1 + assets/js/8350.11c681e4.js | 1 + assets/js/8444.a1d0836b.js | 1 + assets/js/8657.cdc28bdc.js | 1 + assets/js/8666e12c.9fefa473.js | 1 + assets/js/8731.f07e1785.js | 1 + assets/js/8737.709d59c2.js | 1 + assets/js/886.6423997a.js | 2 + assets/js/886.6423997a.js.LICENSE.txt | 1241 + assets/js/893cd010.48eaf838.js | 1 + assets/js/8942.e2e38276.js | 1 + assets/js/8c4cd115.7691ad09.js | 1 + assets/js/918.a3ff08df.js | 2725 ++ assets/js/91a62d1d.f94345d4.js | 1 + assets/js/9300.631015cd.js | 1 + assets/js/93519239.0005773d.js | 1 + assets/js/9367aaed.ee948010.js | 1 + assets/js/942.9e8b493c.js | 22 + assets/js/944f76d3.6510029f.js | 1 + assets/js/966.beb07931.js | 38826 ++++++++++++++++ assets/js/9727.319b939b.js | 1 + assets/js/992.d24d2f5f.js | 22 + assets/js/9992.a6d1e6ef.js | 1 + assets/js/9fa75a1f.b919b8af.js | 1 + assets/js/a1e6cf0c.f1feaad3.js | 1 + assets/js/a60c61ad.522e7b7c.js | 1 + assets/js/a7456010.bbc980e2.js | 1 + assets/js/a7bd4aaa.202fb6de.js | 1 + assets/js/a860281a.4f9aaa86.js | 1 + assets/js/a94703ab.07b7456e.js | 1 + assets/js/aba21aa0.2bc0d1fd.js | 1 + assets/js/b019d60f.54a5441f.js | 1 + assets/js/b1ad1816.8e00384f.js | 1 + assets/js/c45f5d30.542d31c4.js | 1 + assets/js/c98b45ab.e24870ca.js | 1 + assets/js/cdf36e4a.14cafaff.js | 1 + assets/js/ce258a00.7dd89e9f.js | 1 + assets/js/ce939266.454d27be.js | 1 + assets/js/d5584496.0c219ab2.js | 1 + assets/js/d78c951a.a6b517f8.js | 1 + assets/js/e1b5b623.9883aada.js | 1 + assets/js/e66d55ff.2f0a90b6.js | 1 + assets/js/ea634581.d7001c0b.js | 1 + assets/js/eae02c20.1eaa4cd0.js | 1 + assets/js/ef4059aa.50865278.js | 1 + assets/js/f732e427.ab5c8413.js | 1 + assets/js/main.158debb3.js | 2 + assets/js/main.158debb3.js.LICENSE.txt | 71 + assets/js/runtime~main.ee4d937a.js | 1 + beacon/wallets/index.html | 11 + blockchains/introduction/index.html | 39 + blockchains/substrate/index.html | 37 + blockchains/tezos-sapling/index.html | 32 + blockchains/tezos/index.html | 13 + blockchains/usage/index.html | 16 + contributing/index.html | 21 + dapps/index.html | 15 + getting-started/advanced-example/index.html | 168 + getting-started/best-practices/index.html | 43 + getting-started/first-dapp/index.html | 209 + getting-started/high-performance/index.html | 52 + getting-started/installation/index.html | 20 + getting-started/simple-example/index.html | 86 + .../subscribe-to-active-account/index.html | 59 + guides/WC-events/index.html | 51 + guides/active-account/index.html | 60 + guides/broadcast-request/index.html | 38 + guides/bug-report/index.html | 26 + guides/contract-error-handling/index.html | 18 + guides/disconnecting-a-wallet/index.html | 85 + guides/fa1.2-transfer/index.html | 47 + guides/fa2-transfer/index.html | 57 + guides/metrics/index.html | 38 + guides/migration-guide/index.html | 64 + guides/network/index.html | 149 + guides/request-permissions/index.html | 52 + guides/sign-payload/index.html | 100 + guides/simple-contract-call/index.html | 87 + guides/standalone-delegation/index.html | 18 + guides/subscribe-to-event/index.html | 81 + img/beacon-android-pairing-2.png | Bin 0 -> 117940 bytes img/beacon-android-pairing.png | Bin 0 -> 78641 bytes img/beacon-awaiting.gif | Bin 0 -> 51992 bytes img/beacon-ios-pairing-2.png | Bin 0 -> 114734 bytes img/beacon-ios-pairing.png | Bin 0 -> 90671 bytes img/beacon-loading-open.gif | Bin 0 -> 100756 bytes img/beacon-loading.gif | Bin 0 -> 51399 bytes img/beacon-pairing-ui.png | Bin 0 -> 224025 bytes img/bug_report_alert.png | Bin 0 -> 117321 bytes img/favicon.ico | Bin 0 -> 4286 bytes img/guides.svg | 19 + img/hello-world.svg | 16 + img/logo-white.svg | 49 + img/logo.svg | 1 + index.html | 35 + playground/index.html | 13 + post-mortem-2/index.html | 49 + post-mortem/index.html | 51 + security-audits/index.html | 23 + sitemap.xml | 1 + supported-wallets.html/index.html | 11 + supported-wallets/index.html | 32 + .../advanced/android/configuration/index.html | 28 + .../coroutines-alternatives/index.html | 32 + wallet/advanced/ios/configuration/index.html | 27 + wallet/errors/index.html | 13 + .../android/connect-to-dapp/index.html | 43 + .../android/disconnect-from-dapp/index.html | 27 + .../android/installation/index.html | 54 + .../ios/connect-to-dapp/index.html | 41 + .../ios/disconnect-from-dapp/index.html | 26 + .../ios/installation/index.html | 32 + .../web/getting-started/index.html | 25 + wallet/introduction/index.html | 13 + wallet/messages/substrate/index.html | 13 + wallet/messages/tezos/index.html | 13 + wallet/security/index.html | 14 + 232 files changed, 242494 insertions(+) create mode 100644 .nojekyll create mode 100644 404.html create mode 100644 CNAME create mode 100644 FAQ/index.html create mode 100644 advanced/custom-block-explorer/index.html create mode 100644 advanced/debug-wallet/index.html create mode 100644 advanced/different-node/index.html create mode 100644 advanced/flows/connection/index.html create mode 100644 advanced/flows/extension-communication/index.html create mode 100644 advanced/flows/ledger-extension/index.html create mode 100644 advanced/flows/local-mnemonic/index.html create mode 100644 advanced/flows/p2p-direct/index.html create mode 100644 advanced/flows/p2p-extension/index.html create mode 100644 advanced/push-notification/index.html create mode 100644 advanced/sdk-info/index.html create mode 100644 advanced/ui-elements/index.html create mode 100644 assets/css/styles.9ef2b1c1.css create mode 100644 assets/files/LeastAuthorityReport-1a9f7b44c55b9cb77ba2c8f4bc4f2654.pdf create mode 100644 assets/js/01743682.7b993dde.js create mode 100644 assets/js/0b185270.b409fba0.js create mode 100644 assets/js/0ce74438.755c0103.js create mode 100644 assets/js/0e7ff25a.687fd098.js create mode 100644 assets/js/0fd61c0d.94b145bb.js create mode 100644 assets/js/101ac4ba.1f94537f.js create mode 100644 assets/js/1051.6b559b36.js create mode 100644 assets/js/1118.598341ce.js create mode 100644 assets/js/130.dd62c394.js create mode 100644 assets/js/1650.824f2782.js create mode 100644 assets/js/1675.a04b27f1.js create mode 100644 assets/js/1675.a04b27f1.js.LICENSE.txt create mode 100644 assets/js/174.b01925d7.js create mode 100644 assets/js/1756.90d46048.js create mode 100644 assets/js/17896441.582e6ed0.js create mode 100644 assets/js/17a5e4a0.61b2c92e.js create mode 100644 assets/js/1966.46a599b1.js create mode 100644 assets/js/1966.46a599b1.js.LICENSE.txt create mode 100644 assets/js/1a9a3f27.85d7d087.js create mode 100644 assets/js/1c09c9e5.f358baea.js create mode 100644 assets/js/205.ccb78266.js create mode 100644 assets/js/2130.3f253d66.js create mode 100644 assets/js/217b6866.b5567768.js create mode 100644 assets/js/217fc9b0.8352dfbd.js create mode 100644 assets/js/2207.c8d523f5.js create mode 100644 assets/js/2237.df05d168.js create mode 100644 assets/js/22dd74f7.e13bcae4.js create mode 100644 assets/js/2334.765c02c9.js create mode 100644 assets/js/2557.a87dcdf9.js create mode 100644 assets/js/257.806ad7d7.js create mode 100644 assets/js/261.e26e4393.js create mode 100644 assets/js/2627.b39a0a0c.js create mode 100644 assets/js/2654.a1ea61cb.js create mode 100644 assets/js/26cf8def.12487983.js create mode 100644 assets/js/290c534d.10227560.js create mode 100644 assets/js/297a623e.0c48be19.js create mode 100644 assets/js/2d4036fa.8a16ac7b.js create mode 100644 assets/js/300.96924fff.js create mode 100644 assets/js/30259897.f8f67bc3.js create mode 100644 assets/js/3148.2355113c.js create mode 100644 assets/js/350.8d93a742.js create mode 100644 assets/js/376.f69f96df.js create mode 100644 assets/js/376.f85d7542.js create mode 100644 assets/js/3773.8ca02dac.js create mode 100644 assets/js/37c45b6e.9e4218a7.js create mode 100644 assets/js/388.3d9bfee9.js create mode 100644 assets/js/388.3d9bfee9.js.LICENSE.txt create mode 100644 assets/js/42.aee3fc02.js create mode 100644 assets/js/4257.c73e0899.js create mode 100644 assets/js/43c645a4.a8e41006.js create mode 100644 assets/js/444.4cf2dabf.js create mode 100644 assets/js/456ed9d3.e2cbdef6.js create mode 100644 assets/js/46066526.0ff98873.js create mode 100644 assets/js/47207bf5.57d43069.js create mode 100644 assets/js/4774e46e.474f0463.js create mode 100644 assets/js/4918.51c847f6.js create mode 100644 assets/js/5042.9020b18b.js create mode 100644 assets/js/51.c5a0cb2b.js create mode 100644 assets/js/5138b276.1d0b269f.js create mode 100644 assets/js/51a2d8ae.fa23b7c2.js create mode 100644 assets/js/52e46fcb.a81cb908.js create mode 100644 assets/js/533.714f3192.js create mode 100644 assets/js/5533.f50ad071.js create mode 100644 assets/js/5573.308e9e29.js create mode 100644 assets/js/55a63298.6b3964e1.js create mode 100644 assets/js/5725.a65b6af0.js create mode 100644 assets/js/573.c1946ce1.js create mode 100644 assets/js/593.b090376f.js create mode 100644 assets/js/593.d8984807.js create mode 100644 assets/js/5e95c892.4bded512.js create mode 100644 assets/js/5eff195f.111853c1.js create mode 100644 assets/js/627.557522ef.js create mode 100644 assets/js/6337e8b8.1f3c9e81.js create mode 100644 assets/js/6459b84b.0cebdbd1.js create mode 100644 assets/js/650.ddb4c2f8.js create mode 100644 assets/js/654.dcabc5dc.js create mode 100644 assets/js/657.d2e737ec.js create mode 100644 assets/js/6578.5add0efb.js create mode 100644 assets/js/6600eccf.3594c7de.js create mode 100644 assets/js/68fbe426.6cf9e4a8.js create mode 100644 assets/js/6944.7323ae4c.js create mode 100644 assets/js/6980e0a8.a95ec79f.js create mode 100644 assets/js/6ce25108.75382553.js create mode 100644 assets/js/6de08067.c1e639bd.js create mode 100644 assets/js/6f01bb8a.4f3b2a12.js create mode 100644 assets/js/7174.37a2158b.js create mode 100644 assets/js/7205.f054f2ea.js create mode 100644 assets/js/725.738e1627.js create mode 100644 assets/js/727.e2e0176b.js create mode 100644 assets/js/7285.38e51115.js create mode 100644 assets/js/737201f3.d56a77f9.js create mode 100644 assets/js/756.a4b79c01.js create mode 100644 assets/js/7756.11626590.js create mode 100644 assets/js/7756.11626590.js.LICENSE.txt create mode 100644 assets/js/799.8003a73f.js create mode 100644 assets/js/799.f5c4ee64.js create mode 100644 assets/js/7c0edf3f.0fd3c6e9.js create mode 100644 assets/js/81aea14d.fdca676d.js create mode 100644 assets/js/8350.11c681e4.js create mode 100644 assets/js/8444.a1d0836b.js create mode 100644 assets/js/8657.cdc28bdc.js create mode 100644 assets/js/8666e12c.9fefa473.js create mode 100644 assets/js/8731.f07e1785.js create mode 100644 assets/js/8737.709d59c2.js create mode 100644 assets/js/886.6423997a.js create mode 100644 assets/js/886.6423997a.js.LICENSE.txt create mode 100644 assets/js/893cd010.48eaf838.js create mode 100644 assets/js/8942.e2e38276.js create mode 100644 assets/js/8c4cd115.7691ad09.js create mode 100644 assets/js/918.a3ff08df.js create mode 100644 assets/js/91a62d1d.f94345d4.js create mode 100644 assets/js/9300.631015cd.js create mode 100644 assets/js/93519239.0005773d.js create mode 100644 assets/js/9367aaed.ee948010.js create mode 100644 assets/js/942.9e8b493c.js create mode 100644 assets/js/944f76d3.6510029f.js create mode 100644 assets/js/966.beb07931.js create mode 100644 assets/js/9727.319b939b.js create mode 100644 assets/js/992.d24d2f5f.js create mode 100644 assets/js/9992.a6d1e6ef.js create mode 100644 assets/js/9fa75a1f.b919b8af.js create mode 100644 assets/js/a1e6cf0c.f1feaad3.js create mode 100644 assets/js/a60c61ad.522e7b7c.js create mode 100644 assets/js/a7456010.bbc980e2.js create mode 100644 assets/js/a7bd4aaa.202fb6de.js create mode 100644 assets/js/a860281a.4f9aaa86.js create mode 100644 assets/js/a94703ab.07b7456e.js create mode 100644 assets/js/aba21aa0.2bc0d1fd.js create mode 100644 assets/js/b019d60f.54a5441f.js create mode 100644 assets/js/b1ad1816.8e00384f.js create mode 100644 assets/js/c45f5d30.542d31c4.js create mode 100644 assets/js/c98b45ab.e24870ca.js create mode 100644 assets/js/cdf36e4a.14cafaff.js create mode 100644 assets/js/ce258a00.7dd89e9f.js create mode 100644 assets/js/ce939266.454d27be.js create mode 100644 assets/js/d5584496.0c219ab2.js create mode 100644 assets/js/d78c951a.a6b517f8.js create mode 100644 assets/js/e1b5b623.9883aada.js create mode 100644 assets/js/e66d55ff.2f0a90b6.js create mode 100644 assets/js/ea634581.d7001c0b.js create mode 100644 assets/js/eae02c20.1eaa4cd0.js create mode 100644 assets/js/ef4059aa.50865278.js create mode 100644 assets/js/f732e427.ab5c8413.js create mode 100644 assets/js/main.158debb3.js create mode 100644 assets/js/main.158debb3.js.LICENSE.txt create mode 100644 assets/js/runtime~main.ee4d937a.js create mode 100644 beacon/wallets/index.html create mode 100644 blockchains/introduction/index.html create mode 100644 blockchains/substrate/index.html create mode 100644 blockchains/tezos-sapling/index.html create mode 100644 blockchains/tezos/index.html create mode 100644 blockchains/usage/index.html create mode 100644 contributing/index.html create mode 100644 dapps/index.html create mode 100644 getting-started/advanced-example/index.html create mode 100644 getting-started/best-practices/index.html create mode 100644 getting-started/first-dapp/index.html create mode 100644 getting-started/high-performance/index.html create mode 100644 getting-started/installation/index.html create mode 100644 getting-started/simple-example/index.html create mode 100644 getting-started/subscribe-to-active-account/index.html create mode 100644 guides/WC-events/index.html create mode 100644 guides/active-account/index.html create mode 100644 guides/broadcast-request/index.html create mode 100644 guides/bug-report/index.html create mode 100644 guides/contract-error-handling/index.html create mode 100644 guides/disconnecting-a-wallet/index.html create mode 100644 guides/fa1.2-transfer/index.html create mode 100644 guides/fa2-transfer/index.html create mode 100644 guides/metrics/index.html create mode 100644 guides/migration-guide/index.html create mode 100644 guides/network/index.html create mode 100644 guides/request-permissions/index.html create mode 100644 guides/sign-payload/index.html create mode 100644 guides/simple-contract-call/index.html create mode 100644 guides/standalone-delegation/index.html create mode 100644 guides/subscribe-to-event/index.html create mode 100644 img/beacon-android-pairing-2.png create mode 100644 img/beacon-android-pairing.png create mode 100644 img/beacon-awaiting.gif create mode 100644 img/beacon-ios-pairing-2.png create mode 100644 img/beacon-ios-pairing.png create mode 100644 img/beacon-loading-open.gif create mode 100644 img/beacon-loading.gif create mode 100644 img/beacon-pairing-ui.png create mode 100644 img/bug_report_alert.png create mode 100644 img/favicon.ico create mode 100644 img/guides.svg create mode 100644 img/hello-world.svg create mode 100644 img/logo-white.svg create mode 100644 img/logo.svg create mode 100644 index.html create mode 100644 playground/index.html create mode 100644 post-mortem-2/index.html create mode 100644 post-mortem/index.html create mode 100644 security-audits/index.html create mode 100644 sitemap.xml create mode 100644 supported-wallets.html/index.html create mode 100644 supported-wallets/index.html create mode 100644 wallet/advanced/android/configuration/index.html create mode 100644 wallet/advanced/android/coroutines-alternatives/index.html create mode 100644 wallet/advanced/ios/configuration/index.html create mode 100644 wallet/errors/index.html create mode 100644 wallet/getting-started/android/connect-to-dapp/index.html create mode 100644 wallet/getting-started/android/disconnect-from-dapp/index.html create mode 100644 wallet/getting-started/android/installation/index.html create mode 100644 wallet/getting-started/ios/connect-to-dapp/index.html create mode 100644 wallet/getting-started/ios/disconnect-from-dapp/index.html create mode 100644 wallet/getting-started/ios/installation/index.html create mode 100644 wallet/getting-started/web/getting-started/index.html create mode 100644 wallet/introduction/index.html create mode 100644 wallet/messages/substrate/index.html create mode 100644 wallet/messages/tezos/index.html create mode 100644 wallet/security/index.html diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 00000000..e69de29b diff --git a/404.html b/404.html new file mode 100644 index 00000000..ec794e02 --- /dev/null +++ b/404.html @@ -0,0 +1,13 @@ + + + + + +Beacon Docs + + + + +
Skip to main content

Page Not Found

We could not find what you were looking for.

Please contact the owner of the site that linked you to the original URL and let them know their link is broken.

+ + \ No newline at end of file diff --git a/CNAME b/CNAME new file mode 100644 index 00000000..2eb918ee --- /dev/null +++ b/CNAME @@ -0,0 +1 @@ +docs.walletbeacon.io \ No newline at end of file diff --git a/FAQ/index.html b/FAQ/index.html new file mode 100644 index 00000000..fafde8cf --- /dev/null +++ b/FAQ/index.html @@ -0,0 +1,13 @@ + + + + + +FAQ | Beacon Docs + + + + +
Skip to main content
+ + \ No newline at end of file diff --git a/advanced/custom-block-explorer/index.html b/advanced/custom-block-explorer/index.html new file mode 100644 index 00000000..2e9440a5 --- /dev/null +++ b/advanced/custom-block-explorer/index.html @@ -0,0 +1,15 @@ + + + + + +Custom Block Explorer | Beacon Docs + + + + +
Skip to main content

Custom Block Explorer

The Custom Block Explorer feature in Beacon SDK allows developers to integrate a block explorer of their choice into their dApp. +This is particularly useful for applications that require specific functionalities or presentation styles offered by certain block explorers, or for those who wish to provide a more seamless user experience by integrating a block explorer directly into the app interface.

+
import {
BlockExplorer,
DAppClient,
NetworkType,
Network,
} from "@airgap/beacon-sdk";

class TzStatsBlockExplorer extends BlockExplorer {
constructor(
public readonly rpcUrls: { [key in NetworkType]: string } = {
[NetworkType.MAINNET]: "https://tzstats.com/",
[NetworkType.GHOSTNET]: "https://ghost.tzstats.com/",
[NetworkType.WEEKLYNET]: "https://monday.tzstats.com/",
[NetworkType.DAILYNET]: "https://daily.tzstats.com/",
[NetworkType.DELPHINET]: "https://delphi.tzstats.com/",
[NetworkType.EDONET]: "https://edo.tzstats.com/",
[NetworkType.FLORENCENET]: "https://florence.tzstats.com/",
[NetworkType.GRANADANET]: "https://granada.tzstats.com/",
[NetworkType.HANGZHOUNET]: "https://hangzhounet.tzstats.com/",
[NetworkType.ITHACANET]: "https://ithaca.tzstats.com/",
[NetworkType.JAKARTANET]: "https://jakara.tzstats.com/",
[NetworkType.KATHMANDUNET]: "https://kathmandu.tzstats.com/",
[NetworkType.LIMANET]: "https://lima.tzstats.com/",
[NetworkType.MUMBAINET]: "https://mumbai.tzstats.com/",
[NetworkType.NAIROBINET]: "https://nairobi.tzstats.com/",
[NetworkType.OXFORDNET]: "https://oxford.tzstats.com/",
[NetworkType.CUSTOM]: "https://custom.tzstats.com/",
[NetworkType.PARISNET]: "https://paris.tzstats.com/",
},
) {
super(rpcUrls);
}

public async getAddressLink(
address: string,
network: Network,
): Promise<string> {
const blockExplorer = await this.getLinkForNetwork(network);

return `${blockExplorer}/${address}`;
}
public async getTransactionLink(
transactionId: string,
network: Network,
): Promise<string> {
const blockExplorer = await this.getLinkForNetwork(network);

return `${blockExplorer}/${transactionId}`;
}
}

const dAppClient = new DAppClient({
name: "Beacon Docs",
blockExplorer: new TzStatsBlockExplorer(),
});
+ + \ No newline at end of file diff --git a/advanced/debug-wallet/index.html b/advanced/debug-wallet/index.html new file mode 100644 index 00000000..831c515b --- /dev/null +++ b/advanced/debug-wallet/index.html @@ -0,0 +1,19 @@ + + + + + +Debug Wallet | Beacon Docs + + + + +
Skip to main content

Debug Wallet

caution

This wallet is intended for developers to debug their dApps.

+

A common issue with dApps is that users report that a certain functionality doesn't work for them. It is often cumbersome to reproduce this in a development environment because the dev team doesn't have access to the account. The Debug Wallet can help debug those cases.

+

Beacon Debug Wallet

+

Watch-only Accounts

+

With the "watch-only" feature in the Debug Wallet it is possible to connect to any dApp using any tz account. The dApp can then be viewed from the eyes of that user and operations can be debugged with ease.

+

Beacon Accounts

+

It is possible to pair any Beacon-compatible wallet to the Debug Wallet. If you do that, the Debug Wallet acts as a "relay" between the dApp and the actual wallet. Requests and responses will be relayed, but the details can be inspected.

+ + \ No newline at end of file diff --git a/advanced/different-node/index.html b/advanced/different-node/index.html new file mode 100644 index 00000000..77cd74cb --- /dev/null +++ b/advanced/different-node/index.html @@ -0,0 +1,52 @@ + + + + + +Different Beacon Node | Beacon Docs + + + + +
Skip to main content

Different Beacon Node

You can configure the dApp or Wallet to connect to a different beacon node. +Make sure the servers you use are whitelisted in the beacon network and federation is working correctly.

+
Example
import { DAppClient, Regions } from "@airgap/beacon-sdk";
+
+const dAppClient = new DAppClient({
+  name: "Beacon Docs",
+  matrixNodes: {
+    [Regions.EUROPE_WEST]: ["beacon-node-0.papers.tech:8448"],
+  },
+});
+
+try {
+  console.log("Requesting permissions...");
+  const permissions = await dAppClient.requestPermissions();
+  console.log("Got permissions:", permissions.address);
+} catch (error) {
+  console.error("Got error:", error);
+}
+
Loading...
+
tip

The beacon-sdk deterministically chooses one of the nodes in the array. Changing the array of nodes will most likely lead to users losing their connection.

+ + \ No newline at end of file diff --git a/advanced/flows/connection/index.html b/advanced/flows/connection/index.html new file mode 100644 index 00000000..2b8a058e --- /dev/null +++ b/advanced/flows/connection/index.html @@ -0,0 +1,24 @@ + + + + + +Connection | Beacon Docs + + + + +
Skip to main content
+ + \ No newline at end of file diff --git a/advanced/flows/extension-communication/index.html b/advanced/flows/extension-communication/index.html new file mode 100644 index 00000000..f9561726 --- /dev/null +++ b/advanced/flows/extension-communication/index.html @@ -0,0 +1,40 @@ + + + + + +Extension Communication | Beacon Docs + + + + +
Skip to main content

Extension Communication

+ sequenceDiagram + rect rgba(0, 0, 255, .2) + Note over dApp,Peer: Only for Extensions<br />Extensions have 200ms to respond + dApp->>Peer: Ping + Peer->>dApp: Pong + end + rect rgba(0, 0, 255, .2) + Note over dApp,Peer: dApp sends publicKey to Peer + dApp->>Peer: PairingRequest + Note over dApp,Peer: Peer stores the dApp publicKey <br/> Encrypts own publicKey with dApp publicKey <br/> Send back encrypted publicKey + Peer->>dApp: PairingResponse + end +
+
+ sequenceDiagram + rect rgba(0, 0, 255, .2) + Note over dApp,Peer 1: Permission Request is a broadcast to all peers + dApp->>Peer 1: PermissionRequest (Broadcast) + dApp->>Peer 2: PermissionRequest (Broadcast) + Peer 1->>dApp: PermissionResponse + end + rect rgba(0, 0, 255, .2) + Note over dApp,Peer 1: Operation Request is targeted to one peer + dApp->>Peer 1: OperationRequest (specific to peer) + Peer 1->>dApp: OperationResponse + end +
+ + \ No newline at end of file diff --git a/advanced/flows/ledger-extension/index.html b/advanced/flows/ledger-extension/index.html new file mode 100644 index 00000000..68cf8ec7 --- /dev/null +++ b/advanced/flows/ledger-extension/index.html @@ -0,0 +1,61 @@ + + + + + +Ledger | Beacon Docs + + + + +
Skip to main content

Ledger

Init

+
+sequenceDiagram + Popup->>Background: User Prompt (Pair Ledger) + Background->>Ledger: Share Account + Ledger->>Background: Account + Background->>Popup: Return Account +
+

Permission Request

+
+sequenceDiagram dApp->>Background: Request + Background->>Popup: Permission Prompt + Popup->>Popup: User Confirmation + Popup->>Background: Permission Response + Background->>dApp: Response +
+

Operation Request

+
+sequenceDiagram + dApp->>Background: Request + Background->>Popup: Operation Request + Popup->>Background: Confirm + Background->>Background: Forge Operation + Background->>Ledger: Operation Request + Ledger->>Ledger: User confirmation + Ledger->>Background: Signed Operation + Background->>Background: Broadcast + Background->>dApp: Response +
+

Signing Request

+
+sequenceDiagram dApp->>Background: Request + Background->>Popup: Sign Request + Popup->>Background: Confirm + Background->>Ledger: Sign Request + Ledger->>Ledger: User confirmation + Ledger->>Background: Signed Operation + Background->>dApp: Response +
+

Broadcast Request

+
+sequenceDiagram + dApp->>Background: Request + Background->>Popup: Broascast Request + Popup->>Popup: User confirmation + Popup->>Background: Broascast Response + Background->>Background: Broadcast + Background->>dApp: Response +
+ + \ No newline at end of file diff --git a/advanced/flows/local-mnemonic/index.html b/advanced/flows/local-mnemonic/index.html new file mode 100644 index 00000000..9d177181 --- /dev/null +++ b/advanced/flows/local-mnemonic/index.html @@ -0,0 +1,72 @@ + + + + + +Local Mnemonic | Beacon Docs + + + + +
Skip to main content

Local Mnemonic

Init

+
+sequenceDiagram + Popup->>Popup: User Prompt (Add/Generate Mnemonic?) + Popup->>Background: Save Mnemonic + alt generate + Popup->>Background: New / Save mnemonic + Background->>Background: Generate new Mnemonic + end + Background->>Popup: Return Mnemonic +
+

Permission Request

+
+sequenceDiagram + dApp->>Background: Request + Background->>Popup: Permission Request + Popup->>Popup: User confirmation + Popup->>Background: Permission Response + Background->>dApp: Response +
+

Operation Request

+
+sequenceDiagram + dApp->>Background: Request + Background->>Background: Fetch operation data + opt no threshold + Note left of Background: Everything except<br/>simple spend has<br/>to be approved + Background->>Popup: Operation Request + Popup->>Popup: User confirmation + Popup->>Background: Operation Response + end + Background->>Background: Forge Operation + Background->>Background: Sign Operation + Background->>Background: Broadcast + Background->>dApp: Response +
+

Signing Request

+
+sequenceDiagram + dApp->>Background: Request + opt no threshold + Note left of Background: Everything except<br/>simple spend has<br/>to be approved + Background->>Popup: Signing Request + Popup->>Popup: User confirmation + Popup->>Background: Signing Response + end + Background->>Background: Sign Operation + Background->>dApp: Response +
+
warning

Thresholds could be abused to sign contract calls. Wallets must reject request with parameters.

+

Broadcast Request

+
+sequenceDiagram + dApp->>Background: Request + Background->>Popup: Broascast Request + Popup->>Popup: User confirmation + Popup->>Background: Broascast Response + Background->>Background: Broadcast + Background->>dApp: Response +
+ + \ No newline at end of file diff --git a/advanced/flows/p2p-direct/index.html b/advanced/flows/p2p-direct/index.html new file mode 100644 index 00000000..66c84d15 --- /dev/null +++ b/advanced/flows/p2p-direct/index.html @@ -0,0 +1,57 @@ + + + + + +P2P Direct | Beacon Docs + + + + +
Skip to main content

P2P Direct

Init

+
+sequenceDiagram + dApp->>Wallet: Show QR Code (publicKey exchange) + Wallet->>Wallet: User scans QR code + Wallet->>dApp: Send own publicKey to dApp, connection established +
+

Permission Request

+
+sequenceDiagram + dApp->>Wallet: User Prompt (Do you want to pair?) + Wallet->>Wallet: Grant permissions + Wallet->>dApp: Return Address & Permissions +
+

Operation Request

+
+sequenceDiagram + dApp->>Wallet: Request + opt no threshold + Wallet->>Wallet: User confirmation + end + Wallet->>Wallet: Forge Operation + Wallet->>Wallet: Sign + Wallet->>Wallet: Broadcast + Wallet->>dApp: Response +
+

Signing Request

+
+sequenceDiagram + dApp->>Wallet: Request + opt no threshold + Wallet->>Wallet: User confirmation + end + Wallet->>Wallet: Sign + Wallet->>dApp: Response +
+
warning

Thresholds could be abused to sign contract calls. Wallets must reject request with parameters.

+

Broadcast Request

+
+sequenceDiagram + dApp->>Wallet: Request + Wallet->>Wallet: User confirmation + Wallet->>Wallet: Broadcast + Wallet->>dApp: Response +
+ + \ No newline at end of file diff --git a/advanced/flows/p2p-extension/index.html b/advanced/flows/p2p-extension/index.html new file mode 100644 index 00000000..00d953fa --- /dev/null +++ b/advanced/flows/p2p-extension/index.html @@ -0,0 +1,78 @@ + + + + + +P2P Extension | Beacon Docs + + + + +
Skip to main content

P2P Extension

Init

+
+sequenceDiagram + Popup->>Background: Get QR Data + Background->>Background: Start listening for new connections + Background->>Popup: Return QR Data + Popup->>Wallet: Show QR Code (publicKey exchange) + Wallet->>Wallet: User scans QR code + Wallet->>Background: Send own publicKey to dApp, connection established + Background->>Popup: Successful connection +
+
+sequenceDiagram + Popup->>Background: Get QR Data + Background->>Background: Start listening for new connections + Background->>Popup: Return QR Data + Popup->>Wallet: Show QR Code (publicKey exchange) + Wallet->>Wallet: User scans QR code + Wallet->>Background: Send own publicKey to dApp, connection established + Background->>Popup: Successful connection +
+

Permission Request

+
+sequenceDiagram + dApp->>Background: Request + Background->>Wallet: Permission Prompt + Wallet->>Wallet: User Confirmation + Wallet->>Background: Permission Response + Background->>dApp: Response +
+

Operation Request

+
+sequenceDiagram + dApp->>Background: Request + Background->>Wallet: Operation Request + opt no threshold + Wallet->>Wallet: User confirmation + end + Wallet->>Wallet: Forge Operation + Wallet->>Wallet: Sign + Wallet->>Wallet: Broadcast + Wallet->>Background: Operation Response + Background->>dApp: Response +
+

Signing Request

+
+sequenceDiagram + dApp->>Background: Request + Background->>Wallet: Sign Request + opt no threshold + Wallet->>Wallet: User confirmation + end + Wallet->>Wallet: Sign + Wallet->>Background: Sign Response + Background->>dApp: Response +
+

Broadcast Request

+
+sequenceDiagram + dApp->>Background: Request + Background->>Wallet: Signing Request + Wallet->>Wallet: User confirmation + Wallet->>Background: Signing Response + Background->>Background: Broadcast + Background->>dApp: Response +
+ + \ No newline at end of file diff --git a/advanced/push-notification/index.html b/advanced/push-notification/index.html new file mode 100644 index 00000000..409539c3 --- /dev/null +++ b/advanced/push-notification/index.html @@ -0,0 +1,29 @@ + + + + + +Push Notification | Beacon Docs + + + + +
Skip to main content

Push Notification

warning

Push Notifications are in beta. There is no wallet that supports it at the moment.

+ +
+sequenceDiagram + rect rgba(0, 0, 255, .2) + Note over dApp,Peer: Only for Extensions<br />Extensions have 200ms to respond + dApp->>Peer: Ping + Peer->>dApp: Pong + end + rect rgba(0, 0, 255, .2) + Note over dApp,Peer: dApp sends publicKey to Peer + dApp->>Peer: PairingRequest + Note over dApp,Peer: Peer stores the dApp publicKey <br/> Encrypts own publicKey with dApp publicKey <br/> Send back encrypted publicKey + Peer->>dApp: PairingResponse + end +
+

+ + \ No newline at end of file diff --git a/advanced/sdk-info/index.html b/advanced/sdk-info/index.html new file mode 100644 index 00000000..ec319a2c --- /dev/null +++ b/advanced/sdk-info/index.html @@ -0,0 +1,103 @@ + + + + + +Client Info | Beacon Docs + + + + +
Skip to main content

Client Info

The following page lists all the different options in Beacon to retrieve and display information about the SDK.

+
Example
import { BEACON_VERSION, SDK_VERSION } from "@airgap/beacon-sdk";
+
+console.log("SDK Version", SDK_VERSION);
+console.log("Beacon Version", BEACON_VERSION);
+
Loading...
+
Example
import { DAppClient } from "@airgap/beacon-sdk";
+
+const dAppClient = new DAppClient({ name: "Beacon Docs" });
+
+console.log(`Connected Accounts:`, await dAppClient.getAccounts());
+console.log(`Connected Peers:`, await dAppClient.getPeers());
+
Loading...
+
Example
import { DAppClient, NetworkType } from "@airgap/beacon-sdk";
+
+const dAppClient = new DAppClient({ name: "Beacon Docs" });
+
+const addressLink = await dAppClient.blockExplorer.getAddressLink(
+  "tz1MJx9vhaNRSimcuXPK2rW4fLccQnDAnVKJ",
+  { type: NetworkType.MAINNET },
+);
+console.log("Address Link", addressLink);
+
+const txLink = await dAppClient.blockExplorer.getTransactionLink(
+  "onzCRJhQ9zPC38TLGhBTghCW7WAJpfUJ2NpwbbQKbW6LeEL8RfK",
+  { type: NetworkType.MAINNET },
+);
+console.log("Transaction Link", txLink);
+
+console.log("\n\nConnection Info:\n");
+console.log("Status:", dAppClient.connectionStatus);
+const accounts = await dAppClient.getAccounts();
+console.log("Accounts:", accounts);
+const peers = await dAppClient.getPeers();
+console.log("Peers:", peers);
+
+console.log("\n\nDebug:\n");
+console.log("Local Beacon ID:", await dAppClient.beaconId);
+const colorMode = await dAppClient.getColorMode();
+console.log("Color Mode:", colorMode);
+const ownMetadata = await dAppClient.getOwnAppMetadata();
+console.log("Own Metadata:", ownMetadata);
+
Loading...
+ + \ No newline at end of file diff --git a/advanced/ui-elements/index.html b/advanced/ui-elements/index.html new file mode 100644 index 00000000..578f071a --- /dev/null +++ b/advanced/ui-elements/index.html @@ -0,0 +1,319 @@ + + + + + +UI Elements | Beacon Docs + + + + +
Skip to main content

UI Elements

caution

We strongly recommend keeping the default UI Elements. +Consistent UI helps users to interact with different dApps more easily.

+

The default UI elements have been designed with all wallets and user setups in mind. +It handles a lot of cases that are not obvious at first glance. If you really must overwrite the default UI.

+

Custom UI Guidelines

+
    +
  1. When the user wants to connect to a wallet, a selection of wallets must be shown. +The selection depends on the device the user is using and should display different options on different devices.
  2. +
+

On desktop there is only one view with some wallets and the QR code.

https://mydapp.com
Beacon Pairing
+
    +
  1. Every message sent by the dApp should trigger a persistent element on screen, indicating that a request is in progress.
  2. +
+
https://mydapp.com
Beacon Loading
+
    +
  • If no message has been received for a certain amount of time (eg. 5 seconds), the UI should indicate that there are potential connection issues. +The dApp should NOT do any automatic action at this point, because some delays are normal, especially when working with wallets that communicate +over the P2P network.
  • +
  • In the UI element that is shown, the user SHOULD have the option to reset his connection, meaning to disconnect a wallet. This will abort the whole +flow. The user can start the action again, which will now trigger a new "pairing" alert because the previous connection was reset.
  • +
+
https://mydapp.com
Beacon Loading Open
+
    +
  1. Once the Wallet receives the request, it will immediately send back an Acknowledgement Message. +When this message is received in the dApp, the dApp knows that the connection is still valid and the user can handle the request. +The persistent UI element that is shown on screen should now be updated, indicating that we are waiting for user input on the wallet.
  2. +
+
https://mydapp.com
Beacon Awaiting
+
    +
  1. When the response is received, the persistent element can be removed again and the successful (or error) response can be displayed to the user and the application flow can be continued.
  2. +
+

Overwriting Default UI elements

+

You can overwrite all of the default UI elements by doing the following.

+
Example
import {
+  BeaconEvent,
+  DAppClient,
+  defaultEventCallbacks,
+} from "@airgap/beacon-sdk";
+
+const dAppClient = new DAppClient({
+  name: "Beacon Docs",
+  disableDefaultEvents: true, // Disable all events / UI. This also disables the pairing alert.
+  eventHandlers: {
+    // To keep the pairing alert, we have to add the following default event handlers back
+    [BeaconEvent.PAIR_INIT]: {
+      handler: defaultEventCallbacks.PAIR_INIT,
+    },
+    [BeaconEvent.PAIR_SUCCESS]: {
+      handler: defaultEventCallbacks.PAIR_SUCCESS,
+    },
+  },
+});
+
+try {
+  console.log("Requesting permissions...");
+  const permissions = await dAppClient.requestPermissions();
+  console.log("Got permissions:", permissions.address);
+} catch (error) {
+  console.error("Got error:", error);
+}
+
Loading...
+

You can also add your own logic to specific events and still keep the original behaviour.

+

The same can be achieved without overwriting the default event handler by subscribing to an event. This method is preferred, if possible.

+
Example
import {
+  BeaconEvent,
+  DAppClient,
+  defaultEventCallbacks,
+  P2PPairingRequest,
+  PostMessagePairingRequest,
+  NetworkType,
+  WalletConnectPairingRequest,
+  AnalyticsInterface,
+} from "@airgap/beacon-sdk";
+
+const dAppClient = new DAppClient({
+  name: "Beacon Docs",
+  eventHandlers: {
+    [BeaconEvent.PAIR_INIT]: {
+      // Every BeaconEvent can be overriden by passing a handler here.
+      // The default will not be executed anymore. To keep the default,
+      // you will have to call it again.
+      handler: async (
+        data: {
+          p2pPeerInfo: () => Promise<P2PPairingRequest>;
+          postmessagePeerInfo: () => Promise<PostMessagePairingRequest>;
+          walletConnectPeerInfo: () => Promise<WalletConnectPairingRequest>;
+          networkType: NetworkType;
+          abortedHandler?(): void;
+          disclaimerText?: string;
+          analytics: AnalyticsInterface;
+          featuredWallets?: string[];
+        },
+        eventCallback?: any[] | undefined,
+      ): Promise<void> => {
+        await defaultEventCallbacks.PAIR_INIT(data); // Add this if you want to keep the default behaviour.
+        console.log("syncInfo", data, eventCallback);
+      },
+    },
+  },
+});
+
+try {
+  console.log("Requesting permissions...");
+  const permissions = await dAppClient.requestPermissions();
+  console.log("Got permissions:", permissions.address);
+} catch (error) {
+  console.error("Got error:", error);
+}
+
Loading...
+

The closing of the pairing alert can not be listened to by default. The reason for this is the delay in the P2P connections. +It is possible that a user scans the pairing QR code with his wallet and then closes the alert while waiting for the connection to be established. +If the dApp interprets the "closing" of the alert as an abort, and a few seconds later the connection is established successfully, the behaviour could be unexpected.

+

If you still want to be notified of the closing of the pairing window, you can do it in the following way, while keeping the default behaviour.

+
Example
import {
+  BeaconEvent,
+  DAppClient,
+  defaultEventCallbacks,
+  P2PPairingRequest,
+  PostMessagePairingRequest,
+  NetworkType,
+  WalletConnectPairingRequest,
+  AnalyticsInterface,
+} from "@airgap/beacon-sdk";
+
+const dAppClient = new DAppClient({
+    name: "Beacon Docs",
+    eventHandlers: {
+      [BeaconEvent.PAIR_INIT]: {
+        // Every BeaconEvent can be overriden by passing a handler here.
+        // The default will not be executed anymore. To keep the default,
+        // you will have to call it again.
+        handler: async (data: {
+          p2pPeerInfo: () => Promise<P2PPairingRequest>;
+          postmessagePeerInfo: () => Promise<PostMessagePairingRequest>;
+          walletConnectPeerInfo: () => Promise<WalletConnectPairingRequest>;
+          networkType: NetworkType;
+          abortedHandler?(): void;
+          disclaimerText?: string;
+          analytics: AnalyticsInterface;
+          featuredWallets?: string[];
+        }): Promise<void> => {
+          // If you want to attach your own "on alert closed" handler
+          // eslint-disable-next-line @typescript-eslint/unbound-method
+          const oldHandler = data.abortedHandler;
+          const newHandler = (): void => {
+            if (oldHandler) {
+              // Make sure to call the internal abortedHandler
+              oldHandler();
+            }
+            // Add your own logic here
+            console.log("My logic");
+
+          data.abortedHandler = newHandler; // Replace the internal abortedHandler with the new one
+          await defaultEventCallbacks.PAIR_INIT(data); // Add this if you want to keep the default behaviour.
+          console.log("syncInfo", data);
+        },
+      },
+    },
+  });
+
+  try {
+    console.log("Requesting permissions...");
+    const permissions = await dAppClient.requestPermissions();
+    console.log("Got permissions:", permissions.address);
+  } catch (error) {
+    console.error("Got error:", error);
+  }
+
+
Loading...
+ + \ No newline at end of file diff --git a/assets/css/styles.9ef2b1c1.css b/assets/css/styles.9ef2b1c1.css new file mode 100644 index 00000000..1fb940be --- /dev/null +++ b/assets/css/styles.9ef2b1c1.css @@ -0,0 +1 @@ +.col,.container{padding:0 var(--ifm-spacing-horizontal);width:100%}.markdown>h2,.markdown>h3,.markdown>h4,.markdown>h5,.markdown>h6{margin-bottom:calc(var(--ifm-heading-vertical-rhythm-bottom)*var(--ifm-leading))}.markdown li,body{word-wrap:break-word}body,ol ol,ol ul,ul ol,ul ul{margin:0}pre,table{overflow:auto}blockquote,pre{margin:0 0 var(--ifm-spacing-vertical)}.breadcrumbs__link,.button{transition-timing-function:var(--ifm-transition-timing-default)}.button,.hash-link{-webkit-user-select:none}.button,code{vertical-align:middle}.button--outline.button--active,.button--outline:active,.button--outline:hover,:root{--ifm-button-color:var(--ifm-font-color-base-inverse)}.menu__link:hover,a{transition:color var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.navbar--dark,:root{--ifm-navbar-link-hover-color:var(--ifm-color-primary)}.menu,.navbar-sidebar{overflow-x:hidden}:root,html[data-theme=dark]{--ifm-color-emphasis-500:var(--ifm-color-gray-500)}.toggleButton_gllP,html{-webkit-tap-highlight-color:transparent}.clean-list,.containsTaskList_mC6p,.details_lb9f>summary,.dropdown__menu,.menu__list{list-style:none}:root{--ifm-color-scheme:light;--ifm-dark-value:10%;--ifm-darker-value:15%;--ifm-darkest-value:30%;--ifm-light-value:15%;--ifm-lighter-value:30%;--ifm-lightest-value:50%;--ifm-contrast-background-value:90%;--ifm-contrast-foreground-value:70%;--ifm-contrast-background-dark-value:70%;--ifm-contrast-foreground-dark-value:90%;--ifm-color-primary:#3578e5;--ifm-color-secondary:#ebedf0;--ifm-color-success:#00a400;--ifm-color-info:#54c7ec;--ifm-color-warning:#ffba00;--ifm-color-danger:#fa383e;--ifm-color-primary-dark:#306cce;--ifm-color-primary-darker:#2d66c3;--ifm-color-primary-darkest:#2554a0;--ifm-color-primary-light:#538ce9;--ifm-color-primary-lighter:#72a1ed;--ifm-color-primary-lightest:#9abcf2;--ifm-color-primary-contrast-background:#ebf2fc;--ifm-color-primary-contrast-foreground:#102445;--ifm-color-secondary-dark:#d4d5d8;--ifm-color-secondary-darker:#c8c9cc;--ifm-color-secondary-darkest:#a4a6a8;--ifm-color-secondary-light:#eef0f2;--ifm-color-secondary-lighter:#f1f2f5;--ifm-color-secondary-lightest:#f5f6f8;--ifm-color-secondary-contrast-background:#fdfdfe;--ifm-color-secondary-contrast-foreground:#474748;--ifm-color-success-dark:#009400;--ifm-color-success-darker:#008b00;--ifm-color-success-darkest:#007300;--ifm-color-success-light:#26b226;--ifm-color-success-lighter:#4dbf4d;--ifm-color-success-lightest:#80d280;--ifm-color-success-contrast-background:#e6f6e6;--ifm-color-success-contrast-foreground:#003100;--ifm-color-info-dark:#4cb3d4;--ifm-color-info-darker:#47a9c9;--ifm-color-info-darkest:#3b8ba5;--ifm-color-info-light:#6ecfef;--ifm-color-info-lighter:#87d8f2;--ifm-color-info-lightest:#aae3f6;--ifm-color-info-contrast-background:#eef9fd;--ifm-color-info-contrast-foreground:#193c47;--ifm-color-warning-dark:#e6a700;--ifm-color-warning-darker:#d99e00;--ifm-color-warning-darkest:#b38200;--ifm-color-warning-light:#ffc426;--ifm-color-warning-lighter:#ffcf4d;--ifm-color-warning-lightest:#ffdd80;--ifm-color-warning-contrast-background:#fff8e6;--ifm-color-warning-contrast-foreground:#4d3800;--ifm-color-danger-dark:#e13238;--ifm-color-danger-darker:#d53035;--ifm-color-danger-darkest:#af272b;--ifm-color-danger-light:#fb565b;--ifm-color-danger-lighter:#fb7478;--ifm-color-danger-lightest:#fd9c9f;--ifm-color-danger-contrast-background:#ffebec;--ifm-color-danger-contrast-foreground:#4b1113;--ifm-color-white:#fff;--ifm-color-black:#000;--ifm-color-gray-0:var(--ifm-color-white);--ifm-color-gray-100:#f5f6f7;--ifm-color-gray-200:#ebedf0;--ifm-color-gray-300:#dadde1;--ifm-color-gray-400:#ccd0d5;--ifm-color-gray-500:#bec3c9;--ifm-color-gray-600:#8d949e;--ifm-color-gray-700:#606770;--ifm-color-gray-800:#444950;--ifm-color-gray-900:#1c1e21;--ifm-color-gray-1000:var(--ifm-color-black);--ifm-color-emphasis-0:var(--ifm-color-gray-0);--ifm-color-emphasis-100:var(--ifm-color-gray-100);--ifm-color-emphasis-200:var(--ifm-color-gray-200);--ifm-color-emphasis-300:var(--ifm-color-gray-300);--ifm-color-emphasis-400:var(--ifm-color-gray-400);--ifm-color-emphasis-600:var(--ifm-color-gray-600);--ifm-color-emphasis-700:var(--ifm-color-gray-700);--ifm-color-emphasis-800:var(--ifm-color-gray-800);--ifm-color-emphasis-900:var(--ifm-color-gray-900);--ifm-color-emphasis-1000:var(--ifm-color-gray-1000);--ifm-color-content:var(--ifm-color-emphasis-900);--ifm-color-content-inverse:var(--ifm-color-emphasis-0);--ifm-color-content-secondary:#525860;--ifm-background-color:#0000;--ifm-background-surface-color:var(--ifm-color-content-inverse);--ifm-global-border-width:1px;--ifm-global-radius:0.4rem;--ifm-hover-overlay:#0000000d;--ifm-font-color-base:var(--ifm-color-content);--ifm-font-color-base-inverse:var(--ifm-color-content-inverse);--ifm-font-color-secondary:var(--ifm-color-content-secondary);--ifm-font-family-base:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";--ifm-font-family-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--ifm-font-size-base:100%;--ifm-font-weight-light:300;--ifm-font-weight-normal:400;--ifm-font-weight-semibold:500;--ifm-font-weight-bold:700;--ifm-font-weight-base:var(--ifm-font-weight-normal);--ifm-line-height-base:1.65;--ifm-global-spacing:1rem;--ifm-spacing-vertical:var(--ifm-global-spacing);--ifm-spacing-horizontal:var(--ifm-global-spacing);--ifm-transition-fast:200ms;--ifm-transition-slow:400ms;--ifm-transition-timing-default:cubic-bezier(0.08,0.52,0.52,1);--ifm-global-shadow-lw:0 1px 2px 0 #0000001a;--ifm-global-shadow-md:0 5px 40px #0003;--ifm-global-shadow-tl:0 12px 28px 0 #0003,0 2px 4px 0 #0000001a;--ifm-z-index-dropdown:100;--ifm-z-index-fixed:200;--ifm-z-index-overlay:400;--ifm-container-width:1140px;--ifm-container-width-xl:1320px;--ifm-code-background:#f6f7f8;--ifm-code-border-radius:var(--ifm-global-radius);--ifm-code-font-size:90%;--ifm-code-padding-horizontal:0.1rem;--ifm-code-padding-vertical:0.1rem;--ifm-pre-background:var(--ifm-code-background);--ifm-pre-border-radius:var(--ifm-code-border-radius);--ifm-pre-color:inherit;--ifm-pre-line-height:1.45;--ifm-pre-padding:1rem;--ifm-heading-color:inherit;--ifm-heading-margin-top:0;--ifm-heading-margin-bottom:var(--ifm-spacing-vertical);--ifm-heading-font-family:var(--ifm-font-family-base);--ifm-heading-font-weight:var(--ifm-font-weight-bold);--ifm-heading-line-height:1.25;--ifm-h1-font-size:2rem;--ifm-h2-font-size:1.5rem;--ifm-h3-font-size:1.25rem;--ifm-h4-font-size:1rem;--ifm-h5-font-size:0.875rem;--ifm-h6-font-size:0.85rem;--ifm-image-alignment-padding:1.25rem;--ifm-leading-desktop:1.25;--ifm-leading:calc(var(--ifm-leading-desktop)*1rem);--ifm-list-left-padding:2rem;--ifm-list-margin:1rem;--ifm-list-item-margin:0.25rem;--ifm-list-paragraph-margin:1rem;--ifm-table-cell-padding:0.75rem;--ifm-table-background:#0000;--ifm-table-stripe-background:#00000008;--ifm-table-border-width:1px;--ifm-table-border-color:var(--ifm-color-emphasis-300);--ifm-table-head-background:inherit;--ifm-table-head-color:inherit;--ifm-table-head-font-weight:var(--ifm-font-weight-bold);--ifm-table-cell-color:inherit;--ifm-link-color:var(--ifm-color-primary);--ifm-link-decoration:none;--ifm-link-hover-color:var(--ifm-link-color);--ifm-link-hover-decoration:underline;--ifm-paragraph-margin-bottom:var(--ifm-leading);--ifm-blockquote-font-size:var(--ifm-font-size-base);--ifm-blockquote-border-left-width:2px;--ifm-blockquote-padding-horizontal:var(--ifm-spacing-horizontal);--ifm-blockquote-padding-vertical:0;--ifm-blockquote-shadow:none;--ifm-blockquote-color:var(--ifm-color-emphasis-800);--ifm-blockquote-border-color:var(--ifm-color-emphasis-300);--ifm-hr-background-color:var(--ifm-color-emphasis-500);--ifm-hr-height:1px;--ifm-hr-margin-vertical:1.5rem;--ifm-scrollbar-size:7px;--ifm-scrollbar-track-background-color:#f1f1f1;--ifm-scrollbar-thumb-background-color:silver;--ifm-scrollbar-thumb-hover-background-color:#a7a7a7;--ifm-alert-background-color:inherit;--ifm-alert-border-color:inherit;--ifm-alert-border-radius:var(--ifm-global-radius);--ifm-alert-border-width:0px;--ifm-alert-border-left-width:5px;--ifm-alert-color:var(--ifm-font-color-base);--ifm-alert-padding-horizontal:var(--ifm-spacing-horizontal);--ifm-alert-padding-vertical:var(--ifm-spacing-vertical);--ifm-alert-shadow:var(--ifm-global-shadow-lw);--ifm-avatar-intro-margin:1rem;--ifm-avatar-intro-alignment:inherit;--ifm-avatar-photo-size:3rem;--ifm-badge-background-color:inherit;--ifm-badge-border-color:inherit;--ifm-badge-border-radius:var(--ifm-global-radius);--ifm-badge-border-width:var(--ifm-global-border-width);--ifm-badge-color:var(--ifm-color-white);--ifm-badge-padding-horizontal:calc(var(--ifm-spacing-horizontal)*0.5);--ifm-badge-padding-vertical:calc(var(--ifm-spacing-vertical)*0.25);--ifm-breadcrumb-border-radius:1.5rem;--ifm-breadcrumb-spacing:0.5rem;--ifm-breadcrumb-color-active:var(--ifm-color-primary);--ifm-breadcrumb-item-background-active:var(--ifm-hover-overlay);--ifm-breadcrumb-padding-horizontal:0.8rem;--ifm-breadcrumb-padding-vertical:0.4rem;--ifm-breadcrumb-size-multiplier:1;--ifm-breadcrumb-separator:url('data:image/svg+xml;utf8,');--ifm-breadcrumb-separator-filter:none;--ifm-breadcrumb-separator-size:0.5rem;--ifm-breadcrumb-separator-size-multiplier:1.25;--ifm-button-background-color:inherit;--ifm-button-border-color:var(--ifm-button-background-color);--ifm-button-border-width:var(--ifm-global-border-width);--ifm-button-font-weight:var(--ifm-font-weight-bold);--ifm-button-padding-horizontal:1.5rem;--ifm-button-padding-vertical:0.375rem;--ifm-button-size-multiplier:1;--ifm-button-transition-duration:var(--ifm-transition-fast);--ifm-button-border-radius:calc(var(--ifm-global-radius)*var(--ifm-button-size-multiplier));--ifm-button-group-spacing:2px;--ifm-card-background-color:var(--ifm-background-surface-color);--ifm-card-border-radius:calc(var(--ifm-global-radius)*2);--ifm-card-horizontal-spacing:var(--ifm-global-spacing);--ifm-card-vertical-spacing:var(--ifm-global-spacing);--ifm-toc-border-color:var(--ifm-color-emphasis-300);--ifm-toc-link-color:var(--ifm-color-content-secondary);--ifm-toc-padding-vertical:0.5rem;--ifm-toc-padding-horizontal:0.5rem;--ifm-dropdown-background-color:var(--ifm-background-surface-color);--ifm-dropdown-font-weight:var(--ifm-font-weight-semibold);--ifm-dropdown-link-color:var(--ifm-font-color-base);--ifm-dropdown-hover-background-color:var(--ifm-hover-overlay);--ifm-footer-background-color:var(--ifm-color-emphasis-100);--ifm-footer-color:inherit;--ifm-footer-link-color:var(--ifm-color-emphasis-700);--ifm-footer-link-hover-color:var(--ifm-color-primary);--ifm-footer-link-horizontal-spacing:0.5rem;--ifm-footer-padding-horizontal:calc(var(--ifm-spacing-horizontal)*2);--ifm-footer-padding-vertical:calc(var(--ifm-spacing-vertical)*2);--ifm-footer-title-color:inherit;--ifm-footer-logo-max-width:min(30rem,90vw);--ifm-hero-background-color:var(--ifm-background-surface-color);--ifm-hero-text-color:var(--ifm-color-emphasis-800);--ifm-menu-color:var(--ifm-color-emphasis-700);--ifm-menu-color-active:var(--ifm-color-primary);--ifm-menu-color-background-active:var(--ifm-hover-overlay);--ifm-menu-color-background-hover:var(--ifm-hover-overlay);--ifm-menu-link-padding-horizontal:0.75rem;--ifm-menu-link-padding-vertical:0.375rem;--ifm-menu-link-sublist-icon:url('data:image/svg+xml;utf8,');--ifm-menu-link-sublist-icon-filter:none;--ifm-navbar-background-color:var(--ifm-background-surface-color);--ifm-navbar-height:3.75rem;--ifm-navbar-item-padding-horizontal:0.75rem;--ifm-navbar-item-padding-vertical:0.25rem;--ifm-navbar-link-color:var(--ifm-font-color-base);--ifm-navbar-link-active-color:var(--ifm-link-color);--ifm-navbar-padding-horizontal:var(--ifm-spacing-horizontal);--ifm-navbar-padding-vertical:calc(var(--ifm-spacing-vertical)*0.5);--ifm-navbar-shadow:var(--ifm-global-shadow-lw);--ifm-navbar-search-input-background-color:var(--ifm-color-emphasis-200);--ifm-navbar-search-input-color:var(--ifm-color-emphasis-800);--ifm-navbar-search-input-placeholder-color:var(--ifm-color-emphasis-500);--ifm-navbar-search-input-icon:url('data:image/svg+xml;utf8,');--ifm-navbar-sidebar-width:83vw;--ifm-pagination-border-radius:var(--ifm-global-radius);--ifm-pagination-color-active:var(--ifm-color-primary);--ifm-pagination-font-size:1rem;--ifm-pagination-item-active-background:var(--ifm-hover-overlay);--ifm-pagination-page-spacing:0.2em;--ifm-pagination-padding-horizontal:calc(var(--ifm-spacing-horizontal)*1);--ifm-pagination-padding-vertical:calc(var(--ifm-spacing-vertical)*0.25);--ifm-pagination-nav-border-radius:var(--ifm-global-radius);--ifm-pagination-nav-color-hover:var(--ifm-color-primary);--ifm-pills-color-active:var(--ifm-color-primary);--ifm-pills-color-background-active:var(--ifm-hover-overlay);--ifm-pills-spacing:0.125rem;--ifm-tabs-color:var(--ifm-font-color-secondary);--ifm-tabs-color-active:var(--ifm-color-primary);--ifm-tabs-color-active-border:var(--ifm-tabs-color-active);--ifm-tabs-padding-horizontal:1rem;--ifm-tabs-padding-vertical:1rem;--docusaurus-progress-bar-color:var(--ifm-color-primary);--ifm-color-primary:#3880ff;--ifm-color-primary-dark:#1e6af1;--ifm-color-primary-darker:#2972f5;--ifm-color-primary-darkest:#216ef7;--ifm-color-primary-light:#4d8af5;--ifm-color-primary-lighter:#558ef3;--ifm-color-primary-lightest:#5c93f3;--ifm-code-font-size:95%;--docusaurus-highlighted-code-line-bg:#dedfe1;--ifm-color-dark:#35415b;--docusaurus-tag-list-border:var(--ifm-color-emphasis-300);--docusaurus-announcement-bar-height:auto;--docusaurus-collapse-button-bg:#0000;--docusaurus-collapse-button-bg-hover:#0000001a;--doc-sidebar-width:300px;--doc-sidebar-hidden-width:30px}.badge--danger,.badge--info,.badge--primary,.badge--secondary,.badge--success,.badge--warning{--ifm-badge-border-color:var(--ifm-badge-background-color)}.button--link,.button--outline{--ifm-button-background-color:#0000}*{box-sizing:border-box}html{background-color:var(--ifm-background-color);color:var(--ifm-font-color-base);color-scheme:var(--ifm-color-scheme);font:var(--ifm-font-size-base)/var(--ifm-line-height-base) var(--ifm-font-family-base);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;-webkit-text-size-adjust:100%;text-size-adjust:100%}iframe{border:0;color-scheme:auto}.container{margin:0 auto;max-width:var(--ifm-container-width)}.container--fluid{max-width:inherit}.row{display:flex;flex-wrap:wrap;margin:0 calc(var(--ifm-spacing-horizontal)*-1)}.margin-bottom--none,.margin-vert--none,.markdown>:last-child{margin-bottom:0!important}.margin-top--none,.margin-vert--none,.tabItem_LNqP{margin-top:0!important}.row--no-gutters{margin-left:0;margin-right:0}.margin-horiz--none,.margin-right--none{margin-right:0!important}.row--no-gutters>.col{padding-left:0;padding-right:0}.row--align-top{align-items:flex-start}.row--align-bottom{align-items:flex-end}.menuExternalLink_NmtK,.row--align-center{align-items:center}.row--align-stretch{align-items:stretch}.row--align-baseline{align-items:baseline}.col{--ifm-col-width:100%;flex:1 0;margin-left:0;max-width:var(--ifm-col-width)}.padding-bottom--none,.padding-vert--none{padding-bottom:0!important}.padding-top--none,.padding-vert--none{padding-top:0!important}.padding-horiz--none,.padding-left--none{padding-left:0!important}.padding-horiz--none,.padding-right--none{padding-right:0!important}.col[class*=col--]{flex:0 0 var(--ifm-col-width)}.col--1{--ifm-col-width:8.33333%}.col--offset-1{margin-left:8.33333%}.col--2{--ifm-col-width:16.66667%}.col--offset-2{margin-left:16.66667%}.col--3{--ifm-col-width:25%}.col--offset-3{margin-left:25%}.col--4{--ifm-col-width:33.33333%}.col--offset-4{margin-left:33.33333%}.col--5{--ifm-col-width:41.66667%}.col--offset-5{margin-left:41.66667%}.col--6{--ifm-col-width:50%}.col--offset-6{margin-left:50%}.col--7{--ifm-col-width:58.33333%}.col--offset-7{margin-left:58.33333%}.col--8{--ifm-col-width:66.66667%}.col--offset-8{margin-left:66.66667%}.col--9{--ifm-col-width:75%}.col--offset-9{margin-left:75%}.col--10{--ifm-col-width:83.33333%}.col--offset-10{margin-left:83.33333%}.col--11{--ifm-col-width:91.66667%}.col--offset-11{margin-left:91.66667%}.col--12{--ifm-col-width:100%}.col--offset-12{margin-left:100%}.margin-horiz--none,.margin-left--none{margin-left:0!important}.margin--none{margin:0!important}.margin-bottom--xs,.margin-vert--xs{margin-bottom:.25rem!important}.margin-top--xs,.margin-vert--xs{margin-top:.25rem!important}.margin-horiz--xs,.margin-left--xs{margin-left:.25rem!important}.margin-horiz--xs,.margin-right--xs{margin-right:.25rem!important}.margin--xs{margin:.25rem!important}.margin-bottom--sm,.margin-vert--sm{margin-bottom:.5rem!important}.margin-top--sm,.margin-vert--sm{margin-top:.5rem!important}.margin-horiz--sm,.margin-left--sm{margin-left:.5rem!important}.margin-horiz--sm,.margin-right--sm{margin-right:.5rem!important}.margin--sm{margin:.5rem!important}.margin-bottom--md,.margin-vert--md{margin-bottom:1rem!important}.margin-top--md,.margin-vert--md{margin-top:1rem!important}.margin-horiz--md,.margin-left--md{margin-left:1rem!important}.margin-horiz--md,.margin-right--md{margin-right:1rem!important}.margin--md{margin:1rem!important}.margin-bottom--lg,.margin-vert--lg{margin-bottom:2rem!important}.margin-top--lg,.margin-vert--lg{margin-top:2rem!important}.margin-horiz--lg,.margin-left--lg{margin-left:2rem!important}.margin-horiz--lg,.margin-right--lg{margin-right:2rem!important}.margin--lg{margin:2rem!important}.margin-bottom--xl,.margin-vert--xl{margin-bottom:5rem!important}.margin-top--xl,.margin-vert--xl{margin-top:5rem!important}.margin-horiz--xl,.margin-left--xl{margin-left:5rem!important}.margin-horiz--xl,.margin-right--xl{margin-right:5rem!important}.margin--xl{margin:5rem!important}.padding--none{padding:0!important}.padding-bottom--xs,.padding-vert--xs{padding-bottom:.25rem!important}.padding-top--xs,.padding-vert--xs{padding-top:.25rem!important}.padding-horiz--xs,.padding-left--xs{padding-left:.25rem!important}.padding-horiz--xs,.padding-right--xs{padding-right:.25rem!important}.padding--xs{padding:.25rem!important}.padding-bottom--sm,.padding-vert--sm{padding-bottom:.5rem!important}.padding-top--sm,.padding-vert--sm{padding-top:.5rem!important}.padding-horiz--sm,.padding-left--sm{padding-left:.5rem!important}.padding-horiz--sm,.padding-right--sm{padding-right:.5rem!important}.padding--sm{padding:.5rem!important}.padding-bottom--md,.padding-vert--md{padding-bottom:1rem!important}.padding-top--md,.padding-vert--md{padding-top:1rem!important}.padding-horiz--md,.padding-left--md{padding-left:1rem!important}.padding-horiz--md,.padding-right--md{padding-right:1rem!important}.padding--md{padding:1rem!important}.padding-bottom--lg,.padding-vert--lg{padding-bottom:2rem!important}.padding-top--lg,.padding-vert--lg{padding-top:2rem!important}.padding-horiz--lg,.padding-left--lg{padding-left:2rem!important}.padding-horiz--lg,.padding-right--lg{padding-right:2rem!important}.padding--lg{padding:2rem!important}.padding-bottom--xl,.padding-vert--xl{padding-bottom:5rem!important}.padding-top--xl,.padding-vert--xl{padding-top:5rem!important}.padding-horiz--xl,.padding-left--xl{padding-left:5rem!important}.padding-horiz--xl,.padding-right--xl{padding-right:5rem!important}.padding--xl{padding:5rem!important}code{background-color:var(--ifm-code-background);border:.1rem solid #0000001a;border-radius:var(--ifm-code-border-radius);font-family:var(--ifm-font-family-monospace);font-size:var(--ifm-code-font-size);padding:var(--ifm-code-padding-vertical) var(--ifm-code-padding-horizontal)}a code{color:inherit}pre{background-color:var(--ifm-pre-background);border-radius:var(--ifm-pre-border-radius);color:var(--ifm-pre-color);font:var(--ifm-code-font-size)/var(--ifm-pre-line-height) var(--ifm-font-family-monospace);padding:var(--ifm-pre-padding)}pre code{background-color:initial;border:none;font-size:100%;line-height:inherit;padding:0}kbd{background-color:var(--ifm-color-emphasis-0);border:1px solid var(--ifm-color-emphasis-400);border-radius:.2rem;box-shadow:inset 0 -1px 0 var(--ifm-color-emphasis-400);color:var(--ifm-color-emphasis-800);font:80% var(--ifm-font-family-monospace);padding:.15rem .3rem}h1,h2,h3,h4,h5,h6{color:var(--ifm-heading-color);font-family:var(--ifm-heading-font-family);font-weight:var(--ifm-heading-font-weight);line-height:var(--ifm-heading-line-height);margin:var(--ifm-heading-margin-top) 0 var(--ifm-heading-margin-bottom) 0}h1{font-size:var(--ifm-h1-font-size)}h2{font-size:var(--ifm-h2-font-size)}h3{font-size:var(--ifm-h3-font-size)}h4{font-size:var(--ifm-h4-font-size)}h5{font-size:var(--ifm-h5-font-size)}h6{font-size:var(--ifm-h6-font-size)}img{max-width:100%}img[align=right]{padding-left:var(--image-alignment-padding)}img[align=left]{padding-right:var(--image-alignment-padding)}.markdown{--ifm-h1-vertical-rhythm-top:3;--ifm-h2-vertical-rhythm-top:2;--ifm-h3-vertical-rhythm-top:1.5;--ifm-heading-vertical-rhythm-top:1.25;--ifm-h1-vertical-rhythm-bottom:1.25;--ifm-heading-vertical-rhythm-bottom:1}.markdown:after,.markdown:before{content:"";display:table}.markdown:after{clear:both}.markdown h1:first-child{--ifm-h1-font-size:3rem;margin-bottom:calc(var(--ifm-h1-vertical-rhythm-bottom)*var(--ifm-leading))}.markdown>h2{--ifm-h2-font-size:2rem;margin-top:calc(var(--ifm-h2-vertical-rhythm-top)*var(--ifm-leading))}.markdown>h3{--ifm-h3-font-size:1.5rem;margin-top:calc(var(--ifm-h3-vertical-rhythm-top)*var(--ifm-leading))}.markdown>h4,.markdown>h5,.markdown>h6{margin-top:calc(var(--ifm-heading-vertical-rhythm-top)*var(--ifm-leading))}.markdown>p,.markdown>pre,.markdown>ul,.tabList__CuJ{margin-bottom:var(--ifm-leading)}.markdown li>p{margin-top:var(--ifm-list-paragraph-margin)}.markdown li+li{margin-top:var(--ifm-list-item-margin)}ol,ul{margin:0 0 var(--ifm-list-margin);padding-left:var(--ifm-list-left-padding)}ol ol,ul ol{list-style-type:lower-roman}ol ol ol,ol ul ol,ul ol ol,ul ul ol{list-style-type:lower-alpha}table{border-collapse:collapse;display:block;margin-bottom:var(--ifm-spacing-vertical)}table thead tr{border-bottom:2px solid var(--ifm-table-border-color)}table thead,table tr:nth-child(2n){background-color:var(--ifm-table-stripe-background)}table tr{background-color:var(--ifm-table-background);border-top:var(--ifm-table-border-width) solid var(--ifm-table-border-color)}table td,table th{border:var(--ifm-table-border-width) solid var(--ifm-table-border-color);padding:var(--ifm-table-cell-padding)}table th{background-color:var(--ifm-table-head-background);color:var(--ifm-table-head-color);font-weight:var(--ifm-table-head-font-weight)}table td{color:var(--ifm-table-cell-color)}strong{font-weight:var(--ifm-font-weight-bold)}a{color:var(--ifm-link-color);text-decoration:var(--ifm-link-decoration)}a:hover{color:var(--ifm-link-hover-color);text-decoration:var(--ifm-link-hover-decoration)}.button:hover,.text--no-decoration,.text--no-decoration:hover,a:not([href]){text-decoration:none}p{margin:0 0 var(--ifm-paragraph-margin-bottom)}blockquote{border-left:var(--ifm-blockquote-border-left-width) solid var(--ifm-blockquote-border-color);box-shadow:var(--ifm-blockquote-shadow);color:var(--ifm-blockquote-color);font-size:var(--ifm-blockquote-font-size);padding:var(--ifm-blockquote-padding-vertical) var(--ifm-blockquote-padding-horizontal)}blockquote>:first-child{margin-top:0}blockquote>:last-child{margin-bottom:0}hr{background-color:var(--ifm-hr-background-color);border:0;height:var(--ifm-hr-height);margin:var(--ifm-hr-margin-vertical) 0}.shadow--lw{box-shadow:var(--ifm-global-shadow-lw)!important}.shadow--md{box-shadow:var(--ifm-global-shadow-md)!important}.shadow--tl{box-shadow:var(--ifm-global-shadow-tl)!important}.text--primary,.wordWrapButtonEnabled_EoeP .wordWrapButtonIcon_Bwma{color:var(--ifm-color-primary)}.text--secondary{color:var(--ifm-color-secondary)}.text--success{color:var(--ifm-color-success)}.text--info{color:var(--ifm-color-info)}.text--warning{color:var(--ifm-color-warning)}.text--danger{color:var(--ifm-color-danger)}.text--center{text-align:center}.text--left{text-align:left}.text--justify{text-align:justify}.text--right{text-align:right}.text--capitalize{text-transform:capitalize}.text--lowercase{text-transform:lowercase}.admonitionHeading_Gvgb,.alert__heading,.playgroundHeader_qwyd,.text--uppercase{text-transform:uppercase}.text--light{font-weight:var(--ifm-font-weight-light)}.text--normal{font-weight:var(--ifm-font-weight-normal)}.text--semibold{font-weight:var(--ifm-font-weight-semibold)}.text--bold{font-weight:var(--ifm-font-weight-bold)}.text--italic{font-style:italic}.text--truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text--break{word-wrap:break-word!important;word-break:break-word!important}.clean-btn,.copyButton_q7gX{background:none;border:none;color:inherit;cursor:pointer;font-family:inherit;padding:0}.alert,.alert .close{color:var(--ifm-alert-foreground-color)}.clean-list{padding-left:0}.alert--primary{--ifm-alert-background-color:var(--ifm-color-primary-contrast-background);--ifm-alert-background-color-highlight:#3578e526;--ifm-alert-foreground-color:var(--ifm-color-primary-contrast-foreground);--ifm-alert-border-color:var(--ifm-color-primary-dark)}.alert--secondary{--ifm-alert-background-color:var(--ifm-color-secondary-contrast-background);--ifm-alert-background-color-highlight:#ebedf026;--ifm-alert-foreground-color:var(--ifm-color-secondary-contrast-foreground);--ifm-alert-border-color:var(--ifm-color-secondary-dark)}.alert--success{--ifm-alert-background-color:var(--ifm-color-success-contrast-background);--ifm-alert-background-color-highlight:#00a40026;--ifm-alert-foreground-color:var(--ifm-color-success-contrast-foreground);--ifm-alert-border-color:var(--ifm-color-success-dark)}.alert--info{--ifm-alert-background-color:var(--ifm-color-info-contrast-background);--ifm-alert-background-color-highlight:#54c7ec26;--ifm-alert-foreground-color:var(--ifm-color-info-contrast-foreground);--ifm-alert-border-color:var(--ifm-color-info-dark)}.alert--warning{--ifm-alert-background-color:var(--ifm-color-warning-contrast-background);--ifm-alert-background-color-highlight:#ffba0026;--ifm-alert-foreground-color:var(--ifm-color-warning-contrast-foreground);--ifm-alert-border-color:var(--ifm-color-warning-dark)}.alert--danger{--ifm-alert-background-color:var(--ifm-color-danger-contrast-background);--ifm-alert-background-color-highlight:#fa383e26;--ifm-alert-foreground-color:var(--ifm-color-danger-contrast-foreground);--ifm-alert-border-color:var(--ifm-color-danger-dark)}.alert{--ifm-code-background:var(--ifm-alert-background-color-highlight);--ifm-link-color:var(--ifm-alert-foreground-color);--ifm-link-hover-color:var(--ifm-alert-foreground-color);--ifm-link-decoration:underline;--ifm-tabs-color:var(--ifm-alert-foreground-color);--ifm-tabs-color-active:var(--ifm-alert-foreground-color);--ifm-tabs-color-active-border:var(--ifm-alert-border-color);background-color:var(--ifm-alert-background-color);border:var(--ifm-alert-border-width) solid var(--ifm-alert-border-color);border-left-width:var(--ifm-alert-border-left-width);border-radius:var(--ifm-alert-border-radius);box-shadow:var(--ifm-alert-shadow);padding:var(--ifm-alert-padding-vertical) var(--ifm-alert-padding-horizontal)}.alert__heading{align-items:center;display:flex;font:700 var(--ifm-h5-font-size)/var(--ifm-heading-line-height) var(--ifm-heading-font-family);margin-bottom:.5rem}.alert__icon{display:inline-flex;margin-right:.4em}.alert__icon svg{fill:var(--ifm-alert-foreground-color);stroke:var(--ifm-alert-foreground-color);stroke-width:0}.alert .close{margin:calc(var(--ifm-alert-padding-vertical)*-1) calc(var(--ifm-alert-padding-horizontal)*-1) 0 0;opacity:.75}.alert .close:focus,.alert .close:hover{opacity:1}.alert a{text-decoration-color:var(--ifm-alert-border-color)}.alert a:hover{text-decoration-thickness:2px}.avatar{column-gap:var(--ifm-avatar-intro-margin);display:flex}.avatar__photo{border-radius:50%;display:block;height:var(--ifm-avatar-photo-size);overflow:hidden;width:var(--ifm-avatar-photo-size)}.card--full-height,.navbar__logo img,body,html{height:100%}.avatar__photo--sm{--ifm-avatar-photo-size:2rem}.avatar__photo--lg{--ifm-avatar-photo-size:4rem}.avatar__photo--xl{--ifm-avatar-photo-size:6rem}.avatar__intro{display:flex;flex:1 1;flex-direction:column;justify-content:center;text-align:var(--ifm-avatar-intro-alignment)}.badge,.breadcrumbs__item,.breadcrumbs__link,.button,.dropdown>.navbar__link:after{display:inline-block}.avatar__name{font:700 var(--ifm-h4-font-size)/var(--ifm-heading-line-height) var(--ifm-font-family-base)}.avatar__subtitle{margin-top:.25rem}.avatar--vertical{--ifm-avatar-intro-alignment:center;--ifm-avatar-intro-margin:0.5rem;align-items:center;flex-direction:column}.badge{background-color:var(--ifm-badge-background-color);border:var(--ifm-badge-border-width) solid var(--ifm-badge-border-color);border-radius:var(--ifm-badge-border-radius);color:var(--ifm-badge-color);font-size:75%;font-weight:var(--ifm-font-weight-bold);line-height:1;padding:var(--ifm-badge-padding-vertical) var(--ifm-badge-padding-horizontal)}.badge--primary{--ifm-badge-background-color:var(--ifm-color-primary)}.badge--secondary{--ifm-badge-background-color:var(--ifm-color-secondary);color:var(--ifm-color-black)}.breadcrumbs__link,.button.button--secondary.button--outline:not(.button--active):not(:hover){color:var(--ifm-font-color-base)}.badge--success{--ifm-badge-background-color:var(--ifm-color-success)}.badge--info{--ifm-badge-background-color:var(--ifm-color-info)}.badge--warning{--ifm-badge-background-color:var(--ifm-color-warning)}.badge--danger{--ifm-badge-background-color:var(--ifm-color-danger)}.breadcrumbs{margin-bottom:0;padding-left:0}.breadcrumbs__item:not(:last-child):after{background:var(--ifm-breadcrumb-separator) center;content:" ";display:inline-block;filter:var(--ifm-breadcrumb-separator-filter);height:calc(var(--ifm-breadcrumb-separator-size)*var(--ifm-breadcrumb-size-multiplier)*var(--ifm-breadcrumb-separator-size-multiplier));margin:0 var(--ifm-breadcrumb-spacing);opacity:.5;width:calc(var(--ifm-breadcrumb-separator-size)*var(--ifm-breadcrumb-size-multiplier)*var(--ifm-breadcrumb-separator-size-multiplier))}.breadcrumbs__item--active .breadcrumbs__link{background:var(--ifm-breadcrumb-item-background-active);color:var(--ifm-breadcrumb-color-active)}.breadcrumbs__link{border-radius:var(--ifm-breadcrumb-border-radius);font-size:calc(1rem*var(--ifm-breadcrumb-size-multiplier));padding:calc(var(--ifm-breadcrumb-padding-vertical)*var(--ifm-breadcrumb-size-multiplier)) calc(var(--ifm-breadcrumb-padding-horizontal)*var(--ifm-breadcrumb-size-multiplier));transition-duration:var(--ifm-transition-fast);transition-property:background,color}.breadcrumbs__link:any-link:hover,.breadcrumbs__link:link:hover,.breadcrumbs__link:visited:hover,area[href].breadcrumbs__link:hover{background:var(--ifm-breadcrumb-item-background-active);text-decoration:none}.breadcrumbs--sm{--ifm-breadcrumb-size-multiplier:0.8}.breadcrumbs--lg{--ifm-breadcrumb-size-multiplier:1.2}.button{background-color:var(--ifm-button-background-color);border:var(--ifm-button-border-width) solid var(--ifm-button-border-color);border-radius:var(--ifm-button-border-radius);cursor:pointer;font-size:calc(.875rem*var(--ifm-button-size-multiplier));font-weight:var(--ifm-button-font-weight);line-height:1.5;padding:calc(var(--ifm-button-padding-vertical)*var(--ifm-button-size-multiplier)) calc(var(--ifm-button-padding-horizontal)*var(--ifm-button-size-multiplier));text-align:center;transition-duration:var(--ifm-button-transition-duration);transition-property:color,background,border-color;user-select:none;white-space:nowrap}.button,.button:hover{color:var(--ifm-button-color)}.button--outline{--ifm-button-color:var(--ifm-button-border-color)}.button--outline:hover{--ifm-button-background-color:var(--ifm-button-border-color)}.button--link{--ifm-button-border-color:#0000;color:var(--ifm-link-color);text-decoration:var(--ifm-link-decoration)}.button--link.button--active,.button--link:active,.button--link:hover{color:var(--ifm-link-hover-color);text-decoration:var(--ifm-link-hover-decoration)}.button.disabled,.button:disabled,.button[disabled]{opacity:.65;pointer-events:none}.button--sm{--ifm-button-size-multiplier:0.8}.button--lg{--ifm-button-size-multiplier:1.35}.button--block{display:block;width:100%}.button.button--secondary{color:var(--ifm-color-gray-900)}:where(.button--primary){--ifm-button-background-color:var(--ifm-color-primary);--ifm-button-border-color:var(--ifm-color-primary)}:where(.button--primary):not(.button--outline):hover{--ifm-button-background-color:var(--ifm-color-primary-dark);--ifm-button-border-color:var(--ifm-color-primary-dark)}.button--primary.button--active,.button--primary:active{--ifm-button-background-color:var(--ifm-color-primary-darker);--ifm-button-border-color:var(--ifm-color-primary-darker)}:where(.button--secondary){--ifm-button-background-color:var(--ifm-color-secondary);--ifm-button-border-color:var(--ifm-color-secondary)}:where(.button--secondary):not(.button--outline):hover{--ifm-button-background-color:var(--ifm-color-secondary-dark);--ifm-button-border-color:var(--ifm-color-secondary-dark)}.button--secondary.button--active,.button--secondary:active{--ifm-button-background-color:var(--ifm-color-secondary-darker);--ifm-button-border-color:var(--ifm-color-secondary-darker)}:where(.button--success){--ifm-button-background-color:var(--ifm-color-success);--ifm-button-border-color:var(--ifm-color-success)}:where(.button--success):not(.button--outline):hover{--ifm-button-background-color:var(--ifm-color-success-dark);--ifm-button-border-color:var(--ifm-color-success-dark)}.button--success.button--active,.button--success:active{--ifm-button-background-color:var(--ifm-color-success-darker);--ifm-button-border-color:var(--ifm-color-success-darker)}:where(.button--info){--ifm-button-background-color:var(--ifm-color-info);--ifm-button-border-color:var(--ifm-color-info)}:where(.button--info):not(.button--outline):hover{--ifm-button-background-color:var(--ifm-color-info-dark);--ifm-button-border-color:var(--ifm-color-info-dark)}.button--info.button--active,.button--info:active{--ifm-button-background-color:var(--ifm-color-info-darker);--ifm-button-border-color:var(--ifm-color-info-darker)}:where(.button--warning){--ifm-button-background-color:var(--ifm-color-warning);--ifm-button-border-color:var(--ifm-color-warning)}:where(.button--warning):not(.button--outline):hover{--ifm-button-background-color:var(--ifm-color-warning-dark);--ifm-button-border-color:var(--ifm-color-warning-dark)}.button--warning.button--active,.button--warning:active{--ifm-button-background-color:var(--ifm-color-warning-darker);--ifm-button-border-color:var(--ifm-color-warning-darker)}:where(.button--danger){--ifm-button-background-color:var(--ifm-color-danger);--ifm-button-border-color:var(--ifm-color-danger)}:where(.button--danger):not(.button--outline):hover{--ifm-button-background-color:var(--ifm-color-danger-dark);--ifm-button-border-color:var(--ifm-color-danger-dark)}.button--danger.button--active,.button--danger:active{--ifm-button-background-color:var(--ifm-color-danger-darker);--ifm-button-border-color:var(--ifm-color-danger-darker)}.button-group{display:inline-flex;gap:var(--ifm-button-group-spacing)}.button-group>.button:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.button-group>.button:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.button-group--block{display:flex;justify-content:stretch}.button-group--block>.button{flex-grow:1}.card{background-color:var(--ifm-card-background-color);border-radius:var(--ifm-card-border-radius);box-shadow:var(--ifm-global-shadow-lw);display:flex;flex-direction:column;overflow:hidden}.card__image{padding-top:var(--ifm-card-vertical-spacing)}.card__image:first-child{padding-top:0}.card__body,.card__footer,.card__header{padding:var(--ifm-card-vertical-spacing) var(--ifm-card-horizontal-spacing)}.card__body:not(:last-child),.card__footer:not(:last-child),.card__header:not(:last-child){padding-bottom:0}.card__body>:last-child,.card__footer>:last-child,.card__header>:last-child{margin-bottom:0}.card__footer{margin-top:auto}.table-of-contents{font-size:.8rem;margin-bottom:0;padding:var(--ifm-toc-padding-vertical) 0}.table-of-contents,.table-of-contents ul{list-style:none;padding-left:var(--ifm-toc-padding-horizontal)}.table-of-contents li{margin:var(--ifm-toc-padding-vertical) var(--ifm-toc-padding-horizontal)}.table-of-contents__left-border{border-left:1px solid var(--ifm-toc-border-color)}.table-of-contents__link{color:var(--ifm-toc-link-color);display:block}.table-of-contents__link--active,.table-of-contents__link--active code,.table-of-contents__link:hover,.table-of-contents__link:hover code{color:var(--ifm-color-primary);text-decoration:none}.close{color:var(--ifm-color-black);float:right;font-size:1.5rem;font-weight:var(--ifm-font-weight-bold);line-height:1;opacity:.5;padding:1rem;transition:opacity var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.close:hover{opacity:.7}.close:focus,.theme-code-block-highlighted-line .codeLineNumber_Tfdd:before{opacity:.8}.dropdown{display:inline-flex;font-weight:var(--ifm-dropdown-font-weight);position:relative;vertical-align:top}.dropdown--hoverable:hover .dropdown__menu,.dropdown--show .dropdown__menu{opacity:1;pointer-events:all;transform:translateY(-1px);visibility:visible}#nprogress,.dropdown__menu,.navbar__item.dropdown .navbar__link:not([href]){pointer-events:none}.dropdown--right .dropdown__menu{left:inherit;right:0}.dropdown--nocaret .navbar__link:after{content:none!important}.dropdown__menu{background-color:var(--ifm-dropdown-background-color);border-radius:var(--ifm-global-radius);box-shadow:var(--ifm-global-shadow-md);left:0;max-height:80vh;min-width:10rem;opacity:0;overflow-y:auto;padding:.5rem;position:absolute;top:calc(100% - var(--ifm-navbar-item-padding-vertical) + .3rem);transform:translateY(-.625rem);transition-duration:var(--ifm-transition-fast);transition-property:opacity,transform,visibility;transition-timing-function:var(--ifm-transition-timing-default);visibility:hidden;z-index:var(--ifm-z-index-dropdown)}.menu__caret,.menu__link,.menu__list-item-collapsible{border-radius:.25rem;transition:background var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.dropdown__link{border-radius:.25rem;color:var(--ifm-dropdown-link-color);display:block;font-size:.875rem;margin-top:.2rem;padding:.25rem .5rem;white-space:nowrap}.dropdown__link--active,.dropdown__link:hover{background-color:var(--ifm-dropdown-hover-background-color);color:var(--ifm-dropdown-link-color);text-decoration:none}.dropdown__link--active,.dropdown__link--active:hover{--ifm-dropdown-link-color:var(--ifm-link-color)}.dropdown>.navbar__link:after{border-color:currentcolor #0000;border-style:solid;border-width:.4em .4em 0;content:"";margin-left:.3em;position:relative;top:2px;transform:translateY(-50%)}.footer{background-color:var(--ifm-footer-background-color);color:var(--ifm-footer-color);padding:var(--ifm-footer-padding-vertical) var(--ifm-footer-padding-horizontal)}.footer--dark{--ifm-footer-background-color:#303846;--ifm-footer-color:var(--ifm-footer-link-color);--ifm-footer-link-color:var(--ifm-color-secondary);--ifm-footer-title-color:var(--ifm-color-white)}.footer__link-item{color:var(--ifm-footer-link-color);line-height:2}.footer__link-item:hover{color:var(--ifm-footer-link-hover-color)}.footer__link-separator{margin:0 var(--ifm-footer-link-horizontal-spacing)}.footer__logo{margin-top:1rem;max-width:var(--ifm-footer-logo-max-width)}.footer__title{color:var(--ifm-footer-title-color);font:700 var(--ifm-h4-font-size)/var(--ifm-heading-line-height) var(--ifm-font-family-base);margin-bottom:var(--ifm-heading-margin-bottom)}.menu,.navbar__link{font-weight:var(--ifm-font-weight-semibold)}.docItemContainer_Djhp article>:first-child,.docItemContainer_Djhp header+*,.footer__item{margin-top:0}.admonitionContent_BuS1>:last-child,.collapsibleContent_i85q p:last-child,.details_lb9f>summary>p:last-child,.footer__items,.tabItem_Ymn6>:last-child{margin-bottom:0}.codeBlockStandalone_MEMb,[type=checkbox]{padding:0}.hero{align-items:center;background-color:var(--ifm-hero-background-color);color:var(--ifm-hero-text-color);display:flex;padding:4rem 2rem}.hero--primary{--ifm-hero-background-color:var(--ifm-color-primary);--ifm-hero-text-color:var(--ifm-font-color-base-inverse)}.hero--dark{--ifm-hero-background-color:#303846;--ifm-hero-text-color:var(--ifm-color-white)}.hero__title{font-size:3rem}.hero__subtitle{font-size:1.5rem}.menu__list{margin:0;padding-left:0}.menu__caret,.menu__link{padding:var(--ifm-menu-link-padding-vertical) var(--ifm-menu-link-padding-horizontal)}.menu__list .menu__list{flex:0 0 100%;margin-top:.25rem;padding-left:var(--ifm-menu-link-padding-horizontal)}.menu__list-item:not(:first-child){margin-top:.25rem}.menu__list-item--collapsed .menu__list{height:0;overflow:hidden}.details_lb9f[data-collapsed=false].isBrowser_bmU9>summary:before,.details_lb9f[open]:not(.isBrowser_bmU9)>summary:before,.menu__list-item--collapsed .menu__caret:before,.menu__list-item--collapsed .menu__link--sublist:after{transform:rotate(90deg)}.menu__list-item-collapsible{display:flex;flex-wrap:wrap;position:relative}.menu__caret:hover,.menu__link:hover,.menu__list-item-collapsible--active,.menu__list-item-collapsible:hover{background:var(--ifm-menu-color-background-hover)}.menu__list-item-collapsible .menu__link--active,.menu__list-item-collapsible .menu__link:hover{background:none!important}.menu__caret,.menu__link{align-items:center;display:flex}.navbar-sidebar,.navbar-sidebar__backdrop{bottom:0;opacity:0;transition-duration:var(--ifm-transition-fast);transition-timing-function:ease-in-out;top:0;left:0;visibility:hidden}.menu__link{color:var(--ifm-menu-color);flex:1;line-height:1.25}.menu__link:hover{color:var(--ifm-menu-color);text-decoration:none}.menu__caret:before,.menu__link--sublist-caret:after{height:1.25rem;transform:rotate(180deg);transition:transform var(--ifm-transition-fast) linear;width:1.25rem;content:"";filter:var(--ifm-menu-link-sublist-icon-filter)}.menu__link--sublist-caret:after{background:var(--ifm-menu-link-sublist-icon) 50%/2rem 2rem;margin-left:auto;min-width:1.25rem}.menu__link--active,.menu__link--active:hover{color:var(--ifm-menu-color-active)}.navbar__brand,.navbar__link{color:var(--ifm-navbar-link-color)}.menu__link--active:not(.menu__link--sublist){background-color:var(--ifm-menu-color-background-active)}.menu__caret:before{background:var(--ifm-menu-link-sublist-icon) 50%/2rem 2rem}.navbar--dark,html[data-theme=dark]{--ifm-menu-link-sublist-icon-filter:invert(100%) sepia(94%) saturate(17%) hue-rotate(223deg) brightness(104%) contrast(98%)}.navbar{background-color:var(--ifm-navbar-background-color);box-shadow:var(--ifm-navbar-shadow);height:var(--ifm-navbar-height);padding:var(--ifm-navbar-padding-vertical) var(--ifm-navbar-padding-horizontal)}.navbar,.navbar>.container,.navbar>.container-fluid{display:flex}.navbar--fixed-top{position:sticky;top:0;z-index:var(--ifm-z-index-fixed)}.navbar__inner{display:flex;flex-wrap:wrap;justify-content:space-between;width:100%}.navbar__brand{align-items:center;display:flex;margin-right:1rem;min-width:0}.navbar__brand:hover{color:var(--ifm-navbar-link-hover-color);text-decoration:none}.announcementBarContent_xLdY,.navbar__title{flex:1 1 auto}.navbar__toggle{display:none;margin-right:.5rem}.navbar__logo{flex:0 0 auto;height:2rem;margin-right:.5rem}.navbar__items{align-items:center;display:flex;flex:1;min-width:0}.navbar__items--center{flex:0 0 auto}.navbar__items--center .navbar__brand{margin:0}.navbar__items--center+.navbar__items--right{flex:1}.navbar__items--right{flex:0 0 auto;justify-content:flex-end}.navbar__items--right>:last-child{padding-right:0}.navbar__item{display:inline-block;padding:var(--ifm-navbar-item-padding-vertical) var(--ifm-navbar-item-padding-horizontal)}.navbar__link--active,.navbar__link:hover{color:var(--ifm-navbar-link-hover-color);text-decoration:none}.navbar--dark,.navbar--primary{--ifm-menu-color:var(--ifm-color-gray-300);--ifm-navbar-link-color:var(--ifm-color-gray-100);--ifm-navbar-search-input-background-color:#ffffff1a;--ifm-navbar-search-input-placeholder-color:#ffffff80;color:var(--ifm-color-white)}.navbar--dark{--ifm-navbar-background-color:#242526;--ifm-menu-color-background-active:#ffffff0d;--ifm-navbar-search-input-color:var(--ifm-color-white)}.navbar--primary{--ifm-navbar-background-color:var(--ifm-color-primary);--ifm-navbar-link-hover-color:var(--ifm-color-white);--ifm-menu-color-active:var(--ifm-color-white);--ifm-navbar-search-input-color:var(--ifm-color-emphasis-500)}.navbar__search-input{appearance:none;background:var(--ifm-navbar-search-input-background-color) var(--ifm-navbar-search-input-icon) no-repeat .75rem center/1rem 1rem;border:none;border-radius:2rem;color:var(--ifm-navbar-search-input-color);cursor:text;display:inline-block;font-size:1rem;height:2rem;padding:0 .5rem 0 2.25rem;width:12.5rem}.navbar__search-input::placeholder{color:var(--ifm-navbar-search-input-placeholder-color)}.navbar-sidebar{background-color:var(--ifm-navbar-background-color);box-shadow:var(--ifm-global-shadow-md);position:fixed;transform:translate3d(-100%,0,0);transition-property:opacity,visibility,transform;width:var(--ifm-navbar-sidebar-width)}.navbar-sidebar--show .navbar-sidebar,.navbar-sidebar__items{transform:translateZ(0)}.navbar-sidebar--show .navbar-sidebar,.navbar-sidebar--show .navbar-sidebar__backdrop{opacity:1;visibility:visible}.navbar-sidebar__backdrop{background-color:#0009;position:fixed;right:0;transition-property:opacity,visibility}.navbar-sidebar__brand{align-items:center;box-shadow:var(--ifm-navbar-shadow);display:flex;flex:1;height:var(--ifm-navbar-height);padding:var(--ifm-navbar-padding-vertical) var(--ifm-navbar-padding-horizontal)}.backToTopButton_sjWU,.codeBlockContainer_Ckt0,.playgroundContainer_TGbA{box-shadow:var(--ifm-global-shadow-lw)}.navbar-sidebar__items{display:flex;height:calc(100% - var(--ifm-navbar-height));transition:transform var(--ifm-transition-fast) ease-in-out}.navbar-sidebar__items--show-secondary{transform:translate3d(calc((var(--ifm-navbar-sidebar-width))*-1),0,0)}.navbar-sidebar__item{flex-shrink:0;padding:.5rem;width:calc(var(--ifm-navbar-sidebar-width))}.navbar-sidebar__back{background:var(--ifm-menu-color-background-active);font-size:15px;font-weight:var(--ifm-button-font-weight);margin:0 0 .2rem -.5rem;padding:.6rem 1.5rem;position:relative;text-align:left;top:-.5rem;width:calc(100% + 1rem)}.navbar-sidebar__close{display:flex;margin-left:auto}.pagination{column-gap:var(--ifm-pagination-page-spacing);display:flex;font-size:var(--ifm-pagination-font-size);padding-left:0}.pagination--sm{--ifm-pagination-font-size:0.8rem;--ifm-pagination-padding-horizontal:0.8rem;--ifm-pagination-padding-vertical:0.2rem}.pagination--lg{--ifm-pagination-font-size:1.2rem;--ifm-pagination-padding-horizontal:1.2rem;--ifm-pagination-padding-vertical:0.3rem}.pagination__item{display:inline-flex}.pagination__item>span{padding:var(--ifm-pagination-padding-vertical)}.pagination__item--active .pagination__link{color:var(--ifm-pagination-color-active)}.pagination__item--active .pagination__link,.pagination__item:not(.pagination__item--active):hover .pagination__link{background:var(--ifm-pagination-item-active-background)}.pagination__item--disabled,.pagination__item[disabled]{opacity:.25;pointer-events:none}.pagination__link{border-radius:var(--ifm-pagination-border-radius);color:var(--ifm-font-color-base);display:inline-block;padding:var(--ifm-pagination-padding-vertical) var(--ifm-pagination-padding-horizontal);transition:background var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.pagination__link:hover{text-decoration:none}.pagination-nav{display:grid;grid-gap:var(--ifm-spacing-horizontal);gap:var(--ifm-spacing-horizontal);grid-template-columns:repeat(2,1fr)}.pagination-nav__link{border:1px solid var(--ifm-color-emphasis-300);border-radius:var(--ifm-pagination-nav-border-radius);display:block;height:100%;line-height:var(--ifm-heading-line-height);padding:var(--ifm-global-spacing);transition:border-color var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.pagination-nav__link:hover{border-color:var(--ifm-pagination-nav-color-hover);text-decoration:none}.pagination-nav__link--next{grid-column:2/3;text-align:right}.pagination-nav__label{font-size:var(--ifm-h4-font-size);font-weight:var(--ifm-heading-font-weight);word-break:break-word}.pagination-nav__link--prev .pagination-nav__label:before{content:"« "}.pagination-nav__link--next .pagination-nav__label:after{content:" »"}.pagination-nav__sublabel{color:var(--ifm-color-content-secondary);font-size:var(--ifm-h5-font-size);font-weight:var(--ifm-font-weight-semibold);margin-bottom:.25rem}.pills__item,.tabs{font-weight:var(--ifm-font-weight-bold)}.pills{display:flex;gap:var(--ifm-pills-spacing);padding-left:0}.pills__item{border-radius:.5rem;cursor:pointer;display:inline-block;padding:.25rem 1rem;transition:background var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.tabs,:not(.containsTaskList_mC6p>li)>.containsTaskList_mC6p{padding-left:0}.pills__item--active{color:var(--ifm-pills-color-active)}.pills__item--active,.pills__item:not(.pills__item--active):hover{background:var(--ifm-pills-color-background-active)}.pills--block{justify-content:stretch}.pills--block .pills__item{flex-grow:1;text-align:center}.tabs{color:var(--ifm-tabs-color);display:flex;margin-bottom:0;overflow-x:auto}.tabs__item{border-bottom:3px solid #0000;border-radius:var(--ifm-global-radius);cursor:pointer;display:inline-flex;padding:var(--ifm-tabs-padding-vertical) var(--ifm-tabs-padding-horizontal);transition:background-color var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.tabs__item--active{border-bottom-color:var(--ifm-tabs-color-active-border);border-bottom-left-radius:0;border-bottom-right-radius:0;color:var(--ifm-tabs-color-active)}.tabs__item:hover{background-color:var(--ifm-hover-overlay)}.tabs--block{justify-content:stretch}.tabs--block .tabs__item{flex-grow:1;justify-content:center}html[data-theme=dark]{--ifm-color-scheme:dark;--ifm-color-emphasis-0:var(--ifm-color-gray-1000);--ifm-color-emphasis-100:var(--ifm-color-gray-900);--ifm-color-emphasis-200:var(--ifm-color-gray-800);--ifm-color-emphasis-300:var(--ifm-color-gray-700);--ifm-color-emphasis-400:var(--ifm-color-gray-600);--ifm-color-emphasis-600:var(--ifm-color-gray-400);--ifm-color-emphasis-700:var(--ifm-color-gray-300);--ifm-color-emphasis-800:var(--ifm-color-gray-200);--ifm-color-emphasis-900:var(--ifm-color-gray-100);--ifm-color-emphasis-1000:var(--ifm-color-gray-0);--ifm-background-color:#1b1b1d;--ifm-background-surface-color:#242526;--ifm-hover-overlay:#ffffff0d;--ifm-color-content:#e3e3e3;--ifm-color-content-secondary:#fff;--ifm-breadcrumb-separator-filter:invert(64%) sepia(11%) saturate(0%) hue-rotate(149deg) brightness(99%) contrast(95%);--ifm-code-background:#ffffff1a;--ifm-scrollbar-track-background-color:#444;--ifm-scrollbar-thumb-background-color:#686868;--ifm-scrollbar-thumb-hover-background-color:#7a7a7a;--ifm-table-stripe-background:#ffffff12;--ifm-toc-border-color:var(--ifm-color-emphasis-200);--ifm-color-primary-contrast-background:#102445;--ifm-color-primary-contrast-foreground:#ebf2fc;--ifm-color-secondary-contrast-background:#474748;--ifm-color-secondary-contrast-foreground:#fdfdfe;--ifm-color-success-contrast-background:#003100;--ifm-color-success-contrast-foreground:#e6f6e6;--ifm-color-info-contrast-background:#193c47;--ifm-color-info-contrast-foreground:#eef9fd;--ifm-color-warning-contrast-background:#4d3800;--ifm-color-warning-contrast-foreground:#fff8e6;--ifm-color-danger-contrast-background:#4b1113;--ifm-color-danger-contrast-foreground:#ffebec}#nprogress .bar{background:var(--docusaurus-progress-bar-color);height:2px;left:0;position:fixed;top:0;width:100%;z-index:1031}#nprogress .peg{box-shadow:0 0 10px var(--docusaurus-progress-bar-color),0 0 5px var(--docusaurus-progress-bar-color);height:100%;opacity:1;position:absolute;right:0;transform:rotate(3deg) translateY(-4px);width:100px}[data-theme=dark]{--docusaurus-highlighted-code-line-bg:#484d5b}.docusaurus-highlight-code-line{background-color:#484d5b;display:block;margin:0 calc(var(--ifm-pre-padding)*-1);padding:0 var(--ifm-pre-padding)}.footer__copyright{padding:0 var(--ifm-spacing-horizontal);text-align:left}.footer__links{margin:2rem 0}.button{border-radius:2em}.d-align-items--center{align-items:center;display:flex}.tag_zVej{border:1px solid var(--docusaurus-tag-list-border);transition:border var(--ifm-transition-fast)}.tag_zVej:hover{--docusaurus-tag-list-border:var(--ifm-link-color);text-decoration:none}.tagRegular_sFm0{border-radius:var(--ifm-global-radius);font-size:90%;padding:.2rem .5rem .3rem}.tagWithCount_h2kH{align-items:center;border-left:0;display:flex;padding:0 .5rem 0 1rem;position:relative}.tagWithCount_h2kH:after,.tagWithCount_h2kH:before{border:1px solid var(--docusaurus-tag-list-border);content:"";position:absolute;top:50%;transition:inherit}.tagWithCount_h2kH:before{border-bottom:0;border-right:0;height:1.18rem;right:100%;transform:translate(50%,-50%) rotate(-45deg);width:1.18rem}.tagWithCount_h2kH:after{border-radius:50%;height:.5rem;left:0;transform:translateY(-50%);width:.5rem}.tagWithCount_h2kH span{background:var(--ifm-color-secondary);border-radius:var(--ifm-global-radius);color:var(--ifm-color-black);font-size:.7rem;line-height:1.2;margin-left:.3rem;padding:.1rem .4rem}.tags_jXut{display:inline}.tag_QGVx{display:inline-block;margin:0 .4rem .5rem 0}.iconEdit_Z9Sw{margin-right:.3em;vertical-align:sub}.lastUpdated_JAkA{font-size:smaller;font-style:italic;margin-top:.2rem}.tocCollapsibleButton_TO0P{align-items:center;display:flex;font-size:inherit;justify-content:space-between;padding:.4rem .8rem;width:100%}.tocCollapsibleButton_TO0P:after{background:var(--ifm-menu-link-sublist-icon) 50% 50%/2rem 2rem no-repeat;content:"";filter:var(--ifm-menu-link-sublist-icon-filter);height:1.25rem;transform:rotate(180deg);transition:transform var(--ifm-transition-fast);width:1.25rem}.tocCollapsibleButtonExpanded_MG3E:after,.tocCollapsibleExpanded_sAul{transform:none}.tocCollapsible_ETCw{background-color:var(--ifm-menu-color-background-active);border-radius:var(--ifm-global-radius);margin:1rem 0}.tocCollapsibleContent_vkbj>ul{border-left:none;border-top:1px solid var(--ifm-color-emphasis-300);font-size:15px;padding:.2rem 0}.tocCollapsibleContent_vkbj ul li{margin:.4rem .8rem}.tocCollapsibleContent_vkbj a{display:block}.tableOfContents_bqdL{max-height:calc(100vh - var(--ifm-navbar-height) - 2rem);overflow-y:auto;position:sticky;top:calc(var(--ifm-navbar-height) + 1rem)}.tableOfContentsInline_prmo ul{font-size:medium;list-style-type:disc;padding-top:0}.backToTopButton_sjWU{background-color:var(--ifm-color-emphasis-200);border-radius:50%;bottom:1.3rem;height:3rem;opacity:0;position:fixed;right:1.3rem;transform:scale(0);transition:all var(--ifm-transition-fast) var(--ifm-transition-timing-default);visibility:hidden;width:3rem;z-index:calc(var(--ifm-z-index-fixed) - 1)}.backToTopButton_sjWU:after{background-color:var(--ifm-color-emphasis-1000);content:" ";display:inline-block;height:100%;-webkit-mask:var(--ifm-menu-link-sublist-icon) 50%/2rem 2rem no-repeat;mask:var(--ifm-menu-link-sublist-icon) 50%/2rem 2rem no-repeat;width:100%}.backToTopButtonShow_xfvO{opacity:1;transform:scale(1);visibility:visible}.skipToContent_fXgn{background-color:var(--ifm-background-surface-color);color:var(--ifm-color-emphasis-900);left:100%;padding:calc(var(--ifm-global-spacing)/2) var(--ifm-global-spacing);position:fixed;top:1rem;z-index:calc(var(--ifm-z-index-fixed) + 1)}.skipToContent_fXgn:focus{box-shadow:var(--ifm-global-shadow-md);left:1rem}.closeButton_CVFx{line-height:0;padding:0}.content_knG7{font-size:85%;padding:5px 0;text-align:center}.content_knG7 a{color:inherit;text-decoration:underline}.announcementBar_mb4j{align-items:center;background-color:var(--ifm-color-white);border-bottom:1px solid var(--ifm-color-emphasis-100);color:var(--ifm-color-black);display:flex;height:var(--docusaurus-announcement-bar-height)}#__docusaurus-base-url-issue-banner-container,.docSidebarContainer_YfHR,.navbarSearchContainer_Bca1:empty,.sidebarLogo_isFc,.themedComponent_mlkZ,[data-theme=dark] .lightToggleIcon_pyhR,[data-theme=light] .darkToggleIcon_wfgR,html[data-announcement-bar-initially-dismissed=true] .announcementBar_mb4j{display:none}.announcementBarPlaceholder_vyr4{flex:0 0 10px}.announcementBarClose_gvF7{align-self:stretch;flex:0 0 30px}.toggle_vylO{height:2rem;width:2rem}.toggleButton_gllP{align-items:center;border-radius:50%;display:flex;height:100%;justify-content:center;transition:background var(--ifm-transition-fast);width:100%}.argsIconContainer_Xdwt,.argsInputField_gall{border:1px solid var(--ifm-color-emphasis-500)}.toggleButton_gllP:hover{background:var(--ifm-color-emphasis-200)}.toggleButtonDisabled_aARS{cursor:not-allowed}.darkNavbarColorModeToggle_X3D1:hover{background:var(--ifm-color-gray-800)}[data-theme=dark] .themedComponent--dark_xIcU,[data-theme=light] .themedComponent--light_NVdE,html:not([data-theme]) .themedComponent--light_NVdE{display:initial}[data-theme=dark]:root{--docusaurus-collapse-button-bg:#ffffff0d;--docusaurus-collapse-button-bg-hover:#ffffff1a}.collapseSidebarButton_PEFL{display:none;margin:0}.iconExternalLink_nPIU{margin-left:.3rem}.docMainContainer_TBSr,.docRoot_UBD9{display:flex;width:100%}.docsWrapper_hBAB{display:flex;flex:1 0 auto}.dropdownNavbarItemMobile_S0Fm{cursor:pointer}.iconLanguage_nlXk{margin-right:5px;vertical-align:text-bottom}.navbarHideable_m1mJ{transition:transform var(--ifm-transition-fast) ease}.navbarHidden_jGov{transform:translate3d(0,calc(-100% - 2px),0)}.errorBoundaryError_a6uf{color:red;white-space:pre-wrap}.errorBoundaryFallback_VBag{color:red;padding:.55rem}.footerLogoLink_BH7S{opacity:.5;transition:opacity var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.footerLogoLink_BH7S:hover,.hash-link:focus,:hover>.hash-link{opacity:1}body:not(.navigation-with-keyboard) :not(input):focus{outline:0}.anchorWithStickyNavbar_LWe7{scroll-margin-top:calc(var(--ifm-navbar-height) + .5rem)}.anchorWithHideOnScrollNavbar_WYt5{scroll-margin-top:.5rem}.hash-link{opacity:0;padding-left:.5rem;transition:opacity var(--ifm-transition-fast);user-select:none}.hash-link:before{content:"#"}.mainWrapper_z2l0{display:flex;flex:1 0 auto;flex-direction:column}.docusaurus-mt-lg{margin-top:3rem}#__docusaurus{display:flex;flex-direction:column;min-height:100%}li,p{max-width:70ch}body>div{overflow:hidden}.runbox__boR{margin:10px}.headerContainer_pmZr{display:flex;flex-wrap:wrap;margin-left:10px;padding:10px}.argsInputContainer_Rz4y{display:flex;height:30px;margin-right:10px}.argsInputField_gall{background-color:var(--ifm-navbar-search-input-background-color);border-radius:4px 0 0 4px;color:var(--ifm-navbar-search-input-color);outline:0;padding:10px;width:300px}.argsIconContainer_Xdwt,.helperButton_MkF3{background-color:var(--ifm-navbar-search-input-background-color);color:var(--ifm-color-primary);text-align:center}html[data-theme=dark] .argsIconContainer_Xdwt,html[data-theme=dark] .argsInputField_gall,html[data-theme=dark] .helperButton_MkF3{border:1px solid var(--ifm-color-emphasis-100)}.argsIconContainer_Xdwt{border-left:none;border-radius:0 4px 4px 0;margin-left:0;min-width:50px;padding-top:4px}.argsIconContainer_Xdwt:hover,.helperButton_MkF3:hover{background-color:var(--ifm-color-primary);color:#fff;cursor:pointer}.helperButton_MkF3{border:1px solid var(--ifm-color-emphasis-500);border-radius:4px;font-size:var(--ifm-font-size-base);height:30px;margin-right:10px;padding:0 12px}.row_BFIh{display:flex;flex-direction:row;flex-wrap:wrap}.spinner_Wr6O{animation:1.5s linear infinite a}@keyframes a{to{transform:rotate(1turn)}}.playgroundContainer_TGbA{border-radius:var(--ifm-global-radius);margin-bottom:var(--ifm-leading);overflow:hidden}.playgroundHeader_qwyd{background:var(--ifm-color-emphasis-200);color:var(--ifm-color-content);font-size:var(--ifm-code-font-size);font-weight:700;letter-spacing:.08rem;padding:.75rem}.playgroundHeader_qwyd:first-of-type{background:var(--ifm-color-emphasis-600);color:var(--ifm-color-content-inverse)}.playgroundEditor_PvJ1{direction:ltr;font:var(--ifm-code-font-size)/var(--ifm-pre-line-height) var(--ifm-font-family-monospace)!important}.playgroundPreview_bb8I{background-color:var(--ifm-pre-background);padding:1rem}.copyButtonIconWrapper_qXEj,.copyButtonIcons_eSgA{height:1.125rem;position:relative;width:1.125rem}.copyButtonIcon_LfzR,.copyButtonIcon_y97N,.copyButtonSuccessIcon_LjdS{left:0;position:absolute;top:0;fill:currentColor;height:inherit;opacity:inherit;transition:all var(--ifm-transition-fast) ease;width:inherit}.browserWindow_my1Q{border:3px solid var(--ifm-color-emphasis-200);border-top-left-radius:var(--ifm-global-radius);border-top-right-radius:var(--ifm-global-radius)}.browserWindowHeader_jXSR{align-items:center;background:var(--ifm-color-emphasis-200);display:flex;padding:.5rem 1rem}.row_KZDM:after{clear:both;content:"";display:table}.buttons_uHc7{white-space:nowrap}.right_oyze{align-self:center;width:10%}.browserWindowAddressBar_Pd8y{background-color:#fff;border-radius:12.5px;color:#666;flex:1 0;font:400 13px Arial;margin:0 1rem 0 .5rem;padding:5px 15px;-webkit-user-select:none;user-select:none}.dot_giz1{background-color:#bbb;border-radius:50%;display:inline-block;height:12px;margin-right:6px;margin-top:4px;width:12px}.browserWindowMenuIcon_Vhuh{margin-left:auto}.bar_rrRL{background-color:#aaa;display:block;height:3px;margin:3px 0;width:17px}.buttonGroup__atx button,.codeBlockContainer_Ckt0{background:var(--prism-background-color);color:var(--prism-color)}.browserWindowBody_Idgs{padding:1rem}.codeBlockContainer_Ckt0{border-radius:var(--ifm-code-border-radius);margin-bottom:var(--ifm-leading)}.codeBlockContent_biex{border-radius:inherit;direction:ltr;position:relative}.codeBlockTitle_Ktv7{border-bottom:1px solid var(--ifm-color-emphasis-300);border-top-left-radius:inherit;border-top-right-radius:inherit;font-size:var(--ifm-code-font-size);font-weight:500;padding:.75rem var(--ifm-pre-padding)}.codeBlock_bY9V{--ifm-pre-background:var(--prism-background-color);margin:0;padding:0}.codeBlockTitle_Ktv7+.codeBlockContent_biex .codeBlock_bY9V{border-top-left-radius:0;border-top-right-radius:0}.codeBlockLines_e6Vv{float:left;font:inherit;min-width:100%;padding:var(--ifm-pre-padding)}.codeBlockLinesWithNumbering_o6Pm{display:table;padding:var(--ifm-pre-padding) 0}.buttonGroup__atx{column-gap:.2rem;display:flex;position:absolute;right:calc(var(--ifm-pre-padding)/2);top:calc(var(--ifm-pre-padding)/2)}.buttonGroup__atx button{align-items:center;border:1px solid var(--ifm-color-emphasis-300);border-radius:var(--ifm-global-radius);display:flex;line-height:0;opacity:0;padding:.4rem;transition:opacity var(--ifm-transition-fast) ease-in-out}.buttonGroup__atx button:focus-visible,.buttonGroup__atx button:hover{opacity:1!important}.theme-code-block:hover .buttonGroup__atx button{opacity:.4}:where(:root){--docusaurus-highlighted-code-line-bg:#484d5b}:where([data-theme=dark]){--docusaurus-highlighted-code-line-bg:#646464}.theme-code-block-highlighted-line{background-color:var(--docusaurus-highlighted-code-line-bg);display:block;margin:0 calc(var(--ifm-pre-padding)*-1);padding:0 var(--ifm-pre-padding)}.codeLine_lJS_{counter-increment:a;display:table-row}.codeLineNumber_Tfdd{background:var(--ifm-pre-background);display:table-cell;left:0;overflow-wrap:normal;padding:0 var(--ifm-pre-padding);position:sticky;text-align:right;width:1%}.codeLineNumber_Tfdd:before{content:counter(a);opacity:.4}.codeLineContent_feaV{padding-right:var(--ifm-pre-padding)}.theme-code-block:hover .copyButtonCopied_obH4{opacity:1!important}.copyButtonSuccessIcon_LjdS{color:#00d600;left:50%;opacity:0;top:50%;transform:translate(-50%,-50%) scale(.33)}.copyButtonCopied_obH4 .copyButtonIcon_y97N{opacity:0;transform:scale(.33)}.copyButtonCopied_obH4 .copyButtonSuccessIcon_LjdS{opacity:1;transform:translate(-50%,-50%) scale(1);transition-delay:75ms}.wordWrapButtonIcon_Bwma{height:1.2rem;width:1.2rem}.details_lb9f{--docusaurus-details-summary-arrow-size:0.38rem;--docusaurus-details-transition:transform 200ms ease;--docusaurus-details-decoration-color:grey}.details_lb9f>summary{cursor:pointer;padding-left:1rem;position:relative}.details_lb9f>summary::-webkit-details-marker{display:none}.details_lb9f>summary:before{border-color:#0000 #0000 #0000 var(--docusaurus-details-decoration-color);border-style:solid;border-width:var(--docusaurus-details-summary-arrow-size);content:"";left:0;position:absolute;top:.45rem;transform:rotate(0);transform-origin:calc(var(--docusaurus-details-summary-arrow-size)/2) 50%;transition:var(--docusaurus-details-transition)}.collapsibleContent_i85q{border-top:1px solid var(--docusaurus-details-decoration-color);margin-top:1rem;padding-top:1rem}.details_b_Ee{--docusaurus-details-decoration-color:var(--ifm-alert-border-color);--docusaurus-details-transition:transform var(--ifm-transition-fast) ease;border:1px solid var(--ifm-alert-border-color);margin:0 0 var(--ifm-spacing-vertical)}.img_ev3q{height:auto}.admonition_xJq3{margin-bottom:1em}.admonitionHeading_Gvgb{font:var(--ifm-heading-font-weight) var(--ifm-h5-font-size)/var(--ifm-heading-line-height) var(--ifm-heading-font-family)}.admonitionHeading_Gvgb:not(:last-child){margin-bottom:.3rem}.admonitionHeading_Gvgb code{text-transform:none}.admonitionIcon_Rf37{display:inline-block;margin-right:.4em;vertical-align:middle}.admonitionIcon_Rf37 svg{display:inline-block;height:1.6em;width:1.6em;fill:var(--ifm-alert-foreground-color)}.breadcrumbHomeIcon_YNFT{height:1.1rem;position:relative;top:1px;vertical-align:top;width:1.1rem}.breadcrumbsContainer_Z_bl{--ifm-breadcrumb-size-multiplier:0.8;margin-bottom:.8rem}@media (min-width:997px){.collapseSidebarButton_PEFL,.expandButton_TmdG{background-color:var(--docusaurus-collapse-button-bg)}.lastUpdated_JAkA{text-align:right}.tocMobile_ITEo{display:none}:root{--docusaurus-announcement-bar-height:30px}.announcementBarClose_gvF7,.announcementBarPlaceholder_vyr4{flex-basis:50px}.collapseSidebarButton_PEFL{border:1px solid var(--ifm-toc-border-color);border-radius:0;bottom:0;display:block!important;height:40px;position:sticky}.collapseSidebarButtonIcon_kv0_{margin-top:4px;transform:rotate(180deg)}.expandButtonIcon_i1dp,[dir=rtl] .collapseSidebarButtonIcon_kv0_{transform:rotate(0)}.collapseSidebarButton_PEFL:focus,.collapseSidebarButton_PEFL:hover,.expandButton_TmdG:focus,.expandButton_TmdG:hover{background-color:var(--docusaurus-collapse-button-bg-hover)}.menuHtmlItem_M9Kj{padding:var(--ifm-menu-link-padding-vertical) var(--ifm-menu-link-padding-horizontal)}.menu_SIkG{flex-grow:1;padding:.5rem}@supports (scrollbar-gutter:stable){.menu_SIkG{padding:.5rem 0 .5rem .5rem;scrollbar-gutter:stable}}.menuWithAnnouncementBar_GW3s{margin-bottom:var(--docusaurus-announcement-bar-height)}.sidebar_njMd{display:flex;flex-direction:column;height:100%;padding-top:var(--ifm-navbar-height);width:var(--doc-sidebar-width)}.sidebarWithHideableNavbar_wUlq{padding-top:0}.sidebarHidden_VK0M{opacity:0;visibility:hidden}.sidebarLogo_isFc{align-items:center;color:inherit!important;display:flex!important;margin:0 var(--ifm-navbar-padding-horizontal);max-height:var(--ifm-navbar-height);min-height:var(--ifm-navbar-height);text-decoration:none!important}.sidebarLogo_isFc img{height:2rem;margin-right:.5rem}.expandButton_TmdG{align-items:center;display:flex;height:100%;justify-content:center;position:absolute;right:0;top:0;transition:background-color var(--ifm-transition-fast) ease;width:100%}[dir=rtl] .expandButtonIcon_i1dp{transform:rotate(180deg)}.docSidebarContainer_YfHR{border-right:1px solid var(--ifm-toc-border-color);clip-path:inset(0);display:block;margin-top:calc(var(--ifm-navbar-height)*-1);transition:width var(--ifm-transition-fast) ease;width:var(--doc-sidebar-width);will-change:width}.docSidebarContainerHidden_DPk8{cursor:pointer;width:var(--doc-sidebar-hidden-width)}.sidebarViewport_aRkj{height:100%;max-height:100vh;position:sticky;top:0}.docMainContainer_TBSr{flex-grow:1;max-width:calc(100% - var(--doc-sidebar-width))}.docMainContainerEnhanced_lQrH{max-width:calc(100% - var(--doc-sidebar-hidden-width))}.docItemWrapperEnhanced_JWYK{max-width:calc(var(--ifm-container-width) + var(--doc-sidebar-width))!important}.navbarSearchContainer_Bca1{padding:var(--ifm-navbar-item-padding-vertical) var(--ifm-navbar-item-padding-horizontal)}.docItemCol_VOVn{max-width:75%!important}}@media (min-width:1440px){.container{max-width:var(--ifm-container-width-xl)}}@media (max-width:996px){.col{--ifm-col-width:100%;flex-basis:var(--ifm-col-width);margin-left:0}.footer{--ifm-footer-padding-horizontal:0}.colorModeToggle_DEke,.footer__link-separator,.navbar__item,.tableOfContents_bqdL{display:none}.footer__col{margin-bottom:calc(var(--ifm-spacing-vertical)*3)}.footer__link-item{display:block}.hero{padding-left:0;padding-right:0}.navbar>.container,.navbar>.container-fluid{padding:0}.navbar__toggle{display:inherit}.navbar__search-input{width:9rem}.pills--block,.tabs--block{flex-direction:column}.docItemContainer_F8PC{padding:0 .3rem}.navbarSearchContainer_Bca1{position:absolute;right:var(--ifm-navbar-padding-horizontal)}}@media screen and (max-width:600px){.argsInputField_gall{width:100%}}@media (max-width:576px){.markdown h1:first-child{--ifm-h1-font-size:2rem}.markdown>h2{--ifm-h2-font-size:1.5rem}.markdown>h3{--ifm-h3-font-size:1.25rem}}@media (hover:hover){.backToTopButton_sjWU:hover{background-color:var(--ifm-color-emphasis-300)}}@media (pointer:fine){.thin-scrollbar{scrollbar-width:thin}.thin-scrollbar::-webkit-scrollbar{height:var(--ifm-scrollbar-size);width:var(--ifm-scrollbar-size)}.thin-scrollbar::-webkit-scrollbar-track{background:var(--ifm-scrollbar-track-background-color);border-radius:10px}.thin-scrollbar::-webkit-scrollbar-thumb{background:var(--ifm-scrollbar-thumb-background-color);border-radius:10px}.thin-scrollbar::-webkit-scrollbar-thumb:hover{background:var(--ifm-scrollbar-thumb-hover-background-color)}}@media (prefers-reduced-motion:reduce){:root{--ifm-transition-fast:0ms;--ifm-transition-slow:0ms}}@media print{.announcementBar_mb4j,.footer,.menu,.navbar,.pagination-nav,.table-of-contents,.tocMobile_ITEo{display:none}.tabs{page-break-inside:avoid}.codeBlockLines_e6Vv{white-space:pre-wrap}} \ No newline at end of file diff --git a/assets/files/LeastAuthorityReport-1a9f7b44c55b9cb77ba2c8f4bc4f2654.pdf b/assets/files/LeastAuthorityReport-1a9f7b44c55b9cb77ba2c8f4bc4f2654.pdf new file mode 100644 index 0000000000000000000000000000000000000000..a9c0da6c0fe6411c94239fc7b4ed526f284bda51 GIT binary patch literal 179200 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

E3b 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 P%gE4-OI6j?-;E0ZpGksr literal 0 HcmV?d00001 diff --git a/assets/js/01743682.7b993dde.js b/assets/js/01743682.7b993dde.js new file mode 100644 index 00000000..d6b2d3aa --- /dev/null +++ b/assets/js/01743682.7b993dde.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkbeacon_docs=self.webpackChunkbeacon_docs||[]).push([[9858],{96472:(e,t,r)=>{r.r(t),r.d(t,{assets:()=>i,contentTitle:()=>c,default:()=>d,frontMatter:()=>s,metadata:()=>a,toc:()=>l});var n=r(74848),o=r(28453);const s={},c=void 0,a={id:"wallet/errors",title:"errors",description:"",source:"@site/docs/wallet/errors.mdx",sourceDirName:"wallet",slug:"/wallet/errors",permalink:"/wallet/errors",draft:!1,unlisted:!1,editUrl:"https://github.com/airgap-it/beacon-docs/edit/main/src/docs/wallet/errors.mdx",tags:[],version:"current",frontMatter:{}},i={},l=[];function u(e){return(0,n.jsx)(n.Fragment,{})}function d(e={}){const{wrapper:t}={...(0,o.R)(),...e.components};return t?(0,n.jsx)(t,{...e,children:(0,n.jsx)(u,{...e})}):u()}},28453:(e,t,r)=>{r.d(t,{R:()=>c,x:()=>a});var n=r(96540);const o={},s=n.createContext(o);function c(e){const t=n.useContext(s);return n.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function a(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(o):e.components||o:c(e.components),n.createElement(s.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/0b185270.b409fba0.js b/assets/js/0b185270.b409fba0.js new file mode 100644 index 00000000..11d016d9 --- /dev/null +++ b/assets/js/0b185270.b409fba0.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkbeacon_docs=self.webpackChunkbeacon_docs||[]).push([[3482],{80455:(t,e,n)=>{n.r(e),n.d(e,{assets:()=>a,contentTitle:()=>s,default:()=>l,frontMatter:()=>c,metadata:()=>i,toc:()=>u});var o=n(74848),r=n(28453);const c={title:"FAQ"},s=void 0,i={id:"FAQ",title:"FAQ",description:"",source:"@site/docs/FAQ.mdx",sourceDirName:".",slug:"/FAQ",permalink:"/FAQ",draft:!1,unlisted:!1,editUrl:"https://github.com/airgap-it/beacon-docs/edit/main/src/docs/FAQ.mdx",tags:[],version:"current",frontMatter:{title:"FAQ"}},a={},u=[];function d(t){return(0,o.jsx)(o.Fragment,{})}function l(t={}){const{wrapper:e}={...(0,r.R)(),...t.components};return e?(0,o.jsx)(e,{...t,children:(0,o.jsx)(d,{...t})}):d()}},28453:(t,e,n)=>{n.d(e,{R:()=>s,x:()=>i});var o=n(96540);const r={},c=o.createContext(r);function s(t){const e=o.useContext(c);return o.useMemo((function(){return"function"==typeof t?t(e):{...e,...t}}),[e,t])}function i(t){let e;return e=t.disableParentContext?"function"==typeof t.components?t.components(r):t.components||r:s(t.components),o.createElement(c.Provider,{value:e},t.children)}}}]); \ No newline at end of file diff --git a/assets/js/0ce74438.755c0103.js b/assets/js/0ce74438.755c0103.js new file mode 100644 index 00000000..1e9ade15 --- /dev/null +++ b/assets/js/0ce74438.755c0103.js @@ -0,0 +1 @@ +(self.webpackChunkbeacon_docs=self.webpackChunkbeacon_docs||[]).push([[3365],{76450:(e,n,t)=>{"use strict";t.d(n,{A:()=>p});var r=t(96540),o=t(95293);const a=[{name:"@airgap/beacon-blockchain-substrate/types/messages/permission-request.d.ts",dts:"import { AppMetadata, PermissionRequestV3 } from '@airgap/beacon-types';\nimport { SubstratePermissionScope } from '../permission-scope';\nexport interface SubstratePermissionRequest extends PermissionRequestV3<'substrate'> {\n blockchainData: {\n scopes: SubstratePermissionScope[];\n appMetadata: AppMetadata;\n network?: {\n genesisHash: string;\n rpc?: string;\n }[];\n };\n}\n"},{name:"@airgap/beacon-blockchain-substrate/types/messages/permission-response.d.ts",dts:"import { AppMetadata, PermissionResponseV3 } from '@airgap/beacon-types';\nimport { SubstratePermissionScope } from '../permission-scope';\nexport interface SubstratePermissionResponse extends PermissionResponseV3<'substrate'> {\n blockchainData: {\n appMetadata: AppMetadata;\n scopes: SubstratePermissionScope[];\n accounts: {\n accountId: string;\n network?: {\n genesisHash: string;\n rpc?: string;\n };\n publicKey: string;\n address: string;\n }[];\n };\n}\n"},{name:"@airgap/beacon-blockchain-substrate/types/messages/sign-payload-request.d.ts",dts:"import { BlockchainMessage } from '@airgap/beacon-types';\nimport { SubstrateMessageType } from '../message-type';\nimport { SubstratePermissionScope } from '../permission-scope';\nexport interface SubstrateSignPayloadRequest extends BlockchainMessage<'substrate'> {\n blockchainData: {\n type: SubstrateMessageType.sign_payload_request;\n scope: SubstratePermissionScope.sign_payload_json | SubstratePermissionScope.sign_payload_json;\n payload: {\n type: 'json';\n /**\n * @description The checkpoint hash of the block, in hex\n */\n blockHash: string;\n /**\n * @description The checkpoint block number, in hex\n */\n blockNumber: string;\n /**\n * @description The era for this transaction, in hex\n */\n era: string;\n /**\n * @description The genesis hash of the chain, in hex\n */\n genesisHash: string;\n /**\n * @description The encoded method (with arguments) in hex\n */\n method: string;\n /**\n * @description The nonce for this transaction, in hex\n */\n nonce: string;\n /**\n * @description The current spec version for the runtime\n */\n specVersion: string;\n /**\n * @description The tip for this transaction, in hex\n */\n tip: string;\n /**\n * @description The current transaction version for the runtime\n */\n transactionVersion: string;\n /**\n * @description The applicable signed extensions for this runtime\n */\n signedExtensions: string[];\n /**\n * @description The version of the extrinsic we are dealing with\n */\n version: number;\n } | {\n type: 'raw';\n isMutable: boolean;\n dataType: 'bytes' | 'payload';\n data: string;\n };\n mode: 'submit' | 'submit-and-return' | 'return';\n };\n}\n"},{name:"@airgap/beacon-blockchain-substrate/types/messages/sign-payload-response.d.ts",dts:"export type SubstrateSignPayloadResponse = {\n transactionHash: string;\n} | {\n transactionHash: string;\n signature: string;\n payload?: string;\n} | {\n signature: string;\n payload?: string;\n};\n"},{name:"@airgap/beacon-blockchain-substrate/types/messages/transfer-request.d.ts",dts:"import { BlockchainMessage } from '@airgap/beacon-types';\nimport { SubstrateMessageType } from '../message-type';\nimport { SubstratePermissionScope } from '../permission-scope';\nexport interface SubstrateTransferRequest extends BlockchainMessage<'substrate'> {\n blockchainData: {\n type: SubstrateMessageType.transfer_request;\n scope: SubstratePermissionScope.transfer;\n sourceAddress: string;\n amount: string;\n recipient: string;\n network: {\n genesisHash: string;\n rpc?: string;\n };\n mode: 'submit' | 'submit-and-return' | 'return';\n };\n}\n"},{name:"@airgap/beacon-blockchain-substrate/types/messages/transfer-response.d.ts",dts:"export type SubstrateTransferResponse = {\n transactionHash: string;\n} | {\n transactionHash: string;\n signature: string;\n payload?: string;\n} | {\n signature: string;\n payload?: string;\n};\n"},{name:"@airgap/beacon-blockchain-substrate/types/message-type.d.ts",dts:"export declare enum SubstrateMessageType {\n 'transfer_request' = \"transfer_request\",\n 'sign_payload_request' = \"sign_payload_request\"\n}\n"},{name:"@airgap/beacon-blockchain-substrate/types/permission-scope.d.ts",dts:"export declare enum SubstratePermissionScope {\n 'transfer' = \"transfer\",\n 'sign_payload_json' = \"sign_payload_json\",\n 'sign_payload_raw' = \"sign_payload_raw\"\n}\n"},{name:"@airgap/beacon-blockchain-substrate/ui/alert/alert-templates.d.ts",dts:"export declare const alertTemplates: {\n default: {\n css: string;\n };\n pair: {\n css: string;\n };\n};\n"},{name:"@airgap/beacon-blockchain-substrate/ui/alert/wallet-lists.d.ts",dts:"import { App, DesktopApp, ExtensionApp, WebApp } from '@airgap/beacon-types';\nexport declare const extensionList: ExtensionApp[];\nexport declare const desktopList: DesktopApp[];\nexport declare const webList: WebApp[];\nexport declare const iOSList: App[];\n"},{name:"@airgap/beacon-blockchain-substrate/ui/toast/toast-templates.d.ts",dts:"export declare const toastTemplates: {\n default: {\n css: string;\n };\n};\n"},{name:"@airgap/beacon-blockchain-substrate/util/is-kusama-message.d.ts",dts:""},{name:"@airgap/beacon-blockchain-substrate/blockchain.d.ts",dts:"import { Blockchain, BlockchainMessage, ResponseInput, ExtensionApp, DesktopApp, WebApp, App } from '@airgap/beacon-types';\nimport { SubstratePermissionResponse } from './types/messages/permission-response';\nexport declare class SubstrateBlockchain implements Blockchain {\n readonly identifier: string;\n validateRequest(input: BlockchainMessage): Promise;\n handleResponse(input: ResponseInput): Promise;\n getWalletLists(): Promise<{\n extensionList: ExtensionApp[];\n desktopList: DesktopApp[];\n webList: WebApp[];\n iOSList: App[];\n }>;\n getAccountInfosFromPermissionResponse(permissionResponse: SubstratePermissionResponse): Promise<{\n accountId: string;\n address: string;\n publicKey: string;\n }[]>;\n}\n"},{name:"@airgap/beacon-blockchain-substrate/index.d.ts",dts:"export { SubstrateBlockchain } from './blockchain';\nexport * from './types/message-type';\nexport * from './types/permission-scope';\nexport * from './types/messages/permission-request';\nexport * from './types/messages/permission-response';\nexport * from './types/messages/sign-payload-request';\nexport * from './types/messages/sign-payload-response';\nexport * from './types/messages/transfer-request';\nexport * from './types/messages/transfer-response';\n"},{name:"@airgap/beacon-blockchain-substrate/dist/esm/types/messages/permission-request.d.ts",dts:"import { AppMetadata, PermissionRequestV3 } from '@airgap/beacon-types';\nimport { SubstratePermissionScope } from '../permission-scope';\nexport interface SubstratePermissionRequest extends PermissionRequestV3<'substrate'> {\n blockchainData: {\n scopes: SubstratePermissionScope[];\n appMetadata: AppMetadata;\n network?: {\n genesisHash: string;\n rpc?: string;\n }[];\n };\n}\n"},{name:"@airgap/beacon-blockchain-substrate/dist/esm/types/messages/permission-response.d.ts",dts:"import { AppMetadata, PermissionResponseV3 } from '@airgap/beacon-types';\nimport { SubstratePermissionScope } from '../permission-scope';\nexport interface SubstratePermissionResponse extends PermissionResponseV3<'substrate'> {\n blockchainData: {\n appMetadata: AppMetadata;\n scopes: SubstratePermissionScope[];\n accounts: {\n accountId: string;\n network?: {\n genesisHash: string;\n rpc?: string;\n };\n publicKey: string;\n address: string;\n }[];\n };\n}\n"},{name:"@airgap/beacon-blockchain-substrate/dist/esm/types/messages/sign-payload-request.d.ts",dts:"import { BlockchainMessage } from '@airgap/beacon-types';\nimport { SubstrateMessageType } from '../message-type';\nimport { SubstratePermissionScope } from '../permission-scope';\nexport interface SubstrateSignPayloadRequest extends BlockchainMessage<'substrate'> {\n blockchainData: {\n type: SubstrateMessageType.sign_payload_request;\n scope: SubstratePermissionScope.sign_payload_json | SubstratePermissionScope.sign_payload_json;\n payload: {\n type: 'json';\n /**\n * @description The checkpoint hash of the block, in hex\n */\n blockHash: string;\n /**\n * @description The checkpoint block number, in hex\n */\n blockNumber: string;\n /**\n * @description The era for this transaction, in hex\n */\n era: string;\n /**\n * @description The genesis hash of the chain, in hex\n */\n genesisHash: string;\n /**\n * @description The encoded method (with arguments) in hex\n */\n method: string;\n /**\n * @description The nonce for this transaction, in hex\n */\n nonce: string;\n /**\n * @description The current spec version for the runtime\n */\n specVersion: string;\n /**\n * @description The tip for this transaction, in hex\n */\n tip: string;\n /**\n * @description The current transaction version for the runtime\n */\n transactionVersion: string;\n /**\n * @description The applicable signed extensions for this runtime\n */\n signedExtensions: string[];\n /**\n * @description The version of the extrinsic we are dealing with\n */\n version: number;\n } | {\n type: 'raw';\n isMutable: boolean;\n dataType: 'bytes' | 'payload';\n data: string;\n };\n mode: 'submit' | 'submit-and-return' | 'return';\n };\n}\n"},{name:"@airgap/beacon-blockchain-substrate/dist/esm/types/messages/sign-payload-response.d.ts",dts:"export type SubstrateSignPayloadResponse = {\n transactionHash: string;\n} | {\n transactionHash: string;\n signature: string;\n payload?: string;\n} | {\n signature: string;\n payload?: string;\n};\n"},{name:"@airgap/beacon-blockchain-substrate/dist/esm/types/messages/transfer-request.d.ts",dts:"import { BlockchainMessage } from '@airgap/beacon-types';\nimport { SubstrateMessageType } from '../message-type';\nimport { SubstratePermissionScope } from '../permission-scope';\nexport interface SubstrateTransferRequest extends BlockchainMessage<'substrate'> {\n blockchainData: {\n type: SubstrateMessageType.transfer_request;\n scope: SubstratePermissionScope.transfer;\n sourceAddress: string;\n amount: string;\n recipient: string;\n network: {\n genesisHash: string;\n rpc?: string;\n };\n mode: 'submit' | 'submit-and-return' | 'return';\n };\n}\n"},{name:"@airgap/beacon-blockchain-substrate/dist/esm/types/messages/transfer-response.d.ts",dts:"export type SubstrateTransferResponse = {\n transactionHash: string;\n} | {\n transactionHash: string;\n signature: string;\n payload?: string;\n} | {\n signature: string;\n payload?: string;\n};\n"},{name:"@airgap/beacon-blockchain-substrate/dist/esm/types/message-type.d.ts",dts:"export declare enum SubstrateMessageType {\n 'transfer_request' = \"transfer_request\",\n 'sign_payload_request' = \"sign_payload_request\"\n}\n"},{name:"@airgap/beacon-blockchain-substrate/dist/esm/types/permission-scope.d.ts",dts:"export declare enum SubstratePermissionScope {\n 'transfer' = \"transfer\",\n 'sign_payload_json' = \"sign_payload_json\",\n 'sign_payload_raw' = \"sign_payload_raw\"\n}\n"},{name:"@airgap/beacon-blockchain-substrate/dist/esm/ui/alert/alert-templates.d.ts",dts:"export declare const alertTemplates: {\n default: {\n css: string;\n };\n pair: {\n css: string;\n };\n};\n"},{name:"@airgap/beacon-blockchain-substrate/dist/esm/ui/alert/wallet-lists.d.ts",dts:"import { App, DesktopApp, ExtensionApp, WebApp } from '@airgap/beacon-types';\nexport declare const extensionList: ExtensionApp[];\nexport declare const desktopList: DesktopApp[];\nexport declare const webList: WebApp[];\nexport declare const iOSList: App[];\n"},{name:"@airgap/beacon-blockchain-substrate/dist/esm/ui/toast/toast-templates.d.ts",dts:"export declare const toastTemplates: {\n default: {\n css: string;\n };\n};\n"},{name:"@airgap/beacon-blockchain-substrate/dist/esm/util/is-kusama-message.d.ts",dts:""},{name:"@airgap/beacon-blockchain-substrate/dist/esm/blockchain.d.ts",dts:"import { Blockchain, BlockchainMessage, ResponseInput, ExtensionApp, DesktopApp, WebApp, App } from '@airgap/beacon-types';\nimport { SubstratePermissionResponse } from './types/messages/permission-response';\nexport declare class SubstrateBlockchain implements Blockchain {\n readonly identifier: string;\n validateRequest(input: BlockchainMessage): Promise;\n handleResponse(input: ResponseInput): Promise;\n getWalletLists(): Promise<{\n extensionList: ExtensionApp[];\n desktopList: DesktopApp[];\n webList: WebApp[];\n iOSList: App[];\n }>;\n getAccountInfosFromPermissionResponse(permissionResponse: SubstratePermissionResponse): Promise<{\n accountId: string;\n address: string;\n publicKey: string;\n }[]>;\n}\n"},{name:"@airgap/beacon-blockchain-substrate/dist/esm/index.d.ts",dts:"export { SubstrateBlockchain } from './blockchain';\nexport * from './types/message-type';\nexport * from './types/permission-scope';\nexport * from './types/messages/permission-request';\nexport * from './types/messages/permission-response';\nexport * from './types/messages/sign-payload-request';\nexport * from './types/messages/sign-payload-response';\nexport * from './types/messages/transfer-request';\nexport * from './types/messages/transfer-response';\n"},{name:"@airgap/beacon-blockchain-tezos/ui/alert/alert-templates.d.ts",dts:"export declare const alertTemplates: {\n default: {\n css: string;\n };\n pair: {\n css: string;\n };\n};\n"},{name:"@airgap/beacon-blockchain-tezos/ui/alert/wallet-lists.d.ts",dts:"import { App, DesktopApp, ExtensionApp, WebApp } from '@airgap/beacon-types';\nexport declare const extensionList: ExtensionApp[];\nexport declare const desktopList: DesktopApp[];\nexport declare const webList: WebApp[];\nexport declare const iOSList: App[];\n"},{name:"@airgap/beacon-blockchain-tezos/ui/toast/toast-templates.d.ts",dts:"export declare const toastTemplates: {\n default: {\n css: string;\n };\n};\n"},{name:"@airgap/beacon-blockchain-tezos/blockchain.d.ts",dts:"import { Blockchain, BlockchainMessage, PermissionResponseV3, ResponseInput, App, DesktopApp, ExtensionApp, WebApp } from '@airgap/beacon-types';\nexport declare class TezosBlockchain implements Blockchain {\n readonly identifier: string;\n validateRequest(input: BlockchainMessage): Promise;\n handleResponse(input: ResponseInput): Promise;\n getWalletLists(): Promise<{\n extensionList: ExtensionApp[];\n desktopList: DesktopApp[];\n webList: WebApp[];\n iOSList: App[];\n }>;\n getAccountInfosFromPermissionResponse(_permissionResponse: PermissionResponseV3<'tezos'>): Promise<{\n accountId: string;\n address: string;\n publicKey: string;\n }[]>;\n}\n"},{name:"@airgap/beacon-blockchain-tezos/index.d.ts",dts:"export { TezosBlockchain } from './blockchain';\n"},{name:"@airgap/beacon-blockchain-tezos/dist/esm/ui/alert/alert-templates.d.ts",dts:"export declare const alertTemplates: {\n default: {\n css: string;\n };\n pair: {\n css: string;\n };\n};\n"},{name:"@airgap/beacon-blockchain-tezos/dist/esm/ui/alert/wallet-lists.d.ts",dts:"import { App, DesktopApp, ExtensionApp, WebApp } from '@airgap/beacon-types';\nexport declare const extensionList: ExtensionApp[];\nexport declare const desktopList: DesktopApp[];\nexport declare const webList: WebApp[];\nexport declare const iOSList: App[];\n"},{name:"@airgap/beacon-blockchain-tezos/dist/esm/ui/toast/toast-templates.d.ts",dts:"export declare const toastTemplates: {\n default: {\n css: string;\n };\n};\n"},{name:"@airgap/beacon-blockchain-tezos/dist/esm/blockchain.d.ts",dts:"import { Blockchain, BlockchainMessage, PermissionResponseV3, ResponseInput, App, DesktopApp, ExtensionApp, WebApp } from '@airgap/beacon-types';\nexport declare class TezosBlockchain implements Blockchain {\n readonly identifier: string;\n validateRequest(input: BlockchainMessage): Promise;\n handleResponse(input: ResponseInput): Promise;\n getWalletLists(): Promise<{\n extensionList: ExtensionApp[];\n desktopList: DesktopApp[];\n webList: WebApp[];\n iOSList: App[];\n }>;\n getAccountInfosFromPermissionResponse(_permissionResponse: PermissionResponseV3<'tezos'>): Promise<{\n accountId: string;\n address: string;\n publicKey: string;\n }[]>;\n}\n"},{name:"@airgap/beacon-blockchain-tezos/dist/esm/index.d.ts",dts:"export { TezosBlockchain } from './blockchain';\n"},{name:"@airgap/beacon-core/clients/beacon-client/BeaconClient.d.ts",dts:"import { ExposedPromise } from '@airgap/beacon-utils';\nimport { AnalyticsInterface, Storage } from '@airgap/beacon-types';\nimport { BeaconClientOptions } from './BeaconClientOptions';\nimport { KeyPair } from '@stablelib/ed25519';\n/**\n * @internalapi\n *\n * The beacon client is an abstract client that handles everything that is shared between all other clients.\n * Specifically, it handles managing the beaconId and and the local keypair.\n */\nexport declare abstract class BeaconClient {\n /**\n * The name of the client\n */\n readonly name: string;\n /**\n * The URL of the dApp Icon. This can be used to display the icon of the dApp on in the wallet\n */\n readonly iconUrl?: string;\n /**\n * The URL of the dApp.\n */\n readonly appUrl?: string;\n /** The beaconId is a public key that is used to identify one specific application (dapp or wallet).\n * This is used inside a message to specify the sender, for example.\n */\n protected _beaconId: ExposedPromise;\n get beaconId(): Promise;\n protected storage: Storage;\n protected analytics: AnalyticsInterface;\n /**\n * The local keypair that is used for the communication encryption\n */\n protected _keyPair: ExposedPromise;\n protected get keyPair(): Promise;\n constructor(config: BeaconClientOptions);\n /**\n * This resets the SDK. After using this method, this instance is no longer usable. You will have to instanciate a new client.\n */\n destroy(): Promise;\n /**\n * This method initializes the SDK by setting some values in the storage and generating a keypair.\n */\n private initSDK;\n /**\n * Removes all beacon values from the storage.\n */\n private removeBeaconEntriesFromStorage;\n /**\n * This method tries to load the seed from storage, if it doesn't exist, a new one will be created and persisted.\n */\n private loadOrCreateBeaconSecret;\n}\n"},{name:"@airgap/beacon-core/clients/beacon-client/BeaconClientOptions.d.ts",dts:"import { AnalyticsInterface, Storage } from '@airgap/beacon-types';\n/**\n * @internalapi\n */\nexport interface BeaconClientOptions {\n /**\n * Name of the application\n */\n name: string;\n /**\n * A URL to the icon of the application\n */\n iconUrl?: string;\n /**\n * A URL to the website of the application\n */\n appUrl?: string;\n /**\n * The storage that will be used by the SDK\n */\n storage: Storage;\n /**\n * The analytics instance that will be used by the SDK\n */\n analytics?: AnalyticsInterface;\n}\n"},{name:"@airgap/beacon-core/clients/client/Client.d.ts",dts:"import { ExposedPromise } from '@airgap/beacon-utils';\nimport { ConnectionContext, TransportType, TransportStatus, BeaconBaseMessage, AccountInfo, PeerInfo, AppMetadata, BeaconRequestMessage, BeaconMessageWrapper, NodeDistributions } from '@airgap/beacon-types';\nimport { Transport } from '../..';\nimport { BeaconClient } from '../beacon-client/BeaconClient';\nimport { AccountManager } from '../../managers/AccountManager';\nimport { ClientOptions } from './ClientOptions';\n/**\n * @internalapi\n *\n * This abstract class handles the a big part of the logic that is shared between the dapp and wallet client.\n * For example, it selects and manages the transport and accounts.\n */\nexport declare abstract class Client extends BeaconClient {\n protected readonly accountManager: AccountManager;\n protected handleResponse: (_event: BeaconRequestMessage | BeaconMessageWrapper, connectionInfo: ConnectionContext) => void;\n /**\n * How many requests can be sent after another\n */\n protected readonly rateLimit: number;\n /**\n * The time window in seconds in which the \"rateLimit\" is checked\n */\n protected readonly rateLimitWindowInSeconds: number;\n /**\n * Stores the times when requests have been made to determine if the rate limit has been reached\n */\n protected requestCounter: number[];\n protected readonly matrixNodes: NodeDistributions;\n private transportListeners;\n protected _transport: ExposedPromise>;\n protected get transport(): Promise>;\n /**\n * Returns the connection status of the Client\n */\n get connectionStatus(): TransportStatus;\n /**\n * Returns whether or not the transaport is ready\n */\n get ready(): Promise;\n constructor(config: ClientOptions);\n protected cleanup(): Promise;\n /**\n * Return all locally known accounts\n */\n getAccounts(): Promise;\n /**\n * Return the account by ID\n * @param accountIdentifier The ID of an account\n */\n getAccount(accountIdentifier: string): Promise;\n /**\n * Remove the account by ID\n * @param accountIdentifier The ID of an account\n */\n removeAccount(accountIdentifier: string): Promise;\n /**\n * Remove all locally stored accounts\n */\n removeAllAccounts(): Promise;\n /**\n * Add a new request (current timestamp) to the pending requests, remove old ones and check if we are above the limit\n */\n addRequestAndCheckIfRateLimited(): Promise;\n /**\n * This method initializes the client. It will check if the connection should be established to a\n * browser extension or if the P2P transport should be used.\n *\n * @param transport A transport that can be provided by the user\n */\n init(transport: Transport): Promise;\n /**\n * Returns the metadata of this DApp\n */\n getOwnAppMetadata(): Promise;\n /**\n * Return all known peers\n */\n getPeers(): Promise;\n /**\n * Add a new peer to the known peers\n * @param peer The new peer to add\n */\n addPeer(peer: PeerInfo): Promise;\n destroy(): Promise;\n /**\n * A \"setter\" for when the transport needs to be changed.\n */\n protected setTransport(transport?: Transport): Promise;\n protected addListener(transport: Transport): Promise;\n protected sendDisconnectToPeer(peer: PeerInfo, transport?: Transport): Promise;\n}\n"},{name:"@airgap/beacon-core/clients/client/ClientOptions.d.ts",dts:"import { Storage, NodeDistributions } from '@airgap/beacon-types';\n/**\n * @internalapi\n */\nexport interface ClientOptions {\n /**\n * Name of the application\n */\n name: string;\n /**\n * A URL to the icon of the application\n */\n iconUrl?: string;\n /**\n * A URL to the website of the application\n */\n appUrl?: string;\n /**\n * The storage that will be used by the SDK\n */\n storage: Storage;\n /**\n * Disable all default Events and UI elements. If passed together with \"eventHandlers\",\n * the default eventHandlers will be removed, and the ones passed by the user will be added.\n */\n disableDefaultEvents?: boolean;\n /**\n * A list of matrix nodes to connect to. If a non-empty array is passed, the default options will be overwritten.\n * One node will be randomly selected based on the local keypair and the other nodes will be used as a fallback in case the primary node goes down.\n *\n * Only provide the hostname, no https:// prefix. Eg. { [Regions.EU1]: ['matrix.example.com'] }\n */\n matrixNodes?: NodeDistributions;\n /**\n * Automatically switch between apps on Mobile Devices (Enabled by Default)\n */\n enableAppSwitching?: boolean;\n /**\n * Enable metrics tracking (Disabled by Default)\n */\n enableMetrics?: boolean;\n}\n"},{name:"@airgap/beacon-core/errors/AbortedBeaconError.d.ts",dts:"import { BeaconError } from '..';\n/**\n * @category Error\n */\nexport declare class AbortedBeaconError extends BeaconError {\n name: string;\n title: string;\n constructor();\n}\n"},{name:"@airgap/beacon-core/errors/BeaconError.d.ts",dts:"import { BeaconErrorType } from '@airgap/beacon-types';\n/**\n * @category Error\n */\nexport declare abstract class BeaconError implements Error {\n name: string;\n message: string;\n title: string;\n description: string;\n get fullDescription(): {\n description: string;\n data?: string;\n };\n constructor(errorType: BeaconErrorType, message: string);\n static getError(errorType: BeaconErrorType, errorData: unknown): BeaconError;\n}\n"},{name:"@airgap/beacon-core/errors/BroadcastBeaconError.d.ts",dts:"import { BeaconError } from '..';\n/**\n * @category Error\n */\nexport declare class BroadcastBeaconError extends BeaconError {\n name: string;\n title: string;\n constructor();\n}\n"},{name:"@airgap/beacon-core/errors/EncryptionTypeNotSupportedBeaconError.d.ts",dts:"/**\n * @category Error\n */\n"},{name:"@airgap/beacon-core/errors/NetworkNotSupportedBeaconError.d.ts",dts:"import { BeaconError } from '..';\n/**\n * @category Error\n */\nexport declare class NetworkNotSupportedBeaconError extends BeaconError {\n name: string;\n title: string;\n constructor();\n}\n"},{name:"@airgap/beacon-core/errors/NoAddressBeaconError.d.ts",dts:"import { BeaconError } from '..';\n/**\n * @category Error\n */\nexport declare class NoAddressBeaconError extends BeaconError {\n name: string;\n title: string;\n constructor();\n}\n"},{name:"@airgap/beacon-core/errors/NoPrivateKeyBeaconError.d.ts",dts:"import { BeaconError } from '..';\n/**\n * @category Error\n */\nexport declare class NoPrivateKeyBeaconError extends BeaconError {\n name: string;\n title: string;\n constructor();\n}\n"},{name:"@airgap/beacon-core/errors/NotGrantedBeaconError.d.ts",dts:"import { BeaconError } from '..';\n/**\n * @category Error\n */\nexport declare class NotGrantedBeaconError extends BeaconError {\n name: string;\n title: string;\n constructor();\n}\n"},{name:"@airgap/beacon-core/errors/ParametersInvalidBeaconError.d.ts",dts:"import { BeaconError } from '..';\n/**\n * @category Error\n */\nexport declare class ParametersInvalidBeaconError extends BeaconError {\n name: string;\n title: string;\n constructor();\n}\n"},{name:"@airgap/beacon-core/errors/SignatureTypeNotSupportedBeaconError.d.ts",dts:"import { BeaconError } from '..';\n/**\n * @category Error\n */\nexport declare class SignatureTypeNotSupportedBeaconError extends BeaconError {\n name: string;\n title: string;\n constructor();\n}\n"},{name:"@airgap/beacon-core/errors/TooManyOperationsBeaconError.d.ts",dts:"import { BeaconError } from '..';\n/**\n * @category Error\n */\nexport declare class TooManyOperationsBeaconError extends BeaconError {\n name: string;\n title: string;\n constructor();\n}\n"},{name:"@airgap/beacon-core/errors/TransactionInvalidBeaconError.d.ts",dts:"import { BeaconError } from '..';\n/**\n * @category Error\n */\nexport declare class TransactionInvalidBeaconError extends BeaconError {\n readonly data: unknown;\n name: string;\n title: string;\n get fullDescription(): {\n description: string;\n data?: string;\n };\n constructor(data: unknown);\n}\n"},{name:"@airgap/beacon-core/errors/UnknownBeaconError.d.ts",dts:"import { BeaconError } from '..';\n/**\n * @category Error\n */\nexport declare class UnknownBeaconError extends BeaconError {\n name: string;\n title: string;\n constructor();\n}\n"},{name:"@airgap/beacon-core/managers/AccountManager.d.ts",dts:"import { Storage, AccountInfo, BeaconMessage } from '@airgap/beacon-types';\n/**\n * @internalapi\n *\n * The AccountManager provides CRUD functionality for account entities and persists them to the provided storage.\n */\nexport declare class AccountManager {\n private readonly storageManager;\n constructor(storage: Storage);\n getAccounts(): Promise;\n getAccount(accountIdentifier: string): Promise;\n addAccount(accountInfo: AccountInfo): Promise;\n updateAccount(accountIdentifier: string, accountInfo: Partial): Promise;\n removeAccount(accountIdentifier: string): Promise;\n removeAccounts(accountIdentifiers: string[]): Promise;\n removeAllAccounts(): Promise;\n hasPermission(message: BeaconMessage): Promise;\n}\n"},{name:"@airgap/beacon-core/managers/AppMetadataManager.d.ts",dts:"import { Storage, AppMetadata } from '@airgap/beacon-types';\n/**\n * @internalapi\n *\n * The AppMetadataManager provides CRUD functionality for app-metadata entities and persists them to the provided storage.\n */\nexport declare class AppMetadataManager {\n private readonly storageManager;\n constructor(storage: Storage);\n getAppMetadataList(): Promise;\n getAppMetadata(senderId: string): Promise;\n addAppMetadata(appMetadata: AppMetadata): Promise;\n removeAppMetadata(senderId: string): Promise;\n removeAppMetadatas(senderIds: string[]): Promise;\n removeAllAppMetadata(): Promise;\n}\n"},{name:"@airgap/beacon-core/managers/PeerManager.d.ts",dts:"import { Storage, StorageKey, StorageKeyReturnType } from '@airgap/beacon-types';\nimport { ArrayElem } from './StorageManager';\n/**\n * @internalapi\n *\n * The PeerManager provides CRUD functionality for peer entities and persists them to the provided storage.\n */\nexport declare class PeerManager {\n private readonly storageManager;\n constructor(storage: Storage, key: T);\n hasPeer(publicKey: string): Promise;\n getPeers(): Promise;\n getPeer(publicKey: string): Promise | undefined>;\n addPeer(peerInfo: ArrayElem): Promise;\n removePeer(publicKey: string): Promise;\n removePeers(publicKeys: string[]): Promise;\n removeAllPeers(): Promise;\n}\n"},{name:"@airgap/beacon-core/managers/PermissionManager.d.ts",dts:"import { BeaconMessage, Storage, PermissionInfo } from '@airgap/beacon-types';\n/**\n * @internalapi\n *\n * The PermissionManager provides CRUD functionality for permission entities and persists them to the provided storage.\n */\nexport declare class PermissionManager {\n private readonly storageManager;\n constructor(storage: Storage);\n getPermissions(): Promise;\n getPermission(accountIdentifier: string): Promise;\n addPermission(permissionInfo: PermissionInfo): Promise;\n removePermission(accountIdentifier: string): Promise;\n removePermissions(accountIdentifiers: string[]): Promise;\n removeAllPermissions(): Promise;\n hasPermission(message: BeaconMessage): Promise;\n}\n"},{name:"@airgap/beacon-core/managers/PermissionValidator.d.ts",dts:"import { BeaconMessage, PermissionEntity } from '@airgap/beacon-types';\n/**\n * @internalapi\n *\n * The PermissionValidator is used to check if permissions for a certain message type have been given\n */\nexport declare class PermissionValidator {\n /**\n * Check if permissions were given for a certain message type.\n *\n * PermissionRequest and BroadcastRequest will always return true.\n *\n * @param message Beacon Message\n */\n static hasPermission(message: BeaconMessage, getOne: (id: string) => Promise, getAll: () => Promise): Promise;\n}\n"},{name:"@airgap/beacon-core/managers/StorageManager.d.ts",dts:"import { StorageKey, Storage, StorageKeyReturnType } from '@airgap/beacon-types';\n/** Type workaround for https://github.com/Microsoft/TypeScript/issues/7294#issuecomment-465794460 */\nexport type ArrayElem = A extends (infer Elem)[] ? Elem : never;\n/**\n * @internalapi\n *\n * The StorageManager provides CRUD functionality for specific entities and persists them to the provided storage.\n */\nexport declare class StorageManager {\n private readonly storage;\n private readonly storageKey;\n constructor(storage: Storage, storageKey: T);\n getAll(): Promise;\n getOne(predicate: (element: ArrayElem) => boolean): Promise | undefined>;\n addOne(element: ArrayElem, predicate: (element: ArrayElem) => boolean, overwrite?: boolean): Promise;\n remove(predicate: (element: ArrayElem) => boolean): Promise;\n removeAll(): Promise;\n}\n"},{name:"@airgap/beacon-core/migrations/migrate-0.7.0.d.ts",dts:"import { PermissionScope, AccountIdentifier, Origin, Network } from '@airgap/beacon-types';\nexport interface AccountInfoOld {\n accountIdentifier: AccountIdentifier;\n beaconId: string;\n origin: {\n type: Origin;\n id: string;\n };\n address: string;\n pubkey: string;\n network: Network;\n scopes: PermissionScope[];\n connectedAt: Date;\n}\nexport interface P2PPairingRequestOld {\n name: string;\n pubKey: string;\n relayServer: string;\n}\nexport declare const migrate_0_7_0: (storage: Storage) => Promise;\n"},{name:"@airgap/beacon-core/migrations/migrations.d.ts",dts:"import { Storage } from '@airgap/beacon-types';\nexport declare const migrate: (storage: Storage) => Promise;\n"},{name:"@airgap/beacon-core/storage/ChromeStorage.d.ts",dts:"import { Storage, StorageKey, StorageKeyReturnType } from '@airgap/beacon-types';\n/**\n * @internalapi\n *\n * A storage that can be used in chrome extensions\n */\nexport declare class ChromeStorage implements Storage {\n static isSupported(): Promise;\n get(key: K): Promise;\n set(key: K, value: StorageKeyReturnType[K]): Promise;\n delete(key: K): Promise;\n subscribeToStorageChanged(_callback: (arg: {\n eventType: 'storageCleared' | 'entryModified';\n key: string | null;\n oldValue: string | null;\n newValue: string | null;\n }) => {}): Promise;\n getPrefixedKey(key: string): string;\n}\n"},{name:"@airgap/beacon-core/storage/IndexedDBStorage.d.ts",dts:"import { Storage, StorageKey, StorageKeyReturnType } from '@airgap/beacon-types';\nexport declare class IndexedDBStorage extends Storage {\n private readonly dbName;\n private readonly storeName;\n private db;\n private isSupported;\n constructor(dbName?: string, storeName?: string);\n private isIndexedDBSupported;\n private initDB;\n private transaction;\n get(key: K): Promise;\n set(key: K, value: StorageKeyReturnType[K]): Promise;\n delete(key: K): Promise;\n getAll(): Promise;\n getAllKeys(): Promise;\n clearStore(): Promise;\n getPrefixedKey(key: K): string;\n subscribeToStorageChanged(callback: (arg: {\n eventType: 'storageCleared' | 'entryModified';\n key: string | null;\n oldValue: string | null;\n newValue: string | null;\n }) => {}): Promise;\n /**\n * it copies over all key value pairs from a source store into a target one\n * @param targetDBName the name of the target DB\n * @param targetStoreName the name of the target store\n * @param skipKeys all the keys to ignore\n */\n fillStore(targetDBName: string, targetStoreName: string, skipKeys?: string[]): Promise;\n}\n"},{name:"@airgap/beacon-core/storage/LocalStorage.d.ts",dts:"import { Storage, StorageKey, StorageKeyReturnType } from '@airgap/beacon-types';\n/**\n * @internalapi\n *\n * A storage that can be used in the browser\n */\nexport declare class LocalStorage extends Storage {\n private readonly prefix?;\n constructor(prefix?: string | undefined);\n static isSupported(): Promise;\n get(key: K): Promise;\n set(key: K, value: StorageKeyReturnType[K]): Promise;\n delete(key: K): Promise;\n subscribeToStorageChanged(callback: (arg: {\n eventType: 'storageCleared' | 'entryModified';\n key: string | null;\n oldValue: string | null;\n newValue: string | null;\n }) => {}): Promise;\n getPrefixedKey(key: string): string;\n}\n"},{name:"@airgap/beacon-core/storage/StorageValidator.d.ts",dts:"import { Storage } from '@airgap/beacon-types';\nexport declare class StorageValidator {\n private readonly storage;\n constructor(storage: Storage);\n private validateNumber;\n private validateText;\n private validateBoolean;\n private validateArray;\n private objHasProperty;\n private innerValidate;\n validate(): Promise;\n}\n"},{name:"@airgap/beacon-core/storage/WCStorage.d.ts",dts:"export declare class WCStorage {\n private readonly localStorage;\n private readonly indexedDB;\n private channel;\n onMessageHandler: ((type: string) => void) | undefined;\n onErrorHandler: ((data: any) => void) | undefined;\n constructor();\n private onMessage;\n private onError;\n notify(type: string): void;\n hasPairings(): Promise;\n hasSessions(): Promise;\n backup(): void;\n resetState(): Promise;\n}\n"},{name:"@airgap/beacon-core/storage/getStorage.d.ts",dts:"import { Storage } from '@airgap/beacon-types';\n/**\n * Get a supported storage on this platform\n */\nexport declare const getStorage: () => Promise;\n"},{name:"@airgap/beacon-core/transports/clients/ClientEvents.d.ts",dts:'export declare const enum ClientEvents {\n CLOSE_ALERT = "CLOSE_ALERT",\n RESET_STATE = "RESET_STATE",\n WC_ACK_NOTIFICATION = "WC_ACK_NOTIFICATION"\n}\n'},{name:"@airgap/beacon-core/transports/clients/CommunicationClient.d.ts",dts:"import { PeerInfoType } from '@airgap/beacon-types';\nimport { KeyPair } from '@stablelib/ed25519';\nimport { SessionKeys } from '@stablelib/x25519-session';\nimport { ClientEvents } from './ClientEvents';\n/**\n * @internalapi\n *\n *\n */\nexport declare abstract class CommunicationClient {\n protected readonly keyPair?: KeyPair | undefined;\n constructor(keyPair?: KeyPair | undefined);\n eventHandlers: Map;\n protected isMobileOS: () => boolean;\n /**\n * Get the public key\n */\n getPublicKey(): Promise;\n /**\n * get the public key hash\n */\n getPublicKeyHash(): Promise;\n /**\n * Create a cryptobox server\n *\n * @param otherPublicKey\n * @param selfKeypair\n */\n protected createCryptoBoxServer(otherPublicKey: string, selfKeypair: KeyPair): Promise;\n /**\n * Create a cryptobox client\n *\n * @param otherPublicKey\n * @param selfKeypair\n */\n protected createCryptoBoxClient(otherPublicKey: string, selfKeypair: KeyPair): Promise;\n /**\n * Encrypt a message for a specific publicKey (receiver, asymmetric)\n *\n * @param recipientPublicKey\n * @param message\n */\n protected encryptMessageAsymmetric(recipientPublicKey: string, message: string): Promise;\n abstract unsubscribeFromEncryptedMessages(): Promise;\n abstract unsubscribeFromEncryptedMessage(senderPublicKey: string): Promise;\n abstract sendMessage(message: string, peer?: PeerInfoType): Promise;\n}\n"},{name:"@airgap/beacon-core/transports/clients/MessageBasedClient.d.ts",dts:"import { CommunicationClient } from './CommunicationClient';\nimport { PostMessagePairingRequest, PostMessagePairingResponse } from '@airgap/beacon-types';\nimport { KeyPair } from '@stablelib/ed25519';\n/**\n * @internalapi\n *\n *\n */\nexport declare abstract class MessageBasedClient extends CommunicationClient {\n protected readonly name: string;\n /**\n * The listeners that will be notified of new messages\n */\n protected abstract readonly activeListeners: Map;\n constructor(name: string, keyPair: KeyPair);\n /**\n * start the client and make sure all dependencies are ready\n */\n start(): Promise;\n /**\n * Get the pairing request information. This will be shared with the peer during the connection setup\n */\n getPairingRequestInfo(): Promise;\n /**\n * Get the pairing response information. This will be shared with the peer during the connection setup\n */\n getPairingResponseInfo(request: PostMessagePairingRequest): Promise;\n /**\n * Unsubscribe from encrypted messages from a specific peer\n *\n * @param senderPublicKey\n */\n unsubscribeFromEncryptedMessage(senderPublicKey: string): Promise;\n /**\n * Unsubscribe from all encrypted messages\n */\n unsubscribeFromEncryptedMessages(): Promise;\n /**\n * Decrypt a message from a specific peer\n *\n * @param senderPublicKey\n * @param payload\n */\n protected decryptMessage(senderPublicKey: string, payload: string): Promise;\n /**\n * Encrypt a message for a specific publicKey (receiver)\n *\n * @param recipientPublicKey\n * @param message\n */\n protected encryptMessage(recipientPublicKey: string, message: string): Promise;\n /**\n * Initialize the connection\n */\n abstract init(): Promise;\n}\n"},{name:"@airgap/beacon-core/transports/Transport.d.ts",dts:"import { TransportType, TransportStatus, PeerInfo, StorageKey, ConnectionContext } from '@airgap/beacon-types';\nimport { PeerManager } from '../managers/PeerManager';\nimport { CommunicationClient } from './clients/CommunicationClient';\nimport { ClientEvents } from './clients/ClientEvents';\n/**\n * @internalapi\n *\n *\n */\nexport declare abstract class Transport {\n /**\n * The type of the transport\n */\n readonly type: TransportType;\n /**\n * The name of the app\n */\n protected readonly name: string;\n /**\n * The status of the transport\n */\n protected _isConnected: TransportStatus;\n protected readonly peerManager: PeerManager;\n /**\n * The client handling the encryption/decryption of messages\n */\n protected client: S;\n /**\n * The listener that will be invoked when a new peer is connected\n */\n protected newPeerListener?: (peer: T) => void;\n setEventHandler(event: ClientEvents, fun: Function): void;\n /**\n * The listeners that will be notified when new messages are coming in\n */\n private listeners;\n /**\n * Return the status of the connection\n */\n get connectionStatus(): TransportStatus;\n constructor(name: string, client: S, peerManager: PeerManager);\n /**\n * Returns a promise that resolves to true if the transport is available, false if it is not\n */\n static isAvailable(): Promise;\n /**\n * Connect the transport\n */\n connect(): Promise;\n /**\n * Disconnect the transport\n */\n disconnect(): Promise;\n /**\n * Send a message through the transport\n *\n * @param message The message to send\n * @param recipient The recipient of the message\n */\n send(message: string, peer?: PeerInfo): Promise;\n /**\n * Add a listener to be called when a new message is received\n *\n * @param listener The listener that will be registered\n */\n addListener(listener: (message: unknown, connectionInfo: ConnectionContext) => void): Promise;\n /**\n * Remove a listener\n *\n * @param listener\n */\n removeListener(listener: (message: string, connectionInfo: ConnectionContext) => void): Promise;\n getPeers(): Promise;\n addPeer(newPeer: T, _sendPairingResponse?: boolean): Promise;\n removePeer(peerToBeRemoved: T): Promise;\n removeAllPeers(): Promise;\n /**\n * Notify the listeners when a new message comes in\n *\n * @param message Message\n * @param connectionInfo Context info about the connection\n */\n protected notifyListeners(message: unknown, connectionInfo: ConnectionContext): Promise;\n abstract listen(publicKey: string): Promise;\n}\n"},{name:"@airgap/beacon-core/utils/Logger.d.ts",dts:"export interface LoggerInterface {\n debug(method: string, ...args: any[]): void;\n log(method: string, ...args: any[]): void;\n warn(method: string, ...args: any[]): void;\n error(method: string, ...args: any[]): void;\n time(start: boolean, label?: string): void;\n timeLog(method: string, ...args: any[]): void;\n}\n/**\n * The logger that is used internally\n */\nexport declare class InternalLogger implements LoggerInterface {\n constructor();\n debug(name: string, method: string, ...args: any[]): void;\n log(name: string, method: string, ...args: any[]): void;\n warn(name: string, method: string, ...args: any[]): void;\n error(name: string, method: string, ...args: any[]): void;\n time(start: boolean, label?: string | undefined): void;\n timeLog(name: string, method: string, ...args: any[]): void;\n private _log;\n}\nexport declare class Logger implements LoggerInterface {\n private readonly name;\n constructor(service: string);\n debug(method: string, ...args: any[]): void;\n log(method: string, ...args: any[]): void;\n warn(method: string, ...args: any[]): void;\n error(method: string, ...args: any[]): void;\n time(start: boolean, label?: string | undefined): void;\n timeLog(method: string, ...args: any[]): void;\n}\nexport declare const setLogger: (newLogger: LoggerInterface) => void;\nexport declare const getLogger: () => LoggerInterface;\n"},{name:"@airgap/beacon-core/utils/assert-never.d.ts",dts:"/**\n * A helper function to make sure if/elses and switch/cases are exhaustive\n *\n * @param empty The data that has to be empty\n */\nexport declare function assertNever(empty: never): never;\n"},{name:"@airgap/beacon-core/utils/get-account-identifier.d.ts",dts:"import { Network } from '@airgap/beacon-types';\n/**\n * @internalapi\n *\n * Generate a deterministic account identifier based on an address and a network\n *\n * @param address\n * @param network\n */\nexport declare const getAccountIdentifier: (address: string, network: Network) => Promise;\n"},{name:"@airgap/beacon-core/utils/get-sender-id.d.ts",dts:"/**\n * @internalapi\n *\n * Generate a deterministic sender identifier based on a public key\n *\n * @param publicKey\n */\nexport declare const getSenderId: (publicKey: string) => Promise;\n"},{name:"@airgap/beacon-core/MockAnalytics.d.ts",dts:"import { AnalyticsInterface } from '@airgap/beacon-types';\nexport declare class MockAnalytics implements AnalyticsInterface {\n track(_trigger: 'click' | 'event', _section: string, _label: string, _data?: Record): void;\n}\n"},{name:"@airgap/beacon-core/MockWindow.d.ts",dts:"type Callback = (message: unknown) => void;\n/**\n * A mock for postmessage if run in node.js environment\n */\ndeclare let windowRef: {\n postMessage: (message: string | Record, _target?: string) => void;\n addEventListener: (_name: string, eventCallback: Callback) => void;\n removeEventListener: (_name: string, eventCallback: Callback) => void;\n location: {\n origin: string;\n };\n};\ndeclare const clearMockWindowState: () => void;\nexport { windowRef, clearMockWindowState };\n"},{name:"@airgap/beacon-core/Serializer.d.ts",dts:"/**\n * @internalapi\n *\n * The Serializer is used to serialize / deserialize JSON objects and encode them with bs58check\n */\nexport declare class Serializer {\n /**\n * Serialize and bs58check encode an object\n *\n * @param message JSON object to serialize\n */\n serialize(message: unknown): Promise;\n /**\n * Deserialize a bs58check encoded string\n *\n * @param encoded String to be deserialized\n */\n deserialize(encoded: string): Promise;\n}\n"},{name:"@airgap/beacon-core/constants.d.ts",dts:"export declare const SDK_VERSION: string;\nexport declare const BEACON_VERSION: string;\nexport declare const NOTIFICATION_ORACLE_URL: string;\n"},{name:"@airgap/beacon-core/debug.d.ts",dts:"export declare const setDebugEnabled: (enabled: boolean) => void;\nexport declare const getDebugEnabled: () => boolean;\n"},{name:"@airgap/beacon-core/index.d.ts",dts:"/**\n * General docs\n * @module public\n */\nimport { Client } from './clients/client/Client';\nimport { BeaconError } from './errors/BeaconError';\nimport { BroadcastBeaconError } from './errors/BroadcastBeaconError';\nimport { NetworkNotSupportedBeaconError } from './errors/NetworkNotSupportedBeaconError';\nimport { NoAddressBeaconError } from './errors/NoAddressBeaconError';\nimport { NoPrivateKeyBeaconError } from './errors/NoPrivateKeyBeaconError';\nimport { NotGrantedBeaconError } from './errors/NotGrantedBeaconError';\nimport { ParametersInvalidBeaconError } from './errors/ParametersInvalidBeaconError';\nimport { TooManyOperationsBeaconError } from './errors/TooManyOperationsBeaconError';\nimport { TransactionInvalidBeaconError } from './errors/TransactionInvalidBeaconError';\nimport { UnknownBeaconError } from './errors/UnknownBeaconError';\nimport { Transport } from './transports/Transport';\nimport { ChromeStorage } from './storage/ChromeStorage';\nimport { LocalStorage } from './storage/LocalStorage';\nimport { getStorage } from './storage/getStorage';\nimport { Serializer } from './Serializer';\nimport { ClientOptions } from './clients/client/ClientOptions';\nimport { SDK_VERSION, BEACON_VERSION } from './constants';\nimport { AccountManager } from './managers/AccountManager';\nimport { AppMetadataManager } from './managers/AppMetadataManager';\nimport { PermissionManager } from './managers/PermissionManager';\nimport { BeaconClient } from './clients/beacon-client/BeaconClient';\nimport { BeaconClientOptions } from './clients/beacon-client/BeaconClientOptions';\nimport { getAccountIdentifier } from './utils/get-account-identifier';\nimport { AbortedBeaconError } from './errors/AbortedBeaconError';\nimport { getSenderId } from './utils/get-sender-id';\nimport { PeerManager } from './managers/PeerManager';\nimport { MessageBasedClient } from './transports/clients/MessageBasedClient';\nimport { setDebugEnabled, getDebugEnabled } from './debug';\nimport { SignatureTypeNotSupportedBeaconError } from './errors/SignatureTypeNotSupportedBeaconError';\nimport { getLogger, Logger, setLogger } from './utils/Logger';\nimport { windowRef } from './MockWindow';\nimport { CommunicationClient } from './transports/clients/CommunicationClient';\nimport { ClientEvents } from './transports/clients/ClientEvents';\nimport { WCStorage } from './storage/WCStorage';\nimport { IndexedDBStorage } from './storage/IndexedDBStorage';\nimport { StorageValidator } from './storage/StorageValidator';\nexport { BeaconClient, BeaconClientOptions, Client, ClientOptions, ClientEvents };\nexport { BeaconError, AbortedBeaconError, BroadcastBeaconError, NetworkNotSupportedBeaconError, NoAddressBeaconError, NoPrivateKeyBeaconError, NotGrantedBeaconError, ParametersInvalidBeaconError, TooManyOperationsBeaconError, TransactionInvalidBeaconError, SignatureTypeNotSupportedBeaconError, UnknownBeaconError };\nexport { Transport, MessageBasedClient, CommunicationClient };\nexport { ChromeStorage, LocalStorage, WCStorage, IndexedDBStorage, StorageValidator, getStorage };\nexport { PeerManager, AccountManager, AppMetadataManager, PermissionManager };\nexport { SDK_VERSION, BEACON_VERSION };\nexport { getSenderId, getAccountIdentifier, windowRef };\nexport { Serializer, Logger, setLogger, getLogger };\nexport { setDebugEnabled, getDebugEnabled };\nexport { NOTIFICATION_ORACLE_URL } from './constants';\n"},{name:"@airgap/beacon-core/dist/esm/clients/beacon-client/BeaconClient.d.ts",dts:"import { ExposedPromise } from '@airgap/beacon-utils';\nimport { AnalyticsInterface, Storage } from '@airgap/beacon-types';\nimport { BeaconClientOptions } from './BeaconClientOptions';\nimport { KeyPair } from '@stablelib/ed25519';\n/**\n * @internalapi\n *\n * The beacon client is an abstract client that handles everything that is shared between all other clients.\n * Specifically, it handles managing the beaconId and and the local keypair.\n */\nexport declare abstract class BeaconClient {\n /**\n * The name of the client\n */\n readonly name: string;\n /**\n * The URL of the dApp Icon. This can be used to display the icon of the dApp on in the wallet\n */\n readonly iconUrl?: string;\n /**\n * The URL of the dApp.\n */\n readonly appUrl?: string;\n /** The beaconId is a public key that is used to identify one specific application (dapp or wallet).\n * This is used inside a message to specify the sender, for example.\n */\n protected _beaconId: ExposedPromise;\n get beaconId(): Promise;\n protected storage: Storage;\n protected analytics: AnalyticsInterface;\n /**\n * The local keypair that is used for the communication encryption\n */\n protected _keyPair: ExposedPromise;\n protected get keyPair(): Promise;\n constructor(config: BeaconClientOptions);\n /**\n * This resets the SDK. After using this method, this instance is no longer usable. You will have to instanciate a new client.\n */\n destroy(): Promise;\n /**\n * This method initializes the SDK by setting some values in the storage and generating a keypair.\n */\n private initSDK;\n /**\n * Removes all beacon values from the storage.\n */\n private removeBeaconEntriesFromStorage;\n /**\n * This method tries to load the seed from storage, if it doesn't exist, a new one will be created and persisted.\n */\n private loadOrCreateBeaconSecret;\n}\n"},{name:"@airgap/beacon-core/dist/esm/clients/beacon-client/BeaconClientOptions.d.ts",dts:"import { AnalyticsInterface, Storage } from '@airgap/beacon-types';\n/**\n * @internalapi\n */\nexport interface BeaconClientOptions {\n /**\n * Name of the application\n */\n name: string;\n /**\n * A URL to the icon of the application\n */\n iconUrl?: string;\n /**\n * A URL to the website of the application\n */\n appUrl?: string;\n /**\n * The storage that will be used by the SDK\n */\n storage: Storage;\n /**\n * The analytics instance that will be used by the SDK\n */\n analytics?: AnalyticsInterface;\n}\n"},{name:"@airgap/beacon-core/dist/esm/clients/client/Client.d.ts",dts:"import { ExposedPromise } from '@airgap/beacon-utils';\nimport { ConnectionContext, TransportType, TransportStatus, BeaconBaseMessage, AccountInfo, PeerInfo, AppMetadata, BeaconRequestMessage, BeaconMessageWrapper, NodeDistributions } from '@airgap/beacon-types';\nimport { Transport } from '../..';\nimport { BeaconClient } from '../beacon-client/BeaconClient';\nimport { AccountManager } from '../../managers/AccountManager';\nimport { ClientOptions } from './ClientOptions';\n/**\n * @internalapi\n *\n * This abstract class handles the a big part of the logic that is shared between the dapp and wallet client.\n * For example, it selects and manages the transport and accounts.\n */\nexport declare abstract class Client extends BeaconClient {\n protected readonly accountManager: AccountManager;\n protected handleResponse: (_event: BeaconRequestMessage | BeaconMessageWrapper, connectionInfo: ConnectionContext) => void;\n /**\n * How many requests can be sent after another\n */\n protected readonly rateLimit: number;\n /**\n * The time window in seconds in which the \"rateLimit\" is checked\n */\n protected readonly rateLimitWindowInSeconds: number;\n /**\n * Stores the times when requests have been made to determine if the rate limit has been reached\n */\n protected requestCounter: number[];\n protected readonly matrixNodes: NodeDistributions;\n private transportListeners;\n protected _transport: ExposedPromise>;\n protected get transport(): Promise>;\n /**\n * Returns the connection status of the Client\n */\n get connectionStatus(): TransportStatus;\n /**\n * Returns whether or not the transaport is ready\n */\n get ready(): Promise;\n constructor(config: ClientOptions);\n protected cleanup(): Promise;\n /**\n * Return all locally known accounts\n */\n getAccounts(): Promise;\n /**\n * Return the account by ID\n * @param accountIdentifier The ID of an account\n */\n getAccount(accountIdentifier: string): Promise;\n /**\n * Remove the account by ID\n * @param accountIdentifier The ID of an account\n */\n removeAccount(accountIdentifier: string): Promise;\n /**\n * Remove all locally stored accounts\n */\n removeAllAccounts(): Promise;\n /**\n * Add a new request (current timestamp) to the pending requests, remove old ones and check if we are above the limit\n */\n addRequestAndCheckIfRateLimited(): Promise;\n /**\n * This method initializes the client. It will check if the connection should be established to a\n * browser extension or if the P2P transport should be used.\n *\n * @param transport A transport that can be provided by the user\n */\n init(transport: Transport): Promise;\n /**\n * Returns the metadata of this DApp\n */\n getOwnAppMetadata(): Promise;\n /**\n * Return all known peers\n */\n getPeers(): Promise;\n /**\n * Add a new peer to the known peers\n * @param peer The new peer to add\n */\n addPeer(peer: PeerInfo): Promise;\n destroy(): Promise;\n /**\n * A \"setter\" for when the transport needs to be changed.\n */\n protected setTransport(transport?: Transport): Promise;\n protected addListener(transport: Transport): Promise;\n protected sendDisconnectToPeer(peer: PeerInfo, transport?: Transport): Promise;\n}\n"},{name:"@airgap/beacon-core/dist/esm/clients/client/ClientOptions.d.ts",dts:"import { Storage, NodeDistributions } from '@airgap/beacon-types';\n/**\n * @internalapi\n */\nexport interface ClientOptions {\n /**\n * Name of the application\n */\n name: string;\n /**\n * A URL to the icon of the application\n */\n iconUrl?: string;\n /**\n * A URL to the website of the application\n */\n appUrl?: string;\n /**\n * The storage that will be used by the SDK\n */\n storage: Storage;\n /**\n * Disable all default Events and UI elements. If passed together with \"eventHandlers\",\n * the default eventHandlers will be removed, and the ones passed by the user will be added.\n */\n disableDefaultEvents?: boolean;\n /**\n * A list of matrix nodes to connect to. If a non-empty array is passed, the default options will be overwritten.\n * One node will be randomly selected based on the local keypair and the other nodes will be used as a fallback in case the primary node goes down.\n *\n * Only provide the hostname, no https:// prefix. Eg. { [Regions.EU1]: ['matrix.example.com'] }\n */\n matrixNodes?: NodeDistributions;\n /**\n * Automatically switch between apps on Mobile Devices (Enabled by Default)\n */\n enableAppSwitching?: boolean;\n /**\n * Enable metrics tracking (Disabled by Default)\n */\n enableMetrics?: boolean;\n}\n"},{name:"@airgap/beacon-core/dist/esm/errors/AbortedBeaconError.d.ts",dts:"import { BeaconError } from '..';\n/**\n * @category Error\n */\nexport declare class AbortedBeaconError extends BeaconError {\n name: string;\n title: string;\n constructor();\n}\n"},{name:"@airgap/beacon-core/dist/esm/errors/BeaconError.d.ts",dts:"import { BeaconErrorType } from '@airgap/beacon-types';\n/**\n * @category Error\n */\nexport declare abstract class BeaconError implements Error {\n name: string;\n message: string;\n title: string;\n description: string;\n get fullDescription(): {\n description: string;\n data?: string;\n };\n constructor(errorType: BeaconErrorType, message: string);\n static getError(errorType: BeaconErrorType, errorData: unknown): BeaconError;\n}\n"},{name:"@airgap/beacon-core/dist/esm/errors/BroadcastBeaconError.d.ts",dts:"import { BeaconError } from '..';\n/**\n * @category Error\n */\nexport declare class BroadcastBeaconError extends BeaconError {\n name: string;\n title: string;\n constructor();\n}\n"},{name:"@airgap/beacon-core/dist/esm/errors/EncryptionTypeNotSupportedBeaconError.d.ts",dts:"/**\n * @category Error\n */\n"},{name:"@airgap/beacon-core/dist/esm/errors/NetworkNotSupportedBeaconError.d.ts",dts:"import { BeaconError } from '..';\n/**\n * @category Error\n */\nexport declare class NetworkNotSupportedBeaconError extends BeaconError {\n name: string;\n title: string;\n constructor();\n}\n"},{name:"@airgap/beacon-core/dist/esm/errors/NoAddressBeaconError.d.ts",dts:"import { BeaconError } from '..';\n/**\n * @category Error\n */\nexport declare class NoAddressBeaconError extends BeaconError {\n name: string;\n title: string;\n constructor();\n}\n"},{name:"@airgap/beacon-core/dist/esm/errors/NoPrivateKeyBeaconError.d.ts",dts:"import { BeaconError } from '..';\n/**\n * @category Error\n */\nexport declare class NoPrivateKeyBeaconError extends BeaconError {\n name: string;\n title: string;\n constructor();\n}\n"},{name:"@airgap/beacon-core/dist/esm/errors/NotGrantedBeaconError.d.ts",dts:"import { BeaconError } from '..';\n/**\n * @category Error\n */\nexport declare class NotGrantedBeaconError extends BeaconError {\n name: string;\n title: string;\n constructor();\n}\n"},{name:"@airgap/beacon-core/dist/esm/errors/ParametersInvalidBeaconError.d.ts",dts:"import { BeaconError } from '..';\n/**\n * @category Error\n */\nexport declare class ParametersInvalidBeaconError extends BeaconError {\n name: string;\n title: string;\n constructor();\n}\n"},{name:"@airgap/beacon-core/dist/esm/errors/SignatureTypeNotSupportedBeaconError.d.ts",dts:"import { BeaconError } from '..';\n/**\n * @category Error\n */\nexport declare class SignatureTypeNotSupportedBeaconError extends BeaconError {\n name: string;\n title: string;\n constructor();\n}\n"},{name:"@airgap/beacon-core/dist/esm/errors/TooManyOperationsBeaconError.d.ts",dts:"import { BeaconError } from '..';\n/**\n * @category Error\n */\nexport declare class TooManyOperationsBeaconError extends BeaconError {\n name: string;\n title: string;\n constructor();\n}\n"},{name:"@airgap/beacon-core/dist/esm/errors/TransactionInvalidBeaconError.d.ts",dts:"import { BeaconError } from '..';\n/**\n * @category Error\n */\nexport declare class TransactionInvalidBeaconError extends BeaconError {\n readonly data: unknown;\n name: string;\n title: string;\n get fullDescription(): {\n description: string;\n data?: string;\n };\n constructor(data: unknown);\n}\n"},{name:"@airgap/beacon-core/dist/esm/errors/UnknownBeaconError.d.ts",dts:"import { BeaconError } from '..';\n/**\n * @category Error\n */\nexport declare class UnknownBeaconError extends BeaconError {\n name: string;\n title: string;\n constructor();\n}\n"},{name:"@airgap/beacon-core/dist/esm/managers/AccountManager.d.ts",dts:"import { Storage, AccountInfo, BeaconMessage } from '@airgap/beacon-types';\n/**\n * @internalapi\n *\n * The AccountManager provides CRUD functionality for account entities and persists them to the provided storage.\n */\nexport declare class AccountManager {\n private readonly storageManager;\n constructor(storage: Storage);\n getAccounts(): Promise;\n getAccount(accountIdentifier: string): Promise;\n addAccount(accountInfo: AccountInfo): Promise;\n updateAccount(accountIdentifier: string, accountInfo: Partial): Promise;\n removeAccount(accountIdentifier: string): Promise;\n removeAccounts(accountIdentifiers: string[]): Promise;\n removeAllAccounts(): Promise;\n hasPermission(message: BeaconMessage): Promise;\n}\n"},{name:"@airgap/beacon-core/dist/esm/managers/AppMetadataManager.d.ts",dts:"import { Storage, AppMetadata } from '@airgap/beacon-types';\n/**\n * @internalapi\n *\n * The AppMetadataManager provides CRUD functionality for app-metadata entities and persists them to the provided storage.\n */\nexport declare class AppMetadataManager {\n private readonly storageManager;\n constructor(storage: Storage);\n getAppMetadataList(): Promise;\n getAppMetadata(senderId: string): Promise;\n addAppMetadata(appMetadata: AppMetadata): Promise;\n removeAppMetadata(senderId: string): Promise;\n removeAppMetadatas(senderIds: string[]): Promise;\n removeAllAppMetadata(): Promise;\n}\n"},{name:"@airgap/beacon-core/dist/esm/managers/PeerManager.d.ts",dts:"import { Storage, StorageKey, StorageKeyReturnType } from '@airgap/beacon-types';\nimport { ArrayElem } from './StorageManager';\n/**\n * @internalapi\n *\n * The PeerManager provides CRUD functionality for peer entities and persists them to the provided storage.\n */\nexport declare class PeerManager {\n private readonly storageManager;\n constructor(storage: Storage, key: T);\n hasPeer(publicKey: string): Promise;\n getPeers(): Promise;\n getPeer(publicKey: string): Promise | undefined>;\n addPeer(peerInfo: ArrayElem): Promise;\n removePeer(publicKey: string): Promise;\n removePeers(publicKeys: string[]): Promise;\n removeAllPeers(): Promise;\n}\n"},{name:"@airgap/beacon-core/dist/esm/managers/PermissionManager.d.ts",dts:"import { BeaconMessage, Storage, PermissionInfo } from '@airgap/beacon-types';\n/**\n * @internalapi\n *\n * The PermissionManager provides CRUD functionality for permission entities and persists them to the provided storage.\n */\nexport declare class PermissionManager {\n private readonly storageManager;\n constructor(storage: Storage);\n getPermissions(): Promise;\n getPermission(accountIdentifier: string): Promise;\n addPermission(permissionInfo: PermissionInfo): Promise;\n removePermission(accountIdentifier: string): Promise;\n removePermissions(accountIdentifiers: string[]): Promise;\n removeAllPermissions(): Promise;\n hasPermission(message: BeaconMessage): Promise;\n}\n"},{name:"@airgap/beacon-core/dist/esm/managers/PermissionValidator.d.ts",dts:"import { BeaconMessage, PermissionEntity } from '@airgap/beacon-types';\n/**\n * @internalapi\n *\n * The PermissionValidator is used to check if permissions for a certain message type have been given\n */\nexport declare class PermissionValidator {\n /**\n * Check if permissions were given for a certain message type.\n *\n * PermissionRequest and BroadcastRequest will always return true.\n *\n * @param message Beacon Message\n */\n static hasPermission(message: BeaconMessage, getOne: (id: string) => Promise, getAll: () => Promise): Promise;\n}\n"},{name:"@airgap/beacon-core/dist/esm/managers/StorageManager.d.ts",dts:"import { StorageKey, Storage, StorageKeyReturnType } from '@airgap/beacon-types';\n/** Type workaround for https://github.com/Microsoft/TypeScript/issues/7294#issuecomment-465794460 */\nexport type ArrayElem = A extends (infer Elem)[] ? Elem : never;\n/**\n * @internalapi\n *\n * The StorageManager provides CRUD functionality for specific entities and persists them to the provided storage.\n */\nexport declare class StorageManager {\n private readonly storage;\n private readonly storageKey;\n constructor(storage: Storage, storageKey: T);\n getAll(): Promise;\n getOne(predicate: (element: ArrayElem) => boolean): Promise | undefined>;\n addOne(element: ArrayElem, predicate: (element: ArrayElem) => boolean, overwrite?: boolean): Promise;\n remove(predicate: (element: ArrayElem) => boolean): Promise;\n removeAll(): Promise;\n}\n"},{name:"@airgap/beacon-core/dist/esm/migrations/migrate-0.7.0.d.ts",dts:"import { PermissionScope, AccountIdentifier, Origin, Network } from '@airgap/beacon-types';\nexport interface AccountInfoOld {\n accountIdentifier: AccountIdentifier;\n beaconId: string;\n origin: {\n type: Origin;\n id: string;\n };\n address: string;\n pubkey: string;\n network: Network;\n scopes: PermissionScope[];\n connectedAt: Date;\n}\nexport interface P2PPairingRequestOld {\n name: string;\n pubKey: string;\n relayServer: string;\n}\nexport declare const migrate_0_7_0: (storage: Storage) => Promise;\n"},{name:"@airgap/beacon-core/dist/esm/migrations/migrations.d.ts",dts:"import { Storage } from '@airgap/beacon-types';\nexport declare const migrate: (storage: Storage) => Promise;\n"},{name:"@airgap/beacon-core/dist/esm/storage/ChromeStorage.d.ts",dts:"import { Storage, StorageKey, StorageKeyReturnType } from '@airgap/beacon-types';\n/**\n * @internalapi\n *\n * A storage that can be used in chrome extensions\n */\nexport declare class ChromeStorage implements Storage {\n static isSupported(): Promise;\n get(key: K): Promise;\n set(key: K, value: StorageKeyReturnType[K]): Promise;\n delete(key: K): Promise;\n subscribeToStorageChanged(_callback: (arg: {\n eventType: 'storageCleared' | 'entryModified';\n key: string | null;\n oldValue: string | null;\n newValue: string | null;\n }) => {}): Promise;\n getPrefixedKey(key: string): string;\n}\n"},{name:"@airgap/beacon-core/dist/esm/storage/IndexedDBStorage.d.ts",dts:"import { Storage, StorageKey, StorageKeyReturnType } from '@airgap/beacon-types';\nexport declare class IndexedDBStorage extends Storage {\n private readonly dbName;\n private readonly storeName;\n private db;\n private isSupported;\n constructor(dbName?: string, storeName?: string);\n private isIndexedDBSupported;\n private initDB;\n private transaction;\n get(key: K): Promise;\n set(key: K, value: StorageKeyReturnType[K]): Promise;\n delete(key: K): Promise;\n getAll(): Promise;\n getAllKeys(): Promise;\n clearStore(): Promise;\n getPrefixedKey(key: K): string;\n subscribeToStorageChanged(callback: (arg: {\n eventType: 'storageCleared' | 'entryModified';\n key: string | null;\n oldValue: string | null;\n newValue: string | null;\n }) => {}): Promise;\n /**\n * it copies over all key value pairs from a source store into a target one\n * @param targetDBName the name of the target DB\n * @param targetStoreName the name of the target store\n * @param skipKeys all the keys to ignore\n */\n fillStore(targetDBName: string, targetStoreName: string, skipKeys?: string[]): Promise;\n}\n"},{name:"@airgap/beacon-core/dist/esm/storage/LocalStorage.d.ts",dts:"import { Storage, StorageKey, StorageKeyReturnType } from '@airgap/beacon-types';\n/**\n * @internalapi\n *\n * A storage that can be used in the browser\n */\nexport declare class LocalStorage extends Storage {\n private readonly prefix?;\n constructor(prefix?: string | undefined);\n static isSupported(): Promise;\n get(key: K): Promise;\n set(key: K, value: StorageKeyReturnType[K]): Promise;\n delete(key: K): Promise;\n subscribeToStorageChanged(callback: (arg: {\n eventType: 'storageCleared' | 'entryModified';\n key: string | null;\n oldValue: string | null;\n newValue: string | null;\n }) => {}): Promise;\n getPrefixedKey(key: string): string;\n}\n"},{name:"@airgap/beacon-core/dist/esm/storage/StorageValidator.d.ts",dts:"import { Storage } from '@airgap/beacon-types';\nexport declare class StorageValidator {\n private readonly storage;\n constructor(storage: Storage);\n private validateNumber;\n private validateText;\n private validateBoolean;\n private validateArray;\n private objHasProperty;\n private innerValidate;\n validate(): Promise;\n}\n"},{name:"@airgap/beacon-core/dist/esm/storage/WCStorage.d.ts",dts:"export declare class WCStorage {\n private readonly localStorage;\n private readonly indexedDB;\n private channel;\n onMessageHandler: ((type: string) => void) | undefined;\n onErrorHandler: ((data: any) => void) | undefined;\n constructor();\n private onMessage;\n private onError;\n notify(type: string): void;\n hasPairings(): Promise;\n hasSessions(): Promise;\n backup(): void;\n resetState(): Promise;\n}\n"},{name:"@airgap/beacon-core/dist/esm/storage/getStorage.d.ts",dts:"import { Storage } from '@airgap/beacon-types';\n/**\n * Get a supported storage on this platform\n */\nexport declare const getStorage: () => Promise;\n"},{name:"@airgap/beacon-core/dist/esm/transports/clients/ClientEvents.d.ts",dts:'export declare const enum ClientEvents {\n CLOSE_ALERT = "CLOSE_ALERT",\n RESET_STATE = "RESET_STATE",\n WC_ACK_NOTIFICATION = "WC_ACK_NOTIFICATION"\n}\n'},{name:"@airgap/beacon-core/dist/esm/transports/clients/CommunicationClient.d.ts",dts:"import { PeerInfoType } from '@airgap/beacon-types';\nimport { KeyPair } from '@stablelib/ed25519';\nimport { SessionKeys } from '@stablelib/x25519-session';\nimport { ClientEvents } from './ClientEvents';\n/**\n * @internalapi\n *\n *\n */\nexport declare abstract class CommunicationClient {\n protected readonly keyPair?: KeyPair | undefined;\n constructor(keyPair?: KeyPair | undefined);\n eventHandlers: Map;\n protected isMobileOS: () => boolean;\n /**\n * Get the public key\n */\n getPublicKey(): Promise;\n /**\n * get the public key hash\n */\n getPublicKeyHash(): Promise;\n /**\n * Create a cryptobox server\n *\n * @param otherPublicKey\n * @param selfKeypair\n */\n protected createCryptoBoxServer(otherPublicKey: string, selfKeypair: KeyPair): Promise;\n /**\n * Create a cryptobox client\n *\n * @param otherPublicKey\n * @param selfKeypair\n */\n protected createCryptoBoxClient(otherPublicKey: string, selfKeypair: KeyPair): Promise;\n /**\n * Encrypt a message for a specific publicKey (receiver, asymmetric)\n *\n * @param recipientPublicKey\n * @param message\n */\n protected encryptMessageAsymmetric(recipientPublicKey: string, message: string): Promise;\n abstract unsubscribeFromEncryptedMessages(): Promise;\n abstract unsubscribeFromEncryptedMessage(senderPublicKey: string): Promise;\n abstract sendMessage(message: string, peer?: PeerInfoType): Promise;\n}\n"},{name:"@airgap/beacon-core/dist/esm/transports/clients/MessageBasedClient.d.ts",dts:"import { CommunicationClient } from './CommunicationClient';\nimport { PostMessagePairingRequest, PostMessagePairingResponse } from '@airgap/beacon-types';\nimport { KeyPair } from '@stablelib/ed25519';\n/**\n * @internalapi\n *\n *\n */\nexport declare abstract class MessageBasedClient extends CommunicationClient {\n protected readonly name: string;\n /**\n * The listeners that will be notified of new messages\n */\n protected abstract readonly activeListeners: Map;\n constructor(name: string, keyPair: KeyPair);\n /**\n * start the client and make sure all dependencies are ready\n */\n start(): Promise;\n /**\n * Get the pairing request information. This will be shared with the peer during the connection setup\n */\n getPairingRequestInfo(): Promise;\n /**\n * Get the pairing response information. This will be shared with the peer during the connection setup\n */\n getPairingResponseInfo(request: PostMessagePairingRequest): Promise;\n /**\n * Unsubscribe from encrypted messages from a specific peer\n *\n * @param senderPublicKey\n */\n unsubscribeFromEncryptedMessage(senderPublicKey: string): Promise;\n /**\n * Unsubscribe from all encrypted messages\n */\n unsubscribeFromEncryptedMessages(): Promise;\n /**\n * Decrypt a message from a specific peer\n *\n * @param senderPublicKey\n * @param payload\n */\n protected decryptMessage(senderPublicKey: string, payload: string): Promise;\n /**\n * Encrypt a message for a specific publicKey (receiver)\n *\n * @param recipientPublicKey\n * @param message\n */\n protected encryptMessage(recipientPublicKey: string, message: string): Promise;\n /**\n * Initialize the connection\n */\n abstract init(): Promise;\n}\n"},{name:"@airgap/beacon-core/dist/esm/transports/Transport.d.ts",dts:"import { TransportType, TransportStatus, PeerInfo, StorageKey, ConnectionContext } from '@airgap/beacon-types';\nimport { PeerManager } from '../managers/PeerManager';\nimport { CommunicationClient } from './clients/CommunicationClient';\nimport { ClientEvents } from './clients/ClientEvents';\n/**\n * @internalapi\n *\n *\n */\nexport declare abstract class Transport {\n /**\n * The type of the transport\n */\n readonly type: TransportType;\n /**\n * The name of the app\n */\n protected readonly name: string;\n /**\n * The status of the transport\n */\n protected _isConnected: TransportStatus;\n protected readonly peerManager: PeerManager;\n /**\n * The client handling the encryption/decryption of messages\n */\n protected client: S;\n /**\n * The listener that will be invoked when a new peer is connected\n */\n protected newPeerListener?: (peer: T) => void;\n setEventHandler(event: ClientEvents, fun: Function): void;\n /**\n * The listeners that will be notified when new messages are coming in\n */\n private listeners;\n /**\n * Return the status of the connection\n */\n get connectionStatus(): TransportStatus;\n constructor(name: string, client: S, peerManager: PeerManager);\n /**\n * Returns a promise that resolves to true if the transport is available, false if it is not\n */\n static isAvailable(): Promise;\n /**\n * Connect the transport\n */\n connect(): Promise;\n /**\n * Disconnect the transport\n */\n disconnect(): Promise;\n /**\n * Send a message through the transport\n *\n * @param message The message to send\n * @param recipient The recipient of the message\n */\n send(message: string, peer?: PeerInfo): Promise;\n /**\n * Add a listener to be called when a new message is received\n *\n * @param listener The listener that will be registered\n */\n addListener(listener: (message: unknown, connectionInfo: ConnectionContext) => void): Promise;\n /**\n * Remove a listener\n *\n * @param listener\n */\n removeListener(listener: (message: string, connectionInfo: ConnectionContext) => void): Promise;\n getPeers(): Promise;\n addPeer(newPeer: T, _sendPairingResponse?: boolean): Promise;\n removePeer(peerToBeRemoved: T): Promise;\n removeAllPeers(): Promise;\n /**\n * Notify the listeners when a new message comes in\n *\n * @param message Message\n * @param connectionInfo Context info about the connection\n */\n protected notifyListeners(message: unknown, connectionInfo: ConnectionContext): Promise;\n abstract listen(publicKey: string): Promise;\n}\n"},{name:"@airgap/beacon-core/dist/esm/utils/Logger.d.ts",dts:"export interface LoggerInterface {\n debug(method: string, ...args: any[]): void;\n log(method: string, ...args: any[]): void;\n warn(method: string, ...args: any[]): void;\n error(method: string, ...args: any[]): void;\n time(start: boolean, label?: string): void;\n timeLog(method: string, ...args: any[]): void;\n}\n/**\n * The logger that is used internally\n */\nexport declare class InternalLogger implements LoggerInterface {\n constructor();\n debug(name: string, method: string, ...args: any[]): void;\n log(name: string, method: string, ...args: any[]): void;\n warn(name: string, method: string, ...args: any[]): void;\n error(name: string, method: string, ...args: any[]): void;\n time(start: boolean, label?: string | undefined): void;\n timeLog(name: string, method: string, ...args: any[]): void;\n private _log;\n}\nexport declare class Logger implements LoggerInterface {\n private readonly name;\n constructor(service: string);\n debug(method: string, ...args: any[]): void;\n log(method: string, ...args: any[]): void;\n warn(method: string, ...args: any[]): void;\n error(method: string, ...args: any[]): void;\n time(start: boolean, label?: string | undefined): void;\n timeLog(method: string, ...args: any[]): void;\n}\nexport declare const setLogger: (newLogger: LoggerInterface) => void;\nexport declare const getLogger: () => LoggerInterface;\n"},{name:"@airgap/beacon-core/dist/esm/utils/assert-never.d.ts",dts:"/**\n * A helper function to make sure if/elses and switch/cases are exhaustive\n *\n * @param empty The data that has to be empty\n */\nexport declare function assertNever(empty: never): never;\n"},{name:"@airgap/beacon-core/dist/esm/utils/get-account-identifier.d.ts",dts:"import { Network } from '@airgap/beacon-types';\n/**\n * @internalapi\n *\n * Generate a deterministic account identifier based on an address and a network\n *\n * @param address\n * @param network\n */\nexport declare const getAccountIdentifier: (address: string, network: Network) => Promise;\n"},{name:"@airgap/beacon-core/dist/esm/utils/get-sender-id.d.ts",dts:"/**\n * @internalapi\n *\n * Generate a deterministic sender identifier based on a public key\n *\n * @param publicKey\n */\nexport declare const getSenderId: (publicKey: string) => Promise;\n"},{name:"@airgap/beacon-core/dist/esm/MockAnalytics.d.ts",dts:"import { AnalyticsInterface } from '@airgap/beacon-types';\nexport declare class MockAnalytics implements AnalyticsInterface {\n track(_trigger: 'click' | 'event', _section: string, _label: string, _data?: Record): void;\n}\n"},{name:"@airgap/beacon-core/dist/esm/MockWindow.d.ts",dts:"type Callback = (message: unknown) => void;\n/**\n * A mock for postmessage if run in node.js environment\n */\ndeclare let windowRef: {\n postMessage: (message: string | Record, _target?: string) => void;\n addEventListener: (_name: string, eventCallback: Callback) => void;\n removeEventListener: (_name: string, eventCallback: Callback) => void;\n location: {\n origin: string;\n };\n};\ndeclare const clearMockWindowState: () => void;\nexport { windowRef, clearMockWindowState };\n"},{name:"@airgap/beacon-core/dist/esm/Serializer.d.ts",dts:"/**\n * @internalapi\n *\n * The Serializer is used to serialize / deserialize JSON objects and encode them with bs58check\n */\nexport declare class Serializer {\n /**\n * Serialize and bs58check encode an object\n *\n * @param message JSON object to serialize\n */\n serialize(message: unknown): Promise;\n /**\n * Deserialize a bs58check encoded string\n *\n * @param encoded String to be deserialized\n */\n deserialize(encoded: string): Promise;\n}\n"},{name:"@airgap/beacon-core/dist/esm/constants.d.ts",dts:"export declare const SDK_VERSION: string;\nexport declare const BEACON_VERSION: string;\nexport declare const NOTIFICATION_ORACLE_URL: string;\n"},{name:"@airgap/beacon-core/dist/esm/debug.d.ts",dts:"export declare const setDebugEnabled: (enabled: boolean) => void;\nexport declare const getDebugEnabled: () => boolean;\n"},{name:"@airgap/beacon-core/dist/esm/index.d.ts",dts:"/**\n * General docs\n * @module public\n */\nimport { Client } from './clients/client/Client';\nimport { BeaconError } from './errors/BeaconError';\nimport { BroadcastBeaconError } from './errors/BroadcastBeaconError';\nimport { NetworkNotSupportedBeaconError } from './errors/NetworkNotSupportedBeaconError';\nimport { NoAddressBeaconError } from './errors/NoAddressBeaconError';\nimport { NoPrivateKeyBeaconError } from './errors/NoPrivateKeyBeaconError';\nimport { NotGrantedBeaconError } from './errors/NotGrantedBeaconError';\nimport { ParametersInvalidBeaconError } from './errors/ParametersInvalidBeaconError';\nimport { TooManyOperationsBeaconError } from './errors/TooManyOperationsBeaconError';\nimport { TransactionInvalidBeaconError } from './errors/TransactionInvalidBeaconError';\nimport { UnknownBeaconError } from './errors/UnknownBeaconError';\nimport { Transport } from './transports/Transport';\nimport { ChromeStorage } from './storage/ChromeStorage';\nimport { LocalStorage } from './storage/LocalStorage';\nimport { getStorage } from './storage/getStorage';\nimport { Serializer } from './Serializer';\nimport { ClientOptions } from './clients/client/ClientOptions';\nimport { SDK_VERSION, BEACON_VERSION } from './constants';\nimport { AccountManager } from './managers/AccountManager';\nimport { AppMetadataManager } from './managers/AppMetadataManager';\nimport { PermissionManager } from './managers/PermissionManager';\nimport { BeaconClient } from './clients/beacon-client/BeaconClient';\nimport { BeaconClientOptions } from './clients/beacon-client/BeaconClientOptions';\nimport { getAccountIdentifier } from './utils/get-account-identifier';\nimport { AbortedBeaconError } from './errors/AbortedBeaconError';\nimport { getSenderId } from './utils/get-sender-id';\nimport { PeerManager } from './managers/PeerManager';\nimport { MessageBasedClient } from './transports/clients/MessageBasedClient';\nimport { setDebugEnabled, getDebugEnabled } from './debug';\nimport { SignatureTypeNotSupportedBeaconError } from './errors/SignatureTypeNotSupportedBeaconError';\nimport { getLogger, Logger, setLogger } from './utils/Logger';\nimport { windowRef } from './MockWindow';\nimport { CommunicationClient } from './transports/clients/CommunicationClient';\nimport { ClientEvents } from './transports/clients/ClientEvents';\nimport { WCStorage } from './storage/WCStorage';\nimport { IndexedDBStorage } from './storage/IndexedDBStorage';\nimport { StorageValidator } from './storage/StorageValidator';\nexport { BeaconClient, BeaconClientOptions, Client, ClientOptions, ClientEvents };\nexport { BeaconError, AbortedBeaconError, BroadcastBeaconError, NetworkNotSupportedBeaconError, NoAddressBeaconError, NoPrivateKeyBeaconError, NotGrantedBeaconError, ParametersInvalidBeaconError, TooManyOperationsBeaconError, TransactionInvalidBeaconError, SignatureTypeNotSupportedBeaconError, UnknownBeaconError };\nexport { Transport, MessageBasedClient, CommunicationClient };\nexport { ChromeStorage, LocalStorage, WCStorage, IndexedDBStorage, StorageValidator, getStorage };\nexport { PeerManager, AccountManager, AppMetadataManager, PermissionManager };\nexport { SDK_VERSION, BEACON_VERSION };\nexport { getSenderId, getAccountIdentifier, windowRef };\nexport { Serializer, Logger, setLogger, getLogger };\nexport { setDebugEnabled, getDebugEnabled };\nexport { NOTIFICATION_ORACLE_URL } from './constants';\n"},{name:"@airgap/beacon-dapp/dapp-client/DAppClient.d.ts",dts:"import { BeaconEvent, BeaconEventHandlerFunction, BeaconEventType } from '../events';\nimport { AccountInfo, TransportType, BeaconMessageType, RequestPermissionInput, RequestSignPayloadInput, RequestOperationInput, RequestBroadcastInput, PermissionResponseOutput, SignPayloadResponseOutput, OperationResponseOutput, BroadcastResponseOutput, Network, AppMetadata, ExtendedPeerInfo, ColorMode, Blockchain, BlockchainRequestV3, BlockchainResponseV3, PermissionRequestV3, PermissionResponseV3, ProofOfEventChallengeResponse, RequestProofOfEventChallengeInput, PeerInfoType, SimulatedProofOfEventChallengeResponse, RequestSimulatedProofOfEventChallengeInput } from '@airgap/beacon-types';\nimport { Client, Transport } from '@airgap/beacon-core';\nimport { BlockExplorer } from '../utils/block-explorer';\nimport { DAppClientOptions } from './DAppClientOptions';\nimport { BeaconEventHandler } from '@airgap/beacon-dapp';\nimport { DappPostMessageTransport } from '../transports/DappPostMessageTransport';\nimport { DappP2PTransport } from '../transports/DappP2PTransport';\nimport { DappWalletConnectTransport } from '../transports/DappWalletConnectTransport';\n/**\n * @publicapi\n *\n * The DAppClient has to be used in decentralized applications. It handles all the logic related to connecting to beacon-compatible\n * wallets and sending requests.\n *\n * @category DApp\n */\nexport declare class DAppClient extends Client {\n /**\n * The description of the app\n */\n readonly description?: string;\n /**\n * The block explorer used by the SDK\n */\n readonly blockExplorer: BlockExplorer;\n /**\n * Automatically switch between apps on Mobile Devices (Enabled by Default)\n */\n private enableAppSwitching;\n /**\n * Enable metrics tracking (Disabled by Default)\n */\n private enableMetrics?;\n private userId?;\n network: Network;\n protected readonly events: BeaconEventHandler;\n protected postMessageTransport: DappPostMessageTransport | undefined;\n protected p2pTransport: DappP2PTransport | undefined;\n protected walletConnectTransport: DappWalletConnectTransport | undefined;\n protected wcProjectId?: string;\n protected wcRelayUrl?: string;\n private isGetActiveAccountHandled;\n /**\n * A map of requests that are currently \"open\", meaning we have sent them to a wallet and are still awaiting a response.\n */\n private readonly openRequests;\n /**\n * The currently active account. For all requests that are associated to a specific request (operation request, signing request),\n * the active account is used to determine the network and destination wallet\n */\n private _activeAccount;\n /**\n * The currently active peer. This is used to address a peer in case the active account is not set. (Eg. for permission requests)\n */\n private _activePeer;\n private _initPromise;\n private isInitPending;\n private readonly activeAccountLoaded;\n private readonly appMetadataManager;\n private readonly disclaimerText?;\n private readonly errorMessages;\n private readonly featuredWallets;\n private readonly storageValidator;\n private readonly bugReportStorage;\n private debounceEventResponse;\n private debounceSetActiveAccount;\n constructor(config: DAppClientOptions);\n private createStateSnapshot;\n private initUserID;\n initInternalTransports(): Promise;\n private initEvents;\n private wcToastHandler;\n private channelClosedHandler;\n /**\n * Destroy the instance.\n *\n * WARNING: Call `destroy` whenever you no longer need dAppClient\n * as it frees internal subscriptions to the transport and therefore the instance may no longer work properly.\n * If you wish to disconnect your dApp, use `disconnect` instead.\n */\n destroy(): Promise;\n init(transport?: Transport): Promise;\n /**\n * Returns the active account\n */\n getActiveAccount(): Promise;\n private isInvalidState;\n private resetInvalidState;\n /**\n * Sets the active account\n *\n * @param account The account that will be set as the active account\n */\n setActiveAccount(account?: AccountInfo): Promise;\n /**\n * Clear the active account\n */\n clearActiveAccount(): Promise;\n setColorMode(colorMode: ColorMode): Promise;\n getColorMode(): Promise;\n /**\n * @deprecated\n *\n * Use getOwnAppMetadata instead\n */\n getAppMetadata(): Promise;\n showPrepare(): Promise;\n hideUI(elements: ('alert' | 'toast')[]): Promise;\n private tryToAppSwitch;\n private addQueryParam;\n private buildPayload;\n private sendMetrics;\n /**\n * Will remove the account from the local storage and set a new active account if necessary.\n *\n * @param accountIdentifier ID of the account\n */\n removeAccount(accountIdentifier: string): Promise;\n /**\n * Remove all accounts and set active account to undefined\n */\n removeAllAccounts(): Promise;\n /**\n * Removes a peer and all the accounts that have been connected through that peer\n *\n * @param peer Peer to be removed\n */\n removePeer(peer: ExtendedPeerInfo, sendDisconnectToPeer?: boolean): Promise;\n /**\n * Remove all peers and all accounts that have been connected through those peers\n */\n removeAllPeers(sendDisconnectToPeers?: boolean): Promise;\n /**\n * Allows the user to subscribe to specific events that are fired in the SDK\n *\n * @param internalEvent The event to subscribe to\n * @param eventCallback The callback that will be called when the event occurs\n */\n subscribeToEvent(internalEvent: K, eventCallback: BeaconEventHandlerFunction): Promise;\n /**\n * Check if we have permissions to send the specific message type to the active account.\n * If no active account is set, only permission requests are allowed.\n *\n * @param type The type of the message\n */\n checkPermissions(type: BeaconMessageType): Promise;\n sendNotification(title: string, message: string, payload: string, protocolIdentifier: string): Promise;\n private blockchains;\n addBlockchain(chain: Blockchain): void;\n removeBlockchain(chainIdentifier: string): void;\n permissionRequest(input: PermissionRequestV3): Promise>;\n request(input: BlockchainRequestV3): Promise>;\n /**\n * Send a permission request to the DApp. This should be done as the first step. The wallet will respond\n * with an publicKey and permissions that were given. The account returned will be set as the \"activeAccount\"\n * and will be used for the following requests.\n *\n * @param input The message details we need to prepare the PermissionRequest message.\n */\n requestPermissions(input?: RequestPermissionInput): Promise;\n /**\n * Send a proof of event request to the wallet. The wallet will either accept or decline the challenge.\n * If it is accepted, the challenge will be stored, meaning that even if the user refresh the page, the DAppClient will keep checking if the challenge has been fulfilled.\n * Once the challenge is stored, a challenge stored message will be sent to the wallet.\n * It's **highly recommended** to run a proof of event challenge to check the identity of an abstracted account\n *\n * @param input The message details we need to prepare the ProofOfEventChallenge message.\n */\n requestProofOfEventChallenge(input: RequestProofOfEventChallengeInput): Promise;\n /**\n * Send a simulated proof of event request to the wallet. The wallet will either accept or decline the challenge.\n * It's the same than `requestProofOfEventChallenge` but rather than executing operations on the blockchain to prove the identity,\n * The wallet will return a list of operations that you'll be able to run on your side to verify the identity of the abstracted account\n * It's **highly recommended** to run a proof of event challenge to check the identity of an abstracted account\n *\n * @param input The message details we need to prepare the SimulatedProofOfEventChallenge message.\n */\n requestSimulatedProofOfEventChallenge(input: RequestSimulatedProofOfEventChallengeInput): Promise;\n /**\n * This method will send a \"SignPayloadRequest\" to the wallet. This method is meant to be used to sign\n * arbitrary data (eg. a string). It will return the signature in the format of \"edsig...\"\n *\n * @param input The message details we need to prepare the SignPayloadRequest message.\n */\n requestSignPayload(input: RequestSignPayloadInput): Promise;\n /**\n * This method will send an \"EncryptPayloadRequest\" to the wallet. This method is meant to be used to encrypt or decrypt\n * arbitrary data (eg. a string). It will return the encrypted or decrypted payload\n *\n * @param input The message details we need to prepare the EncryptPayloadRequest message.\n */\n /**\n * This method sends an OperationRequest to the wallet. This method should be used for all kinds of operations,\n * eg. transaction or delegation. Not all properties have to be provided. Data like \"counter\" and fees will be\n * fetched and calculated by the wallet (but they can still be provided if required).\n *\n * @param input The message details we need to prepare the OperationRequest message.\n */\n requestOperation(input: RequestOperationInput): Promise;\n /**\n * Sends a \"BroadcastRequest\" to the wallet. This method can be used to inject an already signed transaction\n * to the network.\n *\n * @param input The message details we need to prepare the BroadcastRequest message.\n */\n requestBroadcast(input: RequestBroadcastInput): Promise;\n protected setActivePeer(peer?: PeerInfoType): Promise;\n /**\n * A \"setter\" for when the transport needs to be changed.\n */\n protected setTransport(transport?: Transport): Promise;\n /**\n * This method will emit an internal error message.\n *\n * @param errorMessage The error message to send.\n */\n private sendInternalError;\n /**\n * This method will remove all accounts associated with a specific peer.\n *\n * @param peersToRemove An array of peers for which accounts should be removed\n */\n private removeAccountsForPeers;\n private removeAccountsForPeerIds;\n /**\n * This message handles errors that we receive from the wallet.\n *\n * @param request The request we sent\n * @param beaconError The error we received\n */\n private handleRequestError;\n /**\n * This message will send an event when we receive a successful response to one of the requests we sent.\n *\n * @param request The request we sent\n * @param response The response we received\n */\n private notifySuccess;\n private getWalletInfoFromStorage;\n private updateStorageWallet;\n private getWalletInfo;\n private getPeer;\n /**\n * This method handles sending of requests to the DApp. It makes sure that the DAppClient is initialized and connected\n * to the transport. After that rate limits and permissions will be checked, an ID is attached and the request is sent\n * to the DApp over the transport.\n *\n * @param requestInput The BeaconMessage to be sent to the wallet\n * @param account The account that the message will be sent to\n * @param skipResponse If true, the function return as soon as the message is sent\n */\n private makeRequest;\n /**\n * This method handles sending of requests to the DApp. It makes sure that the DAppClient is initialized and connected\n * to the transport. After that rate limits and permissions will be checked, an ID is attached and the request is sent\n * to the DApp over the transport.\n *\n * @param requestInput The BeaconMessage to be sent to the wallet\n * @param account The account that the message will be sent to\n */\n private makeRequestV3;\n disconnect(): Promise;\n /**\n * Adds a requests to the \"openRequests\" set so we know what messages have already been answered/handled.\n *\n * @param id The ID of the message\n * @param promise A promise that resolves once the response for that specific message is received\n */\n private addOpenRequest;\n private sendNotificationWithAccessToken;\n private onNewAccount;\n}\n"},{name:"@airgap/beacon-dapp/dapp-client/DAppClientOptions.d.ts",dts:"import { BeaconEvent, BeaconEventType, BeaconEventHandlerFunction } from '../events';\nimport { BlockExplorer } from '../utils/block-explorer';\nimport { Storage, NetworkType, ColorMode, NodeDistributions, AnalyticsInterface, Network } from '@airgap/beacon-types';\ntype RequireAtLeastOne = Pick> & {\n [K in Keys]-?: Required> & Partial>>;\n}[Keys];\n/**\n * @category DApp\n */\nexport interface DAppClientOptions {\n /**\n * Name of the application\n */\n name: string;\n /**\n * Description of the application\n */\n description?: string;\n /**\n * A URL to the icon of the application\n */\n iconUrl?: string;\n /**\n * A URL to the website of the application\n */\n appUrl?: string;\n /**\n * The storage that will be used by the SDK\n */\n storage?: Storage;\n /**\n * An object that will be used to overwrite default event handler behaviour.\n *\n * If you plan to overwrite all default events, use \"disableDefaultEvents\" instead.\n *\n * This will overwrite the default event handler, so this can lead to unexpected behavior in some cases.\n * We recommend that you overwrite all handlers if you want to use your own UI.\n *\n * If you simply want to be notified of events happening, but do not want to overwrite the default behavior,\n * please use `subscribeToEvent()` on the DAppClient instead.\n */\n eventHandlers?: {\n [key in BeaconEvent]?: {\n handler: BeaconEventHandlerFunction;\n };\n };\n /**\n * Disable all default Events and UI elements. If passed together with \"eventHandlers\",\n * the default eventHandlers will be removed, and the ones passed by the user will be added.\n */\n disableDefaultEvents?: boolean;\n /**\n * A list of matrix nodes to connect to. If a non-empty array is passed, the default options will be overwritten.\n * One node will be randomly selected based on the local keypair and the other nodes will be used as a fallback in case the primary node goes down.\n *\n * Only provide the hostname, no https:// prefix. Eg. { [Regions.EU1]: ['matrix.example.com'] }\n */\n matrixNodes?: NodeDistributions;\n /**\n * The block explorer used by the SDK\n */\n blockExplorer?: BlockExplorer;\n /**\n * Indicates on which network the DApp is running on.\n */\n network?: Network;\n /**\n * @deprecated Please use \"network\" instead.\n * Indicates on which network the DApp is planning to run. This is currently used to adjust the URLs of web-wallets in the pairing alert if they use different URLs for testnets.\n * You will still have to define the network you intend to use during the permission request.\n */\n preferredNetwork?: NetworkType;\n /**\n * Set the color mode for the UI elements (alerts and toasts)\n */\n colorMode?: ColorMode;\n /**\n * A disclaimer text that will be displayed in the pairing alert\n */\n disclaimerText?: string;\n /**\n * A list of contracts that the DApp is using. Allows to attach human readable error messages for to error codes\n */\n errorMessages?: Record>;\n /**\n * Configuration that is passed to the WalletConnect transport.\n *\n * This is required to enable WalletConnect connections.\n */\n walletConnectOptions?: RequireAtLeastOne<{\n /**\n * The projectId of the application. Has to be obtained from https://cloud.walletconnect.com/\n */\n projectId?: string;\n /**\n * The relay server to connect to\n */\n relayUrl?: string;\n }>;\n /**\n * The analytics instance that will be used by the SDK\n */\n analytics?: AnalyticsInterface;\n /**\n * The wallets that will be featured in the UI.\n */\n featuredWallets?: string[];\n /**\n * Automatically switch between apps on Mobile Devices (Enabled by Default)\n */\n enableAppSwitching?: boolean;\n /**\n * Enable metrics tracking (Disabled by Default)\n */\n enableMetrics?: boolean;\n}\nexport {};\n"},{name:"@airgap/beacon-dapp/transports/DappP2PTransport.d.ts",dts:"import { Storage, StorageKey, ExtendedP2PPairingResponse, NodeDistributions } from '@airgap/beacon-types';\nimport { P2PTransport } from '@airgap/beacon-transport-matrix';\nimport { KeyPair } from '@stablelib/ed25519';\n/**\n * @internalapi\n *\n *\n */\nexport declare class DappP2PTransport extends P2PTransport {\n constructor(name: string, keyPair: KeyPair, storage: Storage, matrixNodes: NodeDistributions, iconUrl?: string, appUrl?: string);\n startOpenChannelListener(): Promise;\n listenForNewPeer(newPeerListener: (peer: ExtendedP2PPairingResponse) => void): Promise;\n stopListeningForNewPeers(): Promise;\n}\n"},{name:"@airgap/beacon-dapp/transports/DappPostMessageTransport.d.ts",dts:"import { StorageKey, Storage, ExtendedPostMessagePairingResponse } from '@airgap/beacon-types';\nimport { PostMessageTransport } from '@airgap/beacon-transport-postmessage';\nimport { KeyPair } from '@stablelib/ed25519';\n/**\n * @internalapi\n *\n *\n */\nexport declare class DappPostMessageTransport extends PostMessageTransport {\n constructor(name: string, keyPair: KeyPair, storage: Storage);\n startOpenChannelListener(): Promise;\n listenForNewPeer(newPeerListener: (peer: ExtendedPostMessagePairingResponse) => void): Promise;\n stopListeningForNewPeers(): Promise;\n}\n"},{name:"@airgap/beacon-dapp/transports/DappWalletConnectTransport.d.ts",dts:"import { StorageKey, Storage, ExtendedWalletConnectPairingResponse, NetworkType } from '@airgap/beacon-types';\nimport { WalletConnectTransport } from '@airgap/beacon-transport-walletconnect';\nimport { KeyPair } from '@stablelib/ed25519';\nimport { SignClientTypes } from '@walletconnect/types';\n/**\n * @internalapi\n *\n *\n */\nexport declare class DappWalletConnectTransport extends WalletConnectTransport {\n constructor(name: string, keyPair: KeyPair, storage: Storage, wcOptions: {\n network: NetworkType;\n opts: SignClientTypes.Options;\n });\n listenForNewPeer(newPeerListener: (peer: ExtendedWalletConnectPairingResponse) => void): Promise;\n stopListeningForNewPeers(): Promise;\n}\n"},{name:"@airgap/beacon-dapp/utils/available-transports.d.ts",dts:"/**\n * An object with promises to indicate whether or not that transport is available.\n */\nexport declare const availableTransports: any;\n"},{name:"@airgap/beacon-dapp/utils/block-explorer.d.ts",dts:"import { Network, NetworkType } from '@airgap/beacon-types';\nexport declare abstract class BlockExplorer {\n readonly rpcUrls: {\n [key in NetworkType]: string;\n };\n constructor(rpcUrls: {\n [key in NetworkType]: string;\n });\n protected getLinkForNetwork(network: Network): Promise;\n /**\n * Return a blockexplorer link for an address\n *\n * @param address The address to be opened\n * @param network The network that was used\n */\n abstract getAddressLink(address: string, network: Network): Promise;\n /**\n * Return a blockexplorer link for a transaction hash\n *\n * @param transactionId The hash of the transaction\n * @param network The network that was used\n */\n abstract getTransactionLink(transactionId: string, network: Network): Promise;\n}\n"},{name:"@airgap/beacon-dapp/utils/get-instance.d.ts",dts:"import { DAppClient, DAppClientOptions } from '..';\n/** Get a DAppClient instance. Will make sure only one dAppClient exists. After the first instance has been created, the config will be ignored, unless \"reset\" is set */\nexport declare const getDAppClientInstance: (config: DAppClientOptions, reset?: boolean) => DAppClient;\n"},{name:"@airgap/beacon-dapp/utils/shorten-string.d.ts",dts:"export declare const shortenString: (text: string) => string;\n"},{name:"@airgap/beacon-dapp/utils/tzkt-blockexplorer.d.ts",dts:"import { Network, NetworkType } from '@airgap/beacon-types';\nimport { BlockExplorer } from './block-explorer';\nexport declare class TzktBlockExplorer extends BlockExplorer {\n readonly rpcUrls: {\n [key in NetworkType]: string;\n };\n constructor(rpcUrls?: {\n [key in NetworkType]: string;\n });\n getAddressLink(address: string, network: Network): Promise;\n getTransactionLink(transactionId: string, network: Network): Promise;\n}\n"},{name:"@airgap/beacon-dapp/beacon-message-events.d.ts",dts:"import { BeaconEvent } from './events';\nimport { BeaconMessageType } from '@airgap/beacon-types';\nexport declare const messageEvents: {\n [key in BeaconMessageType]: {\n sent: BeaconEvent;\n success: BeaconEvent;\n error: BeaconEvent;\n };\n};\n"},{name:"@airgap/beacon-dapp/events.d.ts",dts:'import { BlockExplorer, AlertButton } from \'@airgap/beacon-dapp\';\nimport { ExtendedPostMessagePairingResponse, PostMessagePairingRequest, ExtendedP2PPairingResponse, P2PPairingRequest, AccountInfo, ErrorResponse, PermissionResponseOutput, OperationResponseOutput, BroadcastResponseOutput, SignPayloadResponseOutput, Network, ConnectionContext, NetworkType, AcknowledgeResponse, WalletInfo, ExtendedWalletConnectPairingResponse, WalletConnectPairingRequest, AnalyticsInterface, ProofOfEventChallengeResponseOutput, SimulatedProofOfEventChallengeResponseOutput } from \'@airgap/beacon-types\';\nimport { Transport } from \'@airgap/beacon-core\';\n/**\n * The different events that can be emitted by the beacon-sdk\n */\nexport declare enum BeaconEvent {\n PERMISSION_REQUEST_SENT = "PERMISSION_REQUEST_SENT",\n PERMISSION_REQUEST_SUCCESS = "PERMISSION_REQUEST_SUCCESS",\n PERMISSION_REQUEST_ERROR = "PERMISSION_REQUEST_ERROR",\n PROOF_OF_EVENT_CHALLENGE_REQUEST_SENT = "PROOF_OF_EVENT_CHALLENGE_REQUEST_SENT",\n PROOF_OF_EVENT_CHALLENGE_REQUEST_SUCCESS = "PROOF_OF_EVENT_CHALLENGE_REQUEST_SUCCESS",\n PROOF_OF_EVENT_CHALLENGE_REQUEST_ERROR = "PROOF_OF_EVENT_CHALLENGE_REQUEST_ERROR",\n SIMULATED_PROOF_OF_EVENT_CHALLENGE_REQUEST_SENT = "SIMULATED_PROOF_OF_EVENT_CHALLENGE_REQUEST_SENT",\n SIMULATED_PROOF_OF_EVENT_CHALLENGE_REQUEST_SUCCESS = "SIMULATED_PROOF_OF_EVENT_CHALLENGE_REQUEST_SUCCESS",\n SIMULATED_PROOF_OF_EVENT_CHALLENGE_REQUEST_ERROR = "SIMULATED_PROOF_OF_EVENT_CHALLENGE_REQUEST_ERROR",\n OPERATION_REQUEST_SENT = "OPERATION_REQUEST_SENT",\n OPERATION_REQUEST_SUCCESS = "OPERATION_REQUEST_SUCCESS",\n OPERATION_REQUEST_ERROR = "OPERATION_REQUEST_ERROR",\n SIGN_REQUEST_SENT = "SIGN_REQUEST_SENT",\n SIGN_REQUEST_SUCCESS = "SIGN_REQUEST_SUCCESS",\n SIGN_REQUEST_ERROR = "SIGN_REQUEST_ERROR",\n BROADCAST_REQUEST_SENT = "BROADCAST_REQUEST_SENT",\n BROADCAST_REQUEST_SUCCESS = "BROADCAST_REQUEST_SUCCESS",\n BROADCAST_REQUEST_ERROR = "BROADCAST_REQUEST_ERROR",\n ACKNOWLEDGE_RECEIVED = "ACKNOWLEDGE_RECEIVED",\n LOCAL_RATE_LIMIT_REACHED = "LOCAL_RATE_LIMIT_REACHED",\n NO_PERMISSIONS = "NO_PERMISSIONS",\n ACTIVE_ACCOUNT_SET = "ACTIVE_ACCOUNT_SET",\n ACTIVE_TRANSPORT_SET = "ACTIVE_TRANSPORT_SET",\n SHOW_PREPARE = "SHOW_PREPARE",\n HIDE_UI = "HIDE_UI",\n INVALID_ACTIVE_ACCOUNT_STATE = "INVALID_ACTIVE_ACCOUNT_STATE",\n PAIR_INIT = "PAIR_INIT",\n PAIR_SUCCESS = "PAIR_SUCCESS",\n CHANNEL_CLOSED = "CHANNEL_CLOSED",\n INTERNAL_ERROR = "INTERNAL_ERROR",\n UNKNOWN = "UNKNOWN"\n}\nexport interface ExtraInfo {\n resetCallback?(): Promise;\n}\ninterface RequestSentInfo {\n extraInfo: ExtraInfo;\n walletInfo: WalletInfo;\n}\n/**\n * The type of the payload of the different BeaconEvents\n */\nexport interface BeaconEventType {\n [BeaconEvent.PERMISSION_REQUEST_SENT]: RequestSentInfo;\n [BeaconEvent.PERMISSION_REQUEST_SUCCESS]: {\n account: AccountInfo;\n output: PermissionResponseOutput;\n blockExplorer: BlockExplorer;\n connectionContext: ConnectionContext;\n walletInfo: WalletInfo;\n };\n [BeaconEvent.PERMISSION_REQUEST_ERROR]: {\n errorResponse: ErrorResponse;\n walletInfo: WalletInfo;\n };\n [BeaconEvent.PROOF_OF_EVENT_CHALLENGE_REQUEST_SENT]: RequestSentInfo;\n [BeaconEvent.PROOF_OF_EVENT_CHALLENGE_REQUEST_SUCCESS]: {\n account: AccountInfo;\n output: ProofOfEventChallengeResponseOutput;\n blockExplorer: BlockExplorer;\n connectionContext: ConnectionContext;\n walletInfo: WalletInfo;\n };\n [BeaconEvent.PROOF_OF_EVENT_CHALLENGE_REQUEST_ERROR]: {\n errorResponse: ErrorResponse;\n walletInfo: WalletInfo;\n };\n [BeaconEvent.SIMULATED_PROOF_OF_EVENT_CHALLENGE_REQUEST_SENT]: RequestSentInfo;\n [BeaconEvent.SIMULATED_PROOF_OF_EVENT_CHALLENGE_REQUEST_SUCCESS]: {\n account: AccountInfo;\n output: SimulatedProofOfEventChallengeResponseOutput;\n blockExplorer: BlockExplorer;\n connectionContext: ConnectionContext;\n walletInfo: WalletInfo;\n };\n [BeaconEvent.SIMULATED_PROOF_OF_EVENT_CHALLENGE_REQUEST_ERROR]: {\n errorResponse: ErrorResponse;\n walletInfo: WalletInfo;\n };\n [BeaconEvent.OPERATION_REQUEST_SENT]: RequestSentInfo;\n [BeaconEvent.OPERATION_REQUEST_SUCCESS]: {\n account: AccountInfo;\n output: OperationResponseOutput;\n blockExplorer: BlockExplorer;\n connectionContext: ConnectionContext;\n walletInfo: WalletInfo;\n };\n [BeaconEvent.OPERATION_REQUEST_ERROR]: {\n errorResponse: ErrorResponse;\n walletInfo: WalletInfo;\n errorMessages: Record>;\n };\n [BeaconEvent.SIGN_REQUEST_SENT]: RequestSentInfo;\n [BeaconEvent.SIGN_REQUEST_SUCCESS]: {\n output: SignPayloadResponseOutput;\n connectionContext: ConnectionContext;\n walletInfo: WalletInfo;\n };\n [BeaconEvent.SIGN_REQUEST_ERROR]: {\n errorResponse: ErrorResponse;\n walletInfo: WalletInfo;\n };\n [BeaconEvent.BROADCAST_REQUEST_SENT]: RequestSentInfo;\n [BeaconEvent.BROADCAST_REQUEST_SUCCESS]: {\n network: Network;\n output: BroadcastResponseOutput;\n blockExplorer: BlockExplorer;\n connectionContext: ConnectionContext;\n walletInfo: WalletInfo;\n };\n [BeaconEvent.BROADCAST_REQUEST_ERROR]: {\n errorResponse: ErrorResponse;\n walletInfo: WalletInfo;\n };\n [BeaconEvent.ACKNOWLEDGE_RECEIVED]: {\n message: AcknowledgeResponse;\n extraInfo: ExtraInfo;\n walletInfo: WalletInfo;\n };\n [BeaconEvent.LOCAL_RATE_LIMIT_REACHED]: undefined;\n [BeaconEvent.NO_PERMISSIONS]: undefined;\n [BeaconEvent.ACTIVE_ACCOUNT_SET]: AccountInfo;\n [BeaconEvent.ACTIVE_TRANSPORT_SET]: Transport;\n [BeaconEvent.INVALID_ACTIVE_ACCOUNT_STATE]: undefined;\n [BeaconEvent.SHOW_PREPARE]: {\n walletInfo?: WalletInfo;\n };\n [BeaconEvent.HIDE_UI]: (\'alert\' | \'toast\')[] | undefined;\n [BeaconEvent.PAIR_INIT]: {\n p2pPeerInfo: () => Promise;\n postmessagePeerInfo: () => Promise;\n walletConnectPeerInfo: () => Promise;\n networkType: NetworkType;\n abortedHandler?(): void;\n disclaimerText?: string;\n analytics: AnalyticsInterface;\n featuredWallets?: string[];\n };\n [BeaconEvent.PAIR_SUCCESS]: ExtendedPostMessagePairingResponse | ExtendedP2PPairingResponse | ExtendedWalletConnectPairingResponse;\n [BeaconEvent.CHANNEL_CLOSED]: string;\n [BeaconEvent.INTERNAL_ERROR]: {\n text: string;\n buttons?: AlertButton[];\n };\n [BeaconEvent.UNKNOWN]: undefined;\n}\nexport type BeaconEventHandlerFunction = (data: T, eventCallback?: AlertButton[]) => void | Promise;\n/**\n * The default event handlers\n */\nexport declare const defaultEventCallbacks: {\n [key in BeaconEvent]: BeaconEventHandlerFunction;\n};\n/**\n * @internalapi\n *\n * Handles beacon events\n */\nexport declare class BeaconEventHandler {\n private readonly callbackMap;\n constructor(eventsToOverride?: {\n [key in BeaconEvent]?: {\n handler: BeaconEventHandlerFunction;\n };\n }, overrideAll?: boolean);\n /**\n * A method to subscribe to a specific beacon event and register a callback\n *\n * @param event The event being emitted\n * @param eventCallback The callback that will be invoked\n */\n on(event: K, eventCallback: BeaconEventHandlerFunction): Promise;\n /**\n * Emit a beacon event\n *\n * @param event The event being emitted\n * @param data The data to be emit\n */\n emit(event: K, data?: BeaconEventType[K], eventCallback?: AlertButton[]): Promise;\n /**\n * Override beacon event default callbacks. This can be used to disable default alert/toast behaviour\n *\n * @param eventsToOverride An object with the events to override\n */\n private overrideDefaults;\n /**\n * Set all event callbacks to a specific handler.\n */\n private setAllHandlers;\n}\nexport {};\n'},{name:"@airgap/beacon-dapp/index.d.ts",dts:"export * from '@airgap/beacon-core';\nexport * from '@airgap/beacon-transport-matrix';\nexport * from '@airgap/beacon-transport-postmessage';\nexport * from '@airgap/beacon-types';\nexport * from '@airgap/beacon-utils';\nexport * from '@airgap/beacon-ui';\nimport { DAppClient } from './dapp-client/DAppClient';\nimport { DAppClientOptions } from './dapp-client/DAppClientOptions';\nimport { BeaconEvent, BeaconEventHandler, defaultEventCallbacks } from './events';\nimport { BlockExplorer } from './utils/block-explorer';\nimport { TzktBlockExplorer } from './utils/tzkt-blockexplorer';\nimport { getDAppClientInstance } from './utils/get-instance';\nexport { DAppClient, DAppClientOptions, getDAppClientInstance };\nexport { BeaconEvent, BeaconEventHandler, defaultEventCallbacks };\nexport { BlockExplorer, TzktBlockExplorer, TzktBlockExplorer as TezblockBlockExplorer };\n"},{name:"@airgap/beacon-dapp/dist/esm/dapp-client/DAppClient.d.ts",dts:"import { BeaconEvent, BeaconEventHandlerFunction, BeaconEventType } from '../events';\nimport { AccountInfo, TransportType, BeaconMessageType, RequestPermissionInput, RequestSignPayloadInput, RequestOperationInput, RequestBroadcastInput, PermissionResponseOutput, SignPayloadResponseOutput, OperationResponseOutput, BroadcastResponseOutput, Network, AppMetadata, ExtendedPeerInfo, ColorMode, Blockchain, BlockchainRequestV3, BlockchainResponseV3, PermissionRequestV3, PermissionResponseV3, ProofOfEventChallengeResponse, RequestProofOfEventChallengeInput, PeerInfoType, SimulatedProofOfEventChallengeResponse, RequestSimulatedProofOfEventChallengeInput } from '@airgap/beacon-types';\nimport { Client, Transport } from '@airgap/beacon-core';\nimport { BlockExplorer } from '../utils/block-explorer';\nimport { DAppClientOptions } from './DAppClientOptions';\nimport { BeaconEventHandler } from '@airgap/beacon-dapp';\nimport { DappPostMessageTransport } from '../transports/DappPostMessageTransport';\nimport { DappP2PTransport } from '../transports/DappP2PTransport';\nimport { DappWalletConnectTransport } from '../transports/DappWalletConnectTransport';\n/**\n * @publicapi\n *\n * The DAppClient has to be used in decentralized applications. It handles all the logic related to connecting to beacon-compatible\n * wallets and sending requests.\n *\n * @category DApp\n */\nexport declare class DAppClient extends Client {\n /**\n * The description of the app\n */\n readonly description?: string;\n /**\n * The block explorer used by the SDK\n */\n readonly blockExplorer: BlockExplorer;\n /**\n * Automatically switch between apps on Mobile Devices (Enabled by Default)\n */\n private enableAppSwitching;\n /**\n * Enable metrics tracking (Disabled by Default)\n */\n private enableMetrics?;\n private userId?;\n network: Network;\n protected readonly events: BeaconEventHandler;\n protected postMessageTransport: DappPostMessageTransport | undefined;\n protected p2pTransport: DappP2PTransport | undefined;\n protected walletConnectTransport: DappWalletConnectTransport | undefined;\n protected wcProjectId?: string;\n protected wcRelayUrl?: string;\n private isGetActiveAccountHandled;\n /**\n * A map of requests that are currently \"open\", meaning we have sent them to a wallet and are still awaiting a response.\n */\n private readonly openRequests;\n /**\n * The currently active account. For all requests that are associated to a specific request (operation request, signing request),\n * the active account is used to determine the network and destination wallet\n */\n private _activeAccount;\n /**\n * The currently active peer. This is used to address a peer in case the active account is not set. (Eg. for permission requests)\n */\n private _activePeer;\n private _initPromise;\n private isInitPending;\n private readonly activeAccountLoaded;\n private readonly appMetadataManager;\n private readonly disclaimerText?;\n private readonly errorMessages;\n private readonly featuredWallets;\n private readonly storageValidator;\n private readonly bugReportStorage;\n private debounceEventResponse;\n private debounceSetActiveAccount;\n constructor(config: DAppClientOptions);\n private createStateSnapshot;\n private initUserID;\n initInternalTransports(): Promise;\n private initEvents;\n private wcToastHandler;\n private channelClosedHandler;\n /**\n * Destroy the instance.\n *\n * WARNING: Call `destroy` whenever you no longer need dAppClient\n * as it frees internal subscriptions to the transport and therefore the instance may no longer work properly.\n * If you wish to disconnect your dApp, use `disconnect` instead.\n */\n destroy(): Promise;\n init(transport?: Transport): Promise;\n /**\n * Returns the active account\n */\n getActiveAccount(): Promise;\n private isInvalidState;\n private resetInvalidState;\n /**\n * Sets the active account\n *\n * @param account The account that will be set as the active account\n */\n setActiveAccount(account?: AccountInfo): Promise;\n /**\n * Clear the active account\n */\n clearActiveAccount(): Promise;\n setColorMode(colorMode: ColorMode): Promise;\n getColorMode(): Promise;\n /**\n * @deprecated\n *\n * Use getOwnAppMetadata instead\n */\n getAppMetadata(): Promise;\n showPrepare(): Promise;\n hideUI(elements: ('alert' | 'toast')[]): Promise;\n private tryToAppSwitch;\n private addQueryParam;\n private buildPayload;\n private sendMetrics;\n /**\n * Will remove the account from the local storage and set a new active account if necessary.\n *\n * @param accountIdentifier ID of the account\n */\n removeAccount(accountIdentifier: string): Promise;\n /**\n * Remove all accounts and set active account to undefined\n */\n removeAllAccounts(): Promise;\n /**\n * Removes a peer and all the accounts that have been connected through that peer\n *\n * @param peer Peer to be removed\n */\n removePeer(peer: ExtendedPeerInfo, sendDisconnectToPeer?: boolean): Promise;\n /**\n * Remove all peers and all accounts that have been connected through those peers\n */\n removeAllPeers(sendDisconnectToPeers?: boolean): Promise;\n /**\n * Allows the user to subscribe to specific events that are fired in the SDK\n *\n * @param internalEvent The event to subscribe to\n * @param eventCallback The callback that will be called when the event occurs\n */\n subscribeToEvent(internalEvent: K, eventCallback: BeaconEventHandlerFunction): Promise;\n /**\n * Check if we have permissions to send the specific message type to the active account.\n * If no active account is set, only permission requests are allowed.\n *\n * @param type The type of the message\n */\n checkPermissions(type: BeaconMessageType): Promise;\n sendNotification(title: string, message: string, payload: string, protocolIdentifier: string): Promise;\n private blockchains;\n addBlockchain(chain: Blockchain): void;\n removeBlockchain(chainIdentifier: string): void;\n permissionRequest(input: PermissionRequestV3): Promise>;\n request(input: BlockchainRequestV3): Promise>;\n /**\n * Send a permission request to the DApp. This should be done as the first step. The wallet will respond\n * with an publicKey and permissions that were given. The account returned will be set as the \"activeAccount\"\n * and will be used for the following requests.\n *\n * @param input The message details we need to prepare the PermissionRequest message.\n */\n requestPermissions(input?: RequestPermissionInput): Promise;\n /**\n * Send a proof of event request to the wallet. The wallet will either accept or decline the challenge.\n * If it is accepted, the challenge will be stored, meaning that even if the user refresh the page, the DAppClient will keep checking if the challenge has been fulfilled.\n * Once the challenge is stored, a challenge stored message will be sent to the wallet.\n * It's **highly recommended** to run a proof of event challenge to check the identity of an abstracted account\n *\n * @param input The message details we need to prepare the ProofOfEventChallenge message.\n */\n requestProofOfEventChallenge(input: RequestProofOfEventChallengeInput): Promise;\n /**\n * Send a simulated proof of event request to the wallet. The wallet will either accept or decline the challenge.\n * It's the same than `requestProofOfEventChallenge` but rather than executing operations on the blockchain to prove the identity,\n * The wallet will return a list of operations that you'll be able to run on your side to verify the identity of the abstracted account\n * It's **highly recommended** to run a proof of event challenge to check the identity of an abstracted account\n *\n * @param input The message details we need to prepare the SimulatedProofOfEventChallenge message.\n */\n requestSimulatedProofOfEventChallenge(input: RequestSimulatedProofOfEventChallengeInput): Promise;\n /**\n * This method will send a \"SignPayloadRequest\" to the wallet. This method is meant to be used to sign\n * arbitrary data (eg. a string). It will return the signature in the format of \"edsig...\"\n *\n * @param input The message details we need to prepare the SignPayloadRequest message.\n */\n requestSignPayload(input: RequestSignPayloadInput): Promise;\n /**\n * This method will send an \"EncryptPayloadRequest\" to the wallet. This method is meant to be used to encrypt or decrypt\n * arbitrary data (eg. a string). It will return the encrypted or decrypted payload\n *\n * @param input The message details we need to prepare the EncryptPayloadRequest message.\n */\n /**\n * This method sends an OperationRequest to the wallet. This method should be used for all kinds of operations,\n * eg. transaction or delegation. Not all properties have to be provided. Data like \"counter\" and fees will be\n * fetched and calculated by the wallet (but they can still be provided if required).\n *\n * @param input The message details we need to prepare the OperationRequest message.\n */\n requestOperation(input: RequestOperationInput): Promise;\n /**\n * Sends a \"BroadcastRequest\" to the wallet. This method can be used to inject an already signed transaction\n * to the network.\n *\n * @param input The message details we need to prepare the BroadcastRequest message.\n */\n requestBroadcast(input: RequestBroadcastInput): Promise;\n protected setActivePeer(peer?: PeerInfoType): Promise;\n /**\n * A \"setter\" for when the transport needs to be changed.\n */\n protected setTransport(transport?: Transport): Promise;\n /**\n * This method will emit an internal error message.\n *\n * @param errorMessage The error message to send.\n */\n private sendInternalError;\n /**\n * This method will remove all accounts associated with a specific peer.\n *\n * @param peersToRemove An array of peers for which accounts should be removed\n */\n private removeAccountsForPeers;\n private removeAccountsForPeerIds;\n /**\n * This message handles errors that we receive from the wallet.\n *\n * @param request The request we sent\n * @param beaconError The error we received\n */\n private handleRequestError;\n /**\n * This message will send an event when we receive a successful response to one of the requests we sent.\n *\n * @param request The request we sent\n * @param response The response we received\n */\n private notifySuccess;\n private getWalletInfoFromStorage;\n private updateStorageWallet;\n private getWalletInfo;\n private getPeer;\n /**\n * This method handles sending of requests to the DApp. It makes sure that the DAppClient is initialized and connected\n * to the transport. After that rate limits and permissions will be checked, an ID is attached and the request is sent\n * to the DApp over the transport.\n *\n * @param requestInput The BeaconMessage to be sent to the wallet\n * @param account The account that the message will be sent to\n * @param skipResponse If true, the function return as soon as the message is sent\n */\n private makeRequest;\n /**\n * This method handles sending of requests to the DApp. It makes sure that the DAppClient is initialized and connected\n * to the transport. After that rate limits and permissions will be checked, an ID is attached and the request is sent\n * to the DApp over the transport.\n *\n * @param requestInput The BeaconMessage to be sent to the wallet\n * @param account The account that the message will be sent to\n */\n private makeRequestV3;\n disconnect(): Promise;\n /**\n * Adds a requests to the \"openRequests\" set so we know what messages have already been answered/handled.\n *\n * @param id The ID of the message\n * @param promise A promise that resolves once the response for that specific message is received\n */\n private addOpenRequest;\n private sendNotificationWithAccessToken;\n private onNewAccount;\n}\n"},{name:"@airgap/beacon-dapp/dist/esm/dapp-client/DAppClientOptions.d.ts",dts:"import { BeaconEvent, BeaconEventType, BeaconEventHandlerFunction } from '../events';\nimport { BlockExplorer } from '../utils/block-explorer';\nimport { Storage, NetworkType, ColorMode, NodeDistributions, AnalyticsInterface, Network } from '@airgap/beacon-types';\ntype RequireAtLeastOne = Pick> & {\n [K in Keys]-?: Required> & Partial>>;\n}[Keys];\n/**\n * @category DApp\n */\nexport interface DAppClientOptions {\n /**\n * Name of the application\n */\n name: string;\n /**\n * Description of the application\n */\n description?: string;\n /**\n * A URL to the icon of the application\n */\n iconUrl?: string;\n /**\n * A URL to the website of the application\n */\n appUrl?: string;\n /**\n * The storage that will be used by the SDK\n */\n storage?: Storage;\n /**\n * An object that will be used to overwrite default event handler behaviour.\n *\n * If you plan to overwrite all default events, use \"disableDefaultEvents\" instead.\n *\n * This will overwrite the default event handler, so this can lead to unexpected behavior in some cases.\n * We recommend that you overwrite all handlers if you want to use your own UI.\n *\n * If you simply want to be notified of events happening, but do not want to overwrite the default behavior,\n * please use `subscribeToEvent()` on the DAppClient instead.\n */\n eventHandlers?: {\n [key in BeaconEvent]?: {\n handler: BeaconEventHandlerFunction;\n };\n };\n /**\n * Disable all default Events and UI elements. If passed together with \"eventHandlers\",\n * the default eventHandlers will be removed, and the ones passed by the user will be added.\n */\n disableDefaultEvents?: boolean;\n /**\n * A list of matrix nodes to connect to. If a non-empty array is passed, the default options will be overwritten.\n * One node will be randomly selected based on the local keypair and the other nodes will be used as a fallback in case the primary node goes down.\n *\n * Only provide the hostname, no https:// prefix. Eg. { [Regions.EU1]: ['matrix.example.com'] }\n */\n matrixNodes?: NodeDistributions;\n /**\n * The block explorer used by the SDK\n */\n blockExplorer?: BlockExplorer;\n /**\n * Indicates on which network the DApp is running on.\n */\n network?: Network;\n /**\n * @deprecated Please use \"network\" instead.\n * Indicates on which network the DApp is planning to run. This is currently used to adjust the URLs of web-wallets in the pairing alert if they use different URLs for testnets.\n * You will still have to define the network you intend to use during the permission request.\n */\n preferredNetwork?: NetworkType;\n /**\n * Set the color mode for the UI elements (alerts and toasts)\n */\n colorMode?: ColorMode;\n /**\n * A disclaimer text that will be displayed in the pairing alert\n */\n disclaimerText?: string;\n /**\n * A list of contracts that the DApp is using. Allows to attach human readable error messages for to error codes\n */\n errorMessages?: Record>;\n /**\n * Configuration that is passed to the WalletConnect transport.\n *\n * This is required to enable WalletConnect connections.\n */\n walletConnectOptions?: RequireAtLeastOne<{\n /**\n * The projectId of the application. Has to be obtained from https://cloud.walletconnect.com/\n */\n projectId?: string;\n /**\n * The relay server to connect to\n */\n relayUrl?: string;\n }>;\n /**\n * The analytics instance that will be used by the SDK\n */\n analytics?: AnalyticsInterface;\n /**\n * The wallets that will be featured in the UI.\n */\n featuredWallets?: string[];\n /**\n * Automatically switch between apps on Mobile Devices (Enabled by Default)\n */\n enableAppSwitching?: boolean;\n /**\n * Enable metrics tracking (Disabled by Default)\n */\n enableMetrics?: boolean;\n}\nexport {};\n"},{name:"@airgap/beacon-dapp/dist/esm/transports/DappP2PTransport.d.ts",dts:"import { Storage, StorageKey, ExtendedP2PPairingResponse, NodeDistributions } from '@airgap/beacon-types';\nimport { P2PTransport } from '@airgap/beacon-transport-matrix';\nimport { KeyPair } from '@stablelib/ed25519';\n/**\n * @internalapi\n *\n *\n */\nexport declare class DappP2PTransport extends P2PTransport {\n constructor(name: string, keyPair: KeyPair, storage: Storage, matrixNodes: NodeDistributions, iconUrl?: string, appUrl?: string);\n startOpenChannelListener(): Promise;\n listenForNewPeer(newPeerListener: (peer: ExtendedP2PPairingResponse) => void): Promise;\n stopListeningForNewPeers(): Promise;\n}\n"},{name:"@airgap/beacon-dapp/dist/esm/transports/DappPostMessageTransport.d.ts",dts:"import { StorageKey, Storage, ExtendedPostMessagePairingResponse } from '@airgap/beacon-types';\nimport { PostMessageTransport } from '@airgap/beacon-transport-postmessage';\nimport { KeyPair } from '@stablelib/ed25519';\n/**\n * @internalapi\n *\n *\n */\nexport declare class DappPostMessageTransport extends PostMessageTransport {\n constructor(name: string, keyPair: KeyPair, storage: Storage);\n startOpenChannelListener(): Promise;\n listenForNewPeer(newPeerListener: (peer: ExtendedPostMessagePairingResponse) => void): Promise;\n stopListeningForNewPeers(): Promise;\n}\n"},{name:"@airgap/beacon-dapp/dist/esm/transports/DappWalletConnectTransport.d.ts",dts:"import { StorageKey, Storage, ExtendedWalletConnectPairingResponse, NetworkType } from '@airgap/beacon-types';\nimport { WalletConnectTransport } from '@airgap/beacon-transport-walletconnect';\nimport { KeyPair } from '@stablelib/ed25519';\nimport { SignClientTypes } from '@walletconnect/types';\n/**\n * @internalapi\n *\n *\n */\nexport declare class DappWalletConnectTransport extends WalletConnectTransport {\n constructor(name: string, keyPair: KeyPair, storage: Storage, wcOptions: {\n network: NetworkType;\n opts: SignClientTypes.Options;\n });\n listenForNewPeer(newPeerListener: (peer: ExtendedWalletConnectPairingResponse) => void): Promise;\n stopListeningForNewPeers(): Promise;\n}\n"},{name:"@airgap/beacon-dapp/dist/esm/utils/available-transports.d.ts",dts:"/**\n * An object with promises to indicate whether or not that transport is available.\n */\nexport declare const availableTransports: any;\n"},{name:"@airgap/beacon-dapp/dist/esm/utils/block-explorer.d.ts",dts:"import { Network, NetworkType } from '@airgap/beacon-types';\nexport declare abstract class BlockExplorer {\n readonly rpcUrls: {\n [key in NetworkType]: string;\n };\n constructor(rpcUrls: {\n [key in NetworkType]: string;\n });\n protected getLinkForNetwork(network: Network): Promise;\n /**\n * Return a blockexplorer link for an address\n *\n * @param address The address to be opened\n * @param network The network that was used\n */\n abstract getAddressLink(address: string, network: Network): Promise;\n /**\n * Return a blockexplorer link for a transaction hash\n *\n * @param transactionId The hash of the transaction\n * @param network The network that was used\n */\n abstract getTransactionLink(transactionId: string, network: Network): Promise;\n}\n"},{name:"@airgap/beacon-dapp/dist/esm/utils/get-instance.d.ts",dts:"import { DAppClient, DAppClientOptions } from '..';\n/** Get a DAppClient instance. Will make sure only one dAppClient exists. After the first instance has been created, the config will be ignored, unless \"reset\" is set */\nexport declare const getDAppClientInstance: (config: DAppClientOptions, reset?: boolean) => DAppClient;\n"},{name:"@airgap/beacon-dapp/dist/esm/utils/shorten-string.d.ts",dts:"export declare const shortenString: (text: string) => string;\n"},{name:"@airgap/beacon-dapp/dist/esm/utils/tzkt-blockexplorer.d.ts",dts:"import { Network, NetworkType } from '@airgap/beacon-types';\nimport { BlockExplorer } from './block-explorer';\nexport declare class TzktBlockExplorer extends BlockExplorer {\n readonly rpcUrls: {\n [key in NetworkType]: string;\n };\n constructor(rpcUrls?: {\n [key in NetworkType]: string;\n });\n getAddressLink(address: string, network: Network): Promise;\n getTransactionLink(transactionId: string, network: Network): Promise;\n}\n"},{name:"@airgap/beacon-dapp/dist/esm/beacon-message-events.d.ts",dts:"import { BeaconEvent } from './events';\nimport { BeaconMessageType } from '@airgap/beacon-types';\nexport declare const messageEvents: {\n [key in BeaconMessageType]: {\n sent: BeaconEvent;\n success: BeaconEvent;\n error: BeaconEvent;\n };\n};\n"},{name:"@airgap/beacon-dapp/dist/esm/events.d.ts",dts:'import { BlockExplorer, AlertButton } from \'@airgap/beacon-dapp\';\nimport { ExtendedPostMessagePairingResponse, PostMessagePairingRequest, ExtendedP2PPairingResponse, P2PPairingRequest, AccountInfo, ErrorResponse, PermissionResponseOutput, OperationResponseOutput, BroadcastResponseOutput, SignPayloadResponseOutput, Network, ConnectionContext, NetworkType, AcknowledgeResponse, WalletInfo, ExtendedWalletConnectPairingResponse, WalletConnectPairingRequest, AnalyticsInterface, ProofOfEventChallengeResponseOutput, SimulatedProofOfEventChallengeResponseOutput } from \'@airgap/beacon-types\';\nimport { Transport } from \'@airgap/beacon-core\';\n/**\n * The different events that can be emitted by the beacon-sdk\n */\nexport declare enum BeaconEvent {\n PERMISSION_REQUEST_SENT = "PERMISSION_REQUEST_SENT",\n PERMISSION_REQUEST_SUCCESS = "PERMISSION_REQUEST_SUCCESS",\n PERMISSION_REQUEST_ERROR = "PERMISSION_REQUEST_ERROR",\n PROOF_OF_EVENT_CHALLENGE_REQUEST_SENT = "PROOF_OF_EVENT_CHALLENGE_REQUEST_SENT",\n PROOF_OF_EVENT_CHALLENGE_REQUEST_SUCCESS = "PROOF_OF_EVENT_CHALLENGE_REQUEST_SUCCESS",\n PROOF_OF_EVENT_CHALLENGE_REQUEST_ERROR = "PROOF_OF_EVENT_CHALLENGE_REQUEST_ERROR",\n SIMULATED_PROOF_OF_EVENT_CHALLENGE_REQUEST_SENT = "SIMULATED_PROOF_OF_EVENT_CHALLENGE_REQUEST_SENT",\n SIMULATED_PROOF_OF_EVENT_CHALLENGE_REQUEST_SUCCESS = "SIMULATED_PROOF_OF_EVENT_CHALLENGE_REQUEST_SUCCESS",\n SIMULATED_PROOF_OF_EVENT_CHALLENGE_REQUEST_ERROR = "SIMULATED_PROOF_OF_EVENT_CHALLENGE_REQUEST_ERROR",\n OPERATION_REQUEST_SENT = "OPERATION_REQUEST_SENT",\n OPERATION_REQUEST_SUCCESS = "OPERATION_REQUEST_SUCCESS",\n OPERATION_REQUEST_ERROR = "OPERATION_REQUEST_ERROR",\n SIGN_REQUEST_SENT = "SIGN_REQUEST_SENT",\n SIGN_REQUEST_SUCCESS = "SIGN_REQUEST_SUCCESS",\n SIGN_REQUEST_ERROR = "SIGN_REQUEST_ERROR",\n BROADCAST_REQUEST_SENT = "BROADCAST_REQUEST_SENT",\n BROADCAST_REQUEST_SUCCESS = "BROADCAST_REQUEST_SUCCESS",\n BROADCAST_REQUEST_ERROR = "BROADCAST_REQUEST_ERROR",\n ACKNOWLEDGE_RECEIVED = "ACKNOWLEDGE_RECEIVED",\n LOCAL_RATE_LIMIT_REACHED = "LOCAL_RATE_LIMIT_REACHED",\n NO_PERMISSIONS = "NO_PERMISSIONS",\n ACTIVE_ACCOUNT_SET = "ACTIVE_ACCOUNT_SET",\n ACTIVE_TRANSPORT_SET = "ACTIVE_TRANSPORT_SET",\n SHOW_PREPARE = "SHOW_PREPARE",\n HIDE_UI = "HIDE_UI",\n INVALID_ACTIVE_ACCOUNT_STATE = "INVALID_ACTIVE_ACCOUNT_STATE",\n PAIR_INIT = "PAIR_INIT",\n PAIR_SUCCESS = "PAIR_SUCCESS",\n CHANNEL_CLOSED = "CHANNEL_CLOSED",\n INTERNAL_ERROR = "INTERNAL_ERROR",\n UNKNOWN = "UNKNOWN"\n}\nexport interface ExtraInfo {\n resetCallback?(): Promise;\n}\ninterface RequestSentInfo {\n extraInfo: ExtraInfo;\n walletInfo: WalletInfo;\n}\n/**\n * The type of the payload of the different BeaconEvents\n */\nexport interface BeaconEventType {\n [BeaconEvent.PERMISSION_REQUEST_SENT]: RequestSentInfo;\n [BeaconEvent.PERMISSION_REQUEST_SUCCESS]: {\n account: AccountInfo;\n output: PermissionResponseOutput;\n blockExplorer: BlockExplorer;\n connectionContext: ConnectionContext;\n walletInfo: WalletInfo;\n };\n [BeaconEvent.PERMISSION_REQUEST_ERROR]: {\n errorResponse: ErrorResponse;\n walletInfo: WalletInfo;\n };\n [BeaconEvent.PROOF_OF_EVENT_CHALLENGE_REQUEST_SENT]: RequestSentInfo;\n [BeaconEvent.PROOF_OF_EVENT_CHALLENGE_REQUEST_SUCCESS]: {\n account: AccountInfo;\n output: ProofOfEventChallengeResponseOutput;\n blockExplorer: BlockExplorer;\n connectionContext: ConnectionContext;\n walletInfo: WalletInfo;\n };\n [BeaconEvent.PROOF_OF_EVENT_CHALLENGE_REQUEST_ERROR]: {\n errorResponse: ErrorResponse;\n walletInfo: WalletInfo;\n };\n [BeaconEvent.SIMULATED_PROOF_OF_EVENT_CHALLENGE_REQUEST_SENT]: RequestSentInfo;\n [BeaconEvent.SIMULATED_PROOF_OF_EVENT_CHALLENGE_REQUEST_SUCCESS]: {\n account: AccountInfo;\n output: SimulatedProofOfEventChallengeResponseOutput;\n blockExplorer: BlockExplorer;\n connectionContext: ConnectionContext;\n walletInfo: WalletInfo;\n };\n [BeaconEvent.SIMULATED_PROOF_OF_EVENT_CHALLENGE_REQUEST_ERROR]: {\n errorResponse: ErrorResponse;\n walletInfo: WalletInfo;\n };\n [BeaconEvent.OPERATION_REQUEST_SENT]: RequestSentInfo;\n [BeaconEvent.OPERATION_REQUEST_SUCCESS]: {\n account: AccountInfo;\n output: OperationResponseOutput;\n blockExplorer: BlockExplorer;\n connectionContext: ConnectionContext;\n walletInfo: WalletInfo;\n };\n [BeaconEvent.OPERATION_REQUEST_ERROR]: {\n errorResponse: ErrorResponse;\n walletInfo: WalletInfo;\n errorMessages: Record>;\n };\n [BeaconEvent.SIGN_REQUEST_SENT]: RequestSentInfo;\n [BeaconEvent.SIGN_REQUEST_SUCCESS]: {\n output: SignPayloadResponseOutput;\n connectionContext: ConnectionContext;\n walletInfo: WalletInfo;\n };\n [BeaconEvent.SIGN_REQUEST_ERROR]: {\n errorResponse: ErrorResponse;\n walletInfo: WalletInfo;\n };\n [BeaconEvent.BROADCAST_REQUEST_SENT]: RequestSentInfo;\n [BeaconEvent.BROADCAST_REQUEST_SUCCESS]: {\n network: Network;\n output: BroadcastResponseOutput;\n blockExplorer: BlockExplorer;\n connectionContext: ConnectionContext;\n walletInfo: WalletInfo;\n };\n [BeaconEvent.BROADCAST_REQUEST_ERROR]: {\n errorResponse: ErrorResponse;\n walletInfo: WalletInfo;\n };\n [BeaconEvent.ACKNOWLEDGE_RECEIVED]: {\n message: AcknowledgeResponse;\n extraInfo: ExtraInfo;\n walletInfo: WalletInfo;\n };\n [BeaconEvent.LOCAL_RATE_LIMIT_REACHED]: undefined;\n [BeaconEvent.NO_PERMISSIONS]: undefined;\n [BeaconEvent.ACTIVE_ACCOUNT_SET]: AccountInfo;\n [BeaconEvent.ACTIVE_TRANSPORT_SET]: Transport;\n [BeaconEvent.INVALID_ACTIVE_ACCOUNT_STATE]: undefined;\n [BeaconEvent.SHOW_PREPARE]: {\n walletInfo?: WalletInfo;\n };\n [BeaconEvent.HIDE_UI]: (\'alert\' | \'toast\')[] | undefined;\n [BeaconEvent.PAIR_INIT]: {\n p2pPeerInfo: () => Promise;\n postmessagePeerInfo: () => Promise;\n walletConnectPeerInfo: () => Promise;\n networkType: NetworkType;\n abortedHandler?(): void;\n disclaimerText?: string;\n analytics: AnalyticsInterface;\n featuredWallets?: string[];\n };\n [BeaconEvent.PAIR_SUCCESS]: ExtendedPostMessagePairingResponse | ExtendedP2PPairingResponse | ExtendedWalletConnectPairingResponse;\n [BeaconEvent.CHANNEL_CLOSED]: string;\n [BeaconEvent.INTERNAL_ERROR]: {\n text: string;\n buttons?: AlertButton[];\n };\n [BeaconEvent.UNKNOWN]: undefined;\n}\nexport type BeaconEventHandlerFunction = (data: T, eventCallback?: AlertButton[]) => void | Promise;\n/**\n * The default event handlers\n */\nexport declare const defaultEventCallbacks: {\n [key in BeaconEvent]: BeaconEventHandlerFunction;\n};\n/**\n * @internalapi\n *\n * Handles beacon events\n */\nexport declare class BeaconEventHandler {\n private readonly callbackMap;\n constructor(eventsToOverride?: {\n [key in BeaconEvent]?: {\n handler: BeaconEventHandlerFunction;\n };\n }, overrideAll?: boolean);\n /**\n * A method to subscribe to a specific beacon event and register a callback\n *\n * @param event The event being emitted\n * @param eventCallback The callback that will be invoked\n */\n on(event: K, eventCallback: BeaconEventHandlerFunction): Promise;\n /**\n * Emit a beacon event\n *\n * @param event The event being emitted\n * @param data The data to be emit\n */\n emit(event: K, data?: BeaconEventType[K], eventCallback?: AlertButton[]): Promise;\n /**\n * Override beacon event default callbacks. This can be used to disable default alert/toast behaviour\n *\n * @param eventsToOverride An object with the events to override\n */\n private overrideDefaults;\n /**\n * Set all event callbacks to a specific handler.\n */\n private setAllHandlers;\n}\nexport {};\n'},{name:"@airgap/beacon-dapp/dist/esm/index.d.ts",dts:"export * from '@airgap/beacon-core';\nexport * from '@airgap/beacon-transport-matrix';\nexport * from '@airgap/beacon-transport-postmessage';\nexport * from '@airgap/beacon-types';\nexport * from '@airgap/beacon-utils';\nexport * from '@airgap/beacon-ui';\nimport { DAppClient } from './dapp-client/DAppClient';\nimport { DAppClientOptions } from './dapp-client/DAppClientOptions';\nimport { BeaconEvent, BeaconEventHandler, defaultEventCallbacks } from './events';\nimport { BlockExplorer } from './utils/block-explorer';\nimport { TzktBlockExplorer } from './utils/tzkt-blockexplorer';\nimport { getDAppClientInstance } from './utils/get-instance';\nexport { DAppClient, DAppClientOptions, getDAppClientInstance };\nexport { BeaconEvent, BeaconEventHandler, defaultEventCallbacks };\nexport { BlockExplorer, TzktBlockExplorer, TzktBlockExplorer as TezblockBlockExplorer };\n"},{name:"@airgap/beacon-sdk/index.d.ts",dts:"export * from '@airgap/beacon-blockchain-substrate';\nexport * from '@airgap/beacon-blockchain-tezos';\nexport * from '@airgap/beacon-core';\nexport * from '@airgap/beacon-dapp';\nexport * from '@airgap/beacon-transport-matrix';\nexport * from '@airgap/beacon-transport-postmessage';\nexport * from '@airgap/beacon-transport-walletconnect';\nexport * from '@airgap/beacon-types';\nexport * from '@airgap/beacon-utils';\nexport * from '@airgap/beacon-wallet';\n"},{name:"@airgap/beacon-transport-matrix/communication-client/P2PCommunicationClient.d.ts",dts:"import { MatrixClientEvent, MatrixClientEventType, MatrixClientEventMessageContent } from '../matrix-client/models/MatrixClientEvent';\nimport { Storage, P2PPairingRequest, ExtendedP2PPairingResponse, P2PPairingResponse, NodeDistributions } from '@airgap/beacon-types';\nimport { CommunicationClient } from '@airgap/beacon-core';\nimport { ExposedPromise } from '@airgap/beacon-utils';\nimport { KeyPair } from '@stablelib/ed25519';\ninterface BeaconInfoResponse {\n region: string;\n known_servers: string[];\n timestamp: number;\n}\n/**\n * @internalapi\n */\nexport declare class P2PCommunicationClient extends CommunicationClient {\n private readonly name;\n readonly replicationCount: number;\n private readonly storage;\n private readonly iconUrl?;\n private readonly appUrl?;\n private client;\n private initialEvent;\n private initialListener;\n private selectedRegion?;\n private readonly ENABLED_RELAY_SERVERS;\n relayServer: ExposedPromise<{\n server: string;\n timestamp: number;\n localTimestamp: number;\n }> | undefined;\n private readonly activeListeners;\n private readonly ignoredRooms;\n private loginCounter;\n constructor(name: string, keyPair: KeyPair, replicationCount: number, storage: Storage, matrixNodes?: NodeDistributions, iconUrl?: string | undefined, appUrl?: string | undefined);\n getPairingRequestInfo(): Promise;\n getPairingResponseInfo(request: P2PPairingRequest): Promise;\n /**\n * To get the fastest region, we can't simply do one request, because sometimes,\n * DNS and SSL handshakes make \"faster\" connections slower. So we need to do 2 requests\n * and check which request was the fastest after 1s.\n */\n findBestRegionAndGetServer(): Promise<{\n server: string;\n timestamp: number;\n } | undefined>;\n getRelayServer(): Promise<{\n server: string;\n timestamp: number;\n }>;\n getBeaconInfo(server: string): Promise;\n tryJoinRooms(roomId: string, retry?: number): Promise;\n start(): Promise;\n stop(): Promise;\n reset(): Promise;\n listenForEncryptedMessage(senderPublicKey: string, messageCallback: (message: string) => void): Promise;\n unsubscribeFromEncryptedMessage(senderPublicKey: string): Promise;\n unsubscribeFromEncryptedMessages(): Promise;\n sendMessage(message: string, peer: P2PPairingRequest | ExtendedP2PPairingResponse): Promise;\n updatePeerRoom(sender: string, roomId: string): Promise;\n deleteRoomIdFromRooms(roomId: string): Promise;\n listenForChannelOpening(messageCallback: (pairingResponse: ExtendedP2PPairingResponse) => void): Promise;\n waitForJoin(roomId: string, retry?: number): Promise;\n sendPairingResponse(pairingRequest: P2PPairingRequest): Promise;\n isTextMessage(content: MatrixClientEventMessageContent): content is MatrixClientEventMessageContent;\n updateRelayServer(sender: string): Promise;\n isChannelOpenMessage(content: MatrixClientEventMessageContent): Promise;\n isSender(event: MatrixClientEvent, senderPublicKey: string): Promise;\n private getRelevantRoom;\n private getRelevantJoinedRoom;\n}\nexport {};\n"},{name:"@airgap/beacon-transport-matrix/matrix-client/models/api/MatrixEventSend.d.ts",dts:"export interface MatrixEventSendRequest {\n content: any;\n}\nexport interface MatrixEventSendResponse {\n type?: 'event_send';\n event_id: string;\n}\n"},{name:"@airgap/beacon-transport-matrix/matrix-client/models/api/MatrixLogin.d.ts",dts:"export interface MatrixLoginRequest {\n type: 'm.login.password';\n identifier: {\n type: 'm.id.user';\n user: string;\n };\n password: string;\n device_id?: string;\n}\nexport interface MatrixLoginResponse {\n type?: 'login';\n user_id: string;\n device_id: string;\n access_token: string;\n}\n"},{name:"@airgap/beacon-transport-matrix/matrix-client/models/api/MatrixRequest.d.ts",dts:"import { MatrixLoginRequest, MatrixLoginResponse } from './MatrixLogin';\nimport { MatrixRoomCreateRequest, MatrixRoomCreateResponse } from './MatrixRoomCreate';\nimport { MatrixRoomInviteRequest, MatrixRoomInviteResponse } from './MatrixRoomInvite';\nimport { MatrixRoomJoinRequest, MatrixRoomJoinResponse } from './MatrixRoomJoin';\nimport { MatrixEventSendRequest, MatrixEventSendResponse } from './MatrixEventSend';\nimport { MatrixSyncResponse, MatrixSyncRequestParams } from './MatrixSync';\nexport type MatrixRequest = T extends MatrixLoginResponse ? MatrixLoginRequest : T extends MatrixRoomCreateResponse ? MatrixRoomCreateRequest : T extends MatrixRoomInviteResponse ? MatrixRoomInviteRequest : T extends MatrixRoomJoinResponse ? MatrixRoomJoinRequest : T extends MatrixEventSendResponse ? MatrixEventSendRequest : never;\nexport type MatrixRequestParams = T extends MatrixSyncResponse ? MatrixSyncRequestParams : never;\n"},{name:"@airgap/beacon-transport-matrix/matrix-client/models/api/MatrixRoomCreate.d.ts",dts:"export interface MatrixRoomCreateRequest {\n room_version?: '5';\n visibility?: 'public' | 'private';\n room_alias_name?: string;\n name?: string;\n topic?: string;\n invite?: string[];\n preset?: 'private_chat' | 'public_chat' | 'trusted_private_chat';\n is_direct?: boolean;\n}\nexport interface MatrixRoomCreateResponse {\n type?: 'room_create';\n room_id: string;\n}\n"},{name:"@airgap/beacon-transport-matrix/matrix-client/models/api/MatrixRoomInvite.d.ts",dts:"export interface MatrixRoomInviteRequest {\n user_id: string;\n}\nexport interface MatrixRoomInviteResponse {\n type?: 'room_invite';\n}\n"},{name:"@airgap/beacon-transport-matrix/matrix-client/models/api/MatrixRoomJoin.d.ts",dts:"export interface MatrixRoomJoinRequest {\n}\nexport interface MatrixRoomJoinResponse {\n type?: 'room_join';\n room_id: string;\n}\n"},{name:"@airgap/beacon-transport-matrix/matrix-client/models/api/MatrixSync.d.ts",dts:"import { MatrixStateEvent } from '../MatrixStateEvent';\nexport interface MatrixSyncJoinedRoom {\n state: {\n events: MatrixStateEvent[];\n };\n timeline: {\n events: MatrixStateEvent[];\n };\n}\nexport interface MatrixSyncInvitedRoom {\n invite_state: {\n events: MatrixStateEvent[];\n };\n}\nexport interface MatrixSyncLeftRoom {\n state: {\n events: MatrixStateEvent[];\n };\n timeline: {\n events: MatrixStateEvent[];\n };\n}\nexport interface MatrixSyncRooms {\n join?: {\n [key: string]: MatrixSyncJoinedRoom;\n };\n invite?: {\n [key: string]: MatrixSyncInvitedRoom;\n };\n leave?: {\n [key: string]: MatrixSyncLeftRoom;\n };\n}\nexport interface MatrixSyncRequestParams {\n timeout?: number;\n since?: string;\n}\nexport interface MatrixSyncResponse {\n type?: 'sync';\n next_batch: string;\n rooms?: MatrixSyncRooms;\n}\n"},{name:"@airgap/beacon-transport-matrix/matrix-client/models/MatrixClientEvent.d.ts",dts:'import { MatrixMessage } from \'./MatrixMessage\';\nexport declare enum MatrixClientEventType {\n INVITE = "invite",\n MESSAGE = "message"\n}\nexport type MatrixClientEventContent = T extends MatrixClientEventType.INVITE ? MatrixClientEventInviteContent : T extends MatrixClientEventType.MESSAGE ? MatrixClientEventMessageContent : never;\nexport interface MatrixClientEventInviteContent {\n roomId: string;\n members: string[];\n}\nexport interface MatrixClientEventMessageContent {\n roomId: string;\n message: MatrixMessage;\n}\nexport interface MatrixClientEvent {\n type: T;\n content: MatrixClientEventContent;\n timestamp?: number;\n}\n'},{name:"@airgap/beacon-transport-matrix/matrix-client/models/MatrixMessage.d.ts",dts:"import { MatrixStateEvent } from './MatrixStateEvent';\nexport declare enum MatrixMessageType {\n TEXT = \"m.text\"\n}\nexport declare class MatrixMessage {\n readonly type: MatrixMessageType;\n readonly sender: string;\n readonly content: T;\n readonly timestamp: number;\n /**\n * Construct a message from a message event\n *\n * @param event\n */\n static from(event: MatrixStateEvent): MatrixMessage | undefined;\n private constructor();\n}\n"},{name:"@airgap/beacon-transport-matrix/matrix-client/models/MatrixRoom.d.ts",dts:"import { MatrixSyncRooms } from './api/MatrixSync';\nimport { MatrixMessage } from './MatrixMessage';\nexport declare enum MatrixRoomStatus {\n UNKNOWN = 0,\n JOINED = 1,\n INVITED = 2,\n LEFT = 3\n}\nexport declare class MatrixRoom {\n readonly id: string;\n readonly status: MatrixRoomStatus;\n readonly members: string[];\n messages: MatrixMessage[];\n /**\n * Reconstruct rooms from a sync response\n *\n * @param roomSync\n */\n static fromSync(roomSync?: MatrixSyncRooms): MatrixRoom[];\n /**\n * Reconstruct a room from an ID or object\n *\n * @param roomOrId\n * @param status\n */\n static from(roomOrId: string | MatrixRoom, status?: MatrixRoomStatus): MatrixRoom;\n /**\n * Merge new and old state and remove duplicates\n *\n * @param newState\n * @param previousState\n */\n static merge(newState: MatrixRoom, previousState?: MatrixRoom): MatrixRoom;\n /**\n * Create a room from a join\n *\n * @param id\n * @param joined\n */\n private static fromJoined;\n /**\n * Create a room from an invite\n *\n * @param id\n * @param invited\n */\n private static fromInvited;\n /**\n * Create a room from a leave\n *\n * @param id\n * @param left\n */\n private static fromLeft;\n /**\n * Extract members from an event\n *\n * @param events\n */\n private static getMembersFromEvents;\n /**\n * Extract messages from an event\n *\n * @param events\n */\n private static getMessagesFromEvents;\n /**\n * Get unique events and remove duplicates\n *\n * @param events\n */\n private static getUniqueEvents;\n private constructor();\n}\n"},{name:"@airgap/beacon-transport-matrix/matrix-client/models/MatrixStateEvent.d.ts",dts:"import { MatrixMessageType } from './MatrixMessage';\nexport interface MatrixStateEventMessageText extends MatrixStateEventMessage {\n type: 'm.room.message';\n content: {\n msgtype: MatrixMessageType.TEXT;\n body: string;\n };\n}\nexport interface MatrixStateEventMessageContent {\n msgtype: string;\n body: any;\n [key: string]: any;\n}\nexport interface MatrixStateEventMessage extends MatrixStateEvent {\n type: 'm.room.message';\n content: MatrixStateEventMessageContent;\n}\nexport interface MatrixStateEvent {\n type: string;\n sender: string;\n content: unknown;\n event_id?: string;\n origin_server_ts: number;\n}\n"},{name:"@airgap/beacon-transport-matrix/matrix-client/services/MatrixEventService.d.ts",dts:"import { MatrixHttpClient } from '../MatrixHttpClient';\nimport { MatrixEventSendResponse } from '../models/api/MatrixEventSend';\nimport { MatrixSyncResponse } from '../models/api/MatrixSync';\nimport { MatrixStateEventMessageContent } from '../models/MatrixStateEvent';\ninterface MatrixScheduledEvent {\n accessToken: string;\n roomId: string;\n type: MatrixEventType;\n content: any;\n txnId: string;\n onSuccess(response: T): void;\n onError(error: unknown): void;\n}\ntype MatrixEventType = 'm.room.message';\nexport interface MatrixSyncOptions {\n syncToken?: string;\n pollingTimeout?: number;\n}\n/**\n * A service to help with matrix event management\n */\nexport declare class MatrixEventService {\n private readonly httpClient;\n private readonly cachedPromises;\n constructor(httpClient: MatrixHttpClient);\n /**\n * Get the latest state from the matrix node\n *\n * @param accessToken\n * @param options\n */\n sync(accessToken: string, options?: MatrixSyncOptions): Promise;\n /**\n * Send a message to a room\n *\n * @param accessToken\n * @param room\n * @param content\n * @param txnId\n */\n sendMessage(accessToken: string, roomId: string, content: MatrixStateEventMessageContent, txnId: string): Promise;\n /**\n * Schedules an event to be sent to the node\n *\n * @param event\n */\n scheduleEvent(event: MatrixScheduledEvent): void;\n /**\n * Send an event to the matrix node\n *\n * @param scheduledEvent\n */\n sendEvent(scheduledEvent: MatrixScheduledEvent): Promise;\n /**\n * Check the cache when interacting with the Matrix node, if there is an already ongoing call for the specified key, return its promise instead of duplicating the call.\n *\n * @param key\n * @param promiseProvider\n */\n private withCache;\n}\nexport {};\n"},{name:"@airgap/beacon-transport-matrix/matrix-client/services/MatrixRoomService.d.ts",dts:"import { MatrixHttpClient } from '../MatrixHttpClient';\nimport { MatrixRoom } from '../models/MatrixRoom';\nimport { MatrixRoomCreateRequest, MatrixRoomCreateResponse } from '../models/api/MatrixRoomCreate';\nimport { MatrixRoomInviteResponse } from '../models/api/MatrixRoomInvite';\nimport { MatrixRoomJoinResponse } from '../models/api/MatrixRoomJoin';\n/**\n * A service to help with matrix room management\n */\nexport declare class MatrixRoomService {\n private readonly httpClient;\n constructor(httpClient: MatrixHttpClient);\n /**\n * Create a room\n *\n * @param accessToken\n * @param config\n */\n createRoom(accessToken: string, config?: MatrixRoomCreateRequest): Promise;\n /**\n * Invite a user to a room\n *\n * @param accessToken\n * @param user\n * @param room\n */\n inviteToRoom(accessToken: string, user: string, room: MatrixRoom): Promise;\n /**\n * Join a specific room\n *\n * @param accessToken\n * @param room\n */\n joinRoom(accessToken: string, room: MatrixRoom): Promise;\n /**\n * Get all joined rooms\n *\n * @param accessToken\n */\n getJoinedRooms(accessToken: string): Promise;\n}\n"},{name:"@airgap/beacon-transport-matrix/matrix-client/services/MatrixUserService.d.ts",dts:"import { MatrixHttpClient } from '../MatrixHttpClient';\nimport { MatrixLoginResponse } from '../models/api/MatrixLogin';\nexport declare class MatrixUserService {\n private readonly httpClient;\n constructor(httpClient: MatrixHttpClient);\n /**\n * Log in to the matrix node with username and password\n *\n * @param user\n * @param password\n * @param deviceId\n */\n login(user: string, password: string, deviceId: string): Promise;\n}\n"},{name:"@airgap/beacon-transport-matrix/matrix-client/utils/events.d.ts",dts:"import { MatrixStateEvent, MatrixStateEventMessageText } from '../models/MatrixStateEvent';\n/**\n * Check if an event is a create event\n *\n * @param event MatrixStateEvent\n */\nexport declare const isCreateEvent: (event: MatrixStateEvent) => boolean;\n/**\n * Check if an event is a join event\n *\n * @param event MatrixStateEvent\n */\nexport declare const isJoinEvent: (event: MatrixStateEvent) => boolean;\n/**\n * Check if an event is a message event\n *\n * @param event MatrixStateEvent\n */\nexport declare const isMessageEvent: (event: MatrixStateEvent) => boolean;\n/**\n * Check if an event is a text message event\n *\n * @param event MatrixStateEvent\n */\nexport declare const isTextMessageEvent: (event: MatrixStateEvent) => event is MatrixStateEventMessageText;\n"},{name:"@airgap/beacon-transport-matrix/matrix-client/EventEmitter.d.ts",dts:"type Listener = (...args: any[]) => void;\nexport declare class EventEmitter {\n private readonly events;\n on(event: string, listener: Listener): () => void;\n removeListener(event: string, listener?: Listener): void;\n removeAllListeners(): void;\n emit(event: string, ...args: any[]): void;\n once(event: string, listener: Listener): () => void;\n}\nexport {};\n"},{name:"@airgap/beacon-transport-matrix/matrix-client/MatrixClient.d.ts",dts:"import { Storage } from '@airgap/beacon-types';\nimport { MatrixClientStore } from './MatrixClientStore';\nimport { MatrixHttpClient } from './MatrixHttpClient';\nimport { MatrixRoom } from './models/MatrixRoom';\nimport { MatrixRoomService } from './services/MatrixRoomService';\nimport { MatrixUserService } from './services/MatrixUserService';\nimport { MatrixEventService } from './services/MatrixEventService';\nimport { MatrixClientEventEmitter } from './MatrixClientEventEmitter';\nimport { MatrixClientEventType, MatrixClientEvent } from './models/MatrixClientEvent';\ninterface MatrixClientOptions {\n baseUrl: string;\n storage: Storage;\n}\ninterface MatrixLoginConfig {\n id: string;\n password: string;\n deviceId: string;\n}\n/**\n * The matrix client used to connect to the matrix network\n */\nexport declare class MatrixClient {\n private readonly store;\n private readonly eventEmitter;\n private readonly userService;\n private readonly roomService;\n private readonly eventService;\n private readonly httpClient;\n private isActive;\n private _isReady;\n constructor(store: MatrixClientStore, eventEmitter: MatrixClientEventEmitter, userService: MatrixUserService, roomService: MatrixRoomService, eventService: MatrixEventService, httpClient: MatrixHttpClient);\n /**\n * Create a matrix client based on the options provided\n *\n * @param config\n */\n static create(config: MatrixClientOptions): MatrixClient;\n /**\n * Return all the rooms we are currently part of\n */\n get joinedRooms(): Promise;\n /**\n * Return all the rooms to which we have received invitations\n */\n get invitedRooms(): Promise;\n /**\n * Return all the rooms that we left\n */\n get leftRooms(): Promise;\n /**\n * Initiate the connection to the matrix node and log in\n *\n * @param user\n */\n start(user: MatrixLoginConfig): Promise;\n isConnected(): Promise;\n /**\n * Stop all running requests\n */\n stop(): Promise;\n /**\n * Subscribe to new matrix events\n *\n * @param event\n * @param listener\n */\n subscribe(event: T, listener: (event: MatrixClientEvent) => void): void;\n /**\n * Unsubscribe from matrix events\n *\n * @param event\n * @param listener\n */\n unsubscribe(event: MatrixClientEventType, listener: (event: MatrixClientEvent) => void): void;\n /**\n * Unsubscribe from all matrix events of this type\n *\n * @param event\n * @param listener\n */\n unsubscribeAll(event: MatrixClientEventType): void;\n getRoomById(id: string): Promise;\n /**\n * Create a private room with the supplied members\n *\n * @param members Members that will be in the room\n */\n createTrustedPrivateRoom(...members: string[]): Promise;\n /**\n * Invite user to rooms\n *\n * @param user The user to be invited\n * @param roomsOrIds The rooms the user will be invited to\n */\n inviteToRooms(user: string, ...roomsOrIds: string[] | MatrixRoom[]): Promise;\n /**\n * Join rooms\n *\n * @param roomsOrIds\n */\n joinRooms(...roomsOrIds: string[] | MatrixRoom[]): Promise;\n /**\n * Send a text message\n *\n * @param roomOrId\n * @param message\n */\n sendTextMessage(roomId: string, message: string): Promise;\n /**\n * Poll the server to get the latest data and get notified of changes\n *\n * @param interval\n * @param onSyncSuccess\n * @param onSyncError\n */\n private poll;\n /**\n * Get state from server\n */\n private sync;\n /**\n * A helper method that makes sure an access token is provided\n *\n * @param name\n * @param action\n */\n private requiresAuthorization;\n /**\n * Create a transaction ID\n */\n private createTxnId;\n}\nexport {};\n"},{name:"@airgap/beacon-transport-matrix/matrix-client/MatrixClientEventEmitter.d.ts",dts:"import { EventEmitter } from './EventEmitter';\nimport { MatrixStateStore, MatrixStateUpdate } from './MatrixClientStore';\nexport declare class MatrixClientEventEmitter extends EventEmitter {\n private readonly eventEmitProviders;\n /**\n * This method is called every time the state is changed\n *\n * @param _oldState\n * @param _newState\n * @param stateChange\n */\n onStateChanged(_oldState: MatrixStateStore, _newState: MatrixStateStore, stateChange: Partial): void;\n /**\n * Emit the message if we have listeners registered for that type\n *\n * @param eventType\n * @param object\n */\n private emitIfEvent;\n /**\n * Emit a client event\n *\n * @param eventType\n * @param content\n */\n private emitClientEvent;\n /**\n * Check if event is an invite\n *\n * @param stateChange\n */\n private isInvite;\n /**\n * Emit an invite\n *\n * @param eventType\n * @param stateChange\n */\n private emitInvite;\n /**\n * Check if event is a message\n *\n * @param stateChange\n */\n private isMessage;\n /**\n * Emit an event to all rooms\n *\n * @param eventType\n * @param stateChange\n */\n private emitMessage;\n}\n"},{name:"@airgap/beacon-transport-matrix/matrix-client/MatrixClientStore.d.ts",dts:"import { MatrixRoom } from './models/MatrixRoom';\nimport { Storage } from '@airgap/beacon-types';\ntype OnStateChangedListener = (oldState: MatrixStateStore, newState: MatrixStateStore, stateChange: Partial) => void;\nexport interface MatrixState {\n isRunning: boolean;\n userId: string | undefined;\n deviceId: string | undefined;\n txnNo: number;\n accessToken: string | undefined;\n syncToken: string | undefined;\n pollingTimeout: number | undefined;\n pollingRetries: number;\n rooms: MatrixRoom[] | Record;\n}\nexport interface MatrixStateStore extends MatrixState {\n rooms: Record;\n}\nexport interface MatrixStateUpdate extends MatrixState {\n rooms: MatrixRoom[];\n}\n/**\n * The class managing the local state of matrix\n */\nexport declare class MatrixClientStore {\n private readonly storage;\n /**\n * The state of the matrix client\n */\n private state;\n /**\n * Listeners that will be called when the state changes\n */\n private readonly onStateChangedListeners;\n /**\n * A promise that resolves once the client is ready\n */\n private waitReadyPromise;\n constructor(storage: Storage);\n /**\n * Get an item from the state\n *\n * @param key\n */\n get(key: T): MatrixStateStore[T];\n /**\n * Get the room from an ID or room instance\n *\n * @param roomOrId\n */\n getRoom(roomOrId: string | MatrixRoom): MatrixRoom;\n /**\n * Update the state with a partial state\n *\n * @param stateUpdate\n */\n update(stateUpdate: Partial): Promise;\n /**\n * Register listeners that are called once the state has changed\n *\n * @param listener\n * @param subscribed\n */\n onStateChanged(listener: OnStateChangedListener, ...subscribed: (keyof MatrixState)[]): void;\n /**\n * A promise that resolves once the client is ready\n */\n private waitReady;\n /**\n * Read state from storage\n */\n private initFromStorage;\n /**\n * Prepare data before persisting it in storage\n *\n * @param toStore\n */\n private prepareData;\n /**\n * Persist state in storage\n *\n * @param stateUpdate\n */\n private updateStorage;\n /**\n * Set the state\n *\n * @param partialState\n */\n private setState;\n /**\n * Merge room records and eliminate duplicates\n *\n * @param oldRooms\n * @param _newRooms\n */\n private mergeRooms;\n /**\n * Notify listeners of state changes\n *\n * @param oldState\n * @param newState\n * @param stateChange\n */\n private notifyListeners;\n}\nexport {};\n"},{name:"@airgap/beacon-transport-matrix/matrix-client/MatrixHttpClient.d.ts",dts:"import { MatrixRequest, MatrixRequestParams } from './models/api/MatrixRequest';\ninterface HttpOptions {\n accessToken?: string;\n}\n/**\n * Handling the HTTP connection to the matrix synapse node\n */\nexport declare class MatrixHttpClient {\n private readonly baseUrl;\n private readonly cancelTokenSource;\n constructor(baseUrl: string);\n /**\n * Get data from the synapse node\n *\n * @param endpoint\n * @param options\n */\n get(endpoint: string, params?: MatrixRequestParams, options?: HttpOptions): Promise;\n /**\n * Post data to the synapse node\n *\n * @param endpoint\n * @param body\n * @param options\n * @param params\n */\n post(endpoint: string, body: MatrixRequest, options?: HttpOptions, params?: MatrixRequestParams): Promise;\n /**\n * Put data to the synapse node\n *\n * @param endpoint\n * @param body\n * @param options\n * @param params\n */\n put(endpoint: string, body: MatrixRequest, options?: HttpOptions, params?: MatrixRequestParams): Promise;\n cancelAllRequests(): Promise;\n /**\n * Send a request to the synapse node\n *\n * @param method\n * @param endpoint\n * @param config\n * @param requestParams\n * @param data\n */\n private send;\n /**\n * Get the headers based on the options object\n *\n * @param options\n */\n private getHeaders;\n /**\n * Get parameters\n *\n * @param _params\n */\n private getParams;\n /**\n * Construct API URL\n */\n private apiUrl;\n}\nexport {};\n"},{name:"@airgap/beacon-transport-matrix/P2PTransport.d.ts",dts:"import { Transport } from '@airgap/beacon-core';\nimport { ExtendedP2PPairingResponse, Storage, StorageKey, TransportType, P2PPairingRequest, NodeDistributions } from '@airgap/beacon-types';\nimport { P2PCommunicationClient } from '@airgap/beacon-transport-matrix';\nimport { KeyPair } from '@stablelib/ed25519';\n/**\n * @internalapi\n *\n *\n */\nexport declare class P2PTransport extends Transport {\n readonly type: TransportType;\n constructor(name: string, keyPair: KeyPair, storage: Storage, matrixNodes: NodeDistributions, storageKey: K, iconUrl?: string, appUrl?: string);\n static isAvailable(): Promise;\n connect(): Promise;\n disconnect(): Promise;\n startOpenChannelListener(): Promise;\n getPairingRequestInfo(): Promise;\n listen(publicKey: string): Promise;\n}\n"},{name:"@airgap/beacon-transport-matrix/index.d.ts",dts:"export { P2PCommunicationClient } from './communication-client/P2PCommunicationClient';\nexport { P2PTransport } from './P2PTransport';\n"},{name:"@airgap/beacon-transport-matrix/dist/esm/communication-client/P2PCommunicationClient.d.ts",dts:"import { MatrixClientEvent, MatrixClientEventType, MatrixClientEventMessageContent } from '../matrix-client/models/MatrixClientEvent';\nimport { Storage, P2PPairingRequest, ExtendedP2PPairingResponse, P2PPairingResponse, NodeDistributions } from '@airgap/beacon-types';\nimport { CommunicationClient } from '@airgap/beacon-core';\nimport { ExposedPromise } from '@airgap/beacon-utils';\nimport { KeyPair } from '@stablelib/ed25519';\ninterface BeaconInfoResponse {\n region: string;\n known_servers: string[];\n timestamp: number;\n}\n/**\n * @internalapi\n */\nexport declare class P2PCommunicationClient extends CommunicationClient {\n private readonly name;\n readonly replicationCount: number;\n private readonly storage;\n private readonly iconUrl?;\n private readonly appUrl?;\n private client;\n private initialEvent;\n private initialListener;\n private selectedRegion?;\n private readonly ENABLED_RELAY_SERVERS;\n relayServer: ExposedPromise<{\n server: string;\n timestamp: number;\n localTimestamp: number;\n }> | undefined;\n private readonly activeListeners;\n private readonly ignoredRooms;\n private loginCounter;\n constructor(name: string, keyPair: KeyPair, replicationCount: number, storage: Storage, matrixNodes?: NodeDistributions, iconUrl?: string | undefined, appUrl?: string | undefined);\n getPairingRequestInfo(): Promise;\n getPairingResponseInfo(request: P2PPairingRequest): Promise;\n /**\n * To get the fastest region, we can't simply do one request, because sometimes,\n * DNS and SSL handshakes make \"faster\" connections slower. So we need to do 2 requests\n * and check which request was the fastest after 1s.\n */\n findBestRegionAndGetServer(): Promise<{\n server: string;\n timestamp: number;\n } | undefined>;\n getRelayServer(): Promise<{\n server: string;\n timestamp: number;\n }>;\n getBeaconInfo(server: string): Promise;\n tryJoinRooms(roomId: string, retry?: number): Promise;\n start(): Promise;\n stop(): Promise;\n reset(): Promise;\n listenForEncryptedMessage(senderPublicKey: string, messageCallback: (message: string) => void): Promise;\n unsubscribeFromEncryptedMessage(senderPublicKey: string): Promise;\n unsubscribeFromEncryptedMessages(): Promise;\n sendMessage(message: string, peer: P2PPairingRequest | ExtendedP2PPairingResponse): Promise;\n updatePeerRoom(sender: string, roomId: string): Promise;\n deleteRoomIdFromRooms(roomId: string): Promise;\n listenForChannelOpening(messageCallback: (pairingResponse: ExtendedP2PPairingResponse) => void): Promise;\n waitForJoin(roomId: string, retry?: number): Promise;\n sendPairingResponse(pairingRequest: P2PPairingRequest): Promise;\n isTextMessage(content: MatrixClientEventMessageContent): content is MatrixClientEventMessageContent;\n updateRelayServer(sender: string): Promise;\n isChannelOpenMessage(content: MatrixClientEventMessageContent): Promise;\n isSender(event: MatrixClientEvent, senderPublicKey: string): Promise;\n private getRelevantRoom;\n private getRelevantJoinedRoom;\n}\nexport {};\n"},{name:"@airgap/beacon-transport-matrix/dist/esm/matrix-client/models/api/MatrixEventSend.d.ts",dts:"export interface MatrixEventSendRequest {\n content: any;\n}\nexport interface MatrixEventSendResponse {\n type?: 'event_send';\n event_id: string;\n}\n"},{name:"@airgap/beacon-transport-matrix/dist/esm/matrix-client/models/api/MatrixLogin.d.ts",dts:"export interface MatrixLoginRequest {\n type: 'm.login.password';\n identifier: {\n type: 'm.id.user';\n user: string;\n };\n password: string;\n device_id?: string;\n}\nexport interface MatrixLoginResponse {\n type?: 'login';\n user_id: string;\n device_id: string;\n access_token: string;\n}\n"},{name:"@airgap/beacon-transport-matrix/dist/esm/matrix-client/models/api/MatrixRequest.d.ts",dts:"import { MatrixLoginRequest, MatrixLoginResponse } from './MatrixLogin';\nimport { MatrixRoomCreateRequest, MatrixRoomCreateResponse } from './MatrixRoomCreate';\nimport { MatrixRoomInviteRequest, MatrixRoomInviteResponse } from './MatrixRoomInvite';\nimport { MatrixRoomJoinRequest, MatrixRoomJoinResponse } from './MatrixRoomJoin';\nimport { MatrixEventSendRequest, MatrixEventSendResponse } from './MatrixEventSend';\nimport { MatrixSyncResponse, MatrixSyncRequestParams } from './MatrixSync';\nexport type MatrixRequest = T extends MatrixLoginResponse ? MatrixLoginRequest : T extends MatrixRoomCreateResponse ? MatrixRoomCreateRequest : T extends MatrixRoomInviteResponse ? MatrixRoomInviteRequest : T extends MatrixRoomJoinResponse ? MatrixRoomJoinRequest : T extends MatrixEventSendResponse ? MatrixEventSendRequest : never;\nexport type MatrixRequestParams = T extends MatrixSyncResponse ? MatrixSyncRequestParams : never;\n"},{name:"@airgap/beacon-transport-matrix/dist/esm/matrix-client/models/api/MatrixRoomCreate.d.ts",dts:"export interface MatrixRoomCreateRequest {\n room_version?: '5';\n visibility?: 'public' | 'private';\n room_alias_name?: string;\n name?: string;\n topic?: string;\n invite?: string[];\n preset?: 'private_chat' | 'public_chat' | 'trusted_private_chat';\n is_direct?: boolean;\n}\nexport interface MatrixRoomCreateResponse {\n type?: 'room_create';\n room_id: string;\n}\n"},{name:"@airgap/beacon-transport-matrix/dist/esm/matrix-client/models/api/MatrixRoomInvite.d.ts",dts:"export interface MatrixRoomInviteRequest {\n user_id: string;\n}\nexport interface MatrixRoomInviteResponse {\n type?: 'room_invite';\n}\n"},{name:"@airgap/beacon-transport-matrix/dist/esm/matrix-client/models/api/MatrixRoomJoin.d.ts",dts:"export interface MatrixRoomJoinRequest {\n}\nexport interface MatrixRoomJoinResponse {\n type?: 'room_join';\n room_id: string;\n}\n"},{name:"@airgap/beacon-transport-matrix/dist/esm/matrix-client/models/api/MatrixSync.d.ts",dts:"import { MatrixStateEvent } from '../MatrixStateEvent';\nexport interface MatrixSyncJoinedRoom {\n state: {\n events: MatrixStateEvent[];\n };\n timeline: {\n events: MatrixStateEvent[];\n };\n}\nexport interface MatrixSyncInvitedRoom {\n invite_state: {\n events: MatrixStateEvent[];\n };\n}\nexport interface MatrixSyncLeftRoom {\n state: {\n events: MatrixStateEvent[];\n };\n timeline: {\n events: MatrixStateEvent[];\n };\n}\nexport interface MatrixSyncRooms {\n join?: {\n [key: string]: MatrixSyncJoinedRoom;\n };\n invite?: {\n [key: string]: MatrixSyncInvitedRoom;\n };\n leave?: {\n [key: string]: MatrixSyncLeftRoom;\n };\n}\nexport interface MatrixSyncRequestParams {\n timeout?: number;\n since?: string;\n}\nexport interface MatrixSyncResponse {\n type?: 'sync';\n next_batch: string;\n rooms?: MatrixSyncRooms;\n}\n"},{name:"@airgap/beacon-transport-matrix/dist/esm/matrix-client/models/MatrixClientEvent.d.ts",dts:'import { MatrixMessage } from \'./MatrixMessage\';\nexport declare enum MatrixClientEventType {\n INVITE = "invite",\n MESSAGE = "message"\n}\nexport type MatrixClientEventContent = T extends MatrixClientEventType.INVITE ? MatrixClientEventInviteContent : T extends MatrixClientEventType.MESSAGE ? MatrixClientEventMessageContent : never;\nexport interface MatrixClientEventInviteContent {\n roomId: string;\n members: string[];\n}\nexport interface MatrixClientEventMessageContent {\n roomId: string;\n message: MatrixMessage;\n}\nexport interface MatrixClientEvent {\n type: T;\n content: MatrixClientEventContent;\n timestamp?: number;\n}\n'},{name:"@airgap/beacon-transport-matrix/dist/esm/matrix-client/models/MatrixMessage.d.ts",dts:"import { MatrixStateEvent } from './MatrixStateEvent';\nexport declare enum MatrixMessageType {\n TEXT = \"m.text\"\n}\nexport declare class MatrixMessage {\n readonly type: MatrixMessageType;\n readonly sender: string;\n readonly content: T;\n readonly timestamp: number;\n /**\n * Construct a message from a message event\n *\n * @param event\n */\n static from(event: MatrixStateEvent): MatrixMessage | undefined;\n private constructor();\n}\n"},{name:"@airgap/beacon-transport-matrix/dist/esm/matrix-client/models/MatrixRoom.d.ts",dts:"import { MatrixSyncRooms } from './api/MatrixSync';\nimport { MatrixMessage } from './MatrixMessage';\nexport declare enum MatrixRoomStatus {\n UNKNOWN = 0,\n JOINED = 1,\n INVITED = 2,\n LEFT = 3\n}\nexport declare class MatrixRoom {\n readonly id: string;\n readonly status: MatrixRoomStatus;\n readonly members: string[];\n messages: MatrixMessage[];\n /**\n * Reconstruct rooms from a sync response\n *\n * @param roomSync\n */\n static fromSync(roomSync?: MatrixSyncRooms): MatrixRoom[];\n /**\n * Reconstruct a room from an ID or object\n *\n * @param roomOrId\n * @param status\n */\n static from(roomOrId: string | MatrixRoom, status?: MatrixRoomStatus): MatrixRoom;\n /**\n * Merge new and old state and remove duplicates\n *\n * @param newState\n * @param previousState\n */\n static merge(newState: MatrixRoom, previousState?: MatrixRoom): MatrixRoom;\n /**\n * Create a room from a join\n *\n * @param id\n * @param joined\n */\n private static fromJoined;\n /**\n * Create a room from an invite\n *\n * @param id\n * @param invited\n */\n private static fromInvited;\n /**\n * Create a room from a leave\n *\n * @param id\n * @param left\n */\n private static fromLeft;\n /**\n * Extract members from an event\n *\n * @param events\n */\n private static getMembersFromEvents;\n /**\n * Extract messages from an event\n *\n * @param events\n */\n private static getMessagesFromEvents;\n /**\n * Get unique events and remove duplicates\n *\n * @param events\n */\n private static getUniqueEvents;\n private constructor();\n}\n"},{name:"@airgap/beacon-transport-matrix/dist/esm/matrix-client/models/MatrixStateEvent.d.ts",dts:"import { MatrixMessageType } from './MatrixMessage';\nexport interface MatrixStateEventMessageText extends MatrixStateEventMessage {\n type: 'm.room.message';\n content: {\n msgtype: MatrixMessageType.TEXT;\n body: string;\n };\n}\nexport interface MatrixStateEventMessageContent {\n msgtype: string;\n body: any;\n [key: string]: any;\n}\nexport interface MatrixStateEventMessage extends MatrixStateEvent {\n type: 'm.room.message';\n content: MatrixStateEventMessageContent;\n}\nexport interface MatrixStateEvent {\n type: string;\n sender: string;\n content: unknown;\n event_id?: string;\n origin_server_ts: number;\n}\n"},{name:"@airgap/beacon-transport-matrix/dist/esm/matrix-client/services/MatrixEventService.d.ts",dts:"import { MatrixHttpClient } from '../MatrixHttpClient';\nimport { MatrixEventSendResponse } from '../models/api/MatrixEventSend';\nimport { MatrixSyncResponse } from '../models/api/MatrixSync';\nimport { MatrixStateEventMessageContent } from '../models/MatrixStateEvent';\ninterface MatrixScheduledEvent {\n accessToken: string;\n roomId: string;\n type: MatrixEventType;\n content: any;\n txnId: string;\n onSuccess(response: T): void;\n onError(error: unknown): void;\n}\ntype MatrixEventType = 'm.room.message';\nexport interface MatrixSyncOptions {\n syncToken?: string;\n pollingTimeout?: number;\n}\n/**\n * A service to help with matrix event management\n */\nexport declare class MatrixEventService {\n private readonly httpClient;\n private readonly cachedPromises;\n constructor(httpClient: MatrixHttpClient);\n /**\n * Get the latest state from the matrix node\n *\n * @param accessToken\n * @param options\n */\n sync(accessToken: string, options?: MatrixSyncOptions): Promise;\n /**\n * Send a message to a room\n *\n * @param accessToken\n * @param room\n * @param content\n * @param txnId\n */\n sendMessage(accessToken: string, roomId: string, content: MatrixStateEventMessageContent, txnId: string): Promise;\n /**\n * Schedules an event to be sent to the node\n *\n * @param event\n */\n scheduleEvent(event: MatrixScheduledEvent): void;\n /**\n * Send an event to the matrix node\n *\n * @param scheduledEvent\n */\n sendEvent(scheduledEvent: MatrixScheduledEvent): Promise;\n /**\n * Check the cache when interacting with the Matrix node, if there is an already ongoing call for the specified key, return its promise instead of duplicating the call.\n *\n * @param key\n * @param promiseProvider\n */\n private withCache;\n}\nexport {};\n"},{name:"@airgap/beacon-transport-matrix/dist/esm/matrix-client/services/MatrixRoomService.d.ts",dts:"import { MatrixHttpClient } from '../MatrixHttpClient';\nimport { MatrixRoom } from '../models/MatrixRoom';\nimport { MatrixRoomCreateRequest, MatrixRoomCreateResponse } from '../models/api/MatrixRoomCreate';\nimport { MatrixRoomInviteResponse } from '../models/api/MatrixRoomInvite';\nimport { MatrixRoomJoinResponse } from '../models/api/MatrixRoomJoin';\n/**\n * A service to help with matrix room management\n */\nexport declare class MatrixRoomService {\n private readonly httpClient;\n constructor(httpClient: MatrixHttpClient);\n /**\n * Create a room\n *\n * @param accessToken\n * @param config\n */\n createRoom(accessToken: string, config?: MatrixRoomCreateRequest): Promise;\n /**\n * Invite a user to a room\n *\n * @param accessToken\n * @param user\n * @param room\n */\n inviteToRoom(accessToken: string, user: string, room: MatrixRoom): Promise;\n /**\n * Join a specific room\n *\n * @param accessToken\n * @param room\n */\n joinRoom(accessToken: string, room: MatrixRoom): Promise;\n /**\n * Get all joined rooms\n *\n * @param accessToken\n */\n getJoinedRooms(accessToken: string): Promise;\n}\n"},{name:"@airgap/beacon-transport-matrix/dist/esm/matrix-client/services/MatrixUserService.d.ts",dts:"import { MatrixHttpClient } from '../MatrixHttpClient';\nimport { MatrixLoginResponse } from '../models/api/MatrixLogin';\nexport declare class MatrixUserService {\n private readonly httpClient;\n constructor(httpClient: MatrixHttpClient);\n /**\n * Log in to the matrix node with username and password\n *\n * @param user\n * @param password\n * @param deviceId\n */\n login(user: string, password: string, deviceId: string): Promise;\n}\n"},{name:"@airgap/beacon-transport-matrix/dist/esm/matrix-client/utils/events.d.ts",dts:"import { MatrixStateEvent, MatrixStateEventMessageText } from '../models/MatrixStateEvent';\n/**\n * Check if an event is a create event\n *\n * @param event MatrixStateEvent\n */\nexport declare const isCreateEvent: (event: MatrixStateEvent) => boolean;\n/**\n * Check if an event is a join event\n *\n * @param event MatrixStateEvent\n */\nexport declare const isJoinEvent: (event: MatrixStateEvent) => boolean;\n/**\n * Check if an event is a message event\n *\n * @param event MatrixStateEvent\n */\nexport declare const isMessageEvent: (event: MatrixStateEvent) => boolean;\n/**\n * Check if an event is a text message event\n *\n * @param event MatrixStateEvent\n */\nexport declare const isTextMessageEvent: (event: MatrixStateEvent) => event is MatrixStateEventMessageText;\n"},{name:"@airgap/beacon-transport-matrix/dist/esm/matrix-client/EventEmitter.d.ts",dts:"type Listener = (...args: any[]) => void;\nexport declare class EventEmitter {\n private readonly events;\n on(event: string, listener: Listener): () => void;\n removeListener(event: string, listener?: Listener): void;\n removeAllListeners(): void;\n emit(event: string, ...args: any[]): void;\n once(event: string, listener: Listener): () => void;\n}\nexport {};\n"},{name:"@airgap/beacon-transport-matrix/dist/esm/matrix-client/MatrixClient.d.ts",dts:"import { Storage } from '@airgap/beacon-types';\nimport { MatrixClientStore } from './MatrixClientStore';\nimport { MatrixHttpClient } from './MatrixHttpClient';\nimport { MatrixRoom } from './models/MatrixRoom';\nimport { MatrixRoomService } from './services/MatrixRoomService';\nimport { MatrixUserService } from './services/MatrixUserService';\nimport { MatrixEventService } from './services/MatrixEventService';\nimport { MatrixClientEventEmitter } from './MatrixClientEventEmitter';\nimport { MatrixClientEventType, MatrixClientEvent } from './models/MatrixClientEvent';\ninterface MatrixClientOptions {\n baseUrl: string;\n storage: Storage;\n}\ninterface MatrixLoginConfig {\n id: string;\n password: string;\n deviceId: string;\n}\n/**\n * The matrix client used to connect to the matrix network\n */\nexport declare class MatrixClient {\n private readonly store;\n private readonly eventEmitter;\n private readonly userService;\n private readonly roomService;\n private readonly eventService;\n private readonly httpClient;\n private isActive;\n private _isReady;\n constructor(store: MatrixClientStore, eventEmitter: MatrixClientEventEmitter, userService: MatrixUserService, roomService: MatrixRoomService, eventService: MatrixEventService, httpClient: MatrixHttpClient);\n /**\n * Create a matrix client based on the options provided\n *\n * @param config\n */\n static create(config: MatrixClientOptions): MatrixClient;\n /**\n * Return all the rooms we are currently part of\n */\n get joinedRooms(): Promise;\n /**\n * Return all the rooms to which we have received invitations\n */\n get invitedRooms(): Promise;\n /**\n * Return all the rooms that we left\n */\n get leftRooms(): Promise;\n /**\n * Initiate the connection to the matrix node and log in\n *\n * @param user\n */\n start(user: MatrixLoginConfig): Promise;\n isConnected(): Promise;\n /**\n * Stop all running requests\n */\n stop(): Promise;\n /**\n * Subscribe to new matrix events\n *\n * @param event\n * @param listener\n */\n subscribe(event: T, listener: (event: MatrixClientEvent) => void): void;\n /**\n * Unsubscribe from matrix events\n *\n * @param event\n * @param listener\n */\n unsubscribe(event: MatrixClientEventType, listener: (event: MatrixClientEvent) => void): void;\n /**\n * Unsubscribe from all matrix events of this type\n *\n * @param event\n * @param listener\n */\n unsubscribeAll(event: MatrixClientEventType): void;\n getRoomById(id: string): Promise;\n /**\n * Create a private room with the supplied members\n *\n * @param members Members that will be in the room\n */\n createTrustedPrivateRoom(...members: string[]): Promise;\n /**\n * Invite user to rooms\n *\n * @param user The user to be invited\n * @param roomsOrIds The rooms the user will be invited to\n */\n inviteToRooms(user: string, ...roomsOrIds: string[] | MatrixRoom[]): Promise;\n /**\n * Join rooms\n *\n * @param roomsOrIds\n */\n joinRooms(...roomsOrIds: string[] | MatrixRoom[]): Promise;\n /**\n * Send a text message\n *\n * @param roomOrId\n * @param message\n */\n sendTextMessage(roomId: string, message: string): Promise;\n /**\n * Poll the server to get the latest data and get notified of changes\n *\n * @param interval\n * @param onSyncSuccess\n * @param onSyncError\n */\n private poll;\n /**\n * Get state from server\n */\n private sync;\n /**\n * A helper method that makes sure an access token is provided\n *\n * @param name\n * @param action\n */\n private requiresAuthorization;\n /**\n * Create a transaction ID\n */\n private createTxnId;\n}\nexport {};\n"},{name:"@airgap/beacon-transport-matrix/dist/esm/matrix-client/MatrixClientEventEmitter.d.ts",dts:"import { EventEmitter } from './EventEmitter';\nimport { MatrixStateStore, MatrixStateUpdate } from './MatrixClientStore';\nexport declare class MatrixClientEventEmitter extends EventEmitter {\n private readonly eventEmitProviders;\n /**\n * This method is called every time the state is changed\n *\n * @param _oldState\n * @param _newState\n * @param stateChange\n */\n onStateChanged(_oldState: MatrixStateStore, _newState: MatrixStateStore, stateChange: Partial): void;\n /**\n * Emit the message if we have listeners registered for that type\n *\n * @param eventType\n * @param object\n */\n private emitIfEvent;\n /**\n * Emit a client event\n *\n * @param eventType\n * @param content\n */\n private emitClientEvent;\n /**\n * Check if event is an invite\n *\n * @param stateChange\n */\n private isInvite;\n /**\n * Emit an invite\n *\n * @param eventType\n * @param stateChange\n */\n private emitInvite;\n /**\n * Check if event is a message\n *\n * @param stateChange\n */\n private isMessage;\n /**\n * Emit an event to all rooms\n *\n * @param eventType\n * @param stateChange\n */\n private emitMessage;\n}\n"},{name:"@airgap/beacon-transport-matrix/dist/esm/matrix-client/MatrixClientStore.d.ts",dts:"import { MatrixRoom } from './models/MatrixRoom';\nimport { Storage } from '@airgap/beacon-types';\ntype OnStateChangedListener = (oldState: MatrixStateStore, newState: MatrixStateStore, stateChange: Partial) => void;\nexport interface MatrixState {\n isRunning: boolean;\n userId: string | undefined;\n deviceId: string | undefined;\n txnNo: number;\n accessToken: string | undefined;\n syncToken: string | undefined;\n pollingTimeout: number | undefined;\n pollingRetries: number;\n rooms: MatrixRoom[] | Record;\n}\nexport interface MatrixStateStore extends MatrixState {\n rooms: Record;\n}\nexport interface MatrixStateUpdate extends MatrixState {\n rooms: MatrixRoom[];\n}\n/**\n * The class managing the local state of matrix\n */\nexport declare class MatrixClientStore {\n private readonly storage;\n /**\n * The state of the matrix client\n */\n private state;\n /**\n * Listeners that will be called when the state changes\n */\n private readonly onStateChangedListeners;\n /**\n * A promise that resolves once the client is ready\n */\n private waitReadyPromise;\n constructor(storage: Storage);\n /**\n * Get an item from the state\n *\n * @param key\n */\n get(key: T): MatrixStateStore[T];\n /**\n * Get the room from an ID or room instance\n *\n * @param roomOrId\n */\n getRoom(roomOrId: string | MatrixRoom): MatrixRoom;\n /**\n * Update the state with a partial state\n *\n * @param stateUpdate\n */\n update(stateUpdate: Partial): Promise;\n /**\n * Register listeners that are called once the state has changed\n *\n * @param listener\n * @param subscribed\n */\n onStateChanged(listener: OnStateChangedListener, ...subscribed: (keyof MatrixState)[]): void;\n /**\n * A promise that resolves once the client is ready\n */\n private waitReady;\n /**\n * Read state from storage\n */\n private initFromStorage;\n /**\n * Prepare data before persisting it in storage\n *\n * @param toStore\n */\n private prepareData;\n /**\n * Persist state in storage\n *\n * @param stateUpdate\n */\n private updateStorage;\n /**\n * Set the state\n *\n * @param partialState\n */\n private setState;\n /**\n * Merge room records and eliminate duplicates\n *\n * @param oldRooms\n * @param _newRooms\n */\n private mergeRooms;\n /**\n * Notify listeners of state changes\n *\n * @param oldState\n * @param newState\n * @param stateChange\n */\n private notifyListeners;\n}\nexport {};\n"},{name:"@airgap/beacon-transport-matrix/dist/esm/matrix-client/MatrixHttpClient.d.ts",dts:"import { MatrixRequest, MatrixRequestParams } from './models/api/MatrixRequest';\ninterface HttpOptions {\n accessToken?: string;\n}\n/**\n * Handling the HTTP connection to the matrix synapse node\n */\nexport declare class MatrixHttpClient {\n private readonly baseUrl;\n private readonly cancelTokenSource;\n constructor(baseUrl: string);\n /**\n * Get data from the synapse node\n *\n * @param endpoint\n * @param options\n */\n get(endpoint: string, params?: MatrixRequestParams, options?: HttpOptions): Promise;\n /**\n * Post data to the synapse node\n *\n * @param endpoint\n * @param body\n * @param options\n * @param params\n */\n post(endpoint: string, body: MatrixRequest, options?: HttpOptions, params?: MatrixRequestParams): Promise;\n /**\n * Put data to the synapse node\n *\n * @param endpoint\n * @param body\n * @param options\n * @param params\n */\n put(endpoint: string, body: MatrixRequest, options?: HttpOptions, params?: MatrixRequestParams): Promise;\n cancelAllRequests(): Promise;\n /**\n * Send a request to the synapse node\n *\n * @param method\n * @param endpoint\n * @param config\n * @param requestParams\n * @param data\n */\n private send;\n /**\n * Get the headers based on the options object\n *\n * @param options\n */\n private getHeaders;\n /**\n * Get parameters\n *\n * @param _params\n */\n private getParams;\n /**\n * Construct API URL\n */\n private apiUrl;\n}\nexport {};\n"},{name:"@airgap/beacon-transport-matrix/dist/esm/P2PTransport.d.ts",dts:"import { Transport } from '@airgap/beacon-core';\nimport { ExtendedP2PPairingResponse, Storage, StorageKey, TransportType, P2PPairingRequest, NodeDistributions } from '@airgap/beacon-types';\nimport { P2PCommunicationClient } from '@airgap/beacon-transport-matrix';\nimport { KeyPair } from '@stablelib/ed25519';\n/**\n * @internalapi\n *\n *\n */\nexport declare class P2PTransport extends Transport {\n readonly type: TransportType;\n constructor(name: string, keyPair: KeyPair, storage: Storage, matrixNodes: NodeDistributions, storageKey: K, iconUrl?: string, appUrl?: string);\n static isAvailable(): Promise;\n connect(): Promise;\n disconnect(): Promise;\n startOpenChannelListener(): Promise;\n getPairingRequestInfo(): Promise;\n listen(publicKey: string): Promise;\n}\n"},{name:"@airgap/beacon-transport-matrix/dist/esm/index.d.ts",dts:"export { P2PCommunicationClient } from './communication-client/P2PCommunicationClient';\nexport { P2PTransport } from './P2PTransport';\n"},{name:"@airgap/beacon-transport-postmessage/PostMessageClient.d.ts",dts:"import { MessageBasedClient } from '@airgap/beacon-core';\nimport { ConnectionContext, ExtendedPostMessagePairingResponse, EncryptedExtensionMessage, PostMessagePairingRequest } from '@airgap/beacon-types';\n/**\n * @internalapi\n *\n *\n */\nexport declare class PostMessageClient extends MessageBasedClient {\n protected readonly activeListeners: Map void>;\n init(): Promise;\n listenForEncryptedMessage(senderPublicKey: string, messageCallback: (message: string, context: ConnectionContext) => void): Promise;\n sendMessage(message: string, peer: PostMessagePairingRequest | ExtendedPostMessagePairingResponse): Promise;\n listenForChannelOpening(messageCallback: (pairingResponse: ExtendedPostMessagePairingResponse) => void): Promise;\n sendPairingRequest(id: string): Promise;\n isChannelOpenMessage(message: any): Promise;\n private subscribeToMessages;\n}\n"},{name:"@airgap/beacon-transport-postmessage/PostMessageTransport.d.ts",dts:"import { PostMessagePairingRequest, ExtendedPostMessagePairingResponse, Extension, StorageKey, TransportType } from '@airgap/beacon-types';\nimport { Storage } from '@airgap/beacon-types';\nimport { Transport } from '@airgap/beacon-core';\nimport { PostMessageClient } from './PostMessageClient';\nimport { KeyPair } from '@stablelib/ed25519';\n/**\n * @internalapi\n *\n *\n */\nexport declare class PostMessageTransport extends Transport {\n readonly type: TransportType;\n constructor(name: string, keyPair: KeyPair, storage: Storage, storageKey: K);\n static isAvailable(): Promise;\n static getAvailableExtensions(): Promise;\n private static listenForExtensions;\n connect(): Promise;\n startOpenChannelListener(): Promise;\n getPairingRequestInfo(): Promise;\n listen(publicKey: string): Promise;\n}\n"},{name:"@airgap/beacon-transport-postmessage/index.d.ts",dts:"export { PostMessageTransport } from './PostMessageTransport';\n"},{name:"@airgap/beacon-transport-postmessage/dist/esm/PostMessageClient.d.ts",dts:"import { MessageBasedClient } from '@airgap/beacon-core';\nimport { ConnectionContext, ExtendedPostMessagePairingResponse, EncryptedExtensionMessage, PostMessagePairingRequest } from '@airgap/beacon-types';\n/**\n * @internalapi\n *\n *\n */\nexport declare class PostMessageClient extends MessageBasedClient {\n protected readonly activeListeners: Map void>;\n init(): Promise;\n listenForEncryptedMessage(senderPublicKey: string, messageCallback: (message: string, context: ConnectionContext) => void): Promise;\n sendMessage(message: string, peer: PostMessagePairingRequest | ExtendedPostMessagePairingResponse): Promise;\n listenForChannelOpening(messageCallback: (pairingResponse: ExtendedPostMessagePairingResponse) => void): Promise;\n sendPairingRequest(id: string): Promise;\n isChannelOpenMessage(message: any): Promise;\n private subscribeToMessages;\n}\n"},{name:"@airgap/beacon-transport-postmessage/dist/esm/PostMessageTransport.d.ts",dts:"import { PostMessagePairingRequest, ExtendedPostMessagePairingResponse, Extension, StorageKey, TransportType } from '@airgap/beacon-types';\nimport { Storage } from '@airgap/beacon-types';\nimport { Transport } from '@airgap/beacon-core';\nimport { PostMessageClient } from './PostMessageClient';\nimport { KeyPair } from '@stablelib/ed25519';\n/**\n * @internalapi\n *\n *\n */\nexport declare class PostMessageTransport extends Transport {\n readonly type: TransportType;\n constructor(name: string, keyPair: KeyPair, storage: Storage, storageKey: K);\n static isAvailable(): Promise;\n static getAvailableExtensions(): Promise;\n private static listenForExtensions;\n connect(): Promise;\n startOpenChannelListener(): Promise;\n getPairingRequestInfo(): Promise;\n listen(publicKey: string): Promise;\n}\n"},{name:"@airgap/beacon-transport-postmessage/dist/esm/index.d.ts",dts:"export { PostMessageTransport } from './PostMessageTransport';\n"},{name:"@airgap/beacon-transport-walletconnect/communication-client/WalletConnectCommunicationClient.d.ts",dts:'import { CommunicationClient, WCStorage } from \'@airgap/beacon-core\';\nimport Client from \'@walletconnect/sign-client\';\nimport { SessionTypes, SignClientTypes } from \'@walletconnect/types\';\nimport { ExtendedWalletConnectPairingRequest, ExtendedWalletConnectPairingResponse, NetworkType, OperationRequest, PermissionRequest, SignPayloadRequest } from \'@airgap/beacon-types\';\nexport interface PermissionScopeParam {\n networks: NetworkType[];\n methods: PermissionScopeMethods[];\n events?: PermissionScopeEvents[];\n}\nexport declare enum PermissionScopeMethods {\n GET_ACCOUNTS = "tezos_getAccounts",\n OPERATION_REQUEST = "tezos_send",\n SIGN = "tezos_sign"\n}\nexport declare enum PermissionScopeEvents {\n CHAIN_CHANGED = "chainChanged",\n ACCOUNTS_CHANGED = "accountsChanged",\n REQUEST_ACKNOWLEDGED = "requestAcknowledged"\n}\nexport declare class WalletConnectCommunicationClient extends CommunicationClient {\n private wcOptions;\n protected readonly activeListeners: Map void>;\n protected readonly channelOpeningListeners: Map void>;\n private static instance;\n signClient: Client | undefined;\n storage: WCStorage;\n private session;\n private activeAccount;\n private activeNetwork;\n readonly disconnectionEvents: Set;\n private pingInterval;\n /**\n * this queue stores each active message id\n * [0] newest message\n * [length - 1] oldest message\n */\n private messageIds;\n constructor(wcOptions: {\n network: NetworkType;\n opts: SignClientTypes.Options;\n });\n static getInstance(wcOptions: {\n network: NetworkType;\n opts: SignClientTypes.Options;\n }): WalletConnectCommunicationClient;\n private getTopicFromSession;\n listenForEncryptedMessage(senderPublicKey: string, messageCallback: (message: string) => void): Promise;\n listenForChannelOpening(messageCallback: (pairingResponse: ExtendedWalletConnectPairingResponse) => void): Promise;\n /**\n * WC Sign client doesn\'t sync between intances, meaning that a dApp signClient instance state may\n * differ from a wallet state\n */\n private refreshState;\n private clearEvents;\n private abortErrorBuilder;\n private onStorageMessageHandler;\n private onStorageErrorHandler;\n unsubscribeFromEncryptedMessages(): Promise;\n unsubscribeFromEncryptedMessage(_senderPublicKey: string): Promise;\n private closeSignClient;\n private ping;\n private checkWalletReadiness;\n sendMessage(_message: string, _peer?: any): Promise;\n private fetchAccounts;\n private notifyListenersWithPermissionResponse;\n requestPermissions(message: PermissionRequest): Promise;\n /**\n * @description Once the session is establish, send payload to be approved and signed by the wallet.\n * @error MissingRequiredScope is thrown if permission to sign payload was not granted\n */\n signPayload(signPayloadRequest: SignPayloadRequest): Promise;\n /**\n * @description Once the session is established, send Tezos operations to be approved, signed and inject by the wallet.\n * @error MissingRequiredScope is thrown if permission to send operation was not granted\n */\n sendOperations(operationRequest: OperationRequest): Promise;\n private isMobileSesion;\n /**\n * Function used to fix appSwitching with web wallets when pairing through \'Other wallet flow\'\n * @param session the newly created session\n */\n private updateStorageWallet;\n init(forceNewConnection?: boolean): Promise<{\n uri: string;\n topic: string;\n } | undefined>;\n close(): Promise;\n private subscribeToSessionEvents;\n private acknowledgeRequest;\n private updateActiveAccount;\n private disconnect;\n private onPairingClosed;\n private onSessionClosed;\n getPairingRequestInfo(): Promise;\n private closePairings;\n private closeSessions;\n private openSession;\n private permissionScopeParamsToNamespaces;\n private validateReceivedNamespace;\n private validateMethods;\n private validateEvents;\n private validateAccounts;\n closeActiveSession(account: string, notify?: boolean): Promise;\n private validateNetworkAndAccount;\n /**\n * @description Access the active network\n * @error ActiveNetworkUnspecified thorwn when there are multiple Tezos networks in the session and none is set as the active one\n */\n getActiveNetwork(): string;\n private setDefaultAccountAndNetwork;\n /**\n * @description Return all connected accounts from the active session\n * @error NotConnected if no active session\n */\n getAccounts(): string[];\n /**\n * @description Return all networks from the namespace of the active session\n * @error NotConnected if no active session\n */\n getNetworks(): string[];\n private getTezosNamespace;\n private getPermittedMethods;\n private getPermittedNetwork;\n private getTezosRequiredNamespace;\n private notifyListeners;\n currentSession(): SessionTypes.Struct | undefined;\n private getSignClient;\n private getSession;\n /**\n * @description Access the public key hash of the active account\n * @error ActiveAccountUnspecified thrown when there are multiple Tezos account in the session and none is set as the active one\n */\n getPKH(): Promise;\n private clearState;\n}\n'},{name:"@airgap/beacon-transport-walletconnect/WalletConnectTransport.d.ts",dts:"import { KeyPair } from '@stablelib/ed25519';\nimport { WalletConnectCommunicationClient } from './communication-client/WalletConnectCommunicationClient';\nimport { Storage, ExtendedWalletConnectPairingResponse, StorageKey, WalletConnectPairingRequest, NetworkType, TransportType } from '@airgap/beacon-types';\nimport { Transport } from '@airgap/beacon-core';\nimport { SignClientTypes } from '@walletconnect/types';\n/**\n * @internalapi\n *\n *\n */\nexport declare class WalletConnectTransport extends Transport {\n private wcOptions;\n readonly type: TransportType;\n constructor(name: string, _keyPair: KeyPair, storage: Storage, storageKey: K, wcOptions: {\n network: NetworkType;\n opts: SignClientTypes.Options;\n });\n static isAvailable(): Promise;\n connect(): Promise;\n wasDisconnectedByWallet(): boolean;\n hasPairings(): Promise;\n hasSessions(): Promise;\n /**\n * Forcefully updates any DApps running on the same session\n * Typical use case: localStorage changes to reflect to indexDB\n * @param type the message type\n */\n forceUpdate(type: string): void;\n getPeers(): Promise;\n disconnect(): Promise;\n startOpenChannelListener(): Promise;\n doClientCleanup(): Promise;\n getPairingRequestInfo(): Promise;\n listen(publicKey: string): Promise;\n}\n"},{name:"@airgap/beacon-transport-walletconnect/error.d.ts",dts:"import { PermissionScopeMethods } from './communication-client/WalletConnectCommunicationClient';\n/**\n * @category Error\n * @description Error that indicates the wallet returned an invalid namespace\n */\nexport declare class InvalidReceivedSessionNamespace extends Error {\n messageWc: string;\n codeWc: number;\n data?: string | string[] | undefined;\n name: string;\n constructor(messageWc: string, codeWc: number, type: 'invalid' | 'incomplete', data?: string | string[] | undefined);\n}\n/**\n * @category Error\n * @description Error that indicates there is no active session\n */\nexport declare class NotConnected extends Error {\n name: string;\n constructor();\n}\n/**\n * @category Error\n * @description Error that indicates the session is invalid\n */\nexport declare class InvalidSession extends Error {\n name: string;\n constructor(message: string);\n}\n/**\n * @category Error\n * @description Error that indicates missing required permission scopes\n */\nexport declare class MissingRequiredScope extends Error {\n requiredScopes: PermissionScopeMethods | string;\n name: string;\n constructor(requiredScopes: PermissionScopeMethods | string);\n}\n/**\n * @category Error\n * @description Error that indicates the active network is not specified\n */\nexport declare class ActiveNetworkUnspecified extends Error {\n name: string;\n constructor();\n}\n/**\n * @category Error\n * @description Error that indicates the active account is not specified\n */\nexport declare class ActiveAccountUnspecified extends Error {\n name: string;\n constructor();\n}\n/**\n * @category Error\n * @description Error that indicates the combinaison pkh-network is not part of the active session\n */\nexport declare class InvalidNetworkOrAccount extends Error {\n network: string;\n pkh: string;\n name: string;\n constructor(network: string, pkh: string);\n}\n"},{name:"@airgap/beacon-transport-walletconnect/index.d.ts",dts:"export { WalletConnectTransport } from './WalletConnectTransport';\nexport { WalletConnectCommunicationClient } from './communication-client/WalletConnectCommunicationClient';\n"},{name:"@airgap/beacon-transport-walletconnect/dist/esm/communication-client/WalletConnectCommunicationClient.d.ts",dts:'import { CommunicationClient, WCStorage } from \'@airgap/beacon-core\';\nimport Client from \'@walletconnect/sign-client\';\nimport { SessionTypes, SignClientTypes } from \'@walletconnect/types\';\nimport { ExtendedWalletConnectPairingRequest, ExtendedWalletConnectPairingResponse, NetworkType, OperationRequest, PermissionRequest, SignPayloadRequest } from \'@airgap/beacon-types\';\nexport interface PermissionScopeParam {\n networks: NetworkType[];\n methods: PermissionScopeMethods[];\n events?: PermissionScopeEvents[];\n}\nexport declare enum PermissionScopeMethods {\n GET_ACCOUNTS = "tezos_getAccounts",\n OPERATION_REQUEST = "tezos_send",\n SIGN = "tezos_sign"\n}\nexport declare enum PermissionScopeEvents {\n CHAIN_CHANGED = "chainChanged",\n ACCOUNTS_CHANGED = "accountsChanged",\n REQUEST_ACKNOWLEDGED = "requestAcknowledged"\n}\nexport declare class WalletConnectCommunicationClient extends CommunicationClient {\n private wcOptions;\n protected readonly activeListeners: Map void>;\n protected readonly channelOpeningListeners: Map void>;\n private static instance;\n signClient: Client | undefined;\n storage: WCStorage;\n private session;\n private activeAccount;\n private activeNetwork;\n readonly disconnectionEvents: Set;\n private pingInterval;\n /**\n * this queue stores each active message id\n * [0] newest message\n * [length - 1] oldest message\n */\n private messageIds;\n constructor(wcOptions: {\n network: NetworkType;\n opts: SignClientTypes.Options;\n });\n static getInstance(wcOptions: {\n network: NetworkType;\n opts: SignClientTypes.Options;\n }): WalletConnectCommunicationClient;\n private getTopicFromSession;\n listenForEncryptedMessage(senderPublicKey: string, messageCallback: (message: string) => void): Promise;\n listenForChannelOpening(messageCallback: (pairingResponse: ExtendedWalletConnectPairingResponse) => void): Promise;\n /**\n * WC Sign client doesn\'t sync between intances, meaning that a dApp signClient instance state may\n * differ from a wallet state\n */\n private refreshState;\n private clearEvents;\n private abortErrorBuilder;\n private onStorageMessageHandler;\n private onStorageErrorHandler;\n unsubscribeFromEncryptedMessages(): Promise;\n unsubscribeFromEncryptedMessage(_senderPublicKey: string): Promise;\n private closeSignClient;\n private ping;\n private checkWalletReadiness;\n sendMessage(_message: string, _peer?: any): Promise;\n private fetchAccounts;\n private notifyListenersWithPermissionResponse;\n requestPermissions(message: PermissionRequest): Promise;\n /**\n * @description Once the session is establish, send payload to be approved and signed by the wallet.\n * @error MissingRequiredScope is thrown if permission to sign payload was not granted\n */\n signPayload(signPayloadRequest: SignPayloadRequest): Promise;\n /**\n * @description Once the session is established, send Tezos operations to be approved, signed and inject by the wallet.\n * @error MissingRequiredScope is thrown if permission to send operation was not granted\n */\n sendOperations(operationRequest: OperationRequest): Promise;\n private isMobileSesion;\n /**\n * Function used to fix appSwitching with web wallets when pairing through \'Other wallet flow\'\n * @param session the newly created session\n */\n private updateStorageWallet;\n init(forceNewConnection?: boolean): Promise<{\n uri: string;\n topic: string;\n } | undefined>;\n close(): Promise;\n private subscribeToSessionEvents;\n private acknowledgeRequest;\n private updateActiveAccount;\n private disconnect;\n private onPairingClosed;\n private onSessionClosed;\n getPairingRequestInfo(): Promise;\n private closePairings;\n private closeSessions;\n private openSession;\n private permissionScopeParamsToNamespaces;\n private validateReceivedNamespace;\n private validateMethods;\n private validateEvents;\n private validateAccounts;\n closeActiveSession(account: string, notify?: boolean): Promise;\n private validateNetworkAndAccount;\n /**\n * @description Access the active network\n * @error ActiveNetworkUnspecified thorwn when there are multiple Tezos networks in the session and none is set as the active one\n */\n getActiveNetwork(): string;\n private setDefaultAccountAndNetwork;\n /**\n * @description Return all connected accounts from the active session\n * @error NotConnected if no active session\n */\n getAccounts(): string[];\n /**\n * @description Return all networks from the namespace of the active session\n * @error NotConnected if no active session\n */\n getNetworks(): string[];\n private getTezosNamespace;\n private getPermittedMethods;\n private getPermittedNetwork;\n private getTezosRequiredNamespace;\n private notifyListeners;\n currentSession(): SessionTypes.Struct | undefined;\n private getSignClient;\n private getSession;\n /**\n * @description Access the public key hash of the active account\n * @error ActiveAccountUnspecified thrown when there are multiple Tezos account in the session and none is set as the active one\n */\n getPKH(): Promise;\n private clearState;\n}\n'},{name:"@airgap/beacon-transport-walletconnect/dist/esm/WalletConnectTransport.d.ts",dts:"import { KeyPair } from '@stablelib/ed25519';\nimport { WalletConnectCommunicationClient } from './communication-client/WalletConnectCommunicationClient';\nimport { Storage, ExtendedWalletConnectPairingResponse, StorageKey, WalletConnectPairingRequest, NetworkType, TransportType } from '@airgap/beacon-types';\nimport { Transport } from '@airgap/beacon-core';\nimport { SignClientTypes } from '@walletconnect/types';\n/**\n * @internalapi\n *\n *\n */\nexport declare class WalletConnectTransport extends Transport {\n private wcOptions;\n readonly type: TransportType;\n constructor(name: string, _keyPair: KeyPair, storage: Storage, storageKey: K, wcOptions: {\n network: NetworkType;\n opts: SignClientTypes.Options;\n });\n static isAvailable(): Promise;\n connect(): Promise;\n wasDisconnectedByWallet(): boolean;\n hasPairings(): Promise;\n hasSessions(): Promise;\n /**\n * Forcefully updates any DApps running on the same session\n * Typical use case: localStorage changes to reflect to indexDB\n * @param type the message type\n */\n forceUpdate(type: string): void;\n getPeers(): Promise;\n disconnect(): Promise;\n startOpenChannelListener(): Promise;\n doClientCleanup(): Promise;\n getPairingRequestInfo(): Promise;\n listen(publicKey: string): Promise;\n}\n"},{name:"@airgap/beacon-transport-walletconnect/dist/esm/error.d.ts",dts:"import { PermissionScopeMethods } from './communication-client/WalletConnectCommunicationClient';\n/**\n * @category Error\n * @description Error that indicates the wallet returned an invalid namespace\n */\nexport declare class InvalidReceivedSessionNamespace extends Error {\n messageWc: string;\n codeWc: number;\n data?: string | string[] | undefined;\n name: string;\n constructor(messageWc: string, codeWc: number, type: 'invalid' | 'incomplete', data?: string | string[] | undefined);\n}\n/**\n * @category Error\n * @description Error that indicates there is no active session\n */\nexport declare class NotConnected extends Error {\n name: string;\n constructor();\n}\n/**\n * @category Error\n * @description Error that indicates the session is invalid\n */\nexport declare class InvalidSession extends Error {\n name: string;\n constructor(message: string);\n}\n/**\n * @category Error\n * @description Error that indicates missing required permission scopes\n */\nexport declare class MissingRequiredScope extends Error {\n requiredScopes: PermissionScopeMethods | string;\n name: string;\n constructor(requiredScopes: PermissionScopeMethods | string);\n}\n/**\n * @category Error\n * @description Error that indicates the active network is not specified\n */\nexport declare class ActiveNetworkUnspecified extends Error {\n name: string;\n constructor();\n}\n/**\n * @category Error\n * @description Error that indicates the active account is not specified\n */\nexport declare class ActiveAccountUnspecified extends Error {\n name: string;\n constructor();\n}\n/**\n * @category Error\n * @description Error that indicates the combinaison pkh-network is not part of the active session\n */\nexport declare class InvalidNetworkOrAccount extends Error {\n network: string;\n pkh: string;\n name: string;\n constructor(network: string, pkh: string);\n}\n"},{name:"@airgap/beacon-transport-walletconnect/dist/esm/index.d.ts",dts:"export { WalletConnectTransport } from './WalletConnectTransport';\nexport { WalletConnectCommunicationClient } from './communication-client/WalletConnectCommunicationClient';\n"},{name:"@airgap/beacon-types/types/beacon/messages/AcknowledgeResponse.d.ts",dts:"import { BeaconBaseMessage, BeaconMessageType } from '@airgap/beacon-types';\n/**\n * @category Message\n */\nexport interface AcknowledgeResponse extends BeaconBaseMessage {\n type: BeaconMessageType.Acknowledge;\n}\n"},{name:"@airgap/beacon-types/types/beacon/messages/BeaconRequestInputMessage.d.ts",dts:"import { Optional } from '@airgap/beacon-types';\nimport { PermissionRequest, OperationRequest, SignPayloadRequest, ProofOfEventChallengeRequest, SimulatedProofOfEventChallengeRequest, BroadcastRequest } from '@airgap/beacon-types';\n/**\n * @internalapi\n * @category DApp\n */\nexport type IgnoredRequestInputProperties = 'id' | 'senderId' | 'version';\n/**\n * @internalapi\n * @category DApp\n */\nexport type PermissionRequestInput = Optional;\n/**\n * @internalapi\n * @category DApp\n */\nexport type ProofOfEventChallengeRequestInput = Optional;\n/**\n * @internalapi\n * @category DApp\n */\nexport type SimulatedProofOfEventChallengeRequestInput = Optional;\n/**\n * @internalapi\n * @category DApp\n */\nexport type OperationRequestInput = Optional;\n/**\n * @internalapi\n * @category DApp\n */\nexport type SignPayloadRequestInput = Optional;\n/**\n * @internalapi\n * @category DApp\n */\n/**\n * @internalapi\n * @category DApp\n */\nexport type BroadcastRequestInput = Optional;\n/**\n * @internalapi\n * @category DApp\n */\nexport type BeaconRequestInputMessage = PermissionRequestInput | OperationRequestInput | SignPayloadRequestInput | BroadcastRequestInput | ProofOfEventChallengeRequestInput | SimulatedProofOfEventChallengeRequestInput;\n"},{name:"@airgap/beacon-types/types/beacon/messages/BeaconRequestOutputMessage.d.ts",dts:"import { Optional, ProofOfEventChallengeRequest, SimulatedProofOfEventChallengeRequest } from '@airgap/beacon-types';\nimport { AppMetadata, PermissionRequest, OperationRequest, SignPayloadRequest, BroadcastRequest } from '@airgap/beacon-types';\n/**\n * @category Wallet\n */\nexport type IgnoredRequestOutputProperties = 'version';\n/**\n * @category Wallet\n */\nexport interface ExtraResponseOutputProperties {\n appMetadata: AppMetadata;\n}\n/**\n * @category Wallet\n */\nexport type PermissionRequestOutput = Optional & ExtraResponseOutputProperties;\n/**\n * @category Wallet\n */\nexport type ProofOfEventChallengeRequestOutput = Optional & ExtraResponseOutputProperties;\n/**\n * @category Wallet\n */\nexport type SimulatedProofOfEventChallengeRequestOutput = Optional & ExtraResponseOutputProperties;\n/**\n * @category Wallet\n */\nexport type OperationRequestOutput = Optional & ExtraResponseOutputProperties;\n/**\n * @category Wallet\n */\nexport type SignPayloadRequestOutput = Optional & ExtraResponseOutputProperties;\n/**\n * @category Wallet\n */\n/**\n * @category Wallet\n */\nexport type BroadcastRequestOutput = Optional & ExtraResponseOutputProperties;\n/**\n * @internalapi\n * @category Wallet\n */\nexport type BeaconRequestOutputMessage = PermissionRequestOutput | OperationRequestOutput | SignPayloadRequestOutput | BroadcastRequestOutput | ProofOfEventChallengeRequestOutput | SimulatedProofOfEventChallengeRequestOutput;\n"},{name:"@airgap/beacon-types/types/beacon/messages/BeaconResponseInputMessage.d.ts",dts:"import { Optional, ProofOfEventChallengeResponse, SimulatedProofOfEventChallengeResponse } from '@airgap/beacon-types';\nimport { PermissionResponse, OperationResponse, SignPayloadResponse, BroadcastResponse, AcknowledgeResponse, ErrorResponse } from '@airgap/beacon-types';\n/**\n * @category Wallet\n */\nexport type IgnoredResponseInputProperties = 'senderId' | 'version';\n/**\n * @category Wallet\n */\nexport type PermissionResponseInput = Optional;\n/**\n * @category Wallet\n */\nexport type ProofOfEventChallengeResponseInput = Optional;\n/**\n * @category Wallet\n */\nexport type SimulatedProofOfEventChallengeResponseInput = Optional;\n/**\n * @category Wallet\n */\nexport type OperationResponseInput = Optional;\n/**\n * @category Wallet\n */\nexport type SignPayloadResponseInput = Optional;\n/**\n * @category Wallet\n */\n/**\n * @category Wallet\n */\nexport type BroadcastResponseInput = Optional;\n/**\n * @category Wallet\n */\nexport type AcknowledgeResponseInput = Optional;\n/**\n * @category Wallet\n */\nexport type ErrorResponseInput = Optional;\n/**\n * @internalapi\n * @category Wallet\n */\nexport type BeaconResponseInputMessage = PermissionResponseInput | OperationResponseInput | SignPayloadResponseInput | BroadcastResponseInput | AcknowledgeResponseInput | ErrorResponseInput | ProofOfEventChallengeResponseInput | SimulatedProofOfEventChallengeResponseInput;\n"},{name:"@airgap/beacon-types/types/beacon/messages/BeaconResponseOutputMessage.d.ts",dts:"import { PermissionResponse, OperationResponse, SignPayloadResponse, BroadcastResponse, AccountInfo, ProofOfEventChallengeResponse, SimulatedProofOfEventChallengeResponse } from '@airgap/beacon-types';\n/**\n * @category DApp\n */\nexport type IgnoredResponseOutputProperties = 'id' | 'version' | 'type';\n/**\n * @category DApp\n */\nexport type PermissionResponseOutput = PermissionResponse & {\n address: string;\n accountInfo: AccountInfo;\n walletKey?: string | undefined;\n};\n/**\n * @category DApp\n */\nexport type ProofOfEventChallengeResponseOutput = ProofOfEventChallengeResponse;\n/**\n * @category DApp\n */\nexport type SimulatedProofOfEventChallengeResponseOutput = SimulatedProofOfEventChallengeResponse;\n/**\n * @category DApp\n */\nexport type OperationResponseOutput = OperationResponse;\n/**\n * @category DApp\n */\nexport type SignPayloadResponseOutput = SignPayloadResponse;\n/**\n * @category DApp\n */\n/**\n * @category DApp\n */\nexport type BroadcastResponseOutput = BroadcastResponse;\n/**\n * @internalapi\n * @category DApp\n */\nexport type BeaconResponseOutputMessage = PermissionResponseOutput | OperationResponseOutput | SignPayloadResponseOutput | BroadcastResponseOutput | ProofOfEventChallengeResponseOutput | SimulatedProofOfEventChallengeResponseOutput;\n"},{name:"@airgap/beacon-types/types/beacon/messages/BroadcastRequest.d.ts",dts:"import { BeaconBaseMessage, BeaconMessageType, Network } from '@airgap/beacon-types';\n/**\n * @category Message\n */\nexport interface BroadcastRequest extends BeaconBaseMessage {\n type: BeaconMessageType.BroadcastRequest;\n network: Network;\n signedTransaction: string;\n}\n"},{name:"@airgap/beacon-types/types/beacon/messages/BroadcastResponse.d.ts",dts:"import { BeaconBaseMessage, BeaconMessageType } from '@airgap/beacon-types';\n/**\n * @category Message\n */\nexport interface BroadcastResponse extends BeaconBaseMessage {\n type: BeaconMessageType.BroadcastResponse;\n transactionHash: string;\n}\n"},{name:"@airgap/beacon-types/types/beacon/messages/ChangeAccountRequest.d.ts",dts:"import { BeaconBaseMessage, BeaconMessageType, Network, PermissionScope, Threshold } from '@airgap/beacon-types';\nimport { Notification } from '../../Notification';\nexport interface ChangeAccountRequest extends BeaconBaseMessage {\n type: BeaconMessageType.ChangeAccountRequest;\n address?: string;\n walletType: 'implicit' | 'abstracted_account';\n verificationType?: 'proof_of_event';\n publicKey?: string;\n network: Network;\n scopes: PermissionScope[];\n threshold?: Threshold;\n notification?: Notification;\n}\n"},{name:"@airgap/beacon-types/types/beacon/messages/DisconnectMessage.d.ts",dts:"import { BeaconBaseMessage, BeaconMessageType } from '@airgap/beacon-types';\n/**\n * @category Message\n */\nexport interface DisconnectMessage extends BeaconBaseMessage {\n type: BeaconMessageType.Disconnect;\n}\n"},{name:"@airgap/beacon-types/types/beacon/messages/EncryptPayloadRequest.d.ts",dts:"/**\n * @category Message\n */\n"},{name:"@airgap/beacon-types/types/beacon/messages/EncryptPayloadResponse.d.ts",dts:"/**\n * @category Message\n */\n"},{name:"@airgap/beacon-types/types/beacon/messages/ErrorResponse.d.ts",dts:"import { BeaconBaseMessage, BeaconErrorType, BeaconMessageType } from '@airgap/beacon-types';\n/**\n * @category Message\n */\nexport interface ErrorResponse extends BeaconBaseMessage {\n type: BeaconMessageType.Error;\n errorType: BeaconErrorType;\n errorData?: any;\n}\n"},{name:"@airgap/beacon-types/types/beacon/messages/OperationRequest.d.ts",dts:"import { BeaconBaseMessage, BeaconMessageType, Network } from '@airgap/beacon-types';\nimport { PartialTezosOperation } from '../../tezos/PartialTezosOperation';\n/**\n * @category Message\n */\nexport interface OperationRequest extends BeaconBaseMessage {\n type: BeaconMessageType.OperationRequest;\n network: Network;\n operationDetails: PartialTezosOperation[];\n sourceAddress: string;\n}\n"},{name:"@airgap/beacon-types/types/beacon/messages/OperationResponse.d.ts",dts:"import { BeaconBaseMessage, BeaconMessageType } from '@airgap/beacon-types';\n/**\n * @category Message\n */\nexport interface OperationResponse extends BeaconBaseMessage {\n type: BeaconMessageType.OperationResponse;\n transactionHash: string;\n}\n"},{name:"@airgap/beacon-types/types/beacon/messages/PermissionRequest.d.ts",dts:"import { BeaconBaseMessage, BeaconMessageType, PermissionScope, AppMetadata, Network } from '@airgap/beacon-types';\n/**\n * @category Message\n */\nexport interface PermissionRequest extends BeaconBaseMessage {\n type: BeaconMessageType.PermissionRequest;\n appMetadata: AppMetadata;\n network: Network;\n scopes: PermissionScope[];\n}\n"},{name:"@airgap/beacon-types/types/beacon/messages/PermissionResponse.d.ts",dts:"import { AppMetadata, BeaconBaseMessage, BeaconMessageType, Network, PermissionScope, Threshold } from '@airgap/beacon-types';\nimport { Notification } from '../../Notification';\n/**\n * @category Message\n */\nexport interface PermissionResponse extends BeaconBaseMessage {\n address?: string;\n walletType: 'implicit' | 'abstracted_account';\n verificationType?: 'proof_of_event';\n type: BeaconMessageType.PermissionResponse;\n appMetadata: AppMetadata;\n publicKey?: string;\n network: Network;\n scopes: PermissionScope[];\n threshold?: Threshold;\n notification?: Notification;\n}\n"},{name:"@airgap/beacon-types/types/beacon/messages/ProofOfEventChallengeRequest.d.ts",dts:"import { BeaconBaseMessage, BeaconMessageType } from '@airgap/beacon-types';\nexport interface ProofOfEventChallengeRequest extends BeaconBaseMessage {\n type: BeaconMessageType.ProofOfEventChallengeRequest;\n payload: string;\n contractAddress: string;\n}\n"},{name:"@airgap/beacon-types/types/beacon/messages/ProofOfEventChallengeResponse.d.ts",dts:"import { BeaconBaseMessage, BeaconMessageType } from '@airgap/beacon-types';\nexport interface ProofOfEventChallengeResponse extends BeaconBaseMessage {\n type: BeaconMessageType.ProofOfEventChallengeResponse;\n payloadHash: string;\n isAccepted: boolean;\n}\n"},{name:"@airgap/beacon-types/types/beacon/messages/SignPayloadRequest.d.ts",dts:"import { BeaconBaseMessage, BeaconMessageType, SigningType } from '@airgap/beacon-types';\n/**\n * @category Message\n */\nexport interface SignPayloadRequest extends BeaconBaseMessage {\n type: BeaconMessageType.SignPayloadRequest;\n signingType: SigningType;\n payload: string;\n sourceAddress: string;\n}\n"},{name:"@airgap/beacon-types/types/beacon/messages/SignPayloadResponse.d.ts",dts:"import { BeaconBaseMessage, BeaconMessageType, SigningType } from '@airgap/beacon-types';\n/**\n * @category Message\n */\nexport interface SignPayloadResponse extends BeaconBaseMessage {\n type: BeaconMessageType.SignPayloadResponse;\n signingType: SigningType;\n signature: string;\n}\n"},{name:"@airgap/beacon-types/types/beacon/messages/SimulatedProofOfEventChallengeRequest.d.ts",dts:"import { BeaconBaseMessage, BeaconMessageType } from '@airgap/beacon-types';\nexport interface SimulatedProofOfEventChallengeRequest extends BeaconBaseMessage {\n type: BeaconMessageType.SimulatedProofOfEventChallengeRequest;\n payload: string;\n contractAddress: string;\n}\n"},{name:"@airgap/beacon-types/types/beacon/messages/SimulatedProofOfEventChallengeResponse.d.ts",dts:"import { BeaconBaseMessage, BeaconMessageType } from '@airgap/beacon-types';\nexport interface SimulatedProofOfEventChallengeResponse extends BeaconBaseMessage {\n type: BeaconMessageType.SimulatedProofOfEventChallengeResponse;\n operationsList: string;\n errorMessage: string;\n}\n"},{name:"@airgap/beacon-types/types/beacon/AppMetadata.d.ts",dts:"export interface AppMetadata {\n senderId: string;\n name: string;\n icon?: string;\n}\n"},{name:"@airgap/beacon-types/types/beacon/BeaconBaseMessage.d.ts",dts:"import { BeaconMessageType } from '@airgap/beacon-types';\n/**\n * @category Message\n */\nexport interface BeaconBaseMessage {\n type: BeaconMessageType;\n version: string;\n id: string;\n senderId: string;\n}\n"},{name:"@airgap/beacon-types/types/beacon/BeaconMessage.d.ts",dts:"import { PermissionResponse, PermissionRequest, OperationRequest, OperationResponse, SignPayloadRequest, SignPayloadResponse, BroadcastRequest, BroadcastResponse, AcknowledgeResponse, DisconnectMessage, ErrorResponse, ProofOfEventChallengeRequest, ProofOfEventChallengeResponse, SimulatedProofOfEventChallengeRequest, SimulatedProofOfEventChallengeResponse, ChangeAccountRequest } from '@airgap/beacon-types';\n/**\n * @internalapi\n */\nexport type BeaconMessage = PermissionRequest | PermissionResponse | ProofOfEventChallengeRequest | ProofOfEventChallengeResponse | SimulatedProofOfEventChallengeRequest | SimulatedProofOfEventChallengeResponse | OperationRequest | OperationResponse | SignPayloadRequest | SignPayloadResponse | BroadcastRequest | BroadcastResponse | AcknowledgeResponse | DisconnectMessage | ErrorResponse | ChangeAccountRequest;\n"},{name:"@airgap/beacon-types/types/beacon/BeaconMessageType.d.ts",dts:'export declare enum BeaconMessageType {\n BlockchainRequest = "blockchain_request",\n PermissionRequest = "permission_request",\n SignPayloadRequest = "sign_payload_request",\n OperationRequest = "operation_request",\n BroadcastRequest = "broadcast_request",\n ChangeAccountRequest = "change_account_request",\n BlockchainResponse = "blockchain_response",\n PermissionResponse = "permission_response",\n SignPayloadResponse = "sign_payload_response",\n ProofOfEventChallengeRequest = "proof_of_event_challenge_request",\n ProofOfEventChallengeResponse = "proof_of_event_challenge_response",\n SimulatedProofOfEventChallengeRequest = "simulated_proof_of_event_challenge_request",\n SimulatedProofOfEventChallengeResponse = "simulated_proof_of_event_challenge_response",\n OperationResponse = "operation_response",\n BroadcastResponse = "broadcast_response",\n Acknowledge = "acknowledge",\n Disconnect = "disconnect",\n Error = "error"\n}\n'},{name:"@airgap/beacon-types/types/beacon/BeaconRequestMessage.d.ts",dts:"import { PermissionRequest, OperationRequest, SignPayloadRequest, BroadcastRequest, ProofOfEventChallengeRequest, SimulatedProofOfEventChallengeRequest } from '@airgap/beacon-types';\n/**\n * @internalapi\n */\nexport type BeaconRequestMessage = PermissionRequest | OperationRequest | SignPayloadRequest | BroadcastRequest | ProofOfEventChallengeRequest | SimulatedProofOfEventChallengeRequest;\n"},{name:"@airgap/beacon-types/types/beacon/BeaconResponseMessage.d.ts",dts:"import { PermissionResponse, OperationResponse, SignPayloadResponse, BroadcastResponse } from '@airgap/beacon-types';\nimport { ErrorResponse } from './messages/ErrorResponse';\n/**\n * @internalapi\n */\nexport type BeaconResponseMessage = PermissionResponse | OperationResponse | SignPayloadResponse | BroadcastResponse | ErrorResponse;\n"},{name:"@airgap/beacon-types/types/beacon/Network.d.ts",dts:"import { NetworkType } from '@airgap/beacon-types';\nexport interface Network {\n type: NetworkType;\n name?: string;\n rpcUrl?: string;\n}\n"},{name:"@airgap/beacon-types/types/beacon/NetworkType.d.ts",dts:'export declare enum NetworkType {\n MAINNET = "mainnet",\n GHOSTNET = "ghostnet",\n WEEKLYNET = "weeklynet",\n DAILYNET = "dailynet",\n DELPHINET = "delphinet",\n EDONET = "edonet",\n FLORENCENET = "florencenet",\n GRANADANET = "granadanet",\n HANGZHOUNET = "hangzhounet",\n ITHACANET = "ithacanet",\n JAKARTANET = "jakartanet",\n KATHMANDUNET = "kathmandunet",\n LIMANET = "limanet",\n MUMBAINET = "mumbainet",\n NAIROBINET = "nairobinet",\n OXFORDNET = "oxfordnet",\n PARISNET = "parisnet",\n CUSTOM = "custom"\n}\n'},{name:"@airgap/beacon-types/types/beacon/PermissionScope.d.ts",dts:'export declare enum PermissionScope {\n SIGN = "sign",\n OPERATION_REQUEST = "operation_request",\n ENCRYPT = "encrypt",\n NOTIFICATION = "notification",\n THRESHOLD = "threshold"\n}\n'},{name:"@airgap/beacon-types/types/beacon/SigningType.d.ts",dts:'export declare enum SigningType {\n RAW = "raw",\n OPERATION = "operation",\n MICHELINE = "micheline"\n}\n'},{name:"@airgap/beacon-types/types/beacon/Threshold.d.ts",dts:"export interface Threshold {\n amount: string;\n timeframe: string;\n}\n"},{name:"@airgap/beacon-types/types/beaconV3/PermissionRequest.d.ts",dts:"import { AccountInfo, AppMetadata, BeaconMessageType, ConnectionContext, WalletInfo, ExtensionApp, DesktopApp, WebApp, App } from '@airgap/beacon-types';\nexport interface ResponseInput {\n request: BlockchainMessage;\n account: AccountInfo;\n output: BeaconMessageWrapper;\n blockExplorer: any;\n connectionContext: ConnectionContext;\n walletInfo: WalletInfo;\n}\nexport interface Blockchain {\n readonly identifier: string;\n validateRequest(input: BlockchainMessage): Promise;\n handleResponse(input: ResponseInput): Promise;\n getWalletLists(): Promise<{\n extensionList: ExtensionApp[];\n desktopList: DesktopApp[];\n webList: WebApp[];\n iOSList: App[];\n }>;\n getAccountInfosFromPermissionResponse(permissionResponse: PermissionResponseV3): Promise<{\n accountId: string;\n address: string;\n publicKey: string;\n }[]>;\n}\nexport interface BeaconMessageWrapper {\n id: string;\n version: string;\n senderId: string;\n message: T;\n}\nexport interface BeaconBaseMessage {\n type: unknown;\n}\nexport interface BlockchainMessage {\n blockchainIdentifier: T;\n type: unknown;\n blockchainData: unknown;\n}\nexport interface PermissionRequestV3 extends BlockchainMessage {\n blockchainIdentifier: T;\n type: BeaconMessageType.PermissionRequest;\n blockchainData: {\n appMetadata: AppMetadata;\n scopes: string[];\n };\n}\nexport interface PermissionResponseV3 extends BlockchainMessage {\n blockchainIdentifier: T;\n type: BeaconMessageType.PermissionResponse;\n blockchainData: {\n appMetadata: AppMetadata;\n scopes: string[];\n };\n}\nexport interface BlockchainRequestV3 extends BlockchainMessage {\n blockchainIdentifier: T;\n type: BeaconMessageType.BlockchainRequest;\n accountId: string;\n blockchainData: {\n type: string;\n scope: string;\n };\n}\nexport interface BlockchainResponseV3 extends BlockchainMessage {\n blockchainIdentifier: T;\n type: BeaconMessageType.BlockchainResponse;\n blockchainData: unknown;\n}\nexport interface BlockchainErrorResponse extends BlockchainMessage {\n blockchainIdentifier: T;\n type: BeaconMessageType.Error;\n error: {\n type: unknown;\n data?: unknown;\n };\n description?: string;\n}\nexport interface AcknowledgeMessage extends BeaconBaseMessage {\n type: BeaconMessageType.Acknowledge;\n}\nexport interface DisconnectMessage extends BeaconBaseMessage {\n type: BeaconMessageType.Disconnect;\n}\n"},{name:"@airgap/beacon-types/types/storage/Storage.d.ts",dts:"import { StorageKey, StorageKeyReturnType } from '@airgap/beacon-types';\n/**\n * @internalapi\n *\n * The storage used in the SDK\n */\nexport declare abstract class Storage {\n /**\n * Returns a promise that resolves to true if the storage option is available on this platform.\n */\n static isSupported(): Promise;\n /**\n * Gets a value from storage and returns it\n *\n * @param key The storage key\n */\n abstract get(key: K): Promise;\n /**\n * Sets a value in the storage and persist it\n *\n * @param key The storage key\n * @param value The value to be persisted\n */\n abstract set(key: K, value: StorageKeyReturnType[K]): Promise;\n /**\n * Delete a key from storage\n *\n * @param key The storage key\n */\n abstract delete(key: K): Promise;\n /**\n * This event will fire if the storage was modified by someone else, eg. on another tab\n *\n * @param callback The callback to be called when a storage value changes\n */\n abstract subscribeToStorageChanged(callback: (arg: {\n eventType: 'storageCleared' | 'entryModified';\n key: string | null;\n oldValue: string | null;\n newValue: string | null;\n }) => {}): Promise;\n /**\n * Get the key with the internal prefix\n *\n * @param key the storage key\n */\n abstract getPrefixedKey(key: K): string;\n}\n"},{name:"@airgap/beacon-types/types/storage/StorageKey.d.ts",dts:'/**\n * @internalapi\n */\nexport declare enum StorageKey {\n TRANSPORT_P2P_PEERS_DAPP = "beacon:communication-peers-dapp",\n TRANSPORT_P2P_PEERS_WALLET = "beacon:communication-peers-wallet",\n TRANSPORT_POSTMESSAGE_PEERS_DAPP = "beacon:postmessage-peers-dapp",\n TRANSPORT_POSTMESSAGE_PEERS_WALLET = "beacon:postmessage-peers-wallet",\n TRANSPORT_WALLETCONNECT_PEERS_DAPP = "beacon:walletconnect-peers-dapp",\n LAST_SELECTED_WALLET = "beacon:last-selected-wallet",\n ACCOUNTS = "beacon:accounts",\n ACTIVE_ACCOUNT = "beacon:active-account",\n PUSH_TOKENS = "beacon:push-tokens",\n BEACON_SDK_SECRET_SEED = "beacon:sdk-secret-seed",\n APP_METADATA_LIST = "beacon:app-metadata-list",\n PERMISSION_LIST = "beacon:permissions",\n ONGOING_PROOF_OF_EVENT_CHALLENGES = "beacon:ongoing-proof-of-event-challenges",\n BEACON_SDK_VERSION = "beacon:sdk_version",\n MATRIX_PRESERVED_STATE = "beacon:sdk-matrix-preserved-state",\n MATRIX_PEER_ROOM_IDS = "beacon:matrix-peer-rooms",\n MATRIX_SELECTED_NODE = "beacon:matrix-selected-node",\n MULTI_NODE_SETUP_DONE = "beacon:multi-node-setup",\n USER_ID = "beacon:user-id",\n ENABLE_METRICS = "beacon:enable_metrics",\n WC_2_CORE_PAIRING = "wc@2:core:0.3:pairing",\n WC_2_CLIENT_SESSION = "wc@2:client:0.3:session",\n WC_2_CORE_KEYCHAIN = "wc@2:core:0.3:keychain",\n WC_2_CORE_MESSAGES = "wc@2:core:0.3:messages",\n WC_2_CLIENT_PROPOSAL = "wc@2:client:0.3:proposal",\n WC_2_CORE_SUBSCRIPTION = "wc@2:core:0.3:subscription",\n WC_2_CORE_HISTORY = "wc@2:core:0.3:history",\n WC_2_CORE_EXPIRER = "wc@2:core:0.3:expirer"\n}\n'},{name:"@airgap/beacon-types/types/storage/StorageKeyReturnDefaults.d.ts",dts:"import { StorageKey, StorageKeyReturnType } from '../..';\n/**\n * @internalapi\n */\nexport type StorageKeyReturnDefaults = {\n [key in StorageKey]: StorageKeyReturnType[key];\n};\n/**\n * @internalapi\n */\nexport declare const defaultValues: StorageKeyReturnDefaults;\n"},{name:"@airgap/beacon-types/types/storage/StorageKeyReturnType.d.ts",dts:"import { StorageKey, AccountInfo, AccountIdentifier, P2PPairingRequest, AppMetadata, PermissionInfo, ExtendedWalletConnectPairingResponse, RequestProofOfEventChallengeInput } from '../..';\nimport { ExtendedP2PPairingResponse } from '../P2PPairingResponse';\nimport { PostMessagePairingRequest } from '../PostMessagePairingRequest';\nimport { ExtendedPostMessagePairingResponse } from '../PostMessagePairingResponse';\nimport { PushToken } from '../PushToken';\n/**\n * @internalapi\n */\nexport interface StorageKeyReturnType {\n [StorageKey.TRANSPORT_P2P_PEERS_DAPP]: P2PPairingRequest[];\n [StorageKey.TRANSPORT_P2P_PEERS_WALLET]: ExtendedP2PPairingResponse[];\n [StorageKey.TRANSPORT_POSTMESSAGE_PEERS_DAPP]: PostMessagePairingRequest[];\n [StorageKey.TRANSPORT_POSTMESSAGE_PEERS_WALLET]: ExtendedPostMessagePairingResponse[];\n [StorageKey.TRANSPORT_WALLETCONNECT_PEERS_DAPP]: ExtendedWalletConnectPairingResponse[];\n [StorageKey.LAST_SELECTED_WALLET]: {\n key: string;\n name: string;\n type: 'extension' | 'mobile' | 'web' | 'desktop';\n icon: string;\n url?: string;\n } | undefined;\n [StorageKey.ACCOUNTS]: AccountInfo[];\n [StorageKey.ACTIVE_ACCOUNT]: AccountIdentifier | undefined;\n [StorageKey.PUSH_TOKENS]: PushToken[];\n [StorageKey.BEACON_SDK_SECRET_SEED]: string | undefined;\n [StorageKey.APP_METADATA_LIST]: AppMetadata[];\n [StorageKey.PERMISSION_LIST]: PermissionInfo[];\n [StorageKey.ONGOING_PROOF_OF_EVENT_CHALLENGES]: ({\n contractAddress: string;\n accountIdentifier: string;\n } & RequestProofOfEventChallengeInput)[];\n [StorageKey.BEACON_SDK_VERSION]: string | undefined;\n [StorageKey.MATRIX_PRESERVED_STATE]: {\n [key: string]: unknown;\n };\n [StorageKey.MATRIX_PEER_ROOM_IDS]: {\n [key: string]: string | undefined;\n };\n [StorageKey.MATRIX_SELECTED_NODE]: string | undefined;\n [StorageKey.MULTI_NODE_SETUP_DONE]: boolean | undefined;\n [StorageKey.USER_ID]: string | undefined;\n [StorageKey.ENABLE_METRICS]: boolean | undefined;\n [StorageKey.WC_2_CLIENT_SESSION]: string | undefined;\n [StorageKey.WC_2_CORE_PAIRING]: string | undefined;\n [StorageKey.WC_2_CORE_KEYCHAIN]: string | undefined;\n [StorageKey.WC_2_CORE_MESSAGES]: string | undefined;\n [StorageKey.WC_2_CLIENT_PROPOSAL]: string | undefined;\n [StorageKey.WC_2_CORE_SUBSCRIPTION]: string | undefined;\n [StorageKey.WC_2_CORE_HISTORY]: string | undefined;\n [StorageKey.WC_2_CORE_EXPIRER]: string | undefined;\n}\n"},{name:"@airgap/beacon-types/types/tezos/operations/ActivateAccount.d.ts",dts:"import { TezosBaseOperation, TezosOperationType } from '../../..';\n/**\n * @internalapi\n * @category Tezos\n */\nexport interface TezosActivateAccountOperation extends TezosBaseOperation {\n kind: TezosOperationType.ACTIVATE_ACCOUNT;\n pkh: string;\n secret: string;\n}\n"},{name:"@airgap/beacon-types/types/tezos/operations/Attestation.d.ts",dts:"import { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nexport interface TezosAttestationOperation extends TezosBaseOperation {\n kind: TezosOperationType.ATTESTATION;\n level: number;\n slot?: number;\n round?: number;\n block_payload_hash?: string;\n}\n"},{name:"@airgap/beacon-types/types/tezos/operations/AttestationWithSlot.d.ts",dts:"import { InlinedAttestation } from '../InlinedAttestation';\nimport { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nexport interface TezosAttestationWithSlotOperation extends TezosBaseOperation {\n kind: TezosOperationType.ATTESTATION_WITH_SLOT;\n endorsement: InlinedAttestation;\n slot: number;\n}\n"},{name:"@airgap/beacon-types/types/tezos/operations/Ballot.d.ts",dts:"import { TezosBaseOperation, TezosOperationType } from '../../..';\n/**\n * @internalapi\n * @category Tezos\n */\nexport interface TezosBallotOperation extends TezosBaseOperation {\n kind: TezosOperationType.BALLOT;\n source: string;\n period: string;\n proposal: string;\n ballot: 'nay' | 'yay' | 'pass';\n}\n"},{name:"@airgap/beacon-types/types/tezos/operations/DalPublishCommitment.d.ts",dts:"import { TezosOperationType } from '../OperationTypes';\nexport interface TezosDalPublishCommitmentOperation {\n kind: TezosOperationType.DAL_PUBLISH_COMMITMENT;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n slot_header: {\n slot_index: number;\n commitment: string;\n commitment_proof: string;\n };\n}\n"},{name:"@airgap/beacon-types/types/tezos/operations/Delegation.d.ts",dts:"import { TezosBaseOperation, TezosOperationType } from '../../..';\n/**\n * @internalapi\n * @category Tezos\n */\nexport interface TezosDelegationOperation extends TezosBaseOperation {\n kind: TezosOperationType.DELEGATION;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n delegate?: string;\n}\n"},{name:"@airgap/beacon-types/types/tezos/operations/DoubleAttestationEvidence.d.ts",dts:"import { InlinedAttestation } from '../InlinedAttestation';\nimport { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nexport interface TezosDoubleAttestationEvidenceOperation extends TezosBaseOperation {\n kind: TezosOperationType.DOUBLE_ATTESTATION_EVIDENCE;\n op1: InlinedAttestation;\n op2: InlinedAttestation;\n slot?: number;\n}\n"},{name:"@airgap/beacon-types/types/tezos/operations/DoubleBakingEvidence.d.ts",dts:"import { TezosBaseOperation, TezosOperationType, TezosBlockHeader } from '../../..';\n/**\n * @internalapi\n * @category Tezos\n */\nexport interface TezosDoubleBakingEvidenceOperation extends TezosBaseOperation {\n kind: TezosOperationType.DOUBLE_BAKING_EVIDENCE;\n bh1: TezosBlockHeader;\n bh2: TezosBlockHeader;\n}\n"},{name:"@airgap/beacon-types/types/tezos/operations/DoubleEndorsementEvidence.d.ts",dts:"import { TezosBaseOperation, TezosOperationType } from '../../..';\nexport interface InlinedEndorsement {\n branch: string;\n operations: InlinedEndorsementContents;\n signature?: string;\n}\nexport interface InlinedEndorsementContents extends TezosBaseOperation {\n kind: TezosOperationType.ENDORSEMENT;\n level: string;\n}\n/**\n * @internalapi\n * @category Tezos\n */\nexport interface TezosDoubleEndorsementEvidenceOperation extends TezosBaseOperation {\n kind: TezosOperationType.DOUBLE_ENDORSEMENT_EVIDENCE;\n op1: InlinedEndorsement;\n op2: InlinedEndorsement;\n}\n"},{name:"@airgap/beacon-types/types/tezos/operations/DoublePreAttestationEvidence.d.ts",dts:"import { InlinedPreattestation } from '../InlinedPreattestation';\nimport { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nexport interface TezosDoublePreAttestationEvidenceOperation extends TezosBaseOperation {\n kind: TezosOperationType.DOUBLE_PREATTESTATION_EVIDENCE;\n op1: InlinedPreattestation;\n op2: InlinedPreattestation;\n}\n"},{name:"@airgap/beacon-types/types/tezos/operations/DoublePreEndorsementEvidence.d.ts",dts:"import { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nexport interface TezosDoublePreEndorsementEvidenceOperation extends TezosBaseOperation {\n kind: TezosOperationType.DOUBLE_PREENDORSEMENT_EVIDENCE;\n op1: InlinedPreEndorsement;\n op2: InlinedPreEndorsement;\n}\nexport interface InlinedPreEndorsement {\n branch: string;\n operations: InlinedPreEndorsementContents;\n signature?: string;\n}\nexport interface InlinedPreEndorsementContents {\n kind: TezosOperationType.PREENDORSEMENT;\n slot: number;\n level: number;\n round: number;\n block_payload_hash: string;\n}\n"},{name:"@airgap/beacon-types/types/tezos/operations/DrainDelegate.d.ts",dts:"import { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nexport interface TezosDrainDelegateOperation extends TezosBaseOperation {\n kind: TezosOperationType.DRAIN_DELEGATE;\n consensus_key: string;\n delegate: string;\n destination: string;\n}\n"},{name:"@airgap/beacon-types/types/tezos/operations/Endorsement.d.ts",dts:"import { TezosBaseOperation, TezosOperationType } from '../../..';\n/**\n * @internalapi\n * @category Tezos\n */\nexport interface TezosEndorsementOperation extends TezosBaseOperation {\n kind: TezosOperationType.ENDORSEMENT;\n level: string;\n}\n"},{name:"@airgap/beacon-types/types/tezos/operations/EndorsementWithSlot.d.ts",dts:"import { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nimport { InlinedEndorsement } from './DoubleEndorsementEvidence';\nexport interface TezosEndorsementWithSlotOperation extends TezosBaseOperation {\n kind: TezosOperationType.ENDORSEMENT_WITH_SLOT;\n endorsement: InlinedEndorsement;\n slot: number;\n}\n"},{name:"@airgap/beacon-types/types/tezos/operations/FailingNoop.d.ts",dts:"import { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nexport interface TezosFailingNoopOperation extends TezosBaseOperation {\n kind: TezosOperationType.FAILING_NOOP;\n arbitrary: string;\n}\n"},{name:"@airgap/beacon-types/types/tezos/operations/IncreasePaidStorage.d.ts",dts:"import { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nexport interface TezosIncreasePaidStorageOperation extends TezosBaseOperation {\n kind: TezosOperationType.INCREASE_PAID_STORAGE;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n amount: string;\n destination: string;\n}\n"},{name:"@airgap/beacon-types/types/tezos/operations/Origination.d.ts",dts:"import { TezosBaseOperation, TezosOperationType } from '../../..';\n/**\n * @internalapi\n * @category Tezos\n */\nexport interface TezosOriginationOperation extends TezosBaseOperation {\n kind: TezosOperationType.ORIGINATION;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n balance: string;\n delegate?: string;\n script: string;\n}\n"},{name:"@airgap/beacon-types/types/tezos/operations/PreAttestation.d.ts",dts:"import { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nexport interface TezosPreAttestationOperation extends TezosBaseOperation {\n kind: TezosOperationType.PREATTESTATION;\n slot: number;\n level: number;\n round: number;\n block_payload_hash: string;\n}\n"},{name:"@airgap/beacon-types/types/tezos/operations/PreEndorsement.d.ts",dts:"import { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nexport interface TezosPreEndorsementOperation extends TezosBaseOperation {\n kind: TezosOperationType.PREENDORSEMENT;\n slot: number;\n level: number;\n round: number;\n block_payload_hash: string;\n}\n"},{name:"@airgap/beacon-types/types/tezos/operations/Proposal.d.ts",dts:"import { TezosBaseOperation, TezosOperationType } from '../../..';\n/**\n * @internalapi\n * @category Tezos\n */\nexport interface TezosProposalOperation extends TezosBaseOperation {\n kind: TezosOperationType.PROPOSALS;\n period: string;\n proposals: string[];\n}\n"},{name:"@airgap/beacon-types/types/tezos/operations/RegisterGlobalConstant.d.ts",dts:"import { MichelineMichelsonV1Expression } from '../MichelineMichelsonV1Expression';\nimport { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nexport interface TezosRegisterGlobalConstantOperation extends TezosBaseOperation {\n kind: TezosOperationType.REGISTER_GLOBAL_CONSTANT;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n value: MichelineMichelsonV1Expression;\n}\n"},{name:"@airgap/beacon-types/types/tezos/operations/Reveal.d.ts",dts:"import { TezosBaseOperation, TezosOperationType } from '../../..';\n/**\n * @internalapi\n * @category Tezos\n */\nexport interface TezosRevealOperation extends TezosBaseOperation {\n kind: TezosOperationType.REVEAL;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n public_key: string;\n}\n"},{name:"@airgap/beacon-types/types/tezos/operations/SeedNonceRevelation.d.ts",dts:"import { TezosBaseOperation, TezosOperationType } from '../../..';\n/**\n * @internalapi\n * @category Tezos\n */\nexport interface TezosSeedNonceRevelationOperation extends TezosBaseOperation {\n kind: TezosOperationType.SEED_NONCE_REVELATION;\n level: string;\n nonce: string;\n}\n"},{name:"@airgap/beacon-types/types/tezos/operations/SetDepositsLimit.d.ts",dts:"import { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nexport interface TezosSetDepositsLimitOperation extends TezosBaseOperation {\n kind: TezosOperationType.SET_DEPOSITS_LIMIT;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n limit?: string;\n}\n"},{name:"@airgap/beacon-types/types/tezos/operations/SmartRollupAddMessages.d.ts",dts:"import { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nexport interface TezosSmartRollupAddMessagesOperation extends TezosBaseOperation {\n kind: TezosOperationType.SMART_ROLLUP_ADD_MESSAGES;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n message: string[];\n}\n"},{name:"@airgap/beacon-types/types/tezos/operations/SmartRollupCement.d.ts",dts:"import { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nexport interface TezosSmartRollupCementOperation extends TezosBaseOperation {\n kind: TezosOperationType.SMART_ROLLUP_CEMENT;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n rollup: string;\n}\n"},{name:"@airgap/beacon-types/types/tezos/operations/SmartRollupExecuteOutboxMessage.d.ts",dts:"import { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nexport interface TezosSmartRollupExecuteOutboxMessageOperation extends TezosBaseOperation {\n kind: TezosOperationType.SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n rollup: string;\n cemented_commitment: string;\n output_proof: string;\n}\n"},{name:"@airgap/beacon-types/types/tezos/operations/SmartRollupOriginate.d.ts",dts:"import { MichelineMichelsonV1Expression } from '../MichelineMichelsonV1Expression';\nimport { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nimport { PvmKind } from '../common';\nexport interface TezosSmartRollupOriginateOperation extends TezosBaseOperation {\n kind: TezosOperationType.SMART_ROLLUP_ORIGINATE;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n pvm_kind: PvmKind;\n kernel: string;\n parameters_ty: MichelineMichelsonV1Expression;\n whitelist?: string[];\n}\n"},{name:"@airgap/beacon-types/types/tezos/operations/SmartRollupPublish.d.ts",dts:"import { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nimport { SmartRollupPublishCommitment } from '../common';\nexport interface TezosSmartRollupPublishOperation extends TezosBaseOperation {\n kind: TezosOperationType.SMART_ROLLUP_PUBLISH;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n rollup: string;\n commitment: SmartRollupPublishCommitment;\n}\n"},{name:"@airgap/beacon-types/types/tezos/operations/SmartRollupRecoverBond.d.ts",dts:"import { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nexport interface TezosSmartRollupRecoverBondOperation extends TezosBaseOperation {\n kind: TezosOperationType.SMART_ROLLUP_RECOVER_BOND;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n rollup: string;\n staker: string;\n}\n"},{name:"@airgap/beacon-types/types/tezos/operations/SmartRollupRefute.d.ts",dts:'import { TezosOperationType } from \'../OperationTypes\';\nimport { TezosBaseOperation } from \'../TezosBaseOperation\';\nexport interface TezosSmartRollupRefuteOperation extends TezosBaseOperation {\n kind: TezosOperationType.SMART_ROLLUP_REFUTE;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n rollup: string;\n opponent: string;\n refutation: SmartRollupRefutation;\n}\nexport type SmartRollupRefutation = SmartRollupRefutationStart | SmartRollupRefutationMove;\nexport interface SmartRollupRefutationStart {\n refutation_kind: SmartRollupRefutationOptions.START;\n player_commitment_hash: string;\n opponent_commitment_hash: string;\n}\nexport interface SmartRollupRefutationMove {\n refutation_kind: SmartRollupRefutationOptions.MOVE;\n choice: string;\n step: SmartRollupRefutationMoveStep;\n}\nexport declare enum SmartRollupRefutationOptions {\n START = "start",\n MOVE = "move"\n}\nexport type SmartRollupRefutationMoveStep = SmartRollupRefutationMoveStepDissection[] | SmartRollupRefutationMoveStepProof;\nexport type SmartRollupGameStatus = SmartRollupRefuteGameStatusOptions.ONGOING | SmartRollupRefuteGameStatusEnded;\nexport interface SmartRollupRefutationMoveStepDissection {\n state?: string;\n tick: number;\n}\nexport interface SmartRollupRefutationMoveStepProof {\n pvm_step: string;\n input_proof?: SmartRollupRefutationMoveInputProof;\n}\nexport declare enum SmartRollupRefuteGameStatusOptions {\n ONGOING = "ongoing",\n ENDED = "ended"\n}\nexport interface SmartRollupRefuteGameStatusEnded {\n result: SmartRollupRefuteGameStatusResult;\n}\nexport type SmartRollupRefutationMoveInputProof = SmartRollupRefutationMoveInputProofInbox | SmartRollupRefutationMoveInputProofReveal | SmartRollupRefutationMoveInputProofFirstInput;\nexport type SmartRollupRefuteGameStatusResult = SmartRollupRefuteGameEndedResultLoser | SmartRollupRefuteGameEndedResultDraw;\nexport interface SmartRollupRefutationMoveInputProofInbox {\n input_proof_kind: SmartRollupInputProofKind.INBOX_PROOF;\n level: number;\n message_counter: string;\n serialized_proof: string;\n}\nexport interface SmartRollupRefutationMoveInputProofReveal {\n input_proof_kind: SmartRollupInputProofKind.REVEAL_PROOF;\n reveal_proof: SmartRollupRefuteRevealProofOptions;\n}\nexport interface SmartRollupRefutationMoveInputProofFirstInput {\n input_proof_kind: SmartRollupInputProofKind.FIRST_INPUT;\n}\nexport interface SmartRollupRefuteGameEndedResultLoser {\n kind: SmartRollupRefuteGameEndedPlayerOutcomes.LOSER;\n reason: SmartRollupRefuteGameEndedReason;\n player: string;\n}\nexport interface SmartRollupRefuteGameEndedResultDraw {\n kind: SmartRollupRefuteGameEndedPlayerOutcomes.DRAW;\n}\nexport declare enum SmartRollupInputProofKind {\n INBOX_PROOF = "inbox_proof",\n REVEAL_PROOF = "reveal_proof",\n FIRST_INPUT = "first_input"\n}\nexport type SmartRollupRefuteRevealProofOptions = SmartRollupRefuteRevealProofRaw | SmartRollupRefuteRevealProofMetadata | SmartRollupRefuteRevealProofDalPage;\nexport declare enum SmartRollupRefuteGameEndedPlayerOutcomes {\n LOSER = "loser",\n DRAW = "draw"\n}\nexport declare enum SmartRollupRefuteGameEndedReason {\n CONFLICT_RESOLVED = "conflict_resolved",\n TIMEOUT = "timeout"\n}\nexport declare enum SmartRollupRefuteRevealProofKind {\n RAW_DATA_PROOF = "raw_data_proof",\n METADATA_PROOF = "metadata_proof",\n DAL_PAGE_PROOF = "dal_page_proof"\n}\nexport interface SmartRollupRefuteRevealProofRaw {\n reveal_proof_kind: SmartRollupRefuteRevealProofKind.RAW_DATA_PROOF;\n raw_data: string;\n}\nexport interface SmartRollupRefuteRevealProofMetadata {\n reveal_proof_kind: SmartRollupRefuteRevealProofKind.METADATA_PROOF;\n}\nexport interface SmartRollupRefuteRevealProofDalPage {\n reveal_proof_kind: SmartRollupRefuteRevealProofKind.DAL_PAGE_PROOF;\n dal_page_id: {\n published_level: number;\n slot_index: number;\n page_index: number;\n };\n dal_proof: string;\n}\n'},{name:"@airgap/beacon-types/types/tezos/operations/SmartRollupTimeout.d.ts",dts:"import { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nexport interface TezosSmartRollupTimeoutOperation extends TezosBaseOperation {\n kind: TezosOperationType.SMART_ROLLUP_TIMEOUT;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n rollup: string;\n stakers: SmartRollupTimeoutStakers;\n}\nexport interface SmartRollupTimeoutStakers {\n alice: string;\n bob: string;\n}\n"},{name:"@airgap/beacon-types/types/tezos/operations/Transaction.d.ts",dts:"import { TezosBaseOperation, TezosOperationType, TezosTransactionParameters } from '../../..';\n/**\n * @internalapi\n * @category Tezos\n */\nexport interface TezosTransactionOperation extends TezosBaseOperation {\n kind: TezosOperationType.TRANSACTION;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n amount: string;\n destination: string;\n parameters?: TezosTransactionParameters;\n}\n"},{name:"@airgap/beacon-types/types/tezos/operations/TransferTicket.d.ts",dts:"import { MichelineMichelsonV1Expression } from '../MichelineMichelsonV1Expression';\nimport { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nexport interface TezosTransferTicketOperation extends TezosBaseOperation {\n kind: TezosOperationType.TRANSFER_TICKET;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n ticket_contents: MichelineMichelsonV1Expression;\n ticket_ty: MichelineMichelsonV1Expression;\n ticket_ticketer: string;\n ticket_amount: string;\n destination: string;\n entrypoint: string;\n}\n"},{name:"@airgap/beacon-types/types/tezos/operations/UpdateConsensusKey.d.ts",dts:"import { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nexport interface TezosUpdateConsensusKeyOperation extends TezosBaseOperation {\n kind: TezosOperationType.UPDATE_CONSENSUS_KEY;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n pk: string;\n}\n"},{name:"@airgap/beacon-types/types/tezos/operations/VdfRevelation.d.ts",dts:"import { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nexport interface TezosVdfRevelationOperation extends TezosBaseOperation {\n kind: TezosOperationType.VDF_REVELATION;\n solution: string[];\n}\n"},{name:"@airgap/beacon-types/types/tezos/InlinedAttestation.d.ts",dts:"import { TezosOperationType } from './OperationTypes';\nexport interface InlinedAttestation {\n branch: string;\n operations: InlinedAttestationContents;\n signature?: string;\n}\nexport interface InlinedAttestationContents {\n kind: InlinedAttestationKindEnum;\n slot?: number;\n round?: number;\n block_payload_hash?: string;\n level: number;\n}\nexport type InlinedAttestationKindEnum = TezosOperationType.ATTESTATION;\n"},{name:"@airgap/beacon-types/types/tezos/InlinedPreattestation.d.ts",dts:"import { TezosOperationType } from './OperationTypes';\nexport interface InlinedPreattestation {\n branch: string;\n operations: InlinedPreattestationContents;\n signature?: string;\n}\nexport interface InlinedPreattestationContents {\n kind: TezosOperationType.PREATTESTATION;\n slot: number;\n level: number;\n round: number;\n block_payload_hash: string;\n}\n"},{name:"@airgap/beacon-types/types/tezos/MichelineMichelsonV1Expression.d.ts",dts:"import { MichelsonPrimitives } from '../..';\n/**\n * @internalapi\n * @category Tezos\n */\nexport type MichelineMichelsonV1Expression = {\n int: string;\n} | {\n string: string;\n} | {\n bytes: string;\n} | MichelineMichelsonV1Expression[] | {\n prim: MichelsonPrimitives;\n args?: MichelineMichelsonV1Expression[];\n annots?: string[];\n};\n"},{name:"@airgap/beacon-types/types/tezos/MichelsonPrimitives.d.ts",dts:"/**\n * @internalapi\n * @category Tezos\n */\nexport type MichelsonPrimitives = 'ADD' | 'IF_NONE' | 'SWAP' | 'set' | 'nat' | 'CHECK_SIGNATURE' | 'IF_LEFT' | 'LAMBDA' | 'Elt' | 'CREATE_CONTRACT' | 'NEG' | 'big_map' | 'map' | 'or' | 'BLAKE2B' | 'bytes' | 'SHA256' | 'SET_DELEGATE' | 'CONTRACT' | 'LSL' | 'SUB' | 'IMPLICIT_ACCOUNT' | 'PACK' | 'list' | 'PAIR' | 'Right' | 'contract' | 'GT' | 'LEFT' | 'STEPS_TO_QUOTA' | 'storage' | 'TRANSFER_TOKENS' | 'CDR' | 'SLICE' | 'PUSH' | 'False' | 'SHA512' | 'CHAIN_ID' | 'BALANCE' | 'signature' | 'DUG' | 'SELF' | 'EMPTY_BIG_MAP' | 'LSR' | 'OR' | 'XOR' | 'lambda' | 'COMPARE' | 'key' | 'option' | 'Unit' | 'Some' | 'UNPACK' | 'NEQ' | 'INT' | 'pair' | 'AMOUNT' | 'DIP' | 'ABS' | 'ISNAT' | 'EXEC' | 'NOW' | 'LOOP' | 'chain_id' | 'string' | 'MEM' | 'MAP' | 'None' | 'address' | 'CONCAT' | 'EMPTY_SET' | 'MUL' | 'LOOP_LEFT' | 'timestamp' | 'LT' | 'UPDATE' | 'DUP' | 'SOURCE' | 'mutez' | 'SENDER' | 'IF_CONS' | 'RIGHT' | 'CAR' | 'CONS' | 'LE' | 'NONE' | 'IF' | 'SOME' | 'GET' | 'Left' | 'CAST' | 'int' | 'SIZE' | 'key_hash' | 'unit' | 'DROP' | 'EMPTY_MAP' | 'NIL' | 'DIG' | 'APPLY' | 'bool' | 'RENAME' | 'operation' | 'True' | 'FAILWITH' | 'parameter' | 'HASH_KEY' | 'EQ' | 'NOT' | 'UNIT' | 'Pair' | 'ADDRESS' | 'EDIV' | 'CREATE_ACCOUNT' | 'GE' | 'ITER' | 'code' | 'AND';\n"},{name:"@airgap/beacon-types/types/tezos/OperationTypes.d.ts",dts:'/**\n * @publicapi\n * @category Tezos\n */\nexport declare enum TezosOperationType {\n ORIGINATION = "origination",\n DELEGATION = "delegation",\n REVEAL = "reveal",\n TRANSACTION = "transaction",\n ACTIVATE_ACCOUNT = "activate_account",\n ENDORSEMENT = "endorsement",\n SEED_NONCE_REVELATION = "seed_nonce_revelation",\n DOUBLE_ENDORSEMENT_EVIDENCE = "double_endorsement_evidence",\n DOUBLE_BAKING_EVIDENCE = "double_baking_evidence",\n PROPOSALS = "proposals",\n BALLOT = "ballot",\n ATTESTATION = "attestation",\n PREATTESTATION = "preattestation",\n PREENDORSEMENT = "preendorsement",\n SET_DEPOSITS_LIMIT = "set_deposits_limit",\n DOUBLE_PREATTESTATION_EVIDENCE = "double_preattestation_evidence",\n DOUBLE_PREENDORSEMENT_EVIDENCE = "double_preendorsement_evidence",\n ATTESTATION_WITH_SLOT = "attestation_with_slot",\n ENDORSEMENT_WITH_SLOT = "endorsement_with_slot",\n DOUBLE_ATTESTATION_EVIDENCE = "double_attestation_evidence",\n FAILING_NOOP = "failing_noop",\n REGISTER_GLOBAL_CONSTANT = "register_global_constant",\n TRANSFER_TICKET = "transfer_ticket",\n INCREASE_PAID_STORAGE = "increase_paid_storage",\n UPDATE_CONSENSUS_KEY = "update_consensus_key",\n DRAIN_DELEGATE = "drain_delegate",\n VDF_REVELATION = "vdf_revelation",\n EVENT = "event",\n TICKET_UPDATES = "ticket_updates",\n SMART_ROLLUP_ORIGINATE = "smart_rollup_originate",\n SMART_ROLLUP_ADD_MESSAGES = "smart_rollup_add_messages",\n SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE = "smart_rollup_execute_outbox_message",\n SMART_ROLLUP_PUBLISH = "smart_rollup_publish",\n SMART_ROLLUP_CEMENT = "smart_rollup_cement",\n SMART_ROLLUP_RECOVER_BOND = "smart_rollup_recover_bond",\n SMART_ROLLUP_REFUTE = "smart_rollup_refute",\n SMART_ROLLUP_TIMEOUT = "smart_rollup_timeout",\n DAL_PUBLISH_COMMITMENT = "dal_publish_commitment"\n}\n'},{name:"@airgap/beacon-types/types/tezos/PartialTezosOperation.d.ts",dts:"import { Optional, TezosAttestationOperation, TezosAttestationWithSlotOperation, TezosDoubleAttestationEvidenceOperation, TezosDoublePreAttestationEvidenceOperation, TezosDoublePreEndorsementEvidenceOperation, TezosDrainDelegateOperation, TezosEndorsementWithSlotOperation, TezosFailingNoopOperation, TezosIncreasePaidStorageOperation, TezosPreAttestationOperation, TezosRegisterGlobalConstantOperation, TezosSetDepositsLimitOperation, TezosSmartRollupAddMessagesOperation, TezosSmartRollupCementOperation, TezosSmartRollupExecuteOutboxMessageOperation, TezosSmartRollupOriginateOperation, TezosSmartRollupPublishOperation, TezosSmartRollupRecoverBondOperation, TezosSmartRollupRefuteOperation, TezosTransferTicketOperation, TezosUpdateConsensusKeyOperation, TezosVdfRevelationOperation } from '@airgap/beacon-types';\nimport { TezosActivateAccountOperation } from './operations/ActivateAccount';\nimport { TezosBallotOperation } from './operations/Ballot';\nimport { TezosDelegationOperation } from './operations/Delegation';\nimport { TezosDoubleBakingEvidenceOperation } from './operations/DoubleBakingEvidence';\nimport { TezosEndorsementOperation } from './operations/Endorsement';\nimport { TezosOriginationOperation } from './operations/Origination';\nimport { TezosProposalOperation } from './operations/Proposal';\nimport { TezosRevealOperation } from './operations/Reveal';\nimport { TezosSeedNonceRevelationOperation } from './operations/SeedNonceRevelation';\nimport { TezosTransactionOperation } from './operations/Transaction';\nimport { TezosPreEndorsementOperation } from './operations/PreEndorsement';\nimport { TezosDalPublishCommitmentOperation } from './operations/DalPublishCommitment';\n/**\n * @publicapi\n * @category Tezos\n */\nexport type omittedProperties = 'source' | 'fee' | 'counter' | 'gas_limit' | 'storage_limit';\n/**\n * @internalapi\n * @category Tezos\n */\nexport type PartialTezosDelegationOperation = Optional;\n/**\n * @internalapi\n * @category Tezos\n */\nexport type PartialTezosOriginationOperation = Optional;\n/**\n * @internalapi\n * @category Tezos\n */\nexport type PartialTezosRevealOperation = Optional;\n/**\n * @internalapi\n * @category Tezos\n */\nexport type PartialTezosTransactionOperation = Optional;\n/**\n * @internalapi\n * @category Tezos\n */\nexport type PartialTezosSetDepositsLimitOperation = Optional;\n/**\n * @internalapi\n * @category Tezos\n */\nexport type PartialTezosRegisterGlobalConstantOperation = Optional;\n/**\n * @internalapi\n * @category Tezos\n */\nexport type PartialTezosTransferTicketOperation = Optional;\n/**\n * @internalapi\n * @category Tezos\n */\nexport type PartialTezosIncreasePaidStorageOperation = Optional;\n/**\n * @internalapi\n * @category Tezos\n */\nexport type PartialTezosUpdateConsensusKeyOperation = Optional;\n/**\n * @internalapi\n * @category Tezos\n */\nexport type PartialTezosSmartRollupOriginateOperation = Optional;\n/**\n * @internalapi\n * @category Tezos\n */\nexport type PartialTezosSmartRollupAddMessagesOperation = Optional;\n/**\n * @internalapi\n * @category Tezos\n */\nexport type PartialTezosSmartRollupExecuteOutboxMessageOperation = Optional;\n/**\n * @internalapi\n * @category Tezos\n */\nexport type PartialTezosSmartRollupPublishOperation = Optional;\n/**\n * @internalapi\n * @category Tezos\n */\nexport type PartialTezosSmartRollupCementOperation = Optional;\n/**\n * @internalapi\n * @category Tezos\n */\nexport type PartialTezosSmartRollupRecoverBondOperation = Optional;\n/**\n * @internalapi\n * @category Tezos\n */\nexport type PartialTezosSmartRollupRefuteOperation = Optional;\n/**\n * @internalapi\n * @category Tezos\n */\nexport type PartialTezosSmartRollupTimeoutOperation = Optional;\nexport type PartialTezosDalPublishCommitmentOperation = Optional;\n/**\n * @publicapi\n * @category Tezos\n */\nexport type PartialTezosOperation = TezosActivateAccountOperation | TezosBallotOperation | PartialTezosDelegationOperation | TezosDoubleBakingEvidenceOperation | TezosEndorsementOperation | PartialTezosOriginationOperation | TezosProposalOperation | PartialTezosRevealOperation | TezosSeedNonceRevelationOperation | PartialTezosTransactionOperation | TezosAttestationOperation | TezosPreAttestationOperation | TezosPreEndorsementOperation | PartialTezosSetDepositsLimitOperation | TezosDoublePreAttestationEvidenceOperation | TezosDoublePreEndorsementEvidenceOperation | TezosAttestationWithSlotOperation | TezosEndorsementWithSlotOperation | TezosDoubleAttestationEvidenceOperation | TezosFailingNoopOperation | PartialTezosRegisterGlobalConstantOperation | PartialTezosTransferTicketOperation | PartialTezosIncreasePaidStorageOperation | PartialTezosUpdateConsensusKeyOperation | TezosDrainDelegateOperation | TezosVdfRevelationOperation | PartialTezosSmartRollupOriginateOperation | PartialTezosSmartRollupAddMessagesOperation | PartialTezosSmartRollupExecuteOutboxMessageOperation | PartialTezosSmartRollupPublishOperation | PartialTezosSmartRollupCementOperation | PartialTezosSmartRollupRecoverBondOperation | PartialTezosSmartRollupRefuteOperation | PartialTezosSmartRollupTimeoutOperation | PartialTezosDalPublishCommitmentOperation;\n"},{name:"@airgap/beacon-types/types/tezos/TezosBaseOperation.d.ts",dts:"import { TezosOperationType } from '../..';\n/**\n * @internalapi\n * @category Tezos\n */\nexport interface TezosBaseOperation {\n kind: TezosOperationType;\n}\n"},{name:"@airgap/beacon-types/types/tezos/TezosBlockHeader.d.ts",dts:"/**\n * @internalapi\n * @category Tezos\n */\nexport interface TezosBlockHeader {\n level: number;\n proto: number;\n predecessor: string;\n timestamp: string;\n validation_pass: number;\n operations_hash: string;\n fitness: string[];\n context: string;\n priority: number;\n proof_of_work_nonce: string;\n signature: string;\n}\n"},{name:"@airgap/beacon-types/types/tezos/TezosOperation.d.ts",dts:"import { TezosActivateAccountOperation, TezosBallotOperation, TezosDelegationOperation, TezosDoubleBakingEvidenceOperation, TezosEndorsementOperation, TezosOriginationOperation, TezosProposalOperation, TezosRevealOperation, TezosSeedNonceRevelationOperation, TezosTransactionOperation } from '../..';\n/**\n * @internalapi\n * @category Tezos\n */\nexport type TezosOperation = TezosActivateAccountOperation | TezosBallotOperation | TezosDelegationOperation | TezosDoubleBakingEvidenceOperation | TezosEndorsementOperation | TezosOriginationOperation | TezosProposalOperation | TezosRevealOperation | TezosSeedNonceRevelationOperation | TezosTransactionOperation;\n"},{name:"@airgap/beacon-types/types/tezos/TezosTransactionParameters.d.ts",dts:"import { MichelineMichelsonV1Expression } from './MichelineMichelsonV1Expression';\n/**\n * @internalapi\n * @category Tezos\n */\nexport interface TezosTransactionParameters {\n entrypoint: 'default' | 'root' | 'do' | 'set_delegate' | 'remove_delegate' | string;\n value: MichelineMichelsonV1Expression;\n}\n"},{name:"@airgap/beacon-types/types/tezos/common.d.ts",dts:'import { MichelineMichelsonV1Expression } from \'./MichelineMichelsonV1Expression\';\nimport { TezosOperationType } from \'./OperationTypes\';\nexport type MetadataBalanceUpdatesKindEnum = \'contract\' | \'freezer\' | \'accumulator\' | \'burned\' | \'commitment\' | \'minted\' | \'staking\';\nexport type MetadataBalanceUpdatesOriginEnum = \'block\' | \'migration\' | \'subsidy\' | \'simulation\' | \'delayed_operation\';\nexport type MetadataBalanceUpdatesCategoryEnum = METADATA_BALANCE_UPDATES_CATEGORY;\nexport declare enum METADATA_BALANCE_UPDATES_CATEGORY {\n BAKING_BONUSES = "baking bonuses",\n BAKING_REWARDS = "baking rewards",\n BLOCK_FEES = "block fees",\n BONDS = "bonds",\n BOOTSTRAP = "bootstrap",\n BURNED = "burned",\n COMMITMENT = "commitment",\n DELEGATE_DENOMINATOR = "delegate_denominator",\n DELEGATOR_NUMERATOR = "delegator_numerator",\n DEPOSITS = "deposits",\n ENDORSING_REWARDS = "endorsing rewards",\n INVOICE = "invoice",\n LOST_ENDORSING_REWARDS = "lost endorsing rewards",\n MINTED = "minted",\n NONCE_REVELATION_REWARDS = "nonce revelation rewards",\n PUNISHMENTS = "punishments",\n SMART_ROLLUP_REFUTATION_PUNISHMENTS = "smart_rollup_refutation_punishments",\n SMART_ROLLUP_REFUTATION_REWARDS = "smart_rollup_refutation_rewards",\n STORAGE_FEES = "storage fees",\n SUBSIDY = "subsidy",\n UNSTAKED_DEPOSITS = "unstaked_deposits"\n}\nexport type FrozenStaker = SingleStaker | SharedStaker | Baker;\nexport type Staker = SingleStaker | SharedStaker;\nexport interface SingleStaker {\n contract: string;\n delegate: string;\n}\nexport interface SharedStaker {\n delegate: string;\n}\nexport interface Baker {\n baker: string;\n}\nexport type BondId = {\n smart_rollup: string;\n};\nexport type InternalOperationResultKindEnum = TezosOperationType.TRANSACTION | TezosOperationType.ORIGINATION | TezosOperationType.DELEGATION | TezosOperationType.EVENT;\nexport interface TransactionOperationParameter {\n entrypoint: string;\n value: MichelineMichelsonV1Expression;\n}\nexport interface ScriptedContracts {\n code: MichelineMichelsonV1Expression[];\n storage: MichelineMichelsonV1Expression;\n}\nexport type ContractBigMapDiff = ContractBigMapDiffItem[];\nexport interface ContractBigMapDiffItem {\n key_hash?: string;\n key?: MichelineMichelsonV1Expression;\n value?: MichelineMichelsonV1Expression;\n action?: DiffActionEnum;\n big_map?: string;\n source_big_map?: string;\n destination_big_map?: string;\n key_type?: MichelineMichelsonV1Expression;\n value_type?: MichelineMichelsonV1Expression;\n}\nexport type DiffActionEnum = \'update\' | \'remove\' | \'copy\' | \'alloc\';\nexport type LazyStorageDiff = LazyStorageDiffBigMap | LazyStorageDiffSaplingState;\nexport interface LazyStorageDiffBigMap {\n kind: \'big_map\';\n id: string;\n diff: LazyStorageDiffBigMapItems;\n}\nexport interface LazyStorageDiffSaplingState {\n kind: \'sapling_state\';\n id: string;\n diff: LazyStorageDiffSaplingStateItems;\n}\nexport interface LazyStorageDiffBigMapItems {\n action: DiffActionEnum;\n updates?: LazyStorageDiffUpdatesBigMap[];\n source?: string;\n key_type?: MichelineMichelsonV1Expression;\n value_type?: MichelineMichelsonV1Expression;\n}\nexport interface LazyStorageDiffUpdatesBigMap {\n key_hash: string;\n key: MichelineMichelsonV1Expression;\n value?: MichelineMichelsonV1Expression;\n}\nexport interface LazyStorageDiffSaplingStateItems {\n action: DiffActionEnum;\n updates?: LazyStorageDiffUpdatesSaplingState;\n source?: string;\n memo_size?: number;\n}\nexport interface LazyStorageDiffUpdatesSaplingState {\n commitments_and_ciphertexts: CommitmentsAndCiphertexts[];\n nullifiers: string[];\n}\nexport type CommitmentsAndCiphertexts = [string, SaplingTransactionCiphertext];\nexport interface SaplingTransactionCiphertext {\n cv: string;\n epk: string;\n payload_enc: string;\n nonce_enc: string;\n payload_out: string;\n nonce_out: string;\n}\nexport declare enum PvmKind {\n WASM2 = "wasm_2_0_0",\n ARITH = "arith",\n RISCV = "riscv"\n}\nexport interface SmartRollupPublishCommitment {\n compressed_state: string;\n inbox_level: number;\n predecessor: string;\n number_of_ticks: string;\n}\n'},{name:"@airgap/beacon-types/types/transport/TransportStatus.d.ts",dts:'export declare enum TransportStatus {\n NOT_CONNECTED = "NOT_CONNECTED",\n CONNECTING = "CONNECTING",\n CONNECTED = "CONNECTED"\n}\n'},{name:"@airgap/beacon-types/types/transport/TransportType.d.ts",dts:'/**\n * @internalapi\n */\nexport declare enum TransportType {\n CHROME_MESSAGE = "chrome_message",\n WALLETCONNECT = "walletconnect",\n POST_MESSAGE = "post_message",\n LEDGER = "ledger",\n P2P = "p2p"\n}\n'},{name:"@airgap/beacon-types/types/utils/Optional.d.ts",dts:"export type Optional = Partial & Omit;\n"},{name:"@airgap/beacon-types/types/AccountInfo.d.ts",dts:"import { Origin } from '..';\nimport { PermissionEntity } from './PermissionEntity';\nimport { Notification } from './Notification';\nexport type AccountIdentifier = string;\nexport interface AccountInfo extends PermissionEntity {\n accountIdentifier: AccountIdentifier;\n senderId: string;\n origin: {\n type: Origin;\n id: string;\n };\n walletKey?: string;\n publicKey?: string;\n connectedAt: number;\n notification?: Notification;\n hasVerifiedChallenge?: boolean;\n walletType: 'implicit' | 'abstracted_account';\n verificationType?: 'proof_of_event';\n}\n"},{name:"@airgap/beacon-types/types/AnalyticsInterface.d.ts",dts:"export interface AnalyticsInterface {\n track(trigger: 'click' | 'event', section: string, label: string, data?: Record): void;\n}\n"},{name:"@airgap/beacon-types/types/BeaconErrorType.d.ts",dts:'export declare enum BeaconErrorType {\n /**\n * {@link BroadcastBeaconError}\n *\n * Will be returned if the user chooses that the transaction is broadcast but there is an error (eg. node not available).\n *\n * Returned by: Broadcast | Operation Request\n */\n BROADCAST_ERROR = "BROADCAST_ERROR",\n /**\n * {@link NetworkNotSupportedBeaconError}\n *\n * Will be returned if the selected network is not supported by the wallet / extension.\n *\n * Returned by: Permission\n */\n NETWORK_NOT_SUPPORTED = "NETWORK_NOT_SUPPORTED",\n /**\n * {@link NoAddressBeaconError}\n *\n * Will be returned if there is no address present for the protocol / network requested.\n *\n * Returned by: Permission\n */\n NO_ADDRESS_ERROR = "NO_ADDRESS_ERROR",\n /**\n * {@link NoPrivateKeyBeaconError}\n *\n * Will be returned if the private key matching the sourceAddress could not be found.\n *\n * Returned by: Sign\n */\n NO_PRIVATE_KEY_FOUND_ERROR = "NO_PRIVATE_KEY_FOUND_ERROR",\n /**\n * {@link NotGrantedBeaconError}\n *\n * Will be returned if the signature was blocked // (Not needed?) Permission: Will be returned if the permissions requested by the App were not granted.\n *\n * Returned by: Sign\n */\n NOT_GRANTED_ERROR = "NOT_GRANTED_ERROR",\n /**\n * {@link ParametersInvalidBeaconError}\n *\n * Will be returned if any of the parameters are invalid.\n *\n * Returned by: Operation Request\n */\n PARAMETERS_INVALID_ERROR = "PARAMETERS_INVALID_ERROR",\n /**\n * {@link TooManyOperationsBeaconError}\n *\n * Will be returned if too many operations were in the request and they were not able to fit into a single operation group.\n *\n * Returned by: Operation Request\n */\n TOO_MANY_OPERATIONS = "TOO_MANY_OPERATIONS",\n /**\n * {@link TransactionInvalidBeaconError}\n *\n * Will be returned if the transaction is not parsable or is rejected by the node.\n *\n * Returned by: Broadcast\n */\n TRANSACTION_INVALID_ERROR = "TRANSACTION_INVALID_ERROR",\n /**\n * {@link SignatureTypeNotSupportedBeaconError}\n *\n * Will be returned if the signing type is not supported.\n *\n * Returned by: Sign\n */\n SIGNATURE_TYPE_NOT_SUPPORTED = "SIGNATURE_TYPE_NOT_SUPPORTED",\n /**\n * {@link AbortedBeaconError}\n *\n * Will be returned if the request was aborted by the user or the wallet.\n *\n * Returned by: Permission | Operation Request | Sign Request | Broadcast\n */\n ABORTED_ERROR = "ABORTED_ERROR",\n /**\n * {@link UnknownBeaconError}\n *\n * Used as a wildcard if an unexpected error occured.\n *\n * Returned by: Permission | Operation Request | Sign Request | Broadcast\n */\n UNKNOWN_ERROR = "UNKNOWN_ERROR"\n}\n'},{name:"@airgap/beacon-types/types/ColorMode.d.ts",dts:'export declare enum ColorMode {\n LIGHT = "light",\n DARK = "dark"\n}\n'},{name:"@airgap/beacon-types/types/ConnectionContext.d.ts",dts:"/// \nimport { Origin } from '..';\n/**\n * @internalapi\n */\nexport interface ConnectionContext {\n origin: Origin;\n id: string;\n extras?: {\n sender: chrome.runtime.MessageSender;\n sendResponse(response?: unknown): void;\n };\n}\n"},{name:"@airgap/beacon-types/types/EncryptionOperation.d.ts",dts:""},{name:"@airgap/beacon-types/types/EncryptionType.d.ts",dts:""},{name:"@airgap/beacon-types/types/Extension.d.ts",dts:"export interface Extension {\n id: string;\n name: string;\n shortName?: string;\n iconUrl?: string;\n color?: string;\n}\n"},{name:"@airgap/beacon-types/types/ExtensionMessage.d.ts",dts:"import { ExtensionMessageTarget } from '..';\n/**\n * @internalapi\n */\nexport interface ExtensionMessage {\n target: ExtensionMessageTarget;\n targetId?: string;\n sender?: U;\n payload: T;\n}\n/**\n * @internalapi\n */\nexport interface EncryptedExtensionMessage {\n target: ExtensionMessageTarget;\n targetId?: string;\n sender?: U;\n encryptedPayload: string;\n}\n"},{name:"@airgap/beacon-types/types/ExtensionMessageTarget.d.ts",dts:'/**\n * @internalapi\n */\nexport declare enum ExtensionMessageTarget {\n BACKGROUND = "toBackground",\n PAGE = "toPage",\n EXTENSION = "toExtension"\n}\n'},{name:"@airgap/beacon-types/types/Notification.d.ts",dts:"export interface Notification {\n version: number;\n apiUrl: string;\n token: string;\n}\n"},{name:"@airgap/beacon-types/types/Origin.d.ts",dts:'/**\n * @internalapi\n */\nexport declare enum Origin {\n WEBSITE = "website",\n EXTENSION = "extension",\n P2P = "p2p",\n WALLETCONNECT = "walletconnect"\n}\n'},{name:"@airgap/beacon-types/types/P2PPairingRequest.d.ts",dts:"import { ExtendedPeerInfo, PeerInfo } from './PeerInfo';\n/**\n * @internalapi\n */\nexport declare class P2PPairingRequest implements PeerInfo {\n readonly type: string;\n relayServer: string;\n id: string;\n name: string;\n icon?: string | undefined;\n appUrl?: string | undefined;\n publicKey: string;\n version: string;\n constructor(id: string, name: string, publicKey: string, version: string, relayServer: string, icon?: string, appUrl?: string);\n}\n/**\n * @internalapi\n */\nexport declare class ExtendedP2PPairingRequest extends P2PPairingRequest implements ExtendedPeerInfo {\n senderId: string;\n constructor(id: string, name: string, publicKey: string, version: string, relayServer: string, senderId: string, icon?: string, appUrl?: string);\n}\n"},{name:"@airgap/beacon-types/types/P2PPairingResponse.d.ts",dts:"import { ExtendedPeerInfo, PeerInfo } from './PeerInfo';\n/**\n * @internalapi\n */\nexport declare class P2PPairingResponse implements PeerInfo {\n readonly type: string;\n relayServer: string;\n id: string;\n name: string;\n icon?: string | undefined;\n appUrl?: string | undefined;\n publicKey: string;\n version: string;\n constructor(id: string, name: string, publicKey: string, version: string, relayServer: string, icon?: string, appUrl?: string);\n}\n/**\n * @internalapi\n */\nexport declare class ExtendedP2PPairingResponse extends P2PPairingResponse implements ExtendedPeerInfo {\n senderId: string;\n constructor(id: string, name: string, publicKey: string, version: string, relayServer: string, senderId: string, icon?: string, appUrl?: string);\n}\n"},{name:"@airgap/beacon-types/types/PeerInfo.d.ts",dts:"export interface PeerInfo {\n id: string;\n name: string;\n type: string;\n icon?: string;\n appUrl?: string;\n publicKey: string;\n version: string;\n}\nexport interface ExtendedPeerInfo extends PeerInfo {\n senderId: string;\n}\nexport type PeerInfoType = PeerInfo | ExtendedPeerInfo;\n"},{name:"@airgap/beacon-types/types/PermissionEntity.d.ts",dts:"import { Network, PermissionScope, Threshold } from '..';\nexport interface PermissionEntity {\n address: string;\n network: Network;\n scopes: PermissionScope[];\n threshold?: Threshold;\n}\n"},{name:"@airgap/beacon-types/types/PermissionInfo.d.ts",dts:"import { AppMetadata } from '..';\nimport { PermissionEntity } from './PermissionEntity';\nexport interface PermissionInfo extends PermissionEntity {\n accountIdentifier: string;\n senderId: string;\n appMetadata: AppMetadata;\n website: string;\n publicKey?: string;\n connectedAt: number;\n}\n"},{name:"@airgap/beacon-types/types/PostMessagePairingRequest.d.ts",dts:"import { ExtendedPeerInfo, PeerInfo } from './PeerInfo';\n/**\n * @internalapi\n */\nexport declare class PostMessagePairingRequest implements PeerInfo {\n readonly type: string;\n id: string;\n name: string;\n icon?: string | undefined;\n appUrl?: string | undefined;\n publicKey: string;\n version: string;\n constructor(id: string, name: string, publicKey: string, version: string, icon?: string, appUrl?: string);\n}\n/**\n * @internalapi\n */\nexport declare class ExtendedPostMessagePairingRequest extends PostMessagePairingRequest implements ExtendedPeerInfo {\n senderId: string;\n constructor(id: string, name: string, publicKey: string, version: string, senderId: string, icon?: string, appUrl?: string);\n}\n"},{name:"@airgap/beacon-types/types/PostMessagePairingResponse.d.ts",dts:"import { ExtendedPeerInfo, PeerInfo } from './PeerInfo';\n/**\n * @internalapi\n */\nexport declare class PostMessagePairingResponse implements PeerInfo {\n readonly type: string;\n id: string;\n name: string;\n icon?: string | undefined;\n appUrl?: string | undefined;\n publicKey: string;\n version: string;\n constructor(id: string, name: string, publicKey: string, version: string, icon?: string, appUrl?: string);\n}\n/**\n * @internalapi\n */\nexport declare class ExtendedPostMessagePairingResponse extends PostMessagePairingResponse implements ExtendedPeerInfo {\n senderId: string;\n extensionId: string;\n constructor(id: string, name: string, publicKey: string, version: string, senderId: string, extensionId: string, icon?: string, appUrl?: string);\n}\n"},{name:"@airgap/beacon-types/types/PushToken.d.ts",dts:"export interface PushToken {\n publicKey: string;\n backendUrl: string;\n accessToken: string;\n managementToken: string;\n}\n"},{name:"@airgap/beacon-types/types/Regions.d.ts",dts:'/**\n * Geographic region where a beacon node is located. This list can be changed in the future to be more specific, but for now it should cover most general areas.\n */\nexport declare enum Regions {\n EUROPE_EAST = "europe-east",\n EUROPE_WEST = "europe-west",\n NORTH_AMERICA_EAST = "north-america-east",\n NORTH_AMERICA_WEST = "north-america-west",\n CENTRAL_AMERICA = "central-america",\n SOUTH_AMERICA = "south-america",\n ASIA_EAST = "asia-east",\n ASIA_WEST = "asia-west",\n AFRICA = "africa",\n AUSTRALIA = "australia"\n}\nexport type NodeDistributions = Record;\n'},{name:"@airgap/beacon-types/types/RequestBroadcastInput.d.ts",dts:"import { Network } from '..';\n/**\n * @category DApp\n */\nexport interface RequestBroadcastInput {\n /**\n * @deprecated You should now specify the network in the constructor of the DAppClient\n */\n network?: Network;\n signedTransaction: string;\n}\n"},{name:"@airgap/beacon-types/types/RequestEncryptPayloadInput.d.ts",dts:"/**\n * @category DApp\n */\n"},{name:"@airgap/beacon-types/types/RequestOperationInput.d.ts",dts:"import { PartialTezosOperation } from './tezos/PartialTezosOperation';\n/**\n * @category DApp\n */\nexport interface RequestOperationInput {\n operationDetails: PartialTezosOperation[];\n}\n"},{name:"@airgap/beacon-types/types/RequestPermissionInput.d.ts",dts:"import { Network, PermissionScope } from '..';\n/**\n * @category DApp\n */\nexport interface RequestPermissionInput {\n /**\n * @deprecated You should now specify the network in the constructor of the DAppClient\n */\n network?: Network;\n scopes?: PermissionScope[];\n}\n"},{name:"@airgap/beacon-types/types/RequestProofOfEventChallengeInput.d.ts",dts:"/**\n * @category DApp\n */\nexport interface RequestProofOfEventChallengeInput {\n payload: string;\n}\n"},{name:"@airgap/beacon-types/types/RequestSignPayloadInput.d.ts",dts:"import { SigningType } from '..';\n/**\n * @category DApp\n */\nexport interface RequestSignPayloadInput {\n signingType?: SigningType;\n payload: string;\n sourceAddress?: string;\n}\n"},{name:"@airgap/beacon-types/types/RequestSimulatedProofOfEventChallengeInput.d.ts",dts:"/**\n * @category DApp\n */\nexport interface RequestSimulatedProofOfEventChallengeInput {\n /** A custom payload than should be emitted by the list of operations returned by the dapp*/\n payload: string;\n}\n"},{name:"@airgap/beacon-types/types/WalletConnectPairingRequest.d.ts",dts:"import { ExtendedPeerInfo, PeerInfo } from './PeerInfo';\n/**\n * @internalapi\n */\nexport declare class WalletConnectPairingRequest implements PeerInfo {\n readonly type: string;\n uri: string;\n id: string;\n name: string;\n icon?: string | undefined;\n appUrl?: string | undefined;\n publicKey: string;\n version: string;\n constructor(id: string, name: string, publicKey: string, version: string, uri: string, icon?: string, appUrl?: string);\n}\n/**\n * @internalapi\n */\nexport declare class ExtendedWalletConnectPairingRequest extends WalletConnectPairingRequest implements ExtendedPeerInfo {\n senderId: string;\n constructor(id: string, name: string, publicKey: string, version: string, senderId: string, uri: string, icon?: string, appUrl?: string);\n}\n"},{name:"@airgap/beacon-types/types/WalletConnectPairingResponse.d.ts",dts:"import { PeerInfo } from './PeerInfo';\n/**\n * @internalapi\n */\nexport declare class WalletConnectPairingResponse implements PeerInfo {\n readonly type: string;\n id: string;\n name: string;\n icon?: string | undefined;\n appUrl?: string | undefined;\n publicKey: string;\n version: string;\n constructor(id: string, name: string, publicKey: string, version: string, icon?: string, appUrl?: string);\n}\n/**\n * @internalapi\n */\nexport declare class ExtendedWalletConnectPairingResponse extends WalletConnectPairingResponse {\n senderId: string;\n extensionId: string;\n constructor(id: string, name: string, publicKey: string, version: string, senderId: string, extensionId: string, icon?: string, appUrl?: string);\n}\n"},{name:"@airgap/beacon-types/types/WalletInfo.d.ts",dts:"export interface WalletInfo {\n name: string;\n type?: 'extension' | 'mobile' | 'web' | 'desktop';\n icon?: string;\n deeplink?: string;\n}\n"},{name:"@airgap/beacon-types/types/ui.d.ts",dts:"import { NetworkType } from './beacon/NetworkType';\nexport interface AppBase {\n key: string;\n name: string;\n shortName: string;\n color: string;\n logo: string;\n supportedInteractionStandards?: ('wallet_connect' | 'beacon')[];\n}\nexport interface ExtensionApp extends AppBase {\n id: string;\n link: string;\n}\nexport interface WebApp extends AppBase {\n links: {\n [NetworkType.MAINNET]: string;\n [NetworkType.GHOSTNET]?: string;\n [NetworkType.WEEKLYNET]?: string;\n [NetworkType.DAILYNET]?: string;\n [NetworkType.DELPHINET]?: string;\n [NetworkType.EDONET]?: string;\n [NetworkType.FLORENCENET]?: string;\n [NetworkType.GRANADANET]?: string;\n [NetworkType.HANGZHOUNET]?: string;\n [NetworkType.ITHACANET]?: string;\n [NetworkType.JAKARTANET]?: string;\n [NetworkType.KATHMANDUNET]?: string;\n [NetworkType.LIMANET]?: string;\n [NetworkType.MUMBAINET]?: string;\n [NetworkType.NAIROBINET]?: string;\n [NetworkType.OXFORDNET]?: string;\n [NetworkType.PARISNET]?: string;\n [NetworkType.CUSTOM]?: string;\n };\n}\nexport interface DesktopApp extends AppBase {\n deepLink: string;\n downloadLink: string;\n}\nexport interface App extends AppBase {\n universalLink: string;\n deepLink?: string;\n}\n"},{name:"@airgap/beacon-types/index.d.ts",dts:"/**\n * General docs\n * @module public\n */\nimport { AppMetadata } from './types/beacon/AppMetadata';\nimport { PermissionRequest } from './types/beacon/messages/PermissionRequest';\nimport { ProofOfEventChallengeRequest } from './types/beacon/messages/ProofOfEventChallengeRequest';\nimport { ProofOfEventChallengeResponse } from './types/beacon/messages/ProofOfEventChallengeResponse';\nimport { SimulatedProofOfEventChallengeRequest } from './types/beacon/messages/SimulatedProofOfEventChallengeRequest';\nimport { SimulatedProofOfEventChallengeResponse } from './types/beacon/messages/SimulatedProofOfEventChallengeResponse';\nimport { Network } from './types/beacon/Network';\nimport { BeaconBaseMessage } from './types/beacon/BeaconBaseMessage';\nimport { BeaconMessageType } from './types/beacon/BeaconMessageType';\nimport { PermissionScope } from './types/beacon/PermissionScope';\nimport { PermissionResponse } from './types/beacon/messages/PermissionResponse';\nimport { OperationRequest } from './types/beacon/messages/OperationRequest';\nimport { OperationResponse } from './types/beacon/messages/OperationResponse';\nimport { SignPayloadRequest } from './types/beacon/messages/SignPayloadRequest';\nimport { SignPayloadResponse } from './types/beacon/messages/SignPayloadResponse';\nimport { BroadcastRequest } from './types/beacon/messages/BroadcastRequest';\nimport { BroadcastResponse } from './types/beacon/messages/BroadcastResponse';\nimport { NetworkType } from './types/beacon/NetworkType';\nimport { TezosBaseOperation } from './types/tezos/TezosBaseOperation';\nimport { TezosOperationType } from './types/tezos/OperationTypes';\nimport { TezosActivateAccountOperation } from './types/tezos/operations/ActivateAccount';\nimport { TezosBallotOperation } from './types/tezos/operations/Ballot';\nimport { TezosDelegationOperation } from './types/tezos/operations/Delegation';\nimport { TezosDoubleBakingEvidenceOperation } from './types/tezos/operations/DoubleBakingEvidence';\nimport { TezosBlockHeader } from './types/tezos/TezosBlockHeader';\nimport { TezosDoubleEndorsementEvidenceOperation } from './types/tezos/operations/DoubleEndorsementEvidence';\nimport { TezosEndorsementOperation } from './types/tezos/operations/Endorsement';\nimport { TezosOriginationOperation } from './types/tezos/operations/Origination';\nimport { TezosProposalOperation } from './types/tezos/operations/Proposal';\nimport { TezosRevealOperation } from './types/tezos/operations/Reveal';\nimport { TezosSeedNonceRevelationOperation } from './types/tezos/operations/SeedNonceRevelation';\nimport { TezosTransactionOperation } from './types/tezos/operations/Transaction';\nimport { MichelineMichelsonV1Expression } from './types/tezos/MichelineMichelsonV1Expression';\nimport { MichelsonPrimitives } from './types/tezos/MichelsonPrimitives';\nimport { TezosTransactionParameters } from './types/tezos/TezosTransactionParameters';\nimport { Origin } from './types/Origin';\nimport { AccountInfo, AccountIdentifier } from './types/AccountInfo';\nimport { EncryptedExtensionMessage, ExtensionMessage } from './types/ExtensionMessage';\nimport { ExtensionMessageTarget } from './types/ExtensionMessageTarget';\nimport { TezosOperation } from './types/tezos/TezosOperation';\nimport { BeaconErrorType } from './types/BeaconErrorType';\nimport { ErrorResponse } from './types/beacon/messages/ErrorResponse';\nimport { TransportStatus } from './types/transport/TransportStatus';\nimport { TransportType } from './types/transport/TransportType';\nimport { Storage } from './types/storage/Storage';\nimport { StorageKey } from './types/storage/StorageKey';\nimport { defaultValues, StorageKeyReturnDefaults } from './types/storage/StorageKeyReturnDefaults';\nimport { StorageKeyReturnType } from './types/storage/StorageKeyReturnType';\nimport { ExtendedP2PPairingRequest, P2PPairingRequest } from './types/P2PPairingRequest';\nimport { BeaconMessage } from './types/beacon/BeaconMessage';\nimport { RequestPermissionInput } from './types/RequestPermissionInput';\nimport { RequestProofOfEventChallengeInput } from './types/RequestProofOfEventChallengeInput';\nimport { RequestSimulatedProofOfEventChallengeInput } from './types/RequestSimulatedProofOfEventChallengeInput';\nimport { RequestSignPayloadInput } from './types/RequestSignPayloadInput';\nimport { RequestOperationInput } from './types/RequestOperationInput';\nimport { RequestBroadcastInput } from './types/RequestBroadcastInput';\nimport { PermissionResponseInput, SignPayloadResponseInput, OperationResponseInput, BroadcastResponseInput, BeaconResponseInputMessage, AcknowledgeResponseInput, ErrorResponseInput, IgnoredResponseInputProperties } from './types/beacon/messages/BeaconResponseInputMessage';\nimport { PermissionResponseOutput, SignPayloadResponseOutput, OperationResponseOutput, BroadcastResponseOutput, BeaconResponseOutputMessage, ProofOfEventChallengeResponseOutput, SimulatedProofOfEventChallengeResponseOutput } from './types/beacon/messages/BeaconResponseOutputMessage';\nimport { PermissionRequestInput, SignPayloadRequestInput, OperationRequestInput, BroadcastRequestInput, BeaconRequestInputMessage, IgnoredRequestInputProperties, ProofOfEventChallengeRequestInput, SimulatedProofOfEventChallengeRequestInput } from './types/beacon/messages/BeaconRequestInputMessage';\nimport { PermissionRequestOutput, SignPayloadRequestOutput, OperationRequestOutput, BroadcastRequestOutput, BeaconRequestOutputMessage, ProofOfEventChallengeRequestOutput, SimulatedProofOfEventChallengeRequestOutput } from './types/beacon/messages/BeaconRequestOutputMessage';\nimport { PermissionInfo } from './types/PermissionInfo';\nimport { ConnectionContext } from './types/ConnectionContext';\nimport { Threshold } from './types/beacon/Threshold';\nimport { PartialTezosTransactionOperation, PartialTezosOperation, PartialTezosDelegationOperation, PartialTezosOriginationOperation, PartialTezosRevealOperation, PartialTezosSmartRollupOriginateOperation, PartialTezosSmartRollupAddMessagesOperation, PartialTezosSmartRollupExecuteOutboxMessageOperation, PartialTezosSmartRollupPublishOperation, PartialTezosSmartRollupCementOperation, PartialTezosSmartRollupRecoverBondOperation, PartialTezosSmartRollupRefuteOperation, PartialTezosSmartRollupTimeoutOperation, PartialTezosDalPublishCommitmentOperation, PartialTezosIncreasePaidStorageOperation, PartialTezosRegisterGlobalConstantOperation, PartialTezosTransferTicketOperation, PartialTezosUpdateConsensusKeyOperation, PartialTezosSetDepositsLimitOperation } from './types/tezos/PartialTezosOperation';\nimport { ExtendedPeerInfo, PeerInfo, PeerInfoType } from './types/PeerInfo';\nimport { AcknowledgeResponse } from './types/beacon/messages/AcknowledgeResponse';\nimport { DisconnectMessage } from './types/beacon/messages/DisconnectMessage';\nimport { SigningType } from './types/beacon/SigningType';\nimport { ExtendedP2PPairingResponse, P2PPairingResponse } from './types/P2PPairingResponse';\nimport { ExtendedPostMessagePairingRequest, PostMessagePairingRequest } from './types/PostMessagePairingRequest';\nimport { ExtendedWalletConnectPairingResponse, WalletConnectPairingResponse } from './types/WalletConnectPairingResponse';\nimport { ExtendedWalletConnectPairingRequest, WalletConnectPairingRequest } from './types/WalletConnectPairingRequest';\nimport { ExtendedPostMessagePairingResponse, PostMessagePairingResponse } from './types/PostMessagePairingResponse';\nimport { BeaconRequestMessage } from './types/beacon/BeaconRequestMessage';\nimport { BeaconResponseMessage } from './types/beacon/BeaconResponseMessage';\nimport { ColorMode } from './types/ColorMode';\nimport { Optional } from './types/utils/Optional';\nimport { Extension } from './types/Extension';\nimport { PermissionEntity } from './types/PermissionEntity';\nimport { WalletInfo } from './types/WalletInfo';\nimport { ChangeAccountRequest } from './types/beacon/messages/ChangeAccountRequest';\nimport { TezosAttestationOperation } from './types/tezos/operations/Attestation';\nimport { TezosAttestationWithSlotOperation } from './types/tezos/operations/AttestationWithSlot';\nimport { TezosDoubleAttestationEvidenceOperation } from './types/tezos/operations/DoubleAttestationEvidence';\nimport { TezosDoublePreEndorsementEvidenceOperation } from './types/tezos/operations/DoublePreEndorsementEvidence';\nimport { TezosDrainDelegateOperation } from './types/tezos/operations/DrainDelegate';\nimport { TezosEndorsementWithSlotOperation } from './types/tezos/operations/EndorsementWithSlot';\nimport { TezosFailingNoopOperation } from './types/tezos/operations/FailingNoop';\nimport { TezosIncreasePaidStorageOperation } from './types/tezos/operations/IncreasePaidStorage';\nimport { TezosPreAttestationOperation } from './types/tezos/operations/PreAttestation';\nimport { TezosRegisterGlobalConstantOperation } from './types/tezos/operations/RegisterGlobalConstant';\nimport { TezosSetDepositsLimitOperation } from './types/tezos/operations/SetDepositsLimit';\nimport { TezosSmartRollupAddMessagesOperation } from './types/tezos/operations/SmartRollupAddMessages';\nimport { TezosSmartRollupExecuteOutboxMessageOperation } from './types/tezos/operations/SmartRollupExecuteOutboxMessage';\nimport { TezosSmartRollupPublishOperation } from './types/tezos/operations/SmartRollupPublish';\nimport { TezosSmartRollupRecoverBondOperation } from './types/tezos/operations/SmartRollupRecoverBond';\nimport { TezosSmartRollupRefuteOperation } from './types/tezos/operations/SmartRollupRefute';\nimport { TezosSmartRollupTimeoutOperation } from './types/tezos/operations/SmartRollupTimeout';\nimport { TezosTransferTicketOperation } from './types/tezos/operations/TransferTicket';\nimport { TezosUpdateConsensusKeyOperation } from './types/tezos/operations/UpdateConsensusKey';\nimport { TezosVdfRevelationOperation } from './types/tezos/operations/VdfRevelation';\nimport { TezosDoublePreAttestationEvidenceOperation } from './types/tezos/operations/DoublePreAttestationEvidence';\nimport { TezosSmartRollupCementOperation } from './types/tezos/operations/SmartRollupCement';\nimport { TezosSmartRollupOriginateOperation } from './types/tezos/operations/SmartRollupOriginate';\nimport { TezosDalPublishCommitmentOperation } from './types/tezos/operations/DalPublishCommitment';\nexport * from './types/AnalyticsInterface';\nexport * from './types/beaconV3/PermissionRequest';\nexport * from './types/ui';\nexport * from './types/Regions';\nexport { TezosBaseOperation, TezosOperationType, TezosBlockHeader, MichelineMichelsonV1Expression, MichelsonPrimitives, TezosTransactionParameters, TezosOperation };\nexport { TezosActivateAccountOperation, TezosBallotOperation, TezosDelegationOperation, TezosDoubleBakingEvidenceOperation, TezosDoubleEndorsementEvidenceOperation, TezosEndorsementOperation, TezosOriginationOperation, TezosProposalOperation, TezosRevealOperation, TezosSeedNonceRevelationOperation, TezosTransactionOperation, PartialTezosOperation, PartialTezosTransactionOperation, PartialTezosDelegationOperation, PartialTezosOriginationOperation, PartialTezosRevealOperation, PartialTezosSmartRollupOriginateOperation, PartialTezosSmartRollupAddMessagesOperation, PartialTezosSmartRollupExecuteOutboxMessageOperation, PartialTezosSmartRollupPublishOperation, PartialTezosSmartRollupCementOperation, PartialTezosSmartRollupRecoverBondOperation, PartialTezosSmartRollupRefuteOperation, PartialTezosSmartRollupTimeoutOperation, PartialTezosDalPublishCommitmentOperation, PartialTezosRegisterGlobalConstantOperation, PartialTezosTransferTicketOperation, PartialTezosIncreasePaidStorageOperation, PartialTezosUpdateConsensusKeyOperation, PartialTezosSetDepositsLimitOperation, TezosAttestationOperation, TezosPreAttestationOperation, TezosSetDepositsLimitOperation, TezosDoublePreAttestationEvidenceOperation, TezosDoublePreEndorsementEvidenceOperation, TezosAttestationWithSlotOperation, TezosEndorsementWithSlotOperation, TezosDoubleAttestationEvidenceOperation, TezosFailingNoopOperation, TezosRegisterGlobalConstantOperation, TezosTransferTicketOperation, TezosIncreasePaidStorageOperation, TezosUpdateConsensusKeyOperation, TezosDrainDelegateOperation, TezosVdfRevelationOperation, TezosSmartRollupOriginateOperation, TezosSmartRollupAddMessagesOperation, TezosSmartRollupExecuteOutboxMessageOperation, TezosSmartRollupPublishOperation, TezosSmartRollupCementOperation, TezosSmartRollupRecoverBondOperation, TezosSmartRollupRefuteOperation, TezosSmartRollupTimeoutOperation, TezosDalPublishCommitmentOperation };\nexport { AccountIdentifier, AppMetadata, Network, NetworkType, BeaconMessage, PermissionRequest, PermissionResponse, OperationRequest, OperationResponse, SignPayloadRequest, SignPayloadResponse, BroadcastRequest, BroadcastResponse, ChangeAccountRequest, AcknowledgeResponse, DisconnectMessage, BeaconBaseMessage, BeaconMessageType, PermissionScope, Origin, AccountInfo, Threshold, SigningType, ExtensionMessageTarget, ExtensionMessage, Extension, EncryptedExtensionMessage, RequestPermissionInput, RequestProofOfEventChallengeInput, RequestSimulatedProofOfEventChallengeInput, RequestSignPayloadInput, RequestOperationInput, RequestBroadcastInput, PermissionInfo, PermissionEntity, ProofOfEventChallengeRequest, ProofOfEventChallengeResponse, SimulatedProofOfEventChallengeRequest, SimulatedProofOfEventChallengeResponse };\nexport { PermissionResponseInput, SignPayloadResponseInput, OperationResponseInput, BroadcastResponseInput, AcknowledgeResponseInput, ErrorResponseInput, PermissionResponseOutput, ProofOfEventChallengeResponseOutput, SimulatedProofOfEventChallengeResponseOutput, SignPayloadResponseOutput, OperationResponseOutput, BroadcastResponseOutput, PermissionRequestInput, SignPayloadRequestInput, ProofOfEventChallengeRequestInput, SimulatedProofOfEventChallengeRequestInput, OperationRequestInput, BroadcastRequestInput, PermissionRequestOutput, SignPayloadRequestOutput, ProofOfEventChallengeRequestOutput, SimulatedProofOfEventChallengeRequestOutput, OperationRequestOutput, BroadcastRequestOutput, BeaconRequestInputMessage, BeaconRequestOutputMessage, BeaconResponseInputMessage, BeaconResponseOutputMessage, BeaconRequestMessage, BeaconResponseMessage };\nexport { BeaconErrorType, ErrorResponse };\nexport { TransportStatus, TransportType };\nexport { Storage, StorageKey, StorageKeyReturnDefaults, StorageKeyReturnType };\nexport { PeerInfo, ExtendedPeerInfo, PeerInfoType, PostMessagePairingRequest, PostMessagePairingResponse, ExtendedPostMessagePairingRequest, ExtendedPostMessagePairingResponse, P2PPairingRequest, P2PPairingResponse, ExtendedP2PPairingRequest, ExtendedP2PPairingResponse, WalletConnectPairingResponse, WalletConnectPairingRequest, ExtendedWalletConnectPairingRequest, ExtendedWalletConnectPairingResponse };\nexport { IgnoredResponseInputProperties, IgnoredRequestInputProperties, defaultValues };\nexport { ConnectionContext, ColorMode, WalletInfo };\nexport { PushToken } from './types/PushToken';\nexport { Optional };\n"},{name:"@airgap/beacon-types/dist/esm/types/beacon/messages/AcknowledgeResponse.d.ts",dts:"import { BeaconBaseMessage, BeaconMessageType } from '@airgap/beacon-types';\n/**\n * @category Message\n */\nexport interface AcknowledgeResponse extends BeaconBaseMessage {\n type: BeaconMessageType.Acknowledge;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/beacon/messages/BeaconRequestInputMessage.d.ts",dts:"import { Optional } from '@airgap/beacon-types';\nimport { PermissionRequest, OperationRequest, SignPayloadRequest, ProofOfEventChallengeRequest, SimulatedProofOfEventChallengeRequest, BroadcastRequest } from '@airgap/beacon-types';\n/**\n * @internalapi\n * @category DApp\n */\nexport type IgnoredRequestInputProperties = 'id' | 'senderId' | 'version';\n/**\n * @internalapi\n * @category DApp\n */\nexport type PermissionRequestInput = Optional;\n/**\n * @internalapi\n * @category DApp\n */\nexport type ProofOfEventChallengeRequestInput = Optional;\n/**\n * @internalapi\n * @category DApp\n */\nexport type SimulatedProofOfEventChallengeRequestInput = Optional;\n/**\n * @internalapi\n * @category DApp\n */\nexport type OperationRequestInput = Optional;\n/**\n * @internalapi\n * @category DApp\n */\nexport type SignPayloadRequestInput = Optional;\n/**\n * @internalapi\n * @category DApp\n */\n/**\n * @internalapi\n * @category DApp\n */\nexport type BroadcastRequestInput = Optional;\n/**\n * @internalapi\n * @category DApp\n */\nexport type BeaconRequestInputMessage = PermissionRequestInput | OperationRequestInput | SignPayloadRequestInput | BroadcastRequestInput | ProofOfEventChallengeRequestInput | SimulatedProofOfEventChallengeRequestInput;\n"},{name:"@airgap/beacon-types/dist/esm/types/beacon/messages/BeaconRequestOutputMessage.d.ts",dts:"import { Optional, ProofOfEventChallengeRequest, SimulatedProofOfEventChallengeRequest } from '@airgap/beacon-types';\nimport { AppMetadata, PermissionRequest, OperationRequest, SignPayloadRequest, BroadcastRequest } from '@airgap/beacon-types';\n/**\n * @category Wallet\n */\nexport type IgnoredRequestOutputProperties = 'version';\n/**\n * @category Wallet\n */\nexport interface ExtraResponseOutputProperties {\n appMetadata: AppMetadata;\n}\n/**\n * @category Wallet\n */\nexport type PermissionRequestOutput = Optional & ExtraResponseOutputProperties;\n/**\n * @category Wallet\n */\nexport type ProofOfEventChallengeRequestOutput = Optional & ExtraResponseOutputProperties;\n/**\n * @category Wallet\n */\nexport type SimulatedProofOfEventChallengeRequestOutput = Optional & ExtraResponseOutputProperties;\n/**\n * @category Wallet\n */\nexport type OperationRequestOutput = Optional & ExtraResponseOutputProperties;\n/**\n * @category Wallet\n */\nexport type SignPayloadRequestOutput = Optional & ExtraResponseOutputProperties;\n/**\n * @category Wallet\n */\n/**\n * @category Wallet\n */\nexport type BroadcastRequestOutput = Optional & ExtraResponseOutputProperties;\n/**\n * @internalapi\n * @category Wallet\n */\nexport type BeaconRequestOutputMessage = PermissionRequestOutput | OperationRequestOutput | SignPayloadRequestOutput | BroadcastRequestOutput | ProofOfEventChallengeRequestOutput | SimulatedProofOfEventChallengeRequestOutput;\n"},{name:"@airgap/beacon-types/dist/esm/types/beacon/messages/BeaconResponseInputMessage.d.ts",dts:"import { Optional, ProofOfEventChallengeResponse, SimulatedProofOfEventChallengeResponse } from '@airgap/beacon-types';\nimport { PermissionResponse, OperationResponse, SignPayloadResponse, BroadcastResponse, AcknowledgeResponse, ErrorResponse } from '@airgap/beacon-types';\n/**\n * @category Wallet\n */\nexport type IgnoredResponseInputProperties = 'senderId' | 'version';\n/**\n * @category Wallet\n */\nexport type PermissionResponseInput = Optional;\n/**\n * @category Wallet\n */\nexport type ProofOfEventChallengeResponseInput = Optional;\n/**\n * @category Wallet\n */\nexport type SimulatedProofOfEventChallengeResponseInput = Optional;\n/**\n * @category Wallet\n */\nexport type OperationResponseInput = Optional;\n/**\n * @category Wallet\n */\nexport type SignPayloadResponseInput = Optional;\n/**\n * @category Wallet\n */\n/**\n * @category Wallet\n */\nexport type BroadcastResponseInput = Optional;\n/**\n * @category Wallet\n */\nexport type AcknowledgeResponseInput = Optional;\n/**\n * @category Wallet\n */\nexport type ErrorResponseInput = Optional;\n/**\n * @internalapi\n * @category Wallet\n */\nexport type BeaconResponseInputMessage = PermissionResponseInput | OperationResponseInput | SignPayloadResponseInput | BroadcastResponseInput | AcknowledgeResponseInput | ErrorResponseInput | ProofOfEventChallengeResponseInput | SimulatedProofOfEventChallengeResponseInput;\n"},{name:"@airgap/beacon-types/dist/esm/types/beacon/messages/BeaconResponseOutputMessage.d.ts",dts:"import { PermissionResponse, OperationResponse, SignPayloadResponse, BroadcastResponse, AccountInfo, ProofOfEventChallengeResponse, SimulatedProofOfEventChallengeResponse } from '@airgap/beacon-types';\n/**\n * @category DApp\n */\nexport type IgnoredResponseOutputProperties = 'id' | 'version' | 'type';\n/**\n * @category DApp\n */\nexport type PermissionResponseOutput = PermissionResponse & {\n address: string;\n accountInfo: AccountInfo;\n walletKey?: string | undefined;\n};\n/**\n * @category DApp\n */\nexport type ProofOfEventChallengeResponseOutput = ProofOfEventChallengeResponse;\n/**\n * @category DApp\n */\nexport type SimulatedProofOfEventChallengeResponseOutput = SimulatedProofOfEventChallengeResponse;\n/**\n * @category DApp\n */\nexport type OperationResponseOutput = OperationResponse;\n/**\n * @category DApp\n */\nexport type SignPayloadResponseOutput = SignPayloadResponse;\n/**\n * @category DApp\n */\n/**\n * @category DApp\n */\nexport type BroadcastResponseOutput = BroadcastResponse;\n/**\n * @internalapi\n * @category DApp\n */\nexport type BeaconResponseOutputMessage = PermissionResponseOutput | OperationResponseOutput | SignPayloadResponseOutput | BroadcastResponseOutput | ProofOfEventChallengeResponseOutput | SimulatedProofOfEventChallengeResponseOutput;\n"},{name:"@airgap/beacon-types/dist/esm/types/beacon/messages/BroadcastRequest.d.ts",dts:"import { BeaconBaseMessage, BeaconMessageType, Network } from '@airgap/beacon-types';\n/**\n * @category Message\n */\nexport interface BroadcastRequest extends BeaconBaseMessage {\n type: BeaconMessageType.BroadcastRequest;\n network: Network;\n signedTransaction: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/beacon/messages/BroadcastResponse.d.ts",dts:"import { BeaconBaseMessage, BeaconMessageType } from '@airgap/beacon-types';\n/**\n * @category Message\n */\nexport interface BroadcastResponse extends BeaconBaseMessage {\n type: BeaconMessageType.BroadcastResponse;\n transactionHash: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/beacon/messages/ChangeAccountRequest.d.ts",dts:"import { BeaconBaseMessage, BeaconMessageType, Network, PermissionScope, Threshold } from '@airgap/beacon-types';\nimport { Notification } from '../../Notification';\nexport interface ChangeAccountRequest extends BeaconBaseMessage {\n type: BeaconMessageType.ChangeAccountRequest;\n address?: string;\n walletType: 'implicit' | 'abstracted_account';\n verificationType?: 'proof_of_event';\n publicKey?: string;\n network: Network;\n scopes: PermissionScope[];\n threshold?: Threshold;\n notification?: Notification;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/beacon/messages/DisconnectMessage.d.ts",dts:"import { BeaconBaseMessage, BeaconMessageType } from '@airgap/beacon-types';\n/**\n * @category Message\n */\nexport interface DisconnectMessage extends BeaconBaseMessage {\n type: BeaconMessageType.Disconnect;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/beacon/messages/EncryptPayloadRequest.d.ts",dts:"/**\n * @category Message\n */\n"},{name:"@airgap/beacon-types/dist/esm/types/beacon/messages/EncryptPayloadResponse.d.ts",dts:"/**\n * @category Message\n */\n"},{name:"@airgap/beacon-types/dist/esm/types/beacon/messages/ErrorResponse.d.ts",dts:"import { BeaconBaseMessage, BeaconErrorType, BeaconMessageType } from '@airgap/beacon-types';\n/**\n * @category Message\n */\nexport interface ErrorResponse extends BeaconBaseMessage {\n type: BeaconMessageType.Error;\n errorType: BeaconErrorType;\n errorData?: any;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/beacon/messages/OperationRequest.d.ts",dts:"import { BeaconBaseMessage, BeaconMessageType, Network } from '@airgap/beacon-types';\nimport { PartialTezosOperation } from '../../tezos/PartialTezosOperation';\n/**\n * @category Message\n */\nexport interface OperationRequest extends BeaconBaseMessage {\n type: BeaconMessageType.OperationRequest;\n network: Network;\n operationDetails: PartialTezosOperation[];\n sourceAddress: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/beacon/messages/OperationResponse.d.ts",dts:"import { BeaconBaseMessage, BeaconMessageType } from '@airgap/beacon-types';\n/**\n * @category Message\n */\nexport interface OperationResponse extends BeaconBaseMessage {\n type: BeaconMessageType.OperationResponse;\n transactionHash: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/beacon/messages/PermissionRequest.d.ts",dts:"import { BeaconBaseMessage, BeaconMessageType, PermissionScope, AppMetadata, Network } from '@airgap/beacon-types';\n/**\n * @category Message\n */\nexport interface PermissionRequest extends BeaconBaseMessage {\n type: BeaconMessageType.PermissionRequest;\n appMetadata: AppMetadata;\n network: Network;\n scopes: PermissionScope[];\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/beacon/messages/PermissionResponse.d.ts",dts:"import { AppMetadata, BeaconBaseMessage, BeaconMessageType, Network, PermissionScope, Threshold } from '@airgap/beacon-types';\nimport { Notification } from '../../Notification';\n/**\n * @category Message\n */\nexport interface PermissionResponse extends BeaconBaseMessage {\n address?: string;\n walletType: 'implicit' | 'abstracted_account';\n verificationType?: 'proof_of_event';\n type: BeaconMessageType.PermissionResponse;\n appMetadata: AppMetadata;\n publicKey?: string;\n network: Network;\n scopes: PermissionScope[];\n threshold?: Threshold;\n notification?: Notification;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/beacon/messages/ProofOfEventChallengeRequest.d.ts",dts:"import { BeaconBaseMessage, BeaconMessageType } from '@airgap/beacon-types';\nexport interface ProofOfEventChallengeRequest extends BeaconBaseMessage {\n type: BeaconMessageType.ProofOfEventChallengeRequest;\n payload: string;\n contractAddress: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/beacon/messages/ProofOfEventChallengeResponse.d.ts",dts:"import { BeaconBaseMessage, BeaconMessageType } from '@airgap/beacon-types';\nexport interface ProofOfEventChallengeResponse extends BeaconBaseMessage {\n type: BeaconMessageType.ProofOfEventChallengeResponse;\n payloadHash: string;\n isAccepted: boolean;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/beacon/messages/SignPayloadRequest.d.ts",dts:"import { BeaconBaseMessage, BeaconMessageType, SigningType } from '@airgap/beacon-types';\n/**\n * @category Message\n */\nexport interface SignPayloadRequest extends BeaconBaseMessage {\n type: BeaconMessageType.SignPayloadRequest;\n signingType: SigningType;\n payload: string;\n sourceAddress: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/beacon/messages/SignPayloadResponse.d.ts",dts:"import { BeaconBaseMessage, BeaconMessageType, SigningType } from '@airgap/beacon-types';\n/**\n * @category Message\n */\nexport interface SignPayloadResponse extends BeaconBaseMessage {\n type: BeaconMessageType.SignPayloadResponse;\n signingType: SigningType;\n signature: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/beacon/messages/SimulatedProofOfEventChallengeRequest.d.ts",dts:"import { BeaconBaseMessage, BeaconMessageType } from '@airgap/beacon-types';\nexport interface SimulatedProofOfEventChallengeRequest extends BeaconBaseMessage {\n type: BeaconMessageType.SimulatedProofOfEventChallengeRequest;\n payload: string;\n contractAddress: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/beacon/messages/SimulatedProofOfEventChallengeResponse.d.ts",dts:"import { BeaconBaseMessage, BeaconMessageType } from '@airgap/beacon-types';\nexport interface SimulatedProofOfEventChallengeResponse extends BeaconBaseMessage {\n type: BeaconMessageType.SimulatedProofOfEventChallengeResponse;\n operationsList: string;\n errorMessage: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/beacon/AppMetadata.d.ts",dts:"export interface AppMetadata {\n senderId: string;\n name: string;\n icon?: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/beacon/BeaconBaseMessage.d.ts",dts:"import { BeaconMessageType } from '@airgap/beacon-types';\n/**\n * @category Message\n */\nexport interface BeaconBaseMessage {\n type: BeaconMessageType;\n version: string;\n id: string;\n senderId: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/beacon/BeaconMessage.d.ts",dts:"import { PermissionResponse, PermissionRequest, OperationRequest, OperationResponse, SignPayloadRequest, SignPayloadResponse, BroadcastRequest, BroadcastResponse, AcknowledgeResponse, DisconnectMessage, ErrorResponse, ProofOfEventChallengeRequest, ProofOfEventChallengeResponse, SimulatedProofOfEventChallengeRequest, SimulatedProofOfEventChallengeResponse, ChangeAccountRequest } from '@airgap/beacon-types';\n/**\n * @internalapi\n */\nexport type BeaconMessage = PermissionRequest | PermissionResponse | ProofOfEventChallengeRequest | ProofOfEventChallengeResponse | SimulatedProofOfEventChallengeRequest | SimulatedProofOfEventChallengeResponse | OperationRequest | OperationResponse | SignPayloadRequest | SignPayloadResponse | BroadcastRequest | BroadcastResponse | AcknowledgeResponse | DisconnectMessage | ErrorResponse | ChangeAccountRequest;\n"},{name:"@airgap/beacon-types/dist/esm/types/beacon/BeaconMessageType.d.ts",dts:'export declare enum BeaconMessageType {\n BlockchainRequest = "blockchain_request",\n PermissionRequest = "permission_request",\n SignPayloadRequest = "sign_payload_request",\n OperationRequest = "operation_request",\n BroadcastRequest = "broadcast_request",\n ChangeAccountRequest = "change_account_request",\n BlockchainResponse = "blockchain_response",\n PermissionResponse = "permission_response",\n SignPayloadResponse = "sign_payload_response",\n ProofOfEventChallengeRequest = "proof_of_event_challenge_request",\n ProofOfEventChallengeResponse = "proof_of_event_challenge_response",\n SimulatedProofOfEventChallengeRequest = "simulated_proof_of_event_challenge_request",\n SimulatedProofOfEventChallengeResponse = "simulated_proof_of_event_challenge_response",\n OperationResponse = "operation_response",\n BroadcastResponse = "broadcast_response",\n Acknowledge = "acknowledge",\n Disconnect = "disconnect",\n Error = "error"\n}\n'},{name:"@airgap/beacon-types/dist/esm/types/beacon/BeaconRequestMessage.d.ts",dts:"import { PermissionRequest, OperationRequest, SignPayloadRequest, BroadcastRequest, ProofOfEventChallengeRequest, SimulatedProofOfEventChallengeRequest } from '@airgap/beacon-types';\n/**\n * @internalapi\n */\nexport type BeaconRequestMessage = PermissionRequest | OperationRequest | SignPayloadRequest | BroadcastRequest | ProofOfEventChallengeRequest | SimulatedProofOfEventChallengeRequest;\n"},{name:"@airgap/beacon-types/dist/esm/types/beacon/BeaconResponseMessage.d.ts",dts:"import { PermissionResponse, OperationResponse, SignPayloadResponse, BroadcastResponse } from '@airgap/beacon-types';\nimport { ErrorResponse } from './messages/ErrorResponse';\n/**\n * @internalapi\n */\nexport type BeaconResponseMessage = PermissionResponse | OperationResponse | SignPayloadResponse | BroadcastResponse | ErrorResponse;\n"},{name:"@airgap/beacon-types/dist/esm/types/beacon/Network.d.ts",dts:"import { NetworkType } from '@airgap/beacon-types';\nexport interface Network {\n type: NetworkType;\n name?: string;\n rpcUrl?: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/beacon/NetworkType.d.ts",dts:'export declare enum NetworkType {\n MAINNET = "mainnet",\n GHOSTNET = "ghostnet",\n WEEKLYNET = "weeklynet",\n DAILYNET = "dailynet",\n DELPHINET = "delphinet",\n EDONET = "edonet",\n FLORENCENET = "florencenet",\n GRANADANET = "granadanet",\n HANGZHOUNET = "hangzhounet",\n ITHACANET = "ithacanet",\n JAKARTANET = "jakartanet",\n KATHMANDUNET = "kathmandunet",\n LIMANET = "limanet",\n MUMBAINET = "mumbainet",\n NAIROBINET = "nairobinet",\n OXFORDNET = "oxfordnet",\n PARISNET = "parisnet",\n CUSTOM = "custom"\n}\n'},{name:"@airgap/beacon-types/dist/esm/types/beacon/PermissionScope.d.ts",dts:'export declare enum PermissionScope {\n SIGN = "sign",\n OPERATION_REQUEST = "operation_request",\n ENCRYPT = "encrypt",\n NOTIFICATION = "notification",\n THRESHOLD = "threshold"\n}\n'},{name:"@airgap/beacon-types/dist/esm/types/beacon/SigningType.d.ts",dts:'export declare enum SigningType {\n RAW = "raw",\n OPERATION = "operation",\n MICHELINE = "micheline"\n}\n'},{name:"@airgap/beacon-types/dist/esm/types/beacon/Threshold.d.ts",dts:"export interface Threshold {\n amount: string;\n timeframe: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/beaconV3/PermissionRequest.d.ts",dts:"import { AccountInfo, AppMetadata, BeaconMessageType, ConnectionContext, WalletInfo, ExtensionApp, DesktopApp, WebApp, App } from '@airgap/beacon-types';\nexport interface ResponseInput {\n request: BlockchainMessage;\n account: AccountInfo;\n output: BeaconMessageWrapper;\n blockExplorer: any;\n connectionContext: ConnectionContext;\n walletInfo: WalletInfo;\n}\nexport interface Blockchain {\n readonly identifier: string;\n validateRequest(input: BlockchainMessage): Promise;\n handleResponse(input: ResponseInput): Promise;\n getWalletLists(): Promise<{\n extensionList: ExtensionApp[];\n desktopList: DesktopApp[];\n webList: WebApp[];\n iOSList: App[];\n }>;\n getAccountInfosFromPermissionResponse(permissionResponse: PermissionResponseV3): Promise<{\n accountId: string;\n address: string;\n publicKey: string;\n }[]>;\n}\nexport interface BeaconMessageWrapper {\n id: string;\n version: string;\n senderId: string;\n message: T;\n}\nexport interface BeaconBaseMessage {\n type: unknown;\n}\nexport interface BlockchainMessage {\n blockchainIdentifier: T;\n type: unknown;\n blockchainData: unknown;\n}\nexport interface PermissionRequestV3 extends BlockchainMessage {\n blockchainIdentifier: T;\n type: BeaconMessageType.PermissionRequest;\n blockchainData: {\n appMetadata: AppMetadata;\n scopes: string[];\n };\n}\nexport interface PermissionResponseV3 extends BlockchainMessage {\n blockchainIdentifier: T;\n type: BeaconMessageType.PermissionResponse;\n blockchainData: {\n appMetadata: AppMetadata;\n scopes: string[];\n };\n}\nexport interface BlockchainRequestV3 extends BlockchainMessage {\n blockchainIdentifier: T;\n type: BeaconMessageType.BlockchainRequest;\n accountId: string;\n blockchainData: {\n type: string;\n scope: string;\n };\n}\nexport interface BlockchainResponseV3 extends BlockchainMessage {\n blockchainIdentifier: T;\n type: BeaconMessageType.BlockchainResponse;\n blockchainData: unknown;\n}\nexport interface BlockchainErrorResponse extends BlockchainMessage {\n blockchainIdentifier: T;\n type: BeaconMessageType.Error;\n error: {\n type: unknown;\n data?: unknown;\n };\n description?: string;\n}\nexport interface AcknowledgeMessage extends BeaconBaseMessage {\n type: BeaconMessageType.Acknowledge;\n}\nexport interface DisconnectMessage extends BeaconBaseMessage {\n type: BeaconMessageType.Disconnect;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/storage/Storage.d.ts",dts:"import { StorageKey, StorageKeyReturnType } from '@airgap/beacon-types';\n/**\n * @internalapi\n *\n * The storage used in the SDK\n */\nexport declare abstract class Storage {\n /**\n * Returns a promise that resolves to true if the storage option is available on this platform.\n */\n static isSupported(): Promise;\n /**\n * Gets a value from storage and returns it\n *\n * @param key The storage key\n */\n abstract get(key: K): Promise;\n /**\n * Sets a value in the storage and persist it\n *\n * @param key The storage key\n * @param value The value to be persisted\n */\n abstract set(key: K, value: StorageKeyReturnType[K]): Promise;\n /**\n * Delete a key from storage\n *\n * @param key The storage key\n */\n abstract delete(key: K): Promise;\n /**\n * This event will fire if the storage was modified by someone else, eg. on another tab\n *\n * @param callback The callback to be called when a storage value changes\n */\n abstract subscribeToStorageChanged(callback: (arg: {\n eventType: 'storageCleared' | 'entryModified';\n key: string | null;\n oldValue: string | null;\n newValue: string | null;\n }) => {}): Promise;\n /**\n * Get the key with the internal prefix\n *\n * @param key the storage key\n */\n abstract getPrefixedKey(key: K): string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/storage/StorageKey.d.ts",dts:'/**\n * @internalapi\n */\nexport declare enum StorageKey {\n TRANSPORT_P2P_PEERS_DAPP = "beacon:communication-peers-dapp",\n TRANSPORT_P2P_PEERS_WALLET = "beacon:communication-peers-wallet",\n TRANSPORT_POSTMESSAGE_PEERS_DAPP = "beacon:postmessage-peers-dapp",\n TRANSPORT_POSTMESSAGE_PEERS_WALLET = "beacon:postmessage-peers-wallet",\n TRANSPORT_WALLETCONNECT_PEERS_DAPP = "beacon:walletconnect-peers-dapp",\n LAST_SELECTED_WALLET = "beacon:last-selected-wallet",\n ACCOUNTS = "beacon:accounts",\n ACTIVE_ACCOUNT = "beacon:active-account",\n PUSH_TOKENS = "beacon:push-tokens",\n BEACON_SDK_SECRET_SEED = "beacon:sdk-secret-seed",\n APP_METADATA_LIST = "beacon:app-metadata-list",\n PERMISSION_LIST = "beacon:permissions",\n ONGOING_PROOF_OF_EVENT_CHALLENGES = "beacon:ongoing-proof-of-event-challenges",\n BEACON_SDK_VERSION = "beacon:sdk_version",\n MATRIX_PRESERVED_STATE = "beacon:sdk-matrix-preserved-state",\n MATRIX_PEER_ROOM_IDS = "beacon:matrix-peer-rooms",\n MATRIX_SELECTED_NODE = "beacon:matrix-selected-node",\n MULTI_NODE_SETUP_DONE = "beacon:multi-node-setup",\n USER_ID = "beacon:user-id",\n ENABLE_METRICS = "beacon:enable_metrics",\n WC_2_CORE_PAIRING = "wc@2:core:0.3:pairing",\n WC_2_CLIENT_SESSION = "wc@2:client:0.3:session",\n WC_2_CORE_KEYCHAIN = "wc@2:core:0.3:keychain",\n WC_2_CORE_MESSAGES = "wc@2:core:0.3:messages",\n WC_2_CLIENT_PROPOSAL = "wc@2:client:0.3:proposal",\n WC_2_CORE_SUBSCRIPTION = "wc@2:core:0.3:subscription",\n WC_2_CORE_HISTORY = "wc@2:core:0.3:history",\n WC_2_CORE_EXPIRER = "wc@2:core:0.3:expirer"\n}\n'},{name:"@airgap/beacon-types/dist/esm/types/storage/StorageKeyReturnDefaults.d.ts",dts:"import { StorageKey, StorageKeyReturnType } from '../..';\n/**\n * @internalapi\n */\nexport type StorageKeyReturnDefaults = {\n [key in StorageKey]: StorageKeyReturnType[key];\n};\n/**\n * @internalapi\n */\nexport declare const defaultValues: StorageKeyReturnDefaults;\n"},{name:"@airgap/beacon-types/dist/esm/types/storage/StorageKeyReturnType.d.ts",dts:"import { StorageKey, AccountInfo, AccountIdentifier, P2PPairingRequest, AppMetadata, PermissionInfo, ExtendedWalletConnectPairingResponse, RequestProofOfEventChallengeInput } from '../..';\nimport { ExtendedP2PPairingResponse } from '../P2PPairingResponse';\nimport { PostMessagePairingRequest } from '../PostMessagePairingRequest';\nimport { ExtendedPostMessagePairingResponse } from '../PostMessagePairingResponse';\nimport { PushToken } from '../PushToken';\n/**\n * @internalapi\n */\nexport interface StorageKeyReturnType {\n [StorageKey.TRANSPORT_P2P_PEERS_DAPP]: P2PPairingRequest[];\n [StorageKey.TRANSPORT_P2P_PEERS_WALLET]: ExtendedP2PPairingResponse[];\n [StorageKey.TRANSPORT_POSTMESSAGE_PEERS_DAPP]: PostMessagePairingRequest[];\n [StorageKey.TRANSPORT_POSTMESSAGE_PEERS_WALLET]: ExtendedPostMessagePairingResponse[];\n [StorageKey.TRANSPORT_WALLETCONNECT_PEERS_DAPP]: ExtendedWalletConnectPairingResponse[];\n [StorageKey.LAST_SELECTED_WALLET]: {\n key: string;\n name: string;\n type: 'extension' | 'mobile' | 'web' | 'desktop';\n icon: string;\n url?: string;\n } | undefined;\n [StorageKey.ACCOUNTS]: AccountInfo[];\n [StorageKey.ACTIVE_ACCOUNT]: AccountIdentifier | undefined;\n [StorageKey.PUSH_TOKENS]: PushToken[];\n [StorageKey.BEACON_SDK_SECRET_SEED]: string | undefined;\n [StorageKey.APP_METADATA_LIST]: AppMetadata[];\n [StorageKey.PERMISSION_LIST]: PermissionInfo[];\n [StorageKey.ONGOING_PROOF_OF_EVENT_CHALLENGES]: ({\n contractAddress: string;\n accountIdentifier: string;\n } & RequestProofOfEventChallengeInput)[];\n [StorageKey.BEACON_SDK_VERSION]: string | undefined;\n [StorageKey.MATRIX_PRESERVED_STATE]: {\n [key: string]: unknown;\n };\n [StorageKey.MATRIX_PEER_ROOM_IDS]: {\n [key: string]: string | undefined;\n };\n [StorageKey.MATRIX_SELECTED_NODE]: string | undefined;\n [StorageKey.MULTI_NODE_SETUP_DONE]: boolean | undefined;\n [StorageKey.USER_ID]: string | undefined;\n [StorageKey.ENABLE_METRICS]: boolean | undefined;\n [StorageKey.WC_2_CLIENT_SESSION]: string | undefined;\n [StorageKey.WC_2_CORE_PAIRING]: string | undefined;\n [StorageKey.WC_2_CORE_KEYCHAIN]: string | undefined;\n [StorageKey.WC_2_CORE_MESSAGES]: string | undefined;\n [StorageKey.WC_2_CLIENT_PROPOSAL]: string | undefined;\n [StorageKey.WC_2_CORE_SUBSCRIPTION]: string | undefined;\n [StorageKey.WC_2_CORE_HISTORY]: string | undefined;\n [StorageKey.WC_2_CORE_EXPIRER]: string | undefined;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/operations/ActivateAccount.d.ts",dts:"import { TezosBaseOperation, TezosOperationType } from '../../..';\n/**\n * @internalapi\n * @category Tezos\n */\nexport interface TezosActivateAccountOperation extends TezosBaseOperation {\n kind: TezosOperationType.ACTIVATE_ACCOUNT;\n pkh: string;\n secret: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/operations/Attestation.d.ts",dts:"import { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nexport interface TezosAttestationOperation extends TezosBaseOperation {\n kind: TezosOperationType.ATTESTATION;\n level: number;\n slot?: number;\n round?: number;\n block_payload_hash?: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/operations/AttestationWithSlot.d.ts",dts:"import { InlinedAttestation } from '../InlinedAttestation';\nimport { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nexport interface TezosAttestationWithSlotOperation extends TezosBaseOperation {\n kind: TezosOperationType.ATTESTATION_WITH_SLOT;\n endorsement: InlinedAttestation;\n slot: number;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/operations/Ballot.d.ts",dts:"import { TezosBaseOperation, TezosOperationType } from '../../..';\n/**\n * @internalapi\n * @category Tezos\n */\nexport interface TezosBallotOperation extends TezosBaseOperation {\n kind: TezosOperationType.BALLOT;\n source: string;\n period: string;\n proposal: string;\n ballot: 'nay' | 'yay' | 'pass';\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/operations/DalPublishCommitment.d.ts",dts:"import { TezosOperationType } from '../OperationTypes';\nexport interface TezosDalPublishCommitmentOperation {\n kind: TezosOperationType.DAL_PUBLISH_COMMITMENT;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n slot_header: {\n slot_index: number;\n commitment: string;\n commitment_proof: string;\n };\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/operations/Delegation.d.ts",dts:"import { TezosBaseOperation, TezosOperationType } from '../../..';\n/**\n * @internalapi\n * @category Tezos\n */\nexport interface TezosDelegationOperation extends TezosBaseOperation {\n kind: TezosOperationType.DELEGATION;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n delegate?: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/operations/DoubleAttestationEvidence.d.ts",dts:"import { InlinedAttestation } from '../InlinedAttestation';\nimport { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nexport interface TezosDoubleAttestationEvidenceOperation extends TezosBaseOperation {\n kind: TezosOperationType.DOUBLE_ATTESTATION_EVIDENCE;\n op1: InlinedAttestation;\n op2: InlinedAttestation;\n slot?: number;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/operations/DoubleBakingEvidence.d.ts",dts:"import { TezosBaseOperation, TezosOperationType, TezosBlockHeader } from '../../..';\n/**\n * @internalapi\n * @category Tezos\n */\nexport interface TezosDoubleBakingEvidenceOperation extends TezosBaseOperation {\n kind: TezosOperationType.DOUBLE_BAKING_EVIDENCE;\n bh1: TezosBlockHeader;\n bh2: TezosBlockHeader;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/operations/DoubleEndorsementEvidence.d.ts",dts:"import { TezosBaseOperation, TezosOperationType } from '../../..';\nexport interface InlinedEndorsement {\n branch: string;\n operations: InlinedEndorsementContents;\n signature?: string;\n}\nexport interface InlinedEndorsementContents extends TezosBaseOperation {\n kind: TezosOperationType.ENDORSEMENT;\n level: string;\n}\n/**\n * @internalapi\n * @category Tezos\n */\nexport interface TezosDoubleEndorsementEvidenceOperation extends TezosBaseOperation {\n kind: TezosOperationType.DOUBLE_ENDORSEMENT_EVIDENCE;\n op1: InlinedEndorsement;\n op2: InlinedEndorsement;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/operations/DoublePreAttestationEvidence.d.ts",dts:"import { InlinedPreattestation } from '../InlinedPreattestation';\nimport { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nexport interface TezosDoublePreAttestationEvidenceOperation extends TezosBaseOperation {\n kind: TezosOperationType.DOUBLE_PREATTESTATION_EVIDENCE;\n op1: InlinedPreattestation;\n op2: InlinedPreattestation;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/operations/DoublePreEndorsementEvidence.d.ts",dts:"import { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nexport interface TezosDoublePreEndorsementEvidenceOperation extends TezosBaseOperation {\n kind: TezosOperationType.DOUBLE_PREENDORSEMENT_EVIDENCE;\n op1: InlinedPreEndorsement;\n op2: InlinedPreEndorsement;\n}\nexport interface InlinedPreEndorsement {\n branch: string;\n operations: InlinedPreEndorsementContents;\n signature?: string;\n}\nexport interface InlinedPreEndorsementContents {\n kind: TezosOperationType.PREENDORSEMENT;\n slot: number;\n level: number;\n round: number;\n block_payload_hash: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/operations/DrainDelegate.d.ts",dts:"import { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nexport interface TezosDrainDelegateOperation extends TezosBaseOperation {\n kind: TezosOperationType.DRAIN_DELEGATE;\n consensus_key: string;\n delegate: string;\n destination: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/operations/Endorsement.d.ts",dts:"import { TezosBaseOperation, TezosOperationType } from '../../..';\n/**\n * @internalapi\n * @category Tezos\n */\nexport interface TezosEndorsementOperation extends TezosBaseOperation {\n kind: TezosOperationType.ENDORSEMENT;\n level: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/operations/EndorsementWithSlot.d.ts",dts:"import { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nimport { InlinedEndorsement } from './DoubleEndorsementEvidence';\nexport interface TezosEndorsementWithSlotOperation extends TezosBaseOperation {\n kind: TezosOperationType.ENDORSEMENT_WITH_SLOT;\n endorsement: InlinedEndorsement;\n slot: number;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/operations/FailingNoop.d.ts",dts:"import { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nexport interface TezosFailingNoopOperation extends TezosBaseOperation {\n kind: TezosOperationType.FAILING_NOOP;\n arbitrary: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/operations/IncreasePaidStorage.d.ts",dts:"import { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nexport interface TezosIncreasePaidStorageOperation extends TezosBaseOperation {\n kind: TezosOperationType.INCREASE_PAID_STORAGE;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n amount: string;\n destination: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/operations/Origination.d.ts",dts:"import { TezosBaseOperation, TezosOperationType } from '../../..';\n/**\n * @internalapi\n * @category Tezos\n */\nexport interface TezosOriginationOperation extends TezosBaseOperation {\n kind: TezosOperationType.ORIGINATION;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n balance: string;\n delegate?: string;\n script: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/operations/PreAttestation.d.ts",dts:"import { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nexport interface TezosPreAttestationOperation extends TezosBaseOperation {\n kind: TezosOperationType.PREATTESTATION;\n slot: number;\n level: number;\n round: number;\n block_payload_hash: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/operations/PreEndorsement.d.ts",dts:"import { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nexport interface TezosPreEndorsementOperation extends TezosBaseOperation {\n kind: TezosOperationType.PREENDORSEMENT;\n slot: number;\n level: number;\n round: number;\n block_payload_hash: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/operations/Proposal.d.ts",dts:"import { TezosBaseOperation, TezosOperationType } from '../../..';\n/**\n * @internalapi\n * @category Tezos\n */\nexport interface TezosProposalOperation extends TezosBaseOperation {\n kind: TezosOperationType.PROPOSALS;\n period: string;\n proposals: string[];\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/operations/RegisterGlobalConstant.d.ts",dts:"import { MichelineMichelsonV1Expression } from '../MichelineMichelsonV1Expression';\nimport { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nexport interface TezosRegisterGlobalConstantOperation extends TezosBaseOperation {\n kind: TezosOperationType.REGISTER_GLOBAL_CONSTANT;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n value: MichelineMichelsonV1Expression;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/operations/Reveal.d.ts",dts:"import { TezosBaseOperation, TezosOperationType } from '../../..';\n/**\n * @internalapi\n * @category Tezos\n */\nexport interface TezosRevealOperation extends TezosBaseOperation {\n kind: TezosOperationType.REVEAL;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n public_key: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/operations/SeedNonceRevelation.d.ts",dts:"import { TezosBaseOperation, TezosOperationType } from '../../..';\n/**\n * @internalapi\n * @category Tezos\n */\nexport interface TezosSeedNonceRevelationOperation extends TezosBaseOperation {\n kind: TezosOperationType.SEED_NONCE_REVELATION;\n level: string;\n nonce: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/operations/SetDepositsLimit.d.ts",dts:"import { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nexport interface TezosSetDepositsLimitOperation extends TezosBaseOperation {\n kind: TezosOperationType.SET_DEPOSITS_LIMIT;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n limit?: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/operations/SmartRollupAddMessages.d.ts",dts:"import { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nexport interface TezosSmartRollupAddMessagesOperation extends TezosBaseOperation {\n kind: TezosOperationType.SMART_ROLLUP_ADD_MESSAGES;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n message: string[];\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/operations/SmartRollupCement.d.ts",dts:"import { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nexport interface TezosSmartRollupCementOperation extends TezosBaseOperation {\n kind: TezosOperationType.SMART_ROLLUP_CEMENT;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n rollup: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/operations/SmartRollupExecuteOutboxMessage.d.ts",dts:"import { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nexport interface TezosSmartRollupExecuteOutboxMessageOperation extends TezosBaseOperation {\n kind: TezosOperationType.SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n rollup: string;\n cemented_commitment: string;\n output_proof: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/operations/SmartRollupOriginate.d.ts",dts:"import { MichelineMichelsonV1Expression } from '../MichelineMichelsonV1Expression';\nimport { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nimport { PvmKind } from '../common';\nexport interface TezosSmartRollupOriginateOperation extends TezosBaseOperation {\n kind: TezosOperationType.SMART_ROLLUP_ORIGINATE;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n pvm_kind: PvmKind;\n kernel: string;\n parameters_ty: MichelineMichelsonV1Expression;\n whitelist?: string[];\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/operations/SmartRollupPublish.d.ts",dts:"import { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nimport { SmartRollupPublishCommitment } from '../common';\nexport interface TezosSmartRollupPublishOperation extends TezosBaseOperation {\n kind: TezosOperationType.SMART_ROLLUP_PUBLISH;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n rollup: string;\n commitment: SmartRollupPublishCommitment;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/operations/SmartRollupRecoverBond.d.ts",dts:"import { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nexport interface TezosSmartRollupRecoverBondOperation extends TezosBaseOperation {\n kind: TezosOperationType.SMART_ROLLUP_RECOVER_BOND;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n rollup: string;\n staker: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/operations/SmartRollupRefute.d.ts",dts:'import { TezosOperationType } from \'../OperationTypes\';\nimport { TezosBaseOperation } from \'../TezosBaseOperation\';\nexport interface TezosSmartRollupRefuteOperation extends TezosBaseOperation {\n kind: TezosOperationType.SMART_ROLLUP_REFUTE;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n rollup: string;\n opponent: string;\n refutation: SmartRollupRefutation;\n}\nexport type SmartRollupRefutation = SmartRollupRefutationStart | SmartRollupRefutationMove;\nexport interface SmartRollupRefutationStart {\n refutation_kind: SmartRollupRefutationOptions.START;\n player_commitment_hash: string;\n opponent_commitment_hash: string;\n}\nexport interface SmartRollupRefutationMove {\n refutation_kind: SmartRollupRefutationOptions.MOVE;\n choice: string;\n step: SmartRollupRefutationMoveStep;\n}\nexport declare enum SmartRollupRefutationOptions {\n START = "start",\n MOVE = "move"\n}\nexport type SmartRollupRefutationMoveStep = SmartRollupRefutationMoveStepDissection[] | SmartRollupRefutationMoveStepProof;\nexport type SmartRollupGameStatus = SmartRollupRefuteGameStatusOptions.ONGOING | SmartRollupRefuteGameStatusEnded;\nexport interface SmartRollupRefutationMoveStepDissection {\n state?: string;\n tick: number;\n}\nexport interface SmartRollupRefutationMoveStepProof {\n pvm_step: string;\n input_proof?: SmartRollupRefutationMoveInputProof;\n}\nexport declare enum SmartRollupRefuteGameStatusOptions {\n ONGOING = "ongoing",\n ENDED = "ended"\n}\nexport interface SmartRollupRefuteGameStatusEnded {\n result: SmartRollupRefuteGameStatusResult;\n}\nexport type SmartRollupRefutationMoveInputProof = SmartRollupRefutationMoveInputProofInbox | SmartRollupRefutationMoveInputProofReveal | SmartRollupRefutationMoveInputProofFirstInput;\nexport type SmartRollupRefuteGameStatusResult = SmartRollupRefuteGameEndedResultLoser | SmartRollupRefuteGameEndedResultDraw;\nexport interface SmartRollupRefutationMoveInputProofInbox {\n input_proof_kind: SmartRollupInputProofKind.INBOX_PROOF;\n level: number;\n message_counter: string;\n serialized_proof: string;\n}\nexport interface SmartRollupRefutationMoveInputProofReveal {\n input_proof_kind: SmartRollupInputProofKind.REVEAL_PROOF;\n reveal_proof: SmartRollupRefuteRevealProofOptions;\n}\nexport interface SmartRollupRefutationMoveInputProofFirstInput {\n input_proof_kind: SmartRollupInputProofKind.FIRST_INPUT;\n}\nexport interface SmartRollupRefuteGameEndedResultLoser {\n kind: SmartRollupRefuteGameEndedPlayerOutcomes.LOSER;\n reason: SmartRollupRefuteGameEndedReason;\n player: string;\n}\nexport interface SmartRollupRefuteGameEndedResultDraw {\n kind: SmartRollupRefuteGameEndedPlayerOutcomes.DRAW;\n}\nexport declare enum SmartRollupInputProofKind {\n INBOX_PROOF = "inbox_proof",\n REVEAL_PROOF = "reveal_proof",\n FIRST_INPUT = "first_input"\n}\nexport type SmartRollupRefuteRevealProofOptions = SmartRollupRefuteRevealProofRaw | SmartRollupRefuteRevealProofMetadata | SmartRollupRefuteRevealProofDalPage;\nexport declare enum SmartRollupRefuteGameEndedPlayerOutcomes {\n LOSER = "loser",\n DRAW = "draw"\n}\nexport declare enum SmartRollupRefuteGameEndedReason {\n CONFLICT_RESOLVED = "conflict_resolved",\n TIMEOUT = "timeout"\n}\nexport declare enum SmartRollupRefuteRevealProofKind {\n RAW_DATA_PROOF = "raw_data_proof",\n METADATA_PROOF = "metadata_proof",\n DAL_PAGE_PROOF = "dal_page_proof"\n}\nexport interface SmartRollupRefuteRevealProofRaw {\n reveal_proof_kind: SmartRollupRefuteRevealProofKind.RAW_DATA_PROOF;\n raw_data: string;\n}\nexport interface SmartRollupRefuteRevealProofMetadata {\n reveal_proof_kind: SmartRollupRefuteRevealProofKind.METADATA_PROOF;\n}\nexport interface SmartRollupRefuteRevealProofDalPage {\n reveal_proof_kind: SmartRollupRefuteRevealProofKind.DAL_PAGE_PROOF;\n dal_page_id: {\n published_level: number;\n slot_index: number;\n page_index: number;\n };\n dal_proof: string;\n}\n'},{name:"@airgap/beacon-types/dist/esm/types/tezos/operations/SmartRollupTimeout.d.ts",dts:"import { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nexport interface TezosSmartRollupTimeoutOperation extends TezosBaseOperation {\n kind: TezosOperationType.SMART_ROLLUP_TIMEOUT;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n rollup: string;\n stakers: SmartRollupTimeoutStakers;\n}\nexport interface SmartRollupTimeoutStakers {\n alice: string;\n bob: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/operations/Transaction.d.ts",dts:"import { TezosBaseOperation, TezosOperationType, TezosTransactionParameters } from '../../..';\n/**\n * @internalapi\n * @category Tezos\n */\nexport interface TezosTransactionOperation extends TezosBaseOperation {\n kind: TezosOperationType.TRANSACTION;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n amount: string;\n destination: string;\n parameters?: TezosTransactionParameters;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/operations/TransferTicket.d.ts",dts:"import { MichelineMichelsonV1Expression } from '../MichelineMichelsonV1Expression';\nimport { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nexport interface TezosTransferTicketOperation extends TezosBaseOperation {\n kind: TezosOperationType.TRANSFER_TICKET;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n ticket_contents: MichelineMichelsonV1Expression;\n ticket_ty: MichelineMichelsonV1Expression;\n ticket_ticketer: string;\n ticket_amount: string;\n destination: string;\n entrypoint: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/operations/UpdateConsensusKey.d.ts",dts:"import { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nexport interface TezosUpdateConsensusKeyOperation extends TezosBaseOperation {\n kind: TezosOperationType.UPDATE_CONSENSUS_KEY;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n pk: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/operations/VdfRevelation.d.ts",dts:"import { TezosOperationType } from '../OperationTypes';\nimport { TezosBaseOperation } from '../TezosBaseOperation';\nexport interface TezosVdfRevelationOperation extends TezosBaseOperation {\n kind: TezosOperationType.VDF_REVELATION;\n solution: string[];\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/InlinedAttestation.d.ts",dts:"import { TezosOperationType } from './OperationTypes';\nexport interface InlinedAttestation {\n branch: string;\n operations: InlinedAttestationContents;\n signature?: string;\n}\nexport interface InlinedAttestationContents {\n kind: InlinedAttestationKindEnum;\n slot?: number;\n round?: number;\n block_payload_hash?: string;\n level: number;\n}\nexport type InlinedAttestationKindEnum = TezosOperationType.ATTESTATION;\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/InlinedPreattestation.d.ts",dts:"import { TezosOperationType } from './OperationTypes';\nexport interface InlinedPreattestation {\n branch: string;\n operations: InlinedPreattestationContents;\n signature?: string;\n}\nexport interface InlinedPreattestationContents {\n kind: TezosOperationType.PREATTESTATION;\n slot: number;\n level: number;\n round: number;\n block_payload_hash: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/MichelineMichelsonV1Expression.d.ts",dts:"import { MichelsonPrimitives } from '../..';\n/**\n * @internalapi\n * @category Tezos\n */\nexport type MichelineMichelsonV1Expression = {\n int: string;\n} | {\n string: string;\n} | {\n bytes: string;\n} | MichelineMichelsonV1Expression[] | {\n prim: MichelsonPrimitives;\n args?: MichelineMichelsonV1Expression[];\n annots?: string[];\n};\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/MichelsonPrimitives.d.ts",dts:"/**\n * @internalapi\n * @category Tezos\n */\nexport type MichelsonPrimitives = 'ADD' | 'IF_NONE' | 'SWAP' | 'set' | 'nat' | 'CHECK_SIGNATURE' | 'IF_LEFT' | 'LAMBDA' | 'Elt' | 'CREATE_CONTRACT' | 'NEG' | 'big_map' | 'map' | 'or' | 'BLAKE2B' | 'bytes' | 'SHA256' | 'SET_DELEGATE' | 'CONTRACT' | 'LSL' | 'SUB' | 'IMPLICIT_ACCOUNT' | 'PACK' | 'list' | 'PAIR' | 'Right' | 'contract' | 'GT' | 'LEFT' | 'STEPS_TO_QUOTA' | 'storage' | 'TRANSFER_TOKENS' | 'CDR' | 'SLICE' | 'PUSH' | 'False' | 'SHA512' | 'CHAIN_ID' | 'BALANCE' | 'signature' | 'DUG' | 'SELF' | 'EMPTY_BIG_MAP' | 'LSR' | 'OR' | 'XOR' | 'lambda' | 'COMPARE' | 'key' | 'option' | 'Unit' | 'Some' | 'UNPACK' | 'NEQ' | 'INT' | 'pair' | 'AMOUNT' | 'DIP' | 'ABS' | 'ISNAT' | 'EXEC' | 'NOW' | 'LOOP' | 'chain_id' | 'string' | 'MEM' | 'MAP' | 'None' | 'address' | 'CONCAT' | 'EMPTY_SET' | 'MUL' | 'LOOP_LEFT' | 'timestamp' | 'LT' | 'UPDATE' | 'DUP' | 'SOURCE' | 'mutez' | 'SENDER' | 'IF_CONS' | 'RIGHT' | 'CAR' | 'CONS' | 'LE' | 'NONE' | 'IF' | 'SOME' | 'GET' | 'Left' | 'CAST' | 'int' | 'SIZE' | 'key_hash' | 'unit' | 'DROP' | 'EMPTY_MAP' | 'NIL' | 'DIG' | 'APPLY' | 'bool' | 'RENAME' | 'operation' | 'True' | 'FAILWITH' | 'parameter' | 'HASH_KEY' | 'EQ' | 'NOT' | 'UNIT' | 'Pair' | 'ADDRESS' | 'EDIV' | 'CREATE_ACCOUNT' | 'GE' | 'ITER' | 'code' | 'AND';\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/OperationTypes.d.ts",dts:'/**\n * @publicapi\n * @category Tezos\n */\nexport declare enum TezosOperationType {\n ORIGINATION = "origination",\n DELEGATION = "delegation",\n REVEAL = "reveal",\n TRANSACTION = "transaction",\n ACTIVATE_ACCOUNT = "activate_account",\n ENDORSEMENT = "endorsement",\n SEED_NONCE_REVELATION = "seed_nonce_revelation",\n DOUBLE_ENDORSEMENT_EVIDENCE = "double_endorsement_evidence",\n DOUBLE_BAKING_EVIDENCE = "double_baking_evidence",\n PROPOSALS = "proposals",\n BALLOT = "ballot",\n ATTESTATION = "attestation",\n PREATTESTATION = "preattestation",\n PREENDORSEMENT = "preendorsement",\n SET_DEPOSITS_LIMIT = "set_deposits_limit",\n DOUBLE_PREATTESTATION_EVIDENCE = "double_preattestation_evidence",\n DOUBLE_PREENDORSEMENT_EVIDENCE = "double_preendorsement_evidence",\n ATTESTATION_WITH_SLOT = "attestation_with_slot",\n ENDORSEMENT_WITH_SLOT = "endorsement_with_slot",\n DOUBLE_ATTESTATION_EVIDENCE = "double_attestation_evidence",\n FAILING_NOOP = "failing_noop",\n REGISTER_GLOBAL_CONSTANT = "register_global_constant",\n TRANSFER_TICKET = "transfer_ticket",\n INCREASE_PAID_STORAGE = "increase_paid_storage",\n UPDATE_CONSENSUS_KEY = "update_consensus_key",\n DRAIN_DELEGATE = "drain_delegate",\n VDF_REVELATION = "vdf_revelation",\n EVENT = "event",\n TICKET_UPDATES = "ticket_updates",\n SMART_ROLLUP_ORIGINATE = "smart_rollup_originate",\n SMART_ROLLUP_ADD_MESSAGES = "smart_rollup_add_messages",\n SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE = "smart_rollup_execute_outbox_message",\n SMART_ROLLUP_PUBLISH = "smart_rollup_publish",\n SMART_ROLLUP_CEMENT = "smart_rollup_cement",\n SMART_ROLLUP_RECOVER_BOND = "smart_rollup_recover_bond",\n SMART_ROLLUP_REFUTE = "smart_rollup_refute",\n SMART_ROLLUP_TIMEOUT = "smart_rollup_timeout",\n DAL_PUBLISH_COMMITMENT = "dal_publish_commitment"\n}\n'},{name:"@airgap/beacon-types/dist/esm/types/tezos/PartialTezosOperation.d.ts",dts:"import { Optional, TezosAttestationOperation, TezosAttestationWithSlotOperation, TezosDoubleAttestationEvidenceOperation, TezosDoublePreAttestationEvidenceOperation, TezosDoublePreEndorsementEvidenceOperation, TezosDrainDelegateOperation, TezosEndorsementWithSlotOperation, TezosFailingNoopOperation, TezosIncreasePaidStorageOperation, TezosPreAttestationOperation, TezosRegisterGlobalConstantOperation, TezosSetDepositsLimitOperation, TezosSmartRollupAddMessagesOperation, TezosSmartRollupCementOperation, TezosSmartRollupExecuteOutboxMessageOperation, TezosSmartRollupOriginateOperation, TezosSmartRollupPublishOperation, TezosSmartRollupRecoverBondOperation, TezosSmartRollupRefuteOperation, TezosTransferTicketOperation, TezosUpdateConsensusKeyOperation, TezosVdfRevelationOperation } from '@airgap/beacon-types';\nimport { TezosActivateAccountOperation } from './operations/ActivateAccount';\nimport { TezosBallotOperation } from './operations/Ballot';\nimport { TezosDelegationOperation } from './operations/Delegation';\nimport { TezosDoubleBakingEvidenceOperation } from './operations/DoubleBakingEvidence';\nimport { TezosEndorsementOperation } from './operations/Endorsement';\nimport { TezosOriginationOperation } from './operations/Origination';\nimport { TezosProposalOperation } from './operations/Proposal';\nimport { TezosRevealOperation } from './operations/Reveal';\nimport { TezosSeedNonceRevelationOperation } from './operations/SeedNonceRevelation';\nimport { TezosTransactionOperation } from './operations/Transaction';\nimport { TezosPreEndorsementOperation } from './operations/PreEndorsement';\nimport { TezosDalPublishCommitmentOperation } from './operations/DalPublishCommitment';\n/**\n * @publicapi\n * @category Tezos\n */\nexport type omittedProperties = 'source' | 'fee' | 'counter' | 'gas_limit' | 'storage_limit';\n/**\n * @internalapi\n * @category Tezos\n */\nexport type PartialTezosDelegationOperation = Optional;\n/**\n * @internalapi\n * @category Tezos\n */\nexport type PartialTezosOriginationOperation = Optional;\n/**\n * @internalapi\n * @category Tezos\n */\nexport type PartialTezosRevealOperation = Optional;\n/**\n * @internalapi\n * @category Tezos\n */\nexport type PartialTezosTransactionOperation = Optional;\n/**\n * @internalapi\n * @category Tezos\n */\nexport type PartialTezosSetDepositsLimitOperation = Optional;\n/**\n * @internalapi\n * @category Tezos\n */\nexport type PartialTezosRegisterGlobalConstantOperation = Optional;\n/**\n * @internalapi\n * @category Tezos\n */\nexport type PartialTezosTransferTicketOperation = Optional;\n/**\n * @internalapi\n * @category Tezos\n */\nexport type PartialTezosIncreasePaidStorageOperation = Optional;\n/**\n * @internalapi\n * @category Tezos\n */\nexport type PartialTezosUpdateConsensusKeyOperation = Optional;\n/**\n * @internalapi\n * @category Tezos\n */\nexport type PartialTezosSmartRollupOriginateOperation = Optional;\n/**\n * @internalapi\n * @category Tezos\n */\nexport type PartialTezosSmartRollupAddMessagesOperation = Optional;\n/**\n * @internalapi\n * @category Tezos\n */\nexport type PartialTezosSmartRollupExecuteOutboxMessageOperation = Optional;\n/**\n * @internalapi\n * @category Tezos\n */\nexport type PartialTezosSmartRollupPublishOperation = Optional;\n/**\n * @internalapi\n * @category Tezos\n */\nexport type PartialTezosSmartRollupCementOperation = Optional;\n/**\n * @internalapi\n * @category Tezos\n */\nexport type PartialTezosSmartRollupRecoverBondOperation = Optional;\n/**\n * @internalapi\n * @category Tezos\n */\nexport type PartialTezosSmartRollupRefuteOperation = Optional;\n/**\n * @internalapi\n * @category Tezos\n */\nexport type PartialTezosSmartRollupTimeoutOperation = Optional;\nexport type PartialTezosDalPublishCommitmentOperation = Optional;\n/**\n * @publicapi\n * @category Tezos\n */\nexport type PartialTezosOperation = TezosActivateAccountOperation | TezosBallotOperation | PartialTezosDelegationOperation | TezosDoubleBakingEvidenceOperation | TezosEndorsementOperation | PartialTezosOriginationOperation | TezosProposalOperation | PartialTezosRevealOperation | TezosSeedNonceRevelationOperation | PartialTezosTransactionOperation | TezosAttestationOperation | TezosPreAttestationOperation | TezosPreEndorsementOperation | PartialTezosSetDepositsLimitOperation | TezosDoublePreAttestationEvidenceOperation | TezosDoublePreEndorsementEvidenceOperation | TezosAttestationWithSlotOperation | TezosEndorsementWithSlotOperation | TezosDoubleAttestationEvidenceOperation | TezosFailingNoopOperation | PartialTezosRegisterGlobalConstantOperation | PartialTezosTransferTicketOperation | PartialTezosIncreasePaidStorageOperation | PartialTezosUpdateConsensusKeyOperation | TezosDrainDelegateOperation | TezosVdfRevelationOperation | PartialTezosSmartRollupOriginateOperation | PartialTezosSmartRollupAddMessagesOperation | PartialTezosSmartRollupExecuteOutboxMessageOperation | PartialTezosSmartRollupPublishOperation | PartialTezosSmartRollupCementOperation | PartialTezosSmartRollupRecoverBondOperation | PartialTezosSmartRollupRefuteOperation | PartialTezosSmartRollupTimeoutOperation | PartialTezosDalPublishCommitmentOperation;\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/TezosBaseOperation.d.ts",dts:"import { TezosOperationType } from '../..';\n/**\n * @internalapi\n * @category Tezos\n */\nexport interface TezosBaseOperation {\n kind: TezosOperationType;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/TezosBlockHeader.d.ts",dts:"/**\n * @internalapi\n * @category Tezos\n */\nexport interface TezosBlockHeader {\n level: number;\n proto: number;\n predecessor: string;\n timestamp: string;\n validation_pass: number;\n operations_hash: string;\n fitness: string[];\n context: string;\n priority: number;\n proof_of_work_nonce: string;\n signature: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/TezosOperation.d.ts",dts:"import { TezosActivateAccountOperation, TezosBallotOperation, TezosDelegationOperation, TezosDoubleBakingEvidenceOperation, TezosEndorsementOperation, TezosOriginationOperation, TezosProposalOperation, TezosRevealOperation, TezosSeedNonceRevelationOperation, TezosTransactionOperation } from '../..';\n/**\n * @internalapi\n * @category Tezos\n */\nexport type TezosOperation = TezosActivateAccountOperation | TezosBallotOperation | TezosDelegationOperation | TezosDoubleBakingEvidenceOperation | TezosEndorsementOperation | TezosOriginationOperation | TezosProposalOperation | TezosRevealOperation | TezosSeedNonceRevelationOperation | TezosTransactionOperation;\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/TezosTransactionParameters.d.ts",dts:"import { MichelineMichelsonV1Expression } from './MichelineMichelsonV1Expression';\n/**\n * @internalapi\n * @category Tezos\n */\nexport interface TezosTransactionParameters {\n entrypoint: 'default' | 'root' | 'do' | 'set_delegate' | 'remove_delegate' | string;\n value: MichelineMichelsonV1Expression;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/tezos/common.d.ts",dts:'import { MichelineMichelsonV1Expression } from \'./MichelineMichelsonV1Expression\';\nimport { TezosOperationType } from \'./OperationTypes\';\nexport type MetadataBalanceUpdatesKindEnum = \'contract\' | \'freezer\' | \'accumulator\' | \'burned\' | \'commitment\' | \'minted\' | \'staking\';\nexport type MetadataBalanceUpdatesOriginEnum = \'block\' | \'migration\' | \'subsidy\' | \'simulation\' | \'delayed_operation\';\nexport type MetadataBalanceUpdatesCategoryEnum = METADATA_BALANCE_UPDATES_CATEGORY;\nexport declare enum METADATA_BALANCE_UPDATES_CATEGORY {\n BAKING_BONUSES = "baking bonuses",\n BAKING_REWARDS = "baking rewards",\n BLOCK_FEES = "block fees",\n BONDS = "bonds",\n BOOTSTRAP = "bootstrap",\n BURNED = "burned",\n COMMITMENT = "commitment",\n DELEGATE_DENOMINATOR = "delegate_denominator",\n DELEGATOR_NUMERATOR = "delegator_numerator",\n DEPOSITS = "deposits",\n ENDORSING_REWARDS = "endorsing rewards",\n INVOICE = "invoice",\n LOST_ENDORSING_REWARDS = "lost endorsing rewards",\n MINTED = "minted",\n NONCE_REVELATION_REWARDS = "nonce revelation rewards",\n PUNISHMENTS = "punishments",\n SMART_ROLLUP_REFUTATION_PUNISHMENTS = "smart_rollup_refutation_punishments",\n SMART_ROLLUP_REFUTATION_REWARDS = "smart_rollup_refutation_rewards",\n STORAGE_FEES = "storage fees",\n SUBSIDY = "subsidy",\n UNSTAKED_DEPOSITS = "unstaked_deposits"\n}\nexport type FrozenStaker = SingleStaker | SharedStaker | Baker;\nexport type Staker = SingleStaker | SharedStaker;\nexport interface SingleStaker {\n contract: string;\n delegate: string;\n}\nexport interface SharedStaker {\n delegate: string;\n}\nexport interface Baker {\n baker: string;\n}\nexport type BondId = {\n smart_rollup: string;\n};\nexport type InternalOperationResultKindEnum = TezosOperationType.TRANSACTION | TezosOperationType.ORIGINATION | TezosOperationType.DELEGATION | TezosOperationType.EVENT;\nexport interface TransactionOperationParameter {\n entrypoint: string;\n value: MichelineMichelsonV1Expression;\n}\nexport interface ScriptedContracts {\n code: MichelineMichelsonV1Expression[];\n storage: MichelineMichelsonV1Expression;\n}\nexport type ContractBigMapDiff = ContractBigMapDiffItem[];\nexport interface ContractBigMapDiffItem {\n key_hash?: string;\n key?: MichelineMichelsonV1Expression;\n value?: MichelineMichelsonV1Expression;\n action?: DiffActionEnum;\n big_map?: string;\n source_big_map?: string;\n destination_big_map?: string;\n key_type?: MichelineMichelsonV1Expression;\n value_type?: MichelineMichelsonV1Expression;\n}\nexport type DiffActionEnum = \'update\' | \'remove\' | \'copy\' | \'alloc\';\nexport type LazyStorageDiff = LazyStorageDiffBigMap | LazyStorageDiffSaplingState;\nexport interface LazyStorageDiffBigMap {\n kind: \'big_map\';\n id: string;\n diff: LazyStorageDiffBigMapItems;\n}\nexport interface LazyStorageDiffSaplingState {\n kind: \'sapling_state\';\n id: string;\n diff: LazyStorageDiffSaplingStateItems;\n}\nexport interface LazyStorageDiffBigMapItems {\n action: DiffActionEnum;\n updates?: LazyStorageDiffUpdatesBigMap[];\n source?: string;\n key_type?: MichelineMichelsonV1Expression;\n value_type?: MichelineMichelsonV1Expression;\n}\nexport interface LazyStorageDiffUpdatesBigMap {\n key_hash: string;\n key: MichelineMichelsonV1Expression;\n value?: MichelineMichelsonV1Expression;\n}\nexport interface LazyStorageDiffSaplingStateItems {\n action: DiffActionEnum;\n updates?: LazyStorageDiffUpdatesSaplingState;\n source?: string;\n memo_size?: number;\n}\nexport interface LazyStorageDiffUpdatesSaplingState {\n commitments_and_ciphertexts: CommitmentsAndCiphertexts[];\n nullifiers: string[];\n}\nexport type CommitmentsAndCiphertexts = [string, SaplingTransactionCiphertext];\nexport interface SaplingTransactionCiphertext {\n cv: string;\n epk: string;\n payload_enc: string;\n nonce_enc: string;\n payload_out: string;\n nonce_out: string;\n}\nexport declare enum PvmKind {\n WASM2 = "wasm_2_0_0",\n ARITH = "arith",\n RISCV = "riscv"\n}\nexport interface SmartRollupPublishCommitment {\n compressed_state: string;\n inbox_level: number;\n predecessor: string;\n number_of_ticks: string;\n}\n'},{name:"@airgap/beacon-types/dist/esm/types/transport/TransportStatus.d.ts",dts:'export declare enum TransportStatus {\n NOT_CONNECTED = "NOT_CONNECTED",\n CONNECTING = "CONNECTING",\n CONNECTED = "CONNECTED"\n}\n'},{name:"@airgap/beacon-types/dist/esm/types/transport/TransportType.d.ts",dts:'/**\n * @internalapi\n */\nexport declare enum TransportType {\n CHROME_MESSAGE = "chrome_message",\n WALLETCONNECT = "walletconnect",\n POST_MESSAGE = "post_message",\n LEDGER = "ledger",\n P2P = "p2p"\n}\n'},{name:"@airgap/beacon-types/dist/esm/types/utils/Optional.d.ts",dts:"export type Optional = Partial & Omit;\n"},{name:"@airgap/beacon-types/dist/esm/types/AccountInfo.d.ts",dts:"import { Origin } from '..';\nimport { PermissionEntity } from './PermissionEntity';\nimport { Notification } from './Notification';\nexport type AccountIdentifier = string;\nexport interface AccountInfo extends PermissionEntity {\n accountIdentifier: AccountIdentifier;\n senderId: string;\n origin: {\n type: Origin;\n id: string;\n };\n walletKey?: string;\n publicKey?: string;\n connectedAt: number;\n notification?: Notification;\n hasVerifiedChallenge?: boolean;\n walletType: 'implicit' | 'abstracted_account';\n verificationType?: 'proof_of_event';\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/AnalyticsInterface.d.ts",dts:"export interface AnalyticsInterface {\n track(trigger: 'click' | 'event', section: string, label: string, data?: Record): void;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/BeaconErrorType.d.ts",dts:'export declare enum BeaconErrorType {\n /**\n * {@link BroadcastBeaconError}\n *\n * Will be returned if the user chooses that the transaction is broadcast but there is an error (eg. node not available).\n *\n * Returned by: Broadcast | Operation Request\n */\n BROADCAST_ERROR = "BROADCAST_ERROR",\n /**\n * {@link NetworkNotSupportedBeaconError}\n *\n * Will be returned if the selected network is not supported by the wallet / extension.\n *\n * Returned by: Permission\n */\n NETWORK_NOT_SUPPORTED = "NETWORK_NOT_SUPPORTED",\n /**\n * {@link NoAddressBeaconError}\n *\n * Will be returned if there is no address present for the protocol / network requested.\n *\n * Returned by: Permission\n */\n NO_ADDRESS_ERROR = "NO_ADDRESS_ERROR",\n /**\n * {@link NoPrivateKeyBeaconError}\n *\n * Will be returned if the private key matching the sourceAddress could not be found.\n *\n * Returned by: Sign\n */\n NO_PRIVATE_KEY_FOUND_ERROR = "NO_PRIVATE_KEY_FOUND_ERROR",\n /**\n * {@link NotGrantedBeaconError}\n *\n * Will be returned if the signature was blocked // (Not needed?) Permission: Will be returned if the permissions requested by the App were not granted.\n *\n * Returned by: Sign\n */\n NOT_GRANTED_ERROR = "NOT_GRANTED_ERROR",\n /**\n * {@link ParametersInvalidBeaconError}\n *\n * Will be returned if any of the parameters are invalid.\n *\n * Returned by: Operation Request\n */\n PARAMETERS_INVALID_ERROR = "PARAMETERS_INVALID_ERROR",\n /**\n * {@link TooManyOperationsBeaconError}\n *\n * Will be returned if too many operations were in the request and they were not able to fit into a single operation group.\n *\n * Returned by: Operation Request\n */\n TOO_MANY_OPERATIONS = "TOO_MANY_OPERATIONS",\n /**\n * {@link TransactionInvalidBeaconError}\n *\n * Will be returned if the transaction is not parsable or is rejected by the node.\n *\n * Returned by: Broadcast\n */\n TRANSACTION_INVALID_ERROR = "TRANSACTION_INVALID_ERROR",\n /**\n * {@link SignatureTypeNotSupportedBeaconError}\n *\n * Will be returned if the signing type is not supported.\n *\n * Returned by: Sign\n */\n SIGNATURE_TYPE_NOT_SUPPORTED = "SIGNATURE_TYPE_NOT_SUPPORTED",\n /**\n * {@link AbortedBeaconError}\n *\n * Will be returned if the request was aborted by the user or the wallet.\n *\n * Returned by: Permission | Operation Request | Sign Request | Broadcast\n */\n ABORTED_ERROR = "ABORTED_ERROR",\n /**\n * {@link UnknownBeaconError}\n *\n * Used as a wildcard if an unexpected error occured.\n *\n * Returned by: Permission | Operation Request | Sign Request | Broadcast\n */\n UNKNOWN_ERROR = "UNKNOWN_ERROR"\n}\n'},{name:"@airgap/beacon-types/dist/esm/types/ColorMode.d.ts",dts:'export declare enum ColorMode {\n LIGHT = "light",\n DARK = "dark"\n}\n'},{name:"@airgap/beacon-types/dist/esm/types/ConnectionContext.d.ts",dts:"/// \nimport { Origin } from '..';\n/**\n * @internalapi\n */\nexport interface ConnectionContext {\n origin: Origin;\n id: string;\n extras?: {\n sender: chrome.runtime.MessageSender;\n sendResponse(response?: unknown): void;\n };\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/EncryptionOperation.d.ts",dts:""},{name:"@airgap/beacon-types/dist/esm/types/EncryptionType.d.ts",dts:""},{name:"@airgap/beacon-types/dist/esm/types/Extension.d.ts",dts:"export interface Extension {\n id: string;\n name: string;\n shortName?: string;\n iconUrl?: string;\n color?: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/ExtensionMessage.d.ts",dts:"import { ExtensionMessageTarget } from '..';\n/**\n * @internalapi\n */\nexport interface ExtensionMessage {\n target: ExtensionMessageTarget;\n targetId?: string;\n sender?: U;\n payload: T;\n}\n/**\n * @internalapi\n */\nexport interface EncryptedExtensionMessage {\n target: ExtensionMessageTarget;\n targetId?: string;\n sender?: U;\n encryptedPayload: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/ExtensionMessageTarget.d.ts",dts:'/**\n * @internalapi\n */\nexport declare enum ExtensionMessageTarget {\n BACKGROUND = "toBackground",\n PAGE = "toPage",\n EXTENSION = "toExtension"\n}\n'},{name:"@airgap/beacon-types/dist/esm/types/Notification.d.ts",dts:"export interface Notification {\n version: number;\n apiUrl: string;\n token: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/Origin.d.ts",dts:'/**\n * @internalapi\n */\nexport declare enum Origin {\n WEBSITE = "website",\n EXTENSION = "extension",\n P2P = "p2p",\n WALLETCONNECT = "walletconnect"\n}\n'},{name:"@airgap/beacon-types/dist/esm/types/P2PPairingRequest.d.ts",dts:"import { ExtendedPeerInfo, PeerInfo } from './PeerInfo';\n/**\n * @internalapi\n */\nexport declare class P2PPairingRequest implements PeerInfo {\n readonly type: string;\n relayServer: string;\n id: string;\n name: string;\n icon?: string | undefined;\n appUrl?: string | undefined;\n publicKey: string;\n version: string;\n constructor(id: string, name: string, publicKey: string, version: string, relayServer: string, icon?: string, appUrl?: string);\n}\n/**\n * @internalapi\n */\nexport declare class ExtendedP2PPairingRequest extends P2PPairingRequest implements ExtendedPeerInfo {\n senderId: string;\n constructor(id: string, name: string, publicKey: string, version: string, relayServer: string, senderId: string, icon?: string, appUrl?: string);\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/P2PPairingResponse.d.ts",dts:"import { ExtendedPeerInfo, PeerInfo } from './PeerInfo';\n/**\n * @internalapi\n */\nexport declare class P2PPairingResponse implements PeerInfo {\n readonly type: string;\n relayServer: string;\n id: string;\n name: string;\n icon?: string | undefined;\n appUrl?: string | undefined;\n publicKey: string;\n version: string;\n constructor(id: string, name: string, publicKey: string, version: string, relayServer: string, icon?: string, appUrl?: string);\n}\n/**\n * @internalapi\n */\nexport declare class ExtendedP2PPairingResponse extends P2PPairingResponse implements ExtendedPeerInfo {\n senderId: string;\n constructor(id: string, name: string, publicKey: string, version: string, relayServer: string, senderId: string, icon?: string, appUrl?: string);\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/PeerInfo.d.ts",dts:"export interface PeerInfo {\n id: string;\n name: string;\n type: string;\n icon?: string;\n appUrl?: string;\n publicKey: string;\n version: string;\n}\nexport interface ExtendedPeerInfo extends PeerInfo {\n senderId: string;\n}\nexport type PeerInfoType = PeerInfo | ExtendedPeerInfo;\n"},{name:"@airgap/beacon-types/dist/esm/types/PermissionEntity.d.ts",dts:"import { Network, PermissionScope, Threshold } from '..';\nexport interface PermissionEntity {\n address: string;\n network: Network;\n scopes: PermissionScope[];\n threshold?: Threshold;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/PermissionInfo.d.ts",dts:"import { AppMetadata } from '..';\nimport { PermissionEntity } from './PermissionEntity';\nexport interface PermissionInfo extends PermissionEntity {\n accountIdentifier: string;\n senderId: string;\n appMetadata: AppMetadata;\n website: string;\n publicKey?: string;\n connectedAt: number;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/PostMessagePairingRequest.d.ts",dts:"import { ExtendedPeerInfo, PeerInfo } from './PeerInfo';\n/**\n * @internalapi\n */\nexport declare class PostMessagePairingRequest implements PeerInfo {\n readonly type: string;\n id: string;\n name: string;\n icon?: string | undefined;\n appUrl?: string | undefined;\n publicKey: string;\n version: string;\n constructor(id: string, name: string, publicKey: string, version: string, icon?: string, appUrl?: string);\n}\n/**\n * @internalapi\n */\nexport declare class ExtendedPostMessagePairingRequest extends PostMessagePairingRequest implements ExtendedPeerInfo {\n senderId: string;\n constructor(id: string, name: string, publicKey: string, version: string, senderId: string, icon?: string, appUrl?: string);\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/PostMessagePairingResponse.d.ts",dts:"import { ExtendedPeerInfo, PeerInfo } from './PeerInfo';\n/**\n * @internalapi\n */\nexport declare class PostMessagePairingResponse implements PeerInfo {\n readonly type: string;\n id: string;\n name: string;\n icon?: string | undefined;\n appUrl?: string | undefined;\n publicKey: string;\n version: string;\n constructor(id: string, name: string, publicKey: string, version: string, icon?: string, appUrl?: string);\n}\n/**\n * @internalapi\n */\nexport declare class ExtendedPostMessagePairingResponse extends PostMessagePairingResponse implements ExtendedPeerInfo {\n senderId: string;\n extensionId: string;\n constructor(id: string, name: string, publicKey: string, version: string, senderId: string, extensionId: string, icon?: string, appUrl?: string);\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/PushToken.d.ts",dts:"export interface PushToken {\n publicKey: string;\n backendUrl: string;\n accessToken: string;\n managementToken: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/Regions.d.ts",dts:'/**\n * Geographic region where a beacon node is located. This list can be changed in the future to be more specific, but for now it should cover most general areas.\n */\nexport declare enum Regions {\n EUROPE_EAST = "europe-east",\n EUROPE_WEST = "europe-west",\n NORTH_AMERICA_EAST = "north-america-east",\n NORTH_AMERICA_WEST = "north-america-west",\n CENTRAL_AMERICA = "central-america",\n SOUTH_AMERICA = "south-america",\n ASIA_EAST = "asia-east",\n ASIA_WEST = "asia-west",\n AFRICA = "africa",\n AUSTRALIA = "australia"\n}\nexport type NodeDistributions = Record;\n'},{name:"@airgap/beacon-types/dist/esm/types/RequestBroadcastInput.d.ts",dts:"import { Network } from '..';\n/**\n * @category DApp\n */\nexport interface RequestBroadcastInput {\n /**\n * @deprecated You should now specify the network in the constructor of the DAppClient\n */\n network?: Network;\n signedTransaction: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/RequestEncryptPayloadInput.d.ts",dts:"/**\n * @category DApp\n */\n"},{name:"@airgap/beacon-types/dist/esm/types/RequestOperationInput.d.ts",dts:"import { PartialTezosOperation } from './tezos/PartialTezosOperation';\n/**\n * @category DApp\n */\nexport interface RequestOperationInput {\n operationDetails: PartialTezosOperation[];\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/RequestPermissionInput.d.ts",dts:"import { Network, PermissionScope } from '..';\n/**\n * @category DApp\n */\nexport interface RequestPermissionInput {\n /**\n * @deprecated You should now specify the network in the constructor of the DAppClient\n */\n network?: Network;\n scopes?: PermissionScope[];\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/RequestProofOfEventChallengeInput.d.ts",dts:"/**\n * @category DApp\n */\nexport interface RequestProofOfEventChallengeInput {\n payload: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/RequestSignPayloadInput.d.ts",dts:"import { SigningType } from '..';\n/**\n * @category DApp\n */\nexport interface RequestSignPayloadInput {\n signingType?: SigningType;\n payload: string;\n sourceAddress?: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/RequestSimulatedProofOfEventChallengeInput.d.ts",dts:"/**\n * @category DApp\n */\nexport interface RequestSimulatedProofOfEventChallengeInput {\n /** A custom payload than should be emitted by the list of operations returned by the dapp*/\n payload: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/WalletConnectPairingRequest.d.ts",dts:"import { ExtendedPeerInfo, PeerInfo } from './PeerInfo';\n/**\n * @internalapi\n */\nexport declare class WalletConnectPairingRequest implements PeerInfo {\n readonly type: string;\n uri: string;\n id: string;\n name: string;\n icon?: string | undefined;\n appUrl?: string | undefined;\n publicKey: string;\n version: string;\n constructor(id: string, name: string, publicKey: string, version: string, uri: string, icon?: string, appUrl?: string);\n}\n/**\n * @internalapi\n */\nexport declare class ExtendedWalletConnectPairingRequest extends WalletConnectPairingRequest implements ExtendedPeerInfo {\n senderId: string;\n constructor(id: string, name: string, publicKey: string, version: string, senderId: string, uri: string, icon?: string, appUrl?: string);\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/WalletConnectPairingResponse.d.ts",dts:"import { PeerInfo } from './PeerInfo';\n/**\n * @internalapi\n */\nexport declare class WalletConnectPairingResponse implements PeerInfo {\n readonly type: string;\n id: string;\n name: string;\n icon?: string | undefined;\n appUrl?: string | undefined;\n publicKey: string;\n version: string;\n constructor(id: string, name: string, publicKey: string, version: string, icon?: string, appUrl?: string);\n}\n/**\n * @internalapi\n */\nexport declare class ExtendedWalletConnectPairingResponse extends WalletConnectPairingResponse {\n senderId: string;\n extensionId: string;\n constructor(id: string, name: string, publicKey: string, version: string, senderId: string, extensionId: string, icon?: string, appUrl?: string);\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/WalletInfo.d.ts",dts:"export interface WalletInfo {\n name: string;\n type?: 'extension' | 'mobile' | 'web' | 'desktop';\n icon?: string;\n deeplink?: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/types/ui.d.ts",dts:"import { NetworkType } from './beacon/NetworkType';\nexport interface AppBase {\n key: string;\n name: string;\n shortName: string;\n color: string;\n logo: string;\n supportedInteractionStandards?: ('wallet_connect' | 'beacon')[];\n}\nexport interface ExtensionApp extends AppBase {\n id: string;\n link: string;\n}\nexport interface WebApp extends AppBase {\n links: {\n [NetworkType.MAINNET]: string;\n [NetworkType.GHOSTNET]?: string;\n [NetworkType.WEEKLYNET]?: string;\n [NetworkType.DAILYNET]?: string;\n [NetworkType.DELPHINET]?: string;\n [NetworkType.EDONET]?: string;\n [NetworkType.FLORENCENET]?: string;\n [NetworkType.GRANADANET]?: string;\n [NetworkType.HANGZHOUNET]?: string;\n [NetworkType.ITHACANET]?: string;\n [NetworkType.JAKARTANET]?: string;\n [NetworkType.KATHMANDUNET]?: string;\n [NetworkType.LIMANET]?: string;\n [NetworkType.MUMBAINET]?: string;\n [NetworkType.NAIROBINET]?: string;\n [NetworkType.OXFORDNET]?: string;\n [NetworkType.PARISNET]?: string;\n [NetworkType.CUSTOM]?: string;\n };\n}\nexport interface DesktopApp extends AppBase {\n deepLink: string;\n downloadLink: string;\n}\nexport interface App extends AppBase {\n universalLink: string;\n deepLink?: string;\n}\n"},{name:"@airgap/beacon-types/dist/esm/index.d.ts",dts:"/**\n * General docs\n * @module public\n */\nimport { AppMetadata } from './types/beacon/AppMetadata';\nimport { PermissionRequest } from './types/beacon/messages/PermissionRequest';\nimport { ProofOfEventChallengeRequest } from './types/beacon/messages/ProofOfEventChallengeRequest';\nimport { ProofOfEventChallengeResponse } from './types/beacon/messages/ProofOfEventChallengeResponse';\nimport { SimulatedProofOfEventChallengeRequest } from './types/beacon/messages/SimulatedProofOfEventChallengeRequest';\nimport { SimulatedProofOfEventChallengeResponse } from './types/beacon/messages/SimulatedProofOfEventChallengeResponse';\nimport { Network } from './types/beacon/Network';\nimport { BeaconBaseMessage } from './types/beacon/BeaconBaseMessage';\nimport { BeaconMessageType } from './types/beacon/BeaconMessageType';\nimport { PermissionScope } from './types/beacon/PermissionScope';\nimport { PermissionResponse } from './types/beacon/messages/PermissionResponse';\nimport { OperationRequest } from './types/beacon/messages/OperationRequest';\nimport { OperationResponse } from './types/beacon/messages/OperationResponse';\nimport { SignPayloadRequest } from './types/beacon/messages/SignPayloadRequest';\nimport { SignPayloadResponse } from './types/beacon/messages/SignPayloadResponse';\nimport { BroadcastRequest } from './types/beacon/messages/BroadcastRequest';\nimport { BroadcastResponse } from './types/beacon/messages/BroadcastResponse';\nimport { NetworkType } from './types/beacon/NetworkType';\nimport { TezosBaseOperation } from './types/tezos/TezosBaseOperation';\nimport { TezosOperationType } from './types/tezos/OperationTypes';\nimport { TezosActivateAccountOperation } from './types/tezos/operations/ActivateAccount';\nimport { TezosBallotOperation } from './types/tezos/operations/Ballot';\nimport { TezosDelegationOperation } from './types/tezos/operations/Delegation';\nimport { TezosDoubleBakingEvidenceOperation } from './types/tezos/operations/DoubleBakingEvidence';\nimport { TezosBlockHeader } from './types/tezos/TezosBlockHeader';\nimport { TezosDoubleEndorsementEvidenceOperation } from './types/tezos/operations/DoubleEndorsementEvidence';\nimport { TezosEndorsementOperation } from './types/tezos/operations/Endorsement';\nimport { TezosOriginationOperation } from './types/tezos/operations/Origination';\nimport { TezosProposalOperation } from './types/tezos/operations/Proposal';\nimport { TezosRevealOperation } from './types/tezos/operations/Reveal';\nimport { TezosSeedNonceRevelationOperation } from './types/tezos/operations/SeedNonceRevelation';\nimport { TezosTransactionOperation } from './types/tezos/operations/Transaction';\nimport { MichelineMichelsonV1Expression } from './types/tezos/MichelineMichelsonV1Expression';\nimport { MichelsonPrimitives } from './types/tezos/MichelsonPrimitives';\nimport { TezosTransactionParameters } from './types/tezos/TezosTransactionParameters';\nimport { Origin } from './types/Origin';\nimport { AccountInfo, AccountIdentifier } from './types/AccountInfo';\nimport { EncryptedExtensionMessage, ExtensionMessage } from './types/ExtensionMessage';\nimport { ExtensionMessageTarget } from './types/ExtensionMessageTarget';\nimport { TezosOperation } from './types/tezos/TezosOperation';\nimport { BeaconErrorType } from './types/BeaconErrorType';\nimport { ErrorResponse } from './types/beacon/messages/ErrorResponse';\nimport { TransportStatus } from './types/transport/TransportStatus';\nimport { TransportType } from './types/transport/TransportType';\nimport { Storage } from './types/storage/Storage';\nimport { StorageKey } from './types/storage/StorageKey';\nimport { defaultValues, StorageKeyReturnDefaults } from './types/storage/StorageKeyReturnDefaults';\nimport { StorageKeyReturnType } from './types/storage/StorageKeyReturnType';\nimport { ExtendedP2PPairingRequest, P2PPairingRequest } from './types/P2PPairingRequest';\nimport { BeaconMessage } from './types/beacon/BeaconMessage';\nimport { RequestPermissionInput } from './types/RequestPermissionInput';\nimport { RequestProofOfEventChallengeInput } from './types/RequestProofOfEventChallengeInput';\nimport { RequestSimulatedProofOfEventChallengeInput } from './types/RequestSimulatedProofOfEventChallengeInput';\nimport { RequestSignPayloadInput } from './types/RequestSignPayloadInput';\nimport { RequestOperationInput } from './types/RequestOperationInput';\nimport { RequestBroadcastInput } from './types/RequestBroadcastInput';\nimport { PermissionResponseInput, SignPayloadResponseInput, OperationResponseInput, BroadcastResponseInput, BeaconResponseInputMessage, AcknowledgeResponseInput, ErrorResponseInput, IgnoredResponseInputProperties } from './types/beacon/messages/BeaconResponseInputMessage';\nimport { PermissionResponseOutput, SignPayloadResponseOutput, OperationResponseOutput, BroadcastResponseOutput, BeaconResponseOutputMessage, ProofOfEventChallengeResponseOutput, SimulatedProofOfEventChallengeResponseOutput } from './types/beacon/messages/BeaconResponseOutputMessage';\nimport { PermissionRequestInput, SignPayloadRequestInput, OperationRequestInput, BroadcastRequestInput, BeaconRequestInputMessage, IgnoredRequestInputProperties, ProofOfEventChallengeRequestInput, SimulatedProofOfEventChallengeRequestInput } from './types/beacon/messages/BeaconRequestInputMessage';\nimport { PermissionRequestOutput, SignPayloadRequestOutput, OperationRequestOutput, BroadcastRequestOutput, BeaconRequestOutputMessage, ProofOfEventChallengeRequestOutput, SimulatedProofOfEventChallengeRequestOutput } from './types/beacon/messages/BeaconRequestOutputMessage';\nimport { PermissionInfo } from './types/PermissionInfo';\nimport { ConnectionContext } from './types/ConnectionContext';\nimport { Threshold } from './types/beacon/Threshold';\nimport { PartialTezosTransactionOperation, PartialTezosOperation, PartialTezosDelegationOperation, PartialTezosOriginationOperation, PartialTezosRevealOperation, PartialTezosSmartRollupOriginateOperation, PartialTezosSmartRollupAddMessagesOperation, PartialTezosSmartRollupExecuteOutboxMessageOperation, PartialTezosSmartRollupPublishOperation, PartialTezosSmartRollupCementOperation, PartialTezosSmartRollupRecoverBondOperation, PartialTezosSmartRollupRefuteOperation, PartialTezosSmartRollupTimeoutOperation, PartialTezosDalPublishCommitmentOperation, PartialTezosIncreasePaidStorageOperation, PartialTezosRegisterGlobalConstantOperation, PartialTezosTransferTicketOperation, PartialTezosUpdateConsensusKeyOperation, PartialTezosSetDepositsLimitOperation } from './types/tezos/PartialTezosOperation';\nimport { ExtendedPeerInfo, PeerInfo, PeerInfoType } from './types/PeerInfo';\nimport { AcknowledgeResponse } from './types/beacon/messages/AcknowledgeResponse';\nimport { DisconnectMessage } from './types/beacon/messages/DisconnectMessage';\nimport { SigningType } from './types/beacon/SigningType';\nimport { ExtendedP2PPairingResponse, P2PPairingResponse } from './types/P2PPairingResponse';\nimport { ExtendedPostMessagePairingRequest, PostMessagePairingRequest } from './types/PostMessagePairingRequest';\nimport { ExtendedWalletConnectPairingResponse, WalletConnectPairingResponse } from './types/WalletConnectPairingResponse';\nimport { ExtendedWalletConnectPairingRequest, WalletConnectPairingRequest } from './types/WalletConnectPairingRequest';\nimport { ExtendedPostMessagePairingResponse, PostMessagePairingResponse } from './types/PostMessagePairingResponse';\nimport { BeaconRequestMessage } from './types/beacon/BeaconRequestMessage';\nimport { BeaconResponseMessage } from './types/beacon/BeaconResponseMessage';\nimport { ColorMode } from './types/ColorMode';\nimport { Optional } from './types/utils/Optional';\nimport { Extension } from './types/Extension';\nimport { PermissionEntity } from './types/PermissionEntity';\nimport { WalletInfo } from './types/WalletInfo';\nimport { ChangeAccountRequest } from './types/beacon/messages/ChangeAccountRequest';\nimport { TezosAttestationOperation } from './types/tezos/operations/Attestation';\nimport { TezosAttestationWithSlotOperation } from './types/tezos/operations/AttestationWithSlot';\nimport { TezosDoubleAttestationEvidenceOperation } from './types/tezos/operations/DoubleAttestationEvidence';\nimport { TezosDoublePreEndorsementEvidenceOperation } from './types/tezos/operations/DoublePreEndorsementEvidence';\nimport { TezosDrainDelegateOperation } from './types/tezos/operations/DrainDelegate';\nimport { TezosEndorsementWithSlotOperation } from './types/tezos/operations/EndorsementWithSlot';\nimport { TezosFailingNoopOperation } from './types/tezos/operations/FailingNoop';\nimport { TezosIncreasePaidStorageOperation } from './types/tezos/operations/IncreasePaidStorage';\nimport { TezosPreAttestationOperation } from './types/tezos/operations/PreAttestation';\nimport { TezosRegisterGlobalConstantOperation } from './types/tezos/operations/RegisterGlobalConstant';\nimport { TezosSetDepositsLimitOperation } from './types/tezos/operations/SetDepositsLimit';\nimport { TezosSmartRollupAddMessagesOperation } from './types/tezos/operations/SmartRollupAddMessages';\nimport { TezosSmartRollupExecuteOutboxMessageOperation } from './types/tezos/operations/SmartRollupExecuteOutboxMessage';\nimport { TezosSmartRollupPublishOperation } from './types/tezos/operations/SmartRollupPublish';\nimport { TezosSmartRollupRecoverBondOperation } from './types/tezos/operations/SmartRollupRecoverBond';\nimport { TezosSmartRollupRefuteOperation } from './types/tezos/operations/SmartRollupRefute';\nimport { TezosSmartRollupTimeoutOperation } from './types/tezos/operations/SmartRollupTimeout';\nimport { TezosTransferTicketOperation } from './types/tezos/operations/TransferTicket';\nimport { TezosUpdateConsensusKeyOperation } from './types/tezos/operations/UpdateConsensusKey';\nimport { TezosVdfRevelationOperation } from './types/tezos/operations/VdfRevelation';\nimport { TezosDoublePreAttestationEvidenceOperation } from './types/tezos/operations/DoublePreAttestationEvidence';\nimport { TezosSmartRollupCementOperation } from './types/tezos/operations/SmartRollupCement';\nimport { TezosSmartRollupOriginateOperation } from './types/tezos/operations/SmartRollupOriginate';\nimport { TezosDalPublishCommitmentOperation } from './types/tezos/operations/DalPublishCommitment';\nexport * from './types/AnalyticsInterface';\nexport * from './types/beaconV3/PermissionRequest';\nexport * from './types/ui';\nexport * from './types/Regions';\nexport { TezosBaseOperation, TezosOperationType, TezosBlockHeader, MichelineMichelsonV1Expression, MichelsonPrimitives, TezosTransactionParameters, TezosOperation };\nexport { TezosActivateAccountOperation, TezosBallotOperation, TezosDelegationOperation, TezosDoubleBakingEvidenceOperation, TezosDoubleEndorsementEvidenceOperation, TezosEndorsementOperation, TezosOriginationOperation, TezosProposalOperation, TezosRevealOperation, TezosSeedNonceRevelationOperation, TezosTransactionOperation, PartialTezosOperation, PartialTezosTransactionOperation, PartialTezosDelegationOperation, PartialTezosOriginationOperation, PartialTezosRevealOperation, PartialTezosSmartRollupOriginateOperation, PartialTezosSmartRollupAddMessagesOperation, PartialTezosSmartRollupExecuteOutboxMessageOperation, PartialTezosSmartRollupPublishOperation, PartialTezosSmartRollupCementOperation, PartialTezosSmartRollupRecoverBondOperation, PartialTezosSmartRollupRefuteOperation, PartialTezosSmartRollupTimeoutOperation, PartialTezosDalPublishCommitmentOperation, PartialTezosRegisterGlobalConstantOperation, PartialTezosTransferTicketOperation, PartialTezosIncreasePaidStorageOperation, PartialTezosUpdateConsensusKeyOperation, PartialTezosSetDepositsLimitOperation, TezosAttestationOperation, TezosPreAttestationOperation, TezosSetDepositsLimitOperation, TezosDoublePreAttestationEvidenceOperation, TezosDoublePreEndorsementEvidenceOperation, TezosAttestationWithSlotOperation, TezosEndorsementWithSlotOperation, TezosDoubleAttestationEvidenceOperation, TezosFailingNoopOperation, TezosRegisterGlobalConstantOperation, TezosTransferTicketOperation, TezosIncreasePaidStorageOperation, TezosUpdateConsensusKeyOperation, TezosDrainDelegateOperation, TezosVdfRevelationOperation, TezosSmartRollupOriginateOperation, TezosSmartRollupAddMessagesOperation, TezosSmartRollupExecuteOutboxMessageOperation, TezosSmartRollupPublishOperation, TezosSmartRollupCementOperation, TezosSmartRollupRecoverBondOperation, TezosSmartRollupRefuteOperation, TezosSmartRollupTimeoutOperation, TezosDalPublishCommitmentOperation };\nexport { AccountIdentifier, AppMetadata, Network, NetworkType, BeaconMessage, PermissionRequest, PermissionResponse, OperationRequest, OperationResponse, SignPayloadRequest, SignPayloadResponse, BroadcastRequest, BroadcastResponse, ChangeAccountRequest, AcknowledgeResponse, DisconnectMessage, BeaconBaseMessage, BeaconMessageType, PermissionScope, Origin, AccountInfo, Threshold, SigningType, ExtensionMessageTarget, ExtensionMessage, Extension, EncryptedExtensionMessage, RequestPermissionInput, RequestProofOfEventChallengeInput, RequestSimulatedProofOfEventChallengeInput, RequestSignPayloadInput, RequestOperationInput, RequestBroadcastInput, PermissionInfo, PermissionEntity, ProofOfEventChallengeRequest, ProofOfEventChallengeResponse, SimulatedProofOfEventChallengeRequest, SimulatedProofOfEventChallengeResponse };\nexport { PermissionResponseInput, SignPayloadResponseInput, OperationResponseInput, BroadcastResponseInput, AcknowledgeResponseInput, ErrorResponseInput, PermissionResponseOutput, ProofOfEventChallengeResponseOutput, SimulatedProofOfEventChallengeResponseOutput, SignPayloadResponseOutput, OperationResponseOutput, BroadcastResponseOutput, PermissionRequestInput, SignPayloadRequestInput, ProofOfEventChallengeRequestInput, SimulatedProofOfEventChallengeRequestInput, OperationRequestInput, BroadcastRequestInput, PermissionRequestOutput, SignPayloadRequestOutput, ProofOfEventChallengeRequestOutput, SimulatedProofOfEventChallengeRequestOutput, OperationRequestOutput, BroadcastRequestOutput, BeaconRequestInputMessage, BeaconRequestOutputMessage, BeaconResponseInputMessage, BeaconResponseOutputMessage, BeaconRequestMessage, BeaconResponseMessage };\nexport { BeaconErrorType, ErrorResponse };\nexport { TransportStatus, TransportType };\nexport { Storage, StorageKey, StorageKeyReturnDefaults, StorageKeyReturnType };\nexport { PeerInfo, ExtendedPeerInfo, PeerInfoType, PostMessagePairingRequest, PostMessagePairingResponse, ExtendedPostMessagePairingRequest, ExtendedPostMessagePairingResponse, P2PPairingRequest, P2PPairingResponse, ExtendedP2PPairingRequest, ExtendedP2PPairingResponse, WalletConnectPairingResponse, WalletConnectPairingRequest, ExtendedWalletConnectPairingRequest, ExtendedWalletConnectPairingResponse };\nexport { IgnoredResponseInputProperties, IgnoredRequestInputProperties, defaultValues };\nexport { ConnectionContext, ColorMode, WalletInfo };\nexport { PushToken } from './types/PushToken';\nexport { Optional };\n"},{name:"@airgap/beacon-ui/components/alert/index.d.ts",dts:"import { Component } from 'solid-js';\nexport interface AlertProps {\n content: any;\n open: boolean;\n showMore?: boolean;\n extraContent?: any;\n loading?: boolean;\n onCloseClick: () => void;\n onClickShowMore?: () => void;\n onBackClick?: () => void;\n}\ndeclare const Alert: Component;\nexport default Alert;\n"},{name:"@airgap/beacon-ui/components/bug-report-form/index.d.ts",dts:"import styles from './styles.css';\ndeclare const BugReportForm: (props: any) => import(\"solid-js\").JSX.Element;\nexport { styles };\nexport default BugReportForm;\n"},{name:"@airgap/beacon-ui/components/icons/index.d.ts",dts:"import { JSX } from 'solid-js/jsx-runtime';\ninterface IconProps {\n style?: JSX.CSSProperties | undefined;\n}\nexport declare function CloseIcon(props: IconProps): JSX.Element;\nexport declare function LeftIcon(props: IconProps): JSX.Element;\nexport declare function LogoIcon(props: IconProps): JSX.Element;\nexport declare function QRCodeIcon(): JSX.Element;\nexport {};\n"},{name:"@airgap/beacon-ui/components/info/index.d.ts",dts:"import { Component } from 'solid-js';\nimport styles from './styles.css';\ninterface InfoProps {\n title: string;\n description?: string;\n data?: string;\n icon?: any;\n border?: boolean;\n iconBadge?: boolean;\n bigIcon?: boolean;\n buttons?: {\n label: string;\n type: 'primary' | 'secondary';\n onClick: () => void;\n }[];\n downloadLink?: {\n url: string;\n label: string;\n };\n onShowQRCodeClick?: (() => void) | (() => Promise);\n}\ndeclare const Info: Component;\nexport { styles };\nexport default Info;\n"},{name:"@airgap/beacon-ui/components/loader/index.d.ts",dts:"import { Component } from 'solid-js';\nimport styles from './styles.css';\ninterface LoaderProps {\n}\ndeclare const Loader: Component;\nexport { styles };\nexport default Loader;\n"},{name:"@airgap/beacon-ui/components/pair-other/pair-other.d.ts",dts:"import { Component } from 'solid-js';\nimport { MergedWallet } from '../../utils/wallets';\nimport { P2PPairingRequest, WalletConnectPairingRequest } from '@airgap/beacon-types';\nimport styles from './styles.css';\nexport interface PairOtherProps {\n walletList: MergedWallet[];\n p2pPayload: Promise | undefined;\n wcPayload: Promise | undefined;\n onClickLearnMore: () => void;\n}\ndeclare const PairOther: Component;\nexport { styles };\nexport default PairOther;\n"},{name:"@airgap/beacon-ui/components/qr/index.d.ts",dts:"import { Component } from 'solid-js';\nimport styles from './styles.css';\ninterface QRProps {\n isWalletConnect: boolean;\n isMobile: boolean;\n walletName: string;\n code: string;\n onClickLearnMore?: () => void;\n onClickQrCode?: () => void;\n}\ndeclare const QR: Component;\nexport { styles };\nexport default QR;\n"},{name:"@airgap/beacon-ui/components/toast/index.d.ts",dts:"import { Component } from 'solid-js';\nexport interface ToastProps {\n label: string;\n open: boolean;\n onClickClose: () => void;\n actions?: {\n text: string;\n isBold?: boolean;\n actionText?: string;\n actionCallback?: () => void;\n }[];\n walletInfo?: {\n deeplink?: string;\n icon?: string;\n name: string;\n type?: string;\n };\n openWalletAction?: () => void;\n}\ndeclare const Toast: Component;\nexport default Toast;\n"},{name:"@airgap/beacon-ui/components/top-wallets/index.d.ts",dts:"import { Component } from 'solid-js';\nimport { MergedWallet } from '../../utils/wallets';\nimport styles from './styles.css';\ninterface TopWalletsProps {\n wallets: MergedWallet[];\n onClickWallet: (id: string) => void;\n onClickLearnMore: () => void;\n otherWallets?: {\n images: string[];\n onClick: () => void;\n };\n disabled?: boolean;\n isMobile: boolean;\n}\ndeclare const TopWallets: Component;\nexport { styles };\nexport default TopWallets;\n"},{name:"@airgap/beacon-ui/components/wallet/index.d.ts",dts:"import { Component } from 'solid-js';\nimport styles from './styles.css';\ninterface WalletProps {\n name: string;\n image: string;\n description?: string;\n small?: boolean;\n mobile?: boolean;\n onClick: () => void;\n tags?: string[];\n disabled?: boolean;\n}\ndeclare const Wallet: Component;\nexport { styles };\nexport default Wallet;\n"},{name:"@airgap/beacon-ui/components/wallets/index.d.ts",dts:"import { Component } from 'solid-js';\nimport { MergedWallet } from '../../utils/wallets';\nimport styles from './styles.css';\ninterface WalletProps {\n wallets: MergedWallet[];\n onClickWallet: (id: string) => void;\n onClickOther: () => void;\n isMobile: boolean;\n small?: boolean;\n disabled?: boolean;\n}\ndeclare const Wallets: Component;\nexport { styles };\nexport default Wallets;\n"},{name:"@airgap/beacon-ui/components/pairing.d.ts",dts:'import { DesktopApp, App, ExtensionApp, WebApp } from \'@airgap/beacon-types\';\nexport declare const getDesktopList: () => DesktopApp[];\nexport declare const setDesktopList: (desktopList: DesktopApp[]) => void;\nexport declare const getExtensionList: () => ExtensionApp[];\nexport declare const setExtensionList: (extensionList: ExtensionApp[]) => void;\nexport declare const getWebList: () => WebApp[];\nexport declare const setWebList: (webList: WebApp[]) => void;\nexport declare const getiOSList: () => App[];\nexport declare const setiOSList: (iosList: App[]) => void;\nexport declare enum Platform {\n DESKTOP = 0,\n IOS = 1,\n ANDROID = 2\n}\nexport declare enum WalletType {\n IOS = "ios",\n ANDROID = "android",\n EXTENSION = "extension",\n DESKTOP = "desktop",\n WEB = "web"\n}\nexport interface PairingAlertWallet {\n key: string;\n name: string;\n shortName?: string;\n color?: string;\n logo?: string;\n enabled: boolean;\n clickHandler(): void;\n}\nexport interface PairingAlertButton {\n title: string;\n text: string;\n clickHandler(): void;\n}\nexport interface PairingAlertList {\n title: string;\n type: WalletType;\n wallets: PairingAlertWallet[];\n}\nexport interface PairingAlertInfo {\n walletLists: PairingAlertList[];\n buttons: PairingAlertButton[];\n}\nexport type StatusUpdateHandler = (walletType: WalletType, app?: PairingAlertWallet, keepOpen?: boolean) => void;\n/**\n * @internalapi\n *\n */\nexport declare class Pairing {\n}\n'},{name:"@airgap/beacon-ui/ui/alert/alert-templates.d.ts",dts:"export declare const alertTemplates: {\n default: {\n css: string;\n };\n pair: {\n css: string;\n };\n};\n"},{name:"@airgap/beacon-ui/ui/alert/getDefautlLogo.d.ts",dts:"export default function getDefaultLogo(): string;\n"},{name:"@airgap/beacon-ui/ui/alert/index.d.ts",dts:"import { AnalyticsInterface, NetworkType, P2PPairingRequest, PostMessagePairingRequest, WalletConnectPairingRequest } from '@airgap/beacon-types';\nexport interface AlertButton {\n text: string;\n style?: 'solid' | 'outline';\n actionCallback?(): Promise;\n}\nexport interface AlertConfig {\n title: string;\n body?: string;\n data?: string;\n timer?: number;\n buttons?: AlertButton[];\n pairingPayload?: {\n p2pSyncCode: () => Promise;\n postmessageSyncCode: () => Promise;\n walletConnectSyncCode: () => Promise;\n networkType: NetworkType;\n };\n closeButtonCallback?(): void;\n disclaimerText?: string;\n analytics?: AnalyticsInterface;\n featuredWallets?: string[];\n}\n/**\n * Close an alert by ID\n *\n * @param id ID of alert\n */\ndeclare const closeAlert: (_: string) => Promise;\n/**\n * Close all alerts\n */\ndeclare const closeAlerts: () => Promise;\n/**\n * Show an alert\n *\n * @param alertConfig The configuration of the alert\n */\ndeclare const openAlert: (config: AlertConfig) => Promise;\nexport { closeAlert, closeAlerts, openAlert };\n"},{name:"@airgap/beacon-ui/ui/alert/wallet-lists.d.ts",dts:"import { App, DesktopApp, ExtensionApp, WebApp } from '@airgap/beacon-types';\nexport declare const extensionList: ExtensionApp[];\nexport declare const desktopList: DesktopApp[];\nexport declare const webList: WebApp[];\nexport declare const iOSList: App[];\n"},{name:"@airgap/beacon-ui/ui/toast/index.d.ts",dts:"import { WalletInfo } from '@airgap/beacon-types';\nexport interface ToastAction {\n text: string;\n isBold?: boolean;\n actionText?: string;\n actionLogo?: 'external';\n actionCallback?(): Promise;\n}\nexport interface ToastConfig {\n body: string;\n timer?: number;\n forceNew?: boolean;\n state: 'prepare' | 'loading' | 'acknowledge' | 'finished';\n actions?: ToastAction[];\n walletInfo?: WalletInfo;\n openWalletAction?(): Promise;\n}\n/**\n * Close a toast\n */\ndeclare const closeToast: () => Promise;\n/**\n * Create a new toast\n *\n * @param toastConfig Configuration of the toast\n */\ndeclare const openToast: (config: ToastConfig) => Promise;\nexport { closeToast, openToast };\n"},{name:"@airgap/beacon-ui/ui/toast/toast-templates.d.ts",dts:"export declare const toastTemplates: {\n default: {\n css: string;\n };\n};\n"},{name:"@airgap/beacon-ui/utils/colorMode.d.ts",dts:"import { ColorMode } from '@airgap/beacon-types';\nexport declare const setColorMode: (mode: ColorMode) => void;\nexport declare const getColorMode: () => ColorMode;\n"},{name:"@airgap/beacon-ui/utils/get-tzip10-link.d.ts",dts:"export declare const getTzip10Link: (url: string, payload: string) => string;\n"},{name:"@airgap/beacon-ui/utils/platform.d.ts",dts:"export declare const testUserAgent: (win: Window, expr: RegExp) => boolean;\nexport declare const isMobile: (win: Window) => boolean;\nexport declare const isBrowser: (win: Window) => boolean;\nexport declare const isPrivacyBrowser: (win: Window) => boolean;\nexport declare const isIOS: (win: Window) => boolean;\nexport declare const isAndroid: (win: Window) => boolean;\nexport declare const isTwBrowser: (win: Window) => boolean;\nexport declare const isDesktop: (win: Window) => boolean;\nexport declare const isMobileOS: (win: Window) => boolean;\nexport declare const currentOS: () => string;\nexport declare const currentBrowser: () => string;\n"},{name:"@airgap/beacon-ui/utils/qr.d.ts",dts:"/**\n * Convert data to a QR code\n *\n * @param payload The data to be encoded as a QR code\n * @param type How the QR code will be encoded\n */\nexport declare const getQrData: (payload: string, height?: number, width?: number) => string;\n"},{name:"@airgap/beacon-ui/utils/wallets.d.ts",dts:"export interface Wallet {\n id: string;\n key: string;\n name: string;\n image: string;\n description: string;\n type: string;\n link: string;\n supportedInteractionStandards?: ('wallet_connect' | 'beacon')[];\n deepLink?: string;\n}\nexport interface MergedWallet {\n id: string;\n firefoxId?: string;\n key: string;\n name: string;\n image: string;\n descriptions: string[];\n types: string[];\n links: string[];\n supportedInteractionStandards?: ('wallet_connect' | 'beacon')[];\n tags?: string[];\n deepLink?: string;\n}\nexport declare enum OSLink {\n WEB = 0,\n IOS = 1,\n DESKTOP = 2,\n EXTENSION = 3\n}\nexport declare function parseWallets(wallets: Wallet[]): Wallet[];\nexport declare function arrangeTopWallets(arr: MergedWallet[], walletIds: string[]): MergedWallet[];\nexport declare function mergeWallets(wallets: Wallet[]): MergedWallet[];\n"},{name:"@airgap/beacon-ui/index.d.ts",dts:"export { openAlert, closeAlerts } from './ui/alert';\nexport type { AlertButton, AlertConfig } from './ui/alert';\nexport { Pairing, setDesktopList, setExtensionList, setWebList, setiOSList, getDesktopList, getExtensionList, getWebList, getiOSList } from './components/pairing';\nexport { closeToast, openToast } from './ui/toast';\nexport type { ToastAction } from './ui/toast';\nexport { getColorMode, setColorMode } from './utils/colorMode';\nexport { isMobile, isMobileOS, isBrowser, isDesktop, isAndroid, isIOS, currentBrowser, currentOS } from './utils/platform';\n"},{name:"@airgap/beacon-ui/dist/esm/components/alert/index.d.ts",dts:"import { Component } from 'solid-js';\nexport interface AlertProps {\n content: any;\n open: boolean;\n showMore?: boolean;\n extraContent?: any;\n loading?: boolean;\n onCloseClick: () => void;\n onClickShowMore?: () => void;\n onBackClick?: () => void;\n}\ndeclare const Alert: Component;\nexport default Alert;\n"},{name:"@airgap/beacon-ui/dist/esm/components/bug-report-form/index.d.ts",dts:"import styles from './styles.css';\ndeclare const BugReportForm: (props: any) => import(\"solid-js\").JSX.Element;\nexport { styles };\nexport default BugReportForm;\n"},{name:"@airgap/beacon-ui/dist/esm/components/icons/index.d.ts",dts:"import { JSX } from 'solid-js/jsx-runtime';\ninterface IconProps {\n style?: JSX.CSSProperties | undefined;\n}\nexport declare function CloseIcon(props: IconProps): JSX.Element;\nexport declare function LeftIcon(props: IconProps): JSX.Element;\nexport declare function LogoIcon(props: IconProps): JSX.Element;\nexport declare function QRCodeIcon(): JSX.Element;\nexport {};\n"},{name:"@airgap/beacon-ui/dist/esm/components/info/index.d.ts",dts:"import { Component } from 'solid-js';\nimport styles from './styles.css';\ninterface InfoProps {\n title: string;\n description?: string;\n data?: string;\n icon?: any;\n border?: boolean;\n iconBadge?: boolean;\n bigIcon?: boolean;\n buttons?: {\n label: string;\n type: 'primary' | 'secondary';\n onClick: () => void;\n }[];\n downloadLink?: {\n url: string;\n label: string;\n };\n onShowQRCodeClick?: (() => void) | (() => Promise);\n}\ndeclare const Info: Component;\nexport { styles };\nexport default Info;\n"},{name:"@airgap/beacon-ui/dist/esm/components/loader/index.d.ts",dts:"import { Component } from 'solid-js';\nimport styles from './styles.css';\ninterface LoaderProps {\n}\ndeclare const Loader: Component;\nexport { styles };\nexport default Loader;\n"},{name:"@airgap/beacon-ui/dist/esm/components/pair-other/pair-other.d.ts",dts:"import { Component } from 'solid-js';\nimport { MergedWallet } from '../../utils/wallets';\nimport { P2PPairingRequest, WalletConnectPairingRequest } from '@airgap/beacon-types';\nimport styles from './styles.css';\nexport interface PairOtherProps {\n walletList: MergedWallet[];\n p2pPayload: Promise | undefined;\n wcPayload: Promise | undefined;\n onClickLearnMore: () => void;\n}\ndeclare const PairOther: Component;\nexport { styles };\nexport default PairOther;\n"},{name:"@airgap/beacon-ui/dist/esm/components/qr/index.d.ts",dts:"import { Component } from 'solid-js';\nimport styles from './styles.css';\ninterface QRProps {\n isWalletConnect: boolean;\n isMobile: boolean;\n walletName: string;\n code: string;\n onClickLearnMore?: () => void;\n onClickQrCode?: () => void;\n}\ndeclare const QR: Component;\nexport { styles };\nexport default QR;\n"},{name:"@airgap/beacon-ui/dist/esm/components/toast/index.d.ts",dts:"import { Component } from 'solid-js';\nexport interface ToastProps {\n label: string;\n open: boolean;\n onClickClose: () => void;\n actions?: {\n text: string;\n isBold?: boolean;\n actionText?: string;\n actionCallback?: () => void;\n }[];\n walletInfo?: {\n deeplink?: string;\n icon?: string;\n name: string;\n type?: string;\n };\n openWalletAction?: () => void;\n}\ndeclare const Toast: Component;\nexport default Toast;\n"},{name:"@airgap/beacon-ui/dist/esm/components/top-wallets/index.d.ts",dts:"import { Component } from 'solid-js';\nimport { MergedWallet } from '../../utils/wallets';\nimport styles from './styles.css';\ninterface TopWalletsProps {\n wallets: MergedWallet[];\n onClickWallet: (id: string) => void;\n onClickLearnMore: () => void;\n otherWallets?: {\n images: string[];\n onClick: () => void;\n };\n disabled?: boolean;\n isMobile: boolean;\n}\ndeclare const TopWallets: Component;\nexport { styles };\nexport default TopWallets;\n"},{name:"@airgap/beacon-ui/dist/esm/components/wallet/index.d.ts",dts:"import { Component } from 'solid-js';\nimport styles from './styles.css';\ninterface WalletProps {\n name: string;\n image: string;\n description?: string;\n small?: boolean;\n mobile?: boolean;\n onClick: () => void;\n tags?: string[];\n disabled?: boolean;\n}\ndeclare const Wallet: Component;\nexport { styles };\nexport default Wallet;\n"},{name:"@airgap/beacon-ui/dist/esm/components/wallets/index.d.ts",dts:"import { Component } from 'solid-js';\nimport { MergedWallet } from '../../utils/wallets';\nimport styles from './styles.css';\ninterface WalletProps {\n wallets: MergedWallet[];\n onClickWallet: (id: string) => void;\n onClickOther: () => void;\n isMobile: boolean;\n small?: boolean;\n disabled?: boolean;\n}\ndeclare const Wallets: Component;\nexport { styles };\nexport default Wallets;\n"},{name:"@airgap/beacon-ui/dist/esm/components/pairing.d.ts",dts:'import { DesktopApp, App, ExtensionApp, WebApp } from \'@airgap/beacon-types\';\nexport declare const getDesktopList: () => DesktopApp[];\nexport declare const setDesktopList: (desktopList: DesktopApp[]) => void;\nexport declare const getExtensionList: () => ExtensionApp[];\nexport declare const setExtensionList: (extensionList: ExtensionApp[]) => void;\nexport declare const getWebList: () => WebApp[];\nexport declare const setWebList: (webList: WebApp[]) => void;\nexport declare const getiOSList: () => App[];\nexport declare const setiOSList: (iosList: App[]) => void;\nexport declare enum Platform {\n DESKTOP = 0,\n IOS = 1,\n ANDROID = 2\n}\nexport declare enum WalletType {\n IOS = "ios",\n ANDROID = "android",\n EXTENSION = "extension",\n DESKTOP = "desktop",\n WEB = "web"\n}\nexport interface PairingAlertWallet {\n key: string;\n name: string;\n shortName?: string;\n color?: string;\n logo?: string;\n enabled: boolean;\n clickHandler(): void;\n}\nexport interface PairingAlertButton {\n title: string;\n text: string;\n clickHandler(): void;\n}\nexport interface PairingAlertList {\n title: string;\n type: WalletType;\n wallets: PairingAlertWallet[];\n}\nexport interface PairingAlertInfo {\n walletLists: PairingAlertList[];\n buttons: PairingAlertButton[];\n}\nexport type StatusUpdateHandler = (walletType: WalletType, app?: PairingAlertWallet, keepOpen?: boolean) => void;\n/**\n * @internalapi\n *\n */\nexport declare class Pairing {\n}\n'},{name:"@airgap/beacon-ui/dist/esm/ui/alert/alert-templates.d.ts",dts:"export declare const alertTemplates: {\n default: {\n css: string;\n };\n pair: {\n css: string;\n };\n};\n"},{name:"@airgap/beacon-ui/dist/esm/ui/alert/getDefautlLogo.d.ts",dts:"export default function getDefaultLogo(): string;\n"},{name:"@airgap/beacon-ui/dist/esm/ui/alert/index.d.ts",dts:"import { AnalyticsInterface, NetworkType, P2PPairingRequest, PostMessagePairingRequest, WalletConnectPairingRequest } from '@airgap/beacon-types';\nexport interface AlertButton {\n text: string;\n style?: 'solid' | 'outline';\n actionCallback?(): Promise;\n}\nexport interface AlertConfig {\n title: string;\n body?: string;\n data?: string;\n timer?: number;\n buttons?: AlertButton[];\n pairingPayload?: {\n p2pSyncCode: () => Promise;\n postmessageSyncCode: () => Promise;\n walletConnectSyncCode: () => Promise;\n networkType: NetworkType;\n };\n closeButtonCallback?(): void;\n disclaimerText?: string;\n analytics?: AnalyticsInterface;\n featuredWallets?: string[];\n}\n/**\n * Close an alert by ID\n *\n * @param id ID of alert\n */\ndeclare const closeAlert: (_: string) => Promise;\n/**\n * Close all alerts\n */\ndeclare const closeAlerts: () => Promise;\n/**\n * Show an alert\n *\n * @param alertConfig The configuration of the alert\n */\ndeclare const openAlert: (config: AlertConfig) => Promise;\nexport { closeAlert, closeAlerts, openAlert };\n"},{name:"@airgap/beacon-ui/dist/esm/ui/alert/wallet-lists.d.ts",dts:"import { App, DesktopApp, ExtensionApp, WebApp } from '@airgap/beacon-types';\nexport declare const extensionList: ExtensionApp[];\nexport declare const desktopList: DesktopApp[];\nexport declare const webList: WebApp[];\nexport declare const iOSList: App[];\n"},{name:"@airgap/beacon-ui/dist/esm/ui/toast/index.d.ts",dts:"import { WalletInfo } from '@airgap/beacon-types';\nexport interface ToastAction {\n text: string;\n isBold?: boolean;\n actionText?: string;\n actionLogo?: 'external';\n actionCallback?(): Promise;\n}\nexport interface ToastConfig {\n body: string;\n timer?: number;\n forceNew?: boolean;\n state: 'prepare' | 'loading' | 'acknowledge' | 'finished';\n actions?: ToastAction[];\n walletInfo?: WalletInfo;\n openWalletAction?(): Promise;\n}\n/**\n * Close a toast\n */\ndeclare const closeToast: () => Promise;\n/**\n * Create a new toast\n *\n * @param toastConfig Configuration of the toast\n */\ndeclare const openToast: (config: ToastConfig) => Promise;\nexport { closeToast, openToast };\n"},{name:"@airgap/beacon-ui/dist/esm/ui/toast/toast-templates.d.ts",dts:"export declare const toastTemplates: {\n default: {\n css: string;\n };\n};\n"},{name:"@airgap/beacon-ui/dist/esm/utils/colorMode.d.ts",dts:"import { ColorMode } from '@airgap/beacon-types';\nexport declare const setColorMode: (mode: ColorMode) => void;\nexport declare const getColorMode: () => ColorMode;\n"},{name:"@airgap/beacon-ui/dist/esm/utils/get-tzip10-link.d.ts",dts:"export declare const getTzip10Link: (url: string, payload: string) => string;\n"},{name:"@airgap/beacon-ui/dist/esm/utils/platform.d.ts",dts:"export declare const testUserAgent: (win: Window, expr: RegExp) => boolean;\nexport declare const isMobile: (win: Window) => boolean;\nexport declare const isBrowser: (win: Window) => boolean;\nexport declare const isPrivacyBrowser: (win: Window) => boolean;\nexport declare const isIOS: (win: Window) => boolean;\nexport declare const isAndroid: (win: Window) => boolean;\nexport declare const isTwBrowser: (win: Window) => boolean;\nexport declare const isDesktop: (win: Window) => boolean;\nexport declare const isMobileOS: (win: Window) => boolean;\nexport declare const currentOS: () => string;\nexport declare const currentBrowser: () => string;\n"},{name:"@airgap/beacon-ui/dist/esm/utils/qr.d.ts",dts:"/**\n * Convert data to a QR code\n *\n * @param payload The data to be encoded as a QR code\n * @param type How the QR code will be encoded\n */\nexport declare const getQrData: (payload: string, height?: number, width?: number) => string;\n"},{name:"@airgap/beacon-ui/dist/esm/utils/wallets.d.ts",dts:"export interface Wallet {\n id: string;\n key: string;\n name: string;\n image: string;\n description: string;\n type: string;\n link: string;\n supportedInteractionStandards?: ('wallet_connect' | 'beacon')[];\n deepLink?: string;\n}\nexport interface MergedWallet {\n id: string;\n firefoxId?: string;\n key: string;\n name: string;\n image: string;\n descriptions: string[];\n types: string[];\n links: string[];\n supportedInteractionStandards?: ('wallet_connect' | 'beacon')[];\n tags?: string[];\n deepLink?: string;\n}\nexport declare enum OSLink {\n WEB = 0,\n IOS = 1,\n DESKTOP = 2,\n EXTENSION = 3\n}\nexport declare function parseWallets(wallets: Wallet[]): Wallet[];\nexport declare function arrangeTopWallets(arr: MergedWallet[], walletIds: string[]): MergedWallet[];\nexport declare function mergeWallets(wallets: Wallet[]): MergedWallet[];\n"},{name:"@airgap/beacon-ui/dist/esm/index.d.ts",dts:"export { openAlert, closeAlerts } from './ui/alert';\nexport type { AlertButton, AlertConfig } from './ui/alert';\nexport { Pairing, setDesktopList, setExtensionList, setWebList, setiOSList, getDesktopList, getExtensionList, getWebList, getiOSList } from './components/pairing';\nexport { closeToast, openToast } from './ui/toast';\nexport type { ToastAction } from './ui/toast';\nexport { getColorMode, setColorMode } from './utils/colorMode';\nexport { isMobile, isMobileOS, isBrowser, isDesktop, isAndroid, isIOS, currentBrowser, currentOS } from './utils/platform';\n"},{name:"@airgap/beacon-ui/dist/index/components/alert/index.d.ts",dts:"import { Component } from 'solid-js';\nexport interface AlertProps {\n content: any;\n open: boolean;\n showMore?: boolean;\n extraContent?: any;\n loading?: boolean;\n onCloseClick: () => void;\n onClickShowMore?: () => void;\n onBackClick?: () => void;\n}\ndeclare const Alert: Component;\nexport default Alert;\n"},{name:"@airgap/beacon-ui/dist/index/components/bug-report-form/index.d.ts",dts:"import styles from './styles.css';\ndeclare const BugReportForm: (props: any) => import(\"solid-js\").JSX.Element;\nexport { styles };\nexport default BugReportForm;\n"},{name:"@airgap/beacon-ui/dist/index/components/icons/index.d.ts",dts:"import { JSX } from 'solid-js/jsx-runtime';\ninterface IconProps {\n style?: JSX.CSSProperties | undefined;\n}\nexport declare function CloseIcon(props: IconProps): JSX.Element;\nexport declare function LeftIcon(props: IconProps): JSX.Element;\nexport declare function LogoIcon(props: IconProps): JSX.Element;\nexport declare function QRCodeIcon(): JSX.Element;\nexport {};\n"},{name:"@airgap/beacon-ui/dist/index/components/info/index.d.ts",dts:"import { Component } from 'solid-js';\nimport styles from './styles.css';\ninterface InfoProps {\n title: string;\n description?: string;\n data?: string;\n icon?: any;\n border?: boolean;\n iconBadge?: boolean;\n bigIcon?: boolean;\n buttons?: {\n label: string;\n type: 'primary' | 'secondary';\n onClick: () => void;\n }[];\n downloadLink?: {\n url: string;\n label: string;\n };\n onShowQRCodeClick?: (() => void) | (() => Promise);\n}\ndeclare const Info: Component;\nexport { styles };\nexport default Info;\n"},{name:"@airgap/beacon-ui/dist/index/components/loader/index.d.ts",dts:"import { Component } from 'solid-js';\nimport styles from './styles.css';\ninterface LoaderProps {\n}\ndeclare const Loader: Component;\nexport { styles };\nexport default Loader;\n"},{name:"@airgap/beacon-ui/dist/index/components/pair-other/pair-other.d.ts",dts:"import { Component } from 'solid-js';\nimport { MergedWallet } from '../../utils/wallets';\nimport { P2PPairingRequest, WalletConnectPairingRequest } from '@airgap/beacon-types';\nimport styles from './styles.css';\nexport interface PairOtherProps {\n walletList: MergedWallet[];\n p2pPayload: Promise | undefined;\n wcPayload: Promise | undefined;\n onClickLearnMore: () => void;\n}\ndeclare const PairOther: Component;\nexport { styles };\nexport default PairOther;\n"},{name:"@airgap/beacon-ui/dist/index/components/qr/index.d.ts",dts:"import { Component } from 'solid-js';\nimport styles from './styles.css';\ninterface QRProps {\n isWalletConnect: boolean;\n isMobile: boolean;\n walletName: string;\n code: string;\n onClickLearnMore?: () => void;\n onClickQrCode?: () => void;\n}\ndeclare const QR: Component;\nexport { styles };\nexport default QR;\n"},{name:"@airgap/beacon-ui/dist/index/components/toast/index.d.ts",dts:"import { Component } from 'solid-js';\nexport interface ToastProps {\n label: string;\n open: boolean;\n onClickClose: () => void;\n actions?: {\n text: string;\n isBold?: boolean;\n actionText?: string;\n actionCallback?: () => void;\n }[];\n walletInfo?: {\n deeplink?: string;\n icon?: string;\n name: string;\n type?: string;\n };\n openWalletAction?: () => void;\n}\ndeclare const Toast: Component;\nexport default Toast;\n"},{name:"@airgap/beacon-ui/dist/index/components/top-wallets/index.d.ts",dts:"import { Component } from 'solid-js';\nimport { MergedWallet } from '../../utils/wallets';\nimport styles from './styles.css';\ninterface TopWalletsProps {\n wallets: MergedWallet[];\n onClickWallet: (id: string) => void;\n onClickLearnMore: () => void;\n otherWallets?: {\n images: string[];\n onClick: () => void;\n };\n disabled?: boolean;\n isMobile: boolean;\n}\ndeclare const TopWallets: Component;\nexport { styles };\nexport default TopWallets;\n"},{name:"@airgap/beacon-ui/dist/index/components/wallet/index.d.ts",dts:"import { Component } from 'solid-js';\nimport styles from './styles.css';\ninterface WalletProps {\n name: string;\n image: string;\n description?: string;\n small?: boolean;\n mobile?: boolean;\n onClick: () => void;\n tags?: string[];\n disabled?: boolean;\n}\ndeclare const Wallet: Component;\nexport { styles };\nexport default Wallet;\n"},{name:"@airgap/beacon-ui/dist/index/components/wallets/index.d.ts",dts:"import { Component } from 'solid-js';\nimport { MergedWallet } from '../../utils/wallets';\nimport styles from './styles.css';\ninterface WalletProps {\n wallets: MergedWallet[];\n onClickWallet: (id: string) => void;\n onClickOther: () => void;\n isMobile: boolean;\n small?: boolean;\n disabled?: boolean;\n}\ndeclare const Wallets: Component;\nexport { styles };\nexport default Wallets;\n"},{name:"@airgap/beacon-ui/dist/index/components/pairing.d.ts",dts:'import { DesktopApp, App, ExtensionApp, WebApp } from \'@airgap/beacon-types\';\nexport declare const getDesktopList: () => DesktopApp[];\nexport declare const setDesktopList: (desktopList: DesktopApp[]) => void;\nexport declare const getExtensionList: () => ExtensionApp[];\nexport declare const setExtensionList: (extensionList: ExtensionApp[]) => void;\nexport declare const getWebList: () => WebApp[];\nexport declare const setWebList: (webList: WebApp[]) => void;\nexport declare const getiOSList: () => App[];\nexport declare const setiOSList: (iosList: App[]) => void;\nexport declare enum Platform {\n DESKTOP = 0,\n IOS = 1,\n ANDROID = 2\n}\nexport declare enum WalletType {\n IOS = "ios",\n ANDROID = "android",\n EXTENSION = "extension",\n DESKTOP = "desktop",\n WEB = "web"\n}\nexport interface PairingAlertWallet {\n key: string;\n name: string;\n shortName?: string;\n color?: string;\n logo?: string;\n enabled: boolean;\n clickHandler(): void;\n}\nexport interface PairingAlertButton {\n title: string;\n text: string;\n clickHandler(): void;\n}\nexport interface PairingAlertList {\n title: string;\n type: WalletType;\n wallets: PairingAlertWallet[];\n}\nexport interface PairingAlertInfo {\n walletLists: PairingAlertList[];\n buttons: PairingAlertButton[];\n}\nexport type StatusUpdateHandler = (walletType: WalletType, app?: PairingAlertWallet, keepOpen?: boolean) => void;\n/**\n * @internalapi\n *\n */\nexport declare class Pairing {\n}\n'},{name:"@airgap/beacon-ui/dist/index/ui/alert/getDefautlLogo.d.ts",dts:"export default function getDefaultLogo(): string;\n"},{name:"@airgap/beacon-ui/dist/index/ui/alert/index.d.ts",dts:"import { AnalyticsInterface, NetworkType, P2PPairingRequest, PostMessagePairingRequest, WalletConnectPairingRequest } from '@airgap/beacon-types';\nexport interface AlertButton {\n text: string;\n style?: 'solid' | 'outline';\n actionCallback?(): Promise;\n}\nexport interface AlertConfig {\n title: string;\n body?: string;\n data?: string;\n timer?: number;\n buttons?: AlertButton[];\n pairingPayload?: {\n p2pSyncCode: () => Promise;\n postmessageSyncCode: () => Promise;\n walletConnectSyncCode: () => Promise;\n networkType: NetworkType;\n };\n closeButtonCallback?(): void;\n disclaimerText?: string;\n analytics?: AnalyticsInterface;\n featuredWallets?: string[];\n}\n/**\n * Close an alert by ID\n *\n * @param id ID of alert\n */\ndeclare const closeAlert: (_: string) => Promise;\n/**\n * Close all alerts\n */\ndeclare const closeAlerts: () => Promise;\n/**\n * Show an alert\n *\n * @param alertConfig The configuration of the alert\n */\ndeclare const openAlert: (config: AlertConfig) => Promise;\nexport { closeAlert, closeAlerts, openAlert };\n"},{name:"@airgap/beacon-ui/dist/index/ui/alert/wallet-lists.d.ts",dts:"import { App, DesktopApp, ExtensionApp, WebApp } from '@airgap/beacon-types';\nexport declare const extensionList: ExtensionApp[];\nexport declare const desktopList: DesktopApp[];\nexport declare const webList: WebApp[];\nexport declare const iOSList: App[];\n"},{name:"@airgap/beacon-ui/dist/index/ui/toast/index.d.ts",dts:"import { WalletInfo } from '@airgap/beacon-types';\nexport interface ToastAction {\n text: string;\n isBold?: boolean;\n actionText?: string;\n actionLogo?: 'external';\n actionCallback?(): Promise;\n}\nexport interface ToastConfig {\n body: string;\n timer?: number;\n forceNew?: boolean;\n state: 'prepare' | 'loading' | 'acknowledge' | 'finished';\n actions?: ToastAction[];\n walletInfo?: WalletInfo;\n openWalletAction?(): Promise;\n}\n/**\n * Close a toast\n */\ndeclare const closeToast: () => Promise;\n/**\n * Create a new toast\n *\n * @param toastConfig Configuration of the toast\n */\ndeclare const openToast: (config: ToastConfig) => Promise;\nexport { closeToast, openToast };\n"},{name:"@airgap/beacon-ui/dist/index/utils/colorMode.d.ts",dts:"import { ColorMode } from '@airgap/beacon-types';\nexport declare const setColorMode: (mode: ColorMode) => void;\nexport declare const getColorMode: () => ColorMode;\n"},{name:"@airgap/beacon-ui/dist/index/utils/get-tzip10-link.d.ts",dts:"export declare const getTzip10Link: (url: string, payload: string) => string;\n"},{name:"@airgap/beacon-ui/dist/index/utils/platform.d.ts",dts:"export declare const testUserAgent: (win: Window, expr: RegExp) => boolean;\nexport declare const isMobile: (win: Window) => boolean;\nexport declare const isBrowser: (win: Window) => boolean;\nexport declare const isPrivacyBrowser: (win: Window) => boolean;\nexport declare const isIOS: (win: Window) => boolean;\nexport declare const isAndroid: (win: Window) => boolean;\nexport declare const isTwBrowser: (win: Window) => boolean;\nexport declare const isDesktop: (win: Window) => boolean;\nexport declare const isMobileOS: (win: Window) => boolean;\nexport declare const currentOS: () => string;\nexport declare const currentBrowser: () => string;\n"},{name:"@airgap/beacon-ui/dist/index/utils/qr.d.ts",dts:"/**\n * Convert data to a QR code\n *\n * @param payload The data to be encoded as a QR code\n * @param type How the QR code will be encoded\n */\nexport declare const getQrData: (payload: string, height?: number, width?: number) => string;\n"},{name:"@airgap/beacon-ui/dist/index/utils/wallets.d.ts",dts:"export interface Wallet {\n id: string;\n key: string;\n name: string;\n image: string;\n description: string;\n type: string;\n link: string;\n supportedInteractionStandards?: ('wallet_connect' | 'beacon')[];\n deepLink?: string;\n}\nexport interface MergedWallet {\n id: string;\n firefoxId?: string;\n key: string;\n name: string;\n image: string;\n descriptions: string[];\n types: string[];\n links: string[];\n supportedInteractionStandards?: ('wallet_connect' | 'beacon')[];\n tags?: string[];\n deepLink?: string;\n}\nexport declare enum OSLink {\n WEB = 0,\n IOS = 1,\n DESKTOP = 2,\n EXTENSION = 3\n}\nexport declare function parseWallets(wallets: Wallet[]): Wallet[];\nexport declare function arrangeTopWallets(arr: MergedWallet[], walletIds: string[]): MergedWallet[];\nexport declare function mergeWallets(wallets: Wallet[]): MergedWallet[];\n"},{name:"@airgap/beacon-ui/dist/index/index.d.ts",dts:"export { openAlert, closeAlerts } from './ui/alert';\nexport type { AlertButton, AlertConfig } from './ui/alert';\nexport { Pairing, setDesktopList, setExtensionList, setWebList, setiOSList, getDesktopList, getExtensionList, getWebList, getiOSList } from './components/pairing';\nexport { closeToast, openToast } from './ui/toast';\nexport type { ToastAction } from './ui/toast';\nexport { getColorMode, setColorMode } from './utils/colorMode';\nexport { isMobile, isMobileOS, isBrowser, isDesktop, isAndroid, isIOS, currentBrowser, currentOS } from './utils/platform';\n"},{name:"@airgap/beacon-utils/utils/crypto.d.ts",dts:"/// \nimport { KeyPair } from '@stablelib/ed25519';\nexport declare const secretbox_NONCEBYTES = 24;\nexport declare const secretbox_MACBYTES = 16;\n/**\n * Convert a value to hex\n *\n * @param value\n */\nexport declare function toHex(value: any): string;\n/**\n * Get the hex hash of a value\n *\n * @param key\n */\nexport declare function getHexHash(key: string | Buffer | Uint8Array): Promise;\n/**\n * Get a keypair from a seed\n *\n * @param seed\n */\nexport declare function getKeypairFromSeed(seed: string): Promise;\n/**\n * Encrypt a message with a shared key\n *\n * @param message\n * @param sharedKey\n */\nexport declare function encryptCryptoboxPayload(message: string, sharedKey: Uint8Array): Promise;\n/**\n * Decrypt a message with a shared key\n *\n * @param payload\n * @param sharedKey\n */\nexport declare function decryptCryptoboxPayload(payload: Uint8Array, sharedKey: Uint8Array): Promise;\n/**\n * Encrypt a message with a public key\n *\n * @param payload\n * @param publicKey\n */\nexport declare function sealCryptobox(payload: string | Buffer, otherPublicKey: Uint8Array): Promise;\n/**\n * Decrypt a message with public + private key\n *\n * @param encryptedPayload\n * @param publicKey\n * @param privateKey\n */\nexport declare function openCryptobox(encryptedPayload: string | Buffer, publicKey: Uint8Array, privateKey: Uint8Array): Promise;\n/**\n * Get an address from the public key\n *\n * @param publicKey\n */\nexport declare function getAddressFromPublicKey(publicKey: string): Promise;\n/**\n * Prefix the public key if it's not prefixed\n *\n * @param publicKey\n */\nexport declare function prefixPublicKey(publicKey: string): string;\n/**\n * Get the recipient string used in the matrix message\n *\n * @param recipientHash\n * @param relayServer\n */\nexport declare function recipientString(recipientHash: string, relayServer: string): string;\nexport declare const signMessage: (message: string, keypair: {\n secretKey: Buffer;\n}) => Promise;\nexport declare const isValidAddress: (address: string) => boolean;\nexport declare function encodePoeChallengePayload(payload: string): string;\n"},{name:"@airgap/beacon-utils/utils/exposed-promise.d.ts",dts:'export declare enum ExposedPromiseStatus {\n PENDING = "pending",\n RESOLVED = "resolved",\n REJECTED = "rejected"\n}\ntype Resolve = (value: T) => void;\ntype Reject = (reason?: U) => void;\n/**\n * Exposed promise allow you to create a promise and then resolve it later, from the outside\n */\nexport declare class ExposedPromise {\n private readonly _promise;\n private _resolve;\n private _reject;\n private _status;\n private _promiseResult;\n private _promiseError;\n get promise(): Promise;\n get resolve(): Resolve;\n get reject(): Reject;\n get status(): ExposedPromiseStatus;\n get promiseResult(): T | undefined;\n get promiseError(): U | undefined;\n constructor();\n static resolve(value: T): ExposedPromise;\n static reject(reason?: U): ExposedPromise;\n isPending(): boolean;\n isResolved(): boolean;\n isRejected(): boolean;\n isSettled(): boolean;\n}\nexport {};\n'},{name:"@airgap/beacon-utils/utils/generate-uuid.d.ts",dts:"/**\n * Generate a random GUID\n */\nexport declare function generateGUID(): Promise;\n"},{name:"@airgap/beacon-utils/utils/keys.d.ts",dts:"/**\n * A helper function to improve typings of object keys\n *\n * @param obj Object\n */\nexport declare function keys(obj: O): (keyof O)[];\n"},{name:"@airgap/beacon-utils/index.d.ts",dts:"export { keys } from './utils/keys';\nexport { ExposedPromise, ExposedPromiseStatus } from './utils/exposed-promise';\nexport { getKeypairFromSeed, toHex, getAddressFromPublicKey, decryptCryptoboxPayload, encryptCryptoboxPayload, getHexHash, sealCryptobox, openCryptobox, recipientString, signMessage, isValidAddress, prefixPublicKey, encodePoeChallengePayload } from './utils/crypto';\nexport { generateGUID } from './utils/generate-uuid';\nexport declare const CONTRACT_PREFIX = \"KT1\";\nexport declare const secretbox_NONCEBYTES = 24;\nexport declare const secretbox_MACBYTES = 16;\n"},{name:"@airgap/beacon-utils/dist/esm/utils/crypto.d.ts",dts:"/// \nimport { KeyPair } from '@stablelib/ed25519';\nexport declare const secretbox_NONCEBYTES = 24;\nexport declare const secretbox_MACBYTES = 16;\n/**\n * Convert a value to hex\n *\n * @param value\n */\nexport declare function toHex(value: any): string;\n/**\n * Get the hex hash of a value\n *\n * @param key\n */\nexport declare function getHexHash(key: string | Buffer | Uint8Array): Promise;\n/**\n * Get a keypair from a seed\n *\n * @param seed\n */\nexport declare function getKeypairFromSeed(seed: string): Promise;\n/**\n * Encrypt a message with a shared key\n *\n * @param message\n * @param sharedKey\n */\nexport declare function encryptCryptoboxPayload(message: string, sharedKey: Uint8Array): Promise;\n/**\n * Decrypt a message with a shared key\n *\n * @param payload\n * @param sharedKey\n */\nexport declare function decryptCryptoboxPayload(payload: Uint8Array, sharedKey: Uint8Array): Promise;\n/**\n * Encrypt a message with a public key\n *\n * @param payload\n * @param publicKey\n */\nexport declare function sealCryptobox(payload: string | Buffer, otherPublicKey: Uint8Array): Promise;\n/**\n * Decrypt a message with public + private key\n *\n * @param encryptedPayload\n * @param publicKey\n * @param privateKey\n */\nexport declare function openCryptobox(encryptedPayload: string | Buffer, publicKey: Uint8Array, privateKey: Uint8Array): Promise;\n/**\n * Get an address from the public key\n *\n * @param publicKey\n */\nexport declare function getAddressFromPublicKey(publicKey: string): Promise;\n/**\n * Prefix the public key if it's not prefixed\n *\n * @param publicKey\n */\nexport declare function prefixPublicKey(publicKey: string): string;\n/**\n * Get the recipient string used in the matrix message\n *\n * @param recipientHash\n * @param relayServer\n */\nexport declare function recipientString(recipientHash: string, relayServer: string): string;\nexport declare const signMessage: (message: string, keypair: {\n secretKey: Buffer;\n}) => Promise;\nexport declare const isValidAddress: (address: string) => boolean;\nexport declare function encodePoeChallengePayload(payload: string): string;\n"},{name:"@airgap/beacon-utils/dist/esm/utils/exposed-promise.d.ts",dts:'export declare enum ExposedPromiseStatus {\n PENDING = "pending",\n RESOLVED = "resolved",\n REJECTED = "rejected"\n}\ntype Resolve = (value: T) => void;\ntype Reject = (reason?: U) => void;\n/**\n * Exposed promise allow you to create a promise and then resolve it later, from the outside\n */\nexport declare class ExposedPromise {\n private readonly _promise;\n private _resolve;\n private _reject;\n private _status;\n private _promiseResult;\n private _promiseError;\n get promise(): Promise;\n get resolve(): Resolve;\n get reject(): Reject;\n get status(): ExposedPromiseStatus;\n get promiseResult(): T | undefined;\n get promiseError(): U | undefined;\n constructor();\n static resolve(value: T): ExposedPromise;\n static reject(reason?: U): ExposedPromise;\n isPending(): boolean;\n isResolved(): boolean;\n isRejected(): boolean;\n isSettled(): boolean;\n}\nexport {};\n'},{name:"@airgap/beacon-utils/dist/esm/utils/generate-uuid.d.ts",dts:"/**\n * Generate a random GUID\n */\nexport declare function generateGUID(): Promise;\n"},{name:"@airgap/beacon-utils/dist/esm/utils/keys.d.ts",dts:"/**\n * A helper function to improve typings of object keys\n *\n * @param obj Object\n */\nexport declare function keys(obj: O): (keyof O)[];\n"},{name:"@airgap/beacon-utils/dist/esm/index.d.ts",dts:"export { keys } from './utils/keys';\nexport { ExposedPromise, ExposedPromiseStatus } from './utils/exposed-promise';\nexport { getKeypairFromSeed, toHex, getAddressFromPublicKey, decryptCryptoboxPayload, encryptCryptoboxPayload, getHexHash, sealCryptobox, openCryptobox, recipientString, signMessage, isValidAddress, prefixPublicKey, encodePoeChallengePayload } from './utils/crypto';\nexport { generateGUID } from './utils/generate-uuid';\nexport declare const CONTRACT_PREFIX = \"KT1\";\nexport declare const secretbox_NONCEBYTES = 24;\nexport declare const secretbox_MACBYTES = 16;\n"},{name:"@airgap/beacon-wallet/client/WalletClient.d.ts",dts:"import { Client } from '@airgap/beacon-core';\nimport { ExposedPromise } from '@airgap/beacon-utils';\nimport { ConnectionContext, ExtendedP2PPairingResponse, PeerInfo, TransportType, BeaconRequestOutputMessage, BeaconResponseInputMessage, AppMetadata, PermissionInfo, PushToken } from '@airgap/beacon-types';\nimport { WalletClientOptions } from './WalletClientOptions';\n/**\n * @publicapi\n *\n * The WalletClient has to be used in the wallet. It handles all the logic related to connecting to beacon-compatible\n * dapps and handling/responding to requests.\n *\n * @category Wallet\n */\nexport declare class WalletClient extends Client {\n /**\n * Returns whether or not the transport is connected\n */\n protected readonly _isConnected: ExposedPromise;\n get isConnected(): Promise;\n private readonly permissionManager;\n private readonly appMetadataManager;\n /**\n * This array stores pending requests, meaning requests we received and have not yet handled / sent a response.\n */\n private pendingRequests;\n constructor(config: WalletClientOptions);\n init(): Promise;\n /**\n * This method initiates a connection to the P2P network and registers a callback that will be called\n * whenever a message is received.\n *\n * @param newMessageCallback The callback that will be invoked for every message the transport receives.\n */\n connect(newMessageCallback: (message: BeaconRequestOutputMessage, connectionContext: ConnectionContext) => void): Promise;\n getRegisterPushChallenge(backendUrl: string, accountPublicKey: string, oracleUrl?: string): Promise<{\n challenge: {\n id: string;\n timestamp: string;\n };\n payloadToSign: string;\n }>;\n registerPush(challenge: {\n id: string;\n timestamp: string;\n }, signature: string, backendUrl: string, accountPublicKey: string, protocolIdentifier: string, deviceId: string, oracleUrl?: string): Promise;\n /**\n * The method will attempt to initiate a connection using the active transport.\n */\n _connect(): Promise;\n /**\n * This method sends a response for a specific request back to the DApp\n *\n * @param message The BeaconResponseMessage that will be sent back to the DApp\n */\n respond(message: BeaconResponseInputMessage): Promise;\n getAppMetadataList(): Promise;\n getAppMetadata(senderId: string): Promise;\n removeAppMetadata(senderId: string): Promise;\n removeAllAppMetadata(): Promise;\n getPermissions(): Promise;\n getPermission(accountIdentifier: string): Promise;\n removePermission(accountIdentifier: string): Promise;\n removeAllPermissions(): Promise;\n private getPeerInfo;\n /**\n * Add a new peer to the known peers\n * @param peer The new peer to add\n */\n addPeer(peer: PeerInfo, sendPairingResponse?: boolean): Promise;\n removePeer(peer: ExtendedP2PPairingResponse, sendDisconnectToPeer?: boolean): Promise;\n removeAllPeers(sendDisconnectToPeers?: boolean): Promise;\n private removePermissionsForPeers;\n /**\n * Send an acknowledge message back to the sender\n *\n * @param message The message that was received\n */\n private sendAcknowledgeResponse;\n /**\n * An internal method to send a BeaconMessage to the DApp\n *\n * @param response Send a message back to the DApp\n */\n private respondToMessage;\n private disconnect;\n}\n"},{name:"@airgap/beacon-wallet/client/WalletClientOptions.d.ts",dts:"import { NodeDistributions, Storage } from '@airgap/beacon-types';\n/**\n * @category Wallet\n */\nexport interface WalletClientOptions {\n /**\n * Name of the application\n */\n name: string;\n /**\n * A URL to the icon of the application\n */\n iconUrl?: string;\n /**\n * A URL to the website of the application\n */\n appUrl?: string;\n /**\n * The storage that will be used by the SDK\n */\n storage?: Storage;\n /**\n * A list of matrix nodes to connect to. If a non-empty array is passed, the default options will be overwritten.\n * One node will be randomly selected based on the local keypair and the other nodes will be used as a fallback in case the primary node goes down.\n *\n * Only provide the hostname, no https:// prefix. Eg. { [Regions.EU1]: ['matrix.example.com'] }\n */\n matrixNodes?: NodeDistributions;\n}\n"},{name:"@airgap/beacon-wallet/interceptors/IncomingRequestInterceptor.d.ts",dts:"import { BeaconRequestOutputMessage, ConnectionContext, BeaconRequestMessage, BeaconMessageWrapper, BeaconBaseMessage } from '@airgap/beacon-types';\nimport { AppMetadataManager } from '@airgap/beacon-core';\ninterface IncomingRequestInterceptorOptions {\n message: BeaconRequestMessage | BeaconMessageWrapper;\n connectionInfo: ConnectionContext;\n appMetadataManager: AppMetadataManager;\n interceptorCallback(message: BeaconRequestOutputMessage, connectionInfo: ConnectionContext): void;\n}\n/**\n * @internalapi\n *\n * The IncomingRequestInterceptor is used in the WalletClient to intercept an incoming request and enrich it with data, like app metadata.\n */\nexport declare class IncomingRequestInterceptor {\n /**\n * The method that is called during the interception\n *\n * @param config\n */\n static intercept(config: IncomingRequestInterceptorOptions): Promise;\n private static getAppMetadata;\n private static handleV2Message;\n private static handleV3Message;\n}\nexport {};\n"},{name:"@airgap/beacon-wallet/interceptors/OutgoingResponseInterceptor.d.ts",dts:"import { AppMetadataManager, PermissionManager } from '@airgap/beacon-core';\nimport { BeaconMessage, BeaconResponseInputMessage, AppMetadata, BeaconRequestMessage, BeaconMessageWrapper, BeaconBaseMessage } from '@airgap/beacon-types';\ninterface OutgoingResponseInterceptorOptions {\n senderId: string;\n request: BeaconRequestMessage | BeaconMessageWrapper;\n message: BeaconResponseInputMessage;\n ownAppMetadata: AppMetadata;\n permissionManager: PermissionManager;\n appMetadataManager: AppMetadataManager;\n interceptorCallback(message: BeaconMessage): void;\n}\n/**\n * @internalapi\n *\n * The OutgoingResponseInterceptor is used in the WalletClient to intercept an outgoing response and enrich it with data.\n */\nexport declare class OutgoingResponseInterceptor {\n static intercept(config: OutgoingResponseInterceptorOptions): Promise;\n private static handleV3Message;\n private static handleV2Message;\n}\nexport {};\n"},{name:"@airgap/beacon-wallet/transports/WalletP2PTransport.d.ts",dts:"import { Storage, StorageKey, P2PPairingRequest, NodeDistributions } from '@airgap/beacon-types';\nimport { P2PTransport } from '@airgap/beacon-transport-matrix';\nimport { KeyPair } from '@stablelib/ed25519';\n/**\n * @internalapi\n *\n *\n */\nexport declare class WalletP2PTransport extends P2PTransport {\n constructor(name: string, keyPair: KeyPair, storage: Storage, matrixNodes: NodeDistributions, iconUrl?: string, appUrl?: string);\n addPeer(newPeer: P2PPairingRequest, sendPairingResponse?: boolean): Promise;\n}\n"},{name:"@airgap/beacon-wallet/transports/WalletPostMessageTransport.d.ts",dts:"import { StorageKey, Storage, PostMessagePairingRequest } from '@airgap/beacon-types';\nimport { PostMessageTransport } from '@airgap/beacon-transport-postmessage';\nimport { KeyPair } from '@stablelib/ed25519';\n/**\n * @internalapi\n *\n *\n */\nexport declare class WalletPostMessageTransport extends PostMessageTransport {\n constructor(name: string, keyPair: KeyPair, storage: Storage);\n}\n"},{name:"@airgap/beacon-wallet/index.d.ts",dts:"export * from '@airgap/beacon-core';\nexport * from '@airgap/beacon-transport-matrix';\nexport * from '@airgap/beacon-types';\nexport * from '@airgap/beacon-utils';\nimport { WalletClient } from './client/WalletClient';\nimport { WalletClientOptions } from './client/WalletClientOptions';\nexport { WalletClient, WalletClientOptions };\n"},{name:"@airgap/beacon-wallet/dist/esm/client/WalletClient.d.ts",dts:"import { Client } from '@airgap/beacon-core';\nimport { ExposedPromise } from '@airgap/beacon-utils';\nimport { ConnectionContext, ExtendedP2PPairingResponse, PeerInfo, TransportType, BeaconRequestOutputMessage, BeaconResponseInputMessage, AppMetadata, PermissionInfo, PushToken } from '@airgap/beacon-types';\nimport { WalletClientOptions } from './WalletClientOptions';\n/**\n * @publicapi\n *\n * The WalletClient has to be used in the wallet. It handles all the logic related to connecting to beacon-compatible\n * dapps and handling/responding to requests.\n *\n * @category Wallet\n */\nexport declare class WalletClient extends Client {\n /**\n * Returns whether or not the transport is connected\n */\n protected readonly _isConnected: ExposedPromise;\n get isConnected(): Promise;\n private readonly permissionManager;\n private readonly appMetadataManager;\n /**\n * This array stores pending requests, meaning requests we received and have not yet handled / sent a response.\n */\n private pendingRequests;\n constructor(config: WalletClientOptions);\n init(): Promise;\n /**\n * This method initiates a connection to the P2P network and registers a callback that will be called\n * whenever a message is received.\n *\n * @param newMessageCallback The callback that will be invoked for every message the transport receives.\n */\n connect(newMessageCallback: (message: BeaconRequestOutputMessage, connectionContext: ConnectionContext) => void): Promise;\n getRegisterPushChallenge(backendUrl: string, accountPublicKey: string, oracleUrl?: string): Promise<{\n challenge: {\n id: string;\n timestamp: string;\n };\n payloadToSign: string;\n }>;\n registerPush(challenge: {\n id: string;\n timestamp: string;\n }, signature: string, backendUrl: string, accountPublicKey: string, protocolIdentifier: string, deviceId: string, oracleUrl?: string): Promise;\n /**\n * The method will attempt to initiate a connection using the active transport.\n */\n _connect(): Promise;\n /**\n * This method sends a response for a specific request back to the DApp\n *\n * @param message The BeaconResponseMessage that will be sent back to the DApp\n */\n respond(message: BeaconResponseInputMessage): Promise;\n getAppMetadataList(): Promise;\n getAppMetadata(senderId: string): Promise;\n removeAppMetadata(senderId: string): Promise;\n removeAllAppMetadata(): Promise;\n getPermissions(): Promise;\n getPermission(accountIdentifier: string): Promise;\n removePermission(accountIdentifier: string): Promise;\n removeAllPermissions(): Promise;\n private getPeerInfo;\n /**\n * Add a new peer to the known peers\n * @param peer The new peer to add\n */\n addPeer(peer: PeerInfo, sendPairingResponse?: boolean): Promise;\n removePeer(peer: ExtendedP2PPairingResponse, sendDisconnectToPeer?: boolean): Promise;\n removeAllPeers(sendDisconnectToPeers?: boolean): Promise;\n private removePermissionsForPeers;\n /**\n * Send an acknowledge message back to the sender\n *\n * @param message The message that was received\n */\n private sendAcknowledgeResponse;\n /**\n * An internal method to send a BeaconMessage to the DApp\n *\n * @param response Send a message back to the DApp\n */\n private respondToMessage;\n private disconnect;\n}\n"},{name:"@airgap/beacon-wallet/dist/esm/client/WalletClientOptions.d.ts",dts:"import { NodeDistributions, Storage } from '@airgap/beacon-types';\n/**\n * @category Wallet\n */\nexport interface WalletClientOptions {\n /**\n * Name of the application\n */\n name: string;\n /**\n * A URL to the icon of the application\n */\n iconUrl?: string;\n /**\n * A URL to the website of the application\n */\n appUrl?: string;\n /**\n * The storage that will be used by the SDK\n */\n storage?: Storage;\n /**\n * A list of matrix nodes to connect to. If a non-empty array is passed, the default options will be overwritten.\n * One node will be randomly selected based on the local keypair and the other nodes will be used as a fallback in case the primary node goes down.\n *\n * Only provide the hostname, no https:// prefix. Eg. { [Regions.EU1]: ['matrix.example.com'] }\n */\n matrixNodes?: NodeDistributions;\n}\n"},{name:"@airgap/beacon-wallet/dist/esm/interceptors/IncomingRequestInterceptor.d.ts",dts:"import { BeaconRequestOutputMessage, ConnectionContext, BeaconRequestMessage, BeaconMessageWrapper, BeaconBaseMessage } from '@airgap/beacon-types';\nimport { AppMetadataManager } from '@airgap/beacon-core';\ninterface IncomingRequestInterceptorOptions {\n message: BeaconRequestMessage | BeaconMessageWrapper;\n connectionInfo: ConnectionContext;\n appMetadataManager: AppMetadataManager;\n interceptorCallback(message: BeaconRequestOutputMessage, connectionInfo: ConnectionContext): void;\n}\n/**\n * @internalapi\n *\n * The IncomingRequestInterceptor is used in the WalletClient to intercept an incoming request and enrich it with data, like app metadata.\n */\nexport declare class IncomingRequestInterceptor {\n /**\n * The method that is called during the interception\n *\n * @param config\n */\n static intercept(config: IncomingRequestInterceptorOptions): Promise;\n private static getAppMetadata;\n private static handleV2Message;\n private static handleV3Message;\n}\nexport {};\n"},{name:"@airgap/beacon-wallet/dist/esm/interceptors/OutgoingResponseInterceptor.d.ts",dts:"import { AppMetadataManager, PermissionManager } from '@airgap/beacon-core';\nimport { BeaconMessage, BeaconResponseInputMessage, AppMetadata, BeaconRequestMessage, BeaconMessageWrapper, BeaconBaseMessage } from '@airgap/beacon-types';\ninterface OutgoingResponseInterceptorOptions {\n senderId: string;\n request: BeaconRequestMessage | BeaconMessageWrapper;\n message: BeaconResponseInputMessage;\n ownAppMetadata: AppMetadata;\n permissionManager: PermissionManager;\n appMetadataManager: AppMetadataManager;\n interceptorCallback(message: BeaconMessage): void;\n}\n/**\n * @internalapi\n *\n * The OutgoingResponseInterceptor is used in the WalletClient to intercept an outgoing response and enrich it with data.\n */\nexport declare class OutgoingResponseInterceptor {\n static intercept(config: OutgoingResponseInterceptorOptions): Promise;\n private static handleV3Message;\n private static handleV2Message;\n}\nexport {};\n"},{name:"@airgap/beacon-wallet/dist/esm/transports/WalletP2PTransport.d.ts",dts:"import { Storage, StorageKey, P2PPairingRequest, NodeDistributions } from '@airgap/beacon-types';\nimport { P2PTransport } from '@airgap/beacon-transport-matrix';\nimport { KeyPair } from '@stablelib/ed25519';\n/**\n * @internalapi\n *\n *\n */\nexport declare class WalletP2PTransport extends P2PTransport {\n constructor(name: string, keyPair: KeyPair, storage: Storage, matrixNodes: NodeDistributions, iconUrl?: string, appUrl?: string);\n addPeer(newPeer: P2PPairingRequest, sendPairingResponse?: boolean): Promise;\n}\n"},{name:"@airgap/beacon-wallet/dist/esm/transports/WalletPostMessageTransport.d.ts",dts:"import { StorageKey, Storage, PostMessagePairingRequest } from '@airgap/beacon-types';\nimport { PostMessageTransport } from '@airgap/beacon-transport-postmessage';\nimport { KeyPair } from '@stablelib/ed25519';\n/**\n * @internalapi\n *\n *\n */\nexport declare class WalletPostMessageTransport extends PostMessageTransport {\n constructor(name: string, keyPair: KeyPair, storage: Storage);\n}\n"},{name:"@airgap/beacon-wallet/dist/esm/index.d.ts",dts:"export * from '@airgap/beacon-core';\nexport * from '@airgap/beacon-transport-matrix';\nexport * from '@airgap/beacon-types';\nexport * from '@airgap/beacon-utils';\nimport { WalletClient } from './client/WalletClient';\nimport { WalletClientOptions } from './client/WalletClientOptions';\nexport { WalletClient, WalletClientOptions };\n"},{name:"@taquito/beacon-wallet/dist/types/errors.d.ts",dts:"import { PermissionScope } from '@airgap/beacon-dapp';\nimport { PermissionDeniedError } from '@taquito/core';\n/**\n * @category Error\n * @description Error that indicates the Beacon wallet not being initialized\n */\nexport declare class BeaconWalletNotInitialized extends PermissionDeniedError {\n constructor();\n}\n/**\n * @category Error\n * @description Error that indicates missing required persmission scopes\n */\nexport declare class MissingRequiredScopes extends PermissionDeniedError {\n readonly requiredScopes: PermissionScope[];\n constructor(requiredScopes: PermissionScope[]);\n}\n"},{name:"@taquito/beacon-wallet/dist/types/taquito-beacon-wallet.d.ts",dts:"/**\n * @packageDocumentation\n * @module @taquito/beacon-wallet\n */\nimport { DAppClient, DAppClientOptions, RequestPermissionInput, AccountInfo } from '@airgap/beacon-dapp';\nimport { WalletDelegateParams, WalletIncreasePaidStorageParams, WalletOriginateParams, WalletProvider, WalletTransferParams, WalletStakeParams, WalletUnstakeParams, WalletFinalizeUnstakeParams } from '@taquito/taquito';\nexport { VERSION } from './version';\nexport { BeaconWalletNotInitialized, MissingRequiredScopes } from './errors';\nexport declare class BeaconWallet implements WalletProvider {\n client: DAppClient;\n account: AccountInfo | undefined;\n constructor(options: DAppClientOptions);\n private validateRequiredScopesOrFail;\n requestPermissions(request?: RequestPermissionInput): Promise;\n getPKH(): Promise;\n getPK(): Promise;\n mapTransferParamsToWalletParams(params: () => Promise): Promise;\n mapStakeParamsToWalletParams(params: () => Promise): Promise;\n mapUnstakeParamsToWalletParams(params: () => Promise): Promise;\n mapFinalizeUnstakeParamsToWalletParams(params: () => Promise): Promise;\n mapIncreasePaidStorageWalletParams(params: () => Promise): Promise;\n mapOriginateParamsToWalletParams(params: () => Promise): Promise;\n mapDelegateParamsToWalletParams(params: () => Promise): Promise;\n formatParameters(params: any): any;\n removeDefaultParams(params: WalletTransferParams | WalletStakeParams | WalletUnstakeParams | WalletFinalizeUnstakeParams | WalletOriginateParams | WalletDelegateParams, operatedParams: any): any;\n sendOperations(params: any[]): Promise;\n /**\n *\n * @description Removes all beacon values from the storage. After using this method, this instance is no longer usable.\n * You will have to instantiate a new BeaconWallet.\n */\n disconnect(): Promise;\n /**\n *\n * @description This method removes the active account from local storage by setting it to undefined.\n */\n clearActiveAccount(): Promise;\n sign(bytes: string, watermark?: Uint8Array): Promise;\n private getSigningType;\n}\n"},{name:"@taquito/beacon-wallet/dist/types/version.d.ts",dts:"export declare const VERSION: {\n commitHash: string;\n version: string;\n};\n"},{name:"@taquito/core/dist/types/errors.d.ts",dts:"/**\n * @category Error\n * @description Parent error class all taquito errors to extend from\n */\nexport declare class TaquitoError extends Error {\n}\n/**\n * @category Error\n * @description Error that indicates invalid user inputs\n */\nexport declare class ParameterValidationError extends TaquitoError {\n}\n/**\n * @category Error\n * @description Error returned by RPC node\n */\nexport declare class RpcError extends TaquitoError {\n}\n/**\n * @category Error\n * @description Error that indicates TezosToolKit has not been configured appropriately\n */\nexport declare class TezosToolkitConfigError extends TaquitoError {\n}\n/**\n * @category Error\n * @description Error that indicates a requested action is not supported by Taquito\n */\nexport declare class UnsupportedActionError extends TaquitoError {\n}\n/**\n * @category Error\n * @description Error during a network operation\n */\nexport declare class NetworkError extends TaquitoError {\n}\n/**\n * @category Error\n * @description Error that indicates user attempts an action without necessary permissions\n */\nexport declare class PermissionDeniedError extends TaquitoError {\n}\n/**\n * @category Error\n * @description Error that indicates an invalid originated or implicit address being passed or used\n */\nexport declare class InvalidAddressError extends ParameterValidationError {\n readonly address: string;\n readonly errorDetail?: string | undefined;\n constructor(address: string, errorDetail?: string | undefined);\n}\nexport declare class InvalidStakingAddressError extends ParameterValidationError {\n readonly address: string;\n readonly errorDetail?: string | undefined;\n constructor(address: string, errorDetail?: string | undefined);\n}\nexport declare class InvalidFinalizeUnstakeAmountError extends ParameterValidationError {\n readonly address: string;\n readonly errorDetail?: string | undefined;\n constructor(address: string, errorDetail?: string | undefined);\n}\n/**\n * @category Error\n * @description Error that indicates an invalid block hash being passed or used\n */\nexport declare class InvalidBlockHashError extends ParameterValidationError {\n readonly blockHash: string;\n readonly errorDetail?: string | undefined;\n constructor(blockHash: string, errorDetail?: string | undefined);\n}\n/**\n * @category Error\n * @description Error that indicates an invalid amount of tez being passed as a parameter\n */\nexport declare class InvalidAmountError extends ParameterValidationError {\n readonly amount: string;\n constructor(amount: string);\n}\n/**\n * @category Error\n * @description Error that indicates an invalid derivation path being passed or used\n */\nexport declare class InvalidDerivationPathError extends ParameterValidationError {\n readonly derivationPath: string;\n readonly errorDetail?: string | undefined;\n constructor(derivationPath: string, errorDetail?: string | undefined);\n}\n/**\n * @category Error\n * @description Error that indicates an invalid hex string have been passed or used\n */\nexport declare class InvalidHexStringError extends ParameterValidationError {\n readonly hexString: string;\n readonly errorDetail?: string | undefined;\n constructor(hexString: string, errorDetail?: string | undefined);\n}\n/**\n * @category Error\n * @description Error that indicates an invalid message being passed or used\n */\nexport declare class InvalidMessageError extends ParameterValidationError {\n readonly msg: string;\n readonly errorDetail?: string | undefined;\n constructor(msg: string, errorDetail?: string | undefined);\n}\n/**\n * @category Error\n * @description Error that indicates invalid view parameter of a smart contract\n */\nexport declare class InvalidViewParameterError extends ParameterValidationError {\n readonly viewName: string;\n readonly sigs: any;\n readonly args: any;\n readonly cause?: any;\n constructor(viewName: string, sigs: any, args: any, cause?: any);\n}\n/**\n * @category Error\n * @description Error that indicates an invalid private key being passed or used\n */\nexport declare class InvalidKeyError extends ParameterValidationError {\n readonly errorDetail?: string | undefined;\n constructor(errorDetail?: string | undefined);\n}\n/**\n * @category Error\n * @description Error that indicates an Invalid Public Key being passed or used\n */\nexport declare class InvalidPublicKeyError extends ParameterValidationError {\n readonly publicKey: string;\n readonly errorDetail?: string | undefined;\n constructor(publicKey: string, errorDetail?: string | undefined);\n}\n/**\n * @category Error\n * @description Error that indicates an invalid signature being passed or used\n */\nexport declare class InvalidSignatureError extends ParameterValidationError {\n readonly signature: string;\n readonly errorDetail?: string | undefined;\n constructor(signature: string, errorDetail?: string | undefined);\n}\n/**\n * @category Error\n * @description Error that indicates an invalid contract address being passed or used\n */\nexport declare class InvalidContractAddressError extends ParameterValidationError {\n readonly contractAddress: string;\n readonly errorDetail?: string | undefined;\n constructor(contractAddress: string, errorDetail?: string | undefined);\n}\n/**\n * @category Error\n * @description Error that indicates an invalid chain id being passed or used\n */\nexport declare class InvalidChainIdError extends ParameterValidationError {\n readonly chainId: string;\n readonly errorDetail?: string | undefined;\n constructor(chainId: string, errorDetail?: string | undefined);\n}\n/**\n * @category Error\n * @description Error that indicates an invalid public key hash being passed or used\n */\nexport declare class InvalidKeyHashError extends ParameterValidationError {\n readonly keyHash: string;\n readonly errorDetail?: string | undefined;\n constructor(keyHash: string, errorDetail?: string | undefined);\n}\n/**\n * @category Error\n * @description Error that indicates an invalid operation hash being passed or used\n */\nexport declare class InvalidOperationHashError extends ParameterValidationError {\n readonly operationHash: string;\n readonly errorDetail?: string | undefined;\n constructor(operationHash: string, errorDetail?: string | undefined);\n}\n/**\n * @category Error\n * @description Error that indicates an invalid operation kind being passed or used\n */\nexport declare class InvalidOperationKindError extends ParameterValidationError {\n readonly operationKind: string;\n readonly errorDetail?: string | undefined;\n constructor(operationKind: string, errorDetail?: string | undefined);\n}\n/**\n * @category Error\n * @description General error that indicates something is no longer supported and/or deprecated\n */\nexport declare class DeprecationError extends UnsupportedActionError {\n readonly message: string;\n constructor(message: string);\n}\n/**\n * @category Error\n * @description General error that indicates an action is prohibited or not allowed\n */\nexport declare class ProhibitedActionError extends UnsupportedActionError {\n readonly message: string;\n constructor(message: string);\n}\n/**\n * @category Error\n * @description Error that indicates a failure in grabbing the public key\n */\nexport declare class PublicKeyNotFoundError extends TaquitoError {\n readonly pkh: string;\n readonly cause?: any;\n constructor(pkh: string, cause?: any);\n}\n"},{name:"@taquito/core/dist/types/taquito-core.d.ts",dts:"/**\n * @packageDocumentation\n * @module @taquito/core\n */\nexport * from './errors';\n"},{name:"@taquito/core/dist/types/version.d.ts",dts:"export declare const VERSION: {\n commitHash: string;\n version: string;\n};\n"},{name:"@taquito/http-utils/dist/types/errors.d.ts",dts:"import { NetworkError } from '@taquito/core';\nimport { STATUS_CODE } from './status_code';\n/**\n * @category Error\n * @description Error that indicates a general failure in making the HTTP request\n */\nexport declare class HttpRequestFailed extends NetworkError {\n readonly method: string;\n readonly url: string;\n readonly cause: Error;\n constructor(method: string, url: string, cause: Error);\n}\n/**\n * @category Error\n * @description Error thrown when the endpoint returns an HTTP error to the client\n */\nexport declare class HttpResponseError extends NetworkError {\n readonly message: string;\n readonly status: STATUS_CODE;\n readonly statusText: string;\n readonly body: string;\n readonly url: string;\n constructor(message: string, status: STATUS_CODE, statusText: string, body: string, url: string);\n}\n/**\n * @category Error\n * @description Error\n */\nexport declare class HttpTimeoutError extends NetworkError {\n readonly timeout: number;\n readonly url: string;\n constructor(timeout: number, url: string);\n}\n"},{name:"@taquito/http-utils/dist/types/status_code.d.ts",dts:'/**\n * Hypertext Transfer Protocol (HTTP) response status codes.\n * @see {@link https://en.wikipedia.org/wiki/List_of_HTTP_status_codes}\n */\nexport declare enum STATUS_CODE {\n /**\n * The server has received the request headers and the client should proceed to send the request body\n * (in the case of a request for which a body needs to be sent; for example, a POST request).\n * Sending a large request body to a server after a request has been rejected for inappropriate headers would be inefficient.\n * To have a server check the request\'s headers, a client must send Expect: 100-continue as a header in its initial request\n * and receive a 100 Continue status code in response before sending the body. The response 417 Expectation Failed indicates the request should not be continued.\n */\n CONTINUE = 100,\n /**\n * The requester has asked the server to switch protocols and the server has agreed to do so.\n */\n SWITCHING_PROTOCOLS = 101,\n /**\n * A WebDAV request may contain many sub-requests involving file operations, requiring a long time to complete the request.\n * This code indicates that the server has received and is processing the request, but no response is available yet.\n * This prevents the client from timing out and assuming the request was lost.\n */\n PROCESSING = 102,\n /**\n * Standard response for successful HTTP requests.\n * The actual response will depend on the request method used.\n * In a GET request, the response will contain an entity corresponding to the requested resource.\n * In a POST request, the response will contain an entity describing or containing the result of the action.\n */\n OK = 200,\n /**\n * The request has been fulfilled, resulting in the creation of a new resource.\n */\n CREATED = 201,\n /**\n * The request has been accepted for processing, but the processing has not been completed.\n * The request might or might not be eventually acted upon, and may be disallowed when processing occurs.\n */\n ACCEPTED = 202,\n /**\n * SINCE HTTP/1.1\n * The server is a transforming proxy that received a 200 OK from its origin,\n * but is returning a modified version of the origin\'s response.\n */\n NON_AUTHORITATIVE_INFORMATION = 203,\n /**\n * The server successfully processed the request and is not returning any content.\n */\n NO_CONTENT = 204,\n /**\n * The server successfully processed the request, but is not returning any content.\n * Unlike a 204 response, this response requires that the requester reset the document view.\n */\n RESET_CONTENT = 205,\n /**\n * The server is delivering only part of the resource (byte serving) due to a range header sent by the client.\n * The range header is used by HTTP clients to enable resuming of interrupted downloads,\n * or split a download into multiple simultaneous streams.\n */\n PARTIAL_CONTENT = 206,\n /**\n * The message body that follows is an XML message and can contain a number of separate response codes,\n * depending on how many sub-requests were made.\n */\n MULTI_STATUS = 207,\n /**\n * The members of a DAV binding have already been enumerated in a preceding part of the (multistatus) response,\n * and are not being included again.\n */\n ALREADY_REPORTED = 208,\n /**\n * The server has fulfilled a request for the resource,\n * and the response is a representation of the result of one or more instance-manipulations applied to the current instance.\n */\n IM_USED = 226,\n /**\n * Indicates multiple options for the resource from which the client may choose (via agent-driven content negotiation).\n * For example, this code could be used to present multiple video format options,\n * to list files with different filename extensions, or to suggest word-sense disambiguation.\n */\n MULTIPLE_CHOICES = 300,\n /**\n * This and all future requests should be directed to the given URI.\n */\n MOVED_PERMANENTLY = 301,\n /**\n * This is an example of industry practice contradicting the standard.\n * The HTTP/1.0 specification (RFC 1945) required the client to perform a temporary redirect\n * (the original describing phrase was "Moved Temporarily"), but popular browsers implemented 302\n * with the functionality of a 303 See Other. Therefore, HTTP/1.1 added status codes 303 and 307\n * to distinguish between the two behaviours. However, some Web applications and frameworks\n * use the 302 status code as if it were the 303.\n */\n FOUND = 302,\n /**\n * SINCE HTTP/1.1\n * The response to the request can be found under another URI using a GET method.\n * When received in response to a POST (or PUT/DELETE), the client should presume that\n * the server has received the data and should issue a redirect with a separate GET message.\n */\n SEE_OTHER = 303,\n /**\n * Indicates that the resource has not been modified since the version specified by the request headers If-Modified-Since or If-None-Match.\n * In such case, there is no need to retransmit the resource since the client still has a previously-downloaded copy.\n */\n NOT_MODIFIED = 304,\n /**\n * SINCE HTTP/1.1\n * The requested resource is available only through a proxy, the address for which is provided in the response.\n * Many HTTP clients (such as Mozilla and Internet Explorer) do not correctly handle responses with this status code, primarily for security reasons.\n */\n USE_PROXY = 305,\n /**\n * No longer used. Originally meant "Subsequent requests should use the specified proxy."\n */\n SWITCH_PROXY = 306,\n /**\n * SINCE HTTP/1.1\n * In this case, the request should be repeated with another URI; however, future requests should still use the original URI.\n * In contrast to how 302 was historically implemented, the request method is not allowed to be changed when reissuing the original request.\n * For example, a POST request should be repeated using another POST request.\n */\n TEMPORARY_REDIRECT = 307,\n /**\n * The request and all future requests should be repeated using another URI.\n * 307 and 308 parallel the behaviors of 302 and 301, but do not allow the HTTP method to change.\n * So, for example, submitting a form to a permanently redirected resource may continue smoothly.\n */\n PERMANENT_REDIRECT = 308,\n /**\n * The server cannot or will not process the request due to an apparent client error\n * (e.g., malformed request syntax, too large size, invalid request message framing, or deceptive request routing).\n */\n BAD_REQUEST = 400,\n /**\n * Similar to 403 Forbidden, but specifically for use when authentication is required and has failed or has not yet\n * been provided. The response must include a WWW-Authenticate header field containing a challenge applicable to the\n * requested resource. See Basic access authentication and Digest access authentication. 401 semantically means\n * "unauthenticated",i.e. the user does not have the necessary credentials.\n */\n UNAUTHORIZED = 401,\n /**\n * Reserved for future use. The original intention was that this code might be used as part of some form of digital\n * cash or micro payment scheme, but that has not happened, and this code is not usually used.\n * Google Developers API uses this status if a particular developer has exceeded the daily limit on requests.\n */\n PAYMENT_REQUIRED = 402,\n /**\n * The request was valid, but the server is refusing action.\n * The user might not have the necessary permissions for a resource.\n */\n FORBIDDEN = 403,\n /**\n * The requested resource could not be found but may be available in the future.\n * Subsequent requests by the client are permissible.\n */\n NOT_FOUND = 404,\n /**\n * A request method is not supported for the requested resource;\n * for example, a GET request on a form that requires data to be presented via POST, or a PUT request on a read-only resource.\n */\n METHOD_NOT_ALLOWED = 405,\n /**\n * The requested resource is capable of generating only content not acceptable according to the Accept headers sent in the request.\n */\n NOT_ACCEPTABLE = 406,\n /**\n * The client must first authenticate itself with the proxy.\n */\n PROXY_AUTHENTICATION_REQUIRED = 407,\n /**\n * The server timed out waiting for the request.\n * According to HTTP specifications:\n * "The client did not produce a request within the time that the server was prepared to wait. The client MAY repeat the request without modifications at any later time."\n */\n REQUEST_TIMEOUT = 408,\n /**\n * Indicates that the request could not be processed because of conflict in the request,\n * such as an edit conflict between multiple simultaneous updates.\n */\n CONFLICT = 409,\n /**\n * Indicates that the resource requested is no longer available and will not be available again.\n * This should be used when a resource has been intentionally removed and the resource should be purged.\n * Upon receiving a 410 status code, the client should not request the resource in the future.\n * Clients such as search engines should remove the resource from their indices.\n * Most use cases do not require clients and search engines to purge the resource, and a "404 Not Found" may be used instead.\n */\n GONE = 410,\n /**\n * The request did not specify the length of its content, which is required by the requested resource.\n */\n LENGTH_REQUIRED = 411,\n /**\n * The server does not meet one of the preconditions that the requester put on the request.\n */\n PRECONDITION_FAILED = 412,\n /**\n * The request is larger than the server is willing or able to process. Previously called "Request Entity Too Large".\n */\n PAYLOAD_TOO_LARGE = 413,\n /**\n * The URI provided was too long for the server to process. Often the result of too much data being encoded as a query-string of a GET request,\n * in which case it should be converted to a POST request.\n * Called "Request-URI Too Long" previously.\n */\n URI_TOO_LONG = 414,\n /**\n * The request entity has a media type which the server or resource does not support.\n * For example, the client uploads an image as image/svg+xml, but the server requires that images use a different format.\n */\n UNSUPPORTED_MEDIA_TYPE = 415,\n /**\n * The client has asked for a portion of the file (byte serving), but the server cannot supply that portion.\n * For example, if the client asked for a part of the file that lies beyond the end of the file.\n * Called "Requested Range Not Satisfiable" previously.\n */\n RANGE_NOT_SATISFIABLE = 416,\n /**\n * The server cannot meet the requirements of the Expect request-header field.\n */\n EXPECTATION_FAILED = 417,\n /**\n * This code was defined in 1998 as one of the traditional IETF April Fools\' jokes, in RFC 2324, Hyper Text Coffee Pot Control Protocol,\n * and is not expected to be implemented by actual HTTP servers. The RFC specifies this code should be returned by\n * teapots requested to brew coffee. This HTTP status is used as an Easter egg in some websites, including Google.com.\n */\n I_AM_A_TEAPOT = 418,\n /**\n * The request was directed at a server that is not able to produce a response (for example because a connection reuse).\n */\n MISDIRECTED_REQUEST = 421,\n /**\n * The request was well-formed but was unable to be followed due to semantic errors.\n */\n UNPROCESSABLE_ENTITY = 422,\n /**\n * The resource that is being accessed is locked.\n */\n LOCKED = 423,\n /**\n * The request failed due to failure of a previous request (e.g., a PROPPATCH).\n */\n FAILED_DEPENDENCY = 424,\n /**\n * The client should switch to a different protocol such as TLS/1.0, given in the Upgrade header field.\n */\n UPGRADE_REQUIRED = 426,\n /**\n * The origin server requires the request to be conditional.\n * Intended to prevent "the \'lost update\' problem, where a client\n * GETs a resource\'s state, modifies it, and PUTs it back to the server,\n * when meanwhile a third party has modified the state on the server, leading to a conflict."\n */\n PRECONDITION_REQUIRED = 428,\n /**\n * The user has sent too many requests in a given amount of time. Intended for use with rate-limiting schemes.\n */\n TOO_MANY_REQUESTS = 429,\n /**\n * The server is unwilling to process the request because either an individual header field,\n * or all the header fields collectively, are too large.\n */\n REQUEST_HEADER_FIELDS_TOO_LARGE = 431,\n /**\n * A server operator has received a legal demand to deny access to a resource or to a set of resources\n * that includes the requested resource. The code 451 was chosen as a reference to the novel Fahrenheit 451.\n */\n UNAVAILABLE_FOR_LEGAL_REASONS = 451,\n /**\n * A generic error message, given when an unexpected condition was encountered and no more specific message is suitable.\n */\n INTERNAL_SERVER_ERROR = 500,\n /**\n * The server either does not recognize the request method, or it lacks the ability to fulfill the request.\n * Usually this implies future availability (e.g., a new feature of a web-service API).\n */\n NOT_IMPLEMENTED = 501,\n /**\n * The server was acting as a gateway or proxy and received an invalid response from the upstream server.\n */\n BAD_GATEWAY = 502,\n /**\n * The server is currently unavailable (because it is overloaded or down for maintenance).\n * Generally, this is a temporary state.\n */\n SERVICE_UNAVAILABLE = 503,\n /**\n * The server was acting as a gateway or proxy and did not receive a timely response from the upstream server.\n */\n GATEWAY_TIMEOUT = 504,\n /**\n * The server does not support the HTTP protocol version used in the request\n */\n HTTP_VERSION_NOT_SUPPORTED = 505,\n /**\n * Transparent content negotiation for the request results in a circular reference.\n */\n VARIANT_ALSO_NEGOTIATES = 506,\n /**\n * The server is unable to store the representation needed to complete the request.\n */\n INSUFFICIENT_STORAGE = 507,\n /**\n * The server detected an infinite loop while processing the request.\n */\n LOOP_DETECTED = 508,\n /**\n * Further extensions to the request are required for the server to fulfill it.\n */\n NOT_EXTENDED = 510,\n /**\n * The client needs to authenticate to gain network access.\n * Intended for use by intercepting proxies used to control access to the network (e.g., "captive portals" used\n * to require agreement to Terms of Service before granting full Internet access via a Wi-Fi hotspot).\n */\n NETWORK_AUTHENTICATION_REQUIRED = 511\n}\n'},{name:"@taquito/http-utils/dist/types/taquito-http-utils.d.ts",dts:"/**\n * @packageDocumentation\n * @module @taquito/http-utils\n */\nexport * from './status_code';\nexport { VERSION } from './version';\nexport { HttpRequestFailed, HttpResponseError, HttpTimeoutError } from './errors';\ntype ObjectType = Record;\nexport interface HttpRequestOptions {\n url: string;\n method?: 'GET' | 'POST';\n timeout?: number;\n json?: boolean;\n query?: ObjectType;\n headers?: {\n [key: string]: string;\n };\n mimeType?: string;\n}\nexport declare class HttpBackend {\n private timeout;\n constructor(timeout?: number);\n protected serialize(obj?: ObjectType): string;\n /**\n *\n * @param options contains options to be passed for the HTTP request (url, method and timeout)\n * @throws {@link HttpRequestFailed} | {@link HttpResponseError} | {@link HttpTimeoutError}\n */\n createRequest({ url, method, timeout, query, headers, json }: HttpRequestOptions, data?: object | string): Promise;\n}\n"},{name:"@taquito/http-utils/dist/types/version.d.ts",dts:"export declare const VERSION: {\n commitHash: string;\n version: string;\n};\n"},{name:"@taquito/local-forging/dist/types/michelson/codec.d.ts",dts:"import { Decoder } from '../decoder';\nimport { Uint8ArrayConsumer } from '../uint8array-consumer';\nimport { Encoder } from '../taquito-local-forging';\nexport type PrimValue = {\n prim: string;\n args?: MichelsonValue[];\n annots?: string[];\n};\nexport type BytesValue = {\n bytes: string;\n};\nexport type StringValue = {\n string: string;\n};\nexport type IntValue = {\n int: string;\n};\nexport type MichelsonValue = PrimValue | BytesValue | StringValue | IntValue | (PrimValue | BytesValue | StringValue | IntValue)[];\nexport declare const isPrim: (value: MichelsonValue) => value is PrimValue;\nexport declare const isBytes: (value: MichelsonValue) => value is BytesValue;\nexport declare const isString: (value: MichelsonValue) => value is StringValue;\nexport declare const isInt: (value: MichelsonValue) => value is IntValue;\nexport declare const scriptEncoder: Encoder<{\n code: MichelsonValue;\n storage: MichelsonValue;\n}>;\nexport declare const scriptDecoder: Decoder;\nexport declare const valueEncoder: Encoder;\nexport declare const valueDecoder: Decoder;\nexport declare const extractRequiredLen: (value: Uint8ArrayConsumer, bytesLength?: number) => Uint8Array;\n/**\n * @description parse bytes into multiple items of an array\n * @param value Uint8ArrayConsumer class of forged segment to parse\n * @param bytesLength default 4 bytes for length of variable bytes\n * @returns array of Uint8Array values for each array item\n */\nexport declare const stripLengthPrefixFromBytes: (value: Uint8ArrayConsumer, bytesLength?: number) => Uint8Array[];\nexport declare const bytesEncoder: Encoder;\nexport declare const bytesDecoder: Decoder;\nexport declare const stringEncoder: Encoder;\nexport declare const stringDecoder: Decoder;\nexport declare const intEncoder: Encoder;\nexport declare const intDecoder: (value: Uint8ArrayConsumer) => IntValue;\nexport declare const primEncoder: Encoder;\nexport declare const primDecoder: (value: Uint8ArrayConsumer, preamble: Uint8Array) => Partial;\nexport declare const primViewDecoder: (value: Uint8ArrayConsumer, result: Partial) => Partial;\nexport declare const decodeCombPair: Decoder;\nexport declare const encodeAnnots: Encoder;\nexport declare const decodeAnnots: Decoder;\n"},{name:"@taquito/local-forging/dist/types/schema/operation.d.ts",dts:"import { Decoder } from '../decoder';\nimport { Uint8ArrayConsumer } from '../uint8array-consumer';\nimport { CODEC } from '../constants';\nexport declare const ManagerOperationSchema: {\n branch: CODEC;\n contents: CODEC[];\n};\nexport declare const ActivationSchema: {\n pkh: CODEC;\n secret: CODEC;\n};\nexport declare const RevealSchema: {\n source: CODEC;\n fee: CODEC;\n counter: CODEC;\n gas_limit: CODEC;\n storage_limit: CODEC;\n public_key: CODEC;\n};\nexport declare const DelegationSchema: {\n source: CODEC;\n fee: CODEC;\n counter: CODEC;\n gas_limit: CODEC;\n storage_limit: CODEC;\n delegate: CODEC;\n};\nexport declare const TransactionSchema: {\n source: CODEC;\n fee: CODEC;\n counter: CODEC;\n gas_limit: CODEC;\n storage_limit: CODEC;\n amount: CODEC;\n destination: CODEC;\n parameters: CODEC;\n};\nexport declare const OriginationSchema: {\n source: CODEC;\n fee: CODEC;\n counter: CODEC;\n gas_limit: CODEC;\n storage_limit: CODEC;\n balance: CODEC;\n delegate: CODEC;\n script: CODEC;\n};\nexport declare const BallotSchema: {\n source: CODEC;\n period: CODEC;\n proposal: CODEC;\n ballot: CODEC;\n};\nexport declare const AttestationSchema: {\n slot: CODEC;\n level: CODEC;\n round: CODEC;\n block_payload_hash: CODEC;\n};\nexport declare const AttestationWithDalSchema: {\n slot: CODEC;\n level: CODEC;\n round: CODEC;\n block_payload_hash: CODEC;\n dal_attestation: CODEC;\n};\nexport declare const SeedNonceRevelationSchema: {\n level: CODEC;\n nonce: CODEC;\n};\nexport declare const ProposalsSchema: {\n source: CODEC;\n period: CODEC;\n proposals: CODEC;\n};\nexport declare const RegisterGlobalConstantSchema: {\n source: CODEC;\n fee: CODEC;\n counter: CODEC;\n gas_limit: CODEC;\n storage_limit: CODEC;\n value: CODEC;\n};\nexport declare const TransferTicketSchema: {\n source: CODEC;\n fee: CODEC;\n counter: CODEC;\n gas_limit: CODEC;\n storage_limit: CODEC;\n ticket_contents: CODEC;\n ticket_ty: CODEC;\n ticket_ticketer: CODEC;\n ticket_amount: CODEC;\n destination: CODEC;\n entrypoint: CODEC;\n};\nexport declare const IncreasePaidStorageSchema: {\n source: CODEC;\n fee: CODEC;\n counter: CODEC;\n gas_limit: CODEC;\n storage_limit: CODEC;\n amount: CODEC;\n destination: CODEC;\n};\nexport declare const UpdateConsensusKeySchema: {\n source: CODEC;\n fee: CODEC;\n counter: CODEC;\n gas_limit: CODEC;\n storage_limit: CODEC;\n pk: CODEC;\n};\nexport declare const DrainDelegateSchema: {\n consensus_key: CODEC;\n delegate: CODEC;\n destination: CODEC;\n};\nexport declare const SetDepositsLimitSchema: {\n source: CODEC;\n fee: CODEC;\n counter: CODEC;\n gas_limit: CODEC;\n storage_limit: CODEC;\n limit: CODEC;\n};\nexport declare const SmartRollupOriginateSchema: {\n source: CODEC;\n fee: CODEC;\n counter: CODEC;\n gas_limit: CODEC;\n storage_limit: CODEC;\n pvm_kind: CODEC;\n kernel: CODEC;\n parameters_ty: CODEC;\n whitelist: CODEC;\n};\nexport declare const SmartRollupAddMessagesSchema: {\n source: CODEC;\n fee: CODEC;\n counter: CODEC;\n gas_limit: CODEC;\n storage_limit: CODEC;\n message: CODEC;\n};\nexport declare const SmartRollupExecuteOutboxMessageSchema: {\n source: CODEC;\n fee: CODEC;\n counter: CODEC;\n gas_limit: CODEC;\n storage_limit: CODEC;\n rollup: CODEC;\n cemented_commitment: CODEC;\n output_proof: CODEC;\n};\nexport declare const DalPublishCommitmentSchema: {\n source: CODEC;\n fee: CODEC;\n counter: CODEC;\n gas_limit: CODEC;\n storage_limit: CODEC;\n slot_header: CODEC;\n};\nexport declare const FailingNoopSchema: {\n arbitrary: CODEC;\n};\nexport declare const operationEncoder: (encoders: {\n [key: string]: (val: object) => string;\n}) => (operation: {\n kind: string;\n}) => string;\nexport declare const operationDecoder: (decoders: {\n [key: string]: Decoder;\n}) => (value: Uint8ArrayConsumer) => {\n kind: string;\n};\ntype Schema = Record;\nexport type Value = Record;\nexport declare const schemaEncoder: (encoders: {\n [key: string]: (val: object) => string;\n}) => (schema: Schema) => (value: Value) => string;\nexport declare const schemaDecoder: (decoders: {\n [key: string]: Decoder;\n}) => (schema: {\n [key: string]: string | string[];\n}) => (value: Uint8ArrayConsumer) => {};\nexport {};\n"},{name:"@taquito/local-forging/dist/types/codec.d.ts",dts:"import { Prefix } from '@taquito/utils';\nimport { MichelsonValue } from './michelson/codec';\nimport { Uint8ArrayConsumer } from './uint8array-consumer';\nexport declare const prefixEncoder: (prefix: Prefix) => (str: string) => string;\nexport declare const prefixDecoder: (pre: Prefix) => (str: Uint8ArrayConsumer) => string;\nexport declare const tz1Decoder: (str: Uint8ArrayConsumer) => string;\nexport declare const branchDecoder: (str: Uint8ArrayConsumer) => string;\nexport declare const publicKeyHashDecoder: (val: Uint8ArrayConsumer) => string | undefined;\nexport declare const publicKeyHashesDecoder: (val: Uint8ArrayConsumer) => (string | undefined)[] | undefined;\nexport declare const branchEncoder: (str: string) => string;\nexport declare const tz1Encoder: (str: string) => string;\nexport declare const boolEncoder: (bool: unknown) => string;\nexport declare const proposalEncoder: (proposal: string) => string;\nexport declare const proposalDecoder: (proposal: Uint8ArrayConsumer) => string;\nexport declare const proposalsDecoder: (proposal: Uint8ArrayConsumer) => string[];\nexport declare const proposalsEncoder: (proposals: string[]) => string;\nexport declare const ballotEncoder: (ballot: string) => string;\nexport declare const ballotDecoder: (ballot: Uint8ArrayConsumer) => string;\nexport declare const pvmKindEncoder: (pvm: string) => string;\nexport declare const pvmKindDecoder: (pvm: Uint8ArrayConsumer) => string;\nexport declare const delegateEncoder: (val: string) => string;\nexport declare const int32Encoder: (val: number | string) => string;\nexport declare const int32Decoder: (val: Uint8ArrayConsumer) => number;\nexport declare const int16Encoder: (val: number | string) => string;\nexport declare const int16Decoder: (val: Uint8ArrayConsumer) => number;\nexport declare const boolDecoder: (val: Uint8ArrayConsumer) => boolean;\nexport declare const delegateDecoder: (val: Uint8ArrayConsumer) => string | undefined;\nexport declare const publicKeyHashEncoder: (val: string) => string;\nexport declare const publicKeyHashesEncoder: (val?: string[]) => string;\nexport declare const publicKeyEncoder: (val: string) => string;\nexport declare const addressEncoder: (val: string) => string;\nexport declare const smartRollupAddressEncoder: (val: string) => string;\nexport declare const smartContractAddressEncoder: (val: string) => string;\nexport declare const publicKeyDecoder: (val: Uint8ArrayConsumer) => string;\nexport declare const smartRollupCommitmentHashEncoder: (val: string) => string;\nexport declare const addressDecoder: (val: Uint8ArrayConsumer) => string | undefined;\nexport declare const smartRollupAddressDecoder: (val: Uint8ArrayConsumer) => string;\nexport declare const smartContractAddressDecoder: (val: Uint8ArrayConsumer) => string;\nexport declare const smartRollupCommitmentHashDecoder: (val: Uint8ArrayConsumer) => string;\nexport declare const zarithEncoder: (n: string) => string;\nexport declare const zarithDecoder: (n: Uint8ArrayConsumer) => string;\nexport declare const entrypointDecoder: (value: Uint8ArrayConsumer) => string;\nexport declare const parametersDecoder: (val: Uint8ArrayConsumer) => {\n entrypoint: string;\n value: string | number | object | undefined;\n} | undefined;\nexport declare const entrypointEncoder: (entrypoint: string) => string;\nexport declare const parametersEncoder: (val: {\n entrypoint: string;\n value: MichelsonValue;\n}) => string;\nexport declare const valueParameterEncoder: (value: MichelsonValue) => string;\nexport declare const valueParameterDecoder: (val: Uint8ArrayConsumer) => string | number | object | undefined;\nexport declare const blockPayloadHashEncoder: (str: string) => string;\nexport declare const blockPayloadHashDecoder: (str: Uint8ArrayConsumer) => string;\nexport declare const entrypointNameEncoder: (entrypoint: string) => string;\nexport declare const entrypointNameDecoder: (val: Uint8ArrayConsumer) => string;\nexport declare const burnLimitEncoder: (val: string) => string;\nexport declare const burnLimitDecoder: (value: Uint8ArrayConsumer) => string | undefined;\nexport declare const depositsLimitEncoder: (val: string) => string;\nexport declare const depositsLimitDecoder: (value: Uint8ArrayConsumer) => string | undefined;\nexport declare const paddedBytesEncoder: (val: string, paddingLength?: number) => string;\nexport declare const paddedBytesDecoder: (val: Uint8ArrayConsumer) => string;\nexport declare const smartRollupMessageEncoder: (val: string[]) => string;\nexport declare const smartRollupMessageDecoder: (val: Uint8ArrayConsumer) => string[];\nexport declare const dalCommitmentEncoder: (val: string) => string;\nexport declare const dalCommitmentDecoder: (val: Uint8ArrayConsumer) => string;\nexport declare const slotHeaderEncoder: (val: {\n slot_index: number;\n commitment: string;\n commitment_proof: string;\n}) => string;\nexport declare const slotHeaderDecoder: (val: Uint8ArrayConsumer) => {\n slot_index: number;\n commitment: string;\n commitment_proof: string;\n};\n"},{name:"@taquito/local-forging/dist/types/constants.d.ts",dts:'export declare const ENTRYPOINT_MAX_LENGTH = 31;\nexport declare enum CODEC {\n SECRET = "secret",\n RAW = "raw",\n TZ1 = "tz1",\n BRANCH = "branch",\n ZARITH = "zarith",\n PUBLIC_KEY = "public_key",\n PKH = "pkh",\n PKH_ARR = "pkhArr",\n DELEGATE = "delegate",\n SCRIPT = "script",\n BALLOT_STATEMENT = "ballotStmt",\n PROPOSAL = "proposal",\n PROPOSAL_ARR = "proposalArr",\n INT32 = "int32",\n INT16 = "int16",\n PARAMETERS = "parameters",\n ADDRESS = "address",\n SMART_CONTRACT_ADDRESS = "smart_contract_address",\n SMART_ROLLUP_ADDRESS = "smart_rollup_address",\n SMART_ROLLUP_COMMITMENT_HASH = "smart_rollup_commitment_hash",\n VALUE = "value",\n PADDED_BYTES = "padded_bytes",\n SMART_ROLLUP_MESSAGE = "smart_rollup_message",\n MANAGER = "manager",\n BLOCK_PAYLOAD_HASH = "blockPayloadHash",\n ENTRYPOINT = "entrypoint",\n OPERATION = "operation",\n OP_ACTIVATE_ACCOUNT = "activate_account",\n OP_DELEGATION = "delegation",\n OP_TRANSACTION = "transaction",\n OP_ORIGINATION = "origination",\n OP_BALLOT = "ballot",\n OP_FAILING_NOOP = "failing_noop",\n OP_ATTESTATION = "attestation",\n OP_ATTESTATION_WITH_DAL = "attestation_with_dal",\n OP_SEED_NONCE_REVELATION = "seed_nonce_revelation",\n OP_REVEAL = "reveal",\n OP_PROPOSALS = "proposals",\n OP_REGISTER_GLOBAL_CONSTANT = "register_global_constant",\n OP_TRANSFER_TICKET = "transfer_ticket",\n BURN_LIMIT = "burn_limit",\n OP_INCREASE_PAID_STORAGE = "increase_paid_storage",\n OP_UPDATE_CONSENSUS_KEY = "update_consensus_key",\n OP_DRAIN_DELEGATE = "drain_delegate",\n DEPOSITS_LIMIT = "deposits_limit",\n OP_SET_DEPOSITS_LIMIT = "set_deposits_limit",\n OP_SMART_ROLLUP_ORIGINATE = "smart_rollup_originate",\n PVM_KIND = "pvm_kind",\n OP_SMART_ROLLUP_ADD_MESSAGES = "smart_rollup_add_messages",\n OP_SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE = "smart_rollup_execute_outbox_message",\n OP_DAL_PUBLISH_COMMITMENT = "dal_publish_commitment",\n SLOT_HEADER = "slot_header"\n}\nexport declare const opMapping: {\n [key: string]: string;\n};\nexport declare const opMappingReverse: {\n [key: string]: string;\n};\nexport declare const kindMapping: {\n [key: number]: string;\n};\nexport declare const kindMappingReverse: {\n [key: string]: string;\n};\nexport declare const entrypointMapping: {\n [key: string]: string;\n};\nexport declare const entrypointMappingReverse: {\n [key: string]: string;\n};\n'},{name:"@taquito/local-forging/dist/types/decoder.d.ts",dts:"import { Uint8ArrayConsumer } from './uint8array-consumer';\nexport type Decoder = (val: Uint8ArrayConsumer) => string | number | object | undefined;\nexport declare const decoders: {\n [key: string]: Decoder;\n};\n"},{name:"@taquito/local-forging/dist/types/encoder.d.ts",dts:"export type Encoder = (val: T) => string;\nexport declare const encoders: {\n [key: string]: Encoder;\n};\n"},{name:"@taquito/local-forging/dist/types/errors.d.ts",dts:"import { ParameterValidationError } from '@taquito/core';\nimport { OperationContents } from '@taquito/rpc';\n/**\n * @category Error\n * @description Error that indicates an invalid operation content being passed or used\n */ export declare class InvalidOperationSchemaError extends ParameterValidationError {\n readonly operation: OperationContents;\n readonly errorDetail?: string | undefined;\n constructor(operation: OperationContents, errorDetail?: string | undefined);\n}\n/**\n * @category Error\n * @description Error that indicates an entrypoint name exceeding maximum length\n */\nexport declare class OversizedEntryPointError extends ParameterValidationError {\n readonly entrypoint: string;\n constructor(entrypoint: string);\n}\n/**\n * @category Error\n * @description Error that indicates an invalid ballot value being used\n */\nexport declare class InvalidBallotValueError extends ParameterValidationError {\n readonly ballotValue: string;\n constructor(ballotValue: string);\n}\n/**\n * @category Error\n * @description Error that indicates a failure when trying to decode ballot value\n */\nexport declare class DecodeBallotValueError extends ParameterValidationError {\n readonly ballotValue: string;\n constructor(ballotValue: string);\n}\n/**\n * @category Error\n * @description Error that indicates unexpected Michelson Value being passed or used\n */\nexport declare class UnexpectedMichelsonValueError extends ParameterValidationError {\n readonly value: string;\n constructor(value: string);\n}\n/**\n * @category Error\n * @description Error that indicates a failure when trying to decode an operation\n */\nexport declare class OperationDecodingError extends ParameterValidationError {\n readonly message: string;\n constructor(message: string);\n}\n/**\n * @category Error\n * @description Error that indicates a failure when trying to encode an operation\n */\nexport declare class OperationEncodingError extends ParameterValidationError {\n readonly message: string;\n constructor(message: string);\n}\n/**\n * @category Error\n * @description Error that indicates an unsupported operation being passed or used\n */\nexport declare class UnsupportedOperationError extends ParameterValidationError {\n readonly op: string;\n constructor(op: string);\n}\n/**\n * @cateogry Error\n * @description Error that indicates an unsupported pvm being passed or used\n */\nexport declare class UnsupportedPvmKindError extends ParameterValidationError {\n readonly pvm: string;\n constructor(pvm: string);\n}\n/**\n * @category Error\n * @description Error that indicates an unsupported pvm to decode\n */\nexport declare class DecodePvmKindError extends ParameterValidationError {\n readonly pvm: string;\n constructor(pvm: string);\n}\n/**\n * @category Error\n * @description Error that indicates an invalid Smart Rollup Address (sr1)\n */\nexport declare class InvalidSmartRollupAddressError extends ParameterValidationError {\n readonly address: string;\n readonly errorDetail?: string | undefined;\n constructor(address: string, errorDetail?: string | undefined);\n}\n/**\n * @category Error\n * @description Error that indicates an invalid Smart Rollup commitment hash (src1)\n */\nexport declare class InvalidSmartRollupCommitmentHashError extends ParameterValidationError {\n readonly hash: string;\n readonly errorDetail?: string | undefined;\n constructor(hash: string, errorDetail?: string | undefined);\n}\n/**\n * @category Error\n * @description Error that indicates an invalid dal commitment (sh)\n */\nexport declare class InvalidDalCommitmentError extends ParameterValidationError {\n readonly commitment: string;\n readonly errorDetail?: string | undefined;\n constructor(commitment: string, errorDetail?: string | undefined);\n}\n"},{name:"@taquito/local-forging/dist/types/interface.d.ts",dts:"import { OperationContents } from '@taquito/rpc';\nexport interface ForgeParams {\n branch: string;\n contents: OperationContents[];\n}\nexport type ForgeResponse = string;\nexport interface Forger {\n forge(params: ForgeParams): Promise;\n}\n"},{name:"@taquito/local-forging/dist/types/protocols.d.ts",dts:'export declare enum ProtocolsHash {\n Pt24m4xi = "Pt24m4xiPbLDhVgVfABUjirbmda3yohdN82Sp9FeuAXJ4eV9otd",\n PsBABY5H = "PsBABY5HQTSkA4297zNHfsZNKtxULfL18y95qb3m53QJiXGmrbU",\n PsBabyM1 = "PsBabyM1eUXZseaJdmXFApDSBqj8YBfwELoxZHHW77EMcAbbwAS",\n PsCARTHA = "PsCARTHAGazKbHtnKfLzQg3kms52kSRpgnDY982a9oYsSXRLQEb",\n PsDELPH1 = "PsDELPH1Kxsxt8f9eWbxQeRxkjfbxoqM52jvs5Y5fBxWWh4ifpo",\n PtEdo2Zk = "PtEdo2ZkT9oKpimTah6x2embF25oss54njMuPzkJTEi5RqfdZFA",\n PsFLorena = "PsFLorenaUUuikDWvMDr6fGBRG8kt3e3D3fHoXK1j1BFRxeSH4i",\n PtGRANADs = "PtGRANADsDU8R9daYKAgWnQYAJ64omN1o3KMGVCykShA97vQbvV",\n PtHangz2 = "PtHangz2aRngywmSRGGvrcTyMbbdpWdpFKuS4uMWxg2RaH9i1qx",\n Psithaca2 = "Psithaca2MLRFYargivpo7YvUr7wUDqyxrdhC5CQq78mRvimz6A",\n PtJakart2 = "PtJakart2xVj7pYXJBXrqHgd82rdkLey5ZeeGwDgPp9rhQUbSqY",\n PtKathman = "PtKathmankSpLLDALzWw7CGD2j2MtyveTwboEYokqUCP4a1LxMg",\n PtLimaPtL = "PtLimaPtLMwfNinJi9rCfDPWea8dFgTZ1MeJ9f1m2SRic6ayiwW",\n PtMumbaii = "PtMumbaiiFFEGbew1rRjzSPyzRbA51Tm3RVZL5suHPxSZYDhCEc",\n PtMumbai2 = "PtMumbai2TmsJHNGRkD8v8YDbtao7BLUC3wjASn1inAKLFCjaH1",\n PtNairobi = "PtNairobiyssHuh87hEhfVBGCVrK3WnS8Z2FT4ymB5tAa4r1nQf",\n ProxfordY = "ProxfordYmVfjWnRcgjWH36fW6PArwqykTFzotUxRs6gmTcZDuH",\n PtParisBx = "PtParisBxoLz5gzMmn3d9WBQNoPSZakgnkMC2VNuQ3KXfUtUQeZ",\n PsParisCZ = "PsParisCZo7KAh1Z1smVd9ZMZ1HHn5gkzbM94V3PLCpknFWhUAi",\n ProtoALpha = "ProtoALphaALphaALphaALphaALphaALphaALphaALphaDdp3zK"\n}\nexport declare function ProtoInferiorTo(a: ProtocolsHash, b: ProtocolsHash): boolean;\n'},{name:"@taquito/local-forging/dist/types/taquito-local-forging.d.ts",dts:"/**\n * @packageDocumentation\n * @module @taquito/local-forging\n */\nimport { ForgeParams, Forger } from './interface';\nimport { CODEC } from './constants';\nimport { ProtocolsHash } from './protocols';\nexport { CODEC, opMapping, opMappingReverse } from './constants';\nexport * from './decoder';\nexport * from './encoder';\nexport * from './uint8array-consumer';\nexport * from './interface';\nexport { VERSION } from './version';\nexport { ProtocolsHash } from './protocols';\nexport declare function getCodec(codec: CODEC, _proto: ProtocolsHash): {\n encoder: import(\"./encoder\").Encoder;\n decoder: (hex: string) => any;\n};\nexport declare class LocalForger implements Forger {\n readonly protocolHash: ProtocolsHash;\n constructor(protocolHash?: ProtocolsHash);\n private codec;\n forge(params: ForgeParams): Promise;\n parse(hex: string): Promise;\n}\nexport declare const localForger: LocalForger;\n"},{name:"@taquito/local-forging/dist/types/uint8array-consumer.d.ts",dts:"export declare class Uint8ArrayConsumer {\n private readonly arr;\n private offset;\n static fromHexString(hex: string): Uint8ArrayConsumer;\n constructor(arr: Uint8Array, offset?: number);\n consume(count: number): Uint8Array;\n get(idx: number): number;\n length(): number;\n slice(start: number, end?: number): Uint8ArrayConsumer;\n}\n"},{name:"@taquito/local-forging/dist/types/utils.d.ts",dts:"export declare const concat: (...arr: Uint8Array[]) => Uint8Array;\nexport declare const toHexString: (bytes: Uint8Array) => string;\nexport declare const pad: (num: number, paddingLen?: number) => string;\n"},{name:"@taquito/local-forging/dist/types/validator.d.ts",dts:"import { OpKind } from '@taquito/rpc';\nimport { OperationContents } from '@taquito/rpc';\n/**\n * @returns A boolean value to indicate whether the operation kind is valid or not\n */\nexport declare const validateOperationKind: (opKind: OpKind) => boolean;\n/**\n * returns 0 when the two array of properties are identical or the passed property\n * does not have any missing parameters from the corresponding schema\n *\n * @returns array element differences if there are missing required property keys\n */\nexport declare const validateMissingProperty: (operationContent: OperationContents) => string[];\n"},{name:"@taquito/local-forging/dist/types/version.d.ts",dts:"export declare const VERSION: {\n commitHash: string;\n version: string;\n};\n"},{name:"@taquito/michel-codec/dist/types/base58.d.ts",dts:"import { TaquitoError } from '@taquito/core';\n/**\n * @category Error\n * @description Error that indicates a failure when decoding a base58 encoding\n */\nexport declare class Base58DecodingError extends TaquitoError {\n readonly message: string;\n constructor(message: string);\n}\nexport declare function decodeBase58(src: string): number[];\nexport declare function encodeBase58(src: number[] | Uint8Array): string;\nexport declare function decodeBase58Check(src: string): number[];\nexport declare function encodeBase58Check(src: number[] | Uint8Array): string;\n"},{name:"@taquito/michel-codec/dist/types/binary.d.ts",dts:'import { BytesLiteral } from \'./micheline\';\nimport { MichelsonData, MichelsonType } from \'./michelson-types\';\ntype AddressType = \'ED25519PublicKeyHash\' | \'SECP256K1PublicKeyHash\' | \'P256PublicKeyHash\' | \'ContractHash\';\nexport interface Address {\n type: AddressType;\n hash: number[] | Uint8Array;\n entryPoint?: string;\n}\nexport type PublicKeyType = \'ED25519PublicKey\' | \'SECP256K1PublicKey\' | \'P256PublicKey\';\nexport interface PublicKey {\n type: PublicKeyType;\n publicKey: number[] | Uint8Array;\n}\n/**\n * Serializes any value of packable type to its optimized binary representation\n * identical to the one used by PACK and UNPACK Michelson instructions.\n * Without a type definition (not recommended) the data will be encoded as a binary form of a generic Michelson expression.\n * Type definition allows some types like `timestamp` and `address` and other base58 representable types to be encoded to\n * corresponding optimized binary forms borrowed from the Tezos protocol\n *\n * ```typescript\n * const data: MichelsonData = {\n * string: "KT1RvkwF4F7pz1gCoxkyZrG1RkrxQy3gmFTv%foo"\n * };\n *\n * const typ: MichelsonType = {\n * prim: "address"\n * };\n *\n * const packed = packData(data, typ);\n *\n * // 050a0000001901be41ee922ddd2cf33201e49d32da0afec571dce300666f6f\n * ```\n *\n * Without a type definition the base58 encoded address will be treated as a string\n * ```typescript\n * const data: MichelsonData = {\n * string: "KT1RvkwF4F7pz1gCoxkyZrG1RkrxQy3gmFTv%foo"\n * };\n *\n * const packed = packData(data);\n *\n * // 0501000000284b543152766b7746344637707a3167436f786b795a724731526b7278517933676d46547625666f6f\n * ```\n * @param d Data object\n * @param t Optional type definition\n * @returns Binary representation as numeric array\n */\nexport declare function packData(d: MichelsonData, t?: MichelsonType): number[];\n/**\n * Serializes any value of packable type to its optimized binary representation\n * identical to the one used by PACK and UNPACK Michelson instructions.\n * Same as {@link packData} but returns a `bytes` Michelson data literal instead of an array\n *\n * ```typescript\n * const data: MichelsonData = {\n * string: "2019-09-26T10:59:51Z"\n * };\n *\n * const typ: MichelsonType = {\n * prim: "timestamp"\n * };\n *\n * const packed = packDataBytes(data, typ);\n *\n * // { bytes: "0500a7e8e4d80b" }\n * ```\n * @param d Data object\n * @param t Optional type definition\n * @returns Binary representation as a bytes literal\n */\nexport declare function packDataBytes(d: MichelsonData, t?: MichelsonType): BytesLiteral;\n/**\n * Deserialize a byte array into the corresponding Michelson value.\n * Without a type definition (not recommended) the binary data will be treated as a binary form of a generic Michelson expression and returned as is.\n * Type definition allows some types like `timestamp` and `address` and other types usually encoded in optimized binary forms to be transformed\n * back to their string representations like base58 and ISO timestamps.\n *\n * ```typescript\n * const src = [0x05, 0x00, 0xa7, 0xe8, 0xe4, 0xd8, 0x0b];\n *\n * const typ: MichelsonType = {\n * prim: "timestamp"\n * };\n *\n * const data = unpackData(src, typ);\n *\n * // { string: "2019-09-26T10:59:51Z" }\n * ```\n *\n * Same binary data without a type definition\n * ```typescript\n * const src = [0x05, 0x00, 0xa7, 0xe8, 0xe4, 0xd8, 0x0b];\n *\n * const data = unpackData(src);\n *\n * // { int: "1569495591" }\n * ```\n * @param src Byte array\n * @param t Optional type definition\n * @returns Deserialized data\n */\nexport declare function unpackData(src: number[] | Uint8Array, t?: MichelsonType): MichelsonData;\n/**\n * Deserialize a byte array into the corresponding Michelson value.\n * Same as {@link unpackData} but takes a `bytes` Michelson data literal instead of an array\n *\n * ```typescript\n * const src = { bytes: "0500a7e8e4d80b" };\n *\n * const typ: MichelsonType = {\n * prim: "timestamp"\n * };\n *\n * const data = unpackDataBytes(src, typ);\n *\n * // { string: "2019-09-26T10:59:51Z" }\n * ```\n * @param src Bytes object\n * @param t Optional type definition\n * @returns Deserialized data\n */\nexport declare function unpackDataBytes(src: BytesLiteral, t?: MichelsonType): MichelsonData;\nexport declare function decodeAddressBytes(b: BytesLiteral): Address;\nexport declare function decodePublicKeyHashBytes(b: BytesLiteral): Address;\nexport declare function decodePublicKeyBytes(b: BytesLiteral): PublicKey;\nexport {};\n'},{name:"@taquito/michel-codec/dist/types/errors.d.ts",dts:"import { ParameterValidationError, TaquitoError } from '@taquito/core';\n/**\n * @category Error\n * @description Error that indicates an invalid Michelson being passed or used\n */\nexport declare class InvalidMichelsonError extends ParameterValidationError {\n readonly message: string;\n constructor(message: string);\n}\n/**\n * @category Error\n * @description Error that indicates an invalid type expression being passed or used\n */\nexport declare class InvalidTypeExpressionError extends ParameterValidationError {\n readonly message: string;\n constructor(message: string);\n}\n/**\n * @category Error\n * @description Error that indicates an invalid data expression being passed or used\n */\nexport declare class InvalidDataExpressionError extends ParameterValidationError {\n readonly message: string;\n constructor(message: string);\n}\n/**\n * @category Error\n * @description Error that indicates an invalid contract entrypoint being referenced or passed\n */\nexport declare class InvalidEntrypointError extends ParameterValidationError {\n readonly entrypoint?: string | undefined;\n constructor(entrypoint?: string | undefined);\n}\n/**\n * @category Error\n * @description Error that indicates a failure happening when trying to encode Tezos ID\n */\nexport declare class TezosIdEncodeError extends ParameterValidationError {\n readonly message: string;\n constructor(message: string);\n}\n/**\n * @category Error\n * @description Error that indicates a general error happening when trying to create a LongInteger\n */\nexport declare class LongIntegerError extends TaquitoError {\n readonly message: string;\n constructor(message: string);\n}\n/**\n * @category Error\n * @description Error that indicates a failure occurring when trying to parse a hex byte\n */\nexport declare class HexParseError extends TaquitoError {\n readonly hexByte: string;\n constructor(hexByte: string);\n}\n"},{name:"@taquito/michel-codec/dist/types/formatters.d.ts",dts:"import { InstructionTrace } from './michelson-typecheck';\nimport { MichelsonError } from './utils';\nimport { MichelsonReturnType } from './michelson-types';\nexport declare function formatStack(s: MichelsonReturnType): string;\nexport declare function traceDumpFunc(blocks: boolean, cb: (s: string) => void): (v: InstructionTrace) => void;\nexport declare function formatError(err: MichelsonError): string;\n"},{name:"@taquito/michel-codec/dist/types/global-constants.d.ts",dts:"import { Prim, Expr } from './micheline';\nimport { GlobalConstantHashAndValue } from './micheline-parser';\nexport declare function expandGlobalConstants(ex: Prim, hashAndValue: GlobalConstantHashAndValue): Expr;\n"},{name:"@taquito/michel-codec/dist/types/macros.d.ts",dts:"import { TaquitoError } from '@taquito/core';\nimport { Prim, Expr } from './micheline';\nimport { ProtocolOptions } from './michelson-types';\n/**\n * @category Error\n * @description Error that indicates macros failed to be expanded\n */\nexport declare class MacroError extends TaquitoError {\n readonly prim: Prim;\n readonly message: string;\n constructor(prim: Prim, message: string);\n}\nexport declare function expandMacros(ex: Prim, opt?: ProtocolOptions): Expr;\n"},{name:"@taquito/michel-codec/dist/types/micheline-emitter.d.ts",dts:"import { Expr } from './micheline';\nexport interface FormatOptions {\n /**\n * A string used for code indentation if desired. Usually a tab character or a number of spaces.\n */\n indent?: string;\n /**\n * A string used for line separation. Usually a newline character (\"\\n\");\n */\n newline?: string;\n}\n/**\n * Formats Micheline expression\n * @param expr An AST node\n * @param opt Options\n */\nexport declare function emitMicheline(expr: Expr, opt?: FormatOptions, foldMacros?: boolean): string;\n"},{name:"@taquito/michel-codec/dist/types/micheline-parser.d.ts",dts:'import { Token } from \'./scan\';\nimport { Expr } from \'./micheline\';\nimport { ProtocolOptions } from \'./michelson-types\';\nimport { TaquitoError } from \'@taquito/core\';\n/**\n * @category Error\n * @description Error that indicates a failure when parsing Micheline expressions\n */\nexport declare class MichelineParseError extends TaquitoError {\n readonly token: Token | null;\n readonly message: string;\n /**\n * @param token A token caused the error\n * @param message An error message\n */\n constructor(token: Token | null, message: string);\n}\n/**\n * @category Error\n * @description Error indicates a failure when parsing Micheline JSON\n */\nexport declare class JSONParseError extends TaquitoError {\n readonly node: unknown;\n readonly message: string;\n /**\n * @param node A node caused the error\n * @param message An error message\n */\n constructor(node: unknown, message: string);\n}\nexport interface GlobalConstantHashAndValue {\n [globalConstantHash: string]: Expr;\n}\nexport interface ParserOptions extends ProtocolOptions {\n /**\n * Expand [Michelson macros](https://tezos.gitlab.io/whitedoc/michelson.html#macros) during parsing.\n */\n expandMacros?: boolean;\n /**\n * Expand global constants during parsing.\n * `expandGlobalConstant` expects an object where the keys are global constant hashes and the values are the corresponding JSON Micheline expressions.\n * @example\n * ```\n * const parserOptions: ParserOptions = {\n * expandGlobalConstant: {\n * \'expr...\': { prim: \'DROP\', args: [{ int: \'2\' }] }\n * }\n * }\n *\n * const p = new Parser(parserOptions);\n * ```\n */\n expandGlobalConstant?: GlobalConstantHashAndValue;\n}\n/**\n * Converts and validates Michelson expressions between JSON-based Michelson and Micheline\n *\n * Pretty Print a Michelson Smart Contract:\n * ```\n * const contract = await Tezos.contract.at("KT1Vsw3kh9638gqWoHTjvHCoHLPKvCbMVbCg");\n * const p = new Parser();\n *\n * const michelsonCode = p.parseJSON(contract.script.code);\n * const storage = p.parseJSON(contract.script.storage);\n *\n * console.log("Pretty print Michelson smart contract:");\n * console.log(emitMicheline(michelsonCode, {indent:" ", newline: "\\n",}));\n *\n * console.log("Pretty print Storage:");\n * console.log(emitMicheline(storage, {indent:" ", newline: "\\n",}));\n * ```\n *\n * Encode a Michelson expression for initial storage of a smart contract\n * ```\n * const src = `(Pair (Pair { Elt 1\n * (Pair (Pair "tz1gjaF81ZRRvdzjobyfVNsAeSC6PScjfQwN" "tz1KqTpEZ7Yob7QbPE4Hy4Wo8fHG8LhKxZSx")\n * 0x0501000000026869) }\n * 10000000)\n * (Pair 2 333))`;\n *\n * const p = new Parser();\n *\n * const exp = p.parseMichelineExpression(src);\n * console.log(JSON.stringify(exp));\n * ```\n */\nexport declare class Parser {\n private opt?;\n constructor(opt?: ParserOptions | undefined);\n private expand;\n private parseListExpr;\n private parseArgs;\n private parseSequenceExpr;\n private parseExpr;\n /**\n * Parses a Micheline sequence expression, such as smart contract source. Enclosing curly brackets may be omitted.\n * @param src A Micheline sequence `{parameter ...; storage int; code { DUP ; ...};}` or `parameter ...; storage int; code { DUP ; ...};`\n */\n parseSequence(src: string): Expr[] | null;\n /**\n * Parse a Micheline sequence expression. Enclosing curly brackets may be omitted.\n * @param src A Michelson list expression such as `(Pair {Elt "0" 0} 0)` or `Pair {Elt "0" 0} 0`\n * @returns An AST node or null for empty document.\n */\n parseList(src: string): Expr | null;\n /**\n * Parse any Michelson expression\n * @param src A Michelson expression such as `(Pair {Elt "0" 0} 0)` or `{parameter ...; storage int; code { DUP ; ...};}`\n * @returns An AST node or null for empty document.\n */\n parseMichelineExpression(src: string): Expr | null;\n /**\n * Parse a Micheline sequence expression, such as smart contract source. Enclosing curly brackets may be omitted.\n * An alias for `parseSequence`\n * @param src A Micheline sequence `{parameter ...; storage int; code { DUP ; ...};}` or `parameter ...; storage int; code { DUP ; ...};`\n */\n parseScript(src: string): Expr[] | null;\n /**\n * Parse a Micheline sequence expression. Enclosing curly brackets may be omitted.\n * An alias for `parseList`\n * @param src A Michelson list expression such as `(Pair {Elt "0" 0} 0)` or `Pair {Elt "0" 0} 0`\n * @returns An AST node or null for empty document.\n */\n parseData(src: string): Expr | null;\n /**\n * Takes a JSON-encoded Michelson, validates it, strips away unneeded properties and optionally expands macros (See {@link ParserOptions}).\n * @param src An object containing JSON-encoded Michelson, usually returned by `JSON.parse()`\n */\n parseJSON(src: object): Expr;\n}\n'},{name:"@taquito/michel-codec/dist/types/micheline.d.ts",dts:"export type SourceReference = {\n first: number;\n last: number;\n macro?: Expr;\n globalConstant?: Expr;\n};\nexport declare const sourceReference: unique symbol;\nexport interface Node {\n [sourceReference]?: SourceReference;\n}\n/**\n * An AST node representing Michelson string literal.\n */\nexport interface StringLiteral extends Node {\n string: string;\n}\n/**\n * An AST node representing Michelson int literal.\n */\nexport interface IntLiteral extends Node {\n int: T;\n}\n/**\n * An AST node representing Michelson bytes literal.\n */\nexport interface BytesLiteral extends Node {\n bytes: string;\n}\n/**\n * An AST node representing Michelson primitive.\n */\nexport interface Prim extends Node {\n prim: PT;\n args?: AT;\n annots?: string[];\n}\nexport type List = T[] & Node;\ninterface ExprList extends List {\n}\n/**\n * An AST node representing valid Michelson expression. Directly corresponds to JSON-encoded Michelson node\n */\nexport type Expr = Prim | StringLiteral | IntLiteral | BytesLiteral | ExprList;\nexport {};\n"},{name:"@taquito/michel-codec/dist/types/michelson-contract.d.ts",dts:"import { MichelsonContract, MichelsonContractSection, MichelsonType, MichelsonData, MichelsonCode, MichelsonReturnType } from './michelson-types';\nimport { InstructionTrace } from './michelson-typecheck';\nimport { ParserOptions } from './micheline-parser';\nexport interface ContractOptions extends ParserOptions {\n traceCallback?: (t: InstructionTrace) => void;\n}\nexport declare class Contract {\n readonly contract: MichelsonContract;\n private ctx;\n readonly output: MichelsonReturnType;\n constructor(contract: MichelsonContract, opt?: ContractOptions);\n static parse(src: string | object, opt?: ContractOptions): Contract;\n static parseTypeExpression(src: string | object, opt?: ParserOptions): MichelsonType;\n static parseDataExpression(src: string | object, opt?: ParserOptions): MichelsonData;\n section(section: T): MichelsonContractSection;\n entryPoints(): [string, MichelsonType][];\n entryPoint(ep?: string): MichelsonType | null;\n assertDataValid(d: MichelsonData, t: MichelsonType): void;\n isDataValid(d: MichelsonData, t: MichelsonType): boolean;\n assertParameterValid(ep: string | null, d: MichelsonData): void;\n isParameterValid(ep: string | null, d: MichelsonData): boolean;\n functionType(inst: MichelsonCode, stack: MichelsonType[]): MichelsonReturnType;\n}\nexport declare const dummyContract: Contract;\n"},{name:"@taquito/michel-codec/dist/types/michelson-typecheck.d.ts",dts:"import { MichelsonType, MichelsonData, MichelsonCode, MichelsonContract, MichelsonContractSection, MichelsonReturnType, MichelsonContractView } from './michelson-types';\nimport { MichelsonError } from './utils';\nimport { ParserOptions } from './micheline-parser';\nexport interface Context extends ParserOptions {\n contract?: MichelsonContract;\n traceCallback?: (t: InstructionTrace) => void;\n}\nexport declare class MichelsonInstructionError extends MichelsonError {\n readonly val: MichelsonCode;\n readonly stackState: MichelsonReturnType;\n readonly message: string;\n /**\n * @param val Value of a type node caused the error\n * @param stackState Current stack state\n * @param message An error message\n */\n constructor(val: MichelsonCode, stackState: MichelsonReturnType, message: string);\n}\nexport declare function assertTypeAnnotationsValid(t: MichelsonType, field?: boolean): void;\nexport interface InstructionTrace {\n op: MichelsonCode;\n in: MichelsonType[];\n out: MichelsonReturnType;\n}\nexport declare function contractSection(contract: MichelsonContract, section: T): MichelsonContractSection;\nexport declare function contractViews(contract: MichelsonContract): {\n [name: string]: MichelsonContractView;\n};\nexport declare function contractEntryPoint(src: MichelsonContract | MichelsonType, ep?: string): MichelsonType | null;\nexport declare function contractEntryPoints(src: MichelsonContract | MichelsonType): [string, MichelsonType][];\nexport declare function assertContractValid(contract: MichelsonContract, ctx?: Context): MichelsonReturnType;\nexport declare function assertDataValid(d: MichelsonData, t: MichelsonType, ctx?: Context): void;\nexport declare function functionType(inst: MichelsonCode, stack: MichelsonType[], ctx?: Context): MichelsonReturnType;\nexport declare function assertTypesEqual(a: T1, b: T2, field?: boolean): void;\nexport declare function isTypeAnnotationsValid(t: MichelsonType, field?: boolean): boolean;\nexport declare function isContractValid(contract: MichelsonContract, ctx?: Context): MichelsonReturnType | null;\nexport declare function isDataValid(d: MichelsonData, t: MichelsonType, ctx?: Context): boolean;\nexport declare function isTypeEqual(a: T1, b: T2, field?: boolean): boolean;\n"},{name:"@taquito/michel-codec/dist/types/michelson-types.d.ts",dts:"import { Prim, Expr, IntLiteral, StringLiteral, BytesLiteral, List, Node } from './micheline';\ninterface Prim0 extends Prim {\n args?: never;\n}\ninterface PrimX extends Prim {\n args: AT;\n}\ntype MichelsonNoArgInstructionID = 'ABS' | 'ADD' | 'ADDRESS' | 'AMOUNT' | 'AND' | 'APPLY' | 'BALANCE' | 'BLAKE2B' | 'CAR' | 'CDR' | 'CHAIN_ID' | 'CHECK_SIGNATURE' | 'COMPARE' | 'CONCAT' | 'CONS' | 'EDIV' | 'EQ' | 'EXEC' | 'FAILWITH' | 'GE' | 'GET_AND_UPDATE' | 'GT' | 'HASH_KEY' | 'IMPLICIT_ACCOUNT' | 'INT' | 'ISNAT' | 'JOIN_TICKETS' | 'KECCAK' | 'LE' | 'LEVEL' | 'LSL' | 'LSR' | 'LT' | 'MEM' | 'MUL' | 'NEG' | 'NEQ' | 'NEVER' | 'NOT' | 'NOW' | 'OR' | 'PACK' | 'PAIRING_CHECK' | 'READ_TICKET' | 'SAPLING_VERIFY_UPDATE' | 'SELF' | 'SELF_ADDRESS' | 'SENDER' | 'SET_DELEGATE' | 'SHA256' | 'SHA3' | 'SHA512' | 'SIZE' | 'SLICE' | 'SOME' | 'SOURCE' | 'SPLIT_TICKET' | 'SUB' | 'SUB_MUTEZ' | 'SWAP' | 'TICKET' | 'TICKET_DEPRECATED' | 'TOTAL_VOTING_POWER' | 'TRANSFER_TOKENS' | 'UNIT' | 'VOTING_POWER' | 'XOR' | 'RENAME' | 'OPEN_CHEST' | 'MIN_BLOCK_TIME' | 'BYTES' | 'NAT';\ntype MichelsonRegularInstructionID = 'CONTRACT' | 'CREATE_CONTRACT' | 'DIG' | 'DIP' | 'DROP' | 'DUG' | 'DUP' | 'EMPTY_BIG_MAP' | 'EMPTY_MAP' | 'EMPTY_SET' | 'GET' | 'IF' | 'IF_CONS' | 'IF_LEFT' | 'IF_NONE' | 'ITER' | 'LAMBDA' | 'LAMBDA_REC' | 'LEFT' | 'LOOP' | 'LOOP_LEFT' | 'MAP' | 'NIL' | 'NONE' | 'PAIR' | 'PUSH' | 'RIGHT' | 'SAPLING_EMPTY_STATE' | 'UNPACK' | 'UNPAIR' | 'UPDATE' | 'CAST' | 'VIEW' | 'EMIT' | 'CREATE_ACCOUNT' | 'STEPS_TO_QUOTA';\nexport type MichelsonInstructionID = MichelsonNoArgInstructionID | MichelsonRegularInstructionID;\ntype InstrPrim = Prim;\ntype Instr0 = Prim0;\ntype InstrX = PrimX;\nexport type MichelsonCode = InstructionList | MichelsonInstruction;\nexport interface InstructionList extends List {\n}\nexport type MichelsonNoArgInstruction = Instr0;\nexport type MichelsonInstruction = MichelsonNoArgInstruction | InstrX<'DIG' | 'DUG' | 'SAPLING_EMPTY_STATE', [IntLiteral]> | InstrX<'NONE' | 'LEFT' | 'RIGHT' | 'NIL' | 'CAST', [MichelsonType]> | InstrX<'IF_NONE' | 'IF_LEFT' | 'IF_CONS' | 'IF', [InstructionList, InstructionList]> | InstrX<'MAP' | 'ITER' | 'LOOP' | 'LOOP_LEFT' | 'DIP', [InstructionList]> | InstrX<'UNPACK', [MichelsonType]> | InstrX<'CONTRACT', [MichelsonType]> | InstrX<'CREATE_CONTRACT', [MichelsonContract]> | InstrX<'PUSH', [MichelsonType, MichelsonData]> | InstrX<'EMPTY_SET', [MichelsonType]> | InstrX<'EMPTY_MAP', [MichelsonType, MichelsonType]> | InstrX<'EMPTY_BIG_MAP', [MichelsonType, MichelsonType]> | InstrX<'LAMBDA' | 'LAMBDA_REC', [MichelsonType, MichelsonType, InstructionList]> | InstrX<'DIP', [IntLiteral, InstructionList] | [InstructionList]> | InstrX<'VIEW', [StringLiteral, MichelsonType]> | InstrX<'EMIT', [MichelsonType]> | InstrPrim<'DROP' | 'PAIR' | 'UNPAIR' | 'DUP' | 'GET' | 'UPDATE', [IntLiteral]>;\nexport type MichelsonSimpleComparableTypeID = 'string' | 'nat' | 'int' | 'bytes' | 'bool' | 'mutez' | 'key_hash' | 'address' | 'timestamp' | 'never' | 'key' | 'unit' | 'signature' | 'chain_id' | 'tx_rollup_l2_address';\nexport type MichelsonTypeID = MichelsonSimpleComparableTypeID | 'option' | 'list' | 'set' | 'contract' | 'operation' | 'pair' | 'or' | 'lambda' | 'map' | 'big_map' | 'sapling_transaction' | 'sapling_transaction_deprecated' | 'sapling_state' | 'ticket' | 'bls12_381_g1' | 'bls12_381_g2' | 'bls12_381_fr' | 'chest_key' | 'chest';\ntype Type0 = Prim0;\ntype TypeX = PrimX;\nexport declare const refContract: unique symbol;\nexport interface MichelsonTypeAddress extends Type0<'address'> {\n [refContract]?: MichelsonTypeContract;\n}\nexport type MichelsonTypeInt = Type0<'int'>;\nexport type MichelsonTypeNat = Type0<'nat'>;\nexport type MichelsonTypeString = Type0<'string'>;\nexport type MichelsonTypeBytes = Type0<'bytes'>;\nexport type MichelsonTypeMutez = Type0<'mutez'>;\nexport type MichelsonTypeBool = Type0<'bool'>;\nexport type MichelsonTypeKeyHash = Type0<'key_hash'>;\nexport type MichelsonTypeTimestamp = Type0<'timestamp'>;\nexport type MichelsonTypeKey = Type0<'key'>;\nexport type MichelsonTypeUnit = Type0<'unit'>;\nexport type MichelsonTypeSignature = Type0<'signature'>;\nexport type MichelsonTypeOperation = Type0<'operation'>;\nexport type MichelsonTypeChainID = Type0<'chain_id'>;\nexport type MichelsonTypeNever = Type0<'never'>;\nexport type MichelsonTypeBLS12_381_G1 = Type0<'bls12_381_g1'>;\nexport type MichelsonTypeBLS12_381_G2 = Type0<'bls12_381_g2'>;\nexport type MichelsonTypeBLS12_381_FR = Type0<'bls12_381_fr'>;\nexport type MichelsonTypeChestKey = Type0<'chest_key'>;\nexport type MichelsonTypeChest = Type0<'chest'>;\ntype TypeList = T & Node;\nexport type MichelsonTypePair = TypeX<'pair', T> | TypeList;\nexport interface MichelsonTypeOption extends TypeX<'option', [T]> {\n}\nexport interface MichelsonTypeList extends TypeX<'list', [T]> {\n}\nexport interface MichelsonTypeContract extends TypeX<'contract', [T]> {\n}\nexport interface MichelsonTypeOr extends TypeX<'or', T> {\n}\nexport interface MichelsonTypeLambda extends TypeX<'lambda', [Arg, Ret]> {\n}\nexport interface MichelsonTypeSet extends TypeX<'set', [T]> {\n}\nexport interface MichelsonTypeMap extends TypeX<'map', [K, V]> {\n}\nexport interface MichelsonTypeBigMap extends TypeX<'big_map', [K, V]> {\n}\nexport interface MichelsonTypeSaplingState extends TypeX<'sapling_state', [IntLiteral]> {\n}\nexport interface MichelsonTypeSaplingTransaction extends TypeX<'sapling_transaction', [IntLiteral]> {\n}\nexport interface MichelsonTypeTicket extends TypeX<'ticket', [T]> {\n}\nexport type MichelsonType = T extends 'int' ? MichelsonTypeInt : T extends 'nat' ? MichelsonTypeNat : T extends 'string' ? MichelsonTypeString : T extends 'bytes' ? MichelsonTypeBytes : T extends 'mutez' ? MichelsonTypeMutez : T extends 'bool' ? MichelsonTypeBool : T extends 'key_hash' ? MichelsonTypeKeyHash : T extends 'timestamp' ? MichelsonTypeTimestamp : T extends 'address' ? MichelsonTypeAddress : T extends 'key' ? MichelsonTypeKey : T extends 'unit' ? MichelsonTypeUnit : T extends 'signature' ? MichelsonTypeSignature : T extends 'operation' ? MichelsonTypeOperation : T extends 'chain_id' ? MichelsonTypeChainID : T extends 'option' ? MichelsonTypeOption : T extends 'list' ? MichelsonTypeList : T extends 'contract' ? MichelsonTypeContract : T extends 'ticket' ? MichelsonTypeTicket : T extends 'pair' ? MichelsonTypePair : T extends 'or' ? MichelsonTypeOr<[MichelsonType, MichelsonType]> : T extends 'lambda' ? MichelsonTypeLambda : T extends 'set' ? MichelsonTypeSet : T extends 'map' ? MichelsonTypeMap : T extends 'big_map' ? MichelsonTypeBigMap : T extends 'never' ? MichelsonTypeNever : T extends 'bls12_381_g1' ? MichelsonTypeBLS12_381_G1 : T extends 'bls12_381_g2' ? MichelsonTypeBLS12_381_G2 : T extends 'bls12_381_fr' ? MichelsonTypeBLS12_381_FR : T extends 'sapling_transaction' ? MichelsonTypeSaplingTransaction : T extends 'sapling_state' ? MichelsonTypeSaplingState : T extends 'chest_key' ? MichelsonTypeChestKey : MichelsonTypeChest;\nexport type MichelsonDataID = 'Unit' | 'True' | 'False' | 'None' | 'Pair' | 'Left' | 'Right' | 'Some' | 'Lambda_rec' | 'Ticket';\ntype Data0 = Prim0;\ntype DataX = PrimX;\nexport type MichelsonDataOption = DataX<'Some', [MichelsonData]> | Data0<'None'>;\nexport type MichelsonDataOr = DataX<'Left' | 'Right', [MichelsonData]>;\ntype DataList = T & Node;\nexport type MichelsonDataPair = DataX<'Pair', T> | DataList;\nexport type MichelsonMapElt = PrimX<'Elt', [MichelsonData, MichelsonData]>;\nexport type MichelsonMapEltList = List;\nexport type MichelsonLambdaRec = DataX<'Lambda_rec', [InstructionList]>;\nexport type MichelsonTicket = PrimX<'Ticket', [StringLiteral | BytesLiteral, MichelsonType, MichelsonData, IntLiteral]>;\nexport type MichelsonData = IntLiteral | StringLiteral | BytesLiteral | Data0<'Unit' | 'True' | 'False'> | MichelsonDataOption | MichelsonDataOr | DataList | MichelsonDataPair | InstructionList | MichelsonMapEltList | MichelsonLambdaRec | MichelsonTicket;\nexport type MichelsonSectionID = 'parameter' | 'storage' | 'code' | 'view';\ntype SectionPrim = PrimX;\nexport type MichelsonContractParameter = SectionPrim<'parameter', [MichelsonType]>;\nexport type MichelsonContractStorage = SectionPrim<'storage', [MichelsonType]>;\nexport type MichelsonContractCode = SectionPrim<'code', [InstructionList]>;\nexport type MichelsonContractView = SectionPrim<'view', [\n StringLiteral,\n MichelsonType,\n MichelsonType,\n InstructionList\n]>;\nexport type MichelsonContract = MichelsonContractSection[];\nexport type MichelsonContractSection = T extends 'parameter' ? MichelsonContractParameter : T extends 'storage' ? MichelsonContractStorage : T extends 'view' ? MichelsonContractView : MichelsonContractCode;\nexport interface MichelsonTypeFailed {\n failed: MichelsonType;\n level: number;\n}\nexport type MichelsonReturnType = MichelsonType[] | MichelsonTypeFailed;\nexport declare enum Protocol {\n Ps9mPmXa = \"Ps9mPmXaRzmzk35gbAYNCAw6UXdE2qoABTHbN2oEEc1qM7CwT9P\",\n PtCJ7pwo = \"PtCJ7pwoxe8JasnHY8YonnLYjcVHmhiARPJvqcC6VfHT5s8k8sY\",\n PsYLVpVv = \"PsYLVpVvgbLhAhoqAkMFUo6gudkJ9weNXhUYCiLDzcUpFpkk8Wt\",\n PsddFKi3 = \"PsddFKi32cMJ2qPjf43Qv5GDWLDPZb3T3bF6fLKiF5HtvHNU7aP\",\n Pt24m4xi = \"Pt24m4xiPbLDhVgVfABUjirbmda3yohdN82Sp9FeuAXJ4eV9otd\",\n PsBABY5H = \"PsBABY5HQTSkA4297zNHfsZNKtxULfL18y95qb3m53QJiXGmrbU\",\n PsBabyM1 = \"PsBabyM1eUXZseaJdmXFApDSBqj8YBfwELoxZHHW77EMcAbbwAS\",\n PsCARTHA = \"PsCARTHAGazKbHtnKfLzQg3kms52kSRpgnDY982a9oYsSXRLQEb\",\n PsDELPH1 = \"PsDELPH1Kxsxt8f9eWbxQeRxkjfbxoqM52jvs5Y5fBxWWh4ifpo\",\n PtEdoTez = \"PtEdoTezd3RHSC31mpxxo1npxFjoWWcFgQtxapi51Z8TLu6v6Uq\",\n PtEdo2Zk = \"PtEdo2ZkT9oKpimTah6x2embF25oss54njMuPzkJTEi5RqfdZFA\",\n PsFLorena = \"PsFLorenaUUuikDWvMDr6fGBRG8kt3e3D3fHoXK1j1BFRxeSH4i\",\n PtGRANADs = \"PtGRANADsDU8R9daYKAgWnQYAJ64omN1o3KMGVCykShA97vQbvV\",\n PtHangzH = \"PtHangzHogokSuiMHemCuowEavgYTP8J5qQ9fQS793MHYFpCY3r\",\n PtHangz2 = \"PtHangz2aRngywmSRGGvrcTyMbbdpWdpFKuS4uMWxg2RaH9i1qx\",\n PsiThaCa = \"PsiThaCaT47Zboaw71QWScM8sXeMM7bbQFncK9FLqYc6EKdpjVP\",\n Psithaca2 = \"Psithaca2MLRFYargivpo7YvUr7wUDqyxrdhC5CQq78mRvimz6A\",\n PtJakarta = \"PtJakartaiDz69SfDDLXJSiuZqTSeSKRDbKVZC8MNzJnvRjvnGw\",\n PtJakart2 = \"PtJakart2xVj7pYXJBXrqHgd82rdkLey5ZeeGwDgPp9rhQUbSqY\",\n PtKathman = \"PtKathmankSpLLDALzWw7CGD2j2MtyveTwboEYokqUCP4a1LxMg\",\n PtLimaPtL = \"PtLimaPtLMwfNinJi9rCfDPWea8dFgTZ1MeJ9f1m2SRic6ayiwW\",\n PtMumbaii = \"PtMumbaiiFFEGbew1rRjzSPyzRbA51Tm3RVZL5suHPxSZYDhCEc\",\n PtMumbai2 = \"PtMumbai2TmsJHNGRkD8v8YDbtao7BLUC3wjASn1inAKLFCjaH1\",\n PtNairobi = \"PtNairobiyssHuh87hEhfVBGCVrK3WnS8Z2FT4ymB5tAa4r1nQf\",\n ProxfordY = \"ProxfordYmVfjWnRcgjWH36fW6PArwqykTFzotUxRs6gmTcZDuH\",\n PtParisBx = \"PtParisBxoLz5gzMmn3d9WBQNoPSZakgnkMC2VNuQ3KXfUtUQeZ\",\n PsParisCZ = \"PsParisCZo7KAh1Z1smVd9ZMZ1HHn5gkzbM94V3PLCpknFWhUAi\",\n ProtoALpha = \"ProtoALphaALphaALphaALphaALphaALphaALphaALphaDdp3zK\"\n}\nexport declare const DefaultProtocol = Protocol.PsParisCZ;\nexport type ProtocolID = `${Protocol}`;\nexport declare function ProtoGreaterOrEqual(a: ProtocolID, b: ProtocolID): boolean;\nexport declare function ProtoInferiorTo(a: ProtocolID, b: ProtocolID): boolean;\nexport interface ProtocolOptions {\n protocol?: ProtocolID;\n}\nexport {};\n"},{name:"@taquito/michel-codec/dist/types/michelson-validator.d.ts",dts:"import { Prim, Expr, StringLiteral } from './micheline';\nimport { MichelsonError } from './utils';\nimport { MichelsonCode, MichelsonType, MichelsonData, MichelsonContract, MichelsonInstruction, InstructionList } from './michelson-types';\nexport declare const instructionIDs: Record;\nexport declare class MichelsonValidationError extends MichelsonError {\n readonly val: Expr;\n readonly message: string;\n /**\n * @param val Value of a node caused the error\n * @param message An error message\n */\n constructor(val: Expr, message: string);\n}\n/**\n * Checks if the node is a valid Michelson code (sequence of instructions).\n * This is a type guard function which either returns true of throws an exception.\n * @param ex An AST node\n */\nexport declare function assertMichelsonInstruction(ex: Expr): ex is MichelsonCode;\nexport declare function assertMichelsonComparableType(ex: Expr): ex is MichelsonType;\nexport declare function assertMichelsonPackableType(ex: Expr): ex is MichelsonType;\nexport declare function assertMichelsonPushableType(ex: Expr): ex is MichelsonType;\nexport declare function assertMichelsonStorableType(ex: Expr): ex is MichelsonType;\nexport declare function assertMichelsonPassableType(ex: Expr): ex is MichelsonType;\nexport declare function assertMichelsonBigMapStorableType(ex: Expr): ex is MichelsonType;\nexport declare function assertViewNameValid(name: StringLiteral): void;\n/**\n * Checks if the node is a valid Michelson type expression.\n * This is a type guard function which either returns true of throws an exception.\n * @param ex An AST node\n */\nexport declare function assertMichelsonType(ex: Expr): ex is MichelsonType;\n/**\n * Checks if the node is a valid Michelson data literal such as `(Pair {Elt \"0\" 0} 0)`.\n * This is a type guard function which either returns true of throws an exception.\n * @param ex An AST node\n */\nexport declare function assertMichelsonData(ex: Expr): ex is MichelsonData;\n/**\n * Checks if the node is a valid Michelson smart contract source containing all required and valid properties such as `parameter`, `storage` and `code`.\n * This is a type guard function which either returns true of throws an exception.\n * @param ex An AST node\n */\nexport declare function assertMichelsonContract(ex: Expr): ex is MichelsonContract;\n/**\n * Checks if the node is a valid Michelson smart contract source containing all required and valid properties such as `parameter`, `storage` and `code`.\n * @param ex An AST node\n */\nexport declare function isMichelsonScript(ex: Expr): ex is MichelsonContract;\n/**\n * Checks if the node is a valid Michelson data literal such as `(Pair {Elt \"0\" 0} 0)`.\n * @param ex An AST node\n */\nexport declare function isMichelsonData(ex: Expr): ex is MichelsonData;\n/**\n * Checks if the node is a valid Michelson code (sequence of instructions).\n * @param ex An AST node\n */\nexport declare function isMichelsonCode(ex: Expr): ex is InstructionList;\n/**\n * Checks if the node is a valid Michelson type expression.\n * @param ex An AST node\n */\nexport declare function isMichelsonType(ex: Expr): ex is MichelsonType;\nexport declare function isInstruction(p: Prim): p is MichelsonInstruction;\nexport declare function assertDataListIfAny(d: MichelsonData): d is MichelsonData[];\n"},{name:"@taquito/michel-codec/dist/types/scan.d.ts",dts:"import { TaquitoError } from '@taquito/core';\n/**\n * @category Error\n * @description Error that indicates a failure when performing the scan step when parsing Michelson\n */\nexport declare class ScanError extends TaquitoError {\n readonly src: string;\n readonly idx: number;\n readonly message: string;\n constructor(src: string, idx: number, message: string);\n}\nexport declare enum Literal {\n Comment = 0,\n Number = 1,\n String = 2,\n Bytes = 3,\n Ident = 4\n}\nexport type TokenType = '(' | ')' | '{' | '}' | ';' | Literal;\nexport interface Token {\n t: TokenType;\n v: string;\n first: number;\n last: number;\n}\nexport declare function scan(src: string, scanComments?: boolean): Generator;\n"},{name:"@taquito/michel-codec/dist/types/taquito-michel-codec.d.ts",dts:"/**\n * @packageDocumentation\n * @module @taquito/michel-codec\n */\nexport * from './micheline';\nexport * from './micheline-parser';\nexport * from './micheline-emitter';\nexport * from './michelson-validator';\nexport * from './michelson-types';\nexport * from './michelson-typecheck';\nexport * from './michelson-contract';\nexport * from './formatters';\nexport * from './binary';\nexport { MichelsonError, isMichelsonError, MichelsonTypeError } from './utils';\nexport { MacroError } from './macros';\nexport { VERSION } from './version';\n"},{name:"@taquito/michel-codec/dist/types/utils.d.ts",dts:"import { Prim, Expr, StringLiteral, IntLiteral } from './micheline';\nimport { MichelsonData, MichelsonDataPair, MichelsonType, MichelsonTypePair } from './michelson-types';\nimport { TaquitoError } from '@taquito/core';\nexport type Tuple = N extends 1 ? [T] : N extends 2 ? [T, T] : N extends 3 ? [T, T, T] : N extends 4 ? [T, T, T, T] : N extends 5 ? [T, T, T, T, T] : N extends 6 ? [T, T, T, T, T, T] : N extends 7 ? [T, T, T, T, T, T, T] : N extends 8 ? [T, T, T, T, T, T, T, T] : T[];\ntype RequiredProp = Omit & Required>;\ntype OmitProp = Omit & {\n [P in K]?: undefined;\n};\nexport type ReqArgs = RequiredProp;\nexport type NoArgs = OmitProp;\nexport type NoAnnots = OmitProp;\nexport type Nullable = {\n [P in keyof T]: T[P] | null;\n};\n/**\n * @category Error\n * @description Error that indicates a Michelson failure occurring\n */\nexport declare class MichelsonError extends TaquitoError {\n readonly val: T;\n readonly message: string;\n /**\n * @param val Value of a AST node caused the error\n * @param path Path to a node caused the error\n * @param message An error message\n */\n constructor(val: T, message: string);\n}\nexport declare function isMichelsonError(err: unknown): err is MichelsonError;\nexport declare class MichelsonTypeError extends MichelsonError {\n readonly val: MichelsonType | MichelsonType[];\n readonly message: string;\n data?: Expr;\n /**\n * @param val Value of a type node caused the error\n * @param data Value of a data node caused the error\n * @param message An error message\n */\n constructor(val: MichelsonType | MichelsonType[], message: string, data?: Expr);\n}\nexport declare class LongInteger {\n private neg;\n private buf;\n private append;\n constructor(arg?: string | number);\n cmp(arg: LongInteger): number;\n get sign(): number;\n}\nexport declare function parseBytes(s: string): number[] | null;\nexport declare function compareBytes(a: number[] | Uint8Array, b: number[] | Uint8Array): number;\nexport declare function isDecimal(x: string): boolean;\nexport declare function isNatural(x: string): boolean;\nexport interface UnpackedAnnotations {\n f?: string[];\n t?: string[];\n v?: string[];\n}\nexport interface UnpackAnnotationsOptions {\n specialVar?: boolean;\n emptyVar?: boolean;\n specialFields?: boolean;\n emptyFields?: boolean;\n}\nexport declare function unpackAnnotations(p: Prim | Expr[], opt?: UnpackAnnotationsOptions): UnpackedAnnotations;\nexport type TezosIDType = 'BlockHash' | 'OperationHash' | 'OperationListHash' | 'OperationListListHash' | 'ProtocolHash' | 'ContextHash' | 'ED25519PublicKeyHash' | 'SECP256K1PublicKeyHash' | 'P256PublicKeyHash' | 'ContractHash' | 'CryptoboxPublicKeyHash' | 'ED25519Seed' | 'ED25519PublicKey' | 'SECP256K1SecretKey' | 'P256SecretKey' | 'ED25519EncryptedSeed' | 'SECP256K1EncryptedSecretKey' | 'P256EncryptedSecretKey' | 'SECP256K1PublicKey' | 'P256PublicKey' | 'SECP256K1Scalar' | 'SECP256K1Element' | 'ED25519SecretKey' | 'ED25519Signature' | 'SECP256K1Signature' | 'P256Signature' | 'GenericSignature' | 'ChainID' | 'RollupAddress';\nexport type TezosIDPrefix = [number, number[]];\nexport declare const tezosPrefix: Record;\nexport declare function checkDecodeTezosID(id: string, ...types: T): [T[number], number[]] | null;\nexport declare function encodeTezosID(id: TezosIDType, data: number[] | Uint8Array): string;\ntype PairTypeOrDataPrim = I extends 'pair' ? Extract, Prim> : Extract, Prim>;\nexport declare function unpackComb(id: I, v: I extends 'pair' ? MichelsonTypePair : MichelsonDataPair): PairTypeOrDataPrim;\nexport declare function isPairType(t: MichelsonType): t is MichelsonTypePair;\nexport declare function isPairData(d: Expr): d is MichelsonDataPair;\nexport declare function parseDate(a: StringLiteral | IntLiteral): Date | null;\nexport declare function parseHex(s: string): number[];\nexport declare function hexBytes(bytes: number[]): string;\nexport {};\n"},{name:"@taquito/michel-codec/dist/types/version.d.ts",dts:"export declare const VERSION: {\n commitHash: string;\n version: string;\n};\n"},{name:"@taquito/michelson-encoder/dist/types/schema/errors.d.ts",dts:"import { InvalidViewParameterError, TaquitoError } from '@taquito/core';\n/**\n * @category Error\n * @description Error that indicates a failure when encoding (transforming JS parameter into JSON Michelson) the parameter of the view\n */\nexport declare class ParameterEncodingError extends InvalidViewParameterError {\n readonly viewName: string;\n readonly sigs: any;\n readonly args: any;\n readonly cause?: any;\n constructor(viewName: string, sigs: any, args: any, cause?: any);\n}\n/**\n * @category Error\n * @description Error that indicates an invalid on-chain view found on the script\n */\nexport declare class InvalidScriptError extends TaquitoError {\n readonly script: any;\n readonly reason?: string | undefined;\n name: string;\n constructor(script: any, reason?: string | undefined);\n}\n/**\n * @category Error\n * @description Error that indicates an invalid RPC response being passed or used\n */\nexport declare class InvalidRpcResponseError extends TaquitoError {\n readonly script: any;\n readonly reason?: string | undefined;\n name: string;\n constructor(script: any, reason?: string | undefined);\n}\n/**\n * @category Error\n * @description Error that indicates an invalid big map schema being passed or used\n */\nexport declare class InvalidBigMapSchemaError extends TaquitoError {\n message: string;\n name: string;\n constructor(message: string);\n}\n/**\n * @category Error\n * @description Error that indicates an invalid big map diff being passed or used\n */\nexport declare class InvalidBigMapDiffError extends TaquitoError {\n message: string;\n readonly value: any;\n name: string;\n constructor(message: string, value: any);\n}\n/**\n * @category Error\n * @description Error that indicates a failure when trying to encode big maps\n */\nexport declare class BigMapEncodingError extends TaquitoError {\n readonly details: any;\n readonly schema: any;\n readonly value: any;\n name: string;\n constructor(obj: 'key' | 'value', details: any, schema: any, value: any);\n}\n/**\n * @category Error\n * @description Error that indicates a failure when trying to encode storage\n */\nexport declare class StorageEncodingError extends TaquitoError {\n details: any;\n readonly schema: any;\n readonly value: any;\n readonly semantics?: any;\n name: string;\n constructor(obj: string, details: any, schema: any, value: any, semantics?: any);\n}\n/**\n * @category Error\n * @description General error that indicates a function not being passed a necessary argument\n */\nexport declare class MissingArgumentError extends TaquitoError {\n message: string;\n name: string;\n constructor(message: string);\n}\n"},{name:"@taquito/michelson-encoder/dist/types/schema/event-schema.d.ts",dts:"import { MichelsonV1Expression, MichelsonV1ExpressionExtended, ScriptResponse } from '@taquito/rpc';\nexport declare class EventSchema {\n readonly tag?: string | undefined;\n readonly type?: MichelsonV1ExpressionExtended | undefined;\n constructor(tag?: string | undefined, type?: MichelsonV1ExpressionExtended | undefined);\n static fromMichelineValue(val: MichelsonV1ExpressionExtended): EventSchema;\n static fromRPCResponse(val: {\n script: ScriptResponse;\n }): EventSchema[];\n static removeDuplicates(events: EventSchema[]): EventSchema[];\n static extractEventsRecursively(code: MichelsonV1Expression): EventSchema[];\n}\n"},{name:"@taquito/michelson-encoder/dist/types/schema/model.d.ts",dts:"export interface RpcTransaction {\n protocol: string;\n chain_id: string;\n hash: string;\n branch: string;\n contents: Content[];\n signature: string;\n}\ninterface Content {\n kind: string;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n amount: string;\n destination: string;\n parameters: Params;\n metadata: Metadata;\n}\ninterface Metadata {\n balance_updates: Balanceupdate[];\n operation_result: Operationresult;\n}\ninterface Operationresult {\n status: string;\n storage: Storage;\n big_map_diff: Bigmapdiff[];\n consumed_gas?: string;\n storage_size: string;\n paid_storage_size_diff: string;\n consumed_milligas?: string;\n}\ninterface Bigmapdiff {\n key_hash: string;\n key: Key;\n value: Value;\n}\ninterface Value {\n prim: string;\n args: any[];\n}\ninterface Key {\n bytes: string;\n}\ninterface Storage {\n prim: string;\n args: any[];\n}\ninterface Balanceupdate {\n kind: string;\n contract?: string;\n change: string;\n category?: string;\n delegate?: string;\n level?: number;\n}\ninterface Params {\n prim: string;\n args: any[];\n}\nexport {};\n"},{name:"@taquito/michelson-encoder/dist/types/schema/parameter.d.ts",dts:"import { Semantic, SemanticEncoding } from '../tokens/token';\nimport { ScriptResponse, MichelsonV1Expression } from '@taquito/rpc';\nimport { TokenSchema } from './types';\n/**\n * @warn Our current smart contract abstraction feature is currently in preview. It's API is not final, and it may not cover every use case (yet). We will greatly appreciate any feedback on this feature.\n */\nexport declare class ParameterSchema {\n private root;\n /**\n *\n * @description Create an instance of ParameterSchema from a contract script\n *\n * @param val contract script obtained from the RPC\n * @returns ParameterSchema\n * @throws {InvalidRpcResponseError} If the RPC response is invalid\n */\n static fromRPCResponse(val: {\n script: ScriptResponse;\n }): ParameterSchema;\n /**\n * @description Check if the Contract parameter is multiple entry point or not\n */\n get isMultipleEntryPoint(): boolean;\n /**\n * @description Check if the Contract parameter has an annotation or not\n */\n get hasAnnotation(): boolean;\n /**\n * @description Return the schema of the parameter of a specific entry point\n * @throws {@link InvalidTokenError}\n */\n constructor(val: MichelsonV1Expression);\n /**\n * @description Returns the javascript object equivalent of the Micheline value provided\n */\n Execute(val: any, semantics?: Semantic): any;\n /**\n * @description Returns a micheline formatted object for the values provided\n * @throws {@link TokenValidationError}\n * @throws {@link ParameterEncodingError}\n */\n Encode(...args: any[]): any;\n /**\n * @description Returns a micheline formatted object for the javascript object provided\n * @throws {@link TokenValidationError}\n * @throws {@link ParameterEncodingError}\n */\n EncodeObject(value?: any, semantics?: SemanticEncoding): any;\n /**\n * @deprecated ExtractSchema has been deprecated in favor of generateSchema\n *\n */\n ExtractSchema(): any;\n /**\n * @description Produce a schema grouping together all the entry points of a contract.\n */\n generateSchema(): TokenSchema;\n ExtractSignatures(): any[][];\n}\n"},{name:"@taquito/michelson-encoder/dist/types/schema/storage.d.ts",dts:"import { MichelsonV1Expression, ScriptResponse } from '@taquito/rpc';\nimport { BigMapKeyType, Semantic, SemanticEncoding, Token } from '../tokens/token';\nimport { RpcTransaction } from './model';\nimport { TokenSchema } from './types';\ndeclare const schemaTypeSymbol: unique symbol;\nexport declare function deepEqual(a: MichelsonV1Expression | undefined, b: MichelsonV1Expression | undefined): boolean;\n/**\n * @warn Our current smart contract abstraction feature is currently in preview. Its API is not final, and it may not cover every use case (yet). We will greatly appreciate any feedback on this feature.\n */\nexport declare class Schema {\n readonly val: MichelsonV1Expression;\n private root;\n [schemaTypeSymbol]: boolean;\n static isSchema(obj: Schema): boolean;\n private bigMap?;\n /**\n * @throws {@link InvalidRpcResponseError}\n */\n static fromRPCResponse(val: {\n script: ScriptResponse;\n }): Schema;\n private isExpressionExtended;\n constructor(val: MichelsonV1Expression);\n private removeTopLevelAnnotation;\n Execute(val: any, semantics?: Semantic): any;\n Typecheck(val: any): void;\n /**\n * @throws {@link InvalidBigMapSchemaError}\n * @throws {@link InvalidBigMapDiffError}\n */\n ExecuteOnBigMapDiff(diff: any[], semantics?: Semantic): any;\n /**\n * @throws {@link InvalidBigMapSchemaError}\n */\n ExecuteOnBigMapValue(key: any, semantics?: Semantic): any;\n /**\n * @throws {@link InvalidBigMapSchemaError}\n * @throws {@link BigMapEncodingError}\n */\n EncodeBigMapKey(key: BigMapKeyType): {\n key: {\n [key: string]: string | object[];\n };\n type: {\n prim: string;\n args?: object[] | undefined;\n };\n };\n /**\n * @throws {@link TokenValidationError}\n * @throws {@link StorageEncodingError}\n */\n Encode(value?: any, semantics?: SemanticEncoding): any;\n /**\n * @deprecated ExtractSchema has been deprecated in favor of generateSchema\n *\n */\n ExtractSchema(): any;\n /**\n * @description Produce a representation of the storage schema.\n * Note: Provide guidance on how to write the storage object for the origination operation with Taquito.\n */\n generateSchema(): TokenSchema;\n /**\n * @deprecated\n * @throws {@link InvalidBigMapSchemaError}\n */\n ComputeState(tx: RpcTransaction[], state: any): any;\n /**\n * @description Look up in top-level pairs of the storage to find a value matching the specified type\n *\n * @returns The first value found that match the type or `undefined` if no value is found\n *\n * @param storage storage to parse to find the value\n * @param valueType type of value to look for\n *\n */\n FindFirstInTopLevelPair(storage: any, valueType: any): T | undefined;\n /**\n * @throws {@link MissingArgumentError}\n */\n private findValue;\n /**\n * @description Look up the schema to find any occurrence of a particular token.\n *\n * @returns an array of tokens of the specified kind or an empty array if no token was found\n *\n * @param tokenToFind string representing the prim property of the token to find\n *\n * @example\n * ```\n * Useful to find all global constants in a script, an array of GlobalConstantToken is returned:\n *\n * const schema = new Schema(script);\n * const allGlobalConstantTokens = schema.findToken('constant');\n * ```\n *\n */\n findToken(tokenToFind: string): Array;\n}\nexport {};\n"},{name:"@taquito/michelson-encoder/dist/types/schema/types.d.ts",dts:"export type Falsy = T | undefined | false;\nexport type BaseTokenSchema = {\n __michelsonType: 'address' | 'bool' | 'bytes' | 'int' | 'key' | 'key_hash' | 'mutez' | 'nat' | 'string' | 'timestamp' | 'bls12_381_fr' | 'bls12_381_g1' | 'bls12_381_g2' | 'chain_id' | 'never' | 'operation' | 'chest' | 'chest_key' | 'signature' | 'unit';\n schema: string;\n};\nexport type OrTokenSchema = {\n __michelsonType: 'or';\n schema: Record;\n};\nexport type PairTokenSchema = {\n __michelsonType: 'pair';\n schema: Record;\n};\nexport type ListTokenSchema = {\n __michelsonType: 'list';\n schema: TokenSchema;\n};\nexport type SetTokenSchema = {\n __michelsonType: 'set';\n schema: TokenSchema;\n};\nexport type OptionTokenSchema = {\n __michelsonType: 'option';\n schema: TokenSchema;\n};\nexport type MapTokenSchema = {\n __michelsonType: 'map';\n schema: {\n key: TokenSchema;\n value: TokenSchema;\n };\n};\nexport type BigMapTokenSchema = {\n __michelsonType: 'big_map';\n schema: {\n key: TokenSchema;\n value: TokenSchema;\n };\n};\nexport type ConstantTokenSchema = {\n __michelsonType: 'constant';\n schema: {\n hash: string;\n };\n};\nexport type ContractTokenSchema = {\n __michelsonType: 'contract';\n schema: {\n parameter: TokenSchema;\n };\n};\nexport type LambdaTokenSchema = {\n __michelsonType: 'lambda';\n schema: {\n parameters: TokenSchema;\n returns: TokenSchema;\n };\n};\nexport type SaplingStateTokenSchema = {\n __michelsonType: 'sapling_state';\n schema: {\n memoSize: string;\n };\n};\nexport type SaplingTransactionTokenSchema = {\n __michelsonType: 'sapling_transaction';\n schema: {\n memoSize: string;\n };\n};\nexport type SaplingTransactionDeprecatedTokenSchema = {\n __michelsonType: 'sapling_transaction_deprecated';\n schema: {\n memoSize: string;\n };\n};\nexport type TicketTokenSchema = {\n __michelsonType: 'ticket';\n schema: {\n value: TokenSchema;\n ticketer: {\n __michelsonType: 'contract';\n schema: 'contract';\n };\n amount: {\n __michelsonType: 'int';\n schema: 'int';\n };\n };\n};\nexport type TicketDeprecatedTokenSchema = {\n __michelsonType: 'ticket_deprecated';\n schema: {\n value: TokenSchema;\n ticketer: {\n __michelsonType: 'contract';\n schema: 'contract';\n };\n amount: {\n __michelsonType: 'int';\n schema: 'int';\n };\n };\n};\nexport type TokenSchema = BaseTokenSchema | OrTokenSchema | PairTokenSchema | ListTokenSchema | SetTokenSchema | OptionTokenSchema | MapTokenSchema | BigMapTokenSchema | ConstantTokenSchema | ContractTokenSchema | LambdaTokenSchema | SaplingStateTokenSchema | SaplingTransactionTokenSchema | SaplingTransactionDeprecatedTokenSchema | TicketTokenSchema | TicketDeprecatedTokenSchema;\n"},{name:"@taquito/michelson-encoder/dist/types/schema/view-schema.d.ts",dts:"import { MichelsonV1Expression, MichelsonV1ExpressionExtended, ScriptResponse } from '@taquito/rpc';\nimport { Semantic } from '../tokens/token';\nexport declare class ViewSchema {\n readonly viewName: string;\n readonly viewArgsType: MichelsonV1ExpressionExtended;\n readonly viewReturnType: MichelsonV1ExpressionExtended;\n readonly instructions: MichelsonV1ExpressionExtended[];\n private rootArgsType;\n private rootReturnType;\n /**\n *\n * @description Create an instance of ViewSchema for each view in a script\n *\n * @param val contract script obtained from the RPC\n * @returns array of ViewSchema or empty array if there is no view in the contract\n * @throws {@link InvalidScriptError}\n */\n static fromRPCResponse(val: {\n script: ScriptResponse;\n }): ViewSchema[];\n /**\n * @throws {@link InvalidScriptError}\n */\n constructor(viewArgs: MichelsonV1Expression[] | undefined);\n /**\n *\n * @description Transform the view parameter into Michelson\n *\n * @param args parameter of the view in js format\n * @returns parameter of the view in Michelson\n * @throws {@link ParameterEncodingError}\n */\n encodeViewArgs(args: any): any;\n /**\n *\n * @description Transform the view result from Michelson to readable data\n *\n * @param val result of the view in JSON Michelson\n * @param semantics optional semantics to override the default decoding behavior\n * @returns result of the view in a readable format\n */\n decodeViewResult(val: any, semantics?: Semantic): any;\n /**\n *\n * @description Return the signature of the view parameter\n */\n extractArgsSchema(): any;\n /**\n *\n * @description Return the format of the view result\n */\n extractResultSchema(): any;\n}\n"},{name:"@taquito/michelson-encoder/dist/types/tokens/comparable/address.d.ts",dts:"import { Token, TokenFactory, ComparableToken, TokenValidationError, SemanticEncoding } from '../token';\nimport { BaseTokenSchema } from '../../schema/types';\n/**\n * @category Error\n * @description Error that indicates a failure happening when parsing encoding/executing an Address\n */\nexport declare class AddressValidationError extends TokenValidationError {\n value: any;\n token: AddressToken;\n name: string;\n constructor(value: any, token: AddressToken, message: string);\n}\nexport declare class AddressToken extends ComparableToken {\n protected val: {\n prim: string;\n args: any[];\n annots: any[];\n };\n protected idx: number;\n protected fac: TokenFactory;\n static prim: 'address';\n constructor(val: {\n prim: string;\n args: any[];\n annots: any[];\n }, idx: number, fac: TokenFactory);\n ToBigMapKey(val: any): {\n key: {\n bytes: string;\n };\n type: {\n prim: string;\n };\n };\n /**\n * @throws {@link AddressValidationError}\n */\n private validate;\n /**\n * @throws {@link AddressValidationError}\n */\n Encode(args: any[]): any;\n /**\n * @throws {@link AddressValidationError}\n */\n EncodeObject(val: any, semantic?: SemanticEncoding): any;\n /**\n * @throws {@link AddressValidationError}\n */\n Execute(val: {\n bytes: string;\n string: string;\n }): string;\n /**\n * @deprecated ExtractSchema has been deprecated in favor of generateSchema\n *\n */\n ExtractSchema(): \"address\";\n generateSchema(): BaseTokenSchema;\n /**\n * @throws {@link AddressValidationError}\n */\n ToKey({ bytes, string }: any): any;\n compare(address1: string, address2: string): number;\n findAndReturnTokens(tokenToFind: string, tokens: Token[]): Token[];\n}\n"},{name:"@taquito/michelson-encoder/dist/types/tokens/comparable/bool.d.ts",dts:"import { BaseTokenSchema } from '../../schema/types';\nimport { Token, TokenFactory, ComparableToken, SemanticEncoding } from '../token';\nexport declare class BoolToken extends ComparableToken {\n protected val: {\n prim: string;\n args: any[];\n annots: any[];\n };\n protected idx: number;\n protected fac: TokenFactory;\n static prim: 'bool';\n constructor(val: {\n prim: string;\n args: any[];\n annots: any[];\n }, idx: number, fac: TokenFactory);\n Execute(val: any): boolean;\n Encode(args: any[]): any;\n EncodeObject(val: any, semantic?: SemanticEncoding): import(\"@taquito/rpc\").MichelsonV1Expression;\n /**\n * @deprecated ExtractSchema has been deprecated in favor of generateSchema\n *\n */\n ExtractSchema(): \"bool\";\n generateSchema(): BaseTokenSchema;\n ToBigMapKey(val: string): {\n key: {\n [key: string]: string;\n };\n type: {\n prim: string;\n };\n };\n ToKey(val: string): import(\"@taquito/rpc\").MichelsonV1Expression;\n compare(val1: any, val2: any): 0 | 1 | -1;\n findAndReturnTokens(tokenToFind: string, tokens: Token[]): Token[];\n}\n"},{name:"@taquito/michelson-encoder/dist/types/tokens/comparable/bytes.d.ts",dts:"import { BaseTokenSchema } from '../../schema/types';\nimport { TokenFactory, ComparableToken, TokenValidationError, Token, SemanticEncoding } from '../token';\n/**\n * @category Error\n * @description Error that indicates a failure happening when parsing encoding/executing Bytes\n */\nexport declare class BytesValidationError extends TokenValidationError {\n value: any;\n token: BytesToken;\n name: string;\n constructor(value: any, token: BytesToken, message: string);\n}\nexport declare class BytesToken extends ComparableToken {\n protected val: {\n prim: string;\n args: any[];\n annots: any[];\n };\n protected idx: number;\n protected fac: TokenFactory;\n static prim: 'bytes';\n constructor(val: {\n prim: string;\n args: any[];\n annots: any[];\n }, idx: number, fac: TokenFactory);\n ToBigMapKey(val: string): {\n key: {\n bytes: string;\n };\n type: {\n prim: \"bytes\";\n };\n };\n /**\n * @throws {@link BytesValidationError}\n */\n private validate;\n private convertUint8ArrayToHexString;\n /**\n * @throws {@link BytesValidationError}\n */\n Encode(args: any[]): any;\n /**\n * @throws {@link BytesValidationError}\n */\n EncodeObject(val: string | Uint8Array, semantic?: SemanticEncoding): import(\"@taquito/rpc\").MichelsonV1Expression;\n Execute(val: any): string;\n /**\n * @deprecated ExtractSchema has been deprecated in favor of generateSchema\n *\n */\n ExtractSchema(): \"bytes\";\n generateSchema(): BaseTokenSchema;\n ToKey({ bytes, string }: any): any;\n findAndReturnTokens(tokenToFind: string, tokens: Token[]): Token[];\n}\n"},{name:"@taquito/michelson-encoder/dist/types/tokens/comparable/int.d.ts",dts:"import { Token, TokenFactory, ComparableToken, TokenValidationError, SemanticEncoding } from '../token';\nimport { BaseTokenSchema } from '../../schema/types';\n/**\n * @category Error\n * @description Error that indicates a failure happening when parsing encoding/executing Int\n */\nexport declare class IntValidationError extends TokenValidationError {\n value: any;\n token: IntToken;\n name: string;\n constructor(value: any, token: IntToken, message: string);\n}\nexport declare class IntToken extends ComparableToken {\n protected val: {\n prim: string;\n args: any[];\n annots: any[];\n };\n protected idx: number;\n protected fac: TokenFactory;\n static prim: 'int';\n constructor(val: {\n prim: string;\n args: any[];\n annots: any[];\n }, idx: number, fac: TokenFactory);\n Execute(val: {\n [key: string]: string;\n }): {\n [key: string]: any;\n };\n /**\n * @deprecated ExtractSchema has been deprecated in favor of generateSchema\n *\n */\n ExtractSchema(): \"int\";\n generateSchema(): BaseTokenSchema;\n /**\n * @throws {@link IntValidationError}\n */\n private validate;\n /**\n * @throws {@link IntValidationError}\n */\n Encode(args: any[]): any;\n /**\n * @throws {@link IntValidationError}\n */\n EncodeObject(val: any, semantic?: SemanticEncoding): any;\n ToBigMapKey(val: string | number): {\n key: {\n int: string;\n };\n type: {\n prim: \"int\";\n };\n };\n ToKey({ int }: any): any;\n compare(int1: string | number, int2: string | number): 0 | 1 | -1;\n findAndReturnTokens(tokenToFind: string, tokens: Token[]): Token[];\n}\n"},{name:"@taquito/michelson-encoder/dist/types/tokens/comparable/key_hash.d.ts",dts:"import { Token, TokenFactory, ComparableToken, TokenValidationError, SemanticEncoding } from '../token';\nimport { BaseTokenSchema } from '../../schema/types';\n/**\n * @category Error\n * @description Error that indicates a failure happening when parsing encoding/executing Key Hash\n */\nexport declare class KeyHashValidationError extends TokenValidationError {\n value: any;\n token: KeyHashToken;\n name: string;\n constructor(value: any, token: KeyHashToken, message: string);\n}\nexport declare class KeyHashToken extends ComparableToken {\n protected val: {\n prim: string;\n args: any[];\n annots: any[];\n };\n protected idx: number;\n protected fac: TokenFactory;\n static prim: 'key_hash';\n constructor(val: {\n prim: string;\n args: any[];\n annots: any[];\n }, idx: number, fac: TokenFactory);\n Execute(val: {\n bytes: string;\n string: string;\n }): string | undefined;\n /**\n * @throws {@link KeyHashValidationError}\n */\n private validate;\n /**\n * @throws {@link KeyHashValidationError}\n */\n Encode(args: any[]): any;\n /**\n * @throws {@link KeyHashValidationError}\n */\n EncodeObject(val: any, semantic?: SemanticEncoding): any;\n /**\n * @deprecated ExtractSchema has been deprecated in favor of generateSchema\n *\n */\n ExtractSchema(): \"key_hash\";\n generateSchema(): BaseTokenSchema;\n ToKey({ string, bytes }: any): any;\n ToBigMapKey(val: string): {\n key: {\n string: string;\n };\n type: {\n prim: \"key_hash\";\n };\n };\n findAndReturnTokens(tokenToFind: string, tokens: Token[]): Token[];\n}\n"},{name:"@taquito/michelson-encoder/dist/types/tokens/comparable/mutez.d.ts",dts:"import { Token, TokenFactory, ComparableToken, TokenValidationError, SemanticEncoding } from '../token';\nimport BigNumber from 'bignumber.js';\nimport { BaseTokenSchema } from '../../schema/types';\n/**\n * @category Error\n * @description Error that indicates a failure happening when parsing encoding/executing Mutez\n */\nexport declare class MutezValidationError extends TokenValidationError {\n value: any;\n token: MutezToken;\n name: string;\n constructor(value: any, token: MutezToken, message: string);\n}\nexport declare class MutezToken extends ComparableToken {\n protected val: {\n prim: string;\n args: any[];\n annots: any[];\n };\n protected idx: number;\n protected fac: TokenFactory;\n static prim: 'mutez';\n constructor(val: {\n prim: string;\n args: any[];\n annots: any[];\n }, idx: number, fac: TokenFactory);\n Execute(val: any): BigNumber;\n /**\n * @deprecated ExtractSchema has been deprecated in favor of generateSchema\n *\n */\n ExtractSchema(): \"mutez\";\n generateSchema(): BaseTokenSchema;\n /**\n * @throws {@link MutezValidationError}\n */\n private validate;\n /**\n * @throws {@link MutezValidationError}\n */\n Encode(args: any[]): any;\n /**\n * @throws {@link MutezValidationError}\n */\n EncodeObject(val: any, semantic?: SemanticEncoding): any;\n ToBigMapKey(val: string | number): {\n key: {\n int: string;\n };\n type: {\n prim: \"mutez\";\n };\n };\n ToKey({ int }: any): any;\n compare(mutez1: string | number, mutez2: string | number): 0 | 1 | -1;\n findAndReturnTokens(tokenToFind: string, tokens: Token[]): Token[];\n}\n"},{name:"@taquito/michelson-encoder/dist/types/tokens/comparable/nat.d.ts",dts:"import { Token, TokenFactory, ComparableToken, TokenValidationError, SemanticEncoding } from '../token';\nimport BigNumber from 'bignumber.js';\nimport { BaseTokenSchema } from '../../schema/types';\n/**\n * @category Error\n * @description Error that indicates a failure happening when parsing encoding/executing Nat\n */\nexport declare class NatValidationError extends TokenValidationError {\n value: any;\n token: NatToken;\n name: string;\n constructor(value: any, token: NatToken, message: string);\n}\nexport declare class NatToken extends ComparableToken {\n protected val: {\n prim: string;\n args: any[];\n annots: any[];\n };\n protected idx: number;\n protected fac: TokenFactory;\n static prim: 'nat';\n constructor(val: {\n prim: string;\n args: any[];\n annots: any[];\n }, idx: number, fac: TokenFactory);\n Execute(val: any): {\n [key: string]: any;\n };\n /**\n * @throws {@link NatValidationError}\n */\n Encode(args: any[]): any;\n /**\n * @throws {@link NatValidationError}\n */\n private validate;\n /**\n * @throws {@link NatValidationError}\n */\n EncodeObject(val: any, semantic?: SemanticEncoding): any;\n /**\n * @deprecated ExtractSchema has been deprecated in favor of generateSchema\n *\n */\n ExtractSchema(): \"nat\";\n generateSchema(): BaseTokenSchema;\n ToBigMapKey(val: string | number): {\n key: {\n int: string;\n };\n type: {\n prim: \"nat\";\n };\n };\n ToKey({ int }: any): BigNumber;\n compare(nat1: string | number, nat2: string | number): 0 | 1 | -1;\n findAndReturnTokens(tokenToFind: string, tokens: Token[]): Token[];\n}\n"},{name:"@taquito/michelson-encoder/dist/types/tokens/comparable/string.d.ts",dts:"import { BaseTokenSchema } from '../../schema/types';\nimport { Token, TokenFactory, ComparableToken, SemanticEncoding } from '../token';\nexport declare class StringToken extends ComparableToken {\n protected val: {\n prim: string;\n args: any[];\n annots: any[];\n };\n protected idx: number;\n protected fac: TokenFactory;\n static prim: 'string';\n constructor(val: {\n prim: string;\n args: any[];\n annots: any[];\n }, idx: number, fac: TokenFactory);\n Execute(val: any): string;\n /**\n * @deprecated ExtractSchema has been deprecated in favor of generateSchema\n *\n */\n ExtractSchema(): \"string\";\n generateSchema(): BaseTokenSchema;\n Encode(args: any[]): any;\n EncodeObject(val: any, semantic?: SemanticEncoding): any;\n ToKey({ string }: any): any;\n ToBigMapKey(val: string): {\n key: {\n string: string;\n };\n type: {\n prim: \"string\";\n };\n };\n findAndReturnTokens(tokenToFind: string, tokens: Token[]): Token[];\n}\n"},{name:"@taquito/michelson-encoder/dist/types/tokens/comparable/timestamp.d.ts",dts:"import { BaseTokenSchema } from '../../schema/types';\nimport { Token, TokenFactory, ComparableToken, SemanticEncoding } from '../token';\nexport declare class TimestampToken extends ComparableToken {\n protected val: {\n prim: string;\n args: any[];\n annots: any[];\n };\n protected idx: number;\n protected fac: TokenFactory;\n static prim: 'timestamp';\n constructor(val: {\n prim: string;\n args: any[];\n annots: any[];\n }, idx: number, fac: TokenFactory);\n Execute(val: {\n string?: string;\n int?: string;\n }): string | undefined;\n Encode(args: any[]): any;\n EncodeObject(val: any, semantic?: SemanticEncoding): any;\n /**\n * @deprecated ExtractSchema has been deprecated in favor of generateSchema\n *\n */\n ExtractSchema(): \"timestamp\";\n generateSchema(): BaseTokenSchema;\n ToKey({ string }: any): any;\n ToBigMapKey(val: string): {\n key: {\n string: string;\n };\n type: {\n prim: \"timestamp\";\n };\n };\n findAndReturnTokens(tokenToFind: string, tokens: Token[]): Token[];\n}\n"},{name:"@taquito/michelson-encoder/dist/types/tokens/bigmap.d.ts",dts:"import { BigMapTokenSchema } from '../schema/types';\nimport { ComparableToken, Semantic, SemanticEncoding, Token, TokenFactory, TokenValidationError } from './token';\n/**\n * @category Error\n * @description Error that indicates a failure happening when parsing encoding/executing Big Map types\n */\nexport declare class BigMapValidationError extends TokenValidationError {\n value: any;\n token: BigMapToken;\n name: string;\n constructor(value: any, token: BigMapToken, message: string);\n}\nexport declare class BigMapToken extends Token {\n protected val: {\n prim: string;\n args: any[];\n annots?: any[];\n };\n protected idx: number;\n protected fac: TokenFactory;\n static prim: 'big_map';\n constructor(val: {\n prim: string;\n args: any[];\n annots?: any[];\n }, idx: number, fac: TokenFactory);\n get ValueSchema(): Token;\n get KeySchema(): ComparableToken;\n /**\n * @deprecated ExtractSchema has been deprecated in favor of generateSchema\n *\n */\n ExtractSchema(): {\n big_map: {\n key: any;\n value: any;\n };\n };\n generateSchema(): BigMapTokenSchema;\n /**\n * @throws {@link BigMapValidationError}\n */\n private validate;\n private objLitToMichelsonMap;\n /**\n * @throws {@link BigMapValidationError}\n */\n Encode(args: any[]): any;\n /**\n * @throws {@link BigMapValidationError}\n */\n EncodeObject(args: any, semantic?: SemanticEncoding): any;\n /**\n * @throws {@link InvalidMapTypeError} when the argument passed to val is an array but not a valid map type\n * @throws {@link BigMapValidationError} when the value is invalid\n */\n Execute(val: any[] | {\n int: string;\n }, semantic?: Semantic): any;\n findAndReturnTokens(tokenToFind: string, tokens: Token[]): Token[];\n}\n"},{name:"@taquito/michelson-encoder/dist/types/tokens/bls12-381-fr.d.ts",dts:'import { BaseTokenSchema } from \'../schema/types\';\nimport { SemanticEncoding, Token, TokenFactory, TokenValidationError } from \'./token\';\n/**\n * @category Error\n * @description Error that indicates a failure happening when parsing encoding/executing a BLS12-381 scalar field Fr\n */\nexport declare class Bls12381frValidationError extends TokenValidationError {\n value: any;\n token: Bls12381frToken;\n name: string;\n constructor(value: any, token: Bls12381frToken, message: string);\n}\nexport declare class Bls12381frToken extends Token {\n protected val: {\n prim: string;\n args: any[];\n annots: any[];\n };\n protected idx: number;\n protected fac: TokenFactory;\n static prim: \'bls12_381_fr\';\n constructor(val: {\n prim: string;\n args: any[];\n annots: any[];\n }, idx: number, fac: TokenFactory);\n /**\n * @throws {@link Bls12381frValidationError}\n */\n private validate;\n private convertUint8ArrayToHexString;\n /**\n * @throws {@link Bls12381frValidationError}\n */\n Encode(args: any[]): {\n int: string;\n bytes?: undefined;\n } | {\n bytes: any;\n int?: undefined;\n };\n /**\n * @throws {@link Bls12381frValidationError}\n */\n EncodeObject(val: string | Uint8Array | number, semantic?: SemanticEncoding): import("@taquito/rpc").MichelsonV1ExpressionExtended | import("@taquito/rpc").MichelsonV1ExpressionBase | import("@taquito/rpc").MichelsonV1Expression[] | {\n bytes: string | number | Uint8Array;\n };\n Execute(val: any): string;\n /**\n * @deprecated ExtractSchema has been deprecated in favor of generateSchema\n *\n */\n ExtractSchema(): "bls12_381_fr";\n generateSchema(): BaseTokenSchema;\n findAndReturnTokens(tokenToFind: string, tokens: Token[]): Token[];\n}\n'},{name:"@taquito/michelson-encoder/dist/types/tokens/bls12-381-g1.d.ts",dts:'import { BaseTokenSchema } from \'../schema/types\';\nimport { SemanticEncoding, Token, TokenFactory, TokenValidationError } from \'./token\';\n/**\n * @category Error\n * @description Error that indicates a failure happening when parsing encoding/executing a BLS12-381 curve G1\n */\nexport declare class Bls12381g1ValidationError extends TokenValidationError {\n value: any;\n token: Bls12381g1Token;\n name: string;\n constructor(value: any, token: Bls12381g1Token, message: string);\n}\nexport declare class Bls12381g1Token extends Token {\n protected val: {\n prim: string;\n args: any[];\n annots: any[];\n };\n protected idx: number;\n protected fac: TokenFactory;\n static prim: \'bls12_381_g1\';\n constructor(val: {\n prim: string;\n args: any[];\n annots: any[];\n }, idx: number, fac: TokenFactory);\n /**\n * @throws {@link Bls12381g1ValidationError}\n */\n private validate;\n private convertUint8ArrayToHexString;\n /**\n * @throws {@link Bls12381g1ValidationError}\n */\n Encode(args: any[]): {\n bytes: any;\n };\n /**\n * @throws {@link Bls12381g1ValidationError}\n */\n EncodeObject(val: string | Uint8Array, semantic?: SemanticEncoding): import("@taquito/rpc").MichelsonV1ExpressionExtended | import("@taquito/rpc").MichelsonV1ExpressionBase | import("@taquito/rpc").MichelsonV1Expression[] | {\n bytes: string | Uint8Array;\n };\n Execute(val: any): string;\n /**\n * @deprecated ExtractSchema has been deprecated in favor of generateSchema\n *\n */\n ExtractSchema(): "bls12_381_g1";\n generateSchema(): BaseTokenSchema;\n findAndReturnTokens(tokenToFind: string, tokens: Token[]): Token[];\n}\n'},{name:"@taquito/michelson-encoder/dist/types/tokens/bls12-381-g2.d.ts",dts:'import { BaseTokenSchema } from \'../schema/types\';\nimport { SemanticEncoding, Token, TokenFactory, TokenValidationError } from \'./token\';\n/**\n * @category Error\n * @description Error that indicates a failure happening when parsing encoding/executing a BLS12-381 curve G2\n */\nexport declare class Bls12381g2ValidationError extends TokenValidationError {\n value: any;\n token: Bls12381g2Token;\n name: string;\n constructor(value: any, token: Bls12381g2Token, message: string);\n}\nexport declare class Bls12381g2Token extends Token {\n protected val: {\n prim: string;\n args: any[];\n annots: any[];\n };\n protected idx: number;\n protected fac: TokenFactory;\n static prim: \'bls12_381_g2\';\n constructor(val: {\n prim: string;\n args: any[];\n annots: any[];\n }, idx: number, fac: TokenFactory);\n /**\n * @throws {@link Bls12381g2ValidationError}\n */\n private validate;\n private convertUint8ArrayToHexString;\n /**\n * @throws {@link Bls12381g2ValidationError}\n */\n Encode(args: any[]): {\n bytes: any;\n };\n /**\n * @throws {@link Bls12381g2ValidationError}\n */\n EncodeObject(val: string | Uint8Array, semantic?: SemanticEncoding): import("@taquito/rpc").MichelsonV1ExpressionExtended | import("@taquito/rpc").MichelsonV1ExpressionBase | import("@taquito/rpc").MichelsonV1Expression[] | {\n bytes: string | Uint8Array;\n };\n Execute(val: any): string;\n /**\n * @deprecated ExtractSchema has been deprecated in favor of generateSchema\n *\n */\n ExtractSchema(): "bls12_381_g2";\n generateSchema(): BaseTokenSchema;\n findAndReturnTokens(tokenToFind: string, tokens: Token[]): Token[];\n}\n'},{name:"@taquito/michelson-encoder/dist/types/tokens/chain-id.d.ts",dts:"import { Token, TokenFactory, ComparableToken, TokenValidationError, SemanticEncoding } from './token';\nimport { BaseTokenSchema } from '../schema/types';\n/**\n * @category Error\n * @description Error that indicates a failure happening when parsing encoding/executing a ChainID\n */\nexport declare class ChainIDValidationError extends TokenValidationError {\n value: any;\n token: ChainIDToken;\n name: string;\n constructor(value: any, token: ChainIDToken, message: string);\n}\nexport declare class ChainIDToken extends ComparableToken {\n protected val: {\n prim: string;\n args: any[];\n annots: any[];\n };\n protected idx: number;\n protected fac: TokenFactory;\n static prim: 'chain_id';\n constructor(val: {\n prim: string;\n args: any[];\n annots: any[];\n }, idx: number, fac: TokenFactory);\n /**\n * @throws {@link ChainIDValidationError}\n */\n private validate;\n Execute(val: any): string;\n /**\n * @deprecated ExtractSchema has been deprecated in favor of generateSchema\n *\n */\n ExtractSchema(): \"chain_id\";\n generateSchema(): BaseTokenSchema;\n /**\n * @throws {@link ChainIDValidationError}\n */\n Encode(args: any[]): any;\n /**\n * @throws {@link ChainIDValidationError}\n */\n EncodeObject(val: any, semantic?: SemanticEncoding): any;\n ToKey({ string }: any): any;\n ToBigMapKey(val: string): {\n key: {\n string: string;\n };\n type: {\n prim: \"chain_id\";\n };\n };\n findAndReturnTokens(tokenToFind: string, tokens: Token[]): Token[];\n}\n"},{name:"@taquito/michelson-encoder/dist/types/tokens/chest-key.d.ts",dts:'import { BaseTokenSchema } from \'../schema/types\';\nimport { SemanticEncoding, Token, TokenFactory, TokenValidationError } from \'./token\';\n/**\n * @category Error\n * @description Error that indicates a failure happening when parsing encoding/executing a Chest Key\n */\nexport declare class ChestKeyValidationError extends TokenValidationError {\n value: any;\n token: ChestKeyToken;\n name: string;\n constructor(value: any, token: ChestKeyToken, message: string);\n}\nexport declare class ChestKeyToken extends Token {\n protected val: {\n prim: string;\n args: any[];\n annots: any[];\n };\n protected idx: number;\n protected fac: TokenFactory;\n static prim: \'chest_key\';\n constructor(val: {\n prim: string;\n args: any[];\n annots: any[];\n }, idx: number, fac: TokenFactory);\n /**\n * @throws {@link ChestKeyValidationError}\n */\n private validate;\n private convertUint8ArrayToHexString;\n /**\n * @throws {@link ChestKeyValidationError}\n */\n Encode(args: any[]): {\n bytes: any;\n };\n /**\n * @throws {@link ChestKeyValidationError}\n */\n EncodeObject(val: string | Uint8Array, semantic?: SemanticEncoding): import("@taquito/rpc").MichelsonV1ExpressionExtended | import("@taquito/rpc").MichelsonV1ExpressionBase | import("@taquito/rpc").MichelsonV1Expression[] | {\n bytes: string | Uint8Array;\n };\n Execute(val: any): string;\n /**\n * @deprecated ExtractSchema has been deprecated in favor of generateSchema\n *\n */\n ExtractSchema(): "chest_key";\n generateSchema(): BaseTokenSchema;\n findAndReturnTokens(tokenToFind: string, tokens: Token[]): Token[];\n}\n'},{name:"@taquito/michelson-encoder/dist/types/tokens/chest.d.ts",dts:'import { BaseTokenSchema } from \'../schema/types\';\nimport { SemanticEncoding, Token, TokenFactory, TokenValidationError } from \'./token\';\n/**\n * @category Error\n * @description Error that indicates a failure happening when parsing encoding/executing a Chest\n */\nexport declare class ChestValidationError extends TokenValidationError {\n value: any;\n token: ChestToken;\n name: string;\n constructor(value: any, token: ChestToken, message: string);\n}\nexport declare class ChestToken extends Token {\n protected val: {\n prim: string;\n args: any[];\n annots: any[];\n };\n protected idx: number;\n protected fac: TokenFactory;\n static prim: \'chest\';\n constructor(val: {\n prim: string;\n args: any[];\n annots: any[];\n }, idx: number, fac: TokenFactory);\n /**\n * @throws {@link ChestKeyValidationError}\n */\n private validate;\n private convertUint8ArrayToHexString;\n /**\n * @throws {@link ChestKeyValidationError}\n */\n Encode(args: any[]): {\n bytes: any;\n };\n /**\n * @throws {@link ChestKeyValidationError}\n */\n EncodeObject(val: string | Uint8Array, semantic?: SemanticEncoding): import("@taquito/rpc").MichelsonV1ExpressionExtended | import("@taquito/rpc").MichelsonV1ExpressionBase | import("@taquito/rpc").MichelsonV1Expression[] | {\n bytes: string | Uint8Array;\n };\n Execute(val: any): string;\n /**\n * @deprecated ExtractSchema has been deprecated in favor of generateSchema\n *\n */\n ExtractSchema(): "chest";\n generateSchema(): BaseTokenSchema;\n findAndReturnTokens(tokenToFind: string, tokens: Token[]): Token[];\n}\n'},{name:"@taquito/michelson-encoder/dist/types/tokens/constant.d.ts",dts:"import { ConstantTokenSchema } from '../schema/types';\nimport { Semantic, SemanticEncoding, Token, TokenFactory, TokenValidationError } from './token';\n/**\n * @category Error\n * @description Error that indicates a failure happening when parsing encoding a Global Constant\n */\nexport declare class GlobalConstantEncodingError extends TokenValidationError {\n value: any;\n token: GlobalConstantToken;\n name: string;\n constructor(value: any, token: GlobalConstantToken, message: string);\n}\n/**\n * @category Error\n * @description Error that indicates a failure happening when parsing executing a Global Constant\n */\nexport declare class GlobalConstantDecodingError extends TokenValidationError {\n value: any;\n token: GlobalConstantToken;\n name: string;\n constructor(value: any, token: GlobalConstantToken, message: string);\n}\nexport declare class GlobalConstantToken extends Token {\n protected val: {\n prim: string;\n args: any[];\n annots?: any[];\n };\n protected idx: number;\n protected fac: TokenFactory;\n static prim: 'constant';\n constructor(val: {\n prim: string;\n args: any[];\n annots?: any[];\n }, idx: number, fac: TokenFactory);\n /**\n * @throws {@link GlobalConstantDecodingError}\n */\n Execute(val: any, semantic?: Semantic): any;\n /**\n * @throws {@link GlobalConstantEncodingError}\n */\n Encode(args: any[]): any;\n /**\n * @throws {@link GlobalConstantEncodingError}\n */\n EncodeObject(val: any, semantic?: SemanticEncoding): any;\n /**\n * @deprecated ExtractSchema has been deprecated in favor of generateSchema\n *\n */\n ExtractSchema(): \"constant\";\n generateSchema(): ConstantTokenSchema;\n findAndReturnTokens(tokenToFind: string, tokens: Token[]): Token[];\n}\n"},{name:"@taquito/michelson-encoder/dist/types/tokens/contract.d.ts",dts:"import { ContractTokenSchema } from '../schema/types';\nimport { SemanticEncoding, Token, TokenFactory, TokenValidationError } from './token';\n/**\n * @category Error\n * @description Error that indicates a failure happening when parsing encoding/executing a Contract\n */\nexport declare class ContractValidationError extends TokenValidationError {\n value: any;\n token: ContractToken;\n name: string;\n constructor(value: any, token: ContractToken, message: string);\n}\nexport declare class ContractToken extends Token {\n protected val: {\n prim: string;\n args: any[];\n annots: any[];\n };\n protected idx: number;\n protected fac: TokenFactory;\n static prim: 'contract';\n constructor(val: {\n prim: string;\n args: any[];\n annots: any[];\n }, idx: number, fac: TokenFactory);\n /**\n * @throws {@link ContractValidationError}\n */\n private validate;\n /**\n * @throws {@link ContractValidationError}\n */\n Execute(val: {\n bytes: string;\n string: string;\n }): string;\n /**\n * @throws {@link ContractValidationError}\n */\n Encode(args: any[]): any;\n /**\n * @throws {@link ContractValidationError}\n */\n EncodeObject(val: any, semantic?: SemanticEncoding): any;\n /**\n * @deprecated ExtractSchema has been deprecated in favor of generateSchema\n *\n */\n ExtractSchema(): \"contract\";\n generateSchema(): ContractTokenSchema;\n findAndReturnTokens(tokenToFind: string, tokens: Token[]): Token[];\n}\n"},{name:"@taquito/michelson-encoder/dist/types/tokens/createToken.d.ts",dts:"import { Token } from './token';\nimport { TaquitoError } from '@taquito/core';\n/**\n * @category Error\n * @description Error that indicates a script having an invalid type or it being unsupported by the Michelson Encoder. Note some protocol changes might affect this, we encourage users to open an issue so we can look into implementing support for said types.\n */\nexport declare class InvalidTokenError extends TaquitoError {\n message: string;\n data: any;\n name: string;\n constructor(message: string, data: any);\n}\n/**\n *\n * @description Create a token from a value\n * @throws {@link InvalidTokenError} If the value passed is not supported by the Michelson Encoder\n */\nexport declare function createToken(val: any, idx: number, parentTokenType?: 'Or' | 'Pair' | 'Other' | undefined): Token;\n"},{name:"@taquito/michelson-encoder/dist/types/tokens/key.d.ts",dts:"import { ComparableToken, SemanticEncoding, Token, TokenFactory, TokenValidationError } from './token';\nimport { BaseTokenSchema } from '../schema/types';\n/**\n * @category Error\n * @description Error that indicates a failure happening when parsing encoding/executing a Key\n */\nexport declare class KeyValidationError extends TokenValidationError {\n value: any;\n token: KeyToken;\n name: string;\n constructor(value: any, token: KeyToken, message: string);\n}\nexport declare class KeyToken extends ComparableToken {\n protected val: {\n prim: string;\n args: any[];\n annots: any[];\n };\n protected idx: number;\n protected fac: TokenFactory;\n static prim: 'key';\n constructor(val: {\n prim: string;\n args: any[];\n annots: any[];\n }, idx: number, fac: TokenFactory);\n Execute(val: {\n bytes: string;\n string: string;\n }): string | undefined;\n /**\n * @throws {@link KeyValidationError}\n */\n private validate;\n /**\n * @throws {@link KeyValidationError}\n */\n Encode(args: any[]): any;\n /**\n * @throws {@link KeyValidationError}\n */\n EncodeObject(val: any, semantic?: SemanticEncoding): any;\n /**\n * @deprecated ExtractSchema has been deprecated in favor of generateSchema\n *\n */\n ExtractSchema(): \"key\";\n generateSchema(): BaseTokenSchema;\n ToKey(val: any): string | undefined;\n ToBigMapKey(val: string): {\n key: {\n string: string;\n };\n type: {\n prim: \"key\";\n };\n };\n compare(key1: string, key2: string): number;\n private getPrefix;\n private getP256PublicKeyComparableBytes;\n findAndReturnTokens(tokenToFind: string, tokens: Token[]): Token[];\n}\n"},{name:"@taquito/michelson-encoder/dist/types/tokens/lambda.d.ts",dts:"import { LambdaTokenSchema } from '../schema/types';\nimport { SemanticEncoding, Token, TokenFactory } from './token';\nexport declare class LambdaToken extends Token {\n protected val: {\n prim: string;\n args: any[];\n annots: any[];\n };\n protected idx: number;\n protected fac: TokenFactory;\n static prim: 'lambda';\n constructor(val: {\n prim: string;\n args: any[];\n annots: any[];\n }, idx: number, fac: TokenFactory);\n get paramSchema(): Token;\n get returnSchema(): Token;\n Execute(val: any): any;\n Encode(args: any[]): any;\n EncodeObject(val: any, semantic?: SemanticEncoding): any;\n /**\n * @deprecated ExtractSchema has been deprecated in favor of generateSchema\n *\n */\n ExtractSchema(): {\n lambda: {\n parameters: any;\n returns: any;\n };\n };\n generateSchema(): LambdaTokenSchema;\n findAndReturnTokens(tokenToFind: string, tokens: Token[]): Token[];\n}\n"},{name:"@taquito/michelson-encoder/dist/types/tokens/list.d.ts",dts:"import { ListTokenSchema } from '../schema/types';\nimport { Token, TokenFactory, Semantic, TokenValidationError, SemanticEncoding } from './token';\n/**\n * @category Error\n * @description Error that indicates a failure happening when parsing encoding/executing a List\n */\nexport declare class ListValidationError extends TokenValidationError {\n value: any;\n token: ListToken;\n name: string;\n constructor(value: any, token: ListToken, message: string);\n}\nexport declare class ListToken extends Token {\n protected val: {\n prim: string;\n args: any[];\n annots: any[];\n };\n protected idx: number;\n protected fac: TokenFactory;\n static prim: 'list';\n constructor(val: {\n prim: string;\n args: any[];\n annots: any[];\n }, idx: number, fac: TokenFactory);\n get valueSchema(): Token;\n /**\n * @throws {@link ListValidationError}\n */\n private validate;\n /**\n * @throws {@link ListValidationError}\n */\n Encode(args: any[]): any;\n /**\n * @throws {@link ListValidationError}\n */\n Execute(val: any, semantics?: Semantic): any;\n /**\n * @throws {@link ListValidationError}\n */\n EncodeObject(args: any, semantic?: SemanticEncoding): any;\n /**\n * @deprecated ExtractSchema has been deprecated in favor of generateSchema\n *\n */\n ExtractSchema(): {\n list: any;\n };\n generateSchema(): ListTokenSchema;\n findAndReturnTokens(tokenToFind: string, tokens: Token[]): Token[];\n}\n"},{name:"@taquito/michelson-encoder/dist/types/tokens/map.d.ts",dts:"import { MapTokenSchema } from '../schema/types';\nimport { ComparableToken, Semantic, SemanticEncoding, Token, TokenFactory, TokenValidationError } from './token';\n/**\n * @category Error\n * @description Error that indicates a failure happening when parsing encoding/executing a Map\n */\nexport declare class MapValidationError extends TokenValidationError {\n value: any;\n token: MapToken;\n name: string;\n constructor(value: any, token: MapToken, message: string);\n}\nexport declare class MapToken extends Token {\n protected val: {\n prim: string;\n args: any[];\n annots: any[];\n };\n protected idx: number;\n protected fac: TokenFactory;\n static prim: 'map';\n constructor(val: {\n prim: string;\n args: any[];\n annots: any[];\n }, idx: number, fac: TokenFactory);\n get ValueSchema(): Token;\n get KeySchema(): ComparableToken;\n /**\n * @throws {@link MapValidationError}\n */\n validate(value: any): void;\n Execute(val: any[], semantics?: Semantic): {\n [key: string]: any;\n };\n private objLitToMichelsonMap;\n /**\n * @throws {@link MapValidationError}\n */\n Encode(args: any[]): any;\n /**\n * @throws {@link MapValidationError}\n */\n EncodeObject(args: any, semantic?: SemanticEncoding): any;\n /**\n * @deprecated ExtractSchema has been deprecated in favor of generateSchema\n *\n */\n ExtractSchema(): {\n map: {\n key: any;\n value: any;\n };\n };\n generateSchema(): MapTokenSchema;\n findAndReturnTokens(tokenToFind: string, tokens: Token[]): Token[];\n}\n"},{name:"@taquito/michelson-encoder/dist/types/tokens/never.d.ts",dts:"import { BaseTokenSchema } from '../schema/types';\nimport { SemanticEncoding, Token, TokenFactory, TokenValidationError } from './token';\n/**\n * @category Error\n * @description Error that indicates a failure happening when parsing encoding/executing a Never Token\n */\nexport declare class NeverTokenError extends TokenValidationError {\n value: any;\n token: NeverToken;\n name: string;\n constructor(value: any, token: NeverToken, message: string);\n}\nexport declare class NeverToken extends Token {\n protected val: {\n prim: string;\n args: any[];\n annots: any[];\n };\n protected idx: number;\n protected fac: TokenFactory;\n static prim: 'never';\n constructor(val: {\n prim: string;\n args: any[];\n annots: any[];\n }, idx: number, fac: TokenFactory);\n /**\n * @throws {@link NeverTokenError}\n */\n Encode(args: any[]): any;\n /**\n * @throws {@link NeverTokenError}\n */\n EncodeObject(val: any, semantic?: SemanticEncoding): any;\n /**\n * @throws {@link NeverTokenError}\n */\n Execute(val: any): void;\n /**\n * @deprecated ExtractSchema has been deprecated in favor of generateSchema\n *\n */\n ExtractSchema(): \"never\";\n generateSchema(): BaseTokenSchema;\n findAndReturnTokens(tokenToFind: string, tokens: Token[]): Token[];\n}\n"},{name:"@taquito/michelson-encoder/dist/types/tokens/operation.d.ts",dts:"import { BaseTokenSchema } from '../schema/types';\nimport { SemanticEncoding, Token, TokenFactory } from './token';\nexport declare class OperationToken extends Token {\n protected val: {\n prim: string;\n args: any[];\n annots: any[];\n };\n protected idx: number;\n protected fac: TokenFactory;\n static prim: 'operation';\n constructor(val: {\n prim: string;\n args: any[];\n annots: any[];\n }, idx: number, fac: TokenFactory);\n Execute(val: any): {\n [key: string]: any;\n };\n Encode(...args: any[]): any;\n EncodeObject(val: any, semantic?: SemanticEncoding): any;\n /**\n * @deprecated ExtractSchema has been deprecated in favor of generateSchema\n *\n */\n ExtractSchema(): \"operation\";\n generateSchema(): BaseTokenSchema;\n findAndReturnTokens(tokenToFind: string, tokens: Token[]): Token[];\n}\n"},{name:"@taquito/michelson-encoder/dist/types/tokens/option.d.ts",dts:"import { OptionTokenSchema } from '../schema/types';\nimport { Token, TokenFactory, Semantic, ComparableToken, SemanticEncoding } from './token';\nexport declare class OptionToken extends ComparableToken {\n protected val: {\n prim: string;\n args: any[];\n annots: any[];\n };\n protected idx: number;\n protected fac: TokenFactory;\n static prim: 'option';\n constructor(val: {\n prim: string;\n args: any[];\n annots: any[];\n }, idx: number, fac: TokenFactory);\n subToken(): Token;\n schema(): Token;\n annot(): string;\n Encode(args: any): any;\n EncodeObject(args: any, semantic?: SemanticEncoding): any;\n Execute(val: any, semantics?: Semantic): {\n Some: any;\n } | null;\n /**\n * @deprecated ExtractSchema has been deprecated in favor of generateSchema\n *\n */\n ExtractSchema(): {\n Some: any;\n };\n generateSchema(): OptionTokenSchema;\n ExtractSignature(): any[][];\n get KeySchema(): ComparableToken;\n compare(val1: any, val2: any): number;\n ToKey(val: any): {\n Some: any;\n } | null;\n ToBigMapKey(val: any): {\n key: any;\n type: Omit;\n };\n findAndReturnTokens(tokenToFind: string, tokens: Token[]): Token[];\n}\n"},{name:"@taquito/michelson-encoder/dist/types/tokens/or.d.ts",dts:'import { OrTokenSchema } from \'../schema/types\';\nimport { Token, TokenFactory, Semantic, ComparableToken, SemanticEncoding, TokenValidationError } from \'./token\';\n/**\n * @category Error\n * @description Error that indicates a failure happening when parsing encoding/executing an OrToken\n */\nexport declare class OrValidationError extends TokenValidationError {\n value: any;\n token: OrToken;\n name: string;\n constructor(value: any, token: OrToken, message: string);\n}\nexport declare class OrToken extends ComparableToken {\n protected val: {\n prim: string;\n args: any[];\n annots: any[];\n };\n protected idx: number;\n protected fac: TokenFactory;\n protected parentTokenType?: "Or" | "Pair" | "Other" | undefined;\n static prim: \'or\';\n constructor(val: {\n prim: string;\n args: any[];\n annots: any[];\n }, idx: number, fac: TokenFactory, parentTokenType?: "Or" | "Pair" | "Other" | undefined);\n Encode(args: any[]): any;\n ExtractSignature(): any;\n /**\n * @throws {@link OrValidationError}\n */\n EncodeObject(args: any, semantic?: SemanticEncoding): any;\n /**\n * @throws {@link OrValidationError}\n */\n private validateJavascriptObject;\n /**\n * @throws {@link OrValidationError}\n */\n Execute(val: any, semantics?: Semantic): any;\n private traversal;\n /**\n * @deprecated ExtractSchema has been deprecated in favor of generateSchema\n *\n */\n ExtractSchema(): any;\n generateSchema(): OrTokenSchema;\n private findToken;\n compare(val1: any, val2: any): any;\n ToKey(val: any): any;\n ToBigMapKey(val: any): {\n key: any;\n type: Omit;\n };\n findAndReturnTokens(tokenToFind: string, tokens: Token[]): Token[];\n protected getIdxForChildren(): number;\n}\n'},{name:"@taquito/michelson-encoder/dist/types/tokens/pair.d.ts",dts:"import { Token, TokenFactory, Semantic, ComparableToken, SemanticEncoding } from './token';\nimport { PairTokenSchema } from '../schema/types';\nimport { MichelsonV1Expression, MichelsonV1ExpressionExtended } from '@taquito/rpc';\nimport { TaquitoError } from '@taquito/core';\n/**\n * @category Error\n * @description Error that indicates in invalid token argument being passed\n */\nexport declare class TokenArgumentValidationError extends TaquitoError {\n message: string;\n name: string;\n constructor(message: string);\n}\n/**\n * @category Error\n * @description Error that indicates a failure occurring when doing a comparison of tokens\n */\nexport declare class TokenComparisonError extends TaquitoError {\n val1: string;\n val2: string;\n name: string;\n constructor(val1: string, val2: string);\n}\nexport declare class PairToken extends ComparableToken {\n static prim: 'pair';\n constructor(val: MichelsonV1Expression, idx: number, fac: TokenFactory, parentTokenType?: 'Or' | 'Pair' | 'Other' | undefined);\n private args;\n private tokens;\n Encode(args: any[]): any;\n ExtractSignature(): any;\n ToBigMapKey(val: any): {\n key: any;\n type: Omit;\n };\n ToKey(val: any): {\n [key: string]: any;\n };\n EncodeObject(args: any, semantic?: SemanticEncoding): any;\n private traversal;\n Execute(val: any, semantics?: Semantic): {\n [key: string]: any;\n };\n /**\n * @deprecated ExtractSchema has been deprecated in favor of generateSchema\n *\n */\n ExtractSchema(): any;\n generateSchema(): PairTokenSchema;\n /**\n * @throws {@link TokenComparisonError}\n */\n compare(val1: any, val2: any): number;\n findAndReturnTokens(tokenToFind: string, tokens: Token[]): Token[];\n protected getIdxForChildren(): number;\n}\n"},{name:"@taquito/michelson-encoder/dist/types/tokens/sapling-state.d.ts",dts:"import { SaplingStateTokenSchema } from '../schema/types';\nimport { Semantic, SemanticEncoding, Token, TokenFactory, TokenValidationError } from './token';\n/**\n * @category Error\n * @description Error that indicates a failure happening when parsing encoding/executing a Sapling State\n */\nexport declare class SaplingStateValidationError extends TokenValidationError {\n value: any;\n token: SaplingStateToken;\n name: string;\n constructor(value: any, token: SaplingStateToken, message: string);\n}\nexport declare class SaplingStateToken extends Token {\n protected val: {\n prim: string;\n args: any[];\n annots: any[];\n };\n protected idx: number;\n protected fac: TokenFactory;\n static prim: 'sapling_state';\n constructor(val: {\n prim: string;\n args: any[];\n annots: any[];\n }, idx: number, fac: TokenFactory);\n private isValid;\n /**\n * @throws {@link SaplingStateValidationError}\n */\n Execute(val: {\n int: string;\n }, semantic?: Semantic): any;\n /**\n * @throws {@link SaplingStateValidationError}\n */\n Encode(args: any[]): any;\n /**\n * @throws {@link SaplingStateValidationError}\n */\n EncodeObject(val: any, semantic?: SemanticEncoding): any;\n /**\n * @deprecated ExtractSchema has been deprecated in favor of generateSchema\n *\n */\n ExtractSchema(): {\n sapling_state: {\n 'memo-size': number;\n };\n };\n generateSchema(): SaplingStateTokenSchema;\n findAndReturnTokens(tokenToFind: string, tokens: Token[]): Token[];\n}\n"},{name:"@taquito/michelson-encoder/dist/types/tokens/sapling-transaction-deprecated.d.ts",dts:"import { SaplingTransactionDeprecatedTokenSchema } from '../schema/types';\nimport { SemanticEncoding, Token, TokenFactory, TokenValidationError } from './token';\n/**\n * @category Error\n * @description Error that indicates a failure happening when parsing encoding/executing a Sapling Transaction Deprecated\n */\nexport declare class SaplingTransactionDeprecatedValidationError extends TokenValidationError {\n value: any;\n token: SaplingTransactionDeprecatedToken;\n name: string;\n constructor(value: any, token: SaplingTransactionDeprecatedToken, message: string);\n}\nexport declare class SaplingTransactionDeprecatedToken extends Token {\n protected val: {\n prim: string;\n args: any[];\n annots: any[];\n };\n protected idx: number;\n protected fac: TokenFactory;\n static prim: 'sapling_transaction_deprecated';\n constructor(val: {\n prim: string;\n args: any[];\n annots: any[];\n }, idx: number, fac: TokenFactory);\n /**\n * @throws {@link SaplingTransactionDeprecatedValidationError}\n */\n Execute(_val: any): void;\n /**\n * @throws {@link SaplingTransactionDeprecatedValidationError}\n */\n private validateBytes;\n private convertUint8ArrayToHexString;\n Encode(args: any[]): any;\n EncodeObject(val: string | Uint8Array, semantic?: SemanticEncoding): import(\"@taquito/rpc\").MichelsonV1Expression;\n /**\n * @deprecated ExtractSchema has been deprecated in favor of generateSchema\n *\n */\n ExtractSchema(): {\n sapling_transaction_deprecated: {\n 'memo-size': number;\n };\n };\n generateSchema(): SaplingTransactionDeprecatedTokenSchema;\n findAndReturnTokens(tokenToFind: string, tokens: Token[]): Token[];\n}\n"},{name:"@taquito/michelson-encoder/dist/types/tokens/sapling-transaction.d.ts",dts:"import { SaplingTransactionTokenSchema } from '../schema/types';\nimport { SemanticEncoding, Token, TokenFactory, TokenValidationError } from './token';\n/**\n * @category Error\n * @description Error that indicates a failure happening when parsing encoding/executing a Sapling Transaction\n */\nexport declare class SaplingTransactionValidationError extends TokenValidationError {\n value: any;\n token: SaplingTransactionToken;\n name: string;\n constructor(value: any, token: SaplingTransactionToken, message: string);\n}\nexport declare class SaplingTransactionToken extends Token {\n protected val: {\n prim: string;\n args: any[];\n annots: any[];\n };\n protected idx: number;\n protected fac: TokenFactory;\n static prim: 'sapling_transaction';\n constructor(val: {\n prim: string;\n args: any[];\n annots: any[];\n }, idx: number, fac: TokenFactory);\n /**\n * @throws {@link SaplingTransactionValidationError}\n */\n Execute(_val: any): void;\n /**\n * @throws {@link SaplingTransactionValidationError}\n */\n private validateBytes;\n private convertUint8ArrayToHexString;\n Encode(args: any[]): any;\n EncodeObject(val: string | Uint8Array, semantic?: SemanticEncoding): import(\"@taquito/rpc\").MichelsonV1Expression;\n /**\n * @deprecated ExtractSchema has been deprecated in favor of generateSchema\n *\n */\n ExtractSchema(): {\n sapling_transaction: {\n 'memo-size': number;\n };\n };\n generateSchema(): SaplingTransactionTokenSchema;\n findAndReturnTokens(tokenToFind: string, tokens: Token[]): Token[];\n}\n"},{name:"@taquito/michelson-encoder/dist/types/tokens/set.d.ts",dts:"import { SetTokenSchema } from '../schema/types';\nimport { Token, TokenFactory, Semantic, TokenValidationError, ComparableToken, SemanticEncoding } from './token';\n/**\n * @category Error\n * @description Error that indicates a failure happening when parsing encoding/executing a Set\n */\nexport declare class SetValidationError extends TokenValidationError {\n value: any;\n token: SetToken;\n name: string;\n constructor(value: any, token: SetToken, message: string);\n}\nexport declare class SetToken extends Token {\n protected val: {\n prim: string;\n args: any[];\n annots: any[];\n };\n protected idx: number;\n protected fac: TokenFactory;\n static prim: 'set';\n constructor(val: {\n prim: string;\n args: any[];\n annots: any[];\n }, idx: number, fac: TokenFactory);\n get KeySchema(): ComparableToken;\n /**\n * @throws {@link SetValidationError}\n */\n private validate;\n /**\n * @throws {@link SetValidationError}\n */\n Encode(args: any[]): any;\n Execute(val: any, semantics?: Semantic): any;\n /**\n * @throws {@link SetValidationError}\n */\n EncodeObject(args: any, semantic?: SemanticEncoding): any;\n /**\n * @deprecated ExtractSchema has been deprecated in favor of generateSchema\n *\n */\n ExtractSchema(): \"set\";\n generateSchema(): SetTokenSchema;\n findAndReturnTokens(tokenToFind: string, tokens: Token[]): Token[];\n}\n"},{name:"@taquito/michelson-encoder/dist/types/tokens/signature.d.ts",dts:"import { ComparableToken, SemanticEncoding, Token, TokenFactory, TokenValidationError } from './token';\nimport { BaseTokenSchema } from '../schema/types';\n/**\n * @category Error\n * @description Error that indicates a failure happening when parsing encoding/executing a Signature\n */\nexport declare class SignatureValidationError extends TokenValidationError {\n value: any;\n token: SignatureToken;\n name: string;\n constructor(value: any, token: SignatureToken, message: string);\n}\nexport declare class SignatureToken extends ComparableToken {\n protected val: {\n prim: string;\n args: any[];\n annots: any[];\n };\n protected idx: number;\n protected fac: TokenFactory;\n static prim: 'signature';\n constructor(val: {\n prim: string;\n args: any[];\n annots: any[];\n }, idx: number, fac: TokenFactory);\n Execute(val: {\n [key: string]: string;\n }): string;\n /**\n * @throws {@link SignatureValidationError}\n */\n private validate;\n /**\n * @throws {@link SignatureValidationError}\n */\n Encode(args: any[]): any;\n /**\n * @throws {@link SignatureValidationError}\n */\n EncodeObject(val: any, semantic?: SemanticEncoding): any;\n /**\n * @deprecated ExtractSchema has been deprecated in favor of generateSchema\n *\n */\n ExtractSchema(): \"signature\";\n generateSchema(): BaseTokenSchema;\n ToKey(val: any): string;\n ToBigMapKey(val: string): {\n key: {\n string: string;\n };\n type: {\n prim: \"signature\";\n };\n };\n findAndReturnTokens(tokenToFind: string, tokens: Token[]): Token[];\n}\n"},{name:"@taquito/michelson-encoder/dist/types/tokens/ticket-deprecated.d.ts",dts:"import { TaquitoError } from '@taquito/core';\nimport { TicketDeprecatedTokenSchema } from '../schema/types';\nimport { Token, TokenFactory, Semantic, SemanticEncoding } from './token';\n/**\n * @category Error\n * @description Error that indicates a failure when encoding and sending a ticket to the blockchain\n */\nexport declare class EncodeTicketDeprecatedError extends TaquitoError {\n name: string;\n constructor();\n}\nexport declare class TicketDeprecatedToken extends Token {\n protected val: {\n prim: string;\n args: any[];\n annots: any[];\n };\n protected idx: number;\n protected fac: TokenFactory;\n static prim: 'ticket_deprecated';\n constructor(val: {\n prim: string;\n args: any[];\n annots: any[];\n }, idx: number, fac: TokenFactory);\n get valueToken(): Token;\n /**\n * @throws {@link EncodeTicketDeprecatedError}\n */\n Encode(_args: any[]): any;\n /**\n * @throws {@link EncodeTicketDeprecatedError}\n */\n EncodeObject(args: any, semantic?: SemanticEncoding): any;\n Execute(val: any, semantics?: Semantic): any;\n /**\n * @deprecated ExtractSchema has been deprecated in favor of generateSchema\n *\n */\n ExtractSchema(): {\n ticketer: \"contract\";\n value: any;\n amount: \"int\";\n };\n generateSchema(): TicketDeprecatedTokenSchema;\n findAndReturnTokens(tokenToFind: string, tokens: Token[]): Token[];\n}\n"},{name:"@taquito/michelson-encoder/dist/types/tokens/ticket.d.ts",dts:"import { TaquitoError } from '@taquito/core';\nimport { TicketTokenSchema } from '../schema/types';\nimport { Token, TokenFactory, Semantic, SemanticEncoding } from './token';\n/**\n * @category Error\n * @description Error that indicates a failure when encoding and sending a ticket to the blockchain\n */\nexport declare class EncodeTicketError extends TaquitoError {\n name: string;\n constructor();\n}\nexport declare class TicketToken extends Token {\n protected val: {\n prim: string;\n args: any[];\n annots: any[];\n };\n protected idx: number;\n protected fac: TokenFactory;\n static prim: 'ticket';\n constructor(val: {\n prim: string;\n args: any[];\n annots: any[];\n }, idx: number, fac: TokenFactory);\n get valueToken(): Token;\n /**\n * @throws {@link EncodeTicketError}\n */\n Encode(_args: any[]): any;\n /**\n * @throws {@link EncodeTicketError}\n */\n EncodeObject(args: any, semantic?: SemanticEncoding): any;\n Execute(val: any, semantics?: Semantic): any;\n /**\n * @deprecated ExtractSchema has been deprecated in favor of generateSchema\n *\n */\n ExtractSchema(): {\n ticketer: \"contract\";\n value: any;\n amount: \"int\";\n };\n generateSchema(): TicketTokenSchema;\n findAndReturnTokens(tokenToFind: string, tokens: Token[]): Token[];\n}\n"},{name:"@taquito/michelson-encoder/dist/types/tokens/token.d.ts",dts:"import { MichelsonV1Expression, MichelsonV1ExpressionExtended } from '@taquito/rpc';\nimport { TokenSchema } from '../schema/types';\nimport { TaquitoError } from '@taquito/core';\n/**\n * @category Error\n * @description Error that indicates a failure when encoding invalid or incorrect data (e.g. if an address is expected but a number is received)\n */\nexport declare abstract class TokenValidationError extends TaquitoError {\n readonly value: any;\n readonly token: Token;\n name: string;\n constructor(value: any, token: Token, baseMessage: string);\n}\nexport type TokenFactory = (val: any, idx: number, parentTokenType?: 'Or' | 'Pair' | 'Other') => Token;\nexport interface Semantic {\n [key: string]: (value: MichelsonV1Expression, schema: MichelsonV1Expression) => any;\n}\nexport interface SemanticEncoding {\n [key: string]: (value: any, type?: MichelsonV1Expression) => MichelsonV1Expression;\n}\n/**\n * @description Possible strategies for mapping between javascript classes and Michelson values\n * Legacy: The old behaviour: { annot1: 'some value', annot2: 'other Value', annot3: { 2: 'yet another value', 3: 'also some value' }}\n * ResetFieldNumbersInNestedObjects: { annot1: 'some value', annot2: 'other Value', annot3: { 0: 'yet another value', 1: 'also some value' }}\n * Latest: This will include new changes as we might implement in the future. This is the suggested value if it does not break your code\n */\nexport type FieldNumberingStrategy = 'Legacy' | 'ResetFieldNumbersInNestedObjects' | 'Latest';\nexport declare abstract class Token {\n protected val: MichelsonV1ExpressionExtended;\n protected idx: number;\n protected fac: TokenFactory;\n protected parentTokenType?: \"Or\" | \"Pair\" | \"Other\" | undefined;\n private static _fieldNumberingStrategy;\n /**\n * @description Gets the strategy used for field numbering in Token execute/encode/decode to convert Michelson values to/from javascript objects, returns a value of type {@link FieldNumberingStrategy} that controls how field numbers are calculated\n */\n static get fieldNumberingStrategy(): FieldNumberingStrategy;\n /**\n * @description Sets the strategy used for field numbering in Token execute/encode/decode to convert Michelson values to/from javascript objects, accepts a value of type {@link FieldNumberingStrategy} that controls how field numbers are calculated\n */\n static set fieldNumberingStrategy(value: FieldNumberingStrategy);\n constructor(val: MichelsonV1ExpressionExtended, idx: number, fac: TokenFactory, parentTokenType?: \"Or\" | \"Pair\" | \"Other\" | undefined);\n protected typeWithoutAnnotations(): Omit;\n annot(): string;\n hasAnnotations(): number | false;\n get tokenVal(): MichelsonV1ExpressionExtended;\n createToken: TokenFactory;\n /**\n * @deprecated ExtractSchema has been deprecated in favor of generateSchema\n *\n */\n abstract ExtractSchema(): any;\n abstract generateSchema(): TokenSchema;\n abstract Execute(val: any, semantics?: Semantic): any;\n abstract Encode(_args: any[]): any;\n abstract EncodeObject(args: any, semantics?: SemanticEncoding): any;\n ExtractSignature(): any[][];\n abstract findAndReturnTokens(tokenToFind: string, tokens: Array): Array;\n}\nexport type BigMapKeyType = string | number | object;\nexport declare abstract class ComparableToken extends Token {\n abstract ToBigMapKey(val: BigMapKeyType): {\n key: {\n [key: string]: string | object[];\n };\n type: {\n prim: string;\n args?: object[];\n };\n };\n abstract ToKey(val: string | MichelsonV1Expression): any;\n compare(o1: string, o2: string): number;\n}\n"},{name:"@taquito/michelson-encoder/dist/types/tokens/tokens.d.ts",dts:"import { PairToken } from './pair';\nimport { NatToken } from './comparable/nat';\nimport { StringToken } from './comparable/string';\nimport { BigMapToken } from './bigmap';\nimport { AddressToken } from './comparable/address';\nimport { MapToken } from './map';\nimport { BoolToken } from './comparable/bool';\nimport { OrToken } from './or';\nimport { ContractToken } from './contract';\nimport { ListToken } from './list';\nimport { MutezToken } from './comparable/mutez';\nimport { BytesToken } from './comparable/bytes';\nimport { OptionToken } from './option';\nimport { TimestampToken } from './comparable/timestamp';\nimport { IntToken } from './comparable/int';\nimport { UnitToken } from './unit';\nimport { KeyToken } from './key';\nimport { KeyHashToken } from './comparable/key_hash';\nimport { SignatureToken } from './signature';\nimport { LambdaToken } from './lambda';\nimport { OperationToken } from './operation';\nimport { SetToken } from './set';\nimport { ChainIDToken } from './chain-id';\nimport { TicketToken } from './ticket';\nimport { TicketDeprecatedToken } from './ticket-deprecated';\nimport { NeverToken } from './never';\nimport { SaplingStateToken } from './sapling-state';\nimport { SaplingTransactionToken } from './sapling-transaction';\nimport { SaplingTransactionDeprecatedToken } from './sapling-transaction-deprecated';\nimport { Bls12381frToken } from './bls12-381-fr';\nimport { Bls12381g1Token } from './bls12-381-g1';\nimport { Bls12381g2Token } from './bls12-381-g2';\nimport { ChestToken } from './chest';\nimport { ChestKeyToken } from './chest-key';\nimport { GlobalConstantToken } from './constant';\nexport declare const tokens: (typeof PairToken | typeof NatToken | typeof StringToken | typeof BigMapToken | typeof AddressToken | typeof MapToken | typeof BoolToken | typeof OrToken | typeof ContractToken | typeof ListToken | typeof MutezToken | typeof BytesToken | typeof OptionToken | typeof TimestampToken | typeof IntToken | typeof UnitToken | typeof KeyToken | typeof KeyHashToken | typeof SignatureToken | typeof LambdaToken | typeof OperationToken | typeof SetToken | typeof ChainIDToken | typeof TicketToken | typeof TicketDeprecatedToken | typeof NeverToken | typeof SaplingStateToken | typeof SaplingTransactionToken | typeof SaplingTransactionDeprecatedToken | typeof Bls12381frToken | typeof Bls12381g1Token | typeof Bls12381g2Token | typeof ChestToken | typeof ChestKeyToken | typeof GlobalConstantToken)[];\n"},{name:"@taquito/michelson-encoder/dist/types/tokens/unit.d.ts",dts:"import { ComparableToken, SemanticEncoding, Token, TokenFactory } from './token';\nimport { BaseTokenSchema } from '../schema/types';\nexport declare class UnitToken extends ComparableToken {\n protected val: {\n prim: string;\n args: any[];\n annots: any[];\n };\n protected idx: number;\n protected fac: TokenFactory;\n static prim: 'unit';\n constructor(val: {\n prim: string;\n args: any[];\n annots: any[];\n }, idx: number, fac: TokenFactory);\n Encode(args: any[]): any;\n EncodeObject(val: any, semantic?: SemanticEncoding): any;\n Execute(_val: {\n prim: string;\n }): symbol;\n /**\n * @deprecated ExtractSchema has been deprecated in favor of generateSchema\n *\n */\n ExtractSchema(): \"unit\";\n generateSchema(): BaseTokenSchema;\n compare(_val1: any, _val2: any): number;\n ToKey(_val: any): symbol;\n ToBigMapKey(_val: any): {\n key: {\n prim: string;\n };\n type: {\n prim: \"unit\";\n };\n };\n findAndReturnTokens(tokenToFind: string, tokens: Token[]): Token[];\n}\n"},{name:"@taquito/michelson-encoder/dist/types/errors.d.ts",dts:"export { ListValidationError } from './tokens/list';\nexport { MapValidationError } from './tokens/map';\nexport { SetValidationError } from './tokens/set';\nexport { BigMapValidationError } from './tokens/bigmap';\nexport { TokenArgumentValidationError, TokenComparisonError } from './tokens/pair';\nexport { OrValidationError } from './tokens/or';\nexport { ChainIDValidationError } from './tokens/chain-id';\nexport { KeyValidationError } from './tokens/key';\nexport { ContractValidationError } from './tokens/contract';\nexport { SignatureValidationError } from './tokens/signature';\nexport { AddressValidationError } from './tokens/comparable/address';\nexport { BytesValidationError } from './tokens/comparable/bytes';\nexport { IntValidationError } from './tokens/comparable/int';\nexport { KeyHashValidationError } from './tokens/comparable/key_hash';\nexport { MutezValidationError } from './tokens/comparable/mutez';\nexport { NatValidationError } from './tokens/comparable/nat';\nexport { EncodeTicketError } from './tokens/ticket';\n"},{name:"@taquito/michelson-encoder/dist/types/michelson-map.d.ts",dts:'import { MichelsonV1Expression } from \'@taquito/rpc\';\nimport { TaquitoError } from \'@taquito/core\';\n/**\n * @category Error\n * @description Error that indicates an invalid map type being passed or used\n */\nexport declare class InvalidMapTypeError extends TaquitoError {\n readonly mapType: any;\n readonly reason: string;\n constructor(mapType: any, reason: string);\n}\ndeclare const michelsonMapTypeSymbol: unique symbol;\nexport type MichelsonMapKey = Array | object | string | boolean | number | null;\n/**\n * @category Error\n * @description Error that indicates a map type mismatch, where an attempt to set a key or value in a Map doesn\'t match the defined type of the Map\n */\nexport declare class MapTypecheckError extends TaquitoError {\n readonly value: any;\n readonly type: any;\n readonly reason: any;\n name: string;\n constructor(value: any, type: any, objectType: \'key\' | \'value\', reason: any);\n}\n/**\n * @description Michelson Map is an abstraction over the michelson native map. It supports complex Pair as key\n */\nexport declare class MichelsonMap {\n private valueMap;\n private keyMap;\n [michelsonMapTypeSymbol]: boolean;\n static isMichelsonMap(obj: any): obj is MichelsonMap;\n private keySchema?;\n private valueSchema?;\n /**\n * @param mapType If specified key and value will be type-checked before being added to the map\n *\n * @example new MichelsonMap({ prim: "map", args: [{prim: "string"}, {prim: "int"}]})\n */\n constructor(mapType?: MichelsonV1Expression);\n setType(mapType: MichelsonV1Expression): void;\n removeType(): void;\n static fromLiteral(obj: {\n [key: string]: any;\n }, mapType?: MichelsonV1Expression): MichelsonMap;\n private typecheckKey;\n private typecheckValue;\n /**\n * @throws {@link MapTypecheckError} when the argument passed does not match the expected schema for value\n */\n private assertTypecheckValue;\n /**\n * @throws {@link MapTypecheckError} when the argument passed does not match the expected schema for key\n */\n private assertTypecheckKey;\n private serializeDeterministically;\n keys(): Generator;\n values(): Generator;\n entries(): Generator<[K, T]>;\n get(key: K): T | undefined;\n /**\n *\n * @description Set a key and a value in the MichelsonMap. If the key already exists, override the current value.\n *\n * @example map.set("myKey", "myValue") // Using a string as key\n *\n * @example map.set({0: "test", 1: "test1"}, "myValue") // Using a pair as key\n *\n * @warn The same key can be represented in multiple ways, depending on the type of the key. This duplicate key situation will cause a runtime error (duplicate key) when sending the map data to the Tezos RPC node.\n *\n * For example, consider a contract with a map whose key is of type boolean. If you set the following values in MichelsonMap: map.set(false, "myValue") and map.set(null, "myValue").\n *\n * You will get two unique entries in the MichelsonMap. These values will both be evaluated as falsy by the MichelsonEncoder and ultimately rejected by the Tezos RPC.\n */\n set(key: K, value: T): void;\n delete(key: K): void;\n has(key: K): boolean;\n clear(): void;\n get size(): number;\n forEach(cb: (value: T, key: K, map: MichelsonMap) => void): void;\n}\nexport {};\n'},{name:"@taquito/michelson-encoder/dist/types/taquito-michelson-encoder.d.ts",dts:"/**\n * @packageDocumentation\n * @module @taquito/michelson-encoder\n */\nexport * from './schema/storage';\nexport * from './schema/parameter';\nexport * from './schema/view-schema';\nexport * from './schema/event-schema';\nexport * from './schema/errors';\nexport * from './schema/types';\nexport { Semantic, SemanticEncoding, BigMapKeyType } from './tokens/token';\nexport * from './errors';\nexport declare const UnitValue: unique symbol;\nexport declare const SaplingStateValue: {};\nexport * from './michelson-map';\nexport { VERSION } from './version';\nexport { FieldNumberingStrategy, Token } from './tokens/token';\n"},{name:"@taquito/michelson-encoder/dist/types/version.d.ts",dts:"export declare const VERSION: {\n commitHash: string;\n version: string;\n};\n"},{name:"@taquito/rpc/dist/types/rpc-client-modules/rpc-cache.d.ts",dts:"import BigNumber from 'bignumber.js';\nimport { RpcClientInterface, RPCOptions } from '../rpc-client-interface';\nimport { BakingRightsQueryArguments, BakingRightsResponse, BalanceResponse, UnstakeRequestsResponse, BallotListResponse, BallotsResponse, BigMapGetResponse, BigMapKey, BigMapResponse, BlockHeaderResponse, BlockMetadata, BlockResponse, ConstantsResponse, ContractResponse, CurrentProposalResponse, CurrentQuorumResponse, DelegateResponse, DelegatesResponse, VotingInfoResponse, AttestationRightsQueryArguments, AttestationRightsResponse, EntrypointsResponse, ForgeOperationsParams, ManagerKeyResponse, OperationHash, PackDataParams, PreapplyParams, PreapplyResponse, ProposalsResponse, ProtocolsResponse, RPCRunCodeParam, RPCRunOperationParam, RPCRunScriptViewParam, RPCRunViewParam, RunCodeResult, RunScriptViewResult, RunViewResult, SaplingDiffResponse, ScriptResponse, StorageResponse, UnparsingMode, VotesListingsResponse, VotingPeriodBlockResult, TicketTokenParams, AllTicketBalances, PendingOperationsQueryArguments, PendingOperationsV1, PendingOperationsV2, RPCSimulateOperationParam, AILaunchCycleResponse, AllDelegatesQueryArguments } from '../types';\ninterface CachedDataInterface {\n [key: string]: {\n handle: () => void;\n response: Promise;\n };\n}\n/***\n * @description RpcClientCache acts as a decorator over the RpcClient instance by caching responses for the period defined by the ttl.\n */\nexport declare class RpcClientCache implements RpcClientInterface {\n private rpcClient;\n private ttl;\n private _cache;\n /**\n *\n * @param rpcClient rpcClient responsible of the interaction with Tezos network through an rpc node\n * @param ttl number representing the time to live (default 1000 milliseconds)\n *\n * @example new RpcClientCache(new RpcClient('https://mainnet.ecadinfra.com/'))\n */\n constructor(rpcClient: RpcClientInterface, ttl?: number);\n getAllCachedData(): CachedDataInterface;\n /**\n * @description Remove all the data in the cache.\n *\n */\n deleteAllCachedData(): void;\n private formatCacheKey;\n private has;\n private get;\n private put;\n private remove;\n private validateAddress;\n private validateContract;\n /**\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Get the block's hash, its unique identifier.\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-hash\n */\n getBlockHash({ block }?: RPCOptions): Promise;\n /**\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description List the ancestors of the given block which, if referred to as the branch in an operation header, are recent enough for that operation to be included in the current block.\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-live-blocks\n */\n getLiveBlocks({ block }?: RPCOptions): Promise;\n /**\n * @param address address from which we want to retrieve the balance\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Access the spendable balance of a contract, excluding frozen bonds\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-context-contracts-contract-id-balance\n */\n getBalance(address: string, { block }?: RPCOptions): Promise;\n /**\n * @param address address from which we want to retrieve the full balance\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Access the full balance of a contract, including frozen bonds and stake.\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-context-contracts-contract-id-full-balance\n */\n getFullBalance(address: string, { block }?: RPCOptions): Promise;\n /**\n * @param address address from which we want to retrieve the staked balance\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Access the staked balance of a contract. Returns None if the contract is originated, or neither delegated nor a delegate.\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-context-contracts-contract-id-staked-balance\n */\n getStakedBalance(address: string, { block }?: RPCOptions): Promise;\n /**\n * @param address address from which we want to retrieve the unstaked finalizable balance\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Access the balance of a contract that was requested for an unstake operation, and is no longer frozen, which means it will appear in the spendable balance of the contract after any stake/unstake/finalize_unstake operation. Returns None if the contract is originated.\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-context-contracts-contract-id-unstaked-finalizable-balance\n */\n getUnstakedFinalizableBalance(address: string, { block }?: RPCOptions): Promise;\n /**\n * @param address address from which we want to retrieve the unstaked frozen balance\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Access the balance of a contract that was requested for an unstake operation, but is still frozen for the duration of the slashing period. Returns None if the contract is originated.\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-context-contracts-contract-id-unstaked-frozen-balance\n */\n getUnstakedFrozenBalance(address: string, { block }?: RPCOptions): Promise;\n /**\n * @param address address from which we want to retrieve the unstake requests\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Access the unstake requests of the contract. The requests that appear in the finalizable field can be finalized, which means that the contract can transfer these (no longer frozen) funds to their spendable balance with a [finalize_unstake] operation call. Returns null if there is no unstake request pending.\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-context-contracts-contract-id-unstake-requests\n */\n getUnstakeRequests(address: string, { block }?: RPCOptions): Promise;\n /**\n * @param address contract address from which we want to retrieve the storage\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Access the data of the contract.\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-context-contracts-contract-id-storage\n */\n getStorage(address: string, { block }?: {\n block: string;\n }): Promise;\n /**\n * @param address contract address from which we want to retrieve the script\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Access the code and data of the contract.\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-context-contracts-contract-id-script\n */\n getScript(address: string, { block }?: {\n block: string;\n }): Promise;\n /**\n * @param address contract address from which we want to retrieve the script\n * @param unparsingMode default is { unparsing_mode: \"Readable\" }\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Access the script of the contract and normalize it using the requested unparsing mode.\n */\n getNormalizedScript(address: string, unparsingMode?: UnparsingMode, { block }?: {\n block: string;\n }): Promise;\n /**\n * @param address contract address from which we want to retrieve\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Access the complete status of a contract.\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-context-contracts-contract-id\n */\n getContract(address: string, { block }?: {\n block: string;\n }): Promise;\n /**\n * @param address contract address from which we want to retrieve the manager\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Access the manager of an implicit contract\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-context-contracts-contract-id-manager-key\n */\n getManagerKey(address: string, { block }?: {\n block: string;\n }): Promise;\n /**\n * @param address contract address from which we want to retrieve the delegate (baker)\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Access the delegate of a contract, if any\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-context-contracts-contract-id-delegate\n */\n getDelegate(address: string, { block }?: {\n block: string;\n }): Promise;\n /**\n * @deprecated Deprecated in favor of getBigMapKeyByID\n * @param address contract address from which we want to retrieve the big map key\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Access the value associated with a key in the big map storage of the contract.\n * @see https://tezos.gitlab.io/active/rpc.html#post-block-id-context-contracts-contract-id-big-map-get\n */\n getBigMapKey(address: string, key: BigMapKey, { block }?: {\n block: string;\n }): Promise;\n /**\n * @param id Big Map ID\n * @param expr Expression hash to query (A b58check encoded Blake2b hash of the expression (The expression can be packed using the pack_data method))\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Access the value associated with a key in a big map.\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-context-big-maps-big-map-id-script-expr\n */\n getBigMapExpr(id: string, expr: string, { block }?: {\n block: string;\n }): Promise;\n /**\n * @param args contains optional query arguments (active, inactive, with_minimal_stake, without_minimal_stake)\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Lists all registered delegates by default with query arguments to filter unneeded values.\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-context-delegates-pkh\n */\n getAllDelegates(args?: AllDelegatesQueryArguments, { block }?: {\n block: string;\n }): Promise;\n /**\n * @param address delegate address which we want to retrieve\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Everything about a delegate\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-context-delegates-pkh\n */\n getDelegates(address: string, { block }?: {\n block: string;\n }): Promise;\n /**\n * @param address delegate address which we want to retrieve\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Returns the delegate info (e.g. voting power) found in the listings of the current voting period\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-context-delegates-pkh-voting-info\n */\n getVotingInfo(address: string, { block }?: {\n block: string;\n }): Promise;\n /**\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description All constants\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-context-constants\n */\n getConstants({ block }?: RPCOptions): Promise;\n /**\n * @param options contains generic configuration for rpc calls to specified block (default to head) and version.\n * @description All the information about a block\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id\n * @example getBlock() will default to `/main/chains/block/head?version=0` which shows { kind: endorsement }\n * @example getBlock({ block: 'head~2', version: 1 }) will return an offset of 2 from head blocks and shows { kind: attestation }\n * @example getBlock({ block: 'BL8fTiWcSxWCjiMVnDkbh6EuhqVPZzgWheJ2dqwrxYRm9AephXh~2' }) will return an offset of 2 blocks from given block hash..\n */\n getBlock({ block }?: RPCOptions): Promise;\n /**\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description The whole block header\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-header\n */\n getBlockHeader({ block }?: RPCOptions): Promise;\n /**\n * @param options contains generic configuration for rpc calls to specified block (default to head) and version\n * @description All the metadata associated to the block\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-metadata\n */\n getBlockMetadata({ block }?: RPCOptions): Promise;\n /**\n * @param args contains optional query arguments (level, cycle, delegate, consensus_key, and max_round)\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Retrieves the list of delegates allowed to bake a block.\n * @see https://gitlab.com/tezos/tezos/-/blob/master/docs/api/paris-openapi-rc.json\n */\n getBakingRights(args?: BakingRightsQueryArguments, { block }?: RPCOptions): Promise;\n /**\n * @param args contains optional query arguments (level, cycle, delegate, and consensus_key)\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Retrieves the delegates allowed to attest a block\n * @see https://gitlab.com/tezos/tezos/-/blob/master/docs/api/paris-openapi-rc.json\n */\n getAttestationRights(args?: AttestationRightsQueryArguments, { block }?: RPCOptions): Promise;\n /**\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Ballots casted so far during a voting period\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-votes-ballot-list\n */\n getBallotList({ block }?: RPCOptions): Promise;\n /**\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Sum of ballots casted so far during a voting period\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-votes-ballots\n */\n getBallots({ block }?: RPCOptions): Promise;\n /**\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Current proposal under evaluation.\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-votes-current-proposal\n */\n getCurrentProposal({ block, }?: RPCOptions): Promise;\n /**\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Current expected quorum.\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-votes-current-quorum\n */\n getCurrentQuorum({ block, }?: RPCOptions): Promise;\n /**\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description List of delegates with their voting power\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-votes-listings\n */\n getVotesListings({ block, }?: RPCOptions): Promise;\n /**\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description List of proposals with number of supporters\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-votes-proposals\n */\n getProposals({ block }?: RPCOptions): Promise;\n /**\n * @param data operation contents to forge\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Forge an operation returning the unsigned bytes\n * @see https://gitlab.com/tezos/tezos/-/blob/master/docs/api/paris-openapi-rc.json\n */\n forgeOperations(data: ForgeOperationsParams, { block }?: RPCOptions): Promise;\n /**\n * @param signedOpBytes signed bytes to inject\n * @description Inject an operation in node and broadcast it and return the ID of the operation\n * @see https://tezos.gitlab.io/shell/rpc.html#post-injection-operation\n */\n injectOperation(signedOpBytes: string): Promise;\n /**\n * @param ops Operations to apply\n * @param options contains generic configuration for rpc calls to specified block and version\n * @description Simulate the application of the operations with the context of the given block and return the result of each operation application\n * @see https://tezos.gitlab.io/active/rpc.html#post-block-id-helpers-preapply-operations\n */\n preapplyOperations(ops: PreapplyParams, { block }?: RPCOptions): Promise;\n /**\n * @param contract address of the contract we want to get the entrypoints of\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Return the list of entrypoints of the contract\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-context-contracts-contract-id-entrypoints\n * @version 005_PsBABY5H\n */\n getEntrypoints(contract: string, { block }?: RPCOptions): Promise;\n /**\n * @deprecated Deprecated in favor of simulateOperation\n * @param op Operation to run\n * @param options contains generic configuration for rpc calls to specified block and version\n * @description Run an operation with the context of the given block and without signature checks and return the operation application result, including the consumed gas.\n * @see https://gitlab.com/tezos/tezos/-/blob/master/docs/api/paris-openapi-rc.json\n */\n runOperation(op: RPCRunOperationParam, { block }?: RPCOptions): Promise;\n /**\n * @param op Operation to simulate\n * @param options contains generic configuration for rpc calls to specified block and version\n * @description Simulate running an operation at some future moment (based on the number of blocks given in the `latency` argument), and return the operation application result.\n * @see https://gitlab.com/tezos/tezos/-/blob/master/docs/api/paris-openapi-rc.json\n */\n simulateOperation(op: RPCSimulateOperationParam, { block }?: RPCOptions): Promise;\n /**\n * @param code Code to run\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Run a Michelson script in the current context\n * @see https://gitlab.com/tezos/tezos/-/blob/master/docs/api/paris-openapi-rc.json\n */\n runCode(code: RPCRunCodeParam, { block }?: RPCOptions): Promise;\n /**\n * @param viewScriptParams Parameters of the script view to run\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Simulate a call to a michelson view\n * @see https://gitlab.com/tezos/tezos/-/blob/master/docs/api/paris-openapi-rc.json\n */\n runScriptView({ unparsing_mode, ...rest }: RPCRunScriptViewParam, { block }?: RPCOptions): Promise;\n /**\n * @param viewParams Parameters of the view to run\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Simulate a call to a view following the TZIP-4 standard.\n * @see https://gitlab.com/tezos/tezos/-/blob/master/docs/api/paris-openapi-rc.json\n */\n runView({ unparsing_mode, ...rest }: RPCRunViewParam, { block }?: RPCOptions): Promise;\n getChainId(): Promise;\n /**\n * @param data Data to pack\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Computes the serialized version of a data expression using the same algorithm as script instruction PACK\n * Note: You should always verify the packed bytes before signing or requesting that they be signed when using the RPC to pack.\n * This precaution helps protect you and your applications users from RPC nodes that have been compromised.\n * A node that is operated by a bad actor, or compromised by a bad actor could return a fully formed operation that does not correspond to the input provided to the RPC endpoint.\n * A safer solution to pack and sign data would be to use the `packDataBytes` function available in the `@taquito/michel-codec` package.\n * @example packData({ data: { string: \"test\" }, type: { prim: \"string\" } })\n * @see https://gitlab.com/tezos/tezos/-/blob/master/docs/api/paris-openapi-rc.json\n */\n packData(data: PackDataParams, { block }?: RPCOptions): Promise<{\n packed: string;\n gas: BigNumber | 'unaccounted' | undefined;\n }>;\n /**\n *\n * @description Return rpc root url\n */\n getRpcUrl(): string;\n /**\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Returns the voting period (index, kind, starting position) and related information (position, remaining) of the interrogated block\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-votes-current-period\n */\n getCurrentPeriod({ block, }?: RPCOptions): Promise;\n /**\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Returns the voting period (index, kind, starting position) and related information (position, remaining) of the next block.Useful to craft operations that will be valid in the next block\n * @example getSuccessorPeriod() will default to successor voting period for /main/chains/block/head.\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-votes-successor-period\n */\n getSuccessorPeriod({ block, }?: RPCOptions): Promise;\n /**\n * @param id Sapling state ID\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Returns the root and a diff of a state starting from an optional offset which is zero by default\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-context-sapling-sapling-state-id-get-diff\n */\n getSaplingDiffById(id: string, { block }?: {\n block: string;\n }): Promise;\n /**\n * @param contract address of the contract we want to get the sapling diff\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Returns the root and a diff of a state starting from an optional offset which is zero by default\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-context-contracts-contract-id-single-sapling-get-diff\n */\n getSaplingDiffByContract(contract: string, { block }?: {\n block: string;\n }): Promise;\n /**\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description get current and next protocol\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-protocols\n */\n getProtocols({ block }?: {\n block: string;\n }): Promise;\n /**\n * @param contract address of the contract we want to retrieve storage information of\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Access the used storage space of the contract\n * @see https://gitlab.com/tezos/tezos/-/blob/master/docs/api/paris-openapi-rc.json\n */\n getStorageUsedSpace(contract: string, { block }?: {\n block: string;\n }): Promise;\n /**\n * @param contract address of the contract we want to retrieve storage information of\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n = * @description Access the paid storage space of the contract\n * @see https://gitlab.com/tezos/tezos/-/blob/master/docs/api/paris-openapi-rc.json\n */\n getStoragePaidSpace(contract: string, { block }?: {\n block: string;\n }): Promise;\n /**\n * @param contract implicit or originated address we want to retrieve ticket balance of\n * @param ticket object to specify a ticket by ticketer, content type and content\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Access the contract's balance of ticket with specified ticketer, content type, and content.\n * @example ticket { ticketer: 'address', content_type: { prim: \"string\" }, content: { string: 'ticket1' } }\n * @see https://gitlab.com/tezos/tezos/-/blob/master/docs/api/paris-openapi-rc.json\n */\n getTicketBalance(contract: string, ticket: TicketTokenParams, { block }?: RPCOptions): Promise;\n /**\n * @param contract originated address we want to retrieve ticket balances of\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Access the complete list of tickets owned by the given contract by scanning the contract's storage.\n * @see https://gitlab.com/tezos/tezos/-/blob/master/docs/api/paris-openapi-rc.json\n */\n getAllTicketBalances(contract: string, { block }?: RPCOptions): Promise;\n /**\n * @description Returns the cycle at which the launch of the Adaptive Issuance feature is set to happen. A result of null means that the feature is not yet set to launch.\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-context-adaptive-issuance-launch-cycle\n */\n getAdaptiveIssuanceLaunchCycle({ block, }?: RPCOptions): Promise;\n /**\n * @description List the prevalidated operations in mempool (accessibility of mempool depends on each rpc endpoint)\n * @param args has 5 optional properties. We support version 1 & 2\n * @default args { version: '2', validated: true, refused: true, outdated, true, branchRefused: true, branchDelayed: true, validationPass: undefined }\n */\n getPendingOperations(args?: PendingOperationsQueryArguments): Promise;\n}\nexport {};\n"},{name:"@taquito/rpc/dist/types/utils/utils.d.ts",dts:"/**\n * Casts object/array items to BigNumber\n * @param data input object or array\n * @param keys keys for processing or all items if not defined\n *\n */\nexport declare function castToBigNumber(data: any, keys?: any): object;\n/**\n * Casts object/array BigNumber items to strings for readability\n * @param data input object or array\n * @param keys keys for processing or all items if not defined\n *\n */\nexport declare function castToString(data: any, keys?: any): object;\n"},{name:"@taquito/rpc/dist/types/opkind.d.ts",dts:'export declare enum OpKind {\n ORIGINATION = "origination",\n DELEGATION = "delegation",\n REVEAL = "reveal",\n TRANSACTION = "transaction",\n ACTIVATION = "activate_account",\n ATTESTATION = "attestation",\n ENDORSEMENT = "endorsement",\n PREATTESTATION = "preattestation",\n PREENDORSEMENT = "preendorsement",\n SET_DEPOSITS_LIMIT = "set_deposits_limit",\n DOUBLE_PREATTESTATION_EVIDENCE = "double_preattestation_evidence",\n DOUBLE_PREENDORSEMENT_EVIDENCE = "double_preendorsement_evidence",\n ATTESTATION_WITH_DAL = "attestation_with_dal",\n ENDORSEMENT_WITH_DAL = "endorsement_with_dal",\n SEED_NONCE_REVELATION = "seed_nonce_revelation",\n DOUBLE_ATTESTATION_EVIDENCE = "double_attestation_evidence",\n DOUBLE_ENDORSEMENT_EVIDENCE = "double_endorsement_evidence",\n DOUBLE_BAKING_EVIDENCE = "double_baking_evidence",\n PROPOSALS = "proposals",\n BALLOT = "ballot",\n FAILING_NOOP = "failing_noop",\n REGISTER_GLOBAL_CONSTANT = "register_global_constant",\n TRANSFER_TICKET = "transfer_ticket",\n INCREASE_PAID_STORAGE = "increase_paid_storage",\n UPDATE_CONSENSUS_KEY = "update_consensus_key",\n DRAIN_DELEGATE = "drain_delegate",\n VDF_REVELATION = "vdf_revelation",\n EVENT = "event",\n TICKET_UPDATES = "ticket_updates",\n SMART_ROLLUP_ORIGINATE = "smart_rollup_originate",\n SMART_ROLLUP_ADD_MESSAGES = "smart_rollup_add_messages",\n SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE = "smart_rollup_execute_outbox_message",\n SMART_ROLLUP_PUBLISH = "smart_rollup_publish",\n SMART_ROLLUP_CEMENT = "smart_rollup_cement",\n SMART_ROLLUP_RECOVER_BOND = "smart_rollup_recover_bond",\n SMART_ROLLUP_REFUTE = "smart_rollup_refute",\n SMART_ROLLUP_TIMEOUT = "smart_rollup_timeout",\n DAL_PUBLISH_COMMITMENT = "dal_publish_commitment"\n}\n'},{name:"@taquito/rpc/dist/types/rpc-client-interface.d.ts",dts:'import { BigNumber } from \'bignumber.js\';\nimport { BakingRightsQueryArguments, BakingRightsResponse, BalanceResponse, UnstakeRequestsResponse, BallotListResponse, BallotsResponse, BigMapGetResponse, BigMapKey, BigMapResponse, BlockHeaderResponse, BlockMetadata, BlockResponse, ConstantsResponse, ContractResponse, CurrentProposalResponse, CurrentQuorumResponse, DelegateResponse, DelegatesResponse, AttestationRightsQueryArguments, AttestationRightsResponse, EntrypointsResponse, ForgeOperationsParams, ManagerKeyResponse, OperationHash, PackDataParams, PreapplyParams, PreapplyResponse, ProposalsResponse, ProtocolsResponse, RPCRunCodeParam, RPCRunOperationParam, RPCRunScriptViewParam, RPCRunViewParam, RunCodeResult, RunScriptViewResult, RunViewResult, SaplingDiffResponse, ScriptResponse, StorageResponse, UnparsingMode, VotesListingsResponse, VotingInfoResponse, VotingPeriodBlockResult, TicketTokenParams, AllTicketBalances, PendingOperationsV1, PendingOperationsV2, PendingOperationsQueryArguments, RPCSimulateOperationParam, AILaunchCycleResponse, AllDelegatesQueryArguments } from \'./types\';\nexport interface RPCOptions {\n block: string;\n version?: 0 | 1 | \'0\' | \'1\';\n}\nexport declare const defaultChain = "main";\nexport declare const defaultRPCOptions: RPCOptions;\nexport interface RpcClientInterface {\n getBlockHash(options?: RPCOptions): Promise;\n getLiveBlocks(options?: RPCOptions): Promise;\n getBalance(address: string, options?: RPCOptions): Promise;\n getFullBalance(address: string, options?: RPCOptions): Promise;\n getStakedBalance(address: string, options?: RPCOptions): Promise;\n getUnstakedFinalizableBalance(address: string, options?: RPCOptions): Promise;\n getUnstakedFrozenBalance(address: string, options?: RPCOptions): Promise;\n getUnstakeRequests(address: string, options?: RPCOptions): Promise;\n getStorage(address: string, options?: RPCOptions): Promise;\n getScript(address: string, options?: RPCOptions): Promise;\n getNormalizedScript(address: string, unparsingMode?: UnparsingMode, options?: RPCOptions): Promise;\n getContract(address: string, options?: RPCOptions): Promise;\n getManagerKey(address: string, options?: RPCOptions): Promise;\n getDelegate(address: string, options?: RPCOptions): Promise;\n getBigMapKey(address: string, key: BigMapKey, options?: RPCOptions): Promise;\n getBigMapExpr(id: string, expr: string, options?: RPCOptions): Promise;\n getAllDelegates(args: AllDelegatesQueryArguments, options?: RPCOptions): Promise;\n getDelegates(address: string, options?: RPCOptions): Promise;\n getVotingInfo(address: string, options?: RPCOptions): Promise;\n getConstants(options?: RPCOptions): Promise;\n getBlock(options?: RPCOptions): Promise;\n getBlockHeader(options?: RPCOptions): Promise;\n getBlockMetadata(options?: RPCOptions): Promise;\n getBakingRights(args: BakingRightsQueryArguments, options?: RPCOptions): Promise;\n getAttestationRights(args: AttestationRightsQueryArguments, options?: RPCOptions): Promise;\n getBallotList(options?: RPCOptions): Promise;\n getBallots(options?: RPCOptions): Promise;\n getCurrentProposal(options?: RPCOptions): Promise;\n getCurrentQuorum(options?: RPCOptions): Promise;\n getVotesListings(options?: RPCOptions): Promise;\n getProposals(options?: RPCOptions): Promise;\n forgeOperations(data: ForgeOperationsParams, options?: RPCOptions): Promise;\n injectOperation(signedOpBytes: string): Promise;\n preapplyOperations(ops: PreapplyParams, options?: RPCOptions): Promise;\n getEntrypoints(contract: string, options?: RPCOptions): Promise;\n runOperation(op: RPCRunOperationParam, options?: RPCOptions): Promise;\n simulateOperation(op: RPCSimulateOperationParam, options?: RPCOptions): Promise;\n runCode(code: RPCRunCodeParam, options?: RPCOptions): Promise;\n runScriptView(viewScriptParams: RPCRunScriptViewParam, options?: RPCOptions): Promise;\n runView(viewParams: RPCRunViewParam, options?: RPCOptions): Promise;\n getChainId(): Promise;\n packData(data: PackDataParams, options?: RPCOptions): Promise<{\n packed: string;\n gas: BigNumber | \'unaccounted\' | undefined;\n }>;\n getRpcUrl(): string;\n getCurrentPeriod(options?: RPCOptions): Promise;\n getSuccessorPeriod(options?: RPCOptions): Promise;\n getSaplingDiffById(id: string, options?: RPCOptions): Promise;\n getSaplingDiffByContract(contract: string, options?: RPCOptions): Promise;\n getProtocols(options?: RPCOptions): Promise;\n getStorageUsedSpace(contract: string, options?: RPCOptions): Promise;\n getStoragePaidSpace(contract: string, options?: RPCOptions): Promise;\n getTicketBalance(contract: string, ticket: TicketTokenParams, options?: RPCOptions): Promise;\n getAllTicketBalances(contract: string, options?: RPCOptions): Promise;\n getAdaptiveIssuanceLaunchCycle(options?: RPCOptions): Promise;\n getPendingOperations(args: PendingOperationsQueryArguments): Promise;\n}\nexport declare enum RPCMethodName {\n GET_BAKING_RIGHTS = "getBakingRights",\n GET_BALLOTS = "getBallots",\n GET_BALLOT_LIST = "getBallotList",\n GET_BIG_MAP_KEY = "getBigMapKey",\n GET_BIG_MAP_EXPR = "getBigMapExpr",\n GET_BLOCK_HASH = "getBlockHash",\n GET_BLOCK = "getBlock",\n GET_BLOCK_HEADER = "getBlockHeader",\n GET_BLOCK_METADATA = "getBlockMetadata",\n GET_BALANCE = "getBalance",\n GET_FULL_BALANCE = "getFullBalance",\n GET_STAKED_BALANCE = "getStakedBalance",\n GET_UNSTAKED_FINALIZABLE_BALANCE = "getUnstakedFinalizableBalance",\n GET_UNSTAKED_FROZEN_BALANCE = "getUnstakedFrozenBalance",\n GET_UNSTAKE_REQUESTS = "getUnstakeRequests",\n GET_CHAIN_ID = "getChainId",\n GET_CONSTANTS = "getConstants",\n GET_CONTRACT = "getContract",\n GET_CURRENT_PERIOD = "getCurrentPeriod",\n GET_CURRENT_PROPOSAL = "getCurrentProposal",\n GET_CURRENT_QUORUM = "getCurrentQuorum",\n GET_DELEGATE = "getDelegate",\n GET_ALL_DELEGATES = "getAllDelegates",\n GET_DELEGATES = "getDelegates",\n GET_VOTING_INFO = "getVotingInfo",\n GET_ATTESTATION_RIGHTS = "getAttestationRights",\n GET_ENTRYPOINTS = "getEntrypoints",\n GET_LIVE_BLOCKS = "getLiveBlocks",\n GET_MANAGER_KEY = "getManagerKey",\n GET_NORMALIZED_SCRIPT = "getNormalizedScript",\n GET_PROPOSALS = "getProposals",\n GET_PROTOCOLS = "getProtocols",\n GET_SAPLING_DIFF_BY_CONTRACT = "getSaplingDiffByContract",\n GET_SAPLING_DIFF_BY_ID = "getSaplingDiffById",\n GET_SCRIPT = "getScript",\n GET_STORAGE = "getStorage",\n GET_SUCCESSOR_PERIOD = "getSuccessorPeriod",\n GET_VOTES_LISTINGS = "getVotesListings",\n PACK_DATA = "packData",\n GET_STORAGE_USED_SPACE = "getStorageUsedSpace",\n GET_STORAGE_PAID_SPACE = "getStoragePaidSpace",\n GET_TICKET_BALANCE = "getTicketBalance",\n GET_ALL_TICKET_BALANCES = "getAllTicketBalances",\n GET_ADAPTIVE_ISSUANCE_LAUNCH_CYCLE = "getAdaptiveIssuanceLaunchCycle",\n GET_PENDING_OPERATIONS = "getPendingOperations"\n}\n'},{name:"@taquito/rpc/dist/types/taquito-rpc.d.ts",dts:"/**\n * @packageDocumentation\n * @module @taquito/rpc\n */\nimport { HttpBackend } from '@taquito/http-utils';\nimport BigNumber from 'bignumber.js';\nimport { RpcClientInterface, RPCOptions } from './rpc-client-interface';\nimport { BakingRightsQueryArguments, BakingRightsResponse, BalanceResponse, UnstakeRequestsResponse, BallotListResponse, BallotsResponse, BigMapGetResponse, BigMapKey, BigMapResponse, BlockHeaderResponse, BlockMetadata, BlockResponse, ConstantsResponse, ContractResponse, CurrentProposalResponse, CurrentQuorumResponse, DelegateResponse, DelegatesResponse, VotingInfoResponse, AttestationRightsQueryArguments, AttestationRightsResponse, EntrypointsResponse, ForgeOperationsParams, ManagerKeyResponse, OperationHash, PackDataParams, PreapplyParams, PreapplyResponse, ProposalsResponse, ProtocolsResponse, RPCRunCodeParam, RPCRunOperationParam, RPCRunViewParam, RPCRunScriptViewParam, RunCodeResult, RunViewResult, RunScriptViewResult, SaplingDiffResponse, ScriptResponse, StorageResponse, UnparsingMode, VotesListingsResponse, VotingPeriodBlockResult, TicketTokenParams, AllTicketBalances, PendingOperationsQueryArguments, PendingOperationsV1, PendingOperationsV2, RPCSimulateOperationParam, AILaunchCycleResponse, AllDelegatesQueryArguments } from './types';\nexport { castToBigNumber } from './utils/utils';\nexport { RPCOptions, defaultChain, defaultRPCOptions, RpcClientInterface, } from './rpc-client-interface';\nexport { RpcClientCache } from './rpc-client-modules/rpc-cache';\nexport * from './types';\nexport { OpKind } from './opkind';\nexport { VERSION } from './version';\n/***\n * @description RpcClient allows interaction with Tezos network through an rpc node\n */\nexport declare class RpcClient implements RpcClientInterface {\n protected url: string;\n protected chain: string;\n protected httpBackend: HttpBackend;\n /**\n *\n * @param url rpc root url\n * @param chain chain (default main)\n * @param httpBackend Http backend that issue http request.\n * You can override it by providing your own if you which to hook in the request/response\n *\n * @example new RpcClient('https://mainnet.ecadinfra.com/', 'main') this will use https://mainnet.ecadinfra.com//chains/main\n */\n constructor(url: string, chain?: string, httpBackend?: HttpBackend);\n protected createURL(path: string): string;\n private validateAddress;\n private validateContract;\n /**\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Get the block's hash, its unique identifier.\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-hash\n */\n getBlockHash({ block }?: RPCOptions): Promise;\n /**\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description List the ancestors of the given block which, if referred to as the branch in an operation header, are recent enough for that operation to be included in the current block.\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-live-blocks\n */\n getLiveBlocks({ block }?: RPCOptions): Promise;\n /**\n * @param address address from which we want to retrieve the balance\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Access the spendable balance of a contract, excluding frozen bonds\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-context-contracts-contract-id-balance\n */\n getBalance(address: string, { block }?: RPCOptions): Promise;\n /**\n * @param address address from which we want to retrieve the full balance\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Access the full balance of a contract, including frozen bonds and stake.\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-context-contracts-contract-id-full-balance\n */\n getFullBalance(address: string, { block }?: RPCOptions): Promise;\n /**\n * @param address address from which we want to retrieve the staked balance\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Access the staked balance of a contract. Returns None if the contract is originated, or neither delegated nor a delegate.\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-context-contracts-contract-id-staked-balance\n */\n getStakedBalance(address: string, { block }?: RPCOptions): Promise;\n /**\n * @param address address from which we want to retrieve the unstaked finalizable balance\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Access the balance of a contract that was requested for an unstake operation, and is no longer frozen, which means it will appear in the spendable balance of the contract after any stake/unstake/finalize_unstake operation. Returns None if the contract is originated.\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-context-contracts-contract-id-unstaked-finalizable-balance\n */\n getUnstakedFinalizableBalance(address: string, { block }?: RPCOptions): Promise;\n /**\n * @param address address from which we want to retrieve the unstaked frozen balance\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Access the balance of a contract that was requested for an unstake operation, but is still frozen for the duration of the slashing period. Returns None if the contract is originated.\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-context-contracts-contract-id-unstaked-frozen-balance\n */\n getUnstakedFrozenBalance(address: string, { block }?: RPCOptions): Promise;\n /**\n * @param address address from which we want to retrieve the unstaked requests\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Access the unstake requests of the contract. The requests that appear in the finalizable field can be finalized, which means that the contract can transfer these (no longer frozen) funds to their spendable balance with a [finalize_unstake] operation call. Returns null if there is no unstake request pending.\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-context-contracts-contract-id-unstake-requests\n */\n getUnstakeRequests(address: string, { block }?: RPCOptions): Promise;\n /**\n * @param address contract address from which we want to retrieve the storage\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Access the data of the contract.\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-context-contracts-contract-id-storage\n */\n getStorage(address: string, { block }?: {\n block: string;\n }): Promise;\n /**\n * @param address contract address from which we want to retrieve the script\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Access the code and data of the contract.\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-context-contracts-contract-id-script\n */\n getScript(address: string, { block }?: {\n block: string;\n }): Promise;\n /**\n * @param address contract address from which we want to retrieve the script\n * @param unparsingMode default is { unparsing_mode: \"Readable\" }\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Access the script of the contract and normalize it using the requested unparsing mode.\n */\n getNormalizedScript(address: string, unparsingMode?: UnparsingMode, { block }?: {\n block: string;\n }): Promise;\n /**\n * @param address contract address from which we want to retrieve\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Access the complete status of a contract.\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-context-contracts-contract-id\n */\n getContract(address: string, { block }?: {\n block: string;\n }): Promise;\n /**\n * @param address contract address from which we want to retrieve the manager\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Access the manager of an implicit contract\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-context-contracts-contract-id-manager-key\n */\n getManagerKey(address: string, { block }?: {\n block: string;\n }): Promise;\n /**\n * @param address contract address from which we want to retrieve the delegate (baker)\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Access the delegate of a contract, if any\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-context-contracts-contract-id-delegate\n */\n getDelegate(address: string, { block }?: {\n block: string;\n }): Promise;\n /**\n * @deprecated Deprecated in favor of getBigMapKeyByID\n * @param address contract address from which we want to retrieve the big map key\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Access the value associated with a key in the big map storage of the contract.\n * @see https://tezos.gitlab.io/active/rpc.html#post-block-id-context-contracts-contract-id-big-map-get\n */\n getBigMapKey(address: string, key: BigMapKey, { block }?: {\n block: string;\n }): Promise;\n /**\n * @param id Big Map ID\n * @param expr Expression hash to query (A b58check encoded Blake2b hash of the expression (The expression can be packed using the pack_data method))\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Access the value associated with a key in a big map.\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-context-big-maps-big-map-id-script-expr\n */\n getBigMapExpr(id: string, expr: string, { block }?: {\n block: string;\n }): Promise;\n /**\n * @param args contains optional query arguments (active, inactive, with_minimal_stake, without_minimal_stake)\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Lists all registered delegates by default with query arguments to filter unneeded values.\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-context-delegates-pkh\n */\n getAllDelegates(args?: AllDelegatesQueryArguments, { block }?: {\n block: string;\n }): Promise;\n /**\n * @param address delegate address which we want to retrieve\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Everything about a delegate\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-context-delegates-pkh\n */\n getDelegates(address: string, { block }?: {\n block: string;\n }): Promise;\n /**\n * @param address delegate address which we want to retrieve\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Returns the delegate info (e.g. voting power) found in the listings of the current voting period\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-context-delegates-pkh-voting-info\n */\n getVotingInfo(address: string, { block }?: {\n block: string;\n }): Promise;\n /**\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description All constants\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-context-constants\n */\n getConstants({ block }?: RPCOptions): Promise;\n /**\n * @param options contains generic configuration for rpc calls to specified block (default to head) and version.\n * @description All the information about a block\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id\n * @example getBlock() will default to `/main/chains/block/head?version=1` which shows { kind: attestation }\n * @example getBlock({ block: 'head~2', version: 0 }) will return an offset of 2 from head blocks and shows { kind: endorsement }\n * @example getBlock({ block: 'BL8fTiWcSxWCjiMVnDkbh6EuhqVPZzgWheJ2dqwrxYRm9AephXh~2' }) will return an offset of 2 blocks from given block hash..\n */\n getBlock({ block, version }?: RPCOptions): Promise;\n /**\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description The whole block header\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-header\n */\n getBlockHeader({ block }?: RPCOptions): Promise;\n /**\n * @param options contains generic configuration for rpc calls to specified block (default to head) and version\n * @description All the metadata associated to the block\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-metadata\n */\n getBlockMetadata({ block, version, }?: RPCOptions): Promise;\n /**\n * @param args contains optional query arguments (level, cycle, delegate, consensus_key, and max_round)\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Retrieves the list of delegates allowed to bake a block.\n * @see https://gitlab.com/tezos/tezos/-/blob/master/docs/api/paris-openapi-rc.json\n */\n getBakingRights(args?: BakingRightsQueryArguments, { block }?: RPCOptions): Promise;\n /**\n * @param args contains optional query arguments (level, cycle, delegate, and consensus_key)\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Retrieves the delegates allowed to attest a block\n * @see https://gitlab.com/tezos/tezos/-/blob/master/docs/api/paris-openapi-rc.json\n */\n getAttestationRights(args?: AttestationRightsQueryArguments, { block }?: RPCOptions): Promise;\n /**\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Ballots casted so far during a voting period\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-votes-ballot-list\n */\n getBallotList({ block }?: RPCOptions): Promise;\n /**\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Sum of ballots casted so far during a voting period\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-votes-ballots\n */\n getBallots({ block }?: RPCOptions): Promise;\n /**\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Current proposal under evaluation.\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-votes-current-proposal\n */\n getCurrentProposal({ block, }?: RPCOptions): Promise;\n /**\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Current expected quorum.\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-votes-current-quorum\n */\n getCurrentQuorum({ block, }?: RPCOptions): Promise;\n /**\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description List of delegates with their voting power\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-votes-listings\n */\n getVotesListings({ block, }?: RPCOptions): Promise;\n /**\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description List of proposals with number of supporters\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-votes-proposals\n */\n getProposals({ block }?: RPCOptions): Promise;\n /**\n * @param data operation contents to forge\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Forge an operation returning the unsigned bytes\n * @see https://gitlab.com/tezos/tezos/-/blob/master/docs/api/paris-openapi-rc.json\n */\n forgeOperations(data: ForgeOperationsParams, { block }?: RPCOptions): Promise;\n /**\n * @param signedOpBytes signed bytes to inject\n * @description Inject an operation in node and broadcast it and return the ID of the operation\n * @see https://tezos.gitlab.io/shell/rpc.html#post-injection-operation\n */\n injectOperation(signedOpBytes: string): Promise;\n /**\n * @param ops Operations to apply\n * @param options contains generic configuration for rpc calls to specified block and version\n * @description Simulate the application of the operations with the context of the given block and return the result of each operation application\n * @see https://tezos.gitlab.io/active/rpc.html#post-block-id-helpers-preapply-operations\n */\n preapplyOperations(ops: PreapplyParams, { block, version }?: RPCOptions): Promise;\n /**\n * @param contract address of the contract we want to get the entrypoints of\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Return the list of entrypoints of the contract\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-context-contracts-contract-id-entrypoints\n * @version 005_PsBABY5H\n */\n getEntrypoints(contract: string, { block }?: RPCOptions): Promise;\n /**\n * @deprecated Deprecated in favor of simulateOperation\n * @param op Operation to run\n * @param options contains generic configuration for rpc calls to specified block and version\n * @description Run an operation with the context of the given block and without signature checks and return the operation application result, including the consumed gas.\n * @see https://gitlab.com/tezos/tezos/-/blob/master/docs/api/paris-openapi-rc.json\n */\n runOperation(op: RPCRunOperationParam, { block, version }?: RPCOptions): Promise;\n /**\n * @param op Operation to simulate\n * @param options contains generic configuration for rpc calls to specified block and version\n * @description Simulate running an operation at some future moment (based on the number of blocks given in the `latency` argument), and return the operation application result.\n * @see https://gitlab.com/tezos/tezos/-/blob/master/docs/api/paris-openapi-rc.json\n */\n simulateOperation(op: RPCSimulateOperationParam, { block, version }?: RPCOptions): Promise;\n /**\n * @param code Code to run\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Run a Michelson script in the current context\n * @see https://gitlab.com/tezos/tezos/-/blob/master/docs/api/paris-openapi-rc.json\n */\n runCode(code: RPCRunCodeParam, { block }?: RPCOptions): Promise;\n /**\n * @param viewScriptParams Parameters of the script view to run\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Simulate a call to a michelson view\n * @see https://gitlab.com/tezos/tezos/-/blob/master/docs/api/paris-openapi-rc.json\n */\n runScriptView({ unparsing_mode, ...rest }: RPCRunScriptViewParam, { block }?: RPCOptions): Promise;\n /**\n * @param viewParams Parameters of the view to run\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Simulate a call to a view following the TZIP-4 standard.\n * @see https://gitlab.com/tezos/tezos/-/blob/master/docs/api/paris-openapi-rc.json\n */\n runView({ unparsing_mode, ...rest }: RPCRunViewParam, { block }?: RPCOptions): Promise;\n getChainId(): Promise;\n /**\n * @param data Data to pack\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Computes the serialized version of a data expression using the same algorithm as script instruction PACK\n * Note: You should always verify the packed bytes before signing or requesting that they be signed when using the RPC to pack.\n * This precaution helps protect you and your applications users from RPC nodes that have been compromised.\n * A node that is operated by a bad actor, or compromised by a bad actor could return a fully formed operation that does not correspond to the input provided to the RPC endpoint.\n * A safer solution to pack and sign data would be to use the `packDataBytes` function available in the `@taquito/michel-codec` package.\n * @example packData({ data: { string: \"test\" }, type: { prim: \"string\" } })\n * @see https://gitlab.com/tezos/tezos/-/blob/master/docs/api/paris-openapi-rc.json\n */\n packData(data: PackDataParams, { block }?: RPCOptions): Promise<{\n packed: string;\n gas: BigNumber | \"unaccounted\" | undefined;\n }>;\n /**\n *\n * @description Return rpc root url\n */\n getRpcUrl(): string;\n /**\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Returns the voting period (index, kind, starting position) and related information (position, remaining) of the interrogated block\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-votes-current-period\n */\n getCurrentPeriod({ block, }?: RPCOptions): Promise;\n /**\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Returns the voting period (index, kind, starting position) and related information (position, remaining) of the next block.Useful to craft operations that will be valid in the next block\n * @example getSuccessorPeriod() will default to successor voting period for /main/chains/block/head.\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-votes-successor-period\n */\n getSuccessorPeriod({ block, }?: RPCOptions): Promise;\n /**\n * @param id Sapling state ID\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Returns the root and a diff of a state starting from an optional offset which is zero by default\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-context-sapling-sapling-state-id-get-diff\n */\n getSaplingDiffById(id: string, { block }?: {\n block: string;\n }): Promise;\n /**\n * @param contract address of the contract we want to get the sapling diff\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Returns the root and a diff of a state starting from an optional offset which is zero by default\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-context-contracts-contract-id-single-sapling-get-diff\n */\n getSaplingDiffByContract(contract: string, { block }?: {\n block: string;\n }): Promise;\n /**\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description get current and next protocol\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-protocols\n */\n getProtocols({ block }?: {\n block: string;\n }): Promise;\n /**\n * @param contract address of the contract we want to retrieve storage information of\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Access the used storage space of the contract\n * @see https://gitlab.com/tezos/tezos/-/blob/master/docs/api/paris-openapi-rc.json\n */\n getStorageUsedSpace(contract: string, { block }?: {\n block: string;\n }): Promise;\n /**\n * @param contract address of the contract we want to retrieve storage information of\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Access the paid storage space of the contract\n * @see https://gitlab.com/tezos/tezos/-/blob/master/docs/api/paris-openapi-rc.json\n */\n getStoragePaidSpace(contract: string, { block }?: {\n block: string;\n }): Promise;\n /**\n * @param contract implicit or originated address we want to retrieve ticket balance of\n * @param ticket object to specify a ticket by ticketer, content type and content\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Access the contract's balance of ticket with specified ticketer, content type, and content.\n * @example ticket { ticketer: 'address', content_type: { prim: \"string\" }, content: { string: 'ticket1' } }\n * @see https://tezos.gitlab.io/protocols/016_mumbai.html#rpc-changes\n */\n getTicketBalance(contract: string, ticket: TicketTokenParams, { block }?: {\n block: string;\n }): Promise;\n /**\n * @param contract originated address we want to retrieve ticket balances of\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @description Access the complete list of tickets owned by the given contract by scanning the contract's storage.\n * @see https://tezos.gitlab.io/protocols/016_mumbai.html#rpc-changes\n */\n getAllTicketBalances(contract: string, { block }?: {\n block: string;\n }): Promise;\n /**\n * @description Returns the cycle at which the launch of the Adaptive Issuance feature is set to happen. A result of null means that the feature is not yet set to launch.\n * @param options contains generic configuration for rpc calls to specified block (default to head)\n * @see https://tezos.gitlab.io/active/rpc.html#get-block-id-context-adaptive-issuance-launch-cycle\n */\n getAdaptiveIssuanceLaunchCycle({ block, }?: {\n block: string;\n }): Promise;\n /**\n * @description List the prevalidated operations in mempool (accessibility of mempool depends on each rpc endpoint)\n * @param args has 5 optional properties. We support version 1 & 2\n * @default args { version: '2', validated: true, refused: true, outdated, true, branchRefused: true, branchDelayed: true, validationPass: undefined }\n * @see https://gitlab.com/tezos/tezos/-/blob/master/docs/api/paris-mempool-openapi-rc.json\n */\n getPendingOperations(args?: PendingOperationsQueryArguments): Promise;\n}\n"},{name:"@taquito/rpc/dist/types/types.d.ts",dts:"import BigNumber from 'bignumber.js';\nimport { OpKind } from './opkind';\nexport type BalanceResponse = BigNumber;\nexport type StorageResponse = ScriptedContracts['storage'];\nexport type ScriptResponse = ScriptedContracts;\nexport type BigMapGetResponse = MichelsonV1Expression;\nexport type ManagerResponse = {\n manager: string;\n};\nexport type ManagerKeyResponse = string | {\n key: string;\n};\nexport type DelegateResponse = string | null;\nexport type OperationHash = string;\nexport type UnstakeRequestsResponse = {\n finalizable: {\n delegate: string;\n cycle: number;\n amount: BigNumber;\n }[];\n unfinalizable: {\n delegate: string;\n requests: {\n cycle: number;\n amount: BigNumber;\n }[];\n };\n} | null;\ninterface INodeExtender {\n length: string;\n segment: string;\n proof: string;\n}\ntype OtherEltsInner = {\n value: any;\n} | {\n inode_extender: INodeExtender;\n};\nexport type OtherElts = {\n node: [string, {\n value: string;\n } | {\n node: string;\n }][];\n} | {\n other_elts: OtherEltsInner;\n};\nexport interface Inode {\n length: string;\n proofs: [string | null, string | null];\n}\nexport interface DelegatesResponse {\n full_balance?: BigNumber;\n current_frozen_deposits?: BigNumber;\n frozen_deposits?: BigNumber;\n staking_balance: BigNumber;\n delegated_contracts: string[];\n delegated_balance: BigNumber;\n min_delegated_in_current_cycle?: MinDelegatedInCurrentCycle;\n deactivated: boolean;\n total_delegated_stake?: BigNumber;\n staking_denominator?: BigNumber;\n active_consensus_key?: string;\n grace_period: number;\n pending_denunciations?: boolean;\n frozen_deposits_limit?: BigNumber;\n voting_power?: BigNumber;\n current_ballot?: BallotVote;\n current_proposals?: string[];\n remaining_proposals?: number;\n pending_consensus_keys?: PendingConsensusKey[];\n balance?: BigNumber;\n frozen_balance?: BigNumber;\n frozen_balance_by_cycle?: Frozenbalancebycycle[];\n}\nexport type MinDelegatedInCurrentCycle = {\n amount: string;\n level?: LevelInfo;\n};\nexport type PendingConsensusKey = {\n cycle: number;\n pkh: string;\n};\nexport type VotingInfoResponse = {\n voting_power?: string;\n current_ballot?: BallotListResponseEnum;\n current_proposals?: string[];\n remaining_proposals?: number;\n};\ninterface Frozenbalancebycycle {\n cycle: number;\n deposit?: BigNumber;\n deposits?: BigNumber;\n fees: BigNumber;\n rewards: BigNumber;\n}\nexport type BigMapKey = {\n key: {\n [key: string]: string | object[];\n };\n type: {\n prim: string;\n args?: object[];\n };\n};\nexport type LiquidityBakingToggleVotes = 'on' | 'off' | 'pass';\nexport type AdaptiveIssuanceVote = 'on' | 'off' | 'pass';\nexport interface BlockFullHeader {\n level: number;\n proto: number;\n predecessor: string;\n timestamp: TimeStampMixed;\n validation_pass: number;\n operations_hash: string;\n fitness: string[];\n context: string;\n payload_hash?: string;\n payload_round?: number;\n priority?: number;\n proof_of_work_nonce: string;\n seed_nonce_hash?: string;\n liquidity_baking_toggle_vote?: LiquidityBakingToggleVotes;\n adaptive_issuance_vote?: AdaptiveIssuanceVote;\n liquidity_baking_escape_vote?: boolean | LiquidityBakingToggleVotes;\n signature: string;\n}\nexport type InlinedAttestationKindEnum = OpKind.ATTESTATION;\nexport type InlinedEndorsementKindEnum = OpKind.ENDORSEMENT;\nexport interface InlinedAttestationContents {\n kind: InlinedAttestationKindEnum;\n slot?: number;\n round?: number;\n block_payload_hash?: string;\n level: number;\n}\nexport interface InlinedEndorsementContents {\n kind: InlinedEndorsementKindEnum;\n slot?: number;\n round?: number;\n block_payload_hash?: string;\n level: number;\n}\nexport interface InlinedPreattestationContents {\n kind: OpKind.PREATTESTATION;\n slot: number;\n level: number;\n round: number;\n block_payload_hash: string;\n}\nexport interface InlinedPreEndorsementContents {\n kind: OpKind.PREENDORSEMENT;\n slot: number;\n level: number;\n round: number;\n block_payload_hash: string;\n}\nexport interface InlinedAttestation {\n branch: string;\n operations: InlinedAttestationContents;\n signature?: string;\n}\nexport interface InlinedEndorsement {\n branch: string;\n operations: InlinedEndorsementContents;\n signature?: string;\n}\nexport interface InlinedPreattestation {\n branch: string;\n operations: InlinedPreattestationContents;\n signature?: string;\n}\nexport interface InlinedPreEndorsement {\n branch: string;\n operations: InlinedPreEndorsementContents;\n signature?: string;\n}\nexport type BallotVote = 'nay' | 'yay' | 'pass';\nexport interface OperationContentsAttestation {\n kind: OpKind.ATTESTATION;\n level: number;\n slot?: number;\n round?: number;\n block_payload_hash?: string;\n}\nexport interface OperationContentsEndorsement {\n kind: OpKind.ENDORSEMENT;\n level: number;\n slot?: number;\n round?: number;\n block_payload_hash?: string;\n}\nexport interface OperationContentsPreattestation {\n kind: OpKind.PREATTESTATION;\n slot: number;\n level: number;\n round: number;\n block_payload_hash: string;\n}\nexport interface OperationContentsPreEndorsement {\n kind: OpKind.PREENDORSEMENT;\n slot: number;\n level: number;\n round: number;\n block_payload_hash: string;\n}\nexport interface OperationContentsDoublePreattestation {\n kind: OpKind.DOUBLE_PREATTESTATION_EVIDENCE;\n op1: InlinedPreattestation;\n op2: InlinedPreattestation;\n}\nexport interface OperationContentsDoublePreEndorsement {\n kind: OpKind.DOUBLE_PREENDORSEMENT_EVIDENCE;\n op1: InlinedPreEndorsement;\n op2: InlinedPreEndorsement;\n}\nexport interface OperationContentsSetDepositsLimit {\n kind: OpKind.SET_DEPOSITS_LIMIT;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n limit?: string;\n}\nexport interface OperationContentsAttestationWithDal {\n kind: OpKind.ATTESTATION_WITH_DAL;\n slot: number;\n level: number;\n round: number;\n block_payload_hash: string;\n dal_attestation: string;\n}\nexport interface OperationContentsEndorsementWithDal {\n kind: OpKind.ENDORSEMENT_WITH_DAL;\n slot: number;\n level: number;\n round: number;\n block_payload_hash: string;\n dal_attestation: string;\n}\nexport interface OperationContentsRevelation {\n kind: OpKind.SEED_NONCE_REVELATION;\n level: number;\n nonce: string;\n}\nexport interface OperationContentsVdfRevelation {\n kind: OpKind.VDF_REVELATION;\n solution: string[];\n}\nexport interface OperationContentsDoubleAttestation {\n kind: OpKind.DOUBLE_ATTESTATION_EVIDENCE;\n op1: InlinedAttestation;\n op2: InlinedAttestation;\n slot?: number;\n}\nexport interface OperationContentsDoubleEndorsement {\n kind: OpKind.DOUBLE_ENDORSEMENT_EVIDENCE;\n op1: InlinedEndorsement;\n op2: InlinedEndorsement;\n slot?: number;\n}\nexport interface OperationContentsDoubleBaking {\n kind: OpKind.DOUBLE_BAKING_EVIDENCE;\n bh1: BlockFullHeader;\n bh2: BlockFullHeader;\n}\nexport interface OperationContentsActivateAccount {\n kind: OpKind.ACTIVATION;\n pkh: string;\n secret: string;\n}\nexport interface OperationContentsFailingNoop {\n kind: OpKind.FAILING_NOOP;\n arbitrary: string;\n}\nexport interface OperationContentsProposals {\n kind: OpKind.PROPOSALS;\n source: string;\n period: number;\n proposals: string[];\n}\nexport interface OperationContentsBallot {\n kind: OpKind.BALLOT;\n source: string;\n period: number;\n proposal: string;\n ballot: BallotVote;\n}\nexport interface OperationContentsReveal {\n kind: OpKind.REVEAL;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n public_key: string;\n}\nexport interface OperationContentsTransaction {\n kind: OpKind.TRANSACTION;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n amount: string;\n destination: string;\n parameters?: TransactionOperationParameter;\n}\nexport interface OperationContentsOrigination {\n kind: OpKind.ORIGINATION;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n balance: string;\n delegate?: string;\n script?: ScriptedContracts;\n}\nexport interface OperationContentsDelegation {\n kind: OpKind.DELEGATION;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n delegate?: string;\n}\nexport interface OperationContentsRegisterGlobalConstant {\n kind: OpKind.REGISTER_GLOBAL_CONSTANT;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n value: MichelsonV1Expression;\n}\nexport interface OperationContentsTransferTicket {\n kind: OpKind.TRANSFER_TICKET;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n ticket_contents: MichelsonV1Expression;\n ticket_ty: MichelsonV1Expression;\n ticket_ticketer: string;\n ticket_amount: string;\n destination: string;\n entrypoint: string;\n}\nexport interface OperationContentsUpdateConsensusKey {\n kind: OpKind.UPDATE_CONSENSUS_KEY;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n pk: string;\n}\nexport interface OperationContentsDrainDelegate {\n kind: OpKind.DRAIN_DELEGATE;\n consensus_key: string;\n delegate: string;\n destination: string;\n}\nexport interface OperationContentsIncreasePaidStorage {\n kind: OpKind.INCREASE_PAID_STORAGE;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n amount: string;\n destination: string;\n}\nexport interface OperationContentsSmartRollupOriginate {\n kind: OpKind.SMART_ROLLUP_ORIGINATE;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n pvm_kind: PvmKind;\n kernel: string;\n parameters_ty: MichelsonV1Expression;\n whitelist?: string[];\n}\nexport interface OperationContentsSmartRollupAddMessages {\n kind: OpKind.SMART_ROLLUP_ADD_MESSAGES;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n message: string[];\n}\nexport interface OperationContentsSmartRollupExecuteOutboxMessage {\n kind: OpKind.SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n rollup: string;\n cemented_commitment: string;\n output_proof: string;\n}\nexport interface OperationContentsSmartRollupPublish {\n kind: OpKind.SMART_ROLLUP_PUBLISH;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n rollup: string;\n commitment: SmartRollupPublishCommitment;\n}\nexport interface OperationContentsSmartRollupCement {\n kind: OpKind.SMART_ROLLUP_CEMENT;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n rollup: string;\n commitment: string;\n}\nexport interface OperationContentsSmartRollupRefute {\n kind: OpKind.SMART_ROLLUP_REFUTE;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n rollup: string;\n opponent: string;\n refutation: SmartRollupRefutation;\n}\nexport interface OperationContentsSmartRollupRecoverBond {\n kind: OpKind.SMART_ROLLUP_RECOVER_BOND;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n rollup: string;\n staker: string;\n}\nexport interface OperationContentsSmartRollupTimeout {\n kind: OpKind.SMART_ROLLUP_TIMEOUT;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n rollup: string;\n stakers: SmartRollupTimeoutStakers;\n}\nexport interface OperationContentsDalPublishCommitment {\n kind: OpKind.DAL_PUBLISH_COMMITMENT;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n slot_header: {\n slot_index: number;\n commitment: string;\n commitment_proof: string;\n };\n}\nexport type OperationContents = OperationContentsAttestation | OperationContentsPreattestation | OperationContentsDoublePreattestation | OperationContentsEndorsement | OperationContentsPreEndorsement | OperationContentsDoublePreEndorsement | OperationContentsRevelation | OperationContentsVdfRevelation | OperationContentsDoubleAttestation | OperationContentsDoubleEndorsement | OperationContentsDoubleBaking | OperationContentsActivateAccount | OperationContentsProposals | OperationContentsBallot | OperationContentsReveal | OperationContentsTransaction | OperationContentsOrigination | OperationContentsDelegation | OperationContentsAttestationWithDal | OperationContentsEndorsementWithDal | OperationContentsFailingNoop | OperationContentsRegisterGlobalConstant | OperationContentsSetDepositsLimit | OperationContentsTransferTicket | OperationContentsUpdateConsensusKey | OperationContentsDrainDelegate | OperationContentsIncreasePaidStorage | OperationContentsSmartRollupOriginate | OperationContentsSmartRollupAddMessages | OperationContentsSmartRollupExecuteOutboxMessage | OperationContentsSmartRollupPublish | OperationContentsSmartRollupCement | OperationContentsSmartRollupRefute | OperationContentsSmartRollupRecoverBond | OperationContentsSmartRollupTimeout | OperationContentsDalPublishCommitment;\nexport interface OperationContentsAndResultMetadataExtended1 {\n balance_updates?: OperationMetadataBalanceUpdates[];\n delegate: string;\n consensus_power: number;\n consensus_key: string;\n}\nexport interface OperationContentsAndResultMetadataExtended0 {\n balance_updates?: OperationMetadataBalanceUpdates[];\n delegate: string;\n endorsement_power: number;\n consensus_key?: string;\n}\nexport interface OperationContentsAndResultMetadataPreattestation {\n balance_updates?: OperationMetadataBalanceUpdates[];\n delegate: string;\n consensus_power: number;\n consensus_key?: string;\n}\nexport interface OperationContentsAndResultMetadataPreEndorsement {\n balance_updates?: OperationMetadataBalanceUpdates[];\n delegate: string;\n preendorsement_power: number;\n consensus_key?: string;\n}\nexport interface OperationContentsAndResultMetadataReveal {\n balance_updates?: OperationMetadataBalanceUpdates[];\n operation_result: OperationResultReveal;\n internal_operation_results?: InternalOperationResult[];\n}\nexport interface OperationContentsAndResultMetadataTransaction {\n balance_updates?: OperationMetadataBalanceUpdates[];\n operation_result: OperationResultTransaction;\n internal_operation_results?: InternalOperationResult[];\n}\nexport interface OperationContentsAndResultMetadataDelegation {\n balance_updates?: OperationMetadataBalanceUpdates[];\n operation_result: OperationResultDelegation;\n internal_operation_results?: InternalOperationResult[];\n}\nexport interface OperationContentsAndResultMetadataRegisterGlobalConstant {\n balance_updates?: OperationMetadataBalanceUpdates[];\n operation_result: OperationResultRegisterGlobalConstant;\n internal_operation_results?: InternalOperationResult[];\n}\nexport interface OperationContentsAndResultMetadataSetDepositsLimit {\n balance_updates?: OperationMetadataBalanceUpdates[];\n operation_result: OperationResultSetDepositsLimit;\n internal_operation_results?: InternalOperationResult[];\n}\nexport interface OperationContentsAndResultMetadata {\n balance_updates?: OperationMetadataBalanceUpdates[];\n}\nexport interface OperationContentsAndResultMetadataTransferTicket {\n balance_updates?: OperationMetadataBalanceUpdates[];\n operation_result: OperationResultTransferTicket;\n internal_operation_results?: InternalOperationResult[];\n}\nexport interface OperationContentsAndResultMetadataIncreasePaidStorage {\n balance_updates?: OperationMetadataBalanceUpdates[];\n operation_result: OperationResultIncreasePaidStorage;\n internal_operation_results?: InternalOperationResult[];\n}\nexport interface OperationContentsAndResultMetadataUpdateConsensusKey {\n balance_updates?: OperationMetadataBalanceUpdates[];\n operation_result: OperationResultUpdateConsensusKey;\n internal_operation_results?: InternalOperationResult[];\n}\nexport interface OperationContentsAndResultMetadataDrainDelegate {\n balance_updates?: OperationMetadataBalanceUpdates[];\n allocated_destination_contract?: boolean;\n}\nexport interface OperationContentsAndResultMetadataSmartRollupOriginate {\n balance_updates?: OperationMetadataBalanceUpdates[];\n operation_result: OperationResultSmartRollupOriginate;\n internal_operation_results?: InternalOperationResult[];\n}\nexport interface OperationContentsAndResultMetadataSmartRollupAddMessages {\n balance_updates?: OperationMetadataBalanceUpdates[];\n operation_result: OperationResultSmartRollupAddMessages;\n internal_operation_results?: InternalOperationResult[];\n}\nexport interface OperationContentsAndResultMetadataSmartRollupExecuteOutboxMessage {\n balance_updates?: OperationMetadataBalanceUpdates[];\n operation_result: OperationResultSmartRollupExecuteOutboxMessage;\n internal_operation_results?: InternalOperationResult[];\n}\nexport interface OperationContentsAndResultMetadataSmartRollupPublish {\n balance_updates?: OperationMetadataBalanceUpdates[];\n operation_result: OperationResultSmartRollupPublish;\n internal_operation_results?: InternalOperationResult[];\n}\nexport interface OperationContentsAndResultMetadataSmartRollupCement {\n balance_updates?: OperationMetadataBalanceUpdates[];\n operation_result: OperationResultSmartRollupCement;\n internal_operation_results?: InternalOperationResult[];\n}\nexport interface OperationContentsAndResultMetadataSmartRollupRefute {\n balance_updates?: OperationMetadataBalanceUpdates[];\n operation_result: OperationResultSmartRollupRefute;\n internal_operation_results?: InternalOperationResult[];\n}\nexport interface OperationContentsAndResultMetadataSmartRollupRecoverBond {\n balance_updates?: OperationMetadataBalanceUpdates[];\n operation_result: OperationResultSmartRollupRecoverBond;\n internal_operation_results?: InternalOperationResult[];\n}\nexport interface OperationContentsAndResultMetadataSmartRollupTimeout {\n balance_updates?: OperationMetadataBalanceUpdates[];\n operation_result: OperationResultSmartRollupTimeout;\n internal_operation_results?: InternalOperationResult[];\n}\nexport interface OperationContentsAndResultMetadataDalPublishCommitment {\n balance_updates?: OperationMetadataBalanceUpdates[];\n operation_result: OperationResultDalPublishCommitment;\n internal_operation_results?: InternalOperationResult[];\n}\nexport interface OperationContentsAndResultAttestation {\n kind: OpKind.ATTESTATION;\n block_payload_hash?: string;\n level: number;\n round?: number;\n slot?: number;\n metadata: OperationContentsAndResultMetadataExtended1;\n}\nexport interface OperationContentsAndResultEndorsement {\n kind: OpKind.ENDORSEMENT;\n block_payload_hash?: string;\n level: number;\n round?: number;\n slot?: number;\n metadata: OperationContentsAndResultMetadataExtended0;\n}\nexport interface OperationContentsAndResultPreattestation {\n kind: OpKind.PREATTESTATION;\n slot: number;\n level: number;\n round: number;\n block_payload_hash: string;\n metadata: OperationContentsAndResultMetadataPreattestation;\n}\nexport interface OperationContentsAndResultPreEndorsement {\n kind: OpKind.PREENDORSEMENT;\n slot: number;\n level: number;\n round: number;\n block_payload_hash: string;\n metadata: OperationContentsAndResultMetadataPreEndorsement;\n}\nexport interface OperationContentsAndResultDoublePreattestation {\n kind: OpKind.DOUBLE_PREATTESTATION_EVIDENCE;\n op1: InlinedPreattestation;\n op2: InlinedPreattestation;\n metadata: OperationContentsAndResultMetadata;\n}\nexport interface OperationContentsAndResultAttestationWithDal {\n kind: OpKind.ATTESTATION_WITH_DAL;\n slot: number;\n level: number;\n round: number;\n block_payload_hash: string;\n dal_attestation: string;\n metadata: OperationContentsAndResultMetadataExtended1;\n}\nexport interface OperationContentsAndResultDoublePreEndorsement {\n kind: OpKind.DOUBLE_PREENDORSEMENT_EVIDENCE;\n op1: InlinedPreEndorsement;\n op2: InlinedPreEndorsement;\n metadata: OperationContentsAndResultMetadata;\n}\nexport interface OperationContentsAndResultEndorsementWithDal {\n kind: OpKind.ENDORSEMENT_WITH_DAL;\n slot: number;\n level: number;\n round: number;\n block_payload_hash: string;\n dal_attestation: string;\n metadata: OperationContentsAndResultMetadataExtended0;\n}\nexport interface OperationContentsAndResultRevelation {\n kind: OpKind.SEED_NONCE_REVELATION;\n level: number;\n nonce: string;\n metadata: OperationContentsAndResultMetadata;\n}\nexport interface OperationContentsAndResultDoubleAttestation {\n kind: OpKind.DOUBLE_ATTESTATION_EVIDENCE;\n op1: InlinedAttestation;\n op2: InlinedAttestation;\n slot?: number;\n metadata: OperationContentsAndResultMetadata;\n}\nexport interface OperationContentsAndResultDoubleEndorsement {\n kind: OpKind.DOUBLE_ENDORSEMENT_EVIDENCE;\n op1: InlinedEndorsement;\n op2: InlinedEndorsement;\n slot?: number;\n metadata: OperationContentsAndResultMetadata;\n}\nexport interface OperationContentsAndResultDoubleBaking {\n kind: OpKind.DOUBLE_BAKING_EVIDENCE;\n bh1: BlockFullHeader;\n bh2: BlockFullHeader;\n metadata: OperationContentsAndResultMetadata;\n}\nexport interface OperationContentsAndResultActivateAccount {\n kind: OpKind.ACTIVATION;\n pkh: string;\n secret: string;\n metadata: OperationContentsAndResultMetadata;\n}\nexport interface OperationContentsAndResultProposals {\n kind: OpKind.PROPOSALS;\n source: string;\n period: number;\n proposals: string[];\n}\nexport interface OperationContentsAndResultBallot {\n kind: OpKind.BALLOT;\n source: string;\n period: number;\n proposal: string;\n ballot: BallotVote;\n}\nexport interface OperationContentsAndResultReveal {\n kind: OpKind.REVEAL;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n public_key: string;\n metadata: OperationContentsAndResultMetadataReveal;\n}\nexport interface OperationContentsAndResultTransaction {\n kind: OpKind.TRANSACTION;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n amount: string;\n destination: string;\n parameters?: TransactionOperationParameter;\n metadata: OperationContentsAndResultMetadataTransaction;\n}\nexport interface OperationContentsAndResultDelegation {\n kind: OpKind.DELEGATION;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n delegate?: string;\n metadata: OperationContentsAndResultMetadataDelegation;\n}\nexport interface OperationContentsAndResultRegisterGlobalConstant {\n kind: OpKind.REGISTER_GLOBAL_CONSTANT;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n value: MichelsonV1Expression;\n metadata: OperationContentsAndResultMetadataRegisterGlobalConstant;\n}\nexport interface OperationContentsAndResultSetDepositsLimit {\n kind: OpKind.SET_DEPOSITS_LIMIT;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n limit?: string;\n metadata: OperationContentsAndResultMetadataSetDepositsLimit;\n}\nexport interface OperationContentsAndResultTransferTicket {\n kind: OpKind.TRANSFER_TICKET;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n ticket_contents: MichelsonV1Expression;\n ticket_ty: MichelsonV1Expression;\n ticket_ticketer: string;\n ticket_amount: string;\n destination: string;\n entrypoint: string;\n metadata: OperationContentsAndResultMetadataTransferTicket;\n}\nexport interface OperationContentsAndResultUpdateConsensusKey {\n kind: OpKind.UPDATE_CONSENSUS_KEY;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n pk: string;\n metadata: OperationContentsAndResultMetadataUpdateConsensusKey;\n}\nexport interface OperationContentsAndResultDrainDelegate {\n kind: OpKind.DRAIN_DELEGATE;\n consensus_key: string;\n delegate: string;\n destination: string;\n metadata: OperationContentsAndResultMetadataDrainDelegate;\n}\nexport interface OperationContentsAndResultIncreasePaidStorage {\n kind: OpKind.INCREASE_PAID_STORAGE;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n amount: string;\n destination: string;\n metadata: OperationContentsAndResultMetadataIncreasePaidStorage;\n}\nexport interface OperationContentsAndResultVdfRevelation {\n kind: OpKind.VDF_REVELATION;\n solution: string[];\n metadata: OperationContentsAndResultMetadata;\n}\nexport interface OperationContentsAndResultSmartRollupOriginate {\n kind: OpKind.SMART_ROLLUP_ORIGINATE;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n pvm_kind: PvmKind;\n kernel: string;\n parameters_ty: MichelsonV1Expression;\n whitelist?: string[];\n metadata: OperationContentsAndResultMetadataSmartRollupOriginate;\n}\nexport interface OperationContentsAndResultSmartRollupAddMessages {\n kind: OpKind.SMART_ROLLUP_ADD_MESSAGES;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n message: string[];\n metadata: OperationContentsAndResultMetadataSmartRollupAddMessages;\n}\nexport interface OperationContentsAndResultSmartRollupExecuteOutboxMessage {\n kind: OpKind.SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n rollup: string;\n cemented_commitment: string;\n output_proof: string;\n metadata: OperationContentsAndResultMetadataSmartRollupExecuteOutboxMessage;\n}\nexport interface OperationContentsAndResultSmartRollupPublish {\n kind: OpKind.SMART_ROLLUP_PUBLISH;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n rollup: string;\n commitment: SmartRollupPublishCommitment;\n metadata: OperationContentsAndResultMetadataSmartRollupPublish;\n}\nexport interface OperationContentsAndResultSmartRollupCement {\n kind: OpKind.SMART_ROLLUP_CEMENT;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n rollup: string;\n metadata: OperationContentsAndResultMetadataSmartRollupCement;\n}\nexport interface OperationContentsAndResultSmartRollupRefute {\n kind: OpKind.SMART_ROLLUP_REFUTE;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n rollup: string;\n opponent: string;\n refutation: SmartRollupRefutation;\n metadata: OperationContentsAndResultMetadataSmartRollupRefute;\n}\nexport interface OperationContentsAndResultSmartRollupRecoverBond {\n kind: OpKind.SMART_ROLLUP_RECOVER_BOND;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n rollup: string;\n staker: string;\n metadata: OperationContentsAndResultMetadataSmartRollupRecoverBond;\n}\nexport interface OperationContentsAndResultSmartRollupTimeout {\n kind: OpKind.SMART_ROLLUP_TIMEOUT;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n rollup: string;\n stakers: SmartRollupTimeoutStakers;\n metadata: OperationContentsAndResultMetadataSmartRollupTimeout;\n}\nexport interface OperationContentsAndResultDalPublishCommitment {\n kind: OpKind.DAL_PUBLISH_COMMITMENT;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n slot_header: {\n slot_index: number;\n commitment: string;\n commitment_proof: string;\n };\n metadata: OperationContentsAndResultMetadataDalPublishCommitment;\n}\nexport type OperationContentsAndResult = OperationContentsAndResultAttestation | OperationContentsAndResultPreattestation | OperationContentsAndResultDoublePreattestation | OperationContentsAndResultEndorsement | OperationContentsAndResultPreEndorsement | OperationContentsAndResultDoublePreEndorsement | OperationContentsAndResultRevelation | OperationContentsAndResultDoubleEndorsement | OperationContentsAndResultDoubleAttestation | OperationContentsAndResultDoubleBaking | OperationContentsAndResultActivateAccount | OperationContentsAndResultProposals | OperationContentsAndResultBallot | OperationContentsAndResultReveal | OperationContentsAndResultTransaction | OperationContentsAndResultOrigination | OperationContentsAndResultDelegation | OperationContentsAndResultAttestationWithDal | OperationContentsAndResultEndorsementWithDal | OperationContentsAndResultRegisterGlobalConstant | OperationContentsAndResultSetDepositsLimit | OperationContentsAndResultTransferTicket | OperationContentsAndResultIncreasePaidStorage | OperationContentsAndResultUpdateConsensusKey | OperationContentsAndResultDrainDelegate | OperationContentsAndResultVdfRevelation | OperationContentsAndResultSmartRollupOriginate | OperationContentsAndResultSmartRollupAddMessages | OperationContentsAndResultSmartRollupExecuteOutboxMessage | OperationContentsAndResultSmartRollupPublish | OperationContentsAndResultSmartRollupCement | OperationContentsAndResultSmartRollupRefute | OperationContentsAndResultSmartRollupRecoverBond | OperationContentsAndResultSmartRollupTimeout | OperationContentsAndResultDalPublishCommitment;\nexport type OperationContentsAndResultWithFee = OperationContentsAndResultTransaction | OperationContentsAndResultOrigination | OperationContentsAndResultDelegation | OperationContentsAndResultReveal | OperationContentsAndResultRegisterGlobalConstant | OperationContentsAndResultSetDepositsLimit | OperationContentsAndResultUpdateConsensusKey | OperationContentsAndResultIncreasePaidStorage | OperationContentsAndResultTransferTicket | OperationContentsAndResultSmartRollupAddMessages | OperationContentsAndResultSmartRollupOriginate | OperationContentsAndResultSmartRollupExecuteOutboxMessage | OperationContentsAndResultDalPublishCommitment;\nexport declare enum OPERATION_METADATA {\n TOO_LARGE = \"too large\"\n}\nexport interface OperationEntry {\n protocol: string;\n chain_id: string;\n hash: string;\n branch: string;\n contents: (OperationContents | OperationContentsAndResult)[];\n signature?: string;\n metadata?: OPERATION_METADATA;\n}\nexport interface BlockResponse {\n protocol: string;\n chain_id: string;\n hash: string;\n header: BlockFullHeader;\n metadata: BlockMetadata;\n operations: OperationEntry[][];\n}\nexport type BakingRightsArgumentsDelegate = string | string[];\nexport type BakingRightsArgumentsCycle = number | number[];\nexport type BakingRightsArgumentsLevel = number | number[];\nexport type AllDelegatesQueryArguments = {\n active?: boolean;\n inactive?: boolean;\n with_minimal_stake?: boolean;\n without_minimal_stake?: boolean;\n};\nexport type BakingRightsQueryArguments = BakingRightsQueryArgumentsBase;\nexport interface BakingRightsQueryArgumentsBase {\n level?: BakingRightsArgumentsLevel;\n cycle?: BakingRightsArgumentsCycle;\n delegate?: BakingRightsArgumentsDelegate;\n consensus_key?: string;\n max_priority?: number;\n max_round?: string;\n all?: null;\n}\nexport interface BakingRightsResponseItem {\n level: number;\n delegate: string;\n priority?: number;\n round?: number;\n estimated_time?: Date;\n consensus_key?: string;\n}\nexport type BakingRightsResponse = BakingRightsResponseItem[];\nexport type AttestationRightsArgumentsDelegate = string | string[];\nexport type AttestationRightsArgumentsCycle = number | number[];\nexport type AttestationRightsArgumentsLevel = number | number[];\nexport interface AttestationRightsQueryArguments {\n level?: AttestationRightsArgumentsLevel;\n cycle?: AttestationRightsArgumentsCycle;\n delegate?: AttestationRightsArgumentsDelegate;\n consensus_key?: string;\n}\nexport interface AttestationRightsResponseItemDelegates {\n delegate: string;\n first_slot: number;\n attestation_power: number;\n consensus_key: string;\n}\nexport interface AttestationRightsResponseItem {\n level: number;\n delegate?: string;\n delegates?: AttestationRightsResponseItemDelegates[];\n slots?: number[];\n estimated_time?: Date;\n}\nexport type AttestationRightsResponse = AttestationRightsResponseItem[];\nexport type BallotListResponseEnum = 'nay' | 'yay' | 'pass';\nexport interface BallotListResponseItem {\n pkh: string;\n ballot: BallotListResponseEnum;\n}\nexport type BallotListResponse = BallotListResponseItem[];\nexport interface BallotsResponse {\n yay: BigNumber;\n nay: BigNumber;\n pass: BigNumber;\n}\nexport type PeriodKindResponse = 'proposal' | 'exploration' | 'cooldown' | 'promotion' | 'adoption' | 'testing_vote' | 'testing' | 'promotion_vote';\nexport type CurrentProposalResponse = string | null;\nexport type CurrentQuorumResponse = number;\nexport interface VotesListingsResponseItem {\n pkh: string;\n rolls?: number;\n voting_power?: BigNumber;\n}\nexport type VotesListingsResponse = VotesListingsResponseItem[];\nexport type ProposalsResponseItem = [string, BigNumber];\nexport type ProposalsResponse = ProposalsResponseItem[];\nexport type HeaderContentEnum = 'activate' | 'activate_testchain';\nexport interface HeaderContent {\n command: HeaderContentEnum;\n hash: string;\n fitness: string[];\n protocol_parameters: string;\n}\nexport interface BlockHeaderResponse {\n protocol: string;\n chain_id: string;\n hash: string;\n level: number;\n proto: number;\n predecessor: string;\n timestamp: string;\n validation_pass: number;\n operations_hash: string;\n fitness: string[];\n context: string;\n content: HeaderContent;\n payload_hash?: string;\n payload_round?: number;\n priority?: number;\n proof_of_work_nonce: string;\n liquidity_baking_escape_vote?: boolean | LiquidityBakingToggleVotes;\n signature: string;\n}\nexport interface PackDataParams {\n data: MichelsonV1Expression;\n type: MichelsonV1Expression;\n gas?: BigNumber;\n}\nexport interface TicketTokenParams {\n ticketer: string;\n content_type: MichelsonV1Expression;\n content: MichelsonV1Expression;\n}\nexport interface TicketBalance {\n ticketer: string;\n content_type: MichelsonV1Expression;\n content: MichelsonV1Expression;\n amount: string;\n}\nexport type AllTicketBalances = TicketBalance[];\nexport type HexString = string;\nexport interface PackDataResponse {\n packed: HexString;\n gas?: BigNumber | 'unaccounted';\n}\nexport type BigMapResponse = MichelsonV1Expression | MichelsonV1Expression[];\nexport type SaplingDiffResponse = {\n root: SaplingTransactionCommitmentHash;\n commitments_and_ciphertexts: CommitmentsAndCiphertexts[];\n nullifiers: string[];\n};\nexport type SaplingTransactionCommitmentHash = string;\nexport type PreapplyParams = OperationObject[];\nexport type PreapplyResponse = {\n contents: OperationContentsAndResult[];\n};\nexport type ForgeOperationsParams = Pick;\nexport type TimeStampMixed = Date | string;\nexport type BalanceUpdateKindEnum = MetadataBalanceUpdatesKindEnum;\nexport type BalanceUpdateCategoryEnum = MetadataBalanceUpdatesCategoryEnum;\nexport interface MichelsonV1ExpressionBase {\n int?: string;\n string?: string;\n bytes?: string;\n}\nexport interface MichelsonV1ExpressionExtended {\n prim: string;\n args?: MichelsonV1Expression[];\n annots?: string[];\n}\nexport type MichelsonV1Expression = MichelsonV1ExpressionBase | MichelsonV1ExpressionExtended | MichelsonV1Expression[];\nexport interface ScriptedContracts {\n code: MichelsonV1Expression[];\n storage: MichelsonV1Expression;\n}\nexport type AILaunchCycleResponse = number | null;\nexport type BondId = {\n smart_rollup: string;\n};\nexport type OperationBalanceUpdates = OperationMetadataBalanceUpdates[];\nexport interface OperationObject {\n branch?: string;\n contents?: OperationContents[];\n protocol?: string;\n signature?: string;\n}\nexport type InternalOperationResultKindEnum = OpKind.TRANSACTION | OpKind.ORIGINATION | OpKind.DELEGATION | OpKind.EVENT;\nexport type SuccessfulManagerOperationResultKindEnum = OpKind.REVEAL | OpKind.TRANSACTION | OpKind.ORIGINATION | OpKind.DELEGATION;\nexport type InternalOperationResultEnum = OperationResultReveal | OperationResultTransaction | OperationResultDelegation | OperationResultOrigination | OperationResultEvent;\nexport interface OperationResultTransferTicket {\n status: OperationResultStatusEnum;\n balance_updates?: OperationBalanceUpdates;\n ticket_updates?: TicketUpdates[];\n consumed_milligas?: string;\n paid_storage_size_diff?: string;\n errors?: TezosGenericOperationError[];\n}\nexport interface OperationResultIncreasePaidStorage {\n status: OperationResultStatusEnum;\n balance_updates?: OperationBalanceUpdates;\n consumed_milligas?: string;\n errors?: TezosGenericOperationError[];\n}\nexport interface OperationResultUpdateConsensusKey {\n status: OperationResultStatusEnum;\n consumed_milligas?: string;\n errors?: TezosGenericOperationError[];\n}\nexport interface OperationResultDelegation {\n status: OperationResultStatusEnum;\n consumed_gas?: string;\n errors?: TezosGenericOperationError[];\n consumed_milligas?: string;\n}\nexport interface OperationResultSetDepositsLimit {\n status: OperationResultStatusEnum;\n consumed_gas?: string;\n errors?: TezosGenericOperationError[];\n consumed_milligas?: string;\n}\nexport interface OperationResultRegisterGlobalConstant {\n status: OperationResultStatusEnum;\n balance_updates?: OperationBalanceUpdates;\n consumed_gas?: string;\n storage_size?: string;\n global_address?: string;\n errors?: TezosGenericOperationError[];\n consumed_milligas?: string;\n}\nexport interface OperationResultSmartRollupOriginate {\n status: OperationResultStatusEnum;\n balance_updates?: OperationBalanceUpdates;\n address?: string;\n genesis_commitment_hash?: string;\n consumed_milligas?: string;\n size?: string;\n errors?: TezosGenericOperationError[];\n}\nexport interface OperationResultSmartRollupAddMessages {\n status: OperationResultStatusEnum;\n consumed_milligas?: string;\n errors?: TezosGenericOperationError[];\n}\nexport interface OperationResultSmartRollupExecuteOutboxMessage {\n status: OperationResultStatusEnum;\n balance_updates?: OperationBalanceUpdates;\n ticket_updates?: TicketUpdates[];\n consumed_milligas?: string;\n paid_storage_size_diff?: string;\n errors?: TezosGenericOperationError[];\n}\nexport interface OperationResultSmartRollupPublish {\n status: OperationResultStatusEnum;\n consumed_milligas?: string;\n staked_hash?: string;\n published_at_level?: number;\n balance_updates?: OperationBalanceUpdates;\n errors?: TezosGenericOperationError[];\n}\nexport interface OperationResultSmartRollupCement {\n status: OperationResultStatusEnum;\n consumed_milligas?: string;\n inbox_level?: number;\n commitment_hash?: string;\n errors?: TezosGenericOperationError[];\n}\nexport interface OperationResultSmartRollupRefute {\n status: OperationResultStatusEnum;\n consumed_milligas?: string;\n game_status?: SmartRollupGameStatus;\n balance_updates?: OperationBalanceUpdates;\n errors?: TezosGenericOperationError[];\n}\nexport interface OperationResultSmartRollupRecoverBond {\n status: OperationResultStatusEnum;\n balance_updates?: OperationBalanceUpdates;\n consumed_milligas?: string;\n errors?: TezosGenericOperationError[];\n}\nexport interface OperationResultSmartRollupTimeout {\n status: OperationResultStatusEnum;\n consumed_milligas?: string;\n game_status?: SmartRollupGameStatus;\n balance_updates?: OperationBalanceUpdates;\n errors?: TezosGenericOperationError[];\n}\nexport interface OperationResultDalPublishCommitment {\n status: OperationResultStatusEnum;\n slot_header?: {\n version: string;\n level: number;\n index: number;\n commitment: string;\n };\n consumed_milligas?: string;\n errors?: TezosGenericOperationError[];\n}\nexport interface ContractBigMapDiffItem {\n key_hash?: string;\n key?: MichelsonV1Expression;\n value?: MichelsonV1Expression;\n action?: DiffActionEnum;\n big_map?: string;\n source_big_map?: string;\n destination_big_map?: string;\n key_type?: MichelsonV1Expression;\n value_type?: MichelsonV1Expression;\n}\nexport type ContractBigMapDiff = ContractBigMapDiffItem[];\nexport interface TezosGenericOperationError {\n kind: string;\n id: string;\n delegate?: string;\n}\nexport interface TicketUpdates {\n ticket_token: {\n ticketer: string;\n content_type: MichelsonV1Expression;\n content: MichelsonV1Expression;\n };\n updates: {\n account: string;\n amount: string;\n }[];\n}\nexport type TicketReceipt = TicketUpdates;\nexport type BatchOperationResult = OperationResultTransaction | OperationResultReveal | OperationResultDelegation | OperationResultOrigination | OperationResultIncreasePaidStorage | OperationResultRegisterGlobalConstant | OperationResultTransferTicket | OperationResultSmartRollupAddMessages | OperationResultSmartRollupOriginate | OperationResultUpdateConsensusKey;\nexport type OperationResult = OperationResultOrigination | OperationResultTransaction | OperationResultReveal | OperationResultDelegation | OperationResultIncreasePaidStorage | OperationResultRegisterGlobalConstant | OperationResultTransferTicket | OperationResultUpdateConsensusKey | OperationResultSmartRollupOriginate | OperationResultSmartRollupAddMessages | OperationResultSetDepositsLimit | OperationResultSmartRollupPublish | OperationResultSmartRollupCement | OperationResultSmartRollupRefute | OperationResultSmartRollupRecoverBond | OperationResultSmartRollupTimeout | OperationResultSmartRollupExecuteOutboxMessage | OperationResultDalPublishCommitment;\nexport interface OperationResultTransaction {\n status: OperationResultStatusEnum;\n storage?: MichelsonV1Expression;\n big_map_diff?: ContractBigMapDiff;\n balance_updates?: OperationBalanceUpdates;\n ticket_updates?: TicketUpdates[];\n ticket_receipt?: TicketReceipt[];\n originated_contracts?: string[];\n consumed_gas?: string;\n storage_size?: string;\n paid_storage_size_diff?: string;\n allocated_destination_contract?: boolean;\n errors?: TezosGenericOperationError[];\n consumed_milligas?: string;\n lazy_storage_diff?: LazyStorageDiff[];\n ticket_hash?: string;\n}\nexport interface OperationResultReveal {\n status: OperationResultStatusEnum;\n consumed_gas?: string;\n errors?: TezosGenericOperationError[];\n consumed_milligas?: string;\n}\nexport interface TransactionOperationParameter {\n entrypoint: string;\n value: MichelsonV1Expression;\n}\nexport interface InternalOperationResult {\n kind: InternalOperationResultKindEnum;\n source: string;\n nonce: number;\n amount?: string;\n destination?: string;\n parameters?: TransactionOperationParameter;\n public_key?: string;\n balance?: string;\n delegate?: string;\n script?: ScriptedContracts;\n value?: MichelsonV1Expression;\n limit?: string;\n result: InternalOperationResultEnum;\n type?: MichelsonV1Expression;\n tag?: string;\n payload?: MichelsonV1Expression;\n}\nexport interface SuccessfulManagerOperationResult {\n kind: SuccessfulManagerOperationResultKindEnum;\n consumed_gas?: string;\n consumed_milligas?: string;\n storage?: MichelsonV1Expression;\n big_map_diff?: ContractBigMapDiff;\n balance_updates?: OperationBalanceUpdates;\n originated_contracts?: string[];\n storage_size?: string;\n paid_storage_size_diff?: string;\n lazy_storage_diff?: LazyStorageDiff[];\n}\nexport type MetadataBalanceUpdatesKindEnum = 'contract' | 'freezer' | 'accumulator' | 'burned' | 'commitment' | 'minted' | 'staking';\nexport declare enum METADATA_BALANCE_UPDATES_CATEGORY {\n BAKING_BONUSES = \"baking bonuses\",\n BAKING_REWARDS = \"baking rewards\",\n BLOCK_FEES = \"block fees\",\n BONDS = \"bonds\",\n BOOTSTRAP = \"bootstrap\",\n BURNED = \"burned\",\n COMMITMENT = \"commitment\",\n DELEGATE_DENOMINATOR = \"delegate_denominator\",\n DELEGATOR_NUMERATOR = \"delegator_numerator\",\n DEPOSITS = \"deposits\",\n ENDORSING_REWARDS = \"endorsing rewards\",\n INVOICE = \"invoice\",\n LOST_ENDORSING_REWARDS = \"lost endorsing rewards\",\n LOST_ATTESTING_REWARDS = \"lost attesting rewards\",\n MINTED = \"minted\",\n NONCE_REVELATION_REWARDS = \"nonce revelation rewards\",\n PUNISHMENTS = \"punishments\",\n SMART_ROLLUP_REFUTATION_PUNISHMENTS = \"smart_rollup_refutation_punishments\",\n SMART_ROLLUP_REFUTATION_REWARDS = \"smart_rollup_refutation_rewards\",\n STORAGE_FEES = \"storage fees\",\n SUBSIDY = \"subsidy\",\n UNSTAKED_DEPOSITS = \"unstaked_deposits\",\n DOUBLE_SIGNING_EVIDENCE_REWARDS = \"double signing evidence rewards\",\n FEES = \"fees\",\n LEGACY_DEPOSITS = \"legacy_deposits\",\n LEGACY_FEES = \"legacy_fees\",\n LEGACY_REWARDS = \"legacy_rewards\",\n REWARDS = \"rewards\"\n}\nexport type MetadataBalanceUpdatesCategoryEnum = METADATA_BALANCE_UPDATES_CATEGORY;\nexport type MetadataBalanceUpdatesOriginEnum = 'block' | 'migration' | 'subsidy' | 'simulation' | 'delayed_operation';\nexport type FrozenStaker = SingleStaker | SharedStaker | Baker | Baker_edge;\nexport type Staker = SingleStaker | SharedStaker;\nexport interface SingleStaker {\n contract: string;\n delegate: string;\n}\nexport interface SharedStaker {\n delegate: string;\n}\nexport interface Baker {\n baker: string;\n}\nexport interface Baker_edge {\n baker_edge: string;\n}\nexport interface OperationMetadataBalanceUpdates {\n kind: MetadataBalanceUpdatesKindEnum;\n contract?: string;\n change: string;\n origin?: MetadataBalanceUpdatesOriginEnum;\n category?: MetadataBalanceUpdatesCategoryEnum;\n staker?: FrozenStaker | Staker;\n delegate?: string;\n participation?: boolean;\n revelation?: boolean;\n committer?: string;\n bond_id?: BondId;\n cycle?: number;\n delegator?: string;\n delayed_operation_hash?: string;\n}\nexport type OperationResultStatusEnum = 'applied' | 'failed' | 'skipped' | 'backtracked';\nexport type DiffActionEnum = 'update' | 'remove' | 'copy' | 'alloc';\nexport type LazyStorageDiff = LazyStorageDiffBigMap | LazyStorageDiffSaplingState;\nexport interface LazyStorageDiffBigMap {\n kind: 'big_map';\n id: string;\n diff: LazyStorageDiffBigMapItems;\n}\nexport interface LazyStorageDiffSaplingState {\n kind: 'sapling_state';\n id: string;\n diff: LazyStorageDiffSaplingStateItems;\n}\nexport interface LazyStorageDiffBigMapItems {\n action: DiffActionEnum;\n updates?: LazyStorageDiffUpdatesBigMap[];\n source?: string;\n key_type?: MichelsonV1Expression;\n value_type?: MichelsonV1Expression;\n}\nexport interface LazyStorageDiffSaplingStateItems {\n action: DiffActionEnum;\n updates?: LazyStorageDiffUpdatesSaplingState;\n source?: string;\n memo_size?: number;\n}\nexport interface LazyStorageDiffUpdatesBigMap {\n key_hash: string;\n key: MichelsonV1Expression;\n value?: MichelsonV1Expression;\n}\nexport type CommitmentsAndCiphertexts = [\n SaplingTransactionCommitment,\n SaplingTransactionCiphertext\n];\nexport type SaplingTransactionCommitment = string;\nexport interface LazyStorageDiffUpdatesSaplingState {\n commitments_and_ciphertexts: CommitmentsAndCiphertexts[];\n nullifiers: string[];\n}\nexport interface SaplingTransactionCiphertext {\n cv: string;\n epk: string;\n payload_enc: string;\n nonce_enc: string;\n payload_out: string;\n nonce_out: string;\n}\nexport interface OperationResultOrigination {\n status: OperationResultStatusEnum;\n big_map_diff?: ContractBigMapDiff;\n balance_updates?: OperationBalanceUpdates;\n originated_contracts?: string[];\n consumed_gas?: string;\n storage_size?: string;\n paid_storage_size_diff?: string;\n errors?: TezosGenericOperationError[];\n consumed_milligas?: string;\n lazy_storage_diff?: LazyStorageDiff[];\n}\nexport interface OperationResultEvent {\n status: OperationResultStatusEnum;\n consumed_milligas?: string;\n errors?: TezosGenericOperationError[];\n}\nexport interface OperationContentsAndResultMetadataOrigination {\n balance_updates: OperationMetadataBalanceUpdates[];\n operation_result: OperationResultOrigination;\n internal_operation_results?: InternalOperationResult[];\n}\nexport type ConstantsResponse = ConstantsResponseCommon & ConstantsResponseProto020 & ConstantsResponseProto019 & ConstantsResponseProto017 & ConstantsResponseProto016 & ConstantsResponseProto015 & ConstantsResponseProto014 & ConstantsResponseProto013 & ConstantsResponseProto012 & ConstantsResponseProto011 & ConstantsResponseProto010 & ConstantsResponseProto009 & ConstantsResponseProto008 & ConstantsResponseProto007 & ConstantsResponseProto006 & ConstantsResponseProto005 & ConstantsResponseProto004 & ConstantsResponseProto003 & ConstantsResponseProto001And002;\nexport interface ConstantsResponseCommon {\n proof_of_work_nonce_size: number;\n nonce_length: number;\n max_operation_data_length: number;\n preserved_cycles: number;\n blocks_per_cycle: number;\n blocks_per_commitment: number;\n blocks_per_roll_snapshot: number;\n blocks_per_voting_period: number;\n time_between_blocks: BigNumber[];\n endorsers_per_block: number;\n hard_gas_limit_per_operation: BigNumber;\n hard_gas_limit_per_block: BigNumber;\n proof_of_work_threshold: BigNumber;\n tokens_per_roll: BigNumber;\n michelson_maximum_type_size: number;\n seed_nonce_revelation_tip: BigNumber;\n block_security_deposit: BigNumber;\n endorsement_security_deposit: BigNumber;\n endorsement_reward: BigNumber | BigNumber[];\n cost_per_byte: BigNumber;\n hard_storage_limit_per_operation: BigNumber;\n}\nexport type Ratio = {\n numerator: number;\n denominator: number;\n};\nexport interface ConstantsResponseProto020 extends Omit {\n adaptive_issuance_force_activation: boolean;\n adaptive_rewards_params: {\n center_dz: {\n denominator: string;\n numerator: string;\n };\n growth_rate: {\n denominator: string;\n numerator: string;\n };\n issuance_ratio_final_max: {\n denominator: string;\n numerator: string;\n };\n issuance_ratio_final_min: {\n denominator: string;\n numerator: string;\n };\n issuance_ratio_initial_max: {\n denominator: string;\n numerator: string;\n };\n issuance_ratio_initial_min: {\n denominator: string;\n numerator: string;\n };\n max_bonus: string;\n radius_dz: {\n denominator: string;\n numerator: string;\n };\n initial_period: number;\n transition_period: number;\n };\n blocks_preservation_cycles: number;\n consensus_rights_delay: number;\n dal_parametric: {\n attestation_lag: number;\n attestation_threshold: number;\n feature_enable: boolean;\n incentives_enable: boolean;\n number_of_shards: number;\n number_of_slots: number;\n page_size: number;\n redundancy_factor: number;\n slot_size: number;\n };\n delegate_parameters_activation_delay: number;\n direct_ticket_spending_enable: boolean;\n issuance_weights: {\n attesting_reward_weight: number;\n baking_reward_bonus_weight: number;\n baking_reward_fixed_portion_weight: number;\n base_total_issued_per_minute: string;\n seed_nonce_revelation_tip_weight: number;\n vdf_revelation_tip_weight: number;\n };\n liquidity_baking_subsidy: string;\n max_slashing_per_block: number;\n max_slashing_threshold: number;\n ns_enable: boolean;\n smart_rollup_reveal_activation_level: {\n dal_attested_slots_validity_lag: number;\n dal_page: number;\n dal_parameters: number;\n metadata: number;\n raw_data: {\n Blake2B: number;\n };\n };\n}\nexport interface ConstantsResponseProto019 extends Omit {\n adaptive_issuance_activation_vote_enable: boolean;\n adaptive_issuance_launch_ema_threshold: number;\n adaptive_rewards_params: {\n center_dz: {\n denominator: string;\n numerator: string;\n };\n growth_rate: {\n denominator: string;\n numerator: string;\n };\n issuance_ratio_max: {\n denominator: string;\n numerator: string;\n };\n issuance_ratio_min: {\n denominator: string;\n numerator: string;\n };\n max_bonus: string;\n radius_dz: {\n denominator: string;\n numerator: string;\n };\n };\n autostaking_enable: boolean;\n edge_of_staking_over_delegation: number;\n global_limit_of_staking_over_baking: number;\n issuance_weights: {\n attesting_reward_weight: number;\n baking_reward_bonus_weight: number;\n baking_reward_fixed_portion_weight: number;\n base_total_issued_per_minute: string;\n liquidity_baking_subsidy_weight: number;\n seed_nonce_revelation_tip_weight: number;\n vdf_revelation_tip_weight: number;\n };\n limit_of_delegation_over_baking: number;\n minimal_frozen_stake: string;\n percentage_of_frozen_deposits_slashed_per_double_attestation: number;\n percentage_of_frozen_deposits_slashed_per_double_baking: number;\n smart_rollup_private_enable: boolean;\n smart_rollup_reveal_activation_level: {\n dal_page: number;\n dal_parameters: number;\n metadata: number;\n raw_data: {\n Blake2B: number;\n };\n };\n smart_rollup_riscv_pvm_enable: boolean;\n zk_rollup_max_ticket_payload_size: number;\n}\nexport type ConstantsResponseProto017 = ConstantsResponseProto016;\nexport interface ConstantsResponseProto016 extends Omit {\n smart_rollup_arith_pvm_enable: boolean;\n smart_rollup_challenge_window_in_blocks: number;\n smart_rollup_commitment_period_in_blocks: number;\n smart_rollup_enable: boolean;\n smart_rollup_max_active_outbox_levels: number;\n smart_rollup_max_lookahead_in_blocks: number;\n smart_rollup_max_number_of_cemented_commitments: number;\n smart_rollup_max_number_of_messages_per_level: string;\n smart_rollup_max_number_of_parallel_games: number;\n smart_rollup_max_outbox_messages_per_level: number;\n smart_rollup_max_wrapped_proof_binary_size: number;\n smart_rollup_message_size_limit: number;\n smart_rollup_number_of_sections_in_dissection: number;\n smart_rollup_origination_size: number;\n smart_rollup_stake_amount: string;\n smart_rollup_timeout_period_in_blocks: number;\n}\nexport interface ConstantsResponseProto015 extends Omit {\n minimal_stake: BigNumber;\n sc_max_wrapped_proof_binary_size: number;\n sc_rollup_message_size_limit: number;\n sc_rollup_max_number_of_messages_per_commitment_period: number;\n sc_rollup_number_of_sections_in_dissection: number;\n sc_rollup_timeout_period_in_blocks: number;\n sc_rollup_max_number_of_cemented_commitments: number;\n zk_rollup_enable: number;\n zk_rollup_origination_size: number;\n zk_rollup_min_pending_to_process: number;\n}\nexport interface DalParametric {\n feature_enable: boolean;\n number_of_slots: number;\n attestation_lag: number;\n attestation_threshold?: number;\n blocks_per_epoch?: number;\n redundancy_factor?: number;\n page_size?: number;\n slot_size?: number;\n number_of_shards: number;\n endorsement_lag?: number;\n availability_threshold: number;\n}\nexport interface ConstantsResponseProto014 extends ConstantsResponseProto013 {\n max_wrapped_proof_binary_size?: number;\n nonce_revelation_threshold?: number;\n vdf_difficulty?: BigNumber;\n testnet_dictator?: string;\n dal_parametric?: DalParametric;\n sc_rollup_stake_amount?: BigNumber;\n sc_rollup_commitment_period_in_blocks?: number;\n sc_rollup_max_lookahead_in_blocks?: number;\n sc_rollup_max_active_outbox_levels?: number;\n sc_rollup_max_outbox_messages_per_level?: number;\n}\nexport interface ConstantsResponseProto013 extends Omit {\n cache_layout_size?: number;\n cache_sampler_state_cycles?: number;\n cache_script_size?: number;\n cache_stake_distribution_cycles?: number;\n cycles_per_voting_period?: number;\n liquidity_baking_toggle_ema_threshold?: number;\n initial_seed?: string;\n tx_rollup_enable?: boolean;\n tx_rollup_origination_size?: number;\n tx_rollup_hard_size_limit_per_inbox?: number;\n tx_rollup_hard_size_limit_per_message?: number;\n tx_rollup_max_withdrawals_per_batch?: number;\n tx_rollup_commitment_bond?: BigNumber;\n tx_rollup_finality_period?: number;\n tx_rollup_withdraw_period?: number;\n tx_rollup_max_inboxes_count?: number;\n tx_rollup_max_messages_per_inbox?: number;\n tx_rollup_max_commitments_count?: number;\n tx_rollup_cost_per_byte_ema_factor?: number;\n tx_rollup_max_ticket_payload_size?: number;\n tx_rollup_rejection_max_proof_size?: number;\n tx_rollup_sunset_level?: number;\n sc_rollup_enable?: boolean;\n sc_rollup_origination_size?: number;\n sc_rollup_challenge_window_in_blocks?: number;\n sc_rollup_max_available_messages?: number;\n}\nexport interface ConstantsResponseProto012 extends Omit {\n blocks_per_stake_snapshot?: number;\n baking_reward_fixed_portion?: BigNumber;\n baking_reward_bonus_per_slot?: BigNumber;\n endorsing_reward_per_slot?: BigNumber;\n max_operations_time_to_live?: number;\n consensus_committee_size?: number;\n consensus_threshold?: number;\n minimal_participation_ratio?: Ratio;\n max_slashing_period?: number;\n frozen_deposits_percentage?: number;\n double_baking_punishment?: BigNumber;\n ratio_of_frozen_deposits_slashed_per_double_endorsement?: Ratio;\n delegate_selection?: 'random' | string[][];\n delay_increment_per_round?: BigNumber;\n}\nexport interface ConstantsResponseProto011 extends ConstantsResponseProto010 {\n max_micheline_node_count?: number;\n max_allowed_global_constants_depth?: number;\n max_micheline_bytes_limit?: number;\n cache_layout?: BigNumber[];\n}\nexport interface ConstantsResponseProto010 extends ConstantsResponseProto009 {\n minimal_block_delay?: BigNumber;\n liquidity_baking_subsidy?: BigNumber;\n liquidity_baking_sunset_level?: number;\n liquidity_baking_escape_ema_threshold?: number;\n}\nexport interface ConstantsResponseProto009 extends ConstantsResponseProto008 {\n}\nexport interface ConstantsResponseProto008 extends ConstantsResponseProto007 {\n}\nexport interface ConstantsResponseProto007 extends Omit {\n max_anon_ops_per_block?: number;\n}\nexport interface ConstantsResponseProto006 extends Omit {\n baking_reward_per_endorsement?: BigNumber[];\n}\nexport interface ConstantsResponseProto005 extends ConstantsResponseProto004 {\n quorum_min?: number;\n quorum_max?: number;\n min_proposal_quorum?: number;\n initial_endorsers?: number;\n delay_per_missing_endorsement?: BigNumber;\n}\nexport interface ConstantsResponseProto004 extends ConstantsResponseProto003 {\n test_chain_duration?: BigNumber;\n}\nexport interface ConstantsResponseProto003 extends Omit {\n origination_size?: number;\n max_proposals_per_delegate?: number;\n}\nexport interface ConstantsResponseProto001And002 extends ConstantsResponseCommon {\n max_revelations_per_block?: number;\n origination_burn?: string;\n block_reward?: BigNumber;\n}\nexport interface ContractResponse {\n balance: BigNumber;\n script: ScriptedContracts;\n counter?: string;\n delegate?: string;\n}\nexport interface TestChainStatus {\n status: 'not_running' | 'forking' | 'running';\n protocol?: string;\n expiration?: TimeStampMixed;\n chain_id?: string;\n genesis?: string;\n}\nexport interface MaxOperationListLength {\n max_size: number;\n max_op?: number;\n}\nexport interface Level {\n level: number;\n level_position: number;\n cycle: number;\n cycle_position: number;\n voting_period: number;\n voting_period_position: number;\n expected_commitment: boolean;\n}\nexport interface LevelInfo {\n level: number;\n level_position: number;\n cycle: number;\n cycle_position: number;\n expected_commitment: boolean;\n}\nexport interface BlockMetadata {\n protocol: string;\n next_protocol: string;\n test_chain_status: TestChainStatus;\n max_operations_ttl: number;\n max_operation_data_length: number;\n max_block_header_length: number;\n max_operation_list_length: MaxOperationListLength[];\n proposer?: string;\n baker: string;\n level_info?: LevelInfo;\n voting_period_info?: VotingPeriodBlockResult;\n nonce_hash?: string;\n deactivated?: string[];\n balance_updates?: OperationBalanceUpdates;\n liquidity_baking_toggle_ema?: number;\n adaptive_issuance_vote_ema?: number;\n adaptive_issuance_activation_cycle?: number;\n implicit_operations_results?: SuccessfulManagerOperationResult[];\n proposer_consensus_key?: string;\n baker_consensus_key?: string;\n consumed_milligas?: string;\n dal_attestation?: string;\n level?: Level;\n voting_period_kind?: string;\n consumed_gas?: string;\n liquidity_baking_escape_ema?: number;\n}\nexport type RPCRunOperationParam = {\n operation: OperationObject;\n chain_id: string;\n};\nexport interface RPCSimulateOperationParam extends RPCRunOperationParam {\n blocks_before_activation?: number;\n latency?: number;\n}\nexport type RPCRunCodeParam = {\n script: MichelsonV1ExpressionExtended[];\n storage: MichelsonV1Expression;\n input: MichelsonV1Expression;\n amount: string;\n chain_id: string;\n source?: string;\n payer?: string;\n gas?: string;\n self?: string;\n entrypoint?: string;\n balance?: string;\n unparsing_mode?: UnparsingMode;\n now?: string;\n level?: string;\n};\nexport type RunCodeResult = {\n storage: MichelsonV1Expression;\n operations: InternalOperationResult[];\n big_map_diff?: ContractBigMapDiff;\n lazy_storage_diff?: LazyStorageDiff;\n};\nexport type RPCRunScriptViewParam = {\n contract: string;\n view: string;\n input: MichelsonV1Expression;\n unlimited_gas?: boolean;\n chain_id: string;\n source?: string;\n payer?: string;\n gas?: string;\n unparsing_mode?: UnparsingModeEnum;\n now?: string;\n level?: string;\n};\nexport type RunScriptViewResult = {\n data: MichelsonV1Expression;\n};\nexport type RPCRunViewParam = {\n contract: string;\n entrypoint: string;\n input: MichelsonV1Expression;\n chain_id: string;\n source?: string;\n payer?: string;\n gas?: BigNumber;\n unparsing_mode?: UnparsingModeEnum;\n};\nexport type RunViewResult = {\n data: MichelsonV1Expression;\n};\nexport type EntrypointsResponse = {\n entrypoints: {\n [key: string]: MichelsonV1ExpressionExtended;\n };\n unreachable?: {\n path: ('Left' | 'Right')[];\n };\n};\nexport interface OperationContentsAndResultOrigination {\n kind: OpKind.ORIGINATION;\n source: string;\n fee: string;\n counter: string;\n gas_limit: string;\n storage_limit: string;\n balance: string;\n delegate?: string;\n script?: ScriptedContracts;\n metadata: OperationContentsAndResultMetadataOrigination;\n}\nexport interface VotingPeriodResult {\n index: number;\n kind: PeriodKindResponse;\n start_position: number;\n}\nexport interface VotingPeriodBlockResult {\n voting_period: VotingPeriodResult;\n position: number;\n remaining: number;\n}\nexport type UnparsingModeEnum = 'Readable' | 'Optimized' | 'Optimized_legacy';\nexport type UnparsingMode = {\n unparsing_mode: UnparsingModeEnum;\n};\nexport type ProtocolsResponse = {\n protocol: string;\n next_protocol: string;\n};\nexport type Next = {\n next: number;\n} | {\n newest: number;\n oldest: number;\n};\nexport type LastRemovedCommitmentHashes = {\n last_message_hash: string;\n commitment_hash: string;\n};\nexport interface PendingOperationsQueryArguments {\n version?: '1' | '2';\n validated?: boolean;\n applied?: boolean;\n refused?: boolean;\n outdated?: boolean;\n branchRefused?: boolean;\n branchDelayed?: boolean;\n validationPass?: '0' | '1' | '2' | '3';\n}\ntype FailedProcessedOperation = Pick & {\n error: TezosGenericOperationError[];\n};\nexport interface PendingOperationsV1 {\n applied: Pick[];\n refused: FailedProcessedOperation[];\n outdated: FailedProcessedOperation[];\n branch_refused: FailedProcessedOperation[];\n branch_delayed: FailedProcessedOperation[];\n unprocessed: Pick[];\n}\nexport interface PendingOperationsV2 {\n validated: Pick[];\n refused: FailedProcessedOperation[];\n outdated: FailedProcessedOperation[];\n branch_refused: FailedProcessedOperation[];\n branch_delayed: FailedProcessedOperation[];\n unprocessed: Pick[];\n}\nexport declare enum PvmKind {\n WASM2 = \"wasm_2_0_0\",\n ARITH = \"arith\",\n RISCV = \"riscv\"\n}\nexport interface SmartRollupPublishCommitment {\n compressed_state: string;\n inbox_level: number;\n predecessor: string;\n number_of_ticks: string;\n}\nexport declare enum SmartRollupRefutationOptions {\n START = \"start\",\n MOVE = \"move\"\n}\nexport type SmartRollupRefutation = SmartRollupRefutationStart | SmartRollupRefutationMove;\nexport interface SmartRollupRefutationStart {\n refutation_kind: SmartRollupRefutationOptions.START;\n player_commitment_hash: string;\n opponent_commitment_hash: string;\n}\nexport interface SmartRollupRefutationMove {\n refutation_kind: SmartRollupRefutationOptions.MOVE;\n choice: string;\n step: SmartRollupRefutationMoveStep;\n}\nexport type SmartRollupRefutationMoveStep = SmartRollupRefutationMoveStepDissection[] | SmartRollupRefutationMoveStepProof;\nexport interface SmartRollupRefutationMoveStepDissection {\n state?: string;\n tick: number;\n}\nexport interface SmartRollupRefutationMoveStepProof {\n pvm_step: string;\n input_proof?: SmartRollupRefutationMoveInputProof;\n}\nexport declare enum SmartRollupInputProofKind {\n INBOX_PROOF = \"inbox_proof\",\n REVEAL_PROOF = \"reveal_proof\",\n FIRST_INPUT = \"first_input\"\n}\nexport interface SmartRollupRefutationMoveInputProofInbox {\n input_proof_kind: SmartRollupInputProofKind.INBOX_PROOF;\n level: number;\n message_counter: string;\n serialized_proof: string;\n}\nexport interface SmartRollupRefutationMoveInputProofReveal {\n input_proof_kind: SmartRollupInputProofKind.REVEAL_PROOF;\n reveal_proof: SmartRollupRefuteRevealProofOptions;\n}\nexport interface SmartRollupRefutationMoveInputProofFirstInput {\n input_proof_kind: SmartRollupInputProofKind.FIRST_INPUT;\n}\nexport type SmartRollupRefutationMoveInputProof = SmartRollupRefutationMoveInputProofInbox | SmartRollupRefutationMoveInputProofReveal | SmartRollupRefutationMoveInputProofFirstInput;\nexport declare enum SmartRollupRefuteRevealProofKind {\n RAW_DATA_PROOF = \"raw_data_proof\",\n METADATA_PROOF = \"metadata_proof\",\n DAL_PAGE_PROOF = \"dal_page_proof\",\n DAL_PARAMETERS_PROOF = \"dal_parameters_proof\"\n}\nexport interface SmartRollupRefuteRevealProofRaw {\n reveal_proof_kind: SmartRollupRefuteRevealProofKind.RAW_DATA_PROOF;\n raw_data: string;\n}\nexport interface SmartRollupRefuteRevealProofMetadata {\n reveal_proof_kind: SmartRollupRefuteRevealProofKind.METADATA_PROOF;\n}\nexport interface SmartRollupRefuteRevealProofDalPage {\n reveal_proof_kind: SmartRollupRefuteRevealProofKind.DAL_PAGE_PROOF;\n dal_page_id: {\n published_level: number;\n slot_index: number;\n page_index: number;\n };\n dal_proof: string;\n}\nexport interface SmartRollupRefuteRevealProofDalParameters {\n reveal_proof_kind: SmartRollupRefuteRevealProofKind.DAL_PARAMETERS_PROOF;\n}\nexport type SmartRollupRefuteRevealProofOptions = SmartRollupRefuteRevealProofRaw | SmartRollupRefuteRevealProofMetadata | SmartRollupRefuteRevealProofDalPage | SmartRollupRefuteRevealProofDalParameters;\nexport type SmartRollupGameStatus = SmartRollupRefuteGameStatusOptions.ONGOING | SmartRollupRefuteGameStatusEnded;\nexport declare enum SmartRollupRefuteGameStatusOptions {\n ONGOING = \"ongoing\",\n ENDED = \"ended\"\n}\nexport interface SmartRollupRefuteGameStatusEnded {\n result: SmartRollupRefuteGameStatusResult;\n}\nexport type SmartRollupRefuteGameStatusResult = SmartRollupRefuteGameEndedResultLoser | SmartRollupRefuteGameEndedResultDraw;\nexport interface SmartRollupRefuteGameEndedResultLoser {\n kind: SmartRollupRefuteGameEndedPlayerOutcomes.LOSER;\n reason: SmartRollupRefuteGameEndedReason;\n player: string;\n}\nexport interface SmartRollupRefuteGameEndedResultDraw {\n kind: SmartRollupRefuteGameEndedPlayerOutcomes.DRAW;\n}\nexport declare enum SmartRollupRefuteGameEndedPlayerOutcomes {\n LOSER = \"loser\",\n DRAW = \"draw\"\n}\nexport declare enum SmartRollupRefuteGameEndedReason {\n CONFLICT_RESOLVED = \"conflict_resolved\",\n TIMEOUT = \"timeout\"\n}\nexport interface SmartRollupTimeoutStakers {\n alice: string;\n bob: string;\n}\nexport {};\n"},{name:"@taquito/rpc/dist/types/version.d.ts",dts:"export declare const VERSION: {\n commitHash: string;\n version: string;\n};\n"},{name:"@taquito/batch/rpc-batch-provider.d.ts",dts:"import { Context } from '../context';\nimport { ContractStorageType, DefaultContractType } from '../contract/contract';\nimport { ContractMethod } from '../contract/contract-methods/contract-method-flat-param';\nimport { SendParams } from '../contract/contract-methods/contract-method-interface';\nimport { ContractProvider } from '../contract/interface';\nimport { BatchOperation } from '../operations/batch-operation';\nimport { ActivationParams, DelegateParams, OriginateParams, TransferParams, ParamsWithKind, RegisterGlobalConstantParams, TransferTicketParams, IncreasePaidStorageParams, SmartRollupAddMessagesParams, SmartRollupOriginateParams, SmartRollupExecuteOutboxMessageParams } from '../operations/types';\nimport { OpKind } from '@taquito/rpc';\nimport { ContractMethodObject } from '../contract/contract-methods/contract-method-object-param';\nimport { EstimationProvider } from '../estimate/estimate-provider-interface';\nimport { Provider } from '../provider';\nexport declare const BATCH_KINDS: OpKind[];\nexport type BatchKinds = OpKind.ACTIVATION | OpKind.ORIGINATION | OpKind.TRANSACTION | OpKind.DELEGATION;\nexport declare class OperationBatch extends Provider {\n private estimator;\n private operations;\n constructor(context: Context, estimator: EstimationProvider);\n private prepare;\n /**\n *\n * @description Add a transaction operation to the batch\n *\n * @param params Transfer operation parameter\n */\n withTransfer(params: TransferParams): this;\n /**\n *\n * @description Transfer tickets from a Tezos address (tz1,tz2 or tz3) to a smart contract address( KT1)\n *\n * @param params Transfer operation parameter\n */\n withTransferTicket(params: TransferTicketParams): this;\n /**\n *\n * @description Add a contract call to the batch\n *\n * @param params Call a contract method\n * @param options Generic operation parameters\n */\n withContractCall(params: ContractMethod | ContractMethodObject, options?: Partial): this;\n /**\n *\n * @description Add a delegation operation to the batch\n *\n * @param params Delegation operation parameter\n */\n withDelegation(params: DelegateParams): this;\n /**\n *\n * @description Add an activation operation to the batch\n *\n * @param params Activation operation parameter\n * @throws {@link InvalidKeyHashError}\n */\n withActivation({ pkh, secret }: ActivationParams): this;\n /**\n *\n * @description Add an origination operation to the batch\n *\n * @param params Origination operation parameter\n */\n withOrigination(params: OriginateParams>): this;\n /**\n *\n * @description Add a register a global constant operation to the batch\n *\n * @param params RegisterGlobalConstant operation parameter\n */\n withRegisterGlobalConstant(params: RegisterGlobalConstantParams): this;\n /**\n *\n * @description Add an increase paid storage operation to the batch\n *\n * @param params IncreasePaidStorage operation parameter\n */\n withIncreasePaidStorage(params: IncreasePaidStorageParams): this;\n /**\n *\n * @description Add a smart rollup add messages operation to the batch\n *\n * @param params Rollup origination operation parameter\n */\n withSmartRollupAddMessages(params: SmartRollupAddMessagesParams): this;\n /**\n *\n * @description Add a smart rollup originate operation to the batch\n *\n * @param params Smart Rollup Originate operation parameter\n */\n withSmartRollupOriginate(params: SmartRollupOriginateParams): this;\n /**\n *\n * @description Add a smart rollup execute outbox message to the batch\n *\n * @param params Smart Rollup Execute Outbox Message operation parameter\n */\n withSmartRollupExecuteOutboxMessage(params: SmartRollupExecuteOutboxMessageParams): this;\n getRPCOp(param: ParamsWithKind): Promise;\n /**\n *\n * @description Add a group operation to the batch. Operation will be applied in the order they are in the params array\n *\n * @param params Operations parameter\n * @throws {@link InvalidOperationKindError}\n */\n with(params: ParamsWithKind[]): this;\n /**\n *\n * @description Forge and Inject the operation batch\n *\n * @param params Optionally specify the source of the operation\n */\n send(params?: {\n source?: string;\n }): Promise;\n}\nexport declare class RPCBatchProvider {\n private context;\n private estimator;\n constructor(context: Context, estimator: EstimationProvider);\n /***\n *\n * @description Batch a group of operation together. Operations will be applied in the order in which they are added to the batch\n *\n * @param params List of operation to batch together\n */\n batch(params?: ParamsWithKind[]): OperationBatch;\n}\n"},{name:"@taquito/contract/contract-methods/contract-method-factory.d.ts",dts:"import { Wallet } from '../../wallet';\nimport { ContractProvider } from '../../contract';\nimport { ContractMethodObject } from './contract-method-object-param';\nimport { ContractMethod } from './contract-method-flat-param';\nimport { ParameterSchema, ViewSchema } from '@taquito/michelson-encoder';\nimport { RpcClientInterface, MichelsonV1Expression } from '@taquito/rpc';\nimport { OnChainView } from './contract-on-chain-view';\nimport { TzReadProvider } from '../../read-provider/interface';\nexport declare class ContractMethodFactory {\n private provider;\n private contractAddress;\n constructor(provider: T, contractAddress: string);\n createContractMethodFlatParams(smartContractMethodSchema: ParameterSchema, smartContractMethodName: string, args: any[], isMultipleEntrypoint?: boolean, isAnonymous?: boolean): ContractMethod;\n createContractMethodObjectParam(smartContractMethodSchema: ParameterSchema, smartContractMethodName: string, args: any[], isMultipleEntrypoint?: boolean, isAnonymous?: boolean): ContractMethodObject;\n createContractViewObjectParam(rpc: RpcClientInterface, readProvider: TzReadProvider, smartContractViewSchema: ViewSchema, contractStorageType: MichelsonV1Expression, viewArgs: any): OnChainView;\n}\n"},{name:"@taquito/contract/contract-methods/contract-method-flat-param.d.ts",dts:"import { TransactionOperation } from '../../operations/transaction-operation';\nimport { TransferParams } from '../../operations/types';\nimport { ContractProvider } from '../interface';\nimport { TransactionWalletOperation, Wallet } from '../../wallet';\nimport { ParameterSchema } from '@taquito/michelson-encoder';\nimport { ContractMethodInterface, SendParams } from './contract-method-interface';\n/**\n * @description Utility class to send smart contract operation\n * The format for the arguments is the flattened representation\n */\nexport declare class ContractMethod implements ContractMethodInterface {\n private provider;\n private address;\n private parameterSchema;\n private name;\n private args;\n private isMultipleEntrypoint;\n private isAnonymous;\n constructor(provider: T, address: string, parameterSchema: ParameterSchema, name: string, args: any[], isMultipleEntrypoint?: boolean, isAnonymous?: boolean);\n private validateArgs;\n /**\n * @description Get the schema of the smart contract method\n */\n get schema(): any;\n /**\n * @description Get the signature of the smart contract method\n */\n getSignature(): any[] | undefined;\n /**\n *\n * @description Send the smart contract operation\n *\n * @param Options generic operation parameter\n */\n send(params?: Partial): Promise;\n /**\n *\n * @description Create transfer params to be used with TezosToolkit.contract.transfer methods\n *\n * @param Options generic transfer operation parameters\n */\n toTransferParams({ fee, gasLimit, storageLimit, source, amount, mutez, }?: Partial): TransferParams;\n}\n"},{name:"@taquito/contract/contract-methods/contract-method-interface.d.ts",dts:"import { TransactionOperation } from '../../operations/transaction-operation';\nimport { TransferParams } from '../../operations/types';\nimport { TransactionWalletOperation } from '../../wallet';\nexport interface SendParams {\n fee?: number;\n storageLimit?: number;\n gasLimit?: number;\n amount: number;\n source?: string;\n mutez?: boolean;\n}\nexport type ExplicitTransferParams = Required> & SendParams;\nexport interface ContractMethodInterface {\n /**\n *\n * @description Send the smart contract operation\n *\n * @param Options generic operation parameter\n */\n send(params: Partial): Promise;\n /**\n *\n * @description Create transfer params to be used with TezosToolkit.contract.transfer methods\n *\n * @param Options generic transfer operation parameters\n */\n toTransferParams(params: Partial): TransferParams;\n}\n"},{name:"@taquito/contract/contract-methods/contract-method-object-param.d.ts",dts:"import { TransactionOperation } from '../../operations/transaction-operation';\nimport { TransferParams } from '../../operations/types';\nimport { ContractProvider } from '../interface';\nimport { TransactionWalletOperation, Wallet } from '../../wallet';\nimport { ParameterSchema } from \"@taquito/michelson-encoder\";\nimport { ContractMethodInterface, SendParams } from './contract-method-interface';\n/**\n * @description Utility class to send smart contract operation\n * The format for the arguments is the object representation\n */\nexport declare class ContractMethodObject implements ContractMethodInterface {\n private provider;\n private address;\n private parameterSchema;\n private name;\n private args;\n private isMultipleEntrypoint;\n private isAnonymous;\n constructor(provider: T, address: string, parameterSchema: ParameterSchema, name: string, args?: any, isMultipleEntrypoint?: boolean, isAnonymous?: boolean);\n /**\n * @description Get the signature of the smart contract method\n */\n getSignature(): any;\n /**\n *\n * @description Send the smart contract operation\n *\n * @param Options generic operation parameter\n */\n send(params?: Partial): Promise;\n /**\n *\n * @description Create transfer params to be used with TezosToolkit.contract.transfer methods\n *\n * @param Options generic transfer operation parameters\n */\n toTransferParams({ fee, gasLimit, storageLimit, source, amount, mutez, }?: Partial): TransferParams;\n}\n"},{name:"@taquito/contract/contract-methods/contract-on-chain-view.d.ts",dts:"import { ViewSchema } from '@taquito/michelson-encoder';\nimport { MichelsonV1Expression, RpcClientInterface } from '@taquito/rpc';\nimport { TzReadProvider } from '../../read-provider/interface';\nexport interface ExecutionContextParams {\n source?: string;\n viewCaller: string;\n}\nexport declare class OnChainView {\n private _rpc;\n private _readProvider;\n private _contractAddress;\n private _smartContractViewSchema;\n private _contractStorageType;\n private _args;\n constructor(_rpc: RpcClientInterface, _readProvider: TzReadProvider, _contractAddress: string, _smartContractViewSchema: ViewSchema, _contractStorageType: MichelsonV1Expression, _args?: any);\n /**\n * @description Get the signature of the smart contract view\n */\n getSignature(): {\n parameter: any;\n result: any;\n };\n /**\n * @description Get the result of the view simulation\n * @param executionContext.source the public key hash of the account who initialized this view execution.\n * @param executionContext.viewCaller the contract address which is the caller of view.\n */\n executeView(executionContext: ExecutionContextParams): Promise;\n private verifyContextExecution;\n private transformArgsToMichelson;\n /**\n * @description Loops through the view's instructions and replace BALANCE, SENDER, SELF_ADDRESS and AMOUNT with Michelson expressions that match the current context, if applicable.\n *\n * Certain specific instructions have different semantics in view:\n * BALANCE represents the current amount of mutez held by the contract where view is;\n * SENDER represents the contract which is the caller of view;\n * SELF_ADDRESS represents the contract where view is;\n * AMOUNT is always 0 mutez.\n *\n */\n private adaptViewCodeToContext;\n private executeViewAndDecodeResult;\n}\n"},{name:"@taquito/contract/big-map.d.ts",dts:"import { Schema, BigMapKeyType } from '@taquito/michelson-encoder';\nimport BigNumber from 'bignumber.js';\nimport { ContractProvider } from './interface';\nexport declare class BigMapAbstraction {\n private id;\n private schema;\n private provider;\n constructor(id: BigNumber, schema: Schema, provider: ContractProvider);\n /**\n *\n * @description Fetch one value in a big map\n *\n * @param keysToEncode Key to query (will be encoded properly according to the schema)\n * @param block optional block level to fetch the values from (head will be use by default)\n * @returns Return a well formatted json object of a big map value or undefined if the key is not found in the big map\n *\n */\n get(keyToEncode: BigMapKeyType, block?: number): Promise;\n /**\n *\n * @description Fetch multiple values in a big map\n * All values will be fetched on the same block level. If a block is specified in the request, the values will be fetched at it.\n * Otherwise, a first request will be done to the node to fetch the level of the head and all values will be fetched at this level.\n * If one of the keys does not exist in the big map, its value will be set to undefined.\n *\n * @param keysToEncode Array of keys to query (will be encoded properly according to the schema)\n * @param block optional block level to fetch the values from\n * @param batchSize optional batch size representing the number of requests to execute in parallel\n * @returns A MichelsonMap containing the keys queried in the big map and their value in a well-formatted JSON object format\n *\n */\n getMultipleValues(keysToEncode: Array, block?: number, batchSize?: number): Promise>;\n toJSON(): string;\n toString(): string;\n}\n"},{name:"@taquito/contract/compose.d.ts",dts:"import { Wallet } from '../wallet/wallet';\nimport { Context } from '../context';\nimport { ContractAbstraction } from './contract';\nimport { ContractProvider } from './interface';\nexport declare function compose, ContractAbsComposer2 extends ContractAbstraction, ContractAbstractionComposed>(functioncomposer1: (abs: ContractAbsComposer1, context: Context) => ContractAbsComposer2, functioncomposer2: (abs: ContractAbsComposer2, context: Context) => ContractAbstractionComposed): (abs: ContractAbsComposer1, context: Context) => ContractAbstractionComposed;\n"},{name:"@taquito/contract/contract.d.ts",dts:"import { ParameterSchema, Schema, ViewSchema, EventSchema } from '@taquito/michelson-encoder';\nimport { EntrypointsResponse, RpcClientInterface, ScriptResponse } from '@taquito/rpc';\nimport { ChainIds } from '../constants';\nimport { TzReadProvider } from '../read-provider/interface';\nimport { Wallet } from '../wallet';\nimport { ContractMethod } from './contract-methods/contract-method-flat-param';\nimport { ContractMethodObject } from './contract-methods/contract-method-object-param';\nimport { OnChainView } from './contract-methods/contract-on-chain-view';\nimport { ContractProvider, StorageProvider } from './interface';\nexport declare const DEFAULT_SMART_CONTRACT_METHOD_NAME = \"default\";\n/**\n * @description Utility class to retrieve data from a smart contract's storage without incurring fees via a contract's view method\n */\nexport declare class ContractView {\n private currentContract;\n private name;\n private callbackParametersSchema;\n private parameterSchema;\n private args;\n private rpc;\n private readProvider;\n constructor(currentContract: ContractAbstraction, name: string, callbackParametersSchema: ParameterSchema, parameterSchema: ParameterSchema, args: any[], rpc: RpcClientInterface, readProvider: TzReadProvider);\n read(chainId?: ChainIds): Promise;\n}\nexport type Contract = ContractAbstraction;\nexport type WalletContract = ContractAbstraction;\ntype DefaultMethods = Record ContractMethod>;\ntype DefaultMethodsObject = Record ContractMethodObject>;\ntype DefaultViews = Record ContractView>;\ntype DefaultContractViews = Record OnChainView>;\ntype DefaultStorage = unknown;\ntype PromiseReturnType any> = T extends (...args: any) => Promise ? R : any;\nexport type ContractStorageType> = PromiseReturnType;\nexport type DefaultContractType = ContractAbstraction;\nexport type DefaultWalletType = ContractAbstraction;\n/**\n * @description Smart contract abstraction\n */\nexport declare class ContractAbstraction = DefaultMethods, TMethodsObject extends DefaultMethodsObject = DefaultMethodsObject, TViews extends DefaultViews = DefaultViews, TContractViews extends DefaultContractViews = DefaultContractViews, TStorage extends DefaultStorage = DefaultStorage> {\n readonly address: string;\n readonly script: ScriptResponse;\n private storageProvider;\n readonly entrypoints: EntrypointsResponse;\n private rpc;\n private readProvider;\n private contractMethodFactory;\n /**\n * @deprecated use methodsObject instead, flat params of methods can't sufficiently represent all Michelson values\n * @description Contains methods that are implemented by the target Tezos Smart Contract, and offers the user to call the Smart Contract methods as if they were native TS/JS methods.\n * NB: if the contract contains annotation it will include named properties; if not it will be indexed by a number.\n */\n methods: TMethods;\n /**\n * @description Contains methods that are implemented by the target Tezos Smart Contract, and offers the user to call the Smart Contract methods as if they were native TS/JS methods.\n * `methodsObject` serves the exact same purpose as the `methods` member. The difference is that it allows passing the parameter in an object format when calling the smart contract method (instead of the flattened representation)\n * NB: if the contract contains annotation it will include named properties; if not it will be indexed by a number.\n *\n */\n methodsObject: TMethodsObject;\n /**\n * @description Contains lamda views (tzip4) that are implemented by the target Tezos Smart Contract, and offers the user to call the lambda views as if they were native TS/JS methods.\n * NB: These are the view defined in the tzip4 standard, not the views introduced by the Hangzhou protocol.\n */\n views: TViews;\n /**\n * @description Contains on-chain views that are defined by the target Tezos Smart Contract, and offers the user to simulate the views execution as if they were native TS/JS methods.\n * NB: the expected format for the parameter when calling a smart contract view is the object format (same format as for the storage) and not the flattened representation.\n *\n */\n contractViews: TContractViews;\n readonly schema: Schema;\n readonly parameterSchema: ParameterSchema;\n readonly viewSchema: ViewSchema[];\n readonly eventSchema: EventSchema[];\n constructor(address: string, script: ScriptResponse, provider: T, storageProvider: StorageProvider, entrypoints: EntrypointsResponse, rpc: RpcClientInterface, readProvider: TzReadProvider);\n private _initializeMethods;\n private _initializeOnChainViews;\n /**\n * @description Return a friendly representation of the smart contract storage\n */\n storage(): Promise;\n /**\n *\n * @description Return a friendly representation of the smart contract big map value\n *\n * @param key BigMap key to fetch\n *\n * @deprecated getBigMapKey has been deprecated in favor of getBigMapKeyByID\n *\n * @see https://tezos.gitlab.io/api/rpc.html#post-block-id-context-contracts-contract-id-big-map-get\n */\n bigMap(key: string): Promise;\n}\nexport {};\n"},{name:"@taquito/contract/errors.d.ts",dts:"import { ParameterValidationError, RpcError } from '@taquito/core';\nimport { HttpResponseError } from '@taquito/http-utils';\nimport { MichelsonV1Expression } from '@taquito/rpc';\n/**\n * @category Error\n * @description Error that indicates invalid smart contract parameters being passed or used\n */\nexport declare class InvalidParameterError extends ParameterValidationError {\n readonly smartContractMethodName: string;\n readonly sigs: any[];\n readonly invalidParams: any[];\n constructor(smartContractMethodName: string, sigs: any[], invalidParams: any[]);\n}\n/**\n * @category Error\n * @description Error that indicates an invalid delegation source contract address being passed or used\n */\nexport declare class InvalidDelegationSource extends ParameterValidationError {\n readonly source: string;\n constructor(source: string);\n}\n/**\n * @category Error\n * @description Error that indicates an invalid smart contract code parameter being passed or used\n */\nexport declare class InvalidCodeParameter extends ParameterValidationError {\n readonly message: string;\n readonly data: any;\n constructor(message: string, data: any);\n}\n/**\n * @category Error\n * @description Error that indicates invalid smart contract init parameter being passed or used\n */\nexport declare class InvalidInitParameter extends ParameterValidationError {\n readonly message: string;\n readonly data: any;\n constructor(message: string, data: any);\n}\n/**\n * @category Error\n * @description Error that indicates a failure when conducting a view simulation\n */\nexport declare class ViewSimulationError extends RpcError {\n readonly message: string;\n readonly viewName: string;\n readonly failWith?: MichelsonV1Expression | undefined;\n readonly cause?: any;\n constructor(message: string, viewName: string, failWith?: MichelsonV1Expression | undefined, cause?: any);\n}\nexport declare const validateAndExtractFailwith: (error: HttpResponseError) => MichelsonV1Expression | undefined;\n/**\n * @category Error\n * @description Error that indicates invalid or unconfigured context when executing a view\n */\nexport declare class InvalidViewSimulationContext extends ParameterValidationError {\n readonly info: string;\n constructor(info: string);\n}\n/**\n * @category Error\n * @description Error that indicates a mistake happening during the reveal operation\n */\nexport declare class RevealOperationError extends RpcError {\n readonly message: string;\n constructor(message: string);\n}\n/**\n * @category Error\n * @description Error that indicates a mistake in the parameters in the preparation of an Origination operation\n */\nexport declare class OriginationParameterError extends ParameterValidationError {\n readonly message: string;\n constructor(message: string);\n}\n/**\n * @category Error\n * @description Error that indicates an invalid balance being passed or used\n */\nexport declare class InvalidBalanceError extends ParameterValidationError {\n readonly message: string;\n constructor(message: string);\n}\n"},{name:"@taquito/contract/index.d.ts",dts:"export * from './contract';\nexport * from './errors';\nexport * from './interface';\nexport * from './manager-lambda';\nexport * from './prepare';\nexport * from './view_lambda';\nexport { compose } from './compose';\nexport * from './contract-methods/contract-method-interface';\nexport * from './contract-methods/contract-method-flat-param';\nexport * from './contract-methods/contract-method-object-param';\nexport * from './sapling-state-abstraction';\nexport { smartContractAbstractionSemantic } from './semantic';\n"},{name:"@taquito/contract/interface.d.ts",dts:"import { BigMapKeyType, MichelsonMap, MichelsonMapKey, Schema } from '@taquito/michelson-encoder';\nimport { SaplingDiffResponse } from '@taquito/rpc';\nimport { OperationBatch } from '../batch/rpc-batch-provider';\nimport { Context } from '../context';\nimport { DelegateOperation } from '../operations/delegate-operation';\nimport { OriginationOperation } from '../operations/origination-operation';\nimport { RegisterGlobalConstantOperation } from '../operations/register-global-constant-operation';\nimport { RevealOperation } from '../operations/reveal-operation';\nimport { TransactionOperation } from '../operations/transaction-operation';\nimport { DelegateParams, OriginateParams, TransferParams, RegisterDelegateParams, ParamsWithKind, RevealParams, RegisterGlobalConstantParams, IncreasePaidStorageParams, TransferTicketParams, DrainDelegateParams, BallotParams, ProposalsParams, UpdateConsensusKeyParams, SmartRollupAddMessagesParams, SmartRollupOriginateParams, SmartRollupExecuteOutboxMessageParams, FailingNoopParams, StakeParams, UnstakeParams, FinalizeUnstakeParams } from '../operations/types';\nimport { ContractAbstraction, ContractStorageType, DefaultContractType } from './contract';\nimport { IncreasePaidStorageOperation } from '../operations/increase-paid-storage-operation';\nimport { TransferTicketOperation } from '../operations/transfer-ticket-operation';\nimport { DrainDelegateOperation } from '../operations';\nimport { BallotOperation } from '../operations';\nimport { ProposalsOperation } from '../operations/proposals-operation';\nimport { UpdateConsensusKeyOperation } from '../operations/update-consensus-key-operation';\nimport { SmartRollupAddMessagesOperation } from '../operations/smart-rollup-add-messages-operation';\nimport { SmartRollupOriginateOperation } from '../operations/smart-rollup-originate-operation';\nimport { SmartRollupExecuteOutboxMessageOperation } from '../operations/smart-rollup-execute-outbox-message-operation';\nimport { FailingNoopOperation } from '../operations/failing-noop-operation';\nexport type ContractSchema = Schema | unknown;\nexport interface StorageProvider {\n /**\n *\n * @description Return a well formatted json object of the contract storage\n *\n * @param contract contract address you want to get the storage from\n * @param schema optional schema can either be the contract script rpc response or a michelson-encoder schema\n *\n * @see https://tezos.gitlab.io/api/rpc.html#get-block-id-context-contracts-contract-id-script\n */\n getStorage(contract: string, schema?: ContractSchema): Promise;\n /**\n *\n * @description Return a well formatted json object of the contract big map storage\n *\n * @param contract contract address you want to get the storage from\n * @param key contract big map key to fetch value from\n * @param schema optional schema can either be the contract script rpc response or a michelson-encoder schema\n *\n * @deprecated Deprecated in favor of getBigMapKeyByID\n *\n * @see https://tezos.gitlab.io/api/rpc.html#post-block-id-context-contracts-contract-id-big-map-get\n */\n getBigMapKey(contract: string, key: string, schema?: ContractSchema): Promise;\n /**\n *\n * @description Return a well formatted json object of a big map value\n *\n * @param id Big Map ID\n * @param keyToEncode key to query (will be encoded properly according to the schema)\n * @param schema Big Map schema (can be determined using your contract type)\n * @param block optional block level to fetch the value from\n *\n * @see https://tezos.gitlab.io/api/rpc.html#get-block-id-context-big-maps-big-map-id-script-expr\n */\n getBigMapKeyByID(id: string, keyToEncode: BigMapKeyType, schema: Schema, block?: number): Promise;\n /**\n *\n * @description Fetch multiple values in a big map\n *\n * @param id Big Map ID\n * @param keysToEncode Array of keys to query (will be encoded properly according to the schema)\n * @param schema Big Map schema (can be determined using your contract type)\n * @param block optional block level to fetch the values from\n * @param batchSize optional batch size representing the number of requests to execute in parallel\n * @returns An object containing the keys queried in the big map and their value in a well-formatted JSON object format\n *\n */\n getBigMapKeysByID(id: string, keysToEncode: Array, schema: Schema, block?: number, batchSize?: number): Promise>;\n /**\n *\n * @description Return a well formatted json object of a sapling state\n *\n * @param id Sapling state ID\n * @param block optional block level to fetch the value from\n *\n */\n getSaplingDiffByID(id: string, block?: number): Promise;\n}\nexport interface ContractProvider extends StorageProvider {\n /**\n *\n * @description Originate a new contract according to the script in parameters. Will sign and inject an operation using the current context\n *\n * @returns An operation handle with the result from the rpc node\n *\n * @param OriginationOperation Originate operation parameter\n */\n originate(contract: OriginateParams>): Promise>;\n /**\n *\n * @description Set the delegate for a contract. Will sign and inject an operation using the current context\n *\n * @returns An operation handle with the result from the rpc node\n *\n * @param SetDelegate operation parameter\n */\n setDelegate(params: DelegateParams): Promise;\n /**\n *\n * @description Register the current address as delegate. Will sign and inject an operation using the current context\n *\n * @returns An operation handle with the result from the rpc node\n *\n * @param RegisterDelegate operation parameter\n */\n registerDelegate(params: RegisterDelegateParams): Promise;\n /**\n *\n * @description Transfer tz from current address to a specific address. Will sign and inject an operation using the current context\n *\n * @returns An operation handle with the result from the rpc node\n *\n * @param Transfer operation parameter\n */\n transfer(params: TransferParams): Promise;\n /**\n *\n * @description Stake tz from current address to a specific address. Built on top of the existing transaction operation\n *\n * @returns An operation handle with the result from the rpc node\n *\n * @param Stake pseudo-operation parameter\n */\n stake(params: StakeParams): Promise;\n /**\n *\n * @description Unstake tz from current address to a specific address. Built on top of the existing transaction operation\n *\n * @returns An operation handle with the result from the rpc node\n *\n * @param Unstake pseudo-operation parameter\n */\n unstake(params: UnstakeParams): Promise;\n /**\n *\n * @description Finalize unstake tz from current address to a specific address. Built on top of the existing transaction operation\n *\n * @returns An operation handle with the result from the rpc node\n *\n * @param finalize_unstake pseudo-operation parameter\n */\n finalizeUnstake(params: FinalizeUnstakeParams): Promise;\n /**\n *\n * @description Transfer tickets from an implicit account to a contract or another implicit account.\n *\n * @returns An operation handle with the result from the rpc node\n *\n * @param TransferTicket operation parameter\n */\n transferTicket(params: TransferTicketParams): Promise;\n /**\n *\n * @description Reveal the current address. Will throw an error if the address is already revealed.\n *\n * @returns An operation handle with the result from the rpc node\n *\n * @param Reveal operation parameter\n */\n reveal(params: RevealParams): Promise;\n at>(address: string, contractAbstractionComposer?: (abs: ContractAbstraction, context: Context) => T): Promise;\n /**\n *\n * @description Batch a group of operation together. Operations will be applied in the order in which they are added to the batch\n *\n * @param params List of operation to batch together\n */\n batch(params?: ParamsWithKind[]): OperationBatch;\n /**\n *\n * @description Register a Micheline expression in a global table of constants. Will sign and inject an operation using the current context\n *\n * @returns An operation handle with the result from the rpc node\n *\n * @param params registerGlobalConstant operation parameter\n */\n registerGlobalConstant(params: RegisterGlobalConstantParams): Promise;\n /**\n *\n * @description Increase the amount of bytes in a smart contract storage by paying a fee\n *\n * @returns An operation handle with the result from the rpc node\n *\n * @param params IncreasePaidStorage operation parameter\n */\n increasePaidStorage(params: IncreasePaidStorageParams): Promise;\n /**\n *\n * @description Submit a drain delegate operation\n *\n * @returns An operation handle with the result from the RPC node\n *\n * @param DrainDelegateParams DrainDelegate operation parameter\n */\n drainDelegate(params: DrainDelegateParams): Promise;\n /**\n *\n * @description Submit ballot for an ongoing proposal\n *\n * @returns An operation handle with the result from the RPC node\n *\n * @param BallotParams Ballot operation parameter\n */\n ballot(params: BallotParams): Promise;\n /**\n *\n * @description Submit proposal\n *\n * @returns An operation handle with the result from the RPC node\n *\n * @param ProposalsParams Proposals operation parameter\n */\n proposals(params: ProposalsParams): Promise;\n /**\n *\n * @description Update consensus key\n *\n * @returns An operation handle with the result from the RPC node\n *\n * @param UpdateConsensusKeyParams UpdateConsensusKey operation parameter\n */\n updateConsensusKey(params: UpdateConsensusKeyParams): Promise;\n /**\n *\n * @description Smart Rollup Add Messages\n *\n * @returns An operation handle with the result from the RPC node\n *\n * @param SmartRollupAddMessagesParams smartRollupAddMessages operation parameter\n */\n smartRollupAddMessages(params: SmartRollupAddMessagesParams): Promise;\n /**\n * @description Smart rollup originate\n *\n * @returns An operation handle with the result from the RPC node\n *\n * @param SmartRollupOriginateParams smartRollupOriginate operation parameter\n */\n smartRollupOriginate(params: SmartRollupOriginateParams): Promise;\n /**\n * @description Execute a message from a smart rollup's outbox of a cemented commitment\n *\n * @returns An operation handle with the result from the RPC node\n *\n * @param SmartRollupExecuteOutboxMessageParams smartRollupExecuteOutboxMessage operation parameter\n */\n smartRollupExecuteOutboxMessage(params: SmartRollupExecuteOutboxMessageParams): Promise;\n /**\n *\n * @description Send arbitrary data inside a failing_noop operation that's guaranteed to fail.\n *\n * @returns An operation handle with the result from the rpc node\n *\n * @param params FailingNoop operation parameter\n */\n failingNoop(params: FailingNoopParams): Promise;\n}\n"},{name:"@taquito/contract/lambda-view.d.ts",dts:"import { MichelsonV1Expression } from '@taquito/rpc';\nimport { Contract, ContractAbstraction, WalletContract } from './contract';\nimport { ContractProvider } from './interface';\nimport { Wallet } from '../wallet';\n/**\n *\n * @deprecated LambdaView has been deprecated in favor of rpc.runView to simulate calls to views following the TZIP-4 standard\n */\nexport default class LambdaView {\n private lambdaContract;\n private viewContract;\n readonly viewMethod: string;\n private contractParameter;\n readonly voidLambda: object;\n constructor(lambdaContract: Contract | WalletContract, viewContract: ContractAbstraction, viewMethod?: string, contractParameter?: MichelsonV1Expression);\n execute(): Promise;\n private createVoidLambda;\n private getView;\n}\n"},{name:"@taquito/contract/manager-lambda.d.ts",dts:"export declare const MANAGER_LAMBDA: {\n setDelegate: (key: string) => ({\n prim: string;\n args?: undefined;\n } | {\n prim: string;\n args: ({\n prim: string;\n string?: undefined;\n } | {\n string: string;\n prim?: undefined;\n })[];\n })[];\n removeDelegate: () => ({\n prim: string;\n args?: undefined;\n } | {\n prim: string;\n args: {\n prim: string;\n }[];\n })[];\n transferImplicit: (key: string, mutez: number) => ({\n prim: string;\n args?: undefined;\n } | {\n prim: string;\n args: ({\n prim: string;\n string?: undefined;\n } | {\n string: string;\n prim?: undefined;\n })[];\n } | {\n prim: string;\n args: ({\n prim: string;\n int?: undefined;\n } | {\n int: string;\n prim?: undefined;\n })[];\n })[];\n transferToContract: (key: string, amount: number) => ({\n prim: string;\n args?: undefined;\n } | {\n prim: string;\n args: ({\n prim: string;\n string?: undefined;\n } | {\n string: string;\n prim?: undefined;\n })[];\n } | {\n prim: string;\n args: {\n prim: string;\n }[][];\n } | {\n prim: string;\n args: ({\n prim: string;\n int?: undefined;\n } | {\n int: string;\n prim?: undefined;\n })[];\n })[];\n};\n"},{name:"@taquito/contract/prepare.d.ts",dts:"import { OriginateParams, RPCOriginationOperation, TransferParams, RPCTransferOperation, DelegateParams, RPCDelegateOperation, RegisterDelegateParams, RPCRevealOperation, RevealParams, RegisterGlobalConstantParams, RPCRegisterGlobalConstantOperation, TransferTicketParams, RPCTransferTicketOperation, IncreasePaidStorageParams, RPCIncreasePaidStorageOperation, DrainDelegateParams, RPCDrainDelegateOperation, BallotParams, RPCBallotOperation, ProposalsParams, RPCProposalsOperation, UpdateConsensusKeyParams, RPCUpdateConsensusKeyOperation, SmartRollupAddMessagesParams, RPCSmartRollupAddMessagesOperation, SmartRollupOriginateParams, RPCSmartRollupOriginateOperation, SmartRollupExecuteOutboxMessageParams, RPCSmartRollupOutboxMessageOperation, ActivationParams, RPCActivateOperation } from '../operations/types';\nexport declare const createActivationOperation: ({ pkh, secret }: ActivationParams) => Promise;\nexport declare const createOriginationOperation: ({ code, init, balance, delegate, storage, fee, gasLimit, storageLimit, mutez, }: OriginateParams) => Promise;\nexport declare const createTransferOperation: ({ to, amount, parameter, fee, gasLimit, storageLimit, mutez, }: TransferParams) => Promise;\nexport declare const createSetDelegateOperation: ({ delegate, source, fee, gasLimit, storageLimit, }: DelegateParams) => Promise;\nexport declare const createRegisterDelegateOperation: ({ fee, gasLimit, storageLimit }: RegisterDelegateParams, source: string) => Promise;\nexport declare const createRevealOperation: ({ fee, gasLimit, storageLimit }: RevealParams, source: string, publicKey: string) => Promise;\nexport declare const createRegisterGlobalConstantOperation: ({ value, source, fee, gasLimit, storageLimit, }: RegisterGlobalConstantParams) => Promise;\nexport declare const createTransferTicketOperation: ({ ticketContents, ticketTy, ticketTicketer, ticketAmount, destination, entrypoint, source, fee, gasLimit, storageLimit, }: TransferTicketParams) => Promise;\nexport declare const createIncreasePaidStorageOperation: ({ source, fee, gasLimit, storageLimit, amount, destination, }: IncreasePaidStorageParams) => Promise;\nexport declare const createDrainDelegateOperation: ({ consensus_key, delegate, destination, }: DrainDelegateParams) => Promise;\nexport declare const createBallotOperation: ({ source, proposal, ballot }: BallotParams) => Promise;\nexport declare const createProposalsOperation: ({ source, proposals }: ProposalsParams) => Promise;\nexport declare const createUpdateConsensusKeyOperation: ({ source, fee, gasLimit, storageLimit, pk, }: UpdateConsensusKeyParams) => Promise;\nexport declare const createSmartRollupAddMessagesOperation: ({ source, fee, gasLimit, storageLimit, message, }: SmartRollupAddMessagesParams) => Promise;\nexport declare const createSmartRollupOriginateOperation: ({ source, fee, gasLimit, storageLimit, pvmKind, kernel, parametersType, }: SmartRollupOriginateParams) => Promise;\nexport declare const createSmartRollupExecuteOutboxMessageOperation: ({ source, fee, gasLimit, storageLimit, rollup, cementedCommitment, outputProof, }: SmartRollupExecuteOutboxMessageParams) => Promise;\n"},{name:"@taquito/contract/rpc-contract-provider.d.ts",dts:"import { BigMapKeyType, MichelsonMap, MichelsonMapKey, Schema } from '@taquito/michelson-encoder';\nimport { OperationBatch } from '../batch/rpc-batch-provider';\nimport { Context } from '../context';\nimport { DelegateOperation } from '../operations/delegate-operation';\nimport { OriginationOperation } from '../operations/origination-operation';\nimport { RegisterGlobalConstantOperation } from '../operations/register-global-constant-operation';\nimport { RevealOperation } from '../operations/reveal-operation';\nimport { TransactionOperation } from '../operations/transaction-operation';\nimport { DelegateParams, OriginateParams, ParamsWithKind, RegisterDelegateParams, RegisterGlobalConstantParams, RevealParams, TransferParams, TransferTicketParams, IncreasePaidStorageParams, DrainDelegateParams, BallotParams, ProposalsParams, UpdateConsensusKeyParams, SmartRollupAddMessagesParams, SmartRollupOriginateParams, SmartRollupExecuteOutboxMessageParams, FailingNoopParams, StakeParams, UnstakeParams, FinalizeUnstakeParams } from '../operations/types';\nimport { DefaultContractType, ContractStorageType, ContractAbstraction } from './contract';\nimport { ContractProvider, ContractSchema, StorageProvider } from './interface';\nimport { EstimationProvider } from '../estimate/estimate-provider-interface';\nimport { TransferTicketOperation } from '../operations/transfer-ticket-operation';\nimport { IncreasePaidStorageOperation } from '../operations/increase-paid-storage-operation';\nimport { BallotOperation } from '../operations/ballot-operation';\nimport { DrainDelegateOperation } from '../operations/drain-delegate-operation';\nimport { ProposalsOperation } from '../operations/proposals-operation';\nimport { UpdateConsensusKeyOperation } from '../operations/update-consensus-key-operation';\nimport { SmartRollupAddMessagesOperation } from '../operations/smart-rollup-add-messages-operation';\nimport { SmartRollupOriginateOperation } from '../operations/smart-rollup-originate-operation';\nimport { SmartRollupExecuteOutboxMessageOperation } from '../operations/smart-rollup-execute-outbox-message-operation';\nimport { Provider } from '../provider';\nimport { FailingNoopOperation } from '../operations/failing-noop-operation';\nexport declare class RpcContractProvider extends Provider implements ContractProvider, StorageProvider {\n private estimator;\n constructor(context: Context, estimator: EstimationProvider);\n contractProviderTypeSymbol: symbol;\n private prepare;\n /**\n *\n * @description Return a well formatted json object of the contract storage\n *\n * @param contract contract address you want to get the storage from\n * @param schema optional schema can either be the contract script rpc response or a michelson-encoder schema\n * @throws {@link InvalidContractAddressError}\n * @see https://tezos.gitlab.io/api/rpc.html#get-block-id-context-contracts-contract-id-script\n */\n getStorage(contract: string, schema?: ContractSchema): Promise;\n /**\n *\n * @description Return a well formatted json object of the contract big map storage\n *\n * @param contract contract address you want to get the storage from\n * @param key contract big map key to fetch value from\n * @param schema optional schema can either be the contract script rpc response or a michelson-encoder schema\n * @throws {@link InvalidContractAddressError}\n * @deprecated Deprecated in favor of getBigMapKeyByID\n *\n * @see https://tezos.gitlab.io/api/rpc.html#post-block-id-context-contracts-contract-id-big-map-get\n */\n getBigMapKey(contract: string, key: string, schema?: ContractSchema): Promise;\n /**\n *\n * @description Return a well formatted json object of a big map value\n *\n * @param id Big Map ID\n * @param keyToEncode key to query (will be encoded properly according to the schema)\n * @param schema Big Map schema (can be determined using your contract type)\n * @param block optional block level to fetch the values from\n *\n * @see https://tezos.gitlab.io/api/rpc.html#get-block-id-context-big-maps-big-map-id-script-expr\n */\n getBigMapKeyByID(id: string, keyToEncode: BigMapKeyType, schema: Schema, block?: number): Promise;\n /**\n *\n * @description Fetch multiple values in a big map\n * All values will be fetched on the same block level. If a block is specified in the request, the values will be fetched at it.\n * Otherwise, a first request will be done to the node to fetch the level of the head and all values will be fetched at this level.\n * If one of the keys does not exist in the big map, its value will be set to undefined.\n *\n * @param id Big Map ID\n * @param keys Array of keys to query (will be encoded properly according to the schema)\n * @param schema Big Map schema (can be determined using your contract type)\n * @param block optional block level to fetch the values from\n * @param batchSize optional batch size representing the number of requests to execute in parallel\n * @returns A MichelsonMap containing the keys queried in the big map and their value in a well-formatted JSON object format\n *\n */\n getBigMapKeysByID(id: string, keys: Array, schema: Schema, block?: number, batchSize?: number): Promise>;\n private getBlockForRequest;\n private getBigMapValueOrUndefined;\n /**\n *\n * @description Return a well formatted json object of a sapling state\n *\n * @param id Sapling state ID\n * @param block optional block level to fetch the value from\n *\n */\n getSaplingDiffByID(id: string, block?: number): Promise;\n /**\n *\n * @description Originate a new contract according to the script in parameters. Will sign and inject an operation using the current context\n *\n * @returns An operation handle with the result from the rpc node\n *\n * @warn You cannot specify storage and init at the same time (use init to pass the raw michelson representation of storage)\n *\n * @param OriginationOperation Originate operation parameter\n */\n originate(params: OriginateParams>): Promise>;\n /**\n *\n * @description Set the delegate for a contract. Will sign and inject an operation using the current context\n *\n * @returns An operation handle with the result from the rpc node\n *\n * @param SetDelegate operation parameter\n */\n setDelegate(params: DelegateParams): Promise;\n /**\n *\n * @description Register the current address as delegate. Will sign and inject an operation using the current context\n *\n * @returns An operation handle with the result from the rpc node\n *\n * @param RegisterDelegate operation parameter\n */\n registerDelegate(params: RegisterDelegateParams): Promise;\n /**\n *\n * @description Transfer tz from current address to a specific address. Will sign and inject an operation using the current context\n *\n * @returns An operation handle with the result from the rpc node\n *\n * @param Transfer operation parameter\n */\n transfer(params: TransferParams): Promise;\n /**\n *\n * @description Stake a given amount for the source address\n *\n * @returns An operation handle with the result from the rpc node\n *\n * @param Stake pseudo-operation parameter\n */\n stake(params: StakeParams): Promise;\n /**\n *\n * @description Unstake the given amount. If \"everything\" is given as amount, unstakes everything from the staking balance.\n * Unstaked tez remains frozen for a set amount of cycles (the slashing period) after the operation. Once this period is over,\n * the operation \"finalize unstake\" must be called for the funds to appear in the liquid balance.\n *\n * @returns An operation handle with the result from the rpc node\n *\n * @param Unstake pseudo-operation parameter\n */\n unstake(params: UnstakeParams): Promise;\n /**\n *\n * @description Transfer all the finalizable unstaked funds of the source to their liquid balance\n * @returns An operation handle with the result from the rpc node\n *\n * @param Finalize_unstake pseudo-operation parameter\n */\n finalizeUnstake(params: FinalizeUnstakeParams): Promise;\n /**\n *\n * @description Transfer Tickets to a smart contract address\n *\n * @returns An operation handle with the result from the rpc node\n *\n * @param TransferTicketParams operation parameter\n */\n transferTicket(params: TransferTicketParams): Promise;\n /**\n *\n * @description Reveal the current address. Will throw an error if the address is already revealed.\n *\n * @returns An operation handle with the result from the rpc node\n *\n * @param RevealParams operation parameter\n */\n reveal(params: RevealParams): Promise;\n /**\n *\n * @description Register a Micheline expression in a global table of constants. Will sign and inject an operation using the current context\n *\n * @returns An operation handle with the result from the rpc node\n *\n * @param params registerGlobalConstant operation parameter\n */\n registerGlobalConstant(params: RegisterGlobalConstantParams): Promise;\n /**\n *\n * @description Increase the paid storage of a smart contract\n *\n * @returns An operation handle with the result from the rpc node\n *\n * @param params increasePaidStorage operation parameter\n */\n increasePaidStorage(params: IncreasePaidStorageParams): Promise;\n /**\n *\n * @description Transfers the spendable balance of the delegate to destination when consensus_key is the active consensus key of delegate\n *\n * @returns An operation handle with the result from the rpc node\n *\n * @param params drainDelegate operation parameter\n */\n drainDelegate(params: DrainDelegateParams): Promise;\n /**\n *\n * @description Submit a ballot vote to a specified proposal\n *\n * @returns An operation handle with the result from the rpc node\n *\n * @param BallotParams Ballot operation parameter\n */\n ballot(params: BallotParams): Promise;\n /**\n *\n * @description Submit or upvote a proposal during the Proposal period\n *\n * @returns An operation handle with the result from the rpc node\n *\n * @param ProposalsParams Proposals operation parameter\n */\n proposals(params: ProposalsParams): Promise;\n /**\n *\n * @description Updates the consensus key of the baker to public_key starting from the current cycle plus PRESERVED_CYCLES + 1\n *\n * @returns An operation handle with the result from the rpc node\n *\n * @param UpdateConsensusKeyParams\n */\n updateConsensusKey(params: UpdateConsensusKeyParams): Promise;\n /**\n * @description Adds messages to the rollup inbox that can be executed/claimed after it gets cemented\n * @param SmartRollupAddMessagesParams\n * @returns An operation handle with results from the RPC node\n */\n smartRollupAddMessages(params: SmartRollupAddMessagesParams): Promise;\n /**\n * @description Creates a smart rollup originate operation\n * @param SmartRollupOriginateParams\n * @returns An operation handle with results from the RPC node\n */\n smartRollupOriginate(params: SmartRollupOriginateParams): Promise;\n /**\n * @description Execute a message from a smart rollup's outbox of a cemented commitment\n * @param SmartRollupExecuteOutboxMessageParams\n * @returns An operation handle with results from the RPC node\n */\n smartRollupExecuteOutboxMessage(params: SmartRollupExecuteOutboxMessageParams): Promise;\n /**\n *\n * @description A failing_noop operation that is guaranteed to fail.\n *\n * @returns A FailingNoopOperation object representing the signed failing_noop operation\n *\n * @param params failingNoop operation parameter\n */\n failingNoop(params: FailingNoopParams): Promise;\n /**\n *\n * @description Create an smart contract abstraction for the address specified.\n *\n * @param address Smart contract address\n * @throws {@link InvalidContractAddressError}\n */\n at(address: string, contractAbstractionComposer?: ContractAbstractionComposer): Promise;\n /**\n *\n * @description Batch a group of operation together. Operations will be applied in the order in which they are added to the batch\n *\n * @returns A batch object from which we can add more operation or send a command to execute the batch\n *\n * @param params List of operation to batch together\n */\n batch(params?: ParamsWithKind[]): OperationBatch;\n}\ntype ContractAbstractionComposer = (abs: ContractAbstraction, context: Context) => T;\nexport {};\n"},{name:"@taquito/contract/sapling-state-abstraction.d.ts",dts:"import BigNumber from 'bignumber.js';\nimport { ContractProvider } from './interface';\nexport declare class SaplingStateAbstraction {\n private id;\n private provider;\n constructor(id: BigNumber, provider: ContractProvider);\n /**\n *\n * @description Fetch the sapling state\n *\n * @param block optional block level to fetch the values from (head will be use by default)\n * @returns Return a json object of the sapling_state\n *\n */\n getSaplingDiff(block?: number): Promise;\n getId(): string;\n}\n"},{name:"@taquito/contract/semantic.d.ts",dts:"import { Semantic } from '@taquito/michelson-encoder';\nimport { ContractProvider } from './interface';\n/**\n * @description Override the default michelson encoder semantic to provide richer abstraction over storage properties\n * @param provider ContractProvider (contract API)\n */\nexport declare const smartContractAbstractionSemantic: (p: ContractProvider) => Semantic;\n"},{name:"@taquito/contract/view_lambda.d.ts",dts:"export declare const VIEW_LAMBDA: {\n code: ({\n prim: string;\n args: {\n prim: string;\n args: ({\n prim: string;\n args?: undefined;\n } | {\n prim: string;\n args: ({\n prim: string;\n args: {\n prim: string;\n }[];\n } | {\n prim: string;\n args?: undefined;\n })[];\n })[];\n }[];\n } | {\n prim: string;\n args: {\n prim: string;\n }[];\n } | {\n prim: string;\n args: {\n prim: string;\n }[][];\n })[];\n storage: string;\n};\n"},{name:"@taquito/estimate/errors.d.ts",dts:"import { TaquitoError } from '@taquito/core';\n/**\n * @category Error\n * @description Error that indicates unable to get public key to estimate reveal operation in Wallet API\n */\nexport declare class RevealEstimateError extends TaquitoError {\n constructor();\n}\n"},{name:"@taquito/estimate/estimate-provider-interface.d.ts",dts:"import { OriginateParams, TransferParams, DelegateParams, RegisterDelegateParams, ParamsWithKind } from '../operations';\nimport { RevealParams, RegisterGlobalConstantParams, TransferTicketParams, IncreasePaidStorageParams, UpdateConsensusKeyParams, SmartRollupAddMessagesParams, SmartRollupOriginateParams, SmartRollupExecuteOutboxMessageParams, StakeParams, UnstakeParams, FinalizeUnstakeParams } from '../operations/types';\nimport { Estimate } from './estimate';\nimport { ContractMethod, ContractMethodObject, ContractProvider } from '../contract';\nexport interface EstimationProvider {\n /**\n *\n * @description Estimate gasLimit, storageLimit and fees for an origination operation\n *\n * @returns An estimation of gasLimit, storageLimit and fees for the operation\n *\n * @param Estimate\n */\n originate(params: OriginateParams): Promise;\n /**\n *\n * @description Estimate gasLimit, storageLimit and fees for an transfer operation\n *\n * @returns An estimation of gasLimit, storageLimit and fees for the operation\n *\n * @param Estimate\n */\n transfer({ fee, storageLimit, gasLimit, ...rest }: TransferParams): Promise;\n /**\n *\n * @description Estimate gasLimit, storageLimit and fees for an stake pseudo-operation\n *\n * @returns An estimation of gasLimit, storageLimit and fees for the operation\n *\n * @param Estimate\n */\n stake({ fee, storageLimit, gasLimit, ...rest }: StakeParams): Promise;\n /**\n *\n * @description Estimate gasLimit, storageLimit and fees for an unstake pseudo-operation\n *\n * @returns An estimation of gasLimit, storageLimit and fees for the operation\n *\n * @param Estimate\n */\n unstake({ fee, storageLimit, gasLimit, ...rest }: UnstakeParams): Promise;\n /**\n *\n * @description Estimate gasLimit, storageLimit and fees for an finalize_unstake pseudo-operation\n *\n * @returns An estimation of gasLimit, storageLimit and fees for the operation\n *\n * @param Estimate\n */\n finalizeUnstake({ fee, storageLimit, gasLimit, ...rest }: FinalizeUnstakeParams): Promise;\n /**\n *\n * @description Estimate gasLimit, storageLimit and fees for an transferTicket operation\n *\n * @returns An estimation of gasLimit, storageLimit and fees for the operation\n *\n * @param Estimate\n */\n transferTicket({ fee, storageLimit, gasLimit, ...rest }: TransferTicketParams): Promise;\n /**\n *\n * @description Estimate gasLimit, storageLimit and fees for a delegate operation\n *\n * @returns An estimation of gasLimit, storageLimit and fees for the operation\n *\n * @param Estimate\n */\n setDelegate(params: DelegateParams): Promise;\n /**\n *\n * @description Estimate gasLimit, storageLimit and fees for a delegate operation\n *\n * @returns An estimation of gasLimit, storageLimit and fees for the operation\n *\n * @param Estimate\n */\n registerDelegate(params?: RegisterDelegateParams): Promise;\n /**\n *\n * @description Estimate gasLimit, storageLimit and fees for a reveal operation\n *\n * @returns An estimation of gasLimit, storageLimit and fees for the operation or undefined if the account is already revealed\n *\n * @param Estimate\n */\n reveal(params?: RevealParams): Promise;\n batch(params: ParamsWithKind[]): Promise;\n /**\n *\n * @description Estimate gasLimit, storageLimit and fees for registering an expression (registerGlobalConstant operation)\n *\n * @returns An estimation of gasLimit, storageLimit and fees for the operation\n *\n * @param params registerGlobalConstant operation parameter\n */\n registerGlobalConstant(params: RegisterGlobalConstantParams): Promise;\n /**\n *\n * @description Estimate gasLimit, storageLimit and fees for an increase paid storage operation\n *\n * @returns An estimation of gasLimit, storageLimit, and fees for the operation\n *\n * @param Estimate\n */\n increasePaidStorage(params: IncreasePaidStorageParams): Promise;\n /**\n *\n * @description Estimate gasLimit, storageLimit and fees for an Update Consensus Key operation\n *\n * @returns An estimation of gasLimit, storageLimit and fees for the operation\n *\n * @param Estimate\n */\n updateConsensusKey(params: UpdateConsensusKeyParams): Promise;\n /**\n *\n * @description Estimate gasLimit, storageLimit and fees for an Smart Rollup Add Messages operation\n *\n * @returns An estimation of gasLimit, storageLimit and fees for the operation\n *\n * @param Estimate\n */\n smartRollupAddMessages(params: SmartRollupAddMessagesParams): Promise;\n /**\n *\n * @description Estimate gasLimit, storageLimit and fees for an Smart Rollup Execute Outbox Message operation\n *\n * @returns An estimation of gasLimit, storageLimit and fees for the operation\n *\n * @param Estimate\n */\n smartRollupExecuteOutboxMessage(params: SmartRollupExecuteOutboxMessageParams): Promise;\n /**\n *\n * @description Estimate gasLimit, storageLimit and fees for contract call\n *\n * @returns An estimation of gasLimit, storageLimit and fees for the contract call\n *\n * @param Estimate\n */\n contractCall(contractMethod: ContractMethod | ContractMethodObject): Promise;\n /**\n * @description Estimate gasLimit, storageLimit and fees for an Smart Rollup Originate operation\n *\n * @returns An estimation of gasLimit, storageLimit and fees for the operation\n *\n * @param SmartRollupOrigianteParams\n */\n smartRollupOriginate(params: SmartRollupOriginateParams): Promise;\n}\n"},{name:"@taquito/estimate/estimate.d.ts",dts:"export interface EstimateProperties {\n milligasLimit: number;\n storageLimit: number;\n opSize: number;\n minimalFeePerStorageByteMutez: number;\n baseFeeMutez?: number;\n}\n/**\n * Examples of use :\n *\n * Estimate a transfer operation :\n * ```\n * // Assuming that provider and signer are already configured...\n *\n * const amount = 2;\n * const address = 'tz1h3rQ8wBxFd8L9B3d7Jhaawu6Z568XU3xY';\n *\n * // Estimate gasLimit, storageLimit and fees for a transfer operation\n * const est = await Tezos.estimate.transfer({ to: address, amount: amount })\n * console.log(est.burnFeeMutez, est.gasLimit, est.minimalFeeMutez, est.storageLimit,\n * est.suggestedFeeMutez, est.totalCost, est.usingBaseFeeMutez)\n *\n * ```\n *\n * Estimate a contract origination :\n * ```\n * // generic.json is referring to a Michelson Smart Contract\n *\n * const genericMultisigJSON = require('./generic.json')\n * const est = await Tezos.estimate.originate({\n * code: genericMultisigJSON,\n * storage: {\n * stored_counter: 0,\n * threshold: 1,\n * keys: ['edpkuLxx9PQD8fZ45eUzrK3BhfDZJHhBuK4Zi49DcEGANwd2rpX82t']\n * }\n * })\n * console.log(est.burnFeeMutez, est.gasLimit, est.minimalFeeMutez, est.storageLimit,\n * est.suggestedFeeMutez, est.totalCost, est.usingBaseFeeMutez)\n *\n * ```\n */\nexport declare class Estimate {\n private readonly _milligasLimit;\n private readonly _storageLimit;\n readonly opSize: number | string;\n private readonly minimalFeePerStorageByteMutez;\n /**\n * @description Base fee in mutez (1 mutez = 1e10\u22126 tez)\n */\n private readonly baseFeeMutez;\n constructor(_milligasLimit: number | string, _storageLimit: number | string, opSize: number | string, minimalFeePerStorageByteMutez: number | string, \n /**\n * @description Base fee in mutez (1 mutez = 1e10\u22126 tez)\n */\n baseFeeMutez?: number | string);\n /**\n * @description The number of Mutez that will be burned for the storage of the [operation](https://tezos.gitlab.io/user/glossary.html#operations). (Storage + Allocation fees)\n */\n get burnFeeMutez(): number;\n /**\n * @description The limit on the amount of storage an [operation](https://tezos.gitlab.io/user/glossary.html#operations) can use with 20 buffer.\n */\n get storageLimit(): number;\n /**\n * @description The limit on the amount of [gas](https://tezos.gitlab.io/user/glossary.html#gas) a given operation can consume with 100 buffer depends on the operation.\n */\n get gasLimit(): number;\n private get operationFeeMutez();\n private roundUp;\n /**\n * @description Minimum fees for the [operation](https://tezos.gitlab.io/user/glossary.html#operations) according to [baker](https://tezos.gitlab.io/user/glossary.html#baker) defaults.\n */\n get minimalFeeMutez(): number;\n /**\n * @description The suggested fee for the operation which includes minimal fees and a small buffer.\n */\n get suggestedFeeMutez(): number;\n /**\n * @description Fees according to your specified base fee will ensure that at least minimum fees are used.\n */\n get usingBaseFeeMutez(): number;\n /**\n * @description The sum of `minimalFeeMutez` + `burnFeeMutez`.\n */\n get totalCost(): number;\n /**\n * @description Since Delphinet, consumed gas is provided in milligas for more precision.\n * This function returns an estimation of the gas that operation will consume in milligas.\n */\n get consumedMilligas(): number;\n static createEstimateInstanceFromProperties(estimateProperties: EstimateProperties[]): Estimate;\n static createArrayEstimateInstancesFromProperties(estimateProperties: EstimateProperties[]): Estimate[];\n}\n"},{name:"@taquito/estimate/index.d.ts",dts:"export * from './estimate';\nexport * from './estimate-provider-interface';\nexport * from './rpc-estimate-provider';\nexport * from './errors';\n"},{name:"@taquito/estimate/rpc-estimate-provider.d.ts",dts:"import { DelegateParams, OriginateParams, ParamsWithKind, RegisterDelegateParams, TransferParams, RevealParams, RegisterGlobalConstantParams, TransferTicketParams, IncreasePaidStorageParams, UpdateConsensusKeyParams, SmartRollupAddMessagesParams, SmartRollupOriginateParams, SmartRollupExecuteOutboxMessageParams, StakeParams, UnstakeParams, FinalizeUnstakeParams } from '../operations/types';\nimport { Estimate } from './estimate';\nimport { EstimationProvider } from '../estimate/estimate-provider-interface';\nimport { ContractMethod, ContractMethodObject, ContractProvider } from '../contract';\nimport { Provider } from '../provider';\nexport declare class RPCEstimateProvider extends Provider implements EstimationProvider {\n private readonly OP_SIZE_REVEAL;\n private readonly MILLIGAS_BUFFER;\n private readonly STORAGE_BUFFER;\n private prepare;\n private getKeys;\n private getEstimationPropertiesFromOperationContent;\n private calculateEstimates;\n /**\n *\n * @description Estimate gasLimit, storageLimit and fees for an origination operation\n *\n * @returns An estimation of gasLimit, storageLimit and fees for the operation\n *\n * @param OriginationOperation Originate operation parameter\n */\n originate(params: OriginateParams): Promise;\n /**\n *\n * @description Estimate gasLimit, storageLimit and fees for an transfer operation\n *\n * @returns An estimation of gasLimit, storageLimit and fees for the operation\n *\n * @param TransferOperation Originate operation parameter\n */\n transfer({ fee, storageLimit, gasLimit, ...rest }: TransferParams): Promise;\n /**\n *\n * @description Estimate gasLimit, storageLimit and fees for an stake pseudo-operation\n *\n * @returns An estimation of gasLimit, storageLimit and fees for the operation\n *\n * @param Stake pseudo-operation parameter\n */\n stake({ fee, storageLimit, gasLimit, ...rest }: StakeParams): Promise;\n /**\n *\n * @description Estimate gasLimit, storageLimit and fees for an Unstake pseudo-operation\n *\n * @returns An estimation of gasLimit, storageLimit and fees for the operation\n *\n * @param Unstake pseudo-operation parameter\n */\n unstake({ fee, storageLimit, gasLimit, ...rest }: UnstakeParams): Promise;\n /**\n *\n * @description Estimate gasLimit, storageLimit and fees for an finalize_unstake pseudo-operation\n *\n * @returns An estimation of gasLimit, storageLimit and fees for the operation\n *\n * @param finalize_unstake pseudo-operation parameter\n */\n finalizeUnstake({ fee, storageLimit, gasLimit, ...rest }: FinalizeUnstakeParams): Promise;\n /**\n *\n * @description Estimate gasLimit, storageLimit and fees for a transferTicket operation\n *\n * @returns An estimation of gasLimit, storageLimit and fees for the operation\n *\n * @param TransferTicketParams operation parameter\n */\n transferTicket({ fee, storageLimit, gasLimit, ...rest }: TransferTicketParams): Promise;\n /**\n *\n * @description Estimate gasLimit, storageLimit and fees for a delegate operation\n *\n * @returns An estimation of gasLimit, storageLimit and fees for the operation\n *\n * @param Estimate\n */\n setDelegate({ fee, gasLimit, storageLimit, ...rest }: DelegateParams): Promise;\n /**\n *\n * @description Estimate gasLimit, storageLimit and fees for a each operation in the batch\n *\n * @returns An array of Estimate objects. If a reveal operation is needed, the first element of the array is the Estimate for the reveal operation.\n */\n batch(params: ParamsWithKind[]): Promise;\n /**\n *\n * @description Estimate gasLimit, storageLimit and fees for a delegate operation\n *\n * @returns An estimation of gasLimit, storageLimit and fees for the operation\n *\n * @param Estimate\n */\n registerDelegate({ fee, storageLimit, gasLimit, ...rest }: RegisterDelegateParams, source?: string): Promise;\n /**\n *\n * @description Estimate gasLimit, storageLimit and fees to reveal the current account\n *\n * @returns An estimation of gasLimit, storageLimit and fees for the operation or undefined if the account is already revealed\n *\n * @param Estimate\n */\n reveal(params?: RevealParams): Promise;\n /**\n *\n * @description Estimate gasLimit, storageLimit and fees for an registerGlobalConstant operation\n *\n * @returns An estimation of gasLimit, storageLimit and fees for the operation\n *\n * @param params registerGlobalConstant operation parameter\n */\n registerGlobalConstant({ fee, storageLimit, gasLimit, ...rest }: RegisterGlobalConstantParams): Promise;\n /**\n *\n * @description Estimate gasLimit, storageLimit, and fees for an increasePaidStorage operation\n *\n * @returns An estimation of gasLimit, storageLimit, and fees for the operation\n *\n * @param params increasePaidStorage operation parameters\n */\n increasePaidStorage({ fee, storageLimit, gasLimit, ...rest }: IncreasePaidStorageParams): Promise;\n /**\n *\n * @description Estimate gasLimit, storageLimit and fees for an Update Consensus Key operation\n *\n * @returns An estimation of gasLimit, storageLimit and fees for the operation\n *\n * @param Estimate\n */\n updateConsensusKey(params: UpdateConsensusKeyParams): Promise;\n /**\n *\n * @description Estimate gasLimit, storageLimit and fees for a smart_rollup_add_messages operation\n *\n * @returns An estimation of gasLimit, storageLimit and fees for the operation\n *\n * @param Estimate\n */\n smartRollupAddMessages(params: SmartRollupAddMessagesParams): Promise;\n /**\n *\n * @description Estimate gasLimit, storageLimit and fees for an Smart Rollup Originate operation\n *\n * @returns An estimation of gasLimit, storageLimit and fees for the operation\n *\n * @param SmartRollupOriginateParams\n */\n smartRollupOriginate(params: SmartRollupOriginateParams): Promise;\n /**\n *\n * @description Estimate gasLimit, storageLimit and fees for a smart_rollup_execute_outbox_message operation\n *\n * @returns An estimation of gasLimit, storageLimit and fees for the operation\n *\n * @param Estimate\n */\n smartRollupExecuteOutboxMessage(params: SmartRollupExecuteOutboxMessageParams): Promise;\n /**\n *\n * @description Estimate gasLimit, storageLimit and fees for contract call\n *\n * @returns An estimation of gasLimit, storageLimit and fees for the contract call\n *\n * @param Estimate\n */\n contractCall(contractMethod: ContractMethod | ContractMethodObject): Promise;\n}\n"},{name:"@taquito/extension/extension.d.ts",dts:'import { Context } from "../context";\nexport interface Extension {\n configureContext(context: Context): void;\n}\n'},{name:"@taquito/forger/composite-forger.d.ts",dts:"import { Forger, ForgeParams, ForgeResponse } from '@taquito/local-forging';\nexport declare class CompositeForger implements Forger {\n private forgers;\n constructor(forgers: Forger[]);\n forge({ branch, contents }: ForgeParams): Promise;\n}\n"},{name:"@taquito/forger/errors.d.ts",dts:"import { TaquitoError, TezosToolkitConfigError } from '@taquito/core';\n/**\n * @category Error\n * @description Error that indicates CompositeForger.forge() results doesn't match each other\n */\nexport declare class ForgingMismatchError extends TaquitoError {\n readonly results: string[];\n constructor(results: string[]);\n}\n/**\n * @category Error\n * @description Error that indicates no forger has been configured for CompositeForger\n */\nexport declare class UnspecifiedForgerError extends TezosToolkitConfigError {\n constructor();\n}\n"},{name:"@taquito/forger/rpc-forger.d.ts",dts:"import { Forger, ForgeParams, ForgeResponse } from '@taquito/local-forging';\nimport { Context } from '../context';\nexport declare class RpcForger implements Forger {\n private context;\n constructor(context: Context);\n forge({ branch, contents }: ForgeParams): Promise;\n}\n"},{name:"@taquito/forger/taquito-local-forger.d.ts",dts:"import { Forger, ForgeParams, ForgeResponse } from '@taquito/local-forging';\nimport { Context } from '../context';\nexport declare class TaquitoLocalForger implements Forger {\n private context;\n constructor(context: Context);\n private getNextProto;\n forge({ branch, contents }: ForgeParams): Promise;\n}\n"},{name:"@taquito/global-constants/default-global-constants-provider.d.ts",dts:"import { GlobalConstantHashAndValue } from '@taquito/michel-codec';\nimport { GlobalConstantHash, GlobalConstantsProvider } from './interface-global-constants-provider';\nexport declare class DefaultGlobalConstantsProvider implements GlobalConstantsProvider {\n private _globalConstantsLibrary;\n /**\n *\n * @description Allows to load global constant hashes and their corresponding Michelson JSON values\n */\n loadGlobalConstant(globalConstant: GlobalConstantHashAndValue): void;\n /**\n *\n * @description Retrieve the Michelson value of a global constant based on its hash\n *\n * @param hash a string representing the global constant hash\n * @returns Expr, the JSON Michelson value\n */\n getGlobalConstantByHash(hash: GlobalConstantHash): Promise;\n}\n"},{name:"@taquito/global-constants/errors.d.ts",dts:"import { TaquitoError, TezosToolkitConfigError } from '@taquito/core';\n/**\n * @category Error\n * @description Error that indicates that a global constant does not exist\n */\nexport declare class GlobalConstantNotFound extends TaquitoError {\n readonly hash: string;\n constructor(hash: string);\n}\n/**\n * @category Error\n * @description Error that indicates the global constant provider not being configured under TezosToolkit\n */\nexport declare class UnconfiguredGlobalConstantsProviderError extends TezosToolkitConfigError {\n constructor();\n}\n"},{name:"@taquito/global-constants/interface-global-constants-provider.d.ts",dts:'import { Expr } from "@taquito/michel-codec";\nexport type GlobalConstantHash = string;\nexport interface GlobalConstantsProvider {\n /**\n *\n * @description Retrieve the Michelson value of a global constant based on its hash\n *\n * @param hash a string representing the global constant hash\n */\n getGlobalConstantByHash(hash: GlobalConstantHash): Promise;\n}\n'},{name:"@taquito/global-constants/noop-global-constants-provider.d.ts",dts:"import { Expr } from '@taquito/michel-codec';\nimport { GlobalConstantHash, GlobalConstantsProvider } from './interface-global-constants-provider';\nexport declare class NoopGlobalConstantsProvider implements GlobalConstantsProvider {\n getGlobalConstantByHash(_hash: GlobalConstantHash): Promise;\n}\n"},{name:"@taquito/injector/helper.d.ts",dts:"import { HttpResponseError } from '@taquito/http-utils';\nexport declare function formatErrorMessage(error: HttpResponseError, stringToReplace: string): HttpResponseError;\n"},{name:"@taquito/injector/interface.d.ts",dts:"export type InjectorParams = string;\nexport type TxHash = string;\nexport interface Injector {\n inject(signedOperationBytes: InjectorParams): Promise;\n}\n"},{name:"@taquito/injector/rpc-injector.d.ts",dts:"import { Injector } from './interface';\nimport { Context } from '../context';\nexport declare class RpcInjector implements Injector {\n private context;\n constructor(context: Context);\n inject(signedOperationBytes: string): Promise;\n}\n"},{name:"@taquito/operations/ballot-operation.d.ts",dts:"import { OperationContentsAndResult, OperationContentsAndResultBallot, OperationContentsBallot } from '@taquito/rpc';\nimport { Context } from '../context';\nimport { Operation } from './operations';\nimport { ForgedBytes } from './types';\n/**\n *\n * @description BallotOperation provides utility functions to fetch a new operation of kind ballot\n *\n */\nexport declare class BallotOperation extends Operation {\n private readonly params;\n readonly source: string;\n constructor(hash: string, params: OperationContentsBallot, source: string, raw: ForgedBytes, results: OperationContentsAndResult[], context: Context);\n get operationResults(): OperationContentsAndResultBallot | undefined;\n get period(): number | undefined;\n get proposal(): string;\n get ballot(): import(\"@taquito/rpc\").BallotVote;\n}\n"},{name:"@taquito/operations/batch-operation.d.ts",dts:"import { OperationContents, OperationContentsAndResult } from '@taquito/rpc';\nimport { Context } from '../context';\nimport { Operation } from './operations';\nimport { FeeConsumingOperation, ForgedBytes, GasConsumingOperation, StorageConsumingOperation } from './types';\nexport declare class BatchOperation extends Operation implements GasConsumingOperation, StorageConsumingOperation, FeeConsumingOperation {\n private readonly params;\n readonly source: string;\n constructor(hash: string, params: OperationContents[], source: string, raw: ForgedBytes, results: OperationContentsAndResult[], context: Context);\n private sumProp;\n getOriginatedContractAddresses(): string[];\n get status(): import(\"@taquito/rpc\").OperationResultStatusEnum | \"unknown\";\n get fee(): any;\n get gasLimit(): any;\n get storageLimit(): any;\n get consumedGas(): string;\n get consumedMilliGas(): string;\n get storageDiff(): string;\n get errors(): import(\"@taquito/rpc\").TezosGenericOperationError[];\n}\n"},{name:"@taquito/operations/delegate-operation.d.ts",dts:"import { OperationContentsAndResult, OperationContentsDelegation } from '@taquito/rpc';\nimport { Context } from '../context';\nimport { Operation } from './operations';\nimport { FeeConsumingOperation, ForgedBytes, GasConsumingOperation, StorageConsumingOperation } from './types';\n/**\n * @description Delegation operation provide utility function to fetch newly issued delegation\n *\n * @warn Currently support only one delegation per operation\n */\nexport declare class DelegateOperation extends Operation implements GasConsumingOperation, StorageConsumingOperation, FeeConsumingOperation {\n private readonly params;\n readonly source: string;\n constructor(hash: string, params: OperationContentsDelegation, source: string, raw: ForgedBytes, results: OperationContentsAndResult[], context: Context);\n get operationResults(): import(\"@taquito/rpc\").OperationResultDelegation | undefined;\n get status(): import(\"@taquito/rpc\").OperationResultStatusEnum | \"unknown\";\n get delegate(): string | undefined;\n get isRegisterOperation(): boolean;\n get fee(): number;\n get gasLimit(): number;\n get storageLimit(): number;\n get consumedGas(): string | undefined;\n get consumedMilliGas(): string | undefined;\n get errors(): import(\"@taquito/rpc\").TezosGenericOperationError[] | undefined;\n}\n"},{name:"@taquito/operations/drain-delegate-operation.d.ts",dts:"import { OperationContentsAndResult, OperationContentsDrainDelegate } from '@taquito/rpc';\nimport { Context } from '../context';\nimport { Operation } from './operations';\nimport { ForgedBytes } from './types';\n/**\n *\n * @description DrainDelegateOperation provides utility functions to fetch a new operation of kind drain_delegate\n *\n */\nexport declare class DrainDelegateOperation extends Operation {\n private readonly params;\n constructor(hash: string, params: OperationContentsDrainDelegate, raw: ForgedBytes, results: OperationContentsAndResult[], context: Context);\n get operationResults(): import(\"@taquito/rpc\").OperationMetadataBalanceUpdates[] | undefined;\n get consensusKey(): string;\n get delegate(): string;\n get destination(): string;\n}\n"},{name:"@taquito/operations/errors.d.ts",dts:"import { ParameterValidationError, RpcError, TaquitoError } from '@taquito/core';\nimport { MichelsonV1ExpressionBase, OperationContentsAndResult, OperationResultDelegation, OperationResultOrigination, OperationResultRegisterGlobalConstant, OperationResultReveal, OperationResultSmartRollupOriginate, OperationResultTransaction, OperationResultTransferTicket, PreapplyResponse, TezosGenericOperationError } from '@taquito/rpc';\nexport interface TezosOperationErrorWithMessage extends TezosGenericOperationError {\n with: MichelsonV1ExpressionBase;\n}\n/**\n * @category Error\n * @description Generic tezos error that will be thrown when a mistake occurs when doing an operation; more details here https://tezos.gitlab.io/api/errors.html\n */\nexport declare class TezosOperationError extends RpcError {\n readonly errors: TezosGenericOperationError[];\n readonly errorDetails: string;\n readonly operationsWithResults: OperationContentsAndResult[];\n readonly lastError: TezosGenericOperationError;\n constructor(errors: TezosGenericOperationError[], errorDetails: string, operationsWithResults: OperationContentsAndResult[]);\n get id(): string;\n get kind(): string;\n}\n/**\n * @category Error\n * @description Tezos error that will be thrown when a mistake happens during the preapply stage\n */\nexport declare class TezosPreapplyFailureError extends Error {\n readonly result: any;\n constructor(result: any);\n}\nexport type MergedOperationResult = OperationResultTransaction & OperationResultOrigination & OperationResultDelegation & OperationResultRegisterGlobalConstant & OperationResultTransferTicket & Partial & OperationResultReveal & {\n fee?: string;\n};\nexport declare const flattenOperationResult: (response: PreapplyResponse | PreapplyResponse[]) => MergedOperationResult[];\n/***\n * @description Flatten all error from preapply response (including internal error)\n */\nexport declare const flattenErrors: (response: PreapplyResponse | PreapplyResponse[], status?: string) => TezosGenericOperationError[];\n/**\n * @category Error\n * @description Error that indicates a general failure happening during an origination operation.\n */\nexport declare class OriginationOperationError extends TaquitoError {\n readonly message: string;\n constructor(message: string);\n}\n/**\n * @category Error\n * @description Error that indicates an invalid estimate value being passed\n */\nexport declare class InvalidEstimateValueError extends ParameterValidationError {\n readonly message: string;\n constructor(message: string);\n}\n"},{name:"@taquito/operations/failing-noop-operation.d.ts",dts:"import { OpKind } from '@taquito/rpc';\n/**\n * @description FailingNoopOperation interface that contains information about a signed failing_noop operation\n */\nexport interface FailingNoopOperation {\n signedContent: {\n branch: string;\n contents: [\n {\n kind: OpKind.FAILING_NOOP;\n arbitrary: string;\n }\n ];\n };\n bytes: string;\n signature: string;\n}\n"},{name:"@taquito/operations/increase-paid-storage-operation.d.ts",dts:"import { OperationContentsAndResult, OperationContentsIncreasePaidStorage } from '@taquito/rpc';\nimport { Context } from '../context';\nimport { Operation } from './operations';\nimport { FeeConsumingOperation, ForgedBytes, GasConsumingOperation, StorageConsumingOperation } from './types';\n/**\n *\n * @description IncreasePaidStorageOperation provides utility functions to fetch a new operation of kind increase_paid_storage\n *\n */\nexport declare class IncreasePaidStorageOperation extends Operation implements GasConsumingOperation, StorageConsumingOperation, FeeConsumingOperation {\n private readonly params;\n readonly source: string;\n constructor(hash: string, params: OperationContentsIncreasePaidStorage, source: string, raw: ForgedBytes, results: OperationContentsAndResult[], context: Context);\n get operationResults(): import(\"@taquito/rpc\").OperationResultIncreasePaidStorage | undefined;\n get status(): import(\"@taquito/rpc\").OperationResultStatusEnum | \"unknown\";\n get fee(): number;\n get gasLimit(): number;\n get storageLimit(): number;\n get errors(): import(\"@taquito/rpc\").TezosGenericOperationError[] | undefined;\n get consumedMilliGas(): string | undefined;\n get amount(): string;\n get destination(): string;\n}\n"},{name:"@taquito/operations/index.d.ts",dts:"export { OpKind, withKind, ParamsWithKind, RPCOperation, RPCOpWithFee, RPCOpWithSource, SourceKinds, GasConsumingOperation, StorageConsumingOperation, FeeConsumingOperation, ForgedBytes, PrepareOperationParams, OriginateParamsBase, OriginateParams, RPCOriginationOperation, DelegateParams, RegisterDelegateParams, RPCDelegateOperation, TransferParams, RPCTransferOperation, RegisterGlobalConstantParams, RPCRegisterGlobalConstantOperation, IncreasePaidStorageParams, RPCIncreasePaidStorageOperation, TransferTicketParams, RPCTransferTicketOperation, UpdateConsensusKeyParams, RPCUpdateConsensusKeyOperation, SmartRollupAddMessagesParams, RPCSmartRollupAddMessagesOperation, SmartRollupOriginateParams, RPCSmartRollupOriginateOperation, ActivationParams, RPCActivateOperation, BallotParams, RPCBallotOperation, DrainDelegateParams, RPCDrainDelegateOperation, FailingNoopParams, RPCFailingNoopOperation, ProposalsParams, RPCProposalsOperation, RPCRevealOperation, } from './types';\nexport { TezosOperationError, TezosOperationErrorWithMessage, TezosPreapplyFailureError, InvalidEstimateValueError, } from './errors';\nexport { BatchOperation } from './batch-operation';\nexport { OriginationOperation } from './origination-operation';\nexport { DelegateOperation } from './delegate-operation';\nexport { TransactionOperation } from './transaction-operation';\nexport { RegisterGlobalConstantOperation } from './register-global-constant-operation';\nexport { IncreasePaidStorageOperation } from './increase-paid-storage-operation';\nexport { TransferTicketOperation } from './transfer-ticket-operation';\nexport { UpdateConsensusKeyOperation } from './update-consensus-key-operation';\nexport { SmartRollupAddMessagesOperation } from './smart-rollup-add-messages-operation';\nexport { SmartRollupOriginateOperation } from './smart-rollup-originate-operation';\nexport { BallotOperation } from './ballot-operation';\nexport { DrainDelegateOperation } from './drain-delegate-operation';\nexport { ProposalsOperation } from './proposals-operation';\nexport { RevealOperation } from './reveal-operation';\nexport { Operation } from './operations';\n"},{name:"@taquito/operations/operations.d.ts",dts:'import { OperationContentsAndResult, OperationContentsAndResultReveal } from \'@taquito/rpc\';\nimport { Context } from \'../context\';\nimport { ForgedBytes } from \'./types\';\n/**\n * @description Utility class to interact with Tezos operations\n */\nexport declare class Operation {\n readonly hash: string;\n readonly raw: ForgedBytes;\n readonly results: OperationContentsAndResult[];\n protected readonly context: Context;\n private _pollingConfig$;\n private lastHead;\n private currentHead$;\n private confirmed$;\n protected _foundAt: number;\n get includedInBlock(): number;\n /**\n *\n * @param hash Operation hash\n * @param raw Raw operation that was injected\n * @param context Taquito context allowing access to rpc and signer\n * @throws {@link InvalidOperationHashError}\n */\n constructor(hash: string, raw: ForgedBytes, results: OperationContentsAndResult[], context: Context);\n get revealOperation(): false | OperationContentsAndResultReveal | undefined;\n get revealStatus(): import("@taquito/rpc").OperationResultStatusEnum | "unknown";\n get status(): import("@taquito/rpc").OperationResultStatusEnum | "unknown";\n /**\n *\n * @param confirmations [0] Number of confirmation to wait for\n * @param timeout [180] Timeout\n */\n confirmation(confirmations?: number, timeout?: number): Promise;\n}\n'},{name:"@taquito/operations/origination-operation.d.ts",dts:"import { OperationContentsAndResult, OperationContentsOrigination } from '@taquito/rpc';\nimport { Context } from '../context';\nimport { DefaultContractType } from '../contract/contract';\nimport { RpcContractProvider } from '../contract/rpc-contract-provider';\nimport { Operation } from './operations';\nimport { FeeConsumingOperation, ForgedBytes, GasConsumingOperation, StorageConsumingOperation } from './types';\n/**\n * @description Origination operation provide utility function to fetch newly originated contract\n *\n * @warn Currently support only one origination per operation\n */\nexport declare class OriginationOperation extends Operation implements GasConsumingOperation, StorageConsumingOperation, FeeConsumingOperation {\n private readonly params;\n private contractProvider;\n /**\n * @description Contract address of the newly originated contract\n */\n readonly contractAddress?: string;\n constructor(hash: string, params: OperationContentsOrigination, raw: ForgedBytes, results: OperationContentsAndResult[], context: Context, contractProvider: RpcContractProvider);\n get status(): import(\"@taquito/rpc\").OperationResultStatusEnum | \"unknown\";\n get operationResults(): import(\"@taquito/rpc\").OperationResultOrigination | undefined;\n get fee(): number;\n get gasLimit(): number;\n get storageLimit(): number;\n get consumedGas(): string | undefined;\n get consumedMilliGas(): string | undefined;\n get storageDiff(): string | undefined;\n get storageSize(): string | undefined;\n get errors(): import(\"@taquito/rpc\").TezosGenericOperationError[] | undefined;\n /**\n * @description Provide the contract abstract of the newly originated contract\n * @throws {@link OriginationOperationError}\n */\n contract(confirmations?: number, timeout?: number): Promise;\n}\n"},{name:"@taquito/operations/proposals-operation.d.ts",dts:"import { OperationContentsAndResult, OperationContentsAndResultProposals, OperationContentsProposals } from '@taquito/rpc';\nimport { Context } from '../context';\nimport { Operation } from './operations';\nimport { ForgedBytes } from './types';\n/**\n *\n * @description ProposalsOperation provides utility functions to fetch a new operation of kind proposals\n *\n */\nexport declare class ProposalsOperation extends Operation {\n private readonly params;\n readonly source: string;\n constructor(hash: string, params: OperationContentsProposals, source: string, raw: ForgedBytes, results: OperationContentsAndResult[], context: Context);\n get operationResults(): OperationContentsAndResultProposals | undefined;\n get proposals(): string[];\n get period(): number | undefined;\n}\n"},{name:"@taquito/operations/register-global-constant-operation.d.ts",dts:'import { OperationContentsAndResult, OperationContentsRegisterGlobalConstant } from \'@taquito/rpc\';\nimport { Context } from \'../context\';\nimport { Operation } from \'./operations\';\nimport { FeeConsumingOperation, ForgedBytes, GasConsumingOperation, StorageConsumingOperation } from \'./types\';\n/**\n * @description RegisterGlobalConstantOperation provides utility functions to fetch a newly issued operation of kind register_global_constant\n */\nexport declare class RegisterGlobalConstantOperation extends Operation implements GasConsumingOperation, StorageConsumingOperation, FeeConsumingOperation {\n private readonly params;\n readonly source: string;\n /**\n * @description Hash (index) of the newly registered constant\n */\n readonly globalConstantHash?: string;\n constructor(hash: string, params: OperationContentsRegisterGlobalConstant, source: string, raw: ForgedBytes, results: OperationContentsAndResult[], context: Context);\n get operationResults(): import("@taquito/rpc").OperationResultRegisterGlobalConstant | undefined;\n get status(): import("@taquito/rpc").OperationResultStatusEnum | "unknown";\n get registeredExpression(): import("@taquito/rpc").MichelsonV1Expression;\n get fee(): number;\n get gasLimit(): number;\n get storageLimit(): number;\n get errors(): import("@taquito/rpc").TezosGenericOperationError[] | undefined;\n get consumedGas(): string | undefined;\n get consumedMilliGas(): string | undefined;\n}\n'},{name:"@taquito/operations/reveal-operation.d.ts",dts:"import { OperationContentsAndResult, OperationContentsAndResultReveal, OperationContentsReveal } from '@taquito/rpc';\nimport { Context } from '../context';\nimport { Operation } from './operations';\nimport { FeeConsumingOperation, ForgedBytes, GasConsumingOperation, StorageConsumingOperation } from './types';\n/**\n * @description Reveal operation provides utility functions to fetch a newly issued revelation\n */\nexport declare class RevealOperation extends Operation implements GasConsumingOperation, StorageConsumingOperation, FeeConsumingOperation {\n private readonly params;\n readonly source: string;\n constructor(hash: string, params: OperationContentsReveal, source: string, raw: ForgedBytes, results: OperationContentsAndResult[], context: Context);\n get operationResults(): OperationContentsAndResultReveal[];\n get status(): import(\"@taquito/rpc\").OperationResultStatusEnum | \"unknown\";\n get fee(): number;\n get gasLimit(): number;\n get storageLimit(): number;\n get publicKey(): string;\n private sumProp;\n get consumedGas(): string;\n get consumedMilliGas(): string;\n get storageDiff(): string;\n get storageSize(): string;\n get errors(): import(\"@taquito/rpc\").TezosGenericOperationError[];\n}\n"},{name:"@taquito/operations/smart-rollup-add-messages-operation.d.ts",dts:"import { OperationContentsAndResult, OperationContentsSmartRollupAddMessages } from '@taquito/rpc';\nimport { Context } from '../context';\nimport { Operation } from './operations';\nimport { FeeConsumingOperation, ForgedBytes, GasConsumingOperation, StorageConsumingOperation } from './types';\n/**\n * @description SmartRollupAddMessagesOperation provides utility to fetch properties of SmartRollupAddMessages\n */\nexport declare class SmartRollupAddMessagesOperation extends Operation implements GasConsumingOperation, StorageConsumingOperation, FeeConsumingOperation {\n private readonly params;\n readonly source: string;\n constructor(hash: string, params: OperationContentsSmartRollupAddMessages, source: string, raw: ForgedBytes, results: OperationContentsAndResult[], context: Context);\n get operationResults(): import(\"@taquito/rpc\").OperationResultSmartRollupAddMessages | undefined;\n get status(): import(\"@taquito/rpc\").OperationResultStatusEnum | \"unknown\";\n get message(): string[];\n get fee(): number;\n get gasLimit(): number;\n get storageLimit(): number;\n get consumedMilliGas(): string | undefined;\n get errors(): import(\"@taquito/rpc\").TezosGenericOperationError[] | undefined;\n}\n"},{name:"@taquito/operations/smart-rollup-execute-outbox-message-operation.d.ts",dts:"import { OperationContentsAndResult, OperationContentsSmartRollupExecuteOutboxMessage } from '@taquito/rpc';\nimport { Context } from '../context';\nimport { Operation } from './operations';\nimport { FeeConsumingOperation, ForgedBytes, GasConsumingOperation, StorageConsumingOperation } from './types';\n/**\n *\n * @description SmartRollupExecuteOutboxMessage Operation provides utility to fetch properties for Operation of kind SmartRollupExecuteOutboxMessage\n *\n */\nexport declare class SmartRollupExecuteOutboxMessageOperation extends Operation implements GasConsumingOperation, StorageConsumingOperation, FeeConsumingOperation {\n private readonly params;\n readonly source: string;\n constructor(hash: string, params: OperationContentsSmartRollupExecuteOutboxMessage, source: string, raw: ForgedBytes, results: OperationContentsAndResult[], context: Context);\n get operationResults(): import(\"@taquito/rpc\").OperationResultSmartRollupExecuteOutboxMessage | undefined;\n get status(): import(\"@taquito/rpc\").OperationResultStatusEnum | \"unknown\";\n get rollup(): string;\n get cementedCommitment(): string;\n get outputProof(): string;\n get fee(): number;\n get gasLimit(): number;\n get storageLimit(): number;\n get consumedMilliGas(): string | undefined;\n get errors(): import(\"@taquito/rpc\").TezosGenericOperationError[] | undefined;\n}\n"},{name:"@taquito/operations/smart-rollup-originate-operation.d.ts",dts:'import { OperationContentsAndResult, OperationContentsSmartRollupOriginate } from \'@taquito/rpc\';\nimport { Context } from \'../context\';\nimport { Operation } from \'./operations\';\nimport { FeeConsumingOperation, ForgedBytes, GasConsumingOperation, StorageConsumingOperation } from \'./types\';\n/**\n *\n * @description SmartRollupOriginate Operation provides utility to fetch properties for Operation of kind SmartRollupOriginate\n *\n */\nexport declare class SmartRollupOriginateOperation extends Operation implements GasConsumingOperation, StorageConsumingOperation, FeeConsumingOperation {\n private readonly params;\n readonly source: string;\n constructor(hash: string, params: OperationContentsSmartRollupOriginate, source: string, raw: ForgedBytes, results: OperationContentsAndResult[], context: Context);\n get operationResults(): import("@taquito/rpc").OperationResultSmartRollupOriginate | undefined;\n get status(): import("@taquito/rpc").OperationResultStatusEnum | "unknown";\n get fee(): number;\n get gasLimit(): number;\n get storageLimit(): number;\n get consumedMilliGas(): string | undefined;\n get pvmKind(): import("@taquito/rpc").PvmKind;\n get kernel(): string;\n get errors(): import("@taquito/rpc").TezosGenericOperationError[] | undefined;\n}\n'},{name:"@taquito/operations/transaction-operation.d.ts",dts:"import { OperationContentsAndResult, OperationContentsAndResultTransaction, OperationContentsTransaction } from '@taquito/rpc';\nimport BigNumber from 'bignumber.js';\nimport { Context } from '../context';\nimport { Operation } from './operations';\nimport { FeeConsumingOperation, ForgedBytes, GasConsumingOperation, StorageConsumingOperation } from './types';\n/**\n * @description Transaction operation provides utility functions to fetch a newly issued transaction\n *\n * @warn Currently supports one transaction per operation\n */\nexport declare class TransactionOperation extends Operation implements GasConsumingOperation, StorageConsumingOperation, FeeConsumingOperation {\n private readonly params;\n readonly source: string;\n constructor(hash: string, params: OperationContentsTransaction, source: string, raw: ForgedBytes, results: OperationContentsAndResult[], context: Context);\n get operationResults(): OperationContentsAndResultTransaction[];\n get status(): import(\"@taquito/rpc\").OperationResultStatusEnum | \"unknown\";\n get amount(): BigNumber;\n get destination(): string;\n get fee(): number;\n get gasLimit(): number;\n get storageLimit(): number;\n private sumProp;\n get consumedGas(): string;\n get consumedMilliGas(): string;\n get storageDiff(): string;\n get storageSize(): string;\n get errors(): import(\"@taquito/rpc\").TezosGenericOperationError[];\n}\n"},{name:"@taquito/operations/transfer-ticket-operation.d.ts",dts:"import { OperationContentsAndResult, OperationContentsTransferTicket } from '@taquito/rpc';\nimport { Context } from '../context';\nimport { Operation } from '../operations';\nimport { GasConsumingOperation, StorageConsumingOperation, FeeConsumingOperation, ForgedBytes } from './types';\n/**\n *\n * @description Transfer tickets from a Tezos address (tz1, tz2 or tz3) to a smart contract address (KT1) (everything on layer 1 at this step)\n *\n * @warn Currently only supports one L2 ticket holder transfer at once. ie. one collection of tickets owned by tz1, tz2 or tz3 to a smart contract.\n */\nexport declare class TransferTicketOperation extends Operation implements GasConsumingOperation, StorageConsumingOperation, FeeConsumingOperation {\n private readonly params;\n private readonly source;\n constructor(hash: string, params: OperationContentsTransferTicket, source: string, raw: ForgedBytes, results: OperationContentsAndResult[], context: Context);\n get operationResults(): import(\"@taquito/rpc\").OperationResultTransferTicket | undefined;\n get status(): import(\"@taquito/rpc\").OperationResultStatusEnum | \"unknown\";\n get fee(): number;\n get gasLimit(): number;\n get storageLimit(): number;\n get consumedGas(): string | undefined;\n get consumedMilliGas(): string | undefined;\n}\n"},{name:"@taquito/operations/types.d.ts",dts:"import { OperationObject, InternalOperationResultKindEnum, OpKind, TransactionOperationParameter, MichelsonV1Expression, BallotVote, PvmKind } from '@taquito/rpc';\nimport { BlockIdentifier } from '../read-provider/interface';\nexport { OpKind } from '@taquito/rpc';\nexport type withKind = T & {\n kind: K;\n};\nexport type ParamsWithKind = withKind | withKind | withKind | withKind | withKind | withKind | withKind | withKind | withKind | withKind | withKind | withKind;\nexport type ParamsWithKindExtended = ParamsWithKind | withKind;\nexport declare const attachKind: (op: T, kind: K) => withKind;\nexport declare const findWithKind: (arr: T[], kind: K) => (T & {\n kind: K;\n}) | undefined;\nexport declare const isKind: (op: T, kind: K) => op is withKind;\nexport type RPCOpWithFee = RPCTransferOperation | RPCOriginationOperation | RPCDelegateOperation | RPCRevealOperation | RPCRegisterGlobalConstantOperation | RPCIncreasePaidStorageOperation | RPCTransferTicketOperation | RPCUpdateConsensusKeyOperation | RPCSmartRollupAddMessagesOperation | RPCSmartRollupOriginateOperation | RPCSmartRollupOutboxMessageOperation;\nexport type RPCOpWithSource = RPCTransferOperation | RPCOriginationOperation | RPCDelegateOperation | RPCRevealOperation | RPCRegisterGlobalConstantOperation | RPCIncreasePaidStorageOperation | RPCTransferTicketOperation | RPCUpdateConsensusKeyOperation | RPCSmartRollupAddMessagesOperation | RPCSmartRollupOriginateOperation | RPCSmartRollupOutboxMessageOperation;\nexport declare const isOpWithGasBuffer: (op: T) => boolean;\nexport declare const isOpWithFee: (op: T) => op is withKind;\nexport declare const isOpRequireReveal: (op: T) => op is withKind;\nexport type SourceKinds = InternalOperationResultKindEnum;\nexport declare const isSourceOp: (op: T) => op is withKind;\nexport declare const hasMetadata: (op: T) => op is T & {\n metadata: K;\n};\nexport declare const hasMetadataWithResult: (op: T) => op is T & {\n metadata: {\n operation_result: K;\n };\n};\nexport declare const hasMetadataWithInternalOperationResult: (op: T) => op is T & {\n metadata: {\n internal_operation_results?: K | undefined;\n };\n};\nexport interface GasConsumingOperation {\n consumedGas?: string;\n gasLimit: number;\n}\nexport interface StorageConsumingOperation {\n storageDiff?: string;\n storageSize?: string;\n storageLimit: number;\n}\nexport interface FeeConsumingOperation {\n fee: number;\n}\nexport type OriginateParamsBase = {\n balance?: string | number;\n code: string | object[];\n delegate?: string;\n fee?: number;\n gasLimit?: number;\n storageLimit?: number;\n mutez?: boolean;\n};\n/**\n * @description Parameters for originate method\n */\nexport type OriginateParams = OriginateParamsBase & ({\n init?: never;\n /** JS representation of a storage object */\n storage: TStorage;\n} | {\n /** Initial storage object value. Either Micheline or JSON encoded */\n init: string | object;\n storage?: never;\n});\nexport interface ActivationParams {\n pkh: string;\n secret: string;\n}\n/**\n * @description RPC origination operation\n */\nexport interface RPCOriginationOperation {\n kind: OpKind.ORIGINATION;\n fee: number;\n gas_limit: number;\n storage_limit: number;\n balance: string;\n delegate?: string;\n source?: string;\n script: {\n code: any;\n storage: any;\n };\n}\n/**\n * @description RPC reveal operation\n */\nexport interface RPCRevealOperation {\n kind: OpKind.REVEAL;\n fee: number;\n public_key: string;\n source?: string;\n gas_limit: number;\n storage_limit: number;\n}\nexport interface RevealParams {\n fee?: number;\n gasLimit?: number;\n storageLimit?: number;\n}\n/**\n * @description Result of a forge operation contains the operation plus its encoded version\n */\nexport interface ForgedBytes {\n opbytes: string;\n opOb: OperationObject;\n counter: number;\n}\n/**\n * @description Parameters for setDelegate method\n */\nexport interface DelegateParams {\n source: string;\n delegate?: string;\n fee?: number;\n gasLimit?: number;\n storageLimit?: number;\n}\n/**\n * @description Parameters for registerDelegate method\n */\nexport interface RegisterDelegateParams {\n fee?: number;\n gasLimit?: number;\n storageLimit?: number;\n}\n/**\n * @description RPC delegation operation\n */\nexport interface RPCDelegateOperation {\n kind: OpKind.DELEGATION;\n source?: string;\n fee: number;\n gas_limit: number;\n storage_limit: number;\n delegate?: string;\n}\n/**\n * @description Parameters for transfer method\n */\nexport interface TransferParams {\n to: string;\n source?: string;\n amount: number;\n fee?: number;\n parameter?: TransactionOperationParameter;\n gasLimit?: number;\n storageLimit?: number;\n mutez?: boolean;\n}\n/**\n * @description RPC Stake pseudo operation params\n */\nexport interface StakeParams {\n to?: string;\n source?: string;\n amount: number;\n fee?: number;\n parameter?: TransactionOperationParameter;\n gasLimit?: number;\n storageLimit?: number;\n mutez?: boolean;\n}\n/**\n * @description RPC unstake pseudo operation params\n */\nexport interface UnstakeParams {\n to?: string;\n source?: string;\n amount: number;\n fee?: number;\n parameter?: TransactionOperationParameter;\n gasLimit?: number;\n storageLimit?: number;\n mutez?: boolean;\n}\n/**\n * @description RPC finalize_unstake pseudo operation params\n */\nexport interface FinalizeUnstakeParams {\n to?: string;\n source?: string;\n amount?: number;\n fee?: number;\n parameter?: TransactionOperationParameter;\n gasLimit?: number;\n storageLimit?: number;\n mutez?: boolean;\n}\n/**\n * @description RPC register global constant operation\n */\nexport interface RPCRegisterGlobalConstantOperation {\n kind: OpKind.REGISTER_GLOBAL_CONSTANT;\n fee: number;\n gas_limit: number;\n storage_limit: number;\n source: string;\n value: MichelsonV1Expression;\n}\n/**\n * @description Parameters for the `registerGlobalConstant` method\n */\nexport interface RegisterGlobalConstantParams {\n value: MichelsonV1Expression;\n source?: string;\n fee?: number;\n gasLimit?: number;\n storageLimit?: number;\n}\n/**\n * @description RPC transfer operation\n */\nexport interface RPCTransferOperation {\n kind: OpKind.TRANSACTION;\n fee: number;\n gas_limit: number;\n storage_limit: number;\n amount: string;\n source?: string;\n destination: string;\n parameters?: TransactionOperationParameter;\n}\n/**\n * @description RPC activate account operation\n */\nexport interface RPCActivateOperation {\n kind: OpKind.ACTIVATION;\n pkh: string;\n secret: string;\n}\n/**\n * @description Parameters for the transferTicket contract provider\n */\nexport interface TransferTicketParams {\n source?: string;\n fee?: number;\n gasLimit?: number;\n storageLimit?: number;\n ticketContents: MichelsonV1Expression;\n ticketTy: MichelsonV1Expression;\n ticketTicketer: string;\n ticketAmount: number;\n destination: string;\n entrypoint: string;\n}\n/**\n * @description Rpc transfer-ticket operation\n */\nexport interface RPCTransferTicketOperation {\n kind: OpKind.TRANSFER_TICKET;\n source?: string;\n fee: number;\n gas_limit: number;\n storage_limit: number;\n ticket_contents: MichelsonV1Expression;\n ticket_ty: MichelsonV1Expression;\n ticket_ticketer: string;\n ticket_amount: number;\n destination: string;\n entrypoint: string;\n}\n/**\n * @description Parameters for the increasePaidStorage method\n */\nexport interface IncreasePaidStorageParams {\n source?: string;\n fee?: number;\n gasLimit?: number;\n storageLimit?: number;\n amount: number;\n destination: string;\n}\n/**\n * @description RPC IncreasePaidStorage operation\n */\nexport interface RPCIncreasePaidStorageOperation {\n kind: OpKind.INCREASE_PAID_STORAGE;\n source: string;\n fee: number;\n gas_limit: number;\n storage_limit: number;\n amount: number;\n destination: string;\n}\n/**\n * @description Parameters for the DrainDelegate method\n */\nexport interface DrainDelegateParams {\n consensus_key: string;\n delegate: string;\n destination: string;\n}\n/**\n * @description RPC DrainDelegate operation\n */\nexport interface RPCDrainDelegateOperation {\n kind: OpKind.DRAIN_DELEGATE;\n consensus_key: string;\n delegate: string;\n destination: string;\n}\n/**\n * @description Ballot operation params\n */\nexport interface BallotParams {\n source?: string;\n proposal: string;\n ballot: BallotVote;\n}\nexport interface RPCBallotOperation {\n kind: OpKind.BALLOT;\n source: string;\n period: number;\n proposal: string;\n ballot: BallotVote;\n}\nexport interface ProposalsParams {\n source?: string;\n proposals: string[];\n}\nexport interface RPCProposalsOperation {\n kind: OpKind.PROPOSALS;\n source: string;\n period: number;\n proposals: string[];\n}\nexport interface UpdateConsensusKeyParams {\n source?: string;\n fee?: number;\n gasLimit?: number;\n storageLimit?: number;\n pk: string;\n}\nexport interface RPCUpdateConsensusKeyOperation {\n kind: OpKind.UPDATE_CONSENSUS_KEY;\n source: string;\n fee: number;\n gas_limit: number;\n storage_limit: number;\n pk: string;\n}\nexport interface SmartRollupAddMessagesParams {\n source?: string;\n fee?: number;\n gasLimit?: number;\n storageLimit?: number;\n message: string[];\n}\nexport interface RPCSmartRollupAddMessagesOperation {\n kind: OpKind.SMART_ROLLUP_ADD_MESSAGES;\n source: string;\n fee: number;\n gas_limit: number;\n storage_limit: number;\n message: string[];\n}\nexport interface SmartRollupOriginateParams {\n source?: string;\n fee?: number;\n gasLimit?: number;\n storageLimit?: number;\n pvmKind: PvmKind;\n kernel: string;\n parametersType: MichelsonV1Expression;\n}\nexport interface RPCSmartRollupOriginateOperation {\n kind: OpKind.SMART_ROLLUP_ORIGINATE;\n source: string;\n fee: number;\n gas_limit: number;\n storage_limit: number;\n pvm_kind: PvmKind;\n kernel: string;\n parameters_ty: MichelsonV1Expression;\n}\nexport interface SmartRollupExecuteOutboxMessageParams {\n source?: string;\n fee?: number;\n gasLimit?: number;\n storageLimit?: number;\n rollup: string;\n cementedCommitment: string;\n outputProof: string;\n}\nexport interface RPCSmartRollupOutboxMessageOperation {\n kind: OpKind.SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE;\n source: string;\n fee: number;\n gas_limit: number;\n storage_limit: number;\n rollup: string;\n cemented_commitment: string;\n output_proof: string;\n}\n/**\n * @description RPC failing noop operation\n */\nexport interface RPCFailingNoopOperation {\n kind: OpKind.FAILING_NOOP;\n arbitrary: string;\n}\n/**\n * @description Parameters for the `failingNoop` method\n */\nexport interface FailingNoopParams {\n arbitrary: string;\n basedOnBlock: BlockIdentifier;\n}\nexport type RPCOperation = RPCOriginationOperation | RPCTransferOperation | RPCDelegateOperation | RPCRevealOperation | RPCActivateOperation | RPCRegisterGlobalConstantOperation | RPCTransferTicketOperation | RPCIncreasePaidStorageOperation | RPCDrainDelegateOperation | RPCBallotOperation | RPCProposalsOperation | RPCUpdateConsensusKeyOperation | RPCSmartRollupAddMessagesOperation | RPCSmartRollupOriginateOperation | RPCSmartRollupOutboxMessageOperation | RPCFailingNoopOperation;\nexport type PrepareOperationParams = {\n operation: RPCOperation | RPCOperation[];\n source?: string;\n};\n"},{name:"@taquito/operations/update-consensus-key-operation.d.ts",dts:"import { OperationContentsAndResult, OperationContentsUpdateConsensusKey } from '@taquito/rpc';\nimport { Context } from '../context';\nimport { Operation } from './operations';\nimport { FeeConsumingOperation, ForgedBytes, GasConsumingOperation, StorageConsumingOperation } from './types';\n/**\n *\n * @description UpdateConsensusKeyOperation provides utility to fetch properties for Operation of kind UpdateConsensusKey\n *\n */\nexport declare class UpdateConsensusKeyOperation extends Operation implements GasConsumingOperation, StorageConsumingOperation, FeeConsumingOperation {\n private readonly params;\n readonly source: string;\n constructor(hash: string, params: OperationContentsUpdateConsensusKey, source: string, raw: ForgedBytes, results: OperationContentsAndResult[], context: Context);\n get operationResults(): import(\"@taquito/rpc\").OperationResultUpdateConsensusKey | undefined;\n get status(): import(\"@taquito/rpc\").OperationResultStatusEnum | \"unknown\";\n get fee(): number;\n get gasLimit(): number;\n get storageLimit(): number;\n get pk(): string;\n get consumedMilliGas(): string | undefined;\n get errors(): import(\"@taquito/rpc\").TezosGenericOperationError[] | undefined;\n}\n"},{name:"@taquito/packer/interface.d.ts",dts:"import { PackDataParams, PackDataResponse } from '@taquito/rpc';\nexport interface Packer {\n packData(data: PackDataParams): Promise;\n}\n"},{name:"@taquito/packer/michel-codec-packer.d.ts",dts:"import { Packer } from './interface';\nimport { PackDataResponse, PackDataParams } from '@taquito/rpc';\nexport declare class MichelCodecPacker implements Packer {\n packData(data: PackDataParams): Promise;\n}\n"},{name:"@taquito/packer/rpc-packer.d.ts",dts:"import { Packer } from './interface';\nimport { Context } from '../context';\nimport { PackDataParams, PackDataResponse } from '@taquito/rpc';\nexport declare class RpcPacker implements Packer {\n private context;\n constructor(context: Context);\n packData(data: PackDataParams): Promise;\n}\n"},{name:"@taquito/parser/interface.d.ts",dts:"import { OriginateParams } from '../operations/types';\nexport interface ParserProvider {\n prepareCodeOrigination(params: OriginateParams): Promise;\n}\n"},{name:"@taquito/parser/michel-codec-parser.d.ts",dts:"import { Context } from '../context';\nimport { ParserProvider } from './interface';\nimport { Expr } from '@taquito/michel-codec';\nimport { OriginateParams } from '../operations/types';\nexport declare class MichelCodecParser implements ParserProvider {\n private context;\n constructor(context: Context);\n private getNextProto;\n parseScript(src: string): Promise;\n parseMichelineExpression(src: string): Promise;\n parseJSON(src: object): Promise;\n prepareCodeOrigination(params: OriginateParams): Promise;\n private formatCodeParam;\n private formatInitParam;\n private findGlobalConstantsHashAndValue;\n}\n"},{name:"@taquito/parser/noop-parser.d.ts",dts:'import { OriginateParams } from "../operations/types";\nimport { ParserProvider } from "./interface";\nexport declare class NoopParser implements ParserProvider {\n prepareCodeOrigination(params: OriginateParams): Promise;\n}\n'},{name:"@taquito/prepare/index.d.ts",dts:"export * from './interface';\nexport * from './prepare-provider';\n"},{name:"@taquito/prepare/interface.d.ts",dts:"import { OperationContents, PreapplyParams } from '@taquito/rpc';\nimport { BallotParams, DelegateParams, DrainDelegateParams, IncreasePaidStorageParams, OriginateParams, ProposalsParams, RegisterGlobalConstantParams, RevealParams, TransferParams, TransferTicketParams, UpdateConsensusKeyParams, ActivationParams, SmartRollupAddMessagesParams, SmartRollupOriginateParams } from '../operations/types';\nimport { ContractMethod } from '../contract/contract-methods/contract-method-flat-param';\nimport { ContractMethodObject } from '../contract/contract-methods/contract-method-object-param';\nimport { ContractProvider } from '../contract/interface';\nimport { ParamsWithKind } from '../operations/types';\nimport { ForgeParams } from '@taquito/local-forging';\n/**\n * @description PrepareProvider is a utility class to output the prepared format of an operation\n */\nexport interface PreparationProvider {\n /**\n * @description Method to prepare an activation operation\n * @param operation RPCOperation object or RPCOperation array\n * @param source string or undefined source pkh\n * @returns a PreparedOperation object\n */\n activate(params: ActivationParams): Promise;\n /**\n *\n * @description Method to prepare a reveal operation\n * @param params reveal operation parameters\n * @param source string or undefined source pkh\n * @returns a PreparedOperation object\n */\n reveal(params: RevealParams): Promise;\n /**\n * @description Method to prepare an origination operation\n * @param params originate operation parameters\n * @param source string or undefined source pkh\n * @returns a PreparedOperation object\n */\n originate(params: OriginateParams): Promise;\n /**\n *\n * @description Method to prepare a transaction operation\n *\n * @param params transaction operation parameters\n * @param source string or undefined source pkh\n *\n * @returns a PreparedOperation object\n */\n transaction(params: TransferParams): Promise;\n /**\n *\n * @description Method to prepare a delegation operation\n * @param params delegation operation parameters\n * @param source string or undefined source pkh\n * @returns a PreparedOperation object\n */\n delegation(params: DelegateParams): Promise;\n /**\n * @description Method to prepare a register_global_constant operation\n * @param params registerGlobalConstant operation parameters\n * @param source string or undefined source pkh\n * @returns a PreparedOperation object\n */\n registerGlobalConstant(params: RegisterGlobalConstantParams): Promise;\n /**\n * @description Method to prepare an update_consensus_key operation\n * @param params updateConsensusKey operation parameters\n * @param source string or undefined source pkh\n * @returns a PreparedOperation object\n */\n updateConsensusKey(params: UpdateConsensusKeyParams): Promise;\n /**\n *\n * @description Method to prepare a transfer_ticket operation\n * @param params TransferTicketx operation parameters\n * @param source string or undefined source pkh\n * @returns a PreparedOperation object\n */\n transferTicket(params: TransferTicketParams): Promise;\n /**\n * @description Method to prepare an increase_paid_storage operation\n * @param params increasePaidStorage operation parameters\n * @param source string or undefined source pkh\n * @returns a PreparedOperation object\n */\n increasePaidStorage(params: IncreasePaidStorageParams): Promise;\n /**\n * @description Method to prepare a ballot operation\n * @param params ballot operation parameters\n * @returns a PreparedOperation object\n */\n ballot(params: BallotParams): Promise;\n /**\n *\n * @description Method to prepare a proposals operation\n * @param params proposals operation parameters\n * @returns a PreparedOperation object\n */\n proposals(params: ProposalsParams): Promise;\n /**\n * @description Method to prepare a drain_delegate operation\n * @param params drainDelegate operation parameters\n * @returns a PreparedOperation object\n */\n drainDelegate(params: DrainDelegateParams): Promise;\n /**\n * @description Method to prepare a smart_rollup_add_messages operation\n * @param params smartRollupAddMessages operation parameters\n * @returns a PreparedOperation object\n */\n smartRollupAddMessages(params: SmartRollupAddMessagesParams): Promise;\n /**\n * @description Method to prepare a smart_rollup_originate operation\n * @param params smartRollupOriginate operation parameters\n * @returns a PreparedOperation object\n */\n smartRollupOriginate(params: SmartRollupOriginateParams): Promise;\n /**\n *\n * @description Method to prepare a batch operation\n * @param params x operation parameters\n * @returns a PreparedOperation object\n */\n batch(batchParams: ParamsWithKind[]): Promise;\n /**\n * @description Method to prepare a contract call (transfer) operation\n * @param contractMethod ContractMethod or ContractMethodObject retrieved from smart contract\n * @returns a PreparedOperation object\n */\n contractCall(contractMethod: ContractMethod | ContractMethodObject): Promise;\n /**\n *\n * @description Method to convert a PreparedOperation to the params needed for the preapplyOperation method\n * @param prepared a Prepared Operation\n * @returns a PreapplyParams object\n */\n toPreapply(prepared: PreparedOperation): Promise;\n /**\n *\n * @description Method to convert a PreparedOperation to the params needed for forging\n * @param param a Prepared Operation\n * @returns a ForgeParams object\n */\n toForge(param: PreparedOperation): ForgeParams;\n}\nexport interface PreparedOperation {\n opOb: {\n branch: string;\n contents: OperationContents[];\n protocol: string;\n };\n counter: number;\n}\n"},{name:"@taquito/prepare/prepare-provider.d.ts",dts:"import { PreapplyParams } from '@taquito/rpc';\nimport { DelegateParams, RevealParams, RegisterGlobalConstantParams, TransferParams, OriginateParams, UpdateConsensusKeyParams, TransferTicketParams, IncreasePaidStorageParams, BallotParams, ProposalsParams, DrainDelegateParams, ParamsWithKind, SmartRollupAddMessagesParams, SmartRollupOriginateParams, SmartRollupExecuteOutboxMessageParams, RegisterDelegateParams, ActivationParams, StakeParams, UnstakeParams, FinalizeUnstakeParams } from '../operations/types';\nimport { PreparationProvider, PreparedOperation } from './interface';\nimport { Context } from '../context';\nimport { ContractMethod } from '../contract/contract-methods/contract-method-flat-param';\nimport { ContractMethodObject } from '../contract/contract-methods/contract-method-object-param';\nimport { ContractProvider } from '../contract/interface';\nimport { DefaultContractType, ContractStorageType } from '../contract';\nimport { Estimate } from '../estimate';\nimport { ForgeParams } from '@taquito/local-forging';\nimport { Provider } from '../provider';\n/**\n * @description PrepareProvider is a utility class to output the prepared format of an operation\n */\nexport declare class PrepareProvider extends Provider implements PreparationProvider {\n #private;\n protected context: Context;\n constructor(context: Context);\n private getBlockHash;\n private getProtocolHash;\n private getHeadCounter;\n private adjustGasForBatchOperation;\n private getOperationLimits;\n private getFee;\n private getSource;\n private addRevealOperationIfNeeded;\n private getKeys;\n private convertIntoArray;\n private constructOpContents;\n /**\n *\n * @description Method to prepare an activation operation\n * @param operation RPCOperation object or RPCOperation array\n * @param source string or undefined source pkh\n * @returns a PreparedOperation object\n */\n activate({ pkh, secret }: ActivationParams): Promise;\n /**\n *\n * @description Method to prepare a reveal operation\n * @param operation RPCOperation object or RPCOperation array\n * @param source string or undefined source pkh\n * @returns a PreparedOperation object\n */\n reveal({ fee, gasLimit, storageLimit }: RevealParams): Promise;\n /**\n *\n * @description Method to prepare an origination operation\n * @param operation RPCOperation object or RPCOperation array\n * @param source string or undefined source pkh\n * @returns a PreparedOperation object\n */\n originate({ fee, storageLimit, gasLimit, ...rest }: OriginateParams>, source?: string): Promise;\n /**\n *\n * @description Method to prepare a transaction operation\n * @param operation RPCOperation object or RPCOperation array\n * @param source string or undefined source pkh\n * @returns a PreparedOperation object\n */\n transaction({ fee, storageLimit, gasLimit, ...rest }: TransferParams): Promise;\n /**\n *\n * @description Method to prepare a stake pseudo-operation\n * @param operation RPCOperation object or RPCOperation array\n * @param source string or undefined source pkh\n * @returns a PreparedOperation object\n */\n stake({ fee, storageLimit, gasLimit, ...rest }: StakeParams): Promise;\n /**\n *\n * @description Method to prepare a unstake pseudo-operation\n * @param operation RPCOperation object or RPCOperation array\n * @param source string or undefined source pkh\n * @returns a PreparedOperation object\n */\n unstake({ fee, storageLimit, gasLimit, ...rest }: UnstakeParams): Promise;\n /**\n *\n * @description Method to prepare a finalize_unstake pseudo-operation\n * @param operation RPCOperation object or RPCOperation array\n * @param source string or undefined source pkh\n * @returns a PreparedOperation object\n */\n finalizeUnstake({ fee, storageLimit, gasLimit, ...rest }: FinalizeUnstakeParams): Promise;\n /**\n *\n * @description Method to prepare a delegation operation\n * @param operation RPCOperation object or RPCOperation array\n * @param source string or undefined source pkh\n * @returns a PreparedOperation object\n */\n delegation({ fee, storageLimit, gasLimit, ...rest }: DelegateParams): Promise;\n /**\n *\n * @description Method to prepare a register delegate operation\n * @param operation RPCOperation object or RPCOperation array\n * @param source string or undefined source pkh\n * @returns a PreparedOperation object\n */\n registerDelegate({ fee, storageLimit, gasLimit }: RegisterDelegateParams, source?: string): Promise;\n /**\n *\n * @description Method to prepare a register_global_constant operation\n * @param operation RPCOperation object or RPCOperation array\n * @param source string or undefined source pkh\n * @returns a PreparedOperation object\n */\n registerGlobalConstant({ fee, storageLimit, gasLimit, ...rest }: RegisterGlobalConstantParams): Promise;\n /**\n *\n * @description Method to prepare an update_consensus_key operation\n * @param operation RPCOperation object or RPCOperation array\n * @param source string or undefined source pkh\n * @returns a PreparedOperation object\n */\n updateConsensusKey({ fee, storageLimit, gasLimit, ...rest }: UpdateConsensusKeyParams, source?: string): Promise;\n /**\n *\n * @description Method to prepare an increase_paid_storage operation\n * @param operation RPCOperation object or RPCOperation array\n * @param source string or undefined source pkh\n * @returns a PreparedOperation object\n */\n increasePaidStorage({ fee, storageLimit, gasLimit, ...rest }: IncreasePaidStorageParams): Promise;\n /**\n *\n * @description Method to prepare a ballot operation\n * @param operation RPCOperation object or RPCOperation array\n * @returns a PreparedOperation object\n */\n ballot(params: BallotParams): Promise;\n /**\n *\n * @description Method to prepare a proposals operation\n * @param operation RPCOperation object or RPCOperation array\n * @returns a PreparedOperation object\n */\n proposals(params: ProposalsParams): Promise;\n /**\n *\n * @description Method to prepare a drain_delegate operation\n * @param operation RPCOperation object or RPCOperation array\n * @returns a PreparedOperation object\n */\n drainDelegate(params: DrainDelegateParams, source?: string): Promise;\n /**\n *\n * @description Method to prepare a transfer_ticket operation\n * @param operation RPCOperation object or RPCOperation array\n * @param source string or undefined source pkh\n * @returns a PreparedOperation object\n */\n transferTicket({ fee, storageLimit, gasLimit, ...rest }: TransferTicketParams): Promise;\n /**\n *\n * @description Method to prepare a smart_rollup_add_messages operation\n * @param operation RPCOperation object or RPCOperation array\n * @param source string or undefined source pkh\n * @returns a PreparedOperation object\n */\n smartRollupAddMessages({ fee, storageLimit, gasLimit, ...rest }: SmartRollupAddMessagesParams): Promise;\n /**\n *\n * @description Method to prepare a smart_rollup_originate operation\n * @param operation RPCOperation object or RPCOperation array\n * @returns a PreparedOperation object\n */\n smartRollupOriginate({ fee, storageLimit, gasLimit, ...rest }: SmartRollupOriginateParams): Promise;\n /**\n *\n * @description Method to prepare a smart_rollup_execute_outbox_message operation\n * @param operation RPCOperation object or RPCOperation array\n * @param source string or undefined source pkh\n * @returns a PreparedOperation object\n */\n smartRollupExecuteOutboxMessage({ fee, storageLimit, gasLimit, ...rest }: SmartRollupExecuteOutboxMessageParams): Promise;\n /**\n *\n * @description Method to prepare a batch operation\n * @param operation RPCOperation object or RPCOperation array\n * @returns a PreparedOperation object\n */\n batch(batchParams: ParamsWithKind[], estimates?: Estimate[]): Promise;\n /**\n *\n * @description Method to prepare a batch operation\n * @param operation RPCOperation object or RPCOperation array\n * @returns a PreparedOperation object\n */\n contractCall(contractMethod: ContractMethod | ContractMethodObject): Promise;\n /**\n *\n * @description Method to convert a PreparedOperation to the params needed for the preapplyOperation method\n * @param prepared a Prepared Operation\n * @returns a PreapplyParams object\n */\n toPreapply(prepared: PreparedOperation): Promise;\n /**\n *\n * @description Method to convert a PreparedOperation to the params needed for forging\n * @param param a Prepared Operation\n * @returns a ForgeParams object\n */\n toForge({ opOb: { contents, branch } }: PreparedOperation): ForgeParams;\n}\n"},{name:"@taquito/read-provider/interface.d.ts",dts:"import { BlockResponse, EntrypointsResponse, MichelsonV1Expression, SaplingDiffResponse, ScriptedContracts, AILaunchCycleResponse } from '@taquito/rpc';\nimport BigNumber from 'bignumber.js';\nexport type BigMapQuery = {\n id: string;\n expr: string;\n};\nexport type SaplingStateQuery = {\n id: string;\n};\nexport type BlockIdentifier = 'head' | `head~${number}` | `B${string}` | number;\nexport interface TzReadProvider {\n /**\n * @description Access the spendable balance of a contract, excluding frozen bonds.\n * @param address address from which we want to retrieve the balance\n * @param block from which we want to retrieve the balance\n * @returns the balance in mutez\n */\n getBalance(address: string, block: BlockIdentifier): Promise;\n /**\n * @description Access the delegate of a contract, if any.\n * @param address contract address from which we want to retrieve the delegate (baker)\n * @param block from which we want to retrieve the delegate\n * @returns the public key hash of the delegate or null if no delegate\n */\n getDelegate(address: string, block: BlockIdentifier): Promise;\n /**\n * @description Access the next protocol hash\n * @param block from which we want to retrieve the next protocol hash\n */\n getNextProtocol(block: BlockIdentifier): Promise;\n /**\n * @description Access protocol constants used in Taquito\n * @param block from which we want to retrieve the constants\n */\n getProtocolConstants(block: BlockIdentifier): Promise<{\n time_between_blocks?: BigNumber[];\n minimal_block_delay?: BigNumber;\n hard_gas_limit_per_operation: BigNumber;\n hard_gas_limit_per_block: BigNumber;\n hard_storage_limit_per_operation: BigNumber;\n cost_per_byte: BigNumber;\n smart_rollup_origination_size: number;\n }>;\n /**\n * @description Access the script (code and storage) of a smart contract\n * @param contract contract address from which we want to retrieve the script\n * @param block from which we want to retrieve the storage value\n * @returns Note: The code must be in the JSON format and not contain global constant\n */\n getScript(contract: string, block: BlockIdentifier): Promise;\n /**\n * @description Access the storage of a contract\n * @param contract contract address from which we want to retrieve the storage\n * @param block from which we want to retrieve the storage value\n */\n getStorage(contract: string, block: BlockIdentifier): Promise;\n /**\n * @description Access the block hash\n */\n getBlockHash(block: BlockIdentifier): Promise;\n /**\n * @description Access the block level\n */\n getBlockLevel(block: BlockIdentifier): Promise;\n /**\n * @description Access the counter of an address\n * @param pkh from which we want to retrieve the counter\n * @param block from which we want to retrieve the counter\n */\n getCounter(pkh: string, block: BlockIdentifier): Promise;\n /**\n * @description Access the timestamp of a block\n * @param block from which we want to retrieve the timestamp\n * @returns date ISO format zero UTC offset (\"2022-01-19T22:37:07Z\")\n */\n getBlockTimestamp(block: BlockIdentifier): Promise;\n /**\n * @description Access the value associated with a key in a big map.\n * @param bigMapQuery Big Map ID and Expression hash to query (A b58check encoded Blake2b hash of the expression)\n * @param block from which we want to retrieve the big map value\n */\n getBigMapValue(bigMapQuery: BigMapQuery, block: BlockIdentifier): Promise;\n /**\n * @description Access the value associated with a sapling state ID.\n * @param id Sapling state ID\n * @param block from which we want to retrieve the sapling state\n */\n getSaplingDiffById(saplingStateQuery: SaplingStateQuery, block: BlockIdentifier): Promise;\n /**\n * @description Access the sapling state of a smart contract.\n * @param contractAddress The address of the smart contract\n * @param block The block you want to retrieve the sapling state from\n */\n getSaplingDiffByContract(contractAddress: string, block: BlockIdentifier): Promise;\n /**\n * @description Return the list of entrypoints of the contract\n * @param contract address of the contract we want to get the entrypoints of\n */\n getEntrypoints(contract: string): Promise;\n /**\n * @description Access the chain id\n */\n getChainId(): Promise;\n /**\n * @description Indicate if an account is revealed\n * @param publicKeyHash of the account\n * @param block from which we want to know if the account is revealed\n */\n isAccountRevealed(publicKeyHash: string, block: BlockIdentifier): Promise;\n /**\n * @description Return all the information about a block\n * @param block from which we want to retrieve the information\n */\n getBlock(block: BlockIdentifier): Promise;\n /**\n * @description Return a list of the ancestors of the given block which, if referred to as the branch in an operation header, are recent enough for that operation to be included in the current block.\n * @param block from which we want to retrieve the information\n */\n getLiveBlocks(block: BlockIdentifier): Promise;\n /**\n * @description Returns the cycle at which the launch of the Adaptive Issuance feature is set to happen. A result of null means that the feature is not yet set to launch.\n * @param block from which we want to retrieve the information\n */\n getAdaptiveIssuanceLaunchCycle(block: BlockIdentifier): Promise;\n}\n"},{name:"@taquito/read-provider/rpc-read-adapter.d.ts",dts:"import { BlockResponse, EntrypointsResponse, MichelsonV1Expression, RpcClientInterface, SaplingDiffResponse, ScriptedContracts, AILaunchCycleResponse } from '@taquito/rpc';\nimport BigNumber from 'bignumber.js';\nimport { BigMapQuery, BlockIdentifier, SaplingStateQuery, TzReadProvider } from './interface';\n/**\n * @description Converts calls from TzReadProvider into calls to the wrapped RpcClient in a format it can understand.\n */\nexport declare class RpcReadAdapter implements TzReadProvider {\n private rpc;\n constructor(rpc: RpcClientInterface);\n /**\n * @description Access the spendable balance of a contract, excluding frozen bonds.\n * @param address address from which we want to retrieve the balance\n * @param block from which we want to retrieve the balance\n * @returns the balance in mutez\n */\n getBalance(address: string, block: BlockIdentifier): Promise;\n /**\n * @description Access the delegate of a contract, if any.\n * @param address contract address from which we want to retrieve the delegate (baker)\n * @param block from which we want to retrieve the delegate\n * @returns the public key hash of the delegate or null if no delegate\n */\n getDelegate(address: string, block: BlockIdentifier): Promise;\n /**\n * @description Access the next protocol hash\n * @param block from which we want to retrieve the next protocol hash\n */\n getNextProtocol(block: BlockIdentifier): Promise;\n /**\n * @description Access protocol constants used in Taquito\n * @param block from which we want to retrieve the constants\n */\n getProtocolConstants(block: BlockIdentifier): Promise<{\n time_between_blocks?: BigNumber[];\n minimal_block_delay?: BigNumber | undefined;\n hard_gas_limit_per_operation: BigNumber;\n hard_gas_limit_per_block: BigNumber;\n hard_storage_limit_per_operation: BigNumber;\n cost_per_byte: BigNumber;\n smart_rollup_origination_size: number;\n }>;\n /**\n * @description Access the script (code and storage) of a smart contract\n * @param contract contract address from which we want to retrieve the script\n * @param block from which we want to retrieve the storage value\n * @returns Note: The code must be in the JSON format and not contain global constant\n */\n getScript(contract: string, block: BlockIdentifier): Promise;\n /**\n * @description Access the storage value of a contract\n * @param contract contract address from which we want to retrieve the storage\n * @param block from which we want to retrieve the storage value\n */\n getStorage(contract: string, block: BlockIdentifier): Promise;\n /**\n * @description Access the block hash\n */\n getBlockHash(block: BlockIdentifier): Promise;\n /**\n * @description Access the block level\n */\n getBlockLevel(block: BlockIdentifier): Promise;\n /**\n * @description Access the counter of an address\n * @param pkh from which we want to retrieve the counter\n * @param block from which we want to retrieve the counter\n */\n getCounter(pkh: string, block: BlockIdentifier): Promise;\n /**\n * @description Access the timestamp of a block\n * @param block from which we want to retrieve the timestamp\n * @returns date ISO format zero UTC offset (\"2022-01-19T22:37:07Z\")\n */\n getBlockTimestamp(block: BlockIdentifier): Promise;\n /**\n * @description Access the value associated with a key in a big map.\n * @param bigMapQuery Big Map ID and Expression hash to query (A b58check encoded Blake2b hash of the expression)\n * @param block from which we want to retrieve the big map value\n */\n getBigMapValue(bigMapQuery: BigMapQuery, block: BlockIdentifier): Promise;\n /**\n * @description Access the value associated with a sapling state ID.\n * @param id Sapling state ID\n * @param block from which we want to retrieve the sapling state\n */\n getSaplingDiffById(saplingStateQuery: SaplingStateQuery, block: BlockIdentifier): Promise;\n /**\n * @description Access the sapling state of a smart contract.\n * @param contractAddress The address of the smart contract\n * @param block The block you want to retrieve the sapling state from\n */\n getSaplingDiffByContract(contractAddress: string, block: BlockIdentifier): Promise;\n /**\n * @description Return the list of entrypoints of the contract\n * @param contract address of the contract we want to get the entrypoints of\n */\n getEntrypoints(contract: string): Promise;\n /**\n * @description Access the chain id\n */\n getChainId(): Promise;\n /**\n * @description Indicate if an account is revealed\n * @param publicKeyHash of the account\n * @param block from which we want to know if the account is revealed\n */\n isAccountRevealed(publicKeyHash: string, block: BlockIdentifier): Promise;\n /**\n * @description Return all the information about a block\n * @param block from which we want to retrieve the information\n */\n getBlock(block: BlockIdentifier): Promise;\n /**\n * @description Return a list of the ancestors of the given block which, if referred to as the branch in an operation header, are recent enough for that operation to be included in the current block.\n * @param block from which we want to retrieve the information\n */\n getLiveBlocks(block: BlockIdentifier): Promise;\n /**\n * @description Returns the cycle at which the launch of the Adaptive Issuance feature is set to happen. A result of null means that the feature is not yet set to launch.\n * @param block from which we want to retrieve the information\n */\n getAdaptiveIssuanceLaunchCycle(block: BlockIdentifier): Promise;\n}\n"},{name:"@taquito/signer/errors.d.ts",dts:"import { TezosToolkitConfigError } from '@taquito/core';\n/**\n * @category Error\n * @description Error that indicates no signer has been configured in the TezosToolkit instance\n */\nexport declare class UnconfiguredSignerError extends TezosToolkitConfigError {\n constructor();\n}\n"},{name:"@taquito/signer/interface.d.ts",dts:"/**\n * @description Signer interface which is used across taquito in order to sign and inject operation\n */\nexport interface Signer {\n /**\n *\n * @param op Operation to sign\n * @param magicByte Magic bytes 11 for block, 12 for preattestation/preendorsement, 13 for attestation/endorsements, 3 for generic, 5 for the PACK format of michelson\n */\n sign(op: string, magicByte?: Uint8Array): Promise<{\n bytes: string;\n sig: string;\n prefixSig: string;\n sbytes: string;\n }>;\n /**\n * @description Return the public key of the account used by the signer\n */\n publicKey(): Promise;\n /**\n * @description Return the public key hash of the account used by the signer\n */\n publicKeyHash(): Promise;\n /**\n * @description Optionally return the secret key of the account used by the signer\n */\n secretKey(): Promise;\n}\n"},{name:"@taquito/signer/noop.d.ts",dts:"import { Signer } from './interface';\n/**\n * @description Default signer implementation which does nothing and produce invalid signature\n * @throw {@link UnconfiguredSignerError}\n */\nexport declare class NoopSigner implements Signer {\n publicKey(): Promise;\n publicKeyHash(): Promise;\n secretKey(): Promise;\n sign(_bytes: string, _watermark?: Uint8Array): Promise;\n}\n"},{name:"@taquito/subscribe/create-observable-from-subscription.d.ts",dts:"import { BlockResponse } from '@taquito/rpc';\nimport { Observable } from 'rxjs';\nimport { OperationContent, Subscription } from './interface';\nexport declare function createObservableFromSubscription(sub: Subscription): Observable;\n"},{name:"@taquito/subscribe/errors.d.ts",dts:"import { ParameterValidationError } from '@taquito/core';\nimport { FilterExpression } from '../taquito';\n/**\n * @category Error\n * @description Error that indicates an unsupported event being passed or used\n */\nexport declare class UnsupportedEventError extends ParameterValidationError {\n readonly type: string;\n constructor(type: string);\n}\n/**\n * @category Error\n * @description Error that indicates an invalid filter expression being passed or used\n */\nexport declare class InvalidFilterExpressionError extends ParameterValidationError {\n readonly invalidExpression: FilterExpression;\n constructor(invalidExpression: FilterExpression);\n}\n"},{name:"@taquito/subscribe/filters.d.ts",dts:"import { OpFilter, FilterExpression, Filter, OperationContent } from './interface';\nimport { InternalOperationResult } from '@taquito/rpc';\nexport declare const eventFilter: (result: InternalOperationResult, address?: string, tag?: string, excludeFailedOperations?: boolean) => boolean;\nexport declare const evaluateOpFilter: (op: OperationContent, filter: OpFilter) => boolean | undefined;\nexport declare const evaluateExpression: (op: OperationContent, exp: FilterExpression) => boolean;\nexport declare const evaluateFilter: (op: OperationContent, filter: Filter) => boolean;\n"},{name:"@taquito/subscribe/interface.d.ts",dts:"import { BlockResponse, InternalOperationResult, OperationEntry } from '@taquito/rpc';\nexport type FilterExpression = {\n or?: ExpressionOrOpFilter[];\n and?: ExpressionOrOpFilter[];\n};\nexport interface OpHashFilter {\n opHash: string;\n}\nexport interface SourceFilter {\n source: string;\n}\nexport interface KindFilter {\n kind: string;\n}\nexport interface DestinationFilter {\n destination: string;\n}\nexport interface EventFilter {\n address?: string;\n tag?: string;\n excludeFailedOperations?: boolean;\n}\nexport interface EventSubscription extends InternalOperationResult {\n opHash: string;\n blockHash: string;\n level: number;\n}\nexport type OpFilter = OpHashFilter | SourceFilter | KindFilter | DestinationFilter | EventFilter;\nexport type ExpressionOrOpFilter = OpFilter | FilterExpression;\nexport type Filter = ExpressionOrOpFilter | ExpressionOrOpFilter[];\nexport type OperationContent = OperationEntry['contents'][0] & {\n hash: string;\n};\nexport interface SubscribeProvider {\n subscribe(filter: 'head'): Subscription;\n subscribeBlock(filter: 'head'): Subscription;\n subscribeOperation(filter: Filter): Subscription;\n subscribeEvent(filter?: EventFilter): Subscription;\n}\nexport interface Subscription {\n on(type: 'error', cb: (error: Error) => void): void;\n on(type: 'data', cb: (data: T) => void): void;\n on(type: 'close', cb: () => void): void;\n off(type: 'error', cb: (error: Error) => void): void;\n off(type: 'data', cb: (data: T) => void): void;\n off(type: 'close', cb: () => void): void;\n close(): void;\n}\n"},{name:"@taquito/subscribe/observable-subscription.d.ts",dts:"import { Observable, OperatorFunction } from 'rxjs';\nimport { Subscription } from './interface';\nexport { UnsupportedEventError } from './errors';\nexport declare class ObservableSubscription implements Subscription {\n private shouldRetry;\n private operatorFunction;\n private errorListeners;\n private messageListeners;\n private closeListeners;\n private completed$;\n constructor(obs: Observable, shouldRetry?: boolean, operatorFunction?: OperatorFunction);\n private call;\n private remove;\n on(type: 'error', cb: (error: Error) => void): void;\n on(type: 'data', cb: (data: T) => void): void;\n on(type: 'close', cb: () => void): void;\n off(type: 'error', cb: (error: Error) => void): void;\n off(type: 'data', cb: (data: T) => void): void;\n off(type: 'close', cb: () => void): void;\n close(): void;\n}\n"},{name:"@taquito/subscribe/polling-subcribe-provider.d.ts",dts:"import { BlockResponse, InternalOperationResult } from '@taquito/rpc';\nimport { OperatorFunction } from 'rxjs';\nimport { Context } from '../context';\nimport { Filter, EventFilter, SubscribeProvider, Subscription, OperationContent } from './interface';\nexport interface PollingSubscribeProviderConfig {\n pollingIntervalMilliseconds?: number;\n shouldObservableSubscriptionRetry: boolean;\n observableSubscriptionRetryFunction: OperatorFunction;\n}\nexport declare const defaultConfigStreamer: PollingSubscribeProviderConfig;\nexport declare class PollingSubscribeProvider implements SubscribeProvider {\n private context;\n private _config$;\n private timer$;\n private newBlock$;\n constructor(context: Context, config?: Partial);\n get config(): PollingSubscribeProviderConfig;\n private getConfirmationPollingInterval;\n subscribeBlock(_filter: 'head'): Subscription;\n subscribe(_filter: 'head'): Subscription;\n subscribeOperation(filter: Filter): Subscription;\n subscribeEvent(eventFilter?: EventFilter): Subscription;\n}\n"},{name:"@taquito/tz/interface.d.ts",dts:"import BigNumber from 'bignumber.js';\nimport { Operation } from '../operations/operations';\nexport interface TzProvider {\n /**\n *\n * @param address Tezos address you want to get the spendable balance for (eg tz1...)\n */\n getBalance(address: string): Promise;\n /**\n *\n * @param address Tezos address you want to get the delegate for (eg tz1...)\n */\n getDelegate(address: string): Promise;\n activate(pkh: string, secret: string): Promise;\n}\n"},{name:"@taquito/tz/rpc-tz-provider.d.ts",dts:"import BigNumber from 'bignumber.js';\nimport { Context } from '../context';\nimport { Operation } from '../operations/operations';\nimport { TzProvider } from './interface';\nimport { Provider } from '../provider';\nexport declare class RpcTzProvider extends Provider implements TzProvider {\n constructor(context: Context);\n private prepare;\n getBalance(address: string): Promise;\n getDelegate(address: string): Promise;\n activate(pkh: string, secret: string): Promise;\n}\n"},{name:"@taquito/wallet/batch-operation.d.ts",dts:"import { BlockResponse, OperationContentsAndResultReveal } from '@taquito/rpc';\nimport { Observable } from 'rxjs';\nimport { Context } from '../context';\nimport { WalletOperation, OperationStatus } from './operation';\nexport declare class BatchWalletOperation extends WalletOperation {\n readonly opHash: string;\n protected readonly context: Context;\n constructor(opHash: string, context: Context, newHead$: Observable);\n revealOperation(): Promise;\n getOriginatedContractAddresses: () => Promise;\n status(): Promise;\n}\n"},{name:"@taquito/wallet/delegation-operation.d.ts",dts:"import { BlockResponse, OperationContentsAndResultDelegation, OperationContentsAndResultReveal } from '@taquito/rpc';\nimport { Observable } from 'rxjs';\nimport { Context } from '../context';\nimport { WalletOperation, OperationStatus } from './operation';\nexport declare class DelegationWalletOperation extends WalletOperation {\n readonly opHash: string;\n protected readonly context: Context;\n constructor(opHash: string, context: Context, newHead$: Observable);\n revealOperation(): Promise;\n delegationOperation(): Promise;\n status(): Promise;\n}\n"},{name:"@taquito/wallet/errors.d.ts",dts:"import { TezosToolkitConfigError, NetworkError } from '@taquito/core';\n/**\n * @category Error\n * @description Error that indicates undefined confirmation has not been specified or configured\n */\nexport declare class ConfirmationUndefinedError extends TezosToolkitConfigError {\n constructor();\n}\n/**\n * @category Error\n * @description Error that indicates a generic failure when trying to fetch an observable\n */\nexport declare class ObservableError extends NetworkError {\n readonly message: string;\n constructor(message: string);\n}\n"},{name:"@taquito/wallet/increase-paid-storage-operation.d.ts",dts:"import { WalletOperation, OperationStatus } from './operation';\nimport { Context } from '../context';\nimport { Observable } from 'rxjs';\nimport { BlockResponse, OperationContentsAndResultReveal, OperationContentsAndResultIncreasePaidStorage } from '@taquito/rpc';\nexport declare class IncreasePaidStorageWalletOperation extends WalletOperation {\n readonly opHash: string;\n protected readonly context: Context;\n constructor(opHash: string, context: Context, newHead$: Observable);\n revealOperation(): Promise;\n increasePaidStorageOperation(): Promise;\n status(): Promise;\n}\n"},{name:"@taquito/wallet/index.d.ts",dts:"export * from './wallet';\nexport * from './operation';\nexport * from './transaction-operation';\nexport * from './origination-operation';\nexport * from './delegation-operation';\nexport * from './interface';\nexport * from './legacy';\n"},{name:"@taquito/wallet/interface.d.ts",dts:"import { DelegateParams, FailingNoopParams, IncreasePaidStorageParams, OriginateParams, TransferParams, StakeParams, UnstakeParams, FinalizeUnstakeParams } from '../operations/types';\nexport type WalletDefinedFields = 'source';\nexport type WalletTransferParams = Omit;\nexport type WalletStakeParams = Omit;\nexport type WalletUnstakeParams = Omit;\nexport type WalletFinalizeUnstakeParams = Omit;\nexport type WalletOriginateParams = Omit, WalletDefinedFields>;\nexport type WalletDelegateParams = Omit;\nexport type WalletFailingNoopParams = Omit;\nexport type WalletIncreasePaidStorageParams = Omit;\nexport interface WalletProvider {\n /**\n * @description Request the public key hash from the wallet\n */\n getPKH: () => Promise;\n /**\n * @description Get the public key from the wallet\n */\n getPK: () => Promise;\n /**\n * @description Transform WalletTransferParams into a format compliant with the underlying wallet\n */\n mapTransferParamsToWalletParams: (params: () => Promise) => Promise;\n /**\n * @description Transform WalletStakeParams into a format compliant with the underlying wallet\n */\n mapStakeParamsToWalletParams: (params: () => Promise) => Promise;\n /**\n * @description Transform WalletUnstakeParams into a format compliant with the underlying wallet\n */\n mapUnstakeParamsToWalletParams: (params: () => Promise) => Promise;\n /**\n * @description Transform WalletFinalizeUnstakeParams into a format compliant with the underlying wallet\n */\n mapFinalizeUnstakeParamsToWalletParams: (params: () => Promise) => Promise;\n /**\n * @description Transform WalletOriginateParams into a format compliant with the underlying wallet\n */\n mapOriginateParamsToWalletParams: (params: () => Promise) => Promise;\n /**\n * @description Transform WalletDelegateParams into a format compliant with the underlying wallet\n */\n mapDelegateParamsToWalletParams: (params: () => Promise) => Promise;\n /**\n * @description Transform WalletIncreasePaidStorageParams into a format compliant with the underlying wallet\n */\n mapIncreasePaidStorageWalletParams: (params: () => Promise) => Promise;\n /**\n * @description Request the wallet to send an operation batch\n */\n sendOperations: (params: any[]) => Promise;\n /**\n * @description Request the wallet to sign a payload\n */\n sign(bytes: string, watermark?: Uint8Array): Promise;\n}\n"},{name:"@taquito/wallet/legacy.d.ts",dts:'import { Context } from \'../context\';\nimport { OpKind } from \'../operations/types\';\nimport { WalletDelegateParams, WalletIncreasePaidStorageParams, WalletOriginateParams, WalletProvider, WalletTransferParams, WalletStakeParams, WalletUnstakeParams, WalletFinalizeUnstakeParams } from \'./interface\';\nimport { WalletParamsWithKind } from \'./wallet\';\nexport declare class LegacyWalletProvider implements WalletProvider {\n private context;\n constructor(context: Context);\n getPKH(): Promise;\n getPK(): Promise;\n mapTransferParamsToWalletParams(params: () => Promise): Promise>;\n mapStakeParamsToWalletParams(params: () => Promise): Promise>;\n mapUnstakeParamsToWalletParams(params: () => Promise): Promise>;\n mapFinalizeUnstakeParamsToWalletParams(params: () => Promise): Promise>;\n mapOriginateParamsToWalletParams(params: () => Promise): Promise>;\n mapDelegateParamsToWalletParams(params: () => Promise): Promise>;\n mapIncreasePaidStorageWalletParams(params: () => Promise): Promise>;\n sendOperations(params: WalletParamsWithKind[]): Promise;\n sign(bytes: string, watermark?: Uint8Array): Promise;\n}\n'},{name:"@taquito/wallet/operation-factory.d.ts",dts:"import { BlockResponse } from '@taquito/rpc';\nimport { Observable, SchedulerLike } from 'rxjs';\nimport { Context } from '../context';\nimport { BatchWalletOperation } from './batch-operation';\nimport { DelegationWalletOperation } from './delegation-operation';\nimport { IncreasePaidStorageWalletOperation } from './increase-paid-storage-operation';\nimport { WalletOperation } from './operation';\nimport { OriginationWalletOperation } from './origination-operation';\nimport { TransactionWalletOperation } from './transaction-operation';\nexport declare function timeoutAfter(timeoutMillisec: number): (source: Observable) => Observable;\nexport declare const createNewPollingBasedHeadObservable: (sharedHeadOb: Observable, context: Context, _scheduler?: SchedulerLike) => Observable;\nexport interface OperationFactoryConfig {\n blockIdentifier?: string;\n}\nexport declare class OperationFactory {\n private context;\n constructor(context: Context);\n private sharedHeadObs;\n private createNewHeadObservable;\n private createPastBlockWalker;\n private createHeadObservableFromConfig;\n createOperation(hash: string, config?: OperationFactoryConfig): Promise;\n createBatchOperation(hash: string, config?: OperationFactoryConfig): Promise;\n createTransactionOperation(hash: string, config?: OperationFactoryConfig): Promise;\n createDelegationOperation(hash: string, config?: OperationFactoryConfig): Promise;\n createOriginationOperation(hash: string, config?: OperationFactoryConfig): Promise;\n createIncreasePaidStorageOperation(hash: string, config?: OperationFactoryConfig): Promise;\n}\n"},{name:"@taquito/wallet/operation.d.ts",dts:"import { BlockResponse, OperationContentsAndResult, OperationResultStatusEnum } from '@taquito/rpc';\nimport { Observable, ReplaySubject } from 'rxjs';\nimport { Context } from '../context';\nimport { Receipt } from './receipt';\nimport { BlockIdentifier } from '../read-provider/interface';\nexport type OperationStatus = 'pending' | 'unknown' | OperationResultStatusEnum;\n/**\n * @description WalletOperation allows to monitor operation inclusion on chains and surface information related to the operation\n */\nexport declare class WalletOperation {\n readonly opHash: string;\n protected readonly context: Context;\n private _newHead$;\n protected _operationResult: ReplaySubject;\n protected _includedInBlock: ReplaySubject;\n protected _included: boolean;\n private lastHead;\n protected newHead$: Observable;\n private confirmed$;\n operationResults(): Promise;\n /**\n * @description Receipt expose the total amount of tezos token burn and spent on fees\n * The promise returned by receipt will resolve only once the transaction is included\n */\n receipt(): Promise;\n /**\n *\n * @param opHash Operation hash\n * @param raw Raw operation that was injected\n * @param context Taquito context allowing access to rpc and signer\n * @throws {InvalidOperationHashError}\n */\n constructor(opHash: string, context: Context, _newHead$: Observable);\n getCurrentConfirmation(): Promise;\n isInCurrentBranch(tipBlockIdentifier?: BlockIdentifier): Promise;\n confirmationObservable(confirmations?: number): Observable<{\n block: BlockResponse;\n expectedConfirmation: number;\n currentConfirmation: number;\n completed: boolean;\n isInCurrentBranch: () => Promise;\n }>;\n /**\n *\n * @param confirmations [0] Number of confirmation to wait for\n */\n confirmation(confirmations?: number): Promise<{\n block: BlockResponse;\n expectedConfirmation: number;\n currentConfirmation: number;\n completed: boolean;\n isInCurrentBranch: () => Promise;\n } | undefined>;\n}\n"},{name:"@taquito/wallet/origination-operation.d.ts",dts:"import { BlockResponse, OperationContentsAndResultOrigination, OperationContentsAndResultReveal } from '@taquito/rpc';\nimport { Observable } from 'rxjs';\nimport { Context } from '../context';\nimport { DefaultWalletType } from '../contract/contract';\nimport { WalletOperation, OperationStatus } from './operation';\nexport declare class OriginationWalletOperation extends WalletOperation {\n readonly opHash: string;\n protected readonly context: Context;\n constructor(opHash: string, context: Context, newHead$: Observable);\n originationOperation(): Promise;\n revealOperation(): Promise;\n status(): Promise;\n contract(): Promise;\n}\n"},{name:"@taquito/wallet/receipt.d.ts",dts:"import { OperationContentsAndResult } from '@taquito/rpc';\nimport BigNumber from 'bignumber.js';\nexport interface Receipt {\n totalFee: BigNumber;\n totalGas: BigNumber;\n totalMilliGas: BigNumber;\n totalStorage: BigNumber;\n totalAllocationBurn: BigNumber;\n totalOriginationBurn: BigNumber;\n totalPaidStorageDiff: BigNumber;\n totalStorageBurn: BigNumber;\n}\nexport declare const receiptFromOperation: (op: OperationContentsAndResult[], { ALLOCATION_BURN, ORIGINATION_BURN }?: {\n ALLOCATION_BURN: number;\n ORIGINATION_BURN: number;\n}) => Receipt;\n"},{name:"@taquito/wallet/transaction-operation.d.ts",dts:"import { WalletOperation, OperationStatus } from './operation';\nimport { Context } from '../context';\nimport { Observable } from 'rxjs';\nimport { BlockResponse, OperationContentsAndResultReveal, OperationContentsAndResultTransaction } from '@taquito/rpc';\nexport declare class TransactionWalletOperation extends WalletOperation {\n readonly opHash: string;\n protected readonly context: Context;\n constructor(opHash: string, context: Context, newHead$: Observable);\n revealOperation(): Promise;\n transactionOperation(): Promise;\n status(): Promise;\n}\n"},{name:"@taquito/wallet/wallet.d.ts",dts:'import { Context } from \'../context\';\nimport { ContractAbstraction, ContractStorageType, DefaultWalletType, SendParams } from \'../contract\';\nimport { ContractMethod } from \'../contract/contract-methods/contract-method-flat-param\';\nimport { ContractMethodObject } from \'../contract/contract-methods/contract-method-object-param\';\nimport { OpKind, withKind } from \'../operations/types\';\nimport { OriginationWalletOperation } from \'./origination-operation\';\nimport { WalletDelegateParams, WalletFailingNoopParams, WalletIncreasePaidStorageParams, WalletOriginateParams, WalletProvider, WalletTransferParams, WalletStakeParams, WalletUnstakeParams, WalletFinalizeUnstakeParams } from \'./interface\';\nexport interface PKHOption {\n forceRefetch?: boolean;\n}\nexport type WalletParamsWithKind = withKind | withKind | withKind | withKind;\nexport declare class WalletOperationBatch {\n private walletProvider;\n private context;\n private operations;\n constructor(walletProvider: WalletProvider, context: Context);\n /**\n * @description Add a transaction operation to the batch\n * @param params Transfer operation parameter\n */\n withTransfer(params: WalletTransferParams): this;\n /**\n * @description Add a contract call to the batch\n * @param params Call a contract method\n * @param options Generic operation parameters\n */\n withContractCall(params: ContractMethod | ContractMethodObject, options?: Partial): this;\n /**\n * @description Add a delegation operation to the batch\n * @param params Delegation operation parameter\n */\n withDelegation(params: WalletDelegateParams): this;\n /**\n * @description Add an origination operation to the batch\n * @param params Origination operation parameter\n */\n withOrigination(params: WalletOriginateParams>): this;\n /**\n * @description Add an IncreasePaidStorage operation to the batch\n * @param param IncreasePaidStorage operation parameter\n */\n withIncreasePaidStorage(params: WalletIncreasePaidStorageParams): this;\n private mapOperation;\n /**\n * @description Add a group operation to the batch. Operation will be applied in the order they are in the params array\n * @param params Operations parameter\n * @throws {@link InvalidOperationKindError}\n */\n with(params: WalletParamsWithKind[]): this;\n /**\n * @description Submit batch operation to wallet\n */\n send(): Promise;\n}\nexport declare class Wallet {\n private context;\n constructor(context: Context);\n private get walletProvider();\n private _pkh?;\n private _pk?;\n /**\n * @description Retrieve the PKH of the account that is currently in use by the wallet\n * @param option Option to use while fetching the PKH.\n * If forceRefetch is specified the wallet provider implementation will refetch the PKH from the wallet\n */\n pkh({ forceRefetch }?: PKHOption): Promise;\n /**\n * @description Retrieve the PK of the account that is currently in use by the wallet\n * @param option Option to use while fetching the PK.\n * If forceRefetch is specified the wallet provider implementation will refetch the PK from the wallet\n */\n pk({ forceRefetch }?: PKHOption): Promise;\n private walletCommand;\n /**\n * @description Originate a new contract according to the script in parameters.\n * @returns a OriginationWalletOperation promise object when followed by .send()\n * @param originateParams Originate operation parameter\n */\n originate(params: WalletOriginateParams>): {\n send: () => Promise>;\n };\n /**\n * @description Set the delegate for a contract.\n * @returns a WalletDelegateParams promise object when followed by .send()\n * @param delegateParams operation parameter\n */\n setDelegate(params: WalletDelegateParams): {\n send: () => Promise;\n };\n /**\n * @description failing_noop operation that is guaranteed to fail. DISCLAIMER: Not all wallets support signing failing_noop operations.\n * @returns Signature for a failing_noop\n * @param params operation parameter\n */\n signFailingNoop(params: WalletFailingNoopParams): Promise<{\n signature: string;\n bytes: string;\n signedContent: {\n branch: string;\n contents: {\n kind: OpKind;\n arbitrary: string;\n }[];\n };\n }>;\n /**\n * @description Register the current address as delegate.\n * @returns a DelegationWalletOperation promise object when followed by .send()\n */\n registerDelegate(): {\n send: () => Promise;\n };\n /**\n * @description Transfer tezos tokens from current address to a specific address or call a smart contract.\n * @returns a TransactionWalletOperation promise object when followed by .send()\n * @param params operation parameter\n */\n transfer(params: WalletTransferParams): {\n send: () => Promise;\n };\n /**\n * @description Stake a given amount for the source address\n * @returns a TransactionWalletOperation promise object when followed by .send()\n * @param Stake pseudo-operation parameter\n */\n stake(params: WalletStakeParams): {\n send: () => Promise;\n };\n /**\n * @description Unstake the given amount. If "everything" is given as amount, unstakes everything from the staking balance.\n * Unstaked tez remains frozen for a set amount of cycles (the slashing period) after the operation. Once this period is over,\n * the operation "finalize unstake" must be called for the funds to appear in the liquid balance.\n * @returns a TransactionWalletOperation promise object when followed by .send()\n * @param Unstake pseudo-operation parameter\n */\n unstake(params: WalletUnstakeParams): {\n send: () => Promise;\n };\n /**\n * @description Transfer all the finalizable unstaked funds of the source to their liquid balance\n * @returns a TransactionWalletOperation promise object when followed by .send()\n * @param Finalize_unstake pseudo-operation parameter\n */\n finalizeUnstake(params: WalletFinalizeUnstakeParams): {\n send: () => Promise;\n };\n /**\n * @description Increase the paid storage of a smart contract.\n * @returns a IncreasePaidStorageWalletOperation promise object when followed by .send()\n * @param params operation parameter\n */\n increasePaidStorage(params: WalletIncreasePaidStorageParams): {\n send: () => Promise;\n };\n /**\n * @description Create a batch of operation\n * @returns A batch object from which we can add more operation or send a command to the wallet to execute the batch\n * @param params List of operation to initialize the batch with\n */\n batch(params?: Parameters[0]): WalletOperationBatch;\n /**\n * @description Create an smart contract abstraction for the address specified. Calling entrypoints with the returned\n * smart contract abstraction will leverage the wallet provider to make smart contract calls\n * @param address Smart contract address\n * @throws {@link InvalidContractAddressError} If the contract address is not valid\n */\n at>(address: string, contractAbstractionComposer?: (abs: ContractAbstraction, context: Context) => T): Promise;\n /**\n * @deprecated Deprecated in favor of {@link Wallet.pk} will be removed in v19.1\n * @description Retrieve the PK of the account that is currently in use by the wallet\n */\n getPK(): Promise;\n}\n'},{name:"@taquito/constants.d.ts",dts:'/**\n * @deprecated default reveal gasLimit please use getRevealGasLimit(address) instead, removing hardcoded gasLimit of delegation, origination and transfer\n */\nexport declare const DEFAULT_GAS_LIMIT: {\n DELEGATION: number;\n ORIGINATION: number;\n TRANSFER: number;\n REVEAL_TZ1: number;\n REVEAL_TZ2: number;\n REVEAL_TZ3: number;\n REVEAL_TZ4: number;\n};\n/**\n * @deprecated default reveal fee please use getRevealFee(address) instead, removing hardcoded fee of delegation, origination and transfer\n */\nexport declare const DEFAULT_FEE: {\n DELEGATION: number;\n ORIGINATION: number;\n TRANSFER: number;\n REVEAL: number;\n};\n/**\n * @deprecated default reveal storageLimit please use REVEAL_STORAGE_LIMIT instead, removing hardcoded storageLimit of delegation, origination and transfer\n */\nexport declare const DEFAULT_STORAGE_LIMIT: {\n DELEGATION: number;\n ORIGINATION: number;\n TRANSFER: number;\n REVEAL: number;\n};\nexport declare const REVEAL_STORAGE_LIMIT = 0;\nexport declare const ORIGINATION_SIZE = 257;\nexport declare const COST_PER_BYTE = 250;\nexport declare enum Protocols {\n Pt24m4xi = "Pt24m4xiPbLDhVgVfABUjirbmda3yohdN82Sp9FeuAXJ4eV9otd",\n PsBABY5H = "PsBABY5HQTSkA4297zNHfsZNKtxULfL18y95qb3m53QJiXGmrbU",\n PsBabyM1 = "PsBabyM1eUXZseaJdmXFApDSBqj8YBfwELoxZHHW77EMcAbbwAS",\n PsCARTHA = "PsCARTHAGazKbHtnKfLzQg3kms52kSRpgnDY982a9oYsSXRLQEb",\n PsDELPH1 = "PsDELPH1Kxsxt8f9eWbxQeRxkjfbxoqM52jvs5Y5fBxWWh4ifpo",\n PtEdo2Zk = "PtEdo2ZkT9oKpimTah6x2embF25oss54njMuPzkJTEi5RqfdZFA",\n PsFLorena = "PsFLorenaUUuikDWvMDr6fGBRG8kt3e3D3fHoXK1j1BFRxeSH4i",\n PtGRANADs = "PtGRANADsDU8R9daYKAgWnQYAJ64omN1o3KMGVCykShA97vQbvV",\n PtHangz2 = "PtHangz2aRngywmSRGGvrcTyMbbdpWdpFKuS4uMWxg2RaH9i1qx",\n PsiThaCa = "PsiThaCaT47Zboaw71QWScM8sXeMM7bbQFncK9FLqYc6EKdpjVP",\n Psithaca2 = "Psithaca2MLRFYargivpo7YvUr7wUDqyxrdhC5CQq78mRvimz6A",\n PtJakart2 = "PtJakart2xVj7pYXJBXrqHgd82rdkLey5ZeeGwDgPp9rhQUbSqY",\n PtKathman = "PtKathmankSpLLDALzWw7CGD2j2MtyveTwboEYokqUCP4a1LxMg",\n PtLimaPtL = "PtLimaPtLMwfNinJi9rCfDPWea8dFgTZ1MeJ9f1m2SRic6ayiwW",\n PtMumbaii = "PtMumbaiiFFEGbew1rRjzSPyzRbA51Tm3RVZL5suHPxSZYDhCEc",\n PtMumbai2 = "PtMumbai2TmsJHNGRkD8v8YDbtao7BLUC3wjASn1inAKLFCjaH1",\n PtNairobi = "PtNairobiyssHuh87hEhfVBGCVrK3WnS8Z2FT4ymB5tAa4r1nQf",\n ProxfordY = "ProxfordYmVfjWnRcgjWH36fW6PArwqykTFzotUxRs6gmTcZDuH",\n PtParisBx = "PtParisBxoLz5gzMmn3d9WBQNoPSZakgnkMC2VNuQ3KXfUtUQeZ",\n PsParisCZ = "PsParisCZo7KAh1Z1smVd9ZMZ1HHn5gkzbM94V3PLCpknFWhUAi",\n ProtoALpha = "ProtoALphaALphaALphaALphaALphaALphaALphaALphaDdp3zK"\n}\nexport declare const protocols: {\n \'004\': Protocols[];\n \'005\': Protocols[];\n \'006\': Protocols[];\n \'007\': Protocols[];\n \'008\': Protocols[];\n \'009\': Protocols[];\n \'010\': Protocols[];\n \'011\': Protocols[];\n \'012\': Protocols[];\n \'013\': Protocols[];\n \'014\': Protocols[];\n \'015\': Protocols[];\n \'016\': Protocols[];\n \'017\': Protocols[];\n \'019\': Protocols[];\n \'020\': Protocols[];\n \'021\': Protocols[];\n};\nexport declare enum ChainIds {\n MAINNET = "NetXdQprcVkpaWU",\n CARTHAGENET = "NetXjD3HPJJjmcd",\n DELPHINET = "NetXm8tYqnMWky1",\n EDONET = "NetXSgo1ZT2DRUG",\n FLORENCENET = "NetXxkAx4woPLyu",\n GRANADANET = "NetXz969SFaFn8k",\n HANGZHOUNET = "NetXZSsxBpMQeAT",\n ITHACANET = "NetXbhmtAbMukLc",\n ITHACANET2 = "NetXnHfVqm9iesp",\n JAKARTANET2 = "NetXLH1uAxK7CCh",\n KATHMANDUNET = "NetXazhm4yetmff",\n LIMANET = "NetXizpkH94bocH",\n MUMBAINET = "NetXQw6nWSnrJ5t",\n MUMBAINET2 = "NetXgbcrNtXD2yA",\n NAIROBINET = "NetXyuzvDo2Ugzb",\n OXFORDNET2 = "NetXxWsskGahzQB",\n PARISBNET = "NetXo8SqH1c38SS",\n PARISCNET = "NetXXWAHLEvre9b"\n}\nexport declare const getRevealGasLimit: (address: string) => number;\nexport declare const getRevealFee: (address: string) => number;\nexport declare const getRevealFeeInternal: (address: string) => number;\n'},{name:"@taquito/context.d.ts",dts:"import { RpcClientInterface } from '@taquito/rpc';\nimport { Protocols } from './constants';\nimport { Forger } from '@taquito/local-forging';\nimport { Injector } from './injector/interface';\nimport { Signer } from './signer/interface';\nimport { OperationFactory } from './wallet/operation-factory';\nimport { RpcTzProvider } from './tz/rpc-tz-provider';\nimport { RPCEstimateProvider } from './estimate/rpc-estimate-provider';\nimport { RpcContractProvider } from './contract/rpc-contract-provider';\nimport { RPCBatchProvider } from './batch/rpc-batch-provider';\nimport { Wallet, WalletProvider } from './wallet';\nimport { ParserProvider } from './parser/interface';\nimport { Packer } from './packer/interface';\nimport { BehaviorSubject } from 'rxjs';\nimport { GlobalConstantsProvider } from './global-constants/interface-global-constants-provider';\nimport { TzReadProvider } from './read-provider/interface';\nimport { SubscribeProvider } from './subscribe/interface';\nimport { PrepareProvider } from './prepare/prepare-provider';\nexport interface TaquitoProvider> {\n new (context: Context, ...rest: K): T;\n}\nexport interface ConfigConfirmation {\n confirmationPollingTimeoutSecond: number;\n defaultConfirmationCount: number;\n}\nexport declare const defaultConfigConfirmation: ConfigConfirmation;\n/**\n * @description Encapsulate common service used throughout different part of the library\n */\nexport declare class Context {\n private _rpc;\n private _signer;\n private _proto?;\n readonly _config: BehaviorSubject<{\n confirmationPollingTimeoutSecond: number;\n defaultConfirmationCount: number;\n }>;\n private _rpcClient;\n private _forger;\n private _parser;\n private _injector;\n private _walletProvider;\n readonly operationFactory: OperationFactory;\n private _packer;\n private providerDecorator;\n private _globalConstantsProvider;\n private _readProvider;\n private _stream;\n readonly tz: RpcTzProvider;\n readonly estimate: RPCEstimateProvider;\n readonly contract: RpcContractProvider;\n readonly prepare: PrepareProvider;\n readonly batch: RPCBatchProvider;\n readonly wallet: Wallet;\n constructor(_rpc: RpcClientInterface | string, _signer?: Signer, _proto?: Protocols | undefined, _config?: BehaviorSubject<{\n confirmationPollingTimeoutSecond: number;\n defaultConfirmationCount: number;\n }>, forger?: Forger, injector?: Injector, packer?: Packer, wallet?: WalletProvider, parser?: ParserProvider, globalConstantsProvider?: GlobalConstantsProvider, readProvider?: TzReadProvider, stream?: SubscribeProvider);\n get config(): ConfigConfirmation;\n set config(value: ConfigConfirmation);\n setPartialConfig(value: Partial): void;\n get rpc(): RpcClientInterface;\n set rpc(value: RpcClientInterface);\n get injector(): Injector;\n set injector(value: Injector);\n get forger(): Forger;\n set forger(value: Forger);\n get signer(): Signer;\n set signer(value: Signer);\n get walletProvider(): WalletProvider;\n set walletProvider(value: WalletProvider);\n set proto(value: Protocols | undefined);\n get proto(): Protocols | undefined;\n get parser(): ParserProvider;\n set parser(value: ParserProvider);\n get packer(): Packer;\n set packer(value: Packer);\n get globalConstantsProvider(): GlobalConstantsProvider;\n set globalConstantsProvider(value: GlobalConstantsProvider);\n get readProvider(): TzReadProvider;\n set readProvider(value: TzReadProvider);\n get stream(): SubscribeProvider;\n set stream(value: SubscribeProvider);\n isAnyProtocolActive(protocol?: string[]): Promise;\n isAnySignerConfigured(): boolean;\n /**\n * @description Create a copy of the current context. Useful when you have long running operation and you do not want a context change to affect the operation\n */\n clone(): Context;\n /**\n * @description Allows extensions set on the TezosToolkit to inject logic into the context\n */\n registerProviderDecorator(fx: (context: Context) => Context): void;\n /**\n * @description Applies the decorators on a cloned instance of the context and returned this cloned instance.\n * The decorators are functions that inject logic into the context.\n * They are provided by the extensions set on the TezosToolkit by calling the registerProviderDecorator method.\n */\n withExtensions: () => Context;\n}\n"},{name:"@taquito/errors.d.ts",dts:"import { ParameterValidationError, RpcError, NetworkError } from '@taquito/core';\n/**\n * @category Error\n * @description Error that indicates invalid confirmation count has been passed or configured\n */\nexport declare class InvalidConfirmationCountError extends ParameterValidationError {\n readonly invalidConfirmations: number;\n constructor(invalidConfirmations: number);\n}\n/**\n * @category Error\n * @description Error that indicates that confirmation polling timed out\n */\nexport declare class ConfirmationTimeoutError extends NetworkError {\n readonly message: string;\n constructor(message: string);\n}\n/**\n * @category Error\n * @description Error that indicates an error being returned from the RPC response\n */\nexport declare class RPCResponseError extends RpcError {\n readonly message: string;\n readonly cause?: any;\n constructor(message: string, cause?: any);\n}\n"},{name:"@taquito/provider.d.ts",dts:'import { OperationContentsAndResult, RPCRunOperationParam, RPCSimulateOperationParam, RpcClientInterface } from \'@taquito/rpc\';\nimport { Context } from \'./context\';\nimport { ForgedBytes, ParamsWithKind, RPCOperation } from \'./operations/types\';\nimport { PreparedOperation } from \'./prepare\';\nimport { Estimate } from \'./estimate\';\nexport declare abstract class Provider {\n protected context: Context;\n get rpc(): RpcClientInterface;\n get signer(): import("./taquito").Signer;\n constructor(context: Context);\n protected forge({ opOb: { branch, contents, protocol }, counter }: PreparedOperation): Promise<{\n opbytes: string;\n opOb: {\n branch: string;\n contents: import("@taquito/rpc").OperationContents[];\n protocol: string;\n };\n counter: number;\n }>;\n protected estimate({ fee, gasLimit, storageLimit, ...rest }: T, estimator: (param: T) => Promise): Promise<{\n fee: number | undefined;\n gasLimit: number | undefined;\n storageLimit: number | undefined;\n }>;\n getRPCOp(param: ParamsWithKind): Promise;\n protected runOperation(op: RPCRunOperationParam): Promise<{\n opResponse: import("@taquito/rpc").PreapplyResponse;\n op: RPCRunOperationParam;\n context: Context;\n }>;\n protected simulate(op: RPCSimulateOperationParam): Promise<{\n opResponse: import("@taquito/rpc").PreapplyResponse;\n op: RPCSimulateOperationParam;\n context: Context;\n }>;\n protected isRevealOpNeeded(op: RPCOperation[] | ParamsWithKind[], pkh: string): Promise;\n protected isAccountRevealRequired(publicKeyHash: string): Promise;\n protected isRevealRequiredForOpType(op: RPCOperation[] | ParamsWithKind[]): boolean;\n protected signAndInject(forgedBytes: ForgedBytes): Promise<{\n hash: string;\n forgedBytes: ForgedBytes;\n opResponse: OperationContentsAndResult[];\n context: Context;\n }>;\n}\n'},{name:"@taquito/taquito.d.ts",dts:"/**\n * @packageDocumentation\n * @module @taquito/taquito\n */\nimport { RpcClientInterface } from '@taquito/rpc';\nimport { Forger } from '@taquito/local-forging';\nimport { RPCBatchProvider } from './batch/rpc-batch-provider';\nimport { Protocols } from './constants';\nimport { ConfigConfirmation, TaquitoProvider } from './context';\nimport { ContractProvider } from './contract/interface';\nimport { Extension } from './extension/extension';\nimport { format } from '@taquito/utils';\nimport { GlobalConstantsProvider } from './global-constants/interface-global-constants-provider';\nimport { Packer } from './packer/interface';\nimport { TzReadProvider } from './read-provider/interface';\nimport { PreparationProvider } from './prepare/interface';\nimport { Signer } from './signer/interface';\nimport { SubscribeProvider } from './subscribe/interface';\nimport { TzProvider } from './tz/interface';\nimport { Wallet, WalletProvider } from './wallet';\nimport { OperationFactory } from './wallet/operation-factory';\nimport { EstimationProvider } from './estimate/estimate-provider-interface';\nimport { ParserProvider } from './parser/interface';\nimport { Injector } from './injector/interface';\nimport { FieldNumberingStrategy } from '@taquito/michelson-encoder';\nexport { FieldNumberingStrategy, Token, MichelsonMap, UnitValue } from '@taquito/michelson-encoder';\nexport { Forger, ForgeParams, ForgeResponse } from '@taquito/local-forging';\nexport * from './constants';\nexport * from './context';\nexport { TaquitoProvider } from './context';\nexport * from './contract';\nexport * from './contract/big-map';\nexport { CompositeForger } from './forger/composite-forger';\nexport { RpcForger } from './forger/rpc-forger';\nexport * from './operations';\nexport { OperationBatch } from './batch/rpc-batch-provider';\nexport * from './signer/interface';\nexport * from './subscribe/interface';\nexport { SubscribeProvider } from './subscribe/interface';\nexport { PollingSubscribeProvider } from './subscribe/polling-subcribe-provider';\nexport { ObservableSubscription } from './subscribe/observable-subscription';\nexport * from './tz/interface';\nexport * from './wallet';\nexport { Extension } from './extension/extension';\nexport * from './injector/interface';\nexport * from './injector/rpc-injector';\nexport * from './parser/interface';\nexport * from './parser/michel-codec-parser';\nexport * from './parser/noop-parser';\nexport * from './packer/interface';\nexport * from './packer/michel-codec-packer';\nexport * from './packer/rpc-packer';\nexport * from './global-constants/default-global-constants-provider';\nexport * from './global-constants/errors';\nexport * from './global-constants/interface-global-constants-provider';\nexport { BigMapQuery, SaplingStateQuery, BlockIdentifier, TzReadProvider, } from './read-provider/interface';\nexport { RpcReadAdapter } from './read-provider/rpc-read-adapter';\nexport * from './estimate';\nexport { TaquitoLocalForger } from './forger/taquito-local-forger';\nexport * from './prepare';\nexport interface SetProviderOptions {\n forger?: Forger;\n wallet?: WalletProvider;\n rpc?: string | RpcClientInterface;\n readProvider?: TzReadProvider;\n stream?: string | SubscribeProvider;\n signer?: Signer;\n protocol?: Protocols;\n config?: Partial;\n packer?: Packer;\n globalConstantsProvider?: GlobalConstantsProvider;\n parserProvider?: ParserProvider;\n injectorProvider?: Injector;\n}\nexport interface VersionInfo {\n commitHash: string;\n version: string;\n}\n/**\n * @description Facade class that surfaces all of the libraries capability and allow it's configuration\n *\n * @param _rpc The RPC server to use\n */\nexport declare class TezosToolkit {\n private _rpc;\n private _options;\n private _rpcClient;\n private _wallet;\n private _context;\n /**\n * @deprecated TezosToolkit.batch has been deprecated in favor of TezosToolkit.contract.batch\n *\n */\n batch: RPCBatchProvider['batch'];\n readonly format: typeof format;\n constructor(_rpc: RpcClientInterface | string);\n /**\n * @description Sets configuration on the Tezos Taquito instance. Allows user to choose which signer, rpc client, rpc url, forger and so forth\n *\n * @param options rpc url or rpcClient to use to interact with the Tezos network\n *\n * @example Tezos.setProvider({rpc: 'https://mainnet.ecadinfra.com/', signer: new InMemorySigner.fromSecretKey(\u201cedsk...\u201d)})\n * @example Tezos.setProvider({ config: { confirmationPollingTimeoutSecond: 300 }})\n *\n */\n setProvider({ rpc, stream, signer, protocol, config, forger, wallet, packer, globalConstantsProvider, readProvider, parserProvider, injectorProvider, }: SetProviderOptions): void;\n /**\n * @description Sets signer provider on the Tezos Taquito instance.\n *\n * @param options signer to use to interact with the Tezos network\n *\n * @example Tezos.setSignerProvider(new InMemorySigner.fromSecretKey('edsk...'))\n *\n */\n setSignerProvider(signer?: SetProviderOptions['signer']): void;\n /**\n * @description Sets rpc provider on the Tezos Taquito instance\n *\n * @param options rpc url or rpcClient to use to interact with the Tezos network\n *\n * @example Tezos.setRpcProvider('https://mainnet.ecadinfra.com/')\n *\n */\n setRpcProvider(rpc?: SetProviderOptions['rpc']): void;\n /**\n * @description Sets forger provider on the Tezos Taquito instance\n * The `LocalForger` from `@taquito/local-forging` is set by default.\n *\n * @param options forger to use to interact with the Tezos network\n *\n * @example Tezos.setForgerProvider(this.getFactory(RpcForger)())\n *\n */\n setForgerProvider(forger?: SetProviderOptions['forger']): void;\n /**\n * @description Sets stream provider on the Tezos Taquito instance\n *\n * @param options stream to use to interact with the Tezos network\n *\n * @example Tezos.setStreamProvider(...)\n *\n */\n setStreamProvider(stream?: SetProviderOptions['stream']): void;\n /**\n * @description Sets wallet provider on the Tezos Taquito instance\n *\n * @param options wallet to use to interact with the Tezos network\n *\n * @example Tezos.setWalletProvider(...)\n *\n */\n setWalletProvider(wallet?: SetProviderOptions['wallet']): void;\n /**\n * @description Sets Packer provider on the Tezos Taquito instance\n *\n * @param options packer to use to interact with the Tezos network\n *\n * @example Tezos.setPackerProvider(new MichelCodecPacker())\n *\n */\n setPackerProvider(packer?: SetProviderOptions['packer']): void;\n /**\n * @description Sets global constants provider on the Tezos Taquito instance\n *\n * @param options globalConstantsProvider to use to interact with the Tezos network\n *\n * @example\n * ```\n * const globalConst = new DefaultGlobalConstantsProvider();\n * globalConst.loadGlobalConstant({\n * \"expruu5BTdW7ajqJ9XPTF3kgcV78pRiaBW3Gq31mgp3WSYjjUBYxre\": { prim: \"int\" },\n * // ...\n * })\n * Tezos.setGlobalConstantsProvider(globalConst);\n * ```\n *\n */\n setGlobalConstantsProvider(globalConstantsProvider?: SetProviderOptions['globalConstantsProvider']): void;\n /**\n * @description Sets read provider on the Tezos Taquito instance\n * By default reads are done from the RPC usign the RpcReadAdapter class, this can be overridden to read from an indexer that implements the TzReadProvider interface\n *\n * @param options TzReadProvider to use to interact with the Tezos network\n *\n */\n setReadProvider(readProvider?: SetProviderOptions['readProvider']): void;\n /**\n * @description Sets parser provider on the Tezos Taquito instance\n *\n * @param options parserProvider to use to interact with the Tezos network\n *\n */\n setParserProvider(parserProvider?: SetProviderOptions['parserProvider']): void;\n /**\n * @description Sets injector provider on the Tezos Taquito instance\n *\n * @param options Injector to use to interact with the Tezos network by default RpcInjector\n *\n */\n setInjectorProvider(injectorProvider?: SetProviderOptions['injectorProvider']): void;\n /**\n * @description Sets the strategy used for field numbering in Token execute/encode/decode to convert Michelson values to/from javascript objects\n * @param strategy a value of type FieldNumberingStrategy that controls how field numbers are calculated\n */\n setFieldNumberingStrategy(strategy: FieldNumberingStrategy): void;\n /**\n * @description Provide access to tezos account management\n */\n get tz(): TzProvider;\n /**\n * @description Provide access to smart contract utilities\n */\n get contract(): ContractProvider;\n /**\n * @description Provide access to tezos operation preparation utilities\n */\n get prepare(): PreparationProvider;\n get wallet(): Wallet;\n get operation(): OperationFactory;\n /**\n * @description Provide access to operation estimation utilities\n */\n get estimate(): EstimationProvider;\n /**\n * @description Provide access to streaming utilities backed by an streamer implementation\n */\n get stream(): SubscribeProvider;\n /**\n * @description Provide access to the currently used rpc client\n */\n get rpc(): RpcClientInterface;\n /**\n * @description Provide access to the currently used signer\n */\n get signer(): Signer;\n /**\n * @description Provide access to the currently used globalConstantsProvider\n */\n get globalConstants(): GlobalConstantsProvider;\n /**\n * @description Allow to add a module to the TezosToolkit instance. This method adds the appropriate Providers(s) required by the module to the internal context.\n *\n * @param module extension to add to the TezosToolkit instance\n *\n * @example Tezos.addExtension(new Tzip16Module());\n */\n addExtension(module: Extension | Extension[]): void;\n getFactory>(ctor: TaquitoProvider): (...args: K) => T;\n /**\n * @description Gets an object containing the version of Taquito library and git sha of the commit this library is compiled from\n */\n getVersionInfo(): VersionInfo;\n}\n"},{name:"@taquito/version.d.ts",dts:"export declare const VERSION: {\n commitHash: string;\n version: string;\n};\n"},{name:"@taquito/utils/dist/types/constants.d.ts",dts:'export declare enum Prefix {\n TZ1 = "tz1",\n TZ2 = "tz2",\n TZ3 = "tz3",\n TZ4 = "tz4",\n KT = "KT",\n KT1 = "KT1",\n EDSK2 = "edsk2",\n SPSK = "spsk",\n P2SK = "p2sk",\n EDPK = "edpk",\n SPPK = "sppk",\n P2PK = "p2pk",\n BLPK = "BLpk",\n EDESK = "edesk",\n SPESK = "spesk",\n P2ESK = "p2esk",\n EDSK = "edsk",\n EDSIG = "edsig",\n SPSIG = "spsig",\n P2SIG = "p2sig",\n SIG = "sig",\n NET = "Net",\n NCE = "nce",\n B = "B",\n O = "o",\n LO = "Lo",\n LLO = "LLo",\n P = "P",\n CO = "Co",\n ID = "id",\n EXPR = "expr",\n TZ = "TZ",\n VH = "vh",\n SASK = "sask",\n ZET1 = "zet1",\n SR1 = "sr1",\n SRC1 = "src1",\n SH = "sh"\n}\nexport declare const prefix: {\n tz1: Uint8Array;\n tz2: Uint8Array;\n tz3: Uint8Array;\n tz4: Uint8Array;\n KT: Uint8Array;\n KT1: Uint8Array;\n edsk: Uint8Array;\n edsk2: Uint8Array;\n spsk: Uint8Array;\n p2sk: Uint8Array;\n edpk: Uint8Array;\n sppk: Uint8Array;\n p2pk: Uint8Array;\n BLpk: Uint8Array;\n edesk: Uint8Array;\n spesk: Uint8Array;\n p2esk: Uint8Array;\n edsig: Uint8Array;\n spsig: Uint8Array;\n p2sig: Uint8Array;\n sig: Uint8Array;\n Net: Uint8Array;\n nce: Uint8Array;\n B: Uint8Array;\n o: Uint8Array;\n Lo: Uint8Array;\n LLo: Uint8Array;\n P: Uint8Array;\n Co: Uint8Array;\n id: Uint8Array;\n expr: Uint8Array;\n TZ: Uint8Array;\n vh: Uint8Array;\n sask: Uint8Array;\n zet1: Uint8Array;\n sr1: Uint8Array;\n src1: Uint8Array;\n sh: Uint8Array;\n};\nexport declare const prefixLength: {\n [key: string]: number;\n};\n'},{name:"@taquito/utils/dist/types/errors.d.ts",dts:"import { ParameterValidationError, UnsupportedActionError } from '@taquito/core';\nexport { InvalidAddressError, InvalidBlockHashError, InvalidHexStringError, InvalidMessageError, InvalidKeyError, InvalidPublicKeyError, InvalidSignatureError, InvalidContractAddressError, InvalidChainIdError, InvalidKeyHashError, InvalidOperationHashError, InvalidOperationKindError, DeprecationError, ProhibitedActionError, } from '@taquito/core';\n/**\n * @category Error\n * @description Error that indicates invalid protocol hash being passed or used\n */\nexport declare class InvalidProtocolHashError extends ParameterValidationError {\n readonly protocolHash: string;\n readonly errorDetails?: string | undefined;\n name: string;\n constructor(protocolHash: string, errorDetails?: string | undefined);\n}\n/**\n * @category Error\n * @description Error that indicates unable to convert data type from one to another\n */\nexport declare class ValueConversionError extends UnsupportedActionError {\n readonly value: string;\n readonly desiredType: string;\n constructor(value: string, desiredType: string);\n}\n"},{name:"@taquito/utils/dist/types/format.d.ts",dts:"import BigNumber from 'bignumber.js';\ntype Format = 'tz' | 'mtz' | 'mutez';\nexport declare function format(from: Format | undefined, to: Format | undefined, amount: number | string | BigNumber): string | number | BigNumber;\nexport {};\n"},{name:"@taquito/utils/dist/types/taquito-utils.d.ts",dts:"/**\n * @packageDocumentation\n * @module @taquito/utils\n */\n/// \nimport { Buffer } from 'buffer';\nimport BigNumber from 'bignumber.js';\nexport * from './validators';\nexport { VERSION } from './version';\nexport { prefix, Prefix, prefixLength } from './constants';\nexport { verifySignature, validatePkAndExtractPrefix } from './verify-signature';\nexport * from './errors';\nexport { format } from './format';\n/**\n *\n * @description Hash a string using the BLAKE2b algorithm, base58 encode the hash obtained and appends the prefix 'expr' to it\n *\n * @param value Value in hex\n */\nexport declare function encodeExpr(value: string): string;\n/**\n *\n * @description Return the operation hash of a signed operation\n * @param value Value in hex of a signed operation\n */\nexport declare function encodeOpHash(value: string): string;\n/**\n *\n * @description Base58 encode a string or a Uint8Array and append a prefix to it\n *\n * @param value Value to base58 encode\n * @param prefix prefix to append to the encoded string\n */\nexport declare function b58cencode(value: string | Uint8Array, prefix: Uint8Array): string;\n/**\n *\n * @description Base58 decode a string and remove the prefix from it\n *\n * @param value Value to base58 decode\n * @param prefix prefix to remove from the decoded string\n */\nexport declare const b58cdecode: (enc: string, prefixArg: Uint8Array) => Uint8Array;\n/**\n *\n * @description Base58 decode a string with predefined prefix\n *\n * @param value Value to base58 decode\n */\nexport declare function b58decode(payload: string): string;\n/**\n *\n * @description b58 decode a string without predefined prefix\n * @param value\n * @returns string of bytes\n */\nexport declare function b58decodeL2Address(payload: string): string;\n/**\n *\n * @description Base58 encode an address using predefined prefix\n *\n * @param value Address to base58 encode (tz1, tz2, tz3 or KT1)\n * @deprecated use encodeAddress instead, same functionality with a more descriptive name\n */\nexport declare function encodePubKey(value: string): string;\n/**\n *\n * @description Base58 encode an address using predefined prefix (tz1, tz2, tz3, or KT1 without annotation)\n *\n * @param value Address to base58 encode (tz1, tz2, tz3 or KT1). Supports value with or without '0x' prefix\n */\nexport declare function encodeAddress(value: string): string;\n/**\n *\n * @description Base58 encode an address without predefined prefix\n * @param value Address to base58 encode (tz4) hex dec\n * @returns return address\n */\nexport declare function encodeL2Address(value: string): string;\n/**\n *\n * @description Base58 encode a key according to its prefix\n *\n * @param value Key to base58 encode\n */\nexport declare function encodeKey(value: string): string | undefined;\n/**\n *\n * @description Base58 encode a key hash according to its prefix\n *\n * @param value Key hash to base58 encode\n */\nexport declare function encodeKeyHash(value: string): string | undefined;\n/**\n *\n * @description Convert an hex string to a Uint8Array\n *\n * @param hex Hex string to convert\n * @throws {@link ValueConversionError}\n */\nexport declare const hex2buf: (hex: string) => Uint8Array;\n/**\n *\n * @description Merge 2 buffers together\n *\n * @param b1 First buffer\n * @param b2 Second buffer\n */\nexport declare const mergebuf: (b1: Uint8Array, b2: Uint8Array) => Uint8Array;\n/**\n *\n * @description Flatten a michelson json representation to an array\n *\n * @param s michelson json\n */\nexport declare const mic2arr: (s: any) => any;\n/**\n *\n * @description Convert a Uint8Array to an hex string\n *\n * @param buffer Uint8Array to convert\n */\nexport declare const buf2hex: (buffer: Uint8Array) => string;\n/**\n *\n * @description Gets Tezos address (PKH) from Public Key\n *\n * @param publicKey Public Key\n * @returns A string of the Tezos address (PKH) that was derived from the given Public Key\n */\nexport declare const getPkhfromPk: (publicKey: string) => string;\n/**\n *\n * @description Convert a string to bytes\n *\n * @param str String to convert\n * @deprecated use stringToBytes instead, same functionality with a more descriptive name\n */\nexport declare function char2Bytes(str: string): string;\n/**\n *\n * @description Convert a string to a byte string representation\n *\n * @param str String to convert\n */\nexport declare function stringToBytes(str: string): string;\n/**\n *\n * @description Convert bytes to a string\n *\n * @param str Bytes to convert\n * @deprecated use hexStringToBytes instead, same functionality with a more descriptive name\n */\nexport declare function bytes2Char(hex: string): string;\n/**\n *\n * @description Convert byte string representation to string\n *\n * @param str byte string to convert\n */\nexport declare function bytesToString(hex: string): string;\n/**\n *\n * @description Convert hex string/UintArray/Buffer to bytes\n *\n * @param hex String value to convert to bytes\n */\nexport declare function hex2Bytes(hex: string): Buffer;\n/**\n *\n * @description Converts a number or Bignumber to hexadecimal string\n *\n * @param val The value that will be converted to a hexadecimal string value\n */\nexport declare function toHexBuf(val: number | BigNumber, bitLength?: number): Buffer;\nexport declare function numToHexBuffer(val: number | BigNumber, bitLength?: number): Buffer;\n/**\n *\n * @description Converts a number or BigNumber to a padded hexadecimal string\n * @param val The value that will be converted into a padded hexadecimal string value\n * @param bitLength The length of bits\n *\n */\nexport declare function num2PaddedHex(val: number | BigNumber, bitLength?: number): string;\n/**\n *\n * @description Strips the first 2 characters of a hex string (0x)\n *\n * @param hex string to strip prefix from\n */\nexport declare function stripHexPrefix(hex: string): string;\n"},{name:"@taquito/utils/dist/types/validators.d.ts",dts:"import { Prefix } from './constants';\nexport declare enum ValidationResult {\n NO_PREFIX_MATCHED = 0,\n INVALID_CHECKSUM = 1,\n INVALID_LENGTH = 2,\n VALID = 3\n}\nexport declare function isValidPrefix(value: unknown): value is Prefix;\n/**\n * @description Used to check if an address or a contract address is valid.\n *\n * @returns\n * 0 (NO_PREFIX_MATCHED), 1 (INVALID_CHECKSUM), 2 (INVALID_LENGTH) or 3 (VALID).\n *\n * @example\n * ```\n * import { validateAddress } from '@taquito/utils';\n * const pkh = 'tz1L9r8mWmRPndRhuvMCWESLGSVeFzQ9NAWx'\n * const validation = validateAddress(pkh)\n * console.log(validation)\n * // This example return 3 which correspond to VALID\n * ```\n */\nexport declare function validateAddress(value: string): ValidationResult;\n/**\n * @description Used to check if a chain id is valid.\n *\n * @returns\n * 0 (NO_PREFIX_MATCHED), 1 (INVALID_CHECKSUM), 2 (INVALID_LENGTH) or 3 (VALID).\n *\n * @example\n * ```\n * import { validateChain } from '@taquito/utils';\n * const chainId = 'NetXdQprcVkpaWU'\n * const validation = validateChain(chainId)\n * console.log(validation)\n * // This example return 3 which correspond to VALID\n * ```\n */\nexport declare function validateChain(value: string): ValidationResult;\n/**\n * @description Used to check if a contract address is valid.\n *\n * @returns\n * 0 (NO_PREFIX_MATCHED), 1 (INVALID_CHECKSUM), 2 (INVALID_LENGTH) or 3 (VALID).\n *\n * @example\n * ```\n * import { validateContractAddress } from '@taquito/utils';\n * const contractAddress = 'KT1JVErLYTgtY8uGGZ4mso2npTSxqVLDRVbC'\n * const validation = validateContractAddress(contractAddress)\n * console.log(validation)\n * // This example return 3 which correspond to VALID\n * ```\n */\nexport declare function validateContractAddress(value: string): ValidationResult;\n/**\n * @description Used to check if a key hash is valid.\n *\n * @returns\n * 0 (NO_PREFIX_MATCHED), 1 (INVALID_CHECKSUM), 2 (INVALID_LENGTH) or 3 (VALID).\n *\n * @example\n * ```\n * import { validateKeyHash } from '@taquito/utils';\n * const keyHashWithoutPrefix = '1L9r8mWmRPndRhuvMCWESLGSVeFzQ9NAWx'\n * const validation = validateKeyHash(keyHashWithoutPrefix)\n * console.log(validation)\n * // This example return 0 which correspond to NO_PREFIX_MATCHED\n * ```\n */\nexport declare function validateKeyHash(value: string): ValidationResult;\n/**\n * @description Used to check if a signature is valid.\n *\n * @returns\n * 0 (NO_PREFIX_MATCHED), 1 (INVALID_CHECKSUM), 2 (INVALID_LENGTH) or 3 (VALID).\n *\n * @example\n * ```\n * import { validateSignature } from '@taquito/utils';\n * const signature = 'edsigtkpiSSschcaCt9pUVrpNPf7TTcgvgDEDD6NCEHMy8NNQJCGnMfLZzYoQj74yLjo9wx6MPVV29CvVzgi7qEcEUok3k7AuMg'\n * const validation = validateSignature(signature)\n * console.log(validation)\n * // This example return 3 which correspond to VALID\n * ```\n */\nexport declare function validateSignature(value: string): ValidationResult;\n/**\n * @description Used to check if a public key is valid.\n *\n * @returns\n * 0 (NO_PREFIX_MATCHED), 1 (INVALID_CHECKSUM), 2 (INVALID_LENGTH) or 3 (VALID).\n *\n * @example\n * ```\n * import { validatePublicKey } from '@taquito/utils';\n * const publicKey = 'edpkvS5QFv7KRGfa3b87gg9DBpxSm3NpSwnjhUjNBQrRUUR66F7C9g'\n * const validation = validatePublicKey(publicKey)\n * console.log(validation)\n * // This example return 3 which correspond to VALID\n * ```\n */\nexport declare function validatePublicKey(value: string): ValidationResult;\n/**\n * @description Used to check if an operation hash is valid.\n *\n * @returns\n * 0 (NO_PREFIX_MATCHED), 1 (INVALID_CHECKSUM), 2 (INVALID_LENGTH) or 3 (VALID).\n *\n * @example\n * ```\n * import { validateOperation } from '@taquito/utils';\n * const operationHash = 'oo6JPEAy8VuMRGaFuMmLNFFGdJgiaKfnmT1CpHJfKP3Ye5ZahiP'\n * const validation = validateOperation(operationHash)\n * console.log(validation)\n * // This example return 3 which correspond to VALID\n * ```\n */\nexport declare function validateOperation(value: string): ValidationResult;\n/**\n * @description Used to check if a protocol hash is valid.\n *\n * @returns\n * 0 (NO_PREFIX_MATCHED), 1 (INVALID_CHECKSUM), 2 (INVALID_LENGTH) or 3 (VALID).\n *\n * @example\n * ```\n * import { validateProtocol } from '@taquito/utils';\n * const protocolHash = 'PtHangz2aRngywmSRGGvrcTyMbbdpWdpFKuS4uMWxg2RaH9i1qx'\n * const validation = validateProtocol(protocolHash)\n * console.log(validation)\n * // This example return 3 which correspond to VALID\n * ```\n */\nexport declare function validateProtocol(value: string): ValidationResult;\n/**\n * @description Used to check if a block hash is valid.\n *\n * @returns\n * 0 (NO_PREFIX_MATCHED), 1 (INVALID_CHECKSUM), 2 (INVALID_LENGTH) or 3 (VALID).\n *\n * @example\n * ```\n * import { validateBlock } from '@taquito/utils';\n * const blockHash = 'PtHangz2aRngywmSRGGvrcTyMbbdpWdpFKuS4uMWxg2RaH9i1qx'\n * const validation = validateBlock(blockHash)\n * console.log(validation)\n * // This example return 3 which correspond to VALID\n * ```\n */\nexport declare function validateBlock(value: string): ValidationResult;\n/**\n * @description Used to check if a spending key is valid.\n * @returns 0 (NO_PREFIX_MATCHED), 1 (INVALID_CHECKSUM), 2 (INVALID_LENGTH) or 3 (VALID).\n *\n */\nexport declare function validateSpendingKey(value: any): ValidationResult;\nexport declare function invalidDetail(validation: ValidationResult): string;\nexport declare function validateSmartRollupAddress(value: string): ValidationResult;\n"},{name:"@taquito/utils/dist/types/verify-signature.d.ts",dts:"import { Prefix } from './taquito-utils';\ntype PkPrefix = Prefix.EDPK | Prefix.SPPK | Prefix.P2PK | Prefix.BLPK;\n/**\n * @description Verify signature of a payload\n *\n * @param messageBytes The forged message including the magic byte (11 for block,\n * 12 for preattestation/preendorsement, 13 for attestation/endorsement, 3 for generic, 5 for the PACK format of michelson)\n * @param publicKey The public key to verify the signature against\n * @param signature The signature to verify\n * @returns A boolean indicating if the signature matches\n * @throws {@link InvalidPublicKeyError} | {@link InvalidSignatureError} | {@link InvalidMessageError}\n * @example\n * ```\n * const message = '03d0c10e3ed11d7c6e3357f6ef335bab9e8f2bd54d0ce20c482e241191a6e4b8ce6c01be917311d9ac46959750e405d57e268e2ed9e174a80794fbd504e12a4a000141eb3781afed2f69679ff2bbe1c5375950b0e40d00ff000000005e05050505050507070100000024747a32526773486e74516b72794670707352466261313652546656503539684b72654a4d07070100000024747a315a6672455263414c42776d4171776f6e525859565142445439426a4e6a42484a750001';\n * const pk = 'sppk7c7hkPj47yjYFEHX85q46sFJGw6RBrqoVSHwAJAT4e14KJwzoey';\n * const sig = 'spsig1cdLkp1RLgUHAp13aRFkZ6MQDPp7xCnjAExGL3MBSdMDmT6JgQSX8cufyDgJRM3sinFtiCzLbsyP6d365EHoNevxhT47nx'\n *\n * const response = verifySignature(message, pk, sig);\n * ```\n *\n */\nexport declare function verifySignature(messageBytes: string, publicKey: string, signature: string, watermark?: Uint8Array): boolean;\nexport declare function validatePkAndExtractPrefix(publicKey: string): PkPrefix;\nexport {};\n"},{name:"@taquito/utils/dist/types/version.d.ts",dts:"export declare const VERSION: {\n commitHash: string;\n version: string;\n};\n"},{name:"@taquito/utils/node_modules/base-x/src/index.d.ts",dts:"declare function base(ALPHABET: string): base.BaseConverter;\nexport = base;\ndeclare namespace base {\n interface BaseConverter {\n encode(buffer: Uint8Array | number[]): string;\n decodeUnsafe(string: string): Uint8Array | undefined;\n decode(string: string): Uint8Array;\n }\n}\n"},{name:"@taquito/utils/node_modules/bs58/index.d.ts",dts:"import { BaseConverter } from 'base-x';\n\ndeclare const base58: BaseConverter;\n\nexport = base58;\n"},{name:"@taquito/utils/node_modules/bs58check/index.d.ts",dts:'/// \n\ndeclare const bs58check: {\n encode(buffer: Buffer | number[] | Uint8Array): string;\n decodeUnsafe(string: string): Uint8Array | undefined;\n decode(string: string): Uint8Array;\n};\n\nexport = bs58check;\n'}];var s=t(68553),i=t(74848);const p=function(e){let n;const{colorMode:t}=(0,o.G)();return(0,i.jsx)(r.Suspense,{fallback:(0,i.jsx)("div",{children:"Loading"}),children:(0,i.jsx)(s.Ay,{...e,defaultLanguage:"typescript",beforeMount:function(t){n=t,t.editor.defineTheme("vs-dark",{base:"vs-dark",inherit:!0,rules:[{background:"121212"}],colors:{"editor.background":"#121212"}}),t.languages.typescript.typescriptDefaults.setCompilerOptions({target:t.languages.typescript.ScriptTarget.ES2017,allowNonTsExtensions:!0,moduleResolution:t.languages.typescript.ModuleResolutionKind.NodeJs,module:t.languages.typescript.ModuleKind.ESNext,typeRoots:["node_modules/@types"]}),a.forEach((e=>{const n=`file:///node_modules/${e.name}`;t.languages.typescript.typescriptDefaults.addExtraLib(e.dts,n)})),e.editorWillMount&&e.editorWillMount(t)},onMount:function(t){t.setModel(n.editor.createModel(e.value,e.language,n.Uri.parse(`file:///main-${Math.random()}.ts`)))},theme:"dark"===t?"vs-dark":"light"})})}},16864:(e,n,t)=>{"use strict";t.d(n,{A:()=>o});var r=t(96540);const o=function(){if("undefined"==typeof window)return{width:999,height:999};const[e,n]=(0,r.useState)({width:window.innerWidth,height:window.innerHeight});return(0,r.useEffect)((()=>{function e(){n({width:window.innerWidth,height:window.innerHeight})}return window.addEventListener("resize",e),()=>window.removeEventListener("resize",e)}),[]),e}},96486:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>u});var r=t(96540),o=t(46942),a=t.n(o),s=t(27853),i=t(16864);const p="runbox__boR",c="row_BFIh";let l=function(e){return e[e.INIT=0]="INIT",e[e.STARTED=1]="STARTED",e[e.ENDED=2]="ENDED",e}({});var d=t(78478),m=t(67489),g=t(74848);const u=function(){if("undefined"==typeof window)return null;const e=new URLSearchParams(window.location.search),n=e.has("code")?atob(e.get("code")):'import { DAppClient, BeaconEvent } from "@airgap/beacon-sdk";\n\nconst dAppClient = new DAppClient({ name: "Beacon Docs" });\n\n// Listen for all the active account changes\ndAppClient.subscribeToEvent(BeaconEvent.ACTIVE_ACCOUNT_SET, async (account) => {\n // An active account has been set, update the dApp UI\n console.log(BeaconEvent.ACTIVE_ACCOUNT_SET, "triggered:", account);\n});\n\ntry {\n console.log("Requesting permissions...");\n const permissions = await dAppClient.requestPermissions();\n console.log("Got permissions:", permissions.address);\n} catch (error) {\n console.error("Got error:", error);\n}',[o,u]=(0,r.useState)(n),[f,h]=(0,r.useState)(""),[y,T]=(0,r.useState)(l.INIT),P=(0,i.A)(),b=e=>{u(e)},E=100,R={width:P.width,height:200},x={width:.6*P.width,height:P.height-E},O={width:P.width,height:P.height-E-R.height},v={width:(.4-.05)*P.width,height:P.height};return(0,g.jsx)(d.A,{fallback:(0,g.jsx)(g.Fragment,{}),children:()=>{const{DAppClient:e}=t(21291),n=t(76450).A,{copyShareUrl:r,runBeaconCode:i}=t(78952),d=async()=>{h(""),T(l.INIT)};return(0,g.jsxs)(s.A,{title:"Beacon",description:"Beacon Playground",noFooter:!0,children:[(0,g.jsxs)("div",{className:a()(p),children:[(0,g.jsx)("button",{onClick:async()=>{y!==l.STARTED&&(await d(),T(l.STARTED),await i(o,h),T(l.ENDED))},className:"button button--primary margin-bottom--lg margin-right--xs",children:"Run Code"}),(0,g.jsx)("button",{onClick:async()=>{d();const n=new e({name:"Cleanup"});await n.destroy()},className:"button button--secondary margin-bottom--lg margin-right--xs",children:"Reset"}),(0,g.jsx)("button",{onClick:d,className:"button button--secondary margin-bottom--lg margin-right--xs",children:"Clear Output"}),(0,g.jsx)("button",{onClick:()=>{r(o)},className:"button button--secondary margin-bottom--lg margin-right--xs",children:"Share Code (Copy to Clipboard)"})]}),(0,g.jsx)("div",{className:a()(c),children:(0,g.jsxs)(m.A,{fallback:e=>{let{error:n,tryAgain:t}=e;return(0,g.jsxs)("div",{children:[(0,g.jsxs)("p",{children:["This editor crashed because of error: ",n.message,"."]}),(0,g.jsx)("button",{onClick:t,children:"Try Again!"})]})},children:[(0,g.jsx)(n,{...P.width>600?x:R,language:"typescript",value:o,onChange:b,options:{minimap:{enabled:!1},wordWrap:"on"}}),(0,g.jsx)(n,{...P.width>600?v:O,language:"shell",value:f,options:{readOnly:!0,minimap:{enabled:!1},wordWrap:"on"}})]})})]})}})}},78952:(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";__webpack_require__.r(__webpack_exports__),__webpack_require__.d(__webpack_exports__,{copyShareUrl:()=>copyShareUrl,reset:()=>reset,runBeaconCode:()=>runBeaconCode});var _node_modules_beacon_sdk_dist_cjs__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(98455),_node_modules_beacon_sdk_dist_cjs__WEBPACK_IMPORTED_MODULE_0___default=__webpack_require__.n(_node_modules_beacon_sdk_dist_cjs__WEBPACK_IMPORTED_MODULE_0__),typescript__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(58843),typescript__WEBPACK_IMPORTED_MODULE_1___default=__webpack_require__.n(typescript__WEBPACK_IMPORTED_MODULE_1__),_taquito_taquito__WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(10695),_taquito_beacon_wallet__WEBPACK_IMPORTED_MODULE_3__=__webpack_require__(79434),console=__webpack_require__(96763);function replaceAll(e,n,t){return e.split(n).join(t)}const removeImports=e=>{const n=e.split("\n");let t=!0;return n.map((e=>{e.trim().startsWith("import")&&(t=!1);const n=t?e:void 0;return(e.indexOf("@airgap/beacon-sdk")>=0||e.indexOf("@taquito")>=0)&&(t=!0),n})).filter((e=>!!e)).join("\n")},runBeaconCode=(rawCode,setOutput)=>{let code=rawCode,output="";const appendOutput=e=>{output+="\n"+e,setOutput(output.trim())},myLog=function(){for(var e=arguments.length,n=new Array(e),t=0;t"object"==typeof e?JSON.stringify(e,null,2):e)).join(" "))};let runnable;return code=replaceAll(code,"console.log(","progress("),code=removeImports(code),code=typescript__WEBPACK_IMPORTED_MODULE_1__.transpile(`({\n run: async (beacon: any, taquito: any, taquitoWallet: any, progress: any): string => {\n Object.keys(beacon).forEach(key => {\n window[key] = beacon[key]\n })\n Object.keys(taquito).forEach(key => {\n window[key] = taquito[key]\n })\n Object.keys(taquitoWallet).forEach(key => {\n window[key] = taquitoWallet[key]\n })\n return (async () => {\n ${code};\n if (typeof result !== 'undefined') {\n return result\n }\n })()\n })`),new Promise((resolve=>{try{runnable=eval(code),runnable.run(_node_modules_beacon_sdk_dist_cjs__WEBPACK_IMPORTED_MODULE_0__,_taquito_taquito__WEBPACK_IMPORTED_MODULE_2__,_taquito_beacon_wallet__WEBPACK_IMPORTED_MODULE_3__,myLog).then((e=>{e&&appendOutput("Returned:\n"+JSON.stringify(e,null,2)),resolve(e)})).catch((e=>{console.warn(e),appendOutput(JSON.stringify(e,null,2)),resolve(e)}))}catch(e){appendOutput(e),console.error(e),resolve(e)}}))},copyShareUrl=e=>{const n=`https://${window.location.host}/playground?code=${btoa(e)}`;navigator.clipboard.writeText(n).catch((e=>console.error("Failed to copy to url!",e)))},reset=async()=>{const e=new _node_modules_beacon_sdk_dist_cjs__WEBPACK_IMPORTED_MODULE_0__.DAppClient({name:"Cleanup"});await e.destroy()}},89387:e=>{function n(e){var n=new Error("Cannot find module '"+e+"'");throw n.code="MODULE_NOT_FOUND",n}n.keys=()=>[],n.resolve=n,n.id=89387,e.exports=n},99432:()=>{},47790:()=>{},73776:()=>{},15340:()=>{},79838:()=>{},72615:()=>{},84021:()=>{},66247:()=>{},82202:()=>{},18641:()=>{},6732:()=>{},97664:()=>{}}]); \ No newline at end of file diff --git a/assets/js/0e7ff25a.687fd098.js b/assets/js/0e7ff25a.687fd098.js new file mode 100644 index 00000000..9819c326 --- /dev/null +++ b/assets/js/0e7ff25a.687fd098.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkbeacon_docs=self.webpackChunkbeacon_docs||[]).push([[9723],{93715:(e,n,a)=>{a.r(n),a.d(n,{assets:()=>c,contentTitle:()=>l,default:()=>g,frontMatter:()=>r,metadata:()=>u,toc:()=>d});var t=a(74848),i=a(28453),o=a(11470),s=a(19365);const r={title:"Sign Payload"},l=void 0,u={id:"guides/sign-payload",title:"Sign Payload",description:"The SignPayload functionality in Beacon allows developers to sign various types of payloads.",source:"@site/docs/guides/sign-payload.mdx",sourceDirName:"guides",slug:"/guides/sign-payload",permalink:"/guides/sign-payload",draft:!1,unlisted:!1,editUrl:"https://github.com/airgap-it/beacon-docs/edit/main/src/docs/guides/sign-payload.mdx",tags:[],version:"current",frontMatter:{title:"Sign Payload"},sidebar:"docs",previous:{title:"Request Permissions",permalink:"/guides/request-permissions"},next:{title:"Broadcast Request",permalink:"/guides/broadcast-request"}},c={},d=[{value:"HEX Prefixed With 05",id:"hex-prefixed-with-05",level:2},{value:"HEX Prefixed With 03",id:"hex-prefixed-with-03",level:2},{value:"RAW",id:"raw",level:2}];function p(e){const n={a:"a",admonition:"admonition",code:"code",h2:"h2",p:"p",pre:"pre",...(0,i.R)(),...e.components};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)(n.p,{children:["The ",(0,t.jsx)(n.code,{children:"SignPayload"})," functionality in Beacon allows developers to sign various types of payloads.\nThis page provides some examples for signing payloads in different formats: HEX Prefixed with 05, HEX Prefixed with 03, and RAW."]}),"\n",(0,t.jsx)(n.h2,{id:"hex-prefixed-with-05",children:"HEX Prefixed With 05"}),"\n",(0,t.jsxs)(o.A,{groupId:"beaconOrTaquitoSP1",defaultValue:"beacon",values:[{label:"Beacon",value:"beacon"},{label:"Taquito",value:"taquito"}],children:[(0,t.jsx)(s.A,{value:"beacon",children:(0,t.jsx)(n.pre,{children:(0,t.jsx)(n.code,{className:"language-ts",metastring:"live",live:!0,children:'// beacon sign payload micheline\nimport { DAppClient, SigningType } from "@airgap/beacon-sdk";\n\nconst dAppClient = new DAppClient({ name: "Beacon Docs" });\n\nconst response = await dAppClient.requestSignPayload({\n signingType: SigningType.MICHELINE,\n // This hex string needs to be prefixed with 05\n // The following is packed data, it can also be signed by Kukai\n payload: `05010000004254657a6f73205369676e6564204d6573736167653a206d79646170702e636f6d20323032312d30312d31345431353a31363a30345a2048656c6c6f20776f726c6421`,\n});\n\nconsole.log(`Signature: ${response.signature}`);\n'})})}),(0,t.jsx)(s.A,{value:"taquito",children:(0,t.jsx)(n.pre,{children:(0,t.jsx)(n.code,{className:"language-ts",metastring:"live",live:!0,children:'// taquito sign payload micheline\nimport { TezosToolkit } from "@taquito/taquito";\nimport { BeaconWallet } from "@taquito/beacon-wallet";\nimport { SigningType } from "@airgap/beacon-sdk";\n\nconst Tezos = new TezosToolkit("https://mainnet.api.tez.ie");\nconst wallet = new BeaconWallet({ name: "Beacon Docs Taquito" });\n\nTezos.setWalletProvider(wallet);\n\nconst response = await wallet.client.requestSignPayload({\n signingType: SigningType.MICHELINE,\n // This hex string needs to be prefixed with 05\n // The following is packed data, it can also be signed by Kukai\n payload: `05010000004254657a6f73205369676e6564204d6573736167653a206d79646170702e636f6d20323032312d30312d31345431353a31363a30345a2048656c6c6f20776f726c6421`,\n});\n\nconsole.log(`Signature: ${response.signature}`);\n'})})})]}),"\n",(0,t.jsx)(n.h2,{id:"hex-prefixed-with-03",children:"HEX Prefixed With 03"}),"\n",(0,t.jsxs)(o.A,{groupId:"beaconOrTaquitoSP2",defaultValue:"beacon",values:[{label:"Beacon",value:"beacon"},{label:"Taquito",value:"taquito"}],children:[(0,t.jsx)(s.A,{value:"beacon",children:(0,t.jsx)(n.pre,{children:(0,t.jsx)(n.code,{className:"language-ts",metastring:"live",live:!0,children:'// beacon sign payload operation\nimport { DAppClient, SigningType } from "@airgap/beacon-sdk";\n\nconst dAppClient = new DAppClient({ name: "Beacon Docs" });\n\nconst response = await dAppClient.requestSignPayload({\n signingType: SigningType.OPERATION,\n payload: "0300", // This hex string needs to be prefixed with 03\n});\n\nconsole.log(`Signature: ${response.signature}`);\n'})})}),(0,t.jsx)(s.A,{value:"taquito",children:(0,t.jsx)(n.pre,{children:(0,t.jsx)(n.code,{className:"language-ts",metastring:"live",live:!0,children:'// taquito sign payload operation\nimport { TezosToolkit } from "@taquito/taquito";\nimport { BeaconWallet } from "@taquito/beacon-wallet";\nimport { SigningType } from "@airgap/beacon-sdk";\n\nconst Tezos = new TezosToolkit("https://mainnet.api.tez.ie");\nconst wallet = new BeaconWallet({ name: "Beacon Docs Taquito" });\n\nTezos.setWalletProvider(wallet);\n\nconst response = await wallet.client.requestSignPayload({\n signingType: SigningType.OPERATION,\n payload: "0300", // This hex string needs to be prefixed with 03\n});\n\nconsole.log(`Signature: ${response.signature}`);\n'})})})]}),"\n",(0,t.jsx)(n.h2,{id:"raw",children:"RAW"}),"\n",(0,t.jsx)(n.admonition,{type:"warning",children:(0,t.jsxs)(n.p,{children:["Not all wallets support the ",(0,t.jsx)(n.code,{children:"RAW"})," signing type. Additionally, the signatures can be different depending on the wallet that was used. For the preferred way of signing arbitrary data, please check the docs here: ",(0,t.jsx)(n.a,{href:"https://tezostaquito.io/docs/signing/#generating-a-signature-with-beacon-sdk",children:"https://tezostaquito.io/docs/signing/#generating-a-signature-with-beacon-sdk"})]})}),"\n",(0,t.jsxs)(o.A,{groupId:"beaconOrTaquitoSP3",defaultValue:"beacon",values:[{label:"Beacon",value:"beacon"},{label:"Taquito",value:"taquito"}],children:[(0,t.jsx)(s.A,{value:"beacon",children:(0,t.jsx)(n.pre,{children:(0,t.jsx)(n.code,{className:"language-ts",metastring:"live",live:!0,children:'// beacon sign payload raw\nimport { DAppClient, SigningType } from "@airgap/beacon-sdk";\n\nconst dAppClient = new DAppClient({ name: "Beacon Docs" });\n\nconst response = await dAppClient.requestSignPayload({\n signingType: SigningType.RAW,\n payload: "any string that will be signed",\n});\n\nconsole.log(`Signature: ${response.signature}`);\n'})})}),(0,t.jsx)(s.A,{value:"taquito",children:(0,t.jsx)(n.pre,{children:(0,t.jsx)(n.code,{className:"language-ts",metastring:"live",live:!0,children:'// taquito sign payload raw\nimport { TezosToolkit } from "@taquito/taquito";\nimport { BeaconWallet } from "@taquito/beacon-wallet";\nimport { SigningType } from "@airgap/beacon-sdk";\n\nconst Tezos = new TezosToolkit("https://mainnet.api.tez.ie");\nconst wallet = new BeaconWallet({ name: "Beacon Docs Taquito" });\n\nTezos.setWalletProvider(wallet);\n\nconst response = await wallet.client.requestSignPayload({\n signingType: SigningType.RAW,\n payload: "any string that will be signed",\n});\n\nconsole.log(`Signature: ${response.signature}`);\n'})})})]})]})}function g(e={}){const{wrapper:n}={...(0,i.R)(),...e.components};return n?(0,t.jsx)(n,{...e,children:(0,t.jsx)(p,{...e})}):p(e)}},19365:(e,n,a)=>{a.d(n,{A:()=>s});a(96540);var t=a(34164);const i={tabItem:"tabItem_Ymn6"};var o=a(74848);function s(e){let{children:n,hidden:a,className:s}=e;return(0,o.jsx)("div",{role:"tabpanel",className:(0,t.A)(i.tabItem,s),hidden:a,children:n})}},11470:(e,n,a)=>{a.d(n,{A:()=>T});var t=a(96540),i=a(34164),o=a(23104),s=a(56347),r=a(205),l=a(57485),u=a(31682),c=a(70679);function d(e){return t.Children.toArray(e).filter((e=>"\n"!==e)).map((e=>{if(!e||(0,t.isValidElement)(e)&&function(e){const{props:n}=e;return!!n&&"object"==typeof n&&"value"in n}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}function p(e){const{values:n,children:a}=e;return(0,t.useMemo)((()=>{const e=n??function(e){return d(e).map((e=>{let{props:{value:n,label:a,attributes:t,default:i}}=e;return{value:n,label:a,attributes:t,default:i}}))}(a);return function(e){const n=(0,u.XI)(e,((e,n)=>e.value===n.value));if(n.length>0)throw new Error(`Docusaurus error: Duplicate values "${n.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[n,a])}function g(e){let{value:n,tabValues:a}=e;return a.some((e=>e.value===n))}function h(e){let{queryString:n=!1,groupId:a}=e;const i=(0,s.W6)(),o=function(e){let{queryString:n=!1,groupId:a}=e;if("string"==typeof n)return n;if(!1===n)return null;if(!0===n&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return a??null}({queryString:n,groupId:a});return[(0,l.aZ)(o),(0,t.useCallback)((e=>{if(!o)return;const n=new URLSearchParams(i.location.search);n.set(o,e),i.replace({...i.location,search:n.toString()})}),[o,i])]}function f(e){const{defaultValue:n,queryString:a=!1,groupId:i}=e,o=p(e),[s,l]=(0,t.useState)((()=>function(e){let{defaultValue:n,tabValues:a}=e;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(n){if(!g({value:n,tabValues:a}))throw new Error(`Docusaurus error: The has a defaultValue "${n}" but none of its children has the corresponding value. Available values are: ${a.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return n}const t=a.find((e=>e.default))??a[0];if(!t)throw new Error("Unexpected error: 0 tabValues");return t.value}({defaultValue:n,tabValues:o}))),[u,d]=h({queryString:a,groupId:i}),[f,m]=function(e){let{groupId:n}=e;const a=function(e){return e?`docusaurus.tab.${e}`:null}(n),[i,o]=(0,c.Dv)(a);return[i,(0,t.useCallback)((e=>{a&&o.set(e)}),[a,o])]}({groupId:i}),b=(()=>{const e=u??f;return g({value:e,tabValues:o})?e:null})();(0,r.A)((()=>{b&&l(b)}),[b]);return{selectedValue:s,selectValue:(0,t.useCallback)((e=>{if(!g({value:e,tabValues:o}))throw new Error(`Can't select invalid tab value=${e}`);l(e),d(e),m(e)}),[d,m,o]),tabValues:o}}var m=a(92303);const b={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};var v=a(74848);function y(e){let{className:n,block:a,selectedValue:t,selectValue:s,tabValues:r}=e;const l=[],{blockElementScrollPositionUntilNextRender:u}=(0,o.a_)(),c=e=>{const n=e.currentTarget,a=l.indexOf(n),i=r[a].value;i!==t&&(u(n),s(i))},d=e=>{let n=null;switch(e.key){case"Enter":c(e);break;case"ArrowRight":{const a=l.indexOf(e.currentTarget)+1;n=l[a]??l[0];break}case"ArrowLeft":{const a=l.indexOf(e.currentTarget)-1;n=l[a]??l[l.length-1];break}}n?.focus()};return(0,v.jsx)("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,i.A)("tabs",{"tabs--block":a},n),children:r.map((e=>{let{value:n,label:a,attributes:o}=e;return(0,v.jsx)("li",{role:"tab",tabIndex:t===n?0:-1,"aria-selected":t===n,ref:e=>l.push(e),onKeyDown:d,onClick:c,...o,className:(0,i.A)("tabs__item",b.tabItem,o?.className,{"tabs__item--active":t===n}),children:a??n},n)}))})}function x(e){let{lazy:n,children:a,selectedValue:o}=e;const s=(Array.isArray(a)?a:[a]).filter(Boolean);if(n){const e=s.find((e=>e.props.value===o));return e?(0,t.cloneElement)(e,{className:(0,i.A)("margin-top--md",e.props.className)}):null}return(0,v.jsx)("div",{className:"margin-top--md",children:s.map(((e,n)=>(0,t.cloneElement)(e,{key:n,hidden:e.props.value!==o})))})}function w(e){const n=f(e);return(0,v.jsxs)("div",{className:(0,i.A)("tabs-container",b.tabList),children:[(0,v.jsx)(y,{...n,...e}),(0,v.jsx)(x,{...n,...e})]})}function T(e){const n=(0,m.A)();return(0,v.jsx)(w,{...e,children:d(e.children)},String(n))}},28453:(e,n,a)=>{a.d(n,{R:()=>s,x:()=>r});var t=a(96540);const i={},o=t.createContext(i);function s(e){const n=t.useContext(o);return t.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function r(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:s(e.components),t.createElement(o.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/0fd61c0d.94b145bb.js b/assets/js/0fd61c0d.94b145bb.js new file mode 100644 index 00000000..4a4bd9d1 --- /dev/null +++ b/assets/js/0fd61c0d.94b145bb.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkbeacon_docs=self.webpackChunkbeacon_docs||[]).push([[839],{95488:(t,i,e)=>{e.r(i),e.d(i,{assets:()=>l,contentTitle:()=>s,default:()=>p,frontMatter:()=>d,metadata:()=>o,toc:()=>r});var n=e(74848),c=e(28453),a=e(61114);const d={title:"Push Notification"},s=void 0,o={id:"advanced/push-notification",title:"Push Notification",description:"Push Notifications are in beta. There is no wallet that supports it at the moment.",source:"@site/docs/advanced/push-notification.mdx",sourceDirName:"advanced",slug:"/advanced/push-notification",permalink:"/advanced/push-notification",draft:!1,unlisted:!1,editUrl:"https://github.com/airgap-it/beacon-docs/edit/main/src/docs/advanced/push-notification.mdx",tags:[],version:"current",frontMatter:{title:"Push Notification"}},l={},r=[];function g(t){const i={a:"a",admonition:"admonition",img:"img",p:"p",strong:"strong",...(0,c.R)(),...t.components};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(i.admonition,{type:"warning",children:(0,n.jsxs)(i.p,{children:["Push Notifications are in ",(0,n.jsx)(i.strong,{children:"beta"}),". There is no wallet that supports it at the moment."]})}),"\n","\n",(0,n.jsx)(a.A,{chart:"\nsequenceDiagram\n rect rgba(0, 0, 255, .2)\n Note over dApp,Peer: Only for Extensions
Extensions have 200ms to respond\n dApp->>Peer: Ping\n Peer->>dApp: Pong\n end\n rect rgba(0, 0, 255, .2)\n Note over dApp,Peer: dApp sends publicKey to Peer\n dApp->>Peer: PairingRequest\n Note over dApp,Peer: Peer stores the dApp publicKey
Encrypts own publicKey with dApp publicKey
Send back encrypted publicKey\n Peer->>dApp: PairingResponse\n end\n"}),"\n",(0,n.jsx)(i.p,{children:(0,n.jsx)(i.a,{href:"https://mermaid-js.github.io/mermaid-live-editor/#/edit/eyJjb2RlIjoic2VxdWVuY2VEaWFncmFtXG4gICAgcGFydGljaXBhbnQgREFwcFxuICAgIHBhcnRpY2lwYW50IFdhbGxldFxuICAgIHBhcnRpY2lwYW50IFB1c2ggT3JhY2xlXG4gICAgcGFydGljaXBhbnQgV2FsbGV0IEJhY2tlbmRcbiAgICBEQXBwLT4-V2FsbGV0OiAxLiBQZXJtaXNzaW9uIFJlcXVlc3RcbiAgICBXYWxsZXQtPj5QdXNoIE9yYWNsZTogMi4gR2V0IENoYWxsZW5nZVxuICAgIFdhbGxldC0-PlB1c2ggT3JhY2xlOiAzLiBSZWdpc3RlclxuICAgIFdhbGxldC0-PkRBcHA6IDQuIFBlcm1pc3Npb24gUmVzcG9uc2VcbiAgICBEQXBwLT4-UHVzaCBPcmFjbGU6IDUuIFJlcXVlc3QgTm90aWZpY2F0aW9uXG4gICAgUHVzaCBPcmFjbGUtPj5XYWxsZXQgQmFja2VuZDogNi4gTm90aWZ5IGJhY2tlbmRcbiAgICBXYWxsZXQgQmFja2VuZC0-PldhbGxldDogNy4gU2VuZCBQdXNoIG5vdGlmaWNhdGlvblxuIiwibWVybWFpZCI6eyJ0aGVtZSI6ImRlZmF1bHQifSwidXBkYXRlRWRpdG9yIjpmYWxzZX0",children:(0,n.jsx)(i.img,{src:"https://mermaid.ink/img/eyJjb2RlIjoic2VxdWVuY2VEaWFncmFtXG4gICAgcGFydGljaXBhbnQgREFwcFxuICAgIHBhcnRpY2lwYW50IFdhbGxldFxuICAgIHBhcnRpY2lwYW50IFB1c2ggT3JhY2xlXG4gICAgcGFydGljaXBhbnQgV2FsbGV0IEJhY2tlbmRcbiAgICBEQXBwLT4-V2FsbGV0OiAxLiBQZXJtaXNzaW9uIFJlcXVlc3RcbiAgICBXYWxsZXQtPj5QdXNoIE9yYWNsZTogMi4gR2V0IENoYWxsZW5nZVxuICAgIFdhbGxldC0-PlB1c2ggT3JhY2xlOiAzLiBSZWdpc3RlclxuICAgIFdhbGxldC0-PkRBcHA6IDQuIFBlcm1pc3Npb24gUmVzcG9uc2VcbiAgICBEQXBwLT4-UHVzaCBPcmFjbGU6IDUuIFJlcXVlc3QgTm90aWZpY2F0aW9uXG4gICAgUHVzaCBPcmFjbGUtPj5XYWxsZXQgQmFja2VuZDogNi4gTm90aWZ5IGJhY2tlbmRcbiAgICBXYWxsZXQgQmFja2VuZC0-PldhbGxldDogNy4gU2VuZCBQdXNoIG5vdGlmaWNhdGlvblxuIiwibWVybWFpZCI6eyJ0aGVtZSI6ImRlZmF1bHQifSwidXBkYXRlRWRpdG9yIjpmYWxzZX0",alt:""})})})]})}function p(t={}){const{wrapper:i}={...(0,c.R)(),...t.components};return i?(0,n.jsx)(i,{...t,children:(0,n.jsx)(g,{...t})}):g(t)}},61114:(t,i,e)=>{e.d(i,{A:()=>d});var n=e(96540),c=e(22279),a=e(74848);c.A.initialize({startOnLoad:!0});const d=t=>{let{chart:i}=t;return(0,n.useEffect)((()=>{c.A.contentLoaded()}),[]),(0,a.jsx)("div",{className:"mermaid",children:i})}}}]); \ No newline at end of file diff --git a/assets/js/101ac4ba.1f94537f.js b/assets/js/101ac4ba.1f94537f.js new file mode 100644 index 00000000..ed46f616 --- /dev/null +++ b/assets/js/101ac4ba.1f94537f.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkbeacon_docs=self.webpackChunkbeacon_docs||[]).push([[3788],{22704:(e,t,i)=>{i.r(t),i.d(t,{assets:()=>o,contentTitle:()=>r,default:()=>u,frontMatter:()=>a,metadata:()=>l,toc:()=>c});var s=i(74848),n=i(28453);const a={title:"Security Audits",slug:"/security-audits"},r=void 0,l={id:"introduction/security-audit",title:"Security Audits",description:"Beacon SDK has and will be regularly audited by third parties, their reports will be made publicly available.",source:"@site/docs/introduction/security-audit.mdx",sourceDirName:"introduction",slug:"/security-audits",permalink:"/security-audits",draft:!1,unlisted:!1,editUrl:"https://github.com/airgap-it/beacon-docs/edit/main/src/docs/introduction/security-audit.mdx",tags:[],version:"current",frontMatter:{title:"Security Audits",slug:"/security-audits"},sidebar:"docs",previous:{title:"dApps",permalink:"/dapps"},next:{title:"Installation",permalink:"/getting-started/installation"}},o={},c=[{value:"17.09.20 - Beacon SDK Audit by Least Authority",id:"170920---beacon-sdk-audit-by-least-authority",level:2},{value:"Disclosing Security Vulnerabilities",id:"disclosing-security-vulnerabilities",level:2}];function d(e){const t={a:"a",h2:"h2",li:"li",p:"p",ul:"ul",...(0,n.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(t.p,{children:"Beacon SDK has and will be regularly audited by third parties, their reports will be made publicly available."}),"\n",(0,s.jsx)(t.h2,{id:"170920---beacon-sdk-audit-by-least-authority",children:"17.09.20 - Beacon SDK Audit by Least Authority"}),"\n",(0,s.jsx)(t.p,{children:"In collaboration with the AirGap team, Least Authority conducted an audit of the tzip-10 Typescript implementation Beacon SDK. In total 5 issues have been identified by Least Authority. 3 of these have been resolved, 1 has been partially addressed and 1 was consciously not resolved."}),"\n",(0,s.jsxs)(t.ul,{children:["\n",(0,s.jsx)(t.li,{children:(0,s.jsx)(t.a,{href:"https://medium.com/airgap-it/beacon-sdk-audited-by-least-authority-fa12f83e91e0",children:"Blogpost - Beacon SDK Audit"})}),"\n",(0,s.jsxs)(t.li,{children:["\n",(0,s.jsx)("a",{target:"_blank",href:i(46415).A,children:(0,s.jsx)(t.p,{children:"Report - Beacon SDK Audit Report"})}),"\n"]}),"\n"]}),"\n",(0,s.jsx)(t.h2,{id:"disclosing-security-vulnerabilities",children:"Disclosing Security Vulnerabilities"}),"\n",(0,s.jsxs)(t.p,{children:["If you discover a security vulnerability within this library, please send an e-mail to ",(0,s.jsx)(t.a,{href:"mailto:hi@airgap.it",children:"hi@airgap.it"}),". All security vulnerabilities will be promptly addressed."]})]})}function u(e={}){const{wrapper:t}={...(0,n.R)(),...e.components};return t?(0,s.jsx)(t,{...e,children:(0,s.jsx)(d,{...e})}):d(e)}},46415:(e,t,i)=>{i.d(t,{A:()=>s});const s=i.p+"assets/files/LeastAuthorityReport-1a9f7b44c55b9cb77ba2c8f4bc4f2654.pdf"},28453:(e,t,i)=>{i.d(t,{R:()=>r,x:()=>l});var s=i(96540);const n={},a=s.createContext(n);function r(e){const t=s.useContext(a);return s.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function l(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(n):e.components||n:r(e.components),s.createElement(a.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/1051.6b559b36.js b/assets/js/1051.6b559b36.js new file mode 100644 index 00000000..1aef42f7 --- /dev/null +++ b/assets/js/1051.6b559b36.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkbeacon_docs=self.webpackChunkbeacon_docs||[]).push([[1051],{14075:(e,n,t)=>{t.d(n,{M:()=>o});var r=t(69592),i=t(50053),a=t(74722);t(37981);function o(e){var n={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:d(e),edges:s(e)};return r.A(e.graph())||(n.value=i.A(e.graph())),n}function d(e){return a.A(e.nodes(),(function(n){var t=e.node(n),i=e.parent(n),a={v:n};return r.A(t)||(a.value=t),r.A(i)||(a.parent=i),a}))}function s(e){return a.A(e.edges(),(function(n){var t=e.edge(n),i={v:n.v,w:n.w};return r.A(n.name)||(i.name=n.name),r.A(t)||(i.value=t),i}))}},50053:(e,n,t)=>{t.d(n,{A:()=>i});var r=t(68675);const i=function(e){return(0,r.A)(e,4)}},81051:(e,n,t)=>{t.r(n),t.d(n,{render:()=>C});var r=t(49139),i=t(48496),a=(t(67895),t(57323),t(64994)),o=t(62334),d=t(14075),s=t(697),c=new Map,g=new Map,l=new Map,f=(0,a.K2)((()=>{g.clear(),l.clear(),c.clear()}),"clear"),h=(0,a.K2)(((e,n)=>{const t=g.get(n)||[];return a.Rm.trace("In isDescendant",n," ",e," = ",t.includes(e)),t.includes(e)}),"isDescendant"),m=(0,a.K2)(((e,n)=>{const t=g.get(n)||[];return a.Rm.info("Descendants of ",n," is ",t),a.Rm.info("Edge is ",e),e.v!==n&&e.w!==n&&(t?t.includes(e.v)||h(e.v,n)||h(e.w,n)||t.includes(e.w):(a.Rm.debug("Tilt, ",n,",not in descendants"),!1))}),"edgeInCluster"),u=(0,a.K2)(((e,n,t,r)=>{a.Rm.warn("Copying children of ",e,"root",r,"data",n.node(e),r);const i=n.children(e)||[];e!==r&&i.push(e),a.Rm.warn("Copying (nodes) clusterId",e,"nodes",i),i.forEach((i=>{if(n.children(i).length>0)u(i,n,t,r);else{const o=n.node(i);a.Rm.info("cp ",i," to ",r," with parent ",e),t.setNode(i,o),r!==n.parent(i)&&(a.Rm.warn("Setting parent",i,n.parent(i)),t.setParent(i,n.parent(i))),e!==r&&i!==e?(a.Rm.debug("Setting parent",i,e),t.setParent(i,e)):(a.Rm.info("In copy ",e,"root",r,"data",n.node(e),r),a.Rm.debug("Not Setting parent for node=",i,"cluster!==rootId",e!==r,"node!==clusterId",i!==e));const d=n.edges(i);a.Rm.debug("Copying Edges",d),d.forEach((i=>{a.Rm.info("Edge",i);const o=n.edge(i.v,i.w,i.name);a.Rm.info("Edge data",o,r);try{m(i,r)?(a.Rm.info("Copying as ",i.v,i.w,o,i.name),t.setEdge(i.v,i.w,o,i.name),a.Rm.info("newGraph edges ",t.edges(),t.edge(t.edges()[0]))):a.Rm.info("Skipping copy of edge ",i.v,"--\x3e",i.w," rootId: ",r," clusterId:",e)}catch(d){a.Rm.error(d)}}))}a.Rm.debug("Removing node",i),n.removeNode(i)}))}),"copy"),p=(0,a.K2)(((e,n)=>{const t=n.children(e);let r=[...t];for(const i of t)l.set(i,e),r=[...r,...p(i,n)];return r}),"extractDescendants"),w=(0,a.K2)(((e,n,t)=>{const r=e.edges().filter((e=>e.v===n||e.w===n)),i=e.edges().filter((e=>e.v===t||e.w===t)),a=r.map((e=>({v:e.v===n?t:e.v,w:e.w===n?n:e.w}))),o=i.map((e=>({v:e.v,w:e.w})));return a.filter((e=>o.some((n=>e.v===n.v&&e.w===n.w))))}),"findCommonEdges"),R=(0,a.K2)(((e,n,t)=>{const r=n.children(e);if(a.Rm.trace("Searching children of id ",e,r),r.length<1)return e;let i;for(const a of r){const e=R(a,n,t),r=w(n,t,e);if(e){if(!(r.length>0))return e;i=e}}return i}),"findNonClusterChild"),v=(0,a.K2)((e=>c.has(e)&&c.get(e).externalConnections&&c.has(e)?c.get(e).id:e),"getAnchorId"),y=(0,a.K2)(((e,n)=>{if(!e||n>10)a.Rm.debug("Opting out, no graph ");else{a.Rm.debug("Opting in, graph "),e.nodes().forEach((function(n){e.children(n).length>0&&(a.Rm.warn("Cluster identified",n," Replacement id in edges: ",R(n,e,n)),g.set(n,p(n,e)),c.set(n,{id:R(n,e,n),clusterData:e.node(n)}))})),e.nodes().forEach((function(n){const t=e.children(n),r=e.edges();t.length>0?(a.Rm.debug("Cluster identified",n,g),r.forEach((e=>{h(e.v,n)^h(e.w,n)&&(a.Rm.warn("Edge: ",e," leaves cluster ",n),a.Rm.warn("Descendants of XXX ",n,": ",g.get(n)),c.get(n).externalConnections=!0)}))):a.Rm.debug("Not a cluster ",n,g)}));for(let n of c.keys()){const t=c.get(n).id,r=e.parent(t);r!==n&&c.has(r)&&!c.get(r).externalConnections&&(c.get(n).id=r)}e.edges().forEach((function(n){const t=e.edge(n);a.Rm.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(n)),a.Rm.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(e.edge(n)));let r=n.v,i=n.w;if(a.Rm.warn("Fix XXX",c,"ids:",n.v,n.w,"Translating: ",c.get(n.v)," --- ",c.get(n.w)),c.get(n.v)&&c.get(n.w)&&c.get(n.v)===c.get(n.w)){a.Rm.warn("Fixing and trying link to self - removing XXX",n.v,n.w,n.name),a.Rm.warn("Fixing and trying - removing XXX",n.v,n.w,n.name),r=v(n.v),i=v(n.w),e.removeEdge(n.v,n.w,n.name);const o=n.w+"---"+n.v+"---1",d=n.w+"---"+n.v+"---2";e.setNode(o,{domId:o,id:o,labelStyle:"",label:"",padding:0,shape:"labelRect",style:"",width:10,height:10}),e.setNode(d,{domId:d,id:d,labelStyle:"",padding:0,shape:"labelRect",style:"",width:10,height:10});const s=structuredClone(t),c=structuredClone(t),g=structuredClone(t);s.label="",s.arrowTypeEnd="none",s.id=n.name+"-cyclic-special-1",c.arrowTypeEnd="none",c.id=n.name+"-cyclic-special-mid",g.label="",s.fromCluster=n.v,g.toCluster=n.v,g.id=n.name+"-cyclic-special-2",e.setEdge(r,o,s,n.name+"-cyclic-special-0"),e.setEdge(o,d,c,n.name+"-cyclic-special-1"),e.setEdge(d,i,g,n.name+"-cyclic-special-2")}else if(c.get(n.v)||c.get(n.w)){if(a.Rm.warn("Fixing and trying - removing XXX",n.v,n.w,n.name),r=v(n.v),i=v(n.w),e.removeEdge(n.v,n.w,n.name),r!==n.v){const i=e.parent(r);c.get(i).externalConnections=!0,t.fromCluster=n.v}if(i!==n.w){const r=e.parent(i);c.get(r).externalConnections=!0,t.toCluster=n.w}a.Rm.warn("Fix Replacing with XXX",r,i,n.name),e.setEdge(r,i,t,n.name)}})),a.Rm.warn("Adjusted Graph",d.M(e)),X(e,0),a.Rm.trace(c)}}),"adjustClustersAndEdges"),X=(0,a.K2)(((e,n)=>{if(a.Rm.warn("extractor - ",n,d.M(e),e.children("D")),n>10)return void a.Rm.error("Bailing out");let t=e.nodes(),r=!1;for(const i of t){const n=e.children(i);r=r||n.length>0}if(r){a.Rm.debug("Nodes = ",t,n);for(const r of t)if(a.Rm.debug("Extracting node",r,c,c.has(r)&&!c.get(r).externalConnections,!e.parent(r),e.node(r),e.children("D")," Depth ",n),c.has(r))if(!c.get(r).externalConnections&&e.children(r)&&e.children(r).length>0){a.Rm.warn("Cluster without external connections, without a parent and with children",r,n);let t="TB"===e.graph().rankdir?"LR":"TB";c.get(r)?.clusterData?.dir&&(t=c.get(r).clusterData.dir,a.Rm.warn("Fixing dir",c.get(r).clusterData.dir,t));const i=new s.T({multigraph:!0,compound:!0}).setGraph({rankdir:t,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel((function(){return{}}));a.Rm.warn("Old graph before copy",d.M(e)),u(r,e,i,r),e.setNode(r,{clusterNode:!0,id:r,clusterData:c.get(r).clusterData,label:c.get(r).label,graph:i}),a.Rm.warn("New graph after copy node: (",r,")",d.M(i)),a.Rm.debug("Old graph after copy",d.M(e))}else a.Rm.warn("Cluster ** ",r," **not meeting the criteria !externalConnections:",!c.get(r).externalConnections," no parent: ",!e.parent(r)," children ",e.children(r)&&e.children(r).length>0,e.children("D"),n),a.Rm.debug(c);else a.Rm.debug("Not a cluster",r,n);t=e.nodes(),a.Rm.warn("New list of nodes",t);for(const r of t){const t=e.node(r);a.Rm.warn(" Now next level",r,t),t.clusterNode&&X(t.graph,n+1)}}else a.Rm.debug("Done, no node has children",e.nodes())}),"extractor"),b=(0,a.K2)(((e,n)=>{if(0===n.length)return[];let t=Object.assign([],n);return n.forEach((n=>{const r=e.children(n),i=b(e,r);t=[...t,...i]})),t}),"sorter"),E=(0,a.K2)((e=>b(e,e.children())),"sortNodesByHierarchy"),N=(0,a.K2)((async(e,n,t,s,g,l)=>{a.Rm.info("Graph in recursive render: XXX",d.M(n),g);const f=n.graph().rankdir;a.Rm.trace("Dir in recursive render - dir:",f);const h=e.insert("g").attr("class","root");n.nodes()?a.Rm.info("Recursive render XXX",n.nodes()):a.Rm.info("No nodes found for",n),n.edges().length>0&&a.Rm.info("Recursive edges",n.edge(n.edges()[0]));const m=h.insert("g").attr("class","clusters"),u=h.insert("g").attr("class","edgePaths"),p=h.insert("g").attr("class","edgeLabels"),w=h.insert("g").attr("class","nodes");await Promise.all(n.nodes().map((async function(e){const i=n.node(e);if(void 0!==g){const t=JSON.parse(JSON.stringify(g.clusterData));a.Rm.trace("Setting data for parent cluster XXX\n Node.id = ",e,"\n data=",t.height,"\nParent cluster",g.height),n.setNode(g.id,t),n.parent(e)||(a.Rm.trace("Setting parent",e,g.id),n.setParent(e,g.id,t))}if(a.Rm.info("(Insert) Node XXX"+e+": "+JSON.stringify(n.node(e))),i?.clusterNode){a.Rm.info("Cluster identified XBX",e,i.width,n.node(e));const{ranksep:o,nodesep:d}=n.graph();i.graph.setGraph({...i.graph.graph(),ranksep:o+25,nodesep:d});const c=await N(w,i.graph,t,s,n.node(e),l),g=c.elem;(0,r.lC)(i,g),i.diff=c.diff||0,a.Rm.info("New compound node after recursive render XAX",e,"width",i.width,"height",i.height),(0,r.U7)(g,i)}else n.children(e).length>0?(a.Rm.info("Cluster - the non recursive path XBX",e,i.id,i,i.width,"Graph:",n),a.Rm.info(R(i.id,n)),c.set(i.id,{id:R(i.id,n),node:i})):(a.Rm.trace("Node - the non recursive path XAX",e,i.id,i),await(0,r.on)(w,n.node(e),f))})));const v=(0,a.K2)((async()=>{const e=n.edges().map((async function(e){const t=n.edge(e.v,e.w,e.name);a.Rm.info("Edge "+e.v+" -> "+e.w+": "+JSON.stringify(e)),a.Rm.info("Edge "+e.v+" -> "+e.w+": ",e," ",JSON.stringify(n.edge(e))),a.Rm.info("Fix",c,"ids:",e.v,e.w,"Translating: ",c.get(e.v),c.get(e.w)),await(0,r.jP)(p,t)}));await Promise.all(e)}),"processEdges");await v(),a.Rm.info("Graph before layout:",JSON.stringify(d.M(n))),a.Rm.info("############################################# XXX"),a.Rm.info("### Layout ### XXX"),a.Rm.info("############################################# XXX"),(0,o.Zp)(n),a.Rm.info("Graph after layout:",JSON.stringify(d.M(n)));let y=0,{subGraphTitleTotalMargin:X}=(0,i.O)(l);return await Promise.all(E(n).map((async function(e){const t=n.node(e);if(a.Rm.info("Position XBX => "+e+": ("+t.x,","+t.y,") width: ",t.width," height: ",t.height),t?.clusterNode)t.y+=X,a.Rm.info("A tainted cluster node XBX1",e,t.id,t.width,t.height,t.x,t.y,n.parent(e)),c.get(t.id).node=t,(0,r.U_)(t);else if(n.children(e).length>0){a.Rm.info("A pure cluster node XBX1",e,t.id,t.x,t.y,t.width,t.height,n.parent(e)),t.height+=X,n.node(t.parentId);const i=t?.padding/2||0,o=t?.labelBBox?.height||0,d=o-i||0;a.Rm.debug("OffsetY",d,"labelHeight",o,"halfPadding",i),await(0,r.U)(m,t),c.get(t.id).node=t}else{const e=n.node(t.parentId);t.y+=X/2,a.Rm.info("A regular node XBX1 - using the padding",t.id,"parent",t.parentId,t.width,t.height,t.x,t.y,"offsetY",t.offsetY,"parent",e,e?.offsetY,t),(0,r.U_)(t)}}))),n.edges().forEach((function(e){const i=n.edge(e);a.Rm.info("Edge "+e.v+" -> "+e.w+": "+JSON.stringify(i),i),i.points.forEach((e=>e.y+=X/2));const o=n.node(e.v);var d=n.node(e.w);const g=(0,r.Jo)(u,i,c,t,o,d,s);(0,r.T_)(i,g)})),n.nodes().forEach((function(e){const t=n.node(e);a.Rm.info(e,t.type,t.diff),t.isGroup&&(y=t.diff)})),a.Rm.warn("Returning from recursive render XAX",h,y),{elem:h,diff:y}}),"recursiveRender"),C=(0,a.K2)((async(e,n)=>{const t=new s.T({multigraph:!0,compound:!0}).setGraph({rankdir:e.direction,nodesep:e.config?.nodeSpacing||e.config?.flowchart?.nodeSpacing||e.nodeSpacing,ranksep:e.config?.rankSpacing||e.config?.flowchart?.rankSpacing||e.rankSpacing,marginx:8,marginy:8}).setDefaultEdgeLabel((function(){return{}})),i=n.select("g");(0,r.g0)(i,e.markers,e.type,e.diagramId),(0,r.nA)(),(0,r.gh)(),(0,r.IU)(),f(),e.nodes.forEach((e=>{t.setNode(e.id,{...e}),e.parentId&&t.setParent(e.id,e.parentId)})),a.Rm.debug("Edges:",e.edges),e.edges.forEach((e=>{t.setEdge(e.start,e.end,{...e},e.id)})),a.Rm.warn("Graph at first:",JSON.stringify(d.M(t))),y(t),a.Rm.warn("Graph after:",JSON.stringify(d.M(t)));const o=(0,a.D7)();await N(i,t,e.type,e.diagramId,void 0,o)}),"render")}}]); \ No newline at end of file diff --git a/assets/js/1118.598341ce.js b/assets/js/1118.598341ce.js new file mode 100644 index 00000000..3b6265f8 --- /dev/null +++ b/assets/js/1118.598341ce.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkbeacon_docs=self.webpackChunkbeacon_docs||[]).push([[1118,8737],{14252:(e,n,t)=>{t.d(n,{A:()=>o});t(96540);var a=t(65195);const r={tableOfContentsInline:"tableOfContentsInline_prmo"};var l=t(74848);function o(e){let{toc:n,minHeadingLevel:t,maxHeadingLevel:o}=e;return(0,l.jsx)("div",{className:r.tableOfContentsInline,children:(0,l.jsx)(a.A,{toc:n,minHeadingLevel:t,maxHeadingLevel:o,className:"table-of-contents",linkClassName:null})})}},65195:(e,n,t)=>{t.d(n,{A:()=>h});var a=t(96540),r=t(6342);function l(e){const n=e.map((e=>({...e,parentIndex:-1,children:[]}))),t=Array(7).fill(-1);n.forEach(((e,n)=>{const a=t.slice(2,e.level);e.parentIndex=Math.max(...a),t[e.level]=n}));const a=[];return n.forEach((e=>{const{parentIndex:t,...r}=e;t>=0?n[t].children.push(r):a.push(r)})),a}function o(e){let{toc:n,minHeadingLevel:t,maxHeadingLevel:a}=e;return n.flatMap((e=>{const n=o({toc:e.children,minHeadingLevel:t,maxHeadingLevel:a});return function(e){return e.level>=t&&e.level<=a}(e)?[{...e,children:n}]:n}))}function s(e){const n=e.getBoundingClientRect();return n.top===n.bottom?s(e.parentNode):n}function u(e,n){let{anchorTopOffset:t}=n;const a=e.find((e=>s(e).top>=t));if(a){return function(e){return e.top>0&&e.bottom{e.current=n?0:document.querySelector(".navbar").clientHeight}),[n]),e}function c(e){const n=(0,a.useRef)(void 0),t=i();(0,a.useEffect)((()=>{if(!e)return()=>{};const{linkClassName:a,linkActiveClassName:r,minHeadingLevel:l,maxHeadingLevel:o}=e;function s(){const e=function(e){return Array.from(document.getElementsByClassName(e))}(a),s=function(e){let{minHeadingLevel:n,maxHeadingLevel:t}=e;const a=[];for(let r=n;r<=t;r+=1)a.push(`h${r}.anchor`);return Array.from(document.querySelectorAll(a.join()))}({minHeadingLevel:l,maxHeadingLevel:o}),i=u(s,{anchorTopOffset:t.current}),c=e.find((e=>i&&i.id===function(e){return decodeURIComponent(e.href.substring(e.href.indexOf("#")+1))}(e)));e.forEach((e=>{!function(e,t){t?(n.current&&n.current!==e&&n.current.classList.remove(r),e.classList.add(r),n.current=e):e.classList.remove(r)}(e,e===c)}))}return document.addEventListener("scroll",s),document.addEventListener("resize",s),s(),()=>{document.removeEventListener("scroll",s),document.removeEventListener("resize",s)}}),[e,t])}var d=t(28774),m=t(74848);function f(e){let{toc:n,className:t,linkClassName:a,isChild:r}=e;return n.length?(0,m.jsx)("ul",{className:r?void 0:t,children:n.map((e=>(0,m.jsxs)("li",{children:[(0,m.jsx)(d.A,{to:`#${e.id}`,className:a??void 0,dangerouslySetInnerHTML:{__html:e.value}}),(0,m.jsx)(f,{isChild:!0,toc:e.children,className:t,linkClassName:a})]},e.id)))}):null}const v=a.memo(f);function h(e){let{toc:n,className:t="table-of-contents table-of-contents__left-border",linkClassName:s="table-of-contents__link",linkActiveClassName:u,minHeadingLevel:i,maxHeadingLevel:d,...f}=e;const h=(0,r.p)(),b=i??h.tableOfContents.minHeadingLevel,p=d??h.tableOfContents.maxHeadingLevel,g=function(e){let{toc:n,minHeadingLevel:t,maxHeadingLevel:r}=e;return(0,a.useMemo)((()=>o({toc:l(n),minHeadingLevel:t,maxHeadingLevel:r})),[n,t,r])}({toc:n,minHeadingLevel:b,maxHeadingLevel:p});return c((0,a.useMemo)((()=>{if(s&&u)return{linkClassName:s,linkActiveClassName:u,minHeadingLevel:b,maxHeadingLevel:p}}),[s,u,b,p])),(0,m.jsx)(v,{toc:g,className:t,linkClassName:s,...f})}},19365:(e,n,t)=>{t.d(n,{A:()=>o});t(96540);var a=t(34164);const r={tabItem:"tabItem_Ymn6"};var l=t(74848);function o(e){let{children:n,hidden:t,className:o}=e;return(0,l.jsx)("div",{role:"tabpanel",className:(0,a.A)(r.tabItem,o),hidden:t,children:n})}},11470:(e,n,t)=>{t.d(n,{A:()=>C});var a=t(96540),r=t(34164),l=t(23104),o=t(56347),s=t(205),u=t(57485),i=t(31682),c=t(70679);function d(e){return a.Children.toArray(e).filter((e=>"\n"!==e)).map((e=>{if(!e||(0,a.isValidElement)(e)&&function(e){const{props:n}=e;return!!n&&"object"==typeof n&&"value"in n}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}function m(e){const{values:n,children:t}=e;return(0,a.useMemo)((()=>{const e=n??function(e){return d(e).map((e=>{let{props:{value:n,label:t,attributes:a,default:r}}=e;return{value:n,label:t,attributes:a,default:r}}))}(t);return function(e){const n=(0,i.XI)(e,((e,n)=>e.value===n.value));if(n.length>0)throw new Error(`Docusaurus error: Duplicate values "${n.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[n,t])}function f(e){let{value:n,tabValues:t}=e;return t.some((e=>e.value===n))}function v(e){let{queryString:n=!1,groupId:t}=e;const r=(0,o.W6)(),l=function(e){let{queryString:n=!1,groupId:t}=e;if("string"==typeof n)return n;if(!1===n)return null;if(!0===n&&!t)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return t??null}({queryString:n,groupId:t});return[(0,u.aZ)(l),(0,a.useCallback)((e=>{if(!l)return;const n=new URLSearchParams(r.location.search);n.set(l,e),r.replace({...r.location,search:n.toString()})}),[l,r])]}function h(e){const{defaultValue:n,queryString:t=!1,groupId:r}=e,l=m(e),[o,u]=(0,a.useState)((()=>function(e){let{defaultValue:n,tabValues:t}=e;if(0===t.length)throw new Error("Docusaurus error: the component requires at least one children component");if(n){if(!f({value:n,tabValues:t}))throw new Error(`Docusaurus error: The has a defaultValue "${n}" but none of its children has the corresponding value. Available values are: ${t.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return n}const a=t.find((e=>e.default))??t[0];if(!a)throw new Error("Unexpected error: 0 tabValues");return a.value}({defaultValue:n,tabValues:l}))),[i,d]=v({queryString:t,groupId:r}),[h,b]=function(e){let{groupId:n}=e;const t=function(e){return e?`docusaurus.tab.${e}`:null}(n),[r,l]=(0,c.Dv)(t);return[r,(0,a.useCallback)((e=>{t&&l.set(e)}),[t,l])]}({groupId:r}),p=(()=>{const e=i??h;return f({value:e,tabValues:l})?e:null})();(0,s.A)((()=>{p&&u(p)}),[p]);return{selectedValue:o,selectValue:(0,a.useCallback)((e=>{if(!f({value:e,tabValues:l}))throw new Error(`Can't select invalid tab value=${e}`);u(e),d(e),b(e)}),[d,b,l]),tabValues:l}}var b=t(92303);const p={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};var g=t(74848);function x(e){let{className:n,block:t,selectedValue:a,selectValue:o,tabValues:s}=e;const u=[],{blockElementScrollPositionUntilNextRender:i}=(0,l.a_)(),c=e=>{const n=e.currentTarget,t=u.indexOf(n),r=s[t].value;r!==a&&(i(n),o(r))},d=e=>{let n=null;switch(e.key){case"Enter":c(e);break;case"ArrowRight":{const t=u.indexOf(e.currentTarget)+1;n=u[t]??u[0];break}case"ArrowLeft":{const t=u.indexOf(e.currentTarget)-1;n=u[t]??u[u.length-1];break}}n?.focus()};return(0,g.jsx)("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,r.A)("tabs",{"tabs--block":t},n),children:s.map((e=>{let{value:n,label:t,attributes:l}=e;return(0,g.jsx)("li",{role:"tab",tabIndex:a===n?0:-1,"aria-selected":a===n,ref:e=>u.push(e),onKeyDown:d,onClick:c,...l,className:(0,r.A)("tabs__item",p.tabItem,l?.className,{"tabs__item--active":a===n}),children:t??n},n)}))})}function L(e){let{lazy:n,children:t,selectedValue:l}=e;const o=(Array.isArray(t)?t:[t]).filter(Boolean);if(n){const e=o.find((e=>e.props.value===l));return e?(0,a.cloneElement)(e,{className:(0,r.A)("margin-top--md",e.props.className)}):null}return(0,g.jsx)("div",{className:"margin-top--md",children:o.map(((e,n)=>(0,a.cloneElement)(e,{key:n,hidden:e.props.value!==l})))})}function y(e){const n=h(e);return(0,g.jsxs)("div",{className:(0,r.A)("tabs-container",p.tabList),children:[(0,g.jsx)(x,{...n,...e}),(0,g.jsx)(L,{...n,...e})]})}function C(e){const n=(0,b.A)();return(0,g.jsx)(y,{...e,children:d(e.children)},String(n))}},28453:(e,n,t)=>{t.d(n,{R:()=>o,x:()=>s});var a=t(96540);const r={},l=a.createContext(r);function o(e){const n=a.useContext(l);return a.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function s(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:o(e.components),a.createElement(l.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/130.dd62c394.js b/assets/js/130.dd62c394.js new file mode 100644 index 00000000..3c2e2318 --- /dev/null +++ b/assets/js/130.dd62c394.js @@ -0,0 +1,18474 @@ +"use strict"; +exports.id = 130; +exports.ids = [130]; +exports.modules = { + +/***/ 22130: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (/* binding */ katex) +/* harmony export */ }); +/* provided dependency */ var console = __webpack_require__(96763); +/** + * Lexing or parsing positional information for error reporting. + * This object is immutable. + */ +class SourceLocation { + // The + prefix indicates that these fields aren't writeable + // Lexer holding the input string. + // Start offset, zero-based inclusive. + // End offset, zero-based exclusive. + constructor(lexer, start, end) { + this.lexer = void 0; + this.start = void 0; + this.end = void 0; + this.lexer = lexer; + this.start = start; + this.end = end; + } + /** + * Merges two `SourceLocation`s from location providers, given they are + * provided in order of appearance. + * - Returns the first one's location if only the first is provided. + * - Returns a merged range of the first and the last if both are provided + * and their lexers match. + * - Otherwise, returns null. + */ + + + static range(first, second) { + if (!second) { + return first && first.loc; + } else if (!first || !first.loc || !second.loc || first.loc.lexer !== second.loc.lexer) { + return null; + } else { + return new SourceLocation(first.loc.lexer, first.loc.start, second.loc.end); + } + } + +} + +/** + * Interface required to break circular dependency between Token, Lexer, and + * ParseError. + */ + +/** + * The resulting token returned from `lex`. + * + * It consists of the token text plus some position information. + * The position information is essentially a range in an input string, + * but instead of referencing the bare input string, we refer to the lexer. + * That way it is possible to attach extra metadata to the input string, + * like for example a file name or similar. + * + * The position information is optional, so it is OK to construct synthetic + * tokens if appropriate. Not providing available position information may + * lead to degraded error reporting, though. + */ +class Token { + // don't expand the token + // used in \noexpand + constructor(text, // the text of this token + loc) { + this.text = void 0; + this.loc = void 0; + this.noexpand = void 0; + this.treatAsRelax = void 0; + this.text = text; + this.loc = loc; + } + /** + * Given a pair of tokens (this and endToken), compute a `Token` encompassing + * the whole input range enclosed by these two. + */ + + + range(endToken, // last token of the range, inclusive + text // the text of the newly constructed token + ) { + return new Token(text, SourceLocation.range(this, endToken)); + } + +} + +/** + * This is the ParseError class, which is the main error thrown by KaTeX + * functions when something has gone wrong. This is used to distinguish internal + * errors from errors in the expression that the user provided. + * + * If possible, a caller should provide a Token or ParseNode with information + * about where in the source string the problem occurred. + */ +class ParseError { + // Error start position based on passed-in Token or ParseNode. + // Length of affected text based on passed-in Token or ParseNode. + // The underlying error message without any context added. + constructor(message, // The error message + token // An object providing position information + ) { + this.name = void 0; + this.position = void 0; + this.length = void 0; + this.rawMessage = void 0; + var error = "KaTeX parse error: " + message; + var start; + var end; + var loc = token && token.loc; + + if (loc && loc.start <= loc.end) { + // If we have the input and a position, make the error a bit fancier + // Get the input + var input = loc.lexer.input; // Prepend some information + + start = loc.start; + end = loc.end; + + if (start === input.length) { + error += " at end of input: "; + } else { + error += " at position " + (start + 1) + ": "; + } // Underline token in question using combining underscores + + + var underlined = input.slice(start, end).replace(/[^]/g, "$&\u0332"); // Extract some context from the input and add it to the error + + var left; + + if (start > 15) { + left = "…" + input.slice(start - 15, start); + } else { + left = input.slice(0, start); + } + + var right; + + if (end + 15 < input.length) { + right = input.slice(end, end + 15) + "…"; + } else { + right = input.slice(end); + } + + error += left + underlined + right; + } // Some hackery to make ParseError a prototype of Error + // See http://stackoverflow.com/a/8460753 + // $FlowFixMe + + + var self = new Error(error); + self.name = "ParseError"; // $FlowFixMe + + self.__proto__ = ParseError.prototype; + self.position = start; + + if (start != null && end != null) { + self.length = end - start; + } + + self.rawMessage = message; + return self; + } + +} // $FlowFixMe More hackery + + +ParseError.prototype.__proto__ = Error.prototype; + +/** + * This file contains a list of utility functions which are useful in other + * files. + */ + +/** + * Return whether an element is contained in a list + */ +var contains = function contains(list, elem) { + return list.indexOf(elem) !== -1; +}; +/** + * Provide a default value if a setting is undefined + * NOTE: Couldn't use `T` as the output type due to facebook/flow#5022. + */ + + +var deflt = function deflt(setting, defaultIfUndefined) { + return setting === undefined ? defaultIfUndefined : setting; +}; // hyphenate and escape adapted from Facebook's React under Apache 2 license + + +var uppercase = /([A-Z])/g; + +var hyphenate = function hyphenate(str) { + return str.replace(uppercase, "-$1").toLowerCase(); +}; + +var ESCAPE_LOOKUP = { + "&": "&", + ">": ">", + "<": "<", + "\"": """, + "'": "'" +}; +var ESCAPE_REGEX = /[&><"']/g; +/** + * Escapes text to prevent scripting attacks. + */ + +function escape(text) { + return String(text).replace(ESCAPE_REGEX, match => ESCAPE_LOOKUP[match]); +} +/** + * Sometimes we want to pull out the innermost element of a group. In most + * cases, this will just be the group itself, but when ordgroups and colors have + * a single element, we want to pull that out. + */ + + +var getBaseElem = function getBaseElem(group) { + if (group.type === "ordgroup") { + if (group.body.length === 1) { + return getBaseElem(group.body[0]); + } else { + return group; + } + } else if (group.type === "color") { + if (group.body.length === 1) { + return getBaseElem(group.body[0]); + } else { + return group; + } + } else if (group.type === "font") { + return getBaseElem(group.body); + } else { + return group; + } +}; +/** + * TeXbook algorithms often reference "character boxes", which are simply groups + * with a single character in them. To decide if something is a character box, + * we find its innermost group, and see if it is a single character. + */ + + +var isCharacterBox = function isCharacterBox(group) { + var baseElem = getBaseElem(group); // These are all they types of groups which hold single characters + + return baseElem.type === "mathord" || baseElem.type === "textord" || baseElem.type === "atom"; +}; + +var assert = function assert(value) { + if (!value) { + throw new Error('Expected non-null, but got ' + String(value)); + } + + return value; +}; +/** + * Return the protocol of a URL, or "_relative" if the URL does not specify a + * protocol (and thus is relative), or `null` if URL has invalid protocol + * (so should be outright rejected). + */ + +var protocolFromUrl = function protocolFromUrl(url) { + // Check for possible leading protocol. + // https://url.spec.whatwg.org/#url-parsing strips leading whitespace + // (U+20) or C0 control (U+00-U+1F) characters. + // eslint-disable-next-line no-control-regex + var protocol = /^[\x00-\x20]*([^\\/#?]*?)(:|�*58|�*3a|&colon)/i.exec(url); + + if (!protocol) { + return "_relative"; + } // Reject weird colons + + + if (protocol[2] !== ":") { + return null; + } // Reject invalid characters in scheme according to + // https://datatracker.ietf.org/doc/html/rfc3986#section-3.1 + + + if (!/^[a-zA-Z][a-zA-Z0-9+\-.]*$/.test(protocol[1])) { + return null; + } // Lowercase the protocol + + + return protocol[1].toLowerCase(); +}; +var utils = { + contains, + deflt, + escape, + hyphenate, + getBaseElem, + isCharacterBox, + protocolFromUrl +}; + +/* eslint no-console:0 */ +// TODO: automatically generate documentation +// TODO: check all properties on Settings exist +// TODO: check the type of a property on Settings matches +var SETTINGS_SCHEMA = { + displayMode: { + type: "boolean", + description: "Render math in display mode, which puts the math in " + "display style (so \\int and \\sum are large, for example), and " + "centers the math on the page on its own line.", + cli: "-d, --display-mode" + }, + output: { + type: { + enum: ["htmlAndMathml", "html", "mathml"] + }, + description: "Determines the markup language of the output.", + cli: "-F, --format " + }, + leqno: { + type: "boolean", + description: "Render display math in leqno style (left-justified tags)." + }, + fleqn: { + type: "boolean", + description: "Render display math flush left." + }, + throwOnError: { + type: "boolean", + default: true, + cli: "-t, --no-throw-on-error", + cliDescription: "Render errors (in the color given by --error-color) ins" + "tead of throwing a ParseError exception when encountering an error." + }, + errorColor: { + type: "string", + default: "#cc0000", + cli: "-c, --error-color ", + cliDescription: "A color string given in the format 'rgb' or 'rrggbb' " + "(no #). This option determines the color of errors rendered by the " + "-t option.", + cliProcessor: color => "#" + color + }, + macros: { + type: "object", + cli: "-m, --macro ", + cliDescription: "Define custom macro of the form '\\foo:expansion' (use " + "multiple -m arguments for multiple macros).", + cliDefault: [], + cliProcessor: (def, defs) => { + defs.push(def); + return defs; + } + }, + minRuleThickness: { + type: "number", + description: "Specifies a minimum thickness, in ems, for fraction lines," + " `\\sqrt` top lines, `{array}` vertical lines, `\\hline`, " + "`\\hdashline`, `\\underline`, `\\overline`, and the borders of " + "`\\fbox`, `\\boxed`, and `\\fcolorbox`.", + processor: t => Math.max(0, t), + cli: "--min-rule-thickness ", + cliProcessor: parseFloat + }, + colorIsTextColor: { + type: "boolean", + description: "Makes \\color behave like LaTeX's 2-argument \\textcolor, " + "instead of LaTeX's one-argument \\color mode change.", + cli: "-b, --color-is-text-color" + }, + strict: { + type: [{ + enum: ["warn", "ignore", "error"] + }, "boolean", "function"], + description: "Turn on strict / LaTeX faithfulness mode, which throws an " + "error if the input uses features that are not supported by LaTeX.", + cli: "-S, --strict", + cliDefault: false + }, + trust: { + type: ["boolean", "function"], + description: "Trust the input, enabling all HTML features such as \\url.", + cli: "-T, --trust" + }, + maxSize: { + type: "number", + default: Infinity, + description: "If non-zero, all user-specified sizes, e.g. in " + "\\rule{500em}{500em}, will be capped to maxSize ems. Otherwise, " + "elements and spaces can be arbitrarily large", + processor: s => Math.max(0, s), + cli: "-s, --max-size ", + cliProcessor: parseInt + }, + maxExpand: { + type: "number", + default: 1000, + description: "Limit the number of macro expansions to the specified " + "number, to prevent e.g. infinite macro loops. If set to Infinity, " + "the macro expander will try to fully expand as in LaTeX.", + processor: n => Math.max(0, n), + cli: "-e, --max-expand ", + cliProcessor: n => n === "Infinity" ? Infinity : parseInt(n) + }, + globalGroup: { + type: "boolean", + cli: false + } +}; + +function getDefaultValue(schema) { + if (schema.default) { + return schema.default; + } + + var type = schema.type; + var defaultType = Array.isArray(type) ? type[0] : type; + + if (typeof defaultType !== 'string') { + return defaultType.enum[0]; + } + + switch (defaultType) { + case 'boolean': + return false; + + case 'string': + return ''; + + case 'number': + return 0; + + case 'object': + return {}; + } +} +/** + * The main Settings object + * + * The current options stored are: + * - displayMode: Whether the expression should be typeset as inline math + * (false, the default), meaning that the math starts in + * \textstyle and is placed in an inline-block); or as display + * math (true), meaning that the math starts in \displaystyle + * and is placed in a block with vertical margin. + */ + + +class Settings { + constructor(options) { + this.displayMode = void 0; + this.output = void 0; + this.leqno = void 0; + this.fleqn = void 0; + this.throwOnError = void 0; + this.errorColor = void 0; + this.macros = void 0; + this.minRuleThickness = void 0; + this.colorIsTextColor = void 0; + this.strict = void 0; + this.trust = void 0; + this.maxSize = void 0; + this.maxExpand = void 0; + this.globalGroup = void 0; + // allow null options + options = options || {}; + + for (var prop in SETTINGS_SCHEMA) { + if (SETTINGS_SCHEMA.hasOwnProperty(prop)) { + // $FlowFixMe + var schema = SETTINGS_SCHEMA[prop]; // TODO: validate options + // $FlowFixMe + + this[prop] = options[prop] !== undefined ? schema.processor ? schema.processor(options[prop]) : options[prop] : getDefaultValue(schema); + } + } + } + /** + * Report nonstrict (non-LaTeX-compatible) input. + * Can safely not be called if `this.strict` is false in JavaScript. + */ + + + reportNonstrict(errorCode, errorMsg, token) { + var strict = this.strict; + + if (typeof strict === "function") { + // Allow return value of strict function to be boolean or string + // (or null/undefined, meaning no further processing). + strict = strict(errorCode, errorMsg, token); + } + + if (!strict || strict === "ignore") { + return; + } else if (strict === true || strict === "error") { + throw new ParseError("LaTeX-incompatible input and strict mode is set to 'error': " + (errorMsg + " [" + errorCode + "]"), token); + } else if (strict === "warn") { + typeof console !== "undefined" && console.warn("LaTeX-incompatible input and strict mode is set to 'warn': " + (errorMsg + " [" + errorCode + "]")); + } else { + // won't happen in type-safe code + typeof console !== "undefined" && console.warn("LaTeX-incompatible input and strict mode is set to " + ("unrecognized '" + strict + "': " + errorMsg + " [" + errorCode + "]")); + } + } + /** + * Check whether to apply strict (LaTeX-adhering) behavior for unusual + * input (like `\\`). Unlike `nonstrict`, will not throw an error; + * instead, "error" translates to a return value of `true`, while "ignore" + * translates to a return value of `false`. May still print a warning: + * "warn" prints a warning and returns `false`. + * This is for the second category of `errorCode`s listed in the README. + */ + + + useStrictBehavior(errorCode, errorMsg, token) { + var strict = this.strict; + + if (typeof strict === "function") { + // Allow return value of strict function to be boolean or string + // (or null/undefined, meaning no further processing). + // But catch any exceptions thrown by function, treating them + // like "error". + try { + strict = strict(errorCode, errorMsg, token); + } catch (error) { + strict = "error"; + } + } + + if (!strict || strict === "ignore") { + return false; + } else if (strict === true || strict === "error") { + return true; + } else if (strict === "warn") { + typeof console !== "undefined" && console.warn("LaTeX-incompatible input and strict mode is set to 'warn': " + (errorMsg + " [" + errorCode + "]")); + return false; + } else { + // won't happen in type-safe code + typeof console !== "undefined" && console.warn("LaTeX-incompatible input and strict mode is set to " + ("unrecognized '" + strict + "': " + errorMsg + " [" + errorCode + "]")); + return false; + } + } + /** + * Check whether to test potentially dangerous input, and return + * `true` (trusted) or `false` (untrusted). The sole argument `context` + * should be an object with `command` field specifying the relevant LaTeX + * command (as a string starting with `\`), and any other arguments, etc. + * If `context` has a `url` field, a `protocol` field will automatically + * get added by this function (changing the specified object). + */ + + + isTrusted(context) { + if (context.url && !context.protocol) { + var protocol = utils.protocolFromUrl(context.url); + + if (protocol == null) { + return false; + } + + context.protocol = protocol; + } + + var trust = typeof this.trust === "function" ? this.trust(context) : this.trust; + return Boolean(trust); + } + +} + +/** + * This file contains information and classes for the various kinds of styles + * used in TeX. It provides a generic `Style` class, which holds information + * about a specific style. It then provides instances of all the different kinds + * of styles possible, and provides functions to move between them and get + * information about them. + */ + +/** + * The main style class. Contains a unique id for the style, a size (which is + * the same for cramped and uncramped version of a style), and a cramped flag. + */ +class Style { + constructor(id, size, cramped) { + this.id = void 0; + this.size = void 0; + this.cramped = void 0; + this.id = id; + this.size = size; + this.cramped = cramped; + } + /** + * Get the style of a superscript given a base in the current style. + */ + + + sup() { + return styles[sup[this.id]]; + } + /** + * Get the style of a subscript given a base in the current style. + */ + + + sub() { + return styles[sub[this.id]]; + } + /** + * Get the style of a fraction numerator given the fraction in the current + * style. + */ + + + fracNum() { + return styles[fracNum[this.id]]; + } + /** + * Get the style of a fraction denominator given the fraction in the current + * style. + */ + + + fracDen() { + return styles[fracDen[this.id]]; + } + /** + * Get the cramped version of a style (in particular, cramping a cramped style + * doesn't change the style). + */ + + + cramp() { + return styles[cramp[this.id]]; + } + /** + * Get a text or display version of this style. + */ + + + text() { + return styles[text$1[this.id]]; + } + /** + * Return true if this style is tightly spaced (scriptstyle/scriptscriptstyle) + */ + + + isTight() { + return this.size >= 2; + } + +} // Export an interface for type checking, but don't expose the implementation. +// This way, no more styles can be generated. + + +// IDs of the different styles +var D = 0; +var Dc = 1; +var T = 2; +var Tc = 3; +var S = 4; +var Sc = 5; +var SS = 6; +var SSc = 7; // Instances of the different styles + +var styles = [new Style(D, 0, false), new Style(Dc, 0, true), new Style(T, 1, false), new Style(Tc, 1, true), new Style(S, 2, false), new Style(Sc, 2, true), new Style(SS, 3, false), new Style(SSc, 3, true)]; // Lookup tables for switching from one style to another + +var sup = [S, Sc, S, Sc, SS, SSc, SS, SSc]; +var sub = [Sc, Sc, Sc, Sc, SSc, SSc, SSc, SSc]; +var fracNum = [T, Tc, S, Sc, SS, SSc, SS, SSc]; +var fracDen = [Tc, Tc, Sc, Sc, SSc, SSc, SSc, SSc]; +var cramp = [Dc, Dc, Tc, Tc, Sc, Sc, SSc, SSc]; +var text$1 = [D, Dc, T, Tc, T, Tc, T, Tc]; // We only export some of the styles. + +var Style$1 = { + DISPLAY: styles[D], + TEXT: styles[T], + SCRIPT: styles[S], + SCRIPTSCRIPT: styles[SS] +}; + +/* + * This file defines the Unicode scripts and script families that we + * support. To add new scripts or families, just add a new entry to the + * scriptData array below. Adding scripts to the scriptData array allows + * characters from that script to appear in \text{} environments. + */ + +/** + * Each script or script family has a name and an array of blocks. + * Each block is an array of two numbers which specify the start and + * end points (inclusive) of a block of Unicode codepoints. + */ + +/** + * Unicode block data for the families of scripts we support in \text{}. + * Scripts only need to appear here if they do not have font metrics. + */ +var scriptData = [{ + // Latin characters beyond the Latin-1 characters we have metrics for. + // Needed for Czech, Hungarian and Turkish text, for example. + name: 'latin', + blocks: [[0x0100, 0x024f], // Latin Extended-A and Latin Extended-B + [0x0300, 0x036f] // Combining Diacritical marks + ] +}, { + // The Cyrillic script used by Russian and related languages. + // A Cyrillic subset used to be supported as explicitly defined + // symbols in symbols.js + name: 'cyrillic', + blocks: [[0x0400, 0x04ff]] +}, { + // Armenian + name: 'armenian', + blocks: [[0x0530, 0x058F]] +}, { + // The Brahmic scripts of South and Southeast Asia + // Devanagari (0900–097F) + // Bengali (0980–09FF) + // Gurmukhi (0A00–0A7F) + // Gujarati (0A80–0AFF) + // Oriya (0B00–0B7F) + // Tamil (0B80–0BFF) + // Telugu (0C00–0C7F) + // Kannada (0C80–0CFF) + // Malayalam (0D00–0D7F) + // Sinhala (0D80–0DFF) + // Thai (0E00–0E7F) + // Lao (0E80–0EFF) + // Tibetan (0F00–0FFF) + // Myanmar (1000–109F) + name: 'brahmic', + blocks: [[0x0900, 0x109F]] +}, { + name: 'georgian', + blocks: [[0x10A0, 0x10ff]] +}, { + // Chinese and Japanese. + // The "k" in cjk is for Korean, but we've separated Korean out + name: "cjk", + blocks: [[0x3000, 0x30FF], // CJK symbols and punctuation, Hiragana, Katakana + [0x4E00, 0x9FAF], // CJK ideograms + [0xFF00, 0xFF60] // Fullwidth punctuation + // TODO: add halfwidth Katakana and Romanji glyphs + ] +}, { + // Korean + name: 'hangul', + blocks: [[0xAC00, 0xD7AF]] +}]; +/** + * Given a codepoint, return the name of the script or script family + * it is from, or null if it is not part of a known block + */ + +function scriptFromCodepoint(codepoint) { + for (var i = 0; i < scriptData.length; i++) { + var script = scriptData[i]; + + for (var _i = 0; _i < script.blocks.length; _i++) { + var block = script.blocks[_i]; + + if (codepoint >= block[0] && codepoint <= block[1]) { + return script.name; + } + } + } + + return null; +} +/** + * A flattened version of all the supported blocks in a single array. + * This is an optimization to make supportedCodepoint() fast. + */ + +var allBlocks = []; +scriptData.forEach(s => s.blocks.forEach(b => allBlocks.push(...b))); +/** + * Given a codepoint, return true if it falls within one of the + * scripts or script families defined above and false otherwise. + * + * Micro benchmarks shows that this is faster than + * /[\u3000-\u30FF\u4E00-\u9FAF\uFF00-\uFF60\uAC00-\uD7AF\u0900-\u109F]/.test() + * in Firefox, Chrome and Node. + */ + +function supportedCodepoint(codepoint) { + for (var i = 0; i < allBlocks.length; i += 2) { + if (codepoint >= allBlocks[i] && codepoint <= allBlocks[i + 1]) { + return true; + } + } + + return false; +} + +/** + * This file provides support to domTree.js and delimiter.js. + * It's a storehouse of path geometry for SVG images. + */ +// In all paths below, the viewBox-to-em scale is 1000:1. +var hLinePad = 80; // padding above a sqrt vinculum. Prevents image cropping. +// The vinculum of a \sqrt can be made thicker by a KaTeX rendering option. +// Think of variable extraVinculum as two detours in the SVG path. +// The detour begins at the lower left of the area labeled extraVinculum below. +// The detour proceeds one extraVinculum distance up and slightly to the right, +// displacing the radiused corner between surd and vinculum. The radius is +// traversed as usual, then the detour resumes. It goes right, to the end of +// the very long vinculum, then down one extraVinculum distance, +// after which it resumes regular path geometry for the radical. + +/* vinculum + / + /▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒←extraVinculum + / █████████████████████←0.04em (40 unit) std vinculum thickness + / / + / / + / /\ + / / surd +*/ + +var sqrtMain = function sqrtMain(extraVinculum, hLinePad) { + // sqrtMain path geometry is from glyph U221A in the font KaTeX Main + return "M95," + (622 + extraVinculum + hLinePad) + "\nc-2.7,0,-7.17,-2.7,-13.5,-8c-5.8,-5.3,-9.5,-10,-9.5,-14\nc0,-2,0.3,-3.3,1,-4c1.3,-2.7,23.83,-20.7,67.5,-54\nc44.2,-33.3,65.8,-50.3,66.5,-51c1.3,-1.3,3,-2,5,-2c4.7,0,8.7,3.3,12,10\ns173,378,173,378c0.7,0,35.3,-71,104,-213c68.7,-142,137.5,-285,206.5,-429\nc69,-144,104.5,-217.7,106.5,-221\nl" + extraVinculum / 2.075 + " -" + extraVinculum + "\nc5.3,-9.3,12,-14,20,-14\nH400000v" + (40 + extraVinculum) + "H845.2724\ns-225.272,467,-225.272,467s-235,486,-235,486c-2.7,4.7,-9,7,-19,7\nc-6,0,-10,-1,-12,-3s-194,-422,-194,-422s-65,47,-65,47z\nM" + (834 + extraVinculum) + " " + hLinePad + "h400000v" + (40 + extraVinculum) + "h-400000z"; +}; + +var sqrtSize1 = function sqrtSize1(extraVinculum, hLinePad) { + // size1 is from glyph U221A in the font KaTeX_Size1-Regular + return "M263," + (601 + extraVinculum + hLinePad) + "c0.7,0,18,39.7,52,119\nc34,79.3,68.167,158.7,102.5,238c34.3,79.3,51.8,119.3,52.5,120\nc340,-704.7,510.7,-1060.3,512,-1067\nl" + extraVinculum / 2.084 + " -" + extraVinculum + "\nc4.7,-7.3,11,-11,19,-11\nH40000v" + (40 + extraVinculum) + "H1012.3\ns-271.3,567,-271.3,567c-38.7,80.7,-84,175,-136,283c-52,108,-89.167,185.3,-111.5,232\nc-22.3,46.7,-33.8,70.3,-34.5,71c-4.7,4.7,-12.3,7,-23,7s-12,-1,-12,-1\ns-109,-253,-109,-253c-72.7,-168,-109.3,-252,-110,-252c-10.7,8,-22,16.7,-34,26\nc-22,17.3,-33.3,26,-34,26s-26,-26,-26,-26s76,-59,76,-59s76,-60,76,-60z\nM" + (1001 + extraVinculum) + " " + hLinePad + "h400000v" + (40 + extraVinculum) + "h-400000z"; +}; + +var sqrtSize2 = function sqrtSize2(extraVinculum, hLinePad) { + // size2 is from glyph U221A in the font KaTeX_Size2-Regular + return "M983 " + (10 + extraVinculum + hLinePad) + "\nl" + extraVinculum / 3.13 + " -" + extraVinculum + "\nc4,-6.7,10,-10,18,-10 H400000v" + (40 + extraVinculum) + "\nH1013.1s-83.4,268,-264.1,840c-180.7,572,-277,876.3,-289,913c-4.7,4.7,-12.7,7,-24,7\ns-12,0,-12,0c-1.3,-3.3,-3.7,-11.7,-7,-25c-35.3,-125.3,-106.7,-373.3,-214,-744\nc-10,12,-21,25,-33,39s-32,39,-32,39c-6,-5.3,-15,-14,-27,-26s25,-30,25,-30\nc26.7,-32.7,52,-63,76,-91s52,-60,52,-60s208,722,208,722\nc56,-175.3,126.3,-397.3,211,-666c84.7,-268.7,153.8,-488.2,207.5,-658.5\nc53.7,-170.3,84.5,-266.8,92.5,-289.5z\nM" + (1001 + extraVinculum) + " " + hLinePad + "h400000v" + (40 + extraVinculum) + "h-400000z"; +}; + +var sqrtSize3 = function sqrtSize3(extraVinculum, hLinePad) { + // size3 is from glyph U221A in the font KaTeX_Size3-Regular + return "M424," + (2398 + extraVinculum + hLinePad) + "\nc-1.3,-0.7,-38.5,-172,-111.5,-514c-73,-342,-109.8,-513.3,-110.5,-514\nc0,-2,-10.7,14.3,-32,49c-4.7,7.3,-9.8,15.7,-15.5,25c-5.7,9.3,-9.8,16,-12.5,20\ns-5,7,-5,7c-4,-3.3,-8.3,-7.7,-13,-13s-13,-13,-13,-13s76,-122,76,-122s77,-121,77,-121\ns209,968,209,968c0,-2,84.7,-361.7,254,-1079c169.3,-717.3,254.7,-1077.7,256,-1081\nl" + extraVinculum / 4.223 + " -" + extraVinculum + "c4,-6.7,10,-10,18,-10 H400000\nv" + (40 + extraVinculum) + "H1014.6\ns-87.3,378.7,-272.6,1166c-185.3,787.3,-279.3,1182.3,-282,1185\nc-2,6,-10,9,-24,9\nc-8,0,-12,-0.7,-12,-2z M" + (1001 + extraVinculum) + " " + hLinePad + "\nh400000v" + (40 + extraVinculum) + "h-400000z"; +}; + +var sqrtSize4 = function sqrtSize4(extraVinculum, hLinePad) { + // size4 is from glyph U221A in the font KaTeX_Size4-Regular + return "M473," + (2713 + extraVinculum + hLinePad) + "\nc339.3,-1799.3,509.3,-2700,510,-2702 l" + extraVinculum / 5.298 + " -" + extraVinculum + "\nc3.3,-7.3,9.3,-11,18,-11 H400000v" + (40 + extraVinculum) + "H1017.7\ns-90.5,478,-276.2,1466c-185.7,988,-279.5,1483,-281.5,1485c-2,6,-10,9,-24,9\nc-8,0,-12,-0.7,-12,-2c0,-1.3,-5.3,-32,-16,-92c-50.7,-293.3,-119.7,-693.3,-207,-1200\nc0,-1.3,-5.3,8.7,-16,30c-10.7,21.3,-21.3,42.7,-32,64s-16,33,-16,33s-26,-26,-26,-26\ns76,-153,76,-153s77,-151,77,-151c0.7,0.7,35.7,202,105,604c67.3,400.7,102,602.7,104,\n606zM" + (1001 + extraVinculum) + " " + hLinePad + "h400000v" + (40 + extraVinculum) + "H1017.7z"; +}; + +var phasePath = function phasePath(y) { + var x = y / 2; // x coordinate at top of angle + + return "M400000 " + y + " H0 L" + x + " 0 l65 45 L145 " + (y - 80) + " H400000z"; +}; + +var sqrtTall = function sqrtTall(extraVinculum, hLinePad, viewBoxHeight) { + // sqrtTall is from glyph U23B7 in the font KaTeX_Size4-Regular + // One path edge has a variable length. It runs vertically from the vinculum + // to a point near (14 units) the bottom of the surd. The vinculum + // is normally 40 units thick. So the length of the line in question is: + var vertSegment = viewBoxHeight - 54 - hLinePad - extraVinculum; + return "M702 " + (extraVinculum + hLinePad) + "H400000" + (40 + extraVinculum) + "\nH742v" + vertSegment + "l-4 4-4 4c-.667.7 -2 1.5-4 2.5s-4.167 1.833-6.5 2.5-5.5 1-9.5 1\nh-12l-28-84c-16.667-52-96.667 -294.333-240-727l-212 -643 -85 170\nc-4-3.333-8.333-7.667-13 -13l-13-13l77-155 77-156c66 199.333 139 419.667\n219 661 l218 661zM702 " + hLinePad + "H400000v" + (40 + extraVinculum) + "H742z"; +}; + +var sqrtPath = function sqrtPath(size, extraVinculum, viewBoxHeight) { + extraVinculum = 1000 * extraVinculum; // Convert from document ems to viewBox. + + var path = ""; + + switch (size) { + case "sqrtMain": + path = sqrtMain(extraVinculum, hLinePad); + break; + + case "sqrtSize1": + path = sqrtSize1(extraVinculum, hLinePad); + break; + + case "sqrtSize2": + path = sqrtSize2(extraVinculum, hLinePad); + break; + + case "sqrtSize3": + path = sqrtSize3(extraVinculum, hLinePad); + break; + + case "sqrtSize4": + path = sqrtSize4(extraVinculum, hLinePad); + break; + + case "sqrtTall": + path = sqrtTall(extraVinculum, hLinePad, viewBoxHeight); + } + + return path; +}; +var innerPath = function innerPath(name, height) { + // The inner part of stretchy tall delimiters + switch (name) { + case "\u239c": + return "M291 0 H417 V" + height + " H291z M291 0 H417 V" + height + " H291z"; + + case "\u2223": + return "M145 0 H188 V" + height + " H145z M145 0 H188 V" + height + " H145z"; + + case "\u2225": + return "M145 0 H188 V" + height + " H145z M145 0 H188 V" + height + " H145z" + ("M367 0 H410 V" + height + " H367z M367 0 H410 V" + height + " H367z"); + + case "\u239f": + return "M457 0 H583 V" + height + " H457z M457 0 H583 V" + height + " H457z"; + + case "\u23a2": + return "M319 0 H403 V" + height + " H319z M319 0 H403 V" + height + " H319z"; + + case "\u23a5": + return "M263 0 H347 V" + height + " H263z M263 0 H347 V" + height + " H263z"; + + case "\u23aa": + return "M384 0 H504 V" + height + " H384z M384 0 H504 V" + height + " H384z"; + + case "\u23d0": + return "M312 0 H355 V" + height + " H312z M312 0 H355 V" + height + " H312z"; + + case "\u2016": + return "M257 0 H300 V" + height + " H257z M257 0 H300 V" + height + " H257z" + ("M478 0 H521 V" + height + " H478z M478 0 H521 V" + height + " H478z"); + + default: + return ""; + } +}; +var path = { + // The doubleleftarrow geometry is from glyph U+21D0 in the font KaTeX Main + doubleleftarrow: "M262 157\nl10-10c34-36 62.7-77 86-123 3.3-8 5-13.3 5-16 0-5.3-6.7-8-20-8-7.3\n 0-12.2.5-14.5 1.5-2.3 1-4.8 4.5-7.5 10.5-49.3 97.3-121.7 169.3-217 216-28\n 14-57.3 25-88 33-6.7 2-11 3.8-13 5.5-2 1.7-3 4.2-3 7.5s1 5.8 3 7.5\nc2 1.7 6.3 3.5 13 5.5 68 17.3 128.2 47.8 180.5 91.5 52.3 43.7 93.8 96.2 124.5\n 157.5 9.3 8 15.3 12.3 18 13h6c12-.7 18-4 18-10 0-2-1.7-7-5-15-23.3-46-52-87\n-86-123l-10-10h399738v-40H218c328 0 0 0 0 0l-10-8c-26.7-20-65.7-43-117-69 2.7\n-2 6-3.7 10-5 36.7-16 72.3-37.3 107-64l10-8h399782v-40z\nm8 0v40h399730v-40zm0 194v40h399730v-40z", + // doublerightarrow is from glyph U+21D2 in font KaTeX Main + doublerightarrow: "M399738 392l\n-10 10c-34 36-62.7 77-86 123-3.3 8-5 13.3-5 16 0 5.3 6.7 8 20 8 7.3 0 12.2-.5\n 14.5-1.5 2.3-1 4.8-4.5 7.5-10.5 49.3-97.3 121.7-169.3 217-216 28-14 57.3-25 88\n-33 6.7-2 11-3.8 13-5.5 2-1.7 3-4.2 3-7.5s-1-5.8-3-7.5c-2-1.7-6.3-3.5-13-5.5-68\n-17.3-128.2-47.8-180.5-91.5-52.3-43.7-93.8-96.2-124.5-157.5-9.3-8-15.3-12.3-18\n-13h-6c-12 .7-18 4-18 10 0 2 1.7 7 5 15 23.3 46 52 87 86 123l10 10H0v40h399782\nc-328 0 0 0 0 0l10 8c26.7 20 65.7 43 117 69-2.7 2-6 3.7-10 5-36.7 16-72.3 37.3\n-107 64l-10 8H0v40zM0 157v40h399730v-40zm0 194v40h399730v-40z", + // leftarrow is from glyph U+2190 in font KaTeX Main + leftarrow: "M400000 241H110l3-3c68.7-52.7 113.7-120\n 135-202 4-14.7 6-23 6-25 0-7.3-7-11-21-11-8 0-13.2.8-15.5 2.5-2.3 1.7-4.2 5.8\n-5.5 12.5-1.3 4.7-2.7 10.3-4 17-12 48.7-34.8 92-68.5 130S65.3 228.3 18 247\nc-10 4-16 7.7-18 11 0 8.7 6 14.3 18 17 47.3 18.7 87.8 47 121.5 85S196 441.3 208\n 490c.7 2 1.3 5 2 9s1.2 6.7 1.5 8c.3 1.3 1 3.3 2 6s2.2 4.5 3.5 5.5c1.3 1 3.3\n 1.8 6 2.5s6 1 10 1c14 0 21-3.7 21-11 0-2-2-10.3-6-25-20-79.3-65-146.7-135-202\n l-3-3h399890zM100 241v40h399900v-40z", + // overbrace is from glyphs U+23A9/23A8/23A7 in font KaTeX_Size4-Regular + leftbrace: "M6 548l-6-6v-35l6-11c56-104 135.3-181.3 238-232 57.3-28.7 117\n-45 179-50h399577v120H403c-43.3 7-81 15-113 26-100.7 33-179.7 91-237 174-2.7\n 5-6 9-10 13-.7 1-7.3 1-20 1H6z", + leftbraceunder: "M0 6l6-6h17c12.688 0 19.313.3 20 1 4 4 7.313 8.3 10 13\n 35.313 51.3 80.813 93.8 136.5 127.5 55.688 33.7 117.188 55.8 184.5 66.5.688\n 0 2 .3 4 1 18.688 2.7 76 4.3 172 5h399450v120H429l-6-1c-124.688-8-235-61.7\n-331-161C60.687 138.7 32.312 99.3 7 54L0 41V6z", + // overgroup is from the MnSymbol package (public domain) + leftgroup: "M400000 80\nH435C64 80 168.3 229.4 21 260c-5.9 1.2-18 0-18 0-2 0-3-1-3-3v-38C76 61 257 0\n 435 0h399565z", + leftgroupunder: "M400000 262\nH435C64 262 168.3 112.6 21 82c-5.9-1.2-18 0-18 0-2 0-3 1-3 3v38c76 158 257 219\n 435 219h399565z", + // Harpoons are from glyph U+21BD in font KaTeX Main + leftharpoon: "M0 267c.7 5.3 3 10 7 14h399993v-40H93c3.3\n-3.3 10.2-9.5 20.5-18.5s17.8-15.8 22.5-20.5c50.7-52 88-110.3 112-175 4-11.3 5\n-18.3 3-21-1.3-4-7.3-6-18-6-8 0-13 .7-15 2s-4.7 6.7-8 16c-42 98.7-107.3 174.7\n-196 228-6.7 4.7-10.7 8-12 10-1.3 2-2 5.7-2 11zm100-26v40h399900v-40z", + leftharpoonplus: "M0 267c.7 5.3 3 10 7 14h399993v-40H93c3.3-3.3 10.2-9.5\n 20.5-18.5s17.8-15.8 22.5-20.5c50.7-52 88-110.3 112-175 4-11.3 5-18.3 3-21-1.3\n-4-7.3-6-18-6-8 0-13 .7-15 2s-4.7 6.7-8 16c-42 98.7-107.3 174.7-196 228-6.7 4.7\n-10.7 8-12 10-1.3 2-2 5.7-2 11zm100-26v40h399900v-40zM0 435v40h400000v-40z\nm0 0v40h400000v-40z", + leftharpoondown: "M7 241c-4 4-6.333 8.667-7 14 0 5.333.667 9 2 11s5.333\n 5.333 12 10c90.667 54 156 130 196 228 3.333 10.667 6.333 16.333 9 17 2 .667 5\n 1 9 1h5c10.667 0 16.667-2 18-6 2-2.667 1-9.667-3-21-32-87.333-82.667-157.667\n-152-211l-3-3h399907v-40zM93 281 H400000 v-40L7 241z", + leftharpoondownplus: "M7 435c-4 4-6.3 8.7-7 14 0 5.3.7 9 2 11s5.3 5.3 12\n 10c90.7 54 156 130 196 228 3.3 10.7 6.3 16.3 9 17 2 .7 5 1 9 1h5c10.7 0 16.7\n-2 18-6 2-2.7 1-9.7-3-21-32-87.3-82.7-157.7-152-211l-3-3h399907v-40H7zm93 0\nv40h399900v-40zM0 241v40h399900v-40zm0 0v40h399900v-40z", + // hook is from glyph U+21A9 in font KaTeX Main + lefthook: "M400000 281 H103s-33-11.2-61-33.5S0 197.3 0 164s14.2-61.2 42.5\n-83.5C70.8 58.2 104 47 142 47 c16.7 0 25 6.7 25 20 0 12-8.7 18.7-26 20-40 3.3\n-68.7 15.7-86 37-10 12-15 25.3-15 40 0 22.7 9.8 40.7 29.5 54 19.7 13.3 43.5 21\n 71.5 23h399859zM103 281v-40h399897v40z", + leftlinesegment: "M40 281 V428 H0 V94 H40 V241 H400000 v40z\nM40 281 V428 H0 V94 H40 V241 H400000 v40z", + leftmapsto: "M40 281 V448H0V74H40V241H400000v40z\nM40 281 V448H0V74H40V241H400000v40z", + // tofrom is from glyph U+21C4 in font KaTeX AMS Regular + leftToFrom: "M0 147h400000v40H0zm0 214c68 40 115.7 95.7 143 167h22c15.3 0 23\n-.3 23-1 0-1.3-5.3-13.7-16-37-18-35.3-41.3-69-70-101l-7-8h399905v-40H95l7-8\nc28.7-32 52-65.7 70-101 10.7-23.3 16-35.7 16-37 0-.7-7.7-1-23-1h-22C115.7 265.3\n 68 321 0 361zm0-174v-40h399900v40zm100 154v40h399900v-40z", + longequal: "M0 50 h400000 v40H0z m0 194h40000v40H0z\nM0 50 h400000 v40H0z m0 194h40000v40H0z", + midbrace: "M200428 334\nc-100.7-8.3-195.3-44-280-108-55.3-42-101.7-93-139-153l-9-14c-2.7 4-5.7 8.7-9 14\n-53.3 86.7-123.7 153-211 199-66.7 36-137.3 56.3-212 62H0V214h199568c178.3-11.7\n 311.7-78.3 403-201 6-8 9.7-12 11-12 .7-.7 6.7-1 18-1s17.3.3 18 1c1.3 0 5 4 11\n 12 44.7 59.3 101.3 106.3 170 141s145.3 54.3 229 60h199572v120z", + midbraceunder: "M199572 214\nc100.7 8.3 195.3 44 280 108 55.3 42 101.7 93 139 153l9 14c2.7-4 5.7-8.7 9-14\n 53.3-86.7 123.7-153 211-199 66.7-36 137.3-56.3 212-62h199568v120H200432c-178.3\n 11.7-311.7 78.3-403 201-6 8-9.7 12-11 12-.7.7-6.7 1-18 1s-17.3-.3-18-1c-1.3 0\n-5-4-11-12-44.7-59.3-101.3-106.3-170-141s-145.3-54.3-229-60H0V214z", + oiintSize1: "M512.6 71.6c272.6 0 320.3 106.8 320.3 178.2 0 70.8-47.7 177.6\n-320.3 177.6S193.1 320.6 193.1 249.8c0-71.4 46.9-178.2 319.5-178.2z\nm368.1 178.2c0-86.4-60.9-215.4-368.1-215.4-306.4 0-367.3 129-367.3 215.4 0 85.8\n60.9 214.8 367.3 214.8 307.2 0 368.1-129 368.1-214.8z", + oiintSize2: "M757.8 100.1c384.7 0 451.1 137.6 451.1 230 0 91.3-66.4 228.8\n-451.1 228.8-386.3 0-452.7-137.5-452.7-228.8 0-92.4 66.4-230 452.7-230z\nm502.4 230c0-111.2-82.4-277.2-502.4-277.2s-504 166-504 277.2\nc0 110 84 276 504 276s502.4-166 502.4-276z", + oiiintSize1: "M681.4 71.6c408.9 0 480.5 106.8 480.5 178.2 0 70.8-71.6 177.6\n-480.5 177.6S202.1 320.6 202.1 249.8c0-71.4 70.5-178.2 479.3-178.2z\nm525.8 178.2c0-86.4-86.8-215.4-525.7-215.4-437.9 0-524.7 129-524.7 215.4 0\n85.8 86.8 214.8 524.7 214.8 438.9 0 525.7-129 525.7-214.8z", + oiiintSize2: "M1021.2 53c603.6 0 707.8 165.8 707.8 277.2 0 110-104.2 275.8\n-707.8 275.8-606 0-710.2-165.8-710.2-275.8C311 218.8 415.2 53 1021.2 53z\nm770.4 277.1c0-131.2-126.4-327.6-770.5-327.6S248.4 198.9 248.4 330.1\nc0 130 128.8 326.4 772.7 326.4s770.5-196.4 770.5-326.4z", + rightarrow: "M0 241v40h399891c-47.3 35.3-84 78-110 128\n-16.7 32-27.7 63.7-33 95 0 1.3-.2 2.7-.5 4-.3 1.3-.5 2.3-.5 3 0 7.3 6.7 11 20\n 11 8 0 13.2-.8 15.5-2.5 2.3-1.7 4.2-5.5 5.5-11.5 2-13.3 5.7-27 11-41 14.7-44.7\n 39-84.5 73-119.5s73.7-60.2 119-75.5c6-2 9-5.7 9-11s-3-9-9-11c-45.3-15.3-85\n-40.5-119-75.5s-58.3-74.8-73-119.5c-4.7-14-8.3-27.3-11-40-1.3-6.7-3.2-10.8-5.5\n-12.5-2.3-1.7-7.5-2.5-15.5-2.5-14 0-21 3.7-21 11 0 2 2 10.3 6 25 20.7 83.3 67\n 151.7 139 205zm0 0v40h399900v-40z", + rightbrace: "M400000 542l\n-6 6h-17c-12.7 0-19.3-.3-20-1-4-4-7.3-8.3-10-13-35.3-51.3-80.8-93.8-136.5-127.5\ns-117.2-55.8-184.5-66.5c-.7 0-2-.3-4-1-18.7-2.7-76-4.3-172-5H0V214h399571l6 1\nc124.7 8 235 61.7 331 161 31.3 33.3 59.7 72.7 85 118l7 13v35z", + rightbraceunder: "M399994 0l6 6v35l-6 11c-56 104-135.3 181.3-238 232-57.3\n 28.7-117 45-179 50H-300V214h399897c43.3-7 81-15 113-26 100.7-33 179.7-91 237\n-174 2.7-5 6-9 10-13 .7-1 7.3-1 20-1h17z", + rightgroup: "M0 80h399565c371 0 266.7 149.4 414 180 5.9 1.2 18 0 18 0 2 0\n 3-1 3-3v-38c-76-158-257-219-435-219H0z", + rightgroupunder: "M0 262h399565c371 0 266.7-149.4 414-180 5.9-1.2 18 0 18\n 0 2 0 3 1 3 3v38c-76 158-257 219-435 219H0z", + rightharpoon: "M0 241v40h399993c4.7-4.7 7-9.3 7-14 0-9.3\n-3.7-15.3-11-18-92.7-56.7-159-133.7-199-231-3.3-9.3-6-14.7-8-16-2-1.3-7-2-15-2\n-10.7 0-16.7 2-18 6-2 2.7-1 9.7 3 21 15.3 42 36.7 81.8 64 119.5 27.3 37.7 58\n 69.2 92 94.5zm0 0v40h399900v-40z", + rightharpoonplus: "M0 241v40h399993c4.7-4.7 7-9.3 7-14 0-9.3-3.7-15.3-11\n-18-92.7-56.7-159-133.7-199-231-3.3-9.3-6-14.7-8-16-2-1.3-7-2-15-2-10.7 0-16.7\n 2-18 6-2 2.7-1 9.7 3 21 15.3 42 36.7 81.8 64 119.5 27.3 37.7 58 69.2 92 94.5z\nm0 0v40h399900v-40z m100 194v40h399900v-40zm0 0v40h399900v-40z", + rightharpoondown: "M399747 511c0 7.3 6.7 11 20 11 8 0 13-.8 15-2.5s4.7-6.8\n 8-15.5c40-94 99.3-166.3 178-217 13.3-8 20.3-12.3 21-13 5.3-3.3 8.5-5.8 9.5\n-7.5 1-1.7 1.5-5.2 1.5-10.5s-2.3-10.3-7-15H0v40h399908c-34 25.3-64.7 57-92 95\n-27.3 38-48.7 77.7-64 119-3.3 8.7-5 14-5 16zM0 241v40h399900v-40z", + rightharpoondownplus: "M399747 705c0 7.3 6.7 11 20 11 8 0 13-.8\n 15-2.5s4.7-6.8 8-15.5c40-94 99.3-166.3 178-217 13.3-8 20.3-12.3 21-13 5.3-3.3\n 8.5-5.8 9.5-7.5 1-1.7 1.5-5.2 1.5-10.5s-2.3-10.3-7-15H0v40h399908c-34 25.3\n-64.7 57-92 95-27.3 38-48.7 77.7-64 119-3.3 8.7-5 14-5 16zM0 435v40h399900v-40z\nm0-194v40h400000v-40zm0 0v40h400000v-40z", + righthook: "M399859 241c-764 0 0 0 0 0 40-3.3 68.7-15.7 86-37 10-12 15-25.3\n 15-40 0-22.7-9.8-40.7-29.5-54-19.7-13.3-43.5-21-71.5-23-17.3-1.3-26-8-26-20 0\n-13.3 8.7-20 26-20 38 0 71 11.2 99 33.5 0 0 7 5.6 21 16.7 14 11.2 21 33.5 21\n 66.8s-14 61.2-42 83.5c-28 22.3-61 33.5-99 33.5L0 241z M0 281v-40h399859v40z", + rightlinesegment: "M399960 241 V94 h40 V428 h-40 V281 H0 v-40z\nM399960 241 V94 h40 V428 h-40 V281 H0 v-40z", + rightToFrom: "M400000 167c-70.7-42-118-97.7-142-167h-23c-15.3 0-23 .3-23\n 1 0 1.3 5.3 13.7 16 37 18 35.3 41.3 69 70 101l7 8H0v40h399905l-7 8c-28.7 32\n-52 65.7-70 101-10.7 23.3-16 35.7-16 37 0 .7 7.7 1 23 1h23c24-69.3 71.3-125 142\n-167z M100 147v40h399900v-40zM0 341v40h399900v-40z", + // twoheadleftarrow is from glyph U+219E in font KaTeX AMS Regular + twoheadleftarrow: "M0 167c68 40\n 115.7 95.7 143 167h22c15.3 0 23-.3 23-1 0-1.3-5.3-13.7-16-37-18-35.3-41.3-69\n-70-101l-7-8h125l9 7c50.7 39.3 85 86 103 140h46c0-4.7-6.3-18.7-19-42-18-35.3\n-40-67.3-66-96l-9-9h399716v-40H284l9-9c26-28.7 48-60.7 66-96 12.7-23.333 19\n-37.333 19-42h-46c-18 54-52.3 100.7-103 140l-9 7H95l7-8c28.7-32 52-65.7 70-101\n 10.7-23.333 16-35.7 16-37 0-.7-7.7-1-23-1h-22C115.7 71.3 68 127 0 167z", + twoheadrightarrow: "M400000 167\nc-68-40-115.7-95.7-143-167h-22c-15.3 0-23 .3-23 1 0 1.3 5.3 13.7 16 37 18 35.3\n 41.3 69 70 101l7 8h-125l-9-7c-50.7-39.3-85-86-103-140h-46c0 4.7 6.3 18.7 19 42\n 18 35.3 40 67.3 66 96l9 9H0v40h399716l-9 9c-26 28.7-48 60.7-66 96-12.7 23.333\n-19 37.333-19 42h46c18-54 52.3-100.7 103-140l9-7h125l-7 8c-28.7 32-52 65.7-70\n 101-10.7 23.333-16 35.7-16 37 0 .7 7.7 1 23 1h22c27.3-71.3 75-127 143-167z", + // tilde1 is a modified version of a glyph from the MnSymbol package + tilde1: "M200 55.538c-77 0-168 73.953-177 73.953-3 0-7\n-2.175-9-5.437L2 97c-1-2-2-4-2-6 0-4 2-7 5-9l20-12C116 12 171 0 207 0c86 0\n 114 68 191 68 78 0 168-68 177-68 4 0 7 2 9 5l12 19c1 2.175 2 4.35 2 6.525 0\n 4.35-2 7.613-5 9.788l-19 13.05c-92 63.077-116.937 75.308-183 76.128\n-68.267.847-113-73.952-191-73.952z", + // ditto tilde2, tilde3, & tilde4 + tilde2: "M344 55.266c-142 0-300.638 81.316-311.5 86.418\n-8.01 3.762-22.5 10.91-23.5 5.562L1 120c-1-2-1-3-1-4 0-5 3-9 8-10l18.4-9C160.9\n 31.9 283 0 358 0c148 0 188 122 331 122s314-97 326-97c4 0 8 2 10 7l7 21.114\nc1 2.14 1 3.21 1 4.28 0 5.347-3 9.626-7 10.696l-22.3 12.622C852.6 158.372 751\n 181.476 676 181.476c-149 0-189-126.21-332-126.21z", + tilde3: "M786 59C457 59 32 175.242 13 175.242c-6 0-10-3.457\n-11-10.37L.15 138c-1-7 3-12 10-13l19.2-6.4C378.4 40.7 634.3 0 804.3 0c337 0\n 411.8 157 746.8 157 328 0 754-112 773-112 5 0 10 3 11 9l1 14.075c1 8.066-.697\n 16.595-6.697 17.492l-21.052 7.31c-367.9 98.146-609.15 122.696-778.15 122.696\n -338 0-409-156.573-744-156.573z", + tilde4: "M786 58C457 58 32 177.487 13 177.487c-6 0-10-3.345\n-11-10.035L.15 143c-1-7 3-12 10-13l22-6.7C381.2 35 637.15 0 807.15 0c337 0 409\n 177 744 177 328 0 754-127 773-127 5 0 10 3 11 9l1 14.794c1 7.805-3 13.38-9\n 14.495l-20.7 5.574c-366.85 99.79-607.3 139.372-776.3 139.372-338 0-409\n -175.236-744-175.236z", + // vec is from glyph U+20D7 in font KaTeX Main + vec: "M377 20c0-5.333 1.833-10 5.5-14S391 0 397 0c4.667 0 8.667 1.667 12 5\n3.333 2.667 6.667 9 10 19 6.667 24.667 20.333 43.667 41 57 7.333 4.667 11\n10.667 11 18 0 6-1 10-3 12s-6.667 5-14 9c-28.667 14.667-53.667 35.667-75 63\n-1.333 1.333-3.167 3.5-5.5 6.5s-4 4.833-5 5.5c-1 .667-2.5 1.333-4.5 2s-4.333 1\n-7 1c-4.667 0-9.167-1.833-13.5-5.5S337 184 337 178c0-12.667 15.667-32.333 47-59\nH213l-171-1c-8.667-6-13-12.333-13-19 0-4.667 4.333-11.333 13-20h359\nc-16-25.333-24-45-24-59z", + // widehat1 is a modified version of a glyph from the MnSymbol package + widehat1: "M529 0h5l519 115c5 1 9 5 9 10 0 1-1 2-1 3l-4 22\nc-1 5-5 9-11 9h-2L532 67 19 159h-2c-5 0-9-4-11-9l-5-22c-1-6 2-12 8-13z", + // ditto widehat2, widehat3, & widehat4 + widehat2: "M1181 0h2l1171 176c6 0 10 5 10 11l-2 23c-1 6-5 10\n-11 10h-1L1182 67 15 220h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z", + widehat3: "M1181 0h2l1171 236c6 0 10 5 10 11l-2 23c-1 6-5 10\n-11 10h-1L1182 67 15 280h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z", + widehat4: "M1181 0h2l1171 296c6 0 10 5 10 11l-2 23c-1 6-5 10\n-11 10h-1L1182 67 15 340h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z", + // widecheck paths are all inverted versions of widehat + widecheck1: "M529,159h5l519,-115c5,-1,9,-5,9,-10c0,-1,-1,-2,-1,-3l-4,-22c-1,\n-5,-5,-9,-11,-9h-2l-512,92l-513,-92h-2c-5,0,-9,4,-11,9l-5,22c-1,6,2,12,8,13z", + widecheck2: "M1181,220h2l1171,-176c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10,\n-11,-10h-1l-1168,153l-1167,-153h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z", + widecheck3: "M1181,280h2l1171,-236c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10,\n-11,-10h-1l-1168,213l-1167,-213h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z", + widecheck4: "M1181,340h2l1171,-296c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10,\n-11,-10h-1l-1168,273l-1167,-273h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z", + // The next ten paths support reaction arrows from the mhchem package. + // Arrows for \ce{<-->} are offset from xAxis by 0.22ex, per mhchem in LaTeX + // baraboveleftarrow is mostly from glyph U+2190 in font KaTeX Main + baraboveleftarrow: "M400000 620h-399890l3 -3c68.7 -52.7 113.7 -120 135 -202\nc4 -14.7 6 -23 6 -25c0 -7.3 -7 -11 -21 -11c-8 0 -13.2 0.8 -15.5 2.5\nc-2.3 1.7 -4.2 5.8 -5.5 12.5c-1.3 4.7 -2.7 10.3 -4 17c-12 48.7 -34.8 92 -68.5 130\ns-74.2 66.3 -121.5 85c-10 4 -16 7.7 -18 11c0 8.7 6 14.3 18 17c47.3 18.7 87.8 47\n121.5 85s56.5 81.3 68.5 130c0.7 2 1.3 5 2 9s1.2 6.7 1.5 8c0.3 1.3 1 3.3 2 6\ns2.2 4.5 3.5 5.5c1.3 1 3.3 1.8 6 2.5s6 1 10 1c14 0 21 -3.7 21 -11\nc0 -2 -2 -10.3 -6 -25c-20 -79.3 -65 -146.7 -135 -202l-3 -3h399890z\nM100 620v40h399900v-40z M0 241v40h399900v-40zM0 241v40h399900v-40z", + // rightarrowabovebar is mostly from glyph U+2192, KaTeX Main + rightarrowabovebar: "M0 241v40h399891c-47.3 35.3-84 78-110 128-16.7 32\n-27.7 63.7-33 95 0 1.3-.2 2.7-.5 4-.3 1.3-.5 2.3-.5 3 0 7.3 6.7 11 20 11 8 0\n13.2-.8 15.5-2.5 2.3-1.7 4.2-5.5 5.5-11.5 2-13.3 5.7-27 11-41 14.7-44.7 39\n-84.5 73-119.5s73.7-60.2 119-75.5c6-2 9-5.7 9-11s-3-9-9-11c-45.3-15.3-85-40.5\n-119-75.5s-58.3-74.8-73-119.5c-4.7-14-8.3-27.3-11-40-1.3-6.7-3.2-10.8-5.5\n-12.5-2.3-1.7-7.5-2.5-15.5-2.5-14 0-21 3.7-21 11 0 2 2 10.3 6 25 20.7 83.3 67\n151.7 139 205zm96 379h399894v40H0zm0 0h399904v40H0z", + // The short left harpoon has 0.5em (i.e. 500 units) kern on the left end. + // Ref from mhchem.sty: \rlap{\raisebox{-.22ex}{$\kern0.5em + baraboveshortleftharpoon: "M507,435c-4,4,-6.3,8.7,-7,14c0,5.3,0.7,9,2,11\nc1.3,2,5.3,5.3,12,10c90.7,54,156,130,196,228c3.3,10.7,6.3,16.3,9,17\nc2,0.7,5,1,9,1c0,0,5,0,5,0c10.7,0,16.7,-2,18,-6c2,-2.7,1,-9.7,-3,-21\nc-32,-87.3,-82.7,-157.7,-152,-211c0,0,-3,-3,-3,-3l399351,0l0,-40\nc-398570,0,-399437,0,-399437,0z M593 435 v40 H399500 v-40z\nM0 281 v-40 H399908 v40z M0 281 v-40 H399908 v40z", + rightharpoonaboveshortbar: "M0,241 l0,40c399126,0,399993,0,399993,0\nc4.7,-4.7,7,-9.3,7,-14c0,-9.3,-3.7,-15.3,-11,-18c-92.7,-56.7,-159,-133.7,-199,\n-231c-3.3,-9.3,-6,-14.7,-8,-16c-2,-1.3,-7,-2,-15,-2c-10.7,0,-16.7,2,-18,6\nc-2,2.7,-1,9.7,3,21c15.3,42,36.7,81.8,64,119.5c27.3,37.7,58,69.2,92,94.5z\nM0 241 v40 H399908 v-40z M0 475 v-40 H399500 v40z M0 475 v-40 H399500 v40z", + shortbaraboveleftharpoon: "M7,435c-4,4,-6.3,8.7,-7,14c0,5.3,0.7,9,2,11\nc1.3,2,5.3,5.3,12,10c90.7,54,156,130,196,228c3.3,10.7,6.3,16.3,9,17c2,0.7,5,1,9,\n1c0,0,5,0,5,0c10.7,0,16.7,-2,18,-6c2,-2.7,1,-9.7,-3,-21c-32,-87.3,-82.7,-157.7,\n-152,-211c0,0,-3,-3,-3,-3l399907,0l0,-40c-399126,0,-399993,0,-399993,0z\nM93 435 v40 H400000 v-40z M500 241 v40 H400000 v-40z M500 241 v40 H400000 v-40z", + shortrightharpoonabovebar: "M53,241l0,40c398570,0,399437,0,399437,0\nc4.7,-4.7,7,-9.3,7,-14c0,-9.3,-3.7,-15.3,-11,-18c-92.7,-56.7,-159,-133.7,-199,\n-231c-3.3,-9.3,-6,-14.7,-8,-16c-2,-1.3,-7,-2,-15,-2c-10.7,0,-16.7,2,-18,6\nc-2,2.7,-1,9.7,3,21c15.3,42,36.7,81.8,64,119.5c27.3,37.7,58,69.2,92,94.5z\nM500 241 v40 H399408 v-40z M500 435 v40 H400000 v-40z" +}; +var tallDelim = function tallDelim(label, midHeight) { + switch (label) { + case "lbrack": + return "M403 1759 V84 H666 V0 H319 V1759 v" + midHeight + " v1759 h347 v-84\nH403z M403 1759 V0 H319 V1759 v" + midHeight + " v1759 h84z"; + + case "rbrack": + return "M347 1759 V0 H0 V84 H263 V1759 v" + midHeight + " v1759 H0 v84 H347z\nM347 1759 V0 H263 V1759 v" + midHeight + " v1759 h84z"; + + case "vert": + return "M145 15 v585 v" + midHeight + " v585 c2.667,10,9.667,15,21,15\nc10,0,16.667,-5,20,-15 v-585 v" + -midHeight + " v-585 c-2.667,-10,-9.667,-15,-21,-15\nc-10,0,-16.667,5,-20,15z M188 15 H145 v585 v" + midHeight + " v585 h43z"; + + case "doublevert": + return "M145 15 v585 v" + midHeight + " v585 c2.667,10,9.667,15,21,15\nc10,0,16.667,-5,20,-15 v-585 v" + -midHeight + " v-585 c-2.667,-10,-9.667,-15,-21,-15\nc-10,0,-16.667,5,-20,15z M188 15 H145 v585 v" + midHeight + " v585 h43z\nM367 15 v585 v" + midHeight + " v585 c2.667,10,9.667,15,21,15\nc10,0,16.667,-5,20,-15 v-585 v" + -midHeight + " v-585 c-2.667,-10,-9.667,-15,-21,-15\nc-10,0,-16.667,5,-20,15z M410 15 H367 v585 v" + midHeight + " v585 h43z"; + + case "lfloor": + return "M319 602 V0 H403 V602 v" + midHeight + " v1715 h263 v84 H319z\nMM319 602 V0 H403 V602 v" + midHeight + " v1715 H319z"; + + case "rfloor": + return "M319 602 V0 H403 V602 v" + midHeight + " v1799 H0 v-84 H319z\nMM319 602 V0 H403 V602 v" + midHeight + " v1715 H319z"; + + case "lceil": + return "M403 1759 V84 H666 V0 H319 V1759 v" + midHeight + " v602 h84z\nM403 1759 V0 H319 V1759 v" + midHeight + " v602 h84z"; + + case "rceil": + return "M347 1759 V0 H0 V84 H263 V1759 v" + midHeight + " v602 h84z\nM347 1759 V0 h-84 V1759 v" + midHeight + " v602 h84z"; + + case "lparen": + return "M863,9c0,-2,-2,-5,-6,-9c0,0,-17,0,-17,0c-12.7,0,-19.3,0.3,-20,1\nc-5.3,5.3,-10.3,11,-15,17c-242.7,294.7,-395.3,682,-458,1162c-21.3,163.3,-33.3,349,\n-36,557 l0," + (midHeight + 84) + "c0.2,6,0,26,0,60c2,159.3,10,310.7,24,454c53.3,528,210,\n949.7,470,1265c4.7,6,9.7,11.7,15,17c0.7,0.7,7,1,19,1c0,0,18,0,18,0c4,-4,6,-7,6,-9\nc0,-2.7,-3.3,-8.7,-10,-18c-135.3,-192.7,-235.5,-414.3,-300.5,-665c-65,-250.7,-102.5,\n-544.7,-112.5,-882c-2,-104,-3,-167,-3,-189\nl0,-" + (midHeight + 92) + "c0,-162.7,5.7,-314,17,-454c20.7,-272,63.7,-513,129,-723c65.3,\n-210,155.3,-396.3,270,-559c6.7,-9.3,10,-15.3,10,-18z"; + + case "rparen": + return "M76,0c-16.7,0,-25,3,-25,9c0,2,2,6.3,6,13c21.3,28.7,42.3,60.3,\n63,95c96.7,156.7,172.8,332.5,228.5,527.5c55.7,195,92.8,416.5,111.5,664.5\nc11.3,139.3,17,290.7,17,454c0,28,1.7,43,3.3,45l0," + (midHeight + 9) + "\nc-3,4,-3.3,16.7,-3.3,38c0,162,-5.7,313.7,-17,455c-18.7,248,-55.8,469.3,-111.5,664\nc-55.7,194.7,-131.8,370.3,-228.5,527c-20.7,34.7,-41.7,66.3,-63,95c-2,3.3,-4,7,-6,11\nc0,7.3,5.7,11,17,11c0,0,11,0,11,0c9.3,0,14.3,-0.3,15,-1c5.3,-5.3,10.3,-11,15,-17\nc242.7,-294.7,395.3,-681.7,458,-1161c21.3,-164.7,33.3,-350.7,36,-558\nl0,-" + (midHeight + 144) + "c-2,-159.3,-10,-310.7,-24,-454c-53.3,-528,-210,-949.7,\n-470,-1265c-4.7,-6,-9.7,-11.7,-15,-17c-0.7,-0.7,-6.7,-1,-18,-1z"; + + default: + // We should not ever get here. + throw new Error("Unknown stretchy delimiter."); + } +}; + +/** + * This node represents a document fragment, which contains elements, but when + * placed into the DOM doesn't have any representation itself. It only contains + * children and doesn't have any DOM node properties. + */ +class DocumentFragment { + // HtmlDomNode + // Never used; needed for satisfying interface. + constructor(children) { + this.children = void 0; + this.classes = void 0; + this.height = void 0; + this.depth = void 0; + this.maxFontSize = void 0; + this.style = void 0; + this.children = children; + this.classes = []; + this.height = 0; + this.depth = 0; + this.maxFontSize = 0; + this.style = {}; + } + + hasClass(className) { + return utils.contains(this.classes, className); + } + /** Convert the fragment into a node. */ + + + toNode() { + var frag = document.createDocumentFragment(); + + for (var i = 0; i < this.children.length; i++) { + frag.appendChild(this.children[i].toNode()); + } + + return frag; + } + /** Convert the fragment into HTML markup. */ + + + toMarkup() { + var markup = ""; // Simply concatenate the markup for the children together. + + for (var i = 0; i < this.children.length; i++) { + markup += this.children[i].toMarkup(); + } + + return markup; + } + /** + * Converts the math node into a string, similar to innerText. Applies to + * MathDomNode's only. + */ + + + toText() { + // To avoid this, we would subclass documentFragment separately for + // MathML, but polyfills for subclassing is expensive per PR 1469. + // $FlowFixMe: Only works for ChildType = MathDomNode. + var toText = child => child.toText(); + + return this.children.map(toText).join(""); + } + +} + +// This file is GENERATED by buildMetrics.sh. DO NOT MODIFY. +var fontMetricsData = { + "AMS-Regular": { + "32": [0, 0, 0, 0, 0.25], + "65": [0, 0.68889, 0, 0, 0.72222], + "66": [0, 0.68889, 0, 0, 0.66667], + "67": [0, 0.68889, 0, 0, 0.72222], + "68": [0, 0.68889, 0, 0, 0.72222], + "69": [0, 0.68889, 0, 0, 0.66667], + "70": [0, 0.68889, 0, 0, 0.61111], + "71": [0, 0.68889, 0, 0, 0.77778], + "72": [0, 0.68889, 0, 0, 0.77778], + "73": [0, 0.68889, 0, 0, 0.38889], + "74": [0.16667, 0.68889, 0, 0, 0.5], + "75": [0, 0.68889, 0, 0, 0.77778], + "76": [0, 0.68889, 0, 0, 0.66667], + "77": [0, 0.68889, 0, 0, 0.94445], + "78": [0, 0.68889, 0, 0, 0.72222], + "79": [0.16667, 0.68889, 0, 0, 0.77778], + "80": [0, 0.68889, 0, 0, 0.61111], + "81": [0.16667, 0.68889, 0, 0, 0.77778], + "82": [0, 0.68889, 0, 0, 0.72222], + "83": [0, 0.68889, 0, 0, 0.55556], + "84": [0, 0.68889, 0, 0, 0.66667], + "85": [0, 0.68889, 0, 0, 0.72222], + "86": [0, 0.68889, 0, 0, 0.72222], + "87": [0, 0.68889, 0, 0, 1.0], + "88": [0, 0.68889, 0, 0, 0.72222], + "89": [0, 0.68889, 0, 0, 0.72222], + "90": [0, 0.68889, 0, 0, 0.66667], + "107": [0, 0.68889, 0, 0, 0.55556], + "160": [0, 0, 0, 0, 0.25], + "165": [0, 0.675, 0.025, 0, 0.75], + "174": [0.15559, 0.69224, 0, 0, 0.94666], + "240": [0, 0.68889, 0, 0, 0.55556], + "295": [0, 0.68889, 0, 0, 0.54028], + "710": [0, 0.825, 0, 0, 2.33334], + "732": [0, 0.9, 0, 0, 2.33334], + "770": [0, 0.825, 0, 0, 2.33334], + "771": [0, 0.9, 0, 0, 2.33334], + "989": [0.08167, 0.58167, 0, 0, 0.77778], + "1008": [0, 0.43056, 0.04028, 0, 0.66667], + "8245": [0, 0.54986, 0, 0, 0.275], + "8463": [0, 0.68889, 0, 0, 0.54028], + "8487": [0, 0.68889, 0, 0, 0.72222], + "8498": [0, 0.68889, 0, 0, 0.55556], + "8502": [0, 0.68889, 0, 0, 0.66667], + "8503": [0, 0.68889, 0, 0, 0.44445], + "8504": [0, 0.68889, 0, 0, 0.66667], + "8513": [0, 0.68889, 0, 0, 0.63889], + "8592": [-0.03598, 0.46402, 0, 0, 0.5], + "8594": [-0.03598, 0.46402, 0, 0, 0.5], + "8602": [-0.13313, 0.36687, 0, 0, 1.0], + "8603": [-0.13313, 0.36687, 0, 0, 1.0], + "8606": [0.01354, 0.52239, 0, 0, 1.0], + "8608": [0.01354, 0.52239, 0, 0, 1.0], + "8610": [0.01354, 0.52239, 0, 0, 1.11111], + "8611": [0.01354, 0.52239, 0, 0, 1.11111], + "8619": [0, 0.54986, 0, 0, 1.0], + "8620": [0, 0.54986, 0, 0, 1.0], + "8621": [-0.13313, 0.37788, 0, 0, 1.38889], + "8622": [-0.13313, 0.36687, 0, 0, 1.0], + "8624": [0, 0.69224, 0, 0, 0.5], + "8625": [0, 0.69224, 0, 0, 0.5], + "8630": [0, 0.43056, 0, 0, 1.0], + "8631": [0, 0.43056, 0, 0, 1.0], + "8634": [0.08198, 0.58198, 0, 0, 0.77778], + "8635": [0.08198, 0.58198, 0, 0, 0.77778], + "8638": [0.19444, 0.69224, 0, 0, 0.41667], + "8639": [0.19444, 0.69224, 0, 0, 0.41667], + "8642": [0.19444, 0.69224, 0, 0, 0.41667], + "8643": [0.19444, 0.69224, 0, 0, 0.41667], + "8644": [0.1808, 0.675, 0, 0, 1.0], + "8646": [0.1808, 0.675, 0, 0, 1.0], + "8647": [0.1808, 0.675, 0, 0, 1.0], + "8648": [0.19444, 0.69224, 0, 0, 0.83334], + "8649": [0.1808, 0.675, 0, 0, 1.0], + "8650": [0.19444, 0.69224, 0, 0, 0.83334], + "8651": [0.01354, 0.52239, 0, 0, 1.0], + "8652": [0.01354, 0.52239, 0, 0, 1.0], + "8653": [-0.13313, 0.36687, 0, 0, 1.0], + "8654": [-0.13313, 0.36687, 0, 0, 1.0], + "8655": [-0.13313, 0.36687, 0, 0, 1.0], + "8666": [0.13667, 0.63667, 0, 0, 1.0], + "8667": [0.13667, 0.63667, 0, 0, 1.0], + "8669": [-0.13313, 0.37788, 0, 0, 1.0], + "8672": [-0.064, 0.437, 0, 0, 1.334], + "8674": [-0.064, 0.437, 0, 0, 1.334], + "8705": [0, 0.825, 0, 0, 0.5], + "8708": [0, 0.68889, 0, 0, 0.55556], + "8709": [0.08167, 0.58167, 0, 0, 0.77778], + "8717": [0, 0.43056, 0, 0, 0.42917], + "8722": [-0.03598, 0.46402, 0, 0, 0.5], + "8724": [0.08198, 0.69224, 0, 0, 0.77778], + "8726": [0.08167, 0.58167, 0, 0, 0.77778], + "8733": [0, 0.69224, 0, 0, 0.77778], + "8736": [0, 0.69224, 0, 0, 0.72222], + "8737": [0, 0.69224, 0, 0, 0.72222], + "8738": [0.03517, 0.52239, 0, 0, 0.72222], + "8739": [0.08167, 0.58167, 0, 0, 0.22222], + "8740": [0.25142, 0.74111, 0, 0, 0.27778], + "8741": [0.08167, 0.58167, 0, 0, 0.38889], + "8742": [0.25142, 0.74111, 0, 0, 0.5], + "8756": [0, 0.69224, 0, 0, 0.66667], + "8757": [0, 0.69224, 0, 0, 0.66667], + "8764": [-0.13313, 0.36687, 0, 0, 0.77778], + "8765": [-0.13313, 0.37788, 0, 0, 0.77778], + "8769": [-0.13313, 0.36687, 0, 0, 0.77778], + "8770": [-0.03625, 0.46375, 0, 0, 0.77778], + "8774": [0.30274, 0.79383, 0, 0, 0.77778], + "8776": [-0.01688, 0.48312, 0, 0, 0.77778], + "8778": [0.08167, 0.58167, 0, 0, 0.77778], + "8782": [0.06062, 0.54986, 0, 0, 0.77778], + "8783": [0.06062, 0.54986, 0, 0, 0.77778], + "8785": [0.08198, 0.58198, 0, 0, 0.77778], + "8786": [0.08198, 0.58198, 0, 0, 0.77778], + "8787": [0.08198, 0.58198, 0, 0, 0.77778], + "8790": [0, 0.69224, 0, 0, 0.77778], + "8791": [0.22958, 0.72958, 0, 0, 0.77778], + "8796": [0.08198, 0.91667, 0, 0, 0.77778], + "8806": [0.25583, 0.75583, 0, 0, 0.77778], + "8807": [0.25583, 0.75583, 0, 0, 0.77778], + "8808": [0.25142, 0.75726, 0, 0, 0.77778], + "8809": [0.25142, 0.75726, 0, 0, 0.77778], + "8812": [0.25583, 0.75583, 0, 0, 0.5], + "8814": [0.20576, 0.70576, 0, 0, 0.77778], + "8815": [0.20576, 0.70576, 0, 0, 0.77778], + "8816": [0.30274, 0.79383, 0, 0, 0.77778], + "8817": [0.30274, 0.79383, 0, 0, 0.77778], + "8818": [0.22958, 0.72958, 0, 0, 0.77778], + "8819": [0.22958, 0.72958, 0, 0, 0.77778], + "8822": [0.1808, 0.675, 0, 0, 0.77778], + "8823": [0.1808, 0.675, 0, 0, 0.77778], + "8828": [0.13667, 0.63667, 0, 0, 0.77778], + "8829": [0.13667, 0.63667, 0, 0, 0.77778], + "8830": [0.22958, 0.72958, 0, 0, 0.77778], + "8831": [0.22958, 0.72958, 0, 0, 0.77778], + "8832": [0.20576, 0.70576, 0, 0, 0.77778], + "8833": [0.20576, 0.70576, 0, 0, 0.77778], + "8840": [0.30274, 0.79383, 0, 0, 0.77778], + "8841": [0.30274, 0.79383, 0, 0, 0.77778], + "8842": [0.13597, 0.63597, 0, 0, 0.77778], + "8843": [0.13597, 0.63597, 0, 0, 0.77778], + "8847": [0.03517, 0.54986, 0, 0, 0.77778], + "8848": [0.03517, 0.54986, 0, 0, 0.77778], + "8858": [0.08198, 0.58198, 0, 0, 0.77778], + "8859": [0.08198, 0.58198, 0, 0, 0.77778], + "8861": [0.08198, 0.58198, 0, 0, 0.77778], + "8862": [0, 0.675, 0, 0, 0.77778], + "8863": [0, 0.675, 0, 0, 0.77778], + "8864": [0, 0.675, 0, 0, 0.77778], + "8865": [0, 0.675, 0, 0, 0.77778], + "8872": [0, 0.69224, 0, 0, 0.61111], + "8873": [0, 0.69224, 0, 0, 0.72222], + "8874": [0, 0.69224, 0, 0, 0.88889], + "8876": [0, 0.68889, 0, 0, 0.61111], + "8877": [0, 0.68889, 0, 0, 0.61111], + "8878": [0, 0.68889, 0, 0, 0.72222], + "8879": [0, 0.68889, 0, 0, 0.72222], + "8882": [0.03517, 0.54986, 0, 0, 0.77778], + "8883": [0.03517, 0.54986, 0, 0, 0.77778], + "8884": [0.13667, 0.63667, 0, 0, 0.77778], + "8885": [0.13667, 0.63667, 0, 0, 0.77778], + "8888": [0, 0.54986, 0, 0, 1.11111], + "8890": [0.19444, 0.43056, 0, 0, 0.55556], + "8891": [0.19444, 0.69224, 0, 0, 0.61111], + "8892": [0.19444, 0.69224, 0, 0, 0.61111], + "8901": [0, 0.54986, 0, 0, 0.27778], + "8903": [0.08167, 0.58167, 0, 0, 0.77778], + "8905": [0.08167, 0.58167, 0, 0, 0.77778], + "8906": [0.08167, 0.58167, 0, 0, 0.77778], + "8907": [0, 0.69224, 0, 0, 0.77778], + "8908": [0, 0.69224, 0, 0, 0.77778], + "8909": [-0.03598, 0.46402, 0, 0, 0.77778], + "8910": [0, 0.54986, 0, 0, 0.76042], + "8911": [0, 0.54986, 0, 0, 0.76042], + "8912": [0.03517, 0.54986, 0, 0, 0.77778], + "8913": [0.03517, 0.54986, 0, 0, 0.77778], + "8914": [0, 0.54986, 0, 0, 0.66667], + "8915": [0, 0.54986, 0, 0, 0.66667], + "8916": [0, 0.69224, 0, 0, 0.66667], + "8918": [0.0391, 0.5391, 0, 0, 0.77778], + "8919": [0.0391, 0.5391, 0, 0, 0.77778], + "8920": [0.03517, 0.54986, 0, 0, 1.33334], + "8921": [0.03517, 0.54986, 0, 0, 1.33334], + "8922": [0.38569, 0.88569, 0, 0, 0.77778], + "8923": [0.38569, 0.88569, 0, 0, 0.77778], + "8926": [0.13667, 0.63667, 0, 0, 0.77778], + "8927": [0.13667, 0.63667, 0, 0, 0.77778], + "8928": [0.30274, 0.79383, 0, 0, 0.77778], + "8929": [0.30274, 0.79383, 0, 0, 0.77778], + "8934": [0.23222, 0.74111, 0, 0, 0.77778], + "8935": [0.23222, 0.74111, 0, 0, 0.77778], + "8936": [0.23222, 0.74111, 0, 0, 0.77778], + "8937": [0.23222, 0.74111, 0, 0, 0.77778], + "8938": [0.20576, 0.70576, 0, 0, 0.77778], + "8939": [0.20576, 0.70576, 0, 0, 0.77778], + "8940": [0.30274, 0.79383, 0, 0, 0.77778], + "8941": [0.30274, 0.79383, 0, 0, 0.77778], + "8994": [0.19444, 0.69224, 0, 0, 0.77778], + "8995": [0.19444, 0.69224, 0, 0, 0.77778], + "9416": [0.15559, 0.69224, 0, 0, 0.90222], + "9484": [0, 0.69224, 0, 0, 0.5], + "9488": [0, 0.69224, 0, 0, 0.5], + "9492": [0, 0.37788, 0, 0, 0.5], + "9496": [0, 0.37788, 0, 0, 0.5], + "9585": [0.19444, 0.68889, 0, 0, 0.88889], + "9586": [0.19444, 0.74111, 0, 0, 0.88889], + "9632": [0, 0.675, 0, 0, 0.77778], + "9633": [0, 0.675, 0, 0, 0.77778], + "9650": [0, 0.54986, 0, 0, 0.72222], + "9651": [0, 0.54986, 0, 0, 0.72222], + "9654": [0.03517, 0.54986, 0, 0, 0.77778], + "9660": [0, 0.54986, 0, 0, 0.72222], + "9661": [0, 0.54986, 0, 0, 0.72222], + "9664": [0.03517, 0.54986, 0, 0, 0.77778], + "9674": [0.11111, 0.69224, 0, 0, 0.66667], + "9733": [0.19444, 0.69224, 0, 0, 0.94445], + "10003": [0, 0.69224, 0, 0, 0.83334], + "10016": [0, 0.69224, 0, 0, 0.83334], + "10731": [0.11111, 0.69224, 0, 0, 0.66667], + "10846": [0.19444, 0.75583, 0, 0, 0.61111], + "10877": [0.13667, 0.63667, 0, 0, 0.77778], + "10878": [0.13667, 0.63667, 0, 0, 0.77778], + "10885": [0.25583, 0.75583, 0, 0, 0.77778], + "10886": [0.25583, 0.75583, 0, 0, 0.77778], + "10887": [0.13597, 0.63597, 0, 0, 0.77778], + "10888": [0.13597, 0.63597, 0, 0, 0.77778], + "10889": [0.26167, 0.75726, 0, 0, 0.77778], + "10890": [0.26167, 0.75726, 0, 0, 0.77778], + "10891": [0.48256, 0.98256, 0, 0, 0.77778], + "10892": [0.48256, 0.98256, 0, 0, 0.77778], + "10901": [0.13667, 0.63667, 0, 0, 0.77778], + "10902": [0.13667, 0.63667, 0, 0, 0.77778], + "10933": [0.25142, 0.75726, 0, 0, 0.77778], + "10934": [0.25142, 0.75726, 0, 0, 0.77778], + "10935": [0.26167, 0.75726, 0, 0, 0.77778], + "10936": [0.26167, 0.75726, 0, 0, 0.77778], + "10937": [0.26167, 0.75726, 0, 0, 0.77778], + "10938": [0.26167, 0.75726, 0, 0, 0.77778], + "10949": [0.25583, 0.75583, 0, 0, 0.77778], + "10950": [0.25583, 0.75583, 0, 0, 0.77778], + "10955": [0.28481, 0.79383, 0, 0, 0.77778], + "10956": [0.28481, 0.79383, 0, 0, 0.77778], + "57350": [0.08167, 0.58167, 0, 0, 0.22222], + "57351": [0.08167, 0.58167, 0, 0, 0.38889], + "57352": [0.08167, 0.58167, 0, 0, 0.77778], + "57353": [0, 0.43056, 0.04028, 0, 0.66667], + "57356": [0.25142, 0.75726, 0, 0, 0.77778], + "57357": [0.25142, 0.75726, 0, 0, 0.77778], + "57358": [0.41951, 0.91951, 0, 0, 0.77778], + "57359": [0.30274, 0.79383, 0, 0, 0.77778], + "57360": [0.30274, 0.79383, 0, 0, 0.77778], + "57361": [0.41951, 0.91951, 0, 0, 0.77778], + "57366": [0.25142, 0.75726, 0, 0, 0.77778], + "57367": [0.25142, 0.75726, 0, 0, 0.77778], + "57368": [0.25142, 0.75726, 0, 0, 0.77778], + "57369": [0.25142, 0.75726, 0, 0, 0.77778], + "57370": [0.13597, 0.63597, 0, 0, 0.77778], + "57371": [0.13597, 0.63597, 0, 0, 0.77778] + }, + "Caligraphic-Regular": { + "32": [0, 0, 0, 0, 0.25], + "65": [0, 0.68333, 0, 0.19445, 0.79847], + "66": [0, 0.68333, 0.03041, 0.13889, 0.65681], + "67": [0, 0.68333, 0.05834, 0.13889, 0.52653], + "68": [0, 0.68333, 0.02778, 0.08334, 0.77139], + "69": [0, 0.68333, 0.08944, 0.11111, 0.52778], + "70": [0, 0.68333, 0.09931, 0.11111, 0.71875], + "71": [0.09722, 0.68333, 0.0593, 0.11111, 0.59487], + "72": [0, 0.68333, 0.00965, 0.11111, 0.84452], + "73": [0, 0.68333, 0.07382, 0, 0.54452], + "74": [0.09722, 0.68333, 0.18472, 0.16667, 0.67778], + "75": [0, 0.68333, 0.01445, 0.05556, 0.76195], + "76": [0, 0.68333, 0, 0.13889, 0.68972], + "77": [0, 0.68333, 0, 0.13889, 1.2009], + "78": [0, 0.68333, 0.14736, 0.08334, 0.82049], + "79": [0, 0.68333, 0.02778, 0.11111, 0.79611], + "80": [0, 0.68333, 0.08222, 0.08334, 0.69556], + "81": [0.09722, 0.68333, 0, 0.11111, 0.81667], + "82": [0, 0.68333, 0, 0.08334, 0.8475], + "83": [0, 0.68333, 0.075, 0.13889, 0.60556], + "84": [0, 0.68333, 0.25417, 0, 0.54464], + "85": [0, 0.68333, 0.09931, 0.08334, 0.62583], + "86": [0, 0.68333, 0.08222, 0, 0.61278], + "87": [0, 0.68333, 0.08222, 0.08334, 0.98778], + "88": [0, 0.68333, 0.14643, 0.13889, 0.7133], + "89": [0.09722, 0.68333, 0.08222, 0.08334, 0.66834], + "90": [0, 0.68333, 0.07944, 0.13889, 0.72473], + "160": [0, 0, 0, 0, 0.25] + }, + "Fraktur-Regular": { + "32": [0, 0, 0, 0, 0.25], + "33": [0, 0.69141, 0, 0, 0.29574], + "34": [0, 0.69141, 0, 0, 0.21471], + "38": [0, 0.69141, 0, 0, 0.73786], + "39": [0, 0.69141, 0, 0, 0.21201], + "40": [0.24982, 0.74947, 0, 0, 0.38865], + "41": [0.24982, 0.74947, 0, 0, 0.38865], + "42": [0, 0.62119, 0, 0, 0.27764], + "43": [0.08319, 0.58283, 0, 0, 0.75623], + "44": [0, 0.10803, 0, 0, 0.27764], + "45": [0.08319, 0.58283, 0, 0, 0.75623], + "46": [0, 0.10803, 0, 0, 0.27764], + "47": [0.24982, 0.74947, 0, 0, 0.50181], + "48": [0, 0.47534, 0, 0, 0.50181], + "49": [0, 0.47534, 0, 0, 0.50181], + "50": [0, 0.47534, 0, 0, 0.50181], + "51": [0.18906, 0.47534, 0, 0, 0.50181], + "52": [0.18906, 0.47534, 0, 0, 0.50181], + "53": [0.18906, 0.47534, 0, 0, 0.50181], + "54": [0, 0.69141, 0, 0, 0.50181], + "55": [0.18906, 0.47534, 0, 0, 0.50181], + "56": [0, 0.69141, 0, 0, 0.50181], + "57": [0.18906, 0.47534, 0, 0, 0.50181], + "58": [0, 0.47534, 0, 0, 0.21606], + "59": [0.12604, 0.47534, 0, 0, 0.21606], + "61": [-0.13099, 0.36866, 0, 0, 0.75623], + "63": [0, 0.69141, 0, 0, 0.36245], + "65": [0, 0.69141, 0, 0, 0.7176], + "66": [0, 0.69141, 0, 0, 0.88397], + "67": [0, 0.69141, 0, 0, 0.61254], + "68": [0, 0.69141, 0, 0, 0.83158], + "69": [0, 0.69141, 0, 0, 0.66278], + "70": [0.12604, 0.69141, 0, 0, 0.61119], + "71": [0, 0.69141, 0, 0, 0.78539], + "72": [0.06302, 0.69141, 0, 0, 0.7203], + "73": [0, 0.69141, 0, 0, 0.55448], + "74": [0.12604, 0.69141, 0, 0, 0.55231], + "75": [0, 0.69141, 0, 0, 0.66845], + "76": [0, 0.69141, 0, 0, 0.66602], + "77": [0, 0.69141, 0, 0, 1.04953], + "78": [0, 0.69141, 0, 0, 0.83212], + "79": [0, 0.69141, 0, 0, 0.82699], + "80": [0.18906, 0.69141, 0, 0, 0.82753], + "81": [0.03781, 0.69141, 0, 0, 0.82699], + "82": [0, 0.69141, 0, 0, 0.82807], + "83": [0, 0.69141, 0, 0, 0.82861], + "84": [0, 0.69141, 0, 0, 0.66899], + "85": [0, 0.69141, 0, 0, 0.64576], + "86": [0, 0.69141, 0, 0, 0.83131], + "87": [0, 0.69141, 0, 0, 1.04602], + "88": [0, 0.69141, 0, 0, 0.71922], + "89": [0.18906, 0.69141, 0, 0, 0.83293], + "90": [0.12604, 0.69141, 0, 0, 0.60201], + "91": [0.24982, 0.74947, 0, 0, 0.27764], + "93": [0.24982, 0.74947, 0, 0, 0.27764], + "94": [0, 0.69141, 0, 0, 0.49965], + "97": [0, 0.47534, 0, 0, 0.50046], + "98": [0, 0.69141, 0, 0, 0.51315], + "99": [0, 0.47534, 0, 0, 0.38946], + "100": [0, 0.62119, 0, 0, 0.49857], + "101": [0, 0.47534, 0, 0, 0.40053], + "102": [0.18906, 0.69141, 0, 0, 0.32626], + "103": [0.18906, 0.47534, 0, 0, 0.5037], + "104": [0.18906, 0.69141, 0, 0, 0.52126], + "105": [0, 0.69141, 0, 0, 0.27899], + "106": [0, 0.69141, 0, 0, 0.28088], + "107": [0, 0.69141, 0, 0, 0.38946], + "108": [0, 0.69141, 0, 0, 0.27953], + "109": [0, 0.47534, 0, 0, 0.76676], + "110": [0, 0.47534, 0, 0, 0.52666], + "111": [0, 0.47534, 0, 0, 0.48885], + "112": [0.18906, 0.52396, 0, 0, 0.50046], + "113": [0.18906, 0.47534, 0, 0, 0.48912], + "114": [0, 0.47534, 0, 0, 0.38919], + "115": [0, 0.47534, 0, 0, 0.44266], + "116": [0, 0.62119, 0, 0, 0.33301], + "117": [0, 0.47534, 0, 0, 0.5172], + "118": [0, 0.52396, 0, 0, 0.5118], + "119": [0, 0.52396, 0, 0, 0.77351], + "120": [0.18906, 0.47534, 0, 0, 0.38865], + "121": [0.18906, 0.47534, 0, 0, 0.49884], + "122": [0.18906, 0.47534, 0, 0, 0.39054], + "160": [0, 0, 0, 0, 0.25], + "8216": [0, 0.69141, 0, 0, 0.21471], + "8217": [0, 0.69141, 0, 0, 0.21471], + "58112": [0, 0.62119, 0, 0, 0.49749], + "58113": [0, 0.62119, 0, 0, 0.4983], + "58114": [0.18906, 0.69141, 0, 0, 0.33328], + "58115": [0.18906, 0.69141, 0, 0, 0.32923], + "58116": [0.18906, 0.47534, 0, 0, 0.50343], + "58117": [0, 0.69141, 0, 0, 0.33301], + "58118": [0, 0.62119, 0, 0, 0.33409], + "58119": [0, 0.47534, 0, 0, 0.50073] + }, + "Main-Bold": { + "32": [0, 0, 0, 0, 0.25], + "33": [0, 0.69444, 0, 0, 0.35], + "34": [0, 0.69444, 0, 0, 0.60278], + "35": [0.19444, 0.69444, 0, 0, 0.95833], + "36": [0.05556, 0.75, 0, 0, 0.575], + "37": [0.05556, 0.75, 0, 0, 0.95833], + "38": [0, 0.69444, 0, 0, 0.89444], + "39": [0, 0.69444, 0, 0, 0.31944], + "40": [0.25, 0.75, 0, 0, 0.44722], + "41": [0.25, 0.75, 0, 0, 0.44722], + "42": [0, 0.75, 0, 0, 0.575], + "43": [0.13333, 0.63333, 0, 0, 0.89444], + "44": [0.19444, 0.15556, 0, 0, 0.31944], + "45": [0, 0.44444, 0, 0, 0.38333], + "46": [0, 0.15556, 0, 0, 0.31944], + "47": [0.25, 0.75, 0, 0, 0.575], + "48": [0, 0.64444, 0, 0, 0.575], + "49": [0, 0.64444, 0, 0, 0.575], + "50": [0, 0.64444, 0, 0, 0.575], + "51": [0, 0.64444, 0, 0, 0.575], + "52": [0, 0.64444, 0, 0, 0.575], + "53": [0, 0.64444, 0, 0, 0.575], + "54": [0, 0.64444, 0, 0, 0.575], + "55": [0, 0.64444, 0, 0, 0.575], + "56": [0, 0.64444, 0, 0, 0.575], + "57": [0, 0.64444, 0, 0, 0.575], + "58": [0, 0.44444, 0, 0, 0.31944], + "59": [0.19444, 0.44444, 0, 0, 0.31944], + "60": [0.08556, 0.58556, 0, 0, 0.89444], + "61": [-0.10889, 0.39111, 0, 0, 0.89444], + "62": [0.08556, 0.58556, 0, 0, 0.89444], + "63": [0, 0.69444, 0, 0, 0.54305], + "64": [0, 0.69444, 0, 0, 0.89444], + "65": [0, 0.68611, 0, 0, 0.86944], + "66": [0, 0.68611, 0, 0, 0.81805], + "67": [0, 0.68611, 0, 0, 0.83055], + "68": [0, 0.68611, 0, 0, 0.88194], + "69": [0, 0.68611, 0, 0, 0.75555], + "70": [0, 0.68611, 0, 0, 0.72361], + "71": [0, 0.68611, 0, 0, 0.90416], + "72": [0, 0.68611, 0, 0, 0.9], + "73": [0, 0.68611, 0, 0, 0.43611], + "74": [0, 0.68611, 0, 0, 0.59444], + "75": [0, 0.68611, 0, 0, 0.90138], + "76": [0, 0.68611, 0, 0, 0.69166], + "77": [0, 0.68611, 0, 0, 1.09166], + "78": [0, 0.68611, 0, 0, 0.9], + "79": [0, 0.68611, 0, 0, 0.86388], + "80": [0, 0.68611, 0, 0, 0.78611], + "81": [0.19444, 0.68611, 0, 0, 0.86388], + "82": [0, 0.68611, 0, 0, 0.8625], + "83": [0, 0.68611, 0, 0, 0.63889], + "84": [0, 0.68611, 0, 0, 0.8], + "85": [0, 0.68611, 0, 0, 0.88472], + "86": [0, 0.68611, 0.01597, 0, 0.86944], + "87": [0, 0.68611, 0.01597, 0, 1.18888], + "88": [0, 0.68611, 0, 0, 0.86944], + "89": [0, 0.68611, 0.02875, 0, 0.86944], + "90": [0, 0.68611, 0, 0, 0.70277], + "91": [0.25, 0.75, 0, 0, 0.31944], + "92": [0.25, 0.75, 0, 0, 0.575], + "93": [0.25, 0.75, 0, 0, 0.31944], + "94": [0, 0.69444, 0, 0, 0.575], + "95": [0.31, 0.13444, 0.03194, 0, 0.575], + "97": [0, 0.44444, 0, 0, 0.55902], + "98": [0, 0.69444, 0, 0, 0.63889], + "99": [0, 0.44444, 0, 0, 0.51111], + "100": [0, 0.69444, 0, 0, 0.63889], + "101": [0, 0.44444, 0, 0, 0.52708], + "102": [0, 0.69444, 0.10903, 0, 0.35139], + "103": [0.19444, 0.44444, 0.01597, 0, 0.575], + "104": [0, 0.69444, 0, 0, 0.63889], + "105": [0, 0.69444, 0, 0, 0.31944], + "106": [0.19444, 0.69444, 0, 0, 0.35139], + "107": [0, 0.69444, 0, 0, 0.60694], + "108": [0, 0.69444, 0, 0, 0.31944], + "109": [0, 0.44444, 0, 0, 0.95833], + "110": [0, 0.44444, 0, 0, 0.63889], + "111": [0, 0.44444, 0, 0, 0.575], + "112": [0.19444, 0.44444, 0, 0, 0.63889], + "113": [0.19444, 0.44444, 0, 0, 0.60694], + "114": [0, 0.44444, 0, 0, 0.47361], + "115": [0, 0.44444, 0, 0, 0.45361], + "116": [0, 0.63492, 0, 0, 0.44722], + "117": [0, 0.44444, 0, 0, 0.63889], + "118": [0, 0.44444, 0.01597, 0, 0.60694], + "119": [0, 0.44444, 0.01597, 0, 0.83055], + "120": [0, 0.44444, 0, 0, 0.60694], + "121": [0.19444, 0.44444, 0.01597, 0, 0.60694], + "122": [0, 0.44444, 0, 0, 0.51111], + "123": [0.25, 0.75, 0, 0, 0.575], + "124": [0.25, 0.75, 0, 0, 0.31944], + "125": [0.25, 0.75, 0, 0, 0.575], + "126": [0.35, 0.34444, 0, 0, 0.575], + "160": [0, 0, 0, 0, 0.25], + "163": [0, 0.69444, 0, 0, 0.86853], + "168": [0, 0.69444, 0, 0, 0.575], + "172": [0, 0.44444, 0, 0, 0.76666], + "176": [0, 0.69444, 0, 0, 0.86944], + "177": [0.13333, 0.63333, 0, 0, 0.89444], + "184": [0.17014, 0, 0, 0, 0.51111], + "198": [0, 0.68611, 0, 0, 1.04166], + "215": [0.13333, 0.63333, 0, 0, 0.89444], + "216": [0.04861, 0.73472, 0, 0, 0.89444], + "223": [0, 0.69444, 0, 0, 0.59722], + "230": [0, 0.44444, 0, 0, 0.83055], + "247": [0.13333, 0.63333, 0, 0, 0.89444], + "248": [0.09722, 0.54167, 0, 0, 0.575], + "305": [0, 0.44444, 0, 0, 0.31944], + "338": [0, 0.68611, 0, 0, 1.16944], + "339": [0, 0.44444, 0, 0, 0.89444], + "567": [0.19444, 0.44444, 0, 0, 0.35139], + "710": [0, 0.69444, 0, 0, 0.575], + "711": [0, 0.63194, 0, 0, 0.575], + "713": [0, 0.59611, 0, 0, 0.575], + "714": [0, 0.69444, 0, 0, 0.575], + "715": [0, 0.69444, 0, 0, 0.575], + "728": [0, 0.69444, 0, 0, 0.575], + "729": [0, 0.69444, 0, 0, 0.31944], + "730": [0, 0.69444, 0, 0, 0.86944], + "732": [0, 0.69444, 0, 0, 0.575], + "733": [0, 0.69444, 0, 0, 0.575], + "915": [0, 0.68611, 0, 0, 0.69166], + "916": [0, 0.68611, 0, 0, 0.95833], + "920": [0, 0.68611, 0, 0, 0.89444], + "923": [0, 0.68611, 0, 0, 0.80555], + "926": [0, 0.68611, 0, 0, 0.76666], + "928": [0, 0.68611, 0, 0, 0.9], + "931": [0, 0.68611, 0, 0, 0.83055], + "933": [0, 0.68611, 0, 0, 0.89444], + "934": [0, 0.68611, 0, 0, 0.83055], + "936": [0, 0.68611, 0, 0, 0.89444], + "937": [0, 0.68611, 0, 0, 0.83055], + "8211": [0, 0.44444, 0.03194, 0, 0.575], + "8212": [0, 0.44444, 0.03194, 0, 1.14999], + "8216": [0, 0.69444, 0, 0, 0.31944], + "8217": [0, 0.69444, 0, 0, 0.31944], + "8220": [0, 0.69444, 0, 0, 0.60278], + "8221": [0, 0.69444, 0, 0, 0.60278], + "8224": [0.19444, 0.69444, 0, 0, 0.51111], + "8225": [0.19444, 0.69444, 0, 0, 0.51111], + "8242": [0, 0.55556, 0, 0, 0.34444], + "8407": [0, 0.72444, 0.15486, 0, 0.575], + "8463": [0, 0.69444, 0, 0, 0.66759], + "8465": [0, 0.69444, 0, 0, 0.83055], + "8467": [0, 0.69444, 0, 0, 0.47361], + "8472": [0.19444, 0.44444, 0, 0, 0.74027], + "8476": [0, 0.69444, 0, 0, 0.83055], + "8501": [0, 0.69444, 0, 0, 0.70277], + "8592": [-0.10889, 0.39111, 0, 0, 1.14999], + "8593": [0.19444, 0.69444, 0, 0, 0.575], + "8594": [-0.10889, 0.39111, 0, 0, 1.14999], + "8595": [0.19444, 0.69444, 0, 0, 0.575], + "8596": [-0.10889, 0.39111, 0, 0, 1.14999], + "8597": [0.25, 0.75, 0, 0, 0.575], + "8598": [0.19444, 0.69444, 0, 0, 1.14999], + "8599": [0.19444, 0.69444, 0, 0, 1.14999], + "8600": [0.19444, 0.69444, 0, 0, 1.14999], + "8601": [0.19444, 0.69444, 0, 0, 1.14999], + "8636": [-0.10889, 0.39111, 0, 0, 1.14999], + "8637": [-0.10889, 0.39111, 0, 0, 1.14999], + "8640": [-0.10889, 0.39111, 0, 0, 1.14999], + "8641": [-0.10889, 0.39111, 0, 0, 1.14999], + "8656": [-0.10889, 0.39111, 0, 0, 1.14999], + "8657": [0.19444, 0.69444, 0, 0, 0.70277], + "8658": [-0.10889, 0.39111, 0, 0, 1.14999], + "8659": [0.19444, 0.69444, 0, 0, 0.70277], + "8660": [-0.10889, 0.39111, 0, 0, 1.14999], + "8661": [0.25, 0.75, 0, 0, 0.70277], + "8704": [0, 0.69444, 0, 0, 0.63889], + "8706": [0, 0.69444, 0.06389, 0, 0.62847], + "8707": [0, 0.69444, 0, 0, 0.63889], + "8709": [0.05556, 0.75, 0, 0, 0.575], + "8711": [0, 0.68611, 0, 0, 0.95833], + "8712": [0.08556, 0.58556, 0, 0, 0.76666], + "8715": [0.08556, 0.58556, 0, 0, 0.76666], + "8722": [0.13333, 0.63333, 0, 0, 0.89444], + "8723": [0.13333, 0.63333, 0, 0, 0.89444], + "8725": [0.25, 0.75, 0, 0, 0.575], + "8726": [0.25, 0.75, 0, 0, 0.575], + "8727": [-0.02778, 0.47222, 0, 0, 0.575], + "8728": [-0.02639, 0.47361, 0, 0, 0.575], + "8729": [-0.02639, 0.47361, 0, 0, 0.575], + "8730": [0.18, 0.82, 0, 0, 0.95833], + "8733": [0, 0.44444, 0, 0, 0.89444], + "8734": [0, 0.44444, 0, 0, 1.14999], + "8736": [0, 0.69224, 0, 0, 0.72222], + "8739": [0.25, 0.75, 0, 0, 0.31944], + "8741": [0.25, 0.75, 0, 0, 0.575], + "8743": [0, 0.55556, 0, 0, 0.76666], + "8744": [0, 0.55556, 0, 0, 0.76666], + "8745": [0, 0.55556, 0, 0, 0.76666], + "8746": [0, 0.55556, 0, 0, 0.76666], + "8747": [0.19444, 0.69444, 0.12778, 0, 0.56875], + "8764": [-0.10889, 0.39111, 0, 0, 0.89444], + "8768": [0.19444, 0.69444, 0, 0, 0.31944], + "8771": [0.00222, 0.50222, 0, 0, 0.89444], + "8773": [0.027, 0.638, 0, 0, 0.894], + "8776": [0.02444, 0.52444, 0, 0, 0.89444], + "8781": [0.00222, 0.50222, 0, 0, 0.89444], + "8801": [0.00222, 0.50222, 0, 0, 0.89444], + "8804": [0.19667, 0.69667, 0, 0, 0.89444], + "8805": [0.19667, 0.69667, 0, 0, 0.89444], + "8810": [0.08556, 0.58556, 0, 0, 1.14999], + "8811": [0.08556, 0.58556, 0, 0, 1.14999], + "8826": [0.08556, 0.58556, 0, 0, 0.89444], + "8827": [0.08556, 0.58556, 0, 0, 0.89444], + "8834": [0.08556, 0.58556, 0, 0, 0.89444], + "8835": [0.08556, 0.58556, 0, 0, 0.89444], + "8838": [0.19667, 0.69667, 0, 0, 0.89444], + "8839": [0.19667, 0.69667, 0, 0, 0.89444], + "8846": [0, 0.55556, 0, 0, 0.76666], + "8849": [0.19667, 0.69667, 0, 0, 0.89444], + "8850": [0.19667, 0.69667, 0, 0, 0.89444], + "8851": [0, 0.55556, 0, 0, 0.76666], + "8852": [0, 0.55556, 0, 0, 0.76666], + "8853": [0.13333, 0.63333, 0, 0, 0.89444], + "8854": [0.13333, 0.63333, 0, 0, 0.89444], + "8855": [0.13333, 0.63333, 0, 0, 0.89444], + "8856": [0.13333, 0.63333, 0, 0, 0.89444], + "8857": [0.13333, 0.63333, 0, 0, 0.89444], + "8866": [0, 0.69444, 0, 0, 0.70277], + "8867": [0, 0.69444, 0, 0, 0.70277], + "8868": [0, 0.69444, 0, 0, 0.89444], + "8869": [0, 0.69444, 0, 0, 0.89444], + "8900": [-0.02639, 0.47361, 0, 0, 0.575], + "8901": [-0.02639, 0.47361, 0, 0, 0.31944], + "8902": [-0.02778, 0.47222, 0, 0, 0.575], + "8968": [0.25, 0.75, 0, 0, 0.51111], + "8969": [0.25, 0.75, 0, 0, 0.51111], + "8970": [0.25, 0.75, 0, 0, 0.51111], + "8971": [0.25, 0.75, 0, 0, 0.51111], + "8994": [-0.13889, 0.36111, 0, 0, 1.14999], + "8995": [-0.13889, 0.36111, 0, 0, 1.14999], + "9651": [0.19444, 0.69444, 0, 0, 1.02222], + "9657": [-0.02778, 0.47222, 0, 0, 0.575], + "9661": [0.19444, 0.69444, 0, 0, 1.02222], + "9667": [-0.02778, 0.47222, 0, 0, 0.575], + "9711": [0.19444, 0.69444, 0, 0, 1.14999], + "9824": [0.12963, 0.69444, 0, 0, 0.89444], + "9825": [0.12963, 0.69444, 0, 0, 0.89444], + "9826": [0.12963, 0.69444, 0, 0, 0.89444], + "9827": [0.12963, 0.69444, 0, 0, 0.89444], + "9837": [0, 0.75, 0, 0, 0.44722], + "9838": [0.19444, 0.69444, 0, 0, 0.44722], + "9839": [0.19444, 0.69444, 0, 0, 0.44722], + "10216": [0.25, 0.75, 0, 0, 0.44722], + "10217": [0.25, 0.75, 0, 0, 0.44722], + "10815": [0, 0.68611, 0, 0, 0.9], + "10927": [0.19667, 0.69667, 0, 0, 0.89444], + "10928": [0.19667, 0.69667, 0, 0, 0.89444], + "57376": [0.19444, 0.69444, 0, 0, 0] + }, + "Main-BoldItalic": { + "32": [0, 0, 0, 0, 0.25], + "33": [0, 0.69444, 0.11417, 0, 0.38611], + "34": [0, 0.69444, 0.07939, 0, 0.62055], + "35": [0.19444, 0.69444, 0.06833, 0, 0.94444], + "37": [0.05556, 0.75, 0.12861, 0, 0.94444], + "38": [0, 0.69444, 0.08528, 0, 0.88555], + "39": [0, 0.69444, 0.12945, 0, 0.35555], + "40": [0.25, 0.75, 0.15806, 0, 0.47333], + "41": [0.25, 0.75, 0.03306, 0, 0.47333], + "42": [0, 0.75, 0.14333, 0, 0.59111], + "43": [0.10333, 0.60333, 0.03306, 0, 0.88555], + "44": [0.19444, 0.14722, 0, 0, 0.35555], + "45": [0, 0.44444, 0.02611, 0, 0.41444], + "46": [0, 0.14722, 0, 0, 0.35555], + "47": [0.25, 0.75, 0.15806, 0, 0.59111], + "48": [0, 0.64444, 0.13167, 0, 0.59111], + "49": [0, 0.64444, 0.13167, 0, 0.59111], + "50": [0, 0.64444, 0.13167, 0, 0.59111], + "51": [0, 0.64444, 0.13167, 0, 0.59111], + "52": [0.19444, 0.64444, 0.13167, 0, 0.59111], + "53": [0, 0.64444, 0.13167, 0, 0.59111], + "54": [0, 0.64444, 0.13167, 0, 0.59111], + "55": [0.19444, 0.64444, 0.13167, 0, 0.59111], + "56": [0, 0.64444, 0.13167, 0, 0.59111], + "57": [0, 0.64444, 0.13167, 0, 0.59111], + "58": [0, 0.44444, 0.06695, 0, 0.35555], + "59": [0.19444, 0.44444, 0.06695, 0, 0.35555], + "61": [-0.10889, 0.39111, 0.06833, 0, 0.88555], + "63": [0, 0.69444, 0.11472, 0, 0.59111], + "64": [0, 0.69444, 0.09208, 0, 0.88555], + "65": [0, 0.68611, 0, 0, 0.86555], + "66": [0, 0.68611, 0.0992, 0, 0.81666], + "67": [0, 0.68611, 0.14208, 0, 0.82666], + "68": [0, 0.68611, 0.09062, 0, 0.87555], + "69": [0, 0.68611, 0.11431, 0, 0.75666], + "70": [0, 0.68611, 0.12903, 0, 0.72722], + "71": [0, 0.68611, 0.07347, 0, 0.89527], + "72": [0, 0.68611, 0.17208, 0, 0.8961], + "73": [0, 0.68611, 0.15681, 0, 0.47166], + "74": [0, 0.68611, 0.145, 0, 0.61055], + "75": [0, 0.68611, 0.14208, 0, 0.89499], + "76": [0, 0.68611, 0, 0, 0.69777], + "77": [0, 0.68611, 0.17208, 0, 1.07277], + "78": [0, 0.68611, 0.17208, 0, 0.8961], + "79": [0, 0.68611, 0.09062, 0, 0.85499], + "80": [0, 0.68611, 0.0992, 0, 0.78721], + "81": [0.19444, 0.68611, 0.09062, 0, 0.85499], + "82": [0, 0.68611, 0.02559, 0, 0.85944], + "83": [0, 0.68611, 0.11264, 0, 0.64999], + "84": [0, 0.68611, 0.12903, 0, 0.7961], + "85": [0, 0.68611, 0.17208, 0, 0.88083], + "86": [0, 0.68611, 0.18625, 0, 0.86555], + "87": [0, 0.68611, 0.18625, 0, 1.15999], + "88": [0, 0.68611, 0.15681, 0, 0.86555], + "89": [0, 0.68611, 0.19803, 0, 0.86555], + "90": [0, 0.68611, 0.14208, 0, 0.70888], + "91": [0.25, 0.75, 0.1875, 0, 0.35611], + "93": [0.25, 0.75, 0.09972, 0, 0.35611], + "94": [0, 0.69444, 0.06709, 0, 0.59111], + "95": [0.31, 0.13444, 0.09811, 0, 0.59111], + "97": [0, 0.44444, 0.09426, 0, 0.59111], + "98": [0, 0.69444, 0.07861, 0, 0.53222], + "99": [0, 0.44444, 0.05222, 0, 0.53222], + "100": [0, 0.69444, 0.10861, 0, 0.59111], + "101": [0, 0.44444, 0.085, 0, 0.53222], + "102": [0.19444, 0.69444, 0.21778, 0, 0.4], + "103": [0.19444, 0.44444, 0.105, 0, 0.53222], + "104": [0, 0.69444, 0.09426, 0, 0.59111], + "105": [0, 0.69326, 0.11387, 0, 0.35555], + "106": [0.19444, 0.69326, 0.1672, 0, 0.35555], + "107": [0, 0.69444, 0.11111, 0, 0.53222], + "108": [0, 0.69444, 0.10861, 0, 0.29666], + "109": [0, 0.44444, 0.09426, 0, 0.94444], + "110": [0, 0.44444, 0.09426, 0, 0.64999], + "111": [0, 0.44444, 0.07861, 0, 0.59111], + "112": [0.19444, 0.44444, 0.07861, 0, 0.59111], + "113": [0.19444, 0.44444, 0.105, 0, 0.53222], + "114": [0, 0.44444, 0.11111, 0, 0.50167], + "115": [0, 0.44444, 0.08167, 0, 0.48694], + "116": [0, 0.63492, 0.09639, 0, 0.385], + "117": [0, 0.44444, 0.09426, 0, 0.62055], + "118": [0, 0.44444, 0.11111, 0, 0.53222], + "119": [0, 0.44444, 0.11111, 0, 0.76777], + "120": [0, 0.44444, 0.12583, 0, 0.56055], + "121": [0.19444, 0.44444, 0.105, 0, 0.56166], + "122": [0, 0.44444, 0.13889, 0, 0.49055], + "126": [0.35, 0.34444, 0.11472, 0, 0.59111], + "160": [0, 0, 0, 0, 0.25], + "168": [0, 0.69444, 0.11473, 0, 0.59111], + "176": [0, 0.69444, 0, 0, 0.94888], + "184": [0.17014, 0, 0, 0, 0.53222], + "198": [0, 0.68611, 0.11431, 0, 1.02277], + "216": [0.04861, 0.73472, 0.09062, 0, 0.88555], + "223": [0.19444, 0.69444, 0.09736, 0, 0.665], + "230": [0, 0.44444, 0.085, 0, 0.82666], + "248": [0.09722, 0.54167, 0.09458, 0, 0.59111], + "305": [0, 0.44444, 0.09426, 0, 0.35555], + "338": [0, 0.68611, 0.11431, 0, 1.14054], + "339": [0, 0.44444, 0.085, 0, 0.82666], + "567": [0.19444, 0.44444, 0.04611, 0, 0.385], + "710": [0, 0.69444, 0.06709, 0, 0.59111], + "711": [0, 0.63194, 0.08271, 0, 0.59111], + "713": [0, 0.59444, 0.10444, 0, 0.59111], + "714": [0, 0.69444, 0.08528, 0, 0.59111], + "715": [0, 0.69444, 0, 0, 0.59111], + "728": [0, 0.69444, 0.10333, 0, 0.59111], + "729": [0, 0.69444, 0.12945, 0, 0.35555], + "730": [0, 0.69444, 0, 0, 0.94888], + "732": [0, 0.69444, 0.11472, 0, 0.59111], + "733": [0, 0.69444, 0.11472, 0, 0.59111], + "915": [0, 0.68611, 0.12903, 0, 0.69777], + "916": [0, 0.68611, 0, 0, 0.94444], + "920": [0, 0.68611, 0.09062, 0, 0.88555], + "923": [0, 0.68611, 0, 0, 0.80666], + "926": [0, 0.68611, 0.15092, 0, 0.76777], + "928": [0, 0.68611, 0.17208, 0, 0.8961], + "931": [0, 0.68611, 0.11431, 0, 0.82666], + "933": [0, 0.68611, 0.10778, 0, 0.88555], + "934": [0, 0.68611, 0.05632, 0, 0.82666], + "936": [0, 0.68611, 0.10778, 0, 0.88555], + "937": [0, 0.68611, 0.0992, 0, 0.82666], + "8211": [0, 0.44444, 0.09811, 0, 0.59111], + "8212": [0, 0.44444, 0.09811, 0, 1.18221], + "8216": [0, 0.69444, 0.12945, 0, 0.35555], + "8217": [0, 0.69444, 0.12945, 0, 0.35555], + "8220": [0, 0.69444, 0.16772, 0, 0.62055], + "8221": [0, 0.69444, 0.07939, 0, 0.62055] + }, + "Main-Italic": { + "32": [0, 0, 0, 0, 0.25], + "33": [0, 0.69444, 0.12417, 0, 0.30667], + "34": [0, 0.69444, 0.06961, 0, 0.51444], + "35": [0.19444, 0.69444, 0.06616, 0, 0.81777], + "37": [0.05556, 0.75, 0.13639, 0, 0.81777], + "38": [0, 0.69444, 0.09694, 0, 0.76666], + "39": [0, 0.69444, 0.12417, 0, 0.30667], + "40": [0.25, 0.75, 0.16194, 0, 0.40889], + "41": [0.25, 0.75, 0.03694, 0, 0.40889], + "42": [0, 0.75, 0.14917, 0, 0.51111], + "43": [0.05667, 0.56167, 0.03694, 0, 0.76666], + "44": [0.19444, 0.10556, 0, 0, 0.30667], + "45": [0, 0.43056, 0.02826, 0, 0.35778], + "46": [0, 0.10556, 0, 0, 0.30667], + "47": [0.25, 0.75, 0.16194, 0, 0.51111], + "48": [0, 0.64444, 0.13556, 0, 0.51111], + "49": [0, 0.64444, 0.13556, 0, 0.51111], + "50": [0, 0.64444, 0.13556, 0, 0.51111], + "51": [0, 0.64444, 0.13556, 0, 0.51111], + "52": [0.19444, 0.64444, 0.13556, 0, 0.51111], + "53": [0, 0.64444, 0.13556, 0, 0.51111], + "54": [0, 0.64444, 0.13556, 0, 0.51111], + "55": [0.19444, 0.64444, 0.13556, 0, 0.51111], + "56": [0, 0.64444, 0.13556, 0, 0.51111], + "57": [0, 0.64444, 0.13556, 0, 0.51111], + "58": [0, 0.43056, 0.0582, 0, 0.30667], + "59": [0.19444, 0.43056, 0.0582, 0, 0.30667], + "61": [-0.13313, 0.36687, 0.06616, 0, 0.76666], + "63": [0, 0.69444, 0.1225, 0, 0.51111], + "64": [0, 0.69444, 0.09597, 0, 0.76666], + "65": [0, 0.68333, 0, 0, 0.74333], + "66": [0, 0.68333, 0.10257, 0, 0.70389], + "67": [0, 0.68333, 0.14528, 0, 0.71555], + "68": [0, 0.68333, 0.09403, 0, 0.755], + "69": [0, 0.68333, 0.12028, 0, 0.67833], + "70": [0, 0.68333, 0.13305, 0, 0.65277], + "71": [0, 0.68333, 0.08722, 0, 0.77361], + "72": [0, 0.68333, 0.16389, 0, 0.74333], + "73": [0, 0.68333, 0.15806, 0, 0.38555], + "74": [0, 0.68333, 0.14028, 0, 0.525], + "75": [0, 0.68333, 0.14528, 0, 0.76888], + "76": [0, 0.68333, 0, 0, 0.62722], + "77": [0, 0.68333, 0.16389, 0, 0.89666], + "78": [0, 0.68333, 0.16389, 0, 0.74333], + "79": [0, 0.68333, 0.09403, 0, 0.76666], + "80": [0, 0.68333, 0.10257, 0, 0.67833], + "81": [0.19444, 0.68333, 0.09403, 0, 0.76666], + "82": [0, 0.68333, 0.03868, 0, 0.72944], + "83": [0, 0.68333, 0.11972, 0, 0.56222], + "84": [0, 0.68333, 0.13305, 0, 0.71555], + "85": [0, 0.68333, 0.16389, 0, 0.74333], + "86": [0, 0.68333, 0.18361, 0, 0.74333], + "87": [0, 0.68333, 0.18361, 0, 0.99888], + "88": [0, 0.68333, 0.15806, 0, 0.74333], + "89": [0, 0.68333, 0.19383, 0, 0.74333], + "90": [0, 0.68333, 0.14528, 0, 0.61333], + "91": [0.25, 0.75, 0.1875, 0, 0.30667], + "93": [0.25, 0.75, 0.10528, 0, 0.30667], + "94": [0, 0.69444, 0.06646, 0, 0.51111], + "95": [0.31, 0.12056, 0.09208, 0, 0.51111], + "97": [0, 0.43056, 0.07671, 0, 0.51111], + "98": [0, 0.69444, 0.06312, 0, 0.46], + "99": [0, 0.43056, 0.05653, 0, 0.46], + "100": [0, 0.69444, 0.10333, 0, 0.51111], + "101": [0, 0.43056, 0.07514, 0, 0.46], + "102": [0.19444, 0.69444, 0.21194, 0, 0.30667], + "103": [0.19444, 0.43056, 0.08847, 0, 0.46], + "104": [0, 0.69444, 0.07671, 0, 0.51111], + "105": [0, 0.65536, 0.1019, 0, 0.30667], + "106": [0.19444, 0.65536, 0.14467, 0, 0.30667], + "107": [0, 0.69444, 0.10764, 0, 0.46], + "108": [0, 0.69444, 0.10333, 0, 0.25555], + "109": [0, 0.43056, 0.07671, 0, 0.81777], + "110": [0, 0.43056, 0.07671, 0, 0.56222], + "111": [0, 0.43056, 0.06312, 0, 0.51111], + "112": [0.19444, 0.43056, 0.06312, 0, 0.51111], + "113": [0.19444, 0.43056, 0.08847, 0, 0.46], + "114": [0, 0.43056, 0.10764, 0, 0.42166], + "115": [0, 0.43056, 0.08208, 0, 0.40889], + "116": [0, 0.61508, 0.09486, 0, 0.33222], + "117": [0, 0.43056, 0.07671, 0, 0.53666], + "118": [0, 0.43056, 0.10764, 0, 0.46], + "119": [0, 0.43056, 0.10764, 0, 0.66444], + "120": [0, 0.43056, 0.12042, 0, 0.46389], + "121": [0.19444, 0.43056, 0.08847, 0, 0.48555], + "122": [0, 0.43056, 0.12292, 0, 0.40889], + "126": [0.35, 0.31786, 0.11585, 0, 0.51111], + "160": [0, 0, 0, 0, 0.25], + "168": [0, 0.66786, 0.10474, 0, 0.51111], + "176": [0, 0.69444, 0, 0, 0.83129], + "184": [0.17014, 0, 0, 0, 0.46], + "198": [0, 0.68333, 0.12028, 0, 0.88277], + "216": [0.04861, 0.73194, 0.09403, 0, 0.76666], + "223": [0.19444, 0.69444, 0.10514, 0, 0.53666], + "230": [0, 0.43056, 0.07514, 0, 0.71555], + "248": [0.09722, 0.52778, 0.09194, 0, 0.51111], + "338": [0, 0.68333, 0.12028, 0, 0.98499], + "339": [0, 0.43056, 0.07514, 0, 0.71555], + "710": [0, 0.69444, 0.06646, 0, 0.51111], + "711": [0, 0.62847, 0.08295, 0, 0.51111], + "713": [0, 0.56167, 0.10333, 0, 0.51111], + "714": [0, 0.69444, 0.09694, 0, 0.51111], + "715": [0, 0.69444, 0, 0, 0.51111], + "728": [0, 0.69444, 0.10806, 0, 0.51111], + "729": [0, 0.66786, 0.11752, 0, 0.30667], + "730": [0, 0.69444, 0, 0, 0.83129], + "732": [0, 0.66786, 0.11585, 0, 0.51111], + "733": [0, 0.69444, 0.1225, 0, 0.51111], + "915": [0, 0.68333, 0.13305, 0, 0.62722], + "916": [0, 0.68333, 0, 0, 0.81777], + "920": [0, 0.68333, 0.09403, 0, 0.76666], + "923": [0, 0.68333, 0, 0, 0.69222], + "926": [0, 0.68333, 0.15294, 0, 0.66444], + "928": [0, 0.68333, 0.16389, 0, 0.74333], + "931": [0, 0.68333, 0.12028, 0, 0.71555], + "933": [0, 0.68333, 0.11111, 0, 0.76666], + "934": [0, 0.68333, 0.05986, 0, 0.71555], + "936": [0, 0.68333, 0.11111, 0, 0.76666], + "937": [0, 0.68333, 0.10257, 0, 0.71555], + "8211": [0, 0.43056, 0.09208, 0, 0.51111], + "8212": [0, 0.43056, 0.09208, 0, 1.02222], + "8216": [0, 0.69444, 0.12417, 0, 0.30667], + "8217": [0, 0.69444, 0.12417, 0, 0.30667], + "8220": [0, 0.69444, 0.1685, 0, 0.51444], + "8221": [0, 0.69444, 0.06961, 0, 0.51444], + "8463": [0, 0.68889, 0, 0, 0.54028] + }, + "Main-Regular": { + "32": [0, 0, 0, 0, 0.25], + "33": [0, 0.69444, 0, 0, 0.27778], + "34": [0, 0.69444, 0, 0, 0.5], + "35": [0.19444, 0.69444, 0, 0, 0.83334], + "36": [0.05556, 0.75, 0, 0, 0.5], + "37": [0.05556, 0.75, 0, 0, 0.83334], + "38": [0, 0.69444, 0, 0, 0.77778], + "39": [0, 0.69444, 0, 0, 0.27778], + "40": [0.25, 0.75, 0, 0, 0.38889], + "41": [0.25, 0.75, 0, 0, 0.38889], + "42": [0, 0.75, 0, 0, 0.5], + "43": [0.08333, 0.58333, 0, 0, 0.77778], + "44": [0.19444, 0.10556, 0, 0, 0.27778], + "45": [0, 0.43056, 0, 0, 0.33333], + "46": [0, 0.10556, 0, 0, 0.27778], + "47": [0.25, 0.75, 0, 0, 0.5], + "48": [0, 0.64444, 0, 0, 0.5], + "49": [0, 0.64444, 0, 0, 0.5], + "50": [0, 0.64444, 0, 0, 0.5], + "51": [0, 0.64444, 0, 0, 0.5], + "52": [0, 0.64444, 0, 0, 0.5], + "53": [0, 0.64444, 0, 0, 0.5], + "54": [0, 0.64444, 0, 0, 0.5], + "55": [0, 0.64444, 0, 0, 0.5], + "56": [0, 0.64444, 0, 0, 0.5], + "57": [0, 0.64444, 0, 0, 0.5], + "58": [0, 0.43056, 0, 0, 0.27778], + "59": [0.19444, 0.43056, 0, 0, 0.27778], + "60": [0.0391, 0.5391, 0, 0, 0.77778], + "61": [-0.13313, 0.36687, 0, 0, 0.77778], + "62": [0.0391, 0.5391, 0, 0, 0.77778], + "63": [0, 0.69444, 0, 0, 0.47222], + "64": [0, 0.69444, 0, 0, 0.77778], + "65": [0, 0.68333, 0, 0, 0.75], + "66": [0, 0.68333, 0, 0, 0.70834], + "67": [0, 0.68333, 0, 0, 0.72222], + "68": [0, 0.68333, 0, 0, 0.76389], + "69": [0, 0.68333, 0, 0, 0.68056], + "70": [0, 0.68333, 0, 0, 0.65278], + "71": [0, 0.68333, 0, 0, 0.78472], + "72": [0, 0.68333, 0, 0, 0.75], + "73": [0, 0.68333, 0, 0, 0.36111], + "74": [0, 0.68333, 0, 0, 0.51389], + "75": [0, 0.68333, 0, 0, 0.77778], + "76": [0, 0.68333, 0, 0, 0.625], + "77": [0, 0.68333, 0, 0, 0.91667], + "78": [0, 0.68333, 0, 0, 0.75], + "79": [0, 0.68333, 0, 0, 0.77778], + "80": [0, 0.68333, 0, 0, 0.68056], + "81": [0.19444, 0.68333, 0, 0, 0.77778], + "82": [0, 0.68333, 0, 0, 0.73611], + "83": [0, 0.68333, 0, 0, 0.55556], + "84": [0, 0.68333, 0, 0, 0.72222], + "85": [0, 0.68333, 0, 0, 0.75], + "86": [0, 0.68333, 0.01389, 0, 0.75], + "87": [0, 0.68333, 0.01389, 0, 1.02778], + "88": [0, 0.68333, 0, 0, 0.75], + "89": [0, 0.68333, 0.025, 0, 0.75], + "90": [0, 0.68333, 0, 0, 0.61111], + "91": [0.25, 0.75, 0, 0, 0.27778], + "92": [0.25, 0.75, 0, 0, 0.5], + "93": [0.25, 0.75, 0, 0, 0.27778], + "94": [0, 0.69444, 0, 0, 0.5], + "95": [0.31, 0.12056, 0.02778, 0, 0.5], + "97": [0, 0.43056, 0, 0, 0.5], + "98": [0, 0.69444, 0, 0, 0.55556], + "99": [0, 0.43056, 0, 0, 0.44445], + "100": [0, 0.69444, 0, 0, 0.55556], + "101": [0, 0.43056, 0, 0, 0.44445], + "102": [0, 0.69444, 0.07778, 0, 0.30556], + "103": [0.19444, 0.43056, 0.01389, 0, 0.5], + "104": [0, 0.69444, 0, 0, 0.55556], + "105": [0, 0.66786, 0, 0, 0.27778], + "106": [0.19444, 0.66786, 0, 0, 0.30556], + "107": [0, 0.69444, 0, 0, 0.52778], + "108": [0, 0.69444, 0, 0, 0.27778], + "109": [0, 0.43056, 0, 0, 0.83334], + "110": [0, 0.43056, 0, 0, 0.55556], + "111": [0, 0.43056, 0, 0, 0.5], + "112": [0.19444, 0.43056, 0, 0, 0.55556], + "113": [0.19444, 0.43056, 0, 0, 0.52778], + "114": [0, 0.43056, 0, 0, 0.39167], + "115": [0, 0.43056, 0, 0, 0.39445], + "116": [0, 0.61508, 0, 0, 0.38889], + "117": [0, 0.43056, 0, 0, 0.55556], + "118": [0, 0.43056, 0.01389, 0, 0.52778], + "119": [0, 0.43056, 0.01389, 0, 0.72222], + "120": [0, 0.43056, 0, 0, 0.52778], + "121": [0.19444, 0.43056, 0.01389, 0, 0.52778], + "122": [0, 0.43056, 0, 0, 0.44445], + "123": [0.25, 0.75, 0, 0, 0.5], + "124": [0.25, 0.75, 0, 0, 0.27778], + "125": [0.25, 0.75, 0, 0, 0.5], + "126": [0.35, 0.31786, 0, 0, 0.5], + "160": [0, 0, 0, 0, 0.25], + "163": [0, 0.69444, 0, 0, 0.76909], + "167": [0.19444, 0.69444, 0, 0, 0.44445], + "168": [0, 0.66786, 0, 0, 0.5], + "172": [0, 0.43056, 0, 0, 0.66667], + "176": [0, 0.69444, 0, 0, 0.75], + "177": [0.08333, 0.58333, 0, 0, 0.77778], + "182": [0.19444, 0.69444, 0, 0, 0.61111], + "184": [0.17014, 0, 0, 0, 0.44445], + "198": [0, 0.68333, 0, 0, 0.90278], + "215": [0.08333, 0.58333, 0, 0, 0.77778], + "216": [0.04861, 0.73194, 0, 0, 0.77778], + "223": [0, 0.69444, 0, 0, 0.5], + "230": [0, 0.43056, 0, 0, 0.72222], + "247": [0.08333, 0.58333, 0, 0, 0.77778], + "248": [0.09722, 0.52778, 0, 0, 0.5], + "305": [0, 0.43056, 0, 0, 0.27778], + "338": [0, 0.68333, 0, 0, 1.01389], + "339": [0, 0.43056, 0, 0, 0.77778], + "567": [0.19444, 0.43056, 0, 0, 0.30556], + "710": [0, 0.69444, 0, 0, 0.5], + "711": [0, 0.62847, 0, 0, 0.5], + "713": [0, 0.56778, 0, 0, 0.5], + "714": [0, 0.69444, 0, 0, 0.5], + "715": [0, 0.69444, 0, 0, 0.5], + "728": [0, 0.69444, 0, 0, 0.5], + "729": [0, 0.66786, 0, 0, 0.27778], + "730": [0, 0.69444, 0, 0, 0.75], + "732": [0, 0.66786, 0, 0, 0.5], + "733": [0, 0.69444, 0, 0, 0.5], + "915": [0, 0.68333, 0, 0, 0.625], + "916": [0, 0.68333, 0, 0, 0.83334], + "920": [0, 0.68333, 0, 0, 0.77778], + "923": [0, 0.68333, 0, 0, 0.69445], + "926": [0, 0.68333, 0, 0, 0.66667], + "928": [0, 0.68333, 0, 0, 0.75], + "931": [0, 0.68333, 0, 0, 0.72222], + "933": [0, 0.68333, 0, 0, 0.77778], + "934": [0, 0.68333, 0, 0, 0.72222], + "936": [0, 0.68333, 0, 0, 0.77778], + "937": [0, 0.68333, 0, 0, 0.72222], + "8211": [0, 0.43056, 0.02778, 0, 0.5], + "8212": [0, 0.43056, 0.02778, 0, 1.0], + "8216": [0, 0.69444, 0, 0, 0.27778], + "8217": [0, 0.69444, 0, 0, 0.27778], + "8220": [0, 0.69444, 0, 0, 0.5], + "8221": [0, 0.69444, 0, 0, 0.5], + "8224": [0.19444, 0.69444, 0, 0, 0.44445], + "8225": [0.19444, 0.69444, 0, 0, 0.44445], + "8230": [0, 0.123, 0, 0, 1.172], + "8242": [0, 0.55556, 0, 0, 0.275], + "8407": [0, 0.71444, 0.15382, 0, 0.5], + "8463": [0, 0.68889, 0, 0, 0.54028], + "8465": [0, 0.69444, 0, 0, 0.72222], + "8467": [0, 0.69444, 0, 0.11111, 0.41667], + "8472": [0.19444, 0.43056, 0, 0.11111, 0.63646], + "8476": [0, 0.69444, 0, 0, 0.72222], + "8501": [0, 0.69444, 0, 0, 0.61111], + "8592": [-0.13313, 0.36687, 0, 0, 1.0], + "8593": [0.19444, 0.69444, 0, 0, 0.5], + "8594": [-0.13313, 0.36687, 0, 0, 1.0], + "8595": [0.19444, 0.69444, 0, 0, 0.5], + "8596": [-0.13313, 0.36687, 0, 0, 1.0], + "8597": [0.25, 0.75, 0, 0, 0.5], + "8598": [0.19444, 0.69444, 0, 0, 1.0], + "8599": [0.19444, 0.69444, 0, 0, 1.0], + "8600": [0.19444, 0.69444, 0, 0, 1.0], + "8601": [0.19444, 0.69444, 0, 0, 1.0], + "8614": [0.011, 0.511, 0, 0, 1.0], + "8617": [0.011, 0.511, 0, 0, 1.126], + "8618": [0.011, 0.511, 0, 0, 1.126], + "8636": [-0.13313, 0.36687, 0, 0, 1.0], + "8637": [-0.13313, 0.36687, 0, 0, 1.0], + "8640": [-0.13313, 0.36687, 0, 0, 1.0], + "8641": [-0.13313, 0.36687, 0, 0, 1.0], + "8652": [0.011, 0.671, 0, 0, 1.0], + "8656": [-0.13313, 0.36687, 0, 0, 1.0], + "8657": [0.19444, 0.69444, 0, 0, 0.61111], + "8658": [-0.13313, 0.36687, 0, 0, 1.0], + "8659": [0.19444, 0.69444, 0, 0, 0.61111], + "8660": [-0.13313, 0.36687, 0, 0, 1.0], + "8661": [0.25, 0.75, 0, 0, 0.61111], + "8704": [0, 0.69444, 0, 0, 0.55556], + "8706": [0, 0.69444, 0.05556, 0.08334, 0.5309], + "8707": [0, 0.69444, 0, 0, 0.55556], + "8709": [0.05556, 0.75, 0, 0, 0.5], + "8711": [0, 0.68333, 0, 0, 0.83334], + "8712": [0.0391, 0.5391, 0, 0, 0.66667], + "8715": [0.0391, 0.5391, 0, 0, 0.66667], + "8722": [0.08333, 0.58333, 0, 0, 0.77778], + "8723": [0.08333, 0.58333, 0, 0, 0.77778], + "8725": [0.25, 0.75, 0, 0, 0.5], + "8726": [0.25, 0.75, 0, 0, 0.5], + "8727": [-0.03472, 0.46528, 0, 0, 0.5], + "8728": [-0.05555, 0.44445, 0, 0, 0.5], + "8729": [-0.05555, 0.44445, 0, 0, 0.5], + "8730": [0.2, 0.8, 0, 0, 0.83334], + "8733": [0, 0.43056, 0, 0, 0.77778], + "8734": [0, 0.43056, 0, 0, 1.0], + "8736": [0, 0.69224, 0, 0, 0.72222], + "8739": [0.25, 0.75, 0, 0, 0.27778], + "8741": [0.25, 0.75, 0, 0, 0.5], + "8743": [0, 0.55556, 0, 0, 0.66667], + "8744": [0, 0.55556, 0, 0, 0.66667], + "8745": [0, 0.55556, 0, 0, 0.66667], + "8746": [0, 0.55556, 0, 0, 0.66667], + "8747": [0.19444, 0.69444, 0.11111, 0, 0.41667], + "8764": [-0.13313, 0.36687, 0, 0, 0.77778], + "8768": [0.19444, 0.69444, 0, 0, 0.27778], + "8771": [-0.03625, 0.46375, 0, 0, 0.77778], + "8773": [-0.022, 0.589, 0, 0, 0.778], + "8776": [-0.01688, 0.48312, 0, 0, 0.77778], + "8781": [-0.03625, 0.46375, 0, 0, 0.77778], + "8784": [-0.133, 0.673, 0, 0, 0.778], + "8801": [-0.03625, 0.46375, 0, 0, 0.77778], + "8804": [0.13597, 0.63597, 0, 0, 0.77778], + "8805": [0.13597, 0.63597, 0, 0, 0.77778], + "8810": [0.0391, 0.5391, 0, 0, 1.0], + "8811": [0.0391, 0.5391, 0, 0, 1.0], + "8826": [0.0391, 0.5391, 0, 0, 0.77778], + "8827": [0.0391, 0.5391, 0, 0, 0.77778], + "8834": [0.0391, 0.5391, 0, 0, 0.77778], + "8835": [0.0391, 0.5391, 0, 0, 0.77778], + "8838": [0.13597, 0.63597, 0, 0, 0.77778], + "8839": [0.13597, 0.63597, 0, 0, 0.77778], + "8846": [0, 0.55556, 0, 0, 0.66667], + "8849": [0.13597, 0.63597, 0, 0, 0.77778], + "8850": [0.13597, 0.63597, 0, 0, 0.77778], + "8851": [0, 0.55556, 0, 0, 0.66667], + "8852": [0, 0.55556, 0, 0, 0.66667], + "8853": [0.08333, 0.58333, 0, 0, 0.77778], + "8854": [0.08333, 0.58333, 0, 0, 0.77778], + "8855": [0.08333, 0.58333, 0, 0, 0.77778], + "8856": [0.08333, 0.58333, 0, 0, 0.77778], + "8857": [0.08333, 0.58333, 0, 0, 0.77778], + "8866": [0, 0.69444, 0, 0, 0.61111], + "8867": [0, 0.69444, 0, 0, 0.61111], + "8868": [0, 0.69444, 0, 0, 0.77778], + "8869": [0, 0.69444, 0, 0, 0.77778], + "8872": [0.249, 0.75, 0, 0, 0.867], + "8900": [-0.05555, 0.44445, 0, 0, 0.5], + "8901": [-0.05555, 0.44445, 0, 0, 0.27778], + "8902": [-0.03472, 0.46528, 0, 0, 0.5], + "8904": [0.005, 0.505, 0, 0, 0.9], + "8942": [0.03, 0.903, 0, 0, 0.278], + "8943": [-0.19, 0.313, 0, 0, 1.172], + "8945": [-0.1, 0.823, 0, 0, 1.282], + "8968": [0.25, 0.75, 0, 0, 0.44445], + "8969": [0.25, 0.75, 0, 0, 0.44445], + "8970": [0.25, 0.75, 0, 0, 0.44445], + "8971": [0.25, 0.75, 0, 0, 0.44445], + "8994": [-0.14236, 0.35764, 0, 0, 1.0], + "8995": [-0.14236, 0.35764, 0, 0, 1.0], + "9136": [0.244, 0.744, 0, 0, 0.412], + "9137": [0.244, 0.745, 0, 0, 0.412], + "9651": [0.19444, 0.69444, 0, 0, 0.88889], + "9657": [-0.03472, 0.46528, 0, 0, 0.5], + "9661": [0.19444, 0.69444, 0, 0, 0.88889], + "9667": [-0.03472, 0.46528, 0, 0, 0.5], + "9711": [0.19444, 0.69444, 0, 0, 1.0], + "9824": [0.12963, 0.69444, 0, 0, 0.77778], + "9825": [0.12963, 0.69444, 0, 0, 0.77778], + "9826": [0.12963, 0.69444, 0, 0, 0.77778], + "9827": [0.12963, 0.69444, 0, 0, 0.77778], + "9837": [0, 0.75, 0, 0, 0.38889], + "9838": [0.19444, 0.69444, 0, 0, 0.38889], + "9839": [0.19444, 0.69444, 0, 0, 0.38889], + "10216": [0.25, 0.75, 0, 0, 0.38889], + "10217": [0.25, 0.75, 0, 0, 0.38889], + "10222": [0.244, 0.744, 0, 0, 0.412], + "10223": [0.244, 0.745, 0, 0, 0.412], + "10229": [0.011, 0.511, 0, 0, 1.609], + "10230": [0.011, 0.511, 0, 0, 1.638], + "10231": [0.011, 0.511, 0, 0, 1.859], + "10232": [0.024, 0.525, 0, 0, 1.609], + "10233": [0.024, 0.525, 0, 0, 1.638], + "10234": [0.024, 0.525, 0, 0, 1.858], + "10236": [0.011, 0.511, 0, 0, 1.638], + "10815": [0, 0.68333, 0, 0, 0.75], + "10927": [0.13597, 0.63597, 0, 0, 0.77778], + "10928": [0.13597, 0.63597, 0, 0, 0.77778], + "57376": [0.19444, 0.69444, 0, 0, 0] + }, + "Math-BoldItalic": { + "32": [0, 0, 0, 0, 0.25], + "48": [0, 0.44444, 0, 0, 0.575], + "49": [0, 0.44444, 0, 0, 0.575], + "50": [0, 0.44444, 0, 0, 0.575], + "51": [0.19444, 0.44444, 0, 0, 0.575], + "52": [0.19444, 0.44444, 0, 0, 0.575], + "53": [0.19444, 0.44444, 0, 0, 0.575], + "54": [0, 0.64444, 0, 0, 0.575], + "55": [0.19444, 0.44444, 0, 0, 0.575], + "56": [0, 0.64444, 0, 0, 0.575], + "57": [0.19444, 0.44444, 0, 0, 0.575], + "65": [0, 0.68611, 0, 0, 0.86944], + "66": [0, 0.68611, 0.04835, 0, 0.8664], + "67": [0, 0.68611, 0.06979, 0, 0.81694], + "68": [0, 0.68611, 0.03194, 0, 0.93812], + "69": [0, 0.68611, 0.05451, 0, 0.81007], + "70": [0, 0.68611, 0.15972, 0, 0.68889], + "71": [0, 0.68611, 0, 0, 0.88673], + "72": [0, 0.68611, 0.08229, 0, 0.98229], + "73": [0, 0.68611, 0.07778, 0, 0.51111], + "74": [0, 0.68611, 0.10069, 0, 0.63125], + "75": [0, 0.68611, 0.06979, 0, 0.97118], + "76": [0, 0.68611, 0, 0, 0.75555], + "77": [0, 0.68611, 0.11424, 0, 1.14201], + "78": [0, 0.68611, 0.11424, 0, 0.95034], + "79": [0, 0.68611, 0.03194, 0, 0.83666], + "80": [0, 0.68611, 0.15972, 0, 0.72309], + "81": [0.19444, 0.68611, 0, 0, 0.86861], + "82": [0, 0.68611, 0.00421, 0, 0.87235], + "83": [0, 0.68611, 0.05382, 0, 0.69271], + "84": [0, 0.68611, 0.15972, 0, 0.63663], + "85": [0, 0.68611, 0.11424, 0, 0.80027], + "86": [0, 0.68611, 0.25555, 0, 0.67778], + "87": [0, 0.68611, 0.15972, 0, 1.09305], + "88": [0, 0.68611, 0.07778, 0, 0.94722], + "89": [0, 0.68611, 0.25555, 0, 0.67458], + "90": [0, 0.68611, 0.06979, 0, 0.77257], + "97": [0, 0.44444, 0, 0, 0.63287], + "98": [0, 0.69444, 0, 0, 0.52083], + "99": [0, 0.44444, 0, 0, 0.51342], + "100": [0, 0.69444, 0, 0, 0.60972], + "101": [0, 0.44444, 0, 0, 0.55361], + "102": [0.19444, 0.69444, 0.11042, 0, 0.56806], + "103": [0.19444, 0.44444, 0.03704, 0, 0.5449], + "104": [0, 0.69444, 0, 0, 0.66759], + "105": [0, 0.69326, 0, 0, 0.4048], + "106": [0.19444, 0.69326, 0.0622, 0, 0.47083], + "107": [0, 0.69444, 0.01852, 0, 0.6037], + "108": [0, 0.69444, 0.0088, 0, 0.34815], + "109": [0, 0.44444, 0, 0, 1.0324], + "110": [0, 0.44444, 0, 0, 0.71296], + "111": [0, 0.44444, 0, 0, 0.58472], + "112": [0.19444, 0.44444, 0, 0, 0.60092], + "113": [0.19444, 0.44444, 0.03704, 0, 0.54213], + "114": [0, 0.44444, 0.03194, 0, 0.5287], + "115": [0, 0.44444, 0, 0, 0.53125], + "116": [0, 0.63492, 0, 0, 0.41528], + "117": [0, 0.44444, 0, 0, 0.68102], + "118": [0, 0.44444, 0.03704, 0, 0.56666], + "119": [0, 0.44444, 0.02778, 0, 0.83148], + "120": [0, 0.44444, 0, 0, 0.65903], + "121": [0.19444, 0.44444, 0.03704, 0, 0.59028], + "122": [0, 0.44444, 0.04213, 0, 0.55509], + "160": [0, 0, 0, 0, 0.25], + "915": [0, 0.68611, 0.15972, 0, 0.65694], + "916": [0, 0.68611, 0, 0, 0.95833], + "920": [0, 0.68611, 0.03194, 0, 0.86722], + "923": [0, 0.68611, 0, 0, 0.80555], + "926": [0, 0.68611, 0.07458, 0, 0.84125], + "928": [0, 0.68611, 0.08229, 0, 0.98229], + "931": [0, 0.68611, 0.05451, 0, 0.88507], + "933": [0, 0.68611, 0.15972, 0, 0.67083], + "934": [0, 0.68611, 0, 0, 0.76666], + "936": [0, 0.68611, 0.11653, 0, 0.71402], + "937": [0, 0.68611, 0.04835, 0, 0.8789], + "945": [0, 0.44444, 0, 0, 0.76064], + "946": [0.19444, 0.69444, 0.03403, 0, 0.65972], + "947": [0.19444, 0.44444, 0.06389, 0, 0.59003], + "948": [0, 0.69444, 0.03819, 0, 0.52222], + "949": [0, 0.44444, 0, 0, 0.52882], + "950": [0.19444, 0.69444, 0.06215, 0, 0.50833], + "951": [0.19444, 0.44444, 0.03704, 0, 0.6], + "952": [0, 0.69444, 0.03194, 0, 0.5618], + "953": [0, 0.44444, 0, 0, 0.41204], + "954": [0, 0.44444, 0, 0, 0.66759], + "955": [0, 0.69444, 0, 0, 0.67083], + "956": [0.19444, 0.44444, 0, 0, 0.70787], + "957": [0, 0.44444, 0.06898, 0, 0.57685], + "958": [0.19444, 0.69444, 0.03021, 0, 0.50833], + "959": [0, 0.44444, 0, 0, 0.58472], + "960": [0, 0.44444, 0.03704, 0, 0.68241], + "961": [0.19444, 0.44444, 0, 0, 0.6118], + "962": [0.09722, 0.44444, 0.07917, 0, 0.42361], + "963": [0, 0.44444, 0.03704, 0, 0.68588], + "964": [0, 0.44444, 0.13472, 0, 0.52083], + "965": [0, 0.44444, 0.03704, 0, 0.63055], + "966": [0.19444, 0.44444, 0, 0, 0.74722], + "967": [0.19444, 0.44444, 0, 0, 0.71805], + "968": [0.19444, 0.69444, 0.03704, 0, 0.75833], + "969": [0, 0.44444, 0.03704, 0, 0.71782], + "977": [0, 0.69444, 0, 0, 0.69155], + "981": [0.19444, 0.69444, 0, 0, 0.7125], + "982": [0, 0.44444, 0.03194, 0, 0.975], + "1009": [0.19444, 0.44444, 0, 0, 0.6118], + "1013": [0, 0.44444, 0, 0, 0.48333], + "57649": [0, 0.44444, 0, 0, 0.39352], + "57911": [0.19444, 0.44444, 0, 0, 0.43889] + }, + "Math-Italic": { + "32": [0, 0, 0, 0, 0.25], + "48": [0, 0.43056, 0, 0, 0.5], + "49": [0, 0.43056, 0, 0, 0.5], + "50": [0, 0.43056, 0, 0, 0.5], + "51": [0.19444, 0.43056, 0, 0, 0.5], + "52": [0.19444, 0.43056, 0, 0, 0.5], + "53": [0.19444, 0.43056, 0, 0, 0.5], + "54": [0, 0.64444, 0, 0, 0.5], + "55": [0.19444, 0.43056, 0, 0, 0.5], + "56": [0, 0.64444, 0, 0, 0.5], + "57": [0.19444, 0.43056, 0, 0, 0.5], + "65": [0, 0.68333, 0, 0.13889, 0.75], + "66": [0, 0.68333, 0.05017, 0.08334, 0.75851], + "67": [0, 0.68333, 0.07153, 0.08334, 0.71472], + "68": [0, 0.68333, 0.02778, 0.05556, 0.82792], + "69": [0, 0.68333, 0.05764, 0.08334, 0.7382], + "70": [0, 0.68333, 0.13889, 0.08334, 0.64306], + "71": [0, 0.68333, 0, 0.08334, 0.78625], + "72": [0, 0.68333, 0.08125, 0.05556, 0.83125], + "73": [0, 0.68333, 0.07847, 0.11111, 0.43958], + "74": [0, 0.68333, 0.09618, 0.16667, 0.55451], + "75": [0, 0.68333, 0.07153, 0.05556, 0.84931], + "76": [0, 0.68333, 0, 0.02778, 0.68056], + "77": [0, 0.68333, 0.10903, 0.08334, 0.97014], + "78": [0, 0.68333, 0.10903, 0.08334, 0.80347], + "79": [0, 0.68333, 0.02778, 0.08334, 0.76278], + "80": [0, 0.68333, 0.13889, 0.08334, 0.64201], + "81": [0.19444, 0.68333, 0, 0.08334, 0.79056], + "82": [0, 0.68333, 0.00773, 0.08334, 0.75929], + "83": [0, 0.68333, 0.05764, 0.08334, 0.6132], + "84": [0, 0.68333, 0.13889, 0.08334, 0.58438], + "85": [0, 0.68333, 0.10903, 0.02778, 0.68278], + "86": [0, 0.68333, 0.22222, 0, 0.58333], + "87": [0, 0.68333, 0.13889, 0, 0.94445], + "88": [0, 0.68333, 0.07847, 0.08334, 0.82847], + "89": [0, 0.68333, 0.22222, 0, 0.58056], + "90": [0, 0.68333, 0.07153, 0.08334, 0.68264], + "97": [0, 0.43056, 0, 0, 0.52859], + "98": [0, 0.69444, 0, 0, 0.42917], + "99": [0, 0.43056, 0, 0.05556, 0.43276], + "100": [0, 0.69444, 0, 0.16667, 0.52049], + "101": [0, 0.43056, 0, 0.05556, 0.46563], + "102": [0.19444, 0.69444, 0.10764, 0.16667, 0.48959], + "103": [0.19444, 0.43056, 0.03588, 0.02778, 0.47697], + "104": [0, 0.69444, 0, 0, 0.57616], + "105": [0, 0.65952, 0, 0, 0.34451], + "106": [0.19444, 0.65952, 0.05724, 0, 0.41181], + "107": [0, 0.69444, 0.03148, 0, 0.5206], + "108": [0, 0.69444, 0.01968, 0.08334, 0.29838], + "109": [0, 0.43056, 0, 0, 0.87801], + "110": [0, 0.43056, 0, 0, 0.60023], + "111": [0, 0.43056, 0, 0.05556, 0.48472], + "112": [0.19444, 0.43056, 0, 0.08334, 0.50313], + "113": [0.19444, 0.43056, 0.03588, 0.08334, 0.44641], + "114": [0, 0.43056, 0.02778, 0.05556, 0.45116], + "115": [0, 0.43056, 0, 0.05556, 0.46875], + "116": [0, 0.61508, 0, 0.08334, 0.36111], + "117": [0, 0.43056, 0, 0.02778, 0.57246], + "118": [0, 0.43056, 0.03588, 0.02778, 0.48472], + "119": [0, 0.43056, 0.02691, 0.08334, 0.71592], + "120": [0, 0.43056, 0, 0.02778, 0.57153], + "121": [0.19444, 0.43056, 0.03588, 0.05556, 0.49028], + "122": [0, 0.43056, 0.04398, 0.05556, 0.46505], + "160": [0, 0, 0, 0, 0.25], + "915": [0, 0.68333, 0.13889, 0.08334, 0.61528], + "916": [0, 0.68333, 0, 0.16667, 0.83334], + "920": [0, 0.68333, 0.02778, 0.08334, 0.76278], + "923": [0, 0.68333, 0, 0.16667, 0.69445], + "926": [0, 0.68333, 0.07569, 0.08334, 0.74236], + "928": [0, 0.68333, 0.08125, 0.05556, 0.83125], + "931": [0, 0.68333, 0.05764, 0.08334, 0.77986], + "933": [0, 0.68333, 0.13889, 0.05556, 0.58333], + "934": [0, 0.68333, 0, 0.08334, 0.66667], + "936": [0, 0.68333, 0.11, 0.05556, 0.61222], + "937": [0, 0.68333, 0.05017, 0.08334, 0.7724], + "945": [0, 0.43056, 0.0037, 0.02778, 0.6397], + "946": [0.19444, 0.69444, 0.05278, 0.08334, 0.56563], + "947": [0.19444, 0.43056, 0.05556, 0, 0.51773], + "948": [0, 0.69444, 0.03785, 0.05556, 0.44444], + "949": [0, 0.43056, 0, 0.08334, 0.46632], + "950": [0.19444, 0.69444, 0.07378, 0.08334, 0.4375], + "951": [0.19444, 0.43056, 0.03588, 0.05556, 0.49653], + "952": [0, 0.69444, 0.02778, 0.08334, 0.46944], + "953": [0, 0.43056, 0, 0.05556, 0.35394], + "954": [0, 0.43056, 0, 0, 0.57616], + "955": [0, 0.69444, 0, 0, 0.58334], + "956": [0.19444, 0.43056, 0, 0.02778, 0.60255], + "957": [0, 0.43056, 0.06366, 0.02778, 0.49398], + "958": [0.19444, 0.69444, 0.04601, 0.11111, 0.4375], + "959": [0, 0.43056, 0, 0.05556, 0.48472], + "960": [0, 0.43056, 0.03588, 0, 0.57003], + "961": [0.19444, 0.43056, 0, 0.08334, 0.51702], + "962": [0.09722, 0.43056, 0.07986, 0.08334, 0.36285], + "963": [0, 0.43056, 0.03588, 0, 0.57141], + "964": [0, 0.43056, 0.1132, 0.02778, 0.43715], + "965": [0, 0.43056, 0.03588, 0.02778, 0.54028], + "966": [0.19444, 0.43056, 0, 0.08334, 0.65417], + "967": [0.19444, 0.43056, 0, 0.05556, 0.62569], + "968": [0.19444, 0.69444, 0.03588, 0.11111, 0.65139], + "969": [0, 0.43056, 0.03588, 0, 0.62245], + "977": [0, 0.69444, 0, 0.08334, 0.59144], + "981": [0.19444, 0.69444, 0, 0.08334, 0.59583], + "982": [0, 0.43056, 0.02778, 0, 0.82813], + "1009": [0.19444, 0.43056, 0, 0.08334, 0.51702], + "1013": [0, 0.43056, 0, 0.05556, 0.4059], + "57649": [0, 0.43056, 0, 0.02778, 0.32246], + "57911": [0.19444, 0.43056, 0, 0.08334, 0.38403] + }, + "SansSerif-Bold": { + "32": [0, 0, 0, 0, 0.25], + "33": [0, 0.69444, 0, 0, 0.36667], + "34": [0, 0.69444, 0, 0, 0.55834], + "35": [0.19444, 0.69444, 0, 0, 0.91667], + "36": [0.05556, 0.75, 0, 0, 0.55], + "37": [0.05556, 0.75, 0, 0, 1.02912], + "38": [0, 0.69444, 0, 0, 0.83056], + "39": [0, 0.69444, 0, 0, 0.30556], + "40": [0.25, 0.75, 0, 0, 0.42778], + "41": [0.25, 0.75, 0, 0, 0.42778], + "42": [0, 0.75, 0, 0, 0.55], + "43": [0.11667, 0.61667, 0, 0, 0.85556], + "44": [0.10556, 0.13056, 0, 0, 0.30556], + "45": [0, 0.45833, 0, 0, 0.36667], + "46": [0, 0.13056, 0, 0, 0.30556], + "47": [0.25, 0.75, 0, 0, 0.55], + "48": [0, 0.69444, 0, 0, 0.55], + "49": [0, 0.69444, 0, 0, 0.55], + "50": [0, 0.69444, 0, 0, 0.55], + "51": [0, 0.69444, 0, 0, 0.55], + "52": [0, 0.69444, 0, 0, 0.55], + "53": [0, 0.69444, 0, 0, 0.55], + "54": [0, 0.69444, 0, 0, 0.55], + "55": [0, 0.69444, 0, 0, 0.55], + "56": [0, 0.69444, 0, 0, 0.55], + "57": [0, 0.69444, 0, 0, 0.55], + "58": [0, 0.45833, 0, 0, 0.30556], + "59": [0.10556, 0.45833, 0, 0, 0.30556], + "61": [-0.09375, 0.40625, 0, 0, 0.85556], + "63": [0, 0.69444, 0, 0, 0.51945], + "64": [0, 0.69444, 0, 0, 0.73334], + "65": [0, 0.69444, 0, 0, 0.73334], + "66": [0, 0.69444, 0, 0, 0.73334], + "67": [0, 0.69444, 0, 0, 0.70278], + "68": [0, 0.69444, 0, 0, 0.79445], + "69": [0, 0.69444, 0, 0, 0.64167], + "70": [0, 0.69444, 0, 0, 0.61111], + "71": [0, 0.69444, 0, 0, 0.73334], + "72": [0, 0.69444, 0, 0, 0.79445], + "73": [0, 0.69444, 0, 0, 0.33056], + "74": [0, 0.69444, 0, 0, 0.51945], + "75": [0, 0.69444, 0, 0, 0.76389], + "76": [0, 0.69444, 0, 0, 0.58056], + "77": [0, 0.69444, 0, 0, 0.97778], + "78": [0, 0.69444, 0, 0, 0.79445], + "79": [0, 0.69444, 0, 0, 0.79445], + "80": [0, 0.69444, 0, 0, 0.70278], + "81": [0.10556, 0.69444, 0, 0, 0.79445], + "82": [0, 0.69444, 0, 0, 0.70278], + "83": [0, 0.69444, 0, 0, 0.61111], + "84": [0, 0.69444, 0, 0, 0.73334], + "85": [0, 0.69444, 0, 0, 0.76389], + "86": [0, 0.69444, 0.01528, 0, 0.73334], + "87": [0, 0.69444, 0.01528, 0, 1.03889], + "88": [0, 0.69444, 0, 0, 0.73334], + "89": [0, 0.69444, 0.0275, 0, 0.73334], + "90": [0, 0.69444, 0, 0, 0.67223], + "91": [0.25, 0.75, 0, 0, 0.34306], + "93": [0.25, 0.75, 0, 0, 0.34306], + "94": [0, 0.69444, 0, 0, 0.55], + "95": [0.35, 0.10833, 0.03056, 0, 0.55], + "97": [0, 0.45833, 0, 0, 0.525], + "98": [0, 0.69444, 0, 0, 0.56111], + "99": [0, 0.45833, 0, 0, 0.48889], + "100": [0, 0.69444, 0, 0, 0.56111], + "101": [0, 0.45833, 0, 0, 0.51111], + "102": [0, 0.69444, 0.07639, 0, 0.33611], + "103": [0.19444, 0.45833, 0.01528, 0, 0.55], + "104": [0, 0.69444, 0, 0, 0.56111], + "105": [0, 0.69444, 0, 0, 0.25556], + "106": [0.19444, 0.69444, 0, 0, 0.28611], + "107": [0, 0.69444, 0, 0, 0.53056], + "108": [0, 0.69444, 0, 0, 0.25556], + "109": [0, 0.45833, 0, 0, 0.86667], + "110": [0, 0.45833, 0, 0, 0.56111], + "111": [0, 0.45833, 0, 0, 0.55], + "112": [0.19444, 0.45833, 0, 0, 0.56111], + "113": [0.19444, 0.45833, 0, 0, 0.56111], + "114": [0, 0.45833, 0.01528, 0, 0.37222], + "115": [0, 0.45833, 0, 0, 0.42167], + "116": [0, 0.58929, 0, 0, 0.40417], + "117": [0, 0.45833, 0, 0, 0.56111], + "118": [0, 0.45833, 0.01528, 0, 0.5], + "119": [0, 0.45833, 0.01528, 0, 0.74445], + "120": [0, 0.45833, 0, 0, 0.5], + "121": [0.19444, 0.45833, 0.01528, 0, 0.5], + "122": [0, 0.45833, 0, 0, 0.47639], + "126": [0.35, 0.34444, 0, 0, 0.55], + "160": [0, 0, 0, 0, 0.25], + "168": [0, 0.69444, 0, 0, 0.55], + "176": [0, 0.69444, 0, 0, 0.73334], + "180": [0, 0.69444, 0, 0, 0.55], + "184": [0.17014, 0, 0, 0, 0.48889], + "305": [0, 0.45833, 0, 0, 0.25556], + "567": [0.19444, 0.45833, 0, 0, 0.28611], + "710": [0, 0.69444, 0, 0, 0.55], + "711": [0, 0.63542, 0, 0, 0.55], + "713": [0, 0.63778, 0, 0, 0.55], + "728": [0, 0.69444, 0, 0, 0.55], + "729": [0, 0.69444, 0, 0, 0.30556], + "730": [0, 0.69444, 0, 0, 0.73334], + "732": [0, 0.69444, 0, 0, 0.55], + "733": [0, 0.69444, 0, 0, 0.55], + "915": [0, 0.69444, 0, 0, 0.58056], + "916": [0, 0.69444, 0, 0, 0.91667], + "920": [0, 0.69444, 0, 0, 0.85556], + "923": [0, 0.69444, 0, 0, 0.67223], + "926": [0, 0.69444, 0, 0, 0.73334], + "928": [0, 0.69444, 0, 0, 0.79445], + "931": [0, 0.69444, 0, 0, 0.79445], + "933": [0, 0.69444, 0, 0, 0.85556], + "934": [0, 0.69444, 0, 0, 0.79445], + "936": [0, 0.69444, 0, 0, 0.85556], + "937": [0, 0.69444, 0, 0, 0.79445], + "8211": [0, 0.45833, 0.03056, 0, 0.55], + "8212": [0, 0.45833, 0.03056, 0, 1.10001], + "8216": [0, 0.69444, 0, 0, 0.30556], + "8217": [0, 0.69444, 0, 0, 0.30556], + "8220": [0, 0.69444, 0, 0, 0.55834], + "8221": [0, 0.69444, 0, 0, 0.55834] + }, + "SansSerif-Italic": { + "32": [0, 0, 0, 0, 0.25], + "33": [0, 0.69444, 0.05733, 0, 0.31945], + "34": [0, 0.69444, 0.00316, 0, 0.5], + "35": [0.19444, 0.69444, 0.05087, 0, 0.83334], + "36": [0.05556, 0.75, 0.11156, 0, 0.5], + "37": [0.05556, 0.75, 0.03126, 0, 0.83334], + "38": [0, 0.69444, 0.03058, 0, 0.75834], + "39": [0, 0.69444, 0.07816, 0, 0.27778], + "40": [0.25, 0.75, 0.13164, 0, 0.38889], + "41": [0.25, 0.75, 0.02536, 0, 0.38889], + "42": [0, 0.75, 0.11775, 0, 0.5], + "43": [0.08333, 0.58333, 0.02536, 0, 0.77778], + "44": [0.125, 0.08333, 0, 0, 0.27778], + "45": [0, 0.44444, 0.01946, 0, 0.33333], + "46": [0, 0.08333, 0, 0, 0.27778], + "47": [0.25, 0.75, 0.13164, 0, 0.5], + "48": [0, 0.65556, 0.11156, 0, 0.5], + "49": [0, 0.65556, 0.11156, 0, 0.5], + "50": [0, 0.65556, 0.11156, 0, 0.5], + "51": [0, 0.65556, 0.11156, 0, 0.5], + "52": [0, 0.65556, 0.11156, 0, 0.5], + "53": [0, 0.65556, 0.11156, 0, 0.5], + "54": [0, 0.65556, 0.11156, 0, 0.5], + "55": [0, 0.65556, 0.11156, 0, 0.5], + "56": [0, 0.65556, 0.11156, 0, 0.5], + "57": [0, 0.65556, 0.11156, 0, 0.5], + "58": [0, 0.44444, 0.02502, 0, 0.27778], + "59": [0.125, 0.44444, 0.02502, 0, 0.27778], + "61": [-0.13, 0.37, 0.05087, 0, 0.77778], + "63": [0, 0.69444, 0.11809, 0, 0.47222], + "64": [0, 0.69444, 0.07555, 0, 0.66667], + "65": [0, 0.69444, 0, 0, 0.66667], + "66": [0, 0.69444, 0.08293, 0, 0.66667], + "67": [0, 0.69444, 0.11983, 0, 0.63889], + "68": [0, 0.69444, 0.07555, 0, 0.72223], + "69": [0, 0.69444, 0.11983, 0, 0.59722], + "70": [0, 0.69444, 0.13372, 0, 0.56945], + "71": [0, 0.69444, 0.11983, 0, 0.66667], + "72": [0, 0.69444, 0.08094, 0, 0.70834], + "73": [0, 0.69444, 0.13372, 0, 0.27778], + "74": [0, 0.69444, 0.08094, 0, 0.47222], + "75": [0, 0.69444, 0.11983, 0, 0.69445], + "76": [0, 0.69444, 0, 0, 0.54167], + "77": [0, 0.69444, 0.08094, 0, 0.875], + "78": [0, 0.69444, 0.08094, 0, 0.70834], + "79": [0, 0.69444, 0.07555, 0, 0.73611], + "80": [0, 0.69444, 0.08293, 0, 0.63889], + "81": [0.125, 0.69444, 0.07555, 0, 0.73611], + "82": [0, 0.69444, 0.08293, 0, 0.64584], + "83": [0, 0.69444, 0.09205, 0, 0.55556], + "84": [0, 0.69444, 0.13372, 0, 0.68056], + "85": [0, 0.69444, 0.08094, 0, 0.6875], + "86": [0, 0.69444, 0.1615, 0, 0.66667], + "87": [0, 0.69444, 0.1615, 0, 0.94445], + "88": [0, 0.69444, 0.13372, 0, 0.66667], + "89": [0, 0.69444, 0.17261, 0, 0.66667], + "90": [0, 0.69444, 0.11983, 0, 0.61111], + "91": [0.25, 0.75, 0.15942, 0, 0.28889], + "93": [0.25, 0.75, 0.08719, 0, 0.28889], + "94": [0, 0.69444, 0.0799, 0, 0.5], + "95": [0.35, 0.09444, 0.08616, 0, 0.5], + "97": [0, 0.44444, 0.00981, 0, 0.48056], + "98": [0, 0.69444, 0.03057, 0, 0.51667], + "99": [0, 0.44444, 0.08336, 0, 0.44445], + "100": [0, 0.69444, 0.09483, 0, 0.51667], + "101": [0, 0.44444, 0.06778, 0, 0.44445], + "102": [0, 0.69444, 0.21705, 0, 0.30556], + "103": [0.19444, 0.44444, 0.10836, 0, 0.5], + "104": [0, 0.69444, 0.01778, 0, 0.51667], + "105": [0, 0.67937, 0.09718, 0, 0.23889], + "106": [0.19444, 0.67937, 0.09162, 0, 0.26667], + "107": [0, 0.69444, 0.08336, 0, 0.48889], + "108": [0, 0.69444, 0.09483, 0, 0.23889], + "109": [0, 0.44444, 0.01778, 0, 0.79445], + "110": [0, 0.44444, 0.01778, 0, 0.51667], + "111": [0, 0.44444, 0.06613, 0, 0.5], + "112": [0.19444, 0.44444, 0.0389, 0, 0.51667], + "113": [0.19444, 0.44444, 0.04169, 0, 0.51667], + "114": [0, 0.44444, 0.10836, 0, 0.34167], + "115": [0, 0.44444, 0.0778, 0, 0.38333], + "116": [0, 0.57143, 0.07225, 0, 0.36111], + "117": [0, 0.44444, 0.04169, 0, 0.51667], + "118": [0, 0.44444, 0.10836, 0, 0.46111], + "119": [0, 0.44444, 0.10836, 0, 0.68334], + "120": [0, 0.44444, 0.09169, 0, 0.46111], + "121": [0.19444, 0.44444, 0.10836, 0, 0.46111], + "122": [0, 0.44444, 0.08752, 0, 0.43472], + "126": [0.35, 0.32659, 0.08826, 0, 0.5], + "160": [0, 0, 0, 0, 0.25], + "168": [0, 0.67937, 0.06385, 0, 0.5], + "176": [0, 0.69444, 0, 0, 0.73752], + "184": [0.17014, 0, 0, 0, 0.44445], + "305": [0, 0.44444, 0.04169, 0, 0.23889], + "567": [0.19444, 0.44444, 0.04169, 0, 0.26667], + "710": [0, 0.69444, 0.0799, 0, 0.5], + "711": [0, 0.63194, 0.08432, 0, 0.5], + "713": [0, 0.60889, 0.08776, 0, 0.5], + "714": [0, 0.69444, 0.09205, 0, 0.5], + "715": [0, 0.69444, 0, 0, 0.5], + "728": [0, 0.69444, 0.09483, 0, 0.5], + "729": [0, 0.67937, 0.07774, 0, 0.27778], + "730": [0, 0.69444, 0, 0, 0.73752], + "732": [0, 0.67659, 0.08826, 0, 0.5], + "733": [0, 0.69444, 0.09205, 0, 0.5], + "915": [0, 0.69444, 0.13372, 0, 0.54167], + "916": [0, 0.69444, 0, 0, 0.83334], + "920": [0, 0.69444, 0.07555, 0, 0.77778], + "923": [0, 0.69444, 0, 0, 0.61111], + "926": [0, 0.69444, 0.12816, 0, 0.66667], + "928": [0, 0.69444, 0.08094, 0, 0.70834], + "931": [0, 0.69444, 0.11983, 0, 0.72222], + "933": [0, 0.69444, 0.09031, 0, 0.77778], + "934": [0, 0.69444, 0.04603, 0, 0.72222], + "936": [0, 0.69444, 0.09031, 0, 0.77778], + "937": [0, 0.69444, 0.08293, 0, 0.72222], + "8211": [0, 0.44444, 0.08616, 0, 0.5], + "8212": [0, 0.44444, 0.08616, 0, 1.0], + "8216": [0, 0.69444, 0.07816, 0, 0.27778], + "8217": [0, 0.69444, 0.07816, 0, 0.27778], + "8220": [0, 0.69444, 0.14205, 0, 0.5], + "8221": [0, 0.69444, 0.00316, 0, 0.5] + }, + "SansSerif-Regular": { + "32": [0, 0, 0, 0, 0.25], + "33": [0, 0.69444, 0, 0, 0.31945], + "34": [0, 0.69444, 0, 0, 0.5], + "35": [0.19444, 0.69444, 0, 0, 0.83334], + "36": [0.05556, 0.75, 0, 0, 0.5], + "37": [0.05556, 0.75, 0, 0, 0.83334], + "38": [0, 0.69444, 0, 0, 0.75834], + "39": [0, 0.69444, 0, 0, 0.27778], + "40": [0.25, 0.75, 0, 0, 0.38889], + "41": [0.25, 0.75, 0, 0, 0.38889], + "42": [0, 0.75, 0, 0, 0.5], + "43": [0.08333, 0.58333, 0, 0, 0.77778], + "44": [0.125, 0.08333, 0, 0, 0.27778], + "45": [0, 0.44444, 0, 0, 0.33333], + "46": [0, 0.08333, 0, 0, 0.27778], + "47": [0.25, 0.75, 0, 0, 0.5], + "48": [0, 0.65556, 0, 0, 0.5], + "49": [0, 0.65556, 0, 0, 0.5], + "50": [0, 0.65556, 0, 0, 0.5], + "51": [0, 0.65556, 0, 0, 0.5], + "52": [0, 0.65556, 0, 0, 0.5], + "53": [0, 0.65556, 0, 0, 0.5], + "54": [0, 0.65556, 0, 0, 0.5], + "55": [0, 0.65556, 0, 0, 0.5], + "56": [0, 0.65556, 0, 0, 0.5], + "57": [0, 0.65556, 0, 0, 0.5], + "58": [0, 0.44444, 0, 0, 0.27778], + "59": [0.125, 0.44444, 0, 0, 0.27778], + "61": [-0.13, 0.37, 0, 0, 0.77778], + "63": [0, 0.69444, 0, 0, 0.47222], + "64": [0, 0.69444, 0, 0, 0.66667], + "65": [0, 0.69444, 0, 0, 0.66667], + "66": [0, 0.69444, 0, 0, 0.66667], + "67": [0, 0.69444, 0, 0, 0.63889], + "68": [0, 0.69444, 0, 0, 0.72223], + "69": [0, 0.69444, 0, 0, 0.59722], + "70": [0, 0.69444, 0, 0, 0.56945], + "71": [0, 0.69444, 0, 0, 0.66667], + "72": [0, 0.69444, 0, 0, 0.70834], + "73": [0, 0.69444, 0, 0, 0.27778], + "74": [0, 0.69444, 0, 0, 0.47222], + "75": [0, 0.69444, 0, 0, 0.69445], + "76": [0, 0.69444, 0, 0, 0.54167], + "77": [0, 0.69444, 0, 0, 0.875], + "78": [0, 0.69444, 0, 0, 0.70834], + "79": [0, 0.69444, 0, 0, 0.73611], + "80": [0, 0.69444, 0, 0, 0.63889], + "81": [0.125, 0.69444, 0, 0, 0.73611], + "82": [0, 0.69444, 0, 0, 0.64584], + "83": [0, 0.69444, 0, 0, 0.55556], + "84": [0, 0.69444, 0, 0, 0.68056], + "85": [0, 0.69444, 0, 0, 0.6875], + "86": [0, 0.69444, 0.01389, 0, 0.66667], + "87": [0, 0.69444, 0.01389, 0, 0.94445], + "88": [0, 0.69444, 0, 0, 0.66667], + "89": [0, 0.69444, 0.025, 0, 0.66667], + "90": [0, 0.69444, 0, 0, 0.61111], + "91": [0.25, 0.75, 0, 0, 0.28889], + "93": [0.25, 0.75, 0, 0, 0.28889], + "94": [0, 0.69444, 0, 0, 0.5], + "95": [0.35, 0.09444, 0.02778, 0, 0.5], + "97": [0, 0.44444, 0, 0, 0.48056], + "98": [0, 0.69444, 0, 0, 0.51667], + "99": [0, 0.44444, 0, 0, 0.44445], + "100": [0, 0.69444, 0, 0, 0.51667], + "101": [0, 0.44444, 0, 0, 0.44445], + "102": [0, 0.69444, 0.06944, 0, 0.30556], + "103": [0.19444, 0.44444, 0.01389, 0, 0.5], + "104": [0, 0.69444, 0, 0, 0.51667], + "105": [0, 0.67937, 0, 0, 0.23889], + "106": [0.19444, 0.67937, 0, 0, 0.26667], + "107": [0, 0.69444, 0, 0, 0.48889], + "108": [0, 0.69444, 0, 0, 0.23889], + "109": [0, 0.44444, 0, 0, 0.79445], + "110": [0, 0.44444, 0, 0, 0.51667], + "111": [0, 0.44444, 0, 0, 0.5], + "112": [0.19444, 0.44444, 0, 0, 0.51667], + "113": [0.19444, 0.44444, 0, 0, 0.51667], + "114": [0, 0.44444, 0.01389, 0, 0.34167], + "115": [0, 0.44444, 0, 0, 0.38333], + "116": [0, 0.57143, 0, 0, 0.36111], + "117": [0, 0.44444, 0, 0, 0.51667], + "118": [0, 0.44444, 0.01389, 0, 0.46111], + "119": [0, 0.44444, 0.01389, 0, 0.68334], + "120": [0, 0.44444, 0, 0, 0.46111], + "121": [0.19444, 0.44444, 0.01389, 0, 0.46111], + "122": [0, 0.44444, 0, 0, 0.43472], + "126": [0.35, 0.32659, 0, 0, 0.5], + "160": [0, 0, 0, 0, 0.25], + "168": [0, 0.67937, 0, 0, 0.5], + "176": [0, 0.69444, 0, 0, 0.66667], + "184": [0.17014, 0, 0, 0, 0.44445], + "305": [0, 0.44444, 0, 0, 0.23889], + "567": [0.19444, 0.44444, 0, 0, 0.26667], + "710": [0, 0.69444, 0, 0, 0.5], + "711": [0, 0.63194, 0, 0, 0.5], + "713": [0, 0.60889, 0, 0, 0.5], + "714": [0, 0.69444, 0, 0, 0.5], + "715": [0, 0.69444, 0, 0, 0.5], + "728": [0, 0.69444, 0, 0, 0.5], + "729": [0, 0.67937, 0, 0, 0.27778], + "730": [0, 0.69444, 0, 0, 0.66667], + "732": [0, 0.67659, 0, 0, 0.5], + "733": [0, 0.69444, 0, 0, 0.5], + "915": [0, 0.69444, 0, 0, 0.54167], + "916": [0, 0.69444, 0, 0, 0.83334], + "920": [0, 0.69444, 0, 0, 0.77778], + "923": [0, 0.69444, 0, 0, 0.61111], + "926": [0, 0.69444, 0, 0, 0.66667], + "928": [0, 0.69444, 0, 0, 0.70834], + "931": [0, 0.69444, 0, 0, 0.72222], + "933": [0, 0.69444, 0, 0, 0.77778], + "934": [0, 0.69444, 0, 0, 0.72222], + "936": [0, 0.69444, 0, 0, 0.77778], + "937": [0, 0.69444, 0, 0, 0.72222], + "8211": [0, 0.44444, 0.02778, 0, 0.5], + "8212": [0, 0.44444, 0.02778, 0, 1.0], + "8216": [0, 0.69444, 0, 0, 0.27778], + "8217": [0, 0.69444, 0, 0, 0.27778], + "8220": [0, 0.69444, 0, 0, 0.5], + "8221": [0, 0.69444, 0, 0, 0.5] + }, + "Script-Regular": { + "32": [0, 0, 0, 0, 0.25], + "65": [0, 0.7, 0.22925, 0, 0.80253], + "66": [0, 0.7, 0.04087, 0, 0.90757], + "67": [0, 0.7, 0.1689, 0, 0.66619], + "68": [0, 0.7, 0.09371, 0, 0.77443], + "69": [0, 0.7, 0.18583, 0, 0.56162], + "70": [0, 0.7, 0.13634, 0, 0.89544], + "71": [0, 0.7, 0.17322, 0, 0.60961], + "72": [0, 0.7, 0.29694, 0, 0.96919], + "73": [0, 0.7, 0.19189, 0, 0.80907], + "74": [0.27778, 0.7, 0.19189, 0, 1.05159], + "75": [0, 0.7, 0.31259, 0, 0.91364], + "76": [0, 0.7, 0.19189, 0, 0.87373], + "77": [0, 0.7, 0.15981, 0, 1.08031], + "78": [0, 0.7, 0.3525, 0, 0.9015], + "79": [0, 0.7, 0.08078, 0, 0.73787], + "80": [0, 0.7, 0.08078, 0, 1.01262], + "81": [0, 0.7, 0.03305, 0, 0.88282], + "82": [0, 0.7, 0.06259, 0, 0.85], + "83": [0, 0.7, 0.19189, 0, 0.86767], + "84": [0, 0.7, 0.29087, 0, 0.74697], + "85": [0, 0.7, 0.25815, 0, 0.79996], + "86": [0, 0.7, 0.27523, 0, 0.62204], + "87": [0, 0.7, 0.27523, 0, 0.80532], + "88": [0, 0.7, 0.26006, 0, 0.94445], + "89": [0, 0.7, 0.2939, 0, 0.70961], + "90": [0, 0.7, 0.24037, 0, 0.8212], + "160": [0, 0, 0, 0, 0.25] + }, + "Size1-Regular": { + "32": [0, 0, 0, 0, 0.25], + "40": [0.35001, 0.85, 0, 0, 0.45834], + "41": [0.35001, 0.85, 0, 0, 0.45834], + "47": [0.35001, 0.85, 0, 0, 0.57778], + "91": [0.35001, 0.85, 0, 0, 0.41667], + "92": [0.35001, 0.85, 0, 0, 0.57778], + "93": [0.35001, 0.85, 0, 0, 0.41667], + "123": [0.35001, 0.85, 0, 0, 0.58334], + "125": [0.35001, 0.85, 0, 0, 0.58334], + "160": [0, 0, 0, 0, 0.25], + "710": [0, 0.72222, 0, 0, 0.55556], + "732": [0, 0.72222, 0, 0, 0.55556], + "770": [0, 0.72222, 0, 0, 0.55556], + "771": [0, 0.72222, 0, 0, 0.55556], + "8214": [-0.00099, 0.601, 0, 0, 0.77778], + "8593": [1e-05, 0.6, 0, 0, 0.66667], + "8595": [1e-05, 0.6, 0, 0, 0.66667], + "8657": [1e-05, 0.6, 0, 0, 0.77778], + "8659": [1e-05, 0.6, 0, 0, 0.77778], + "8719": [0.25001, 0.75, 0, 0, 0.94445], + "8720": [0.25001, 0.75, 0, 0, 0.94445], + "8721": [0.25001, 0.75, 0, 0, 1.05556], + "8730": [0.35001, 0.85, 0, 0, 1.0], + "8739": [-0.00599, 0.606, 0, 0, 0.33333], + "8741": [-0.00599, 0.606, 0, 0, 0.55556], + "8747": [0.30612, 0.805, 0.19445, 0, 0.47222], + "8748": [0.306, 0.805, 0.19445, 0, 0.47222], + "8749": [0.306, 0.805, 0.19445, 0, 0.47222], + "8750": [0.30612, 0.805, 0.19445, 0, 0.47222], + "8896": [0.25001, 0.75, 0, 0, 0.83334], + "8897": [0.25001, 0.75, 0, 0, 0.83334], + "8898": [0.25001, 0.75, 0, 0, 0.83334], + "8899": [0.25001, 0.75, 0, 0, 0.83334], + "8968": [0.35001, 0.85, 0, 0, 0.47222], + "8969": [0.35001, 0.85, 0, 0, 0.47222], + "8970": [0.35001, 0.85, 0, 0, 0.47222], + "8971": [0.35001, 0.85, 0, 0, 0.47222], + "9168": [-0.00099, 0.601, 0, 0, 0.66667], + "10216": [0.35001, 0.85, 0, 0, 0.47222], + "10217": [0.35001, 0.85, 0, 0, 0.47222], + "10752": [0.25001, 0.75, 0, 0, 1.11111], + "10753": [0.25001, 0.75, 0, 0, 1.11111], + "10754": [0.25001, 0.75, 0, 0, 1.11111], + "10756": [0.25001, 0.75, 0, 0, 0.83334], + "10758": [0.25001, 0.75, 0, 0, 0.83334] + }, + "Size2-Regular": { + "32": [0, 0, 0, 0, 0.25], + "40": [0.65002, 1.15, 0, 0, 0.59722], + "41": [0.65002, 1.15, 0, 0, 0.59722], + "47": [0.65002, 1.15, 0, 0, 0.81111], + "91": [0.65002, 1.15, 0, 0, 0.47222], + "92": [0.65002, 1.15, 0, 0, 0.81111], + "93": [0.65002, 1.15, 0, 0, 0.47222], + "123": [0.65002, 1.15, 0, 0, 0.66667], + "125": [0.65002, 1.15, 0, 0, 0.66667], + "160": [0, 0, 0, 0, 0.25], + "710": [0, 0.75, 0, 0, 1.0], + "732": [0, 0.75, 0, 0, 1.0], + "770": [0, 0.75, 0, 0, 1.0], + "771": [0, 0.75, 0, 0, 1.0], + "8719": [0.55001, 1.05, 0, 0, 1.27778], + "8720": [0.55001, 1.05, 0, 0, 1.27778], + "8721": [0.55001, 1.05, 0, 0, 1.44445], + "8730": [0.65002, 1.15, 0, 0, 1.0], + "8747": [0.86225, 1.36, 0.44445, 0, 0.55556], + "8748": [0.862, 1.36, 0.44445, 0, 0.55556], + "8749": [0.862, 1.36, 0.44445, 0, 0.55556], + "8750": [0.86225, 1.36, 0.44445, 0, 0.55556], + "8896": [0.55001, 1.05, 0, 0, 1.11111], + "8897": [0.55001, 1.05, 0, 0, 1.11111], + "8898": [0.55001, 1.05, 0, 0, 1.11111], + "8899": [0.55001, 1.05, 0, 0, 1.11111], + "8968": [0.65002, 1.15, 0, 0, 0.52778], + "8969": [0.65002, 1.15, 0, 0, 0.52778], + "8970": [0.65002, 1.15, 0, 0, 0.52778], + "8971": [0.65002, 1.15, 0, 0, 0.52778], + "10216": [0.65002, 1.15, 0, 0, 0.61111], + "10217": [0.65002, 1.15, 0, 0, 0.61111], + "10752": [0.55001, 1.05, 0, 0, 1.51112], + "10753": [0.55001, 1.05, 0, 0, 1.51112], + "10754": [0.55001, 1.05, 0, 0, 1.51112], + "10756": [0.55001, 1.05, 0, 0, 1.11111], + "10758": [0.55001, 1.05, 0, 0, 1.11111] + }, + "Size3-Regular": { + "32": [0, 0, 0, 0, 0.25], + "40": [0.95003, 1.45, 0, 0, 0.73611], + "41": [0.95003, 1.45, 0, 0, 0.73611], + "47": [0.95003, 1.45, 0, 0, 1.04445], + "91": [0.95003, 1.45, 0, 0, 0.52778], + "92": [0.95003, 1.45, 0, 0, 1.04445], + "93": [0.95003, 1.45, 0, 0, 0.52778], + "123": [0.95003, 1.45, 0, 0, 0.75], + "125": [0.95003, 1.45, 0, 0, 0.75], + "160": [0, 0, 0, 0, 0.25], + "710": [0, 0.75, 0, 0, 1.44445], + "732": [0, 0.75, 0, 0, 1.44445], + "770": [0, 0.75, 0, 0, 1.44445], + "771": [0, 0.75, 0, 0, 1.44445], + "8730": [0.95003, 1.45, 0, 0, 1.0], + "8968": [0.95003, 1.45, 0, 0, 0.58334], + "8969": [0.95003, 1.45, 0, 0, 0.58334], + "8970": [0.95003, 1.45, 0, 0, 0.58334], + "8971": [0.95003, 1.45, 0, 0, 0.58334], + "10216": [0.95003, 1.45, 0, 0, 0.75], + "10217": [0.95003, 1.45, 0, 0, 0.75] + }, + "Size4-Regular": { + "32": [0, 0, 0, 0, 0.25], + "40": [1.25003, 1.75, 0, 0, 0.79167], + "41": [1.25003, 1.75, 0, 0, 0.79167], + "47": [1.25003, 1.75, 0, 0, 1.27778], + "91": [1.25003, 1.75, 0, 0, 0.58334], + "92": [1.25003, 1.75, 0, 0, 1.27778], + "93": [1.25003, 1.75, 0, 0, 0.58334], + "123": [1.25003, 1.75, 0, 0, 0.80556], + "125": [1.25003, 1.75, 0, 0, 0.80556], + "160": [0, 0, 0, 0, 0.25], + "710": [0, 0.825, 0, 0, 1.8889], + "732": [0, 0.825, 0, 0, 1.8889], + "770": [0, 0.825, 0, 0, 1.8889], + "771": [0, 0.825, 0, 0, 1.8889], + "8730": [1.25003, 1.75, 0, 0, 1.0], + "8968": [1.25003, 1.75, 0, 0, 0.63889], + "8969": [1.25003, 1.75, 0, 0, 0.63889], + "8970": [1.25003, 1.75, 0, 0, 0.63889], + "8971": [1.25003, 1.75, 0, 0, 0.63889], + "9115": [0.64502, 1.155, 0, 0, 0.875], + "9116": [1e-05, 0.6, 0, 0, 0.875], + "9117": [0.64502, 1.155, 0, 0, 0.875], + "9118": [0.64502, 1.155, 0, 0, 0.875], + "9119": [1e-05, 0.6, 0, 0, 0.875], + "9120": [0.64502, 1.155, 0, 0, 0.875], + "9121": [0.64502, 1.155, 0, 0, 0.66667], + "9122": [-0.00099, 0.601, 0, 0, 0.66667], + "9123": [0.64502, 1.155, 0, 0, 0.66667], + "9124": [0.64502, 1.155, 0, 0, 0.66667], + "9125": [-0.00099, 0.601, 0, 0, 0.66667], + "9126": [0.64502, 1.155, 0, 0, 0.66667], + "9127": [1e-05, 0.9, 0, 0, 0.88889], + "9128": [0.65002, 1.15, 0, 0, 0.88889], + "9129": [0.90001, 0, 0, 0, 0.88889], + "9130": [0, 0.3, 0, 0, 0.88889], + "9131": [1e-05, 0.9, 0, 0, 0.88889], + "9132": [0.65002, 1.15, 0, 0, 0.88889], + "9133": [0.90001, 0, 0, 0, 0.88889], + "9143": [0.88502, 0.915, 0, 0, 1.05556], + "10216": [1.25003, 1.75, 0, 0, 0.80556], + "10217": [1.25003, 1.75, 0, 0, 0.80556], + "57344": [-0.00499, 0.605, 0, 0, 1.05556], + "57345": [-0.00499, 0.605, 0, 0, 1.05556], + "57680": [0, 0.12, 0, 0, 0.45], + "57681": [0, 0.12, 0, 0, 0.45], + "57682": [0, 0.12, 0, 0, 0.45], + "57683": [0, 0.12, 0, 0, 0.45] + }, + "Typewriter-Regular": { + "32": [0, 0, 0, 0, 0.525], + "33": [0, 0.61111, 0, 0, 0.525], + "34": [0, 0.61111, 0, 0, 0.525], + "35": [0, 0.61111, 0, 0, 0.525], + "36": [0.08333, 0.69444, 0, 0, 0.525], + "37": [0.08333, 0.69444, 0, 0, 0.525], + "38": [0, 0.61111, 0, 0, 0.525], + "39": [0, 0.61111, 0, 0, 0.525], + "40": [0.08333, 0.69444, 0, 0, 0.525], + "41": [0.08333, 0.69444, 0, 0, 0.525], + "42": [0, 0.52083, 0, 0, 0.525], + "43": [-0.08056, 0.53055, 0, 0, 0.525], + "44": [0.13889, 0.125, 0, 0, 0.525], + "45": [-0.08056, 0.53055, 0, 0, 0.525], + "46": [0, 0.125, 0, 0, 0.525], + "47": [0.08333, 0.69444, 0, 0, 0.525], + "48": [0, 0.61111, 0, 0, 0.525], + "49": [0, 0.61111, 0, 0, 0.525], + "50": [0, 0.61111, 0, 0, 0.525], + "51": [0, 0.61111, 0, 0, 0.525], + "52": [0, 0.61111, 0, 0, 0.525], + "53": [0, 0.61111, 0, 0, 0.525], + "54": [0, 0.61111, 0, 0, 0.525], + "55": [0, 0.61111, 0, 0, 0.525], + "56": [0, 0.61111, 0, 0, 0.525], + "57": [0, 0.61111, 0, 0, 0.525], + "58": [0, 0.43056, 0, 0, 0.525], + "59": [0.13889, 0.43056, 0, 0, 0.525], + "60": [-0.05556, 0.55556, 0, 0, 0.525], + "61": [-0.19549, 0.41562, 0, 0, 0.525], + "62": [-0.05556, 0.55556, 0, 0, 0.525], + "63": [0, 0.61111, 0, 0, 0.525], + "64": [0, 0.61111, 0, 0, 0.525], + "65": [0, 0.61111, 0, 0, 0.525], + "66": [0, 0.61111, 0, 0, 0.525], + "67": [0, 0.61111, 0, 0, 0.525], + "68": [0, 0.61111, 0, 0, 0.525], + "69": [0, 0.61111, 0, 0, 0.525], + "70": [0, 0.61111, 0, 0, 0.525], + "71": [0, 0.61111, 0, 0, 0.525], + "72": [0, 0.61111, 0, 0, 0.525], + "73": [0, 0.61111, 0, 0, 0.525], + "74": [0, 0.61111, 0, 0, 0.525], + "75": [0, 0.61111, 0, 0, 0.525], + "76": [0, 0.61111, 0, 0, 0.525], + "77": [0, 0.61111, 0, 0, 0.525], + "78": [0, 0.61111, 0, 0, 0.525], + "79": [0, 0.61111, 0, 0, 0.525], + "80": [0, 0.61111, 0, 0, 0.525], + "81": [0.13889, 0.61111, 0, 0, 0.525], + "82": [0, 0.61111, 0, 0, 0.525], + "83": [0, 0.61111, 0, 0, 0.525], + "84": [0, 0.61111, 0, 0, 0.525], + "85": [0, 0.61111, 0, 0, 0.525], + "86": [0, 0.61111, 0, 0, 0.525], + "87": [0, 0.61111, 0, 0, 0.525], + "88": [0, 0.61111, 0, 0, 0.525], + "89": [0, 0.61111, 0, 0, 0.525], + "90": [0, 0.61111, 0, 0, 0.525], + "91": [0.08333, 0.69444, 0, 0, 0.525], + "92": [0.08333, 0.69444, 0, 0, 0.525], + "93": [0.08333, 0.69444, 0, 0, 0.525], + "94": [0, 0.61111, 0, 0, 0.525], + "95": [0.09514, 0, 0, 0, 0.525], + "96": [0, 0.61111, 0, 0, 0.525], + "97": [0, 0.43056, 0, 0, 0.525], + "98": [0, 0.61111, 0, 0, 0.525], + "99": [0, 0.43056, 0, 0, 0.525], + "100": [0, 0.61111, 0, 0, 0.525], + "101": [0, 0.43056, 0, 0, 0.525], + "102": [0, 0.61111, 0, 0, 0.525], + "103": [0.22222, 0.43056, 0, 0, 0.525], + "104": [0, 0.61111, 0, 0, 0.525], + "105": [0, 0.61111, 0, 0, 0.525], + "106": [0.22222, 0.61111, 0, 0, 0.525], + "107": [0, 0.61111, 0, 0, 0.525], + "108": [0, 0.61111, 0, 0, 0.525], + "109": [0, 0.43056, 0, 0, 0.525], + "110": [0, 0.43056, 0, 0, 0.525], + "111": [0, 0.43056, 0, 0, 0.525], + "112": [0.22222, 0.43056, 0, 0, 0.525], + "113": [0.22222, 0.43056, 0, 0, 0.525], + "114": [0, 0.43056, 0, 0, 0.525], + "115": [0, 0.43056, 0, 0, 0.525], + "116": [0, 0.55358, 0, 0, 0.525], + "117": [0, 0.43056, 0, 0, 0.525], + "118": [0, 0.43056, 0, 0, 0.525], + "119": [0, 0.43056, 0, 0, 0.525], + "120": [0, 0.43056, 0, 0, 0.525], + "121": [0.22222, 0.43056, 0, 0, 0.525], + "122": [0, 0.43056, 0, 0, 0.525], + "123": [0.08333, 0.69444, 0, 0, 0.525], + "124": [0.08333, 0.69444, 0, 0, 0.525], + "125": [0.08333, 0.69444, 0, 0, 0.525], + "126": [0, 0.61111, 0, 0, 0.525], + "127": [0, 0.61111, 0, 0, 0.525], + "160": [0, 0, 0, 0, 0.525], + "176": [0, 0.61111, 0, 0, 0.525], + "184": [0.19445, 0, 0, 0, 0.525], + "305": [0, 0.43056, 0, 0, 0.525], + "567": [0.22222, 0.43056, 0, 0, 0.525], + "711": [0, 0.56597, 0, 0, 0.525], + "713": [0, 0.56555, 0, 0, 0.525], + "714": [0, 0.61111, 0, 0, 0.525], + "715": [0, 0.61111, 0, 0, 0.525], + "728": [0, 0.61111, 0, 0, 0.525], + "730": [0, 0.61111, 0, 0, 0.525], + "770": [0, 0.61111, 0, 0, 0.525], + "771": [0, 0.61111, 0, 0, 0.525], + "776": [0, 0.61111, 0, 0, 0.525], + "915": [0, 0.61111, 0, 0, 0.525], + "916": [0, 0.61111, 0, 0, 0.525], + "920": [0, 0.61111, 0, 0, 0.525], + "923": [0, 0.61111, 0, 0, 0.525], + "926": [0, 0.61111, 0, 0, 0.525], + "928": [0, 0.61111, 0, 0, 0.525], + "931": [0, 0.61111, 0, 0, 0.525], + "933": [0, 0.61111, 0, 0, 0.525], + "934": [0, 0.61111, 0, 0, 0.525], + "936": [0, 0.61111, 0, 0, 0.525], + "937": [0, 0.61111, 0, 0, 0.525], + "8216": [0, 0.61111, 0, 0, 0.525], + "8217": [0, 0.61111, 0, 0, 0.525], + "8242": [0, 0.61111, 0, 0, 0.525], + "9251": [0.11111, 0.21944, 0, 0, 0.525] + } +}; + +/** + * This file contains metrics regarding fonts and individual symbols. The sigma + * and xi variables, as well as the metricMap map contain data extracted from + * TeX, TeX font metrics, and the TTF files. These data are then exposed via the + * `metrics` variable and the getCharacterMetrics function. + */ +// In TeX, there are actually three sets of dimensions, one for each of +// textstyle (size index 5 and higher: >=9pt), scriptstyle (size index 3 and 4: +// 7-8pt), and scriptscriptstyle (size index 1 and 2: 5-6pt). These are +// provided in the arrays below, in that order. +// +// The font metrics are stored in fonts cmsy10, cmsy7, and cmsy5 respectively. +// This was determined by running the following script: +// +// latex -interaction=nonstopmode \ +// '\documentclass{article}\usepackage{amsmath}\begin{document}' \ +// '$a$ \expandafter\show\the\textfont2' \ +// '\expandafter\show\the\scriptfont2' \ +// '\expandafter\show\the\scriptscriptfont2' \ +// '\stop' +// +// The metrics themselves were retrieved using the following commands: +// +// tftopl cmsy10 +// tftopl cmsy7 +// tftopl cmsy5 +// +// The output of each of these commands is quite lengthy. The only part we +// care about is the FONTDIMEN section. Each value is measured in EMs. +var sigmasAndXis = { + slant: [0.250, 0.250, 0.250], + // sigma1 + space: [0.000, 0.000, 0.000], + // sigma2 + stretch: [0.000, 0.000, 0.000], + // sigma3 + shrink: [0.000, 0.000, 0.000], + // sigma4 + xHeight: [0.431, 0.431, 0.431], + // sigma5 + quad: [1.000, 1.171, 1.472], + // sigma6 + extraSpace: [0.000, 0.000, 0.000], + // sigma7 + num1: [0.677, 0.732, 0.925], + // sigma8 + num2: [0.394, 0.384, 0.387], + // sigma9 + num3: [0.444, 0.471, 0.504], + // sigma10 + denom1: [0.686, 0.752, 1.025], + // sigma11 + denom2: [0.345, 0.344, 0.532], + // sigma12 + sup1: [0.413, 0.503, 0.504], + // sigma13 + sup2: [0.363, 0.431, 0.404], + // sigma14 + sup3: [0.289, 0.286, 0.294], + // sigma15 + sub1: [0.150, 0.143, 0.200], + // sigma16 + sub2: [0.247, 0.286, 0.400], + // sigma17 + supDrop: [0.386, 0.353, 0.494], + // sigma18 + subDrop: [0.050, 0.071, 0.100], + // sigma19 + delim1: [2.390, 1.700, 1.980], + // sigma20 + delim2: [1.010, 1.157, 1.420], + // sigma21 + axisHeight: [0.250, 0.250, 0.250], + // sigma22 + // These font metrics are extracted from TeX by using tftopl on cmex10.tfm; + // they correspond to the font parameters of the extension fonts (family 3). + // See the TeXbook, page 441. In AMSTeX, the extension fonts scale; to + // match cmex7, we'd use cmex7.tfm values for script and scriptscript + // values. + defaultRuleThickness: [0.04, 0.049, 0.049], + // xi8; cmex7: 0.049 + bigOpSpacing1: [0.111, 0.111, 0.111], + // xi9 + bigOpSpacing2: [0.166, 0.166, 0.166], + // xi10 + bigOpSpacing3: [0.2, 0.2, 0.2], + // xi11 + bigOpSpacing4: [0.6, 0.611, 0.611], + // xi12; cmex7: 0.611 + bigOpSpacing5: [0.1, 0.143, 0.143], + // xi13; cmex7: 0.143 + // The \sqrt rule width is taken from the height of the surd character. + // Since we use the same font at all sizes, this thickness doesn't scale. + sqrtRuleThickness: [0.04, 0.04, 0.04], + // This value determines how large a pt is, for metrics which are defined + // in terms of pts. + // This value is also used in katex.less; if you change it make sure the + // values match. + ptPerEm: [10.0, 10.0, 10.0], + // The space between adjacent `|` columns in an array definition. From + // `\showthe\doublerulesep` in LaTeX. Equals 2.0 / ptPerEm. + doubleRuleSep: [0.2, 0.2, 0.2], + // The width of separator lines in {array} environments. From + // `\showthe\arrayrulewidth` in LaTeX. Equals 0.4 / ptPerEm. + arrayRuleWidth: [0.04, 0.04, 0.04], + // Two values from LaTeX source2e: + fboxsep: [0.3, 0.3, 0.3], + // 3 pt / ptPerEm + fboxrule: [0.04, 0.04, 0.04] // 0.4 pt / ptPerEm + +}; // This map contains a mapping from font name and character code to character +// should have Latin-1 and Cyrillic characters, but may not depending on the +// operating system. The metrics do not account for extra height from the +// accents. In the case of Cyrillic characters which have both ascenders and +// descenders we prefer approximations with ascenders, primarily to prevent +// the fraction bar or root line from intersecting the glyph. +// TODO(kevinb) allow union of multiple glyph metrics for better accuracy. + +var extraCharacterMap = { + // Latin-1 + 'Å': 'A', + 'Ð': 'D', + 'Þ': 'o', + 'å': 'a', + 'ð': 'd', + 'þ': 'o', + // Cyrillic + 'А': 'A', + 'Б': 'B', + 'В': 'B', + 'Г': 'F', + 'Д': 'A', + 'Е': 'E', + 'Ж': 'K', + 'З': '3', + 'И': 'N', + 'Й': 'N', + 'К': 'K', + 'Л': 'N', + 'М': 'M', + 'Н': 'H', + 'О': 'O', + 'П': 'N', + 'Р': 'P', + 'С': 'C', + 'Т': 'T', + 'У': 'y', + 'Ф': 'O', + 'Х': 'X', + 'Ц': 'U', + 'Ч': 'h', + 'Ш': 'W', + 'Щ': 'W', + 'Ъ': 'B', + 'Ы': 'X', + 'Ь': 'B', + 'Э': '3', + 'Ю': 'X', + 'Я': 'R', + 'а': 'a', + 'б': 'b', + 'в': 'a', + 'г': 'r', + 'д': 'y', + 'е': 'e', + 'ж': 'm', + 'з': 'e', + 'и': 'n', + 'й': 'n', + 'к': 'n', + 'л': 'n', + 'м': 'm', + 'н': 'n', + 'о': 'o', + 'п': 'n', + 'р': 'p', + 'с': 'c', + 'т': 'o', + 'у': 'y', + 'ф': 'b', + 'х': 'x', + 'ц': 'n', + 'ч': 'n', + 'ш': 'w', + 'щ': 'w', + 'ъ': 'a', + 'ы': 'm', + 'ь': 'a', + 'э': 'e', + 'ю': 'm', + 'я': 'r' +}; + +/** + * This function adds new font metrics to default metricMap + * It can also override existing metrics + */ +function setFontMetrics(fontName, metrics) { + fontMetricsData[fontName] = metrics; +} +/** + * This function is a convenience function for looking up information in the + * metricMap table. It takes a character as a string, and a font. + * + * Note: the `width` property may be undefined if fontMetricsData.js wasn't + * built using `Make extended_metrics`. + */ + +function getCharacterMetrics(character, font, mode) { + if (!fontMetricsData[font]) { + throw new Error("Font metrics not found for font: " + font + "."); + } + + var ch = character.charCodeAt(0); + var metrics = fontMetricsData[font][ch]; + + if (!metrics && character[0] in extraCharacterMap) { + ch = extraCharacterMap[character[0]].charCodeAt(0); + metrics = fontMetricsData[font][ch]; + } + + if (!metrics && mode === 'text') { + // We don't typically have font metrics for Asian scripts. + // But since we support them in text mode, we need to return + // some sort of metrics. + // So if the character is in a script we support but we + // don't have metrics for it, just use the metrics for + // the Latin capital letter M. This is close enough because + // we (currently) only care about the height of the glyph + // not its width. + if (supportedCodepoint(ch)) { + metrics = fontMetricsData[font][77]; // 77 is the charcode for 'M' + } + } + + if (metrics) { + return { + depth: metrics[0], + height: metrics[1], + italic: metrics[2], + skew: metrics[3], + width: metrics[4] + }; + } +} +var fontMetricsBySizeIndex = {}; +/** + * Get the font metrics for a given size. + */ + +function getGlobalMetrics(size) { + var sizeIndex; + + if (size >= 5) { + sizeIndex = 0; + } else if (size >= 3) { + sizeIndex = 1; + } else { + sizeIndex = 2; + } + + if (!fontMetricsBySizeIndex[sizeIndex]) { + var metrics = fontMetricsBySizeIndex[sizeIndex] = { + cssEmPerMu: sigmasAndXis.quad[sizeIndex] / 18 + }; + + for (var key in sigmasAndXis) { + if (sigmasAndXis.hasOwnProperty(key)) { + metrics[key] = sigmasAndXis[key][sizeIndex]; + } + } + } + + return fontMetricsBySizeIndex[sizeIndex]; +} + +/** + * This file contains information about the options that the Parser carries + * around with it while parsing. Data is held in an `Options` object, and when + * recursing, a new `Options` object can be created with the `.with*` and + * `.reset` functions. + */ +var sizeStyleMap = [// Each element contains [textsize, scriptsize, scriptscriptsize]. +// The size mappings are taken from TeX with \normalsize=10pt. +[1, 1, 1], // size1: [5, 5, 5] \tiny +[2, 1, 1], // size2: [6, 5, 5] +[3, 1, 1], // size3: [7, 5, 5] \scriptsize +[4, 2, 1], // size4: [8, 6, 5] \footnotesize +[5, 2, 1], // size5: [9, 6, 5] \small +[6, 3, 1], // size6: [10, 7, 5] \normalsize +[7, 4, 2], // size7: [12, 8, 6] \large +[8, 6, 3], // size8: [14.4, 10, 7] \Large +[9, 7, 6], // size9: [17.28, 12, 10] \LARGE +[10, 8, 7], // size10: [20.74, 14.4, 12] \huge +[11, 10, 9] // size11: [24.88, 20.74, 17.28] \HUGE +]; +var sizeMultipliers = [// fontMetrics.js:getGlobalMetrics also uses size indexes, so if +// you change size indexes, change that function. +0.5, 0.6, 0.7, 0.8, 0.9, 1.0, 1.2, 1.44, 1.728, 2.074, 2.488]; + +var sizeAtStyle = function sizeAtStyle(size, style) { + return style.size < 2 ? size : sizeStyleMap[size - 1][style.size - 1]; +}; // In these types, "" (empty string) means "no change". + + +/** + * This is the main options class. It contains the current style, size, color, + * and font. + * + * Options objects should not be modified. To create a new Options with + * different properties, call a `.having*` method. + */ +class Options { + // A font family applies to a group of fonts (i.e. SansSerif), while a font + // represents a specific font (i.e. SansSerif Bold). + // See: https://tex.stackexchange.com/questions/22350/difference-between-textrm-and-mathrm + + /** + * The base size index. + */ + constructor(data) { + this.style = void 0; + this.color = void 0; + this.size = void 0; + this.textSize = void 0; + this.phantom = void 0; + this.font = void 0; + this.fontFamily = void 0; + this.fontWeight = void 0; + this.fontShape = void 0; + this.sizeMultiplier = void 0; + this.maxSize = void 0; + this.minRuleThickness = void 0; + this._fontMetrics = void 0; + this.style = data.style; + this.color = data.color; + this.size = data.size || Options.BASESIZE; + this.textSize = data.textSize || this.size; + this.phantom = !!data.phantom; + this.font = data.font || ""; + this.fontFamily = data.fontFamily || ""; + this.fontWeight = data.fontWeight || ''; + this.fontShape = data.fontShape || ''; + this.sizeMultiplier = sizeMultipliers[this.size - 1]; + this.maxSize = data.maxSize; + this.minRuleThickness = data.minRuleThickness; + this._fontMetrics = undefined; + } + /** + * Returns a new options object with the same properties as "this". Properties + * from "extension" will be copied to the new options object. + */ + + + extend(extension) { + var data = { + style: this.style, + size: this.size, + textSize: this.textSize, + color: this.color, + phantom: this.phantom, + font: this.font, + fontFamily: this.fontFamily, + fontWeight: this.fontWeight, + fontShape: this.fontShape, + maxSize: this.maxSize, + minRuleThickness: this.minRuleThickness + }; + + for (var key in extension) { + if (extension.hasOwnProperty(key)) { + data[key] = extension[key]; + } + } + + return new Options(data); + } + /** + * Return an options object with the given style. If `this.style === style`, + * returns `this`. + */ + + + havingStyle(style) { + if (this.style === style) { + return this; + } else { + return this.extend({ + style: style, + size: sizeAtStyle(this.textSize, style) + }); + } + } + /** + * Return an options object with a cramped version of the current style. If + * the current style is cramped, returns `this`. + */ + + + havingCrampedStyle() { + return this.havingStyle(this.style.cramp()); + } + /** + * Return an options object with the given size and in at least `\textstyle`. + * Returns `this` if appropriate. + */ + + + havingSize(size) { + if (this.size === size && this.textSize === size) { + return this; + } else { + return this.extend({ + style: this.style.text(), + size: size, + textSize: size, + sizeMultiplier: sizeMultipliers[size - 1] + }); + } + } + /** + * Like `this.havingSize(BASESIZE).havingStyle(style)`. If `style` is omitted, + * changes to at least `\textstyle`. + */ + + + havingBaseStyle(style) { + style = style || this.style.text(); + var wantSize = sizeAtStyle(Options.BASESIZE, style); + + if (this.size === wantSize && this.textSize === Options.BASESIZE && this.style === style) { + return this; + } else { + return this.extend({ + style: style, + size: wantSize + }); + } + } + /** + * Remove the effect of sizing changes such as \Huge. + * Keep the effect of the current style, such as \scriptstyle. + */ + + + havingBaseSizing() { + var size; + + switch (this.style.id) { + case 4: + case 5: + size = 3; // normalsize in scriptstyle + + break; + + case 6: + case 7: + size = 1; // normalsize in scriptscriptstyle + + break; + + default: + size = 6; + // normalsize in textstyle or displaystyle + } + + return this.extend({ + style: this.style.text(), + size: size + }); + } + /** + * Create a new options object with the given color. + */ + + + withColor(color) { + return this.extend({ + color: color + }); + } + /** + * Create a new options object with "phantom" set to true. + */ + + + withPhantom() { + return this.extend({ + phantom: true + }); + } + /** + * Creates a new options object with the given math font or old text font. + * @type {[type]} + */ + + + withFont(font) { + return this.extend({ + font + }); + } + /** + * Create a new options objects with the given fontFamily. + */ + + + withTextFontFamily(fontFamily) { + return this.extend({ + fontFamily, + font: "" + }); + } + /** + * Creates a new options object with the given font weight + */ + + + withTextFontWeight(fontWeight) { + return this.extend({ + fontWeight, + font: "" + }); + } + /** + * Creates a new options object with the given font weight + */ + + + withTextFontShape(fontShape) { + return this.extend({ + fontShape, + font: "" + }); + } + /** + * Return the CSS sizing classes required to switch from enclosing options + * `oldOptions` to `this`. Returns an array of classes. + */ + + + sizingClasses(oldOptions) { + if (oldOptions.size !== this.size) { + return ["sizing", "reset-size" + oldOptions.size, "size" + this.size]; + } else { + return []; + } + } + /** + * Return the CSS sizing classes required to switch to the base size. Like + * `this.havingSize(BASESIZE).sizingClasses(this)`. + */ + + + baseSizingClasses() { + if (this.size !== Options.BASESIZE) { + return ["sizing", "reset-size" + this.size, "size" + Options.BASESIZE]; + } else { + return []; + } + } + /** + * Return the font metrics for this size. + */ + + + fontMetrics() { + if (!this._fontMetrics) { + this._fontMetrics = getGlobalMetrics(this.size); + } + + return this._fontMetrics; + } + /** + * Gets the CSS color of the current options object + */ + + + getColor() { + if (this.phantom) { + return "transparent"; + } else { + return this.color; + } + } + +} + +Options.BASESIZE = 6; + +/** + * This file does conversion between units. In particular, it provides + * calculateSize to convert other units into ems. + */ +// Thus, multiplying a length by this number converts the length from units +// into pts. Dividing the result by ptPerEm gives the number of ems +// *assuming* a font size of ptPerEm (normal size, normal style). + +var ptPerUnit = { + // https://en.wikibooks.org/wiki/LaTeX/Lengths and + // https://tex.stackexchange.com/a/8263 + "pt": 1, + // TeX point + "mm": 7227 / 2540, + // millimeter + "cm": 7227 / 254, + // centimeter + "in": 72.27, + // inch + "bp": 803 / 800, + // big (PostScript) points + "pc": 12, + // pica + "dd": 1238 / 1157, + // didot + "cc": 14856 / 1157, + // cicero (12 didot) + "nd": 685 / 642, + // new didot + "nc": 1370 / 107, + // new cicero (12 new didot) + "sp": 1 / 65536, + // scaled point (TeX's internal smallest unit) + // https://tex.stackexchange.com/a/41371 + "px": 803 / 800 // \pdfpxdimen defaults to 1 bp in pdfTeX and LuaTeX + +}; // Dictionary of relative units, for fast validity testing. + +var relativeUnit = { + "ex": true, + "em": true, + "mu": true +}; + +/** + * Determine whether the specified unit (either a string defining the unit + * or a "size" parse node containing a unit field) is valid. + */ +var validUnit = function validUnit(unit) { + if (typeof unit !== "string") { + unit = unit.unit; + } + + return unit in ptPerUnit || unit in relativeUnit || unit === "ex"; +}; +/* + * Convert a "size" parse node (with numeric "number" and string "unit" fields, + * as parsed by functions.js argType "size") into a CSS em value for the + * current style/scale. `options` gives the current options. + */ + +var calculateSize = function calculateSize(sizeValue, options) { + var scale; + + if (sizeValue.unit in ptPerUnit) { + // Absolute units + scale = ptPerUnit[sizeValue.unit] // Convert unit to pt + / options.fontMetrics().ptPerEm // Convert pt to CSS em + / options.sizeMultiplier; // Unscale to make absolute units + } else if (sizeValue.unit === "mu") { + // `mu` units scale with scriptstyle/scriptscriptstyle. + scale = options.fontMetrics().cssEmPerMu; + } else { + // Other relative units always refer to the *textstyle* font + // in the current size. + var unitOptions; + + if (options.style.isTight()) { + // isTight() means current style is script/scriptscript. + unitOptions = options.havingStyle(options.style.text()); + } else { + unitOptions = options; + } // TODO: In TeX these units are relative to the quad of the current + // *text* font, e.g. cmr10. KaTeX instead uses values from the + // comparably-sized *Computer Modern symbol* font. At 10pt, these + // match. At 7pt and 5pt, they differ: cmr7=1.138894, cmsy7=1.170641; + // cmr5=1.361133, cmsy5=1.472241. Consider $\scriptsize a\kern1emb$. + // TeX \showlists shows a kern of 1.13889 * fontsize; + // KaTeX shows a kern of 1.171 * fontsize. + + + if (sizeValue.unit === "ex") { + scale = unitOptions.fontMetrics().xHeight; + } else if (sizeValue.unit === "em") { + scale = unitOptions.fontMetrics().quad; + } else { + throw new ParseError("Invalid unit: '" + sizeValue.unit + "'"); + } + + if (unitOptions !== options) { + scale *= unitOptions.sizeMultiplier / options.sizeMultiplier; + } + } + + return Math.min(sizeValue.number * scale, options.maxSize); +}; +/** + * Round `n` to 4 decimal places, or to the nearest 1/10,000th em. See + * https://github.com/KaTeX/KaTeX/pull/2460. + */ + +var makeEm = function makeEm(n) { + return +n.toFixed(4) + "em"; +}; + +/** + * These objects store the data about the DOM nodes we create, as well as some + * extra data. They can then be transformed into real DOM nodes with the + * `toNode` function or HTML markup using `toMarkup`. They are useful for both + * storing extra properties on the nodes, as well as providing a way to easily + * work with the DOM. + * + * Similar functions for working with MathML nodes exist in mathMLTree.js. + * + * TODO: refactor `span` and `anchor` into common superclass when + * target environments support class inheritance + */ + +/** + * Create an HTML className based on a list of classes. In addition to joining + * with spaces, we also remove empty classes. + */ +var createClass = function createClass(classes) { + return classes.filter(cls => cls).join(" "); +}; + +var initNode = function initNode(classes, options, style) { + this.classes = classes || []; + this.attributes = {}; + this.height = 0; + this.depth = 0; + this.maxFontSize = 0; + this.style = style || {}; + + if (options) { + if (options.style.isTight()) { + this.classes.push("mtight"); + } + + var color = options.getColor(); + + if (color) { + this.style.color = color; + } + } +}; +/** + * Convert into an HTML node + */ + + +var toNode = function toNode(tagName) { + var node = document.createElement(tagName); // Apply the class + + node.className = createClass(this.classes); // Apply inline styles + + for (var style in this.style) { + if (this.style.hasOwnProperty(style)) { + // $FlowFixMe Flow doesn't seem to understand span.style's type. + node.style[style] = this.style[style]; + } + } // Apply attributes + + + for (var attr in this.attributes) { + if (this.attributes.hasOwnProperty(attr)) { + node.setAttribute(attr, this.attributes[attr]); + } + } // Append the children, also as HTML nodes + + + for (var i = 0; i < this.children.length; i++) { + node.appendChild(this.children[i].toNode()); + } + + return node; +}; +/** + * Convert into an HTML markup string + */ + + +var toMarkup = function toMarkup(tagName) { + var markup = "<" + tagName; // Add the class + + if (this.classes.length) { + markup += " class=\"" + utils.escape(createClass(this.classes)) + "\""; + } + + var styles = ""; // Add the styles, after hyphenation + + for (var style in this.style) { + if (this.style.hasOwnProperty(style)) { + styles += utils.hyphenate(style) + ":" + this.style[style] + ";"; + } + } + + if (styles) { + markup += " style=\"" + utils.escape(styles) + "\""; + } // Add the attributes + + + for (var attr in this.attributes) { + if (this.attributes.hasOwnProperty(attr)) { + markup += " " + attr + "=\"" + utils.escape(this.attributes[attr]) + "\""; + } + } + + markup += ">"; // Add the markup of the children, also as markup + + for (var i = 0; i < this.children.length; i++) { + markup += this.children[i].toMarkup(); + } + + markup += ""; + return markup; +}; // Making the type below exact with all optional fields doesn't work due to +// - https://github.com/facebook/flow/issues/4582 +// - https://github.com/facebook/flow/issues/5688 +// However, since *all* fields are optional, $Shape<> works as suggested in 5688 +// above. +// This type does not include all CSS properties. Additional properties should +// be added as needed. + + +/** + * This node represents a span node, with a className, a list of children, and + * an inline style. It also contains information about its height, depth, and + * maxFontSize. + * + * Represents two types with different uses: SvgSpan to wrap an SVG and DomSpan + * otherwise. This typesafety is important when HTML builders access a span's + * children. + */ +class Span { + constructor(classes, children, options, style) { + this.children = void 0; + this.attributes = void 0; + this.classes = void 0; + this.height = void 0; + this.depth = void 0; + this.width = void 0; + this.maxFontSize = void 0; + this.style = void 0; + initNode.call(this, classes, options, style); + this.children = children || []; + } + /** + * Sets an arbitrary attribute on the span. Warning: use this wisely. Not + * all browsers support attributes the same, and having too many custom + * attributes is probably bad. + */ + + + setAttribute(attribute, value) { + this.attributes[attribute] = value; + } + + hasClass(className) { + return utils.contains(this.classes, className); + } + + toNode() { + return toNode.call(this, "span"); + } + + toMarkup() { + return toMarkup.call(this, "span"); + } + +} +/** + * This node represents an anchor (
) element with a hyperlink. See `span` + * for further details. + */ + +class Anchor { + constructor(href, classes, children, options) { + this.children = void 0; + this.attributes = void 0; + this.classes = void 0; + this.height = void 0; + this.depth = void 0; + this.maxFontSize = void 0; + this.style = void 0; + initNode.call(this, classes, options); + this.children = children || []; + this.setAttribute('href', href); + } + + setAttribute(attribute, value) { + this.attributes[attribute] = value; + } + + hasClass(className) { + return utils.contains(this.classes, className); + } + + toNode() { + return toNode.call(this, "a"); + } + + toMarkup() { + return toMarkup.call(this, "a"); + } + +} +/** + * This node represents an image embed () element. + */ + +class Img { + constructor(src, alt, style) { + this.src = void 0; + this.alt = void 0; + this.classes = void 0; + this.height = void 0; + this.depth = void 0; + this.maxFontSize = void 0; + this.style = void 0; + this.alt = alt; + this.src = src; + this.classes = ["mord"]; + this.style = style; + } + + hasClass(className) { + return utils.contains(this.classes, className); + } + + toNode() { + var node = document.createElement("img"); + node.src = this.src; + node.alt = this.alt; + node.className = "mord"; // Apply inline styles + + for (var style in this.style) { + if (this.style.hasOwnProperty(style)) { + // $FlowFixMe + node.style[style] = this.style[style]; + } + } + + return node; + } + + toMarkup() { + var markup = "\"" 0) { + span = document.createElement("span"); + span.style.marginRight = makeEm(this.italic); + } + + if (this.classes.length > 0) { + span = span || document.createElement("span"); + span.className = createClass(this.classes); + } + + for (var style in this.style) { + if (this.style.hasOwnProperty(style)) { + span = span || document.createElement("span"); // $FlowFixMe Flow doesn't seem to understand span.style's type. + + span.style[style] = this.style[style]; + } + } + + if (span) { + span.appendChild(node); + return span; + } else { + return node; + } + } + /** + * Creates markup for a symbol node. + */ + + + toMarkup() { + // TODO(alpert): More duplication than I'd like from + // span.prototype.toMarkup and symbolNode.prototype.toNode... + var needsSpan = false; + var markup = " 0) { + styles += "margin-right:" + this.italic + "em;"; + } + + for (var style in this.style) { + if (this.style.hasOwnProperty(style)) { + styles += utils.hyphenate(style) + ":" + this.style[style] + ";"; + } + } + + if (styles) { + needsSpan = true; + markup += " style=\"" + utils.escape(styles) + "\""; + } + + var escaped = utils.escape(this.text); + + if (needsSpan) { + markup += ">"; + markup += escaped; + markup += ""; + return markup; + } else { + return escaped; + } + } + +} +/** + * SVG nodes are used to render stretchy wide elements. + */ + +class SvgNode { + constructor(children, attributes) { + this.children = void 0; + this.attributes = void 0; + this.children = children || []; + this.attributes = attributes || {}; + } + + toNode() { + var svgNS = "http://www.w3.org/2000/svg"; + var node = document.createElementNS(svgNS, "svg"); // Apply attributes + + for (var attr in this.attributes) { + if (Object.prototype.hasOwnProperty.call(this.attributes, attr)) { + node.setAttribute(attr, this.attributes[attr]); + } + } + + for (var i = 0; i < this.children.length; i++) { + node.appendChild(this.children[i].toNode()); + } + + return node; + } + + toMarkup() { + var markup = ""; + } else { + return ""; + } + } + +} +class LineNode { + constructor(attributes) { + this.attributes = void 0; + this.attributes = attributes || {}; + } + + toNode() { + var svgNS = "http://www.w3.org/2000/svg"; + var node = document.createElementNS(svgNS, "line"); // Apply attributes + + for (var attr in this.attributes) { + if (Object.prototype.hasOwnProperty.call(this.attributes, attr)) { + node.setAttribute(attr, this.attributes[attr]); + } + } + + return node; + } + + toMarkup() { + var markup = " but got " + String(group) + "."); + } +} + +/** + * This file holds a list of all no-argument functions and single-character + * symbols (like 'a' or ';'). + * + * For each of the symbols, there are three properties they can have: + * - font (required): the font to be used for this symbol. Either "main" (the + normal font), or "ams" (the ams fonts). + * - group (required): the ParseNode group type the symbol should have (i.e. + "textord", "mathord", etc). + See https://github.com/KaTeX/KaTeX/wiki/Examining-TeX#group-types + * - replace: the character that this symbol or function should be + * replaced with (i.e. "\phi" has a replace value of "\u03d5", the phi + * character in the main font). + * + * The outermost map in the table indicates what mode the symbols should be + * accepted in (e.g. "math" or "text"). + */ +// Some of these have a "-token" suffix since these are also used as `ParseNode` +// types for raw text tokens, and we want to avoid conflicts with higher-level +// `ParseNode` types. These `ParseNode`s are constructed within `Parser` by +// looking up the `symbols` map. +var ATOMS = { + "bin": 1, + "close": 1, + "inner": 1, + "open": 1, + "punct": 1, + "rel": 1 +}; +var NON_ATOMS = { + "accent-token": 1, + "mathord": 1, + "op-token": 1, + "spacing": 1, + "textord": 1 +}; +var symbols = { + "math": {}, + "text": {} +}; +/** `acceptUnicodeChar = true` is only applicable if `replace` is set. */ + +function defineSymbol(mode, font, group, replace, name, acceptUnicodeChar) { + symbols[mode][name] = { + font, + group, + replace + }; + + if (acceptUnicodeChar && replace) { + symbols[mode][replace] = symbols[mode][name]; + } +} // Some abbreviations for commonly used strings. +// This helps minify the code, and also spotting typos using jshint. +// modes: + +var math = "math"; +var text = "text"; // fonts: + +var main = "main"; +var ams = "ams"; // groups: + +var accent = "accent-token"; +var bin = "bin"; +var close = "close"; +var inner = "inner"; +var mathord = "mathord"; +var op = "op-token"; +var open = "open"; +var punct = "punct"; +var rel = "rel"; +var spacing = "spacing"; +var textord = "textord"; // Now comes the symbol table +// Relation Symbols + +defineSymbol(math, main, rel, "\u2261", "\\equiv", true); +defineSymbol(math, main, rel, "\u227a", "\\prec", true); +defineSymbol(math, main, rel, "\u227b", "\\succ", true); +defineSymbol(math, main, rel, "\u223c", "\\sim", true); +defineSymbol(math, main, rel, "\u22a5", "\\perp"); +defineSymbol(math, main, rel, "\u2aaf", "\\preceq", true); +defineSymbol(math, main, rel, "\u2ab0", "\\succeq", true); +defineSymbol(math, main, rel, "\u2243", "\\simeq", true); +defineSymbol(math, main, rel, "\u2223", "\\mid", true); +defineSymbol(math, main, rel, "\u226a", "\\ll", true); +defineSymbol(math, main, rel, "\u226b", "\\gg", true); +defineSymbol(math, main, rel, "\u224d", "\\asymp", true); +defineSymbol(math, main, rel, "\u2225", "\\parallel"); +defineSymbol(math, main, rel, "\u22c8", "\\bowtie", true); +defineSymbol(math, main, rel, "\u2323", "\\smile", true); +defineSymbol(math, main, rel, "\u2291", "\\sqsubseteq", true); +defineSymbol(math, main, rel, "\u2292", "\\sqsupseteq", true); +defineSymbol(math, main, rel, "\u2250", "\\doteq", true); +defineSymbol(math, main, rel, "\u2322", "\\frown", true); +defineSymbol(math, main, rel, "\u220b", "\\ni", true); +defineSymbol(math, main, rel, "\u221d", "\\propto", true); +defineSymbol(math, main, rel, "\u22a2", "\\vdash", true); +defineSymbol(math, main, rel, "\u22a3", "\\dashv", true); +defineSymbol(math, main, rel, "\u220b", "\\owns"); // Punctuation + +defineSymbol(math, main, punct, "\u002e", "\\ldotp"); +defineSymbol(math, main, punct, "\u22c5", "\\cdotp"); // Misc Symbols + +defineSymbol(math, main, textord, "\u0023", "\\#"); +defineSymbol(text, main, textord, "\u0023", "\\#"); +defineSymbol(math, main, textord, "\u0026", "\\&"); +defineSymbol(text, main, textord, "\u0026", "\\&"); +defineSymbol(math, main, textord, "\u2135", "\\aleph", true); +defineSymbol(math, main, textord, "\u2200", "\\forall", true); +defineSymbol(math, main, textord, "\u210f", "\\hbar", true); +defineSymbol(math, main, textord, "\u2203", "\\exists", true); +defineSymbol(math, main, textord, "\u2207", "\\nabla", true); +defineSymbol(math, main, textord, "\u266d", "\\flat", true); +defineSymbol(math, main, textord, "\u2113", "\\ell", true); +defineSymbol(math, main, textord, "\u266e", "\\natural", true); +defineSymbol(math, main, textord, "\u2663", "\\clubsuit", true); +defineSymbol(math, main, textord, "\u2118", "\\wp", true); +defineSymbol(math, main, textord, "\u266f", "\\sharp", true); +defineSymbol(math, main, textord, "\u2662", "\\diamondsuit", true); +defineSymbol(math, main, textord, "\u211c", "\\Re", true); +defineSymbol(math, main, textord, "\u2661", "\\heartsuit", true); +defineSymbol(math, main, textord, "\u2111", "\\Im", true); +defineSymbol(math, main, textord, "\u2660", "\\spadesuit", true); +defineSymbol(math, main, textord, "\u00a7", "\\S", true); +defineSymbol(text, main, textord, "\u00a7", "\\S"); +defineSymbol(math, main, textord, "\u00b6", "\\P", true); +defineSymbol(text, main, textord, "\u00b6", "\\P"); // Math and Text + +defineSymbol(math, main, textord, "\u2020", "\\dag"); +defineSymbol(text, main, textord, "\u2020", "\\dag"); +defineSymbol(text, main, textord, "\u2020", "\\textdagger"); +defineSymbol(math, main, textord, "\u2021", "\\ddag"); +defineSymbol(text, main, textord, "\u2021", "\\ddag"); +defineSymbol(text, main, textord, "\u2021", "\\textdaggerdbl"); // Large Delimiters + +defineSymbol(math, main, close, "\u23b1", "\\rmoustache", true); +defineSymbol(math, main, open, "\u23b0", "\\lmoustache", true); +defineSymbol(math, main, close, "\u27ef", "\\rgroup", true); +defineSymbol(math, main, open, "\u27ee", "\\lgroup", true); // Binary Operators + +defineSymbol(math, main, bin, "\u2213", "\\mp", true); +defineSymbol(math, main, bin, "\u2296", "\\ominus", true); +defineSymbol(math, main, bin, "\u228e", "\\uplus", true); +defineSymbol(math, main, bin, "\u2293", "\\sqcap", true); +defineSymbol(math, main, bin, "\u2217", "\\ast"); +defineSymbol(math, main, bin, "\u2294", "\\sqcup", true); +defineSymbol(math, main, bin, "\u25ef", "\\bigcirc", true); +defineSymbol(math, main, bin, "\u2219", "\\bullet", true); +defineSymbol(math, main, bin, "\u2021", "\\ddagger"); +defineSymbol(math, main, bin, "\u2240", "\\wr", true); +defineSymbol(math, main, bin, "\u2a3f", "\\amalg"); +defineSymbol(math, main, bin, "\u0026", "\\And"); // from amsmath +// Arrow Symbols + +defineSymbol(math, main, rel, "\u27f5", "\\longleftarrow", true); +defineSymbol(math, main, rel, "\u21d0", "\\Leftarrow", true); +defineSymbol(math, main, rel, "\u27f8", "\\Longleftarrow", true); +defineSymbol(math, main, rel, "\u27f6", "\\longrightarrow", true); +defineSymbol(math, main, rel, "\u21d2", "\\Rightarrow", true); +defineSymbol(math, main, rel, "\u27f9", "\\Longrightarrow", true); +defineSymbol(math, main, rel, "\u2194", "\\leftrightarrow", true); +defineSymbol(math, main, rel, "\u27f7", "\\longleftrightarrow", true); +defineSymbol(math, main, rel, "\u21d4", "\\Leftrightarrow", true); +defineSymbol(math, main, rel, "\u27fa", "\\Longleftrightarrow", true); +defineSymbol(math, main, rel, "\u21a6", "\\mapsto", true); +defineSymbol(math, main, rel, "\u27fc", "\\longmapsto", true); +defineSymbol(math, main, rel, "\u2197", "\\nearrow", true); +defineSymbol(math, main, rel, "\u21a9", "\\hookleftarrow", true); +defineSymbol(math, main, rel, "\u21aa", "\\hookrightarrow", true); +defineSymbol(math, main, rel, "\u2198", "\\searrow", true); +defineSymbol(math, main, rel, "\u21bc", "\\leftharpoonup", true); +defineSymbol(math, main, rel, "\u21c0", "\\rightharpoonup", true); +defineSymbol(math, main, rel, "\u2199", "\\swarrow", true); +defineSymbol(math, main, rel, "\u21bd", "\\leftharpoondown", true); +defineSymbol(math, main, rel, "\u21c1", "\\rightharpoondown", true); +defineSymbol(math, main, rel, "\u2196", "\\nwarrow", true); +defineSymbol(math, main, rel, "\u21cc", "\\rightleftharpoons", true); // AMS Negated Binary Relations + +defineSymbol(math, ams, rel, "\u226e", "\\nless", true); // Symbol names preceded by "@" each have a corresponding macro. + +defineSymbol(math, ams, rel, "\ue010", "\\@nleqslant"); +defineSymbol(math, ams, rel, "\ue011", "\\@nleqq"); +defineSymbol(math, ams, rel, "\u2a87", "\\lneq", true); +defineSymbol(math, ams, rel, "\u2268", "\\lneqq", true); +defineSymbol(math, ams, rel, "\ue00c", "\\@lvertneqq"); +defineSymbol(math, ams, rel, "\u22e6", "\\lnsim", true); +defineSymbol(math, ams, rel, "\u2a89", "\\lnapprox", true); +defineSymbol(math, ams, rel, "\u2280", "\\nprec", true); // unicode-math maps \u22e0 to \npreccurlyeq. We'll use the AMS synonym. + +defineSymbol(math, ams, rel, "\u22e0", "\\npreceq", true); +defineSymbol(math, ams, rel, "\u22e8", "\\precnsim", true); +defineSymbol(math, ams, rel, "\u2ab9", "\\precnapprox", true); +defineSymbol(math, ams, rel, "\u2241", "\\nsim", true); +defineSymbol(math, ams, rel, "\ue006", "\\@nshortmid"); +defineSymbol(math, ams, rel, "\u2224", "\\nmid", true); +defineSymbol(math, ams, rel, "\u22ac", "\\nvdash", true); +defineSymbol(math, ams, rel, "\u22ad", "\\nvDash", true); +defineSymbol(math, ams, rel, "\u22ea", "\\ntriangleleft"); +defineSymbol(math, ams, rel, "\u22ec", "\\ntrianglelefteq", true); +defineSymbol(math, ams, rel, "\u228a", "\\subsetneq", true); +defineSymbol(math, ams, rel, "\ue01a", "\\@varsubsetneq"); +defineSymbol(math, ams, rel, "\u2acb", "\\subsetneqq", true); +defineSymbol(math, ams, rel, "\ue017", "\\@varsubsetneqq"); +defineSymbol(math, ams, rel, "\u226f", "\\ngtr", true); +defineSymbol(math, ams, rel, "\ue00f", "\\@ngeqslant"); +defineSymbol(math, ams, rel, "\ue00e", "\\@ngeqq"); +defineSymbol(math, ams, rel, "\u2a88", "\\gneq", true); +defineSymbol(math, ams, rel, "\u2269", "\\gneqq", true); +defineSymbol(math, ams, rel, "\ue00d", "\\@gvertneqq"); +defineSymbol(math, ams, rel, "\u22e7", "\\gnsim", true); +defineSymbol(math, ams, rel, "\u2a8a", "\\gnapprox", true); +defineSymbol(math, ams, rel, "\u2281", "\\nsucc", true); // unicode-math maps \u22e1 to \nsucccurlyeq. We'll use the AMS synonym. + +defineSymbol(math, ams, rel, "\u22e1", "\\nsucceq", true); +defineSymbol(math, ams, rel, "\u22e9", "\\succnsim", true); +defineSymbol(math, ams, rel, "\u2aba", "\\succnapprox", true); // unicode-math maps \u2246 to \simneqq. We'll use the AMS synonym. + +defineSymbol(math, ams, rel, "\u2246", "\\ncong", true); +defineSymbol(math, ams, rel, "\ue007", "\\@nshortparallel"); +defineSymbol(math, ams, rel, "\u2226", "\\nparallel", true); +defineSymbol(math, ams, rel, "\u22af", "\\nVDash", true); +defineSymbol(math, ams, rel, "\u22eb", "\\ntriangleright"); +defineSymbol(math, ams, rel, "\u22ed", "\\ntrianglerighteq", true); +defineSymbol(math, ams, rel, "\ue018", "\\@nsupseteqq"); +defineSymbol(math, ams, rel, "\u228b", "\\supsetneq", true); +defineSymbol(math, ams, rel, "\ue01b", "\\@varsupsetneq"); +defineSymbol(math, ams, rel, "\u2acc", "\\supsetneqq", true); +defineSymbol(math, ams, rel, "\ue019", "\\@varsupsetneqq"); +defineSymbol(math, ams, rel, "\u22ae", "\\nVdash", true); +defineSymbol(math, ams, rel, "\u2ab5", "\\precneqq", true); +defineSymbol(math, ams, rel, "\u2ab6", "\\succneqq", true); +defineSymbol(math, ams, rel, "\ue016", "\\@nsubseteqq"); +defineSymbol(math, ams, bin, "\u22b4", "\\unlhd"); +defineSymbol(math, ams, bin, "\u22b5", "\\unrhd"); // AMS Negated Arrows + +defineSymbol(math, ams, rel, "\u219a", "\\nleftarrow", true); +defineSymbol(math, ams, rel, "\u219b", "\\nrightarrow", true); +defineSymbol(math, ams, rel, "\u21cd", "\\nLeftarrow", true); +defineSymbol(math, ams, rel, "\u21cf", "\\nRightarrow", true); +defineSymbol(math, ams, rel, "\u21ae", "\\nleftrightarrow", true); +defineSymbol(math, ams, rel, "\u21ce", "\\nLeftrightarrow", true); // AMS Misc + +defineSymbol(math, ams, rel, "\u25b3", "\\vartriangle"); +defineSymbol(math, ams, textord, "\u210f", "\\hslash"); +defineSymbol(math, ams, textord, "\u25bd", "\\triangledown"); +defineSymbol(math, ams, textord, "\u25ca", "\\lozenge"); +defineSymbol(math, ams, textord, "\u24c8", "\\circledS"); +defineSymbol(math, ams, textord, "\u00ae", "\\circledR"); +defineSymbol(text, ams, textord, "\u00ae", "\\circledR"); +defineSymbol(math, ams, textord, "\u2221", "\\measuredangle", true); +defineSymbol(math, ams, textord, "\u2204", "\\nexists"); +defineSymbol(math, ams, textord, "\u2127", "\\mho"); +defineSymbol(math, ams, textord, "\u2132", "\\Finv", true); +defineSymbol(math, ams, textord, "\u2141", "\\Game", true); +defineSymbol(math, ams, textord, "\u2035", "\\backprime"); +defineSymbol(math, ams, textord, "\u25b2", "\\blacktriangle"); +defineSymbol(math, ams, textord, "\u25bc", "\\blacktriangledown"); +defineSymbol(math, ams, textord, "\u25a0", "\\blacksquare"); +defineSymbol(math, ams, textord, "\u29eb", "\\blacklozenge"); +defineSymbol(math, ams, textord, "\u2605", "\\bigstar"); +defineSymbol(math, ams, textord, "\u2222", "\\sphericalangle", true); +defineSymbol(math, ams, textord, "\u2201", "\\complement", true); // unicode-math maps U+F0 to \matheth. We map to AMS function \eth + +defineSymbol(math, ams, textord, "\u00f0", "\\eth", true); +defineSymbol(text, main, textord, "\u00f0", "\u00f0"); +defineSymbol(math, ams, textord, "\u2571", "\\diagup"); +defineSymbol(math, ams, textord, "\u2572", "\\diagdown"); +defineSymbol(math, ams, textord, "\u25a1", "\\square"); +defineSymbol(math, ams, textord, "\u25a1", "\\Box"); +defineSymbol(math, ams, textord, "\u25ca", "\\Diamond"); // unicode-math maps U+A5 to \mathyen. We map to AMS function \yen + +defineSymbol(math, ams, textord, "\u00a5", "\\yen", true); +defineSymbol(text, ams, textord, "\u00a5", "\\yen", true); +defineSymbol(math, ams, textord, "\u2713", "\\checkmark", true); +defineSymbol(text, ams, textord, "\u2713", "\\checkmark"); // AMS Hebrew + +defineSymbol(math, ams, textord, "\u2136", "\\beth", true); +defineSymbol(math, ams, textord, "\u2138", "\\daleth", true); +defineSymbol(math, ams, textord, "\u2137", "\\gimel", true); // AMS Greek + +defineSymbol(math, ams, textord, "\u03dd", "\\digamma", true); +defineSymbol(math, ams, textord, "\u03f0", "\\varkappa"); // AMS Delimiters + +defineSymbol(math, ams, open, "\u250c", "\\@ulcorner", true); +defineSymbol(math, ams, close, "\u2510", "\\@urcorner", true); +defineSymbol(math, ams, open, "\u2514", "\\@llcorner", true); +defineSymbol(math, ams, close, "\u2518", "\\@lrcorner", true); // AMS Binary Relations + +defineSymbol(math, ams, rel, "\u2266", "\\leqq", true); +defineSymbol(math, ams, rel, "\u2a7d", "\\leqslant", true); +defineSymbol(math, ams, rel, "\u2a95", "\\eqslantless", true); +defineSymbol(math, ams, rel, "\u2272", "\\lesssim", true); +defineSymbol(math, ams, rel, "\u2a85", "\\lessapprox", true); +defineSymbol(math, ams, rel, "\u224a", "\\approxeq", true); +defineSymbol(math, ams, bin, "\u22d6", "\\lessdot"); +defineSymbol(math, ams, rel, "\u22d8", "\\lll", true); +defineSymbol(math, ams, rel, "\u2276", "\\lessgtr", true); +defineSymbol(math, ams, rel, "\u22da", "\\lesseqgtr", true); +defineSymbol(math, ams, rel, "\u2a8b", "\\lesseqqgtr", true); +defineSymbol(math, ams, rel, "\u2251", "\\doteqdot"); +defineSymbol(math, ams, rel, "\u2253", "\\risingdotseq", true); +defineSymbol(math, ams, rel, "\u2252", "\\fallingdotseq", true); +defineSymbol(math, ams, rel, "\u223d", "\\backsim", true); +defineSymbol(math, ams, rel, "\u22cd", "\\backsimeq", true); +defineSymbol(math, ams, rel, "\u2ac5", "\\subseteqq", true); +defineSymbol(math, ams, rel, "\u22d0", "\\Subset", true); +defineSymbol(math, ams, rel, "\u228f", "\\sqsubset", true); +defineSymbol(math, ams, rel, "\u227c", "\\preccurlyeq", true); +defineSymbol(math, ams, rel, "\u22de", "\\curlyeqprec", true); +defineSymbol(math, ams, rel, "\u227e", "\\precsim", true); +defineSymbol(math, ams, rel, "\u2ab7", "\\precapprox", true); +defineSymbol(math, ams, rel, "\u22b2", "\\vartriangleleft"); +defineSymbol(math, ams, rel, "\u22b4", "\\trianglelefteq"); +defineSymbol(math, ams, rel, "\u22a8", "\\vDash", true); +defineSymbol(math, ams, rel, "\u22aa", "\\Vvdash", true); +defineSymbol(math, ams, rel, "\u2323", "\\smallsmile"); +defineSymbol(math, ams, rel, "\u2322", "\\smallfrown"); +defineSymbol(math, ams, rel, "\u224f", "\\bumpeq", true); +defineSymbol(math, ams, rel, "\u224e", "\\Bumpeq", true); +defineSymbol(math, ams, rel, "\u2267", "\\geqq", true); +defineSymbol(math, ams, rel, "\u2a7e", "\\geqslant", true); +defineSymbol(math, ams, rel, "\u2a96", "\\eqslantgtr", true); +defineSymbol(math, ams, rel, "\u2273", "\\gtrsim", true); +defineSymbol(math, ams, rel, "\u2a86", "\\gtrapprox", true); +defineSymbol(math, ams, bin, "\u22d7", "\\gtrdot"); +defineSymbol(math, ams, rel, "\u22d9", "\\ggg", true); +defineSymbol(math, ams, rel, "\u2277", "\\gtrless", true); +defineSymbol(math, ams, rel, "\u22db", "\\gtreqless", true); +defineSymbol(math, ams, rel, "\u2a8c", "\\gtreqqless", true); +defineSymbol(math, ams, rel, "\u2256", "\\eqcirc", true); +defineSymbol(math, ams, rel, "\u2257", "\\circeq", true); +defineSymbol(math, ams, rel, "\u225c", "\\triangleq", true); +defineSymbol(math, ams, rel, "\u223c", "\\thicksim"); +defineSymbol(math, ams, rel, "\u2248", "\\thickapprox"); +defineSymbol(math, ams, rel, "\u2ac6", "\\supseteqq", true); +defineSymbol(math, ams, rel, "\u22d1", "\\Supset", true); +defineSymbol(math, ams, rel, "\u2290", "\\sqsupset", true); +defineSymbol(math, ams, rel, "\u227d", "\\succcurlyeq", true); +defineSymbol(math, ams, rel, "\u22df", "\\curlyeqsucc", true); +defineSymbol(math, ams, rel, "\u227f", "\\succsim", true); +defineSymbol(math, ams, rel, "\u2ab8", "\\succapprox", true); +defineSymbol(math, ams, rel, "\u22b3", "\\vartriangleright"); +defineSymbol(math, ams, rel, "\u22b5", "\\trianglerighteq"); +defineSymbol(math, ams, rel, "\u22a9", "\\Vdash", true); +defineSymbol(math, ams, rel, "\u2223", "\\shortmid"); +defineSymbol(math, ams, rel, "\u2225", "\\shortparallel"); +defineSymbol(math, ams, rel, "\u226c", "\\between", true); +defineSymbol(math, ams, rel, "\u22d4", "\\pitchfork", true); +defineSymbol(math, ams, rel, "\u221d", "\\varpropto"); +defineSymbol(math, ams, rel, "\u25c0", "\\blacktriangleleft"); // unicode-math says that \therefore is a mathord atom. +// We kept the amssymb atom type, which is rel. + +defineSymbol(math, ams, rel, "\u2234", "\\therefore", true); +defineSymbol(math, ams, rel, "\u220d", "\\backepsilon"); +defineSymbol(math, ams, rel, "\u25b6", "\\blacktriangleright"); // unicode-math says that \because is a mathord atom. +// We kept the amssymb atom type, which is rel. + +defineSymbol(math, ams, rel, "\u2235", "\\because", true); +defineSymbol(math, ams, rel, "\u22d8", "\\llless"); +defineSymbol(math, ams, rel, "\u22d9", "\\gggtr"); +defineSymbol(math, ams, bin, "\u22b2", "\\lhd"); +defineSymbol(math, ams, bin, "\u22b3", "\\rhd"); +defineSymbol(math, ams, rel, "\u2242", "\\eqsim", true); +defineSymbol(math, main, rel, "\u22c8", "\\Join"); +defineSymbol(math, ams, rel, "\u2251", "\\Doteq", true); // AMS Binary Operators + +defineSymbol(math, ams, bin, "\u2214", "\\dotplus", true); +defineSymbol(math, ams, bin, "\u2216", "\\smallsetminus"); +defineSymbol(math, ams, bin, "\u22d2", "\\Cap", true); +defineSymbol(math, ams, bin, "\u22d3", "\\Cup", true); +defineSymbol(math, ams, bin, "\u2a5e", "\\doublebarwedge", true); +defineSymbol(math, ams, bin, "\u229f", "\\boxminus", true); +defineSymbol(math, ams, bin, "\u229e", "\\boxplus", true); +defineSymbol(math, ams, bin, "\u22c7", "\\divideontimes", true); +defineSymbol(math, ams, bin, "\u22c9", "\\ltimes", true); +defineSymbol(math, ams, bin, "\u22ca", "\\rtimes", true); +defineSymbol(math, ams, bin, "\u22cb", "\\leftthreetimes", true); +defineSymbol(math, ams, bin, "\u22cc", "\\rightthreetimes", true); +defineSymbol(math, ams, bin, "\u22cf", "\\curlywedge", true); +defineSymbol(math, ams, bin, "\u22ce", "\\curlyvee", true); +defineSymbol(math, ams, bin, "\u229d", "\\circleddash", true); +defineSymbol(math, ams, bin, "\u229b", "\\circledast", true); +defineSymbol(math, ams, bin, "\u22c5", "\\centerdot"); +defineSymbol(math, ams, bin, "\u22ba", "\\intercal", true); +defineSymbol(math, ams, bin, "\u22d2", "\\doublecap"); +defineSymbol(math, ams, bin, "\u22d3", "\\doublecup"); +defineSymbol(math, ams, bin, "\u22a0", "\\boxtimes", true); // AMS Arrows +// Note: unicode-math maps \u21e2 to their own function \rightdasharrow. +// We'll map it to AMS function \dashrightarrow. It produces the same atom. + +defineSymbol(math, ams, rel, "\u21e2", "\\dashrightarrow", true); // unicode-math maps \u21e0 to \leftdasharrow. We'll use the AMS synonym. + +defineSymbol(math, ams, rel, "\u21e0", "\\dashleftarrow", true); +defineSymbol(math, ams, rel, "\u21c7", "\\leftleftarrows", true); +defineSymbol(math, ams, rel, "\u21c6", "\\leftrightarrows", true); +defineSymbol(math, ams, rel, "\u21da", "\\Lleftarrow", true); +defineSymbol(math, ams, rel, "\u219e", "\\twoheadleftarrow", true); +defineSymbol(math, ams, rel, "\u21a2", "\\leftarrowtail", true); +defineSymbol(math, ams, rel, "\u21ab", "\\looparrowleft", true); +defineSymbol(math, ams, rel, "\u21cb", "\\leftrightharpoons", true); +defineSymbol(math, ams, rel, "\u21b6", "\\curvearrowleft", true); // unicode-math maps \u21ba to \acwopencirclearrow. We'll use the AMS synonym. + +defineSymbol(math, ams, rel, "\u21ba", "\\circlearrowleft", true); +defineSymbol(math, ams, rel, "\u21b0", "\\Lsh", true); +defineSymbol(math, ams, rel, "\u21c8", "\\upuparrows", true); +defineSymbol(math, ams, rel, "\u21bf", "\\upharpoonleft", true); +defineSymbol(math, ams, rel, "\u21c3", "\\downharpoonleft", true); +defineSymbol(math, main, rel, "\u22b6", "\\origof", true); // not in font + +defineSymbol(math, main, rel, "\u22b7", "\\imageof", true); // not in font + +defineSymbol(math, ams, rel, "\u22b8", "\\multimap", true); +defineSymbol(math, ams, rel, "\u21ad", "\\leftrightsquigarrow", true); +defineSymbol(math, ams, rel, "\u21c9", "\\rightrightarrows", true); +defineSymbol(math, ams, rel, "\u21c4", "\\rightleftarrows", true); +defineSymbol(math, ams, rel, "\u21a0", "\\twoheadrightarrow", true); +defineSymbol(math, ams, rel, "\u21a3", "\\rightarrowtail", true); +defineSymbol(math, ams, rel, "\u21ac", "\\looparrowright", true); +defineSymbol(math, ams, rel, "\u21b7", "\\curvearrowright", true); // unicode-math maps \u21bb to \cwopencirclearrow. We'll use the AMS synonym. + +defineSymbol(math, ams, rel, "\u21bb", "\\circlearrowright", true); +defineSymbol(math, ams, rel, "\u21b1", "\\Rsh", true); +defineSymbol(math, ams, rel, "\u21ca", "\\downdownarrows", true); +defineSymbol(math, ams, rel, "\u21be", "\\upharpoonright", true); +defineSymbol(math, ams, rel, "\u21c2", "\\downharpoonright", true); +defineSymbol(math, ams, rel, "\u21dd", "\\rightsquigarrow", true); +defineSymbol(math, ams, rel, "\u21dd", "\\leadsto"); +defineSymbol(math, ams, rel, "\u21db", "\\Rrightarrow", true); +defineSymbol(math, ams, rel, "\u21be", "\\restriction"); +defineSymbol(math, main, textord, "\u2018", "`"); +defineSymbol(math, main, textord, "$", "\\$"); +defineSymbol(text, main, textord, "$", "\\$"); +defineSymbol(text, main, textord, "$", "\\textdollar"); +defineSymbol(math, main, textord, "%", "\\%"); +defineSymbol(text, main, textord, "%", "\\%"); +defineSymbol(math, main, textord, "_", "\\_"); +defineSymbol(text, main, textord, "_", "\\_"); +defineSymbol(text, main, textord, "_", "\\textunderscore"); +defineSymbol(math, main, textord, "\u2220", "\\angle", true); +defineSymbol(math, main, textord, "\u221e", "\\infty", true); +defineSymbol(math, main, textord, "\u2032", "\\prime"); +defineSymbol(math, main, textord, "\u25b3", "\\triangle"); +defineSymbol(math, main, textord, "\u0393", "\\Gamma", true); +defineSymbol(math, main, textord, "\u0394", "\\Delta", true); +defineSymbol(math, main, textord, "\u0398", "\\Theta", true); +defineSymbol(math, main, textord, "\u039b", "\\Lambda", true); +defineSymbol(math, main, textord, "\u039e", "\\Xi", true); +defineSymbol(math, main, textord, "\u03a0", "\\Pi", true); +defineSymbol(math, main, textord, "\u03a3", "\\Sigma", true); +defineSymbol(math, main, textord, "\u03a5", "\\Upsilon", true); +defineSymbol(math, main, textord, "\u03a6", "\\Phi", true); +defineSymbol(math, main, textord, "\u03a8", "\\Psi", true); +defineSymbol(math, main, textord, "\u03a9", "\\Omega", true); +defineSymbol(math, main, textord, "A", "\u0391"); +defineSymbol(math, main, textord, "B", "\u0392"); +defineSymbol(math, main, textord, "E", "\u0395"); +defineSymbol(math, main, textord, "Z", "\u0396"); +defineSymbol(math, main, textord, "H", "\u0397"); +defineSymbol(math, main, textord, "I", "\u0399"); +defineSymbol(math, main, textord, "K", "\u039A"); +defineSymbol(math, main, textord, "M", "\u039C"); +defineSymbol(math, main, textord, "N", "\u039D"); +defineSymbol(math, main, textord, "O", "\u039F"); +defineSymbol(math, main, textord, "P", "\u03A1"); +defineSymbol(math, main, textord, "T", "\u03A4"); +defineSymbol(math, main, textord, "X", "\u03A7"); +defineSymbol(math, main, textord, "\u00ac", "\\neg", true); +defineSymbol(math, main, textord, "\u00ac", "\\lnot"); +defineSymbol(math, main, textord, "\u22a4", "\\top"); +defineSymbol(math, main, textord, "\u22a5", "\\bot"); +defineSymbol(math, main, textord, "\u2205", "\\emptyset"); +defineSymbol(math, ams, textord, "\u2205", "\\varnothing"); +defineSymbol(math, main, mathord, "\u03b1", "\\alpha", true); +defineSymbol(math, main, mathord, "\u03b2", "\\beta", true); +defineSymbol(math, main, mathord, "\u03b3", "\\gamma", true); +defineSymbol(math, main, mathord, "\u03b4", "\\delta", true); +defineSymbol(math, main, mathord, "\u03f5", "\\epsilon", true); +defineSymbol(math, main, mathord, "\u03b6", "\\zeta", true); +defineSymbol(math, main, mathord, "\u03b7", "\\eta", true); +defineSymbol(math, main, mathord, "\u03b8", "\\theta", true); +defineSymbol(math, main, mathord, "\u03b9", "\\iota", true); +defineSymbol(math, main, mathord, "\u03ba", "\\kappa", true); +defineSymbol(math, main, mathord, "\u03bb", "\\lambda", true); +defineSymbol(math, main, mathord, "\u03bc", "\\mu", true); +defineSymbol(math, main, mathord, "\u03bd", "\\nu", true); +defineSymbol(math, main, mathord, "\u03be", "\\xi", true); +defineSymbol(math, main, mathord, "\u03bf", "\\omicron", true); +defineSymbol(math, main, mathord, "\u03c0", "\\pi", true); +defineSymbol(math, main, mathord, "\u03c1", "\\rho", true); +defineSymbol(math, main, mathord, "\u03c3", "\\sigma", true); +defineSymbol(math, main, mathord, "\u03c4", "\\tau", true); +defineSymbol(math, main, mathord, "\u03c5", "\\upsilon", true); +defineSymbol(math, main, mathord, "\u03d5", "\\phi", true); +defineSymbol(math, main, mathord, "\u03c7", "\\chi", true); +defineSymbol(math, main, mathord, "\u03c8", "\\psi", true); +defineSymbol(math, main, mathord, "\u03c9", "\\omega", true); +defineSymbol(math, main, mathord, "\u03b5", "\\varepsilon", true); +defineSymbol(math, main, mathord, "\u03d1", "\\vartheta", true); +defineSymbol(math, main, mathord, "\u03d6", "\\varpi", true); +defineSymbol(math, main, mathord, "\u03f1", "\\varrho", true); +defineSymbol(math, main, mathord, "\u03c2", "\\varsigma", true); +defineSymbol(math, main, mathord, "\u03c6", "\\varphi", true); +defineSymbol(math, main, bin, "\u2217", "*", true); +defineSymbol(math, main, bin, "+", "+"); +defineSymbol(math, main, bin, "\u2212", "-", true); +defineSymbol(math, main, bin, "\u22c5", "\\cdot", true); +defineSymbol(math, main, bin, "\u2218", "\\circ", true); +defineSymbol(math, main, bin, "\u00f7", "\\div", true); +defineSymbol(math, main, bin, "\u00b1", "\\pm", true); +defineSymbol(math, main, bin, "\u00d7", "\\times", true); +defineSymbol(math, main, bin, "\u2229", "\\cap", true); +defineSymbol(math, main, bin, "\u222a", "\\cup", true); +defineSymbol(math, main, bin, "\u2216", "\\setminus", true); +defineSymbol(math, main, bin, "\u2227", "\\land"); +defineSymbol(math, main, bin, "\u2228", "\\lor"); +defineSymbol(math, main, bin, "\u2227", "\\wedge", true); +defineSymbol(math, main, bin, "\u2228", "\\vee", true); +defineSymbol(math, main, textord, "\u221a", "\\surd"); +defineSymbol(math, main, open, "\u27e8", "\\langle", true); +defineSymbol(math, main, open, "\u2223", "\\lvert"); +defineSymbol(math, main, open, "\u2225", "\\lVert"); +defineSymbol(math, main, close, "?", "?"); +defineSymbol(math, main, close, "!", "!"); +defineSymbol(math, main, close, "\u27e9", "\\rangle", true); +defineSymbol(math, main, close, "\u2223", "\\rvert"); +defineSymbol(math, main, close, "\u2225", "\\rVert"); +defineSymbol(math, main, rel, "=", "="); +defineSymbol(math, main, rel, ":", ":"); +defineSymbol(math, main, rel, "\u2248", "\\approx", true); +defineSymbol(math, main, rel, "\u2245", "\\cong", true); +defineSymbol(math, main, rel, "\u2265", "\\ge"); +defineSymbol(math, main, rel, "\u2265", "\\geq", true); +defineSymbol(math, main, rel, "\u2190", "\\gets"); +defineSymbol(math, main, rel, ">", "\\gt", true); +defineSymbol(math, main, rel, "\u2208", "\\in", true); +defineSymbol(math, main, rel, "\ue020", "\\@not"); +defineSymbol(math, main, rel, "\u2282", "\\subset", true); +defineSymbol(math, main, rel, "\u2283", "\\supset", true); +defineSymbol(math, main, rel, "\u2286", "\\subseteq", true); +defineSymbol(math, main, rel, "\u2287", "\\supseteq", true); +defineSymbol(math, ams, rel, "\u2288", "\\nsubseteq", true); +defineSymbol(math, ams, rel, "\u2289", "\\nsupseteq", true); +defineSymbol(math, main, rel, "\u22a8", "\\models"); +defineSymbol(math, main, rel, "\u2190", "\\leftarrow", true); +defineSymbol(math, main, rel, "\u2264", "\\le"); +defineSymbol(math, main, rel, "\u2264", "\\leq", true); +defineSymbol(math, main, rel, "<", "\\lt", true); +defineSymbol(math, main, rel, "\u2192", "\\rightarrow", true); +defineSymbol(math, main, rel, "\u2192", "\\to"); +defineSymbol(math, ams, rel, "\u2271", "\\ngeq", true); +defineSymbol(math, ams, rel, "\u2270", "\\nleq", true); +defineSymbol(math, main, spacing, "\u00a0", "\\ "); +defineSymbol(math, main, spacing, "\u00a0", "\\space"); // Ref: LaTeX Source 2e: \DeclareRobustCommand{\nobreakspace}{% + +defineSymbol(math, main, spacing, "\u00a0", "\\nobreakspace"); +defineSymbol(text, main, spacing, "\u00a0", "\\ "); +defineSymbol(text, main, spacing, "\u00a0", " "); +defineSymbol(text, main, spacing, "\u00a0", "\\space"); +defineSymbol(text, main, spacing, "\u00a0", "\\nobreakspace"); +defineSymbol(math, main, spacing, null, "\\nobreak"); +defineSymbol(math, main, spacing, null, "\\allowbreak"); +defineSymbol(math, main, punct, ",", ","); +defineSymbol(math, main, punct, ";", ";"); +defineSymbol(math, ams, bin, "\u22bc", "\\barwedge", true); +defineSymbol(math, ams, bin, "\u22bb", "\\veebar", true); +defineSymbol(math, main, bin, "\u2299", "\\odot", true); +defineSymbol(math, main, bin, "\u2295", "\\oplus", true); +defineSymbol(math, main, bin, "\u2297", "\\otimes", true); +defineSymbol(math, main, textord, "\u2202", "\\partial", true); +defineSymbol(math, main, bin, "\u2298", "\\oslash", true); +defineSymbol(math, ams, bin, "\u229a", "\\circledcirc", true); +defineSymbol(math, ams, bin, "\u22a1", "\\boxdot", true); +defineSymbol(math, main, bin, "\u25b3", "\\bigtriangleup"); +defineSymbol(math, main, bin, "\u25bd", "\\bigtriangledown"); +defineSymbol(math, main, bin, "\u2020", "\\dagger"); +defineSymbol(math, main, bin, "\u22c4", "\\diamond"); +defineSymbol(math, main, bin, "\u22c6", "\\star"); +defineSymbol(math, main, bin, "\u25c3", "\\triangleleft"); +defineSymbol(math, main, bin, "\u25b9", "\\triangleright"); +defineSymbol(math, main, open, "{", "\\{"); +defineSymbol(text, main, textord, "{", "\\{"); +defineSymbol(text, main, textord, "{", "\\textbraceleft"); +defineSymbol(math, main, close, "}", "\\}"); +defineSymbol(text, main, textord, "}", "\\}"); +defineSymbol(text, main, textord, "}", "\\textbraceright"); +defineSymbol(math, main, open, "{", "\\lbrace"); +defineSymbol(math, main, close, "}", "\\rbrace"); +defineSymbol(math, main, open, "[", "\\lbrack", true); +defineSymbol(text, main, textord, "[", "\\lbrack", true); +defineSymbol(math, main, close, "]", "\\rbrack", true); +defineSymbol(text, main, textord, "]", "\\rbrack", true); +defineSymbol(math, main, open, "(", "\\lparen", true); +defineSymbol(math, main, close, ")", "\\rparen", true); +defineSymbol(text, main, textord, "<", "\\textless", true); // in T1 fontenc + +defineSymbol(text, main, textord, ">", "\\textgreater", true); // in T1 fontenc + +defineSymbol(math, main, open, "\u230a", "\\lfloor", true); +defineSymbol(math, main, close, "\u230b", "\\rfloor", true); +defineSymbol(math, main, open, "\u2308", "\\lceil", true); +defineSymbol(math, main, close, "\u2309", "\\rceil", true); +defineSymbol(math, main, textord, "\\", "\\backslash"); +defineSymbol(math, main, textord, "\u2223", "|"); +defineSymbol(math, main, textord, "\u2223", "\\vert"); +defineSymbol(text, main, textord, "|", "\\textbar", true); // in T1 fontenc + +defineSymbol(math, main, textord, "\u2225", "\\|"); +defineSymbol(math, main, textord, "\u2225", "\\Vert"); +defineSymbol(text, main, textord, "\u2225", "\\textbardbl"); +defineSymbol(text, main, textord, "~", "\\textasciitilde"); +defineSymbol(text, main, textord, "\\", "\\textbackslash"); +defineSymbol(text, main, textord, "^", "\\textasciicircum"); +defineSymbol(math, main, rel, "\u2191", "\\uparrow", true); +defineSymbol(math, main, rel, "\u21d1", "\\Uparrow", true); +defineSymbol(math, main, rel, "\u2193", "\\downarrow", true); +defineSymbol(math, main, rel, "\u21d3", "\\Downarrow", true); +defineSymbol(math, main, rel, "\u2195", "\\updownarrow", true); +defineSymbol(math, main, rel, "\u21d5", "\\Updownarrow", true); +defineSymbol(math, main, op, "\u2210", "\\coprod"); +defineSymbol(math, main, op, "\u22c1", "\\bigvee"); +defineSymbol(math, main, op, "\u22c0", "\\bigwedge"); +defineSymbol(math, main, op, "\u2a04", "\\biguplus"); +defineSymbol(math, main, op, "\u22c2", "\\bigcap"); +defineSymbol(math, main, op, "\u22c3", "\\bigcup"); +defineSymbol(math, main, op, "\u222b", "\\int"); +defineSymbol(math, main, op, "\u222b", "\\intop"); +defineSymbol(math, main, op, "\u222c", "\\iint"); +defineSymbol(math, main, op, "\u222d", "\\iiint"); +defineSymbol(math, main, op, "\u220f", "\\prod"); +defineSymbol(math, main, op, "\u2211", "\\sum"); +defineSymbol(math, main, op, "\u2a02", "\\bigotimes"); +defineSymbol(math, main, op, "\u2a01", "\\bigoplus"); +defineSymbol(math, main, op, "\u2a00", "\\bigodot"); +defineSymbol(math, main, op, "\u222e", "\\oint"); +defineSymbol(math, main, op, "\u222f", "\\oiint"); +defineSymbol(math, main, op, "\u2230", "\\oiiint"); +defineSymbol(math, main, op, "\u2a06", "\\bigsqcup"); +defineSymbol(math, main, op, "\u222b", "\\smallint"); +defineSymbol(text, main, inner, "\u2026", "\\textellipsis"); +defineSymbol(math, main, inner, "\u2026", "\\mathellipsis"); +defineSymbol(text, main, inner, "\u2026", "\\ldots", true); +defineSymbol(math, main, inner, "\u2026", "\\ldots", true); +defineSymbol(math, main, inner, "\u22ef", "\\@cdots", true); +defineSymbol(math, main, inner, "\u22f1", "\\ddots", true); +defineSymbol(math, main, textord, "\u22ee", "\\varvdots"); // \vdots is a macro + +defineSymbol(math, main, accent, "\u02ca", "\\acute"); +defineSymbol(math, main, accent, "\u02cb", "\\grave"); +defineSymbol(math, main, accent, "\u00a8", "\\ddot"); +defineSymbol(math, main, accent, "\u007e", "\\tilde"); +defineSymbol(math, main, accent, "\u02c9", "\\bar"); +defineSymbol(math, main, accent, "\u02d8", "\\breve"); +defineSymbol(math, main, accent, "\u02c7", "\\check"); +defineSymbol(math, main, accent, "\u005e", "\\hat"); +defineSymbol(math, main, accent, "\u20d7", "\\vec"); +defineSymbol(math, main, accent, "\u02d9", "\\dot"); +defineSymbol(math, main, accent, "\u02da", "\\mathring"); // \imath and \jmath should be invariant to \mathrm, \mathbf, etc., so use PUA + +defineSymbol(math, main, mathord, "\ue131", "\\@imath"); +defineSymbol(math, main, mathord, "\ue237", "\\@jmath"); +defineSymbol(math, main, textord, "\u0131", "\u0131"); +defineSymbol(math, main, textord, "\u0237", "\u0237"); +defineSymbol(text, main, textord, "\u0131", "\\i", true); +defineSymbol(text, main, textord, "\u0237", "\\j", true); +defineSymbol(text, main, textord, "\u00df", "\\ss", true); +defineSymbol(text, main, textord, "\u00e6", "\\ae", true); +defineSymbol(text, main, textord, "\u0153", "\\oe", true); +defineSymbol(text, main, textord, "\u00f8", "\\o", true); +defineSymbol(text, main, textord, "\u00c6", "\\AE", true); +defineSymbol(text, main, textord, "\u0152", "\\OE", true); +defineSymbol(text, main, textord, "\u00d8", "\\O", true); +defineSymbol(text, main, accent, "\u02ca", "\\'"); // acute + +defineSymbol(text, main, accent, "\u02cb", "\\`"); // grave + +defineSymbol(text, main, accent, "\u02c6", "\\^"); // circumflex + +defineSymbol(text, main, accent, "\u02dc", "\\~"); // tilde + +defineSymbol(text, main, accent, "\u02c9", "\\="); // macron + +defineSymbol(text, main, accent, "\u02d8", "\\u"); // breve + +defineSymbol(text, main, accent, "\u02d9", "\\."); // dot above + +defineSymbol(text, main, accent, "\u00b8", "\\c"); // cedilla + +defineSymbol(text, main, accent, "\u02da", "\\r"); // ring above + +defineSymbol(text, main, accent, "\u02c7", "\\v"); // caron + +defineSymbol(text, main, accent, "\u00a8", '\\"'); // diaresis + +defineSymbol(text, main, accent, "\u02dd", "\\H"); // double acute + +defineSymbol(text, main, accent, "\u25ef", "\\textcircled"); // \bigcirc glyph +// These ligatures are detected and created in Parser.js's `formLigatures`. + +var ligatures = { + "--": true, + "---": true, + "``": true, + "''": true +}; +defineSymbol(text, main, textord, "\u2013", "--", true); +defineSymbol(text, main, textord, "\u2013", "\\textendash"); +defineSymbol(text, main, textord, "\u2014", "---", true); +defineSymbol(text, main, textord, "\u2014", "\\textemdash"); +defineSymbol(text, main, textord, "\u2018", "`", true); +defineSymbol(text, main, textord, "\u2018", "\\textquoteleft"); +defineSymbol(text, main, textord, "\u2019", "'", true); +defineSymbol(text, main, textord, "\u2019", "\\textquoteright"); +defineSymbol(text, main, textord, "\u201c", "``", true); +defineSymbol(text, main, textord, "\u201c", "\\textquotedblleft"); +defineSymbol(text, main, textord, "\u201d", "''", true); +defineSymbol(text, main, textord, "\u201d", "\\textquotedblright"); // \degree from gensymb package + +defineSymbol(math, main, textord, "\u00b0", "\\degree", true); +defineSymbol(text, main, textord, "\u00b0", "\\degree"); // \textdegree from inputenc package + +defineSymbol(text, main, textord, "\u00b0", "\\textdegree", true); // TODO: In LaTeX, \pounds can generate a different character in text and math +// mode, but among our fonts, only Main-Regular defines this character "163". + +defineSymbol(math, main, textord, "\u00a3", "\\pounds"); +defineSymbol(math, main, textord, "\u00a3", "\\mathsterling", true); +defineSymbol(text, main, textord, "\u00a3", "\\pounds"); +defineSymbol(text, main, textord, "\u00a3", "\\textsterling", true); +defineSymbol(math, ams, textord, "\u2720", "\\maltese"); +defineSymbol(text, ams, textord, "\u2720", "\\maltese"); // There are lots of symbols which are the same, so we add them in afterwards. +// All of these are textords in math mode + +var mathTextSymbols = "0123456789/@.\""; + +for (var i = 0; i < mathTextSymbols.length; i++) { + var ch = mathTextSymbols.charAt(i); + defineSymbol(math, main, textord, ch, ch); +} // All of these are textords in text mode + + +var textSymbols = "0123456789!@*()-=+\";:?/.,"; + +for (var _i = 0; _i < textSymbols.length; _i++) { + var _ch = textSymbols.charAt(_i); + + defineSymbol(text, main, textord, _ch, _ch); +} // All of these are textords in text mode, and mathords in math mode + + +var letters = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"; + +for (var _i2 = 0; _i2 < letters.length; _i2++) { + var _ch2 = letters.charAt(_i2); + + defineSymbol(math, main, mathord, _ch2, _ch2); + defineSymbol(text, main, textord, _ch2, _ch2); +} // Blackboard bold and script letters in Unicode range + + +defineSymbol(math, ams, textord, "C", "\u2102"); // blackboard bold + +defineSymbol(text, ams, textord, "C", "\u2102"); +defineSymbol(math, ams, textord, "H", "\u210D"); +defineSymbol(text, ams, textord, "H", "\u210D"); +defineSymbol(math, ams, textord, "N", "\u2115"); +defineSymbol(text, ams, textord, "N", "\u2115"); +defineSymbol(math, ams, textord, "P", "\u2119"); +defineSymbol(text, ams, textord, "P", "\u2119"); +defineSymbol(math, ams, textord, "Q", "\u211A"); +defineSymbol(text, ams, textord, "Q", "\u211A"); +defineSymbol(math, ams, textord, "R", "\u211D"); +defineSymbol(text, ams, textord, "R", "\u211D"); +defineSymbol(math, ams, textord, "Z", "\u2124"); +defineSymbol(text, ams, textord, "Z", "\u2124"); +defineSymbol(math, main, mathord, "h", "\u210E"); // italic h, Planck constant + +defineSymbol(text, main, mathord, "h", "\u210E"); // The next loop loads wide (surrogate pair) characters. +// We support some letters in the Unicode range U+1D400 to U+1D7FF, +// Mathematical Alphanumeric Symbols. +// Some editors do not deal well with wide characters. So don't write the +// string into this file. Instead, create the string from the surrogate pair. + +var wideChar = ""; + +for (var _i3 = 0; _i3 < letters.length; _i3++) { + var _ch3 = letters.charAt(_i3); // The hex numbers in the next line are a surrogate pair. + // 0xD835 is the high surrogate for all letters in the range we support. + // 0xDC00 is the low surrogate for bold A. + + + wideChar = String.fromCharCode(0xD835, 0xDC00 + _i3); // A-Z a-z bold + + defineSymbol(math, main, mathord, _ch3, wideChar); + defineSymbol(text, main, textord, _ch3, wideChar); + wideChar = String.fromCharCode(0xD835, 0xDC34 + _i3); // A-Z a-z italic + + defineSymbol(math, main, mathord, _ch3, wideChar); + defineSymbol(text, main, textord, _ch3, wideChar); + wideChar = String.fromCharCode(0xD835, 0xDC68 + _i3); // A-Z a-z bold italic + + defineSymbol(math, main, mathord, _ch3, wideChar); + defineSymbol(text, main, textord, _ch3, wideChar); + wideChar = String.fromCharCode(0xD835, 0xDD04 + _i3); // A-Z a-z Fractur + + defineSymbol(math, main, mathord, _ch3, wideChar); + defineSymbol(text, main, textord, _ch3, wideChar); + wideChar = String.fromCharCode(0xD835, 0xDD6C + _i3); // A-Z a-z bold Fractur + + defineSymbol(math, main, mathord, _ch3, wideChar); + defineSymbol(text, main, textord, _ch3, wideChar); + wideChar = String.fromCharCode(0xD835, 0xDDA0 + _i3); // A-Z a-z sans-serif + + defineSymbol(math, main, mathord, _ch3, wideChar); + defineSymbol(text, main, textord, _ch3, wideChar); + wideChar = String.fromCharCode(0xD835, 0xDDD4 + _i3); // A-Z a-z sans bold + + defineSymbol(math, main, mathord, _ch3, wideChar); + defineSymbol(text, main, textord, _ch3, wideChar); + wideChar = String.fromCharCode(0xD835, 0xDE08 + _i3); // A-Z a-z sans italic + + defineSymbol(math, main, mathord, _ch3, wideChar); + defineSymbol(text, main, textord, _ch3, wideChar); + wideChar = String.fromCharCode(0xD835, 0xDE70 + _i3); // A-Z a-z monospace + + defineSymbol(math, main, mathord, _ch3, wideChar); + defineSymbol(text, main, textord, _ch3, wideChar); + + if (_i3 < 26) { + // KaTeX fonts have only capital letters for blackboard bold and script. + // See exception for k below. + wideChar = String.fromCharCode(0xD835, 0xDD38 + _i3); // A-Z double struck + + defineSymbol(math, main, mathord, _ch3, wideChar); + defineSymbol(text, main, textord, _ch3, wideChar); + wideChar = String.fromCharCode(0xD835, 0xDC9C + _i3); // A-Z script + + defineSymbol(math, main, mathord, _ch3, wideChar); + defineSymbol(text, main, textord, _ch3, wideChar); + } // TODO: Add bold script when it is supported by a KaTeX font. + +} // "k" is the only double struck lower case letter in the KaTeX fonts. + + +wideChar = String.fromCharCode(0xD835, 0xDD5C); // k double struck + +defineSymbol(math, main, mathord, "k", wideChar); +defineSymbol(text, main, textord, "k", wideChar); // Next, some wide character numerals + +for (var _i4 = 0; _i4 < 10; _i4++) { + var _ch4 = _i4.toString(); + + wideChar = String.fromCharCode(0xD835, 0xDFCE + _i4); // 0-9 bold + + defineSymbol(math, main, mathord, _ch4, wideChar); + defineSymbol(text, main, textord, _ch4, wideChar); + wideChar = String.fromCharCode(0xD835, 0xDFE2 + _i4); // 0-9 sans serif + + defineSymbol(math, main, mathord, _ch4, wideChar); + defineSymbol(text, main, textord, _ch4, wideChar); + wideChar = String.fromCharCode(0xD835, 0xDFEC + _i4); // 0-9 bold sans + + defineSymbol(math, main, mathord, _ch4, wideChar); + defineSymbol(text, main, textord, _ch4, wideChar); + wideChar = String.fromCharCode(0xD835, 0xDFF6 + _i4); // 0-9 monospace + + defineSymbol(math, main, mathord, _ch4, wideChar); + defineSymbol(text, main, textord, _ch4, wideChar); +} // We add these Latin-1 letters as symbols for backwards-compatibility, +// but they are not actually in the font, nor are they supported by the +// Unicode accent mechanism, so they fall back to Times font and look ugly. +// TODO(edemaine): Fix this. + + +var extraLatin = "\u00d0\u00de\u00fe"; + +for (var _i5 = 0; _i5 < extraLatin.length; _i5++) { + var _ch5 = extraLatin.charAt(_i5); + + defineSymbol(math, main, mathord, _ch5, _ch5); + defineSymbol(text, main, textord, _ch5, _ch5); +} + +/** + * This file provides support for Unicode range U+1D400 to U+1D7FF, + * Mathematical Alphanumeric Symbols. + * + * Function wideCharacterFont takes a wide character as input and returns + * the font information necessary to render it properly. + */ +/** + * Data below is from https://www.unicode.org/charts/PDF/U1D400.pdf + * That document sorts characters into groups by font type, say bold or italic. + * + * In the arrays below, each subarray consists three elements: + * * The CSS class of that group when in math mode. + * * The CSS class of that group when in text mode. + * * The font name, so that KaTeX can get font metrics. + */ + +var wideLatinLetterData = [["mathbf", "textbf", "Main-Bold"], // A-Z bold upright +["mathbf", "textbf", "Main-Bold"], // a-z bold upright +["mathnormal", "textit", "Math-Italic"], // A-Z italic +["mathnormal", "textit", "Math-Italic"], // a-z italic +["boldsymbol", "boldsymbol", "Main-BoldItalic"], // A-Z bold italic +["boldsymbol", "boldsymbol", "Main-BoldItalic"], // a-z bold italic +// Map fancy A-Z letters to script, not calligraphic. +// This aligns with unicode-math and math fonts (except Cambria Math). +["mathscr", "textscr", "Script-Regular"], // A-Z script +["", "", ""], // a-z script. No font +["", "", ""], // A-Z bold script. No font +["", "", ""], // a-z bold script. No font +["mathfrak", "textfrak", "Fraktur-Regular"], // A-Z Fraktur +["mathfrak", "textfrak", "Fraktur-Regular"], // a-z Fraktur +["mathbb", "textbb", "AMS-Regular"], // A-Z double-struck +["mathbb", "textbb", "AMS-Regular"], // k double-struck +// Note that we are using a bold font, but font metrics for regular Fraktur. +["mathboldfrak", "textboldfrak", "Fraktur-Regular"], // A-Z bold Fraktur +["mathboldfrak", "textboldfrak", "Fraktur-Regular"], // a-z bold Fraktur +["mathsf", "textsf", "SansSerif-Regular"], // A-Z sans-serif +["mathsf", "textsf", "SansSerif-Regular"], // a-z sans-serif +["mathboldsf", "textboldsf", "SansSerif-Bold"], // A-Z bold sans-serif +["mathboldsf", "textboldsf", "SansSerif-Bold"], // a-z bold sans-serif +["mathitsf", "textitsf", "SansSerif-Italic"], // A-Z italic sans-serif +["mathitsf", "textitsf", "SansSerif-Italic"], // a-z italic sans-serif +["", "", ""], // A-Z bold italic sans. No font +["", "", ""], // a-z bold italic sans. No font +["mathtt", "texttt", "Typewriter-Regular"], // A-Z monospace +["mathtt", "texttt", "Typewriter-Regular"] // a-z monospace +]; +var wideNumeralData = [["mathbf", "textbf", "Main-Bold"], // 0-9 bold +["", "", ""], // 0-9 double-struck. No KaTeX font. +["mathsf", "textsf", "SansSerif-Regular"], // 0-9 sans-serif +["mathboldsf", "textboldsf", "SansSerif-Bold"], // 0-9 bold sans-serif +["mathtt", "texttt", "Typewriter-Regular"] // 0-9 monospace +]; +var wideCharacterFont = function wideCharacterFont(wideChar, mode) { + // IE doesn't support codePointAt(). So work with the surrogate pair. + var H = wideChar.charCodeAt(0); // high surrogate + + var L = wideChar.charCodeAt(1); // low surrogate + + var codePoint = (H - 0xD800) * 0x400 + (L - 0xDC00) + 0x10000; + var j = mode === "math" ? 0 : 1; // column index for CSS class. + + if (0x1D400 <= codePoint && codePoint < 0x1D6A4) { + // wideLatinLetterData contains exactly 26 chars on each row. + // So we can calculate the relevant row. No traverse necessary. + var i = Math.floor((codePoint - 0x1D400) / 26); + return [wideLatinLetterData[i][2], wideLatinLetterData[i][j]]; + } else if (0x1D7CE <= codePoint && codePoint <= 0x1D7FF) { + // Numerals, ten per row. + var _i = Math.floor((codePoint - 0x1D7CE) / 10); + + return [wideNumeralData[_i][2], wideNumeralData[_i][j]]; + } else if (codePoint === 0x1D6A5 || codePoint === 0x1D6A6) { + // dotless i or j + return [wideLatinLetterData[0][2], wideLatinLetterData[0][j]]; + } else if (0x1D6A6 < codePoint && codePoint < 0x1D7CE) { + // Greek letters. Not supported, yet. + return ["", ""]; + } else { + // We don't support any wide characters outside 1D400–1D7FF. + throw new ParseError("Unsupported character: " + wideChar); + } +}; + +/* eslint no-console:0 */ + +/** + * Looks up the given symbol in fontMetrics, after applying any symbol + * replacements defined in symbol.js + */ +var lookupSymbol = function lookupSymbol(value, // TODO(#963): Use a union type for this. +fontName, mode) { + // Replace the value with its replaced value from symbol.js + if (symbols[mode][value] && symbols[mode][value].replace) { + value = symbols[mode][value].replace; + } + + return { + value: value, + metrics: getCharacterMetrics(value, fontName, mode) + }; +}; +/** + * Makes a symbolNode after translation via the list of symbols in symbols.js. + * Correctly pulls out metrics for the character, and optionally takes a list of + * classes to be attached to the node. + * + * TODO: make argument order closer to makeSpan + * TODO: add a separate argument for math class (e.g. `mop`, `mbin`), which + * should if present come first in `classes`. + * TODO(#953): Make `options` mandatory and always pass it in. + */ + + +var makeSymbol = function makeSymbol(value, fontName, mode, options, classes) { + var lookup = lookupSymbol(value, fontName, mode); + var metrics = lookup.metrics; + value = lookup.value; + var symbolNode; + + if (metrics) { + var italic = metrics.italic; + + if (mode === "text" || options && options.font === "mathit") { + italic = 0; + } + + symbolNode = new SymbolNode(value, metrics.height, metrics.depth, italic, metrics.skew, metrics.width, classes); + } else { + // TODO(emily): Figure out a good way to only print this in development + typeof console !== "undefined" && console.warn("No character metrics " + ("for '" + value + "' in style '" + fontName + "' and mode '" + mode + "'")); + symbolNode = new SymbolNode(value, 0, 0, 0, 0, 0, classes); + } + + if (options) { + symbolNode.maxFontSize = options.sizeMultiplier; + + if (options.style.isTight()) { + symbolNode.classes.push("mtight"); + } + + var color = options.getColor(); + + if (color) { + symbolNode.style.color = color; + } + } + + return symbolNode; +}; +/** + * Makes a symbol in Main-Regular or AMS-Regular. + * Used for rel, bin, open, close, inner, and punct. + */ + + +var mathsym = function mathsym(value, mode, options, classes) { + if (classes === void 0) { + classes = []; + } + + // Decide what font to render the symbol in by its entry in the symbols + // table. + // Have a special case for when the value = \ because the \ is used as a + // textord in unsupported command errors but cannot be parsed as a regular + // text ordinal and is therefore not present as a symbol in the symbols + // table for text, as well as a special case for boldsymbol because it + // can be used for bold + and - + if (options.font === "boldsymbol" && lookupSymbol(value, "Main-Bold", mode).metrics) { + return makeSymbol(value, "Main-Bold", mode, options, classes.concat(["mathbf"])); + } else if (value === "\\" || symbols[mode][value].font === "main") { + return makeSymbol(value, "Main-Regular", mode, options, classes); + } else { + return makeSymbol(value, "AMS-Regular", mode, options, classes.concat(["amsrm"])); + } +}; +/** + * Determines which of the two font names (Main-Bold and Math-BoldItalic) and + * corresponding style tags (mathbf or boldsymbol) to use for font "boldsymbol", + * depending on the symbol. Use this function instead of fontMap for font + * "boldsymbol". + */ + + +var boldsymbol = function boldsymbol(value, mode, options, classes, type) { + if (type !== "textord" && lookupSymbol(value, "Math-BoldItalic", mode).metrics) { + return { + fontName: "Math-BoldItalic", + fontClass: "boldsymbol" + }; + } else { + // Some glyphs do not exist in Math-BoldItalic so we need to use + // Main-Bold instead. + return { + fontName: "Main-Bold", + fontClass: "mathbf" + }; + } +}; +/** + * Makes either a mathord or textord in the correct font and color. + */ + + +var makeOrd = function makeOrd(group, options, type) { + var mode = group.mode; + var text = group.text; + var classes = ["mord"]; // Math mode or Old font (i.e. \rm) + + var isFont = mode === "math" || mode === "text" && options.font; + var fontOrFamily = isFont ? options.font : options.fontFamily; + var wideFontName = ""; + var wideFontClass = ""; + + if (text.charCodeAt(0) === 0xD835) { + [wideFontName, wideFontClass] = wideCharacterFont(text, mode); + } + + if (wideFontName.length > 0) { + // surrogate pairs get special treatment + return makeSymbol(text, wideFontName, mode, options, classes.concat(wideFontClass)); + } else if (fontOrFamily) { + var fontName; + var fontClasses; + + if (fontOrFamily === "boldsymbol") { + var fontData = boldsymbol(text, mode, options, classes, type); + fontName = fontData.fontName; + fontClasses = [fontData.fontClass]; + } else if (isFont) { + fontName = fontMap[fontOrFamily].fontName; + fontClasses = [fontOrFamily]; + } else { + fontName = retrieveTextFontName(fontOrFamily, options.fontWeight, options.fontShape); + fontClasses = [fontOrFamily, options.fontWeight, options.fontShape]; + } + + if (lookupSymbol(text, fontName, mode).metrics) { + return makeSymbol(text, fontName, mode, options, classes.concat(fontClasses)); + } else if (ligatures.hasOwnProperty(text) && fontName.slice(0, 10) === "Typewriter") { + // Deconstruct ligatures in monospace fonts (\texttt, \tt). + var parts = []; + + for (var i = 0; i < text.length; i++) { + parts.push(makeSymbol(text[i], fontName, mode, options, classes.concat(fontClasses))); + } + + return makeFragment(parts); + } + } // Makes a symbol in the default font for mathords and textords. + + + if (type === "mathord") { + return makeSymbol(text, "Math-Italic", mode, options, classes.concat(["mathnormal"])); + } else if (type === "textord") { + var font = symbols[mode][text] && symbols[mode][text].font; + + if (font === "ams") { + var _fontName = retrieveTextFontName("amsrm", options.fontWeight, options.fontShape); + + return makeSymbol(text, _fontName, mode, options, classes.concat("amsrm", options.fontWeight, options.fontShape)); + } else if (font === "main" || !font) { + var _fontName2 = retrieveTextFontName("textrm", options.fontWeight, options.fontShape); + + return makeSymbol(text, _fontName2, mode, options, classes.concat(options.fontWeight, options.fontShape)); + } else { + // fonts added by plugins + var _fontName3 = retrieveTextFontName(font, options.fontWeight, options.fontShape); // We add font name as a css class + + + return makeSymbol(text, _fontName3, mode, options, classes.concat(_fontName3, options.fontWeight, options.fontShape)); + } + } else { + throw new Error("unexpected type: " + type + " in makeOrd"); + } +}; +/** + * Returns true if subsequent symbolNodes have the same classes, skew, maxFont, + * and styles. + */ + + +var canCombine = (prev, next) => { + if (createClass(prev.classes) !== createClass(next.classes) || prev.skew !== next.skew || prev.maxFontSize !== next.maxFontSize) { + return false; + } // If prev and next both are just "mbin"s or "mord"s we don't combine them + // so that the proper spacing can be preserved. + + + if (prev.classes.length === 1) { + var cls = prev.classes[0]; + + if (cls === "mbin" || cls === "mord") { + return false; + } + } + + for (var style in prev.style) { + if (prev.style.hasOwnProperty(style) && prev.style[style] !== next.style[style]) { + return false; + } + } + + for (var _style in next.style) { + if (next.style.hasOwnProperty(_style) && prev.style[_style] !== next.style[_style]) { + return false; + } + } + + return true; +}; +/** + * Combine consecutive domTree.symbolNodes into a single symbolNode. + * Note: this function mutates the argument. + */ + + +var tryCombineChars = chars => { + for (var i = 0; i < chars.length - 1; i++) { + var prev = chars[i]; + var next = chars[i + 1]; + + if (prev instanceof SymbolNode && next instanceof SymbolNode && canCombine(prev, next)) { + prev.text += next.text; + prev.height = Math.max(prev.height, next.height); + prev.depth = Math.max(prev.depth, next.depth); // Use the last character's italic correction since we use + // it to add padding to the right of the span created from + // the combined characters. + + prev.italic = next.italic; + chars.splice(i + 1, 1); + i--; + } + } + + return chars; +}; +/** + * Calculate the height, depth, and maxFontSize of an element based on its + * children. + */ + + +var sizeElementFromChildren = function sizeElementFromChildren(elem) { + var height = 0; + var depth = 0; + var maxFontSize = 0; + + for (var i = 0; i < elem.children.length; i++) { + var child = elem.children[i]; + + if (child.height > height) { + height = child.height; + } + + if (child.depth > depth) { + depth = child.depth; + } + + if (child.maxFontSize > maxFontSize) { + maxFontSize = child.maxFontSize; + } + } + + elem.height = height; + elem.depth = depth; + elem.maxFontSize = maxFontSize; +}; +/** + * Makes a span with the given list of classes, list of children, and options. + * + * TODO(#953): Ensure that `options` is always provided (currently some call + * sites don't pass it) and make the type below mandatory. + * TODO: add a separate argument for math class (e.g. `mop`, `mbin`), which + * should if present come first in `classes`. + */ + + +var makeSpan$2 = function makeSpan(classes, children, options, style) { + var span = new Span(classes, children, options, style); + sizeElementFromChildren(span); + return span; +}; // SVG one is simpler -- doesn't require height, depth, max-font setting. +// This is also a separate method for typesafety. + + +var makeSvgSpan = (classes, children, options, style) => new Span(classes, children, options, style); + +var makeLineSpan = function makeLineSpan(className, options, thickness) { + var line = makeSpan$2([className], [], options); + line.height = Math.max(thickness || options.fontMetrics().defaultRuleThickness, options.minRuleThickness); + line.style.borderBottomWidth = makeEm(line.height); + line.maxFontSize = 1.0; + return line; +}; +/** + * Makes an anchor with the given href, list of classes, list of children, + * and options. + */ + + +var makeAnchor = function makeAnchor(href, classes, children, options) { + var anchor = new Anchor(href, classes, children, options); + sizeElementFromChildren(anchor); + return anchor; +}; +/** + * Makes a document fragment with the given list of children. + */ + + +var makeFragment = function makeFragment(children) { + var fragment = new DocumentFragment(children); + sizeElementFromChildren(fragment); + return fragment; +}; +/** + * Wraps group in a span if it's a document fragment, allowing to apply classes + * and styles + */ + + +var wrapFragment = function wrapFragment(group, options) { + if (group instanceof DocumentFragment) { + return makeSpan$2([], [group], options); + } + + return group; +}; // These are exact object types to catch typos in the names of the optional fields. + + +// Computes the updated `children` list and the overall depth. +// +// This helper function for makeVList makes it easier to enforce type safety by +// allowing early exits (returns) in the logic. +var getVListChildrenAndDepth = function getVListChildrenAndDepth(params) { + if (params.positionType === "individualShift") { + var oldChildren = params.children; + var children = [oldChildren[0]]; // Add in kerns to the list of params.children to get each element to be + // shifted to the correct specified shift + + var _depth = -oldChildren[0].shift - oldChildren[0].elem.depth; + + var currPos = _depth; + + for (var i = 1; i < oldChildren.length; i++) { + var diff = -oldChildren[i].shift - currPos - oldChildren[i].elem.depth; + var size = diff - (oldChildren[i - 1].elem.height + oldChildren[i - 1].elem.depth); + currPos = currPos + diff; + children.push({ + type: "kern", + size + }); + children.push(oldChildren[i]); + } + + return { + children, + depth: _depth + }; + } + + var depth; + + if (params.positionType === "top") { + // We always start at the bottom, so calculate the bottom by adding up + // all the sizes + var bottom = params.positionData; + + for (var _i = 0; _i < params.children.length; _i++) { + var child = params.children[_i]; + bottom -= child.type === "kern" ? child.size : child.elem.height + child.elem.depth; + } + + depth = bottom; + } else if (params.positionType === "bottom") { + depth = -params.positionData; + } else { + var firstChild = params.children[0]; + + if (firstChild.type !== "elem") { + throw new Error('First child must have type "elem".'); + } + + if (params.positionType === "shift") { + depth = -firstChild.elem.depth - params.positionData; + } else if (params.positionType === "firstBaseline") { + depth = -firstChild.elem.depth; + } else { + throw new Error("Invalid positionType " + params.positionType + "."); + } + } + + return { + children: params.children, + depth + }; +}; +/** + * Makes a vertical list by stacking elements and kerns on top of each other. + * Allows for many different ways of specifying the positioning method. + * + * See VListParam documentation above. + */ + + +var makeVList = function makeVList(params, options) { + var { + children, + depth + } = getVListChildrenAndDepth(params); // Create a strut that is taller than any list item. The strut is added to + // each item, where it will determine the item's baseline. Since it has + // `overflow:hidden`, the strut's top edge will sit on the item's line box's + // top edge and the strut's bottom edge will sit on the item's baseline, + // with no additional line-height spacing. This allows the item baseline to + // be positioned precisely without worrying about font ascent and + // line-height. + + var pstrutSize = 0; + + for (var i = 0; i < children.length; i++) { + var child = children[i]; + + if (child.type === "elem") { + var elem = child.elem; + pstrutSize = Math.max(pstrutSize, elem.maxFontSize, elem.height); + } + } + + pstrutSize += 2; + var pstrut = makeSpan$2(["pstrut"], []); + pstrut.style.height = makeEm(pstrutSize); // Create a new list of actual children at the correct offsets + + var realChildren = []; + var minPos = depth; + var maxPos = depth; + var currPos = depth; + + for (var _i2 = 0; _i2 < children.length; _i2++) { + var _child = children[_i2]; + + if (_child.type === "kern") { + currPos += _child.size; + } else { + var _elem = _child.elem; + var classes = _child.wrapperClasses || []; + var style = _child.wrapperStyle || {}; + var childWrap = makeSpan$2(classes, [pstrut, _elem], undefined, style); + childWrap.style.top = makeEm(-pstrutSize - currPos - _elem.depth); + + if (_child.marginLeft) { + childWrap.style.marginLeft = _child.marginLeft; + } + + if (_child.marginRight) { + childWrap.style.marginRight = _child.marginRight; + } + + realChildren.push(childWrap); + currPos += _elem.height + _elem.depth; + } + + minPos = Math.min(minPos, currPos); + maxPos = Math.max(maxPos, currPos); + } // The vlist contents go in a table-cell with `vertical-align:bottom`. + // This cell's bottom edge will determine the containing table's baseline + // without overly expanding the containing line-box. + + + var vlist = makeSpan$2(["vlist"], realChildren); + vlist.style.height = makeEm(maxPos); // A second row is used if necessary to represent the vlist's depth. + + var rows; + + if (minPos < 0) { + // We will define depth in an empty span with display: table-cell. + // It should render with the height that we define. But Chrome, in + // contenteditable mode only, treats that span as if it contains some + // text content. And that min-height over-rides our desired height. + // So we put another empty span inside the depth strut span. + var emptySpan = makeSpan$2([], []); + var depthStrut = makeSpan$2(["vlist"], [emptySpan]); + depthStrut.style.height = makeEm(-minPos); // Safari wants the first row to have inline content; otherwise it + // puts the bottom of the *second* row on the baseline. + + var topStrut = makeSpan$2(["vlist-s"], [new SymbolNode("\u200b")]); + rows = [makeSpan$2(["vlist-r"], [vlist, topStrut]), makeSpan$2(["vlist-r"], [depthStrut])]; + } else { + rows = [makeSpan$2(["vlist-r"], [vlist])]; + } + + var vtable = makeSpan$2(["vlist-t"], rows); + + if (rows.length === 2) { + vtable.classes.push("vlist-t2"); + } + + vtable.height = maxPos; + vtable.depth = -minPos; + return vtable; +}; // Glue is a concept from TeX which is a flexible space between elements in +// either a vertical or horizontal list. In KaTeX, at least for now, it's +// static space between elements in a horizontal layout. + + +var makeGlue = (measurement, options) => { + // Make an empty span for the space + var rule = makeSpan$2(["mspace"], [], options); + var size = calculateSize(measurement, options); + rule.style.marginRight = makeEm(size); + return rule; +}; // Takes font options, and returns the appropriate fontLookup name + + +var retrieveTextFontName = function retrieveTextFontName(fontFamily, fontWeight, fontShape) { + var baseFontName = ""; + + switch (fontFamily) { + case "amsrm": + baseFontName = "AMS"; + break; + + case "textrm": + baseFontName = "Main"; + break; + + case "textsf": + baseFontName = "SansSerif"; + break; + + case "texttt": + baseFontName = "Typewriter"; + break; + + default: + baseFontName = fontFamily; + // use fonts added by a plugin + } + + var fontStylesName; + + if (fontWeight === "textbf" && fontShape === "textit") { + fontStylesName = "BoldItalic"; + } else if (fontWeight === "textbf") { + fontStylesName = "Bold"; + } else if (fontWeight === "textit") { + fontStylesName = "Italic"; + } else { + fontStylesName = "Regular"; + } + + return baseFontName + "-" + fontStylesName; +}; +/** + * Maps TeX font commands to objects containing: + * - variant: string used for "mathvariant" attribute in buildMathML.js + * - fontName: the "style" parameter to fontMetrics.getCharacterMetrics + */ +// A map between tex font commands an MathML mathvariant attribute values + + +var fontMap = { + // styles + "mathbf": { + variant: "bold", + fontName: "Main-Bold" + }, + "mathrm": { + variant: "normal", + fontName: "Main-Regular" + }, + "textit": { + variant: "italic", + fontName: "Main-Italic" + }, + "mathit": { + variant: "italic", + fontName: "Main-Italic" + }, + "mathnormal": { + variant: "italic", + fontName: "Math-Italic" + }, + // "boldsymbol" is missing because they require the use of multiple fonts: + // Math-BoldItalic and Main-Bold. This is handled by a special case in + // makeOrd which ends up calling boldsymbol. + // families + "mathbb": { + variant: "double-struck", + fontName: "AMS-Regular" + }, + "mathcal": { + variant: "script", + fontName: "Caligraphic-Regular" + }, + "mathfrak": { + variant: "fraktur", + fontName: "Fraktur-Regular" + }, + "mathscr": { + variant: "script", + fontName: "Script-Regular" + }, + "mathsf": { + variant: "sans-serif", + fontName: "SansSerif-Regular" + }, + "mathtt": { + variant: "monospace", + fontName: "Typewriter-Regular" + } +}; +var svgData = { + // path, width, height + vec: ["vec", 0.471, 0.714], + // values from the font glyph + oiintSize1: ["oiintSize1", 0.957, 0.499], + // oval to overlay the integrand + oiintSize2: ["oiintSize2", 1.472, 0.659], + oiiintSize1: ["oiiintSize1", 1.304, 0.499], + oiiintSize2: ["oiiintSize2", 1.98, 0.659] +}; + +var staticSvg = function staticSvg(value, options) { + // Create a span with inline SVG for the element. + var [pathName, width, height] = svgData[value]; + var path = new PathNode(pathName); + var svgNode = new SvgNode([path], { + "width": makeEm(width), + "height": makeEm(height), + // Override CSS rule `.katex svg { width: 100% }` + "style": "width:" + makeEm(width), + "viewBox": "0 0 " + 1000 * width + " " + 1000 * height, + "preserveAspectRatio": "xMinYMin" + }); + var span = makeSvgSpan(["overlay"], [svgNode], options); + span.height = height; + span.style.height = makeEm(height); + span.style.width = makeEm(width); + return span; +}; + +var buildCommon = { + fontMap, + makeSymbol, + mathsym, + makeSpan: makeSpan$2, + makeSvgSpan, + makeLineSpan, + makeAnchor, + makeFragment, + wrapFragment, + makeVList, + makeOrd, + makeGlue, + staticSvg, + svgData, + tryCombineChars +}; + +/** + * Describes spaces between different classes of atoms. + */ +var thinspace = { + number: 3, + unit: "mu" +}; +var mediumspace = { + number: 4, + unit: "mu" +}; +var thickspace = { + number: 5, + unit: "mu" +}; // Making the type below exact with all optional fields doesn't work due to +// - https://github.com/facebook/flow/issues/4582 +// - https://github.com/facebook/flow/issues/5688 +// However, since *all* fields are optional, $Shape<> works as suggested in 5688 +// above. + +// Spacing relationships for display and text styles +var spacings = { + mord: { + mop: thinspace, + mbin: mediumspace, + mrel: thickspace, + minner: thinspace + }, + mop: { + mord: thinspace, + mop: thinspace, + mrel: thickspace, + minner: thinspace + }, + mbin: { + mord: mediumspace, + mop: mediumspace, + mopen: mediumspace, + minner: mediumspace + }, + mrel: { + mord: thickspace, + mop: thickspace, + mopen: thickspace, + minner: thickspace + }, + mopen: {}, + mclose: { + mop: thinspace, + mbin: mediumspace, + mrel: thickspace, + minner: thinspace + }, + mpunct: { + mord: thinspace, + mop: thinspace, + mrel: thickspace, + mopen: thinspace, + mclose: thinspace, + mpunct: thinspace, + minner: thinspace + }, + minner: { + mord: thinspace, + mop: thinspace, + mbin: mediumspace, + mrel: thickspace, + mopen: thinspace, + mpunct: thinspace, + minner: thinspace + } +}; // Spacing relationships for script and scriptscript styles + +var tightSpacings = { + mord: { + mop: thinspace + }, + mop: { + mord: thinspace, + mop: thinspace + }, + mbin: {}, + mrel: {}, + mopen: {}, + mclose: { + mop: thinspace + }, + mpunct: {}, + minner: { + mop: thinspace + } +}; + +/** Context provided to function handlers for error messages. */ +// Note: reverse the order of the return type union will cause a flow error. +// See https://github.com/facebook/flow/issues/3663. +// More general version of `HtmlBuilder` for nodes (e.g. \sum, accent types) +// whose presence impacts super/subscripting. In this case, ParseNode<"supsub"> +// delegates its HTML building to the HtmlBuilder corresponding to these nodes. + +/** + * Final function spec for use at parse time. + * This is almost identical to `FunctionPropSpec`, except it + * 1. includes the function handler, and + * 2. requires all arguments except argTypes. + * It is generated by `defineFunction()` below. + */ + +/** + * All registered functions. + * `functions.js` just exports this same dictionary again and makes it public. + * `Parser.js` requires this dictionary. + */ +var _functions = {}; +/** + * All HTML builders. Should be only used in the `define*` and the `build*ML` + * functions. + */ + +var _htmlGroupBuilders = {}; +/** + * All MathML builders. Should be only used in the `define*` and the `build*ML` + * functions. + */ + +var _mathmlGroupBuilders = {}; +function defineFunction(_ref) { + var { + type, + names, + props, + handler, + htmlBuilder, + mathmlBuilder + } = _ref; + // Set default values of functions + var data = { + type, + numArgs: props.numArgs, + argTypes: props.argTypes, + allowedInArgument: !!props.allowedInArgument, + allowedInText: !!props.allowedInText, + allowedInMath: props.allowedInMath === undefined ? true : props.allowedInMath, + numOptionalArgs: props.numOptionalArgs || 0, + infix: !!props.infix, + primitive: !!props.primitive, + handler: handler + }; + + for (var i = 0; i < names.length; ++i) { + _functions[names[i]] = data; + } + + if (type) { + if (htmlBuilder) { + _htmlGroupBuilders[type] = htmlBuilder; + } + + if (mathmlBuilder) { + _mathmlGroupBuilders[type] = mathmlBuilder; + } + } +} +/** + * Use this to register only the HTML and MathML builders for a function (e.g. + * if the function's ParseNode is generated in Parser.js rather than via a + * stand-alone handler provided to `defineFunction`). + */ + +function defineFunctionBuilders(_ref2) { + var { + type, + htmlBuilder, + mathmlBuilder + } = _ref2; + defineFunction({ + type, + names: [], + props: { + numArgs: 0 + }, + + handler() { + throw new Error('Should never be called.'); + }, + + htmlBuilder, + mathmlBuilder + }); +} +var normalizeArgument = function normalizeArgument(arg) { + return arg.type === "ordgroup" && arg.body.length === 1 ? arg.body[0] : arg; +}; // Since the corresponding buildHTML/buildMathML function expects a +// list of elements, we normalize for different kinds of arguments + +var ordargument = function ordargument(arg) { + return arg.type === "ordgroup" ? arg.body : [arg]; +}; + +/** + * This file does the main work of building a domTree structure from a parse + * tree. The entry point is the `buildHTML` function, which takes a parse tree. + * Then, the buildExpression, buildGroup, and various groupBuilders functions + * are called, to produce a final HTML tree. + */ +var makeSpan$1 = buildCommon.makeSpan; // Binary atoms (first class `mbin`) change into ordinary atoms (`mord`) +// depending on their surroundings. See TeXbook pg. 442-446, Rules 5 and 6, +// and the text before Rule 19. + +var binLeftCanceller = ["leftmost", "mbin", "mopen", "mrel", "mop", "mpunct"]; +var binRightCanceller = ["rightmost", "mrel", "mclose", "mpunct"]; +var styleMap$1 = { + "display": Style$1.DISPLAY, + "text": Style$1.TEXT, + "script": Style$1.SCRIPT, + "scriptscript": Style$1.SCRIPTSCRIPT +}; +var DomEnum = { + mord: "mord", + mop: "mop", + mbin: "mbin", + mrel: "mrel", + mopen: "mopen", + mclose: "mclose", + mpunct: "mpunct", + minner: "minner" +}; + +/** + * Take a list of nodes, build them in order, and return a list of the built + * nodes. documentFragments are flattened into their contents, so the + * returned list contains no fragments. `isRealGroup` is true if `expression` + * is a real group (no atoms will be added on either side), as opposed to + * a partial group (e.g. one created by \color). `surrounding` is an array + * consisting type of nodes that will be added to the left and right. + */ +var buildExpression$1 = function buildExpression(expression, options, isRealGroup, surrounding) { + if (surrounding === void 0) { + surrounding = [null, null]; + } + + // Parse expressions into `groups`. + var groups = []; + + for (var i = 0; i < expression.length; i++) { + var output = buildGroup$1(expression[i], options); + + if (output instanceof DocumentFragment) { + var children = output.children; + groups.push(...children); + } else { + groups.push(output); + } + } // Combine consecutive domTree.symbolNodes into a single symbolNode. + + + buildCommon.tryCombineChars(groups); // If `expression` is a partial group, let the parent handle spacings + // to avoid processing groups multiple times. + + if (!isRealGroup) { + return groups; + } + + var glueOptions = options; + + if (expression.length === 1) { + var node = expression[0]; + + if (node.type === "sizing") { + glueOptions = options.havingSize(node.size); + } else if (node.type === "styling") { + glueOptions = options.havingStyle(styleMap$1[node.style]); + } + } // Dummy spans for determining spacings between surrounding atoms. + // If `expression` has no atoms on the left or right, class "leftmost" + // or "rightmost", respectively, is used to indicate it. + + + var dummyPrev = makeSpan$1([surrounding[0] || "leftmost"], [], options); + var dummyNext = makeSpan$1([surrounding[1] || "rightmost"], [], options); // TODO: These code assumes that a node's math class is the first element + // of its `classes` array. A later cleanup should ensure this, for + // instance by changing the signature of `makeSpan`. + // Before determining what spaces to insert, perform bin cancellation. + // Binary operators change to ordinary symbols in some contexts. + + var isRoot = isRealGroup === "root"; + traverseNonSpaceNodes(groups, (node, prev) => { + var prevType = prev.classes[0]; + var type = node.classes[0]; + + if (prevType === "mbin" && utils.contains(binRightCanceller, type)) { + prev.classes[0] = "mord"; + } else if (type === "mbin" && utils.contains(binLeftCanceller, prevType)) { + node.classes[0] = "mord"; + } + }, { + node: dummyPrev + }, dummyNext, isRoot); + traverseNonSpaceNodes(groups, (node, prev) => { + var prevType = getTypeOfDomTree(prev); + var type = getTypeOfDomTree(node); // 'mtight' indicates that the node is script or scriptscript style. + + var space = prevType && type ? node.hasClass("mtight") ? tightSpacings[prevType][type] : spacings[prevType][type] : null; + + if (space) { + // Insert glue (spacing) after the `prev`. + return buildCommon.makeGlue(space, glueOptions); + } + }, { + node: dummyPrev + }, dummyNext, isRoot); + return groups; +}; // Depth-first traverse non-space `nodes`, calling `callback` with the current and +// previous node as arguments, optionally returning a node to insert after the +// previous node. `prev` is an object with the previous node and `insertAfter` +// function to insert after it. `next` is a node that will be added to the right. +// Used for bin cancellation and inserting spacings. + +var traverseNonSpaceNodes = function traverseNonSpaceNodes(nodes, callback, prev, next, isRoot) { + if (next) { + // temporarily append the right node, if exists + nodes.push(next); + } + + var i = 0; + + for (; i < nodes.length; i++) { + var node = nodes[i]; + var partialGroup = checkPartialGroup(node); + + if (partialGroup) { + // Recursive DFS + // $FlowFixMe: make nodes a $ReadOnlyArray by returning a new array + traverseNonSpaceNodes(partialGroup.children, callback, prev, null, isRoot); + continue; + } // Ignore explicit spaces (e.g., \;, \,) when determining what implicit + // spacing should go between atoms of different classes + + + var nonspace = !node.hasClass("mspace"); + + if (nonspace) { + var result = callback(node, prev.node); + + if (result) { + if (prev.insertAfter) { + prev.insertAfter(result); + } else { + // insert at front + nodes.unshift(result); + i++; + } + } + } + + if (nonspace) { + prev.node = node; + } else if (isRoot && node.hasClass("newline")) { + prev.node = makeSpan$1(["leftmost"]); // treat like beginning of line + } + + prev.insertAfter = (index => n => { + nodes.splice(index + 1, 0, n); + i++; + })(i); + } + + if (next) { + nodes.pop(); + } +}; // Check if given node is a partial group, i.e., does not affect spacing around. + + +var checkPartialGroup = function checkPartialGroup(node) { + if (node instanceof DocumentFragment || node instanceof Anchor || node instanceof Span && node.hasClass("enclosing")) { + return node; + } + + return null; +}; // Return the outermost node of a domTree. + + +var getOutermostNode = function getOutermostNode(node, side) { + var partialGroup = checkPartialGroup(node); + + if (partialGroup) { + var children = partialGroup.children; + + if (children.length) { + if (side === "right") { + return getOutermostNode(children[children.length - 1], "right"); + } else if (side === "left") { + return getOutermostNode(children[0], "left"); + } + } + } + + return node; +}; // Return math atom class (mclass) of a domTree. +// If `side` is given, it will get the type of the outermost node at given side. + + +var getTypeOfDomTree = function getTypeOfDomTree(node, side) { + if (!node) { + return null; + } + + if (side) { + node = getOutermostNode(node, side); + } // This makes a lot of assumptions as to where the type of atom + // appears. We should do a better job of enforcing this. + + + return DomEnum[node.classes[0]] || null; +}; +var makeNullDelimiter = function makeNullDelimiter(options, classes) { + var moreClasses = ["nulldelimiter"].concat(options.baseSizingClasses()); + return makeSpan$1(classes.concat(moreClasses)); +}; +/** + * buildGroup is the function that takes a group and calls the correct groupType + * function for it. It also handles the interaction of size and style changes + * between parents and children. + */ + +var buildGroup$1 = function buildGroup(group, options, baseOptions) { + if (!group) { + return makeSpan$1(); + } + + if (_htmlGroupBuilders[group.type]) { + // Call the groupBuilders function + // $FlowFixMe + var groupNode = _htmlGroupBuilders[group.type](group, options); // If the size changed between the parent and the current group, account + // for that size difference. + + if (baseOptions && options.size !== baseOptions.size) { + groupNode = makeSpan$1(options.sizingClasses(baseOptions), [groupNode], options); + var multiplier = options.sizeMultiplier / baseOptions.sizeMultiplier; + groupNode.height *= multiplier; + groupNode.depth *= multiplier; + } + + return groupNode; + } else { + throw new ParseError("Got group of unknown type: '" + group.type + "'"); + } +}; +/** + * Combine an array of HTML DOM nodes (e.g., the output of `buildExpression`) + * into an unbreakable HTML node of class .base, with proper struts to + * guarantee correct vertical extent. `buildHTML` calls this repeatedly to + * make up the entire expression as a sequence of unbreakable units. + */ + +function buildHTMLUnbreakable(children, options) { + // Compute height and depth of this chunk. + var body = makeSpan$1(["base"], children, options); // Add strut, which ensures that the top of the HTML element falls at + // the height of the expression, and the bottom of the HTML element + // falls at the depth of the expression. + + var strut = makeSpan$1(["strut"]); + strut.style.height = makeEm(body.height + body.depth); + + if (body.depth) { + strut.style.verticalAlign = makeEm(-body.depth); + } + + body.children.unshift(strut); + return body; +} +/** + * Take an entire parse tree, and build it into an appropriate set of HTML + * nodes. + */ + + +function buildHTML(tree, options) { + // Strip off outer tag wrapper for processing below. + var tag = null; + + if (tree.length === 1 && tree[0].type === "tag") { + tag = tree[0].tag; + tree = tree[0].body; + } // Build the expression contained in the tree + + + var expression = buildExpression$1(tree, options, "root"); + var eqnNum; + + if (expression.length === 2 && expression[1].hasClass("tag")) { + // An environment with automatic equation numbers, e.g. {gather}. + eqnNum = expression.pop(); + } + + var children = []; // Create one base node for each chunk between potential line breaks. + // The TeXBook [p.173] says "A formula will be broken only after a + // relation symbol like $=$ or $<$ or $\rightarrow$, or after a binary + // operation symbol like $+$ or $-$ or $\times$, where the relation or + // binary operation is on the ``outer level'' of the formula (i.e., not + // enclosed in {...} and not part of an \over construction)." + + var parts = []; + + for (var i = 0; i < expression.length; i++) { + parts.push(expression[i]); + + if (expression[i].hasClass("mbin") || expression[i].hasClass("mrel") || expression[i].hasClass("allowbreak")) { + // Put any post-operator glue on same line as operator. + // Watch for \nobreak along the way, and stop at \newline. + var nobreak = false; + + while (i < expression.length - 1 && expression[i + 1].hasClass("mspace") && !expression[i + 1].hasClass("newline")) { + i++; + parts.push(expression[i]); + + if (expression[i].hasClass("nobreak")) { + nobreak = true; + } + } // Don't allow break if \nobreak among the post-operator glue. + + + if (!nobreak) { + children.push(buildHTMLUnbreakable(parts, options)); + parts = []; + } + } else if (expression[i].hasClass("newline")) { + // Write the line except the newline + parts.pop(); + + if (parts.length > 0) { + children.push(buildHTMLUnbreakable(parts, options)); + parts = []; + } // Put the newline at the top level + + + children.push(expression[i]); + } + } + + if (parts.length > 0) { + children.push(buildHTMLUnbreakable(parts, options)); + } // Now, if there was a tag, build it too and append it as a final child. + + + var tagChild; + + if (tag) { + tagChild = buildHTMLUnbreakable(buildExpression$1(tag, options, true)); + tagChild.classes = ["tag"]; + children.push(tagChild); + } else if (eqnNum) { + children.push(eqnNum); + } + + var htmlNode = makeSpan$1(["katex-html"], children); + htmlNode.setAttribute("aria-hidden", "true"); // Adjust the strut of the tag to be the maximum height of all children + // (the height of the enclosing htmlNode) for proper vertical alignment. + + if (tagChild) { + var strut = tagChild.children[0]; + strut.style.height = makeEm(htmlNode.height + htmlNode.depth); + + if (htmlNode.depth) { + strut.style.verticalAlign = makeEm(-htmlNode.depth); + } + } + + return htmlNode; +} + +/** + * These objects store data about MathML nodes. This is the MathML equivalent + * of the types in domTree.js. Since MathML handles its own rendering, and + * since we're mainly using MathML to improve accessibility, we don't manage + * any of the styling state that the plain DOM nodes do. + * + * The `toNode` and `toMarkup` functions work similarly to how they do in + * domTree.js, creating namespaced DOM nodes and HTML text markup respectively. + */ +function newDocumentFragment(children) { + return new DocumentFragment(children); +} +/** + * This node represents a general purpose MathML node of any type. The + * constructor requires the type of node to create (for example, `"mo"` or + * `"mspace"`, corresponding to `` and `` tags). + */ + +class MathNode { + constructor(type, children, classes) { + this.type = void 0; + this.attributes = void 0; + this.children = void 0; + this.classes = void 0; + this.type = type; + this.attributes = {}; + this.children = children || []; + this.classes = classes || []; + } + /** + * Sets an attribute on a MathML node. MathML depends on attributes to convey a + * semantic content, so this is used heavily. + */ + + + setAttribute(name, value) { + this.attributes[name] = value; + } + /** + * Gets an attribute on a MathML node. + */ + + + getAttribute(name) { + return this.attributes[name]; + } + /** + * Converts the math node into a MathML-namespaced DOM element. + */ + + + toNode() { + var node = document.createElementNS("http://www.w3.org/1998/Math/MathML", this.type); + + for (var attr in this.attributes) { + if (Object.prototype.hasOwnProperty.call(this.attributes, attr)) { + node.setAttribute(attr, this.attributes[attr]); + } + } + + if (this.classes.length > 0) { + node.className = createClass(this.classes); + } + + for (var i = 0; i < this.children.length; i++) { + node.appendChild(this.children[i].toNode()); + } + + return node; + } + /** + * Converts the math node into an HTML markup string. + */ + + + toMarkup() { + var markup = "<" + this.type; // Add the attributes + + for (var attr in this.attributes) { + if (Object.prototype.hasOwnProperty.call(this.attributes, attr)) { + markup += " " + attr + "=\""; + markup += utils.escape(this.attributes[attr]); + markup += "\""; + } + } + + if (this.classes.length > 0) { + markup += " class =\"" + utils.escape(createClass(this.classes)) + "\""; + } + + markup += ">"; + + for (var i = 0; i < this.children.length; i++) { + markup += this.children[i].toMarkup(); + } + + markup += ""; + return markup; + } + /** + * Converts the math node into a string, similar to innerText, but escaped. + */ + + + toText() { + return this.children.map(child => child.toText()).join(""); + } + +} +/** + * This node represents a piece of text. + */ + +class TextNode { + constructor(text) { + this.text = void 0; + this.text = text; + } + /** + * Converts the text node into a DOM text node. + */ + + + toNode() { + return document.createTextNode(this.text); + } + /** + * Converts the text node into escaped HTML markup + * (representing the text itself). + */ + + + toMarkup() { + return utils.escape(this.toText()); + } + /** + * Converts the text node into a string + * (representing the text itself). + */ + + + toText() { + return this.text; + } + +} +/** + * This node represents a space, but may render as or as text, + * depending on the width. + */ + +class SpaceNode { + /** + * Create a Space node with width given in CSS ems. + */ + constructor(width) { + this.width = void 0; + this.character = void 0; + this.width = width; // See https://www.w3.org/TR/2000/WD-MathML2-20000328/chapter6.html + // for a table of space-like characters. We use Unicode + // representations instead of &LongNames; as it's not clear how to + // make the latter via document.createTextNode. + + if (width >= 0.05555 && width <= 0.05556) { + this.character = "\u200a"; //   + } else if (width >= 0.1666 && width <= 0.1667) { + this.character = "\u2009"; //   + } else if (width >= 0.2222 && width <= 0.2223) { + this.character = "\u2005"; //   + } else if (width >= 0.2777 && width <= 0.2778) { + this.character = "\u2005\u200a"; //    + } else if (width >= -0.05556 && width <= -0.05555) { + this.character = "\u200a\u2063"; // ​ + } else if (width >= -0.1667 && width <= -0.1666) { + this.character = "\u2009\u2063"; // ​ + } else if (width >= -0.2223 && width <= -0.2222) { + this.character = "\u205f\u2063"; // ​ + } else if (width >= -0.2778 && width <= -0.2777) { + this.character = "\u2005\u2063"; // ​ + } else { + this.character = null; + } + } + /** + * Converts the math node into a MathML-namespaced DOM element. + */ + + + toNode() { + if (this.character) { + return document.createTextNode(this.character); + } else { + var node = document.createElementNS("http://www.w3.org/1998/Math/MathML", "mspace"); + node.setAttribute("width", makeEm(this.width)); + return node; + } + } + /** + * Converts the math node into an HTML markup string. + */ + + + toMarkup() { + if (this.character) { + return "" + this.character + ""; + } else { + return ""; + } + } + /** + * Converts the math node into a string, similar to innerText. + */ + + + toText() { + if (this.character) { + return this.character; + } else { + return " "; + } + } + +} + +var mathMLTree = { + MathNode, + TextNode, + SpaceNode, + newDocumentFragment +}; + +/** + * This file converts a parse tree into a corresponding MathML tree. The main + * entry point is the `buildMathML` function, which takes a parse tree from the + * parser. + */ + +/** + * Takes a symbol and converts it into a MathML text node after performing + * optional replacement from symbols.js. + */ +var makeText = function makeText(text, mode, options) { + if (symbols[mode][text] && symbols[mode][text].replace && text.charCodeAt(0) !== 0xD835 && !(ligatures.hasOwnProperty(text) && options && (options.fontFamily && options.fontFamily.slice(4, 6) === "tt" || options.font && options.font.slice(4, 6) === "tt"))) { + text = symbols[mode][text].replace; + } + + return new mathMLTree.TextNode(text); +}; +/** + * Wrap the given array of nodes in an node if needed, i.e., + * unless the array has length 1. Always returns a single node. + */ + +var makeRow = function makeRow(body) { + if (body.length === 1) { + return body[0]; + } else { + return new mathMLTree.MathNode("mrow", body); + } +}; +/** + * Returns the math variant as a string or null if none is required. + */ + +var getVariant = function getVariant(group, options) { + // Handle \text... font specifiers as best we can. + // MathML has a limited list of allowable mathvariant specifiers; see + // https://www.w3.org/TR/MathML3/chapter3.html#presm.commatt + if (options.fontFamily === "texttt") { + return "monospace"; + } else if (options.fontFamily === "textsf") { + if (options.fontShape === "textit" && options.fontWeight === "textbf") { + return "sans-serif-bold-italic"; + } else if (options.fontShape === "textit") { + return "sans-serif-italic"; + } else if (options.fontWeight === "textbf") { + return "bold-sans-serif"; + } else { + return "sans-serif"; + } + } else if (options.fontShape === "textit" && options.fontWeight === "textbf") { + return "bold-italic"; + } else if (options.fontShape === "textit") { + return "italic"; + } else if (options.fontWeight === "textbf") { + return "bold"; + } + + var font = options.font; + + if (!font || font === "mathnormal") { + return null; + } + + var mode = group.mode; + + if (font === "mathit") { + return "italic"; + } else if (font === "boldsymbol") { + return group.type === "textord" ? "bold" : "bold-italic"; + } else if (font === "mathbf") { + return "bold"; + } else if (font === "mathbb") { + return "double-struck"; + } else if (font === "mathfrak") { + return "fraktur"; + } else if (font === "mathscr" || font === "mathcal") { + // MathML makes no distinction between script and calligraphic + return "script"; + } else if (font === "mathsf") { + return "sans-serif"; + } else if (font === "mathtt") { + return "monospace"; + } + + var text = group.text; + + if (utils.contains(["\\imath", "\\jmath"], text)) { + return null; + } + + if (symbols[mode][text] && symbols[mode][text].replace) { + text = symbols[mode][text].replace; + } + + var fontName = buildCommon.fontMap[font].fontName; + + if (getCharacterMetrics(text, fontName, mode)) { + return buildCommon.fontMap[font].variant; + } + + return null; +}; +/** + * Takes a list of nodes, builds them, and returns a list of the generated + * MathML nodes. Also combine consecutive outputs into a single + * tag. + */ + +var buildExpression = function buildExpression(expression, options, isOrdgroup) { + if (expression.length === 1) { + var group = buildGroup(expression[0], options); + + if (isOrdgroup && group instanceof MathNode && group.type === "mo") { + // When TeX writers want to suppress spacing on an operator, + // they often put the operator by itself inside braces. + group.setAttribute("lspace", "0em"); + group.setAttribute("rspace", "0em"); + } + + return [group]; + } + + var groups = []; + var lastGroup; + + for (var i = 0; i < expression.length; i++) { + var _group = buildGroup(expression[i], options); + + if (_group instanceof MathNode && lastGroup instanceof MathNode) { + // Concatenate adjacent s + if (_group.type === 'mtext' && lastGroup.type === 'mtext' && _group.getAttribute('mathvariant') === lastGroup.getAttribute('mathvariant')) { + lastGroup.children.push(..._group.children); + continue; // Concatenate adjacent s + } else if (_group.type === 'mn' && lastGroup.type === 'mn') { + lastGroup.children.push(..._group.children); + continue; // Concatenate ... followed by . + } else if (_group.type === 'mi' && _group.children.length === 1 && lastGroup.type === 'mn') { + var child = _group.children[0]; + + if (child instanceof TextNode && child.text === '.') { + lastGroup.children.push(..._group.children); + continue; + } + } else if (lastGroup.type === 'mi' && lastGroup.children.length === 1) { + var lastChild = lastGroup.children[0]; + + if (lastChild instanceof TextNode && lastChild.text === '\u0338' && (_group.type === 'mo' || _group.type === 'mi' || _group.type === 'mn')) { + var _child = _group.children[0]; + + if (_child instanceof TextNode && _child.text.length > 0) { + // Overlay with combining character long solidus + _child.text = _child.text.slice(0, 1) + "\u0338" + _child.text.slice(1); + groups.pop(); + } + } + } + } + + groups.push(_group); + lastGroup = _group; + } + + return groups; +}; +/** + * Equivalent to buildExpression, but wraps the elements in an + * if there's more than one. Returns a single node instead of an array. + */ + +var buildExpressionRow = function buildExpressionRow(expression, options, isOrdgroup) { + return makeRow(buildExpression(expression, options, isOrdgroup)); +}; +/** + * Takes a group from the parser and calls the appropriate groupBuilders function + * on it to produce a MathML node. + */ + +var buildGroup = function buildGroup(group, options) { + if (!group) { + return new mathMLTree.MathNode("mrow"); + } + + if (_mathmlGroupBuilders[group.type]) { + // Call the groupBuilders function + // $FlowFixMe + var result = _mathmlGroupBuilders[group.type](group, options); // $FlowFixMe + + return result; + } else { + throw new ParseError("Got group of unknown type: '" + group.type + "'"); + } +}; +/** + * Takes a full parse tree and settings and builds a MathML representation of + * it. In particular, we put the elements from building the parse tree into a + * tag so we can also include that TeX source as an annotation. + * + * Note that we actually return a domTree element with a `` inside it so + * we can do appropriate styling. + */ + +function buildMathML(tree, texExpression, options, isDisplayMode, forMathmlOnly) { + var expression = buildExpression(tree, options); // TODO: Make a pass thru the MathML similar to buildHTML.traverseNonSpaceNodes + // and add spacing nodes. This is necessary only adjacent to math operators + // like \sin or \lim or to subsup elements that contain math operators. + // MathML takes care of the other spacing issues. + // Wrap up the expression in an mrow so it is presented in the semantics + // tag correctly, unless it's a single or . + + var wrapper; + + if (expression.length === 1 && expression[0] instanceof MathNode && utils.contains(["mrow", "mtable"], expression[0].type)) { + wrapper = expression[0]; + } else { + wrapper = new mathMLTree.MathNode("mrow", expression); + } // Build a TeX annotation of the source + + + var annotation = new mathMLTree.MathNode("annotation", [new mathMLTree.TextNode(texExpression)]); + annotation.setAttribute("encoding", "application/x-tex"); + var semantics = new mathMLTree.MathNode("semantics", [wrapper, annotation]); + var math = new mathMLTree.MathNode("math", [semantics]); + math.setAttribute("xmlns", "http://www.w3.org/1998/Math/MathML"); + + if (isDisplayMode) { + math.setAttribute("display", "block"); + } // You can't style nodes, so we wrap the node in a span. + // NOTE: The span class is not typed to have nodes as children, and + // we don't want to make the children type more generic since the children + // of span are expected to have more fields in `buildHtml` contexts. + + + var wrapperClass = forMathmlOnly ? "katex" : "katex-mathml"; // $FlowFixMe + + return buildCommon.makeSpan([wrapperClass], [math]); +} + +var optionsFromSettings = function optionsFromSettings(settings) { + return new Options({ + style: settings.displayMode ? Style$1.DISPLAY : Style$1.TEXT, + maxSize: settings.maxSize, + minRuleThickness: settings.minRuleThickness + }); +}; + +var displayWrap = function displayWrap(node, settings) { + if (settings.displayMode) { + var classes = ["katex-display"]; + + if (settings.leqno) { + classes.push("leqno"); + } + + if (settings.fleqn) { + classes.push("fleqn"); + } + + node = buildCommon.makeSpan(classes, [node]); + } + + return node; +}; + +var buildTree = function buildTree(tree, expression, settings) { + var options = optionsFromSettings(settings); + var katexNode; + + if (settings.output === "mathml") { + return buildMathML(tree, expression, options, settings.displayMode, true); + } else if (settings.output === "html") { + var htmlNode = buildHTML(tree, options); + katexNode = buildCommon.makeSpan(["katex"], [htmlNode]); + } else { + var mathMLNode = buildMathML(tree, expression, options, settings.displayMode, false); + + var _htmlNode = buildHTML(tree, options); + + katexNode = buildCommon.makeSpan(["katex"], [mathMLNode, _htmlNode]); + } + + return displayWrap(katexNode, settings); +}; +var buildHTMLTree = function buildHTMLTree(tree, expression, settings) { + var options = optionsFromSettings(settings); + var htmlNode = buildHTML(tree, options); + var katexNode = buildCommon.makeSpan(["katex"], [htmlNode]); + return displayWrap(katexNode, settings); +}; + +/** + * This file provides support to buildMathML.js and buildHTML.js + * for stretchy wide elements rendered from SVG files + * and other CSS trickery. + */ +var stretchyCodePoint = { + widehat: "^", + widecheck: "ˇ", + widetilde: "~", + utilde: "~", + overleftarrow: "\u2190", + underleftarrow: "\u2190", + xleftarrow: "\u2190", + overrightarrow: "\u2192", + underrightarrow: "\u2192", + xrightarrow: "\u2192", + underbrace: "\u23df", + overbrace: "\u23de", + overgroup: "\u23e0", + undergroup: "\u23e1", + overleftrightarrow: "\u2194", + underleftrightarrow: "\u2194", + xleftrightarrow: "\u2194", + Overrightarrow: "\u21d2", + xRightarrow: "\u21d2", + overleftharpoon: "\u21bc", + xleftharpoonup: "\u21bc", + overrightharpoon: "\u21c0", + xrightharpoonup: "\u21c0", + xLeftarrow: "\u21d0", + xLeftrightarrow: "\u21d4", + xhookleftarrow: "\u21a9", + xhookrightarrow: "\u21aa", + xmapsto: "\u21a6", + xrightharpoondown: "\u21c1", + xleftharpoondown: "\u21bd", + xrightleftharpoons: "\u21cc", + xleftrightharpoons: "\u21cb", + xtwoheadleftarrow: "\u219e", + xtwoheadrightarrow: "\u21a0", + xlongequal: "=", + xtofrom: "\u21c4", + xrightleftarrows: "\u21c4", + xrightequilibrium: "\u21cc", + // Not a perfect match. + xleftequilibrium: "\u21cb", + // None better available. + "\\cdrightarrow": "\u2192", + "\\cdleftarrow": "\u2190", + "\\cdlongequal": "=" +}; + +var mathMLnode = function mathMLnode(label) { + var node = new mathMLTree.MathNode("mo", [new mathMLTree.TextNode(stretchyCodePoint[label.replace(/^\\/, '')])]); + node.setAttribute("stretchy", "true"); + return node; +}; // Many of the KaTeX SVG images have been adapted from glyphs in KaTeX fonts. +// Copyright (c) 2009-2010, Design Science, Inc. () +// Copyright (c) 2014-2017 Khan Academy () +// Licensed under the SIL Open Font License, Version 1.1. +// See \nhttp://scripts.sil.org/OFL +// Very Long SVGs +// Many of the KaTeX stretchy wide elements use a long SVG image and an +// overflow: hidden tactic to achieve a stretchy image while avoiding +// distortion of arrowheads or brace corners. +// The SVG typically contains a very long (400 em) arrow. +// The SVG is in a container span that has overflow: hidden, so the span +// acts like a window that exposes only part of the SVG. +// The SVG always has a longer, thinner aspect ratio than the container span. +// After the SVG fills 100% of the height of the container span, +// there is a long arrow shaft left over. That left-over shaft is not shown. +// Instead, it is sliced off because the span's CSS has overflow: hidden. +// Thus, the reader sees an arrow that matches the subject matter width +// without distortion. +// Some functions, such as \cancel, need to vary their aspect ratio. These +// functions do not get the overflow SVG treatment. +// Second Brush Stroke +// Low resolution monitors struggle to display images in fine detail. +// So browsers apply anti-aliasing. A long straight arrow shaft therefore +// will sometimes appear as if it has a blurred edge. +// To mitigate this, these SVG files contain a second "brush-stroke" on the +// arrow shafts. That is, a second long thin rectangular SVG path has been +// written directly on top of each arrow shaft. This reinforcement causes +// some of the screen pixels to display as black instead of the anti-aliased +// gray pixel that a single path would generate. So we get arrow shafts +// whose edges appear to be sharper. +// In the katexImagesData object just below, the dimensions all +// correspond to path geometry inside the relevant SVG. +// For example, \overrightarrow uses the same arrowhead as glyph U+2192 +// from the KaTeX Main font. The scaling factor is 1000. +// That is, inside the font, that arrowhead is 522 units tall, which +// corresponds to 0.522 em inside the document. + + +var katexImagesData = { + // path(s), minWidth, height, align + overrightarrow: [["rightarrow"], 0.888, 522, "xMaxYMin"], + overleftarrow: [["leftarrow"], 0.888, 522, "xMinYMin"], + underrightarrow: [["rightarrow"], 0.888, 522, "xMaxYMin"], + underleftarrow: [["leftarrow"], 0.888, 522, "xMinYMin"], + xrightarrow: [["rightarrow"], 1.469, 522, "xMaxYMin"], + "\\cdrightarrow": [["rightarrow"], 3.0, 522, "xMaxYMin"], + // CD minwwidth2.5pc + xleftarrow: [["leftarrow"], 1.469, 522, "xMinYMin"], + "\\cdleftarrow": [["leftarrow"], 3.0, 522, "xMinYMin"], + Overrightarrow: [["doublerightarrow"], 0.888, 560, "xMaxYMin"], + xRightarrow: [["doublerightarrow"], 1.526, 560, "xMaxYMin"], + xLeftarrow: [["doubleleftarrow"], 1.526, 560, "xMinYMin"], + overleftharpoon: [["leftharpoon"], 0.888, 522, "xMinYMin"], + xleftharpoonup: [["leftharpoon"], 0.888, 522, "xMinYMin"], + xleftharpoondown: [["leftharpoondown"], 0.888, 522, "xMinYMin"], + overrightharpoon: [["rightharpoon"], 0.888, 522, "xMaxYMin"], + xrightharpoonup: [["rightharpoon"], 0.888, 522, "xMaxYMin"], + xrightharpoondown: [["rightharpoondown"], 0.888, 522, "xMaxYMin"], + xlongequal: [["longequal"], 0.888, 334, "xMinYMin"], + "\\cdlongequal": [["longequal"], 3.0, 334, "xMinYMin"], + xtwoheadleftarrow: [["twoheadleftarrow"], 0.888, 334, "xMinYMin"], + xtwoheadrightarrow: [["twoheadrightarrow"], 0.888, 334, "xMaxYMin"], + overleftrightarrow: [["leftarrow", "rightarrow"], 0.888, 522], + overbrace: [["leftbrace", "midbrace", "rightbrace"], 1.6, 548], + underbrace: [["leftbraceunder", "midbraceunder", "rightbraceunder"], 1.6, 548], + underleftrightarrow: [["leftarrow", "rightarrow"], 0.888, 522], + xleftrightarrow: [["leftarrow", "rightarrow"], 1.75, 522], + xLeftrightarrow: [["doubleleftarrow", "doublerightarrow"], 1.75, 560], + xrightleftharpoons: [["leftharpoondownplus", "rightharpoonplus"], 1.75, 716], + xleftrightharpoons: [["leftharpoonplus", "rightharpoondownplus"], 1.75, 716], + xhookleftarrow: [["leftarrow", "righthook"], 1.08, 522], + xhookrightarrow: [["lefthook", "rightarrow"], 1.08, 522], + overlinesegment: [["leftlinesegment", "rightlinesegment"], 0.888, 522], + underlinesegment: [["leftlinesegment", "rightlinesegment"], 0.888, 522], + overgroup: [["leftgroup", "rightgroup"], 0.888, 342], + undergroup: [["leftgroupunder", "rightgroupunder"], 0.888, 342], + xmapsto: [["leftmapsto", "rightarrow"], 1.5, 522], + xtofrom: [["leftToFrom", "rightToFrom"], 1.75, 528], + // The next three arrows are from the mhchem package. + // In mhchem.sty, min-length is 2.0em. But these arrows might appear in the + // document as \xrightarrow or \xrightleftharpoons. Those have + // min-length = 1.75em, so we set min-length on these next three to match. + xrightleftarrows: [["baraboveleftarrow", "rightarrowabovebar"], 1.75, 901], + xrightequilibrium: [["baraboveshortleftharpoon", "rightharpoonaboveshortbar"], 1.75, 716], + xleftequilibrium: [["shortbaraboveleftharpoon", "shortrightharpoonabovebar"], 1.75, 716] +}; + +var groupLength = function groupLength(arg) { + if (arg.type === "ordgroup") { + return arg.body.length; + } else { + return 1; + } +}; + +var svgSpan = function svgSpan(group, options) { + // Create a span with inline SVG for the element. + function buildSvgSpan_() { + var viewBoxWidth = 400000; // default + + var label = group.label.slice(1); + + if (utils.contains(["widehat", "widecheck", "widetilde", "utilde"], label)) { + // Each type in the `if` statement corresponds to one of the ParseNode + // types below. This narrowing is required to access `grp.base`. + // $FlowFixMe + var grp = group; // There are four SVG images available for each function. + // Choose a taller image when there are more characters. + + var numChars = groupLength(grp.base); + var viewBoxHeight; + var pathName; + + var _height; + + if (numChars > 5) { + if (label === "widehat" || label === "widecheck") { + viewBoxHeight = 420; + viewBoxWidth = 2364; + _height = 0.42; + pathName = label + "4"; + } else { + viewBoxHeight = 312; + viewBoxWidth = 2340; + _height = 0.34; + pathName = "tilde4"; + } + } else { + var imgIndex = [1, 1, 2, 2, 3, 3][numChars]; + + if (label === "widehat" || label === "widecheck") { + viewBoxWidth = [0, 1062, 2364, 2364, 2364][imgIndex]; + viewBoxHeight = [0, 239, 300, 360, 420][imgIndex]; + _height = [0, 0.24, 0.3, 0.3, 0.36, 0.42][imgIndex]; + pathName = label + imgIndex; + } else { + viewBoxWidth = [0, 600, 1033, 2339, 2340][imgIndex]; + viewBoxHeight = [0, 260, 286, 306, 312][imgIndex]; + _height = [0, 0.26, 0.286, 0.3, 0.306, 0.34][imgIndex]; + pathName = "tilde" + imgIndex; + } + } + + var path = new PathNode(pathName); + var svgNode = new SvgNode([path], { + "width": "100%", + "height": makeEm(_height), + "viewBox": "0 0 " + viewBoxWidth + " " + viewBoxHeight, + "preserveAspectRatio": "none" + }); + return { + span: buildCommon.makeSvgSpan([], [svgNode], options), + minWidth: 0, + height: _height + }; + } else { + var spans = []; + var data = katexImagesData[label]; + var [paths, _minWidth, _viewBoxHeight] = data; + + var _height2 = _viewBoxHeight / 1000; + + var numSvgChildren = paths.length; + var widthClasses; + var aligns; + + if (numSvgChildren === 1) { + // $FlowFixMe: All these cases must be of the 4-tuple type. + var align1 = data[3]; + widthClasses = ["hide-tail"]; + aligns = [align1]; + } else if (numSvgChildren === 2) { + widthClasses = ["halfarrow-left", "halfarrow-right"]; + aligns = ["xMinYMin", "xMaxYMin"]; + } else if (numSvgChildren === 3) { + widthClasses = ["brace-left", "brace-center", "brace-right"]; + aligns = ["xMinYMin", "xMidYMin", "xMaxYMin"]; + } else { + throw new Error("Correct katexImagesData or update code here to support\n " + numSvgChildren + " children."); + } + + for (var i = 0; i < numSvgChildren; i++) { + var _path = new PathNode(paths[i]); + + var _svgNode = new SvgNode([_path], { + "width": "400em", + "height": makeEm(_height2), + "viewBox": "0 0 " + viewBoxWidth + " " + _viewBoxHeight, + "preserveAspectRatio": aligns[i] + " slice" + }); + + var _span = buildCommon.makeSvgSpan([widthClasses[i]], [_svgNode], options); + + if (numSvgChildren === 1) { + return { + span: _span, + minWidth: _minWidth, + height: _height2 + }; + } else { + _span.style.height = makeEm(_height2); + spans.push(_span); + } + } + + return { + span: buildCommon.makeSpan(["stretchy"], spans, options), + minWidth: _minWidth, + height: _height2 + }; + } + } // buildSvgSpan_() + + + var { + span, + minWidth, + height + } = buildSvgSpan_(); // Note that we are returning span.depth = 0. + // Any adjustments relative to the baseline must be done in buildHTML. + + span.height = height; + span.style.height = makeEm(height); + + if (minWidth > 0) { + span.style.minWidth = makeEm(minWidth); + } + + return span; +}; + +var encloseSpan = function encloseSpan(inner, label, topPad, bottomPad, options) { + // Return an image span for \cancel, \bcancel, \xcancel, \fbox, or \angl + var img; + var totalHeight = inner.height + inner.depth + topPad + bottomPad; + + if (/fbox|color|angl/.test(label)) { + img = buildCommon.makeSpan(["stretchy", label], [], options); + + if (label === "fbox") { + var color = options.color && options.getColor(); + + if (color) { + img.style.borderColor = color; + } + } + } else { + // \cancel, \bcancel, or \xcancel + // Since \cancel's SVG is inline and it omits the viewBox attribute, + // its stroke-width will not vary with span area. + var lines = []; + + if (/^[bx]cancel$/.test(label)) { + lines.push(new LineNode({ + "x1": "0", + "y1": "0", + "x2": "100%", + "y2": "100%", + "stroke-width": "0.046em" + })); + } + + if (/^x?cancel$/.test(label)) { + lines.push(new LineNode({ + "x1": "0", + "y1": "100%", + "x2": "100%", + "y2": "0", + "stroke-width": "0.046em" + })); + } + + var svgNode = new SvgNode(lines, { + "width": "100%", + "height": makeEm(totalHeight) + }); + img = buildCommon.makeSvgSpan([], [svgNode], options); + } + + img.height = totalHeight; + img.style.height = makeEm(totalHeight); + return img; +}; + +var stretchy = { + encloseSpan, + mathMLnode, + svgSpan +}; + +/** + * Asserts that the node is of the given type and returns it with stricter + * typing. Throws if the node's type does not match. + */ +function assertNodeType(node, type) { + if (!node || node.type !== type) { + throw new Error("Expected node of type " + type + ", but got " + (node ? "node of type " + node.type : String(node))); + } // $FlowFixMe, >=0.125 + + + return node; +} +/** + * Returns the node more strictly typed iff it is of the given type. Otherwise, + * returns null. + */ + +function assertSymbolNodeType(node) { + var typedNode = checkSymbolNodeType(node); + + if (!typedNode) { + throw new Error("Expected node of symbol group type, but got " + (node ? "node of type " + node.type : String(node))); + } + + return typedNode; +} +/** + * Returns the node more strictly typed iff it is of the given type. Otherwise, + * returns null. + */ + +function checkSymbolNodeType(node) { + if (node && (node.type === "atom" || NON_ATOMS.hasOwnProperty(node.type))) { + // $FlowFixMe + return node; + } + + return null; +} + +// NOTE: Unlike most `htmlBuilder`s, this one handles not only "accent", but +// also "supsub" since an accent can affect super/subscripting. +var htmlBuilder$a = (grp, options) => { + // Accents are handled in the TeXbook pg. 443, rule 12. + var base; + var group; + var supSubGroup; + + if (grp && grp.type === "supsub") { + // If our base is a character box, and we have superscripts and + // subscripts, the supsub will defer to us. In particular, we want + // to attach the superscripts and subscripts to the inner body (so + // that the position of the superscripts and subscripts won't be + // affected by the height of the accent). We accomplish this by + // sticking the base of the accent into the base of the supsub, and + // rendering that, while keeping track of where the accent is. + // The real accent group is the base of the supsub group + group = assertNodeType(grp.base, "accent"); // The character box is the base of the accent group + + base = group.base; // Stick the character box into the base of the supsub group + + grp.base = base; // Rerender the supsub group with its new base, and store that + // result. + + supSubGroup = assertSpan(buildGroup$1(grp, options)); // reset original base + + grp.base = group; + } else { + group = assertNodeType(grp, "accent"); + base = group.base; + } // Build the base group + + + var body = buildGroup$1(base, options.havingCrampedStyle()); // Does the accent need to shift for the skew of a character? + + var mustShift = group.isShifty && utils.isCharacterBox(base); // Calculate the skew of the accent. This is based on the line "If the + // nucleus is not a single character, let s = 0; otherwise set s to the + // kern amount for the nucleus followed by the \skewchar of its font." + // Note that our skew metrics are just the kern between each character + // and the skewchar. + + var skew = 0; + + if (mustShift) { + // If the base is a character box, then we want the skew of the + // innermost character. To do that, we find the innermost character: + var baseChar = utils.getBaseElem(base); // Then, we render its group to get the symbol inside it + + var baseGroup = buildGroup$1(baseChar, options.havingCrampedStyle()); // Finally, we pull the skew off of the symbol. + + skew = assertSymbolDomNode(baseGroup).skew; // Note that we now throw away baseGroup, because the layers we + // removed with getBaseElem might contain things like \color which + // we can't get rid of. + // TODO(emily): Find a better way to get the skew + } + + var accentBelow = group.label === "\\c"; // calculate the amount of space between the body and the accent + + var clearance = accentBelow ? body.height + body.depth : Math.min(body.height, options.fontMetrics().xHeight); // Build the accent + + var accentBody; + + if (!group.isStretchy) { + var accent; + var width; + + if (group.label === "\\vec") { + // Before version 0.9, \vec used the combining font glyph U+20D7. + // But browsers, especially Safari, are not consistent in how they + // render combining characters when not preceded by a character. + // So now we use an SVG. + // If Safari reforms, we should consider reverting to the glyph. + accent = buildCommon.staticSvg("vec", options); + width = buildCommon.svgData.vec[1]; + } else { + accent = buildCommon.makeOrd({ + mode: group.mode, + text: group.label + }, options, "textord"); + accent = assertSymbolDomNode(accent); // Remove the italic correction of the accent, because it only serves to + // shift the accent over to a place we don't want. + + accent.italic = 0; + width = accent.width; + + if (accentBelow) { + clearance += accent.depth; + } + } + + accentBody = buildCommon.makeSpan(["accent-body"], [accent]); // "Full" accents expand the width of the resulting symbol to be + // at least the width of the accent, and overlap directly onto the + // character without any vertical offset. + + var accentFull = group.label === "\\textcircled"; + + if (accentFull) { + accentBody.classes.push('accent-full'); + clearance = body.height; + } // Shift the accent over by the skew. + + + var left = skew; // CSS defines `.katex .accent .accent-body:not(.accent-full) { width: 0 }` + // so that the accent doesn't contribute to the bounding box. + // We need to shift the character by its width (effectively half + // its width) to compensate. + + if (!accentFull) { + left -= width / 2; + } + + accentBody.style.left = makeEm(left); // \textcircled uses the \bigcirc glyph, so it needs some + // vertical adjustment to match LaTeX. + + if (group.label === "\\textcircled") { + accentBody.style.top = ".2em"; + } + + accentBody = buildCommon.makeVList({ + positionType: "firstBaseline", + children: [{ + type: "elem", + elem: body + }, { + type: "kern", + size: -clearance + }, { + type: "elem", + elem: accentBody + }] + }, options); + } else { + accentBody = stretchy.svgSpan(group, options); + accentBody = buildCommon.makeVList({ + positionType: "firstBaseline", + children: [{ + type: "elem", + elem: body + }, { + type: "elem", + elem: accentBody, + wrapperClasses: ["svg-align"], + wrapperStyle: skew > 0 ? { + width: "calc(100% - " + makeEm(2 * skew) + ")", + marginLeft: makeEm(2 * skew) + } : undefined + }] + }, options); + } + + var accentWrap = buildCommon.makeSpan(["mord", "accent"], [accentBody], options); + + if (supSubGroup) { + // Here, we replace the "base" child of the supsub with our newly + // generated accent. + supSubGroup.children[0] = accentWrap; // Since we don't rerun the height calculation after replacing the + // accent, we manually recalculate height. + + supSubGroup.height = Math.max(accentWrap.height, supSubGroup.height); // Accents should always be ords, even when their innards are not. + + supSubGroup.classes[0] = "mord"; + return supSubGroup; + } else { + return accentWrap; + } +}; + +var mathmlBuilder$9 = (group, options) => { + var accentNode = group.isStretchy ? stretchy.mathMLnode(group.label) : new mathMLTree.MathNode("mo", [makeText(group.label, group.mode)]); + var node = new mathMLTree.MathNode("mover", [buildGroup(group.base, options), accentNode]); + node.setAttribute("accent", "true"); + return node; +}; + +var NON_STRETCHY_ACCENT_REGEX = new RegExp(["\\acute", "\\grave", "\\ddot", "\\tilde", "\\bar", "\\breve", "\\check", "\\hat", "\\vec", "\\dot", "\\mathring"].map(accent => "\\" + accent).join("|")); // Accents + +defineFunction({ + type: "accent", + names: ["\\acute", "\\grave", "\\ddot", "\\tilde", "\\bar", "\\breve", "\\check", "\\hat", "\\vec", "\\dot", "\\mathring", "\\widecheck", "\\widehat", "\\widetilde", "\\overrightarrow", "\\overleftarrow", "\\Overrightarrow", "\\overleftrightarrow", "\\overgroup", "\\overlinesegment", "\\overleftharpoon", "\\overrightharpoon"], + props: { + numArgs: 1 + }, + handler: (context, args) => { + var base = normalizeArgument(args[0]); + var isStretchy = !NON_STRETCHY_ACCENT_REGEX.test(context.funcName); + var isShifty = !isStretchy || context.funcName === "\\widehat" || context.funcName === "\\widetilde" || context.funcName === "\\widecheck"; + return { + type: "accent", + mode: context.parser.mode, + label: context.funcName, + isStretchy: isStretchy, + isShifty: isShifty, + base: base + }; + }, + htmlBuilder: htmlBuilder$a, + mathmlBuilder: mathmlBuilder$9 +}); // Text-mode accents + +defineFunction({ + type: "accent", + names: ["\\'", "\\`", "\\^", "\\~", "\\=", "\\u", "\\.", '\\"', "\\c", "\\r", "\\H", "\\v", "\\textcircled"], + props: { + numArgs: 1, + allowedInText: true, + allowedInMath: true, + // unless in strict mode + argTypes: ["primitive"] + }, + handler: (context, args) => { + var base = args[0]; + var mode = context.parser.mode; + + if (mode === "math") { + context.parser.settings.reportNonstrict("mathVsTextAccents", "LaTeX's accent " + context.funcName + " works only in text mode"); + mode = "text"; + } + + return { + type: "accent", + mode: mode, + label: context.funcName, + isStretchy: false, + isShifty: true, + base: base + }; + }, + htmlBuilder: htmlBuilder$a, + mathmlBuilder: mathmlBuilder$9 +}); + +// Horizontal overlap functions +defineFunction({ + type: "accentUnder", + names: ["\\underleftarrow", "\\underrightarrow", "\\underleftrightarrow", "\\undergroup", "\\underlinesegment", "\\utilde"], + props: { + numArgs: 1 + }, + handler: (_ref, args) => { + var { + parser, + funcName + } = _ref; + var base = args[0]; + return { + type: "accentUnder", + mode: parser.mode, + label: funcName, + base: base + }; + }, + htmlBuilder: (group, options) => { + // Treat under accents much like underlines. + var innerGroup = buildGroup$1(group.base, options); + var accentBody = stretchy.svgSpan(group, options); + var kern = group.label === "\\utilde" ? 0.12 : 0; // Generate the vlist, with the appropriate kerns + + var vlist = buildCommon.makeVList({ + positionType: "top", + positionData: innerGroup.height, + children: [{ + type: "elem", + elem: accentBody, + wrapperClasses: ["svg-align"] + }, { + type: "kern", + size: kern + }, { + type: "elem", + elem: innerGroup + }] + }, options); + return buildCommon.makeSpan(["mord", "accentunder"], [vlist], options); + }, + mathmlBuilder: (group, options) => { + var accentNode = stretchy.mathMLnode(group.label); + var node = new mathMLTree.MathNode("munder", [buildGroup(group.base, options), accentNode]); + node.setAttribute("accentunder", "true"); + return node; + } +}); + +// Helper function +var paddedNode = group => { + var node = new mathMLTree.MathNode("mpadded", group ? [group] : []); + node.setAttribute("width", "+0.6em"); + node.setAttribute("lspace", "0.3em"); + return node; +}; // Stretchy arrows with an optional argument + + +defineFunction({ + type: "xArrow", + names: ["\\xleftarrow", "\\xrightarrow", "\\xLeftarrow", "\\xRightarrow", "\\xleftrightarrow", "\\xLeftrightarrow", "\\xhookleftarrow", "\\xhookrightarrow", "\\xmapsto", "\\xrightharpoondown", "\\xrightharpoonup", "\\xleftharpoondown", "\\xleftharpoonup", "\\xrightleftharpoons", "\\xleftrightharpoons", "\\xlongequal", "\\xtwoheadrightarrow", "\\xtwoheadleftarrow", "\\xtofrom", // The next 3 functions are here to support the mhchem extension. + // Direct use of these functions is discouraged and may break someday. + "\\xrightleftarrows", "\\xrightequilibrium", "\\xleftequilibrium", // The next 3 functions are here only to support the {CD} environment. + "\\\\cdrightarrow", "\\\\cdleftarrow", "\\\\cdlongequal"], + props: { + numArgs: 1, + numOptionalArgs: 1 + }, + + handler(_ref, args, optArgs) { + var { + parser, + funcName + } = _ref; + return { + type: "xArrow", + mode: parser.mode, + label: funcName, + body: args[0], + below: optArgs[0] + }; + }, + + // Flow is unable to correctly infer the type of `group`, even though it's + // unambiguously determined from the passed-in `type` above. + htmlBuilder(group, options) { + var style = options.style; // Build the argument groups in the appropriate style. + // Ref: amsmath.dtx: \hbox{$\scriptstyle\mkern#3mu{#6}\mkern#4mu$}% + // Some groups can return document fragments. Handle those by wrapping + // them in a span. + + var newOptions = options.havingStyle(style.sup()); + var upperGroup = buildCommon.wrapFragment(buildGroup$1(group.body, newOptions, options), options); + var arrowPrefix = group.label.slice(0, 2) === "\\x" ? "x" : "cd"; + upperGroup.classes.push(arrowPrefix + "-arrow-pad"); + var lowerGroup; + + if (group.below) { + // Build the lower group + newOptions = options.havingStyle(style.sub()); + lowerGroup = buildCommon.wrapFragment(buildGroup$1(group.below, newOptions, options), options); + lowerGroup.classes.push(arrowPrefix + "-arrow-pad"); + } + + var arrowBody = stretchy.svgSpan(group, options); // Re shift: Note that stretchy.svgSpan returned arrowBody.depth = 0. + // The point we want on the math axis is at 0.5 * arrowBody.height. + + var arrowShift = -options.fontMetrics().axisHeight + 0.5 * arrowBody.height; // 2 mu kern. Ref: amsmath.dtx: #7\if0#2\else\mkern#2mu\fi + + var upperShift = -options.fontMetrics().axisHeight - 0.5 * arrowBody.height - 0.111; // 0.111 em = 2 mu + + if (upperGroup.depth > 0.25 || group.label === "\\xleftequilibrium") { + upperShift -= upperGroup.depth; // shift up if depth encroaches + } // Generate the vlist + + + var vlist; + + if (lowerGroup) { + var lowerShift = -options.fontMetrics().axisHeight + lowerGroup.height + 0.5 * arrowBody.height + 0.111; + vlist = buildCommon.makeVList({ + positionType: "individualShift", + children: [{ + type: "elem", + elem: upperGroup, + shift: upperShift + }, { + type: "elem", + elem: arrowBody, + shift: arrowShift + }, { + type: "elem", + elem: lowerGroup, + shift: lowerShift + }] + }, options); + } else { + vlist = buildCommon.makeVList({ + positionType: "individualShift", + children: [{ + type: "elem", + elem: upperGroup, + shift: upperShift + }, { + type: "elem", + elem: arrowBody, + shift: arrowShift + }] + }, options); + } // $FlowFixMe: Replace this with passing "svg-align" into makeVList. + + + vlist.children[0].children[0].children[1].classes.push("svg-align"); + return buildCommon.makeSpan(["mrel", "x-arrow"], [vlist], options); + }, + + mathmlBuilder(group, options) { + var arrowNode = stretchy.mathMLnode(group.label); + arrowNode.setAttribute("minsize", group.label.charAt(0) === "x" ? "1.75em" : "3.0em"); + var node; + + if (group.body) { + var upperNode = paddedNode(buildGroup(group.body, options)); + + if (group.below) { + var lowerNode = paddedNode(buildGroup(group.below, options)); + node = new mathMLTree.MathNode("munderover", [arrowNode, lowerNode, upperNode]); + } else { + node = new mathMLTree.MathNode("mover", [arrowNode, upperNode]); + } + } else if (group.below) { + var _lowerNode = paddedNode(buildGroup(group.below, options)); + + node = new mathMLTree.MathNode("munder", [arrowNode, _lowerNode]); + } else { + // This should never happen. + // Parser.js throws an error if there is no argument. + node = paddedNode(); + node = new mathMLTree.MathNode("mover", [arrowNode, node]); + } + + return node; + } + +}); + +var makeSpan = buildCommon.makeSpan; + +function htmlBuilder$9(group, options) { + var elements = buildExpression$1(group.body, options, true); + return makeSpan([group.mclass], elements, options); +} + +function mathmlBuilder$8(group, options) { + var node; + var inner = buildExpression(group.body, options); + + if (group.mclass === "minner") { + node = new mathMLTree.MathNode("mpadded", inner); + } else if (group.mclass === "mord") { + if (group.isCharacterBox) { + node = inner[0]; + node.type = "mi"; + } else { + node = new mathMLTree.MathNode("mi", inner); + } + } else { + if (group.isCharacterBox) { + node = inner[0]; + node.type = "mo"; + } else { + node = new mathMLTree.MathNode("mo", inner); + } // Set spacing based on what is the most likely adjacent atom type. + // See TeXbook p170. + + + if (group.mclass === "mbin") { + node.attributes.lspace = "0.22em"; // medium space + + node.attributes.rspace = "0.22em"; + } else if (group.mclass === "mpunct") { + node.attributes.lspace = "0em"; + node.attributes.rspace = "0.17em"; // thinspace + } else if (group.mclass === "mopen" || group.mclass === "mclose") { + node.attributes.lspace = "0em"; + node.attributes.rspace = "0em"; + } else if (group.mclass === "minner") { + node.attributes.lspace = "0.0556em"; // 1 mu is the most likely option + + node.attributes.width = "+0.1111em"; + } // MathML default space is 5/18 em, so needs no action. + // Ref: https://developer.mozilla.org/en-US/docs/Web/MathML/Element/mo + + } + + return node; +} // Math class commands except \mathop + + +defineFunction({ + type: "mclass", + names: ["\\mathord", "\\mathbin", "\\mathrel", "\\mathopen", "\\mathclose", "\\mathpunct", "\\mathinner"], + props: { + numArgs: 1, + primitive: true + }, + + handler(_ref, args) { + var { + parser, + funcName + } = _ref; + var body = args[0]; + return { + type: "mclass", + mode: parser.mode, + mclass: "m" + funcName.slice(5), + // TODO(kevinb): don't prefix with 'm' + body: ordargument(body), + isCharacterBox: utils.isCharacterBox(body) + }; + }, + + htmlBuilder: htmlBuilder$9, + mathmlBuilder: mathmlBuilder$8 +}); +var binrelClass = arg => { + // \binrel@ spacing varies with (bin|rel|ord) of the atom in the argument. + // (by rendering separately and with {}s before and after, and measuring + // the change in spacing). We'll do roughly the same by detecting the + // atom type directly. + var atom = arg.type === "ordgroup" && arg.body.length ? arg.body[0] : arg; + + if (atom.type === "atom" && (atom.family === "bin" || atom.family === "rel")) { + return "m" + atom.family; + } else { + return "mord"; + } +}; // \@binrel{x}{y} renders like y but as mbin/mrel/mord if x is mbin/mrel/mord. +// This is equivalent to \binrel@{x}\binrel@@{y} in AMSTeX. + +defineFunction({ + type: "mclass", + names: ["\\@binrel"], + props: { + numArgs: 2 + }, + + handler(_ref2, args) { + var { + parser + } = _ref2; + return { + type: "mclass", + mode: parser.mode, + mclass: binrelClass(args[0]), + body: ordargument(args[1]), + isCharacterBox: utils.isCharacterBox(args[1]) + }; + } + +}); // Build a relation or stacked op by placing one symbol on top of another + +defineFunction({ + type: "mclass", + names: ["\\stackrel", "\\overset", "\\underset"], + props: { + numArgs: 2 + }, + + handler(_ref3, args) { + var { + parser, + funcName + } = _ref3; + var baseArg = args[1]; + var shiftedArg = args[0]; + var mclass; + + if (funcName !== "\\stackrel") { + // LaTeX applies \binrel spacing to \overset and \underset. + mclass = binrelClass(baseArg); + } else { + mclass = "mrel"; // for \stackrel + } + + var baseOp = { + type: "op", + mode: baseArg.mode, + limits: true, + alwaysHandleSupSub: true, + parentIsSupSub: false, + symbol: false, + suppressBaseShift: funcName !== "\\stackrel", + body: ordargument(baseArg) + }; + var supsub = { + type: "supsub", + mode: shiftedArg.mode, + base: baseOp, + sup: funcName === "\\underset" ? null : shiftedArg, + sub: funcName === "\\underset" ? shiftedArg : null + }; + return { + type: "mclass", + mode: parser.mode, + mclass, + body: [supsub], + isCharacterBox: utils.isCharacterBox(supsub) + }; + }, + + htmlBuilder: htmlBuilder$9, + mathmlBuilder: mathmlBuilder$8 +}); + +// \pmb is a simulation of bold font. +// The version of \pmb in ambsy.sty works by typesetting three copies +// with small offsets. We use CSS text-shadow. +// It's a hack. Not as good as a real bold font. Better than nothing. +defineFunction({ + type: "pmb", + names: ["\\pmb"], + props: { + numArgs: 1, + allowedInText: true + }, + + handler(_ref, args) { + var { + parser + } = _ref; + return { + type: "pmb", + mode: parser.mode, + mclass: binrelClass(args[0]), + body: ordargument(args[0]) + }; + }, + + htmlBuilder(group, options) { + var elements = buildExpression$1(group.body, options, true); + var node = buildCommon.makeSpan([group.mclass], elements, options); + node.style.textShadow = "0.02em 0.01em 0.04px"; + return node; + }, + + mathmlBuilder(group, style) { + var inner = buildExpression(group.body, style); // Wrap with an element. + + var node = new mathMLTree.MathNode("mstyle", inner); + node.setAttribute("style", "text-shadow: 0.02em 0.01em 0.04px"); + return node; + } + +}); + +var cdArrowFunctionName = { + ">": "\\\\cdrightarrow", + "<": "\\\\cdleftarrow", + "=": "\\\\cdlongequal", + "A": "\\uparrow", + "V": "\\downarrow", + "|": "\\Vert", + ".": "no arrow" +}; + +var newCell = () => { + // Create an empty cell, to be filled below with parse nodes. + // The parseTree from this module must be constructed like the + // one created by parseArray(), so an empty CD cell must + // be a ParseNode<"styling">. And CD is always displaystyle. + // So these values are fixed and flow can do implicit typing. + return { + type: "styling", + body: [], + mode: "math", + style: "display" + }; +}; + +var isStartOfArrow = node => { + return node.type === "textord" && node.text === "@"; +}; + +var isLabelEnd = (node, endChar) => { + return (node.type === "mathord" || node.type === "atom") && node.text === endChar; +}; + +function cdArrow(arrowChar, labels, parser) { + // Return a parse tree of an arrow and its labels. + // This acts in a way similar to a macro expansion. + var funcName = cdArrowFunctionName[arrowChar]; + + switch (funcName) { + case "\\\\cdrightarrow": + case "\\\\cdleftarrow": + return parser.callFunction(funcName, [labels[0]], [labels[1]]); + + case "\\uparrow": + case "\\downarrow": + { + var leftLabel = parser.callFunction("\\\\cdleft", [labels[0]], []); + var bareArrow = { + type: "atom", + text: funcName, + mode: "math", + family: "rel" + }; + var sizedArrow = parser.callFunction("\\Big", [bareArrow], []); + var rightLabel = parser.callFunction("\\\\cdright", [labels[1]], []); + var arrowGroup = { + type: "ordgroup", + mode: "math", + body: [leftLabel, sizedArrow, rightLabel] + }; + return parser.callFunction("\\\\cdparent", [arrowGroup], []); + } + + case "\\\\cdlongequal": + return parser.callFunction("\\\\cdlongequal", [], []); + + case "\\Vert": + { + var arrow = { + type: "textord", + text: "\\Vert", + mode: "math" + }; + return parser.callFunction("\\Big", [arrow], []); + } + + default: + return { + type: "textord", + text: " ", + mode: "math" + }; + } +} + +function parseCD(parser) { + // Get the array's parse nodes with \\ temporarily mapped to \cr. + var parsedRows = []; + parser.gullet.beginGroup(); + parser.gullet.macros.set("\\cr", "\\\\\\relax"); + parser.gullet.beginGroup(); + + while (true) { + // eslint-disable-line no-constant-condition + // Get the parse nodes for the next row. + parsedRows.push(parser.parseExpression(false, "\\\\")); + parser.gullet.endGroup(); + parser.gullet.beginGroup(); + var next = parser.fetch().text; + + if (next === "&" || next === "\\\\") { + parser.consume(); + } else if (next === "\\end") { + if (parsedRows[parsedRows.length - 1].length === 0) { + parsedRows.pop(); // final row ended in \\ + } + + break; + } else { + throw new ParseError("Expected \\\\ or \\cr or \\end", parser.nextToken); + } + } + + var row = []; + var body = [row]; // Loop thru the parse nodes. Collect them into cells and arrows. + + for (var i = 0; i < parsedRows.length; i++) { + // Start a new row. + var rowNodes = parsedRows[i]; // Create the first cell. + + var cell = newCell(); + + for (var j = 0; j < rowNodes.length; j++) { + if (!isStartOfArrow(rowNodes[j])) { + // If a parseNode is not an arrow, it goes into a cell. + cell.body.push(rowNodes[j]); + } else { + // Parse node j is an "@", the start of an arrow. + // Before starting on the arrow, push the cell into `row`. + row.push(cell); // Now collect parseNodes into an arrow. + // The character after "@" defines the arrow type. + + j += 1; + var arrowChar = assertSymbolNodeType(rowNodes[j]).text; // Create two empty label nodes. We may or may not use them. + + var labels = new Array(2); + labels[0] = { + type: "ordgroup", + mode: "math", + body: [] + }; + labels[1] = { + type: "ordgroup", + mode: "math", + body: [] + }; // Process the arrow. + + if ("=|.".indexOf(arrowChar) > -1) ; else if ("<>AV".indexOf(arrowChar) > -1) { + // Four arrows, `@>>>`, `@<<<`, `@AAA`, and `@VVV`, each take + // two optional labels. E.g. the right-point arrow syntax is + // really: @>{optional label}>{optional label}> + // Collect parseNodes into labels. + for (var labelNum = 0; labelNum < 2; labelNum++) { + var inLabel = true; + + for (var k = j + 1; k < rowNodes.length; k++) { + if (isLabelEnd(rowNodes[k], arrowChar)) { + inLabel = false; + j = k; + break; + } + + if (isStartOfArrow(rowNodes[k])) { + throw new ParseError("Missing a " + arrowChar + " character to complete a CD arrow.", rowNodes[k]); + } + + labels[labelNum].body.push(rowNodes[k]); + } + + if (inLabel) { + // isLabelEnd never returned a true. + throw new ParseError("Missing a " + arrowChar + " character to complete a CD arrow.", rowNodes[j]); + } + } + } else { + throw new ParseError("Expected one of \"<>AV=|.\" after @", rowNodes[j]); + } // Now join the arrow to its labels. + + + var arrow = cdArrow(arrowChar, labels, parser); // Wrap the arrow in ParseNode<"styling">. + // This is done to match parseArray() behavior. + + var wrappedArrow = { + type: "styling", + body: [arrow], + mode: "math", + style: "display" // CD is always displaystyle. + + }; + row.push(wrappedArrow); // In CD's syntax, cells are implicit. That is, everything that + // is not an arrow gets collected into a cell. So create an empty + // cell now. It will collect upcoming parseNodes. + + cell = newCell(); + } + } + + if (i % 2 === 0) { + // Even-numbered rows consist of: cell, arrow, cell, arrow, ... cell + // The last cell is not yet pushed into `row`, so: + row.push(cell); + } else { + // Odd-numbered rows consist of: vert arrow, empty cell, ... vert arrow + // Remove the empty cell that was placed at the beginning of `row`. + row.shift(); + } + + row = []; + body.push(row); + } // End row group + + + parser.gullet.endGroup(); // End array group defining \\ + + parser.gullet.endGroup(); // define column separation. + + var cols = new Array(body[0].length).fill({ + type: "align", + align: "c", + pregap: 0.25, + // CD package sets \enskip between columns. + postgap: 0.25 // So pre and post each get half an \enskip, i.e. 0.25em. + + }); + return { + type: "array", + mode: "math", + body, + arraystretch: 1, + addJot: true, + rowGaps: [null], + cols, + colSeparationType: "CD", + hLinesBeforeRow: new Array(body.length + 1).fill([]) + }; +} // The functions below are not available for general use. +// They are here only for internal use by the {CD} environment in placing labels +// next to vertical arrows. +// We don't need any such functions for horizontal arrows because we can reuse +// the functionality that already exists for extensible arrows. + +defineFunction({ + type: "cdlabel", + names: ["\\\\cdleft", "\\\\cdright"], + props: { + numArgs: 1 + }, + + handler(_ref, args) { + var { + parser, + funcName + } = _ref; + return { + type: "cdlabel", + mode: parser.mode, + side: funcName.slice(4), + label: args[0] + }; + }, + + htmlBuilder(group, options) { + var newOptions = options.havingStyle(options.style.sup()); + var label = buildCommon.wrapFragment(buildGroup$1(group.label, newOptions, options), options); + label.classes.push("cd-label-" + group.side); + label.style.bottom = makeEm(0.8 - label.depth); // Zero out label height & depth, so vertical align of arrow is set + // by the arrow height, not by the label. + + label.height = 0; + label.depth = 0; + return label; + }, + + mathmlBuilder(group, options) { + var label = new mathMLTree.MathNode("mrow", [buildGroup(group.label, options)]); + label = new mathMLTree.MathNode("mpadded", [label]); + label.setAttribute("width", "0"); + + if (group.side === "left") { + label.setAttribute("lspace", "-1width"); + } // We have to guess at vertical alignment. We know the arrow is 1.8em tall, + // But we don't know the height or depth of the label. + + + label.setAttribute("voffset", "0.7em"); + label = new mathMLTree.MathNode("mstyle", [label]); + label.setAttribute("displaystyle", "false"); + label.setAttribute("scriptlevel", "1"); + return label; + } + +}); +defineFunction({ + type: "cdlabelparent", + names: ["\\\\cdparent"], + props: { + numArgs: 1 + }, + + handler(_ref2, args) { + var { + parser + } = _ref2; + return { + type: "cdlabelparent", + mode: parser.mode, + fragment: args[0] + }; + }, + + htmlBuilder(group, options) { + // Wrap the vertical arrow and its labels. + // The parent gets position: relative. The child gets position: absolute. + // So CSS can locate the label correctly. + var parent = buildCommon.wrapFragment(buildGroup$1(group.fragment, options), options); + parent.classes.push("cd-vert-arrow"); + return parent; + }, + + mathmlBuilder(group, options) { + return new mathMLTree.MathNode("mrow", [buildGroup(group.fragment, options)]); + } + +}); + +// {123} and converts into symbol with code 123. It is used by the *macro* +// \char defined in macros.js. + +defineFunction({ + type: "textord", + names: ["\\@char"], + props: { + numArgs: 1, + allowedInText: true + }, + + handler(_ref, args) { + var { + parser + } = _ref; + var arg = assertNodeType(args[0], "ordgroup"); + var group = arg.body; + var number = ""; + + for (var i = 0; i < group.length; i++) { + var node = assertNodeType(group[i], "textord"); + number += node.text; + } + + var code = parseInt(number); + var text; + + if (isNaN(code)) { + throw new ParseError("\\@char has non-numeric argument " + number); // If we drop IE support, the following code could be replaced with + // text = String.fromCodePoint(code) + } else if (code < 0 || code >= 0x10ffff) { + throw new ParseError("\\@char with invalid code point " + number); + } else if (code <= 0xffff) { + text = String.fromCharCode(code); + } else { + // Astral code point; split into surrogate halves + code -= 0x10000; + text = String.fromCharCode((code >> 10) + 0xd800, (code & 0x3ff) + 0xdc00); + } + + return { + type: "textord", + mode: parser.mode, + text: text + }; + } + +}); + +var htmlBuilder$8 = (group, options) => { + var elements = buildExpression$1(group.body, options.withColor(group.color), false); // \color isn't supposed to affect the type of the elements it contains. + // To accomplish this, we wrap the results in a fragment, so the inner + // elements will be able to directly interact with their neighbors. For + // example, `\color{red}{2 +} 3` has the same spacing as `2 + 3` + + return buildCommon.makeFragment(elements); +}; + +var mathmlBuilder$7 = (group, options) => { + var inner = buildExpression(group.body, options.withColor(group.color)); + var node = new mathMLTree.MathNode("mstyle", inner); + node.setAttribute("mathcolor", group.color); + return node; +}; + +defineFunction({ + type: "color", + names: ["\\textcolor"], + props: { + numArgs: 2, + allowedInText: true, + argTypes: ["color", "original"] + }, + + handler(_ref, args) { + var { + parser + } = _ref; + var color = assertNodeType(args[0], "color-token").color; + var body = args[1]; + return { + type: "color", + mode: parser.mode, + color, + body: ordargument(body) + }; + }, + + htmlBuilder: htmlBuilder$8, + mathmlBuilder: mathmlBuilder$7 +}); +defineFunction({ + type: "color", + names: ["\\color"], + props: { + numArgs: 1, + allowedInText: true, + argTypes: ["color"] + }, + + handler(_ref2, args) { + var { + parser, + breakOnTokenText + } = _ref2; + var color = assertNodeType(args[0], "color-token").color; // Set macro \current@color in current namespace to store the current + // color, mimicking the behavior of color.sty. + // This is currently used just to correctly color a \right + // that follows a \color command. + + parser.gullet.macros.set("\\current@color", color); // Parse out the implicit body that should be colored. + + var body = parser.parseExpression(true, breakOnTokenText); + return { + type: "color", + mode: parser.mode, + color, + body + }; + }, + + htmlBuilder: htmlBuilder$8, + mathmlBuilder: mathmlBuilder$7 +}); + +// Row breaks within tabular environments, and line breaks at top level + +defineFunction({ + type: "cr", + names: ["\\\\"], + props: { + numArgs: 0, + numOptionalArgs: 0, + allowedInText: true + }, + + handler(_ref, args, optArgs) { + var { + parser + } = _ref; + var size = parser.gullet.future().text === "[" ? parser.parseSizeGroup(true) : null; + var newLine = !parser.settings.displayMode || !parser.settings.useStrictBehavior("newLineInDisplayMode", "In LaTeX, \\\\ or \\newline " + "does nothing in display mode"); + return { + type: "cr", + mode: parser.mode, + newLine, + size: size && assertNodeType(size, "size").value + }; + }, + + // The following builders are called only at the top level, + // not within tabular/array environments. + htmlBuilder(group, options) { + var span = buildCommon.makeSpan(["mspace"], [], options); + + if (group.newLine) { + span.classes.push("newline"); + + if (group.size) { + span.style.marginTop = makeEm(calculateSize(group.size, options)); + } + } + + return span; + }, + + mathmlBuilder(group, options) { + var node = new mathMLTree.MathNode("mspace"); + + if (group.newLine) { + node.setAttribute("linebreak", "newline"); + + if (group.size) { + node.setAttribute("height", makeEm(calculateSize(group.size, options))); + } + } + + return node; + } + +}); + +var globalMap = { + "\\global": "\\global", + "\\long": "\\\\globallong", + "\\\\globallong": "\\\\globallong", + "\\def": "\\gdef", + "\\gdef": "\\gdef", + "\\edef": "\\xdef", + "\\xdef": "\\xdef", + "\\let": "\\\\globallet", + "\\futurelet": "\\\\globalfuture" +}; + +var checkControlSequence = tok => { + var name = tok.text; + + if (/^(?:[\\{}$&#^_]|EOF)$/.test(name)) { + throw new ParseError("Expected a control sequence", tok); + } + + return name; +}; + +var getRHS = parser => { + var tok = parser.gullet.popToken(); + + if (tok.text === "=") { + // consume optional equals + tok = parser.gullet.popToken(); + + if (tok.text === " ") { + // consume one optional space + tok = parser.gullet.popToken(); + } + } + + return tok; +}; + +var letCommand = (parser, name, tok, global) => { + var macro = parser.gullet.macros.get(tok.text); + + if (macro == null) { + // don't expand it later even if a macro with the same name is defined + // e.g., \let\foo=\frac \def\frac{\relax} \frac12 + tok.noexpand = true; + macro = { + tokens: [tok], + numArgs: 0, + // reproduce the same behavior in expansion + unexpandable: !parser.gullet.isExpandable(tok.text) + }; + } + + parser.gullet.macros.set(name, macro, global); +}; // -> | +// -> |\global +// -> | +// -> \global|\long|\outer + + +defineFunction({ + type: "internal", + names: ["\\global", "\\long", "\\\\globallong" // can’t be entered directly + ], + props: { + numArgs: 0, + allowedInText: true + }, + + handler(_ref) { + var { + parser, + funcName + } = _ref; + parser.consumeSpaces(); + var token = parser.fetch(); + + if (globalMap[token.text]) { + // KaTeX doesn't have \par, so ignore \long + if (funcName === "\\global" || funcName === "\\\\globallong") { + token.text = globalMap[token.text]; + } + + return assertNodeType(parser.parseFunction(), "internal"); + } + + throw new ParseError("Invalid token after macro prefix", token); + } + +}); // Basic support for macro definitions: \def, \gdef, \edef, \xdef +// -> +// -> \def|\gdef|\edef|\xdef +// -> + +defineFunction({ + type: "internal", + names: ["\\def", "\\gdef", "\\edef", "\\xdef"], + props: { + numArgs: 0, + allowedInText: true, + primitive: true + }, + + handler(_ref2) { + var { + parser, + funcName + } = _ref2; + var tok = parser.gullet.popToken(); + var name = tok.text; + + if (/^(?:[\\{}$&#^_]|EOF)$/.test(name)) { + throw new ParseError("Expected a control sequence", tok); + } + + var numArgs = 0; + var insert; + var delimiters = [[]]; // contains no braces + + while (parser.gullet.future().text !== "{") { + tok = parser.gullet.popToken(); + + if (tok.text === "#") { + // If the very last character of the is #, so that + // this # is immediately followed by {, TeX will behave as if the { + // had been inserted at the right end of both the parameter text + // and the replacement text. + if (parser.gullet.future().text === "{") { + insert = parser.gullet.future(); + delimiters[numArgs].push("{"); + break; + } // A parameter, the first appearance of # must be followed by 1, + // the next by 2, and so on; up to nine #’s are allowed + + + tok = parser.gullet.popToken(); + + if (!/^[1-9]$/.test(tok.text)) { + throw new ParseError("Invalid argument number \"" + tok.text + "\""); + } + + if (parseInt(tok.text) !== numArgs + 1) { + throw new ParseError("Argument number \"" + tok.text + "\" out of order"); + } + + numArgs++; + delimiters.push([]); + } else if (tok.text === "EOF") { + throw new ParseError("Expected a macro definition"); + } else { + delimiters[numArgs].push(tok.text); + } + } // replacement text, enclosed in '{' and '}' and properly nested + + + var { + tokens + } = parser.gullet.consumeArg(); + + if (insert) { + tokens.unshift(insert); + } + + if (funcName === "\\edef" || funcName === "\\xdef") { + tokens = parser.gullet.expandTokens(tokens); + tokens.reverse(); // to fit in with stack order + } // Final arg is the expansion of the macro + + + parser.gullet.macros.set(name, { + tokens, + numArgs, + delimiters + }, funcName === globalMap[funcName]); + return { + type: "internal", + mode: parser.mode + }; + } + +}); // -> +// -> \futurelet +// | \let +// -> |= + +defineFunction({ + type: "internal", + names: ["\\let", "\\\\globallet" // can’t be entered directly + ], + props: { + numArgs: 0, + allowedInText: true, + primitive: true + }, + + handler(_ref3) { + var { + parser, + funcName + } = _ref3; + var name = checkControlSequence(parser.gullet.popToken()); + parser.gullet.consumeSpaces(); + var tok = getRHS(parser); + letCommand(parser, name, tok, funcName === "\\\\globallet"); + return { + type: "internal", + mode: parser.mode + }; + } + +}); // ref: https://www.tug.org/TUGboat/tb09-3/tb22bechtolsheim.pdf + +defineFunction({ + type: "internal", + names: ["\\futurelet", "\\\\globalfuture" // can’t be entered directly + ], + props: { + numArgs: 0, + allowedInText: true, + primitive: true + }, + + handler(_ref4) { + var { + parser, + funcName + } = _ref4; + var name = checkControlSequence(parser.gullet.popToken()); + var middle = parser.gullet.popToken(); + var tok = parser.gullet.popToken(); + letCommand(parser, name, tok, funcName === "\\\\globalfuture"); + parser.gullet.pushToken(tok); + parser.gullet.pushToken(middle); + return { + type: "internal", + mode: parser.mode + }; + } + +}); + +/** + * This file deals with creating delimiters of various sizes. The TeXbook + * discusses these routines on page 441-442, in the "Another subroutine sets box + * x to a specified variable delimiter" paragraph. + * + * There are three main routines here. `makeSmallDelim` makes a delimiter in the + * normal font, but in either text, script, or scriptscript style. + * `makeLargeDelim` makes a delimiter in textstyle, but in one of the Size1, + * Size2, Size3, or Size4 fonts. `makeStackedDelim` makes a delimiter out of + * smaller pieces that are stacked on top of one another. + * + * The functions take a parameter `center`, which determines if the delimiter + * should be centered around the axis. + * + * Then, there are three exposed functions. `sizedDelim` makes a delimiter in + * one of the given sizes. This is used for things like `\bigl`. + * `customSizedDelim` makes a delimiter with a given total height+depth. It is + * called in places like `\sqrt`. `leftRightDelim` makes an appropriate + * delimiter which surrounds an expression of a given height an depth. It is + * used in `\left` and `\right`. + */ + +/** + * Get the metrics for a given symbol and font, after transformation (i.e. + * after following replacement from symbols.js) + */ +var getMetrics = function getMetrics(symbol, font, mode) { + var replace = symbols.math[symbol] && symbols.math[symbol].replace; + var metrics = getCharacterMetrics(replace || symbol, font, mode); + + if (!metrics) { + throw new Error("Unsupported symbol " + symbol + " and font size " + font + "."); + } + + return metrics; +}; +/** + * Puts a delimiter span in a given style, and adds appropriate height, depth, + * and maxFontSizes. + */ + + +var styleWrap = function styleWrap(delim, toStyle, options, classes) { + var newOptions = options.havingBaseStyle(toStyle); + var span = buildCommon.makeSpan(classes.concat(newOptions.sizingClasses(options)), [delim], options); + var delimSizeMultiplier = newOptions.sizeMultiplier / options.sizeMultiplier; + span.height *= delimSizeMultiplier; + span.depth *= delimSizeMultiplier; + span.maxFontSize = newOptions.sizeMultiplier; + return span; +}; + +var centerSpan = function centerSpan(span, options, style) { + var newOptions = options.havingBaseStyle(style); + var shift = (1 - options.sizeMultiplier / newOptions.sizeMultiplier) * options.fontMetrics().axisHeight; + span.classes.push("delimcenter"); + span.style.top = makeEm(shift); + span.height -= shift; + span.depth += shift; +}; +/** + * Makes a small delimiter. This is a delimiter that comes in the Main-Regular + * font, but is restyled to either be in textstyle, scriptstyle, or + * scriptscriptstyle. + */ + + +var makeSmallDelim = function makeSmallDelim(delim, style, center, options, mode, classes) { + var text = buildCommon.makeSymbol(delim, "Main-Regular", mode, options); + var span = styleWrap(text, style, options, classes); + + if (center) { + centerSpan(span, options, style); + } + + return span; +}; +/** + * Builds a symbol in the given font size (note size is an integer) + */ + + +var mathrmSize = function mathrmSize(value, size, mode, options) { + return buildCommon.makeSymbol(value, "Size" + size + "-Regular", mode, options); +}; +/** + * Makes a large delimiter. This is a delimiter that comes in the Size1, Size2, + * Size3, or Size4 fonts. It is always rendered in textstyle. + */ + + +var makeLargeDelim = function makeLargeDelim(delim, size, center, options, mode, classes) { + var inner = mathrmSize(delim, size, mode, options); + var span = styleWrap(buildCommon.makeSpan(["delimsizing", "size" + size], [inner], options), Style$1.TEXT, options, classes); + + if (center) { + centerSpan(span, options, Style$1.TEXT); + } + + return span; +}; +/** + * Make a span from a font glyph with the given offset and in the given font. + * This is used in makeStackedDelim to make the stacking pieces for the delimiter. + */ + + +var makeGlyphSpan = function makeGlyphSpan(symbol, font, mode) { + var sizeClass; // Apply the correct CSS class to choose the right font. + + if (font === "Size1-Regular") { + sizeClass = "delim-size1"; + } else + /* if (font === "Size4-Regular") */ + { + sizeClass = "delim-size4"; + } + + var corner = buildCommon.makeSpan(["delimsizinginner", sizeClass], [buildCommon.makeSpan([], [buildCommon.makeSymbol(symbol, font, mode)])]); // Since this will be passed into `makeVList` in the end, wrap the element + // in the appropriate tag that VList uses. + + return { + type: "elem", + elem: corner + }; +}; + +var makeInner = function makeInner(ch, height, options) { + // Create a span with inline SVG for the inner part of a tall stacked delimiter. + var width = fontMetricsData['Size4-Regular'][ch.charCodeAt(0)] ? fontMetricsData['Size4-Regular'][ch.charCodeAt(0)][4] : fontMetricsData['Size1-Regular'][ch.charCodeAt(0)][4]; + var path = new PathNode("inner", innerPath(ch, Math.round(1000 * height))); + var svgNode = new SvgNode([path], { + "width": makeEm(width), + "height": makeEm(height), + // Override CSS rule `.katex svg { width: 100% }` + "style": "width:" + makeEm(width), + "viewBox": "0 0 " + 1000 * width + " " + Math.round(1000 * height), + "preserveAspectRatio": "xMinYMin" + }); + var span = buildCommon.makeSvgSpan([], [svgNode], options); + span.height = height; + span.style.height = makeEm(height); + span.style.width = makeEm(width); + return { + type: "elem", + elem: span + }; +}; // Helpers for makeStackedDelim + + +var lapInEms = 0.008; +var lap = { + type: "kern", + size: -1 * lapInEms +}; +var verts = ["|", "\\lvert", "\\rvert", "\\vert"]; +var doubleVerts = ["\\|", "\\lVert", "\\rVert", "\\Vert"]; +/** + * Make a stacked delimiter out of a given delimiter, with the total height at + * least `heightTotal`. This routine is mentioned on page 442 of the TeXbook. + */ + +var makeStackedDelim = function makeStackedDelim(delim, heightTotal, center, options, mode, classes) { + // There are four parts, the top, an optional middle, a repeated part, and a + // bottom. + var top; + var middle; + var repeat; + var bottom; + var svgLabel = ""; + var viewBoxWidth = 0; + top = repeat = bottom = delim; + middle = null; // Also keep track of what font the delimiters are in + + var font = "Size1-Regular"; // We set the parts and font based on the symbol. Note that we use + // '\u23d0' instead of '|' and '\u2016' instead of '\\|' for the + // repeats of the arrows + + if (delim === "\\uparrow") { + repeat = bottom = "\u23d0"; + } else if (delim === "\\Uparrow") { + repeat = bottom = "\u2016"; + } else if (delim === "\\downarrow") { + top = repeat = "\u23d0"; + } else if (delim === "\\Downarrow") { + top = repeat = "\u2016"; + } else if (delim === "\\updownarrow") { + top = "\\uparrow"; + repeat = "\u23d0"; + bottom = "\\downarrow"; + } else if (delim === "\\Updownarrow") { + top = "\\Uparrow"; + repeat = "\u2016"; + bottom = "\\Downarrow"; + } else if (utils.contains(verts, delim)) { + repeat = "\u2223"; + svgLabel = "vert"; + viewBoxWidth = 333; + } else if (utils.contains(doubleVerts, delim)) { + repeat = "\u2225"; + svgLabel = "doublevert"; + viewBoxWidth = 556; + } else if (delim === "[" || delim === "\\lbrack") { + top = "\u23a1"; + repeat = "\u23a2"; + bottom = "\u23a3"; + font = "Size4-Regular"; + svgLabel = "lbrack"; + viewBoxWidth = 667; + } else if (delim === "]" || delim === "\\rbrack") { + top = "\u23a4"; + repeat = "\u23a5"; + bottom = "\u23a6"; + font = "Size4-Regular"; + svgLabel = "rbrack"; + viewBoxWidth = 667; + } else if (delim === "\\lfloor" || delim === "\u230a") { + repeat = top = "\u23a2"; + bottom = "\u23a3"; + font = "Size4-Regular"; + svgLabel = "lfloor"; + viewBoxWidth = 667; + } else if (delim === "\\lceil" || delim === "\u2308") { + top = "\u23a1"; + repeat = bottom = "\u23a2"; + font = "Size4-Regular"; + svgLabel = "lceil"; + viewBoxWidth = 667; + } else if (delim === "\\rfloor" || delim === "\u230b") { + repeat = top = "\u23a5"; + bottom = "\u23a6"; + font = "Size4-Regular"; + svgLabel = "rfloor"; + viewBoxWidth = 667; + } else if (delim === "\\rceil" || delim === "\u2309") { + top = "\u23a4"; + repeat = bottom = "\u23a5"; + font = "Size4-Regular"; + svgLabel = "rceil"; + viewBoxWidth = 667; + } else if (delim === "(" || delim === "\\lparen") { + top = "\u239b"; + repeat = "\u239c"; + bottom = "\u239d"; + font = "Size4-Regular"; + svgLabel = "lparen"; + viewBoxWidth = 875; + } else if (delim === ")" || delim === "\\rparen") { + top = "\u239e"; + repeat = "\u239f"; + bottom = "\u23a0"; + font = "Size4-Regular"; + svgLabel = "rparen"; + viewBoxWidth = 875; + } else if (delim === "\\{" || delim === "\\lbrace") { + top = "\u23a7"; + middle = "\u23a8"; + bottom = "\u23a9"; + repeat = "\u23aa"; + font = "Size4-Regular"; + } else if (delim === "\\}" || delim === "\\rbrace") { + top = "\u23ab"; + middle = "\u23ac"; + bottom = "\u23ad"; + repeat = "\u23aa"; + font = "Size4-Regular"; + } else if (delim === "\\lgroup" || delim === "\u27ee") { + top = "\u23a7"; + bottom = "\u23a9"; + repeat = "\u23aa"; + font = "Size4-Regular"; + } else if (delim === "\\rgroup" || delim === "\u27ef") { + top = "\u23ab"; + bottom = "\u23ad"; + repeat = "\u23aa"; + font = "Size4-Regular"; + } else if (delim === "\\lmoustache" || delim === "\u23b0") { + top = "\u23a7"; + bottom = "\u23ad"; + repeat = "\u23aa"; + font = "Size4-Regular"; + } else if (delim === "\\rmoustache" || delim === "\u23b1") { + top = "\u23ab"; + bottom = "\u23a9"; + repeat = "\u23aa"; + font = "Size4-Regular"; + } // Get the metrics of the four sections + + + var topMetrics = getMetrics(top, font, mode); + var topHeightTotal = topMetrics.height + topMetrics.depth; + var repeatMetrics = getMetrics(repeat, font, mode); + var repeatHeightTotal = repeatMetrics.height + repeatMetrics.depth; + var bottomMetrics = getMetrics(bottom, font, mode); + var bottomHeightTotal = bottomMetrics.height + bottomMetrics.depth; + var middleHeightTotal = 0; + var middleFactor = 1; + + if (middle !== null) { + var middleMetrics = getMetrics(middle, font, mode); + middleHeightTotal = middleMetrics.height + middleMetrics.depth; + middleFactor = 2; // repeat symmetrically above and below middle + } // Calculate the minimal height that the delimiter can have. + // It is at least the size of the top, bottom, and optional middle combined. + + + var minHeight = topHeightTotal + bottomHeightTotal + middleHeightTotal; // Compute the number of copies of the repeat symbol we will need + + var repeatCount = Math.max(0, Math.ceil((heightTotal - minHeight) / (middleFactor * repeatHeightTotal))); // Compute the total height of the delimiter including all the symbols + + var realHeightTotal = minHeight + repeatCount * middleFactor * repeatHeightTotal; // The center of the delimiter is placed at the center of the axis. Note + // that in this context, "center" means that the delimiter should be + // centered around the axis in the current style, while normally it is + // centered around the axis in textstyle. + + var axisHeight = options.fontMetrics().axisHeight; + + if (center) { + axisHeight *= options.sizeMultiplier; + } // Calculate the depth + + + var depth = realHeightTotal / 2 - axisHeight; // Now, we start building the pieces that will go into the vlist + // Keep a list of the pieces of the stacked delimiter + + var stack = []; + + if (svgLabel.length > 0) { + // Instead of stacking glyphs, create a single SVG. + // This evades browser problems with imprecise positioning of spans. + var midHeight = realHeightTotal - topHeightTotal - bottomHeightTotal; + var viewBoxHeight = Math.round(realHeightTotal * 1000); + var pathStr = tallDelim(svgLabel, Math.round(midHeight * 1000)); + var path = new PathNode(svgLabel, pathStr); + var width = (viewBoxWidth / 1000).toFixed(3) + "em"; + var height = (viewBoxHeight / 1000).toFixed(3) + "em"; + var svg = new SvgNode([path], { + "width": width, + "height": height, + "viewBox": "0 0 " + viewBoxWidth + " " + viewBoxHeight + }); + var wrapper = buildCommon.makeSvgSpan([], [svg], options); + wrapper.height = viewBoxHeight / 1000; + wrapper.style.width = width; + wrapper.style.height = height; + stack.push({ + type: "elem", + elem: wrapper + }); + } else { + // Stack glyphs + // Start by adding the bottom symbol + stack.push(makeGlyphSpan(bottom, font, mode)); + stack.push(lap); // overlap + + if (middle === null) { + // The middle section will be an SVG. Make it an extra 0.016em tall. + // We'll overlap by 0.008em at top and bottom. + var innerHeight = realHeightTotal - topHeightTotal - bottomHeightTotal + 2 * lapInEms; + stack.push(makeInner(repeat, innerHeight, options)); + } else { + // When there is a middle bit, we need the middle part and two repeated + // sections + var _innerHeight = (realHeightTotal - topHeightTotal - bottomHeightTotal - middleHeightTotal) / 2 + 2 * lapInEms; + + stack.push(makeInner(repeat, _innerHeight, options)); // Now insert the middle of the brace. + + stack.push(lap); + stack.push(makeGlyphSpan(middle, font, mode)); + stack.push(lap); + stack.push(makeInner(repeat, _innerHeight, options)); + } // Add the top symbol + + + stack.push(lap); + stack.push(makeGlyphSpan(top, font, mode)); + } // Finally, build the vlist + + + var newOptions = options.havingBaseStyle(Style$1.TEXT); + var inner = buildCommon.makeVList({ + positionType: "bottom", + positionData: depth, + children: stack + }, newOptions); + return styleWrap(buildCommon.makeSpan(["delimsizing", "mult"], [inner], newOptions), Style$1.TEXT, options, classes); +}; // All surds have 0.08em padding above the vinculum inside the SVG. +// That keeps browser span height rounding error from pinching the line. + + +var vbPad = 80; // padding above the surd, measured inside the viewBox. + +var emPad = 0.08; // padding, in ems, measured in the document. + +var sqrtSvg = function sqrtSvg(sqrtName, height, viewBoxHeight, extraVinculum, options) { + var path = sqrtPath(sqrtName, extraVinculum, viewBoxHeight); + var pathNode = new PathNode(sqrtName, path); + var svg = new SvgNode([pathNode], { + // Note: 1000:1 ratio of viewBox to document em width. + "width": "400em", + "height": makeEm(height), + "viewBox": "0 0 400000 " + viewBoxHeight, + "preserveAspectRatio": "xMinYMin slice" + }); + return buildCommon.makeSvgSpan(["hide-tail"], [svg], options); +}; +/** + * Make a sqrt image of the given height, + */ + + +var makeSqrtImage = function makeSqrtImage(height, options) { + // Define a newOptions that removes the effect of size changes such as \Huge. + // We don't pick different a height surd for \Huge. For it, we scale up. + var newOptions = options.havingBaseSizing(); // Pick the desired surd glyph from a sequence of surds. + + var delim = traverseSequence("\\surd", height * newOptions.sizeMultiplier, stackLargeDelimiterSequence, newOptions); + var sizeMultiplier = newOptions.sizeMultiplier; // default + // The standard sqrt SVGs each have a 0.04em thick vinculum. + // If Settings.minRuleThickness is larger than that, we add extraVinculum. + + var extraVinculum = Math.max(0, options.minRuleThickness - options.fontMetrics().sqrtRuleThickness); // Create a span containing an SVG image of a sqrt symbol. + + var span; + var spanHeight = 0; + var texHeight = 0; + var viewBoxHeight = 0; + var advanceWidth; // We create viewBoxes with 80 units of "padding" above each surd. + // Then browser rounding error on the parent span height will not + // encroach on the ink of the vinculum. But that padding is not + // included in the TeX-like `height` used for calculation of + // vertical alignment. So texHeight = span.height < span.style.height. + + if (delim.type === "small") { + // Get an SVG that is derived from glyph U+221A in font KaTeX-Main. + // 1000 unit normal glyph height. + viewBoxHeight = 1000 + 1000 * extraVinculum + vbPad; + + if (height < 1.0) { + sizeMultiplier = 1.0; // mimic a \textfont radical + } else if (height < 1.4) { + sizeMultiplier = 0.7; // mimic a \scriptfont radical + } + + spanHeight = (1.0 + extraVinculum + emPad) / sizeMultiplier; + texHeight = (1.00 + extraVinculum) / sizeMultiplier; + span = sqrtSvg("sqrtMain", spanHeight, viewBoxHeight, extraVinculum, options); + span.style.minWidth = "0.853em"; + advanceWidth = 0.833 / sizeMultiplier; // from the font. + } else if (delim.type === "large") { + // These SVGs come from fonts: KaTeX_Size1, _Size2, etc. + viewBoxHeight = (1000 + vbPad) * sizeToMaxHeight[delim.size]; + texHeight = (sizeToMaxHeight[delim.size] + extraVinculum) / sizeMultiplier; + spanHeight = (sizeToMaxHeight[delim.size] + extraVinculum + emPad) / sizeMultiplier; + span = sqrtSvg("sqrtSize" + delim.size, spanHeight, viewBoxHeight, extraVinculum, options); + span.style.minWidth = "1.02em"; + advanceWidth = 1.0 / sizeMultiplier; // 1.0 from the font. + } else { + // Tall sqrt. In TeX, this would be stacked using multiple glyphs. + // We'll use a single SVG to accomplish the same thing. + spanHeight = height + extraVinculum + emPad; + texHeight = height + extraVinculum; + viewBoxHeight = Math.floor(1000 * height + extraVinculum) + vbPad; + span = sqrtSvg("sqrtTall", spanHeight, viewBoxHeight, extraVinculum, options); + span.style.minWidth = "0.742em"; + advanceWidth = 1.056; + } + + span.height = texHeight; + span.style.height = makeEm(spanHeight); + return { + span, + advanceWidth, + // Calculate the actual line width. + // This actually should depend on the chosen font -- e.g. \boldmath + // should use the thicker surd symbols from e.g. KaTeX_Main-Bold, and + // have thicker rules. + ruleWidth: (options.fontMetrics().sqrtRuleThickness + extraVinculum) * sizeMultiplier + }; +}; // There are three kinds of delimiters, delimiters that stack when they become +// too large + + +var stackLargeDelimiters = ["(", "\\lparen", ")", "\\rparen", "[", "\\lbrack", "]", "\\rbrack", "\\{", "\\lbrace", "\\}", "\\rbrace", "\\lfloor", "\\rfloor", "\u230a", "\u230b", "\\lceil", "\\rceil", "\u2308", "\u2309", "\\surd"]; // delimiters that always stack + +var stackAlwaysDelimiters = ["\\uparrow", "\\downarrow", "\\updownarrow", "\\Uparrow", "\\Downarrow", "\\Updownarrow", "|", "\\|", "\\vert", "\\Vert", "\\lvert", "\\rvert", "\\lVert", "\\rVert", "\\lgroup", "\\rgroup", "\u27ee", "\u27ef", "\\lmoustache", "\\rmoustache", "\u23b0", "\u23b1"]; // and delimiters that never stack + +var stackNeverDelimiters = ["<", ">", "\\langle", "\\rangle", "/", "\\backslash", "\\lt", "\\gt"]; // Metrics of the different sizes. Found by looking at TeX's output of +// $\bigl| // \Bigl| \biggl| \Biggl| \showlists$ +// Used to create stacked delimiters of appropriate sizes in makeSizedDelim. + +var sizeToMaxHeight = [0, 1.2, 1.8, 2.4, 3.0]; +/** + * Used to create a delimiter of a specific size, where `size` is 1, 2, 3, or 4. + */ + +var makeSizedDelim = function makeSizedDelim(delim, size, options, mode, classes) { + // < and > turn into \langle and \rangle in delimiters + if (delim === "<" || delim === "\\lt" || delim === "\u27e8") { + delim = "\\langle"; + } else if (delim === ">" || delim === "\\gt" || delim === "\u27e9") { + delim = "\\rangle"; + } // Sized delimiters are never centered. + + + if (utils.contains(stackLargeDelimiters, delim) || utils.contains(stackNeverDelimiters, delim)) { + return makeLargeDelim(delim, size, false, options, mode, classes); + } else if (utils.contains(stackAlwaysDelimiters, delim)) { + return makeStackedDelim(delim, sizeToMaxHeight[size], false, options, mode, classes); + } else { + throw new ParseError("Illegal delimiter: '" + delim + "'"); + } +}; +/** + * There are three different sequences of delimiter sizes that the delimiters + * follow depending on the kind of delimiter. This is used when creating custom + * sized delimiters to decide whether to create a small, large, or stacked + * delimiter. + * + * In real TeX, these sequences aren't explicitly defined, but are instead + * defined inside the font metrics. Since there are only three sequences that + * are possible for the delimiters that TeX defines, it is easier to just encode + * them explicitly here. + */ + + +// Delimiters that never stack try small delimiters and large delimiters only +var stackNeverDelimiterSequence = [{ + type: "small", + style: Style$1.SCRIPTSCRIPT +}, { + type: "small", + style: Style$1.SCRIPT +}, { + type: "small", + style: Style$1.TEXT +}, { + type: "large", + size: 1 +}, { + type: "large", + size: 2 +}, { + type: "large", + size: 3 +}, { + type: "large", + size: 4 +}]; // Delimiters that always stack try the small delimiters first, then stack + +var stackAlwaysDelimiterSequence = [{ + type: "small", + style: Style$1.SCRIPTSCRIPT +}, { + type: "small", + style: Style$1.SCRIPT +}, { + type: "small", + style: Style$1.TEXT +}, { + type: "stack" +}]; // Delimiters that stack when large try the small and then large delimiters, and +// stack afterwards + +var stackLargeDelimiterSequence = [{ + type: "small", + style: Style$1.SCRIPTSCRIPT +}, { + type: "small", + style: Style$1.SCRIPT +}, { + type: "small", + style: Style$1.TEXT +}, { + type: "large", + size: 1 +}, { + type: "large", + size: 2 +}, { + type: "large", + size: 3 +}, { + type: "large", + size: 4 +}, { + type: "stack" +}]; +/** + * Get the font used in a delimiter based on what kind of delimiter it is. + * TODO(#963) Use more specific font family return type once that is introduced. + */ + +var delimTypeToFont = function delimTypeToFont(type) { + if (type.type === "small") { + return "Main-Regular"; + } else if (type.type === "large") { + return "Size" + type.size + "-Regular"; + } else if (type.type === "stack") { + return "Size4-Regular"; + } else { + throw new Error("Add support for delim type '" + type.type + "' here."); + } +}; +/** + * Traverse a sequence of types of delimiters to decide what kind of delimiter + * should be used to create a delimiter of the given height+depth. + */ + + +var traverseSequence = function traverseSequence(delim, height, sequence, options) { + // Here, we choose the index we should start at in the sequences. In smaller + // sizes (which correspond to larger numbers in style.size) we start earlier + // in the sequence. Thus, scriptscript starts at index 3-3=0, script starts + // at index 3-2=1, text starts at 3-1=2, and display starts at min(2,3-0)=2 + var start = Math.min(2, 3 - options.style.size); + + for (var i = start; i < sequence.length; i++) { + if (sequence[i].type === "stack") { + // This is always the last delimiter, so we just break the loop now. + break; + } + + var metrics = getMetrics(delim, delimTypeToFont(sequence[i]), "math"); + var heightDepth = metrics.height + metrics.depth; // Small delimiters are scaled down versions of the same font, so we + // account for the style change size. + + if (sequence[i].type === "small") { + var newOptions = options.havingBaseStyle(sequence[i].style); + heightDepth *= newOptions.sizeMultiplier; + } // Check if the delimiter at this size works for the given height. + + + if (heightDepth > height) { + return sequence[i]; + } + } // If we reached the end of the sequence, return the last sequence element. + + + return sequence[sequence.length - 1]; +}; +/** + * Make a delimiter of a given height+depth, with optional centering. Here, we + * traverse the sequences, and create a delimiter that the sequence tells us to. + */ + + +var makeCustomSizedDelim = function makeCustomSizedDelim(delim, height, center, options, mode, classes) { + if (delim === "<" || delim === "\\lt" || delim === "\u27e8") { + delim = "\\langle"; + } else if (delim === ">" || delim === "\\gt" || delim === "\u27e9") { + delim = "\\rangle"; + } // Decide what sequence to use + + + var sequence; + + if (utils.contains(stackNeverDelimiters, delim)) { + sequence = stackNeverDelimiterSequence; + } else if (utils.contains(stackLargeDelimiters, delim)) { + sequence = stackLargeDelimiterSequence; + } else { + sequence = stackAlwaysDelimiterSequence; + } // Look through the sequence + + + var delimType = traverseSequence(delim, height, sequence, options); // Get the delimiter from font glyphs. + // Depending on the sequence element we decided on, call the + // appropriate function. + + if (delimType.type === "small") { + return makeSmallDelim(delim, delimType.style, center, options, mode, classes); + } else if (delimType.type === "large") { + return makeLargeDelim(delim, delimType.size, center, options, mode, classes); + } else + /* if (delimType.type === "stack") */ + { + return makeStackedDelim(delim, height, center, options, mode, classes); + } +}; +/** + * Make a delimiter for use with `\left` and `\right`, given a height and depth + * of an expression that the delimiters surround. + */ + + +var makeLeftRightDelim = function makeLeftRightDelim(delim, height, depth, options, mode, classes) { + // We always center \left/\right delimiters, so the axis is always shifted + var axisHeight = options.fontMetrics().axisHeight * options.sizeMultiplier; // Taken from TeX source, tex.web, function make_left_right + + var delimiterFactor = 901; + var delimiterExtend = 5.0 / options.fontMetrics().ptPerEm; + var maxDistFromAxis = Math.max(height - axisHeight, depth + axisHeight); + var totalHeight = Math.max( // In real TeX, calculations are done using integral values which are + // 65536 per pt, or 655360 per em. So, the division here truncates in + // TeX but doesn't here, producing different results. If we wanted to + // exactly match TeX's calculation, we could do + // Math.floor(655360 * maxDistFromAxis / 500) * + // delimiterFactor / 655360 + // (To see the difference, compare + // x^{x^{\left(\rule{0.1em}{0.68em}\right)}} + // in TeX and KaTeX) + maxDistFromAxis / 500 * delimiterFactor, 2 * maxDistFromAxis - delimiterExtend); // Finally, we defer to `makeCustomSizedDelim` with our calculated total + // height + + return makeCustomSizedDelim(delim, totalHeight, true, options, mode, classes); +}; + +var delimiter = { + sqrtImage: makeSqrtImage, + sizedDelim: makeSizedDelim, + sizeToMaxHeight: sizeToMaxHeight, + customSizedDelim: makeCustomSizedDelim, + leftRightDelim: makeLeftRightDelim +}; + +// Extra data needed for the delimiter handler down below +var delimiterSizes = { + "\\bigl": { + mclass: "mopen", + size: 1 + }, + "\\Bigl": { + mclass: "mopen", + size: 2 + }, + "\\biggl": { + mclass: "mopen", + size: 3 + }, + "\\Biggl": { + mclass: "mopen", + size: 4 + }, + "\\bigr": { + mclass: "mclose", + size: 1 + }, + "\\Bigr": { + mclass: "mclose", + size: 2 + }, + "\\biggr": { + mclass: "mclose", + size: 3 + }, + "\\Biggr": { + mclass: "mclose", + size: 4 + }, + "\\bigm": { + mclass: "mrel", + size: 1 + }, + "\\Bigm": { + mclass: "mrel", + size: 2 + }, + "\\biggm": { + mclass: "mrel", + size: 3 + }, + "\\Biggm": { + mclass: "mrel", + size: 4 + }, + "\\big": { + mclass: "mord", + size: 1 + }, + "\\Big": { + mclass: "mord", + size: 2 + }, + "\\bigg": { + mclass: "mord", + size: 3 + }, + "\\Bigg": { + mclass: "mord", + size: 4 + } +}; +var delimiters = ["(", "\\lparen", ")", "\\rparen", "[", "\\lbrack", "]", "\\rbrack", "\\{", "\\lbrace", "\\}", "\\rbrace", "\\lfloor", "\\rfloor", "\u230a", "\u230b", "\\lceil", "\\rceil", "\u2308", "\u2309", "<", ">", "\\langle", "\u27e8", "\\rangle", "\u27e9", "\\lt", "\\gt", "\\lvert", "\\rvert", "\\lVert", "\\rVert", "\\lgroup", "\\rgroup", "\u27ee", "\u27ef", "\\lmoustache", "\\rmoustache", "\u23b0", "\u23b1", "/", "\\backslash", "|", "\\vert", "\\|", "\\Vert", "\\uparrow", "\\Uparrow", "\\downarrow", "\\Downarrow", "\\updownarrow", "\\Updownarrow", "."]; + +// Delimiter functions +function checkDelimiter(delim, context) { + var symDelim = checkSymbolNodeType(delim); + + if (symDelim && utils.contains(delimiters, symDelim.text)) { + return symDelim; + } else if (symDelim) { + throw new ParseError("Invalid delimiter '" + symDelim.text + "' after '" + context.funcName + "'", delim); + } else { + throw new ParseError("Invalid delimiter type '" + delim.type + "'", delim); + } +} + +defineFunction({ + type: "delimsizing", + names: ["\\bigl", "\\Bigl", "\\biggl", "\\Biggl", "\\bigr", "\\Bigr", "\\biggr", "\\Biggr", "\\bigm", "\\Bigm", "\\biggm", "\\Biggm", "\\big", "\\Big", "\\bigg", "\\Bigg"], + props: { + numArgs: 1, + argTypes: ["primitive"] + }, + handler: (context, args) => { + var delim = checkDelimiter(args[0], context); + return { + type: "delimsizing", + mode: context.parser.mode, + size: delimiterSizes[context.funcName].size, + mclass: delimiterSizes[context.funcName].mclass, + delim: delim.text + }; + }, + htmlBuilder: (group, options) => { + if (group.delim === ".") { + // Empty delimiters still count as elements, even though they don't + // show anything. + return buildCommon.makeSpan([group.mclass]); + } // Use delimiter.sizedDelim to generate the delimiter. + + + return delimiter.sizedDelim(group.delim, group.size, options, group.mode, [group.mclass]); + }, + mathmlBuilder: group => { + var children = []; + + if (group.delim !== ".") { + children.push(makeText(group.delim, group.mode)); + } + + var node = new mathMLTree.MathNode("mo", children); + + if (group.mclass === "mopen" || group.mclass === "mclose") { + // Only some of the delimsizing functions act as fences, and they + // return "mopen" or "mclose" mclass. + node.setAttribute("fence", "true"); + } else { + // Explicitly disable fencing if it's not a fence, to override the + // defaults. + node.setAttribute("fence", "false"); + } + + node.setAttribute("stretchy", "true"); + var size = makeEm(delimiter.sizeToMaxHeight[group.size]); + node.setAttribute("minsize", size); + node.setAttribute("maxsize", size); + return node; + } +}); + +function assertParsed(group) { + if (!group.body) { + throw new Error("Bug: The leftright ParseNode wasn't fully parsed."); + } +} + +defineFunction({ + type: "leftright-right", + names: ["\\right"], + props: { + numArgs: 1, + primitive: true + }, + handler: (context, args) => { + // \left case below triggers parsing of \right in + // `const right = parser.parseFunction();` + // uses this return value. + var color = context.parser.gullet.macros.get("\\current@color"); + + if (color && typeof color !== "string") { + throw new ParseError("\\current@color set to non-string in \\right"); + } + + return { + type: "leftright-right", + mode: context.parser.mode, + delim: checkDelimiter(args[0], context).text, + color // undefined if not set via \color + + }; + } +}); +defineFunction({ + type: "leftright", + names: ["\\left"], + props: { + numArgs: 1, + primitive: true + }, + handler: (context, args) => { + var delim = checkDelimiter(args[0], context); + var parser = context.parser; // Parse out the implicit body + + ++parser.leftrightDepth; // parseExpression stops before '\\right' + + var body = parser.parseExpression(false); + --parser.leftrightDepth; // Check the next token + + parser.expect("\\right", false); + var right = assertNodeType(parser.parseFunction(), "leftright-right"); + return { + type: "leftright", + mode: parser.mode, + body, + left: delim.text, + right: right.delim, + rightColor: right.color + }; + }, + htmlBuilder: (group, options) => { + assertParsed(group); // Build the inner expression + + var inner = buildExpression$1(group.body, options, true, ["mopen", "mclose"]); + var innerHeight = 0; + var innerDepth = 0; + var hadMiddle = false; // Calculate its height and depth + + for (var i = 0; i < inner.length; i++) { + // Property `isMiddle` not defined on `span`. See comment in + // "middle"'s htmlBuilder. + // $FlowFixMe + if (inner[i].isMiddle) { + hadMiddle = true; + } else { + innerHeight = Math.max(inner[i].height, innerHeight); + innerDepth = Math.max(inner[i].depth, innerDepth); + } + } // The size of delimiters is the same, regardless of what style we are + // in. Thus, to correctly calculate the size of delimiter we need around + // a group, we scale down the inner size based on the size. + + + innerHeight *= options.sizeMultiplier; + innerDepth *= options.sizeMultiplier; + var leftDelim; + + if (group.left === ".") { + // Empty delimiters in \left and \right make null delimiter spaces. + leftDelim = makeNullDelimiter(options, ["mopen"]); + } else { + // Otherwise, use leftRightDelim to generate the correct sized + // delimiter. + leftDelim = delimiter.leftRightDelim(group.left, innerHeight, innerDepth, options, group.mode, ["mopen"]); + } // Add it to the beginning of the expression + + + inner.unshift(leftDelim); // Handle middle delimiters + + if (hadMiddle) { + for (var _i = 1; _i < inner.length; _i++) { + var middleDelim = inner[_i]; // Property `isMiddle` not defined on `span`. See comment in + // "middle"'s htmlBuilder. + // $FlowFixMe + + var isMiddle = middleDelim.isMiddle; + + if (isMiddle) { + // Apply the options that were active when \middle was called + inner[_i] = delimiter.leftRightDelim(isMiddle.delim, innerHeight, innerDepth, isMiddle.options, group.mode, []); + } + } + } + + var rightDelim; // Same for the right delimiter, but using color specified by \color + + if (group.right === ".") { + rightDelim = makeNullDelimiter(options, ["mclose"]); + } else { + var colorOptions = group.rightColor ? options.withColor(group.rightColor) : options; + rightDelim = delimiter.leftRightDelim(group.right, innerHeight, innerDepth, colorOptions, group.mode, ["mclose"]); + } // Add it to the end of the expression. + + + inner.push(rightDelim); + return buildCommon.makeSpan(["minner"], inner, options); + }, + mathmlBuilder: (group, options) => { + assertParsed(group); + var inner = buildExpression(group.body, options); + + if (group.left !== ".") { + var leftNode = new mathMLTree.MathNode("mo", [makeText(group.left, group.mode)]); + leftNode.setAttribute("fence", "true"); + inner.unshift(leftNode); + } + + if (group.right !== ".") { + var rightNode = new mathMLTree.MathNode("mo", [makeText(group.right, group.mode)]); + rightNode.setAttribute("fence", "true"); + + if (group.rightColor) { + rightNode.setAttribute("mathcolor", group.rightColor); + } + + inner.push(rightNode); + } + + return makeRow(inner); + } +}); +defineFunction({ + type: "middle", + names: ["\\middle"], + props: { + numArgs: 1, + primitive: true + }, + handler: (context, args) => { + var delim = checkDelimiter(args[0], context); + + if (!context.parser.leftrightDepth) { + throw new ParseError("\\middle without preceding \\left", delim); + } + + return { + type: "middle", + mode: context.parser.mode, + delim: delim.text + }; + }, + htmlBuilder: (group, options) => { + var middleDelim; + + if (group.delim === ".") { + middleDelim = makeNullDelimiter(options, []); + } else { + middleDelim = delimiter.sizedDelim(group.delim, 1, options, group.mode, []); + var isMiddle = { + delim: group.delim, + options + }; // Property `isMiddle` not defined on `span`. It is only used in + // this file above. + // TODO: Fix this violation of the `span` type and possibly rename + // things since `isMiddle` sounds like a boolean, but is a struct. + // $FlowFixMe + + middleDelim.isMiddle = isMiddle; + } + + return middleDelim; + }, + mathmlBuilder: (group, options) => { + // A Firefox \middle will stretch a character vertically only if it + // is in the fence part of the operator dictionary at: + // https://www.w3.org/TR/MathML3/appendixc.html. + // So we need to avoid U+2223 and use plain "|" instead. + var textNode = group.delim === "\\vert" || group.delim === "|" ? makeText("|", "text") : makeText(group.delim, group.mode); + var middleNode = new mathMLTree.MathNode("mo", [textNode]); + middleNode.setAttribute("fence", "true"); // MathML gives 5/18em spacing to each element. + // \middle should get delimiter spacing instead. + + middleNode.setAttribute("lspace", "0.05em"); + middleNode.setAttribute("rspace", "0.05em"); + return middleNode; + } +}); + +var htmlBuilder$7 = (group, options) => { + // \cancel, \bcancel, \xcancel, \sout, \fbox, \colorbox, \fcolorbox, \phase + // Some groups can return document fragments. Handle those by wrapping + // them in a span. + var inner = buildCommon.wrapFragment(buildGroup$1(group.body, options), options); + var label = group.label.slice(1); + var scale = options.sizeMultiplier; + var img; + var imgShift = 0; // In the LaTeX cancel package, line geometry is slightly different + // depending on whether the subject is wider than it is tall, or vice versa. + // We don't know the width of a group, so as a proxy, we test if + // the subject is a single character. This captures most of the + // subjects that should get the "tall" treatment. + + var isSingleChar = utils.isCharacterBox(group.body); + + if (label === "sout") { + img = buildCommon.makeSpan(["stretchy", "sout"]); + img.height = options.fontMetrics().defaultRuleThickness / scale; + imgShift = -0.5 * options.fontMetrics().xHeight; + } else if (label === "phase") { + // Set a couple of dimensions from the steinmetz package. + var lineWeight = calculateSize({ + number: 0.6, + unit: "pt" + }, options); + var clearance = calculateSize({ + number: 0.35, + unit: "ex" + }, options); // Prevent size changes like \Huge from affecting line thickness + + var newOptions = options.havingBaseSizing(); + scale = scale / newOptions.sizeMultiplier; + var angleHeight = inner.height + inner.depth + lineWeight + clearance; // Reserve a left pad for the angle. + + inner.style.paddingLeft = makeEm(angleHeight / 2 + lineWeight); // Create an SVG + + var viewBoxHeight = Math.floor(1000 * angleHeight * scale); + var path = phasePath(viewBoxHeight); + var svgNode = new SvgNode([new PathNode("phase", path)], { + "width": "400em", + "height": makeEm(viewBoxHeight / 1000), + "viewBox": "0 0 400000 " + viewBoxHeight, + "preserveAspectRatio": "xMinYMin slice" + }); // Wrap it in a span with overflow: hidden. + + img = buildCommon.makeSvgSpan(["hide-tail"], [svgNode], options); + img.style.height = makeEm(angleHeight); + imgShift = inner.depth + lineWeight + clearance; + } else { + // Add horizontal padding + if (/cancel/.test(label)) { + if (!isSingleChar) { + inner.classes.push("cancel-pad"); + } + } else if (label === "angl") { + inner.classes.push("anglpad"); + } else { + inner.classes.push("boxpad"); + } // Add vertical padding + + + var topPad = 0; + var bottomPad = 0; + var ruleThickness = 0; // ref: cancel package: \advance\totalheight2\p@ % "+2" + + if (/box/.test(label)) { + ruleThickness = Math.max(options.fontMetrics().fboxrule, // default + options.minRuleThickness // User override. + ); + topPad = options.fontMetrics().fboxsep + (label === "colorbox" ? 0 : ruleThickness); + bottomPad = topPad; + } else if (label === "angl") { + ruleThickness = Math.max(options.fontMetrics().defaultRuleThickness, options.minRuleThickness); + topPad = 4 * ruleThickness; // gap = 3 × line, plus the line itself. + + bottomPad = Math.max(0, 0.25 - inner.depth); + } else { + topPad = isSingleChar ? 0.2 : 0; + bottomPad = topPad; + } + + img = stretchy.encloseSpan(inner, label, topPad, bottomPad, options); + + if (/fbox|boxed|fcolorbox/.test(label)) { + img.style.borderStyle = "solid"; + img.style.borderWidth = makeEm(ruleThickness); + } else if (label === "angl" && ruleThickness !== 0.049) { + img.style.borderTopWidth = makeEm(ruleThickness); + img.style.borderRightWidth = makeEm(ruleThickness); + } + + imgShift = inner.depth + bottomPad; + + if (group.backgroundColor) { + img.style.backgroundColor = group.backgroundColor; + + if (group.borderColor) { + img.style.borderColor = group.borderColor; + } + } + } + + var vlist; + + if (group.backgroundColor) { + vlist = buildCommon.makeVList({ + positionType: "individualShift", + children: [// Put the color background behind inner; + { + type: "elem", + elem: img, + shift: imgShift + }, { + type: "elem", + elem: inner, + shift: 0 + }] + }, options); + } else { + var classes = /cancel|phase/.test(label) ? ["svg-align"] : []; + vlist = buildCommon.makeVList({ + positionType: "individualShift", + children: [// Write the \cancel stroke on top of inner. + { + type: "elem", + elem: inner, + shift: 0 + }, { + type: "elem", + elem: img, + shift: imgShift, + wrapperClasses: classes + }] + }, options); + } + + if (/cancel/.test(label)) { + // The cancel package documentation says that cancel lines add their height + // to the expression, but tests show that isn't how it actually works. + vlist.height = inner.height; + vlist.depth = inner.depth; + } + + if (/cancel/.test(label) && !isSingleChar) { + // cancel does not create horiz space for its line extension. + return buildCommon.makeSpan(["mord", "cancel-lap"], [vlist], options); + } else { + return buildCommon.makeSpan(["mord"], [vlist], options); + } +}; + +var mathmlBuilder$6 = (group, options) => { + var fboxsep = 0; + var node = new mathMLTree.MathNode(group.label.indexOf("colorbox") > -1 ? "mpadded" : "menclose", [buildGroup(group.body, options)]); + + switch (group.label) { + case "\\cancel": + node.setAttribute("notation", "updiagonalstrike"); + break; + + case "\\bcancel": + node.setAttribute("notation", "downdiagonalstrike"); + break; + + case "\\phase": + node.setAttribute("notation", "phasorangle"); + break; + + case "\\sout": + node.setAttribute("notation", "horizontalstrike"); + break; + + case "\\fbox": + node.setAttribute("notation", "box"); + break; + + case "\\angl": + node.setAttribute("notation", "actuarial"); + break; + + case "\\fcolorbox": + case "\\colorbox": + // doesn't have a good notation option. So use + // instead. Set some attributes that come included with . + fboxsep = options.fontMetrics().fboxsep * options.fontMetrics().ptPerEm; + node.setAttribute("width", "+" + 2 * fboxsep + "pt"); + node.setAttribute("height", "+" + 2 * fboxsep + "pt"); + node.setAttribute("lspace", fboxsep + "pt"); // + + node.setAttribute("voffset", fboxsep + "pt"); + + if (group.label === "\\fcolorbox") { + var thk = Math.max(options.fontMetrics().fboxrule, // default + options.minRuleThickness // user override + ); + node.setAttribute("style", "border: " + thk + "em solid " + String(group.borderColor)); + } + + break; + + case "\\xcancel": + node.setAttribute("notation", "updiagonalstrike downdiagonalstrike"); + break; + } + + if (group.backgroundColor) { + node.setAttribute("mathbackground", group.backgroundColor); + } + + return node; +}; + +defineFunction({ + type: "enclose", + names: ["\\colorbox"], + props: { + numArgs: 2, + allowedInText: true, + argTypes: ["color", "text"] + }, + + handler(_ref, args, optArgs) { + var { + parser, + funcName + } = _ref; + var color = assertNodeType(args[0], "color-token").color; + var body = args[1]; + return { + type: "enclose", + mode: parser.mode, + label: funcName, + backgroundColor: color, + body + }; + }, + + htmlBuilder: htmlBuilder$7, + mathmlBuilder: mathmlBuilder$6 +}); +defineFunction({ + type: "enclose", + names: ["\\fcolorbox"], + props: { + numArgs: 3, + allowedInText: true, + argTypes: ["color", "color", "text"] + }, + + handler(_ref2, args, optArgs) { + var { + parser, + funcName + } = _ref2; + var borderColor = assertNodeType(args[0], "color-token").color; + var backgroundColor = assertNodeType(args[1], "color-token").color; + var body = args[2]; + return { + type: "enclose", + mode: parser.mode, + label: funcName, + backgroundColor, + borderColor, + body + }; + }, + + htmlBuilder: htmlBuilder$7, + mathmlBuilder: mathmlBuilder$6 +}); +defineFunction({ + type: "enclose", + names: ["\\fbox"], + props: { + numArgs: 1, + argTypes: ["hbox"], + allowedInText: true + }, + + handler(_ref3, args) { + var { + parser + } = _ref3; + return { + type: "enclose", + mode: parser.mode, + label: "\\fbox", + body: args[0] + }; + } + +}); +defineFunction({ + type: "enclose", + names: ["\\cancel", "\\bcancel", "\\xcancel", "\\sout", "\\phase"], + props: { + numArgs: 1 + }, + + handler(_ref4, args) { + var { + parser, + funcName + } = _ref4; + var body = args[0]; + return { + type: "enclose", + mode: parser.mode, + label: funcName, + body + }; + }, + + htmlBuilder: htmlBuilder$7, + mathmlBuilder: mathmlBuilder$6 +}); +defineFunction({ + type: "enclose", + names: ["\\angl"], + props: { + numArgs: 1, + argTypes: ["hbox"], + allowedInText: false + }, + + handler(_ref5, args) { + var { + parser + } = _ref5; + return { + type: "enclose", + mode: parser.mode, + label: "\\angl", + body: args[0] + }; + } + +}); + +/** + * All registered environments. + * `environments.js` exports this same dictionary again and makes it public. + * `Parser.js` requires this dictionary via `environments.js`. + */ +var _environments = {}; +function defineEnvironment(_ref) { + var { + type, + names, + props, + handler, + htmlBuilder, + mathmlBuilder + } = _ref; + // Set default values of environments. + var data = { + type, + numArgs: props.numArgs || 0, + allowedInText: false, + numOptionalArgs: 0, + handler + }; + + for (var i = 0; i < names.length; ++i) { + // TODO: The value type of _environments should be a type union of all + // possible `EnvSpec<>` possibilities instead of `EnvSpec<*>`, which is + // an existential type. + _environments[names[i]] = data; + } + + if (htmlBuilder) { + _htmlGroupBuilders[type] = htmlBuilder; + } + + if (mathmlBuilder) { + _mathmlGroupBuilders[type] = mathmlBuilder; + } +} + +/** + * All registered global/built-in macros. + * `macros.js` exports this same dictionary again and makes it public. + * `Parser.js` requires this dictionary via `macros.js`. + */ +var _macros = {}; // This function might one day accept an additional argument and do more things. + +function defineMacro(name, body) { + _macros[name] = body; +} + +// Helper functions +function getHLines(parser) { + // Return an array. The array length = number of hlines. + // Each element in the array tells if the line is dashed. + var hlineInfo = []; + parser.consumeSpaces(); + var nxt = parser.fetch().text; + + if (nxt === "\\relax") { + // \relax is an artifact of the \cr macro below + parser.consume(); + parser.consumeSpaces(); + nxt = parser.fetch().text; + } + + while (nxt === "\\hline" || nxt === "\\hdashline") { + parser.consume(); + hlineInfo.push(nxt === "\\hdashline"); + parser.consumeSpaces(); + nxt = parser.fetch().text; + } + + return hlineInfo; +} + +var validateAmsEnvironmentContext = context => { + var settings = context.parser.settings; + + if (!settings.displayMode) { + throw new ParseError("{" + context.envName + "} can be used only in" + " display mode."); + } +}; // autoTag (an argument to parseArray) can be one of three values: +// * undefined: Regular (not-top-level) array; no tags on each row +// * true: Automatic equation numbering, overridable by \tag +// * false: Tags allowed on each row, but no automatic numbering +// This function *doesn't* work with the "split" environment name. + + +function getAutoTag(name) { + if (name.indexOf("ed") === -1) { + return name.indexOf("*") === -1; + } // return undefined; + +} +/** + * Parse the body of the environment, with rows delimited by \\ and + * columns delimited by &, and create a nested list in row-major order + * with one group per cell. If given an optional argument style + * ("text", "display", etc.), then each cell is cast into that style. + */ + + +function parseArray(parser, _ref, style) { + var { + hskipBeforeAndAfter, + addJot, + cols, + arraystretch, + colSeparationType, + autoTag, + singleRow, + emptySingleRow, + maxNumCols, + leqno + } = _ref; + parser.gullet.beginGroup(); + + if (!singleRow) { + // \cr is equivalent to \\ without the optional size argument (see below) + // TODO: provide helpful error when \cr is used outside array environment + parser.gullet.macros.set("\\cr", "\\\\\\relax"); + } // Get current arraystretch if it's not set by the environment + + + if (!arraystretch) { + var stretch = parser.gullet.expandMacroAsText("\\arraystretch"); + + if (stretch == null) { + // Default \arraystretch from lttab.dtx + arraystretch = 1; + } else { + arraystretch = parseFloat(stretch); + + if (!arraystretch || arraystretch < 0) { + throw new ParseError("Invalid \\arraystretch: " + stretch); + } + } + } // Start group for first cell + + + parser.gullet.beginGroup(); + var row = []; + var body = [row]; + var rowGaps = []; + var hLinesBeforeRow = []; + var tags = autoTag != null ? [] : undefined; // amsmath uses \global\@eqnswtrue and \global\@eqnswfalse to represent + // whether this row should have an equation number. Simulate this with + // a \@eqnsw macro set to 1 or 0. + + function beginRow() { + if (autoTag) { + parser.gullet.macros.set("\\@eqnsw", "1", true); + } + } + + function endRow() { + if (tags) { + if (parser.gullet.macros.get("\\df@tag")) { + tags.push(parser.subparse([new Token("\\df@tag")])); + parser.gullet.macros.set("\\df@tag", undefined, true); + } else { + tags.push(Boolean(autoTag) && parser.gullet.macros.get("\\@eqnsw") === "1"); + } + } + } + + beginRow(); // Test for \hline at the top of the array. + + hLinesBeforeRow.push(getHLines(parser)); + + while (true) { + // eslint-disable-line no-constant-condition + // Parse each cell in its own group (namespace) + var cell = parser.parseExpression(false, singleRow ? "\\end" : "\\\\"); + parser.gullet.endGroup(); + parser.gullet.beginGroup(); + cell = { + type: "ordgroup", + mode: parser.mode, + body: cell + }; + + if (style) { + cell = { + type: "styling", + mode: parser.mode, + style, + body: [cell] + }; + } + + row.push(cell); + var next = parser.fetch().text; + + if (next === "&") { + if (maxNumCols && row.length === maxNumCols) { + if (singleRow || colSeparationType) { + // {equation} or {split} + throw new ParseError("Too many tab characters: &", parser.nextToken); + } else { + // {array} environment + parser.settings.reportNonstrict("textEnv", "Too few columns " + "specified in the {array} column argument."); + } + } + + parser.consume(); + } else if (next === "\\end") { + endRow(); // Arrays terminate newlines with `\crcr` which consumes a `\cr` if + // the last line is empty. However, AMS environments keep the + // empty row if it's the only one. + // NOTE: Currently, `cell` is the last item added into `row`. + + if (row.length === 1 && cell.type === "styling" && cell.body[0].body.length === 0 && (body.length > 1 || !emptySingleRow)) { + body.pop(); + } + + if (hLinesBeforeRow.length < body.length + 1) { + hLinesBeforeRow.push([]); + } + + break; + } else if (next === "\\\\") { + parser.consume(); + var size = void 0; // \def\Let@{\let\\\math@cr} + // \def\math@cr{...\math@cr@} + // \def\math@cr@{\new@ifnextchar[\math@cr@@{\math@cr@@[\z@]}} + // \def\math@cr@@[#1]{...\math@cr@@@...} + // \def\math@cr@@@{\cr} + + if (parser.gullet.future().text !== " ") { + size = parser.parseSizeGroup(true); + } + + rowGaps.push(size ? size.value : null); + endRow(); // check for \hline(s) following the row separator + + hLinesBeforeRow.push(getHLines(parser)); + row = []; + body.push(row); + beginRow(); + } else { + throw new ParseError("Expected & or \\\\ or \\cr or \\end", parser.nextToken); + } + } // End cell group + + + parser.gullet.endGroup(); // End array group defining \cr + + parser.gullet.endGroup(); + return { + type: "array", + mode: parser.mode, + addJot, + arraystretch, + body, + cols, + rowGaps, + hskipBeforeAndAfter, + hLinesBeforeRow, + colSeparationType, + tags, + leqno + }; +} // Decides on a style for cells in an array according to whether the given +// environment name starts with the letter 'd'. + + +function dCellStyle(envName) { + if (envName.slice(0, 1) === "d") { + return "display"; + } else { + return "text"; + } +} + +var htmlBuilder$6 = function htmlBuilder(group, options) { + var r; + var c; + var nr = group.body.length; + var hLinesBeforeRow = group.hLinesBeforeRow; + var nc = 0; + var body = new Array(nr); + var hlines = []; + var ruleThickness = Math.max( // From LaTeX \showthe\arrayrulewidth. Equals 0.04 em. + options.fontMetrics().arrayRuleWidth, options.minRuleThickness // User override. + ); // Horizontal spacing + + var pt = 1 / options.fontMetrics().ptPerEm; + var arraycolsep = 5 * pt; // default value, i.e. \arraycolsep in article.cls + + if (group.colSeparationType && group.colSeparationType === "small") { + // We're in a {smallmatrix}. Default column space is \thickspace, + // i.e. 5/18em = 0.2778em, per amsmath.dtx for {smallmatrix}. + // But that needs adjustment because LaTeX applies \scriptstyle to the + // entire array, including the colspace, but this function applies + // \scriptstyle only inside each element. + var localMultiplier = options.havingStyle(Style$1.SCRIPT).sizeMultiplier; + arraycolsep = 0.2778 * (localMultiplier / options.sizeMultiplier); + } // Vertical spacing + + + var baselineskip = group.colSeparationType === "CD" ? calculateSize({ + number: 3, + unit: "ex" + }, options) : 12 * pt; // see size10.clo + // Default \jot from ltmath.dtx + // TODO(edemaine): allow overriding \jot via \setlength (#687) + + var jot = 3 * pt; + var arrayskip = group.arraystretch * baselineskip; + var arstrutHeight = 0.7 * arrayskip; // \strutbox in ltfsstrc.dtx and + + var arstrutDepth = 0.3 * arrayskip; // \@arstrutbox in lttab.dtx + + var totalHeight = 0; // Set a position for \hline(s) at the top of the array, if any. + + function setHLinePos(hlinesInGap) { + for (var i = 0; i < hlinesInGap.length; ++i) { + if (i > 0) { + totalHeight += 0.25; + } + + hlines.push({ + pos: totalHeight, + isDashed: hlinesInGap[i] + }); + } + } + + setHLinePos(hLinesBeforeRow[0]); + + for (r = 0; r < group.body.length; ++r) { + var inrow = group.body[r]; + var height = arstrutHeight; // \@array adds an \@arstrut + + var depth = arstrutDepth; // to each tow (via the template) + + if (nc < inrow.length) { + nc = inrow.length; + } + + var outrow = new Array(inrow.length); + + for (c = 0; c < inrow.length; ++c) { + var elt = buildGroup$1(inrow[c], options); + + if (depth < elt.depth) { + depth = elt.depth; + } + + if (height < elt.height) { + height = elt.height; + } + + outrow[c] = elt; + } + + var rowGap = group.rowGaps[r]; + var gap = 0; + + if (rowGap) { + gap = calculateSize(rowGap, options); + + if (gap > 0) { + // \@argarraycr + gap += arstrutDepth; + + if (depth < gap) { + depth = gap; // \@xargarraycr + } + + gap = 0; + } + } // In AMS multiline environments such as aligned and gathered, rows + // correspond to lines that have additional \jot added to the + // \baselineskip via \openup. + + + if (group.addJot) { + depth += jot; + } + + outrow.height = height; + outrow.depth = depth; + totalHeight += height; + outrow.pos = totalHeight; + totalHeight += depth + gap; // \@yargarraycr + + body[r] = outrow; // Set a position for \hline(s), if any. + + setHLinePos(hLinesBeforeRow[r + 1]); + } + + var offset = totalHeight / 2 + options.fontMetrics().axisHeight; + var colDescriptions = group.cols || []; + var cols = []; + var colSep; + var colDescrNum; + var tagSpans = []; + + if (group.tags && group.tags.some(tag => tag)) { + // An environment with manual tags and/or automatic equation numbers. + // Create node(s), the latter of which trigger CSS counter increment. + for (r = 0; r < nr; ++r) { + var rw = body[r]; + var shift = rw.pos - offset; + var tag = group.tags[r]; + var tagSpan = void 0; + + if (tag === true) { + // automatic numbering + tagSpan = buildCommon.makeSpan(["eqn-num"], [], options); + } else if (tag === false) { + // \nonumber/\notag or starred environment + tagSpan = buildCommon.makeSpan([], [], options); + } else { + // manual \tag + tagSpan = buildCommon.makeSpan([], buildExpression$1(tag, options, true), options); + } + + tagSpan.depth = rw.depth; + tagSpan.height = rw.height; + tagSpans.push({ + type: "elem", + elem: tagSpan, + shift + }); + } + } + + for (c = 0, colDescrNum = 0; // Continue while either there are more columns or more column + // descriptions, so trailing separators don't get lost. + c < nc || colDescrNum < colDescriptions.length; ++c, ++colDescrNum) { + var colDescr = colDescriptions[colDescrNum] || {}; + var firstSeparator = true; + + while (colDescr.type === "separator") { + // If there is more than one separator in a row, add a space + // between them. + if (!firstSeparator) { + colSep = buildCommon.makeSpan(["arraycolsep"], []); + colSep.style.width = makeEm(options.fontMetrics().doubleRuleSep); + cols.push(colSep); + } + + if (colDescr.separator === "|" || colDescr.separator === ":") { + var lineType = colDescr.separator === "|" ? "solid" : "dashed"; + var separator = buildCommon.makeSpan(["vertical-separator"], [], options); + separator.style.height = makeEm(totalHeight); + separator.style.borderRightWidth = makeEm(ruleThickness); + separator.style.borderRightStyle = lineType; + separator.style.margin = "0 " + makeEm(-ruleThickness / 2); + + var _shift = totalHeight - offset; + + if (_shift) { + separator.style.verticalAlign = makeEm(-_shift); + } + + cols.push(separator); + } else { + throw new ParseError("Invalid separator type: " + colDescr.separator); + } + + colDescrNum++; + colDescr = colDescriptions[colDescrNum] || {}; + firstSeparator = false; + } + + if (c >= nc) { + continue; + } + + var sepwidth = void 0; + + if (c > 0 || group.hskipBeforeAndAfter) { + sepwidth = utils.deflt(colDescr.pregap, arraycolsep); + + if (sepwidth !== 0) { + colSep = buildCommon.makeSpan(["arraycolsep"], []); + colSep.style.width = makeEm(sepwidth); + cols.push(colSep); + } + } + + var col = []; + + for (r = 0; r < nr; ++r) { + var row = body[r]; + var elem = row[c]; + + if (!elem) { + continue; + } + + var _shift2 = row.pos - offset; + + elem.depth = row.depth; + elem.height = row.height; + col.push({ + type: "elem", + elem: elem, + shift: _shift2 + }); + } + + col = buildCommon.makeVList({ + positionType: "individualShift", + children: col + }, options); + col = buildCommon.makeSpan(["col-align-" + (colDescr.align || "c")], [col]); + cols.push(col); + + if (c < nc - 1 || group.hskipBeforeAndAfter) { + sepwidth = utils.deflt(colDescr.postgap, arraycolsep); + + if (sepwidth !== 0) { + colSep = buildCommon.makeSpan(["arraycolsep"], []); + colSep.style.width = makeEm(sepwidth); + cols.push(colSep); + } + } + } + + body = buildCommon.makeSpan(["mtable"], cols); // Add \hline(s), if any. + + if (hlines.length > 0) { + var line = buildCommon.makeLineSpan("hline", options, ruleThickness); + var dashes = buildCommon.makeLineSpan("hdashline", options, ruleThickness); + var vListElems = [{ + type: "elem", + elem: body, + shift: 0 + }]; + + while (hlines.length > 0) { + var hline = hlines.pop(); + var lineShift = hline.pos - offset; + + if (hline.isDashed) { + vListElems.push({ + type: "elem", + elem: dashes, + shift: lineShift + }); + } else { + vListElems.push({ + type: "elem", + elem: line, + shift: lineShift + }); + } + } + + body = buildCommon.makeVList({ + positionType: "individualShift", + children: vListElems + }, options); + } + + if (tagSpans.length === 0) { + return buildCommon.makeSpan(["mord"], [body], options); + } else { + var eqnNumCol = buildCommon.makeVList({ + positionType: "individualShift", + children: tagSpans + }, options); + eqnNumCol = buildCommon.makeSpan(["tag"], [eqnNumCol], options); + return buildCommon.makeFragment([body, eqnNumCol]); + } +}; + +var alignMap = { + c: "center ", + l: "left ", + r: "right " +}; + +var mathmlBuilder$5 = function mathmlBuilder(group, options) { + var tbl = []; + var glue = new mathMLTree.MathNode("mtd", [], ["mtr-glue"]); + var tag = new mathMLTree.MathNode("mtd", [], ["mml-eqn-num"]); + + for (var i = 0; i < group.body.length; i++) { + var rw = group.body[i]; + var row = []; + + for (var j = 0; j < rw.length; j++) { + row.push(new mathMLTree.MathNode("mtd", [buildGroup(rw[j], options)])); + } + + if (group.tags && group.tags[i]) { + row.unshift(glue); + row.push(glue); + + if (group.leqno) { + row.unshift(tag); + } else { + row.push(tag); + } + } + + tbl.push(new mathMLTree.MathNode("mtr", row)); + } + + var table = new mathMLTree.MathNode("mtable", tbl); // Set column alignment, row spacing, column spacing, and + // array lines by setting attributes on the table element. + // Set the row spacing. In MathML, we specify a gap distance. + // We do not use rowGap[] because MathML automatically increases + // cell height with the height/depth of the element content. + // LaTeX \arraystretch multiplies the row baseline-to-baseline distance. + // We simulate this by adding (arraystretch - 1)em to the gap. This + // does a reasonable job of adjusting arrays containing 1 em tall content. + // The 0.16 and 0.09 values are found empirically. They produce an array + // similar to LaTeX and in which content does not interfere with \hlines. + + var gap = group.arraystretch === 0.5 ? 0.1 // {smallmatrix}, {subarray} + : 0.16 + group.arraystretch - 1 + (group.addJot ? 0.09 : 0); + table.setAttribute("rowspacing", makeEm(gap)); // MathML table lines go only between cells. + // To place a line on an edge we'll use , if necessary. + + var menclose = ""; + var align = ""; + + if (group.cols && group.cols.length > 0) { + // Find column alignment, column spacing, and vertical lines. + var cols = group.cols; + var columnLines = ""; + var prevTypeWasAlign = false; + var iStart = 0; + var iEnd = cols.length; + + if (cols[0].type === "separator") { + menclose += "top "; + iStart = 1; + } + + if (cols[cols.length - 1].type === "separator") { + menclose += "bottom "; + iEnd -= 1; + } + + for (var _i = iStart; _i < iEnd; _i++) { + if (cols[_i].type === "align") { + align += alignMap[cols[_i].align]; + + if (prevTypeWasAlign) { + columnLines += "none "; + } + + prevTypeWasAlign = true; + } else if (cols[_i].type === "separator") { + // MathML accepts only single lines between cells. + // So we read only the first of consecutive separators. + if (prevTypeWasAlign) { + columnLines += cols[_i].separator === "|" ? "solid " : "dashed "; + prevTypeWasAlign = false; + } + } + } + + table.setAttribute("columnalign", align.trim()); + + if (/[sd]/.test(columnLines)) { + table.setAttribute("columnlines", columnLines.trim()); + } + } // Set column spacing. + + + if (group.colSeparationType === "align") { + var _cols = group.cols || []; + + var spacing = ""; + + for (var _i2 = 1; _i2 < _cols.length; _i2++) { + spacing += _i2 % 2 ? "0em " : "1em "; + } + + table.setAttribute("columnspacing", spacing.trim()); + } else if (group.colSeparationType === "alignat" || group.colSeparationType === "gather") { + table.setAttribute("columnspacing", "0em"); + } else if (group.colSeparationType === "small") { + table.setAttribute("columnspacing", "0.2778em"); + } else if (group.colSeparationType === "CD") { + table.setAttribute("columnspacing", "0.5em"); + } else { + table.setAttribute("columnspacing", "1em"); + } // Address \hline and \hdashline + + + var rowLines = ""; + var hlines = group.hLinesBeforeRow; + menclose += hlines[0].length > 0 ? "left " : ""; + menclose += hlines[hlines.length - 1].length > 0 ? "right " : ""; + + for (var _i3 = 1; _i3 < hlines.length - 1; _i3++) { + rowLines += hlines[_i3].length === 0 ? "none " // MathML accepts only a single line between rows. Read one element. + : hlines[_i3][0] ? "dashed " : "solid "; + } + + if (/[sd]/.test(rowLines)) { + table.setAttribute("rowlines", rowLines.trim()); + } + + if (menclose !== "") { + table = new mathMLTree.MathNode("menclose", [table]); + table.setAttribute("notation", menclose.trim()); + } + + if (group.arraystretch && group.arraystretch < 1) { + // A small array. Wrap in scriptstyle so row gap is not too large. + table = new mathMLTree.MathNode("mstyle", [table]); + table.setAttribute("scriptlevel", "1"); + } + + return table; +}; // Convenience function for align, align*, aligned, alignat, alignat*, alignedat. + + +var alignedHandler = function alignedHandler(context, args) { + if (context.envName.indexOf("ed") === -1) { + validateAmsEnvironmentContext(context); + } + + var cols = []; + var separationType = context.envName.indexOf("at") > -1 ? "alignat" : "align"; + var isSplit = context.envName === "split"; + var res = parseArray(context.parser, { + cols, + addJot: true, + autoTag: isSplit ? undefined : getAutoTag(context.envName), + emptySingleRow: true, + colSeparationType: separationType, + maxNumCols: isSplit ? 2 : undefined, + leqno: context.parser.settings.leqno + }, "display"); // Determining number of columns. + // 1. If the first argument is given, we use it as a number of columns, + // and makes sure that each row doesn't exceed that number. + // 2. Otherwise, just count number of columns = maximum number + // of cells in each row ("aligned" mode -- isAligned will be true). + // + // At the same time, prepend empty group {} at beginning of every second + // cell in each row (starting with second cell) so that operators become + // binary. This behavior is implemented in amsmath's \start@aligned. + + var numMaths; + var numCols = 0; + var emptyGroup = { + type: "ordgroup", + mode: context.mode, + body: [] + }; + + if (args[0] && args[0].type === "ordgroup") { + var arg0 = ""; + + for (var i = 0; i < args[0].body.length; i++) { + var textord = assertNodeType(args[0].body[i], "textord"); + arg0 += textord.text; + } + + numMaths = Number(arg0); + numCols = numMaths * 2; + } + + var isAligned = !numCols; + res.body.forEach(function (row) { + for (var _i4 = 1; _i4 < row.length; _i4 += 2) { + // Modify ordgroup node within styling node + var styling = assertNodeType(row[_i4], "styling"); + var ordgroup = assertNodeType(styling.body[0], "ordgroup"); + ordgroup.body.unshift(emptyGroup); + } + + if (!isAligned) { + // Case 1 + var curMaths = row.length / 2; + + if (numMaths < curMaths) { + throw new ParseError("Too many math in a row: " + ("expected " + numMaths + ", but got " + curMaths), row[0]); + } + } else if (numCols < row.length) { + // Case 2 + numCols = row.length; + } + }); // Adjusting alignment. + // In aligned mode, we add one \qquad between columns; + // otherwise we add nothing. + + for (var _i5 = 0; _i5 < numCols; ++_i5) { + var align = "r"; + var pregap = 0; + + if (_i5 % 2 === 1) { + align = "l"; + } else if (_i5 > 0 && isAligned) { + // "aligned" mode. + pregap = 1; // add one \quad + } + + cols[_i5] = { + type: "align", + align: align, + pregap: pregap, + postgap: 0 + }; + } + + res.colSeparationType = isAligned ? "align" : "alignat"; + return res; +}; // Arrays are part of LaTeX, defined in lttab.dtx so its documentation +// is part of the source2e.pdf file of LaTeX2e source documentation. +// {darray} is an {array} environment where cells are set in \displaystyle, +// as defined in nccmath.sty. + + +defineEnvironment({ + type: "array", + names: ["array", "darray"], + props: { + numArgs: 1 + }, + + handler(context, args) { + // Since no types are specified above, the two possibilities are + // - The argument is wrapped in {} or [], in which case Parser's + // parseGroup() returns an "ordgroup" wrapping some symbol node. + // - The argument is a bare symbol node. + var symNode = checkSymbolNodeType(args[0]); + var colalign = symNode ? [args[0]] : assertNodeType(args[0], "ordgroup").body; + var cols = colalign.map(function (nde) { + var node = assertSymbolNodeType(nde); + var ca = node.text; + + if ("lcr".indexOf(ca) !== -1) { + return { + type: "align", + align: ca + }; + } else if (ca === "|") { + return { + type: "separator", + separator: "|" + }; + } else if (ca === ":") { + return { + type: "separator", + separator: ":" + }; + } + + throw new ParseError("Unknown column alignment: " + ca, nde); + }); + var res = { + cols, + hskipBeforeAndAfter: true, + // \@preamble in lttab.dtx + maxNumCols: cols.length + }; + return parseArray(context.parser, res, dCellStyle(context.envName)); + }, + + htmlBuilder: htmlBuilder$6, + mathmlBuilder: mathmlBuilder$5 +}); // The matrix environments of amsmath builds on the array environment +// of LaTeX, which is discussed above. +// The mathtools package adds starred versions of the same environments. +// These have an optional argument to choose left|center|right justification. + +defineEnvironment({ + type: "array", + names: ["matrix", "pmatrix", "bmatrix", "Bmatrix", "vmatrix", "Vmatrix", "matrix*", "pmatrix*", "bmatrix*", "Bmatrix*", "vmatrix*", "Vmatrix*"], + props: { + numArgs: 0 + }, + + handler(context) { + var delimiters = { + "matrix": null, + "pmatrix": ["(", ")"], + "bmatrix": ["[", "]"], + "Bmatrix": ["\\{", "\\}"], + "vmatrix": ["|", "|"], + "Vmatrix": ["\\Vert", "\\Vert"] + }[context.envName.replace("*", "")]; // \hskip -\arraycolsep in amsmath + + var colAlign = "c"; + var payload = { + hskipBeforeAndAfter: false, + cols: [{ + type: "align", + align: colAlign + }] + }; + + if (context.envName.charAt(context.envName.length - 1) === "*") { + // It's one of the mathtools starred functions. + // Parse the optional alignment argument. + var parser = context.parser; + parser.consumeSpaces(); + + if (parser.fetch().text === "[") { + parser.consume(); + parser.consumeSpaces(); + colAlign = parser.fetch().text; + + if ("lcr".indexOf(colAlign) === -1) { + throw new ParseError("Expected l or c or r", parser.nextToken); + } + + parser.consume(); + parser.consumeSpaces(); + parser.expect("]"); + parser.consume(); + payload.cols = [{ + type: "align", + align: colAlign + }]; + } + } + + var res = parseArray(context.parser, payload, dCellStyle(context.envName)); // Populate cols with the correct number of column alignment specs. + + var numCols = Math.max(0, ...res.body.map(row => row.length)); + res.cols = new Array(numCols).fill({ + type: "align", + align: colAlign + }); + return delimiters ? { + type: "leftright", + mode: context.mode, + body: [res], + left: delimiters[0], + right: delimiters[1], + rightColor: undefined // \right uninfluenced by \color in array + + } : res; + }, + + htmlBuilder: htmlBuilder$6, + mathmlBuilder: mathmlBuilder$5 +}); +defineEnvironment({ + type: "array", + names: ["smallmatrix"], + props: { + numArgs: 0 + }, + + handler(context) { + var payload = { + arraystretch: 0.5 + }; + var res = parseArray(context.parser, payload, "script"); + res.colSeparationType = "small"; + return res; + }, + + htmlBuilder: htmlBuilder$6, + mathmlBuilder: mathmlBuilder$5 +}); +defineEnvironment({ + type: "array", + names: ["subarray"], + props: { + numArgs: 1 + }, + + handler(context, args) { + // Parsing of {subarray} is similar to {array} + var symNode = checkSymbolNodeType(args[0]); + var colalign = symNode ? [args[0]] : assertNodeType(args[0], "ordgroup").body; + var cols = colalign.map(function (nde) { + var node = assertSymbolNodeType(nde); + var ca = node.text; // {subarray} only recognizes "l" & "c" + + if ("lc".indexOf(ca) !== -1) { + return { + type: "align", + align: ca + }; + } + + throw new ParseError("Unknown column alignment: " + ca, nde); + }); + + if (cols.length > 1) { + throw new ParseError("{subarray} can contain only one column"); + } + + var res = { + cols, + hskipBeforeAndAfter: false, + arraystretch: 0.5 + }; + res = parseArray(context.parser, res, "script"); + + if (res.body.length > 0 && res.body[0].length > 1) { + throw new ParseError("{subarray} can contain only one column"); + } + + return res; + }, + + htmlBuilder: htmlBuilder$6, + mathmlBuilder: mathmlBuilder$5 +}); // A cases environment (in amsmath.sty) is almost equivalent to +// \def\arraystretch{1.2}% +// \left\{\begin{array}{@{}l@{\quad}l@{}} … \end{array}\right. +// {dcases} is a {cases} environment where cells are set in \displaystyle, +// as defined in mathtools.sty. +// {rcases} is another mathtools environment. It's brace is on the right side. + +defineEnvironment({ + type: "array", + names: ["cases", "dcases", "rcases", "drcases"], + props: { + numArgs: 0 + }, + + handler(context) { + var payload = { + arraystretch: 1.2, + cols: [{ + type: "align", + align: "l", + pregap: 0, + // TODO(kevinb) get the current style. + // For now we use the metrics for TEXT style which is what we were + // doing before. Before attempting to get the current style we + // should look at TeX's behavior especially for \over and matrices. + postgap: 1.0 + /* 1em quad */ + + }, { + type: "align", + align: "l", + pregap: 0, + postgap: 0 + }] + }; + var res = parseArray(context.parser, payload, dCellStyle(context.envName)); + return { + type: "leftright", + mode: context.mode, + body: [res], + left: context.envName.indexOf("r") > -1 ? "." : "\\{", + right: context.envName.indexOf("r") > -1 ? "\\}" : ".", + rightColor: undefined + }; + }, + + htmlBuilder: htmlBuilder$6, + mathmlBuilder: mathmlBuilder$5 +}); // In the align environment, one uses ampersands, &, to specify number of +// columns in each row, and to locate spacing between each column. +// align gets automatic numbering. align* and aligned do not. +// The alignedat environment can be used in math mode. +// Note that we assume \nomallineskiplimit to be zero, +// so that \strut@ is the same as \strut. + +defineEnvironment({ + type: "array", + names: ["align", "align*", "aligned", "split"], + props: { + numArgs: 0 + }, + handler: alignedHandler, + htmlBuilder: htmlBuilder$6, + mathmlBuilder: mathmlBuilder$5 +}); // A gathered environment is like an array environment with one centered +// column, but where rows are considered lines so get \jot line spacing +// and contents are set in \displaystyle. + +defineEnvironment({ + type: "array", + names: ["gathered", "gather", "gather*"], + props: { + numArgs: 0 + }, + + handler(context) { + if (utils.contains(["gather", "gather*"], context.envName)) { + validateAmsEnvironmentContext(context); + } + + var res = { + cols: [{ + type: "align", + align: "c" + }], + addJot: true, + colSeparationType: "gather", + autoTag: getAutoTag(context.envName), + emptySingleRow: true, + leqno: context.parser.settings.leqno + }; + return parseArray(context.parser, res, "display"); + }, + + htmlBuilder: htmlBuilder$6, + mathmlBuilder: mathmlBuilder$5 +}); // alignat environment is like an align environment, but one must explicitly +// specify maximum number of columns in each row, and can adjust spacing between +// each columns. + +defineEnvironment({ + type: "array", + names: ["alignat", "alignat*", "alignedat"], + props: { + numArgs: 1 + }, + handler: alignedHandler, + htmlBuilder: htmlBuilder$6, + mathmlBuilder: mathmlBuilder$5 +}); +defineEnvironment({ + type: "array", + names: ["equation", "equation*"], + props: { + numArgs: 0 + }, + + handler(context) { + validateAmsEnvironmentContext(context); + var res = { + autoTag: getAutoTag(context.envName), + emptySingleRow: true, + singleRow: true, + maxNumCols: 1, + leqno: context.parser.settings.leqno + }; + return parseArray(context.parser, res, "display"); + }, + + htmlBuilder: htmlBuilder$6, + mathmlBuilder: mathmlBuilder$5 +}); +defineEnvironment({ + type: "array", + names: ["CD"], + props: { + numArgs: 0 + }, + + handler(context) { + validateAmsEnvironmentContext(context); + return parseCD(context.parser); + }, + + htmlBuilder: htmlBuilder$6, + mathmlBuilder: mathmlBuilder$5 +}); +defineMacro("\\nonumber", "\\gdef\\@eqnsw{0}"); +defineMacro("\\notag", "\\nonumber"); // Catch \hline outside array environment + +defineFunction({ + type: "text", + // Doesn't matter what this is. + names: ["\\hline", "\\hdashline"], + props: { + numArgs: 0, + allowedInText: true, + allowedInMath: true + }, + + handler(context, args) { + throw new ParseError(context.funcName + " valid only within array environment"); + } + +}); + +var environments = _environments; + +// defineEnvironment definitions. + +defineFunction({ + type: "environment", + names: ["\\begin", "\\end"], + props: { + numArgs: 1, + argTypes: ["text"] + }, + + handler(_ref, args) { + var { + parser, + funcName + } = _ref; + var nameGroup = args[0]; + + if (nameGroup.type !== "ordgroup") { + throw new ParseError("Invalid environment name", nameGroup); + } + + var envName = ""; + + for (var i = 0; i < nameGroup.body.length; ++i) { + envName += assertNodeType(nameGroup.body[i], "textord").text; + } + + if (funcName === "\\begin") { + // begin...end is similar to left...right + if (!environments.hasOwnProperty(envName)) { + throw new ParseError("No such environment: " + envName, nameGroup); + } // Build the environment object. Arguments and other information will + // be made available to the begin and end methods using properties. + + + var env = environments[envName]; + var { + args: _args, + optArgs + } = parser.parseArguments("\\begin{" + envName + "}", env); + var context = { + mode: parser.mode, + envName, + parser + }; + var result = env.handler(context, _args, optArgs); + parser.expect("\\end", false); + var endNameToken = parser.nextToken; + var end = assertNodeType(parser.parseFunction(), "environment"); + + if (end.name !== envName) { + throw new ParseError("Mismatch: \\begin{" + envName + "} matched by \\end{" + end.name + "}", endNameToken); + } // $FlowFixMe, "environment" handler returns an environment ParseNode + + + return result; + } + + return { + type: "environment", + mode: parser.mode, + name: envName, + nameGroup + }; + } + +}); + +// TODO(kevinb): implement \\sl and \\sc + +var htmlBuilder$5 = (group, options) => { + var font = group.font; + var newOptions = options.withFont(font); + return buildGroup$1(group.body, newOptions); +}; + +var mathmlBuilder$4 = (group, options) => { + var font = group.font; + var newOptions = options.withFont(font); + return buildGroup(group.body, newOptions); +}; + +var fontAliases = { + "\\Bbb": "\\mathbb", + "\\bold": "\\mathbf", + "\\frak": "\\mathfrak", + "\\bm": "\\boldsymbol" +}; +defineFunction({ + type: "font", + names: [// styles, except \boldsymbol defined below + "\\mathrm", "\\mathit", "\\mathbf", "\\mathnormal", // families + "\\mathbb", "\\mathcal", "\\mathfrak", "\\mathscr", "\\mathsf", "\\mathtt", // aliases, except \bm defined below + "\\Bbb", "\\bold", "\\frak"], + props: { + numArgs: 1, + allowedInArgument: true + }, + handler: (_ref, args) => { + var { + parser, + funcName + } = _ref; + var body = normalizeArgument(args[0]); + var func = funcName; + + if (func in fontAliases) { + func = fontAliases[func]; + } + + return { + type: "font", + mode: parser.mode, + font: func.slice(1), + body + }; + }, + htmlBuilder: htmlBuilder$5, + mathmlBuilder: mathmlBuilder$4 +}); +defineFunction({ + type: "mclass", + names: ["\\boldsymbol", "\\bm"], + props: { + numArgs: 1 + }, + handler: (_ref2, args) => { + var { + parser + } = _ref2; + var body = args[0]; + var isCharacterBox = utils.isCharacterBox(body); // amsbsy.sty's \boldsymbol uses \binrel spacing to inherit the + // argument's bin|rel|ord status + + return { + type: "mclass", + mode: parser.mode, + mclass: binrelClass(body), + body: [{ + type: "font", + mode: parser.mode, + font: "boldsymbol", + body + }], + isCharacterBox: isCharacterBox + }; + } +}); // Old font changing functions + +defineFunction({ + type: "font", + names: ["\\rm", "\\sf", "\\tt", "\\bf", "\\it", "\\cal"], + props: { + numArgs: 0, + allowedInText: true + }, + handler: (_ref3, args) => { + var { + parser, + funcName, + breakOnTokenText + } = _ref3; + var { + mode + } = parser; + var body = parser.parseExpression(true, breakOnTokenText); + var style = "math" + funcName.slice(1); + return { + type: "font", + mode: mode, + font: style, + body: { + type: "ordgroup", + mode: parser.mode, + body + } + }; + }, + htmlBuilder: htmlBuilder$5, + mathmlBuilder: mathmlBuilder$4 +}); + +var adjustStyle = (size, originalStyle) => { + // Figure out what style this fraction should be in based on the + // function used + var style = originalStyle; + + if (size === "display") { + // Get display style as a default. + // If incoming style is sub/sup, use style.text() to get correct size. + style = style.id >= Style$1.SCRIPT.id ? style.text() : Style$1.DISPLAY; + } else if (size === "text" && style.size === Style$1.DISPLAY.size) { + // We're in a \tfrac but incoming style is displaystyle, so: + style = Style$1.TEXT; + } else if (size === "script") { + style = Style$1.SCRIPT; + } else if (size === "scriptscript") { + style = Style$1.SCRIPTSCRIPT; + } + + return style; +}; + +var htmlBuilder$4 = (group, options) => { + // Fractions are handled in the TeXbook on pages 444-445, rules 15(a-e). + var style = adjustStyle(group.size, options.style); + var nstyle = style.fracNum(); + var dstyle = style.fracDen(); + var newOptions; + newOptions = options.havingStyle(nstyle); + var numerm = buildGroup$1(group.numer, newOptions, options); + + if (group.continued) { + // \cfrac inserts a \strut into the numerator. + // Get \strut dimensions from TeXbook page 353. + var hStrut = 8.5 / options.fontMetrics().ptPerEm; + var dStrut = 3.5 / options.fontMetrics().ptPerEm; + numerm.height = numerm.height < hStrut ? hStrut : numerm.height; + numerm.depth = numerm.depth < dStrut ? dStrut : numerm.depth; + } + + newOptions = options.havingStyle(dstyle); + var denomm = buildGroup$1(group.denom, newOptions, options); + var rule; + var ruleWidth; + var ruleSpacing; + + if (group.hasBarLine) { + if (group.barSize) { + ruleWidth = calculateSize(group.barSize, options); + rule = buildCommon.makeLineSpan("frac-line", options, ruleWidth); + } else { + rule = buildCommon.makeLineSpan("frac-line", options); + } + + ruleWidth = rule.height; + ruleSpacing = rule.height; + } else { + rule = null; + ruleWidth = 0; + ruleSpacing = options.fontMetrics().defaultRuleThickness; + } // Rule 15b + + + var numShift; + var clearance; + var denomShift; + + if (style.size === Style$1.DISPLAY.size || group.size === "display") { + numShift = options.fontMetrics().num1; + + if (ruleWidth > 0) { + clearance = 3 * ruleSpacing; + } else { + clearance = 7 * ruleSpacing; + } + + denomShift = options.fontMetrics().denom1; + } else { + if (ruleWidth > 0) { + numShift = options.fontMetrics().num2; + clearance = ruleSpacing; + } else { + numShift = options.fontMetrics().num3; + clearance = 3 * ruleSpacing; + } + + denomShift = options.fontMetrics().denom2; + } + + var frac; + + if (!rule) { + // Rule 15c + var candidateClearance = numShift - numerm.depth - (denomm.height - denomShift); + + if (candidateClearance < clearance) { + numShift += 0.5 * (clearance - candidateClearance); + denomShift += 0.5 * (clearance - candidateClearance); + } + + frac = buildCommon.makeVList({ + positionType: "individualShift", + children: [{ + type: "elem", + elem: denomm, + shift: denomShift + }, { + type: "elem", + elem: numerm, + shift: -numShift + }] + }, options); + } else { + // Rule 15d + var axisHeight = options.fontMetrics().axisHeight; + + if (numShift - numerm.depth - (axisHeight + 0.5 * ruleWidth) < clearance) { + numShift += clearance - (numShift - numerm.depth - (axisHeight + 0.5 * ruleWidth)); + } + + if (axisHeight - 0.5 * ruleWidth - (denomm.height - denomShift) < clearance) { + denomShift += clearance - (axisHeight - 0.5 * ruleWidth - (denomm.height - denomShift)); + } + + var midShift = -(axisHeight - 0.5 * ruleWidth); + frac = buildCommon.makeVList({ + positionType: "individualShift", + children: [{ + type: "elem", + elem: denomm, + shift: denomShift + }, { + type: "elem", + elem: rule, + shift: midShift + }, { + type: "elem", + elem: numerm, + shift: -numShift + }] + }, options); + } // Since we manually change the style sometimes (with \dfrac or \tfrac), + // account for the possible size change here. + + + newOptions = options.havingStyle(style); + frac.height *= newOptions.sizeMultiplier / options.sizeMultiplier; + frac.depth *= newOptions.sizeMultiplier / options.sizeMultiplier; // Rule 15e + + var delimSize; + + if (style.size === Style$1.DISPLAY.size) { + delimSize = options.fontMetrics().delim1; + } else if (style.size === Style$1.SCRIPTSCRIPT.size) { + delimSize = options.havingStyle(Style$1.SCRIPT).fontMetrics().delim2; + } else { + delimSize = options.fontMetrics().delim2; + } + + var leftDelim; + var rightDelim; + + if (group.leftDelim == null) { + leftDelim = makeNullDelimiter(options, ["mopen"]); + } else { + leftDelim = delimiter.customSizedDelim(group.leftDelim, delimSize, true, options.havingStyle(style), group.mode, ["mopen"]); + } + + if (group.continued) { + rightDelim = buildCommon.makeSpan([]); // zero width for \cfrac + } else if (group.rightDelim == null) { + rightDelim = makeNullDelimiter(options, ["mclose"]); + } else { + rightDelim = delimiter.customSizedDelim(group.rightDelim, delimSize, true, options.havingStyle(style), group.mode, ["mclose"]); + } + + return buildCommon.makeSpan(["mord"].concat(newOptions.sizingClasses(options)), [leftDelim, buildCommon.makeSpan(["mfrac"], [frac]), rightDelim], options); +}; + +var mathmlBuilder$3 = (group, options) => { + var node = new mathMLTree.MathNode("mfrac", [buildGroup(group.numer, options), buildGroup(group.denom, options)]); + + if (!group.hasBarLine) { + node.setAttribute("linethickness", "0px"); + } else if (group.barSize) { + var ruleWidth = calculateSize(group.barSize, options); + node.setAttribute("linethickness", makeEm(ruleWidth)); + } + + var style = adjustStyle(group.size, options.style); + + if (style.size !== options.style.size) { + node = new mathMLTree.MathNode("mstyle", [node]); + var isDisplay = style.size === Style$1.DISPLAY.size ? "true" : "false"; + node.setAttribute("displaystyle", isDisplay); + node.setAttribute("scriptlevel", "0"); + } + + if (group.leftDelim != null || group.rightDelim != null) { + var withDelims = []; + + if (group.leftDelim != null) { + var leftOp = new mathMLTree.MathNode("mo", [new mathMLTree.TextNode(group.leftDelim.replace("\\", ""))]); + leftOp.setAttribute("fence", "true"); + withDelims.push(leftOp); + } + + withDelims.push(node); + + if (group.rightDelim != null) { + var rightOp = new mathMLTree.MathNode("mo", [new mathMLTree.TextNode(group.rightDelim.replace("\\", ""))]); + rightOp.setAttribute("fence", "true"); + withDelims.push(rightOp); + } + + return makeRow(withDelims); + } + + return node; +}; + +defineFunction({ + type: "genfrac", + names: ["\\dfrac", "\\frac", "\\tfrac", "\\dbinom", "\\binom", "\\tbinom", "\\\\atopfrac", // can’t be entered directly + "\\\\bracefrac", "\\\\brackfrac" // ditto + ], + props: { + numArgs: 2, + allowedInArgument: true + }, + handler: (_ref, args) => { + var { + parser, + funcName + } = _ref; + var numer = args[0]; + var denom = args[1]; + var hasBarLine; + var leftDelim = null; + var rightDelim = null; + var size = "auto"; + + switch (funcName) { + case "\\dfrac": + case "\\frac": + case "\\tfrac": + hasBarLine = true; + break; + + case "\\\\atopfrac": + hasBarLine = false; + break; + + case "\\dbinom": + case "\\binom": + case "\\tbinom": + hasBarLine = false; + leftDelim = "("; + rightDelim = ")"; + break; + + case "\\\\bracefrac": + hasBarLine = false; + leftDelim = "\\{"; + rightDelim = "\\}"; + break; + + case "\\\\brackfrac": + hasBarLine = false; + leftDelim = "["; + rightDelim = "]"; + break; + + default: + throw new Error("Unrecognized genfrac command"); + } + + switch (funcName) { + case "\\dfrac": + case "\\dbinom": + size = "display"; + break; + + case "\\tfrac": + case "\\tbinom": + size = "text"; + break; + } + + return { + type: "genfrac", + mode: parser.mode, + continued: false, + numer, + denom, + hasBarLine, + leftDelim, + rightDelim, + size, + barSize: null + }; + }, + htmlBuilder: htmlBuilder$4, + mathmlBuilder: mathmlBuilder$3 +}); +defineFunction({ + type: "genfrac", + names: ["\\cfrac"], + props: { + numArgs: 2 + }, + handler: (_ref2, args) => { + var { + parser, + funcName + } = _ref2; + var numer = args[0]; + var denom = args[1]; + return { + type: "genfrac", + mode: parser.mode, + continued: true, + numer, + denom, + hasBarLine: true, + leftDelim: null, + rightDelim: null, + size: "display", + barSize: null + }; + } +}); // Infix generalized fractions -- these are not rendered directly, but replaced +// immediately by one of the variants above. + +defineFunction({ + type: "infix", + names: ["\\over", "\\choose", "\\atop", "\\brace", "\\brack"], + props: { + numArgs: 0, + infix: true + }, + + handler(_ref3) { + var { + parser, + funcName, + token + } = _ref3; + var replaceWith; + + switch (funcName) { + case "\\over": + replaceWith = "\\frac"; + break; + + case "\\choose": + replaceWith = "\\binom"; + break; + + case "\\atop": + replaceWith = "\\\\atopfrac"; + break; + + case "\\brace": + replaceWith = "\\\\bracefrac"; + break; + + case "\\brack": + replaceWith = "\\\\brackfrac"; + break; + + default: + throw new Error("Unrecognized infix genfrac command"); + } + + return { + type: "infix", + mode: parser.mode, + replaceWith, + token + }; + } + +}); +var stylArray = ["display", "text", "script", "scriptscript"]; + +var delimFromValue = function delimFromValue(delimString) { + var delim = null; + + if (delimString.length > 0) { + delim = delimString; + delim = delim === "." ? null : delim; + } + + return delim; +}; + +defineFunction({ + type: "genfrac", + names: ["\\genfrac"], + props: { + numArgs: 6, + allowedInArgument: true, + argTypes: ["math", "math", "size", "text", "math", "math"] + }, + + handler(_ref4, args) { + var { + parser + } = _ref4; + var numer = args[4]; + var denom = args[5]; // Look into the parse nodes to get the desired delimiters. + + var leftNode = normalizeArgument(args[0]); + var leftDelim = leftNode.type === "atom" && leftNode.family === "open" ? delimFromValue(leftNode.text) : null; + var rightNode = normalizeArgument(args[1]); + var rightDelim = rightNode.type === "atom" && rightNode.family === "close" ? delimFromValue(rightNode.text) : null; + var barNode = assertNodeType(args[2], "size"); + var hasBarLine; + var barSize = null; + + if (barNode.isBlank) { + // \genfrac acts differently than \above. + // \genfrac treats an empty size group as a signal to use a + // standard bar size. \above would see size = 0 and omit the bar. + hasBarLine = true; + } else { + barSize = barNode.value; + hasBarLine = barSize.number > 0; + } // Find out if we want displaystyle, textstyle, etc. + + + var size = "auto"; + var styl = args[3]; + + if (styl.type === "ordgroup") { + if (styl.body.length > 0) { + var textOrd = assertNodeType(styl.body[0], "textord"); + size = stylArray[Number(textOrd.text)]; + } + } else { + styl = assertNodeType(styl, "textord"); + size = stylArray[Number(styl.text)]; + } + + return { + type: "genfrac", + mode: parser.mode, + numer, + denom, + continued: false, + hasBarLine, + barSize, + leftDelim, + rightDelim, + size + }; + }, + + htmlBuilder: htmlBuilder$4, + mathmlBuilder: mathmlBuilder$3 +}); // \above is an infix fraction that also defines a fraction bar size. + +defineFunction({ + type: "infix", + names: ["\\above"], + props: { + numArgs: 1, + argTypes: ["size"], + infix: true + }, + + handler(_ref5, args) { + var { + parser, + funcName, + token + } = _ref5; + return { + type: "infix", + mode: parser.mode, + replaceWith: "\\\\abovefrac", + size: assertNodeType(args[0], "size").value, + token + }; + } + +}); +defineFunction({ + type: "genfrac", + names: ["\\\\abovefrac"], + props: { + numArgs: 3, + argTypes: ["math", "size", "math"] + }, + handler: (_ref6, args) => { + var { + parser, + funcName + } = _ref6; + var numer = args[0]; + var barSize = assert(assertNodeType(args[1], "infix").size); + var denom = args[2]; + var hasBarLine = barSize.number > 0; + return { + type: "genfrac", + mode: parser.mode, + numer, + denom, + continued: false, + hasBarLine, + barSize, + leftDelim: null, + rightDelim: null, + size: "auto" + }; + }, + htmlBuilder: htmlBuilder$4, + mathmlBuilder: mathmlBuilder$3 +}); + +// NOTE: Unlike most `htmlBuilder`s, this one handles not only "horizBrace", but +// also "supsub" since an over/underbrace can affect super/subscripting. +var htmlBuilder$3 = (grp, options) => { + var style = options.style; // Pull out the `ParseNode<"horizBrace">` if `grp` is a "supsub" node. + + var supSubGroup; + var group; + + if (grp.type === "supsub") { + // Ref: LaTeX source2e: }}}}\limits} + // i.e. LaTeX treats the brace similar to an op and passes it + // with \limits, so we need to assign supsub style. + supSubGroup = grp.sup ? buildGroup$1(grp.sup, options.havingStyle(style.sup()), options) : buildGroup$1(grp.sub, options.havingStyle(style.sub()), options); + group = assertNodeType(grp.base, "horizBrace"); + } else { + group = assertNodeType(grp, "horizBrace"); + } // Build the base group + + + var body = buildGroup$1(group.base, options.havingBaseStyle(Style$1.DISPLAY)); // Create the stretchy element + + var braceBody = stretchy.svgSpan(group, options); // Generate the vlist, with the appropriate kerns ┏━━━━━━━━┓ + // This first vlist contains the content and the brace: equation + + var vlist; + + if (group.isOver) { + vlist = buildCommon.makeVList({ + positionType: "firstBaseline", + children: [{ + type: "elem", + elem: body + }, { + type: "kern", + size: 0.1 + }, { + type: "elem", + elem: braceBody + }] + }, options); // $FlowFixMe: Replace this with passing "svg-align" into makeVList. + + vlist.children[0].children[0].children[1].classes.push("svg-align"); + } else { + vlist = buildCommon.makeVList({ + positionType: "bottom", + positionData: body.depth + 0.1 + braceBody.height, + children: [{ + type: "elem", + elem: braceBody + }, { + type: "kern", + size: 0.1 + }, { + type: "elem", + elem: body + }] + }, options); // $FlowFixMe: Replace this with passing "svg-align" into makeVList. + + vlist.children[0].children[0].children[0].classes.push("svg-align"); + } + + if (supSubGroup) { + // To write the supsub, wrap the first vlist in another vlist: + // They can't all go in the same vlist, because the note might be + // wider than the equation. We want the equation to control the + // brace width. + // note long note long note + // ┏━━━━━━━━┓ or ┏━━━┓ not ┏━━━━━━━━━┓ + // equation eqn eqn + var vSpan = buildCommon.makeSpan(["mord", group.isOver ? "mover" : "munder"], [vlist], options); + + if (group.isOver) { + vlist = buildCommon.makeVList({ + positionType: "firstBaseline", + children: [{ + type: "elem", + elem: vSpan + }, { + type: "kern", + size: 0.2 + }, { + type: "elem", + elem: supSubGroup + }] + }, options); + } else { + vlist = buildCommon.makeVList({ + positionType: "bottom", + positionData: vSpan.depth + 0.2 + supSubGroup.height + supSubGroup.depth, + children: [{ + type: "elem", + elem: supSubGroup + }, { + type: "kern", + size: 0.2 + }, { + type: "elem", + elem: vSpan + }] + }, options); + } + } + + return buildCommon.makeSpan(["mord", group.isOver ? "mover" : "munder"], [vlist], options); +}; + +var mathmlBuilder$2 = (group, options) => { + var accentNode = stretchy.mathMLnode(group.label); + return new mathMLTree.MathNode(group.isOver ? "mover" : "munder", [buildGroup(group.base, options), accentNode]); +}; // Horizontal stretchy braces + + +defineFunction({ + type: "horizBrace", + names: ["\\overbrace", "\\underbrace"], + props: { + numArgs: 1 + }, + + handler(_ref, args) { + var { + parser, + funcName + } = _ref; + return { + type: "horizBrace", + mode: parser.mode, + label: funcName, + isOver: /^\\over/.test(funcName), + base: args[0] + }; + }, + + htmlBuilder: htmlBuilder$3, + mathmlBuilder: mathmlBuilder$2 +}); + +defineFunction({ + type: "href", + names: ["\\href"], + props: { + numArgs: 2, + argTypes: ["url", "original"], + allowedInText: true + }, + handler: (_ref, args) => { + var { + parser + } = _ref; + var body = args[1]; + var href = assertNodeType(args[0], "url").url; + + if (!parser.settings.isTrusted({ + command: "\\href", + url: href + })) { + return parser.formatUnsupportedCmd("\\href"); + } + + return { + type: "href", + mode: parser.mode, + href, + body: ordargument(body) + }; + }, + htmlBuilder: (group, options) => { + var elements = buildExpression$1(group.body, options, false); + return buildCommon.makeAnchor(group.href, [], elements, options); + }, + mathmlBuilder: (group, options) => { + var math = buildExpressionRow(group.body, options); + + if (!(math instanceof MathNode)) { + math = new MathNode("mrow", [math]); + } + + math.setAttribute("href", group.href); + return math; + } +}); +defineFunction({ + type: "href", + names: ["\\url"], + props: { + numArgs: 1, + argTypes: ["url"], + allowedInText: true + }, + handler: (_ref2, args) => { + var { + parser + } = _ref2; + var href = assertNodeType(args[0], "url").url; + + if (!parser.settings.isTrusted({ + command: "\\url", + url: href + })) { + return parser.formatUnsupportedCmd("\\url"); + } + + var chars = []; + + for (var i = 0; i < href.length; i++) { + var c = href[i]; + + if (c === "~") { + c = "\\textasciitilde"; + } + + chars.push({ + type: "textord", + mode: "text", + text: c + }); + } + + var body = { + type: "text", + mode: parser.mode, + font: "\\texttt", + body: chars + }; + return { + type: "href", + mode: parser.mode, + href, + body: ordargument(body) + }; + } +}); + +// In LaTeX, \vcenter can act only on a box, as in +// \vcenter{\hbox{$\frac{a+b}{\dfrac{c}{d}}$}} +// This function by itself doesn't do anything but prevent a soft line break. + +defineFunction({ + type: "hbox", + names: ["\\hbox"], + props: { + numArgs: 1, + argTypes: ["text"], + allowedInText: true, + primitive: true + }, + + handler(_ref, args) { + var { + parser + } = _ref; + return { + type: "hbox", + mode: parser.mode, + body: ordargument(args[0]) + }; + }, + + htmlBuilder(group, options) { + var elements = buildExpression$1(group.body, options, false); + return buildCommon.makeFragment(elements); + }, + + mathmlBuilder(group, options) { + return new mathMLTree.MathNode("mrow", buildExpression(group.body, options)); + } + +}); + +defineFunction({ + type: "html", + names: ["\\htmlClass", "\\htmlId", "\\htmlStyle", "\\htmlData"], + props: { + numArgs: 2, + argTypes: ["raw", "original"], + allowedInText: true + }, + handler: (_ref, args) => { + var { + parser, + funcName, + token + } = _ref; + var value = assertNodeType(args[0], "raw").string; + var body = args[1]; + + if (parser.settings.strict) { + parser.settings.reportNonstrict("htmlExtension", "HTML extension is disabled on strict mode"); + } + + var trustContext; + var attributes = {}; + + switch (funcName) { + case "\\htmlClass": + attributes.class = value; + trustContext = { + command: "\\htmlClass", + class: value + }; + break; + + case "\\htmlId": + attributes.id = value; + trustContext = { + command: "\\htmlId", + id: value + }; + break; + + case "\\htmlStyle": + attributes.style = value; + trustContext = { + command: "\\htmlStyle", + style: value + }; + break; + + case "\\htmlData": + { + var data = value.split(","); + + for (var i = 0; i < data.length; i++) { + var keyVal = data[i].split("="); + + if (keyVal.length !== 2) { + throw new ParseError("Error parsing key-value for \\htmlData"); + } + + attributes["data-" + keyVal[0].trim()] = keyVal[1].trim(); + } + + trustContext = { + command: "\\htmlData", + attributes + }; + break; + } + + default: + throw new Error("Unrecognized html command"); + } + + if (!parser.settings.isTrusted(trustContext)) { + return parser.formatUnsupportedCmd(funcName); + } + + return { + type: "html", + mode: parser.mode, + attributes, + body: ordargument(body) + }; + }, + htmlBuilder: (group, options) => { + var elements = buildExpression$1(group.body, options, false); + var classes = ["enclosing"]; + + if (group.attributes.class) { + classes.push(...group.attributes.class.trim().split(/\s+/)); + } + + var span = buildCommon.makeSpan(classes, elements, options); + + for (var attr in group.attributes) { + if (attr !== "class" && group.attributes.hasOwnProperty(attr)) { + span.setAttribute(attr, group.attributes[attr]); + } + } + + return span; + }, + mathmlBuilder: (group, options) => { + return buildExpressionRow(group.body, options); + } +}); + +defineFunction({ + type: "htmlmathml", + names: ["\\html@mathml"], + props: { + numArgs: 2, + allowedInText: true + }, + handler: (_ref, args) => { + var { + parser + } = _ref; + return { + type: "htmlmathml", + mode: parser.mode, + html: ordargument(args[0]), + mathml: ordargument(args[1]) + }; + }, + htmlBuilder: (group, options) => { + var elements = buildExpression$1(group.html, options, false); + return buildCommon.makeFragment(elements); + }, + mathmlBuilder: (group, options) => { + return buildExpressionRow(group.mathml, options); + } +}); + +var sizeData = function sizeData(str) { + if (/^[-+]? *(\d+(\.\d*)?|\.\d+)$/.test(str)) { + // str is a number with no unit specified. + // default unit is bp, per graphix package. + return { + number: +str, + unit: "bp" + }; + } else { + var match = /([-+]?) *(\d+(?:\.\d*)?|\.\d+) *([a-z]{2})/.exec(str); + + if (!match) { + throw new ParseError("Invalid size: '" + str + "' in \\includegraphics"); + } + + var data = { + number: +(match[1] + match[2]), + // sign + magnitude, cast to number + unit: match[3] + }; + + if (!validUnit(data)) { + throw new ParseError("Invalid unit: '" + data.unit + "' in \\includegraphics."); + } + + return data; + } +}; + +defineFunction({ + type: "includegraphics", + names: ["\\includegraphics"], + props: { + numArgs: 1, + numOptionalArgs: 1, + argTypes: ["raw", "url"], + allowedInText: false + }, + handler: (_ref, args, optArgs) => { + var { + parser + } = _ref; + var width = { + number: 0, + unit: "em" + }; + var height = { + number: 0.9, + unit: "em" + }; // sorta character sized. + + var totalheight = { + number: 0, + unit: "em" + }; + var alt = ""; + + if (optArgs[0]) { + var attributeStr = assertNodeType(optArgs[0], "raw").string; // Parser.js does not parse key/value pairs. We get a string. + + var attributes = attributeStr.split(","); + + for (var i = 0; i < attributes.length; i++) { + var keyVal = attributes[i].split("="); + + if (keyVal.length === 2) { + var str = keyVal[1].trim(); + + switch (keyVal[0].trim()) { + case "alt": + alt = str; + break; + + case "width": + width = sizeData(str); + break; + + case "height": + height = sizeData(str); + break; + + case "totalheight": + totalheight = sizeData(str); + break; + + default: + throw new ParseError("Invalid key: '" + keyVal[0] + "' in \\includegraphics."); + } + } + } + } + + var src = assertNodeType(args[0], "url").url; + + if (alt === "") { + // No alt given. Use the file name. Strip away the path. + alt = src; + alt = alt.replace(/^.*[\\/]/, ''); + alt = alt.substring(0, alt.lastIndexOf('.')); + } + + if (!parser.settings.isTrusted({ + command: "\\includegraphics", + url: src + })) { + return parser.formatUnsupportedCmd("\\includegraphics"); + } + + return { + type: "includegraphics", + mode: parser.mode, + alt: alt, + width: width, + height: height, + totalheight: totalheight, + src: src + }; + }, + htmlBuilder: (group, options) => { + var height = calculateSize(group.height, options); + var depth = 0; + + if (group.totalheight.number > 0) { + depth = calculateSize(group.totalheight, options) - height; + } + + var width = 0; + + if (group.width.number > 0) { + width = calculateSize(group.width, options); + } + + var style = { + height: makeEm(height + depth) + }; + + if (width > 0) { + style.width = makeEm(width); + } + + if (depth > 0) { + style.verticalAlign = makeEm(-depth); + } + + var node = new Img(group.src, group.alt, style); + node.height = height; + node.depth = depth; + return node; + }, + mathmlBuilder: (group, options) => { + var node = new mathMLTree.MathNode("mglyph", []); + node.setAttribute("alt", group.alt); + var height = calculateSize(group.height, options); + var depth = 0; + + if (group.totalheight.number > 0) { + depth = calculateSize(group.totalheight, options) - height; + node.setAttribute("valign", makeEm(-depth)); + } + + node.setAttribute("height", makeEm(height + depth)); + + if (group.width.number > 0) { + var width = calculateSize(group.width, options); + node.setAttribute("width", makeEm(width)); + } + + node.setAttribute("src", group.src); + return node; + } +}); + +// Horizontal spacing commands + +defineFunction({ + type: "kern", + names: ["\\kern", "\\mkern", "\\hskip", "\\mskip"], + props: { + numArgs: 1, + argTypes: ["size"], + primitive: true, + allowedInText: true + }, + + handler(_ref, args) { + var { + parser, + funcName + } = _ref; + var size = assertNodeType(args[0], "size"); + + if (parser.settings.strict) { + var mathFunction = funcName[1] === 'm'; // \mkern, \mskip + + var muUnit = size.value.unit === 'mu'; + + if (mathFunction) { + if (!muUnit) { + parser.settings.reportNonstrict("mathVsTextUnits", "LaTeX's " + funcName + " supports only mu units, " + ("not " + size.value.unit + " units")); + } + + if (parser.mode !== "math") { + parser.settings.reportNonstrict("mathVsTextUnits", "LaTeX's " + funcName + " works only in math mode"); + } + } else { + // !mathFunction + if (muUnit) { + parser.settings.reportNonstrict("mathVsTextUnits", "LaTeX's " + funcName + " doesn't support mu units"); + } + } + } + + return { + type: "kern", + mode: parser.mode, + dimension: size.value + }; + }, + + htmlBuilder(group, options) { + return buildCommon.makeGlue(group.dimension, options); + }, + + mathmlBuilder(group, options) { + var dimension = calculateSize(group.dimension, options); + return new mathMLTree.SpaceNode(dimension); + } + +}); + +// Horizontal overlap functions +defineFunction({ + type: "lap", + names: ["\\mathllap", "\\mathrlap", "\\mathclap"], + props: { + numArgs: 1, + allowedInText: true + }, + handler: (_ref, args) => { + var { + parser, + funcName + } = _ref; + var body = args[0]; + return { + type: "lap", + mode: parser.mode, + alignment: funcName.slice(5), + body + }; + }, + htmlBuilder: (group, options) => { + // mathllap, mathrlap, mathclap + var inner; + + if (group.alignment === "clap") { + // ref: https://www.math.lsu.edu/~aperlis/publications/mathclap/ + inner = buildCommon.makeSpan([], [buildGroup$1(group.body, options)]); // wrap, since CSS will center a .clap > .inner > span + + inner = buildCommon.makeSpan(["inner"], [inner], options); + } else { + inner = buildCommon.makeSpan(["inner"], [buildGroup$1(group.body, options)]); + } + + var fix = buildCommon.makeSpan(["fix"], []); + var node = buildCommon.makeSpan([group.alignment], [inner, fix], options); // At this point, we have correctly set horizontal alignment of the + // two items involved in the lap. + // Next, use a strut to set the height of the HTML bounding box. + // Otherwise, a tall argument may be misplaced. + // This code resolved issue #1153 + + var strut = buildCommon.makeSpan(["strut"]); + strut.style.height = makeEm(node.height + node.depth); + + if (node.depth) { + strut.style.verticalAlign = makeEm(-node.depth); + } + + node.children.unshift(strut); // Next, prevent vertical misplacement when next to something tall. + // This code resolves issue #1234 + + node = buildCommon.makeSpan(["thinbox"], [node], options); + return buildCommon.makeSpan(["mord", "vbox"], [node], options); + }, + mathmlBuilder: (group, options) => { + // mathllap, mathrlap, mathclap + var node = new mathMLTree.MathNode("mpadded", [buildGroup(group.body, options)]); + + if (group.alignment !== "rlap") { + var offset = group.alignment === "llap" ? "-1" : "-0.5"; + node.setAttribute("lspace", offset + "width"); + } + + node.setAttribute("width", "0px"); + return node; + } +}); + +defineFunction({ + type: "styling", + names: ["\\(", "$"], + props: { + numArgs: 0, + allowedInText: true, + allowedInMath: false + }, + + handler(_ref, args) { + var { + funcName, + parser + } = _ref; + var outerMode = parser.mode; + parser.switchMode("math"); + var close = funcName === "\\(" ? "\\)" : "$"; + var body = parser.parseExpression(false, close); + parser.expect(close); + parser.switchMode(outerMode); + return { + type: "styling", + mode: parser.mode, + style: "text", + body + }; + } + +}); // Check for extra closing math delimiters + +defineFunction({ + type: "text", + // Doesn't matter what this is. + names: ["\\)", "\\]"], + props: { + numArgs: 0, + allowedInText: true, + allowedInMath: false + }, + + handler(context, args) { + throw new ParseError("Mismatched " + context.funcName); + } + +}); + +var chooseMathStyle = (group, options) => { + switch (options.style.size) { + case Style$1.DISPLAY.size: + return group.display; + + case Style$1.TEXT.size: + return group.text; + + case Style$1.SCRIPT.size: + return group.script; + + case Style$1.SCRIPTSCRIPT.size: + return group.scriptscript; + + default: + return group.text; + } +}; + +defineFunction({ + type: "mathchoice", + names: ["\\mathchoice"], + props: { + numArgs: 4, + primitive: true + }, + handler: (_ref, args) => { + var { + parser + } = _ref; + return { + type: "mathchoice", + mode: parser.mode, + display: ordargument(args[0]), + text: ordargument(args[1]), + script: ordargument(args[2]), + scriptscript: ordargument(args[3]) + }; + }, + htmlBuilder: (group, options) => { + var body = chooseMathStyle(group, options); + var elements = buildExpression$1(body, options, false); + return buildCommon.makeFragment(elements); + }, + mathmlBuilder: (group, options) => { + var body = chooseMathStyle(group, options); + return buildExpressionRow(body, options); + } +}); + +var assembleSupSub = (base, supGroup, subGroup, options, style, slant, baseShift) => { + base = buildCommon.makeSpan([], [base]); + var subIsSingleCharacter = subGroup && utils.isCharacterBox(subGroup); + var sub; + var sup; // We manually have to handle the superscripts and subscripts. This, + // aside from the kern calculations, is copied from supsub. + + if (supGroup) { + var elem = buildGroup$1(supGroup, options.havingStyle(style.sup()), options); + sup = { + elem, + kern: Math.max(options.fontMetrics().bigOpSpacing1, options.fontMetrics().bigOpSpacing3 - elem.depth) + }; + } + + if (subGroup) { + var _elem = buildGroup$1(subGroup, options.havingStyle(style.sub()), options); + + sub = { + elem: _elem, + kern: Math.max(options.fontMetrics().bigOpSpacing2, options.fontMetrics().bigOpSpacing4 - _elem.height) + }; + } // Build the final group as a vlist of the possible subscript, base, + // and possible superscript. + + + var finalGroup; + + if (sup && sub) { + var bottom = options.fontMetrics().bigOpSpacing5 + sub.elem.height + sub.elem.depth + sub.kern + base.depth + baseShift; + finalGroup = buildCommon.makeVList({ + positionType: "bottom", + positionData: bottom, + children: [{ + type: "kern", + size: options.fontMetrics().bigOpSpacing5 + }, { + type: "elem", + elem: sub.elem, + marginLeft: makeEm(-slant) + }, { + type: "kern", + size: sub.kern + }, { + type: "elem", + elem: base + }, { + type: "kern", + size: sup.kern + }, { + type: "elem", + elem: sup.elem, + marginLeft: makeEm(slant) + }, { + type: "kern", + size: options.fontMetrics().bigOpSpacing5 + }] + }, options); + } else if (sub) { + var top = base.height - baseShift; // Shift the limits by the slant of the symbol. Note + // that we are supposed to shift the limits by 1/2 of the slant, + // but since we are centering the limits adding a full slant of + // margin will shift by 1/2 that. + + finalGroup = buildCommon.makeVList({ + positionType: "top", + positionData: top, + children: [{ + type: "kern", + size: options.fontMetrics().bigOpSpacing5 + }, { + type: "elem", + elem: sub.elem, + marginLeft: makeEm(-slant) + }, { + type: "kern", + size: sub.kern + }, { + type: "elem", + elem: base + }] + }, options); + } else if (sup) { + var _bottom = base.depth + baseShift; + + finalGroup = buildCommon.makeVList({ + positionType: "bottom", + positionData: _bottom, + children: [{ + type: "elem", + elem: base + }, { + type: "kern", + size: sup.kern + }, { + type: "elem", + elem: sup.elem, + marginLeft: makeEm(slant) + }, { + type: "kern", + size: options.fontMetrics().bigOpSpacing5 + }] + }, options); + } else { + // This case probably shouldn't occur (this would mean the + // supsub was sending us a group with no superscript or + // subscript) but be safe. + return base; + } + + var parts = [finalGroup]; + + if (sub && slant !== 0 && !subIsSingleCharacter) { + // A negative margin-left was applied to the lower limit. + // Avoid an overlap by placing a spacer on the left on the group. + var spacer = buildCommon.makeSpan(["mspace"], [], options); + spacer.style.marginRight = makeEm(slant); + parts.unshift(spacer); + } + + return buildCommon.makeSpan(["mop", "op-limits"], parts, options); +}; + +// Limits, symbols +// Most operators have a large successor symbol, but these don't. +var noSuccessor = ["\\smallint"]; // NOTE: Unlike most `htmlBuilder`s, this one handles not only "op", but also +// "supsub" since some of them (like \int) can affect super/subscripting. + +var htmlBuilder$2 = (grp, options) => { + // Operators are handled in the TeXbook pg. 443-444, rule 13(a). + var supGroup; + var subGroup; + var hasLimits = false; + var group; + + if (grp.type === "supsub") { + // If we have limits, supsub will pass us its group to handle. Pull + // out the superscript and subscript and set the group to the op in + // its base. + supGroup = grp.sup; + subGroup = grp.sub; + group = assertNodeType(grp.base, "op"); + hasLimits = true; + } else { + group = assertNodeType(grp, "op"); + } + + var style = options.style; + var large = false; + + if (style.size === Style$1.DISPLAY.size && group.symbol && !utils.contains(noSuccessor, group.name)) { + // Most symbol operators get larger in displaystyle (rule 13) + large = true; + } + + var base; + + if (group.symbol) { + // If this is a symbol, create the symbol. + var fontName = large ? "Size2-Regular" : "Size1-Regular"; + var stash = ""; + + if (group.name === "\\oiint" || group.name === "\\oiiint") { + // No font glyphs yet, so use a glyph w/o the oval. + // TODO: When font glyphs are available, delete this code. + stash = group.name.slice(1); + group.name = stash === "oiint" ? "\\iint" : "\\iiint"; + } + + base = buildCommon.makeSymbol(group.name, fontName, "math", options, ["mop", "op-symbol", large ? "large-op" : "small-op"]); + + if (stash.length > 0) { + // We're in \oiint or \oiiint. Overlay the oval. + // TODO: When font glyphs are available, delete this code. + var italic = base.italic; + var oval = buildCommon.staticSvg(stash + "Size" + (large ? "2" : "1"), options); + base = buildCommon.makeVList({ + positionType: "individualShift", + children: [{ + type: "elem", + elem: base, + shift: 0 + }, { + type: "elem", + elem: oval, + shift: large ? 0.08 : 0 + }] + }, options); + group.name = "\\" + stash; + base.classes.unshift("mop"); // $FlowFixMe + + base.italic = italic; + } + } else if (group.body) { + // If this is a list, compose that list. + var inner = buildExpression$1(group.body, options, true); + + if (inner.length === 1 && inner[0] instanceof SymbolNode) { + base = inner[0]; + base.classes[0] = "mop"; // replace old mclass + } else { + base = buildCommon.makeSpan(["mop"], inner, options); + } + } else { + // Otherwise, this is a text operator. Build the text from the + // operator's name. + var output = []; + + for (var i = 1; i < group.name.length; i++) { + output.push(buildCommon.mathsym(group.name[i], group.mode, options)); + } + + base = buildCommon.makeSpan(["mop"], output, options); + } // If content of op is a single symbol, shift it vertically. + + + var baseShift = 0; + var slant = 0; + + if ((base instanceof SymbolNode || group.name === "\\oiint" || group.name === "\\oiiint") && !group.suppressBaseShift) { + // We suppress the shift of the base of \overset and \underset. Otherwise, + // shift the symbol so its center lies on the axis (rule 13). It + // appears that our fonts have the centers of the symbols already + // almost on the axis, so these numbers are very small. Note we + // don't actually apply this here, but instead it is used either in + // the vlist creation or separately when there are no limits. + baseShift = (base.height - base.depth) / 2 - options.fontMetrics().axisHeight; // The slant of the symbol is just its italic correction. + // $FlowFixMe + + slant = base.italic; + } + + if (hasLimits) { + return assembleSupSub(base, supGroup, subGroup, options, style, slant, baseShift); + } else { + if (baseShift) { + base.style.position = "relative"; + base.style.top = makeEm(baseShift); + } + + return base; + } +}; + +var mathmlBuilder$1 = (group, options) => { + var node; + + if (group.symbol) { + // This is a symbol. Just add the symbol. + node = new MathNode("mo", [makeText(group.name, group.mode)]); + + if (utils.contains(noSuccessor, group.name)) { + node.setAttribute("largeop", "false"); + } + } else if (group.body) { + // This is an operator with children. Add them. + node = new MathNode("mo", buildExpression(group.body, options)); + } else { + // This is a text operator. Add all of the characters from the + // operator's name. + node = new MathNode("mi", [new TextNode(group.name.slice(1))]); // Append an . + // ref: https://www.w3.org/TR/REC-MathML/chap3_2.html#sec3.2.4 + + var operator = new MathNode("mo", [makeText("\u2061", "text")]); + + if (group.parentIsSupSub) { + node = new MathNode("mrow", [node, operator]); + } else { + node = newDocumentFragment([node, operator]); + } + } + + return node; +}; + +var singleCharBigOps = { + "\u220F": "\\prod", + "\u2210": "\\coprod", + "\u2211": "\\sum", + "\u22c0": "\\bigwedge", + "\u22c1": "\\bigvee", + "\u22c2": "\\bigcap", + "\u22c3": "\\bigcup", + "\u2a00": "\\bigodot", + "\u2a01": "\\bigoplus", + "\u2a02": "\\bigotimes", + "\u2a04": "\\biguplus", + "\u2a06": "\\bigsqcup" +}; +defineFunction({ + type: "op", + names: ["\\coprod", "\\bigvee", "\\bigwedge", "\\biguplus", "\\bigcap", "\\bigcup", "\\intop", "\\prod", "\\sum", "\\bigotimes", "\\bigoplus", "\\bigodot", "\\bigsqcup", "\\smallint", "\u220F", "\u2210", "\u2211", "\u22c0", "\u22c1", "\u22c2", "\u22c3", "\u2a00", "\u2a01", "\u2a02", "\u2a04", "\u2a06"], + props: { + numArgs: 0 + }, + handler: (_ref, args) => { + var { + parser, + funcName + } = _ref; + var fName = funcName; + + if (fName.length === 1) { + fName = singleCharBigOps[fName]; + } + + return { + type: "op", + mode: parser.mode, + limits: true, + parentIsSupSub: false, + symbol: true, + name: fName + }; + }, + htmlBuilder: htmlBuilder$2, + mathmlBuilder: mathmlBuilder$1 +}); // Note: calling defineFunction with a type that's already been defined only +// works because the same htmlBuilder and mathmlBuilder are being used. + +defineFunction({ + type: "op", + names: ["\\mathop"], + props: { + numArgs: 1, + primitive: true + }, + handler: (_ref2, args) => { + var { + parser + } = _ref2; + var body = args[0]; + return { + type: "op", + mode: parser.mode, + limits: false, + parentIsSupSub: false, + symbol: false, + body: ordargument(body) + }; + }, + htmlBuilder: htmlBuilder$2, + mathmlBuilder: mathmlBuilder$1 +}); // There are 2 flags for operators; whether they produce limits in +// displaystyle, and whether they are symbols and should grow in +// displaystyle. These four groups cover the four possible choices. + +var singleCharIntegrals = { + "\u222b": "\\int", + "\u222c": "\\iint", + "\u222d": "\\iiint", + "\u222e": "\\oint", + "\u222f": "\\oiint", + "\u2230": "\\oiiint" +}; // No limits, not symbols + +defineFunction({ + type: "op", + names: ["\\arcsin", "\\arccos", "\\arctan", "\\arctg", "\\arcctg", "\\arg", "\\ch", "\\cos", "\\cosec", "\\cosh", "\\cot", "\\cotg", "\\coth", "\\csc", "\\ctg", "\\cth", "\\deg", "\\dim", "\\exp", "\\hom", "\\ker", "\\lg", "\\ln", "\\log", "\\sec", "\\sin", "\\sinh", "\\sh", "\\tan", "\\tanh", "\\tg", "\\th"], + props: { + numArgs: 0 + }, + + handler(_ref3) { + var { + parser, + funcName + } = _ref3; + return { + type: "op", + mode: parser.mode, + limits: false, + parentIsSupSub: false, + symbol: false, + name: funcName + }; + }, + + htmlBuilder: htmlBuilder$2, + mathmlBuilder: mathmlBuilder$1 +}); // Limits, not symbols + +defineFunction({ + type: "op", + names: ["\\det", "\\gcd", "\\inf", "\\lim", "\\max", "\\min", "\\Pr", "\\sup"], + props: { + numArgs: 0 + }, + + handler(_ref4) { + var { + parser, + funcName + } = _ref4; + return { + type: "op", + mode: parser.mode, + limits: true, + parentIsSupSub: false, + symbol: false, + name: funcName + }; + }, + + htmlBuilder: htmlBuilder$2, + mathmlBuilder: mathmlBuilder$1 +}); // No limits, symbols + +defineFunction({ + type: "op", + names: ["\\int", "\\iint", "\\iiint", "\\oint", "\\oiint", "\\oiiint", "\u222b", "\u222c", "\u222d", "\u222e", "\u222f", "\u2230"], + props: { + numArgs: 0 + }, + + handler(_ref5) { + var { + parser, + funcName + } = _ref5; + var fName = funcName; + + if (fName.length === 1) { + fName = singleCharIntegrals[fName]; + } + + return { + type: "op", + mode: parser.mode, + limits: false, + parentIsSupSub: false, + symbol: true, + name: fName + }; + }, + + htmlBuilder: htmlBuilder$2, + mathmlBuilder: mathmlBuilder$1 +}); + +// NOTE: Unlike most `htmlBuilder`s, this one handles not only +// "operatorname", but also "supsub" since \operatorname* can +// affect super/subscripting. +var htmlBuilder$1 = (grp, options) => { + // Operators are handled in the TeXbook pg. 443-444, rule 13(a). + var supGroup; + var subGroup; + var hasLimits = false; + var group; + + if (grp.type === "supsub") { + // If we have limits, supsub will pass us its group to handle. Pull + // out the superscript and subscript and set the group to the op in + // its base. + supGroup = grp.sup; + subGroup = grp.sub; + group = assertNodeType(grp.base, "operatorname"); + hasLimits = true; + } else { + group = assertNodeType(grp, "operatorname"); + } + + var base; + + if (group.body.length > 0) { + var body = group.body.map(child => { + // $FlowFixMe: Check if the node has a string `text` property. + var childText = child.text; + + if (typeof childText === "string") { + return { + type: "textord", + mode: child.mode, + text: childText + }; + } else { + return child; + } + }); // Consolidate function names into symbol characters. + + var expression = buildExpression$1(body, options.withFont("mathrm"), true); + + for (var i = 0; i < expression.length; i++) { + var child = expression[i]; + + if (child instanceof SymbolNode) { + // Per amsopn package, + // change minus to hyphen and \ast to asterisk + child.text = child.text.replace(/\u2212/, "-").replace(/\u2217/, "*"); + } + } + + base = buildCommon.makeSpan(["mop"], expression, options); + } else { + base = buildCommon.makeSpan(["mop"], [], options); + } + + if (hasLimits) { + return assembleSupSub(base, supGroup, subGroup, options, options.style, 0, 0); + } else { + return base; + } +}; + +var mathmlBuilder = (group, options) => { + // The steps taken here are similar to the html version. + var expression = buildExpression(group.body, options.withFont("mathrm")); // Is expression a string or has it something like a fraction? + + var isAllString = true; // default + + for (var i = 0; i < expression.length; i++) { + var node = expression[i]; + + if (node instanceof mathMLTree.SpaceNode) ; else if (node instanceof mathMLTree.MathNode) { + switch (node.type) { + case "mi": + case "mn": + case "ms": + case "mspace": + case "mtext": + break; + // Do nothing yet. + + case "mo": + { + var child = node.children[0]; + + if (node.children.length === 1 && child instanceof mathMLTree.TextNode) { + child.text = child.text.replace(/\u2212/, "-").replace(/\u2217/, "*"); + } else { + isAllString = false; + } + + break; + } + + default: + isAllString = false; + } + } else { + isAllString = false; + } + } + + if (isAllString) { + // Write a single TextNode instead of multiple nested tags. + var word = expression.map(node => node.toText()).join(""); + expression = [new mathMLTree.TextNode(word)]; + } + + var identifier = new mathMLTree.MathNode("mi", expression); + identifier.setAttribute("mathvariant", "normal"); // \u2061 is the same as ⁡ + // ref: https://www.w3schools.com/charsets/ref_html_entities_a.asp + + var operator = new mathMLTree.MathNode("mo", [makeText("\u2061", "text")]); + + if (group.parentIsSupSub) { + return new mathMLTree.MathNode("mrow", [identifier, operator]); + } else { + return mathMLTree.newDocumentFragment([identifier, operator]); + } +}; // \operatorname +// amsopn.dtx: \mathop{#1\kern\z@\operator@font#3}\newmcodes@ + + +defineFunction({ + type: "operatorname", + names: ["\\operatorname@", "\\operatornamewithlimits"], + props: { + numArgs: 1 + }, + handler: (_ref, args) => { + var { + parser, + funcName + } = _ref; + var body = args[0]; + return { + type: "operatorname", + mode: parser.mode, + body: ordargument(body), + alwaysHandleSupSub: funcName === "\\operatornamewithlimits", + limits: false, + parentIsSupSub: false + }; + }, + htmlBuilder: htmlBuilder$1, + mathmlBuilder +}); +defineMacro("\\operatorname", "\\@ifstar\\operatornamewithlimits\\operatorname@"); + +defineFunctionBuilders({ + type: "ordgroup", + + htmlBuilder(group, options) { + if (group.semisimple) { + return buildCommon.makeFragment(buildExpression$1(group.body, options, false)); + } + + return buildCommon.makeSpan(["mord"], buildExpression$1(group.body, options, true), options); + }, + + mathmlBuilder(group, options) { + return buildExpressionRow(group.body, options, true); + } + +}); + +defineFunction({ + type: "overline", + names: ["\\overline"], + props: { + numArgs: 1 + }, + + handler(_ref, args) { + var { + parser + } = _ref; + var body = args[0]; + return { + type: "overline", + mode: parser.mode, + body + }; + }, + + htmlBuilder(group, options) { + // Overlines are handled in the TeXbook pg 443, Rule 9. + // Build the inner group in the cramped style. + var innerGroup = buildGroup$1(group.body, options.havingCrampedStyle()); // Create the line above the body + + var line = buildCommon.makeLineSpan("overline-line", options); // Generate the vlist, with the appropriate kerns + + var defaultRuleThickness = options.fontMetrics().defaultRuleThickness; + var vlist = buildCommon.makeVList({ + positionType: "firstBaseline", + children: [{ + type: "elem", + elem: innerGroup + }, { + type: "kern", + size: 3 * defaultRuleThickness + }, { + type: "elem", + elem: line + }, { + type: "kern", + size: defaultRuleThickness + }] + }, options); + return buildCommon.makeSpan(["mord", "overline"], [vlist], options); + }, + + mathmlBuilder(group, options) { + var operator = new mathMLTree.MathNode("mo", [new mathMLTree.TextNode("\u203e")]); + operator.setAttribute("stretchy", "true"); + var node = new mathMLTree.MathNode("mover", [buildGroup(group.body, options), operator]); + node.setAttribute("accent", "true"); + return node; + } + +}); + +defineFunction({ + type: "phantom", + names: ["\\phantom"], + props: { + numArgs: 1, + allowedInText: true + }, + handler: (_ref, args) => { + var { + parser + } = _ref; + var body = args[0]; + return { + type: "phantom", + mode: parser.mode, + body: ordargument(body) + }; + }, + htmlBuilder: (group, options) => { + var elements = buildExpression$1(group.body, options.withPhantom(), false); // \phantom isn't supposed to affect the elements it contains. + // See "color" for more details. + + return buildCommon.makeFragment(elements); + }, + mathmlBuilder: (group, options) => { + var inner = buildExpression(group.body, options); + return new mathMLTree.MathNode("mphantom", inner); + } +}); +defineFunction({ + type: "hphantom", + names: ["\\hphantom"], + props: { + numArgs: 1, + allowedInText: true + }, + handler: (_ref2, args) => { + var { + parser + } = _ref2; + var body = args[0]; + return { + type: "hphantom", + mode: parser.mode, + body + }; + }, + htmlBuilder: (group, options) => { + var node = buildCommon.makeSpan([], [buildGroup$1(group.body, options.withPhantom())]); + node.height = 0; + node.depth = 0; + + if (node.children) { + for (var i = 0; i < node.children.length; i++) { + node.children[i].height = 0; + node.children[i].depth = 0; + } + } // See smash for comment re: use of makeVList + + + node = buildCommon.makeVList({ + positionType: "firstBaseline", + children: [{ + type: "elem", + elem: node + }] + }, options); // For spacing, TeX treats \smash as a math group (same spacing as ord). + + return buildCommon.makeSpan(["mord"], [node], options); + }, + mathmlBuilder: (group, options) => { + var inner = buildExpression(ordargument(group.body), options); + var phantom = new mathMLTree.MathNode("mphantom", inner); + var node = new mathMLTree.MathNode("mpadded", [phantom]); + node.setAttribute("height", "0px"); + node.setAttribute("depth", "0px"); + return node; + } +}); +defineFunction({ + type: "vphantom", + names: ["\\vphantom"], + props: { + numArgs: 1, + allowedInText: true + }, + handler: (_ref3, args) => { + var { + parser + } = _ref3; + var body = args[0]; + return { + type: "vphantom", + mode: parser.mode, + body + }; + }, + htmlBuilder: (group, options) => { + var inner = buildCommon.makeSpan(["inner"], [buildGroup$1(group.body, options.withPhantom())]); + var fix = buildCommon.makeSpan(["fix"], []); + return buildCommon.makeSpan(["mord", "rlap"], [inner, fix], options); + }, + mathmlBuilder: (group, options) => { + var inner = buildExpression(ordargument(group.body), options); + var phantom = new mathMLTree.MathNode("mphantom", inner); + var node = new mathMLTree.MathNode("mpadded", [phantom]); + node.setAttribute("width", "0px"); + return node; + } +}); + +defineFunction({ + type: "raisebox", + names: ["\\raisebox"], + props: { + numArgs: 2, + argTypes: ["size", "hbox"], + allowedInText: true + }, + + handler(_ref, args) { + var { + parser + } = _ref; + var amount = assertNodeType(args[0], "size").value; + var body = args[1]; + return { + type: "raisebox", + mode: parser.mode, + dy: amount, + body + }; + }, + + htmlBuilder(group, options) { + var body = buildGroup$1(group.body, options); + var dy = calculateSize(group.dy, options); + return buildCommon.makeVList({ + positionType: "shift", + positionData: -dy, + children: [{ + type: "elem", + elem: body + }] + }, options); + }, + + mathmlBuilder(group, options) { + var node = new mathMLTree.MathNode("mpadded", [buildGroup(group.body, options)]); + var dy = group.dy.number + group.dy.unit; + node.setAttribute("voffset", dy); + return node; + } + +}); + +defineFunction({ + type: "internal", + names: ["\\relax"], + props: { + numArgs: 0, + allowedInText: true + }, + + handler(_ref) { + var { + parser + } = _ref; + return { + type: "internal", + mode: parser.mode + }; + } + +}); + +defineFunction({ + type: "rule", + names: ["\\rule"], + props: { + numArgs: 2, + numOptionalArgs: 1, + argTypes: ["size", "size", "size"] + }, + + handler(_ref, args, optArgs) { + var { + parser + } = _ref; + var shift = optArgs[0]; + var width = assertNodeType(args[0], "size"); + var height = assertNodeType(args[1], "size"); + return { + type: "rule", + mode: parser.mode, + shift: shift && assertNodeType(shift, "size").value, + width: width.value, + height: height.value + }; + }, + + htmlBuilder(group, options) { + // Make an empty span for the rule + var rule = buildCommon.makeSpan(["mord", "rule"], [], options); // Calculate the shift, width, and height of the rule, and account for units + + var width = calculateSize(group.width, options); + var height = calculateSize(group.height, options); + var shift = group.shift ? calculateSize(group.shift, options) : 0; // Style the rule to the right size + + rule.style.borderRightWidth = makeEm(width); + rule.style.borderTopWidth = makeEm(height); + rule.style.bottom = makeEm(shift); // Record the height and width + + rule.width = width; + rule.height = height + shift; + rule.depth = -shift; // Font size is the number large enough that the browser will + // reserve at least `absHeight` space above the baseline. + // The 1.125 factor was empirically determined + + rule.maxFontSize = height * 1.125 * options.sizeMultiplier; + return rule; + }, + + mathmlBuilder(group, options) { + var width = calculateSize(group.width, options); + var height = calculateSize(group.height, options); + var shift = group.shift ? calculateSize(group.shift, options) : 0; + var color = options.color && options.getColor() || "black"; + var rule = new mathMLTree.MathNode("mspace"); + rule.setAttribute("mathbackground", color); + rule.setAttribute("width", makeEm(width)); + rule.setAttribute("height", makeEm(height)); + var wrapper = new mathMLTree.MathNode("mpadded", [rule]); + + if (shift >= 0) { + wrapper.setAttribute("height", makeEm(shift)); + } else { + wrapper.setAttribute("height", makeEm(shift)); + wrapper.setAttribute("depth", makeEm(-shift)); + } + + wrapper.setAttribute("voffset", makeEm(shift)); + return wrapper; + } + +}); + +function sizingGroup(value, options, baseOptions) { + var inner = buildExpression$1(value, options, false); + var multiplier = options.sizeMultiplier / baseOptions.sizeMultiplier; // Add size-resetting classes to the inner list and set maxFontSize + // manually. Handle nested size changes. + + for (var i = 0; i < inner.length; i++) { + var pos = inner[i].classes.indexOf("sizing"); + + if (pos < 0) { + Array.prototype.push.apply(inner[i].classes, options.sizingClasses(baseOptions)); + } else if (inner[i].classes[pos + 1] === "reset-size" + options.size) { + // This is a nested size change: e.g., inner[i] is the "b" in + // `\Huge a \small b`. Override the old size (the `reset-` class) + // but not the new size. + inner[i].classes[pos + 1] = "reset-size" + baseOptions.size; + } + + inner[i].height *= multiplier; + inner[i].depth *= multiplier; + } + + return buildCommon.makeFragment(inner); +} +var sizeFuncs = ["\\tiny", "\\sixptsize", "\\scriptsize", "\\footnotesize", "\\small", "\\normalsize", "\\large", "\\Large", "\\LARGE", "\\huge", "\\Huge"]; +var htmlBuilder = (group, options) => { + // Handle sizing operators like \Huge. Real TeX doesn't actually allow + // these functions inside of math expressions, so we do some special + // handling. + var newOptions = options.havingSize(group.size); + return sizingGroup(group.body, newOptions, options); +}; +defineFunction({ + type: "sizing", + names: sizeFuncs, + props: { + numArgs: 0, + allowedInText: true + }, + handler: (_ref, args) => { + var { + breakOnTokenText, + funcName, + parser + } = _ref; + var body = parser.parseExpression(false, breakOnTokenText); + return { + type: "sizing", + mode: parser.mode, + // Figure out what size to use based on the list of functions above + size: sizeFuncs.indexOf(funcName) + 1, + body + }; + }, + htmlBuilder, + mathmlBuilder: (group, options) => { + var newOptions = options.havingSize(group.size); + var inner = buildExpression(group.body, newOptions); + var node = new mathMLTree.MathNode("mstyle", inner); // TODO(emily): This doesn't produce the correct size for nested size + // changes, because we don't keep state of what style we're currently + // in, so we can't reset the size to normal before changing it. Now + // that we're passing an options parameter we should be able to fix + // this. + + node.setAttribute("mathsize", makeEm(newOptions.sizeMultiplier)); + return node; + } +}); + +// smash, with optional [tb], as in AMS +defineFunction({ + type: "smash", + names: ["\\smash"], + props: { + numArgs: 1, + numOptionalArgs: 1, + allowedInText: true + }, + handler: (_ref, args, optArgs) => { + var { + parser + } = _ref; + var smashHeight = false; + var smashDepth = false; + var tbArg = optArgs[0] && assertNodeType(optArgs[0], "ordgroup"); + + if (tbArg) { + // Optional [tb] argument is engaged. + // ref: amsmath: \renewcommand{\smash}[1][tb]{% + // def\mb@t{\ht}\def\mb@b{\dp}\def\mb@tb{\ht\z@\z@\dp}% + var letter = ""; + + for (var i = 0; i < tbArg.body.length; ++i) { + var node = tbArg.body[i]; // $FlowFixMe: Not every node type has a `text` property. + + letter = node.text; + + if (letter === "t") { + smashHeight = true; + } else if (letter === "b") { + smashDepth = true; + } else { + smashHeight = false; + smashDepth = false; + break; + } + } + } else { + smashHeight = true; + smashDepth = true; + } + + var body = args[0]; + return { + type: "smash", + mode: parser.mode, + body, + smashHeight, + smashDepth + }; + }, + htmlBuilder: (group, options) => { + var node = buildCommon.makeSpan([], [buildGroup$1(group.body, options)]); + + if (!group.smashHeight && !group.smashDepth) { + return node; + } + + if (group.smashHeight) { + node.height = 0; // In order to influence makeVList, we have to reset the children. + + if (node.children) { + for (var i = 0; i < node.children.length; i++) { + node.children[i].height = 0; + } + } + } + + if (group.smashDepth) { + node.depth = 0; + + if (node.children) { + for (var _i = 0; _i < node.children.length; _i++) { + node.children[_i].depth = 0; + } + } + } // At this point, we've reset the TeX-like height and depth values. + // But the span still has an HTML line height. + // makeVList applies "display: table-cell", which prevents the browser + // from acting on that line height. So we'll call makeVList now. + + + var smashedNode = buildCommon.makeVList({ + positionType: "firstBaseline", + children: [{ + type: "elem", + elem: node + }] + }, options); // For spacing, TeX treats \hphantom as a math group (same spacing as ord). + + return buildCommon.makeSpan(["mord"], [smashedNode], options); + }, + mathmlBuilder: (group, options) => { + var node = new mathMLTree.MathNode("mpadded", [buildGroup(group.body, options)]); + + if (group.smashHeight) { + node.setAttribute("height", "0px"); + } + + if (group.smashDepth) { + node.setAttribute("depth", "0px"); + } + + return node; + } +}); + +defineFunction({ + type: "sqrt", + names: ["\\sqrt"], + props: { + numArgs: 1, + numOptionalArgs: 1 + }, + + handler(_ref, args, optArgs) { + var { + parser + } = _ref; + var index = optArgs[0]; + var body = args[0]; + return { + type: "sqrt", + mode: parser.mode, + body, + index + }; + }, + + htmlBuilder(group, options) { + // Square roots are handled in the TeXbook pg. 443, Rule 11. + // First, we do the same steps as in overline to build the inner group + // and line + var inner = buildGroup$1(group.body, options.havingCrampedStyle()); + + if (inner.height === 0) { + // Render a small surd. + inner.height = options.fontMetrics().xHeight; + } // Some groups can return document fragments. Handle those by wrapping + // them in a span. + + + inner = buildCommon.wrapFragment(inner, options); // Calculate the minimum size for the \surd delimiter + + var metrics = options.fontMetrics(); + var theta = metrics.defaultRuleThickness; + var phi = theta; + + if (options.style.id < Style$1.TEXT.id) { + phi = options.fontMetrics().xHeight; + } // Calculate the clearance between the body and line + + + var lineClearance = theta + phi / 4; + var minDelimiterHeight = inner.height + inner.depth + lineClearance + theta; // Create a sqrt SVG of the required minimum size + + var { + span: img, + ruleWidth, + advanceWidth + } = delimiter.sqrtImage(minDelimiterHeight, options); + var delimDepth = img.height - ruleWidth; // Adjust the clearance based on the delimiter size + + if (delimDepth > inner.height + inner.depth + lineClearance) { + lineClearance = (lineClearance + delimDepth - inner.height - inner.depth) / 2; + } // Shift the sqrt image + + + var imgShift = img.height - inner.height - lineClearance - ruleWidth; + inner.style.paddingLeft = makeEm(advanceWidth); // Overlay the image and the argument. + + var body = buildCommon.makeVList({ + positionType: "firstBaseline", + children: [{ + type: "elem", + elem: inner, + wrapperClasses: ["svg-align"] + }, { + type: "kern", + size: -(inner.height + imgShift) + }, { + type: "elem", + elem: img + }, { + type: "kern", + size: ruleWidth + }] + }, options); + + if (!group.index) { + return buildCommon.makeSpan(["mord", "sqrt"], [body], options); + } else { + // Handle the optional root index + // The index is always in scriptscript style + var newOptions = options.havingStyle(Style$1.SCRIPTSCRIPT); + var rootm = buildGroup$1(group.index, newOptions, options); // The amount the index is shifted by. This is taken from the TeX + // source, in the definition of `\r@@t`. + + var toShift = 0.6 * (body.height - body.depth); // Build a VList with the superscript shifted up correctly + + var rootVList = buildCommon.makeVList({ + positionType: "shift", + positionData: -toShift, + children: [{ + type: "elem", + elem: rootm + }] + }, options); // Add a class surrounding it so we can add on the appropriate + // kerning + + var rootVListWrap = buildCommon.makeSpan(["root"], [rootVList]); + return buildCommon.makeSpan(["mord", "sqrt"], [rootVListWrap, body], options); + } + }, + + mathmlBuilder(group, options) { + var { + body, + index + } = group; + return index ? new mathMLTree.MathNode("mroot", [buildGroup(body, options), buildGroup(index, options)]) : new mathMLTree.MathNode("msqrt", [buildGroup(body, options)]); + } + +}); + +var styleMap = { + "display": Style$1.DISPLAY, + "text": Style$1.TEXT, + "script": Style$1.SCRIPT, + "scriptscript": Style$1.SCRIPTSCRIPT +}; +defineFunction({ + type: "styling", + names: ["\\displaystyle", "\\textstyle", "\\scriptstyle", "\\scriptscriptstyle"], + props: { + numArgs: 0, + allowedInText: true, + primitive: true + }, + + handler(_ref, args) { + var { + breakOnTokenText, + funcName, + parser + } = _ref; + // parse out the implicit body + var body = parser.parseExpression(true, breakOnTokenText); // TODO: Refactor to avoid duplicating styleMap in multiple places (e.g. + // here and in buildHTML and de-dupe the enumeration of all the styles). + // $FlowFixMe: The names above exactly match the styles. + + var style = funcName.slice(1, funcName.length - 5); + return { + type: "styling", + mode: parser.mode, + // Figure out what style to use by pulling out the style from + // the function name + style, + body + }; + }, + + htmlBuilder(group, options) { + // Style changes are handled in the TeXbook on pg. 442, Rule 3. + var newStyle = styleMap[group.style]; + var newOptions = options.havingStyle(newStyle).withFont(''); + return sizingGroup(group.body, newOptions, options); + }, + + mathmlBuilder(group, options) { + // Figure out what style we're changing to. + var newStyle = styleMap[group.style]; + var newOptions = options.havingStyle(newStyle); + var inner = buildExpression(group.body, newOptions); + var node = new mathMLTree.MathNode("mstyle", inner); + var styleAttributes = { + "display": ["0", "true"], + "text": ["0", "false"], + "script": ["1", "false"], + "scriptscript": ["2", "false"] + }; + var attr = styleAttributes[group.style]; + node.setAttribute("scriptlevel", attr[0]); + node.setAttribute("displaystyle", attr[1]); + return node; + } + +}); + +/** + * Sometimes, groups perform special rules when they have superscripts or + * subscripts attached to them. This function lets the `supsub` group know that + * Sometimes, groups perform special rules when they have superscripts or + * its inner element should handle the superscripts and subscripts instead of + * handling them itself. + */ +var htmlBuilderDelegate = function htmlBuilderDelegate(group, options) { + var base = group.base; + + if (!base) { + return null; + } else if (base.type === "op") { + // Operators handle supsubs differently when they have limits + // (e.g. `\displaystyle\sum_2^3`) + var delegate = base.limits && (options.style.size === Style$1.DISPLAY.size || base.alwaysHandleSupSub); + return delegate ? htmlBuilder$2 : null; + } else if (base.type === "operatorname") { + var _delegate = base.alwaysHandleSupSub && (options.style.size === Style$1.DISPLAY.size || base.limits); + + return _delegate ? htmlBuilder$1 : null; + } else if (base.type === "accent") { + return utils.isCharacterBox(base.base) ? htmlBuilder$a : null; + } else if (base.type === "horizBrace") { + var isSup = !group.sub; + return isSup === base.isOver ? htmlBuilder$3 : null; + } else { + return null; + } +}; // Super scripts and subscripts, whose precise placement can depend on other +// functions that precede them. + + +defineFunctionBuilders({ + type: "supsub", + + htmlBuilder(group, options) { + // Superscript and subscripts are handled in the TeXbook on page + // 445-446, rules 18(a-f). + // Here is where we defer to the inner group if it should handle + // superscripts and subscripts itself. + var builderDelegate = htmlBuilderDelegate(group, options); + + if (builderDelegate) { + return builderDelegate(group, options); + } + + var { + base: valueBase, + sup: valueSup, + sub: valueSub + } = group; + var base = buildGroup$1(valueBase, options); + var supm; + var subm; + var metrics = options.fontMetrics(); // Rule 18a + + var supShift = 0; + var subShift = 0; + var isCharacterBox = valueBase && utils.isCharacterBox(valueBase); + + if (valueSup) { + var newOptions = options.havingStyle(options.style.sup()); + supm = buildGroup$1(valueSup, newOptions, options); + + if (!isCharacterBox) { + supShift = base.height - newOptions.fontMetrics().supDrop * newOptions.sizeMultiplier / options.sizeMultiplier; + } + } + + if (valueSub) { + var _newOptions = options.havingStyle(options.style.sub()); + + subm = buildGroup$1(valueSub, _newOptions, options); + + if (!isCharacterBox) { + subShift = base.depth + _newOptions.fontMetrics().subDrop * _newOptions.sizeMultiplier / options.sizeMultiplier; + } + } // Rule 18c + + + var minSupShift; + + if (options.style === Style$1.DISPLAY) { + minSupShift = metrics.sup1; + } else if (options.style.cramped) { + minSupShift = metrics.sup3; + } else { + minSupShift = metrics.sup2; + } // scriptspace is a font-size-independent size, so scale it + // appropriately for use as the marginRight. + + + var multiplier = options.sizeMultiplier; + var marginRight = makeEm(0.5 / metrics.ptPerEm / multiplier); + var marginLeft = null; + + if (subm) { + // Subscripts shouldn't be shifted by the base's italic correction. + // Account for that by shifting the subscript back the appropriate + // amount. Note we only do this when the base is a single symbol. + var isOiint = group.base && group.base.type === "op" && group.base.name && (group.base.name === "\\oiint" || group.base.name === "\\oiiint"); + + if (base instanceof SymbolNode || isOiint) { + // $FlowFixMe + marginLeft = makeEm(-base.italic); + } + } + + var supsub; + + if (supm && subm) { + supShift = Math.max(supShift, minSupShift, supm.depth + 0.25 * metrics.xHeight); + subShift = Math.max(subShift, metrics.sub2); + var ruleWidth = metrics.defaultRuleThickness; // Rule 18e + + var maxWidth = 4 * ruleWidth; + + if (supShift - supm.depth - (subm.height - subShift) < maxWidth) { + subShift = maxWidth - (supShift - supm.depth) + subm.height; + var psi = 0.8 * metrics.xHeight - (supShift - supm.depth); + + if (psi > 0) { + supShift += psi; + subShift -= psi; + } + } + + var vlistElem = [{ + type: "elem", + elem: subm, + shift: subShift, + marginRight, + marginLeft + }, { + type: "elem", + elem: supm, + shift: -supShift, + marginRight + }]; + supsub = buildCommon.makeVList({ + positionType: "individualShift", + children: vlistElem + }, options); + } else if (subm) { + // Rule 18b + subShift = Math.max(subShift, metrics.sub1, subm.height - 0.8 * metrics.xHeight); + var _vlistElem = [{ + type: "elem", + elem: subm, + marginLeft, + marginRight + }]; + supsub = buildCommon.makeVList({ + positionType: "shift", + positionData: subShift, + children: _vlistElem + }, options); + } else if (supm) { + // Rule 18c, d + supShift = Math.max(supShift, minSupShift, supm.depth + 0.25 * metrics.xHeight); + supsub = buildCommon.makeVList({ + positionType: "shift", + positionData: -supShift, + children: [{ + type: "elem", + elem: supm, + marginRight + }] + }, options); + } else { + throw new Error("supsub must have either sup or sub."); + } // Wrap the supsub vlist in a span.msupsub to reset text-align. + + + var mclass = getTypeOfDomTree(base, "right") || "mord"; + return buildCommon.makeSpan([mclass], [base, buildCommon.makeSpan(["msupsub"], [supsub])], options); + }, + + mathmlBuilder(group, options) { + // Is the inner group a relevant horizonal brace? + var isBrace = false; + var isOver; + var isSup; + + if (group.base && group.base.type === "horizBrace") { + isSup = !!group.sup; + + if (isSup === group.base.isOver) { + isBrace = true; + isOver = group.base.isOver; + } + } + + if (group.base && (group.base.type === "op" || group.base.type === "operatorname")) { + group.base.parentIsSupSub = true; + } + + var children = [buildGroup(group.base, options)]; + + if (group.sub) { + children.push(buildGroup(group.sub, options)); + } + + if (group.sup) { + children.push(buildGroup(group.sup, options)); + } + + var nodeType; + + if (isBrace) { + nodeType = isOver ? "mover" : "munder"; + } else if (!group.sub) { + var base = group.base; + + if (base && base.type === "op" && base.limits && (options.style === Style$1.DISPLAY || base.alwaysHandleSupSub)) { + nodeType = "mover"; + } else if (base && base.type === "operatorname" && base.alwaysHandleSupSub && (base.limits || options.style === Style$1.DISPLAY)) { + nodeType = "mover"; + } else { + nodeType = "msup"; + } + } else if (!group.sup) { + var _base = group.base; + + if (_base && _base.type === "op" && _base.limits && (options.style === Style$1.DISPLAY || _base.alwaysHandleSupSub)) { + nodeType = "munder"; + } else if (_base && _base.type === "operatorname" && _base.alwaysHandleSupSub && (_base.limits || options.style === Style$1.DISPLAY)) { + nodeType = "munder"; + } else { + nodeType = "msub"; + } + } else { + var _base2 = group.base; + + if (_base2 && _base2.type === "op" && _base2.limits && options.style === Style$1.DISPLAY) { + nodeType = "munderover"; + } else if (_base2 && _base2.type === "operatorname" && _base2.alwaysHandleSupSub && (options.style === Style$1.DISPLAY || _base2.limits)) { + nodeType = "munderover"; + } else { + nodeType = "msubsup"; + } + } + + return new mathMLTree.MathNode(nodeType, children); + } + +}); + +defineFunctionBuilders({ + type: "atom", + + htmlBuilder(group, options) { + return buildCommon.mathsym(group.text, group.mode, options, ["m" + group.family]); + }, + + mathmlBuilder(group, options) { + var node = new mathMLTree.MathNode("mo", [makeText(group.text, group.mode)]); + + if (group.family === "bin") { + var variant = getVariant(group, options); + + if (variant === "bold-italic") { + node.setAttribute("mathvariant", variant); + } + } else if (group.family === "punct") { + node.setAttribute("separator", "true"); + } else if (group.family === "open" || group.family === "close") { + // Delims built here should not stretch vertically. + // See delimsizing.js for stretchy delims. + node.setAttribute("stretchy", "false"); + } + + return node; + } + +}); + +// "mathord" and "textord" ParseNodes created in Parser.js from symbol Groups in +// src/symbols.js. +var defaultVariant = { + "mi": "italic", + "mn": "normal", + "mtext": "normal" +}; +defineFunctionBuilders({ + type: "mathord", + + htmlBuilder(group, options) { + return buildCommon.makeOrd(group, options, "mathord"); + }, + + mathmlBuilder(group, options) { + var node = new mathMLTree.MathNode("mi", [makeText(group.text, group.mode, options)]); + var variant = getVariant(group, options) || "italic"; + + if (variant !== defaultVariant[node.type]) { + node.setAttribute("mathvariant", variant); + } + + return node; + } + +}); +defineFunctionBuilders({ + type: "textord", + + htmlBuilder(group, options) { + return buildCommon.makeOrd(group, options, "textord"); + }, + + mathmlBuilder(group, options) { + var text = makeText(group.text, group.mode, options); + var variant = getVariant(group, options) || "normal"; + var node; + + if (group.mode === 'text') { + node = new mathMLTree.MathNode("mtext", [text]); + } else if (/[0-9]/.test(group.text)) { + node = new mathMLTree.MathNode("mn", [text]); + } else if (group.text === "\\prime") { + node = new mathMLTree.MathNode("mo", [text]); + } else { + node = new mathMLTree.MathNode("mi", [text]); + } + + if (variant !== defaultVariant[node.type]) { + node.setAttribute("mathvariant", variant); + } + + return node; + } + +}); + +var cssSpace = { + "\\nobreak": "nobreak", + "\\allowbreak": "allowbreak" +}; // A lookup table to determine whether a spacing function/symbol should be +// treated like a regular space character. If a symbol or command is a key +// in this table, then it should be a regular space character. Furthermore, +// the associated value may have a `className` specifying an extra CSS class +// to add to the created `span`. + +var regularSpace = { + " ": {}, + "\\ ": {}, + "~": { + className: "nobreak" + }, + "\\space": {}, + "\\nobreakspace": { + className: "nobreak" + } +}; // ParseNode<"spacing"> created in Parser.js from the "spacing" symbol Groups in +// src/symbols.js. + +defineFunctionBuilders({ + type: "spacing", + + htmlBuilder(group, options) { + if (regularSpace.hasOwnProperty(group.text)) { + var className = regularSpace[group.text].className || ""; // Spaces are generated by adding an actual space. Each of these + // things has an entry in the symbols table, so these will be turned + // into appropriate outputs. + + if (group.mode === "text") { + var ord = buildCommon.makeOrd(group, options, "textord"); + ord.classes.push(className); + return ord; + } else { + return buildCommon.makeSpan(["mspace", className], [buildCommon.mathsym(group.text, group.mode, options)], options); + } + } else if (cssSpace.hasOwnProperty(group.text)) { + // Spaces based on just a CSS class. + return buildCommon.makeSpan(["mspace", cssSpace[group.text]], [], options); + } else { + throw new ParseError("Unknown type of space \"" + group.text + "\""); + } + }, + + mathmlBuilder(group, options) { + var node; + + if (regularSpace.hasOwnProperty(group.text)) { + node = new mathMLTree.MathNode("mtext", [new mathMLTree.TextNode("\u00a0")]); + } else if (cssSpace.hasOwnProperty(group.text)) { + // CSS-based MathML spaces (\nobreak, \allowbreak) are ignored + return new mathMLTree.MathNode("mspace"); + } else { + throw new ParseError("Unknown type of space \"" + group.text + "\""); + } + + return node; + } + +}); + +var pad = () => { + var padNode = new mathMLTree.MathNode("mtd", []); + padNode.setAttribute("width", "50%"); + return padNode; +}; + +defineFunctionBuilders({ + type: "tag", + + mathmlBuilder(group, options) { + var table = new mathMLTree.MathNode("mtable", [new mathMLTree.MathNode("mtr", [pad(), new mathMLTree.MathNode("mtd", [buildExpressionRow(group.body, options)]), pad(), new mathMLTree.MathNode("mtd", [buildExpressionRow(group.tag, options)])])]); + table.setAttribute("width", "100%"); + return table; // TODO: Left-aligned tags. + // Currently, the group and options passed here do not contain + // enough info to set tag alignment. `leqno` is in Settings but it is + // not passed to Options. On the HTML side, leqno is + // set by a CSS class applied in buildTree.js. That would have worked + // in MathML if browsers supported . Since they don't, we + // need to rewrite the way this function is called. + } + +}); + +var textFontFamilies = { + "\\text": undefined, + "\\textrm": "textrm", + "\\textsf": "textsf", + "\\texttt": "texttt", + "\\textnormal": "textrm" +}; +var textFontWeights = { + "\\textbf": "textbf", + "\\textmd": "textmd" +}; +var textFontShapes = { + "\\textit": "textit", + "\\textup": "textup" +}; + +var optionsWithFont = (group, options) => { + var font = group.font; // Checks if the argument is a font family or a font style. + + if (!font) { + return options; + } else if (textFontFamilies[font]) { + return options.withTextFontFamily(textFontFamilies[font]); + } else if (textFontWeights[font]) { + return options.withTextFontWeight(textFontWeights[font]); + } else { + return options.withTextFontShape(textFontShapes[font]); + } +}; + +defineFunction({ + type: "text", + names: [// Font families + "\\text", "\\textrm", "\\textsf", "\\texttt", "\\textnormal", // Font weights + "\\textbf", "\\textmd", // Font Shapes + "\\textit", "\\textup"], + props: { + numArgs: 1, + argTypes: ["text"], + allowedInArgument: true, + allowedInText: true + }, + + handler(_ref, args) { + var { + parser, + funcName + } = _ref; + var body = args[0]; + return { + type: "text", + mode: parser.mode, + body: ordargument(body), + font: funcName + }; + }, + + htmlBuilder(group, options) { + var newOptions = optionsWithFont(group, options); + var inner = buildExpression$1(group.body, newOptions, true); + return buildCommon.makeSpan(["mord", "text"], inner, newOptions); + }, + + mathmlBuilder(group, options) { + var newOptions = optionsWithFont(group, options); + return buildExpressionRow(group.body, newOptions); + } + +}); + +defineFunction({ + type: "underline", + names: ["\\underline"], + props: { + numArgs: 1, + allowedInText: true + }, + + handler(_ref, args) { + var { + parser + } = _ref; + return { + type: "underline", + mode: parser.mode, + body: args[0] + }; + }, + + htmlBuilder(group, options) { + // Underlines are handled in the TeXbook pg 443, Rule 10. + // Build the inner group. + var innerGroup = buildGroup$1(group.body, options); // Create the line to go below the body + + var line = buildCommon.makeLineSpan("underline-line", options); // Generate the vlist, with the appropriate kerns + + var defaultRuleThickness = options.fontMetrics().defaultRuleThickness; + var vlist = buildCommon.makeVList({ + positionType: "top", + positionData: innerGroup.height, + children: [{ + type: "kern", + size: defaultRuleThickness + }, { + type: "elem", + elem: line + }, { + type: "kern", + size: 3 * defaultRuleThickness + }, { + type: "elem", + elem: innerGroup + }] + }, options); + return buildCommon.makeSpan(["mord", "underline"], [vlist], options); + }, + + mathmlBuilder(group, options) { + var operator = new mathMLTree.MathNode("mo", [new mathMLTree.TextNode("\u203e")]); + operator.setAttribute("stretchy", "true"); + var node = new mathMLTree.MathNode("munder", [buildGroup(group.body, options), operator]); + node.setAttribute("accentunder", "true"); + return node; + } + +}); + +defineFunction({ + type: "vcenter", + names: ["\\vcenter"], + props: { + numArgs: 1, + argTypes: ["original"], + // In LaTeX, \vcenter can act only on a box. + allowedInText: false + }, + + handler(_ref, args) { + var { + parser + } = _ref; + return { + type: "vcenter", + mode: parser.mode, + body: args[0] + }; + }, + + htmlBuilder(group, options) { + var body = buildGroup$1(group.body, options); + var axisHeight = options.fontMetrics().axisHeight; + var dy = 0.5 * (body.height - axisHeight - (body.depth + axisHeight)); + return buildCommon.makeVList({ + positionType: "shift", + positionData: dy, + children: [{ + type: "elem", + elem: body + }] + }, options); + }, + + mathmlBuilder(group, options) { + // There is no way to do this in MathML. + // Write a class as a breadcrumb in case some post-processor wants + // to perform a vcenter adjustment. + return new mathMLTree.MathNode("mpadded", [buildGroup(group.body, options)], ["vcenter"]); + } + +}); + +defineFunction({ + type: "verb", + names: ["\\verb"], + props: { + numArgs: 0, + allowedInText: true + }, + + handler(context, args, optArgs) { + // \verb and \verb* are dealt with directly in Parser.js. + // If we end up here, it's because of a failure to match the two delimiters + // in the regex in Lexer.js. LaTeX raises the following error when \verb is + // terminated by end of line (or file). + throw new ParseError("\\verb ended by end of line instead of matching delimiter"); + }, + + htmlBuilder(group, options) { + var text = makeVerb(group); + var body = []; // \verb enters text mode and therefore is sized like \textstyle + + var newOptions = options.havingStyle(options.style.text()); + + for (var i = 0; i < text.length; i++) { + var c = text[i]; + + if (c === '~') { + c = '\\textasciitilde'; + } + + body.push(buildCommon.makeSymbol(c, "Typewriter-Regular", group.mode, newOptions, ["mord", "texttt"])); + } + + return buildCommon.makeSpan(["mord", "text"].concat(newOptions.sizingClasses(options)), buildCommon.tryCombineChars(body), newOptions); + }, + + mathmlBuilder(group, options) { + var text = new mathMLTree.TextNode(makeVerb(group)); + var node = new mathMLTree.MathNode("mtext", [text]); + node.setAttribute("mathvariant", "monospace"); + return node; + } + +}); +/** + * Converts verb group into body string. + * + * \verb* replaces each space with an open box \u2423 + * \verb replaces each space with a no-break space \xA0 + */ + +var makeVerb = group => group.body.replace(/ /g, group.star ? '\u2423' : '\xA0'); + +/** Include this to ensure that all functions are defined. */ +var functions = _functions; + +/** + * The Lexer class handles tokenizing the input in various ways. Since our + * parser expects us to be able to backtrack, the lexer allows lexing from any + * given starting point. + * + * Its main exposed function is the `lex` function, which takes a position to + * lex from and a type of token to lex. It defers to the appropriate `_innerLex` + * function. + * + * The various `_innerLex` functions perform the actual lexing of different + * kinds. + */ + +/* The following tokenRegex + * - matches typical whitespace (but not NBSP etc.) using its first group + * - does not match any control character \x00-\x1f except whitespace + * - does not match a bare backslash + * - matches any ASCII character except those just mentioned + * - does not match the BMP private use area \uE000-\uF8FF + * - does not match bare surrogate code units + * - matches any BMP character except for those just described + * - matches any valid Unicode surrogate pair + * - matches a backslash followed by one or more whitespace characters + * - matches a backslash followed by one or more letters then whitespace + * - matches a backslash followed by any BMP character + * Capturing groups: + * [1] regular whitespace + * [2] backslash followed by whitespace + * [3] anything else, which may include: + * [4] left character of \verb* + * [5] left character of \verb + * [6] backslash followed by word, excluding any trailing whitespace + * Just because the Lexer matches something doesn't mean it's valid input: + * If there is no matching function or symbol definition, the Parser will + * still reject the input. + */ +var spaceRegexString = "[ \r\n\t]"; +var controlWordRegexString = "\\\\[a-zA-Z@]+"; +var controlSymbolRegexString = "\\\\[^\uD800-\uDFFF]"; +var controlWordWhitespaceRegexString = "(" + controlWordRegexString + ")" + spaceRegexString + "*"; +var controlSpaceRegexString = "\\\\(\n|[ \r\t]+\n?)[ \r\t]*"; +var combiningDiacriticalMarkString = "[\u0300-\u036f]"; +var combiningDiacriticalMarksEndRegex = new RegExp(combiningDiacriticalMarkString + "+$"); +var tokenRegexString = "(" + spaceRegexString + "+)|" + ( // whitespace +controlSpaceRegexString + "|") + // \whitespace +"([!-\\[\\]-\u2027\u202A-\uD7FF\uF900-\uFFFF]" + ( // single codepoint +combiningDiacriticalMarkString + "*") + // ...plus accents +"|[\uD800-\uDBFF][\uDC00-\uDFFF]" + ( // surrogate pair +combiningDiacriticalMarkString + "*") + // ...plus accents +"|\\\\verb\\*([^]).*?\\4" + // \verb* +"|\\\\verb([^*a-zA-Z]).*?\\5" + ( // \verb unstarred +"|" + controlWordWhitespaceRegexString) + ( // \macroName + spaces +"|" + controlSymbolRegexString + ")"); // \\, \', etc. + +/** Main Lexer class */ + +class Lexer { + // Category codes. The lexer only supports comment characters (14) for now. + // MacroExpander additionally distinguishes active (13). + constructor(input, settings) { + this.input = void 0; + this.settings = void 0; + this.tokenRegex = void 0; + this.catcodes = void 0; + // Separate accents from characters + this.input = input; + this.settings = settings; + this.tokenRegex = new RegExp(tokenRegexString, 'g'); + this.catcodes = { + "%": 14, + // comment character + "~": 13 // active character + + }; + } + + setCatcode(char, code) { + this.catcodes[char] = code; + } + /** + * This function lexes a single token. + */ + + + lex() { + var input = this.input; + var pos = this.tokenRegex.lastIndex; + + if (pos === input.length) { + return new Token("EOF", new SourceLocation(this, pos, pos)); + } + + var match = this.tokenRegex.exec(input); + + if (match === null || match.index !== pos) { + throw new ParseError("Unexpected character: '" + input[pos] + "'", new Token(input[pos], new SourceLocation(this, pos, pos + 1))); + } + + var text = match[6] || match[3] || (match[2] ? "\\ " : " "); + + if (this.catcodes[text] === 14) { + // comment character + var nlIndex = input.indexOf('\n', this.tokenRegex.lastIndex); + + if (nlIndex === -1) { + this.tokenRegex.lastIndex = input.length; // EOF + + this.settings.reportNonstrict("commentAtEnd", "% comment has no terminating newline; LaTeX would " + "fail because of commenting the end of math mode (e.g. $)"); + } else { + this.tokenRegex.lastIndex = nlIndex + 1; + } + + return this.lex(); + } + + return new Token(text, new SourceLocation(this, pos, this.tokenRegex.lastIndex)); + } + +} + +/** + * A `Namespace` refers to a space of nameable things like macros or lengths, + * which can be `set` either globally or local to a nested group, using an + * undo stack similar to how TeX implements this functionality. + * Performance-wise, `get` and local `set` take constant time, while global + * `set` takes time proportional to the depth of group nesting. + */ +class Namespace { + /** + * Both arguments are optional. The first argument is an object of + * built-in mappings which never change. The second argument is an object + * of initial (global-level) mappings, which will constantly change + * according to any global/top-level `set`s done. + */ + constructor(builtins, globalMacros) { + if (builtins === void 0) { + builtins = {}; + } + + if (globalMacros === void 0) { + globalMacros = {}; + } + + this.current = void 0; + this.builtins = void 0; + this.undefStack = void 0; + this.current = globalMacros; + this.builtins = builtins; + this.undefStack = []; + } + /** + * Start a new nested group, affecting future local `set`s. + */ + + + beginGroup() { + this.undefStack.push({}); + } + /** + * End current nested group, restoring values before the group began. + */ + + + endGroup() { + if (this.undefStack.length === 0) { + throw new ParseError("Unbalanced namespace destruction: attempt " + "to pop global namespace; please report this as a bug"); + } + + var undefs = this.undefStack.pop(); + + for (var undef in undefs) { + if (undefs.hasOwnProperty(undef)) { + if (undefs[undef] == null) { + delete this.current[undef]; + } else { + this.current[undef] = undefs[undef]; + } + } + } + } + /** + * Ends all currently nested groups (if any), restoring values before the + * groups began. Useful in case of an error in the middle of parsing. + */ + + + endGroups() { + while (this.undefStack.length > 0) { + this.endGroup(); + } + } + /** + * Detect whether `name` has a definition. Equivalent to + * `get(name) != null`. + */ + + + has(name) { + return this.current.hasOwnProperty(name) || this.builtins.hasOwnProperty(name); + } + /** + * Get the current value of a name, or `undefined` if there is no value. + * + * Note: Do not use `if (namespace.get(...))` to detect whether a macro + * is defined, as the definition may be the empty string which evaluates + * to `false` in JavaScript. Use `if (namespace.get(...) != null)` or + * `if (namespace.has(...))`. + */ + + + get(name) { + if (this.current.hasOwnProperty(name)) { + return this.current[name]; + } else { + return this.builtins[name]; + } + } + /** + * Set the current value of a name, and optionally set it globally too. + * Local set() sets the current value and (when appropriate) adds an undo + * operation to the undo stack. Global set() may change the undo + * operation at every level, so takes time linear in their number. + * A value of undefined means to delete existing definitions. + */ + + + set(name, value, global) { + if (global === void 0) { + global = false; + } + + if (global) { + // Global set is equivalent to setting in all groups. Simulate this + // by destroying any undos currently scheduled for this name, + // and adding an undo with the *new* value (in case it later gets + // locally reset within this environment). + for (var i = 0; i < this.undefStack.length; i++) { + delete this.undefStack[i][name]; + } + + if (this.undefStack.length > 0) { + this.undefStack[this.undefStack.length - 1][name] = value; + } + } else { + // Undo this set at end of this group (possibly to `undefined`), + // unless an undo is already in place, in which case that older + // value is the correct one. + var top = this.undefStack[this.undefStack.length - 1]; + + if (top && !top.hasOwnProperty(name)) { + top[name] = this.current[name]; + } + } + + if (value == null) { + delete this.current[name]; + } else { + this.current[name] = value; + } + } + +} + +/** + * Predefined macros for KaTeX. + * This can be used to define some commands in terms of others. + */ +var macros = _macros; +// macro tools + +defineMacro("\\noexpand", function (context) { + // The expansion is the token itself; but that token is interpreted + // as if its meaning were ‘\relax’ if it is a control sequence that + // would ordinarily be expanded by TeX’s expansion rules. + var t = context.popToken(); + + if (context.isExpandable(t.text)) { + t.noexpand = true; + t.treatAsRelax = true; + } + + return { + tokens: [t], + numArgs: 0 + }; +}); +defineMacro("\\expandafter", function (context) { + // TeX first reads the token that comes immediately after \expandafter, + // without expanding it; let’s call this token t. Then TeX reads the + // token that comes after t (and possibly more tokens, if that token + // has an argument), replacing it by its expansion. Finally TeX puts + // t back in front of that expansion. + var t = context.popToken(); + context.expandOnce(true); // expand only an expandable token + + return { + tokens: [t], + numArgs: 0 + }; +}); // LaTeX's \@firstoftwo{#1}{#2} expands to #1, skipping #2 +// TeX source: \long\def\@firstoftwo#1#2{#1} + +defineMacro("\\@firstoftwo", function (context) { + var args = context.consumeArgs(2); + return { + tokens: args[0], + numArgs: 0 + }; +}); // LaTeX's \@secondoftwo{#1}{#2} expands to #2, skipping #1 +// TeX source: \long\def\@secondoftwo#1#2{#2} + +defineMacro("\\@secondoftwo", function (context) { + var args = context.consumeArgs(2); + return { + tokens: args[1], + numArgs: 0 + }; +}); // LaTeX's \@ifnextchar{#1}{#2}{#3} looks ahead to the next (unexpanded) +// symbol that isn't a space, consuming any spaces but not consuming the +// first nonspace character. If that nonspace character matches #1, then +// the macro expands to #2; otherwise, it expands to #3. + +defineMacro("\\@ifnextchar", function (context) { + var args = context.consumeArgs(3); // symbol, if, else + + context.consumeSpaces(); + var nextToken = context.future(); + + if (args[0].length === 1 && args[0][0].text === nextToken.text) { + return { + tokens: args[1], + numArgs: 0 + }; + } else { + return { + tokens: args[2], + numArgs: 0 + }; + } +}); // LaTeX's \@ifstar{#1}{#2} looks ahead to the next (unexpanded) symbol. +// If it is `*`, then it consumes the symbol, and the macro expands to #1; +// otherwise, the macro expands to #2 (without consuming the symbol). +// TeX source: \def\@ifstar#1{\@ifnextchar *{\@firstoftwo{#1}}} + +defineMacro("\\@ifstar", "\\@ifnextchar *{\\@firstoftwo{#1}}"); // LaTeX's \TextOrMath{#1}{#2} expands to #1 in text mode, #2 in math mode + +defineMacro("\\TextOrMath", function (context) { + var args = context.consumeArgs(2); + + if (context.mode === 'text') { + return { + tokens: args[0], + numArgs: 0 + }; + } else { + return { + tokens: args[1], + numArgs: 0 + }; + } +}); // Lookup table for parsing numbers in base 8 through 16 + +var digitToNumber = { + "0": 0, + "1": 1, + "2": 2, + "3": 3, + "4": 4, + "5": 5, + "6": 6, + "7": 7, + "8": 8, + "9": 9, + "a": 10, + "A": 10, + "b": 11, + "B": 11, + "c": 12, + "C": 12, + "d": 13, + "D": 13, + "e": 14, + "E": 14, + "f": 15, + "F": 15 +}; // TeX \char makes a literal character (catcode 12) using the following forms: +// (see The TeXBook, p. 43) +// \char123 -- decimal +// \char'123 -- octal +// \char"123 -- hex +// \char`x -- character that can be written (i.e. isn't active) +// \char`\x -- character that cannot be written (e.g. %) +// These all refer to characters from the font, so we turn them into special +// calls to a function \@char dealt with in the Parser. + +defineMacro("\\char", function (context) { + var token = context.popToken(); + var base; + var number = ''; + + if (token.text === "'") { + base = 8; + token = context.popToken(); + } else if (token.text === '"') { + base = 16; + token = context.popToken(); + } else if (token.text === "`") { + token = context.popToken(); + + if (token.text[0] === "\\") { + number = token.text.charCodeAt(1); + } else if (token.text === "EOF") { + throw new ParseError("\\char` missing argument"); + } else { + number = token.text.charCodeAt(0); + } + } else { + base = 10; + } + + if (base) { + // Parse a number in the given base, starting with first `token`. + number = digitToNumber[token.text]; + + if (number == null || number >= base) { + throw new ParseError("Invalid base-" + base + " digit " + token.text); + } + + var digit; + + while ((digit = digitToNumber[context.future().text]) != null && digit < base) { + number *= base; + number += digit; + context.popToken(); + } + } + + return "\\@char{" + number + "}"; +}); // \newcommand{\macro}[args]{definition} +// \renewcommand{\macro}[args]{definition} +// TODO: Optional arguments: \newcommand{\macro}[args][default]{definition} + +var newcommand = (context, existsOK, nonexistsOK) => { + var arg = context.consumeArg().tokens; + + if (arg.length !== 1) { + throw new ParseError("\\newcommand's first argument must be a macro name"); + } + + var name = arg[0].text; + var exists = context.isDefined(name); + + if (exists && !existsOK) { + throw new ParseError("\\newcommand{" + name + "} attempting to redefine " + (name + "; use \\renewcommand")); + } + + if (!exists && !nonexistsOK) { + throw new ParseError("\\renewcommand{" + name + "} when command " + name + " " + "does not yet exist; use \\newcommand"); + } + + var numArgs = 0; + arg = context.consumeArg().tokens; + + if (arg.length === 1 && arg[0].text === "[") { + var argText = ''; + var token = context.expandNextToken(); + + while (token.text !== "]" && token.text !== "EOF") { + // TODO: Should properly expand arg, e.g., ignore {}s + argText += token.text; + token = context.expandNextToken(); + } + + if (!argText.match(/^\s*[0-9]+\s*$/)) { + throw new ParseError("Invalid number of arguments: " + argText); + } + + numArgs = parseInt(argText); + arg = context.consumeArg().tokens; + } // Final arg is the expansion of the macro + + + context.macros.set(name, { + tokens: arg, + numArgs + }); + return ''; +}; + +defineMacro("\\newcommand", context => newcommand(context, false, true)); +defineMacro("\\renewcommand", context => newcommand(context, true, false)); +defineMacro("\\providecommand", context => newcommand(context, true, true)); // terminal (console) tools + +defineMacro("\\message", context => { + var arg = context.consumeArgs(1)[0]; // eslint-disable-next-line no-console + + console.log(arg.reverse().map(token => token.text).join("")); + return ''; +}); +defineMacro("\\errmessage", context => { + var arg = context.consumeArgs(1)[0]; // eslint-disable-next-line no-console + + console.error(arg.reverse().map(token => token.text).join("")); + return ''; +}); +defineMacro("\\show", context => { + var tok = context.popToken(); + var name = tok.text; // eslint-disable-next-line no-console + + console.log(tok, context.macros.get(name), functions[name], symbols.math[name], symbols.text[name]); + return ''; +}); ////////////////////////////////////////////////////////////////////// +// Grouping +// \let\bgroup={ \let\egroup=} + +defineMacro("\\bgroup", "{"); +defineMacro("\\egroup", "}"); // Symbols from latex.ltx: +// \def~{\nobreakspace{}} +// \def\lq{`} +// \def\rq{'} +// \def \aa {\r a} +// \def \AA {\r A} + +defineMacro("~", "\\nobreakspace"); +defineMacro("\\lq", "`"); +defineMacro("\\rq", "'"); +defineMacro("\\aa", "\\r a"); +defineMacro("\\AA", "\\r A"); // Copyright (C) and registered (R) symbols. Use raw symbol in MathML. +// \DeclareTextCommandDefault{\textcopyright}{\textcircled{c}} +// \DeclareTextCommandDefault{\textregistered}{\textcircled{% +// \check@mathfonts\fontsize\sf@size\z@\math@fontsfalse\selectfont R}} +// \DeclareRobustCommand{\copyright}{% +// \ifmmode{\nfss@text{\textcopyright}}\else\textcopyright\fi} + +defineMacro("\\textcopyright", "\\html@mathml{\\textcircled{c}}{\\char`©}"); +defineMacro("\\copyright", "\\TextOrMath{\\textcopyright}{\\text{\\textcopyright}}"); +defineMacro("\\textregistered", "\\html@mathml{\\textcircled{\\scriptsize R}}{\\char`®}"); // Characters omitted from Unicode range 1D400–1D7FF + +defineMacro("\u212C", "\\mathscr{B}"); // script + +defineMacro("\u2130", "\\mathscr{E}"); +defineMacro("\u2131", "\\mathscr{F}"); +defineMacro("\u210B", "\\mathscr{H}"); +defineMacro("\u2110", "\\mathscr{I}"); +defineMacro("\u2112", "\\mathscr{L}"); +defineMacro("\u2133", "\\mathscr{M}"); +defineMacro("\u211B", "\\mathscr{R}"); +defineMacro("\u212D", "\\mathfrak{C}"); // Fraktur + +defineMacro("\u210C", "\\mathfrak{H}"); +defineMacro("\u2128", "\\mathfrak{Z}"); // Define \Bbbk with a macro that works in both HTML and MathML. + +defineMacro("\\Bbbk", "\\Bbb{k}"); // Unicode middle dot +// The KaTeX fonts do not contain U+00B7. Instead, \cdotp displays +// the dot at U+22C5 and gives it punct spacing. + +defineMacro("\u00b7", "\\cdotp"); // \llap and \rlap render their contents in text mode + +defineMacro("\\llap", "\\mathllap{\\textrm{#1}}"); +defineMacro("\\rlap", "\\mathrlap{\\textrm{#1}}"); +defineMacro("\\clap", "\\mathclap{\\textrm{#1}}"); // \mathstrut from the TeXbook, p 360 + +defineMacro("\\mathstrut", "\\vphantom{(}"); // \underbar from TeXbook p 353 + +defineMacro("\\underbar", "\\underline{\\text{#1}}"); // \not is defined by base/fontmath.ltx via +// \DeclareMathSymbol{\not}{\mathrel}{symbols}{"36} +// It's thus treated like a \mathrel, but defined by a symbol that has zero +// width but extends to the right. We use \rlap to get that spacing. +// For MathML we write U+0338 here. buildMathML.js will then do the overlay. + +defineMacro("\\not", '\\html@mathml{\\mathrel{\\mathrlap\\@not}}{\\char"338}'); // Negated symbols from base/fontmath.ltx: +// \def\neq{\not=} \let\ne=\neq +// \DeclareRobustCommand +// \notin{\mathrel{\m@th\mathpalette\c@ncel\in}} +// \def\c@ncel#1#2{\m@th\ooalign{$\hfil#1\mkern1mu/\hfil$\crcr$#1#2$}} + +defineMacro("\\neq", "\\html@mathml{\\mathrel{\\not=}}{\\mathrel{\\char`≠}}"); +defineMacro("\\ne", "\\neq"); +defineMacro("\u2260", "\\neq"); +defineMacro("\\notin", "\\html@mathml{\\mathrel{{\\in}\\mathllap{/\\mskip1mu}}}" + "{\\mathrel{\\char`∉}}"); +defineMacro("\u2209", "\\notin"); // Unicode stacked relations + +defineMacro("\u2258", "\\html@mathml{" + "\\mathrel{=\\kern{-1em}\\raisebox{0.4em}{$\\scriptsize\\frown$}}" + "}{\\mathrel{\\char`\u2258}}"); +defineMacro("\u2259", "\\html@mathml{\\stackrel{\\tiny\\wedge}{=}}{\\mathrel{\\char`\u2258}}"); +defineMacro("\u225A", "\\html@mathml{\\stackrel{\\tiny\\vee}{=}}{\\mathrel{\\char`\u225A}}"); +defineMacro("\u225B", "\\html@mathml{\\stackrel{\\scriptsize\\star}{=}}" + "{\\mathrel{\\char`\u225B}}"); +defineMacro("\u225D", "\\html@mathml{\\stackrel{\\tiny\\mathrm{def}}{=}}" + "{\\mathrel{\\char`\u225D}}"); +defineMacro("\u225E", "\\html@mathml{\\stackrel{\\tiny\\mathrm{m}}{=}}" + "{\\mathrel{\\char`\u225E}}"); +defineMacro("\u225F", "\\html@mathml{\\stackrel{\\tiny?}{=}}{\\mathrel{\\char`\u225F}}"); // Misc Unicode + +defineMacro("\u27C2", "\\perp"); +defineMacro("\u203C", "\\mathclose{!\\mkern-0.8mu!}"); +defineMacro("\u220C", "\\notni"); +defineMacro("\u231C", "\\ulcorner"); +defineMacro("\u231D", "\\urcorner"); +defineMacro("\u231E", "\\llcorner"); +defineMacro("\u231F", "\\lrcorner"); +defineMacro("\u00A9", "\\copyright"); +defineMacro("\u00AE", "\\textregistered"); +defineMacro("\uFE0F", "\\textregistered"); // The KaTeX fonts have corners at codepoints that don't match Unicode. +// For MathML purposes, use the Unicode code point. + +defineMacro("\\ulcorner", "\\html@mathml{\\@ulcorner}{\\mathop{\\char\"231c}}"); +defineMacro("\\urcorner", "\\html@mathml{\\@urcorner}{\\mathop{\\char\"231d}}"); +defineMacro("\\llcorner", "\\html@mathml{\\@llcorner}{\\mathop{\\char\"231e}}"); +defineMacro("\\lrcorner", "\\html@mathml{\\@lrcorner}{\\mathop{\\char\"231f}}"); ////////////////////////////////////////////////////////////////////// +// LaTeX_2ε +// \vdots{\vbox{\baselineskip4\p@ \lineskiplimit\z@ +// \kern6\p@\hbox{.}\hbox{.}\hbox{.}}} +// We'll call \varvdots, which gets a glyph from symbols.js. +// The zero-width rule gets us an equivalent to the vertical 6pt kern. + +defineMacro("\\vdots", "\\mathord{\\varvdots\\rule{0pt}{15pt}}"); +defineMacro("\u22ee", "\\vdots"); ////////////////////////////////////////////////////////////////////// +// amsmath.sty +// http://mirrors.concertpass.com/tex-archive/macros/latex/required/amsmath/amsmath.pdf +// Italic Greek capital letters. AMS defines these with \DeclareMathSymbol, +// but they are equivalent to \mathit{\Letter}. + +defineMacro("\\varGamma", "\\mathit{\\Gamma}"); +defineMacro("\\varDelta", "\\mathit{\\Delta}"); +defineMacro("\\varTheta", "\\mathit{\\Theta}"); +defineMacro("\\varLambda", "\\mathit{\\Lambda}"); +defineMacro("\\varXi", "\\mathit{\\Xi}"); +defineMacro("\\varPi", "\\mathit{\\Pi}"); +defineMacro("\\varSigma", "\\mathit{\\Sigma}"); +defineMacro("\\varUpsilon", "\\mathit{\\Upsilon}"); +defineMacro("\\varPhi", "\\mathit{\\Phi}"); +defineMacro("\\varPsi", "\\mathit{\\Psi}"); +defineMacro("\\varOmega", "\\mathit{\\Omega}"); //\newcommand{\substack}[1]{\subarray{c}#1\endsubarray} + +defineMacro("\\substack", "\\begin{subarray}{c}#1\\end{subarray}"); // \renewcommand{\colon}{\nobreak\mskip2mu\mathpunct{}\nonscript +// \mkern-\thinmuskip{:}\mskip6muplus1mu\relax} + +defineMacro("\\colon", "\\nobreak\\mskip2mu\\mathpunct{}" + "\\mathchoice{\\mkern-3mu}{\\mkern-3mu}{}{}{:}\\mskip6mu\\relax"); // \newcommand{\boxed}[1]{\fbox{\m@th$\displaystyle#1$}} + +defineMacro("\\boxed", "\\fbox{$\\displaystyle{#1}$}"); // \def\iff{\DOTSB\;\Longleftrightarrow\;} +// \def\implies{\DOTSB\;\Longrightarrow\;} +// \def\impliedby{\DOTSB\;\Longleftarrow\;} + +defineMacro("\\iff", "\\DOTSB\\;\\Longleftrightarrow\\;"); +defineMacro("\\implies", "\\DOTSB\\;\\Longrightarrow\\;"); +defineMacro("\\impliedby", "\\DOTSB\\;\\Longleftarrow\\;"); // AMSMath's automatic \dots, based on \mdots@@ macro. + +var dotsByToken = { + ',': '\\dotsc', + '\\not': '\\dotsb', + // \keybin@ checks for the following: + '+': '\\dotsb', + '=': '\\dotsb', + '<': '\\dotsb', + '>': '\\dotsb', + '-': '\\dotsb', + '*': '\\dotsb', + ':': '\\dotsb', + // Symbols whose definition starts with \DOTSB: + '\\DOTSB': '\\dotsb', + '\\coprod': '\\dotsb', + '\\bigvee': '\\dotsb', + '\\bigwedge': '\\dotsb', + '\\biguplus': '\\dotsb', + '\\bigcap': '\\dotsb', + '\\bigcup': '\\dotsb', + '\\prod': '\\dotsb', + '\\sum': '\\dotsb', + '\\bigotimes': '\\dotsb', + '\\bigoplus': '\\dotsb', + '\\bigodot': '\\dotsb', + '\\bigsqcup': '\\dotsb', + '\\And': '\\dotsb', + '\\longrightarrow': '\\dotsb', + '\\Longrightarrow': '\\dotsb', + '\\longleftarrow': '\\dotsb', + '\\Longleftarrow': '\\dotsb', + '\\longleftrightarrow': '\\dotsb', + '\\Longleftrightarrow': '\\dotsb', + '\\mapsto': '\\dotsb', + '\\longmapsto': '\\dotsb', + '\\hookrightarrow': '\\dotsb', + '\\doteq': '\\dotsb', + // Symbols whose definition starts with \mathbin: + '\\mathbin': '\\dotsb', + // Symbols whose definition starts with \mathrel: + '\\mathrel': '\\dotsb', + '\\relbar': '\\dotsb', + '\\Relbar': '\\dotsb', + '\\xrightarrow': '\\dotsb', + '\\xleftarrow': '\\dotsb', + // Symbols whose definition starts with \DOTSI: + '\\DOTSI': '\\dotsi', + '\\int': '\\dotsi', + '\\oint': '\\dotsi', + '\\iint': '\\dotsi', + '\\iiint': '\\dotsi', + '\\iiiint': '\\dotsi', + '\\idotsint': '\\dotsi', + // Symbols whose definition starts with \DOTSX: + '\\DOTSX': '\\dotsx' +}; +defineMacro("\\dots", function (context) { + // TODO: If used in text mode, should expand to \textellipsis. + // However, in KaTeX, \textellipsis and \ldots behave the same + // (in text mode), and it's unlikely we'd see any of the math commands + // that affect the behavior of \dots when in text mode. So fine for now + // (until we support \ifmmode ... \else ... \fi). + var thedots = '\\dotso'; + var next = context.expandAfterFuture().text; + + if (next in dotsByToken) { + thedots = dotsByToken[next]; + } else if (next.slice(0, 4) === '\\not') { + thedots = '\\dotsb'; + } else if (next in symbols.math) { + if (utils.contains(['bin', 'rel'], symbols.math[next].group)) { + thedots = '\\dotsb'; + } + } + + return thedots; +}); +var spaceAfterDots = { + // \rightdelim@ checks for the following: + ')': true, + ']': true, + '\\rbrack': true, + '\\}': true, + '\\rbrace': true, + '\\rangle': true, + '\\rceil': true, + '\\rfloor': true, + '\\rgroup': true, + '\\rmoustache': true, + '\\right': true, + '\\bigr': true, + '\\biggr': true, + '\\Bigr': true, + '\\Biggr': true, + // \extra@ also tests for the following: + '$': true, + // \extrap@ checks for the following: + ';': true, + '.': true, + ',': true +}; +defineMacro("\\dotso", function (context) { + var next = context.future().text; + + if (next in spaceAfterDots) { + return "\\ldots\\,"; + } else { + return "\\ldots"; + } +}); +defineMacro("\\dotsc", function (context) { + var next = context.future().text; // \dotsc uses \extra@ but not \extrap@, instead specially checking for + // ';' and '.', but doesn't check for ','. + + if (next in spaceAfterDots && next !== ',') { + return "\\ldots\\,"; + } else { + return "\\ldots"; + } +}); +defineMacro("\\cdots", function (context) { + var next = context.future().text; + + if (next in spaceAfterDots) { + return "\\@cdots\\,"; + } else { + return "\\@cdots"; + } +}); +defineMacro("\\dotsb", "\\cdots"); +defineMacro("\\dotsm", "\\cdots"); +defineMacro("\\dotsi", "\\!\\cdots"); // amsmath doesn't actually define \dotsx, but \dots followed by a macro +// starting with \DOTSX implies \dotso, and then \extra@ detects this case +// and forces the added `\,`. + +defineMacro("\\dotsx", "\\ldots\\,"); // \let\DOTSI\relax +// \let\DOTSB\relax +// \let\DOTSX\relax + +defineMacro("\\DOTSI", "\\relax"); +defineMacro("\\DOTSB", "\\relax"); +defineMacro("\\DOTSX", "\\relax"); // Spacing, based on amsmath.sty's override of LaTeX defaults +// \DeclareRobustCommand{\tmspace}[3]{% +// \ifmmode\mskip#1#2\else\kern#1#3\fi\relax} + +defineMacro("\\tmspace", "\\TextOrMath{\\kern#1#3}{\\mskip#1#2}\\relax"); // \renewcommand{\,}{\tmspace+\thinmuskip{.1667em}} +// TODO: math mode should use \thinmuskip + +defineMacro("\\,", "\\tmspace+{3mu}{.1667em}"); // \let\thinspace\, + +defineMacro("\\thinspace", "\\,"); // \def\>{\mskip\medmuskip} +// \renewcommand{\:}{\tmspace+\medmuskip{.2222em}} +// TODO: \> and math mode of \: should use \medmuskip = 4mu plus 2mu minus 4mu + +defineMacro("\\>", "\\mskip{4mu}"); +defineMacro("\\:", "\\tmspace+{4mu}{.2222em}"); // \let\medspace\: + +defineMacro("\\medspace", "\\:"); // \renewcommand{\;}{\tmspace+\thickmuskip{.2777em}} +// TODO: math mode should use \thickmuskip = 5mu plus 5mu + +defineMacro("\\;", "\\tmspace+{5mu}{.2777em}"); // \let\thickspace\; + +defineMacro("\\thickspace", "\\;"); // \renewcommand{\!}{\tmspace-\thinmuskip{.1667em}} +// TODO: math mode should use \thinmuskip + +defineMacro("\\!", "\\tmspace-{3mu}{.1667em}"); // \let\negthinspace\! + +defineMacro("\\negthinspace", "\\!"); // \newcommand{\negmedspace}{\tmspace-\medmuskip{.2222em}} +// TODO: math mode should use \medmuskip + +defineMacro("\\negmedspace", "\\tmspace-{4mu}{.2222em}"); // \newcommand{\negthickspace}{\tmspace-\thickmuskip{.2777em}} +// TODO: math mode should use \thickmuskip + +defineMacro("\\negthickspace", "\\tmspace-{5mu}{.277em}"); // \def\enspace{\kern.5em } + +defineMacro("\\enspace", "\\kern.5em "); // \def\enskip{\hskip.5em\relax} + +defineMacro("\\enskip", "\\hskip.5em\\relax"); // \def\quad{\hskip1em\relax} + +defineMacro("\\quad", "\\hskip1em\\relax"); // \def\qquad{\hskip2em\relax} + +defineMacro("\\qquad", "\\hskip2em\\relax"); // \tag@in@display form of \tag + +defineMacro("\\tag", "\\@ifstar\\tag@literal\\tag@paren"); +defineMacro("\\tag@paren", "\\tag@literal{({#1})}"); +defineMacro("\\tag@literal", context => { + if (context.macros.get("\\df@tag")) { + throw new ParseError("Multiple \\tag"); + } + + return "\\gdef\\df@tag{\\text{#1}}"; +}); // \renewcommand{\bmod}{\nonscript\mskip-\medmuskip\mkern5mu\mathbin +// {\operator@font mod}\penalty900 +// \mkern5mu\nonscript\mskip-\medmuskip} +// \newcommand{\pod}[1]{\allowbreak +// \if@display\mkern18mu\else\mkern8mu\fi(#1)} +// \renewcommand{\pmod}[1]{\pod{{\operator@font mod}\mkern6mu#1}} +// \newcommand{\mod}[1]{\allowbreak\if@display\mkern18mu +// \else\mkern12mu\fi{\operator@font mod}\,\,#1} +// TODO: math mode should use \medmuskip = 4mu plus 2mu minus 4mu + +defineMacro("\\bmod", "\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}" + "\\mathbin{\\rm mod}" + "\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}"); +defineMacro("\\pod", "\\allowbreak" + "\\mathchoice{\\mkern18mu}{\\mkern8mu}{\\mkern8mu}{\\mkern8mu}(#1)"); +defineMacro("\\pmod", "\\pod{{\\rm mod}\\mkern6mu#1}"); +defineMacro("\\mod", "\\allowbreak" + "\\mathchoice{\\mkern18mu}{\\mkern12mu}{\\mkern12mu}{\\mkern12mu}" + "{\\rm mod}\\,\\,#1"); ////////////////////////////////////////////////////////////////////// +// LaTeX source2e +// \expandafter\let\expandafter\@normalcr +// \csname\expandafter\@gobble\string\\ \endcsname +// \DeclareRobustCommand\newline{\@normalcr\relax} + +defineMacro("\\newline", "\\\\\\relax"); // \def\TeX{T\kern-.1667em\lower.5ex\hbox{E}\kern-.125emX\@} +// TODO: Doesn't normally work in math mode because \@ fails. KaTeX doesn't +// support \@ yet, so that's omitted, and we add \text so that the result +// doesn't look funny in math mode. + +defineMacro("\\TeX", "\\textrm{\\html@mathml{" + "T\\kern-.1667em\\raisebox{-.5ex}{E}\\kern-.125emX" + "}{TeX}}"); // \DeclareRobustCommand{\LaTeX}{L\kern-.36em% +// {\sbox\z@ T% +// \vbox to\ht\z@{\hbox{\check@mathfonts +// \fontsize\sf@size\z@ +// \math@fontsfalse\selectfont +// A}% +// \vss}% +// }% +// \kern-.15em% +// \TeX} +// This code aligns the top of the A with the T (from the perspective of TeX's +// boxes, though visually the A appears to extend above slightly). +// We compute the corresponding \raisebox when A is rendered in \normalsize +// \scriptstyle, which has a scale factor of 0.7 (see Options.js). + +var latexRaiseA = makeEm(fontMetricsData['Main-Regular']["T".charCodeAt(0)][1] - 0.7 * fontMetricsData['Main-Regular']["A".charCodeAt(0)][1]); +defineMacro("\\LaTeX", "\\textrm{\\html@mathml{" + ("L\\kern-.36em\\raisebox{" + latexRaiseA + "}{\\scriptstyle A}") + "\\kern-.15em\\TeX}{LaTeX}}"); // New KaTeX logo based on tweaking LaTeX logo + +defineMacro("\\KaTeX", "\\textrm{\\html@mathml{" + ("K\\kern-.17em\\raisebox{" + latexRaiseA + "}{\\scriptstyle A}") + "\\kern-.15em\\TeX}{KaTeX}}"); // \DeclareRobustCommand\hspace{\@ifstar\@hspacer\@hspace} +// \def\@hspace#1{\hskip #1\relax} +// \def\@hspacer#1{\vrule \@width\z@\nobreak +// \hskip #1\hskip \z@skip} + +defineMacro("\\hspace", "\\@ifstar\\@hspacer\\@hspace"); +defineMacro("\\@hspace", "\\hskip #1\\relax"); +defineMacro("\\@hspacer", "\\rule{0pt}{0pt}\\hskip #1\\relax"); ////////////////////////////////////////////////////////////////////// +// mathtools.sty +//\providecommand\ordinarycolon{:} + +defineMacro("\\ordinarycolon", ":"); //\def\vcentcolon{\mathrel{\mathop\ordinarycolon}} +//TODO(edemaine): Not yet centered. Fix via \raisebox or #726 + +defineMacro("\\vcentcolon", "\\mathrel{\\mathop\\ordinarycolon}"); // \providecommand*\dblcolon{\vcentcolon\mathrel{\mkern-.9mu}\vcentcolon} + +defineMacro("\\dblcolon", "\\html@mathml{" + "\\mathrel{\\vcentcolon\\mathrel{\\mkern-.9mu}\\vcentcolon}}" + "{\\mathop{\\char\"2237}}"); // \providecommand*\coloneqq{\vcentcolon\mathrel{\mkern-1.2mu}=} + +defineMacro("\\coloneqq", "\\html@mathml{" + "\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}=}}" + "{\\mathop{\\char\"2254}}"); // ≔ +// \providecommand*\Coloneqq{\dblcolon\mathrel{\mkern-1.2mu}=} + +defineMacro("\\Coloneqq", "\\html@mathml{" + "\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}=}}" + "{\\mathop{\\char\"2237\\char\"3d}}"); // \providecommand*\coloneq{\vcentcolon\mathrel{\mkern-1.2mu}\mathrel{-}} + +defineMacro("\\coloneq", "\\html@mathml{" + "\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}" + "{\\mathop{\\char\"3a\\char\"2212}}"); // \providecommand*\Coloneq{\dblcolon\mathrel{\mkern-1.2mu}\mathrel{-}} + +defineMacro("\\Coloneq", "\\html@mathml{" + "\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}" + "{\\mathop{\\char\"2237\\char\"2212}}"); // \providecommand*\eqqcolon{=\mathrel{\mkern-1.2mu}\vcentcolon} + +defineMacro("\\eqqcolon", "\\html@mathml{" + "\\mathrel{=\\mathrel{\\mkern-1.2mu}\\vcentcolon}}" + "{\\mathop{\\char\"2255}}"); // ≕ +// \providecommand*\Eqqcolon{=\mathrel{\mkern-1.2mu}\dblcolon} + +defineMacro("\\Eqqcolon", "\\html@mathml{" + "\\mathrel{=\\mathrel{\\mkern-1.2mu}\\dblcolon}}" + "{\\mathop{\\char\"3d\\char\"2237}}"); // \providecommand*\eqcolon{\mathrel{-}\mathrel{\mkern-1.2mu}\vcentcolon} + +defineMacro("\\eqcolon", "\\html@mathml{" + "\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\vcentcolon}}" + "{\\mathop{\\char\"2239}}"); // \providecommand*\Eqcolon{\mathrel{-}\mathrel{\mkern-1.2mu}\dblcolon} + +defineMacro("\\Eqcolon", "\\html@mathml{" + "\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\dblcolon}}" + "{\\mathop{\\char\"2212\\char\"2237}}"); // \providecommand*\colonapprox{\vcentcolon\mathrel{\mkern-1.2mu}\approx} + +defineMacro("\\colonapprox", "\\html@mathml{" + "\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\approx}}" + "{\\mathop{\\char\"3a\\char\"2248}}"); // \providecommand*\Colonapprox{\dblcolon\mathrel{\mkern-1.2mu}\approx} + +defineMacro("\\Colonapprox", "\\html@mathml{" + "\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\approx}}" + "{\\mathop{\\char\"2237\\char\"2248}}"); // \providecommand*\colonsim{\vcentcolon\mathrel{\mkern-1.2mu}\sim} + +defineMacro("\\colonsim", "\\html@mathml{" + "\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\sim}}" + "{\\mathop{\\char\"3a\\char\"223c}}"); // \providecommand*\Colonsim{\dblcolon\mathrel{\mkern-1.2mu}\sim} + +defineMacro("\\Colonsim", "\\html@mathml{" + "\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\sim}}" + "{\\mathop{\\char\"2237\\char\"223c}}"); // Some Unicode characters are implemented with macros to mathtools functions. + +defineMacro("\u2237", "\\dblcolon"); // :: + +defineMacro("\u2239", "\\eqcolon"); // -: + +defineMacro("\u2254", "\\coloneqq"); // := + +defineMacro("\u2255", "\\eqqcolon"); // =: + +defineMacro("\u2A74", "\\Coloneqq"); // ::= +////////////////////////////////////////////////////////////////////// +// colonequals.sty +// Alternate names for mathtools's macros: + +defineMacro("\\ratio", "\\vcentcolon"); +defineMacro("\\coloncolon", "\\dblcolon"); +defineMacro("\\colonequals", "\\coloneqq"); +defineMacro("\\coloncolonequals", "\\Coloneqq"); +defineMacro("\\equalscolon", "\\eqqcolon"); +defineMacro("\\equalscoloncolon", "\\Eqqcolon"); +defineMacro("\\colonminus", "\\coloneq"); +defineMacro("\\coloncolonminus", "\\Coloneq"); +defineMacro("\\minuscolon", "\\eqcolon"); +defineMacro("\\minuscoloncolon", "\\Eqcolon"); // \colonapprox name is same in mathtools and colonequals. + +defineMacro("\\coloncolonapprox", "\\Colonapprox"); // \colonsim name is same in mathtools and colonequals. + +defineMacro("\\coloncolonsim", "\\Colonsim"); // Additional macros, implemented by analogy with mathtools definitions: + +defineMacro("\\simcolon", "\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\vcentcolon}"); +defineMacro("\\simcoloncolon", "\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\dblcolon}"); +defineMacro("\\approxcolon", "\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\vcentcolon}"); +defineMacro("\\approxcoloncolon", "\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\dblcolon}"); // Present in newtxmath, pxfonts and txfonts + +defineMacro("\\notni", "\\html@mathml{\\not\\ni}{\\mathrel{\\char`\u220C}}"); +defineMacro("\\limsup", "\\DOTSB\\operatorname*{lim\\,sup}"); +defineMacro("\\liminf", "\\DOTSB\\operatorname*{lim\\,inf}"); ////////////////////////////////////////////////////////////////////// +// From amsopn.sty + +defineMacro("\\injlim", "\\DOTSB\\operatorname*{inj\\,lim}"); +defineMacro("\\projlim", "\\DOTSB\\operatorname*{proj\\,lim}"); +defineMacro("\\varlimsup", "\\DOTSB\\operatorname*{\\overline{lim}}"); +defineMacro("\\varliminf", "\\DOTSB\\operatorname*{\\underline{lim}}"); +defineMacro("\\varinjlim", "\\DOTSB\\operatorname*{\\underrightarrow{lim}}"); +defineMacro("\\varprojlim", "\\DOTSB\\operatorname*{\\underleftarrow{lim}}"); ////////////////////////////////////////////////////////////////////// +// MathML alternates for KaTeX glyphs in the Unicode private area + +defineMacro("\\gvertneqq", "\\html@mathml{\\@gvertneqq}{\u2269}"); +defineMacro("\\lvertneqq", "\\html@mathml{\\@lvertneqq}{\u2268}"); +defineMacro("\\ngeqq", "\\html@mathml{\\@ngeqq}{\u2271}"); +defineMacro("\\ngeqslant", "\\html@mathml{\\@ngeqslant}{\u2271}"); +defineMacro("\\nleqq", "\\html@mathml{\\@nleqq}{\u2270}"); +defineMacro("\\nleqslant", "\\html@mathml{\\@nleqslant}{\u2270}"); +defineMacro("\\nshortmid", "\\html@mathml{\\@nshortmid}{∤}"); +defineMacro("\\nshortparallel", "\\html@mathml{\\@nshortparallel}{∦}"); +defineMacro("\\nsubseteqq", "\\html@mathml{\\@nsubseteqq}{\u2288}"); +defineMacro("\\nsupseteqq", "\\html@mathml{\\@nsupseteqq}{\u2289}"); +defineMacro("\\varsubsetneq", "\\html@mathml{\\@varsubsetneq}{⊊}"); +defineMacro("\\varsubsetneqq", "\\html@mathml{\\@varsubsetneqq}{⫋}"); +defineMacro("\\varsupsetneq", "\\html@mathml{\\@varsupsetneq}{⊋}"); +defineMacro("\\varsupsetneqq", "\\html@mathml{\\@varsupsetneqq}{⫌}"); +defineMacro("\\imath", "\\html@mathml{\\@imath}{\u0131}"); +defineMacro("\\jmath", "\\html@mathml{\\@jmath}{\u0237}"); ////////////////////////////////////////////////////////////////////// +// stmaryrd and semantic +// The stmaryrd and semantic packages render the next four items by calling a +// glyph. Those glyphs do not exist in the KaTeX fonts. Hence the macros. + +defineMacro("\\llbracket", "\\html@mathml{" + "\\mathopen{[\\mkern-3.2mu[}}" + "{\\mathopen{\\char`\u27e6}}"); +defineMacro("\\rrbracket", "\\html@mathml{" + "\\mathclose{]\\mkern-3.2mu]}}" + "{\\mathclose{\\char`\u27e7}}"); +defineMacro("\u27e6", "\\llbracket"); // blackboard bold [ + +defineMacro("\u27e7", "\\rrbracket"); // blackboard bold ] + +defineMacro("\\lBrace", "\\html@mathml{" + "\\mathopen{\\{\\mkern-3.2mu[}}" + "{\\mathopen{\\char`\u2983}}"); +defineMacro("\\rBrace", "\\html@mathml{" + "\\mathclose{]\\mkern-3.2mu\\}}}" + "{\\mathclose{\\char`\u2984}}"); +defineMacro("\u2983", "\\lBrace"); // blackboard bold { + +defineMacro("\u2984", "\\rBrace"); // blackboard bold } +// TODO: Create variable sized versions of the last two items. I believe that +// will require new font glyphs. +// The stmaryrd function `\minuso` provides a "Plimsoll" symbol that +// superimposes the characters \circ and \mathminus. Used in chemistry. + +defineMacro("\\minuso", "\\mathbin{\\html@mathml{" + "{\\mathrlap{\\mathchoice{\\kern{0.145em}}{\\kern{0.145em}}" + "{\\kern{0.1015em}}{\\kern{0.0725em}}\\circ}{-}}}" + "{\\char`⦵}}"); +defineMacro("⦵", "\\minuso"); ////////////////////////////////////////////////////////////////////// +// texvc.sty +// The texvc package contains macros available in mediawiki pages. +// We omit the functions deprecated at +// https://en.wikipedia.org/wiki/Help:Displaying_a_formula#Deprecated_syntax +// We also omit texvc's \O, which conflicts with \text{\O} + +defineMacro("\\darr", "\\downarrow"); +defineMacro("\\dArr", "\\Downarrow"); +defineMacro("\\Darr", "\\Downarrow"); +defineMacro("\\lang", "\\langle"); +defineMacro("\\rang", "\\rangle"); +defineMacro("\\uarr", "\\uparrow"); +defineMacro("\\uArr", "\\Uparrow"); +defineMacro("\\Uarr", "\\Uparrow"); +defineMacro("\\N", "\\mathbb{N}"); +defineMacro("\\R", "\\mathbb{R}"); +defineMacro("\\Z", "\\mathbb{Z}"); +defineMacro("\\alef", "\\aleph"); +defineMacro("\\alefsym", "\\aleph"); +defineMacro("\\Alpha", "\\mathrm{A}"); +defineMacro("\\Beta", "\\mathrm{B}"); +defineMacro("\\bull", "\\bullet"); +defineMacro("\\Chi", "\\mathrm{X}"); +defineMacro("\\clubs", "\\clubsuit"); +defineMacro("\\cnums", "\\mathbb{C}"); +defineMacro("\\Complex", "\\mathbb{C}"); +defineMacro("\\Dagger", "\\ddagger"); +defineMacro("\\diamonds", "\\diamondsuit"); +defineMacro("\\empty", "\\emptyset"); +defineMacro("\\Epsilon", "\\mathrm{E}"); +defineMacro("\\Eta", "\\mathrm{H}"); +defineMacro("\\exist", "\\exists"); +defineMacro("\\harr", "\\leftrightarrow"); +defineMacro("\\hArr", "\\Leftrightarrow"); +defineMacro("\\Harr", "\\Leftrightarrow"); +defineMacro("\\hearts", "\\heartsuit"); +defineMacro("\\image", "\\Im"); +defineMacro("\\infin", "\\infty"); +defineMacro("\\Iota", "\\mathrm{I}"); +defineMacro("\\isin", "\\in"); +defineMacro("\\Kappa", "\\mathrm{K}"); +defineMacro("\\larr", "\\leftarrow"); +defineMacro("\\lArr", "\\Leftarrow"); +defineMacro("\\Larr", "\\Leftarrow"); +defineMacro("\\lrarr", "\\leftrightarrow"); +defineMacro("\\lrArr", "\\Leftrightarrow"); +defineMacro("\\Lrarr", "\\Leftrightarrow"); +defineMacro("\\Mu", "\\mathrm{M}"); +defineMacro("\\natnums", "\\mathbb{N}"); +defineMacro("\\Nu", "\\mathrm{N}"); +defineMacro("\\Omicron", "\\mathrm{O}"); +defineMacro("\\plusmn", "\\pm"); +defineMacro("\\rarr", "\\rightarrow"); +defineMacro("\\rArr", "\\Rightarrow"); +defineMacro("\\Rarr", "\\Rightarrow"); +defineMacro("\\real", "\\Re"); +defineMacro("\\reals", "\\mathbb{R}"); +defineMacro("\\Reals", "\\mathbb{R}"); +defineMacro("\\Rho", "\\mathrm{P}"); +defineMacro("\\sdot", "\\cdot"); +defineMacro("\\sect", "\\S"); +defineMacro("\\spades", "\\spadesuit"); +defineMacro("\\sub", "\\subset"); +defineMacro("\\sube", "\\subseteq"); +defineMacro("\\supe", "\\supseteq"); +defineMacro("\\Tau", "\\mathrm{T}"); +defineMacro("\\thetasym", "\\vartheta"); // TODO: defineMacro("\\varcoppa", "\\\mbox{\\coppa}"); + +defineMacro("\\weierp", "\\wp"); +defineMacro("\\Zeta", "\\mathrm{Z}"); ////////////////////////////////////////////////////////////////////// +// statmath.sty +// https://ctan.math.illinois.edu/macros/latex/contrib/statmath/statmath.pdf + +defineMacro("\\argmin", "\\DOTSB\\operatorname*{arg\\,min}"); +defineMacro("\\argmax", "\\DOTSB\\operatorname*{arg\\,max}"); +defineMacro("\\plim", "\\DOTSB\\mathop{\\operatorname{plim}}\\limits"); ////////////////////////////////////////////////////////////////////// +// braket.sty +// http://ctan.math.washington.edu/tex-archive/macros/latex/contrib/braket/braket.pdf + +defineMacro("\\bra", "\\mathinner{\\langle{#1}|}"); +defineMacro("\\ket", "\\mathinner{|{#1}\\rangle}"); +defineMacro("\\braket", "\\mathinner{\\langle{#1}\\rangle}"); +defineMacro("\\Bra", "\\left\\langle#1\\right|"); +defineMacro("\\Ket", "\\left|#1\\right\\rangle"); + +var braketHelper = one => context => { + var left = context.consumeArg().tokens; + var middle = context.consumeArg().tokens; + var middleDouble = context.consumeArg().tokens; + var right = context.consumeArg().tokens; + var oldMiddle = context.macros.get("|"); + var oldMiddleDouble = context.macros.get("\\|"); + context.macros.beginGroup(); + + var midMacro = double => context => { + if (one) { + // Only modify the first instance of | or \| + context.macros.set("|", oldMiddle); + + if (middleDouble.length) { + context.macros.set("\\|", oldMiddleDouble); + } + } + + var doubled = double; + + if (!double && middleDouble.length) { + // Mimic \@ifnextchar + var nextToken = context.future(); + + if (nextToken.text === "|") { + context.popToken(); + doubled = true; + } + } + + return { + tokens: doubled ? middleDouble : middle, + numArgs: 0 + }; + }; + + context.macros.set("|", midMacro(false)); + + if (middleDouble.length) { + context.macros.set("\\|", midMacro(true)); + } + + var arg = context.consumeArg().tokens; + var expanded = context.expandTokens([...right, ...arg, ...left // reversed + ]); + context.macros.endGroup(); + return { + tokens: expanded.reverse(), + numArgs: 0 + }; +}; + +defineMacro("\\bra@ket", braketHelper(false)); +defineMacro("\\bra@set", braketHelper(true)); +defineMacro("\\Braket", "\\bra@ket{\\left\\langle}" + "{\\,\\middle\\vert\\,}{\\,\\middle\\vert\\,}{\\right\\rangle}"); +defineMacro("\\Set", "\\bra@set{\\left\\{\\:}" + "{\\;\\middle\\vert\\;}{\\;\\middle\\Vert\\;}{\\:\\right\\}}"); +defineMacro("\\set", "\\bra@set{\\{\\,}{\\mid}{}{\\,\\}}"); // has no support for special || or \| +////////////////////////////////////////////////////////////////////// +// actuarialangle.dtx + +defineMacro("\\angln", "{\\angl n}"); // Custom Khan Academy colors, should be moved to an optional package + +defineMacro("\\blue", "\\textcolor{##6495ed}{#1}"); +defineMacro("\\orange", "\\textcolor{##ffa500}{#1}"); +defineMacro("\\pink", "\\textcolor{##ff00af}{#1}"); +defineMacro("\\red", "\\textcolor{##df0030}{#1}"); +defineMacro("\\green", "\\textcolor{##28ae7b}{#1}"); +defineMacro("\\gray", "\\textcolor{gray}{#1}"); +defineMacro("\\purple", "\\textcolor{##9d38bd}{#1}"); +defineMacro("\\blueA", "\\textcolor{##ccfaff}{#1}"); +defineMacro("\\blueB", "\\textcolor{##80f6ff}{#1}"); +defineMacro("\\blueC", "\\textcolor{##63d9ea}{#1}"); +defineMacro("\\blueD", "\\textcolor{##11accd}{#1}"); +defineMacro("\\blueE", "\\textcolor{##0c7f99}{#1}"); +defineMacro("\\tealA", "\\textcolor{##94fff5}{#1}"); +defineMacro("\\tealB", "\\textcolor{##26edd5}{#1}"); +defineMacro("\\tealC", "\\textcolor{##01d1c1}{#1}"); +defineMacro("\\tealD", "\\textcolor{##01a995}{#1}"); +defineMacro("\\tealE", "\\textcolor{##208170}{#1}"); +defineMacro("\\greenA", "\\textcolor{##b6ffb0}{#1}"); +defineMacro("\\greenB", "\\textcolor{##8af281}{#1}"); +defineMacro("\\greenC", "\\textcolor{##74cf70}{#1}"); +defineMacro("\\greenD", "\\textcolor{##1fab54}{#1}"); +defineMacro("\\greenE", "\\textcolor{##0d923f}{#1}"); +defineMacro("\\goldA", "\\textcolor{##ffd0a9}{#1}"); +defineMacro("\\goldB", "\\textcolor{##ffbb71}{#1}"); +defineMacro("\\goldC", "\\textcolor{##ff9c39}{#1}"); +defineMacro("\\goldD", "\\textcolor{##e07d10}{#1}"); +defineMacro("\\goldE", "\\textcolor{##a75a05}{#1}"); +defineMacro("\\redA", "\\textcolor{##fca9a9}{#1}"); +defineMacro("\\redB", "\\textcolor{##ff8482}{#1}"); +defineMacro("\\redC", "\\textcolor{##f9685d}{#1}"); +defineMacro("\\redD", "\\textcolor{##e84d39}{#1}"); +defineMacro("\\redE", "\\textcolor{##bc2612}{#1}"); +defineMacro("\\maroonA", "\\textcolor{##ffbde0}{#1}"); +defineMacro("\\maroonB", "\\textcolor{##ff92c6}{#1}"); +defineMacro("\\maroonC", "\\textcolor{##ed5fa6}{#1}"); +defineMacro("\\maroonD", "\\textcolor{##ca337c}{#1}"); +defineMacro("\\maroonE", "\\textcolor{##9e034e}{#1}"); +defineMacro("\\purpleA", "\\textcolor{##ddd7ff}{#1}"); +defineMacro("\\purpleB", "\\textcolor{##c6b9fc}{#1}"); +defineMacro("\\purpleC", "\\textcolor{##aa87ff}{#1}"); +defineMacro("\\purpleD", "\\textcolor{##7854ab}{#1}"); +defineMacro("\\purpleE", "\\textcolor{##543b78}{#1}"); +defineMacro("\\mintA", "\\textcolor{##f5f9e8}{#1}"); +defineMacro("\\mintB", "\\textcolor{##edf2df}{#1}"); +defineMacro("\\mintC", "\\textcolor{##e0e5cc}{#1}"); +defineMacro("\\grayA", "\\textcolor{##f6f7f7}{#1}"); +defineMacro("\\grayB", "\\textcolor{##f0f1f2}{#1}"); +defineMacro("\\grayC", "\\textcolor{##e3e5e6}{#1}"); +defineMacro("\\grayD", "\\textcolor{##d6d8da}{#1}"); +defineMacro("\\grayE", "\\textcolor{##babec2}{#1}"); +defineMacro("\\grayF", "\\textcolor{##888d93}{#1}"); +defineMacro("\\grayG", "\\textcolor{##626569}{#1}"); +defineMacro("\\grayH", "\\textcolor{##3b3e40}{#1}"); +defineMacro("\\grayI", "\\textcolor{##21242c}{#1}"); +defineMacro("\\kaBlue", "\\textcolor{##314453}{#1}"); +defineMacro("\\kaGreen", "\\textcolor{##71B307}{#1}"); + +/** + * This file contains the “gullet” where macros are expanded + * until only non-macro tokens remain. + */ +// List of commands that act like macros but aren't defined as a macro, +// function, or symbol. Used in `isDefined`. +var implicitCommands = { + "^": true, + // Parser.js + "_": true, + // Parser.js + "\\limits": true, + // Parser.js + "\\nolimits": true // Parser.js + +}; +class MacroExpander { + constructor(input, settings, mode) { + this.settings = void 0; + this.expansionCount = void 0; + this.lexer = void 0; + this.macros = void 0; + this.stack = void 0; + this.mode = void 0; + this.settings = settings; + this.expansionCount = 0; + this.feed(input); // Make new global namespace + + this.macros = new Namespace(macros, settings.macros); + this.mode = mode; + this.stack = []; // contains tokens in REVERSE order + } + /** + * Feed a new input string to the same MacroExpander + * (with existing macros etc.). + */ + + + feed(input) { + this.lexer = new Lexer(input, this.settings); + } + /** + * Switches between "text" and "math" modes. + */ + + + switchMode(newMode) { + this.mode = newMode; + } + /** + * Start a new group nesting within all namespaces. + */ + + + beginGroup() { + this.macros.beginGroup(); + } + /** + * End current group nesting within all namespaces. + */ + + + endGroup() { + this.macros.endGroup(); + } + /** + * Ends all currently nested groups (if any), restoring values before the + * groups began. Useful in case of an error in the middle of parsing. + */ + + + endGroups() { + this.macros.endGroups(); + } + /** + * Returns the topmost token on the stack, without expanding it. + * Similar in behavior to TeX's `\futurelet`. + */ + + + future() { + if (this.stack.length === 0) { + this.pushToken(this.lexer.lex()); + } + + return this.stack[this.stack.length - 1]; + } + /** + * Remove and return the next unexpanded token. + */ + + + popToken() { + this.future(); // ensure non-empty stack + + return this.stack.pop(); + } + /** + * Add a given token to the token stack. In particular, this get be used + * to put back a token returned from one of the other methods. + */ + + + pushToken(token) { + this.stack.push(token); + } + /** + * Append an array of tokens to the token stack. + */ + + + pushTokens(tokens) { + this.stack.push(...tokens); + } + /** + * Find an macro argument without expanding tokens and append the array of + * tokens to the token stack. Uses Token as a container for the result. + */ + + + scanArgument(isOptional) { + var start; + var end; + var tokens; + + if (isOptional) { + this.consumeSpaces(); // \@ifnextchar gobbles any space following it + + if (this.future().text !== "[") { + return null; + } + + start = this.popToken(); // don't include [ in tokens + + ({ + tokens, + end + } = this.consumeArg(["]"])); + } else { + ({ + tokens, + start, + end + } = this.consumeArg()); + } // indicate the end of an argument + + + this.pushToken(new Token("EOF", end.loc)); + this.pushTokens(tokens); + return start.range(end, ""); + } + /** + * Consume all following space tokens, without expansion. + */ + + + consumeSpaces() { + for (;;) { + var token = this.future(); + + if (token.text === " ") { + this.stack.pop(); + } else { + break; + } + } + } + /** + * Consume an argument from the token stream, and return the resulting array + * of tokens and start/end token. + */ + + + consumeArg(delims) { + // The argument for a delimited parameter is the shortest (possibly + // empty) sequence of tokens with properly nested {...} groups that is + // followed ... by this particular list of non-parameter tokens. + // The argument for an undelimited parameter is the next nonblank + // token, unless that token is ‘{’, when the argument will be the + // entire {...} group that follows. + var tokens = []; + var isDelimited = delims && delims.length > 0; + + if (!isDelimited) { + // Ignore spaces between arguments. As the TeXbook says: + // "After you have said ‘\def\row#1#2{...}’, you are allowed to + // put spaces between the arguments (e.g., ‘\row x n’), because + // TeX doesn’t use single spaces as undelimited arguments." + this.consumeSpaces(); + } + + var start = this.future(); + var tok; + var depth = 0; + var match = 0; + + do { + tok = this.popToken(); + tokens.push(tok); + + if (tok.text === "{") { + ++depth; + } else if (tok.text === "}") { + --depth; + + if (depth === -1) { + throw new ParseError("Extra }", tok); + } + } else if (tok.text === "EOF") { + throw new ParseError("Unexpected end of input in a macro argument" + ", expected '" + (delims && isDelimited ? delims[match] : "}") + "'", tok); + } + + if (delims && isDelimited) { + if ((depth === 0 || depth === 1 && delims[match] === "{") && tok.text === delims[match]) { + ++match; + + if (match === delims.length) { + // don't include delims in tokens + tokens.splice(-match, match); + break; + } + } else { + match = 0; + } + } + } while (depth !== 0 || isDelimited); // If the argument found ... has the form ‘{}’, + // ... the outermost braces enclosing the argument are removed + + + if (start.text === "{" && tokens[tokens.length - 1].text === "}") { + tokens.pop(); + tokens.shift(); + } + + tokens.reverse(); // to fit in with stack order + + return { + tokens, + start, + end: tok + }; + } + /** + * Consume the specified number of (delimited) arguments from the token + * stream and return the resulting array of arguments. + */ + + + consumeArgs(numArgs, delimiters) { + if (delimiters) { + if (delimiters.length !== numArgs + 1) { + throw new ParseError("The length of delimiters doesn't match the number of args!"); + } + + var delims = delimiters[0]; + + for (var i = 0; i < delims.length; i++) { + var tok = this.popToken(); + + if (delims[i] !== tok.text) { + throw new ParseError("Use of the macro doesn't match its definition", tok); + } + } + } + + var args = []; + + for (var _i = 0; _i < numArgs; _i++) { + args.push(this.consumeArg(delimiters && delimiters[_i + 1]).tokens); + } + + return args; + } + /** + * Increment `expansionCount` by the specified amount. + * Throw an error if it exceeds `maxExpand`. + */ + + + countExpansion(amount) { + this.expansionCount += amount; + + if (this.expansionCount > this.settings.maxExpand) { + throw new ParseError("Too many expansions: infinite loop or " + "need to increase maxExpand setting"); + } + } + /** + * Expand the next token only once if possible. + * + * If the token is expanded, the resulting tokens will be pushed onto + * the stack in reverse order, and the number of such tokens will be + * returned. This number might be zero or positive. + * + * If not, the return value is `false`, and the next token remains at the + * top of the stack. + * + * In either case, the next token will be on the top of the stack, + * or the stack will be empty (in case of empty expansion + * and no other tokens). + * + * Used to implement `expandAfterFuture` and `expandNextToken`. + * + * If expandableOnly, only expandable tokens are expanded and + * an undefined control sequence results in an error. + */ + + + expandOnce(expandableOnly) { + var topToken = this.popToken(); + var name = topToken.text; + var expansion = !topToken.noexpand ? this._getExpansion(name) : null; + + if (expansion == null || expandableOnly && expansion.unexpandable) { + if (expandableOnly && expansion == null && name[0] === "\\" && !this.isDefined(name)) { + throw new ParseError("Undefined control sequence: " + name); + } + + this.pushToken(topToken); + return false; + } + + this.countExpansion(1); + var tokens = expansion.tokens; + var args = this.consumeArgs(expansion.numArgs, expansion.delimiters); + + if (expansion.numArgs) { + // paste arguments in place of the placeholders + tokens = tokens.slice(); // make a shallow copy + + for (var i = tokens.length - 1; i >= 0; --i) { + var tok = tokens[i]; + + if (tok.text === "#") { + if (i === 0) { + throw new ParseError("Incomplete placeholder at end of macro body", tok); + } + + tok = tokens[--i]; // next token on stack + + if (tok.text === "#") { + // ## → # + tokens.splice(i + 1, 1); // drop first # + } else if (/^[1-9]$/.test(tok.text)) { + // replace the placeholder with the indicated argument + tokens.splice(i, 2, ...args[+tok.text - 1]); + } else { + throw new ParseError("Not a valid argument number", tok); + } + } + } + } // Concatenate expansion onto top of stack. + + + this.pushTokens(tokens); + return tokens.length; + } + /** + * Expand the next token only once (if possible), and return the resulting + * top token on the stack (without removing anything from the stack). + * Similar in behavior to TeX's `\expandafter\futurelet`. + * Equivalent to expandOnce() followed by future(). + */ + + + expandAfterFuture() { + this.expandOnce(); + return this.future(); + } + /** + * Recursively expand first token, then return first non-expandable token. + */ + + + expandNextToken() { + for (;;) { + if (this.expandOnce() === false) { + // fully expanded + var token = this.stack.pop(); // the token after \noexpand is interpreted as if its meaning + // were ‘\relax’ + + if (token.treatAsRelax) { + token.text = "\\relax"; + } + + return token; + } + } // Flow unable to figure out that this pathway is impossible. + // https://github.com/facebook/flow/issues/4808 + + + throw new Error(); // eslint-disable-line no-unreachable + } + /** + * Fully expand the given macro name and return the resulting list of + * tokens, or return `undefined` if no such macro is defined. + */ + + + expandMacro(name) { + return this.macros.has(name) ? this.expandTokens([new Token(name)]) : undefined; + } + /** + * Fully expand the given token stream and return the resulting list of + * tokens. Note that the input tokens are in reverse order, but the + * output tokens are in forward order. + */ + + + expandTokens(tokens) { + var output = []; + var oldStackLength = this.stack.length; + this.pushTokens(tokens); + + while (this.stack.length > oldStackLength) { + // Expand only expandable tokens + if (this.expandOnce(true) === false) { + // fully expanded + var token = this.stack.pop(); + + if (token.treatAsRelax) { + // the expansion of \noexpand is the token itself + token.noexpand = false; + token.treatAsRelax = false; + } + + output.push(token); + } + } // Count all of these tokens as additional expansions, to prevent + // exponential blowup from linearly many \edef's. + + + this.countExpansion(output.length); + return output; + } + /** + * Fully expand the given macro name and return the result as a string, + * or return `undefined` if no such macro is defined. + */ + + + expandMacroAsText(name) { + var tokens = this.expandMacro(name); + + if (tokens) { + return tokens.map(token => token.text).join(""); + } else { + return tokens; + } + } + /** + * Returns the expanded macro as a reversed array of tokens and a macro + * argument count. Or returns `null` if no such macro. + */ + + + _getExpansion(name) { + var definition = this.macros.get(name); + + if (definition == null) { + // mainly checking for undefined here + return definition; + } // If a single character has an associated catcode other than 13 + // (active character), then don't expand it. + + + if (name.length === 1) { + var catcode = this.lexer.catcodes[name]; + + if (catcode != null && catcode !== 13) { + return; + } + } + + var expansion = typeof definition === "function" ? definition(this) : definition; + + if (typeof expansion === "string") { + var numArgs = 0; + + if (expansion.indexOf("#") !== -1) { + var stripped = expansion.replace(/##/g, ""); + + while (stripped.indexOf("#" + (numArgs + 1)) !== -1) { + ++numArgs; + } + } + + var bodyLexer = new Lexer(expansion, this.settings); + var tokens = []; + var tok = bodyLexer.lex(); + + while (tok.text !== "EOF") { + tokens.push(tok); + tok = bodyLexer.lex(); + } + + tokens.reverse(); // to fit in with stack using push and pop + + var expanded = { + tokens, + numArgs + }; + return expanded; + } + + return expansion; + } + /** + * Determine whether a command is currently "defined" (has some + * functionality), meaning that it's a macro (in the current group), + * a function, a symbol, or one of the special commands listed in + * `implicitCommands`. + */ + + + isDefined(name) { + return this.macros.has(name) || functions.hasOwnProperty(name) || symbols.math.hasOwnProperty(name) || symbols.text.hasOwnProperty(name) || implicitCommands.hasOwnProperty(name); + } + /** + * Determine whether a command is expandable. + */ + + + isExpandable(name) { + var macro = this.macros.get(name); + return macro != null ? typeof macro === "string" || typeof macro === "function" || !macro.unexpandable : functions.hasOwnProperty(name) && !functions[name].primitive; + } + +} + +// Helpers for Parser.js handling of Unicode (sub|super)script characters. +var unicodeSubRegEx = /^[₊₋₌₍₎₀₁₂₃₄₅₆₇₈₉ₐₑₕᵢⱼₖₗₘₙₒₚᵣₛₜᵤᵥₓᵦᵧᵨᵩᵪ]/; +var uSubsAndSups = Object.freeze({ + '₊': '+', + '₋': '-', + '₌': '=', + '₍': '(', + '₎': ')', + '₀': '0', + '₁': '1', + '₂': '2', + '₃': '3', + '₄': '4', + '₅': '5', + '₆': '6', + '₇': '7', + '₈': '8', + '₉': '9', + '\u2090': 'a', + '\u2091': 'e', + '\u2095': 'h', + '\u1D62': 'i', + '\u2C7C': 'j', + '\u2096': 'k', + '\u2097': 'l', + '\u2098': 'm', + '\u2099': 'n', + '\u2092': 'o', + '\u209A': 'p', + '\u1D63': 'r', + '\u209B': 's', + '\u209C': 't', + '\u1D64': 'u', + '\u1D65': 'v', + '\u2093': 'x', + '\u1D66': 'β', + '\u1D67': 'γ', + '\u1D68': 'ρ', + '\u1D69': '\u03d5', + '\u1D6A': 'χ', + '⁺': '+', + '⁻': '-', + '⁼': '=', + '⁽': '(', + '⁾': ')', + '⁰': '0', + '¹': '1', + '²': '2', + '³': '3', + '⁴': '4', + '⁵': '5', + '⁶': '6', + '⁷': '7', + '⁸': '8', + '⁹': '9', + '\u1D2C': 'A', + '\u1D2E': 'B', + '\u1D30': 'D', + '\u1D31': 'E', + '\u1D33': 'G', + '\u1D34': 'H', + '\u1D35': 'I', + '\u1D36': 'J', + '\u1D37': 'K', + '\u1D38': 'L', + '\u1D39': 'M', + '\u1D3A': 'N', + '\u1D3C': 'O', + '\u1D3E': 'P', + '\u1D3F': 'R', + '\u1D40': 'T', + '\u1D41': 'U', + '\u2C7D': 'V', + '\u1D42': 'W', + '\u1D43': 'a', + '\u1D47': 'b', + '\u1D9C': 'c', + '\u1D48': 'd', + '\u1D49': 'e', + '\u1DA0': 'f', + '\u1D4D': 'g', + '\u02B0': 'h', + '\u2071': 'i', + '\u02B2': 'j', + '\u1D4F': 'k', + '\u02E1': 'l', + '\u1D50': 'm', + '\u207F': 'n', + '\u1D52': 'o', + '\u1D56': 'p', + '\u02B3': 'r', + '\u02E2': 's', + '\u1D57': 't', + '\u1D58': 'u', + '\u1D5B': 'v', + '\u02B7': 'w', + '\u02E3': 'x', + '\u02B8': 'y', + '\u1DBB': 'z', + '\u1D5D': 'β', + '\u1D5E': 'γ', + '\u1D5F': 'δ', + '\u1D60': '\u03d5', + '\u1D61': 'χ', + '\u1DBF': 'θ' +}); + +/* eslint no-constant-condition:0 */ + +var unicodeAccents = { + "́": { + "text": "\\'", + "math": "\\acute" + }, + "̀": { + "text": "\\`", + "math": "\\grave" + }, + "̈": { + "text": "\\\"", + "math": "\\ddot" + }, + "̃": { + "text": "\\~", + "math": "\\tilde" + }, + "̄": { + "text": "\\=", + "math": "\\bar" + }, + "̆": { + "text": "\\u", + "math": "\\breve" + }, + "̌": { + "text": "\\v", + "math": "\\check" + }, + "̂": { + "text": "\\^", + "math": "\\hat" + }, + "̇": { + "text": "\\.", + "math": "\\dot" + }, + "̊": { + "text": "\\r", + "math": "\\mathring" + }, + "̋": { + "text": "\\H" + }, + "̧": { + "text": "\\c" + } +}; +var unicodeSymbols = { + "á": "á", + "à": "à", + "ä": "ä", + "ǟ": "ǟ", + "ã": "ã", + "ā": "ā", + "ă": "ă", + "ắ": "ắ", + "ằ": "ằ", + "ẵ": "ẵ", + "ǎ": "ǎ", + "â": "â", + "ấ": "ấ", + "ầ": "ầ", + "ẫ": "ẫ", + "ȧ": "ȧ", + "ǡ": "ǡ", + "å": "å", + "ǻ": "ǻ", + "ḃ": "ḃ", + "ć": "ć", + "ḉ": "ḉ", + "č": "č", + "ĉ": "ĉ", + "ċ": "ċ", + "ç": "ç", + "ď": "ď", + "ḋ": "ḋ", + "ḑ": "ḑ", + "é": "é", + "è": "è", + "ë": "ë", + "ẽ": "ẽ", + "ē": "ē", + "ḗ": "ḗ", + "ḕ": "ḕ", + "ĕ": "ĕ", + "ḝ": "ḝ", + "ě": "ě", + "ê": "ê", + "ế": "ế", + "ề": "ề", + "ễ": "ễ", + "ė": "ė", + "ȩ": "ȩ", + "ḟ": "ḟ", + "ǵ": "ǵ", + "ḡ": "ḡ", + "ğ": "ğ", + "ǧ": "ǧ", + "ĝ": "ĝ", + "ġ": "ġ", + "ģ": "ģ", + "ḧ": "ḧ", + "ȟ": "ȟ", + "ĥ": "ĥ", + "ḣ": "ḣ", + "ḩ": "ḩ", + "í": "í", + "ì": "ì", + "ï": "ï", + "ḯ": "ḯ", + "ĩ": "ĩ", + "ī": "ī", + "ĭ": "ĭ", + "ǐ": "ǐ", + "î": "î", + "ǰ": "ǰ", + "ĵ": "ĵ", + "ḱ": "ḱ", + "ǩ": "ǩ", + "ķ": "ķ", + "ĺ": "ĺ", + "ľ": "ľ", + "ļ": "ļ", + "ḿ": "ḿ", + "ṁ": "ṁ", + "ń": "ń", + "ǹ": "ǹ", + "ñ": "ñ", + "ň": "ň", + "ṅ": "ṅ", + "ņ": "ņ", + "ó": "ó", + "ò": "ò", + "ö": "ö", + "ȫ": "ȫ", + "õ": "õ", + "ṍ": "ṍ", + "ṏ": "ṏ", + "ȭ": "ȭ", + "ō": "ō", + "ṓ": "ṓ", + "ṑ": "ṑ", + "ŏ": "ŏ", + "ǒ": "ǒ", + "ô": "ô", + "ố": "ố", + "ồ": "ồ", + "ỗ": "ỗ", + "ȯ": "ȯ", + "ȱ": "ȱ", + "ő": "ő", + "ṕ": "ṕ", + "ṗ": "ṗ", + "ŕ": "ŕ", + "ř": "ř", + "ṙ": "ṙ", + "ŗ": "ŗ", + "ś": "ś", + "ṥ": "ṥ", + "š": "š", + "ṧ": "ṧ", + "ŝ": "ŝ", + "ṡ": "ṡ", + "ş": "ş", + "ẗ": "ẗ", + "ť": "ť", + "ṫ": "ṫ", + "ţ": "ţ", + "ú": "ú", + "ù": "ù", + "ü": "ü", + "ǘ": "ǘ", + "ǜ": "ǜ", + "ǖ": "ǖ", + "ǚ": "ǚ", + "ũ": "ũ", + "ṹ": "ṹ", + "ū": "ū", + "ṻ": "ṻ", + "ŭ": "ŭ", + "ǔ": "ǔ", + "û": "û", + "ů": "ů", + "ű": "ű", + "ṽ": "ṽ", + "ẃ": "ẃ", + "ẁ": "ẁ", + "ẅ": "ẅ", + "ŵ": "ŵ", + "ẇ": "ẇ", + "ẘ": "ẘ", + "ẍ": "ẍ", + "ẋ": "ẋ", + "ý": "ý", + "ỳ": "ỳ", + "ÿ": "ÿ", + "ỹ": "ỹ", + "ȳ": "ȳ", + "ŷ": "ŷ", + "ẏ": "ẏ", + "ẙ": "ẙ", + "ź": "ź", + "ž": "ž", + "ẑ": "ẑ", + "ż": "ż", + "Á": "Á", + "À": "À", + "Ä": "Ä", + "Ǟ": "Ǟ", + "Ã": "Ã", + "Ā": "Ā", + "Ă": "Ă", + "Ắ": "Ắ", + "Ằ": "Ằ", + "Ẵ": "Ẵ", + "Ǎ": "Ǎ", + "Â": "Â", + "Ấ": "Ấ", + "Ầ": "Ầ", + "Ẫ": "Ẫ", + "Ȧ": "Ȧ", + "Ǡ": "Ǡ", + "Å": "Å", + "Ǻ": "Ǻ", + "Ḃ": "Ḃ", + "Ć": "Ć", + "Ḉ": "Ḉ", + "Č": "Č", + "Ĉ": "Ĉ", + "Ċ": "Ċ", + "Ç": "Ç", + "Ď": "Ď", + "Ḋ": "Ḋ", + "Ḑ": "Ḑ", + "É": "É", + "È": "È", + "Ë": "Ë", + "Ẽ": "Ẽ", + "Ē": "Ē", + "Ḗ": "Ḗ", + "Ḕ": "Ḕ", + "Ĕ": "Ĕ", + "Ḝ": "Ḝ", + "Ě": "Ě", + "Ê": "Ê", + "Ế": "Ế", + "Ề": "Ề", + "Ễ": "Ễ", + "Ė": "Ė", + "Ȩ": "Ȩ", + "Ḟ": "Ḟ", + "Ǵ": "Ǵ", + "Ḡ": "Ḡ", + "Ğ": "Ğ", + "Ǧ": "Ǧ", + "Ĝ": "Ĝ", + "Ġ": "Ġ", + "Ģ": "Ģ", + "Ḧ": "Ḧ", + "Ȟ": "Ȟ", + "Ĥ": "Ĥ", + "Ḣ": "Ḣ", + "Ḩ": "Ḩ", + "Í": "Í", + "Ì": "Ì", + "Ï": "Ï", + "Ḯ": "Ḯ", + "Ĩ": "Ĩ", + "Ī": "Ī", + "Ĭ": "Ĭ", + "Ǐ": "Ǐ", + "Î": "Î", + "İ": "İ", + "Ĵ": "Ĵ", + "Ḱ": "Ḱ", + "Ǩ": "Ǩ", + "Ķ": "Ķ", + "Ĺ": "Ĺ", + "Ľ": "Ľ", + "Ļ": "Ļ", + "Ḿ": "Ḿ", + "Ṁ": "Ṁ", + "Ń": "Ń", + "Ǹ": "Ǹ", + "Ñ": "Ñ", + "Ň": "Ň", + "Ṅ": "Ṅ", + "Ņ": "Ņ", + "Ó": "Ó", + "Ò": "Ò", + "Ö": "Ö", + "Ȫ": "Ȫ", + "Õ": "Õ", + "Ṍ": "Ṍ", + "Ṏ": "Ṏ", + "Ȭ": "Ȭ", + "Ō": "Ō", + "Ṓ": "Ṓ", + "Ṑ": "Ṑ", + "Ŏ": "Ŏ", + "Ǒ": "Ǒ", + "Ô": "Ô", + "Ố": "Ố", + "Ồ": "Ồ", + "Ỗ": "Ỗ", + "Ȯ": "Ȯ", + "Ȱ": "Ȱ", + "Ő": "Ő", + "Ṕ": "Ṕ", + "Ṗ": "Ṗ", + "Ŕ": "Ŕ", + "Ř": "Ř", + "Ṙ": "Ṙ", + "Ŗ": "Ŗ", + "Ś": "Ś", + "Ṥ": "Ṥ", + "Š": "Š", + "Ṧ": "Ṧ", + "Ŝ": "Ŝ", + "Ṡ": "Ṡ", + "Ş": "Ş", + "Ť": "Ť", + "Ṫ": "Ṫ", + "Ţ": "Ţ", + "Ú": "Ú", + "Ù": "Ù", + "Ü": "Ü", + "Ǘ": "Ǘ", + "Ǜ": "Ǜ", + "Ǖ": "Ǖ", + "Ǚ": "Ǚ", + "Ũ": "Ũ", + "Ṹ": "Ṹ", + "Ū": "Ū", + "Ṻ": "Ṻ", + "Ŭ": "Ŭ", + "Ǔ": "Ǔ", + "Û": "Û", + "Ů": "Ů", + "Ű": "Ű", + "Ṽ": "Ṽ", + "Ẃ": "Ẃ", + "Ẁ": "Ẁ", + "Ẅ": "Ẅ", + "Ŵ": "Ŵ", + "Ẇ": "Ẇ", + "Ẍ": "Ẍ", + "Ẋ": "Ẋ", + "Ý": "Ý", + "Ỳ": "Ỳ", + "Ÿ": "Ÿ", + "Ỹ": "Ỹ", + "Ȳ": "Ȳ", + "Ŷ": "Ŷ", + "Ẏ": "Ẏ", + "Ź": "Ź", + "Ž": "Ž", + "Ẑ": "Ẑ", + "Ż": "Ż", + "ά": "ά", + "ὰ": "ὰ", + "ᾱ": "ᾱ", + "ᾰ": "ᾰ", + "έ": "έ", + "ὲ": "ὲ", + "ή": "ή", + "ὴ": "ὴ", + "ί": "ί", + "ὶ": "ὶ", + "ϊ": "ϊ", + "ΐ": "ΐ", + "ῒ": "ῒ", + "ῑ": "ῑ", + "ῐ": "ῐ", + "ό": "ό", + "ὸ": "ὸ", + "ύ": "ύ", + "ὺ": "ὺ", + "ϋ": "ϋ", + "ΰ": "ΰ", + "ῢ": "ῢ", + "ῡ": "ῡ", + "ῠ": "ῠ", + "ώ": "ώ", + "ὼ": "ὼ", + "Ύ": "Ύ", + "Ὺ": "Ὺ", + "Ϋ": "Ϋ", + "Ῡ": "Ῡ", + "Ῠ": "Ῠ", + "Ώ": "Ώ", + "Ὼ": "Ὼ" +}; + +/** + * This file contains the parser used to parse out a TeX expression from the + * input. Since TeX isn't context-free, standard parsers don't work particularly + * well. + * + * The strategy of this parser is as such: + * + * The main functions (the `.parse...` ones) take a position in the current + * parse string to parse tokens from. The lexer (found in Lexer.js, stored at + * this.gullet.lexer) also supports pulling out tokens at arbitrary places. When + * individual tokens are needed at a position, the lexer is called to pull out a + * token, which is then used. + * + * The parser has a property called "mode" indicating the mode that + * the parser is currently in. Currently it has to be one of "math" or + * "text", which denotes whether the current environment is a math-y + * one or a text-y one (e.g. inside \text). Currently, this serves to + * limit the functions which can be used in text mode. + * + * The main functions then return an object which contains the useful data that + * was parsed at its given point, and a new position at the end of the parsed + * data. The main functions can call each other and continue the parsing by + * using the returned position as a new starting point. + * + * There are also extra `.handle...` functions, which pull out some reused + * functionality into self-contained functions. + * + * The functions return ParseNodes. + */ +class Parser { + constructor(input, settings) { + this.mode = void 0; + this.gullet = void 0; + this.settings = void 0; + this.leftrightDepth = void 0; + this.nextToken = void 0; + // Start in math mode + this.mode = "math"; // Create a new macro expander (gullet) and (indirectly via that) also a + // new lexer (mouth) for this parser (stomach, in the language of TeX) + + this.gullet = new MacroExpander(input, settings, this.mode); // Store the settings for use in parsing + + this.settings = settings; // Count leftright depth (for \middle errors) + + this.leftrightDepth = 0; + } + /** + * Checks a result to make sure it has the right type, and throws an + * appropriate error otherwise. + */ + + + expect(text, consume) { + if (consume === void 0) { + consume = true; + } + + if (this.fetch().text !== text) { + throw new ParseError("Expected '" + text + "', got '" + this.fetch().text + "'", this.fetch()); + } + + if (consume) { + this.consume(); + } + } + /** + * Discards the current lookahead token, considering it consumed. + */ + + + consume() { + this.nextToken = null; + } + /** + * Return the current lookahead token, or if there isn't one (at the + * beginning, or if the previous lookahead token was consume()d), + * fetch the next token as the new lookahead token and return it. + */ + + + fetch() { + if (this.nextToken == null) { + this.nextToken = this.gullet.expandNextToken(); + } + + return this.nextToken; + } + /** + * Switches between "text" and "math" modes. + */ + + + switchMode(newMode) { + this.mode = newMode; + this.gullet.switchMode(newMode); + } + /** + * Main parsing function, which parses an entire input. + */ + + + parse() { + if (!this.settings.globalGroup) { + // Create a group namespace for the math expression. + // (LaTeX creates a new group for every $...$, $$...$$, \[...\].) + this.gullet.beginGroup(); + } // Use old \color behavior (same as LaTeX's \textcolor) if requested. + // We do this within the group for the math expression, so it doesn't + // pollute settings.macros. + + + if (this.settings.colorIsTextColor) { + this.gullet.macros.set("\\color", "\\textcolor"); + } + + try { + // Try to parse the input + var parse = this.parseExpression(false); // If we succeeded, make sure there's an EOF at the end + + this.expect("EOF"); // End the group namespace for the expression + + if (!this.settings.globalGroup) { + this.gullet.endGroup(); + } + + return parse; // Close any leftover groups in case of a parse error. + } finally { + this.gullet.endGroups(); + } + } + /** + * Fully parse a separate sequence of tokens as a separate job. + * Tokens should be specified in reverse order, as in a MacroDefinition. + */ + + + subparse(tokens) { + // Save the next token from the current job. + var oldToken = this.nextToken; + this.consume(); // Run the new job, terminating it with an excess '}' + + this.gullet.pushToken(new Token("}")); + this.gullet.pushTokens(tokens); + var parse = this.parseExpression(false); + this.expect("}"); // Restore the next token from the current job. + + this.nextToken = oldToken; + return parse; + } + + /** + * Parses an "expression", which is a list of atoms. + * + * `breakOnInfix`: Should the parsing stop when we hit infix nodes? This + * happens when functions have higher precedence han infix + * nodes in implicit parses. + * + * `breakOnTokenText`: The text of the token that the expression should end + * with, or `null` if something else should end the + * expression. + */ + parseExpression(breakOnInfix, breakOnTokenText) { + var body = []; // Keep adding atoms to the body until we can't parse any more atoms (either + // we reached the end, a }, or a \right) + + while (true) { + // Ignore spaces in math mode + if (this.mode === "math") { + this.consumeSpaces(); + } + + var lex = this.fetch(); + + if (Parser.endOfExpression.indexOf(lex.text) !== -1) { + break; + } + + if (breakOnTokenText && lex.text === breakOnTokenText) { + break; + } + + if (breakOnInfix && functions[lex.text] && functions[lex.text].infix) { + break; + } + + var atom = this.parseAtom(breakOnTokenText); + + if (!atom) { + break; + } else if (atom.type === "internal") { + continue; + } + + body.push(atom); + } + + if (this.mode === "text") { + this.formLigatures(body); + } + + return this.handleInfixNodes(body); + } + /** + * Rewrites infix operators such as \over with corresponding commands such + * as \frac. + * + * There can only be one infix operator per group. If there's more than one + * then the expression is ambiguous. This can be resolved by adding {}. + */ + + + handleInfixNodes(body) { + var overIndex = -1; + var funcName; + + for (var i = 0; i < body.length; i++) { + if (body[i].type === "infix") { + if (overIndex !== -1) { + throw new ParseError("only one infix operator per group", body[i].token); + } + + overIndex = i; + funcName = body[i].replaceWith; + } + } + + if (overIndex !== -1 && funcName) { + var numerNode; + var denomNode; + var numerBody = body.slice(0, overIndex); + var denomBody = body.slice(overIndex + 1); + + if (numerBody.length === 1 && numerBody[0].type === "ordgroup") { + numerNode = numerBody[0]; + } else { + numerNode = { + type: "ordgroup", + mode: this.mode, + body: numerBody + }; + } + + if (denomBody.length === 1 && denomBody[0].type === "ordgroup") { + denomNode = denomBody[0]; + } else { + denomNode = { + type: "ordgroup", + mode: this.mode, + body: denomBody + }; + } + + var node; + + if (funcName === "\\\\abovefrac") { + node = this.callFunction(funcName, [numerNode, body[overIndex], denomNode], []); + } else { + node = this.callFunction(funcName, [numerNode, denomNode], []); + } + + return [node]; + } else { + return body; + } + } + /** + * Handle a subscript or superscript with nice errors. + */ + + + handleSupSubscript(name // For error reporting. + ) { + var symbolToken = this.fetch(); + var symbol = symbolToken.text; + this.consume(); + this.consumeSpaces(); // ignore spaces before sup/subscript argument + + var group = this.parseGroup(name); + + if (!group) { + throw new ParseError("Expected group after '" + symbol + "'", symbolToken); + } + + return group; + } + /** + * Converts the textual input of an unsupported command into a text node + * contained within a color node whose color is determined by errorColor + */ + + + formatUnsupportedCmd(text) { + var textordArray = []; + + for (var i = 0; i < text.length; i++) { + textordArray.push({ + type: "textord", + mode: "text", + text: text[i] + }); + } + + var textNode = { + type: "text", + mode: this.mode, + body: textordArray + }; + var colorNode = { + type: "color", + mode: this.mode, + color: this.settings.errorColor, + body: [textNode] + }; + return colorNode; + } + /** + * Parses a group with optional super/subscripts. + */ + + + parseAtom(breakOnTokenText) { + // The body of an atom is an implicit group, so that things like + // \left(x\right)^2 work correctly. + var base = this.parseGroup("atom", breakOnTokenText); // In text mode, we don't have superscripts or subscripts + + if (this.mode === "text") { + return base; + } // Note that base may be empty (i.e. null) at this point. + + + var superscript; + var subscript; + + while (true) { + // Guaranteed in math mode, so eat any spaces first. + this.consumeSpaces(); // Lex the first token + + var lex = this.fetch(); + + if (lex.text === "\\limits" || lex.text === "\\nolimits") { + // We got a limit control + if (base && base.type === "op") { + var limits = lex.text === "\\limits"; + base.limits = limits; + base.alwaysHandleSupSub = true; + } else if (base && base.type === "operatorname") { + if (base.alwaysHandleSupSub) { + base.limits = lex.text === "\\limits"; + } + } else { + throw new ParseError("Limit controls must follow a math operator", lex); + } + + this.consume(); + } else if (lex.text === "^") { + // We got a superscript start + if (superscript) { + throw new ParseError("Double superscript", lex); + } + + superscript = this.handleSupSubscript("superscript"); + } else if (lex.text === "_") { + // We got a subscript start + if (subscript) { + throw new ParseError("Double subscript", lex); + } + + subscript = this.handleSupSubscript("subscript"); + } else if (lex.text === "'") { + // We got a prime + if (superscript) { + throw new ParseError("Double superscript", lex); + } + + var prime = { + type: "textord", + mode: this.mode, + text: "\\prime" + }; // Many primes can be grouped together, so we handle this here + + var primes = [prime]; + this.consume(); // Keep lexing tokens until we get something that's not a prime + + while (this.fetch().text === "'") { + // For each one, add another prime to the list + primes.push(prime); + this.consume(); + } // If there's a superscript following the primes, combine that + // superscript in with the primes. + + + if (this.fetch().text === "^") { + primes.push(this.handleSupSubscript("superscript")); + } // Put everything into an ordgroup as the superscript + + + superscript = { + type: "ordgroup", + mode: this.mode, + body: primes + }; + } else if (uSubsAndSups[lex.text]) { + // A Unicode subscript or superscript character. + // We treat these similarly to the unicode-math package. + // So we render a string of Unicode (sub|super)scripts the + // same as a (sub|super)script of regular characters. + var isSub = unicodeSubRegEx.test(lex.text); + var subsupTokens = []; + subsupTokens.push(new Token(uSubsAndSups[lex.text])); + this.consume(); // Continue fetching tokens to fill out the string. + + while (true) { + var token = this.fetch().text; + + if (!uSubsAndSups[token]) { + break; + } + + if (unicodeSubRegEx.test(token) !== isSub) { + break; + } + + subsupTokens.unshift(new Token(uSubsAndSups[token])); + this.consume(); + } // Now create a (sub|super)script. + + + var body = this.subparse(subsupTokens); + + if (isSub) { + subscript = { + type: "ordgroup", + mode: "math", + body + }; + } else { + superscript = { + type: "ordgroup", + mode: "math", + body + }; + } + } else { + // If it wasn't ^, _, or ', stop parsing super/subscripts + break; + } + } // Base must be set if superscript or subscript are set per logic above, + // but need to check here for type check to pass. + + + if (superscript || subscript) { + // If we got either a superscript or subscript, create a supsub + return { + type: "supsub", + mode: this.mode, + base: base, + sup: superscript, + sub: subscript + }; + } else { + // Otherwise return the original body + return base; + } + } + /** + * Parses an entire function, including its base and all of its arguments. + */ + + + parseFunction(breakOnTokenText, name // For determining its context + ) { + var token = this.fetch(); + var func = token.text; + var funcData = functions[func]; + + if (!funcData) { + return null; + } + + this.consume(); // consume command token + + if (name && name !== "atom" && !funcData.allowedInArgument) { + throw new ParseError("Got function '" + func + "' with no arguments" + (name ? " as " + name : ""), token); + } else if (this.mode === "text" && !funcData.allowedInText) { + throw new ParseError("Can't use function '" + func + "' in text mode", token); + } else if (this.mode === "math" && funcData.allowedInMath === false) { + throw new ParseError("Can't use function '" + func + "' in math mode", token); + } + + var { + args, + optArgs + } = this.parseArguments(func, funcData); + return this.callFunction(func, args, optArgs, token, breakOnTokenText); + } + /** + * Call a function handler with a suitable context and arguments. + */ + + + callFunction(name, args, optArgs, token, breakOnTokenText) { + var context = { + funcName: name, + parser: this, + token, + breakOnTokenText + }; + var func = functions[name]; + + if (func && func.handler) { + return func.handler(context, args, optArgs); + } else { + throw new ParseError("No function handler for " + name); + } + } + /** + * Parses the arguments of a function or environment + */ + + + parseArguments(func, // Should look like "\name" or "\begin{name}". + funcData) { + var totalArgs = funcData.numArgs + funcData.numOptionalArgs; + + if (totalArgs === 0) { + return { + args: [], + optArgs: [] + }; + } + + var args = []; + var optArgs = []; + + for (var i = 0; i < totalArgs; i++) { + var argType = funcData.argTypes && funcData.argTypes[i]; + var isOptional = i < funcData.numOptionalArgs; + + if (funcData.primitive && argType == null || // \sqrt expands into primitive if optional argument doesn't exist + funcData.type === "sqrt" && i === 1 && optArgs[0] == null) { + argType = "primitive"; + } + + var arg = this.parseGroupOfType("argument to '" + func + "'", argType, isOptional); + + if (isOptional) { + optArgs.push(arg); + } else if (arg != null) { + args.push(arg); + } else { + // should be unreachable + throw new ParseError("Null argument, please report this as a bug"); + } + } + + return { + args, + optArgs + }; + } + /** + * Parses a group when the mode is changing. + */ + + + parseGroupOfType(name, type, optional) { + switch (type) { + case "color": + return this.parseColorGroup(optional); + + case "size": + return this.parseSizeGroup(optional); + + case "url": + return this.parseUrlGroup(optional); + + case "math": + case "text": + return this.parseArgumentGroup(optional, type); + + case "hbox": + { + // hbox argument type wraps the argument in the equivalent of + // \hbox, which is like \text but switching to \textstyle size. + var group = this.parseArgumentGroup(optional, "text"); + return group != null ? { + type: "styling", + mode: group.mode, + body: [group], + style: "text" // simulate \textstyle + + } : null; + } + + case "raw": + { + var token = this.parseStringGroup("raw", optional); + return token != null ? { + type: "raw", + mode: "text", + string: token.text + } : null; + } + + case "primitive": + { + if (optional) { + throw new ParseError("A primitive argument cannot be optional"); + } + + var _group = this.parseGroup(name); + + if (_group == null) { + throw new ParseError("Expected group as " + name, this.fetch()); + } + + return _group; + } + + case "original": + case null: + case undefined: + return this.parseArgumentGroup(optional); + + default: + throw new ParseError("Unknown group type as " + name, this.fetch()); + } + } + /** + * Discard any space tokens, fetching the next non-space token. + */ + + + consumeSpaces() { + while (this.fetch().text === " ") { + this.consume(); + } + } + /** + * Parses a group, essentially returning the string formed by the + * brace-enclosed tokens plus some position information. + */ + + + parseStringGroup(modeName, // Used to describe the mode in error messages. + optional) { + var argToken = this.gullet.scanArgument(optional); + + if (argToken == null) { + return null; + } + + var str = ""; + var nextToken; + + while ((nextToken = this.fetch()).text !== "EOF") { + str += nextToken.text; + this.consume(); + } + + this.consume(); // consume the end of the argument + + argToken.text = str; + return argToken; + } + /** + * Parses a regex-delimited group: the largest sequence of tokens + * whose concatenated strings match `regex`. Returns the string + * formed by the tokens plus some position information. + */ + + + parseRegexGroup(regex, modeName // Used to describe the mode in error messages. + ) { + var firstToken = this.fetch(); + var lastToken = firstToken; + var str = ""; + var nextToken; + + while ((nextToken = this.fetch()).text !== "EOF" && regex.test(str + nextToken.text)) { + lastToken = nextToken; + str += lastToken.text; + this.consume(); + } + + if (str === "") { + throw new ParseError("Invalid " + modeName + ": '" + firstToken.text + "'", firstToken); + } + + return firstToken.range(lastToken, str); + } + /** + * Parses a color description. + */ + + + parseColorGroup(optional) { + var res = this.parseStringGroup("color", optional); + + if (res == null) { + return null; + } + + var match = /^(#[a-f0-9]{3}|#?[a-f0-9]{6}|[a-z]+)$/i.exec(res.text); + + if (!match) { + throw new ParseError("Invalid color: '" + res.text + "'", res); + } + + var color = match[0]; + + if (/^[0-9a-f]{6}$/i.test(color)) { + // We allow a 6-digit HTML color spec without a leading "#". + // This follows the xcolor package's HTML color model. + // Predefined color names are all missed by this RegEx pattern. + color = "#" + color; + } + + return { + type: "color-token", + mode: this.mode, + color + }; + } + /** + * Parses a size specification, consisting of magnitude and unit. + */ + + + parseSizeGroup(optional) { + var res; + var isBlank = false; // don't expand before parseStringGroup + + this.gullet.consumeSpaces(); + + if (!optional && this.gullet.future().text !== "{") { + res = this.parseRegexGroup(/^[-+]? *(?:$|\d+|\d+\.\d*|\.\d*) *[a-z]{0,2} *$/, "size"); + } else { + res = this.parseStringGroup("size", optional); + } + + if (!res) { + return null; + } + + if (!optional && res.text.length === 0) { + // Because we've tested for what is !optional, this block won't + // affect \kern, \hspace, etc. It will capture the mandatory arguments + // to \genfrac and \above. + res.text = "0pt"; // Enable \above{} + + isBlank = true; // This is here specifically for \genfrac + } + + var match = /([-+]?) *(\d+(?:\.\d*)?|\.\d+) *([a-z]{2})/.exec(res.text); + + if (!match) { + throw new ParseError("Invalid size: '" + res.text + "'", res); + } + + var data = { + number: +(match[1] + match[2]), + // sign + magnitude, cast to number + unit: match[3] + }; + + if (!validUnit(data)) { + throw new ParseError("Invalid unit: '" + data.unit + "'", res); + } + + return { + type: "size", + mode: this.mode, + value: data, + isBlank + }; + } + /** + * Parses an URL, checking escaped letters and allowed protocols, + * and setting the catcode of % as an active character (as in \hyperref). + */ + + + parseUrlGroup(optional) { + this.gullet.lexer.setCatcode("%", 13); // active character + + this.gullet.lexer.setCatcode("~", 12); // other character + + var res = this.parseStringGroup("url", optional); + this.gullet.lexer.setCatcode("%", 14); // comment character + + this.gullet.lexer.setCatcode("~", 13); // active character + + if (res == null) { + return null; + } // hyperref package allows backslashes alone in href, but doesn't + // generate valid links in such cases; we interpret this as + // "undefined" behaviour, and keep them as-is. Some browser will + // replace backslashes with forward slashes. + + + var url = res.text.replace(/\\([#$%&~_^{}])/g, '$1'); + return { + type: "url", + mode: this.mode, + url + }; + } + /** + * Parses an argument with the mode specified. + */ + + + parseArgumentGroup(optional, mode) { + var argToken = this.gullet.scanArgument(optional); + + if (argToken == null) { + return null; + } + + var outerMode = this.mode; + + if (mode) { + // Switch to specified mode + this.switchMode(mode); + } + + this.gullet.beginGroup(); + var expression = this.parseExpression(false, "EOF"); // TODO: find an alternative way to denote the end + + this.expect("EOF"); // expect the end of the argument + + this.gullet.endGroup(); + var result = { + type: "ordgroup", + mode: this.mode, + loc: argToken.loc, + body: expression + }; + + if (mode) { + // Switch mode back + this.switchMode(outerMode); + } + + return result; + } + /** + * Parses an ordinary group, which is either a single nucleus (like "x") + * or an expression in braces (like "{x+y}") or an implicit group, a group + * that starts at the current position, and ends right before a higher explicit + * group ends, or at EOF. + */ + + + parseGroup(name, // For error reporting. + breakOnTokenText) { + var firstToken = this.fetch(); + var text = firstToken.text; + var result; // Try to parse an open brace or \begingroup + + if (text === "{" || text === "\\begingroup") { + this.consume(); + var groupEnd = text === "{" ? "}" : "\\endgroup"; + this.gullet.beginGroup(); // If we get a brace, parse an expression + + var expression = this.parseExpression(false, groupEnd); + var lastToken = this.fetch(); + this.expect(groupEnd); // Check that we got a matching closing brace + + this.gullet.endGroup(); + result = { + type: "ordgroup", + mode: this.mode, + loc: SourceLocation.range(firstToken, lastToken), + body: expression, + // A group formed by \begingroup...\endgroup is a semi-simple group + // which doesn't affect spacing in math mode, i.e., is transparent. + // https://tex.stackexchange.com/questions/1930/when-should-one- + // use-begingroup-instead-of-bgroup + semisimple: text === "\\begingroup" || undefined + }; + } else { + // If there exists a function with this name, parse the function. + // Otherwise, just return a nucleus + result = this.parseFunction(breakOnTokenText, name) || this.parseSymbol(); + + if (result == null && text[0] === "\\" && !implicitCommands.hasOwnProperty(text)) { + if (this.settings.throwOnError) { + throw new ParseError("Undefined control sequence: " + text, firstToken); + } + + result = this.formatUnsupportedCmd(text); + this.consume(); + } + } + + return result; + } + /** + * Form ligature-like combinations of characters for text mode. + * This includes inputs like "--", "---", "``" and "''". + * The result will simply replace multiple textord nodes with a single + * character in each value by a single textord node having multiple + * characters in its value. The representation is still ASCII source. + * The group will be modified in place. + */ + + + formLigatures(group) { + var n = group.length - 1; + + for (var i = 0; i < n; ++i) { + var a = group[i]; // $FlowFixMe: Not every node type has a `text` property. + + var v = a.text; + + if (v === "-" && group[i + 1].text === "-") { + if (i + 1 < n && group[i + 2].text === "-") { + group.splice(i, 3, { + type: "textord", + mode: "text", + loc: SourceLocation.range(a, group[i + 2]), + text: "---" + }); + n -= 2; + } else { + group.splice(i, 2, { + type: "textord", + mode: "text", + loc: SourceLocation.range(a, group[i + 1]), + text: "--" + }); + n -= 1; + } + } + + if ((v === "'" || v === "`") && group[i + 1].text === v) { + group.splice(i, 2, { + type: "textord", + mode: "text", + loc: SourceLocation.range(a, group[i + 1]), + text: v + v + }); + n -= 1; + } + } + } + /** + * Parse a single symbol out of the string. Here, we handle single character + * symbols and special functions like \verb. + */ + + + parseSymbol() { + var nucleus = this.fetch(); + var text = nucleus.text; + + if (/^\\verb[^a-zA-Z]/.test(text)) { + this.consume(); + var arg = text.slice(5); + var star = arg.charAt(0) === "*"; + + if (star) { + arg = arg.slice(1); + } // Lexer's tokenRegex is constructed to always have matching + // first/last characters. + + + if (arg.length < 2 || arg.charAt(0) !== arg.slice(-1)) { + throw new ParseError("\\verb assertion failed --\n please report what input caused this bug"); + } + + arg = arg.slice(1, -1); // remove first and last char + + return { + type: "verb", + mode: "text", + body: arg, + star + }; + } // At this point, we should have a symbol, possibly with accents. + // First expand any accented base symbol according to unicodeSymbols. + + + if (unicodeSymbols.hasOwnProperty(text[0]) && !symbols[this.mode][text[0]]) { + // This behavior is not strict (XeTeX-compatible) in math mode. + if (this.settings.strict && this.mode === "math") { + this.settings.reportNonstrict("unicodeTextInMathMode", "Accented Unicode text character \"" + text[0] + "\" used in " + "math mode", nucleus); + } + + text = unicodeSymbols[text[0]] + text.slice(1); + } // Strip off any combining characters + + + var match = combiningDiacriticalMarksEndRegex.exec(text); + + if (match) { + text = text.substring(0, match.index); + + if (text === 'i') { + text = '\u0131'; // dotless i, in math and text mode + } else if (text === 'j') { + text = '\u0237'; // dotless j, in math and text mode + } + } // Recognize base symbol + + + var symbol; + + if (symbols[this.mode][text]) { + if (this.settings.strict && this.mode === 'math' && extraLatin.indexOf(text) >= 0) { + this.settings.reportNonstrict("unicodeTextInMathMode", "Latin-1/Unicode text character \"" + text[0] + "\" used in " + "math mode", nucleus); + } + + var group = symbols[this.mode][text].group; + var loc = SourceLocation.range(nucleus); + var s; + + if (ATOMS.hasOwnProperty(group)) { + // $FlowFixMe + var family = group; + s = { + type: "atom", + mode: this.mode, + family, + loc, + text + }; + } else { + // $FlowFixMe + s = { + type: group, + mode: this.mode, + loc, + text + }; + } // $FlowFixMe + + + symbol = s; + } else if (text.charCodeAt(0) >= 0x80) { + // no symbol for e.g. ^ + if (this.settings.strict) { + if (!supportedCodepoint(text.charCodeAt(0))) { + this.settings.reportNonstrict("unknownSymbol", "Unrecognized Unicode character \"" + text[0] + "\"" + (" (" + text.charCodeAt(0) + ")"), nucleus); + } else if (this.mode === "math") { + this.settings.reportNonstrict("unicodeTextInMathMode", "Unicode text character \"" + text[0] + "\" used in math mode", nucleus); + } + } // All nonmathematical Unicode characters are rendered as if they + // are in text mode (wrapped in \text) because that's what it + // takes to render them in LaTeX. Setting `mode: this.mode` is + // another natural choice (the user requested math mode), but + // this makes it more difficult for getCharacterMetrics() to + // distinguish Unicode characters without metrics and those for + // which we want to simulate the letter M. + + + symbol = { + type: "textord", + mode: "text", + loc: SourceLocation.range(nucleus), + text + }; + } else { + return null; // EOF, ^, _, {, }, etc. + } + + this.consume(); // Transform combining characters into accents + + if (match) { + for (var i = 0; i < match[0].length; i++) { + var accent = match[0][i]; + + if (!unicodeAccents[accent]) { + throw new ParseError("Unknown accent ' " + accent + "'", nucleus); + } + + var command = unicodeAccents[accent][this.mode] || unicodeAccents[accent].text; + + if (!command) { + throw new ParseError("Accent " + accent + " unsupported in " + this.mode + " mode", nucleus); + } + + symbol = { + type: "accent", + mode: this.mode, + loc: SourceLocation.range(nucleus), + label: command, + isStretchy: false, + isShifty: true, + // $FlowFixMe + base: symbol + }; + } + } // $FlowFixMe + + + return symbol; + } + +} +Parser.endOfExpression = ["}", "\\endgroup", "\\end", "\\right", "&"]; + +/** + * Provides a single function for parsing an expression using a Parser + * TODO(emily): Remove this + */ + +/** + * Parses an expression using a Parser, then returns the parsed result. + */ +var parseTree = function parseTree(toParse, settings) { + if (!(typeof toParse === 'string' || toParse instanceof String)) { + throw new TypeError('KaTeX can only parse string typed expression'); + } + + var parser = new Parser(toParse, settings); // Blank out any \df@tag to avoid spurious "Duplicate \tag" errors + + delete parser.gullet.macros.current["\\df@tag"]; + var tree = parser.parse(); // Prevent a color definition from persisting between calls to katex.render(). + + delete parser.gullet.macros.current["\\current@color"]; + delete parser.gullet.macros.current["\\color"]; // If the input used \tag, it will set the \df@tag macro to the tag. + // In this case, we separately parse the tag and wrap the tree. + + if (parser.gullet.macros.get("\\df@tag")) { + if (!settings.displayMode) { + throw new ParseError("\\tag works only in display equations"); + } + + tree = [{ + type: "tag", + mode: "text", + body: tree, + tag: parser.subparse([new Token("\\df@tag")]) + }]; + } + + return tree; +}; + +/* eslint no-console:0 */ + +/** + * Parse and build an expression, and place that expression in the DOM node + * given. + */ +var render = function render(expression, baseNode, options) { + baseNode.textContent = ""; + var node = renderToDomTree(expression, options).toNode(); + baseNode.appendChild(node); +}; // KaTeX's styles don't work properly in quirks mode. Print out an error, and +// disable rendering. + + +if (typeof document !== "undefined") { + if (document.compatMode !== "CSS1Compat") { + typeof console !== "undefined" && console.warn("Warning: KaTeX doesn't work in quirks mode. Make sure your " + "website has a suitable doctype."); + + render = function render() { + throw new ParseError("KaTeX doesn't work in quirks mode."); + }; + } +} +/** + * Parse and build an expression, and return the markup for that. + */ + + +var renderToString = function renderToString(expression, options) { + var markup = renderToDomTree(expression, options).toMarkup(); + return markup; +}; +/** + * Parse an expression and return the parse tree. + */ + + +var generateParseTree = function generateParseTree(expression, options) { + var settings = new Settings(options); + return parseTree(expression, settings); +}; +/** + * If the given error is a KaTeX ParseError and options.throwOnError is false, + * renders the invalid LaTeX as a span with hover title giving the KaTeX + * error message. Otherwise, simply throws the error. + */ + + +var renderError = function renderError(error, expression, options) { + if (options.throwOnError || !(error instanceof ParseError)) { + throw error; + } + + var node = buildCommon.makeSpan(["katex-error"], [new SymbolNode(expression)]); + node.setAttribute("title", error.toString()); + node.setAttribute("style", "color:" + options.errorColor); + return node; +}; +/** + * Generates and returns the katex build tree. This is used for advanced + * use cases (like rendering to custom output). + */ + + +var renderToDomTree = function renderToDomTree(expression, options) { + var settings = new Settings(options); + + try { + var tree = parseTree(expression, settings); + return buildTree(tree, expression, settings); + } catch (error) { + return renderError(error, expression, settings); + } +}; +/** + * Generates and returns the katex build tree, with just HTML (no MathML). + * This is used for advanced use cases (like rendering to custom output). + */ + + +var renderToHTMLTree = function renderToHTMLTree(expression, options) { + var settings = new Settings(options); + + try { + var tree = parseTree(expression, settings); + return buildHTMLTree(tree, expression, settings); + } catch (error) { + return renderError(error, expression, settings); + } +}; + +var katex = { + /** + * Current KaTeX version + */ + version: "0.16.10", + + /** + * Renders the given LaTeX into an HTML+MathML combination, and adds + * it as a child to the specified DOM node. + */ + render, + + /** + * Renders the given LaTeX into an HTML+MathML combination string, + * for sending to the client. + */ + renderToString, + + /** + * KaTeX error, usually during parsing. + */ + ParseError, + + /** + * The shema of Settings + */ + SETTINGS_SCHEMA, + + /** + * Parses the given LaTeX into KaTeX's internal parse tree structure, + * without rendering to HTML or MathML. + * + * NOTE: This method is not currently recommended for public use. + * The internal tree representation is unstable and is very likely + * to change. Use at your own risk. + */ + __parse: generateParseTree, + + /** + * Renders the given LaTeX into an HTML+MathML internal DOM tree + * representation, without flattening that representation to a string. + * + * NOTE: This method is not currently recommended for public use. + * The internal tree representation is unstable and is very likely + * to change. Use at your own risk. + */ + __renderToDomTree: renderToDomTree, + + /** + * Renders the given LaTeX into an HTML internal DOM tree representation, + * without MathML and without flattening that representation to a string. + * + * NOTE: This method is not currently recommended for public use. + * The internal tree representation is unstable and is very likely + * to change. Use at your own risk. + */ + __renderToHTMLTree: renderToHTMLTree, + + /** + * extends internal font metrics object with a new object + * each key in the new object represents a font name + */ + __setFontMetrics: setFontMetrics, + + /** + * adds a new symbol to builtin symbols table + */ + __defineSymbol: defineSymbol, + + /** + * adds a new function to builtin function list, + * which directly produce parse tree elements + * and have their own html/mathml builders + */ + __defineFunction: defineFunction, + + /** + * adds a new macro to builtin macro list + */ + __defineMacro: defineMacro, + + /** + * Expose the dom tree node types, which can be useful for type checking nodes. + * + * NOTE: This method is not currently recommended for public use. + * The internal tree representation is unstable and is very likely + * to change. Use at your own risk. + */ + __domTree: { + Span, + Anchor, + SymbolNode, + SvgNode, + PathNode, + LineNode + } +}; + + + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/1650.824f2782.js b/assets/js/1650.824f2782.js new file mode 100644 index 00000000..d620e682 --- /dev/null +++ b/assets/js/1650.824f2782.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkbeacon_docs=self.webpackChunkbeacon_docs||[]).push([[1650],{71650:(t,e,a)=>{a.d(e,{diagram:()=>b});var r=a(82207),i=a(57323),n=a(64994),d=a(20007),o=a(62334),s=a(697),l=0,p=(0,n.K2)((function(t,e,a,r,o){const s=(0,n.K2)((function(t){switch(t){case o.db.relationType.AGGREGATION:return"aggregation";case o.db.relationType.EXTENSION:return"extension";case o.db.relationType.COMPOSITION:return"composition";case o.db.relationType.DEPENDENCY:return"dependency";case o.db.relationType.LOLLIPOP:return"lollipop"}}),"getRelationType");e.points=e.points.filter((t=>!Number.isNaN(t.y)));const p=e.points,c=(0,d.n8j)().x((function(t){return t.x})).y((function(t){return t.y})).curve(d.qrM),g=t.append("path").attr("d",c(p)).attr("id","edge"+l).attr("class","relation");let h,f,x="";r.arrowMarkerAbsolute&&(x=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,x=x.replace(/\(/g,"\\("),x=x.replace(/\)/g,"\\)")),1==a.relation.lineType&&g.attr("class","relation dashed-line"),10==a.relation.lineType&&g.attr("class","relation dotted-line"),"none"!==a.relation.type1&&g.attr("marker-start","url("+x+"#"+s(a.relation.type1)+"Start)"),"none"!==a.relation.type2&&g.attr("marker-end","url("+x+"#"+s(a.relation.type2)+"End)");const y=e.points.length;let u,m,w,b,k=i._K.calcLabelPosition(e.points);if(h=k.x,f=k.y,y%2!=0&&y>1){let t=i._K.calcCardinalityPosition("none"!==a.relation.type1,e.points,e.points[0]),r=i._K.calcCardinalityPosition("none"!==a.relation.type2,e.points,e.points[y-1]);n.Rm.debug("cardinality_1_point "+JSON.stringify(t)),n.Rm.debug("cardinality_2_point "+JSON.stringify(r)),u=t.x,m=t.y,w=r.x,b=r.y}if(void 0!==a.title){const e=t.append("g").attr("class","classLabel"),i=e.append("text").attr("class","label").attr("x",h).attr("y",f).attr("fill","red").attr("text-anchor","middle").text(a.title);window.label=i;const n=i.node().getBBox();e.insert("rect",":first-child").attr("class","box").attr("x",n.x-r.padding/2).attr("y",n.y-r.padding/2).attr("width",n.width+r.padding).attr("height",n.height+r.padding)}if(n.Rm.info("Rendering relation "+JSON.stringify(a)),void 0!==a.relationTitle1&&"none"!==a.relationTitle1){t.append("g").attr("class","cardinality").append("text").attr("class","type1").attr("x",u).attr("y",m).attr("fill","black").attr("font-size","6").text(a.relationTitle1)}if(void 0!==a.relationTitle2&&"none"!==a.relationTitle2){t.append("g").attr("class","cardinality").append("text").attr("class","type2").attr("x",w).attr("y",b).attr("fill","black").attr("font-size","6").text(a.relationTitle2)}l++}),"drawEdge"),c=(0,n.K2)((function(t,e,a,r){n.Rm.debug("Rendering class ",e,a);const i=e.id,d={id:i,label:e.id,width:0,height:0},o=t.append("g").attr("id",r.db.lookUpDomId(i)).attr("class","classGroup");let s;s=e.link?o.append("svg:a").attr("xlink:href",e.link).attr("target",e.linkTarget).append("text").attr("y",a.textHeight+a.padding).attr("x",0):o.append("text").attr("y",a.textHeight+a.padding).attr("x",0);let l=!0;e.annotations.forEach((function(t){const e=s.append("tspan").text("\xab"+t+"\xbb");l||e.attr("dy",a.textHeight),l=!1}));let p=g(e);const c=s.append("tspan").text(p).attr("class","title");l||c.attr("dy",a.textHeight);const h=s.node().getBBox().height;let x,y,u;if(e.members.length>0){x=o.append("line").attr("x1",0).attr("y1",a.padding+h+a.dividerMargin/2).attr("y2",a.padding+h+a.dividerMargin/2);const t=o.append("text").attr("x",a.padding).attr("y",h+a.dividerMargin+a.textHeight).attr("fill","white").attr("class","classText");l=!0,e.members.forEach((function(e){f(t,e,l,a),l=!1})),y=t.node().getBBox()}if(e.methods.length>0){u=o.append("line").attr("x1",0).attr("y1",a.padding+h+a.dividerMargin+y.height).attr("y2",a.padding+h+a.dividerMargin+y.height);const t=o.append("text").attr("x",a.padding).attr("y",h+2*a.dividerMargin+y.height+a.textHeight).attr("fill","white").attr("class","classText");l=!0,e.methods.forEach((function(e){f(t,e,l,a),l=!1}))}const m=o.node().getBBox();var w=" ";e.cssClasses.length>0&&(w+=e.cssClasses.join(" "));const b=o.insert("rect",":first-child").attr("x",0).attr("y",0).attr("width",m.width+2*a.padding).attr("height",m.height+a.padding+.5*a.dividerMargin).attr("class",w).node().getBBox().width;return s.node().childNodes.forEach((function(t){t.setAttribute("x",(b-t.getBBox().width)/2)})),e.tooltip&&s.insert("title").text(e.tooltip),x&&x.attr("x2",b),u&&u.attr("x2",b),d.width=b,d.height=m.height+a.padding+.5*a.dividerMargin,d}),"drawClass"),g=(0,n.K2)((function(t){let e=t.id;return t.type&&(e+="<"+(0,n.QO)(t.type)+">"),e}),"getClassTitleString"),h=(0,n.K2)((function(t,e,a,r){n.Rm.debug("Rendering note ",e,a);const i=e.id,d={id:i,text:e.text,width:0,height:0},o=t.append("g").attr("id",i).attr("class","classGroup");let s=o.append("text").attr("y",a.textHeight+a.padding).attr("x",0);const l=JSON.parse(`"${e.text}"`).split("\n");l.forEach((function(t){n.Rm.debug(`Adding line: ${t}`),s.append("tspan").text(t).attr("class","title").attr("dy",a.textHeight)}));const p=o.node().getBBox(),c=o.insert("rect",":first-child").attr("x",0).attr("y",0).attr("width",p.width+2*a.padding).attr("height",p.height+l.length*a.textHeight+a.padding+.5*a.dividerMargin).node().getBBox().width;return s.node().childNodes.forEach((function(t){t.setAttribute("x",(c-t.getBBox().width)/2)})),d.width=c,d.height=p.height+l.length*a.textHeight+a.padding+.5*a.dividerMargin,d}),"drawNote"),f=(0,n.K2)((function(t,e,a,r){const{displayText:i,cssStyle:n}=e.getDisplayDetails(),d=t.append("tspan").attr("x",r.padding).text(i);""!==n&&d.attr("style",e.cssStyle),a||d.attr("dy",r.textHeight)}),"addTspan"),x={getClassTitleString:g,drawClass:c,drawEdge:p,drawNote:h},y={},u=(0,n.K2)((function(t){const e=Object.entries(y).find((e=>e[1].label===t));if(e)return e[0]}),"getGraphId"),m=(0,n.K2)((function(t){t.append("defs").append("marker").attr("id","extensionStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),t.append("defs").append("marker").attr("id","extensionEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z"),t.append("defs").append("marker").attr("id","compositionStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id","compositionEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id","aggregationStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id","aggregationEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id","dependencyStart").attr("class","extension").attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id","dependencyEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")}),"insertMarkers"),w={draw:(0,n.K2)((function(t,e,a,r){const i=(0,n.D7)().class;y={},n.Rm.info("Rendering diagram "+t);const l=(0,n.D7)().securityLevel;let p;"sandbox"===l&&(p=(0,d.Ltv)("#i"+e));const c="sandbox"===l?(0,d.Ltv)(p.nodes()[0].contentDocument.body):(0,d.Ltv)("body"),g=c.select(`[id='${e}']`);m(g);const h=new s.T({multigraph:!0});h.setGraph({isMultiGraph:!0}),h.setDefaultEdgeLabel((function(){return{}}));const f=r.db.getClasses(),w=[...f.keys()];for(const d of w){const t=f.get(d),e=x.drawClass(g,t,i,r);y[e.id]=e,h.setNode(e.id,e),n.Rm.info("Org height: "+e.height)}r.db.getRelations().forEach((function(t){n.Rm.info("tjoho"+u(t.id1)+u(t.id2)+JSON.stringify(t)),h.setEdge(u(t.id1),u(t.id2),{relation:t},t.title||"DEFAULT")}));r.db.getNotes().forEach((function(t){n.Rm.debug(`Adding note: ${JSON.stringify(t)}`);const e=x.drawNote(g,t,i,r);y[e.id]=e,h.setNode(e.id,e),t.class&&f.has(t.class)&&h.setEdge(t.id,u(t.class),{relation:{id1:t.id,id2:t.class,relation:{type1:"none",type2:"none",lineType:10}}},"DEFAULT")})),(0,o.Zp)(h),h.nodes().forEach((function(t){void 0!==t&&void 0!==h.node(t)&&(n.Rm.debug("Node "+t+": "+JSON.stringify(h.node(t))),c.select("#"+(r.db.lookUpDomId(t)||t)).attr("transform","translate("+(h.node(t).x-h.node(t).width/2)+","+(h.node(t).y-h.node(t).height/2)+" )"))})),h.edges().forEach((function(t){void 0!==t&&void 0!==h.edge(t)&&(n.Rm.debug("Edge "+t.v+" -> "+t.w+": "+JSON.stringify(h.edge(t))),x.drawEdge(g,h.edge(t),h.edge(t).relation,i,r))}));const b=g.node().getBBox(),k=b.width+40,L=b.height+40;(0,n.a$)(g,L,k,i.useMaxWidth);const E=`${b.x-20} ${b.y-20} ${k} ${L}`;n.Rm.debug(`viewBox ${E}`),g.attr("viewBox",E)}),"draw")},b={parser:r._$,db:r.z2,renderer:w,styles:r.tM,init:(0,n.K2)((t=>{t.class||(t.class={}),t.class.arrowMarkerAbsolute=t.arrowMarkerAbsolute,r.z2.clear()}),"init")}}}]); \ No newline at end of file diff --git a/assets/js/1675.a04b27f1.js b/assets/js/1675.a04b27f1.js new file mode 100644 index 00000000..7072f770 --- /dev/null +++ b/assets/js/1675.a04b27f1.js @@ -0,0 +1,2 @@ +/*! For license information please see 1675.a04b27f1.js.LICENSE.txt */ +(self.webpackChunkbeacon_docs=self.webpackChunkbeacon_docs||[]).push([[1675],{69119:(t,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.BLANK_URL=e.relativeFirstCharacters=e.whitespaceEscapeCharsRegex=e.urlSchemeRegex=e.ctrlCharactersRegex=e.htmlCtrlEntityRegex=e.htmlEntitiesRegex=e.invalidProtocolRegex=void 0,e.invalidProtocolRegex=/^([^\w]*)(javascript|data|vbscript)/im,e.htmlEntitiesRegex=/&#(\w+)(^\w|;)?/g,e.htmlCtrlEntityRegex=/&(newline|tab);/gi,e.ctrlCharactersRegex=/[\u0000-\u001F\u007F-\u009F\u2000-\u200D\uFEFF]/gim,e.urlSchemeRegex=/^.+(:|:)/gim,e.whitespaceEscapeCharsRegex=/(\\|%5[cC])((%(6[eE]|72|74))|[nrt])/g,e.relativeFirstCharacters=[".","/"],e.BLANK_URL="about:blank"},16750:(t,e,r)=>{"use strict";e.J=void 0;var i=r(69119);function n(t){try{return decodeURIComponent(t)}catch(e){return t}}e.J=function(t){if(!t)return i.BLANK_URL;var e,r,o=n(t.trim());do{e=(o=n(o=(r=o,r.replace(i.ctrlCharactersRegex,"").replace(i.htmlEntitiesRegex,(function(t,e){return String.fromCharCode(e)}))).replace(i.htmlCtrlEntityRegex,"").replace(i.ctrlCharactersRegex,"").replace(i.whitespaceEscapeCharsRegex,"").trim())).match(i.ctrlCharactersRegex)||o.match(i.htmlEntitiesRegex)||o.match(i.htmlCtrlEntityRegex)||o.match(i.whitespaceEscapeCharsRegex)}while(e&&e.length>0);var s=o;if(!s)return i.BLANK_URL;if(function(t){return i.relativeFirstCharacters.indexOf(t[0])>-1}(s))return s;var a=s.trimStart(),l=a.match(i.urlSchemeRegex);if(!l)return s;var c=l[0].toLowerCase().trim();if(i.invalidProtocolRegex.test(c))return i.BLANK_URL;var h=a.replace(/\\/g,"/");if("mailto:"===c||c.includes("://"))return h;if("http:"===c||"https:"===c){if(!function(t){return URL.canParse(t)}(h))return i.BLANK_URL;var u=new URL(h);return u.protocol=u.protocol.toLowerCase(),u.hostname=u.hostname.toLowerCase(),u.toString()}return h}},74353:function(t){t.exports=function(){"use strict";var t=1e3,e=6e4,r=36e5,i="millisecond",n="second",o="minute",s="hour",a="day",l="week",c="month",h="quarter",u="year",d="date",p="Invalid Date",f=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,g=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,y={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(t){var e=["th","st","nd","rd"],r=t%100;return"["+t+(e[(r-20)%10]||e[r]||e[0])+"]"}},m=function(t,e,r){var i=String(t);return!i||i.length>=e?t:""+Array(e+1-i.length).join(r)+t},x={s:m,z:function(t){var e=-t.utcOffset(),r=Math.abs(e),i=Math.floor(r/60),n=r%60;return(e<=0?"+":"-")+m(i,2,"0")+":"+m(n,2,"0")},m:function t(e,r){if(e.date()1)return t(s[0])}else{var a=e.name;C[a]=e,n=a}return!i&&n&&(b=n),n||!i&&b},v=function(t,e){if(_(t))return t.clone();var r="object"==typeof e?e:{};return r.date=t,r.args=arguments,new S(r)},T=x;T.l=w,T.i=_,T.w=function(t,e){return v(t,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var S=function(){function y(t){this.$L=w(t.locale,null,!0),this.parse(t),this.$x=this.$x||t.x||{},this[k]=!0}var m=y.prototype;return m.parse=function(t){this.$d=function(t){var e=t.date,r=t.utc;if(null===e)return new Date(NaN);if(T.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var i=e.match(f);if(i){var n=i[2]-1||0,o=(i[7]||"0").substring(0,3);return r?new Date(Date.UTC(i[1],n,i[3]||1,i[4]||0,i[5]||0,i[6]||0,o)):new Date(i[1],n,i[3]||1,i[4]||0,i[5]||0,i[6]||0,o)}}return new Date(e)}(t),this.init()},m.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},m.$utils=function(){return T},m.isValid=function(){return!(this.$d.toString()===p)},m.isSame=function(t,e){var r=v(t);return this.startOf(e)<=r&&r<=this.endOf(e)},m.isAfter=function(t,e){return v(t)1?r-1:0),n=1;n2&&void 0!==arguments[2]?arguments[2]:f;e&&e(t,null);let o=i.length;for(;o--;){let e=i[o];if("string"==typeof e){const t=n(e);t!==e&&(r(i)||(i[o]=t),e=t)}t[e]=!0}return t}function S(t){for(let e=0;e/gm),K=a(/\${[\w\W]*}/gm),j=a(/^data-[\-\w.\u00B7-\uFFFF]/),W=a(/^aria-[\-\w]+$/),U=a(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),H=a(/^(?:\w+script|data):/i),Y=a(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),V=a(/^html$/i),G=a(/^[a-z][.\w]*(-[.\w]+)+$/i);var Z=Object.freeze({__proto__:null,MUSTACHE_EXPR:z,ERB_EXPR:P,TMPLIT_EXPR:K,DATA_ATTR:j,ARIA_ATTR:W,IS_ALLOWED_URI:U,IS_SCRIPT_OR_DATA:H,ATTR_WHITESPACE:Y,DOCTYPE_NAME:V,CUSTOM_ELEMENT:G});const X=function(){return"undefined"==typeof window?null:window},Q=function(t,e){if("object"!=typeof t||"function"!=typeof t.createPolicy)return null;let r=null;const n="data-tt-policy-suffix";e&&e.hasAttribute(n)&&(r=e.getAttribute(n));const o="dompurify"+(r?"#"+r:"");try{return t.createPolicy(o,{createHTML:t=>t,createScriptURL:t=>t})}catch(s){return i.warn("TrustedTypes policy "+o+" could not be created."),null}};function J(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:X();const r=t=>J(t);if(r.version="3.1.2",r.removed=[],!e||!e.document||9!==e.document.nodeType)return r.isSupported=!1,r;let{document:i}=e;const n=i,o=n.currentScript,{DocumentFragment:a,HTMLTemplateElement:c,Node:h,Element:w,NodeFilter:v,NamedNodeMap:S=e.NamedNodeMap||e.MozNamedAttrMap,HTMLFormElement:z,DOMParser:P,trustedTypes:K}=e,j=w.prototype,W=M(j,"cloneNode"),H=M(j,"nextSibling"),Y=M(j,"childNodes"),G=M(j,"parentNode");if("function"==typeof c){const t=i.createElement("template");t.content&&t.content.ownerDocument&&(i=t.content.ownerDocument)}let tt,et="";const{implementation:rt,createNodeIterator:it,createDocumentFragment:nt,getElementsByTagName:ot}=i,{importNode:st}=n;let at={};r.isSupported="function"==typeof t&&"function"==typeof G&&rt&&void 0!==rt.createHTMLDocument;const{MUSTACHE_EXPR:lt,ERB_EXPR:ct,TMPLIT_EXPR:ht,DATA_ATTR:ut,ARIA_ATTR:dt,IS_SCRIPT_OR_DATA:pt,ATTR_WHITESPACE:ft,CUSTOM_ELEMENT:gt}=Z;let{IS_ALLOWED_URI:yt}=Z,mt=null;const xt=T({},[...B,...L,...F,...E,...D]);let bt=null;const Ct=T({},[...I,...R,...N,...q]);let kt=Object.seal(l(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),_t=null,wt=null,vt=!0,Tt=!0,St=!1,At=!0,Mt=!1,Bt=!0,Lt=!1,Ft=!1,$t=!1,Et=!1,Ot=!1,Dt=!1,It=!0,Rt=!1;const Nt="user-content-";let qt=!0,zt=!1,Pt={},Kt=null;const jt=T({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]);let Wt=null;const Ut=T({},["audio","video","img","source","image","track"]);let Ht=null;const Yt=T({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Vt="http://www.w3.org/1998/Math/MathML",Gt="http://www.w3.org/2000/svg",Zt="http://www.w3.org/1999/xhtml";let Xt=Zt,Qt=!1,Jt=null;const te=T({},[Vt,Gt,Zt],g);let ee=null;const re=["application/xhtml+xml","text/html"],ie="text/html";let ne=null,oe=null;const se=255,ae=i.createElement("form"),le=function(t){return t instanceof RegExp||t instanceof Function},ce=function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(!oe||oe!==t){if(t&&"object"==typeof t||(t={}),t=A(t),ee=-1===re.indexOf(t.PARSER_MEDIA_TYPE)?ie:t.PARSER_MEDIA_TYPE,ne="application/xhtml+xml"===ee?g:f,mt=C(t,"ALLOWED_TAGS")?T({},t.ALLOWED_TAGS,ne):xt,bt=C(t,"ALLOWED_ATTR")?T({},t.ALLOWED_ATTR,ne):Ct,Jt=C(t,"ALLOWED_NAMESPACES")?T({},t.ALLOWED_NAMESPACES,g):te,Ht=C(t,"ADD_URI_SAFE_ATTR")?T(A(Yt),t.ADD_URI_SAFE_ATTR,ne):Yt,Wt=C(t,"ADD_DATA_URI_TAGS")?T(A(Ut),t.ADD_DATA_URI_TAGS,ne):Ut,Kt=C(t,"FORBID_CONTENTS")?T({},t.FORBID_CONTENTS,ne):jt,_t=C(t,"FORBID_TAGS")?T({},t.FORBID_TAGS,ne):{},wt=C(t,"FORBID_ATTR")?T({},t.FORBID_ATTR,ne):{},Pt=!!C(t,"USE_PROFILES")&&t.USE_PROFILES,vt=!1!==t.ALLOW_ARIA_ATTR,Tt=!1!==t.ALLOW_DATA_ATTR,St=t.ALLOW_UNKNOWN_PROTOCOLS||!1,At=!1!==t.ALLOW_SELF_CLOSE_IN_ATTR,Mt=t.SAFE_FOR_TEMPLATES||!1,Bt=!1!==t.SAFE_FOR_XML,Lt=t.WHOLE_DOCUMENT||!1,Et=t.RETURN_DOM||!1,Ot=t.RETURN_DOM_FRAGMENT||!1,Dt=t.RETURN_TRUSTED_TYPE||!1,$t=t.FORCE_BODY||!1,It=!1!==t.SANITIZE_DOM,Rt=t.SANITIZE_NAMED_PROPS||!1,qt=!1!==t.KEEP_CONTENT,zt=t.IN_PLACE||!1,yt=t.ALLOWED_URI_REGEXP||U,Xt=t.NAMESPACE||Zt,kt=t.CUSTOM_ELEMENT_HANDLING||{},t.CUSTOM_ELEMENT_HANDLING&&le(t.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(kt.tagNameCheck=t.CUSTOM_ELEMENT_HANDLING.tagNameCheck),t.CUSTOM_ELEMENT_HANDLING&&le(t.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(kt.attributeNameCheck=t.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),t.CUSTOM_ELEMENT_HANDLING&&"boolean"==typeof t.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements&&(kt.allowCustomizedBuiltInElements=t.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),Mt&&(Tt=!1),Ot&&(Et=!0),Pt&&(mt=T({},D),bt=[],!0===Pt.html&&(T(mt,B),T(bt,I)),!0===Pt.svg&&(T(mt,L),T(bt,R),T(bt,q)),!0===Pt.svgFilters&&(T(mt,F),T(bt,R),T(bt,q)),!0===Pt.mathMl&&(T(mt,E),T(bt,N),T(bt,q))),t.ADD_TAGS&&(mt===xt&&(mt=A(mt)),T(mt,t.ADD_TAGS,ne)),t.ADD_ATTR&&(bt===Ct&&(bt=A(bt)),T(bt,t.ADD_ATTR,ne)),t.ADD_URI_SAFE_ATTR&&T(Ht,t.ADD_URI_SAFE_ATTR,ne),t.FORBID_CONTENTS&&(Kt===jt&&(Kt=A(Kt)),T(Kt,t.FORBID_CONTENTS,ne)),qt&&(mt["#text"]=!0),Lt&&T(mt,["html","head","body"]),mt.table&&(T(mt,["tbody"]),delete _t.tbody),t.TRUSTED_TYPES_POLICY){if("function"!=typeof t.TRUSTED_TYPES_POLICY.createHTML)throw _('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if("function"!=typeof t.TRUSTED_TYPES_POLICY.createScriptURL)throw _('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');tt=t.TRUSTED_TYPES_POLICY,et=tt.createHTML("")}else void 0===tt&&(tt=Q(K,o)),null!==tt&&"string"==typeof et&&(et=tt.createHTML(""));s&&s(t),oe=t}},he=T({},["mi","mo","mn","ms","mtext"]),ue=T({},["foreignobject","annotation-xml"]),de=T({},["title","style","font","a","script"]),pe=T({},[...L,...F,...$]),fe=T({},[...E,...O]),ge=function(t){let e=G(t);e&&e.tagName||(e={namespaceURI:Xt,tagName:"template"});const r=f(t.tagName),i=f(e.tagName);return!!Jt[t.namespaceURI]&&(t.namespaceURI===Gt?e.namespaceURI===Zt?"svg"===r:e.namespaceURI===Vt?"svg"===r&&("annotation-xml"===i||he[i]):Boolean(pe[r]):t.namespaceURI===Vt?e.namespaceURI===Zt?"math"===r:e.namespaceURI===Gt?"math"===r&&ue[i]:Boolean(fe[r]):t.namespaceURI===Zt?!(e.namespaceURI===Gt&&!ue[i])&&!(e.namespaceURI===Vt&&!he[i])&&!fe[r]&&(de[r]||!pe[r]):!("application/xhtml+xml"!==ee||!Jt[t.namespaceURI]))},ye=function(t){p(r.removed,{element:t});try{t.parentNode.removeChild(t)}catch(e){t.remove()}},me=function(t,e){try{p(r.removed,{attribute:e.getAttributeNode(t),from:e})}catch(i){p(r.removed,{attribute:null,from:e})}if(e.removeAttribute(t),"is"===t&&!bt[t])if(Et||Ot)try{ye(e)}catch(i){}else try{e.setAttribute(t,"")}catch(i){}},xe=function(t){let e=null,r=null;if($t)t=""+t;else{const e=y(t,/^[\r\n\t ]+/);r=e&&e[0]}"application/xhtml+xml"===ee&&Xt===Zt&&(t=''+t+"");const n=tt?tt.createHTML(t):t;if(Xt===Zt)try{e=(new P).parseFromString(n,ee)}catch(s){}if(!e||!e.documentElement){e=rt.createDocument(Xt,"template",null);try{e.documentElement.innerHTML=Qt?et:n}catch(s){}}const o=e.body||e.documentElement;return t&&r&&o.insertBefore(i.createTextNode(r),o.childNodes[0]||null),Xt===Zt?ot.call(e,Lt?"html":"body")[0]:Lt?e.documentElement:o},be=function(t){return it.call(t.ownerDocument||t,t,v.SHOW_ELEMENT|v.SHOW_COMMENT|v.SHOW_TEXT|v.SHOW_PROCESSING_INSTRUCTION|v.SHOW_CDATA_SECTION,null)},Ce=function(t){return t instanceof z&&(void 0!==t.__depth&&"number"!=typeof t.__depth||void 0!==t.__removalCount&&"number"!=typeof t.__removalCount||"string"!=typeof t.nodeName||"string"!=typeof t.textContent||"function"!=typeof t.removeChild||!(t.attributes instanceof S)||"function"!=typeof t.removeAttribute||"function"!=typeof t.setAttribute||"string"!=typeof t.namespaceURI||"function"!=typeof t.insertBefore||"function"!=typeof t.hasChildNodes)},ke=function(t){return"function"==typeof h&&t instanceof h},_e=function(t,e,i){at[t]&&u(at[t],(t=>{t.call(r,e,i,oe)}))},we=function(t){let e=null;if(_e("beforeSanitizeElements",t,null),Ce(t))return ye(t),!0;const i=ne(t.nodeName);if(_e("uponSanitizeElement",t,{tagName:i,allowedTags:mt}),t.hasChildNodes()&&!ke(t.firstElementChild)&&k(/<[/\w]/g,t.innerHTML)&&k(/<[/\w]/g,t.textContent))return ye(t),!0;if(7===t.nodeType)return ye(t),!0;if(Bt&&8===t.nodeType&&k(/<[/\w]/g,t.data))return ye(t),!0;if(!mt[i]||_t[i]){if(!_t[i]&&Te(i)){if(kt.tagNameCheck instanceof RegExp&&k(kt.tagNameCheck,i))return!1;if(kt.tagNameCheck instanceof Function&&kt.tagNameCheck(i))return!1}if(qt&&!Kt[i]){const e=G(t)||t.parentNode,r=Y(t)||t.childNodes;if(r&&e)for(let i=r.length-1;i>=0;--i){const n=W(r[i],!0);n.__removalCount=(t.__removalCount||0)+1,e.insertBefore(n,H(t))}}return ye(t),!0}return t instanceof w&&!ge(t)?(ye(t),!0):"noscript"!==i&&"noembed"!==i&&"noframes"!==i||!k(/<\/no(script|embed|frames)/i,t.innerHTML)?(Mt&&3===t.nodeType&&(e=t.textContent,u([lt,ct,ht],(t=>{e=m(e,t," ")})),t.textContent!==e&&(p(r.removed,{element:t.cloneNode()}),t.textContent=e)),_e("afterSanitizeElements",t,null),!1):(ye(t),!0)},ve=function(t,e,r){if(It&&("id"===e||"name"===e)&&(r in i||r in ae))return!1;if(Tt&&!wt[e]&&k(ut,e));else if(vt&&k(dt,e));else if(!bt[e]||wt[e]){if(!(Te(t)&&(kt.tagNameCheck instanceof RegExp&&k(kt.tagNameCheck,t)||kt.tagNameCheck instanceof Function&&kt.tagNameCheck(t))&&(kt.attributeNameCheck instanceof RegExp&&k(kt.attributeNameCheck,e)||kt.attributeNameCheck instanceof Function&&kt.attributeNameCheck(e))||"is"===e&&kt.allowCustomizedBuiltInElements&&(kt.tagNameCheck instanceof RegExp&&k(kt.tagNameCheck,r)||kt.tagNameCheck instanceof Function&&kt.tagNameCheck(r))))return!1}else if(Ht[e]);else if(k(yt,m(r,ft,"")));else if("src"!==e&&"xlink:href"!==e&&"href"!==e||"script"===t||0!==x(r,"data:")||!Wt[t])if(St&&!k(pt,m(r,ft,"")));else if(r)return!1;return!0},Te=function(t){return"annotation-xml"!==t&&y(t,gt)},Se=function(t){_e("beforeSanitizeAttributes",t,null);const{attributes:e}=t;if(!e)return;const i={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:bt};let n=e.length;for(;n--;){const s=e[n],{name:a,namespaceURI:l,value:c}=s,h=ne(a);let p="value"===a?c:b(c);if(i.attrName=h,i.attrValue=p,i.keepAttr=!0,i.forceKeepAttr=void 0,_e("uponSanitizeAttribute",t,i),p=i.attrValue,i.forceKeepAttr)continue;if(me(a,t),!i.keepAttr)continue;if(!At&&k(/\/>/i,p)){me(a,t);continue}Mt&&u([lt,ct,ht],(t=>{p=m(p,t," ")}));const f=ne(t.nodeName);if(ve(f,h,p)){if(!Rt||"id"!==h&&"name"!==h||(me(a,t),p=Nt+p),tt&&"object"==typeof K&&"function"==typeof K.getAttributeType)if(l);else switch(K.getAttributeType(f,h)){case"TrustedHTML":p=tt.createHTML(p);break;case"TrustedScriptURL":p=tt.createScriptURL(p)}try{l?t.setAttributeNS(l,a,p):t.setAttribute(a,p),d(r.removed)}catch(o){}}}_e("afterSanitizeAttributes",t,null)},Ae=function t(e){let r=null;const i=be(e);for(_e("beforeSanitizeShadowDOM",e,null);r=i.nextNode();){if(_e("uponSanitizeShadowNode",r,null),we(r))continue;const e=G(r);1===r.nodeType&&(e&&e.__depth?r.__depth=(r.__removalCount||0)+e.__depth+1:r.__depth=1),r.__depth>=se&&ye(r),r.content instanceof a&&(r.content.__depth=r.__depth,t(r.content)),Se(r)}_e("afterSanitizeShadowDOM",e,null)};return r.sanitize=function(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=null,o=null,s=null,l=null;if(Qt=!t,Qt&&(t="\x3c!--\x3e"),"string"!=typeof t&&!ke(t)){if("function"!=typeof t.toString)throw _("toString is not a function");if("string"!=typeof(t=t.toString()))throw _("dirty is not a string, aborting")}if(!r.isSupported)return t;if(Ft||ce(e),r.removed=[],"string"==typeof t&&(zt=!1),zt){if(t.nodeName){const e=ne(t.nodeName);if(!mt[e]||_t[e])throw _("root node is forbidden and cannot be sanitized in-place")}}else if(t instanceof h)i=xe("\x3c!----\x3e"),o=i.ownerDocument.importNode(t,!0),1===o.nodeType&&"BODY"===o.nodeName||"HTML"===o.nodeName?i=o:i.appendChild(o);else{if(!Et&&!Mt&&!Lt&&-1===t.indexOf("<"))return tt&&Dt?tt.createHTML(t):t;if(i=xe(t),!i)return Et?null:Dt?et:""}i&&$t&&ye(i.firstChild);const c=be(zt?t:i);for(;s=c.nextNode();){if(we(s))continue;const t=G(s);1===s.nodeType&&(t&&t.__depth?s.__depth=(s.__removalCount||0)+t.__depth+1:s.__depth=1),s.__depth>=se&&ye(s),s.content instanceof a&&(s.content.__depth=s.__depth,Ae(s.content)),Se(s)}if(zt)return t;if(Et){if(Ot)for(l=nt.call(i.ownerDocument);i.firstChild;)l.appendChild(i.firstChild);else l=i;return(bt.shadowroot||bt.shadowrootmode)&&(l=st.call(n,l,!0)),l}let d=Lt?i.outerHTML:i.innerHTML;return Lt&&mt["!doctype"]&&i.ownerDocument&&i.ownerDocument.doctype&&i.ownerDocument.doctype.name&&k(V,i.ownerDocument.doctype.name)&&(d="\n"+d),Mt&&u([lt,ct,ht],(t=>{d=m(d,t," ")})),tt&&Dt?tt.createHTML(d):d},r.setConfig=function(){ce(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}),Ft=!0},r.clearConfig=function(){oe=null,Ft=!1},r.isValidAttribute=function(t,e,r){oe||ce({});const i=ne(t),n=ne(e);return ve(i,n,r)},r.addHook=function(t,e){"function"==typeof e&&(at[t]=at[t]||[],p(at[t],e))},r.removeHook=function(t){if(at[t])return d(at[t])},r.removeHooks=function(t){at[t]&&(at[t]=[])},r.removeAllHooks=function(){at={}},r}return J()}()},60513:(t,e,r)=>{"use strict";function i(t){for(var e=[],r=1;ri})},28453:(t,e,r)=>{"use strict";r.d(e,{R:()=>s,x:()=>a});var i=r(96540);const n={},o=i.createContext(n);function s(t){const e=i.useContext(o);return i.useMemo((function(){return"function"==typeof t?t(e):{...e,...t}}),[e,t])}function a(t){let e;return e=t.disableParentContext?"function"==typeof t.components?t.components(n):t.components||n:s(t.components),i.createElement(o.Provider,{value:e},t.children)}},20007:(t,e,r)=>{"use strict";function i(t,e){let r;if(void 0===e)for(const i of t)null!=i&&(r=i)&&(r=i);else{let i=-1;for(let n of t)null!=(n=e(n,++i,t))&&(r=n)&&(r=n)}return r}function n(t,e){let r;if(void 0===e)for(const i of t)null!=i&&(r>i||void 0===r&&i>=i)&&(r=i);else{let i=-1;for(let n of t)null!=(n=e(n,++i,t))&&(r>n||void 0===r&&n>=n)&&(r=n)}return r}function o(t){return t}r.d(e,{JLW:()=>oa,l78:()=>x,tlR:()=>m,qrM:()=>xa,Yu4:()=>Ca,IA3:()=>_a,Wi0:()=>va,PGM:()=>Ta,OEq:()=>Aa,y8u:()=>La,olC:()=>$a,IrU:()=>Oa,oDi:()=>Ra,Q7f:()=>qa,cVp:()=>Pa,lUB:()=>la,Lx9:()=>ja,nVG:()=>Xa,uxU:()=>Qa,Xf2:()=>el,GZz:()=>il,UPb:()=>ol,dyv:()=>nl,bEH:()=>ui,n8j:()=>ua,T9B:()=>i,jkA:()=>n,rLf:()=>fa,WH:()=>Ci,m4Y:()=>pn,UMr:()=>bi,w7C:()=>Ls,zt:()=>Fs,Ltv:()=>$s,UAC:()=>Ln,DCK:()=>lo,TUC:()=>qn,Agd:()=>Mn,t6C:()=>vn,wXd:()=>Sn,ABi:()=>Dn,Ui6:()=>Gn,rGn:()=>zn,ucG:()=>Tn,YPH:()=>On,Mol:()=>Nn,PGu:()=>In,GuW:()=>Rn});var s=1,a=2,l=3,c=4,h=1e-6;function u(t){return"translate("+t+",0)"}function d(t){return"translate(0,"+t+")"}function p(t){return e=>+t(e)}function f(t,e){return e=Math.max(0,t.bandwidth()-2*e)/2,t.round()&&(e=Math.round(e)),r=>+t(r)+e}function g(){return!this.__axis}function y(t,e){var r=[],i=null,n=null,y=6,m=6,x=3,b="undefined"!=typeof window&&window.devicePixelRatio>1?0:.5,C=t===s||t===c?-1:1,k=t===c||t===a?"x":"y",_=t===s||t===l?u:d;function w(u){var d=null==i?e.ticks?e.ticks.apply(e,r):e.domain():i,w=null==n?e.tickFormat?e.tickFormat.apply(e,r):o:n,v=Math.max(y,0)+x,T=e.range(),S=+T[0]+b,A=+T[T.length-1]+b,M=(e.bandwidth?f:p)(e.copy(),b),B=u.selection?u.selection():u,L=B.selectAll(".domain").data([null]),F=B.selectAll(".tick").data(d,e).order(),$=F.exit(),E=F.enter().append("g").attr("class","tick"),O=F.select("line"),D=F.select("text");L=L.merge(L.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),F=F.merge(E),O=O.merge(E.append("line").attr("stroke","currentColor").attr(k+"2",C*y)),D=D.merge(E.append("text").attr("fill","currentColor").attr(k,C*v).attr("dy",t===s?"0em":t===l?"0.71em":"0.32em")),u!==B&&(L=L.transition(u),F=F.transition(u),O=O.transition(u),D=D.transition(u),$=$.transition(u).attr("opacity",h).attr("transform",(function(t){return isFinite(t=M(t))?_(t+b):this.getAttribute("transform")})),E.attr("opacity",h).attr("transform",(function(t){var e=this.parentNode.__axis;return _((e&&isFinite(e=e(t))?e:M(t))+b)}))),$.remove(),L.attr("d",t===c||t===a?m?"M"+C*m+","+S+"H"+b+"V"+A+"H"+C*m:"M"+b+","+S+"V"+A:m?"M"+S+","+C*m+"V"+b+"H"+A+"V"+C*m:"M"+S+","+b+"H"+A),F.attr("opacity",1).attr("transform",(function(t){return _(M(t)+b)})),O.attr(k+"2",C*y),D.attr(k,C*v).text(w),B.filter(g).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",t===a?"start":t===c?"end":"middle"),B.each((function(){this.__axis=M}))}return w.scale=function(t){return arguments.length?(e=t,w):e},w.ticks=function(){return r=Array.from(arguments),w},w.tickArguments=function(t){return arguments.length?(r=null==t?[]:Array.from(t),w):r.slice()},w.tickValues=function(t){return arguments.length?(i=null==t?null:Array.from(t),w):i&&i.slice()},w.tickFormat=function(t){return arguments.length?(n=t,w):n},w.tickSize=function(t){return arguments.length?(y=m=+t,w):y},w.tickSizeInner=function(t){return arguments.length?(y=+t,w):y},w.tickSizeOuter=function(t){return arguments.length?(m=+t,w):m},w.tickPadding=function(t){return arguments.length?(x=+t,w):x},w.offset=function(t){return arguments.length?(b=+t,w):b},w}function m(t){return y(s,t)}function x(t){return y(l,t)}function b(){}function C(t){return null==t?b:function(){return this.querySelector(t)}}function k(){return[]}function _(t){return null==t?k:function(){return this.querySelectorAll(t)}}function w(t){return function(){return null==(e=t.apply(this,arguments))?[]:Array.isArray(e)?e:Array.from(e);var e}}function v(t){return function(){return this.matches(t)}}function T(t){return function(e){return e.matches(t)}}var S=Array.prototype.find;function A(){return this.firstElementChild}var M=Array.prototype.filter;function B(){return Array.from(this.children)}function L(t){return new Array(t.length)}function F(t,e){this.ownerDocument=t.ownerDocument,this.namespaceURI=t.namespaceURI,this._next=null,this._parent=t,this.__data__=e}function $(t,e,r,i,n,o){for(var s,a=0,l=e.length,c=o.length;ae?1:t>=e?0:NaN}F.prototype={constructor:F,appendChild:function(t){return this._parent.insertBefore(t,this._next)},insertBefore:function(t,e){return this._parent.insertBefore(t,e)},querySelector:function(t){return this._parent.querySelector(t)},querySelectorAll:function(t){return this._parent.querySelectorAll(t)}};var R="http://www.w3.org/1999/xhtml";const N={svg:"http://www.w3.org/2000/svg",xhtml:R,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function q(t){var e=t+="",r=e.indexOf(":");return r>=0&&"xmlns"!==(e=t.slice(0,r))&&(t=t.slice(r+1)),N.hasOwnProperty(e)?{space:N[e],local:t}:t}function z(t){return function(){this.removeAttribute(t)}}function P(t){return function(){this.removeAttributeNS(t.space,t.local)}}function K(t,e){return function(){this.setAttribute(t,e)}}function j(t,e){return function(){this.setAttributeNS(t.space,t.local,e)}}function W(t,e){return function(){var r=e.apply(this,arguments);null==r?this.removeAttribute(t):this.setAttribute(t,r)}}function U(t,e){return function(){var r=e.apply(this,arguments);null==r?this.removeAttributeNS(t.space,t.local):this.setAttributeNS(t.space,t.local,r)}}function H(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView}function Y(t){return function(){this.style.removeProperty(t)}}function V(t,e,r){return function(){this.style.setProperty(t,e,r)}}function G(t,e,r){return function(){var i=e.apply(this,arguments);null==i?this.style.removeProperty(t):this.style.setProperty(t,i,r)}}function Z(t,e){return t.style.getPropertyValue(e)||H(t).getComputedStyle(t,null).getPropertyValue(e)}function X(t){return function(){delete this[t]}}function Q(t,e){return function(){this[t]=e}}function J(t,e){return function(){var r=e.apply(this,arguments);null==r?delete this[t]:this[t]=r}}function tt(t){return t.trim().split(/^|\s+/)}function et(t){return t.classList||new rt(t)}function rt(t){this._node=t,this._names=tt(t.getAttribute("class")||"")}function it(t,e){for(var r=et(t),i=-1,n=e.length;++i=0&&(this._names.splice(e,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(t){return this._names.indexOf(t)>=0}};var Mt=[null];function Bt(t,e){this._groups=t,this._parents=e}function Lt(){return new Bt([[document.documentElement]],Mt)}Bt.prototype=Lt.prototype={constructor:Bt,select:function(t){"function"!=typeof t&&(t=C(t));for(var e=this._groups,r=e.length,i=new Array(r),n=0;n=k&&(k=C+1);!(b=m[k])&&++k=0;)(i=n[o])&&(s&&4^i.compareDocumentPosition(s)&&s.parentNode.insertBefore(i,s),s=i);return this},sort:function(t){function e(e,r){return e&&r?t(e.__data__,r.__data__):!e-!r}t||(t=I);for(var r=this._groups,i=r.length,n=new Array(i),o=0;o1?this.each((null==e?Y:"function"==typeof e?G:V)(t,e,null==r?"":r)):Z(this.node(),t)},property:function(t,e){return arguments.length>1?this.each((null==e?X:"function"==typeof e?J:Q)(t,e)):this.node()[t]},classed:function(t,e){var r=tt(t+"");if(arguments.length<2){for(var i=et(this.node()),n=-1,o=r.length;++n=0&&(e=t.slice(r+1),t=t.slice(0,r)),{type:t,name:e}}))}(t+""),s=o.length;if(!(arguments.length<2)){for(a=e?vt:wt,i=0;i{}};function Et(){for(var t,e=0,r=arguments.length,i={};e=0&&(e=t.slice(r+1),t=t.slice(0,r)),t&&!i.hasOwnProperty(t))throw new Error("unknown type: "+t);return{type:t,name:e}}))),s=-1,a=o.length;if(!(arguments.length<2)){if(null!=e&&"function"!=typeof e)throw new Error("invalid callback: "+e);for(;++s0)for(var r,i,n=new Array(r),o=0;o=0&&e._call.call(void 0,t),e=e._next;--zt}()}finally{zt=0,function(){var t,e,r=Nt,i=1/0;for(;r;)r._call?(i>r._time&&(i=r._time),t=r,r=r._next):(e=r._next,r._next=null,r=t?t._next=e:Nt=e);qt=t,ee(i)}(),Ut=0}}function te(){var t=Yt.now(),e=t-Wt;e>jt&&(Ht-=e,Wt=t)}function ee(t){zt||(Pt&&(Pt=clearTimeout(Pt)),t-Ut>24?(t<1/0&&(Pt=setTimeout(Jt,t-Yt.now()-Ht)),Kt&&(Kt=clearInterval(Kt))):(Kt||(Wt=Yt.now(),Kt=setInterval(te,jt)),zt=1,Vt(Jt)))}function re(t,e,r){var i=new Xt;return e=null==e?0:+e,i.restart((r=>{i.stop(),t(r+e)}),e,r),i}Xt.prototype=Qt.prototype={constructor:Xt,restart:function(t,e,r){if("function"!=typeof t)throw new TypeError("callback is not a function");r=(null==r?Gt():+r)+(null==e?0:+e),this._next||qt===this||(qt?qt._next=this:Nt=this,qt=this),this._call=t,this._time=r,ee()},stop:function(){this._call&&(this._call=null,this._time=1/0,ee())}};var ie=Rt("start","end","cancel","interrupt"),ne=[],oe=0,se=1,ae=2,le=3,ce=4,he=5,ue=6;function de(t,e,r,i,n,o){var s=t.__transition;if(s){if(r in s)return}else t.__transition={};!function(t,e,r){var i,n=t.__transition;function o(t){r.state=se,r.timer.restart(s,r.delay,r.time),r.delay<=t&&s(t-r.delay)}function s(o){var c,h,u,d;if(r.state!==se)return l();for(c in n)if((d=n[c]).name===r.name){if(d.state===le)return re(s);d.state===ce?(d.state=ue,d.timer.stop(),d.on.call("interrupt",t,t.__data__,d.index,d.group),delete n[c]):+coe)throw new Error("too late; already scheduled");return r}function fe(t,e){var r=ge(t,e);if(r.state>le)throw new Error("too late; already running");return r}function ge(t,e){var r=t.__transition;if(!r||!(r=r[e]))throw new Error("transition not found");return r}function ye(t,e){return t=+t,e=+e,function(r){return t*(1-r)+e*r}}var me,xe=180/Math.PI,be={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function Ce(t,e,r,i,n,o){var s,a,l;return(s=Math.sqrt(t*t+e*e))&&(t/=s,e/=s),(l=t*r+e*i)&&(r-=t*l,i-=e*l),(a=Math.sqrt(r*r+i*i))&&(r/=a,i/=a,l/=a),t*i180?e+=360:e-t>180&&(t+=360),o.push({i:r.push(n(r)+"rotate(",null,i)-2,x:ye(t,e)})):e&&r.push(n(r)+"rotate("+e+i)}(o.rotate,s.rotate,a,l),function(t,e,r,o){t!==e?o.push({i:r.push(n(r)+"skewX(",null,i)-2,x:ye(t,e)}):e&&r.push(n(r)+"skewX("+e+i)}(o.skewX,s.skewX,a,l),function(t,e,r,i,o,s){if(t!==r||e!==i){var a=o.push(n(o)+"scale(",null,",",null,")");s.push({i:a-4,x:ye(t,r)},{i:a-2,x:ye(e,i)})}else 1===r&&1===i||o.push(n(o)+"scale("+r+","+i+")")}(o.scaleX,o.scaleY,s.scaleX,s.scaleY,a,l),o=s=null,function(t){for(var e,r=-1,i=l.length;++r>8&15|e>>4&240,e>>4&15|240&e,(15&e)<<4|15&e,1):8===r?Ye(e>>24&255,e>>16&255,e>>8&255,(255&e)/255):4===r?Ye(e>>12&15|e>>8&240,e>>8&15|e>>4&240,e>>4&15|240&e,((15&e)<<4|15&e)/255):null):(e=Ie.exec(t))?new Ze(e[1],e[2],e[3],1):(e=Re.exec(t))?new Ze(255*e[1]/100,255*e[2]/100,255*e[3]/100,1):(e=Ne.exec(t))?Ye(e[1],e[2],e[3],e[4]):(e=qe.exec(t))?Ye(255*e[1]/100,255*e[2]/100,255*e[3]/100,e[4]):(e=ze.exec(t))?rr(e[1],e[2]/100,e[3]/100,1):(e=Pe.exec(t))?rr(e[1],e[2]/100,e[3]/100,e[4]):Ke.hasOwnProperty(t)?He(Ke[t]):"transparent"===t?new Ze(NaN,NaN,NaN,0):null}function He(t){return new Ze(t>>16&255,t>>8&255,255&t,1)}function Ye(t,e,r,i){return i<=0&&(t=e=r=NaN),new Ze(t,e,r,i)}function Ve(t){return t instanceof Be||(t=Ue(t)),t?new Ze((t=t.rgb()).r,t.g,t.b,t.opacity):new Ze}function Ge(t,e,r,i){return 1===arguments.length?Ve(t):new Ze(t,e,r,null==i?1:i)}function Ze(t,e,r,i){this.r=+t,this.g=+e,this.b=+r,this.opacity=+i}function Xe(){return`#${er(this.r)}${er(this.g)}${er(this.b)}`}function Qe(){const t=Je(this.opacity);return`${1===t?"rgb(":"rgba("}${tr(this.r)}, ${tr(this.g)}, ${tr(this.b)}${1===t?")":`, ${t})`}`}function Je(t){return isNaN(t)?1:Math.max(0,Math.min(1,t))}function tr(t){return Math.max(0,Math.min(255,Math.round(t)||0))}function er(t){return((t=tr(t))<16?"0":"")+t.toString(16)}function rr(t,e,r,i){return i<=0?t=e=r=NaN:r<=0||r>=1?t=e=NaN:e<=0&&(t=NaN),new nr(t,e,r,i)}function ir(t){if(t instanceof nr)return new nr(t.h,t.s,t.l,t.opacity);if(t instanceof Be||(t=Ue(t)),!t)return new nr;if(t instanceof nr)return t;var e=(t=t.rgb()).r/255,r=t.g/255,i=t.b/255,n=Math.min(e,r,i),o=Math.max(e,r,i),s=NaN,a=o-n,l=(o+n)/2;return a?(s=e===o?(r-i)/a+6*(r0&&l<1?0:s,new nr(s,a,l,t.opacity)}function nr(t,e,r,i){this.h=+t,this.s=+e,this.l=+r,this.opacity=+i}function or(t){return(t=(t||0)%360)<0?t+360:t}function sr(t){return Math.max(0,Math.min(1,t||0))}function ar(t,e,r){return 255*(t<60?e+(r-e)*t/60:t<180?r:t<240?e+(r-e)*(240-t)/60:e)}function lr(t,e,r,i,n){var o=t*t,s=o*t;return((1-3*t+3*o-s)*e+(4-6*o+3*s)*r+(1+3*t+3*o-3*s)*i+s*n)/6}Ae(Be,Ue,{copy(t){return Object.assign(new this.constructor,this,t)},displayable(){return this.rgb().displayable()},hex:je,formatHex:je,formatHex8:function(){return this.rgb().formatHex8()},formatHsl:function(){return ir(this).formatHsl()},formatRgb:We,toString:We}),Ae(Ze,Ge,Me(Be,{brighter(t){return t=null==t?Fe:Math.pow(Fe,t),new Ze(this.r*t,this.g*t,this.b*t,this.opacity)},darker(t){return t=null==t?Le:Math.pow(Le,t),new Ze(this.r*t,this.g*t,this.b*t,this.opacity)},rgb(){return this},clamp(){return new Ze(tr(this.r),tr(this.g),tr(this.b),Je(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:Xe,formatHex:Xe,formatHex8:function(){return`#${er(this.r)}${er(this.g)}${er(this.b)}${er(255*(isNaN(this.opacity)?1:this.opacity))}`},formatRgb:Qe,toString:Qe})),Ae(nr,(function(t,e,r,i){return 1===arguments.length?ir(t):new nr(t,e,r,null==i?1:i)}),Me(Be,{brighter(t){return t=null==t?Fe:Math.pow(Fe,t),new nr(this.h,this.s,this.l*t,this.opacity)},darker(t){return t=null==t?Le:Math.pow(Le,t),new nr(this.h,this.s,this.l*t,this.opacity)},rgb(){var t=this.h%360+360*(this.h<0),e=isNaN(t)||isNaN(this.s)?0:this.s,r=this.l,i=r+(r<.5?r:1-r)*e,n=2*r-i;return new Ze(ar(t>=240?t-240:t+120,n,i),ar(t,n,i),ar(t<120?t+240:t-120,n,i),this.opacity)},clamp(){return new nr(or(this.h),sr(this.s),sr(this.l),Je(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const t=Je(this.opacity);return`${1===t?"hsl(":"hsla("}${or(this.h)}, ${100*sr(this.s)}%, ${100*sr(this.l)}%${1===t?")":`, ${t})`}`}}));const cr=t=>()=>t;function hr(t,e){return function(r){return t+r*e}}function ur(t){return 1==(t=+t)?dr:function(e,r){return r-e?function(t,e,r){return t=Math.pow(t,r),e=Math.pow(e,r)-t,r=1/r,function(i){return Math.pow(t+i*e,r)}}(e,r,t):cr(isNaN(e)?r:e)}}function dr(t,e){var r=e-t;return r?hr(t,r):cr(isNaN(t)?e:t)}const pr=function t(e){var r=ur(e);function i(t,e){var i=r((t=Ge(t)).r,(e=Ge(e)).r),n=r(t.g,e.g),o=r(t.b,e.b),s=dr(t.opacity,e.opacity);return function(e){return t.r=i(e),t.g=n(e),t.b=o(e),t.opacity=s(e),t+""}}return i.gamma=t,i}(1);function fr(t){return function(e){var r,i,n=e.length,o=new Array(n),s=new Array(n),a=new Array(n);for(r=0;r=1?(r=1,e-1):Math.floor(r*e),n=t[i],o=t[i+1],s=i>0?t[i-1]:2*n-o,a=io&&(n=e.slice(o,n),a[s]?a[s]+=n:a[++s]=n),(r=r[0])===(i=i[0])?a[s]?a[s]+=i:a[++s]=i:(a[++s]=null,l.push({i:s,x:ye(r,i)})),o=yr.lastIndex;return o=0&&(t=t.slice(0,e)),!t||"start"===t}))}(e)?pe:fe;return function(){var s=o(this,t),a=s.on;a!==i&&(n=(i=a).copy()).on(e,r),s.on=n}}(r,t,e))},attr:function(t,e){var r=q(t),i="transform"===r?we:xr;return this.attrTween(t,"function"==typeof e?(r.local?vr:wr)(r,i,Se(this,"attr."+t,e)):null==e?(r.local?Cr:br)(r):(r.local?_r:kr)(r,i,e))},attrTween:function(t,e){var r="attr."+t;if(arguments.length<2)return(r=this.tween(r))&&r._value;if(null==e)return this.tween(r,null);if("function"!=typeof e)throw new Error;var i=q(t);return this.tween(r,(i.local?Tr:Sr)(i,e))},style:function(t,e,r){var i="transform"==(t+="")?_e:xr;return null==e?this.styleTween(t,function(t,e){var r,i,n;return function(){var o=Z(this,t),s=(this.style.removeProperty(t),Z(this,t));return o===s?null:o===r&&s===i?n:n=e(r=o,i=s)}}(t,i)).on("end.style."+t,$r(t)):"function"==typeof e?this.styleTween(t,function(t,e,r){var i,n,o;return function(){var s=Z(this,t),a=r(this),l=a+"";return null==a&&(this.style.removeProperty(t),l=a=Z(this,t)),s===l?null:s===i&&l===n?o:(n=l,o=e(i=s,a))}}(t,i,Se(this,"style."+t,e))).each(function(t,e){var r,i,n,o,s="style."+e,a="end."+s;return function(){var l=fe(this,t),c=l.on,h=null==l.value[s]?o||(o=$r(e)):void 0;c===r&&n===h||(i=(r=c).copy()).on(a,n=h),l.on=i}}(this._id,t)):this.styleTween(t,function(t,e,r){var i,n,o=r+"";return function(){var s=Z(this,t);return s===o?null:s===i?n:n=e(i=s,r)}}(t,i,e),r).on("end.style."+t,null)},styleTween:function(t,e,r){var i="style."+(t+="");if(arguments.length<2)return(i=this.tween(i))&&i._value;if(null==e)return this.tween(i,null);if("function"!=typeof e)throw new Error;return this.tween(i,function(t,e,r){var i,n;function o(){var o=e.apply(this,arguments);return o!==n&&(i=(n=o)&&function(t,e,r){return function(i){this.style.setProperty(t,e.call(this,i),r)}}(t,o,r)),i}return o._value=e,o}(t,e,null==r?"":r))},text:function(t){return this.tween("text","function"==typeof t?function(t){return function(){var e=t(this);this.textContent=null==e?"":e}}(Se(this,"text",t)):function(t){return function(){this.textContent=t}}(null==t?"":t+""))},textTween:function(t){var e="text";if(arguments.length<1)return(e=this.tween(e))&&e._value;if(null==t)return this.tween(e,null);if("function"!=typeof t)throw new Error;return this.tween(e,function(t){var e,r;function i(){var i=t.apply(this,arguments);return i!==r&&(e=(r=i)&&function(t){return function(e){this.textContent=t.call(this,e)}}(i)),e}return i._value=t,i}(t))},remove:function(){return this.on("end.remove",function(t){return function(){var e=this.parentNode;for(var r in this.__transition)if(+r!==t)return;e&&e.removeChild(this)}}(this._id))},tween:function(t,e){var r=this._id;if(t+="",arguments.length<2){for(var i,n=ge(this.node(),r).tween,o=0,s=n.length;oae&&r.stateJr?Math.pow(t,1/3):t/Qr+Zr}function ii(t){return t>Xr?t*t*t:Qr*(t-Zr)}function ni(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055)}function oi(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function si(t){if(t instanceof li)return new li(t.h,t.c,t.l,t.opacity);if(t instanceof ei||(t=ti(t)),0===t.a&&0===t.b)return new li(NaN,0180||r<-180?r-360*Math.round(r/360):r):cr(isNaN(t)?e:t)}));hi(dr);function di(t,e){switch(arguments.length){case 0:break;case 1:this.range(t);break;default:this.range(e).domain(t)}return this}class pi extends Map{constructor(t,e=mi){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:e}}),null!=t)for(const[r,i]of t)this.set(r,i)}get(t){return super.get(fi(this,t))}has(t){return super.has(fi(this,t))}set(t,e){return super.set(gi(this,t),e)}delete(t){return super.delete(yi(this,t))}}Set;function fi({_intern:t,_key:e},r){const i=e(r);return t.has(i)?t.get(i):r}function gi({_intern:t,_key:e},r){const i=e(r);return t.has(i)?t.get(i):(t.set(i,r),r)}function yi({_intern:t,_key:e},r){const i=e(r);return t.has(i)&&(r=t.get(i),t.delete(i)),r}function mi(t){return null!==t&&"object"==typeof t?t.valueOf():t}const xi=Symbol("implicit");function bi(){var t=new pi,e=[],r=[],i=xi;function n(n){let o=t.get(n);if(void 0===o){if(i!==xi)return i;t.set(n,o=e.push(n)-1)}return r[o%r.length]}return n.domain=function(r){if(!arguments.length)return e.slice();e=[],t=new pi;for(const i of r)t.has(i)||t.set(i,e.push(i)-1);return n},n.range=function(t){return arguments.length?(r=Array.from(t),n):r.slice()},n.unknown=function(t){return arguments.length?(i=t,n):i},n.copy=function(){return bi(e,r).unknown(i)},di.apply(n,arguments),n}function Ci(){var t,e,r=bi().unknown(void 0),i=r.domain,n=r.range,o=0,s=1,a=!1,l=0,c=0,h=.5;function u(){var r=i().length,u=s=ki?10:o>=_i?5:o>=wi?2:1;let a,l,c;return n<0?(c=Math.pow(10,-n)/s,a=Math.round(t*c),l=Math.round(e*c),a/ce&&--l,c=-c):(c=Math.pow(10,n)*s,a=Math.round(t/c),l=Math.round(e/c),a*ce&&--l),le?1:t>=e?0:NaN}function Mi(t,e){return null==t||null==e?NaN:et?1:e>=t?0:NaN}function Bi(t){let e,r,i;function n(t,i,n=0,o=t.length){if(n>>1;r(t[e],i)<0?n=e+1:o=e}while(nAi(t(e),r),i=(e,r)=>t(e)-r):(e=t===Ai||t===Mi?t:Li,r=t,i=t),{left:n,center:function(t,e,r=0,o=t.length){const s=n(t,e,r,o-1);return s>r&&i(t[s-1],e)>-i(t[s],e)?s-1:s},right:function(t,i,n=0,o=t.length){if(n>>1;r(t[e],i)<=0?n=e+1:o=e}while(ne&&(r=t,t=e,e=r),c=function(r){return Math.max(t,Math.min(e,r))}),i=l>2?Ui:Wi,n=o=null,u}function u(e){return null==e||isNaN(e=+e)?r:(n||(n=i(s.map(t),a,l)))(t(c(e)))}return u.invert=function(r){return c(e((o||(o=i(a,s.map(t),ye)))(r)))},u.domain=function(t){return arguments.length?(s=Array.from(t,zi),h()):s.slice()},u.range=function(t){return arguments.length?(a=Array.from(t),h()):a.slice()},u.rangeRound=function(t){return a=Array.from(t),l=qi,h()},u.clamp=function(t){return arguments.length?(c=!!t||Ki,h()):c!==Ki},u.interpolate=function(t){return arguments.length?(l=t,h()):l},u.unknown=function(t){return arguments.length?(r=t,u):r},function(r,i){return t=r,e=i,h()}}function Vi(){return Yi()(Ki,Ki)}var Gi,Zi=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function Xi(t){if(!(e=Zi.exec(t)))throw new Error("invalid format: "+t);var e;return new Qi({fill:e[1],align:e[2],sign:e[3],symbol:e[4],zero:e[5],width:e[6],comma:e[7],precision:e[8]&&e[8].slice(1),trim:e[9],type:e[10]})}function Qi(t){this.fill=void 0===t.fill?" ":t.fill+"",this.align=void 0===t.align?">":t.align+"",this.sign=void 0===t.sign?"-":t.sign+"",this.symbol=void 0===t.symbol?"":t.symbol+"",this.zero=!!t.zero,this.width=void 0===t.width?void 0:+t.width,this.comma=!!t.comma,this.precision=void 0===t.precision?void 0:+t.precision,this.trim=!!t.trim,this.type=void 0===t.type?"":t.type+""}function Ji(t,e){if((r=(t=e?t.toExponential(e-1):t.toExponential()).indexOf("e"))<0)return null;var r,i=t.slice(0,r);return[i.length>1?i[0]+i.slice(2):i,+t.slice(r+1)]}function tn(t){return(t=Ji(Math.abs(t)))?t[1]:NaN}function en(t,e){var r=Ji(t,e);if(!r)return t+"";var i=r[0],n=r[1];return n<0?"0."+new Array(-n).join("0")+i:i.length>n+1?i.slice(0,n+1)+"."+i.slice(n+1):i+new Array(n-i.length+2).join("0")}Xi.prototype=Qi.prototype,Qi.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(void 0===this.width?"":Math.max(1,0|this.width))+(this.comma?",":"")+(void 0===this.precision?"":"."+Math.max(0,0|this.precision))+(this.trim?"~":"")+this.type};const rn={"%":(t,e)=>(100*t).toFixed(e),b:t=>Math.round(t).toString(2),c:t=>t+"",d:function(t){return Math.abs(t=Math.round(t))>=1e21?t.toLocaleString("en").replace(/,/g,""):t.toString(10)},e:(t,e)=>t.toExponential(e),f:(t,e)=>t.toFixed(e),g:(t,e)=>t.toPrecision(e),o:t=>Math.round(t).toString(8),p:(t,e)=>en(100*t,e),r:en,s:function(t,e){var r=Ji(t,e);if(!r)return t+"";var i=r[0],n=r[1],o=n-(Gi=3*Math.max(-8,Math.min(8,Math.floor(n/3))))+1,s=i.length;return o===s?i:o>s?i+new Array(o-s+1).join("0"):o>0?i.slice(0,o)+"."+i.slice(o):"0."+new Array(1-o).join("0")+Ji(t,Math.max(0,e+o-1))[0]},X:t=>Math.round(t).toString(16).toUpperCase(),x:t=>Math.round(t).toString(16)};function nn(t){return t}var on,sn,an,ln=Array.prototype.map,cn=["y","z","a","f","p","n","\xb5","m","","k","M","G","T","P","E","Z","Y"];function hn(t){var e,r,i=void 0===t.grouping||void 0===t.thousands?nn:(e=ln.call(t.grouping,Number),r=t.thousands+"",function(t,i){for(var n=t.length,o=[],s=0,a=e[0],l=0;n>0&&a>0&&(l+a+1>i&&(a=Math.max(1,i-l)),o.push(t.substring(n-=a,n+a)),!((l+=a+1)>i));)a=e[s=(s+1)%e.length];return o.reverse().join(r)}),n=void 0===t.currency?"":t.currency[0]+"",o=void 0===t.currency?"":t.currency[1]+"",s=void 0===t.decimal?".":t.decimal+"",a=void 0===t.numerals?nn:function(t){return function(e){return e.replace(/[0-9]/g,(function(e){return t[+e]}))}}(ln.call(t.numerals,String)),l=void 0===t.percent?"%":t.percent+"",c=void 0===t.minus?"\u2212":t.minus+"",h=void 0===t.nan?"NaN":t.nan+"";function u(t){var e=(t=Xi(t)).fill,r=t.align,u=t.sign,d=t.symbol,p=t.zero,f=t.width,g=t.comma,y=t.precision,m=t.trim,x=t.type;"n"===x?(g=!0,x="g"):rn[x]||(void 0===y&&(y=12),m=!0,x="g"),(p||"0"===e&&"="===r)&&(p=!0,e="0",r="=");var b="$"===d?n:"#"===d&&/[boxX]/.test(x)?"0"+x.toLowerCase():"",C="$"===d?o:/[%p]/.test(x)?l:"",k=rn[x],_=/[defgprs%]/.test(x);function w(t){var n,o,l,d=b,w=C;if("c"===x)w=k(t)+w,t="";else{var v=(t=+t)<0||1/t<0;if(t=isNaN(t)?h:k(Math.abs(t),y),m&&(t=function(t){t:for(var e,r=t.length,i=1,n=-1;i0&&(n=0)}return n>0?t.slice(0,n)+t.slice(e+1):t}(t)),v&&0==+t&&"+"!==u&&(v=!1),d=(v?"("===u?u:c:"-"===u||"("===u?"":u)+d,w=("s"===x?cn[8+Gi/3]:"")+w+(v&&"("===u?")":""),_)for(n=-1,o=t.length;++n(l=t.charCodeAt(n))||l>57){w=(46===l?s+t.slice(n+1):t.slice(n))+w,t=t.slice(0,n);break}}g&&!p&&(t=i(t,1/0));var T=d.length+t.length+w.length,S=T>1)+d+t+w+S.slice(T);break;default:t=S+d+t+w}return a(t)}return y=void 0===y?6:/[gprs]/.test(x)?Math.max(1,Math.min(21,y)):Math.max(0,Math.min(20,y)),w.toString=function(){return t+""},w}return{format:u,formatPrefix:function(t,e){var r=u(((t=Xi(t)).type="f",t)),i=3*Math.max(-8,Math.min(8,Math.floor(tn(e)/3))),n=Math.pow(10,-i),o=cn[8+i/3];return function(t){return r(n*t)+o}}}}function un(t,e,r,i){var n,o=Si(t,e,r);switch((i=Xi(null==i?",f":i)).type){case"s":var s=Math.max(Math.abs(t),Math.abs(e));return null!=i.precision||isNaN(n=function(t,e){return Math.max(0,3*Math.max(-8,Math.min(8,Math.floor(tn(e)/3)))-tn(Math.abs(t)))}(o,s))||(i.precision=n),an(i,s);case"":case"e":case"g":case"p":case"r":null!=i.precision||isNaN(n=function(t,e){return t=Math.abs(t),e=Math.abs(e)-t,Math.max(0,tn(e)-tn(t))+1}(o,Math.max(Math.abs(t),Math.abs(e))))||(i.precision=n-("e"===i.type));break;case"f":case"%":null!=i.precision||isNaN(n=function(t){return Math.max(0,-tn(Math.abs(t)))}(o))||(i.precision=n-2*("%"===i.type))}return sn(i)}function dn(t){var e=t.domain;return t.ticks=function(t){var r=e();return function(t,e,r){if(!((r=+r)>0))return[];if((t=+t)==(e=+e))return[t];const i=e=n))return[];const a=o-n+1,l=new Array(a);if(i)if(s<0)for(let c=0;c0;){if((n=Ti(l,c,r))===i)return o[s]=l,o[a]=c,e(o);if(n>0)l=Math.floor(l/n)*n,c=Math.ceil(c/n)*n;else{if(!(n<0))break;l=Math.ceil(l*n)/n,c=Math.floor(c*n)/n}i=n}return t},t}function pn(){var t=Vi();return t.copy=function(){return Hi(t,pn())},di.apply(t,arguments),dn(t)}on=hn({thousands:",",grouping:[3],currency:["$",""]}),sn=on.format,an=on.formatPrefix;const fn=1e3,gn=6e4,yn=36e5,mn=864e5,xn=6048e5,bn=2592e6,Cn=31536e6,kn=new Date,_n=new Date;function wn(t,e,r,i){function n(e){return t(e=0===arguments.length?new Date:new Date(+e)),e}return n.floor=e=>(t(e=new Date(+e)),e),n.ceil=r=>(t(r=new Date(r-1)),e(r,1),t(r),r),n.round=t=>{const e=n(t),r=n.ceil(t);return t-e(e(t=new Date(+t),null==r?1:Math.floor(r)),t),n.range=(r,i,o)=>{const s=[];if(r=n.ceil(r),o=null==o?1:Math.floor(o),!(r0))return s;let a;do{s.push(a=new Date(+r)),e(r,o),t(r)}while(awn((e=>{if(e>=e)for(;t(e),!r(e);)e.setTime(e-1)}),((t,i)=>{if(t>=t)if(i<0)for(;++i<=0;)for(;e(t,-1),!r(t););else for(;--i>=0;)for(;e(t,1),!r(t););})),r&&(n.count=(e,i)=>(kn.setTime(+e),_n.setTime(+i),t(kn),t(_n),Math.floor(r(kn,_n))),n.every=t=>(t=Math.floor(t),isFinite(t)&&t>0?t>1?n.filter(i?e=>i(e)%t==0:e=>n.count(0,e)%t==0):n:null)),n}const vn=wn((()=>{}),((t,e)=>{t.setTime(+t+e)}),((t,e)=>e-t));vn.every=t=>(t=Math.floor(t),isFinite(t)&&t>0?t>1?wn((e=>{e.setTime(Math.floor(e/t)*t)}),((e,r)=>{e.setTime(+e+r*t)}),((e,r)=>(r-e)/t)):vn:null);vn.range;const Tn=wn((t=>{t.setTime(t-t.getMilliseconds())}),((t,e)=>{t.setTime(+t+e*fn)}),((t,e)=>(e-t)/fn),(t=>t.getUTCSeconds())),Sn=(Tn.range,wn((t=>{t.setTime(t-t.getMilliseconds()-t.getSeconds()*fn)}),((t,e)=>{t.setTime(+t+e*gn)}),((t,e)=>(e-t)/gn),(t=>t.getMinutes()))),An=(Sn.range,wn((t=>{t.setUTCSeconds(0,0)}),((t,e)=>{t.setTime(+t+e*gn)}),((t,e)=>(e-t)/gn),(t=>t.getUTCMinutes()))),Mn=(An.range,wn((t=>{t.setTime(t-t.getMilliseconds()-t.getSeconds()*fn-t.getMinutes()*gn)}),((t,e)=>{t.setTime(+t+e*yn)}),((t,e)=>(e-t)/yn),(t=>t.getHours()))),Bn=(Mn.range,wn((t=>{t.setUTCMinutes(0,0,0)}),((t,e)=>{t.setTime(+t+e*yn)}),((t,e)=>(e-t)/yn),(t=>t.getUTCHours()))),Ln=(Bn.range,wn((t=>t.setHours(0,0,0,0)),((t,e)=>t.setDate(t.getDate()+e)),((t,e)=>(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*gn)/mn),(t=>t.getDate()-1))),Fn=(Ln.range,wn((t=>{t.setUTCHours(0,0,0,0)}),((t,e)=>{t.setUTCDate(t.getUTCDate()+e)}),((t,e)=>(e-t)/mn),(t=>t.getUTCDate()-1))),$n=(Fn.range,wn((t=>{t.setUTCHours(0,0,0,0)}),((t,e)=>{t.setUTCDate(t.getUTCDate()+e)}),((t,e)=>(e-t)/mn),(t=>Math.floor(t/mn))));$n.range;function En(t){return wn((e=>{e.setDate(e.getDate()-(e.getDay()+7-t)%7),e.setHours(0,0,0,0)}),((t,e)=>{t.setDate(t.getDate()+7*e)}),((t,e)=>(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*gn)/xn))}const On=En(0),Dn=En(1),In=En(2),Rn=En(3),Nn=En(4),qn=En(5),zn=En(6);On.range,Dn.range,In.range,Rn.range,Nn.range,qn.range,zn.range;function Pn(t){return wn((e=>{e.setUTCDate(e.getUTCDate()-(e.getUTCDay()+7-t)%7),e.setUTCHours(0,0,0,0)}),((t,e)=>{t.setUTCDate(t.getUTCDate()+7*e)}),((t,e)=>(e-t)/xn))}const Kn=Pn(0),jn=Pn(1),Wn=Pn(2),Un=Pn(3),Hn=Pn(4),Yn=Pn(5),Vn=Pn(6),Gn=(Kn.range,jn.range,Wn.range,Un.range,Hn.range,Yn.range,Vn.range,wn((t=>{t.setDate(1),t.setHours(0,0,0,0)}),((t,e)=>{t.setMonth(t.getMonth()+e)}),((t,e)=>e.getMonth()-t.getMonth()+12*(e.getFullYear()-t.getFullYear())),(t=>t.getMonth()))),Zn=(Gn.range,wn((t=>{t.setUTCDate(1),t.setUTCHours(0,0,0,0)}),((t,e)=>{t.setUTCMonth(t.getUTCMonth()+e)}),((t,e)=>e.getUTCMonth()-t.getUTCMonth()+12*(e.getUTCFullYear()-t.getUTCFullYear())),(t=>t.getUTCMonth()))),Xn=(Zn.range,wn((t=>{t.setMonth(0,1),t.setHours(0,0,0,0)}),((t,e)=>{t.setFullYear(t.getFullYear()+e)}),((t,e)=>e.getFullYear()-t.getFullYear()),(t=>t.getFullYear())));Xn.every=t=>isFinite(t=Math.floor(t))&&t>0?wn((e=>{e.setFullYear(Math.floor(e.getFullYear()/t)*t),e.setMonth(0,1),e.setHours(0,0,0,0)}),((e,r)=>{e.setFullYear(e.getFullYear()+r*t)})):null;Xn.range;const Qn=wn((t=>{t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)}),((t,e)=>{t.setUTCFullYear(t.getUTCFullYear()+e)}),((t,e)=>e.getUTCFullYear()-t.getUTCFullYear()),(t=>t.getUTCFullYear()));Qn.every=t=>isFinite(t=Math.floor(t))&&t>0?wn((e=>{e.setUTCFullYear(Math.floor(e.getUTCFullYear()/t)*t),e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)}),((e,r)=>{e.setUTCFullYear(e.getUTCFullYear()+r*t)})):null;Qn.range;function Jn(t,e,r,i,n,o){const s=[[Tn,1,fn],[Tn,5,5e3],[Tn,15,15e3],[Tn,30,3e4],[o,1,gn],[o,5,3e5],[o,15,9e5],[o,30,18e5],[n,1,yn],[n,3,108e5],[n,6,216e5],[n,12,432e5],[i,1,mn],[i,2,1728e5],[r,1,xn],[e,1,bn],[e,3,7776e6],[t,1,Cn]];function a(e,r,i){const n=Math.abs(r-e)/i,o=Bi((([,,t])=>t)).right(s,n);if(o===s.length)return t.every(Si(e/Cn,r/Cn,i));if(0===o)return vn.every(Math.max(Si(e,r,i),1));const[a,l]=s[n/s[o-1][2][t.toLowerCase(),e])))}function xo(t,e,r){var i=ho.exec(e.slice(r,r+1));return i?(t.w=+i[0],r+i[0].length):-1}function bo(t,e,r){var i=ho.exec(e.slice(r,r+1));return i?(t.u=+i[0],r+i[0].length):-1}function Co(t,e,r){var i=ho.exec(e.slice(r,r+2));return i?(t.U=+i[0],r+i[0].length):-1}function ko(t,e,r){var i=ho.exec(e.slice(r,r+2));return i?(t.V=+i[0],r+i[0].length):-1}function _o(t,e,r){var i=ho.exec(e.slice(r,r+2));return i?(t.W=+i[0],r+i[0].length):-1}function wo(t,e,r){var i=ho.exec(e.slice(r,r+4));return i?(t.y=+i[0],r+i[0].length):-1}function vo(t,e,r){var i=ho.exec(e.slice(r,r+2));return i?(t.y=+i[0]+(+i[0]>68?1900:2e3),r+i[0].length):-1}function To(t,e,r){var i=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(e.slice(r,r+6));return i?(t.Z=i[1]?0:-(i[2]+(i[3]||"00")),r+i[0].length):-1}function So(t,e,r){var i=ho.exec(e.slice(r,r+1));return i?(t.q=3*i[0]-3,r+i[0].length):-1}function Ao(t,e,r){var i=ho.exec(e.slice(r,r+2));return i?(t.m=i[0]-1,r+i[0].length):-1}function Mo(t,e,r){var i=ho.exec(e.slice(r,r+2));return i?(t.d=+i[0],r+i[0].length):-1}function Bo(t,e,r){var i=ho.exec(e.slice(r,r+3));return i?(t.m=0,t.d=+i[0],r+i[0].length):-1}function Lo(t,e,r){var i=ho.exec(e.slice(r,r+2));return i?(t.H=+i[0],r+i[0].length):-1}function Fo(t,e,r){var i=ho.exec(e.slice(r,r+2));return i?(t.M=+i[0],r+i[0].length):-1}function $o(t,e,r){var i=ho.exec(e.slice(r,r+2));return i?(t.S=+i[0],r+i[0].length):-1}function Eo(t,e,r){var i=ho.exec(e.slice(r,r+3));return i?(t.L=+i[0],r+i[0].length):-1}function Oo(t,e,r){var i=ho.exec(e.slice(r,r+6));return i?(t.L=Math.floor(i[0]/1e3),r+i[0].length):-1}function Do(t,e,r){var i=uo.exec(e.slice(r,r+1));return i?r+i[0].length:-1}function Io(t,e,r){var i=ho.exec(e.slice(r));return i?(t.Q=+i[0],r+i[0].length):-1}function Ro(t,e,r){var i=ho.exec(e.slice(r));return i?(t.s=+i[0],r+i[0].length):-1}function No(t,e){return fo(t.getDate(),e,2)}function qo(t,e){return fo(t.getHours(),e,2)}function zo(t,e){return fo(t.getHours()%12||12,e,2)}function Po(t,e){return fo(1+Ln.count(Xn(t),t),e,3)}function Ko(t,e){return fo(t.getMilliseconds(),e,3)}function jo(t,e){return Ko(t,e)+"000"}function Wo(t,e){return fo(t.getMonth()+1,e,2)}function Uo(t,e){return fo(t.getMinutes(),e,2)}function Ho(t,e){return fo(t.getSeconds(),e,2)}function Yo(t){var e=t.getDay();return 0===e?7:e}function Vo(t,e){return fo(On.count(Xn(t)-1,t),e,2)}function Go(t){var e=t.getDay();return e>=4||0===e?Nn(t):Nn.ceil(t)}function Zo(t,e){return t=Go(t),fo(Nn.count(Xn(t),t)+(4===Xn(t).getDay()),e,2)}function Xo(t){return t.getDay()}function Qo(t,e){return fo(Dn.count(Xn(t)-1,t),e,2)}function Jo(t,e){return fo(t.getFullYear()%100,e,2)}function ts(t,e){return fo((t=Go(t)).getFullYear()%100,e,2)}function es(t,e){return fo(t.getFullYear()%1e4,e,4)}function rs(t,e){var r=t.getDay();return fo((t=r>=4||0===r?Nn(t):Nn.ceil(t)).getFullYear()%1e4,e,4)}function is(t){var e=t.getTimezoneOffset();return(e>0?"-":(e*=-1,"+"))+fo(e/60|0,"0",2)+fo(e%60,"0",2)}function ns(t,e){return fo(t.getUTCDate(),e,2)}function os(t,e){return fo(t.getUTCHours(),e,2)}function ss(t,e){return fo(t.getUTCHours()%12||12,e,2)}function as(t,e){return fo(1+Fn.count(Qn(t),t),e,3)}function ls(t,e){return fo(t.getUTCMilliseconds(),e,3)}function cs(t,e){return ls(t,e)+"000"}function hs(t,e){return fo(t.getUTCMonth()+1,e,2)}function us(t,e){return fo(t.getUTCMinutes(),e,2)}function ds(t,e){return fo(t.getUTCSeconds(),e,2)}function ps(t){var e=t.getUTCDay();return 0===e?7:e}function fs(t,e){return fo(Kn.count(Qn(t)-1,t),e,2)}function gs(t){var e=t.getUTCDay();return e>=4||0===e?Hn(t):Hn.ceil(t)}function ys(t,e){return t=gs(t),fo(Hn.count(Qn(t),t)+(4===Qn(t).getUTCDay()),e,2)}function ms(t){return t.getUTCDay()}function xs(t,e){return fo(jn.count(Qn(t)-1,t),e,2)}function bs(t,e){return fo(t.getUTCFullYear()%100,e,2)}function Cs(t,e){return fo((t=gs(t)).getUTCFullYear()%100,e,2)}function ks(t,e){return fo(t.getUTCFullYear()%1e4,e,4)}function _s(t,e){var r=t.getUTCDay();return fo((t=r>=4||0===r?Hn(t):Hn.ceil(t)).getUTCFullYear()%1e4,e,4)}function ws(){return"+0000"}function vs(){return"%"}function Ts(t){return+t}function Ss(t){return Math.floor(+t/1e3)}function As(t){return new Date(t)}function Ms(t){return t instanceof Date?+t:+new Date(+t)}function Bs(t,e,r,i,n,o,s,a,l,c){var h=Vi(),u=h.invert,d=h.domain,p=c(".%L"),f=c(":%S"),g=c("%I:%M"),y=c("%I %p"),m=c("%a %d"),x=c("%b %d"),b=c("%B"),C=c("%Y");function k(t){return(l(t)=12)]},q:function(t){return 1+~~(t.getMonth()/3)},Q:Ts,s:Ss,S:Ho,u:Yo,U:Vo,V:Zo,w:Xo,W:Qo,x:null,X:null,y:Jo,Y:es,Z:is,"%":vs},C={a:function(t){return s[t.getUTCDay()]},A:function(t){return o[t.getUTCDay()]},b:function(t){return l[t.getUTCMonth()]},B:function(t){return a[t.getUTCMonth()]},c:null,d:ns,e:ns,f:cs,g:Cs,G:_s,H:os,I:ss,j:as,L:ls,m:hs,M:us,p:function(t){return n[+(t.getUTCHours()>=12)]},q:function(t){return 1+~~(t.getUTCMonth()/3)},Q:Ts,s:Ss,S:ds,u:ps,U:fs,V:ys,w:ms,W:xs,x:null,X:null,y:bs,Y:ks,Z:ws,"%":vs},k={a:function(t,e,r){var i=p.exec(e.slice(r));return i?(t.w=f.get(i[0].toLowerCase()),r+i[0].length):-1},A:function(t,e,r){var i=u.exec(e.slice(r));return i?(t.w=d.get(i[0].toLowerCase()),r+i[0].length):-1},b:function(t,e,r){var i=m.exec(e.slice(r));return i?(t.m=x.get(i[0].toLowerCase()),r+i[0].length):-1},B:function(t,e,r){var i=g.exec(e.slice(r));return i?(t.m=y.get(i[0].toLowerCase()),r+i[0].length):-1},c:function(t,r,i){return v(t,e,r,i)},d:Mo,e:Mo,f:Oo,g:vo,G:wo,H:Lo,I:Lo,j:Bo,L:Eo,m:Ao,M:Fo,p:function(t,e,r){var i=c.exec(e.slice(r));return i?(t.p=h.get(i[0].toLowerCase()),r+i[0].length):-1},q:So,Q:Io,s:Ro,S:$o,u:bo,U:Co,V:ko,w:xo,W:_o,x:function(t,e,i){return v(t,r,e,i)},X:function(t,e,r){return v(t,i,e,r)},y:vo,Y:wo,Z:To,"%":Do};function _(t,e){return function(r){var i,n,o,s=[],a=-1,l=0,c=t.length;for(r instanceof Date||(r=new Date(+r));++a53)return null;"w"in o||(o.w=1),"Z"in o?(n=(i=oo(so(o.y,0,1))).getUTCDay(),i=n>4||0===n?jn.ceil(i):jn(i),i=Fn.offset(i,7*(o.V-1)),o.y=i.getUTCFullYear(),o.m=i.getUTCMonth(),o.d=i.getUTCDate()+(o.w+6)%7):(n=(i=no(so(o.y,0,1))).getDay(),i=n>4||0===n?Dn.ceil(i):Dn(i),i=Ln.offset(i,7*(o.V-1)),o.y=i.getFullYear(),o.m=i.getMonth(),o.d=i.getDate()+(o.w+6)%7)}else("W"in o||"U"in o)&&("w"in o||(o.w="u"in o?o.u%7:"W"in o?1:0),n="Z"in o?oo(so(o.y,0,1)).getUTCDay():no(so(o.y,0,1)).getDay(),o.m=0,o.d="W"in o?(o.w+6)%7+7*o.W-(n+5)%7:o.w+7*o.U-(n+6)%7);return"Z"in o?(o.H+=o.Z/100|0,o.M+=o.Z%100,oo(o)):no(o)}}function v(t,e,r,i){for(var n,o,s=0,a=e.length,l=r.length;s=l)return-1;if(37===(n=e.charCodeAt(s++))){if(n=e.charAt(s++),!(o=k[n in co?e.charAt(s++):n])||(i=o(t,r,i))<0)return-1}else if(n!=r.charCodeAt(i++))return-1}return i}return b.x=_(r,b),b.X=_(i,b),b.c=_(e,b),C.x=_(r,C),C.X=_(i,C),C.c=_(e,C),{format:function(t){var e=_(t+="",b);return e.toString=function(){return t},e},parse:function(t){var e=w(t+="",!1);return e.toString=function(){return t},e},utcFormat:function(t){var e=_(t+="",C);return e.toString=function(){return t},e},utcParse:function(t){var e=w(t+="",!0);return e.toString=function(){return t},e}}}(t),lo=ao.format,ao.parse,ao.utcFormat,ao.utcParse}({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});const Fs=function(t){for(var e=t.length/6|0,r=new Array(e),i=0;i=1?js:t<=-1?-js:Math.asin(t)}const Hs=Math.PI,Ys=2*Hs,Vs=1e-6,Gs=Ys-Vs;function Zs(t){this._+=t[0];for(let e=1,r=t.length;e=0))throw new Error(`invalid digits: ${t}`);if(e>15)return Zs;const r=10**e;return function(t){this._+=t[0];for(let e=1,i=t.length;eVs)if(Math.abs(h*a-l*c)>Vs&&n){let d=r-o,p=i-s,f=a*a+l*l,g=d*d+p*p,y=Math.sqrt(f),m=Math.sqrt(u),x=n*Math.tan((Hs-Math.acos((f+u-g)/(2*y*m)))/2),b=x/m,C=x/y;Math.abs(b-1)>Vs&&this._append`L${t+b*c},${e+b*h}`,this._append`A${n},${n},0,0,${+(h*d>c*p)},${this._x1=t+C*a},${this._y1=e+C*l}`}else this._append`L${this._x1=t},${this._y1=e}`;else;}arc(t,e,r,i,n,o){if(t=+t,e=+e,o=!!o,(r=+r)<0)throw new Error(`negative radius: ${r}`);let s=r*Math.cos(i),a=r*Math.sin(i),l=t+s,c=e+a,h=1^o,u=o?i-n:n-i;null===this._x1?this._append`M${l},${c}`:(Math.abs(this._x1-l)>Vs||Math.abs(this._y1-c)>Vs)&&this._append`L${l},${c}`,r&&(u<0&&(u=u%Ys+Ys),u>Gs?this._append`A${r},${r},0,1,${h},${t-s},${e-a}A${r},${r},0,1,${h},${this._x1=l},${this._y1=c}`:u>Vs&&this._append`A${r},${r},0,${+(u>=Hs)},${h},${this._x1=t+r*Math.cos(n)},${this._y1=e+r*Math.sin(n)}`)}rect(t,e,r,i){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+e}h${r=+r}v${+i}h${-r}Z`}toString(){return this._}}function Qs(t){let e=3;return t.digits=function(r){if(!arguments.length)return e;if(null==r)e=null;else{const t=Math.floor(r);if(!(t>=0))throw new RangeError(`invalid digits: ${r}`);e=t}return t},()=>new Xs(e)}function Js(t){return t.innerRadius}function ta(t){return t.outerRadius}function ea(t){return t.startAngle}function ra(t){return t.endAngle}function ia(t){return t&&t.padAngle}function na(t,e,r,i,n,o,s){var a=t-r,l=e-i,c=(s?o:-o)/zs(a*a+l*l),h=c*l,u=-c*a,d=t+h,p=e+u,f=r+h,g=i+u,y=(d+f)/2,m=(p+g)/2,x=f-d,b=g-p,C=x*x+b*b,k=n-o,_=d*g-f*p,w=(b<0?-1:1)*zs(Rs(0,k*k*C-_*_)),v=(_*b-x*w)/C,T=(-_*x-b*w)/C,S=(_*b+x*w)/C,A=(-_*x+b*w)/C,M=v-y,B=T-m,L=S-y,F=A-m;return M*M+B*B>L*L+F*F&&(v=S,T=A),{cx:v,cy:T,x01:-h,y01:-u,x11:v*(n/k-1),y11:T*(n/k-1)}}function oa(){var t=Js,e=ta,r=Es(0),i=null,n=ea,o=ra,s=ia,a=null,l=Qs(c);function c(){var c,h,u,d=+t.apply(this,arguments),p=+e.apply(this,arguments),f=n.apply(this,arguments)-js,g=o.apply(this,arguments)-js,y=Os(g-f),m=g>f;if(a||(a=c=l()),pPs)if(y>Ws-Ps)a.moveTo(p*Is(f),p*qs(f)),a.arc(0,0,p,f,g,!m),d>Ps&&(a.moveTo(d*Is(g),d*qs(g)),a.arc(0,0,d,g,f,m));else{var x,b,C=f,k=g,_=f,w=g,v=y,T=y,S=s.apply(this,arguments)/2,A=S>Ps&&(i?+i.apply(this,arguments):zs(d*d+p*p)),M=Ns(Os(p-d)/2,+r.apply(this,arguments)),B=M,L=M;if(A>Ps){var F=Us(A/d*qs(S)),$=Us(A/p*qs(S));(v-=2*F)>Ps?(_+=F*=m?1:-1,w-=F):(v=0,_=w=(f+g)/2),(T-=2*$)>Ps?(C+=$*=m?1:-1,k-=$):(T=0,C=k=(f+g)/2)}var E=p*Is(C),O=p*qs(C),D=d*Is(w),I=d*qs(w);if(M>Ps){var R,N=p*Is(k),q=p*qs(k),z=d*Is(_),P=d*qs(_);if(y1?0:u<-1?Ks:Math.acos(u))/2),Y=zs(R[0]*R[0]+R[1]*R[1]);B=Ns(M,(d-Y)/(H-1)),L=Ns(M,(p-Y)/(H+1))}else B=L=0}T>Ps?L>Ps?(x=na(z,P,E,O,p,L,m),b=na(N,q,D,I,p,L,m),a.moveTo(x.cx+x.x01,x.cy+x.y01),LPs&&v>Ps?B>Ps?(x=na(D,I,N,q,d,-B,m),b=na(E,O,z,P,d,-B,m),a.lineTo(x.cx+x.x01,x.cy+x.y01),Bt?1:e>=t?0:NaN}function pa(t){return t}function fa(){var t=pa,e=da,r=null,i=Es(0),n=Es(Ws),o=Es(0);function s(s){var a,l,c,h,u,d=(s=sa(s)).length,p=0,f=new Array(d),g=new Array(d),y=+i.apply(this,arguments),m=Math.min(Ws,Math.max(-Ws,n.apply(this,arguments)-y)),x=Math.min(Math.abs(m)/d,o.apply(this,arguments)),b=x*(m<0?-1:1);for(a=0;a0&&(p+=u);for(null!=e?f.sort((function(t,r){return e(g[t],g[r])})):null!=r&&f.sort((function(t,e){return r(s[t],s[e])})),a=0,c=p?(m-d*b)/p:0;a0?u*c:0)+b,g[l]={data:s[l],index:a,value:u,startAngle:y,endAngle:h,padAngle:x};return g}return s.value=function(e){return arguments.length?(t="function"==typeof e?e:Es(+e),s):t},s.sortValues=function(t){return arguments.length?(e=t,r=null,s):e},s.sort=function(t){return arguments.length?(r=t,e=null,s):r},s.startAngle=function(t){return arguments.length?(i="function"==typeof t?t:Es(+t),s):i},s.endAngle=function(t){return arguments.length?(n="function"==typeof t?t:Es(+t),s):n},s.padAngle=function(t){return arguments.length?(o="function"==typeof t?t:Es(+t),s):o},s}function ga(){}function ya(t,e,r){t._context.bezierCurveTo((2*t._x0+t._x1)/3,(2*t._y0+t._y1)/3,(t._x0+2*t._x1)/3,(t._y0+2*t._y1)/3,(t._x0+4*t._x1+e)/6,(t._y0+4*t._y1+r)/6)}function ma(t){this._context=t}function xa(t){return new ma(t)}function ba(t){this._context=t}function Ca(t){return new ba(t)}function ka(t){this._context=t}function _a(t){return new ka(t)}aa.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:this._context.lineTo(t,e)}}},ma.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:ya(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:ya(this,t,e)}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e}},ba.prototype={areaStart:ga,areaEnd:ga,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x2,this._y2),this._context.closePath();break;case 2:this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break;case 3:this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4)}},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._x2=t,this._y2=e;break;case 1:this._point=2,this._x3=t,this._y3=e;break;case 2:this._point=3,this._x4=t,this._y4=e,this._context.moveTo((this._x0+4*this._x1+t)/6,(this._y0+4*this._y1+e)/6);break;default:ya(this,t,e)}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e}},ka.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var r=(this._x0+4*this._x1+t)/6,i=(this._y0+4*this._y1+e)/6;this._line?this._context.lineTo(r,i):this._context.moveTo(r,i);break;case 3:this._point=4;default:ya(this,t,e)}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e}};class wa{constructor(t,e){this._context=t,this._x=e}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line}point(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:this._x?this._context.bezierCurveTo(this._x0=(this._x0+t)/2,this._y0,this._x0,e,t,e):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+e)/2,t,this._y0,t,e)}this._x0=t,this._y0=e}}function va(t){return new wa(t,!0)}function Ta(t){return new wa(t,!1)}function Sa(t,e){this._basis=new ma(t),this._beta=e}Sa.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var t=this._x,e=this._y,r=t.length-1;if(r>0)for(var i,n=t[0],o=e[0],s=t[r]-n,a=e[r]-o,l=-1;++l<=r;)i=l/r,this._basis.point(this._beta*t[l]+(1-this._beta)*(n+i*s),this._beta*e[l]+(1-this._beta)*(o+i*a));this._x=this._y=null,this._basis.lineEnd()},point:function(t,e){this._x.push(+t),this._y.push(+e)}};const Aa=function t(e){function r(t){return 1===e?new ma(t):new Sa(t,e)}return r.beta=function(e){return t(+e)},r}(.85);function Ma(t,e,r){t._context.bezierCurveTo(t._x1+t._k*(t._x2-t._x0),t._y1+t._k*(t._y2-t._y0),t._x2+t._k*(t._x1-e),t._y2+t._k*(t._y1-r),t._x2,t._y2)}function Ba(t,e){this._context=t,this._k=(1-e)/6}Ba.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:Ma(this,this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2,this._x1=t,this._y1=e;break;case 2:this._point=3;default:Ma(this,t,e)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};const La=function t(e){function r(t){return new Ba(t,e)}return r.tension=function(e){return t(+e)},r}(0);function Fa(t,e){this._context=t,this._k=(1-e)/6}Fa.prototype={areaStart:ga,areaEnd:ga,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._x3=t,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=e);break;case 2:this._point=3,this._x5=t,this._y5=e;break;default:Ma(this,t,e)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};const $a=function t(e){function r(t){return new Fa(t,e)}return r.tension=function(e){return t(+e)},r}(0);function Ea(t,e){this._context=t,this._k=(1-e)/6}Ea.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Ma(this,t,e)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};const Oa=function t(e){function r(t){return new Ea(t,e)}return r.tension=function(e){return t(+e)},r}(0);function Da(t,e,r){var i=t._x1,n=t._y1,o=t._x2,s=t._y2;if(t._l01_a>Ps){var a=2*t._l01_2a+3*t._l01_a*t._l12_a+t._l12_2a,l=3*t._l01_a*(t._l01_a+t._l12_a);i=(i*a-t._x0*t._l12_2a+t._x2*t._l01_2a)/l,n=(n*a-t._y0*t._l12_2a+t._y2*t._l01_2a)/l}if(t._l23_a>Ps){var c=2*t._l23_2a+3*t._l23_a*t._l12_a+t._l12_2a,h=3*t._l23_a*(t._l23_a+t._l12_a);o=(o*c+t._x1*t._l23_2a-e*t._l12_2a)/h,s=(s*c+t._y1*t._l23_2a-r*t._l12_2a)/h}t._context.bezierCurveTo(i,n,o,s,t._x2,t._y2)}function Ia(t,e){this._context=t,this._alpha=e}Ia.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){if(t=+t,e=+e,this._point){var r=this._x2-t,i=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+i*i,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3;default:Da(this,t,e)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};const Ra=function t(e){function r(t){return e?new Ia(t,e):new Ba(t,0)}return r.alpha=function(e){return t(+e)},r}(.5);function Na(t,e){this._context=t,this._alpha=e}Na.prototype={areaStart:ga,areaEnd:ga,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(t,e){if(t=+t,e=+e,this._point){var r=this._x2-t,i=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+i*i,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=t,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=e);break;case 2:this._point=3,this._x5=t,this._y5=e;break;default:Da(this,t,e)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};const qa=function t(e){function r(t){return e?new Na(t,e):new Fa(t,0)}return r.alpha=function(e){return t(+e)},r}(.5);function za(t,e){this._context=t,this._alpha=e}za.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){if(t=+t,e=+e,this._point){var r=this._x2-t,i=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+i*i,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Da(this,t,e)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};const Pa=function t(e){function r(t){return e?new za(t,e):new Ea(t,0)}return r.alpha=function(e){return t(+e)},r}(.5);function Ka(t){this._context=t}function ja(t){return new Ka(t)}function Wa(t){return t<0?-1:1}function Ua(t,e,r){var i=t._x1-t._x0,n=e-t._x1,o=(t._y1-t._y0)/(i||n<0&&-0),s=(r-t._y1)/(n||i<0&&-0),a=(o*n+s*i)/(i+n);return(Wa(o)+Wa(s))*Math.min(Math.abs(o),Math.abs(s),.5*Math.abs(a))||0}function Ha(t,e){var r=t._x1-t._x0;return r?(3*(t._y1-t._y0)/r-e)/2:e}function Ya(t,e,r){var i=t._x0,n=t._y0,o=t._x1,s=t._y1,a=(o-i)/3;t._context.bezierCurveTo(i+a,n+a*e,o-a,s-a*r,o,s)}function Va(t){this._context=t}function Ga(t){this._context=new Za(t)}function Za(t){this._context=t}function Xa(t){return new Va(t)}function Qa(t){return new Ga(t)}function Ja(t){this._context=t}function tl(t){var e,r,i=t.length-1,n=new Array(i),o=new Array(i),s=new Array(i);for(n[0]=0,o[0]=2,s[0]=t[0]+2*t[1],e=1;e=0;--e)n[e]=(s[e]-n[e+1])/o[e];for(o[i-1]=(t[i]+n[i-1])/2,e=0;e=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:if(this._t<=0)this._context.lineTo(this._x,e),this._context.lineTo(t,e);else{var r=this._x*(1-this._t)+t*this._t;this._context.lineTo(r,this._y),this._context.lineTo(r,e)}}this._x=t,this._y=e}},sl.prototype={constructor:sl,scale:function(t){return 1===t?this:new sl(this.k*t,this.x,this.y)},translate:function(t,e){return 0===t&0===e?this:new sl(this.k,this.x+this.k*t,this.y+this.k*e)},apply:function(t){return[t[0]*this.k+this.x,t[1]*this.k+this.y]},applyX:function(t){return t*this.k+this.x},applyY:function(t){return t*this.k+this.y},invert:function(t){return[(t[0]-this.x)/this.k,(t[1]-this.y)/this.k]},invertX:function(t){return(t-this.x)/this.k},invertY:function(t){return(t-this.y)/this.k},rescaleX:function(t){return t.copy().domain(t.range().map(this.invertX,this).map(t.invert,t))},rescaleY:function(t){return t.copy().domain(t.range().map(this.invertY,this).map(t.invert,t))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};new sl(1,0,0);sl.prototype},93539:(t,e,r)=>{"use strict";r.d(e,{A:()=>s});var i=r(72453),n=r(63122);const o=class{constructor(){this.type=n.Z.ALL}get(){return this.type}set(t){if(this.type&&this.type!==t)throw new Error("Cannot change both RGB and HSL channels at the same time");this.type=t}reset(){this.type=n.Z.ALL}is(t){return this.type===t}};const s=new class{constructor(t,e){this.color=e,this.changed=!1,this.data=t,this.type=new o}set(t,e){return this.color=e,this.changed=!1,this.data=t,this.type.type=n.Z.ALL,this}_ensureHSL(){const t=this.data,{h:e,s:r,l:n}=t;void 0===e&&(t.h=i.A.channel.rgb2hsl(t,"h")),void 0===r&&(t.s=i.A.channel.rgb2hsl(t,"s")),void 0===n&&(t.l=i.A.channel.rgb2hsl(t,"l"))}_ensureRGB(){const t=this.data,{r:e,g:r,b:n}=t;void 0===e&&(t.r=i.A.channel.hsl2rgb(t,"r")),void 0===r&&(t.g=i.A.channel.hsl2rgb(t,"g")),void 0===n&&(t.b=i.A.channel.hsl2rgb(t,"b"))}get r(){const t=this.data,e=t.r;return this.type.is(n.Z.HSL)||void 0===e?(this._ensureHSL(),i.A.channel.hsl2rgb(t,"r")):e}get g(){const t=this.data,e=t.g;return this.type.is(n.Z.HSL)||void 0===e?(this._ensureHSL(),i.A.channel.hsl2rgb(t,"g")):e}get b(){const t=this.data,e=t.b;return this.type.is(n.Z.HSL)||void 0===e?(this._ensureHSL(),i.A.channel.hsl2rgb(t,"b")):e}get h(){const t=this.data,e=t.h;return this.type.is(n.Z.RGB)||void 0===e?(this._ensureRGB(),i.A.channel.rgb2hsl(t,"h")):e}get s(){const t=this.data,e=t.s;return this.type.is(n.Z.RGB)||void 0===e?(this._ensureRGB(),i.A.channel.rgb2hsl(t,"s")):e}get l(){const t=this.data,e=t.l;return this.type.is(n.Z.RGB)||void 0===e?(this._ensureRGB(),i.A.channel.rgb2hsl(t,"l")):e}get a(){return this.data.a}set r(t){this.type.set(n.Z.RGB),this.changed=!0,this.data.r=t}set g(t){this.type.set(n.Z.RGB),this.changed=!0,this.data.g=t}set b(t){this.type.set(n.Z.RGB),this.changed=!0,this.data.b=t}set h(t){this.type.set(n.Z.HSL),this.changed=!0,this.data.h=t}set s(t){this.type.set(n.Z.HSL),this.changed=!0,this.data.s=t}set l(t){this.type.set(n.Z.HSL),this.changed=!0,this.data.l=t}set a(t){this.changed=!0,this.data.a=t}}({r:0,g:0,b:0,a:0},"transparent")},74886:(t,e,r)=>{"use strict";r.d(e,{A:()=>g});var i=r(93539),n=r(63122);const o={re:/^#((?:[a-f0-9]{2}){2,4}|[a-f0-9]{3})$/i,parse:t=>{if(35!==t.charCodeAt(0))return;const e=t.match(o.re);if(!e)return;const r=e[1],n=parseInt(r,16),s=r.length,a=s%4==0,l=s>4,c=l?1:17,h=l?8:4,u=a?0:-1,d=l?255:15;return i.A.set({r:(n>>h*(u+3)&d)*c,g:(n>>h*(u+2)&d)*c,b:(n>>h*(u+1)&d)*c,a:a?(n&d)*c/255:1},t)},stringify:t=>{const{r:e,g:r,b:i,a:o}=t;return o<1?`#${n.Y[Math.round(e)]}${n.Y[Math.round(r)]}${n.Y[Math.round(i)]}${n.Y[Math.round(255*o)]}`:`#${n.Y[Math.round(e)]}${n.Y[Math.round(r)]}${n.Y[Math.round(i)]}`}},s=o;var a=r(72453);const l={re:/^hsla?\(\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?(?:deg|grad|rad|turn)?)\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?%)\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?%)(?:\s*?(?:,|\/)\s*?\+?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?(%)?))?\s*?\)$/i,hueRe:/^(.+?)(deg|grad|rad|turn)$/i,_hue2deg:t=>{const e=t.match(l.hueRe);if(e){const[,t,r]=e;switch(r){case"grad":return a.A.channel.clamp.h(.9*parseFloat(t));case"rad":return a.A.channel.clamp.h(180*parseFloat(t)/Math.PI);case"turn":return a.A.channel.clamp.h(360*parseFloat(t))}}return a.A.channel.clamp.h(parseFloat(t))},parse:t=>{const e=t.charCodeAt(0);if(104!==e&&72!==e)return;const r=t.match(l.re);if(!r)return;const[,n,o,s,c,h]=r;return i.A.set({h:l._hue2deg(n),s:a.A.channel.clamp.s(parseFloat(o)),l:a.A.channel.clamp.l(parseFloat(s)),a:c?a.A.channel.clamp.a(h?parseFloat(c)/100:parseFloat(c)):1},t)},stringify:t=>{const{h:e,s:r,l:i,a:n}=t;return n<1?`hsla(${a.A.lang.round(e)}, ${a.A.lang.round(r)}%, ${a.A.lang.round(i)}%, ${n})`:`hsl(${a.A.lang.round(e)}, ${a.A.lang.round(r)}%, ${a.A.lang.round(i)}%)`}},c=l,h={colors:{aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyanaqua:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",transparent:"#00000000",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"},parse:t=>{t=t.toLowerCase();const e=h.colors[t];if(e)return s.parse(e)},stringify:t=>{const e=s.stringify(t);for(const r in h.colors)if(h.colors[r]===e)return r}},u=h,d={re:/^rgba?\(\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))(?:\s*?(?:,|\/)\s*?\+?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?)))?\s*?\)$/i,parse:t=>{const e=t.charCodeAt(0);if(114!==e&&82!==e)return;const r=t.match(d.re);if(!r)return;const[,n,o,s,l,c,h,u,p]=r;return i.A.set({r:a.A.channel.clamp.r(o?2.55*parseFloat(n):parseFloat(n)),g:a.A.channel.clamp.g(l?2.55*parseFloat(s):parseFloat(s)),b:a.A.channel.clamp.b(h?2.55*parseFloat(c):parseFloat(c)),a:u?a.A.channel.clamp.a(p?parseFloat(u)/100:parseFloat(u)):1},t)},stringify:t=>{const{r:e,g:r,b:i,a:n}=t;return n<1?`rgba(${a.A.lang.round(e)}, ${a.A.lang.round(r)}, ${a.A.lang.round(i)}, ${a.A.lang.round(n)})`:`rgb(${a.A.lang.round(e)}, ${a.A.lang.round(r)}, ${a.A.lang.round(i)})`}},p=d,f={format:{keyword:h,hex:s,rgb:d,rgba:d,hsl:l,hsla:l},parse:t=>{if("string"!=typeof t)return t;const e=s.parse(t)||p.parse(t)||c.parse(t)||u.parse(t);if(e)return e;throw new Error(`Unsupported color format: "${t}"`)},stringify:t=>!t.changed&&t.color?t.color:t.type.is(n.Z.HSL)||void 0===t.data.r?c.stringify(t):t.a<1||!Number.isInteger(t.r)||!Number.isInteger(t.g)||!Number.isInteger(t.b)?p.stringify(t):s.stringify(t)},g=f},63122:(t,e,r)=>{"use strict";r.d(e,{Y:()=>n,Z:()=>o});var i=r(72453);const n={};for(let s=0;s<=255;s++)n[s]=i.A.unit.dec2hex(s);const o={ALL:0,RGB:1,HSL:2}},95635:(t,e,r)=>{"use strict";r.d(e,{A:()=>o});var i=r(72453),n=r(74886);const o=(t,e,r)=>{const o=n.A.parse(t),s=o[e],a=i.A.channel.clamp[e](s+r);return s!==a&&(o[e]=a),n.A.stringify(o)}},8232:(t,e,r)=>{"use strict";r.d(e,{A:()=>o});var i=r(72453),n=r(74886);const o=(t,e)=>{const r=n.A.parse(t);for(const n in e)r[n]=i.A.channel.clamp[n](e[n]);return n.A.stringify(r)}},75263:(t,e,r)=>{"use strict";r.d(e,{A:()=>n});var i=r(95635);const n=(t,e)=>(0,i.A)(t,"l",-e)},3219:(t,e,r)=>{"use strict";r.d(e,{A:()=>a});var i=r(72453),n=r(74886);const o=t=>{const{r:e,g:r,b:o}=n.A.parse(t),s=.2126*i.A.channel.toLinear(e)+.7152*i.A.channel.toLinear(r)+.0722*i.A.channel.toLinear(o);return i.A.lang.round(s)},s=t=>o(t)>=.5,a=t=>!s(t)},78041:(t,e,r)=>{"use strict";r.d(e,{A:()=>n});var i=r(95635);const n=(t,e)=>(0,i.A)(t,"l",e)},25582:(t,e,r)=>{"use strict";r.d(e,{A:()=>a});var i=r(72453),n=r(93539),o=r(74886),s=r(8232);const a=(t,e,r=0,a=1)=>{if("number"!=typeof t)return(0,s.A)(t,{a:e});const l=n.A.set({r:i.A.channel.clamp.r(t),g:i.A.channel.clamp.g(e),b:i.A.channel.clamp.b(r),a:i.A.channel.clamp.a(a)});return o.A.stringify(l)}},72453:(t,e,r)=>{"use strict";r.d(e,{A:()=>n});const i={min:{r:0,g:0,b:0,s:0,l:0,a:0},max:{r:255,g:255,b:255,h:360,s:100,l:100,a:1},clamp:{r:t=>t>=255?255:t<0?0:t,g:t=>t>=255?255:t<0?0:t,b:t=>t>=255?255:t<0?0:t,h:t=>t%360,s:t=>t>=100?100:t<0?0:t,l:t=>t>=100?100:t<0?0:t,a:t=>t>=1?1:t<0?0:t},toLinear:t=>{const e=t/255;return t>.03928?Math.pow((e+.055)/1.055,2.4):e/12.92},hue2rgb:(t,e,r)=>(r<0&&(r+=1),r>1&&(r-=1),r<1/6?t+6*(e-t)*r:r<.5?e:r<2/3?t+(e-t)*(2/3-r)*6:t),hsl2rgb:({h:t,s:e,l:r},n)=>{if(!e)return 2.55*r;t/=360,e/=100;const o=(r/=100)<.5?r*(1+e):r+e-r*e,s=2*r-o;switch(n){case"r":return 255*i.hue2rgb(s,o,t+1/3);case"g":return 255*i.hue2rgb(s,o,t);case"b":return 255*i.hue2rgb(s,o,t-1/3)}},rgb2hsl:({r:t,g:e,b:r},i)=>{t/=255,e/=255,r/=255;const n=Math.max(t,e,r),o=Math.min(t,e,r),s=(n+o)/2;if("l"===i)return 100*s;if(n===o)return 0;const a=n-o;if("s"===i)return 100*(s>.5?a/(2-n-o):a/(n+o));switch(n){case t:return 60*((e-r)/a+(ee>r?Math.min(e,Math.max(r,t)):Math.min(r,Math.max(e,t)),round:t=>Math.round(1e10*t)/1e10},unit:{dec2hex:t=>{const e=Math.round(t).toString(16);return e.length>1?e:`0${e}`}}}},80127:(t,e,r)=>{"use strict";r.d(e,{A:()=>d});const i=function(){this.__data__=[],this.size=0};var n=r(66984);const o=function(t,e){for(var r=t.length;r--;)if((0,n.A)(t[r][0],e))return r;return-1};var s=Array.prototype.splice;const a=function(t){var e=this.__data__,r=o(e,t);return!(r<0)&&(r==e.length-1?e.pop():s.call(e,r,1),--this.size,!0)};const l=function(t){var e=this.__data__,r=o(e,t);return r<0?void 0:e[r][1]};const c=function(t){return o(this.__data__,t)>-1};const h=function(t,e){var r=this.__data__,i=o(r,t);return i<0?(++this.size,r.push([t,e])):r[i][1]=e,this};function u(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e{"use strict";r.d(e,{A:()=>o});var i=r(18744),n=r(41917);const o=(0,i.A)(n.A,"Map")},29471:(t,e,r)=>{"use strict";r.d(e,{A:()=>w});const i=(0,r(18744).A)(Object,"create");const n=function(){this.__data__=i?i(null):{},this.size=0};const o=function(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e};var s=Object.prototype.hasOwnProperty;const a=function(t){var e=this.__data__;if(i){var r=e[t];return"__lodash_hash_undefined__"===r?void 0:r}return s.call(e,t)?e[t]:void 0};var l=Object.prototype.hasOwnProperty;const c=function(t){var e=this.__data__;return i?void 0!==e[t]:l.call(e,t)};const h=function(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=i&&void 0===e?"__lodash_hash_undefined__":e,this};function u(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e{"use strict";r.d(e,{A:()=>o});var i=r(18744),n=r(41917);const o=(0,i.A)(n.A,"Set")},11754:(t,e,r)=>{"use strict";r.d(e,{A:()=>d});var i=r(80127);const n=function(){this.__data__=new i.A,this.size=0};const o=function(t){var e=this.__data__,r=e.delete(t);return this.size=e.size,r};const s=function(t){return this.__data__.get(t)};const a=function(t){return this.__data__.has(t)};var l=r(68335),c=r(29471);const h=function(t,e){var r=this.__data__;if(r instanceof i.A){var n=r.__data__;if(!l.A||n.length<199)return n.push([t,e]),this.size=++r.size,this;r=this.__data__=new c.A(n)}return r.set(t,e),this.size=r.size,this};function u(t){var e=this.__data__=new i.A(t);this.size=e.size}u.prototype.clear=n,u.prototype.delete=o,u.prototype.get=s,u.prototype.has=a,u.prototype.set=h;const d=u},241:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i=r(41917).A.Symbol},43988:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i=r(41917).A.Uint8Array},83607:(t,e,r)=>{"use strict";r.d(e,{A:()=>h});const i=function(t,e){for(var r=-1,i=Array(t);++r{"use strict";r.d(e,{A:()=>s});var i=r(52528),n=r(66984),o=Object.prototype.hasOwnProperty;const s=function(t,e,r){var s=t[e];o.call(t,e)&&(0,n.A)(s,r)&&(void 0!==r||e in t)||(0,i.A)(t,e,r)}},52528:(t,e,r)=>{"use strict";r.d(e,{A:()=>n});var i=r(84171);const n=function(t,e,r){"__proto__"==e&&i.A?(0,i.A)(t,e,{configurable:!0,enumerable:!0,value:r,writable:!0}):t[e]=r}},4574:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i=function(t){return function(e,r,i){for(var n=-1,o=Object(e),s=i(e),a=s.length;a--;){var l=s[t?a:++n];if(!1===r(o[l],l,o))break}return e}}()},88496:(t,e,r)=>{"use strict";r.d(e,{A:()=>d});var i=r(241),n=Object.prototype,o=n.hasOwnProperty,s=n.toString,a=i.A?i.A.toStringTag:void 0;const l=function(t){var e=o.call(t,a),r=t[a];try{t[a]=void 0;var i=!0}catch(l){}var n=s.call(t);return i&&(e?t[a]=r:delete t[a]),n};var c=Object.prototype.toString;const h=function(t){return c.call(t)};var u=i.A?i.A.toStringTag:void 0;const d=function(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":u&&u in Object(t)?l(t):h(t)}},69471:(t,e,r)=>{"use strict";r.d(e,{A:()=>s});var i=r(97271);const n=(0,r(40367).A)(Object.keys,Object);var o=Object.prototype.hasOwnProperty;const s=function(t){if(!(0,i.A)(t))return n(t);var e=[];for(var r in Object(t))o.call(t,r)&&"constructor"!=r&&e.push(r);return e}},24326:(t,e,r)=>{"use strict";r.d(e,{A:()=>s});var i=r(29008),n=r(76875),o=r(67525);const s=function(t,e){return(0,o.A)((0,n.A)(t,e,i.A),t+"")}},52789:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i=function(t){return function(e){return t(e)}}},90565:(t,e,r)=>{"use strict";r.d(e,{A:()=>n});var i=r(43988);const n=function(t){var e=new t.constructor(t.byteLength);return new i.A(e).set(new i.A(t)),e}},80154:(t,e,r)=>{"use strict";r.d(e,{A:()=>l});var i=r(41917),n="object"==typeof exports&&exports&&!exports.nodeType&&exports,o=n&&"object"==typeof module&&module&&!module.nodeType&&module,s=o&&o.exports===n?i.A.Buffer:void 0,a=s?s.allocUnsafe:void 0;const l=function(t,e){if(e)return t.slice();var r=t.length,i=a?a(r):new t.constructor(r);return t.copy(i),i}},1801:(t,e,r)=>{"use strict";r.d(e,{A:()=>n});var i=r(90565);const n=function(t,e){var r=e?(0,i.A)(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.length)}},39759:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i=function(t,e){var r=-1,i=t.length;for(e||(e=Array(i));++r{"use strict";r.d(e,{A:()=>o});var i=r(52851),n=r(52528);const o=function(t,e,r,o){var s=!r;r||(r={});for(var a=-1,l=e.length;++a{"use strict";r.d(e,{A:()=>o});var i=r(24326),n=r(6832);const o=function(t){return(0,i.A)((function(e,r){var i=-1,o=r.length,s=o>1?r[o-1]:void 0,a=o>2?r[2]:void 0;for(s=t.length>3&&"function"==typeof s?(o--,s):void 0,a&&(0,n.A)(r[0],r[1],a)&&(s=o<3?void 0:s,o=1),e=Object(e);++i{"use strict";r.d(e,{A:()=>n});var i=r(18744);const n=function(){try{var t=(0,i.A)(Object,"defineProperty");return t({},"",{}),t}catch(e){}}()},72136:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i="object"==typeof global&&global&&global.Object===Object&&global},18744:(t,e,r)=>{"use strict";r.d(e,{A:()=>x});var i=r(89610);const n=r(41917).A["__core-js_shared__"];var o,s=(o=/[^.]+$/.exec(n&&n.keys&&n.keys.IE_PROTO||""))?"Symbol(src)_1."+o:"";const a=function(t){return!!s&&s in t};var l=r(23149),c=r(81121),h=/^\[object .+?Constructor\]$/,u=Function.prototype,d=Object.prototype,p=u.toString,f=d.hasOwnProperty,g=RegExp("^"+p.call(f).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");const y=function(t){return!(!(0,l.A)(t)||a(t))&&((0,i.A)(t)?g:h).test((0,c.A)(t))};const m=function(t,e){return null==t?void 0:t[e]};const x=function(t,e){var r=m(t,e);return y(r)?r:void 0}},15647:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i=(0,r(40367).A)(Object.getPrototypeOf,Object)},9779:(t,e,r)=>{"use strict";r.d(e,{A:()=>w});var i=r(18744),n=r(41917);const o=(0,i.A)(n.A,"DataView");var s=r(68335);const a=(0,i.A)(n.A,"Promise");var l=r(39857);const c=(0,i.A)(n.A,"WeakMap");var h=r(88496),u=r(81121),d="[object Map]",p="[object Promise]",f="[object Set]",g="[object WeakMap]",y="[object DataView]",m=(0,u.A)(o),x=(0,u.A)(s.A),b=(0,u.A)(a),C=(0,u.A)(l.A),k=(0,u.A)(c),_=h.A;(o&&_(new o(new ArrayBuffer(1)))!=y||s.A&&_(new s.A)!=d||a&&_(a.resolve())!=p||l.A&&_(new l.A)!=f||c&&_(new c)!=g)&&(_=function(t){var e=(0,h.A)(t),r="[object Object]"==e?t.constructor:void 0,i=r?(0,u.A)(r):"";if(i)switch(i){case m:return y;case x:return d;case b:return p;case C:return f;case k:return g}return e});const w=_},18598:(t,e,r)=>{"use strict";r.d(e,{A:()=>l});var i=r(23149),n=Object.create;const o=function(){function t(){}return function(e){if(!(0,i.A)(e))return{};if(n)return n(e);t.prototype=e;var r=new t;return t.prototype=void 0,r}}();var s=r(15647),a=r(97271);const l=function(t){return"function"!=typeof t.constructor||(0,a.A)(t)?{}:o((0,s.A)(t))}},25353:(t,e,r)=>{"use strict";r.d(e,{A:()=>n});var i=/^(?:0|[1-9]\d*)$/;const n=function(t,e){var r=typeof t;return!!(e=null==e?9007199254740991:e)&&("number"==r||"symbol"!=r&&i.test(t))&&t>-1&&t%1==0&&t{"use strict";r.d(e,{A:()=>a});var i=r(66984),n=r(38446),o=r(25353),s=r(23149);const a=function(t,e,r){if(!(0,s.A)(r))return!1;var a=typeof e;return!!("number"==a?(0,n.A)(r)&&(0,o.A)(e,r.length):"string"==a&&e in r)&&(0,i.A)(r[e],t)}},97271:(t,e,r)=>{"use strict";r.d(e,{A:()=>n});var i=Object.prototype;const n=function(t){var e=t&&t.constructor;return t===("function"==typeof e&&e.prototype||i)}},64841:(t,e,r)=>{"use strict";r.d(e,{A:()=>a});var i=r(72136),n="object"==typeof exports&&exports&&!exports.nodeType&&exports,o=n&&"object"==typeof module&&module&&!module.nodeType&&module,s=o&&o.exports===n&&i.A.process;const a=function(){try{var t=o&&o.require&&o.require("util").types;return t||s&&s.binding&&s.binding("util")}catch(e){}}()},40367:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i=function(t,e){return function(r){return t(e(r))}}},76875:(t,e,r)=>{"use strict";r.d(e,{A:()=>o});const i=function(t,e,r){switch(r.length){case 0:return t.call(e);case 1:return t.call(e,r[0]);case 2:return t.call(e,r[0],r[1]);case 3:return t.call(e,r[0],r[1],r[2])}return t.apply(e,r)};var n=Math.max;const o=function(t,e,r){return e=n(void 0===e?t.length-1:e,0),function(){for(var o=arguments,s=-1,a=n(o.length-e,0),l=Array(a);++s{"use strict";r.d(e,{A:()=>o});var i=r(72136),n="object"==typeof self&&self&&self.Object===Object&&self;const o=i.A||n||Function("return this")()},67525:(t,e,r)=>{"use strict";r.d(e,{A:()=>l});var i=r(39142),n=r(84171),o=r(29008);const s=n.A?function(t,e){return(0,n.A)(t,"toString",{configurable:!0,enumerable:!1,value:(0,i.A)(e),writable:!0})}:o.A;var a=Date.now;const l=function(t){var e=0,r=0;return function(){var i=a(),n=16-(i-r);if(r=i,n>0){if(++e>=800)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}(s)},81121:(t,e,r)=>{"use strict";r.d(e,{A:()=>n});var i=Function.prototype.toString;const n=function(t){if(null!=t){try{return i.call(t)}catch(e){}try{return t+""}catch(e){}}return""}},39142:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i=function(t){return function(){return t}}},66984:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i=function(t,e){return t===e||t!=t&&e!=e}},29008:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i=function(t){return t}},52274:(t,e,r)=>{"use strict";r.d(e,{A:()=>c});var i=r(88496),n=r(53098);const o=function(t){return(0,n.A)(t)&&"[object Arguments]"==(0,i.A)(t)};var s=Object.prototype,a=s.hasOwnProperty,l=s.propertyIsEnumerable;const c=o(function(){return arguments}())?o:function(t){return(0,n.A)(t)&&a.call(t,"callee")&&!l.call(t,"callee")}},92049:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i=Array.isArray},38446:(t,e,r)=>{"use strict";r.d(e,{A:()=>o});var i=r(89610),n=r(5254);const o=function(t){return null!=t&&(0,n.A)(t.length)&&!(0,i.A)(t)}},53533:(t,e,r)=>{"use strict";r.d(e,{A:()=>o});var i=r(38446),n=r(53098);const o=function(t){return(0,n.A)(t)&&(0,i.A)(t)}},99912:(t,e,r)=>{"use strict";r.d(e,{A:()=>l});var i=r(41917);const n=function(){return!1};var o="object"==typeof exports&&exports&&!exports.nodeType&&exports,s=o&&"object"==typeof module&&module&&!module.nodeType&&module,a=s&&s.exports===o?i.A.Buffer:void 0;const l=(a?a.isBuffer:void 0)||n},66401:(t,e,r)=>{"use strict";r.d(e,{A:()=>d});var i=r(69471),n=r(9779),o=r(52274),s=r(92049),a=r(38446),l=r(99912),c=r(97271),h=r(33858),u=Object.prototype.hasOwnProperty;const d=function(t){if(null==t)return!0;if((0,a.A)(t)&&((0,s.A)(t)||"string"==typeof t||"function"==typeof t.splice||(0,l.A)(t)||(0,h.A)(t)||(0,o.A)(t)))return!t.length;var e=(0,n.A)(t);if("[object Map]"==e||"[object Set]"==e)return!t.size;if((0,c.A)(t))return!(0,i.A)(t).length;for(var r in t)if(u.call(t,r))return!1;return!0}},89610:(t,e,r)=>{"use strict";r.d(e,{A:()=>o});var i=r(88496),n=r(23149);const o=function(t){if(!(0,n.A)(t))return!1;var e=(0,i.A)(t);return"[object Function]"==e||"[object GeneratorFunction]"==e||"[object AsyncFunction]"==e||"[object Proxy]"==e}},5254:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i=function(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=9007199254740991}},23149:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i=function(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}},53098:(t,e,r)=>{"use strict";r.d(e,{A:()=>i});const i=function(t){return null!=t&&"object"==typeof t}},33858:(t,e,r)=>{"use strict";r.d(e,{A:()=>u});var i=r(88496),n=r(5254),o=r(53098),s={};s["[object Float32Array]"]=s["[object Float64Array]"]=s["[object Int8Array]"]=s["[object Int16Array]"]=s["[object Int32Array]"]=s["[object Uint8Array]"]=s["[object Uint8ClampedArray]"]=s["[object Uint16Array]"]=s["[object Uint32Array]"]=!0,s["[object Arguments]"]=s["[object Array]"]=s["[object ArrayBuffer]"]=s["[object Boolean]"]=s["[object DataView]"]=s["[object Date]"]=s["[object Error]"]=s["[object Function]"]=s["[object Map]"]=s["[object Number]"]=s["[object Object]"]=s["[object RegExp]"]=s["[object Set]"]=s["[object String]"]=s["[object WeakMap]"]=!1;const a=function(t){return(0,o.A)(t)&&(0,n.A)(t.length)&&!!s[(0,i.A)(t)]};var l=r(52789),c=r(64841),h=c.A&&c.A.isTypedArray;const u=h?(0,l.A)(h):a},55615:(t,e,r)=>{"use strict";r.d(e,{A:()=>h});var i=r(83607),n=r(23149),o=r(97271);const s=function(t){var e=[];if(null!=t)for(var r in Object(t))e.push(r);return e};var a=Object.prototype.hasOwnProperty;const l=function(t){if(!(0,n.A)(t))return s(t);var e=(0,o.A)(t),r=[];for(var i in t)("constructor"!=i||!e&&a.call(t,i))&&r.push(i);return r};var c=r(38446);const h=function(t){return(0,c.A)(t)?(0,i.A)(t,!0):l(t)}},46632:(t,e,r)=>{"use strict";r.d(e,{A:()=>o});var i=r(29471);function n(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new TypeError("Expected a function");var r=function(){var i=arguments,n=e?e.apply(this,i):i[0],o=r.cache;if(o.has(n))return o.get(n);var s=t.apply(this,i);return r.cache=o.set(n,s)||o,s};return r.cache=new(n.Cache||i.A),r}n.Cache=i.A;const o=n},42837:(t,e,r)=>{"use strict";r.d(e,{A:()=>O});var i=r(11754),n=r(52528),o=r(66984);const s=function(t,e,r){(void 0!==r&&!(0,o.A)(t[e],r)||void 0===r&&!(e in t))&&(0,n.A)(t,e,r)};var a=r(4574),l=r(80154),c=r(1801),h=r(39759),u=r(18598),d=r(52274),p=r(92049),f=r(53533),g=r(99912),y=r(89610),m=r(23149),x=r(88496),b=r(15647),C=r(53098),k=Function.prototype,_=Object.prototype,w=k.toString,v=_.hasOwnProperty,T=w.call(Object);const S=function(t){if(!(0,C.A)(t)||"[object Object]"!=(0,x.A)(t))return!1;var e=(0,b.A)(t);if(null===e)return!0;var r=v.call(e,"constructor")&&e.constructor;return"function"==typeof r&&r instanceof r&&w.call(r)==T};var A=r(33858);const M=function(t,e){if(("constructor"!==e||"function"!=typeof t[e])&&"__proto__"!=e)return t[e]};var B=r(22031),L=r(55615);const F=function(t){return(0,B.A)(t,(0,L.A)(t))};const $=function(t,e,r,i,n,o,a){var x=M(t,r),b=M(e,r),C=a.get(b);if(C)s(t,r,C);else{var k=o?o(x,b,r+"",t,e,a):void 0,_=void 0===k;if(_){var w=(0,p.A)(b),v=!w&&(0,g.A)(b),T=!w&&!v&&(0,A.A)(b);k=b,w||v||T?(0,p.A)(x)?k=x:(0,f.A)(x)?k=(0,h.A)(x):v?(_=!1,k=(0,l.A)(b,!0)):T?(_=!1,k=(0,c.A)(b,!0)):k=[]:S(b)||(0,d.A)(b)?(k=x,(0,d.A)(x)?k=F(x):(0,m.A)(x)&&!(0,y.A)(x)||(k=(0,u.A)(b))):_=!1}_&&(a.set(b,k),n(k,b,i,o,a),a.delete(b)),s(t,r,k)}};const E=function t(e,r,n,o,l){e!==r&&(0,a.A)(r,(function(a,c){if(l||(l=new i.A),(0,m.A)(a))$(e,r,c,n,t,o,l);else{var h=o?o(M(e,c),a,c+"",e,r,l):void 0;void 0===h&&(h=a),s(e,c,h)}}),L.A)};const O=(0,r(3767).A)((function(t,e,r){E(t,e,r)}))},49139:(t,e,r)=>{"use strict";r.d(e,{IU:()=>Ft,gh:()=>Rt,nA:()=>Ge,U:()=>Lt,Jo:()=>Vt,jP:()=>qt,on:()=>Ye,Zk:()=>Qt,g0:()=>Xt,T_:()=>Pt,U_:()=>Ze,U7:()=>Ve,lC:()=>Jt});var i=r(48496),n=r(67895),o=r(57323),s=r(64994),a=r(20007);function l(t,e,r){if(t&&t.length){const[i,n]=e,o=Math.PI/180*r,s=Math.cos(o),a=Math.sin(o);for(const e of t){const[t,r]=e;e[0]=(t-i)*s-(r-n)*a+i,e[1]=(t-i)*a+(r-n)*s+n}}}function c(t,e){return t[0]===e[0]&&t[1]===e[1]}function h(t,e,r,i=1){const n=r,o=Math.max(e,.1),s=t[0]&&t[0][0]&&"number"==typeof t[0][0]?[t]:t,a=[0,0];if(n)for(const c of s)l(c,a,n);const h=function(t,e,r){const i=[];for(const h of t){const t=[...h];c(t[0],t[t.length-1])||t.push([t[0][0],t[0][1]]),t.length>2&&i.push(t)}const n=[];e=Math.max(e,.1);const o=[];for(const c of i)for(let t=0;tt.ymine.ymin?1:t.xe.x?1:t.ymax===e.ymax?0:(t.ymax-e.ymax)/Math.abs(t.ymax-e.ymax))),!o.length)return n;let s=[],a=o[0].ymin,l=0;for(;s.length||o.length;){if(o.length){let t=-1;for(let e=0;ea);e++)t=e;o.splice(0,t+1).forEach((t=>{s.push({s:a,edge:t})}))}if(s=s.filter((t=>!(t.edge.ymax<=a))),s.sort(((t,e)=>t.edge.x===e.edge.x?0:(t.edge.x-e.edge.x)/Math.abs(t.edge.x-e.edge.x))),(1!==r||l%e==0)&&s.length>1)for(let t=0;t=s.length)break;const r=s[t].edge,i=s[e].edge;n.push([[Math.round(r.x),a],[Math.round(i.x),a]])}a+=r,s.forEach((t=>{t.edge.x=t.edge.x+r*t.edge.islope})),l++}return n}(s,o,i);if(n){for(const t of s)l(t,a,-n);!function(t,e,r){const i=[];t.forEach((t=>i.push(...t))),l(i,e,r)}(h,a,-n)}return h}function u(t,e){var r;const i=e.hachureAngle+90;let n=e.hachureGap;n<0&&(n=4*e.strokeWidth),n=Math.round(Math.max(n,.1));let o=1;return e.roughness>=1&&((null===(r=e.randomizer)||void 0===r?void 0:r.next())||Math.random())>.7&&(o=n),h(t,n,i,o||1)}class d{constructor(t){this.helper=t}fillPolygons(t,e){return this._fillPolygons(t,e)}_fillPolygons(t,e){const r=u(t,e);return{type:"fillSketch",ops:this.renderLines(r,e)}}renderLines(t,e){const r=[];for(const i of t)r.push(...this.helper.doubleLineOps(i[0][0],i[0][1],i[1][0],i[1][1],e));return r}}function p(t){const e=t[0],r=t[1];return Math.sqrt(Math.pow(e[0]-r[0],2)+Math.pow(e[1]-r[1],2))}class f extends d{fillPolygons(t,e){let r=e.hachureGap;r<0&&(r=4*e.strokeWidth),r=Math.max(r,.1);const i=u(t,Object.assign({},e,{hachureGap:r})),n=Math.PI/180*e.hachureAngle,o=[],s=.5*r*Math.cos(n),a=.5*r*Math.sin(n);for(const[l,c]of i)p([l,c])&&o.push([[l[0]-s,l[1]+a],[...c]],[[l[0]+s,l[1]-a],[...c]]);return{type:"fillSketch",ops:this.renderLines(o,e)}}}class g extends d{fillPolygons(t,e){const r=this._fillPolygons(t,e),i=Object.assign({},e,{hachureAngle:e.hachureAngle+90}),n=this._fillPolygons(t,i);return r.ops=r.ops.concat(n.ops),r}}class y{constructor(t){this.helper=t}fillPolygons(t,e){const r=u(t,e=Object.assign({},e,{hachureAngle:0}));return this.dotsOnLines(r,e)}dotsOnLines(t,e){const r=[];let i=e.hachureGap;i<0&&(i=4*e.strokeWidth),i=Math.max(i,.1);let n=e.fillWeight;n<0&&(n=e.strokeWidth/2);const o=i/4;for(const s of t){const t=p(s),a=t/i,l=Math.ceil(a)-1,c=t-l*i,h=(s[0][0]+s[1][0])/2-i/4,u=Math.min(s[0][1],s[1][1]);for(let s=0;s{const o=p(t),s=Math.floor(o/(r+i)),a=(o+i-s*(r+i))/2;let l=t[0],c=t[1];l[0]>c[0]&&(l=t[1],c=t[0]);const h=Math.atan((c[1]-l[1])/(c[0]-l[0]));for(let u=0;u{const n=p(t),o=Math.round(n/(2*e));let s=t[0],a=t[1];s[0]>a[0]&&(s=t[1],a=t[0]);const l=Math.atan((a[1]-s[1])/(a[0]-s[0]));for(let c=0;ci%2?t+r:t+e));o.push({key:"C",data:t}),e=t[4],r=t[5];break}case"Q":o.push({key:"Q",data:[...a]}),e=a[2],r=a[3];break;case"q":{const t=a.map(((t,i)=>i%2?t+r:t+e));o.push({key:"Q",data:t}),e=t[2],r=t[3];break}case"A":o.push({key:"A",data:[...a]}),e=a[5],r=a[6];break;case"a":e+=a[5],r+=a[6],o.push({key:"A",data:[a[0],a[1],a[2],a[3],a[4],e,r]});break;case"H":o.push({key:"H",data:[...a]}),e=a[0];break;case"h":e+=a[0],o.push({key:"H",data:[e]});break;case"V":o.push({key:"V",data:[...a]}),r=a[0];break;case"v":r+=a[0],o.push({key:"V",data:[r]});break;case"S":o.push({key:"S",data:[...a]}),e=a[2],r=a[3];break;case"s":{const t=a.map(((t,i)=>i%2?t+r:t+e));o.push({key:"S",data:t}),e=t[2],r=t[3];break}case"T":o.push({key:"T",data:[...a]}),e=a[0],r=a[1];break;case"t":e+=a[0],r+=a[1],o.push({key:"T",data:[e,r]});break;case"Z":case"z":o.push({key:"Z",data:[]}),e=i,r=n}return o}function M(t){const e=[];let r="",i=0,n=0,o=0,s=0,a=0,l=0;for(const{key:c,data:h}of t){switch(c){case"M":e.push({key:"M",data:[...h]}),[i,n]=h,[o,s]=h;break;case"C":e.push({key:"C",data:[...h]}),i=h[4],n=h[5],a=h[2],l=h[3];break;case"L":e.push({key:"L",data:[...h]}),[i,n]=h;break;case"H":i=h[0],e.push({key:"L",data:[i,n]});break;case"V":n=h[0],e.push({key:"L",data:[i,n]});break;case"S":{let t=0,o=0;"C"===r||"S"===r?(t=i+(i-a),o=n+(n-l)):(t=i,o=n),e.push({key:"C",data:[t,o,...h]}),a=h[0],l=h[1],i=h[2],n=h[3];break}case"T":{const[t,o]=h;let s=0,c=0;"Q"===r||"T"===r?(s=i+(i-a),c=n+(n-l)):(s=i,c=n);const u=i+2*(s-i)/3,d=n+2*(c-n)/3,p=t+2*(s-t)/3,f=o+2*(c-o)/3;e.push({key:"C",data:[u,d,p,f,t,o]}),a=s,l=c,i=t,n=o;break}case"Q":{const[t,r,o,s]=h,c=i+2*(t-i)/3,u=n+2*(r-n)/3,d=o+2*(t-o)/3,p=s+2*(r-s)/3;e.push({key:"C",data:[c,u,d,p,o,s]}),a=t,l=r,i=o,n=s;break}case"A":{const t=Math.abs(h[0]),r=Math.abs(h[1]),o=h[2],s=h[3],a=h[4],l=h[5],c=h[6];0===t||0===r?(e.push({key:"C",data:[i,n,l,c,l,c]}),i=l,n=c):i===l&&n===c||(L(i,n,l,c,t,r,o,s,a).forEach((function(t){e.push({key:"C",data:t})})),i=l,n=c);break}case"Z":e.push({key:"Z",data:[]}),i=o,n=s}r=c}return e}function B(t,e,r){return[t*Math.cos(r)-e*Math.sin(r),t*Math.sin(r)+e*Math.cos(r)]}function L(t,e,r,i,n,o,s,a,l,c){const h=(u=s,Math.PI*u/180);var u;let d=[],p=0,f=0,g=0,y=0;if(c)[p,f,g,y]=c;else{[t,e]=B(t,e,-h),[r,i]=B(r,i,-h);const s=(t-r)/2,c=(e-i)/2;let u=s*s/(n*n)+c*c/(o*o);u>1&&(u=Math.sqrt(u),n*=u,o*=u);const d=n*n,m=o*o,x=d*m-d*c*c-m*s*s,b=d*c*c+m*s*s,C=(a===l?-1:1)*Math.sqrt(Math.abs(x/b));g=C*n*c/o+(t+r)/2,y=C*-o*s/n+(e+i)/2,p=Math.asin(parseFloat(((e-y)/o).toFixed(9))),f=Math.asin(parseFloat(((i-y)/o).toFixed(9))),tf&&(p-=2*Math.PI),!l&&f>p&&(f-=2*Math.PI)}let m=f-p;if(Math.abs(m)>120*Math.PI/180){const t=f,e=r,a=i;f=l&&f>p?p+120*Math.PI/180*1:p+120*Math.PI/180*-1,d=L(r=g+n*Math.cos(f),i=y+o*Math.sin(f),e,a,n,o,s,0,l,[f,t,g,y])}m=f-p;const x=Math.cos(p),b=Math.sin(p),C=Math.cos(f),k=Math.sin(f),_=Math.tan(m/4),w=4/3*n*_,v=4/3*o*_,T=[t,e],S=[t+w*b,e-v*x],A=[r+w*k,i-v*C],M=[r,i];if(S[0]=2*T[0]-S[0],S[1]=2*T[1]-S[1],c)return[S,A,M].concat(d);{d=[S,A,M].concat(d);const t=[];for(let e=0;e2){const n=[];for(let e=0;e2*Math.PI&&(p=0,f=2*Math.PI);const g=2*Math.PI/l.curveStepCount,y=Math.min(g/2,(f-p)/2),m=Z(y,c,h,u,d,p,f,1,l);if(!l.disableMultiStroke){const t=Z(y,c,h,u,d,p,f,1.5,l);m.push(...t)}return s&&(a?m.push(...U(c,h,c+u*Math.cos(p),h+d*Math.sin(p),l),...U(c,h,c+u*Math.cos(f),h+d*Math.sin(f),l)):m.push({op:"lineTo",data:[c,h]},{op:"lineTo",data:[c+u*Math.cos(p),h+d*Math.sin(p)]})),{type:"path",ops:m}}function N(t,e){const r=M(A(S(t))),i=[];let n=[0,0],o=[0,0];for(const{key:s,data:a}of r)switch(s){case"M":o=[a[0],a[1]],n=[a[0],a[1]];break;case"L":i.push(...U(o[0],o[1],a[0],a[1],e)),o=[a[0],a[1]];break;case"C":{const[t,r,n,s,l,c]=a;i.push(...X(t,r,n,s,l,c,o,e)),o=[l,c];break}case"Z":i.push(...U(o[0],o[1],n[0],n[1],e)),o=[n[0],n[1]]}return{type:"path",ops:i}}function q(t,e){const r=[];for(const i of t)if(i.length){const t=e.maxRandomnessOffset||0,n=i.length;if(n>2){r.push({op:"move",data:[i[0][0]+W(t,e),i[0][1]+W(t,e)]});for(let o=1;o500?.4:-.0016668*l+1.233334;let h=n.maxRandomnessOffset||0;h*h*100>a&&(h=l/10);const u=h/2,d=.2+.2*K(n);let p=n.bowing*n.maxRandomnessOffset*(i-e)/200,f=n.bowing*n.maxRandomnessOffset*(t-r)/200;p=W(p,n,c),f=W(f,n,c);const g=[],y=()=>W(u,n,c),m=()=>W(h,n,c),x=n.preserveVertices;return o&&(s?g.push({op:"move",data:[t+(x?0:y()),e+(x?0:y())]}):g.push({op:"move",data:[t+(x?0:W(h,n,c)),e+(x?0:W(h,n,c))]})),s?g.push({op:"bcurveTo",data:[p+t+(r-t)*d+y(),f+e+(i-e)*d+y(),p+t+2*(r-t)*d+y(),f+e+2*(i-e)*d+y(),r+(x?0:y()),i+(x?0:y())]}):g.push({op:"bcurveTo",data:[p+t+(r-t)*d+m(),f+e+(i-e)*d+m(),p+t+2*(r-t)*d+m(),f+e+2*(i-e)*d+m(),r+(x?0:m()),i+(x?0:m())]}),g}function Y(t,e,r){if(!t.length)return[];const i=[];i.push([t[0][0]+W(e,r),t[0][1]+W(e,r)]),i.push([t[0][0]+W(e,r),t[0][1]+W(e,r)]);for(let n=1;n3){const o=[],s=1-r.curveTightness;n.push({op:"move",data:[t[1][0],t[1][1]]});for(let e=1;e+21&&n.push(r)):n.push(r),n.push(t[e+3])}else{const i=.5,o=t[e+0],s=t[e+1],a=t[e+2],l=t[e+3],c=rt(o,s,i),h=rt(s,a,i),u=rt(a,l,i),d=rt(c,h,i),p=rt(h,u,i),f=rt(d,p,i);it([o,c,d,f],0,r,n),it([f,p,u,l],0,r,n)}var o,s;return n}function nt(t,e){return ot(t,0,t.length,e)}function ot(t,e,r,i,n){const o=n||[],s=t[e],a=t[r-1];let l=0,c=1;for(let h=e+1;hl&&(l=e,c=h)}return Math.sqrt(l)>i?(ot(t,e,c+1,i,o),ot(t,c,r,i,o)):(o.length||o.push(s),o.push(a)),o}function st(t,e=.15,r){const i=[],n=(t.length-1)/3;for(let o=0;o0?ot(i,0,i.length,r):i}const at="none";class lt{constructor(t){this.defaultOptions={maxRandomnessOffset:2,roughness:1,bowing:1,stroke:"#000",strokeWidth:1,curveTightness:0,curveFitting:.95,curveStepCount:9,fillStyle:"hachure",fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,seed:0,disableMultiStroke:!1,disableMultiStrokeFill:!1,preserveVertices:!1,fillShapeRoughnessGain:.8},this.config=t||{},this.config.options&&(this.defaultOptions=this._o(this.config.options))}static newSeed(){return Math.floor(Math.random()*2**31)}_o(t){return t?Object.assign({},this.defaultOptions,t):this.defaultOptions}_d(t,e,r){return{shape:t,sets:e||[],options:r||this.defaultOptions}}line(t,e,r,i,n){const o=this._o(n);return this._d("line",[$(t,e,r,i,o)],o)}rectangle(t,e,r,i,n){const o=this._o(n),s=[],a=function(t,e,r,i,n){return function(t,e){return E(t,!0,e)}([[t,e],[t+r,e],[t+r,e+i],[t,e+i]],n)}(t,e,r,i,o);if(o.fill){const n=[[t,e],[t+r,e],[t+r,e+i],[t,e+i]];"solid"===o.fillStyle?s.push(q([n],o)):s.push(z([n],o))}return o.stroke!==at&&s.push(a),this._d("rectangle",s,o)}ellipse(t,e,r,i,n){const o=this._o(n),s=[],a=D(r,i,o),l=I(t,e,o,a);if(o.fill)if("solid"===o.fillStyle){const r=I(t,e,o,a).opset;r.type="fillPath",s.push(r)}else s.push(z([l.estimatedPoints],o));return o.stroke!==at&&s.push(l.opset),this._d("ellipse",s,o)}circle(t,e,r,i){const n=this.ellipse(t,e,r,r,i);return n.shape="circle",n}linearPath(t,e){const r=this._o(e);return this._d("linearPath",[E(t,!1,r)],r)}arc(t,e,r,i,n,o,s=!1,a){const l=this._o(a),c=[],h=R(t,e,r,i,n,o,s,!0,l);if(s&&l.fill)if("solid"===l.fillStyle){const s=Object.assign({},l);s.disableMultiStroke=!0;const a=R(t,e,r,i,n,o,!0,!1,s);a.type="fillPath",c.push(a)}else c.push(function(t,e,r,i,n,o,s){const a=t,l=e;let c=Math.abs(r/2),h=Math.abs(i/2);c+=W(.01*c,s),h+=W(.01*h,s);let u=n,d=o;for(;u<0;)u+=2*Math.PI,d+=2*Math.PI;d-u>2*Math.PI&&(u=0,d=2*Math.PI);const p=(d-u)/s.curveStepCount,f=[];for(let g=u;g<=d;g+=p)f.push([a+c*Math.cos(g),l+h*Math.sin(g)]);return f.push([a+c*Math.cos(d),l+h*Math.sin(d)]),f.push([a,l]),z([f],s)}(t,e,r,i,n,o,l));return l.stroke!==at&&c.push(h),this._d("arc",c,l)}curve(t,e){const r=this._o(e),i=[],n=O(t,r);if(r.fill&&r.fill!==at)if("solid"===r.fillStyle){const e=O(t,Object.assign(Object.assign({},r),{disableMultiStroke:!0,roughness:r.roughness?r.roughness+r.fillShapeRoughnessGain:0}));i.push({type:"fillPath",ops:this._mergedShape(e.ops)})}else{const e=[],n=t;if(n.length){const t="number"==typeof n[0][0]?[n]:n;for(const i of t)i.length<3?e.push(...i):3===i.length?e.push(...st(J([i[0],i[0],i[1],i[2]]),10,(1+r.roughness)/2)):e.push(...st(J(i),10,(1+r.roughness)/2))}e.length&&i.push(z([e],r))}return r.stroke!==at&&i.push(n),this._d("curve",i,r)}polygon(t,e){const r=this._o(e),i=[],n=E(t,!0,r);return r.fill&&("solid"===r.fillStyle?i.push(q([t],r)):i.push(z([t],r))),r.stroke!==at&&i.push(n),this._d("polygon",i,r)}path(t,e){const r=this._o(e),i=[];if(!t)return this._d("path",i,r);t=(t||"").replace(/\n/g," ").replace(/(-\s)/g,"-").replace("/(ss)/g"," ");const n=r.fill&&"transparent"!==r.fill&&r.fill!==at,o=r.stroke!==at,s=!!(r.simplification&&r.simplification<1),a=function(t,e,r){const i=M(A(S(t))),n=[];let o=[],s=[0,0],a=[];const l=()=>{a.length>=4&&o.push(...st(a,1)),a=[]},c=()=>{l(),o.length&&(n.push(o),o=[])};for(const{key:u,data:d}of i)switch(u){case"M":c(),s=[d[0],d[1]],o.push(s);break;case"L":l(),o.push([d[0],d[1]]);break;case"C":if(!a.length){const t=o.length?o[o.length-1]:s;a.push([t[0],t[1]])}a.push([d[0],d[1]]),a.push([d[2],d[3]]),a.push([d[4],d[5]]);break;case"Z":l(),o.push([s[0],s[1]])}if(c(),!r)return n;const h=[];for(const u of n){const t=nt(u,r);t.length&&h.push(t)}return h}(t,0,s?4-4*(r.simplification||1):(1+r.roughness)/2),l=N(t,r);if(n)if("solid"===r.fillStyle)if(1===a.length){const e=N(t,Object.assign(Object.assign({},r),{disableMultiStroke:!0,roughness:r.roughness?r.roughness+r.fillShapeRoughnessGain:0}));i.push({type:"fillPath",ops:this._mergedShape(e.ops)})}else i.push(q(a,r));else i.push(z(a,r));return o&&(s?a.forEach((t=>{i.push(E(t,!1,r))})):i.push(l)),this._d("path",i,r)}opsToPath(t,e){let r="";for(const i of t.ops){const t="number"==typeof e&&e>=0?i.data.map((t=>+t.toFixed(e))):i.data;switch(i.op){case"move":r+=`M${t[0]} ${t[1]} `;break;case"bcurveTo":r+=`C${t[0]} ${t[1]}, ${t[2]} ${t[3]}, ${t[4]} ${t[5]} `;break;case"lineTo":r+=`L${t[0]} ${t[1]} `}}return r.trim()}toPaths(t){const e=t.sets||[],r=t.options||this.defaultOptions,i=[];for(const n of e){let t=null;switch(n.type){case"path":t={d:this.opsToPath(n),stroke:r.stroke,strokeWidth:r.strokeWidth,fill:at};break;case"fillPath":t={d:this.opsToPath(n),stroke:at,strokeWidth:0,fill:r.fill||at};break;case"fillSketch":t=this.fillSketch(n,r)}t&&i.push(t)}return i}fillSketch(t,e){let r=e.fillWeight;return r<0&&(r=e.strokeWidth/2),{d:this.opsToPath(t),stroke:e.fill||at,strokeWidth:r,fill:at}}_mergedShape(t){return t.filter(((t,e)=>0===e||"move"!==t.op))}}const ct="http://www.w3.org/2000/svg";class ht{constructor(t,e){this.svg=t,this.gen=new lt(e)}draw(t){const e=t.sets||[],r=t.options||this.getDefaultOptions(),i=this.svg.ownerDocument||window.document,n=i.createElementNS(ct,"g"),o=t.options.fixedDecimalPlaceDigits;for(const s of e){let e=null;switch(s.type){case"path":e=i.createElementNS(ct,"path"),e.setAttribute("d",this.opsToPath(s,o)),e.setAttribute("stroke",r.stroke),e.setAttribute("stroke-width",r.strokeWidth+""),e.setAttribute("fill","none"),r.strokeLineDash&&e.setAttribute("stroke-dasharray",r.strokeLineDash.join(" ").trim()),r.strokeLineDashOffset&&e.setAttribute("stroke-dashoffset",`${r.strokeLineDashOffset}`);break;case"fillPath":e=i.createElementNS(ct,"path"),e.setAttribute("d",this.opsToPath(s,o)),e.setAttribute("stroke","none"),e.setAttribute("stroke-width","0"),e.setAttribute("fill",r.fill||""),"curve"!==t.shape&&"polygon"!==t.shape||e.setAttribute("fill-rule","evenodd");break;case"fillSketch":e=this.fillSketch(i,s,r)}e&&n.appendChild(e)}return n}fillSketch(t,e,r){let i=r.fillWeight;i<0&&(i=r.strokeWidth/2);const n=t.createElementNS(ct,"path");return n.setAttribute("d",this.opsToPath(e,r.fixedDecimalPlaceDigits)),n.setAttribute("stroke",r.fill||""),n.setAttribute("stroke-width",i+""),n.setAttribute("fill","none"),r.fillLineDash&&n.setAttribute("stroke-dasharray",r.fillLineDash.join(" ").trim()),r.fillLineDashOffset&&n.setAttribute("stroke-dashoffset",`${r.fillLineDashOffset}`),n}get generator(){return this.gen}getDefaultOptions(){return this.gen.defaultOptions}opsToPath(t,e){return this.gen.opsToPath(t,e)}line(t,e,r,i,n){const o=this.gen.line(t,e,r,i,n);return this.draw(o)}rectangle(t,e,r,i,n){const o=this.gen.rectangle(t,e,r,i,n);return this.draw(o)}ellipse(t,e,r,i,n){const o=this.gen.ellipse(t,e,r,i,n);return this.draw(o)}circle(t,e,r,i){const n=this.gen.circle(t,e,r,i);return this.draw(n)}linearPath(t,e){const r=this.gen.linearPath(t,e);return this.draw(r)}polygon(t,e){const r=this.gen.polygon(t,e);return this.draw(r)}arc(t,e,r,i,n,o,s=!1,a){const l=this.gen.arc(t,e,r,i,n,o,s,a);return this.draw(l)}curve(t,e){const r=this.gen.curve(t,e);return this.draw(r)}path(t,e){const r=this.gen.path(t,e);return this.draw(r)}}var ut=(t,e)=>new ht(t,e),dt=(0,s.K2)(((t,e)=>{var r,i,n=t.x,o=t.y,s=e.x-n,a=e.y-o,l=t.width/2,c=t.height/2;return Math.abs(a)*l>Math.abs(s)*c?(a<0&&(c=-c),r=0===a?0:c*s/a,i=c):(s<0&&(l=-l),r=l,i=0===s?0:l*a/s),{x:n+r,y:o+i}}),"intersectRect"),pt=dt;function ft(t,e){e&&t.attr("style",e)}async function gt(t){const e=(0,a.Ltv)(document.createElementNS("http://www.w3.org/2000/svg","foreignObject")),r=e.append("xhtml:div");let i=t.label;t.label&&(0,s.Wi)(t.label)&&(i=await(0,s.VJ)(t.label.replace(s.Y2.lineBreakRegex,"\n"),(0,s.D7)()));const n=t.isNode?"nodeLabel":"edgeLabel";return r.html('"+i+""),ft(r,t.labelStyle),r.style("display","inline-block"),r.style("padding-right","1px"),r.style("white-space","nowrap"),r.attr("xmlns","http://www.w3.org/1999/xhtml"),e.node()}(0,s.K2)(ft,"applyStyle"),(0,s.K2)(gt,"addHtmlLabel");var yt=(0,s.K2)((async(t,e,r,i)=>{let n=t||"";if("object"==typeof n&&(n=n[0]),(0,s._3)((0,s.D7)().flowchart.htmlLabels)){n=n.replace(/\\n|\n/g,"
"),s.Rm.info("vertexText"+n);const t={isNode:i,label:(0,o.Sm)(n).replace(/fa[blrs]?:fa-[\w-]+/g,(t=>``)),labelStyle:e?e.replace("fill:","color:"):e};return await gt(t)}{const t=document.createElementNS("http://www.w3.org/2000/svg","text");t.setAttribute("style",e.replace("color:","fill:"));let i=[];i="string"==typeof n?n.split(/\\n|\n|/gi):Array.isArray(n)?n:[];for(const e of i){const i=document.createElementNS("http://www.w3.org/2000/svg","tspan");i.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),i.setAttribute("dy","1em"),i.setAttribute("x","0"),r?i.setAttribute("class","title-row"):i.setAttribute("class","row"),i.textContent=e.trim(),t.appendChild(i)}return t}}),"createLabel"),mt=yt,xt=(0,s.K2)(((t,e,r,i,n)=>["M",t+n,e,"H",t+r-n,"A",n,n,0,0,1,t+r,e+n,"V",e+i-n,"A",n,n,0,0,1,t+r-n,e+i,"H",t+n,"A",n,n,0,0,1,t,e+i-n,"V",e+n,"A",n,n,0,0,1,t+n,e,"Z"].join(" ")),"createRoundedRectPathD"),bt=(0,s.K2)((t=>{const{handDrawnSeed:e}=(0,s.D7)();return{fill:t,hachureAngle:120,hachureGap:4,fillWeight:2,roughness:.7,stroke:t,seed:e}}),"solidStateFill"),Ct=(0,s.K2)((t=>{const e=kt([...t.cssCompiledStyles||[],...t.cssStyles||[]]);return{stylesMap:e,stylesArray:[...e]}}),"compileStyles"),kt=(0,s.K2)((t=>{const e=new Map;return t.forEach((t=>{const[r,i]=t.split(":");e.set(r.trim(),i?.trim())})),e}),"styles2Map"),_t=(0,s.K2)((t=>{const{stylesArray:e}=Ct(t),r=[],i=[],n=[],o=[];return e.forEach((t=>{const e=t[0];"color"===e||"font-size"===e||"font-family"===e||"font-weight"===e||"font-style"===e||"text-decoration"===e||"text-align"===e||"text-transform"===e||"line-height"===e||"letter-spacing"===e||"word-spacing"===e||"text-shadow"===e||"text-overflow"===e||"white-space"===e||"word-wrap"===e||"word-break"===e||"overflow-wrap"===e||"hyphens"===e?r.push(t.join(":")+" !important"):(i.push(t.join(":")+" !important"),e.includes("stroke")&&n.push(t.join(":")+" !important"),"fill"===e&&o.push(t.join(":")+" !important"))})),{labelStyles:r.join(";"),nodeStyles:i.join(";"),stylesArray:e,borderStyles:n,backgroundStyles:o}}),"styles2String"),wt=(0,s.K2)(((t,e)=>{const{themeVariables:r,handDrawnSeed:i}=(0,s.D7)(),{nodeBorder:n,mainBkg:o}=r,{stylesMap:a}=Ct(t);return Object.assign({roughness:.7,fill:a.get("fill")||o,fillStyle:"hachure",fillWeight:4,stroke:a.get("stroke")||n,seed:i,strokeWidth:1.3},e)}),"userNodeOverrides"),vt=(0,s.K2)((async(t,e)=>{s.Rm.info("Creating subgraph rect for ",e.id,e);const r=(0,s.D7)(),{themeVariables:o,handDrawnSeed:l}=r,{clusterBkg:c,clusterBorder:h}=o,{labelStyles:u,nodeStyles:d,borderStyles:p,backgroundStyles:f}=_t(e),g=t.insert("g").attr("class","cluster "+e.cssClasses).attr("id",e.id).attr("data-look",e.look),y=(0,s._3)(r.flowchart.htmlLabels),m=g.insert("g").attr("class","cluster-label "),x=await(0,n.GZ)(m,e.label,{style:e.labelStyle,useHtmlLabels:y,isNode:!0});let b=x.getBBox();if((0,s._3)(r.flowchart.htmlLabels)){const t=x.children[0],e=(0,a.Ltv)(x);b=t.getBoundingClientRect(),e.attr("width",b.width),e.attr("height",b.height)}const C=e.width<=b.width+e.padding?b.width+e.padding:e.width;e.width<=b.width+e.padding?e.diff=(C-e.width)/2-e.padding:e.diff=-e.padding;const k=e.height,_=e.x-C/2,w=e.y-k/2;let v;if(s.Rm.trace("Data ",e,JSON.stringify(e)),"handDrawn"===e.look){const t=ut(g),r=wt(e,{roughness:.7,fill:c,stroke:h,fillWeight:3,seed:l}),i=t.path(xt(_,w,C,k,0),r);v=g.insert((()=>(s.Rm.debug("Rough node insert CXC",i),i)),":first-child"),v.select("path:nth-child(2)").attr("style",p.join(";")),v.select("path").attr("style",f.join(";").replace("fill","stroke"))}else v=g.insert("rect",":first-child"),v.attr("style",d).attr("rx",e.rx).attr("ry",e.ry).attr("x",_).attr("y",w).attr("width",C).attr("height",k);const{subGraphTitleTopMargin:T}=(0,i.O)(r);if(m.attr("transform",`translate(${e.x-b.width/2}, ${e.y-e.height/2+T})`),u){const t=m.select("span");t&&t.attr("style",u)}const S=v.node().getBBox();return e.offsetX=0,e.width=S.width,e.height=S.height,e.offsetY=b.height-e.padding/2,e.intersect=function(t){return pt(e,t)},{cluster:g,labelBBox:b}}),"rect"),Tt=(0,s.K2)(((t,e)=>{const r=t.insert("g").attr("class","note-cluster").attr("id",e.id),i=r.insert("rect",":first-child"),n=0*e.padding,o=n/2;i.attr("rx",e.rx).attr("ry",e.ry).attr("x",e.x-e.width/2-o).attr("y",e.y-e.height/2-o).attr("width",e.width+n).attr("height",e.height+n).attr("fill","none");const s=i.node().getBBox();return e.width=s.width,e.height=s.height,e.intersect=function(t){return pt(e,t)},{cluster:r,labelBBox:{width:0,height:0}}}),"noteGroup"),St=(0,s.K2)((async(t,e)=>{const r=(0,s.D7)(),{themeVariables:i,handDrawnSeed:n}=r,{altBackground:o,compositeBackground:l,compositeTitleBackground:c,nodeBorder:h}=i,u=t.insert("g").attr("class",e.cssClasses).attr("id",e.id).attr("data-id",e.id).attr("data-look",e.look),d=u.insert("g",":first-child"),p=u.insert("g").attr("class","cluster-label");let f=u.append("rect");const g=p.node().appendChild(await mt(e.label,e.labelStyle,void 0,!0));let y=g.getBBox();if((0,s._3)(r.flowchart.htmlLabels)){const t=g.children[0],e=(0,a.Ltv)(g);y=t.getBoundingClientRect(),e.attr("width",y.width),e.attr("height",y.height)}const m=0*e.padding,x=m/2,b=(e.width<=y.width+e.padding?y.width+e.padding:e.width)+m;e.width<=y.width+e.padding?e.diff=(b-e.width)/2-e.padding:e.diff=-e.padding;const C=e.height+m,k=e.height+m-y.height-6,_=e.x-b/2,w=e.y-C/2;e.width=b;const v=e.y-e.height/2-x+y.height+2;let T;if("handDrawn"===e.look){const t=e.cssClasses.includes("statediagram-cluster-alt"),r=ut(u),i=e.rx||e.ry?r.path(xt(_,w,b,C,10),{roughness:.7,fill:c,fillStyle:"solid",stroke:h,seed:n}):r.rectangle(_,w,b,C,{seed:n});T=u.insert((()=>i),":first-child");const s=r.rectangle(_,v,b,k,{fill:t?o:l,fillStyle:t?"hachure":"solid",stroke:h,seed:n});T=u.insert((()=>i),":first-child"),f=u.insert((()=>s))}else{T=d.insert("rect",":first-child");const t="outer";T.attr("class",t).attr("x",_).attr("y",w).attr("width",b).attr("height",C).attr("data-look",e.look),f.attr("class","inner").attr("x",_).attr("y",v).attr("width",b).attr("height",k)}p.attr("transform",`translate(${e.x-y.width/2}, ${w+1-((0,s._3)(r.flowchart.htmlLabels)?0:3)})`);const S=T.node().getBBox();return e.height=S.height,e.offsetX=0,e.offsetY=y.height-e.padding/2,e.labelBBox=y,e.intersect=function(t){return pt(e,t)},{cluster:u,labelBBox:y}}),"roundedWithTitle"),At=(0,s.K2)(((t,e)=>{const r=(0,s.D7)(),{themeVariables:i,handDrawnSeed:n}=r,{nodeBorder:o}=i,a=t.insert("g").attr("class",e.cssClasses).attr("id",e.id).attr("data-look",e.look),l=a.insert("g",":first-child"),c=0*e.padding,h=e.width+c;e.diff=-e.padding;const u=e.height+c,d=e.x-h/2,p=e.y-u/2;let f;if(e.width=h,"handDrawn"===e.look){const t=ut(a).rectangle(d,p,h,u,{fill:"lightgrey",roughness:.5,strokeLineDash:[5],stroke:o,seed:n});f=a.insert((()=>t),":first-child")}else{f=l.insert("rect",":first-child");const t="divider";f.attr("class",t).attr("x",d).attr("y",p).attr("width",h).attr("height",u).attr("data-look",e.look)}const g=f.node().getBBox();return e.height=g.height,e.offsetX=0,e.offsetY=0,e.intersect=function(t){return pt(e,t)},{cluster:a,labelBBox:{}}}),"divider"),Mt={rect:vt,squareRect:vt,roundedWithTitle:St,noteGroup:Tt,divider:At},Bt=new Map,Lt=(0,s.K2)((async(t,e)=>{const r=e.shape||"rect",i=await Mt[r](t,e);return Bt.set(e.id,i),i}),"insertCluster"),Ft=(0,s.K2)((()=>{Bt=new Map}),"clear"),$t=(0,s.K2)(((t,e,r,i,n)=>{e.arrowTypeStart&&Ot(t,"start",e.arrowTypeStart,r,i,n),e.arrowTypeEnd&&Ot(t,"end",e.arrowTypeEnd,r,i,n)}),"addEdgeMarkers"),Et={arrow_cross:"cross",arrow_point:"point",arrow_barb:"barb",arrow_circle:"circle",aggregation:"aggregation",extension:"extension",composition:"composition",dependency:"dependency",lollipop:"lollipop"},Ot=(0,s.K2)(((t,e,r,i,n,o)=>{const a=Et[r];if(!a)return void s.Rm.warn(`Unknown arrow type: ${r}`);const l="start"===e?"Start":"End";t.attr(`marker-${e}`,`url(${i}#${n}_${o}-${a}${l})`)}),"addEdgeMarker"),Dt=new Map,It=new Map,Rt=(0,s.K2)((()=>{Dt.clear(),It.clear()}),"clear"),Nt=(0,s.K2)((t=>t?t.reduce(((t,e)=>t+";"+e),""):""),"getLabelStyles"),qt=(0,s.K2)((async(t,e)=>{let r=(0,s._3)((0,s.D7)().flowchart.htmlLabels);const i=await(0,n.GZ)(t,e.label,{style:Nt(e.labelStyle),useHtmlLabels:r,addSvgBackground:!0,isNode:!1});s.Rm.info("abc82",e,e.labelType);const o=t.insert("g").attr("class","edgeLabel"),l=o.insert("g").attr("class","label");l.node().appendChild(i);let c,h=i.getBBox();if(r){const t=i.children[0],e=(0,a.Ltv)(i);h=t.getBoundingClientRect(),e.attr("width",h.width),e.attr("height",h.height)}if(l.attr("transform","translate("+-h.width/2+", "+-h.height/2+")"),Dt.set(e.id,o),e.width=h.width,e.height=h.height,e.startLabelLeft){const r=await mt(e.startLabelLeft,Nt(e.labelStyle)),i=t.insert("g").attr("class","edgeTerminals"),n=i.insert("g").attr("class","inner");c=n.node().appendChild(r);const o=r.getBBox();n.attr("transform","translate("+-o.width/2+", "+-o.height/2+")"),It.get(e.id)||It.set(e.id,{}),It.get(e.id).startLeft=i,zt(c,e.startLabelLeft)}if(e.startLabelRight){const r=await mt(e.startLabelRight,Nt(e.labelStyle)),i=t.insert("g").attr("class","edgeTerminals"),n=i.insert("g").attr("class","inner");c=i.node().appendChild(r),n.node().appendChild(r);const o=r.getBBox();n.attr("transform","translate("+-o.width/2+", "+-o.height/2+")"),It.get(e.id)||It.set(e.id,{}),It.get(e.id).startRight=i,zt(c,e.startLabelRight)}if(e.endLabelLeft){const r=await mt(e.endLabelLeft,Nt(e.labelStyle)),i=t.insert("g").attr("class","edgeTerminals"),n=i.insert("g").attr("class","inner");c=n.node().appendChild(r);const o=r.getBBox();n.attr("transform","translate("+-o.width/2+", "+-o.height/2+")"),i.node().appendChild(r),It.get(e.id)||It.set(e.id,{}),It.get(e.id).endLeft=i,zt(c,e.endLabelLeft)}if(e.endLabelRight){const r=await mt(e.endLabelRight,Nt(e.labelStyle)),i=t.insert("g").attr("class","edgeTerminals"),n=i.insert("g").attr("class","inner");c=n.node().appendChild(r);const o=r.getBBox();n.attr("transform","translate("+-o.width/2+", "+-o.height/2+")"),i.node().appendChild(r),It.get(e.id)||It.set(e.id,{}),It.get(e.id).endRight=i,zt(c,e.endLabelRight)}return i}),"insertEdgeLabel");function zt(t,e){(0,s.D7)().flowchart.htmlLabels&&t&&(t.style.width=9*e.length+"px",t.style.height="12px")}(0,s.K2)(zt,"setTerminalWidth");var Pt=(0,s.K2)(((t,e)=>{s.Rm.debug("Moving label abc88 ",t.id,t.label,Dt.get(t.id),e);let r=e.updatedPath?e.updatedPath:e.originalPath;const n=(0,s.D7)(),{subGraphTitleTotalMargin:a}=(0,i.O)(n);if(t.label){const i=Dt.get(t.id);let n=t.x,l=t.y;if(r){const i=o._K.calcLabelPosition(r);s.Rm.debug("Moving label "+t.label+" from (",n,",",l,") to (",i.x,",",i.y,") abc88"),e.updatedPath&&(n=i.x,l=i.y)}i.attr("transform",`translate(${n}, ${l+a/2})`)}if(t.startLabelLeft){const e=It.get(t.id).startLeft;let i=t.x,n=t.y;if(r){const e=o._K.calcTerminalLabelPosition(t.arrowTypeStart?10:0,"start_left",r);i=e.x,n=e.y}e.attr("transform",`translate(${i}, ${n})`)}if(t.startLabelRight){const e=It.get(t.id).startRight;let i=t.x,n=t.y;if(r){const e=o._K.calcTerminalLabelPosition(t.arrowTypeStart?10:0,"start_right",r);i=e.x,n=e.y}e.attr("transform",`translate(${i}, ${n})`)}if(t.endLabelLeft){const e=It.get(t.id).endLeft;let i=t.x,n=t.y;if(r){const e=o._K.calcTerminalLabelPosition(t.arrowTypeEnd?10:0,"end_left",r);i=e.x,n=e.y}e.attr("transform",`translate(${i}, ${n})`)}if(t.endLabelRight){const e=It.get(t.id).endRight;let i=t.x,n=t.y;if(r){const e=o._K.calcTerminalLabelPosition(t.arrowTypeEnd?10:0,"end_right",r);i=e.x,n=e.y}e.attr("transform",`translate(${i}, ${n})`)}}),"positionEdgeLabel"),Kt=(0,s.K2)(((t,e)=>{const r=t.x,i=t.y,n=Math.abs(e.x-r),o=Math.abs(e.y-i),s=t.width/2,a=t.height/2;return n>=s||o>=a}),"outsideNode"),jt=(0,s.K2)(((t,e,r)=>{s.Rm.debug(`intersection calc abc89:\n outsidePoint: ${JSON.stringify(e)}\n insidePoint : ${JSON.stringify(r)}\n node : x:${t.x} y:${t.y} w:${t.width} h:${t.height}`);const i=t.x,n=t.y,o=Math.abs(i-r.x),a=t.width/2;let l=r.xMath.abs(i-e.x)*c){let t=r.y{s.Rm.warn("abc88 cutPathAtIntersect",t,e);let r=[],i=t[0],n=!1;return t.forEach((t=>{if(s.Rm.info("abc88 checking point",t,e),Kt(e,t)||n)s.Rm.warn("abc88 outside",t,i),i=t,n||r.push(t);else{const o=jt(e,i,t);s.Rm.debug("abc88 inside",t,i,o),s.Rm.debug("abc88 intersection",o,e);let a=!1;r.forEach((t=>{a=a||t.x===o.x&&t.y===o.y})),r.some((t=>t.x===o.x&&t.y===o.y))?s.Rm.warn("abc88 no intersect",o,r):r.push(o),n=!0}})),s.Rm.debug("returning points",r),r}),"cutPathAtIntersect");function Ut(t){const e=[],r=[];for(let i=1;i5&&Math.abs(o.y-n.y)>5||n.y===o.y&&o.x===s.x&&Math.abs(o.x-n.x)>5&&Math.abs(o.y-s.y)>5)&&(e.push(o),r.push(i))}return{cornerPoints:e,cornerPointPositions:r}}(0,s.K2)(Ut,"extractCornerPoints");var Ht=(0,s.K2)((function(t,e,r){const i=e.x-t.x,n=e.y-t.y,o=r/Math.sqrt(i*i+n*n);return{x:e.x-o*i,y:e.y-o*n}}),"findAdjacentPoint"),Yt=(0,s.K2)((function(t){const{cornerPointPositions:e}=Ut(t),r=[];for(let i=0;i10&&Math.abs(n.y-e.y)>=10){s.Rm.debug("Corner point fixing",Math.abs(n.x-e.x),Math.abs(n.y-e.y));const t=5;d=o.x===a.x?{x:c<0?a.x-t+u:a.x+t-u,y:h<0?a.y-u:a.y+u}:{x:c<0?a.x-u:a.x+u,y:h<0?a.y-t+u:a.y+t-u}}else s.Rm.debug("Corner point skipping fixing",Math.abs(n.x-e.x),Math.abs(n.y-e.y));r.push(d,l)}else r.push(t[i]);return r}),"fixCorners"),Vt=(0,s.K2)((function(t,e,r,n,o,l,c){const{handDrawnSeed:h}=(0,s.D7)();let u=e.points,d=!1;const p=o;var f=l;f.intersect&&p.intersect&&(u=u.slice(1,e.points.length-1),u.unshift(p.intersect(u[0])),s.Rm.debug("Last point APA12",e.start,"--\x3e",e.end,u[u.length-1],f,f.intersect(u[u.length-1])),u.push(f.intersect(u[u.length-1]))),e.toCluster&&(s.Rm.info("to cluster abc88",r.get(e.toCluster)),u=Wt(e.points,r.get(e.toCluster).node),d=!0),e.fromCluster&&(s.Rm.debug("from cluster abc88",r.get(e.fromCluster),JSON.stringify(u,null,2)),u=Wt(u.reverse(),r.get(e.fromCluster).node).reverse(),d=!0);let g=u.filter((t=>!Number.isNaN(t.y)));g=Yt(g);let y=g[g.length-1];if(g.length>1){y=g[g.length-1];const t=g[g.length-2],e=(y.x-t.x)/2,r=(y.y-t.y)/2,i={x:t.x+e,y:t.y+r};g.splice(-1,0,i)}let m=a.qrM;e.curve&&(m=e.curve);const{x:x,y:b}=(0,i.R)(e),C=(0,a.n8j)().x(x).y(b).curve(m);let k,_;switch(e.thickness){case"normal":default:k="edge-thickness-normal";break;case"thick":k="edge-thickness-thick";break;case"invisible":k="edge-thickness-invisible"}switch(e.pattern){case"solid":default:k+=" edge-pattern-solid";break;case"dotted":k+=" edge-pattern-dotted";break;case"dashed":k+=" edge-pattern-dashed"}let w=C(g);const v=Array.isArray(e.style)?e.style:[e.style];if("handDrawn"===e.look){const r=ut(t);Object.assign([],g);const i=r.path(w,{roughness:.3,seed:h});k+=" transition",_=(0,a.Ltv)(i).select("path").attr("id",e.id).attr("class"," "+k+(e.classes?" "+e.classes:"")).attr("style",v?v.reduce(((t,e)=>t+";"+e),""):"");let n=_.attr("d");_.attr("d",n),t.node().appendChild(_.node())}else _=t.append("path").attr("d",w).attr("id",e.id).attr("class"," "+k+(e.classes?" "+e.classes:"")).attr("style",v?v.reduce(((t,e)=>t+";"+e),""):"");let T="";((0,s.D7)().flowchart.arrowMarkerAbsolute||(0,s.D7)().state.arrowMarkerAbsolute)&&(T=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,T=T.replace(/\(/g,"\\(").replace(/\)/g,"\\)")),s.Rm.info("arrowTypeStart",e.arrowTypeStart),s.Rm.info("arrowTypeEnd",e.arrowTypeEnd),$t(_,e,T,c,n);let S={};return d&&(S.updatedPath=u),S.originalPath=e.points,S}),"insertEdge"),Gt=(0,s.K2)(((t,e,r,i)=>{e.forEach((e=>{Zt[e](t,r,i)}))}),"insertMarkers"),Zt={extension:(0,s.K2)(((t,e,r)=>{s.Rm.trace("Making markers for ",r),t.append("defs").append("marker").attr("id",r+"_"+e+"-extensionStart").attr("class","marker extension "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-extensionEnd").attr("class","marker extension "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z")}),"extension"),composition:(0,s.K2)(((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-compositionStart").attr("class","marker composition "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-compositionEnd").attr("class","marker composition "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")}),"composition"),aggregation:(0,s.K2)(((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-aggregationStart").attr("class","marker aggregation "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-aggregationEnd").attr("class","marker aggregation "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")}),"aggregation"),dependency:(0,s.K2)(((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-dependencyStart").attr("class","marker dependency "+e).attr("refX",6).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",r+"_"+e+"-dependencyEnd").attr("class","marker dependency "+e).attr("refX",13).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")}),"dependency"),lollipop:(0,s.K2)(((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-lollipopStart").attr("class","marker lollipop "+e).attr("refX",13).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6),t.append("defs").append("marker").attr("id",r+"_"+e+"-lollipopEnd").attr("class","marker lollipop "+e).attr("refX",1).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6)}),"lollipop"),point:(0,s.K2)(((t,e,r)=>{t.append("marker").attr("id",r+"_"+e+"-pointEnd").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",8).attr("markerHeight",8).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),t.append("marker").attr("id",r+"_"+e+"-pointStart").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",4.5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",8).attr("markerHeight",8).attr("orient","auto").append("path").attr("d","M 0 5 L 10 10 L 10 0 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")}),"point"),circle:(0,s.K2)(((t,e,r)=>{t.append("marker").attr("id",r+"_"+e+"-circleEnd").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",11).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),t.append("marker").attr("id",r+"_"+e+"-circleStart").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",-1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")}),"circle"),cross:(0,s.K2)(((t,e,r)=>{t.append("marker").attr("id",r+"_"+e+"-crossEnd").attr("class","marker cross "+e).attr("viewBox","0 0 11 11").attr("refX",12).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),t.append("marker").attr("id",r+"_"+e+"-crossStart").attr("class","marker cross "+e).attr("viewBox","0 0 11 11").attr("refX",-1).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0")}),"cross"),barb:(0,s.K2)(((t,e,r)=>{t.append("defs").append("marker").attr("id",r+"_"+e+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","userSpaceOnUse").attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")}),"barb")},Xt=Gt,Qt=(0,s.K2)((async(t,e,r)=>{let i;const l=e.useHtmlLabels||(0,s._3)((0,s.D7)().flowchart.htmlLabels);i=r||"node default";const c=t.insert("g").attr("class",i).attr("id",e.domId||e.id),h=c.insert("g").attr("class","label").attr("style",e.labelStyle);let u,d;u=void 0===e.label?"":"string"==typeof e.label?e.label:e.label[0],d=await(0,n.GZ)(h,(0,s.jZ)((0,o.Sm)(u),(0,s.D7)()),{useHtmlLabels:l,width:e.width||(0,s.D7)().flowchart.wrappingWidth,cssClasses:"markdown-node-label",style:e.labelStyle});let p=d.getBBox();const f=e.padding/2;if((0,s._3)((0,s.D7)().flowchart.htmlLabels)){const t=d.children[0],e=(0,a.Ltv)(d),r=t.getElementsByTagName("img");if(r){const t=""===u.replace(/]*>/g,"").trim();await Promise.all([...r].map((e=>new Promise((r=>{function i(){if(e.style.display="flex",e.style.flexDirection="column",t){const t=(0,s.D7)().fontSize?(0,s.D7)().fontSize:window.getComputedStyle(document.body).fontSize,r=5,i=parseInt(t,10)*r+"px";e.style.minWidth=i,e.style.maxWidth=i}else e.style.width="100%";r(e)}(0,s.K2)(i,"setupImage"),setTimeout((()=>{e.complete&&i()})),e.addEventListener("error",i),e.addEventListener("load",i)})))))}p=t.getBoundingClientRect(),e.attr("width",p.width),e.attr("height",p.height)}return l?h.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"):h.attr("transform","translate(0, "+-p.height/2+")"),e.centerLabel&&h.attr("transform","translate("+-p.width/2+", "+-p.height/2+")"),h.insert("rect",":first-child"),{shapeSvg:c,bbox:p,halfPadding:f,label:h}}),"labelHelper"),Jt=(0,s.K2)(((t,e)=>{const r=e.node().getBBox();t.width=r.width,t.height=r.height}),"updateNodeBounds"),te=(0,s.K2)(((t,e)=>("handDrawn"===t.look?"rough-node":"node")+" "+t.cssClasses+" "+(e||"")),"getNodeClasses");function ee(t,e){return t.intersect(e)}(0,s.K2)(ee,"intersectNode");var re=ee;function ie(t,e,r,i){var n=t.x,o=t.y,s=n-i.x,a=o-i.y,l=Math.sqrt(e*e*a*a+r*r*s*s),c=Math.abs(e*r*s/l);i.x0}(0,s.K2)(ae,"intersectLine"),(0,s.K2)(le,"sameSign");var ce=ae;function he(t,e,r){let i=t.x,n=t.y,o=[],s=Number.POSITIVE_INFINITY,a=Number.POSITIVE_INFINITY;"function"==typeof e.forEach?e.forEach((function(t){s=Math.min(s,t.x),a=Math.min(a,t.y)})):(s=Math.min(s,e.x),a=Math.min(a,e.y));let l=i-t.width/2-s,c=n-t.height/2-a;for(let h=0;h1&&o.sort((function(t,e){let i=t.x-r.x,n=t.y-r.y,o=Math.sqrt(i*i+n*n),s=e.x-r.x,a=e.y-r.y,l=Math.sqrt(s*s+a*a);return o{const{labelStyles:i,nodeStyles:n}=_t(e);e.labelStyle=i;const{shapeSvg:o,bbox:s}=await Qt(t,e,te(e)),a=Math.max(s.width+2*r.labelPaddingX,e?.width||0),l=Math.max(s.height+2*r.labelPaddingY,e?.height||0),c=-a/2,h=-l/2;let u,{rx:d,ry:p}=e;const{cssStyles:f}=e;if(r?.rx&&r.ry&&(d=r.rx,p=r.ry),"handDrawn"===e.look){const t=ut(o),r=wt(e,{}),i=d||p?t.path(xt(c,h,a,l,d||0),r):t.rectangle(c,h,a,l,r);u=o.insert((()=>i),":first-child"),u.attr("class","basic label-container").attr("style",f)}else u=o.insert("rect",":first-child"),u.attr("class","basic label-container").attr("style",n).attr("rx",d).attr("data-id","abc").attr("data-et","node").attr("ry",p).attr("x",c).attr("y",h).attr("width",a).attr("height",l);return Jt(e,u),e.intersect=function(t){return ue.rect(e,t)},o}),"drawRect"),pe=(0,s.K2)((async(t,e)=>de(t,e,{rx:5,ry:5,classes:"flowchart-node"})),"state"),fe=(0,s.K2)((async(t,e)=>de(t,e,{rx:5,ry:5,classes:"",labelPaddingX:1*(e?.padding||0),labelPaddingY:1*(e?.padding||0)})),"roundedRect"),ge=(0,s.K2)((async(t,e)=>de(t,e,{rx:0,ry:0,classes:"",labelPaddingX:2*(e?.padding||0),labelPaddingY:1*(e?.padding||0)})),"squareRect"),ye=(0,s.K2)(((t,e)=>{const{themeVariables:r}=(0,s.D7)(),{lineColor:i}=r,n=t.insert("g").attr("class","node default").attr("id",e.domId||e.id);let o;if("handDrawn"===e.look){const t=ut(n).circle(0,0,14,bt(i));o=n.insert((()=>t))}else o=n.insert("circle",":first-child");return o.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),Jt(e,o),e.intersect=function(t){return ue.circle(e,7,t)},n}),"stateStart"),me=(0,s.K2)(((t,e)=>{const{themeVariables:r}=(0,s.D7)(),{lineColor:i}=r,n=t.insert("g").attr("class","node default").attr("id",e.domId||e.id);let o,a;if("handDrawn"===e.look){const t=ut(n),e=t.circle(0,0,14,{...bt(i),roughness:.5}),r=t.circle(0,0,5,{...bt(i),fillStyle:"solid"});o=n.insert((()=>e)),a=n.insert((()=>r))}else a=n.insert("circle",":first-child"),o=n.insert("circle",":first-child"),o.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),a.attr("class","state-end").attr("r",5).attr("width",10).attr("height",10);return Jt(e,o),e.intersect=function(t){return ue.circle(e,7,t)},n}),"stateEnd"),xe=(0,s.K2)(((t,e,r)=>{const{themeVariables:i}=(0,s.D7)(),{lineColor:n}=i,o=t.insert("g").attr("class","node default").attr("id",e.domId||e.id);let a=70,l=10;"LR"===r&&(a=10,l=70);const c=-1*a/2,h=-1*l/2;let u;if("handDrawn"===e.look){const t=ut(o).rectangle(c,h,a,l,bt(n));u=o.insert((()=>t))}else u=o.append("rect").attr("x",c).attr("y",h).attr("width",a).attr("height",l).attr("class","fork-join");Jt(e,u);let d=0,p=0,f=10;return e.height&&(d=e.height),e.width&&(p=e.width),e.padding&&(f=e.padding),e.height=d+f/2,e.width=p+f/2,e.intersect=function(t){return ue.rect(e,t)},o}),"forkJoin"),be=(0,s.K2)(((t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{themeVariables:n}=(0,s.D7)(),{lineColor:o}=n,a=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),l=[{x:0,y:14},{x:14,y:0},{x:0,y:-14},{x:-14,y:0}];let c;if("handDrawn"===e.look){const t=ut(a),e=l.map((function(t){return[t.x,t.y]})),r=t.polygon(e,bt(o));c=a.insert((()=>r))}else c=a.insert("polygon",":first-child").attr("points",l.map((function(t){return t.x+","+t.y})).join(" "));return c.attr("class","state-start").attr("r",7).attr("width",28).attr("height",28).attr("style",i),e.width=28,e.height=28,e.intersect=function(t){return ue.circle(e,14,t)},a}),"choice"),Ce=(0,s.K2)((async(t,e)=>{const{themeVariables:r,handDrawnSeed:i}=(0,s.D7)(),{noteBorderColor:n,noteBkgColor:o}=r;e.useHtmlLabels||(e.centerLabel=!0);const{shapeSvg:a,bbox:l}=await Qt(t,e,"node "+e.cssClasses);s.Rm.info("Classes = ",e.cssClasses);const{cssStyles:c}=e;let h;const u=l.width+e.padding,d=l.height+e.padding,p=-u/2,f=-d/2;if("handDrawn"===e.look){const t=ut(a).rectangle(p,f,u,d,{roughness:.7,fill:o,fillWeight:3,seed:i,stroke:n});h=a.insert((()=>t),":first-child"),h.attr("class","basic label-container").attr("style",c)}else h=a.insert("rect",":first-child"),h.attr("rx",e.rx).attr("ry",e.ry).attr("x",p).attr("y",f).attr("width",u).attr("height",d);return Jt(e,h),e.intersect=function(t){return ue.rect(e,t)},a}),"note"),ke=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o}=await Qt(t,e,te(e)),s=o.height+e.padding,a=o.width+s/4+e.padding;let l;const{cssStyles:c}=e;if("handDrawn"===e.look){const t=ut(n),r=wt(e,{}),i=xt(-a/2,-s/2,a,s,s/2),o=t.path(i,r);l=n.insert((()=>o),":first-child"),l.attr("class","basic label-container").attr("style",c)}else l=n.insert("rect",":first-child"),l.attr("class","basic label-container").attr("style",i).attr("rx",s/2).attr("ry",s/2).attr("x",-a/2).attr("y",-s/2).attr("width",a).attr("height",s);return Jt(e,l),e.intersect=function(t){return ue.rect(e,t)},n}),"stadium"),_e=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);let n;e.labelStyle=r,n=e.cssClasses?"node "+e.cssClasses:"node default";const o=t.insert("g").attr("class",n).attr("id",e.domId||e.id),l=o.insert("g"),c=o.insert("g").attr("class","label").attr("style",i),h=e.description,u=e.label,d=c.node().appendChild(await mt(u,e.labelStyle,!0,!0));let p={width:0,height:0};if((0,s._3)((0,s.D7)()?.flowchart?.htmlLabels)){const t=d.children[0],e=(0,a.Ltv)(d);p=t.getBoundingClientRect(),e.attr("width",p.width),e.attr("height",p.height)}s.Rm.info("Text 2",h);const f=h||[],g=d.getBBox(),y=c.node().appendChild(await mt(f.join?f.join("
"):f,e.labelStyle,!0,!0)),m=y.children[0],x=(0,a.Ltv)(y);p=m.getBoundingClientRect(),x.attr("width",p.width),x.attr("height",p.height);const b=(e.padding||0)/2;(0,a.Ltv)(y).attr("transform","translate( "+(p.width>g.width?0:(g.width-p.width)/2)+", "+(g.height+b+5)+")"),(0,a.Ltv)(d).attr("transform","translate( "+(p.width(s.Rm.debug("Rough node insert CXC",i),n)),":first-child"),v=o.insert((()=>(s.Rm.debug("Rough node insert CXC",i),i)),":first-child")}else v=l.insert("rect",":first-child"),T=l.insert("line"),v.attr("class","outer title-state").attr("style",i).attr("x",-p.width/2-b).attr("y",-p.height/2-b).attr("width",p.width+(e.padding||0)).attr("height",p.height+(e.padding||0)),T.attr("class","divider").attr("x1",-p.width/2-b).attr("x2",p.width/2+b).attr("y1",-p.height/2-b+g.height+b).attr("y2",-p.height/2-b+g.height+b);return Jt(e,v),e.intersect=function(t){return ue.rect(e,t)},o}),"rectWithTitle");function we(t,e,r,i){return t.insert("polygon",":first-child").attr("points",i.map((function(t){return t.x+","+t.y})).join(" ")).attr("class","label-container").attr("transform","translate("+-e/2+","+r/2+")")}(0,s.K2)(we,"insertPolygonShape");var ve=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o}=await Qt(t,e,te(e)),s=(e?.padding||0)/2,a=o.width+e.padding,l=o.height+e.padding,c=-o.width/2-s,h=-o.height/2-s,u=[{x:0,y:0},{x:a,y:0},{x:a,y:-l},{x:0,y:-l},{x:0,y:0},{x:-8,y:0},{x:a+8,y:0},{x:a+8,y:-l},{x:-8,y:-l},{x:-8,y:0}];if("handDrawn"===e.look){const t=ut(n),r=wt(e,{}),i=t.rectangle(c-8,h,a+16,l,r),o=t.line(c,h,c,h+l,r),s=t.line(c+a,h,c+a,h+l,r);n.insert((()=>o),":first-child"),n.insert((()=>s),":first-child");const u=n.insert((()=>i),":first-child"),{cssStyles:d}=e;u.attr("class","basic label-container").attr("style",d),Jt(e,u)}else{const t=we(n,a,l,u);i&&t.attr("style",i),Jt(e,t)}return e.intersect=function(t){return ue.polygon(e,u,t)},n}),"subroutine"),Te=(0,s.K2)(((t,e,r,i,n,o)=>[`M${t},${e+o}`,`a${n},${o} 0,0,0 ${r},0`,`a${n},${o} 0,0,0 ${-r},0`,`l0,${i}`,`a${n},${o} 0,0,0 ${r},0`,"l0,"+-i].join(" ")),"createCylinderPathD"),Se=(0,s.K2)(((t,e,r,i,n,o)=>[`M${t},${e+o}`,`M${t+r},${e+o}`,`a${n},${o} 0,0,0 ${-r},0`,`l0,${i}`,`a${n},${o} 0,0,0 ${r},0`,"l0,"+-i].join(" ")),"createOuterCylinderPathD"),Ae=(0,s.K2)(((t,e,r,i,n,o)=>[`M${t-r/2},${-i/2}`,`a${n},${o} 0,0,0 ${r},0`].join(" ")),"createInnerCylinderPathD"),Me=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o}=await Qt(t,e,te(e)),s=o.width+e.padding,a=s/2,l=a/(2.5+s/50),c=o.height+l+e.padding;let h;const{cssStyles:u}=e;if("handDrawn"===e.look){const t=ut(n),r=Se(0,0,s,c,a,l),i=Ae(0,l,s,c,a,l),o=t.path(r,wt(e,{})),d=t.path(i,wt(e,{fill:"none"}));h=n.insert((()=>d),":first-child"),h=n.insert((()=>o),":first-child"),h.attr("class","basic label-container"),u&&h.attr("style",u)}else{const t=Te(0,0,s,c,a,l);h=n.insert("path",":first-child").attr("d",t).attr("class","basic label-container").attr("style",u).attr("style",i)}return h.attr("label-offset-y",l),h.attr("transform",`translate(${-s/2}, ${-(c/2+l)})`),Jt(e,h),e.intersect=function(t){const r=ue.rect(e,t),i=r.x-(e.x??0);if(0!=a&&(Math.abs(i)<(e.width??0)/2||Math.abs(i)==(e.width??0)/2&&Math.abs(r.y-(e.y??0))>(e.height??0)/2-l)){let n=l*l*(1-i*i/(a*a));n>0&&(n=Math.sqrt(n)),n=l-n,t.y-(e.y??0)>0&&(n=-n),r.y+=n}return r},n}),"cylinder"),Be=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o,halfPadding:a}=await Qt(t,e,te(e)),l=o.width/2+a;let c;const{cssStyles:h}=e;if("handDrawn"===e.look){const t=ut(n),r=wt(e,{}),i=t.circle(0,0,2*l,r);c=n.insert((()=>i),":first-child"),c.attr("class","basic label-container").attr("style",h)}else c=n.insert("circle",":first-child").attr("class","basic label-container").attr("style",i).attr("r",l).attr("cx",0).attr("cy",0);return Jt(e,c),e.intersect=function(t){return s.Rm.info("Circle intersect",e,l,t),ue.circle(e,l,t)},n}),"circle"),Le=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o,halfPadding:a}=await Qt(t,e,te(e)),l=o.width/2+a+5,c=o.width/2+a;let h;const{cssStyles:u}=e;if("handDrawn"===e.look){const t=ut(n),r=wt(e,{roughness:.2,strokeWidth:2.5}),i=wt(e,{roughness:.2,strokeWidth:1.5}),o=t.circle(0,0,2*l,r),s=t.circle(0,0,2*c,i);h=n.insert("g",":first-child"),h.attr("class",e.cssClasses).attr("style",u),h.node()?.appendChild(o),h.node()?.appendChild(s)}else{h=n.insert("g",":first-child");const t=h.insert("circle",":first-child"),e=h.insert("circle");h.attr("class","basic label-container").attr("style",i),t.attr("class","outer-circle").attr("style",i).attr("r",l).attr("cx",0).attr("cy",0),e.attr("class","inner-circle").attr("style",i).attr("r",c).attr("cx",0).attr("cy",0)}return Jt(e,h),e.intersect=function(t){return s.Rm.info("DoubleCircle intersect",e,l,t),ue.circle(e,l,t)},n}),"doublecircle"),Fe=(0,s.K2)(((t,e,r,i)=>[`M${t-i/2},${e}`,`L${t+r},${e}`,`L${t+r},${e-i}`,`L${t-i/2},${e-i}`,`L${t},${e-i/2}`,"Z"].join(" ")),"createPolygonPathD"),$e=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o}=await Qt(t,e,te(e)),s=o.width+e.padding,a=o.height+e.padding,l=[{x:-a/2,y:0},{x:s,y:0},{x:s,y:-a},{x:-a/2,y:-a},{x:0,y:-a/2}];let c;const{cssStyles:h}=e;if("handDrawn"===e.look){const t=ut(n),r=wt(e,{}),i=Fe(0,0,s,a),o=t.path(i,r);c=n.insert((()=>o),":first-child").attr("transform",`translate(${-s/2}, ${a/2})`),h&&c.attr("style",h)}else c=we(n,s,a,l);return i&&c.attr("style",i),e.width=s+a,e.height=a,Jt(e,c),e.intersect=function(t){return ue.polygon(e,l,t)},n}),"rect_left_inv_arrow"),Ee=(0,s.K2)(((t,e,r)=>[`M${t+r/2},${e}`,`L${t+r},${e-r/2}`,`L${t+r/2},${e-r}`,`L${t},${e-r/2}`,"Z"].join(" ")),"createDecisionBoxPathD"),Oe=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o}=await Qt(t,e,te(e)),a=o.width+e.padding+(o.height+e.padding),l=[{x:a/2,y:0},{x:a,y:-a/2},{x:a/2,y:-a},{x:0,y:-a/2}];let c;const{cssStyles:h}=e;if("handDrawn"===e.look){const t=ut(n),r=wt(e,{}),i=Ee(0,0,a),o=t.path(i,r);c=n.insert((()=>o),":first-child").attr("transform",`translate(${-a/2}, ${a/2})`),h&&c.attr("style",h)}else c=we(n,a,a,l);return i&&c.attr("style",i),Jt(e,c),e.intersect=function(t){return s.Rm.debug("APA12 Intersect called SPLIT\npoint:",t,"\nnode:\n",e,"\nres:",ue.polygon(e,l,t)),ue.polygon(e,l,t)},n}),"question"),De=(0,s.K2)(((t,e,r,i,n)=>[`M${t+n},${e}`,`L${t+r-n},${e}`,`L${t+r},${e-i/2}`,`L${t+r-n},${e-i}`,`L${t+n},${e-i}`,`L${t},${e-i/2}`,"Z"].join(" ")),"createHexagonPathD"),Ie=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o}=await Qt(t,e,te(e)),s=o.height+e.padding,a=s/4,l=o.width+2*a+e.padding,c=[{x:a,y:0},{x:l-a,y:0},{x:l,y:-s/2},{x:l-a,y:-s},{x:a,y:-s},{x:0,y:-s/2}];let h;const{cssStyles:u}=e;if("handDrawn"===e.look){const t=ut(n),r=wt(e,{}),i=De(0,0,l,s,a),o=t.path(i,r);h=n.insert((()=>o),":first-child").attr("transform",`translate(${-l/2}, ${s/2})`),u&&h.attr("style",u)}else h=we(n,l,s,c);return i&&h.attr("style",i),e.width=l,e.height=s,Jt(e,h),e.intersect=function(t){return ue.polygon(e,c,t)},n}),"hexagon"),Re=(0,s.K2)(((t,e,r,i)=>[`M${t-2*i/6},${e}`,`L${t+r-i/6},${e}`,`L${t+r+2*i/6},${e-i}`,`L${t+i/6},${e-i}`,"Z"].join(" ")),"createLeanRightPathD"),Ne=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o}=await Qt(t,e,te(e)),s=o.width+e.padding,a=o.height+e.padding,l=[{x:-2*a/6,y:0},{x:s-a/6,y:0},{x:s+2*a/6,y:-a},{x:a/6,y:-a}];let c;const{cssStyles:h}=e;if("handDrawn"===e.look){const t=ut(n),r=wt(e,{}),i=Re(0,0,s,a),o=t.path(i,r);c=n.insert((()=>o),":first-child").attr("transform",`translate(${-s/2}, ${a/2})`),h&&c.attr("style",h)}else c=we(n,s,a,l);return i&&c.attr("style",i),e.width=s,e.height=a,Jt(e,c),e.intersect=function(t){return ue.polygon(e,l,t)},n}),"lean_right"),qe=(0,s.K2)(((t,e,r,i)=>[`M${t+2*i/6},${e}`,`L${t+r+i/6},${e}`,`L${t+r-2*i/6},${e-i}`,`L${t-i/6},${e-i}`,"Z"].join(" ")),"createLeanLeftPathD"),ze=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o}=await Qt(t,e,te(e)),s=o.width+e.padding,a=o.height+e.padding,l=[{x:2*a/6,y:0},{x:s+a/6,y:0},{x:s-2*a/6,y:-a},{x:-a/6,y:-a}];let c;const{cssStyles:h}=e;if("handDrawn"===e.look){const t=ut(n),r=wt(e,{}),i=qe(0,0,s,a),o=t.path(i,r);c=n.insert((()=>o),":first-child").attr("transform",`translate(${-s/2}, ${a/2})`),h&&c.attr("style",h)}else c=we(n,s,a,l);return i&&c.attr("style",i),e.width=s,e.height=a,Jt(e,c),e.intersect=function(t){return ue.polygon(e,l,t)},n}),"lean_left"),Pe=(0,s.K2)(((t,e,r,i)=>[`M${t-2*i/6},${e}`,`L${t+r+2*i/6},${e}`,`L${t+r-i/6},${e-i}`,`L${t+i/6},${e-i}`,"Z"].join(" ")),"createTrapezoidPathD"),Ke=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o}=await Qt(t,e,te(e)),s=o.width+e.padding,a=o.height+e.padding,l=[{x:-2*a/6,y:0},{x:s+2*a/6,y:0},{x:s-a/6,y:-a},{x:a/6,y:-a}];let c;const{cssStyles:h}=e;if("handDrawn"===e.look){const t=ut(n),r=wt(e,{}),i=Pe(0,0,s,a),o=t.path(i,r);c=n.insert((()=>o),":first-child").attr("transform",`translate(${-s/2}, ${a/2})`),h&&c.attr("style",h)}else c=we(n,s,a,l);return i&&c.attr("style",i),e.width=s,e.height=a,Jt(e,c),e.intersect=function(t){return ue.polygon(e,l,t)},n}),"trapezoid"),je=(0,s.K2)(((t,e,r,i)=>[`M${t+i/6},${e}`,`L${t+r-i/6},${e}`,`L${t+r+2*i/6},${e-i}`,`L${t-2*i/6},${e-i}`,"Z"].join(" ")),"createInvertedTrapezoidPathD"),We=(0,s.K2)((async(t,e)=>{const{labelStyles:r,nodeStyles:i}=_t(e);e.labelStyle=r;const{shapeSvg:n,bbox:o}=await Qt(t,e,te(e)),s=o.width+e.padding,a=o.height+e.padding,l=[{x:a/6,y:0},{x:s-a/6,y:0},{x:s+2*a/6,y:-a},{x:-2*a/6,y:-a}];let c;const{cssStyles:h}=e;if("handDrawn"===e.look){const t=ut(n),r=wt(e,{}),i=je(0,0,s,a),o=t.path(i,r);c=n.insert((()=>o),":first-child").attr("transform",`translate(${-s/2}, ${a/2})`),h&&c.attr("style",h)}else c=we(n,s,a,l);return i&&c.attr("style",i),e.width=s,e.height=a,Jt(e,c),e.intersect=function(t){return ue.polygon(e,l,t)},n}),"inv_trapezoid"),Ue={state:pe,stateStart:ye,stateEnd:me,fork:xe,join:xe,choice:be,note:Ce,roundedRect:fe,rectWithTitle:_e,squareRect:ge,stadium:ke,subroutine:ve,cylinder:Me,circle:Be,doublecircle:Le,odd:$e,diamond:Oe,hexagon:Ie,lean_right:Ne,lean_left:ze,trapezoid:Ke,inv_trapezoid:We,labelRect:(0,s.K2)((async(t,e)=>{const{shapeSvg:r}=await Qt(t,e,"label"),i=r.insert("rect",":first-child");return i.attr("width",.1).attr("height",.1),r.attr("class","label edgeLabel"),Jt(e,i),e.intersect=function(t){return ue.rect(e,t)},r}),"labelRect")},He=new Map,Ye=(0,s.K2)((async(t,e,r)=>{let i,n;if("rect"===e.shape&&(e.rx&&e.ry?e.shape="roundedRect":e.shape="squareRect"),e.link){let o;"sandbox"===(0,s.D7)().securityLevel?o="_top":e.linkTarget&&(o=e.linkTarget||"_blank"),i=t.insert("svg:a").attr("xlink:href",e.link).attr("target",o),n=await Ue[e.shape](i,e,r)}else n=await Ue[e.shape](t,e,r),i=n;return e.tooltip&&n.attr("title",e.tooltip),He.set(e.id,i),e.haveCallback&&He.get(e.id).attr("class",He.get(e.id).attr("class")+" clickable"),i}),"insertNode"),Ve=(0,s.K2)(((t,e)=>{He.set(e.id,t)}),"setNodeElem"),Ge=(0,s.K2)((()=>{He.clear()}),"clear"),Ze=(0,s.K2)((t=>{const e=He.get(t.id);s.Rm.trace("Transforming node",t.diff,t,"translate("+(t.x-t.width/2-5)+", "+t.width/2+")");const r=t.diff||0;return t.clusterNode?e.attr("transform","translate("+(t.x+r-t.width/2)+", "+(t.y-t.height/2-8)+")"):e.attr("transform","translate("+t.x+", "+t.y+")"),r}),"positionNode")},48852:(t,e,r)=>{"use strict";r.d(e,{D:()=>o});var i=r(64994),n=r(20007),o=(0,i.K2)((t=>{const{securityLevel:e}=(0,i.D7)();let r=(0,n.Ltv)("body");if("sandbox"===e){const e=(0,n.Ltv)(`#i${t}`),i=e.node()?.contentDocument??document;r=(0,n.Ltv)(i.body)}return r.select(`#${t}`)}),"selectSvgElement")},5070:(t,e,r)=>{"use strict";r.d(e,{r:()=>i});var i="11.0.0"},64994:(t,e,r)=>{"use strict";r.d(e,{C0:()=>S,VA:()=>x,K2:()=>m,xA:()=>dt,hH:()=>E,Dl:()=>Pt,IU:()=>ie,Wt:()=>Qt,Y2:()=>jt,a$:()=>Ht,sb:()=>tt,ME:()=>fe,UI:()=>X,Ch:()=>M,mW:()=>A,DB:()=>v,_3:()=>Ft,EJ:()=>w,m7:()=>ae,iN:()=>oe,zj:()=>ht,D7:()=>de,Gs:()=>Ce,J$:()=>F,ab:()=>ce,Q2:()=>lt,P$:()=>K,Wi:()=>zt,H1:()=>xt,Rm:()=>C,QO:()=>Ot,Js:()=>be,Xd:()=>B,VJ:()=>Kt,cL:()=>pt,$i:()=>Q,jZ:()=>vt,wZ:()=>st,EI:()=>se,SV:()=>ne,Nk:()=>ct,XV:()=>pe,ke:()=>le,He:()=>k,UU:()=>ot,ot:()=>Yt,mj:()=>ye,tM:()=>Xt,H$:()=>H,B6:()=>at});var i=r(74353),n=r(74886),o=r(8232);const s=(t,e)=>{const r=n.A.parse(t),i={};for(const n in e)e[n]&&(i[n]=r[n]+e[n]);return(0,o.A)(t,i)};var a=r(25582);const l=(t,e,r=50)=>{const{r:i,g:o,b:s,a:l}=n.A.parse(t),{r:c,g:h,b:u,a:d}=n.A.parse(e),p=r/100,f=2*p-1,g=l-d,y=((f*g==-1?f:(f+g)/(1+f*g))+1)/2,m=1-y,x=i*y+c*m,b=o*y+h*m,C=s*y+u*m,k=l*p+d*(1-p);return(0,a.A)(x,b,C,k)},c=(t,e=100)=>{const r=n.A.parse(t);return r.r=255-r.r,r.g=255-r.g,r.b=255-r.b,l(r,t,e)};var h,u=r(75263),d=r(78041),p=r(3219),f=r(42838),g=r(96763),y=Object.defineProperty,m=(t,e)=>y(t,"name",{value:e,configurable:!0}),x=(t,e)=>{for(var r in e)y(t,r,{get:e[r],enumerable:!0})},b={trace:0,debug:1,info:2,warn:3,error:4,fatal:5},C={trace:m(((...t)=>{}),"trace"),debug:m(((...t)=>{}),"debug"),info:m(((...t)=>{}),"info"),warn:m(((...t)=>{}),"warn"),error:m(((...t)=>{}),"error"),fatal:m(((...t)=>{}),"fatal")},k=m((function(t="fatal"){let e=b.fatal;"string"==typeof t?t.toLowerCase()in b&&(e=b[t]):"number"==typeof t&&(e=t),C.trace=()=>{},C.debug=()=>{},C.info=()=>{},C.warn=()=>{},C.error=()=>{},C.fatal=()=>{},e<=b.fatal&&(C.fatal=g.error?g.error.bind(g,_("FATAL"),"color: orange"):g.log.bind(g,"\x1b[35m",_("FATAL"))),e<=b.error&&(C.error=g.error?g.error.bind(g,_("ERROR"),"color: orange"):g.log.bind(g,"\x1b[31m",_("ERROR"))),e<=b.warn&&(C.warn=g.warn?g.warn.bind(g,_("WARN"),"color: orange"):g.log.bind(g,"\x1b[33m",_("WARN"))),e<=b.info&&(C.info=g.info?g.info.bind(g,_("INFO"),"color: lightblue"):g.log.bind(g,"\x1b[34m",_("INFO"))),e<=b.debug&&(C.debug=g.debug?g.debug.bind(g,_("DEBUG"),"color: lightgreen"):g.log.bind(g,"\x1b[32m",_("DEBUG"))),e<=b.trace&&(C.trace=g.debug?g.debug.bind(g,_("TRACE"),"color: lightgreen"):g.log.bind(g,"\x1b[32m",_("TRACE")))}),"setLogLevel"),_=m((t=>`%c${i().format("ss.SSS")} : ${t} : `),"format"),w=/^-{3}\s*[\n\r](.*?)[\n\r]-{3}\s*[\n\r]+/s,v=/%{2}{\s*(?:(\w+)\s*:|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,T=/\s*%%.*\n/gm,S=class extends Error{static{m(this,"UnknownDiagramError")}constructor(t){super(t),this.name="UnknownDiagramError"}},A={},M=m((function(t,e){t=t.replace(w,"").replace(v,"").replace(T,"\n");for(const[r,{detector:i}]of Object.entries(A)){if(i(t,e))return r}throw new S(`No diagram type detected matching given configuration for text: ${t}`)}),"detectType"),B=m(((...t)=>{for(const{id:e,detector:r,loader:i}of t)L(e,r,i)}),"registerLazyLoadedDiagrams"),L=m(((t,e,r)=>{A[t]&&C.warn(`Detector with key ${t} already exists. Overwriting.`),A[t]={detector:e,loader:r},C.debug(`Detector with key ${t} added${r?" with loader":""}`)}),"addDetector"),F=m((t=>A[t].loader),"getDiagramLoader"),$=m(((t,e,{depth:r=2,clobber:i=!1}={})=>{const n={depth:r,clobber:i};return Array.isArray(e)&&!Array.isArray(t)?(e.forEach((e=>$(t,e,n))),t):Array.isArray(e)&&Array.isArray(t)?(e.forEach((e=>{t.includes(e)||t.push(e)})),t):void 0===t||r<=0?null!=t&&"object"==typeof t&&"object"==typeof e?Object.assign(t,e):e:(void 0!==e&&"object"==typeof t&&"object"==typeof e&&Object.keys(e).forEach((n=>{"object"!=typeof e[n]||void 0!==t[n]&&"object"!=typeof t[n]?(i||"object"!=typeof t[n]&&"object"!=typeof e[n])&&(t[n]=e[n]):(void 0===t[n]&&(t[n]=Array.isArray(e[n])?[]:{}),t[n]=$(t[n],e[n],{depth:r-1,clobber:i}))})),t)}),"assignWithDepth"),E=$,O="#ffffff",D="#f2f2f2",I=m(((t,e)=>s(t,e?{s:-40,l:10}:{s:-40,l:-10})),"mkBorder"),R=class{static{m(this,"Theme")}constructor(){this.background="#f4f4f4",this.primaryColor="#fff4dd",this.noteBkgColor="#fff5ad",this.noteTextColor="#333",this.THEME_COLOR_LIMIT=12,this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px"}updateColors(){if(this.primaryTextColor=this.primaryTextColor||(this.darkMode?"#eee":"#333"),this.secondaryColor=this.secondaryColor||s(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||s(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||I(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||I(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||I(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||I(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#333",this.secondaryTextColor=this.secondaryTextColor||c(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||c(this.tertiaryColor),this.lineColor=this.lineColor||c(this.background),this.arrowheadColor=this.arrowheadColor||c(this.background),this.textColor=this.textColor||this.primaryTextColor,this.border2=this.border2||this.tertiaryBorderColor,this.nodeBkg=this.nodeBkg||this.primaryColor,this.mainBkg=this.mainBkg||this.primaryColor,this.nodeBorder=this.nodeBorder||this.primaryBorderColor,this.clusterBkg=this.clusterBkg||this.tertiaryColor,this.clusterBorder=this.clusterBorder||this.tertiaryBorderColor,this.defaultLinkColor=this.defaultLinkColor||this.lineColor,this.titleColor=this.titleColor||this.tertiaryTextColor,this.edgeLabelBackground=this.edgeLabelBackground||(this.darkMode?(0,u.A)(this.secondaryColor,30):this.secondaryColor),this.nodeTextColor=this.nodeTextColor||this.primaryTextColor,this.actorBorder=this.actorBorder||this.primaryBorderColor,this.actorBkg=this.actorBkg||this.mainBkg,this.actorTextColor=this.actorTextColor||this.primaryTextColor,this.actorLineColor=this.actorLineColor||this.actorBorder,this.labelBoxBkgColor=this.labelBoxBkgColor||this.actorBkg,this.signalColor=this.signalColor||this.textColor,this.signalTextColor=this.signalTextColor||this.textColor,this.labelBoxBorderColor=this.labelBoxBorderColor||this.actorBorder,this.labelTextColor=this.labelTextColor||this.actorTextColor,this.loopTextColor=this.loopTextColor||this.actorTextColor,this.activationBorderColor=this.activationBorderColor||(0,u.A)(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||c(this.lineColor),this.sectionBkgColor=this.sectionBkgColor||this.tertiaryColor,this.altSectionBkgColor=this.altSectionBkgColor||"white",this.sectionBkgColor=this.sectionBkgColor||this.secondaryColor,this.sectionBkgColor2=this.sectionBkgColor2||this.primaryColor,this.excludeBkgColor=this.excludeBkgColor||"#eeeeee",this.taskBorderColor=this.taskBorderColor||this.primaryBorderColor,this.taskBkgColor=this.taskBkgColor||this.primaryColor,this.activeTaskBorderColor=this.activeTaskBorderColor||this.primaryColor,this.activeTaskBkgColor=this.activeTaskBkgColor||(0,d.A)(this.primaryColor,23),this.gridColor=this.gridColor||"lightgrey",this.doneTaskBkgColor=this.doneTaskBkgColor||"lightgrey",this.doneTaskBorderColor=this.doneTaskBorderColor||"grey",this.critBorderColor=this.critBorderColor||"#ff8888",this.critBkgColor=this.critBkgColor||"red",this.todayLineColor=this.todayLineColor||"red",this.taskTextColor=this.taskTextColor||this.textColor,this.taskTextOutsideColor=this.taskTextOutsideColor||this.textColor,this.taskTextLightColor=this.taskTextLightColor||this.textColor,this.taskTextColor=this.taskTextColor||this.primaryTextColor,this.taskTextDarkColor=this.taskTextDarkColor||this.textColor,this.taskTextClickableColor=this.taskTextClickableColor||"#003163",this.personBorder=this.personBorder||this.primaryBorderColor,this.personBkg=this.personBkg||this.mainBkg,this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||this.tertiaryColor,this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.nodeBorder,this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.specialStateColor=this.lineColor,this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||s(this.primaryColor,{h:30}),this.cScale4=this.cScale4||s(this.primaryColor,{h:60}),this.cScale5=this.cScale5||s(this.primaryColor,{h:90}),this.cScale6=this.cScale6||s(this.primaryColor,{h:120}),this.cScale7=this.cScale7||s(this.primaryColor,{h:150}),this.cScale8=this.cScale8||s(this.primaryColor,{h:210,l:150}),this.cScale9=this.cScale9||s(this.primaryColor,{h:270}),this.cScale10=this.cScale10||s(this.primaryColor,{h:300}),this.cScale11=this.cScale11||s(this.primaryColor,{h:330}),this.darkMode)for(let e=0;e{this[e]=t[e]})),this.updateColors(),e.forEach((e=>{this[e]=t[e]}))}},N=m((t=>{const e=new R;return e.calculate(t),e}),"getThemeVariables"),q=class{static{m(this,"Theme")}constructor(){this.background="#333",this.primaryColor="#1f2020",this.secondaryColor=(0,d.A)(this.primaryColor,16),this.tertiaryColor=s(this.primaryColor,{h:-160}),this.primaryBorderColor=c(this.background),this.secondaryBorderColor=I(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=I(this.tertiaryColor,this.darkMode),this.primaryTextColor=c(this.primaryColor),this.secondaryTextColor=c(this.secondaryColor),this.tertiaryTextColor=c(this.tertiaryColor),this.lineColor=c(this.background),this.textColor=c(this.background),this.mainBkg="#1f2020",this.secondBkg="calculated",this.mainContrastColor="lightgrey",this.darkTextColor=(0,d.A)(c("#323D47"),10),this.lineColor="calculated",this.border1="#ccc",this.border2=(0,a.A)(255,255,255,.25),this.arrowheadColor="calculated",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.labelBackground="#181818",this.textColor="#ccc",this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="#F9FFFE",this.edgeLabelBackground="calculated",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="calculated",this.actorLineColor="calculated",this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="calculated",this.activationBkgColor="calculated",this.sequenceNumberColor="black",this.sectionBkgColor=(0,u.A)("#EAE8D9",30),this.altSectionBkgColor="calculated",this.sectionBkgColor2="#EAE8D9",this.excludeBkgColor=(0,u.A)(this.sectionBkgColor,10),this.taskBorderColor=(0,a.A)(255,255,255,70),this.taskBkgColor="calculated",this.taskTextColor="calculated",this.taskTextLightColor="calculated",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor=(0,a.A)(255,255,255,50),this.activeTaskBkgColor="#81B1DB",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="grey",this.critBorderColor="#E83737",this.critBkgColor="#E83737",this.taskTextDarkColor="calculated",this.todayLineColor="#DB5757",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.labelColor="calculated",this.errorBkgColor="#a44141",this.errorTextColor="#ddd"}updateColors(){this.secondBkg=(0,d.A)(this.mainBkg,16),this.lineColor=this.mainContrastColor,this.arrowheadColor=this.mainContrastColor,this.nodeBkg=this.mainBkg,this.nodeBorder=this.border1,this.clusterBkg=this.secondBkg,this.clusterBorder=this.border2,this.defaultLinkColor=this.lineColor,this.edgeLabelBackground=(0,d.A)(this.labelBackground,25),this.actorBorder=this.border1,this.actorBkg=this.mainBkg,this.actorTextColor=this.mainContrastColor,this.actorLineColor=this.actorBorder,this.signalColor=this.mainContrastColor,this.signalTextColor=this.mainContrastColor,this.labelBoxBkgColor=this.actorBkg,this.labelBoxBorderColor=this.actorBorder,this.labelTextColor=this.mainContrastColor,this.loopTextColor=this.mainContrastColor,this.noteBorderColor=this.secondaryBorderColor,this.noteBkgColor=this.secondBkg,this.noteTextColor=this.secondaryTextColor,this.activationBorderColor=this.border1,this.activationBkgColor=this.secondBkg,this.altSectionBkgColor=this.background,this.taskBkgColor=(0,d.A)(this.mainBkg,23),this.taskTextColor=this.darkTextColor,this.taskTextLightColor=this.mainContrastColor,this.taskTextOutsideColor=this.taskTextLightColor,this.gridColor=this.mainContrastColor,this.doneTaskBkgColor=this.mainContrastColor,this.taskTextDarkColor=this.darkTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||"#555",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.primaryBorderColor,this.specialStateColor="#f4f4f4",this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.fillType0=this.primaryColor,this.fillType1=this.secondaryColor,this.fillType2=s(this.primaryColor,{h:64}),this.fillType3=s(this.secondaryColor,{h:64}),this.fillType4=s(this.primaryColor,{h:-64}),this.fillType5=s(this.secondaryColor,{h:-64}),this.fillType6=s(this.primaryColor,{h:128}),this.fillType7=s(this.secondaryColor,{h:128}),this.cScale1=this.cScale1||"#0b0000",this.cScale2=this.cScale2||"#4d1037",this.cScale3=this.cScale3||"#3f5258",this.cScale4=this.cScale4||"#4f2f1b",this.cScale5=this.cScale5||"#6e0a0a",this.cScale6=this.cScale6||"#3b0048",this.cScale7=this.cScale7||"#995a01",this.cScale8=this.cScale8||"#154706",this.cScale9=this.cScale9||"#161722",this.cScale10=this.cScale10||"#00296f",this.cScale11=this.cScale11||"#01629c",this.cScale12=this.cScale12||"#010029",this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||s(this.primaryColor,{h:30}),this.cScale4=this.cScale4||s(this.primaryColor,{h:60}),this.cScale5=this.cScale5||s(this.primaryColor,{h:90}),this.cScale6=this.cScale6||s(this.primaryColor,{h:120}),this.cScale7=this.cScale7||s(this.primaryColor,{h:150}),this.cScale8=this.cScale8||s(this.primaryColor,{h:210}),this.cScale9=this.cScale9||s(this.primaryColor,{h:270}),this.cScale10=this.cScale10||s(this.primaryColor,{h:300}),this.cScale11=this.cScale11||s(this.primaryColor,{h:330});for(let t=0;t{this[e]=t[e]})),this.updateColors(),e.forEach((e=>{this[e]=t[e]}))}},z=m((t=>{const e=new q;return e.calculate(t),e}),"getThemeVariables"),P=class{static{m(this,"Theme")}constructor(){this.background="#f4f4f4",this.primaryColor="#ECECFF",this.secondaryColor=s(this.primaryColor,{h:120}),this.secondaryColor="#ffffde",this.tertiaryColor=s(this.primaryColor,{h:-160}),this.primaryBorderColor=I(this.primaryColor,this.darkMode),this.secondaryBorderColor=I(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=I(this.tertiaryColor,this.darkMode),this.primaryTextColor=c(this.primaryColor),this.secondaryTextColor=c(this.secondaryColor),this.tertiaryTextColor=c(this.tertiaryColor),this.lineColor=c(this.background),this.textColor=c(this.background),this.background="white",this.mainBkg="#ECECFF",this.secondBkg="#ffffde",this.lineColor="#333333",this.border1="#9370DB",this.border2="#aaaa33",this.arrowheadColor="#333333",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.labelBackground="rgba(232,232,232, 0.8)",this.textColor="#333",this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="calculated",this.edgeLabelBackground="calculated",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="black",this.actorLineColor="calculated",this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.sectionBkgColor="calculated",this.altSectionBkgColor="calculated",this.sectionBkgColor2="calculated",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="calculated",this.taskTextLightColor="calculated",this.taskTextColor=this.taskTextLightColor,this.taskTextDarkColor="calculated",this.taskTextOutsideColor=this.taskTextDarkColor,this.taskTextClickableColor="calculated",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="calculated",this.critBorderColor="calculated",this.critBkgColor="calculated",this.todayLineColor="calculated",this.sectionBkgColor=(0,a.A)(102,102,255,.49),this.altSectionBkgColor="white",this.sectionBkgColor2="#fff400",this.taskBorderColor="#534fbc",this.taskBkgColor="#8a90dd",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="black",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="#534fbc",this.activeTaskBkgColor="#bfc7ff",this.gridColor="lightgrey",this.doneTaskBkgColor="lightgrey",this.doneTaskBorderColor="grey",this.critBorderColor="#ff8888",this.critBkgColor="red",this.todayLineColor="red",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222",this.updateColors()}updateColors(){this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||s(this.primaryColor,{h:30}),this.cScale4=this.cScale4||s(this.primaryColor,{h:60}),this.cScale5=this.cScale5||s(this.primaryColor,{h:90}),this.cScale6=this.cScale6||s(this.primaryColor,{h:120}),this.cScale7=this.cScale7||s(this.primaryColor,{h:150}),this.cScale8=this.cScale8||s(this.primaryColor,{h:210}),this.cScale9=this.cScale9||s(this.primaryColor,{h:270}),this.cScale10=this.cScale10||s(this.primaryColor,{h:300}),this.cScale11=this.cScale11||s(this.primaryColor,{h:330}),this.cScalePeer1=this.cScalePeer1||(0,u.A)(this.secondaryColor,45),this.cScalePeer2=this.cScalePeer2||(0,u.A)(this.tertiaryColor,40);for(let t=0;t{this[e]=t[e]})),this.updateColors(),e.forEach((e=>{this[e]=t[e]}))}},K=m((t=>{const e=new P;return e.calculate(t),e}),"getThemeVariables"),j=class{static{m(this,"Theme")}constructor(){this.background="#f4f4f4",this.primaryColor="#cde498",this.secondaryColor="#cdffb2",this.background="white",this.mainBkg="#cde498",this.secondBkg="#cdffb2",this.lineColor="green",this.border1="#13540c",this.border2="#6eaa49",this.arrowheadColor="green",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.tertiaryColor=(0,d.A)("#cde498",10),this.primaryBorderColor=I(this.primaryColor,this.darkMode),this.secondaryBorderColor=I(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=I(this.tertiaryColor,this.darkMode),this.primaryTextColor=c(this.primaryColor),this.secondaryTextColor=c(this.secondaryColor),this.tertiaryTextColor=c(this.primaryColor),this.lineColor=c(this.background),this.textColor=c(this.background),this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="#333",this.edgeLabelBackground="#e8e8e8",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="black",this.actorLineColor="calculated",this.signalColor="#333",this.signalTextColor="#333",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="#326932",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.sectionBkgColor="#6eaa49",this.altSectionBkgColor="white",this.sectionBkgColor2="#6eaa49",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="#487e3a",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="black",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="lightgrey",this.doneTaskBkgColor="lightgrey",this.doneTaskBorderColor="grey",this.critBorderColor="#ff8888",this.critBkgColor="red",this.todayLineColor="red",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222"}updateColors(){this.actorBorder=(0,u.A)(this.mainBkg,20),this.actorBkg=this.mainBkg,this.labelBoxBkgColor=this.actorBkg,this.labelTextColor=this.actorTextColor,this.loopTextColor=this.actorTextColor,this.noteBorderColor=this.border2,this.noteTextColor=this.actorTextColor,this.actorLineColor=this.actorBorder,this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||s(this.primaryColor,{h:30}),this.cScale4=this.cScale4||s(this.primaryColor,{h:60}),this.cScale5=this.cScale5||s(this.primaryColor,{h:90}),this.cScale6=this.cScale6||s(this.primaryColor,{h:120}),this.cScale7=this.cScale7||s(this.primaryColor,{h:150}),this.cScale8=this.cScale8||s(this.primaryColor,{h:210}),this.cScale9=this.cScale9||s(this.primaryColor,{h:270}),this.cScale10=this.cScale10||s(this.primaryColor,{h:300}),this.cScale11=this.cScale11||s(this.primaryColor,{h:330}),this.cScalePeer1=this.cScalePeer1||(0,u.A)(this.secondaryColor,45),this.cScalePeer2=this.cScalePeer2||(0,u.A)(this.tertiaryColor,40);for(let t=0;t{this[e]=t[e]})),this.updateColors(),e.forEach((e=>{this[e]=t[e]}))}},W=m((t=>{const e=new j;return e.calculate(t),e}),"getThemeVariables"),U=class{static{m(this,"Theme")}constructor(){this.primaryColor="#eee",this.contrast="#707070",this.secondaryColor=(0,d.A)(this.contrast,55),this.background="#ffffff",this.tertiaryColor=s(this.primaryColor,{h:-160}),this.primaryBorderColor=I(this.primaryColor,this.darkMode),this.secondaryBorderColor=I(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=I(this.tertiaryColor,this.darkMode),this.primaryTextColor=c(this.primaryColor),this.secondaryTextColor=c(this.secondaryColor),this.tertiaryTextColor=c(this.tertiaryColor),this.lineColor=c(this.background),this.textColor=c(this.background),this.mainBkg="#eee",this.secondBkg="calculated",this.lineColor="#666",this.border1="#999",this.border2="calculated",this.note="#ffa",this.text="#333",this.critical="#d42",this.done="#bbb",this.arrowheadColor="#333333",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="calculated",this.edgeLabelBackground="white",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="calculated",this.actorLineColor=this.actorBorder,this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="calculated",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.sectionBkgColor="calculated",this.altSectionBkgColor="white",this.sectionBkgColor2="calculated",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="calculated",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="calculated",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="calculated",this.critBkgColor="calculated",this.critBorderColor="calculated",this.todayLineColor="calculated",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222"}updateColors(){this.secondBkg=(0,d.A)(this.contrast,55),this.border2=this.contrast,this.actorBorder=(0,d.A)(this.border1,23),this.actorBkg=this.mainBkg,this.actorTextColor=this.text,this.actorLineColor=this.actorBorder,this.signalColor=this.text,this.signalTextColor=this.text,this.labelBoxBkgColor=this.actorBkg,this.labelBoxBorderColor=this.actorBorder,this.labelTextColor=this.text,this.loopTextColor=this.text,this.noteBorderColor="#999",this.noteBkgColor="#666",this.noteTextColor="#fff",this.cScale0=this.cScale0||"#555",this.cScale1=this.cScale1||"#F4F4F4",this.cScale2=this.cScale2||"#555",this.cScale3=this.cScale3||"#BBB",this.cScale4=this.cScale4||"#777",this.cScale5=this.cScale5||"#999",this.cScale6=this.cScale6||"#DDD",this.cScale7=this.cScale7||"#FFF",this.cScale8=this.cScale8||"#DDD",this.cScale9=this.cScale9||"#BBB",this.cScale10=this.cScale10||"#999",this.cScale11=this.cScale11||"#777";for(let t=0;t{this[e]=t[e]})),this.updateColors(),e.forEach((e=>{this[e]=t[e]}))}},H={base:{getThemeVariables:N},dark:{getThemeVariables:z},default:{getThemeVariables:K},forest:{getThemeVariables:W},neutral:{getThemeVariables:m((t=>{const e=new U;return e.calculate(t),e}),"getThemeVariables")}},Y={flowchart:{useMaxWidth:!0,titleTopMargin:25,subGraphTitleMargin:{top:0,bottom:0},diagramPadding:8,htmlLabels:!0,nodeSpacing:50,rankSpacing:50,curve:"basis",padding:15,defaultRenderer:"dagre-wrapper",wrappingWidth:200},sequence:{useMaxWidth:!0,hideUnusedParticipants:!1,activationWidth:10,diagramMarginX:50,diagramMarginY:10,actorMargin:50,width:150,height:65,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",mirrorActors:!0,forceMenus:!1,bottomMarginAdj:1,rightAngles:!1,showSequenceNumbers:!1,actorFontSize:14,actorFontFamily:'"Open Sans", sans-serif',actorFontWeight:400,noteFontSize:14,noteFontFamily:'"trebuchet ms", verdana, arial, sans-serif',noteFontWeight:400,noteAlign:"center",messageFontSize:16,messageFontFamily:'"trebuchet ms", verdana, arial, sans-serif',messageFontWeight:400,wrap:!1,wrapPadding:10,labelBoxWidth:50,labelBoxHeight:20},gantt:{useMaxWidth:!0,titleTopMargin:25,barHeight:20,barGap:4,topPadding:50,rightPadding:75,leftPadding:75,gridLineStartPadding:35,fontSize:11,sectionFontSize:11,numberSectionStyles:4,axisFormat:"%Y-%m-%d",topAxis:!1,displayMode:"",weekday:"sunday"},journey:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,leftMargin:150,width:150,height:50,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",bottomMarginAdj:1,rightAngles:!1,taskFontSize:14,taskFontFamily:'"Open Sans", sans-serif',taskMargin:50,activationWidth:10,textPlacement:"fo",actorColours:["#8FBC8F","#7CFC00","#00FFFF","#20B2AA","#B0E0E6","#FFFFE0"],sectionFills:["#191970","#8B008B","#4B0082","#2F4F4F","#800000","#8B4513","#00008B"],sectionColours:["#fff"]},class:{useMaxWidth:!0,titleTopMargin:25,arrowMarkerAbsolute:!1,dividerMargin:10,padding:5,textHeight:10,defaultRenderer:"dagre-wrapper",htmlLabels:!1},state:{useMaxWidth:!0,titleTopMargin:25,dividerMargin:10,sizeUnit:5,padding:8,textHeight:10,titleShift:-15,noteMargin:10,forkWidth:70,forkHeight:7,miniPadding:2,fontSizeFactor:5.02,fontSize:24,labelHeight:16,edgeLengthFactor:"20",compositTitleSize:35,radius:5,defaultRenderer:"dagre-wrapper"},er:{useMaxWidth:!0,titleTopMargin:25,diagramPadding:20,layoutDirection:"TB",minEntityWidth:100,minEntityHeight:75,entityPadding:15,stroke:"gray",fill:"honeydew",fontSize:12},pie:{useMaxWidth:!0,textPosition:.75},quadrantChart:{useMaxWidth:!0,chartWidth:500,chartHeight:500,titleFontSize:20,titlePadding:10,quadrantPadding:5,xAxisLabelPadding:5,yAxisLabelPadding:5,xAxisLabelFontSize:16,yAxisLabelFontSize:16,quadrantLabelFontSize:16,quadrantTextTopPadding:5,pointTextPadding:5,pointLabelFontSize:12,pointRadius:5,xAxisPosition:"top",yAxisPosition:"left",quadrantInternalBorderStrokeWidth:1,quadrantExternalBorderStrokeWidth:2},xyChart:{useMaxWidth:!0,width:700,height:500,titleFontSize:20,titlePadding:10,showTitle:!0,xAxis:{$ref:"#/$defs/XYChartAxisConfig",showLabel:!0,labelFontSize:14,labelPadding:5,showTitle:!0,titleFontSize:16,titlePadding:5,showTick:!0,tickLength:5,tickWidth:2,showAxisLine:!0,axisLineWidth:2},yAxis:{$ref:"#/$defs/XYChartAxisConfig",showLabel:!0,labelFontSize:14,labelPadding:5,showTitle:!0,titleFontSize:16,titlePadding:5,showTick:!0,tickLength:5,tickWidth:2,showAxisLine:!0,axisLineWidth:2},chartOrientation:"vertical",plotReservedSpacePercent:50},requirement:{useMaxWidth:!0,rect_fill:"#f9f9f9",text_color:"#333",rect_border_size:"0.5px",rect_border_color:"#bbb",rect_min_width:200,rect_min_height:200,fontSize:14,rect_padding:10,line_height:20},mindmap:{useMaxWidth:!0,padding:10,maxNodeWidth:200},timeline:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,leftMargin:150,width:150,height:50,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",bottomMarginAdj:1,rightAngles:!1,taskFontSize:14,taskFontFamily:'"Open Sans", sans-serif',taskMargin:50,activationWidth:10,textPlacement:"fo",actorColours:["#8FBC8F","#7CFC00","#00FFFF","#20B2AA","#B0E0E6","#FFFFE0"],sectionFills:["#191970","#8B008B","#4B0082","#2F4F4F","#800000","#8B4513","#00008B"],sectionColours:["#fff"],disableMulticolor:!1},gitGraph:{useMaxWidth:!0,titleTopMargin:25,diagramPadding:8,nodeLabel:{width:75,height:100,x:-25,y:0},mainBranchName:"main",mainBranchOrder:0,showCommitLabel:!0,showBranches:!0,rotateCommitLabel:!0,parallelCommits:!1,arrowMarkerAbsolute:!1},c4:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,c4ShapeMargin:50,c4ShapePadding:20,width:216,height:60,boxMargin:10,c4ShapeInRow:4,nextLinePaddingX:0,c4BoundaryInRow:2,personFontSize:14,personFontFamily:'"Open Sans", sans-serif',personFontWeight:"normal",external_personFontSize:14,external_personFontFamily:'"Open Sans", sans-serif',external_personFontWeight:"normal",systemFontSize:14,systemFontFamily:'"Open Sans", sans-serif',systemFontWeight:"normal",external_systemFontSize:14,external_systemFontFamily:'"Open Sans", sans-serif',external_systemFontWeight:"normal",system_dbFontSize:14,system_dbFontFamily:'"Open Sans", sans-serif',system_dbFontWeight:"normal",external_system_dbFontSize:14,external_system_dbFontFamily:'"Open Sans", sans-serif',external_system_dbFontWeight:"normal",system_queueFontSize:14,system_queueFontFamily:'"Open Sans", sans-serif',system_queueFontWeight:"normal",external_system_queueFontSize:14,external_system_queueFontFamily:'"Open Sans", sans-serif',external_system_queueFontWeight:"normal",boundaryFontSize:14,boundaryFontFamily:'"Open Sans", sans-serif',boundaryFontWeight:"normal",messageFontSize:12,messageFontFamily:'"Open Sans", sans-serif',messageFontWeight:"normal",containerFontSize:14,containerFontFamily:'"Open Sans", sans-serif',containerFontWeight:"normal",external_containerFontSize:14,external_containerFontFamily:'"Open Sans", sans-serif',external_containerFontWeight:"normal",container_dbFontSize:14,container_dbFontFamily:'"Open Sans", sans-serif',container_dbFontWeight:"normal",external_container_dbFontSize:14,external_container_dbFontFamily:'"Open Sans", sans-serif',external_container_dbFontWeight:"normal",container_queueFontSize:14,container_queueFontFamily:'"Open Sans", sans-serif',container_queueFontWeight:"normal",external_container_queueFontSize:14,external_container_queueFontFamily:'"Open Sans", sans-serif',external_container_queueFontWeight:"normal",componentFontSize:14,componentFontFamily:'"Open Sans", sans-serif',componentFontWeight:"normal",external_componentFontSize:14,external_componentFontFamily:'"Open Sans", sans-serif',external_componentFontWeight:"normal",component_dbFontSize:14,component_dbFontFamily:'"Open Sans", sans-serif',component_dbFontWeight:"normal",external_component_dbFontSize:14,external_component_dbFontFamily:'"Open Sans", sans-serif',external_component_dbFontWeight:"normal",component_queueFontSize:14,component_queueFontFamily:'"Open Sans", sans-serif',component_queueFontWeight:"normal",external_component_queueFontSize:14,external_component_queueFontFamily:'"Open Sans", sans-serif',external_component_queueFontWeight:"normal",wrap:!0,wrapPadding:10,person_bg_color:"#08427B",person_border_color:"#073B6F",external_person_bg_color:"#686868",external_person_border_color:"#8A8A8A",system_bg_color:"#1168BD",system_border_color:"#3C7FC0",system_db_bg_color:"#1168BD",system_db_border_color:"#3C7FC0",system_queue_bg_color:"#1168BD",system_queue_border_color:"#3C7FC0",external_system_bg_color:"#999999",external_system_border_color:"#8A8A8A",external_system_db_bg_color:"#999999",external_system_db_border_color:"#8A8A8A",external_system_queue_bg_color:"#999999",external_system_queue_border_color:"#8A8A8A",container_bg_color:"#438DD5",container_border_color:"#3C7FC0",container_db_bg_color:"#438DD5",container_db_border_color:"#3C7FC0",container_queue_bg_color:"#438DD5",container_queue_border_color:"#3C7FC0",external_container_bg_color:"#B3B3B3",external_container_border_color:"#A6A6A6",external_container_db_bg_color:"#B3B3B3",external_container_db_border_color:"#A6A6A6",external_container_queue_bg_color:"#B3B3B3",external_container_queue_border_color:"#A6A6A6",component_bg_color:"#85BBF0",component_border_color:"#78A8D8",component_db_bg_color:"#85BBF0",component_db_border_color:"#78A8D8",component_queue_bg_color:"#85BBF0",component_queue_border_color:"#78A8D8",external_component_bg_color:"#CCCCCC",external_component_border_color:"#BFBFBF",external_component_db_bg_color:"#CCCCCC",external_component_db_border_color:"#BFBFBF",external_component_queue_bg_color:"#CCCCCC",external_component_queue_border_color:"#BFBFBF"},sankey:{useMaxWidth:!0,width:600,height:400,linkColor:"gradient",nodeAlignment:"justify",showValues:!0,prefix:"",suffix:""},block:{useMaxWidth:!0,padding:8},packet:{useMaxWidth:!0,rowHeight:32,bitWidth:32,bitsPerRow:32,showBits:!0,paddingX:5,paddingY:5},theme:"default",look:"classic",handDrawnSeed:0,layout:"dagre",maxTextSize:5e4,maxEdges:500,darkMode:!1,fontFamily:'"trebuchet ms", verdana, arial, sans-serif;',logLevel:5,securityLevel:"strict",startOnLoad:!0,arrowMarkerAbsolute:!1,secure:["secure","securityLevel","startOnLoad","maxTextSize","suppressErrorRendering","maxEdges"],legacyMathML:!1,forceLegacyMathML:!1,deterministicIds:!1,fontSize:16,markdownAutoWrap:!0,suppressErrorRendering:!1},V={...Y,deterministicIDSeed:void 0,elk:{mergeEdges:!1,nodePlacementStrategy:"SIMPLE"},themeCSS:void 0,themeVariables:H.default.getThemeVariables(),sequence:{...Y.sequence,messageFont:m((function(){return{fontFamily:this.messageFontFamily,fontSize:this.messageFontSize,fontWeight:this.messageFontWeight}}),"messageFont"),noteFont:m((function(){return{fontFamily:this.noteFontFamily,fontSize:this.noteFontSize,fontWeight:this.noteFontWeight}}),"noteFont"),actorFont:m((function(){return{fontFamily:this.actorFontFamily,fontSize:this.actorFontSize,fontWeight:this.actorFontWeight}}),"actorFont")},gantt:{...Y.gantt,tickInterval:void 0,useWidth:void 0},c4:{...Y.c4,useWidth:void 0,personFont:m((function(){return{fontFamily:this.personFontFamily,fontSize:this.personFontSize,fontWeight:this.personFontWeight}}),"personFont"),external_personFont:m((function(){return{fontFamily:this.external_personFontFamily,fontSize:this.external_personFontSize,fontWeight:this.external_personFontWeight}}),"external_personFont"),systemFont:m((function(){return{fontFamily:this.systemFontFamily,fontSize:this.systemFontSize,fontWeight:this.systemFontWeight}}),"systemFont"),external_systemFont:m((function(){return{fontFamily:this.external_systemFontFamily,fontSize:this.external_systemFontSize,fontWeight:this.external_systemFontWeight}}),"external_systemFont"),system_dbFont:m((function(){return{fontFamily:this.system_dbFontFamily,fontSize:this.system_dbFontSize,fontWeight:this.system_dbFontWeight}}),"system_dbFont"),external_system_dbFont:m((function(){return{fontFamily:this.external_system_dbFontFamily,fontSize:this.external_system_dbFontSize,fontWeight:this.external_system_dbFontWeight}}),"external_system_dbFont"),system_queueFont:m((function(){return{fontFamily:this.system_queueFontFamily,fontSize:this.system_queueFontSize,fontWeight:this.system_queueFontWeight}}),"system_queueFont"),external_system_queueFont:m((function(){return{fontFamily:this.external_system_queueFontFamily,fontSize:this.external_system_queueFontSize,fontWeight:this.external_system_queueFontWeight}}),"external_system_queueFont"),containerFont:m((function(){return{fontFamily:this.containerFontFamily,fontSize:this.containerFontSize,fontWeight:this.containerFontWeight}}),"containerFont"),external_containerFont:m((function(){return{fontFamily:this.external_containerFontFamily,fontSize:this.external_containerFontSize,fontWeight:this.external_containerFontWeight}}),"external_containerFont"),container_dbFont:m((function(){return{fontFamily:this.container_dbFontFamily,fontSize:this.container_dbFontSize,fontWeight:this.container_dbFontWeight}}),"container_dbFont"),external_container_dbFont:m((function(){return{fontFamily:this.external_container_dbFontFamily,fontSize:this.external_container_dbFontSize,fontWeight:this.external_container_dbFontWeight}}),"external_container_dbFont"),container_queueFont:m((function(){return{fontFamily:this.container_queueFontFamily,fontSize:this.container_queueFontSize,fontWeight:this.container_queueFontWeight}}),"container_queueFont"),external_container_queueFont:m((function(){return{fontFamily:this.external_container_queueFontFamily,fontSize:this.external_container_queueFontSize,fontWeight:this.external_container_queueFontWeight}}),"external_container_queueFont"),componentFont:m((function(){return{fontFamily:this.componentFontFamily,fontSize:this.componentFontSize,fontWeight:this.componentFontWeight}}),"componentFont"),external_componentFont:m((function(){return{fontFamily:this.external_componentFontFamily,fontSize:this.external_componentFontSize,fontWeight:this.external_componentFontWeight}}),"external_componentFont"),component_dbFont:m((function(){return{fontFamily:this.component_dbFontFamily,fontSize:this.component_dbFontSize,fontWeight:this.component_dbFontWeight}}),"component_dbFont"),external_component_dbFont:m((function(){return{fontFamily:this.external_component_dbFontFamily,fontSize:this.external_component_dbFontSize,fontWeight:this.external_component_dbFontWeight}}),"external_component_dbFont"),component_queueFont:m((function(){return{fontFamily:this.component_queueFontFamily,fontSize:this.component_queueFontSize,fontWeight:this.component_queueFontWeight}}),"component_queueFont"),external_component_queueFont:m((function(){return{fontFamily:this.external_component_queueFontFamily,fontSize:this.external_component_queueFontSize,fontWeight:this.external_component_queueFontWeight}}),"external_component_queueFont"),boundaryFont:m((function(){return{fontFamily:this.boundaryFontFamily,fontSize:this.boundaryFontSize,fontWeight:this.boundaryFontWeight}}),"boundaryFont"),messageFont:m((function(){return{fontFamily:this.messageFontFamily,fontSize:this.messageFontSize,fontWeight:this.messageFontWeight}}),"messageFont")},pie:{...Y.pie,useWidth:984},xyChart:{...Y.xyChart,useWidth:void 0},requirement:{...Y.requirement,useWidth:void 0},packet:{...Y.packet}},G=m(((t,e="")=>Object.keys(t).reduce(((r,i)=>Array.isArray(t[i])?r:"object"==typeof t[i]&&null!==t[i]?[...r,e+i,...G(t[i],"")]:[...r,e+i]),[])),"keyify"),Z=new Set(G(V,"")),X=V,Q=m((t=>{if(C.debug("sanitizeDirective called with",t),"object"==typeof t&&null!=t)if(Array.isArray(t))t.forEach((t=>Q(t)));else{for(const e of Object.keys(t)){if(C.debug("Checking key",e),e.startsWith("__")||e.includes("proto")||e.includes("constr")||!Z.has(e)||null==t[e]){C.debug("sanitize deleting key: ",e),delete t[e];continue}if("object"==typeof t[e]){C.debug("sanitizing object",e),Q(t[e]);continue}const r=["themeCSS","fontFamily","altFontFamily"];for(const i of r)e.includes(i)&&(C.debug("sanitizing css option",e),t[e]=J(t[e]))}if(t.themeVariables)for(const e of Object.keys(t.themeVariables)){const r=t.themeVariables[e];r?.match&&!r.match(/^[\d "#%(),.;A-Za-z]+$/)&&(t.themeVariables[e]="")}C.debug("After sanitization",t)}}),"sanitizeDirective"),J=m((t=>{let e=0,r=0;for(const i of t){if(e{let r=E({},t),i={};for(const n of e)ut(n),i=E(i,n);if(r=E(r,i),i.theme&&i.theme in H){const t=E({},h),e=E(t.themeVariables||{},i.themeVariables);r.theme&&r.theme in H&&(r.themeVariables=H[r.theme].getThemeVariables(e))}return mt(it=r),it}),"updateCurrentConfig"),ot=m((t=>(et=E({},tt),et=E(et,t),t.theme&&H[t.theme]&&(et.themeVariables=H[t.theme].getThemeVariables(t.themeVariables)),nt(et,rt),et)),"setSiteConfig"),st=m((t=>{h=E({},t)}),"saveConfigFromInitialize"),at=m((t=>(et=E(et,t),nt(et,rt),et)),"updateSiteConfig"),lt=m((()=>E({},et)),"getSiteConfig"),ct=m((t=>(mt(t),E(it,t),ht())),"setConfig"),ht=m((()=>E({},it)),"getConfig"),ut=m((t=>{t&&(["secure",...et.secure??[]].forEach((e=>{Object.hasOwn(t,e)&&(C.debug(`Denied attempt to modify a secure key ${e}`,t[e]),delete t[e])})),Object.keys(t).forEach((e=>{e.startsWith("__")&&delete t[e]})),Object.keys(t).forEach((e=>{"string"==typeof t[e]&&(t[e].includes("<")||t[e].includes(">")||t[e].includes("url(data:"))&&delete t[e],"object"==typeof t[e]&&ut(t[e])})))}),"sanitize"),dt=m((t=>{Q(t),t.fontFamily&&!t.themeVariables?.fontFamily&&(t.themeVariables={...t.themeVariables,fontFamily:t.fontFamily}),rt.push(t),nt(et,rt)}),"addDirective"),pt=m(((t=et)=>{nt(t,rt=[])}),"reset"),ft={LAZY_LOAD_DEPRECATED:"The configuration options lazyLoadedDiagrams and loadExternalDiagramsAtStartup are deprecated. Please use registerExternalDiagrams instead."},gt={},yt=m((t=>{gt[t]||(C.warn(ft[t]),gt[t]=!0)}),"issueWarning"),mt=m((t=>{t&&(t.lazyLoadedDiagrams||t.loadExternalDiagramsAtStartup)&&yt("LAZY_LOAD_DEPRECATED")}),"checkConfig"),xt=//gi,bt=m((t=>{if(!t)return[""];return Bt(t).replace(/\\n/g,"#br#").split("#br#")}),"getRows"),Ct=(()=>{let t=!1;return()=>{t||(kt(),t=!0)}})();function kt(){const t="data-temp-href-target";f.addHook("beforeSanitizeAttributes",(e=>{"A"===e.tagName&&e.hasAttribute("target")&&e.setAttribute(t,e.getAttribute("target")??"")})),f.addHook("afterSanitizeAttributes",(e=>{"A"===e.tagName&&e.hasAttribute(t)&&(e.setAttribute("target",e.getAttribute(t)??""),e.removeAttribute(t),"_blank"===e.getAttribute("target")&&e.setAttribute("rel","noopener"))}))}m(kt,"setupDompurifyHooks");var _t=m((t=>{Ct();return f.sanitize(t)}),"removeScript"),wt=m(((t,e)=>{if(!1!==e.flowchart?.htmlLabels){const r=e.securityLevel;"antiscript"===r||"strict"===r?t=_t(t):"loose"!==r&&(t=(t=(t=Bt(t)).replace(//g,">")).replace(/=/g,"="),t=Mt(t))}return t}),"sanitizeMore"),vt=m(((t,e)=>t?t=e.dompurifyConfig?f.sanitize(wt(t,e),e.dompurifyConfig).toString():f.sanitize(wt(t,e),{FORBID_TAGS:["style"]}).toString():t),"sanitizeText"),Tt=m(((t,e)=>"string"==typeof t?vt(t,e):t.flat().map((t=>vt(t,e)))),"sanitizeTextOrArray"),St=m((t=>xt.test(t)),"hasBreaks"),At=m((t=>t.split(xt)),"splitBreaks"),Mt=m((t=>t.replace(/#br#/g,"
")),"placeholderToBreak"),Bt=m((t=>t.replace(xt,"#br#")),"breakToPlaceholder"),Lt=m((t=>{let e="";return t&&(e=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,e=e.replaceAll(/\(/g,"\\("),e=e.replaceAll(/\)/g,"\\)")),e}),"getUrl"),Ft=m((t=>!1!==t&&!["false","null","0"].includes(String(t).trim().toLowerCase())),"evaluate"),$t=m((function(...t){const e=t.filter((t=>!isNaN(t)));return Math.max(...e)}),"getMax"),Et=m((function(...t){const e=t.filter((t=>!isNaN(t)));return Math.min(...e)}),"getMin"),Ot=m((function(t){const e=t.split(/(,)/),r=[];for(let i=0;i0&&i+1Math.max(0,t.split(e).length-1)),"countOccurrence"),It=m(((t,e)=>{const r=Dt(t,"~"),i=Dt(e,"~");return 1===r&&1===i}),"shouldCombineSets"),Rt=m((t=>{const e=Dt(t,"~");let r=!1;if(e<=1)return t;e%2!=0&&t.startsWith("~")&&(t=t.substring(1),r=!0);const i=[...t];let n=i.indexOf("~"),o=i.lastIndexOf("~");for(;-1!==n&&-1!==o&&n!==o;)i[n]="<",i[o]=">",n=i.indexOf("~"),o=i.lastIndexOf("~");return r&&i.unshift("~"),i.join("")}),"processSet"),Nt=m((()=>void 0!==window.MathMLElement),"isMathMLSupported"),qt=/\$\$(.*)\$\$/g,zt=m((t=>(t.match(qt)?.length??0)>0),"hasKatex"),Pt=m((async(t,e)=>{t=await Kt(t,e);const r=document.createElement("div");r.innerHTML=t,r.id="katex-temp",r.style.visibility="hidden",r.style.position="absolute",r.style.top="0";const i=document.querySelector("body");i?.insertAdjacentElement("beforeend",r);const n={width:r.clientWidth,height:r.clientHeight};return r.remove(),n}),"calculateMathMLDimensions"),Kt=m((async(t,e)=>{if(!zt(t))return t;if(!(Nt()||e.legacyMathML||e.forceLegacyMathML))return t.replace(qt,"MathML is unsupported in this environment.");const{default:i}=await r.e(2130).then(r.bind(r,22130)),n=e.forceLegacyMathML||!Nt()&&e.legacyMathML?"htmlAndMathml":"mathml";return t.split(xt).map((t=>zt(t)?`
${t}
`:`
${t}
`)).join("").replace(qt,((t,e)=>i.renderToString(e,{throwOnError:!0,displayMode:!0,output:n}).replace(/\n/g," ").replace(//g,"")))}),"renderKatex"),jt={getRows:bt,sanitizeText:vt,sanitizeTextOrArray:Tt,hasBreaks:St,splitBreaks:At,lineBreakRegex:xt,removeScript:_t,getUrl:Lt,evaluate:Ft,getMax:$t,getMin:Et},Wt=m((function(t,e){for(let r of e)t.attr(r[0],r[1])}),"d3Attrs"),Ut=m((function(t,e,r){let i=new Map;return r?(i.set("width","100%"),i.set("style",`max-width: ${e}px;`)):(i.set("height",t),i.set("width",e)),i}),"calculateSvgSizeAttrs"),Ht=m((function(t,e,r,i){const n=Ut(e,r,i);Wt(t,n)}),"configureSvgSize"),Yt=m((function(t,e,r,i){const n=e.node().getBBox(),o=n.width,s=n.height;C.info(`SVG bounds: ${o}x${s}`,n);let a=0,l=0;C.info(`Graph bounds: ${a}x${l}`,t),a=o+2*r,l=s+2*r,C.info(`Calculated bounds: ${a}x${l}`),Ht(e,l,a,i);const c=`${n.x-r} ${n.y-r} ${n.width+2*r} ${n.height+2*r}`;e.attr("viewBox",c)}),"setupGraphViewbox"),Vt={},Gt=m(((t,e,r)=>{let i="";return t in Vt&&Vt[t]?i=Vt[t](r):C.warn(`No theme found for ${t}`),` & {\n font-family: ${r.fontFamily};\n font-size: ${r.fontSize};\n fill: ${r.textColor}\n }\n\n /* Classes common for multiple diagrams */\n\n & .error-icon {\n fill: ${r.errorBkgColor};\n }\n & .error-text {\n fill: ${r.errorTextColor};\n stroke: ${r.errorTextColor};\n }\n\n & .edge-thickness-normal {\n stroke-width: 1px;\n }\n & .edge-thickness-thick {\n stroke-width: 3.5px\n }\n & .edge-pattern-solid {\n stroke-dasharray: 0;\n }\n & .edge-thickness-invisible {\n stroke-width: 0;\n fill: none;\n }\n & .edge-pattern-dashed{\n stroke-dasharray: 3;\n }\n .edge-pattern-dotted {\n stroke-dasharray: 2;\n }\n\n & .marker {\n fill: ${r.lineColor};\n stroke: ${r.lineColor};\n }\n & .marker.cross {\n stroke: ${r.lineColor};\n }\n\n & svg {\n font-family: ${r.fontFamily};\n font-size: ${r.fontSize};\n }\n & p {\n margin: 0\n }\n\n ${i}\n\n ${e}\n`}),"getStyles"),Zt=m(((t,e)=>{void 0!==e&&(Vt[t]=e)}),"addStylesForDiagram"),Xt=Gt,Qt={};x(Qt,{clear:()=>ie,getAccDescription:()=>ae,getAccTitle:()=>oe,getDiagramTitle:()=>ce,setAccDescription:()=>se,setAccTitle:()=>ne,setDiagramTitle:()=>le});var Jt="",te="",ee="",re=m((t=>vt(t,ht())),"sanitizeText"),ie=m((()=>{Jt="",ee="",te=""}),"clear"),ne=m((t=>{Jt=re(t).replace(/^\s+/g,"")}),"setAccTitle"),oe=m((()=>Jt),"getAccTitle"),se=m((t=>{ee=re(t).replace(/\n\s+/g,"\n")}),"setAccDescription"),ae=m((()=>ee),"getAccDescription"),le=m((t=>{te=re(t)}),"setDiagramTitle"),ce=m((()=>te),"getDiagramTitle"),he=C,ue=k,de=ht,pe=ct,fe=tt,ge=m((t=>vt(t,de())),"sanitizeText"),ye=Yt,me=m((()=>Qt),"getCommonDb"),xe={},be=m(((t,e,r)=>{xe[t]&&he.warn(`Diagram with id ${t} already registered. Overwriting.`),xe[t]=e,r&&L(t,r),Zt(t,e.styles),e.injectUtils?.(he,ue,de,ge,ye,me(),(()=>{}))}),"registerDiagram"),Ce=m((t=>{if(t in xe)return xe[t];throw new ke(t)}),"getDiagram"),ke=class extends Error{static{m(this,"DiagramNotFoundError")}constructor(t){super(`Diagram ${t} not found.`)}}},67895:(t,e,r)=>{"use strict";r.d(e,{W6:()=>Mt,GZ:()=>$t,hE:()=>Ft});var i=r(57323),n=r(64994),o=r(20007),s=r(96763);function a(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}let l={async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null};function c(t){l=t}const h=/[&<>"']/,u=new RegExp(h.source,"g"),d=/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,p=new RegExp(d.source,"g"),f={"&":"&","<":"<",">":">",'"':""","'":"'"},g=t=>f[t];function y(t,e){if(e){if(h.test(t))return t.replace(u,g)}else if(d.test(t))return t.replace(p,g);return t}const m=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/gi;const x=/(^|[^\[])\^/g;function b(t,e){let r="string"==typeof t?t:t.source;e=e||"";const i={replace:(t,e)=>{let n="string"==typeof e?e:e.source;return n=n.replace(x,"$1"),r=r.replace(t,n),i},getRegex:()=>new RegExp(r,e)};return i}function C(t){try{t=encodeURI(t).replace(/%25/g,"%")}catch{return null}return t}const k={exec:()=>null};function _(t,e){const r=t.replace(/\|/g,((t,e,r)=>{let i=!1,n=e;for(;--n>=0&&"\\"===r[n];)i=!i;return i?"|":" |"})).split(/ \|/);let i=0;if(r[0].trim()||r.shift(),r.length>0&&!r[r.length-1].trim()&&r.pop(),e)if(r.length>e)r.splice(e);else for(;r.length0)return{type:"space",raw:e[0]}}code(t){const e=this.rules.block.code.exec(t);if(e){const t=e[0].replace(/^ {1,4}/gm,"");return{type:"code",raw:e[0],codeBlockStyle:"indented",text:this.options.pedantic?t:w(t,"\n")}}}fences(t){const e=this.rules.block.fences.exec(t);if(e){const t=e[0],r=function(t,e){const r=t.match(/^(\s+)(?:```)/);if(null===r)return e;const i=r[1];return e.split("\n").map((t=>{const e=t.match(/^\s+/);if(null===e)return t;const[r]=e;return r.length>=i.length?t.slice(i.length):t})).join("\n")}(t,e[3]||"");return{type:"code",raw:t,lang:e[2]?e[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):e[2],text:r}}}heading(t){const e=this.rules.block.heading.exec(t);if(e){let t=e[2].trim();if(/#$/.test(t)){const e=w(t,"#");this.options.pedantic?t=e.trim():e&&!/ $/.test(e)||(t=e.trim())}return{type:"heading",raw:e[0],depth:e[1].length,text:t,tokens:this.lexer.inline(t)}}}hr(t){const e=this.rules.block.hr.exec(t);if(e)return{type:"hr",raw:w(e[0],"\n")}}blockquote(t){const e=this.rules.block.blockquote.exec(t);if(e){let t=w(e[0],"\n").split("\n"),r="",i="";const n=[];for(;t.length>0;){let e=!1;const o=[];let s;for(s=0;s/.test(t[s]))o.push(t[s]),e=!0;else{if(e)break;o.push(t[s])}t=t.slice(s);const a=o.join("\n"),l=a.replace(/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,"\n $1").replace(/^ {0,3}>[ \t]?/gm,"");r=r?`${r}\n${a}`:a,i=i?`${i}\n${l}`:l;const c=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTokens(l,n,!0),this.lexer.state.top=c,0===t.length)break;const h=n[n.length-1];if("code"===h?.type)break;if("blockquote"===h?.type){const e=h,o=e.raw+"\n"+t.join("\n"),s=this.blockquote(o);n[n.length-1]=s,r=r.substring(0,r.length-e.raw.length)+s.raw,i=i.substring(0,i.length-e.text.length)+s.text;break}if("list"!==h?.type);else{const e=h,o=e.raw+"\n"+t.join("\n"),s=this.list(o);n[n.length-1]=s,r=r.substring(0,r.length-h.raw.length)+s.raw,i=i.substring(0,i.length-e.raw.length)+s.raw,t=o.substring(n[n.length-1].raw.length).split("\n")}}return{type:"blockquote",raw:r,tokens:n,text:i}}}list(t){let e=this.rules.block.list.exec(t);if(e){let r=e[1].trim();const i=r.length>1,n={type:"list",raw:"",ordered:i,start:i?+r.slice(0,-1):"",loose:!1,items:[]};r=i?`\\d{1,9}\\${r.slice(-1)}`:`\\${r}`,this.options.pedantic&&(r=i?r:"[*+-]");const o=new RegExp(`^( {0,3}${r})((?:[\t ][^\\n]*)?(?:\\n|$))`);let s=!1;for(;t;){let r=!1,i="",a="";if(!(e=o.exec(t)))break;if(this.rules.block.hr.test(t))break;i=e[0],t=t.substring(i.length);let l=e[2].split("\n",1)[0].replace(/^\t+/,(t=>" ".repeat(3*t.length))),c=t.split("\n",1)[0],h=!l.trim(),u=0;if(this.options.pedantic?(u=2,a=l.trimStart()):h?u=e[1].length+1:(u=e[2].search(/[^ ]/),u=u>4?1:u,a=l.slice(u),u+=e[1].length),h&&/^ *$/.test(c)&&(i+=c+"\n",t=t.substring(c.length+1),r=!0),!r){const e=new RegExp(`^ {0,${Math.min(3,u-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ \t][^\\n]*)?(?:\\n|$))`),r=new RegExp(`^ {0,${Math.min(3,u-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),n=new RegExp(`^ {0,${Math.min(3,u-1)}}(?:\`\`\`|~~~)`),o=new RegExp(`^ {0,${Math.min(3,u-1)}}#`);for(;t;){const s=t.split("\n",1)[0];if(c=s,this.options.pedantic&&(c=c.replace(/^ {1,4}(?=( {4})*[^ ])/g," ")),n.test(c))break;if(o.test(c))break;if(e.test(c))break;if(r.test(t))break;if(c.search(/[^ ]/)>=u||!c.trim())a+="\n"+c.slice(u);else{if(h)break;if(l.search(/[^ ]/)>=4)break;if(n.test(l))break;if(o.test(l))break;if(r.test(l))break;a+="\n"+c}h||c.trim()||(h=!0),i+=s+"\n",t=t.substring(s.length+1),l=c.slice(u)}}n.loose||(s?n.loose=!0:/\n *\n *$/.test(i)&&(s=!0));let d,p=null;this.options.gfm&&(p=/^\[[ xX]\] /.exec(a),p&&(d="[ ] "!==p[0],a=a.replace(/^\[[ xX]\] +/,""))),n.items.push({type:"list_item",raw:i,task:!!p,checked:d,loose:!1,text:a,tokens:[]}),n.raw+=i}n.items[n.items.length-1].raw=n.items[n.items.length-1].raw.trimEnd(),n.items[n.items.length-1].text=n.items[n.items.length-1].text.trimEnd(),n.raw=n.raw.trimEnd();for(let t=0;t"space"===t.type)),r=e.length>0&&e.some((t=>/\n.*\n/.test(t.raw)));n.loose=r}if(n.loose)for(let t=0;t$/,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",i=e[3]?e[3].substring(1,e[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):e[3];return{type:"def",tag:t,raw:e[0],href:r,title:i}}}table(t){const e=this.rules.block.table.exec(t);if(!e)return;if(!/[:|]/.test(e[2]))return;const r=_(e[1]),i=e[2].replace(/^\||\| *$/g,"").split("|"),n=e[3]&&e[3].trim()?e[3].replace(/\n[ \t]*$/,"").split("\n"):[],o={type:"table",raw:e[0],header:[],align:[],rows:[]};if(r.length===i.length){for(const t of i)/^ *-+: *$/.test(t)?o.align.push("right"):/^ *:-+: *$/.test(t)?o.align.push("center"):/^ *:-+ *$/.test(t)?o.align.push("left"):o.align.push(null);for(let t=0;t({text:t,tokens:this.lexer.inline(t),header:!1,align:o.align[e]}))));return o}}lheading(t){const e=this.rules.block.lheading.exec(t);if(e)return{type:"heading",raw:e[0],depth:"="===e[2].charAt(0)?1:2,text:e[1],tokens:this.lexer.inline(e[1])}}paragraph(t){const e=this.rules.block.paragraph.exec(t);if(e){const t="\n"===e[1].charAt(e[1].length-1)?e[1].slice(0,-1):e[1];return{type:"paragraph",raw:e[0],text:t,tokens:this.lexer.inline(t)}}}text(t){const e=this.rules.block.text.exec(t);if(e)return{type:"text",raw:e[0],text:e[0],tokens:this.lexer.inline(e[0])}}escape(t){const e=this.rules.inline.escape.exec(t);if(e)return{type:"escape",raw:e[0],text:y(e[1])}}tag(t){const e=this.rules.inline.tag.exec(t);if(e)return!this.lexer.state.inLink&&/^/i.test(e[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(e[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(e[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:e[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:e[0]}}link(t){const e=this.rules.inline.link.exec(t);if(e){const t=e[2].trim();if(!this.options.pedantic&&/^$/.test(t))return;const e=w(t.slice(0,-1),"\\");if((t.length-e.length)%2==0)return}else{const t=function(t,e){if(-1===t.indexOf(e[1]))return-1;let r=0;for(let i=0;i-1){const r=(0===e[0].indexOf("!")?5:4)+e[1].length+t;e[2]=e[2].substring(0,t),e[0]=e[0].substring(0,r).trim(),e[3]=""}}let r=e[2],i="";if(this.options.pedantic){const t=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(r);t&&(r=t[1],i=t[3])}else i=e[3]?e[3].slice(1,-1):"";return r=r.trim(),/^$/.test(t)?r.slice(1):r.slice(1,-1)),v(e,{href:r?r.replace(this.rules.inline.anyPunctuation,"$1"):r,title:i?i.replace(this.rules.inline.anyPunctuation,"$1"):i},e[0],this.lexer)}}reflink(t,e){let r;if((r=this.rules.inline.reflink.exec(t))||(r=this.rules.inline.nolink.exec(t))){const t=e[(r[2]||r[1]).replace(/\s+/g," ").toLowerCase()];if(!t){const t=r[0].charAt(0);return{type:"text",raw:t,text:t}}return v(r,t,r[0],this.lexer)}}emStrong(t,e,r=""){let i=this.rules.inline.emStrongLDelim.exec(t);if(!i)return;if(i[3]&&r.match(/[\p{L}\p{N}]/u))return;if(!(i[1]||i[2]||"")||!r||this.rules.inline.punctuation.exec(r)){const r=[...i[0]].length-1;let n,o,s=r,a=0;const l="*"===i[0][0]?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(l.lastIndex=0,e=e.slice(-1*t.length+r);null!=(i=l.exec(e));){if(n=i[1]||i[2]||i[3]||i[4]||i[5]||i[6],!n)continue;if(o=[...n].length,i[3]||i[4]){s+=o;continue}if((i[5]||i[6])&&r%3&&!((r+o)%3)){a+=o;continue}if(s-=o,s>0)continue;o=Math.min(o,o+s+a);const e=[...i[0]][0].length,l=t.slice(0,r+i.index+e+o);if(Math.min(r,o)%2){const t=l.slice(1,-1);return{type:"em",raw:l,text:t,tokens:this.lexer.inlineTokens(t)}}const c=l.slice(2,-2);return{type:"strong",raw:l,text:c,tokens:this.lexer.inlineTokens(c)}}}}codespan(t){const e=this.rules.inline.code.exec(t);if(e){let t=e[2].replace(/\n/g," ");const r=/[^ ]/.test(t),i=/^ /.test(t)&&/ $/.test(t);return r&&i&&(t=t.substring(1,t.length-1)),t=y(t,!0),{type:"codespan",raw:e[0],text:t}}}br(t){const e=this.rules.inline.br.exec(t);if(e)return{type:"br",raw:e[0]}}del(t){const e=this.rules.inline.del.exec(t);if(e)return{type:"del",raw:e[0],text:e[2],tokens:this.lexer.inlineTokens(e[2])}}autolink(t){const e=this.rules.inline.autolink.exec(t);if(e){let t,r;return"@"===e[2]?(t=y(e[1]),r="mailto:"+t):(t=y(e[1]),r=t),{type:"link",raw:e[0],text:t,href:r,tokens:[{type:"text",raw:t,text:t}]}}}url(t){let e;if(e=this.rules.inline.url.exec(t)){let t,r;if("@"===e[2])t=y(e[0]),r="mailto:"+t;else{let i;do{i=e[0],e[0]=this.rules.inline._backpedal.exec(e[0])?.[0]??""}while(i!==e[0]);t=y(e[0]),r="www."===e[1]?"http://"+e[0]:e[0]}return{type:"link",raw:e[0],text:t,href:r,tokens:[{type:"text",raw:t,text:t}]}}}inlineText(t){const e=this.rules.inline.text.exec(t);if(e){let t;return t=this.lexer.state.inRawBlock?e[0]:y(e[0]),{type:"text",raw:e[0],text:t}}}}const S=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,A=/(?:[*+-]|\d{1,9}[.)])/,M=b(/^(?!bull |blockCode|fences|blockquote|heading|html)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html))+?)\n {0,3}(=+|-+) *(?:\n+|$)/).replace(/bull/g,A).replace(/blockCode/g,/ {4}/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).getRegex(),B=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,L=/(?!\s*\])(?:\\.|[^\[\]\\])+/,F=b(/^ {0,3}\[(label)\]: *(?:\n *)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n *)?| *\n *)(title))? *(?:\n+|$)/).replace("label",L).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),$=b(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,A).getRegex(),E="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",O=/|$))/,D=b("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n *)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$))","i").replace("comment",O).replace("tag",E).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),I=b(B).replace("hr",S).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",E).getRegex(),R={blockquote:b(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",I).getRegex(),code:/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,def:F,fences:/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,heading:/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,hr:S,html:D,lheading:M,list:$,newline:/^(?: *(?:\n|$))+/,paragraph:I,table:k,text:/^[^\n]+/},N=b("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",S).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",E).getRegex(),q={...R,table:N,paragraph:b(B).replace("hr",S).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",N).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",E).getRegex()},z={...R,html:b("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment",O).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:k,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:b(B).replace("hr",S).replace("heading"," *#{1,6} *[^\n]").replace("lheading",M).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},P=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,K=/^( {2,}|\\)\n(?!\s*$)/,j="\\p{P}\\p{S}",W=b(/^((?![*_])[\spunctuation])/,"u").replace(/punctuation/g,j).getRegex(),U=b(/^(?:\*+(?:((?!\*)[punct])|[^\s*]))|^_+(?:((?!_)[punct])|([^\s_]))/,"u").replace(/punct/g,j).getRegex(),H=b("^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)[punct](\\*+)(?=[\\s]|$)|[^punct\\s](\\*+)(?!\\*)(?=[punct\\s]|$)|(?!\\*)[punct\\s](\\*+)(?=[^punct\\s])|[\\s](\\*+)(?!\\*)(?=[punct])|(?!\\*)[punct](\\*+)(?!\\*)(?=[punct])|[^punct\\s](\\*+)(?=[^punct\\s])","gu").replace(/punct/g,j).getRegex(),Y=b("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)[punct](_+)(?=[\\s]|$)|[^punct\\s](_+)(?!_)(?=[punct\\s]|$)|(?!_)[punct\\s](_+)(?=[^punct\\s])|[\\s](_+)(?!_)(?=[punct])|(?!_)[punct](_+)(?!_)(?=[punct])","gu").replace(/punct/g,j).getRegex(),V=b(/\\([punct])/,"gu").replace(/punct/g,j).getRegex(),G=b(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),Z=b(O).replace("(?:--\x3e|$)","--\x3e").getRegex(),X=b("^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^").replace("comment",Z).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),Q=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,J=b(/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/).replace("label",Q).replace("href",/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),tt=b(/^!?\[(label)\]\[(ref)\]/).replace("label",Q).replace("ref",L).getRegex(),et=b(/^!?\[(ref)\](?:\[\])?/).replace("ref",L).getRegex(),rt={_backpedal:k,anyPunctuation:V,autolink:G,blockSkip:/\[[^[\]]*?\]\([^\(\)]*?\)|`[^`]*?`|<[^<>]*?>/g,br:K,code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,del:k,emStrongLDelim:U,emStrongRDelimAst:H,emStrongRDelimUnd:Y,escape:P,link:J,nolink:et,punctuation:W,reflink:tt,reflinkSearch:b("reflink|nolink(?!\\()","g").replace("reflink",tt).replace("nolink",et).getRegex(),tag:X,text:/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\e+" ".repeat(r.length)));t;)if(!(this.options.extensions&&this.options.extensions.block&&this.options.extensions.block.some((r=>!!(i=r.call({lexer:this},t,e))&&(t=t.substring(i.raw.length),e.push(i),!0)))))if(i=this.tokenizer.space(t))t=t.substring(i.raw.length),1===i.raw.length&&e.length>0?e[e.length-1].raw+="\n":e.push(i);else if(i=this.tokenizer.code(t))t=t.substring(i.raw.length),n=e[e.length-1],!n||"paragraph"!==n.type&&"text"!==n.type?e.push(i):(n.raw+="\n"+i.raw,n.text+="\n"+i.text,this.inlineQueue[this.inlineQueue.length-1].src=n.text);else if(i=this.tokenizer.fences(t))t=t.substring(i.raw.length),e.push(i);else if(i=this.tokenizer.heading(t))t=t.substring(i.raw.length),e.push(i);else if(i=this.tokenizer.hr(t))t=t.substring(i.raw.length),e.push(i);else if(i=this.tokenizer.blockquote(t))t=t.substring(i.raw.length),e.push(i);else if(i=this.tokenizer.list(t))t=t.substring(i.raw.length),e.push(i);else if(i=this.tokenizer.html(t))t=t.substring(i.raw.length),e.push(i);else if(i=this.tokenizer.def(t))t=t.substring(i.raw.length),n=e[e.length-1],!n||"paragraph"!==n.type&&"text"!==n.type?this.tokens.links[i.tag]||(this.tokens.links[i.tag]={href:i.href,title:i.title}):(n.raw+="\n"+i.raw,n.text+="\n"+i.raw,this.inlineQueue[this.inlineQueue.length-1].src=n.text);else if(i=this.tokenizer.table(t))t=t.substring(i.raw.length),e.push(i);else if(i=this.tokenizer.lheading(t))t=t.substring(i.raw.length),e.push(i);else{if(o=t,this.options.extensions&&this.options.extensions.startBlock){let e=1/0;const r=t.slice(1);let i;this.options.extensions.startBlock.forEach((t=>{i=t.call({lexer:this},r),"number"==typeof i&&i>=0&&(e=Math.min(e,i))})),e<1/0&&e>=0&&(o=t.substring(0,e+1))}if(this.state.top&&(i=this.tokenizer.paragraph(o)))n=e[e.length-1],r&&"paragraph"===n?.type?(n.raw+="\n"+i.raw,n.text+="\n"+i.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=n.text):e.push(i),r=o.length!==t.length,t=t.substring(i.raw.length);else if(i=this.tokenizer.text(t))t=t.substring(i.raw.length),n=e[e.length-1],n&&"text"===n.type?(n.raw+="\n"+i.raw,n.text+="\n"+i.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=n.text):e.push(i);else if(t){const e="Infinite loop on byte: "+t.charCodeAt(0);if(this.options.silent){s.error(e);break}throw new Error(e)}}return this.state.top=!0,e}inline(t,e=[]){return this.inlineQueue.push({src:t,tokens:e}),e}inlineTokens(t,e=[]){let r,i,n,o,a,l,c=t;if(this.tokens.links){const t=Object.keys(this.tokens.links);if(t.length>0)for(;null!=(o=this.tokenizer.rules.inline.reflinkSearch.exec(c));)t.includes(o[0].slice(o[0].lastIndexOf("[")+1,-1))&&(c=c.slice(0,o.index)+"["+"a".repeat(o[0].length-2)+"]"+c.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;null!=(o=this.tokenizer.rules.inline.blockSkip.exec(c));)c=c.slice(0,o.index)+"["+"a".repeat(o[0].length-2)+"]"+c.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;null!=(o=this.tokenizer.rules.inline.anyPunctuation.exec(c));)c=c.slice(0,o.index)+"++"+c.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;t;)if(a||(l=""),a=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some((i=>!!(r=i.call({lexer:this},t,e))&&(t=t.substring(r.raw.length),e.push(r),!0)))))if(r=this.tokenizer.escape(t))t=t.substring(r.raw.length),e.push(r);else if(r=this.tokenizer.tag(t))t=t.substring(r.raw.length),i=e[e.length-1],i&&"text"===r.type&&"text"===i.type?(i.raw+=r.raw,i.text+=r.text):e.push(r);else if(r=this.tokenizer.link(t))t=t.substring(r.raw.length),e.push(r);else if(r=this.tokenizer.reflink(t,this.tokens.links))t=t.substring(r.raw.length),i=e[e.length-1],i&&"text"===r.type&&"text"===i.type?(i.raw+=r.raw,i.text+=r.text):e.push(r);else if(r=this.tokenizer.emStrong(t,c,l))t=t.substring(r.raw.length),e.push(r);else if(r=this.tokenizer.codespan(t))t=t.substring(r.raw.length),e.push(r);else if(r=this.tokenizer.br(t))t=t.substring(r.raw.length),e.push(r);else if(r=this.tokenizer.del(t))t=t.substring(r.raw.length),e.push(r);else if(r=this.tokenizer.autolink(t))t=t.substring(r.raw.length),e.push(r);else if(this.state.inLink||!(r=this.tokenizer.url(t))){if(n=t,this.options.extensions&&this.options.extensions.startInline){let e=1/0;const r=t.slice(1);let i;this.options.extensions.startInline.forEach((t=>{i=t.call({lexer:this},r),"number"==typeof i&&i>=0&&(e=Math.min(e,i))})),e<1/0&&e>=0&&(n=t.substring(0,e+1))}if(r=this.tokenizer.inlineText(n))t=t.substring(r.raw.length),"_"!==r.raw.slice(-1)&&(l=r.raw.slice(-1)),a=!0,i=e[e.length-1],i&&"text"===i.type?(i.raw+=r.raw,i.text+=r.text):e.push(r);else if(t){const e="Infinite loop on byte: "+t.charCodeAt(0);if(this.options.silent){s.error(e);break}throw new Error(e)}}else t=t.substring(r.raw.length),e.push(r);return e}}class ct{options;parser;constructor(t){this.options=t||l}space(t){return""}code({text:t,lang:e,escaped:r}){const i=(e||"").match(/^\S*/)?.[0],n=t.replace(/\n$/,"")+"\n";return i?'
'+(r?n:y(n,!0))+"
\n":"
"+(r?n:y(n,!0))+"
\n"}blockquote({tokens:t}){return`
\n${this.parser.parse(t)}
\n`}html({text:t}){return t}heading({tokens:t,depth:e}){return`${this.parser.parseInline(t)}\n`}hr(t){return"
\n"}list(t){const e=t.ordered,r=t.start;let i="";for(let o=0;o\n"+i+"\n"}listitem(t){let e="";if(t.task){const r=this.checkbox({checked:!!t.checked});t.loose?t.tokens.length>0&&"paragraph"===t.tokens[0].type?(t.tokens[0].text=r+" "+t.tokens[0].text,t.tokens[0].tokens&&t.tokens[0].tokens.length>0&&"text"===t.tokens[0].tokens[0].type&&(t.tokens[0].tokens[0].text=r+" "+t.tokens[0].tokens[0].text)):t.tokens.unshift({type:"text",raw:r+" ",text:r+" "}):e+=r+" "}return e+=this.parser.parse(t.tokens,!!t.loose),`
  • ${e}
  • \n`}checkbox({checked:t}){return"'}paragraph({tokens:t}){return`

    ${this.parser.parseInline(t)}

    \n`}table(t){let e="",r="";for(let n=0;n${i}`),"\n\n"+e+"\n"+i+"
    \n"}tablerow({text:t}){return`\n${t}\n`}tablecell(t){const e=this.parser.parseInline(t.tokens),r=t.header?"th":"td";return(t.align?`<${r} align="${t.align}">`:`<${r}>`)+e+`\n`}strong({tokens:t}){return`${this.parser.parseInline(t)}`}em({tokens:t}){return`${this.parser.parseInline(t)}`}codespan({text:t}){return`${t}`}br(t){return"
    "}del({tokens:t}){return`${this.parser.parseInline(t)}`}link({href:t,title:e,tokens:r}){const i=this.parser.parseInline(r),n=C(t);if(null===n)return i;let o='
    ",o}image({href:t,title:e,text:r}){const i=C(t);if(null===i)return r;let n=`${r}{const n=t[i].flat(1/0);r=r.concat(this.walkTokens(n,e))})):t.tokens&&(r=r.concat(this.walkTokens(t.tokens,e)))}}return r}use(...t){const e=this.defaults.extensions||{renderers:{},childTokens:{}};return t.forEach((t=>{const r={...t};if(r.async=this.defaults.async||r.async||!1,t.extensions&&(t.extensions.forEach((t=>{if(!t.name)throw new Error("extension name required");if("renderer"in t){const r=e.renderers[t.name];e.renderers[t.name]=r?function(...e){let i=t.renderer.apply(this,e);return!1===i&&(i=r.apply(this,e)),i}:t.renderer}if("tokenizer"in t){if(!t.level||"block"!==t.level&&"inline"!==t.level)throw new Error("extension level must be 'block' or 'inline'");const r=e[t.level];r?r.unshift(t.tokenizer):e[t.level]=[t.tokenizer],t.start&&("block"===t.level?e.startBlock?e.startBlock.push(t.start):e.startBlock=[t.start]:"inline"===t.level&&(e.startInline?e.startInline.push(t.start):e.startInline=[t.start]))}"childTokens"in t&&t.childTokens&&(e.childTokens[t.name]=t.childTokens)})),r.extensions=e),t.renderer){const e=this.defaults.renderer||new ct(this.defaults);for(const r in t.renderer){if(!(r in e))throw new Error(`renderer '${r}' does not exist`);if(["options","parser"].includes(r))continue;const i=r;let n=t.renderer[i];t.useNewRenderer||(n=this.#e(n,i,e));const o=e[i];e[i]=(...t)=>{let r=n.apply(e,t);return!1===r&&(r=o.apply(e,t)),r||""}}r.renderer=e}if(t.tokenizer){const e=this.defaults.tokenizer||new T(this.defaults);for(const r in t.tokenizer){if(!(r in e))throw new Error(`tokenizer '${r}' does not exist`);if(["options","rules","lexer"].includes(r))continue;const i=r,n=t.tokenizer[i],o=e[i];e[i]=(...t)=>{let r=n.apply(e,t);return!1===r&&(r=o.apply(e,t)),r}}r.tokenizer=e}if(t.hooks){const e=this.defaults.hooks||new dt;for(const r in t.hooks){if(!(r in e))throw new Error(`hook '${r}' does not exist`);if("options"===r)continue;const i=r,n=t.hooks[i],o=e[i];dt.passThroughHooks.has(r)?e[i]=t=>{if(this.defaults.async)return Promise.resolve(n.call(e,t)).then((t=>o.call(e,t)));const r=n.call(e,t);return o.call(e,r)}:e[i]=(...t)=>{let r=n.apply(e,t);return!1===r&&(r=o.apply(e,t)),r}}r.hooks=e}if(t.walkTokens){const e=this.defaults.walkTokens,i=t.walkTokens;r.walkTokens=function(t){let r=[];return r.push(i.call(this,t)),e&&(r=r.concat(e.call(this,t))),r}}this.defaults={...this.defaults,...r}})),this}#e(t,e,r){switch(e){case"heading":return function(i){return i.type&&i.type===e?t.call(this,r.parser.parseInline(i.tokens),i.depth,function(t){return t.replace(m,((t,e)=>"colon"===(e=e.toLowerCase())?":":"#"===e.charAt(0)?"x"===e.charAt(1)?String.fromCharCode(parseInt(e.substring(2),16)):String.fromCharCode(+e.substring(1)):""))}(r.parser.parseInline(i.tokens,r.parser.textRenderer))):t.apply(this,arguments)};case"code":return function(r){return r.type&&r.type===e?t.call(this,r.text,r.lang,!!r.escaped):t.apply(this,arguments)};case"table":return function(r){if(!r.type||r.type!==e)return t.apply(this,arguments);let i="",n="";for(let t=0;t0&&"paragraph"===e.tokens[0].type?(e.tokens[0].text=t+" "+e.tokens[0].text,e.tokens[0].tokens&&e.tokens[0].tokens.length>0&&"text"===e.tokens[0].tokens[0].type&&(e.tokens[0].tokens[0].text=t+" "+e.tokens[0].tokens[0].text)):e.tokens.unshift({type:"text",text:t+" "}):a+=t+" "}a+=this.parser.parse(e.tokens,o),s+=this.listitem({type:"list_item",raw:a,text:a,task:n,checked:!!i,loose:o,tokens:e.tokens})}return t.call(this,s,i,n)};case"html":return function(r){return r.type&&r.type===e?t.call(this,r.text,r.block):t.apply(this,arguments)};case"paragraph":case"strong":case"em":case"del":return function(r){return r.type&&r.type===e?t.call(this,this.parser.parseInline(r.tokens)):t.apply(this,arguments)};case"escape":case"codespan":case"text":return function(r){return r.type&&r.type===e?t.call(this,r.text):t.apply(this,arguments)};case"link":return function(r){return r.type&&r.type===e?t.call(this,r.href,r.title,this.parser.parseInline(r.tokens)):t.apply(this,arguments)};case"image":return function(r){return r.type&&r.type===e?t.call(this,r.href,r.title,r.text):t.apply(this,arguments)}}return t}setOptions(t){return this.defaults={...this.defaults,...t},this}lexer(t,e){return lt.lex(t,e??this.defaults)}parser(t,e){return ut.parse(t,e??this.defaults)}#t(t,e){return(r,i)=>{const n={...i},o={...this.defaults,...n};!0===this.defaults.async&&!1===n.async&&(o.silent||s.warn("marked(): The async option was set to true by an extension. The async: false option sent to parse will be ignored."),o.async=!0);const a=this.#r(!!o.silent,!!o.async);if(null==r)return a(new Error("marked(): input parameter is undefined or null"));if("string"!=typeof r)return a(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(r)+", string expected"));if(o.hooks&&(o.hooks.options=o),o.async)return Promise.resolve(o.hooks?o.hooks.preprocess(r):r).then((e=>t(e,o))).then((t=>o.hooks?o.hooks.processAllTokens(t):t)).then((t=>o.walkTokens?Promise.all(this.walkTokens(t,o.walkTokens)).then((()=>t)):t)).then((t=>e(t,o))).then((t=>o.hooks?o.hooks.postprocess(t):t)).catch(a);try{o.hooks&&(r=o.hooks.preprocess(r));let i=t(r,o);o.hooks&&(i=o.hooks.processAllTokens(i)),o.walkTokens&&this.walkTokens(i,o.walkTokens);let n=e(i,o);return o.hooks&&(n=o.hooks.postprocess(n)),n}catch(l){return a(l)}}}#r(t,e){return r=>{if(r.message+="\nPlease report this to https://github.com/markedjs/marked.",t){const t="

    An error occurred:

    "+y(r.message+"",!0)+"
    ";return e?Promise.resolve(t):t}if(e)return Promise.reject(r);throw r}}};function ft(t,e){return pt.parse(t,e)}ft.options=ft.setOptions=function(t){return pt.setOptions(t),ft.defaults=pt.defaults,c(ft.defaults),ft},ft.getDefaults=a,ft.defaults=l,ft.use=function(...t){return pt.use(...t),ft.defaults=pt.defaults,c(ft.defaults),ft},ft.walkTokens=function(t,e){return pt.walkTokens(t,e)},ft.parseInline=pt.parseInline,ft.Parser=ut,ft.parser=ut.parse,ft.Renderer=ct,ft.TextRenderer=ht,ft.Lexer=lt,ft.lexer=lt.lex,ft.Tokenizer=T,ft.Hooks=dt,ft.parse=ft;ft.options,ft.setOptions,ft.use,ft.walkTokens,ft.parseInline,ut.parse,lt.lex;var gt=r(60513);function yt(t,{markdownAutoWrap:e}){const r=t.replace(//g,"\n").replace(/\n{2,}/g,"\n"),i=(0,gt.T)(r);return!1===e?i.replace(/ /g," "):i}function mt(t,e={}){const r=yt(t,e),i=ft.lexer(r),o=[[]];let s=0;function a(t,e="normal"){if("text"===t.type){t.text.split("\n").forEach(((t,r)=>{0!==r&&(s++,o.push([])),t.split(" ").forEach((t=>{t&&o[s].push({content:t,type:e})}))}))}else"strong"===t.type||"em"===t.type?t.tokens.forEach((e=>{a(e,t.type)})):"html"===t.type&&o[s].push({content:t.text,type:"normal"})}return(0,n.K2)(a,"processNode"),i.forEach((t=>{"paragraph"===t.type?t.tokens?.forEach((t=>{a(t)})):"html"===t.type&&o[s].push({content:t.text,type:"normal"})})),o}function xt(t,{markdownAutoWrap:e}={}){const r=ft.lexer(t);function i(t){return"text"===t.type?!1===e?t.text.replace(/\n */g,"
    ").replace(/ /g," "):t.text.replace(/\n */g,"
    "):"strong"===t.type?`${t.tokens?.map(i).join("")}`:"em"===t.type?`${t.tokens?.map(i).join("")}`:"paragraph"===t.type?`

    ${t.tokens?.map(i).join("")}

    `:"space"===t.type?"":"html"===t.type?`${t.text}`:`Unsupported markdown: ${t.type}`}return(0,n.K2)(i,"output"),r.map(i).join("")}function bt(t){return Intl.Segmenter?[...(new Intl.Segmenter).segment(t)].map((t=>t.segment)):[...t]}function Ct(t,e){return kt(t,[],bt(e.content),e.type)}function kt(t,e,r,i){if(0===r.length)return[{content:e.join(""),type:i},{content:"",type:i}];const[n,...o]=r,s=[...e,n];return t([{content:s.join(""),type:i}])?kt(t,s,o,i):(0===e.length&&n&&(e.push(n),r.shift()),[{content:e.join(""),type:i},{content:r.join(""),type:i}])}function _t(t,e){if(t.some((({content:t})=>t.includes("\n"))))throw new Error("splitLineToFitWidth does not support newlines in the line");return wt(t,e)}function wt(t,e,r=[],i=[]){if(0===t.length)return i.length>0&&r.push(i),r.length>0?r:[];let n="";" "===t[0].content&&(n=" ",t.shift());const o=t.shift()??{content:" ",type:"normal"},s=[...i];if(""!==n&&s.push({content:n,type:"normal"}),s.push(o),e(s))return wt(t,e,r,s);if(i.length>0)r.push(i),t.unshift(o);else if(o.content){const[i,n]=Ct(e,o);r.push([i]),n.content&&t.unshift(n)}return wt(t,e,r)}function vt(t,e){e&&t.attr("style",e)}async function Tt(t,e,r,i,o=!1){const s=t.append("foreignObject"),a=s.append("xhtml:div");let l=e.label;e.label&&(0,n.Wi)(e.label)&&(l=await(0,n.VJ)(e.label.replace(n.Y2.lineBreakRegex,"\n"),(0,n.D7)()));const c=e.isNode?"nodeLabel":"edgeLabel",h=a.append("span");h.html(l),vt(h,e.labelStyle),h.attr("class",`${c} ${i}`),vt(a,e.labelStyle),a.style("display","table-cell"),a.style("white-space","nowrap"),a.style("line-height","1.5"),a.style("max-width",r+"px"),a.style("text-align","center"),a.attr("xmlns","http://www.w3.org/1999/xhtml"),o&&a.attr("class","labelBkg");let u=a.node().getBoundingClientRect();return u.width===r&&(a.style("display","table"),a.style("white-space","break-spaces"),a.style("width",r+"px"),u=a.node().getBoundingClientRect()),s.node()}function St(t,e,r){return t.append("tspan").attr("class","text-outer-tspan").attr("x",0).attr("y",e*r-.1+"em").attr("dy",r+"em")}function At(t,e,r){const i=t.append("text"),n=St(i,1,e);Lt(n,r);const o=n.node().getComputedTextLength();return i.remove(),o}function Mt(t,e,r){const i=t.append("text"),n=St(i,1,e);Lt(n,[{content:r,type:"normal"}]);const o=n.node()?.getBoundingClientRect();return o&&i.remove(),o}function Bt(t,e,r,i=!1){const o=e.append("g"),s=o.insert("rect").attr("class","background").attr("style","stroke: none"),a=o.append("text").attr("y","-10.1");let l=0;for(const c of r){const e=(0,n.K2)((e=>At(o,1.1,e)<=t),"checkWidth"),r=e(c)?[c]:_t(c,e);for(const t of r){Lt(St(a,l,1.1),t),l++}}if(i){const t=a.node().getBBox(),e=2;return s.attr("x",-e).attr("y",-e).attr("width",t.width+2*e).attr("height",t.height+2*e),o.node()}return a.node()}function Lt(t,e){t.text(""),e.forEach(((e,r)=>{const i=t.append("tspan").attr("font-style","em"===e.type?"italic":"normal").attr("class","text-inner-tspan").attr("font-weight","strong"===e.type?"bold":"normal");0===r?i.text(e.content):i.text(" "+e.content)}))}function Ft(t){return t.replace(/fa[bklrs]?:fa-[\w-]+/g,(t=>``))}(0,n.K2)(yt,"preprocessMarkdown"),(0,n.K2)(mt,"markdownToLines"),(0,n.K2)(xt,"markdownToHTML"),(0,n.K2)(bt,"splitTextToChars"),(0,n.K2)(Ct,"splitWordToFitWidth"),(0,n.K2)(kt,"splitWordToFitWidthRecursion"),(0,n.K2)(_t,"splitLineToFitWidth"),(0,n.K2)(wt,"splitLineToFitWidthRecursion"),(0,n.K2)(vt,"applyStyle"),(0,n.K2)(Tt,"addHtmlSpan"),(0,n.K2)(St,"createTspan"),(0,n.K2)(At,"computeWidthOfText"),(0,n.K2)(Mt,"computeDimensionOfText"),(0,n.K2)(Bt,"createFormattedText"),(0,n.K2)(Lt,"updateTextContentAndStyles"),(0,n.K2)(Ft,"replaceIconSubstring");var $t=(0,n.K2)((async(t,e="",{style:r="",isTitle:s=!1,classes:a="",useHtmlLabels:l=!0,isNode:c=!0,width:h=200,addSvgBackground:u=!1}={},d)=>{if(n.Rm.info("XYZ createText",e,r,s,a,l,c,"addSvgBackground: ",u),l){const o=xt(e,d),s=Ft((0,i.Sm)(o)),l=e.replace(/\\\\/g,"\\"),p={isNode:c,label:(0,n.Wi)(e)?l:s,labelStyle:r.replace("fill:","color:")};return await Tt(t,p,h,a,u)}{const i=Bt(h,t,mt(e.replace(//g,"
    ").replace("
    ","
    "),d),!!e&&u);if(c){/stroke:/.exec(r)&&(r=r.replace("stroke:","lineColor:"));const t=r.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/color:/g,"fill:");(0,o.Ltv)(i).attr("style",t)}else{const t=r.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/background:/g,"fill:");(0,o.Ltv)(i).select("rect").attr("style",t.replace(/background:/g,"fill:"));const e=r.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/color:/g,"fill:");(0,o.Ltv)(i).select("text").attr("style",e)}return i}}),"createText")},62602:(t,e,r)=>{"use strict";r.d(e,{XX:()=>c,q7:()=>h,sO:()=>l});var i=r(49139),n=r(57323),o=r(64994),s={common:o.Y2,getConfig:o.zj,insertCluster:i.U,insertEdge:i.Jo,insertEdgeLabel:i.jP,insertMarkers:i.g0,insertNode:i.on,interpolateToCurve:n.Ib,labelHelper:i.Zk,log:o.Rm,positionEdgeLabel:i.T_},a={},l=(0,o.K2)((t=>{for(const e of t)a[e.name]=e}),"registerLayoutLoaders");(0,o.K2)((()=>{l([{name:"dagre",loader:(0,o.K2)((async()=>await Promise.all([r.e(6944),r.e(2334),r.e(1051)]).then(r.bind(r,81051))),"loader")}])}),"registerDefaultLayoutLoaders")();var c=(0,o.K2)((async(t,e)=>{if(!(t.layoutAlgorithm in a))throw new Error(`Unknown layout algorithm: ${t.layoutAlgorithm}`);const r=a[t.layoutAlgorithm];return(await r.loader()).render(t,e,s,{algorithm:r.algorithm})}),"render"),h=(0,o.K2)(((t="",{fallback:e="dagre"}={})=>{if(t in a)return t;if(e in a)return o.Rm.warn(`Layout algorithm ${t} is not registered. Using ${e} as fallback.`),e;throw new Error(`Both layout algorithms ${t} and ${e} are not registered.`)}),"getRegisteredLayoutAlgorithm")},48496:(t,e,r)=>{"use strict";r.d(e,{O:()=>n,R:()=>l});var i=r(64994),n=(0,i.K2)((({flowchart:t})=>{const e=t?.subGraphTitleMargin?.top??0,r=t?.subGraphTitleMargin?.bottom??0;return{subGraphTitleTopMargin:e,subGraphTitleBottomMargin:r,subGraphTitleTotalMargin:e+r}}),"getSubGraphTitleMargins"),o={aggregation:18,extension:18,composition:18,dependency:6,lollipop:13.5,arrow_point:4};function s(t,e){if(void 0===t||void 0===e)return{angle:0,deltaX:0,deltaY:0};t=a(t),e=a(e);const[r,i]=[t.x,t.y],[n,o]=[e.x,e.y],s=n-r,l=o-i;return{angle:Math.atan(l/s),deltaX:s,deltaY:l}}(0,i.K2)(s,"calculateDeltaAndAngle");var a=(0,i.K2)((t=>Array.isArray(t)?{x:t[0],y:t[1]}:t),"pointTransformer"),l=(0,i.K2)((t=>({x:(0,i.K2)((function(e,r,i){let n=0;if(0===r&&Object.hasOwn(o,t.arrowTypeStart)){const{angle:e,deltaX:r}=s(i[0],i[1]);n=o[t.arrowTypeStart]*Math.cos(e)*(r>=0?1:-1)}else if(r===i.length-1&&Object.hasOwn(o,t.arrowTypeEnd)){const{angle:e,deltaX:r}=s(i[i.length-1],i[i.length-2]);n=o[t.arrowTypeEnd]*Math.cos(e)*(r>=0?1:-1)}return a(e).x+n}),"x"),y:(0,i.K2)((function(e,r,i){let n=0;if(0===r&&Object.hasOwn(o,t.arrowTypeStart)){const{angle:e,deltaY:r}=s(i[0],i[1]);n=o[t.arrowTypeStart]*Math.abs(Math.sin(e))*(r>=0?1:-1)}else if(r===i.length-1&&Object.hasOwn(o,t.arrowTypeEnd)){const{angle:e,deltaY:r}=s(i[i.length-1],i[i.length-2]);n=o[t.arrowTypeEnd]*Math.abs(Math.sin(e))*(r>=0?1:-1)}return a(e).y+n}),"y")})),"getLineFunctionsWithOffset")},57323:(t,e,r)=>{"use strict";r.d(e,{$C:()=>A,$t:()=>j,C4:()=>U,I5:()=>K,Ib:()=>g,Sm:()=>H,Un:()=>D,_K:()=>W,bH:()=>$,dq:()=>z,pe:()=>l,rY:()=>Y,ru:()=>O,sM:()=>T,vU:()=>p,yT:()=>B});var i=r(64994),n=r(16750),o=r(20007),s=r(46632),a=r(42837),l="\u200b",c={curveBasis:o.qrM,curveBasisClosed:o.Yu4,curveBasisOpen:o.IA3,curveBumpX:o.Wi0,curveBumpY:o.PGM,curveBundle:o.OEq,curveCardinalClosed:o.olC,curveCardinalOpen:o.IrU,curveCardinal:o.y8u,curveCatmullRomClosed:o.Q7f,curveCatmullRomOpen:o.cVp,curveCatmullRom:o.oDi,curveLinear:o.lUB,curveLinearClosed:o.Lx9,curveMonotoneX:o.nVG,curveMonotoneY:o.uxU,curveNatural:o.Xf2,curveStep:o.GZz,curveStepAfter:o.UPb,curveStepBefore:o.dyv},h=/\s*(?:(\w+)(?=:):|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,u=(0,i.K2)((function(t,e){const r=d(t,/(?:init\b)|(?:initialize\b)/);let n={};if(Array.isArray(r)){const t=r.map((t=>t.args));(0,i.$i)(t),n=(0,i.hH)(n,[...t])}else n=r.args;if(!n)return;let o=(0,i.Ch)(t,e);const s="config";return void 0!==n[s]&&("flowchart-v2"===o&&(o="flowchart"),n[o]=n[s],delete n[s]),n}),"detectInit"),d=(0,i.K2)((function(t,e=null){try{const r=new RegExp(`[%]{2}(?![{]${h.source})(?=[}][%]{2}).*\n`,"ig");let n;t=t.trim().replace(r,"").replace(/'/gm,'"'),i.Rm.debug(`Detecting diagram directive${null!==e?" type:"+e:""} based on the text:${t}`);const o=[];for(;null!==(n=i.DB.exec(t));)if(n.index===i.DB.lastIndex&&i.DB.lastIndex++,n&&!e||e&&n[1]?.match(e)||e&&n[2]?.match(e)){const t=n[1]?n[1]:n[2],e=n[3]?n[3].trim():n[4]?JSON.parse(n[4].trim()):null;o.push({type:t,args:e})}return 0===o.length?{type:t,args:null}:1===o.length?o[0]:o}catch(r){return i.Rm.error(`ERROR: ${r.message} - Unable to parse directive type: '${e}' based on the text: '${t}'`),{type:void 0,args:null}}}),"detectDirective"),p=(0,i.K2)((function(t){return t.replace(i.DB,"")}),"removeDirectives"),f=(0,i.K2)((function(t,e){for(const[r,i]of e.entries())if(i.match(t))return r;return-1}),"isSubstringInArray");function g(t,e){if(!t)return e;const r=`curve${t.charAt(0).toUpperCase()+t.slice(1)}`;return c[r]??e}function y(t,e){const r=t.trim();if(r)return"loose"!==e.securityLevel?(0,n.J)(r):r}(0,i.K2)(g,"interpolateToCurve"),(0,i.K2)(y,"formatUrl");var m=(0,i.K2)(((t,...e)=>{const r=t.split("."),n=r.length-1,o=r[n];let s=window;for(let a=0;a{r+=x(t,e),e=t}));return _(t,r/2)}function C(t){return 1===t.length?t[0]:b(t)}(0,i.K2)(x,"distance"),(0,i.K2)(b,"traverseEdge"),(0,i.K2)(C,"calcLabelPosition");var k=(0,i.K2)(((t,e=2)=>{const r=Math.pow(10,e);return Math.round(t*r)/r}),"roundNumber"),_=(0,i.K2)(((t,e)=>{let r,i=e;for(const n of t){if(r){const t=x(n,r);if(t=1)return{x:n.x,y:n.y};if(e>0&&e<1)return{x:k((1-e)*r.x+e*n.x,5),y:k((1-e)*r.y+e*n.y,5)}}}r=n}throw new Error("Could not find a suitable point for the given distance")}),"calculatePoint"),w=(0,i.K2)(((t,e,r)=>{i.Rm.info(`our points ${JSON.stringify(e)}`),e[0]!==r&&(e=e.reverse());const n=_(e,25),o=t?10:5,s=Math.atan2(e[0].y-n.y,e[0].x-n.x),a={x:0,y:0};return a.x=Math.sin(s)*o+(e[0].x+n.x)/2,a.y=-Math.cos(s)*o+(e[0].y+n.y)/2,a}),"calcCardinalityPosition");function v(t,e,r){const n=structuredClone(r);i.Rm.info("our points",n),"start_left"!==e&&"start_right"!==e&&n.reverse();const o=_(n,25+t),s=10+.5*t,a=Math.atan2(n[0].y-o.y,n[0].x-o.x),l={x:0,y:0};return"start_left"===e?(l.x=Math.sin(a+Math.PI)*s+(n[0].x+o.x)/2,l.y=-Math.cos(a+Math.PI)*s+(n[0].y+o.y)/2):"end_right"===e?(l.x=Math.sin(a-Math.PI)*s+(n[0].x+o.x)/2-5,l.y=-Math.cos(a-Math.PI)*s+(n[0].y+o.y)/2-5):"end_left"===e?(l.x=Math.sin(a)*s+(n[0].x+o.x)/2-5,l.y=-Math.cos(a)*s+(n[0].y+o.y)/2-5):(l.x=Math.sin(a)*s+(n[0].x+o.x)/2,l.y=-Math.cos(a)*s+(n[0].y+o.y)/2),l}function T(t){let e="",r="";for(const i of t)void 0!==i&&(i.startsWith("color:")||i.startsWith("text-align:")?r=r+i+";":e=e+i+";");return{style:e,labelStyle:r}}(0,i.K2)(v,"calcTerminalLabelPosition"),(0,i.K2)(T,"getStylesFromArray");var S=0,A=(0,i.K2)((()=>(S++,"id-"+Math.random().toString(36).substr(2,12)+"-"+S)),"generateId");function M(t){let e="";const r="0123456789abcdef";for(let i=0;iM(t.length)),"random"),L=(0,i.K2)((function(){return{x:0,y:0,fill:void 0,anchor:"start",style:"#666",width:100,height:100,textMargin:0,rx:0,ry:0,valign:void 0,text:""}}),"getTextObj"),F=(0,i.K2)((function(t,e){const r=e.text.replace(i.Y2.lineBreakRegex," "),[,n]=K(e.fontSize),o=t.append("text");o.attr("x",e.x),o.attr("y",e.y),o.style("text-anchor",e.anchor),o.style("font-family",e.fontFamily),o.style("font-size",n),o.style("font-weight",e.fontWeight),o.attr("fill",e.fill),void 0!==e.class&&o.attr("class",e.class);const s=o.append("tspan");return s.attr("x",e.x+2*e.textMargin),s.attr("fill",e.fill),s.text(r),o}),"drawSimpleText"),$=(0,s.A)(((t,e,r)=>{if(!t)return t;if(r=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",joinWith:"
    "},r),i.Y2.lineBreakRegex.test(t))return t;const n=t.split(" ").filter(Boolean),o=[];let s="";return n.forEach(((t,i)=>{const a=D(`${t} `,r),l=D(s,r);if(a>e){const{hyphenatedStrings:i,remainingWord:n}=E(t,e,"-",r);o.push(s,...i),s=n}else l+a>=e?(o.push(s),s=t):s=[s,t].filter(Boolean).join(" ");i+1===n.length&&o.push(s)})),o.filter((t=>""!==t)).join(r.joinWith)}),((t,e,r)=>`${t}${e}${r.fontSize}${r.fontWeight}${r.fontFamily}${r.joinWith}`)),E=(0,s.A)(((t,e,r="-",i)=>{i=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",margin:0},i);const n=[...t],o=[];let s="";return n.forEach(((t,a)=>{const l=`${s}${t}`;if(D(l,i)>=e){const t=a+1,e=n.length===t,i=`${l}${r}`;o.push(e?l:i),s=""}else s=l})),{hyphenatedStrings:o,remainingWord:s}}),((t,e,r="-",i)=>`${t}${e}${r}${i.fontSize}${i.fontWeight}${i.fontFamily}`));function O(t,e){return R(t,e).height}function D(t,e){return R(t,e).width}(0,i.K2)(O,"calculateTextHeight"),(0,i.K2)(D,"calculateTextWidth");var I,R=(0,s.A)(((t,e)=>{const{fontSize:r=12,fontFamily:n="Arial",fontWeight:s=400}=e;if(!t)return{width:0,height:0};const[,a]=K(r),c=["sans-serif",n],h=t.split(i.Y2.lineBreakRegex),u=[],d=(0,o.Ltv)("body");if(!d.remove)return{width:0,height:0,lineHeight:0};const p=d.append("svg");for(const i of c){let t=0;const e={width:0,height:0,lineHeight:0};for(const r of h){const n=L();n.text=r||l;const o=F(p,n).style("font-size",a).style("font-weight",s).style("font-family",i),c=(o._groups||o)[0][0].getBBox();if(0===c.width&&0===c.height)throw new Error("svg element not in render tree");e.width=Math.round(Math.max(e.width,c.width)),t=Math.round(c.height),e.height+=t,e.lineHeight=Math.round(Math.max(e.lineHeight,t))}u.push(e)}p.remove();return u[isNaN(u[1].height)||isNaN(u[1].width)||isNaN(u[1].lineHeight)||u[0].height>u[1].height&&u[0].width>u[1].width&&u[0].lineHeight>u[1].lineHeight?0:1]}),((t,e)=>`${t}${e.fontSize}${e.fontWeight}${e.fontFamily}`)),N=class{constructor(t=!1,e){this.count=0,this.count=e?e.length:0,this.next=t?()=>this.count++:()=>Date.now()}static{(0,i.K2)(this,"InitIDGenerator")}},q=(0,i.K2)((function(t){return I=I||document.createElement("div"),t=escape(t).replace(/%26/g,"&").replace(/%23/g,"#").replace(/%3B/g,";"),I.innerHTML=t,unescape(I.textContent)}),"entityDecode");function z(t){return"str"in t}(0,i.K2)(z,"isDetailedError");var P=(0,i.K2)(((t,e,r,i)=>{if(!i)return;const n=t.node()?.getBBox();n&&t.append("text").text(i).attr("x",n.x+n.width/2).attr("y",-r).attr("class",e)}),"insertTitle"),K=(0,i.K2)((t=>{if("number"==typeof t)return[t,t+"px"];const e=parseInt(t??"",10);return Number.isNaN(e)?[void 0,void 0]:t===String(e)?[e,t+"px"]:[e,t]}),"parseFontSize");function j(t,e){return(0,a.A)({},t,e)}(0,i.K2)(j,"cleanAndMerge");var W={assignWithDepth:i.hH,wrapLabel:$,calculateTextHeight:O,calculateTextWidth:D,calculateTextDimensions:R,cleanAndMerge:j,detectInit:u,detectDirective:d,isSubstringInArray:f,interpolateToCurve:g,calcLabelPosition:C,calcCardinalityPosition:w,calcTerminalLabelPosition:v,formatUrl:y,getStylesFromArray:T,generateId:A,random:B,runFunc:m,entityDecode:q,insertTitle:P,parseFontSize:K,InitIDGenerator:N},U=(0,i.K2)((function(t){let e=t;return e=e.replace(/style.*:\S*#.*;/g,(function(t){return t.substring(0,t.length-1)})),e=e.replace(/classDef.*:\S*#.*;/g,(function(t){return t.substring(0,t.length-1)})),e=e.replace(/#\w+;/g,(function(t){const e=t.substring(1,t.length-1);return/^\+?\d+$/.test(e)?"\ufb02\xb0\xb0"+e+"\xb6\xdf":"\ufb02\xb0"+e+"\xb6\xdf"})),e}),"encodeEntities"),H=(0,i.K2)((function(t){return t.replace(/\ufb02\xb0\xb0/g,"&#").replace(/\ufb02\xb0/g,"&").replace(/\xb6\xdf/g,";")}),"decodeEntities"),Y=(0,i.K2)(((t,e,{counter:r=0,prefix:i,suffix:n})=>`${i?`${i}_`:""}${t}_${e}_${r}${n?`_${n}`:""}`),"getEdgeId")},22279:(t,e,r)=>{"use strict";r.d(e,{A:()=>_o});var i=r(62602),n=(r(49139),r(48496),r(67895),r(57323)),o=r(5070),s=r(48852),a=r(64994),l=r(60513),c=r(20007),h="comm",u="rule",d="decl",p=Math.abs,f=String.fromCharCode;Object.assign;function g(t){return t.trim()}function y(t,e,r){return t.replace(e,r)}function m(t,e,r){return t.indexOf(e,r)}function x(t,e){return 0|t.charCodeAt(e)}function b(t,e,r){return t.slice(e,r)}function C(t){return t.length}function k(t,e){return e.push(t),t}function _(t,e){for(var r="",i=0;i0?x(B,--A):0,T--,10===M&&(T=1,v--),M}function $(){return M=A2||I(M)>3?"":" "}function P(t,e){for(;--e&&$()&&!(M<48||M>102||M>57&&M<65||M>70&&M<97););return D(t,O()+(e<6&&32==E()&&32==$()))}function K(t){for(;$();)switch(M){case t:return A;case 34:case 39:34!==t&&39!==t&&K(M);break;case 40:41===t&&K(t);break;case 92:$()}return A}function j(t,e){for(;$()&&t+M!==57&&(t+M!==84||47!==E()););return"/*"+D(e,A-1)+"*"+f(47===t?t:$())}function W(t){for(;!I(E());)$();return D(t,A)}function U(t){return N(H("",null,null,null,[""],t=R(t),0,[0],t))}function H(t,e,r,i,n,o,s,a,l){for(var c=0,h=0,u=s,d=0,g=0,b=0,_=1,w=1,v=1,T=0,S="",A=n,M=o,B=i,L=S;w;)switch(b=T,T=$()){case 40:if(108!=b&&58==x(L,u-1)){-1!=m(L+=y(q(T),"&","&\f"),"&\f",p(c?a[c-1]:0))&&(v=-1);break}case 34:case 39:case 91:L+=q(T);break;case 9:case 10:case 13:case 32:L+=z(b);break;case 92:L+=P(O()-1,7);continue;case 47:switch(E()){case 42:case 47:k(V(j($(),O()),e,r,l),l);break;default:L+="/"}break;case 123*_:a[c++]=C(L)*v;case 125*_:case 59:case 0:switch(T){case 0:case 125:w=0;case 59+h:-1==v&&(L=y(L,/\f/g,"")),g>0&&C(L)-u&&k(g>32?G(L+";",i,r,u-1,l):G(y(L," ","")+";",i,r,u-2,l),l);break;case 59:L+=";";default:if(k(B=Y(L,e,r,c,h,n,a,S,A=[],M=[],u,o),o),123===T)if(0===h)H(L,e,B,B,A,o,u,a,M);else switch(99===d&&110===x(L,3)?100:d){case 100:case 108:case 109:case 115:H(t,B,B,i&&k(Y(t,B,B,0,0,n,a,S,n,A=[],u,M),M),n,M,u,a,i?A:M);break;default:H(L,B,B,B,[""],M,0,a,M)}}c=h=g=0,_=v=1,S=L="",u=s;break;case 58:u=1+C(L),g=b;default:if(_<1)if(123==T)--_;else if(125==T&&0==_++&&125==F())continue;switch(L+=f(T),T*_){case 38:v=h>0?1:(L+="\f",-1);break;case 44:a[c++]=(C(L)-1)*v,v=1;break;case 64:45===E()&&(L+=q($())),d=E(),h=u=C(S=L+=W(O())),T++;break;case 45:45===b&&2==C(L)&&(_=0)}}return o}function Y(t,e,r,i,n,o,s,a,l,c,h,d){for(var f=n-1,m=0===n?o:[""],x=function(t){return t.length}(m),C=0,k=0,_=0;C0?m[w]+" "+v:y(v,/&\f/g,m[w])))&&(l[_++]=T);return L(t,e,r,0===n?u:a,l,c,h,d)}function V(t,e,r,i){return L(t,e,r,h,f(M),b(t,2,-2),0,i)}function G(t,e,r,i,n){return L(t,e,r,d,b(t,0,i),b(t,i+1,-1),i,n)}var Z=r(42838),X=r(66401),Q={id:"c4",detector:(0,a.K2)((t=>/^\s*C4Context|C4Container|C4Component|C4Dynamic|C4Deployment/.test(t)),"detector"),loader:(0,a.K2)((async()=>{const{diagram:t}=await r.e(4918).then(r.bind(r,74918));return{id:"c4",diagram:t}}),"loader")},J="flowchart",tt={id:J,detector:(0,a.K2)(((t,e)=>"dagre-wrapper"!==e?.flowchart?.defaultRenderer&&"elk"!==e?.flowchart?.defaultRenderer&&/^\s*graph/.test(t)),"detector"),loader:(0,a.K2)((async()=>{const{diagram:t}=await Promise.all([r.e(6578),r.e(376)]).then(r.bind(r,30376));return{id:J,diagram:t}}),"loader")},et="flowchart-v2",rt={id:et,detector:(0,a.K2)(((t,e)=>"dagre-d3"!==e?.flowchart?.defaultRenderer&&"elk"!==e?.flowchart?.defaultRenderer&&(!(!/^\s*graph/.test(t)||"dagre-wrapper"!==e?.flowchart?.defaultRenderer)||/^\s*flowchart/.test(t))),"detector"),loader:(0,a.K2)((async()=>{const{diagram:t}=await Promise.all([r.e(6578),r.e(376)]).then(r.bind(r,30376));return{id:et,diagram:t}}),"loader")},it={id:"er",detector:(0,a.K2)((t=>/^\s*erDiagram/.test(t)),"detector"),loader:(0,a.K2)((async()=>{const{diagram:t}=await Promise.all([r.e(6944),r.e(2334),r.e(7285)]).then(r.bind(r,67285));return{id:"er",diagram:t}}),"loader")},nt="gitGraph",ot={id:nt,detector:(0,a.K2)((t=>/^\s*gitGraph/.test(t)),"detector"),loader:(0,a.K2)((async()=>{const{diagram:t}=await r.e(2627).then(r.bind(r,92627));return{id:nt,diagram:t}}),"loader")},st="gantt",at={id:st,detector:(0,a.K2)((t=>/^\s*gantt/.test(t)),"detector"),loader:(0,a.K2)((async()=>{const{diagram:t}=await r.e(9300).then(r.bind(r,39300));return{id:st,diagram:t}}),"loader")},lt="info",ct={id:lt,detector:(0,a.K2)((t=>/^\s*info/.test(t)),"detector"),loader:(0,a.K2)((async()=>{const{diagram:t}=await Promise.all([r.e(6944),r.e(8731),r.e(5725)]).then(r.bind(r,5725));return{id:lt,diagram:t}}),"loader")},ht={id:"pie",detector:(0,a.K2)((t=>/^\s*pie/.test(t)),"detector"),loader:(0,a.K2)((async()=>{const{diagram:t}=await Promise.all([r.e(6944),r.e(8731),r.e(8444)]).then(r.bind(r,48444));return{id:"pie",diagram:t}}),"loader")},ut="quadrantChart",dt={id:ut,detector:(0,a.K2)((t=>/^\s*quadrantChart/.test(t)),"detector"),loader:(0,a.K2)((async()=>{const{diagram:t}=await r.e(593).then(r.bind(r,593));return{id:ut,diagram:t}}),"loader")},pt="xychart",ft={id:pt,detector:(0,a.K2)((t=>/^\s*xychart-beta/.test(t)),"detector"),loader:(0,a.K2)((async()=>{const{diagram:t}=await r.e(7174).then(r.bind(r,57174));return{id:pt,diagram:t}}),"loader")},gt="requirement",yt={id:gt,detector:(0,a.K2)((t=>/^\s*requirement(Diagram)?/.test(t)),"detector"),loader:(0,a.K2)((async()=>{const{diagram:t}=await Promise.all([r.e(6944),r.e(2334),r.e(5533)]).then(r.bind(r,85533));return{id:gt,diagram:t}}),"loader")},mt="sequence",xt={id:mt,detector:(0,a.K2)((t=>/^\s*sequenceDiagram/.test(t)),"detector"),loader:(0,a.K2)((async()=>{const{diagram:t}=await r.e(8350).then(r.bind(r,38350));return{id:mt,diagram:t}}),"loader")},bt="class",Ct={id:bt,detector:(0,a.K2)(((t,e)=>"dagre-wrapper"!==e?.class?.defaultRenderer&&/^\s*classDiagram/.test(t)),"detector"),loader:(0,a.K2)((async()=>{const{diagram:t}=await Promise.all([r.e(6944),r.e(2334),r.e(2207),r.e(1650)]).then(r.bind(r,71650));return{id:bt,diagram:t}}),"loader")},kt="classDiagram",_t={id:kt,detector:(0,a.K2)(((t,e)=>!(!/^\s*classDiagram/.test(t)||"dagre-wrapper"!==e?.class?.defaultRenderer)||/^\s*classDiagram-v2/.test(t)),"detector"),loader:(0,a.K2)((async()=>{const{diagram:t}=await Promise.all([r.e(6944),r.e(2334),r.e(6578),r.e(2207),r.e(2557),r.e(5042)]).then(r.bind(r,45042));return{id:kt,diagram:t}}),"loader")},wt="state",vt={id:wt,detector:(0,a.K2)(((t,e)=>"dagre-wrapper"!==e?.state?.defaultRenderer&&/^\s*stateDiagram/.test(t)),"detector"),loader:(0,a.K2)((async()=>{const{diagram:t}=await Promise.all([r.e(6944),r.e(2334),r.e(6578),r.e(3148),r.e(8657)]).then(r.bind(r,28657));return{id:wt,diagram:t}}),"loader")},Tt="stateDiagram",St={id:Tt,detector:(0,a.K2)(((t,e)=>!!/^\s*stateDiagram-v2/.test(t)||!(!/^\s*stateDiagram/.test(t)||"dagre-wrapper"!==e?.state?.defaultRenderer)),"detector"),loader:(0,a.K2)((async()=>{const{diagram:t}=await Promise.all([r.e(6578),r.e(3148),r.e(7205)]).then(r.bind(r,7205));return{id:Tt,diagram:t}}),"loader")},At="journey",Mt={id:At,detector:(0,a.K2)((t=>/^\s*journey/.test(t)),"detector"),loader:(0,a.K2)((async()=>{const{diagram:t}=await r.e(4257).then(r.bind(r,4257));return{id:At,diagram:t}}),"loader")},Bt={draw:(0,a.K2)(((t,e,r)=>{a.Rm.debug("rendering svg for syntax error\n");const i=(0,s.D)(e),n=i.append("g");i.attr("viewBox","0 0 2412 512"),(0,a.a$)(i,100,512,!0),n.append("path").attr("class","error-icon").attr("d","m411.313,123.313c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32-9.375,9.375-20.688-20.688c-12.484-12.5-32.766-12.5-45.25,0l-16,16c-1.261,1.261-2.304,2.648-3.31,4.051-21.739-8.561-45.324-13.426-70.065-13.426-105.867,0-192,86.133-192,192s86.133,192 192,192 192-86.133 192-192c0-24.741-4.864-48.327-13.426-70.065 1.402-1.007 2.79-2.049 4.051-3.31l16-16c12.5-12.492 12.5-32.758 0-45.25l-20.688-20.688 9.375-9.375 32.001-31.999zm-219.313,100.687c-52.938,0-96,43.063-96,96 0,8.836-7.164,16-16,16s-16-7.164-16-16c0-70.578 57.422-128 128-128 8.836,0 16,7.164 16,16s-7.164,16-16,16z"),n.append("path").attr("class","error-icon").attr("d","m459.02,148.98c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l16,16c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16.001-16z"),n.append("path").attr("class","error-icon").attr("d","m340.395,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16-16c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l15.999,16z"),n.append("path").attr("class","error-icon").attr("d","m400,64c8.844,0 16-7.164 16-16v-32c0-8.836-7.156-16-16-16-8.844,0-16,7.164-16,16v32c0,8.836 7.156,16 16,16z"),n.append("path").attr("class","error-icon").attr("d","m496,96.586h-32c-8.844,0-16,7.164-16,16 0,8.836 7.156,16 16,16h32c8.844,0 16-7.164 16-16 0-8.836-7.156-16-16-16z"),n.append("path").attr("class","error-icon").attr("d","m436.98,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688l32-32c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32c-6.251,6.25-6.251,16.375-0.001,22.625z"),n.append("text").attr("class","error-text").attr("x",1440).attr("y",250).attr("font-size","150px").style("text-anchor","middle").text("Syntax error in text"),n.append("text").attr("class","error-text").attr("x",1250).attr("y",400).attr("font-size","100px").style("text-anchor","middle").text(`mermaid version ${r}`)}),"draw")},Lt=Bt,Ft={db:{},renderer:Bt,parser:{parse:(0,a.K2)((()=>{}),"parse")}},$t="flowchart-elk",Et={id:$t,detector:(0,a.K2)(((t,e={})=>!!(/^\s*flowchart-elk/.test(t)||/^\s*flowchart|graph/.test(t)&&"elk"===e?.flowchart?.defaultRenderer)&&(e.layout="elk",!0)),"detector"),loader:(0,a.K2)((async()=>{const{diagram:t}=await Promise.all([r.e(6578),r.e(376)]).then(r.bind(r,30376));return{id:$t,diagram:t}}),"loader")},Ot="timeline",Dt={id:Ot,detector:(0,a.K2)((t=>/^\s*timeline/.test(t)),"detector"),loader:(0,a.K2)((async()=>{const{diagram:t}=await r.e(799).then(r.bind(r,799));return{id:Ot,diagram:t}}),"loader")},It="mindmap",Rt={id:It,detector:(0,a.K2)((t=>/^\s*mindmap/.test(t)),"detector"),loader:(0,a.K2)((async()=>{const{diagram:t}=await r.e(1966).then(r.bind(r,41966));return{id:It,diagram:t}}),"loader")},Nt="sankey",qt={id:Nt,detector:(0,a.K2)((t=>/^\s*sankey-beta/.test(t)),"detector"),loader:(0,a.K2)((async()=>{const{diagram:t}=await r.e(9727).then(r.bind(r,39727));return{id:Nt,diagram:t}}),"loader")},zt="packet",Pt={id:zt,detector:(0,a.K2)((t=>/^\s*packet-beta/.test(t)),"detector"),loader:(0,a.K2)((async()=>{const{diagram:t}=await Promise.all([r.e(6944),r.e(8731),r.e(1756)]).then(r.bind(r,81756));return{id:zt,diagram:t}}),"loader")},Kt="block",jt={id:Kt,detector:(0,a.K2)((t=>/^\s*block-beta/.test(t)),"detector"),loader:(0,a.K2)((async()=>{const{diagram:t}=await Promise.all([r.e(6944),r.e(6578),r.e(2557),r.e(2654)]).then(r.bind(r,273));return{id:Kt,diagram:t}}),"loader")},Wt=!1,Ut=(0,a.K2)((()=>{Wt||(Wt=!0,(0,a.Js)("error",Ft,(t=>"error"===t.toLowerCase().trim())),(0,a.Js)("---",{db:{clear:(0,a.K2)((()=>{}),"clear")},styles:{},renderer:{draw:(0,a.K2)((()=>{}),"draw")},parser:{parse:(0,a.K2)((()=>{throw new Error("Diagrams beginning with --- are not valid. If you were trying to use a YAML front-matter, please ensure that you've correctly opened and closed the YAML front-matter with un-indented `---` blocks")}),"parse")},init:(0,a.K2)((()=>null),"init")},(t=>t.toLowerCase().trimStart().startsWith("---"))),(0,a.Xd)(Q,_t,Ct,it,at,ct,ht,yt,xt,Et,rt,tt,Rt,Dt,ot,St,vt,Mt,dt,qt,Pt,ft,jt))}),"addDiagrams"),Ht=(0,a.K2)((async()=>{a.Rm.debug("Loading registered diagrams");const t=(await Promise.allSettled(Object.entries(a.mW).map((async([t,{detector:e,loader:r}])=>{if(r)try{(0,a.Gs)(t)}catch{try{const{diagram:t,id:i}=await r();(0,a.Js)(i,t,e)}catch(i){throw a.Rm.error(`Failed to load external diagram with key ${t}. Removing from detectors.`),delete a.mW[t],i}}})))).filter((t=>"rejected"===t.status));if(t.length>0){a.Rm.error(`Failed to load ${t.length} external diagrams`);for(const e of t)a.Rm.error(e);throw new Error(`Failed to load ${t.length} external diagrams`)}}),"loadRegisteredDiagrams"),Yt=class t{constructor(t,e,r,i,n){this.type=t,this.text=e,this.db=r,this.parser=i,this.renderer=n}static{(0,a.K2)(this,"Diagram")}static async fromText(e,r={}){const i=(0,a.zj)(),o=(0,a.Ch)(e,i);e=(0,n.C4)(e)+"\n";try{(0,a.Gs)(o)}catch{const t=(0,a.J$)(o);if(!t)throw new a.C0(`Diagram ${o} not found.`);const{id:e,diagram:r}=await t();(0,a.Js)(e,r)}const{db:s,parser:l,renderer:c,init:h}=(0,a.Gs)(o);return l.parser&&(l.parser.yy=s),s.clear?.(),h?.(i),r.title&&s.setDiagramTitle?.(r.title),await l.parse(e),new t(o,e,s,l,c)}async render(t,e){await this.renderer.draw(this.text,t,e,this)}getParser(){return this.parser}getType(){return this.type}},Vt=[],Gt=(0,a.K2)((()=>{Vt.forEach((t=>{t()})),Vt=[]}),"attachFunctions"),Zt="graphics-document document";function Xt(t,e){t.attr("role",Zt),""!==e&&t.attr("aria-roledescription",e)}function Qt(t,e,r,i){if(void 0!==t.insert){if(r){const e=`chart-desc-${i}`;t.attr("aria-describedby",e),t.insert("desc",":first-child").attr("id",e).text(r)}if(e){const r=`chart-title-${i}`;t.attr("aria-labelledby",r),t.insert("title",":first-child").attr("id",r).text(e)}}}(0,a.K2)(Xt,"setA11yDiagramInfo"),(0,a.K2)(Qt,"addSVGa11yTitleDescription");var Jt=(0,a.K2)((t=>t.replace(/^\s*%%(?!{)[^\n]+\n?/gm,"").trimStart()),"cleanupComments");function te(t){return null==t}function ee(t){return"object"==typeof t&&null!==t}function re(t){return Array.isArray(t)?t:te(t)?[]:[t]}function ie(t,e){var r,i,n,o;if(e)for(r=0,i=(o=Object.keys(e)).length;ra&&(e=i-a+(o=" ... ").length),r-i>a&&(r=i+a-(s=" ...").length),{str:o+t.slice(e,r).replace(/\t/g,"\u2192")+s,pos:i-e+o.length}}function ue(t,e){return se.repeat(" ",e-t.length)+t}function de(t,e){if(e=Object.create(e||null),!t.buffer)return null;e.maxLength||(e.maxLength=79),"number"!=typeof e.indent&&(e.indent=1),"number"!=typeof e.linesBefore&&(e.linesBefore=3),"number"!=typeof e.linesAfter&&(e.linesAfter=2);for(var r,i=/\r?\n|\r|\0/g,n=[0],o=[],s=-1;r=i.exec(t.buffer);)o.push(r.index),n.push(r.index+r[0].length),t.position<=r.index&&s<0&&(s=n.length-2);s<0&&(s=n.length-1);var a,l,c="",h=Math.min(t.line+e.linesAfter,o.length).toString().length,u=e.maxLength-(e.indent+h+3);for(a=1;a<=e.linesBefore&&!(s-a<0);a++)l=he(t.buffer,n[s-a],o[s-a],t.position-(n[s]-n[s-a]),u),c=se.repeat(" ",e.indent)+ue((t.line-a+1).toString(),h)+" | "+l.str+"\n"+c;for(l=he(t.buffer,n[s],o[s],t.position,u),c+=se.repeat(" ",e.indent)+ue((t.line+1).toString(),h)+" | "+l.str+"\n",c+=se.repeat("-",e.indent+h+3+l.pos)+"^\n",a=1;a<=e.linesAfter&&!(s+a>=o.length);a++)l=he(t.buffer,n[s+a],o[s+a],t.position-(n[s]-n[s+a]),u),c+=se.repeat(" ",e.indent)+ue((t.line+a+1).toString(),h)+" | "+l.str+"\n";return c.replace(/\n$/,"")}(0,a.K2)(he,"getLine"),(0,a.K2)(ue,"padStart"),(0,a.K2)(de,"makeSnippet");var pe=de,fe=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],ge=["scalar","sequence","mapping"];function ye(t){var e={};return null!==t&&Object.keys(t).forEach((function(r){t[r].forEach((function(t){e[String(t)]=r}))})),e}function me(t,e){if(e=e||{},Object.keys(e).forEach((function(e){if(-1===fe.indexOf(e))throw new ce('Unknown option "'+e+'" is met in definition of "'+t+'" YAML type.')})),this.options=e,this.tag=t,this.kind=e.kind||null,this.resolve=e.resolve||function(){return!0},this.construct=e.construct||function(t){return t},this.instanceOf=e.instanceOf||null,this.predicate=e.predicate||null,this.represent=e.represent||null,this.representName=e.representName||null,this.defaultStyle=e.defaultStyle||null,this.multi=e.multi||!1,this.styleAliases=ye(e.styleAliases||null),-1===ge.indexOf(this.kind))throw new ce('Unknown kind "'+this.kind+'" is specified for "'+t+'" YAML type.')}(0,a.K2)(ye,"compileStyleAliases"),(0,a.K2)(me,"Type$1");var xe=me;function be(t,e){var r=[];return t[e].forEach((function(t){var e=r.length;r.forEach((function(r,i){r.tag===t.tag&&r.kind===t.kind&&r.multi===t.multi&&(e=i)})),r[e]=t})),r}function Ce(){var t,e,r={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}};function i(t){t.multi?(r.multi[t.kind].push(t),r.multi.fallback.push(t)):r[t.kind][t.tag]=r.fallback[t.tag]=t}for((0,a.K2)(i,"collectType"),t=0,e=arguments.length;t=0?"0b"+t.toString(2):"-0b"+t.toString(2).slice(1)}),"binary"),octal:(0,a.K2)((function(t){return t>=0?"0o"+t.toString(8):"-0o"+t.toString(8).slice(1)}),"octal"),decimal:(0,a.K2)((function(t){return t.toString(10)}),"decimal"),hexadecimal:(0,a.K2)((function(t){return t>=0?"0x"+t.toString(16).toUpperCase():"-0x"+t.toString(16).toUpperCase().slice(1)}),"hexadecimal")},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}}),Ne=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function qe(t){return null!==t&&!(!Ne.test(t)||"_"===t[t.length-1])}function ze(t){var e,r;return r="-"===(e=t.replace(/_/g,"").toLowerCase())[0]?-1:1,"+-".indexOf(e[0])>=0&&(e=e.slice(1)),".inf"===e?1===r?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:".nan"===e?NaN:r*parseFloat(e,10)}(0,a.K2)(qe,"resolveYamlFloat"),(0,a.K2)(ze,"constructYamlFloat");var Pe=/^[-+]?[0-9]+e/;function Ke(t,e){var r;if(isNaN(t))switch(e){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===t)switch(e){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===t)switch(e){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(se.isNegativeZero(t))return"-0.0";return r=t.toString(10),Pe.test(r)?r.replace("e",".e"):r}function je(t){return"[object Number]"===Object.prototype.toString.call(t)&&(t%1!=0||se.isNegativeZero(t))}(0,a.K2)(Ke,"representYamlFloat"),(0,a.K2)(je,"isFloat");var We=new xe("tag:yaml.org,2002:float",{kind:"scalar",resolve:qe,construct:ze,predicate:je,represent:Ke,defaultStyle:"lowercase"}),Ue=_e.extend({implicit:[Se,Le,Re,We]}),He=Ue,Ye=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),Ve=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function Ge(t){return null!==t&&(null!==Ye.exec(t)||null!==Ve.exec(t))}function Ze(t){var e,r,i,n,o,s,a,l,c=0,h=null;if(null===(e=Ye.exec(t))&&(e=Ve.exec(t)),null===e)throw new Error("Date resolve error");if(r=+e[1],i=+e[2]-1,n=+e[3],!e[4])return new Date(Date.UTC(r,i,n));if(o=+e[4],s=+e[5],a=+e[6],e[7]){for(c=e[7].slice(0,3);c.length<3;)c+="0";c=+c}return e[9]&&(h=6e4*(60*+e[10]+ +(e[11]||0)),"-"===e[9]&&(h=-h)),l=new Date(Date.UTC(r,i,n,o,s,a,c)),h&&l.setTime(l.getTime()-h),l}function Xe(t){return t.toISOString()}(0,a.K2)(Ge,"resolveYamlTimestamp"),(0,a.K2)(Ze,"constructYamlTimestamp"),(0,a.K2)(Xe,"representYamlTimestamp");var Qe=new xe("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:Ge,construct:Ze,instanceOf:Date,represent:Xe});function Je(t){return"<<"===t||null===t}(0,a.K2)(Je,"resolveYamlMerge");var tr=new xe("tag:yaml.org,2002:merge",{kind:"scalar",resolve:Je}),er="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r";function rr(t){if(null===t)return!1;var e,r,i=0,n=t.length,o=er;for(r=0;r64)){if(e<0)return!1;i+=6}return i%8==0}function ir(t){var e,r,i=t.replace(/[\r\n=]/g,""),n=i.length,o=er,s=0,a=[];for(e=0;e>16&255),a.push(s>>8&255),a.push(255&s)),s=s<<6|o.indexOf(i.charAt(e));return 0===(r=n%4*6)?(a.push(s>>16&255),a.push(s>>8&255),a.push(255&s)):18===r?(a.push(s>>10&255),a.push(s>>2&255)):12===r&&a.push(s>>4&255),new Uint8Array(a)}function nr(t){var e,r,i="",n=0,o=t.length,s=er;for(e=0;e>18&63],i+=s[n>>12&63],i+=s[n>>6&63],i+=s[63&n]),n=(n<<8)+t[e];return 0===(r=o%3)?(i+=s[n>>18&63],i+=s[n>>12&63],i+=s[n>>6&63],i+=s[63&n]):2===r?(i+=s[n>>10&63],i+=s[n>>4&63],i+=s[n<<2&63],i+=s[64]):1===r&&(i+=s[n>>2&63],i+=s[n<<4&63],i+=s[64],i+=s[64]),i}function or(t){return"[object Uint8Array]"===Object.prototype.toString.call(t)}(0,a.K2)(rr,"resolveYamlBinary"),(0,a.K2)(ir,"constructYamlBinary"),(0,a.K2)(nr,"representYamlBinary"),(0,a.K2)(or,"isBinary");var sr=new xe("tag:yaml.org,2002:binary",{kind:"scalar",resolve:rr,construct:ir,predicate:or,represent:nr}),ar=Object.prototype.hasOwnProperty,lr=Object.prototype.toString;function cr(t){if(null===t)return!0;var e,r,i,n,o,s=[],a=t;for(e=0,r=a.length;e>10),56320+(t-65536&1023))}(0,a.K2)(Or,"_class"),(0,a.K2)(Dr,"is_EOL"),(0,a.K2)(Ir,"is_WHITE_SPACE"),(0,a.K2)(Rr,"is_WS_OR_EOL"),(0,a.K2)(Nr,"is_FLOW_INDICATOR"),(0,a.K2)(qr,"fromHexCode"),(0,a.K2)(zr,"escapedHexLen"),(0,a.K2)(Pr,"fromDecimalCode"),(0,a.K2)(Kr,"simpleEscapeSequence"),(0,a.K2)(jr,"charFromCodepoint");var Wr,Ur=new Array(256),Hr=new Array(256);for(Wr=0;Wr<256;Wr++)Ur[Wr]=Kr(Wr)?1:0,Hr[Wr]=Kr(Wr);function Yr(t,e){this.input=t,this.filename=e.filename||null,this.schema=e.schema||Cr,this.onWarning=e.onWarning||null,this.legacy=e.legacy||!1,this.json=e.json||!1,this.listener=e.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=t.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}function Vr(t,e){var r={name:t.filename,buffer:t.input.slice(0,-1),position:t.position,line:t.line,column:t.position-t.lineStart};return r.snippet=pe(r),new ce(e,r)}function Gr(t,e){throw Vr(t,e)}function Zr(t,e){t.onWarning&&t.onWarning.call(null,Vr(t,e))}(0,a.K2)(Yr,"State$1"),(0,a.K2)(Vr,"generateError"),(0,a.K2)(Gr,"throwError"),(0,a.K2)(Zr,"throwWarning");var Xr={YAML:(0,a.K2)((function(t,e,r){var i,n,o;null!==t.version&&Gr(t,"duplication of %YAML directive"),1!==r.length&&Gr(t,"YAML directive accepts exactly one argument"),null===(i=/^([0-9]+)\.([0-9]+)$/.exec(r[0]))&&Gr(t,"ill-formed argument of the YAML directive"),n=parseInt(i[1],10),o=parseInt(i[2],10),1!==n&&Gr(t,"unacceptable YAML version of the document"),t.version=r[0],t.checkLineBreaks=o<2,1!==o&&2!==o&&Zr(t,"unsupported YAML version of the document")}),"handleYamlDirective"),TAG:(0,a.K2)((function(t,e,r){var i,n;2!==r.length&&Gr(t,"TAG directive accepts exactly two arguments"),i=r[0],n=r[1],$r.test(i)||Gr(t,"ill-formed tag handle (first argument) of the TAG directive"),kr.call(t.tagMap,i)&&Gr(t,'there is a previously declared suffix for "'+i+'" tag handle'),Er.test(n)||Gr(t,"ill-formed tag prefix (second argument) of the TAG directive");try{n=decodeURIComponent(n)}catch(o){Gr(t,"tag prefix is malformed: "+n)}t.tagMap[i]=n}),"handleTagDirective")};function Qr(t,e,r,i){var n,o,s,a;if(e1&&(t.result+=se.repeat("\n",e-1))}function oi(t,e,r){var i,n,o,s,a,l,c,h,u=t.kind,d=t.result;if(Rr(h=t.input.charCodeAt(t.position))||Nr(h)||35===h||38===h||42===h||33===h||124===h||62===h||39===h||34===h||37===h||64===h||96===h)return!1;if((63===h||45===h)&&(Rr(i=t.input.charCodeAt(t.position+1))||r&&Nr(i)))return!1;for(t.kind="scalar",t.result="",n=o=t.position,s=!1;0!==h;){if(58===h){if(Rr(i=t.input.charCodeAt(t.position+1))||r&&Nr(i))break}else if(35===h){if(Rr(t.input.charCodeAt(t.position-1)))break}else{if(t.position===t.lineStart&&ii(t)||r&&Nr(h))break;if(Dr(h)){if(a=t.line,l=t.lineStart,c=t.lineIndent,ri(t,!1,-1),t.lineIndent>=e){s=!0,h=t.input.charCodeAt(t.position);continue}t.position=o,t.line=a,t.lineStart=l,t.lineIndent=c;break}}s&&(Qr(t,n,o,!1),ni(t,t.line-a),n=o=t.position,s=!1),Ir(h)||(o=t.position+1),h=t.input.charCodeAt(++t.position)}return Qr(t,n,o,!1),!!t.result||(t.kind=u,t.result=d,!1)}function si(t,e){var r,i,n;if(39!==(r=t.input.charCodeAt(t.position)))return!1;for(t.kind="scalar",t.result="",t.position++,i=n=t.position;0!==(r=t.input.charCodeAt(t.position));)if(39===r){if(Qr(t,i,t.position,!0),39!==(r=t.input.charCodeAt(++t.position)))return!0;i=t.position,t.position++,n=t.position}else Dr(r)?(Qr(t,i,n,!0),ni(t,ri(t,!1,e)),i=n=t.position):t.position===t.lineStart&&ii(t)?Gr(t,"unexpected end of the document within a single quoted scalar"):(t.position++,n=t.position);Gr(t,"unexpected end of the stream within a single quoted scalar")}function ai(t,e){var r,i,n,o,s,a;if(34!==(a=t.input.charCodeAt(t.position)))return!1;for(t.kind="scalar",t.result="",t.position++,r=i=t.position;0!==(a=t.input.charCodeAt(t.position));){if(34===a)return Qr(t,r,t.position,!0),t.position++,!0;if(92===a){if(Qr(t,r,t.position,!0),Dr(a=t.input.charCodeAt(++t.position)))ri(t,!1,e);else if(a<256&&Ur[a])t.result+=Hr[a],t.position++;else if((s=zr(a))>0){for(n=s,o=0;n>0;n--)(s=qr(a=t.input.charCodeAt(++t.position)))>=0?o=(o<<4)+s:Gr(t,"expected hexadecimal character");t.result+=jr(o),t.position++}else Gr(t,"unknown escape sequence");r=i=t.position}else Dr(a)?(Qr(t,r,i,!0),ni(t,ri(t,!1,e)),r=i=t.position):t.position===t.lineStart&&ii(t)?Gr(t,"unexpected end of the document within a double quoted scalar"):(t.position++,i=t.position)}Gr(t,"unexpected end of the stream within a double quoted scalar")}function li(t,e){var r,i,n,o,s,a,l,c,h,u,d,p,f=!0,g=t.tag,y=t.anchor,m=Object.create(null);if(91===(p=t.input.charCodeAt(t.position)))s=93,c=!1,o=[];else{if(123!==p)return!1;s=125,c=!0,o={}}for(null!==t.anchor&&(t.anchorMap[t.anchor]=o),p=t.input.charCodeAt(++t.position);0!==p;){if(ri(t,!0,e),(p=t.input.charCodeAt(t.position))===s)return t.position++,t.tag=g,t.anchor=y,t.kind=c?"mapping":"sequence",t.result=o,!0;f?44===p&&Gr(t,"expected the node content, but found ','"):Gr(t,"missed comma between flow collection entries"),d=null,a=l=!1,63===p&&Rr(t.input.charCodeAt(t.position+1))&&(a=l=!0,t.position++,ri(t,!0,e)),r=t.line,i=t.lineStart,n=t.position,gi(t,e,_r,!1,!0),u=t.tag,h=t.result,ri(t,!0,e),p=t.input.charCodeAt(t.position),!l&&t.line!==r||58!==p||(a=!0,p=t.input.charCodeAt(++t.position),ri(t,!0,e),gi(t,e,_r,!1,!0),d=t.result),c?ti(t,o,m,u,h,d,r,i,n):a?o.push(ti(t,null,m,u,h,d,r,i,n)):o.push(h),ri(t,!0,e),44===(p=t.input.charCodeAt(t.position))?(f=!0,p=t.input.charCodeAt(++t.position)):f=!1}Gr(t,"unexpected end of the stream within a flow collection")}function ci(t,e){var r,i,n,o,s=Sr,a=!1,l=!1,c=e,h=0,u=!1;if(124===(o=t.input.charCodeAt(t.position)))i=!1;else{if(62!==o)return!1;i=!0}for(t.kind="scalar",t.result="";0!==o;)if(43===(o=t.input.charCodeAt(++t.position))||45===o)Sr===s?s=43===o?Mr:Ar:Gr(t,"repeat of a chomping mode identifier");else{if(!((n=Pr(o))>=0))break;0===n?Gr(t,"bad explicit indentation width of a block scalar; it cannot be less than one"):l?Gr(t,"repeat of an indentation width identifier"):(c=e+n-1,l=!0)}if(Ir(o)){do{o=t.input.charCodeAt(++t.position)}while(Ir(o));if(35===o)do{o=t.input.charCodeAt(++t.position)}while(!Dr(o)&&0!==o)}for(;0!==o;){for(ei(t),t.lineIndent=0,o=t.input.charCodeAt(t.position);(!l||t.lineIndentc&&(c=t.lineIndent),Dr(o))h++;else{if(t.lineIndente)&&0!==i)Gr(t,"bad indentation of a sequence entry");else if(t.lineIndente)&&(m&&(s=t.line,a=t.lineStart,l=t.position),gi(t,e,Tr,!0,n)&&(m?g=t.result:y=t.result),m||(ti(t,d,p,f,g,y,s,a,l),f=g=y=null),ri(t,!0,-1),c=t.input.charCodeAt(t.position)),(t.line===o||t.lineIndent>e)&&0!==c)Gr(t,"bad indentation of a mapping entry");else if(t.lineIndente?f=1:t.lineIndent===e?f=0:t.lineIndente?f=1:t.lineIndent===e?f=0:t.lineIndent tag; it should be "scalar", not "'+t.kind+'"'),l=0,c=t.implicitTypes.length;l"),null!==t.result&&u.kind!==t.kind&&Gr(t,"unacceptable node kind for !<"+t.tag+'> tag; it should be "'+u.kind+'", not "'+t.kind+'"'),u.resolve(t.result,t.tag)?(t.result=u.construct(t.result,t.tag),null!==t.anchor&&(t.anchorMap[t.anchor]=t.result)):Gr(t,"cannot resolve a node with !<"+t.tag+"> explicit tag")}return null!==t.listener&&t.listener("close",t),null!==t.tag||null!==t.anchor||y}function yi(t){var e,r,i,n,o=t.position,s=!1;for(t.version=null,t.checkLineBreaks=t.legacy,t.tagMap=Object.create(null),t.anchorMap=Object.create(null);0!==(n=t.input.charCodeAt(t.position))&&(ri(t,!0,-1),n=t.input.charCodeAt(t.position),!(t.lineIndent>0||37!==n));){for(s=!0,n=t.input.charCodeAt(++t.position),e=t.position;0!==n&&!Rr(n);)n=t.input.charCodeAt(++t.position);for(i=[],(r=t.input.slice(e,t.position)).length<1&&Gr(t,"directive name must not be less than one character in length");0!==n;){for(;Ir(n);)n=t.input.charCodeAt(++t.position);if(35===n){do{n=t.input.charCodeAt(++t.position)}while(0!==n&&!Dr(n));break}if(Dr(n))break;for(e=t.position;0!==n&&!Rr(n);)n=t.input.charCodeAt(++t.position);i.push(t.input.slice(e,t.position))}0!==n&&ei(t),kr.call(Xr,r)?Xr[r](t,r,i):Zr(t,'unknown document directive "'+r+'"')}ri(t,!0,-1),0===t.lineIndent&&45===t.input.charCodeAt(t.position)&&45===t.input.charCodeAt(t.position+1)&&45===t.input.charCodeAt(t.position+2)?(t.position+=3,ri(t,!0,-1)):s&&Gr(t,"directives end mark is expected"),gi(t,t.lineIndent-1,Tr,!1,!0),ri(t,!0,-1),t.checkLineBreaks&&Lr.test(t.input.slice(o,t.position))&&Zr(t,"non-ASCII line breaks are interpreted as content"),t.documents.push(t.result),t.position===t.lineStart&&ii(t)?46===t.input.charCodeAt(t.position)&&(t.position+=3,ri(t,!0,-1)):t.position=55296&&i<=56319&&e+1=56320&&r<=57343?1024*(i-55296)+r-56320+65536:i}function pn(t){return/^\n* /.test(t)}(0,a.K2)(en,"State"),(0,a.K2)(rn,"indentString"),(0,a.K2)(nn,"generateNextLine"),(0,a.K2)(on,"testImplicitResolving"),(0,a.K2)(sn,"isWhitespace"),(0,a.K2)(an,"isPrintable"),(0,a.K2)(ln,"isNsCharOrWhitespace"),(0,a.K2)(cn,"isPlainSafe"),(0,a.K2)(hn,"isPlainSafeFirst"),(0,a.K2)(un,"isPlainSafeLast"),(0,a.K2)(dn,"codePointAt"),(0,a.K2)(pn,"needIndentIndicator");var fn=1,gn=2,yn=3,mn=4,xn=5;function bn(t,e,r,i,n,o,s,a){var l,c=0,h=null,u=!1,d=!1,p=-1!==i,f=-1,g=hn(dn(t,0))&&un(dn(t,t.length-1));if(e||s)for(l=0;l=65536?l+=2:l++){if(!an(c=dn(t,l)))return xn;g=g&&cn(c,h,a),h=c}else{for(l=0;l=65536?l+=2:l++){if((c=dn(t,l))===Ti)u=!0,p&&(d=d||l-f-1>i&&" "!==t[f+1],f=l);else if(!an(c))return xn;g=g&&cn(c,h,a),h=c}d=d||p&&l-f-1>i&&" "!==t[f+1]}return u||d?r>9&&pn(t)?xn:s?o===tn?xn:gn:d?mn:yn:!g||s||n(t)?o===tn?xn:gn:fn}function Cn(t,e,r,i,n){t.dump=function(){if(0===e.length)return t.quotingType===tn?'""':"''";if(!t.noCompatMode&&(-1!==Gi.indexOf(e)||Zi.test(e)))return t.quotingType===tn?'"'+e+'"':"'"+e+"'";var o=t.indent*Math.max(1,r),s=-1===t.lineWidth?-1:Math.max(Math.min(t.lineWidth,40),t.lineWidth-o),l=i||t.flowLevel>-1&&r>=t.flowLevel;function c(e){return on(t,e)}switch((0,a.K2)(c,"testAmbiguity"),bn(e,l,t.indent,s,c,t.quotingType,t.forceQuotes&&!i,n)){case fn:return e;case gn:return"'"+e.replace(/'/g,"''")+"'";case yn:return"|"+kn(e,t.indent)+_n(rn(e,o));case mn:return">"+kn(e,t.indent)+_n(rn(wn(e,s),o));case xn:return'"'+Tn(e)+'"';default:throw new ce("impossible error: invalid scalar style")}}()}function kn(t,e){var r=pn(t)?String(e):"",i="\n"===t[t.length-1];return r+(i&&("\n"===t[t.length-2]||"\n"===t)?"+":i?"":"-")+"\n"}function _n(t){return"\n"===t[t.length-1]?t.slice(0,-1):t}function wn(t,e){for(var r,i,n,o=/(\n+)([^\n]*)/g,s=(r=-1!==(r=t.indexOf("\n"))?r:t.length,o.lastIndex=r,vn(t.slice(0,r),e)),a="\n"===t[0]||" "===t[0];n=o.exec(t);){var l=n[1],c=n[2];i=" "===c[0],s+=l+(a||i||""===c?"":"\n")+vn(c,e),a=i}return s}function vn(t,e){if(""===t||" "===t[0])return t;for(var r,i,n=/ [^ ]/g,o=0,s=0,a=0,l="";r=n.exec(t);)(a=r.index)-o>e&&(i=s>o?s:a,l+="\n"+t.slice(o,i),o=i+1),s=a;return l+="\n",t.length-o>e&&s>o?l+=t.slice(o,s)+"\n"+t.slice(s+1):l+=t.slice(o),l.slice(1)}function Tn(t){for(var e,r="",i=0,n=0;n=65536?n+=2:n++)i=dn(t,n),!(e=Vi[i])&&an(i)?(r+=t[n],i>=65536&&(r+=t[n+1])):r+=e||Qi(i);return r}function Sn(t,e,r){var i,n,o,s="",a=t.tag;for(i=0,n=r.length;i1024&&(a+="? "),a+=t.dump+(t.condenseFlow?'"':"")+":"+(t.condenseFlow?"":" "),Fn(t,e,s,!1,!1)&&(l+=a+=t.dump));t.tag=c,t.dump="{"+l+"}"}function Bn(t,e,r,i){var n,o,s,a,l,c,h="",u=t.tag,d=Object.keys(r);if(!0===t.sortKeys)d.sort();else if("function"==typeof t.sortKeys)d.sort(t.sortKeys);else if(t.sortKeys)throw new ce("sortKeys must be a boolean or a function");for(n=0,o=d.length;n1024)&&(t.dump&&Ti===t.dump.charCodeAt(0)?c+="?":c+="? "),c+=t.dump,l&&(c+=nn(t,e)),Fn(t,e+1,a,!0,l)&&(t.dump&&Ti===t.dump.charCodeAt(0)?c+=":":c+=": ",h+=c+=t.dump));t.tag=u,t.dump=h||"{}"}function Ln(t,e,r){var i,n,o,s,a,l;for(o=0,s=(n=r?t.explicitTypes:t.implicitTypes).length;o tag resolver accepts not "'+l+'" style');i=a.represent[l](e,l)}t.dump=i}return!0}return!1}function Fn(t,e,r,i,n,o,s){t.tag=null,t.dump=r,Ln(t,r,!1)||Ln(t,r,!0);var a,l=ki.call(t.dump),c=i;i&&(i=t.flowLevel<0||t.flowLevel>e);var h,u,d="[object Object]"===l||"[object Array]"===l;if(d&&(u=-1!==(h=t.duplicates.indexOf(r))),(null!==t.tag&&"?"!==t.tag||u||2!==t.indent&&e>0)&&(n=!1),u&&t.usedDuplicates[h])t.dump="*ref_"+h;else{if(d&&u&&!t.usedDuplicates[h]&&(t.usedDuplicates[h]=!0),"[object Object]"===l)i&&0!==Object.keys(t.dump).length?(Bn(t,e,t.dump,n),u&&(t.dump="&ref_"+h+t.dump)):(Mn(t,e,t.dump),u&&(t.dump="&ref_"+h+" "+t.dump));else if("[object Array]"===l)i&&0!==t.dump.length?(t.noArrayIndent&&!s&&e>0?An(t,e-1,t.dump,n):An(t,e,t.dump,n),u&&(t.dump="&ref_"+h+t.dump)):(Sn(t,e,t.dump),u&&(t.dump="&ref_"+h+" "+t.dump));else{if("[object String]"!==l){if("[object Undefined]"===l)return!1;if(t.skipInvalid)return!1;throw new ce("unacceptable kind of an object to dump "+l)}"?"!==t.tag&&Cn(t,t.dump,e,o,c)}null!==t.tag&&"?"!==t.tag&&(a=encodeURI("!"===t.tag[0]?t.tag.slice(1):t.tag).replace(/!/g,"%21"),a="!"===t.tag[0]?"!"+a:"tag:yaml.org,2002:"===a.slice(0,18)?"!!"+a.slice(18):"!<"+a+">",t.dump=a+" "+t.dump)}return!0}function $n(t,e){var r,i,n=[],o=[];for(En(t,n,o),r=0,i=o.length;rt.replace(/\r\n?/g,"\n").replace(/<(\w+)([^>]*)>/g,((t,e,r)=>"<"+e+r.replace(/="([^"]*)"/g,"='$1'")+">"))),"cleanupText"),zn=(0,a.K2)((t=>{const{text:e,metadata:r}=Nn(t),{displayMode:i,title:n,config:o={}}=r;return i&&(o.gantt||(o.gantt={}),o.gantt.displayMode=i),{title:n,config:o,text:e}}),"processFrontmatter"),Pn=(0,a.K2)((t=>{const e=n._K.detectInit(t)??{},r=n._K.detectDirective(t,"wrap");return Array.isArray(r)?e.wrap=r.some((({type:t})=>"wrap"===t)):"wrap"===r?.type&&(e.wrap=!0),{text:(0,n.vU)(t),directive:e}}),"processDirectives");function Kn(t){const e=qn(t),r=zn(e),i=Pn(r.text),o=(0,n.$t)(r.config,i.directive);return{code:t=Jt(i.text),title:r.title,config:o}}function jn(t){const e=(new TextEncoder).encode(t),r=Array.from(e,(t=>String.fromCodePoint(t))).join("");return btoa(r)}(0,a.K2)(Kn,"preprocessDiagram"),(0,a.K2)(jn,"toBase64");var Wn=["foreignobject"],Un=["dominant-baseline"];function Hn(t){const e=Kn(t);return(0,a.cL)(),(0,a.xA)(e.config??{}),e}async function Yn(t,e){Ut();try{const{code:e}=Hn(t);return{diagramType:(await no(e)).type}}catch(r){if(e?.suppressErrors)return!1;throw r}}(0,a.K2)(Hn,"processAndSetConfigs"),(0,a.K2)(Yn,"parse");var Vn=(0,a.K2)(((t,e,r=[])=>`\n.${t} ${e} { ${r.join(" !important; ")} !important; }`),"cssImportantStyles"),Gn=(0,a.K2)(((t,e=new Map)=>{let r="";if(void 0!==t.themeCSS&&(r+=`\n${t.themeCSS}`),void 0!==t.fontFamily&&(r+=`\n:root { --mermaid-font-family: ${t.fontFamily}}`),void 0!==t.altFontFamily&&(r+=`\n:root { --mermaid-alt-font-family: ${t.altFontFamily}}`),e instanceof Map){const i=t.htmlLabels??t.flowchart?.htmlLabels?["> *","span"]:["rect","polygon","ellipse","circle","path"];e.forEach((t=>{(0,X.A)(t.styles)||i.forEach((e=>{r+=Vn(t.id,e,t.styles)})),(0,X.A)(t.textStyles)||(r+=Vn(t.id,"tspan",(t?.textStyles||[]).map((t=>t.replace("color","fill")))))}))}return r}),"createCssStyles"),Zn=(0,a.K2)(((t,e,r,i)=>{const n=Gn(t,r);return _(U(`${i}{${(0,a.tM)(e,n,t.themeVariables)}}`),w)}),"createUserStyles"),Xn=(0,a.K2)(((t="",e,r)=>{let i=t;return r||e||(i=i.replace(/marker-end="url\([\d+./:=?A-Za-z-]*?#/g,'marker-end="url(#')),i=(0,n.Sm)(i),i=i.replace(/
    /g,"
    "),i}),"cleanUpSvgCode"),Qn=(0,a.K2)(((t="",e)=>``),"putIntoIFrame"),Jn=(0,a.K2)(((t,e,r,i,n)=>{const o=t.append("div");o.attr("id",r),i&&o.attr("style",i);const s=o.append("svg").attr("id",e).attr("width","100%").attr("xmlns","http://www.w3.org/2000/svg");return n&&s.attr("xmlns:xlink",n),s.append("g"),t}),"appendDivSvgG");function to(t,e){return t.append("iframe").attr("id",e).attr("style","width: 100%; height: 100%;").attr("sandbox","")}(0,a.K2)(to,"sandboxedIframe");var eo=(0,a.K2)(((t,e,r,i)=>{t.getElementById(e)?.remove(),t.getElementById(r)?.remove(),t.getElementById(i)?.remove()}),"removeExistingElements"),ro=(0,a.K2)((async function(t,e,r){Ut();const i=Hn(e);e=i.code;const n=(0,a.zj)();a.Rm.debug(n),e.length>(n?.maxTextSize??5e4)&&(e="graph TB;a[Maximum text size in diagram exceeded];style a fill:#faa");const s="#"+t,l="i"+t,h="#"+l,u="d"+t,d="#"+u,p=(0,a.K2)((()=>{const t=g?h:d,e=(0,c.Ltv)(t).node();e&&"remove"in e&&e.remove()}),"removeTempElements");let f=(0,c.Ltv)("body");const g="sandbox"===n.securityLevel,y="loose"===n.securityLevel,m=n.fontFamily;if(void 0!==r){if(r&&(r.innerHTML=""),g){const t=to((0,c.Ltv)(r),l);f=(0,c.Ltv)(t.nodes()[0].contentDocument.body),f.node().style.margin=0}else f=(0,c.Ltv)(r);Jn(f,t,u,`font-family: ${m}`,"http://www.w3.org/1999/xlink")}else{if(eo(document,t,u,l),g){const t=to((0,c.Ltv)("body"),l);f=(0,c.Ltv)(t.nodes()[0].contentDocument.body),f.node().style.margin=0}else f=(0,c.Ltv)("body");Jn(f,t,u)}let x,b;try{x=await Yt.fromText(e,{title:i.title})}catch(F){if(n.suppressErrorRendering)throw p(),F;x=await Yt.fromText("error"),b=F}const C=f.select(d).node(),k=x.type,_=C.firstChild,w=_.firstChild,v=x.renderer.getClasses?.(e,x),T=Zn(n,k,v,s),S=document.createElement("style");S.innerHTML=T,_.insertBefore(S,w);try{await x.renderer.draw(e,t,o.r,x)}catch($){throw n.suppressErrorRendering?p():Lt.draw(e,t,o.r),$}const A=f.select(`${d} svg`),M=x.db.getAccTitle?.(),B=x.db.getAccDescription?.();oo(k,A,M,B),f.select(`[id="${t}"]`).selectAll("foreignobject > *").attr("xmlns","http://www.w3.org/1999/xhtml");let L=f.select(d).node().innerHTML;if(a.Rm.debug("config.arrowMarkerAbsolute",n.arrowMarkerAbsolute),L=Xn(L,g,(0,a._3)(n.arrowMarkerAbsolute)),g){const t=f.select(d+" svg").node();L=Qn(L,t)}else y||(L=Z.sanitize(L,{ADD_TAGS:Wn,ADD_ATTR:Un}));if(Gt(),b)throw b;return p(),{diagramType:k,svg:L,bindFunctions:x.db.bindFunctions}}),"render");function io(t={}){const e=(0,a.hH)({},t);e?.fontFamily&&!e.themeVariables?.fontFamily&&(e.themeVariables||(e.themeVariables={}),e.themeVariables.fontFamily=e.fontFamily),(0,a.wZ)(e),e?.theme&&e.theme in a.H$?e.themeVariables=a.H$[e.theme].getThemeVariables(e.themeVariables):e&&(e.themeVariables=a.H$.default.getThemeVariables(e.themeVariables));const r="object"==typeof e?(0,a.UU)(e):(0,a.Q2)();(0,a.He)(r.logLevel),Ut()}(0,a.K2)(io,"initialize");var no=(0,a.K2)(((t,e={})=>{const{code:r}=Kn(t);return Yt.fromText(r,e)}),"getDiagramFromText");function oo(t,e,r,i){Xt(e,t),Qt(e,r,i,e.attr("id"))}(0,a.K2)(oo,"addA11yInfo");var so=Object.freeze({render:ro,parse:Yn,getDiagramFromText:no,initialize:io,getConfig:a.zj,setConfig:a.Nk,getSiteConfig:a.Q2,updateSiteConfig:a.B6,reset:(0,a.K2)((()=>{(0,a.cL)()}),"reset"),globalReset:(0,a.K2)((()=>{(0,a.cL)(a.sb)}),"globalReset"),defaultConfig:a.sb});(0,a.He)((0,a.zj)().logLevel),(0,a.cL)((0,a.zj)());var ao=(0,a.K2)(((t,e,r)=>{a.Rm.warn(t),(0,n.dq)(t)?(r&&r(t.str,t.hash),e.push({...t,message:t.str,error:t})):(r&&r(t),t instanceof Error&&e.push({str:t.message,message:t.message,hash:t.name,error:t}))}),"handleError"),lo=(0,a.K2)((async function(t={querySelector:".mermaid"}){try{await co(t)}catch(e){if((0,n.dq)(e)&&a.Rm.error(e.str),ko.parseError&&ko.parseError(e),!t.suppressErrors)throw a.Rm.error("Use the suppressErrors option to suppress these errors"),e}}),"run"),co=(0,a.K2)((async function({postRenderCallback:t,querySelector:e,nodes:r}={querySelector:".mermaid"}){const i=so.getConfig();let o;if(a.Rm.debug((t?"":"No ")+"Callback function found"),r)o=r;else{if(!e)throw new Error("Nodes and querySelector are both undefined");o=document.querySelectorAll(e)}a.Rm.debug(`Found ${o.length} diagrams`),void 0!==i?.startOnLoad&&(a.Rm.debug("Start On Load: "+i?.startOnLoad),so.updateSiteConfig({startOnLoad:i?.startOnLoad}));const s=new n._K.InitIDGenerator(i.deterministicIds,i.deterministicIDSeed);let c;const h=[];for(const d of Array.from(o)){if(a.Rm.info("Rendering diagram: "+d.id),d.getAttribute("data-processed"))continue;d.setAttribute("data-processed","true");const e=`mermaid-${s.next()}`;c=d.innerHTML,c=(0,l.T)(n._K.entityDecode(c)).trim().replace(//gi,"
    ");const r=n._K.detectInit(c);r&&a.Rm.debug("Detected early reinit: ",r);try{const{svg:r,bindFunctions:i}=await Co(e,c,d);d.innerHTML=r,t&&await t(e),i&&i(d)}catch(u){ao(u,h,ko.parseError)}}if(h.length>0)throw h[0]}),"runThrowsErrors"),ho=(0,a.K2)((function(t){so.initialize(t)}),"initialize"),uo=(0,a.K2)((async function(t,e,r){a.Rm.warn("mermaid.init is deprecated. Please use run instead."),t&&ho(t);const i={postRenderCallback:r,querySelector:".mermaid"};"string"==typeof e?i.querySelector=e:e&&(e instanceof HTMLElement?i.nodes=[e]:i.nodes=e),await lo(i)}),"init"),po=(0,a.K2)((async(t,{lazyLoad:e=!0}={})=>{Ut(),(0,a.Xd)(...t),!1===e&&await Ht()}),"registerExternalDiagrams"),fo=(0,a.K2)((function(){if(ko.startOnLoad){const{startOnLoad:t}=so.getConfig();t&&ko.run().catch((t=>a.Rm.error("Mermaid failed to initialize",t)))}}),"contentLoaded");"undefined"!=typeof document&&window.addEventListener("load",fo,!1);var go=(0,a.K2)((function(t){ko.parseError=t}),"setParseErrorHandler"),yo=[],mo=!1,xo=(0,a.K2)((async()=>{if(!mo){for(mo=!0;yo.length>0;){const e=yo.shift();if(e)try{await e()}catch(t){a.Rm.error("Error executing queue",t)}}mo=!1}}),"executeQueue"),bo=(0,a.K2)((async(t,e)=>new Promise(((r,i)=>{const n=(0,a.K2)((()=>new Promise(((n,o)=>{so.parse(t,e).then((t=>{n(t),r(t)}),(t=>{a.Rm.error("Error parsing",t),ko.parseError?.(t),o(t),i(t)}))}))),"performCall");yo.push(n),xo().catch(i)}))),"parse"),Co=(0,a.K2)(((t,e,r)=>new Promise(((i,n)=>{const o=(0,a.K2)((()=>new Promise(((o,s)=>{so.render(t,e,r).then((t=>{o(t),i(t)}),(t=>{a.Rm.error("Error parsing",t),ko.parseError?.(t),s(t),n(t)}))}))),"performCall");yo.push(o),xo().catch(n)}))),"render"),ko={startOnLoad:!0,mermaidAPI:so,parse:bo,render:Co,init:uo,run:lo,registerExternalDiagrams:po,registerLayoutLoaders:i.sO,initialize:ho,parseError:void 0,contentLoaded:fo,setParseErrorHandler:go,detectType:a.Ch},_o=ko}}]); \ No newline at end of file diff --git a/assets/js/1675.a04b27f1.js.LICENSE.txt b/assets/js/1675.a04b27f1.js.LICENSE.txt new file mode 100644 index 00000000..ec45c3c6 --- /dev/null +++ b/assets/js/1675.a04b27f1.js.LICENSE.txt @@ -0,0 +1,13 @@ +/*! + * Wait for document loaded before starting the execution + */ + +/*! @license DOMPurify 3.1.2 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.1.2/LICENSE */ + +/*! Bundled license information: + +js-yaml/dist/js-yaml.mjs: + (*! js-yaml 4.1.0 https://github.com/nodeca/js-yaml @license MIT *) +*/ + +/*! Check if previously processed */ diff --git a/assets/js/174.b01925d7.js b/assets/js/174.b01925d7.js new file mode 100644 index 00000000..2def42c5 --- /dev/null +++ b/assets/js/174.b01925d7.js @@ -0,0 +1,1903 @@ +"use strict"; +exports.id = 174; +exports.ids = [174]; +exports.modules = { + +/***/ 57174: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ diagram: () => (/* binding */ diagram) +/* harmony export */ }); +/* harmony import */ var _chunk_OERGPBFJ_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(67895); +/* harmony import */ var _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(57323); +/* harmony import */ var _chunk_DLZUUSFL_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(48852); +/* harmony import */ var _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(64994); +/* harmony import */ var d3__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(20007); + + + + + +// src/diagrams/xychart/parser/xychart.jison +var parser = function() { + var o = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function(k, v, o2, l) { + for (o2 = o2 || {}, l = k.length; l--; o2[k[l]] = v) ; + return o2; + }, "o"), $V0 = [1, 10, 12, 14, 16, 18, 19, 21, 23], $V1 = [2, 6], $V2 = [1, 3], $V3 = [1, 5], $V4 = [1, 6], $V5 = [1, 7], $V6 = [1, 5, 10, 12, 14, 16, 18, 19, 21, 23, 34, 35, 36], $V7 = [1, 25], $V8 = [1, 26], $V9 = [1, 28], $Va = [1, 29], $Vb = [1, 30], $Vc = [1, 31], $Vd = [1, 32], $Ve = [1, 33], $Vf = [1, 34], $Vg = [1, 35], $Vh = [1, 36], $Vi = [1, 37], $Vj = [1, 43], $Vk = [1, 42], $Vl = [1, 47], $Vm = [1, 50], $Vn = [1, 10, 12, 14, 16, 18, 19, 21, 23, 34, 35, 36], $Vo = [1, 10, 12, 14, 16, 18, 19, 21, 23, 24, 26, 27, 28, 34, 35, 36], $Vp = [1, 10, 12, 14, 16, 18, 19, 21, 23, 24, 26, 27, 28, 34, 35, 36, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50], $Vq = [1, 64]; + var parser2 = { + trace: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function trace() { + }, "trace"), + yy: {}, + symbols_: { "error": 2, "start": 3, "eol": 4, "XYCHART": 5, "chartConfig": 6, "document": 7, "CHART_ORIENTATION": 8, "statement": 9, "title": 10, "text": 11, "X_AXIS": 12, "parseXAxis": 13, "Y_AXIS": 14, "parseYAxis": 15, "LINE": 16, "plotData": 17, "BAR": 18, "acc_title": 19, "acc_title_value": 20, "acc_descr": 21, "acc_descr_value": 22, "acc_descr_multiline_value": 23, "SQUARE_BRACES_START": 24, "commaSeparatedNumbers": 25, "SQUARE_BRACES_END": 26, "NUMBER_WITH_DECIMAL": 27, "COMMA": 28, "xAxisData": 29, "bandData": 30, "ARROW_DELIMITER": 31, "commaSeparatedTexts": 32, "yAxisData": 33, "NEWLINE": 34, "SEMI": 35, "EOF": 36, "alphaNum": 37, "STR": 38, "MD_STR": 39, "alphaNumToken": 40, "AMP": 41, "NUM": 42, "ALPHA": 43, "PLUS": 44, "EQUALS": 45, "MULT": 46, "DOT": 47, "BRKT": 48, "MINUS": 49, "UNDERSCORE": 50, "$accept": 0, "$end": 1 }, + terminals_: { 2: "error", 5: "XYCHART", 8: "CHART_ORIENTATION", 10: "title", 12: "X_AXIS", 14: "Y_AXIS", 16: "LINE", 18: "BAR", 19: "acc_title", 20: "acc_title_value", 21: "acc_descr", 22: "acc_descr_value", 23: "acc_descr_multiline_value", 24: "SQUARE_BRACES_START", 26: "SQUARE_BRACES_END", 27: "NUMBER_WITH_DECIMAL", 28: "COMMA", 31: "ARROW_DELIMITER", 34: "NEWLINE", 35: "SEMI", 36: "EOF", 38: "STR", 39: "MD_STR", 41: "AMP", 42: "NUM", 43: "ALPHA", 44: "PLUS", 45: "EQUALS", 46: "MULT", 47: "DOT", 48: "BRKT", 49: "MINUS", 50: "UNDERSCORE" }, + productions_: [0, [3, 2], [3, 3], [3, 2], [3, 1], [6, 1], [7, 0], [7, 2], [9, 2], [9, 2], [9, 2], [9, 2], [9, 2], [9, 3], [9, 2], [9, 3], [9, 2], [9, 2], [9, 1], [17, 3], [25, 3], [25, 1], [13, 1], [13, 2], [13, 1], [29, 1], [29, 3], [30, 3], [32, 3], [32, 1], [15, 1], [15, 2], [15, 1], [33, 3], [4, 1], [4, 1], [4, 1], [11, 1], [11, 1], [11, 1], [37, 1], [37, 2], [40, 1], [40, 1], [40, 1], [40, 1], [40, 1], [40, 1], [40, 1], [40, 1], [40, 1], [40, 1]], + performAction: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function anonymous(yytext, yyleng, yylineno, yy, yystate, $$, _$) { + var $0 = $$.length - 1; + switch (yystate) { + case 5: + yy.setOrientation($$[$0]); + break; + case 9: + yy.setDiagramTitle($$[$0].text.trim()); + break; + case 12: + yy.setLineData({ text: "", type: "text" }, $$[$0]); + break; + case 13: + yy.setLineData($$[$0 - 1], $$[$0]); + break; + case 14: + yy.setBarData({ text: "", type: "text" }, $$[$0]); + break; + case 15: + yy.setBarData($$[$0 - 1], $$[$0]); + break; + case 16: + this.$ = $$[$0].trim(); + yy.setAccTitle(this.$); + break; + case 17: + case 18: + this.$ = $$[$0].trim(); + yy.setAccDescription(this.$); + break; + case 19: + this.$ = $$[$0 - 1]; + break; + case 20: + this.$ = [Number($$[$0 - 2]), ...$$[$0]]; + break; + case 21: + this.$ = [Number($$[$0])]; + break; + case 22: + yy.setXAxisTitle($$[$0]); + break; + case 23: + yy.setXAxisTitle($$[$0 - 1]); + break; + case 24: + yy.setXAxisTitle({ type: "text", text: "" }); + break; + case 25: + yy.setXAxisBand($$[$0]); + break; + case 26: + yy.setXAxisRangeData(Number($$[$0 - 2]), Number($$[$0])); + break; + case 27: + this.$ = $$[$0 - 1]; + break; + case 28: + this.$ = [$$[$0 - 2], ...$$[$0]]; + break; + case 29: + this.$ = [$$[$0]]; + break; + case 30: + yy.setYAxisTitle($$[$0]); + break; + case 31: + yy.setYAxisTitle($$[$0 - 1]); + break; + case 32: + yy.setYAxisTitle({ type: "text", text: "" }); + break; + case 33: + yy.setYAxisRangeData(Number($$[$0 - 2]), Number($$[$0])); + break; + case 37: + this.$ = { text: $$[$0], type: "text" }; + break; + case 38: + this.$ = { text: $$[$0], type: "text" }; + break; + case 39: + this.$ = { text: $$[$0], type: "markdown" }; + break; + case 40: + this.$ = $$[$0]; + break; + case 41: + this.$ = $$[$0 - 1] + "" + $$[$0]; + break; + } + }, "anonymous"), + table: [o($V0, $V1, { 3: 1, 4: 2, 7: 4, 5: $V2, 34: $V3, 35: $V4, 36: $V5 }), { 1: [3] }, o($V0, $V1, { 4: 2, 7: 4, 3: 8, 5: $V2, 34: $V3, 35: $V4, 36: $V5 }), o($V0, $V1, { 4: 2, 7: 4, 6: 9, 3: 10, 5: $V2, 8: [1, 11], 34: $V3, 35: $V4, 36: $V5 }), { 1: [2, 4], 9: 12, 10: [1, 13], 12: [1, 14], 14: [1, 15], 16: [1, 16], 18: [1, 17], 19: [1, 18], 21: [1, 19], 23: [1, 20] }, o($V6, [2, 34]), o($V6, [2, 35]), o($V6, [2, 36]), { 1: [2, 1] }, o($V0, $V1, { 4: 2, 7: 4, 3: 21, 5: $V2, 34: $V3, 35: $V4, 36: $V5 }), { 1: [2, 3] }, o($V6, [2, 5]), o($V0, [2, 7], { 4: 22, 34: $V3, 35: $V4, 36: $V5 }), { 11: 23, 37: 24, 38: $V7, 39: $V8, 40: 27, 41: $V9, 42: $Va, 43: $Vb, 44: $Vc, 45: $Vd, 46: $Ve, 47: $Vf, 48: $Vg, 49: $Vh, 50: $Vi }, { 11: 39, 13: 38, 24: $Vj, 27: $Vk, 29: 40, 30: 41, 37: 24, 38: $V7, 39: $V8, 40: 27, 41: $V9, 42: $Va, 43: $Vb, 44: $Vc, 45: $Vd, 46: $Ve, 47: $Vf, 48: $Vg, 49: $Vh, 50: $Vi }, { 11: 45, 15: 44, 27: $Vl, 33: 46, 37: 24, 38: $V7, 39: $V8, 40: 27, 41: $V9, 42: $Va, 43: $Vb, 44: $Vc, 45: $Vd, 46: $Ve, 47: $Vf, 48: $Vg, 49: $Vh, 50: $Vi }, { 11: 49, 17: 48, 24: $Vm, 37: 24, 38: $V7, 39: $V8, 40: 27, 41: $V9, 42: $Va, 43: $Vb, 44: $Vc, 45: $Vd, 46: $Ve, 47: $Vf, 48: $Vg, 49: $Vh, 50: $Vi }, { 11: 52, 17: 51, 24: $Vm, 37: 24, 38: $V7, 39: $V8, 40: 27, 41: $V9, 42: $Va, 43: $Vb, 44: $Vc, 45: $Vd, 46: $Ve, 47: $Vf, 48: $Vg, 49: $Vh, 50: $Vi }, { 20: [1, 53] }, { 22: [1, 54] }, o($Vn, [2, 18]), { 1: [2, 2] }, o($Vn, [2, 8]), o($Vn, [2, 9]), o($Vo, [2, 37], { 40: 55, 41: $V9, 42: $Va, 43: $Vb, 44: $Vc, 45: $Vd, 46: $Ve, 47: $Vf, 48: $Vg, 49: $Vh, 50: $Vi }), o($Vo, [2, 38]), o($Vo, [2, 39]), o($Vp, [2, 40]), o($Vp, [2, 42]), o($Vp, [2, 43]), o($Vp, [2, 44]), o($Vp, [2, 45]), o($Vp, [2, 46]), o($Vp, [2, 47]), o($Vp, [2, 48]), o($Vp, [2, 49]), o($Vp, [2, 50]), o($Vp, [2, 51]), o($Vn, [2, 10]), o($Vn, [2, 22], { 30: 41, 29: 56, 24: $Vj, 27: $Vk }), o($Vn, [2, 24]), o($Vn, [2, 25]), { 31: [1, 57] }, { 11: 59, 32: 58, 37: 24, 38: $V7, 39: $V8, 40: 27, 41: $V9, 42: $Va, 43: $Vb, 44: $Vc, 45: $Vd, 46: $Ve, 47: $Vf, 48: $Vg, 49: $Vh, 50: $Vi }, o($Vn, [2, 11]), o($Vn, [2, 30], { 33: 60, 27: $Vl }), o($Vn, [2, 32]), { 31: [1, 61] }, o($Vn, [2, 12]), { 17: 62, 24: $Vm }, { 25: 63, 27: $Vq }, o($Vn, [2, 14]), { 17: 65, 24: $Vm }, o($Vn, [2, 16]), o($Vn, [2, 17]), o($Vp, [2, 41]), o($Vn, [2, 23]), { 27: [1, 66] }, { 26: [1, 67] }, { 26: [2, 29], 28: [1, 68] }, o($Vn, [2, 31]), { 27: [1, 69] }, o($Vn, [2, 13]), { 26: [1, 70] }, { 26: [2, 21], 28: [1, 71] }, o($Vn, [2, 15]), o($Vn, [2, 26]), o($Vn, [2, 27]), { 11: 59, 32: 72, 37: 24, 38: $V7, 39: $V8, 40: 27, 41: $V9, 42: $Va, 43: $Vb, 44: $Vc, 45: $Vd, 46: $Ve, 47: $Vf, 48: $Vg, 49: $Vh, 50: $Vi }, o($Vn, [2, 33]), o($Vn, [2, 19]), { 25: 73, 27: $Vq }, { 26: [2, 28] }, { 26: [2, 20] }], + defaultActions: { 8: [2, 1], 10: [2, 3], 21: [2, 2], 72: [2, 28], 73: [2, 20] }, + parseError: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function parseError(str, hash) { + if (hash.recoverable) { + this.trace(str); + } else { + var error = new Error(str); + error.hash = hash; + throw error; + } + }, "parseError"), + parse: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function parse(input) { + var self = this, stack = [0], tstack = [], vstack = [null], lstack = [], table = this.table, yytext = "", yylineno = 0, yyleng = 0, recovering = 0, TERROR = 2, EOF = 1; + var args = lstack.slice.call(arguments, 1); + var lexer2 = Object.create(this.lexer); + var sharedState = { yy: {} }; + for (var k in this.yy) { + if (Object.prototype.hasOwnProperty.call(this.yy, k)) { + sharedState.yy[k] = this.yy[k]; + } + } + lexer2.setInput(input, sharedState.yy); + sharedState.yy.lexer = lexer2; + sharedState.yy.parser = this; + if (typeof lexer2.yylloc == "undefined") { + lexer2.yylloc = {}; + } + var yyloc = lexer2.yylloc; + lstack.push(yyloc); + var ranges = lexer2.options && lexer2.options.ranges; + if (typeof sharedState.yy.parseError === "function") { + this.parseError = sharedState.yy.parseError; + } else { + this.parseError = Object.getPrototypeOf(this).parseError; + } + function popStack(n) { + stack.length = stack.length - 2 * n; + vstack.length = vstack.length - n; + lstack.length = lstack.length - n; + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(popStack, "popStack"); + function lex() { + var token; + token = tstack.pop() || lexer2.lex() || EOF; + if (typeof token !== "number") { + if (token instanceof Array) { + tstack = token; + token = tstack.pop(); + } + token = self.symbols_[token] || token; + } + return token; + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(lex, "lex"); + var symbol, preErrorSymbol, state, action, a, r, yyval = {}, p, len, newState, expected; + while (true) { + state = stack[stack.length - 1]; + if (this.defaultActions[state]) { + action = this.defaultActions[state]; + } else { + if (symbol === null || typeof symbol == "undefined") { + symbol = lex(); + } + action = table[state] && table[state][symbol]; + } + if (typeof action === "undefined" || !action.length || !action[0]) { + var errStr = ""; + expected = []; + for (p in table[state]) { + if (this.terminals_[p] && p > TERROR) { + expected.push("'" + this.terminals_[p] + "'"); + } + } + if (lexer2.showPosition) { + errStr = "Parse error on line " + (yylineno + 1) + ":\n" + lexer2.showPosition() + "\nExpecting " + expected.join(", ") + ", got '" + (this.terminals_[symbol] || symbol) + "'"; + } else { + errStr = "Parse error on line " + (yylineno + 1) + ": Unexpected " + (symbol == EOF ? "end of input" : "'" + (this.terminals_[symbol] || symbol) + "'"); + } + this.parseError(errStr, { + text: lexer2.match, + token: this.terminals_[symbol] || symbol, + line: lexer2.yylineno, + loc: yyloc, + expected + }); + } + if (action[0] instanceof Array && action.length > 1) { + throw new Error("Parse Error: multiple actions possible at state: " + state + ", token: " + symbol); + } + switch (action[0]) { + case 1: + stack.push(symbol); + vstack.push(lexer2.yytext); + lstack.push(lexer2.yylloc); + stack.push(action[1]); + symbol = null; + if (!preErrorSymbol) { + yyleng = lexer2.yyleng; + yytext = lexer2.yytext; + yylineno = lexer2.yylineno; + yyloc = lexer2.yylloc; + if (recovering > 0) { + recovering--; + } + } else { + symbol = preErrorSymbol; + preErrorSymbol = null; + } + break; + case 2: + len = this.productions_[action[1]][1]; + yyval.$ = vstack[vstack.length - len]; + yyval._$ = { + first_line: lstack[lstack.length - (len || 1)].first_line, + last_line: lstack[lstack.length - 1].last_line, + first_column: lstack[lstack.length - (len || 1)].first_column, + last_column: lstack[lstack.length - 1].last_column + }; + if (ranges) { + yyval._$.range = [ + lstack[lstack.length - (len || 1)].range[0], + lstack[lstack.length - 1].range[1] + ]; + } + r = this.performAction.apply(yyval, [ + yytext, + yyleng, + yylineno, + sharedState.yy, + action[1], + vstack, + lstack + ].concat(args)); + if (typeof r !== "undefined") { + return r; + } + if (len) { + stack = stack.slice(0, -1 * len * 2); + vstack = vstack.slice(0, -1 * len); + lstack = lstack.slice(0, -1 * len); + } + stack.push(this.productions_[action[1]][0]); + vstack.push(yyval.$); + lstack.push(yyval._$); + newState = table[stack[stack.length - 2]][stack[stack.length - 1]]; + stack.push(newState); + break; + case 3: + return true; + } + } + return true; + }, "parse") + }; + var lexer = /* @__PURE__ */ function() { + var lexer2 = { + EOF: 1, + parseError: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function parseError(str, hash) { + if (this.yy.parser) { + this.yy.parser.parseError(str, hash); + } else { + throw new Error(str); + } + }, "parseError"), + // resets the lexer, sets new input + setInput: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function(input, yy) { + this.yy = yy || this.yy || {}; + this._input = input; + this._more = this._backtrack = this.done = false; + this.yylineno = this.yyleng = 0; + this.yytext = this.matched = this.match = ""; + this.conditionStack = ["INITIAL"]; + this.yylloc = { + first_line: 1, + first_column: 0, + last_line: 1, + last_column: 0 + }; + if (this.options.ranges) { + this.yylloc.range = [0, 0]; + } + this.offset = 0; + return this; + }, "setInput"), + // consumes and returns one char from the input + input: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function() { + var ch = this._input[0]; + this.yytext += ch; + this.yyleng++; + this.offset++; + this.match += ch; + this.matched += ch; + var lines = ch.match(/(?:\r\n?|\n).*/g); + if (lines) { + this.yylineno++; + this.yylloc.last_line++; + } else { + this.yylloc.last_column++; + } + if (this.options.ranges) { + this.yylloc.range[1]++; + } + this._input = this._input.slice(1); + return ch; + }, "input"), + // unshifts one char (or a string) into the input + unput: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function(ch) { + var len = ch.length; + var lines = ch.split(/(?:\r\n?|\n)/g); + this._input = ch + this._input; + this.yytext = this.yytext.substr(0, this.yytext.length - len); + this.offset -= len; + var oldLines = this.match.split(/(?:\r\n?|\n)/g); + this.match = this.match.substr(0, this.match.length - 1); + this.matched = this.matched.substr(0, this.matched.length - 1); + if (lines.length - 1) { + this.yylineno -= lines.length - 1; + } + var r = this.yylloc.range; + this.yylloc = { + first_line: this.yylloc.first_line, + last_line: this.yylineno + 1, + first_column: this.yylloc.first_column, + last_column: lines ? (lines.length === oldLines.length ? this.yylloc.first_column : 0) + oldLines[oldLines.length - lines.length].length - lines[0].length : this.yylloc.first_column - len + }; + if (this.options.ranges) { + this.yylloc.range = [r[0], r[0] + this.yyleng - len]; + } + this.yyleng = this.yytext.length; + return this; + }, "unput"), + // When called from action, caches matched text and appends it on next action + more: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function() { + this._more = true; + return this; + }, "more"), + // When called from action, signals the lexer that this rule fails to match the input, so the next matching rule (regex) should be tested instead. + reject: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function() { + if (this.options.backtrack_lexer) { + this._backtrack = true; + } else { + return this.parseError("Lexical error on line " + (this.yylineno + 1) + ". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n" + this.showPosition(), { + text: "", + token: null, + line: this.yylineno + }); + } + return this; + }, "reject"), + // retain first n characters of the match + less: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function(n) { + this.unput(this.match.slice(n)); + }, "less"), + // displays already matched input, i.e. for error messages + pastInput: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function() { + var past = this.matched.substr(0, this.matched.length - this.match.length); + return (past.length > 20 ? "..." : "") + past.substr(-20).replace(/\n/g, ""); + }, "pastInput"), + // displays upcoming input, i.e. for error messages + upcomingInput: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function() { + var next = this.match; + if (next.length < 20) { + next += this._input.substr(0, 20 - next.length); + } + return (next.substr(0, 20) + (next.length > 20 ? "..." : "")).replace(/\n/g, ""); + }, "upcomingInput"), + // displays the character position where the lexing error occurred, i.e. for error messages + showPosition: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function() { + var pre = this.pastInput(); + var c = new Array(pre.length + 1).join("-"); + return pre + this.upcomingInput() + "\n" + c + "^"; + }, "showPosition"), + // test the lexed token: return FALSE when not a match, otherwise return token + test_match: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function(match, indexed_rule) { + var token, lines, backup; + if (this.options.backtrack_lexer) { + backup = { + yylineno: this.yylineno, + yylloc: { + first_line: this.yylloc.first_line, + last_line: this.last_line, + first_column: this.yylloc.first_column, + last_column: this.yylloc.last_column + }, + yytext: this.yytext, + match: this.match, + matches: this.matches, + matched: this.matched, + yyleng: this.yyleng, + offset: this.offset, + _more: this._more, + _input: this._input, + yy: this.yy, + conditionStack: this.conditionStack.slice(0), + done: this.done + }; + if (this.options.ranges) { + backup.yylloc.range = this.yylloc.range.slice(0); + } + } + lines = match[0].match(/(?:\r\n?|\n).*/g); + if (lines) { + this.yylineno += lines.length; + } + this.yylloc = { + first_line: this.yylloc.last_line, + last_line: this.yylineno + 1, + first_column: this.yylloc.last_column, + last_column: lines ? lines[lines.length - 1].length - lines[lines.length - 1].match(/\r?\n?/)[0].length : this.yylloc.last_column + match[0].length + }; + this.yytext += match[0]; + this.match += match[0]; + this.matches = match; + this.yyleng = this.yytext.length; + if (this.options.ranges) { + this.yylloc.range = [this.offset, this.offset += this.yyleng]; + } + this._more = false; + this._backtrack = false; + this._input = this._input.slice(match[0].length); + this.matched += match[0]; + token = this.performAction.call(this, this.yy, this, indexed_rule, this.conditionStack[this.conditionStack.length - 1]); + if (this.done && this._input) { + this.done = false; + } + if (token) { + return token; + } else if (this._backtrack) { + for (var k in backup) { + this[k] = backup[k]; + } + return false; + } + return false; + }, "test_match"), + // return next match in input + next: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function() { + if (this.done) { + return this.EOF; + } + if (!this._input) { + this.done = true; + } + var token, match, tempMatch, index; + if (!this._more) { + this.yytext = ""; + this.match = ""; + } + var rules = this._currentRules(); + for (var i = 0; i < rules.length; i++) { + tempMatch = this._input.match(this.rules[rules[i]]); + if (tempMatch && (!match || tempMatch[0].length > match[0].length)) { + match = tempMatch; + index = i; + if (this.options.backtrack_lexer) { + token = this.test_match(tempMatch, rules[i]); + if (token !== false) { + return token; + } else if (this._backtrack) { + match = false; + continue; + } else { + return false; + } + } else if (!this.options.flex) { + break; + } + } + } + if (match) { + token = this.test_match(match, rules[index]); + if (token !== false) { + return token; + } + return false; + } + if (this._input === "") { + return this.EOF; + } else { + return this.parseError("Lexical error on line " + (this.yylineno + 1) + ". Unrecognized text.\n" + this.showPosition(), { + text: "", + token: null, + line: this.yylineno + }); + } + }, "next"), + // return next match that has a token + lex: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function lex() { + var r = this.next(); + if (r) { + return r; + } else { + return this.lex(); + } + }, "lex"), + // activates a new lexer condition state (pushes the new lexer condition state onto the condition stack) + begin: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function begin(condition) { + this.conditionStack.push(condition); + }, "begin"), + // pop the previously active lexer condition state off the condition stack + popState: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function popState() { + var n = this.conditionStack.length - 1; + if (n > 0) { + return this.conditionStack.pop(); + } else { + return this.conditionStack[0]; + } + }, "popState"), + // produce the lexer rule set which is active for the currently active lexer condition state + _currentRules: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function _currentRules() { + if (this.conditionStack.length && this.conditionStack[this.conditionStack.length - 1]) { + return this.conditions[this.conditionStack[this.conditionStack.length - 1]].rules; + } else { + return this.conditions["INITIAL"].rules; + } + }, "_currentRules"), + // return the currently active lexer condition state; when an index argument is provided it produces the N-th previous condition state, if available + topState: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function topState(n) { + n = this.conditionStack.length - 1 - Math.abs(n || 0); + if (n >= 0) { + return this.conditionStack[n]; + } else { + return "INITIAL"; + } + }, "topState"), + // alias for begin(condition) + pushState: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function pushState(condition) { + this.begin(condition); + }, "pushState"), + // return the number of states currently on the stack + stateStackSize: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function stateStackSize() { + return this.conditionStack.length; + }, "stateStackSize"), + options: { "case-insensitive": true }, + performAction: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function anonymous(yy, yy_, $avoiding_name_collisions, YY_START) { + var YYSTATE = YY_START; + switch ($avoiding_name_collisions) { + case 0: + break; + case 1: + break; + case 2: + this.popState(); + return 34; + break; + case 3: + this.popState(); + return 34; + break; + case 4: + return 34; + break; + case 5: + break; + case 6: + return 10; + break; + case 7: + this.pushState("acc_title"); + return 19; + break; + case 8: + this.popState(); + return "acc_title_value"; + break; + case 9: + this.pushState("acc_descr"); + return 21; + break; + case 10: + this.popState(); + return "acc_descr_value"; + break; + case 11: + this.pushState("acc_descr_multiline"); + break; + case 12: + this.popState(); + break; + case 13: + return "acc_descr_multiline_value"; + break; + case 14: + return 5; + break; + case 15: + return 8; + break; + case 16: + this.pushState("axis_data"); + return "X_AXIS"; + break; + case 17: + this.pushState("axis_data"); + return "Y_AXIS"; + break; + case 18: + this.pushState("axis_band_data"); + return 24; + break; + case 19: + return 31; + break; + case 20: + this.pushState("data"); + return 16; + break; + case 21: + this.pushState("data"); + return 18; + break; + case 22: + this.pushState("data_inner"); + return 24; + break; + case 23: + return 27; + break; + case 24: + this.popState(); + return 26; + break; + case 25: + this.popState(); + break; + case 26: + this.pushState("string"); + break; + case 27: + this.popState(); + break; + case 28: + return "STR"; + break; + case 29: + return 24; + break; + case 30: + return 26; + break; + case 31: + return 43; + break; + case 32: + return "COLON"; + break; + case 33: + return 44; + break; + case 34: + return 28; + break; + case 35: + return 45; + break; + case 36: + return 46; + break; + case 37: + return 48; + break; + case 38: + return 50; + break; + case 39: + return 47; + break; + case 40: + return 41; + break; + case 41: + return 49; + break; + case 42: + return 42; + break; + case 43: + break; + case 44: + return 35; + break; + case 45: + return 36; + break; + } + }, "anonymous"), + rules: [/^(?:%%(?!\{)[^\n]*)/i, /^(?:[^\}]%%[^\n]*)/i, /^(?:(\r?\n))/i, /^(?:(\r?\n))/i, /^(?:[\n\r]+)/i, /^(?:%%[^\n]*)/i, /^(?:title\b)/i, /^(?:accTitle\s*:\s*)/i, /^(?:(?!\n||)*[^\n]*)/i, /^(?:accDescr\s*:\s*)/i, /^(?:(?!\n||)*[^\n]*)/i, /^(?:accDescr\s*\{\s*)/i, /^(?:\{)/i, /^(?:[^\}]*)/i, /^(?:xychart-beta\b)/i, /^(?:(?:vertical|horizontal))/i, /^(?:x-axis\b)/i, /^(?:y-axis\b)/i, /^(?:\[)/i, /^(?:-->)/i, /^(?:line\b)/i, /^(?:bar\b)/i, /^(?:\[)/i, /^(?:[+-]?(?:\d+(?:\.\d+)?|\.\d+))/i, /^(?:\])/i, /^(?:(?:`\) \{ this\.pushState\(md_string\); \}\n\(\?:\(\?!`"\)\.\)\+ \{ return MD_STR; \}\n\(\?:`))/i, /^(?:["])/i, /^(?:["])/i, /^(?:[^"]*)/i, /^(?:\[)/i, /^(?:\])/i, /^(?:[A-Za-z]+)/i, /^(?::)/i, /^(?:\+)/i, /^(?:,)/i, /^(?:=)/i, /^(?:\*)/i, /^(?:#)/i, /^(?:[\_])/i, /^(?:\.)/i, /^(?:&)/i, /^(?:-)/i, /^(?:[0-9]+)/i, /^(?:\s+)/i, /^(?:;)/i, /^(?:$)/i], + conditions: { "data_inner": { "rules": [0, 1, 4, 5, 6, 7, 9, 11, 14, 15, 16, 17, 20, 21, 23, 24, 25, 26, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45], "inclusive": true }, "data": { "rules": [0, 1, 3, 4, 5, 6, 7, 9, 11, 14, 15, 16, 17, 20, 21, 22, 25, 26, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45], "inclusive": true }, "axis_band_data": { "rules": [0, 1, 4, 5, 6, 7, 9, 11, 14, 15, 16, 17, 20, 21, 24, 25, 26, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45], "inclusive": true }, "axis_data": { "rules": [0, 1, 2, 4, 5, 6, 7, 9, 11, 14, 15, 16, 17, 18, 19, 20, 21, 23, 25, 26, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45], "inclusive": true }, "acc_descr_multiline": { "rules": [12, 13], "inclusive": false }, "acc_descr": { "rules": [10], "inclusive": false }, "acc_title": { "rules": [8], "inclusive": false }, "title": { "rules": [], "inclusive": false }, "md_string": { "rules": [], "inclusive": false }, "string": { "rules": [27, 28], "inclusive": false }, "INITIAL": { "rules": [0, 1, 4, 5, 6, 7, 9, 11, 14, 15, 16, 17, 20, 21, 25, 26, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45], "inclusive": true } } + }; + return lexer2; + }(); + parser2.lexer = lexer; + function Parser() { + this.yy = {}; + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(Parser, "Parser"); + Parser.prototype = parser2; + parser2.Parser = Parser; + return new Parser(); +}(); +parser.parser = parser; +var xychart_default = parser; + +// src/diagrams/xychart/chartBuilder/interfaces.ts +function isBarPlot(data) { + return data.type === "bar"; +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(isBarPlot, "isBarPlot"); +function isBandAxisData(data) { + return data.type === "band"; +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(isBandAxisData, "isBandAxisData"); +function isLinearAxisData(data) { + return data.type === "linear"; +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(isLinearAxisData, "isLinearAxisData"); + +// src/diagrams/xychart/chartBuilder/textDimensionCalculator.ts +var TextDimensionCalculatorWithFont = class { + constructor(parentGroup) { + this.parentGroup = parentGroup; + } + static { + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(this, "TextDimensionCalculatorWithFont"); + } + getMaxDimension(texts, fontSize) { + if (!this.parentGroup) { + return { + width: texts.reduce((acc, cur) => Math.max(cur.length, acc), 0) * fontSize, + height: fontSize + }; + } + const dimension = { + width: 0, + height: 0 + }; + const elem = this.parentGroup.append("g").attr("visibility", "hidden").attr("font-size", fontSize); + for (const t of texts) { + const bbox = (0,_chunk_OERGPBFJ_mjs__WEBPACK_IMPORTED_MODULE_0__/* .computeDimensionOfText */ .W6)(elem, 1, t); + const width = bbox ? bbox.width : t.length * fontSize; + const height = bbox ? bbox.height : fontSize; + dimension.width = Math.max(dimension.width, width); + dimension.height = Math.max(dimension.height, height); + } + elem.remove(); + return dimension; + } +}; + +// src/diagrams/xychart/chartBuilder/components/axis/bandAxis.ts + + +// src/diagrams/xychart/chartBuilder/components/axis/baseAxis.ts +var BAR_WIDTH_TO_TICK_WIDTH_RATIO = 0.7; +var MAX_OUTER_PADDING_PERCENT_FOR_WRT_LABEL = 0.2; +var BaseAxis = class { + constructor(axisConfig, title, textDimensionCalculator, axisThemeConfig) { + this.axisConfig = axisConfig; + this.title = title; + this.textDimensionCalculator = textDimensionCalculator; + this.axisThemeConfig = axisThemeConfig; + this.boundingRect = { x: 0, y: 0, width: 0, height: 0 }; + this.axisPosition = "left"; + this.showTitle = false; + this.showLabel = false; + this.showTick = false; + this.showAxisLine = false; + this.outerPadding = 0; + this.titleTextHeight = 0; + this.labelTextHeight = 0; + this.range = [0, 10]; + this.boundingRect = { x: 0, y: 0, width: 0, height: 0 }; + this.axisPosition = "left"; + } + static { + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(this, "BaseAxis"); + } + setRange(range) { + this.range = range; + if (this.axisPosition === "left" || this.axisPosition === "right") { + this.boundingRect.height = range[1] - range[0]; + } else { + this.boundingRect.width = range[1] - range[0]; + } + this.recalculateScale(); + } + getRange() { + return [this.range[0] + this.outerPadding, this.range[1] - this.outerPadding]; + } + setAxisPosition(axisPosition) { + this.axisPosition = axisPosition; + this.setRange(this.range); + } + getTickDistance() { + const range = this.getRange(); + return Math.abs(range[0] - range[1]) / this.getTickValues().length; + } + getAxisOuterPadding() { + return this.outerPadding; + } + getLabelDimension() { + return this.textDimensionCalculator.getMaxDimension( + this.getTickValues().map((tick) => tick.toString()), + this.axisConfig.labelFontSize + ); + } + recalculateOuterPaddingToDrawBar() { + if (BAR_WIDTH_TO_TICK_WIDTH_RATIO * this.getTickDistance() > this.outerPadding * 2) { + this.outerPadding = Math.floor(BAR_WIDTH_TO_TICK_WIDTH_RATIO * this.getTickDistance() / 2); + } + this.recalculateScale(); + } + calculateSpaceIfDrawnHorizontally(availableSpace) { + let availableHeight = availableSpace.height; + if (this.axisConfig.showAxisLine && availableHeight > this.axisConfig.axisLineWidth) { + availableHeight -= this.axisConfig.axisLineWidth; + this.showAxisLine = true; + } + if (this.axisConfig.showLabel) { + const spaceRequired = this.getLabelDimension(); + const maxPadding = MAX_OUTER_PADDING_PERCENT_FOR_WRT_LABEL * availableSpace.width; + this.outerPadding = Math.min(spaceRequired.width / 2, maxPadding); + const heightRequired = spaceRequired.height + this.axisConfig.labelPadding * 2; + this.labelTextHeight = spaceRequired.height; + if (heightRequired <= availableHeight) { + availableHeight -= heightRequired; + this.showLabel = true; + } + } + if (this.axisConfig.showTick && availableHeight >= this.axisConfig.tickLength) { + this.showTick = true; + availableHeight -= this.axisConfig.tickLength; + } + if (this.axisConfig.showTitle && this.title) { + const spaceRequired = this.textDimensionCalculator.getMaxDimension( + [this.title], + this.axisConfig.titleFontSize + ); + const heightRequired = spaceRequired.height + this.axisConfig.titlePadding * 2; + this.titleTextHeight = spaceRequired.height; + if (heightRequired <= availableHeight) { + availableHeight -= heightRequired; + this.showTitle = true; + } + } + this.boundingRect.width = availableSpace.width; + this.boundingRect.height = availableSpace.height - availableHeight; + } + calculateSpaceIfDrawnVertical(availableSpace) { + let availableWidth = availableSpace.width; + if (this.axisConfig.showAxisLine && availableWidth > this.axisConfig.axisLineWidth) { + availableWidth -= this.axisConfig.axisLineWidth; + this.showAxisLine = true; + } + if (this.axisConfig.showLabel) { + const spaceRequired = this.getLabelDimension(); + const maxPadding = MAX_OUTER_PADDING_PERCENT_FOR_WRT_LABEL * availableSpace.height; + this.outerPadding = Math.min(spaceRequired.height / 2, maxPadding); + const widthRequired = spaceRequired.width + this.axisConfig.labelPadding * 2; + if (widthRequired <= availableWidth) { + availableWidth -= widthRequired; + this.showLabel = true; + } + } + if (this.axisConfig.showTick && availableWidth >= this.axisConfig.tickLength) { + this.showTick = true; + availableWidth -= this.axisConfig.tickLength; + } + if (this.axisConfig.showTitle && this.title) { + const spaceRequired = this.textDimensionCalculator.getMaxDimension( + [this.title], + this.axisConfig.titleFontSize + ); + const widthRequired = spaceRequired.height + this.axisConfig.titlePadding * 2; + this.titleTextHeight = spaceRequired.height; + if (widthRequired <= availableWidth) { + availableWidth -= widthRequired; + this.showTitle = true; + } + } + this.boundingRect.width = availableSpace.width - availableWidth; + this.boundingRect.height = availableSpace.height; + } + calculateSpace(availableSpace) { + if (this.axisPosition === "left" || this.axisPosition === "right") { + this.calculateSpaceIfDrawnVertical(availableSpace); + } else { + this.calculateSpaceIfDrawnHorizontally(availableSpace); + } + this.recalculateScale(); + return { + width: this.boundingRect.width, + height: this.boundingRect.height + }; + } + setBoundingBoxXY(point) { + this.boundingRect.x = point.x; + this.boundingRect.y = point.y; + } + getDrawableElementsForLeftAxis() { + const drawableElement = []; + if (this.showAxisLine) { + const x = this.boundingRect.x + this.boundingRect.width - this.axisConfig.axisLineWidth / 2; + drawableElement.push({ + type: "path", + groupTexts: ["left-axis", "axisl-line"], + data: [ + { + path: `M ${x},${this.boundingRect.y} L ${x},${this.boundingRect.y + this.boundingRect.height} `, + strokeFill: this.axisThemeConfig.axisLineColor, + strokeWidth: this.axisConfig.axisLineWidth + } + ] + }); + } + if (this.showLabel) { + drawableElement.push({ + type: "text", + groupTexts: ["left-axis", "label"], + data: this.getTickValues().map((tick) => ({ + text: tick.toString(), + x: this.boundingRect.x + this.boundingRect.width - (this.showLabel ? this.axisConfig.labelPadding : 0) - (this.showTick ? this.axisConfig.tickLength : 0) - (this.showAxisLine ? this.axisConfig.axisLineWidth : 0), + y: this.getScaleValue(tick), + fill: this.axisThemeConfig.labelColor, + fontSize: this.axisConfig.labelFontSize, + rotation: 0, + verticalPos: "middle", + horizontalPos: "right" + })) + }); + } + if (this.showTick) { + const x = this.boundingRect.x + this.boundingRect.width - (this.showAxisLine ? this.axisConfig.axisLineWidth : 0); + drawableElement.push({ + type: "path", + groupTexts: ["left-axis", "ticks"], + data: this.getTickValues().map((tick) => ({ + path: `M ${x},${this.getScaleValue(tick)} L ${x - this.axisConfig.tickLength},${this.getScaleValue(tick)}`, + strokeFill: this.axisThemeConfig.tickColor, + strokeWidth: this.axisConfig.tickWidth + })) + }); + } + if (this.showTitle) { + drawableElement.push({ + type: "text", + groupTexts: ["left-axis", "title"], + data: [ + { + text: this.title, + x: this.boundingRect.x + this.axisConfig.titlePadding, + y: this.boundingRect.y + this.boundingRect.height / 2, + fill: this.axisThemeConfig.titleColor, + fontSize: this.axisConfig.titleFontSize, + rotation: 270, + verticalPos: "top", + horizontalPos: "center" + } + ] + }); + } + return drawableElement; + } + getDrawableElementsForBottomAxis() { + const drawableElement = []; + if (this.showAxisLine) { + const y = this.boundingRect.y + this.axisConfig.axisLineWidth / 2; + drawableElement.push({ + type: "path", + groupTexts: ["bottom-axis", "axis-line"], + data: [ + { + path: `M ${this.boundingRect.x},${y} L ${this.boundingRect.x + this.boundingRect.width},${y}`, + strokeFill: this.axisThemeConfig.axisLineColor, + strokeWidth: this.axisConfig.axisLineWidth + } + ] + }); + } + if (this.showLabel) { + drawableElement.push({ + type: "text", + groupTexts: ["bottom-axis", "label"], + data: this.getTickValues().map((tick) => ({ + text: tick.toString(), + x: this.getScaleValue(tick), + y: this.boundingRect.y + this.axisConfig.labelPadding + (this.showTick ? this.axisConfig.tickLength : 0) + (this.showAxisLine ? this.axisConfig.axisLineWidth : 0), + fill: this.axisThemeConfig.labelColor, + fontSize: this.axisConfig.labelFontSize, + rotation: 0, + verticalPos: "top", + horizontalPos: "center" + })) + }); + } + if (this.showTick) { + const y = this.boundingRect.y + (this.showAxisLine ? this.axisConfig.axisLineWidth : 0); + drawableElement.push({ + type: "path", + groupTexts: ["bottom-axis", "ticks"], + data: this.getTickValues().map((tick) => ({ + path: `M ${this.getScaleValue(tick)},${y} L ${this.getScaleValue(tick)},${y + this.axisConfig.tickLength}`, + strokeFill: this.axisThemeConfig.tickColor, + strokeWidth: this.axisConfig.tickWidth + })) + }); + } + if (this.showTitle) { + drawableElement.push({ + type: "text", + groupTexts: ["bottom-axis", "title"], + data: [ + { + text: this.title, + x: this.range[0] + (this.range[1] - this.range[0]) / 2, + y: this.boundingRect.y + this.boundingRect.height - this.axisConfig.titlePadding - this.titleTextHeight, + fill: this.axisThemeConfig.titleColor, + fontSize: this.axisConfig.titleFontSize, + rotation: 0, + verticalPos: "top", + horizontalPos: "center" + } + ] + }); + } + return drawableElement; + } + getDrawableElementsForTopAxis() { + const drawableElement = []; + if (this.showAxisLine) { + const y = this.boundingRect.y + this.boundingRect.height - this.axisConfig.axisLineWidth / 2; + drawableElement.push({ + type: "path", + groupTexts: ["top-axis", "axis-line"], + data: [ + { + path: `M ${this.boundingRect.x},${y} L ${this.boundingRect.x + this.boundingRect.width},${y}`, + strokeFill: this.axisThemeConfig.axisLineColor, + strokeWidth: this.axisConfig.axisLineWidth + } + ] + }); + } + if (this.showLabel) { + drawableElement.push({ + type: "text", + groupTexts: ["top-axis", "label"], + data: this.getTickValues().map((tick) => ({ + text: tick.toString(), + x: this.getScaleValue(tick), + y: this.boundingRect.y + (this.showTitle ? this.titleTextHeight + this.axisConfig.titlePadding * 2 : 0) + this.axisConfig.labelPadding, + fill: this.axisThemeConfig.labelColor, + fontSize: this.axisConfig.labelFontSize, + rotation: 0, + verticalPos: "top", + horizontalPos: "center" + })) + }); + } + if (this.showTick) { + const y = this.boundingRect.y; + drawableElement.push({ + type: "path", + groupTexts: ["top-axis", "ticks"], + data: this.getTickValues().map((tick) => ({ + path: `M ${this.getScaleValue(tick)},${y + this.boundingRect.height - (this.showAxisLine ? this.axisConfig.axisLineWidth : 0)} L ${this.getScaleValue(tick)},${y + this.boundingRect.height - this.axisConfig.tickLength - (this.showAxisLine ? this.axisConfig.axisLineWidth : 0)}`, + strokeFill: this.axisThemeConfig.tickColor, + strokeWidth: this.axisConfig.tickWidth + })) + }); + } + if (this.showTitle) { + drawableElement.push({ + type: "text", + groupTexts: ["top-axis", "title"], + data: [ + { + text: this.title, + x: this.boundingRect.x + this.boundingRect.width / 2, + y: this.boundingRect.y + this.axisConfig.titlePadding, + fill: this.axisThemeConfig.titleColor, + fontSize: this.axisConfig.titleFontSize, + rotation: 0, + verticalPos: "top", + horizontalPos: "center" + } + ] + }); + } + return drawableElement; + } + getDrawableElements() { + if (this.axisPosition === "left") { + return this.getDrawableElementsForLeftAxis(); + } + if (this.axisPosition === "right") { + throw Error("Drawing of right axis is not implemented"); + } + if (this.axisPosition === "bottom") { + return this.getDrawableElementsForBottomAxis(); + } + if (this.axisPosition === "top") { + return this.getDrawableElementsForTopAxis(); + } + return []; + } +}; + +// src/diagrams/xychart/chartBuilder/components/axis/bandAxis.ts +var BandAxis = class extends BaseAxis { + static { + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(this, "BandAxis"); + } + constructor(axisConfig, axisThemeConfig, categories, title, textDimensionCalculator) { + super(axisConfig, title, textDimensionCalculator, axisThemeConfig); + this.categories = categories; + this.scale = (0,d3__WEBPACK_IMPORTED_MODULE_4__/* .scaleBand */ .WH)().domain(this.categories).range(this.getRange()); + } + setRange(range) { + super.setRange(range); + } + recalculateScale() { + this.scale = (0,d3__WEBPACK_IMPORTED_MODULE_4__/* .scaleBand */ .WH)().domain(this.categories).range(this.getRange()).paddingInner(1).paddingOuter(0).align(0.5); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .log */ .Rm.trace("BandAxis axis final categories, range: ", this.categories, this.getRange()); + } + getTickValues() { + return this.categories; + } + getScaleValue(value) { + return this.scale(value) ?? this.getRange()[0]; + } +}; + +// src/diagrams/xychart/chartBuilder/components/axis/linearAxis.ts + +var LinearAxis = class extends BaseAxis { + static { + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(this, "LinearAxis"); + } + constructor(axisConfig, axisThemeConfig, domain, title, textDimensionCalculator) { + super(axisConfig, title, textDimensionCalculator, axisThemeConfig); + this.domain = domain; + this.scale = (0,d3__WEBPACK_IMPORTED_MODULE_4__/* .scaleLinear */ .m4Y)().domain(this.domain).range(this.getRange()); + } + getTickValues() { + return this.scale.ticks(); + } + recalculateScale() { + const domain = [...this.domain]; + if (this.axisPosition === "left") { + domain.reverse(); + } + this.scale = (0,d3__WEBPACK_IMPORTED_MODULE_4__/* .scaleLinear */ .m4Y)().domain(domain).range(this.getRange()); + } + getScaleValue(value) { + return this.scale(value); + } +}; + +// src/diagrams/xychart/chartBuilder/components/axis/index.ts +function getAxis(data, axisConfig, axisThemeConfig, tmpSVGGroup2) { + const textDimensionCalculator = new TextDimensionCalculatorWithFont(tmpSVGGroup2); + if (isBandAxisData(data)) { + return new BandAxis( + axisConfig, + axisThemeConfig, + data.categories, + data.title, + textDimensionCalculator + ); + } + return new LinearAxis( + axisConfig, + axisThemeConfig, + [data.min, data.max], + data.title, + textDimensionCalculator + ); +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(getAxis, "getAxis"); + +// src/diagrams/xychart/chartBuilder/components/chartTitle.ts +var ChartTitle = class { + constructor(textDimensionCalculator, chartConfig, chartData, chartThemeConfig) { + this.textDimensionCalculator = textDimensionCalculator; + this.chartConfig = chartConfig; + this.chartData = chartData; + this.chartThemeConfig = chartThemeConfig; + this.boundingRect = { + x: 0, + y: 0, + width: 0, + height: 0 + }; + this.showChartTitle = false; + } + static { + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(this, "ChartTitle"); + } + setBoundingBoxXY(point) { + this.boundingRect.x = point.x; + this.boundingRect.y = point.y; + } + calculateSpace(availableSpace) { + const titleDimension = this.textDimensionCalculator.getMaxDimension( + [this.chartData.title], + this.chartConfig.titleFontSize + ); + const widthRequired = Math.max(titleDimension.width, availableSpace.width); + const heightRequired = titleDimension.height + 2 * this.chartConfig.titlePadding; + if (titleDimension.width <= widthRequired && titleDimension.height <= heightRequired && this.chartConfig.showTitle && this.chartData.title) { + this.boundingRect.width = widthRequired; + this.boundingRect.height = heightRequired; + this.showChartTitle = true; + } + return { + width: this.boundingRect.width, + height: this.boundingRect.height + }; + } + getDrawableElements() { + const drawableElem = []; + if (this.showChartTitle) { + drawableElem.push({ + groupTexts: ["chart-title"], + type: "text", + data: [ + { + fontSize: this.chartConfig.titleFontSize, + text: this.chartData.title, + verticalPos: "middle", + horizontalPos: "center", + x: this.boundingRect.x + this.boundingRect.width / 2, + y: this.boundingRect.y + this.boundingRect.height / 2, + fill: this.chartThemeConfig.titleColor, + rotation: 0 + } + ] + }); + } + return drawableElem; + } +}; +function getChartTitleComponent(chartConfig, chartData, chartThemeConfig, tmpSVGGroup2) { + const textDimensionCalculator = new TextDimensionCalculatorWithFont(tmpSVGGroup2); + return new ChartTitle(textDimensionCalculator, chartConfig, chartData, chartThemeConfig); +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(getChartTitleComponent, "getChartTitleComponent"); + +// src/diagrams/xychart/chartBuilder/components/plot/linePlot.ts + +var LinePlot = class { + constructor(plotData, xAxis, yAxis, orientation, plotIndex2) { + this.plotData = plotData; + this.xAxis = xAxis; + this.yAxis = yAxis; + this.orientation = orientation; + this.plotIndex = plotIndex2; + } + static { + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(this, "LinePlot"); + } + getDrawableElement() { + const finalData = this.plotData.data.map((d) => [ + this.xAxis.getScaleValue(d[0]), + this.yAxis.getScaleValue(d[1]) + ]); + let path; + if (this.orientation === "horizontal") { + path = (0,d3__WEBPACK_IMPORTED_MODULE_4__/* .line */ .n8j)().y((d) => d[0]).x((d) => d[1])(finalData); + } else { + path = (0,d3__WEBPACK_IMPORTED_MODULE_4__/* .line */ .n8j)().x((d) => d[0]).y((d) => d[1])(finalData); + } + if (!path) { + return []; + } + return [ + { + groupTexts: ["plot", `line-plot-${this.plotIndex}`], + type: "path", + data: [ + { + path, + strokeFill: this.plotData.strokeFill, + strokeWidth: this.plotData.strokeWidth + } + ] + } + ]; + } +}; + +// src/diagrams/xychart/chartBuilder/components/plot/barPlot.ts +var BarPlot = class { + constructor(barData, boundingRect, xAxis, yAxis, orientation, plotIndex2) { + this.barData = barData; + this.boundingRect = boundingRect; + this.xAxis = xAxis; + this.yAxis = yAxis; + this.orientation = orientation; + this.plotIndex = plotIndex2; + } + static { + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(this, "BarPlot"); + } + getDrawableElement() { + const finalData = this.barData.data.map((d) => [ + this.xAxis.getScaleValue(d[0]), + this.yAxis.getScaleValue(d[1]) + ]); + const barPaddingPercent = 0.05; + const barWidth = Math.min(this.xAxis.getAxisOuterPadding() * 2, this.xAxis.getTickDistance()) * (1 - barPaddingPercent); + const barWidthHalf = barWidth / 2; + if (this.orientation === "horizontal") { + return [ + { + groupTexts: ["plot", `bar-plot-${this.plotIndex}`], + type: "rect", + data: finalData.map((data) => ({ + x: this.boundingRect.x, + y: data[0] - barWidthHalf, + height: barWidth, + width: data[1] - this.boundingRect.x, + fill: this.barData.fill, + strokeWidth: 0, + strokeFill: this.barData.fill + })) + } + ]; + } + return [ + { + groupTexts: ["plot", `bar-plot-${this.plotIndex}`], + type: "rect", + data: finalData.map((data) => ({ + x: data[0] - barWidthHalf, + y: data[1], + width: barWidth, + height: this.boundingRect.y + this.boundingRect.height - data[1], + fill: this.barData.fill, + strokeWidth: 0, + strokeFill: this.barData.fill + })) + } + ]; + } +}; + +// src/diagrams/xychart/chartBuilder/components/plot/index.ts +var BasePlot = class { + constructor(chartConfig, chartData, chartThemeConfig) { + this.chartConfig = chartConfig; + this.chartData = chartData; + this.chartThemeConfig = chartThemeConfig; + this.boundingRect = { + x: 0, + y: 0, + width: 0, + height: 0 + }; + } + static { + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(this, "BasePlot"); + } + setAxes(xAxis, yAxis) { + this.xAxis = xAxis; + this.yAxis = yAxis; + } + setBoundingBoxXY(point) { + this.boundingRect.x = point.x; + this.boundingRect.y = point.y; + } + calculateSpace(availableSpace) { + this.boundingRect.width = availableSpace.width; + this.boundingRect.height = availableSpace.height; + return { + width: this.boundingRect.width, + height: this.boundingRect.height + }; + } + getDrawableElements() { + if (!(this.xAxis && this.yAxis)) { + throw Error("Axes must be passed to render Plots"); + } + const drawableElem = []; + for (const [i, plot] of this.chartData.plots.entries()) { + switch (plot.type) { + case "line": + { + const linePlot = new LinePlot( + plot, + this.xAxis, + this.yAxis, + this.chartConfig.chartOrientation, + i + ); + drawableElem.push(...linePlot.getDrawableElement()); + } + break; + case "bar": + { + const barPlot = new BarPlot( + plot, + this.boundingRect, + this.xAxis, + this.yAxis, + this.chartConfig.chartOrientation, + i + ); + drawableElem.push(...barPlot.getDrawableElement()); + } + break; + } + } + return drawableElem; + } +}; +function getPlotComponent(chartConfig, chartData, chartThemeConfig) { + return new BasePlot(chartConfig, chartData, chartThemeConfig); +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(getPlotComponent, "getPlotComponent"); + +// src/diagrams/xychart/chartBuilder/orchestrator.ts +var Orchestrator = class { + constructor(chartConfig, chartData, chartThemeConfig, tmpSVGGroup2) { + this.chartConfig = chartConfig; + this.chartData = chartData; + this.componentStore = { + title: getChartTitleComponent(chartConfig, chartData, chartThemeConfig, tmpSVGGroup2), + plot: getPlotComponent(chartConfig, chartData, chartThemeConfig), + xAxis: getAxis( + chartData.xAxis, + chartConfig.xAxis, + { + titleColor: chartThemeConfig.xAxisTitleColor, + labelColor: chartThemeConfig.xAxisLabelColor, + tickColor: chartThemeConfig.xAxisTickColor, + axisLineColor: chartThemeConfig.xAxisLineColor + }, + tmpSVGGroup2 + ), + yAxis: getAxis( + chartData.yAxis, + chartConfig.yAxis, + { + titleColor: chartThemeConfig.yAxisTitleColor, + labelColor: chartThemeConfig.yAxisLabelColor, + tickColor: chartThemeConfig.yAxisTickColor, + axisLineColor: chartThemeConfig.yAxisLineColor + }, + tmpSVGGroup2 + ) + }; + } + static { + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(this, "Orchestrator"); + } + calculateVerticalSpace() { + let availableWidth = this.chartConfig.width; + let availableHeight = this.chartConfig.height; + let plotX = 0; + let plotY = 0; + let chartWidth = Math.floor(availableWidth * this.chartConfig.plotReservedSpacePercent / 100); + let chartHeight = Math.floor( + availableHeight * this.chartConfig.plotReservedSpacePercent / 100 + ); + let spaceUsed = this.componentStore.plot.calculateSpace({ + width: chartWidth, + height: chartHeight + }); + availableWidth -= spaceUsed.width; + availableHeight -= spaceUsed.height; + spaceUsed = this.componentStore.title.calculateSpace({ + width: this.chartConfig.width, + height: availableHeight + }); + plotY = spaceUsed.height; + availableHeight -= spaceUsed.height; + this.componentStore.xAxis.setAxisPosition("bottom"); + spaceUsed = this.componentStore.xAxis.calculateSpace({ + width: availableWidth, + height: availableHeight + }); + availableHeight -= spaceUsed.height; + this.componentStore.yAxis.setAxisPosition("left"); + spaceUsed = this.componentStore.yAxis.calculateSpace({ + width: availableWidth, + height: availableHeight + }); + plotX = spaceUsed.width; + availableWidth -= spaceUsed.width; + if (availableWidth > 0) { + chartWidth += availableWidth; + availableWidth = 0; + } + if (availableHeight > 0) { + chartHeight += availableHeight; + availableHeight = 0; + } + this.componentStore.plot.calculateSpace({ + width: chartWidth, + height: chartHeight + }); + this.componentStore.plot.setBoundingBoxXY({ x: plotX, y: plotY }); + this.componentStore.xAxis.setRange([plotX, plotX + chartWidth]); + this.componentStore.xAxis.setBoundingBoxXY({ x: plotX, y: plotY + chartHeight }); + this.componentStore.yAxis.setRange([plotY, plotY + chartHeight]); + this.componentStore.yAxis.setBoundingBoxXY({ x: 0, y: plotY }); + if (this.chartData.plots.some((p) => isBarPlot(p))) { + this.componentStore.xAxis.recalculateOuterPaddingToDrawBar(); + } + } + calculateHorizontalSpace() { + let availableWidth = this.chartConfig.width; + let availableHeight = this.chartConfig.height; + let titleYEnd = 0; + let plotX = 0; + let plotY = 0; + let chartWidth = Math.floor(availableWidth * this.chartConfig.plotReservedSpacePercent / 100); + let chartHeight = Math.floor( + availableHeight * this.chartConfig.plotReservedSpacePercent / 100 + ); + let spaceUsed = this.componentStore.plot.calculateSpace({ + width: chartWidth, + height: chartHeight + }); + availableWidth -= spaceUsed.width; + availableHeight -= spaceUsed.height; + spaceUsed = this.componentStore.title.calculateSpace({ + width: this.chartConfig.width, + height: availableHeight + }); + titleYEnd = spaceUsed.height; + availableHeight -= spaceUsed.height; + this.componentStore.xAxis.setAxisPosition("left"); + spaceUsed = this.componentStore.xAxis.calculateSpace({ + width: availableWidth, + height: availableHeight + }); + availableWidth -= spaceUsed.width; + plotX = spaceUsed.width; + this.componentStore.yAxis.setAxisPosition("top"); + spaceUsed = this.componentStore.yAxis.calculateSpace({ + width: availableWidth, + height: availableHeight + }); + availableHeight -= spaceUsed.height; + plotY = titleYEnd + spaceUsed.height; + if (availableWidth > 0) { + chartWidth += availableWidth; + availableWidth = 0; + } + if (availableHeight > 0) { + chartHeight += availableHeight; + availableHeight = 0; + } + this.componentStore.plot.calculateSpace({ + width: chartWidth, + height: chartHeight + }); + this.componentStore.plot.setBoundingBoxXY({ x: plotX, y: plotY }); + this.componentStore.yAxis.setRange([plotX, plotX + chartWidth]); + this.componentStore.yAxis.setBoundingBoxXY({ x: plotX, y: titleYEnd }); + this.componentStore.xAxis.setRange([plotY, plotY + chartHeight]); + this.componentStore.xAxis.setBoundingBoxXY({ x: 0, y: plotY }); + if (this.chartData.plots.some((p) => isBarPlot(p))) { + this.componentStore.xAxis.recalculateOuterPaddingToDrawBar(); + } + } + calculateSpace() { + if (this.chartConfig.chartOrientation === "horizontal") { + this.calculateHorizontalSpace(); + } else { + this.calculateVerticalSpace(); + } + } + getDrawableElement() { + this.calculateSpace(); + const drawableElem = []; + this.componentStore.plot.setAxes(this.componentStore.xAxis, this.componentStore.yAxis); + for (const component of Object.values(this.componentStore)) { + drawableElem.push(...component.getDrawableElements()); + } + return drawableElem; + } +}; + +// src/diagrams/xychart/chartBuilder/index.ts +var XYChartBuilder = class { + static { + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(this, "XYChartBuilder"); + } + static build(config, chartData, chartThemeConfig, tmpSVGGroup2) { + const orchestrator = new Orchestrator(config, chartData, chartThemeConfig, tmpSVGGroup2); + return orchestrator.getDrawableElement(); + } +}; + +// src/diagrams/xychart/xychartDb.ts +var plotIndex = 0; +var tmpSVGGroup; +var xyChartConfig = getChartDefaultConfig(); +var xyChartThemeConfig = getChartDefaultThemeConfig(); +var xyChartData = getChartDefaultData(); +var plotColorPalette = xyChartThemeConfig.plotColorPalette.split(",").map((color) => color.trim()); +var hasSetXAxis = false; +var hasSetYAxis = false; +function getChartDefaultThemeConfig() { + const defaultThemeVariables = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .getThemeVariables */ .P$)(); + const config = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .getConfig */ .zj)(); + return (0,_chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_1__/* .cleanAndMerge */ .$t)(defaultThemeVariables.xyChart, config.themeVariables.xyChart); +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(getChartDefaultThemeConfig, "getChartDefaultThemeConfig"); +function getChartDefaultConfig() { + const config = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .getConfig */ .zj)(); + return (0,_chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_1__/* .cleanAndMerge */ .$t)( + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .defaultConfig_default */ .UI.xyChart, + config.xyChart + ); +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(getChartDefaultConfig, "getChartDefaultConfig"); +function getChartDefaultData() { + return { + yAxis: { + type: "linear", + title: "", + min: Infinity, + max: -Infinity + }, + xAxis: { + type: "band", + title: "", + categories: [] + }, + title: "", + plots: [] + }; +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(getChartDefaultData, "getChartDefaultData"); +function textSanitizer(text) { + const config = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .getConfig */ .zj)(); + return (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .sanitizeText */ .jZ)(text.trim(), config); +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(textSanitizer, "textSanitizer"); +function setTmpSVGG(SVGG) { + tmpSVGGroup = SVGG; +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(setTmpSVGG, "setTmpSVGG"); +function setOrientation(orientation) { + if (orientation === "horizontal") { + xyChartConfig.chartOrientation = "horizontal"; + } else { + xyChartConfig.chartOrientation = "vertical"; + } +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(setOrientation, "setOrientation"); +function setXAxisTitle(title) { + xyChartData.xAxis.title = textSanitizer(title.text); +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(setXAxisTitle, "setXAxisTitle"); +function setXAxisRangeData(min, max) { + xyChartData.xAxis = { type: "linear", title: xyChartData.xAxis.title, min, max }; + hasSetXAxis = true; +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(setXAxisRangeData, "setXAxisRangeData"); +function setXAxisBand(categories) { + xyChartData.xAxis = { + type: "band", + title: xyChartData.xAxis.title, + categories: categories.map((c) => textSanitizer(c.text)) + }; + hasSetXAxis = true; +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(setXAxisBand, "setXAxisBand"); +function setYAxisTitle(title) { + xyChartData.yAxis.title = textSanitizer(title.text); +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(setYAxisTitle, "setYAxisTitle"); +function setYAxisRangeData(min, max) { + xyChartData.yAxis = { type: "linear", title: xyChartData.yAxis.title, min, max }; + hasSetYAxis = true; +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(setYAxisRangeData, "setYAxisRangeData"); +function setYAxisRangeFromPlotData(data) { + const minValue = Math.min(...data); + const maxValue = Math.max(...data); + const prevMinValue = isLinearAxisData(xyChartData.yAxis) ? xyChartData.yAxis.min : Infinity; + const prevMaxValue = isLinearAxisData(xyChartData.yAxis) ? xyChartData.yAxis.max : -Infinity; + xyChartData.yAxis = { + type: "linear", + title: xyChartData.yAxis.title, + min: Math.min(prevMinValue, minValue), + max: Math.max(prevMaxValue, maxValue) + }; +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(setYAxisRangeFromPlotData, "setYAxisRangeFromPlotData"); +function transformDataWithoutCategory(data) { + let retData = []; + if (data.length === 0) { + return retData; + } + if (!hasSetXAxis) { + const prevMinValue = isLinearAxisData(xyChartData.xAxis) ? xyChartData.xAxis.min : Infinity; + const prevMaxValue = isLinearAxisData(xyChartData.xAxis) ? xyChartData.xAxis.max : -Infinity; + setXAxisRangeData(Math.min(prevMinValue, 1), Math.max(prevMaxValue, data.length)); + } + if (!hasSetYAxis) { + setYAxisRangeFromPlotData(data); + } + if (isBandAxisData(xyChartData.xAxis)) { + retData = xyChartData.xAxis.categories.map((c, i) => [c, data[i]]); + } + if (isLinearAxisData(xyChartData.xAxis)) { + const min = xyChartData.xAxis.min; + const max = xyChartData.xAxis.max; + const step = (max - min) / (data.length - 1); + const categories = []; + for (let i = min; i <= max; i += step) { + categories.push(`${i}`); + } + retData = categories.map((c, i) => [c, data[i]]); + } + return retData; +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(transformDataWithoutCategory, "transformDataWithoutCategory"); +function getPlotColorFromPalette(plotIndex2) { + return plotColorPalette[plotIndex2 === 0 ? 0 : plotIndex2 % plotColorPalette.length]; +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(getPlotColorFromPalette, "getPlotColorFromPalette"); +function setLineData(title, data) { + const plotData = transformDataWithoutCategory(data); + xyChartData.plots.push({ + type: "line", + strokeFill: getPlotColorFromPalette(plotIndex), + strokeWidth: 2, + data: plotData + }); + plotIndex++; +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(setLineData, "setLineData"); +function setBarData(title, data) { + const plotData = transformDataWithoutCategory(data); + xyChartData.plots.push({ + type: "bar", + fill: getPlotColorFromPalette(plotIndex), + data: plotData + }); + plotIndex++; +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(setBarData, "setBarData"); +function getDrawableElem() { + if (xyChartData.plots.length === 0) { + throw Error("No Plot to render, please provide a plot with some data"); + } + xyChartData.title = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .getDiagramTitle */ .ab)(); + return XYChartBuilder.build(xyChartConfig, xyChartData, xyChartThemeConfig, tmpSVGGroup); +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(getDrawableElem, "getDrawableElem"); +function getChartThemeConfig() { + return xyChartThemeConfig; +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(getChartThemeConfig, "getChartThemeConfig"); +function getChartConfig() { + return xyChartConfig; +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(getChartConfig, "getChartConfig"); +var clear2 = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function() { + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .clear */ .IU)(); + plotIndex = 0; + xyChartConfig = getChartDefaultConfig(); + xyChartData = getChartDefaultData(); + xyChartThemeConfig = getChartDefaultThemeConfig(); + plotColorPalette = xyChartThemeConfig.plotColorPalette.split(",").map((color) => color.trim()); + hasSetXAxis = false; + hasSetYAxis = false; +}, "clear"); +var xychartDb_default = { + getDrawableElem, + clear: clear2, + setAccTitle: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .setAccTitle */ .SV, + getAccTitle: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .getAccTitle */ .iN, + setDiagramTitle: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .setDiagramTitle */ .ke, + getDiagramTitle: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .getDiagramTitle */ .ab, + getAccDescription: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .getAccDescription */ .m7, + setAccDescription: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .setAccDescription */ .EI, + setOrientation, + setXAxisTitle, + setXAxisRangeData, + setXAxisBand, + setYAxisTitle, + setYAxisRangeData, + setLineData, + setBarData, + setTmpSVGG, + getChartThemeConfig, + getChartConfig +}; + +// src/diagrams/xychart/xychartRenderer.ts +var draw = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)((txt, id, _version, diagObj) => { + const db = diagObj.db; + const themeConfig = db.getChartThemeConfig(); + const chartConfig = db.getChartConfig(); + function getDominantBaseLine(horizontalPos) { + return horizontalPos === "top" ? "text-before-edge" : "middle"; + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(getDominantBaseLine, "getDominantBaseLine"); + function getTextAnchor(verticalPos) { + return verticalPos === "left" ? "start" : verticalPos === "right" ? "end" : "middle"; + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(getTextAnchor, "getTextAnchor"); + function getTextTransformation(data) { + return `translate(${data.x}, ${data.y}) rotate(${data.rotation || 0})`; + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(getTextTransformation, "getTextTransformation"); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .log */ .Rm.debug("Rendering xychart chart\n" + txt); + const svg = (0,_chunk_DLZUUSFL_mjs__WEBPACK_IMPORTED_MODULE_2__/* .selectSvgElement */ .D)(id); + const group = svg.append("g").attr("class", "main"); + const background = group.append("rect").attr("width", chartConfig.width).attr("height", chartConfig.height).attr("class", "background"); + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .configureSvgSize */ .a$)(svg, chartConfig.height, chartConfig.width, true); + svg.attr("viewBox", `0 0 ${chartConfig.width} ${chartConfig.height}`); + background.attr("fill", themeConfig.backgroundColor); + db.setTmpSVGG(svg.append("g").attr("class", "mermaid-tmp-group")); + const shapes = db.getDrawableElem(); + const groups = {}; + function getGroup(gList) { + let elem = group; + let prefix = ""; + for (const [i] of gList.entries()) { + let parent = group; + if (i > 0 && groups[prefix]) { + parent = groups[prefix]; + } + prefix += gList[i]; + elem = groups[prefix]; + if (!elem) { + elem = groups[prefix] = parent.append("g").attr("class", gList[i]); + } + } + return elem; + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(getGroup, "getGroup"); + for (const shape of shapes) { + if (shape.data.length === 0) { + continue; + } + const shapeGroup = getGroup(shape.groupTexts); + switch (shape.type) { + case "rect": + shapeGroup.selectAll("rect").data(shape.data).enter().append("rect").attr("x", (data) => data.x).attr("y", (data) => data.y).attr("width", (data) => data.width).attr("height", (data) => data.height).attr("fill", (data) => data.fill).attr("stroke", (data) => data.strokeFill).attr("stroke-width", (data) => data.strokeWidth); + break; + case "text": + shapeGroup.selectAll("text").data(shape.data).enter().append("text").attr("x", 0).attr("y", 0).attr("fill", (data) => data.fill).attr("font-size", (data) => data.fontSize).attr("dominant-baseline", (data) => getDominantBaseLine(data.verticalPos)).attr("text-anchor", (data) => getTextAnchor(data.horizontalPos)).attr("transform", (data) => getTextTransformation(data)).text((data) => data.text); + break; + case "path": + shapeGroup.selectAll("path").data(shape.data).enter().append("path").attr("d", (data) => data.path).attr("fill", (data) => data.fill ? data.fill : "none").attr("stroke", (data) => data.strokeFill).attr("stroke-width", (data) => data.strokeWidth); + break; + } + } +}, "draw"); +var xychartRenderer_default = { + draw +}; + +// src/diagrams/xychart/xychartDiagram.ts +var diagram = { + parser: xychart_default, + db: xychartDb_default, + renderer: xychartRenderer_default +}; + + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/1756.90d46048.js b/assets/js/1756.90d46048.js new file mode 100644 index 00000000..ef15d138 --- /dev/null +++ b/assets/js/1756.90d46048.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkbeacon_docs=self.webpackChunkbeacon_docs||[]).push([[1756],{77459:(t,e,a)=>{function r(t,e){t.accDescr&&e.setAccDescription?.(t.accDescr),t.accTitle&&e.setAccTitle?.(t.accTitle),t.title&&e.setDiagramTitle?.(t.title)}a.d(e,{S:()=>r}),(0,a(64994).K2)(r,"populateCommonDb")},81756:(t,e,a)=>{a.d(e,{diagram:()=>x});var r=a(77459),n=a(57323),o=a(48852),l=a(64994),c=a(78731),i={packet:[]},s=structuredClone(i),d=l.UI.packet,k=(0,l.K2)((()=>{const t=(0,n.$t)({...d,...(0,l.zj)().packet});return t.showBits&&(t.paddingY+=10),t}),"getConfig"),p=(0,l.K2)((()=>s.packet),"getPacket"),b={pushWord:(0,l.K2)((t=>{t.length>0&&s.packet.push(t)}),"pushWord"),getPacket:p,getConfig:k,clear:(0,l.K2)((()=>{(0,l.IU)(),s=structuredClone(i)}),"clear"),setAccTitle:l.SV,getAccTitle:l.iN,setDiagramTitle:l.ke,getDiagramTitle:l.ab,getAccDescription:l.m7,setAccDescription:l.EI},g=(0,l.K2)((t=>{(0,r.S)(t,b);let e=-1,a=[],n=1;const{bitsPerRow:o}=b.getConfig();for(let{start:r,end:c,label:i}of t.blocks){if(c&&c{if(void 0===t.end&&(t.end=t.start),t.start>t.end)throw new Error(`Block start ${t.start} is greater than block end ${t.end}.`);return t.end+1<=e*a?[t,void 0]:[{start:t.start,end:e*a-1,label:t.label},{start:e*a,end:t.end,label:t.label}]}),"getNextFittingBlock"),f={parse:(0,l.K2)((async t=>{const e=await(0,c.qg)("packet",t);l.Rm.debug(e),g(e)}),"parse")},u=(0,l.K2)(((t,e,a,r)=>{const n=r.db,c=n.getConfig(),{rowHeight:i,paddingY:s,bitWidth:d,bitsPerRow:k}=c,p=n.getPacket(),b=n.getDiagramTitle(),g=i+s,h=g*(p.length+1)-(b?0:i),f=d*k+2,u=(0,o.D)(e);u.attr("viewbox",`0 0 ${f} ${h}`),(0,l.a$)(u,h,f,c.useMaxWidth);for(const[o,l]of p.entries())$(u,l,o,c);u.append("text").text(b).attr("x",f/2).attr("y",h-g/2).attr("dominant-baseline","middle").attr("text-anchor","middle").attr("class","packetTitle")}),"draw"),$=(0,l.K2)(((t,e,a,{rowHeight:r,paddingX:n,paddingY:o,bitWidth:l,bitsPerRow:c,showBits:i})=>{const s=t.append("g"),d=a*(r+o)+o;for(const k of e){const t=k.start%c*l+1,e=(k.end-k.start+1)*l-n;if(s.append("rect").attr("x",t).attr("y",d).attr("width",e).attr("height",r).attr("class","packetBlock"),s.append("text").attr("x",t+e/2).attr("y",d+r/2).attr("class","packetLabel").attr("dominant-baseline","middle").attr("text-anchor","middle").text(k.label),!i)continue;const a=k.end===k.start,o=d-2;s.append("text").attr("x",t+(a?e/2:0)).attr("y",o).attr("class","packetByte start").attr("dominant-baseline","auto").attr("text-anchor",a?"middle":"start").text(k.start),a||s.append("text").attr("x",t+e).attr("y",o).attr("class","packetByte end").attr("dominant-baseline","auto").attr("text-anchor","end").text(k.end)}}),"drawWord"),w={byteFontSize:"10px",startByteColor:"black",endByteColor:"black",labelColor:"black",labelFontSize:"12px",titleColor:"black",titleFontSize:"14px",blockStrokeColor:"black",blockStrokeWidth:"1",blockFillColor:"#efefef"},x={parser:f,db:b,renderer:{draw:u},styles:(0,l.K2)((({packet:t}={})=>{const e=(0,n.$t)(w,t);return`\n\t.packetByte {\n\t\tfont-size: ${e.byteFontSize};\n\t}\n\t.packetByte.start {\n\t\tfill: ${e.startByteColor};\n\t}\n\t.packetByte.end {\n\t\tfill: ${e.endByteColor};\n\t}\n\t.packetLabel {\n\t\tfill: ${e.labelColor};\n\t\tfont-size: ${e.labelFontSize};\n\t}\n\t.packetTitle {\n\t\tfill: ${e.titleColor};\n\t\tfont-size: ${e.titleFontSize};\n\t}\n\t.packetBlock {\n\t\tstroke: ${e.blockStrokeColor};\n\t\tstroke-width: ${e.blockStrokeWidth};\n\t\tfill: ${e.blockFillColor};\n\t}\n\t`}),"styles")}}}]); \ No newline at end of file diff --git a/assets/js/17896441.582e6ed0.js b/assets/js/17896441.582e6ed0.js new file mode 100644 index 00000000..fc43a460 --- /dev/null +++ b/assets/js/17896441.582e6ed0.js @@ -0,0 +1 @@ +(self.webpackChunkbeacon_docs=self.webpackChunkbeacon_docs||[]).push([[8401],{60700:(e,t,a)=>{"use strict";a.d(t,{A:()=>w});a(96540);const n="browserWindow_my1Q",o="browserWindowHeader_jXSR",s="buttons_uHc7",c="browserWindowAddressBar_Pd8y",i="dot_giz1",r="browserWindowMenuIcon_Vhuh",l="bar_rrRL",d="browserWindowBody_Idgs";var p=a(74848);const w=function(e){let{children:t,minHeight:a,url:w}=e;return(0,p.jsxs)("div",{className:n,style:{minHeight:a},children:[(0,p.jsxs)("div",{className:o,children:[(0,p.jsxs)("div",{className:s,children:[(0,p.jsx)("span",{className:i,style:{background:"#f25f58"}}),(0,p.jsx)("span",{className:i,style:{background:"#fbbe3c"}}),(0,p.jsx)("span",{className:i,style:{background:"#58cb42"}})]}),(0,p.jsx)("div",{className:c,children:w}),(0,p.jsx)("div",{className:r,children:(0,p.jsxs)("div",{children:[(0,p.jsx)("span",{className:l}),(0,p.jsx)("span",{className:l}),(0,p.jsx)("span",{className:l})]})})]}),(0,p.jsx)("div",{className:d,children:t})]})}},34881:(e,t,a)=>{"use strict";a.d(t,{A:()=>we});var n=a(96540);class o{constructor(e){this.update=e}stringfy(e){if(e instanceof Date)return e.toString();switch(typeof e){case"string":return e;case"bigint":case"boolean":case"undefined":case"number":return String(e);default:try{return JSON.stringify(e)}catch(t){return String(e)}}}log(){for(var e=arguments.length,t=new Array(e),a=0;athis.stringfy(e))).join(" "),this.update(n)}}var s=a(98455);const c=async e=>{const t=new o(e),a=new s.DAppClient({name:"Beacon Docs"});try{const e=await a.requestBroadcast({signedTransaction:"1ef017b560494ae7b102be63f4d64e64d70114ff4652df23f34ae4460645b3266b00641b67c32672f0b11263b89b05b51e42faa64a3f940ad8d79101904e0000c64ac48e550c2c289af4c5ce5fe52ca7ba7a91d1a411745313e154eff8d118f16c00641b67c32672f0b11263b89b05b51e42faa64a3fdc0bd9d79101bc5000000000641b67c32672f0b11263b89b05b51e42faa64a3f0085dcfbba4a00c5b4f89914c1819ccd8466f6328b74073d50406394e59fe32d89e62112fec2d5a9bc1e6787206fe50e26f90999ae3061ca76247b57e08b6e490a"});t.log("transaction hash",e.transactionHash)}catch(n){t.log("Result: ",n.message)}};var i=a(10695),r=a(79434);const l=async e=>{const t=new o(e),a=new i.TezosToolkit("https://mainnet.api.tez.ie"),n=new r.BeaconWallet({name:"Beacon Docs Taquito"});a.setWalletProvider(n);try{const e=await n.client.requestBroadcast({signedTransaction:"1ef017b560494ae7b102be63f4d64e64d70114ff4652df23f34ae4460645b3266b00641b67c32672f0b11263b89b05b51e42faa64a3f940ad8d79101904e0000c64ac48e550c2c289af4c5ce5fe52ca7ba7a91d1a411745313e154eff8d118f16c00641b67c32672f0b11263b89b05b51e42faa64a3fdc0bd9d79101bc5000000000641b67c32672f0b11263b89b05b51e42faa64a3f0085dcfbba4a00c5b4f89914c1819ccd8466f6328b74073d50406394e59fe32d89e62112fec2d5a9bc1e6787206fe50e26f90999ae3061ca76247b57e08b6e490a"});t.log("transaction hash",e.transactionHash)}catch(s){t.log("Error: ",s)}},d=async e=>{const t=new o(e);new s.DAppClient({name:"Beacon Docs"}).destroy().then((()=>{t.log("Instance destroyed.")})).catch((e=>t.log("Error: ",e.message)))},p=async e=>{const t=new o(e),a=new i.TezosToolkit("https://mainnet.api.tez.ie"),n=new r.BeaconWallet({name:"Beacon Docs Taquito"});a.setWalletProvider(n);try{await n.disconnect()}catch(s){t.log("Error: ",s.message)}},w=async e=>{const t=new o(e),a=new s.DAppClient({name:"Beacon Docs",matrixNodes:{[s.Regions.EUROPE_WEST]:["beacon-node-0.papers.tech:8448"]}});try{t.log("Requesting permissions...");const e=await a.requestPermissions();t.log("Got permissions:",e.address)}catch(n){t.log("Got error:",n.message)}},g=async e=>{const t=new o(e),a=new i.TezosToolkit("https://mainnet.api.tez.ie"),n=new r.BeaconWallet({name:"Beacon Docs Taquito",matrixNodes:{[s.Regions.EUROPE_WEST]:["beacon-node-0.papers.tech:8448"]}});a.setWalletProvider(n);try{const e=await n.client.requestPermissions();t.log("Got permissions:",e.address)}catch(c){t.log("Got error:",c.message)}},u=async e=>{const t=new o(e),a=new s.DAppClient({name:"Beacon Docs",disableDefaultEvents:!0,eventHandlers:{[s.BeaconEvent.PAIR_INIT]:{handler:s.defaultEventCallbacks.PAIR_INIT},[s.BeaconEvent.PAIR_SUCCESS]:{handler:s.defaultEventCallbacks.PAIR_SUCCESS}}});try{t.log("Requesting permissions...");const e=await a.requestPermissions();t.log("Got permissions:",e.address)}catch(n){t.log("Got error:",n.message)}},m=async e=>{const t=new o(e),a=new i.TezosToolkit("https://mainnet.api.tez.ie"),n=new r.BeaconWallet({name:"Beacon Docs Taquito",disableDefaultEvents:!0,eventHandlers:{[s.BeaconEvent.PAIR_INIT]:{handler:s.defaultEventCallbacks.PAIR_INIT},[s.BeaconEvent.PAIR_SUCCESS]:{handler:s.defaultEventCallbacks.PAIR_SUCCESS}}});a.setWalletProvider(n);try{await n.requestPermissions();const e=await n.getPKH();t.log("Got permissions:",e)}catch(c){t.log("Got error:",c.message)}},y=async e=>{const t=new o(e),a=new s.DAppClient({name:"Beacon Docs"});a.disconnect().then((async()=>{const e=await a.getActiveAccount();t.log("Active Account",e)})).catch((e=>t.log("Error: ",e.message)))},b=async e=>{const t=new o(e),a=new i.TezosToolkit("https://mainnet.api.tez.ie"),n=new r.BeaconWallet({name:"Beacon Docs Taquito"});a.setWalletProvider(n);try{await n.client.disconnect()}catch(s){t.log("Error: ",s.message)}},_=async e=>{const t=new o(e),a=new s.DAppClient({name:"Beacon Docs"});a.clearActiveAccount().then((async()=>{const e=await a.getActiveAccount();t.log("Active Account",e)}))},T=async e=>{const t=new o(e),a=new i.TezosToolkit("https://mainnet.api.tez.ie"),n=new r.BeaconWallet({name:"Beacon Docs Taquito"});a.setWalletProvider(n),await n.clearActiveAccount();try{const e=await n.getPKH();t.log("Active Account",e)}catch{t.log("No wallet connected")}},h=async e=>{const t=new o(e),a={type:s.NetworkType.MAINNET},n=new s.DAppClient({name:"Beacon Docs",preferredNetwork:a.type});let c;const i=localStorage.getItem("theme");await n.setColorMode("dark"===i?s.ColorMode.DARK:s.ColorMode.LIGHT);const r=await n.getActiveAccount();if(r)t.log("Already connected:",r.address),c=r.address;else try{const e=await n.requestPermissions({network:a});t.log("New connection: ",e.address),c=e.address}catch(l){return void t.log("Error: ",l.message)}try{const e=await n.requestOperation({operationDetails:[{kind:s.TezosOperationType.TRANSACTION,destination:c,amount:"1"}]});t.log("Operation Hash:",e.transactionHash);const o=await n.blockExplorer.getTransactionLink(e.transactionHash,a);t.log("Block Explorer:",o)}catch(l){return void t.log("Error: ",l.message)}await n.clearActiveAccount()},k=async e=>{const t=new o(e),a={type:s.NetworkType.MAINNET},n=new i.TezosToolkit("https://mainnet.api.tez.ie"),c=new r.BeaconWallet({name:"Beacon Docs",preferredNetwork:a.type});let l;n.setWalletProvider(c);const d=localStorage.getItem("theme");await c.client.setColorMode("dark"===d?s.ColorMode.DARK:s.ColorMode.LIGHT);const p=await c.client.getActiveAccount();if(p)t.log("Already connected:",p.address),l=p.address;else try{c.requestPermissions({network:a}),l=await c.getPKH(),t.log("New connection: ",l)}catch(w){return void t.log("Error: ",w.message)}try{const e=await c.sendOperations([{kind:s.TezosOperationType.TRANSACTION,destination:l,amount:"1"}]);t.log("Operation Hash:",e);const n=await c.client.blockExplorer.getTransactionLink(e,a);t.log("Block Explorer:",n)}catch(w){return void t.log("Result: ",w.message)}await c.clearActiveAccount()},E=async e=>{const t=new o(e),a=new s.DAppClient({name:"Beacon Docs"});let n;const c=await a.getActiveAccount();if(c)t.log("Already connected:",c.address),n=c.address;else{const e=await a.requestPermissions();t.log("New connection:",e.address),n=e.address}const i=await a.requestOperation({operationDetails:[{kind:s.TezosOperationType.TRANSACTION,destination:n,amount:"1"}]});t.log("Operation Hash: ",i.transactionHash)},A=async e=>{const t=new o(e),a=new i.TezosToolkit("https://mainnet.api.tez.ie"),n=new r.BeaconWallet({name:"Beacon Docs Taquito"});let c;a.setWalletProvider(n);const l=await n.client.getActiveAccount();l?(t.log("Already connected:",l.address),c=l.address):(await n.requestPermissions(),c=await n.getPKH(),t.log("New connection:",c));try{const e=await n.sendOperations([{kind:s.TezosOperationType.TRANSACTION,destination:c,amount:"1"}]);t.log("Operation Hash: ",e)}catch(d){t.log("Error: ",d.message)}},f=async e=>{const t=new o(e),a=new i.TezosToolkit("https://mainnet.api.tez.ie"),n=new r.BeaconWallet({name:"Beacon Docs"});a.setWalletProvider(n);await n.getPKH()||await n.requestPermissions();const s=await a.wallet.at("KT1PWx2mnDueood7fEmfbBDKx1D9BAnnXitn");try{const e=await s.methods.transfer("tz1d75oB6T4zUMexzkr5WscGktZ1Nss1JrT7","tz1Mj7RzPmMAqDUNFBn5t5VbXmWW4cSUAdtT",1).send();t.log("Operation hash: ",e.opHash)}catch(c){t.log("Error: ",c.message)}},v=async e=>{const t=new o(e),a=new i.TezosToolkit("https://mainnet.api.tez.ie"),n=new r.BeaconWallet({name:"Beacon Docs"});a.setWalletProvider(n);const s=await n.getPKH();s||await n.requestPermissions();const c=await a.wallet.at("KT1CpeSQKdkhWi4pinYcseCFKmDhs5M74BkU"),l=s;try{const e=await c.methods.transfer([{from_:s,txs:[{to_:l,token_id:0,amount:1}]}]).send();t.log("Operation hash: ",e.opHash)}catch(d){t.log("Error: ",d.message)}},C=async e=>{const t=new o(e),a=new s.DAppClient({name:"Beacon Docs"});a.subscribeToEvent(s.BeaconEvent.ACTIVE_ACCOUNT_SET,(async e=>{t.log(`${s.BeaconEvent.ACTIVE_ACCOUNT_SET} triggered: `,e)}));try{t.log("Requesting permissions...");const e=await a.requestPermissions();t.log("Got permissions:",e.address)}catch(n){t.log("Got error:",n.message)}},P=async e=>{const t=new o(e),a=new i.TezosToolkit("https://mainnet.api.tez.ie"),n=new r.BeaconWallet({name:"Beacon Docs Taquito"});a.setWalletProvider(n),n.client.subscribeToEvent(s.BeaconEvent.ACTIVE_ACCOUNT_SET,(e=>{t.log(`${s.BeaconEvent.ACTIVE_ACCOUNT_SET} triggered: `,e)}));try{t.log("Requesting permissions...");const e=await n.client.requestPermissions();t.log("Got permissions:",e.address)}catch(c){t.log("Got error:",c.message)}},N=async e=>{const t=new o(e),a=new s.DAppClient({name:"Beacon Docs"}),n=await a.getActiveAccount();if(n)return t.log("Already connected:",n.address),n;t.log("Not connected!")},q=async e=>{const t=new o(e),a=new i.TezosToolkit("https://mainnet.api.tez.ie"),n=new r.BeaconWallet({name:"Beacon Docs Taquito"});a.setWalletProvider(n);const s=await n.client.getActiveAccount();if(s)return t.log("Already connected:",s.address),s;t.log("Not connected!")},B=async e=>{const t=new o(e),a=new s.DAppClient({name:"Beacon Docs"});a.subscribeToEvent(s.BeaconEvent.ACTIVE_ACCOUNT_SET,(async e=>{t.log(`${s.BeaconEvent.ACTIVE_ACCOUNT_SET} triggered: `,e);try{const n=await a.requestOperation({operationDetails:[{kind:s.TezosOperationType.TRANSACTION,destination:e.address,amount:"1"}]});t.log("Response: ",n)}catch(n){t.log("Error: ",n.message)}}));await a.getActiveAccount()||await a.requestPermissions()},D=async e=>{const t=new o(e),a=new i.TezosToolkit("https://mainnet.api.tez.ie"),n=new r.BeaconWallet({name:"Beacon Docs Taquito"});a.setWalletProvider(n),n.client.subscribeToEvent(s.BeaconEvent.ACTIVE_ACCOUNT_SET,(async e=>{t.log(`${s.BeaconEvent.ACTIVE_ACCOUNT_SET} triggered: `,e);try{const a=await n.sendOperations([{kind:s.TezosOperationType.TRANSACTION,destination:e.address,amount:"1"}]);t.log("Response: ",a)}catch(a){t.log("Error: ",a.message)}}));await n.client.getActiveAccount()||await n.client.requestPermissions()},I=async e=>{const t=new o(e),a=new s.DAppClient({name:"Beacon Docs"});let n;const c=await a.getActiveAccount();if(c)n=c.address;else{const e=await a.requestPermissions();t.log("New connection:",e.address),n=e.address}try{const e=await a.requestOperation({operationDetails:[{kind:s.TezosOperationType.TRANSACTION,destination:n,amount:"1"}]});t.log("Response: ",e)}catch(i){t.log("Error: ",i.message)}},O=async e=>{const t=new o(e),a=new i.TezosToolkit("https://mainnet.api.tez.ie"),n=new r.BeaconWallet({name:"Beacon Docs Taquito"});let c;a.setWalletProvider(n);const l=await n.client.getActiveAccount();if(l)c=l.address;else{const e=await n.client.requestPermissions();t.log("New connection:",e.address),c=e.address}try{const e=await n.sendOperations([{kind:s.TezosOperationType.TRANSACTION,destination:c,amount:"1"}]);t.log("Response: ",e)}catch(d){t.log("Error: ",d.message)}};var x=a(96763);const S=async e=>{const t=new o(e),a=new s.DAppClient({name:"Beacon Docs"});a.subscribeToEvent(s.BeaconEvent.ACTIVE_ACCOUNT_SET,(async e=>{x.log(`${s.BeaconEvent.ACTIVE_ACCOUNT_SET} triggered: `,e)}));try{t.log("Requesting permissions...");const e=await a.requestPermissions();t.log("Got permissions:",e.address)}catch(n){t.log("Got error:",n.message)}},W=async e=>{const t=new o(e),a=new i.TezosToolkit("https://mainnet.api.tez.ie"),n=new r.BeaconWallet({name:"Beacon Docs Taquito"});a.setWalletProvider(n),n.client.subscribeToEvent(s.BeaconEvent.ACTIVE_ACCOUNT_SET,(e=>{t.log(`${s.BeaconEvent.ACTIVE_ACCOUNT_SET} triggered: `,e)}));try{t.log("Requesting permissions...");const e=await n.client.requestPermissions();t.log("Got permissions:",e.address)}catch(c){t.log("Got error:",c.message)}},R=async e=>{const t=new o(e),a=new s.DAppClient({name:"Beacon Docs"}),n=await a.blockExplorer.getAddressLink("tz1MJx9vhaNRSimcuXPK2rW4fLccQnDAnVKJ",{type:s.NetworkType.MAINNET});t.log("Address Link",n);const c=await a.blockExplorer.getTransactionLink("onzCRJhQ9zPC38TLGhBTghCW7WAJpfUJ2NpwbbQKbW6LeEL8RfK",{type:s.NetworkType.MAINNET});t.log("Transaction Link",c),t.log("\n\nConnection Info:\n"),t.log("Status:",a.connectionStatus);const i=await a.getAccounts();t.log("Accounts:",i);const r=await a.getPeers();t.log("Peers:",r),t.log("\n\nDebug:\n"),t.log("Local Beacon ID:",await a.beaconId);const l=await a.getColorMode();t.log("Color Mode:",l);const d=await a.getOwnAppMetadata();t.log("Own Metadata:",d)},z=async e=>{const t=new o(e),a=new i.TezosToolkit("https://mainnet.api.tez.ie"),n=new r.BeaconWallet({name:"Beacon Docs Taquito"});a.setWalletProvider(n);const c=await n.client.blockExplorer.getAddressLink("tz1MJx9vhaNRSimcuXPK2rW4fLccQnDAnVKJ",{type:s.NetworkType.MAINNET});t.log("Address Link",c);const l=await n.client.blockExplorer.getTransactionLink("onzCRJhQ9zPC38TLGhBTghCW7WAJpfUJ2NpwbbQKbW6LeEL8RfK",{type:s.NetworkType.MAINNET});t.log("Transaction Link",l),t.log("\n\nConnection Info:\n"),t.log("Status:",n.client.connectionStatus);const d=await n.client.getAccounts();t.log("Accounts:",d);const p=await n.client.getPeers();t.log("Peers:",p),t.log("\n\nDebug:\n"),t.log("Local Beacon ID:",await n.client.beaconId);const w=await n.client.getColorMode();t.log("Color Mode:",w);const g=await n.client.getOwnAppMetadata();t.log("Own Metadata:",g)},j=async e=>{const t=new o(e);t.log("SDK Version",s.SDK_VERSION),t.log("Beacon Version",s.BEACON_VERSION)},M=async e=>{const t=new o(e);t.log("SDK Version",s.SDK_VERSION),t.log("Beacon Version",s.BEACON_VERSION)},U=async e=>{const t=new o(e),a=new s.DAppClient({name:"Beacon Docs",preferredNetwork:s.NetworkType.CUSTOM});try{const e=await a.requestPermissions({network:{type:s.NetworkType.CUSTOM,name:"Local Node",rpcUrl:"http://localhost:8732/"}});t.log("Permissions: ",e)}catch(n){t.log("Error: ",n.message)}},H=async e=>{const t=new o(e),a=new i.TezosToolkit("https://mainnet.api.tez.ie"),n=new r.BeaconWallet({name:"Beacon Docs Taquito",preferredNetwork:s.NetworkType.CUSTOM});a.setWalletProvider(n);try{const e=await n.client.requestPermissions({network:{type:s.NetworkType.CUSTOM,name:"Local Node",rpcUrl:"http://localhost:8732/"}});t.log("Permissions: ",e)}catch(c){t.log("Error: ",c.message)}},L=async e=>{const t=new o(e),a=new s.DAppClient({name:"Beacon Docs",preferredNetwork:s.NetworkType.EDONET});try{const e=await a.requestPermissions({network:{type:s.NetworkType.EDONET,rpcUrl:"https://testnet-tezos.giganode.io/"}});t.log("Permissions: ",e)}catch(n){t.log("Result: ",n.message)}},K=async e=>{const t=new o(e),a=new i.TezosToolkit("https://mainnet.api.tez.ie"),n=new r.BeaconWallet({name:"Beacon Docs",preferredNetwork:s.NetworkType.EDONET});a.setWalletProvider(n);try{const e=await n.client.requestPermissions({network:{type:s.NetworkType.EDONET,rpcUrl:"https://testnet-tezos.giganode.io/"}});t.log("Permissions: ",e)}catch(c){t.log("Error: ",c.message)}},G=async e=>{const t=new o(e),a=new s.DAppClient({name:"Beacon Docs",preferredNetwork:s.NetworkType.EDONET});try{const e=await a.requestPermissions({network:{type:s.NetworkType.EDONET}});t.log("Permissions: ",e)}catch(n){t.log("Error: ",n.message)}},V=async e=>{const t=new o(e),a=new i.TezosToolkit("https://mainnet.api.tez.ie"),n=new r.BeaconWallet({name:"Beacon Docs",preferredNetwork:s.NetworkType.EDONET});a.setWalletProvider(n);try{const e=await n.client.requestPermissions({network:{type:s.NetworkType.EDONET}});t.log("Permissions: ",e)}catch(c){t.log("Error: ",c.message)}},$=async e=>{const t=new o(e),a=new s.DAppClient({name:"Beacon Docs"});try{const e=await a.requestPermissions({network:{type:s.NetworkType.MAINNET,rpcUrl:"https://mainnet.api.tez.ie"}});t.log("Permissions: ",e)}catch(n){t.log("Error: ",n.message)}},J=async e=>{const t=new o(e),a=new i.TezosToolkit("https://mainnet.api.tez.ie"),n=new r.BeaconWallet({name:"Beacon Docs Taquito"});a.setWalletProvider(n);try{const e=await n.client.requestPermissions({network:{type:s.NetworkType.MAINNET,rpcUrl:"https://mainnet.api.tez.ie"}});t.log("Permissions: ",e)}catch(c){t.log("Error: ",c.message)}},F=async e=>{const t=new o(e),a=new s.DAppClient({name:"Beacon Docs",eventHandlers:{[s.BeaconEvent.PAIR_INIT]:{handler:async e=>{const a=e.abortedHandler;e.abortedHandler=()=>{a&&a(),t.log("My logic")},await s.defaultEventCallbacks.PAIR_INIT(e),t.log("syncInfo",e)}}}});try{t.log("Requesting permissions...");const e=await a.requestPermissions();t.log("Got permissions:",e.address)}catch(n){t.log("Got error:",n.message)}},Q=async e=>{const t=new o(e),a=new i.TezosToolkit("https://mainnet.api.tez.ie"),n=new r.BeaconWallet({name:"Beacon Docs Taquito",eventHandlers:{[s.BeaconEvent.PAIR_INIT]:{handler:async e=>{const a=e.abortedHandler;e.abortedHandler=()=>{a&&a(),t.log("My logic")},await s.defaultEventCallbacks.PAIR_INIT(e),t.log("syncInfo",e)}}}});a.setWalletProvider(n);try{t.log("Requesting permissions...");const e=await n.client.requestPermissions();t.log("Got permissions:",e.address)}catch(c){t.log("Got error:",c.message)}},X=async e=>{const t=new o(e),a=new s.DAppClient({name:"Beacon Docs",eventHandlers:{[s.BeaconEvent.PAIR_INIT]:{handler:async(e,a)=>{await s.defaultEventCallbacks.PAIR_INIT(e),t.log("syncInfo",e,a)}}}});try{t.log("Requesting permissions...");const e=await a.requestPermissions();t.log("Got permissions:",e.address)}catch(n){t.log("Got error:",n.message)}},Z=async e=>{const t=new o(e),a=new i.TezosToolkit("https://mainnet.api.tez.ie"),n=new r.BeaconWallet({name:"Beacon Docs Taquito",eventHandlers:{[s.BeaconEvent.PAIR_INIT]:{handler:async(e,a)=>{await s.defaultEventCallbacks.PAIR_INIT(e),t.log("syncInfo",e,a)}}}});a.setWalletProvider(n);try{t.log("Requesting permissions...");const e=await n.client.requestPermissions();t.log("Got permissions:",e.address)}catch(c){t.log("Got error:",c.message)}},Y=async e=>{const t=new o(e),a=new s.DAppClient({name:"Beacon Docs"});try{const e=await a.requestSignPayload({signingType:s.SigningType.MICHELINE,payload:"05010000004254657a6f73205369676e6564204d6573736167653a206d79646170702e636f6d20323032312d30312d31345431353a31363a30345a2048656c6c6f20776f726c6421"});t.log(`Signature: ${e.signature}`)}catch(n){t.log("Error: ",n.message)}},ee=async e=>{const t=new o(e),a=new i.TezosToolkit("https://mainnet.api.tez.ie"),n=new r.BeaconWallet({name:"Beacon Docs Taquito"});a.setWalletProvider(n);try{const e=await n.client.requestSignPayload({signingType:s.SigningType.MICHELINE,payload:"05010000004254657a6f73205369676e6564204d6573736167653a206d79646170702e636f6d20323032312d30312d31345431353a31363a30345a2048656c6c6f20776f726c6421"});t.log(`Signature: ${e.signature}`)}catch(c){t.log("Error: ",c.message)}},te=async e=>{const t=new o(e),a=new s.DAppClient({name:"Beacon Docs"});try{const e=await a.requestSignPayload({signingType:s.SigningType.OPERATION,payload:"0300"});t.log(`Signature: ${e.signature}`)}catch(n){t.log("Error: ",n.message)}},ae=async e=>{const t=new o(e),a=new i.TezosToolkit("https://mainnet.api.tez.ie"),n=new r.BeaconWallet({name:"Beacon Docs Taquito"});a.setWalletProvider(n);try{const e=await n.client.requestSignPayload({signingType:s.SigningType.OPERATION,payload:"0300"});t.log(`Signature: ${e.signature}`)}catch(c){t.log("Error: ",c.message)}},ne=async e=>{const t=new o(e),a=new s.DAppClient({name:"Beacon Docs"});try{const e=await a.requestSignPayload({signingType:s.SigningType.RAW,payload:"any string that will be signed"});t.log(`Signature: ${e.signature}`)}catch(n){t.log("Error: ",n.message)}},oe=async e=>{const t=new o(e),a=new i.TezosToolkit("https://mainnet.api.tez.ie"),n=new r.BeaconWallet({name:"Beacon Docs Taquito"});a.setWalletProvider(n);try{const e=await n.client.requestSignPayload({signingType:s.SigningType.RAW,payload:"any string that will be signed"});t.log(`Signature: ${e.signature}`)}catch(c){t.log("Result: ",c.message)}},se=async e=>{const t=new o(e),a=new s.DAppClient({name:"Beacon Docs"}),n=await a.getActiveAccount();if(n)t.log("Already connected:",n.address);else{const e=await a.requestPermissions();t.log("New connection:",e.address)}try{const e=await a.requestOperation({operationDetails:[{kind:s.TezosOperationType.TRANSACTION,amount:"0",destination:"KT1RPW5kTX6WFxg8JK34rGEU24gqEEudyfvz",parameters:{entrypoint:"set_color",value:{int:"925"}}}]});t.log("Result: ",e)}catch(c){t.log("The contract call failed and the following error was returned:",c?.data[1]?.with?.string)}},ce=async e=>{const t=new o(e),a=new i.TezosToolkit("https://mainnet.api.tez.ie"),n=new r.BeaconWallet({name:"Beacon Docs"});a.setWalletProvider(n);await n.getPKH()||await n.requestPermissions();const s=await a.wallet.at("KT1RPW5kTX6WFxg8JK34rGEU24gqEEudyfvz");try{const e=await s.methods.set_color("925").send();t.log("Result: ",e)}catch(c){t.log("The contract call failed and the following error was returned:",c?.data[1]?.with?.string)}},ie=async e=>{const t=new o(e),a=new s.DAppClient({name:"Beacon Docs"});await a.clearActiveAccount(),t.log("Active account: ",await a.getActiveAccount()),a.subscribeToEvent(s.BeaconEvent.PAIR_SUCCESS,(e=>{t.log(`${s.BeaconEvent.PAIR_SUCCESS} triggered: `,e)}));try{await a.requestPermissions()}catch(n){t.log("Error: ",n)}},re=async e=>{const t=new o(e),a=new i.TezosToolkit("https://mainnet.api.tez.ie"),n=new r.BeaconWallet({name:"Beacon Docs Taquito"});a.setWalletProvider(n),await n.clearActiveAccount(),t.log("Active account: ",await n.client.getActiveAccount()),n.client.subscribeToEvent(s.BeaconEvent.PAIR_SUCCESS,(e=>{t.log(`${s.BeaconEvent.PAIR_SUCCESS} triggered: `,e)}));try{await n.client.requestPermissions()}catch(c){t.log("Error: ",c.message)}};var le=a(96763);class de{static wasHandlerInitialized=!1;static async execute(e,t){try{await this.executeExample(e,t)}catch(a){t(a.message)}}static setUpHandler(){this.wasHandlerInitialized||(window.addEventListener("error",(function(e){e.preventDefault(),le.error("Error occurred: "+e.error.message),this.location.reload()})),window.addEventListener("unhandledrejection",(function(e){e.preventDefault(),le.error("Error occurred: "+e.reason.message),this.location.reload()})),this.wasHandlerInitialized=!0)}static async executeExample(e,t){switch(this.setUpHandler(),e){case"beacon permission request":await S(t);break;case"taquito permission request":await W(t);break;case"beacon get active account":await N(t);break;case"taquito get active account":await q(t);break;case"beacon get active account with events":await C(t);break;case"taquito get active account with events":await P(t);break;case"beacon request operation":await I(t);break;case"taquito request operation":await O(t);break;case"beacon request operation with events":await B(t);break;case"taquito request operation with events":await D(t);break;case"beacon advanced example":await h(t);break;case"taquito advanced example":await k(t);break;case"beacon simple example":await E(t);break;case"taquito simple example":await A(t);break;case"beacon disconnect wallet":await _(t);break;case"taquito disconnect wallet":await T(t);break;case"beacon destroy":await d(t);break;case"taquito destroy":await p(t);break;case"beacon disconnect wallet 2":await y(t);break;case"taquito disconnect wallet 2":await b(t);break;case"beacon broadcast request":await c(t);break;case"taquito broadcast request":await l(t);break;case"beacon simple contract call":await se(t);break;case"taquito simple contract call":await ce(t);break;case"taquito fa1.2 transfer":await f(t);break;case"taquito fa2 transfer":await v(t);break;case"beacon subscribe to event":await ie(t);break;case"taquito subscribe to event":await re(t);break;case"beacon mainnet network":await $(t);break;case"taquito mainnet network":await J(t);break;case"beacon edonet network":await G(t);break;case"taquito edonet network":await V(t);break;case"beacon edonet network with RPC":await L(t);break;case"taquito edonet network with RPC":await K(t);break;case"beacon custom network":await U(t);break;case"taquito custom network":await H(t);break;case"beacon sign payload micheline":await Y(t);break;case"taquito sign payload micheline":await ee(t);break;case"beacon sign payload operation":await te(t);break;case"taquito sign payload operation":await ae(t);break;case"beacon sign payload raw":await ne(t);break;case"taquito sign payload raw":await oe(t);break;case"beacon disable ui":await u(t);break;case"taquito disable ui":await m(t);break;case"beacon request permission events":await X(t);break;case"taquito request permission events":await Z(t);break;case"beacon request permission alert":await F(t);break;case"taquito request permission alert":await Q(t);break;case"beacon different node":await w(t);break;case"taquito different node":await g(t);break;case"beacon sdk version":case"beacon sdk client":await j(t);break;case"taquito sdk version":case"taquito sdk client":await M(t);break;case"beacon sdk connection":await R(t);break;case"taquito sdk connection":await z(t)}}}var pe=a(74848);const we=e=>{let{snippetId:t}=e;const[a,o]=(0,n.useState)([]),s=e=>{o((t=>[...t,e]))};return(0,n.useEffect)((()=>{de.execute(t,s)}),[]),(0,pe.jsx)("ul",{id:`console ${t}`,children:a&&a.map(((e,t)=>(0,pe.jsx)("ul",{children:e},t)))})}},61114:(e,t,a)=>{"use strict";a.d(t,{A:()=>c});var n=a(96540),o=a(22279),s=a(74848);o.A.initialize({startOnLoad:!0});const c=e=>{let{chart:t}=e;return(0,n.useEffect)((()=>{o.A.contentLoaded()}),[]),(0,s.jsx)("div",{className:"mermaid",children:t})}},84827:(e,t,a)=>{"use strict";a.d(t,{A:()=>A});var n=a(96540),o=a(34164),s=a(92303),c=a(86850),i=a(21312),r=a(44586),l=a(78478),d=a(26058),p=a(95293);const w={playgroundContainer:"playgroundContainer_TGbA",playgroundHeader:"playgroundHeader_qwyd",playgroundEditor:"playgroundEditor_PvJ1",playgroundPreview:"playgroundPreview_bb8I",copyButtonIconWrapper:"copyButtonIconWrapper_qXEj",copyButtonIcon:"copyButtonIcon_LfzR",copyButton:"copyButton_q7gX"};var g=a(74848);const u=e=>{let{text:t}=e;const[a,o]=(0,n.useState)(!1),{colorMode:s}=(0,p.G)();return(0,g.jsx)(g.Fragment,{children:(0,g.jsx)("button",{type:"button",title:"Copy code to clipboard",style:{backgroundColor:"transparent",border:"none",cursor:"pointer"},onClick:()=>{navigator.clipboard.writeText(t).then((()=>{o(!0),setTimeout((()=>o(!1)),3e3)}))},children:(0,g.jsx)("span",{style:{display:"inline-block"},"aria-hidden":"true",children:a?(0,g.jsx)("svg",{fill:"dark"===s?"#000":"#fff",width:"24px",height:"24px",style:{maxWidth:"24px",maxHeight:"24px"},children:(0,g.jsx)("path",{d:"M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"})}):(0,g.jsx)(g.Fragment,{children:(0,g.jsx)("svg",{style:{maxWidth:"24px",maxHeight:"24px"},children:(0,g.jsx)("path",{fill:"dark"===s?"#000":"#fff",d:"M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"})})})})})})};var m=a(60700);function y(e){const t=e.split("\n");return t.splice(0,1),t.join("\n")}function b(e){return(e.split("\n")[0].split("//")[1]??"").trim()}function _(e){let{children:t}=e;return(0,g.jsx)("div",{className:(0,o.A)(w.playgroundHeader),style:{display:"flex",alignItems:"start",justifyContent:"space-between"},children:t})}function T(){return(0,g.jsx)("div",{children:"Loading..."})}function h(e){let{snippetId:t}=e;return(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)(_,{children:(0,g.jsx)(i.A,{id:"theme.Playground.result",description:"The result label of the live codeblocks",children:"Result"})}),(0,g.jsx)("div",{className:w.playgroundPreview,children:(0,g.jsx)(l.A,{fallback:(0,g.jsx)(T,{}),children:()=>{const e=a(34881).A;return(0,g.jsx)(g.Fragment,{children:(0,g.jsx)(e,{snippetId:t})})}})})]})}function k(){const e=(0,s.A)();return(0,g.jsx)(c.w,{className:w.playgroundEditor},String(e))}function E(e){let{code:t}=e;return(0,g.jsxs)(g.Fragment,{children:[(0,g.jsxs)(_,{children:[(0,g.jsx)(i.A,{id:"theme.Playground.liveEditor",description:"The live editor label of the live codeblocks",children:"Example"}),(0,g.jsx)(u,{text:t})]}),(0,g.jsx)(k,{})]})}function A(e){let{children:t,transformCode:o,...s}=e;const[i,p]=(0,n.useState)(!1),{siteConfig:{themeConfig:u}}=(0,r.A)(),{liveCodeBlock:{playgroundPosition:_}}=u,k=(0,d.A)(),A=s.metastring?.includes("noInline")??!1,f=()=>{p(!1)};return(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)("div",{className:w.playgroundContainer,children:(0,g.jsx)(c.Q,{code:y(t.replace(/\n$/,"")),noInline:A,transformCode:o??(e=>`${e};`),theme:k,disabled:!0,...s,children:"top"===_?(0,g.jsxs)(g.Fragment,{children:[i&&(0,g.jsx)(h,{snippetId:b(t)}),(0,g.jsx)(E,{code:y(t)})]}):(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)(E,{code:y(t)}),i&&(0,g.jsx)(h,{snippetId:b(t)})]})})}),(0,g.jsx)(l.A,{fallback:(0,g.jsx)(T,{}),children:()=>{const{reset:e}=a(78952);return(0,g.jsx)(g.Fragment,{children:(0,g.jsxs)(m.A,{url:"https://example.beacon.docs.com",children:[(0,g.jsx)("button",{className:"button button--primary margin-right--xs",onClick:()=>(p(!1),void setTimeout((()=>p(!0)))),children:"Run Code"}),(0,g.jsx)("button",{className:"button button--secondary margin-right--xs",onClick:()=>(f(),void e()),children:"Reset"}),(0,g.jsx)("button",{className:"button button--secondary",onClick:()=>f(),children:"Clear Output"})]})})}})]})}},78952:(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";__webpack_require__.r(__webpack_exports__),__webpack_require__.d(__webpack_exports__,{copyShareUrl:()=>copyShareUrl,reset:()=>reset,runBeaconCode:()=>runBeaconCode});var _node_modules_beacon_sdk_dist_cjs__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(98455),_node_modules_beacon_sdk_dist_cjs__WEBPACK_IMPORTED_MODULE_0___default=__webpack_require__.n(_node_modules_beacon_sdk_dist_cjs__WEBPACK_IMPORTED_MODULE_0__),typescript__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(58843),typescript__WEBPACK_IMPORTED_MODULE_1___default=__webpack_require__.n(typescript__WEBPACK_IMPORTED_MODULE_1__),_taquito_taquito__WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(10695),_taquito_beacon_wallet__WEBPACK_IMPORTED_MODULE_3__=__webpack_require__(79434),console=__webpack_require__(96763);function replaceAll(e,t,a){return e.split(t).join(a)}const removeImports=e=>{const t=e.split("\n");let a=!0;return t.map((e=>{e.trim().startsWith("import")&&(a=!1);const t=a?e:void 0;return(e.indexOf("@airgap/beacon-sdk")>=0||e.indexOf("@taquito")>=0)&&(a=!0),t})).filter((e=>!!e)).join("\n")},runBeaconCode=(rawCode,setOutput)=>{let code=rawCode,output="";const appendOutput=e=>{output+="\n"+e,setOutput(output.trim())},myLog=function(){for(var e=arguments.length,t=new Array(e),a=0;a"object"==typeof e?JSON.stringify(e,null,2):e)).join(" "))};let runnable;return code=replaceAll(code,"console.log(","progress("),code=removeImports(code),code=typescript__WEBPACK_IMPORTED_MODULE_1__.transpile(`({\n run: async (beacon: any, taquito: any, taquitoWallet: any, progress: any): string => {\n Object.keys(beacon).forEach(key => {\n window[key] = beacon[key]\n })\n Object.keys(taquito).forEach(key => {\n window[key] = taquito[key]\n })\n Object.keys(taquitoWallet).forEach(key => {\n window[key] = taquitoWallet[key]\n })\n return (async () => {\n ${code};\n if (typeof result !== 'undefined') {\n return result\n }\n })()\n })`),new Promise((resolve=>{try{runnable=eval(code),runnable.run(_node_modules_beacon_sdk_dist_cjs__WEBPACK_IMPORTED_MODULE_0__,_taquito_taquito__WEBPACK_IMPORTED_MODULE_2__,_taquito_beacon_wallet__WEBPACK_IMPORTED_MODULE_3__,myLog).then((e=>{e&&appendOutput("Returned:\n"+JSON.stringify(e,null,2)),resolve(e)})).catch((e=>{console.warn(e),appendOutput(JSON.stringify(e,null,2)),resolve(e)}))}catch(e){appendOutput(e),console.error(e),resolve(e)}}))},copyShareUrl=e=>{const t=`https://${window.location.host}/playground?code=${btoa(e)}`;navigator.clipboard.writeText(t).catch((e=>console.error("Failed to copy to url!",e)))},reset=async()=>{const e=new _node_modules_beacon_sdk_dist_cjs__WEBPACK_IMPORTED_MODULE_0__.DAppClient({name:"Cleanup"});await e.destroy()}},89387:e=>{function t(e){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}t.keys=()=>[],t.resolve=t,t.id=89387,e.exports=t},99432:()=>{},47790:()=>{},73776:()=>{},15340:()=>{},79838:()=>{},72615:()=>{},84021:()=>{},66247:()=>{},82202:()=>{},18641:()=>{},6732:()=>{},97664:()=>{}}]); \ No newline at end of file diff --git a/assets/js/17a5e4a0.61b2c92e.js b/assets/js/17a5e4a0.61b2c92e.js new file mode 100644 index 00000000..cbd559ef --- /dev/null +++ b/assets/js/17a5e4a0.61b2c92e.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkbeacon_docs=self.webpackChunkbeacon_docs||[]).push([[8869,8737,1118],{94096:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>u,contentTitle:()=>c,default:()=>m,frontMatter:()=>o,metadata:()=>d,toc:()=>h});var a=n(74848),r=n(28453),i=n(11470),s=n(19365),l=n(14252);const o={title:"Installation"},c=void 0,d={id:"wallet/getting-started/ios/installation",title:"Installation",description:"How to install Beacon iOS SDK",source:"@site/docs/wallet/getting-started/ios/installation.mdx",sourceDirName:"wallet/getting-started/ios",slug:"/wallet/getting-started/ios/installation",permalink:"/wallet/getting-started/ios/installation",draft:!1,unlisted:!1,editUrl:"https://github.com/airgap-it/beacon-docs/edit/main/src/docs/wallet/getting-started/ios/installation.mdx",tags:[],version:"current",frontMatter:{title:"Installation"},sidebar:"wallet",previous:{title:"Disconnect from a dApp",permalink:"/wallet/getting-started/android/disconnect-from-dapp"},next:{title:"Connect to a dApp",permalink:"/wallet/getting-started/ios/connect-to-dapp"}},u={},h=[{value:"How to install Beacon iOS SDK",id:"how-to-install-beacon-ios-sdk",level:2},{value:"Packages Overview",id:"packages-overview",level:2},{value:"Core",id:"core",level:3},{value:"Client",id:"client",level:3},{value:"Blockchain",id:"blockchain",level:3},{value:"Transport",id:"transport",level:3}];function p(e){const t={a:"a",code:"code",h2:"h2",h3:"h3",img:"img",p:"p",pre:"pre",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",...(0,r.R)(),...e.components};return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(l.A,{toc:h}),"\n",(0,a.jsx)(t.h2,{id:"how-to-install-beacon-ios-sdk",children:"How to install Beacon iOS SDK"}),"\n",(0,a.jsx)(t.p,{children:"To add Beacon iOS SDK into your project add the dependencies:"}),"\n",(0,a.jsxs)(t.p,{children:[(0,a.jsx)(t.a,{href:"https://github.com/airgap-it/beacon-ios-sdk",children:(0,a.jsx)(t.img,{src:"https://img.shields.io/github/v/tag/airgap-it/beacon-ios-sdk?label=stable&sort=semver",alt:"stable"})}),"\n",(0,a.jsx)(t.a,{href:"https://github.com/airgap-it/beacon-ios-sdk",children:(0,a.jsx)(t.img,{src:"https://img.shields.io/github/v/tag/airgap-it/beacon-ios-sdk?color=orange&include_prereleases&label=latest",alt:"latest"})})]}),"\n",(0,a.jsxs)(i.A,{groupId:"package-manager",defaultValue:"spm",values:[{label:"SPM",value:"spm"},{label:"CocoaPods",value:"cocoapods"}],children:[(0,a.jsxs)(s.A,{value:"spm",children:[(0,a.jsx)(t.pre,{children:(0,a.jsx)(t.code,{className:"language-swift",metastring:'title="Package.swift"',children:'dependencies: [\n .package(url: "https://github.com/airgap-it/beacon-ios-sdk", from: "x.y.z")\n],\n'})}),(0,a.jsxs)(t.p,{children:["Or in Xcode open the ",(0,a.jsx)(t.code,{children:"Add Package Dependency"})," window (as described in ",(0,a.jsx)(t.a,{href:"https://developer.apple.com/documentation/xcode/adding_package_dependencies_to_your_app",children:"the official guide"}),") and enter the ",(0,a.jsx)(t.code,{children:"Beacon iOS SDK"})," GitHub repository URL"]}),(0,a.jsx)(t.pre,{children:(0,a.jsx)(t.code,{children:"https://github.com/airgap-it/beacon-ios-sdk\n"})})]}),(0,a.jsx)(s.A,{value:"cocoapods",children:(0,a.jsx)(t.pre,{children:(0,a.jsx)(t.code,{className:"language-ruby",metastring:'title="Podfile"',children:"target 'MyTarget' do\n use_frameworks!\n\n pod 'BeaconCore', :git => 'https://github.com/airgap-it/beacon-ios-sdk', :tag => 'x.y.z'\n\n // optional\n pod 'BeaconClientWallet', :git => 'https://github.com/airgap-it/beacon-ios-sdk', :tag => 'x.y.z'\n\n // optional\n pod 'BeaconBlockchainSubstrate', :git => 'https://github.com/airgap-it/beacon-ios-sdk', :tag => 'x.y.z'\n // optional\n pod 'BeaconBlockchainTezos', :git => 'https://github.com/airgap-it/beacon-ios-sdk', :tag => 'x.y.z'\n\n // optional\n pod 'BeaconTransportP2PMatrix', :git => 'https://github.com/airgap-it/beacon-ios-sdk', :tag => 'x.y.z'\nend\n"})})})]}),"\n",(0,a.jsx)(t.h2,{id:"packages-overview",children:"Packages Overview"}),"\n",(0,a.jsx)(t.p,{children:"The library packages and their relations are described below."}),"\n",(0,a.jsx)(t.h3,{id:"core",children:"Core"}),"\n",(0,a.jsx)(t.p,{children:"Core packages are the basis for other packages. They are required for the SDK to work as expected."}),"\n",(0,a.jsxs)(t.table,{children:[(0,a.jsx)(t.thead,{children:(0,a.jsxs)(t.tr,{children:[(0,a.jsx)(t.th,{children:"Module"}),(0,a.jsx)(t.th,{children:"Description"}),(0,a.jsx)(t.th,{children:"Dependencies"}),(0,a.jsx)(t.th,{children:"Required by"})]})}),(0,a.jsx)(t.tbody,{children:(0,a.jsxs)(t.tr,{children:[(0,a.jsx)(t.td,{children:(0,a.jsx)(t.code,{children:"BeaconCore"})}),(0,a.jsx)(t.td,{children:"Base for other modules"}),(0,a.jsx)(t.td,{children:"\u2716\ufe0f"}),(0,a.jsxs)(t.td,{children:[(0,a.jsx)(t.code,{children:"BeaconClientWallet"})," ",(0,a.jsx)("br",{}),(0,a.jsx)("br",{})," ",(0,a.jsx)(t.code,{children:"BeaconBlockchainSubstrate"})," ",(0,a.jsx)("br",{})," ",(0,a.jsx)(t.code,{children:"BeaconBlockchainTezos"})," ",(0,a.jsx)("br",{}),(0,a.jsx)("br",{})," ",(0,a.jsx)(t.code,{children:"BeaconTransportP2PMatrix"})]})]})})]}),"\n",(0,a.jsx)(t.h3,{id:"client",children:"Client"}),"\n",(0,a.jsx)(t.p,{children:"Client packages ship with Beacon implementations for different parts of the network."}),"\n",(0,a.jsxs)(t.table,{children:[(0,a.jsx)(t.thead,{children:(0,a.jsxs)(t.tr,{children:[(0,a.jsx)(t.th,{children:"Module"}),(0,a.jsx)(t.th,{children:"Description"}),(0,a.jsx)(t.th,{children:"Dependencies"}),(0,a.jsx)(t.th,{children:"Required by"})]})}),(0,a.jsx)(t.tbody,{children:(0,a.jsxs)(t.tr,{children:[(0,a.jsx)(t.td,{children:(0,a.jsx)(t.code,{children:"BeaconClientWallet"})}),(0,a.jsx)(t.td,{children:"Beacon implementation for wallets"}),(0,a.jsx)(t.td,{children:(0,a.jsx)(t.code,{children:"BeaconCore"})}),(0,a.jsx)(t.td,{children:"\u2716\ufe0f"})]})})]}),"\n",(0,a.jsx)(t.h3,{id:"blockchain",children:"Blockchain"}),"\n",(0,a.jsx)(t.p,{children:"Blockchain packages provide support for different blockchains."}),"\n",(0,a.jsxs)(t.table,{children:[(0,a.jsx)(t.thead,{children:(0,a.jsxs)(t.tr,{children:[(0,a.jsx)(t.th,{children:"Module"}),(0,a.jsx)(t.th,{children:"Description"}),(0,a.jsx)(t.th,{children:"Dependencies"}),(0,a.jsx)(t.th,{children:"Required by"})]})}),(0,a.jsxs)(t.tbody,{children:[(0,a.jsxs)(t.tr,{children:[(0,a.jsx)(t.td,{children:(0,a.jsx)(t.code,{children:"BeaconBlockchainSubstrate"})}),(0,a.jsxs)(t.td,{children:[(0,a.jsx)(t.a,{href:"https://substrate.io/",children:"Substrate"})," specific components"]}),(0,a.jsx)(t.td,{children:(0,a.jsx)(t.code,{children:"BeaconCore"})}),(0,a.jsx)(t.td,{children:"\u2716\ufe0f"})]}),(0,a.jsxs)(t.tr,{children:[(0,a.jsx)(t.td,{children:(0,a.jsx)(t.code,{children:"BeaconBlockchainTezos"})}),(0,a.jsxs)(t.td,{children:[(0,a.jsx)(t.a,{href:"https://tezos.com/",children:"Tezos"})," specific components"]}),(0,a.jsx)(t.td,{children:(0,a.jsx)(t.code,{children:"BeaconCore"})}),(0,a.jsx)(t.td,{children:"\u2716\ufe0f"})]})]})]}),"\n",(0,a.jsx)(t.h3,{id:"transport",children:"Transport"}),"\n",(0,a.jsx)(t.p,{children:"Transport packages provide various interfaces used to establish connection between Beacon clients."}),"\n",(0,a.jsxs)(t.table,{children:[(0,a.jsx)(t.thead,{children:(0,a.jsxs)(t.tr,{children:[(0,a.jsx)(t.th,{children:"Module"}),(0,a.jsx)(t.th,{children:"Description"}),(0,a.jsx)(t.th,{children:"Dependencies"}),(0,a.jsx)(t.th,{children:"Required by"})]})}),(0,a.jsx)(t.tbody,{children:(0,a.jsxs)(t.tr,{children:[(0,a.jsx)(t.td,{children:(0,a.jsx)(t.code,{children:"BeaconTransportP2PMatrix"})}),(0,a.jsxs)(t.td,{children:["Beacon P2P implementation which uses ",(0,a.jsx)(t.a,{href:"https://matrix.org/",children:"Matrix"})," for the communication"]}),(0,a.jsx)(t.td,{children:(0,a.jsx)(t.code,{children:"BeaconCore"})}),(0,a.jsx)(t.td,{children:"\u2716\ufe0f"})]})})]})]})}function m(e={}){const{wrapper:t}={...(0,r.R)(),...e.components};return t?(0,a.jsx)(t,{...e,children:(0,a.jsx)(p,{...e})}):p(e)}},14252:(e,t,n)=>{n.d(t,{A:()=>s});n(96540);var a=n(65195);const r={tableOfContentsInline:"tableOfContentsInline_prmo"};var i=n(74848);function s(e){let{toc:t,minHeadingLevel:n,maxHeadingLevel:s}=e;return(0,i.jsx)("div",{className:r.tableOfContentsInline,children:(0,i.jsx)(a.A,{toc:t,minHeadingLevel:n,maxHeadingLevel:s,className:"table-of-contents",linkClassName:null})})}},65195:(e,t,n)=>{n.d(t,{A:()=>x});var a=n(96540),r=n(6342);function i(e){const t=e.map((e=>({...e,parentIndex:-1,children:[]}))),n=Array(7).fill(-1);t.forEach(((e,t)=>{const a=n.slice(2,e.level);e.parentIndex=Math.max(...a),n[e.level]=t}));const a=[];return t.forEach((e=>{const{parentIndex:n,...r}=e;n>=0?t[n].children.push(r):a.push(r)})),a}function s(e){let{toc:t,minHeadingLevel:n,maxHeadingLevel:a}=e;return t.flatMap((e=>{const t=s({toc:e.children,minHeadingLevel:n,maxHeadingLevel:a});return function(e){return e.level>=n&&e.level<=a}(e)?[{...e,children:t}]:t}))}function l(e){const t=e.getBoundingClientRect();return t.top===t.bottom?l(e.parentNode):t}function o(e,t){let{anchorTopOffset:n}=t;const a=e.find((e=>l(e).top>=n));if(a){return function(e){return e.top>0&&e.bottom{e.current=t?0:document.querySelector(".navbar").clientHeight}),[t]),e}function d(e){const t=(0,a.useRef)(void 0),n=c();(0,a.useEffect)((()=>{if(!e)return()=>{};const{linkClassName:a,linkActiveClassName:r,minHeadingLevel:i,maxHeadingLevel:s}=e;function l(){const e=function(e){return Array.from(document.getElementsByClassName(e))}(a),l=function(e){let{minHeadingLevel:t,maxHeadingLevel:n}=e;const a=[];for(let r=t;r<=n;r+=1)a.push(`h${r}.anchor`);return Array.from(document.querySelectorAll(a.join()))}({minHeadingLevel:i,maxHeadingLevel:s}),c=o(l,{anchorTopOffset:n.current}),d=e.find((e=>c&&c.id===function(e){return decodeURIComponent(e.href.substring(e.href.indexOf("#")+1))}(e)));e.forEach((e=>{!function(e,n){n?(t.current&&t.current!==e&&t.current.classList.remove(r),e.classList.add(r),t.current=e):e.classList.remove(r)}(e,e===d)}))}return document.addEventListener("scroll",l),document.addEventListener("resize",l),l(),()=>{document.removeEventListener("scroll",l),document.removeEventListener("resize",l)}}),[e,n])}var u=n(28774),h=n(74848);function p(e){let{toc:t,className:n,linkClassName:a,isChild:r}=e;return t.length?(0,h.jsx)("ul",{className:r?void 0:n,children:t.map((e=>(0,h.jsxs)("li",{children:[(0,h.jsx)(u.A,{to:`#${e.id}`,className:a??void 0,dangerouslySetInnerHTML:{__html:e.value}}),(0,h.jsx)(p,{isChild:!0,toc:e.children,className:n,linkClassName:a})]},e.id)))}):null}const m=a.memo(p);function x(e){let{toc:t,className:n="table-of-contents table-of-contents__left-border",linkClassName:l="table-of-contents__link",linkActiveClassName:o,minHeadingLevel:c,maxHeadingLevel:u,...p}=e;const x=(0,r.p)(),f=c??x.tableOfContents.minHeadingLevel,g=u??x.tableOfContents.maxHeadingLevel,b=function(e){let{toc:t,minHeadingLevel:n,maxHeadingLevel:r}=e;return(0,a.useMemo)((()=>s({toc:i(t),minHeadingLevel:n,maxHeadingLevel:r})),[t,n,r])}({toc:t,minHeadingLevel:f,maxHeadingLevel:g});return d((0,a.useMemo)((()=>{if(l&&o)return{linkClassName:l,linkActiveClassName:o,minHeadingLevel:f,maxHeadingLevel:g}}),[l,o,f,g])),(0,h.jsx)(m,{toc:b,className:n,linkClassName:l,...p})}},19365:(e,t,n)=>{n.d(t,{A:()=>s});n(96540);var a=n(34164);const r={tabItem:"tabItem_Ymn6"};var i=n(74848);function s(e){let{children:t,hidden:n,className:s}=e;return(0,i.jsx)("div",{role:"tabpanel",className:(0,a.A)(r.tabItem,s),hidden:n,children:t})}},11470:(e,t,n)=>{n.d(t,{A:()=>y});var a=n(96540),r=n(34164),i=n(23104),s=n(56347),l=n(205),o=n(57485),c=n(31682),d=n(70679);function u(e){return a.Children.toArray(e).filter((e=>"\n"!==e)).map((e=>{if(!e||(0,a.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}function h(e){const{values:t,children:n}=e;return(0,a.useMemo)((()=>{const e=t??function(e){return u(e).map((e=>{let{props:{value:t,label:n,attributes:a,default:r}}=e;return{value:t,label:n,attributes:a,default:r}}))}(n);return function(e){const t=(0,c.XI)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,n])}function p(e){let{value:t,tabValues:n}=e;return n.some((e=>e.value===t))}function m(e){let{queryString:t=!1,groupId:n}=e;const r=(0,s.W6)(),i=function(e){let{queryString:t=!1,groupId:n}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!n)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return n??null}({queryString:t,groupId:n});return[(0,o.aZ)(i),(0,a.useCallback)((e=>{if(!i)return;const t=new URLSearchParams(r.location.search);t.set(i,e),r.replace({...r.location,search:t.toString()})}),[i,r])]}function x(e){const{defaultValue:t,queryString:n=!1,groupId:r}=e,i=h(e),[s,o]=(0,a.useState)((()=>function(e){let{defaultValue:t,tabValues:n}=e;if(0===n.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!p({value:t,tabValues:n}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${n.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const a=n.find((e=>e.default))??n[0];if(!a)throw new Error("Unexpected error: 0 tabValues");return a.value}({defaultValue:t,tabValues:i}))),[c,u]=m({queryString:n,groupId:r}),[x,f]=function(e){let{groupId:t}=e;const n=function(e){return e?`docusaurus.tab.${e}`:null}(t),[r,i]=(0,d.Dv)(n);return[r,(0,a.useCallback)((e=>{n&&i.set(e)}),[n,i])]}({groupId:r}),g=(()=>{const e=c??x;return p({value:e,tabValues:i})?e:null})();(0,l.A)((()=>{g&&o(g)}),[g]);return{selectedValue:s,selectValue:(0,a.useCallback)((e=>{if(!p({value:e,tabValues:i}))throw new Error(`Can't select invalid tab value=${e}`);o(e),u(e),f(e)}),[u,f,i]),tabValues:i}}var f=n(92303);const g={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};var b=n(74848);function v(e){let{className:t,block:n,selectedValue:a,selectValue:s,tabValues:l}=e;const o=[],{blockElementScrollPositionUntilNextRender:c}=(0,i.a_)(),d=e=>{const t=e.currentTarget,n=o.indexOf(t),r=l[n].value;r!==a&&(c(t),s(r))},u=e=>{let t=null;switch(e.key){case"Enter":d(e);break;case"ArrowRight":{const n=o.indexOf(e.currentTarget)+1;t=o[n]??o[0];break}case"ArrowLeft":{const n=o.indexOf(e.currentTarget)-1;t=o[n]??o[o.length-1];break}}t?.focus()};return(0,b.jsx)("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,r.A)("tabs",{"tabs--block":n},t),children:l.map((e=>{let{value:t,label:n,attributes:i}=e;return(0,b.jsx)("li",{role:"tab",tabIndex:a===t?0:-1,"aria-selected":a===t,ref:e=>o.push(e),onKeyDown:u,onClick:d,...i,className:(0,r.A)("tabs__item",g.tabItem,i?.className,{"tabs__item--active":a===t}),children:n??t},t)}))})}function j(e){let{lazy:t,children:n,selectedValue:i}=e;const s=(Array.isArray(n)?n:[n]).filter(Boolean);if(t){const e=s.find((e=>e.props.value===i));return e?(0,a.cloneElement)(e,{className:(0,r.A)("margin-top--md",e.props.className)}):null}return(0,b.jsx)("div",{className:"margin-top--md",children:s.map(((e,t)=>(0,a.cloneElement)(e,{key:t,hidden:e.props.value!==i})))})}function k(e){const t=x(e);return(0,b.jsxs)("div",{className:(0,r.A)("tabs-container",g.tabList),children:[(0,b.jsx)(v,{...t,...e}),(0,b.jsx)(j,{...t,...e})]})}function y(e){const t=(0,f.A)();return(0,b.jsx)(k,{...e,children:u(e.children)},String(t))}},28453:(e,t,n)=>{n.d(t,{R:()=>s,x:()=>l});var a=n(96540);const r={},i=a.createContext(r);function s(e){const t=a.useContext(i);return a.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function l(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:s(e.components),a.createElement(i.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/1966.46a599b1.js b/assets/js/1966.46a599b1.js new file mode 100644 index 00000000..f06d95ba --- /dev/null +++ b/assets/js/1966.46a599b1.js @@ -0,0 +1,2 @@ +/*! For license information please see 1966.46a599b1.js.LICENSE.txt */ +(self.webpackChunkbeacon_docs=self.webpackChunkbeacon_docs||[]).push([[1966],{87799:function(e,t,n){var r;r=function(e){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=e,n.c=t,n.i=function(e){return e},n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:r})},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=7)}([function(t,n){t.exports=e},function(e,t,n){"use strict";var r=n(0).FDLayoutConstants;function i(){}for(var a in r)i[a]=r[a];i.DEFAULT_USE_MULTI_LEVEL_SCALING=!1,i.DEFAULT_RADIAL_SEPARATION=r.DEFAULT_EDGE_LENGTH,i.DEFAULT_COMPONENT_SEPERATION=60,i.TILE=!0,i.TILING_PADDING_VERTICAL=10,i.TILING_PADDING_HORIZONTAL=10,i.TREE_REDUCTION_ON_INCREMENTAL=!1,e.exports=i},function(e,t,n){"use strict";var r=n(0).FDLayoutEdge;function i(e,t,n){r.call(this,e,t,n)}for(var a in i.prototype=Object.create(r.prototype),r)i[a]=r[a];e.exports=i},function(e,t,n){"use strict";var r=n(0).LGraph;function i(e,t,n){r.call(this,e,t,n)}for(var a in i.prototype=Object.create(r.prototype),r)i[a]=r[a];e.exports=i},function(e,t,n){"use strict";var r=n(0).LGraphManager;function i(e){r.call(this,e)}for(var a in i.prototype=Object.create(r.prototype),r)i[a]=r[a];e.exports=i},function(e,t,n){"use strict";var r=n(0).FDLayoutNode,i=n(0).IMath;function a(e,t,n,i){r.call(this,e,t,n,i)}for(var o in a.prototype=Object.create(r.prototype),r)a[o]=r[o];a.prototype.move=function(){var e=this.graphManager.getLayout();this.displacementX=e.coolingFactor*(this.springForceX+this.repulsionForceX+this.gravitationForceX)/this.noOfChildren,this.displacementY=e.coolingFactor*(this.springForceY+this.repulsionForceY+this.gravitationForceY)/this.noOfChildren,Math.abs(this.displacementX)>e.coolingFactor*e.maxNodeDisplacement&&(this.displacementX=e.coolingFactor*e.maxNodeDisplacement*i.sign(this.displacementX)),Math.abs(this.displacementY)>e.coolingFactor*e.maxNodeDisplacement&&(this.displacementY=e.coolingFactor*e.maxNodeDisplacement*i.sign(this.displacementY)),null==this.child||0==this.child.getNodes().length?this.moveBy(this.displacementX,this.displacementY):this.propogateDisplacementToChildren(this.displacementX,this.displacementY),e.totalDisplacement+=Math.abs(this.displacementX)+Math.abs(this.displacementY),this.springForceX=0,this.springForceY=0,this.repulsionForceX=0,this.repulsionForceY=0,this.gravitationForceX=0,this.gravitationForceY=0,this.displacementX=0,this.displacementY=0},a.prototype.propogateDisplacementToChildren=function(e,t){for(var n,r=this.getChild().getNodes(),i=0;i0)this.positionNodesRadially(e);else{this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var t=new Set(this.getAllNodes()),n=this.nodesWithGravity.filter((function(e){return t.has(e)}));this.graphManager.setAllNodesToApplyGravitation(n),this.positionNodesRandomly()}}return this.initSpringEmbedder(),this.runSpringEmbedder(),!0},m.prototype.tick=function(){if(this.totalIterations++,this.totalIterations===this.maxIterations&&!this.isTreeGrowing&&!this.isGrowthFinished){if(!(this.prunedNodesAll.length>0))return!0;this.isTreeGrowing=!0}if(this.totalIterations%u.CONVERGENCE_CHECK_PERIOD==0&&!this.isTreeGrowing&&!this.isGrowthFinished){if(this.isConverged()){if(!(this.prunedNodesAll.length>0))return!0;this.isTreeGrowing=!0}this.coolingCycle++,0==this.layoutQuality?this.coolingAdjuster=this.coolingCycle:1==this.layoutQuality&&(this.coolingAdjuster=this.coolingCycle/3),this.coolingFactor=Math.max(this.initialCoolingFactor-Math.pow(this.coolingCycle,Math.log(100*(this.initialCoolingFactor-this.finalTemperature))/Math.log(this.maxCoolingCycle))/100*this.coolingAdjuster,this.finalTemperature),this.animationPeriod=Math.ceil(this.initialAnimationPeriod*Math.sqrt(this.coolingFactor))}if(this.isTreeGrowing){if(this.growTreeIterations%10==0)if(this.prunedNodesAll.length>0){this.graphManager.updateBounds(),this.updateGrid(),this.growTree(this.prunedNodesAll),this.graphManager.resetAllNodesToApplyGravitation();var e=new Set(this.getAllNodes()),t=this.nodesWithGravity.filter((function(t){return e.has(t)}));this.graphManager.setAllNodesToApplyGravitation(t),this.graphManager.updateBounds(),this.updateGrid(),this.coolingFactor=u.DEFAULT_COOLING_FACTOR_INCREMENTAL}else this.isTreeGrowing=!1,this.isGrowthFinished=!0;this.growTreeIterations++}if(this.isGrowthFinished){if(this.isConverged())return!0;this.afterGrowthIterations%10==0&&(this.graphManager.updateBounds(),this.updateGrid()),this.coolingFactor=u.DEFAULT_COOLING_FACTOR_INCREMENTAL*((100-this.afterGrowthIterations)/100),this.afterGrowthIterations++}var n=!this.isTreeGrowing&&!this.isGrowthFinished,r=this.growTreeIterations%10==1&&this.isTreeGrowing||this.afterGrowthIterations%10==1&&this.isGrowthFinished;return this.totalDisplacement=0,this.graphManager.updateBounds(),this.calcSpringForces(),this.calcRepulsionForces(n,r),this.calcGravitationalForces(),this.moveNodes(),this.animate(),!1},m.prototype.getPositionsData=function(){for(var e=this.graphManager.getAllNodes(),t={},n=0;n1)for(s=0;sr&&(r=Math.floor(o.y)),a=Math.floor(o.x+l.DEFAULT_COMPONENT_SEPERATION)}this.transform(new d(c.WORLD_CENTER_X-o.x/2,c.WORLD_CENTER_Y-o.y/2))},m.radialLayout=function(e,t,n){var r=Math.max(this.maxDiagonalInTree(e),l.DEFAULT_RADIAL_SEPARATION);m.branchRadialLayout(t,null,0,359,0,r);var i=v.calculateBounds(e),a=new y;a.setDeviceOrgX(i.getMinX()),a.setDeviceOrgY(i.getMinY()),a.setWorldOrgX(n.x),a.setWorldOrgY(n.y);for(var o=0;o1;){var y=v[0];v.splice(0,1);var b=c.indexOf(y);b>=0&&c.splice(b,1),g--,h--}d=null!=t?(c.indexOf(v[0])+1)%g:0;for(var x=Math.abs(r-n)/h,w=d;p!=h;w=++w%g){var E=c[w].getOtherEnd(e);if(E!=t){var _=(n+p*x)%360,T=(_+x)%360;m.branchRadialLayout(E,e,_,T,i+a,a),p++}}},m.maxDiagonalInTree=function(e){for(var t=g.MIN_VALUE,n=0;nt&&(t=r)}return t},m.prototype.calcRepulsionRange=function(){return 2*(this.level+1)*this.idealEdgeLength},m.prototype.groupZeroDegreeMembers=function(){var e=this,t={};this.memberGroups={},this.idToDummyNode={};for(var n=[],r=this.graphManager.getAllNodes(),i=0;i1){var r="DummyCompound_"+n;e.memberGroups[r]=t[n];var i=t[n][0].getParent(),a=new o(e.graphManager);a.id=r,a.paddingLeft=i.paddingLeft||0,a.paddingRight=i.paddingRight||0,a.paddingBottom=i.paddingBottom||0,a.paddingTop=i.paddingTop||0,e.idToDummyNode[r]=a;var s=e.getGraphManager().add(e.newGraph(),a),l=i.getChild();l.add(a);for(var u=0;u=0;e--){var t=this.compoundOrder[e],n=t.id,r=t.paddingLeft,i=t.paddingTop;this.adjustLocations(this.tiledMemberPack[n],t.rect.x,t.rect.y,r,i)}},m.prototype.repopulateZeroDegreeMembers=function(){var e=this,t=this.tiledZeroDegreePack;Object.keys(t).forEach((function(n){var r=e.idToDummyNode[n],i=r.paddingLeft,a=r.paddingTop;e.adjustLocations(t[n],r.rect.x,r.rect.y,i,a)}))},m.prototype.getToBeTiled=function(e){var t=e.id;if(null!=this.toBeTiled[t])return this.toBeTiled[t];var n=e.getChild();if(null==n)return this.toBeTiled[t]=!1,!1;for(var r=n.getNodes(),i=0;i0)return this.toBeTiled[t]=!1,!1;if(null!=a.getChild()){if(!this.getToBeTiled(a))return this.toBeTiled[t]=!1,!1}else this.toBeTiled[a.id]=!1}return this.toBeTiled[t]=!0,!0},m.prototype.getNodeDegree=function(e){e.id;for(var t=e.getEdges(),n=0,r=0;rl&&(l=c.rect.height)}n+=l+e.verticalPadding}},m.prototype.tileCompoundMembers=function(e,t){var n=this;this.tiledMemberPack=[],Object.keys(e).forEach((function(r){var i=t[r];n.tiledMemberPack[r]=n.tileNodes(e[r],i.paddingLeft+i.paddingRight),i.rect.width=n.tiledMemberPack[r].width,i.rect.height=n.tiledMemberPack[r].height}))},m.prototype.tileNodes=function(e,t){var n={rows:[],rowWidth:[],rowHeight:[],width:0,height:t,verticalPadding:l.TILING_PADDING_VERTICAL,horizontalPadding:l.TILING_PADDING_HORIZONTAL};e.sort((function(e,t){return e.rect.width*e.rect.height>t.rect.width*t.rect.height?-1:e.rect.width*e.rect.height0&&(a+=e.horizontalPadding),e.rowWidth[n]=a,e.width0&&(o+=e.verticalPadding);var s=0;o>e.rowHeight[n]&&(s=e.rowHeight[n],e.rowHeight[n]=o,s=e.rowHeight[n]-s),e.height+=s,e.rows[n].push(t)},m.prototype.getShortestRowIndex=function(e){for(var t=-1,n=Number.MAX_VALUE,r=0;rn&&(t=r,n=e.rowWidth[r]);return t},m.prototype.canAddHorizontal=function(e,t,n){var r=this.getShortestRowIndex(e);if(r<0)return!0;var i=e.rowWidth[r];if(i+e.horizontalPadding+t<=e.width)return!0;var a,o,s=0;return e.rowHeight[r]0&&(s=n+e.verticalPadding-e.rowHeight[r]),a=e.width-i>=t+e.horizontalPadding?(e.height+s)/(i+t+e.horizontalPadding):(e.height+s)/e.width,s=n+e.verticalPadding,(o=e.widtha&&t!=n){r.splice(-1,1),e.rows[n].push(i),e.rowWidth[t]=e.rowWidth[t]-a,e.rowWidth[n]=e.rowWidth[n]+a,e.width=e.rowWidth[instance.getLongestRowIndex(e)];for(var o=Number.MIN_VALUE,s=0;so&&(o=r[s].height);t>0&&(o+=e.verticalPadding);var l=e.rowHeight[t]+e.rowHeight[n];e.rowHeight[t]=o,e.rowHeight[n]0)for(var c=i;c<=a;c++)l[0]+=this.grid[c][o-1].length+this.grid[c][o].length-1;if(a0)for(c=o;c<=s;c++)l[3]+=this.grid[i-1][c].length+this.grid[i][c].length-1;for(var h,d,p=g.MAX_VALUE,f=0;f0&&(o=n.getGraphManager().add(n.newGraph(),a),this.processChildrenList(o,h,n))}},h.prototype.stop=function(){return this.stopped=!0,this};var p=function(e){e("layout","cose-bilkent",h)};"undefined"!=typeof cytoscape&&p(cytoscape),e.exports=p}])},e.exports=r(n(87799))},23143:function(e){var t;t=function(){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=e,n.c=t,n.i=function(e){return e},n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:r})},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=26)}([function(e,t,n){"use strict";function r(){}r.QUALITY=1,r.DEFAULT_CREATE_BENDS_AS_NEEDED=!1,r.DEFAULT_INCREMENTAL=!1,r.DEFAULT_ANIMATION_ON_LAYOUT=!0,r.DEFAULT_ANIMATION_DURING_LAYOUT=!1,r.DEFAULT_ANIMATION_PERIOD=50,r.DEFAULT_UNIFORM_LEAF_NODE_SIZES=!1,r.DEFAULT_GRAPH_MARGIN=15,r.NODE_DIMENSIONS_INCLUDE_LABELS=!1,r.SIMPLE_NODE_SIZE=40,r.SIMPLE_NODE_HALF_SIZE=r.SIMPLE_NODE_SIZE/2,r.EMPTY_COMPOUND_NODE_SIZE=40,r.MIN_EDGE_LENGTH=1,r.WORLD_BOUNDARY=1e6,r.INITIAL_WORLD_BOUNDARY=r.WORLD_BOUNDARY/1e3,r.WORLD_CENTER_X=1200,r.WORLD_CENTER_Y=900,e.exports=r},function(e,t,n){"use strict";var r=n(2),i=n(8),a=n(9);function o(e,t,n){r.call(this,n),this.isOverlapingSourceAndTarget=!1,this.vGraphObject=n,this.bendpoints=[],this.source=e,this.target=t}for(var s in o.prototype=Object.create(r.prototype),r)o[s]=r[s];o.prototype.getSource=function(){return this.source},o.prototype.getTarget=function(){return this.target},o.prototype.isInterGraph=function(){return this.isInterGraph},o.prototype.getLength=function(){return this.length},o.prototype.isOverlapingSourceAndTarget=function(){return this.isOverlapingSourceAndTarget},o.prototype.getBendpoints=function(){return this.bendpoints},o.prototype.getLca=function(){return this.lca},o.prototype.getSourceInLca=function(){return this.sourceInLca},o.prototype.getTargetInLca=function(){return this.targetInLca},o.prototype.getOtherEnd=function(e){if(this.source===e)return this.target;if(this.target===e)return this.source;throw"Node is not incident with this edge"},o.prototype.getOtherEndInGraph=function(e,t){for(var n=this.getOtherEnd(e),r=t.getGraphManager().getRoot();;){if(n.getOwner()==t)return n;if(n.getOwner()==r)break;n=n.getOwner().getParent()}return null},o.prototype.updateLength=function(){var e=new Array(4);this.isOverlapingSourceAndTarget=i.getIntersection(this.target.getRect(),this.source.getRect(),e),this.isOverlapingSourceAndTarget||(this.lengthX=e[0]-e[2],this.lengthY=e[1]-e[3],Math.abs(this.lengthX)<1&&(this.lengthX=a.sign(this.lengthX)),Math.abs(this.lengthY)<1&&(this.lengthY=a.sign(this.lengthY)),this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY))},o.prototype.updateLengthSimple=function(){this.lengthX=this.target.getCenterX()-this.source.getCenterX(),this.lengthY=this.target.getCenterY()-this.source.getCenterY(),Math.abs(this.lengthX)<1&&(this.lengthX=a.sign(this.lengthX)),Math.abs(this.lengthY)<1&&(this.lengthY=a.sign(this.lengthY)),this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY)},e.exports=o},function(e,t,n){"use strict";e.exports=function(e){this.vGraphObject=e}},function(e,t,n){"use strict";var r=n(2),i=n(10),a=n(13),o=n(0),s=n(16),l=n(4);function u(e,t,n,o){null==n&&null==o&&(o=t),r.call(this,o),null!=e.graphManager&&(e=e.graphManager),this.estimatedSize=i.MIN_VALUE,this.inclusionTreeDepth=i.MAX_VALUE,this.vGraphObject=o,this.edges=[],this.graphManager=e,this.rect=null!=n&&null!=t?new a(t.x,t.y,n.width,n.height):new a}for(var c in u.prototype=Object.create(r.prototype),r)u[c]=r[c];u.prototype.getEdges=function(){return this.edges},u.prototype.getChild=function(){return this.child},u.prototype.getOwner=function(){return this.owner},u.prototype.getWidth=function(){return this.rect.width},u.prototype.setWidth=function(e){this.rect.width=e},u.prototype.getHeight=function(){return this.rect.height},u.prototype.setHeight=function(e){this.rect.height=e},u.prototype.getCenterX=function(){return this.rect.x+this.rect.width/2},u.prototype.getCenterY=function(){return this.rect.y+this.rect.height/2},u.prototype.getCenter=function(){return new l(this.rect.x+this.rect.width/2,this.rect.y+this.rect.height/2)},u.prototype.getLocation=function(){return new l(this.rect.x,this.rect.y)},u.prototype.getRect=function(){return this.rect},u.prototype.getDiagonal=function(){return Math.sqrt(this.rect.width*this.rect.width+this.rect.height*this.rect.height)},u.prototype.getHalfTheDiagonal=function(){return Math.sqrt(this.rect.height*this.rect.height+this.rect.width*this.rect.width)/2},u.prototype.setRect=function(e,t){this.rect.x=e.x,this.rect.y=e.y,this.rect.width=t.width,this.rect.height=t.height},u.prototype.setCenter=function(e,t){this.rect.x=e-this.rect.width/2,this.rect.y=t-this.rect.height/2},u.prototype.setLocation=function(e,t){this.rect.x=e,this.rect.y=t},u.prototype.moveBy=function(e,t){this.rect.x+=e,this.rect.y+=t},u.prototype.getEdgeListToNode=function(e){var t=[],n=this;return n.edges.forEach((function(r){if(r.target==e){if(r.source!=n)throw"Incorrect edge source!";t.push(r)}})),t},u.prototype.getEdgesBetween=function(e){var t=[],n=this;return n.edges.forEach((function(r){if(r.source!=n&&r.target!=n)throw"Incorrect edge source and/or target";r.target!=e&&r.source!=e||t.push(r)})),t},u.prototype.getNeighborsList=function(){var e=new Set,t=this;return t.edges.forEach((function(n){if(n.source==t)e.add(n.target);else{if(n.target!=t)throw"Incorrect incidency!";e.add(n.source)}})),e},u.prototype.withChildren=function(){var e=new Set;if(e.add(this),null!=this.child)for(var t=this.child.getNodes(),n=0;nt&&(this.rect.x-=(this.labelWidth-t)/2,this.setWidth(this.labelWidth)),this.labelHeight>n&&("center"==this.labelPos?this.rect.y-=(this.labelHeight-n)/2:"top"==this.labelPos&&(this.rect.y-=this.labelHeight-n),this.setHeight(this.labelHeight))}}},u.prototype.getInclusionTreeDepth=function(){if(this.inclusionTreeDepth==i.MAX_VALUE)throw"assert failed";return this.inclusionTreeDepth},u.prototype.transform=function(e){var t=this.rect.x;t>o.WORLD_BOUNDARY?t=o.WORLD_BOUNDARY:t<-o.WORLD_BOUNDARY&&(t=-o.WORLD_BOUNDARY);var n=this.rect.y;n>o.WORLD_BOUNDARY?n=o.WORLD_BOUNDARY:n<-o.WORLD_BOUNDARY&&(n=-o.WORLD_BOUNDARY);var r=new l(t,n),i=e.inverseTransformPoint(r);this.setLocation(i.x,i.y)},u.prototype.getLeft=function(){return this.rect.x},u.prototype.getRight=function(){return this.rect.x+this.rect.width},u.prototype.getTop=function(){return this.rect.y},u.prototype.getBottom=function(){return this.rect.y+this.rect.height},u.prototype.getParent=function(){return null==this.owner?null:this.owner.getParent()},e.exports=u},function(e,t,n){"use strict";function r(e,t){null==e&&null==t?(this.x=0,this.y=0):(this.x=e,this.y=t)}r.prototype.getX=function(){return this.x},r.prototype.getY=function(){return this.y},r.prototype.setX=function(e){this.x=e},r.prototype.setY=function(e){this.y=e},r.prototype.getDifference=function(e){return new DimensionD(this.x-e.x,this.y-e.y)},r.prototype.getCopy=function(){return new r(this.x,this.y)},r.prototype.translate=function(e){return this.x+=e.width,this.y+=e.height,this},e.exports=r},function(e,t,n){"use strict";var r=n(2),i=n(10),a=n(0),o=n(6),s=n(3),l=n(1),u=n(13),c=n(12),h=n(11);function d(e,t,n){r.call(this,n),this.estimatedSize=i.MIN_VALUE,this.margin=a.DEFAULT_GRAPH_MARGIN,this.edges=[],this.nodes=[],this.isConnected=!1,this.parent=e,null!=t&&t instanceof o?this.graphManager=t:null!=t&&t instanceof Layout&&(this.graphManager=t.graphManager)}for(var p in d.prototype=Object.create(r.prototype),r)d[p]=r[p];d.prototype.getNodes=function(){return this.nodes},d.prototype.getEdges=function(){return this.edges},d.prototype.getGraphManager=function(){return this.graphManager},d.prototype.getParent=function(){return this.parent},d.prototype.getLeft=function(){return this.left},d.prototype.getRight=function(){return this.right},d.prototype.getTop=function(){return this.top},d.prototype.getBottom=function(){return this.bottom},d.prototype.isConnected=function(){return this.isConnected},d.prototype.add=function(e,t,n){if(null==t&&null==n){var r=e;if(null==this.graphManager)throw"Graph has no graph mgr!";if(this.getNodes().indexOf(r)>-1)throw"Node already in graph!";return r.owner=this,this.getNodes().push(r),r}var i=e;if(!(this.getNodes().indexOf(t)>-1&&this.getNodes().indexOf(n)>-1))throw"Source or target not in graph!";if(t.owner!=n.owner||t.owner!=this)throw"Both owners must be this graph!";return t.owner!=n.owner?null:(i.source=t,i.target=n,i.isInterGraph=!1,this.getEdges().push(i),t.edges.push(i),n!=t&&n.edges.push(i),i)},d.prototype.remove=function(e){var t=e;if(e instanceof s){if(null==t)throw"Node is null!";if(null==t.owner||t.owner!=this)throw"Owner graph is invalid!";if(null==this.graphManager)throw"Owner graph manager is invalid!";for(var n=t.edges.slice(),r=n.length,i=0;i-1&&c>-1))throw"Source and/or target doesn't know this edge!";if(a.source.edges.splice(u,1),a.target!=a.source&&a.target.edges.splice(c,1),-1==(o=a.source.owner.getEdges().indexOf(a)))throw"Not in owner's edge list!";a.source.owner.getEdges().splice(o,1)}},d.prototype.updateLeftTop=function(){for(var e,t,n,r=i.MAX_VALUE,a=i.MAX_VALUE,o=this.getNodes(),s=o.length,l=0;l(e=u.getTop())&&(r=e),a>(t=u.getLeft())&&(a=t)}return r==i.MAX_VALUE?null:(n=null!=o[0].getParent().paddingLeft?o[0].getParent().paddingLeft:this.margin,this.left=a-n,this.top=r-n,new c(this.left,this.top))},d.prototype.updateBounds=function(e){for(var t,n,r,a,o,s=i.MAX_VALUE,l=-i.MAX_VALUE,c=i.MAX_VALUE,h=-i.MAX_VALUE,d=this.nodes,p=d.length,g=0;g(t=f.getLeft())&&(s=t),l<(n=f.getRight())&&(l=n),c>(r=f.getTop())&&(c=r),h<(a=f.getBottom())&&(h=a)}var v=new u(s,c,l-s,h-c);s==i.MAX_VALUE&&(this.left=this.parent.getLeft(),this.right=this.parent.getRight(),this.top=this.parent.getTop(),this.bottom=this.parent.getBottom()),o=null!=d[0].getParent().paddingLeft?d[0].getParent().paddingLeft:this.margin,this.left=v.x-o,this.right=v.x+v.width+o,this.top=v.y-o,this.bottom=v.y+v.height+o},d.calculateBounds=function(e){for(var t,n,r,a,o=i.MAX_VALUE,s=-i.MAX_VALUE,l=i.MAX_VALUE,c=-i.MAX_VALUE,h=e.length,d=0;d(t=p.getLeft())&&(o=t),s<(n=p.getRight())&&(s=n),l>(r=p.getTop())&&(l=r),c<(a=p.getBottom())&&(c=a)}return new u(o,l,s-o,c-l)},d.prototype.getInclusionTreeDepth=function(){return this==this.graphManager.getRoot()?1:this.parent.getInclusionTreeDepth()},d.prototype.getEstimatedSize=function(){if(this.estimatedSize==i.MIN_VALUE)throw"assert failed";return this.estimatedSize},d.prototype.calcEstimatedSize=function(){for(var e=0,t=this.nodes,n=t.length,r=0;r=this.nodes.length){var l=0;i.forEach((function(t){t.owner==e&&l++})),l==this.nodes.length&&(this.isConnected=!0)}}else this.isConnected=!0},e.exports=d},function(e,t,n){"use strict";var r,i=n(1);function a(e){r=n(5),this.layout=e,this.graphs=[],this.edges=[]}a.prototype.addRoot=function(){var e=this.layout.newGraph(),t=this.layout.newNode(null),n=this.add(e,t);return this.setRootGraph(n),this.rootGraph},a.prototype.add=function(e,t,n,r,i){if(null==n&&null==r&&null==i){if(null==e)throw"Graph is null!";if(null==t)throw"Parent node is null!";if(this.graphs.indexOf(e)>-1)throw"Graph already in this graph mgr!";if(this.graphs.push(e),null!=e.parent)throw"Already has a parent!";if(null!=t.child)throw"Already has a child!";return e.parent=t,t.child=e,e}i=n,n=e;var a=(r=t).getOwner(),o=i.getOwner();if(null==a||a.getGraphManager()!=this)throw"Source not in this graph mgr!";if(null==o||o.getGraphManager()!=this)throw"Target not in this graph mgr!";if(a==o)return n.isInterGraph=!1,a.add(n,r,i);if(n.isInterGraph=!0,n.source=r,n.target=i,this.edges.indexOf(n)>-1)throw"Edge already in inter-graph edge list!";if(this.edges.push(n),null==n.source||null==n.target)throw"Edge source and/or target is null!";if(-1!=n.source.edges.indexOf(n)||-1!=n.target.edges.indexOf(n))throw"Edge already in source and/or target incidency list!";return n.source.edges.push(n),n.target.edges.push(n),n},a.prototype.remove=function(e){if(e instanceof r){var t=e;if(t.getGraphManager()!=this)throw"Graph not in this graph mgr";if(t!=this.rootGraph&&(null==t.parent||t.parent.graphManager!=this))throw"Invalid parent node!";for(var n,a=[],o=(a=a.concat(t.getEdges())).length,s=0;s=t.getRight()?n[0]+=Math.min(t.getX()-e.getX(),e.getRight()-t.getRight()):t.getX()<=e.getX()&&t.getRight()>=e.getRight()&&(n[0]+=Math.min(e.getX()-t.getX(),t.getRight()-e.getRight())),e.getY()<=t.getY()&&e.getBottom()>=t.getBottom()?n[1]+=Math.min(t.getY()-e.getY(),e.getBottom()-t.getBottom()):t.getY()<=e.getY()&&t.getBottom()>=e.getBottom()&&(n[1]+=Math.min(e.getY()-t.getY(),t.getBottom()-e.getBottom()));var a=Math.abs((t.getCenterY()-e.getCenterY())/(t.getCenterX()-e.getCenterX()));t.getCenterY()===e.getCenterY()&&t.getCenterX()===e.getCenterX()&&(a=1);var o=a*n[0],s=n[1]/a;n[0]o)return n[0]=r,n[1]=l,n[2]=a,n[3]=b,!1;if(ia)return n[0]=s,n[1]=i,n[2]=y,n[3]=o,!1;if(ra?(n[0]=c,n[1]=h,_=!0):(n[0]=u,n[1]=l,_=!0):D===N&&(r>a?(n[0]=s,n[1]=l,_=!0):(n[0]=d,n[1]=h,_=!0)),-C===N?a>r?(n[2]=m,n[3]=b,T=!0):(n[2]=y,n[3]=v,T=!0):C===N&&(a>r?(n[2]=f,n[3]=v,T=!0):(n[2]=x,n[3]=b,T=!0)),_&&T)return!1;if(r>a?i>o?(A=this.getCardinalDirection(D,N,4),k=this.getCardinalDirection(C,N,2)):(A=this.getCardinalDirection(-D,N,3),k=this.getCardinalDirection(-C,N,1)):i>o?(A=this.getCardinalDirection(-D,N,1),k=this.getCardinalDirection(-C,N,3)):(A=this.getCardinalDirection(D,N,2),k=this.getCardinalDirection(C,N,4)),!_)switch(A){case 1:S=l,L=r+-g/N,n[0]=L,n[1]=S;break;case 2:L=d,S=i+p*N,n[0]=L,n[1]=S;break;case 3:S=h,L=r+g/N,n[0]=L,n[1]=S;break;case 4:L=c,S=i+-p*N,n[0]=L,n[1]=S}if(!T)switch(k){case 1:I=v,M=a+-E/N,n[2]=M,n[3]=I;break;case 2:M=x,I=o+w*N,n[2]=M,n[3]=I;break;case 3:I=b,M=a+E/N,n[2]=M,n[3]=I;break;case 4:M=m,I=o+-w*N,n[2]=M,n[3]=I}}return!1},i.getCardinalDirection=function(e,t,n){return e>t?n:1+n%4},i.getIntersection=function(e,t,n,i){if(null==i)return this.getIntersection2(e,t,n);var a,o,s,l,u,c,h,d=e.x,p=e.y,g=t.x,f=t.y,v=n.x,y=n.y,m=i.x,b=i.y;return 0==(h=(a=f-p)*(l=v-m)-(o=b-y)*(s=d-g))?null:new r((s*(c=m*y-v*b)-l*(u=g*p-d*f))/h,(o*u-a*c)/h)},i.angleOfVector=function(e,t,n,r){var i=void 0;return e!==n?(i=Math.atan((r-t)/(n-e)),n0?1:e<0?-1:0},r.floor=function(e){return e<0?Math.ceil(e):Math.floor(e)},r.ceil=function(e){return e<0?Math.floor(e):Math.ceil(e)},e.exports=r},function(e,t,n){"use strict";function r(){}r.MAX_VALUE=2147483647,r.MIN_VALUE=-2147483648,e.exports=r},function(e,t,n){"use strict";var r=function(){function e(e,t){for(var n=0;n0&&t;){for(s.push(u[0]);s.length>0&&t;){var c=s[0];s.splice(0,1),o.add(c);var h=c.getEdges();for(a=0;a-1&&u.splice(f,1)}o=new Set,l=new Map}else e=[]}return e},d.prototype.createDummyNodesForBendpoints=function(e){for(var t=[],n=e.source,r=this.graphManager.calcLowestCommonAncestor(e.source,e.target),i=0;i0){for(var i=this.edgeToDummyNodes.get(n),a=0;a=0&&t.splice(h,1),c.getNeighborsList().forEach((function(e){if(n.indexOf(e)<0){var t=r.get(e)-1;1==t&&l.push(e),r.set(e,t)}}))}n=n.concat(l),1!=t.length&&2!=t.length||(i=!0,a=t[0])}return a},d.prototype.setGraphManager=function(e){this.graphManager=e},e.exports=d},function(e,t,n){"use strict";function r(){}r.seed=1,r.x=0,r.nextDouble=function(){return r.x=1e4*Math.sin(r.seed++),r.x-Math.floor(r.x)},e.exports=r},function(e,t,n){"use strict";var r=n(4);function i(e,t){this.lworldOrgX=0,this.lworldOrgY=0,this.ldeviceOrgX=0,this.ldeviceOrgY=0,this.lworldExtX=1,this.lworldExtY=1,this.ldeviceExtX=1,this.ldeviceExtY=1}i.prototype.getWorldOrgX=function(){return this.lworldOrgX},i.prototype.setWorldOrgX=function(e){this.lworldOrgX=e},i.prototype.getWorldOrgY=function(){return this.lworldOrgY},i.prototype.setWorldOrgY=function(e){this.lworldOrgY=e},i.prototype.getWorldExtX=function(){return this.lworldExtX},i.prototype.setWorldExtX=function(e){this.lworldExtX=e},i.prototype.getWorldExtY=function(){return this.lworldExtY},i.prototype.setWorldExtY=function(e){this.lworldExtY=e},i.prototype.getDeviceOrgX=function(){return this.ldeviceOrgX},i.prototype.setDeviceOrgX=function(e){this.ldeviceOrgX=e},i.prototype.getDeviceOrgY=function(){return this.ldeviceOrgY},i.prototype.setDeviceOrgY=function(e){this.ldeviceOrgY=e},i.prototype.getDeviceExtX=function(){return this.ldeviceExtX},i.prototype.setDeviceExtX=function(e){this.ldeviceExtX=e},i.prototype.getDeviceExtY=function(){return this.ldeviceExtY},i.prototype.setDeviceExtY=function(e){this.ldeviceExtY=e},i.prototype.transformX=function(e){var t=0,n=this.lworldExtX;return 0!=n&&(t=this.ldeviceOrgX+(e-this.lworldOrgX)*this.ldeviceExtX/n),t},i.prototype.transformY=function(e){var t=0,n=this.lworldExtY;return 0!=n&&(t=this.ldeviceOrgY+(e-this.lworldOrgY)*this.ldeviceExtY/n),t},i.prototype.inverseTransformX=function(e){var t=0,n=this.ldeviceExtX;return 0!=n&&(t=this.lworldOrgX+(e-this.ldeviceOrgX)*this.lworldExtX/n),t},i.prototype.inverseTransformY=function(e){var t=0,n=this.ldeviceExtY;return 0!=n&&(t=this.lworldOrgY+(e-this.ldeviceOrgY)*this.lworldExtY/n),t},i.prototype.inverseTransformPoint=function(e){return new r(this.inverseTransformX(e.x),this.inverseTransformY(e.y))},e.exports=i},function(e,t,n){"use strict";var r=n(15),i=n(7),a=n(0),o=n(8),s=n(9);function l(){r.call(this),this.useSmartIdealEdgeLengthCalculation=i.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION,this.idealEdgeLength=i.DEFAULT_EDGE_LENGTH,this.springConstant=i.DEFAULT_SPRING_STRENGTH,this.repulsionConstant=i.DEFAULT_REPULSION_STRENGTH,this.gravityConstant=i.DEFAULT_GRAVITY_STRENGTH,this.compoundGravityConstant=i.DEFAULT_COMPOUND_GRAVITY_STRENGTH,this.gravityRangeFactor=i.DEFAULT_GRAVITY_RANGE_FACTOR,this.compoundGravityRangeFactor=i.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR,this.displacementThresholdPerNode=3*i.DEFAULT_EDGE_LENGTH/100,this.coolingFactor=i.DEFAULT_COOLING_FACTOR_INCREMENTAL,this.initialCoolingFactor=i.DEFAULT_COOLING_FACTOR_INCREMENTAL,this.totalDisplacement=0,this.oldTotalDisplacement=0,this.maxIterations=i.MAX_ITERATIONS}for(var u in l.prototype=Object.create(r.prototype),r)l[u]=r[u];l.prototype.initParameters=function(){r.prototype.initParameters.call(this,arguments),this.totalIterations=0,this.notAnimatedIterations=0,this.useFRGridVariant=i.DEFAULT_USE_SMART_REPULSION_RANGE_CALCULATION,this.grid=[]},l.prototype.calcIdealEdgeLengths=function(){for(var e,t,n,r,o,s,l=this.getGraphManager().getAllEdges(),u=0;ui.ADAPTATION_LOWER_NODE_LIMIT&&(this.coolingFactor=Math.max(this.coolingFactor*i.COOLING_ADAPTATION_FACTOR,this.coolingFactor-(e-i.ADAPTATION_LOWER_NODE_LIMIT)/(i.ADAPTATION_UPPER_NODE_LIMIT-i.ADAPTATION_LOWER_NODE_LIMIT)*this.coolingFactor*(1-i.COOLING_ADAPTATION_FACTOR))),this.maxNodeDisplacement=i.MAX_NODE_DISPLACEMENT_INCREMENTAL):(e>i.ADAPTATION_LOWER_NODE_LIMIT?this.coolingFactor=Math.max(i.COOLING_ADAPTATION_FACTOR,1-(e-i.ADAPTATION_LOWER_NODE_LIMIT)/(i.ADAPTATION_UPPER_NODE_LIMIT-i.ADAPTATION_LOWER_NODE_LIMIT)*(1-i.COOLING_ADAPTATION_FACTOR)):this.coolingFactor=1,this.initialCoolingFactor=this.coolingFactor,this.maxNodeDisplacement=i.MAX_NODE_DISPLACEMENT),this.maxIterations=Math.max(5*this.getAllNodes().length,this.maxIterations),this.totalDisplacementThreshold=this.displacementThresholdPerNode*this.getAllNodes().length,this.repulsionRange=this.calcRepulsionRange()},l.prototype.calcSpringForces=function(){for(var e,t=this.getAllEdges(),n=0;n0&&void 0!==arguments[0])||arguments[0],s=arguments.length>1&&void 0!==arguments[1]&&arguments[1],l=this.getAllNodes();if(this.useFRGridVariant)for(this.totalIterations%i.GRID_CALCULATION_CHECK_PERIOD==1&&o&&this.updateGrid(),a=new Set,e=0;e(l=t.getEstimatedSize()*this.gravityRangeFactor)||s>l)&&(e.gravitationForceX=-this.gravityConstant*i,e.gravitationForceY=-this.gravityConstant*a):(o>(l=t.getEstimatedSize()*this.compoundGravityRangeFactor)||s>l)&&(e.gravitationForceX=-this.gravityConstant*i*this.compoundGravityConstant,e.gravitationForceY=-this.gravityConstant*a*this.compoundGravityConstant)},l.prototype.isConverged=function(){var e,t=!1;return this.totalIterations>this.maxIterations/3&&(t=Math.abs(this.totalDisplacement-this.oldTotalDisplacement)<2),e=this.totalDisplacement=s.length||u>=s[0].length))for(var c=0;ce}}]),e}();e.exports=a},function(e,t,n){"use strict";var r=function(){function e(e,t){for(var n=0;n2&&void 0!==arguments[2]?arguments[2]:1,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:-1,a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:-1;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.sequence1=t,this.sequence2=n,this.match_score=r,this.mismatch_penalty=i,this.gap_penalty=a,this.iMax=t.length+1,this.jMax=n.length+1,this.grid=new Array(this.iMax);for(var o=0;o=0;n--){var r=this.listeners[n];r.event===e&&r.callback===t&&this.listeners.splice(n,1)}},i.emit=function(e,t){for(var n=0;n{"use strict";n.d(t,{diagram:()=>Ah});var r=n(67895),i=n(57323),a=n(48852),o=n(64994),s=n(96763);function l(e){return l="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},l(e)}function u(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function c(e,t){for(var n=0;ne.length)&&(t=e.length);for(var n=0,r=new Array(t);nt?1:0},H=null!=Object.assign?Object.assign.bind(Object):function(e){for(var t=arguments,n=1;n255)return;t.push(Math.floor(a))}var o=r[1]||r[2]||r[3],s=r[1]&&r[2]&&r[3];if(o&&!s)return;var l=n[4];if(void 0!==l){if((l=parseFloat(l))<0||l>1)return;t.push(l)}}return t}(e)||function(e){var t,n,r,i,a,o,s,l;function u(e,t,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+6*(t-e)*n:n<.5?t:n<2/3?e+(t-e)*(2/3-n)*6:e}var c=new RegExp("^"+U+"$").exec(e);if(c){if((n=parseInt(c[1]))<0?n=(360- -1*n%360)%360:n>360&&(n%=360),n/=360,(r=parseFloat(c[2]))<0||r>100)return;if(r/=100,(i=parseFloat(c[3]))<0||i>100)return;if(i/=100,void 0!==(a=c[4])&&((a=parseFloat(a))<0||a>1))return;if(0===r)o=s=l=Math.round(255*i);else{var h=i<.5?i*(1+r):i+r-i*r,d=2*i-h;o=Math.round(255*u(d,h,n+1/3)),s=Math.round(255*u(d,h,n)),l=Math.round(255*u(d,h,n-1/3))}t=[o,s,l,a]}return t}(e)},$={transparent:[0,0,0,0],aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],grey:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},K=function(e){for(var t=e.map,n=e.keys,r=n.length,i=0;i=t||n<0||h&&e-u>=a}function f(){var e=re();if(g(e))return v(e);s=setTimeout(f,function(e){var n=t-(e-l);return h?Ce(n,a-(e-u)):n}(e))}function v(e){return s=void 0,d&&r?p(e):(r=i=void 0,o)}function y(){var e=re(),n=g(e);if(r=arguments,i=this,l=e,n){if(void 0===s)return function(e){return u=e,s=setTimeout(f,t),c?p(e):o}(l);if(h)return clearTimeout(s),s=setTimeout(f,t),p(l)}return void 0===s&&(s=setTimeout(f,t)),o}return t=Te(t)||0,Q(n)&&(c=!!n.leading,a=(h="maxWait"in n)?De(Te(n.maxWait)||0,t):a,d="trailing"in n?!!n.trailing:d),y.cancel=function(){void 0!==s&&clearTimeout(s),u=0,r=l=i=s=void 0},y.flush=function(){return void 0===s?o:v(re())},y},Ae=v?v.performance:null,ke=Ae&&Ae.now?function(){return Ae.now()}:function(){return Date.now()},Le=function(){if(v){if(v.requestAnimationFrame)return function(e){v.requestAnimationFrame(e)};if(v.mozRequestAnimationFrame)return function(e){v.mozRequestAnimationFrame(e)};if(v.webkitRequestAnimationFrame)return function(e){v.webkitRequestAnimationFrame(e)};if(v.msRequestAnimationFrame)return function(e){v.msRequestAnimationFrame(e)}}return function(e){e&&setTimeout((function(){e(ke())}),1e3/60)}}(),Se=function(e){return Le(e)},Me=ke,Ie=9261,Oe=5381,Pe=function(e){for(var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Ie;!(t=e.next()).done;)n=65599*n+t.value|0;return n},Re=function(e){return 65599*(arguments.length>1&&void 0!==arguments[1]?arguments[1]:Ie)+e|0},Be=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Oe;return(t<<5)+t+e|0},Fe=function(e){return 2097152*e[0]+e[1]},ze=function(e,t){return[Re(e[0],t[0]),Be(e[1],t[1])]},Ge=function(e,t){var n={value:0,done:!1},r=0,i=e.length;return Pe({next:function(){return r=0&&(e[r]!==t||(e.splice(r,1),!n));r--);},ot=function(e){e.splice(0,e.length)},st=function(e,t,n){return n&&(t=z(n,t)),e[t]},lt=function(e,t,n,r){n&&(t=z(n,t)),e[t]=r},ut="undefined"!=typeof Map?Map:function(){function e(){u(this,e),this._obj={}}return h(e,[{key:"set",value:function(e,t){return this._obj[e]=t,this}},{key:"delete",value:function(e){return this._obj[e]=void 0,this}},{key:"clear",value:function(){this._obj={}}},{key:"has",value:function(e){return void 0!==this._obj[e]}},{key:"get",value:function(e){return this._obj[e]}}]),e}(),ct=function(){function e(t){if(u(this,e),this._obj=Object.create(null),this.size=0,null!=t){var n;n=null!=t.instanceString&&t.instanceString()===this.instanceString()?t.toArray():t;for(var r=0;r2&&void 0!==arguments[2])||arguments[2];if(void 0!==e&&void 0!==t&&M(e)){var r=t.group;if(null==r&&(r=t.data&&null!=t.data.source&&null!=t.data.target?"edges":"nodes"),"nodes"===r||"edges"===r){this.length=1,this[0]=this;var i=this._private={cy:e,single:!0,data:t.data||{},position:t.position||{x:0,y:0},autoWidth:void 0,autoHeight:void 0,autoPadding:void 0,compoundBoundsClean:!1,listeners:[],group:r,style:{},rstyle:{},styleCxts:[],styleKeys:{},removed:!0,selected:!!t.selected,selectable:void 0===t.selectable||!!t.selectable,locked:!!t.locked,grabbed:!1,grabbable:void 0===t.grabbable||!!t.grabbable,pannable:void 0===t.pannable?"edges"===r:!!t.pannable,active:!1,classes:new ht,animation:{current:[],queue:[]},rscratch:{},scratch:t.scratch||{},edges:[],children:[],parent:t.parent&&t.parent.isNode()?t.parent:null,traversalCache:{},backgrounding:!1,bbCache:null,bbCacheShift:{x:0,y:0},bodyBounds:null,overlayBounds:null,labelBounds:{all:null,source:null,target:null,main:null},arrowBounds:{source:null,target:null,"mid-source":null,"mid-target":null}};if(null==i.position.x&&(i.position.x=0),null==i.position.y&&(i.position.y=0),t.renderedPosition){var a=t.renderedPosition,o=e.pan(),s=e.zoom();i.position={x:(a.x-o.x)/s,y:(a.y-o.y)/s}}var l=[];D(t.classes)?l=t.classes:_(t.classes)&&(l=t.classes.split(/\s+/));for(var u=0,c=l.length;ut?1:0},u=function(e,t,i,a,o){var s;if(null==i&&(i=0),null==o&&(o=n),i<0)throw new Error("lo must be non-negative");for(null==a&&(a=e.length);in;0<=n?t++:t--)u.push(t);return u}.apply(this).reverse()).length;af;0<=f?++d:--d)v.push(a(e,r));return v},g=function(e,t,r,i){var a,o,s;for(null==i&&(i=n),a=e[r];r>t&&i(a,o=e[s=r-1>>1])<0;)e[r]=o,r=s;return e[r]=a},f=function(e,t,r){var i,a,o,s,l;for(null==r&&(r=n),a=e.length,l=t,o=e[t],i=2*t+1;i0;){var w=y.pop(),E=f(w),T=w.id();if(h[T]=E,E!==1/0)for(var D=w.neighborhood().intersect(p),N=0;N0)for(n.unshift(t);c[i];){var a=c[i];n.unshift(a.edge),n.unshift(a.node),i=(r=a.node).id()}return o.spawn(n)}}}},bt={kruskal:function(e){e=e||function(e){return 1};for(var t=this.byGroup(),n=t.nodes,r=t.edges,i=n.length,a=new Array(i),o=n,s=function(e){for(var t=0;t0;){if(l=f.pop(),u=l.id(),v.delete(u),w++,u===h){for(var E=[],_=i,T=h,D=m[T];E.unshift(_),null!=D&&E.unshift(D),null!=(_=y[T]);)D=m[T=_.id()];return{found:!0,distance:d[u],path:this.spawn(E),steps:w}}g[u]=!0;for(var C=l._private.edges,N=0;NN&&(p[C]=N,y[C]=D,m[C]=x),!i){var A=D*u+T;!i&&p[A]>N&&(p[A]=N,y[A]=T,m[A]=x)}}}for(var k=0;k1&&void 0!==arguments[1]?arguments[1]:a,r=[],i=m(e);;){if(null==i)return t.spawn();var o=y(i),l=o.edge,u=o.pred;if(r.unshift(i[0]),i.same(n)&&r.length>0)break;null!=l&&r.unshift(l),i=u}return s.spawn(r)},hasNegativeWeightCycle:g,negativeWeightCycles:f}}},Ct=Math.sqrt(2),Nt=function(e,t,n){0===n.length&&Ze("Karger-Stein must be run on a connected (sub)graph");for(var r=n[e],i=r[1],a=r[2],o=t[i],s=t[a],l=n,u=l.length-1;u>=0;u--){var c=l[u],h=c[1],d=c[2];(t[h]===o&&t[d]===s||t[h]===s&&t[d]===o)&&l.splice(u,1)}for(var p=0;pr;){var i=Math.floor(Math.random()*t.length);t=Nt(i,e,t),n--}return t},kt={kargerStein:function(){var e=this,t=this.byGroup(),n=t.nodes,r=t.edges;r.unmergeBy((function(e){return e.isLoop()}));var i=n.length,a=r.length,o=Math.ceil(Math.pow(Math.log(i)/Math.LN2,2)),s=Math.floor(i/Ct);if(!(i<2)){for(var l=[],u=0;u0?1:e<0?-1:0},Rt=function(e,t){return Math.sqrt(Bt(e,t))},Bt=function(e,t){var n=t.x-e.x,r=t.y-e.y;return n*n+r*r},Ft=function(e){for(var t=e.length,n=0,r=0;r=e.x1&&e.y2>=e.y1)return{x1:e.x1,y1:e.y1,x2:e.x2,y2:e.y2,w:e.x2-e.x1,h:e.y2-e.y1};if(null!=e.w&&null!=e.h&&e.w>=0&&e.h>=0)return{x1:e.x1,y1:e.y1,x2:e.x1+e.w,y2:e.y1+e.h,w:e.w,h:e.h}}},Xt=function(e,t){e.x1=Math.min(e.x1,t.x1),e.x2=Math.max(e.x2,t.x2),e.w=e.x2-e.x1,e.y1=Math.min(e.y1,t.y1),e.y2=Math.max(e.y2,t.y2),e.h=e.y2-e.y1},Ut=function(e,t,n){e.x1=Math.min(e.x1,t),e.x2=Math.max(e.x2,t),e.w=e.x2-e.x1,e.y1=Math.min(e.y1,n),e.y2=Math.max(e.y2,n),e.h=e.y2-e.y1},jt=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return e.x1-=t,e.x2+=t,e.y1-=t,e.y2+=t,e.w=e.x2-e.x1,e.h=e.y2-e.y1,e},qt=function(e){var t,n,r,i,a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[0];if(1===a.length)t=n=r=i=a[0];else if(2===a.length)t=r=a[0],i=n=a[1];else if(4===a.length){var o=p(a,4);t=o[0],n=o[1],r=o[2],i=o[3]}return e.x1-=i,e.x2+=n,e.y1-=t,e.y2+=r,e.w=e.x2-e.x1,e.h=e.y2-e.y1,e},Ht=function(e,t){e.x1=t.x1,e.y1=t.y1,e.x2=t.x2,e.y2=t.y2,e.w=e.x2-e.x1,e.h=e.y2-e.y1},Wt=function(e,t){return!(e.x1>t.x2)&&(!(t.x1>e.x2)&&(!(e.x2t.y2)&&!(t.y1>e.y2)))))))},$t=function(e,t,n){return e.x1<=t&&t<=e.x2&&e.y1<=n&&n<=e.y2},Kt=function(e,t){return $t(e,t.x1,t.y1)&&$t(e,t.x2,t.y2)},Zt=function(e,t,n,r,i,a,o){var s,l,u=arguments.length>7&&void 0!==arguments[7]?arguments[7]:"auto",c="auto"===u?vn(i,a):u,h=i/2,d=a/2,p=(c=Math.min(c,h,d))!==h,g=c!==d;if(p){var f=r-d-o;if((s=cn(e,t,n,r,n-h+c-o,f,n+h-c+o,f,!1)).length>0)return s}if(g){var v=n+h+o;if((s=cn(e,t,n,r,v,r-d+c-o,v,r+d-c+o,!1)).length>0)return s}if(p){var y=r+d+o;if((s=cn(e,t,n,r,n-h+c-o,y,n+h-c+o,y,!1)).length>0)return s}if(g){var m=n-h-o;if((s=cn(e,t,n,r,m,r-d+c-o,m,r+d-c+o,!1)).length>0)return s}var b=n-h+c,x=r-d+c;if((l=ln(e,t,n,r,b,x,c+o)).length>0&&l[0]<=b&&l[1]<=x)return[l[0],l[1]];var w=n+h-c,E=r-d+c;if((l=ln(e,t,n,r,w,E,c+o)).length>0&&l[0]>=w&&l[1]<=E)return[l[0],l[1]];var _=n+h-c,T=r+d-c;if((l=ln(e,t,n,r,_,T,c+o)).length>0&&l[0]>=_&&l[1]>=T)return[l[0],l[1]];var D=n-h+c,C=r+d-c;return(l=ln(e,t,n,r,D,C,c+o)).length>0&&l[0]<=D&&l[1]>=C?[l[0],l[1]]:[]},Qt=function(e,t,n,r,i,a,o){var s=o,l=Math.min(n,i),u=Math.max(n,i),c=Math.min(r,a),h=Math.max(r,a);return l-s<=e&&e<=u+s&&c-s<=t&&t<=h+s},Jt=function(e,t,n,r,i,a,o,s,l){var u=Math.min(n,o,i)-l,c=Math.max(n,o,i)+l,h=Math.min(r,s,a)-l,d=Math.max(r,s,a)+l;return!(ec||td)},en=function(e,t,n,r,i,a,o,s){var l=[];!function(e,t,n,r,i){var a,o,s,l,u,c,h,d;0===e&&(e=1e-5),s=-27*(r/=e)+(t/=e)*(9*(n/=e)-t*t*2),a=(o=(3*n-t*t)/9)*o*o+(s/=54)*s,i[1]=0,h=t/3,a>0?(u=(u=s+Math.sqrt(a))<0?-Math.pow(-u,1/3):Math.pow(u,1/3),c=(c=s-Math.sqrt(a))<0?-Math.pow(-c,1/3):Math.pow(c,1/3),i[0]=-h+u+c,h+=(u+c)/2,i[4]=i[2]=-h,h=Math.sqrt(3)*(-c+u)/2,i[3]=h,i[5]=-h):(i[5]=i[3]=0,0===a?(d=s<0?-Math.pow(-s,1/3):Math.pow(s,1/3),i[0]=2*d-h,i[4]=i[2]=-(d+h)):(l=(o=-o)*o*o,l=Math.acos(s/Math.sqrt(l)),d=2*Math.sqrt(o),i[0]=-h+d*Math.cos(l/3),i[2]=-h+d*Math.cos((l+2*Math.PI)/3),i[4]=-h+d*Math.cos((l+4*Math.PI)/3)))}(1*n*n-4*n*i+2*n*o+4*i*i-4*i*o+o*o+r*r-4*r*a+2*r*s+4*a*a-4*a*s+s*s,9*n*i-3*n*n-3*n*o-6*i*i+3*i*o+9*r*a-3*r*r-3*r*s-6*a*a+3*a*s,3*n*n-6*n*i+n*o-n*e+2*i*i+2*i*e-o*e+3*r*r-6*r*a+r*s-r*t+2*a*a+2*a*t-s*t,1*n*i-n*n+n*e-i*e+r*a-r*r+r*t-a*t,l);for(var u=[],c=0;c<6;c+=2)Math.abs(l[c+1])<1e-7&&l[c]>=0&&l[c]<=1&&u.push(l[c]);u.push(1),u.push(0);for(var h,d,p,g=-1,f=0;f=0?pl?(e-i)*(e-i)+(t-a)*(t-a):u-h},nn=function(e,t,n){for(var r,i,a,o,s=0,l=0;l=e&&e>=a||r<=e&&e<=a))continue;(e-r)/(a-r)*(o-i)+i>t&&s++}return s%2!=0},rn=function(e,t,n,r,i,a,o,s,l){var u,c=new Array(n.length);null!=s[0]?(u=Math.atan(s[1]/s[0]),s[0]<0?u+=Math.PI/2:u=-u-Math.PI/2):u=s;for(var h,d=Math.cos(-u),p=Math.sin(-u),g=0;g0){var f=on(c,-l);h=an(f)}else h=c;return nn(e,t,h)},an=function(e){for(var t,n,r,i,a,o,s,l,u=new Array(e.length/2),c=0;c=0&&g<=1&&v.push(g),f>=0&&f<=1&&v.push(f),0===v.length)return[];var y=v[0]*s[0]+e,m=v[0]*s[1]+t;return v.length>1?v[0]==v[1]?[y,m]:[y,m,v[1]*s[0]+e,v[1]*s[1]+t]:[y,m]},un=function(e,t,n){return t<=e&&e<=n||n<=e&&e<=t?e:e<=t&&t<=n||n<=t&&t<=e?t:n},cn=function(e,t,n,r,i,a,o,s,l){var u=e-i,c=n-e,h=o-i,d=t-a,p=r-t,g=s-a,f=h*d-g*u,v=c*d-p*u,y=g*c-h*p;if(0!==y){var m=f/y,b=v/y,x=-.001;return x<=m&&m<=1.001&&x<=b&&b<=1.001||l?[e+m*c,t+m*p]:[]}return 0===f||0===v?un(e,n,o)===o?[o,s]:un(e,n,i)===i?[i,a]:un(i,o,n)===n?[n,r]:[]:[]},hn=function(e,t,n,r,i,a,o,s){var l,u,c,h,d,p,g=[],f=new Array(n.length),v=!0;if(null==a&&(v=!1),v){for(var y=0;y0){var m=on(f,-s);u=an(m)}else u=f}else u=n;for(var b=0;bu&&(u=t)},h=function(e){return l[e]},d=0;d0?b.edgesTo(m)[0]:m.edgesTo(b)[0];var w=r(x);m=m.id(),d[m]>d[v]+w&&(d[m]=d[v]+w,p.nodes.indexOf(m)<0?p.push(m):p.updateItem(m),u[m]=0,l[m]=[]),d[m]==d[v]+w&&(u[m]=u[m]+u[v],l[m].push(v))}else for(var E=0;E0;){for(var C=n.pop(),N=0;N0&&o.push(n[s]);0!==o.length&&i.push(r.collection(o))}return i}(c,l,t,r);return b=function(e){for(var t=0;t5&&void 0!==arguments[5]?arguments[5]:Bn,o=r,s=0;s=2?Xn(e,t,n,0,Gn,Yn):Xn(e,t,n,0,zn)},squaredEuclidean:function(e,t,n){return Xn(e,t,n,0,Gn)},manhattan:function(e,t,n){return Xn(e,t,n,0,zn)},max:function(e,t,n){return Xn(e,t,n,-1/0,Vn)}};function jn(e,t,n,r,i,a){var o;return o=T(e)?e:Un[e]||Un.euclidean,0===t&&T(e)?o(i,a):o(t,n,r,i,a)}Un["squared-euclidean"]=Un.squaredEuclidean,Un.squaredeuclidean=Un.squaredEuclidean;var qn=it({k:2,m:2,sensitivityThreshold:1e-4,distance:"euclidean",maxIterations:10,attributes:[],testMode:!1,testCentroids:null}),Hn=function(e){return qn(e)},Wn=function(e,t,n,r,i){var a="kMedoids"!==i?function(e){return n[e]}:function(e){return r[e](n)},o=n,s=t;return jn(e,r.length,a,(function(e){return r[e](t)}),o,s)},$n=function(e,t,n){for(var r=n.length,i=new Array(r),a=new Array(r),o=new Array(t),s=null,l=0;ln)return!1}return!0},er=function(e,t,n){for(var r=0;ri&&(i=t[l][u],a=u);o[a].push(e[l])}for(var c=0;c=i.threshold||"dendrogram"===i.mode&&1===e.length)return!1;var p,g=t[o],f=t[r[o]];p="dendrogram"===i.mode?{left:g,right:f,key:g.key}:{value:g.value.concat(f.value),key:g.key},e[g.index]=p,e.splice(f.index,1),t[g.key]=p;for(var v=0;vn[f.key][y.key]&&(a=n[f.key][y.key])):"max"===i.linkage?(a=n[g.key][y.key],n[g.key][y.key]1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e.length,r=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],i=!(arguments.length>5&&void 0!==arguments[5])||arguments[5];arguments.length>3&&void 0!==arguments[3]&&!arguments[3]?(n0&&e.splice(0,t)):e=e.slice(t,n);for(var a=0,o=e.length-1;o>=0;o--){var s=e[o];i?isFinite(s)||(e[o]=-1/0,a++):e.splice(o,1)}r&&e.sort((function(e,t){return e-t}));var l=e.length,u=Math.floor(l/2);return l%2!=0?e[u+1+a]:(e[u-1+a]+e[u+a])/2}(e):"mean"===t?function(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e.length,r=0,i=0,a=t;a1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e.length,r=1/0,i=t;i1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e.length,r=-1/0,i=t;io&&(a=l,o=t[i*e+l])}a>0&&r.push(a)}for(var u=0;u=C?(A=C,C=L,k=S):L>A&&(A=L);for(var M=0;M0?1:0;_[E%u.minIterations*t+F]=z,B+=z}if(B>0&&(E>=u.minIterations-1||E==u.maxIterations-1)){for(var G=0,Y=0;Y0&&r.push(i);return r}(t,a,o),U=function(e,t,n){for(var r=mr(e,t,n),i=0;il&&(s=u,l=c)}n[i]=a[s]}return mr(e,t,n)}(t,r,X),j={},q=0;q1||o>1)&&(u=!0),c[t]=[],e.outgoers().forEach((function(e){e.isEdge()&&c[t].push(e.id())}))}else h[t]=[void 0,e.target().id()]})):l.forEach((function(e){var t=e.id();e.isNode()?(e.degree(!0)%2&&(n?r?u=!0:r=t:n=t),c[t]=[],e.connectedEdges().forEach((function(e){return c[t].push(e.id())}))):h[t]=[e.source().id(),e.target().id()]}));var d={found:!1,trail:void 0};if(u)return d;if(r&&n)if(s){if(i&&r!=i)return d;i=r}else{if(i&&r!=i&&n!=i)return d;i||(i=r)}else i||(i=l[0].id());var p=function(e){for(var t,n,r,i=e,a=[e];c[i].length;)t=c[i].shift(),n=h[t][0],i!=(r=h[t][1])?(c[r]=c[r].filter((function(e){return e!=t})),i=r):s||i==n||(c[n]=c[n].filter((function(e){return e!=t})),i=n),a.unshift(t),a.unshift(i);return a},g=[],f=[];for(f=p(i);1!=f.length;)0==c[f[0]].length?(g.unshift(l.getElementById(f.shift())),g.unshift(l.getElementById(f.shift()))):f=p(f.shift()).concat(f);for(var v in g.unshift(l.getElementById(f.shift())),c)if(c[v].length)return d;return d.found=!0,d.trail=this.spawn(g,!0),d}},_r=function(){var e=this,t={},n=0,r=0,i=[],a=[],o={},s=function s(l,u,c){l===c&&(r+=1),t[u]={id:n,low:n++,cutVertex:!1};var h,d,p,g,f=e.getElementById(u).connectedEdges().intersection(e);0===f.size()?i.push(e.spawn(e.getElementById(u))):f.forEach((function(n){h=n.source().id(),d=n.target().id(),(p=h===u?d:h)!==c&&(g=n.id(),o[g]||(o[g]=!0,a.push({x:u,y:p,edge:n})),p in t?t[u].low=Math.min(t[u].low,t[p].id):(s(l,p,u),t[u].low=Math.min(t[u].low,t[p].low),t[u].id<=t[p].low&&(t[u].cutVertex=!0,function(n,r){for(var o=a.length-1,s=[],l=e.spawn();a[o].x!=n||a[o].y!=r;)s.push(a.pop().edge),o--;s.push(a.pop().edge),s.forEach((function(n){var r=n.connectedNodes().intersection(e);l.merge(n),r.forEach((function(n){var r=n.id(),i=n.connectedEdges().intersection(e);l.merge(n),t[r].cutVertex?l.merge(i.filter((function(e){return e.isLoop()}))):l.merge(i)}))})),i.push(l)}(u,p))))}))};e.forEach((function(e){if(e.isNode()){var n=e.id();n in t||(r=0,s(n,n),t[n].cutVertex=r>1)}}));var l=Object.keys(t).filter((function(e){return t[e].cutVertex})).map((function(t){return e.getElementById(t)}));return{cut:e.spawn(l),components:i}},Tr=function(){var e=this,t={},n=0,r=[],i=[],a=e.spawn(e),o=function o(s){if(i.push(s),t[s]={index:n,low:n++,explored:!1},e.getElementById(s).connectedEdges().intersection(e).forEach((function(e){var n=e.target().id();n!==s&&(n in t||o(n),t[n].explored||(t[s].low=Math.min(t[s].low,t[n].low)))})),t[s].index===t[s].low){for(var l=e.spawn();;){var u=i.pop();if(l.merge(e.getElementById(u)),t[u].low=t[s].index,t[u].explored=!0,u===s)break}var c=l.edgesWith(l),h=l.merge(c);r.push(h),a=a.difference(h)}};return e.forEach((function(e){if(e.isNode()){var n=e.id();n in t||o(n)}})),{cut:a,components:r}},Dr={};[gt,mt,bt,wt,_t,Dt,kt,xn,En,Tn,Cn,Rn,or,gr,xr,Er,{hopcroftTarjanBiconnected:_r,htbc:_r,htb:_r,hopcroftTarjanBiconnectedComponents:_r},{tarjanStronglyConnected:Tr,tsc:Tr,tscc:Tr,tarjanStronglyConnectedComponents:Tr}].forEach((function(e){H(Dr,e)}));var Cr=function e(t){if(!(this instanceof e))return new e(t);this.id="Thenable/1.0.7",this.state=0,this.fulfillValue=void 0,this.rejectReason=void 0,this.onFulfilled=[],this.onRejected=[],this.proxy={then:this.then.bind(this)},"function"==typeof t&&t.call(this,this.fulfill.bind(this),this.reject.bind(this))};Cr.prototype={fulfill:function(e){return Nr(this,1,"fulfillValue",e)},reject:function(e){return Nr(this,2,"rejectReason",e)},then:function(e,t){var n=this,r=new Cr;return n.onFulfilled.push(Lr(e,r,"fulfill")),n.onRejected.push(Lr(t,r,"reject")),Ar(n),r.proxy}};var Nr=function(e,t,n,r){return 0===e.state&&(e.state=t,e[n]=r,Ar(e)),e},Ar=function(e){1===e.state?kr(e,"onFulfilled",e.fulfillValue):2===e.state&&kr(e,"onRejected",e.rejectReason)},kr=function(e,t,n){if(0!==e[t].length){var r=e[t];e[t]=[];var i=function(){for(var e=0;e0:void 0}},clearQueue:function(){return function(){var e=this,t=void 0!==e.length?e:[e];if(!(this._private.cy||this).styleEnabled())return this;for(var n=0;n-1};var bi=function(e,t){var n=this.__data__,r=gi(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this};function xi(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t-1&&e%1==0&&e0&&this.spawn(r).updateStyle().emit("class"),t},addClass:function(e){return this.toggleClass(e,!0)},hasClass:function(e){var t=this[0];return null!=t&&t._private.classes.has(e)},toggleClass:function(e,t){D(e)||(e=e.match(/\S+/g)||[]);for(var n=this,r=void 0===t,i=[],a=0,o=n.length;a0&&this.spawn(i).updateStyle().emit("class"),n},removeClass:function(e){return this.toggleClass(e,!1)},flashClass:function(e,t){var n=this;if(null==t)t=250;else if(0===t)return n;return n.addClass(e),setTimeout((function(){n.removeClass(e)}),t),n}};la.className=la.classNames=la.classes;var ua={metaChar:"[\\!\\\"\\#\\$\\%\\&\\'\\(\\)\\*\\+\\,\\.\\/\\:\\;\\<\\=\\>\\?\\@\\[\\]\\^\\`\\{\\|\\}\\~]",comparatorOp:"=|\\!=|>|>=|<|<=|\\$=|\\^=|\\*=",boolOp:"\\?|\\!|\\^",string:"\"(?:\\\\\"|[^\"])*\"|'(?:\\\\'|[^'])*'",number:Y,meta:"degree|indegree|outdegree",separator:"\\s*,\\s*",descendant:"\\s+",child:"\\s+>\\s+",subject:"\\$",group:"node|edge|\\*",directedEdge:"\\s+->\\s+",undirectedEdge:"\\s+<->\\s+"};ua.variable="(?:[\\w-.]|(?:\\\\"+ua.metaChar+"))+",ua.className="(?:[\\w-]|(?:\\\\"+ua.metaChar+"))+",ua.value=ua.string+"|"+ua.number,ua.id=ua.variable,function(){var e,t,n;for(e=ua.comparatorOp.split("|"),n=0;n=0||"="!==t&&(ua.comparatorOp+="|\\!"+t)}();var ca=0,ha=1,da=2,pa=3,ga=4,fa=5,va=6,ya=7,ma=8,ba=9,xa=10,wa=11,Ea=12,_a=13,Ta=14,Da=15,Ca=16,Na=17,Aa=18,ka=19,La=20,Sa=[{selector:":selected",matches:function(e){return e.selected()}},{selector:":unselected",matches:function(e){return!e.selected()}},{selector:":selectable",matches:function(e){return e.selectable()}},{selector:":unselectable",matches:function(e){return!e.selectable()}},{selector:":locked",matches:function(e){return e.locked()}},{selector:":unlocked",matches:function(e){return!e.locked()}},{selector:":visible",matches:function(e){return e.visible()}},{selector:":hidden",matches:function(e){return!e.visible()}},{selector:":transparent",matches:function(e){return e.transparent()}},{selector:":grabbed",matches:function(e){return e.grabbed()}},{selector:":free",matches:function(e){return!e.grabbed()}},{selector:":removed",matches:function(e){return e.removed()}},{selector:":inside",matches:function(e){return!e.removed()}},{selector:":grabbable",matches:function(e){return e.grabbable()}},{selector:":ungrabbable",matches:function(e){return!e.grabbable()}},{selector:":animated",matches:function(e){return e.animated()}},{selector:":unanimated",matches:function(e){return!e.animated()}},{selector:":parent",matches:function(e){return e.isParent()}},{selector:":childless",matches:function(e){return e.isChildless()}},{selector:":child",matches:function(e){return e.isChild()}},{selector:":orphan",matches:function(e){return e.isOrphan()}},{selector:":nonorphan",matches:function(e){return e.isChild()}},{selector:":compound",matches:function(e){return e.isNode()?e.isParent():e.source().isParent()||e.target().isParent()}},{selector:":loop",matches:function(e){return e.isLoop()}},{selector:":simple",matches:function(e){return e.isSimple()}},{selector:":active",matches:function(e){return e.active()}},{selector:":inactive",matches:function(e){return!e.active()}},{selector:":backgrounding",matches:function(e){return e.backgrounding()}},{selector:":nonbackgrounding",matches:function(e){return!e.backgrounding()}}].sort((function(e,t){return function(e,t){return-1*q(e,t)}(e.selector,t.selector)})),Ma=function(){for(var e,t={},n=0;n0&&u.edgeCount>0)return Je("The selector `"+e+"` is invalid because it uses both a compound selector and an edge selector"),!1;if(u.edgeCount>1)return Je("The selector `"+e+"` is invalid because it uses multiple edge selectors"),!1;1===u.edgeCount&&Je("The selector `"+e+"` is deprecated. Edge selectors do not take effect on changes to source and target nodes after an edge is added, for performance reasons. Use a class or data selector on edges instead, updating the class or data of an edge when your app detects a change in source or target nodes.")}return!0},toString:function(){if(null!=this.toStringCache)return this.toStringCache;for(var e=function(e){return null==e?"":e},t=function(t){return _(t)?'"'+t+'"':e(t)},n=function(e){return" "+e+" "},r=function(r,a){var o=r.type,s=r.value;switch(o){case ca:var l=e(s);return l.substring(0,l.length-1);case pa:var u=r.field,c=r.operator;return"["+u+n(e(c))+t(s)+"]";case fa:var h=r.operator,d=r.field;return"["+e(h)+d+"]";case ga:return"["+r.field+"]";case va:var p=r.operator;return"[["+r.field+n(e(p))+t(s)+"]]";case ya:return s;case ma:return"#"+s;case ba:return"."+s;case Na:case Da:return i(r.parent,a)+n(">")+i(r.child,a);case Aa:case Ca:return i(r.ancestor,a)+" "+i(r.descendant,a);case ka:var g=i(r.left,a),f=i(r.subject,a),v=i(r.right,a);return g+(g.length>0?" ":"")+f+v;case La:return""}},i=function(e,t){return e.checks.reduce((function(n,i,a){return n+(t===e&&0===a?"$":"")+r(i,t)}),"")},a="",o=0;o1&&o=0&&(t=t.replace("!",""),c=!0),t.indexOf("@")>=0&&(t=t.replace("@",""),u=!0),(o||l||u)&&(i=o||s?""+e:"",a=""+n),u&&(e=i=i.toLowerCase(),n=a=a.toLowerCase()),t){case"*=":r=i.indexOf(a)>=0;break;case"$=":r=i.indexOf(a,i.length-a.length)>=0;break;case"^=":r=0===i.indexOf(a);break;case"=":r=e===n;break;case">":h=!0,r=e>n;break;case">=":h=!0,r=e>=n;break;case"<":h=!0,r=e0;){var u=i.shift();t(u),a.add(u.id()),o&&r(i,a,u)}return e}function Qa(e,t,n){if(n.isParent())for(var r=n._private.children,i=0;i1&&void 0!==arguments[1])||arguments[1],Qa)},Ka.forEachUp=function(e){return Za(this,e,!(arguments.length>1&&void 0!==arguments[1])||arguments[1],Ja)},Ka.forEachUpAndDown=function(e){return Za(this,e,!(arguments.length>1&&void 0!==arguments[1])||arguments[1],eo)},Ka.ancestors=Ka.parents,(Ha=Wa={data:oa.data({field:"data",bindingEvent:"data",allowBinding:!0,allowSetting:!0,settingEvent:"data",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,immutableKeys:{id:!0,source:!0,target:!0,parent:!0},updateStyle:!0}),removeData:oa.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,immutableKeys:{id:!0,source:!0,target:!0,parent:!0},updateStyle:!0}),scratch:oa.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:oa.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),rscratch:oa.data({field:"rscratch",allowBinding:!1,allowSetting:!0,settingTriggersEvent:!1,allowGetting:!0}),removeRscratch:oa.removeData({field:"rscratch",triggerEvent:!1}),id:function(){var e=this[0];if(e)return e._private.data.id}}).attr=Ha.data,Ha.removeAttr=Ha.removeData;var to,no,ro=Wa,io={};function ao(e){return function(t){var n=this;if(void 0===t&&(t=!0),0!==n.length&&n.isNode()&&!n.removed()){for(var r=0,i=n[0],a=i._private.edges,o=0;ot})),minIndegree:oo("indegree",(function(e,t){return et})),minOutdegree:oo("outdegree",(function(e,t){return et}))}),H(io,{totalDegree:function(e){for(var t=0,n=this.nodes(),r=0;r0,c=u;u&&(l=l[0]);var h=c?l.position():{x:0,y:0};return i={x:s.x-h.x,y:s.y-h.y},void 0===e?i:i[e]}for(var d=0;d0,v=f;f&&(g=g[0]);var y=v?g.position():{x:0,y:0};void 0!==t?p.position(e,t+y[e]):void 0!==i&&p.position({x:i.x+y.x,y:i.y+y.y})}}else if(!a)return;return this}},to.modelPosition=to.point=to.position,to.modelPositions=to.points=to.positions,to.renderedPoint=to.renderedPosition,to.relativePoint=to.relativePosition;var uo,co,ho=no;uo=co={},co.renderedBoundingBox=function(e){var t=this.boundingBox(e),n=this.cy(),r=n.zoom(),i=n.pan(),a=t.x1*r+i.x,o=t.x2*r+i.x,s=t.y1*r+i.y,l=t.y2*r+i.y;return{x1:a,x2:o,y1:s,y2:l,w:o-a,h:l-s}},co.dirtyCompoundBoundsCache=function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=this.cy();return t.styleEnabled()&&t.hasCompoundNodes()?(this.forEachUp((function(t){if(t.isParent()){var n=t._private;n.compoundBoundsClean=!1,n.bbCache=null,e||t.emitAndNotify("bounds")}})),this):this},co.updateCompoundBounds=function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=this.cy();if(!t.styleEnabled()||!t.hasCompoundNodes())return this;if(!e&&t.batching())return this;function n(e){if(e.isParent()){var t=e._private,n=e.children(),r="include"===e.pstyle("compound-sizing-wrt-labels").value,i={width:{val:e.pstyle("min-width").pfValue,left:e.pstyle("min-width-bias-left"),right:e.pstyle("min-width-bias-right")},height:{val:e.pstyle("min-height").pfValue,top:e.pstyle("min-height-bias-top"),bottom:e.pstyle("min-height-bias-bottom")}},a=n.boundingBox({includeLabels:r,includeOverlays:!1,useCache:!1}),o=t.position;0!==a.w&&0!==a.h||((a={w:e.pstyle("width").pfValue,h:e.pstyle("height").pfValue}).x1=o.x-a.w/2,a.x2=o.x+a.w/2,a.y1=o.y-a.h/2,a.y2=o.y+a.h/2);var s=i.width.left.value;"px"===i.width.left.units&&i.width.val>0&&(s=100*s/i.width.val);var l=i.width.right.value;"px"===i.width.right.units&&i.width.val>0&&(l=100*l/i.width.val);var u=i.height.top.value;"px"===i.height.top.units&&i.height.val>0&&(u=100*u/i.height.val);var c=i.height.bottom.value;"px"===i.height.bottom.units&&i.height.val>0&&(c=100*c/i.height.val);var h=y(i.width.val-a.w,s,l),d=h.biasDiff,p=h.biasComplementDiff,g=y(i.height.val-a.h,u,c),f=g.biasDiff,v=g.biasComplementDiff;t.autoPadding=function(e,t,n,r){if("%"!==n.units)return"px"===n.units?n.pfValue:0;switch(r){case"width":return e>0?n.pfValue*e:0;case"height":return t>0?n.pfValue*t:0;case"average":return e>0&&t>0?n.pfValue*(e+t)/2:0;case"min":return e>0&&t>0?e>t?n.pfValue*t:n.pfValue*e:0;case"max":return e>0&&t>0?e>t?n.pfValue*e:n.pfValue*t:0;default:return 0}}(a.w,a.h,e.pstyle("padding"),e.pstyle("padding-relative-to").value),t.autoWidth=Math.max(a.w,i.width.val),o.x=(-d+a.x1+a.x2+p)/2,t.autoHeight=Math.max(a.h,i.height.val),o.y=(-f+a.y1+a.y2+v)/2}function y(e,t,n){var r=0,i=0,a=t+n;return e>0&&a>0&&(r=t/a*e,i=n/a*e),{biasDiff:r,biasComplementDiff:i}}}for(var r=0;re.x2?r:e.x2,e.y1=ne.y2?i:e.y2,e.w=e.x2-e.x1,e.h=e.y2-e.y1)},fo=function(e,t){return null==t?e:go(e,t.x1,t.y1,t.x2,t.y2)},vo=function(e,t,n){return st(e,t,n)},yo=function(e,t,n){if(!t.cy().headless()){var r,i,a=t._private,o=a.rstyle,s=o.arrowWidth/2;if("none"!==t.pstyle(n+"-arrow-shape").value){"source"===n?(r=o.srcX,i=o.srcY):"target"===n?(r=o.tgtX,i=o.tgtY):(r=o.midX,i=o.midY);var l=a.arrowBounds=a.arrowBounds||{},u=l[n]=l[n]||{};u.x1=r-s,u.y1=i-s,u.x2=r+s,u.y2=i+s,u.w=u.x2-u.x1,u.h=u.y2-u.y1,jt(u,1),go(e,u.x1,u.y1,u.x2,u.y2)}}},mo=function(e,t,n){if(!t.cy().headless()){var r;r=n?n+"-":"";var i=t._private,a=i.rstyle;if(t.pstyle(r+"label").strValue){var o,s,l,u,c=t.pstyle("text-halign"),h=t.pstyle("text-valign"),d=vo(a,"labelWidth",n),p=vo(a,"labelHeight",n),g=vo(a,"labelX",n),f=vo(a,"labelY",n),v=t.pstyle(r+"text-margin-x").pfValue,y=t.pstyle(r+"text-margin-y").pfValue,m=t.isEdge(),b=t.pstyle(r+"text-rotation"),x=t.pstyle("text-outline-width").pfValue,w=t.pstyle("text-border-width").pfValue/2,E=t.pstyle("text-background-padding").pfValue,_=p,T=d,D=T/2,C=_/2;if(m)o=g-D,s=g+D,l=f-C,u=f+C;else{switch(c.value){case"left":o=g-T,s=g;break;case"center":o=g-D,s=g+D;break;case"right":o=g,s=g+T}switch(h.value){case"top":l=f-_,u=f;break;case"center":l=f-C,u=f+C;break;case"bottom":l=f,u=f+_}}o+=v-Math.max(x,w)-E-2,s+=v+Math.max(x,w)+E+2,l+=y-Math.max(x,w)-E-2,u+=y+Math.max(x,w)+E+2;var N=n||"main",A=i.labelBounds,k=A[N]=A[N]||{};k.x1=o,k.y1=l,k.x2=s,k.y2=u,k.w=s-o,k.h=u-l;var L=m&&"autorotate"===b.strValue,S=null!=b.pfValue&&0!==b.pfValue;if(L||S){var M=L?vo(i.rstyle,"labelAngle",n):b.pfValue,I=Math.cos(M),O=Math.sin(M),P=(o+s)/2,R=(l+u)/2;if(!m){switch(c.value){case"left":P=s;break;case"right":P=o}switch(h.value){case"top":R=u;break;case"bottom":R=l}}var B=function(e,t){return{x:(e-=P)*I-(t-=R)*O+P,y:e*O+t*I+R}},F=B(o,l),z=B(o,u),G=B(s,l),Y=B(s,u);o=Math.min(F.x,z.x,G.x,Y.x),s=Math.max(F.x,z.x,G.x,Y.x),l=Math.min(F.y,z.y,G.y,Y.y),u=Math.max(F.y,z.y,G.y,Y.y)}var V=N+"Rot",X=A[V]=A[V]||{};X.x1=o,X.y1=l,X.x2=s,X.y2=u,X.w=s-o,X.h=u-l,go(e,o,l,s,u),go(i.labelBounds.all,o,l,s,u)}return e}},bo=function(e,t){var n,r,i,a,o,s,l,u=e._private.cy,c=u.styleEnabled(),h=u.headless(),d=Vt(),p=e._private,g=e.isNode(),f=e.isEdge(),v=p.rstyle,y=g&&c?e.pstyle("bounds-expansion").pfValue:[0],m=function(e){return"none"!==e.pstyle("display").value},b=!c||m(e)&&(!f||m(e.source())&&m(e.target()));if(b){var x=0;c&&t.includeOverlays&&0!==e.pstyle("overlay-opacity").value&&(x=e.pstyle("overlay-padding").value);var w=0;c&&t.includeUnderlays&&0!==e.pstyle("underlay-opacity").value&&(w=e.pstyle("underlay-padding").value);var E=Math.max(x,w),_=0;if(c&&(_=e.pstyle("width").pfValue/2),g&&t.includeNodes){var T=e.position();o=T.x,s=T.y;var D=e.outerWidth()/2,C=e.outerHeight()/2;go(d,n=o-D,i=s-C,r=o+D,a=s+C),c&&t.includeOutlines&&function(e,t){if(!t.cy().headless()){var n,r,i,a=t.pstyle("outline-opacity").value,o=t.pstyle("outline-width").value;if(a>0&&o>0){var s=t.pstyle("outline-offset").value,l=t.pstyle("shape").value,u=o+s,c=(e.w+2*u)/e.w,h=(e.h+2*u)/e.h,d=0;["diamond","pentagon","round-triangle"].includes(l)?(c=(e.w+2.4*u)/e.w,d=-u/3.6):["concave-hexagon","rhomboid","right-rhomboid"].includes(l)?c=(e.w+2.4*u)/e.w:"star"===l?(c=(e.w+2.8*u)/e.w,h=(e.h+2.6*u)/e.h,d=-u/3.8):"triangle"===l?(c=(e.w+2.8*u)/e.w,h=(e.h+2.4*u)/e.h,d=-u/1.4):"vee"===l&&(c=(e.w+4.4*u)/e.w,h=(e.h+3.8*u)/e.h,d=.5*-u);var p=e.h*h-e.h,g=e.w*c-e.w;if(qt(e,[Math.ceil(p/2),Math.ceil(g/2)]),0!==d){var f=(r=0,i=d,{x1:(n=e).x1+r,x2:n.x2+r,y1:n.y1+i,y2:n.y2+i,w:n.w,h:n.h});Xt(e,f)}}}}(d,e)}else if(f&&t.includeEdges)if(c&&!h){var N=e.pstyle("curve-style").strValue;if(n=Math.min(v.srcX,v.midX,v.tgtX),r=Math.max(v.srcX,v.midX,v.tgtX),i=Math.min(v.srcY,v.midY,v.tgtY),a=Math.max(v.srcY,v.midY,v.tgtY),go(d,n-=_,i-=_,r+=_,a+=_),"haystack"===N){var A=v.haystackPts;if(A&&2===A.length){if(n=A[0].x,i=A[0].y,n>(r=A[1].x)){var k=n;n=r,r=k}if(i>(a=A[1].y)){var L=i;i=a,a=L}go(d,n-_,i-_,r+_,a+_)}}else if("bezier"===N||"unbundled-bezier"===N||N.endsWith("segments")||N.endsWith("taxi")){var S;switch(N){case"bezier":case"unbundled-bezier":S=v.bezierPts;break;case"segments":case"taxi":case"round-segments":case"round-taxi":S=v.linePts}if(null!=S)for(var M=0;M(r=P.x)){var R=n;n=r,r=R}if((i=O.y)>(a=P.y)){var B=i;i=a,a=B}go(d,n-=_,i-=_,r+=_,a+=_)}if(c&&t.includeEdges&&f&&(yo(d,e,"mid-source"),yo(d,e,"mid-target"),yo(d,e,"source"),yo(d,e,"target")),c)if("yes"===e.pstyle("ghost").value){var F=e.pstyle("ghost-offset-x").pfValue,z=e.pstyle("ghost-offset-y").pfValue;go(d,d.x1+F,d.y1+z,d.x2+F,d.y2+z)}var G=p.bodyBounds=p.bodyBounds||{};Ht(G,d),qt(G,y),jt(G,1),c&&(n=d.x1,r=d.x2,i=d.y1,a=d.y2,go(d,n-E,i-E,r+E,a+E));var Y=p.overlayBounds=p.overlayBounds||{};Ht(Y,d),qt(Y,y),jt(Y,1);var V=p.labelBounds=p.labelBounds||{};null!=V.all?((l=V.all).x1=1/0,l.y1=1/0,l.x2=-1/0,l.y2=-1/0,l.w=0,l.h=0):V.all=Vt(),c&&t.includeLabels&&(t.includeMainLabels&&mo(d,e,null),f&&(t.includeSourceLabels&&mo(d,e,"source"),t.includeTargetLabels&&mo(d,e,"target")))}return d.x1=po(d.x1),d.y1=po(d.y1),d.x2=po(d.x2),d.y2=po(d.y2),d.w=po(d.x2-d.x1),d.h=po(d.y2-d.y1),d.w>0&&d.h>0&&b&&(qt(d,y),jt(d,1)),d},xo=function(e){var t=0,n=function(e){return(e?1:0)<0&&void 0!==arguments[0]?arguments[0]:Go,t=arguments.length>1?arguments[1]:void 0,n=0;n=0;s--)o(s);return this},Vo.removeAllListeners=function(){return this.removeListener("*")},Vo.emit=Vo.trigger=function(e,t,n){var r=this.listeners,i=r.length;return this.emitting++,D(t)||(t=[t]),jo(this,(function(e,a){null!=n&&(r=[{event:a.event,type:a.type,namespace:a.namespace,callback:n}],i=r.length);for(var o=function(n){var i=r[n];if(i.type===a.type&&(!i.namespace||i.namespace===a.namespace||".*"===i.namespace)&&e.eventMatches(e.context,i,a)){var o=[a];null!=t&&function(e,t){for(var n=0;n1&&!r){var i=this.length-1,a=this[i],o=a._private.data.id;this[i]=void 0,this[e]=a,n.set(o,{ele:a,index:e})}return this.length--,this},unmergeOne:function(e){e=e[0];var t=this._private,n=e._private.data.id,r=t.map.get(n);if(!r)return this;var i=r.index;return this.unmergeAt(i),this},unmerge:function(e){var t=this._private.cy;if(!e)return this;if(e&&_(e)){var n=e;e=t.mutableElements().filter(n)}for(var r=0;r=0;t--){e(this[t])&&this.unmergeAt(t)}return this},map:function(e,t){for(var n=[],r=this,i=0;ir&&(r=s,n=o)}return{value:r,ele:n}},min:function(e,t){for(var n,r=1/0,i=this,a=0;a=0&&i1&&void 0!==arguments[1])||arguments[1],n=this[0],r=n.cy();if(r.styleEnabled()&&n){this.cleanStyle();var i=n._private.style[e];return null!=i?i:t?r.style().getDefaultProperty(e):null}},numericStyle:function(e){var t=this[0];if(t.cy().styleEnabled()&&t){var n=t.pstyle(e);return void 0!==n.pfValue?n.pfValue:n.value}},numericStyleUnits:function(e){var t=this[0];if(t.cy().styleEnabled())return t?t.pstyle(e).units:void 0},renderedStyle:function(e){var t=this.cy();if(!t.styleEnabled())return this;var n=this[0];return n?t.style().getRenderedStyle(n,e):void 0},style:function(e,t){var n=this.cy();if(!n.styleEnabled())return this;var r=!1,i=n.style();if(C(e)){var a=e;i.applyBypass(this,a,r),this.emitAndNotify("style")}else if(_(e)){if(void 0===t){var o=this[0];return o?i.getStylePropertyValue(o,e):void 0}i.applyBypass(this,e,t,r),this.emitAndNotify("style")}else if(void 0===e){var s=this[0];return s?i.getRawStyle(s):void 0}return this},removeStyle:function(e){var t=this.cy();if(!t.styleEnabled())return this;var n=!1,r=t.style(),i=this;if(void 0===e)for(var a=0;a0&&t.push(c[0]),t.push(s[0])}return this.spawn(t,!0).filter(e)}),"neighborhood"),closedNeighborhood:function(e){return this.neighborhood().add(this).filter(e)},openNeighborhood:function(e){return this.neighborhood(e)}}),vs.neighbourhood=vs.neighborhood,vs.closedNeighbourhood=vs.closedNeighborhood,vs.openNeighbourhood=vs.openNeighborhood,H(vs,{source:$a((function(e){var t,n=this[0];return n&&(t=n._private.source||n.cy().collection()),t&&e?t.filter(e):t}),"source"),target:$a((function(e){var t,n=this[0];return n&&(t=n._private.target||n.cy().collection()),t&&e?t.filter(e):t}),"target"),sources:xs({attr:"source"}),targets:xs({attr:"target"})}),H(vs,{edgesWith:$a(ws(),"edgesWith"),edgesTo:$a(ws({thisIsSrc:!0}),"edgesTo")}),H(vs,{connectedEdges:$a((function(e){for(var t=[],n=0;n0);return a},component:function(){var e=this[0];return e.cy().mutableElements().components(e)[0]}}),vs.componentsOf=vs.components;var _s=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=arguments.length>3&&void 0!==arguments[3]&&arguments[3];if(void 0!==e){var i=new ut,a=!1;if(t){if(t.length>0&&C(t[0])&&!L(t[0])){a=!0;for(var o=[],s=new ht,l=0,u=t.length;l0&&void 0!==arguments[0])||arguments[0],r=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=this,a=i.cy(),o=a._private,s=[],l=[],u=0,c=i.length;u0){for(var B=e.length===i.length?i:new _s(a,e),F=0;F0&&void 0!==arguments[0])||arguments[0],t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=this,r=[],i={},a=n._private.cy;function o(e){var n=i[e.id()];t&&e.removed()||n||(i[e.id()]=!0,e.isNode()?(r.push(e),function(e){for(var t=e._private.edges,n=0;n0&&(e?_.emitAndNotify("remove"):t&&_.emit("remove"));for(var T=0;T=.001?function(t,r){for(var a=0;a0?i=l:r=l}while(Math.abs(s)>a&&++uh&&Math.abs(s.v)>h;);return a?function(e){return u[e*(u.length-1)|0]}:c}}(),As=function(e,t,n,r){var i=Cs(e,t,n,r);return function(e,t,n){return e+(t-e)*i(n)}},ks={linear:function(e,t,n){return e+(t-e)*n},ease:As(.25,.1,.25,1),"ease-in":As(.42,0,1,1),"ease-out":As(0,0,.58,1),"ease-in-out":As(.42,0,.58,1),"ease-in-sine":As(.47,0,.745,.715),"ease-out-sine":As(.39,.575,.565,1),"ease-in-out-sine":As(.445,.05,.55,.95),"ease-in-quad":As(.55,.085,.68,.53),"ease-out-quad":As(.25,.46,.45,.94),"ease-in-out-quad":As(.455,.03,.515,.955),"ease-in-cubic":As(.55,.055,.675,.19),"ease-out-cubic":As(.215,.61,.355,1),"ease-in-out-cubic":As(.645,.045,.355,1),"ease-in-quart":As(.895,.03,.685,.22),"ease-out-quart":As(.165,.84,.44,1),"ease-in-out-quart":As(.77,0,.175,1),"ease-in-quint":As(.755,.05,.855,.06),"ease-out-quint":As(.23,1,.32,1),"ease-in-out-quint":As(.86,0,.07,1),"ease-in-expo":As(.95,.05,.795,.035),"ease-out-expo":As(.19,1,.22,1),"ease-in-out-expo":As(1,0,0,1),"ease-in-circ":As(.6,.04,.98,.335),"ease-out-circ":As(.075,.82,.165,1),"ease-in-out-circ":As(.785,.135,.15,.86),spring:function(e,t,n){if(0===n)return ks.linear;var r=Ns(e,t,n);return function(e,t,n){return e+(t-e)*r(n)}},"cubic-bezier":As};function Ls(e,t,n,r,i){if(1===r)return n;if(t===n)return n;var a=i(t,n,r);return null==e||((e.roundValue||e.color)&&(a=Math.round(a)),void 0!==e.min&&(a=Math.max(a,e.min)),void 0!==e.max&&(a=Math.min(a,e.max))),a}function Ss(e,t){return null!=e.pfValue||null!=e.value?null==e.pfValue||null!=t&&"%"===t.type.units?e.value:e.pfValue:e}function Ms(e,t,n,r,i){var a=null!=i?i.type:null;n<0?n=0:n>1&&(n=1);var o=Ss(e,i),s=Ss(t,i);if(N(o)&&N(s))return Ls(a,o,s,n,r);if(D(o)&&D(s)){for(var l=[],u=0;u0?("spring"===h&&d.push(o.duration),o.easingImpl=ks[h].apply(null,d)):o.easingImpl=ks[h]}var p,g=o.easingImpl;if(p=0===o.duration?1:(n-l)/o.duration,o.applying&&(p=o.progress),p<0?p=0:p>1&&(p=1),null==o.delay){var f=o.startPosition,v=o.position;if(v&&i&&!e.locked()){var y={};Os(f.x,v.x)&&(y.x=Ms(f.x,v.x,p,g)),Os(f.y,v.y)&&(y.y=Ms(f.y,v.y,p,g)),e.position(y)}var m=o.startPan,b=o.pan,x=a.pan,w=null!=b&&r;w&&(Os(m.x,b.x)&&(x.x=Ms(m.x,b.x,p,g)),Os(m.y,b.y)&&(x.y=Ms(m.y,b.y,p,g)),e.emit("pan"));var E=o.startZoom,T=o.zoom,D=null!=T&&r;D&&(Os(E,T)&&(a.zoom=Yt(a.minZoom,Ms(E,T,p,g),a.maxZoom)),e.emit("zoom")),(w||D)&&e.emit("viewport");var C=o.style;if(C&&C.length>0&&i){for(var N=0;N=0;t--){(0,e[t])()}e.splice(0,e.length)},c=a.length-1;c>=0;c--){var h=a[c],d=h._private;d.stopped?(a.splice(c,1),d.hooked=!1,d.playing=!1,d.started=!1,u(d.frames)):(d.playing||d.applying)&&(d.playing&&d.applying&&(d.applying=!1),d.started||Ps(0,h,e),Is(t,h,e,n),d.applying&&(d.applying=!1),u(d.frames),null!=d.step&&d.step(e),h.completed()&&(a.splice(c,1),d.hooked=!1,d.playing=!1,d.started=!1,u(d.completes)),s=!0)}return n||0!==a.length||0!==o.length||r.push(t),s}for(var a=!1,o=0;o0?t.notify("draw",n):t.notify("draw")),n.unmerge(r),t.emit("step")}var Bs={animate:oa.animate(),animation:oa.animation(),animated:oa.animated(),clearQueue:oa.clearQueue(),delay:oa.delay(),delayAnimation:oa.delayAnimation(),stop:oa.stop(),addToAnimationPool:function(e){this.styleEnabled()&&this._private.aniEles.merge(e)},stopAnimationLoop:function(){this._private.animationsRunning=!1},startAnimationLoop:function(){var e=this;if(e._private.animationsRunning=!0,e.styleEnabled()){var t=e.renderer();t&&t.beforeRender?t.beforeRender((function(t,n){Rs(n,e)}),t.beforeRenderPriorities.animations):function t(){e._private.animationsRunning&&Se((function(n){Rs(n,e),t()}))}()}}},Fs={qualifierCompare:function(e,t){return null==e||null==t?null==e&&null==t:e.sameText(t)},eventMatches:function(e,t,n){var r=t.qualifier;return null==r||e!==n.target&&L(n.target)&&r.matches(n.target)},addEventFields:function(e,t){t.cy=e,t.target=e},callbackContext:function(e,t,n){return null!=t.qualifier?n.target:e}},zs=function(e){return _(e)?new Ua(e):e},Gs={createEmitter:function(){var e=this._private;return e.emitter||(e.emitter=new Yo(Fs,this)),this},emitter:function(){return this._private.emitter},on:function(e,t,n){return this.emitter().on(e,zs(t),n),this},removeListener:function(e,t,n){return this.emitter().removeListener(e,zs(t),n),this},removeAllListeners:function(){return this.emitter().removeAllListeners(),this},one:function(e,t,n){return this.emitter().one(e,zs(t),n),this},once:function(e,t,n){return this.emitter().one(e,zs(t),n),this},emit:function(e,t){return this.emitter().emit(e,t),this},emitAndNotify:function(e,t){return this.emit(e),this.notify(e,t),this}};oa.eventAliasesOn(Gs);var Ys={png:function(e){return e=e||{},this._private.renderer.png(e)},jpg:function(e){var t=this._private.renderer;return(e=e||{}).bg=e.bg||"#fff",t.jpg(e)}};Ys.jpeg=Ys.jpg;var Vs={layout:function(e){var t=this;if(null!=e)if(null!=e.name){var n=e.name,r=t.extension("layout",n);if(null!=r){var i;i=_(e.eles)?t.$(e.eles):null!=e.eles?e.eles:t.$();var a=new r(H({},e,{cy:t,eles:i}));return a}Ze("No such layout `"+n+"` found. Did you forget to import it and `cytoscape.use()` it?")}else Ze("A `name` must be specified to make a layout");else Ze("Layout options must be specified to make a layout")}};Vs.createLayout=Vs.makeLayout=Vs.layout;var Xs={notify:function(e,t){var n=this._private;if(this.batching()){n.batchNotifications=n.batchNotifications||{};var r=n.batchNotifications[e]=n.batchNotifications[e]||this.collection();null!=t&&r.merge(t)}else if(n.notificationsEnabled){var i=this.renderer();!this.destroyed()&&i&&i.notify(e,t)}},notifications:function(e){var t=this._private;return void 0===e?t.notificationsEnabled:(t.notificationsEnabled=!!e,this)},noNotifications:function(e){this.notifications(!1),e(),this.notifications(!0)},batching:function(){return this._private.batchCount>0},startBatch:function(){var e=this._private;return null==e.batchCount&&(e.batchCount=0),0===e.batchCount&&(e.batchStyleEles=this.collection(),e.batchNotifications={}),e.batchCount++,this},endBatch:function(){var e=this._private;if(0===e.batchCount)return this;if(e.batchCount--,0===e.batchCount){e.batchStyleEles.updateStyle();var t=this.renderer();Object.keys(e.batchNotifications).forEach((function(n){var r=e.batchNotifications[n];r.empty()?t.notify(n):t.notify(n,r)}))}return this},batch:function(e){return this.startBatch(),e(),this.endBatch(),this},batchData:function(e){var t=this;return this.batch((function(){for(var n=Object.keys(e),r=0;r0;)t.removeChild(t.childNodes[0]);e._private.renderer=null,e.mutableElements().forEach((function(e){var t=e._private;t.rscratch={},t.rstyle={},t.animation.current=[],t.animation.queue=[]}))},onRender:function(e){return this.on("render",e)},offRender:function(e){return this.off("render",e)}};js.invalidateDimensions=js.resize;var qs={collection:function(e,t){return _(e)?this.$(e):k(e)?e.collection():D(e)?(t||(t={}),new _s(this,e,t.unique,t.removed)):new _s(this)},nodes:function(e){var t=this.$((function(e){return e.isNode()}));return e?t.filter(e):t},edges:function(e){var t=this.$((function(e){return e.isEdge()}));return e?t.filter(e):t},$:function(e){var t=this._private.elements;return e?t.filter(e):t.spawnSelf()},mutableElements:function(){return this._private.elements}};qs.elements=qs.filter=qs.$;var Hs={},Ws="t";Hs.apply=function(e){for(var t=this,n=t._private.cy.collection(),r=0;r0;if(d||h&&p){var g=void 0;d&&p||d?g=u.properties:p&&(g=u.mappedProperties);for(var f=0;f1&&(v=1),s.color){var w=i.valueMin[0],E=i.valueMax[0],_=i.valueMin[1],T=i.valueMax[1],D=i.valueMin[2],C=i.valueMax[2],A=null==i.valueMin[3]?1:i.valueMin[3],k=null==i.valueMax[3]?1:i.valueMax[3],L=[Math.round(w+(E-w)*v),Math.round(_+(T-_)*v),Math.round(D+(C-D)*v),Math.round(A+(k-A)*v)];n={bypass:i.bypass,name:i.name,value:L,strValue:"rgb("+L[0]+", "+L[1]+", "+L[2]+")"}}else{if(!s.number)return!1;var S=i.valueMin+(i.valueMax-i.valueMin)*v;n=this.parse(i.name,S,i.bypass,d)}if(!n)return f(),!1;n.mapping=i,i=n;break;case o.data:for(var M=i.field.split("."),I=h.data,O=0;O0&&a>0){for(var s={},l=!1,u=0;u0?e.delayAnimation(o).play().promise().then(t):t()})).then((function(){return e.animation({style:s,duration:a,easing:e.pstyle("transition-timing-function").value,queue:!1}).play().promise()})).then((function(){n.removeBypasses(e,i),e.emitAndNotify("style"),r.transitioning=!1}))}else r.transitioning&&(this.removeBypasses(e,i),e.emitAndNotify("style"),r.transitioning=!1)},Hs.checkTrigger=function(e,t,n,r,i,a){var o=this.properties[t],s=i(o);null!=s&&s(n,r)&&a(o)},Hs.checkZOrderTrigger=function(e,t,n,r){var i=this;this.checkTrigger(e,t,n,r,(function(e){return e.triggersZOrder}),(function(){i._private.cy.notify("zorder",e)}))},Hs.checkBoundsTrigger=function(e,t,n,r){this.checkTrigger(e,t,n,r,(function(e){return e.triggersBounds}),(function(i){e.dirtyCompoundBoundsCache(),e.dirtyBoundingBoxCache(),!i.triggersBoundsOfParallelBeziers||"curve-style"!==t||"bezier"!==n&&"bezier"!==r||e.parallelEdges().forEach((function(e){e.isBundledBezier()&&e.dirtyBoundingBoxCache()})),!i.triggersBoundsOfConnectedEdges||"display"!==t||"none"!==n&&"none"!==r||e.connectedEdges().forEach((function(e){e.dirtyBoundingBoxCache()}))}))},Hs.checkTriggers=function(e,t,n,r){e.dirtyStyleCache(),this.checkZOrderTrigger(e,t,n,r),this.checkBoundsTrigger(e,t,n,r)};var $s={applyBypass:function(e,t,n,r){var i=[];if("*"===t||"**"===t){if(void 0!==n)for(var a=0;at.length?a.substr(t.length):""}function s(){n=n.length>r.length?n.substr(r.length):""}for(a=a.replace(/[/][*](\s|.)+?[*][/]/g,"");;){if(a.match(/^\s*$/))break;var l=a.match(/^\s*((?:.|\s)+?)\s*\{((?:.|\s)+?)\}/);if(!l){Je("Halting stylesheet parsing: String stylesheet contains more to parse but no selector and block found in: "+a);break}t=l[0];var u=l[1];if("core"!==u)if(new Ua(u).invalid){Je("Skipping parsing of block: Invalid selector found in string stylesheet: "+u),o();continue}var c=l[2],h=!1;n=c;for(var d=[];;){if(n.match(/^\s*$/))break;var p=n.match(/^\s*(.+?)\s*:\s*(.+?)(?:\s*;|\s*$)/);if(!p){Je("Skipping parsing of block: Invalid formatting of style property and value definitions found in:"+c),h=!0;break}r=p[0];var g=p[1],f=p[2];if(this.properties[g])i.parse(g,f)?(d.push({name:g,val:f}),s()):(Je("Skipping property: Invalid property definition in: "+r),s());else Je("Skipping property: Invalid property name in: "+r),s()}if(h){o();break}i.selector(u);for(var v=0;v=7&&"d"===t[0]&&(u=new RegExp(s.data.regex).exec(t))){if(n)return!1;var d=s.data;return{name:e,value:u,strValue:""+t,mapped:d,field:u[1],bypass:n}}if(t.length>=10&&"m"===t[0]&&(c=new RegExp(s.mapData.regex).exec(t))){if(n)return!1;if(h.multiple)return!1;var p=s.mapData;if(!h.color&&!h.number)return!1;var g=this.parse(e,c[4]);if(!g||g.mapped)return!1;var f=this.parse(e,c[5]);if(!f||f.mapped)return!1;if(g.pfValue===f.pfValue||g.strValue===f.strValue)return Je("`"+e+": "+t+"` is not a valid mapper because the output range is zero; converting to `"+e+": "+g.strValue+"`"),this.parse(e,g.strValue);if(h.color){var v=g.value,y=f.value;if(!(v[0]!==y[0]||v[1]!==y[1]||v[2]!==y[2]||v[3]!==y[3]&&(null!=v[3]&&1!==v[3]||null!=y[3]&&1!==y[3])))return!1}return{name:e,value:c,strValue:""+t,mapped:p,field:c[1],fieldMin:parseFloat(c[2]),fieldMax:parseFloat(c[3]),valueMin:g.value,valueMax:f.value,bypass:n}}}if(h.multiple&&"multiple"!==r){var m;if(m=l?t.split(/\s+/):D(t)?t:[t],h.evenMultiple&&m.length%2!=0)return null;for(var b=[],x=[],w=[],E="",C=!1,A=0;A0?" ":"")+k.strValue}return h.validate&&!h.validate(b,x)?null:h.singleEnum&&C?1===b.length&&_(b[0])?{name:e,value:b[0],strValue:b[0],bypass:n}:null:{name:e,value:b,pfValue:w,strValue:E,bypass:n,units:x}}var L,S,M=function(){for(var r=0;rh.max||h.strictMax&&t===h.max))return null;var F={name:e,value:t,strValue:""+t+(I||""),units:I,bypass:n};return h.unitless||"px"!==I&&"em"!==I?F.pfValue=t:F.pfValue="px"!==I&&I?this.getEmSizeInPixels()*t:t,"ms"!==I&&"s"!==I||(F.pfValue="ms"===I?t:1e3*t),"deg"!==I&&"rad"!==I||(F.pfValue="rad"===I?t:(L=t,Math.PI*L/180)),"%"===I&&(F.pfValue=t/100),F}if(h.propList){var z=[],G=""+t;if("none"===G);else{for(var V=G.split(/\s*,\s*|\s+/),X=0;X0&&l>0&&!isNaN(n.w)&&!isNaN(n.h)&&n.w>0&&n.h>0)return{zoom:o=(o=(o=Math.min((s-2*t)/n.w,(l-2*t)/n.h))>this._private.maxZoom?this._private.maxZoom:o)=n.minZoom&&(n.maxZoom=t),this},minZoom:function(e){return void 0===e?this._private.minZoom:this.zoomRange({min:e})},maxZoom:function(e){return void 0===e?this._private.maxZoom:this.zoomRange({max:e})},getZoomedViewport:function(e){var t,n,r=this._private,i=r.pan,a=r.zoom,o=!1;if(r.zoomingEnabled||(o=!0),N(e)?n=e:C(e)&&(n=e.level,null!=e.position?t=Lt(e.position,a,i):null!=e.renderedPosition&&(t=e.renderedPosition),null==t||r.panningEnabled||(o=!0)),n=(n=n>r.maxZoom?r.maxZoom:n)t.maxZoom||!t.zoomingEnabled?a=!0:(t.zoom=s,i.push("zoom"))}if(r&&(!a||!e.cancelOnFailedZoom)&&t.panningEnabled){var l=e.pan;N(l.x)&&(t.pan.x=l.x,o=!1),N(l.y)&&(t.pan.y=l.y,o=!1),o||i.push("pan")}return i.length>0&&(i.push("viewport"),this.emit(i.join(" ")),this.notify("viewport")),this},center:function(e){var t=this.getCenterPan(e);return t&&(this._private.pan=t,this.emit("pan viewport"),this.notify("viewport")),this},getCenterPan:function(e,t){if(this._private.panningEnabled){if(_(e)){var n=e;e=this.mutableElements().filter(n)}else k(e)||(e=this.mutableElements());if(0!==e.length){var r=e.boundingBox(),i=this.width(),a=this.height();return{x:(i-(t=void 0===t?this._private.zoom:t)*(r.x1+r.x2))/2,y:(a-t*(r.y1+r.y2))/2}}}},reset:function(){return this._private.panningEnabled&&this._private.zoomingEnabled?(this.viewport({pan:{x:0,y:0},zoom:1}),this):this},invalidateSize:function(){this._private.sizeCache=null},size:function(){var e,t,n=this._private,r=n.container,i=this;return n.sizeCache=n.sizeCache||(r?(e=i.window().getComputedStyle(r),t=function(t){return parseFloat(e.getPropertyValue(t))},{width:r.clientWidth-t("padding-left")-t("padding-right"),height:r.clientHeight-t("padding-top")-t("padding-bottom")}):{width:1,height:1})},width:function(){return this.size().width},height:function(){return this.size().height},extent:function(){var e=this._private.pan,t=this._private.zoom,n=this.renderedExtent(),r={x1:(n.x1-e.x)/t,x2:(n.x2-e.x)/t,y1:(n.y1-e.y)/t,y2:(n.y2-e.y)/t};return r.w=r.x2-r.x1,r.h=r.y2-r.y1,r},renderedExtent:function(){var e=this.width(),t=this.height();return{x1:0,y1:0,x2:e,y2:t,w:e,h:t}},multiClickDebounceTime:function(e){return e?(this._private.multiClickDebounceTime=e,this):this._private.multiClickDebounceTime}};al.centre=al.center,al.autolockNodes=al.autolock,al.autoungrabifyNodes=al.autoungrabify;var ol={data:oa.data({field:"data",bindingEvent:"data",allowBinding:!0,allowSetting:!0,settingEvent:"data",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeData:oa.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),scratch:oa.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:oa.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0})};ol.attr=ol.data,ol.removeAttr=ol.removeData;var sl=function(e){var t=this,n=(e=H({},e)).container;n&&!A(n)&&A(n[0])&&(n=n[0]);var r=n?n._cyreg:null;(r=r||{})&&r.cy&&(r.cy.destroy(),r={});var i=r.readies=r.readies||[];n&&(n._cyreg=r),r.cy=t;var a=void 0!==v&&void 0!==n&&!e.headless,o=e;o.layout=H({name:a?"grid":"null"},o.layout),o.renderer=H({name:a?"canvas":"null"},o.renderer);var s=function(e,t,n){return void 0!==t?t:void 0!==n?n:e},l=this._private={container:n,ready:!1,options:o,elements:new _s(this),listeners:[],aniEles:new _s(this),data:o.data||{},scratch:{},layout:null,renderer:null,destroyed:!1,notificationsEnabled:!0,minZoom:1e-50,maxZoom:1e50,zoomingEnabled:s(!0,o.zoomingEnabled),userZoomingEnabled:s(!0,o.userZoomingEnabled),panningEnabled:s(!0,o.panningEnabled),userPanningEnabled:s(!0,o.userPanningEnabled),boxSelectionEnabled:s(!0,o.boxSelectionEnabled),autolock:s(!1,o.autolock,o.autolockNodes),autoungrabify:s(!1,o.autoungrabify,o.autoungrabifyNodes),autounselectify:s(!1,o.autounselectify),styleEnabled:void 0===o.styleEnabled?a:o.styleEnabled,zoom:N(o.zoom)?o.zoom:1,pan:{x:C(o.pan)&&N(o.pan.x)?o.pan.x:0,y:C(o.pan)&&N(o.pan.y)?o.pan.y:0},animation:{current:[],queue:[]},hasCompoundNodes:!1,multiClickDebounceTime:s(250,o.multiClickDebounceTime)};this.createEmitter(),this.selectionType(o.selectionType),this.zoomRange({min:o.minZoom,max:o.maxZoom});l.styleEnabled&&t.setStyle([]);var u=H({},o,o.renderer);t.initRenderer(u);!function(e,t){if(e.some(P))return Mr.all(e).then(t);t(e)}([o.style,o.elements],(function(e){var n=e[0],a=e[1];l.styleEnabled&&t.style().append(n),function(e,n,r){t.notifications(!1);var i=t.mutableElements();i.length>0&&i.remove(),null!=e&&(C(e)||D(e))&&t.add(e),t.one("layoutready",(function(e){t.notifications(!0),t.emit(e),t.one("load",n),t.emitAndNotify("load")})).one("layoutstop",(function(){t.one("done",r),t.emit("done")}));var a=H({},t._private.options.layout);a.eles=t.elements(),t.layout(a).run()}(a,(function(){t.startAnimationLoop(),l.ready=!0,T(o.ready)&&t.on("ready",o.ready);for(var e=0;e0,u=Vt(n.boundingBox?n.boundingBox:{x1:0,y1:0,w:r.width(),h:r.height()});if(k(n.roots))e=n.roots;else if(D(n.roots)){for(var c=[],h=0;h0;){var M=A.shift(),I=N(M,L);if(I)M.outgoers().filter((function(e){return e.isNode()&&i.has(e)})).forEach(S);else if(null===I){Je("Detected double maximal shift for node `"+M.id()+"`. Bailing maximal adjustment due to cycle. Use `options.maximal: true` only on DAGs.");break}}}C();var O=0;if(n.avoidOverlap)for(var P=0;P0&&y[0].length<=3?l/2:0),h=2*Math.PI/y[r].length*i;return 0===r&&1===y[0].length&&(c=1),{x:W+c*Math.cos(h),y:$+c*Math.sin(h)}}return{x:W+(i+1-(a+1)/2)*o,y:(r+1)*s}})),this};var gl={fit:!0,padding:30,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,spacingFactor:void 0,radius:void 0,startAngle:1.5*Math.PI,sweep:void 0,clockwise:!0,sort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(e,t){return!0},ready:void 0,stop:void 0,transform:function(e,t){return t}};function fl(e){this.options=H({},gl,e)}fl.prototype.run=function(){var e=this.options,t=e,n=e.cy,r=t.eles,i=void 0!==t.counterclockwise?!t.counterclockwise:t.clockwise,a=r.nodes().not(":parent");t.sort&&(a=a.sort(t.sort));for(var o,s=Vt(t.boundingBox?t.boundingBox:{x1:0,y1:0,w:n.width(),h:n.height()}),l=s.x1+s.w/2,u=s.y1+s.h/2,c=(void 0===t.sweep?2*Math.PI-2*Math.PI/a.length:t.sweep)/Math.max(1,a.length-1),h=0,d=0;d1&&t.avoidOverlap){h*=1.75;var v=Math.cos(c)-Math.cos(0),y=Math.sin(c)-Math.sin(0),m=Math.sqrt(h*h/(v*v+y*y));o=Math.max(m,o)}return r.nodes().layoutPositions(this,t,(function(e,n){var r=t.startAngle+n*c*(i?1:-1),a=o*Math.cos(r),s=o*Math.sin(r);return{x:l+a,y:u+s}})),this};var vl,yl={fit:!0,padding:30,startAngle:1.5*Math.PI,sweep:void 0,clockwise:!0,equidistant:!1,minNodeSpacing:10,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,height:void 0,width:void 0,spacingFactor:void 0,concentric:function(e){return e.degree()},levelWidth:function(e){return e.maxDegree()/4},animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(e,t){return!0},ready:void 0,stop:void 0,transform:function(e,t){return t}};function ml(e){this.options=H({},yl,e)}ml.prototype.run=function(){for(var e=this.options,t=e,n=void 0!==t.counterclockwise?!t.counterclockwise:t.clockwise,r=e.cy,i=t.eles,a=i.nodes().not(":parent"),o=Vt(t.boundingBox?t.boundingBox:{x1:0,y1:0,w:r.width(),h:r.height()}),s=o.x1+o.w/2,l=o.y1+o.h/2,u=[],c=0,h=0;h0)Math.abs(m[0].value-x.value)>=v&&(m=[],y.push(m));m.push(x)}var w=c+t.minNodeSpacing;if(!t.avoidOverlap){var E=y.length>0&&y[0].length>1,_=(Math.min(o.w,o.h)/2-w)/(y.length+E?1:0);w=Math.min(w,_)}for(var T=0,D=0;D1&&t.avoidOverlap){var k=Math.cos(A)-Math.cos(0),L=Math.sin(A)-Math.sin(0),S=Math.sqrt(w*w/(k*k+L*L));T=Math.max(S,T)}C.r=T,T+=w}if(t.equidistant){for(var M=0,I=0,O=0;O=e.numIter)&&(Nl(r,e),r.temperature=r.temperature*e.coolingFactor,!(r.temperature=e.animationThreshold&&a(),Se(t)):(zl(r,e),s())}()}else{for(;u;)u=o(l),l++;zl(r,e),s()}return this},xl.prototype.stop=function(){return this.stopped=!0,this.thread&&this.thread.stop(),this.emit("layoutstop"),this},xl.prototype.destroy=function(){return this.thread&&this.thread.stop(),this};var wl=function(e,t,n){for(var r=n.eles.edges(),i=n.eles.nodes(),a=Vt(n.boundingBox?n.boundingBox:{x1:0,y1:0,w:e.width(),h:e.height()}),o={isCompound:e.hasCompoundNodes(),layoutNodes:[],idToIndex:{},nodeSize:i.size(),graphSet:[],indexToGraph:[],layoutEdges:[],edgeSize:r.size(),temperature:n.initialTemp,clientWidth:a.w,clientHeight:a.h,boundingBox:a},s=n.eles.components(),l={},u=0;u0){o.graphSet.push(w);for(u=0;ur.count?0:r.graph},_l=function e(t,n,r,i){var a=i.graphSet[r];if(-10)var s=(u=r.nodeOverlap*o)*i/(f=Math.sqrt(i*i+a*a)),l=u*a/f;else{var u,c=Ml(e,i,a),h=Ml(t,-1*i,-1*a),d=h.x-c.x,p=h.y-c.y,g=d*d+p*p,f=Math.sqrt(g);s=(u=(e.nodeRepulsion+t.nodeRepulsion)/g)*d/f,l=u*p/f}e.isLocked||(e.offsetX-=s,e.offsetY-=l),t.isLocked||(t.offsetX+=s,t.offsetY+=l)}},Sl=function(e,t,n,r){if(n>0)var i=e.maxX-t.minX;else i=t.maxX-e.minX;if(r>0)var a=e.maxY-t.minY;else a=t.maxY-e.minY;return i>=0&&a>=0?Math.sqrt(i*i+a*a):0},Ml=function(e,t,n){var r=e.positionX,i=e.positionY,a=e.height||1,o=e.width||1,s=n/t,l=a/o,u={};return 0===t&&0n?(u.x=r,u.y=i+a/2,u):0t&&-1*l<=s&&s<=l?(u.x=r-o/2,u.y=i-o*n/2/t,u):0=l)?(u.x=r+a*t/2/n,u.y=i+a/2,u):0>n&&(s<=-1*l||s>=l)?(u.x=r-a*t/2/n,u.y=i-a/2,u):u},Il=function(e,t){for(var n=0;n1){var g=t.gravity*h/p,f=t.gravity*d/p;c.offsetX+=g,c.offsetY+=f}}}}},Pl=function(e,t){var n=[],r=0,i=-1;for(n.push.apply(n,e.graphSet[0]),i+=e.graphSet[0].length;r<=i;){var a=n[r++],o=e.idToIndex[a],s=e.layoutNodes[o],l=s.children;if(0n)var i={x:n*e/r,y:n*t/r};else i={x:e,y:t};return i},Fl=function e(t,n){var r=t.parentId;if(null!=r){var i=n.layoutNodes[n.idToIndex[r]],a=!1;return(null==i.maxX||t.maxX+i.padRight>i.maxX)&&(i.maxX=t.maxX+i.padRight,a=!0),(null==i.minX||t.minX-i.padLefti.maxY)&&(i.maxY=t.maxY+i.padBottom,a=!0),(null==i.minY||t.minY-i.padTopg&&(h+=p+t.componentSpacing,c=0,d=0,p=0)}}},Gl={fit:!0,padding:30,boundingBox:void 0,avoidOverlap:!0,avoidOverlapPadding:10,nodeDimensionsIncludeLabels:!1,spacingFactor:void 0,condense:!1,rows:void 0,cols:void 0,position:function(e){},sort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(e,t){return!0},ready:void 0,stop:void 0,transform:function(e,t){return t}};function Yl(e){this.options=H({},Gl,e)}Yl.prototype.run=function(){var e=this.options,t=e,n=e.cy,r=t.eles,i=r.nodes().not(":parent");t.sort&&(i=i.sort(t.sort));var a=Vt(t.boundingBox?t.boundingBox:{x1:0,y1:0,w:n.width(),h:n.height()});if(0===a.h||0===a.w)r.nodes().layoutPositions(this,t,(function(e){return{x:a.x1,y:a.y1}}));else{var o=i.size(),s=Math.sqrt(o*a.h/a.w),l=Math.round(s),u=Math.round(a.w/a.h*s),c=function(e){if(null==e)return Math.min(l,u);Math.min(l,u)==l?l=e:u=e},h=function(e){if(null==e)return Math.max(l,u);Math.max(l,u)==l?l=e:u=e},d=t.rows,p=null!=t.cols?t.cols:t.columns;if(null!=d&&null!=p)l=d,u=p;else if(null!=d&&null==p)l=d,u=Math.ceil(o/l);else if(null==d&&null!=p)u=p,l=Math.ceil(o/u);else if(u*l>o){var g=c(),f=h();(g-1)*f>=o?c(g-1):(f-1)*g>=o&&h(f-1)}else for(;u*l=o?h(y+1):c(v+1)}var m=a.w/u,b=a.h/l;if(t.condense&&(m=0,b=0),t.avoidOverlap)for(var x=0;x=u&&(S=0,L++)},I={},O=0;O(r=tn(e,t,x[w],x[w+1],x[w+2],x[w+3])))return v(n,r),!0}else if("bezier"===a.edgeType||"multibezier"===a.edgeType||"self"===a.edgeType||"compound"===a.edgeType)for(x=a.allpts,w=0;w+5(r=en(e,t,x[w],x[w+1],x[w+2],x[w+3],x[w+4],x[w+5])))return v(n,r),!0;m=m||i.source,b=b||i.target;var E=o.getArrowWidth(l,c),_=[{name:"source",x:a.arrowStartX,y:a.arrowStartY,angle:a.srcArrowAngle},{name:"target",x:a.arrowEndX,y:a.arrowEndY,angle:a.tgtArrowAngle},{name:"mid-source",x:a.midX,y:a.midY,angle:a.midsrcArrowAngle},{name:"mid-target",x:a.midX,y:a.midY,angle:a.midtgtArrowAngle}];for(w=0;w<_.length;w++){var T=_[w],D=s.arrowShapes[n.pstyle(T.name+"-arrow-shape").value],C=n.pstyle("width").pfValue;if(D.roughCollide(e,t,E,T.angle,{x:T.x,y:T.y},C,d)&&D.collide(e,t,E,T.angle,{x:T.x,y:T.y},C,d))return v(n),!0}h&&u.length>0&&(y(m),y(b))}function b(e,t,n){return st(e,t,n)}function x(n,r){var i,a=n._private,o=g;i=r?r+"-":"",n.boundingBox();var s=a.labelBounds[r||"main"],l=n.pstyle(i+"label").value;if("yes"===n.pstyle("text-events").strValue&&l){var u=b(a.rscratch,"labelX",r),c=b(a.rscratch,"labelY",r),h=b(a.rscratch,"labelAngle",r),d=n.pstyle(i+"text-margin-x").pfValue,p=n.pstyle(i+"text-margin-y").pfValue,f=s.x1-o-d,y=s.x2+o-d,m=s.y1-o-p,x=s.y2+o-p;if(h){var w=Math.cos(h),E=Math.sin(h),_=function(e,t){return{x:(e-=u)*w-(t-=c)*E+u,y:e*E+t*w+c}},T=_(f,m),D=_(f,x),C=_(y,m),N=_(y,x),A=[T.x+d,T.y+p,C.x+d,C.y+p,N.x+d,N.y+p,D.x+d,D.y+p];if(nn(e,t,A))return v(n),!0}else if($t(s,e,t))return v(n),!0}}n&&(l=l.interactive);for(var w=l.length-1;w>=0;w--){var E=l[w];E.isNode()?y(E)||x(E):m(E)||x(E)||x(E,"source")||x(E,"target")}return u},getAllInBox:function(e,t,n,r){for(var i,a,o=this.getCachedZSortedEles().interactive,s=[],l=Math.min(e,n),u=Math.max(e,n),c=Math.min(t,r),h=Math.max(t,r),d=Vt({x1:e=l,y1:t=c,x2:n=u,y2:r=h}),p=0;p0?-(Math.PI-a.ang):Math.PI+a.ang),xu(t,n,bu),ru=mu.nx*bu.ny-mu.ny*bu.nx,iu=mu.nx*bu.nx-mu.ny*-bu.ny,su=Math.asin(Math.max(-1,Math.min(1,ru))),Math.abs(su)<1e-6)return tu=t.x,nu=t.y,void(uu=hu=0);au=1,ou=!1,iu<0?su<0?su=Math.PI+su:(su=Math.PI-su,au=-1,ou=!0):su>0&&(au=-1,ou=!0),hu=void 0!==t.radius?t.radius:r,lu=su/2,du=Math.min(mu.len/2,bu.len/2),i?(cu=Math.abs(Math.cos(lu)*hu/Math.sin(lu)))>du?(cu=du,uu=Math.abs(cu*Math.sin(lu)/Math.cos(lu))):uu=hu:(cu=Math.min(du,hu),uu=Math.abs(cu*Math.sin(lu)/Math.cos(lu))),fu=t.x+bu.nx*cu,vu=t.y+bu.ny*cu,tu=fu-bu.ny*uu*au,nu=vu+bu.nx*uu*au,pu=t.x+mu.nx*cu,gu=t.y+mu.ny*cu,yu=t};function Eu(e,t){0===t.radius?e.lineTo(t.cx,t.cy):e.arc(t.cx,t.cy,t.radius,t.startAngle,t.endAngle,t.counterClockwise)}function _u(e,t,n,r){var i=!(arguments.length>4&&void 0!==arguments[4])||arguments[4];return 0===r||0===t.radius?{cx:t.x,cy:t.y,radius:0,startX:t.x,startY:t.y,stopX:t.x,stopY:t.y,startAngle:void 0,endAngle:void 0,counterClockwise:void 0}:(wu(e,t,n,r,i),{cx:tu,cy:nu,radius:uu,startX:pu,startY:gu,stopX:fu,stopY:vu,startAngle:mu.ang+Math.PI/2*au,endAngle:bu.ang-Math.PI/2*au,counterClockwise:ou})}var Tu={};function Du(e){var t=[];if(null!=e){for(var n=0;n0?Math.max(e-t,0):Math.min(e+t,0)},N=C(T,E),A=C(D,_),k=!1;"auto"===v?f=Math.abs(N)>Math.abs(A)?i:r:v===l||v===s?(f=r,k=!0):v!==a&&v!==o||(f=i,k=!0);var L,S=f===r,M=S?A:N,I=S?D:T,O=Pt(I),P=!1;(k&&(m||x)||!(v===s&&I<0||v===l&&I>0||v===a&&I>0||v===o&&I<0)||(M=(O*=-1)*Math.abs(M),P=!0),m)?L=(b<0?1+b:b)*M:L=(b<0?M:0)+b*O;var R=function(e){return Math.abs(e)=Math.abs(M)},B=R(L),F=R(Math.abs(M)-Math.abs(L));if((B||F)&&!P)if(S){var z=Math.abs(I)<=h/2,G=Math.abs(T)<=d/2;if(z){var Y=(u.x1+u.x2)/2,V=u.y1,X=u.y2;n.segpts=[Y,V,Y,X]}else if(G){var U=(u.y1+u.y2)/2,j=u.x1,q=u.x2;n.segpts=[j,U,q,U]}else n.segpts=[u.x1,u.y2]}else{var H=Math.abs(I)<=c/2,W=Math.abs(D)<=p/2;if(H){var $=(u.y1+u.y2)/2,K=u.x1,Z=u.x2;n.segpts=[K,$,Z,$]}else if(W){var Q=(u.x1+u.x2)/2,J=u.y1,ee=u.y2;n.segpts=[Q,J,Q,ee]}else n.segpts=[u.x2,u.y1]}else if(S){var te=u.y1+L+(g?h/2*O:0),ne=u.x1,re=u.x2;n.segpts=[ne,te,re,te]}else{var ie=u.x1+L+(g?c/2*O:0),ae=u.y1,oe=u.y2;n.segpts=[ie,ae,ie,oe]}if(n.isRound){var se=e.pstyle("taxi-radius").value,le="arc-radius"===e.pstyle("radius-type").value[0];n.radii=new Array(n.segpts.length/2).fill(se),n.isArcRadius=new Array(n.segpts.length/2).fill(le)}},Tu.tryToCorrectInvalidPoints=function(e,t){var n=e._private.rscratch;if("bezier"===n.edgeType){var r=t.srcPos,i=t.tgtPos,a=t.srcW,o=t.srcH,s=t.tgtW,l=t.tgtH,u=t.srcShape,c=t.tgtShape,h=t.srcCornerRadius,d=t.tgtCornerRadius,p=t.srcRs,g=t.tgtRs,f=!N(n.startX)||!N(n.startY),v=!N(n.arrowStartX)||!N(n.arrowStartY),y=!N(n.endX)||!N(n.endY),m=!N(n.arrowEndX)||!N(n.arrowEndY),b=3*(this.getArrowWidth(e.pstyle("width").pfValue,e.pstyle("arrow-scale").value)*this.arrowShapeWidth),x=Rt({x:n.ctrlpts[0],y:n.ctrlpts[1]},{x:n.startX,y:n.startY}),w=xd.poolIndex()){var p=h;h=d,d=p}var g=s.srcPos=h.position(),f=s.tgtPos=d.position(),v=s.srcW=h.outerWidth(),y=s.srcH=h.outerHeight(),m=s.tgtW=d.outerWidth(),b=s.tgtH=d.outerHeight(),x=s.srcShape=n.nodeShapes[t.getNodeShape(h)],w=s.tgtShape=n.nodeShapes[t.getNodeShape(d)],E=s.srcCornerRadius="auto"===h.pstyle("corner-radius").value?"auto":h.pstyle("corner-radius").pfValue,_=s.tgtCornerRadius="auto"===d.pstyle("corner-radius").value?"auto":d.pstyle("corner-radius").pfValue,T=s.tgtRs=d._private.rscratch,D=s.srcRs=h._private.rscratch;s.dirCounts={north:0,west:0,south:0,east:0,northwest:0,southwest:0,northeast:0,southeast:0};for(var C=0;C0){var q=u,H=Bt(q,Mt(t)),W=Bt(q,Mt(j)),$=H;if(W2)Bt(q,{x:j[2],y:j[3]})<$&&(t=[j[2],j[3]])}}var K=dn(t,n,o.arrowShapes[h].spacing(e)+p),Z=dn(t,n,o.arrowShapes[h].gap(e)+p);if(m.endX=Z[0],m.endY=Z[1],m.arrowEndX=K[0],m.arrowEndY=K[1],"inside-to-node"===k)t=[u.x,u.y];else if(A.units)t=this.manualEndptToPx(s,A);else if("outside-to-line"===k)t=m.srcIntn;else if("outside-to-node"===k||"outside-to-node-or-label"===k?a=r:"outside-to-line"!==k&&"outside-to-line-or-label"!==k||(a=[c.x,c.y]),t=o.nodeShapes[this.getNodeShape(s)].intersectLine(u.x,u.y,s.outerWidth(),s.outerHeight(),a[0],a[1],0,L,f),"outside-to-node-or-label"===k||"outside-to-line-or-label"===k){var Q=s._private.rscratch,J=Q.labelWidth,ee=Q.labelHeight,te=Q.labelX,ne=Q.labelY,re=J/2,ie=ee/2,ae=s.pstyle("text-valign").value;"top"===ae?ne-=ie:"bottom"===ae&&(ne+=ie);var oe=s.pstyle("text-halign").value;"left"===oe?te-=re:"right"===oe&&(te+=re);var se=hn(a[0],a[1],[te-re,ne-ie,te+re,ne-ie,te+re,ne+ie,te-re,ne+ie],u.x,u.y);if(se.length>0){var le=c,ue=Bt(le,Mt(t)),ce=Bt(le,Mt(se)),he=ue;if(ce2)Bt(le,{x:se[2],y:se[3]})=u||m){c={cp:f,segment:y};break}}if(c)break}var b=c.cp,x=c.segment,w=(u-d)/x.length,E=x.t1-x.t0,_=s?x.t0+E*w:x.t1-E*w;_=Yt(0,_,1),t=Gt(b.p0,b.p1,b.p2,_),i=function(e,t,n,r){var i=Yt(0,r-.001,1),a=Yt(0,r+.001,1),o=Gt(e,t,n,i),s=Gt(e,t,n,a);return Su(o,s)}(b.p0,b.p1,b.p2,_);break;case"straight":case"segments":case"haystack":for(var T,D,C,N,A=0,k=r.allpts.length,L=0;L+3=u));L+=2);var S=(u-D)/T;S=Yt(0,S,1),t=function(e,t,n,r){var i=t.x-e.x,a=t.y-e.y,o=Rt(e,t),s=i/o,l=a/o;return n=null==n?0:n,r=null!=r?r:n*o,{x:e.x+s*r,y:e.y+l*r}}(C,N,S),i=Su(C,N)}o("labelX",n,t.x),o("labelY",n,t.y),o("labelAutoAngle",n,i)}};u("source"),u("target"),this.applyLabelDimensions(e)}},ku.applyLabelDimensions=function(e){this.applyPrefixedLabelDimensions(e),e.isEdge()&&(this.applyPrefixedLabelDimensions(e,"source"),this.applyPrefixedLabelDimensions(e,"target"))},ku.applyPrefixedLabelDimensions=function(e,t){var n=e._private,r=this.getLabelText(e,t),i=this.calculateLabelDimensions(e,r),a=e.pstyle("line-height").pfValue,o=e.pstyle("text-wrap").strValue,s=st(n.rscratch,"labelWrapCachedLines",t)||[],l="wrap"!==o?1:Math.max(s.length,1),u=i.height/l,c=u*a,h=i.width,d=i.height+(l-1)*(a-1)*u;lt(n.rstyle,"labelWidth",t,h),lt(n.rscratch,"labelWidth",t,h),lt(n.rstyle,"labelHeight",t,d),lt(n.rscratch,"labelHeight",t,d),lt(n.rscratch,"labelLineHeight",t,c)},ku.getLabelText=function(e,t){var n=e._private,r=t?t+"-":"",i=e.pstyle(r+"label").strValue,a=e.pstyle("text-transform").value,o=function(e,r){return r?(lt(n.rscratch,e,t,r),r):st(n.rscratch,e,t)};if(!i)return"";"none"==a||("uppercase"==a?i=i.toUpperCase():"lowercase"==a&&(i=i.toLowerCase()));var s=e.pstyle("text-wrap").value;if("wrap"===s){var l=o("labelKey");if(null!=l&&o("labelWrapKey")===l)return o("labelWrapCachedText");for(var u=i.split("\n"),c=e.pstyle("text-max-width").pfValue,h="anywhere"===e.pstyle("text-overflow-wrap").value,d=[],p=/[\s\u200b]+/,g=h?"":" ",f=0;fc){for(var b=v.split(p),x="",w=0;wT)break;D+=i[N],N===i.length-1&&(C=!0)}return C||(D+="\u2026"),D}return i},ku.getLabelJustification=function(e){var t=e.pstyle("text-justification").strValue,n=e.pstyle("text-halign").strValue;if("auto"!==t)return t;if(!e.isNode())return"center";switch(n){case"left":return"right";case"right":return"left";default:return"center"}},ku.calculateLabelDimensions=function(e,t){var n=Ge(t,e._private.labelDimsKey),r=this.labelDimCache||(this.labelDimCache=[]),i=r[n];if(null!=i)return i;var a=e.pstyle("font-style").strValue,o=e.pstyle("font-size").pfValue,s=e.pstyle("font-family").strValue,l=e.pstyle("font-weight").strValue,u=this.labelCalcCanvas,c=this.labelCalcCanvasContext;if(!u){u=this.labelCalcCanvas=document.createElement("canvas"),c=this.labelCalcCanvasContext=u.getContext("2d");var h=u.style;h.position="absolute",h.left="-9999px",h.top="-9999px",h.zIndex="-1",h.visibility="hidden",h.pointerEvents="none"}c.font="".concat(a," ").concat(l," ").concat(o,"px ").concat(s);for(var d=0,p=0,g=t.split("\n"),f=0;f1&&void 0!==arguments[1])||arguments[1];if(t.merge(e),n)for(var r=0;r=e.desktopTapThreshold2}var C=i(t);v&&(e.hoverData.tapholdCancelled=!0);n=!0,r(f,["mousemove","vmousemove","tapdrag"],t,{x:c[0],y:c[1]});var A=function(){e.data.bgActivePosistion=void 0,e.hoverData.selecting||o.emit({originalEvent:t,type:"boxstart",position:{x:c[0],y:c[1]}}),g[4]=1,e.hoverData.selecting=!0,e.redrawHint("select",!0),e.redraw()};if(3===e.hoverData.which){if(v){var k={originalEvent:t,type:"cxtdrag",position:{x:c[0],y:c[1]}};m?m.emit(k):o.emit(k),e.hoverData.cxtDragged=!0,e.hoverData.cxtOver&&f===e.hoverData.cxtOver||(e.hoverData.cxtOver&&e.hoverData.cxtOver.emit({originalEvent:t,type:"cxtdragout",position:{x:c[0],y:c[1]}}),e.hoverData.cxtOver=f,f&&f.emit({originalEvent:t,type:"cxtdragover",position:{x:c[0],y:c[1]}}))}}else if(e.hoverData.dragging){if(n=!0,o.panningEnabled()&&o.userPanningEnabled()){var L;if(e.hoverData.justStartedPan){var S=e.hoverData.mdownPos;L={x:(c[0]-S[0])*s,y:(c[1]-S[1])*s},e.hoverData.justStartedPan=!1}else L={x:b[0]*s,y:b[1]*s};o.panBy(L),o.emit("dragpan"),e.hoverData.dragged=!0}c=e.projectIntoViewport(t.clientX,t.clientY)}else if(1!=g[4]||null!=m&&!m.pannable()){if(m&&m.pannable()&&m.active()&&m.unactivate(),m&&m.grabbed()||f==y||(y&&r(y,["mouseout","tapdragout"],t,{x:c[0],y:c[1]}),f&&r(f,["mouseover","tapdragover"],t,{x:c[0],y:c[1]}),e.hoverData.last=f),m)if(v){if(o.boxSelectionEnabled()&&C)m&&m.grabbed()&&(h(x),m.emit("freeon"),x.emit("free"),e.dragData.didDrag&&(m.emit("dragfreeon"),x.emit("dragfree"))),A();else if(m&&m.grabbed()&&e.nodeIsDraggable(m)){var M=!e.dragData.didDrag;M&&e.redrawHint("eles",!0),e.dragData.didDrag=!0,e.hoverData.draggingEles||u(x,{inDragLayer:!0});var I={x:0,y:0};if(N(b[0])&&N(b[1])&&(I.x+=b[0],I.y+=b[1],M)){var O=e.hoverData.dragDelta;O&&N(O[0])&&N(O[1])&&(I.x+=O[0],I.y+=O[1])}e.hoverData.draggingEles=!0,x.silentShift(I).emit("position drag"),e.redrawHint("drag",!0),e.redraw()}}else!function(){var t=e.hoverData.dragDelta=e.hoverData.dragDelta||[];0===t.length?(t.push(b[0]),t.push(b[1])):(t[0]+=b[0],t[1]+=b[1])}();n=!0}else if(v){if(e.hoverData.dragging||!o.boxSelectionEnabled()||!C&&o.panningEnabled()&&o.userPanningEnabled()){if(!e.hoverData.selecting&&o.panningEnabled()&&o.userPanningEnabled()){a(m,e.hoverData.downs)&&(e.hoverData.dragging=!0,e.hoverData.justStartedPan=!0,g[4]=0,e.data.bgActivePosistion=Mt(d),e.redrawHint("select",!0),e.redraw())}}else A();m&&m.pannable()&&m.active()&&m.unactivate()}return g[2]=c[0],g[3]=c[1],n?(t.stopPropagation&&t.stopPropagation(),t.preventDefault&&t.preventDefault(),!1):void 0}}),!1),e.registerBinding(t,"mouseup",(function(t){if(e.hoverData.capture){e.hoverData.capture=!1;var a=e.cy,o=e.projectIntoViewport(t.clientX,t.clientY),s=e.selection,l=e.findNearestElement(o[0],o[1],!0,!1),u=e.dragData.possibleDragElements,c=e.hoverData.down,d=i(t);if(e.data.bgActivePosistion&&(e.redrawHint("select",!0),e.redraw()),e.hoverData.tapholdCancelled=!0,e.data.bgActivePosistion=void 0,c&&c.unactivate(),3===e.hoverData.which){var p={originalEvent:t,type:"cxttapend",position:{x:o[0],y:o[1]}};if(c?c.emit(p):a.emit(p),!e.hoverData.cxtDragged){var g={originalEvent:t,type:"cxttap",position:{x:o[0],y:o[1]}};c?c.emit(g):a.emit(g)}e.hoverData.cxtDragged=!1,e.hoverData.which=null}else if(1===e.hoverData.which){if(r(l,["mouseup","tapend","vmouseup"],t,{x:o[0],y:o[1]}),e.dragData.didDrag||e.hoverData.dragged||e.hoverData.selecting||e.hoverData.isOverThresholdDrag||(r(c,["click","tap","vclick"],t,{x:o[0],y:o[1]}),b=!1,t.timeStamp-x<=a.multiClickDebounceTime()?(m&&clearTimeout(m),b=!0,x=null,r(c,["dblclick","dbltap","vdblclick"],t,{x:o[0],y:o[1]})):(m=setTimeout((function(){b||r(c,["oneclick","onetap","voneclick"],t,{x:o[0],y:o[1]})}),a.multiClickDebounceTime()),x=t.timeStamp)),null!=c||e.dragData.didDrag||e.hoverData.selecting||e.hoverData.dragged||i(t)||(a.$(n).unselect(["tapunselect"]),u.length>0&&e.redrawHint("eles",!0),e.dragData.possibleDragElements=u=a.collection()),l!=c||e.dragData.didDrag||e.hoverData.selecting||null!=l&&l._private.selectable&&(e.hoverData.dragging||("additive"===a.selectionType()||d?l.selected()?l.unselect(["tapunselect"]):l.select(["tapselect"]):d||(a.$(n).unmerge(l).unselect(["tapunselect"]),l.select(["tapselect"]))),e.redrawHint("eles",!0)),e.hoverData.selecting){var f=a.collection(e.getAllInBox(s[0],s[1],s[2],s[3]));e.redrawHint("select",!0),f.length>0&&e.redrawHint("eles",!0),a.emit({type:"boxend",originalEvent:t,position:{x:o[0],y:o[1]}});var v=function(e){return e.selectable()&&!e.selected()};"additive"===a.selectionType()||d||a.$(n).unmerge(f).unselect(),f.emit("box").stdFilter(v).select().emit("boxselect"),e.redraw()}if(e.hoverData.dragging&&(e.hoverData.dragging=!1,e.redrawHint("select",!0),e.redrawHint("eles",!0),e.redraw()),!s[4]){e.redrawHint("drag",!0),e.redrawHint("eles",!0);var y=c&&c.grabbed();h(u),y&&(c.emit("freeon"),u.emit("free"),e.dragData.didDrag&&(c.emit("dragfreeon"),u.emit("dragfree")))}}s[4]=0,e.hoverData.down=null,e.hoverData.cxtStarted=!1,e.hoverData.draggingEles=!1,e.hoverData.selecting=!1,e.hoverData.isOverThresholdDrag=!1,e.dragData.didDrag=!1,e.hoverData.dragged=!1,e.hoverData.dragDelta=[],e.hoverData.mdownPos=null,e.hoverData.mdownGPos=null}}),!1);var E,_,T,D,C,A,k,L,S,M,I,O,P,R=function(t){if(!e.scrollingPage){var n=e.cy,r=n.zoom(),i=n.pan(),a=e.projectIntoViewport(t.clientX,t.clientY),o=[a[0]*r+i.x,a[1]*r+i.y];if(e.hoverData.draggingEles||e.hoverData.dragging||e.hoverData.cxtStarted||0!==e.selection[4])t.preventDefault();else if(n.panningEnabled()&&n.userPanningEnabled()&&n.zoomingEnabled()&&n.userZoomingEnabled()){var s;t.preventDefault(),e.data.wheelZooming=!0,clearTimeout(e.data.wheelTimeout),e.data.wheelTimeout=setTimeout((function(){e.data.wheelZooming=!1,e.redrawHint("eles",!0),e.redraw()}),150),s=null!=t.deltaY?t.deltaY/-250:null!=t.wheelDeltaY?t.wheelDeltaY/1e3:t.wheelDelta/1e3,s*=e.wheelSensitivity,1===t.deltaMode&&(s*=33);var l=n.zoom()*Math.pow(10,s);"gesturechange"===t.type&&(l=e.gestureStartZoom*t.scale),n.zoom({level:l,renderedPosition:{x:o[0],y:o[1]}}),n.emit("gesturechange"===t.type?"pinchzoom":"scrollzoom")}}};e.registerBinding(e.container,"wheel",R,!0),e.registerBinding(t,"scroll",(function(t){e.scrollingPage=!0,clearTimeout(e.scrollingPageTimeout),e.scrollingPageTimeout=setTimeout((function(){e.scrollingPage=!1}),250)}),!0),e.registerBinding(e.container,"gesturestart",(function(t){e.gestureStartZoom=e.cy.zoom(),e.hasTouchStarted||t.preventDefault()}),!0),e.registerBinding(e.container,"gesturechange",(function(t){e.hasTouchStarted||R(t)}),!0),e.registerBinding(e.container,"mouseout",(function(t){var n=e.projectIntoViewport(t.clientX,t.clientY);e.cy.emit({originalEvent:t,type:"mouseout",position:{x:n[0],y:n[1]}})}),!1),e.registerBinding(e.container,"mouseover",(function(t){var n=e.projectIntoViewport(t.clientX,t.clientY);e.cy.emit({originalEvent:t,type:"mouseover",position:{x:n[0],y:n[1]}})}),!1);var B,F,z,G,Y,V,X,U=function(e,t,n,r){return Math.sqrt((n-e)*(n-e)+(r-t)*(r-t))},j=function(e,t,n,r){return(n-e)*(n-e)+(r-t)*(r-t)};if(e.registerBinding(e.container,"touchstart",B=function(t){if(e.hasTouchStarted=!0,w(t)){p(),e.touchData.capture=!0,e.data.bgActivePosistion=void 0;var n=e.cy,i=e.touchData.now,a=e.touchData.earlier;if(t.touches[0]){var o=e.projectIntoViewport(t.touches[0].clientX,t.touches[0].clientY);i[0]=o[0],i[1]=o[1]}if(t.touches[1]){o=e.projectIntoViewport(t.touches[1].clientX,t.touches[1].clientY);i[2]=o[0],i[3]=o[1]}if(t.touches[2]){o=e.projectIntoViewport(t.touches[2].clientX,t.touches[2].clientY);i[4]=o[0],i[5]=o[1]}if(t.touches[1]){e.touchData.singleTouchMoved=!0,h(e.dragData.touchDragEles);var l=e.findContainerClientCoords();S=l[0],M=l[1],I=l[2],O=l[3],E=t.touches[0].clientX-S,_=t.touches[0].clientY-M,T=t.touches[1].clientX-S,D=t.touches[1].clientY-M,P=0<=E&&E<=I&&0<=T&&T<=I&&0<=_&&_<=O&&0<=D&&D<=O;var d=n.pan(),g=n.zoom();C=U(E,_,T,D),A=j(E,_,T,D),L=[((k=[(E+T)/2,(_+D)/2])[0]-d.x)/g,(k[1]-d.y)/g];if(A<4e4&&!t.touches[2]){var f=e.findNearestElement(i[0],i[1],!0,!0),v=e.findNearestElement(i[2],i[3],!0,!0);return f&&f.isNode()?(f.activate().emit({originalEvent:t,type:"cxttapstart",position:{x:i[0],y:i[1]}}),e.touchData.start=f):v&&v.isNode()?(v.activate().emit({originalEvent:t,type:"cxttapstart",position:{x:i[0],y:i[1]}}),e.touchData.start=v):n.emit({originalEvent:t,type:"cxttapstart",position:{x:i[0],y:i[1]}}),e.touchData.start&&(e.touchData.start._private.grabbed=!1),e.touchData.cxt=!0,e.touchData.cxtDragged=!1,e.data.bgActivePosistion=void 0,void e.redraw()}}if(t.touches[2])n.boxSelectionEnabled()&&t.preventDefault();else if(t.touches[1]);else if(t.touches[0]){var y=e.findNearestElements(i[0],i[1],!0,!0),m=y[0];if(null!=m&&(m.activate(),e.touchData.start=m,e.touchData.starts=y,e.nodeIsGrabbable(m))){var b=e.dragData.touchDragEles=n.collection(),x=null;e.redrawHint("eles",!0),e.redrawHint("drag",!0),m.selected()?(x=n.$((function(t){return t.selected()&&e.nodeIsGrabbable(t)})),u(x,{addToList:b})):c(m,{addToList:b}),s(m);var N=function(e){return{originalEvent:t,type:e,position:{x:i[0],y:i[1]}}};m.emit(N("grabon")),x?x.forEach((function(e){e.emit(N("grab"))})):m.emit(N("grab"))}r(m,["touchstart","tapstart","vmousedown"],t,{x:i[0],y:i[1]}),null==m&&(e.data.bgActivePosistion={x:o[0],y:o[1]},e.redrawHint("select",!0),e.redraw()),e.touchData.singleTouchMoved=!1,e.touchData.singleTouchStartTime=+new Date,clearTimeout(e.touchData.tapholdTimeout),e.touchData.tapholdTimeout=setTimeout((function(){!1!==e.touchData.singleTouchMoved||e.pinching||e.touchData.selecting||r(e.touchData.start,["taphold"],t,{x:i[0],y:i[1]})}),e.tapholdDuration)}if(t.touches.length>=1){for(var R=e.touchData.startPosition=[null,null,null,null,null,null],B=0;B=e.touchTapThreshold2}if(n&&e.touchData.cxt){t.preventDefault();var x=t.touches[0].clientX-S,k=t.touches[0].clientY-M,I=t.touches[1].clientX-S,O=t.touches[1].clientY-M,R=j(x,k,I,O);if(R/A>=2.25||R>=22500){e.touchData.cxt=!1,e.data.bgActivePosistion=void 0,e.redrawHint("select",!0);var B={originalEvent:t,type:"cxttapend",position:{x:s[0],y:s[1]}};e.touchData.start?(e.touchData.start.unactivate().emit(B),e.touchData.start=null):o.emit(B)}}if(n&&e.touchData.cxt){B={originalEvent:t,type:"cxtdrag",position:{x:s[0],y:s[1]}};e.data.bgActivePosistion=void 0,e.redrawHint("select",!0),e.touchData.start?e.touchData.start.emit(B):o.emit(B),e.touchData.start&&(e.touchData.start._private.grabbed=!1),e.touchData.cxtDragged=!0;var F=e.findNearestElement(s[0],s[1],!0,!0);e.touchData.cxtOver&&F===e.touchData.cxtOver||(e.touchData.cxtOver&&e.touchData.cxtOver.emit({originalEvent:t,type:"cxtdragout",position:{x:s[0],y:s[1]}}),e.touchData.cxtOver=F,F&&F.emit({originalEvent:t,type:"cxtdragover",position:{x:s[0],y:s[1]}}))}else if(n&&t.touches[2]&&o.boxSelectionEnabled())t.preventDefault(),e.data.bgActivePosistion=void 0,this.lastThreeTouch=+new Date,e.touchData.selecting||o.emit({originalEvent:t,type:"boxstart",position:{x:s[0],y:s[1]}}),e.touchData.selecting=!0,e.touchData.didSelect=!0,i[4]=1,i&&0!==i.length&&void 0!==i[0]?(i[2]=(s[0]+s[2]+s[4])/3,i[3]=(s[1]+s[3]+s[5])/3):(i[0]=(s[0]+s[2]+s[4])/3,i[1]=(s[1]+s[3]+s[5])/3,i[2]=(s[0]+s[2]+s[4])/3+1,i[3]=(s[1]+s[3]+s[5])/3+1),e.redrawHint("select",!0),e.redraw();else if(n&&t.touches[1]&&!e.touchData.didSelect&&o.zoomingEnabled()&&o.panningEnabled()&&o.userZoomingEnabled()&&o.userPanningEnabled()){if(t.preventDefault(),e.data.bgActivePosistion=void 0,e.redrawHint("select",!0),ee=e.dragData.touchDragEles){e.redrawHint("drag",!0);for(var z=0;z0&&!e.hoverData.draggingEles&&!e.swipePanning&&null!=e.data.bgActivePosistion&&(e.data.bgActivePosistion=void 0,e.redrawHint("select",!0),e.redraw())}},!1),e.registerBinding(t,"touchcancel",z=function(t){var n=e.touchData.start;e.touchData.capture=!1,n&&n.unactivate()}),e.registerBinding(t,"touchend",G=function(t){var i=e.touchData.start;if(e.touchData.capture){0===t.touches.length&&(e.touchData.capture=!1),t.preventDefault();var a=e.selection;e.swipePanning=!1,e.hoverData.draggingEles=!1;var o,s=e.cy,l=s.zoom(),u=e.touchData.now,c=e.touchData.earlier;if(t.touches[0]){var d=e.projectIntoViewport(t.touches[0].clientX,t.touches[0].clientY);u[0]=d[0],u[1]=d[1]}if(t.touches[1]){d=e.projectIntoViewport(t.touches[1].clientX,t.touches[1].clientY);u[2]=d[0],u[3]=d[1]}if(t.touches[2]){d=e.projectIntoViewport(t.touches[2].clientX,t.touches[2].clientY);u[4]=d[0],u[5]=d[1]}if(i&&i.unactivate(),e.touchData.cxt){if(o={originalEvent:t,type:"cxttapend",position:{x:u[0],y:u[1]}},i?i.emit(o):s.emit(o),!e.touchData.cxtDragged){var p={originalEvent:t,type:"cxttap",position:{x:u[0],y:u[1]}};i?i.emit(p):s.emit(p)}return e.touchData.start&&(e.touchData.start._private.grabbed=!1),e.touchData.cxt=!1,e.touchData.start=null,void e.redraw()}if(!t.touches[2]&&s.boxSelectionEnabled()&&e.touchData.selecting){e.touchData.selecting=!1;var g=s.collection(e.getAllInBox(a[0],a[1],a[2],a[3]));a[0]=void 0,a[1]=void 0,a[2]=void 0,a[3]=void 0,a[4]=0,e.redrawHint("select",!0),s.emit({type:"boxend",originalEvent:t,position:{x:u[0],y:u[1]}});g.emit("box").stdFilter((function(e){return e.selectable()&&!e.selected()})).select().emit("boxselect"),g.nonempty()&&e.redrawHint("eles",!0),e.redraw()}if(null!=i&&i.unactivate(),t.touches[2])e.data.bgActivePosistion=void 0,e.redrawHint("select",!0);else if(t.touches[1]);else if(t.touches[0]);else if(!t.touches[0]){e.data.bgActivePosistion=void 0,e.redrawHint("select",!0);var f=e.dragData.touchDragEles;if(null!=i){var v=i._private.grabbed;h(f),e.redrawHint("drag",!0),e.redrawHint("eles",!0),v&&(i.emit("freeon"),f.emit("free"),e.dragData.didDrag&&(i.emit("dragfreeon"),f.emit("dragfree"))),r(i,["touchend","tapend","vmouseup","tapdragout"],t,{x:u[0],y:u[1]}),i.unactivate(),e.touchData.start=null}else{var y=e.findNearestElement(u[0],u[1],!0,!0);r(y,["touchend","tapend","vmouseup","tapdragout"],t,{x:u[0],y:u[1]})}var m=e.touchData.startPosition[0]-u[0],b=m*m,x=e.touchData.startPosition[1]-u[1],w=(b+x*x)*l*l;e.touchData.singleTouchMoved||(i||s.$(":selected").unselect(["tapunselect"]),r(i,["tap","vclick"],t,{x:u[0],y:u[1]}),Y=!1,t.timeStamp-X<=s.multiClickDebounceTime()?(V&&clearTimeout(V),Y=!0,X=null,r(i,["dbltap","vdblclick"],t,{x:u[0],y:u[1]})):(V=setTimeout((function(){Y||r(i,["onetap","voneclick"],t,{x:u[0],y:u[1]})}),s.multiClickDebounceTime()),X=t.timeStamp)),null!=i&&!e.dragData.didDrag&&i._private.selectable&&w2){for(var p=[c[0],c[1]],g=Math.pow(p[0]-e,2)+Math.pow(p[1]-t,2),f=1;f0)return f[0]}return null},p=Object.keys(h),g=0;g0?u:Zt(i,a,e,t,n,r,o,s)},checkPoint:function(e,t,n,r,i,a,o,s){var l=2*(s="auto"===s?vn(r,i):s);if(rn(e,t,this.points,a,o,r,i-l,[0,-1],n))return!0;if(rn(e,t,this.points,a,o,r-l,i,[0,-1],n))return!0;var u=r/2+2*n,c=i/2+2*n;return!!nn(e,t,[a-u,o-c,a-u,o,a+u,o,a+u,o-c])||(!!sn(e,t,l,l,a+r/2-s,o+i/2-s,n)||!!sn(e,t,l,l,a-r/2+s,o+i/2-s,n))}}},zu.registerNodeShapes=function(){var e=this.nodeShapes={},t=this;this.generateEllipse(),this.generatePolygon("triangle",pn(3,0)),this.generateRoundPolygon("round-triangle",pn(3,0)),this.generatePolygon("rectangle",pn(4,0)),e.square=e.rectangle,this.generateRoundRectangle(),this.generateCutRectangle(),this.generateBarrel(),this.generateBottomRoundrectangle();var n=[0,1,1,0,0,-1,-1,0];this.generatePolygon("diamond",n),this.generateRoundPolygon("round-diamond",n),this.generatePolygon("pentagon",pn(5,0)),this.generateRoundPolygon("round-pentagon",pn(5,0)),this.generatePolygon("hexagon",pn(6,0)),this.generateRoundPolygon("round-hexagon",pn(6,0)),this.generatePolygon("heptagon",pn(7,0)),this.generateRoundPolygon("round-heptagon",pn(7,0)),this.generatePolygon("octagon",pn(8,0)),this.generateRoundPolygon("round-octagon",pn(8,0));var r=new Array(20),i=fn(5,0),a=fn(5,Math.PI/5),o=.5*(3-Math.sqrt(5));o*=1.57;for(var s=0;s=e.deqFastCost*f)break}else if(i){if(p>=e.deqCost*l||p>=e.deqAvgCost*s)break}else if(g>=e.deqNoDrawCost*Uu)break;var v=e.deq(t,h,c);if(!(v.length>0))break;for(var y=0;y0&&(e.onDeqd(t,u),!i&&e.shouldRedraw(t,u,h,c)&&r())}),i(t))}}},qu=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:We;u(this,e),this.idsByKey=new ut,this.keyForId=new ut,this.cachesByLvl=new ut,this.lvls=[],this.getKey=t,this.doesEleInvalidateKey=n}return h(e,[{key:"getIdsFor",value:function(e){null==e&&Ze("Can not get id list for null key");var t=this.idsByKey,n=this.idsByKey.get(e);return n||(n=new ht,t.set(e,n)),n}},{key:"addIdForKey",value:function(e,t){null!=e&&this.getIdsFor(e).add(t)}},{key:"deleteIdForKey",value:function(e,t){null!=e&&this.getIdsFor(e).delete(t)}},{key:"getNumberOfIdsForKey",value:function(e){return null==e?0:this.getIdsFor(e).size}},{key:"updateKeyMappingFor",value:function(e){var t=e.id(),n=this.keyForId.get(t),r=this.getKey(e);this.deleteIdForKey(n,t),this.addIdForKey(r,t),this.keyForId.set(t,r)}},{key:"deleteKeyMappingFor",value:function(e){var t=e.id(),n=this.keyForId.get(t);this.deleteIdForKey(n,t),this.keyForId.delete(t)}},{key:"keyHasChangedFor",value:function(e){var t=e.id();return this.keyForId.get(t)!==this.getKey(e)}},{key:"isInvalid",value:function(e){return this.keyHasChangedFor(e)||this.doesEleInvalidateKey(e)}},{key:"getCachesAt",value:function(e){var t=this.cachesByLvl,n=this.lvls,r=t.get(e);return r||(r=new ut,t.set(e,r),n.push(e)),r}},{key:"getCache",value:function(e,t){return this.getCachesAt(t).get(e)}},{key:"get",value:function(e,t){var n=this.getKey(e),r=this.getCache(n,t);return null!=r&&this.updateKeyMappingFor(e),r}},{key:"getForCachedKey",value:function(e,t){var n=this.keyForId.get(e.id());return this.getCache(n,t)}},{key:"hasCache",value:function(e,t){return this.getCachesAt(t).has(e)}},{key:"has",value:function(e,t){var n=this.getKey(e);return this.hasCache(n,t)}},{key:"setCache",value:function(e,t,n){n.key=e,this.getCachesAt(t).set(e,n)}},{key:"set",value:function(e,t,n){var r=this.getKey(e);this.setCache(r,t,n),this.updateKeyMappingFor(e)}},{key:"deleteCache",value:function(e,t){this.getCachesAt(t).delete(e)}},{key:"delete",value:function(e,t){var n=this.getKey(e);this.deleteCache(n,t)}},{key:"invalidateKey",value:function(e){var t=this;this.lvls.forEach((function(n){return t.deleteCache(e,n)}))}},{key:"invalidate",value:function(e){var t=e.id(),n=this.keyForId.get(t);this.deleteKeyMappingFor(e);var r=this.doesEleInvalidateKey(e);return r&&this.invalidateKey(n),r||0===this.getNumberOfIdsForKey(n)}}]),e}(),Hu={dequeue:"dequeue",downscale:"downscale",highQuality:"highQuality"},Wu=it({getKey:null,doesEleInvalidateKey:We,drawElement:null,getBoundingBox:null,getRotationPoint:null,getRotationOffset:null,isVisible:He,allowEdgeTxrCaching:!0,allowParentTxrCaching:!0}),$u=function(e,t){var n=this;n.renderer=e,n.onDequeues=[];var r=Wu(t);H(n,r),n.lookup=new qu(r.getKey,r.doesEleInvalidateKey),n.setupDequeueing()},Ku=$u.prototype;Ku.reasons=Hu,Ku.getTextureQueue=function(e){var t=this;return t.eleImgCaches=t.eleImgCaches||{},t.eleImgCaches[e]=t.eleImgCaches[e]||[]},Ku.getRetiredTextureQueue=function(e){var t=this.eleImgCaches.retired=this.eleImgCaches.retired||{};return t[e]=t[e]||[]},Ku.getElementQueue=function(){return this.eleCacheQueue=this.eleCacheQueue||new vt((function(e,t){return t.reqs-e.reqs}))},Ku.getElementKeyToQueue=function(){return this.eleKeyToCacheQueue=this.eleKeyToCacheQueue||{}},Ku.getElement=function(e,t,n,r,i){var a=this,o=this.renderer,s=o.cy.zoom(),l=this.lookup;if(!t||0===t.w||0===t.h||isNaN(t.w)||isNaN(t.h)||!e.visible()||e.removed())return null;if(!a.allowEdgeTxrCaching&&e.isEdge()||!a.allowParentTxrCaching&&e.isParent())return null;if(null==r&&(r=Math.ceil(Ot(s*n))),r<-4)r=-4;else if(s>=7.99||r>3)return null;var u=Math.pow(2,r),c=t.h*u,h=t.w*u,d=o.eleTextBiggerThanMin(e,u);if(!this.isVisible(e,d))return null;var p,g=l.get(e,r);if(g&&g.invalidated&&(g.invalidated=!1,g.texture.invalidatedWidth-=g.width),g)return g;if(p=c<=25?25:c<=50?50:50*Math.ceil(c/50),c>1024||h>1024)return null;var f=a.getTextureQueue(p),v=f[f.length-2],y=function(){return a.recycleTexture(p,h)||a.addTexture(p,h)};v||(v=f[f.length-1]),v||(v=y()),v.width-v.usedWidthr;N--)D=a.getElement(e,t,n,N,Hu.downscale);C()}else{var A;if(!x&&!w&&!E)for(var k=r-1;k>=-4;k--){var L=l.get(e,k);if(L){A=L;break}}if(b(A))return a.queueElement(e,r),A;v.context.translate(v.usedWidth,0),v.context.scale(u,u),this.drawElement(v.context,e,t,d,!1),v.context.scale(1/u,1/u),v.context.translate(-v.usedWidth,0)}return g={x:v.usedWidth,texture:v,level:r,scale:u,width:h,height:c,scaledLabelShown:d},v.usedWidth+=Math.ceil(h+8),v.eleCaches.push(g),l.set(e,r,g),a.checkTextureFullness(v),g},Ku.invalidateElements=function(e){for(var t=0;t=.2*e.width&&this.retireTexture(e)},Ku.checkTextureFullness=function(e){var t=this.getTextureQueue(e.height);e.usedWidth/e.width>.8&&e.fullnessChecks>=10?at(t,e):e.fullnessChecks++},Ku.retireTexture=function(e){var t=e.height,n=this.getTextureQueue(t),r=this.lookup;at(n,e),e.retired=!0;for(var i=e.eleCaches,a=0;a=t)return a.retired=!1,a.usedWidth=0,a.invalidatedWidth=0,a.fullnessChecks=0,ot(a.eleCaches),a.context.setTransform(1,0,0,1,0,0),a.context.clearRect(0,0,a.width,a.height),at(r,a),n.push(a),a}},Ku.queueElement=function(e,t){var n=this.getElementQueue(),r=this.getElementKeyToQueue(),i=this.getKey(e),a=r[i];if(a)a.level=Math.max(a.level,t),a.eles.merge(e),a.reqs++,n.updateItem(a);else{var o={eles:e.spawn().merge(e),level:t,reqs:1,key:i};n.push(o),r[i]=o}},Ku.dequeue=function(e){for(var t=this,n=t.getElementQueue(),r=t.getElementKeyToQueue(),i=[],a=t.lookup,o=0;o<1&&n.size()>0;o++){var s=n.pop(),l=s.key,u=s.eles[0],c=a.hasCache(u,s.level);if(r[l]=null,!c){i.push(s);var h=t.getBoundingBox(u);t.getElement(u,h,e,s.level,Hu.dequeue)}}return i},Ku.removeFromQueue=function(e){var t=this.getElementQueue(),n=this.getElementKeyToQueue(),r=this.getKey(e),i=n[r];null!=i&&(1===i.eles.length?(i.reqs=qe,t.updateItem(i),t.pop(),n[r]=null):i.eles.unmerge(e))},Ku.onDequeue=function(e){this.onDequeues.push(e)},Ku.offDequeue=function(e){at(this.onDequeues,e)},Ku.setupDequeueing=ju({deqRedrawThreshold:100,deqCost:.15,deqAvgCost:.1,deqNoDrawCost:.9,deqFastCost:.9,deq:function(e,t,n){return e.dequeue(t,n)},onDeqd:function(e,t){for(var n=0;n=3.99||n>2)return null;r.validateLayersElesOrdering(n,e);var o,s,l=r.layersByLevel,u=Math.pow(2,n),c=l[n]=l[n]||[];if(r.levelIsComplete(n,e))return c;!function(){var t=function(t){if(r.validateLayersElesOrdering(t,e),r.levelIsComplete(t,e))return s=l[t],!0},i=function(e){if(!s)for(var r=n+e;-4<=r&&r<=2&&!t(r);r+=e);};i(1),i(-1);for(var a=c.length-1;a>=0;a--){var o=c[a];o.invalid&&at(c,o)}}();var h=function(t){var i=(t=t||{}).after;if(function(){if(!o){o=Vt();for(var t=0;t16e6)return null;var a=r.makeLayer(o,n);if(null!=i){var s=c.indexOf(i)+1;c.splice(s,0,a)}else(void 0===t.insert||t.insert)&&c.unshift(a);return a};if(r.skipping&&!a)return null;for(var d=null,p=e.length/1,g=!a,f=0;f=p||!Kt(d.bb,v.boundingBox()))&&!(d=h({insert:!0,after:d})))return null;s||g?r.queueLayer(d,v):r.drawEleInLayer(d,v,n,t),d.eles.push(v),m[n]=d}}return s||(g?null:c)},Qu.getEleLevelForLayerLevel=function(e,t){return e},Qu.drawEleInLayer=function(e,t,n,r){var i=this.renderer,a=e.context,o=t.boundingBox();0!==o.w&&0!==o.h&&t.visible()&&(n=this.getEleLevelForLayerLevel(n,r),i.setImgSmoothing(a,!1),i.drawCachedElement(a,t,null,null,n,true),i.setImgSmoothing(a,!0))},Qu.levelIsComplete=function(e,t){var n=this.layersByLevel[e];if(!n||0===n.length)return!1;for(var r=0,i=0;i0)return!1;if(a.invalid)return!1;r+=a.eles.length}return r===t.length},Qu.validateLayersElesOrdering=function(e,t){var n=this.layersByLevel[e];if(n)for(var r=0;r0){e=!0;break}}return e},Qu.invalidateElements=function(e){var t=this;0!==e.length&&(t.lastInvalidationTime=Me(),0!==e.length&&t.haveLayers()&&t.updateElementsInLayers(e,(function(e,n,r){t.invalidateLayer(e)})))},Qu.invalidateLayer=function(e){if(this.lastInvalidationTime=Me(),!e.invalid){var t=e.level,n=e.eles,r=this.layersByLevel[t];at(r,e),e.elesQueue=[],e.invalid=!0,e.replacement&&(e.replacement.invalid=!0);for(var i=0;i3&&void 0!==arguments[3])||arguments[3],i=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],a=!(arguments.length>5&&void 0!==arguments[5])||arguments[5],o=this,s=t._private.rscratch;if((!a||t.visible())&&!s.badLine&&null!=s.allpts&&!isNaN(s.allpts[0])){var l;n&&(l=n,e.translate(-l.x1,-l.y1));var u=a?t.pstyle("opacity").value:1,c=a?t.pstyle("line-opacity").value:1,h=t.pstyle("curve-style").value,d=t.pstyle("line-style").value,p=t.pstyle("width").pfValue,g=t.pstyle("line-cap").value,f=u*c,v=u*c,y=function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:f;"straight-triangle"===h?(o.eleStrokeStyle(e,t,n),o.drawEdgeTrianglePath(t,e,s.allpts)):(e.lineWidth=p,e.lineCap=g,o.eleStrokeStyle(e,t,n),o.drawEdgePath(t,e,s.allpts,d),e.lineCap="butt")},m=function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:v;o.drawArrowheads(e,t,n)};if(e.lineJoin="round","yes"===t.pstyle("ghost").value){var b=t.pstyle("ghost-offset-x").pfValue,x=t.pstyle("ghost-offset-y").pfValue,w=t.pstyle("ghost-opacity").value,E=f*w;e.translate(b,x),y(E),m(E),e.translate(-b,-x)}i&&o.drawEdgeUnderlay(e,t),y(),m(),i&&o.drawEdgeOverlay(e,t),o.drawElementText(e,t,null,r),n&&e.translate(l.x1,l.y1)}}},vc=function(e){if(!["overlay","underlay"].includes(e))throw new Error("Invalid state");return function(t,n){if(n.visible()){var r=n.pstyle("".concat(e,"-opacity")).value;if(0!==r){var i=this,a=i.usePaths(),o=n._private.rscratch,s=2*n.pstyle("".concat(e,"-padding")).pfValue,l=n.pstyle("".concat(e,"-color")).value;t.lineWidth=s,"self"!==o.edgeType||a?t.lineCap="round":t.lineCap="butt",i.colorStrokeStyle(t,l[0],l[1],l[2],r),i.drawEdgePath(n,t,o.allpts,"solid")}}}};fc.drawEdgeOverlay=vc("overlay"),fc.drawEdgeUnderlay=vc("underlay"),fc.drawEdgePath=function(e,t,n,r){var i,a=e._private.rscratch,o=t,s=!1,l=this.usePaths(),u=e.pstyle("line-dash-pattern").pfValue,c=e.pstyle("line-dash-offset").pfValue;if(l){var h=n.join("$");a.pathCacheKey&&a.pathCacheKey===h?(i=t=a.pathCache,s=!0):(i=t=new Path2D,a.pathCacheKey=h,a.pathCache=i)}if(o.setLineDash)switch(r){case"dotted":o.setLineDash([1,1]);break;case"dashed":o.setLineDash(u),o.lineDashOffset=c;break;case"solid":o.setLineDash([])}if(!s&&!a.badLine)switch(t.beginPath&&t.beginPath(),t.moveTo(n[0],n[1]),a.edgeType){case"bezier":case"self":case"compound":case"multibezier":for(var d=2;d+3=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,o=!0,s=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,a=e},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw a}}}}(a.roundCorners);try{for(v.s();!(f=v.n()).done;){Eu(t,f.value)}}catch(m){v.e(m)}finally{v.f()}t.lineTo(n[n.length-2],n[n.length-1])}else for(var y=2;y+15&&void 0!==arguments[5]?arguments[5]:5,o=arguments.length>6?arguments[6]:void 0;e.beginPath(),e.moveTo(t+a,n),e.lineTo(t+r-a,n),e.quadraticCurveTo(t+r,n,t+r,n+a),e.lineTo(t+r,n+i-a),e.quadraticCurveTo(t+r,n+i,t+r-a,n+i),e.lineTo(t+a,n+i),e.quadraticCurveTo(t,n+i,t,n+i-a),e.lineTo(t,n+a),e.quadraticCurveTo(t,n,t+a,n),e.closePath(),o?e.stroke():e.fill()}mc.eleTextBiggerThanMin=function(e,t){if(!t){var n=e.cy().zoom(),r=this.getPixelRatio(),i=Math.ceil(Ot(n*r));t=Math.pow(2,i)}return!(e.pstyle("font-size").pfValue*t5&&void 0!==arguments[5])||arguments[5],o=this;if(null==r){if(a&&!o.eleTextBiggerThanMin(t))return}else if(!1===r)return;if(t.isNode()){var s=t.pstyle("label");if(!s||!s.value)return;var l=o.getLabelJustification(t);e.textAlign=l,e.textBaseline="bottom"}else{var u=t.element()._private.rscratch.badLine,c=t.pstyle("label"),h=t.pstyle("source-label"),d=t.pstyle("target-label");if(u||(!c||!c.value)&&(!h||!h.value)&&(!d||!d.value))return;e.textAlign="center",e.textBaseline="bottom"}var p,g=!n;n&&(p=n,e.translate(-p.x1,-p.y1)),null==i?(o.drawText(e,t,null,g,a),t.isEdge()&&(o.drawText(e,t,"source",g,a),o.drawText(e,t,"target",g,a))):o.drawText(e,t,i,g,a),n&&e.translate(p.x1,p.y1)},mc.getFontCache=function(e){var t;this.fontCaches=this.fontCaches||[];for(var n=0;n2&&void 0!==arguments[2])||arguments[2],r=t.pstyle("font-style").strValue,i=t.pstyle("font-size").pfValue+"px",a=t.pstyle("font-family").strValue,o=t.pstyle("font-weight").strValue,s=n?t.effectiveOpacity()*t.pstyle("text-opacity").value:1,l=t.pstyle("text-outline-opacity").value*s,u=t.pstyle("color").value,c=t.pstyle("text-outline-color").value;e.font=r+" "+o+" "+i+" "+a,e.lineJoin="round",this.colorFillStyle(e,u[0],u[1],u[2],s),this.colorStrokeStyle(e,c[0],c[1],c[2],l)},mc.getTextAngle=function(e,t){var n=e._private.rscratch,r=t?t+"-":"",i=e.pstyle(r+"text-rotation"),a=st(n,"labelAngle",t);return"autorotate"===i.strValue?e.isEdge()?a:0:"none"===i.strValue?0:i.pfValue},mc.drawText=function(e,t,n){var r=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],i=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],a=t._private.rscratch,o=i?t.effectiveOpacity():1;if(!i||0!==o&&0!==t.pstyle("text-opacity").value){"main"===n&&(n=null);var s,l,u=st(a,"labelX",n),c=st(a,"labelY",n),h=this.getLabelText(t,n);if(null!=h&&""!==h&&!isNaN(u)&&!isNaN(c)){this.setupTextStyle(e,t,i);var d,p=n?n+"-":"",g=st(a,"labelWidth",n),f=st(a,"labelHeight",n),v=t.pstyle(p+"text-margin-x").pfValue,y=t.pstyle(p+"text-margin-y").pfValue,m=t.isEdge(),b=t.pstyle("text-halign").value,x=t.pstyle("text-valign").value;switch(m&&(b="center",x="center"),u+=v,c+=y,0!==(d=r?this.getTextAngle(t,n):0)&&(s=u,l=c,e.translate(s,l),e.rotate(d),u=0,c=0),x){case"top":break;case"center":c+=f/2;break;case"bottom":c+=f}var w=t.pstyle("text-background-opacity").value,E=t.pstyle("text-border-opacity").value,_=t.pstyle("text-border-width").pfValue,T=t.pstyle("text-background-padding").pfValue,D=0===t.pstyle("text-background-shape").strValue.indexOf("round");if(w>0||_>0&&E>0){var C=u-T;switch(b){case"left":C-=g;break;case"center":C-=g/2}var N=c-f-T,A=g+2*T,k=f+2*T;if(w>0){var L=e.fillStyle,S=t.pstyle("text-background-color").value;e.fillStyle="rgba("+S[0]+","+S[1]+","+S[2]+","+w*o+")",D?bc(e,C,N,A,k,2):e.fillRect(C,N,A,k),e.fillStyle=L}if(_>0&&E>0){var M=e.strokeStyle,I=e.lineWidth,O=t.pstyle("text-border-color").value,P=t.pstyle("text-border-style").value;if(e.strokeStyle="rgba("+O[0]+","+O[1]+","+O[2]+","+E*o+")",e.lineWidth=_,e.setLineDash)switch(P){case"dotted":e.setLineDash([1,1]);break;case"dashed":e.setLineDash([4,2]);break;case"double":e.lineWidth=_/4,e.setLineDash([]);break;case"solid":e.setLineDash([])}if(D?bc(e,C,N,A,k,2,"stroke"):e.strokeRect(C,N,A,k),"double"===P){var R=_/2;D?bc(e,C+R,N+R,A-2*R,k-2*R,2,"stroke"):e.strokeRect(C+R,N+R,A-2*R,k-2*R)}e.setLineDash&&e.setLineDash([]),e.lineWidth=I,e.strokeStyle=M}}var B=2*t.pstyle("text-outline-width").pfValue;if(B>0&&(e.lineWidth=B),"wrap"===t.pstyle("text-wrap").value){var F=st(a,"labelWrapCachedLines",n),z=st(a,"labelLineHeight",n),G=g/2,Y=this.getLabelJustification(t);switch("auto"===Y||("left"===b?"left"===Y?u+=-g:"center"===Y&&(u+=-G):"center"===b?"left"===Y?u+=-G:"right"===Y&&(u+=G):"right"===b&&("center"===Y?u+=G:"right"===Y&&(u+=g))),x){case"top":case"center":case"bottom":c-=(F.length-1)*z}for(var V=0;V0&&e.strokeText(F[V],u,c),e.fillText(F[V],u,c),c+=z}else B>0&&e.strokeText(h,u,c),e.fillText(h,u,c);0!==d&&(e.rotate(-d),e.translate(-s,-l))}}};var xc={drawNode:function(e,t,n){var r,i,a=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],o=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],s=!(arguments.length>5&&void 0!==arguments[5])||arguments[5],l=this,u=t._private,c=u.rscratch,h=t.position();if(N(h.x)&&N(h.y)&&(!s||t.visible())){var d,p,g=s?t.effectiveOpacity():1,f=l.usePaths(),v=!1,y=t.padding();r=t.width()+2*y,i=t.height()+2*y,n&&(p=n,e.translate(-p.x1,-p.y1));for(var m=t.pstyle("background-image").value,b=new Array(m.length),x=new Array(m.length),w=0,E=0;E0&&void 0!==arguments[0]?arguments[0]:A;l.eleFillStyle(e,t,n)},U=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:R;l.colorStrokeStyle(e,k[0],k[1],k[2],t)},j=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:G;l.colorStrokeStyle(e,F[0],F[1],F[2],t)},q=function(e,t,n,r){var i,a=l.nodePathCache=l.nodePathCache||[],o=Ye("polygon"===n?n+","+r.join(","):n,""+t,""+e,""+V),s=a[o],u=!1;return null!=s?(i=s,u=!0,c.pathCache=i):(i=new Path2D,a[o]=c.pathCache=i),{path:i,cacheHit:u}},H=t.pstyle("shape").strValue,W=t.pstyle("shape-polygon-points").pfValue;if(f){e.translate(h.x,h.y);var $=q(r,i,H,W);d=$.path,v=$.cacheHit}var K=function(){if(!v){var n=h;f&&(n={x:0,y:0}),l.nodeShapes[l.getNodeShape(t)].draw(d||e,n.x,n.y,r,i,V,c)}f?e.fill(d):e.fill()},Z=function(){for(var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:g,r=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=u.backgrounding,a=0,o=0;o0&&void 0!==arguments[0]&&arguments[0],a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:g;l.hasPie(t)&&(l.drawPie(e,t,a),n&&(f||l.nodeShapes[l.getNodeShape(t)].draw(e,h.x,h.y,r,i,V,c)))},J=function(){var t=(D>0?D:-D)*(arguments.length>0&&void 0!==arguments[0]?arguments[0]:g),n=D>0?0:255;0!==D&&(l.colorFillStyle(e,n,n,n,t),f?e.fill(d):e.fill())},ee=function(){if(C>0){if(e.lineWidth=C,e.lineCap=M,e.lineJoin=S,e.setLineDash)switch(L){case"dotted":e.setLineDash([1,1]);break;case"dashed":e.setLineDash(O),e.lineDashOffset=P;break;case"solid":case"double":e.setLineDash([])}if("center"!==I){if(e.save(),e.lineWidth*=2,"inside"===I)f?e.clip(d):e.clip();else{var t=new Path2D;t.rect(-r/2-C,-i/2-C,r+2*C,i+2*C),t.addPath(d),e.clip(t,"evenodd")}f?e.stroke(d):e.stroke(),e.restore()}else f?e.stroke(d):e.stroke();if("double"===L){e.lineWidth=C/3;var n=e.globalCompositeOperation;e.globalCompositeOperation="destination-out",f?e.stroke(d):e.stroke(),e.globalCompositeOperation=n}e.setLineDash&&e.setLineDash([])}},te=function(){if(B>0){if(e.lineWidth=B,e.lineCap="butt",e.setLineDash)switch(z){case"dotted":e.setLineDash([1,1]);break;case"dashed":e.setLineDash([4,2]);break;case"solid":case"double":e.setLineDash([])}var n=h;f&&(n={x:0,y:0});var a=l.getNodeShape(t),o=C;"inside"===I&&(o=0),"outside"===I&&(o*=2);var s,u=(r+o+(B+Y))/r,c=(i+o+(B+Y))/i,d=r*u,p=i*c,g=l.nodeShapes[a].points;if(f)s=q(d,p,a,g).path;if("ellipse"===a)l.drawEllipsePath(s||e,n.x,n.y,d,p);else if(["round-diamond","round-heptagon","round-hexagon","round-octagon","round-pentagon","round-polygon","round-triangle","round-tag"].includes(a)){var v=0,y=0,m=0;"round-diamond"===a?v=1.4*(o+Y+B):"round-heptagon"===a?(v=1.075*(o+Y+B),m=-(o/2+Y+B)/35):"round-hexagon"===a?v=1.12*(o+Y+B):"round-pentagon"===a?(v=1.13*(o+Y+B),m=-(o/2+Y+B)/15):"round-tag"===a?(v=1.12*(o+Y+B),y=.07*(o/2+B+Y)):"round-triangle"===a&&(v=(o+Y+B)*(Math.PI/2),m=-(o+Y/2+B)/Math.PI),0!==v&&(d=r*(u=(r+v)/r),["round-hexagon","round-tag"].includes(a)||(p=i*(c=(i+v)/i)));for(var b=d/2,x=p/2,w=(V="auto"===V?yn(d,p):V)+(o+B+Y)/2,E=new Array(g.length/2),_=new Array(g.length/2),T=0;T0){if(r=r||n.position(),null==i||null==a){var h=n.padding();i=n.width()+2*h,a=n.height()+2*h}this.colorFillStyle(t,l[0],l[1],l[2],s),this.nodeShapes[u].draw(t,r.x,r.y,i+2*o,a+2*o,c),t.fill()}}}};xc.drawNodeOverlay=wc("overlay"),xc.drawNodeUnderlay=wc("underlay"),xc.hasPie=function(e){return(e=e[0])._private.hasPie},xc.drawPie=function(e,t,n,r){t=t[0],r=r||t.position();var i=t.cy().style(),a=t.pstyle("pie-size"),o=r.x,s=r.y,l=t.width(),u=t.height(),c=Math.min(l,u)/2,h=0;this.usePaths()&&(o=0,s=0),"%"===a.units?c*=a.pfValue:void 0!==a.pfValue&&(c=a.pfValue/2);for(var d=1;d<=i.pieBackgroundN;d++){var p=t.pstyle("pie-"+d+"-background-size").value,g=t.pstyle("pie-"+d+"-background-color").value,f=t.pstyle("pie-"+d+"-background-opacity").value*n,v=p/100;v+h>1&&(v=1-h);var y=1.5*Math.PI+2*Math.PI*h,m=y+2*Math.PI*v;0===p||h>=1||h+v>1||(e.beginPath(),e.moveTo(o,s),e.arc(o,s,c,y,m),e.closePath(),this.colorFillStyle(e,g[0],g[1],g[2],f),e.fill(),h+=v)}};var Ec={};Ec.getPixelRatio=function(){var e=this.data.contexts[0];if(null!=this.forcedPixelRatio)return this.forcedPixelRatio;var t=e.backingStorePixelRatio||e.webkitBackingStorePixelRatio||e.mozBackingStorePixelRatio||e.msBackingStorePixelRatio||e.oBackingStorePixelRatio||e.backingStorePixelRatio||1;return(window.devicePixelRatio||1)/t},Ec.paintCache=function(e){for(var t,n=this.paintCaches=this.paintCaches||[],r=!0,i=0;io.minMbLowQualFrames&&(o.motionBlurPxRatio=o.mbPxRBlurry)),o.clearingMotionBlur&&(o.motionBlurPxRatio=1),o.textureDrawLastFrame&&!h&&(c[o.NODE]=!0,c[o.SELECT_BOX]=!0);var m=l.style(),b=l.zoom(),x=void 0!==i?i:b,w=l.pan(),E={x:w.x,y:w.y},_={zoom:b,pan:{x:w.x,y:w.y}},T=o.prevViewport;void 0===T||_.zoom!==T.zoom||_.pan.x!==T.pan.x||_.pan.y!==T.pan.y||f&&!g||(o.motionBlurPxRatio=1),a&&(E=a),x*=s,E.x*=s,E.y*=s;var D=o.getCachedZSortedEles();function C(e,t,n,r,i){var a=e.globalCompositeOperation;e.globalCompositeOperation="destination-out",o.colorFillStyle(e,255,255,255,o.motionBlurTransparency),e.fillRect(t,n,r,i),e.globalCompositeOperation=a}function N(e,r){var s,l,c,h;o.clearingMotionBlur||e!==u.bufferContexts[o.MOTIONBLUR_BUFFER_NODE]&&e!==u.bufferContexts[o.MOTIONBLUR_BUFFER_DRAG]?(s=E,l=x,c=o.canvasWidth,h=o.canvasHeight):(s={x:w.x*p,y:w.y*p},l=b*p,c=o.canvasWidth*p,h=o.canvasHeight*p),e.setTransform(1,0,0,1,0,0),"motionBlur"===r?C(e,0,0,c,h):t||void 0!==r&&!r||e.clearRect(0,0,c,h),n||(e.translate(s.x,s.y),e.scale(l,l)),a&&e.translate(a.x,a.y),i&&e.scale(i,i)}if(h||(o.textureDrawLastFrame=!1),h){if(o.textureDrawLastFrame=!0,!o.textureCache){o.textureCache={},o.textureCache.bb=l.mutableElements().boundingBox(),o.textureCache.texture=o.data.bufferCanvases[o.TEXTURE_BUFFER];var A=o.data.bufferContexts[o.TEXTURE_BUFFER];A.setTransform(1,0,0,1,0,0),A.clearRect(0,0,o.canvasWidth*o.textureMult,o.canvasHeight*o.textureMult),o.render({forcedContext:A,drawOnlyNodeLayer:!0,forcedPxRatio:s*o.textureMult}),(_=o.textureCache.viewport={zoom:l.zoom(),pan:l.pan(),width:o.canvasWidth,height:o.canvasHeight}).mpan={x:(0-_.pan.x)/_.zoom,y:(0-_.pan.y)/_.zoom}}c[o.DRAG]=!1,c[o.NODE]=!1;var k=u.contexts[o.NODE],L=o.textureCache.texture;_=o.textureCache.viewport;k.setTransform(1,0,0,1,0,0),d?C(k,0,0,_.width,_.height):k.clearRect(0,0,_.width,_.height);var S=m.core("outside-texture-bg-color").value,M=m.core("outside-texture-bg-opacity").value;o.colorFillStyle(k,S[0],S[1],S[2],M),k.fillRect(0,0,_.width,_.height);b=l.zoom();N(k,!1),k.clearRect(_.mpan.x,_.mpan.y,_.width/_.zoom/s,_.height/_.zoom/s),k.drawImage(L,_.mpan.x,_.mpan.y,_.width/_.zoom/s,_.height/_.zoom/s)}else o.textureOnViewport&&!t&&(o.textureCache=null);var I=l.extent(),O=o.pinching||o.hoverData.dragging||o.swipePanning||o.data.wheelZooming||o.hoverData.draggingEles||o.cy.animated(),P=o.hideEdgesOnViewport&&O,R=[];if(R[o.NODE]=!c[o.NODE]&&d&&!o.clearedForMotionBlur[o.NODE]||o.clearingMotionBlur,R[o.NODE]&&(o.clearedForMotionBlur[o.NODE]=!0),R[o.DRAG]=!c[o.DRAG]&&d&&!o.clearedForMotionBlur[o.DRAG]||o.clearingMotionBlur,R[o.DRAG]&&(o.clearedForMotionBlur[o.DRAG]=!0),c[o.NODE]||n||r||R[o.NODE]){var B=d&&!R[o.NODE]&&1!==p;N(k=t||(B?o.data.bufferContexts[o.MOTIONBLUR_BUFFER_NODE]:u.contexts[o.NODE]),d&&!B?"motionBlur":void 0),P?o.drawCachedNodes(k,D.nondrag,s,I):o.drawLayeredElements(k,D.nondrag,s,I),o.debug&&o.drawDebugPoints(k,D.nondrag),n||d||(c[o.NODE]=!1)}if(!r&&(c[o.DRAG]||n||R[o.DRAG])){B=d&&!R[o.DRAG]&&1!==p;N(k=t||(B?o.data.bufferContexts[o.MOTIONBLUR_BUFFER_DRAG]:u.contexts[o.DRAG]),d&&!B?"motionBlur":void 0),P?o.drawCachedNodes(k,D.drag,s,I):o.drawCachedElements(k,D.drag,s,I),o.debug&&o.drawDebugPoints(k,D.drag),n||d||(c[o.DRAG]=!1)}if(o.showFps||!r&&c[o.SELECT_BOX]&&!n){if(N(k=t||u.contexts[o.SELECT_BOX]),1==o.selection[4]&&(o.hoverData.selecting||o.touchData.selecting)){b=o.cy.zoom();var F=m.core("selection-box-border-width").value/b;k.lineWidth=F,k.fillStyle="rgba("+m.core("selection-box-color").value[0]+","+m.core("selection-box-color").value[1]+","+m.core("selection-box-color").value[2]+","+m.core("selection-box-opacity").value+")",k.fillRect(o.selection[0],o.selection[1],o.selection[2]-o.selection[0],o.selection[3]-o.selection[1]),F>0&&(k.strokeStyle="rgba("+m.core("selection-box-border-color").value[0]+","+m.core("selection-box-border-color").value[1]+","+m.core("selection-box-border-color").value[2]+","+m.core("selection-box-opacity").value+")",k.strokeRect(o.selection[0],o.selection[1],o.selection[2]-o.selection[0],o.selection[3]-o.selection[1]))}if(u.bgActivePosistion&&!o.hoverData.selecting){b=o.cy.zoom();var z=u.bgActivePosistion;k.fillStyle="rgba("+m.core("active-bg-color").value[0]+","+m.core("active-bg-color").value[1]+","+m.core("active-bg-color").value[2]+","+m.core("active-bg-opacity").value+")",k.beginPath(),k.arc(z.x,z.y,m.core("active-bg-size").pfValue/b,0,2*Math.PI),k.fill()}var G=o.lastRedrawTime;if(o.showFps&&G){G=Math.round(G);var Y=Math.round(1e3/G);k.setTransform(1,0,0,1,0,0),k.fillStyle="rgba(255, 0, 0, 0.75)",k.strokeStyle="rgba(255, 0, 0, 0.75)",k.lineWidth=1,k.fillText("1 frame = "+G+" ms = "+Y+" fps",0,20);k.strokeRect(0,30,250,20),k.fillRect(0,30,250*Math.min(Y/60,1),20)}n||(c[o.SELECT_BOX]=!1)}if(d&&1!==p){var V=u.contexts[o.NODE],X=o.data.bufferCanvases[o.MOTIONBLUR_BUFFER_NODE],U=u.contexts[o.DRAG],j=o.data.bufferCanvases[o.MOTIONBLUR_BUFFER_DRAG],q=function(e,t,n){e.setTransform(1,0,0,1,0,0),n||!y?e.clearRect(0,0,o.canvasWidth,o.canvasHeight):C(e,0,0,o.canvasWidth,o.canvasHeight);var r=p;e.drawImage(t,0,0,o.canvasWidth*r,o.canvasHeight*r,0,0,o.canvasWidth,o.canvasHeight)};(c[o.NODE]||R[o.NODE])&&(q(V,X,R[o.NODE]),c[o.NODE]=!1),(c[o.DRAG]||R[o.DRAG])&&(q(U,j,R[o.DRAG]),c[o.DRAG]=!1)}o.prevViewport=_,o.clearingMotionBlur&&(o.clearingMotionBlur=!1,o.motionBlurCleared=!0,o.motionBlur=!0),d&&(o.motionBlurTimeout=setTimeout((function(){o.motionBlurTimeout=null,o.clearedForMotionBlur[o.NODE]=!1,o.clearedForMotionBlur[o.DRAG]=!1,o.motionBlur=!1,o.clearingMotionBlur=!h,o.mbFrames=0,c[o.NODE]=!0,c[o.DRAG]=!0,o.redraw()}),100)),t||l.emit("render")};for(var _c={drawPolygonPath:function(e,t,n,r,i,a){var o=r/2,s=i/2;e.beginPath&&e.beginPath(),e.moveTo(t+o*a[0],n+s*a[1]);for(var l=1;l0&&a>0){d.clearRect(0,0,i,a),d.globalCompositeOperation="source-over";var p=this.getCachedZSortedEles();if(e.full)d.translate(-n.x1*l,-n.y1*l),d.scale(l,l),this.drawElements(d,p),d.scale(1/l,1/l),d.translate(n.x1*l,n.y1*l);else{var g=t.pan(),f={x:g.x*l,y:g.y*l};l*=t.zoom(),d.translate(f.x,f.y),d.scale(l,l),this.drawElements(d,p),d.scale(1/l,1/l),d.translate(-f.x,-f.y)}e.bg&&(d.globalCompositeOperation="destination-over",d.fillStyle=e.bg,d.rect(0,0,i,a),d.fill())}return h},Lc.png=function(e){return Mc(e,this.bufferCanvasImage(e),"image/png")},Lc.jpg=function(e){return Mc(e,this.bufferCanvasImage(e),"image/jpeg")};var Ic={nodeShapeImpl:function(e,t,n,r,i,a,o,s){switch(e){case"ellipse":return this.drawEllipsePath(t,n,r,i,a);case"polygon":return this.drawPolygonPath(t,n,r,i,a,o);case"round-polygon":return this.drawRoundPolygonPath(t,n,r,i,a,o,s);case"roundrectangle":case"round-rectangle":return this.drawRoundRectanglePath(t,n,r,i,a,s);case"cutrectangle":case"cut-rectangle":return this.drawCutRectanglePath(t,n,r,i,a,o,s);case"bottomroundrectangle":case"bottom-round-rectangle":return this.drawBottomRoundRectanglePath(t,n,r,i,a,s);case"barrel":return this.drawBarrelPath(t,n,r,i,a)}}},Oc=Rc,Pc=Rc.prototype;function Rc(e){var t=this;t.data={canvases:new Array(Pc.CANVAS_LAYERS),contexts:new Array(Pc.CANVAS_LAYERS),canvasNeedsRedraw:new Array(Pc.CANVAS_LAYERS),bufferCanvases:new Array(Pc.BUFFER_COUNT),bufferContexts:new Array(Pc.CANVAS_LAYERS)};var n="-webkit-tap-highlight-color",r="rgba(0,0,0,0)";t.data.canvasContainer=document.createElement("div");var i=t.data.canvasContainer.style;t.data.canvasContainer.style[n]=r,i.position="relative",i.zIndex="0",i.overflow="hidden";var a=e.cy.container();a.appendChild(t.data.canvasContainer),a.style[n]=r;var o={"-webkit-user-select":"none","-moz-user-select":"-moz-none","user-select":"none","-webkit-tap-highlight-color":"rgba(0,0,0,0)","outline-style":"none"};y&&y.userAgent.match(/msie|trident|edge/i)&&(o["-ms-touch-action"]="none",o["touch-action"]="none");for(var s=0;s2&&N.push("'"+this.terminals_[T]+"'");k=p.showPosition?"Parse error on line "+(u+1)+":\n"+p.showPosition()+"\nExpecting "+N.join(", ")+", got '"+(this.terminals_[b]||b)+"'":"Parse error on line "+(u+1)+": Unexpected "+(1==b?"end of input":"'"+(this.terminals_[b]||b)+"'"),this.parseError(k,{text:p.match,token:this.terminals_[b]||b,line:p.yylineno,loc:v,expected:N})}if(E[0]instanceof Array&&E.length>1)throw new Error("Parse Error: multiple actions possible at state: "+w+", token: "+b);switch(E[0]){case 1:n.push(b),i.push(p.yytext),a.push(p.yylloc),n.push(E[1]),b=null,x?(b=x,x=null):(c=p.yyleng,l=p.yytext,u=p.yylineno,v=p.yylloc,h>0&&h--);break;case 2:if(D=this.productions_[E[1]][1],A.$=i[i.length-D],A._$={first_line:a[a.length-(D||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(D||1)].first_column,last_column:a[a.length-1].last_column},y&&(A._$.range=[a[a.length-(D||1)].range[0],a[a.length-1].range[1]]),void 0!==(_=this.performAction.apply(A,[l,c,u,g.yy,E[1],i,a].concat(d))))return _;D&&(n=n.slice(0,-1*D*2),i=i.slice(0,-1*D),a=a.slice(0,-1*D)),n.push(this.productions_[E[1]][0]),i.push(A.$),a.push(A._$),C=s[n[n.length-2]][n[n.length-1]],n.push(C);break;case 3:return!0}}return!0}),"parse")},b=function(){var e={EOF:1,parseError:(0,o.K2)((function(e,t){if(!this.yy.parser)throw new Error(e);this.yy.parser.parseError(e,t)}),"parseError"),setInput:(0,o.K2)((function(e,t){return this.yy=t||this.yy||{},this._input=e,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this}),"setInput"),input:(0,o.K2)((function(){var e=this._input[0];return this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e,e.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e}),"input"),unput:(0,o.K2)((function(e){var t=e.length,n=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t),this.offset-=t;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-t]),this.yyleng=this.yytext.length,this}),"unput"),more:(0,o.K2)((function(){return this._more=!0,this}),"more"),reject:(0,o.K2)((function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"reject"),less:(0,o.K2)((function(e){this.unput(this.match.slice(e))}),"less"),pastInput:(0,o.K2)((function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?"...":"")+e.substr(-20).replace(/\n/g,"")}),"pastInput"),upcomingInput:(0,o.K2)((function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?"...":"")).replace(/\n/g,"")}),"upcomingInput"),showPosition:(0,o.K2)((function(){var e=this.pastInput(),t=new Array(e.length+1).join("-");return e+this.upcomingInput()+"\n"+t+"^"}),"showPosition"),test_match:(0,o.K2)((function(e,t){var n,r,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),(r=e[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-r[r.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+e[0].length},this.yytext+=e[0],this.match+=e[0],this.matches=e,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(e[0].length),this.matched+=e[0],n=this.performAction.call(this,this.yy,this,t,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var a in i)this[a]=i[a];return!1}return!1}),"test_match"),next:(0,o.K2)((function(){if(this.done)return this.EOF;var e,t,n,r;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),a=0;at[0].length)){if(t=n,r=a,this.options.backtrack_lexer){if(!1!==(e=this.test_match(n,i[a])))return e;if(this._backtrack){t=!1;continue}return!1}if(!this.options.flex)break}return t?!1!==(e=this.test_match(t,i[r]))&&e:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"next"),lex:(0,o.K2)((function(){var e=this.next();return e||this.lex()}),"lex"),begin:(0,o.K2)((function(e){this.conditionStack.push(e)}),"begin"),popState:(0,o.K2)((function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]}),"popState"),_currentRules:(0,o.K2)((function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules}),"_currentRules"),topState:(0,o.K2)((function(e){return(e=this.conditionStack.length-1-Math.abs(e||0))>=0?this.conditionStack[e]:"INITIAL"}),"topState"),pushState:(0,o.K2)((function(e){this.begin(e)}),"pushState"),stateStackSize:(0,o.K2)((function(){return this.conditionStack.length}),"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,o.K2)((function(e,t,n,r){switch(n){case 0:return e.getLogger().trace("Found comment",t.yytext),6;case 1:return 8;case 2:this.begin("CLASS");break;case 3:return this.popState(),16;case 4:case 23:case 26:this.popState();break;case 5:e.getLogger().trace("Begin icon"),this.begin("ICON");break;case 6:return e.getLogger().trace("SPACELINE"),6;case 7:return 7;case 8:return 15;case 9:e.getLogger().trace("end icon"),this.popState();break;case 10:return e.getLogger().trace("Exploding node"),this.begin("NODE"),19;case 11:return e.getLogger().trace("Cloud"),this.begin("NODE"),19;case 12:return e.getLogger().trace("Explosion Bang"),this.begin("NODE"),19;case 13:return e.getLogger().trace("Cloud Bang"),this.begin("NODE"),19;case 14:case 15:case 16:case 17:return this.begin("NODE"),19;case 18:return 13;case 19:return 22;case 20:return 11;case 21:this.begin("NSTR2");break;case 22:return"NODE_DESCR";case 24:e.getLogger().trace("Starting NSTR"),this.begin("NSTR");break;case 25:return e.getLogger().trace("description:",t.yytext),"NODE_DESCR";case 27:return this.popState(),e.getLogger().trace("node end ))"),"NODE_DEND";case 28:return this.popState(),e.getLogger().trace("node end )"),"NODE_DEND";case 29:return this.popState(),e.getLogger().trace("node end ...",t.yytext),"NODE_DEND";case 30:case 33:case 34:return this.popState(),e.getLogger().trace("node end (("),"NODE_DEND";case 31:case 32:return this.popState(),e.getLogger().trace("node end (-"),"NODE_DEND";case 35:case 36:return e.getLogger().trace("Long description:",t.yytext),20}}),"anonymous"),rules:[/^(?:\s*%%.*)/i,/^(?:mindmap\b)/i,/^(?::::)/i,/^(?:.+)/i,/^(?:\n)/i,/^(?:::icon\()/i,/^(?:[\s]+[\n])/i,/^(?:[\n]+)/i,/^(?:[^\)]+)/i,/^(?:\))/i,/^(?:-\))/i,/^(?:\(-)/i,/^(?:\)\))/i,/^(?:\))/i,/^(?:\(\()/i,/^(?:\{\{)/i,/^(?:\()/i,/^(?:\[)/i,/^(?:[\s]+)/i,/^(?:[^\(\[\n\)\{\}]+)/i,/^(?:$)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:[^"]+)/i,/^(?:["])/i,/^(?:[\)]\))/i,/^(?:[\)])/i,/^(?:[\]])/i,/^(?:\}\})/i,/^(?:\(-)/i,/^(?:-\))/i,/^(?:\(\()/i,/^(?:\()/i,/^(?:[^\)\]\(\}]+)/i,/^(?:.+(?!\(\())/i],conditions:{CLASS:{rules:[3,4],inclusive:!1},ICON:{rules:[8,9],inclusive:!1},NSTR2:{rules:[22,23],inclusive:!1},NSTR:{rules:[25,26],inclusive:!1},NODE:{rules:[21,24,27,28,29,30,31,32,33,34,35,36],inclusive:!1},INITIAL:{rules:[0,1,2,5,6,7,10,11,12,13,14,15,16,17,18,19,20],inclusive:!0}}};return e}();function x(){this.yy={}}return m.lexer=b,(0,o.K2)(x,"Parser"),x.prototype=m,m.Parser=x,new x}();eh.parser=eh;var th=eh,nh=[],rh=0,ih={},ah=(0,o.K2)((()=>{nh=[],rh=0,ih={}}),"clear"),oh=(0,o.K2)((function(e){for(let t=nh.length-1;t>=0;t--)if(nh[t].levelnh.length>0?nh[0]:null),"getMindmap"),lh=(0,o.K2)(((e,t,n,r)=>{o.Rm.info("addNode",e,t,n,r);const i=(0,o.D7)();let a=i.mindmap?.padding??o.UI.mindmap.padding;switch(r){case uh.ROUNDED_RECT:case uh.RECT:case uh.HEXAGON:a*=2}const s={id:rh++,nodeId:(0,o.jZ)(t,i),level:e,descr:(0,o.jZ)(n,i),type:r,children:[],width:i.mindmap?.maxNodeWidth??o.UI.mindmap.maxNodeWidth,padding:a},l=oh(e);if(l)l.children.push(s),nh.push(s);else{if(0!==nh.length)throw new Error('There can be only one root. No parent could be found for ("'+s.descr+'")');nh.push(s)}}),"addNode"),uh={DEFAULT:0,NO_BORDER:0,ROUNDED_RECT:1,RECT:2,CIRCLE:3,CLOUD:4,BANG:5,HEXAGON:6},ch={clear:ah,addNode:lh,getMindmap:sh,nodeType:uh,getType:(0,o.K2)(((e,t)=>{switch(o.Rm.debug("In get type",e,t),e){case"[":return uh.RECT;case"(":return")"===t?uh.ROUNDED_RECT:uh.CLOUD;case"((":return uh.CIRCLE;case")":return uh.CLOUD;case"))":return uh.BANG;case"{{":return uh.HEXAGON;default:return uh.DEFAULT}}),"getType"),setElementForId:(0,o.K2)(((e,t)=>{ih[e]=t}),"setElementForId"),decorateNode:(0,o.K2)((e=>{if(!e)return;const t=(0,o.D7)(),n=nh[nh.length-1];e.icon&&(n.icon=(0,o.jZ)(e.icon,t)),e.class&&(n.class=(0,o.jZ)(e.class,t))}),"decorateNode"),type2Str:(0,o.K2)((e=>{switch(e){case uh.DEFAULT:return"no-border";case uh.RECT:return"rect";case uh.ROUNDED_RECT:return"rounded-rect";case uh.CIRCLE:return"circle";case uh.CLOUD:return"cloud";case uh.BANG:return"bang";case uh.HEXAGON:return"hexgon";default:return"no-border"}}),"type2Str"),getLogger:(0,o.K2)((()=>o.Rm),"getLogger"),getElementById:(0,o.K2)((e=>ih[e]),"getElementById")},hh=(0,o.K2)((function(e,t,n,r){t.append("path").attr("id","node-"+n.id).attr("class","node-bkg node-"+e.type2Str(n.type)).attr("d",`M0 ${n.height-5} v${10-n.height} q0,-5 5,-5 h${n.width-10} q5,0 5,5 v${n.height-5} H0 Z`),t.append("line").attr("class","node-line-"+r).attr("x1",0).attr("y1",n.height).attr("x2",n.width).attr("y2",n.height)}),"defaultBkg"),dh=(0,o.K2)((function(e,t,n){t.append("rect").attr("id","node-"+n.id).attr("class","node-bkg node-"+e.type2Str(n.type)).attr("height",n.height).attr("width",n.width)}),"rectBkg"),ph=(0,o.K2)((function(e,t,n){const r=n.width,i=n.height,a=.15*r,o=.25*r,s=.35*r,l=.2*r;t.append("path").attr("id","node-"+n.id).attr("class","node-bkg node-"+e.type2Str(n.type)).attr("d",`M0 0 a${a},${a} 0 0,1 ${.25*r},${-1*r*.1}\n a${s},${s} 1 0,1 ${.4*r},${-1*r*.1}\n a${o},${o} 1 0,1 ${.35*r},${1*r*.2}\n\n a${a},${a} 1 0,1 ${.15*r},${1*i*.35}\n a${l},${l} 1 0,1 ${-1*r*.15},${1*i*.65}\n\n a${o},${a} 1 0,1 ${-1*r*.25},${.15*r}\n a${s},${s} 1 0,1 ${-1*r*.5},0\n a${a},${a} 1 0,1 ${-1*r*.25},${-1*r*.15}\n\n a${a},${a} 1 0,1 ${-1*r*.1},${-1*i*.35}\n a${l},${l} 1 0,1 ${.1*r},${-1*i*.65}\n\n H0 V0 Z`)}),"cloudBkg"),gh=(0,o.K2)((function(e,t,n){const r=n.width,i=n.height,a=.15*r;t.append("path").attr("id","node-"+n.id).attr("class","node-bkg node-"+e.type2Str(n.type)).attr("d",`M0 0 a${a},${a} 1 0,0 ${.25*r},${-1*i*.1}\n a${a},${a} 1 0,0 ${.25*r},0\n a${a},${a} 1 0,0 ${.25*r},0\n a${a},${a} 1 0,0 ${.25*r},${1*i*.1}\n\n a${a},${a} 1 0,0 ${.15*r},${1*i*.33}\n a${.8*a},${.8*a} 1 0,0 0,${1*i*.34}\n a${a},${a} 1 0,0 ${-1*r*.15},${1*i*.33}\n\n a${a},${a} 1 0,0 ${-1*r*.25},${.15*i}\n a${a},${a} 1 0,0 ${-1*r*.25},0\n a${a},${a} 1 0,0 ${-1*r*.25},0\n a${a},${a} 1 0,0 ${-1*r*.25},${-1*i*.15}\n\n a${a},${a} 1 0,0 ${-1*r*.1},${-1*i*.33}\n a${.8*a},${.8*a} 1 0,0 0,${-1*i*.34}\n a${a},${a} 1 0,0 ${.1*r},${-1*i*.33}\n\n H0 V0 Z`)}),"bangBkg"),fh=(0,o.K2)((function(e,t,n){t.append("circle").attr("id","node-"+n.id).attr("class","node-bkg node-"+e.type2Str(n.type)).attr("r",n.width/2)}),"circleBkg");function vh(e,t,n,r,i){return e.insert("polygon",":first-child").attr("points",r.map((function(e){return e.x+","+e.y})).join(" ")).attr("transform","translate("+(i.width-t)/2+", "+n+")")}(0,o.K2)(vh,"insertPolygonShape");var yh=(0,o.K2)((function(e,t,n){const r=n.height,i=r/4,a=n.width-n.padding+2*i;vh(t,a,r,[{x:i,y:0},{x:a-i,y:0},{x:a,y:-r/2},{x:a-i,y:-r},{x:i,y:-r},{x:0,y:-r/2}],n)}),"hexagonBkg"),mh=(0,o.K2)((function(e,t,n){t.append("rect").attr("id","node-"+n.id).attr("class","node-bkg node-"+e.type2Str(n.type)).attr("height",n.height).attr("rx",n.padding).attr("ry",n.padding).attr("width",n.width)}),"roundedRectBkg"),bh=(0,o.K2)((async function(e,t,n,a,o){const s=o.htmlLabels,l=a%11,u=t.append("g");n.section=l;let c="section-"+l;l<0&&(c+=" section-root"),u.attr("class",(n.class?n.class+" ":"")+"mindmap-node "+c);const h=u.append("g"),d=u.append("g"),p=n.descr.replace(/()/g,"\n");await(0,r.GZ)(d,p,{useHtmlLabels:s,width:n.width,classes:"mindmap-node-label"},o),s||d.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle");const g=d.node().getBBox(),[f]=(0,i.I5)(o.fontSize);if(n.height=g.height+1.1*f*.5+n.padding,n.width=g.width+2*n.padding,n.icon)if(n.type===e.nodeType.CIRCLE){n.height+=50,n.width+=50;u.append("foreignObject").attr("height","50px").attr("width",n.width).attr("style","text-align: center;").append("div").attr("class","icon-container").append("i").attr("class","node-icon-"+l+" "+n.icon),d.attr("transform","translate("+n.width/2+", "+(n.height/2-1.5*n.padding)+")")}else{n.width+=50;const e=n.height;n.height=Math.max(e,60);const t=Math.abs(n.height-e);u.append("foreignObject").attr("width","60px").attr("height",n.height).attr("style","text-align: center;margin-top:"+t/2+"px;").append("div").attr("class","icon-container").append("i").attr("class","node-icon-"+l+" "+n.icon),d.attr("transform","translate("+(25+n.width/2)+", "+(t/2+n.padding/2)+")")}else if(s){const e=(n.width-g.width)/2,t=(n.height-g.height)/2;d.attr("transform","translate("+e+", "+t+")")}else{const e=n.width/2,t=n.padding/2;d.attr("transform","translate("+e+", "+t+")")}switch(n.type){case e.nodeType.DEFAULT:hh(e,h,n,l);break;case e.nodeType.ROUNDED_RECT:mh(e,h,n,l);break;case e.nodeType.RECT:dh(e,h,n,l);break;case e.nodeType.CIRCLE:h.attr("transform","translate("+n.width/2+", "+ +n.height/2+")"),fh(e,h,n,l);break;case e.nodeType.CLOUD:ph(e,h,n,l);break;case e.nodeType.BANG:gh(e,h,n,l);break;case e.nodeType.HEXAGON:yh(e,h,n,l)}return e.setElementForId(n.id,u),n.height}),"drawNode"),xh=(0,o.K2)((function(e,t){const n=e.getElementById(t.id),r=t.x||0,i=t.y||0;n.attr("transform","translate("+r+","+i+")")}),"positionNode");async function wh(e,t,n,r,i){await bh(e,t,n,r,i),n.children&&await Promise.all(n.children.map(((n,a)=>wh(e,t,n,r<0?a:r,i))))}function Eh(e,t){t.edges().map(((t,n)=>{const r=t.data();if(t[0]._private.bodyBounds){const i=t[0]._private.rscratch;o.Rm.trace("Edge: ",n,r),e.insert("path").attr("d",`M ${i.startX},${i.startY} L ${i.midX},${i.midY} L${i.endX},${i.endY} `).attr("class","edge section-edge-"+r.section+" edge-depth-"+r.depth)}}))}function _h(e,t,n,r){t.add({group:"nodes",data:{id:e.id.toString(),labelText:e.descr,height:e.height,width:e.width,level:r,nodeId:e.id,padding:e.padding,type:e.type},position:{x:e.x,y:e.y}}),e.children&&e.children.forEach((i=>{_h(i,t,n,r+1),t.add({group:"edges",data:{id:`${e.id}_${i.id}`,source:e.id,target:i.id,depth:r,section:i.section}})}))}function Th(e,t){return new Promise((n=>{const r=(0,Kc.Ltv)("body").append("div").attr("id","cy").attr("style","display:none"),i=Wc({container:document.getElementById("cy"),style:[{selector:"edge",style:{"curve-style":"bezier"}}]});r.remove(),_h(e,i,t,0),i.nodes().forEach((function(e){e.layoutDimensions=()=>{const t=e.data();return{w:t.width,h:t.height}}})),i.layout({name:"cose-bilkent",quality:"proof",styleEnabled:!1,animate:!1}).run(),i.ready((e=>{o.Rm.info("Ready",e),n(i)}))}))}function Dh(e,t){t.nodes().map(((t,n)=>{const r=t.data();r.x=t.position().x,r.y=t.position().y,xh(e,r);const i=e.getElementById(r.nodeId);o.Rm.info("Id:",n,"Position: (",t.position().x,", ",t.position().y,")",r),i.attr("transform",`translate(${t.position().x-r.width/2}, ${t.position().y-r.height/2})`),i.attr("attr",`apa-${n})`)}))}Wc.use($c),(0,o.K2)(wh,"drawNodes"),(0,o.K2)(Eh,"drawEdges"),(0,o.K2)(_h,"addNodes"),(0,o.K2)(Th,"layoutMindmap"),(0,o.K2)(Dh,"positionNodes");var Ch={draw:(0,o.K2)((async(e,t,n,r)=>{o.Rm.debug("Rendering mindmap diagram\n"+e);const i=r.db,s=i.getMindmap();if(!s)return;const l=(0,o.D7)();l.htmlLabels=!1;const u=(0,a.D)(t),c=u.append("g");c.attr("class","mindmap-edges");const h=u.append("g");h.attr("class","mindmap-nodes"),await wh(i,h,s,-1,l);const d=await Th(s,l);Eh(c,d),Dh(i,d),(0,o.ot)(void 0,u,l.mindmap?.padding??o.UI.mindmap.padding,l.mindmap?.useMaxWidth??o.UI.mindmap.useMaxWidth)}),"draw")},Nh=(0,o.K2)((e=>{let t="";for(let n=0;n`\n .edge {\n stroke-width: 3;\n }\n ${Nh(e)}\n .section-root rect, .section-root path, .section-root circle, .section-root polygon {\n fill: ${e.git0};\n }\n .section-root text {\n fill: ${e.gitBranchLabel0};\n }\n .icon-container {\n height:100%;\n display: flex;\n justify-content: center;\n align-items: center;\n }\n .edge {\n fill: none;\n }\n .mindmap-node-label {\n dy: 1em;\n alignment-baseline: middle;\n text-anchor: middle;\n dominant-baseline: middle;\n text-align: center;\n }\n`),"getStyles")}}}]); \ No newline at end of file diff --git a/assets/js/1966.46a599b1.js.LICENSE.txt b/assets/js/1966.46a599b1.js.LICENSE.txt new file mode 100644 index 00000000..a9f6f124 --- /dev/null +++ b/assets/js/1966.46a599b1.js.LICENSE.txt @@ -0,0 +1,9 @@ +/*! +Embeddable Minimum Strictly-Compliant Promises/A+ 1.1.1 Thenable +Copyright (c) 2013-2014 Ralf S. Engelschall (http://engelschall.com) +Licensed under The MIT License (http://opensource.org/licenses/MIT) +*/ + +/*! Bezier curve function generator. Copyright Gaetan Renaudeau. MIT License: http://en.wikipedia.org/wiki/MIT_License */ + +/*! Runge-Kutta spring physics function generator. Adapted from Framer.js, copyright Koen Bok. MIT License: http://en.wikipedia.org/wiki/MIT_License */ diff --git a/assets/js/1a9a3f27.85d7d087.js b/assets/js/1a9a3f27.85d7d087.js new file mode 100644 index 00000000..82804138 --- /dev/null +++ b/assets/js/1a9a3f27.85d7d087.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkbeacon_docs=self.webpackChunkbeacon_docs||[]).push([[841],{86950:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>r,contentTitle:()=>o,default:()=>d,frontMatter:()=>c,metadata:()=>i,toc:()=>l});var a=t(74848),s=t(28453);const c={title:"Usage",slug:"/blockchains/usage"},o=void 0,i={id:"blockchains/usage",title:"Usage",description:"Let's look at an example how a dApp can be initialized with support for a substrate based blockchain.",source:"@site/docs/blockchains/usage.md",sourceDirName:"blockchains",slug:"/blockchains/usage",permalink:"/blockchains/usage",draft:!1,unlisted:!1,editUrl:"https://github.com/airgap-it/beacon-docs/edit/main/src/docs/blockchains/usage.md",tags:[],version:"current",frontMatter:{title:"Usage",slug:"/blockchains/usage"},sidebar:"docs",previous:{title:"Introduction",permalink:"/blockchains/introduction"},next:{title:"Substrate",permalink:"/blockchains/substrate"}},r={},l=[];function p(e){const n={code:"code",p:"p",pre:"pre",...(0,s.R)(),...e.components};return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)(n.p,{children:["Let's look at an example how a dApp can be initialized with support for a ",(0,a.jsx)(n.code,{children:"substrate"})," based blockchain."]}),"\n",(0,a.jsx)(n.pre,{children:(0,a.jsx)(n.code,{className:"language-ts",children:'import { DAppClient } from "@airgap/beacon-dapp";\nimport { SubstrateBlockchain } from "@airgap/beacon-blockchain-substrate";\n\nconst client = new DAppClient({\n name: "Example dApp",\n});\n\nconst substrateBlockchain = new SubstrateBlockchain();\nclient.addBlockchain(substrateBlockchain);\n\nclient.getActiveAccount().then((activeAccount) => {\n client\n .request({\n blockchainIdentifier: "substrate",\n type: "blockchain_request",\n blockchainData: {\n type: "transfer_request",\n scope: "transfer",\n sourceAddress: activeAccount.address,\n amount: "1",\n recipient: activeAccount.address, // Send to self\n network: {\n genesisHash:\n "0xe3777fa922cafbff200cadeaea1a76bd7898ad5b89f7848999058b50e715f636",\n },\n mode: "return",\n },\n })\n .then((response) => {\n console.log("response", response);\n });\n});\n'})}),"\n",(0,a.jsxs)(n.p,{children:["On the wallet side, the blockchain doesn't explicitly have to be registered, it can be filtered by the ",(0,a.jsx)(n.code,{children:"blockchainIdentifier"})," property."]}),"\n",(0,a.jsx)(n.pre,{children:(0,a.jsx)(n.code,{className:"language-ts",children:'import { WalletClient } from "@airgap/beacon-wallet";\nimport { BeaconMessageType } from "@airgap/beacon-types";\n\nconst client = new WalletClient({\n name: "Example Wallet", // Name of the Wallet\n});\n\nawait client.init();\n\nclient.connect(async (message) => {\n if (message.version === "3") {\n // Example: Handle PermissionRequest. A wallet should handle all request types\n if (message.message.type === beacon.BeaconMessageType.PermissionRequest) {\n if (message.message.blockchainIdentifier !== "substrate") {\n throw new Error("Only KSM supported");\n }\n console.log("SUBSTRATE MESSAGE");\n // Show a UI to the user where he can confirm sharing an account with the dApp\n\n const response = {\n id: message.id,\n type: BeaconMessageType.PermissionResponse,\n blockchainData: {\n appMetadata: { name: "Example Wallet" },\n scopes: [0],\n accounts: [\n {\n network: {\n genesisHash:\n "0xe3777fa922cafbff200cadeaea1a76bd7898ad5b89f7848999058b50e715f636",\n },\n addressPrefix: 0,\n publicKey:\n "3b92229274683b338cf8b040cf91ac0f8e19e410f06eda5537ef077e718e0024",\n },\n ],\n }, // Send response back to dApp\n client.respond(response);\n }\n }\n});\n'})})]})}function d(e={}){const{wrapper:n}={...(0,s.R)(),...e.components};return n?(0,a.jsx)(n,{...e,children:(0,a.jsx)(p,{...e})}):p(e)}},28453:(e,n,t)=>{t.d(n,{R:()=>o,x:()=>i});var a=t(96540);const s={},c=a.createContext(s);function o(e){const n=a.useContext(c);return a.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function i(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:o(e.components),a.createElement(c.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/1c09c9e5.f358baea.js b/assets/js/1c09c9e5.f358baea.js new file mode 100644 index 00000000..b091e4ff --- /dev/null +++ b/assets/js/1c09c9e5.f358baea.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkbeacon_docs=self.webpackChunkbeacon_docs||[]).push([[7292],{25117:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>u,contentTitle:()=>i,default:()=>h,frontMatter:()=>c,metadata:()=>l,toc:()=>d});var r=n(74848),a=n(28453),o=n(11470),s=n(19365);const c={title:"Active Account"},i=void 0,l={id:"guides/active-account",title:"Active Account",description:"The Active Account feature in the Beacon SDK is crucial for your dApp to interact effectively with the user's wallet.",source:"@site/docs/guides/active-account.mdx",sourceDirName:"guides",slug:"/guides/active-account",permalink:"/guides/active-account",draft:!1,unlisted:!1,editUrl:"https://github.com/airgap-it/beacon-docs/edit/main/src/docs/guides/active-account.mdx",tags:[],version:"current",frontMatter:{title:"Active Account"},sidebar:"docs",previous:{title:"High Performance",permalink:"/getting-started/high-performance"},next:{title:"Disconnecting from a Wallet",permalink:"/guides/disconnecting-a-wallet"}},u={},d=[];function p(e){const t={blockquote:"blockquote",code:"code",li:"li",p:"p",pre:"pre",ul:"ul",...(0,a.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)(t.p,{children:["The ",(0,r.jsx)(t.code,{children:"Active Account"})," feature in the Beacon SDK is crucial for your dApp to interact effectively with the user's wallet.\nHere's how it works:"]}),"\n",(0,r.jsxs)(t.ul,{children:["\n",(0,r.jsxs)(t.li,{children:[(0,r.jsx)(t.code,{children:"getActiveAccount"}),": This function returns the current active account. Use it to check the user's active account when they first start using your dApp."]}),"\n",(0,r.jsxs)(t.li,{children:["Active Account Subscription: Beyond just checking the current account, Beacon SDK allows your dApp to subscribe to any changes in the active account (",(0,r.jsx)(t.code,{children:"BeaconEvent.ACTIVE_ACCOUNT_SET"}),"): This includes when the user switches to a different account or disconnects an account from their wallet."]}),"\n"]}),"\n",(0,r.jsxs)(t.blockquote,{children:["\n",(0,r.jsx)(t.p,{children:"It's important to implement this subscription so your dApp can react to account changes in real-time. This ensures your application always interacts with the correct account."}),"\n"]}),"\n",(0,r.jsxs)(o.A,{groupId:"beaconOrTaquitoAA2",defaultValue:"beacon",values:[{label:"Beacon",value:"beacon"},{label:"Taquito",value:"taquito"}],children:[(0,r.jsx)(s.A,{value:"beacon",children:(0,r.jsx)(t.pre,{children:(0,r.jsx)(t.code,{className:"language-ts",metastring:"live",live:!0,children:'// beacon get active account with events\nimport { BeaconEvent, DAppClient } from "@airgap/beacon-sdk";\n\nconst dAppClient = new DAppClient({ name: "Beacon Docs" });\n\n// Listen for all the active account changes\ndAppClient.subscribeToEvent(BeaconEvent.ACTIVE_ACCOUNT_SET, async (account) => {\n // An active account has been set, update the dApp UI\n console.log(`${BeaconEvent.ACTIVE_ACCOUNT_SET} triggered: `, account);\n});\n\ntry {\n console.log("Requesting permissions...");\n const permissions = await dAppClient.requestPermissions();\n console.log("Got permissions:", permissions.address);\n} catch (error) {\n console.error("Got error:", error.message);\n}\n'})})}),(0,r.jsx)(s.A,{value:"taquito",children:(0,r.jsx)(t.pre,{children:(0,r.jsx)(t.code,{className:"language-ts",metastring:"live",live:!0,children:'// taquito get active account with events\nimport { TezosToolkit } from "@taquito/taquito";\nimport { BeaconWallet } from "@taquito/beacon-wallet";\nimport { BeaconEvent } from "@airgap/beacon-sdk";\n\nconst Tezos = new TezosToolkit("https://mainnet.api.tez.ie");\nconst wallet = new BeaconWallet({ name: "Beacon Docs Taquito" });\n\nTezos.setWalletProvider(wallet);\n\nwallet.client.subscribeToEvent(BeaconEvent.ACTIVE_ACCOUNT_SET, (account) => {\n // An active account has been set\n console.log(`${BeaconEvent.ACTIVE_ACCOUNT_SET} triggered: `, account);\n});\n\ntry {\n console.log("Requesting permissions...");\n const permissions = await wallet.client.requestPermissions();\n console.log("Got permissions:", permissions.address);\n} catch (error) {\n console.error("Got error:", error.message);\n}\n'})})})]})]})}function h(e={}){const{wrapper:t}={...(0,a.R)(),...e.components};return t?(0,r.jsx)(t,{...e,children:(0,r.jsx)(p,{...e})}):p(e)}},19365:(e,t,n)=>{n.d(t,{A:()=>s});n(96540);var r=n(34164);const a={tabItem:"tabItem_Ymn6"};var o=n(74848);function s(e){let{children:t,hidden:n,className:s}=e;return(0,o.jsx)("div",{role:"tabpanel",className:(0,r.A)(a.tabItem,s),hidden:n,children:t})}},11470:(e,t,n)=>{n.d(t,{A:()=>x});var r=n(96540),a=n(34164),o=n(23104),s=n(56347),c=n(205),i=n(57485),l=n(31682),u=n(70679);function d(e){return r.Children.toArray(e).filter((e=>"\n"!==e)).map((e=>{if(!e||(0,r.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}function p(e){const{values:t,children:n}=e;return(0,r.useMemo)((()=>{const e=t??function(e){return d(e).map((e=>{let{props:{value:t,label:n,attributes:r,default:a}}=e;return{value:t,label:n,attributes:r,default:a}}))}(n);return function(e){const t=(0,l.XI)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,n])}function h(e){let{value:t,tabValues:n}=e;return n.some((e=>e.value===t))}function m(e){let{queryString:t=!1,groupId:n}=e;const a=(0,s.W6)(),o=function(e){let{queryString:t=!1,groupId:n}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!n)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return n??null}({queryString:t,groupId:n});return[(0,i.aZ)(o),(0,r.useCallback)((e=>{if(!o)return;const t=new URLSearchParams(a.location.search);t.set(o,e),a.replace({...a.location,search:t.toString()})}),[o,a])]}function f(e){const{defaultValue:t,queryString:n=!1,groupId:a}=e,o=p(e),[s,i]=(0,r.useState)((()=>function(e){let{defaultValue:t,tabValues:n}=e;if(0===n.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!h({value:t,tabValues:n}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${n.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const r=n.find((e=>e.default))??n[0];if(!r)throw new Error("Unexpected error: 0 tabValues");return r.value}({defaultValue:t,tabValues:o}))),[l,d]=m({queryString:n,groupId:a}),[f,v]=function(e){let{groupId:t}=e;const n=function(e){return e?`docusaurus.tab.${e}`:null}(t),[a,o]=(0,u.Dv)(n);return[a,(0,r.useCallback)((e=>{n&&o.set(e)}),[n,o])]}({groupId:a}),b=(()=>{const e=l??f;return h({value:e,tabValues:o})?e:null})();(0,c.A)((()=>{b&&i(b)}),[b]);return{selectedValue:s,selectValue:(0,r.useCallback)((e=>{if(!h({value:e,tabValues:o}))throw new Error(`Can't select invalid tab value=${e}`);i(e),d(e),v(e)}),[d,v,o]),tabValues:o}}var v=n(92303);const b={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};var g=n(74848);function A(e){let{className:t,block:n,selectedValue:r,selectValue:s,tabValues:c}=e;const i=[],{blockElementScrollPositionUntilNextRender:l}=(0,o.a_)(),u=e=>{const t=e.currentTarget,n=i.indexOf(t),a=c[n].value;a!==r&&(l(t),s(a))},d=e=>{let t=null;switch(e.key){case"Enter":u(e);break;case"ArrowRight":{const n=i.indexOf(e.currentTarget)+1;t=i[n]??i[0];break}case"ArrowLeft":{const n=i.indexOf(e.currentTarget)-1;t=i[n]??i[i.length-1];break}}t?.focus()};return(0,g.jsx)("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,a.A)("tabs",{"tabs--block":n},t),children:c.map((e=>{let{value:t,label:n,attributes:o}=e;return(0,g.jsx)("li",{role:"tab",tabIndex:r===t?0:-1,"aria-selected":r===t,ref:e=>i.push(e),onKeyDown:d,onClick:u,...o,className:(0,a.A)("tabs__item",b.tabItem,o?.className,{"tabs__item--active":r===t}),children:n??t},t)}))})}function w(e){let{lazy:t,children:n,selectedValue:o}=e;const s=(Array.isArray(n)?n:[n]).filter(Boolean);if(t){const e=s.find((e=>e.props.value===o));return e?(0,r.cloneElement)(e,{className:(0,a.A)("margin-top--md",e.props.className)}):null}return(0,g.jsx)("div",{className:"margin-top--md",children:s.map(((e,t)=>(0,r.cloneElement)(e,{key:t,hidden:e.props.value!==o})))})}function T(e){const t=f(e);return(0,g.jsxs)("div",{className:(0,a.A)("tabs-container",b.tabList),children:[(0,g.jsx)(A,{...t,...e}),(0,g.jsx)(w,{...t,...e})]})}function x(e){const t=(0,v.A)();return(0,g.jsx)(T,{...e,children:d(e.children)},String(t))}},28453:(e,t,n)=>{n.d(t,{R:()=>s,x:()=>c});var r=n(96540);const a={},o=r.createContext(a);function s(e){const t=r.useContext(o);return r.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function c(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(a):e.components||a:s(e.components),r.createElement(o.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/205.ccb78266.js b/assets/js/205.ccb78266.js new file mode 100644 index 00000000..5acc5058 --- /dev/null +++ b/assets/js/205.ccb78266.js @@ -0,0 +1,3379 @@ +"use strict"; +exports.id = 205; +exports.ids = [205]; +exports.modules = { + +/***/ 36151: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (/* binding */ getDiagramElement), +/* harmony export */ P: () => (/* binding */ setupViewPortForSVG) +/* harmony export */ }); +/* harmony import */ var _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(64994); +/* harmony import */ var d3__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(20007); + + +// src/rendering-util/insertElementsForSize.js + +var getDiagramElement = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_0__/* .__name */ .K2)((id, securityLevel) => { + let sandboxElement; + if (securityLevel === "sandbox") { + sandboxElement = (0,d3__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Ltv)("#i" + id); + } + const root = securityLevel === "sandbox" ? (0,d3__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Ltv)(sandboxElement.nodes()[0].contentDocument.body) : (0,d3__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Ltv)("body"); + const svg = root.select(`[id="${id}"]`); + return svg; +}, "getDiagramElement"); + +// src/rendering-util/setupViewPortForSVG.ts +var setupViewPortForSVG = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_0__/* .__name */ .K2)((svg, padding, cssDiagram, useMaxWidth) => { + svg.attr("class", cssDiagram); + const { width, height, x, y } = calculateDimensionsWithPadding(svg, padding); + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_0__/* .configureSvgSize */ .a$)(svg, height, width, useMaxWidth); + const viewBox = createViewBox(x, y, width, height, padding); + svg.attr("viewBox", viewBox); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_0__/* .log */ .Rm.debug(`viewBox configured: ${viewBox} with padding: ${padding}`); +}, "setupViewPortForSVG"); +var calculateDimensionsWithPadding = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_0__/* .__name */ .K2)((svg, padding) => { + const bounds = svg.node()?.getBBox() || { width: 0, height: 0, x: 0, y: 0 }; + return { + width: bounds.width + padding * 2, + height: bounds.height + padding * 2, + x: bounds.x, + y: bounds.y + }; +}, "calculateDimensionsWithPadding"); +var createViewBox = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_0__/* .__name */ .K2)((x, y, width, height, padding) => { + return `${x - padding} ${y - padding} ${width} ${height}`; +}, "createViewBox"); + + + + +/***/ }), + +/***/ 83148: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ Zk: () => (/* binding */ stateDiagram_default), +/* harmony export */ iP: () => (/* binding */ stateDb_default), +/* harmony export */ q7: () => (/* binding */ stateRenderer_v3_unified_default), +/* harmony export */ tM: () => (/* binding */ styles_default) +/* harmony export */ }); +/* harmony import */ var _chunk_FUIDI54P_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(36151); +/* harmony import */ var _chunk_T3KDJ7CM_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(62602); +/* harmony import */ var _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(57323); +/* harmony import */ var _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(64994); + + + + + +// src/diagrams/state/parser/stateDiagram.jison +var parser = function() { + var o = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function(k, v, o2, l) { + for (o2 = o2 || {}, l = k.length; l--; o2[k[l]] = v) ; + return o2; + }, "o"), $V0 = [1, 2], $V1 = [1, 3], $V2 = [1, 4], $V3 = [2, 4], $V4 = [1, 9], $V5 = [1, 11], $V6 = [1, 16], $V7 = [1, 17], $V8 = [1, 18], $V9 = [1, 19], $Va = [1, 32], $Vb = [1, 20], $Vc = [1, 21], $Vd = [1, 22], $Ve = [1, 23], $Vf = [1, 24], $Vg = [1, 26], $Vh = [1, 27], $Vi = [1, 28], $Vj = [1, 29], $Vk = [1, 30], $Vl = [1, 31], $Vm = [1, 34], $Vn = [1, 35], $Vo = [1, 36], $Vp = [1, 37], $Vq = [1, 33], $Vr = [1, 4, 5, 16, 17, 19, 21, 22, 24, 25, 26, 27, 28, 29, 33, 35, 37, 38, 42, 45, 48, 49, 50, 51, 54], $Vs = [1, 4, 5, 14, 15, 16, 17, 19, 21, 22, 24, 25, 26, 27, 28, 29, 33, 35, 37, 38, 42, 45, 48, 49, 50, 51, 54], $Vt = [4, 5, 16, 17, 19, 21, 22, 24, 25, 26, 27, 28, 29, 33, 35, 37, 38, 42, 45, 48, 49, 50, 51, 54]; + var parser2 = { + trace: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function trace() { + }, "trace"), + yy: {}, + symbols_: { "error": 2, "start": 3, "SPACE": 4, "NL": 5, "SD": 6, "document": 7, "line": 8, "statement": 9, "classDefStatement": 10, "styleStatement": 11, "cssClassStatement": 12, "idStatement": 13, "DESCR": 14, "-->": 15, "HIDE_EMPTY": 16, "scale": 17, "WIDTH": 18, "COMPOSIT_STATE": 19, "STRUCT_START": 20, "STRUCT_STOP": 21, "STATE_DESCR": 22, "AS": 23, "ID": 24, "FORK": 25, "JOIN": 26, "CHOICE": 27, "CONCURRENT": 28, "note": 29, "notePosition": 30, "NOTE_TEXT": 31, "direction": 32, "acc_title": 33, "acc_title_value": 34, "acc_descr": 35, "acc_descr_value": 36, "acc_descr_multiline_value": 37, "classDef": 38, "CLASSDEF_ID": 39, "CLASSDEF_STYLEOPTS": 40, "DEFAULT": 41, "style": 42, "STYLE_IDS": 43, "STYLEDEF_STYLEOPTS": 44, "class": 45, "CLASSENTITY_IDS": 46, "STYLECLASS": 47, "direction_tb": 48, "direction_bt": 49, "direction_rl": 50, "direction_lr": 51, "eol": 52, ";": 53, "EDGE_STATE": 54, "STYLE_SEPARATOR": 55, "left_of": 56, "right_of": 57, "$accept": 0, "$end": 1 }, + terminals_: { 2: "error", 4: "SPACE", 5: "NL", 6: "SD", 14: "DESCR", 15: "-->", 16: "HIDE_EMPTY", 17: "scale", 18: "WIDTH", 19: "COMPOSIT_STATE", 20: "STRUCT_START", 21: "STRUCT_STOP", 22: "STATE_DESCR", 23: "AS", 24: "ID", 25: "FORK", 26: "JOIN", 27: "CHOICE", 28: "CONCURRENT", 29: "note", 31: "NOTE_TEXT", 33: "acc_title", 34: "acc_title_value", 35: "acc_descr", 36: "acc_descr_value", 37: "acc_descr_multiline_value", 38: "classDef", 39: "CLASSDEF_ID", 40: "CLASSDEF_STYLEOPTS", 41: "DEFAULT", 42: "style", 43: "STYLE_IDS", 44: "STYLEDEF_STYLEOPTS", 45: "class", 46: "CLASSENTITY_IDS", 47: "STYLECLASS", 48: "direction_tb", 49: "direction_bt", 50: "direction_rl", 51: "direction_lr", 53: ";", 54: "EDGE_STATE", 55: "STYLE_SEPARATOR", 56: "left_of", 57: "right_of" }, + productions_: [0, [3, 2], [3, 2], [3, 2], [7, 0], [7, 2], [8, 2], [8, 1], [8, 1], [9, 1], [9, 1], [9, 1], [9, 1], [9, 2], [9, 3], [9, 4], [9, 1], [9, 2], [9, 1], [9, 4], [9, 3], [9, 6], [9, 1], [9, 1], [9, 1], [9, 1], [9, 4], [9, 4], [9, 1], [9, 2], [9, 2], [9, 1], [10, 3], [10, 3], [11, 3], [12, 3], [32, 1], [32, 1], [32, 1], [32, 1], [52, 1], [52, 1], [13, 1], [13, 1], [13, 3], [13, 3], [30, 1], [30, 1]], + performAction: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function anonymous(yytext, yyleng, yylineno, yy, yystate, $$, _$) { + var $0 = $$.length - 1; + switch (yystate) { + case 3: + yy.setRootDoc($$[$0]); + return $$[$0]; + break; + case 4: + this.$ = []; + break; + case 5: + if ($$[$0] != "nl") { + $$[$0 - 1].push($$[$0]); + this.$ = $$[$0 - 1]; + } + break; + case 6: + case 7: + this.$ = $$[$0]; + break; + case 8: + this.$ = "nl"; + break; + case 12: + this.$ = $$[$0]; + break; + case 13: + const stateStmt = $$[$0 - 1]; + stateStmt.description = yy.trimColon($$[$0]); + this.$ = stateStmt; + break; + case 14: + this.$ = { stmt: "relation", state1: $$[$0 - 2], state2: $$[$0] }; + break; + case 15: + const relDescription = yy.trimColon($$[$0]); + this.$ = { stmt: "relation", state1: $$[$0 - 3], state2: $$[$0 - 1], description: relDescription }; + break; + case 19: + this.$ = { stmt: "state", id: $$[$0 - 3], type: "default", description: "", doc: $$[$0 - 1] }; + break; + case 20: + var id = $$[$0]; + var description = $$[$0 - 2].trim(); + if ($$[$0].match(":")) { + var parts = $$[$0].split(":"); + id = parts[0]; + description = [description, parts[1]]; + } + this.$ = { stmt: "state", id, type: "default", description }; + break; + case 21: + this.$ = { stmt: "state", id: $$[$0 - 3], type: "default", description: $$[$0 - 5], doc: $$[$0 - 1] }; + break; + case 22: + this.$ = { stmt: "state", id: $$[$0], type: "fork" }; + break; + case 23: + this.$ = { stmt: "state", id: $$[$0], type: "join" }; + break; + case 24: + this.$ = { stmt: "state", id: $$[$0], type: "choice" }; + break; + case 25: + this.$ = { stmt: "state", id: yy.getDividerId(), type: "divider" }; + break; + case 26: + this.$ = { stmt: "state", id: $$[$0 - 1].trim(), note: { position: $$[$0 - 2].trim(), text: $$[$0].trim() } }; + break; + case 29: + this.$ = $$[$0].trim(); + yy.setAccTitle(this.$); + break; + case 30: + case 31: + this.$ = $$[$0].trim(); + yy.setAccDescription(this.$); + break; + case 32: + case 33: + this.$ = { stmt: "classDef", id: $$[$0 - 1].trim(), classes: $$[$0].trim() }; + break; + case 34: + this.$ = { stmt: "style", id: $$[$0 - 1].trim(), styleClass: $$[$0].trim() }; + break; + case 35: + this.$ = { stmt: "applyClass", id: $$[$0 - 1].trim(), styleClass: $$[$0].trim() }; + break; + case 36: + yy.setDirection("TB"); + this.$ = { stmt: "dir", value: "TB" }; + break; + case 37: + yy.setDirection("BT"); + this.$ = { stmt: "dir", value: "BT" }; + break; + case 38: + yy.setDirection("RL"); + this.$ = { stmt: "dir", value: "RL" }; + break; + case 39: + yy.setDirection("LR"); + this.$ = { stmt: "dir", value: "LR" }; + break; + case 42: + case 43: + this.$ = { stmt: "state", id: $$[$0].trim(), type: "default", description: "" }; + break; + case 44: + this.$ = { stmt: "state", id: $$[$0 - 2].trim(), classes: [$$[$0].trim()], type: "default", description: "" }; + break; + case 45: + this.$ = { stmt: "state", id: $$[$0 - 2].trim(), classes: [$$[$0].trim()], type: "default", description: "" }; + break; + } + }, "anonymous"), + table: [{ 3: 1, 4: $V0, 5: $V1, 6: $V2 }, { 1: [3] }, { 3: 5, 4: $V0, 5: $V1, 6: $V2 }, { 3: 6, 4: $V0, 5: $V1, 6: $V2 }, o([1, 4, 5, 16, 17, 19, 22, 24, 25, 26, 27, 28, 29, 33, 35, 37, 38, 42, 45, 48, 49, 50, 51, 54], $V3, { 7: 7 }), { 1: [2, 1] }, { 1: [2, 2] }, { 1: [2, 3], 4: $V4, 5: $V5, 8: 8, 9: 10, 10: 12, 11: 13, 12: 14, 13: 15, 16: $V6, 17: $V7, 19: $V8, 22: $V9, 24: $Va, 25: $Vb, 26: $Vc, 27: $Vd, 28: $Ve, 29: $Vf, 32: 25, 33: $Vg, 35: $Vh, 37: $Vi, 38: $Vj, 42: $Vk, 45: $Vl, 48: $Vm, 49: $Vn, 50: $Vo, 51: $Vp, 54: $Vq }, o($Vr, [2, 5]), { 9: 38, 10: 12, 11: 13, 12: 14, 13: 15, 16: $V6, 17: $V7, 19: $V8, 22: $V9, 24: $Va, 25: $Vb, 26: $Vc, 27: $Vd, 28: $Ve, 29: $Vf, 32: 25, 33: $Vg, 35: $Vh, 37: $Vi, 38: $Vj, 42: $Vk, 45: $Vl, 48: $Vm, 49: $Vn, 50: $Vo, 51: $Vp, 54: $Vq }, o($Vr, [2, 7]), o($Vr, [2, 8]), o($Vr, [2, 9]), o($Vr, [2, 10]), o($Vr, [2, 11]), o($Vr, [2, 12], { 14: [1, 39], 15: [1, 40] }), o($Vr, [2, 16]), { 18: [1, 41] }, o($Vr, [2, 18], { 20: [1, 42] }), { 23: [1, 43] }, o($Vr, [2, 22]), o($Vr, [2, 23]), o($Vr, [2, 24]), o($Vr, [2, 25]), { 30: 44, 31: [1, 45], 56: [1, 46], 57: [1, 47] }, o($Vr, [2, 28]), { 34: [1, 48] }, { 36: [1, 49] }, o($Vr, [2, 31]), { 39: [1, 50], 41: [1, 51] }, { 43: [1, 52] }, { 46: [1, 53] }, o($Vs, [2, 42], { 55: [1, 54] }), o($Vs, [2, 43], { 55: [1, 55] }), o($Vr, [2, 36]), o($Vr, [2, 37]), o($Vr, [2, 38]), o($Vr, [2, 39]), o($Vr, [2, 6]), o($Vr, [2, 13]), { 13: 56, 24: $Va, 54: $Vq }, o($Vr, [2, 17]), o($Vt, $V3, { 7: 57 }), { 24: [1, 58] }, { 24: [1, 59] }, { 23: [1, 60] }, { 24: [2, 46] }, { 24: [2, 47] }, o($Vr, [2, 29]), o($Vr, [2, 30]), { 40: [1, 61] }, { 40: [1, 62] }, { 44: [1, 63] }, { 47: [1, 64] }, { 24: [1, 65] }, { 24: [1, 66] }, o($Vr, [2, 14], { 14: [1, 67] }), { 4: $V4, 5: $V5, 8: 8, 9: 10, 10: 12, 11: 13, 12: 14, 13: 15, 16: $V6, 17: $V7, 19: $V8, 21: [1, 68], 22: $V9, 24: $Va, 25: $Vb, 26: $Vc, 27: $Vd, 28: $Ve, 29: $Vf, 32: 25, 33: $Vg, 35: $Vh, 37: $Vi, 38: $Vj, 42: $Vk, 45: $Vl, 48: $Vm, 49: $Vn, 50: $Vo, 51: $Vp, 54: $Vq }, o($Vr, [2, 20], { 20: [1, 69] }), { 31: [1, 70] }, { 24: [1, 71] }, o($Vr, [2, 32]), o($Vr, [2, 33]), o($Vr, [2, 34]), o($Vr, [2, 35]), o($Vs, [2, 44]), o($Vs, [2, 45]), o($Vr, [2, 15]), o($Vr, [2, 19]), o($Vt, $V3, { 7: 72 }), o($Vr, [2, 26]), o($Vr, [2, 27]), { 4: $V4, 5: $V5, 8: 8, 9: 10, 10: 12, 11: 13, 12: 14, 13: 15, 16: $V6, 17: $V7, 19: $V8, 21: [1, 73], 22: $V9, 24: $Va, 25: $Vb, 26: $Vc, 27: $Vd, 28: $Ve, 29: $Vf, 32: 25, 33: $Vg, 35: $Vh, 37: $Vi, 38: $Vj, 42: $Vk, 45: $Vl, 48: $Vm, 49: $Vn, 50: $Vo, 51: $Vp, 54: $Vq }, o($Vr, [2, 21])], + defaultActions: { 5: [2, 1], 6: [2, 2], 46: [2, 46], 47: [2, 47] }, + parseError: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function parseError(str, hash) { + if (hash.recoverable) { + this.trace(str); + } else { + var error = new Error(str); + error.hash = hash; + throw error; + } + }, "parseError"), + parse: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function parse(input) { + var self = this, stack = [0], tstack = [], vstack = [null], lstack = [], table = this.table, yytext = "", yylineno = 0, yyleng = 0, recovering = 0, TERROR = 2, EOF = 1; + var args = lstack.slice.call(arguments, 1); + var lexer2 = Object.create(this.lexer); + var sharedState = { yy: {} }; + for (var k in this.yy) { + if (Object.prototype.hasOwnProperty.call(this.yy, k)) { + sharedState.yy[k] = this.yy[k]; + } + } + lexer2.setInput(input, sharedState.yy); + sharedState.yy.lexer = lexer2; + sharedState.yy.parser = this; + if (typeof lexer2.yylloc == "undefined") { + lexer2.yylloc = {}; + } + var yyloc = lexer2.yylloc; + lstack.push(yyloc); + var ranges = lexer2.options && lexer2.options.ranges; + if (typeof sharedState.yy.parseError === "function") { + this.parseError = sharedState.yy.parseError; + } else { + this.parseError = Object.getPrototypeOf(this).parseError; + } + function popStack(n) { + stack.length = stack.length - 2 * n; + vstack.length = vstack.length - n; + lstack.length = lstack.length - n; + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(popStack, "popStack"); + function lex() { + var token; + token = tstack.pop() || lexer2.lex() || EOF; + if (typeof token !== "number") { + if (token instanceof Array) { + tstack = token; + token = tstack.pop(); + } + token = self.symbols_[token] || token; + } + return token; + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(lex, "lex"); + var symbol, preErrorSymbol, state, action, a, r, yyval = {}, p, len, newState, expected; + while (true) { + state = stack[stack.length - 1]; + if (this.defaultActions[state]) { + action = this.defaultActions[state]; + } else { + if (symbol === null || typeof symbol == "undefined") { + symbol = lex(); + } + action = table[state] && table[state][symbol]; + } + if (typeof action === "undefined" || !action.length || !action[0]) { + var errStr = ""; + expected = []; + for (p in table[state]) { + if (this.terminals_[p] && p > TERROR) { + expected.push("'" + this.terminals_[p] + "'"); + } + } + if (lexer2.showPosition) { + errStr = "Parse error on line " + (yylineno + 1) + ":\n" + lexer2.showPosition() + "\nExpecting " + expected.join(", ") + ", got '" + (this.terminals_[symbol] || symbol) + "'"; + } else { + errStr = "Parse error on line " + (yylineno + 1) + ": Unexpected " + (symbol == EOF ? "end of input" : "'" + (this.terminals_[symbol] || symbol) + "'"); + } + this.parseError(errStr, { + text: lexer2.match, + token: this.terminals_[symbol] || symbol, + line: lexer2.yylineno, + loc: yyloc, + expected + }); + } + if (action[0] instanceof Array && action.length > 1) { + throw new Error("Parse Error: multiple actions possible at state: " + state + ", token: " + symbol); + } + switch (action[0]) { + case 1: + stack.push(symbol); + vstack.push(lexer2.yytext); + lstack.push(lexer2.yylloc); + stack.push(action[1]); + symbol = null; + if (!preErrorSymbol) { + yyleng = lexer2.yyleng; + yytext = lexer2.yytext; + yylineno = lexer2.yylineno; + yyloc = lexer2.yylloc; + if (recovering > 0) { + recovering--; + } + } else { + symbol = preErrorSymbol; + preErrorSymbol = null; + } + break; + case 2: + len = this.productions_[action[1]][1]; + yyval.$ = vstack[vstack.length - len]; + yyval._$ = { + first_line: lstack[lstack.length - (len || 1)].first_line, + last_line: lstack[lstack.length - 1].last_line, + first_column: lstack[lstack.length - (len || 1)].first_column, + last_column: lstack[lstack.length - 1].last_column + }; + if (ranges) { + yyval._$.range = [ + lstack[lstack.length - (len || 1)].range[0], + lstack[lstack.length - 1].range[1] + ]; + } + r = this.performAction.apply(yyval, [ + yytext, + yyleng, + yylineno, + sharedState.yy, + action[1], + vstack, + lstack + ].concat(args)); + if (typeof r !== "undefined") { + return r; + } + if (len) { + stack = stack.slice(0, -1 * len * 2); + vstack = vstack.slice(0, -1 * len); + lstack = lstack.slice(0, -1 * len); + } + stack.push(this.productions_[action[1]][0]); + vstack.push(yyval.$); + lstack.push(yyval._$); + newState = table[stack[stack.length - 2]][stack[stack.length - 1]]; + stack.push(newState); + break; + case 3: + return true; + } + } + return true; + }, "parse") + }; + var lexer = /* @__PURE__ */ function() { + var lexer2 = { + EOF: 1, + parseError: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function parseError(str, hash) { + if (this.yy.parser) { + this.yy.parser.parseError(str, hash); + } else { + throw new Error(str); + } + }, "parseError"), + // resets the lexer, sets new input + setInput: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function(input, yy) { + this.yy = yy || this.yy || {}; + this._input = input; + this._more = this._backtrack = this.done = false; + this.yylineno = this.yyleng = 0; + this.yytext = this.matched = this.match = ""; + this.conditionStack = ["INITIAL"]; + this.yylloc = { + first_line: 1, + first_column: 0, + last_line: 1, + last_column: 0 + }; + if (this.options.ranges) { + this.yylloc.range = [0, 0]; + } + this.offset = 0; + return this; + }, "setInput"), + // consumes and returns one char from the input + input: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function() { + var ch = this._input[0]; + this.yytext += ch; + this.yyleng++; + this.offset++; + this.match += ch; + this.matched += ch; + var lines = ch.match(/(?:\r\n?|\n).*/g); + if (lines) { + this.yylineno++; + this.yylloc.last_line++; + } else { + this.yylloc.last_column++; + } + if (this.options.ranges) { + this.yylloc.range[1]++; + } + this._input = this._input.slice(1); + return ch; + }, "input"), + // unshifts one char (or a string) into the input + unput: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function(ch) { + var len = ch.length; + var lines = ch.split(/(?:\r\n?|\n)/g); + this._input = ch + this._input; + this.yytext = this.yytext.substr(0, this.yytext.length - len); + this.offset -= len; + var oldLines = this.match.split(/(?:\r\n?|\n)/g); + this.match = this.match.substr(0, this.match.length - 1); + this.matched = this.matched.substr(0, this.matched.length - 1); + if (lines.length - 1) { + this.yylineno -= lines.length - 1; + } + var r = this.yylloc.range; + this.yylloc = { + first_line: this.yylloc.first_line, + last_line: this.yylineno + 1, + first_column: this.yylloc.first_column, + last_column: lines ? (lines.length === oldLines.length ? this.yylloc.first_column : 0) + oldLines[oldLines.length - lines.length].length - lines[0].length : this.yylloc.first_column - len + }; + if (this.options.ranges) { + this.yylloc.range = [r[0], r[0] + this.yyleng - len]; + } + this.yyleng = this.yytext.length; + return this; + }, "unput"), + // When called from action, caches matched text and appends it on next action + more: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function() { + this._more = true; + return this; + }, "more"), + // When called from action, signals the lexer that this rule fails to match the input, so the next matching rule (regex) should be tested instead. + reject: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function() { + if (this.options.backtrack_lexer) { + this._backtrack = true; + } else { + return this.parseError("Lexical error on line " + (this.yylineno + 1) + ". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n" + this.showPosition(), { + text: "", + token: null, + line: this.yylineno + }); + } + return this; + }, "reject"), + // retain first n characters of the match + less: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function(n) { + this.unput(this.match.slice(n)); + }, "less"), + // displays already matched input, i.e. for error messages + pastInput: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function() { + var past = this.matched.substr(0, this.matched.length - this.match.length); + return (past.length > 20 ? "..." : "") + past.substr(-20).replace(/\n/g, ""); + }, "pastInput"), + // displays upcoming input, i.e. for error messages + upcomingInput: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function() { + var next = this.match; + if (next.length < 20) { + next += this._input.substr(0, 20 - next.length); + } + return (next.substr(0, 20) + (next.length > 20 ? "..." : "")).replace(/\n/g, ""); + }, "upcomingInput"), + // displays the character position where the lexing error occurred, i.e. for error messages + showPosition: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function() { + var pre = this.pastInput(); + var c = new Array(pre.length + 1).join("-"); + return pre + this.upcomingInput() + "\n" + c + "^"; + }, "showPosition"), + // test the lexed token: return FALSE when not a match, otherwise return token + test_match: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function(match, indexed_rule) { + var token, lines, backup; + if (this.options.backtrack_lexer) { + backup = { + yylineno: this.yylineno, + yylloc: { + first_line: this.yylloc.first_line, + last_line: this.last_line, + first_column: this.yylloc.first_column, + last_column: this.yylloc.last_column + }, + yytext: this.yytext, + match: this.match, + matches: this.matches, + matched: this.matched, + yyleng: this.yyleng, + offset: this.offset, + _more: this._more, + _input: this._input, + yy: this.yy, + conditionStack: this.conditionStack.slice(0), + done: this.done + }; + if (this.options.ranges) { + backup.yylloc.range = this.yylloc.range.slice(0); + } + } + lines = match[0].match(/(?:\r\n?|\n).*/g); + if (lines) { + this.yylineno += lines.length; + } + this.yylloc = { + first_line: this.yylloc.last_line, + last_line: this.yylineno + 1, + first_column: this.yylloc.last_column, + last_column: lines ? lines[lines.length - 1].length - lines[lines.length - 1].match(/\r?\n?/)[0].length : this.yylloc.last_column + match[0].length + }; + this.yytext += match[0]; + this.match += match[0]; + this.matches = match; + this.yyleng = this.yytext.length; + if (this.options.ranges) { + this.yylloc.range = [this.offset, this.offset += this.yyleng]; + } + this._more = false; + this._backtrack = false; + this._input = this._input.slice(match[0].length); + this.matched += match[0]; + token = this.performAction.call(this, this.yy, this, indexed_rule, this.conditionStack[this.conditionStack.length - 1]); + if (this.done && this._input) { + this.done = false; + } + if (token) { + return token; + } else if (this._backtrack) { + for (var k in backup) { + this[k] = backup[k]; + } + return false; + } + return false; + }, "test_match"), + // return next match in input + next: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function() { + if (this.done) { + return this.EOF; + } + if (!this._input) { + this.done = true; + } + var token, match, tempMatch, index; + if (!this._more) { + this.yytext = ""; + this.match = ""; + } + var rules = this._currentRules(); + for (var i = 0; i < rules.length; i++) { + tempMatch = this._input.match(this.rules[rules[i]]); + if (tempMatch && (!match || tempMatch[0].length > match[0].length)) { + match = tempMatch; + index = i; + if (this.options.backtrack_lexer) { + token = this.test_match(tempMatch, rules[i]); + if (token !== false) { + return token; + } else if (this._backtrack) { + match = false; + continue; + } else { + return false; + } + } else if (!this.options.flex) { + break; + } + } + } + if (match) { + token = this.test_match(match, rules[index]); + if (token !== false) { + return token; + } + return false; + } + if (this._input === "") { + return this.EOF; + } else { + return this.parseError("Lexical error on line " + (this.yylineno + 1) + ". Unrecognized text.\n" + this.showPosition(), { + text: "", + token: null, + line: this.yylineno + }); + } + }, "next"), + // return next match that has a token + lex: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function lex() { + var r = this.next(); + if (r) { + return r; + } else { + return this.lex(); + } + }, "lex"), + // activates a new lexer condition state (pushes the new lexer condition state onto the condition stack) + begin: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function begin(condition) { + this.conditionStack.push(condition); + }, "begin"), + // pop the previously active lexer condition state off the condition stack + popState: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function popState() { + var n = this.conditionStack.length - 1; + if (n > 0) { + return this.conditionStack.pop(); + } else { + return this.conditionStack[0]; + } + }, "popState"), + // produce the lexer rule set which is active for the currently active lexer condition state + _currentRules: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function _currentRules() { + if (this.conditionStack.length && this.conditionStack[this.conditionStack.length - 1]) { + return this.conditions[this.conditionStack[this.conditionStack.length - 1]].rules; + } else { + return this.conditions["INITIAL"].rules; + } + }, "_currentRules"), + // return the currently active lexer condition state; when an index argument is provided it produces the N-th previous condition state, if available + topState: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function topState(n) { + n = this.conditionStack.length - 1 - Math.abs(n || 0); + if (n >= 0) { + return this.conditionStack[n]; + } else { + return "INITIAL"; + } + }, "topState"), + // alias for begin(condition) + pushState: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function pushState(condition) { + this.begin(condition); + }, "pushState"), + // return the number of states currently on the stack + stateStackSize: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function stateStackSize() { + return this.conditionStack.length; + }, "stateStackSize"), + options: { "case-insensitive": true }, + performAction: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function anonymous(yy, yy_, $avoiding_name_collisions, YY_START) { + var YYSTATE = YY_START; + switch ($avoiding_name_collisions) { + case 0: + return 41; + break; + case 1: + return 48; + break; + case 2: + return 49; + break; + case 3: + return 50; + break; + case 4: + return 51; + break; + case 5: + break; + case 6: + { + } + break; + case 7: + return 5; + break; + case 8: + break; + case 9: + break; + case 10: + break; + case 11: + break; + case 12: + this.pushState("SCALE"); + return 17; + break; + case 13: + return 18; + break; + case 14: + this.popState(); + break; + case 15: + this.begin("acc_title"); + return 33; + break; + case 16: + this.popState(); + return "acc_title_value"; + break; + case 17: + this.begin("acc_descr"); + return 35; + break; + case 18: + this.popState(); + return "acc_descr_value"; + break; + case 19: + this.begin("acc_descr_multiline"); + break; + case 20: + this.popState(); + break; + case 21: + return "acc_descr_multiline_value"; + break; + case 22: + this.pushState("CLASSDEF"); + return 38; + break; + case 23: + this.popState(); + this.pushState("CLASSDEFID"); + return "DEFAULT_CLASSDEF_ID"; + break; + case 24: + this.popState(); + this.pushState("CLASSDEFID"); + return 39; + break; + case 25: + this.popState(); + return 40; + break; + case 26: + this.pushState("CLASS"); + return 45; + break; + case 27: + this.popState(); + this.pushState("CLASS_STYLE"); + return 46; + break; + case 28: + this.popState(); + return 47; + break; + case 29: + this.pushState("STYLE"); + return 42; + break; + case 30: + this.popState(); + this.pushState("STYLEDEF_STYLES"); + return 43; + break; + case 31: + this.popState(); + return 44; + break; + case 32: + this.pushState("SCALE"); + return 17; + break; + case 33: + return 18; + break; + case 34: + this.popState(); + break; + case 35: + this.pushState("STATE"); + break; + case 36: + this.popState(); + yy_.yytext = yy_.yytext.slice(0, -8).trim(); + return 25; + break; + case 37: + this.popState(); + yy_.yytext = yy_.yytext.slice(0, -8).trim(); + return 26; + break; + case 38: + this.popState(); + yy_.yytext = yy_.yytext.slice(0, -10).trim(); + return 27; + break; + case 39: + this.popState(); + yy_.yytext = yy_.yytext.slice(0, -8).trim(); + return 25; + break; + case 40: + this.popState(); + yy_.yytext = yy_.yytext.slice(0, -8).trim(); + return 26; + break; + case 41: + this.popState(); + yy_.yytext = yy_.yytext.slice(0, -10).trim(); + return 27; + break; + case 42: + return 48; + break; + case 43: + return 49; + break; + case 44: + return 50; + break; + case 45: + return 51; + break; + case 46: + this.pushState("STATE_STRING"); + break; + case 47: + this.pushState("STATE_ID"); + return "AS"; + break; + case 48: + this.popState(); + return "ID"; + break; + case 49: + this.popState(); + break; + case 50: + return "STATE_DESCR"; + break; + case 51: + return 19; + break; + case 52: + this.popState(); + break; + case 53: + this.popState(); + this.pushState("struct"); + return 20; + break; + case 54: + break; + case 55: + this.popState(); + return 21; + break; + case 56: + break; + case 57: + this.begin("NOTE"); + return 29; + break; + case 58: + this.popState(); + this.pushState("NOTE_ID"); + return 56; + break; + case 59: + this.popState(); + this.pushState("NOTE_ID"); + return 57; + break; + case 60: + this.popState(); + this.pushState("FLOATING_NOTE"); + break; + case 61: + this.popState(); + this.pushState("FLOATING_NOTE_ID"); + return "AS"; + break; + case 62: + break; + case 63: + return "NOTE_TEXT"; + break; + case 64: + this.popState(); + return "ID"; + break; + case 65: + this.popState(); + this.pushState("NOTE_TEXT"); + return 24; + break; + case 66: + this.popState(); + yy_.yytext = yy_.yytext.substr(2).trim(); + return 31; + break; + case 67: + this.popState(); + yy_.yytext = yy_.yytext.slice(0, -8).trim(); + return 31; + break; + case 68: + return 6; + break; + case 69: + return 6; + break; + case 70: + return 16; + break; + case 71: + return 54; + break; + case 72: + return 24; + break; + case 73: + yy_.yytext = yy_.yytext.trim(); + return 14; + break; + case 74: + return 15; + break; + case 75: + return 28; + break; + case 76: + return 55; + break; + case 77: + return 5; + break; + case 78: + return "INVALID"; + break; + } + }, "anonymous"), + rules: [/^(?:default\b)/i, /^(?:.*direction\s+TB[^\n]*)/i, /^(?:.*direction\s+BT[^\n]*)/i, /^(?:.*direction\s+RL[^\n]*)/i, /^(?:.*direction\s+LR[^\n]*)/i, /^(?:%%(?!\{)[^\n]*)/i, /^(?:[^\}]%%[^\n]*)/i, /^(?:[\n]+)/i, /^(?:[\s]+)/i, /^(?:((?!\n)\s)+)/i, /^(?:#[^\n]*)/i, /^(?:%[^\n]*)/i, /^(?:scale\s+)/i, /^(?:\d+)/i, /^(?:\s+width\b)/i, /^(?:accTitle\s*:\s*)/i, /^(?:(?!\n||)*[^\n]*)/i, /^(?:accDescr\s*:\s*)/i, /^(?:(?!\n||)*[^\n]*)/i, /^(?:accDescr\s*\{\s*)/i, /^(?:[\}])/i, /^(?:[^\}]*)/i, /^(?:classDef\s+)/i, /^(?:DEFAULT\s+)/i, /^(?:\w+\s+)/i, /^(?:[^\n]*)/i, /^(?:class\s+)/i, /^(?:(\w+)+((,\s*\w+)*))/i, /^(?:[^\n]*)/i, /^(?:style\s+)/i, /^(?:[\w,]+\s+)/i, /^(?:[^\n]*)/i, /^(?:scale\s+)/i, /^(?:\d+)/i, /^(?:\s+width\b)/i, /^(?:state\s+)/i, /^(?:.*<>)/i, /^(?:.*<>)/i, /^(?:.*<>)/i, /^(?:.*\[\[fork\]\])/i, /^(?:.*\[\[join\]\])/i, /^(?:.*\[\[choice\]\])/i, /^(?:.*direction\s+TB[^\n]*)/i, /^(?:.*direction\s+BT[^\n]*)/i, /^(?:.*direction\s+RL[^\n]*)/i, /^(?:.*direction\s+LR[^\n]*)/i, /^(?:["])/i, /^(?:\s*as\s+)/i, /^(?:[^\n\{]*)/i, /^(?:["])/i, /^(?:[^"]*)/i, /^(?:[^\n\s\{]+)/i, /^(?:\n)/i, /^(?:\{)/i, /^(?:%%(?!\{)[^\n]*)/i, /^(?:\})/i, /^(?:[\n])/i, /^(?:note\s+)/i, /^(?:left of\b)/i, /^(?:right of\b)/i, /^(?:")/i, /^(?:\s*as\s*)/i, /^(?:["])/i, /^(?:[^"]*)/i, /^(?:[^\n]*)/i, /^(?:\s*[^:\n\s\-]+)/i, /^(?:\s*:[^:\n;]+)/i, /^(?:[\s\S]*?end note\b)/i, /^(?:stateDiagram\s+)/i, /^(?:stateDiagram-v2\s+)/i, /^(?:hide empty description\b)/i, /^(?:\[\*\])/i, /^(?:[^:\n\s\-\{]+)/i, /^(?:\s*:[^:\n;]+)/i, /^(?:-->)/i, /^(?:--)/i, /^(?::::)/i, /^(?:$)/i, /^(?:.)/i], + conditions: { "LINE": { "rules": [9, 10], "inclusive": false }, "struct": { "rules": [9, 10, 22, 26, 29, 35, 42, 43, 44, 45, 54, 55, 56, 57, 71, 72, 73, 74, 75], "inclusive": false }, "FLOATING_NOTE_ID": { "rules": [64], "inclusive": false }, "FLOATING_NOTE": { "rules": [61, 62, 63], "inclusive": false }, "NOTE_TEXT": { "rules": [66, 67], "inclusive": false }, "NOTE_ID": { "rules": [65], "inclusive": false }, "NOTE": { "rules": [58, 59, 60], "inclusive": false }, "STYLEDEF_STYLEOPTS": { "rules": [], "inclusive": false }, "STYLEDEF_STYLES": { "rules": [31], "inclusive": false }, "STYLE_IDS": { "rules": [], "inclusive": false }, "STYLE": { "rules": [30], "inclusive": false }, "CLASS_STYLE": { "rules": [28], "inclusive": false }, "CLASS": { "rules": [27], "inclusive": false }, "CLASSDEFID": { "rules": [25], "inclusive": false }, "CLASSDEF": { "rules": [23, 24], "inclusive": false }, "acc_descr_multiline": { "rules": [20, 21], "inclusive": false }, "acc_descr": { "rules": [18], "inclusive": false }, "acc_title": { "rules": [16], "inclusive": false }, "SCALE": { "rules": [13, 14, 33, 34], "inclusive": false }, "ALIAS": { "rules": [], "inclusive": false }, "STATE_ID": { "rules": [48], "inclusive": false }, "STATE_STRING": { "rules": [49, 50], "inclusive": false }, "FORK_STATE": { "rules": [], "inclusive": false }, "STATE": { "rules": [9, 10, 36, 37, 38, 39, 40, 41, 46, 47, 51, 52, 53], "inclusive": false }, "ID": { "rules": [9, 10], "inclusive": false }, "INITIAL": { "rules": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 15, 17, 19, 22, 26, 29, 32, 35, 53, 57, 68, 69, 70, 71, 72, 73, 74, 76, 77, 78], "inclusive": true } } + }; + return lexer2; + }(); + parser2.lexer = lexer; + function Parser() { + this.yy = {}; + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(Parser, "Parser"); + Parser.prototype = parser2; + parser2.Parser = Parser; + return new Parser(); +}(); +parser.parser = parser; +var stateDiagram_default = parser; + +// src/diagrams/state/stateCommon.ts +var DEFAULT_DIAGRAM_DIRECTION = "LR"; +var DEFAULT_NESTED_DOC_DIR = "TB"; +var STMT_STATE = "state"; +var STMT_RELATION = "relation"; +var STMT_CLASSDEF = "classDef"; +var STMT_STYLEDEF = "style"; +var STMT_APPLYCLASS = "applyClass"; +var DEFAULT_STATE_TYPE = "default"; +var DIVIDER_TYPE = "divider"; +var G_EDGE_STYLE = "fill:none"; +var G_EDGE_ARROWHEADSTYLE = "fill: #333"; +var G_EDGE_LABELPOS = "c"; +var G_EDGE_LABELTYPE = "text"; +var G_EDGE_THICKNESS = "normal"; +var SHAPE_STATE = "rect"; +var SHAPE_STATE_WITH_DESC = "rectWithTitle"; +var SHAPE_START = "stateStart"; +var SHAPE_END = "stateEnd"; +var SHAPE_DIVIDER = "divider"; +var SHAPE_GROUP = "roundedWithTitle"; +var SHAPE_NOTE = "note"; +var SHAPE_NOTEGROUP = "noteGroup"; +var CSS_DIAGRAM = "statediagram"; +var CSS_STATE = "state"; +var CSS_DIAGRAM_STATE = `${CSS_DIAGRAM}-${CSS_STATE}`; +var CSS_EDGE = "transition"; +var CSS_NOTE = "note"; +var CSS_NOTE_EDGE = "note-edge"; +var CSS_EDGE_NOTE_EDGE = `${CSS_EDGE} ${CSS_NOTE_EDGE}`; +var CSS_DIAGRAM_NOTE = `${CSS_DIAGRAM}-${CSS_NOTE}`; +var CSS_CLUSTER = "cluster"; +var CSS_DIAGRAM_CLUSTER = `${CSS_DIAGRAM}-${CSS_CLUSTER}`; +var CSS_CLUSTER_ALT = "cluster-alt"; +var CSS_DIAGRAM_CLUSTER_ALT = `${CSS_DIAGRAM}-${CSS_CLUSTER_ALT}`; +var PARENT = "parent"; +var NOTE = "note"; +var DOMID_STATE = "state"; +var DOMID_TYPE_SPACER = "----"; +var NOTE_ID = `${DOMID_TYPE_SPACER}${NOTE}`; +var PARENT_ID = `${DOMID_TYPE_SPACER}${PARENT}`; + +// src/diagrams/state/stateRenderer-v3-unified.ts +var getDir = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)((parsedItem, defaultDir = DEFAULT_NESTED_DOC_DIR) => { + if (!parsedItem.doc) { + return defaultDir; + } + let dir = defaultDir; + for (const parsedItemDoc of parsedItem.doc) { + if (parsedItemDoc.stmt === "dir") { + dir = parsedItemDoc.value; + } + } + return dir; +}, "getDir"); +var getClasses = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function(text, diagramObj) { + diagramObj.db.extract(diagramObj.db.getRootDocV2()); + return diagramObj.db.getClasses(); +}, "getClasses"); +var draw = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(async function(text, id, _version, diag) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .log */ .Rm.info("REF0:"); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .log */ .Rm.info("Drawing state diagram (v2)", id); + const { securityLevel, state: conf, layout } = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .getConfig2 */ .D7)(); + diag.db.extract(diag.db.getRootDocV2()); + const data4Layout = diag.db.getData(); + const svg = (0,_chunk_FUIDI54P_mjs__WEBPACK_IMPORTED_MODULE_0__/* .getDiagramElement */ .A)(id, securityLevel); + data4Layout.type = diag.type; + data4Layout.layoutAlgorithm = layout; + data4Layout.nodeSpacing = conf?.nodeSpacing || 50; + data4Layout.rankSpacing = conf?.rankSpacing || 50; + data4Layout.markers = ["barb"]; + data4Layout.diagramId = id; + await (0,_chunk_T3KDJ7CM_mjs__WEBPACK_IMPORTED_MODULE_1__/* .render */ .XX)(data4Layout, svg); + const padding = 8; + _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_2__/* .utils_default */ ._K.insertTitle( + svg, + "statediagramTitleText", + conf?.titleTopMargin ?? 25, + diag.db.getDiagramTitle() + ); + (0,_chunk_FUIDI54P_mjs__WEBPACK_IMPORTED_MODULE_0__/* .setupViewPortForSVG */ .P)(svg, padding, CSS_DIAGRAM, conf?.useMaxWidth ?? true); +}, "draw"); +var stateRenderer_v3_unified_default = { + getClasses, + draw, + getDir +}; + +// src/diagrams/state/dataFetcher.js +var nodeDb = /* @__PURE__ */ new Map(); +var graphItemCount = 0; +function stateDomId(itemId = "", counter = 0, type = "", typeSpacer = DOMID_TYPE_SPACER) { + const typeStr = type !== null && type.length > 0 ? `${typeSpacer}${type}` : ""; + return `${DOMID_STATE}-${itemId}${typeStr}-${counter}`; +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(stateDomId, "stateDomId"); +var setupDoc = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)((parentParsedItem, doc, diagramStates, nodes2, edges2, altFlag, look, classes2) => { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .log */ .Rm.trace("items", doc); + doc.forEach((item) => { + switch (item.stmt) { + case STMT_STATE: + dataFetcher(parentParsedItem, item, diagramStates, nodes2, edges2, altFlag, look, classes2); + break; + case DEFAULT_STATE_TYPE: + dataFetcher(parentParsedItem, item, diagramStates, nodes2, edges2, altFlag, look, classes2); + break; + case STMT_RELATION: + { + dataFetcher( + parentParsedItem, + item.state1, + diagramStates, + nodes2, + edges2, + altFlag, + look, + classes2 + ); + dataFetcher( + parentParsedItem, + item.state2, + diagramStates, + nodes2, + edges2, + altFlag, + look, + classes2 + ); + const edgeData = { + id: "edge" + graphItemCount, + start: item.state1.id, + end: item.state2.id, + arrowhead: "normal", + arrowTypeEnd: "arrow_barb", + style: G_EDGE_STYLE, + labelStyle: "", + label: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .common_default */ .Y2.sanitizeText(item.description, (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .getConfig2 */ .D7)()), + arrowheadStyle: G_EDGE_ARROWHEADSTYLE, + labelpos: G_EDGE_LABELPOS, + labelType: G_EDGE_LABELTYPE, + thickness: G_EDGE_THICKNESS, + classes: CSS_EDGE, + look + }; + edges2.push(edgeData); + graphItemCount++; + } + break; + } + }); +}, "setupDoc"); +var getDir2 = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)((parsedItem, defaultDir = DEFAULT_NESTED_DOC_DIR) => { + let dir = defaultDir; + if (parsedItem.doc) { + for (const parsedItemDoc of parsedItem.doc) { + if (parsedItemDoc.stmt === "dir") { + dir = parsedItemDoc.value; + } + } + } + return dir; +}, "getDir"); +function insertOrUpdateNode(nodes2, nodeData, classes2) { + if (!nodeData.id || nodeData.id === "" || nodeData.id === "") { + return; + } + if (nodeData.cssClasses) { + if (!Array.isArray(nodeData.cssCompiledStyles)) { + nodeData.cssCompiledStyles = []; + } + nodeData.cssClasses.split(" ").forEach((cssClass) => { + if (classes2.get(cssClass)) { + const classDef = classes2.get(cssClass); + nodeData.cssCompiledStyles = [...nodeData.cssCompiledStyles, ...classDef.styles]; + } + }); + } + const existingNodeData = nodes2.find((node) => node.id === nodeData.id); + if (existingNodeData) { + Object.assign(existingNodeData, nodeData); + } else { + nodes2.push(nodeData); + } +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(insertOrUpdateNode, "insertOrUpdateNode"); +function getClassesFromDbInfo(dbInfoItem) { + return dbInfoItem?.classes?.join(" ") ?? ""; +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(getClassesFromDbInfo, "getClassesFromDbInfo"); +function getStylesFromDbInfo(dbInfoItem) { + return dbInfoItem?.styles ?? []; +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(getStylesFromDbInfo, "getStylesFromDbInfo"); +var dataFetcher = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)((parent, parsedItem, diagramStates, nodes2, edges2, altFlag, look, classes2) => { + const itemId = parsedItem.id; + const dbState = diagramStates.get(itemId); + const classStr = getClassesFromDbInfo(dbState); + const style = getStylesFromDbInfo(dbState); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .log */ .Rm.info("dataFetcher parsedItem", parsedItem, dbState, style); + if (itemId !== "root") { + let shape = SHAPE_STATE; + if (parsedItem.start === true) { + shape = SHAPE_START; + } else if (parsedItem.start === false) { + shape = SHAPE_END; + } + if (parsedItem.type !== DEFAULT_STATE_TYPE) { + shape = parsedItem.type; + } + if (!nodeDb.get(itemId)) { + nodeDb.set(itemId, { + id: itemId, + shape, + description: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .common_default */ .Y2.sanitizeText(itemId, (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .getConfig2 */ .D7)()), + cssClasses: `${classStr} ${CSS_DIAGRAM_STATE}`, + cssStyles: style + }); + } + const newNode = nodeDb.get(itemId); + if (parsedItem.description) { + if (Array.isArray(newNode.description)) { + newNode.shape = SHAPE_STATE_WITH_DESC; + newNode.description.push(parsedItem.description); + } else { + if (newNode.description?.length > 0) { + newNode.shape = SHAPE_STATE_WITH_DESC; + if (newNode.description === itemId) { + newNode.description = [parsedItem.description]; + } else { + newNode.description = [newNode.description, parsedItem.description]; + } + } else { + newNode.shape = SHAPE_STATE; + newNode.description = parsedItem.description; + } + } + newNode.description = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .common_default */ .Y2.sanitizeTextOrArray(newNode.description, (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .getConfig2 */ .D7)()); + } + if (newNode.description?.length === 1 && newNode.shape === SHAPE_STATE_WITH_DESC) { + if (newNode.type === "group") { + newNode.shape = SHAPE_GROUP; + } else { + newNode.shape = SHAPE_STATE; + } + } + if (!newNode.type && parsedItem.doc) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .log */ .Rm.info("Setting cluster for XCX", itemId, getDir2(parsedItem)); + newNode.type = "group"; + newNode.isGroup = true; + newNode.dir = getDir2(parsedItem); + newNode.shape = parsedItem.type === DIVIDER_TYPE ? SHAPE_DIVIDER : SHAPE_GROUP; + newNode.cssClasses = `${newNode.cssClasses} ${CSS_DIAGRAM_CLUSTER} ${altFlag ? CSS_DIAGRAM_CLUSTER_ALT : ""}`; + } + const nodeData = { + labelStyle: "", + shape: newNode.shape, + label: newNode.description, + cssClasses: newNode.cssClasses, + cssCompiledStyles: [], + cssStyles: newNode.cssStyles, + id: itemId, + dir: newNode.dir, + domId: stateDomId(itemId, graphItemCount), + type: newNode.type, + isGroup: newNode.type === "group", + padding: 8, + rx: 10, + ry: 10, + look + }; + if (nodeData.shape === SHAPE_DIVIDER) { + nodeData.label = ""; + } + if (parent && parent.id !== "root") { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .log */ .Rm.trace("Setting node ", itemId, " to be child of its parent ", parent.id); + nodeData.parentId = parent.id; + } + nodeData.centerLabel = true; + if (parsedItem.note) { + const noteData = { + labelStyle: "", + shape: SHAPE_NOTE, + label: parsedItem.note.text, + cssClasses: CSS_DIAGRAM_NOTE, + // useHtmlLabels: false, + cssStyles: [], + cssCompilesStyles: [], + id: itemId + NOTE_ID + "-" + graphItemCount, + domId: stateDomId(itemId, graphItemCount, NOTE), + type: newNode.type, + isGroup: newNode.type === "group", + padding: (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .getConfig2 */ .D7)().flowchart.padding, + look, + position: parsedItem.note.position + }; + const parentNodeId = itemId + PARENT_ID; + const groupData = { + labelStyle: "", + shape: SHAPE_NOTEGROUP, + label: parsedItem.note.text, + cssClasses: newNode.cssClasses, + cssStyles: [], + id: itemId + PARENT_ID, + domId: stateDomId(itemId, graphItemCount, PARENT), + type: "group", + isGroup: true, + padding: 16, + //getConfig().flowchart.padding + look, + position: parsedItem.note.position + }; + graphItemCount++; + groupData.id = parentNodeId; + noteData.parentId = parentNodeId; + insertOrUpdateNode(nodes2, groupData, classes2); + insertOrUpdateNode(nodes2, noteData, classes2); + insertOrUpdateNode(nodes2, nodeData, classes2); + let from = itemId; + let to = noteData.id; + if (parsedItem.note.position === "left of") { + from = noteData.id; + to = itemId; + } + edges2.push({ + id: from + "-" + to, + start: from, + end: to, + arrowhead: "none", + arrowTypeEnd: "", + style: G_EDGE_STYLE, + labelStyle: "", + classes: CSS_EDGE_NOTE_EDGE, + arrowheadStyle: G_EDGE_ARROWHEADSTYLE, + labelpos: G_EDGE_LABELPOS, + labelType: G_EDGE_LABELTYPE, + thickness: G_EDGE_THICKNESS, + look + }); + } else { + insertOrUpdateNode(nodes2, nodeData, classes2); + } + } + if (parsedItem.doc) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .log */ .Rm.trace("Adding nodes children "); + setupDoc(parsedItem, parsedItem.doc, diagramStates, nodes2, edges2, !altFlag, look, classes2); + } +}, "dataFetcher"); +var reset = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(() => { + nodeDb.clear(); + graphItemCount = 0; +}, "reset"); + +// src/diagrams/state/stateDb.js +var START_NODE = "[*]"; +var START_TYPE = "start"; +var END_NODE = START_NODE; +var END_TYPE = "end"; +var COLOR_KEYWORD = "color"; +var FILL_KEYWORD = "fill"; +var BG_FILL = "bgFill"; +var STYLECLASS_SEP = ","; +function newClassesList() { + return /* @__PURE__ */ new Map(); +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(newClassesList, "newClassesList"); +var nodes = []; +var edges = []; +var direction = DEFAULT_DIAGRAM_DIRECTION; +var rootDoc = []; +var classes = newClassesList(); +var newDoc = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(() => { + return { + /** @type {{ id1: string, id2: string, relationTitle: string }[]} */ + relations: [], + states: /* @__PURE__ */ new Map(), + documents: {} + }; +}, "newDoc"); +var documents = { + root: newDoc() +}; +var currentDocument = documents.root; +var startEndCount = 0; +var dividerCnt = 0; +var lineType = { + LINE: 0, + DOTTED_LINE: 1 +}; +var relationType = { + AGGREGATION: 0, + EXTENSION: 1, + COMPOSITION: 2, + DEPENDENCY: 3 +}; +var clone = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)((o) => JSON.parse(JSON.stringify(o)), "clone"); +var setRootDoc = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)((o) => { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .log */ .Rm.info("Setting root doc", o); + rootDoc = o; +}, "setRootDoc"); +var getRootDoc = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(() => rootDoc, "getRootDoc"); +var docTranslator = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)((parent, node, first) => { + if (node.stmt === STMT_RELATION) { + docTranslator(parent, node.state1, true); + docTranslator(parent, node.state2, false); + } else { + if (node.stmt === STMT_STATE) { + if (node.id === "[*]") { + node.id = first ? parent.id + "_start" : parent.id + "_end"; + node.start = first; + } else { + node.id = node.id.trim(); + } + } + if (node.doc) { + const doc = []; + let currentDoc = []; + let i; + for (i = 0; i < node.doc.length; i++) { + if (node.doc[i].type === DIVIDER_TYPE) { + const newNode = clone(node.doc[i]); + newNode.doc = clone(currentDoc); + doc.push(newNode); + currentDoc = []; + } else { + currentDoc.push(node.doc[i]); + } + } + if (doc.length > 0 && currentDoc.length > 0) { + const newNode = { + stmt: STMT_STATE, + id: (0,_chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_2__/* .generateId */ .$C)(), + type: "divider", + doc: clone(currentDoc) + }; + doc.push(clone(newNode)); + node.doc = doc; + } + node.doc.forEach((docNode) => docTranslator(node, docNode, true)); + } + } +}, "docTranslator"); +var getRootDocV2 = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(() => { + docTranslator({ id: "root" }, { id: "root", doc: rootDoc }, true); + return { id: "root", doc: rootDoc }; +}, "getRootDocV2"); +var extract = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)((_doc) => { + let doc; + if (_doc.doc) { + doc = _doc.doc; + } else { + doc = _doc; + } + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .log */ .Rm.info(doc); + clear2(true); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .log */ .Rm.info("Extract initial document:", doc); + doc.forEach((item) => { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .log */ .Rm.warn("Statement", item.stmt); + switch (item.stmt) { + case STMT_STATE: + addState( + item.id.trim(), + item.type, + item.doc, + item.description, + item.note, + item.classes, + item.styles, + item.textStyles + ); + break; + case STMT_RELATION: + addRelation(item.state1, item.state2, item.description); + break; + case STMT_CLASSDEF: + addStyleClass(item.id.trim(), item.classes); + break; + case STMT_STYLEDEF: + { + const ids = item.id.trim().split(","); + const styles = item.styleClass.split(","); + ids.forEach((id) => { + let foundState = getState(id); + if (foundState === void 0) { + const trimmedId = id.trim(); + addState(trimmedId); + foundState = getState(trimmedId); + } + foundState.styles = styles.map((s) => s.replace(/;/g, "")?.trim()); + }); + } + break; + case STMT_APPLYCLASS: + setCssClass(item.id.trim(), item.styleClass); + break; + } + }); + const diagramStates = getStates(); + const config = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .getConfig2 */ .D7)(); + const look = config.look; + reset(); + dataFetcher(void 0, getRootDocV2(), diagramStates, nodes, edges, true, look, classes); + nodes.forEach((node) => { + if (Array.isArray(node.label)) { + node.description = node.label.slice(1); + if (node.isGroup && node.description.length > 0) { + throw new Error( + "Group nodes can only have label. Remove the additional description for node [" + node.id + "]" + ); + } + node.label = node.label[0]; + } + }); +}, "extract"); +var addState = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function(id, type = DEFAULT_STATE_TYPE, doc = null, descr = null, note = null, classes2 = null, styles = null, textStyles = null) { + const trimmedId = id?.trim(); + if (!currentDocument.states.has(trimmedId)) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .log */ .Rm.info("Adding state ", trimmedId, descr); + currentDocument.states.set(trimmedId, { + id: trimmedId, + descriptions: [], + type, + doc, + note, + classes: [], + styles: [], + textStyles: [] + }); + } else { + if (!currentDocument.states.get(trimmedId).doc) { + currentDocument.states.get(trimmedId).doc = doc; + } + if (!currentDocument.states.get(trimmedId).type) { + currentDocument.states.get(trimmedId).type = type; + } + } + if (descr) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .log */ .Rm.info("Setting state description", trimmedId, descr); + if (typeof descr === "string") { + addDescription(trimmedId, descr.trim()); + } + if (typeof descr === "object") { + descr.forEach((des) => addDescription(trimmedId, des.trim())); + } + } + if (note) { + const doc2 = currentDocument.states.get(trimmedId); + doc2.note = note; + doc2.note.text = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .common_default */ .Y2.sanitizeText(doc2.note.text, (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .getConfig2 */ .D7)()); + } + if (classes2) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .log */ .Rm.info("Setting state classes", trimmedId, classes2); + const classesList = typeof classes2 === "string" ? [classes2] : classes2; + classesList.forEach((cssClass) => setCssClass(trimmedId, cssClass.trim())); + } + if (styles) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .log */ .Rm.info("Setting state styles", trimmedId, styles); + const stylesList = typeof styles === "string" ? [styles] : styles; + stylesList.forEach((style) => setStyle(trimmedId, style.trim())); + } + if (textStyles) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .log */ .Rm.info("Setting state styles", trimmedId, styles); + const textStylesList = typeof textStyles === "string" ? [textStyles] : textStyles; + textStylesList.forEach((textStyle) => setTextStyle(trimmedId, textStyle.trim())); + } +}, "addState"); +var clear2 = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function(saveCommon) { + nodes = []; + edges = []; + documents = { + root: newDoc() + }; + currentDocument = documents.root; + startEndCount = 0; + classes = newClassesList(); + if (!saveCommon) { + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .clear */ .IU)(); + } +}, "clear"); +var getState = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function(id) { + return currentDocument.states.get(id); +}, "getState"); +var getStates = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function() { + return currentDocument.states; +}, "getStates"); +var logDocuments = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function() { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .log */ .Rm.info("Documents = ", documents); +}, "logDocuments"); +var getRelations = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function() { + return currentDocument.relations; +}, "getRelations"); +function startIdIfNeeded(id = "") { + let fixedId = id; + if (id === START_NODE) { + startEndCount++; + fixedId = `${START_TYPE}${startEndCount}`; + } + return fixedId; +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(startIdIfNeeded, "startIdIfNeeded"); +function startTypeIfNeeded(id = "", type = DEFAULT_STATE_TYPE) { + return id === START_NODE ? START_TYPE : type; +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(startTypeIfNeeded, "startTypeIfNeeded"); +function endIdIfNeeded(id = "") { + let fixedId = id; + if (id === END_NODE) { + startEndCount++; + fixedId = `${END_TYPE}${startEndCount}`; + } + return fixedId; +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(endIdIfNeeded, "endIdIfNeeded"); +function endTypeIfNeeded(id = "", type = DEFAULT_STATE_TYPE) { + return id === END_NODE ? END_TYPE : type; +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(endTypeIfNeeded, "endTypeIfNeeded"); +function addRelationObjs(item1, item2, relationTitle) { + let id1 = startIdIfNeeded(item1.id.trim()); + let type1 = startTypeIfNeeded(item1.id.trim(), item1.type); + let id2 = startIdIfNeeded(item2.id.trim()); + let type2 = startTypeIfNeeded(item2.id.trim(), item2.type); + addState( + id1, + type1, + item1.doc, + item1.description, + item1.note, + item1.classes, + item1.styles, + item1.textStyles + ); + addState( + id2, + type2, + item2.doc, + item2.description, + item2.note, + item2.classes, + item2.styles, + item2.textStyles + ); + currentDocument.relations.push({ + id1, + id2, + relationTitle: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .common_default */ .Y2.sanitizeText(relationTitle, (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .getConfig2 */ .D7)()) + }); +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(addRelationObjs, "addRelationObjs"); +var addRelation = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function(item1, item2, title) { + if (typeof item1 === "object") { + addRelationObjs(item1, item2, title); + } else { + const id1 = startIdIfNeeded(item1.trim()); + const type1 = startTypeIfNeeded(item1); + const id2 = endIdIfNeeded(item2.trim()); + const type2 = endTypeIfNeeded(item2); + addState(id1, type1); + addState(id2, type2); + currentDocument.relations.push({ + id1, + id2, + title: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .common_default */ .Y2.sanitizeText(title, (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .getConfig2 */ .D7)()) + }); + } +}, "addRelation"); +var addDescription = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function(id, descr) { + const theState = currentDocument.states.get(id); + const _descr = descr.startsWith(":") ? descr.replace(":", "").trim() : descr; + theState.descriptions.push(_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .common_default */ .Y2.sanitizeText(_descr, (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .getConfig2 */ .D7)())); +}, "addDescription"); +var cleanupLabel = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function(label) { + if (label.substring(0, 1) === ":") { + return label.substr(2).trim(); + } else { + return label.trim(); + } +}, "cleanupLabel"); +var getDividerId = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(() => { + dividerCnt++; + return "divider-id-" + dividerCnt; +}, "getDividerId"); +var addStyleClass = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function(id, styleAttributes = "") { + if (!classes.has(id)) { + classes.set(id, { id, styles: [], textStyles: [] }); + } + const foundClass = classes.get(id); + if (styleAttributes !== void 0 && styleAttributes !== null) { + styleAttributes.split(STYLECLASS_SEP).forEach((attrib) => { + const fixedAttrib = attrib.replace(/([^;]*);/, "$1").trim(); + if (RegExp(COLOR_KEYWORD).exec(attrib)) { + const newStyle1 = fixedAttrib.replace(FILL_KEYWORD, BG_FILL); + const newStyle2 = newStyle1.replace(COLOR_KEYWORD, FILL_KEYWORD); + foundClass.textStyles.push(newStyle2); + } + foundClass.styles.push(fixedAttrib); + }); + } +}, "addStyleClass"); +var getClasses2 = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function() { + return classes; +}, "getClasses"); +var setCssClass = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function(itemIds, cssClassName) { + itemIds.split(",").forEach(function(id) { + let foundState = getState(id); + if (foundState === void 0) { + const trimmedId = id.trim(); + addState(trimmedId); + foundState = getState(trimmedId); + } + foundState.classes.push(cssClassName); + }); +}, "setCssClass"); +var setStyle = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function(itemId, styleText) { + const item = getState(itemId); + if (item !== void 0) { + item.styles.push(styleText); + } +}, "setStyle"); +var setTextStyle = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(function(itemId, cssClassName) { + const item = getState(itemId); + if (item !== void 0) { + item.textStyles.push(cssClassName); + } +}, "setTextStyle"); +var getDirection = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(() => direction, "getDirection"); +var setDirection = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)((dir) => { + direction = dir; +}, "setDirection"); +var trimColon = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)((str) => str && str[0] === ":" ? str.substr(1).trim() : str.trim(), "trimColon"); +var getData = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(() => { + const config = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .getConfig2 */ .D7)(); + return { nodes, edges, other: {}, config, direction: getDir(getRootDocV2()) }; +}, "getData"); +var stateDb_default = { + getConfig: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(() => (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .getConfig2 */ .D7)().state, "getConfig"), + getData, + addState, + clear: clear2, + getState, + getStates, + getRelations, + getClasses: getClasses2, + getDirection, + addRelation, + getDividerId, + setDirection, + cleanupLabel, + lineType, + relationType, + logDocuments, + getRootDoc, + setRootDoc, + getRootDocV2, + extract, + trimColon, + getAccTitle: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .getAccTitle */ .iN, + setAccTitle: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .setAccTitle */ .SV, + getAccDescription: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .getAccDescription */ .m7, + setAccDescription: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .setAccDescription */ .EI, + addStyleClass, + setCssClass, + addDescription, + setDiagramTitle: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .setDiagramTitle */ .ke, + getDiagramTitle: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .getDiagramTitle */ .ab +}; + +// src/diagrams/state/styles.js +var getStyles = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)((options) => ` +defs #statediagram-barbEnd { + fill: ${options.transitionColor}; + stroke: ${options.transitionColor}; + } +g.stateGroup text { + fill: ${options.nodeBorder}; + stroke: none; + font-size: 10px; +} +g.stateGroup text { + fill: ${options.textColor}; + stroke: none; + font-size: 10px; + +} +g.stateGroup .state-title { + font-weight: bolder; + fill: ${options.stateLabelColor}; +} + +g.stateGroup rect { + fill: ${options.mainBkg}; + stroke: ${options.nodeBorder}; +} + +g.stateGroup line { + stroke: ${options.lineColor}; + stroke-width: 1; +} + +.transition { + stroke: ${options.transitionColor}; + stroke-width: 1; + fill: none; +} + +.stateGroup .composit { + fill: ${options.background}; + border-bottom: 1px +} + +.stateGroup .alt-composit { + fill: #e0e0e0; + border-bottom: 1px +} + +.state-note { + stroke: ${options.noteBorderColor}; + fill: ${options.noteBkgColor}; + + text { + fill: ${options.noteTextColor}; + stroke: none; + font-size: 10px; + } +} + +.stateLabel .box { + stroke: none; + stroke-width: 0; + fill: ${options.mainBkg}; + opacity: 0.5; +} + +.edgeLabel .label rect { + fill: ${options.labelBackgroundColor}; + opacity: 0.5; +} +.edgeLabel { + background-color: ${options.edgeLabelBackground}; + p { + background-color: ${options.edgeLabelBackground}; + } + rect { + opacity: 0.5; + background-color: ${options.edgeLabelBackground}; + fill: ${options.edgeLabelBackground}; + } + text-align: center; +} +.edgeLabel .label text { + fill: ${options.transitionLabelColor || options.tertiaryTextColor}; +} +.label div .edgeLabel { + color: ${options.transitionLabelColor || options.tertiaryTextColor}; +} + +.stateLabel text { + fill: ${options.stateLabelColor}; + font-size: 10px; + font-weight: bold; +} + +.node circle.state-start { + fill: ${options.specialStateColor}; + stroke: ${options.specialStateColor}; +} + +.node .fork-join { + fill: ${options.specialStateColor}; + stroke: ${options.specialStateColor}; +} + +.node circle.state-end { + fill: ${options.innerEndBackground}; + stroke: ${options.background}; + stroke-width: 1.5 +} +.end-state-inner { + fill: ${options.compositeBackground || options.background}; + // stroke: ${options.background}; + stroke-width: 1.5 +} + +.node rect { + fill: ${options.stateBkg || options.mainBkg}; + stroke: ${options.stateBorder || options.nodeBorder}; + stroke-width: 1px; +} +.node polygon { + fill: ${options.mainBkg}; + stroke: ${options.stateBorder || options.nodeBorder};; + stroke-width: 1px; +} +#statediagram-barbEnd { + fill: ${options.lineColor}; +} + +.statediagram-cluster rect { + fill: ${options.compositeTitleBackground}; + stroke: ${options.stateBorder || options.nodeBorder}; + stroke-width: 1px; +} + +.cluster-label, .nodeLabel { + color: ${options.stateLabelColor}; + // line-height: 1; +} + +.statediagram-cluster rect.outer { + rx: 5px; + ry: 5px; +} +.statediagram-state .divider { + stroke: ${options.stateBorder || options.nodeBorder}; +} + +.statediagram-state .title-state { + rx: 5px; + ry: 5px; +} +.statediagram-cluster.statediagram-cluster .inner { + fill: ${options.compositeBackground || options.background}; +} +.statediagram-cluster.statediagram-cluster-alt .inner { + fill: ${options.altBackground ? options.altBackground : "#efefef"}; +} + +.statediagram-cluster .inner { + rx:0; + ry:0; +} + +.statediagram-state rect.basic { + rx: 5px; + ry: 5px; +} +.statediagram-state rect.divider { + stroke-dasharray: 10,10; + fill: ${options.altBackground ? options.altBackground : "#efefef"}; +} + +.note-edge { + stroke-dasharray: 5; +} + +.statediagram-note rect { + fill: ${options.noteBkgColor}; + stroke: ${options.noteBorderColor}; + stroke-width: 1px; + rx: 0; + ry: 0; +} +.statediagram-note rect { + fill: ${options.noteBkgColor}; + stroke: ${options.noteBorderColor}; + stroke-width: 1px; + rx: 0; + ry: 0; +} + +.statediagram-note text { + fill: ${options.noteTextColor}; +} + +.statediagram-note .nodeLabel { + color: ${options.noteTextColor}; +} +.statediagram .edgeLabel { + color: red; // ${options.noteTextColor}; +} + +#dependencyStart, #dependencyEnd { + fill: ${options.lineColor}; + stroke: ${options.lineColor}; + stroke-width: 1; +} + +.statediagramTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${options.textColor}; +} +`, "getStyles"); +var styles_default = getStyles; + + + + +/***/ }), + +/***/ 46578: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ DA: () => (/* binding */ createLabel_default), +/* harmony export */ IU: () => (/* binding */ clear), +/* harmony export */ U7: () => (/* binding */ setNodeElem), +/* harmony export */ U_: () => (/* binding */ positionNode), +/* harmony export */ lC: () => (/* binding */ updateNodeBounds), +/* harmony export */ nM: () => (/* binding */ intersect_rect_default), +/* harmony export */ on: () => (/* binding */ insertNode) +/* harmony export */ }); +/* harmony import */ var _chunk_OERGPBFJ_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(67895); +/* harmony import */ var _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(57323); +/* harmony import */ var _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(64994); +/* harmony import */ var d3__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(20007); + + + + +// src/dagre-wrapper/createLabel.js + +function applyStyle(dom, styleFn) { + if (styleFn) { + dom.attr("style", styleFn); + } +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(applyStyle, "applyStyle"); +function addHtmlLabel(node) { + const fo = (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(document.createElementNS("http://www.w3.org/2000/svg", "foreignObject")); + const div = fo.append("xhtml:div"); + const label = node.label; + const labelClass = node.isNode ? "nodeLabel" : "edgeLabel"; + const span = div.append("span"); + span.html(label); + applyStyle(span, node.labelStyle); + span.attr("class", labelClass); + applyStyle(div, node.labelStyle); + div.style("display", "inline-block"); + div.style("white-space", "nowrap"); + div.attr("xmlns", "http://www.w3.org/1999/xhtml"); + return fo.node(); +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(addHtmlLabel, "addHtmlLabel"); +var createLabel = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((_vertexText, style, isTitle, isNode) => { + let vertexText = _vertexText || ""; + if (typeof vertexText === "object") { + vertexText = vertexText[0]; + } + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .evaluate */ ._3)((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)().flowchart.htmlLabels)) { + vertexText = vertexText.replace(/\\n|\n/g, "
    "); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.debug("vertexText" + vertexText); + const node = { + isNode, + label: (0,_chunk_OERGPBFJ_mjs__WEBPACK_IMPORTED_MODULE_0__/* .replaceIconSubstring */ .hE)((0,_chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_1__/* .decodeEntities */ .Sm)(vertexText)), + labelStyle: style.replace("fill:", "color:") + }; + let vertexNode = addHtmlLabel(node); + return vertexNode; + } else { + const svgLabel = document.createElementNS("http://www.w3.org/2000/svg", "text"); + svgLabel.setAttribute("style", style.replace("color:", "fill:")); + let rows = []; + if (typeof vertexText === "string") { + rows = vertexText.split(/\\n|\n|/gi); + } else if (Array.isArray(vertexText)) { + rows = vertexText; + } else { + rows = []; + } + for (const row of rows) { + const tspan = document.createElementNS("http://www.w3.org/2000/svg", "tspan"); + tspan.setAttributeNS("http://www.w3.org/XML/1998/namespace", "xml:space", "preserve"); + tspan.setAttribute("dy", "1em"); + tspan.setAttribute("x", "0"); + if (isTitle) { + tspan.setAttribute("class", "title-row"); + } else { + tspan.setAttribute("class", "row"); + } + tspan.textContent = row.trim(); + svgLabel.appendChild(tspan); + } + return svgLabel; + } +}, "createLabel"); +var createLabel_default = createLabel; + +// src/dagre-wrapper/shapes/util.js + +var labelHelper = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node, _classes, isNode) => { + const config = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)(); + let classes; + const useHtmlLabels = node.useHtmlLabels || (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .evaluate */ ._3)(config.flowchart.htmlLabels); + if (!_classes) { + classes = "node default"; + } else { + classes = _classes; + } + const shapeSvg = parent.insert("g").attr("class", classes).attr("id", node.domId || node.id); + const label = shapeSvg.insert("g").attr("class", "label").attr("style", node.labelStyle); + let labelText; + if (node.labelText === void 0) { + labelText = ""; + } else { + labelText = typeof node.labelText === "string" ? node.labelText : node.labelText[0]; + } + const textNode = label.node(); + let text; + if (node.labelType === "markdown") { + text = (0,_chunk_OERGPBFJ_mjs__WEBPACK_IMPORTED_MODULE_0__/* .createText */ .GZ)( + label, + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .sanitizeText */ .jZ)((0,_chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_1__/* .decodeEntities */ .Sm)(labelText), config), + { + useHtmlLabels, + width: node.width || config.flowchart.wrappingWidth, + classes: "markdown-node-label" + }, + config + ); + } else { + text = textNode.appendChild( + createLabel_default((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .sanitizeText */ .jZ)((0,_chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_1__/* .decodeEntities */ .Sm)(labelText), config), node.labelStyle, false, isNode) + ); + } + let bbox = text.getBBox(); + const halfPadding = node.padding / 2; + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .evaluate */ ._3)(config.flowchart.htmlLabels)) { + const div = text.children[0]; + const dv = (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(text); + const images = div.getElementsByTagName("img"); + if (images) { + const noImgText = labelText.replace(/]*>/g, "").trim() === ""; + await Promise.all( + [...images].map( + (img) => new Promise((res) => { + function setupImage() { + img.style.display = "flex"; + img.style.flexDirection = "column"; + if (noImgText) { + const bodyFontSize = config.fontSize ? config.fontSize : window.getComputedStyle(document.body).fontSize; + const enlargingFactor = 5; + const width = parseInt(bodyFontSize, 10) * enlargingFactor + "px"; + img.style.minWidth = width; + img.style.maxWidth = width; + } else { + img.style.width = "100%"; + } + res(img); + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(setupImage, "setupImage"); + setTimeout(() => { + if (img.complete) { + setupImage(); + } + }); + img.addEventListener("error", setupImage); + img.addEventListener("load", setupImage); + }) + ) + ); + } + bbox = div.getBoundingClientRect(); + dv.attr("width", bbox.width); + dv.attr("height", bbox.height); + } + if (useHtmlLabels) { + label.attr("transform", "translate(" + -bbox.width / 2 + ", " + -bbox.height / 2 + ")"); + } else { + label.attr("transform", "translate(0, " + -bbox.height / 2 + ")"); + } + if (node.centerLabel) { + label.attr("transform", "translate(" + -bbox.width / 2 + ", " + -bbox.height / 2 + ")"); + } + label.insert("rect", ":first-child"); + return { shapeSvg, bbox, halfPadding, label }; +}, "labelHelper"); +var updateNodeBounds = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((node, element) => { + const bbox = element.node().getBBox(); + node.width = bbox.width; + node.height = bbox.height; +}, "updateNodeBounds"); +function insertPolygonShape(parent, w, h, points) { + return parent.insert("polygon", ":first-child").attr( + "points", + points.map(function(d) { + return d.x + "," + d.y; + }).join(" ") + ).attr("class", "label-container").attr("transform", "translate(" + -w / 2 + "," + h / 2 + ")"); +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(insertPolygonShape, "insertPolygonShape"); + +// src/dagre-wrapper/nodes.js + + +// src/dagre-wrapper/blockArrowHelper.ts +var expandAndDeduplicateDirections = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((directions) => { + const uniqueDirections = /* @__PURE__ */ new Set(); + for (const direction of directions) { + switch (direction) { + case "x": + uniqueDirections.add("right"); + uniqueDirections.add("left"); + break; + case "y": + uniqueDirections.add("up"); + uniqueDirections.add("down"); + break; + default: + uniqueDirections.add(direction); + break; + } + } + return uniqueDirections; +}, "expandAndDeduplicateDirections"); +var getArrowPoints = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((duplicatedDirections, bbox, node) => { + const directions = expandAndDeduplicateDirections(duplicatedDirections); + const f = 2; + const height = bbox.height + 2 * node.padding; + const midpoint = height / f; + const width = bbox.width + 2 * midpoint + node.padding; + const padding = node.padding / 2; + if (directions.has("right") && directions.has("left") && directions.has("up") && directions.has("down")) { + return [ + // Bottom + { x: 0, y: 0 }, + { x: midpoint, y: 0 }, + { x: width / 2, y: 2 * padding }, + { x: width - midpoint, y: 0 }, + { x: width, y: 0 }, + // Right + { x: width, y: -height / 3 }, + { x: width + 2 * padding, y: -height / 2 }, + { x: width, y: -2 * height / 3 }, + { x: width, y: -height }, + // Top + { x: width - midpoint, y: -height }, + { x: width / 2, y: -height - 2 * padding }, + { x: midpoint, y: -height }, + // Left + { x: 0, y: -height }, + { x: 0, y: -2 * height / 3 }, + { x: -2 * padding, y: -height / 2 }, + { x: 0, y: -height / 3 } + ]; + } + if (directions.has("right") && directions.has("left") && directions.has("up")) { + return [ + { x: midpoint, y: 0 }, + { x: width - midpoint, y: 0 }, + { x: width, y: -height / 2 }, + { x: width - midpoint, y: -height }, + { x: midpoint, y: -height }, + { x: 0, y: -height / 2 } + ]; + } + if (directions.has("right") && directions.has("left") && directions.has("down")) { + return [ + { x: 0, y: 0 }, + { x: midpoint, y: -height }, + { x: width - midpoint, y: -height }, + { x: width, y: 0 } + ]; + } + if (directions.has("right") && directions.has("up") && directions.has("down")) { + return [ + { x: 0, y: 0 }, + { x: width, y: -midpoint }, + { x: width, y: -height + midpoint }, + { x: 0, y: -height } + ]; + } + if (directions.has("left") && directions.has("up") && directions.has("down")) { + return [ + { x: width, y: 0 }, + { x: 0, y: -midpoint }, + { x: 0, y: -height + midpoint }, + { x: width, y: -height } + ]; + } + if (directions.has("right") && directions.has("left")) { + return [ + { x: midpoint, y: 0 }, + { x: midpoint, y: -padding }, + { x: width - midpoint, y: -padding }, + { x: width - midpoint, y: 0 }, + { x: width, y: -height / 2 }, + { x: width - midpoint, y: -height }, + { x: width - midpoint, y: -height + padding }, + { x: midpoint, y: -height + padding }, + { x: midpoint, y: -height }, + { x: 0, y: -height / 2 } + ]; + } + if (directions.has("up") && directions.has("down")) { + return [ + // Bottom center + { x: width / 2, y: 0 }, + // Left pont of bottom arrow + { x: 0, y: -padding }, + { x: midpoint, y: -padding }, + // Left top over vertical section + { x: midpoint, y: -height + padding }, + { x: 0, y: -height + padding }, + // Top of arrow + { x: width / 2, y: -height }, + { x: width, y: -height + padding }, + // Top of right vertical bar + { x: width - midpoint, y: -height + padding }, + { x: width - midpoint, y: -padding }, + { x: width, y: -padding } + ]; + } + if (directions.has("right") && directions.has("up")) { + return [ + { x: 0, y: 0 }, + { x: width, y: -midpoint }, + { x: 0, y: -height } + ]; + } + if (directions.has("right") && directions.has("down")) { + return [ + { x: 0, y: 0 }, + { x: width, y: 0 }, + { x: 0, y: -height } + ]; + } + if (directions.has("left") && directions.has("up")) { + return [ + { x: width, y: 0 }, + { x: 0, y: -midpoint }, + { x: width, y: -height } + ]; + } + if (directions.has("left") && directions.has("down")) { + return [ + { x: width, y: 0 }, + { x: 0, y: 0 }, + { x: width, y: -height } + ]; + } + if (directions.has("right")) { + return [ + { x: midpoint, y: -padding }, + { x: midpoint, y: -padding }, + { x: width - midpoint, y: -padding }, + { x: width - midpoint, y: 0 }, + { x: width, y: -height / 2 }, + { x: width - midpoint, y: -height }, + { x: width - midpoint, y: -height + padding }, + // top left corner of arrow + { x: midpoint, y: -height + padding }, + { x: midpoint, y: -height + padding } + ]; + } + if (directions.has("left")) { + return [ + { x: midpoint, y: 0 }, + { x: midpoint, y: -padding }, + // Two points, the right corners + { x: width - midpoint, y: -padding }, + { x: width - midpoint, y: -height + padding }, + { x: midpoint, y: -height + padding }, + { x: midpoint, y: -height }, + { x: 0, y: -height / 2 } + ]; + } + if (directions.has("up")) { + return [ + // Bottom center + { x: midpoint, y: -padding }, + // Left top over vertical section + { x: midpoint, y: -height + padding }, + { x: 0, y: -height + padding }, + // Top of arrow + { x: width / 2, y: -height }, + { x: width, y: -height + padding }, + // Top of right vertical bar + { x: width - midpoint, y: -height + padding }, + { x: width - midpoint, y: -padding } + ]; + } + if (directions.has("down")) { + return [ + // Bottom center + { x: width / 2, y: 0 }, + // Left pont of bottom arrow + { x: 0, y: -padding }, + { x: midpoint, y: -padding }, + // Left top over vertical section + { x: midpoint, y: -height + padding }, + { x: width - midpoint, y: -height + padding }, + { x: width - midpoint, y: -padding }, + { x: width, y: -padding } + ]; + } + return [{ x: 0, y: 0 }]; +}, "getArrowPoints"); + +// src/dagre-wrapper/intersect/intersect-node.js +function intersectNode(node, point) { + return node.intersect(point); +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(intersectNode, "intersectNode"); +var intersect_node_default = intersectNode; + +// src/dagre-wrapper/intersect/intersect-ellipse.js +function intersectEllipse(node, rx, ry, point) { + var cx = node.x; + var cy = node.y; + var px = cx - point.x; + var py = cy - point.y; + var det = Math.sqrt(rx * rx * py * py + ry * ry * px * px); + var dx = Math.abs(rx * ry * px / det); + if (point.x < cx) { + dx = -dx; + } + var dy = Math.abs(rx * ry * py / det); + if (point.y < cy) { + dy = -dy; + } + return { x: cx + dx, y: cy + dy }; +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(intersectEllipse, "intersectEllipse"); +var intersect_ellipse_default = intersectEllipse; + +// src/dagre-wrapper/intersect/intersect-circle.js +function intersectCircle(node, rx, point) { + return intersect_ellipse_default(node, rx, rx, point); +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(intersectCircle, "intersectCircle"); +var intersect_circle_default = intersectCircle; + +// src/dagre-wrapper/intersect/intersect-line.js +function intersectLine(p1, p2, q1, q2) { + var a1, a2, b1, b2, c1, c2; + var r1, r2, r3, r4; + var denom, offset, num; + var x, y; + a1 = p2.y - p1.y; + b1 = p1.x - p2.x; + c1 = p2.x * p1.y - p1.x * p2.y; + r3 = a1 * q1.x + b1 * q1.y + c1; + r4 = a1 * q2.x + b1 * q2.y + c1; + if (r3 !== 0 && r4 !== 0 && sameSign(r3, r4)) { + return; + } + a2 = q2.y - q1.y; + b2 = q1.x - q2.x; + c2 = q2.x * q1.y - q1.x * q2.y; + r1 = a2 * p1.x + b2 * p1.y + c2; + r2 = a2 * p2.x + b2 * p2.y + c2; + if (r1 !== 0 && r2 !== 0 && sameSign(r1, r2)) { + return; + } + denom = a1 * b2 - a2 * b1; + if (denom === 0) { + return; + } + offset = Math.abs(denom / 2); + num = b1 * c2 - b2 * c1; + x = num < 0 ? (num - offset) / denom : (num + offset) / denom; + num = a2 * c1 - a1 * c2; + y = num < 0 ? (num - offset) / denom : (num + offset) / denom; + return { x, y }; +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(intersectLine, "intersectLine"); +function sameSign(r1, r2) { + return r1 * r2 > 0; +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(sameSign, "sameSign"); +var intersect_line_default = intersectLine; + +// src/dagre-wrapper/intersect/intersect-polygon.js +var intersect_polygon_default = intersectPolygon; +function intersectPolygon(node, polyPoints, point) { + var x1 = node.x; + var y1 = node.y; + var intersections = []; + var minX = Number.POSITIVE_INFINITY; + var minY = Number.POSITIVE_INFINITY; + if (typeof polyPoints.forEach === "function") { + polyPoints.forEach(function(entry) { + minX = Math.min(minX, entry.x); + minY = Math.min(minY, entry.y); + }); + } else { + minX = Math.min(minX, polyPoints.x); + minY = Math.min(minY, polyPoints.y); + } + var left = x1 - node.width / 2 - minX; + var top = y1 - node.height / 2 - minY; + for (var i = 0; i < polyPoints.length; i++) { + var p1 = polyPoints[i]; + var p2 = polyPoints[i < polyPoints.length - 1 ? i + 1 : 0]; + var intersect = intersect_line_default( + node, + point, + { x: left + p1.x, y: top + p1.y }, + { x: left + p2.x, y: top + p2.y } + ); + if (intersect) { + intersections.push(intersect); + } + } + if (!intersections.length) { + return node; + } + if (intersections.length > 1) { + intersections.sort(function(p, q) { + var pdx = p.x - point.x; + var pdy = p.y - point.y; + var distp = Math.sqrt(pdx * pdx + pdy * pdy); + var qdx = q.x - point.x; + var qdy = q.y - point.y; + var distq = Math.sqrt(qdx * qdx + qdy * qdy); + return distp < distq ? -1 : distp === distq ? 0 : 1; + }); + } + return intersections[0]; +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(intersectPolygon, "intersectPolygon"); + +// src/dagre-wrapper/intersect/intersect-rect.js +var intersectRect = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((node, point) => { + var x = node.x; + var y = node.y; + var dx = point.x - x; + var dy = point.y - y; + var w = node.width / 2; + var h = node.height / 2; + var sx, sy; + if (Math.abs(dy) * w > Math.abs(dx) * h) { + if (dy < 0) { + h = -h; + } + sx = dy === 0 ? 0 : h * dx / dy; + sy = h; + } else { + if (dx < 0) { + w = -w; + } + sx = w; + sy = dx === 0 ? 0 : w * dy / dx; + } + return { x: x + sx, y: y + sy }; +}, "intersectRect"); +var intersect_rect_default = intersectRect; + +// src/dagre-wrapper/intersect/index.js +var intersect_default = { + node: intersect_node_default, + circle: intersect_circle_default, + ellipse: intersect_ellipse_default, + polygon: intersect_polygon_default, + rect: intersect_rect_default +}; + +// src/dagre-wrapper/shapes/note.js +var note = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const useHtmlLabels = node.useHtmlLabels || (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)().flowchart.htmlLabels; + if (!useHtmlLabels) { + node.centerLabel = true; + } + const { shapeSvg, bbox, halfPadding } = await labelHelper( + parent, + node, + "node " + node.classes, + true + ); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.info("Classes = ", node.classes); + const rect2 = shapeSvg.insert("rect", ":first-child"); + rect2.attr("rx", node.rx).attr("ry", node.ry).attr("x", -bbox.width / 2 - halfPadding).attr("y", -bbox.height / 2 - halfPadding).attr("width", bbox.width + node.padding).attr("height", bbox.height + node.padding); + updateNodeBounds(node, rect2); + node.intersect = function(point) { + return intersect_default.rect(node, point); + }; + return shapeSvg; +}, "note"); +var note_default = note; + +// src/dagre-wrapper/nodes.js +var formatClass = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((str) => { + if (str) { + return " " + str; + } + return ""; +}, "formatClass"); +var getClassesFromNode = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((node, otherClasses) => { + return `${otherClasses ? otherClasses : "node default"}${formatClass(node.classes)} ${formatClass( + node.class + )}`; +}, "getClassesFromNode"); +var question = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox } = await labelHelper( + parent, + node, + getClassesFromNode(node, void 0), + true + ); + const w = bbox.width + node.padding; + const h = bbox.height + node.padding; + const s = w + h; + const points = [ + { x: s / 2, y: 0 }, + { x: s, y: -s / 2 }, + { x: s / 2, y: -s }, + { x: 0, y: -s / 2 } + ]; + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.info("Question main (Circle)"); + const questionElem = insertPolygonShape(shapeSvg, s, s, points); + questionElem.attr("style", node.style); + updateNodeBounds(node, questionElem); + node.intersect = function(point) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.warn("Intersect called"); + return intersect_default.polygon(node, points, point); + }; + return shapeSvg; +}, "question"); +var choice = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((parent, node) => { + const shapeSvg = parent.insert("g").attr("class", "node default").attr("id", node.domId || node.id); + const s = 28; + const points = [ + { x: 0, y: s / 2 }, + { x: s / 2, y: 0 }, + { x: 0, y: -s / 2 }, + { x: -s / 2, y: 0 } + ]; + const choice2 = shapeSvg.insert("polygon", ":first-child").attr( + "points", + points.map(function(d) { + return d.x + "," + d.y; + }).join(" ") + ); + choice2.attr("class", "state-start").attr("r", 7).attr("width", 28).attr("height", 28); + node.width = 28; + node.height = 28; + node.intersect = function(point) { + return intersect_default.circle(node, 14, point); + }; + return shapeSvg; +}, "choice"); +var hexagon = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox } = await labelHelper( + parent, + node, + getClassesFromNode(node, void 0), + true + ); + const f = 4; + const h = bbox.height + node.padding; + const m = h / f; + const w = bbox.width + 2 * m + node.padding; + const points = [ + { x: m, y: 0 }, + { x: w - m, y: 0 }, + { x: w, y: -h / 2 }, + { x: w - m, y: -h }, + { x: m, y: -h }, + { x: 0, y: -h / 2 } + ]; + const hex = insertPolygonShape(shapeSvg, w, h, points); + hex.attr("style", node.style); + updateNodeBounds(node, hex); + node.intersect = function(point) { + return intersect_default.polygon(node, points, point); + }; + return shapeSvg; +}, "hexagon"); +var block_arrow = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox } = await labelHelper(parent, node, void 0, true); + const f = 2; + const h = bbox.height + 2 * node.padding; + const m = h / f; + const w = bbox.width + 2 * m + node.padding; + const points = getArrowPoints(node.directions, bbox, node); + const blockArrow = insertPolygonShape(shapeSvg, w, h, points); + blockArrow.attr("style", node.style); + updateNodeBounds(node, blockArrow); + node.intersect = function(point) { + return intersect_default.polygon(node, points, point); + }; + return shapeSvg; +}, "block_arrow"); +var rect_left_inv_arrow = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox } = await labelHelper( + parent, + node, + getClassesFromNode(node, void 0), + true + ); + const w = bbox.width + node.padding; + const h = bbox.height + node.padding; + const points = [ + { x: -h / 2, y: 0 }, + { x: w, y: 0 }, + { x: w, y: -h }, + { x: -h / 2, y: -h }, + { x: 0, y: -h / 2 } + ]; + const el = insertPolygonShape(shapeSvg, w, h, points); + el.attr("style", node.style); + node.width = w + h; + node.height = h; + node.intersect = function(point) { + return intersect_default.polygon(node, points, point); + }; + return shapeSvg; +}, "rect_left_inv_arrow"); +var lean_right = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox } = await labelHelper(parent, node, getClassesFromNode(node), true); + const w = bbox.width + node.padding; + const h = bbox.height + node.padding; + const points = [ + { x: -2 * h / 6, y: 0 }, + { x: w - h / 6, y: 0 }, + { x: w + 2 * h / 6, y: -h }, + { x: h / 6, y: -h } + ]; + const el = insertPolygonShape(shapeSvg, w, h, points); + el.attr("style", node.style); + updateNodeBounds(node, el); + node.intersect = function(point) { + return intersect_default.polygon(node, points, point); + }; + return shapeSvg; +}, "lean_right"); +var lean_left = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox } = await labelHelper( + parent, + node, + getClassesFromNode(node, void 0), + true + ); + const w = bbox.width + node.padding; + const h = bbox.height + node.padding; + const points = [ + { x: 2 * h / 6, y: 0 }, + { x: w + h / 6, y: 0 }, + { x: w - 2 * h / 6, y: -h }, + { x: -h / 6, y: -h } + ]; + const el = insertPolygonShape(shapeSvg, w, h, points); + el.attr("style", node.style); + updateNodeBounds(node, el); + node.intersect = function(point) { + return intersect_default.polygon(node, points, point); + }; + return shapeSvg; +}, "lean_left"); +var trapezoid = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox } = await labelHelper( + parent, + node, + getClassesFromNode(node, void 0), + true + ); + const w = bbox.width + node.padding; + const h = bbox.height + node.padding; + const points = [ + { x: -2 * h / 6, y: 0 }, + { x: w + 2 * h / 6, y: 0 }, + { x: w - h / 6, y: -h }, + { x: h / 6, y: -h } + ]; + const el = insertPolygonShape(shapeSvg, w, h, points); + el.attr("style", node.style); + updateNodeBounds(node, el); + node.intersect = function(point) { + return intersect_default.polygon(node, points, point); + }; + return shapeSvg; +}, "trapezoid"); +var inv_trapezoid = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox } = await labelHelper( + parent, + node, + getClassesFromNode(node, void 0), + true + ); + const w = bbox.width + node.padding; + const h = bbox.height + node.padding; + const points = [ + { x: h / 6, y: 0 }, + { x: w - h / 6, y: 0 }, + { x: w + 2 * h / 6, y: -h }, + { x: -2 * h / 6, y: -h } + ]; + const el = insertPolygonShape(shapeSvg, w, h, points); + el.attr("style", node.style); + updateNodeBounds(node, el); + node.intersect = function(point) { + return intersect_default.polygon(node, points, point); + }; + return shapeSvg; +}, "inv_trapezoid"); +var rect_right_inv_arrow = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox } = await labelHelper( + parent, + node, + getClassesFromNode(node, void 0), + true + ); + const w = bbox.width + node.padding; + const h = bbox.height + node.padding; + const points = [ + { x: 0, y: 0 }, + { x: w + h / 2, y: 0 }, + { x: w, y: -h / 2 }, + { x: w + h / 2, y: -h }, + { x: 0, y: -h } + ]; + const el = insertPolygonShape(shapeSvg, w, h, points); + el.attr("style", node.style); + updateNodeBounds(node, el); + node.intersect = function(point) { + return intersect_default.polygon(node, points, point); + }; + return shapeSvg; +}, "rect_right_inv_arrow"); +var cylinder = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox } = await labelHelper( + parent, + node, + getClassesFromNode(node, void 0), + true + ); + const w = bbox.width + node.padding; + const rx = w / 2; + const ry = rx / (2.5 + w / 50); + const h = bbox.height + ry + node.padding; + const shape = "M 0," + ry + " a " + rx + "," + ry + " 0,0,0 " + w + " 0 a " + rx + "," + ry + " 0,0,0 " + -w + " 0 l 0," + h + " a " + rx + "," + ry + " 0,0,0 " + w + " 0 l 0," + -h; + const el = shapeSvg.attr("label-offset-y", ry).insert("path", ":first-child").attr("style", node.style).attr("d", shape).attr("transform", "translate(" + -w / 2 + "," + -(h / 2 + ry) + ")"); + updateNodeBounds(node, el); + node.intersect = function(point) { + const pos = intersect_default.rect(node, point); + const x = pos.x - node.x; + if (rx != 0 && (Math.abs(x) < node.width / 2 || Math.abs(x) == node.width / 2 && Math.abs(pos.y - node.y) > node.height / 2 - ry)) { + let y = ry * ry * (1 - x * x / (rx * rx)); + if (y != 0) { + y = Math.sqrt(y); + } + y = ry - y; + if (point.y - node.y > 0) { + y = -y; + } + pos.y += y; + } + return pos; + }; + return shapeSvg; +}, "cylinder"); +var rect = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox, halfPadding } = await labelHelper( + parent, + node, + "node " + node.classes + " " + node.class, + true + ); + const rect2 = shapeSvg.insert("rect", ":first-child"); + const totalWidth = node.positioned ? node.width : bbox.width + node.padding; + const totalHeight = node.positioned ? node.height : bbox.height + node.padding; + const x = node.positioned ? -totalWidth / 2 : -bbox.width / 2 - halfPadding; + const y = node.positioned ? -totalHeight / 2 : -bbox.height / 2 - halfPadding; + rect2.attr("class", "basic label-container").attr("style", node.style).attr("rx", node.rx).attr("ry", node.ry).attr("x", x).attr("y", y).attr("width", totalWidth).attr("height", totalHeight); + if (node.props) { + const propKeys = new Set(Object.keys(node.props)); + if (node.props.borders) { + applyNodePropertyBorders(rect2, node.props.borders, totalWidth, totalHeight); + propKeys.delete("borders"); + } + propKeys.forEach((propKey) => { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.warn(`Unknown node property ${propKey}`); + }); + } + updateNodeBounds(node, rect2); + node.intersect = function(point) { + return intersect_default.rect(node, point); + }; + return shapeSvg; +}, "rect"); +var composite = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox, halfPadding } = await labelHelper( + parent, + node, + "node " + node.classes, + true + ); + const rect2 = shapeSvg.insert("rect", ":first-child"); + const totalWidth = node.positioned ? node.width : bbox.width + node.padding; + const totalHeight = node.positioned ? node.height : bbox.height + node.padding; + const x = node.positioned ? -totalWidth / 2 : -bbox.width / 2 - halfPadding; + const y = node.positioned ? -totalHeight / 2 : -bbox.height / 2 - halfPadding; + rect2.attr("class", "basic cluster composite label-container").attr("style", node.style).attr("rx", node.rx).attr("ry", node.ry).attr("x", x).attr("y", y).attr("width", totalWidth).attr("height", totalHeight); + if (node.props) { + const propKeys = new Set(Object.keys(node.props)); + if (node.props.borders) { + applyNodePropertyBorders(rect2, node.props.borders, totalWidth, totalHeight); + propKeys.delete("borders"); + } + propKeys.forEach((propKey) => { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.warn(`Unknown node property ${propKey}`); + }); + } + updateNodeBounds(node, rect2); + node.intersect = function(point) { + return intersect_default.rect(node, point); + }; + return shapeSvg; +}, "composite"); +var labelRect = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg } = await labelHelper(parent, node, "label", true); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.trace("Classes = ", node.class); + const rect2 = shapeSvg.insert("rect", ":first-child"); + const totalWidth = 0; + const totalHeight = 0; + rect2.attr("width", totalWidth).attr("height", totalHeight); + shapeSvg.attr("class", "label edgeLabel"); + if (node.props) { + const propKeys = new Set(Object.keys(node.props)); + if (node.props.borders) { + applyNodePropertyBorders(rect2, node.props.borders, totalWidth, totalHeight); + propKeys.delete("borders"); + } + propKeys.forEach((propKey) => { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.warn(`Unknown node property ${propKey}`); + }); + } + updateNodeBounds(node, rect2); + node.intersect = function(point) { + return intersect_default.rect(node, point); + }; + return shapeSvg; +}, "labelRect"); +function applyNodePropertyBorders(rect2, borders, totalWidth, totalHeight) { + const strokeDashArray = []; + const addBorder = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((length) => { + strokeDashArray.push(length, 0); + }, "addBorder"); + const skipBorder = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((length) => { + strokeDashArray.push(0, length); + }, "skipBorder"); + if (borders.includes("t")) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.debug("add top border"); + addBorder(totalWidth); + } else { + skipBorder(totalWidth); + } + if (borders.includes("r")) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.debug("add right border"); + addBorder(totalHeight); + } else { + skipBorder(totalHeight); + } + if (borders.includes("b")) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.debug("add bottom border"); + addBorder(totalWidth); + } else { + skipBorder(totalWidth); + } + if (borders.includes("l")) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.debug("add left border"); + addBorder(totalHeight); + } else { + skipBorder(totalHeight); + } + rect2.attr("stroke-dasharray", strokeDashArray.join(" ")); +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(applyNodePropertyBorders, "applyNodePropertyBorders"); +var rectWithTitle = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((parent, node) => { + let classes; + if (!node.classes) { + classes = "node default"; + } else { + classes = "node " + node.classes; + } + const shapeSvg = parent.insert("g").attr("class", classes).attr("id", node.domId || node.id); + const rect2 = shapeSvg.insert("rect", ":first-child"); + const innerLine = shapeSvg.insert("line"); + const label = shapeSvg.insert("g").attr("class", "label"); + const text2 = node.labelText.flat ? node.labelText.flat() : node.labelText; + let title = ""; + if (typeof text2 === "object") { + title = text2[0]; + } else { + title = text2; + } + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.info("Label text abc79", title, text2, typeof text2 === "object"); + const text = label.node().appendChild(createLabel_default(title, node.labelStyle, true, true)); + let bbox = { width: 0, height: 0 }; + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .evaluate */ ._3)((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)().flowchart.htmlLabels)) { + const div = text.children[0]; + const dv = (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(text); + bbox = div.getBoundingClientRect(); + dv.attr("width", bbox.width); + dv.attr("height", bbox.height); + } + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.info("Text 2", text2); + const textRows = text2.slice(1, text2.length); + let titleBox = text.getBBox(); + const descr = label.node().appendChild( + createLabel_default(textRows.join ? textRows.join("
    ") : textRows, node.labelStyle, true, true) + ); + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .evaluate */ ._3)((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)().flowchart.htmlLabels)) { + const div = descr.children[0]; + const dv = (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(descr); + bbox = div.getBoundingClientRect(); + dv.attr("width", bbox.width); + dv.attr("height", bbox.height); + } + const halfPadding = node.padding / 2; + (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(descr).attr( + "transform", + "translate( " + // (titleBox.width - bbox.width) / 2 + + (bbox.width > titleBox.width ? 0 : (titleBox.width - bbox.width) / 2) + ", " + (titleBox.height + halfPadding + 5) + ")" + ); + (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(text).attr( + "transform", + "translate( " + // (titleBox.width - bbox.width) / 2 + + (bbox.width < titleBox.width ? 0 : -(titleBox.width - bbox.width) / 2) + ", 0)" + ); + bbox = label.node().getBBox(); + label.attr( + "transform", + "translate(" + -bbox.width / 2 + ", " + (-bbox.height / 2 - halfPadding + 3) + ")" + ); + rect2.attr("class", "outer title-state").attr("x", -bbox.width / 2 - halfPadding).attr("y", -bbox.height / 2 - halfPadding).attr("width", bbox.width + node.padding).attr("height", bbox.height + node.padding); + innerLine.attr("class", "divider").attr("x1", -bbox.width / 2 - halfPadding).attr("x2", bbox.width / 2 + halfPadding).attr("y1", -bbox.height / 2 - halfPadding + titleBox.height + halfPadding).attr("y2", -bbox.height / 2 - halfPadding + titleBox.height + halfPadding); + updateNodeBounds(node, rect2); + node.intersect = function(point) { + return intersect_default.rect(node, point); + }; + return shapeSvg; +}, "rectWithTitle"); +var stadium = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox } = await labelHelper( + parent, + node, + getClassesFromNode(node, void 0), + true + ); + const h = bbox.height + node.padding; + const w = bbox.width + h / 4 + node.padding; + const rect2 = shapeSvg.insert("rect", ":first-child").attr("style", node.style).attr("rx", h / 2).attr("ry", h / 2).attr("x", -w / 2).attr("y", -h / 2).attr("width", w).attr("height", h); + updateNodeBounds(node, rect2); + node.intersect = function(point) { + return intersect_default.rect(node, point); + }; + return shapeSvg; +}, "stadium"); +var circle = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox, halfPadding } = await labelHelper( + parent, + node, + getClassesFromNode(node, void 0), + true + ); + const circle2 = shapeSvg.insert("circle", ":first-child"); + circle2.attr("style", node.style).attr("rx", node.rx).attr("ry", node.ry).attr("r", bbox.width / 2 + halfPadding).attr("width", bbox.width + node.padding).attr("height", bbox.height + node.padding); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.info("Circle main"); + updateNodeBounds(node, circle2); + node.intersect = function(point) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.info("Circle intersect", node, bbox.width / 2 + halfPadding, point); + return intersect_default.circle(node, bbox.width / 2 + halfPadding, point); + }; + return shapeSvg; +}, "circle"); +var doublecircle = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox, halfPadding } = await labelHelper( + parent, + node, + getClassesFromNode(node, void 0), + true + ); + const gap = 5; + const circleGroup = shapeSvg.insert("g", ":first-child"); + const outerCircle = circleGroup.insert("circle"); + const innerCircle = circleGroup.insert("circle"); + circleGroup.attr("class", node.class); + outerCircle.attr("style", node.style).attr("rx", node.rx).attr("ry", node.ry).attr("r", bbox.width / 2 + halfPadding + gap).attr("width", bbox.width + node.padding + gap * 2).attr("height", bbox.height + node.padding + gap * 2); + innerCircle.attr("style", node.style).attr("rx", node.rx).attr("ry", node.ry).attr("r", bbox.width / 2 + halfPadding).attr("width", bbox.width + node.padding).attr("height", bbox.height + node.padding); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.info("DoubleCircle main"); + updateNodeBounds(node, outerCircle); + node.intersect = function(point) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.info("DoubleCircle intersect", node, bbox.width / 2 + halfPadding + gap, point); + return intersect_default.circle(node, bbox.width / 2 + halfPadding + gap, point); + }; + return shapeSvg; +}, "doublecircle"); +var subroutine = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox } = await labelHelper( + parent, + node, + getClassesFromNode(node, void 0), + true + ); + const w = bbox.width + node.padding; + const h = bbox.height + node.padding; + const points = [ + { x: 0, y: 0 }, + { x: w, y: 0 }, + { x: w, y: -h }, + { x: 0, y: -h }, + { x: 0, y: 0 }, + { x: -8, y: 0 }, + { x: w + 8, y: 0 }, + { x: w + 8, y: -h }, + { x: -8, y: -h }, + { x: -8, y: 0 } + ]; + const el = insertPolygonShape(shapeSvg, w, h, points); + el.attr("style", node.style); + updateNodeBounds(node, el); + node.intersect = function(point) { + return intersect_default.polygon(node, points, point); + }; + return shapeSvg; +}, "subroutine"); +var start = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((parent, node) => { + const shapeSvg = parent.insert("g").attr("class", "node default").attr("id", node.domId || node.id); + const circle2 = shapeSvg.insert("circle", ":first-child"); + circle2.attr("class", "state-start").attr("r", 7).attr("width", 14).attr("height", 14); + updateNodeBounds(node, circle2); + node.intersect = function(point) { + return intersect_default.circle(node, 7, point); + }; + return shapeSvg; +}, "start"); +var forkJoin = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((parent, node, dir) => { + const shapeSvg = parent.insert("g").attr("class", "node default").attr("id", node.domId || node.id); + let width = 70; + let height = 10; + if (dir === "LR") { + width = 10; + height = 70; + } + const shape = shapeSvg.append("rect").attr("x", -1 * width / 2).attr("y", -1 * height / 2).attr("width", width).attr("height", height).attr("class", "fork-join"); + updateNodeBounds(node, shape); + node.height = node.height + node.padding / 2; + node.width = node.width + node.padding / 2; + node.intersect = function(point) { + return intersect_default.rect(node, point); + }; + return shapeSvg; +}, "forkJoin"); +var end = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((parent, node) => { + const shapeSvg = parent.insert("g").attr("class", "node default").attr("id", node.domId || node.id); + const innerCircle = shapeSvg.insert("circle", ":first-child"); + const circle2 = shapeSvg.insert("circle", ":first-child"); + circle2.attr("class", "state-start").attr("r", 7).attr("width", 14).attr("height", 14); + innerCircle.attr("class", "state-end").attr("r", 5).attr("width", 10).attr("height", 10); + updateNodeBounds(node, circle2); + node.intersect = function(point) { + return intersect_default.circle(node, 7, point); + }; + return shapeSvg; +}, "end"); +var class_box = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((parent, node) => { + const halfPadding = node.padding / 2; + const rowPadding = 4; + const lineHeight = 8; + let classes; + if (!node.classes) { + classes = "node default"; + } else { + classes = "node " + node.classes; + } + const shapeSvg = parent.insert("g").attr("class", classes).attr("id", node.domId || node.id); + const rect2 = shapeSvg.insert("rect", ":first-child"); + const topLine = shapeSvg.insert("line"); + const bottomLine = shapeSvg.insert("line"); + let maxWidth = 0; + let maxHeight = rowPadding; + const labelContainer = shapeSvg.insert("g").attr("class", "label"); + let verticalPos = 0; + const hasInterface = node.classData.annotations?.[0]; + const interfaceLabelText = node.classData.annotations[0] ? "\xAB" + node.classData.annotations[0] + "\xBB" : ""; + const interfaceLabel = labelContainer.node().appendChild(createLabel_default(interfaceLabelText, node.labelStyle, true, true)); + let interfaceBBox = interfaceLabel.getBBox(); + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .evaluate */ ._3)((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)().flowchart.htmlLabels)) { + const div = interfaceLabel.children[0]; + const dv = (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(interfaceLabel); + interfaceBBox = div.getBoundingClientRect(); + dv.attr("width", interfaceBBox.width); + dv.attr("height", interfaceBBox.height); + } + if (node.classData.annotations[0]) { + maxHeight += interfaceBBox.height + rowPadding; + maxWidth += interfaceBBox.width; + } + let classTitleString = node.classData.label; + if (node.classData.type !== void 0 && node.classData.type !== "") { + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)().flowchart.htmlLabels) { + classTitleString += "<" + node.classData.type + ">"; + } else { + classTitleString += "<" + node.classData.type + ">"; + } + } + const classTitleLabel = labelContainer.node().appendChild(createLabel_default(classTitleString, node.labelStyle, true, true)); + (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(classTitleLabel).attr("class", "classTitle"); + let classTitleBBox = classTitleLabel.getBBox(); + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .evaluate */ ._3)((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)().flowchart.htmlLabels)) { + const div = classTitleLabel.children[0]; + const dv = (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(classTitleLabel); + classTitleBBox = div.getBoundingClientRect(); + dv.attr("width", classTitleBBox.width); + dv.attr("height", classTitleBBox.height); + } + maxHeight += classTitleBBox.height + rowPadding; + if (classTitleBBox.width > maxWidth) { + maxWidth = classTitleBBox.width; + } + const classAttributes = []; + node.classData.members.forEach((member) => { + const parsedInfo = member.getDisplayDetails(); + let parsedText = parsedInfo.displayText; + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)().flowchart.htmlLabels) { + parsedText = parsedText.replace(//g, ">"); + } + const lbl = labelContainer.node().appendChild( + createLabel_default( + parsedText, + parsedInfo.cssStyle ? parsedInfo.cssStyle : node.labelStyle, + true, + true + ) + ); + let bbox = lbl.getBBox(); + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .evaluate */ ._3)((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)().flowchart.htmlLabels)) { + const div = lbl.children[0]; + const dv = (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(lbl); + bbox = div.getBoundingClientRect(); + dv.attr("width", bbox.width); + dv.attr("height", bbox.height); + } + if (bbox.width > maxWidth) { + maxWidth = bbox.width; + } + maxHeight += bbox.height + rowPadding; + classAttributes.push(lbl); + }); + maxHeight += lineHeight; + const classMethods = []; + node.classData.methods.forEach((member) => { + const parsedInfo = member.getDisplayDetails(); + let displayText = parsedInfo.displayText; + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)().flowchart.htmlLabels) { + displayText = displayText.replace(//g, ">"); + } + const lbl = labelContainer.node().appendChild( + createLabel_default( + displayText, + parsedInfo.cssStyle ? parsedInfo.cssStyle : node.labelStyle, + true, + true + ) + ); + let bbox = lbl.getBBox(); + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .evaluate */ ._3)((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)().flowchart.htmlLabels)) { + const div = lbl.children[0]; + const dv = (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(lbl); + bbox = div.getBoundingClientRect(); + dv.attr("width", bbox.width); + dv.attr("height", bbox.height); + } + if (bbox.width > maxWidth) { + maxWidth = bbox.width; + } + maxHeight += bbox.height + rowPadding; + classMethods.push(lbl); + }); + maxHeight += lineHeight; + if (hasInterface) { + let diffX2 = (maxWidth - interfaceBBox.width) / 2; + (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(interfaceLabel).attr( + "transform", + "translate( " + (-1 * maxWidth / 2 + diffX2) + ", " + -1 * maxHeight / 2 + ")" + ); + verticalPos = interfaceBBox.height + rowPadding; + } + let diffX = (maxWidth - classTitleBBox.width) / 2; + (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(classTitleLabel).attr( + "transform", + "translate( " + (-1 * maxWidth / 2 + diffX) + ", " + (-1 * maxHeight / 2 + verticalPos) + ")" + ); + verticalPos += classTitleBBox.height + rowPadding; + topLine.attr("class", "divider").attr("x1", -maxWidth / 2 - halfPadding).attr("x2", maxWidth / 2 + halfPadding).attr("y1", -maxHeight / 2 - halfPadding + lineHeight + verticalPos).attr("y2", -maxHeight / 2 - halfPadding + lineHeight + verticalPos); + verticalPos += lineHeight; + classAttributes.forEach((lbl) => { + (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(lbl).attr( + "transform", + "translate( " + -maxWidth / 2 + ", " + (-1 * maxHeight / 2 + verticalPos + lineHeight / 2) + ")" + ); + const memberBBox = lbl?.getBBox(); + verticalPos += (memberBBox?.height ?? 0) + rowPadding; + }); + verticalPos += lineHeight; + bottomLine.attr("class", "divider").attr("x1", -maxWidth / 2 - halfPadding).attr("x2", maxWidth / 2 + halfPadding).attr("y1", -maxHeight / 2 - halfPadding + lineHeight + verticalPos).attr("y2", -maxHeight / 2 - halfPadding + lineHeight + verticalPos); + verticalPos += lineHeight; + classMethods.forEach((lbl) => { + (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(lbl).attr( + "transform", + "translate( " + -maxWidth / 2 + ", " + (-1 * maxHeight / 2 + verticalPos) + ")" + ); + const memberBBox = lbl?.getBBox(); + verticalPos += (memberBBox?.height ?? 0) + rowPadding; + }); + rect2.attr("style", node.style).attr("class", "outer title-state").attr("x", -maxWidth / 2 - halfPadding).attr("y", -(maxHeight / 2) - halfPadding).attr("width", maxWidth + node.padding).attr("height", maxHeight + node.padding); + updateNodeBounds(node, rect2); + node.intersect = function(point) { + return intersect_default.rect(node, point); + }; + return shapeSvg; +}, "class_box"); +var shapes = { + rhombus: question, + composite, + question, + rect, + labelRect, + rectWithTitle, + choice, + circle, + doublecircle, + stadium, + hexagon, + block_arrow, + rect_left_inv_arrow, + lean_right, + lean_left, + trapezoid, + inv_trapezoid, + rect_right_inv_arrow, + cylinder, + start, + end, + note: note_default, + subroutine, + fork: forkJoin, + join: forkJoin, + class_box +}; +var nodeElems = {}; +var insertNode = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (elem, node, dir) => { + let newEl; + let el; + if (node.link) { + let target; + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)().securityLevel === "sandbox") { + target = "_top"; + } else if (node.linkTarget) { + target = node.linkTarget || "_blank"; + } + newEl = elem.insert("svg:a").attr("xlink:href", node.link).attr("target", target); + el = await shapes[node.shape](newEl, node, dir); + } else { + el = await shapes[node.shape](elem, node, dir); + newEl = el; + } + if (node.tooltip) { + el.attr("title", node.tooltip); + } + if (node.class) { + el.attr("class", "node default " + node.class); + } + nodeElems[node.id] = newEl; + if (node.haveCallback) { + nodeElems[node.id].attr("class", nodeElems[node.id].attr("class") + " clickable"); + } + return newEl; +}, "insertNode"); +var setNodeElem = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((elem, node) => { + nodeElems[node.id] = elem; +}, "setNodeElem"); +var clear = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(() => { + nodeElems = {}; +}, "clear"); +var positionNode = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((node) => { + const el = nodeElems[node.id]; + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.trace( + "Transforming node", + node.diff, + node, + "translate(" + (node.x - node.width / 2 - 5) + ", " + node.width / 2 + ")" + ); + const padding = 8; + const diff = node.diff || 0; + if (node.clusterNode) { + el.attr( + "transform", + "translate(" + (node.x + diff - node.width / 2) + ", " + (node.y - node.height / 2 - padding) + ")" + ); + } else { + el.attr("transform", "translate(" + node.x + ", " + node.y + ")"); + } + return diff; +}, "positionNode"); + + + + +/***/ }), + +/***/ 7205: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ diagram: () => (/* binding */ diagram) +/* harmony export */ }); +/* harmony import */ var _chunk_SVGOEX7Z_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(83148); +/* harmony import */ var _chunk_FUIDI54P_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(36151); +/* harmony import */ var _chunk_Z2VRG6XP_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(46578); +/* harmony import */ var _chunk_T3KDJ7CM_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(62602); +/* harmony import */ var _chunk_5CZSE4TR_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(49139); +/* harmony import */ var _chunk_TINLTEC2_mjs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(48496); +/* harmony import */ var _chunk_OERGPBFJ_mjs__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(67895); +/* harmony import */ var _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(57323); +/* harmony import */ var _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(64994); + + + + + + + + + + +// src/diagrams/state/stateDiagram-v2.ts +var diagram = { + parser: _chunk_SVGOEX7Z_mjs__WEBPACK_IMPORTED_MODULE_0__/* .stateDiagram_default */ .Zk, + db: _chunk_SVGOEX7Z_mjs__WEBPACK_IMPORTED_MODULE_0__/* .stateDb_default */ .iP, + renderer: _chunk_SVGOEX7Z_mjs__WEBPACK_IMPORTED_MODULE_0__/* .stateRenderer_v3_unified_default */ .q7, + styles: _chunk_SVGOEX7Z_mjs__WEBPACK_IMPORTED_MODULE_0__/* .styles_default */ .tM, + init: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_8__/* .__name */ .K2)((cnf) => { + if (!cnf.state) { + cnf.state = {}; + } + cnf.state.arrowMarkerAbsolute = cnf.arrowMarkerAbsolute; + _chunk_SVGOEX7Z_mjs__WEBPACK_IMPORTED_MODULE_0__/* .stateDb_default */ .iP.clear(); + }, "init") +}; + + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/2130.3f253d66.js b/assets/js/2130.3f253d66.js new file mode 100644 index 00000000..0069fa12 --- /dev/null +++ b/assets/js/2130.3f253d66.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkbeacon_docs=self.webpackChunkbeacon_docs||[]).push([[2130],{22130:(e,t,r)=>{r.d(t,{default:()=>Qa});var a=r(96763);class n{constructor(e,t,r){this.lexer=void 0,this.start=void 0,this.end=void 0,this.lexer=e,this.start=t,this.end=r}static range(e,t){return t?e&&e.loc&&t.loc&&e.loc.lexer===t.loc.lexer?new n(e.loc.lexer,e.loc.start,t.loc.end):null:e&&e.loc}}class i{constructor(e,t){this.text=void 0,this.loc=void 0,this.noexpand=void 0,this.treatAsRelax=void 0,this.text=e,this.loc=t}range(e,t){return new i(t,n.range(this,e))}}class o{constructor(e,t){this.name=void 0,this.position=void 0,this.length=void 0,this.rawMessage=void 0;var r,a,n="KaTeX parse error: "+e,i=t&&t.loc;if(i&&i.start<=i.end){var s=i.lexer.input;r=i.start,a=i.end,r===s.length?n+=" at end of input: ":n+=" at position "+(r+1)+": ";var l=s.slice(r,a).replace(/[^]/g,"$&\u0332");n+=(r>15?"\u2026"+s.slice(r-15,r):s.slice(0,r))+l+(a+15":">","<":"<",'"':""","'":"'"},h=/[&><"']/g;var m=function e(t){return"ordgroup"===t.type||"color"===t.type?1===t.body.length?e(t.body[0]):t:"font"===t.type?e(t.body):t},c={contains:function(e,t){return-1!==e.indexOf(t)},deflt:function(e,t){return void 0===e?t:e},escape:function(e){return String(e).replace(h,(e=>l[e]))},hyphenate:function(e){return e.replace(s,"-$1").toLowerCase()},getBaseElem:m,isCharacterBox:function(e){var t=m(e);return"mathord"===t.type||"textord"===t.type||"atom"===t.type},protocolFromUrl:function(e){var t=/^[\x00-\x20]*([^\\/#?]*?)(:|�*58|�*3a|&colon)/i.exec(e);return t?":"!==t[2]?null:/^[a-zA-Z][a-zA-Z0-9+\-.]*$/.test(t[1])?t[1].toLowerCase():null:"_relative"}},p={displayMode:{type:"boolean",description:"Render math in display mode, which puts the math in display style (so \\int and \\sum are large, for example), and centers the math on the page on its own line.",cli:"-d, --display-mode"},output:{type:{enum:["htmlAndMathml","html","mathml"]},description:"Determines the markup language of the output.",cli:"-F, --format "},leqno:{type:"boolean",description:"Render display math in leqno style (left-justified tags)."},fleqn:{type:"boolean",description:"Render display math flush left."},throwOnError:{type:"boolean",default:!0,cli:"-t, --no-throw-on-error",cliDescription:"Render errors (in the color given by --error-color) instead of throwing a ParseError exception when encountering an error."},errorColor:{type:"string",default:"#cc0000",cli:"-c, --error-color ",cliDescription:"A color string given in the format 'rgb' or 'rrggbb' (no #). This option determines the color of errors rendered by the -t option.",cliProcessor:e=>"#"+e},macros:{type:"object",cli:"-m, --macro ",cliDescription:"Define custom macro of the form '\\foo:expansion' (use multiple -m arguments for multiple macros).",cliDefault:[],cliProcessor:(e,t)=>(t.push(e),t)},minRuleThickness:{type:"number",description:"Specifies a minimum thickness, in ems, for fraction lines, `\\sqrt` top lines, `{array}` vertical lines, `\\hline`, `\\hdashline`, `\\underline`, `\\overline`, and the borders of `\\fbox`, `\\boxed`, and `\\fcolorbox`.",processor:e=>Math.max(0,e),cli:"--min-rule-thickness ",cliProcessor:parseFloat},colorIsTextColor:{type:"boolean",description:"Makes \\color behave like LaTeX's 2-argument \\textcolor, instead of LaTeX's one-argument \\color mode change.",cli:"-b, --color-is-text-color"},strict:{type:[{enum:["warn","ignore","error"]},"boolean","function"],description:"Turn on strict / LaTeX faithfulness mode, which throws an error if the input uses features that are not supported by LaTeX.",cli:"-S, --strict",cliDefault:!1},trust:{type:["boolean","function"],description:"Trust the input, enabling all HTML features such as \\url.",cli:"-T, --trust"},maxSize:{type:"number",default:1/0,description:"If non-zero, all user-specified sizes, e.g. in \\rule{500em}{500em}, will be capped to maxSize ems. Otherwise, elements and spaces can be arbitrarily large",processor:e=>Math.max(0,e),cli:"-s, --max-size ",cliProcessor:parseInt},maxExpand:{type:"number",default:1e3,description:"Limit the number of macro expansions to the specified number, to prevent e.g. infinite macro loops. If set to Infinity, the macro expander will try to fully expand as in LaTeX.",processor:e=>Math.max(0,e),cli:"-e, --max-expand ",cliProcessor:e=>"Infinity"===e?1/0:parseInt(e)},globalGroup:{type:"boolean",cli:!1}};function u(e){if(e.default)return e.default;var t=e.type,r=Array.isArray(t)?t[0]:t;if("string"!=typeof r)return r.enum[0];switch(r){case"boolean":return!1;case"string":return"";case"number":return 0;case"object":return{}}}class d{constructor(e){for(var t in this.displayMode=void 0,this.output=void 0,this.leqno=void 0,this.fleqn=void 0,this.throwOnError=void 0,this.errorColor=void 0,this.macros=void 0,this.minRuleThickness=void 0,this.colorIsTextColor=void 0,this.strict=void 0,this.trust=void 0,this.maxSize=void 0,this.maxExpand=void 0,this.globalGroup=void 0,e=e||{},p)if(p.hasOwnProperty(t)){var r=p[t];this[t]=void 0!==e[t]?r.processor?r.processor(e[t]):e[t]:u(r)}}reportNonstrict(e,t,r){var n=this.strict;if("function"==typeof n&&(n=n(e,t,r)),n&&"ignore"!==n){if(!0===n||"error"===n)throw new o("LaTeX-incompatible input and strict mode is set to 'error': "+t+" ["+e+"]",r);"warn"===n?void 0!==a&&a.warn("LaTeX-incompatible input and strict mode is set to 'warn': "+t+" ["+e+"]"):void 0!==a&&a.warn("LaTeX-incompatible input and strict mode is set to unrecognized '"+n+"': "+t+" ["+e+"]")}}useStrictBehavior(e,t,r){var n=this.strict;if("function"==typeof n)try{n=n(e,t,r)}catch(i){n="error"}return!(!n||"ignore"===n)&&(!0===n||"error"===n||("warn"===n?(void 0!==a&&a.warn("LaTeX-incompatible input and strict mode is set to 'warn': "+t+" ["+e+"]"),!1):(void 0!==a&&a.warn("LaTeX-incompatible input and strict mode is set to unrecognized '"+n+"': "+t+" ["+e+"]"),!1)))}isTrusted(e){if(e.url&&!e.protocol){var t=c.protocolFromUrl(e.url);if(null==t)return!1;e.protocol=t}var r="function"==typeof this.trust?this.trust(e):this.trust;return Boolean(r)}}class g{constructor(e,t,r){this.id=void 0,this.size=void 0,this.cramped=void 0,this.id=e,this.size=t,this.cramped=r}sup(){return f[v[this.id]]}sub(){return f[b[this.id]]}fracNum(){return f[y[this.id]]}fracDen(){return f[x[this.id]]}cramp(){return f[w[this.id]]}text(){return f[k[this.id]]}isTight(){return this.size>=2}}var f=[new g(0,0,!1),new g(1,0,!0),new g(2,1,!1),new g(3,1,!0),new g(4,2,!1),new g(5,2,!0),new g(6,3,!1),new g(7,3,!0)],v=[4,5,4,5,6,7,6,7],b=[5,5,5,5,7,7,7,7],y=[2,3,4,5,6,7,6,7],x=[3,3,5,5,7,7,7,7],w=[1,1,3,3,5,5,7,7],k=[0,1,2,3,2,3,2,3],S={DISPLAY:f[0],TEXT:f[2],SCRIPT:f[4],SCRIPTSCRIPT:f[6]},M=[{name:"latin",blocks:[[256,591],[768,879]]},{name:"cyrillic",blocks:[[1024,1279]]},{name:"armenian",blocks:[[1328,1423]]},{name:"brahmic",blocks:[[2304,4255]]},{name:"georgian",blocks:[[4256,4351]]},{name:"cjk",blocks:[[12288,12543],[19968,40879],[65280,65376]]},{name:"hangul",blocks:[[44032,55215]]}];var z=[];function A(e){for(var t=0;t=z[t]&&e<=z[t+1])return!0;return!1}M.forEach((e=>e.blocks.forEach((e=>z.push(...e)))));var T=80,B={doubleleftarrow:"M262 157\nl10-10c34-36 62.7-77 86-123 3.3-8 5-13.3 5-16 0-5.3-6.7-8-20-8-7.3\n 0-12.2.5-14.5 1.5-2.3 1-4.8 4.5-7.5 10.5-49.3 97.3-121.7 169.3-217 216-28\n 14-57.3 25-88 33-6.7 2-11 3.8-13 5.5-2 1.7-3 4.2-3 7.5s1 5.8 3 7.5\nc2 1.7 6.3 3.5 13 5.5 68 17.3 128.2 47.8 180.5 91.5 52.3 43.7 93.8 96.2 124.5\n 157.5 9.3 8 15.3 12.3 18 13h6c12-.7 18-4 18-10 0-2-1.7-7-5-15-23.3-46-52-87\n-86-123l-10-10h399738v-40H218c328 0 0 0 0 0l-10-8c-26.7-20-65.7-43-117-69 2.7\n-2 6-3.7 10-5 36.7-16 72.3-37.3 107-64l10-8h399782v-40z\nm8 0v40h399730v-40zm0 194v40h399730v-40z",doublerightarrow:"M399738 392l\n-10 10c-34 36-62.7 77-86 123-3.3 8-5 13.3-5 16 0 5.3 6.7 8 20 8 7.3 0 12.2-.5\n 14.5-1.5 2.3-1 4.8-4.5 7.5-10.5 49.3-97.3 121.7-169.3 217-216 28-14 57.3-25 88\n-33 6.7-2 11-3.8 13-5.5 2-1.7 3-4.2 3-7.5s-1-5.8-3-7.5c-2-1.7-6.3-3.5-13-5.5-68\n-17.3-128.2-47.8-180.5-91.5-52.3-43.7-93.8-96.2-124.5-157.5-9.3-8-15.3-12.3-18\n-13h-6c-12 .7-18 4-18 10 0 2 1.7 7 5 15 23.3 46 52 87 86 123l10 10H0v40h399782\nc-328 0 0 0 0 0l10 8c26.7 20 65.7 43 117 69-2.7 2-6 3.7-10 5-36.7 16-72.3 37.3\n-107 64l-10 8H0v40zM0 157v40h399730v-40zm0 194v40h399730v-40z",leftarrow:"M400000 241H110l3-3c68.7-52.7 113.7-120\n 135-202 4-14.7 6-23 6-25 0-7.3-7-11-21-11-8 0-13.2.8-15.5 2.5-2.3 1.7-4.2 5.8\n-5.5 12.5-1.3 4.7-2.7 10.3-4 17-12 48.7-34.8 92-68.5 130S65.3 228.3 18 247\nc-10 4-16 7.7-18 11 0 8.7 6 14.3 18 17 47.3 18.7 87.8 47 121.5 85S196 441.3 208\n 490c.7 2 1.3 5 2 9s1.2 6.7 1.5 8c.3 1.3 1 3.3 2 6s2.2 4.5 3.5 5.5c1.3 1 3.3\n 1.8 6 2.5s6 1 10 1c14 0 21-3.7 21-11 0-2-2-10.3-6-25-20-79.3-65-146.7-135-202\n l-3-3h399890zM100 241v40h399900v-40z",leftbrace:"M6 548l-6-6v-35l6-11c56-104 135.3-181.3 238-232 57.3-28.7 117\n-45 179-50h399577v120H403c-43.3 7-81 15-113 26-100.7 33-179.7 91-237 174-2.7\n 5-6 9-10 13-.7 1-7.3 1-20 1H6z",leftbraceunder:"M0 6l6-6h17c12.688 0 19.313.3 20 1 4 4 7.313 8.3 10 13\n 35.313 51.3 80.813 93.8 136.5 127.5 55.688 33.7 117.188 55.8 184.5 66.5.688\n 0 2 .3 4 1 18.688 2.7 76 4.3 172 5h399450v120H429l-6-1c-124.688-8-235-61.7\n-331-161C60.687 138.7 32.312 99.3 7 54L0 41V6z",leftgroup:"M400000 80\nH435C64 80 168.3 229.4 21 260c-5.9 1.2-18 0-18 0-2 0-3-1-3-3v-38C76 61 257 0\n 435 0h399565z",leftgroupunder:"M400000 262\nH435C64 262 168.3 112.6 21 82c-5.9-1.2-18 0-18 0-2 0-3 1-3 3v38c76 158 257 219\n 435 219h399565z",leftharpoon:"M0 267c.7 5.3 3 10 7 14h399993v-40H93c3.3\n-3.3 10.2-9.5 20.5-18.5s17.8-15.8 22.5-20.5c50.7-52 88-110.3 112-175 4-11.3 5\n-18.3 3-21-1.3-4-7.3-6-18-6-8 0-13 .7-15 2s-4.7 6.7-8 16c-42 98.7-107.3 174.7\n-196 228-6.7 4.7-10.7 8-12 10-1.3 2-2 5.7-2 11zm100-26v40h399900v-40z",leftharpoonplus:"M0 267c.7 5.3 3 10 7 14h399993v-40H93c3.3-3.3 10.2-9.5\n 20.5-18.5s17.8-15.8 22.5-20.5c50.7-52 88-110.3 112-175 4-11.3 5-18.3 3-21-1.3\n-4-7.3-6-18-6-8 0-13 .7-15 2s-4.7 6.7-8 16c-42 98.7-107.3 174.7-196 228-6.7 4.7\n-10.7 8-12 10-1.3 2-2 5.7-2 11zm100-26v40h399900v-40zM0 435v40h400000v-40z\nm0 0v40h400000v-40z",leftharpoondown:"M7 241c-4 4-6.333 8.667-7 14 0 5.333.667 9 2 11s5.333\n 5.333 12 10c90.667 54 156 130 196 228 3.333 10.667 6.333 16.333 9 17 2 .667 5\n 1 9 1h5c10.667 0 16.667-2 18-6 2-2.667 1-9.667-3-21-32-87.333-82.667-157.667\n-152-211l-3-3h399907v-40zM93 281 H400000 v-40L7 241z",leftharpoondownplus:"M7 435c-4 4-6.3 8.7-7 14 0 5.3.7 9 2 11s5.3 5.3 12\n 10c90.7 54 156 130 196 228 3.3 10.7 6.3 16.3 9 17 2 .7 5 1 9 1h5c10.7 0 16.7\n-2 18-6 2-2.7 1-9.7-3-21-32-87.3-82.7-157.7-152-211l-3-3h399907v-40H7zm93 0\nv40h399900v-40zM0 241v40h399900v-40zm0 0v40h399900v-40z",lefthook:"M400000 281 H103s-33-11.2-61-33.5S0 197.3 0 164s14.2-61.2 42.5\n-83.5C70.8 58.2 104 47 142 47 c16.7 0 25 6.7 25 20 0 12-8.7 18.7-26 20-40 3.3\n-68.7 15.7-86 37-10 12-15 25.3-15 40 0 22.7 9.8 40.7 29.5 54 19.7 13.3 43.5 21\n 71.5 23h399859zM103 281v-40h399897v40z",leftlinesegment:"M40 281 V428 H0 V94 H40 V241 H400000 v40z\nM40 281 V428 H0 V94 H40 V241 H400000 v40z",leftmapsto:"M40 281 V448H0V74H40V241H400000v40z\nM40 281 V448H0V74H40V241H400000v40z",leftToFrom:"M0 147h400000v40H0zm0 214c68 40 115.7 95.7 143 167h22c15.3 0 23\n-.3 23-1 0-1.3-5.3-13.7-16-37-18-35.3-41.3-69-70-101l-7-8h399905v-40H95l7-8\nc28.7-32 52-65.7 70-101 10.7-23.3 16-35.7 16-37 0-.7-7.7-1-23-1h-22C115.7 265.3\n 68 321 0 361zm0-174v-40h399900v40zm100 154v40h399900v-40z",longequal:"M0 50 h400000 v40H0z m0 194h40000v40H0z\nM0 50 h400000 v40H0z m0 194h40000v40H0z",midbrace:"M200428 334\nc-100.7-8.3-195.3-44-280-108-55.3-42-101.7-93-139-153l-9-14c-2.7 4-5.7 8.7-9 14\n-53.3 86.7-123.7 153-211 199-66.7 36-137.3 56.3-212 62H0V214h199568c178.3-11.7\n 311.7-78.3 403-201 6-8 9.7-12 11-12 .7-.7 6.7-1 18-1s17.3.3 18 1c1.3 0 5 4 11\n 12 44.7 59.3 101.3 106.3 170 141s145.3 54.3 229 60h199572v120z",midbraceunder:"M199572 214\nc100.7 8.3 195.3 44 280 108 55.3 42 101.7 93 139 153l9 14c2.7-4 5.7-8.7 9-14\n 53.3-86.7 123.7-153 211-199 66.7-36 137.3-56.3 212-62h199568v120H200432c-178.3\n 11.7-311.7 78.3-403 201-6 8-9.7 12-11 12-.7.7-6.7 1-18 1s-17.3-.3-18-1c-1.3 0\n-5-4-11-12-44.7-59.3-101.3-106.3-170-141s-145.3-54.3-229-60H0V214z",oiintSize1:"M512.6 71.6c272.6 0 320.3 106.8 320.3 178.2 0 70.8-47.7 177.6\n-320.3 177.6S193.1 320.6 193.1 249.8c0-71.4 46.9-178.2 319.5-178.2z\nm368.1 178.2c0-86.4-60.9-215.4-368.1-215.4-306.4 0-367.3 129-367.3 215.4 0 85.8\n60.9 214.8 367.3 214.8 307.2 0 368.1-129 368.1-214.8z",oiintSize2:"M757.8 100.1c384.7 0 451.1 137.6 451.1 230 0 91.3-66.4 228.8\n-451.1 228.8-386.3 0-452.7-137.5-452.7-228.8 0-92.4 66.4-230 452.7-230z\nm502.4 230c0-111.2-82.4-277.2-502.4-277.2s-504 166-504 277.2\nc0 110 84 276 504 276s502.4-166 502.4-276z",oiiintSize1:"M681.4 71.6c408.9 0 480.5 106.8 480.5 178.2 0 70.8-71.6 177.6\n-480.5 177.6S202.1 320.6 202.1 249.8c0-71.4 70.5-178.2 479.3-178.2z\nm525.8 178.2c0-86.4-86.8-215.4-525.7-215.4-437.9 0-524.7 129-524.7 215.4 0\n85.8 86.8 214.8 524.7 214.8 438.9 0 525.7-129 525.7-214.8z",oiiintSize2:"M1021.2 53c603.6 0 707.8 165.8 707.8 277.2 0 110-104.2 275.8\n-707.8 275.8-606 0-710.2-165.8-710.2-275.8C311 218.8 415.2 53 1021.2 53z\nm770.4 277.1c0-131.2-126.4-327.6-770.5-327.6S248.4 198.9 248.4 330.1\nc0 130 128.8 326.4 772.7 326.4s770.5-196.4 770.5-326.4z",rightarrow:"M0 241v40h399891c-47.3 35.3-84 78-110 128\n-16.7 32-27.7 63.7-33 95 0 1.3-.2 2.7-.5 4-.3 1.3-.5 2.3-.5 3 0 7.3 6.7 11 20\n 11 8 0 13.2-.8 15.5-2.5 2.3-1.7 4.2-5.5 5.5-11.5 2-13.3 5.7-27 11-41 14.7-44.7\n 39-84.5 73-119.5s73.7-60.2 119-75.5c6-2 9-5.7 9-11s-3-9-9-11c-45.3-15.3-85\n-40.5-119-75.5s-58.3-74.8-73-119.5c-4.7-14-8.3-27.3-11-40-1.3-6.7-3.2-10.8-5.5\n-12.5-2.3-1.7-7.5-2.5-15.5-2.5-14 0-21 3.7-21 11 0 2 2 10.3 6 25 20.7 83.3 67\n 151.7 139 205zm0 0v40h399900v-40z",rightbrace:"M400000 542l\n-6 6h-17c-12.7 0-19.3-.3-20-1-4-4-7.3-8.3-10-13-35.3-51.3-80.8-93.8-136.5-127.5\ns-117.2-55.8-184.5-66.5c-.7 0-2-.3-4-1-18.7-2.7-76-4.3-172-5H0V214h399571l6 1\nc124.7 8 235 61.7 331 161 31.3 33.3 59.7 72.7 85 118l7 13v35z",rightbraceunder:"M399994 0l6 6v35l-6 11c-56 104-135.3 181.3-238 232-57.3\n 28.7-117 45-179 50H-300V214h399897c43.3-7 81-15 113-26 100.7-33 179.7-91 237\n-174 2.7-5 6-9 10-13 .7-1 7.3-1 20-1h17z",rightgroup:"M0 80h399565c371 0 266.7 149.4 414 180 5.9 1.2 18 0 18 0 2 0\n 3-1 3-3v-38c-76-158-257-219-435-219H0z",rightgroupunder:"M0 262h399565c371 0 266.7-149.4 414-180 5.9-1.2 18 0 18\n 0 2 0 3 1 3 3v38c-76 158-257 219-435 219H0z",rightharpoon:"M0 241v40h399993c4.7-4.7 7-9.3 7-14 0-9.3\n-3.7-15.3-11-18-92.7-56.7-159-133.7-199-231-3.3-9.3-6-14.7-8-16-2-1.3-7-2-15-2\n-10.7 0-16.7 2-18 6-2 2.7-1 9.7 3 21 15.3 42 36.7 81.8 64 119.5 27.3 37.7 58\n 69.2 92 94.5zm0 0v40h399900v-40z",rightharpoonplus:"M0 241v40h399993c4.7-4.7 7-9.3 7-14 0-9.3-3.7-15.3-11\n-18-92.7-56.7-159-133.7-199-231-3.3-9.3-6-14.7-8-16-2-1.3-7-2-15-2-10.7 0-16.7\n 2-18 6-2 2.7-1 9.7 3 21 15.3 42 36.7 81.8 64 119.5 27.3 37.7 58 69.2 92 94.5z\nm0 0v40h399900v-40z m100 194v40h399900v-40zm0 0v40h399900v-40z",rightharpoondown:"M399747 511c0 7.3 6.7 11 20 11 8 0 13-.8 15-2.5s4.7-6.8\n 8-15.5c40-94 99.3-166.3 178-217 13.3-8 20.3-12.3 21-13 5.3-3.3 8.5-5.8 9.5\n-7.5 1-1.7 1.5-5.2 1.5-10.5s-2.3-10.3-7-15H0v40h399908c-34 25.3-64.7 57-92 95\n-27.3 38-48.7 77.7-64 119-3.3 8.7-5 14-5 16zM0 241v40h399900v-40z",rightharpoondownplus:"M399747 705c0 7.3 6.7 11 20 11 8 0 13-.8\n 15-2.5s4.7-6.8 8-15.5c40-94 99.3-166.3 178-217 13.3-8 20.3-12.3 21-13 5.3-3.3\n 8.5-5.8 9.5-7.5 1-1.7 1.5-5.2 1.5-10.5s-2.3-10.3-7-15H0v40h399908c-34 25.3\n-64.7 57-92 95-27.3 38-48.7 77.7-64 119-3.3 8.7-5 14-5 16zM0 435v40h399900v-40z\nm0-194v40h400000v-40zm0 0v40h400000v-40z",righthook:"M399859 241c-764 0 0 0 0 0 40-3.3 68.7-15.7 86-37 10-12 15-25.3\n 15-40 0-22.7-9.8-40.7-29.5-54-19.7-13.3-43.5-21-71.5-23-17.3-1.3-26-8-26-20 0\n-13.3 8.7-20 26-20 38 0 71 11.2 99 33.5 0 0 7 5.6 21 16.7 14 11.2 21 33.5 21\n 66.8s-14 61.2-42 83.5c-28 22.3-61 33.5-99 33.5L0 241z M0 281v-40h399859v40z",rightlinesegment:"M399960 241 V94 h40 V428 h-40 V281 H0 v-40z\nM399960 241 V94 h40 V428 h-40 V281 H0 v-40z",rightToFrom:"M400000 167c-70.7-42-118-97.7-142-167h-23c-15.3 0-23 .3-23\n 1 0 1.3 5.3 13.7 16 37 18 35.3 41.3 69 70 101l7 8H0v40h399905l-7 8c-28.7 32\n-52 65.7-70 101-10.7 23.3-16 35.7-16 37 0 .7 7.7 1 23 1h23c24-69.3 71.3-125 142\n-167z M100 147v40h399900v-40zM0 341v40h399900v-40z",twoheadleftarrow:"M0 167c68 40\n 115.7 95.7 143 167h22c15.3 0 23-.3 23-1 0-1.3-5.3-13.7-16-37-18-35.3-41.3-69\n-70-101l-7-8h125l9 7c50.7 39.3 85 86 103 140h46c0-4.7-6.3-18.7-19-42-18-35.3\n-40-67.3-66-96l-9-9h399716v-40H284l9-9c26-28.7 48-60.7 66-96 12.7-23.333 19\n-37.333 19-42h-46c-18 54-52.3 100.7-103 140l-9 7H95l7-8c28.7-32 52-65.7 70-101\n 10.7-23.333 16-35.7 16-37 0-.7-7.7-1-23-1h-22C115.7 71.3 68 127 0 167z",twoheadrightarrow:"M400000 167\nc-68-40-115.7-95.7-143-167h-22c-15.3 0-23 .3-23 1 0 1.3 5.3 13.7 16 37 18 35.3\n 41.3 69 70 101l7 8h-125l-9-7c-50.7-39.3-85-86-103-140h-46c0 4.7 6.3 18.7 19 42\n 18 35.3 40 67.3 66 96l9 9H0v40h399716l-9 9c-26 28.7-48 60.7-66 96-12.7 23.333\n-19 37.333-19 42h46c18-54 52.3-100.7 103-140l9-7h125l-7 8c-28.7 32-52 65.7-70\n 101-10.7 23.333-16 35.7-16 37 0 .7 7.7 1 23 1h22c27.3-71.3 75-127 143-167z",tilde1:"M200 55.538c-77 0-168 73.953-177 73.953-3 0-7\n-2.175-9-5.437L2 97c-1-2-2-4-2-6 0-4 2-7 5-9l20-12C116 12 171 0 207 0c86 0\n 114 68 191 68 78 0 168-68 177-68 4 0 7 2 9 5l12 19c1 2.175 2 4.35 2 6.525 0\n 4.35-2 7.613-5 9.788l-19 13.05c-92 63.077-116.937 75.308-183 76.128\n-68.267.847-113-73.952-191-73.952z",tilde2:"M344 55.266c-142 0-300.638 81.316-311.5 86.418\n-8.01 3.762-22.5 10.91-23.5 5.562L1 120c-1-2-1-3-1-4 0-5 3-9 8-10l18.4-9C160.9\n 31.9 283 0 358 0c148 0 188 122 331 122s314-97 326-97c4 0 8 2 10 7l7 21.114\nc1 2.14 1 3.21 1 4.28 0 5.347-3 9.626-7 10.696l-22.3 12.622C852.6 158.372 751\n 181.476 676 181.476c-149 0-189-126.21-332-126.21z",tilde3:"M786 59C457 59 32 175.242 13 175.242c-6 0-10-3.457\n-11-10.37L.15 138c-1-7 3-12 10-13l19.2-6.4C378.4 40.7 634.3 0 804.3 0c337 0\n 411.8 157 746.8 157 328 0 754-112 773-112 5 0 10 3 11 9l1 14.075c1 8.066-.697\n 16.595-6.697 17.492l-21.052 7.31c-367.9 98.146-609.15 122.696-778.15 122.696\n -338 0-409-156.573-744-156.573z",tilde4:"M786 58C457 58 32 177.487 13 177.487c-6 0-10-3.345\n-11-10.035L.15 143c-1-7 3-12 10-13l22-6.7C381.2 35 637.15 0 807.15 0c337 0 409\n 177 744 177 328 0 754-127 773-127 5 0 10 3 11 9l1 14.794c1 7.805-3 13.38-9\n 14.495l-20.7 5.574c-366.85 99.79-607.3 139.372-776.3 139.372-338 0-409\n -175.236-744-175.236z",vec:"M377 20c0-5.333 1.833-10 5.5-14S391 0 397 0c4.667 0 8.667 1.667 12 5\n3.333 2.667 6.667 9 10 19 6.667 24.667 20.333 43.667 41 57 7.333 4.667 11\n10.667 11 18 0 6-1 10-3 12s-6.667 5-14 9c-28.667 14.667-53.667 35.667-75 63\n-1.333 1.333-3.167 3.5-5.5 6.5s-4 4.833-5 5.5c-1 .667-2.5 1.333-4.5 2s-4.333 1\n-7 1c-4.667 0-9.167-1.833-13.5-5.5S337 184 337 178c0-12.667 15.667-32.333 47-59\nH213l-171-1c-8.667-6-13-12.333-13-19 0-4.667 4.333-11.333 13-20h359\nc-16-25.333-24-45-24-59z",widehat1:"M529 0h5l519 115c5 1 9 5 9 10 0 1-1 2-1 3l-4 22\nc-1 5-5 9-11 9h-2L532 67 19 159h-2c-5 0-9-4-11-9l-5-22c-1-6 2-12 8-13z",widehat2:"M1181 0h2l1171 176c6 0 10 5 10 11l-2 23c-1 6-5 10\n-11 10h-1L1182 67 15 220h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z",widehat3:"M1181 0h2l1171 236c6 0 10 5 10 11l-2 23c-1 6-5 10\n-11 10h-1L1182 67 15 280h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z",widehat4:"M1181 0h2l1171 296c6 0 10 5 10 11l-2 23c-1 6-5 10\n-11 10h-1L1182 67 15 340h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z",widecheck1:"M529,159h5l519,-115c5,-1,9,-5,9,-10c0,-1,-1,-2,-1,-3l-4,-22c-1,\n-5,-5,-9,-11,-9h-2l-512,92l-513,-92h-2c-5,0,-9,4,-11,9l-5,22c-1,6,2,12,8,13z",widecheck2:"M1181,220h2l1171,-176c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10,\n-11,-10h-1l-1168,153l-1167,-153h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z",widecheck3:"M1181,280h2l1171,-236c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10,\n-11,-10h-1l-1168,213l-1167,-213h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z",widecheck4:"M1181,340h2l1171,-296c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10,\n-11,-10h-1l-1168,273l-1167,-273h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z",baraboveleftarrow:"M400000 620h-399890l3 -3c68.7 -52.7 113.7 -120 135 -202\nc4 -14.7 6 -23 6 -25c0 -7.3 -7 -11 -21 -11c-8 0 -13.2 0.8 -15.5 2.5\nc-2.3 1.7 -4.2 5.8 -5.5 12.5c-1.3 4.7 -2.7 10.3 -4 17c-12 48.7 -34.8 92 -68.5 130\ns-74.2 66.3 -121.5 85c-10 4 -16 7.7 -18 11c0 8.7 6 14.3 18 17c47.3 18.7 87.8 47\n121.5 85s56.5 81.3 68.5 130c0.7 2 1.3 5 2 9s1.2 6.7 1.5 8c0.3 1.3 1 3.3 2 6\ns2.2 4.5 3.5 5.5c1.3 1 3.3 1.8 6 2.5s6 1 10 1c14 0 21 -3.7 21 -11\nc0 -2 -2 -10.3 -6 -25c-20 -79.3 -65 -146.7 -135 -202l-3 -3h399890z\nM100 620v40h399900v-40z M0 241v40h399900v-40zM0 241v40h399900v-40z",rightarrowabovebar:"M0 241v40h399891c-47.3 35.3-84 78-110 128-16.7 32\n-27.7 63.7-33 95 0 1.3-.2 2.7-.5 4-.3 1.3-.5 2.3-.5 3 0 7.3 6.7 11 20 11 8 0\n13.2-.8 15.5-2.5 2.3-1.7 4.2-5.5 5.5-11.5 2-13.3 5.7-27 11-41 14.7-44.7 39\n-84.5 73-119.5s73.7-60.2 119-75.5c6-2 9-5.7 9-11s-3-9-9-11c-45.3-15.3-85-40.5\n-119-75.5s-58.3-74.8-73-119.5c-4.7-14-8.3-27.3-11-40-1.3-6.7-3.2-10.8-5.5\n-12.5-2.3-1.7-7.5-2.5-15.5-2.5-14 0-21 3.7-21 11 0 2 2 10.3 6 25 20.7 83.3 67\n151.7 139 205zm96 379h399894v40H0zm0 0h399904v40H0z",baraboveshortleftharpoon:"M507,435c-4,4,-6.3,8.7,-7,14c0,5.3,0.7,9,2,11\nc1.3,2,5.3,5.3,12,10c90.7,54,156,130,196,228c3.3,10.7,6.3,16.3,9,17\nc2,0.7,5,1,9,1c0,0,5,0,5,0c10.7,0,16.7,-2,18,-6c2,-2.7,1,-9.7,-3,-21\nc-32,-87.3,-82.7,-157.7,-152,-211c0,0,-3,-3,-3,-3l399351,0l0,-40\nc-398570,0,-399437,0,-399437,0z M593 435 v40 H399500 v-40z\nM0 281 v-40 H399908 v40z M0 281 v-40 H399908 v40z",rightharpoonaboveshortbar:"M0,241 l0,40c399126,0,399993,0,399993,0\nc4.7,-4.7,7,-9.3,7,-14c0,-9.3,-3.7,-15.3,-11,-18c-92.7,-56.7,-159,-133.7,-199,\n-231c-3.3,-9.3,-6,-14.7,-8,-16c-2,-1.3,-7,-2,-15,-2c-10.7,0,-16.7,2,-18,6\nc-2,2.7,-1,9.7,3,21c15.3,42,36.7,81.8,64,119.5c27.3,37.7,58,69.2,92,94.5z\nM0 241 v40 H399908 v-40z M0 475 v-40 H399500 v40z M0 475 v-40 H399500 v40z",shortbaraboveleftharpoon:"M7,435c-4,4,-6.3,8.7,-7,14c0,5.3,0.7,9,2,11\nc1.3,2,5.3,5.3,12,10c90.7,54,156,130,196,228c3.3,10.7,6.3,16.3,9,17c2,0.7,5,1,9,\n1c0,0,5,0,5,0c10.7,0,16.7,-2,18,-6c2,-2.7,1,-9.7,-3,-21c-32,-87.3,-82.7,-157.7,\n-152,-211c0,0,-3,-3,-3,-3l399907,0l0,-40c-399126,0,-399993,0,-399993,0z\nM93 435 v40 H400000 v-40z M500 241 v40 H400000 v-40z M500 241 v40 H400000 v-40z",shortrightharpoonabovebar:"M53,241l0,40c398570,0,399437,0,399437,0\nc4.7,-4.7,7,-9.3,7,-14c0,-9.3,-3.7,-15.3,-11,-18c-92.7,-56.7,-159,-133.7,-199,\n-231c-3.3,-9.3,-6,-14.7,-8,-16c-2,-1.3,-7,-2,-15,-2c-10.7,0,-16.7,2,-18,6\nc-2,2.7,-1,9.7,3,21c15.3,42,36.7,81.8,64,119.5c27.3,37.7,58,69.2,92,94.5z\nM500 241 v40 H399408 v-40z M500 435 v40 H400000 v-40z"};class C{constructor(e){this.children=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.maxFontSize=void 0,this.style=void 0,this.children=e,this.classes=[],this.height=0,this.depth=0,this.maxFontSize=0,this.style={}}hasClass(e){return c.contains(this.classes,e)}toNode(){for(var e=document.createDocumentFragment(),t=0;te.toText())).join("")}}var N={"AMS-Regular":{32:[0,0,0,0,.25],65:[0,.68889,0,0,.72222],66:[0,.68889,0,0,.66667],67:[0,.68889,0,0,.72222],68:[0,.68889,0,0,.72222],69:[0,.68889,0,0,.66667],70:[0,.68889,0,0,.61111],71:[0,.68889,0,0,.77778],72:[0,.68889,0,0,.77778],73:[0,.68889,0,0,.38889],74:[.16667,.68889,0,0,.5],75:[0,.68889,0,0,.77778],76:[0,.68889,0,0,.66667],77:[0,.68889,0,0,.94445],78:[0,.68889,0,0,.72222],79:[.16667,.68889,0,0,.77778],80:[0,.68889,0,0,.61111],81:[.16667,.68889,0,0,.77778],82:[0,.68889,0,0,.72222],83:[0,.68889,0,0,.55556],84:[0,.68889,0,0,.66667],85:[0,.68889,0,0,.72222],86:[0,.68889,0,0,.72222],87:[0,.68889,0,0,1],88:[0,.68889,0,0,.72222],89:[0,.68889,0,0,.72222],90:[0,.68889,0,0,.66667],107:[0,.68889,0,0,.55556],160:[0,0,0,0,.25],165:[0,.675,.025,0,.75],174:[.15559,.69224,0,0,.94666],240:[0,.68889,0,0,.55556],295:[0,.68889,0,0,.54028],710:[0,.825,0,0,2.33334],732:[0,.9,0,0,2.33334],770:[0,.825,0,0,2.33334],771:[0,.9,0,0,2.33334],989:[.08167,.58167,0,0,.77778],1008:[0,.43056,.04028,0,.66667],8245:[0,.54986,0,0,.275],8463:[0,.68889,0,0,.54028],8487:[0,.68889,0,0,.72222],8498:[0,.68889,0,0,.55556],8502:[0,.68889,0,0,.66667],8503:[0,.68889,0,0,.44445],8504:[0,.68889,0,0,.66667],8513:[0,.68889,0,0,.63889],8592:[-.03598,.46402,0,0,.5],8594:[-.03598,.46402,0,0,.5],8602:[-.13313,.36687,0,0,1],8603:[-.13313,.36687,0,0,1],8606:[.01354,.52239,0,0,1],8608:[.01354,.52239,0,0,1],8610:[.01354,.52239,0,0,1.11111],8611:[.01354,.52239,0,0,1.11111],8619:[0,.54986,0,0,1],8620:[0,.54986,0,0,1],8621:[-.13313,.37788,0,0,1.38889],8622:[-.13313,.36687,0,0,1],8624:[0,.69224,0,0,.5],8625:[0,.69224,0,0,.5],8630:[0,.43056,0,0,1],8631:[0,.43056,0,0,1],8634:[.08198,.58198,0,0,.77778],8635:[.08198,.58198,0,0,.77778],8638:[.19444,.69224,0,0,.41667],8639:[.19444,.69224,0,0,.41667],8642:[.19444,.69224,0,0,.41667],8643:[.19444,.69224,0,0,.41667],8644:[.1808,.675,0,0,1],8646:[.1808,.675,0,0,1],8647:[.1808,.675,0,0,1],8648:[.19444,.69224,0,0,.83334],8649:[.1808,.675,0,0,1],8650:[.19444,.69224,0,0,.83334],8651:[.01354,.52239,0,0,1],8652:[.01354,.52239,0,0,1],8653:[-.13313,.36687,0,0,1],8654:[-.13313,.36687,0,0,1],8655:[-.13313,.36687,0,0,1],8666:[.13667,.63667,0,0,1],8667:[.13667,.63667,0,0,1],8669:[-.13313,.37788,0,0,1],8672:[-.064,.437,0,0,1.334],8674:[-.064,.437,0,0,1.334],8705:[0,.825,0,0,.5],8708:[0,.68889,0,0,.55556],8709:[.08167,.58167,0,0,.77778],8717:[0,.43056,0,0,.42917],8722:[-.03598,.46402,0,0,.5],8724:[.08198,.69224,0,0,.77778],8726:[.08167,.58167,0,0,.77778],8733:[0,.69224,0,0,.77778],8736:[0,.69224,0,0,.72222],8737:[0,.69224,0,0,.72222],8738:[.03517,.52239,0,0,.72222],8739:[.08167,.58167,0,0,.22222],8740:[.25142,.74111,0,0,.27778],8741:[.08167,.58167,0,0,.38889],8742:[.25142,.74111,0,0,.5],8756:[0,.69224,0,0,.66667],8757:[0,.69224,0,0,.66667],8764:[-.13313,.36687,0,0,.77778],8765:[-.13313,.37788,0,0,.77778],8769:[-.13313,.36687,0,0,.77778],8770:[-.03625,.46375,0,0,.77778],8774:[.30274,.79383,0,0,.77778],8776:[-.01688,.48312,0,0,.77778],8778:[.08167,.58167,0,0,.77778],8782:[.06062,.54986,0,0,.77778],8783:[.06062,.54986,0,0,.77778],8785:[.08198,.58198,0,0,.77778],8786:[.08198,.58198,0,0,.77778],8787:[.08198,.58198,0,0,.77778],8790:[0,.69224,0,0,.77778],8791:[.22958,.72958,0,0,.77778],8796:[.08198,.91667,0,0,.77778],8806:[.25583,.75583,0,0,.77778],8807:[.25583,.75583,0,0,.77778],8808:[.25142,.75726,0,0,.77778],8809:[.25142,.75726,0,0,.77778],8812:[.25583,.75583,0,0,.5],8814:[.20576,.70576,0,0,.77778],8815:[.20576,.70576,0,0,.77778],8816:[.30274,.79383,0,0,.77778],8817:[.30274,.79383,0,0,.77778],8818:[.22958,.72958,0,0,.77778],8819:[.22958,.72958,0,0,.77778],8822:[.1808,.675,0,0,.77778],8823:[.1808,.675,0,0,.77778],8828:[.13667,.63667,0,0,.77778],8829:[.13667,.63667,0,0,.77778],8830:[.22958,.72958,0,0,.77778],8831:[.22958,.72958,0,0,.77778],8832:[.20576,.70576,0,0,.77778],8833:[.20576,.70576,0,0,.77778],8840:[.30274,.79383,0,0,.77778],8841:[.30274,.79383,0,0,.77778],8842:[.13597,.63597,0,0,.77778],8843:[.13597,.63597,0,0,.77778],8847:[.03517,.54986,0,0,.77778],8848:[.03517,.54986,0,0,.77778],8858:[.08198,.58198,0,0,.77778],8859:[.08198,.58198,0,0,.77778],8861:[.08198,.58198,0,0,.77778],8862:[0,.675,0,0,.77778],8863:[0,.675,0,0,.77778],8864:[0,.675,0,0,.77778],8865:[0,.675,0,0,.77778],8872:[0,.69224,0,0,.61111],8873:[0,.69224,0,0,.72222],8874:[0,.69224,0,0,.88889],8876:[0,.68889,0,0,.61111],8877:[0,.68889,0,0,.61111],8878:[0,.68889,0,0,.72222],8879:[0,.68889,0,0,.72222],8882:[.03517,.54986,0,0,.77778],8883:[.03517,.54986,0,0,.77778],8884:[.13667,.63667,0,0,.77778],8885:[.13667,.63667,0,0,.77778],8888:[0,.54986,0,0,1.11111],8890:[.19444,.43056,0,0,.55556],8891:[.19444,.69224,0,0,.61111],8892:[.19444,.69224,0,0,.61111],8901:[0,.54986,0,0,.27778],8903:[.08167,.58167,0,0,.77778],8905:[.08167,.58167,0,0,.77778],8906:[.08167,.58167,0,0,.77778],8907:[0,.69224,0,0,.77778],8908:[0,.69224,0,0,.77778],8909:[-.03598,.46402,0,0,.77778],8910:[0,.54986,0,0,.76042],8911:[0,.54986,0,0,.76042],8912:[.03517,.54986,0,0,.77778],8913:[.03517,.54986,0,0,.77778],8914:[0,.54986,0,0,.66667],8915:[0,.54986,0,0,.66667],8916:[0,.69224,0,0,.66667],8918:[.0391,.5391,0,0,.77778],8919:[.0391,.5391,0,0,.77778],8920:[.03517,.54986,0,0,1.33334],8921:[.03517,.54986,0,0,1.33334],8922:[.38569,.88569,0,0,.77778],8923:[.38569,.88569,0,0,.77778],8926:[.13667,.63667,0,0,.77778],8927:[.13667,.63667,0,0,.77778],8928:[.30274,.79383,0,0,.77778],8929:[.30274,.79383,0,0,.77778],8934:[.23222,.74111,0,0,.77778],8935:[.23222,.74111,0,0,.77778],8936:[.23222,.74111,0,0,.77778],8937:[.23222,.74111,0,0,.77778],8938:[.20576,.70576,0,0,.77778],8939:[.20576,.70576,0,0,.77778],8940:[.30274,.79383,0,0,.77778],8941:[.30274,.79383,0,0,.77778],8994:[.19444,.69224,0,0,.77778],8995:[.19444,.69224,0,0,.77778],9416:[.15559,.69224,0,0,.90222],9484:[0,.69224,0,0,.5],9488:[0,.69224,0,0,.5],9492:[0,.37788,0,0,.5],9496:[0,.37788,0,0,.5],9585:[.19444,.68889,0,0,.88889],9586:[.19444,.74111,0,0,.88889],9632:[0,.675,0,0,.77778],9633:[0,.675,0,0,.77778],9650:[0,.54986,0,0,.72222],9651:[0,.54986,0,0,.72222],9654:[.03517,.54986,0,0,.77778],9660:[0,.54986,0,0,.72222],9661:[0,.54986,0,0,.72222],9664:[.03517,.54986,0,0,.77778],9674:[.11111,.69224,0,0,.66667],9733:[.19444,.69224,0,0,.94445],10003:[0,.69224,0,0,.83334],10016:[0,.69224,0,0,.83334],10731:[.11111,.69224,0,0,.66667],10846:[.19444,.75583,0,0,.61111],10877:[.13667,.63667,0,0,.77778],10878:[.13667,.63667,0,0,.77778],10885:[.25583,.75583,0,0,.77778],10886:[.25583,.75583,0,0,.77778],10887:[.13597,.63597,0,0,.77778],10888:[.13597,.63597,0,0,.77778],10889:[.26167,.75726,0,0,.77778],10890:[.26167,.75726,0,0,.77778],10891:[.48256,.98256,0,0,.77778],10892:[.48256,.98256,0,0,.77778],10901:[.13667,.63667,0,0,.77778],10902:[.13667,.63667,0,0,.77778],10933:[.25142,.75726,0,0,.77778],10934:[.25142,.75726,0,0,.77778],10935:[.26167,.75726,0,0,.77778],10936:[.26167,.75726,0,0,.77778],10937:[.26167,.75726,0,0,.77778],10938:[.26167,.75726,0,0,.77778],10949:[.25583,.75583,0,0,.77778],10950:[.25583,.75583,0,0,.77778],10955:[.28481,.79383,0,0,.77778],10956:[.28481,.79383,0,0,.77778],57350:[.08167,.58167,0,0,.22222],57351:[.08167,.58167,0,0,.38889],57352:[.08167,.58167,0,0,.77778],57353:[0,.43056,.04028,0,.66667],57356:[.25142,.75726,0,0,.77778],57357:[.25142,.75726,0,0,.77778],57358:[.41951,.91951,0,0,.77778],57359:[.30274,.79383,0,0,.77778],57360:[.30274,.79383,0,0,.77778],57361:[.41951,.91951,0,0,.77778],57366:[.25142,.75726,0,0,.77778],57367:[.25142,.75726,0,0,.77778],57368:[.25142,.75726,0,0,.77778],57369:[.25142,.75726,0,0,.77778],57370:[.13597,.63597,0,0,.77778],57371:[.13597,.63597,0,0,.77778]},"Caligraphic-Regular":{32:[0,0,0,0,.25],65:[0,.68333,0,.19445,.79847],66:[0,.68333,.03041,.13889,.65681],67:[0,.68333,.05834,.13889,.52653],68:[0,.68333,.02778,.08334,.77139],69:[0,.68333,.08944,.11111,.52778],70:[0,.68333,.09931,.11111,.71875],71:[.09722,.68333,.0593,.11111,.59487],72:[0,.68333,.00965,.11111,.84452],73:[0,.68333,.07382,0,.54452],74:[.09722,.68333,.18472,.16667,.67778],75:[0,.68333,.01445,.05556,.76195],76:[0,.68333,0,.13889,.68972],77:[0,.68333,0,.13889,1.2009],78:[0,.68333,.14736,.08334,.82049],79:[0,.68333,.02778,.11111,.79611],80:[0,.68333,.08222,.08334,.69556],81:[.09722,.68333,0,.11111,.81667],82:[0,.68333,0,.08334,.8475],83:[0,.68333,.075,.13889,.60556],84:[0,.68333,.25417,0,.54464],85:[0,.68333,.09931,.08334,.62583],86:[0,.68333,.08222,0,.61278],87:[0,.68333,.08222,.08334,.98778],88:[0,.68333,.14643,.13889,.7133],89:[.09722,.68333,.08222,.08334,.66834],90:[0,.68333,.07944,.13889,.72473],160:[0,0,0,0,.25]},"Fraktur-Regular":{32:[0,0,0,0,.25],33:[0,.69141,0,0,.29574],34:[0,.69141,0,0,.21471],38:[0,.69141,0,0,.73786],39:[0,.69141,0,0,.21201],40:[.24982,.74947,0,0,.38865],41:[.24982,.74947,0,0,.38865],42:[0,.62119,0,0,.27764],43:[.08319,.58283,0,0,.75623],44:[0,.10803,0,0,.27764],45:[.08319,.58283,0,0,.75623],46:[0,.10803,0,0,.27764],47:[.24982,.74947,0,0,.50181],48:[0,.47534,0,0,.50181],49:[0,.47534,0,0,.50181],50:[0,.47534,0,0,.50181],51:[.18906,.47534,0,0,.50181],52:[.18906,.47534,0,0,.50181],53:[.18906,.47534,0,0,.50181],54:[0,.69141,0,0,.50181],55:[.18906,.47534,0,0,.50181],56:[0,.69141,0,0,.50181],57:[.18906,.47534,0,0,.50181],58:[0,.47534,0,0,.21606],59:[.12604,.47534,0,0,.21606],61:[-.13099,.36866,0,0,.75623],63:[0,.69141,0,0,.36245],65:[0,.69141,0,0,.7176],66:[0,.69141,0,0,.88397],67:[0,.69141,0,0,.61254],68:[0,.69141,0,0,.83158],69:[0,.69141,0,0,.66278],70:[.12604,.69141,0,0,.61119],71:[0,.69141,0,0,.78539],72:[.06302,.69141,0,0,.7203],73:[0,.69141,0,0,.55448],74:[.12604,.69141,0,0,.55231],75:[0,.69141,0,0,.66845],76:[0,.69141,0,0,.66602],77:[0,.69141,0,0,1.04953],78:[0,.69141,0,0,.83212],79:[0,.69141,0,0,.82699],80:[.18906,.69141,0,0,.82753],81:[.03781,.69141,0,0,.82699],82:[0,.69141,0,0,.82807],83:[0,.69141,0,0,.82861],84:[0,.69141,0,0,.66899],85:[0,.69141,0,0,.64576],86:[0,.69141,0,0,.83131],87:[0,.69141,0,0,1.04602],88:[0,.69141,0,0,.71922],89:[.18906,.69141,0,0,.83293],90:[.12604,.69141,0,0,.60201],91:[.24982,.74947,0,0,.27764],93:[.24982,.74947,0,0,.27764],94:[0,.69141,0,0,.49965],97:[0,.47534,0,0,.50046],98:[0,.69141,0,0,.51315],99:[0,.47534,0,0,.38946],100:[0,.62119,0,0,.49857],101:[0,.47534,0,0,.40053],102:[.18906,.69141,0,0,.32626],103:[.18906,.47534,0,0,.5037],104:[.18906,.69141,0,0,.52126],105:[0,.69141,0,0,.27899],106:[0,.69141,0,0,.28088],107:[0,.69141,0,0,.38946],108:[0,.69141,0,0,.27953],109:[0,.47534,0,0,.76676],110:[0,.47534,0,0,.52666],111:[0,.47534,0,0,.48885],112:[.18906,.52396,0,0,.50046],113:[.18906,.47534,0,0,.48912],114:[0,.47534,0,0,.38919],115:[0,.47534,0,0,.44266],116:[0,.62119,0,0,.33301],117:[0,.47534,0,0,.5172],118:[0,.52396,0,0,.5118],119:[0,.52396,0,0,.77351],120:[.18906,.47534,0,0,.38865],121:[.18906,.47534,0,0,.49884],122:[.18906,.47534,0,0,.39054],160:[0,0,0,0,.25],8216:[0,.69141,0,0,.21471],8217:[0,.69141,0,0,.21471],58112:[0,.62119,0,0,.49749],58113:[0,.62119,0,0,.4983],58114:[.18906,.69141,0,0,.33328],58115:[.18906,.69141,0,0,.32923],58116:[.18906,.47534,0,0,.50343],58117:[0,.69141,0,0,.33301],58118:[0,.62119,0,0,.33409],58119:[0,.47534,0,0,.50073]},"Main-Bold":{32:[0,0,0,0,.25],33:[0,.69444,0,0,.35],34:[0,.69444,0,0,.60278],35:[.19444,.69444,0,0,.95833],36:[.05556,.75,0,0,.575],37:[.05556,.75,0,0,.95833],38:[0,.69444,0,0,.89444],39:[0,.69444,0,0,.31944],40:[.25,.75,0,0,.44722],41:[.25,.75,0,0,.44722],42:[0,.75,0,0,.575],43:[.13333,.63333,0,0,.89444],44:[.19444,.15556,0,0,.31944],45:[0,.44444,0,0,.38333],46:[0,.15556,0,0,.31944],47:[.25,.75,0,0,.575],48:[0,.64444,0,0,.575],49:[0,.64444,0,0,.575],50:[0,.64444,0,0,.575],51:[0,.64444,0,0,.575],52:[0,.64444,0,0,.575],53:[0,.64444,0,0,.575],54:[0,.64444,0,0,.575],55:[0,.64444,0,0,.575],56:[0,.64444,0,0,.575],57:[0,.64444,0,0,.575],58:[0,.44444,0,0,.31944],59:[.19444,.44444,0,0,.31944],60:[.08556,.58556,0,0,.89444],61:[-.10889,.39111,0,0,.89444],62:[.08556,.58556,0,0,.89444],63:[0,.69444,0,0,.54305],64:[0,.69444,0,0,.89444],65:[0,.68611,0,0,.86944],66:[0,.68611,0,0,.81805],67:[0,.68611,0,0,.83055],68:[0,.68611,0,0,.88194],69:[0,.68611,0,0,.75555],70:[0,.68611,0,0,.72361],71:[0,.68611,0,0,.90416],72:[0,.68611,0,0,.9],73:[0,.68611,0,0,.43611],74:[0,.68611,0,0,.59444],75:[0,.68611,0,0,.90138],76:[0,.68611,0,0,.69166],77:[0,.68611,0,0,1.09166],78:[0,.68611,0,0,.9],79:[0,.68611,0,0,.86388],80:[0,.68611,0,0,.78611],81:[.19444,.68611,0,0,.86388],82:[0,.68611,0,0,.8625],83:[0,.68611,0,0,.63889],84:[0,.68611,0,0,.8],85:[0,.68611,0,0,.88472],86:[0,.68611,.01597,0,.86944],87:[0,.68611,.01597,0,1.18888],88:[0,.68611,0,0,.86944],89:[0,.68611,.02875,0,.86944],90:[0,.68611,0,0,.70277],91:[.25,.75,0,0,.31944],92:[.25,.75,0,0,.575],93:[.25,.75,0,0,.31944],94:[0,.69444,0,0,.575],95:[.31,.13444,.03194,0,.575],97:[0,.44444,0,0,.55902],98:[0,.69444,0,0,.63889],99:[0,.44444,0,0,.51111],100:[0,.69444,0,0,.63889],101:[0,.44444,0,0,.52708],102:[0,.69444,.10903,0,.35139],103:[.19444,.44444,.01597,0,.575],104:[0,.69444,0,0,.63889],105:[0,.69444,0,0,.31944],106:[.19444,.69444,0,0,.35139],107:[0,.69444,0,0,.60694],108:[0,.69444,0,0,.31944],109:[0,.44444,0,0,.95833],110:[0,.44444,0,0,.63889],111:[0,.44444,0,0,.575],112:[.19444,.44444,0,0,.63889],113:[.19444,.44444,0,0,.60694],114:[0,.44444,0,0,.47361],115:[0,.44444,0,0,.45361],116:[0,.63492,0,0,.44722],117:[0,.44444,0,0,.63889],118:[0,.44444,.01597,0,.60694],119:[0,.44444,.01597,0,.83055],120:[0,.44444,0,0,.60694],121:[.19444,.44444,.01597,0,.60694],122:[0,.44444,0,0,.51111],123:[.25,.75,0,0,.575],124:[.25,.75,0,0,.31944],125:[.25,.75,0,0,.575],126:[.35,.34444,0,0,.575],160:[0,0,0,0,.25],163:[0,.69444,0,0,.86853],168:[0,.69444,0,0,.575],172:[0,.44444,0,0,.76666],176:[0,.69444,0,0,.86944],177:[.13333,.63333,0,0,.89444],184:[.17014,0,0,0,.51111],198:[0,.68611,0,0,1.04166],215:[.13333,.63333,0,0,.89444],216:[.04861,.73472,0,0,.89444],223:[0,.69444,0,0,.59722],230:[0,.44444,0,0,.83055],247:[.13333,.63333,0,0,.89444],248:[.09722,.54167,0,0,.575],305:[0,.44444,0,0,.31944],338:[0,.68611,0,0,1.16944],339:[0,.44444,0,0,.89444],567:[.19444,.44444,0,0,.35139],710:[0,.69444,0,0,.575],711:[0,.63194,0,0,.575],713:[0,.59611,0,0,.575],714:[0,.69444,0,0,.575],715:[0,.69444,0,0,.575],728:[0,.69444,0,0,.575],729:[0,.69444,0,0,.31944],730:[0,.69444,0,0,.86944],732:[0,.69444,0,0,.575],733:[0,.69444,0,0,.575],915:[0,.68611,0,0,.69166],916:[0,.68611,0,0,.95833],920:[0,.68611,0,0,.89444],923:[0,.68611,0,0,.80555],926:[0,.68611,0,0,.76666],928:[0,.68611,0,0,.9],931:[0,.68611,0,0,.83055],933:[0,.68611,0,0,.89444],934:[0,.68611,0,0,.83055],936:[0,.68611,0,0,.89444],937:[0,.68611,0,0,.83055],8211:[0,.44444,.03194,0,.575],8212:[0,.44444,.03194,0,1.14999],8216:[0,.69444,0,0,.31944],8217:[0,.69444,0,0,.31944],8220:[0,.69444,0,0,.60278],8221:[0,.69444,0,0,.60278],8224:[.19444,.69444,0,0,.51111],8225:[.19444,.69444,0,0,.51111],8242:[0,.55556,0,0,.34444],8407:[0,.72444,.15486,0,.575],8463:[0,.69444,0,0,.66759],8465:[0,.69444,0,0,.83055],8467:[0,.69444,0,0,.47361],8472:[.19444,.44444,0,0,.74027],8476:[0,.69444,0,0,.83055],8501:[0,.69444,0,0,.70277],8592:[-.10889,.39111,0,0,1.14999],8593:[.19444,.69444,0,0,.575],8594:[-.10889,.39111,0,0,1.14999],8595:[.19444,.69444,0,0,.575],8596:[-.10889,.39111,0,0,1.14999],8597:[.25,.75,0,0,.575],8598:[.19444,.69444,0,0,1.14999],8599:[.19444,.69444,0,0,1.14999],8600:[.19444,.69444,0,0,1.14999],8601:[.19444,.69444,0,0,1.14999],8636:[-.10889,.39111,0,0,1.14999],8637:[-.10889,.39111,0,0,1.14999],8640:[-.10889,.39111,0,0,1.14999],8641:[-.10889,.39111,0,0,1.14999],8656:[-.10889,.39111,0,0,1.14999],8657:[.19444,.69444,0,0,.70277],8658:[-.10889,.39111,0,0,1.14999],8659:[.19444,.69444,0,0,.70277],8660:[-.10889,.39111,0,0,1.14999],8661:[.25,.75,0,0,.70277],8704:[0,.69444,0,0,.63889],8706:[0,.69444,.06389,0,.62847],8707:[0,.69444,0,0,.63889],8709:[.05556,.75,0,0,.575],8711:[0,.68611,0,0,.95833],8712:[.08556,.58556,0,0,.76666],8715:[.08556,.58556,0,0,.76666],8722:[.13333,.63333,0,0,.89444],8723:[.13333,.63333,0,0,.89444],8725:[.25,.75,0,0,.575],8726:[.25,.75,0,0,.575],8727:[-.02778,.47222,0,0,.575],8728:[-.02639,.47361,0,0,.575],8729:[-.02639,.47361,0,0,.575],8730:[.18,.82,0,0,.95833],8733:[0,.44444,0,0,.89444],8734:[0,.44444,0,0,1.14999],8736:[0,.69224,0,0,.72222],8739:[.25,.75,0,0,.31944],8741:[.25,.75,0,0,.575],8743:[0,.55556,0,0,.76666],8744:[0,.55556,0,0,.76666],8745:[0,.55556,0,0,.76666],8746:[0,.55556,0,0,.76666],8747:[.19444,.69444,.12778,0,.56875],8764:[-.10889,.39111,0,0,.89444],8768:[.19444,.69444,0,0,.31944],8771:[.00222,.50222,0,0,.89444],8773:[.027,.638,0,0,.894],8776:[.02444,.52444,0,0,.89444],8781:[.00222,.50222,0,0,.89444],8801:[.00222,.50222,0,0,.89444],8804:[.19667,.69667,0,0,.89444],8805:[.19667,.69667,0,0,.89444],8810:[.08556,.58556,0,0,1.14999],8811:[.08556,.58556,0,0,1.14999],8826:[.08556,.58556,0,0,.89444],8827:[.08556,.58556,0,0,.89444],8834:[.08556,.58556,0,0,.89444],8835:[.08556,.58556,0,0,.89444],8838:[.19667,.69667,0,0,.89444],8839:[.19667,.69667,0,0,.89444],8846:[0,.55556,0,0,.76666],8849:[.19667,.69667,0,0,.89444],8850:[.19667,.69667,0,0,.89444],8851:[0,.55556,0,0,.76666],8852:[0,.55556,0,0,.76666],8853:[.13333,.63333,0,0,.89444],8854:[.13333,.63333,0,0,.89444],8855:[.13333,.63333,0,0,.89444],8856:[.13333,.63333,0,0,.89444],8857:[.13333,.63333,0,0,.89444],8866:[0,.69444,0,0,.70277],8867:[0,.69444,0,0,.70277],8868:[0,.69444,0,0,.89444],8869:[0,.69444,0,0,.89444],8900:[-.02639,.47361,0,0,.575],8901:[-.02639,.47361,0,0,.31944],8902:[-.02778,.47222,0,0,.575],8968:[.25,.75,0,0,.51111],8969:[.25,.75,0,0,.51111],8970:[.25,.75,0,0,.51111],8971:[.25,.75,0,0,.51111],8994:[-.13889,.36111,0,0,1.14999],8995:[-.13889,.36111,0,0,1.14999],9651:[.19444,.69444,0,0,1.02222],9657:[-.02778,.47222,0,0,.575],9661:[.19444,.69444,0,0,1.02222],9667:[-.02778,.47222,0,0,.575],9711:[.19444,.69444,0,0,1.14999],9824:[.12963,.69444,0,0,.89444],9825:[.12963,.69444,0,0,.89444],9826:[.12963,.69444,0,0,.89444],9827:[.12963,.69444,0,0,.89444],9837:[0,.75,0,0,.44722],9838:[.19444,.69444,0,0,.44722],9839:[.19444,.69444,0,0,.44722],10216:[.25,.75,0,0,.44722],10217:[.25,.75,0,0,.44722],10815:[0,.68611,0,0,.9],10927:[.19667,.69667,0,0,.89444],10928:[.19667,.69667,0,0,.89444],57376:[.19444,.69444,0,0,0]},"Main-BoldItalic":{32:[0,0,0,0,.25],33:[0,.69444,.11417,0,.38611],34:[0,.69444,.07939,0,.62055],35:[.19444,.69444,.06833,0,.94444],37:[.05556,.75,.12861,0,.94444],38:[0,.69444,.08528,0,.88555],39:[0,.69444,.12945,0,.35555],40:[.25,.75,.15806,0,.47333],41:[.25,.75,.03306,0,.47333],42:[0,.75,.14333,0,.59111],43:[.10333,.60333,.03306,0,.88555],44:[.19444,.14722,0,0,.35555],45:[0,.44444,.02611,0,.41444],46:[0,.14722,0,0,.35555],47:[.25,.75,.15806,0,.59111],48:[0,.64444,.13167,0,.59111],49:[0,.64444,.13167,0,.59111],50:[0,.64444,.13167,0,.59111],51:[0,.64444,.13167,0,.59111],52:[.19444,.64444,.13167,0,.59111],53:[0,.64444,.13167,0,.59111],54:[0,.64444,.13167,0,.59111],55:[.19444,.64444,.13167,0,.59111],56:[0,.64444,.13167,0,.59111],57:[0,.64444,.13167,0,.59111],58:[0,.44444,.06695,0,.35555],59:[.19444,.44444,.06695,0,.35555],61:[-.10889,.39111,.06833,0,.88555],63:[0,.69444,.11472,0,.59111],64:[0,.69444,.09208,0,.88555],65:[0,.68611,0,0,.86555],66:[0,.68611,.0992,0,.81666],67:[0,.68611,.14208,0,.82666],68:[0,.68611,.09062,0,.87555],69:[0,.68611,.11431,0,.75666],70:[0,.68611,.12903,0,.72722],71:[0,.68611,.07347,0,.89527],72:[0,.68611,.17208,0,.8961],73:[0,.68611,.15681,0,.47166],74:[0,.68611,.145,0,.61055],75:[0,.68611,.14208,0,.89499],76:[0,.68611,0,0,.69777],77:[0,.68611,.17208,0,1.07277],78:[0,.68611,.17208,0,.8961],79:[0,.68611,.09062,0,.85499],80:[0,.68611,.0992,0,.78721],81:[.19444,.68611,.09062,0,.85499],82:[0,.68611,.02559,0,.85944],83:[0,.68611,.11264,0,.64999],84:[0,.68611,.12903,0,.7961],85:[0,.68611,.17208,0,.88083],86:[0,.68611,.18625,0,.86555],87:[0,.68611,.18625,0,1.15999],88:[0,.68611,.15681,0,.86555],89:[0,.68611,.19803,0,.86555],90:[0,.68611,.14208,0,.70888],91:[.25,.75,.1875,0,.35611],93:[.25,.75,.09972,0,.35611],94:[0,.69444,.06709,0,.59111],95:[.31,.13444,.09811,0,.59111],97:[0,.44444,.09426,0,.59111],98:[0,.69444,.07861,0,.53222],99:[0,.44444,.05222,0,.53222],100:[0,.69444,.10861,0,.59111],101:[0,.44444,.085,0,.53222],102:[.19444,.69444,.21778,0,.4],103:[.19444,.44444,.105,0,.53222],104:[0,.69444,.09426,0,.59111],105:[0,.69326,.11387,0,.35555],106:[.19444,.69326,.1672,0,.35555],107:[0,.69444,.11111,0,.53222],108:[0,.69444,.10861,0,.29666],109:[0,.44444,.09426,0,.94444],110:[0,.44444,.09426,0,.64999],111:[0,.44444,.07861,0,.59111],112:[.19444,.44444,.07861,0,.59111],113:[.19444,.44444,.105,0,.53222],114:[0,.44444,.11111,0,.50167],115:[0,.44444,.08167,0,.48694],116:[0,.63492,.09639,0,.385],117:[0,.44444,.09426,0,.62055],118:[0,.44444,.11111,0,.53222],119:[0,.44444,.11111,0,.76777],120:[0,.44444,.12583,0,.56055],121:[.19444,.44444,.105,0,.56166],122:[0,.44444,.13889,0,.49055],126:[.35,.34444,.11472,0,.59111],160:[0,0,0,0,.25],168:[0,.69444,.11473,0,.59111],176:[0,.69444,0,0,.94888],184:[.17014,0,0,0,.53222],198:[0,.68611,.11431,0,1.02277],216:[.04861,.73472,.09062,0,.88555],223:[.19444,.69444,.09736,0,.665],230:[0,.44444,.085,0,.82666],248:[.09722,.54167,.09458,0,.59111],305:[0,.44444,.09426,0,.35555],338:[0,.68611,.11431,0,1.14054],339:[0,.44444,.085,0,.82666],567:[.19444,.44444,.04611,0,.385],710:[0,.69444,.06709,0,.59111],711:[0,.63194,.08271,0,.59111],713:[0,.59444,.10444,0,.59111],714:[0,.69444,.08528,0,.59111],715:[0,.69444,0,0,.59111],728:[0,.69444,.10333,0,.59111],729:[0,.69444,.12945,0,.35555],730:[0,.69444,0,0,.94888],732:[0,.69444,.11472,0,.59111],733:[0,.69444,.11472,0,.59111],915:[0,.68611,.12903,0,.69777],916:[0,.68611,0,0,.94444],920:[0,.68611,.09062,0,.88555],923:[0,.68611,0,0,.80666],926:[0,.68611,.15092,0,.76777],928:[0,.68611,.17208,0,.8961],931:[0,.68611,.11431,0,.82666],933:[0,.68611,.10778,0,.88555],934:[0,.68611,.05632,0,.82666],936:[0,.68611,.10778,0,.88555],937:[0,.68611,.0992,0,.82666],8211:[0,.44444,.09811,0,.59111],8212:[0,.44444,.09811,0,1.18221],8216:[0,.69444,.12945,0,.35555],8217:[0,.69444,.12945,0,.35555],8220:[0,.69444,.16772,0,.62055],8221:[0,.69444,.07939,0,.62055]},"Main-Italic":{32:[0,0,0,0,.25],33:[0,.69444,.12417,0,.30667],34:[0,.69444,.06961,0,.51444],35:[.19444,.69444,.06616,0,.81777],37:[.05556,.75,.13639,0,.81777],38:[0,.69444,.09694,0,.76666],39:[0,.69444,.12417,0,.30667],40:[.25,.75,.16194,0,.40889],41:[.25,.75,.03694,0,.40889],42:[0,.75,.14917,0,.51111],43:[.05667,.56167,.03694,0,.76666],44:[.19444,.10556,0,0,.30667],45:[0,.43056,.02826,0,.35778],46:[0,.10556,0,0,.30667],47:[.25,.75,.16194,0,.51111],48:[0,.64444,.13556,0,.51111],49:[0,.64444,.13556,0,.51111],50:[0,.64444,.13556,0,.51111],51:[0,.64444,.13556,0,.51111],52:[.19444,.64444,.13556,0,.51111],53:[0,.64444,.13556,0,.51111],54:[0,.64444,.13556,0,.51111],55:[.19444,.64444,.13556,0,.51111],56:[0,.64444,.13556,0,.51111],57:[0,.64444,.13556,0,.51111],58:[0,.43056,.0582,0,.30667],59:[.19444,.43056,.0582,0,.30667],61:[-.13313,.36687,.06616,0,.76666],63:[0,.69444,.1225,0,.51111],64:[0,.69444,.09597,0,.76666],65:[0,.68333,0,0,.74333],66:[0,.68333,.10257,0,.70389],67:[0,.68333,.14528,0,.71555],68:[0,.68333,.09403,0,.755],69:[0,.68333,.12028,0,.67833],70:[0,.68333,.13305,0,.65277],71:[0,.68333,.08722,0,.77361],72:[0,.68333,.16389,0,.74333],73:[0,.68333,.15806,0,.38555],74:[0,.68333,.14028,0,.525],75:[0,.68333,.14528,0,.76888],76:[0,.68333,0,0,.62722],77:[0,.68333,.16389,0,.89666],78:[0,.68333,.16389,0,.74333],79:[0,.68333,.09403,0,.76666],80:[0,.68333,.10257,0,.67833],81:[.19444,.68333,.09403,0,.76666],82:[0,.68333,.03868,0,.72944],83:[0,.68333,.11972,0,.56222],84:[0,.68333,.13305,0,.71555],85:[0,.68333,.16389,0,.74333],86:[0,.68333,.18361,0,.74333],87:[0,.68333,.18361,0,.99888],88:[0,.68333,.15806,0,.74333],89:[0,.68333,.19383,0,.74333],90:[0,.68333,.14528,0,.61333],91:[.25,.75,.1875,0,.30667],93:[.25,.75,.10528,0,.30667],94:[0,.69444,.06646,0,.51111],95:[.31,.12056,.09208,0,.51111],97:[0,.43056,.07671,0,.51111],98:[0,.69444,.06312,0,.46],99:[0,.43056,.05653,0,.46],100:[0,.69444,.10333,0,.51111],101:[0,.43056,.07514,0,.46],102:[.19444,.69444,.21194,0,.30667],103:[.19444,.43056,.08847,0,.46],104:[0,.69444,.07671,0,.51111],105:[0,.65536,.1019,0,.30667],106:[.19444,.65536,.14467,0,.30667],107:[0,.69444,.10764,0,.46],108:[0,.69444,.10333,0,.25555],109:[0,.43056,.07671,0,.81777],110:[0,.43056,.07671,0,.56222],111:[0,.43056,.06312,0,.51111],112:[.19444,.43056,.06312,0,.51111],113:[.19444,.43056,.08847,0,.46],114:[0,.43056,.10764,0,.42166],115:[0,.43056,.08208,0,.40889],116:[0,.61508,.09486,0,.33222],117:[0,.43056,.07671,0,.53666],118:[0,.43056,.10764,0,.46],119:[0,.43056,.10764,0,.66444],120:[0,.43056,.12042,0,.46389],121:[.19444,.43056,.08847,0,.48555],122:[0,.43056,.12292,0,.40889],126:[.35,.31786,.11585,0,.51111],160:[0,0,0,0,.25],168:[0,.66786,.10474,0,.51111],176:[0,.69444,0,0,.83129],184:[.17014,0,0,0,.46],198:[0,.68333,.12028,0,.88277],216:[.04861,.73194,.09403,0,.76666],223:[.19444,.69444,.10514,0,.53666],230:[0,.43056,.07514,0,.71555],248:[.09722,.52778,.09194,0,.51111],338:[0,.68333,.12028,0,.98499],339:[0,.43056,.07514,0,.71555],710:[0,.69444,.06646,0,.51111],711:[0,.62847,.08295,0,.51111],713:[0,.56167,.10333,0,.51111],714:[0,.69444,.09694,0,.51111],715:[0,.69444,0,0,.51111],728:[0,.69444,.10806,0,.51111],729:[0,.66786,.11752,0,.30667],730:[0,.69444,0,0,.83129],732:[0,.66786,.11585,0,.51111],733:[0,.69444,.1225,0,.51111],915:[0,.68333,.13305,0,.62722],916:[0,.68333,0,0,.81777],920:[0,.68333,.09403,0,.76666],923:[0,.68333,0,0,.69222],926:[0,.68333,.15294,0,.66444],928:[0,.68333,.16389,0,.74333],931:[0,.68333,.12028,0,.71555],933:[0,.68333,.11111,0,.76666],934:[0,.68333,.05986,0,.71555],936:[0,.68333,.11111,0,.76666],937:[0,.68333,.10257,0,.71555],8211:[0,.43056,.09208,0,.51111],8212:[0,.43056,.09208,0,1.02222],8216:[0,.69444,.12417,0,.30667],8217:[0,.69444,.12417,0,.30667],8220:[0,.69444,.1685,0,.51444],8221:[0,.69444,.06961,0,.51444],8463:[0,.68889,0,0,.54028]},"Main-Regular":{32:[0,0,0,0,.25],33:[0,.69444,0,0,.27778],34:[0,.69444,0,0,.5],35:[.19444,.69444,0,0,.83334],36:[.05556,.75,0,0,.5],37:[.05556,.75,0,0,.83334],38:[0,.69444,0,0,.77778],39:[0,.69444,0,0,.27778],40:[.25,.75,0,0,.38889],41:[.25,.75,0,0,.38889],42:[0,.75,0,0,.5],43:[.08333,.58333,0,0,.77778],44:[.19444,.10556,0,0,.27778],45:[0,.43056,0,0,.33333],46:[0,.10556,0,0,.27778],47:[.25,.75,0,0,.5],48:[0,.64444,0,0,.5],49:[0,.64444,0,0,.5],50:[0,.64444,0,0,.5],51:[0,.64444,0,0,.5],52:[0,.64444,0,0,.5],53:[0,.64444,0,0,.5],54:[0,.64444,0,0,.5],55:[0,.64444,0,0,.5],56:[0,.64444,0,0,.5],57:[0,.64444,0,0,.5],58:[0,.43056,0,0,.27778],59:[.19444,.43056,0,0,.27778],60:[.0391,.5391,0,0,.77778],61:[-.13313,.36687,0,0,.77778],62:[.0391,.5391,0,0,.77778],63:[0,.69444,0,0,.47222],64:[0,.69444,0,0,.77778],65:[0,.68333,0,0,.75],66:[0,.68333,0,0,.70834],67:[0,.68333,0,0,.72222],68:[0,.68333,0,0,.76389],69:[0,.68333,0,0,.68056],70:[0,.68333,0,0,.65278],71:[0,.68333,0,0,.78472],72:[0,.68333,0,0,.75],73:[0,.68333,0,0,.36111],74:[0,.68333,0,0,.51389],75:[0,.68333,0,0,.77778],76:[0,.68333,0,0,.625],77:[0,.68333,0,0,.91667],78:[0,.68333,0,0,.75],79:[0,.68333,0,0,.77778],80:[0,.68333,0,0,.68056],81:[.19444,.68333,0,0,.77778],82:[0,.68333,0,0,.73611],83:[0,.68333,0,0,.55556],84:[0,.68333,0,0,.72222],85:[0,.68333,0,0,.75],86:[0,.68333,.01389,0,.75],87:[0,.68333,.01389,0,1.02778],88:[0,.68333,0,0,.75],89:[0,.68333,.025,0,.75],90:[0,.68333,0,0,.61111],91:[.25,.75,0,0,.27778],92:[.25,.75,0,0,.5],93:[.25,.75,0,0,.27778],94:[0,.69444,0,0,.5],95:[.31,.12056,.02778,0,.5],97:[0,.43056,0,0,.5],98:[0,.69444,0,0,.55556],99:[0,.43056,0,0,.44445],100:[0,.69444,0,0,.55556],101:[0,.43056,0,0,.44445],102:[0,.69444,.07778,0,.30556],103:[.19444,.43056,.01389,0,.5],104:[0,.69444,0,0,.55556],105:[0,.66786,0,0,.27778],106:[.19444,.66786,0,0,.30556],107:[0,.69444,0,0,.52778],108:[0,.69444,0,0,.27778],109:[0,.43056,0,0,.83334],110:[0,.43056,0,0,.55556],111:[0,.43056,0,0,.5],112:[.19444,.43056,0,0,.55556],113:[.19444,.43056,0,0,.52778],114:[0,.43056,0,0,.39167],115:[0,.43056,0,0,.39445],116:[0,.61508,0,0,.38889],117:[0,.43056,0,0,.55556],118:[0,.43056,.01389,0,.52778],119:[0,.43056,.01389,0,.72222],120:[0,.43056,0,0,.52778],121:[.19444,.43056,.01389,0,.52778],122:[0,.43056,0,0,.44445],123:[.25,.75,0,0,.5],124:[.25,.75,0,0,.27778],125:[.25,.75,0,0,.5],126:[.35,.31786,0,0,.5],160:[0,0,0,0,.25],163:[0,.69444,0,0,.76909],167:[.19444,.69444,0,0,.44445],168:[0,.66786,0,0,.5],172:[0,.43056,0,0,.66667],176:[0,.69444,0,0,.75],177:[.08333,.58333,0,0,.77778],182:[.19444,.69444,0,0,.61111],184:[.17014,0,0,0,.44445],198:[0,.68333,0,0,.90278],215:[.08333,.58333,0,0,.77778],216:[.04861,.73194,0,0,.77778],223:[0,.69444,0,0,.5],230:[0,.43056,0,0,.72222],247:[.08333,.58333,0,0,.77778],248:[.09722,.52778,0,0,.5],305:[0,.43056,0,0,.27778],338:[0,.68333,0,0,1.01389],339:[0,.43056,0,0,.77778],567:[.19444,.43056,0,0,.30556],710:[0,.69444,0,0,.5],711:[0,.62847,0,0,.5],713:[0,.56778,0,0,.5],714:[0,.69444,0,0,.5],715:[0,.69444,0,0,.5],728:[0,.69444,0,0,.5],729:[0,.66786,0,0,.27778],730:[0,.69444,0,0,.75],732:[0,.66786,0,0,.5],733:[0,.69444,0,0,.5],915:[0,.68333,0,0,.625],916:[0,.68333,0,0,.83334],920:[0,.68333,0,0,.77778],923:[0,.68333,0,0,.69445],926:[0,.68333,0,0,.66667],928:[0,.68333,0,0,.75],931:[0,.68333,0,0,.72222],933:[0,.68333,0,0,.77778],934:[0,.68333,0,0,.72222],936:[0,.68333,0,0,.77778],937:[0,.68333,0,0,.72222],8211:[0,.43056,.02778,0,.5],8212:[0,.43056,.02778,0,1],8216:[0,.69444,0,0,.27778],8217:[0,.69444,0,0,.27778],8220:[0,.69444,0,0,.5],8221:[0,.69444,0,0,.5],8224:[.19444,.69444,0,0,.44445],8225:[.19444,.69444,0,0,.44445],8230:[0,.123,0,0,1.172],8242:[0,.55556,0,0,.275],8407:[0,.71444,.15382,0,.5],8463:[0,.68889,0,0,.54028],8465:[0,.69444,0,0,.72222],8467:[0,.69444,0,.11111,.41667],8472:[.19444,.43056,0,.11111,.63646],8476:[0,.69444,0,0,.72222],8501:[0,.69444,0,0,.61111],8592:[-.13313,.36687,0,0,1],8593:[.19444,.69444,0,0,.5],8594:[-.13313,.36687,0,0,1],8595:[.19444,.69444,0,0,.5],8596:[-.13313,.36687,0,0,1],8597:[.25,.75,0,0,.5],8598:[.19444,.69444,0,0,1],8599:[.19444,.69444,0,0,1],8600:[.19444,.69444,0,0,1],8601:[.19444,.69444,0,0,1],8614:[.011,.511,0,0,1],8617:[.011,.511,0,0,1.126],8618:[.011,.511,0,0,1.126],8636:[-.13313,.36687,0,0,1],8637:[-.13313,.36687,0,0,1],8640:[-.13313,.36687,0,0,1],8641:[-.13313,.36687,0,0,1],8652:[.011,.671,0,0,1],8656:[-.13313,.36687,0,0,1],8657:[.19444,.69444,0,0,.61111],8658:[-.13313,.36687,0,0,1],8659:[.19444,.69444,0,0,.61111],8660:[-.13313,.36687,0,0,1],8661:[.25,.75,0,0,.61111],8704:[0,.69444,0,0,.55556],8706:[0,.69444,.05556,.08334,.5309],8707:[0,.69444,0,0,.55556],8709:[.05556,.75,0,0,.5],8711:[0,.68333,0,0,.83334],8712:[.0391,.5391,0,0,.66667],8715:[.0391,.5391,0,0,.66667],8722:[.08333,.58333,0,0,.77778],8723:[.08333,.58333,0,0,.77778],8725:[.25,.75,0,0,.5],8726:[.25,.75,0,0,.5],8727:[-.03472,.46528,0,0,.5],8728:[-.05555,.44445,0,0,.5],8729:[-.05555,.44445,0,0,.5],8730:[.2,.8,0,0,.83334],8733:[0,.43056,0,0,.77778],8734:[0,.43056,0,0,1],8736:[0,.69224,0,0,.72222],8739:[.25,.75,0,0,.27778],8741:[.25,.75,0,0,.5],8743:[0,.55556,0,0,.66667],8744:[0,.55556,0,0,.66667],8745:[0,.55556,0,0,.66667],8746:[0,.55556,0,0,.66667],8747:[.19444,.69444,.11111,0,.41667],8764:[-.13313,.36687,0,0,.77778],8768:[.19444,.69444,0,0,.27778],8771:[-.03625,.46375,0,0,.77778],8773:[-.022,.589,0,0,.778],8776:[-.01688,.48312,0,0,.77778],8781:[-.03625,.46375,0,0,.77778],8784:[-.133,.673,0,0,.778],8801:[-.03625,.46375,0,0,.77778],8804:[.13597,.63597,0,0,.77778],8805:[.13597,.63597,0,0,.77778],8810:[.0391,.5391,0,0,1],8811:[.0391,.5391,0,0,1],8826:[.0391,.5391,0,0,.77778],8827:[.0391,.5391,0,0,.77778],8834:[.0391,.5391,0,0,.77778],8835:[.0391,.5391,0,0,.77778],8838:[.13597,.63597,0,0,.77778],8839:[.13597,.63597,0,0,.77778],8846:[0,.55556,0,0,.66667],8849:[.13597,.63597,0,0,.77778],8850:[.13597,.63597,0,0,.77778],8851:[0,.55556,0,0,.66667],8852:[0,.55556,0,0,.66667],8853:[.08333,.58333,0,0,.77778],8854:[.08333,.58333,0,0,.77778],8855:[.08333,.58333,0,0,.77778],8856:[.08333,.58333,0,0,.77778],8857:[.08333,.58333,0,0,.77778],8866:[0,.69444,0,0,.61111],8867:[0,.69444,0,0,.61111],8868:[0,.69444,0,0,.77778],8869:[0,.69444,0,0,.77778],8872:[.249,.75,0,0,.867],8900:[-.05555,.44445,0,0,.5],8901:[-.05555,.44445,0,0,.27778],8902:[-.03472,.46528,0,0,.5],8904:[.005,.505,0,0,.9],8942:[.03,.903,0,0,.278],8943:[-.19,.313,0,0,1.172],8945:[-.1,.823,0,0,1.282],8968:[.25,.75,0,0,.44445],8969:[.25,.75,0,0,.44445],8970:[.25,.75,0,0,.44445],8971:[.25,.75,0,0,.44445],8994:[-.14236,.35764,0,0,1],8995:[-.14236,.35764,0,0,1],9136:[.244,.744,0,0,.412],9137:[.244,.745,0,0,.412],9651:[.19444,.69444,0,0,.88889],9657:[-.03472,.46528,0,0,.5],9661:[.19444,.69444,0,0,.88889],9667:[-.03472,.46528,0,0,.5],9711:[.19444,.69444,0,0,1],9824:[.12963,.69444,0,0,.77778],9825:[.12963,.69444,0,0,.77778],9826:[.12963,.69444,0,0,.77778],9827:[.12963,.69444,0,0,.77778],9837:[0,.75,0,0,.38889],9838:[.19444,.69444,0,0,.38889],9839:[.19444,.69444,0,0,.38889],10216:[.25,.75,0,0,.38889],10217:[.25,.75,0,0,.38889],10222:[.244,.744,0,0,.412],10223:[.244,.745,0,0,.412],10229:[.011,.511,0,0,1.609],10230:[.011,.511,0,0,1.638],10231:[.011,.511,0,0,1.859],10232:[.024,.525,0,0,1.609],10233:[.024,.525,0,0,1.638],10234:[.024,.525,0,0,1.858],10236:[.011,.511,0,0,1.638],10815:[0,.68333,0,0,.75],10927:[.13597,.63597,0,0,.77778],10928:[.13597,.63597,0,0,.77778],57376:[.19444,.69444,0,0,0]},"Math-BoldItalic":{32:[0,0,0,0,.25],48:[0,.44444,0,0,.575],49:[0,.44444,0,0,.575],50:[0,.44444,0,0,.575],51:[.19444,.44444,0,0,.575],52:[.19444,.44444,0,0,.575],53:[.19444,.44444,0,0,.575],54:[0,.64444,0,0,.575],55:[.19444,.44444,0,0,.575],56:[0,.64444,0,0,.575],57:[.19444,.44444,0,0,.575],65:[0,.68611,0,0,.86944],66:[0,.68611,.04835,0,.8664],67:[0,.68611,.06979,0,.81694],68:[0,.68611,.03194,0,.93812],69:[0,.68611,.05451,0,.81007],70:[0,.68611,.15972,0,.68889],71:[0,.68611,0,0,.88673],72:[0,.68611,.08229,0,.98229],73:[0,.68611,.07778,0,.51111],74:[0,.68611,.10069,0,.63125],75:[0,.68611,.06979,0,.97118],76:[0,.68611,0,0,.75555],77:[0,.68611,.11424,0,1.14201],78:[0,.68611,.11424,0,.95034],79:[0,.68611,.03194,0,.83666],80:[0,.68611,.15972,0,.72309],81:[.19444,.68611,0,0,.86861],82:[0,.68611,.00421,0,.87235],83:[0,.68611,.05382,0,.69271],84:[0,.68611,.15972,0,.63663],85:[0,.68611,.11424,0,.80027],86:[0,.68611,.25555,0,.67778],87:[0,.68611,.15972,0,1.09305],88:[0,.68611,.07778,0,.94722],89:[0,.68611,.25555,0,.67458],90:[0,.68611,.06979,0,.77257],97:[0,.44444,0,0,.63287],98:[0,.69444,0,0,.52083],99:[0,.44444,0,0,.51342],100:[0,.69444,0,0,.60972],101:[0,.44444,0,0,.55361],102:[.19444,.69444,.11042,0,.56806],103:[.19444,.44444,.03704,0,.5449],104:[0,.69444,0,0,.66759],105:[0,.69326,0,0,.4048],106:[.19444,.69326,.0622,0,.47083],107:[0,.69444,.01852,0,.6037],108:[0,.69444,.0088,0,.34815],109:[0,.44444,0,0,1.0324],110:[0,.44444,0,0,.71296],111:[0,.44444,0,0,.58472],112:[.19444,.44444,0,0,.60092],113:[.19444,.44444,.03704,0,.54213],114:[0,.44444,.03194,0,.5287],115:[0,.44444,0,0,.53125],116:[0,.63492,0,0,.41528],117:[0,.44444,0,0,.68102],118:[0,.44444,.03704,0,.56666],119:[0,.44444,.02778,0,.83148],120:[0,.44444,0,0,.65903],121:[.19444,.44444,.03704,0,.59028],122:[0,.44444,.04213,0,.55509],160:[0,0,0,0,.25],915:[0,.68611,.15972,0,.65694],916:[0,.68611,0,0,.95833],920:[0,.68611,.03194,0,.86722],923:[0,.68611,0,0,.80555],926:[0,.68611,.07458,0,.84125],928:[0,.68611,.08229,0,.98229],931:[0,.68611,.05451,0,.88507],933:[0,.68611,.15972,0,.67083],934:[0,.68611,0,0,.76666],936:[0,.68611,.11653,0,.71402],937:[0,.68611,.04835,0,.8789],945:[0,.44444,0,0,.76064],946:[.19444,.69444,.03403,0,.65972],947:[.19444,.44444,.06389,0,.59003],948:[0,.69444,.03819,0,.52222],949:[0,.44444,0,0,.52882],950:[.19444,.69444,.06215,0,.50833],951:[.19444,.44444,.03704,0,.6],952:[0,.69444,.03194,0,.5618],953:[0,.44444,0,0,.41204],954:[0,.44444,0,0,.66759],955:[0,.69444,0,0,.67083],956:[.19444,.44444,0,0,.70787],957:[0,.44444,.06898,0,.57685],958:[.19444,.69444,.03021,0,.50833],959:[0,.44444,0,0,.58472],960:[0,.44444,.03704,0,.68241],961:[.19444,.44444,0,0,.6118],962:[.09722,.44444,.07917,0,.42361],963:[0,.44444,.03704,0,.68588],964:[0,.44444,.13472,0,.52083],965:[0,.44444,.03704,0,.63055],966:[.19444,.44444,0,0,.74722],967:[.19444,.44444,0,0,.71805],968:[.19444,.69444,.03704,0,.75833],969:[0,.44444,.03704,0,.71782],977:[0,.69444,0,0,.69155],981:[.19444,.69444,0,0,.7125],982:[0,.44444,.03194,0,.975],1009:[.19444,.44444,0,0,.6118],1013:[0,.44444,0,0,.48333],57649:[0,.44444,0,0,.39352],57911:[.19444,.44444,0,0,.43889]},"Math-Italic":{32:[0,0,0,0,.25],48:[0,.43056,0,0,.5],49:[0,.43056,0,0,.5],50:[0,.43056,0,0,.5],51:[.19444,.43056,0,0,.5],52:[.19444,.43056,0,0,.5],53:[.19444,.43056,0,0,.5],54:[0,.64444,0,0,.5],55:[.19444,.43056,0,0,.5],56:[0,.64444,0,0,.5],57:[.19444,.43056,0,0,.5],65:[0,.68333,0,.13889,.75],66:[0,.68333,.05017,.08334,.75851],67:[0,.68333,.07153,.08334,.71472],68:[0,.68333,.02778,.05556,.82792],69:[0,.68333,.05764,.08334,.7382],70:[0,.68333,.13889,.08334,.64306],71:[0,.68333,0,.08334,.78625],72:[0,.68333,.08125,.05556,.83125],73:[0,.68333,.07847,.11111,.43958],74:[0,.68333,.09618,.16667,.55451],75:[0,.68333,.07153,.05556,.84931],76:[0,.68333,0,.02778,.68056],77:[0,.68333,.10903,.08334,.97014],78:[0,.68333,.10903,.08334,.80347],79:[0,.68333,.02778,.08334,.76278],80:[0,.68333,.13889,.08334,.64201],81:[.19444,.68333,0,.08334,.79056],82:[0,.68333,.00773,.08334,.75929],83:[0,.68333,.05764,.08334,.6132],84:[0,.68333,.13889,.08334,.58438],85:[0,.68333,.10903,.02778,.68278],86:[0,.68333,.22222,0,.58333],87:[0,.68333,.13889,0,.94445],88:[0,.68333,.07847,.08334,.82847],89:[0,.68333,.22222,0,.58056],90:[0,.68333,.07153,.08334,.68264],97:[0,.43056,0,0,.52859],98:[0,.69444,0,0,.42917],99:[0,.43056,0,.05556,.43276],100:[0,.69444,0,.16667,.52049],101:[0,.43056,0,.05556,.46563],102:[.19444,.69444,.10764,.16667,.48959],103:[.19444,.43056,.03588,.02778,.47697],104:[0,.69444,0,0,.57616],105:[0,.65952,0,0,.34451],106:[.19444,.65952,.05724,0,.41181],107:[0,.69444,.03148,0,.5206],108:[0,.69444,.01968,.08334,.29838],109:[0,.43056,0,0,.87801],110:[0,.43056,0,0,.60023],111:[0,.43056,0,.05556,.48472],112:[.19444,.43056,0,.08334,.50313],113:[.19444,.43056,.03588,.08334,.44641],114:[0,.43056,.02778,.05556,.45116],115:[0,.43056,0,.05556,.46875],116:[0,.61508,0,.08334,.36111],117:[0,.43056,0,.02778,.57246],118:[0,.43056,.03588,.02778,.48472],119:[0,.43056,.02691,.08334,.71592],120:[0,.43056,0,.02778,.57153],121:[.19444,.43056,.03588,.05556,.49028],122:[0,.43056,.04398,.05556,.46505],160:[0,0,0,0,.25],915:[0,.68333,.13889,.08334,.61528],916:[0,.68333,0,.16667,.83334],920:[0,.68333,.02778,.08334,.76278],923:[0,.68333,0,.16667,.69445],926:[0,.68333,.07569,.08334,.74236],928:[0,.68333,.08125,.05556,.83125],931:[0,.68333,.05764,.08334,.77986],933:[0,.68333,.13889,.05556,.58333],934:[0,.68333,0,.08334,.66667],936:[0,.68333,.11,.05556,.61222],937:[0,.68333,.05017,.08334,.7724],945:[0,.43056,.0037,.02778,.6397],946:[.19444,.69444,.05278,.08334,.56563],947:[.19444,.43056,.05556,0,.51773],948:[0,.69444,.03785,.05556,.44444],949:[0,.43056,0,.08334,.46632],950:[.19444,.69444,.07378,.08334,.4375],951:[.19444,.43056,.03588,.05556,.49653],952:[0,.69444,.02778,.08334,.46944],953:[0,.43056,0,.05556,.35394],954:[0,.43056,0,0,.57616],955:[0,.69444,0,0,.58334],956:[.19444,.43056,0,.02778,.60255],957:[0,.43056,.06366,.02778,.49398],958:[.19444,.69444,.04601,.11111,.4375],959:[0,.43056,0,.05556,.48472],960:[0,.43056,.03588,0,.57003],961:[.19444,.43056,0,.08334,.51702],962:[.09722,.43056,.07986,.08334,.36285],963:[0,.43056,.03588,0,.57141],964:[0,.43056,.1132,.02778,.43715],965:[0,.43056,.03588,.02778,.54028],966:[.19444,.43056,0,.08334,.65417],967:[.19444,.43056,0,.05556,.62569],968:[.19444,.69444,.03588,.11111,.65139],969:[0,.43056,.03588,0,.62245],977:[0,.69444,0,.08334,.59144],981:[.19444,.69444,0,.08334,.59583],982:[0,.43056,.02778,0,.82813],1009:[.19444,.43056,0,.08334,.51702],1013:[0,.43056,0,.05556,.4059],57649:[0,.43056,0,.02778,.32246],57911:[.19444,.43056,0,.08334,.38403]},"SansSerif-Bold":{32:[0,0,0,0,.25],33:[0,.69444,0,0,.36667],34:[0,.69444,0,0,.55834],35:[.19444,.69444,0,0,.91667],36:[.05556,.75,0,0,.55],37:[.05556,.75,0,0,1.02912],38:[0,.69444,0,0,.83056],39:[0,.69444,0,0,.30556],40:[.25,.75,0,0,.42778],41:[.25,.75,0,0,.42778],42:[0,.75,0,0,.55],43:[.11667,.61667,0,0,.85556],44:[.10556,.13056,0,0,.30556],45:[0,.45833,0,0,.36667],46:[0,.13056,0,0,.30556],47:[.25,.75,0,0,.55],48:[0,.69444,0,0,.55],49:[0,.69444,0,0,.55],50:[0,.69444,0,0,.55],51:[0,.69444,0,0,.55],52:[0,.69444,0,0,.55],53:[0,.69444,0,0,.55],54:[0,.69444,0,0,.55],55:[0,.69444,0,0,.55],56:[0,.69444,0,0,.55],57:[0,.69444,0,0,.55],58:[0,.45833,0,0,.30556],59:[.10556,.45833,0,0,.30556],61:[-.09375,.40625,0,0,.85556],63:[0,.69444,0,0,.51945],64:[0,.69444,0,0,.73334],65:[0,.69444,0,0,.73334],66:[0,.69444,0,0,.73334],67:[0,.69444,0,0,.70278],68:[0,.69444,0,0,.79445],69:[0,.69444,0,0,.64167],70:[0,.69444,0,0,.61111],71:[0,.69444,0,0,.73334],72:[0,.69444,0,0,.79445],73:[0,.69444,0,0,.33056],74:[0,.69444,0,0,.51945],75:[0,.69444,0,0,.76389],76:[0,.69444,0,0,.58056],77:[0,.69444,0,0,.97778],78:[0,.69444,0,0,.79445],79:[0,.69444,0,0,.79445],80:[0,.69444,0,0,.70278],81:[.10556,.69444,0,0,.79445],82:[0,.69444,0,0,.70278],83:[0,.69444,0,0,.61111],84:[0,.69444,0,0,.73334],85:[0,.69444,0,0,.76389],86:[0,.69444,.01528,0,.73334],87:[0,.69444,.01528,0,1.03889],88:[0,.69444,0,0,.73334],89:[0,.69444,.0275,0,.73334],90:[0,.69444,0,0,.67223],91:[.25,.75,0,0,.34306],93:[.25,.75,0,0,.34306],94:[0,.69444,0,0,.55],95:[.35,.10833,.03056,0,.55],97:[0,.45833,0,0,.525],98:[0,.69444,0,0,.56111],99:[0,.45833,0,0,.48889],100:[0,.69444,0,0,.56111],101:[0,.45833,0,0,.51111],102:[0,.69444,.07639,0,.33611],103:[.19444,.45833,.01528,0,.55],104:[0,.69444,0,0,.56111],105:[0,.69444,0,0,.25556],106:[.19444,.69444,0,0,.28611],107:[0,.69444,0,0,.53056],108:[0,.69444,0,0,.25556],109:[0,.45833,0,0,.86667],110:[0,.45833,0,0,.56111],111:[0,.45833,0,0,.55],112:[.19444,.45833,0,0,.56111],113:[.19444,.45833,0,0,.56111],114:[0,.45833,.01528,0,.37222],115:[0,.45833,0,0,.42167],116:[0,.58929,0,0,.40417],117:[0,.45833,0,0,.56111],118:[0,.45833,.01528,0,.5],119:[0,.45833,.01528,0,.74445],120:[0,.45833,0,0,.5],121:[.19444,.45833,.01528,0,.5],122:[0,.45833,0,0,.47639],126:[.35,.34444,0,0,.55],160:[0,0,0,0,.25],168:[0,.69444,0,0,.55],176:[0,.69444,0,0,.73334],180:[0,.69444,0,0,.55],184:[.17014,0,0,0,.48889],305:[0,.45833,0,0,.25556],567:[.19444,.45833,0,0,.28611],710:[0,.69444,0,0,.55],711:[0,.63542,0,0,.55],713:[0,.63778,0,0,.55],728:[0,.69444,0,0,.55],729:[0,.69444,0,0,.30556],730:[0,.69444,0,0,.73334],732:[0,.69444,0,0,.55],733:[0,.69444,0,0,.55],915:[0,.69444,0,0,.58056],916:[0,.69444,0,0,.91667],920:[0,.69444,0,0,.85556],923:[0,.69444,0,0,.67223],926:[0,.69444,0,0,.73334],928:[0,.69444,0,0,.79445],931:[0,.69444,0,0,.79445],933:[0,.69444,0,0,.85556],934:[0,.69444,0,0,.79445],936:[0,.69444,0,0,.85556],937:[0,.69444,0,0,.79445],8211:[0,.45833,.03056,0,.55],8212:[0,.45833,.03056,0,1.10001],8216:[0,.69444,0,0,.30556],8217:[0,.69444,0,0,.30556],8220:[0,.69444,0,0,.55834],8221:[0,.69444,0,0,.55834]},"SansSerif-Italic":{32:[0,0,0,0,.25],33:[0,.69444,.05733,0,.31945],34:[0,.69444,.00316,0,.5],35:[.19444,.69444,.05087,0,.83334],36:[.05556,.75,.11156,0,.5],37:[.05556,.75,.03126,0,.83334],38:[0,.69444,.03058,0,.75834],39:[0,.69444,.07816,0,.27778],40:[.25,.75,.13164,0,.38889],41:[.25,.75,.02536,0,.38889],42:[0,.75,.11775,0,.5],43:[.08333,.58333,.02536,0,.77778],44:[.125,.08333,0,0,.27778],45:[0,.44444,.01946,0,.33333],46:[0,.08333,0,0,.27778],47:[.25,.75,.13164,0,.5],48:[0,.65556,.11156,0,.5],49:[0,.65556,.11156,0,.5],50:[0,.65556,.11156,0,.5],51:[0,.65556,.11156,0,.5],52:[0,.65556,.11156,0,.5],53:[0,.65556,.11156,0,.5],54:[0,.65556,.11156,0,.5],55:[0,.65556,.11156,0,.5],56:[0,.65556,.11156,0,.5],57:[0,.65556,.11156,0,.5],58:[0,.44444,.02502,0,.27778],59:[.125,.44444,.02502,0,.27778],61:[-.13,.37,.05087,0,.77778],63:[0,.69444,.11809,0,.47222],64:[0,.69444,.07555,0,.66667],65:[0,.69444,0,0,.66667],66:[0,.69444,.08293,0,.66667],67:[0,.69444,.11983,0,.63889],68:[0,.69444,.07555,0,.72223],69:[0,.69444,.11983,0,.59722],70:[0,.69444,.13372,0,.56945],71:[0,.69444,.11983,0,.66667],72:[0,.69444,.08094,0,.70834],73:[0,.69444,.13372,0,.27778],74:[0,.69444,.08094,0,.47222],75:[0,.69444,.11983,0,.69445],76:[0,.69444,0,0,.54167],77:[0,.69444,.08094,0,.875],78:[0,.69444,.08094,0,.70834],79:[0,.69444,.07555,0,.73611],80:[0,.69444,.08293,0,.63889],81:[.125,.69444,.07555,0,.73611],82:[0,.69444,.08293,0,.64584],83:[0,.69444,.09205,0,.55556],84:[0,.69444,.13372,0,.68056],85:[0,.69444,.08094,0,.6875],86:[0,.69444,.1615,0,.66667],87:[0,.69444,.1615,0,.94445],88:[0,.69444,.13372,0,.66667],89:[0,.69444,.17261,0,.66667],90:[0,.69444,.11983,0,.61111],91:[.25,.75,.15942,0,.28889],93:[.25,.75,.08719,0,.28889],94:[0,.69444,.0799,0,.5],95:[.35,.09444,.08616,0,.5],97:[0,.44444,.00981,0,.48056],98:[0,.69444,.03057,0,.51667],99:[0,.44444,.08336,0,.44445],100:[0,.69444,.09483,0,.51667],101:[0,.44444,.06778,0,.44445],102:[0,.69444,.21705,0,.30556],103:[.19444,.44444,.10836,0,.5],104:[0,.69444,.01778,0,.51667],105:[0,.67937,.09718,0,.23889],106:[.19444,.67937,.09162,0,.26667],107:[0,.69444,.08336,0,.48889],108:[0,.69444,.09483,0,.23889],109:[0,.44444,.01778,0,.79445],110:[0,.44444,.01778,0,.51667],111:[0,.44444,.06613,0,.5],112:[.19444,.44444,.0389,0,.51667],113:[.19444,.44444,.04169,0,.51667],114:[0,.44444,.10836,0,.34167],115:[0,.44444,.0778,0,.38333],116:[0,.57143,.07225,0,.36111],117:[0,.44444,.04169,0,.51667],118:[0,.44444,.10836,0,.46111],119:[0,.44444,.10836,0,.68334],120:[0,.44444,.09169,0,.46111],121:[.19444,.44444,.10836,0,.46111],122:[0,.44444,.08752,0,.43472],126:[.35,.32659,.08826,0,.5],160:[0,0,0,0,.25],168:[0,.67937,.06385,0,.5],176:[0,.69444,0,0,.73752],184:[.17014,0,0,0,.44445],305:[0,.44444,.04169,0,.23889],567:[.19444,.44444,.04169,0,.26667],710:[0,.69444,.0799,0,.5],711:[0,.63194,.08432,0,.5],713:[0,.60889,.08776,0,.5],714:[0,.69444,.09205,0,.5],715:[0,.69444,0,0,.5],728:[0,.69444,.09483,0,.5],729:[0,.67937,.07774,0,.27778],730:[0,.69444,0,0,.73752],732:[0,.67659,.08826,0,.5],733:[0,.69444,.09205,0,.5],915:[0,.69444,.13372,0,.54167],916:[0,.69444,0,0,.83334],920:[0,.69444,.07555,0,.77778],923:[0,.69444,0,0,.61111],926:[0,.69444,.12816,0,.66667],928:[0,.69444,.08094,0,.70834],931:[0,.69444,.11983,0,.72222],933:[0,.69444,.09031,0,.77778],934:[0,.69444,.04603,0,.72222],936:[0,.69444,.09031,0,.77778],937:[0,.69444,.08293,0,.72222],8211:[0,.44444,.08616,0,.5],8212:[0,.44444,.08616,0,1],8216:[0,.69444,.07816,0,.27778],8217:[0,.69444,.07816,0,.27778],8220:[0,.69444,.14205,0,.5],8221:[0,.69444,.00316,0,.5]},"SansSerif-Regular":{32:[0,0,0,0,.25],33:[0,.69444,0,0,.31945],34:[0,.69444,0,0,.5],35:[.19444,.69444,0,0,.83334],36:[.05556,.75,0,0,.5],37:[.05556,.75,0,0,.83334],38:[0,.69444,0,0,.75834],39:[0,.69444,0,0,.27778],40:[.25,.75,0,0,.38889],41:[.25,.75,0,0,.38889],42:[0,.75,0,0,.5],43:[.08333,.58333,0,0,.77778],44:[.125,.08333,0,0,.27778],45:[0,.44444,0,0,.33333],46:[0,.08333,0,0,.27778],47:[.25,.75,0,0,.5],48:[0,.65556,0,0,.5],49:[0,.65556,0,0,.5],50:[0,.65556,0,0,.5],51:[0,.65556,0,0,.5],52:[0,.65556,0,0,.5],53:[0,.65556,0,0,.5],54:[0,.65556,0,0,.5],55:[0,.65556,0,0,.5],56:[0,.65556,0,0,.5],57:[0,.65556,0,0,.5],58:[0,.44444,0,0,.27778],59:[.125,.44444,0,0,.27778],61:[-.13,.37,0,0,.77778],63:[0,.69444,0,0,.47222],64:[0,.69444,0,0,.66667],65:[0,.69444,0,0,.66667],66:[0,.69444,0,0,.66667],67:[0,.69444,0,0,.63889],68:[0,.69444,0,0,.72223],69:[0,.69444,0,0,.59722],70:[0,.69444,0,0,.56945],71:[0,.69444,0,0,.66667],72:[0,.69444,0,0,.70834],73:[0,.69444,0,0,.27778],74:[0,.69444,0,0,.47222],75:[0,.69444,0,0,.69445],76:[0,.69444,0,0,.54167],77:[0,.69444,0,0,.875],78:[0,.69444,0,0,.70834],79:[0,.69444,0,0,.73611],80:[0,.69444,0,0,.63889],81:[.125,.69444,0,0,.73611],82:[0,.69444,0,0,.64584],83:[0,.69444,0,0,.55556],84:[0,.69444,0,0,.68056],85:[0,.69444,0,0,.6875],86:[0,.69444,.01389,0,.66667],87:[0,.69444,.01389,0,.94445],88:[0,.69444,0,0,.66667],89:[0,.69444,.025,0,.66667],90:[0,.69444,0,0,.61111],91:[.25,.75,0,0,.28889],93:[.25,.75,0,0,.28889],94:[0,.69444,0,0,.5],95:[.35,.09444,.02778,0,.5],97:[0,.44444,0,0,.48056],98:[0,.69444,0,0,.51667],99:[0,.44444,0,0,.44445],100:[0,.69444,0,0,.51667],101:[0,.44444,0,0,.44445],102:[0,.69444,.06944,0,.30556],103:[.19444,.44444,.01389,0,.5],104:[0,.69444,0,0,.51667],105:[0,.67937,0,0,.23889],106:[.19444,.67937,0,0,.26667],107:[0,.69444,0,0,.48889],108:[0,.69444,0,0,.23889],109:[0,.44444,0,0,.79445],110:[0,.44444,0,0,.51667],111:[0,.44444,0,0,.5],112:[.19444,.44444,0,0,.51667],113:[.19444,.44444,0,0,.51667],114:[0,.44444,.01389,0,.34167],115:[0,.44444,0,0,.38333],116:[0,.57143,0,0,.36111],117:[0,.44444,0,0,.51667],118:[0,.44444,.01389,0,.46111],119:[0,.44444,.01389,0,.68334],120:[0,.44444,0,0,.46111],121:[.19444,.44444,.01389,0,.46111],122:[0,.44444,0,0,.43472],126:[.35,.32659,0,0,.5],160:[0,0,0,0,.25],168:[0,.67937,0,0,.5],176:[0,.69444,0,0,.66667],184:[.17014,0,0,0,.44445],305:[0,.44444,0,0,.23889],567:[.19444,.44444,0,0,.26667],710:[0,.69444,0,0,.5],711:[0,.63194,0,0,.5],713:[0,.60889,0,0,.5],714:[0,.69444,0,0,.5],715:[0,.69444,0,0,.5],728:[0,.69444,0,0,.5],729:[0,.67937,0,0,.27778],730:[0,.69444,0,0,.66667],732:[0,.67659,0,0,.5],733:[0,.69444,0,0,.5],915:[0,.69444,0,0,.54167],916:[0,.69444,0,0,.83334],920:[0,.69444,0,0,.77778],923:[0,.69444,0,0,.61111],926:[0,.69444,0,0,.66667],928:[0,.69444,0,0,.70834],931:[0,.69444,0,0,.72222],933:[0,.69444,0,0,.77778],934:[0,.69444,0,0,.72222],936:[0,.69444,0,0,.77778],937:[0,.69444,0,0,.72222],8211:[0,.44444,.02778,0,.5],8212:[0,.44444,.02778,0,1],8216:[0,.69444,0,0,.27778],8217:[0,.69444,0,0,.27778],8220:[0,.69444,0,0,.5],8221:[0,.69444,0,0,.5]},"Script-Regular":{32:[0,0,0,0,.25],65:[0,.7,.22925,0,.80253],66:[0,.7,.04087,0,.90757],67:[0,.7,.1689,0,.66619],68:[0,.7,.09371,0,.77443],69:[0,.7,.18583,0,.56162],70:[0,.7,.13634,0,.89544],71:[0,.7,.17322,0,.60961],72:[0,.7,.29694,0,.96919],73:[0,.7,.19189,0,.80907],74:[.27778,.7,.19189,0,1.05159],75:[0,.7,.31259,0,.91364],76:[0,.7,.19189,0,.87373],77:[0,.7,.15981,0,1.08031],78:[0,.7,.3525,0,.9015],79:[0,.7,.08078,0,.73787],80:[0,.7,.08078,0,1.01262],81:[0,.7,.03305,0,.88282],82:[0,.7,.06259,0,.85],83:[0,.7,.19189,0,.86767],84:[0,.7,.29087,0,.74697],85:[0,.7,.25815,0,.79996],86:[0,.7,.27523,0,.62204],87:[0,.7,.27523,0,.80532],88:[0,.7,.26006,0,.94445],89:[0,.7,.2939,0,.70961],90:[0,.7,.24037,0,.8212],160:[0,0,0,0,.25]},"Size1-Regular":{32:[0,0,0,0,.25],40:[.35001,.85,0,0,.45834],41:[.35001,.85,0,0,.45834],47:[.35001,.85,0,0,.57778],91:[.35001,.85,0,0,.41667],92:[.35001,.85,0,0,.57778],93:[.35001,.85,0,0,.41667],123:[.35001,.85,0,0,.58334],125:[.35001,.85,0,0,.58334],160:[0,0,0,0,.25],710:[0,.72222,0,0,.55556],732:[0,.72222,0,0,.55556],770:[0,.72222,0,0,.55556],771:[0,.72222,0,0,.55556],8214:[-99e-5,.601,0,0,.77778],8593:[1e-5,.6,0,0,.66667],8595:[1e-5,.6,0,0,.66667],8657:[1e-5,.6,0,0,.77778],8659:[1e-5,.6,0,0,.77778],8719:[.25001,.75,0,0,.94445],8720:[.25001,.75,0,0,.94445],8721:[.25001,.75,0,0,1.05556],8730:[.35001,.85,0,0,1],8739:[-.00599,.606,0,0,.33333],8741:[-.00599,.606,0,0,.55556],8747:[.30612,.805,.19445,0,.47222],8748:[.306,.805,.19445,0,.47222],8749:[.306,.805,.19445,0,.47222],8750:[.30612,.805,.19445,0,.47222],8896:[.25001,.75,0,0,.83334],8897:[.25001,.75,0,0,.83334],8898:[.25001,.75,0,0,.83334],8899:[.25001,.75,0,0,.83334],8968:[.35001,.85,0,0,.47222],8969:[.35001,.85,0,0,.47222],8970:[.35001,.85,0,0,.47222],8971:[.35001,.85,0,0,.47222],9168:[-99e-5,.601,0,0,.66667],10216:[.35001,.85,0,0,.47222],10217:[.35001,.85,0,0,.47222],10752:[.25001,.75,0,0,1.11111],10753:[.25001,.75,0,0,1.11111],10754:[.25001,.75,0,0,1.11111],10756:[.25001,.75,0,0,.83334],10758:[.25001,.75,0,0,.83334]},"Size2-Regular":{32:[0,0,0,0,.25],40:[.65002,1.15,0,0,.59722],41:[.65002,1.15,0,0,.59722],47:[.65002,1.15,0,0,.81111],91:[.65002,1.15,0,0,.47222],92:[.65002,1.15,0,0,.81111],93:[.65002,1.15,0,0,.47222],123:[.65002,1.15,0,0,.66667],125:[.65002,1.15,0,0,.66667],160:[0,0,0,0,.25],710:[0,.75,0,0,1],732:[0,.75,0,0,1],770:[0,.75,0,0,1],771:[0,.75,0,0,1],8719:[.55001,1.05,0,0,1.27778],8720:[.55001,1.05,0,0,1.27778],8721:[.55001,1.05,0,0,1.44445],8730:[.65002,1.15,0,0,1],8747:[.86225,1.36,.44445,0,.55556],8748:[.862,1.36,.44445,0,.55556],8749:[.862,1.36,.44445,0,.55556],8750:[.86225,1.36,.44445,0,.55556],8896:[.55001,1.05,0,0,1.11111],8897:[.55001,1.05,0,0,1.11111],8898:[.55001,1.05,0,0,1.11111],8899:[.55001,1.05,0,0,1.11111],8968:[.65002,1.15,0,0,.52778],8969:[.65002,1.15,0,0,.52778],8970:[.65002,1.15,0,0,.52778],8971:[.65002,1.15,0,0,.52778],10216:[.65002,1.15,0,0,.61111],10217:[.65002,1.15,0,0,.61111],10752:[.55001,1.05,0,0,1.51112],10753:[.55001,1.05,0,0,1.51112],10754:[.55001,1.05,0,0,1.51112],10756:[.55001,1.05,0,0,1.11111],10758:[.55001,1.05,0,0,1.11111]},"Size3-Regular":{32:[0,0,0,0,.25],40:[.95003,1.45,0,0,.73611],41:[.95003,1.45,0,0,.73611],47:[.95003,1.45,0,0,1.04445],91:[.95003,1.45,0,0,.52778],92:[.95003,1.45,0,0,1.04445],93:[.95003,1.45,0,0,.52778],123:[.95003,1.45,0,0,.75],125:[.95003,1.45,0,0,.75],160:[0,0,0,0,.25],710:[0,.75,0,0,1.44445],732:[0,.75,0,0,1.44445],770:[0,.75,0,0,1.44445],771:[0,.75,0,0,1.44445],8730:[.95003,1.45,0,0,1],8968:[.95003,1.45,0,0,.58334],8969:[.95003,1.45,0,0,.58334],8970:[.95003,1.45,0,0,.58334],8971:[.95003,1.45,0,0,.58334],10216:[.95003,1.45,0,0,.75],10217:[.95003,1.45,0,0,.75]},"Size4-Regular":{32:[0,0,0,0,.25],40:[1.25003,1.75,0,0,.79167],41:[1.25003,1.75,0,0,.79167],47:[1.25003,1.75,0,0,1.27778],91:[1.25003,1.75,0,0,.58334],92:[1.25003,1.75,0,0,1.27778],93:[1.25003,1.75,0,0,.58334],123:[1.25003,1.75,0,0,.80556],125:[1.25003,1.75,0,0,.80556],160:[0,0,0,0,.25],710:[0,.825,0,0,1.8889],732:[0,.825,0,0,1.8889],770:[0,.825,0,0,1.8889],771:[0,.825,0,0,1.8889],8730:[1.25003,1.75,0,0,1],8968:[1.25003,1.75,0,0,.63889],8969:[1.25003,1.75,0,0,.63889],8970:[1.25003,1.75,0,0,.63889],8971:[1.25003,1.75,0,0,.63889],9115:[.64502,1.155,0,0,.875],9116:[1e-5,.6,0,0,.875],9117:[.64502,1.155,0,0,.875],9118:[.64502,1.155,0,0,.875],9119:[1e-5,.6,0,0,.875],9120:[.64502,1.155,0,0,.875],9121:[.64502,1.155,0,0,.66667],9122:[-99e-5,.601,0,0,.66667],9123:[.64502,1.155,0,0,.66667],9124:[.64502,1.155,0,0,.66667],9125:[-99e-5,.601,0,0,.66667],9126:[.64502,1.155,0,0,.66667],9127:[1e-5,.9,0,0,.88889],9128:[.65002,1.15,0,0,.88889],9129:[.90001,0,0,0,.88889],9130:[0,.3,0,0,.88889],9131:[1e-5,.9,0,0,.88889],9132:[.65002,1.15,0,0,.88889],9133:[.90001,0,0,0,.88889],9143:[.88502,.915,0,0,1.05556],10216:[1.25003,1.75,0,0,.80556],10217:[1.25003,1.75,0,0,.80556],57344:[-.00499,.605,0,0,1.05556],57345:[-.00499,.605,0,0,1.05556],57680:[0,.12,0,0,.45],57681:[0,.12,0,0,.45],57682:[0,.12,0,0,.45],57683:[0,.12,0,0,.45]},"Typewriter-Regular":{32:[0,0,0,0,.525],33:[0,.61111,0,0,.525],34:[0,.61111,0,0,.525],35:[0,.61111,0,0,.525],36:[.08333,.69444,0,0,.525],37:[.08333,.69444,0,0,.525],38:[0,.61111,0,0,.525],39:[0,.61111,0,0,.525],40:[.08333,.69444,0,0,.525],41:[.08333,.69444,0,0,.525],42:[0,.52083,0,0,.525],43:[-.08056,.53055,0,0,.525],44:[.13889,.125,0,0,.525],45:[-.08056,.53055,0,0,.525],46:[0,.125,0,0,.525],47:[.08333,.69444,0,0,.525],48:[0,.61111,0,0,.525],49:[0,.61111,0,0,.525],50:[0,.61111,0,0,.525],51:[0,.61111,0,0,.525],52:[0,.61111,0,0,.525],53:[0,.61111,0,0,.525],54:[0,.61111,0,0,.525],55:[0,.61111,0,0,.525],56:[0,.61111,0,0,.525],57:[0,.61111,0,0,.525],58:[0,.43056,0,0,.525],59:[.13889,.43056,0,0,.525],60:[-.05556,.55556,0,0,.525],61:[-.19549,.41562,0,0,.525],62:[-.05556,.55556,0,0,.525],63:[0,.61111,0,0,.525],64:[0,.61111,0,0,.525],65:[0,.61111,0,0,.525],66:[0,.61111,0,0,.525],67:[0,.61111,0,0,.525],68:[0,.61111,0,0,.525],69:[0,.61111,0,0,.525],70:[0,.61111,0,0,.525],71:[0,.61111,0,0,.525],72:[0,.61111,0,0,.525],73:[0,.61111,0,0,.525],74:[0,.61111,0,0,.525],75:[0,.61111,0,0,.525],76:[0,.61111,0,0,.525],77:[0,.61111,0,0,.525],78:[0,.61111,0,0,.525],79:[0,.61111,0,0,.525],80:[0,.61111,0,0,.525],81:[.13889,.61111,0,0,.525],82:[0,.61111,0,0,.525],83:[0,.61111,0,0,.525],84:[0,.61111,0,0,.525],85:[0,.61111,0,0,.525],86:[0,.61111,0,0,.525],87:[0,.61111,0,0,.525],88:[0,.61111,0,0,.525],89:[0,.61111,0,0,.525],90:[0,.61111,0,0,.525],91:[.08333,.69444,0,0,.525],92:[.08333,.69444,0,0,.525],93:[.08333,.69444,0,0,.525],94:[0,.61111,0,0,.525],95:[.09514,0,0,0,.525],96:[0,.61111,0,0,.525],97:[0,.43056,0,0,.525],98:[0,.61111,0,0,.525],99:[0,.43056,0,0,.525],100:[0,.61111,0,0,.525],101:[0,.43056,0,0,.525],102:[0,.61111,0,0,.525],103:[.22222,.43056,0,0,.525],104:[0,.61111,0,0,.525],105:[0,.61111,0,0,.525],106:[.22222,.61111,0,0,.525],107:[0,.61111,0,0,.525],108:[0,.61111,0,0,.525],109:[0,.43056,0,0,.525],110:[0,.43056,0,0,.525],111:[0,.43056,0,0,.525],112:[.22222,.43056,0,0,.525],113:[.22222,.43056,0,0,.525],114:[0,.43056,0,0,.525],115:[0,.43056,0,0,.525],116:[0,.55358,0,0,.525],117:[0,.43056,0,0,.525],118:[0,.43056,0,0,.525],119:[0,.43056,0,0,.525],120:[0,.43056,0,0,.525],121:[.22222,.43056,0,0,.525],122:[0,.43056,0,0,.525],123:[.08333,.69444,0,0,.525],124:[.08333,.69444,0,0,.525],125:[.08333,.69444,0,0,.525],126:[0,.61111,0,0,.525],127:[0,.61111,0,0,.525],160:[0,0,0,0,.525],176:[0,.61111,0,0,.525],184:[.19445,0,0,0,.525],305:[0,.43056,0,0,.525],567:[.22222,.43056,0,0,.525],711:[0,.56597,0,0,.525],713:[0,.56555,0,0,.525],714:[0,.61111,0,0,.525],715:[0,.61111,0,0,.525],728:[0,.61111,0,0,.525],730:[0,.61111,0,0,.525],770:[0,.61111,0,0,.525],771:[0,.61111,0,0,.525],776:[0,.61111,0,0,.525],915:[0,.61111,0,0,.525],916:[0,.61111,0,0,.525],920:[0,.61111,0,0,.525],923:[0,.61111,0,0,.525],926:[0,.61111,0,0,.525],928:[0,.61111,0,0,.525],931:[0,.61111,0,0,.525],933:[0,.61111,0,0,.525],934:[0,.61111,0,0,.525],936:[0,.61111,0,0,.525],937:[0,.61111,0,0,.525],8216:[0,.61111,0,0,.525],8217:[0,.61111,0,0,.525],8242:[0,.61111,0,0,.525],9251:[.11111,.21944,0,0,.525]}},q={slant:[.25,.25,.25],space:[0,0,0],stretch:[0,0,0],shrink:[0,0,0],xHeight:[.431,.431,.431],quad:[1,1.171,1.472],extraSpace:[0,0,0],num1:[.677,.732,.925],num2:[.394,.384,.387],num3:[.444,.471,.504],denom1:[.686,.752,1.025],denom2:[.345,.344,.532],sup1:[.413,.503,.504],sup2:[.363,.431,.404],sup3:[.289,.286,.294],sub1:[.15,.143,.2],sub2:[.247,.286,.4],supDrop:[.386,.353,.494],subDrop:[.05,.071,.1],delim1:[2.39,1.7,1.98],delim2:[1.01,1.157,1.42],axisHeight:[.25,.25,.25],defaultRuleThickness:[.04,.049,.049],bigOpSpacing1:[.111,.111,.111],bigOpSpacing2:[.166,.166,.166],bigOpSpacing3:[.2,.2,.2],bigOpSpacing4:[.6,.611,.611],bigOpSpacing5:[.1,.143,.143],sqrtRuleThickness:[.04,.04,.04],ptPerEm:[10,10,10],doubleRuleSep:[.2,.2,.2],arrayRuleWidth:[.04,.04,.04],fboxsep:[.3,.3,.3],fboxrule:[.04,.04,.04]},I={"\xc5":"A","\xd0":"D","\xde":"o","\xe5":"a","\xf0":"d","\xfe":"o","\u0410":"A","\u0411":"B","\u0412":"B","\u0413":"F","\u0414":"A","\u0415":"E","\u0416":"K","\u0417":"3","\u0418":"N","\u0419":"N","\u041a":"K","\u041b":"N","\u041c":"M","\u041d":"H","\u041e":"O","\u041f":"N","\u0420":"P","\u0421":"C","\u0422":"T","\u0423":"y","\u0424":"O","\u0425":"X","\u0426":"U","\u0427":"h","\u0428":"W","\u0429":"W","\u042a":"B","\u042b":"X","\u042c":"B","\u042d":"3","\u042e":"X","\u042f":"R","\u0430":"a","\u0431":"b","\u0432":"a","\u0433":"r","\u0434":"y","\u0435":"e","\u0436":"m","\u0437":"e","\u0438":"n","\u0439":"n","\u043a":"n","\u043b":"n","\u043c":"m","\u043d":"n","\u043e":"o","\u043f":"n","\u0440":"p","\u0441":"c","\u0442":"o","\u0443":"y","\u0444":"b","\u0445":"x","\u0446":"n","\u0447":"n","\u0448":"w","\u0449":"w","\u044a":"a","\u044b":"m","\u044c":"a","\u044d":"e","\u044e":"m","\u044f":"r"};function R(e,t,r){if(!N[t])throw new Error("Font metrics not found for font: "+t+".");var a=e.charCodeAt(0),n=N[t][a];if(!n&&e[0]in I&&(a=I[e[0]].charCodeAt(0),n=N[t][a]),n||"text"!==r||A(a)&&(n=N[t][77]),n)return{depth:n[0],height:n[1],italic:n[2],skew:n[3],width:n[4]}}var H={};var O=[[1,1,1],[2,1,1],[3,1,1],[4,2,1],[5,2,1],[6,3,1],[7,4,2],[8,6,3],[9,7,6],[10,8,7],[11,10,9]],E=[.5,.6,.7,.8,.9,1,1.2,1.44,1.728,2.074,2.488],L=function(e,t){return t.size<2?e:O[e-1][t.size-1]};class D{constructor(e){this.style=void 0,this.color=void 0,this.size=void 0,this.textSize=void 0,this.phantom=void 0,this.font=void 0,this.fontFamily=void 0,this.fontWeight=void 0,this.fontShape=void 0,this.sizeMultiplier=void 0,this.maxSize=void 0,this.minRuleThickness=void 0,this._fontMetrics=void 0,this.style=e.style,this.color=e.color,this.size=e.size||D.BASESIZE,this.textSize=e.textSize||this.size,this.phantom=!!e.phantom,this.font=e.font||"",this.fontFamily=e.fontFamily||"",this.fontWeight=e.fontWeight||"",this.fontShape=e.fontShape||"",this.sizeMultiplier=E[this.size-1],this.maxSize=e.maxSize,this.minRuleThickness=e.minRuleThickness,this._fontMetrics=void 0}extend(e){var t={style:this.style,size:this.size,textSize:this.textSize,color:this.color,phantom:this.phantom,font:this.font,fontFamily:this.fontFamily,fontWeight:this.fontWeight,fontShape:this.fontShape,maxSize:this.maxSize,minRuleThickness:this.minRuleThickness};for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r]);return new D(t)}havingStyle(e){return this.style===e?this:this.extend({style:e,size:L(this.textSize,e)})}havingCrampedStyle(){return this.havingStyle(this.style.cramp())}havingSize(e){return this.size===e&&this.textSize===e?this:this.extend({style:this.style.text(),size:e,textSize:e,sizeMultiplier:E[e-1]})}havingBaseStyle(e){e=e||this.style.text();var t=L(D.BASESIZE,e);return this.size===t&&this.textSize===D.BASESIZE&&this.style===e?this:this.extend({style:e,size:t})}havingBaseSizing(){var e;switch(this.style.id){case 4:case 5:e=3;break;case 6:case 7:e=1;break;default:e=6}return this.extend({style:this.style.text(),size:e})}withColor(e){return this.extend({color:e})}withPhantom(){return this.extend({phantom:!0})}withFont(e){return this.extend({font:e})}withTextFontFamily(e){return this.extend({fontFamily:e,font:""})}withTextFontWeight(e){return this.extend({fontWeight:e,font:""})}withTextFontShape(e){return this.extend({fontShape:e,font:""})}sizingClasses(e){return e.size!==this.size?["sizing","reset-size"+e.size,"size"+this.size]:[]}baseSizingClasses(){return this.size!==D.BASESIZE?["sizing","reset-size"+this.size,"size"+D.BASESIZE]:[]}fontMetrics(){return this._fontMetrics||(this._fontMetrics=function(e){var t;if(!H[t=e>=5?0:e>=3?1:2]){var r=H[t]={cssEmPerMu:q.quad[t]/18};for(var a in q)q.hasOwnProperty(a)&&(r[a]=q[a][t])}return H[t]}(this.size)),this._fontMetrics}getColor(){return this.phantom?"transparent":this.color}}D.BASESIZE=6;var V={pt:1,mm:7227/2540,cm:7227/254,in:72.27,bp:1.00375,pc:12,dd:1238/1157,cc:14856/1157,nd:685/642,nc:1370/107,sp:1/65536,px:1.00375},P={ex:!0,em:!0,mu:!0},F=function(e){return"string"!=typeof e&&(e=e.unit),e in V||e in P||"ex"===e},G=function(e,t){var r;if(e.unit in V)r=V[e.unit]/t.fontMetrics().ptPerEm/t.sizeMultiplier;else if("mu"===e.unit)r=t.fontMetrics().cssEmPerMu;else{var a;if(a=t.style.isTight()?t.havingStyle(t.style.text()):t,"ex"===e.unit)r=a.fontMetrics().xHeight;else{if("em"!==e.unit)throw new o("Invalid unit: '"+e.unit+"'");r=a.fontMetrics().quad}a!==t&&(r*=a.sizeMultiplier/t.sizeMultiplier)}return Math.min(e.number*r,t.maxSize)},U=function(e){return+e.toFixed(4)+"em"},Y=function(e){return e.filter((e=>e)).join(" ")},X=function(e,t,r){if(this.classes=e||[],this.attributes={},this.height=0,this.depth=0,this.maxFontSize=0,this.style=r||{},t){t.style.isTight()&&this.classes.push("mtight");var a=t.getColor();a&&(this.style.color=a)}},W=function(e){var t=document.createElement(e);for(var r in t.className=Y(this.classes),this.style)this.style.hasOwnProperty(r)&&(t.style[r]=this.style[r]);for(var a in this.attributes)this.attributes.hasOwnProperty(a)&&t.setAttribute(a,this.attributes[a]);for(var n=0;n"};class j{constructor(e,t,r,a){this.children=void 0,this.attributes=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.width=void 0,this.maxFontSize=void 0,this.style=void 0,X.call(this,e,r,a),this.children=t||[]}setAttribute(e,t){this.attributes[e]=t}hasClass(e){return c.contains(this.classes,e)}toNode(){return W.call(this,"span")}toMarkup(){return _.call(this,"span")}}class ${constructor(e,t,r,a){this.children=void 0,this.attributes=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.maxFontSize=void 0,this.style=void 0,X.call(this,t,a),this.children=r||[],this.setAttribute("href",e)}setAttribute(e,t){this.attributes[e]=t}hasClass(e){return c.contains(this.classes,e)}toNode(){return W.call(this,"a")}toMarkup(){return _.call(this,"a")}}class Z{constructor(e,t,r){this.src=void 0,this.alt=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.maxFontSize=void 0,this.style=void 0,this.alt=t,this.src=e,this.classes=["mord"],this.style=r}hasClass(e){return c.contains(this.classes,e)}toNode(){var e=document.createElement("img");for(var t in e.src=this.src,e.alt=this.alt,e.className="mord",this.style)this.style.hasOwnProperty(t)&&(e.style[t]=this.style[t]);return e}toMarkup(){var e=''+c.escape(this.alt)+'=n[0]&&e<=n[1])return r.name}return null}(this.text.charCodeAt(0));l&&this.classes.push(l+"_fallback"),/[\xee\xef\xed\xec]/.test(this.text)&&(this.text=K[this.text])}hasClass(e){return c.contains(this.classes,e)}toNode(){var e=document.createTextNode(this.text),t=null;for(var r in this.italic>0&&((t=document.createElement("span")).style.marginRight=U(this.italic)),this.classes.length>0&&((t=t||document.createElement("span")).className=Y(this.classes)),this.style)this.style.hasOwnProperty(r)&&((t=t||document.createElement("span")).style[r]=this.style[r]);return t?(t.appendChild(e),t):e}toMarkup(){var e=!1,t="0&&(r+="margin-right:"+this.italic+"em;"),this.style)this.style.hasOwnProperty(a)&&(r+=c.hyphenate(a)+":"+this.style[a]+";");r&&(e=!0,t+=' style="'+c.escape(r)+'"');var n=c.escape(this.text);return e?(t+=">",t+=n,t+=""):n}}class Q{constructor(e,t){this.children=void 0,this.attributes=void 0,this.children=e||[],this.attributes=t||{}}toNode(){var e=document.createElementNS("http://www.w3.org/2000/svg","svg");for(var t in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,t)&&e.setAttribute(t,this.attributes[t]);for(var r=0;r':''}}class te{constructor(e){this.attributes=void 0,this.attributes=e||{}}toNode(){var e=document.createElementNS("http://www.w3.org/2000/svg","line");for(var t in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,t)&&e.setAttribute(t,this.attributes[t]);return e}toMarkup(){var e="","\\gt",!0),oe(se,he,ye,"\u2208","\\in",!0),oe(se,he,ye,"\ue020","\\@not"),oe(se,he,ye,"\u2282","\\subset",!0),oe(se,he,ye,"\u2283","\\supset",!0),oe(se,he,ye,"\u2286","\\subseteq",!0),oe(se,he,ye,"\u2287","\\supseteq",!0),oe(se,me,ye,"\u2288","\\nsubseteq",!0),oe(se,me,ye,"\u2289","\\nsupseteq",!0),oe(se,he,ye,"\u22a8","\\models"),oe(se,he,ye,"\u2190","\\leftarrow",!0),oe(se,he,ye,"\u2264","\\le"),oe(se,he,ye,"\u2264","\\leq",!0),oe(se,he,ye,"<","\\lt",!0),oe(se,he,ye,"\u2192","\\rightarrow",!0),oe(se,he,ye,"\u2192","\\to"),oe(se,me,ye,"\u2271","\\ngeq",!0),oe(se,me,ye,"\u2270","\\nleq",!0),oe(se,he,xe,"\xa0","\\ "),oe(se,he,xe,"\xa0","\\space"),oe(se,he,xe,"\xa0","\\nobreakspace"),oe(le,he,xe,"\xa0","\\ "),oe(le,he,xe,"\xa0"," "),oe(le,he,xe,"\xa0","\\space"),oe(le,he,xe,"\xa0","\\nobreakspace"),oe(se,he,xe,null,"\\nobreak"),oe(se,he,xe,null,"\\allowbreak"),oe(se,he,be,",",","),oe(se,he,be,";",";"),oe(se,me,pe,"\u22bc","\\barwedge",!0),oe(se,me,pe,"\u22bb","\\veebar",!0),oe(se,he,pe,"\u2299","\\odot",!0),oe(se,he,pe,"\u2295","\\oplus",!0),oe(se,he,pe,"\u2297","\\otimes",!0),oe(se,he,we,"\u2202","\\partial",!0),oe(se,he,pe,"\u2298","\\oslash",!0),oe(se,me,pe,"\u229a","\\circledcirc",!0),oe(se,me,pe,"\u22a1","\\boxdot",!0),oe(se,he,pe,"\u25b3","\\bigtriangleup"),oe(se,he,pe,"\u25bd","\\bigtriangledown"),oe(se,he,pe,"\u2020","\\dagger"),oe(se,he,pe,"\u22c4","\\diamond"),oe(se,he,pe,"\u22c6","\\star"),oe(se,he,pe,"\u25c3","\\triangleleft"),oe(se,he,pe,"\u25b9","\\triangleright"),oe(se,he,ve,"{","\\{"),oe(le,he,we,"{","\\{"),oe(le,he,we,"{","\\textbraceleft"),oe(se,he,ue,"}","\\}"),oe(le,he,we,"}","\\}"),oe(le,he,we,"}","\\textbraceright"),oe(se,he,ve,"{","\\lbrace"),oe(se,he,ue,"}","\\rbrace"),oe(se,he,ve,"[","\\lbrack",!0),oe(le,he,we,"[","\\lbrack",!0),oe(se,he,ue,"]","\\rbrack",!0),oe(le,he,we,"]","\\rbrack",!0),oe(se,he,ve,"(","\\lparen",!0),oe(se,he,ue,")","\\rparen",!0),oe(le,he,we,"<","\\textless",!0),oe(le,he,we,">","\\textgreater",!0),oe(se,he,ve,"\u230a","\\lfloor",!0),oe(se,he,ue,"\u230b","\\rfloor",!0),oe(se,he,ve,"\u2308","\\lceil",!0),oe(se,he,ue,"\u2309","\\rceil",!0),oe(se,he,we,"\\","\\backslash"),oe(se,he,we,"\u2223","|"),oe(se,he,we,"\u2223","\\vert"),oe(le,he,we,"|","\\textbar",!0),oe(se,he,we,"\u2225","\\|"),oe(se,he,we,"\u2225","\\Vert"),oe(le,he,we,"\u2225","\\textbardbl"),oe(le,he,we,"~","\\textasciitilde"),oe(le,he,we,"\\","\\textbackslash"),oe(le,he,we,"^","\\textasciicircum"),oe(se,he,ye,"\u2191","\\uparrow",!0),oe(se,he,ye,"\u21d1","\\Uparrow",!0),oe(se,he,ye,"\u2193","\\downarrow",!0),oe(se,he,ye,"\u21d3","\\Downarrow",!0),oe(se,he,ye,"\u2195","\\updownarrow",!0),oe(se,he,ye,"\u21d5","\\Updownarrow",!0),oe(se,he,fe,"\u2210","\\coprod"),oe(se,he,fe,"\u22c1","\\bigvee"),oe(se,he,fe,"\u22c0","\\bigwedge"),oe(se,he,fe,"\u2a04","\\biguplus"),oe(se,he,fe,"\u22c2","\\bigcap"),oe(se,he,fe,"\u22c3","\\bigcup"),oe(se,he,fe,"\u222b","\\int"),oe(se,he,fe,"\u222b","\\intop"),oe(se,he,fe,"\u222c","\\iint"),oe(se,he,fe,"\u222d","\\iiint"),oe(se,he,fe,"\u220f","\\prod"),oe(se,he,fe,"\u2211","\\sum"),oe(se,he,fe,"\u2a02","\\bigotimes"),oe(se,he,fe,"\u2a01","\\bigoplus"),oe(se,he,fe,"\u2a00","\\bigodot"),oe(se,he,fe,"\u222e","\\oint"),oe(se,he,fe,"\u222f","\\oiint"),oe(se,he,fe,"\u2230","\\oiiint"),oe(se,he,fe,"\u2a06","\\bigsqcup"),oe(se,he,fe,"\u222b","\\smallint"),oe(le,he,de,"\u2026","\\textellipsis"),oe(se,he,de,"\u2026","\\mathellipsis"),oe(le,he,de,"\u2026","\\ldots",!0),oe(se,he,de,"\u2026","\\ldots",!0),oe(se,he,de,"\u22ef","\\@cdots",!0),oe(se,he,de,"\u22f1","\\ddots",!0),oe(se,he,we,"\u22ee","\\varvdots"),oe(se,he,ce,"\u02ca","\\acute"),oe(se,he,ce,"\u02cb","\\grave"),oe(se,he,ce,"\xa8","\\ddot"),oe(se,he,ce,"~","\\tilde"),oe(se,he,ce,"\u02c9","\\bar"),oe(se,he,ce,"\u02d8","\\breve"),oe(se,he,ce,"\u02c7","\\check"),oe(se,he,ce,"^","\\hat"),oe(se,he,ce,"\u20d7","\\vec"),oe(se,he,ce,"\u02d9","\\dot"),oe(se,he,ce,"\u02da","\\mathring"),oe(se,he,ge,"\ue131","\\@imath"),oe(se,he,ge,"\ue237","\\@jmath"),oe(se,he,we,"\u0131","\u0131"),oe(se,he,we,"\u0237","\u0237"),oe(le,he,we,"\u0131","\\i",!0),oe(le,he,we,"\u0237","\\j",!0),oe(le,he,we,"\xdf","\\ss",!0),oe(le,he,we,"\xe6","\\ae",!0),oe(le,he,we,"\u0153","\\oe",!0),oe(le,he,we,"\xf8","\\o",!0),oe(le,he,we,"\xc6","\\AE",!0),oe(le,he,we,"\u0152","\\OE",!0),oe(le,he,we,"\xd8","\\O",!0),oe(le,he,ce,"\u02ca","\\'"),oe(le,he,ce,"\u02cb","\\`"),oe(le,he,ce,"\u02c6","\\^"),oe(le,he,ce,"\u02dc","\\~"),oe(le,he,ce,"\u02c9","\\="),oe(le,he,ce,"\u02d8","\\u"),oe(le,he,ce,"\u02d9","\\."),oe(le,he,ce,"\xb8","\\c"),oe(le,he,ce,"\u02da","\\r"),oe(le,he,ce,"\u02c7","\\v"),oe(le,he,ce,"\xa8",'\\"'),oe(le,he,ce,"\u02dd","\\H"),oe(le,he,ce,"\u25ef","\\textcircled");var ke={"--":!0,"---":!0,"``":!0,"''":!0};oe(le,he,we,"\u2013","--",!0),oe(le,he,we,"\u2013","\\textendash"),oe(le,he,we,"\u2014","---",!0),oe(le,he,we,"\u2014","\\textemdash"),oe(le,he,we,"\u2018","`",!0),oe(le,he,we,"\u2018","\\textquoteleft"),oe(le,he,we,"\u2019","'",!0),oe(le,he,we,"\u2019","\\textquoteright"),oe(le,he,we,"\u201c","``",!0),oe(le,he,we,"\u201c","\\textquotedblleft"),oe(le,he,we,"\u201d","''",!0),oe(le,he,we,"\u201d","\\textquotedblright"),oe(se,he,we,"\xb0","\\degree",!0),oe(le,he,we,"\xb0","\\degree"),oe(le,he,we,"\xb0","\\textdegree",!0),oe(se,he,we,"\xa3","\\pounds"),oe(se,he,we,"\xa3","\\mathsterling",!0),oe(le,he,we,"\xa3","\\pounds"),oe(le,he,we,"\xa3","\\textsterling",!0),oe(se,me,we,"\u2720","\\maltese"),oe(le,me,we,"\u2720","\\maltese");for(var Se='0123456789/@."',Me=0;Me<14;Me++){var ze=Se.charAt(Me);oe(se,he,we,ze,ze)}for(var Ae='0123456789!@*()-=+";:?/.,',Te=0;Te<25;Te++){var Be=Ae.charAt(Te);oe(le,he,we,Be,Be)}for(var Ce="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",Ne=0;Ne<52;Ne++){var qe=Ce.charAt(Ne);oe(se,he,ge,qe,qe),oe(le,he,we,qe,qe)}oe(se,me,we,"C","\u2102"),oe(le,me,we,"C","\u2102"),oe(se,me,we,"H","\u210d"),oe(le,me,we,"H","\u210d"),oe(se,me,we,"N","\u2115"),oe(le,me,we,"N","\u2115"),oe(se,me,we,"P","\u2119"),oe(le,me,we,"P","\u2119"),oe(se,me,we,"Q","\u211a"),oe(le,me,we,"Q","\u211a"),oe(se,me,we,"R","\u211d"),oe(le,me,we,"R","\u211d"),oe(se,me,we,"Z","\u2124"),oe(le,me,we,"Z","\u2124"),oe(se,he,ge,"h","\u210e"),oe(le,he,ge,"h","\u210e");for(var Ie="",Re=0;Re<52;Re++){var He=Ce.charAt(Re);oe(se,he,ge,He,Ie=String.fromCharCode(55349,56320+Re)),oe(le,he,we,He,Ie),oe(se,he,ge,He,Ie=String.fromCharCode(55349,56372+Re)),oe(le,he,we,He,Ie),oe(se,he,ge,He,Ie=String.fromCharCode(55349,56424+Re)),oe(le,he,we,He,Ie),oe(se,he,ge,He,Ie=String.fromCharCode(55349,56580+Re)),oe(le,he,we,He,Ie),oe(se,he,ge,He,Ie=String.fromCharCode(55349,56684+Re)),oe(le,he,we,He,Ie),oe(se,he,ge,He,Ie=String.fromCharCode(55349,56736+Re)),oe(le,he,we,He,Ie),oe(se,he,ge,He,Ie=String.fromCharCode(55349,56788+Re)),oe(le,he,we,He,Ie),oe(se,he,ge,He,Ie=String.fromCharCode(55349,56840+Re)),oe(le,he,we,He,Ie),oe(se,he,ge,He,Ie=String.fromCharCode(55349,56944+Re)),oe(le,he,we,He,Ie),Re<26&&(oe(se,he,ge,He,Ie=String.fromCharCode(55349,56632+Re)),oe(le,he,we,He,Ie),oe(se,he,ge,He,Ie=String.fromCharCode(55349,56476+Re)),oe(le,he,we,He,Ie))}oe(se,he,ge,"k",Ie=String.fromCharCode(55349,56668)),oe(le,he,we,"k",Ie);for(var Oe=0;Oe<10;Oe++){var Ee=Oe.toString();oe(se,he,ge,Ee,Ie=String.fromCharCode(55349,57294+Oe)),oe(le,he,we,Ee,Ie),oe(se,he,ge,Ee,Ie=String.fromCharCode(55349,57314+Oe)),oe(le,he,we,Ee,Ie),oe(se,he,ge,Ee,Ie=String.fromCharCode(55349,57324+Oe)),oe(le,he,we,Ee,Ie),oe(se,he,ge,Ee,Ie=String.fromCharCode(55349,57334+Oe)),oe(le,he,we,Ee,Ie)}for(var Le="\xd0\xde\xfe",De=0;De<3;De++){var Ve=Le.charAt(De);oe(se,he,ge,Ve,Ve),oe(le,he,we,Ve,Ve)}var Pe=[["mathbf","textbf","Main-Bold"],["mathbf","textbf","Main-Bold"],["mathnormal","textit","Math-Italic"],["mathnormal","textit","Math-Italic"],["boldsymbol","boldsymbol","Main-BoldItalic"],["boldsymbol","boldsymbol","Main-BoldItalic"],["mathscr","textscr","Script-Regular"],["","",""],["","",""],["","",""],["mathfrak","textfrak","Fraktur-Regular"],["mathfrak","textfrak","Fraktur-Regular"],["mathbb","textbb","AMS-Regular"],["mathbb","textbb","AMS-Regular"],["mathboldfrak","textboldfrak","Fraktur-Regular"],["mathboldfrak","textboldfrak","Fraktur-Regular"],["mathsf","textsf","SansSerif-Regular"],["mathsf","textsf","SansSerif-Regular"],["mathboldsf","textboldsf","SansSerif-Bold"],["mathboldsf","textboldsf","SansSerif-Bold"],["mathitsf","textitsf","SansSerif-Italic"],["mathitsf","textitsf","SansSerif-Italic"],["","",""],["","",""],["mathtt","texttt","Typewriter-Regular"],["mathtt","texttt","Typewriter-Regular"]],Fe=[["mathbf","textbf","Main-Bold"],["","",""],["mathsf","textsf","SansSerif-Regular"],["mathboldsf","textboldsf","SansSerif-Bold"],["mathtt","texttt","Typewriter-Regular"]],Ge=function(e,t,r){return ie[r][e]&&ie[r][e].replace&&(e=ie[r][e].replace),{value:e,metrics:R(e,t,r)}},Ue=function(e,t,r,n,i){var o,s=Ge(e,t,r),l=s.metrics;if(e=s.value,l){var h=l.italic;("text"===r||n&&"mathit"===n.font)&&(h=0),o=new J(e,l.height,l.depth,h,l.skew,l.width,i)}else void 0!==a&&a.warn("No character metrics for '"+e+"' in style '"+t+"' and mode '"+r+"'"),o=new J(e,0,0,0,0,0,i);if(n){o.maxFontSize=n.sizeMultiplier,n.style.isTight()&&o.classes.push("mtight");var m=n.getColor();m&&(o.style.color=m)}return o},Ye=(e,t)=>{if(Y(e.classes)!==Y(t.classes)||e.skew!==t.skew||e.maxFontSize!==t.maxFontSize)return!1;if(1===e.classes.length){var r=e.classes[0];if("mbin"===r||"mord"===r)return!1}for(var a in e.style)if(e.style.hasOwnProperty(a)&&e.style[a]!==t.style[a])return!1;for(var n in t.style)if(t.style.hasOwnProperty(n)&&e.style[n]!==t.style[n])return!1;return!0},Xe=function(e){for(var t=0,r=0,a=0,n=0;nt&&(t=i.height),i.depth>r&&(r=i.depth),i.maxFontSize>a&&(a=i.maxFontSize)}e.height=t,e.depth=r,e.maxFontSize=a},We=function(e,t,r,a){var n=new j(e,t,r,a);return Xe(n),n},_e=(e,t,r,a)=>new j(e,t,r,a),je=function(e){var t=new C(e);return Xe(t),t},$e=function(e,t,r){var a="";switch(e){case"amsrm":a="AMS";break;case"textrm":a="Main";break;case"textsf":a="SansSerif";break;case"texttt":a="Typewriter";break;default:a=e}return a+"-"+("textbf"===t&&"textit"===r?"BoldItalic":"textbf"===t?"Bold":"textit"===t?"Italic":"Regular")},Ze={mathbf:{variant:"bold",fontName:"Main-Bold"},mathrm:{variant:"normal",fontName:"Main-Regular"},textit:{variant:"italic",fontName:"Main-Italic"},mathit:{variant:"italic",fontName:"Main-Italic"},mathnormal:{variant:"italic",fontName:"Math-Italic"},mathbb:{variant:"double-struck",fontName:"AMS-Regular"},mathcal:{variant:"script",fontName:"Caligraphic-Regular"},mathfrak:{variant:"fraktur",fontName:"Fraktur-Regular"},mathscr:{variant:"script",fontName:"Script-Regular"},mathsf:{variant:"sans-serif",fontName:"SansSerif-Regular"},mathtt:{variant:"monospace",fontName:"Typewriter-Regular"}},Ke={vec:["vec",.471,.714],oiintSize1:["oiintSize1",.957,.499],oiintSize2:["oiintSize2",1.472,.659],oiiintSize1:["oiiintSize1",1.304,.499],oiiintSize2:["oiiintSize2",1.98,.659]},Je={fontMap:Ze,makeSymbol:Ue,mathsym:function(e,t,r,a){return void 0===a&&(a=[]),"boldsymbol"===r.font&&Ge(e,"Main-Bold",t).metrics?Ue(e,"Main-Bold",t,r,a.concat(["mathbf"])):"\\"===e||"main"===ie[t][e].font?Ue(e,"Main-Regular",t,r,a):Ue(e,"AMS-Regular",t,r,a.concat(["amsrm"]))},makeSpan:We,makeSvgSpan:_e,makeLineSpan:function(e,t,r){var a=We([e],[],t);return a.height=Math.max(r||t.fontMetrics().defaultRuleThickness,t.minRuleThickness),a.style.borderBottomWidth=U(a.height),a.maxFontSize=1,a},makeAnchor:function(e,t,r,a){var n=new $(e,t,r,a);return Xe(n),n},makeFragment:je,wrapFragment:function(e,t){return e instanceof C?We([],[e],t):e},makeVList:function(e,t){for(var{children:r,depth:a}=function(e){if("individualShift"===e.positionType){for(var t=e.children,r=[t[0]],a=-t[0].shift-t[0].elem.depth,n=a,i=1;i0)return Ue(n,h,a,t,i.concat(m));if(l){var c,p;if("boldsymbol"===l){var u=function(e,t,r,a,n){return"textord"!==n&&Ge(e,"Math-BoldItalic",t).metrics?{fontName:"Math-BoldItalic",fontClass:"boldsymbol"}:{fontName:"Main-Bold",fontClass:"mathbf"}}(n,a,0,0,r);c=u.fontName,p=[u.fontClass]}else s?(c=Ze[l].fontName,p=[l]):(c=$e(l,t.fontWeight,t.fontShape),p=[l,t.fontWeight,t.fontShape]);if(Ge(n,c,a).metrics)return Ue(n,c,a,t,i.concat(p));if(ke.hasOwnProperty(n)&&"Typewriter"===c.slice(0,10)){for(var d=[],g=0;g{var r=We(["mspace"],[],t),a=G(e,t);return r.style.marginRight=U(a),r},staticSvg:function(e,t){var[r,a,n]=Ke[e],i=new ee(r),o=new Q([i],{width:U(a),height:U(n),style:"width:"+U(a),viewBox:"0 0 "+1e3*a+" "+1e3*n,preserveAspectRatio:"xMinYMin"}),s=_e(["overlay"],[o],t);return s.height=n,s.style.height=U(n),s.style.width=U(a),s},svgData:Ke,tryCombineChars:e=>{for(var t=0;t{var r=t.classes[0],a=e.classes[0];"mbin"===r&&c.contains(ut,a)?t.classes[0]="mord":"mbin"===a&&c.contains(pt,r)&&(e.classes[0]="mord")}),{node:m},p,u),vt(n,((e,t)=>{var r=xt(t),a=xt(e),n=r&&a?e.hasClass("mtight")?at[r][a]:rt[r][a]:null;if(n)return Je.makeGlue(n,l)}),{node:m},p,u),n},vt=function e(t,r,a,n,i){n&&t.push(n);for(var o=0;or=>{t.splice(e+1,0,r),o++})(o)}}n&&t.pop()},bt=function(e){return e instanceof C||e instanceof $||e instanceof j&&e.hasClass("enclosing")?e:null},yt=function e(t,r){var a=bt(t);if(a){var n=a.children;if(n.length){if("right"===r)return e(n[n.length-1],"right");if("left"===r)return e(n[0],"left")}}return t},xt=function(e,t){return e?(t&&(e=yt(e,t)),gt[e.classes[0]]||null):null},wt=function(e,t){var r=["nulldelimiter"].concat(e.baseSizingClasses());return ct(t.concat(r))},kt=function(e,t,r){if(!e)return ct();if(it[e.type]){var a=it[e.type](e,t);if(r&&t.size!==r.size){a=ct(t.sizingClasses(r),[a],t);var n=t.sizeMultiplier/r.sizeMultiplier;a.height*=n,a.depth*=n}return a}throw new o("Got group of unknown type: '"+e.type+"'")};function St(e,t){var r=ct(["base"],e,t),a=ct(["strut"]);return a.style.height=U(r.height+r.depth),r.depth&&(a.style.verticalAlign=U(-r.depth)),r.children.unshift(a),r}function Mt(e,t){var r=null;1===e.length&&"tag"===e[0].type&&(r=e[0].tag,e=e[0].body);var a,n=ft(e,t,"root");2===n.length&&n[1].hasClass("tag")&&(a=n.pop());for(var i,o=[],s=[],l=0;l0&&(o.push(St(s,t)),s=[]),o.push(n[l]));s.length>0&&o.push(St(s,t)),r?((i=St(ft(r,t,!0))).classes=["tag"],o.push(i)):a&&o.push(a);var m=ct(["katex-html"],o);if(m.setAttribute("aria-hidden","true"),i){var c=i.children[0];c.style.height=U(m.height+m.depth),m.depth&&(c.style.verticalAlign=U(-m.depth))}return m}function zt(e){return new C(e)}class At{constructor(e,t,r){this.type=void 0,this.attributes=void 0,this.children=void 0,this.classes=void 0,this.type=e,this.attributes={},this.children=t||[],this.classes=r||[]}setAttribute(e,t){this.attributes[e]=t}getAttribute(e){return this.attributes[e]}toNode(){var e=document.createElementNS("http://www.w3.org/1998/Math/MathML",this.type);for(var t in this.attributes)Object.prototype.hasOwnProperty.call(this.attributes,t)&&e.setAttribute(t,this.attributes[t]);this.classes.length>0&&(e.className=Y(this.classes));for(var r=0;r0&&(e+=' class ="'+c.escape(Y(this.classes))+'"'),e+=">";for(var r=0;r"}toText(){return this.children.map((e=>e.toText())).join("")}}class Tt{constructor(e){this.text=void 0,this.text=e}toNode(){return document.createTextNode(this.text)}toMarkup(){return c.escape(this.toText())}toText(){return this.text}}var Bt={MathNode:At,TextNode:Tt,SpaceNode:class{constructor(e){this.width=void 0,this.character=void 0,this.width=e,this.character=e>=.05555&&e<=.05556?"\u200a":e>=.1666&&e<=.1667?"\u2009":e>=.2222&&e<=.2223?"\u2005":e>=.2777&&e<=.2778?"\u2005\u200a":e>=-.05556&&e<=-.05555?"\u200a\u2063":e>=-.1667&&e<=-.1666?"\u2009\u2063":e>=-.2223&&e<=-.2222?"\u205f\u2063":e>=-.2778&&e<=-.2777?"\u2005\u2063":null}toNode(){if(this.character)return document.createTextNode(this.character);var e=document.createElementNS("http://www.w3.org/1998/Math/MathML","mspace");return e.setAttribute("width",U(this.width)),e}toMarkup(){return this.character?""+this.character+"":''}toText(){return this.character?this.character:" "}},newDocumentFragment:zt},Ct=function(e,t,r){return!ie[t][e]||!ie[t][e].replace||55349===e.charCodeAt(0)||ke.hasOwnProperty(e)&&r&&(r.fontFamily&&"tt"===r.fontFamily.slice(4,6)||r.font&&"tt"===r.font.slice(4,6))||(e=ie[t][e].replace),new Bt.TextNode(e)},Nt=function(e){return 1===e.length?e[0]:new Bt.MathNode("mrow",e)},qt=function(e,t){if("texttt"===t.fontFamily)return"monospace";if("textsf"===t.fontFamily)return"textit"===t.fontShape&&"textbf"===t.fontWeight?"sans-serif-bold-italic":"textit"===t.fontShape?"sans-serif-italic":"textbf"===t.fontWeight?"bold-sans-serif":"sans-serif";if("textit"===t.fontShape&&"textbf"===t.fontWeight)return"bold-italic";if("textit"===t.fontShape)return"italic";if("textbf"===t.fontWeight)return"bold";var r=t.font;if(!r||"mathnormal"===r)return null;var a=e.mode;if("mathit"===r)return"italic";if("boldsymbol"===r)return"textord"===e.type?"bold":"bold-italic";if("mathbf"===r)return"bold";if("mathbb"===r)return"double-struck";if("mathfrak"===r)return"fraktur";if("mathscr"===r||"mathcal"===r)return"script";if("mathsf"===r)return"sans-serif";if("mathtt"===r)return"monospace";var n=e.text;return c.contains(["\\imath","\\jmath"],n)?null:(ie[a][n]&&ie[a][n].replace&&(n=ie[a][n].replace),R(n,Je.fontMap[r].fontName,a)?Je.fontMap[r].variant:null)},It=function(e,t,r){if(1===e.length){var a=Ht(e[0],t);return r&&a instanceof At&&"mo"===a.type&&(a.setAttribute("lspace","0em"),a.setAttribute("rspace","0em")),[a]}for(var n,i=[],o=0;o0&&(m.text=m.text.slice(0,1)+"\u0338"+m.text.slice(1),i.pop())}}}i.push(s),n=s}return i},Rt=function(e,t,r){return Nt(It(e,t,r))},Ht=function(e,t){if(!e)return new Bt.MathNode("mrow");if(ot[e.type])return ot[e.type](e,t);throw new o("Got group of unknown type: '"+e.type+"'")};function Ot(e,t,r,a,n){var i,o=It(e,r);i=1===o.length&&o[0]instanceof At&&c.contains(["mrow","mtable"],o[0].type)?o[0]:new Bt.MathNode("mrow",o);var s=new Bt.MathNode("annotation",[new Bt.TextNode(t)]);s.setAttribute("encoding","application/x-tex");var l=new Bt.MathNode("semantics",[i,s]),h=new Bt.MathNode("math",[l]);h.setAttribute("xmlns","http://www.w3.org/1998/Math/MathML"),a&&h.setAttribute("display","block");var m=n?"katex":"katex-mathml";return Je.makeSpan([m],[h])}var Et=function(e){return new D({style:e.displayMode?S.DISPLAY:S.TEXT,maxSize:e.maxSize,minRuleThickness:e.minRuleThickness})},Lt=function(e,t){if(t.displayMode){var r=["katex-display"];t.leqno&&r.push("leqno"),t.fleqn&&r.push("fleqn"),e=Je.makeSpan(r,[e])}return e},Dt={widehat:"^",widecheck:"\u02c7",widetilde:"~",utilde:"~",overleftarrow:"\u2190",underleftarrow:"\u2190",xleftarrow:"\u2190",overrightarrow:"\u2192",underrightarrow:"\u2192",xrightarrow:"\u2192",underbrace:"\u23df",overbrace:"\u23de",overgroup:"\u23e0",undergroup:"\u23e1",overleftrightarrow:"\u2194",underleftrightarrow:"\u2194",xleftrightarrow:"\u2194",Overrightarrow:"\u21d2",xRightarrow:"\u21d2",overleftharpoon:"\u21bc",xleftharpoonup:"\u21bc",overrightharpoon:"\u21c0",xrightharpoonup:"\u21c0",xLeftarrow:"\u21d0",xLeftrightarrow:"\u21d4",xhookleftarrow:"\u21a9",xhookrightarrow:"\u21aa",xmapsto:"\u21a6",xrightharpoondown:"\u21c1",xleftharpoondown:"\u21bd",xrightleftharpoons:"\u21cc",xleftrightharpoons:"\u21cb",xtwoheadleftarrow:"\u219e",xtwoheadrightarrow:"\u21a0",xlongequal:"=",xtofrom:"\u21c4",xrightleftarrows:"\u21c4",xrightequilibrium:"\u21cc",xleftequilibrium:"\u21cb","\\cdrightarrow":"\u2192","\\cdleftarrow":"\u2190","\\cdlongequal":"="},Vt={overrightarrow:[["rightarrow"],.888,522,"xMaxYMin"],overleftarrow:[["leftarrow"],.888,522,"xMinYMin"],underrightarrow:[["rightarrow"],.888,522,"xMaxYMin"],underleftarrow:[["leftarrow"],.888,522,"xMinYMin"],xrightarrow:[["rightarrow"],1.469,522,"xMaxYMin"],"\\cdrightarrow":[["rightarrow"],3,522,"xMaxYMin"],xleftarrow:[["leftarrow"],1.469,522,"xMinYMin"],"\\cdleftarrow":[["leftarrow"],3,522,"xMinYMin"],Overrightarrow:[["doublerightarrow"],.888,560,"xMaxYMin"],xRightarrow:[["doublerightarrow"],1.526,560,"xMaxYMin"],xLeftarrow:[["doubleleftarrow"],1.526,560,"xMinYMin"],overleftharpoon:[["leftharpoon"],.888,522,"xMinYMin"],xleftharpoonup:[["leftharpoon"],.888,522,"xMinYMin"],xleftharpoondown:[["leftharpoondown"],.888,522,"xMinYMin"],overrightharpoon:[["rightharpoon"],.888,522,"xMaxYMin"],xrightharpoonup:[["rightharpoon"],.888,522,"xMaxYMin"],xrightharpoondown:[["rightharpoondown"],.888,522,"xMaxYMin"],xlongequal:[["longequal"],.888,334,"xMinYMin"],"\\cdlongequal":[["longequal"],3,334,"xMinYMin"],xtwoheadleftarrow:[["twoheadleftarrow"],.888,334,"xMinYMin"],xtwoheadrightarrow:[["twoheadrightarrow"],.888,334,"xMaxYMin"],overleftrightarrow:[["leftarrow","rightarrow"],.888,522],overbrace:[["leftbrace","midbrace","rightbrace"],1.6,548],underbrace:[["leftbraceunder","midbraceunder","rightbraceunder"],1.6,548],underleftrightarrow:[["leftarrow","rightarrow"],.888,522],xleftrightarrow:[["leftarrow","rightarrow"],1.75,522],xLeftrightarrow:[["doubleleftarrow","doublerightarrow"],1.75,560],xrightleftharpoons:[["leftharpoondownplus","rightharpoonplus"],1.75,716],xleftrightharpoons:[["leftharpoonplus","rightharpoondownplus"],1.75,716],xhookleftarrow:[["leftarrow","righthook"],1.08,522],xhookrightarrow:[["lefthook","rightarrow"],1.08,522],overlinesegment:[["leftlinesegment","rightlinesegment"],.888,522],underlinesegment:[["leftlinesegment","rightlinesegment"],.888,522],overgroup:[["leftgroup","rightgroup"],.888,342],undergroup:[["leftgroupunder","rightgroupunder"],.888,342],xmapsto:[["leftmapsto","rightarrow"],1.5,522],xtofrom:[["leftToFrom","rightToFrom"],1.75,528],xrightleftarrows:[["baraboveleftarrow","rightarrowabovebar"],1.75,901],xrightequilibrium:[["baraboveshortleftharpoon","rightharpoonaboveshortbar"],1.75,716],xleftequilibrium:[["shortbaraboveleftharpoon","shortrightharpoonabovebar"],1.75,716]},Pt=function(e,t,r,a,n){var i,o=e.height+e.depth+r+a;if(/fbox|color|angl/.test(t)){if(i=Je.makeSpan(["stretchy",t],[],n),"fbox"===t){var s=n.color&&n.getColor();s&&(i.style.borderColor=s)}}else{var l=[];/^[bx]cancel$/.test(t)&&l.push(new te({x1:"0",y1:"0",x2:"100%",y2:"100%","stroke-width":"0.046em"})),/^x?cancel$/.test(t)&&l.push(new te({x1:"0",y1:"100%",x2:"100%",y2:"0","stroke-width":"0.046em"}));var h=new Q(l,{width:"100%",height:U(o)});i=Je.makeSvgSpan([],[h],n)}return i.height=o,i.style.height=U(o),i},Ft=function(e){var t=new Bt.MathNode("mo",[new Bt.TextNode(Dt[e.replace(/^\\/,"")])]);return t.setAttribute("stretchy","true"),t},Gt=function(e,t){var{span:r,minWidth:a,height:n}=function(){var r=4e5,a=e.label.slice(1);if(c.contains(["widehat","widecheck","widetilde","utilde"],a)){var n,i,o,s="ordgroup"===(d=e.base).type?d.body.length:1;if(s>5)"widehat"===a||"widecheck"===a?(n=420,r=2364,o=.42,i=a+"4"):(n=312,r=2340,o=.34,i="tilde4");else{var l=[1,1,2,2,3,3][s];"widehat"===a||"widecheck"===a?(r=[0,1062,2364,2364,2364][l],n=[0,239,300,360,420][l],o=[0,.24,.3,.3,.36,.42][l],i=a+l):(r=[0,600,1033,2339,2340][l],n=[0,260,286,306,312][l],o=[0,.26,.286,.3,.306,.34][l],i="tilde"+l)}var h=new ee(i),m=new Q([h],{width:"100%",height:U(o),viewBox:"0 0 "+r+" "+n,preserveAspectRatio:"none"});return{span:Je.makeSvgSpan([],[m],t),minWidth:0,height:o}}var p,u,d,g=[],f=Vt[a],[v,b,y]=f,x=y/1e3,w=v.length;if(1===w)p=["hide-tail"],u=[f[3]];else if(2===w)p=["halfarrow-left","halfarrow-right"],u=["xMinYMin","xMaxYMin"];else{if(3!==w)throw new Error("Correct katexImagesData or update code here to support\n "+w+" children.");p=["brace-left","brace-center","brace-right"],u=["xMinYMin","xMidYMin","xMaxYMin"]}for(var k=0;k0&&(r.style.minWidth=U(a)),r};function Ut(e,t){if(!e||e.type!==t)throw new Error("Expected node of type "+t+", but got "+(e?"node of type "+e.type:String(e)));return e}function Yt(e){var t=Xt(e);if(!t)throw new Error("Expected node of symbol group type, but got "+(e?"node of type "+e.type:String(e)));return t}function Xt(e){return e&&("atom"===e.type||ne.hasOwnProperty(e.type))?e:null}var Wt=(e,t)=>{var r,a,n;e&&"supsub"===e.type?(r=(a=Ut(e.base,"accent")).base,e.base=r,n=function(e){if(e instanceof j)return e;throw new Error("Expected span but got "+String(e)+".")}(kt(e,t)),e.base=a):r=(a=Ut(e,"accent")).base;var i=kt(r,t.havingCrampedStyle()),o=0;if(a.isShifty&&c.isCharacterBox(r)){var s=c.getBaseElem(r);o=re(kt(s,t.havingCrampedStyle())).skew}var l,h="\\c"===a.label,m=h?i.height+i.depth:Math.min(i.height,t.fontMetrics().xHeight);if(a.isStretchy)l=Gt(a,t),l=Je.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:i},{type:"elem",elem:l,wrapperClasses:["svg-align"],wrapperStyle:o>0?{width:"calc(100% - "+U(2*o)+")",marginLeft:U(2*o)}:void 0}]},t);else{var p,u;"\\vec"===a.label?(p=Je.staticSvg("vec",t),u=Je.svgData.vec[1]):((p=re(p=Je.makeOrd({mode:a.mode,text:a.label},t,"textord"))).italic=0,u=p.width,h&&(m+=p.depth)),l=Je.makeSpan(["accent-body"],[p]);var d="\\textcircled"===a.label;d&&(l.classes.push("accent-full"),m=i.height);var g=o;d||(g-=u/2),l.style.left=U(g),"\\textcircled"===a.label&&(l.style.top=".2em"),l=Je.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:i},{type:"kern",size:-m},{type:"elem",elem:l}]},t)}var f=Je.makeSpan(["mord","accent"],[l],t);return n?(n.children[0]=f,n.height=Math.max(f.height,n.height),n.classes[0]="mord",n):f},_t=(e,t)=>{var r=e.isStretchy?Ft(e.label):new Bt.MathNode("mo",[Ct(e.label,e.mode)]),a=new Bt.MathNode("mover",[Ht(e.base,t),r]);return a.setAttribute("accent","true"),a},jt=new RegExp(["\\acute","\\grave","\\ddot","\\tilde","\\bar","\\breve","\\check","\\hat","\\vec","\\dot","\\mathring"].map((e=>"\\"+e)).join("|"));st({type:"accent",names:["\\acute","\\grave","\\ddot","\\tilde","\\bar","\\breve","\\check","\\hat","\\vec","\\dot","\\mathring","\\widecheck","\\widehat","\\widetilde","\\overrightarrow","\\overleftarrow","\\Overrightarrow","\\overleftrightarrow","\\overgroup","\\overlinesegment","\\overleftharpoon","\\overrightharpoon"],props:{numArgs:1},handler:(e,t)=>{var r=ht(t[0]),a=!jt.test(e.funcName),n=!a||"\\widehat"===e.funcName||"\\widetilde"===e.funcName||"\\widecheck"===e.funcName;return{type:"accent",mode:e.parser.mode,label:e.funcName,isStretchy:a,isShifty:n,base:r}},htmlBuilder:Wt,mathmlBuilder:_t}),st({type:"accent",names:["\\'","\\`","\\^","\\~","\\=","\\u","\\.",'\\"',"\\c","\\r","\\H","\\v","\\textcircled"],props:{numArgs:1,allowedInText:!0,allowedInMath:!0,argTypes:["primitive"]},handler:(e,t)=>{var r=t[0],a=e.parser.mode;return"math"===a&&(e.parser.settings.reportNonstrict("mathVsTextAccents","LaTeX's accent "+e.funcName+" works only in text mode"),a="text"),{type:"accent",mode:a,label:e.funcName,isStretchy:!1,isShifty:!0,base:r}},htmlBuilder:Wt,mathmlBuilder:_t}),st({type:"accentUnder",names:["\\underleftarrow","\\underrightarrow","\\underleftrightarrow","\\undergroup","\\underlinesegment","\\utilde"],props:{numArgs:1},handler:(e,t)=>{var{parser:r,funcName:a}=e,n=t[0];return{type:"accentUnder",mode:r.mode,label:a,base:n}},htmlBuilder:(e,t)=>{var r=kt(e.base,t),a=Gt(e,t),n="\\utilde"===e.label?.12:0,i=Je.makeVList({positionType:"top",positionData:r.height,children:[{type:"elem",elem:a,wrapperClasses:["svg-align"]},{type:"kern",size:n},{type:"elem",elem:r}]},t);return Je.makeSpan(["mord","accentunder"],[i],t)},mathmlBuilder:(e,t)=>{var r=Ft(e.label),a=new Bt.MathNode("munder",[Ht(e.base,t),r]);return a.setAttribute("accentunder","true"),a}});var $t=e=>{var t=new Bt.MathNode("mpadded",e?[e]:[]);return t.setAttribute("width","+0.6em"),t.setAttribute("lspace","0.3em"),t};st({type:"xArrow",names:["\\xleftarrow","\\xrightarrow","\\xLeftarrow","\\xRightarrow","\\xleftrightarrow","\\xLeftrightarrow","\\xhookleftarrow","\\xhookrightarrow","\\xmapsto","\\xrightharpoondown","\\xrightharpoonup","\\xleftharpoondown","\\xleftharpoonup","\\xrightleftharpoons","\\xleftrightharpoons","\\xlongequal","\\xtwoheadrightarrow","\\xtwoheadleftarrow","\\xtofrom","\\xrightleftarrows","\\xrightequilibrium","\\xleftequilibrium","\\\\cdrightarrow","\\\\cdleftarrow","\\\\cdlongequal"],props:{numArgs:1,numOptionalArgs:1},handler(e,t,r){var{parser:a,funcName:n}=e;return{type:"xArrow",mode:a.mode,label:n,body:t[0],below:r[0]}},htmlBuilder(e,t){var r,a=t.style,n=t.havingStyle(a.sup()),i=Je.wrapFragment(kt(e.body,n,t),t),o="\\x"===e.label.slice(0,2)?"x":"cd";i.classes.push(o+"-arrow-pad"),e.below&&(n=t.havingStyle(a.sub()),(r=Je.wrapFragment(kt(e.below,n,t),t)).classes.push(o+"-arrow-pad"));var s,l=Gt(e,t),h=-t.fontMetrics().axisHeight+.5*l.height,m=-t.fontMetrics().axisHeight-.5*l.height-.111;if((i.depth>.25||"\\xleftequilibrium"===e.label)&&(m-=i.depth),r){var c=-t.fontMetrics().axisHeight+r.height+.5*l.height+.111;s=Je.makeVList({positionType:"individualShift",children:[{type:"elem",elem:i,shift:m},{type:"elem",elem:l,shift:h},{type:"elem",elem:r,shift:c}]},t)}else s=Je.makeVList({positionType:"individualShift",children:[{type:"elem",elem:i,shift:m},{type:"elem",elem:l,shift:h}]},t);return s.children[0].children[0].children[1].classes.push("svg-align"),Je.makeSpan(["mrel","x-arrow"],[s],t)},mathmlBuilder(e,t){var r,a=Ft(e.label);if(a.setAttribute("minsize","x"===e.label.charAt(0)?"1.75em":"3.0em"),e.body){var n=$t(Ht(e.body,t));if(e.below){var i=$t(Ht(e.below,t));r=new Bt.MathNode("munderover",[a,i,n])}else r=new Bt.MathNode("mover",[a,n])}else if(e.below){var o=$t(Ht(e.below,t));r=new Bt.MathNode("munder",[a,o])}else r=$t(),r=new Bt.MathNode("mover",[a,r]);return r}});var Zt=Je.makeSpan;function Kt(e,t){var r=ft(e.body,t,!0);return Zt([e.mclass],r,t)}function Jt(e,t){var r,a=It(e.body,t);return"minner"===e.mclass?r=new Bt.MathNode("mpadded",a):"mord"===e.mclass?e.isCharacterBox?(r=a[0]).type="mi":r=new Bt.MathNode("mi",a):(e.isCharacterBox?(r=a[0]).type="mo":r=new Bt.MathNode("mo",a),"mbin"===e.mclass?(r.attributes.lspace="0.22em",r.attributes.rspace="0.22em"):"mpunct"===e.mclass?(r.attributes.lspace="0em",r.attributes.rspace="0.17em"):"mopen"===e.mclass||"mclose"===e.mclass?(r.attributes.lspace="0em",r.attributes.rspace="0em"):"minner"===e.mclass&&(r.attributes.lspace="0.0556em",r.attributes.width="+0.1111em")),r}st({type:"mclass",names:["\\mathord","\\mathbin","\\mathrel","\\mathopen","\\mathclose","\\mathpunct","\\mathinner"],props:{numArgs:1,primitive:!0},handler(e,t){var{parser:r,funcName:a}=e,n=t[0];return{type:"mclass",mode:r.mode,mclass:"m"+a.slice(5),body:mt(n),isCharacterBox:c.isCharacterBox(n)}},htmlBuilder:Kt,mathmlBuilder:Jt});var Qt=e=>{var t="ordgroup"===e.type&&e.body.length?e.body[0]:e;return"atom"!==t.type||"bin"!==t.family&&"rel"!==t.family?"mord":"m"+t.family};st({type:"mclass",names:["\\@binrel"],props:{numArgs:2},handler(e,t){var{parser:r}=e;return{type:"mclass",mode:r.mode,mclass:Qt(t[0]),body:mt(t[1]),isCharacterBox:c.isCharacterBox(t[1])}}}),st({type:"mclass",names:["\\stackrel","\\overset","\\underset"],props:{numArgs:2},handler(e,t){var r,{parser:a,funcName:n}=e,i=t[1],o=t[0];r="\\stackrel"!==n?Qt(i):"mrel";var s={type:"op",mode:i.mode,limits:!0,alwaysHandleSupSub:!0,parentIsSupSub:!1,symbol:!1,suppressBaseShift:"\\stackrel"!==n,body:mt(i)},l={type:"supsub",mode:o.mode,base:s,sup:"\\underset"===n?null:o,sub:"\\underset"===n?o:null};return{type:"mclass",mode:a.mode,mclass:r,body:[l],isCharacterBox:c.isCharacterBox(l)}},htmlBuilder:Kt,mathmlBuilder:Jt}),st({type:"pmb",names:["\\pmb"],props:{numArgs:1,allowedInText:!0},handler(e,t){var{parser:r}=e;return{type:"pmb",mode:r.mode,mclass:Qt(t[0]),body:mt(t[0])}},htmlBuilder(e,t){var r=ft(e.body,t,!0),a=Je.makeSpan([e.mclass],r,t);return a.style.textShadow="0.02em 0.01em 0.04px",a},mathmlBuilder(e,t){var r=It(e.body,t),a=new Bt.MathNode("mstyle",r);return a.setAttribute("style","text-shadow: 0.02em 0.01em 0.04px"),a}});var er={">":"\\\\cdrightarrow","<":"\\\\cdleftarrow","=":"\\\\cdlongequal",A:"\\uparrow",V:"\\downarrow","|":"\\Vert",".":"no arrow"},tr=e=>"textord"===e.type&&"@"===e.text;function rr(e,t,r){var a=er[e];switch(a){case"\\\\cdrightarrow":case"\\\\cdleftarrow":return r.callFunction(a,[t[0]],[t[1]]);case"\\uparrow":case"\\downarrow":var n={type:"atom",text:a,mode:"math",family:"rel"},i={type:"ordgroup",mode:"math",body:[r.callFunction("\\\\cdleft",[t[0]],[]),r.callFunction("\\Big",[n],[]),r.callFunction("\\\\cdright",[t[1]],[])]};return r.callFunction("\\\\cdparent",[i],[]);case"\\\\cdlongequal":return r.callFunction("\\\\cdlongequal",[],[]);case"\\Vert":return r.callFunction("\\Big",[{type:"textord",text:"\\Vert",mode:"math"}],[]);default:return{type:"textord",text:" ",mode:"math"}}}st({type:"cdlabel",names:["\\\\cdleft","\\\\cdright"],props:{numArgs:1},handler(e,t){var{parser:r,funcName:a}=e;return{type:"cdlabel",mode:r.mode,side:a.slice(4),label:t[0]}},htmlBuilder(e,t){var r=t.havingStyle(t.style.sup()),a=Je.wrapFragment(kt(e.label,r,t),t);return a.classes.push("cd-label-"+e.side),a.style.bottom=U(.8-a.depth),a.height=0,a.depth=0,a},mathmlBuilder(e,t){var r=new Bt.MathNode("mrow",[Ht(e.label,t)]);return(r=new Bt.MathNode("mpadded",[r])).setAttribute("width","0"),"left"===e.side&&r.setAttribute("lspace","-1width"),r.setAttribute("voffset","0.7em"),(r=new Bt.MathNode("mstyle",[r])).setAttribute("displaystyle","false"),r.setAttribute("scriptlevel","1"),r}}),st({type:"cdlabelparent",names:["\\\\cdparent"],props:{numArgs:1},handler(e,t){var{parser:r}=e;return{type:"cdlabelparent",mode:r.mode,fragment:t[0]}},htmlBuilder(e,t){var r=Je.wrapFragment(kt(e.fragment,t),t);return r.classes.push("cd-vert-arrow"),r},mathmlBuilder:(e,t)=>new Bt.MathNode("mrow",[Ht(e.fragment,t)])}),st({type:"textord",names:["\\@char"],props:{numArgs:1,allowedInText:!0},handler(e,t){for(var{parser:r}=e,a=Ut(t[0],"ordgroup").body,n="",i=0;i=1114111)throw new o("\\@char with invalid code point "+n);return l<=65535?s=String.fromCharCode(l):(l-=65536,s=String.fromCharCode(55296+(l>>10),56320+(1023&l))),{type:"textord",mode:r.mode,text:s}}});var ar=(e,t)=>{var r=ft(e.body,t.withColor(e.color),!1);return Je.makeFragment(r)},nr=(e,t)=>{var r=It(e.body,t.withColor(e.color)),a=new Bt.MathNode("mstyle",r);return a.setAttribute("mathcolor",e.color),a};st({type:"color",names:["\\textcolor"],props:{numArgs:2,allowedInText:!0,argTypes:["color","original"]},handler(e,t){var{parser:r}=e,a=Ut(t[0],"color-token").color,n=t[1];return{type:"color",mode:r.mode,color:a,body:mt(n)}},htmlBuilder:ar,mathmlBuilder:nr}),st({type:"color",names:["\\color"],props:{numArgs:1,allowedInText:!0,argTypes:["color"]},handler(e,t){var{parser:r,breakOnTokenText:a}=e,n=Ut(t[0],"color-token").color;r.gullet.macros.set("\\current@color",n);var i=r.parseExpression(!0,a);return{type:"color",mode:r.mode,color:n,body:i}},htmlBuilder:ar,mathmlBuilder:nr}),st({type:"cr",names:["\\\\"],props:{numArgs:0,numOptionalArgs:0,allowedInText:!0},handler(e,t,r){var{parser:a}=e,n="["===a.gullet.future().text?a.parseSizeGroup(!0):null,i=!a.settings.displayMode||!a.settings.useStrictBehavior("newLineInDisplayMode","In LaTeX, \\\\ or \\newline does nothing in display mode");return{type:"cr",mode:a.mode,newLine:i,size:n&&Ut(n,"size").value}},htmlBuilder(e,t){var r=Je.makeSpan(["mspace"],[],t);return e.newLine&&(r.classes.push("newline"),e.size&&(r.style.marginTop=U(G(e.size,t)))),r},mathmlBuilder(e,t){var r=new Bt.MathNode("mspace");return e.newLine&&(r.setAttribute("linebreak","newline"),e.size&&r.setAttribute("height",U(G(e.size,t)))),r}});var ir={"\\global":"\\global","\\long":"\\\\globallong","\\\\globallong":"\\\\globallong","\\def":"\\gdef","\\gdef":"\\gdef","\\edef":"\\xdef","\\xdef":"\\xdef","\\let":"\\\\globallet","\\futurelet":"\\\\globalfuture"},or=e=>{var t=e.text;if(/^(?:[\\{}$&#^_]|EOF)$/.test(t))throw new o("Expected a control sequence",e);return t},sr=(e,t,r,a)=>{var n=e.gullet.macros.get(r.text);null==n&&(r.noexpand=!0,n={tokens:[r],numArgs:0,unexpandable:!e.gullet.isExpandable(r.text)}),e.gullet.macros.set(t,n,a)};st({type:"internal",names:["\\global","\\long","\\\\globallong"],props:{numArgs:0,allowedInText:!0},handler(e){var{parser:t,funcName:r}=e;t.consumeSpaces();var a=t.fetch();if(ir[a.text])return"\\global"!==r&&"\\\\globallong"!==r||(a.text=ir[a.text]),Ut(t.parseFunction(),"internal");throw new o("Invalid token after macro prefix",a)}}),st({type:"internal",names:["\\def","\\gdef","\\edef","\\xdef"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(e){var{parser:t,funcName:r}=e,a=t.gullet.popToken(),n=a.text;if(/^(?:[\\{}$&#^_]|EOF)$/.test(n))throw new o("Expected a control sequence",a);for(var i,s=0,l=[[]];"{"!==t.gullet.future().text;)if("#"===(a=t.gullet.popToken()).text){if("{"===t.gullet.future().text){i=t.gullet.future(),l[s].push("{");break}if(a=t.gullet.popToken(),!/^[1-9]$/.test(a.text))throw new o('Invalid argument number "'+a.text+'"');if(parseInt(a.text)!==s+1)throw new o('Argument number "'+a.text+'" out of order');s++,l.push([])}else{if("EOF"===a.text)throw new o("Expected a macro definition");l[s].push(a.text)}var{tokens:h}=t.gullet.consumeArg();return i&&h.unshift(i),"\\edef"!==r&&"\\xdef"!==r||(h=t.gullet.expandTokens(h)).reverse(),t.gullet.macros.set(n,{tokens:h,numArgs:s,delimiters:l},r===ir[r]),{type:"internal",mode:t.mode}}}),st({type:"internal",names:["\\let","\\\\globallet"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(e){var{parser:t,funcName:r}=e,a=or(t.gullet.popToken());t.gullet.consumeSpaces();var n=(e=>{var t=e.gullet.popToken();return"="===t.text&&" "===(t=e.gullet.popToken()).text&&(t=e.gullet.popToken()),t})(t);return sr(t,a,n,"\\\\globallet"===r),{type:"internal",mode:t.mode}}}),st({type:"internal",names:["\\futurelet","\\\\globalfuture"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(e){var{parser:t,funcName:r}=e,a=or(t.gullet.popToken()),n=t.gullet.popToken(),i=t.gullet.popToken();return sr(t,a,i,"\\\\globalfuture"===r),t.gullet.pushToken(i),t.gullet.pushToken(n),{type:"internal",mode:t.mode}}});var lr=function(e,t,r){var a=R(ie.math[e]&&ie.math[e].replace||e,t,r);if(!a)throw new Error("Unsupported symbol "+e+" and font size "+t+".");return a},hr=function(e,t,r,a){var n=r.havingBaseStyle(t),i=Je.makeSpan(a.concat(n.sizingClasses(r)),[e],r),o=n.sizeMultiplier/r.sizeMultiplier;return i.height*=o,i.depth*=o,i.maxFontSize=n.sizeMultiplier,i},mr=function(e,t,r){var a=t.havingBaseStyle(r),n=(1-t.sizeMultiplier/a.sizeMultiplier)*t.fontMetrics().axisHeight;e.classes.push("delimcenter"),e.style.top=U(n),e.height-=n,e.depth+=n},cr=function(e,t,r,a,n,i){var o=function(e,t,r,a){return Je.makeSymbol(e,"Size"+t+"-Regular",r,a)}(e,t,n,a),s=hr(Je.makeSpan(["delimsizing","size"+t],[o],a),S.TEXT,a,i);return r&&mr(s,a,S.TEXT),s},pr=function(e,t,r){var a;return a="Size1-Regular"===t?"delim-size1":"delim-size4",{type:"elem",elem:Je.makeSpan(["delimsizinginner",a],[Je.makeSpan([],[Je.makeSymbol(e,t,r)])])}},ur=function(e,t,r){var a=N["Size4-Regular"][e.charCodeAt(0)]?N["Size4-Regular"][e.charCodeAt(0)][4]:N["Size1-Regular"][e.charCodeAt(0)][4],n=new ee("inner",function(e,t){switch(e){case"\u239c":return"M291 0 H417 V"+t+" H291z M291 0 H417 V"+t+" H291z";case"\u2223":return"M145 0 H188 V"+t+" H145z M145 0 H188 V"+t+" H145z";case"\u2225":return"M145 0 H188 V"+t+" H145z M145 0 H188 V"+t+" H145zM367 0 H410 V"+t+" H367z M367 0 H410 V"+t+" H367z";case"\u239f":return"M457 0 H583 V"+t+" H457z M457 0 H583 V"+t+" H457z";case"\u23a2":return"M319 0 H403 V"+t+" H319z M319 0 H403 V"+t+" H319z";case"\u23a5":return"M263 0 H347 V"+t+" H263z M263 0 H347 V"+t+" H263z";case"\u23aa":return"M384 0 H504 V"+t+" H384z M384 0 H504 V"+t+" H384z";case"\u23d0":return"M312 0 H355 V"+t+" H312z M312 0 H355 V"+t+" H312z";case"\u2016":return"M257 0 H300 V"+t+" H257z M257 0 H300 V"+t+" H257zM478 0 H521 V"+t+" H478z M478 0 H521 V"+t+" H478z";default:return""}}(e,Math.round(1e3*t))),i=new Q([n],{width:U(a),height:U(t),style:"width:"+U(a),viewBox:"0 0 "+1e3*a+" "+Math.round(1e3*t),preserveAspectRatio:"xMinYMin"}),o=Je.makeSvgSpan([],[i],r);return o.height=t,o.style.height=U(t),o.style.width=U(a),{type:"elem",elem:o}},dr={type:"kern",size:-.008},gr=["|","\\lvert","\\rvert","\\vert"],fr=["\\|","\\lVert","\\rVert","\\Vert"],vr=function(e,t,r,a,n,i){var o,s,l,h,m="",p=0;o=l=h=e,s=null;var u="Size1-Regular";"\\uparrow"===e?l=h="\u23d0":"\\Uparrow"===e?l=h="\u2016":"\\downarrow"===e?o=l="\u23d0":"\\Downarrow"===e?o=l="\u2016":"\\updownarrow"===e?(o="\\uparrow",l="\u23d0",h="\\downarrow"):"\\Updownarrow"===e?(o="\\Uparrow",l="\u2016",h="\\Downarrow"):c.contains(gr,e)?(l="\u2223",m="vert",p=333):c.contains(fr,e)?(l="\u2225",m="doublevert",p=556):"["===e||"\\lbrack"===e?(o="\u23a1",l="\u23a2",h="\u23a3",u="Size4-Regular",m="lbrack",p=667):"]"===e||"\\rbrack"===e?(o="\u23a4",l="\u23a5",h="\u23a6",u="Size4-Regular",m="rbrack",p=667):"\\lfloor"===e||"\u230a"===e?(l=o="\u23a2",h="\u23a3",u="Size4-Regular",m="lfloor",p=667):"\\lceil"===e||"\u2308"===e?(o="\u23a1",l=h="\u23a2",u="Size4-Regular",m="lceil",p=667):"\\rfloor"===e||"\u230b"===e?(l=o="\u23a5",h="\u23a6",u="Size4-Regular",m="rfloor",p=667):"\\rceil"===e||"\u2309"===e?(o="\u23a4",l=h="\u23a5",u="Size4-Regular",m="rceil",p=667):"("===e||"\\lparen"===e?(o="\u239b",l="\u239c",h="\u239d",u="Size4-Regular",m="lparen",p=875):")"===e||"\\rparen"===e?(o="\u239e",l="\u239f",h="\u23a0",u="Size4-Regular",m="rparen",p=875):"\\{"===e||"\\lbrace"===e?(o="\u23a7",s="\u23a8",h="\u23a9",l="\u23aa",u="Size4-Regular"):"\\}"===e||"\\rbrace"===e?(o="\u23ab",s="\u23ac",h="\u23ad",l="\u23aa",u="Size4-Regular"):"\\lgroup"===e||"\u27ee"===e?(o="\u23a7",h="\u23a9",l="\u23aa",u="Size4-Regular"):"\\rgroup"===e||"\u27ef"===e?(o="\u23ab",h="\u23ad",l="\u23aa",u="Size4-Regular"):"\\lmoustache"===e||"\u23b0"===e?(o="\u23a7",h="\u23ad",l="\u23aa",u="Size4-Regular"):"\\rmoustache"!==e&&"\u23b1"!==e||(o="\u23ab",h="\u23a9",l="\u23aa",u="Size4-Regular");var d=lr(o,u,n),g=d.height+d.depth,f=lr(l,u,n),v=f.height+f.depth,b=lr(h,u,n),y=b.height+b.depth,x=0,w=1;if(null!==s){var k=lr(s,u,n);x=k.height+k.depth,w=2}var M=g+y+x,z=M+Math.max(0,Math.ceil((t-M)/(w*v)))*w*v,A=a.fontMetrics().axisHeight;r&&(A*=a.sizeMultiplier);var T=z/2-A,B=[];if(m.length>0){var C=z-g-y,N=Math.round(1e3*z),q=function(e,t){switch(e){case"lbrack":return"M403 1759 V84 H666 V0 H319 V1759 v"+t+" v1759 h347 v-84\nH403z M403 1759 V0 H319 V1759 v"+t+" v1759 h84z";case"rbrack":return"M347 1759 V0 H0 V84 H263 V1759 v"+t+" v1759 H0 v84 H347z\nM347 1759 V0 H263 V1759 v"+t+" v1759 h84z";case"vert":return"M145 15 v585 v"+t+" v585 c2.667,10,9.667,15,21,15\nc10,0,16.667,-5,20,-15 v-585 v"+-t+" v-585 c-2.667,-10,-9.667,-15,-21,-15\nc-10,0,-16.667,5,-20,15z M188 15 H145 v585 v"+t+" v585 h43z";case"doublevert":return"M145 15 v585 v"+t+" v585 c2.667,10,9.667,15,21,15\nc10,0,16.667,-5,20,-15 v-585 v"+-t+" v-585 c-2.667,-10,-9.667,-15,-21,-15\nc-10,0,-16.667,5,-20,15z M188 15 H145 v585 v"+t+" v585 h43z\nM367 15 v585 v"+t+" v585 c2.667,10,9.667,15,21,15\nc10,0,16.667,-5,20,-15 v-585 v"+-t+" v-585 c-2.667,-10,-9.667,-15,-21,-15\nc-10,0,-16.667,5,-20,15z M410 15 H367 v585 v"+t+" v585 h43z";case"lfloor":return"M319 602 V0 H403 V602 v"+t+" v1715 h263 v84 H319z\nMM319 602 V0 H403 V602 v"+t+" v1715 H319z";case"rfloor":return"M319 602 V0 H403 V602 v"+t+" v1799 H0 v-84 H319z\nMM319 602 V0 H403 V602 v"+t+" v1715 H319z";case"lceil":return"M403 1759 V84 H666 V0 H319 V1759 v"+t+" v602 h84z\nM403 1759 V0 H319 V1759 v"+t+" v602 h84z";case"rceil":return"M347 1759 V0 H0 V84 H263 V1759 v"+t+" v602 h84z\nM347 1759 V0 h-84 V1759 v"+t+" v602 h84z";case"lparen":return"M863,9c0,-2,-2,-5,-6,-9c0,0,-17,0,-17,0c-12.7,0,-19.3,0.3,-20,1\nc-5.3,5.3,-10.3,11,-15,17c-242.7,294.7,-395.3,682,-458,1162c-21.3,163.3,-33.3,349,\n-36,557 l0,"+(t+84)+"c0.2,6,0,26,0,60c2,159.3,10,310.7,24,454c53.3,528,210,\n949.7,470,1265c4.7,6,9.7,11.7,15,17c0.7,0.7,7,1,19,1c0,0,18,0,18,0c4,-4,6,-7,6,-9\nc0,-2.7,-3.3,-8.7,-10,-18c-135.3,-192.7,-235.5,-414.3,-300.5,-665c-65,-250.7,-102.5,\n-544.7,-112.5,-882c-2,-104,-3,-167,-3,-189\nl0,-"+(t+92)+"c0,-162.7,5.7,-314,17,-454c20.7,-272,63.7,-513,129,-723c65.3,\n-210,155.3,-396.3,270,-559c6.7,-9.3,10,-15.3,10,-18z";case"rparen":return"M76,0c-16.7,0,-25,3,-25,9c0,2,2,6.3,6,13c21.3,28.7,42.3,60.3,\n63,95c96.7,156.7,172.8,332.5,228.5,527.5c55.7,195,92.8,416.5,111.5,664.5\nc11.3,139.3,17,290.7,17,454c0,28,1.7,43,3.3,45l0,"+(t+9)+"\nc-3,4,-3.3,16.7,-3.3,38c0,162,-5.7,313.7,-17,455c-18.7,248,-55.8,469.3,-111.5,664\nc-55.7,194.7,-131.8,370.3,-228.5,527c-20.7,34.7,-41.7,66.3,-63,95c-2,3.3,-4,7,-6,11\nc0,7.3,5.7,11,17,11c0,0,11,0,11,0c9.3,0,14.3,-0.3,15,-1c5.3,-5.3,10.3,-11,15,-17\nc242.7,-294.7,395.3,-681.7,458,-1161c21.3,-164.7,33.3,-350.7,36,-558\nl0,-"+(t+144)+"c-2,-159.3,-10,-310.7,-24,-454c-53.3,-528,-210,-949.7,\n-470,-1265c-4.7,-6,-9.7,-11.7,-15,-17c-0.7,-0.7,-6.7,-1,-18,-1z";default:throw new Error("Unknown stretchy delimiter.")}}(m,Math.round(1e3*C)),I=new ee(m,q),R=(p/1e3).toFixed(3)+"em",H=(N/1e3).toFixed(3)+"em",O=new Q([I],{width:R,height:H,viewBox:"0 0 "+p+" "+N}),E=Je.makeSvgSpan([],[O],a);E.height=N/1e3,E.style.width=R,E.style.height=H,B.push({type:"elem",elem:E})}else{if(B.push(pr(h,u,n)),B.push(dr),null===s){var L=z-g-y+.016;B.push(ur(l,L,a))}else{var D=(z-g-y-x)/2+.016;B.push(ur(l,D,a)),B.push(dr),B.push(pr(s,u,n)),B.push(dr),B.push(ur(l,D,a))}B.push(dr),B.push(pr(o,u,n))}var V=a.havingBaseStyle(S.TEXT),P=Je.makeVList({positionType:"bottom",positionData:T,children:B},V);return hr(Je.makeSpan(["delimsizing","mult"],[P],V),S.TEXT,a,i)},br=.08,yr=function(e,t,r,a,n){var i=function(e,t,r){t*=1e3;var a="";switch(e){case"sqrtMain":a=function(e,t){return"M95,"+(622+e+t)+"\nc-2.7,0,-7.17,-2.7,-13.5,-8c-5.8,-5.3,-9.5,-10,-9.5,-14\nc0,-2,0.3,-3.3,1,-4c1.3,-2.7,23.83,-20.7,67.5,-54\nc44.2,-33.3,65.8,-50.3,66.5,-51c1.3,-1.3,3,-2,5,-2c4.7,0,8.7,3.3,12,10\ns173,378,173,378c0.7,0,35.3,-71,104,-213c68.7,-142,137.5,-285,206.5,-429\nc69,-144,104.5,-217.7,106.5,-221\nl"+e/2.075+" -"+e+"\nc5.3,-9.3,12,-14,20,-14\nH400000v"+(40+e)+"H845.2724\ns-225.272,467,-225.272,467s-235,486,-235,486c-2.7,4.7,-9,7,-19,7\nc-6,0,-10,-1,-12,-3s-194,-422,-194,-422s-65,47,-65,47z\nM"+(834+e)+" "+t+"h400000v"+(40+e)+"h-400000z"}(t,T);break;case"sqrtSize1":a=function(e,t){return"M263,"+(601+e+t)+"c0.7,0,18,39.7,52,119\nc34,79.3,68.167,158.7,102.5,238c34.3,79.3,51.8,119.3,52.5,120\nc340,-704.7,510.7,-1060.3,512,-1067\nl"+e/2.084+" -"+e+"\nc4.7,-7.3,11,-11,19,-11\nH40000v"+(40+e)+"H1012.3\ns-271.3,567,-271.3,567c-38.7,80.7,-84,175,-136,283c-52,108,-89.167,185.3,-111.5,232\nc-22.3,46.7,-33.8,70.3,-34.5,71c-4.7,4.7,-12.3,7,-23,7s-12,-1,-12,-1\ns-109,-253,-109,-253c-72.7,-168,-109.3,-252,-110,-252c-10.7,8,-22,16.7,-34,26\nc-22,17.3,-33.3,26,-34,26s-26,-26,-26,-26s76,-59,76,-59s76,-60,76,-60z\nM"+(1001+e)+" "+t+"h400000v"+(40+e)+"h-400000z"}(t,T);break;case"sqrtSize2":a=function(e,t){return"M983 "+(10+e+t)+"\nl"+e/3.13+" -"+e+"\nc4,-6.7,10,-10,18,-10 H400000v"+(40+e)+"\nH1013.1s-83.4,268,-264.1,840c-180.7,572,-277,876.3,-289,913c-4.7,4.7,-12.7,7,-24,7\ns-12,0,-12,0c-1.3,-3.3,-3.7,-11.7,-7,-25c-35.3,-125.3,-106.7,-373.3,-214,-744\nc-10,12,-21,25,-33,39s-32,39,-32,39c-6,-5.3,-15,-14,-27,-26s25,-30,25,-30\nc26.7,-32.7,52,-63,76,-91s52,-60,52,-60s208,722,208,722\nc56,-175.3,126.3,-397.3,211,-666c84.7,-268.7,153.8,-488.2,207.5,-658.5\nc53.7,-170.3,84.5,-266.8,92.5,-289.5z\nM"+(1001+e)+" "+t+"h400000v"+(40+e)+"h-400000z"}(t,T);break;case"sqrtSize3":a=function(e,t){return"M424,"+(2398+e+t)+"\nc-1.3,-0.7,-38.5,-172,-111.5,-514c-73,-342,-109.8,-513.3,-110.5,-514\nc0,-2,-10.7,14.3,-32,49c-4.7,7.3,-9.8,15.7,-15.5,25c-5.7,9.3,-9.8,16,-12.5,20\ns-5,7,-5,7c-4,-3.3,-8.3,-7.7,-13,-13s-13,-13,-13,-13s76,-122,76,-122s77,-121,77,-121\ns209,968,209,968c0,-2,84.7,-361.7,254,-1079c169.3,-717.3,254.7,-1077.7,256,-1081\nl"+e/4.223+" -"+e+"c4,-6.7,10,-10,18,-10 H400000\nv"+(40+e)+"H1014.6\ns-87.3,378.7,-272.6,1166c-185.3,787.3,-279.3,1182.3,-282,1185\nc-2,6,-10,9,-24,9\nc-8,0,-12,-0.7,-12,-2z M"+(1001+e)+" "+t+"\nh400000v"+(40+e)+"h-400000z"}(t,T);break;case"sqrtSize4":a=function(e,t){return"M473,"+(2713+e+t)+"\nc339.3,-1799.3,509.3,-2700,510,-2702 l"+e/5.298+" -"+e+"\nc3.3,-7.3,9.3,-11,18,-11 H400000v"+(40+e)+"H1017.7\ns-90.5,478,-276.2,1466c-185.7,988,-279.5,1483,-281.5,1485c-2,6,-10,9,-24,9\nc-8,0,-12,-0.7,-12,-2c0,-1.3,-5.3,-32,-16,-92c-50.7,-293.3,-119.7,-693.3,-207,-1200\nc0,-1.3,-5.3,8.7,-16,30c-10.7,21.3,-21.3,42.7,-32,64s-16,33,-16,33s-26,-26,-26,-26\ns76,-153,76,-153s77,-151,77,-151c0.7,0.7,35.7,202,105,604c67.3,400.7,102,602.7,104,\n606zM"+(1001+e)+" "+t+"h400000v"+(40+e)+"H1017.7z"}(t,T);break;case"sqrtTall":a=function(e,t,r){return"M702 "+(e+t)+"H400000"+(40+e)+"\nH742v"+(r-54-t-e)+"l-4 4-4 4c-.667.7 -2 1.5-4 2.5s-4.167 1.833-6.5 2.5-5.5 1-9.5 1\nh-12l-28-84c-16.667-52-96.667 -294.333-240-727l-212 -643 -85 170\nc-4-3.333-8.333-7.667-13 -13l-13-13l77-155 77-156c66 199.333 139 419.667\n219 661 l218 661zM702 "+t+"H400000v"+(40+e)+"H742z"}(t,T,r)}return a}(e,a,r),o=new ee(e,i),s=new Q([o],{width:"400em",height:U(t),viewBox:"0 0 400000 "+r,preserveAspectRatio:"xMinYMin slice"});return Je.makeSvgSpan(["hide-tail"],[s],n)},xr=["(","\\lparen",")","\\rparen","[","\\lbrack","]","\\rbrack","\\{","\\lbrace","\\}","\\rbrace","\\lfloor","\\rfloor","\u230a","\u230b","\\lceil","\\rceil","\u2308","\u2309","\\surd"],wr=["\\uparrow","\\downarrow","\\updownarrow","\\Uparrow","\\Downarrow","\\Updownarrow","|","\\|","\\vert","\\Vert","\\lvert","\\rvert","\\lVert","\\rVert","\\lgroup","\\rgroup","\u27ee","\u27ef","\\lmoustache","\\rmoustache","\u23b0","\u23b1"],kr=["<",">","\\langle","\\rangle","/","\\backslash","\\lt","\\gt"],Sr=[0,1.2,1.8,2.4,3],Mr=[{type:"small",style:S.SCRIPTSCRIPT},{type:"small",style:S.SCRIPT},{type:"small",style:S.TEXT},{type:"large",size:1},{type:"large",size:2},{type:"large",size:3},{type:"large",size:4}],zr=[{type:"small",style:S.SCRIPTSCRIPT},{type:"small",style:S.SCRIPT},{type:"small",style:S.TEXT},{type:"stack"}],Ar=[{type:"small",style:S.SCRIPTSCRIPT},{type:"small",style:S.SCRIPT},{type:"small",style:S.TEXT},{type:"large",size:1},{type:"large",size:2},{type:"large",size:3},{type:"large",size:4},{type:"stack"}],Tr=function(e){if("small"===e.type)return"Main-Regular";if("large"===e.type)return"Size"+e.size+"-Regular";if("stack"===e.type)return"Size4-Regular";throw new Error("Add support for delim type '"+e.type+"' here.")},Br=function(e,t,r,a){for(var n=Math.min(2,3-a.style.size);nt)return r[n]}return r[r.length-1]},Cr=function(e,t,r,a,n,i){var o;"<"===e||"\\lt"===e||"\u27e8"===e?e="\\langle":">"!==e&&"\\gt"!==e&&"\u27e9"!==e||(e="\\rangle"),o=c.contains(kr,e)?Mr:c.contains(xr,e)?Ar:zr;var s=Br(e,t,o,a);return"small"===s.type?function(e,t,r,a,n,i){var o=Je.makeSymbol(e,"Main-Regular",n,a),s=hr(o,t,a,i);return r&&mr(s,a,t),s}(e,s.style,r,a,n,i):"large"===s.type?cr(e,s.size,r,a,n,i):vr(e,t,r,a,n,i)},Nr={sqrtImage:function(e,t){var r,a,n=t.havingBaseSizing(),i=Br("\\surd",e*n.sizeMultiplier,Ar,n),o=n.sizeMultiplier,s=Math.max(0,t.minRuleThickness-t.fontMetrics().sqrtRuleThickness),l=0,h=0,m=0;return"small"===i.type?(e<1?o=1:e<1.4&&(o=.7),h=(1+s)/o,(r=yr("sqrtMain",l=(1+s+br)/o,m=1e3+1e3*s+80,s,t)).style.minWidth="0.853em",a=.833/o):"large"===i.type?(m=1080*Sr[i.size],h=(Sr[i.size]+s)/o,l=(Sr[i.size]+s+br)/o,(r=yr("sqrtSize"+i.size,l,m,s,t)).style.minWidth="1.02em",a=1/o):(l=e+s+br,h=e+s,m=Math.floor(1e3*e+s)+80,(r=yr("sqrtTall",l,m,s,t)).style.minWidth="0.742em",a=1.056),r.height=h,r.style.height=U(l),{span:r,advanceWidth:a,ruleWidth:(t.fontMetrics().sqrtRuleThickness+s)*o}},sizedDelim:function(e,t,r,a,n){if("<"===e||"\\lt"===e||"\u27e8"===e?e="\\langle":">"!==e&&"\\gt"!==e&&"\u27e9"!==e||(e="\\rangle"),c.contains(xr,e)||c.contains(kr,e))return cr(e,t,!1,r,a,n);if(c.contains(wr,e))return vr(e,Sr[t],!1,r,a,n);throw new o("Illegal delimiter: '"+e+"'")},sizeToMaxHeight:Sr,customSizedDelim:Cr,leftRightDelim:function(e,t,r,a,n,i){var o=a.fontMetrics().axisHeight*a.sizeMultiplier,s=5/a.fontMetrics().ptPerEm,l=Math.max(t-o,r+o),h=Math.max(l/500*901,2*l-s);return Cr(e,h,!0,a,n,i)}},qr={"\\bigl":{mclass:"mopen",size:1},"\\Bigl":{mclass:"mopen",size:2},"\\biggl":{mclass:"mopen",size:3},"\\Biggl":{mclass:"mopen",size:4},"\\bigr":{mclass:"mclose",size:1},"\\Bigr":{mclass:"mclose",size:2},"\\biggr":{mclass:"mclose",size:3},"\\Biggr":{mclass:"mclose",size:4},"\\bigm":{mclass:"mrel",size:1},"\\Bigm":{mclass:"mrel",size:2},"\\biggm":{mclass:"mrel",size:3},"\\Biggm":{mclass:"mrel",size:4},"\\big":{mclass:"mord",size:1},"\\Big":{mclass:"mord",size:2},"\\bigg":{mclass:"mord",size:3},"\\Bigg":{mclass:"mord",size:4}},Ir=["(","\\lparen",")","\\rparen","[","\\lbrack","]","\\rbrack","\\{","\\lbrace","\\}","\\rbrace","\\lfloor","\\rfloor","\u230a","\u230b","\\lceil","\\rceil","\u2308","\u2309","<",">","\\langle","\u27e8","\\rangle","\u27e9","\\lt","\\gt","\\lvert","\\rvert","\\lVert","\\rVert","\\lgroup","\\rgroup","\u27ee","\u27ef","\\lmoustache","\\rmoustache","\u23b0","\u23b1","/","\\backslash","|","\\vert","\\|","\\Vert","\\uparrow","\\Uparrow","\\downarrow","\\Downarrow","\\updownarrow","\\Updownarrow","."];function Rr(e,t){var r=Xt(e);if(r&&c.contains(Ir,r.text))return r;throw new o(r?"Invalid delimiter '"+r.text+"' after '"+t.funcName+"'":"Invalid delimiter type '"+e.type+"'",e)}function Hr(e){if(!e.body)throw new Error("Bug: The leftright ParseNode wasn't fully parsed.")}st({type:"delimsizing",names:["\\bigl","\\Bigl","\\biggl","\\Biggl","\\bigr","\\Bigr","\\biggr","\\Biggr","\\bigm","\\Bigm","\\biggm","\\Biggm","\\big","\\Big","\\bigg","\\Bigg"],props:{numArgs:1,argTypes:["primitive"]},handler:(e,t)=>{var r=Rr(t[0],e);return{type:"delimsizing",mode:e.parser.mode,size:qr[e.funcName].size,mclass:qr[e.funcName].mclass,delim:r.text}},htmlBuilder:(e,t)=>"."===e.delim?Je.makeSpan([e.mclass]):Nr.sizedDelim(e.delim,e.size,t,e.mode,[e.mclass]),mathmlBuilder:e=>{var t=[];"."!==e.delim&&t.push(Ct(e.delim,e.mode));var r=new Bt.MathNode("mo",t);"mopen"===e.mclass||"mclose"===e.mclass?r.setAttribute("fence","true"):r.setAttribute("fence","false"),r.setAttribute("stretchy","true");var a=U(Nr.sizeToMaxHeight[e.size]);return r.setAttribute("minsize",a),r.setAttribute("maxsize",a),r}}),st({type:"leftright-right",names:["\\right"],props:{numArgs:1,primitive:!0},handler:(e,t)=>{var r=e.parser.gullet.macros.get("\\current@color");if(r&&"string"!=typeof r)throw new o("\\current@color set to non-string in \\right");return{type:"leftright-right",mode:e.parser.mode,delim:Rr(t[0],e).text,color:r}}}),st({type:"leftright",names:["\\left"],props:{numArgs:1,primitive:!0},handler:(e,t)=>{var r=Rr(t[0],e),a=e.parser;++a.leftrightDepth;var n=a.parseExpression(!1);--a.leftrightDepth,a.expect("\\right",!1);var i=Ut(a.parseFunction(),"leftright-right");return{type:"leftright",mode:a.mode,body:n,left:r.text,right:i.delim,rightColor:i.color}},htmlBuilder:(e,t)=>{Hr(e);for(var r,a,n=ft(e.body,t,!0,["mopen","mclose"]),i=0,o=0,s=!1,l=0;l{Hr(e);var r=It(e.body,t);if("."!==e.left){var a=new Bt.MathNode("mo",[Ct(e.left,e.mode)]);a.setAttribute("fence","true"),r.unshift(a)}if("."!==e.right){var n=new Bt.MathNode("mo",[Ct(e.right,e.mode)]);n.setAttribute("fence","true"),e.rightColor&&n.setAttribute("mathcolor",e.rightColor),r.push(n)}return Nt(r)}}),st({type:"middle",names:["\\middle"],props:{numArgs:1,primitive:!0},handler:(e,t)=>{var r=Rr(t[0],e);if(!e.parser.leftrightDepth)throw new o("\\middle without preceding \\left",r);return{type:"middle",mode:e.parser.mode,delim:r.text}},htmlBuilder:(e,t)=>{var r;if("."===e.delim)r=wt(t,[]);else{r=Nr.sizedDelim(e.delim,1,t,e.mode,[]);var a={delim:e.delim,options:t};r.isMiddle=a}return r},mathmlBuilder:(e,t)=>{var r="\\vert"===e.delim||"|"===e.delim?Ct("|","text"):Ct(e.delim,e.mode),a=new Bt.MathNode("mo",[r]);return a.setAttribute("fence","true"),a.setAttribute("lspace","0.05em"),a.setAttribute("rspace","0.05em"),a}});var Or=(e,t)=>{var r,a,n,i=Je.wrapFragment(kt(e.body,t),t),o=e.label.slice(1),s=t.sizeMultiplier,l=0,h=c.isCharacterBox(e.body);if("sout"===o)(r=Je.makeSpan(["stretchy","sout"])).height=t.fontMetrics().defaultRuleThickness/s,l=-.5*t.fontMetrics().xHeight;else if("phase"===o){var m=G({number:.6,unit:"pt"},t),p=G({number:.35,unit:"ex"},t);s/=t.havingBaseSizing().sizeMultiplier;var u=i.height+i.depth+m+p;i.style.paddingLeft=U(u/2+m);var d=Math.floor(1e3*u*s),g="M400000 "+(a=d)+" H0 L"+a/2+" 0 l65 45 L145 "+(a-80)+" H400000z",f=new Q([new ee("phase",g)],{width:"400em",height:U(d/1e3),viewBox:"0 0 400000 "+d,preserveAspectRatio:"xMinYMin slice"});(r=Je.makeSvgSpan(["hide-tail"],[f],t)).style.height=U(u),l=i.depth+m+p}else{/cancel/.test(o)?h||i.classes.push("cancel-pad"):"angl"===o?i.classes.push("anglpad"):i.classes.push("boxpad");var v=0,b=0,y=0;/box/.test(o)?(y=Math.max(t.fontMetrics().fboxrule,t.minRuleThickness),b=v=t.fontMetrics().fboxsep+("colorbox"===o?0:y)):"angl"===o?(v=4*(y=Math.max(t.fontMetrics().defaultRuleThickness,t.minRuleThickness)),b=Math.max(0,.25-i.depth)):b=v=h?.2:0,r=Pt(i,o,v,b,t),/fbox|boxed|fcolorbox/.test(o)?(r.style.borderStyle="solid",r.style.borderWidth=U(y)):"angl"===o&&.049!==y&&(r.style.borderTopWidth=U(y),r.style.borderRightWidth=U(y)),l=i.depth+b,e.backgroundColor&&(r.style.backgroundColor=e.backgroundColor,e.borderColor&&(r.style.borderColor=e.borderColor))}if(e.backgroundColor)n=Je.makeVList({positionType:"individualShift",children:[{type:"elem",elem:r,shift:l},{type:"elem",elem:i,shift:0}]},t);else{var x=/cancel|phase/.test(o)?["svg-align"]:[];n=Je.makeVList({positionType:"individualShift",children:[{type:"elem",elem:i,shift:0},{type:"elem",elem:r,shift:l,wrapperClasses:x}]},t)}return/cancel/.test(o)&&(n.height=i.height,n.depth=i.depth),/cancel/.test(o)&&!h?Je.makeSpan(["mord","cancel-lap"],[n],t):Je.makeSpan(["mord"],[n],t)},Er=(e,t)=>{var r=0,a=new Bt.MathNode(e.label.indexOf("colorbox")>-1?"mpadded":"menclose",[Ht(e.body,t)]);switch(e.label){case"\\cancel":a.setAttribute("notation","updiagonalstrike");break;case"\\bcancel":a.setAttribute("notation","downdiagonalstrike");break;case"\\phase":a.setAttribute("notation","phasorangle");break;case"\\sout":a.setAttribute("notation","horizontalstrike");break;case"\\fbox":a.setAttribute("notation","box");break;case"\\angl":a.setAttribute("notation","actuarial");break;case"\\fcolorbox":case"\\colorbox":if(r=t.fontMetrics().fboxsep*t.fontMetrics().ptPerEm,a.setAttribute("width","+"+2*r+"pt"),a.setAttribute("height","+"+2*r+"pt"),a.setAttribute("lspace",r+"pt"),a.setAttribute("voffset",r+"pt"),"\\fcolorbox"===e.label){var n=Math.max(t.fontMetrics().fboxrule,t.minRuleThickness);a.setAttribute("style","border: "+n+"em solid "+String(e.borderColor))}break;case"\\xcancel":a.setAttribute("notation","updiagonalstrike downdiagonalstrike")}return e.backgroundColor&&a.setAttribute("mathbackground",e.backgroundColor),a};st({type:"enclose",names:["\\colorbox"],props:{numArgs:2,allowedInText:!0,argTypes:["color","text"]},handler(e,t,r){var{parser:a,funcName:n}=e,i=Ut(t[0],"color-token").color,o=t[1];return{type:"enclose",mode:a.mode,label:n,backgroundColor:i,body:o}},htmlBuilder:Or,mathmlBuilder:Er}),st({type:"enclose",names:["\\fcolorbox"],props:{numArgs:3,allowedInText:!0,argTypes:["color","color","text"]},handler(e,t,r){var{parser:a,funcName:n}=e,i=Ut(t[0],"color-token").color,o=Ut(t[1],"color-token").color,s=t[2];return{type:"enclose",mode:a.mode,label:n,backgroundColor:o,borderColor:i,body:s}},htmlBuilder:Or,mathmlBuilder:Er}),st({type:"enclose",names:["\\fbox"],props:{numArgs:1,argTypes:["hbox"],allowedInText:!0},handler(e,t){var{parser:r}=e;return{type:"enclose",mode:r.mode,label:"\\fbox",body:t[0]}}}),st({type:"enclose",names:["\\cancel","\\bcancel","\\xcancel","\\sout","\\phase"],props:{numArgs:1},handler(e,t){var{parser:r,funcName:a}=e,n=t[0];return{type:"enclose",mode:r.mode,label:a,body:n}},htmlBuilder:Or,mathmlBuilder:Er}),st({type:"enclose",names:["\\angl"],props:{numArgs:1,argTypes:["hbox"],allowedInText:!1},handler(e,t){var{parser:r}=e;return{type:"enclose",mode:r.mode,label:"\\angl",body:t[0]}}});var Lr={};function Dr(e){for(var{type:t,names:r,props:a,handler:n,htmlBuilder:i,mathmlBuilder:o}=e,s={type:t,numArgs:a.numArgs||0,allowedInText:!1,numOptionalArgs:0,handler:n},l=0;l{if(!e.parser.settings.displayMode)throw new o("{"+e.envName+"} can be used only in display mode.")};function Ur(e){if(-1===e.indexOf("ed"))return-1===e.indexOf("*")}function Yr(e,t,r){var{hskipBeforeAndAfter:a,addJot:n,cols:s,arraystretch:l,colSeparationType:h,autoTag:m,singleRow:c,emptySingleRow:p,maxNumCols:u,leqno:d}=t;if(e.gullet.beginGroup(),c||e.gullet.macros.set("\\cr","\\\\\\relax"),!l){var g=e.gullet.expandMacroAsText("\\arraystretch");if(null==g)l=1;else if(!(l=parseFloat(g))||l<0)throw new o("Invalid \\arraystretch: "+g)}e.gullet.beginGroup();var f=[],v=[f],b=[],y=[],x=null!=m?[]:void 0;function w(){m&&e.gullet.macros.set("\\@eqnsw","1",!0)}function k(){x&&(e.gullet.macros.get("\\df@tag")?(x.push(e.subparse([new i("\\df@tag")])),e.gullet.macros.set("\\df@tag",void 0,!0)):x.push(Boolean(m)&&"1"===e.gullet.macros.get("\\@eqnsw")))}for(w(),y.push(Fr(e));;){var S=e.parseExpression(!1,c?"\\end":"\\\\");e.gullet.endGroup(),e.gullet.beginGroup(),S={type:"ordgroup",mode:e.mode,body:S},r&&(S={type:"styling",mode:e.mode,style:r,body:[S]}),f.push(S);var M=e.fetch().text;if("&"===M){if(u&&f.length===u){if(c||h)throw new o("Too many tab characters: &",e.nextToken);e.settings.reportNonstrict("textEnv","Too few columns specified in the {array} column argument.")}e.consume()}else{if("\\end"===M){k(),1===f.length&&"styling"===S.type&&0===S.body[0].body.length&&(v.length>1||!p)&&v.pop(),y.length0&&(y+=.25),h.push({pos:y,isDashed:e[t]})}for(x(i[0]),r=0;r0&&(M<(B+=b)&&(M=B),B=0),e.addJot&&(M+=g),z.height=k,z.depth=M,y+=k,z.pos=y,y+=M+B,l[r]=z,x(i[r+1])}var C,N,q=y/2+t.fontMetrics().axisHeight,I=e.cols||[],R=[],H=[];if(e.tags&&e.tags.some((e=>e)))for(r=0;r=s)){var W=void 0;(a>0||e.hskipBeforeAndAfter)&&0!==(W=c.deflt(V.pregap,u))&&((C=Je.makeSpan(["arraycolsep"],[])).style.width=U(W),R.push(C));var _=[];for(r=0;r0){for(var K=Je.makeLineSpan("hline",t,m),J=Je.makeLineSpan("hdashline",t,m),Q=[{type:"elem",elem:l,shift:0}];h.length>0;){var ee=h.pop(),te=ee.pos-q;ee.isDashed?Q.push({type:"elem",elem:J,shift:te}):Q.push({type:"elem",elem:K,shift:te})}l=Je.makeVList({positionType:"individualShift",children:Q},t)}if(0===H.length)return Je.makeSpan(["mord"],[l],t);var re=Je.makeVList({positionType:"individualShift",children:H},t);return re=Je.makeSpan(["tag"],[re],t),Je.makeFragment([l,re])},_r={c:"center ",l:"left ",r:"right "},jr=function(e,t){for(var r=[],a=new Bt.MathNode("mtd",[],["mtr-glue"]),n=new Bt.MathNode("mtd",[],["mml-eqn-num"]),i=0;i0){var u=e.cols,d="",g=!1,f=0,v=u.length;"separator"===u[0].type&&(c+="top ",f=1),"separator"===u[u.length-1].type&&(c+="bottom ",v-=1);for(var b=f;b0?"left ":"",c+=S[S.length-1].length>0?"right ":"";for(var M=1;M-1?"alignat":"align",i="split"===e.envName,s=Yr(e.parser,{cols:a,addJot:!0,autoTag:i?void 0:Ur(e.envName),emptySingleRow:!0,colSeparationType:n,maxNumCols:i?2:void 0,leqno:e.parser.settings.leqno},"display"),l=0,h={type:"ordgroup",mode:e.mode,body:[]};if(t[0]&&"ordgroup"===t[0].type){for(var m="",c=0;c0&&p&&(g=1),a[u]={type:"align",align:d,pregap:g,postgap:0}}return s.colSeparationType=p?"align":"alignat",s};Dr({type:"array",names:["array","darray"],props:{numArgs:1},handler(e,t){var r=(Xt(t[0])?[t[0]]:Ut(t[0],"ordgroup").body).map((function(e){var t=Yt(e).text;if(-1!=="lcr".indexOf(t))return{type:"align",align:t};if("|"===t)return{type:"separator",separator:"|"};if(":"===t)return{type:"separator",separator:":"};throw new o("Unknown column alignment: "+t,e)})),a={cols:r,hskipBeforeAndAfter:!0,maxNumCols:r.length};return Yr(e.parser,a,Xr(e.envName))},htmlBuilder:Wr,mathmlBuilder:jr}),Dr({type:"array",names:["matrix","pmatrix","bmatrix","Bmatrix","vmatrix","Vmatrix","matrix*","pmatrix*","bmatrix*","Bmatrix*","vmatrix*","Vmatrix*"],props:{numArgs:0},handler(e){var t={matrix:null,pmatrix:["(",")"],bmatrix:["[","]"],Bmatrix:["\\{","\\}"],vmatrix:["|","|"],Vmatrix:["\\Vert","\\Vert"]}[e.envName.replace("*","")],r="c",a={hskipBeforeAndAfter:!1,cols:[{type:"align",align:r}]};if("*"===e.envName.charAt(e.envName.length-1)){var n=e.parser;if(n.consumeSpaces(),"["===n.fetch().text){if(n.consume(),n.consumeSpaces(),r=n.fetch().text,-1==="lcr".indexOf(r))throw new o("Expected l or c or r",n.nextToken);n.consume(),n.consumeSpaces(),n.expect("]"),n.consume(),a.cols=[{type:"align",align:r}]}}var i=Yr(e.parser,a,Xr(e.envName)),s=Math.max(0,...i.body.map((e=>e.length)));return i.cols=new Array(s).fill({type:"align",align:r}),t?{type:"leftright",mode:e.mode,body:[i],left:t[0],right:t[1],rightColor:void 0}:i},htmlBuilder:Wr,mathmlBuilder:jr}),Dr({type:"array",names:["smallmatrix"],props:{numArgs:0},handler(e){var t=Yr(e.parser,{arraystretch:.5},"script");return t.colSeparationType="small",t},htmlBuilder:Wr,mathmlBuilder:jr}),Dr({type:"array",names:["subarray"],props:{numArgs:1},handler(e,t){var r=(Xt(t[0])?[t[0]]:Ut(t[0],"ordgroup").body).map((function(e){var t=Yt(e).text;if(-1!=="lc".indexOf(t))return{type:"align",align:t};throw new o("Unknown column alignment: "+t,e)}));if(r.length>1)throw new o("{subarray} can contain only one column");var a={cols:r,hskipBeforeAndAfter:!1,arraystretch:.5};if((a=Yr(e.parser,a,"script")).body.length>0&&a.body[0].length>1)throw new o("{subarray} can contain only one column");return a},htmlBuilder:Wr,mathmlBuilder:jr}),Dr({type:"array",names:["cases","dcases","rcases","drcases"],props:{numArgs:0},handler(e){var t=Yr(e.parser,{arraystretch:1.2,cols:[{type:"align",align:"l",pregap:0,postgap:1},{type:"align",align:"l",pregap:0,postgap:0}]},Xr(e.envName));return{type:"leftright",mode:e.mode,body:[t],left:e.envName.indexOf("r")>-1?".":"\\{",right:e.envName.indexOf("r")>-1?"\\}":".",rightColor:void 0}},htmlBuilder:Wr,mathmlBuilder:jr}),Dr({type:"array",names:["align","align*","aligned","split"],props:{numArgs:0},handler:$r,htmlBuilder:Wr,mathmlBuilder:jr}),Dr({type:"array",names:["gathered","gather","gather*"],props:{numArgs:0},handler(e){c.contains(["gather","gather*"],e.envName)&&Gr(e);var t={cols:[{type:"align",align:"c"}],addJot:!0,colSeparationType:"gather",autoTag:Ur(e.envName),emptySingleRow:!0,leqno:e.parser.settings.leqno};return Yr(e.parser,t,"display")},htmlBuilder:Wr,mathmlBuilder:jr}),Dr({type:"array",names:["alignat","alignat*","alignedat"],props:{numArgs:1},handler:$r,htmlBuilder:Wr,mathmlBuilder:jr}),Dr({type:"array",names:["equation","equation*"],props:{numArgs:0},handler(e){Gr(e);var t={autoTag:Ur(e.envName),emptySingleRow:!0,singleRow:!0,maxNumCols:1,leqno:e.parser.settings.leqno};return Yr(e.parser,t,"display")},htmlBuilder:Wr,mathmlBuilder:jr}),Dr({type:"array",names:["CD"],props:{numArgs:0},handler:e=>(Gr(e),function(e){var t=[];for(e.gullet.beginGroup(),e.gullet.macros.set("\\cr","\\\\\\relax"),e.gullet.beginGroup();;){t.push(e.parseExpression(!1,"\\\\")),e.gullet.endGroup(),e.gullet.beginGroup();var r=e.fetch().text;if("&"!==r&&"\\\\"!==r){if("\\end"===r){0===t[t.length-1].length&&t.pop();break}throw new o("Expected \\\\ or \\cr or \\end",e.nextToken)}e.consume()}for(var a,n,i=[],s=[i],l=0;l-1);else{if(!("<>AV".indexOf(p)>-1))throw new o('Expected one of "<>AV=|." after @',h[c]);for(var d=0;d<2;d++){for(var g=!0,f=c+1;f{var r=e.font,a=t.withFont(r);return kt(e.body,a)},Jr=(e,t)=>{var r=e.font,a=t.withFont(r);return Ht(e.body,a)},Qr={"\\Bbb":"\\mathbb","\\bold":"\\mathbf","\\frak":"\\mathfrak","\\bm":"\\boldsymbol"};st({type:"font",names:["\\mathrm","\\mathit","\\mathbf","\\mathnormal","\\mathbb","\\mathcal","\\mathfrak","\\mathscr","\\mathsf","\\mathtt","\\Bbb","\\bold","\\frak"],props:{numArgs:1,allowedInArgument:!0},handler:(e,t)=>{var{parser:r,funcName:a}=e,n=ht(t[0]),i=a;return i in Qr&&(i=Qr[i]),{type:"font",mode:r.mode,font:i.slice(1),body:n}},htmlBuilder:Kr,mathmlBuilder:Jr}),st({type:"mclass",names:["\\boldsymbol","\\bm"],props:{numArgs:1},handler:(e,t)=>{var{parser:r}=e,a=t[0],n=c.isCharacterBox(a);return{type:"mclass",mode:r.mode,mclass:Qt(a),body:[{type:"font",mode:r.mode,font:"boldsymbol",body:a}],isCharacterBox:n}}}),st({type:"font",names:["\\rm","\\sf","\\tt","\\bf","\\it","\\cal"],props:{numArgs:0,allowedInText:!0},handler:(e,t)=>{var{parser:r,funcName:a,breakOnTokenText:n}=e,{mode:i}=r,o=r.parseExpression(!0,n);return{type:"font",mode:i,font:"math"+a.slice(1),body:{type:"ordgroup",mode:r.mode,body:o}}},htmlBuilder:Kr,mathmlBuilder:Jr});var ea=(e,t)=>{var r=t;return"display"===e?r=r.id>=S.SCRIPT.id?r.text():S.DISPLAY:"text"===e&&r.size===S.DISPLAY.size?r=S.TEXT:"script"===e?r=S.SCRIPT:"scriptscript"===e&&(r=S.SCRIPTSCRIPT),r},ta=(e,t)=>{var r,a=ea(e.size,t.style),n=a.fracNum(),i=a.fracDen();r=t.havingStyle(n);var o=kt(e.numer,r,t);if(e.continued){var s=8.5/t.fontMetrics().ptPerEm,l=3.5/t.fontMetrics().ptPerEm;o.height=o.height0?3*c:7*c,d=t.fontMetrics().denom1):(m>0?(p=t.fontMetrics().num2,u=c):(p=t.fontMetrics().num3,u=3*c),d=t.fontMetrics().denom2),h){var x=t.fontMetrics().axisHeight;p-o.depth-(x+.5*m){var r=new Bt.MathNode("mfrac",[Ht(e.numer,t),Ht(e.denom,t)]);if(e.hasBarLine){if(e.barSize){var a=G(e.barSize,t);r.setAttribute("linethickness",U(a))}}else r.setAttribute("linethickness","0px");var n=ea(e.size,t.style);if(n.size!==t.style.size){r=new Bt.MathNode("mstyle",[r]);var i=n.size===S.DISPLAY.size?"true":"false";r.setAttribute("displaystyle",i),r.setAttribute("scriptlevel","0")}if(null!=e.leftDelim||null!=e.rightDelim){var o=[];if(null!=e.leftDelim){var s=new Bt.MathNode("mo",[new Bt.TextNode(e.leftDelim.replace("\\",""))]);s.setAttribute("fence","true"),o.push(s)}if(o.push(r),null!=e.rightDelim){var l=new Bt.MathNode("mo",[new Bt.TextNode(e.rightDelim.replace("\\",""))]);l.setAttribute("fence","true"),o.push(l)}return Nt(o)}return r};st({type:"genfrac",names:["\\dfrac","\\frac","\\tfrac","\\dbinom","\\binom","\\tbinom","\\\\atopfrac","\\\\bracefrac","\\\\brackfrac"],props:{numArgs:2,allowedInArgument:!0},handler:(e,t)=>{var r,{parser:a,funcName:n}=e,i=t[0],o=t[1],s=null,l=null,h="auto";switch(n){case"\\dfrac":case"\\frac":case"\\tfrac":r=!0;break;case"\\\\atopfrac":r=!1;break;case"\\dbinom":case"\\binom":case"\\tbinom":r=!1,s="(",l=")";break;case"\\\\bracefrac":r=!1,s="\\{",l="\\}";break;case"\\\\brackfrac":r=!1,s="[",l="]";break;default:throw new Error("Unrecognized genfrac command")}switch(n){case"\\dfrac":case"\\dbinom":h="display";break;case"\\tfrac":case"\\tbinom":h="text"}return{type:"genfrac",mode:a.mode,continued:!1,numer:i,denom:o,hasBarLine:r,leftDelim:s,rightDelim:l,size:h,barSize:null}},htmlBuilder:ta,mathmlBuilder:ra}),st({type:"genfrac",names:["\\cfrac"],props:{numArgs:2},handler:(e,t)=>{var{parser:r,funcName:a}=e,n=t[0],i=t[1];return{type:"genfrac",mode:r.mode,continued:!0,numer:n,denom:i,hasBarLine:!0,leftDelim:null,rightDelim:null,size:"display",barSize:null}}}),st({type:"infix",names:["\\over","\\choose","\\atop","\\brace","\\brack"],props:{numArgs:0,infix:!0},handler(e){var t,{parser:r,funcName:a,token:n}=e;switch(a){case"\\over":t="\\frac";break;case"\\choose":t="\\binom";break;case"\\atop":t="\\\\atopfrac";break;case"\\brace":t="\\\\bracefrac";break;case"\\brack":t="\\\\brackfrac";break;default:throw new Error("Unrecognized infix genfrac command")}return{type:"infix",mode:r.mode,replaceWith:t,token:n}}});var aa=["display","text","script","scriptscript"],na=function(e){var t=null;return e.length>0&&(t="."===(t=e)?null:t),t};st({type:"genfrac",names:["\\genfrac"],props:{numArgs:6,allowedInArgument:!0,argTypes:["math","math","size","text","math","math"]},handler(e,t){var r,{parser:a}=e,n=t[4],i=t[5],o=ht(t[0]),s="atom"===o.type&&"open"===o.family?na(o.text):null,l=ht(t[1]),h="atom"===l.type&&"close"===l.family?na(l.text):null,m=Ut(t[2],"size"),c=null;r=!!m.isBlank||(c=m.value).number>0;var p="auto",u=t[3];if("ordgroup"===u.type){if(u.body.length>0){var d=Ut(u.body[0],"textord");p=aa[Number(d.text)]}}else u=Ut(u,"textord"),p=aa[Number(u.text)];return{type:"genfrac",mode:a.mode,numer:n,denom:i,continued:!1,hasBarLine:r,barSize:c,leftDelim:s,rightDelim:h,size:p}},htmlBuilder:ta,mathmlBuilder:ra}),st({type:"infix",names:["\\above"],props:{numArgs:1,argTypes:["size"],infix:!0},handler(e,t){var{parser:r,funcName:a,token:n}=e;return{type:"infix",mode:r.mode,replaceWith:"\\\\abovefrac",size:Ut(t[0],"size").value,token:n}}}),st({type:"genfrac",names:["\\\\abovefrac"],props:{numArgs:3,argTypes:["math","size","math"]},handler:(e,t)=>{var{parser:r,funcName:a}=e,n=t[0],i=function(e){if(!e)throw new Error("Expected non-null, but got "+String(e));return e}(Ut(t[1],"infix").size),o=t[2],s=i.number>0;return{type:"genfrac",mode:r.mode,numer:n,denom:o,continued:!1,hasBarLine:s,barSize:i,leftDelim:null,rightDelim:null,size:"auto"}},htmlBuilder:ta,mathmlBuilder:ra});var ia=(e,t)=>{var r,a,n=t.style;"supsub"===e.type?(r=e.sup?kt(e.sup,t.havingStyle(n.sup()),t):kt(e.sub,t.havingStyle(n.sub()),t),a=Ut(e.base,"horizBrace")):a=Ut(e,"horizBrace");var i,o=kt(a.base,t.havingBaseStyle(S.DISPLAY)),s=Gt(a,t);if(a.isOver?(i=Je.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:o},{type:"kern",size:.1},{type:"elem",elem:s}]},t)).children[0].children[0].children[1].classes.push("svg-align"):(i=Je.makeVList({positionType:"bottom",positionData:o.depth+.1+s.height,children:[{type:"elem",elem:s},{type:"kern",size:.1},{type:"elem",elem:o}]},t)).children[0].children[0].children[0].classes.push("svg-align"),r){var l=Je.makeSpan(["mord",a.isOver?"mover":"munder"],[i],t);i=a.isOver?Je.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:l},{type:"kern",size:.2},{type:"elem",elem:r}]},t):Je.makeVList({positionType:"bottom",positionData:l.depth+.2+r.height+r.depth,children:[{type:"elem",elem:r},{type:"kern",size:.2},{type:"elem",elem:l}]},t)}return Je.makeSpan(["mord",a.isOver?"mover":"munder"],[i],t)};st({type:"horizBrace",names:["\\overbrace","\\underbrace"],props:{numArgs:1},handler(e,t){var{parser:r,funcName:a}=e;return{type:"horizBrace",mode:r.mode,label:a,isOver:/^\\over/.test(a),base:t[0]}},htmlBuilder:ia,mathmlBuilder:(e,t)=>{var r=Ft(e.label);return new Bt.MathNode(e.isOver?"mover":"munder",[Ht(e.base,t),r])}}),st({type:"href",names:["\\href"],props:{numArgs:2,argTypes:["url","original"],allowedInText:!0},handler:(e,t)=>{var{parser:r}=e,a=t[1],n=Ut(t[0],"url").url;return r.settings.isTrusted({command:"\\href",url:n})?{type:"href",mode:r.mode,href:n,body:mt(a)}:r.formatUnsupportedCmd("\\href")},htmlBuilder:(e,t)=>{var r=ft(e.body,t,!1);return Je.makeAnchor(e.href,[],r,t)},mathmlBuilder:(e,t)=>{var r=Rt(e.body,t);return r instanceof At||(r=new At("mrow",[r])),r.setAttribute("href",e.href),r}}),st({type:"href",names:["\\url"],props:{numArgs:1,argTypes:["url"],allowedInText:!0},handler:(e,t)=>{var{parser:r}=e,a=Ut(t[0],"url").url;if(!r.settings.isTrusted({command:"\\url",url:a}))return r.formatUnsupportedCmd("\\url");for(var n=[],i=0;inew Bt.MathNode("mrow",It(e.body,t))}),st({type:"html",names:["\\htmlClass","\\htmlId","\\htmlStyle","\\htmlData"],props:{numArgs:2,argTypes:["raw","original"],allowedInText:!0},handler:(e,t)=>{var r,{parser:a,funcName:n,token:i}=e,s=Ut(t[0],"raw").string,l=t[1];a.settings.strict&&a.settings.reportNonstrict("htmlExtension","HTML extension is disabled on strict mode");var h={};switch(n){case"\\htmlClass":h.class=s,r={command:"\\htmlClass",class:s};break;case"\\htmlId":h.id=s,r={command:"\\htmlId",id:s};break;case"\\htmlStyle":h.style=s,r={command:"\\htmlStyle",style:s};break;case"\\htmlData":for(var m=s.split(","),c=0;c{var r=ft(e.body,t,!1),a=["enclosing"];e.attributes.class&&a.push(...e.attributes.class.trim().split(/\s+/));var n=Je.makeSpan(a,r,t);for(var i in e.attributes)"class"!==i&&e.attributes.hasOwnProperty(i)&&n.setAttribute(i,e.attributes[i]);return n},mathmlBuilder:(e,t)=>Rt(e.body,t)}),st({type:"htmlmathml",names:["\\html@mathml"],props:{numArgs:2,allowedInText:!0},handler:(e,t)=>{var{parser:r}=e;return{type:"htmlmathml",mode:r.mode,html:mt(t[0]),mathml:mt(t[1])}},htmlBuilder:(e,t)=>{var r=ft(e.html,t,!1);return Je.makeFragment(r)},mathmlBuilder:(e,t)=>Rt(e.mathml,t)});var oa=function(e){if(/^[-+]? *(\d+(\.\d*)?|\.\d+)$/.test(e))return{number:+e,unit:"bp"};var t=/([-+]?) *(\d+(?:\.\d*)?|\.\d+) *([a-z]{2})/.exec(e);if(!t)throw new o("Invalid size: '"+e+"' in \\includegraphics");var r={number:+(t[1]+t[2]),unit:t[3]};if(!F(r))throw new o("Invalid unit: '"+r.unit+"' in \\includegraphics.");return r};st({type:"includegraphics",names:["\\includegraphics"],props:{numArgs:1,numOptionalArgs:1,argTypes:["raw","url"],allowedInText:!1},handler:(e,t,r)=>{var{parser:a}=e,n={number:0,unit:"em"},i={number:.9,unit:"em"},s={number:0,unit:"em"},l="";if(r[0])for(var h=Ut(r[0],"raw").string.split(","),m=0;m{var r=G(e.height,t),a=0;e.totalheight.number>0&&(a=G(e.totalheight,t)-r);var n=0;e.width.number>0&&(n=G(e.width,t));var i={height:U(r+a)};n>0&&(i.width=U(n)),a>0&&(i.verticalAlign=U(-a));var o=new Z(e.src,e.alt,i);return o.height=r,o.depth=a,o},mathmlBuilder:(e,t)=>{var r=new Bt.MathNode("mglyph",[]);r.setAttribute("alt",e.alt);var a=G(e.height,t),n=0;if(e.totalheight.number>0&&(n=G(e.totalheight,t)-a,r.setAttribute("valign",U(-n))),r.setAttribute("height",U(a+n)),e.width.number>0){var i=G(e.width,t);r.setAttribute("width",U(i))}return r.setAttribute("src",e.src),r}}),st({type:"kern",names:["\\kern","\\mkern","\\hskip","\\mskip"],props:{numArgs:1,argTypes:["size"],primitive:!0,allowedInText:!0},handler(e,t){var{parser:r,funcName:a}=e,n=Ut(t[0],"size");if(r.settings.strict){var i="m"===a[1],o="mu"===n.value.unit;i?(o||r.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+a+" supports only mu units, not "+n.value.unit+" units"),"math"!==r.mode&&r.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+a+" works only in math mode")):o&&r.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+a+" doesn't support mu units")}return{type:"kern",mode:r.mode,dimension:n.value}},htmlBuilder:(e,t)=>Je.makeGlue(e.dimension,t),mathmlBuilder(e,t){var r=G(e.dimension,t);return new Bt.SpaceNode(r)}}),st({type:"lap",names:["\\mathllap","\\mathrlap","\\mathclap"],props:{numArgs:1,allowedInText:!0},handler:(e,t)=>{var{parser:r,funcName:a}=e,n=t[0];return{type:"lap",mode:r.mode,alignment:a.slice(5),body:n}},htmlBuilder:(e,t)=>{var r;"clap"===e.alignment?(r=Je.makeSpan([],[kt(e.body,t)]),r=Je.makeSpan(["inner"],[r],t)):r=Je.makeSpan(["inner"],[kt(e.body,t)]);var a=Je.makeSpan(["fix"],[]),n=Je.makeSpan([e.alignment],[r,a],t),i=Je.makeSpan(["strut"]);return i.style.height=U(n.height+n.depth),n.depth&&(i.style.verticalAlign=U(-n.depth)),n.children.unshift(i),n=Je.makeSpan(["thinbox"],[n],t),Je.makeSpan(["mord","vbox"],[n],t)},mathmlBuilder:(e,t)=>{var r=new Bt.MathNode("mpadded",[Ht(e.body,t)]);if("rlap"!==e.alignment){var a="llap"===e.alignment?"-1":"-0.5";r.setAttribute("lspace",a+"width")}return r.setAttribute("width","0px"),r}}),st({type:"styling",names:["\\(","$"],props:{numArgs:0,allowedInText:!0,allowedInMath:!1},handler(e,t){var{funcName:r,parser:a}=e,n=a.mode;a.switchMode("math");var i="\\("===r?"\\)":"$",o=a.parseExpression(!1,i);return a.expect(i),a.switchMode(n),{type:"styling",mode:a.mode,style:"text",body:o}}}),st({type:"text",names:["\\)","\\]"],props:{numArgs:0,allowedInText:!0,allowedInMath:!1},handler(e,t){throw new o("Mismatched "+e.funcName)}});var sa=(e,t)=>{switch(t.style.size){case S.DISPLAY.size:return e.display;case S.TEXT.size:return e.text;case S.SCRIPT.size:return e.script;case S.SCRIPTSCRIPT.size:return e.scriptscript;default:return e.text}};st({type:"mathchoice",names:["\\mathchoice"],props:{numArgs:4,primitive:!0},handler:(e,t)=>{var{parser:r}=e;return{type:"mathchoice",mode:r.mode,display:mt(t[0]),text:mt(t[1]),script:mt(t[2]),scriptscript:mt(t[3])}},htmlBuilder:(e,t)=>{var r=sa(e,t),a=ft(r,t,!1);return Je.makeFragment(a)},mathmlBuilder:(e,t)=>{var r=sa(e,t);return Rt(r,t)}});var la=(e,t,r,a,n,i,o)=>{e=Je.makeSpan([],[e]);var s,l,h,m=r&&c.isCharacterBox(r);if(t){var p=kt(t,a.havingStyle(n.sup()),a);l={elem:p,kern:Math.max(a.fontMetrics().bigOpSpacing1,a.fontMetrics().bigOpSpacing3-p.depth)}}if(r){var u=kt(r,a.havingStyle(n.sub()),a);s={elem:u,kern:Math.max(a.fontMetrics().bigOpSpacing2,a.fontMetrics().bigOpSpacing4-u.height)}}if(l&&s){var d=a.fontMetrics().bigOpSpacing5+s.elem.height+s.elem.depth+s.kern+e.depth+o;h=Je.makeVList({positionType:"bottom",positionData:d,children:[{type:"kern",size:a.fontMetrics().bigOpSpacing5},{type:"elem",elem:s.elem,marginLeft:U(-i)},{type:"kern",size:s.kern},{type:"elem",elem:e},{type:"kern",size:l.kern},{type:"elem",elem:l.elem,marginLeft:U(i)},{type:"kern",size:a.fontMetrics().bigOpSpacing5}]},a)}else if(s){var g=e.height-o;h=Je.makeVList({positionType:"top",positionData:g,children:[{type:"kern",size:a.fontMetrics().bigOpSpacing5},{type:"elem",elem:s.elem,marginLeft:U(-i)},{type:"kern",size:s.kern},{type:"elem",elem:e}]},a)}else{if(!l)return e;var f=e.depth+o;h=Je.makeVList({positionType:"bottom",positionData:f,children:[{type:"elem",elem:e},{type:"kern",size:l.kern},{type:"elem",elem:l.elem,marginLeft:U(i)},{type:"kern",size:a.fontMetrics().bigOpSpacing5}]},a)}var v=[h];if(s&&0!==i&&!m){var b=Je.makeSpan(["mspace"],[],a);b.style.marginRight=U(i),v.unshift(b)}return Je.makeSpan(["mop","op-limits"],v,a)},ha=["\\smallint"],ma=(e,t)=>{var r,a,n,i=!1;"supsub"===e.type?(r=e.sup,a=e.sub,n=Ut(e.base,"op"),i=!0):n=Ut(e,"op");var o,s=t.style,l=!1;if(s.size===S.DISPLAY.size&&n.symbol&&!c.contains(ha,n.name)&&(l=!0),n.symbol){var h=l?"Size2-Regular":"Size1-Regular",m="";if("\\oiint"!==n.name&&"\\oiiint"!==n.name||(m=n.name.slice(1),n.name="oiint"===m?"\\iint":"\\iiint"),o=Je.makeSymbol(n.name,h,"math",t,["mop","op-symbol",l?"large-op":"small-op"]),m.length>0){var p=o.italic,u=Je.staticSvg(m+"Size"+(l?"2":"1"),t);o=Je.makeVList({positionType:"individualShift",children:[{type:"elem",elem:o,shift:0},{type:"elem",elem:u,shift:l?.08:0}]},t),n.name="\\"+m,o.classes.unshift("mop"),o.italic=p}}else if(n.body){var d=ft(n.body,t,!0);1===d.length&&d[0]instanceof J?(o=d[0]).classes[0]="mop":o=Je.makeSpan(["mop"],d,t)}else{for(var g=[],f=1;f{var r;if(e.symbol)r=new At("mo",[Ct(e.name,e.mode)]),c.contains(ha,e.name)&&r.setAttribute("largeop","false");else if(e.body)r=new At("mo",It(e.body,t));else{r=new At("mi",[new Tt(e.name.slice(1))]);var a=new At("mo",[Ct("\u2061","text")]);r=e.parentIsSupSub?new At("mrow",[r,a]):zt([r,a])}return r},pa={"\u220f":"\\prod","\u2210":"\\coprod","\u2211":"\\sum","\u22c0":"\\bigwedge","\u22c1":"\\bigvee","\u22c2":"\\bigcap","\u22c3":"\\bigcup","\u2a00":"\\bigodot","\u2a01":"\\bigoplus","\u2a02":"\\bigotimes","\u2a04":"\\biguplus","\u2a06":"\\bigsqcup"};st({type:"op",names:["\\coprod","\\bigvee","\\bigwedge","\\biguplus","\\bigcap","\\bigcup","\\intop","\\prod","\\sum","\\bigotimes","\\bigoplus","\\bigodot","\\bigsqcup","\\smallint","\u220f","\u2210","\u2211","\u22c0","\u22c1","\u22c2","\u22c3","\u2a00","\u2a01","\u2a02","\u2a04","\u2a06"],props:{numArgs:0},handler:(e,t)=>{var{parser:r,funcName:a}=e,n=a;return 1===n.length&&(n=pa[n]),{type:"op",mode:r.mode,limits:!0,parentIsSupSub:!1,symbol:!0,name:n}},htmlBuilder:ma,mathmlBuilder:ca}),st({type:"op",names:["\\mathop"],props:{numArgs:1,primitive:!0},handler:(e,t)=>{var{parser:r}=e,a=t[0];return{type:"op",mode:r.mode,limits:!1,parentIsSupSub:!1,symbol:!1,body:mt(a)}},htmlBuilder:ma,mathmlBuilder:ca});var ua={"\u222b":"\\int","\u222c":"\\iint","\u222d":"\\iiint","\u222e":"\\oint","\u222f":"\\oiint","\u2230":"\\oiiint"};st({type:"op",names:["\\arcsin","\\arccos","\\arctan","\\arctg","\\arcctg","\\arg","\\ch","\\cos","\\cosec","\\cosh","\\cot","\\cotg","\\coth","\\csc","\\ctg","\\cth","\\deg","\\dim","\\exp","\\hom","\\ker","\\lg","\\ln","\\log","\\sec","\\sin","\\sinh","\\sh","\\tan","\\tanh","\\tg","\\th"],props:{numArgs:0},handler(e){var{parser:t,funcName:r}=e;return{type:"op",mode:t.mode,limits:!1,parentIsSupSub:!1,symbol:!1,name:r}},htmlBuilder:ma,mathmlBuilder:ca}),st({type:"op",names:["\\det","\\gcd","\\inf","\\lim","\\max","\\min","\\Pr","\\sup"],props:{numArgs:0},handler(e){var{parser:t,funcName:r}=e;return{type:"op",mode:t.mode,limits:!0,parentIsSupSub:!1,symbol:!1,name:r}},htmlBuilder:ma,mathmlBuilder:ca}),st({type:"op",names:["\\int","\\iint","\\iiint","\\oint","\\oiint","\\oiiint","\u222b","\u222c","\u222d","\u222e","\u222f","\u2230"],props:{numArgs:0},handler(e){var{parser:t,funcName:r}=e,a=r;return 1===a.length&&(a=ua[a]),{type:"op",mode:t.mode,limits:!1,parentIsSupSub:!1,symbol:!0,name:a}},htmlBuilder:ma,mathmlBuilder:ca});var da=(e,t)=>{var r,a,n,i,o=!1;if("supsub"===e.type?(r=e.sup,a=e.sub,n=Ut(e.base,"operatorname"),o=!0):n=Ut(e,"operatorname"),n.body.length>0){for(var s=n.body.map((e=>{var t=e.text;return"string"==typeof t?{type:"textord",mode:e.mode,text:t}:e})),l=ft(s,t.withFont("mathrm"),!0),h=0;h{var{parser:r,funcName:a}=e,n=t[0];return{type:"operatorname",mode:r.mode,body:mt(n),alwaysHandleSupSub:"\\operatornamewithlimits"===a,limits:!1,parentIsSupSub:!1}},htmlBuilder:da,mathmlBuilder:(e,t)=>{for(var r=It(e.body,t.withFont("mathrm")),a=!0,n=0;ne.toText())).join("");r=[new Bt.TextNode(s)]}var l=new Bt.MathNode("mi",r);l.setAttribute("mathvariant","normal");var h=new Bt.MathNode("mo",[Ct("\u2061","text")]);return e.parentIsSupSub?new Bt.MathNode("mrow",[l,h]):Bt.newDocumentFragment([l,h])}}),Pr("\\operatorname","\\@ifstar\\operatornamewithlimits\\operatorname@"),lt({type:"ordgroup",htmlBuilder:(e,t)=>e.semisimple?Je.makeFragment(ft(e.body,t,!1)):Je.makeSpan(["mord"],ft(e.body,t,!0),t),mathmlBuilder:(e,t)=>Rt(e.body,t,!0)}),st({type:"overline",names:["\\overline"],props:{numArgs:1},handler(e,t){var{parser:r}=e,a=t[0];return{type:"overline",mode:r.mode,body:a}},htmlBuilder(e,t){var r=kt(e.body,t.havingCrampedStyle()),a=Je.makeLineSpan("overline-line",t),n=t.fontMetrics().defaultRuleThickness,i=Je.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:r},{type:"kern",size:3*n},{type:"elem",elem:a},{type:"kern",size:n}]},t);return Je.makeSpan(["mord","overline"],[i],t)},mathmlBuilder(e,t){var r=new Bt.MathNode("mo",[new Bt.TextNode("\u203e")]);r.setAttribute("stretchy","true");var a=new Bt.MathNode("mover",[Ht(e.body,t),r]);return a.setAttribute("accent","true"),a}}),st({type:"phantom",names:["\\phantom"],props:{numArgs:1,allowedInText:!0},handler:(e,t)=>{var{parser:r}=e,a=t[0];return{type:"phantom",mode:r.mode,body:mt(a)}},htmlBuilder:(e,t)=>{var r=ft(e.body,t.withPhantom(),!1);return Je.makeFragment(r)},mathmlBuilder:(e,t)=>{var r=It(e.body,t);return new Bt.MathNode("mphantom",r)}}),st({type:"hphantom",names:["\\hphantom"],props:{numArgs:1,allowedInText:!0},handler:(e,t)=>{var{parser:r}=e,a=t[0];return{type:"hphantom",mode:r.mode,body:a}},htmlBuilder:(e,t)=>{var r=Je.makeSpan([],[kt(e.body,t.withPhantom())]);if(r.height=0,r.depth=0,r.children)for(var a=0;a{var r=It(mt(e.body),t),a=new Bt.MathNode("mphantom",r),n=new Bt.MathNode("mpadded",[a]);return n.setAttribute("height","0px"),n.setAttribute("depth","0px"),n}}),st({type:"vphantom",names:["\\vphantom"],props:{numArgs:1,allowedInText:!0},handler:(e,t)=>{var{parser:r}=e,a=t[0];return{type:"vphantom",mode:r.mode,body:a}},htmlBuilder:(e,t)=>{var r=Je.makeSpan(["inner"],[kt(e.body,t.withPhantom())]),a=Je.makeSpan(["fix"],[]);return Je.makeSpan(["mord","rlap"],[r,a],t)},mathmlBuilder:(e,t)=>{var r=It(mt(e.body),t),a=new Bt.MathNode("mphantom",r),n=new Bt.MathNode("mpadded",[a]);return n.setAttribute("width","0px"),n}}),st({type:"raisebox",names:["\\raisebox"],props:{numArgs:2,argTypes:["size","hbox"],allowedInText:!0},handler(e,t){var{parser:r}=e,a=Ut(t[0],"size").value,n=t[1];return{type:"raisebox",mode:r.mode,dy:a,body:n}},htmlBuilder(e,t){var r=kt(e.body,t),a=G(e.dy,t);return Je.makeVList({positionType:"shift",positionData:-a,children:[{type:"elem",elem:r}]},t)},mathmlBuilder(e,t){var r=new Bt.MathNode("mpadded",[Ht(e.body,t)]),a=e.dy.number+e.dy.unit;return r.setAttribute("voffset",a),r}}),st({type:"internal",names:["\\relax"],props:{numArgs:0,allowedInText:!0},handler(e){var{parser:t}=e;return{type:"internal",mode:t.mode}}}),st({type:"rule",names:["\\rule"],props:{numArgs:2,numOptionalArgs:1,argTypes:["size","size","size"]},handler(e,t,r){var{parser:a}=e,n=r[0],i=Ut(t[0],"size"),o=Ut(t[1],"size");return{type:"rule",mode:a.mode,shift:n&&Ut(n,"size").value,width:i.value,height:o.value}},htmlBuilder(e,t){var r=Je.makeSpan(["mord","rule"],[],t),a=G(e.width,t),n=G(e.height,t),i=e.shift?G(e.shift,t):0;return r.style.borderRightWidth=U(a),r.style.borderTopWidth=U(n),r.style.bottom=U(i),r.width=a,r.height=n+i,r.depth=-i,r.maxFontSize=1.125*n*t.sizeMultiplier,r},mathmlBuilder(e,t){var r=G(e.width,t),a=G(e.height,t),n=e.shift?G(e.shift,t):0,i=t.color&&t.getColor()||"black",o=new Bt.MathNode("mspace");o.setAttribute("mathbackground",i),o.setAttribute("width",U(r)),o.setAttribute("height",U(a));var s=new Bt.MathNode("mpadded",[o]);return n>=0?s.setAttribute("height",U(n)):(s.setAttribute("height",U(n)),s.setAttribute("depth",U(-n))),s.setAttribute("voffset",U(n)),s}});var fa=["\\tiny","\\sixptsize","\\scriptsize","\\footnotesize","\\small","\\normalsize","\\large","\\Large","\\LARGE","\\huge","\\Huge"];st({type:"sizing",names:fa,props:{numArgs:0,allowedInText:!0},handler:(e,t)=>{var{breakOnTokenText:r,funcName:a,parser:n}=e,i=n.parseExpression(!1,r);return{type:"sizing",mode:n.mode,size:fa.indexOf(a)+1,body:i}},htmlBuilder:(e,t)=>{var r=t.havingSize(e.size);return ga(e.body,r,t)},mathmlBuilder:(e,t)=>{var r=t.havingSize(e.size),a=It(e.body,r),n=new Bt.MathNode("mstyle",a);return n.setAttribute("mathsize",U(r.sizeMultiplier)),n}}),st({type:"smash",names:["\\smash"],props:{numArgs:1,numOptionalArgs:1,allowedInText:!0},handler:(e,t,r)=>{var{parser:a}=e,n=!1,i=!1,o=r[0]&&Ut(r[0],"ordgroup");if(o)for(var s="",l=0;l{var r=Je.makeSpan([],[kt(e.body,t)]);if(!e.smashHeight&&!e.smashDepth)return r;if(e.smashHeight&&(r.height=0,r.children))for(var a=0;a{var r=new Bt.MathNode("mpadded",[Ht(e.body,t)]);return e.smashHeight&&r.setAttribute("height","0px"),e.smashDepth&&r.setAttribute("depth","0px"),r}}),st({type:"sqrt",names:["\\sqrt"],props:{numArgs:1,numOptionalArgs:1},handler(e,t,r){var{parser:a}=e,n=r[0],i=t[0];return{type:"sqrt",mode:a.mode,body:i,index:n}},htmlBuilder(e,t){var r=kt(e.body,t.havingCrampedStyle());0===r.height&&(r.height=t.fontMetrics().xHeight),r=Je.wrapFragment(r,t);var a=t.fontMetrics().defaultRuleThickness,n=a;t.style.idr.height+r.depth+i&&(i=(i+m-r.height-r.depth)/2);var c=s.height-r.height-i-l;r.style.paddingLeft=U(h);var p=Je.makeVList({positionType:"firstBaseline",children:[{type:"elem",elem:r,wrapperClasses:["svg-align"]},{type:"kern",size:-(r.height+c)},{type:"elem",elem:s},{type:"kern",size:l}]},t);if(e.index){var u=t.havingStyle(S.SCRIPTSCRIPT),d=kt(e.index,u,t),g=.6*(p.height-p.depth),f=Je.makeVList({positionType:"shift",positionData:-g,children:[{type:"elem",elem:d}]},t),v=Je.makeSpan(["root"],[f]);return Je.makeSpan(["mord","sqrt"],[v,p],t)}return Je.makeSpan(["mord","sqrt"],[p],t)},mathmlBuilder(e,t){var{body:r,index:a}=e;return a?new Bt.MathNode("mroot",[Ht(r,t),Ht(a,t)]):new Bt.MathNode("msqrt",[Ht(r,t)])}});var va={display:S.DISPLAY,text:S.TEXT,script:S.SCRIPT,scriptscript:S.SCRIPTSCRIPT};st({type:"styling",names:["\\displaystyle","\\textstyle","\\scriptstyle","\\scriptscriptstyle"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(e,t){var{breakOnTokenText:r,funcName:a,parser:n}=e,i=n.parseExpression(!0,r),o=a.slice(1,a.length-5);return{type:"styling",mode:n.mode,style:o,body:i}},htmlBuilder(e,t){var r=va[e.style],a=t.havingStyle(r).withFont("");return ga(e.body,a,t)},mathmlBuilder(e,t){var r=va[e.style],a=t.havingStyle(r),n=It(e.body,a),i=new Bt.MathNode("mstyle",n),o={display:["0","true"],text:["0","false"],script:["1","false"],scriptscript:["2","false"]}[e.style];return i.setAttribute("scriptlevel",o[0]),i.setAttribute("displaystyle",o[1]),i}});lt({type:"supsub",htmlBuilder(e,t){var r=function(e,t){var r=e.base;return r?"op"===r.type?r.limits&&(t.style.size===S.DISPLAY.size||r.alwaysHandleSupSub)?ma:null:"operatorname"===r.type?r.alwaysHandleSupSub&&(t.style.size===S.DISPLAY.size||r.limits)?da:null:"accent"===r.type?c.isCharacterBox(r.base)?Wt:null:"horizBrace"===r.type&&!e.sub===r.isOver?ia:null:null}(e,t);if(r)return r(e,t);var a,n,i,{base:o,sup:s,sub:l}=e,h=kt(o,t),m=t.fontMetrics(),p=0,u=0,d=o&&c.isCharacterBox(o);if(s){var g=t.havingStyle(t.style.sup());a=kt(s,g,t),d||(p=h.height-g.fontMetrics().supDrop*g.sizeMultiplier/t.sizeMultiplier)}if(l){var f=t.havingStyle(t.style.sub());n=kt(l,f,t),d||(u=h.depth+f.fontMetrics().subDrop*f.sizeMultiplier/t.sizeMultiplier)}i=t.style===S.DISPLAY?m.sup1:t.style.cramped?m.sup3:m.sup2;var v,b=t.sizeMultiplier,y=U(.5/m.ptPerEm/b),x=null;if(n){var w=e.base&&"op"===e.base.type&&e.base.name&&("\\oiint"===e.base.name||"\\oiiint"===e.base.name);(h instanceof J||w)&&(x=U(-h.italic))}if(a&&n){p=Math.max(p,i,a.depth+.25*m.xHeight),u=Math.max(u,m.sub2);var k=4*m.defaultRuleThickness;if(p-a.depth-(n.height-u)0&&(p+=M,u-=M)}var z=[{type:"elem",elem:n,shift:u,marginRight:y,marginLeft:x},{type:"elem",elem:a,shift:-p,marginRight:y}];v=Je.makeVList({positionType:"individualShift",children:z},t)}else if(n){u=Math.max(u,m.sub1,n.height-.8*m.xHeight);var A=[{type:"elem",elem:n,marginLeft:x,marginRight:y}];v=Je.makeVList({positionType:"shift",positionData:u,children:A},t)}else{if(!a)throw new Error("supsub must have either sup or sub.");p=Math.max(p,i,a.depth+.25*m.xHeight),v=Je.makeVList({positionType:"shift",positionData:-p,children:[{type:"elem",elem:a,marginRight:y}]},t)}var T=xt(h,"right")||"mord";return Je.makeSpan([T],[h,Je.makeSpan(["msupsub"],[v])],t)},mathmlBuilder(e,t){var r,a=!1;e.base&&"horizBrace"===e.base.type&&!!e.sup===e.base.isOver&&(a=!0,r=e.base.isOver),!e.base||"op"!==e.base.type&&"operatorname"!==e.base.type||(e.base.parentIsSupSub=!0);var n,i=[Ht(e.base,t)];if(e.sub&&i.push(Ht(e.sub,t)),e.sup&&i.push(Ht(e.sup,t)),a)n=r?"mover":"munder";else if(e.sub)if(e.sup){var o=e.base;n=o&&"op"===o.type&&o.limits&&t.style===S.DISPLAY||o&&"operatorname"===o.type&&o.alwaysHandleSupSub&&(t.style===S.DISPLAY||o.limits)?"munderover":"msubsup"}else{var s=e.base;n=s&&"op"===s.type&&s.limits&&(t.style===S.DISPLAY||s.alwaysHandleSupSub)||s&&"operatorname"===s.type&&s.alwaysHandleSupSub&&(s.limits||t.style===S.DISPLAY)?"munder":"msub"}else{var l=e.base;n=l&&"op"===l.type&&l.limits&&(t.style===S.DISPLAY||l.alwaysHandleSupSub)||l&&"operatorname"===l.type&&l.alwaysHandleSupSub&&(l.limits||t.style===S.DISPLAY)?"mover":"msup"}return new Bt.MathNode(n,i)}}),lt({type:"atom",htmlBuilder:(e,t)=>Je.mathsym(e.text,e.mode,t,["m"+e.family]),mathmlBuilder(e,t){var r=new Bt.MathNode("mo",[Ct(e.text,e.mode)]);if("bin"===e.family){var a=qt(e,t);"bold-italic"===a&&r.setAttribute("mathvariant",a)}else"punct"===e.family?r.setAttribute("separator","true"):"open"!==e.family&&"close"!==e.family||r.setAttribute("stretchy","false");return r}});var ba={mi:"italic",mn:"normal",mtext:"normal"};lt({type:"mathord",htmlBuilder:(e,t)=>Je.makeOrd(e,t,"mathord"),mathmlBuilder(e,t){var r=new Bt.MathNode("mi",[Ct(e.text,e.mode,t)]),a=qt(e,t)||"italic";return a!==ba[r.type]&&r.setAttribute("mathvariant",a),r}}),lt({type:"textord",htmlBuilder:(e,t)=>Je.makeOrd(e,t,"textord"),mathmlBuilder(e,t){var r,a=Ct(e.text,e.mode,t),n=qt(e,t)||"normal";return r="text"===e.mode?new Bt.MathNode("mtext",[a]):/[0-9]/.test(e.text)?new Bt.MathNode("mn",[a]):"\\prime"===e.text?new Bt.MathNode("mo",[a]):new Bt.MathNode("mi",[a]),n!==ba[r.type]&&r.setAttribute("mathvariant",n),r}});var ya={"\\nobreak":"nobreak","\\allowbreak":"allowbreak"},xa={" ":{},"\\ ":{},"~":{className:"nobreak"},"\\space":{},"\\nobreakspace":{className:"nobreak"}};lt({type:"spacing",htmlBuilder(e,t){if(xa.hasOwnProperty(e.text)){var r=xa[e.text].className||"";if("text"===e.mode){var a=Je.makeOrd(e,t,"textord");return a.classes.push(r),a}return Je.makeSpan(["mspace",r],[Je.mathsym(e.text,e.mode,t)],t)}if(ya.hasOwnProperty(e.text))return Je.makeSpan(["mspace",ya[e.text]],[],t);throw new o('Unknown type of space "'+e.text+'"')},mathmlBuilder(e,t){if(!xa.hasOwnProperty(e.text)){if(ya.hasOwnProperty(e.text))return new Bt.MathNode("mspace");throw new o('Unknown type of space "'+e.text+'"')}return new Bt.MathNode("mtext",[new Bt.TextNode("\xa0")])}});var wa=()=>{var e=new Bt.MathNode("mtd",[]);return e.setAttribute("width","50%"),e};lt({type:"tag",mathmlBuilder(e,t){var r=new Bt.MathNode("mtable",[new Bt.MathNode("mtr",[wa(),new Bt.MathNode("mtd",[Rt(e.body,t)]),wa(),new Bt.MathNode("mtd",[Rt(e.tag,t)])])]);return r.setAttribute("width","100%"),r}});var ka={"\\text":void 0,"\\textrm":"textrm","\\textsf":"textsf","\\texttt":"texttt","\\textnormal":"textrm"},Sa={"\\textbf":"textbf","\\textmd":"textmd"},Ma={"\\textit":"textit","\\textup":"textup"},za=(e,t)=>{var r=e.font;return r?ka[r]?t.withTextFontFamily(ka[r]):Sa[r]?t.withTextFontWeight(Sa[r]):t.withTextFontShape(Ma[r]):t};st({type:"text",names:["\\text","\\textrm","\\textsf","\\texttt","\\textnormal","\\textbf","\\textmd","\\textit","\\textup"],props:{numArgs:1,argTypes:["text"],allowedInArgument:!0,allowedInText:!0},handler(e,t){var{parser:r,funcName:a}=e,n=t[0];return{type:"text",mode:r.mode,body:mt(n),font:a}},htmlBuilder(e,t){var r=za(e,t),a=ft(e.body,r,!0);return Je.makeSpan(["mord","text"],a,r)},mathmlBuilder(e,t){var r=za(e,t);return Rt(e.body,r)}}),st({type:"underline",names:["\\underline"],props:{numArgs:1,allowedInText:!0},handler(e,t){var{parser:r}=e;return{type:"underline",mode:r.mode,body:t[0]}},htmlBuilder(e,t){var r=kt(e.body,t),a=Je.makeLineSpan("underline-line",t),n=t.fontMetrics().defaultRuleThickness,i=Je.makeVList({positionType:"top",positionData:r.height,children:[{type:"kern",size:n},{type:"elem",elem:a},{type:"kern",size:3*n},{type:"elem",elem:r}]},t);return Je.makeSpan(["mord","underline"],[i],t)},mathmlBuilder(e,t){var r=new Bt.MathNode("mo",[new Bt.TextNode("\u203e")]);r.setAttribute("stretchy","true");var a=new Bt.MathNode("munder",[Ht(e.body,t),r]);return a.setAttribute("accentunder","true"),a}}),st({type:"vcenter",names:["\\vcenter"],props:{numArgs:1,argTypes:["original"],allowedInText:!1},handler(e,t){var{parser:r}=e;return{type:"vcenter",mode:r.mode,body:t[0]}},htmlBuilder(e,t){var r=kt(e.body,t),a=t.fontMetrics().axisHeight,n=.5*(r.height-a-(r.depth+a));return Je.makeVList({positionType:"shift",positionData:n,children:[{type:"elem",elem:r}]},t)},mathmlBuilder:(e,t)=>new Bt.MathNode("mpadded",[Ht(e.body,t)],["vcenter"])}),st({type:"verb",names:["\\verb"],props:{numArgs:0,allowedInText:!0},handler(e,t,r){throw new o("\\verb ended by end of line instead of matching delimiter")},htmlBuilder(e,t){for(var r=Aa(e),a=[],n=t.havingStyle(t.style.text()),i=0;ie.body.replace(/ /g,e.star?"\u2423":"\xa0"),Ta=nt,Ba="[ \r\n\t]",Ca="(\\\\[a-zA-Z@]+)"+Ba+"*",Na="[\u0300-\u036f]",qa=new RegExp(Na+"+$"),Ia="("+Ba+"+)|\\\\(\n|[ \r\t]+\n?)[ \r\t]*|([!-\\[\\]-\u2027\u202a-\ud7ff\uf900-\uffff]"+Na+"*|[\ud800-\udbff][\udc00-\udfff]"+Na+"*|\\\\verb\\*([^]).*?\\4|\\\\verb([^*a-zA-Z]).*?\\5|"+Ca+"|\\\\[^\ud800-\udfff])";class Ra{constructor(e,t){this.input=void 0,this.settings=void 0,this.tokenRegex=void 0,this.catcodes=void 0,this.input=e,this.settings=t,this.tokenRegex=new RegExp(Ia,"g"),this.catcodes={"%":14,"~":13}}setCatcode(e,t){this.catcodes[e]=t}lex(){var e=this.input,t=this.tokenRegex.lastIndex;if(t===e.length)return new i("EOF",new n(this,t,t));var r=this.tokenRegex.exec(e);if(null===r||r.index!==t)throw new o("Unexpected character: '"+e[t]+"'",new i(e[t],new n(this,t,t+1)));var a=r[6]||r[3]||(r[2]?"\\ ":" ");if(14===this.catcodes[a]){var s=e.indexOf("\n",this.tokenRegex.lastIndex);return-1===s?(this.tokenRegex.lastIndex=e.length,this.settings.reportNonstrict("commentAtEnd","% comment has no terminating newline; LaTeX would fail because of commenting the end of math mode (e.g. $)")):this.tokenRegex.lastIndex=s+1,this.lex()}return new i(a,new n(this,t,this.tokenRegex.lastIndex))}}class Ha{constructor(e,t){void 0===e&&(e={}),void 0===t&&(t={}),this.current=void 0,this.builtins=void 0,this.undefStack=void 0,this.current=t,this.builtins=e,this.undefStack=[]}beginGroup(){this.undefStack.push({})}endGroup(){if(0===this.undefStack.length)throw new o("Unbalanced namespace destruction: attempt to pop global namespace; please report this as a bug");var e=this.undefStack.pop();for(var t in e)e.hasOwnProperty(t)&&(null==e[t]?delete this.current[t]:this.current[t]=e[t])}endGroups(){for(;this.undefStack.length>0;)this.endGroup()}has(e){return this.current.hasOwnProperty(e)||this.builtins.hasOwnProperty(e)}get(e){return this.current.hasOwnProperty(e)?this.current[e]:this.builtins[e]}set(e,t,r){if(void 0===r&&(r=!1),r){for(var a=0;a0&&(this.undefStack[this.undefStack.length-1][e]=t)}else{var n=this.undefStack[this.undefStack.length-1];n&&!n.hasOwnProperty(e)&&(n[e]=this.current[e])}null==t?delete this.current[e]:this.current[e]=t}}var Oa=Vr;Pr("\\noexpand",(function(e){var t=e.popToken();return e.isExpandable(t.text)&&(t.noexpand=!0,t.treatAsRelax=!0),{tokens:[t],numArgs:0}})),Pr("\\expandafter",(function(e){var t=e.popToken();return e.expandOnce(!0),{tokens:[t],numArgs:0}})),Pr("\\@firstoftwo",(function(e){return{tokens:e.consumeArgs(2)[0],numArgs:0}})),Pr("\\@secondoftwo",(function(e){return{tokens:e.consumeArgs(2)[1],numArgs:0}})),Pr("\\@ifnextchar",(function(e){var t=e.consumeArgs(3);e.consumeSpaces();var r=e.future();return 1===t[0].length&&t[0][0].text===r.text?{tokens:t[1],numArgs:0}:{tokens:t[2],numArgs:0}})),Pr("\\@ifstar","\\@ifnextchar *{\\@firstoftwo{#1}}"),Pr("\\TextOrMath",(function(e){var t=e.consumeArgs(2);return"text"===e.mode?{tokens:t[0],numArgs:0}:{tokens:t[1],numArgs:0}}));var Ea={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,a:10,A:10,b:11,B:11,c:12,C:12,d:13,D:13,e:14,E:14,f:15,F:15};Pr("\\char",(function(e){var t,r=e.popToken(),a="";if("'"===r.text)t=8,r=e.popToken();else if('"'===r.text)t=16,r=e.popToken();else if("`"===r.text)if("\\"===(r=e.popToken()).text[0])a=r.text.charCodeAt(1);else{if("EOF"===r.text)throw new o("\\char` missing argument");a=r.text.charCodeAt(0)}else t=10;if(t){if(null==(a=Ea[r.text])||a>=t)throw new o("Invalid base-"+t+" digit "+r.text);for(var n;null!=(n=Ea[e.future().text])&&n{var a=e.consumeArg().tokens;if(1!==a.length)throw new o("\\newcommand's first argument must be a macro name");var n=a[0].text,i=e.isDefined(n);if(i&&!t)throw new o("\\newcommand{"+n+"} attempting to redefine "+n+"; use \\renewcommand");if(!i&&!r)throw new o("\\renewcommand{"+n+"} when command "+n+" does not yet exist; use \\newcommand");var s=0;if(1===(a=e.consumeArg().tokens).length&&"["===a[0].text){for(var l="",h=e.expandNextToken();"]"!==h.text&&"EOF"!==h.text;)l+=h.text,h=e.expandNextToken();if(!l.match(/^\s*[0-9]+\s*$/))throw new o("Invalid number of arguments: "+l);s=parseInt(l),a=e.consumeArg().tokens}return e.macros.set(n,{tokens:a,numArgs:s}),""};Pr("\\newcommand",(e=>La(e,!1,!0))),Pr("\\renewcommand",(e=>La(e,!0,!1))),Pr("\\providecommand",(e=>La(e,!0,!0))),Pr("\\message",(e=>{var t=e.consumeArgs(1)[0];return a.log(t.reverse().map((e=>e.text)).join("")),""})),Pr("\\errmessage",(e=>{var t=e.consumeArgs(1)[0];return a.error(t.reverse().map((e=>e.text)).join("")),""})),Pr("\\show",(e=>{var t=e.popToken(),r=t.text;return a.log(t,e.macros.get(r),Ta[r],ie.math[r],ie.text[r]),""})),Pr("\\bgroup","{"),Pr("\\egroup","}"),Pr("~","\\nobreakspace"),Pr("\\lq","`"),Pr("\\rq","'"),Pr("\\aa","\\r a"),Pr("\\AA","\\r A"),Pr("\\textcopyright","\\html@mathml{\\textcircled{c}}{\\char`\xa9}"),Pr("\\copyright","\\TextOrMath{\\textcopyright}{\\text{\\textcopyright}}"),Pr("\\textregistered","\\html@mathml{\\textcircled{\\scriptsize R}}{\\char`\xae}"),Pr("\u212c","\\mathscr{B}"),Pr("\u2130","\\mathscr{E}"),Pr("\u2131","\\mathscr{F}"),Pr("\u210b","\\mathscr{H}"),Pr("\u2110","\\mathscr{I}"),Pr("\u2112","\\mathscr{L}"),Pr("\u2133","\\mathscr{M}"),Pr("\u211b","\\mathscr{R}"),Pr("\u212d","\\mathfrak{C}"),Pr("\u210c","\\mathfrak{H}"),Pr("\u2128","\\mathfrak{Z}"),Pr("\\Bbbk","\\Bbb{k}"),Pr("\xb7","\\cdotp"),Pr("\\llap","\\mathllap{\\textrm{#1}}"),Pr("\\rlap","\\mathrlap{\\textrm{#1}}"),Pr("\\clap","\\mathclap{\\textrm{#1}}"),Pr("\\mathstrut","\\vphantom{(}"),Pr("\\underbar","\\underline{\\text{#1}}"),Pr("\\not",'\\html@mathml{\\mathrel{\\mathrlap\\@not}}{\\char"338}'),Pr("\\neq","\\html@mathml{\\mathrel{\\not=}}{\\mathrel{\\char`\u2260}}"),Pr("\\ne","\\neq"),Pr("\u2260","\\neq"),Pr("\\notin","\\html@mathml{\\mathrel{{\\in}\\mathllap{/\\mskip1mu}}}{\\mathrel{\\char`\u2209}}"),Pr("\u2209","\\notin"),Pr("\u2258","\\html@mathml{\\mathrel{=\\kern{-1em}\\raisebox{0.4em}{$\\scriptsize\\frown$}}}{\\mathrel{\\char`\u2258}}"),Pr("\u2259","\\html@mathml{\\stackrel{\\tiny\\wedge}{=}}{\\mathrel{\\char`\u2258}}"),Pr("\u225a","\\html@mathml{\\stackrel{\\tiny\\vee}{=}}{\\mathrel{\\char`\u225a}}"),Pr("\u225b","\\html@mathml{\\stackrel{\\scriptsize\\star}{=}}{\\mathrel{\\char`\u225b}}"),Pr("\u225d","\\html@mathml{\\stackrel{\\tiny\\mathrm{def}}{=}}{\\mathrel{\\char`\u225d}}"),Pr("\u225e","\\html@mathml{\\stackrel{\\tiny\\mathrm{m}}{=}}{\\mathrel{\\char`\u225e}}"),Pr("\u225f","\\html@mathml{\\stackrel{\\tiny?}{=}}{\\mathrel{\\char`\u225f}}"),Pr("\u27c2","\\perp"),Pr("\u203c","\\mathclose{!\\mkern-0.8mu!}"),Pr("\u220c","\\notni"),Pr("\u231c","\\ulcorner"),Pr("\u231d","\\urcorner"),Pr("\u231e","\\llcorner"),Pr("\u231f","\\lrcorner"),Pr("\xa9","\\copyright"),Pr("\xae","\\textregistered"),Pr("\ufe0f","\\textregistered"),Pr("\\ulcorner",'\\html@mathml{\\@ulcorner}{\\mathop{\\char"231c}}'),Pr("\\urcorner",'\\html@mathml{\\@urcorner}{\\mathop{\\char"231d}}'),Pr("\\llcorner",'\\html@mathml{\\@llcorner}{\\mathop{\\char"231e}}'),Pr("\\lrcorner",'\\html@mathml{\\@lrcorner}{\\mathop{\\char"231f}}'),Pr("\\vdots","\\mathord{\\varvdots\\rule{0pt}{15pt}}"),Pr("\u22ee","\\vdots"),Pr("\\varGamma","\\mathit{\\Gamma}"),Pr("\\varDelta","\\mathit{\\Delta}"),Pr("\\varTheta","\\mathit{\\Theta}"),Pr("\\varLambda","\\mathit{\\Lambda}"),Pr("\\varXi","\\mathit{\\Xi}"),Pr("\\varPi","\\mathit{\\Pi}"),Pr("\\varSigma","\\mathit{\\Sigma}"),Pr("\\varUpsilon","\\mathit{\\Upsilon}"),Pr("\\varPhi","\\mathit{\\Phi}"),Pr("\\varPsi","\\mathit{\\Psi}"),Pr("\\varOmega","\\mathit{\\Omega}"),Pr("\\substack","\\begin{subarray}{c}#1\\end{subarray}"),Pr("\\colon","\\nobreak\\mskip2mu\\mathpunct{}\\mathchoice{\\mkern-3mu}{\\mkern-3mu}{}{}{:}\\mskip6mu\\relax"),Pr("\\boxed","\\fbox{$\\displaystyle{#1}$}"),Pr("\\iff","\\DOTSB\\;\\Longleftrightarrow\\;"),Pr("\\implies","\\DOTSB\\;\\Longrightarrow\\;"),Pr("\\impliedby","\\DOTSB\\;\\Longleftarrow\\;");var Da={",":"\\dotsc","\\not":"\\dotsb","+":"\\dotsb","=":"\\dotsb","<":"\\dotsb",">":"\\dotsb","-":"\\dotsb","*":"\\dotsb",":":"\\dotsb","\\DOTSB":"\\dotsb","\\coprod":"\\dotsb","\\bigvee":"\\dotsb","\\bigwedge":"\\dotsb","\\biguplus":"\\dotsb","\\bigcap":"\\dotsb","\\bigcup":"\\dotsb","\\prod":"\\dotsb","\\sum":"\\dotsb","\\bigotimes":"\\dotsb","\\bigoplus":"\\dotsb","\\bigodot":"\\dotsb","\\bigsqcup":"\\dotsb","\\And":"\\dotsb","\\longrightarrow":"\\dotsb","\\Longrightarrow":"\\dotsb","\\longleftarrow":"\\dotsb","\\Longleftarrow":"\\dotsb","\\longleftrightarrow":"\\dotsb","\\Longleftrightarrow":"\\dotsb","\\mapsto":"\\dotsb","\\longmapsto":"\\dotsb","\\hookrightarrow":"\\dotsb","\\doteq":"\\dotsb","\\mathbin":"\\dotsb","\\mathrel":"\\dotsb","\\relbar":"\\dotsb","\\Relbar":"\\dotsb","\\xrightarrow":"\\dotsb","\\xleftarrow":"\\dotsb","\\DOTSI":"\\dotsi","\\int":"\\dotsi","\\oint":"\\dotsi","\\iint":"\\dotsi","\\iiint":"\\dotsi","\\iiiint":"\\dotsi","\\idotsint":"\\dotsi","\\DOTSX":"\\dotsx"};Pr("\\dots",(function(e){var t="\\dotso",r=e.expandAfterFuture().text;return r in Da?t=Da[r]:("\\not"===r.slice(0,4)||r in ie.math&&c.contains(["bin","rel"],ie.math[r].group))&&(t="\\dotsb"),t}));var Va={")":!0,"]":!0,"\\rbrack":!0,"\\}":!0,"\\rbrace":!0,"\\rangle":!0,"\\rceil":!0,"\\rfloor":!0,"\\rgroup":!0,"\\rmoustache":!0,"\\right":!0,"\\bigr":!0,"\\biggr":!0,"\\Bigr":!0,"\\Biggr":!0,$:!0,";":!0,".":!0,",":!0};Pr("\\dotso",(function(e){return e.future().text in Va?"\\ldots\\,":"\\ldots"})),Pr("\\dotsc",(function(e){var t=e.future().text;return t in Va&&","!==t?"\\ldots\\,":"\\ldots"})),Pr("\\cdots",(function(e){return e.future().text in Va?"\\@cdots\\,":"\\@cdots"})),Pr("\\dotsb","\\cdots"),Pr("\\dotsm","\\cdots"),Pr("\\dotsi","\\!\\cdots"),Pr("\\dotsx","\\ldots\\,"),Pr("\\DOTSI","\\relax"),Pr("\\DOTSB","\\relax"),Pr("\\DOTSX","\\relax"),Pr("\\tmspace","\\TextOrMath{\\kern#1#3}{\\mskip#1#2}\\relax"),Pr("\\,","\\tmspace+{3mu}{.1667em}"),Pr("\\thinspace","\\,"),Pr("\\>","\\mskip{4mu}"),Pr("\\:","\\tmspace+{4mu}{.2222em}"),Pr("\\medspace","\\:"),Pr("\\;","\\tmspace+{5mu}{.2777em}"),Pr("\\thickspace","\\;"),Pr("\\!","\\tmspace-{3mu}{.1667em}"),Pr("\\negthinspace","\\!"),Pr("\\negmedspace","\\tmspace-{4mu}{.2222em}"),Pr("\\negthickspace","\\tmspace-{5mu}{.277em}"),Pr("\\enspace","\\kern.5em "),Pr("\\enskip","\\hskip.5em\\relax"),Pr("\\quad","\\hskip1em\\relax"),Pr("\\qquad","\\hskip2em\\relax"),Pr("\\tag","\\@ifstar\\tag@literal\\tag@paren"),Pr("\\tag@paren","\\tag@literal{({#1})}"),Pr("\\tag@literal",(e=>{if(e.macros.get("\\df@tag"))throw new o("Multiple \\tag");return"\\gdef\\df@tag{\\text{#1}}"})),Pr("\\bmod","\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}\\mathbin{\\rm mod}\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}"),Pr("\\pod","\\allowbreak\\mathchoice{\\mkern18mu}{\\mkern8mu}{\\mkern8mu}{\\mkern8mu}(#1)"),Pr("\\pmod","\\pod{{\\rm mod}\\mkern6mu#1}"),Pr("\\mod","\\allowbreak\\mathchoice{\\mkern18mu}{\\mkern12mu}{\\mkern12mu}{\\mkern12mu}{\\rm mod}\\,\\,#1"),Pr("\\newline","\\\\\\relax"),Pr("\\TeX","\\textrm{\\html@mathml{T\\kern-.1667em\\raisebox{-.5ex}{E}\\kern-.125emX}{TeX}}");var Pa=U(N["Main-Regular"]["T".charCodeAt(0)][1]-.7*N["Main-Regular"]["A".charCodeAt(0)][1]);Pr("\\LaTeX","\\textrm{\\html@mathml{L\\kern-.36em\\raisebox{"+Pa+"}{\\scriptstyle A}\\kern-.15em\\TeX}{LaTeX}}"),Pr("\\KaTeX","\\textrm{\\html@mathml{K\\kern-.17em\\raisebox{"+Pa+"}{\\scriptstyle A}\\kern-.15em\\TeX}{KaTeX}}"),Pr("\\hspace","\\@ifstar\\@hspacer\\@hspace"),Pr("\\@hspace","\\hskip #1\\relax"),Pr("\\@hspacer","\\rule{0pt}{0pt}\\hskip #1\\relax"),Pr("\\ordinarycolon",":"),Pr("\\vcentcolon","\\mathrel{\\mathop\\ordinarycolon}"),Pr("\\dblcolon",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-.9mu}\\vcentcolon}}{\\mathop{\\char"2237}}'),Pr("\\coloneqq",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}=}}{\\mathop{\\char"2254}}'),Pr("\\Coloneqq",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}=}}{\\mathop{\\char"2237\\char"3d}}'),Pr("\\coloneq",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}{\\mathop{\\char"3a\\char"2212}}'),Pr("\\Coloneq",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}{\\mathop{\\char"2237\\char"2212}}'),Pr("\\eqqcolon",'\\html@mathml{\\mathrel{=\\mathrel{\\mkern-1.2mu}\\vcentcolon}}{\\mathop{\\char"2255}}'),Pr("\\Eqqcolon",'\\html@mathml{\\mathrel{=\\mathrel{\\mkern-1.2mu}\\dblcolon}}{\\mathop{\\char"3d\\char"2237}}'),Pr("\\eqcolon",'\\html@mathml{\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\vcentcolon}}{\\mathop{\\char"2239}}'),Pr("\\Eqcolon",'\\html@mathml{\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\dblcolon}}{\\mathop{\\char"2212\\char"2237}}'),Pr("\\colonapprox",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\approx}}{\\mathop{\\char"3a\\char"2248}}'),Pr("\\Colonapprox",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\approx}}{\\mathop{\\char"2237\\char"2248}}'),Pr("\\colonsim",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\sim}}{\\mathop{\\char"3a\\char"223c}}'),Pr("\\Colonsim",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\sim}}{\\mathop{\\char"2237\\char"223c}}'),Pr("\u2237","\\dblcolon"),Pr("\u2239","\\eqcolon"),Pr("\u2254","\\coloneqq"),Pr("\u2255","\\eqqcolon"),Pr("\u2a74","\\Coloneqq"),Pr("\\ratio","\\vcentcolon"),Pr("\\coloncolon","\\dblcolon"),Pr("\\colonequals","\\coloneqq"),Pr("\\coloncolonequals","\\Coloneqq"),Pr("\\equalscolon","\\eqqcolon"),Pr("\\equalscoloncolon","\\Eqqcolon"),Pr("\\colonminus","\\coloneq"),Pr("\\coloncolonminus","\\Coloneq"),Pr("\\minuscolon","\\eqcolon"),Pr("\\minuscoloncolon","\\Eqcolon"),Pr("\\coloncolonapprox","\\Colonapprox"),Pr("\\coloncolonsim","\\Colonsim"),Pr("\\simcolon","\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\vcentcolon}"),Pr("\\simcoloncolon","\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\dblcolon}"),Pr("\\approxcolon","\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\vcentcolon}"),Pr("\\approxcoloncolon","\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\dblcolon}"),Pr("\\notni","\\html@mathml{\\not\\ni}{\\mathrel{\\char`\u220c}}"),Pr("\\limsup","\\DOTSB\\operatorname*{lim\\,sup}"),Pr("\\liminf","\\DOTSB\\operatorname*{lim\\,inf}"),Pr("\\injlim","\\DOTSB\\operatorname*{inj\\,lim}"),Pr("\\projlim","\\DOTSB\\operatorname*{proj\\,lim}"),Pr("\\varlimsup","\\DOTSB\\operatorname*{\\overline{lim}}"),Pr("\\varliminf","\\DOTSB\\operatorname*{\\underline{lim}}"),Pr("\\varinjlim","\\DOTSB\\operatorname*{\\underrightarrow{lim}}"),Pr("\\varprojlim","\\DOTSB\\operatorname*{\\underleftarrow{lim}}"),Pr("\\gvertneqq","\\html@mathml{\\@gvertneqq}{\u2269}"),Pr("\\lvertneqq","\\html@mathml{\\@lvertneqq}{\u2268}"),Pr("\\ngeqq","\\html@mathml{\\@ngeqq}{\u2271}"),Pr("\\ngeqslant","\\html@mathml{\\@ngeqslant}{\u2271}"),Pr("\\nleqq","\\html@mathml{\\@nleqq}{\u2270}"),Pr("\\nleqslant","\\html@mathml{\\@nleqslant}{\u2270}"),Pr("\\nshortmid","\\html@mathml{\\@nshortmid}{\u2224}"),Pr("\\nshortparallel","\\html@mathml{\\@nshortparallel}{\u2226}"),Pr("\\nsubseteqq","\\html@mathml{\\@nsubseteqq}{\u2288}"),Pr("\\nsupseteqq","\\html@mathml{\\@nsupseteqq}{\u2289}"),Pr("\\varsubsetneq","\\html@mathml{\\@varsubsetneq}{\u228a}"),Pr("\\varsubsetneqq","\\html@mathml{\\@varsubsetneqq}{\u2acb}"),Pr("\\varsupsetneq","\\html@mathml{\\@varsupsetneq}{\u228b}"),Pr("\\varsupsetneqq","\\html@mathml{\\@varsupsetneqq}{\u2acc}"),Pr("\\imath","\\html@mathml{\\@imath}{\u0131}"),Pr("\\jmath","\\html@mathml{\\@jmath}{\u0237}"),Pr("\\llbracket","\\html@mathml{\\mathopen{[\\mkern-3.2mu[}}{\\mathopen{\\char`\u27e6}}"),Pr("\\rrbracket","\\html@mathml{\\mathclose{]\\mkern-3.2mu]}}{\\mathclose{\\char`\u27e7}}"),Pr("\u27e6","\\llbracket"),Pr("\u27e7","\\rrbracket"),Pr("\\lBrace","\\html@mathml{\\mathopen{\\{\\mkern-3.2mu[}}{\\mathopen{\\char`\u2983}}"),Pr("\\rBrace","\\html@mathml{\\mathclose{]\\mkern-3.2mu\\}}}{\\mathclose{\\char`\u2984}}"),Pr("\u2983","\\lBrace"),Pr("\u2984","\\rBrace"),Pr("\\minuso","\\mathbin{\\html@mathml{{\\mathrlap{\\mathchoice{\\kern{0.145em}}{\\kern{0.145em}}{\\kern{0.1015em}}{\\kern{0.0725em}}\\circ}{-}}}{\\char`\u29b5}}"),Pr("\u29b5","\\minuso"),Pr("\\darr","\\downarrow"),Pr("\\dArr","\\Downarrow"),Pr("\\Darr","\\Downarrow"),Pr("\\lang","\\langle"),Pr("\\rang","\\rangle"),Pr("\\uarr","\\uparrow"),Pr("\\uArr","\\Uparrow"),Pr("\\Uarr","\\Uparrow"),Pr("\\N","\\mathbb{N}"),Pr("\\R","\\mathbb{R}"),Pr("\\Z","\\mathbb{Z}"),Pr("\\alef","\\aleph"),Pr("\\alefsym","\\aleph"),Pr("\\Alpha","\\mathrm{A}"),Pr("\\Beta","\\mathrm{B}"),Pr("\\bull","\\bullet"),Pr("\\Chi","\\mathrm{X}"),Pr("\\clubs","\\clubsuit"),Pr("\\cnums","\\mathbb{C}"),Pr("\\Complex","\\mathbb{C}"),Pr("\\Dagger","\\ddagger"),Pr("\\diamonds","\\diamondsuit"),Pr("\\empty","\\emptyset"),Pr("\\Epsilon","\\mathrm{E}"),Pr("\\Eta","\\mathrm{H}"),Pr("\\exist","\\exists"),Pr("\\harr","\\leftrightarrow"),Pr("\\hArr","\\Leftrightarrow"),Pr("\\Harr","\\Leftrightarrow"),Pr("\\hearts","\\heartsuit"),Pr("\\image","\\Im"),Pr("\\infin","\\infty"),Pr("\\Iota","\\mathrm{I}"),Pr("\\isin","\\in"),Pr("\\Kappa","\\mathrm{K}"),Pr("\\larr","\\leftarrow"),Pr("\\lArr","\\Leftarrow"),Pr("\\Larr","\\Leftarrow"),Pr("\\lrarr","\\leftrightarrow"),Pr("\\lrArr","\\Leftrightarrow"),Pr("\\Lrarr","\\Leftrightarrow"),Pr("\\Mu","\\mathrm{M}"),Pr("\\natnums","\\mathbb{N}"),Pr("\\Nu","\\mathrm{N}"),Pr("\\Omicron","\\mathrm{O}"),Pr("\\plusmn","\\pm"),Pr("\\rarr","\\rightarrow"),Pr("\\rArr","\\Rightarrow"),Pr("\\Rarr","\\Rightarrow"),Pr("\\real","\\Re"),Pr("\\reals","\\mathbb{R}"),Pr("\\Reals","\\mathbb{R}"),Pr("\\Rho","\\mathrm{P}"),Pr("\\sdot","\\cdot"),Pr("\\sect","\\S"),Pr("\\spades","\\spadesuit"),Pr("\\sub","\\subset"),Pr("\\sube","\\subseteq"),Pr("\\supe","\\supseteq"),Pr("\\Tau","\\mathrm{T}"),Pr("\\thetasym","\\vartheta"),Pr("\\weierp","\\wp"),Pr("\\Zeta","\\mathrm{Z}"),Pr("\\argmin","\\DOTSB\\operatorname*{arg\\,min}"),Pr("\\argmax","\\DOTSB\\operatorname*{arg\\,max}"),Pr("\\plim","\\DOTSB\\mathop{\\operatorname{plim}}\\limits"),Pr("\\bra","\\mathinner{\\langle{#1}|}"),Pr("\\ket","\\mathinner{|{#1}\\rangle}"),Pr("\\braket","\\mathinner{\\langle{#1}\\rangle}"),Pr("\\Bra","\\left\\langle#1\\right|"),Pr("\\Ket","\\left|#1\\right\\rangle");var Fa=e=>t=>{var r=t.consumeArg().tokens,a=t.consumeArg().tokens,n=t.consumeArg().tokens,i=t.consumeArg().tokens,o=t.macros.get("|"),s=t.macros.get("\\|");t.macros.beginGroup();var l=t=>r=>{e&&(r.macros.set("|",o),n.length&&r.macros.set("\\|",s));var i=t;!t&&n.length&&("|"===r.future().text&&(r.popToken(),i=!0));return{tokens:i?n:a,numArgs:0}};t.macros.set("|",l(!1)),n.length&&t.macros.set("\\|",l(!0));var h=t.consumeArg().tokens,m=t.expandTokens([...i,...h,...r]);return t.macros.endGroup(),{tokens:m.reverse(),numArgs:0}};Pr("\\bra@ket",Fa(!1)),Pr("\\bra@set",Fa(!0)),Pr("\\Braket","\\bra@ket{\\left\\langle}{\\,\\middle\\vert\\,}{\\,\\middle\\vert\\,}{\\right\\rangle}"),Pr("\\Set","\\bra@set{\\left\\{\\:}{\\;\\middle\\vert\\;}{\\;\\middle\\Vert\\;}{\\:\\right\\}}"),Pr("\\set","\\bra@set{\\{\\,}{\\mid}{}{\\,\\}}"),Pr("\\angln","{\\angl n}"),Pr("\\blue","\\textcolor{##6495ed}{#1}"),Pr("\\orange","\\textcolor{##ffa500}{#1}"),Pr("\\pink","\\textcolor{##ff00af}{#1}"),Pr("\\red","\\textcolor{##df0030}{#1}"),Pr("\\green","\\textcolor{##28ae7b}{#1}"),Pr("\\gray","\\textcolor{gray}{#1}"),Pr("\\purple","\\textcolor{##9d38bd}{#1}"),Pr("\\blueA","\\textcolor{##ccfaff}{#1}"),Pr("\\blueB","\\textcolor{##80f6ff}{#1}"),Pr("\\blueC","\\textcolor{##63d9ea}{#1}"),Pr("\\blueD","\\textcolor{##11accd}{#1}"),Pr("\\blueE","\\textcolor{##0c7f99}{#1}"),Pr("\\tealA","\\textcolor{##94fff5}{#1}"),Pr("\\tealB","\\textcolor{##26edd5}{#1}"),Pr("\\tealC","\\textcolor{##01d1c1}{#1}"),Pr("\\tealD","\\textcolor{##01a995}{#1}"),Pr("\\tealE","\\textcolor{##208170}{#1}"),Pr("\\greenA","\\textcolor{##b6ffb0}{#1}"),Pr("\\greenB","\\textcolor{##8af281}{#1}"),Pr("\\greenC","\\textcolor{##74cf70}{#1}"),Pr("\\greenD","\\textcolor{##1fab54}{#1}"),Pr("\\greenE","\\textcolor{##0d923f}{#1}"),Pr("\\goldA","\\textcolor{##ffd0a9}{#1}"),Pr("\\goldB","\\textcolor{##ffbb71}{#1}"),Pr("\\goldC","\\textcolor{##ff9c39}{#1}"),Pr("\\goldD","\\textcolor{##e07d10}{#1}"),Pr("\\goldE","\\textcolor{##a75a05}{#1}"),Pr("\\redA","\\textcolor{##fca9a9}{#1}"),Pr("\\redB","\\textcolor{##ff8482}{#1}"),Pr("\\redC","\\textcolor{##f9685d}{#1}"),Pr("\\redD","\\textcolor{##e84d39}{#1}"),Pr("\\redE","\\textcolor{##bc2612}{#1}"),Pr("\\maroonA","\\textcolor{##ffbde0}{#1}"),Pr("\\maroonB","\\textcolor{##ff92c6}{#1}"),Pr("\\maroonC","\\textcolor{##ed5fa6}{#1}"),Pr("\\maroonD","\\textcolor{##ca337c}{#1}"),Pr("\\maroonE","\\textcolor{##9e034e}{#1}"),Pr("\\purpleA","\\textcolor{##ddd7ff}{#1}"),Pr("\\purpleB","\\textcolor{##c6b9fc}{#1}"),Pr("\\purpleC","\\textcolor{##aa87ff}{#1}"),Pr("\\purpleD","\\textcolor{##7854ab}{#1}"),Pr("\\purpleE","\\textcolor{##543b78}{#1}"),Pr("\\mintA","\\textcolor{##f5f9e8}{#1}"),Pr("\\mintB","\\textcolor{##edf2df}{#1}"),Pr("\\mintC","\\textcolor{##e0e5cc}{#1}"),Pr("\\grayA","\\textcolor{##f6f7f7}{#1}"),Pr("\\grayB","\\textcolor{##f0f1f2}{#1}"),Pr("\\grayC","\\textcolor{##e3e5e6}{#1}"),Pr("\\grayD","\\textcolor{##d6d8da}{#1}"),Pr("\\grayE","\\textcolor{##babec2}{#1}"),Pr("\\grayF","\\textcolor{##888d93}{#1}"),Pr("\\grayG","\\textcolor{##626569}{#1}"),Pr("\\grayH","\\textcolor{##3b3e40}{#1}"),Pr("\\grayI","\\textcolor{##21242c}{#1}"),Pr("\\kaBlue","\\textcolor{##314453}{#1}"),Pr("\\kaGreen","\\textcolor{##71B307}{#1}");var Ga={"^":!0,_:!0,"\\limits":!0,"\\nolimits":!0};class Ua{constructor(e,t,r){this.settings=void 0,this.expansionCount=void 0,this.lexer=void 0,this.macros=void 0,this.stack=void 0,this.mode=void 0,this.settings=t,this.expansionCount=0,this.feed(e),this.macros=new Ha(Oa,t.macros),this.mode=r,this.stack=[]}feed(e){this.lexer=new Ra(e,this.settings)}switchMode(e){this.mode=e}beginGroup(){this.macros.beginGroup()}endGroup(){this.macros.endGroup()}endGroups(){this.macros.endGroups()}future(){return 0===this.stack.length&&this.pushToken(this.lexer.lex()),this.stack[this.stack.length-1]}popToken(){return this.future(),this.stack.pop()}pushToken(e){this.stack.push(e)}pushTokens(e){this.stack.push(...e)}scanArgument(e){var t,r,a;if(e){if(this.consumeSpaces(),"["!==this.future().text)return null;t=this.popToken(),({tokens:a,end:r}=this.consumeArg(["]"]))}else({tokens:a,start:t,end:r}=this.consumeArg());return this.pushToken(new i("EOF",r.loc)),this.pushTokens(a),t.range(r,"")}consumeSpaces(){for(;;){if(" "!==this.future().text)break;this.stack.pop()}}consumeArg(e){var t=[],r=e&&e.length>0;r||this.consumeSpaces();var a,n=this.future(),i=0,s=0;do{if(a=this.popToken(),t.push(a),"{"===a.text)++i;else if("}"===a.text){if(-1===--i)throw new o("Extra }",a)}else if("EOF"===a.text)throw new o("Unexpected end of input in a macro argument, expected '"+(e&&r?e[s]:"}")+"'",a);if(e&&r)if((0===i||1===i&&"{"===e[s])&&a.text===e[s]){if(++s===e.length){t.splice(-s,s);break}}else s=0}while(0!==i||r);return"{"===n.text&&"}"===t[t.length-1].text&&(t.pop(),t.shift()),t.reverse(),{tokens:t,start:n,end:a}}consumeArgs(e,t){if(t){if(t.length!==e+1)throw new o("The length of delimiters doesn't match the number of args!");for(var r=t[0],a=0;athis.settings.maxExpand)throw new o("Too many expansions: infinite loop or need to increase maxExpand setting")}expandOnce(e){var t=this.popToken(),r=t.text,a=t.noexpand?null:this._getExpansion(r);if(null==a||e&&a.unexpandable){if(e&&null==a&&"\\"===r[0]&&!this.isDefined(r))throw new o("Undefined control sequence: "+r);return this.pushToken(t),!1}this.countExpansion(1);var n=a.tokens,i=this.consumeArgs(a.numArgs,a.delimiters);if(a.numArgs)for(var s=(n=n.slice()).length-1;s>=0;--s){var l=n[s];if("#"===l.text){if(0===s)throw new o("Incomplete placeholder at end of macro body",l);if("#"===(l=n[--s]).text)n.splice(s+1,1);else{if(!/^[1-9]$/.test(l.text))throw new o("Not a valid argument number",l);n.splice(s,2,...i[+l.text-1])}}}return this.pushTokens(n),n.length}expandAfterFuture(){return this.expandOnce(),this.future()}expandNextToken(){for(;;)if(!1===this.expandOnce()){var e=this.stack.pop();return e.treatAsRelax&&(e.text="\\relax"),e}throw new Error}expandMacro(e){return this.macros.has(e)?this.expandTokens([new i(e)]):void 0}expandTokens(e){var t=[],r=this.stack.length;for(this.pushTokens(e);this.stack.length>r;)if(!1===this.expandOnce(!0)){var a=this.stack.pop();a.treatAsRelax&&(a.noexpand=!1,a.treatAsRelax=!1),t.push(a)}return this.countExpansion(t.length),t}expandMacroAsText(e){var t=this.expandMacro(e);return t?t.map((e=>e.text)).join(""):t}_getExpansion(e){var t=this.macros.get(e);if(null==t)return t;if(1===e.length){var r=this.lexer.catcodes[e];if(null!=r&&13!==r)return}var a="function"==typeof t?t(this):t;if("string"==typeof a){var n=0;if(-1!==a.indexOf("#"))for(var i=a.replace(/##/g,"");-1!==i.indexOf("#"+(n+1));)++n;for(var o=new Ra(a,this.settings),s=[],l=o.lex();"EOF"!==l.text;)s.push(l),l=o.lex();return s.reverse(),{tokens:s,numArgs:n}}return a}isDefined(e){return this.macros.has(e)||Ta.hasOwnProperty(e)||ie.math.hasOwnProperty(e)||ie.text.hasOwnProperty(e)||Ga.hasOwnProperty(e)}isExpandable(e){var t=this.macros.get(e);return null!=t?"string"==typeof t||"function"==typeof t||!t.unexpandable:Ta.hasOwnProperty(e)&&!Ta[e].primitive}}var Ya=/^[\u208a\u208b\u208c\u208d\u208e\u2080\u2081\u2082\u2083\u2084\u2085\u2086\u2087\u2088\u2089\u2090\u2091\u2095\u1d62\u2c7c\u2096\u2097\u2098\u2099\u2092\u209a\u1d63\u209b\u209c\u1d64\u1d65\u2093\u1d66\u1d67\u1d68\u1d69\u1d6a]/,Xa=Object.freeze({"\u208a":"+","\u208b":"-","\u208c":"=","\u208d":"(","\u208e":")","\u2080":"0","\u2081":"1","\u2082":"2","\u2083":"3","\u2084":"4","\u2085":"5","\u2086":"6","\u2087":"7","\u2088":"8","\u2089":"9","\u2090":"a","\u2091":"e","\u2095":"h","\u1d62":"i","\u2c7c":"j","\u2096":"k","\u2097":"l","\u2098":"m","\u2099":"n","\u2092":"o","\u209a":"p","\u1d63":"r","\u209b":"s","\u209c":"t","\u1d64":"u","\u1d65":"v","\u2093":"x","\u1d66":"\u03b2","\u1d67":"\u03b3","\u1d68":"\u03c1","\u1d69":"\u03d5","\u1d6a":"\u03c7","\u207a":"+","\u207b":"-","\u207c":"=","\u207d":"(","\u207e":")","\u2070":"0","\xb9":"1","\xb2":"2","\xb3":"3","\u2074":"4","\u2075":"5","\u2076":"6","\u2077":"7","\u2078":"8","\u2079":"9","\u1d2c":"A","\u1d2e":"B","\u1d30":"D","\u1d31":"E","\u1d33":"G","\u1d34":"H","\u1d35":"I","\u1d36":"J","\u1d37":"K","\u1d38":"L","\u1d39":"M","\u1d3a":"N","\u1d3c":"O","\u1d3e":"P","\u1d3f":"R","\u1d40":"T","\u1d41":"U","\u2c7d":"V","\u1d42":"W","\u1d43":"a","\u1d47":"b","\u1d9c":"c","\u1d48":"d","\u1d49":"e","\u1da0":"f","\u1d4d":"g","\u02b0":"h","\u2071":"i","\u02b2":"j","\u1d4f":"k","\u02e1":"l","\u1d50":"m","\u207f":"n","\u1d52":"o","\u1d56":"p","\u02b3":"r","\u02e2":"s","\u1d57":"t","\u1d58":"u","\u1d5b":"v","\u02b7":"w","\u02e3":"x","\u02b8":"y","\u1dbb":"z","\u1d5d":"\u03b2","\u1d5e":"\u03b3","\u1d5f":"\u03b4","\u1d60":"\u03d5","\u1d61":"\u03c7","\u1dbf":"\u03b8"}),Wa={"\u0301":{text:"\\'",math:"\\acute"},"\u0300":{text:"\\`",math:"\\grave"},"\u0308":{text:'\\"',math:"\\ddot"},"\u0303":{text:"\\~",math:"\\tilde"},"\u0304":{text:"\\=",math:"\\bar"},"\u0306":{text:"\\u",math:"\\breve"},"\u030c":{text:"\\v",math:"\\check"},"\u0302":{text:"\\^",math:"\\hat"},"\u0307":{text:"\\.",math:"\\dot"},"\u030a":{text:"\\r",math:"\\mathring"},"\u030b":{text:"\\H"},"\u0327":{text:"\\c"}},_a={"\xe1":"a\u0301","\xe0":"a\u0300","\xe4":"a\u0308","\u01df":"a\u0308\u0304","\xe3":"a\u0303","\u0101":"a\u0304","\u0103":"a\u0306","\u1eaf":"a\u0306\u0301","\u1eb1":"a\u0306\u0300","\u1eb5":"a\u0306\u0303","\u01ce":"a\u030c","\xe2":"a\u0302","\u1ea5":"a\u0302\u0301","\u1ea7":"a\u0302\u0300","\u1eab":"a\u0302\u0303","\u0227":"a\u0307","\u01e1":"a\u0307\u0304","\xe5":"a\u030a","\u01fb":"a\u030a\u0301","\u1e03":"b\u0307","\u0107":"c\u0301","\u1e09":"c\u0327\u0301","\u010d":"c\u030c","\u0109":"c\u0302","\u010b":"c\u0307","\xe7":"c\u0327","\u010f":"d\u030c","\u1e0b":"d\u0307","\u1e11":"d\u0327","\xe9":"e\u0301","\xe8":"e\u0300","\xeb":"e\u0308","\u1ebd":"e\u0303","\u0113":"e\u0304","\u1e17":"e\u0304\u0301","\u1e15":"e\u0304\u0300","\u0115":"e\u0306","\u1e1d":"e\u0327\u0306","\u011b":"e\u030c","\xea":"e\u0302","\u1ebf":"e\u0302\u0301","\u1ec1":"e\u0302\u0300","\u1ec5":"e\u0302\u0303","\u0117":"e\u0307","\u0229":"e\u0327","\u1e1f":"f\u0307","\u01f5":"g\u0301","\u1e21":"g\u0304","\u011f":"g\u0306","\u01e7":"g\u030c","\u011d":"g\u0302","\u0121":"g\u0307","\u0123":"g\u0327","\u1e27":"h\u0308","\u021f":"h\u030c","\u0125":"h\u0302","\u1e23":"h\u0307","\u1e29":"h\u0327","\xed":"i\u0301","\xec":"i\u0300","\xef":"i\u0308","\u1e2f":"i\u0308\u0301","\u0129":"i\u0303","\u012b":"i\u0304","\u012d":"i\u0306","\u01d0":"i\u030c","\xee":"i\u0302","\u01f0":"j\u030c","\u0135":"j\u0302","\u1e31":"k\u0301","\u01e9":"k\u030c","\u0137":"k\u0327","\u013a":"l\u0301","\u013e":"l\u030c","\u013c":"l\u0327","\u1e3f":"m\u0301","\u1e41":"m\u0307","\u0144":"n\u0301","\u01f9":"n\u0300","\xf1":"n\u0303","\u0148":"n\u030c","\u1e45":"n\u0307","\u0146":"n\u0327","\xf3":"o\u0301","\xf2":"o\u0300","\xf6":"o\u0308","\u022b":"o\u0308\u0304","\xf5":"o\u0303","\u1e4d":"o\u0303\u0301","\u1e4f":"o\u0303\u0308","\u022d":"o\u0303\u0304","\u014d":"o\u0304","\u1e53":"o\u0304\u0301","\u1e51":"o\u0304\u0300","\u014f":"o\u0306","\u01d2":"o\u030c","\xf4":"o\u0302","\u1ed1":"o\u0302\u0301","\u1ed3":"o\u0302\u0300","\u1ed7":"o\u0302\u0303","\u022f":"o\u0307","\u0231":"o\u0307\u0304","\u0151":"o\u030b","\u1e55":"p\u0301","\u1e57":"p\u0307","\u0155":"r\u0301","\u0159":"r\u030c","\u1e59":"r\u0307","\u0157":"r\u0327","\u015b":"s\u0301","\u1e65":"s\u0301\u0307","\u0161":"s\u030c","\u1e67":"s\u030c\u0307","\u015d":"s\u0302","\u1e61":"s\u0307","\u015f":"s\u0327","\u1e97":"t\u0308","\u0165":"t\u030c","\u1e6b":"t\u0307","\u0163":"t\u0327","\xfa":"u\u0301","\xf9":"u\u0300","\xfc":"u\u0308","\u01d8":"u\u0308\u0301","\u01dc":"u\u0308\u0300","\u01d6":"u\u0308\u0304","\u01da":"u\u0308\u030c","\u0169":"u\u0303","\u1e79":"u\u0303\u0301","\u016b":"u\u0304","\u1e7b":"u\u0304\u0308","\u016d":"u\u0306","\u01d4":"u\u030c","\xfb":"u\u0302","\u016f":"u\u030a","\u0171":"u\u030b","\u1e7d":"v\u0303","\u1e83":"w\u0301","\u1e81":"w\u0300","\u1e85":"w\u0308","\u0175":"w\u0302","\u1e87":"w\u0307","\u1e98":"w\u030a","\u1e8d":"x\u0308","\u1e8b":"x\u0307","\xfd":"y\u0301","\u1ef3":"y\u0300","\xff":"y\u0308","\u1ef9":"y\u0303","\u0233":"y\u0304","\u0177":"y\u0302","\u1e8f":"y\u0307","\u1e99":"y\u030a","\u017a":"z\u0301","\u017e":"z\u030c","\u1e91":"z\u0302","\u017c":"z\u0307","\xc1":"A\u0301","\xc0":"A\u0300","\xc4":"A\u0308","\u01de":"A\u0308\u0304","\xc3":"A\u0303","\u0100":"A\u0304","\u0102":"A\u0306","\u1eae":"A\u0306\u0301","\u1eb0":"A\u0306\u0300","\u1eb4":"A\u0306\u0303","\u01cd":"A\u030c","\xc2":"A\u0302","\u1ea4":"A\u0302\u0301","\u1ea6":"A\u0302\u0300","\u1eaa":"A\u0302\u0303","\u0226":"A\u0307","\u01e0":"A\u0307\u0304","\xc5":"A\u030a","\u01fa":"A\u030a\u0301","\u1e02":"B\u0307","\u0106":"C\u0301","\u1e08":"C\u0327\u0301","\u010c":"C\u030c","\u0108":"C\u0302","\u010a":"C\u0307","\xc7":"C\u0327","\u010e":"D\u030c","\u1e0a":"D\u0307","\u1e10":"D\u0327","\xc9":"E\u0301","\xc8":"E\u0300","\xcb":"E\u0308","\u1ebc":"E\u0303","\u0112":"E\u0304","\u1e16":"E\u0304\u0301","\u1e14":"E\u0304\u0300","\u0114":"E\u0306","\u1e1c":"E\u0327\u0306","\u011a":"E\u030c","\xca":"E\u0302","\u1ebe":"E\u0302\u0301","\u1ec0":"E\u0302\u0300","\u1ec4":"E\u0302\u0303","\u0116":"E\u0307","\u0228":"E\u0327","\u1e1e":"F\u0307","\u01f4":"G\u0301","\u1e20":"G\u0304","\u011e":"G\u0306","\u01e6":"G\u030c","\u011c":"G\u0302","\u0120":"G\u0307","\u0122":"G\u0327","\u1e26":"H\u0308","\u021e":"H\u030c","\u0124":"H\u0302","\u1e22":"H\u0307","\u1e28":"H\u0327","\xcd":"I\u0301","\xcc":"I\u0300","\xcf":"I\u0308","\u1e2e":"I\u0308\u0301","\u0128":"I\u0303","\u012a":"I\u0304","\u012c":"I\u0306","\u01cf":"I\u030c","\xce":"I\u0302","\u0130":"I\u0307","\u0134":"J\u0302","\u1e30":"K\u0301","\u01e8":"K\u030c","\u0136":"K\u0327","\u0139":"L\u0301","\u013d":"L\u030c","\u013b":"L\u0327","\u1e3e":"M\u0301","\u1e40":"M\u0307","\u0143":"N\u0301","\u01f8":"N\u0300","\xd1":"N\u0303","\u0147":"N\u030c","\u1e44":"N\u0307","\u0145":"N\u0327","\xd3":"O\u0301","\xd2":"O\u0300","\xd6":"O\u0308","\u022a":"O\u0308\u0304","\xd5":"O\u0303","\u1e4c":"O\u0303\u0301","\u1e4e":"O\u0303\u0308","\u022c":"O\u0303\u0304","\u014c":"O\u0304","\u1e52":"O\u0304\u0301","\u1e50":"O\u0304\u0300","\u014e":"O\u0306","\u01d1":"O\u030c","\xd4":"O\u0302","\u1ed0":"O\u0302\u0301","\u1ed2":"O\u0302\u0300","\u1ed6":"O\u0302\u0303","\u022e":"O\u0307","\u0230":"O\u0307\u0304","\u0150":"O\u030b","\u1e54":"P\u0301","\u1e56":"P\u0307","\u0154":"R\u0301","\u0158":"R\u030c","\u1e58":"R\u0307","\u0156":"R\u0327","\u015a":"S\u0301","\u1e64":"S\u0301\u0307","\u0160":"S\u030c","\u1e66":"S\u030c\u0307","\u015c":"S\u0302","\u1e60":"S\u0307","\u015e":"S\u0327","\u0164":"T\u030c","\u1e6a":"T\u0307","\u0162":"T\u0327","\xda":"U\u0301","\xd9":"U\u0300","\xdc":"U\u0308","\u01d7":"U\u0308\u0301","\u01db":"U\u0308\u0300","\u01d5":"U\u0308\u0304","\u01d9":"U\u0308\u030c","\u0168":"U\u0303","\u1e78":"U\u0303\u0301","\u016a":"U\u0304","\u1e7a":"U\u0304\u0308","\u016c":"U\u0306","\u01d3":"U\u030c","\xdb":"U\u0302","\u016e":"U\u030a","\u0170":"U\u030b","\u1e7c":"V\u0303","\u1e82":"W\u0301","\u1e80":"W\u0300","\u1e84":"W\u0308","\u0174":"W\u0302","\u1e86":"W\u0307","\u1e8c":"X\u0308","\u1e8a":"X\u0307","\xdd":"Y\u0301","\u1ef2":"Y\u0300","\u0178":"Y\u0308","\u1ef8":"Y\u0303","\u0232":"Y\u0304","\u0176":"Y\u0302","\u1e8e":"Y\u0307","\u0179":"Z\u0301","\u017d":"Z\u030c","\u1e90":"Z\u0302","\u017b":"Z\u0307","\u03ac":"\u03b1\u0301","\u1f70":"\u03b1\u0300","\u1fb1":"\u03b1\u0304","\u1fb0":"\u03b1\u0306","\u03ad":"\u03b5\u0301","\u1f72":"\u03b5\u0300","\u03ae":"\u03b7\u0301","\u1f74":"\u03b7\u0300","\u03af":"\u03b9\u0301","\u1f76":"\u03b9\u0300","\u03ca":"\u03b9\u0308","\u0390":"\u03b9\u0308\u0301","\u1fd2":"\u03b9\u0308\u0300","\u1fd1":"\u03b9\u0304","\u1fd0":"\u03b9\u0306","\u03cc":"\u03bf\u0301","\u1f78":"\u03bf\u0300","\u03cd":"\u03c5\u0301","\u1f7a":"\u03c5\u0300","\u03cb":"\u03c5\u0308","\u03b0":"\u03c5\u0308\u0301","\u1fe2":"\u03c5\u0308\u0300","\u1fe1":"\u03c5\u0304","\u1fe0":"\u03c5\u0306","\u03ce":"\u03c9\u0301","\u1f7c":"\u03c9\u0300","\u038e":"\u03a5\u0301","\u1fea":"\u03a5\u0300","\u03ab":"\u03a5\u0308","\u1fe9":"\u03a5\u0304","\u1fe8":"\u03a5\u0306","\u038f":"\u03a9\u0301","\u1ffa":"\u03a9\u0300"};class ja{constructor(e,t){this.mode=void 0,this.gullet=void 0,this.settings=void 0,this.leftrightDepth=void 0,this.nextToken=void 0,this.mode="math",this.gullet=new Ua(e,t,this.mode),this.settings=t,this.leftrightDepth=0}expect(e,t){if(void 0===t&&(t=!0),this.fetch().text!==e)throw new o("Expected '"+e+"', got '"+this.fetch().text+"'",this.fetch());t&&this.consume()}consume(){this.nextToken=null}fetch(){return null==this.nextToken&&(this.nextToken=this.gullet.expandNextToken()),this.nextToken}switchMode(e){this.mode=e,this.gullet.switchMode(e)}parse(){this.settings.globalGroup||this.gullet.beginGroup(),this.settings.colorIsTextColor&&this.gullet.macros.set("\\color","\\textcolor");try{var e=this.parseExpression(!1);return this.expect("EOF"),this.settings.globalGroup||this.gullet.endGroup(),e}finally{this.gullet.endGroups()}}subparse(e){var t=this.nextToken;this.consume(),this.gullet.pushToken(new i("}")),this.gullet.pushTokens(e);var r=this.parseExpression(!1);return this.expect("}"),this.nextToken=t,r}parseExpression(e,t){for(var r=[];;){"math"===this.mode&&this.consumeSpaces();var a=this.fetch();if(-1!==ja.endOfExpression.indexOf(a.text))break;if(t&&a.text===t)break;if(e&&Ta[a.text]&&Ta[a.text].infix)break;var n=this.parseAtom(t);if(!n)break;"internal"!==n.type&&r.push(n)}return"text"===this.mode&&this.formLigatures(r),this.handleInfixNodes(r)}handleInfixNodes(e){for(var t,r=-1,a=0;a=0&&this.settings.reportNonstrict("unicodeTextInMathMode",'Latin-1/Unicode text character "'+t[0]+'" used in math mode',e);var l,h=ie[this.mode][t].group,m=n.range(e);if(ae.hasOwnProperty(h)){var c=h;l={type:"atom",mode:this.mode,family:c,loc:m,text:t}}else l={type:h,mode:this.mode,loc:m,text:t};i=l}else{if(!(t.charCodeAt(0)>=128))return null;this.settings.strict&&(A(t.charCodeAt(0))?"math"===this.mode&&this.settings.reportNonstrict("unicodeTextInMathMode",'Unicode text character "'+t[0]+'" used in math mode',e):this.settings.reportNonstrict("unknownSymbol",'Unrecognized Unicode character "'+t[0]+'" ('+t.charCodeAt(0)+")",e)),i={type:"textord",mode:"text",loc:n.range(e),text:t}}if(this.consume(),s)for(var p=0;p{t.r(n),t.d(n,{assets:()=>d,contentTitle:()=>i,default:()=>f,frontMatter:()=>l,metadata:()=>u,toc:()=>p});var r=t(74848),s=t(28453),a=t(11470),o=t(19365),c=t(14252);const l={title:"Disconnect from a dApp"},i=void 0,u={id:"wallet/getting-started/ios/disconnect-from-dapp",title:"Disconnect from a dApp",description:"This guide is a continuation of Connect to a dApp and may assume that certain code components have been defined.",source:"@site/docs/wallet/getting-started/ios/disconnect-from-dapp.mdx",sourceDirName:"wallet/getting-started/ios",slug:"/wallet/getting-started/ios/disconnect-from-dapp",permalink:"/wallet/getting-started/ios/disconnect-from-dapp",draft:!1,unlisted:!1,editUrl:"https://github.com/airgap-it/beacon-docs/edit/main/src/docs/wallet/getting-started/ios/disconnect-from-dapp.mdx",tags:[],version:"current",frontMatter:{title:"Disconnect from a dApp"},sidebar:"wallet",previous:{title:"Connect to a dApp",permalink:"/wallet/getting-started/ios/connect-to-dapp"},next:{title:"Configuration",permalink:"/wallet/advanced/android/configuration"}},d={},p=[{value:"Disconnect from a dApp",id:"disconnect-from-a-dapp",level:2},{value:"Disconnect from all dApps",id:"disconnect-from-all-dapps",level:2},{value:"Example Code",id:"example-code",level:2}];function m(e){const n={a:"a",admonition:"admonition",code:"code",h2:"h2",img:"img",p:"p",pre:"pre",...(0,s.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(c.A,{toc:p}),"\n",(0,r.jsx)(n.admonition,{type:"info",children:(0,r.jsxs)(n.p,{children:["This guide is a continuation of ",(0,r.jsx)(n.a,{href:"connect-to-dapp",children:"Connect to a dApp"})," and may assume that certain code components have been defined."]})}),"\n",(0,r.jsx)(n.h2,{id:"disconnect-from-a-dapp",children:"Disconnect from a dApp"}),"\n",(0,r.jsx)(n.p,{children:"To disconnect form a subscribed dApp remove its peer entry from the client."}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-swift",children:'beaconWallet.getPeers { result in\n guard case let .success(peers) = result else {\n return\n }\n\n guard let dApp = peers.first(where: { $0.name == "MyApp" }) else {\n return\n }\n\n beaconWallet.remove([dApp]) { result in\n guard case .success(_) = result else {\n return\n }\n }\n}\n'})}),"\n",(0,r.jsx)(n.h2,{id:"disconnect-from-all-dapps",children:"Disconnect from all dApps"}),"\n",(0,r.jsx)(n.p,{children:"To disconnect from all subscribed dApps remove all peers that were previously registered in the client."}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-swift",children:"beaconWallet.removeAllPeers { result in\n guard case .success(_) = result else {\n return\n }\n}\n"})}),"\n",(0,r.jsx)(n.h2,{id:"example-code",children:"Example Code"}),"\n",(0,r.jsxs)(n.p,{children:["The following example extends the code presented in the ",(0,r.jsx)(n.a,{href:"connect-to-dapp#ExampleCode",children:"Connect to a dApp"})," guide. The example class listens for incoming requests from a dApp, waits 1s and cancels connection."]}),"\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.a,{href:"https://github.com/airgap-it/beacon-ios-sdk",children:(0,r.jsx)(n.img,{src:"https://img.shields.io/github/v/tag/airgap-it/beacon-ios-sdk?label=stable&sort=semver",alt:"stable"})}),"\n",(0,r.jsx)(n.a,{href:"https://github.com/airgap-it/beacon-ios-sdk",children:(0,r.jsx)(n.img,{src:"https://img.shields.io/github/v/tag/airgap-it/beacon-ios-sdk?color=orange&include_prereleases&label=latest",alt:"latest"})})]}),"\n",(0,r.jsxs)(a.A,{groupId:"package-manager",defaultValue:"spm",values:[{label:"SPM",value:"spm"},{label:"CocoaPods",value:"cocoapods"}],children:[(0,r.jsxs)(o.A,{value:"spm",children:[(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-swift",metastring:'title="Package.swift"',children:'dependencies: [\n .package(url: "https://github.com/airgap-it/beacon-ios-sdk", from: "x.y.z")\n],\n'})}),(0,r.jsxs)(n.p,{children:["Or in Xcode open the ",(0,r.jsx)(n.code,{children:"Add Package Dependency"})," window (as described in ",(0,r.jsx)(n.a,{href:"https://developer.apple.com/documentation/xcode/adding_package_dependencies_to_your_app",children:"the official guide"}),") and enter the ",(0,r.jsx)(n.code,{children:"Beacon iOS SDK"})," GitHub repository URL"]}),(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{children:"https://github.com/airgap-it/beacon-ios-sdk\n"})})]}),(0,r.jsx)(o.A,{value:"cocoapods",children:(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-ruby",metastring:'title="Podfile"',children:"target 'MyTarget' do\n use_frameworks!\n\n pod 'BeaconCore', :git => 'https://github.com/airgap-it/beacon-ios-sdk', :tag => 'x.y.z'\n pod 'BeaconClientWallet', :git => 'https://github.com/airgap-it/beacon-ios-sdk', :tag => 'x.y.z'\n pod 'BeaconBlockchainSubstrate', :git => 'https://github.com/airgap-it/beacon-ios-sdk', :tag => 'x.y.z'\n pod 'BeaconBlockchainTezos', :git => 'https://github.com/airgap-it/beacon-ios-sdk', :tag => 'x.y.z'\n pod 'BeaconTransportP2PMatrix', :git => 'https://github.com/airgap-it/beacon-ios-sdk', :tag => 'x.y.z'\nend\n"})})})]}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-swift",metastring:'title="BeaconExample.swift"',children:'import Foundation\nimport BeaconCore\nimport BeaconBlockchainSubstrate\nimport BeaconBlockchainTezos\nimport BeaconClientWallet\nimport BeaconTransportP2PMatrix\n\nclass BeaconExample {\n var beaconWallet: Beacon.WalletClient!\n\n let dApp = Beacon.P2PPeer(\n id: "0b02d44c-de33-b5ab-7730-ff8e62f61869" /* TODO: change me */,,\n name: "My dApp",\n publicKey: "6c7870aa1e42477fd7c2baaf4763bd826971e470772f71a0a388c1763de3ea1e" /* TODO: change me */,\n relayServer: "beacon-node-1.sky.papers.tech" /* TODO: change me */,\n version: "2" /* TODO: change me */\n )\n\n func substrateAccount(network: Substrate.Network) throws -> Substrate.Account {\n try Substrate.Account(\n publicKey: "f4c6095213a2f6d09464ed882b12d6024d20f7170c3b8bd5c1b071e4b00ced72" /* TODO: change me */,\n address: "16XwWkdUqFXFY1tJNf1Q6fGgxQnGYUS6M95wPcrbp2sjjuoC" /* TODO: change me */,\n network: network\n )\n }\n\n func tezosAccount(network: Tezos.Network) throws -> Tezos.Account {\n try Tezos.Network(\n publicKey: "9ae0875d510904b0b15d251d8def1f5f3353e9799841c0ed6d7ac718f04459a0" /* TODO: change me */,\n address: "tz1SkbBZg15BXPRkYCrSzhY6rq4tKGtpUSWv" /* TODO: change me */,\n network: network\n )\n }\n\n func run() {\n createBeaconWallet { result in\n guard case .success(_) = result else {\n return\n }\n\n self.subscribeToRequests { result in\n guard case .success(_) = result else {\n return\n }\n\n self.connectToDApp { result in\n guard case .success(_) = result else {\n return\n }\n }\n }\n }\n }\n\n func createBeaconWallet(completion: @escaping (Result<(), Error>) -> ()) {\n do {\n Beacon.WalletClient.create(\n with: .init(\n name: "MyApp",\n blockchains: [Substrate.factory, Tezos.factory],\n connections: [try Transport.P2P.Matrix.connection()]\n )\n ) { result in\n switch result {\n case let .success(client):\n self.beaconWallet = client\n completion(.success(()))\n case let .failure(error):\n completion(.failure(error))\n }\n }\n } catch {\n completion(.failure(error))\n }\n }\n\n func subscribeToRequests(completion: @escaping (Result<(), Error>) -> ()) {\n beaconWallet.connect { result in\n switch result {\n case .success(_):\n self.beaconWallet.listen(onRequest: self.onSubstrateRequest)\n self.beaconWallet.listen(onRequest: self.onTezosRequest)\n completion(.success(()))\n case let .failure(error):\n completion(.failure(error))\n }\n }\n }\n\n func connectToDApp(completion: @escaping (Result<(), Error>) -> ()) {\n beaconWallet.add([.p2p(dApp)]) { result in\n switch result {\n case .success(_):\n completion(.success(()))\n case let .failure(error):\n completion(.failure(error))\n }\n }\n }\n\n func onSubstrateRequest(_ request: Result, Beacon.Error>) {\n do {\n let request = try request.get()\n let response = try response(from: request)\n\n beaconWallet.respond(with: response) { result in\n switch result {\n case .success(_):\n print("Response sent")\n DispatchQueue.main.asyncAfter(deadline: .now() + 1.0) {\n // highlight-start\n self.beaconWallet.remove([.p2p(self.dApp)]) { result in\n // highlight-end\n switch result {\n case .success(_):\n print("Disconnected")\n case let .failure(error):\n print(error)\n }\n }\n }\n case let .failure(error):\n print(error)\n }\n }\n } catch {\n print(error)\n }\n }\n\n func response(from request: BeaconRequest) throws -> BeaconResponse {\n switch request {\n case let .permission(content):\n let accounts = try content.networks.map { try substrateAccount(network: $0) }\n return .permission(PermissionSubstrateResponse(from: content, accounts: accounts))\n case let .blockchain(blockchain):\n return .error(ErrorBeaconResponse(from: blockchain, errorType: .aborted))\n }\n }\n\n func onTezosRequest(_ request: Result, Beacon.Error>) {\n do {\n let request = try request.get()\n let response = try response(from: request)\n\n beaconWallet.respond(with: response) { result in\n switch result {\n case .success(_):\n print("Response sent")\n DispatchQueue.main.asyncAfter(deadline: .now() + 1.0) {\n // highlight-start\n self.beaconWallet.remove([.p2p(self.dApp)]) { result in\n // highlight-end\n switch result {\n case .success(_):\n print("Disconnected")\n case let .failure(error):\n print(error)\n }\n }\n }\n case let .failure(error):\n print(error)\n }\n }\n } catch {\n print(error)\n }\n }\n\n func response(from request: BeaconRequest) throws -> BeaconResponse {\n switch request {\n case let .permission(content):\n let account = try tezosAccount(network: content.network)\n return .permission(PermissionTezosResponse(from: content, account: account))\n case let .blockchain(blockchain):\n return .error(ErrorBeaconResponse(from: blockchain, errorType: .aborted))\n }\n }\n}\n'})})]})}function f(e={}){const{wrapper:n}={...(0,s.R)(),...e.components};return n?(0,r.jsx)(n,{...e,children:(0,r.jsx)(m,{...e})}):m(e)}},14252:(e,n,t)=>{t.d(n,{A:()=>o});t(96540);var r=t(65195);const s={tableOfContentsInline:"tableOfContentsInline_prmo"};var a=t(74848);function o(e){let{toc:n,minHeadingLevel:t,maxHeadingLevel:o}=e;return(0,a.jsx)("div",{className:s.tableOfContentsInline,children:(0,a.jsx)(r.A,{toc:n,minHeadingLevel:t,maxHeadingLevel:o,className:"table-of-contents",linkClassName:null})})}},65195:(e,n,t)=>{t.d(n,{A:()=>h});var r=t(96540),s=t(6342);function a(e){const n=e.map((e=>({...e,parentIndex:-1,children:[]}))),t=Array(7).fill(-1);n.forEach(((e,n)=>{const r=t.slice(2,e.level);e.parentIndex=Math.max(...r),t[e.level]=n}));const r=[];return n.forEach((e=>{const{parentIndex:t,...s}=e;t>=0?n[t].children.push(s):r.push(s)})),r}function o(e){let{toc:n,minHeadingLevel:t,maxHeadingLevel:r}=e;return n.flatMap((e=>{const n=o({toc:e.children,minHeadingLevel:t,maxHeadingLevel:r});return function(e){return e.level>=t&&e.level<=r}(e)?[{...e,children:n}]:n}))}function c(e){const n=e.getBoundingClientRect();return n.top===n.bottom?c(e.parentNode):n}function l(e,n){let{anchorTopOffset:t}=n;const r=e.find((e=>c(e).top>=t));if(r){return function(e){return e.top>0&&e.bottom{e.current=n?0:document.querySelector(".navbar").clientHeight}),[n]),e}function u(e){const n=(0,r.useRef)(void 0),t=i();(0,r.useEffect)((()=>{if(!e)return()=>{};const{linkClassName:r,linkActiveClassName:s,minHeadingLevel:a,maxHeadingLevel:o}=e;function c(){const e=function(e){return Array.from(document.getElementsByClassName(e))}(r),c=function(e){let{minHeadingLevel:n,maxHeadingLevel:t}=e;const r=[];for(let s=n;s<=t;s+=1)r.push(`h${s}.anchor`);return Array.from(document.querySelectorAll(r.join()))}({minHeadingLevel:a,maxHeadingLevel:o}),i=l(c,{anchorTopOffset:t.current}),u=e.find((e=>i&&i.id===function(e){return decodeURIComponent(e.href.substring(e.href.indexOf("#")+1))}(e)));e.forEach((e=>{!function(e,t){t?(n.current&&n.current!==e&&n.current.classList.remove(s),e.classList.add(s),n.current=e):e.classList.remove(s)}(e,e===u)}))}return document.addEventListener("scroll",c),document.addEventListener("resize",c),c(),()=>{document.removeEventListener("scroll",c),document.removeEventListener("resize",c)}}),[e,t])}var d=t(28774),p=t(74848);function m(e){let{toc:n,className:t,linkClassName:r,isChild:s}=e;return n.length?(0,p.jsx)("ul",{className:s?void 0:t,children:n.map((e=>(0,p.jsxs)("li",{children:[(0,p.jsx)(d.A,{to:`#${e.id}`,className:r??void 0,dangerouslySetInnerHTML:{__html:e.value}}),(0,p.jsx)(m,{isChild:!0,toc:e.children,className:t,linkClassName:r})]},e.id)))}):null}const f=r.memo(m);function h(e){let{toc:n,className:t="table-of-contents table-of-contents__left-border",linkClassName:c="table-of-contents__link",linkActiveClassName:l,minHeadingLevel:i,maxHeadingLevel:d,...m}=e;const h=(0,s.p)(),g=i??h.tableOfContents.minHeadingLevel,b=d??h.tableOfContents.maxHeadingLevel,v=function(e){let{toc:n,minHeadingLevel:t,maxHeadingLevel:s}=e;return(0,r.useMemo)((()=>o({toc:a(n),minHeadingLevel:t,maxHeadingLevel:s})),[n,t,s])}({toc:n,minHeadingLevel:g,maxHeadingLevel:b});return u((0,r.useMemo)((()=>{if(c&&l)return{linkClassName:c,linkActiveClassName:l,minHeadingLevel:g,maxHeadingLevel:b}}),[c,l,g,b])),(0,p.jsx)(f,{toc:v,className:t,linkClassName:c,...m})}},19365:(e,n,t)=>{t.d(n,{A:()=>o});t(96540);var r=t(34164);const s={tabItem:"tabItem_Ymn6"};var a=t(74848);function o(e){let{children:n,hidden:t,className:o}=e;return(0,a.jsx)("div",{role:"tabpanel",className:(0,r.A)(s.tabItem,o),hidden:t,children:n})}},11470:(e,n,t)=>{t.d(n,{A:()=>y});var r=t(96540),s=t(34164),a=t(23104),o=t(56347),c=t(205),l=t(57485),i=t(31682),u=t(70679);function d(e){return r.Children.toArray(e).filter((e=>"\n"!==e)).map((e=>{if(!e||(0,r.isValidElement)(e)&&function(e){const{props:n}=e;return!!n&&"object"==typeof n&&"value"in n}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}function p(e){const{values:n,children:t}=e;return(0,r.useMemo)((()=>{const e=n??function(e){return d(e).map((e=>{let{props:{value:n,label:t,attributes:r,default:s}}=e;return{value:n,label:t,attributes:r,default:s}}))}(t);return function(e){const n=(0,i.XI)(e,((e,n)=>e.value===n.value));if(n.length>0)throw new Error(`Docusaurus error: Duplicate values "${n.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[n,t])}function m(e){let{value:n,tabValues:t}=e;return t.some((e=>e.value===n))}function f(e){let{queryString:n=!1,groupId:t}=e;const s=(0,o.W6)(),a=function(e){let{queryString:n=!1,groupId:t}=e;if("string"==typeof n)return n;if(!1===n)return null;if(!0===n&&!t)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return t??null}({queryString:n,groupId:t});return[(0,l.aZ)(a),(0,r.useCallback)((e=>{if(!a)return;const n=new URLSearchParams(s.location.search);n.set(a,e),s.replace({...s.location,search:n.toString()})}),[a,s])]}function h(e){const{defaultValue:n,queryString:t=!1,groupId:s}=e,a=p(e),[o,l]=(0,r.useState)((()=>function(e){let{defaultValue:n,tabValues:t}=e;if(0===t.length)throw new Error("Docusaurus error: the component requires at least one children component");if(n){if(!m({value:n,tabValues:t}))throw new Error(`Docusaurus error: The has a defaultValue "${n}" but none of its children has the corresponding value. Available values are: ${t.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return n}const r=t.find((e=>e.default))??t[0];if(!r)throw new Error("Unexpected error: 0 tabValues");return r.value}({defaultValue:n,tabValues:a}))),[i,d]=f({queryString:t,groupId:s}),[h,g]=function(e){let{groupId:n}=e;const t=function(e){return e?`docusaurus.tab.${e}`:null}(n),[s,a]=(0,u.Dv)(t);return[s,(0,r.useCallback)((e=>{t&&a.set(e)}),[t,a])]}({groupId:s}),b=(()=>{const e=i??h;return m({value:e,tabValues:a})?e:null})();(0,c.A)((()=>{b&&l(b)}),[b]);return{selectedValue:o,selectValue:(0,r.useCallback)((e=>{if(!m({value:e,tabValues:a}))throw new Error(`Can't select invalid tab value=${e}`);l(e),d(e),g(e)}),[d,g,a]),tabValues:a}}var g=t(92303);const b={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};var v=t(74848);function x(e){let{className:n,block:t,selectedValue:r,selectValue:o,tabValues:c}=e;const l=[],{blockElementScrollPositionUntilNextRender:i}=(0,a.a_)(),u=e=>{const n=e.currentTarget,t=l.indexOf(n),s=c[t].value;s!==r&&(i(n),o(s))},d=e=>{let n=null;switch(e.key){case"Enter":u(e);break;case"ArrowRight":{const t=l.indexOf(e.currentTarget)+1;n=l[t]??l[0];break}case"ArrowLeft":{const t=l.indexOf(e.currentTarget)-1;n=l[t]??l[l.length-1];break}}n?.focus()};return(0,v.jsx)("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,s.A)("tabs",{"tabs--block":t},n),children:c.map((e=>{let{value:n,label:t,attributes:a}=e;return(0,v.jsx)("li",{role:"tab",tabIndex:r===n?0:-1,"aria-selected":r===n,ref:e=>l.push(e),onKeyDown:d,onClick:u,...a,className:(0,s.A)("tabs__item",b.tabItem,a?.className,{"tabs__item--active":r===n}),children:t??n},n)}))})}function w(e){let{lazy:n,children:t,selectedValue:a}=e;const o=(Array.isArray(t)?t:[t]).filter(Boolean);if(n){const e=o.find((e=>e.props.value===a));return e?(0,r.cloneElement)(e,{className:(0,s.A)("margin-top--md",e.props.className)}):null}return(0,v.jsx)("div",{className:"margin-top--md",children:o.map(((e,n)=>(0,r.cloneElement)(e,{key:n,hidden:e.props.value!==a})))})}function k(e){const n=h(e);return(0,v.jsxs)("div",{className:(0,s.A)("tabs-container",b.tabList),children:[(0,v.jsx)(x,{...n,...e}),(0,v.jsx)(w,{...n,...e})]})}function y(e){const n=(0,g.A)();return(0,v.jsx)(k,{...e,children:d(e.children)},String(n))}},28453:(e,n,t)=>{t.d(n,{R:()=>o,x:()=>c});var r=t(96540);const s={},a=r.createContext(s);function o(e){const n=r.useContext(a);return r.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function c(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:o(e.components),r.createElement(a.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/217fc9b0.8352dfbd.js b/assets/js/217fc9b0.8352dfbd.js new file mode 100644 index 00000000..aa079396 --- /dev/null +++ b/assets/js/217fc9b0.8352dfbd.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkbeacon_docs=self.webpackChunkbeacon_docs||[]).push([[6385],{16186:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>d,contentTitle:()=>l,default:()=>g,frontMatter:()=>i,metadata:()=>h,toc:()=>u});var s=t(74848),r=t(28453),o=t(11470),a=t(19365),c=t(14252);const i={title:"Connect to a dApp"},l=void 0,h={id:"wallet/getting-started/ios/connect-to-dapp",title:"Connect to a dApp",description:"Requirements",source:"@site/docs/wallet/getting-started/ios/connect-to-dapp.mdx",sourceDirName:"wallet/getting-started/ios",slug:"/wallet/getting-started/ios/connect-to-dapp",permalink:"/wallet/getting-started/ios/connect-to-dapp",draft:!1,unlisted:!1,editUrl:"https://github.com/airgap-it/beacon-docs/edit/main/src/docs/wallet/getting-started/ios/connect-to-dapp.mdx",tags:[],version:"current",frontMatter:{title:"Connect to a dApp"},sidebar:"wallet",previous:{title:"Installation",permalink:"/wallet/getting-started/ios/installation"},next:{title:"Disconnect from a dApp",permalink:"/wallet/getting-started/ios/disconnect-from-dapp"}},d={},u=[{value:"Requirements",id:"requirements",level:2},{value:"How to listen for messages and respond",id:"how-to-listen-for-messages-and-respond",level:2},{value:"Create a wallet client",id:"create-a-wallet-client",level:3},{value:"Subscribe to incoming requests",id:"subscribe-to-incoming-requests",level:3},{value:"Connect to a dApp",id:"connect-to-a-dapp",level:3},{value:"Handle requests from the dApp",id:"handle-requests-from-the-dapp",level:3},{value:"Example Code",id:"example-code",level:2}];function p(e){const n={a:"a",admonition:"admonition",code:"code",em:"em",h2:"h2",h3:"h3",img:"img",p:"p",pre:"pre",...(0,r.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(c.A,{toc:u}),"\n",(0,s.jsx)(n.h2,{id:"requirements",children:"Requirements"}),"\n",(0,s.jsx)(n.p,{children:"Make sure you have added the following packages as your dependencies:"}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:"BeaconCore\nBeaconClientWallet\n"})}),"\n",(0,s.jsxs)(n.p,{children:["You should have also decided which blockchains will be supported in your application and what transport layers to use to establish the communication. Make sure you have added the appropriate ",(0,s.jsx)(n.a,{href:"installation#blockchain",children:"Blockchain"})," and ",(0,s.jsx)(n.a,{href:"installation#transport",children:"Transport"})," packages as your dependencies as well."]}),"\n",(0,s.jsx)(n.admonition,{type:"tip",children:(0,s.jsxs)(n.p,{children:["See the ",(0,s.jsx)(n.a,{href:"installation",children:"Installation"})," page for more information about the packages and how to install them."]})}),"\n",(0,s.jsx)(n.h2,{id:"how-to-listen-for-messages-and-respond",children:"How to listen for messages and respond"}),"\n",(0,s.jsx)(n.p,{children:"Follow the steps below to learn how to interact with a dApp. The guide assumes all blockchains and transport layers are supported."}),"\n",(0,s.jsx)(n.h3,{id:"create-a-wallet-client",children:"Create a wallet client"}),"\n",(0,s.jsxs)(n.p,{children:["Create a ",(0,s.jsx)(n.code,{children:"Beacon.WalletClient"})," instance by providing your app's name, registering supported blockchains and transport layers that will be used for communication."]}),"\n",(0,s.jsxs)(n.p,{children:["The example below creates a new ",(0,s.jsx)(n.code,{children:"Beacon.WalletClient"})," instance with default settings. See the ",(0,s.jsx)(n.a,{href:"/wallet/advanced/ios/configuration",children:"Configuration"})," guide to learn about more advanced setups."]}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-swift",children:'import BeaconCore\nimport BeaconBlockchainSubstrate\nimport BeaconBlockchainTezos\nimport BeaconClientWallet\nimport BeaconTransportP2PMatrix\n\n...\n\nvar beaconWallet: Beacon.WalletClient!\n\ndo {\n // highlight-start\n Beacon.WalletClient.create(\n with: .init(\n name: "MyApp",\n blockchains: [Substrate.factory, Tezos.factory], // set support for Substrate and Tezos blockchains\n connections: [try Transport.P2P.Matrix.connection()] // use Matrix to communicate with the Beacon network\n )\n ) { result in\n // highlight-end\n switch result {\n case let .success(client):\n beaconWallet = client\n case let .failure(error):\n print(error)\n }\n }\n} catch {\n print(error)\n}\n'})}),"\n",(0,s.jsx)(n.admonition,{type:"caution",children:(0,s.jsxs)(n.p,{children:["Currently only one instance of ",(0,s.jsx)(n.code,{children:"Beacon.WalletClient"})," should be created per application."]})}),"\n",(0,s.jsx)(n.h3,{id:"subscribe-to-incoming-requests",children:"Subscribe to incoming requests"}),"\n",(0,s.jsx)(n.p,{children:"Subscribe to requests from the dApp by connecting to the Beacon network and listening to incoming requests."}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-swift",children:"import BeaconCore\nimport BeaconBlockchainSubstrate\nimport BeaconBlockchainTezos\nimport BeaconClientWallet\n\n...\n\n// highlight-start\nbeaconWallet.connect { result in\n// highlight-end\n switch result {\n case .success(_):\n // highlight-start\n beaconWallet.listen(onRequest: onSubstrateRequest) // listen for Substrate requests\n beaconWallet.listen(onRequest: onTezosRequest) // listen for Tezos requests\n // highlight-end\n case let .failure(error):\n print(error)\n }\n}\n\n...\n\nfunc onSubstrateRequest(_ request: Result, Beacon.Error>) {\n // TODO: Not yet implemented\n}\n\nfunc onTezosRequest(_ request: Result, Beacon.Error>) {\n // TODO: Not yet implemented\n}\n"})}),"\n",(0,s.jsx)(n.h3,{id:"connect-to-a-dapp",children:"Connect to a dApp"}),"\n",(0,s.jsxs)(n.p,{children:["To connect to a new dApp take the pairing request (obtained from, for example, a paring QR code) and transform it to ",(0,s.jsx)(n.code,{children:"Beacon.P2PPeer"}),". Next, register the new instance of ",(0,s.jsx)(n.code,{children:"Beacon.P2PPeer"})," in your wallet client."]}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-swift",children:'import BeaconCore\nimport BeaconClientWallet\n\n// highlight-start\n// replace placeholder values with data provided in the dApp\'s pairing request\nlet dApp = Beacon.P2PPeer(\n id: "id",\n name: "name",\n publicKey: "publicKey",\n relayServer: "relayServer",\n version: "version"\n)\n// highlight-end\n\n// highlight-start\n// connect to a new peer\nbeaconWallet.add([.p2p(dApp)]) { result in\n// highlight-end\n switch result {\n case .success(_):\n print("dApp connected")\n case let .failure(error):\n print(error)\n }\n}\n'})}),"\n",(0,s.jsx)(n.h3,{id:"handle-requests-from-the-dapp",children:"Handle requests from the dApp"}),"\n",(0,s.jsxs)(n.p,{children:["Having received a request, you can create a response and send it back to the dApp. The response should ",(0,s.jsx)(n.em,{children:"always"})," be created from an incoming request. Attempting to send a response that was not created from a request awaiting answer will result in an error."]}),"\n",(0,s.jsx)(n.p,{children:"The first request your app receives from a dApp is a permission request. The example below shows how to respond to it in the most basic way. To get more information about other kinds of requests or learn more advanced use cases see the Blockchain guides."}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-swift",children:'import BeaconCore\nimport BeaconBlockchainSubstrate\nimport BeaconBlockchainTezos\nimport BeaconClientWallet\n\nfunc onSubstrateRequest(_ request: Result, Beacon.Error>) {\n do {\n let request = try request.get()\n let response = try response(from: request)\n\n // highlight-start\n beaconWallet.respond(with: response) { result in\n // highlight-end\n switch result {\n case .success(_):\n print("Response sent")\n case let .failure(error):\n print(error)\n }\n }\n } catch {\n print(error)\n }\n}\n\nfunc response(from request: BeaconRequest) throws -> BeaconResponse {\n // highlight-start\n switch request {\n case let .permission(content):\n let accounts = try content.networks.map { try substrateAccount(network: $0) }\n return .permission(PermissionSubstrateResponse(from: content, accounts: accounts))\n case let .blockchain(blockchain):\n return .error(ErrorBeaconResponse(from: blockchain, errorType: .aborted))\n }\n // highlight-end\n}\n\nfunc onTezosRequest(_ request: Result, Beacon.Error>) {\n do {\n let request = try request.get()\n let response = try response(from: request)\n\n // highlight-start\n beaconWallet.respond(with: response) { result in\n // highlight-end\n switch result {\n case .success(_):\n print("Response sent")\n case let .failure(error):\n print(error)\n }\n }\n } catch {\n print(error)\n }\n}\n\nfunc response(from request: BeaconRequest) throws -> BeaconResponse {\n // highlight-start\n switch request {\n case let .permission(content):\n let account = try tezosAccount(network: content.network)\n return .permission(PermissionTezosResponse(from: content, account: account))\n case let .blockchain(blockchain):\n return .error(ErrorBeaconResponse(from: blockchain, errorType: .aborted))\n }\n // highlight-end\n}\n\n// replace placeholder values with valid data\nfunc substrateAccount(network: Substrate.Network) throws -> Substrate.Account {\n try Substrate.Account(\n publicKey: "substratePublicKey",\n address: "substrateAddress",\n network: network\n )\n}\n\nfunc tezosAccount(network: Tezos.Network) throws -> Tezos.Account {\n try Tezos.Network(\n publicKey: "tezosPublicKey",\n address: "tezosAddress",\n network: network\n )\n}\n'})}),"\n",(0,s.jsx)(n.h2,{id:"example-code",children:"Example Code"}),"\n",(0,s.jsxs)(n.p,{children:["The following example shows how to create a simple class which connects to a dApp using ",(0,s.jsx)(n.a,{href:"https://matrix.org/",children:"Matrix"})," and handles ",(0,s.jsx)(n.a,{href:"https://substrate.io/",children:"Substrate"})," and ",(0,s.jsx)(n.a,{href:"https://tezos.com/",children:"Tezos"})," messages based on the steps described earlier."]}),"\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.a,{href:"https://github.com/airgap-it/beacon-ios-sdk",children:(0,s.jsx)(n.img,{src:"https://img.shields.io/github/v/tag/airgap-it/beacon-ios-sdk?label=stable&sort=semver",alt:"stable"})}),"\n",(0,s.jsx)(n.a,{href:"https://github.com/airgap-it/beacon-ios-sdk",children:(0,s.jsx)(n.img,{src:"https://img.shields.io/github/v/tag/airgap-it/beacon-ios-sdk?color=orange&include_prereleases&label=latest",alt:"latest"})})]}),"\n",(0,s.jsxs)(o.A,{groupId:"package-manager",defaultValue:"spm",values:[{label:"SPM",value:"spm"},{label:"CocoaPods",value:"cocoapods"}],children:[(0,s.jsxs)(a.A,{value:"spm",children:[(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-swift",metastring:'title="Package.swift"',children:'dependencies: [\n .package(url: "https://github.com/airgap-it/beacon-ios-sdk", from: "x.y.z")\n],\n'})}),(0,s.jsxs)(n.p,{children:["Or in Xcode open the ",(0,s.jsx)(n.code,{children:"Add Package Dependency"})," window (as described in ",(0,s.jsx)(n.a,{href:"https://developer.apple.com/documentation/xcode/adding_package_dependencies_to_your_app",children:"the official guide"}),") and enter the ",(0,s.jsx)(n.code,{children:"Beacon iOS SDK"})," GitHub repository URL"]}),(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:"https://github.com/airgap-it/beacon-ios-sdk\n"})})]}),(0,s.jsx)(a.A,{value:"cocoapods",children:(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-ruby",metastring:'title="Podfile"',children:"target 'MyTarget' do\n use_frameworks!\n\n pod 'BeaconCore', :git => 'https://github.com/airgap-it/beacon-ios-sdk', :tag => 'x.y.z'\n pod 'BeaconClientWallet', :git => 'https://github.com/airgap-it/beacon-ios-sdk', :tag => 'x.y.z'\n pod 'BeaconBlockchainSubstrate', :git => 'https://github.com/airgap-it/beacon-ios-sdk', :tag => 'x.y.z'\n pod 'BeaconBlockchainTezos', :git => 'https://github.com/airgap-it/beacon-ios-sdk', :tag => 'x.y.z'\n pod 'BeaconTransportP2PMatrix', :git => 'https://github.com/airgap-it/beacon-ios-sdk', :tag => 'x.y.z'\nend\n"})})})]}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-swift",metastring:'title="BeaconExample.swift"',children:'import Foundation\nimport BeaconCore\nimport BeaconBlockchainSubstrate\nimport BeaconBlockchainTezos\nimport BeaconClientWallet\nimport BeaconTransportP2PMatrix\n\nclass BeaconExample {\n var beaconWallet: Beacon.WalletClient!\n\n let dApp = Beacon.P2PPeer(\n id: "0b02d44c-de33-b5ab-7730-ff8e62f61869" /* TODO: change me */,,\n name: "My dApp",\n publicKey: "6c7870aa1e42477fd7c2baaf4763bd826971e470772f71a0a388c1763de3ea1e" /* TODO: change me */,\n relayServer: "beacon-node-1.sky.papers.tech" /* TODO: change me */,\n version: "2" /* TODO: change me */\n )\n\n func substrateAccount(network: Substrate.Network) throws -> Substrate.Account {\n try Substrate.Account(\n publicKey: "f4c6095213a2f6d09464ed882b12d6024d20f7170c3b8bd5c1b071e4b00ced72" /* TODO: change me */,\n address: "16XwWkdUqFXFY1tJNf1Q6fGgxQnGYUS6M95wPcrbp2sjjuoC" /* TODO: change me */,\n network: network\n )\n }\n\n func tezosAccount(network: Tezos.Network) throws -> Tezos.Account {\n try Tezos.Network(\n publicKey: "9ae0875d510904b0b15d251d8def1f5f3353e9799841c0ed6d7ac718f04459a0" /* TODO: change me */,\n address: "tz1SkbBZg15BXPRkYCrSzhY6rq4tKGtpUSWv" /* TODO: change me */,\n network: network\n )\n }\n\n func run() {\n createBeaconWallet { result in\n guard case .success(_) = result else {\n return\n }\n\n self.subscribeToRequests { result in\n guard case .success(_) = result else {\n return\n }\n\n self.connectToDApp { result in\n guard case .success(_) = result else {\n return\n }\n }\n }\n }\n }\n\n func createBeaconWallet(completion: @escaping (Result<(), Error>) -> ()) {\n do {\n // highlight-start\n Beacon.WalletClient.create(\n with: .init(\n name: "MyApp",\n blockchains: [Substrate.factory, Tezos.factory],\n connections: [try Transport.P2P.Matrix.connection()]\n )\n ) { result in\n // highlight-end\n switch result {\n case let .success(client):\n self.beaconWallet = client\n completion(.success(()))\n case let .failure(error):\n completion(.failure(error))\n }\n }\n } catch {\n completion(.failure(error))\n }\n }\n\n func subscribeToRequests(completion: @escaping (Result<(), Error>) -> ()) {\n // highlight-start\n beaconWallet.connect { result in\n // highlight-end\n switch result {\n case .success(_):\n // highlight-start\n self.beaconWallet.listen(onRequest: self.onSubstrateRequest)\n self.beaconWallet.listen(onRequest: self.onTezosRequest)\n // highlight-end\n completion(.success(()))\n case let .failure(error):\n completion(.failure(error))\n }\n }\n }\n\n func connectToDApp(completion: @escaping (Result<(), Error>) -> ()) {\n // highlight-start\n beaconWallet.add([.p2p(dApp)]) { result in\n // highlight-end\n switch result {\n case .success(_):\n completion(.success(()))\n case let .failure(error):\n completion(.failure(error))\n }\n }\n }\n\n func onSubstrateRequest(_ request: Result, Beacon.Error>) {\n do {\n let request = try request.get()\n let response = try response(from: request)\n\n // highlight-start\n beaconWallet.respond(with: response) { result in\n // highlight-end\n switch result {\n case .success(_):\n print("Response sent")\n case let .failure(error):\n print(error)\n }\n }\n } catch {\n print(error)\n }\n }\n\n func response(from request: BeaconRequest) throws -> BeaconResponse {\n // highlight-start\n switch request {\n case let .permission(content):\n let accounts = try content.networks.map { try substrateAccount(network: $0) }\n return .permission(PermissionSubstrateResponse(from: content, accounts: accounts))\n case let .blockchain(blockchain):\n return .error(ErrorBeaconResponse(from: blockchain, errorType: .aborted))\n }\n // highlight-end\n }\n\n func onTezosRequest(_ request: Result, Beacon.Error>) {\n do {\n let request = try request.get()\n let response = try response(from: request)\n\n // highlight-start\n beaconWallet.respond(with: response) { result in\n // highlight-end\n switch result {\n case .success(_):\n print("Response sent")\n case let .failure(error):\n print(error)\n }\n }\n } catch {\n print(error)\n }\n }\n\n func response(from request: BeaconRequest) throws -> BeaconResponse {\n // highlight-start\n switch request {\n case let .permission(content):\n let account = try tezosAccount(network: content.network)\n return .permission(PermissionTezosResponse(from: content, account: account))\n case let .blockchain(blockchain):\n return .error(ErrorBeaconResponse(from: blockchain, errorType: .aborted))\n }\n // highlight-end\n }\n}\n'})})]})}function g(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(p,{...e})}):p(e)}}}]); \ No newline at end of file diff --git a/assets/js/2207.c8d523f5.js b/assets/js/2207.c8d523f5.js new file mode 100644 index 00000000..d956cf7a --- /dev/null +++ b/assets/js/2207.c8d523f5.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkbeacon_docs=self.webpackChunkbeacon_docs||[]).push([[2207],{82207:(t,e,s)=>{s.d(e,{_$:()=>a,tM:()=>J,z2:()=>q});var n=s(57323),i=s(64994),u=s(20007),r=function(){var t=(0,i.K2)((function(t,e,s,n){for(s=s||{},n=t.length;n--;s[t[n]]=e);return s}),"o"),e=[1,17],s=[1,18],n=[1,19],u=[1,39],r=[1,40],a=[1,25],o=[1,23],c=[1,24],l=[1,31],h=[1,32],A=[1,33],p=[1,34],d=[1,35],y=[1,36],C=[1,26],E=[1,27],m=[1,28],g=[1,29],b=[1,43],f=[1,30],k=[1,42],T=[1,44],F=[1,41],D=[1,45],B=[1,9],_=[1,8,9],S=[1,56],N=[1,57],L=[1,58],$=[1,59],x=[1,60],I=[1,61],v=[1,62],O=[1,8,9,39],K=[1,74],R=[1,8,9,12,13,21,37,39,42,59,60,61,62,63,64,65,70,72],w=[1,8,9,12,13,19,21,37,39,42,46,59,60,61,62,63,64,65,70,72,74,80,95,97,98],P=[13,74,80,95,97,98],M=[13,64,65,74,80,95,97,98],G=[13,59,60,61,62,63,74,80,95,97,98],U=[1,93],Y=[1,110],z=[1,108],Q=[1,102],j=[1,103],W=[1,104],X=[1,105],H=[1,106],q=[1,107],J=[1,109],V=[1,8,9,37,39,42],Z=[1,8,9,21],tt=[1,8,9,78],et=[1,8,9,21,73,74,78,80,81,82,83,84,85],st={trace:(0,i.K2)((function(){}),"trace"),yy:{},symbols_:{error:2,start:3,mermaidDoc:4,statements:5,graphConfig:6,CLASS_DIAGRAM:7,NEWLINE:8,EOF:9,statement:10,classLabel:11,SQS:12,STR:13,SQE:14,namespaceName:15,alphaNumToken:16,className:17,classLiteralName:18,GENERICTYPE:19,relationStatement:20,LABEL:21,namespaceStatement:22,classStatement:23,memberStatement:24,annotationStatement:25,clickStatement:26,styleStatement:27,cssClassStatement:28,noteStatement:29,direction:30,acc_title:31,acc_title_value:32,acc_descr:33,acc_descr_value:34,acc_descr_multiline_value:35,namespaceIdentifier:36,STRUCT_START:37,classStatements:38,STRUCT_STOP:39,NAMESPACE:40,classIdentifier:41,STYLE_SEPARATOR:42,members:43,CLASS:44,ANNOTATION_START:45,ANNOTATION_END:46,MEMBER:47,SEPARATOR:48,relation:49,NOTE_FOR:50,noteText:51,NOTE:52,direction_tb:53,direction_bt:54,direction_rl:55,direction_lr:56,relationType:57,lineType:58,AGGREGATION:59,EXTENSION:60,COMPOSITION:61,DEPENDENCY:62,LOLLIPOP:63,LINE:64,DOTTED_LINE:65,CALLBACK:66,LINK:67,LINK_TARGET:68,CLICK:69,CALLBACK_NAME:70,CALLBACK_ARGS:71,HREF:72,STYLE:73,ALPHA:74,stylesOpt:75,CSSCLASS:76,style:77,COMMA:78,styleComponent:79,NUM:80,COLON:81,UNIT:82,SPACE:83,BRKT:84,PCT:85,commentToken:86,textToken:87,graphCodeTokens:88,textNoTagsToken:89,TAGSTART:90,TAGEND:91,"==":92,"--":93,DEFAULT:94,MINUS:95,keywords:96,UNICODE_TEXT:97,BQUOTE_STR:98,$accept:0,$end:1},terminals_:{2:"error",7:"CLASS_DIAGRAM",8:"NEWLINE",9:"EOF",12:"SQS",13:"STR",14:"SQE",19:"GENERICTYPE",21:"LABEL",31:"acc_title",32:"acc_title_value",33:"acc_descr",34:"acc_descr_value",35:"acc_descr_multiline_value",37:"STRUCT_START",39:"STRUCT_STOP",40:"NAMESPACE",42:"STYLE_SEPARATOR",44:"CLASS",45:"ANNOTATION_START",46:"ANNOTATION_END",47:"MEMBER",48:"SEPARATOR",50:"NOTE_FOR",52:"NOTE",53:"direction_tb",54:"direction_bt",55:"direction_rl",56:"direction_lr",59:"AGGREGATION",60:"EXTENSION",61:"COMPOSITION",62:"DEPENDENCY",63:"LOLLIPOP",64:"LINE",65:"DOTTED_LINE",66:"CALLBACK",67:"LINK",68:"LINK_TARGET",69:"CLICK",70:"CALLBACK_NAME",71:"CALLBACK_ARGS",72:"HREF",73:"STYLE",74:"ALPHA",76:"CSSCLASS",78:"COMMA",80:"NUM",81:"COLON",82:"UNIT",83:"SPACE",84:"BRKT",85:"PCT",88:"graphCodeTokens",90:"TAGSTART",91:"TAGEND",92:"==",93:"--",94:"DEFAULT",95:"MINUS",96:"keywords",97:"UNICODE_TEXT",98:"BQUOTE_STR"},productions_:[0,[3,1],[3,1],[4,1],[6,4],[5,1],[5,2],[5,3],[11,3],[15,1],[15,2],[17,1],[17,1],[17,2],[17,2],[17,2],[10,1],[10,2],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,2],[10,2],[10,1],[22,4],[22,5],[36,2],[38,1],[38,2],[38,3],[23,1],[23,3],[23,4],[23,6],[41,2],[41,3],[25,4],[43,1],[43,2],[24,1],[24,2],[24,1],[24,1],[20,3],[20,4],[20,4],[20,5],[29,3],[29,2],[30,1],[30,1],[30,1],[30,1],[49,3],[49,2],[49,2],[49,1],[57,1],[57,1],[57,1],[57,1],[57,1],[58,1],[58,1],[26,3],[26,4],[26,3],[26,4],[26,4],[26,5],[26,3],[26,4],[26,4],[26,5],[26,4],[26,5],[26,5],[26,6],[27,3],[28,3],[75,1],[75,3],[77,1],[77,2],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[86,1],[86,1],[87,1],[87,1],[87,1],[87,1],[87,1],[87,1],[87,1],[89,1],[89,1],[89,1],[89,1],[16,1],[16,1],[16,1],[16,1],[18,1],[51,1]],performAction:(0,i.K2)((function(t,e,s,n,i,u,r){var a=u.length-1;switch(i){case 8:this.$=u[a-1];break;case 9:case 11:case 12:this.$=u[a];break;case 10:case 13:case 89:this.$=u[a-1]+u[a];break;case 14:case 15:this.$=u[a-1]+"~"+u[a]+"~";break;case 16:n.addRelation(u[a]);break;case 17:u[a-1].title=n.cleanupLabel(u[a]),n.addRelation(u[a-1]);break;case 27:this.$=u[a].trim(),n.setAccTitle(this.$);break;case 28:case 29:this.$=u[a].trim(),n.setAccDescription(this.$);break;case 30:n.addClassesToNamespace(u[a-3],u[a-1]);break;case 31:n.addClassesToNamespace(u[a-4],u[a-1]);break;case 32:this.$=u[a],n.addNamespace(u[a]);break;case 33:case 43:case 86:this.$=[u[a]];break;case 34:this.$=[u[a-1]];break;case 35:u[a].unshift(u[a-2]),this.$=u[a];break;case 37:n.setCssClass(u[a-2],u[a]);break;case 38:n.addMembers(u[a-3],u[a-1]);break;case 39:n.setCssClass(u[a-5],u[a-3]),n.addMembers(u[a-5],u[a-1]);break;case 40:this.$=u[a],n.addClass(u[a]);break;case 41:this.$=u[a-1],n.addClass(u[a-1]),n.setClassLabel(u[a-1],u[a]);break;case 42:n.addAnnotation(u[a],u[a-2]);break;case 44:u[a].push(u[a-1]),this.$=u[a];break;case 45:case 47:case 48:break;case 46:n.addMember(u[a-1],n.cleanupLabel(u[a]));break;case 49:this.$={id1:u[a-2],id2:u[a],relation:u[a-1],relationTitle1:"none",relationTitle2:"none"};break;case 50:this.$={id1:u[a-3],id2:u[a],relation:u[a-1],relationTitle1:u[a-2],relationTitle2:"none"};break;case 51:this.$={id1:u[a-3],id2:u[a],relation:u[a-2],relationTitle1:"none",relationTitle2:u[a-1]};break;case 52:this.$={id1:u[a-4],id2:u[a],relation:u[a-2],relationTitle1:u[a-3],relationTitle2:u[a-1]};break;case 53:n.addNote(u[a],u[a-1]);break;case 54:n.addNote(u[a]);break;case 55:n.setDirection("TB");break;case 56:n.setDirection("BT");break;case 57:n.setDirection("RL");break;case 58:n.setDirection("LR");break;case 59:this.$={type1:u[a-2],type2:u[a],lineType:u[a-1]};break;case 60:this.$={type1:"none",type2:u[a],lineType:u[a-1]};break;case 61:this.$={type1:u[a-1],type2:"none",lineType:u[a]};break;case 62:this.$={type1:"none",type2:"none",lineType:u[a]};break;case 63:this.$=n.relationType.AGGREGATION;break;case 64:this.$=n.relationType.EXTENSION;break;case 65:this.$=n.relationType.COMPOSITION;break;case 66:this.$=n.relationType.DEPENDENCY;break;case 67:this.$=n.relationType.LOLLIPOP;break;case 68:this.$=n.lineType.LINE;break;case 69:this.$=n.lineType.DOTTED_LINE;break;case 70:case 76:this.$=u[a-2],n.setClickEvent(u[a-1],u[a]);break;case 71:case 77:this.$=u[a-3],n.setClickEvent(u[a-2],u[a-1]),n.setTooltip(u[a-2],u[a]);break;case 72:this.$=u[a-2],n.setLink(u[a-1],u[a]);break;case 73:this.$=u[a-3],n.setLink(u[a-2],u[a-1],u[a]);break;case 74:this.$=u[a-3],n.setLink(u[a-2],u[a-1]),n.setTooltip(u[a-2],u[a]);break;case 75:this.$=u[a-4],n.setLink(u[a-3],u[a-2],u[a]),n.setTooltip(u[a-3],u[a-1]);break;case 78:this.$=u[a-3],n.setClickEvent(u[a-2],u[a-1],u[a]);break;case 79:this.$=u[a-4],n.setClickEvent(u[a-3],u[a-2],u[a-1]),n.setTooltip(u[a-3],u[a]);break;case 80:this.$=u[a-3],n.setLink(u[a-2],u[a]);break;case 81:this.$=u[a-4],n.setLink(u[a-3],u[a-1],u[a]);break;case 82:this.$=u[a-4],n.setLink(u[a-3],u[a-1]),n.setTooltip(u[a-3],u[a]);break;case 83:this.$=u[a-5],n.setLink(u[a-4],u[a-2],u[a]),n.setTooltip(u[a-4],u[a-1]);break;case 84:this.$=u[a-2],n.setCssStyle(u[a-1],u[a]);break;case 85:n.setCssClass(u[a-1],u[a]);break;case 87:u[a-2].push(u[a]),this.$=u[a-2]}}),"anonymous"),table:[{3:1,4:2,5:3,6:4,7:[1,6],10:5,16:37,17:20,18:38,20:7,22:8,23:9,24:10,25:11,26:12,27:13,28:14,29:15,30:16,31:e,33:s,35:n,36:21,40:u,41:22,44:r,45:a,47:o,48:c,50:l,52:h,53:A,54:p,55:d,56:y,66:C,67:E,69:m,73:g,74:b,76:f,80:k,95:T,97:F,98:D},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,3]},t(B,[2,5],{8:[1,46]}),{8:[1,47]},t(_,[2,16],{21:[1,48]}),t(_,[2,18]),t(_,[2,19]),t(_,[2,20]),t(_,[2,21]),t(_,[2,22]),t(_,[2,23]),t(_,[2,24]),t(_,[2,25]),t(_,[2,26]),{32:[1,49]},{34:[1,50]},t(_,[2,29]),t(_,[2,45],{49:51,57:54,58:55,13:[1,52],21:[1,53],59:S,60:N,61:L,62:$,63:x,64:I,65:v}),{37:[1,63]},t(O,[2,36],{37:[1,65],42:[1,64]}),t(_,[2,47]),t(_,[2,48]),{16:66,74:b,80:k,95:T,97:F},{16:37,17:67,18:38,74:b,80:k,95:T,97:F,98:D},{16:37,17:68,18:38,74:b,80:k,95:T,97:F,98:D},{16:37,17:69,18:38,74:b,80:k,95:T,97:F,98:D},{74:[1,70]},{13:[1,71]},{16:37,17:72,18:38,74:b,80:k,95:T,97:F,98:D},{13:K,51:73},t(_,[2,55]),t(_,[2,56]),t(_,[2,57]),t(_,[2,58]),t(R,[2,11],{16:37,18:38,17:75,19:[1,76],74:b,80:k,95:T,97:F,98:D}),t(R,[2,12],{19:[1,77]}),{15:78,16:79,74:b,80:k,95:T,97:F},{16:37,17:80,18:38,74:b,80:k,95:T,97:F,98:D},t(w,[2,112]),t(w,[2,113]),t(w,[2,114]),t(w,[2,115]),t([1,8,9,12,13,19,21,37,39,42,59,60,61,62,63,64,65,70,72],[2,116]),t(B,[2,6],{10:5,20:7,22:8,23:9,24:10,25:11,26:12,27:13,28:14,29:15,30:16,17:20,36:21,41:22,16:37,18:38,5:81,31:e,33:s,35:n,40:u,44:r,45:a,47:o,48:c,50:l,52:h,53:A,54:p,55:d,56:y,66:C,67:E,69:m,73:g,74:b,76:f,80:k,95:T,97:F,98:D}),{5:82,10:5,16:37,17:20,18:38,20:7,22:8,23:9,24:10,25:11,26:12,27:13,28:14,29:15,30:16,31:e,33:s,35:n,36:21,40:u,41:22,44:r,45:a,47:o,48:c,50:l,52:h,53:A,54:p,55:d,56:y,66:C,67:E,69:m,73:g,74:b,76:f,80:k,95:T,97:F,98:D},t(_,[2,17]),t(_,[2,27]),t(_,[2,28]),{13:[1,84],16:37,17:83,18:38,74:b,80:k,95:T,97:F,98:D},{49:85,57:54,58:55,59:S,60:N,61:L,62:$,63:x,64:I,65:v},t(_,[2,46]),{58:86,64:I,65:v},t(P,[2,62],{57:87,59:S,60:N,61:L,62:$,63:x}),t(M,[2,63]),t(M,[2,64]),t(M,[2,65]),t(M,[2,66]),t(M,[2,67]),t(G,[2,68]),t(G,[2,69]),{8:[1,89],23:90,38:88,41:22,44:r},{16:91,74:b,80:k,95:T,97:F},{43:92,47:U},{46:[1,94]},{13:[1,95]},{13:[1,96]},{70:[1,97],72:[1,98]},{21:Y,73:z,74:Q,75:99,77:100,79:101,80:j,81:W,82:X,83:H,84:q,85:J},{74:[1,111]},{13:K,51:112},t(_,[2,54]),t(_,[2,117]),t(R,[2,13]),t(R,[2,14]),t(R,[2,15]),{37:[2,32]},{15:113,16:79,37:[2,9],74:b,80:k,95:T,97:F},t(V,[2,40],{11:114,12:[1,115]}),t(B,[2,7]),{9:[1,116]},t(Z,[2,49]),{16:37,17:117,18:38,74:b,80:k,95:T,97:F,98:D},{13:[1,119],16:37,17:118,18:38,74:b,80:k,95:T,97:F,98:D},t(P,[2,61],{57:120,59:S,60:N,61:L,62:$,63:x}),t(P,[2,60]),{39:[1,121]},{23:90,38:122,41:22,44:r},{8:[1,123],39:[2,33]},t(O,[2,37],{37:[1,124]}),{39:[1,125]},{39:[2,43],43:126,47:U},{16:37,17:127,18:38,74:b,80:k,95:T,97:F,98:D},t(_,[2,70],{13:[1,128]}),t(_,[2,72],{13:[1,130],68:[1,129]}),t(_,[2,76],{13:[1,131],71:[1,132]}),{13:[1,133]},t(_,[2,84],{78:[1,134]}),t(tt,[2,86],{79:135,21:Y,73:z,74:Q,80:j,81:W,82:X,83:H,84:q,85:J}),t(et,[2,88]),t(et,[2,90]),t(et,[2,91]),t(et,[2,92]),t(et,[2,93]),t(et,[2,94]),t(et,[2,95]),t(et,[2,96]),t(et,[2,97]),t(et,[2,98]),t(_,[2,85]),t(_,[2,53]),{37:[2,10]},t(V,[2,41]),{13:[1,136]},{1:[2,4]},t(Z,[2,51]),t(Z,[2,50]),{16:37,17:137,18:38,74:b,80:k,95:T,97:F,98:D},t(P,[2,59]),t(_,[2,30]),{39:[1,138]},{23:90,38:139,39:[2,34],41:22,44:r},{43:140,47:U},t(O,[2,38]),{39:[2,44]},t(_,[2,42]),t(_,[2,71]),t(_,[2,73]),t(_,[2,74],{68:[1,141]}),t(_,[2,77]),t(_,[2,78],{13:[1,142]}),t(_,[2,80],{13:[1,144],68:[1,143]}),{21:Y,73:z,74:Q,77:145,79:101,80:j,81:W,82:X,83:H,84:q,85:J},t(et,[2,89]),{14:[1,146]},t(Z,[2,52]),t(_,[2,31]),{39:[2,35]},{39:[1,147]},t(_,[2,75]),t(_,[2,79]),t(_,[2,81]),t(_,[2,82],{68:[1,148]}),t(tt,[2,87],{79:135,21:Y,73:z,74:Q,80:j,81:W,82:X,83:H,84:q,85:J}),t(V,[2,8]),t(O,[2,39]),t(_,[2,83])],defaultActions:{2:[2,1],3:[2,2],4:[2,3],78:[2,32],113:[2,10],116:[2,4],126:[2,44],139:[2,35]},parseError:(0,i.K2)((function(t,e){if(!e.recoverable){var s=new Error(t);throw s.hash=e,s}this.trace(t)}),"parseError"),parse:(0,i.K2)((function(t){var e=this,s=[0],n=[],u=[null],r=[],a=this.table,o="",c=0,l=0,h=0,A=r.slice.call(arguments,1),p=Object.create(this.lexer),d={yy:{}};for(var y in this.yy)Object.prototype.hasOwnProperty.call(this.yy,y)&&(d.yy[y]=this.yy[y]);p.setInput(t,d.yy),d.yy.lexer=p,d.yy.parser=this,void 0===p.yylloc&&(p.yylloc={});var C=p.yylloc;r.push(C);var E=p.options&&p.options.ranges;function m(){var t;return"number"!=typeof(t=n.pop()||p.lex()||1)&&(t instanceof Array&&(t=(n=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof d.yy.parseError?this.parseError=d.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,i.K2)((function(t){s.length=s.length-2*t,u.length=u.length-t,r.length=r.length-t}),"popStack"),(0,i.K2)(m,"lex");for(var g,b,f,k,T,F,D,B,_,S={};;){if(f=s[s.length-1],this.defaultActions[f]?k=this.defaultActions[f]:(null==g&&(g=m()),k=a[f]&&a[f][g]),void 0===k||!k.length||!k[0]){var N="";for(F in _=[],a[f])this.terminals_[F]&&F>2&&_.push("'"+this.terminals_[F]+"'");N=p.showPosition?"Parse error on line "+(c+1)+":\n"+p.showPosition()+"\nExpecting "+_.join(", ")+", got '"+(this.terminals_[g]||g)+"'":"Parse error on line "+(c+1)+": Unexpected "+(1==g?"end of input":"'"+(this.terminals_[g]||g)+"'"),this.parseError(N,{text:p.match,token:this.terminals_[g]||g,line:p.yylineno,loc:C,expected:_})}if(k[0]instanceof Array&&k.length>1)throw new Error("Parse Error: multiple actions possible at state: "+f+", token: "+g);switch(k[0]){case 1:s.push(g),u.push(p.yytext),r.push(p.yylloc),s.push(k[1]),g=null,b?(g=b,b=null):(l=p.yyleng,o=p.yytext,c=p.yylineno,C=p.yylloc,h>0&&h--);break;case 2:if(D=this.productions_[k[1]][1],S.$=u[u.length-D],S._$={first_line:r[r.length-(D||1)].first_line,last_line:r[r.length-1].last_line,first_column:r[r.length-(D||1)].first_column,last_column:r[r.length-1].last_column},E&&(S._$.range=[r[r.length-(D||1)].range[0],r[r.length-1].range[1]]),void 0!==(T=this.performAction.apply(S,[o,l,c,d.yy,k[1],u,r].concat(A))))return T;D&&(s=s.slice(0,-1*D*2),u=u.slice(0,-1*D),r=r.slice(0,-1*D)),s.push(this.productions_[k[1]][0]),u.push(S.$),r.push(S._$),B=a[s[s.length-2]][s[s.length-1]],s.push(B);break;case 3:return!0}}return!0}),"parse")},nt=function(){return{EOF:1,parseError:(0,i.K2)((function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)}),"parseError"),setInput:(0,i.K2)((function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this}),"setInput"),input:(0,i.K2)((function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t}),"input"),unput:(0,i.K2)((function(t){var e=t.length,s=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var n=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),s.length-1&&(this.yylineno-=s.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:s?(s.length===n.length?this.yylloc.first_column:0)+n[n.length-s.length].length-s[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this}),"unput"),more:(0,i.K2)((function(){return this._more=!0,this}),"more"),reject:(0,i.K2)((function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"reject"),less:(0,i.K2)((function(t){this.unput(this.match.slice(t))}),"less"),pastInput:(0,i.K2)((function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")}),"pastInput"),upcomingInput:(0,i.K2)((function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")}),"upcomingInput"),showPosition:(0,i.K2)((function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"}),"showPosition"),test_match:(0,i.K2)((function(t,e){var s,n,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),(n=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=n.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:n?n[n.length-1].length-n[n.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],s=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),s)return s;if(this._backtrack){for(var u in i)this[u]=i[u];return!1}return!1}),"test_match"),next:(0,i.K2)((function(){if(this.done)return this.EOF;var t,e,s,n;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),u=0;ue[0].length)){if(e=s,n=u,this.options.backtrack_lexer){if(!1!==(t=this.test_match(s,i[u])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,i[n]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"next"),lex:(0,i.K2)((function(){var t=this.next();return t||this.lex()}),"lex"),begin:(0,i.K2)((function(t){this.conditionStack.push(t)}),"begin"),popState:(0,i.K2)((function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]}),"popState"),_currentRules:(0,i.K2)((function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules}),"_currentRules"),topState:(0,i.K2)((function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"}),"topState"),pushState:(0,i.K2)((function(t){this.begin(t)}),"pushState"),stateStackSize:(0,i.K2)((function(){return this.conditionStack.length}),"stateStackSize"),options:{},performAction:(0,i.K2)((function(t,e,s,n){switch(s){case 0:return 53;case 1:return 54;case 2:return 55;case 3:return 56;case 4:case 5:case 14:case 30:case 35:case 39:case 46:break;case 6:return this.begin("acc_title"),31;case 7:return this.popState(),"acc_title_value";case 8:return this.begin("acc_descr"),33;case 9:return this.popState(),"acc_descr_value";case 10:this.begin("acc_descr_multiline");break;case 11:case 19:case 22:case 24:case 57:case 60:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:case 34:return 8;case 15:case 16:return 7;case 17:case 36:case 44:return"EDGE_STATE";case 18:this.begin("callback_name");break;case 20:this.popState(),this.begin("callback_args");break;case 21:return 70;case 23:return 71;case 25:return"STR";case 26:this.begin("string");break;case 27:return 73;case 28:return this.begin("namespace"),40;case 29:case 38:return this.popState(),8;case 31:return this.begin("namespace-body"),37;case 32:case 42:return this.popState(),39;case 33:case 43:return"EOF_IN_STRUCT";case 37:return this.begin("class"),44;case 40:return this.popState(),this.popState(),39;case 41:return this.begin("class-body"),37;case 45:return"OPEN_IN_STRUCT";case 47:return"MEMBER";case 48:return 76;case 49:return 66;case 50:return 67;case 51:return 69;case 52:return 50;case 53:return 52;case 54:return 45;case 55:return 46;case 56:return 72;case 58:return"GENERICTYPE";case 59:this.begin("generic");break;case 61:return"BQUOTE_STR";case 62:this.begin("bqstring");break;case 63:case 64:case 65:case 66:return 68;case 67:case 68:return 60;case 69:case 70:return 62;case 71:return 61;case 72:return 59;case 73:return 63;case 74:return 64;case 75:return 65;case 76:return 21;case 77:return 42;case 78:return 95;case 79:return"DOT";case 80:return"PLUS";case 81:return 81;case 82:return 78;case 83:case 84:return 84;case 85:return 85;case 86:case 87:return"EQUALS";case 88:return 74;case 89:return 12;case 90:return 14;case 91:return"PUNCTUATION";case 92:return 80;case 93:return 97;case 94:case 95:return 83;case 96:return 9}}),"anonymous"),rules:[/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:classDiagram-v2\b)/,/^(?:classDiagram\b)/,/^(?:\[\*\])/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:["])/,/^(?:[^"]*)/,/^(?:["])/,/^(?:style\b)/,/^(?:namespace\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[{])/,/^(?:[}])/,/^(?:$)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:\[\*\])/,/^(?:class\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[}])/,/^(?:[{])/,/^(?:[}])/,/^(?:$)/,/^(?:\[\*\])/,/^(?:[{])/,/^(?:[\n])/,/^(?:[^{}\n]*)/,/^(?:cssClass\b)/,/^(?:callback\b)/,/^(?:link\b)/,/^(?:click\b)/,/^(?:note for\b)/,/^(?:note\b)/,/^(?:<<)/,/^(?:>>)/,/^(?:href\b)/,/^(?:[~])/,/^(?:[^~]*)/,/^(?:~)/,/^(?:[`])/,/^(?:[^`]+)/,/^(?:[`])/,/^(?:_self\b)/,/^(?:_blank\b)/,/^(?:_parent\b)/,/^(?:_top\b)/,/^(?:\s*<\|)/,/^(?:\s*\|>)/,/^(?:\s*>)/,/^(?:\s*<)/,/^(?:\s*\*)/,/^(?:\s*o\b)/,/^(?:\s*\(\))/,/^(?:--)/,/^(?:\.\.)/,/^(?::{1}[^:\n;]+)/,/^(?::{3})/,/^(?:-)/,/^(?:\.)/,/^(?:\+)/,/^(?::)/,/^(?:,)/,/^(?:#)/,/^(?:#)/,/^(?:%)/,/^(?:=)/,/^(?:=)/,/^(?:\w+)/,/^(?:\[)/,/^(?:\])/,/^(?:[!"#$%&'*+,-.`?\\/])/,/^(?:[0-9]+)/,/^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/,/^(?:\s)/,/^(?:\s)/,/^(?:$)/],conditions:{"namespace-body":{rules:[26,32,33,34,35,36,37,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},namespace:{rules:[26,28,29,30,31,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},"class-body":{rules:[26,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},class:{rules:[26,38,39,40,41,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},acc_descr_multiline:{rules:[11,12,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},acc_descr:{rules:[9,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},acc_title:{rules:[7,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},callback_args:{rules:[22,23,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},callback_name:{rules:[19,20,21,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},href:{rules:[26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},struct:{rules:[26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},generic:{rules:[26,48,49,50,51,52,53,54,55,56,57,58,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},bqstring:{rules:[26,48,49,50,51,52,53,54,55,56,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},string:{rules:[24,25,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,8,10,13,14,15,16,17,18,26,27,28,37,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96],inclusive:!0}}}}();function it(){this.yy={}}return st.lexer=nt,(0,i.K2)(it,"Parser"),it.prototype=st,st.Parser=it,new it}();r.parser=r;var a=r,o=["#","+","~","-",""],c=class{static{(0,i.K2)(this,"ClassMember")}constructor(t,e){this.memberType=e,this.visibility="",this.classifier="";const s=(0,i.jZ)(t,(0,i.D7)());this.parseMember(s)}getDisplayDetails(){let t=this.visibility+(0,i.QO)(this.id);"method"===this.memberType&&(t+=`(${(0,i.QO)(this.parameters.trim())})`,this.returnType&&(t+=" : "+(0,i.QO)(this.returnType))),t=t.trim();return{displayText:t,cssStyle:this.parseClassifier()}}parseMember(t){let e="";if("method"===this.memberType){const s=/([#+~-])?(.+)\((.*)\)([\s$*])?(.*)([$*])?/.exec(t);if(s){const t=s[1]?s[1].trim():"";if(o.includes(t)&&(this.visibility=t),this.id=s[2].trim(),this.parameters=s[3]?s[3].trim():"",e=s[4]?s[4].trim():"",this.returnType=s[5]?s[5].trim():"",""===e){const t=this.returnType.substring(this.returnType.length-1);/[$*]/.exec(t)&&(e=t,this.returnType=this.returnType.substring(0,this.returnType.length-1))}}}else{const s=t.length,n=t.substring(0,1),i=t.substring(s-1);o.includes(n)&&(this.visibility=n),/[$*]/.exec(i)&&(e=i),this.id=t.substring(""===this.visibility?0:1,""===e?s:s-1)}this.classifier=e}parseClassifier(){switch(this.classifier){case"*":return"font-style:italic;";case"$":return"text-decoration:underline;";default:return""}}},l="classId-",h=[],A=new Map,p=[],d=0,y=new Map,C=0,E=[],m=(0,i.K2)((t=>i.Y2.sanitizeText(t,(0,i.D7)())),"sanitizeText"),g=(0,i.K2)((function(t){const e=i.Y2.sanitizeText(t,(0,i.D7)());let s="",n=e;if(e.indexOf("~")>0){const t=e.split("~");n=m(t[0]),s=m(t[1])}return{className:n,type:s}}),"splitClassNameAndType"),b=(0,i.K2)((function(t,e){const s=i.Y2.sanitizeText(t,(0,i.D7)());e&&(e=m(e));const{className:n}=g(s);A.get(n).label=e}),"setClassLabel"),f=(0,i.K2)((function(t){const e=i.Y2.sanitizeText(t,(0,i.D7)()),{className:s,type:n}=g(e);if(A.has(s))return;const u=i.Y2.sanitizeText(s,(0,i.D7)());A.set(u,{id:u,type:n,label:u,cssClasses:[],methods:[],members:[],annotations:[],styles:[],domId:l+u+"-"+d}),d++}),"addClass"),k=(0,i.K2)((function(t){const e=i.Y2.sanitizeText(t,(0,i.D7)());if(A.has(e))return A.get(e).domId;throw new Error("Class not found: "+e)}),"lookUpDomId"),T=(0,i.K2)((function(){h=[],A=new Map,p=[],(E=[]).push(G),y=new Map,C=0,U="TB",(0,i.IU)()}),"clear"),F=(0,i.K2)((function(t){return A.get(t)}),"getClass"),D=(0,i.K2)((function(){return A}),"getClasses"),B=(0,i.K2)((function(){return h}),"getRelations"),_=(0,i.K2)((function(){return p}),"getNotes"),S=(0,i.K2)((function(t){i.Rm.debug("Adding relation: "+JSON.stringify(t)),f(t.id1),f(t.id2),t.id1=g(t.id1).className,t.id2=g(t.id2).className,t.relationTitle1=i.Y2.sanitizeText(t.relationTitle1.trim(),(0,i.D7)()),t.relationTitle2=i.Y2.sanitizeText(t.relationTitle2.trim(),(0,i.D7)()),h.push(t)}),"addRelation"),N=(0,i.K2)((function(t,e){const s=g(t).className;A.get(s).annotations.push(e)}),"addAnnotation"),L=(0,i.K2)((function(t,e){f(t);const s=g(t).className,n=A.get(s);if("string"==typeof e){const t=e.trim();t.startsWith("<<")&&t.endsWith(">>")?n.annotations.push(m(t.substring(2,t.length-2))):t.indexOf(")")>0?n.methods.push(new c(t,"method")):t&&n.members.push(new c(t,"attribute"))}}),"addMember"),$=(0,i.K2)((function(t,e){Array.isArray(e)&&(e.reverse(),e.forEach((e=>L(t,e))))}),"addMembers"),x=(0,i.K2)((function(t,e){const s={id:`note${p.length}`,class:e,text:t};p.push(s)}),"addNote"),I=(0,i.K2)((function(t){return t.startsWith(":")&&(t=t.substring(1)),m(t.trim())}),"cleanupLabel"),v=(0,i.K2)((function(t,e){t.split(",").forEach((function(t){let s=t;/\d/.exec(t[0])&&(s=l+s);const n=A.get(s);n&&n.cssClasses.push(e)}))}),"setCssClass"),O=(0,i.K2)((function(t,e){t.split(",").forEach((function(t){void 0!==e&&(A.get(t).tooltip=m(e))}))}),"setTooltip"),K=(0,i.K2)((function(t,e){return e&&y.has(e)?y.get(e).classes.get(t).tooltip:A.get(t).tooltip}),"getTooltip"),R=(0,i.K2)((function(t,e,s){const u=(0,i.D7)();t.split(",").forEach((function(t){let i=t;/\d/.exec(t[0])&&(i=l+i);const r=A.get(i);r&&(r.link=n._K.formatUrl(e,u),"sandbox"===u.securityLevel?r.linkTarget="_top":r.linkTarget="string"==typeof s?m(s):"_blank")})),v(t,"clickable")}),"setLink"),w=(0,i.K2)((function(t,e,s){t.split(",").forEach((function(t){P(t,e,s),A.get(t).haveCallback=!0})),v(t,"clickable")}),"setClickEvent"),P=(0,i.K2)((function(t,e,s){const u=i.Y2.sanitizeText(t,(0,i.D7)());if("loose"!==(0,i.D7)().securityLevel)return;if(void 0===e)return;const r=u;if(A.has(r)){const t=k(r);let i=[];if("string"==typeof s){i=s.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let t=0;t")),t.classed("hover",!0)})).on("mouseout",(function(){e.transition().duration(500).style("opacity",0);(0,u.Ltv)(this).classed("hover",!1)}))}),"setupToolTips");E.push(G);var U="TB",Y=(0,i.K2)((()=>U),"getDirection"),z=(0,i.K2)((t=>{U=t}),"setDirection"),Q=(0,i.K2)((function(t){y.has(t)||(y.set(t,{id:t,classes:new Map,children:{},domId:l+t+"-"+C}),C++)}),"addNamespace"),j=(0,i.K2)((function(t){return y.get(t)}),"getNamespace"),W=(0,i.K2)((function(){return y}),"getNamespaces"),X=(0,i.K2)((function(t,e){if(y.has(t))for(const s of e){const{className:e}=g(s);A.get(e).parent=t,y.get(t).classes.set(e,A.get(e))}}),"addClassesToNamespace"),H=(0,i.K2)((function(t,e){const s=A.get(t);if(e&&s)for(const n of e)n.includes(",")?s.styles.push(...n.split(",")):s.styles.push(n)}),"setCssStyle"),q={setAccTitle:i.SV,getAccTitle:i.iN,getAccDescription:i.m7,setAccDescription:i.EI,getConfig:(0,i.K2)((()=>(0,i.D7)().class),"getConfig"),addClass:f,bindFunctions:M,clear:T,getClass:F,getClasses:D,getNotes:_,addAnnotation:N,addNote:x,getRelations:B,addRelation:S,getDirection:Y,setDirection:z,addMember:L,addMembers:$,cleanupLabel:I,lineType:{LINE:0,DOTTED_LINE:1},relationType:{AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3,LOLLIPOP:4},setClickEvent:w,setCssClass:v,setLink:R,getTooltip:K,setTooltip:O,lookUpDomId:k,setDiagramTitle:i.ke,getDiagramTitle:i.ab,setClassLabel:b,addNamespace:Q,addClassesToNamespace:X,getNamespace:j,getNamespaces:W,setCssStyle:H},J=(0,i.K2)((t=>`g.classGroup text {\n fill: ${t.nodeBorder||t.classText};\n stroke: none;\n font-family: ${t.fontFamily};\n font-size: 10px;\n\n .title {\n font-weight: bolder;\n }\n\n}\n\n.nodeLabel, .edgeLabel {\n color: ${t.classText};\n}\n.edgeLabel .label rect {\n fill: ${t.mainBkg};\n}\n.label text {\n fill: ${t.classText};\n}\n.edgeLabel .label span {\n background: ${t.mainBkg};\n}\n\n.classTitle {\n font-weight: bolder;\n}\n.node rect,\n .node circle,\n .node ellipse,\n .node polygon,\n .node path {\n fill: ${t.mainBkg};\n stroke: ${t.nodeBorder};\n stroke-width: 1px;\n }\n\n\n.divider {\n stroke: ${t.nodeBorder};\n stroke-width: 1;\n}\n\ng.clickable {\n cursor: pointer;\n}\n\ng.classGroup rect {\n fill: ${t.mainBkg};\n stroke: ${t.nodeBorder};\n}\n\ng.classGroup line {\n stroke: ${t.nodeBorder};\n stroke-width: 1;\n}\n\n.classLabel .box {\n stroke: none;\n stroke-width: 0;\n fill: ${t.mainBkg};\n opacity: 0.5;\n}\n\n.classLabel .label {\n fill: ${t.nodeBorder};\n font-size: 10px;\n}\n\n.relation {\n stroke: ${t.lineColor};\n stroke-width: 1;\n fill: none;\n}\n\n.dashed-line{\n stroke-dasharray: 3;\n}\n\n.dotted-line{\n stroke-dasharray: 1 2;\n}\n\n#compositionStart, .composition {\n fill: ${t.lineColor} !important;\n stroke: ${t.lineColor} !important;\n stroke-width: 1;\n}\n\n#compositionEnd, .composition {\n fill: ${t.lineColor} !important;\n stroke: ${t.lineColor} !important;\n stroke-width: 1;\n}\n\n#dependencyStart, .dependency {\n fill: ${t.lineColor} !important;\n stroke: ${t.lineColor} !important;\n stroke-width: 1;\n}\n\n#dependencyStart, .dependency {\n fill: ${t.lineColor} !important;\n stroke: ${t.lineColor} !important;\n stroke-width: 1;\n}\n\n#extensionStart, .extension {\n fill: transparent !important;\n stroke: ${t.lineColor} !important;\n stroke-width: 1;\n}\n\n#extensionEnd, .extension {\n fill: transparent !important;\n stroke: ${t.lineColor} !important;\n stroke-width: 1;\n}\n\n#aggregationStart, .aggregation {\n fill: transparent !important;\n stroke: ${t.lineColor} !important;\n stroke-width: 1;\n}\n\n#aggregationEnd, .aggregation {\n fill: transparent !important;\n stroke: ${t.lineColor} !important;\n stroke-width: 1;\n}\n\n#lollipopStart, .lollipop {\n fill: ${t.mainBkg} !important;\n stroke: ${t.lineColor} !important;\n stroke-width: 1;\n}\n\n#lollipopEnd, .lollipop {\n fill: ${t.mainBkg} !important;\n stroke: ${t.lineColor} !important;\n stroke-width: 1;\n}\n\n.edgeTerminals {\n font-size: 11px;\n line-height: initial;\n}\n\n.classTitleText {\n text-anchor: middle;\n font-size: 18px;\n fill: ${t.textColor};\n}\n`),"getStyles")}}]); \ No newline at end of file diff --git a/assets/js/2237.df05d168.js b/assets/js/2237.df05d168.js new file mode 100644 index 00000000..b92517cb --- /dev/null +++ b/assets/js/2237.df05d168.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkbeacon_docs=self.webpackChunkbeacon_docs||[]).push([[2237],{23363:(e,t,n)=>{n.d(t,{A:()=>r});n(96540);var o=n(34164),i=n(21312),s=n(51107),a=n(74848);function r(e){let{className:t}=e;return(0,a.jsx)("main",{className:(0,o.A)("container margin-vert--xl",t),children:(0,a.jsx)("div",{className:"row",children:(0,a.jsxs)("div",{className:"col col--6 col--offset-3",children:[(0,a.jsx)(s.A,{as:"h1",className:"hero__title",children:(0,a.jsx)(i.A,{id:"theme.NotFound.title",description:"The title of the 404 page",children:"Page Not Found"})}),(0,a.jsx)("p",{children:(0,a.jsx)(i.A,{id:"theme.NotFound.p1",description:"The first paragraph of the 404 page",children:"We could not find what you were looking for."})}),(0,a.jsx)("p",{children:(0,a.jsx)(i.A,{id:"theme.NotFound.p2",description:"The 2nd paragraph of the 404 page",children:"Please contact the owner of the site that linked you to the original URL and let them know their link is broken."})})]})})})}},82237:(e,t,n)=>{n.r(t),n.d(t,{default:()=>c});n(96540);var o=n(21312),i=n(1003),s=n(27853),a=n(23363),r=n(74848);function c(){const e=(0,o.T)({id:"theme.NotFound.title",message:"Page Not Found"});return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(i.be,{title:e}),(0,r.jsx)(s.A,{children:(0,r.jsx)(a.A,{})})]})}}}]); \ No newline at end of file diff --git a/assets/js/22dd74f7.e13bcae4.js b/assets/js/22dd74f7.e13bcae4.js new file mode 100644 index 00000000..5329f423 --- /dev/null +++ b/assets/js/22dd74f7.e13bcae4.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkbeacon_docs=self.webpackChunkbeacon_docs||[]).push([[1567],{55226:e=>{e.exports=JSON.parse('{"version":{"pluginId":"default","version":"current","label":"Next","banner":null,"badge":false,"noIndex":false,"className":"docs-version-current","isLast":true,"docsSidebars":{"docs":[{"type":"category","label":"Introduction","items":[{"type":"link","label":"Getting Started","href":"/","docId":"introduction/introduction","unlisted":false},{"type":"link","label":"Contributing","href":"/contributing","docId":"introduction/contributing","unlisted":false},{"type":"link","label":"Wallets","href":"/supported-wallets","docId":"introduction/wallets","unlisted":false},{"type":"link","label":"dApps","href":"/dapps","docId":"introduction/dapps","unlisted":false},{"type":"link","label":"Security Audits","href":"/security-audits","docId":"introduction/security-audit","unlisted":false}],"collapsed":true,"collapsible":true},{"type":"category","label":"Getting Started","items":[{"type":"link","label":"Installation","href":"/getting-started/installation","docId":"getting-started/installation","unlisted":false},{"type":"link","label":"First dApp","href":"/getting-started/first-dapp","docId":"getting-started/first-dapp","unlisted":false},{"type":"link","label":"Best Practices","href":"/getting-started/best-practices","docId":"getting-started/best-practices","unlisted":false},{"type":"link","label":"Simple Example","href":"/getting-started/simple-example","docId":"getting-started/simple-example","unlisted":false},{"type":"link","label":"Advanced Example","href":"/getting-started/advanced-example","docId":"getting-started/advanced-example","unlisted":false},{"type":"link","label":"Subscribe to ACTIVE_ACCOUNT_SET Advanced Example","href":"/getting-started/subscribe-to-active-account","docId":"getting-started/subscribe-to-active-account","unlisted":false},{"type":"link","label":"High Performance","href":"/getting-started/high-performance","docId":"getting-started/high-performance","unlisted":false}],"collapsed":false,"collapsible":true},{"type":"category","label":"Guides","items":[{"type":"link","label":"Active Account","href":"/guides/active-account","docId":"guides/active-account","unlisted":false},{"type":"link","label":"Disconnecting from a Wallet","href":"/guides/disconnecting-a-wallet","docId":"guides/disconnecting-a-wallet","unlisted":false},{"type":"link","label":"Network","href":"/guides/network","docId":"guides/network","unlisted":false},{"type":"link","label":"Request Permissions","href":"/guides/request-permissions","docId":"guides/request-permissions","unlisted":false},{"type":"link","label":"Sign Payload","href":"/guides/sign-payload","docId":"guides/sign-payload","unlisted":false},{"type":"link","label":"Broadcast Request","href":"/guides/broadcast-request","docId":"guides/broadcast-request","unlisted":false},{"type":"link","label":"Simple Contract Call","href":"/guides/simple-contract-call","docId":"guides/simple-contract-call","unlisted":false},{"type":"link","label":"FA1.2 Transfer","href":"/guides/fa1.2-transfer","docId":"guides/fa1.2-transfer","unlisted":false},{"type":"link","label":"FA2 Transfer","href":"/guides/fa2-transfer","docId":"guides/fa2-transfer","unlisted":false},{"type":"link","label":"Handling Contract Errors","href":"/guides/contract-error-handling","docId":"guides/contract-error-handling","unlisted":false},{"type":"link","label":"Subscribe To Event","href":"/guides/subscribe-to-event","docId":"guides/subscribe-to-event","unlisted":false},{"type":"link","label":"WalletConnect events","href":"/guides/WC-events","docId":"guides/WC-events","unlisted":false},{"type":"link","label":"Standalone Delegation","href":"/guides/standalone-delegation","docId":"guides/standalone-delegation","unlisted":false},{"type":"link","label":"Performance Metrics","href":"/guides/metrics","docId":"guides/metrics","unlisted":false},{"type":"link","label":"Bug Reporting","href":"/guides/bug-report","docId":"guides/bug-report","unlisted":false},{"type":"link","label":"Migration Guide: Updating to Event Subscription","href":"/guides/migration-guide","docId":"guides/migration-guide","unlisted":false}],"collapsed":true,"collapsible":true},{"type":"category","label":"Advanced","items":[{"type":"link","label":"UI Elements","href":"/advanced/ui-elements","docId":"advanced/ui-elements","unlisted":false},{"type":"link","label":"Custom Block Explorer","href":"/advanced/custom-block-explorer","docId":"advanced/custom-block-explorer","unlisted":false},{"type":"link","label":"Different Beacon Node","href":"/advanced/different-node","docId":"advanced/different-node","unlisted":false},{"type":"link","label":"Debug Wallet","href":"/advanced/debug-wallet","docId":"advanced/debug-wallet","unlisted":false},{"type":"link","label":"Client Info","href":"/advanced/sdk-info","docId":"advanced/sdk-info","unlisted":false},{"type":"category","label":"Flows","items":[{"type":"link","label":"Connection","href":"/advanced/flows/connection","docId":"advanced/flows/connection","unlisted":false},{"type":"link","label":"Extension Communication","href":"/advanced/flows/extension-communication","docId":"advanced/flows/extension-communication","unlisted":false},{"type":"link","label":"Ledger","href":"/advanced/flows/ledger-extension","docId":"advanced/flows/ledger-extension","unlisted":false},{"type":"link","label":"Local Mnemonic","href":"/advanced/flows/local-mnemonic","docId":"advanced/flows/local-mnemonic","unlisted":false},{"type":"link","label":"P2P Direct","href":"/advanced/flows/p2p-direct","docId":"advanced/flows/p2p-direct","unlisted":false},{"type":"link","label":"P2P Extension","href":"/advanced/flows/p2p-extension","docId":"advanced/flows/p2p-extension","unlisted":false}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Messages","items":[{"type":"link","label":"Introduction","href":"/blockchains/introduction","docId":"blockchains/introduction","unlisted":false},{"type":"link","label":"Usage","href":"/blockchains/usage","docId":"blockchains/usage","unlisted":false},{"type":"category","label":"Blockchains","items":[{"type":"link","label":"Substrate","href":"/blockchains/substrate","docId":"blockchains/blockchain-substrate","unlisted":false},{"type":"link","label":"Tezos","href":"/blockchains/tezos","docId":"blockchains/blockchain-tezos","unlisted":false},{"type":"link","label":"Tezos Sapling","href":"/blockchains/tezos-sapling","docId":"blockchains/blockchain-tezos-sapling","unlisted":false}],"collapsed":false,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Post Mortem","items":[{"type":"link","label":"Postmortem Incident 1","href":"/post-mortem","docId":"post-mortem","unlisted":false},{"type":"link","label":"Postmortem Incident 2","href":"/post-mortem-2","docId":"post-mortem-2","unlisted":false}],"collapsed":true,"collapsible":true},{"type":"link","label":"Changelog","href":"https://github.com/airgap-it/beacon-sdk/releases"},{"type":"link","label":"TypeDoc Reference","href":"https://typedocs.walletbeacon.io"}],"wallet":[{"type":"category","label":"Getting Started","items":[{"type":"category","label":"Web","items":[{"type":"link","label":"Getting Started","href":"/wallet/getting-started/web/getting-started","docId":"wallet/getting-started/web/getting-started","unlisted":false}],"collapsed":true,"collapsible":true},{"type":"category","label":"Android","items":[{"type":"link","label":"Installation","href":"/wallet/getting-started/android/installation","docId":"wallet/getting-started/android/installation","unlisted":false},{"type":"link","label":"Connect to a dApp","href":"/wallet/getting-started/android/connect-to-dapp","docId":"wallet/getting-started/android/connect-to-dapp","unlisted":false},{"type":"link","label":"Disconnect from a dApp","href":"/wallet/getting-started/android/disconnect-from-dapp","docId":"wallet/getting-started/android/disconnect-from-dapp","unlisted":false}],"collapsed":true,"collapsible":true},{"type":"category","label":"iOS","items":[{"type":"link","label":"Installation","href":"/wallet/getting-started/ios/installation","docId":"wallet/getting-started/ios/installation","unlisted":false},{"type":"link","label":"Connect to a dApp","href":"/wallet/getting-started/ios/connect-to-dapp","docId":"wallet/getting-started/ios/connect-to-dapp","unlisted":false},{"type":"link","label":"Disconnect from a dApp","href":"/wallet/getting-started/ios/disconnect-from-dapp","docId":"wallet/getting-started/ios/disconnect-from-dapp","unlisted":false}],"collapsed":true,"collapsible":true}],"collapsed":false,"collapsible":true},{"type":"category","label":"Advanced","items":[{"type":"category","label":"Android","items":[{"type":"link","label":"Configuration","href":"/wallet/advanced/android/configuration","docId":"wallet/advanced/android/configuration","unlisted":false},{"type":"link","label":"Coroutines Alternatives","href":"/wallet/advanced/android/coroutines-alternatives","docId":"wallet/advanced/android/coroutines-alternatives","unlisted":false}],"collapsed":true,"collapsible":true},{"type":"category","label":"iOS","items":[{"type":"link","label":"Configuration","href":"/wallet/advanced/ios/configuration","docId":"wallet/advanced/ios/configuration","unlisted":false}],"collapsed":true,"collapsible":true}],"collapsed":false,"collapsible":true},{"type":"category","label":"Messages","items":[{"type":"link","label":"Substrate","href":"/wallet/messages/substrate","docId":"wallet/messages/substrate","unlisted":false},{"type":"link","label":"Tezos","href":"/wallet/messages/tezos","docId":"wallet/messages/tezos","unlisted":false}],"collapsed":false,"collapsible":true},{"type":"link","label":"Security","href":"/wallet/security","docId":"wallet/security","unlisted":false}]},"docs":{"advanced/custom-block-explorer":{"id":"advanced/custom-block-explorer","title":"Custom Block Explorer","description":"The Custom Block Explorer feature in Beacon SDK allows developers to integrate a block explorer of their choice into their dApp.","sidebar":"docs"},"advanced/debug-wallet":{"id":"advanced/debug-wallet","title":"Debug Wallet","description":"This wallet is intended for developers to debug their dApps.","sidebar":"docs"},"advanced/different-node":{"id":"advanced/different-node","title":"Different Beacon Node","description":"You can configure the dApp or Wallet to connect to a different beacon node.","sidebar":"docs"},"advanced/flows/connection":{"id":"advanced/flows/connection","title":"Connection","description":"{t.d(n,{Zp:()=>Fn});var r=t(8058),o=t(28894),i=0;const u=function(e){var n=++i;return(0,o.A)(e)+n};var s=t(48585),a=t(39142),d=t(34098),c=t(74722),f=Math.ceil,h=Math.max;const v=function(e,n,t,r){for(var o=-1,i=h(f((n-e)/(t||1)),0),u=Array(i);i--;)u[r?i:++o]=e,e+=t;return u};var g=t(6832),l=t(74342);const A=function(e){return function(n,t,r){return r&&"number"!=typeof r&&(0,g.A)(n,t,r)&&(t=r=void 0),n=(0,l.A)(n),void 0===t?(t=n,n=0):t=(0,l.A)(t),r=void 0===r?n0;--s)if(r=n[s].dequeue()){o=o.concat(E(e,n,t,r,!0));break}}return o}(t.graph,t.buckets,t.zeroIdx);return d.A(c.A(o,(function(n){return e.outEdges(n.v,n.w)})))}function E(e,n,t,o,i){var u=i?[]:void 0;return r.A(e.inEdges(o.v),(function(r){var o=e.edge(r),s=e.node(r.v);i&&u.push({v:r.v,w:r.w}),s.out-=o,x(n,t,s)})),r.A(e.outEdges(o.v),(function(r){var o=e.edge(r),i=r.w,u=e.node(i);u.in-=o,x(n,t,u)})),e.removeNode(o.v),u}function x(e,n,t){t.out?t.in?e[t.out-t.in+n].enqueue(t):e[e.length-1].enqueue(t):e[0].enqueue(t)}function k(e){var n="greedy"===e.graph().acyclicer?y(e,function(e){return function(n){return e.edge(n).weight}}(e)):function(e){var n=[],t={},o={};function i(u){s.A(o,u)||(o[u]=!0,t[u]=!0,r.A(e.outEdges(u),(function(e){s.A(t,e.w)?n.push(e):i(e.w)})),delete t[u])}return r.A(e.nodes(),i),n}(e);r.A(n,(function(n){var t=e.edge(n);e.removeEdge(n),t.forwardName=n.name,t.reversed=!0,e.setEdge(n.w,n.v,t,u("rev"))}))}var N=t(42837),C=t(99354),I=t(16807);const L=function(e,n){return(0,C.A)(e,n,(function(n,t){return(0,I.A)(e,t)}))};var T=t(76875),M=t(67525);const R=function(e){return(0,M.A)((0,T.A)(e,void 0,d.A),e+"")}((function(e,n){return null==e?{}:L(e,n)}));var O=t(23068),P=t(72559);const j=function(e,n){return e>n};var F=t(29008);const D=function(e){return e&&e.length?(0,P.A)(e,F.A,j):void 0};var S=t(26666),G=t(52528),V=t(79841),B=t(23958);const q=function(e,n){var t={};return n=(0,B.A)(n,3),(0,V.A)(e,(function(e,r,o){(0,G.A)(t,r,n(e,r,o))})),t};var Y=t(69592),z=t(86452),$=t(41917);const J=function(){return $.A.Date.now()};var Z=t(96763);function H(e,n,t,r){var o;do{o=u(r)}while(e.hasNode(o));return t.dummy=n,e.setNode(o,t),o}function K(e){var n=new p.T({multigraph:e.isMultigraph()}).setGraph(e.graph());return r.A(e.nodes(),(function(t){e.children(t).length||n.setNode(t,e.node(t))})),r.A(e.edges(),(function(t){n.setEdge(t,e.edge(t))})),n}function Q(e,n){var t,r,o=e.x,i=e.y,u=n.x-o,s=n.y-i,a=e.width/2,d=e.height/2;if(!u&&!s)throw new Error("Not possible to find intersection inside of the rectangle");return Math.abs(s)*a>Math.abs(u)*d?(s<0&&(d=-d),t=d*u/s,r=d):(u<0&&(a=-a),t=a,r=a*s/u),{x:o+t,y:i+r}}function U(e){var n=c.A(A(X(e)+1),(function(){return[]}));return r.A(e.nodes(),(function(t){var r=e.node(t),o=r.rank;Y.A(o)||(n[o][r.order]=t)})),n}function W(e,n,t,r){var o={width:0,height:0};return arguments.length>=4&&(o.rank=t,o.order=r),H(e,"border",o,n)}function X(e){return D(c.A(e.nodes(),(function(n){var t=e.node(n).rank;if(!Y.A(t))return t})))}function ee(e,n){var t=J();try{return n()}finally{Z.log(e+" time: "+(J()-t)+"ms")}}function ne(e,n){return n()}function te(e,n,t,r,o,i){var u={width:0,height:0,rank:i,borderType:n},s=o[n][i-1],a=H(e,"border",u,t);o[n][i]=a,e.setParent(a,r),s&&e.setEdge(s,a,{weight:1})}function re(e){var n=e.graph().rankdir.toLowerCase();"bt"!==n&&"rl"!==n||function(e){r.A(e.nodes(),(function(n){ue(e.node(n))})),r.A(e.edges(),(function(n){var t=e.edge(n);r.A(t.points,ue),s.A(t,"y")&&ue(t)}))}(e),"lr"!==n&&"rl"!==n||(!function(e){r.A(e.nodes(),(function(n){se(e.node(n))})),r.A(e.edges(),(function(n){var t=e.edge(n);r.A(t.points,se),s.A(t,"x")&&se(t)}))}(e),oe(e))}function oe(e){r.A(e.nodes(),(function(n){ie(e.node(n))})),r.A(e.edges(),(function(n){ie(e.edge(n))}))}function ie(e){var n=e.width;e.width=e.height,e.height=n}function ue(e){e.y=-e.y}function se(e){var n=e.x;e.x=e.y,e.y=n}function ae(e){e.graph().dummyChains=[],r.A(e.edges(),(function(n){!function(e,n){var t,r,o,i=n.v,u=e.node(i).rank,s=n.w,a=e.node(s).rank,d=n.name,c=e.edge(n),f=c.labelRank;if(a===u+1)return;for(e.removeEdge(n),o=0,++u;uu.lim&&(s=u,a=!0);var d=me.A(n.edges(),(function(n){return a===qe(e,e.node(n.v),s)&&a!==qe(e,e.node(n.w),s)}));return ce(d,(function(e){return he(n,e)}))}function Be(e,n,t,o){var i=t.v,u=t.w;e.removeEdge(i,u),e.setEdge(o.v,o.w,{}),De(e),je(e,n),function(e,n){var t=pe.A(e.nodes(),(function(e){return!n.node(e).parent})),o=function(e,n){return Re(e,n,"pre")}(e,t);o=o.slice(1),r.A(o,(function(t){var r=e.node(t).parent,o=n.edge(t,r),i=!1;o||(o=n.edge(r,t),i=!0),n.node(t).rank=n.node(r).rank+(i?o.minlen:-o.minlen)}))}(e,n)}function qe(e,n,t){return t.low<=n.lim&&n.lim<=t.lim}function Ye(e){switch(e.graph().ranker){case"network-simplex":default:$e(e);break;case"tight-tree":!function(e){fe(e),ve(e)}(e);break;case"longest-path":ze(e)}}Pe.initLowLimValues=De,Pe.initCutValues=je,Pe.calcCutValue=Fe,Pe.leaveEdge=Ge,Pe.enterEdge=Ve,Pe.exchangeEdges=Be;var ze=fe;function $e(e){Pe(e)}var Je=t(38207),Ze=t(89463);function He(e){var n=H(e,"root",{},"_root"),t=function(e){var n={};function t(o,i){var u=e.children(o);u&&u.length&&r.A(u,(function(e){t(e,i+1)})),n[o]=i}return r.A(e.children(),(function(e){t(e,1)})),n}(e),o=D(Je.A(t))-1,i=2*o+1;e.graph().nestingRoot=n,r.A(e.edges(),(function(n){e.edge(n).minlen*=i}));var u=function(e){return Ze.A(e.edges(),(function(n,t){return n+e.edge(t).weight}),0)}(e)+1;r.A(e.children(),(function(r){Ke(e,n,i,u,o,t,r)})),e.graph().nodeRankFactor=i}function Ke(e,n,t,o,i,u,s){var a=e.children(s);if(a.length){var d=W(e,"_bt"),c=W(e,"_bb"),f=e.node(s);e.setParent(d,s),f.borderTop=d,e.setParent(c,s),f.borderBottom=c,r.A(a,(function(r){Ke(e,n,t,o,i,u,r);var a=e.node(r),f=a.borderTop?a.borderTop:r,h=a.borderBottom?a.borderBottom:r,v=a.borderTop?o:2*o,g=f!==h?1:i-u[s]+1;e.setEdge(d,f,{weight:v,minlen:g,nestingEdge:!0}),e.setEdge(h,c,{weight:v,minlen:g,nestingEdge:!0})})),e.parent(s)||e.setEdge(n,d,{weight:0,minlen:i+u[s]})}else s!==n&&e.setEdge(n,s,{weight:0,minlen:t})}var Qe=t(68675);const Ue=function(e){return(0,Qe.A)(e,5)};function We(e,n,t){var o=function(e){var n;for(;e.hasNode(n=u("_root")););return n}(e),i=new p.T({compound:!0}).setGraph({root:o}).setDefaultNodeLabel((function(n){return e.node(n)}));return r.A(e.nodes(),(function(u){var a=e.node(u),d=e.parent(u);(a.rank===n||a.minRank<=n&&n<=a.maxRank)&&(i.setNode(u),i.setParent(u,d||o),r.A(e[t](u),(function(n){var t=n.v===u?n.w:n.v,r=i.edge(t,u),o=Y.A(r)?0:r.weight;i.setEdge(t,u,{weight:e.edge(n).weight+o})})),s.A(a,"minRank")&&i.setNode(u,{borderLeft:a.borderLeft[n],borderRight:a.borderRight[n]}))})),i}var Xe=t(52851);const en=function(e,n,t){for(var r=-1,o=e.length,i=n.length,u={};++rn||i&&u&&a&&!s&&!d||r&&u&&a||!t&&a||!o)return 1;if(!r&&!i&&!d&&e=s?a:a*("desc"==t[r]?-1:1)}return e.index-n.index};const hn=function(e,n,t){n=n.length?(0,rn.A)(n,(function(e){return(0,Me.A)(e)?function(n){return(0,on.A)(n,1===e.length?e[0]:e)}:e})):[F.A];var r=-1;n=(0,rn.A)(n,(0,an.A)(B.A));var o=(0,un.A)(e,(function(e,t,o){return{criteria:(0,rn.A)(n,(function(n){return n(e)})),index:++r,value:e}}));return sn(o,(function(e,n){return fn(e,n,t)}))};const vn=(0,t(24326).A)((function(e,n){if(null==e)return[];var t=n.length;return t>1&&(0,g.A)(e,n[0],n[1])?n=[]:t>2&&(0,g.A)(n[0],n[1],n[2])&&(n=[n[0]]),hn(e,(0,tn.A)(n,1),[])}));function gn(e,n){for(var t=0,r=1;r0;)n%2&&(t+=a[n+1]),a[n=n-1>>1]+=e.weight;f+=e.weight*t}))),f}function An(e,n){var t={};return r.A(e,(function(e,n){var r=t[e.v]={indegree:0,in:[],out:[],vs:[e.v],i:n};Y.A(e.barycenter)||(r.barycenter=e.barycenter,r.weight=e.weight)})),r.A(n.edges(),(function(e){var n=t[e.v],r=t[e.w];Y.A(n)||Y.A(r)||(r.indegree++,n.out.push(t[e.w]))})),function(e){var n=[];function t(e){return function(n){n.merged||(Y.A(n.barycenter)||Y.A(e.barycenter)||n.barycenter>=e.barycenter)&&function(e,n){var t=0,r=0;e.weight&&(t+=e.barycenter*e.weight,r+=e.weight);n.weight&&(t+=n.barycenter*n.weight,r+=n.weight);e.vs=n.vs.concat(e.vs),e.barycenter=t/r,e.weight=r,e.i=Math.min(n.i,e.i),n.merged=!0}(e,n)}}function o(n){return function(t){t.in.push(n),0==--t.indegree&&e.push(t)}}for(;e.length;){var i=e.pop();n.push(i),r.A(i.in.reverse(),t(i)),r.A(i.out,o(i))}return c.A(me.A(n,(function(e){return!e.merged})),(function(e){return R(e,["vs","i","barycenter","weight"])}))}(me.A(t,(function(e){return!e.indegree})))}function pn(e,n){var t,o=function(e,n){var t={lhs:[],rhs:[]};return r.A(e,(function(e){n(e)?t.lhs.push(e):t.rhs.push(e)})),t}(e,(function(e){return s.A(e,"barycenter")})),i=o.lhs,u=vn(o.rhs,(function(e){return-e.i})),a=[],c=0,f=0,h=0;i.sort((t=!!n,function(e,n){return e.barycentern.barycenter?1:t?n.i-e.i:e.i-n.i})),h=mn(a,u,h),r.A(i,(function(e){h+=e.vs.length,a.push(e.vs),c+=e.barycenter*e.weight,f+=e.weight,h=mn(a,u,h)}));var v={vs:d.A(a)};return f&&(v.barycenter=c/f,v.weight=f),v}function mn(e,n,t){for(var r;n.length&&(r=S.A(n)).i<=t;)n.pop(),e.push(r.vs),t++;return t}function wn(e,n,t,o){var i=e.children(n),u=e.node(n),a=u?u.borderLeft:void 0,f=u?u.borderRight:void 0,h={};a&&(i=me.A(i,(function(e){return e!==a&&e!==f})));var v=function(e,n){return c.A(n,(function(n){var t=e.inEdges(n);if(t.length){var r=Ze.A(t,(function(n,t){var r=e.edge(t),o=e.node(t.v);return{sum:n.sum+r.weight*o.order,weight:n.weight+r.weight}}),{sum:0,weight:0});return{v:n,barycenter:r.sum/r.weight,weight:r.weight}}return{v:n}}))}(e,i);r.A(v,(function(n){if(e.children(n.v).length){var r=wn(e,n.v,t,o);h[n.v]=r,s.A(r,"barycenter")&&(i=n,u=r,Y.A(i.barycenter)?(i.barycenter=u.barycenter,i.weight=u.weight):(i.barycenter=(i.barycenter*i.weight+u.barycenter*u.weight)/(i.weight+u.weight),i.weight+=u.weight))}var i,u}));var g=An(v,t);!function(e,n){r.A(e,(function(e){e.vs=d.A(e.vs.map((function(e){return n[e]?n[e].vs:e})))}))}(g,h);var l=pn(g,o);if(a&&(l.vs=d.A([a,l.vs,f]),e.predecessors(a).length)){var A=e.node(e.predecessors(a)[0]),p=e.node(e.predecessors(f)[0]);s.A(l,"barycenter")||(l.barycenter=0,l.weight=0),l.barycenter=(l.barycenter*l.weight+A.order+p.order)/(l.weight+2),l.weight+=2}return l}function bn(e){var n=X(e),t=_n(e,A(1,n+1),"inEdges"),o=_n(e,A(n-1,-1,-1),"outEdges"),i=function(e){var n={},t=me.A(e.nodes(),(function(n){return!e.children(n).length})),o=D(c.A(t,(function(n){return e.node(n).rank}))),i=c.A(A(o+1),(function(){return[]})),u=vn(t,(function(n){return e.node(n).rank}));return r.A(u,(function t(o){if(!s.A(n,o)){n[o]=!0;var u=e.node(o);i[u.rank].push(o),r.A(e.successors(o),t)}})),i}(e);En(e,i);for(var u,a=Number.POSITIVE_INFINITY,d=0,f=0;f<4;++d,++f){yn(d%2?t:o,d%4>=2);var h=gn(e,i=U(e));ha||d>n[o].lim));i=o,o=r;for(;(o=e.parent(o))!==i;)s.push(o);return{path:u.concat(s.reverse()),lca:i}}(e,n,o.v,o.w),u=i.path,s=i.lca,a=0,d=u[a],c=!0;t!==o.w;){if(r=e.node(t),c){for(;(d=u[a])!==s&&e.node(d).maxRankt){var r=n;n=t,t=r}var o=e[n];o||(e[n]=o={}),o[t]=!0}function Rn(e,n,t){if(n>t){var r=n;n=t,t=r}return s.A(e[n],t)}function On(e,n,t,o,i){var u={},a=function(e,n,t,o){var i=new p.T,u=e.graph(),a=function(e,n,t){return function(r,o,i){var u,a=r.node(o),d=r.node(i),c=0;if(c+=a.width/2,s.A(a,"labelpos"))switch(a.labelpos.toLowerCase()){case"l":u=-a.width/2;break;case"r":u=a.width/2}if(u&&(c+=t?u:-u),u=0,c+=(a.dummy?n:e)/2,c+=(d.dummy?n:e)/2,c+=d.width/2,s.A(d,"labelpos"))switch(d.labelpos.toLowerCase()){case"l":u=d.width/2;break;case"r":u=-d.width/2}return u&&(c+=t?u:-u),u=0,c}}(u.nodesep,u.edgesep,o);return r.A(n,(function(n){var o;r.A(n,(function(n){var r=t[n];if(i.setNode(r),o){var u=t[o],s=i.edge(u,r);i.setEdge(u,r,Math.max(a(e,n,o),s||0))}o=n}))})),i}(e,n,t,i),d=i?"borderLeft":"borderRight";function c(e,n){for(var t=a.nodes(),r=t.pop(),o={};r;)o[r]?e(r):(o[r]=!0,t.push(r),t=t.concat(n(r))),r=t.pop()}return c((function(e){u[e]=a.inEdges(e).reduce((function(e,n){return Math.max(e,u[n.v]+a.edge(n))}),0)}),a.predecessors.bind(a)),c((function(n){var t=a.outEdges(n).reduce((function(e,n){return Math.min(e,u[n.w]-a.edge(n))}),Number.POSITIVE_INFINITY),r=e.node(n);t!==Number.POSITIVE_INFINITY&&r.borderType!==d&&(u[n]=Math.max(u[n],t))}),a.successors.bind(a)),r.A(o,(function(e){u[e]=u[t[e]]})),u}function Pn(e){var n,t=U(e),o=N.A(Tn(e,t),function(e,n){var t={};function o(n,o,i,u,s){var a;r.A(A(o,i),(function(o){a=n[o],e.node(a).dummy&&r.A(e.predecessors(a),(function(n){var r=e.node(n);r.dummy&&(r.orders)&&Mn(t,n,a)}))}))}return Ze.A(n,(function(n,t){var i,u=-1,s=0;return r.A(t,(function(r,a){if("border"===e.node(r).dummy){var d=e.predecessors(r);d.length&&(i=e.node(d[0]).order,o(t,s,a,u,i),s=a,u=i)}o(t,s,t.length,i,n.length)})),t})),t}(e,t)),i={};r.A(["u","d"],(function(u){n="u"===u?t:Je.A(t).reverse(),r.A(["l","r"],(function(t){"r"===t&&(n=c.A(n,(function(e){return Je.A(e).reverse()})));var s=("u"===u?e.predecessors:e.successors).bind(e),a=function(e,n,t,o){var i={},u={},s={};return r.A(n,(function(e){r.A(e,(function(e,n){i[e]=e,u[e]=e,s[e]=n}))})),r.A(n,(function(e){var n=-1;r.A(e,(function(e){var r=o(e);if(r.length){r=vn(r,(function(e){return s[e]}));for(var a=(r.length-1)/2,d=Math.floor(a),c=Math.ceil(a);d<=c;++d){var f=r[d];u[e]===e&&n{t.d(n,{T:()=>_});var r=t(48585),o=t(39142),i=t(89610),u=t(27422),s=t(94092),a=t(66401),d=t(8058),c=t(69592),f=t(13588),h=t(24326),v=t(99902),g=t(53533);const l=(0,h.A)((function(e){return(0,v.A)((0,f.A)(e,1,g.A,!0))}));var A=t(38207),p=t(89463),m="\0",w="\0",b="\x01";class _{constructor(e={}){this._isDirected=!r.A(e,"directed")||e.directed,this._isMultigraph=!!r.A(e,"multigraph")&&e.multigraph,this._isCompound=!!r.A(e,"compound")&&e.compound,this._label=void 0,this._defaultNodeLabelFn=o.A(void 0),this._defaultEdgeLabelFn=o.A(void 0),this._nodes={},this._isCompound&&(this._parent={},this._children={},this._children[w]={}),this._in={},this._preds={},this._out={},this._sucs={},this._edgeObjs={},this._edgeLabels={}}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph(e){return this._label=e,this}graph(){return this._label}setDefaultNodeLabel(e){return i.A(e)||(e=o.A(e)),this._defaultNodeLabelFn=e,this}nodeCount(){return this._nodeCount}nodes(){return u.A(this._nodes)}sources(){var e=this;return s.A(this.nodes(),(function(n){return a.A(e._in[n])}))}sinks(){var e=this;return s.A(this.nodes(),(function(n){return a.A(e._out[n])}))}setNodes(e,n){var t=arguments,r=this;return d.A(e,(function(e){t.length>1?r.setNode(e,n):r.setNode(e)})),this}setNode(e,n){return r.A(this._nodes,e)?(arguments.length>1&&(this._nodes[e]=n),this):(this._nodes[e]=arguments.length>1?n:this._defaultNodeLabelFn(e),this._isCompound&&(this._parent[e]=w,this._children[e]={},this._children[w][e]=!0),this._in[e]={},this._preds[e]={},this._out[e]={},this._sucs[e]={},++this._nodeCount,this)}node(e){return this._nodes[e]}hasNode(e){return r.A(this._nodes,e)}removeNode(e){var n=this;if(r.A(this._nodes,e)){var t=function(e){n.removeEdge(n._edgeObjs[e])};delete this._nodes[e],this._isCompound&&(this._removeFromParentsChildList(e),delete this._parent[e],d.A(this.children(e),(function(e){n.setParent(e)})),delete this._children[e]),d.A(u.A(this._in[e]),t),delete this._in[e],delete this._preds[e],d.A(u.A(this._out[e]),t),delete this._out[e],delete this._sucs[e],--this._nodeCount}return this}setParent(e,n){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(c.A(n))n=w;else{for(var t=n+="";!c.A(t);t=this.parent(t))if(t===e)throw new Error("Setting "+n+" as parent of "+e+" would create a cycle");this.setNode(n)}return this.setNode(e),this._removeFromParentsChildList(e),this._parent[e]=n,this._children[n][e]=!0,this}_removeFromParentsChildList(e){delete this._children[this._parent[e]][e]}parent(e){if(this._isCompound){var n=this._parent[e];if(n!==w)return n}}children(e){if(c.A(e)&&(e=w),this._isCompound){var n=this._children[e];if(n)return u.A(n)}else{if(e===w)return this.nodes();if(this.hasNode(e))return[]}}predecessors(e){var n=this._preds[e];if(n)return u.A(n)}successors(e){var n=this._sucs[e];if(n)return u.A(n)}neighbors(e){var n=this.predecessors(e);if(n)return l(n,this.successors(e))}isLeaf(e){return 0===(this.isDirected()?this.successors(e):this.neighbors(e)).length}filterNodes(e){var n=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});n.setGraph(this.graph());var t=this;d.A(this._nodes,(function(t,r){e(r)&&n.setNode(r,t)})),d.A(this._edgeObjs,(function(e){n.hasNode(e.v)&&n.hasNode(e.w)&&n.setEdge(e,t.edge(e))}));var r={};function o(e){var i=t.parent(e);return void 0===i||n.hasNode(i)?(r[e]=i,i):i in r?r[i]:o(i)}return this._isCompound&&d.A(n.nodes(),(function(e){n.setParent(e,o(e))})),n}setDefaultEdgeLabel(e){return i.A(e)||(e=o.A(e)),this._defaultEdgeLabelFn=e,this}edgeCount(){return this._edgeCount}edges(){return A.A(this._edgeObjs)}setPath(e,n){var t=this,r=arguments;return p.A(e,(function(e,o){return r.length>1?t.setEdge(e,o,n):t.setEdge(e,o),o})),this}setEdge(){var e,n,t,o,i=!1,u=arguments[0];"object"==typeof u&&null!==u&&"v"in u?(e=u.v,n=u.w,t=u.name,2===arguments.length&&(o=arguments[1],i=!0)):(e=u,n=arguments[1],t=arguments[3],arguments.length>2&&(o=arguments[2],i=!0)),e=""+e,n=""+n,c.A(t)||(t=""+t);var s=x(this._isDirected,e,n,t);if(r.A(this._edgeLabels,s))return i&&(this._edgeLabels[s]=o),this;if(!c.A(t)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(e),this.setNode(n),this._edgeLabels[s]=i?o:this._defaultEdgeLabelFn(e,n,t);var a=function(e,n,t,r){var o=""+n,i=""+t;if(!e&&o>i){var u=o;o=i,i=u}var s={v:o,w:i};r&&(s.name=r);return s}(this._isDirected,e,n,t);return e=a.v,n=a.w,Object.freeze(a),this._edgeObjs[s]=a,y(this._preds[n],e),y(this._sucs[e],n),this._in[n][s]=a,this._out[e][s]=a,this._edgeCount++,this}edge(e,n,t){var r=1===arguments.length?k(this._isDirected,arguments[0]):x(this._isDirected,e,n,t);return this._edgeLabels[r]}hasEdge(e,n,t){var o=1===arguments.length?k(this._isDirected,arguments[0]):x(this._isDirected,e,n,t);return r.A(this._edgeLabels,o)}removeEdge(e,n,t){var r=1===arguments.length?k(this._isDirected,arguments[0]):x(this._isDirected,e,n,t),o=this._edgeObjs[r];return o&&(e=o.v,n=o.w,delete this._edgeLabels[r],delete this._edgeObjs[r],E(this._preds[n],e),E(this._sucs[e],n),delete this._in[n][r],delete this._out[e][r],this._edgeCount--),this}inEdges(e,n){var t=this._in[e];if(t){var r=A.A(t);return n?s.A(r,(function(e){return e.v===n})):r}}outEdges(e,n){var t=this._out[e];if(t){var r=A.A(t);return n?s.A(r,(function(e){return e.w===n})):r}}nodeEdges(e,n){var t=this.inEdges(e,n);if(t)return t.concat(this.outEdges(e,n))}}function y(e,n){e[n]?e[n]++:e[n]=1}function E(e,n){--e[n]||delete e[n]}function x(e,n,t,r){var o=""+n,i=""+t;if(!e&&o>i){var u=o;o=i,i=u}return o+b+i+b+(c.A(r)?m:r)}function k(e,n){return x(e,n.v,n.w,n.name)}_.prototype._nodeCount=0,_.prototype._edgeCount=0},697:(e,n,t)=>{t.d(n,{T:()=>r.T});var r=t(37981)},72559:(e,n,t)=>{t.d(n,{A:()=>o});var r=t(61882);const o=function(e,n,t){for(var o=-1,i=e.length;++o{t.d(n,{A:()=>r});const r=function(e,n){return e{t.d(n,{A:()=>i});var r=t(6240),o=t(38446);const i=function(e,n){var t=-1,i=(0,o.A)(e)?Array(e.length):[];return(0,r.A)(e,(function(e,r,o){i[++t]=n(e,r,o)})),i}},99354:(e,n,t)=>{t.d(n,{A:()=>c});var r=t(66318),o=t(52851),i=t(7819),u=t(25353),s=t(23149),a=t(30901);const d=function(e,n,t,r){if(!(0,s.A)(e))return e;for(var d=-1,c=(n=(0,i.A)(n,e)).length,f=c-1,h=e;null!=h&&++d{t.d(n,{A:()=>d});var r=t(24326),o=t(66984),i=t(6832),u=t(55615),s=Object.prototype,a=s.hasOwnProperty;const d=(0,r.A)((function(e,n){e=Object(e);var t=-1,r=n.length,d=r>2?n[2]:void 0;for(d&&(0,i.A)(n[0],n[1],d)&&(r=1);++t{t.d(n,{A:()=>c});var r=t(23958),o=t(38446),i=t(27422);const u=function(e){return function(n,t,u){var s=Object(n);if(!(0,o.A)(n)){var a=(0,r.A)(t,3);n=(0,i.A)(n),t=function(e){return a(s[e],e,s)}}var d=e(n,t,u);return d>-1?s[a?n[d]:d]:void 0}};var s=t(25707),a=t(18593),d=Math.max;const c=u((function(e,n,t){var o=null==e?0:e.length;if(!o)return-1;var i=null==t?0:(0,a.A)(t);return i<0&&(i=d(o+i,0)),(0,s.A)(e,(0,r.A)(n,3),i)}))},34098:(e,n,t)=>{t.d(n,{A:()=>o});var r=t(13588);const o=function(e){return(null==e?0:e.length)?(0,r.A)(e,1):[]}},9703:(e,n,t)=>{t.d(n,{A:()=>u});var r=t(88496),o=t(92049),i=t(53098);const u=function(e){return"string"==typeof e||!(0,o.A)(e)&&(0,i.A)(e)&&"[object String]"==(0,r.A)(e)}},26666:(e,n,t)=>{t.d(n,{A:()=>r});const r=function(e){var n=null==e?0:e.length;return n?e[n-1]:void 0}},74722:(e,n,t)=>{t.d(n,{A:()=>s});var r=t(45572),o=t(23958),i=t(52568),u=t(92049);const s=function(e,n){return((0,u.A)(e)?r.A:i.A)(e,(0,o.A)(n,3))}},86452:(e,n,t)=>{t.d(n,{A:()=>u});var r=t(72559),o=t(36224),i=t(29008);const u=function(e){return e&&e.length?(0,r.A)(e,i.A,o.A):void 0}},74342:(e,n,t)=>{t.d(n,{A:()=>l});var r=/\s/;const o=function(e){for(var n=e.length;n--&&r.test(e.charAt(n)););return n};var i=/^\s+/;const u=function(e){return e?e.slice(0,o(e)+1).replace(i,""):e};var s=t(23149),a=t(61882),d=/^[-+]0x[0-9a-f]+$/i,c=/^0b[01]+$/i,f=/^0o[0-7]+$/i,h=parseInt;const v=function(e){if("number"==typeof e)return e;if((0,a.A)(e))return NaN;if((0,s.A)(e)){var n="function"==typeof e.valueOf?e.valueOf():e;e=(0,s.A)(n)?n+"":n}if("string"!=typeof e)return 0===e?e:+e;e=u(e);var t=c.test(e);return t||f.test(e)?h(e.slice(2),t?2:8):d.test(e)?NaN:+e};var g=1/0;const l=function(e){return e?(e=v(e))===g||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}},18593:(e,n,t)=>{t.d(n,{A:()=>o});var r=t(74342);const o=function(e){var n=(0,r.A)(e),t=n%1;return n==n?t?n-t:n:0}}}]); \ No newline at end of file diff --git a/assets/js/2557.a87dcdf9.js b/assets/js/2557.a87dcdf9.js new file mode 100644 index 00000000..2193f86c --- /dev/null +++ b/assets/js/2557.a87dcdf9.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkbeacon_docs=self.webpackChunkbeacon_docs||[]).push([[2557],{50053:(t,r,a)=>{a.d(r,{A:()=>n});var e=a(68675);const n=function(t){return(0,e.A)(t,4)}},31953:(t,r,a)=>{a.d(r,{IU:()=>y,Jo:()=>_,T_:()=>x,g0:()=>p,jP:()=>b});var e=a(46578),n=a(48496),s=a(67895),i=a(57323),d=a(64994),o=a(20007),l=(0,d.K2)(((t,r,a,e)=>{r.forEach((r=>{c[r](t,a,e)}))}),"insertMarkers"),c={extension:(0,d.K2)(((t,r,a)=>{d.Rm.trace("Making markers for ",a),t.append("defs").append("marker").attr("id",a+"_"+r+"-extensionStart").attr("class","marker extension "+r).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),t.append("defs").append("marker").attr("id",a+"_"+r+"-extensionEnd").attr("class","marker extension "+r).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z")}),"extension"),composition:(0,d.K2)(((t,r,a)=>{t.append("defs").append("marker").attr("id",a+"_"+r+"-compositionStart").attr("class","marker composition "+r).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",a+"_"+r+"-compositionEnd").attr("class","marker composition "+r).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")}),"composition"),aggregation:(0,d.K2)(((t,r,a)=>{t.append("defs").append("marker").attr("id",a+"_"+r+"-aggregationStart").attr("class","marker aggregation "+r).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",a+"_"+r+"-aggregationEnd").attr("class","marker aggregation "+r).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")}),"aggregation"),dependency:(0,d.K2)(((t,r,a)=>{t.append("defs").append("marker").attr("id",a+"_"+r+"-dependencyStart").attr("class","marker dependency "+r).attr("refX",6).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",a+"_"+r+"-dependencyEnd").attr("class","marker dependency "+r).attr("refX",13).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")}),"dependency"),lollipop:(0,d.K2)(((t,r,a)=>{t.append("defs").append("marker").attr("id",a+"_"+r+"-lollipopStart").attr("class","marker lollipop "+r).attr("refX",13).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6),t.append("defs").append("marker").attr("id",a+"_"+r+"-lollipopEnd").attr("class","marker lollipop "+r).attr("refX",1).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6)}),"lollipop"),point:(0,d.K2)(((t,r,a)=>{t.append("marker").attr("id",a+"_"+r+"-pointEnd").attr("class","marker "+r).attr("viewBox","0 0 10 10").attr("refX",6).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),t.append("marker").attr("id",a+"_"+r+"-pointStart").attr("class","marker "+r).attr("viewBox","0 0 10 10").attr("refX",4.5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 5 L 10 10 L 10 0 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")}),"point"),circle:(0,d.K2)(((t,r,a)=>{t.append("marker").attr("id",a+"_"+r+"-circleEnd").attr("class","marker "+r).attr("viewBox","0 0 10 10").attr("refX",11).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),t.append("marker").attr("id",a+"_"+r+"-circleStart").attr("class","marker "+r).attr("viewBox","0 0 10 10").attr("refX",-1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")}),"circle"),cross:(0,d.K2)(((t,r,a)=>{t.append("marker").attr("id",a+"_"+r+"-crossEnd").attr("class","marker cross "+r).attr("viewBox","0 0 11 11").attr("refX",12).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),t.append("marker").attr("id",a+"_"+r+"-crossStart").attr("class","marker cross "+r).attr("viewBox","0 0 11 11").attr("refX",-1).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0")}),"cross"),barb:(0,d.K2)(((t,r,a)=>{t.append("defs").append("marker").attr("id",a+"_"+r+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","strokeWidth").attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")}),"barb")},p=l,h=(0,d.K2)(((t,r,a,e,n)=>{r.arrowTypeStart&&m(t,"start",r.arrowTypeStart,a,e,n),r.arrowTypeEnd&&m(t,"end",r.arrowTypeEnd,a,e,n)}),"addEdgeMarkers"),g={arrow_cross:"cross",arrow_point:"point",arrow_barb:"barb",arrow_circle:"circle",aggregation:"aggregation",extension:"extension",composition:"composition",dependency:"dependency",lollipop:"lollipop"},m=(0,d.K2)(((t,r,a,e,n,s)=>{const i=g[a];if(!i)return void d.Rm.warn(`Unknown arrow type: ${a}`);const o="start"===r?"Start":"End";t.attr(`marker-${r}`,`url(${e}#${n}_${s}-${i}${o})`)}),"addEdgeMarker"),k={},f={},y=(0,d.K2)((()=>{k={},f={}}),"clear"),b=(0,d.K2)(((t,r)=>{const a=(0,d.D7)(),n=(0,d._3)(a.flowchart.htmlLabels),i="markdown"===r.labelType?(0,s.GZ)(t,r.label,{style:r.labelStyle,useHtmlLabels:n,addSvgBackground:!0},a):(0,e.DA)(r.label,r.labelStyle),l=t.insert("g").attr("class","edgeLabel"),c=l.insert("g").attr("class","label");c.node().appendChild(i);let p,h=i.getBBox();if(n){const t=i.children[0],r=(0,o.Ltv)(i);h=t.getBoundingClientRect(),r.attr("width",h.width),r.attr("height",h.height)}if(c.attr("transform","translate("+-h.width/2+", "+-h.height/2+")"),k[r.id]=l,r.width=h.width,r.height=h.height,r.startLabelLeft){const a=(0,e.DA)(r.startLabelLeft,r.labelStyle),n=t.insert("g").attr("class","edgeTerminals"),s=n.insert("g").attr("class","inner");p=s.node().appendChild(a);const i=a.getBBox();s.attr("transform","translate("+-i.width/2+", "+-i.height/2+")"),f[r.id]||(f[r.id]={}),f[r.id].startLeft=n,u(p,r.startLabelLeft)}if(r.startLabelRight){const a=(0,e.DA)(r.startLabelRight,r.labelStyle),n=t.insert("g").attr("class","edgeTerminals"),s=n.insert("g").attr("class","inner");p=n.node().appendChild(a),s.node().appendChild(a);const i=a.getBBox();s.attr("transform","translate("+-i.width/2+", "+-i.height/2+")"),f[r.id]||(f[r.id]={}),f[r.id].startRight=n,u(p,r.startLabelRight)}if(r.endLabelLeft){const a=(0,e.DA)(r.endLabelLeft,r.labelStyle),n=t.insert("g").attr("class","edgeTerminals"),s=n.insert("g").attr("class","inner");p=s.node().appendChild(a);const i=a.getBBox();s.attr("transform","translate("+-i.width/2+", "+-i.height/2+")"),n.node().appendChild(a),f[r.id]||(f[r.id]={}),f[r.id].endLeft=n,u(p,r.endLabelLeft)}if(r.endLabelRight){const a=(0,e.DA)(r.endLabelRight,r.labelStyle),n=t.insert("g").attr("class","edgeTerminals"),s=n.insert("g").attr("class","inner");p=s.node().appendChild(a);const i=a.getBBox();s.attr("transform","translate("+-i.width/2+", "+-i.height/2+")"),n.node().appendChild(a),f[r.id]||(f[r.id]={}),f[r.id].endRight=n,u(p,r.endLabelRight)}return i}),"insertEdgeLabel");function u(t,r){(0,d.D7)().flowchart.htmlLabels&&t&&(t.style.width=9*r.length+"px",t.style.height="12px")}(0,d.K2)(u,"setTerminalWidth");var x=(0,d.K2)(((t,r)=>{d.Rm.debug("Moving label abc88 ",t.id,t.label,k[t.id],r);let a=r.updatedPath?r.updatedPath:r.originalPath;const e=(0,d.D7)(),{subGraphTitleTotalMargin:s}=(0,n.O)(e);if(t.label){const e=k[t.id];let n=t.x,o=t.y;if(a){const e=i._K.calcLabelPosition(a);d.Rm.debug("Moving label "+t.label+" from (",n,",",o,") to (",e.x,",",e.y,") abc88"),r.updatedPath&&(n=e.x,o=e.y)}e.attr("transform",`translate(${n}, ${o+s/2})`)}if(t.startLabelLeft){const r=f[t.id].startLeft;let e=t.x,n=t.y;if(a){const r=i._K.calcTerminalLabelPosition(t.arrowTypeStart?10:0,"start_left",a);e=r.x,n=r.y}r.attr("transform",`translate(${e}, ${n})`)}if(t.startLabelRight){const r=f[t.id].startRight;let e=t.x,n=t.y;if(a){const r=i._K.calcTerminalLabelPosition(t.arrowTypeStart?10:0,"start_right",a);e=r.x,n=r.y}r.attr("transform",`translate(${e}, ${n})`)}if(t.endLabelLeft){const r=f[t.id].endLeft;let e=t.x,n=t.y;if(a){const r=i._K.calcTerminalLabelPosition(t.arrowTypeEnd?10:0,"end_left",a);e=r.x,n=r.y}r.attr("transform",`translate(${e}, ${n})`)}if(t.endLabelRight){const r=f[t.id].endRight;let e=t.x,n=t.y;if(a){const r=i._K.calcTerminalLabelPosition(t.arrowTypeEnd?10:0,"end_right",a);e=r.x,n=r.y}r.attr("transform",`translate(${e}, ${n})`)}}),"positionEdgeLabel"),w=(0,d.K2)(((t,r)=>{const a=t.x,e=t.y,n=Math.abs(r.x-a),s=Math.abs(r.y-e),i=t.width/2,d=t.height/2;return n>=i||s>=d}),"outsideNode"),L=(0,d.K2)(((t,r,a)=>{d.Rm.debug(`intersection calc abc89:\n outsidePoint: ${JSON.stringify(r)}\n insidePoint : ${JSON.stringify(a)}\n node : x:${t.x} y:${t.y} w:${t.width} h:${t.height}`);const e=t.x,n=t.y,s=Math.abs(e-a.x),i=t.width/2;let o=a.xMath.abs(e-r.x)*l){let t=a.y{d.Rm.debug("abc88 cutPathAtIntersect",t,r);let a=[],e=t[0],n=!1;return t.forEach((t=>{if(w(r,t)||n)e=t,n||a.push(t);else{const s=L(r,e,t);let i=!1;a.forEach((t=>{i=i||t.x===s.x&&t.y===s.y})),a.some((t=>t.x===s.x&&t.y===s.y))||a.push(s),n=!0}})),a}),"cutPathAtIntersect"),_=(0,d.K2)((function(t,r,a,e,s,i,l){let c=a.points;d.Rm.debug("abc88 InsertEdge: edge=",a,"e=",r);let p=!1;const g=i.node(r.v);var m=i.node(r.w);m?.intersect&&g?.intersect&&(c=c.slice(1,a.points.length-1),c.unshift(g.intersect(c[0])),c.push(m.intersect(c[c.length-1]))),a.toCluster&&(d.Rm.debug("to cluster abc88",e[a.toCluster]),c=M(a.points,e[a.toCluster].node),p=!0),a.fromCluster&&(d.Rm.debug("from cluster abc88",e[a.fromCluster]),c=M(c.reverse(),e[a.fromCluster].node).reverse(),p=!0);const k=c.filter((t=>!Number.isNaN(t.y)));let f=o.qrM;!a.curve||"graph"!==s&&"flowchart"!==s||(f=a.curve);const{x:y,y:b}=(0,n.R)(a),u=(0,o.n8j)().x(y).y(b).curve(f);let x;switch(a.thickness){case"normal":x="edge-thickness-normal";break;case"thick":case"invisible":x="edge-thickness-thick";break;default:x=""}switch(a.pattern){case"solid":x+=" edge-pattern-solid";break;case"dotted":x+=" edge-pattern-dotted";break;case"dashed":x+=" edge-pattern-dashed"}const w=t.append("path").attr("d",u(k)).attr("id",a.id).attr("class"," "+x+(a.classes?" "+a.classes:"")).attr("style",a.style);let L="";((0,d.D7)().flowchart.arrowMarkerAbsolute||(0,d.D7)().state.arrowMarkerAbsolute)&&(L=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,L=L.replace(/\(/g,"\\("),L=L.replace(/\)/g,"\\)")),h(w,a,L,l,s);let _={};return p&&(_.updatedPath=c),_.originalPath=a.points,_}),"insertEdge")}}]); \ No newline at end of file diff --git a/assets/js/257.806ad7d7.js b/assets/js/257.806ad7d7.js new file mode 100644 index 00000000..4cce1153 --- /dev/null +++ b/assets/js/257.806ad7d7.js @@ -0,0 +1,1376 @@ +"use strict"; +exports.id = 257; +exports.ids = [257]; +exports.modules = { + +/***/ 69323: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ CP: () => (/* binding */ drawEmbeddedImage), +/* harmony export */ HT: () => (/* binding */ getTextObj), +/* harmony export */ PB: () => (/* binding */ getNoteRect), +/* harmony export */ aC: () => (/* binding */ drawImage), +/* harmony export */ lC: () => (/* binding */ drawBackgroundRect), +/* harmony export */ m: () => (/* binding */ drawText), +/* harmony export */ tk: () => (/* binding */ drawRect) +/* harmony export */ }); +/* harmony import */ var _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(64994); +/* harmony import */ var _braintree_sanitize_url__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(16750); + + +// src/diagrams/common/svgDrawCommon.ts + +var drawRect = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_0__/* .__name */ .K2)((element, rectData) => { + const rectElement = element.append("rect"); + rectElement.attr("x", rectData.x); + rectElement.attr("y", rectData.y); + rectElement.attr("fill", rectData.fill); + rectElement.attr("stroke", rectData.stroke); + rectElement.attr("width", rectData.width); + rectElement.attr("height", rectData.height); + if (rectData.name) { + rectElement.attr("name", rectData.name); + } + if (rectData.rx) { + rectElement.attr("rx", rectData.rx); + } + if (rectData.ry) { + rectElement.attr("ry", rectData.ry); + } + if (rectData.attrs !== void 0) { + for (const attrKey in rectData.attrs) { + rectElement.attr(attrKey, rectData.attrs[attrKey]); + } + } + if (rectData.class) { + rectElement.attr("class", rectData.class); + } + return rectElement; +}, "drawRect"); +var drawBackgroundRect = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_0__/* .__name */ .K2)((element, bounds) => { + const rectData = { + x: bounds.startx, + y: bounds.starty, + width: bounds.stopx - bounds.startx, + height: bounds.stopy - bounds.starty, + fill: bounds.fill, + stroke: bounds.stroke, + class: "rect" + }; + const rectElement = drawRect(element, rectData); + rectElement.lower(); +}, "drawBackgroundRect"); +var drawText = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_0__/* .__name */ .K2)((element, textData) => { + const nText = textData.text.replace(_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_0__/* .lineBreakRegex */ .H1, " "); + const textElem = element.append("text"); + textElem.attr("x", textData.x); + textElem.attr("y", textData.y); + textElem.attr("class", "legend"); + textElem.style("text-anchor", textData.anchor); + if (textData.class) { + textElem.attr("class", textData.class); + } + const tspan = textElem.append("tspan"); + tspan.attr("x", textData.x + textData.textMargin * 2); + tspan.text(nText); + return textElem; +}, "drawText"); +var drawImage = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_0__/* .__name */ .K2)((elem, x, y, link) => { + const imageElement = elem.append("image"); + imageElement.attr("x", x); + imageElement.attr("y", y); + const sanitizedLink = (0,_braintree_sanitize_url__WEBPACK_IMPORTED_MODULE_1__/* .sanitizeUrl */ .J)(link); + imageElement.attr("xlink:href", sanitizedLink); +}, "drawImage"); +var drawEmbeddedImage = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_0__/* .__name */ .K2)((element, x, y, link) => { + const imageElement = element.append("use"); + imageElement.attr("x", x); + imageElement.attr("y", y); + const sanitizedLink = (0,_braintree_sanitize_url__WEBPACK_IMPORTED_MODULE_1__/* .sanitizeUrl */ .J)(link); + imageElement.attr("xlink:href", `#${sanitizedLink}`); +}, "drawEmbeddedImage"); +var getNoteRect = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_0__/* .__name */ .K2)(() => { + const noteRectData = { + x: 0, + y: 0, + width: 100, + height: 100, + fill: "#EDF2AE", + stroke: "#666", + anchor: "start", + rx: 0, + ry: 0 + }; + return noteRectData; +}, "getNoteRect"); +var getTextObj = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_0__/* .__name */ .K2)(() => { + const testObject = { + x: 0, + y: 0, + width: 100, + height: 100, + "text-anchor": "start", + style: "#666", + textMargin: 0, + rx: 0, + ry: 0, + tspan: true + }; + return testObject; +}, "getTextObj"); + + + + +/***/ }), + +/***/ 4257: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ diagram: () => (/* binding */ diagram) +/* harmony export */ }); +/* harmony import */ var _chunk_AIUMCIBP_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(69323); +/* harmony import */ var _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(64994); +/* harmony import */ var d3__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(20007); + + + +// src/diagrams/user-journey/parser/journey.jison +var parser = function() { + var o = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(k, v, o2, l) { + for (o2 = o2 || {}, l = k.length; l--; o2[k[l]] = v) ; + return o2; + }, "o"), $V0 = [6, 8, 10, 11, 12, 14, 16, 17, 18], $V1 = [1, 9], $V2 = [1, 10], $V3 = [1, 11], $V4 = [1, 12], $V5 = [1, 13], $V6 = [1, 14]; + var parser2 = { + trace: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function trace() { + }, "trace"), + yy: {}, + symbols_: { "error": 2, "start": 3, "journey": 4, "document": 5, "EOF": 6, "line": 7, "SPACE": 8, "statement": 9, "NEWLINE": 10, "title": 11, "acc_title": 12, "acc_title_value": 13, "acc_descr": 14, "acc_descr_value": 15, "acc_descr_multiline_value": 16, "section": 17, "taskName": 18, "taskData": 19, "$accept": 0, "$end": 1 }, + terminals_: { 2: "error", 4: "journey", 6: "EOF", 8: "SPACE", 10: "NEWLINE", 11: "title", 12: "acc_title", 13: "acc_title_value", 14: "acc_descr", 15: "acc_descr_value", 16: "acc_descr_multiline_value", 17: "section", 18: "taskName", 19: "taskData" }, + productions_: [0, [3, 3], [5, 0], [5, 2], [7, 2], [7, 1], [7, 1], [7, 1], [9, 1], [9, 2], [9, 2], [9, 1], [9, 1], [9, 2]], + performAction: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function anonymous(yytext, yyleng, yylineno, yy, yystate, $$, _$) { + var $0 = $$.length - 1; + switch (yystate) { + case 1: + return $$[$0 - 1]; + break; + case 2: + this.$ = []; + break; + case 3: + $$[$0 - 1].push($$[$0]); + this.$ = $$[$0 - 1]; + break; + case 4: + case 5: + this.$ = $$[$0]; + break; + case 6: + case 7: + this.$ = []; + break; + case 8: + yy.setDiagramTitle($$[$0].substr(6)); + this.$ = $$[$0].substr(6); + break; + case 9: + this.$ = $$[$0].trim(); + yy.setAccTitle(this.$); + break; + case 10: + case 11: + this.$ = $$[$0].trim(); + yy.setAccDescription(this.$); + break; + case 12: + yy.addSection($$[$0].substr(8)); + this.$ = $$[$0].substr(8); + break; + case 13: + yy.addTask($$[$0 - 1], $$[$0]); + this.$ = "task"; + break; + } + }, "anonymous"), + table: [{ 3: 1, 4: [1, 2] }, { 1: [3] }, o($V0, [2, 2], { 5: 3 }), { 6: [1, 4], 7: 5, 8: [1, 6], 9: 7, 10: [1, 8], 11: $V1, 12: $V2, 14: $V3, 16: $V4, 17: $V5, 18: $V6 }, o($V0, [2, 7], { 1: [2, 1] }), o($V0, [2, 3]), { 9: 15, 11: $V1, 12: $V2, 14: $V3, 16: $V4, 17: $V5, 18: $V6 }, o($V0, [2, 5]), o($V0, [2, 6]), o($V0, [2, 8]), { 13: [1, 16] }, { 15: [1, 17] }, o($V0, [2, 11]), o($V0, [2, 12]), { 19: [1, 18] }, o($V0, [2, 4]), o($V0, [2, 9]), o($V0, [2, 10]), o($V0, [2, 13])], + defaultActions: {}, + parseError: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function parseError(str, hash) { + if (hash.recoverable) { + this.trace(str); + } else { + var error = new Error(str); + error.hash = hash; + throw error; + } + }, "parseError"), + parse: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function parse(input) { + var self = this, stack = [0], tstack = [], vstack = [null], lstack = [], table = this.table, yytext = "", yylineno = 0, yyleng = 0, recovering = 0, TERROR = 2, EOF = 1; + var args = lstack.slice.call(arguments, 1); + var lexer2 = Object.create(this.lexer); + var sharedState = { yy: {} }; + for (var k in this.yy) { + if (Object.prototype.hasOwnProperty.call(this.yy, k)) { + sharedState.yy[k] = this.yy[k]; + } + } + lexer2.setInput(input, sharedState.yy); + sharedState.yy.lexer = lexer2; + sharedState.yy.parser = this; + if (typeof lexer2.yylloc == "undefined") { + lexer2.yylloc = {}; + } + var yyloc = lexer2.yylloc; + lstack.push(yyloc); + var ranges = lexer2.options && lexer2.options.ranges; + if (typeof sharedState.yy.parseError === "function") { + this.parseError = sharedState.yy.parseError; + } else { + this.parseError = Object.getPrototypeOf(this).parseError; + } + function popStack(n) { + stack.length = stack.length - 2 * n; + vstack.length = vstack.length - n; + lstack.length = lstack.length - n; + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(popStack, "popStack"); + function lex() { + var token; + token = tstack.pop() || lexer2.lex() || EOF; + if (typeof token !== "number") { + if (token instanceof Array) { + tstack = token; + token = tstack.pop(); + } + token = self.symbols_[token] || token; + } + return token; + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(lex, "lex"); + var symbol, preErrorSymbol, state, action, a, r, yyval = {}, p, len, newState, expected; + while (true) { + state = stack[stack.length - 1]; + if (this.defaultActions[state]) { + action = this.defaultActions[state]; + } else { + if (symbol === null || typeof symbol == "undefined") { + symbol = lex(); + } + action = table[state] && table[state][symbol]; + } + if (typeof action === "undefined" || !action.length || !action[0]) { + var errStr = ""; + expected = []; + for (p in table[state]) { + if (this.terminals_[p] && p > TERROR) { + expected.push("'" + this.terminals_[p] + "'"); + } + } + if (lexer2.showPosition) { + errStr = "Parse error on line " + (yylineno + 1) + ":\n" + lexer2.showPosition() + "\nExpecting " + expected.join(", ") + ", got '" + (this.terminals_[symbol] || symbol) + "'"; + } else { + errStr = "Parse error on line " + (yylineno + 1) + ": Unexpected " + (symbol == EOF ? "end of input" : "'" + (this.terminals_[symbol] || symbol) + "'"); + } + this.parseError(errStr, { + text: lexer2.match, + token: this.terminals_[symbol] || symbol, + line: lexer2.yylineno, + loc: yyloc, + expected + }); + } + if (action[0] instanceof Array && action.length > 1) { + throw new Error("Parse Error: multiple actions possible at state: " + state + ", token: " + symbol); + } + switch (action[0]) { + case 1: + stack.push(symbol); + vstack.push(lexer2.yytext); + lstack.push(lexer2.yylloc); + stack.push(action[1]); + symbol = null; + if (!preErrorSymbol) { + yyleng = lexer2.yyleng; + yytext = lexer2.yytext; + yylineno = lexer2.yylineno; + yyloc = lexer2.yylloc; + if (recovering > 0) { + recovering--; + } + } else { + symbol = preErrorSymbol; + preErrorSymbol = null; + } + break; + case 2: + len = this.productions_[action[1]][1]; + yyval.$ = vstack[vstack.length - len]; + yyval._$ = { + first_line: lstack[lstack.length - (len || 1)].first_line, + last_line: lstack[lstack.length - 1].last_line, + first_column: lstack[lstack.length - (len || 1)].first_column, + last_column: lstack[lstack.length - 1].last_column + }; + if (ranges) { + yyval._$.range = [ + lstack[lstack.length - (len || 1)].range[0], + lstack[lstack.length - 1].range[1] + ]; + } + r = this.performAction.apply(yyval, [ + yytext, + yyleng, + yylineno, + sharedState.yy, + action[1], + vstack, + lstack + ].concat(args)); + if (typeof r !== "undefined") { + return r; + } + if (len) { + stack = stack.slice(0, -1 * len * 2); + vstack = vstack.slice(0, -1 * len); + lstack = lstack.slice(0, -1 * len); + } + stack.push(this.productions_[action[1]][0]); + vstack.push(yyval.$); + lstack.push(yyval._$); + newState = table[stack[stack.length - 2]][stack[stack.length - 1]]; + stack.push(newState); + break; + case 3: + return true; + } + } + return true; + }, "parse") + }; + var lexer = /* @__PURE__ */ function() { + var lexer2 = { + EOF: 1, + parseError: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function parseError(str, hash) { + if (this.yy.parser) { + this.yy.parser.parseError(str, hash); + } else { + throw new Error(str); + } + }, "parseError"), + // resets the lexer, sets new input + setInput: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(input, yy) { + this.yy = yy || this.yy || {}; + this._input = input; + this._more = this._backtrack = this.done = false; + this.yylineno = this.yyleng = 0; + this.yytext = this.matched = this.match = ""; + this.conditionStack = ["INITIAL"]; + this.yylloc = { + first_line: 1, + first_column: 0, + last_line: 1, + last_column: 0 + }; + if (this.options.ranges) { + this.yylloc.range = [0, 0]; + } + this.offset = 0; + return this; + }, "setInput"), + // consumes and returns one char from the input + input: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + var ch = this._input[0]; + this.yytext += ch; + this.yyleng++; + this.offset++; + this.match += ch; + this.matched += ch; + var lines = ch.match(/(?:\r\n?|\n).*/g); + if (lines) { + this.yylineno++; + this.yylloc.last_line++; + } else { + this.yylloc.last_column++; + } + if (this.options.ranges) { + this.yylloc.range[1]++; + } + this._input = this._input.slice(1); + return ch; + }, "input"), + // unshifts one char (or a string) into the input + unput: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(ch) { + var len = ch.length; + var lines = ch.split(/(?:\r\n?|\n)/g); + this._input = ch + this._input; + this.yytext = this.yytext.substr(0, this.yytext.length - len); + this.offset -= len; + var oldLines = this.match.split(/(?:\r\n?|\n)/g); + this.match = this.match.substr(0, this.match.length - 1); + this.matched = this.matched.substr(0, this.matched.length - 1); + if (lines.length - 1) { + this.yylineno -= lines.length - 1; + } + var r = this.yylloc.range; + this.yylloc = { + first_line: this.yylloc.first_line, + last_line: this.yylineno + 1, + first_column: this.yylloc.first_column, + last_column: lines ? (lines.length === oldLines.length ? this.yylloc.first_column : 0) + oldLines[oldLines.length - lines.length].length - lines[0].length : this.yylloc.first_column - len + }; + if (this.options.ranges) { + this.yylloc.range = [r[0], r[0] + this.yyleng - len]; + } + this.yyleng = this.yytext.length; + return this; + }, "unput"), + // When called from action, caches matched text and appends it on next action + more: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + this._more = true; + return this; + }, "more"), + // When called from action, signals the lexer that this rule fails to match the input, so the next matching rule (regex) should be tested instead. + reject: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + if (this.options.backtrack_lexer) { + this._backtrack = true; + } else { + return this.parseError("Lexical error on line " + (this.yylineno + 1) + ". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n" + this.showPosition(), { + text: "", + token: null, + line: this.yylineno + }); + } + return this; + }, "reject"), + // retain first n characters of the match + less: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(n) { + this.unput(this.match.slice(n)); + }, "less"), + // displays already matched input, i.e. for error messages + pastInput: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + var past = this.matched.substr(0, this.matched.length - this.match.length); + return (past.length > 20 ? "..." : "") + past.substr(-20).replace(/\n/g, ""); + }, "pastInput"), + // displays upcoming input, i.e. for error messages + upcomingInput: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + var next = this.match; + if (next.length < 20) { + next += this._input.substr(0, 20 - next.length); + } + return (next.substr(0, 20) + (next.length > 20 ? "..." : "")).replace(/\n/g, ""); + }, "upcomingInput"), + // displays the character position where the lexing error occurred, i.e. for error messages + showPosition: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + var pre = this.pastInput(); + var c = new Array(pre.length + 1).join("-"); + return pre + this.upcomingInput() + "\n" + c + "^"; + }, "showPosition"), + // test the lexed token: return FALSE when not a match, otherwise return token + test_match: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(match, indexed_rule) { + var token, lines, backup; + if (this.options.backtrack_lexer) { + backup = { + yylineno: this.yylineno, + yylloc: { + first_line: this.yylloc.first_line, + last_line: this.last_line, + first_column: this.yylloc.first_column, + last_column: this.yylloc.last_column + }, + yytext: this.yytext, + match: this.match, + matches: this.matches, + matched: this.matched, + yyleng: this.yyleng, + offset: this.offset, + _more: this._more, + _input: this._input, + yy: this.yy, + conditionStack: this.conditionStack.slice(0), + done: this.done + }; + if (this.options.ranges) { + backup.yylloc.range = this.yylloc.range.slice(0); + } + } + lines = match[0].match(/(?:\r\n?|\n).*/g); + if (lines) { + this.yylineno += lines.length; + } + this.yylloc = { + first_line: this.yylloc.last_line, + last_line: this.yylineno + 1, + first_column: this.yylloc.last_column, + last_column: lines ? lines[lines.length - 1].length - lines[lines.length - 1].match(/\r?\n?/)[0].length : this.yylloc.last_column + match[0].length + }; + this.yytext += match[0]; + this.match += match[0]; + this.matches = match; + this.yyleng = this.yytext.length; + if (this.options.ranges) { + this.yylloc.range = [this.offset, this.offset += this.yyleng]; + } + this._more = false; + this._backtrack = false; + this._input = this._input.slice(match[0].length); + this.matched += match[0]; + token = this.performAction.call(this, this.yy, this, indexed_rule, this.conditionStack[this.conditionStack.length - 1]); + if (this.done && this._input) { + this.done = false; + } + if (token) { + return token; + } else if (this._backtrack) { + for (var k in backup) { + this[k] = backup[k]; + } + return false; + } + return false; + }, "test_match"), + // return next match in input + next: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + if (this.done) { + return this.EOF; + } + if (!this._input) { + this.done = true; + } + var token, match, tempMatch, index; + if (!this._more) { + this.yytext = ""; + this.match = ""; + } + var rules = this._currentRules(); + for (var i = 0; i < rules.length; i++) { + tempMatch = this._input.match(this.rules[rules[i]]); + if (tempMatch && (!match || tempMatch[0].length > match[0].length)) { + match = tempMatch; + index = i; + if (this.options.backtrack_lexer) { + token = this.test_match(tempMatch, rules[i]); + if (token !== false) { + return token; + } else if (this._backtrack) { + match = false; + continue; + } else { + return false; + } + } else if (!this.options.flex) { + break; + } + } + } + if (match) { + token = this.test_match(match, rules[index]); + if (token !== false) { + return token; + } + return false; + } + if (this._input === "") { + return this.EOF; + } else { + return this.parseError("Lexical error on line " + (this.yylineno + 1) + ". Unrecognized text.\n" + this.showPosition(), { + text: "", + token: null, + line: this.yylineno + }); + } + }, "next"), + // return next match that has a token + lex: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function lex() { + var r = this.next(); + if (r) { + return r; + } else { + return this.lex(); + } + }, "lex"), + // activates a new lexer condition state (pushes the new lexer condition state onto the condition stack) + begin: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function begin(condition) { + this.conditionStack.push(condition); + }, "begin"), + // pop the previously active lexer condition state off the condition stack + popState: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function popState() { + var n = this.conditionStack.length - 1; + if (n > 0) { + return this.conditionStack.pop(); + } else { + return this.conditionStack[0]; + } + }, "popState"), + // produce the lexer rule set which is active for the currently active lexer condition state + _currentRules: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function _currentRules() { + if (this.conditionStack.length && this.conditionStack[this.conditionStack.length - 1]) { + return this.conditions[this.conditionStack[this.conditionStack.length - 1]].rules; + } else { + return this.conditions["INITIAL"].rules; + } + }, "_currentRules"), + // return the currently active lexer condition state; when an index argument is provided it produces the N-th previous condition state, if available + topState: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function topState(n) { + n = this.conditionStack.length - 1 - Math.abs(n || 0); + if (n >= 0) { + return this.conditionStack[n]; + } else { + return "INITIAL"; + } + }, "topState"), + // alias for begin(condition) + pushState: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function pushState(condition) { + this.begin(condition); + }, "pushState"), + // return the number of states currently on the stack + stateStackSize: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function stateStackSize() { + return this.conditionStack.length; + }, "stateStackSize"), + options: { "case-insensitive": true }, + performAction: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function anonymous(yy, yy_, $avoiding_name_collisions, YY_START) { + var YYSTATE = YY_START; + switch ($avoiding_name_collisions) { + case 0: + break; + case 1: + break; + case 2: + return 10; + break; + case 3: + break; + case 4: + break; + case 5: + return 4; + break; + case 6: + return 11; + break; + case 7: + this.begin("acc_title"); + return 12; + break; + case 8: + this.popState(); + return "acc_title_value"; + break; + case 9: + this.begin("acc_descr"); + return 14; + break; + case 10: + this.popState(); + return "acc_descr_value"; + break; + case 11: + this.begin("acc_descr_multiline"); + break; + case 12: + this.popState(); + break; + case 13: + return "acc_descr_multiline_value"; + break; + case 14: + return 17; + break; + case 15: + return 18; + break; + case 16: + return 19; + break; + case 17: + return ":"; + break; + case 18: + return 6; + break; + case 19: + return "INVALID"; + break; + } + }, "anonymous"), + rules: [/^(?:%(?!\{)[^\n]*)/i, /^(?:[^\}]%%[^\n]*)/i, /^(?:[\n]+)/i, /^(?:\s+)/i, /^(?:#[^\n]*)/i, /^(?:journey\b)/i, /^(?:title\s[^#\n;]+)/i, /^(?:accTitle\s*:\s*)/i, /^(?:(?!\n||)*[^\n]*)/i, /^(?:accDescr\s*:\s*)/i, /^(?:(?!\n||)*[^\n]*)/i, /^(?:accDescr\s*\{\s*)/i, /^(?:[\}])/i, /^(?:[^\}]*)/i, /^(?:section\s[^#:\n;]+)/i, /^(?:[^#:\n;]+)/i, /^(?::[^#\n;]+)/i, /^(?::)/i, /^(?:$)/i, /^(?:.)/i], + conditions: { "acc_descr_multiline": { "rules": [12, 13], "inclusive": false }, "acc_descr": { "rules": [10], "inclusive": false }, "acc_title": { "rules": [8], "inclusive": false }, "INITIAL": { "rules": [0, 1, 2, 3, 4, 5, 6, 7, 9, 11, 14, 15, 16, 17, 18, 19], "inclusive": true } } + }; + return lexer2; + }(); + parser2.lexer = lexer; + function Parser() { + this.yy = {}; + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(Parser, "Parser"); + Parser.prototype = parser2; + parser2.Parser = Parser; + return new Parser(); +}(); +parser.parser = parser; +var journey_default = parser; + +// src/diagrams/user-journey/journeyDb.js +var currentSection = ""; +var sections = []; +var tasks = []; +var rawTasks = []; +var clear2 = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + sections.length = 0; + tasks.length = 0; + currentSection = ""; + rawTasks.length = 0; + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .clear */ .IU)(); +}, "clear"); +var addSection = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(txt) { + currentSection = txt; + sections.push(txt); +}, "addSection"); +var getSections = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + return sections; +}, "getSections"); +var getTasks = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + let allItemsProcessed = compileTasks(); + const maxDepth = 100; + let iterationCount = 0; + while (!allItemsProcessed && iterationCount < maxDepth) { + allItemsProcessed = compileTasks(); + iterationCount++; + } + tasks.push(...rawTasks); + return tasks; +}, "getTasks"); +var updateActors = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + const tempActors = []; + tasks.forEach((task) => { + if (task.people) { + tempActors.push(...task.people); + } + }); + const unique = new Set(tempActors); + return [...unique].sort(); +}, "updateActors"); +var addTask = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(descr, taskData) { + const pieces = taskData.substr(1).split(":"); + let score = 0; + let peeps = []; + if (pieces.length === 1) { + score = Number(pieces[0]); + peeps = []; + } else { + score = Number(pieces[0]); + peeps = pieces[1].split(","); + } + const peopleList = peeps.map((s) => s.trim()); + const rawTask = { + section: currentSection, + type: currentSection, + people: peopleList, + task: descr, + score + }; + rawTasks.push(rawTask); +}, "addTask"); +var addTaskOrg = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(descr) { + const newTask = { + section: currentSection, + type: currentSection, + description: descr, + task: descr, + classes: [] + }; + tasks.push(newTask); +}, "addTaskOrg"); +var compileTasks = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + const compileTask = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(pos) { + return rawTasks[pos].processed; + }, "compileTask"); + let allProcessed = true; + for (const [i, rawTask] of rawTasks.entries()) { + compileTask(i); + allProcessed = allProcessed && rawTask.processed; + } + return allProcessed; +}, "compileTasks"); +var getActors = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + return updateActors(); +}, "getActors"); +var journeyDb_default = { + getConfig: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(() => (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .getConfig2 */ .D7)().journey, "getConfig"), + clear: clear2, + setDiagramTitle: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .setDiagramTitle */ .ke, + getDiagramTitle: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .getDiagramTitle */ .ab, + setAccTitle: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .setAccTitle */ .SV, + getAccTitle: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .getAccTitle */ .iN, + setAccDescription: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .setAccDescription */ .EI, + getAccDescription: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .getAccDescription */ .m7, + addSection, + getSections, + getTasks, + addTask, + addTaskOrg, + getActors +}; + +// src/diagrams/user-journey/styles.js +var getStyles = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)((options) => `.label { + font-family: 'trebuchet ms', verdana, arial, sans-serif; + font-family: var(--mermaid-font-family); + color: ${options.textColor}; + } + .mouth { + stroke: #666; + } + + line { + stroke: ${options.textColor} + } + + .legend { + fill: ${options.textColor}; + } + + .label text { + fill: #333; + } + .label { + color: ${options.textColor} + } + + .face { + ${options.faceColor ? `fill: ${options.faceColor}` : "fill: #FFF8DC"}; + stroke: #999; + } + + .node rect, + .node circle, + .node ellipse, + .node polygon, + .node path { + fill: ${options.mainBkg}; + stroke: ${options.nodeBorder}; + stroke-width: 1px; + } + + .node .label { + text-align: center; + } + .node.clickable { + cursor: pointer; + } + + .arrowheadPath { + fill: ${options.arrowheadColor}; + } + + .edgePath .path { + stroke: ${options.lineColor}; + stroke-width: 1.5px; + } + + .flowchart-link { + stroke: ${options.lineColor}; + fill: none; + } + + .edgeLabel { + background-color: ${options.edgeLabelBackground}; + rect { + opacity: 0.5; + } + text-align: center; + } + + .cluster rect { + } + + .cluster text { + fill: ${options.titleColor}; + } + + div.mermaidTooltip { + position: absolute; + text-align: center; + max-width: 200px; + padding: 2px; + font-family: 'trebuchet ms', verdana, arial, sans-serif; + font-family: var(--mermaid-font-family); + font-size: 12px; + background: ${options.tertiaryColor}; + border: 1px solid ${options.border2}; + border-radius: 2px; + pointer-events: none; + z-index: 100; + } + + .task-type-0, .section-type-0 { + ${options.fillType0 ? `fill: ${options.fillType0}` : ""}; + } + .task-type-1, .section-type-1 { + ${options.fillType0 ? `fill: ${options.fillType1}` : ""}; + } + .task-type-2, .section-type-2 { + ${options.fillType0 ? `fill: ${options.fillType2}` : ""}; + } + .task-type-3, .section-type-3 { + ${options.fillType0 ? `fill: ${options.fillType3}` : ""}; + } + .task-type-4, .section-type-4 { + ${options.fillType0 ? `fill: ${options.fillType4}` : ""}; + } + .task-type-5, .section-type-5 { + ${options.fillType0 ? `fill: ${options.fillType5}` : ""}; + } + .task-type-6, .section-type-6 { + ${options.fillType0 ? `fill: ${options.fillType6}` : ""}; + } + .task-type-7, .section-type-7 { + ${options.fillType0 ? `fill: ${options.fillType7}` : ""}; + } + + .actor-0 { + ${options.actor0 ? `fill: ${options.actor0}` : ""}; + } + .actor-1 { + ${options.actor1 ? `fill: ${options.actor1}` : ""}; + } + .actor-2 { + ${options.actor2 ? `fill: ${options.actor2}` : ""}; + } + .actor-3 { + ${options.actor3 ? `fill: ${options.actor3}` : ""}; + } + .actor-4 { + ${options.actor4 ? `fill: ${options.actor4}` : ""}; + } + .actor-5 { + ${options.actor5 ? `fill: ${options.actor5}` : ""}; + } +`, "getStyles"); +var styles_default = getStyles; + +// src/diagrams/user-journey/journeyRenderer.ts + + +// src/diagrams/user-journey/svgDraw.js + +var drawRect2 = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(elem, rectData) { + return (0,_chunk_AIUMCIBP_mjs__WEBPACK_IMPORTED_MODULE_0__/* .drawRect */ .tk)(elem, rectData); +}, "drawRect"); +var drawFace = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(element, faceData) { + const radius = 15; + const circleElement = element.append("circle").attr("cx", faceData.cx).attr("cy", faceData.cy).attr("class", "face").attr("r", radius).attr("stroke-width", 2).attr("overflow", "visible"); + const face = element.append("g"); + face.append("circle").attr("cx", faceData.cx - radius / 3).attr("cy", faceData.cy - radius / 3).attr("r", 1.5).attr("stroke-width", 2).attr("fill", "#666").attr("stroke", "#666"); + face.append("circle").attr("cx", faceData.cx + radius / 3).attr("cy", faceData.cy - radius / 3).attr("r", 1.5).attr("stroke-width", 2).attr("fill", "#666").attr("stroke", "#666"); + function smile(face2) { + const arc = (0,d3__WEBPACK_IMPORTED_MODULE_2__/* .arc */ .JLW)().startAngle(Math.PI / 2).endAngle(3 * (Math.PI / 2)).innerRadius(radius / 2).outerRadius(radius / 2.2); + face2.append("path").attr("class", "mouth").attr("d", arc).attr("transform", "translate(" + faceData.cx + "," + (faceData.cy + 2) + ")"); + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(smile, "smile"); + function sad(face2) { + const arc = (0,d3__WEBPACK_IMPORTED_MODULE_2__/* .arc */ .JLW)().startAngle(3 * Math.PI / 2).endAngle(5 * (Math.PI / 2)).innerRadius(radius / 2).outerRadius(radius / 2.2); + face2.append("path").attr("class", "mouth").attr("d", arc).attr("transform", "translate(" + faceData.cx + "," + (faceData.cy + 7) + ")"); + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(sad, "sad"); + function ambivalent(face2) { + face2.append("line").attr("class", "mouth").attr("stroke", 2).attr("x1", faceData.cx - 5).attr("y1", faceData.cy + 7).attr("x2", faceData.cx + 5).attr("y2", faceData.cy + 7).attr("class", "mouth").attr("stroke-width", "1px").attr("stroke", "#666"); + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(ambivalent, "ambivalent"); + if (faceData.score > 3) { + smile(face); + } else if (faceData.score < 3) { + sad(face); + } else { + ambivalent(face); + } + return circleElement; +}, "drawFace"); +var drawCircle = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(element, circleData) { + const circleElement = element.append("circle"); + circleElement.attr("cx", circleData.cx); + circleElement.attr("cy", circleData.cy); + circleElement.attr("class", "actor-" + circleData.pos); + circleElement.attr("fill", circleData.fill); + circleElement.attr("stroke", circleData.stroke); + circleElement.attr("r", circleData.r); + if (circleElement.class !== void 0) { + circleElement.attr("class", circleElement.class); + } + if (circleData.title !== void 0) { + circleElement.append("title").text(circleData.title); + } + return circleElement; +}, "drawCircle"); +var drawText2 = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(elem, textData) { + return (0,_chunk_AIUMCIBP_mjs__WEBPACK_IMPORTED_MODULE_0__/* .drawText */ .m)(elem, textData); +}, "drawText"); +var drawLabel = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(elem, txtObject) { + function genPoints(x, y, width, height, cut) { + return x + "," + y + " " + (x + width) + "," + y + " " + (x + width) + "," + (y + height - cut) + " " + (x + width - cut * 1.2) + "," + (y + height) + " " + x + "," + (y + height); + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(genPoints, "genPoints"); + const polygon = elem.append("polygon"); + polygon.attr("points", genPoints(txtObject.x, txtObject.y, 50, 20, 7)); + polygon.attr("class", "labelBox"); + txtObject.y = txtObject.y + txtObject.labelMargin; + txtObject.x = txtObject.x + 0.5 * txtObject.labelMargin; + drawText2(elem, txtObject); +}, "drawLabel"); +var drawSection = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(elem, section, conf2) { + const g = elem.append("g"); + const rect = (0,_chunk_AIUMCIBP_mjs__WEBPACK_IMPORTED_MODULE_0__/* .getNoteRect */ .PB)(); + rect.x = section.x; + rect.y = section.y; + rect.fill = section.fill; + rect.width = conf2.width * section.taskCount + // width of the tasks + conf2.diagramMarginX * (section.taskCount - 1); + rect.height = conf2.height; + rect.class = "journey-section section-type-" + section.num; + rect.rx = 3; + rect.ry = 3; + drawRect2(g, rect); + _drawTextCandidateFunc(conf2)( + section.text, + g, + rect.x, + rect.y, + rect.width, + rect.height, + { class: "journey-section section-type-" + section.num }, + conf2, + section.colour + ); +}, "drawSection"); +var taskCount = -1; +var drawTask = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(elem, task, conf2) { + const center = task.x + conf2.width / 2; + const g = elem.append("g"); + taskCount++; + const maxHeight = 300 + 5 * 30; + g.append("line").attr("id", "task" + taskCount).attr("x1", center).attr("y1", task.y).attr("x2", center).attr("y2", maxHeight).attr("class", "task-line").attr("stroke-width", "1px").attr("stroke-dasharray", "4 2").attr("stroke", "#666"); + drawFace(g, { + cx: center, + cy: 300 + (5 - task.score) * 30, + score: task.score + }); + const rect = (0,_chunk_AIUMCIBP_mjs__WEBPACK_IMPORTED_MODULE_0__/* .getNoteRect */ .PB)(); + rect.x = task.x; + rect.y = task.y; + rect.fill = task.fill; + rect.width = conf2.width; + rect.height = conf2.height; + rect.class = "task task-type-" + task.num; + rect.rx = 3; + rect.ry = 3; + drawRect2(g, rect); + let xPos = task.x + 14; + task.people.forEach((person) => { + const colour = task.actors[person].color; + const circle = { + cx: xPos, + cy: task.y, + r: 7, + fill: colour, + stroke: "#000", + title: person, + pos: task.actors[person].position + }; + drawCircle(g, circle); + xPos += 10; + }); + _drawTextCandidateFunc(conf2)( + task.task, + g, + rect.x, + rect.y, + rect.width, + rect.height, + { class: "task" }, + conf2, + task.colour + ); +}, "drawTask"); +var drawBackgroundRect2 = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(elem, bounds2) { + (0,_chunk_AIUMCIBP_mjs__WEBPACK_IMPORTED_MODULE_0__/* .drawBackgroundRect */ .lC)(elem, bounds2); +}, "drawBackgroundRect"); +var _drawTextCandidateFunc = /* @__PURE__ */ function() { + function byText(content, g, x, y, width, height, textAttrs, colour) { + const text = g.append("text").attr("x", x + width / 2).attr("y", y + height / 2 + 5).style("font-color", colour).style("text-anchor", "middle").text(content); + _setTextAttrs(text, textAttrs); + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(byText, "byText"); + function byTspan(content, g, x, y, width, height, textAttrs, conf2, colour) { + const { taskFontSize, taskFontFamily } = conf2; + const lines = content.split(//gi); + for (let i = 0; i < lines.length; i++) { + const dy = i * taskFontSize - taskFontSize * (lines.length - 1) / 2; + const text = g.append("text").attr("x", x + width / 2).attr("y", y).attr("fill", colour).style("text-anchor", "middle").style("font-size", taskFontSize).style("font-family", taskFontFamily); + text.append("tspan").attr("x", x + width / 2).attr("dy", dy).text(lines[i]); + text.attr("y", y + height / 2).attr("dominant-baseline", "central").attr("alignment-baseline", "central"); + _setTextAttrs(text, textAttrs); + } + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(byTspan, "byTspan"); + function byFo(content, g, x, y, width, height, textAttrs, conf2) { + const body = g.append("switch"); + const f = body.append("foreignObject").attr("x", x).attr("y", y).attr("width", width).attr("height", height).attr("position", "fixed"); + const text = f.append("xhtml:div").style("display", "table").style("height", "100%").style("width", "100%"); + text.append("div").attr("class", "label").style("display", "table-cell").style("text-align", "center").style("vertical-align", "middle").text(content); + byTspan(content, body, x, y, width, height, textAttrs, conf2); + _setTextAttrs(text, textAttrs); + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(byFo, "byFo"); + function _setTextAttrs(toText, fromTextAttrsDict) { + for (const key in fromTextAttrsDict) { + if (key in fromTextAttrsDict) { + toText.attr(key, fromTextAttrsDict[key]); + } + } + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(_setTextAttrs, "_setTextAttrs"); + return function(conf2) { + return conf2.textPlacement === "fo" ? byFo : conf2.textPlacement === "old" ? byText : byTspan; + }; +}(); +var initGraphics = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(graphics) { + graphics.append("defs").append("marker").attr("id", "arrowhead").attr("refX", 5).attr("refY", 2).attr("markerWidth", 6).attr("markerHeight", 4).attr("orient", "auto").append("path").attr("d", "M 0,0 V 4 L6,2 Z"); +}, "initGraphics"); +var svgDraw_default = { + drawRect: drawRect2, + drawCircle, + drawSection, + drawText: drawText2, + drawLabel, + drawTask, + drawBackgroundRect: drawBackgroundRect2, + initGraphics +}; + +// src/diagrams/user-journey/journeyRenderer.ts +var setConf = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(cnf) { + const keys = Object.keys(cnf); + keys.forEach(function(key) { + conf[key] = cnf[key]; + }); +}, "setConf"); +var actors = {}; +function drawActorLegend(diagram2) { + const conf2 = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .getConfig2 */ .D7)().journey; + let yPos = 60; + Object.keys(actors).forEach((person) => { + const colour = actors[person].color; + const circleData = { + cx: 20, + cy: yPos, + r: 7, + fill: colour, + stroke: "#000", + pos: actors[person].position + }; + svgDraw_default.drawCircle(diagram2, circleData); + const labelData = { + x: 40, + y: yPos + 7, + fill: "#666", + text: person, + textMargin: conf2.boxTextMargin | 5 + }; + svgDraw_default.drawText(diagram2, labelData); + yPos += 20; + }); +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(drawActorLegend, "drawActorLegend"); +var conf = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .getConfig2 */ .D7)().journey; +var LEFT_MARGIN = conf.leftMargin; +var draw = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(text, id, version, diagObj) { + const conf2 = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .getConfig2 */ .D7)().journey; + const securityLevel = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .getConfig2 */ .D7)().securityLevel; + let sandboxElement; + if (securityLevel === "sandbox") { + sandboxElement = (0,d3__WEBPACK_IMPORTED_MODULE_2__/* .select */ .Ltv)("#i" + id); + } + const root = securityLevel === "sandbox" ? (0,d3__WEBPACK_IMPORTED_MODULE_2__/* .select */ .Ltv)(sandboxElement.nodes()[0].contentDocument.body) : (0,d3__WEBPACK_IMPORTED_MODULE_2__/* .select */ .Ltv)("body"); + bounds.init(); + const diagram2 = root.select("#" + id); + svgDraw_default.initGraphics(diagram2); + const tasks2 = diagObj.db.getTasks(); + const title = diagObj.db.getDiagramTitle(); + const actorNames = diagObj.db.getActors(); + for (const member in actors) { + delete actors[member]; + } + let actorPos = 0; + actorNames.forEach((actorName) => { + actors[actorName] = { + color: conf2.actorColours[actorPos % conf2.actorColours.length], + position: actorPos + }; + actorPos++; + }); + drawActorLegend(diagram2); + bounds.insert(0, 0, LEFT_MARGIN, Object.keys(actors).length * 50); + drawTasks(diagram2, tasks2, 0); + const box = bounds.getBounds(); + if (title) { + diagram2.append("text").text(title).attr("x", LEFT_MARGIN).attr("font-size", "4ex").attr("font-weight", "bold").attr("y", 25); + } + const height = box.stopy - box.starty + 2 * conf2.diagramMarginY; + const width = LEFT_MARGIN + box.stopx + 2 * conf2.diagramMarginX; + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .configureSvgSize */ .a$)(diagram2, height, width, conf2.useMaxWidth); + diagram2.append("line").attr("x1", LEFT_MARGIN).attr("y1", conf2.height * 4).attr("x2", width - LEFT_MARGIN - 4).attr("y2", conf2.height * 4).attr("stroke-width", 4).attr("stroke", "black").attr("marker-end", "url(#arrowhead)"); + const extraVertForTitle = title ? 70 : 0; + diagram2.attr("viewBox", `${box.startx} -25 ${width} ${height + extraVertForTitle}`); + diagram2.attr("preserveAspectRatio", "xMinYMin meet"); + diagram2.attr("height", height + extraVertForTitle + 25); +}, "draw"); +var bounds = { + data: { + startx: void 0, + stopx: void 0, + starty: void 0, + stopy: void 0 + }, + verticalPos: 0, + sequenceItems: [], + init: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + this.sequenceItems = []; + this.data = { + startx: void 0, + stopx: void 0, + starty: void 0, + stopy: void 0 + }; + this.verticalPos = 0; + }, "init"), + updateVal: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(obj, key, val, fun) { + if (obj[key] === void 0) { + obj[key] = val; + } else { + obj[key] = fun(val, obj[key]); + } + }, "updateVal"), + updateBounds: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(startx, starty, stopx, stopy) { + const conf2 = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .getConfig2 */ .D7)().journey; + const _self = this; + let cnt = 0; + function updateFn(type) { + return /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function updateItemBounds(item) { + cnt++; + const n = _self.sequenceItems.length - cnt + 1; + _self.updateVal(item, "starty", starty - n * conf2.boxMargin, Math.min); + _self.updateVal(item, "stopy", stopy + n * conf2.boxMargin, Math.max); + _self.updateVal(bounds.data, "startx", startx - n * conf2.boxMargin, Math.min); + _self.updateVal(bounds.data, "stopx", stopx + n * conf2.boxMargin, Math.max); + if (!(type === "activation")) { + _self.updateVal(item, "startx", startx - n * conf2.boxMargin, Math.min); + _self.updateVal(item, "stopx", stopx + n * conf2.boxMargin, Math.max); + _self.updateVal(bounds.data, "starty", starty - n * conf2.boxMargin, Math.min); + _self.updateVal(bounds.data, "stopy", stopy + n * conf2.boxMargin, Math.max); + } + }, "updateItemBounds"); + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(updateFn, "updateFn"); + this.sequenceItems.forEach(updateFn()); + }, "updateBounds"), + insert: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(startx, starty, stopx, stopy) { + const _startx = Math.min(startx, stopx); + const _stopx = Math.max(startx, stopx); + const _starty = Math.min(starty, stopy); + const _stopy = Math.max(starty, stopy); + this.updateVal(bounds.data, "startx", _startx, Math.min); + this.updateVal(bounds.data, "starty", _starty, Math.min); + this.updateVal(bounds.data, "stopx", _stopx, Math.max); + this.updateVal(bounds.data, "stopy", _stopy, Math.max); + this.updateBounds(_startx, _starty, _stopx, _stopy); + }, "insert"), + bumpVerticalPos: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(bump) { + this.verticalPos = this.verticalPos + bump; + this.data.stopy = this.verticalPos; + }, "bumpVerticalPos"), + getVerticalPos: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + return this.verticalPos; + }, "getVerticalPos"), + getBounds: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + return this.data; + }, "getBounds") +}; +var fills = conf.sectionFills; +var textColours = conf.sectionColours; +var drawTasks = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(diagram2, tasks2, verticalPos) { + const conf2 = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .getConfig2 */ .D7)().journey; + let lastSection = ""; + const sectionVHeight = conf2.height * 2 + conf2.diagramMarginY; + const taskPos = verticalPos + sectionVHeight; + let sectionNumber = 0; + let fill = "#CCC"; + let colour = "black"; + let num = 0; + for (const [i, task] of tasks2.entries()) { + if (lastSection !== task.section) { + fill = fills[sectionNumber % fills.length]; + num = sectionNumber % fills.length; + colour = textColours[sectionNumber % textColours.length]; + let taskInSectionCount = 0; + const currentSection2 = task.section; + for (let taskIndex = i; taskIndex < tasks2.length; taskIndex++) { + if (tasks2[taskIndex].section == currentSection2) { + taskInSectionCount = taskInSectionCount + 1; + } else { + break; + } + } + const section = { + x: i * conf2.taskMargin + i * conf2.width + LEFT_MARGIN, + y: 50, + text: task.section, + fill, + num, + colour, + taskCount: taskInSectionCount + }; + svgDraw_default.drawSection(diagram2, section, conf2); + lastSection = task.section; + sectionNumber++; + } + const taskActors = task.people.reduce((acc, actorName) => { + if (actors[actorName]) { + acc[actorName] = actors[actorName]; + } + return acc; + }, {}); + task.x = i * conf2.taskMargin + i * conf2.width + LEFT_MARGIN; + task.y = taskPos; + task.width = conf2.diagramMarginX; + task.height = conf2.diagramMarginY; + task.colour = colour; + task.fill = fill; + task.num = num; + task.actors = taskActors; + svgDraw_default.drawTask(diagram2, task, conf2); + bounds.insert(task.x, task.y, task.x + task.width + conf2.taskMargin, 300 + 5 * 30); + } +}, "drawTasks"); +var journeyRenderer_default = { + setConf, + draw +}; + +// src/diagrams/user-journey/journeyDiagram.ts +var diagram = { + parser: journey_default, + db: journeyDb_default, + renderer: journeyRenderer_default, + styles: styles_default, + init: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)((cnf) => { + journeyRenderer_default.setConf(cnf.journey); + journeyDb_default.clear(); + }, "init") +}; + + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/261.e26e4393.js b/assets/js/261.e26e4393.js new file mode 100644 index 00000000..1c1540f8 --- /dev/null +++ b/assets/js/261.e26e4393.js @@ -0,0 +1,10534 @@ +"use strict"; +exports.id = 261; +exports.ids = [261]; +exports.modules = { + +/***/ 62334: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + Zp: () => (/* reexport */ layout) +}); + +// UNUSED EXPORTS: acyclic, normalize, rank + +// EXTERNAL MODULE: ./node_modules/lodash-es/forEach.js +var forEach = __webpack_require__(8058); +// EXTERNAL MODULE: ./node_modules/lodash-es/toString.js + 1 modules +var lodash_es_toString = __webpack_require__(28894); +;// CONCATENATED MODULE: ./node_modules/lodash-es/uniqueId.js + + +/** Used to generate unique IDs. */ +var idCounter = 0; + +/** + * Generates a unique ID. If `prefix` is given, the ID is appended to it. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Util + * @param {string} [prefix=''] The value to prefix the ID with. + * @returns {string} Returns the unique ID. + * @example + * + * _.uniqueId('contact_'); + * // => 'contact_104' + * + * _.uniqueId(); + * // => '105' + */ +function uniqueId(prefix) { + var id = ++idCounter; + return (0,lodash_es_toString/* default */.A)(prefix) + id; +} + +/* harmony default export */ const lodash_es_uniqueId = (uniqueId); + +// EXTERNAL MODULE: ./node_modules/lodash-es/has.js + 1 modules +var has = __webpack_require__(48585); +// EXTERNAL MODULE: ./node_modules/lodash-es/constant.js +var constant = __webpack_require__(39142); +// EXTERNAL MODULE: ./node_modules/lodash-es/flatten.js +var flatten = __webpack_require__(34098); +// EXTERNAL MODULE: ./node_modules/lodash-es/map.js +var map = __webpack_require__(74722); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseRange.js +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeCeil = Math.ceil, + nativeMax = Math.max; + +/** + * The base implementation of `_.range` and `_.rangeRight` which doesn't + * coerce arguments. + * + * @private + * @param {number} start The start of the range. + * @param {number} end The end of the range. + * @param {number} step The value to increment or decrement by. + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {Array} Returns the range of numbers. + */ +function baseRange(start, end, step, fromRight) { + var index = -1, + length = nativeMax(nativeCeil((end - start) / (step || 1)), 0), + result = Array(length); + + while (length--) { + result[fromRight ? length : ++index] = start; + start += step; + } + return result; +} + +/* harmony default export */ const _baseRange = (baseRange); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_isIterateeCall.js +var _isIterateeCall = __webpack_require__(6832); +// EXTERNAL MODULE: ./node_modules/lodash-es/toFinite.js + 3 modules +var toFinite = __webpack_require__(74342); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_createRange.js + + + + +/** + * Creates a `_.range` or `_.rangeRight` function. + * + * @private + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {Function} Returns the new range function. + */ +function createRange(fromRight) { + return function(start, end, step) { + if (step && typeof step != 'number' && (0,_isIterateeCall/* default */.A)(start, end, step)) { + end = step = undefined; + } + // Ensure the sign of `-0` is preserved. + start = (0,toFinite/* default */.A)(start); + if (end === undefined) { + end = start; + start = 0; + } else { + end = (0,toFinite/* default */.A)(end); + } + step = step === undefined ? (start < end ? 1 : -1) : (0,toFinite/* default */.A)(step); + return _baseRange(start, end, step, fromRight); + }; +} + +/* harmony default export */ const _createRange = (createRange); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/range.js + + +/** + * Creates an array of numbers (positive and/or negative) progressing from + * `start` up to, but not including, `end`. A step of `-1` is used if a negative + * `start` is specified without an `end` or `step`. If `end` is not specified, + * it's set to `start` with `start` then set to `0`. + * + * **Note:** JavaScript follows the IEEE-754 standard for resolving + * floating-point values which can produce unexpected results. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Util + * @param {number} [start=0] The start of the range. + * @param {number} end The end of the range. + * @param {number} [step=1] The value to increment or decrement by. + * @returns {Array} Returns the range of numbers. + * @see _.inRange, _.rangeRight + * @example + * + * _.range(4); + * // => [0, 1, 2, 3] + * + * _.range(-4); + * // => [0, -1, -2, -3] + * + * _.range(1, 5); + * // => [1, 2, 3, 4] + * + * _.range(0, 20, 5); + * // => [0, 5, 10, 15] + * + * _.range(0, -4, -1); + * // => [0, -1, -2, -3] + * + * _.range(1, 4, 0); + * // => [1, 1, 1] + * + * _.range(0); + * // => [] + */ +var range = _createRange(); + +/* harmony default export */ const lodash_es_range = (range); + +// EXTERNAL MODULE: ./node_modules/dagre-d3-es/src/graphlib/index.js +var graphlib = __webpack_require__(697); +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/data/list.js +/* + * Simple doubly linked list implementation derived from Cormen, et al., + * "Introduction to Algorithms". + */ + + + +class List { + constructor() { + var sentinel = {}; + sentinel._next = sentinel._prev = sentinel; + this._sentinel = sentinel; + } + dequeue() { + var sentinel = this._sentinel; + var entry = sentinel._prev; + if (entry !== sentinel) { + unlink(entry); + return entry; + } + } + enqueue(entry) { + var sentinel = this._sentinel; + if (entry._prev && entry._next) { + unlink(entry); + } + entry._next = sentinel._next; + sentinel._next._prev = entry; + sentinel._next = entry; + entry._prev = sentinel; + } + toString() { + var strs = []; + var sentinel = this._sentinel; + var curr = sentinel._prev; + while (curr !== sentinel) { + strs.push(JSON.stringify(curr, filterOutLinks)); + curr = curr._prev; + } + return '[' + strs.join(', ') + ']'; + } +} + +function unlink(entry) { + entry._prev._next = entry._next; + entry._next._prev = entry._prev; + delete entry._next; + delete entry._prev; +} + +function filterOutLinks(k, v) { + if (k !== '_next' && k !== '_prev') { + return v; + } +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/greedy-fas.js + + + + +/* + * A greedy heuristic for finding a feedback arc set for a graph. A feedback + * arc set is a set of edges that can be removed to make a graph acyclic. + * The algorithm comes from: P. Eades, X. Lin, and W. F. Smyth, "A fast and + * effective heuristic for the feedback arc set problem." This implementation + * adjusts that from the paper to allow for weighted edges. + */ + + +var DEFAULT_WEIGHT_FN = constant/* default */.A(1); + +function greedyFAS(g, weightFn) { + if (g.nodeCount() <= 1) { + return []; + } + var state = buildState(g, weightFn || DEFAULT_WEIGHT_FN); + var results = doGreedyFAS(state.graph, state.buckets, state.zeroIdx); + + // Expand multi-edges + return flatten/* default */.A( + map/* default */.A(results, function (e) { + return g.outEdges(e.v, e.w); + }) + ); +} + +function doGreedyFAS(g, buckets, zeroIdx) { + var results = []; + var sources = buckets[buckets.length - 1]; + var sinks = buckets[0]; + + var entry; + while (g.nodeCount()) { + while ((entry = sinks.dequeue())) { + removeNode(g, buckets, zeroIdx, entry); + } + while ((entry = sources.dequeue())) { + removeNode(g, buckets, zeroIdx, entry); + } + if (g.nodeCount()) { + for (var i = buckets.length - 2; i > 0; --i) { + entry = buckets[i].dequeue(); + if (entry) { + results = results.concat(removeNode(g, buckets, zeroIdx, entry, true)); + break; + } + } + } + } + + return results; +} + +function removeNode(g, buckets, zeroIdx, entry, collectPredecessors) { + var results = collectPredecessors ? [] : undefined; + + forEach/* default */.A(g.inEdges(entry.v), function (edge) { + var weight = g.edge(edge); + var uEntry = g.node(edge.v); + + if (collectPredecessors) { + results.push({ v: edge.v, w: edge.w }); + } + + uEntry.out -= weight; + assignBucket(buckets, zeroIdx, uEntry); + }); + + forEach/* default */.A(g.outEdges(entry.v), function (edge) { + var weight = g.edge(edge); + var w = edge.w; + var wEntry = g.node(w); + wEntry['in'] -= weight; + assignBucket(buckets, zeroIdx, wEntry); + }); + + g.removeNode(entry.v); + + return results; +} + +function buildState(g, weightFn) { + var fasGraph = new graphlib/* Graph */.T(); + var maxIn = 0; + var maxOut = 0; + + forEach/* default */.A(g.nodes(), function (v) { + fasGraph.setNode(v, { v: v, in: 0, out: 0 }); + }); + + // Aggregate weights on nodes, but also sum the weights across multi-edges + // into a single edge for the fasGraph. + forEach/* default */.A(g.edges(), function (e) { + var prevWeight = fasGraph.edge(e.v, e.w) || 0; + var weight = weightFn(e); + var edgeWeight = prevWeight + weight; + fasGraph.setEdge(e.v, e.w, edgeWeight); + maxOut = Math.max(maxOut, (fasGraph.node(e.v).out += weight)); + maxIn = Math.max(maxIn, (fasGraph.node(e.w)['in'] += weight)); + }); + + var buckets = lodash_es_range(maxOut + maxIn + 3).map(function () { + return new List(); + }); + var zeroIdx = maxIn + 1; + + forEach/* default */.A(fasGraph.nodes(), function (v) { + assignBucket(buckets, zeroIdx, fasGraph.node(v)); + }); + + return { graph: fasGraph, buckets: buckets, zeroIdx: zeroIdx }; +} + +function assignBucket(buckets, zeroIdx, entry) { + if (!entry.out) { + buckets[0].enqueue(entry); + } else if (!entry['in']) { + buckets[buckets.length - 1].enqueue(entry); + } else { + buckets[entry.out - entry['in'] + zeroIdx].enqueue(entry); + } +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/acyclic.js + + + + + +function run(g) { + var fas = g.graph().acyclicer === 'greedy' ? greedyFAS(g, weightFn(g)) : dfsFAS(g); + forEach/* default */.A(fas, function (e) { + var label = g.edge(e); + g.removeEdge(e); + label.forwardName = e.name; + label.reversed = true; + g.setEdge(e.w, e.v, label, lodash_es_uniqueId('rev')); + }); + + function weightFn(g) { + return function (e) { + return g.edge(e).weight; + }; + } +} + +function dfsFAS(g) { + var fas = []; + var stack = {}; + var visited = {}; + + function dfs(v) { + if (has/* default */.A(visited, v)) { + return; + } + visited[v] = true; + stack[v] = true; + forEach/* default */.A(g.outEdges(v), function (e) { + if (has/* default */.A(stack, e.w)) { + fas.push(e); + } else { + dfs(e.w); + } + }); + delete stack[v]; + } + + forEach/* default */.A(g.nodes(), dfs); + return fas; +} + +function undo(g) { + forEach/* default */.A(g.edges(), function (e) { + var label = g.edge(e); + if (label.reversed) { + g.removeEdge(e); + + var forwardName = label.forwardName; + delete label.reversed; + delete label.forwardName; + g.setEdge(e.w, e.v, label, forwardName); + } + }); +} + +// EXTERNAL MODULE: ./node_modules/lodash-es/merge.js + 6 modules +var merge = __webpack_require__(42837); +// EXTERNAL MODULE: ./node_modules/lodash-es/_basePickBy.js + 1 modules +var _basePickBy = __webpack_require__(99354); +// EXTERNAL MODULE: ./node_modules/lodash-es/hasIn.js + 1 modules +var hasIn = __webpack_require__(16807); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_basePick.js + + + +/** + * The base implementation of `_.pick` without support for individual + * property identifiers. + * + * @private + * @param {Object} object The source object. + * @param {string[]} paths The property paths to pick. + * @returns {Object} Returns the new object. + */ +function basePick(object, paths) { + return (0,_basePickBy/* default */.A)(object, paths, function(value, path) { + return (0,hasIn/* default */.A)(object, path); + }); +} + +/* harmony default export */ const _basePick = (basePick); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_overRest.js + 1 modules +var _overRest = __webpack_require__(76875); +// EXTERNAL MODULE: ./node_modules/lodash-es/_setToString.js + 2 modules +var _setToString = __webpack_require__(67525); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_flatRest.js + + + + +/** + * A specialized version of `baseRest` which flattens the rest array. + * + * @private + * @param {Function} func The function to apply a rest parameter to. + * @returns {Function} Returns the new function. + */ +function flatRest(func) { + return (0,_setToString/* default */.A)((0,_overRest/* default */.A)(func, undefined, flatten/* default */.A), func + ''); +} + +/* harmony default export */ const _flatRest = (flatRest); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/pick.js + + + +/** + * Creates an object composed of the picked `object` properties. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The source object. + * @param {...(string|string[])} [paths] The property paths to pick. + * @returns {Object} Returns the new object. + * @example + * + * var object = { 'a': 1, 'b': '2', 'c': 3 }; + * + * _.pick(object, ['a', 'c']); + * // => { 'a': 1, 'c': 3 } + */ +var pick = _flatRest(function(object, paths) { + return object == null ? {} : _basePick(object, paths); +}); + +/* harmony default export */ const lodash_es_pick = (pick); + +// EXTERNAL MODULE: ./node_modules/lodash-es/defaults.js +var defaults = __webpack_require__(23068); +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseExtremum.js +var _baseExtremum = __webpack_require__(72559); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseGt.js +/** + * The base implementation of `_.gt` which doesn't coerce arguments. + * + * @private + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {boolean} Returns `true` if `value` is greater than `other`, + * else `false`. + */ +function baseGt(value, other) { + return value > other; +} + +/* harmony default export */ const _baseGt = (baseGt); + +// EXTERNAL MODULE: ./node_modules/lodash-es/identity.js +var identity = __webpack_require__(29008); +;// CONCATENATED MODULE: ./node_modules/lodash-es/max.js + + + + +/** + * Computes the maximum value of `array`. If `array` is empty or falsey, + * `undefined` is returned. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Math + * @param {Array} array The array to iterate over. + * @returns {*} Returns the maximum value. + * @example + * + * _.max([4, 2, 8, 6]); + * // => 8 + * + * _.max([]); + * // => undefined + */ +function max(array) { + return (array && array.length) + ? (0,_baseExtremum/* default */.A)(array, identity/* default */.A, _baseGt) + : undefined; +} + +/* harmony default export */ const lodash_es_max = (max); + +// EXTERNAL MODULE: ./node_modules/lodash-es/last.js +var lodash_es_last = __webpack_require__(26666); +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseAssignValue.js +var _baseAssignValue = __webpack_require__(52528); +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseForOwn.js +var _baseForOwn = __webpack_require__(79841); +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseIteratee.js + 15 modules +var _baseIteratee = __webpack_require__(23958); +;// CONCATENATED MODULE: ./node_modules/lodash-es/mapValues.js + + + + +/** + * Creates an object with the same keys as `object` and values generated + * by running each own enumerable string keyed property of `object` thru + * `iteratee`. The iteratee is invoked with three arguments: + * (value, key, object). + * + * @static + * @memberOf _ + * @since 2.4.0 + * @category Object + * @param {Object} object The object to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Object} Returns the new mapped object. + * @see _.mapKeys + * @example + * + * var users = { + * 'fred': { 'user': 'fred', 'age': 40 }, + * 'pebbles': { 'user': 'pebbles', 'age': 1 } + * }; + * + * _.mapValues(users, function(o) { return o.age; }); + * // => { 'fred': 40, 'pebbles': 1 } (iteration order is not guaranteed) + * + * // The `_.property` iteratee shorthand. + * _.mapValues(users, 'age'); + * // => { 'fred': 40, 'pebbles': 1 } (iteration order is not guaranteed) + */ +function mapValues(object, iteratee) { + var result = {}; + iteratee = (0,_baseIteratee/* default */.A)(iteratee, 3); + + (0,_baseForOwn/* default */.A)(object, function(value, key, object) { + (0,_baseAssignValue/* default */.A)(result, key, iteratee(value, key, object)); + }); + return result; +} + +/* harmony default export */ const lodash_es_mapValues = (mapValues); + +// EXTERNAL MODULE: ./node_modules/lodash-es/isUndefined.js +var isUndefined = __webpack_require__(69592); +// EXTERNAL MODULE: ./node_modules/lodash-es/min.js +var lodash_es_min = __webpack_require__(86452); +// EXTERNAL MODULE: ./node_modules/lodash-es/_root.js +var _root = __webpack_require__(41917); +;// CONCATENATED MODULE: ./node_modules/lodash-es/now.js + + +/** + * Gets the timestamp of the number of milliseconds that have elapsed since + * the Unix epoch (1 January 1970 00:00:00 UTC). + * + * @static + * @memberOf _ + * @since 2.4.0 + * @category Date + * @returns {number} Returns the timestamp. + * @example + * + * _.defer(function(stamp) { + * console.log(_.now() - stamp); + * }, _.now()); + * // => Logs the number of milliseconds it took for the deferred invocation. + */ +var now = function() { + return _root/* default */.A.Date.now(); +}; + +/* harmony default export */ const lodash_es_now = (now); + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/util.js +/* provided dependency */ var console = __webpack_require__(96763); + + + + + +/* + * Adds a dummy node to the graph and return v. + */ +function addDummyNode(g, type, attrs, name) { + var v; + do { + v = lodash_es_uniqueId(name); + } while (g.hasNode(v)); + + attrs.dummy = type; + g.setNode(v, attrs); + return v; +} + +/* + * Returns a new graph with only simple edges. Handles aggregation of data + * associated with multi-edges. + */ +function simplify(g) { + var simplified = new graphlib/* Graph */.T().setGraph(g.graph()); + forEach/* default */.A(g.nodes(), function (v) { + simplified.setNode(v, g.node(v)); + }); + forEach/* default */.A(g.edges(), function (e) { + var simpleLabel = simplified.edge(e.v, e.w) || { weight: 0, minlen: 1 }; + var label = g.edge(e); + simplified.setEdge(e.v, e.w, { + weight: simpleLabel.weight + label.weight, + minlen: Math.max(simpleLabel.minlen, label.minlen), + }); + }); + return simplified; +} + +function asNonCompoundGraph(g) { + var simplified = new graphlib/* Graph */.T({ multigraph: g.isMultigraph() }).setGraph(g.graph()); + forEach/* default */.A(g.nodes(), function (v) { + if (!g.children(v).length) { + simplified.setNode(v, g.node(v)); + } + }); + forEach/* default */.A(g.edges(), function (e) { + simplified.setEdge(e, g.edge(e)); + }); + return simplified; +} + +function successorWeights(g) { + var weightMap = _.map(g.nodes(), function (v) { + var sucs = {}; + _.forEach(g.outEdges(v), function (e) { + sucs[e.w] = (sucs[e.w] || 0) + g.edge(e).weight; + }); + return sucs; + }); + return _.zipObject(g.nodes(), weightMap); +} + +function predecessorWeights(g) { + var weightMap = _.map(g.nodes(), function (v) { + var preds = {}; + _.forEach(g.inEdges(v), function (e) { + preds[e.v] = (preds[e.v] || 0) + g.edge(e).weight; + }); + return preds; + }); + return _.zipObject(g.nodes(), weightMap); +} + +/* + * Finds where a line starting at point ({x, y}) would intersect a rectangle + * ({x, y, width, height}) if it were pointing at the rectangle's center. + */ +function intersectRect(rect, point) { + var x = rect.x; + var y = rect.y; + + // Rectangle intersection algorithm from: + // http://math.stackexchange.com/questions/108113/find-edge-between-two-boxes + var dx = point.x - x; + var dy = point.y - y; + var w = rect.width / 2; + var h = rect.height / 2; + + if (!dx && !dy) { + throw new Error('Not possible to find intersection inside of the rectangle'); + } + + var sx, sy; + if (Math.abs(dy) * w > Math.abs(dx) * h) { + // Intersection is top or bottom of rect. + if (dy < 0) { + h = -h; + } + sx = (h * dx) / dy; + sy = h; + } else { + // Intersection is left or right of rect. + if (dx < 0) { + w = -w; + } + sx = w; + sy = (w * dy) / dx; + } + + return { x: x + sx, y: y + sy }; +} + +/* + * Given a DAG with each node assigned "rank" and "order" properties, this + * function will produce a matrix with the ids of each node. + */ +function buildLayerMatrix(g) { + var layering = map/* default */.A(lodash_es_range(util_maxRank(g) + 1), function () { + return []; + }); + forEach/* default */.A(g.nodes(), function (v) { + var node = g.node(v); + var rank = node.rank; + if (!isUndefined/* default */.A(rank)) { + layering[rank][node.order] = v; + } + }); + return layering; +} + +/* + * Adjusts the ranks for all nodes in the graph such that all nodes v have + * rank(v) >= 0 and at least one node w has rank(w) = 0. + */ +function normalizeRanks(g) { + var min = lodash_es_min/* default */.A( + map/* default */.A(g.nodes(), function (v) { + return g.node(v).rank; + }) + ); + forEach/* default */.A(g.nodes(), function (v) { + var node = g.node(v); + if (has/* default */.A(node, 'rank')) { + node.rank -= min; + } + }); +} + +function removeEmptyRanks(g) { + // Ranks may not start at 0, so we need to offset them + var offset = lodash_es_min/* default */.A( + map/* default */.A(g.nodes(), function (v) { + return g.node(v).rank; + }) + ); + + var layers = []; + forEach/* default */.A(g.nodes(), function (v) { + var rank = g.node(v).rank - offset; + if (!layers[rank]) { + layers[rank] = []; + } + layers[rank].push(v); + }); + + var delta = 0; + var nodeRankFactor = g.graph().nodeRankFactor; + forEach/* default */.A(layers, function (vs, i) { + if (isUndefined/* default */.A(vs) && i % nodeRankFactor !== 0) { + --delta; + } else if (delta) { + forEach/* default */.A(vs, function (v) { + g.node(v).rank += delta; + }); + } + }); +} + +function addBorderNode(g, prefix, rank, order) { + var node = { + width: 0, + height: 0, + }; + if (arguments.length >= 4) { + node.rank = rank; + node.order = order; + } + return addDummyNode(g, 'border', node, prefix); +} + +function util_maxRank(g) { + return lodash_es_max( + map/* default */.A(g.nodes(), function (v) { + var rank = g.node(v).rank; + if (!isUndefined/* default */.A(rank)) { + return rank; + } + }) + ); +} + +/* + * Partition a collection into two groups: `lhs` and `rhs`. If the supplied + * function returns true for an entry it goes into `lhs`. Otherwise it goes + * into `rhs. + */ +function partition(collection, fn) { + var result = { lhs: [], rhs: [] }; + forEach/* default */.A(collection, function (value) { + if (fn(value)) { + result.lhs.push(value); + } else { + result.rhs.push(value); + } + }); + return result; +} + +/* + * Returns a new function that wraps `fn` with a timer. The wrapper logs the + * time it takes to execute the function. + */ +function util_time(name, fn) { + var start = lodash_es_now(); + try { + return fn(); + } finally { + console.log(name + ' time: ' + (lodash_es_now() - start) + 'ms'); + } +} + +function notime(name, fn) { + return fn(); +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/add-border-segments.js + + + + + +function addBorderSegments(g) { + function dfs(v) { + var children = g.children(v); + var node = g.node(v); + if (children.length) { + forEach/* default */.A(children, dfs); + } + + if (has/* default */.A(node, 'minRank')) { + node.borderLeft = []; + node.borderRight = []; + for (var rank = node.minRank, maxRank = node.maxRank + 1; rank < maxRank; ++rank) { + add_border_segments_addBorderNode(g, 'borderLeft', '_bl', v, node, rank); + add_border_segments_addBorderNode(g, 'borderRight', '_br', v, node, rank); + } + } + } + + forEach/* default */.A(g.children(), dfs); +} + +function add_border_segments_addBorderNode(g, prop, prefix, sg, sgNode, rank) { + var label = { width: 0, height: 0, rank: rank, borderType: prop }; + var prev = sgNode[prop][rank - 1]; + var curr = addDummyNode(g, 'border', label, prefix); + sgNode[prop][rank] = curr; + g.setParent(curr, sg); + if (prev) { + g.setEdge(prev, curr, { weight: 1 }); + } +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/coordinate-system.js + + + + +function adjust(g) { + var rankDir = g.graph().rankdir.toLowerCase(); + if (rankDir === 'lr' || rankDir === 'rl') { + swapWidthHeight(g); + } +} + +function coordinate_system_undo(g) { + var rankDir = g.graph().rankdir.toLowerCase(); + if (rankDir === 'bt' || rankDir === 'rl') { + reverseY(g); + } + + if (rankDir === 'lr' || rankDir === 'rl') { + swapXY(g); + swapWidthHeight(g); + } +} + +function swapWidthHeight(g) { + forEach/* default */.A(g.nodes(), function (v) { + swapWidthHeightOne(g.node(v)); + }); + forEach/* default */.A(g.edges(), function (e) { + swapWidthHeightOne(g.edge(e)); + }); +} + +function swapWidthHeightOne(attrs) { + var w = attrs.width; + attrs.width = attrs.height; + attrs.height = w; +} + +function reverseY(g) { + forEach/* default */.A(g.nodes(), function (v) { + reverseYOne(g.node(v)); + }); + + forEach/* default */.A(g.edges(), function (e) { + var edge = g.edge(e); + forEach/* default */.A(edge.points, reverseYOne); + if (has/* default */.A(edge, 'y')) { + reverseYOne(edge); + } + }); +} + +function reverseYOne(attrs) { + attrs.y = -attrs.y; +} + +function swapXY(g) { + forEach/* default */.A(g.nodes(), function (v) { + swapXYOne(g.node(v)); + }); + + forEach/* default */.A(g.edges(), function (e) { + var edge = g.edge(e); + forEach/* default */.A(edge.points, swapXYOne); + if (has/* default */.A(edge, 'x')) { + swapXYOne(edge); + } + }); +} + +function swapXYOne(attrs) { + var x = attrs.x; + attrs.x = attrs.y; + attrs.y = x; +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/normalize.js + + + + + +/* + * Breaks any long edges in the graph into short segments that span 1 layer + * each. This operation is undoable with the denormalize function. + * + * Pre-conditions: + * + * 1. The input graph is a DAG. + * 2. Each node in the graph has a "rank" property. + * + * Post-condition: + * + * 1. All edges in the graph have a length of 1. + * 2. Dummy nodes are added where edges have been split into segments. + * 3. The graph is augmented with a "dummyChains" attribute which contains + * the first dummy in each chain of dummy nodes produced. + */ +function normalize_run(g) { + g.graph().dummyChains = []; + forEach/* default */.A(g.edges(), function (edge) { + normalizeEdge(g, edge); + }); +} + +function normalizeEdge(g, e) { + var v = e.v; + var vRank = g.node(v).rank; + var w = e.w; + var wRank = g.node(w).rank; + var name = e.name; + var edgeLabel = g.edge(e); + var labelRank = edgeLabel.labelRank; + + if (wRank === vRank + 1) return; + + g.removeEdge(e); + + var dummy, attrs, i; + for (i = 0, ++vRank; vRank < wRank; ++i, ++vRank) { + edgeLabel.points = []; + attrs = { + width: 0, + height: 0, + edgeLabel: edgeLabel, + edgeObj: e, + rank: vRank, + }; + dummy = addDummyNode(g, 'edge', attrs, '_d'); + if (vRank === labelRank) { + attrs.width = edgeLabel.width; + attrs.height = edgeLabel.height; + // @ts-expect-error + attrs.dummy = 'edge-label'; + // @ts-expect-error + attrs.labelpos = edgeLabel.labelpos; + } + g.setEdge(v, dummy, { weight: edgeLabel.weight }, name); + if (i === 0) { + g.graph().dummyChains.push(dummy); + } + v = dummy; + } + + g.setEdge(v, w, { weight: edgeLabel.weight }, name); +} + +function normalize_undo(g) { + forEach/* default */.A(g.graph().dummyChains, function (v) { + var node = g.node(v); + var origLabel = node.edgeLabel; + var w; + g.setEdge(node.edgeObj, origLabel); + while (node.dummy) { + w = g.successors(v)[0]; + g.removeNode(v); + origLabel.points.push({ x: node.x, y: node.y }); + if (node.dummy === 'edge-label') { + origLabel.x = node.x; + origLabel.y = node.y; + origLabel.width = node.width; + origLabel.height = node.height; + } + v = w; + node = g.node(v); + } + }); +} + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseLt.js +var _baseLt = __webpack_require__(36224); +;// CONCATENATED MODULE: ./node_modules/lodash-es/minBy.js + + + + +/** + * This method is like `_.min` except that it accepts `iteratee` which is + * invoked for each element in `array` to generate the criterion by which + * the value is ranked. The iteratee is invoked with one argument: (value). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Math + * @param {Array} array The array to iterate over. + * @param {Function} [iteratee=_.identity] The iteratee invoked per element. + * @returns {*} Returns the minimum value. + * @example + * + * var objects = [{ 'n': 1 }, { 'n': 2 }]; + * + * _.minBy(objects, function(o) { return o.n; }); + * // => { 'n': 1 } + * + * // The `_.property` iteratee shorthand. + * _.minBy(objects, 'n'); + * // => { 'n': 1 } + */ +function minBy(array, iteratee) { + return (array && array.length) + ? (0,_baseExtremum/* default */.A)(array, (0,_baseIteratee/* default */.A)(iteratee, 2), _baseLt/* default */.A) + : undefined; +} + +/* harmony default export */ const lodash_es_minBy = (minBy); + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/rank/util.js + + + + +/* + * Initializes ranks for the input graph using the longest path algorithm. This + * algorithm scales well and is fast in practice, it yields rather poor + * solutions. Nodes are pushed to the lowest layer possible, leaving the bottom + * ranks wide and leaving edges longer than necessary. However, due to its + * speed, this algorithm is good for getting an initial ranking that can be fed + * into other algorithms. + * + * This algorithm does not normalize layers because it will be used by other + * algorithms in most cases. If using this algorithm directly, be sure to + * run normalize at the end. + * + * Pre-conditions: + * + * 1. Input graph is a DAG. + * 2. Input graph node labels can be assigned properties. + * + * Post-conditions: + * + * 1. Each node will be assign an (unnormalized) "rank" property. + */ +function longestPath(g) { + var visited = {}; + + function dfs(v) { + var label = g.node(v); + if (has/* default */.A(visited, v)) { + return label.rank; + } + visited[v] = true; + + var rank = lodash_es_min/* default */.A( + map/* default */.A(g.outEdges(v), function (e) { + return dfs(e.w) - g.edge(e).minlen; + }) + ); + + if ( + rank === Number.POSITIVE_INFINITY || // return value of _.map([]) for Lodash 3 + rank === undefined || // return value of _.map([]) for Lodash 4 + rank === null + ) { + // return value of _.map([null]) + rank = 0; + } + + return (label.rank = rank); + } + + forEach/* default */.A(g.sources(), dfs); +} + +/* + * Returns the amount of slack for the given edge. The slack is defined as the + * difference between the length of the edge and its minimum length. + */ +function slack(g, e) { + return g.node(e.w).rank - g.node(e.v).rank - g.edge(e).minlen; +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/rank/feasible-tree.js + + + + + + +/* + * Constructs a spanning tree with tight edges and adjusted the input node's + * ranks to achieve this. A tight edge is one that is has a length that matches + * its "minlen" attribute. + * + * The basic structure for this function is derived from Gansner, et al., "A + * Technique for Drawing Directed Graphs." + * + * Pre-conditions: + * + * 1. Graph must be a DAG. + * 2. Graph must be connected. + * 3. Graph must have at least one node. + * 5. Graph nodes must have been previously assigned a "rank" property that + * respects the "minlen" property of incident edges. + * 6. Graph edges must have a "minlen" property. + * + * Post-conditions: + * + * - Graph nodes will have their rank adjusted to ensure that all edges are + * tight. + * + * Returns a tree (undirected graph) that is constructed using only "tight" + * edges. + */ +function feasibleTree(g) { + var t = new graphlib/* Graph */.T({ directed: false }); + + // Choose arbitrary node from which to start our tree + var start = g.nodes()[0]; + var size = g.nodeCount(); + t.setNode(start, {}); + + var edge, delta; + while (tightTree(t, g) < size) { + edge = findMinSlackEdge(t, g); + delta = t.hasNode(edge.v) ? slack(g, edge) : -slack(g, edge); + shiftRanks(t, g, delta); + } + + return t; +} + +/* + * Finds a maximal tree of tight edges and returns the number of nodes in the + * tree. + */ +function tightTree(t, g) { + function dfs(v) { + forEach/* default */.A(g.nodeEdges(v), function (e) { + var edgeV = e.v, + w = v === edgeV ? e.w : edgeV; + if (!t.hasNode(w) && !slack(g, e)) { + t.setNode(w, {}); + t.setEdge(v, w, {}); + dfs(w); + } + }); + } + + forEach/* default */.A(t.nodes(), dfs); + return t.nodeCount(); +} + +/* + * Finds the edge with the smallest slack that is incident on tree and returns + * it. + */ +function findMinSlackEdge(t, g) { + return lodash_es_minBy(g.edges(), function (e) { + if (t.hasNode(e.v) !== t.hasNode(e.w)) { + return slack(g, e); + } + }); +} + +function shiftRanks(t, g, delta) { + forEach/* default */.A(t.nodes(), function (v) { + g.node(v).rank += delta; + }); +} + +// EXTERNAL MODULE: ./node_modules/lodash-es/find.js + 2 modules +var find = __webpack_require__(16145); +// EXTERNAL MODULE: ./node_modules/lodash-es/filter.js +var filter = __webpack_require__(94092); +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/graphlib/alg/dijkstra.js + + + + + +var DEFAULT_WEIGHT_FUNC = constant/* default */.A(1); + +function dijkstra_dijkstra(g, source, weightFn, edgeFn) { + return runDijkstra( + g, + String(source), + weightFn || DEFAULT_WEIGHT_FUNC, + edgeFn || + function (v) { + return g.outEdges(v); + } + ); +} + +function runDijkstra(g, source, weightFn, edgeFn) { + var results = {}; + var pq = new PriorityQueue(); + var v, vEntry; + + var updateNeighbors = function (edge) { + var w = edge.v !== v ? edge.v : edge.w; + var wEntry = results[w]; + var weight = weightFn(edge); + var distance = vEntry.distance + weight; + + if (weight < 0) { + throw new Error( + 'dijkstra does not allow negative edge weights. ' + + 'Bad edge: ' + + edge + + ' Weight: ' + + weight + ); + } + + if (distance < wEntry.distance) { + wEntry.distance = distance; + wEntry.predecessor = v; + pq.decrease(w, distance); + } + }; + + g.nodes().forEach(function (v) { + var distance = v === source ? 0 : Number.POSITIVE_INFINITY; + results[v] = { distance: distance }; + pq.add(v, distance); + }); + + while (pq.size() > 0) { + v = pq.removeMin(); + vEntry = results[v]; + if (vEntry.distance === Number.POSITIVE_INFINITY) { + break; + } + + edgeFn(v).forEach(updateNeighbors); + } + + return results; +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/graphlib/alg/dijkstra-all.js + + + + + +function dijkstraAll(g, weightFunc, edgeFunc) { + return _.transform( + g.nodes(), + function (acc, v) { + acc[v] = dijkstra(g, v, weightFunc, edgeFunc); + }, + {} + ); +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/graphlib/alg/floyd-warshall.js + + + + +var floyd_warshall_DEFAULT_WEIGHT_FUNC = constant/* default */.A(1); + +function floydWarshall(g, weightFn, edgeFn) { + return runFloydWarshall( + g, + weightFn || floyd_warshall_DEFAULT_WEIGHT_FUNC, + edgeFn || + function (v) { + return g.outEdges(v); + } + ); +} + +function runFloydWarshall(g, weightFn, edgeFn) { + var results = {}; + var nodes = g.nodes(); + + nodes.forEach(function (v) { + results[v] = {}; + results[v][v] = { distance: 0 }; + nodes.forEach(function (w) { + if (v !== w) { + results[v][w] = { distance: Number.POSITIVE_INFINITY }; + } + }); + edgeFn(v).forEach(function (edge) { + var w = edge.v === v ? edge.w : edge.v; + var d = weightFn(edge); + results[v][w] = { distance: d, predecessor: v }; + }); + }); + + nodes.forEach(function (k) { + var rowK = results[k]; + nodes.forEach(function (i) { + var rowI = results[i]; + nodes.forEach(function (j) { + var ik = rowI[k]; + var kj = rowK[j]; + var ij = rowI[j]; + var altDistance = ik.distance + kj.distance; + if (altDistance < ij.distance) { + ij.distance = altDistance; + ij.predecessor = kj.predecessor; + } + }); + }); + }); + + return results; +} + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseKeys.js + 1 modules +var _baseKeys = __webpack_require__(69471); +// EXTERNAL MODULE: ./node_modules/lodash-es/_getTag.js + 3 modules +var _getTag = __webpack_require__(9779); +// EXTERNAL MODULE: ./node_modules/lodash-es/isArrayLike.js +var isArrayLike = __webpack_require__(38446); +// EXTERNAL MODULE: ./node_modules/lodash-es/isString.js +var isString = __webpack_require__(9703); +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseProperty.js +var _baseProperty = __webpack_require__(70805); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_asciiSize.js + + +/** + * Gets the size of an ASCII `string`. + * + * @private + * @param {string} string The string inspect. + * @returns {number} Returns the string size. + */ +var asciiSize = (0,_baseProperty/* default */.A)('length'); + +/* harmony default export */ const _asciiSize = (asciiSize); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_hasUnicode.js +/** Used to compose unicode character classes. */ +var rsAstralRange = '\\ud800-\\udfff', + rsComboMarksRange = '\\u0300-\\u036f', + reComboHalfMarksRange = '\\ufe20-\\ufe2f', + rsComboSymbolsRange = '\\u20d0-\\u20ff', + rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange, + rsVarRange = '\\ufe0e\\ufe0f'; + +/** Used to compose unicode capture groups. */ +var rsZWJ = '\\u200d'; + +/** Used to detect strings with [zero-width joiners or code points from the astral planes](http://eev.ee/blog/2015/09/12/dark-corners-of-unicode/). */ +var reHasUnicode = RegExp('[' + rsZWJ + rsAstralRange + rsComboRange + rsVarRange + ']'); + +/** + * Checks if `string` contains Unicode symbols. + * + * @private + * @param {string} string The string to inspect. + * @returns {boolean} Returns `true` if a symbol is found, else `false`. + */ +function hasUnicode(string) { + return reHasUnicode.test(string); +} + +/* harmony default export */ const _hasUnicode = (hasUnicode); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_unicodeSize.js +/** Used to compose unicode character classes. */ +var _unicodeSize_rsAstralRange = '\\ud800-\\udfff', + _unicodeSize_rsComboMarksRange = '\\u0300-\\u036f', + _unicodeSize_reComboHalfMarksRange = '\\ufe20-\\ufe2f', + _unicodeSize_rsComboSymbolsRange = '\\u20d0-\\u20ff', + _unicodeSize_rsComboRange = _unicodeSize_rsComboMarksRange + _unicodeSize_reComboHalfMarksRange + _unicodeSize_rsComboSymbolsRange, + _unicodeSize_rsVarRange = '\\ufe0e\\ufe0f'; + +/** Used to compose unicode capture groups. */ +var rsAstral = '[' + _unicodeSize_rsAstralRange + ']', + rsCombo = '[' + _unicodeSize_rsComboRange + ']', + rsFitz = '\\ud83c[\\udffb-\\udfff]', + rsModifier = '(?:' + rsCombo + '|' + rsFitz + ')', + rsNonAstral = '[^' + _unicodeSize_rsAstralRange + ']', + rsRegional = '(?:\\ud83c[\\udde6-\\uddff]){2}', + rsSurrPair = '[\\ud800-\\udbff][\\udc00-\\udfff]', + _unicodeSize_rsZWJ = '\\u200d'; + +/** Used to compose unicode regexes. */ +var reOptMod = rsModifier + '?', + rsOptVar = '[' + _unicodeSize_rsVarRange + ']?', + rsOptJoin = '(?:' + _unicodeSize_rsZWJ + '(?:' + [rsNonAstral, rsRegional, rsSurrPair].join('|') + ')' + rsOptVar + reOptMod + ')*', + rsSeq = rsOptVar + reOptMod + rsOptJoin, + rsSymbol = '(?:' + [rsNonAstral + rsCombo + '?', rsCombo, rsRegional, rsSurrPair, rsAstral].join('|') + ')'; + +/** Used to match [string symbols](https://mathiasbynens.be/notes/javascript-unicode). */ +var reUnicode = RegExp(rsFitz + '(?=' + rsFitz + ')|' + rsSymbol + rsSeq, 'g'); + +/** + * Gets the size of a Unicode `string`. + * + * @private + * @param {string} string The string inspect. + * @returns {number} Returns the string size. + */ +function unicodeSize(string) { + var result = reUnicode.lastIndex = 0; + while (reUnicode.test(string)) { + ++result; + } + return result; +} + +/* harmony default export */ const _unicodeSize = (unicodeSize); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_stringSize.js + + + + +/** + * Gets the number of symbols in `string`. + * + * @private + * @param {string} string The string to inspect. + * @returns {number} Returns the string size. + */ +function stringSize(string) { + return _hasUnicode(string) + ? _unicodeSize(string) + : _asciiSize(string); +} + +/* harmony default export */ const _stringSize = (stringSize); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/size.js + + + + + + +/** `Object#toString` result references. */ +var mapTag = '[object Map]', + setTag = '[object Set]'; + +/** + * Gets the size of `collection` by returning its length for array-like + * values or the number of own enumerable string keyed properties for objects. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object|string} collection The collection to inspect. + * @returns {number} Returns the collection size. + * @example + * + * _.size([1, 2, 3]); + * // => 3 + * + * _.size({ 'a': 1, 'b': 2 }); + * // => 2 + * + * _.size('pebbles'); + * // => 7 + */ +function size(collection) { + if (collection == null) { + return 0; + } + if ((0,isArrayLike/* default */.A)(collection)) { + return (0,isString/* default */.A)(collection) ? _stringSize(collection) : collection.length; + } + var tag = (0,_getTag/* default */.A)(collection); + if (tag == mapTag || tag == setTag) { + return collection.size; + } + return (0,_baseKeys/* default */.A)(collection).length; +} + +/* harmony default export */ const lodash_es_size = (size); + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/graphlib/alg/topsort.js + + + + +topsort_topsort.CycleException = topsort_CycleException; + +function topsort_topsort(g) { + var visited = {}; + var stack = {}; + var results = []; + + function visit(node) { + if (has/* default */.A(stack, node)) { + throw new topsort_CycleException(); + } + + if (!has/* default */.A(visited, node)) { + stack[node] = true; + visited[node] = true; + forEach/* default */.A(g.predecessors(node), visit); + delete stack[node]; + results.push(node); + } + } + + forEach/* default */.A(g.sinks(), visit); + + if (lodash_es_size(visited) !== g.nodeCount()) { + throw new topsort_CycleException(); + } + + return results; +} + +function topsort_CycleException() {} +topsort_CycleException.prototype = new Error(); // must be an instance of Error to pass testing + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/graphlib/alg/is-acyclic.js + + + + +function isAcyclic(g) { + try { + topsort(g); + } catch (e) { + if (e instanceof CycleException) { + return false; + } + throw e; + } + return true; +} + +// EXTERNAL MODULE: ./node_modules/lodash-es/isArray.js +var isArray = __webpack_require__(92049); +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/graphlib/alg/dfs.js + + + + +/* + * A helper that preforms a pre- or post-order traversal on the input graph + * and returns the nodes in the order they were visited. If the graph is + * undirected then this algorithm will navigate using neighbors. If the graph + * is directed then this algorithm will navigate using successors. + * + * Order must be one of "pre" or "post". + */ +function dfs(g, vs, order) { + if (!isArray/* default */.A(vs)) { + vs = [vs]; + } + + var navigation = (g.isDirected() ? g.successors : g.neighbors).bind(g); + + var acc = []; + var visited = {}; + forEach/* default */.A(vs, function (v) { + if (!g.hasNode(v)) { + throw new Error('Graph does not have node: ' + v); + } + + doDfs(g, v, order === 'post', visited, navigation, acc); + }); + return acc; +} + +function doDfs(g, v, postorder, visited, navigation, acc) { + if (!has/* default */.A(visited, v)) { + visited[v] = true; + + if (!postorder) { + acc.push(v); + } + forEach/* default */.A(navigation(v), function (w) { + doDfs(g, w, postorder, visited, navigation, acc); + }); + if (postorder) { + acc.push(v); + } + } +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/graphlib/alg/postorder.js + + + + +function postorder(g, vs) { + return dfs(g, vs, 'post'); +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/graphlib/alg/preorder.js + + + + +function preorder(g, vs) { + return dfs(g, vs, 'pre'); +} + +// EXTERNAL MODULE: ./node_modules/dagre-d3-es/src/graphlib/graph.js + 1 modules +var graph = __webpack_require__(37981); +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/graphlib/alg/prim.js + + + + + + +function prim(g, weightFunc) { + var result = new Graph(); + var parents = {}; + var pq = new PriorityQueue(); + var v; + + function updateNeighbors(edge) { + var w = edge.v === v ? edge.w : edge.v; + var pri = pq.priority(w); + if (pri !== undefined) { + var edgeWeight = weightFunc(edge); + if (edgeWeight < pri) { + parents[w] = v; + pq.decrease(w, edgeWeight); + } + } + } + + if (g.nodeCount() === 0) { + return result; + } + + _.each(g.nodes(), function (v) { + pq.add(v, Number.POSITIVE_INFINITY); + result.setNode(v); + }); + + // Start from an arbitrary node + pq.decrease(g.nodes()[0], 0); + + var init = false; + while (pq.size() > 0) { + v = pq.removeMin(); + if (_.has(parents, v)) { + result.setEdge(v, parents[v]); + } else if (init) { + throw new Error('Input graph is not connected: ' + g); + } else { + init = true; + } + + g.nodeEdges(v).forEach(updateNeighbors); + } + + return result; +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/graphlib/alg/index.js + + + + + + + + + + + + + + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/rank/network-simplex.js + + + + + + + + +// Expose some internals for testing purposes +networkSimplex.initLowLimValues = initLowLimValues; +networkSimplex.initCutValues = initCutValues; +networkSimplex.calcCutValue = calcCutValue; +networkSimplex.leaveEdge = leaveEdge; +networkSimplex.enterEdge = enterEdge; +networkSimplex.exchangeEdges = exchangeEdges; + +/* + * The network simplex algorithm assigns ranks to each node in the input graph + * and iteratively improves the ranking to reduce the length of edges. + * + * Preconditions: + * + * 1. The input graph must be a DAG. + * 2. All nodes in the graph must have an object value. + * 3. All edges in the graph must have "minlen" and "weight" attributes. + * + * Postconditions: + * + * 1. All nodes in the graph will have an assigned "rank" attribute that has + * been optimized by the network simplex algorithm. Ranks start at 0. + * + * + * A rough sketch of the algorithm is as follows: + * + * 1. Assign initial ranks to each node. We use the longest path algorithm, + * which assigns ranks to the lowest position possible. In general this + * leads to very wide bottom ranks and unnecessarily long edges. + * 2. Construct a feasible tight tree. A tight tree is one such that all + * edges in the tree have no slack (difference between length of edge + * and minlen for the edge). This by itself greatly improves the assigned + * rankings by shorting edges. + * 3. Iteratively find edges that have negative cut values. Generally a + * negative cut value indicates that the edge could be removed and a new + * tree edge could be added to produce a more compact graph. + * + * Much of the algorithms here are derived from Gansner, et al., "A Technique + * for Drawing Directed Graphs." The structure of the file roughly follows the + * structure of the overall algorithm. + */ +function networkSimplex(g) { + g = simplify(g); + longestPath(g); + var t = feasibleTree(g); + initLowLimValues(t); + initCutValues(t, g); + + var e, f; + while ((e = leaveEdge(t))) { + f = enterEdge(t, g, e); + exchangeEdges(t, g, e, f); + } +} + +/* + * Initializes cut values for all edges in the tree. + */ +function initCutValues(t, g) { + var vs = postorder(t, t.nodes()); + vs = vs.slice(0, vs.length - 1); + forEach/* default */.A(vs, function (v) { + assignCutValue(t, g, v); + }); +} + +function assignCutValue(t, g, child) { + var childLab = t.node(child); + var parent = childLab.parent; + t.edge(child, parent).cutvalue = calcCutValue(t, g, child); +} + +/* + * Given the tight tree, its graph, and a child in the graph calculate and + * return the cut value for the edge between the child and its parent. + */ +function calcCutValue(t, g, child) { + var childLab = t.node(child); + var parent = childLab.parent; + // True if the child is on the tail end of the edge in the directed graph + var childIsTail = true; + // The graph's view of the tree edge we're inspecting + var graphEdge = g.edge(child, parent); + // The accumulated cut value for the edge between this node and its parent + var cutValue = 0; + + if (!graphEdge) { + childIsTail = false; + graphEdge = g.edge(parent, child); + } + + cutValue = graphEdge.weight; + + forEach/* default */.A(g.nodeEdges(child), function (e) { + var isOutEdge = e.v === child, + other = isOutEdge ? e.w : e.v; + + if (other !== parent) { + var pointsToHead = isOutEdge === childIsTail, + otherWeight = g.edge(e).weight; + + cutValue += pointsToHead ? otherWeight : -otherWeight; + if (isTreeEdge(t, child, other)) { + var otherCutValue = t.edge(child, other).cutvalue; + cutValue += pointsToHead ? -otherCutValue : otherCutValue; + } + } + }); + + return cutValue; +} + +function initLowLimValues(tree, root) { + if (arguments.length < 2) { + root = tree.nodes()[0]; + } + dfsAssignLowLim(tree, {}, 1, root); +} + +function dfsAssignLowLim(tree, visited, nextLim, v, parent) { + var low = nextLim; + var label = tree.node(v); + + visited[v] = true; + forEach/* default */.A(tree.neighbors(v), function (w) { + if (!has/* default */.A(visited, w)) { + nextLim = dfsAssignLowLim(tree, visited, nextLim, w, v); + } + }); + + label.low = low; + label.lim = nextLim++; + if (parent) { + label.parent = parent; + } else { + // TODO should be able to remove this when we incrementally update low lim + delete label.parent; + } + + return nextLim; +} + +function leaveEdge(tree) { + return find/* default */.A(tree.edges(), function (e) { + return tree.edge(e).cutvalue < 0; + }); +} + +function enterEdge(t, g, edge) { + var v = edge.v; + var w = edge.w; + + // For the rest of this function we assume that v is the tail and w is the + // head, so if we don't have this edge in the graph we should flip it to + // match the correct orientation. + if (!g.hasEdge(v, w)) { + v = edge.w; + w = edge.v; + } + + var vLabel = t.node(v); + var wLabel = t.node(w); + var tailLabel = vLabel; + var flip = false; + + // If the root is in the tail of the edge then we need to flip the logic that + // checks for the head and tail nodes in the candidates function below. + if (vLabel.lim > wLabel.lim) { + tailLabel = wLabel; + flip = true; + } + + var candidates = filter/* default */.A(g.edges(), function (edge) { + return ( + flip === isDescendant(t, t.node(edge.v), tailLabel) && + flip !== isDescendant(t, t.node(edge.w), tailLabel) + ); + }); + + return lodash_es_minBy(candidates, function (edge) { + return slack(g, edge); + }); +} + +function exchangeEdges(t, g, e, f) { + var v = e.v; + var w = e.w; + t.removeEdge(v, w); + t.setEdge(f.v, f.w, {}); + initLowLimValues(t); + initCutValues(t, g); + updateRanks(t, g); +} + +function updateRanks(t, g) { + var root = find/* default */.A(t.nodes(), function (v) { + return !g.node(v).parent; + }); + var vs = preorder(t, root); + vs = vs.slice(1); + forEach/* default */.A(vs, function (v) { + var parent = t.node(v).parent, + edge = g.edge(v, parent), + flipped = false; + + if (!edge) { + edge = g.edge(parent, v); + flipped = true; + } + + g.node(v).rank = g.node(parent).rank + (flipped ? edge.minlen : -edge.minlen); + }); +} + +/* + * Returns true if the edge is in the tree. + */ +function isTreeEdge(tree, u, v) { + return tree.hasEdge(u, v); +} + +/* + * Returns true if the specified node is descendant of the root node per the + * assigned low and lim attributes in the tree. + */ +function isDescendant(tree, vLabel, rootLabel) { + return rootLabel.low <= vLabel.lim && vLabel.lim <= rootLabel.lim; +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/rank/index.js + + + + + + +/* + * Assigns a rank to each node in the input graph that respects the "minlen" + * constraint specified on edges between nodes. + * + * This basic structure is derived from Gansner, et al., "A Technique for + * Drawing Directed Graphs." + * + * Pre-conditions: + * + * 1. Graph must be a connected DAG + * 2. Graph nodes must be objects + * 3. Graph edges must have "weight" and "minlen" attributes + * + * Post-conditions: + * + * 1. Graph nodes will have a "rank" attribute based on the results of the + * algorithm. Ranks can start at any index (including negative), we'll + * fix them up later. + */ +function rank(g) { + switch (g.graph().ranker) { + case 'network-simplex': + networkSimplexRanker(g); + break; + case 'tight-tree': + tightTreeRanker(g); + break; + case 'longest-path': + longestPathRanker(g); + break; + default: + networkSimplexRanker(g); + } +} + +// A fast and simple ranker, but results are far from optimal. +var longestPathRanker = longestPath; + +function tightTreeRanker(g) { + longestPath(g); + feasibleTree(g); +} + +function networkSimplexRanker(g) { + networkSimplex(g); +} + +// EXTERNAL MODULE: ./node_modules/lodash-es/values.js + 1 modules +var values = __webpack_require__(38207); +// EXTERNAL MODULE: ./node_modules/lodash-es/reduce.js + 2 modules +var reduce = __webpack_require__(89463); +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/nesting-graph.js + + + + + +/* + * A nesting graph creates dummy nodes for the tops and bottoms of subgraphs, + * adds appropriate edges to ensure that all cluster nodes are placed between + * these boundries, and ensures that the graph is connected. + * + * In addition we ensure, through the use of the minlen property, that nodes + * and subgraph border nodes to not end up on the same rank. + * + * Preconditions: + * + * 1. Input graph is a DAG + * 2. Nodes in the input graph has a minlen attribute + * + * Postconditions: + * + * 1. Input graph is connected. + * 2. Dummy nodes are added for the tops and bottoms of subgraphs. + * 3. The minlen attribute for nodes is adjusted to ensure nodes do not + * get placed on the same rank as subgraph border nodes. + * + * The nesting graph idea comes from Sander, "Layout of Compound Directed + * Graphs." + */ +function nesting_graph_run(g) { + var root = addDummyNode(g, 'root', {}, '_root'); + var depths = treeDepths(g); + var height = lodash_es_max(values/* default */.A(depths)) - 1; // Note: depths is an Object not an array + var nodeSep = 2 * height + 1; + + g.graph().nestingRoot = root; + + // Multiply minlen by nodeSep to align nodes on non-border ranks. + forEach/* default */.A(g.edges(), function (e) { + g.edge(e).minlen *= nodeSep; + }); + + // Calculate a weight that is sufficient to keep subgraphs vertically compact + var weight = sumWeights(g) + 1; + + // Create border nodes and link them up + forEach/* default */.A(g.children(), function (child) { + nesting_graph_dfs(g, root, nodeSep, weight, height, depths, child); + }); + + // Save the multiplier for node layers for later removal of empty border + // layers. + g.graph().nodeRankFactor = nodeSep; +} + +function nesting_graph_dfs(g, root, nodeSep, weight, height, depths, v) { + var children = g.children(v); + if (!children.length) { + if (v !== root) { + g.setEdge(root, v, { weight: 0, minlen: nodeSep }); + } + return; + } + + var top = addBorderNode(g, '_bt'); + var bottom = addBorderNode(g, '_bb'); + var label = g.node(v); + + g.setParent(top, v); + label.borderTop = top; + g.setParent(bottom, v); + label.borderBottom = bottom; + + forEach/* default */.A(children, function (child) { + nesting_graph_dfs(g, root, nodeSep, weight, height, depths, child); + + var childNode = g.node(child); + var childTop = childNode.borderTop ? childNode.borderTop : child; + var childBottom = childNode.borderBottom ? childNode.borderBottom : child; + var thisWeight = childNode.borderTop ? weight : 2 * weight; + var minlen = childTop !== childBottom ? 1 : height - depths[v] + 1; + + g.setEdge(top, childTop, { + weight: thisWeight, + minlen: minlen, + nestingEdge: true, + }); + + g.setEdge(childBottom, bottom, { + weight: thisWeight, + minlen: minlen, + nestingEdge: true, + }); + }); + + if (!g.parent(v)) { + g.setEdge(root, top, { weight: 0, minlen: height + depths[v] }); + } +} + +function treeDepths(g) { + var depths = {}; + function dfs(v, depth) { + var children = g.children(v); + if (children && children.length) { + forEach/* default */.A(children, function (child) { + dfs(child, depth + 1); + }); + } + depths[v] = depth; + } + forEach/* default */.A(g.children(), function (v) { + dfs(v, 1); + }); + return depths; +} + +function sumWeights(g) { + return reduce/* default */.A( + g.edges(), + function (acc, e) { + return acc + g.edge(e).weight; + }, + 0 + ); +} + +function cleanup(g) { + var graphLabel = g.graph(); + g.removeNode(graphLabel.nestingRoot); + delete graphLabel.nestingRoot; + forEach/* default */.A(g.edges(), function (e) { + var edge = g.edge(e); + if (edge.nestingEdge) { + g.removeEdge(e); + } + }); +} + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseClone.js + 13 modules +var _baseClone = __webpack_require__(68675); +;// CONCATENATED MODULE: ./node_modules/lodash-es/cloneDeep.js + + +/** Used to compose bitmasks for cloning. */ +var CLONE_DEEP_FLAG = 1, + CLONE_SYMBOLS_FLAG = 4; + +/** + * This method is like `_.clone` except that it recursively clones `value`. + * + * @static + * @memberOf _ + * @since 1.0.0 + * @category Lang + * @param {*} value The value to recursively clone. + * @returns {*} Returns the deep cloned value. + * @see _.clone + * @example + * + * var objects = [{ 'a': 1 }, { 'b': 2 }]; + * + * var deep = _.cloneDeep(objects); + * console.log(deep[0] === objects[0]); + * // => false + */ +function cloneDeep(value) { + return (0,_baseClone/* default */.A)(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG); +} + +/* harmony default export */ const lodash_es_cloneDeep = (cloneDeep); + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/order/add-subgraph-constraints.js + + + + +function addSubgraphConstraints(g, cg, vs) { + var prev = {}, + rootPrev; + + forEach/* default */.A(vs, function (v) { + var child = g.parent(v), + parent, + prevChild; + while (child) { + parent = g.parent(child); + if (parent) { + prevChild = prev[parent]; + prev[parent] = child; + } else { + prevChild = rootPrev; + rootPrev = child; + } + if (prevChild && prevChild !== child) { + cg.setEdge(prevChild, child); + return; + } + child = parent; + } + }); + + /* + function dfs(v) { + var children = v ? g.children(v) : g.children(); + if (children.length) { + var min = Number.POSITIVE_INFINITY, + subgraphs = []; + _.each(children, function(child) { + var childMin = dfs(child); + if (g.children(child).length) { + subgraphs.push({ v: child, order: childMin }); + } + min = Math.min(min, childMin); + }); + _.reduce(_.sortBy(subgraphs, "order"), function(prev, curr) { + cg.setEdge(prev.v, curr.v); + return curr; + }); + return min; + } + return g.node(v).order; + } + dfs(undefined); + */ +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/order/build-layer-graph.js + + + + + +/* + * Constructs a graph that can be used to sort a layer of nodes. The graph will + * contain all base and subgraph nodes from the request layer in their original + * hierarchy and any edges that are incident on these nodes and are of the type + * requested by the "relationship" parameter. + * + * Nodes from the requested rank that do not have parents are assigned a root + * node in the output graph, which is set in the root graph attribute. This + * makes it easy to walk the hierarchy of movable nodes during ordering. + * + * Pre-conditions: + * + * 1. Input graph is a DAG + * 2. Base nodes in the input graph have a rank attribute + * 3. Subgraph nodes in the input graph has minRank and maxRank attributes + * 4. Edges have an assigned weight + * + * Post-conditions: + * + * 1. Output graph has all nodes in the movable rank with preserved + * hierarchy. + * 2. Root nodes in the movable layer are made children of the node + * indicated by the root attribute of the graph. + * 3. Non-movable nodes incident on movable nodes, selected by the + * relationship parameter, are included in the graph (without hierarchy). + * 4. Edges incident on movable nodes, selected by the relationship + * parameter, are added to the output graph. + * 5. The weights for copied edges are aggregated as need, since the output + * graph is not a multi-graph. + */ +function buildLayerGraph(g, rank, relationship) { + var root = createRootNode(g), + result = new graphlib/* Graph */.T({ compound: true }) + .setGraph({ root: root }) + .setDefaultNodeLabel(function (v) { + return g.node(v); + }); + + forEach/* default */.A(g.nodes(), function (v) { + var node = g.node(v), + parent = g.parent(v); + + if (node.rank === rank || (node.minRank <= rank && rank <= node.maxRank)) { + result.setNode(v); + result.setParent(v, parent || root); + + // This assumes we have only short edges! + forEach/* default */.A(g[relationship](v), function (e) { + var u = e.v === v ? e.w : e.v, + edge = result.edge(u, v), + weight = !isUndefined/* default */.A(edge) ? edge.weight : 0; + result.setEdge(u, v, { weight: g.edge(e).weight + weight }); + }); + + if (has/* default */.A(node, 'minRank')) { + result.setNode(v, { + borderLeft: node.borderLeft[rank], + borderRight: node.borderRight[rank], + }); + } + } + }); + + return result; +} + +function createRootNode(g) { + var v; + while (g.hasNode((v = lodash_es_uniqueId('_root')))); + return v; +} + +// EXTERNAL MODULE: ./node_modules/lodash-es/_assignValue.js +var _assignValue = __webpack_require__(52851); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseZipObject.js +/** + * This base implementation of `_.zipObject` which assigns values using `assignFunc`. + * + * @private + * @param {Array} props The property identifiers. + * @param {Array} values The property values. + * @param {Function} assignFunc The function to assign values. + * @returns {Object} Returns the new object. + */ +function baseZipObject(props, values, assignFunc) { + var index = -1, + length = props.length, + valsLength = values.length, + result = {}; + + while (++index < length) { + var value = index < valsLength ? values[index] : undefined; + assignFunc(result, props[index], value); + } + return result; +} + +/* harmony default export */ const _baseZipObject = (baseZipObject); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/zipObject.js + + + +/** + * This method is like `_.fromPairs` except that it accepts two arrays, + * one of property identifiers and one of corresponding values. + * + * @static + * @memberOf _ + * @since 0.4.0 + * @category Array + * @param {Array} [props=[]] The property identifiers. + * @param {Array} [values=[]] The property values. + * @returns {Object} Returns the new object. + * @example + * + * _.zipObject(['a', 'b'], [1, 2]); + * // => { 'a': 1, 'b': 2 } + */ +function zipObject(props, values) { + return _baseZipObject(props || [], values || [], _assignValue/* default */.A); +} + +/* harmony default export */ const lodash_es_zipObject = (zipObject); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseFlatten.js + 1 modules +var _baseFlatten = __webpack_require__(13588); +// EXTERNAL MODULE: ./node_modules/lodash-es/_arrayMap.js +var _arrayMap = __webpack_require__(45572); +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseGet.js +var _baseGet = __webpack_require__(66318); +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseMap.js +var _baseMap = __webpack_require__(52568); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseSortBy.js +/** + * The base implementation of `_.sortBy` which uses `comparer` to define the + * sort order of `array` and replaces criteria objects with their corresponding + * values. + * + * @private + * @param {Array} array The array to sort. + * @param {Function} comparer The function to define sort order. + * @returns {Array} Returns `array`. + */ +function baseSortBy(array, comparer) { + var length = array.length; + + array.sort(comparer); + while (length--) { + array[length] = array[length].value; + } + return array; +} + +/* harmony default export */ const _baseSortBy = (baseSortBy); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseUnary.js +var _baseUnary = __webpack_require__(52789); +// EXTERNAL MODULE: ./node_modules/lodash-es/isSymbol.js +var isSymbol = __webpack_require__(61882); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_compareAscending.js + + +/** + * Compares values to sort them in ascending order. + * + * @private + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {number} Returns the sort order indicator for `value`. + */ +function compareAscending(value, other) { + if (value !== other) { + var valIsDefined = value !== undefined, + valIsNull = value === null, + valIsReflexive = value === value, + valIsSymbol = (0,isSymbol/* default */.A)(value); + + var othIsDefined = other !== undefined, + othIsNull = other === null, + othIsReflexive = other === other, + othIsSymbol = (0,isSymbol/* default */.A)(other); + + if ((!othIsNull && !othIsSymbol && !valIsSymbol && value > other) || + (valIsSymbol && othIsDefined && othIsReflexive && !othIsNull && !othIsSymbol) || + (valIsNull && othIsDefined && othIsReflexive) || + (!valIsDefined && othIsReflexive) || + !valIsReflexive) { + return 1; + } + if ((!valIsNull && !valIsSymbol && !othIsSymbol && value < other) || + (othIsSymbol && valIsDefined && valIsReflexive && !valIsNull && !valIsSymbol) || + (othIsNull && valIsDefined && valIsReflexive) || + (!othIsDefined && valIsReflexive) || + !othIsReflexive) { + return -1; + } + } + return 0; +} + +/* harmony default export */ const _compareAscending = (compareAscending); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_compareMultiple.js + + +/** + * Used by `_.orderBy` to compare multiple properties of a value to another + * and stable sort them. + * + * If `orders` is unspecified, all values are sorted in ascending order. Otherwise, + * specify an order of "desc" for descending or "asc" for ascending sort order + * of corresponding values. + * + * @private + * @param {Object} object The object to compare. + * @param {Object} other The other object to compare. + * @param {boolean[]|string[]} orders The order to sort by for each property. + * @returns {number} Returns the sort order indicator for `object`. + */ +function compareMultiple(object, other, orders) { + var index = -1, + objCriteria = object.criteria, + othCriteria = other.criteria, + length = objCriteria.length, + ordersLength = orders.length; + + while (++index < length) { + var result = _compareAscending(objCriteria[index], othCriteria[index]); + if (result) { + if (index >= ordersLength) { + return result; + } + var order = orders[index]; + return result * (order == 'desc' ? -1 : 1); + } + } + // Fixes an `Array#sort` bug in the JS engine embedded in Adobe applications + // that causes it, under certain circumstances, to provide the same value for + // `object` and `other`. See https://github.com/jashkenas/underscore/pull/1247 + // for more details. + // + // This also ensures a stable sort in V8 and other engines. + // See https://bugs.chromium.org/p/v8/issues/detail?id=90 for more details. + return object.index - other.index; +} + +/* harmony default export */ const _compareMultiple = (compareMultiple); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseOrderBy.js + + + + + + + + + + +/** + * The base implementation of `_.orderBy` without param guards. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function[]|Object[]|string[]} iteratees The iteratees to sort by. + * @param {string[]} orders The sort orders of `iteratees`. + * @returns {Array} Returns the new sorted array. + */ +function baseOrderBy(collection, iteratees, orders) { + if (iteratees.length) { + iteratees = (0,_arrayMap/* default */.A)(iteratees, function(iteratee) { + if ((0,isArray/* default */.A)(iteratee)) { + return function(value) { + return (0,_baseGet/* default */.A)(value, iteratee.length === 1 ? iteratee[0] : iteratee); + } + } + return iteratee; + }); + } else { + iteratees = [identity/* default */.A]; + } + + var index = -1; + iteratees = (0,_arrayMap/* default */.A)(iteratees, (0,_baseUnary/* default */.A)(_baseIteratee/* default */.A)); + + var result = (0,_baseMap/* default */.A)(collection, function(value, key, collection) { + var criteria = (0,_arrayMap/* default */.A)(iteratees, function(iteratee) { + return iteratee(value); + }); + return { 'criteria': criteria, 'index': ++index, 'value': value }; + }); + + return _baseSortBy(result, function(object, other) { + return _compareMultiple(object, other, orders); + }); +} + +/* harmony default export */ const _baseOrderBy = (baseOrderBy); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseRest.js +var _baseRest = __webpack_require__(24326); +;// CONCATENATED MODULE: ./node_modules/lodash-es/sortBy.js + + + + + +/** + * Creates an array of elements, sorted in ascending order by the results of + * running each element in a collection thru each iteratee. This method + * performs a stable sort, that is, it preserves the original sort order of + * equal elements. The iteratees are invoked with one argument: (value). + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {...(Function|Function[])} [iteratees=[_.identity]] + * The iteratees to sort by. + * @returns {Array} Returns the new sorted array. + * @example + * + * var users = [ + * { 'user': 'fred', 'age': 48 }, + * { 'user': 'barney', 'age': 36 }, + * { 'user': 'fred', 'age': 30 }, + * { 'user': 'barney', 'age': 34 } + * ]; + * + * _.sortBy(users, [function(o) { return o.user; }]); + * // => objects for [['barney', 36], ['barney', 34], ['fred', 48], ['fred', 30]] + * + * _.sortBy(users, ['user', 'age']); + * // => objects for [['barney', 34], ['barney', 36], ['fred', 30], ['fred', 48]] + */ +var sortBy = (0,_baseRest/* default */.A)(function(collection, iteratees) { + if (collection == null) { + return []; + } + var length = iteratees.length; + if (length > 1 && (0,_isIterateeCall/* default */.A)(collection, iteratees[0], iteratees[1])) { + iteratees = []; + } else if (length > 2 && (0,_isIterateeCall/* default */.A)(iteratees[0], iteratees[1], iteratees[2])) { + iteratees = [iteratees[0]]; + } + return _baseOrderBy(collection, (0,_baseFlatten/* default */.A)(iteratees, 1), []); +}); + +/* harmony default export */ const lodash_es_sortBy = (sortBy); + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/order/cross-count.js + + + + +/* + * A function that takes a layering (an array of layers, each with an array of + * ordererd nodes) and a graph and returns a weighted crossing count. + * + * Pre-conditions: + * + * 1. Input graph must be simple (not a multigraph), directed, and include + * only simple edges. + * 2. Edges in the input graph must have assigned weights. + * + * Post-conditions: + * + * 1. The graph and layering matrix are left unchanged. + * + * This algorithm is derived from Barth, et al., "Bilayer Cross Counting." + */ +function crossCount(g, layering) { + var cc = 0; + for (var i = 1; i < layering.length; ++i) { + cc += twoLayerCrossCount(g, layering[i - 1], layering[i]); + } + return cc; +} + +function twoLayerCrossCount(g, northLayer, southLayer) { + // Sort all of the edges between the north and south layers by their position + // in the north layer and then the south. Map these edges to the position of + // their head in the south layer. + var southPos = lodash_es_zipObject( + southLayer, + map/* default */.A(southLayer, function (v, i) { + return i; + }) + ); + var southEntries = flatten/* default */.A( + map/* default */.A(northLayer, function (v) { + return lodash_es_sortBy( + map/* default */.A(g.outEdges(v), function (e) { + return { pos: southPos[e.w], weight: g.edge(e).weight }; + }), + 'pos' + ); + }) + ); + + // Build the accumulator tree + var firstIndex = 1; + while (firstIndex < southLayer.length) firstIndex <<= 1; + var treeSize = 2 * firstIndex - 1; + firstIndex -= 1; + var tree = map/* default */.A(new Array(treeSize), function () { + return 0; + }); + + // Calculate the weighted crossings + var cc = 0; + forEach/* default */.A( + // @ts-expect-error + southEntries.forEach(function (entry) { + var index = entry.pos + firstIndex; + tree[index] += entry.weight; + var weightSum = 0; + // @ts-expect-error + while (index > 0) { + // @ts-expect-error + if (index % 2) { + weightSum += tree[index + 1]; + } + // @ts-expect-error + index = (index - 1) >> 1; + tree[index] += entry.weight; + } + cc += entry.weight * weightSum; + }) + ); + + return cc; +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/order/init-order.js + + + + +/* + * Assigns an initial order value for each node by performing a DFS search + * starting from nodes in the first rank. Nodes are assigned an order in their + * rank as they are first visited. + * + * This approach comes from Gansner, et al., "A Technique for Drawing Directed + * Graphs." + * + * Returns a layering matrix with an array per layer and each layer sorted by + * the order of its nodes. + */ +function initOrder(g) { + var visited = {}; + var simpleNodes = filter/* default */.A(g.nodes(), function (v) { + return !g.children(v).length; + }); + var maxRank = lodash_es_max( + map/* default */.A(simpleNodes, function (v) { + return g.node(v).rank; + }) + ); + var layers = map/* default */.A(lodash_es_range(maxRank + 1), function () { + return []; + }); + + function dfs(v) { + if (has/* default */.A(visited, v)) return; + visited[v] = true; + var node = g.node(v); + layers[node.rank].push(v); + forEach/* default */.A(g.successors(v), dfs); + } + + var orderedVs = lodash_es_sortBy(simpleNodes, function (v) { + return g.node(v).rank; + }); + forEach/* default */.A(orderedVs, dfs); + + return layers; +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/order/barycenter.js + + + + +function barycenter(g, movable) { + return map/* default */.A(movable, function (v) { + var inV = g.inEdges(v); + if (!inV.length) { + return { v: v }; + } else { + var result = reduce/* default */.A( + inV, + function (acc, e) { + var edge = g.edge(e), + nodeU = g.node(e.v); + return { + sum: acc.sum + edge.weight * nodeU.order, + weight: acc.weight + edge.weight, + }; + }, + { sum: 0, weight: 0 } + ); + + return { + v: v, + barycenter: result.sum / result.weight, + weight: result.weight, + }; + } + }); +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/order/resolve-conflicts.js + + + + +/* + * Given a list of entries of the form {v, barycenter, weight} and a + * constraint graph this function will resolve any conflicts between the + * constraint graph and the barycenters for the entries. If the barycenters for + * an entry would violate a constraint in the constraint graph then we coalesce + * the nodes in the conflict into a new node that respects the contraint and + * aggregates barycenter and weight information. + * + * This implementation is based on the description in Forster, "A Fast and + * Simple Hueristic for Constrained Two-Level Crossing Reduction," thought it + * differs in some specific details. + * + * Pre-conditions: + * + * 1. Each entry has the form {v, barycenter, weight}, or if the node has + * no barycenter, then {v}. + * + * Returns: + * + * A new list of entries of the form {vs, i, barycenter, weight}. The list + * `vs` may either be a singleton or it may be an aggregation of nodes + * ordered such that they do not violate constraints from the constraint + * graph. The property `i` is the lowest original index of any of the + * elements in `vs`. + */ +function resolveConflicts(entries, cg) { + var mappedEntries = {}; + forEach/* default */.A(entries, function (entry, i) { + var tmp = (mappedEntries[entry.v] = { + indegree: 0, + in: [], + out: [], + vs: [entry.v], + i: i, + }); + if (!isUndefined/* default */.A(entry.barycenter)) { + // @ts-expect-error + tmp.barycenter = entry.barycenter; + // @ts-expect-error + tmp.weight = entry.weight; + } + }); + + forEach/* default */.A(cg.edges(), function (e) { + var entryV = mappedEntries[e.v]; + var entryW = mappedEntries[e.w]; + if (!isUndefined/* default */.A(entryV) && !isUndefined/* default */.A(entryW)) { + entryW.indegree++; + entryV.out.push(mappedEntries[e.w]); + } + }); + + var sourceSet = filter/* default */.A(mappedEntries, function (entry) { + // @ts-expect-error + return !entry.indegree; + }); + + return doResolveConflicts(sourceSet); +} + +function doResolveConflicts(sourceSet) { + var entries = []; + + function handleIn(vEntry) { + return function (uEntry) { + if (uEntry.merged) { + return; + } + if ( + isUndefined/* default */.A(uEntry.barycenter) || + isUndefined/* default */.A(vEntry.barycenter) || + uEntry.barycenter >= vEntry.barycenter + ) { + mergeEntries(vEntry, uEntry); + } + }; + } + + function handleOut(vEntry) { + return function (wEntry) { + wEntry['in'].push(vEntry); + if (--wEntry.indegree === 0) { + sourceSet.push(wEntry); + } + }; + } + + while (sourceSet.length) { + var entry = sourceSet.pop(); + entries.push(entry); + forEach/* default */.A(entry['in'].reverse(), handleIn(entry)); + forEach/* default */.A(entry.out, handleOut(entry)); + } + + return map/* default */.A( + filter/* default */.A(entries, function (entry) { + return !entry.merged; + }), + function (entry) { + return lodash_es_pick(entry, ['vs', 'i', 'barycenter', 'weight']); + } + ); +} + +function mergeEntries(target, source) { + var sum = 0; + var weight = 0; + + if (target.weight) { + sum += target.barycenter * target.weight; + weight += target.weight; + } + + if (source.weight) { + sum += source.barycenter * source.weight; + weight += source.weight; + } + + target.vs = source.vs.concat(target.vs); + target.barycenter = sum / weight; + target.weight = weight; + target.i = Math.min(source.i, target.i); + source.merged = true; +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/order/sort.js + + + + + +function sort(entries, biasRight) { + var parts = partition(entries, function (entry) { + return has/* default */.A(entry, 'barycenter'); + }); + var sortable = parts.lhs, + unsortable = lodash_es_sortBy(parts.rhs, function (entry) { + return -entry.i; + }), + vs = [], + sum = 0, + weight = 0, + vsIndex = 0; + + sortable.sort(compareWithBias(!!biasRight)); + + vsIndex = consumeUnsortable(vs, unsortable, vsIndex); + + forEach/* default */.A(sortable, function (entry) { + vsIndex += entry.vs.length; + vs.push(entry.vs); + sum += entry.barycenter * entry.weight; + weight += entry.weight; + vsIndex = consumeUnsortable(vs, unsortable, vsIndex); + }); + + var result = { vs: flatten/* default */.A(vs) }; + if (weight) { + result.barycenter = sum / weight; + result.weight = weight; + } + return result; +} + +function consumeUnsortable(vs, unsortable, index) { + var last; + while (unsortable.length && (last = lodash_es_last/* default */.A(unsortable)).i <= index) { + unsortable.pop(); + vs.push(last.vs); + index++; + } + return index; +} + +function compareWithBias(bias) { + return function (entryV, entryW) { + if (entryV.barycenter < entryW.barycenter) { + return -1; + } else if (entryV.barycenter > entryW.barycenter) { + return 1; + } + + return !bias ? entryV.i - entryW.i : entryW.i - entryV.i; + }; +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/order/sort-subgraph.js + + + + + + + +function sortSubgraph(g, v, cg, biasRight) { + var movable = g.children(v); + var node = g.node(v); + var bl = node ? node.borderLeft : undefined; + var br = node ? node.borderRight : undefined; + var subgraphs = {}; + + if (bl) { + movable = filter/* default */.A(movable, function (w) { + return w !== bl && w !== br; + }); + } + + var barycenters = barycenter(g, movable); + forEach/* default */.A(barycenters, function (entry) { + if (g.children(entry.v).length) { + var subgraphResult = sortSubgraph(g, entry.v, cg, biasRight); + subgraphs[entry.v] = subgraphResult; + if (has/* default */.A(subgraphResult, 'barycenter')) { + mergeBarycenters(entry, subgraphResult); + } + } + }); + + var entries = resolveConflicts(barycenters, cg); + expandSubgraphs(entries, subgraphs); + + var result = sort(entries, biasRight); + + if (bl) { + result.vs = flatten/* default */.A([bl, result.vs, br]); + if (g.predecessors(bl).length) { + var blPred = g.node(g.predecessors(bl)[0]), + brPred = g.node(g.predecessors(br)[0]); + if (!has/* default */.A(result, 'barycenter')) { + result.barycenter = 0; + result.weight = 0; + } + result.barycenter = + (result.barycenter * result.weight + blPred.order + brPred.order) / (result.weight + 2); + result.weight += 2; + } + } + + return result; +} + +function expandSubgraphs(entries, subgraphs) { + forEach/* default */.A(entries, function (entry) { + entry.vs = flatten/* default */.A( + entry.vs.map(function (v) { + if (subgraphs[v]) { + return subgraphs[v].vs; + } + return v; + }) + ); + }); +} + +function mergeBarycenters(target, other) { + if (!isUndefined/* default */.A(target.barycenter)) { + target.barycenter = + (target.barycenter * target.weight + other.barycenter * other.weight) / + (target.weight + other.weight); + target.weight += other.weight; + } else { + target.barycenter = other.barycenter; + target.weight = other.weight; + } +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/order/index.js + + + + + + + + + + + +/* + * Applies heuristics to minimize edge crossings in the graph and sets the best + * order solution as an order attribute on each node. + * + * Pre-conditions: + * + * 1. Graph must be DAG + * 2. Graph nodes must be objects with a "rank" attribute + * 3. Graph edges must have the "weight" attribute + * + * Post-conditions: + * + * 1. Graph nodes will have an "order" attribute based on the results of the + * algorithm. + */ +function order(g) { + var maxRank = util_maxRank(g), + downLayerGraphs = buildLayerGraphs(g, lodash_es_range(1, maxRank + 1), 'inEdges'), + upLayerGraphs = buildLayerGraphs(g, lodash_es_range(maxRank - 1, -1, -1), 'outEdges'); + + var layering = initOrder(g); + assignOrder(g, layering); + + var bestCC = Number.POSITIVE_INFINITY, + best; + + for (var i = 0, lastBest = 0; lastBest < 4; ++i, ++lastBest) { + sweepLayerGraphs(i % 2 ? downLayerGraphs : upLayerGraphs, i % 4 >= 2); + + layering = buildLayerMatrix(g); + var cc = crossCount(g, layering); + if (cc < bestCC) { + lastBest = 0; + best = lodash_es_cloneDeep(layering); + bestCC = cc; + } + } + + assignOrder(g, best); +} + +function buildLayerGraphs(g, ranks, relationship) { + return map/* default */.A(ranks, function (rank) { + return buildLayerGraph(g, rank, relationship); + }); +} + +function sweepLayerGraphs(layerGraphs, biasRight) { + var cg = new graphlib/* Graph */.T(); + forEach/* default */.A(layerGraphs, function (lg) { + var root = lg.graph().root; + var sorted = sortSubgraph(lg, root, cg, biasRight); + forEach/* default */.A(sorted.vs, function (v, i) { + lg.node(v).order = i; + }); + addSubgraphConstraints(lg, cg, sorted.vs); + }); +} + +function assignOrder(g, layering) { + forEach/* default */.A(layering, function (layer) { + forEach/* default */.A(layer, function (v, i) { + g.node(v).order = i; + }); + }); +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/parent-dummy-chains.js + + + + +function parentDummyChains(g) { + var postorderNums = parent_dummy_chains_postorder(g); + + forEach/* default */.A(g.graph().dummyChains, function (v) { + var node = g.node(v); + var edgeObj = node.edgeObj; + var pathData = findPath(g, postorderNums, edgeObj.v, edgeObj.w); + var path = pathData.path; + var lca = pathData.lca; + var pathIdx = 0; + var pathV = path[pathIdx]; + var ascending = true; + + while (v !== edgeObj.w) { + node = g.node(v); + + if (ascending) { + while ((pathV = path[pathIdx]) !== lca && g.node(pathV).maxRank < node.rank) { + pathIdx++; + } + + if (pathV === lca) { + ascending = false; + } + } + + if (!ascending) { + while ( + pathIdx < path.length - 1 && + g.node((pathV = path[pathIdx + 1])).minRank <= node.rank + ) { + pathIdx++; + } + pathV = path[pathIdx]; + } + + g.setParent(v, pathV); + v = g.successors(v)[0]; + } + }); +} + +// Find a path from v to w through the lowest common ancestor (LCA). Return the +// full path and the LCA. +function findPath(g, postorderNums, v, w) { + var vPath = []; + var wPath = []; + var low = Math.min(postorderNums[v].low, postorderNums[w].low); + var lim = Math.max(postorderNums[v].lim, postorderNums[w].lim); + var parent; + var lca; + + // Traverse up from v to find the LCA + parent = v; + do { + parent = g.parent(parent); + vPath.push(parent); + } while (parent && (postorderNums[parent].low > low || lim > postorderNums[parent].lim)); + lca = parent; + + // Traverse from w to LCA + parent = w; + while ((parent = g.parent(parent)) !== lca) { + wPath.push(parent); + } + + return { path: vPath.concat(wPath.reverse()), lca: lca }; +} + +function parent_dummy_chains_postorder(g) { + var result = {}; + var lim = 0; + + function dfs(v) { + var low = lim; + forEach/* default */.A(g.children(v), dfs); + result[v] = { low: low, lim: lim++ }; + } + forEach/* default */.A(g.children(), dfs); + + return result; +} + +// EXTERNAL MODULE: ./node_modules/lodash-es/_castFunction.js +var _castFunction = __webpack_require__(99922); +;// CONCATENATED MODULE: ./node_modules/lodash-es/forOwn.js + + + +/** + * Iterates over own enumerable string keyed properties of an object and + * invokes `iteratee` for each property. The iteratee is invoked with three + * arguments: (value, key, object). Iteratee functions may exit iteration + * early by explicitly returning `false`. + * + * @static + * @memberOf _ + * @since 0.3.0 + * @category Object + * @param {Object} object The object to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Object} Returns `object`. + * @see _.forOwnRight + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.forOwn(new Foo, function(value, key) { + * console.log(key); + * }); + * // => Logs 'a' then 'b' (iteration order is not guaranteed). + */ +function forOwn(object, iteratee) { + return object && (0,_baseForOwn/* default */.A)(object, (0,_castFunction/* default */.A)(iteratee)); +} + +/* harmony default export */ const lodash_es_forOwn = (forOwn); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseFor.js + 1 modules +var _baseFor = __webpack_require__(4574); +// EXTERNAL MODULE: ./node_modules/lodash-es/keysIn.js + 2 modules +var keysIn = __webpack_require__(55615); +;// CONCATENATED MODULE: ./node_modules/lodash-es/forIn.js + + + + +/** + * Iterates over own and inherited enumerable string keyed properties of an + * object and invokes `iteratee` for each property. The iteratee is invoked + * with three arguments: (value, key, object). Iteratee functions may exit + * iteration early by explicitly returning `false`. + * + * @static + * @memberOf _ + * @since 0.3.0 + * @category Object + * @param {Object} object The object to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Object} Returns `object`. + * @see _.forInRight + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.forIn(new Foo, function(value, key) { + * console.log(key); + * }); + * // => Logs 'a', 'b', then 'c' (iteration order is not guaranteed). + */ +function forIn(object, iteratee) { + return object == null + ? object + : (0,_baseFor/* default */.A)(object, (0,_castFunction/* default */.A)(iteratee), keysIn/* default */.A); +} + +/* harmony default export */ const lodash_es_forIn = (forIn); + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/position/bk.js + + + + +/* + * This module provides coordinate assignment based on Brandes and Köpf, "Fast + * and Simple Horizontal Coordinate Assignment." + */ + + + +/* + * Marks all edges in the graph with a type-1 conflict with the "type1Conflict" + * property. A type-1 conflict is one where a non-inner segment crosses an + * inner segment. An inner segment is an edge with both incident nodes marked + * with the "dummy" property. + * + * This algorithm scans layer by layer, starting with the second, for type-1 + * conflicts between the current layer and the previous layer. For each layer + * it scans the nodes from left to right until it reaches one that is incident + * on an inner segment. It then scans predecessors to determine if they have + * edges that cross that inner segment. At the end a final scan is done for all + * nodes on the current rank to see if they cross the last visited inner + * segment. + * + * This algorithm (safely) assumes that a dummy node will only be incident on a + * single node in the layers being scanned. + */ +function findType1Conflicts(g, layering) { + var conflicts = {}; + + function visitLayer(prevLayer, layer) { + var // last visited node in the previous layer that is incident on an inner + // segment. + k0 = 0, + // Tracks the last node in this layer scanned for crossings with a type-1 + // segment. + scanPos = 0, + prevLayerLength = prevLayer.length, + lastNode = lodash_es_last/* default */.A(layer); + + forEach/* default */.A(layer, function (v, i) { + var w = findOtherInnerSegmentNode(g, v), + k1 = w ? g.node(w).order : prevLayerLength; + + if (w || v === lastNode) { + forEach/* default */.A(layer.slice(scanPos, i + 1), function (scanNode) { + forEach/* default */.A(g.predecessors(scanNode), function (u) { + var uLabel = g.node(u), + uPos = uLabel.order; + if ((uPos < k0 || k1 < uPos) && !(uLabel.dummy && g.node(scanNode).dummy)) { + addConflict(conflicts, u, scanNode); + } + }); + }); + // @ts-expect-error + scanPos = i + 1; + k0 = k1; + } + }); + + return layer; + } + + reduce/* default */.A(layering, visitLayer); + return conflicts; +} + +function findType2Conflicts(g, layering) { + var conflicts = {}; + + function scan(south, southPos, southEnd, prevNorthBorder, nextNorthBorder) { + var v; + forEach/* default */.A(lodash_es_range(southPos, southEnd), function (i) { + v = south[i]; + if (g.node(v).dummy) { + forEach/* default */.A(g.predecessors(v), function (u) { + var uNode = g.node(u); + if (uNode.dummy && (uNode.order < prevNorthBorder || uNode.order > nextNorthBorder)) { + addConflict(conflicts, u, v); + } + }); + } + }); + } + + function visitLayer(north, south) { + var prevNorthPos = -1, + nextNorthPos, + southPos = 0; + + forEach/* default */.A(south, function (v, southLookahead) { + if (g.node(v).dummy === 'border') { + var predecessors = g.predecessors(v); + if (predecessors.length) { + nextNorthPos = g.node(predecessors[0]).order; + scan(south, southPos, southLookahead, prevNorthPos, nextNorthPos); + // @ts-expect-error + southPos = southLookahead; + prevNorthPos = nextNorthPos; + } + } + scan(south, southPos, south.length, nextNorthPos, north.length); + }); + + return south; + } + + reduce/* default */.A(layering, visitLayer); + return conflicts; +} + +function findOtherInnerSegmentNode(g, v) { + if (g.node(v).dummy) { + return find/* default */.A(g.predecessors(v), function (u) { + return g.node(u).dummy; + }); + } +} + +function addConflict(conflicts, v, w) { + if (v > w) { + var tmp = v; + v = w; + w = tmp; + } + + var conflictsV = conflicts[v]; + if (!conflictsV) { + conflicts[v] = conflictsV = {}; + } + conflictsV[w] = true; +} + +function hasConflict(conflicts, v, w) { + if (v > w) { + var tmp = v; + v = w; + w = tmp; + } + return has/* default */.A(conflicts[v], w); +} + +/* + * Try to align nodes into vertical "blocks" where possible. This algorithm + * attempts to align a node with one of its median neighbors. If the edge + * connecting a neighbor is a type-1 conflict then we ignore that possibility. + * If a previous node has already formed a block with a node after the node + * we're trying to form a block with, we also ignore that possibility - our + * blocks would be split in that scenario. + */ +function verticalAlignment(g, layering, conflicts, neighborFn) { + var root = {}, + align = {}, + pos = {}; + + // We cache the position here based on the layering because the graph and + // layering may be out of sync. The layering matrix is manipulated to + // generate different extreme alignments. + forEach/* default */.A(layering, function (layer) { + forEach/* default */.A(layer, function (v, order) { + root[v] = v; + align[v] = v; + pos[v] = order; + }); + }); + + forEach/* default */.A(layering, function (layer) { + var prevIdx = -1; + forEach/* default */.A(layer, function (v) { + var ws = neighborFn(v); + if (ws.length) { + ws = lodash_es_sortBy(ws, function (w) { + return pos[w]; + }); + var mp = (ws.length - 1) / 2; + for (var i = Math.floor(mp), il = Math.ceil(mp); i <= il; ++i) { + var w = ws[i]; + if (align[v] === v && prevIdx < pos[w] && !hasConflict(conflicts, v, w)) { + align[w] = v; + align[v] = root[v] = root[w]; + prevIdx = pos[w]; + } + } + } + }); + }); + + return { root: root, align: align }; +} + +function horizontalCompaction(g, layering, root, align, reverseSep) { + // This portion of the algorithm differs from BK due to a number of problems. + // Instead of their algorithm we construct a new block graph and do two + // sweeps. The first sweep places blocks with the smallest possible + // coordinates. The second sweep removes unused space by moving blocks to the + // greatest coordinates without violating separation. + var xs = {}, + blockG = buildBlockGraph(g, layering, root, reverseSep), + borderType = reverseSep ? 'borderLeft' : 'borderRight'; + + function iterate(setXsFunc, nextNodesFunc) { + var stack = blockG.nodes(); + var elem = stack.pop(); + var visited = {}; + while (elem) { + if (visited[elem]) { + setXsFunc(elem); + } else { + visited[elem] = true; + stack.push(elem); + stack = stack.concat(nextNodesFunc(elem)); + } + + elem = stack.pop(); + } + } + + // First pass, assign smallest coordinates + function pass1(elem) { + xs[elem] = blockG.inEdges(elem).reduce(function (acc, e) { + return Math.max(acc, xs[e.v] + blockG.edge(e)); + }, 0); + } + + // Second pass, assign greatest coordinates + function pass2(elem) { + var min = blockG.outEdges(elem).reduce(function (acc, e) { + return Math.min(acc, xs[e.w] - blockG.edge(e)); + }, Number.POSITIVE_INFINITY); + + var node = g.node(elem); + if (min !== Number.POSITIVE_INFINITY && node.borderType !== borderType) { + xs[elem] = Math.max(xs[elem], min); + } + } + + iterate(pass1, blockG.predecessors.bind(blockG)); + iterate(pass2, blockG.successors.bind(blockG)); + + // Assign x coordinates to all nodes + forEach/* default */.A(align, function (v) { + xs[v] = xs[root[v]]; + }); + + return xs; +} + +function buildBlockGraph(g, layering, root, reverseSep) { + var blockGraph = new graphlib/* Graph */.T(), + graphLabel = g.graph(), + sepFn = sep(graphLabel.nodesep, graphLabel.edgesep, reverseSep); + + forEach/* default */.A(layering, function (layer) { + var u; + forEach/* default */.A(layer, function (v) { + var vRoot = root[v]; + blockGraph.setNode(vRoot); + if (u) { + var uRoot = root[u], + prevMax = blockGraph.edge(uRoot, vRoot); + blockGraph.setEdge(uRoot, vRoot, Math.max(sepFn(g, v, u), prevMax || 0)); + } + u = v; + }); + }); + + return blockGraph; +} + +/* + * Returns the alignment that has the smallest width of the given alignments. + */ +function findSmallestWidthAlignment(g, xss) { + return lodash_es_minBy(values/* default */.A(xss), function (xs) { + var max = Number.NEGATIVE_INFINITY; + var min = Number.POSITIVE_INFINITY; + + lodash_es_forIn(xs, function (x, v) { + var halfWidth = width(g, v) / 2; + + max = Math.max(x + halfWidth, max); + min = Math.min(x - halfWidth, min); + }); + + return max - min; + }); +} + +/* + * Align the coordinates of each of the layout alignments such that + * left-biased alignments have their minimum coordinate at the same point as + * the minimum coordinate of the smallest width alignment and right-biased + * alignments have their maximum coordinate at the same point as the maximum + * coordinate of the smallest width alignment. + */ +function alignCoordinates(xss, alignTo) { + var alignToVals = values/* default */.A(alignTo), + alignToMin = lodash_es_min/* default */.A(alignToVals), + alignToMax = lodash_es_max(alignToVals); + + forEach/* default */.A(['u', 'd'], function (vert) { + forEach/* default */.A(['l', 'r'], function (horiz) { + var alignment = vert + horiz, + xs = xss[alignment], + delta; + if (xs === alignTo) return; + + var xsVals = values/* default */.A(xs); + delta = horiz === 'l' ? alignToMin - lodash_es_min/* default */.A(xsVals) : alignToMax - lodash_es_max(xsVals); + + if (delta) { + xss[alignment] = lodash_es_mapValues(xs, function (x) { + return x + delta; + }); + } + }); + }); +} + +function balance(xss, align) { + return lodash_es_mapValues(xss.ul, function (ignore, v) { + if (align) { + return xss[align.toLowerCase()][v]; + } else { + var xs = lodash_es_sortBy(map/* default */.A(xss, v)); + return (xs[1] + xs[2]) / 2; + } + }); +} + +function positionX(g) { + var layering = buildLayerMatrix(g); + var conflicts = merge/* default */.A(findType1Conflicts(g, layering), findType2Conflicts(g, layering)); + + var xss = {}; + var adjustedLayering; + forEach/* default */.A(['u', 'd'], function (vert) { + adjustedLayering = vert === 'u' ? layering : values/* default */.A(layering).reverse(); + forEach/* default */.A(['l', 'r'], function (horiz) { + if (horiz === 'r') { + adjustedLayering = map/* default */.A(adjustedLayering, function (inner) { + return values/* default */.A(inner).reverse(); + }); + } + + var neighborFn = (vert === 'u' ? g.predecessors : g.successors).bind(g); + var align = verticalAlignment(g, adjustedLayering, conflicts, neighborFn); + var xs = horizontalCompaction(g, adjustedLayering, align.root, align.align, horiz === 'r'); + if (horiz === 'r') { + xs = lodash_es_mapValues(xs, function (x) { + return -x; + }); + } + xss[vert + horiz] = xs; + }); + }); + + var smallestWidth = findSmallestWidthAlignment(g, xss); + alignCoordinates(xss, smallestWidth); + return balance(xss, g.graph().align); +} + +function sep(nodeSep, edgeSep, reverseSep) { + return function (g, v, w) { + var vLabel = g.node(v); + var wLabel = g.node(w); + var sum = 0; + var delta; + + sum += vLabel.width / 2; + if (has/* default */.A(vLabel, 'labelpos')) { + switch (vLabel.labelpos.toLowerCase()) { + case 'l': + delta = -vLabel.width / 2; + break; + case 'r': + delta = vLabel.width / 2; + break; + } + } + if (delta) { + sum += reverseSep ? delta : -delta; + } + delta = 0; + + sum += (vLabel.dummy ? edgeSep : nodeSep) / 2; + sum += (wLabel.dummy ? edgeSep : nodeSep) / 2; + + sum += wLabel.width / 2; + if (has/* default */.A(wLabel, 'labelpos')) { + switch (wLabel.labelpos.toLowerCase()) { + case 'l': + delta = wLabel.width / 2; + break; + case 'r': + delta = -wLabel.width / 2; + break; + } + } + if (delta) { + sum += reverseSep ? delta : -delta; + } + delta = 0; + + return sum; + }; +} + +function width(g, v) { + return g.node(v).width; +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/position/index.js + + + + + + +function position(g) { + g = asNonCompoundGraph(g); + + positionY(g); + lodash_es_forOwn(positionX(g), function (x, v) { + g.node(v).x = x; + }); +} + +function positionY(g) { + var layering = buildLayerMatrix(g); + var rankSep = g.graph().ranksep; + var prevY = 0; + forEach/* default */.A(layering, function (layer) { + var maxHeight = lodash_es_max( + map/* default */.A(layer, function (v) { + return g.node(v).height; + }) + ); + forEach/* default */.A(layer, function (v) { + g.node(v).y = prevY + maxHeight / 2; + }); + prevY += maxHeight + rankSep; + }); +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/layout.js + + + + + + + + + + + + + + + +function layout(g, opts) { + var time = opts && opts.debugTiming ? util_time : notime; + time('layout', function () { + var layoutGraph = time(' buildLayoutGraph', function () { + return buildLayoutGraph(g); + }); + time(' runLayout', function () { + runLayout(layoutGraph, time); + }); + time(' updateInputGraph', function () { + updateInputGraph(g, layoutGraph); + }); + }); +} + +function runLayout(g, time) { + time(' makeSpaceForEdgeLabels', function () { + makeSpaceForEdgeLabels(g); + }); + time(' removeSelfEdges', function () { + removeSelfEdges(g); + }); + time(' acyclic', function () { + run(g); + }); + time(' nestingGraph.run', function () { + nesting_graph_run(g); + }); + time(' rank', function () { + rank(asNonCompoundGraph(g)); + }); + time(' injectEdgeLabelProxies', function () { + injectEdgeLabelProxies(g); + }); + time(' removeEmptyRanks', function () { + removeEmptyRanks(g); + }); + time(' nestingGraph.cleanup', function () { + cleanup(g); + }); + time(' normalizeRanks', function () { + normalizeRanks(g); + }); + time(' assignRankMinMax', function () { + assignRankMinMax(g); + }); + time(' removeEdgeLabelProxies', function () { + removeEdgeLabelProxies(g); + }); + time(' normalize.run', function () { + normalize_run(g); + }); + time(' parentDummyChains', function () { + parentDummyChains(g); + }); + time(' addBorderSegments', function () { + addBorderSegments(g); + }); + time(' order', function () { + order(g); + }); + time(' insertSelfEdges', function () { + insertSelfEdges(g); + }); + time(' adjustCoordinateSystem', function () { + adjust(g); + }); + time(' position', function () { + position(g); + }); + time(' positionSelfEdges', function () { + positionSelfEdges(g); + }); + time(' removeBorderNodes', function () { + removeBorderNodes(g); + }); + time(' normalize.undo', function () { + normalize_undo(g); + }); + time(' fixupEdgeLabelCoords', function () { + fixupEdgeLabelCoords(g); + }); + time(' undoCoordinateSystem', function () { + coordinate_system_undo(g); + }); + time(' translateGraph', function () { + translateGraph(g); + }); + time(' assignNodeIntersects', function () { + assignNodeIntersects(g); + }); + time(' reversePoints', function () { + reversePointsForReversedEdges(g); + }); + time(' acyclic.undo', function () { + undo(g); + }); +} + +/* + * Copies final layout information from the layout graph back to the input + * graph. This process only copies whitelisted attributes from the layout graph + * to the input graph, so it serves as a good place to determine what + * attributes can influence layout. + */ +function updateInputGraph(inputGraph, layoutGraph) { + forEach/* default */.A(inputGraph.nodes(), function (v) { + var inputLabel = inputGraph.node(v); + var layoutLabel = layoutGraph.node(v); + + if (inputLabel) { + inputLabel.x = layoutLabel.x; + inputLabel.y = layoutLabel.y; + + if (layoutGraph.children(v).length) { + inputLabel.width = layoutLabel.width; + inputLabel.height = layoutLabel.height; + } + } + }); + + forEach/* default */.A(inputGraph.edges(), function (e) { + var inputLabel = inputGraph.edge(e); + var layoutLabel = layoutGraph.edge(e); + + inputLabel.points = layoutLabel.points; + if (has/* default */.A(layoutLabel, 'x')) { + inputLabel.x = layoutLabel.x; + inputLabel.y = layoutLabel.y; + } + }); + + inputGraph.graph().width = layoutGraph.graph().width; + inputGraph.graph().height = layoutGraph.graph().height; +} + +var graphNumAttrs = ['nodesep', 'edgesep', 'ranksep', 'marginx', 'marginy']; +var graphDefaults = { ranksep: 50, edgesep: 20, nodesep: 50, rankdir: 'tb' }; +var graphAttrs = ['acyclicer', 'ranker', 'rankdir', 'align']; +var nodeNumAttrs = ['width', 'height']; +var nodeDefaults = { width: 0, height: 0 }; +var edgeNumAttrs = ['minlen', 'weight', 'width', 'height', 'labeloffset']; +var edgeDefaults = { + minlen: 1, + weight: 1, + width: 0, + height: 0, + labeloffset: 10, + labelpos: 'r', +}; +var edgeAttrs = ['labelpos']; + +/* + * Constructs a new graph from the input graph, which can be used for layout. + * This process copies only whitelisted attributes from the input graph to the + * layout graph. Thus this function serves as a good place to determine what + * attributes can influence layout. + */ +function buildLayoutGraph(inputGraph) { + var g = new graphlib/* Graph */.T({ multigraph: true, compound: true }); + var graph = canonicalize(inputGraph.graph()); + + g.setGraph( + merge/* default */.A({}, graphDefaults, selectNumberAttrs(graph, graphNumAttrs), lodash_es_pick(graph, graphAttrs)) + ); + + forEach/* default */.A(inputGraph.nodes(), function (v) { + var node = canonicalize(inputGraph.node(v)); + g.setNode(v, defaults/* default */.A(selectNumberAttrs(node, nodeNumAttrs), nodeDefaults)); + g.setParent(v, inputGraph.parent(v)); + }); + + forEach/* default */.A(inputGraph.edges(), function (e) { + var edge = canonicalize(inputGraph.edge(e)); + g.setEdge( + e, + merge/* default */.A({}, edgeDefaults, selectNumberAttrs(edge, edgeNumAttrs), lodash_es_pick(edge, edgeAttrs)) + ); + }); + + return g; +} + +/* + * This idea comes from the Gansner paper: to account for edge labels in our + * layout we split each rank in half by doubling minlen and halving ranksep. + * Then we can place labels at these mid-points between nodes. + * + * We also add some minimal padding to the width to push the label for the edge + * away from the edge itself a bit. + */ +function makeSpaceForEdgeLabels(g) { + var graph = g.graph(); + graph.ranksep /= 2; + forEach/* default */.A(g.edges(), function (e) { + var edge = g.edge(e); + edge.minlen *= 2; + if (edge.labelpos.toLowerCase() !== 'c') { + if (graph.rankdir === 'TB' || graph.rankdir === 'BT') { + edge.width += edge.labeloffset; + } else { + edge.height += edge.labeloffset; + } + } + }); +} + +/* + * Creates temporary dummy nodes that capture the rank in which each edge's + * label is going to, if it has one of non-zero width and height. We do this + * so that we can safely remove empty ranks while preserving balance for the + * label's position. + */ +function injectEdgeLabelProxies(g) { + forEach/* default */.A(g.edges(), function (e) { + var edge = g.edge(e); + if (edge.width && edge.height) { + var v = g.node(e.v); + var w = g.node(e.w); + var label = { rank: (w.rank - v.rank) / 2 + v.rank, e: e }; + addDummyNode(g, 'edge-proxy', label, '_ep'); + } + }); +} + +function assignRankMinMax(g) { + var maxRank = 0; + forEach/* default */.A(g.nodes(), function (v) { + var node = g.node(v); + if (node.borderTop) { + node.minRank = g.node(node.borderTop).rank; + node.maxRank = g.node(node.borderBottom).rank; + // @ts-expect-error + maxRank = lodash_es_max(maxRank, node.maxRank); + } + }); + g.graph().maxRank = maxRank; +} + +function removeEdgeLabelProxies(g) { + forEach/* default */.A(g.nodes(), function (v) { + var node = g.node(v); + if (node.dummy === 'edge-proxy') { + g.edge(node.e).labelRank = node.rank; + g.removeNode(v); + } + }); +} + +function translateGraph(g) { + var minX = Number.POSITIVE_INFINITY; + var maxX = 0; + var minY = Number.POSITIVE_INFINITY; + var maxY = 0; + var graphLabel = g.graph(); + var marginX = graphLabel.marginx || 0; + var marginY = graphLabel.marginy || 0; + + function getExtremes(attrs) { + var x = attrs.x; + var y = attrs.y; + var w = attrs.width; + var h = attrs.height; + minX = Math.min(minX, x - w / 2); + maxX = Math.max(maxX, x + w / 2); + minY = Math.min(minY, y - h / 2); + maxY = Math.max(maxY, y + h / 2); + } + + forEach/* default */.A(g.nodes(), function (v) { + getExtremes(g.node(v)); + }); + forEach/* default */.A(g.edges(), function (e) { + var edge = g.edge(e); + if (has/* default */.A(edge, 'x')) { + getExtremes(edge); + } + }); + + minX -= marginX; + minY -= marginY; + + forEach/* default */.A(g.nodes(), function (v) { + var node = g.node(v); + node.x -= minX; + node.y -= minY; + }); + + forEach/* default */.A(g.edges(), function (e) { + var edge = g.edge(e); + forEach/* default */.A(edge.points, function (p) { + p.x -= minX; + p.y -= minY; + }); + if (has/* default */.A(edge, 'x')) { + edge.x -= minX; + } + if (has/* default */.A(edge, 'y')) { + edge.y -= minY; + } + }); + + graphLabel.width = maxX - minX + marginX; + graphLabel.height = maxY - minY + marginY; +} + +function assignNodeIntersects(g) { + forEach/* default */.A(g.edges(), function (e) { + var edge = g.edge(e); + var nodeV = g.node(e.v); + var nodeW = g.node(e.w); + var p1, p2; + if (!edge.points) { + edge.points = []; + p1 = nodeW; + p2 = nodeV; + } else { + p1 = edge.points[0]; + p2 = edge.points[edge.points.length - 1]; + } + edge.points.unshift(intersectRect(nodeV, p1)); + edge.points.push(intersectRect(nodeW, p2)); + }); +} + +function fixupEdgeLabelCoords(g) { + forEach/* default */.A(g.edges(), function (e) { + var edge = g.edge(e); + if (has/* default */.A(edge, 'x')) { + if (edge.labelpos === 'l' || edge.labelpos === 'r') { + edge.width -= edge.labeloffset; + } + switch (edge.labelpos) { + case 'l': + edge.x -= edge.width / 2 + edge.labeloffset; + break; + case 'r': + edge.x += edge.width / 2 + edge.labeloffset; + break; + } + } + }); +} + +function reversePointsForReversedEdges(g) { + forEach/* default */.A(g.edges(), function (e) { + var edge = g.edge(e); + if (edge.reversed) { + edge.points.reverse(); + } + }); +} + +function removeBorderNodes(g) { + forEach/* default */.A(g.nodes(), function (v) { + if (g.children(v).length) { + var node = g.node(v); + var t = g.node(node.borderTop); + var b = g.node(node.borderBottom); + var l = g.node(lodash_es_last/* default */.A(node.borderLeft)); + var r = g.node(lodash_es_last/* default */.A(node.borderRight)); + + node.width = Math.abs(r.x - l.x); + node.height = Math.abs(b.y - t.y); + node.x = l.x + node.width / 2; + node.y = t.y + node.height / 2; + } + }); + + forEach/* default */.A(g.nodes(), function (v) { + if (g.node(v).dummy === 'border') { + g.removeNode(v); + } + }); +} + +function removeSelfEdges(g) { + forEach/* default */.A(g.edges(), function (e) { + if (e.v === e.w) { + var node = g.node(e.v); + if (!node.selfEdges) { + node.selfEdges = []; + } + node.selfEdges.push({ e: e, label: g.edge(e) }); + g.removeEdge(e); + } + }); +} + +function insertSelfEdges(g) { + var layers = buildLayerMatrix(g); + forEach/* default */.A(layers, function (layer) { + var orderShift = 0; + forEach/* default */.A(layer, function (v, i) { + var node = g.node(v); + node.order = i + orderShift; + forEach/* default */.A(node.selfEdges, function (selfEdge) { + addDummyNode( + g, + 'selfedge', + { + width: selfEdge.label.width, + height: selfEdge.label.height, + rank: node.rank, + order: i + ++orderShift, + e: selfEdge.e, + label: selfEdge.label, + }, + '_se' + ); + }); + delete node.selfEdges; + }); + }); +} + +function positionSelfEdges(g) { + forEach/* default */.A(g.nodes(), function (v) { + var node = g.node(v); + if (node.dummy === 'selfedge') { + var selfNode = g.node(node.e.v); + var x = selfNode.x + selfNode.width / 2; + var y = selfNode.y; + var dx = node.x - x; + var dy = selfNode.height / 2; + g.setEdge(node.e, node.label); + g.removeNode(v); + node.label.points = [ + { x: x + (2 * dx) / 3, y: y - dy }, + { x: x + (5 * dx) / 6, y: y - dy }, + { x: x + dx, y: y }, + { x: x + (5 * dx) / 6, y: y + dy }, + { x: x + (2 * dx) / 3, y: y + dy }, + ]; + node.label.x = node.x; + node.label.y = node.y; + } + }); +} + +function selectNumberAttrs(obj, attrs) { + return lodash_es_mapValues(lodash_es_pick(obj, attrs), Number); +} + +function canonicalize(attrs) { + var newAttrs = {}; + forEach/* default */.A(attrs, function (v, k) { + newAttrs[k.toLowerCase()] = v; + }); + return newAttrs; +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/index.js + + + + + + + + +/***/ }), + +/***/ 37981: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + T: () => (/* binding */ Graph) +}); + +// EXTERNAL MODULE: ./node_modules/lodash-es/has.js + 1 modules +var has = __webpack_require__(48585); +// EXTERNAL MODULE: ./node_modules/lodash-es/constant.js +var constant = __webpack_require__(39142); +// EXTERNAL MODULE: ./node_modules/lodash-es/isFunction.js +var isFunction = __webpack_require__(89610); +// EXTERNAL MODULE: ./node_modules/lodash-es/keys.js +var keys = __webpack_require__(27422); +// EXTERNAL MODULE: ./node_modules/lodash-es/filter.js +var filter = __webpack_require__(94092); +// EXTERNAL MODULE: ./node_modules/lodash-es/isEmpty.js +var isEmpty = __webpack_require__(66401); +// EXTERNAL MODULE: ./node_modules/lodash-es/forEach.js +var forEach = __webpack_require__(8058); +// EXTERNAL MODULE: ./node_modules/lodash-es/isUndefined.js +var isUndefined = __webpack_require__(69592); +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseFlatten.js + 1 modules +var _baseFlatten = __webpack_require__(13588); +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseRest.js +var _baseRest = __webpack_require__(24326); +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseUniq.js + 1 modules +var _baseUniq = __webpack_require__(99902); +// EXTERNAL MODULE: ./node_modules/lodash-es/isArrayLikeObject.js +var isArrayLikeObject = __webpack_require__(53533); +;// CONCATENATED MODULE: ./node_modules/lodash-es/union.js + + + + + +/** + * Creates an array of unique values, in order, from all given arrays using + * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * for equality comparisons. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {...Array} [arrays] The arrays to inspect. + * @returns {Array} Returns the new array of combined values. + * @example + * + * _.union([2], [1, 2]); + * // => [2, 1] + */ +var union = (0,_baseRest/* default */.A)(function(arrays) { + return (0,_baseUniq/* default */.A)((0,_baseFlatten/* default */.A)(arrays, 1, isArrayLikeObject/* default */.A, true)); +}); + +/* harmony default export */ const lodash_es_union = (union); + +// EXTERNAL MODULE: ./node_modules/lodash-es/values.js + 1 modules +var values = __webpack_require__(38207); +// EXTERNAL MODULE: ./node_modules/lodash-es/reduce.js + 2 modules +var reduce = __webpack_require__(89463); +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/graphlib/graph.js + + +var DEFAULT_EDGE_NAME = '\x00'; +var GRAPH_NODE = '\x00'; +var EDGE_KEY_DELIM = '\x01'; + +// Implementation notes: +// +// * Node id query functions should return string ids for the nodes +// * Edge id query functions should return an "edgeObj", edge object, that is +// composed of enough information to uniquely identify an edge: {v, w, name}. +// * Internally we use an "edgeId", a stringified form of the edgeObj, to +// reference edges. This is because we need a performant way to look these +// edges up and, object properties, which have string keys, are the closest +// we're going to get to a performant hashtable in JavaScript. + +// Implementation notes: +// +// * Node id query functions should return string ids for the nodes +// * Edge id query functions should return an "edgeObj", edge object, that is +// composed of enough information to uniquely identify an edge: {v, w, name}. +// * Internally we use an "edgeId", a stringified form of the edgeObj, to +// reference edges. This is because we need a performant way to look these +// edges up and, object properties, which have string keys, are the closest +// we're going to get to a performant hashtable in JavaScript. +class Graph { + constructor(opts = {}) { + this._isDirected = has/* default */.A(opts, 'directed') ? opts.directed : true; + this._isMultigraph = has/* default */.A(opts, 'multigraph') ? opts.multigraph : false; + this._isCompound = has/* default */.A(opts, 'compound') ? opts.compound : false; + + // Label for the graph itself + this._label = undefined; + + // Defaults to be set when creating a new node + this._defaultNodeLabelFn = constant/* default */.A(undefined); + + // Defaults to be set when creating a new edge + this._defaultEdgeLabelFn = constant/* default */.A(undefined); + + // v -> label + this._nodes = {}; + + if (this._isCompound) { + // v -> parent + this._parent = {}; + + // v -> children + this._children = {}; + this._children[GRAPH_NODE] = {}; + } + + // v -> edgeObj + this._in = {}; + + // u -> v -> Number + this._preds = {}; + + // v -> edgeObj + this._out = {}; + + // v -> w -> Number + this._sucs = {}; + + // e -> edgeObj + this._edgeObjs = {}; + + // e -> label + this._edgeLabels = {}; + } + /* === Graph functions ========= */ + isDirected() { + return this._isDirected; + } + isMultigraph() { + return this._isMultigraph; + } + isCompound() { + return this._isCompound; + } + setGraph(label) { + this._label = label; + return this; + } + graph() { + return this._label; + } + /* === Node functions ========== */ + setDefaultNodeLabel(newDefault) { + if (!isFunction/* default */.A(newDefault)) { + newDefault = constant/* default */.A(newDefault); + } + this._defaultNodeLabelFn = newDefault; + return this; + } + nodeCount() { + return this._nodeCount; + } + nodes() { + return keys/* default */.A(this._nodes); + } + sources() { + var self = this; + return filter/* default */.A(this.nodes(), function (v) { + return isEmpty/* default */.A(self._in[v]); + }); + } + sinks() { + var self = this; + return filter/* default */.A(this.nodes(), function (v) { + return isEmpty/* default */.A(self._out[v]); + }); + } + setNodes(vs, value) { + var args = arguments; + var self = this; + forEach/* default */.A(vs, function (v) { + if (args.length > 1) { + self.setNode(v, value); + } else { + self.setNode(v); + } + }); + return this; + } + setNode(v, value) { + if (has/* default */.A(this._nodes, v)) { + if (arguments.length > 1) { + this._nodes[v] = value; + } + return this; + } + + // @ts-expect-error + this._nodes[v] = arguments.length > 1 ? value : this._defaultNodeLabelFn(v); + if (this._isCompound) { + this._parent[v] = GRAPH_NODE; + this._children[v] = {}; + this._children[GRAPH_NODE][v] = true; + } + this._in[v] = {}; + this._preds[v] = {}; + this._out[v] = {}; + this._sucs[v] = {}; + ++this._nodeCount; + return this; + } + node(v) { + return this._nodes[v]; + } + hasNode(v) { + return has/* default */.A(this._nodes, v); + } + removeNode(v) { + var self = this; + if (has/* default */.A(this._nodes, v)) { + var removeEdge = function (e) { + self.removeEdge(self._edgeObjs[e]); + }; + delete this._nodes[v]; + if (this._isCompound) { + this._removeFromParentsChildList(v); + delete this._parent[v]; + forEach/* default */.A(this.children(v), function (child) { + self.setParent(child); + }); + delete this._children[v]; + } + forEach/* default */.A(keys/* default */.A(this._in[v]), removeEdge); + delete this._in[v]; + delete this._preds[v]; + forEach/* default */.A(keys/* default */.A(this._out[v]), removeEdge); + delete this._out[v]; + delete this._sucs[v]; + --this._nodeCount; + } + return this; + } + setParent(v, parent) { + if (!this._isCompound) { + throw new Error('Cannot set parent in a non-compound graph'); + } + + if (isUndefined/* default */.A(parent)) { + parent = GRAPH_NODE; + } else { + // Coerce parent to string + parent += ''; + for (var ancestor = parent; !isUndefined/* default */.A(ancestor); ancestor = this.parent(ancestor)) { + if (ancestor === v) { + throw new Error('Setting ' + parent + ' as parent of ' + v + ' would create a cycle'); + } + } + + this.setNode(parent); + } + + this.setNode(v); + this._removeFromParentsChildList(v); + this._parent[v] = parent; + this._children[parent][v] = true; + return this; + } + _removeFromParentsChildList(v) { + delete this._children[this._parent[v]][v]; + } + parent(v) { + if (this._isCompound) { + var parent = this._parent[v]; + if (parent !== GRAPH_NODE) { + return parent; + } + } + } + children(v) { + if (isUndefined/* default */.A(v)) { + v = GRAPH_NODE; + } + + if (this._isCompound) { + var children = this._children[v]; + if (children) { + return keys/* default */.A(children); + } + } else if (v === GRAPH_NODE) { + return this.nodes(); + } else if (this.hasNode(v)) { + return []; + } + } + predecessors(v) { + var predsV = this._preds[v]; + if (predsV) { + return keys/* default */.A(predsV); + } + } + successors(v) { + var sucsV = this._sucs[v]; + if (sucsV) { + return keys/* default */.A(sucsV); + } + } + neighbors(v) { + var preds = this.predecessors(v); + if (preds) { + return lodash_es_union(preds, this.successors(v)); + } + } + isLeaf(v) { + var neighbors; + if (this.isDirected()) { + neighbors = this.successors(v); + } else { + neighbors = this.neighbors(v); + } + return neighbors.length === 0; + } + filterNodes(filter) { + // @ts-expect-error + var copy = new this.constructor({ + directed: this._isDirected, + multigraph: this._isMultigraph, + compound: this._isCompound, + }); + + copy.setGraph(this.graph()); + + var self = this; + forEach/* default */.A(this._nodes, function (value, v) { + if (filter(v)) { + copy.setNode(v, value); + } + }); + + forEach/* default */.A(this._edgeObjs, function (e) { + // @ts-expect-error + if (copy.hasNode(e.v) && copy.hasNode(e.w)) { + copy.setEdge(e, self.edge(e)); + } + }); + + var parents = {}; + function findParent(v) { + var parent = self.parent(v); + if (parent === undefined || copy.hasNode(parent)) { + parents[v] = parent; + return parent; + } else if (parent in parents) { + return parents[parent]; + } else { + return findParent(parent); + } + } + + if (this._isCompound) { + forEach/* default */.A(copy.nodes(), function (v) { + copy.setParent(v, findParent(v)); + }); + } + + return copy; + } + /* === Edge functions ========== */ + setDefaultEdgeLabel(newDefault) { + if (!isFunction/* default */.A(newDefault)) { + newDefault = constant/* default */.A(newDefault); + } + this._defaultEdgeLabelFn = newDefault; + return this; + } + edgeCount() { + return this._edgeCount; + } + edges() { + return values/* default */.A(this._edgeObjs); + } + setPath(vs, value) { + var self = this; + var args = arguments; + reduce/* default */.A(vs, function (v, w) { + if (args.length > 1) { + self.setEdge(v, w, value); + } else { + self.setEdge(v, w); + } + return w; + }); + return this; + } + /* + * setEdge(v, w, [value, [name]]) + * setEdge({ v, w, [name] }, [value]) + */ + setEdge() { + var v, w, name, value; + var valueSpecified = false; + var arg0 = arguments[0]; + + if (typeof arg0 === 'object' && arg0 !== null && 'v' in arg0) { + v = arg0.v; + w = arg0.w; + name = arg0.name; + if (arguments.length === 2) { + value = arguments[1]; + valueSpecified = true; + } + } else { + v = arg0; + w = arguments[1]; + name = arguments[3]; + if (arguments.length > 2) { + value = arguments[2]; + valueSpecified = true; + } + } + + v = '' + v; + w = '' + w; + if (!isUndefined/* default */.A(name)) { + name = '' + name; + } + + var e = edgeArgsToId(this._isDirected, v, w, name); + if (has/* default */.A(this._edgeLabels, e)) { + if (valueSpecified) { + this._edgeLabels[e] = value; + } + return this; + } + + if (!isUndefined/* default */.A(name) && !this._isMultigraph) { + throw new Error('Cannot set a named edge when isMultigraph = false'); + } + + // It didn't exist, so we need to create it. + // First ensure the nodes exist. + this.setNode(v); + this.setNode(w); + + // @ts-expect-error + this._edgeLabels[e] = valueSpecified ? value : this._defaultEdgeLabelFn(v, w, name); + + var edgeObj = edgeArgsToObj(this._isDirected, v, w, name); + // Ensure we add undirected edges in a consistent way. + v = edgeObj.v; + w = edgeObj.w; + + Object.freeze(edgeObj); + this._edgeObjs[e] = edgeObj; + incrementOrInitEntry(this._preds[w], v); + incrementOrInitEntry(this._sucs[v], w); + this._in[w][e] = edgeObj; + this._out[v][e] = edgeObj; + this._edgeCount++; + return this; + } + edge(v, w, name) { + var e = + arguments.length === 1 + ? edgeObjToId(this._isDirected, arguments[0]) + : edgeArgsToId(this._isDirected, v, w, name); + return this._edgeLabels[e]; + } + hasEdge(v, w, name) { + var e = + arguments.length === 1 + ? edgeObjToId(this._isDirected, arguments[0]) + : edgeArgsToId(this._isDirected, v, w, name); + return has/* default */.A(this._edgeLabels, e); + } + removeEdge(v, w, name) { + var e = + arguments.length === 1 + ? edgeObjToId(this._isDirected, arguments[0]) + : edgeArgsToId(this._isDirected, v, w, name); + var edge = this._edgeObjs[e]; + if (edge) { + v = edge.v; + w = edge.w; + delete this._edgeLabels[e]; + delete this._edgeObjs[e]; + decrementOrRemoveEntry(this._preds[w], v); + decrementOrRemoveEntry(this._sucs[v], w); + delete this._in[w][e]; + delete this._out[v][e]; + this._edgeCount--; + } + return this; + } + inEdges(v, u) { + var inV = this._in[v]; + if (inV) { + var edges = values/* default */.A(inV); + if (!u) { + return edges; + } + return filter/* default */.A(edges, function (edge) { + return edge.v === u; + }); + } + } + outEdges(v, w) { + var outV = this._out[v]; + if (outV) { + var edges = values/* default */.A(outV); + if (!w) { + return edges; + } + return filter/* default */.A(edges, function (edge) { + return edge.w === w; + }); + } + } + nodeEdges(v, w) { + var inEdges = this.inEdges(v, w); + if (inEdges) { + return inEdges.concat(this.outEdges(v, w)); + } + } +} + +/* Number of nodes in the graph. Should only be changed by the implementation. */ +Graph.prototype._nodeCount = 0; + +/* Number of edges in the graph. Should only be changed by the implementation. */ +Graph.prototype._edgeCount = 0; + +function incrementOrInitEntry(map, k) { + if (map[k]) { + map[k]++; + } else { + map[k] = 1; + } +} + +function decrementOrRemoveEntry(map, k) { + if (!--map[k]) { + delete map[k]; + } +} + +function edgeArgsToId(isDirected, v_, w_, name) { + var v = '' + v_; + var w = '' + w_; + if (!isDirected && v > w) { + var tmp = v; + v = w; + w = tmp; + } + return v + EDGE_KEY_DELIM + w + EDGE_KEY_DELIM + (isUndefined/* default */.A(name) ? DEFAULT_EDGE_NAME : name); +} + +function edgeArgsToObj(isDirected, v_, w_, name) { + var v = '' + v_; + var w = '' + w_; + if (!isDirected && v > w) { + var tmp = v; + v = w; + w = tmp; + } + var edgeObj = { v: v, w: w }; + if (name) { + edgeObj.name = name; + } + return edgeObj; +} + +function edgeObjToId(isDirected, edgeObj) { + return edgeArgsToId(isDirected, edgeObj.v, edgeObj.w, edgeObj.name); +} + + +/***/ }), + +/***/ 697: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ T: () => (/* reexport safe */ _graph_js__WEBPACK_IMPORTED_MODULE_0__.T) +/* harmony export */ }); +/* unused harmony export version */ +/* harmony import */ var _graph_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(37981); +// Includes only the "core" of graphlib + + + +const version = '2.1.9-pre'; + + + + +/***/ }), + +/***/ 62062: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ _SetCache) +}); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_MapCache.js + 14 modules +var _MapCache = __webpack_require__(29471); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_setCacheAdd.js +/** Used to stand-in for `undefined` hash values. */ +var HASH_UNDEFINED = '__lodash_hash_undefined__'; + +/** + * Adds `value` to the array cache. + * + * @private + * @name add + * @memberOf SetCache + * @alias push + * @param {*} value The value to cache. + * @returns {Object} Returns the cache instance. + */ +function setCacheAdd(value) { + this.__data__.set(value, HASH_UNDEFINED); + return this; +} + +/* harmony default export */ const _setCacheAdd = (setCacheAdd); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_setCacheHas.js +/** + * Checks if `value` is in the array cache. + * + * @private + * @name has + * @memberOf SetCache + * @param {*} value The value to search for. + * @returns {number} Returns `true` if `value` is found, else `false`. + */ +function setCacheHas(value) { + return this.__data__.has(value); +} + +/* harmony default export */ const _setCacheHas = (setCacheHas); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_SetCache.js + + + + +/** + * + * Creates an array cache object to store unique values. + * + * @private + * @constructor + * @param {Array} [values] The values to cache. + */ +function SetCache(values) { + var index = -1, + length = values == null ? 0 : values.length; + + this.__data__ = new _MapCache/* default */.A; + while (++index < length) { + this.add(values[index]); + } +} + +// Add methods to `SetCache`. +SetCache.prototype.add = SetCache.prototype.push = _setCacheAdd; +SetCache.prototype.has = _setCacheHas; + +/* harmony default export */ const _SetCache = (SetCache); + + +/***/ }), + +/***/ 72641: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * A specialized version of `_.forEach` for arrays without support for + * iteratee shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array} Returns `array`. + */ +function arrayEach(array, iteratee) { + var index = -1, + length = array == null ? 0 : array.length; + + while (++index < length) { + if (iteratee(array[index], index, array) === false) { + break; + } + } + return array; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (arrayEach); + + +/***/ }), + +/***/ 2634: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * A specialized version of `_.filter` for arrays without support for + * iteratee shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {Array} Returns the new filtered array. + */ +function arrayFilter(array, predicate) { + var index = -1, + length = array == null ? 0 : array.length, + resIndex = 0, + result = []; + + while (++index < length) { + var value = array[index]; + if (predicate(value, index, array)) { + result[resIndex++] = value; + } + } + return result; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (arrayFilter); + + +/***/ }), + +/***/ 83149: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _baseIndexOf_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(60818); + + +/** + * A specialized version of `_.includes` for arrays without support for + * specifying an index to search from. + * + * @private + * @param {Array} [array] The array to inspect. + * @param {*} target The value to search for. + * @returns {boolean} Returns `true` if `target` is found, else `false`. + */ +function arrayIncludes(array, value) { + var length = array == null ? 0 : array.length; + return !!length && (0,_baseIndexOf_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(array, value, 0) > -1; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (arrayIncludes); + + +/***/ }), + +/***/ 87809: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * This function is like `arrayIncludes` except that it accepts a comparator. + * + * @private + * @param {Array} [array] The array to inspect. + * @param {*} target The value to search for. + * @param {Function} comparator The comparator invoked per element. + * @returns {boolean} Returns `true` if `target` is found, else `false`. + */ +function arrayIncludesWith(array, value, comparator) { + var index = -1, + length = array == null ? 0 : array.length; + + while (++index < length) { + if (comparator(value, array[index])) { + return true; + } + } + return false; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (arrayIncludesWith); + + +/***/ }), + +/***/ 45572: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * A specialized version of `_.map` for arrays without support for iteratee + * shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array} Returns the new mapped array. + */ +function arrayMap(array, iteratee) { + var index = -1, + length = array == null ? 0 : array.length, + result = Array(length); + + while (++index < length) { + result[index] = iteratee(array[index], index, array); + } + return result; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (arrayMap); + + +/***/ }), + +/***/ 76912: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * Appends the elements of `values` to `array`. + * + * @private + * @param {Array} array The array to modify. + * @param {Array} values The values to append. + * @returns {Array} Returns `array`. + */ +function arrayPush(array, values) { + var index = -1, + length = values.length, + offset = array.length; + + while (++index < length) { + array[offset + index] = values[index]; + } + return array; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (arrayPush); + + +/***/ }), + +/***/ 63736: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * A specialized version of `_.some` for arrays without support for iteratee + * shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {boolean} Returns `true` if any element passes the predicate check, + * else `false`. + */ +function arraySome(array, predicate) { + var index = -1, + length = array == null ? 0 : array.length; + + while (++index < length) { + if (predicate(array[index], index, array)) { + return true; + } + } + return false; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (arraySome); + + +/***/ }), + +/***/ 68675: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ _baseClone) +}); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_Stack.js + 5 modules +var _Stack = __webpack_require__(11754); +// EXTERNAL MODULE: ./node_modules/lodash-es/_arrayEach.js +var _arrayEach = __webpack_require__(72641); +// EXTERNAL MODULE: ./node_modules/lodash-es/_assignValue.js +var _assignValue = __webpack_require__(52851); +// EXTERNAL MODULE: ./node_modules/lodash-es/_copyObject.js +var _copyObject = __webpack_require__(22031); +// EXTERNAL MODULE: ./node_modules/lodash-es/keys.js +var keys = __webpack_require__(27422); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseAssign.js + + + +/** + * The base implementation of `_.assign` without support for multiple sources + * or `customizer` functions. + * + * @private + * @param {Object} object The destination object. + * @param {Object} source The source object. + * @returns {Object} Returns `object`. + */ +function baseAssign(object, source) { + return object && (0,_copyObject/* default */.A)(source, (0,keys/* default */.A)(source), object); +} + +/* harmony default export */ const _baseAssign = (baseAssign); + +// EXTERNAL MODULE: ./node_modules/lodash-es/keysIn.js + 2 modules +var keysIn = __webpack_require__(55615); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseAssignIn.js + + + +/** + * The base implementation of `_.assignIn` without support for multiple sources + * or `customizer` functions. + * + * @private + * @param {Object} object The destination object. + * @param {Object} source The source object. + * @returns {Object} Returns `object`. + */ +function baseAssignIn(object, source) { + return object && (0,_copyObject/* default */.A)(source, (0,keysIn/* default */.A)(source), object); +} + +/* harmony default export */ const _baseAssignIn = (baseAssignIn); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_cloneBuffer.js +var _cloneBuffer = __webpack_require__(80154); +// EXTERNAL MODULE: ./node_modules/lodash-es/_copyArray.js +var _copyArray = __webpack_require__(39759); +// EXTERNAL MODULE: ./node_modules/lodash-es/_getSymbols.js +var _getSymbols = __webpack_require__(14792); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_copySymbols.js + + + +/** + * Copies own symbols of `source` to `object`. + * + * @private + * @param {Object} source The object to copy symbols from. + * @param {Object} [object={}] The object to copy symbols to. + * @returns {Object} Returns `object`. + */ +function copySymbols(source, object) { + return (0,_copyObject/* default */.A)(source, (0,_getSymbols/* default */.A)(source), object); +} + +/* harmony default export */ const _copySymbols = (copySymbols); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_getSymbolsIn.js +var _getSymbolsIn = __webpack_require__(83511); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_copySymbolsIn.js + + + +/** + * Copies own and inherited symbols of `source` to `object`. + * + * @private + * @param {Object} source The object to copy symbols from. + * @param {Object} [object={}] The object to copy symbols to. + * @returns {Object} Returns `object`. + */ +function copySymbolsIn(source, object) { + return (0,_copyObject/* default */.A)(source, (0,_getSymbolsIn/* default */.A)(source), object); +} + +/* harmony default export */ const _copySymbolsIn = (copySymbolsIn); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_getAllKeys.js +var _getAllKeys = __webpack_require__(19042); +// EXTERNAL MODULE: ./node_modules/lodash-es/_getAllKeysIn.js +var _getAllKeysIn = __webpack_require__(83973); +// EXTERNAL MODULE: ./node_modules/lodash-es/_getTag.js + 3 modules +var _getTag = __webpack_require__(9779); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_initCloneArray.js +/** Used for built-in method references. */ +var objectProto = Object.prototype; + +/** Used to check objects for own properties. */ +var _initCloneArray_hasOwnProperty = objectProto.hasOwnProperty; + +/** + * Initializes an array clone. + * + * @private + * @param {Array} array The array to clone. + * @returns {Array} Returns the initialized clone. + */ +function initCloneArray(array) { + var length = array.length, + result = new array.constructor(length); + + // Add properties assigned by `RegExp#exec`. + if (length && typeof array[0] == 'string' && _initCloneArray_hasOwnProperty.call(array, 'index')) { + result.index = array.index; + result.input = array.input; + } + return result; +} + +/* harmony default export */ const _initCloneArray = (initCloneArray); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_cloneArrayBuffer.js +var _cloneArrayBuffer = __webpack_require__(90565); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_cloneDataView.js + + +/** + * Creates a clone of `dataView`. + * + * @private + * @param {Object} dataView The data view to clone. + * @param {boolean} [isDeep] Specify a deep clone. + * @returns {Object} Returns the cloned data view. + */ +function cloneDataView(dataView, isDeep) { + var buffer = isDeep ? (0,_cloneArrayBuffer/* default */.A)(dataView.buffer) : dataView.buffer; + return new dataView.constructor(buffer, dataView.byteOffset, dataView.byteLength); +} + +/* harmony default export */ const _cloneDataView = (cloneDataView); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_cloneRegExp.js +/** Used to match `RegExp` flags from their coerced string values. */ +var reFlags = /\w*$/; + +/** + * Creates a clone of `regexp`. + * + * @private + * @param {Object} regexp The regexp to clone. + * @returns {Object} Returns the cloned regexp. + */ +function cloneRegExp(regexp) { + var result = new regexp.constructor(regexp.source, reFlags.exec(regexp)); + result.lastIndex = regexp.lastIndex; + return result; +} + +/* harmony default export */ const _cloneRegExp = (cloneRegExp); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_Symbol.js +var _Symbol = __webpack_require__(241); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_cloneSymbol.js + + +/** Used to convert symbols to primitives and strings. */ +var symbolProto = _Symbol/* default */.A ? _Symbol/* default */.A.prototype : undefined, + symbolValueOf = symbolProto ? symbolProto.valueOf : undefined; + +/** + * Creates a clone of the `symbol` object. + * + * @private + * @param {Object} symbol The symbol object to clone. + * @returns {Object} Returns the cloned symbol object. + */ +function cloneSymbol(symbol) { + return symbolValueOf ? Object(symbolValueOf.call(symbol)) : {}; +} + +/* harmony default export */ const _cloneSymbol = (cloneSymbol); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_cloneTypedArray.js +var _cloneTypedArray = __webpack_require__(1801); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_initCloneByTag.js + + + + + + +/** `Object#toString` result references. */ +var boolTag = '[object Boolean]', + dateTag = '[object Date]', + mapTag = '[object Map]', + numberTag = '[object Number]', + regexpTag = '[object RegExp]', + setTag = '[object Set]', + stringTag = '[object String]', + symbolTag = '[object Symbol]'; + +var arrayBufferTag = '[object ArrayBuffer]', + dataViewTag = '[object DataView]', + float32Tag = '[object Float32Array]', + float64Tag = '[object Float64Array]', + int8Tag = '[object Int8Array]', + int16Tag = '[object Int16Array]', + int32Tag = '[object Int32Array]', + uint8Tag = '[object Uint8Array]', + uint8ClampedTag = '[object Uint8ClampedArray]', + uint16Tag = '[object Uint16Array]', + uint32Tag = '[object Uint32Array]'; + +/** + * Initializes an object clone based on its `toStringTag`. + * + * **Note:** This function only supports cloning values with tags of + * `Boolean`, `Date`, `Error`, `Map`, `Number`, `RegExp`, `Set`, or `String`. + * + * @private + * @param {Object} object The object to clone. + * @param {string} tag The `toStringTag` of the object to clone. + * @param {boolean} [isDeep] Specify a deep clone. + * @returns {Object} Returns the initialized clone. + */ +function initCloneByTag(object, tag, isDeep) { + var Ctor = object.constructor; + switch (tag) { + case arrayBufferTag: + return (0,_cloneArrayBuffer/* default */.A)(object); + + case boolTag: + case dateTag: + return new Ctor(+object); + + case dataViewTag: + return _cloneDataView(object, isDeep); + + case float32Tag: case float64Tag: + case int8Tag: case int16Tag: case int32Tag: + case uint8Tag: case uint8ClampedTag: case uint16Tag: case uint32Tag: + return (0,_cloneTypedArray/* default */.A)(object, isDeep); + + case mapTag: + return new Ctor; + + case numberTag: + case stringTag: + return new Ctor(object); + + case regexpTag: + return _cloneRegExp(object); + + case setTag: + return new Ctor; + + case symbolTag: + return _cloneSymbol(object); + } +} + +/* harmony default export */ const _initCloneByTag = (initCloneByTag); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_initCloneObject.js + 1 modules +var _initCloneObject = __webpack_require__(18598); +// EXTERNAL MODULE: ./node_modules/lodash-es/isArray.js +var isArray = __webpack_require__(92049); +// EXTERNAL MODULE: ./node_modules/lodash-es/isBuffer.js + 1 modules +var isBuffer = __webpack_require__(99912); +// EXTERNAL MODULE: ./node_modules/lodash-es/isObjectLike.js +var isObjectLike = __webpack_require__(53098); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseIsMap.js + + + +/** `Object#toString` result references. */ +var _baseIsMap_mapTag = '[object Map]'; + +/** + * The base implementation of `_.isMap` without Node.js optimizations. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a map, else `false`. + */ +function baseIsMap(value) { + return (0,isObjectLike/* default */.A)(value) && (0,_getTag/* default */.A)(value) == _baseIsMap_mapTag; +} + +/* harmony default export */ const _baseIsMap = (baseIsMap); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseUnary.js +var _baseUnary = __webpack_require__(52789); +// EXTERNAL MODULE: ./node_modules/lodash-es/_nodeUtil.js +var _nodeUtil = __webpack_require__(64841); +;// CONCATENATED MODULE: ./node_modules/lodash-es/isMap.js + + + + +/* Node.js helper references. */ +var nodeIsMap = _nodeUtil/* default */.A && _nodeUtil/* default */.A.isMap; + +/** + * Checks if `value` is classified as a `Map` object. + * + * @static + * @memberOf _ + * @since 4.3.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a map, else `false`. + * @example + * + * _.isMap(new Map); + * // => true + * + * _.isMap(new WeakMap); + * // => false + */ +var isMap = nodeIsMap ? (0,_baseUnary/* default */.A)(nodeIsMap) : _baseIsMap; + +/* harmony default export */ const lodash_es_isMap = (isMap); + +// EXTERNAL MODULE: ./node_modules/lodash-es/isObject.js +var isObject = __webpack_require__(23149); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseIsSet.js + + + +/** `Object#toString` result references. */ +var _baseIsSet_setTag = '[object Set]'; + +/** + * The base implementation of `_.isSet` without Node.js optimizations. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a set, else `false`. + */ +function baseIsSet(value) { + return (0,isObjectLike/* default */.A)(value) && (0,_getTag/* default */.A)(value) == _baseIsSet_setTag; +} + +/* harmony default export */ const _baseIsSet = (baseIsSet); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/isSet.js + + + + +/* Node.js helper references. */ +var nodeIsSet = _nodeUtil/* default */.A && _nodeUtil/* default */.A.isSet; + +/** + * Checks if `value` is classified as a `Set` object. + * + * @static + * @memberOf _ + * @since 4.3.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a set, else `false`. + * @example + * + * _.isSet(new Set); + * // => true + * + * _.isSet(new WeakSet); + * // => false + */ +var isSet = nodeIsSet ? (0,_baseUnary/* default */.A)(nodeIsSet) : _baseIsSet; + +/* harmony default export */ const lodash_es_isSet = (isSet); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseClone.js + + + + + + + + + + + + + + + + + + + + + + + +/** Used to compose bitmasks for cloning. */ +var CLONE_DEEP_FLAG = 1, + CLONE_FLAT_FLAG = 2, + CLONE_SYMBOLS_FLAG = 4; + +/** `Object#toString` result references. */ +var argsTag = '[object Arguments]', + arrayTag = '[object Array]', + _baseClone_boolTag = '[object Boolean]', + _baseClone_dateTag = '[object Date]', + errorTag = '[object Error]', + funcTag = '[object Function]', + genTag = '[object GeneratorFunction]', + _baseClone_mapTag = '[object Map]', + _baseClone_numberTag = '[object Number]', + objectTag = '[object Object]', + _baseClone_regexpTag = '[object RegExp]', + _baseClone_setTag = '[object Set]', + _baseClone_stringTag = '[object String]', + _baseClone_symbolTag = '[object Symbol]', + weakMapTag = '[object WeakMap]'; + +var _baseClone_arrayBufferTag = '[object ArrayBuffer]', + _baseClone_dataViewTag = '[object DataView]', + _baseClone_float32Tag = '[object Float32Array]', + _baseClone_float64Tag = '[object Float64Array]', + _baseClone_int8Tag = '[object Int8Array]', + _baseClone_int16Tag = '[object Int16Array]', + _baseClone_int32Tag = '[object Int32Array]', + _baseClone_uint8Tag = '[object Uint8Array]', + _baseClone_uint8ClampedTag = '[object Uint8ClampedArray]', + _baseClone_uint16Tag = '[object Uint16Array]', + _baseClone_uint32Tag = '[object Uint32Array]'; + +/** Used to identify `toStringTag` values supported by `_.clone`. */ +var cloneableTags = {}; +cloneableTags[argsTag] = cloneableTags[arrayTag] = +cloneableTags[_baseClone_arrayBufferTag] = cloneableTags[_baseClone_dataViewTag] = +cloneableTags[_baseClone_boolTag] = cloneableTags[_baseClone_dateTag] = +cloneableTags[_baseClone_float32Tag] = cloneableTags[_baseClone_float64Tag] = +cloneableTags[_baseClone_int8Tag] = cloneableTags[_baseClone_int16Tag] = +cloneableTags[_baseClone_int32Tag] = cloneableTags[_baseClone_mapTag] = +cloneableTags[_baseClone_numberTag] = cloneableTags[objectTag] = +cloneableTags[_baseClone_regexpTag] = cloneableTags[_baseClone_setTag] = +cloneableTags[_baseClone_stringTag] = cloneableTags[_baseClone_symbolTag] = +cloneableTags[_baseClone_uint8Tag] = cloneableTags[_baseClone_uint8ClampedTag] = +cloneableTags[_baseClone_uint16Tag] = cloneableTags[_baseClone_uint32Tag] = true; +cloneableTags[errorTag] = cloneableTags[funcTag] = +cloneableTags[weakMapTag] = false; + +/** + * The base implementation of `_.clone` and `_.cloneDeep` which tracks + * traversed objects. + * + * @private + * @param {*} value The value to clone. + * @param {boolean} bitmask The bitmask flags. + * 1 - Deep clone + * 2 - Flatten inherited properties + * 4 - Clone symbols + * @param {Function} [customizer] The function to customize cloning. + * @param {string} [key] The key of `value`. + * @param {Object} [object] The parent object of `value`. + * @param {Object} [stack] Tracks traversed objects and their clone counterparts. + * @returns {*} Returns the cloned value. + */ +function baseClone(value, bitmask, customizer, key, object, stack) { + var result, + isDeep = bitmask & CLONE_DEEP_FLAG, + isFlat = bitmask & CLONE_FLAT_FLAG, + isFull = bitmask & CLONE_SYMBOLS_FLAG; + + if (customizer) { + result = object ? customizer(value, key, object, stack) : customizer(value); + } + if (result !== undefined) { + return result; + } + if (!(0,isObject/* default */.A)(value)) { + return value; + } + var isArr = (0,isArray/* default */.A)(value); + if (isArr) { + result = _initCloneArray(value); + if (!isDeep) { + return (0,_copyArray/* default */.A)(value, result); + } + } else { + var tag = (0,_getTag/* default */.A)(value), + isFunc = tag == funcTag || tag == genTag; + + if ((0,isBuffer/* default */.A)(value)) { + return (0,_cloneBuffer/* default */.A)(value, isDeep); + } + if (tag == objectTag || tag == argsTag || (isFunc && !object)) { + result = (isFlat || isFunc) ? {} : (0,_initCloneObject/* default */.A)(value); + if (!isDeep) { + return isFlat + ? _copySymbolsIn(value, _baseAssignIn(result, value)) + : _copySymbols(value, _baseAssign(result, value)); + } + } else { + if (!cloneableTags[tag]) { + return object ? value : {}; + } + result = _initCloneByTag(value, tag, isDeep); + } + } + // Check for circular references and return its corresponding clone. + stack || (stack = new _Stack/* default */.A); + var stacked = stack.get(value); + if (stacked) { + return stacked; + } + stack.set(value, result); + + if (lodash_es_isSet(value)) { + value.forEach(function(subValue) { + result.add(baseClone(subValue, bitmask, customizer, subValue, value, stack)); + }); + } else if (lodash_es_isMap(value)) { + value.forEach(function(subValue, key) { + result.set(key, baseClone(subValue, bitmask, customizer, key, value, stack)); + }); + } + + var keysFunc = isFull + ? (isFlat ? _getAllKeysIn/* default */.A : _getAllKeys/* default */.A) + : (isFlat ? keysIn/* default */.A : keys/* default */.A); + + var props = isArr ? undefined : keysFunc(value); + (0,_arrayEach/* default */.A)(props || value, function(subValue, key) { + if (props) { + key = subValue; + subValue = value[key]; + } + // Recursively populate clone (susceptible to call stack limits). + (0,_assignValue/* default */.A)(result, key, baseClone(subValue, bitmask, customizer, key, value, stack)); + }); + return result; +} + +/* harmony default export */ const _baseClone = (baseClone); + + +/***/ }), + +/***/ 6240: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ _baseEach) +}); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseForOwn.js +var _baseForOwn = __webpack_require__(79841); +// EXTERNAL MODULE: ./node_modules/lodash-es/isArrayLike.js +var isArrayLike = __webpack_require__(38446); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_createBaseEach.js + + +/** + * Creates a `baseEach` or `baseEachRight` function. + * + * @private + * @param {Function} eachFunc The function to iterate over a collection. + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {Function} Returns the new base function. + */ +function createBaseEach(eachFunc, fromRight) { + return function(collection, iteratee) { + if (collection == null) { + return collection; + } + if (!(0,isArrayLike/* default */.A)(collection)) { + return eachFunc(collection, iteratee); + } + var length = collection.length, + index = fromRight ? length : -1, + iterable = Object(collection); + + while ((fromRight ? index-- : ++index < length)) { + if (iteratee(iterable[index], index, iterable) === false) { + break; + } + } + return collection; + }; +} + +/* harmony default export */ const _createBaseEach = (createBaseEach); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseEach.js + + + +/** + * The base implementation of `_.forEach` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array|Object} Returns `collection`. + */ +var baseEach = _createBaseEach(_baseForOwn/* default */.A); + +/* harmony default export */ const _baseEach = (baseEach); + + +/***/ }), + +/***/ 72559: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _isSymbol_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(61882); + + +/** + * The base implementation of methods like `_.max` and `_.min` which accepts a + * `comparator` to determine the extremum value. + * + * @private + * @param {Array} array The array to iterate over. + * @param {Function} iteratee The iteratee invoked per iteration. + * @param {Function} comparator The comparator used to compare values. + * @returns {*} Returns the extremum value. + */ +function baseExtremum(array, iteratee, comparator) { + var index = -1, + length = array.length; + + while (++index < length) { + var value = array[index], + current = iteratee(value); + + if (current != null && (computed === undefined + ? (current === current && !(0,_isSymbol_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(current)) + : comparator(current, computed) + )) { + var computed = current, + result = value; + } + } + return result; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (baseExtremum); + + +/***/ }), + +/***/ 51790: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _baseEach_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6240); + + +/** + * The base implementation of `_.filter` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {Array} Returns the new filtered array. + */ +function baseFilter(collection, predicate) { + var result = []; + (0,_baseEach_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(collection, function(value, index, collection) { + if (predicate(value, index, collection)) { + result.push(value); + } + }); + return result; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (baseFilter); + + +/***/ }), + +/***/ 25707: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * The base implementation of `_.findIndex` and `_.findLastIndex` without + * support for iteratee shorthands. + * + * @private + * @param {Array} array The array to inspect. + * @param {Function} predicate The function invoked per iteration. + * @param {number} fromIndex The index to search from. + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {number} Returns the index of the matched value, else `-1`. + */ +function baseFindIndex(array, predicate, fromIndex, fromRight) { + var length = array.length, + index = fromIndex + (fromRight ? 1 : -1); + + while ((fromRight ? index-- : ++index < length)) { + if (predicate(array[index], index, array)) { + return index; + } + } + return -1; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (baseFindIndex); + + +/***/ }), + +/***/ 13588: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ _baseFlatten) +}); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_arrayPush.js +var _arrayPush = __webpack_require__(76912); +// EXTERNAL MODULE: ./node_modules/lodash-es/_Symbol.js +var _Symbol = __webpack_require__(241); +// EXTERNAL MODULE: ./node_modules/lodash-es/isArguments.js + 1 modules +var isArguments = __webpack_require__(52274); +// EXTERNAL MODULE: ./node_modules/lodash-es/isArray.js +var isArray = __webpack_require__(92049); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_isFlattenable.js + + + + +/** Built-in value references. */ +var spreadableSymbol = _Symbol/* default */.A ? _Symbol/* default */.A.isConcatSpreadable : undefined; + +/** + * Checks if `value` is a flattenable `arguments` object or array. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is flattenable, else `false`. + */ +function isFlattenable(value) { + return (0,isArray/* default */.A)(value) || (0,isArguments/* default */.A)(value) || + !!(spreadableSymbol && value && value[spreadableSymbol]); +} + +/* harmony default export */ const _isFlattenable = (isFlattenable); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseFlatten.js + + + +/** + * The base implementation of `_.flatten` with support for restricting flattening. + * + * @private + * @param {Array} array The array to flatten. + * @param {number} depth The maximum recursion depth. + * @param {boolean} [predicate=isFlattenable] The function invoked per iteration. + * @param {boolean} [isStrict] Restrict to values that pass `predicate` checks. + * @param {Array} [result=[]] The initial result value. + * @returns {Array} Returns the new flattened array. + */ +function baseFlatten(array, depth, predicate, isStrict, result) { + var index = -1, + length = array.length; + + predicate || (predicate = _isFlattenable); + result || (result = []); + + while (++index < length) { + var value = array[index]; + if (depth > 0 && predicate(value)) { + if (depth > 1) { + // Recursively flatten arrays (susceptible to call stack limits). + baseFlatten(value, depth - 1, predicate, isStrict, result); + } else { + (0,_arrayPush/* default */.A)(result, value); + } + } else if (!isStrict) { + result[result.length] = value; + } + } + return result; +} + +/* harmony default export */ const _baseFlatten = (baseFlatten); + + +/***/ }), + +/***/ 79841: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _baseFor_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4574); +/* harmony import */ var _keys_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(27422); + + + +/** + * The base implementation of `_.forOwn` without support for iteratee shorthands. + * + * @private + * @param {Object} object The object to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Object} Returns `object`. + */ +function baseForOwn(object, iteratee) { + return object && (0,_baseFor_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(object, iteratee, _keys_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A); +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (baseForOwn); + + +/***/ }), + +/***/ 66318: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _castPath_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(7819); +/* harmony import */ var _toKey_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(30901); + + + +/** + * The base implementation of `_.get` without support for default values. + * + * @private + * @param {Object} object The object to query. + * @param {Array|string} path The path of the property to get. + * @returns {*} Returns the resolved value. + */ +function baseGet(object, path) { + path = (0,_castPath_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(path, object); + + var index = 0, + length = path.length; + + while (object != null && index < length) { + object = object[(0,_toKey_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A)(path[index++])]; + } + return (index && index == length) ? object : undefined; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (baseGet); + + +/***/ }), + +/***/ 33831: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _arrayPush_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(76912); +/* harmony import */ var _isArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(92049); + + + +/** + * The base implementation of `getAllKeys` and `getAllKeysIn` which uses + * `keysFunc` and `symbolsFunc` to get the enumerable property names and + * symbols of `object`. + * + * @private + * @param {Object} object The object to query. + * @param {Function} keysFunc The function to get the keys of `object`. + * @param {Function} symbolsFunc The function to get the symbols of `object`. + * @returns {Array} Returns the array of property names and symbols. + */ +function baseGetAllKeys(object, keysFunc, symbolsFunc) { + var result = keysFunc(object); + return (0,_isArray_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(object) ? result : (0,_arrayPush_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A)(result, symbolsFunc(object)); +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (baseGetAllKeys); + + +/***/ }), + +/***/ 60818: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ _baseIndexOf) +}); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseFindIndex.js +var _baseFindIndex = __webpack_require__(25707); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseIsNaN.js +/** + * The base implementation of `_.isNaN` without support for number objects. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`. + */ +function baseIsNaN(value) { + return value !== value; +} + +/* harmony default export */ const _baseIsNaN = (baseIsNaN); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_strictIndexOf.js +/** + * A specialized version of `_.indexOf` which performs strict equality + * comparisons of values, i.e. `===`. + * + * @private + * @param {Array} array The array to inspect. + * @param {*} value The value to search for. + * @param {number} fromIndex The index to search from. + * @returns {number} Returns the index of the matched value, else `-1`. + */ +function strictIndexOf(array, value, fromIndex) { + var index = fromIndex - 1, + length = array.length; + + while (++index < length) { + if (array[index] === value) { + return index; + } + } + return -1; +} + +/* harmony default export */ const _strictIndexOf = (strictIndexOf); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseIndexOf.js + + + + +/** + * The base implementation of `_.indexOf` without `fromIndex` bounds checks. + * + * @private + * @param {Array} array The array to inspect. + * @param {*} value The value to search for. + * @param {number} fromIndex The index to search from. + * @returns {number} Returns the index of the matched value, else `-1`. + */ +function baseIndexOf(array, value, fromIndex) { + return value === value + ? _strictIndexOf(array, value, fromIndex) + : (0,_baseFindIndex/* default */.A)(array, _baseIsNaN, fromIndex); +} + +/* harmony default export */ const _baseIndexOf = (baseIndexOf); + + +/***/ }), + +/***/ 23958: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ _baseIteratee) +}); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_Stack.js + 5 modules +var _Stack = __webpack_require__(11754); +// EXTERNAL MODULE: ./node_modules/lodash-es/_SetCache.js + 2 modules +var _SetCache = __webpack_require__(62062); +// EXTERNAL MODULE: ./node_modules/lodash-es/_arraySome.js +var _arraySome = __webpack_require__(63736); +// EXTERNAL MODULE: ./node_modules/lodash-es/_cacheHas.js +var _cacheHas = __webpack_require__(64099); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_equalArrays.js + + + + +/** Used to compose bitmasks for value comparisons. */ +var COMPARE_PARTIAL_FLAG = 1, + COMPARE_UNORDERED_FLAG = 2; + +/** + * A specialized version of `baseIsEqualDeep` for arrays with support for + * partial deep comparisons. + * + * @private + * @param {Array} array The array to compare. + * @param {Array} other The other array to compare. + * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. + * @param {Function} customizer The function to customize comparisons. + * @param {Function} equalFunc The function to determine equivalents of values. + * @param {Object} stack Tracks traversed `array` and `other` objects. + * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`. + */ +function equalArrays(array, other, bitmask, customizer, equalFunc, stack) { + var isPartial = bitmask & COMPARE_PARTIAL_FLAG, + arrLength = array.length, + othLength = other.length; + + if (arrLength != othLength && !(isPartial && othLength > arrLength)) { + return false; + } + // Check that cyclic values are equal. + var arrStacked = stack.get(array); + var othStacked = stack.get(other); + if (arrStacked && othStacked) { + return arrStacked == other && othStacked == array; + } + var index = -1, + result = true, + seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new _SetCache/* default */.A : undefined; + + stack.set(array, other); + stack.set(other, array); + + // Ignore non-index properties. + while (++index < arrLength) { + var arrValue = array[index], + othValue = other[index]; + + if (customizer) { + var compared = isPartial + ? customizer(othValue, arrValue, index, other, array, stack) + : customizer(arrValue, othValue, index, array, other, stack); + } + if (compared !== undefined) { + if (compared) { + continue; + } + result = false; + break; + } + // Recursively compare arrays (susceptible to call stack limits). + if (seen) { + if (!(0,_arraySome/* default */.A)(other, function(othValue, othIndex) { + if (!(0,_cacheHas/* default */.A)(seen, othIndex) && + (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) { + return seen.push(othIndex); + } + })) { + result = false; + break; + } + } else if (!( + arrValue === othValue || + equalFunc(arrValue, othValue, bitmask, customizer, stack) + )) { + result = false; + break; + } + } + stack['delete'](array); + stack['delete'](other); + return result; +} + +/* harmony default export */ const _equalArrays = (equalArrays); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_Symbol.js +var _Symbol = __webpack_require__(241); +// EXTERNAL MODULE: ./node_modules/lodash-es/_Uint8Array.js +var _Uint8Array = __webpack_require__(43988); +// EXTERNAL MODULE: ./node_modules/lodash-es/eq.js +var eq = __webpack_require__(66984); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_mapToArray.js +/** + * Converts `map` to its key-value pairs. + * + * @private + * @param {Object} map The map to convert. + * @returns {Array} Returns the key-value pairs. + */ +function mapToArray(map) { + var index = -1, + result = Array(map.size); + + map.forEach(function(value, key) { + result[++index] = [key, value]; + }); + return result; +} + +/* harmony default export */ const _mapToArray = (mapToArray); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_setToArray.js +var _setToArray = __webpack_require__(29959); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_equalByTag.js + + + + + + + +/** Used to compose bitmasks for value comparisons. */ +var _equalByTag_COMPARE_PARTIAL_FLAG = 1, + _equalByTag_COMPARE_UNORDERED_FLAG = 2; + +/** `Object#toString` result references. */ +var boolTag = '[object Boolean]', + dateTag = '[object Date]', + errorTag = '[object Error]', + mapTag = '[object Map]', + numberTag = '[object Number]', + regexpTag = '[object RegExp]', + setTag = '[object Set]', + stringTag = '[object String]', + symbolTag = '[object Symbol]'; + +var arrayBufferTag = '[object ArrayBuffer]', + dataViewTag = '[object DataView]'; + +/** Used to convert symbols to primitives and strings. */ +var symbolProto = _Symbol/* default */.A ? _Symbol/* default */.A.prototype : undefined, + symbolValueOf = symbolProto ? symbolProto.valueOf : undefined; + +/** + * A specialized version of `baseIsEqualDeep` for comparing objects of + * the same `toStringTag`. + * + * **Note:** This function only supports comparing values with tags of + * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`. + * + * @private + * @param {Object} object The object to compare. + * @param {Object} other The other object to compare. + * @param {string} tag The `toStringTag` of the objects to compare. + * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. + * @param {Function} customizer The function to customize comparisons. + * @param {Function} equalFunc The function to determine equivalents of values. + * @param {Object} stack Tracks traversed `object` and `other` objects. + * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. + */ +function equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) { + switch (tag) { + case dataViewTag: + if ((object.byteLength != other.byteLength) || + (object.byteOffset != other.byteOffset)) { + return false; + } + object = object.buffer; + other = other.buffer; + + case arrayBufferTag: + if ((object.byteLength != other.byteLength) || + !equalFunc(new _Uint8Array/* default */.A(object), new _Uint8Array/* default */.A(other))) { + return false; + } + return true; + + case boolTag: + case dateTag: + case numberTag: + // Coerce booleans to `1` or `0` and dates to milliseconds. + // Invalid dates are coerced to `NaN`. + return (0,eq/* default */.A)(+object, +other); + + case errorTag: + return object.name == other.name && object.message == other.message; + + case regexpTag: + case stringTag: + // Coerce regexes to strings and treat strings, primitives and objects, + // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring + // for more details. + return object == (other + ''); + + case mapTag: + var convert = _mapToArray; + + case setTag: + var isPartial = bitmask & _equalByTag_COMPARE_PARTIAL_FLAG; + convert || (convert = _setToArray/* default */.A); + + if (object.size != other.size && !isPartial) { + return false; + } + // Assume cyclic values are equal. + var stacked = stack.get(object); + if (stacked) { + return stacked == other; + } + bitmask |= _equalByTag_COMPARE_UNORDERED_FLAG; + + // Recursively compare objects (susceptible to call stack limits). + stack.set(object, other); + var result = _equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack); + stack['delete'](object); + return result; + + case symbolTag: + if (symbolValueOf) { + return symbolValueOf.call(object) == symbolValueOf.call(other); + } + } + return false; +} + +/* harmony default export */ const _equalByTag = (equalByTag); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_getAllKeys.js +var _getAllKeys = __webpack_require__(19042); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_equalObjects.js + + +/** Used to compose bitmasks for value comparisons. */ +var _equalObjects_COMPARE_PARTIAL_FLAG = 1; + +/** Used for built-in method references. */ +var objectProto = Object.prototype; + +/** Used to check objects for own properties. */ +var _equalObjects_hasOwnProperty = objectProto.hasOwnProperty; + +/** + * A specialized version of `baseIsEqualDeep` for objects with support for + * partial deep comparisons. + * + * @private + * @param {Object} object The object to compare. + * @param {Object} other The other object to compare. + * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. + * @param {Function} customizer The function to customize comparisons. + * @param {Function} equalFunc The function to determine equivalents of values. + * @param {Object} stack Tracks traversed `object` and `other` objects. + * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. + */ +function equalObjects(object, other, bitmask, customizer, equalFunc, stack) { + var isPartial = bitmask & _equalObjects_COMPARE_PARTIAL_FLAG, + objProps = (0,_getAllKeys/* default */.A)(object), + objLength = objProps.length, + othProps = (0,_getAllKeys/* default */.A)(other), + othLength = othProps.length; + + if (objLength != othLength && !isPartial) { + return false; + } + var index = objLength; + while (index--) { + var key = objProps[index]; + if (!(isPartial ? key in other : _equalObjects_hasOwnProperty.call(other, key))) { + return false; + } + } + // Check that cyclic values are equal. + var objStacked = stack.get(object); + var othStacked = stack.get(other); + if (objStacked && othStacked) { + return objStacked == other && othStacked == object; + } + var result = true; + stack.set(object, other); + stack.set(other, object); + + var skipCtor = isPartial; + while (++index < objLength) { + key = objProps[index]; + var objValue = object[key], + othValue = other[key]; + + if (customizer) { + var compared = isPartial + ? customizer(othValue, objValue, key, other, object, stack) + : customizer(objValue, othValue, key, object, other, stack); + } + // Recursively compare objects (susceptible to call stack limits). + if (!(compared === undefined + ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack)) + : compared + )) { + result = false; + break; + } + skipCtor || (skipCtor = key == 'constructor'); + } + if (result && !skipCtor) { + var objCtor = object.constructor, + othCtor = other.constructor; + + // Non `Object` object instances with different constructors are not equal. + if (objCtor != othCtor && + ('constructor' in object && 'constructor' in other) && + !(typeof objCtor == 'function' && objCtor instanceof objCtor && + typeof othCtor == 'function' && othCtor instanceof othCtor)) { + result = false; + } + } + stack['delete'](object); + stack['delete'](other); + return result; +} + +/* harmony default export */ const _equalObjects = (equalObjects); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_getTag.js + 3 modules +var _getTag = __webpack_require__(9779); +// EXTERNAL MODULE: ./node_modules/lodash-es/isArray.js +var isArray = __webpack_require__(92049); +// EXTERNAL MODULE: ./node_modules/lodash-es/isBuffer.js + 1 modules +var isBuffer = __webpack_require__(99912); +// EXTERNAL MODULE: ./node_modules/lodash-es/isTypedArray.js + 1 modules +var isTypedArray = __webpack_require__(33858); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseIsEqualDeep.js + + + + + + + + + +/** Used to compose bitmasks for value comparisons. */ +var _baseIsEqualDeep_COMPARE_PARTIAL_FLAG = 1; + +/** `Object#toString` result references. */ +var argsTag = '[object Arguments]', + arrayTag = '[object Array]', + objectTag = '[object Object]'; + +/** Used for built-in method references. */ +var _baseIsEqualDeep_objectProto = Object.prototype; + +/** Used to check objects for own properties. */ +var _baseIsEqualDeep_hasOwnProperty = _baseIsEqualDeep_objectProto.hasOwnProperty; + +/** + * A specialized version of `baseIsEqual` for arrays and objects which performs + * deep comparisons and tracks traversed objects enabling objects with circular + * references to be compared. + * + * @private + * @param {Object} object The object to compare. + * @param {Object} other The other object to compare. + * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. + * @param {Function} customizer The function to customize comparisons. + * @param {Function} equalFunc The function to determine equivalents of values. + * @param {Object} [stack] Tracks traversed `object` and `other` objects. + * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. + */ +function baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) { + var objIsArr = (0,isArray/* default */.A)(object), + othIsArr = (0,isArray/* default */.A)(other), + objTag = objIsArr ? arrayTag : (0,_getTag/* default */.A)(object), + othTag = othIsArr ? arrayTag : (0,_getTag/* default */.A)(other); + + objTag = objTag == argsTag ? objectTag : objTag; + othTag = othTag == argsTag ? objectTag : othTag; + + var objIsObj = objTag == objectTag, + othIsObj = othTag == objectTag, + isSameTag = objTag == othTag; + + if (isSameTag && (0,isBuffer/* default */.A)(object)) { + if (!(0,isBuffer/* default */.A)(other)) { + return false; + } + objIsArr = true; + objIsObj = false; + } + if (isSameTag && !objIsObj) { + stack || (stack = new _Stack/* default */.A); + return (objIsArr || (0,isTypedArray/* default */.A)(object)) + ? _equalArrays(object, other, bitmask, customizer, equalFunc, stack) + : _equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack); + } + if (!(bitmask & _baseIsEqualDeep_COMPARE_PARTIAL_FLAG)) { + var objIsWrapped = objIsObj && _baseIsEqualDeep_hasOwnProperty.call(object, '__wrapped__'), + othIsWrapped = othIsObj && _baseIsEqualDeep_hasOwnProperty.call(other, '__wrapped__'); + + if (objIsWrapped || othIsWrapped) { + var objUnwrapped = objIsWrapped ? object.value() : object, + othUnwrapped = othIsWrapped ? other.value() : other; + + stack || (stack = new _Stack/* default */.A); + return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack); + } + } + if (!isSameTag) { + return false; + } + stack || (stack = new _Stack/* default */.A); + return _equalObjects(object, other, bitmask, customizer, equalFunc, stack); +} + +/* harmony default export */ const _baseIsEqualDeep = (baseIsEqualDeep); + +// EXTERNAL MODULE: ./node_modules/lodash-es/isObjectLike.js +var isObjectLike = __webpack_require__(53098); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseIsEqual.js + + + +/** + * The base implementation of `_.isEqual` which supports partial comparisons + * and tracks traversed objects. + * + * @private + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @param {boolean} bitmask The bitmask flags. + * 1 - Unordered comparison + * 2 - Partial comparison + * @param {Function} [customizer] The function to customize comparisons. + * @param {Object} [stack] Tracks traversed `value` and `other` objects. + * @returns {boolean} Returns `true` if the values are equivalent, else `false`. + */ +function baseIsEqual(value, other, bitmask, customizer, stack) { + if (value === other) { + return true; + } + if (value == null || other == null || (!(0,isObjectLike/* default */.A)(value) && !(0,isObjectLike/* default */.A)(other))) { + return value !== value && other !== other; + } + return _baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack); +} + +/* harmony default export */ const _baseIsEqual = (baseIsEqual); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseIsMatch.js + + + +/** Used to compose bitmasks for value comparisons. */ +var _baseIsMatch_COMPARE_PARTIAL_FLAG = 1, + _baseIsMatch_COMPARE_UNORDERED_FLAG = 2; + +/** + * The base implementation of `_.isMatch` without support for iteratee shorthands. + * + * @private + * @param {Object} object The object to inspect. + * @param {Object} source The object of property values to match. + * @param {Array} matchData The property names, values, and compare flags to match. + * @param {Function} [customizer] The function to customize comparisons. + * @returns {boolean} Returns `true` if `object` is a match, else `false`. + */ +function baseIsMatch(object, source, matchData, customizer) { + var index = matchData.length, + length = index, + noCustomizer = !customizer; + + if (object == null) { + return !length; + } + object = Object(object); + while (index--) { + var data = matchData[index]; + if ((noCustomizer && data[2]) + ? data[1] !== object[data[0]] + : !(data[0] in object) + ) { + return false; + } + } + while (++index < length) { + data = matchData[index]; + var key = data[0], + objValue = object[key], + srcValue = data[1]; + + if (noCustomizer && data[2]) { + if (objValue === undefined && !(key in object)) { + return false; + } + } else { + var stack = new _Stack/* default */.A; + if (customizer) { + var result = customizer(objValue, srcValue, key, object, source, stack); + } + if (!(result === undefined + ? _baseIsEqual(srcValue, objValue, _baseIsMatch_COMPARE_PARTIAL_FLAG | _baseIsMatch_COMPARE_UNORDERED_FLAG, customizer, stack) + : result + )) { + return false; + } + } + } + return true; +} + +/* harmony default export */ const _baseIsMatch = (baseIsMatch); + +// EXTERNAL MODULE: ./node_modules/lodash-es/isObject.js +var isObject = __webpack_require__(23149); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_isStrictComparable.js + + +/** + * Checks if `value` is suitable for strict equality comparisons, i.e. `===`. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` if suitable for strict + * equality comparisons, else `false`. + */ +function isStrictComparable(value) { + return value === value && !(0,isObject/* default */.A)(value); +} + +/* harmony default export */ const _isStrictComparable = (isStrictComparable); + +// EXTERNAL MODULE: ./node_modules/lodash-es/keys.js +var keys = __webpack_require__(27422); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_getMatchData.js + + + +/** + * Gets the property names, values, and compare flags of `object`. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the match data of `object`. + */ +function getMatchData(object) { + var result = (0,keys/* default */.A)(object), + length = result.length; + + while (length--) { + var key = result[length], + value = object[key]; + + result[length] = [key, value, _isStrictComparable(value)]; + } + return result; +} + +/* harmony default export */ const _getMatchData = (getMatchData); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_matchesStrictComparable.js +/** + * A specialized version of `matchesProperty` for source values suitable + * for strict equality comparisons, i.e. `===`. + * + * @private + * @param {string} key The key of the property to get. + * @param {*} srcValue The value to match. + * @returns {Function} Returns the new spec function. + */ +function matchesStrictComparable(key, srcValue) { + return function(object) { + if (object == null) { + return false; + } + return object[key] === srcValue && + (srcValue !== undefined || (key in Object(object))); + }; +} + +/* harmony default export */ const _matchesStrictComparable = (matchesStrictComparable); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseMatches.js + + + + +/** + * The base implementation of `_.matches` which doesn't clone `source`. + * + * @private + * @param {Object} source The object of property values to match. + * @returns {Function} Returns the new spec function. + */ +function baseMatches(source) { + var matchData = _getMatchData(source); + if (matchData.length == 1 && matchData[0][2]) { + return _matchesStrictComparable(matchData[0][0], matchData[0][1]); + } + return function(object) { + return object === source || _baseIsMatch(object, source, matchData); + }; +} + +/* harmony default export */ const _baseMatches = (baseMatches); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseGet.js +var _baseGet = __webpack_require__(66318); +;// CONCATENATED MODULE: ./node_modules/lodash-es/get.js + + +/** + * Gets the value at `path` of `object`. If the resolved value is + * `undefined`, the `defaultValue` is returned in its place. + * + * @static + * @memberOf _ + * @since 3.7.0 + * @category Object + * @param {Object} object The object to query. + * @param {Array|string} path The path of the property to get. + * @param {*} [defaultValue] The value returned for `undefined` resolved values. + * @returns {*} Returns the resolved value. + * @example + * + * var object = { 'a': [{ 'b': { 'c': 3 } }] }; + * + * _.get(object, 'a[0].b.c'); + * // => 3 + * + * _.get(object, ['a', '0', 'b', 'c']); + * // => 3 + * + * _.get(object, 'a.b.c', 'default'); + * // => 'default' + */ +function get(object, path, defaultValue) { + var result = object == null ? undefined : (0,_baseGet/* default */.A)(object, path); + return result === undefined ? defaultValue : result; +} + +/* harmony default export */ const lodash_es_get = (get); + +// EXTERNAL MODULE: ./node_modules/lodash-es/hasIn.js + 1 modules +var hasIn = __webpack_require__(16807); +// EXTERNAL MODULE: ./node_modules/lodash-es/_isKey.js +var _isKey = __webpack_require__(86586); +// EXTERNAL MODULE: ./node_modules/lodash-es/_toKey.js +var _toKey = __webpack_require__(30901); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseMatchesProperty.js + + + + + + + + +/** Used to compose bitmasks for value comparisons. */ +var _baseMatchesProperty_COMPARE_PARTIAL_FLAG = 1, + _baseMatchesProperty_COMPARE_UNORDERED_FLAG = 2; + +/** + * The base implementation of `_.matchesProperty` which doesn't clone `srcValue`. + * + * @private + * @param {string} path The path of the property to get. + * @param {*} srcValue The value to match. + * @returns {Function} Returns the new spec function. + */ +function baseMatchesProperty(path, srcValue) { + if ((0,_isKey/* default */.A)(path) && _isStrictComparable(srcValue)) { + return _matchesStrictComparable((0,_toKey/* default */.A)(path), srcValue); + } + return function(object) { + var objValue = lodash_es_get(object, path); + return (objValue === undefined && objValue === srcValue) + ? (0,hasIn/* default */.A)(object, path) + : _baseIsEqual(srcValue, objValue, _baseMatchesProperty_COMPARE_PARTIAL_FLAG | _baseMatchesProperty_COMPARE_UNORDERED_FLAG); + }; +} + +/* harmony default export */ const _baseMatchesProperty = (baseMatchesProperty); + +// EXTERNAL MODULE: ./node_modules/lodash-es/identity.js +var identity = __webpack_require__(29008); +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseProperty.js +var _baseProperty = __webpack_require__(70805); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_basePropertyDeep.js + + +/** + * A specialized version of `baseProperty` which supports deep paths. + * + * @private + * @param {Array|string} path The path of the property to get. + * @returns {Function} Returns the new accessor function. + */ +function basePropertyDeep(path) { + return function(object) { + return (0,_baseGet/* default */.A)(object, path); + }; +} + +/* harmony default export */ const _basePropertyDeep = (basePropertyDeep); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/property.js + + + + + +/** + * Creates a function that returns the value at `path` of a given object. + * + * @static + * @memberOf _ + * @since 2.4.0 + * @category Util + * @param {Array|string} path The path of the property to get. + * @returns {Function} Returns the new accessor function. + * @example + * + * var objects = [ + * { 'a': { 'b': 2 } }, + * { 'a': { 'b': 1 } } + * ]; + * + * _.map(objects, _.property('a.b')); + * // => [2, 1] + * + * _.map(_.sortBy(objects, _.property(['a', 'b'])), 'a.b'); + * // => [1, 2] + */ +function property(path) { + return (0,_isKey/* default */.A)(path) ? (0,_baseProperty/* default */.A)((0,_toKey/* default */.A)(path)) : _basePropertyDeep(path); +} + +/* harmony default export */ const lodash_es_property = (property); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseIteratee.js + + + + + + +/** + * The base implementation of `_.iteratee`. + * + * @private + * @param {*} [value=_.identity] The value to convert to an iteratee. + * @returns {Function} Returns the iteratee. + */ +function baseIteratee(value) { + // Don't store the `typeof` result in a variable to avoid a JIT bug in Safari 9. + // See https://bugs.webkit.org/show_bug.cgi?id=156034 for more details. + if (typeof value == 'function') { + return value; + } + if (value == null) { + return identity/* default */.A; + } + if (typeof value == 'object') { + return (0,isArray/* default */.A)(value) + ? _baseMatchesProperty(value[0], value[1]) + : _baseMatches(value); + } + return lodash_es_property(value); +} + +/* harmony default export */ const _baseIteratee = (baseIteratee); + + +/***/ }), + +/***/ 36224: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * The base implementation of `_.lt` which doesn't coerce arguments. + * + * @private + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {boolean} Returns `true` if `value` is less than `other`, + * else `false`. + */ +function baseLt(value, other) { + return value < other; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (baseLt); + + +/***/ }), + +/***/ 52568: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _baseEach_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6240); +/* harmony import */ var _isArrayLike_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(38446); + + + +/** + * The base implementation of `_.map` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array} Returns the new mapped array. + */ +function baseMap(collection, iteratee) { + var index = -1, + result = (0,_isArrayLike_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(collection) ? Array(collection.length) : []; + + (0,_baseEach_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A)(collection, function(value, key, collection) { + result[++index] = iteratee(value, key, collection); + }); + return result; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (baseMap); + + +/***/ }), + +/***/ 99354: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ _basePickBy) +}); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseGet.js +var _baseGet = __webpack_require__(66318); +// EXTERNAL MODULE: ./node_modules/lodash-es/_assignValue.js +var _assignValue = __webpack_require__(52851); +// EXTERNAL MODULE: ./node_modules/lodash-es/_castPath.js + 2 modules +var _castPath = __webpack_require__(7819); +// EXTERNAL MODULE: ./node_modules/lodash-es/_isIndex.js +var _isIndex = __webpack_require__(25353); +// EXTERNAL MODULE: ./node_modules/lodash-es/isObject.js +var isObject = __webpack_require__(23149); +// EXTERNAL MODULE: ./node_modules/lodash-es/_toKey.js +var _toKey = __webpack_require__(30901); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseSet.js + + + + + + +/** + * The base implementation of `_.set`. + * + * @private + * @param {Object} object The object to modify. + * @param {Array|string} path The path of the property to set. + * @param {*} value The value to set. + * @param {Function} [customizer] The function to customize path creation. + * @returns {Object} Returns `object`. + */ +function baseSet(object, path, value, customizer) { + if (!(0,isObject/* default */.A)(object)) { + return object; + } + path = (0,_castPath/* default */.A)(path, object); + + var index = -1, + length = path.length, + lastIndex = length - 1, + nested = object; + + while (nested != null && ++index < length) { + var key = (0,_toKey/* default */.A)(path[index]), + newValue = value; + + if (key === '__proto__' || key === 'constructor' || key === 'prototype') { + return object; + } + + if (index != lastIndex) { + var objValue = nested[key]; + newValue = customizer ? customizer(objValue, key, nested) : undefined; + if (newValue === undefined) { + newValue = (0,isObject/* default */.A)(objValue) + ? objValue + : ((0,_isIndex/* default */.A)(path[index + 1]) ? [] : {}); + } + } + (0,_assignValue/* default */.A)(nested, key, newValue); + nested = nested[key]; + } + return object; +} + +/* harmony default export */ const _baseSet = (baseSet); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_basePickBy.js + + + + +/** + * The base implementation of `_.pickBy` without support for iteratee shorthands. + * + * @private + * @param {Object} object The source object. + * @param {string[]} paths The property paths to pick. + * @param {Function} predicate The function invoked per property. + * @returns {Object} Returns the new object. + */ +function basePickBy(object, paths, predicate) { + var index = -1, + length = paths.length, + result = {}; + + while (++index < length) { + var path = paths[index], + value = (0,_baseGet/* default */.A)(object, path); + + if (predicate(value, path)) { + _baseSet(result, (0,_castPath/* default */.A)(path, object), value); + } + } + return result; +} + +/* harmony default export */ const _basePickBy = (basePickBy); + + +/***/ }), + +/***/ 70805: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * The base implementation of `_.property` without support for deep paths. + * + * @private + * @param {string} key The key of the property to get. + * @returns {Function} Returns the new accessor function. + */ +function baseProperty(key) { + return function(object) { + return object == null ? undefined : object[key]; + }; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (baseProperty); + + +/***/ }), + +/***/ 99902: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ _baseUniq) +}); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_SetCache.js + 2 modules +var _SetCache = __webpack_require__(62062); +// EXTERNAL MODULE: ./node_modules/lodash-es/_arrayIncludes.js +var _arrayIncludes = __webpack_require__(83149); +// EXTERNAL MODULE: ./node_modules/lodash-es/_arrayIncludesWith.js +var _arrayIncludesWith = __webpack_require__(87809); +// EXTERNAL MODULE: ./node_modules/lodash-es/_cacheHas.js +var _cacheHas = __webpack_require__(64099); +// EXTERNAL MODULE: ./node_modules/lodash-es/_Set.js +var _Set = __webpack_require__(39857); +// EXTERNAL MODULE: ./node_modules/lodash-es/noop.js +var noop = __webpack_require__(42302); +// EXTERNAL MODULE: ./node_modules/lodash-es/_setToArray.js +var _setToArray = __webpack_require__(29959); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_createSet.js + + + + +/** Used as references for various `Number` constants. */ +var INFINITY = 1 / 0; + +/** + * Creates a set object of `values`. + * + * @private + * @param {Array} values The values to add to the set. + * @returns {Object} Returns the new set. + */ +var createSet = !(_Set/* default */.A && (1 / (0,_setToArray/* default */.A)(new _Set/* default */.A([,-0]))[1]) == INFINITY) ? noop/* default */.A : function(values) { + return new _Set/* default */.A(values); +}; + +/* harmony default export */ const _createSet = (createSet); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseUniq.js + + + + + + + +/** Used as the size to enable large array optimizations. */ +var LARGE_ARRAY_SIZE = 200; + +/** + * The base implementation of `_.uniqBy` without support for iteratee shorthands. + * + * @private + * @param {Array} array The array to inspect. + * @param {Function} [iteratee] The iteratee invoked per element. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns the new duplicate free array. + */ +function baseUniq(array, iteratee, comparator) { + var index = -1, + includes = _arrayIncludes/* default */.A, + length = array.length, + isCommon = true, + result = [], + seen = result; + + if (comparator) { + isCommon = false; + includes = _arrayIncludesWith/* default */.A; + } + else if (length >= LARGE_ARRAY_SIZE) { + var set = iteratee ? null : _createSet(array); + if (set) { + return (0,_setToArray/* default */.A)(set); + } + isCommon = false; + includes = _cacheHas/* default */.A; + seen = new _SetCache/* default */.A; + } + else { + seen = iteratee ? [] : result; + } + outer: + while (++index < length) { + var value = array[index], + computed = iteratee ? iteratee(value) : value; + + value = (comparator || value !== 0) ? value : 0; + if (isCommon && computed === computed) { + var seenIndex = seen.length; + while (seenIndex--) { + if (seen[seenIndex] === computed) { + continue outer; + } + } + if (iteratee) { + seen.push(computed); + } + result.push(value); + } + else if (!includes(seen, computed, comparator)) { + if (seen !== result) { + seen.push(computed); + } + result.push(value); + } + } + return result; +} + +/* harmony default export */ const _baseUniq = (baseUniq); + + +/***/ }), + +/***/ 64099: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * Checks if a `cache` value for `key` exists. + * + * @private + * @param {Object} cache The cache to query. + * @param {string} key The key of the entry to check. + * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. + */ +function cacheHas(cache, key) { + return cache.has(key); +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (cacheHas); + + +/***/ }), + +/***/ 99922: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _identity_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(29008); + + +/** + * Casts `value` to `identity` if it's not a function. + * + * @private + * @param {*} value The value to inspect. + * @returns {Function} Returns cast function. + */ +function castFunction(value) { + return typeof value == 'function' ? value : _identity_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (castFunction); + + +/***/ }), + +/***/ 7819: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ _castPath) +}); + +// EXTERNAL MODULE: ./node_modules/lodash-es/isArray.js +var isArray = __webpack_require__(92049); +// EXTERNAL MODULE: ./node_modules/lodash-es/_isKey.js +var _isKey = __webpack_require__(86586); +// EXTERNAL MODULE: ./node_modules/lodash-es/memoize.js +var memoize = __webpack_require__(46632); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_memoizeCapped.js + + +/** Used as the maximum memoize cache size. */ +var MAX_MEMOIZE_SIZE = 500; + +/** + * A specialized version of `_.memoize` which clears the memoized function's + * cache when it exceeds `MAX_MEMOIZE_SIZE`. + * + * @private + * @param {Function} func The function to have its output memoized. + * @returns {Function} Returns the new memoized function. + */ +function memoizeCapped(func) { + var result = (0,memoize/* default */.A)(func, function(key) { + if (cache.size === MAX_MEMOIZE_SIZE) { + cache.clear(); + } + return key; + }); + + var cache = result.cache; + return result; +} + +/* harmony default export */ const _memoizeCapped = (memoizeCapped); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_stringToPath.js + + +/** Used to match property names within property paths. */ +var rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g; + +/** Used to match backslashes in property paths. */ +var reEscapeChar = /\\(\\)?/g; + +/** + * Converts `string` to a property path array. + * + * @private + * @param {string} string The string to convert. + * @returns {Array} Returns the property path array. + */ +var stringToPath = _memoizeCapped(function(string) { + var result = []; + if (string.charCodeAt(0) === 46 /* . */) { + result.push(''); + } + string.replace(rePropName, function(match, number, quote, subString) { + result.push(quote ? subString.replace(reEscapeChar, '$1') : (number || match)); + }); + return result; +}); + +/* harmony default export */ const _stringToPath = (stringToPath); + +// EXTERNAL MODULE: ./node_modules/lodash-es/toString.js + 1 modules +var lodash_es_toString = __webpack_require__(28894); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_castPath.js + + + + + +/** + * Casts `value` to a path array if it's not one. + * + * @private + * @param {*} value The value to inspect. + * @param {Object} [object] The object to query keys on. + * @returns {Array} Returns the cast property path array. + */ +function castPath(value, object) { + if ((0,isArray/* default */.A)(value)) { + return value; + } + return (0,_isKey/* default */.A)(value, object) ? [value] : _stringToPath((0,lodash_es_toString/* default */.A)(value)); +} + +/* harmony default export */ const _castPath = (castPath); + + +/***/ }), + +/***/ 19042: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _baseGetAllKeys_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(33831); +/* harmony import */ var _getSymbols_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(14792); +/* harmony import */ var _keys_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(27422); + + + + +/** + * Creates an array of own enumerable property names and symbols of `object`. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names and symbols. + */ +function getAllKeys(object) { + return (0,_baseGetAllKeys_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(object, _keys_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A, _getSymbols_js__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A); +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (getAllKeys); + + +/***/ }), + +/***/ 83973: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _baseGetAllKeys_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(33831); +/* harmony import */ var _getSymbolsIn_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(83511); +/* harmony import */ var _keysIn_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(55615); + + + + +/** + * Creates an array of own and inherited enumerable property names and + * symbols of `object`. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names and symbols. + */ +function getAllKeysIn(object) { + return (0,_baseGetAllKeys_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(object, _keysIn_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A, _getSymbolsIn_js__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A); +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (getAllKeysIn); + + +/***/ }), + +/***/ 14792: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _arrayFilter_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(2634); +/* harmony import */ var _stubArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(13153); + + + +/** Used for built-in method references. */ +var objectProto = Object.prototype; + +/** Built-in value references. */ +var propertyIsEnumerable = objectProto.propertyIsEnumerable; + +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeGetSymbols = Object.getOwnPropertySymbols; + +/** + * Creates an array of the own enumerable symbols of `object`. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of symbols. + */ +var getSymbols = !nativeGetSymbols ? _stubArray_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A : function(object) { + if (object == null) { + return []; + } + object = Object(object); + return (0,_arrayFilter_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A)(nativeGetSymbols(object), function(symbol) { + return propertyIsEnumerable.call(object, symbol); + }); +}; + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (getSymbols); + + +/***/ }), + +/***/ 83511: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _arrayPush_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(76912); +/* harmony import */ var _getPrototype_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(15647); +/* harmony import */ var _getSymbols_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(14792); +/* harmony import */ var _stubArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(13153); + + + + + +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeGetSymbols = Object.getOwnPropertySymbols; + +/** + * Creates an array of the own and inherited enumerable symbols of `object`. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of symbols. + */ +var getSymbolsIn = !nativeGetSymbols ? _stubArray_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A : function(object) { + var result = []; + while (object) { + (0,_arrayPush_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A)(result, (0,_getSymbols_js__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A)(object)); + object = (0,_getPrototype_js__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A)(object); + } + return result; +}; + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (getSymbolsIn); + + +/***/ }), + +/***/ 85054: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _castPath_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(7819); +/* harmony import */ var _isArguments_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(52274); +/* harmony import */ var _isArray_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(92049); +/* harmony import */ var _isIndex_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(25353); +/* harmony import */ var _isLength_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(5254); +/* harmony import */ var _toKey_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(30901); + + + + + + + +/** + * Checks if `path` exists on `object`. + * + * @private + * @param {Object} object The object to query. + * @param {Array|string} path The path to check. + * @param {Function} hasFunc The function to check properties. + * @returns {boolean} Returns `true` if `path` exists, else `false`. + */ +function hasPath(object, path, hasFunc) { + path = (0,_castPath_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(path, object); + + var index = -1, + length = path.length, + result = false; + + while (++index < length) { + var key = (0,_toKey_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A)(path[index]); + if (!(result = object != null && hasFunc(object, key))) { + break; + } + object = object[key]; + } + if (result || ++index != length) { + return result; + } + length = object == null ? 0 : object.length; + return !!length && (0,_isLength_js__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A)(length) && (0,_isIndex_js__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A)(key, length) && + ((0,_isArray_js__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .A)(object) || (0,_isArguments_js__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .A)(object)); +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (hasPath); + + +/***/ }), + +/***/ 86586: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _isArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(92049); +/* harmony import */ var _isSymbol_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(61882); + + + +/** Used to match property names within property paths. */ +var reIsDeepProp = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/, + reIsPlainProp = /^\w*$/; + +/** + * Checks if `value` is a property name and not a property path. + * + * @private + * @param {*} value The value to check. + * @param {Object} [object] The object to query keys on. + * @returns {boolean} Returns `true` if `value` is a property name, else `false`. + */ +function isKey(value, object) { + if ((0,_isArray_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(value)) { + return false; + } + var type = typeof value; + if (type == 'number' || type == 'symbol' || type == 'boolean' || + value == null || (0,_isSymbol_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A)(value)) { + return true; + } + return reIsPlainProp.test(value) || !reIsDeepProp.test(value) || + (object != null && value in Object(object)); +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (isKey); + + +/***/ }), + +/***/ 29959: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * Converts `set` to an array of its values. + * + * @private + * @param {Object} set The set to convert. + * @returns {Array} Returns the values. + */ +function setToArray(set) { + var index = -1, + result = Array(set.size); + + set.forEach(function(value) { + result[++index] = value; + }); + return result; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (setToArray); + + +/***/ }), + +/***/ 30901: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _isSymbol_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(61882); + + +/** Used as references for various `Number` constants. */ +var INFINITY = 1 / 0; + +/** + * Converts `value` to a string key if it's not a string or symbol. + * + * @private + * @param {*} value The value to inspect. + * @returns {string|symbol} Returns the key. + */ +function toKey(value) { + if (typeof value == 'string' || (0,_isSymbol_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(value)) { + return value; + } + var result = (value + ''); + return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (toKey); + + +/***/ }), + +/***/ 23068: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _baseRest_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(24326); +/* harmony import */ var _eq_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(66984); +/* harmony import */ var _isIterateeCall_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6832); +/* harmony import */ var _keysIn_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(55615); + + + + + +/** Used for built-in method references. */ +var objectProto = Object.prototype; + +/** Used to check objects for own properties. */ +var hasOwnProperty = objectProto.hasOwnProperty; + +/** + * Assigns own and inherited enumerable string keyed properties of source + * objects to the destination object for all destination properties that + * resolve to `undefined`. Source objects are applied from left to right. + * Once a property is set, additional values of the same property are ignored. + * + * **Note:** This method mutates `object`. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The destination object. + * @param {...Object} [sources] The source objects. + * @returns {Object} Returns `object`. + * @see _.defaultsDeep + * @example + * + * _.defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 }); + * // => { 'a': 1, 'b': 2 } + */ +var defaults = (0,_baseRest_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(function(object, sources) { + object = Object(object); + + var index = -1; + var length = sources.length; + var guard = length > 2 ? sources[2] : undefined; + + if (guard && (0,_isIterateeCall_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A)(sources[0], sources[1], guard)) { + length = 1; + } + + while (++index < length) { + var source = sources[index]; + var props = (0,_keysIn_js__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A)(source); + var propsIndex = -1; + var propsLength = props.length; + + while (++propsIndex < propsLength) { + var key = props[propsIndex]; + var value = object[key]; + + if (value === undefined || + ((0,_eq_js__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A)(value, objectProto[key]) && !hasOwnProperty.call(object, key))) { + object[key] = source[key]; + } + } + } + + return object; +}); + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (defaults); + + +/***/ }), + +/***/ 94092: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _arrayFilter_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(2634); +/* harmony import */ var _baseFilter_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(51790); +/* harmony import */ var _baseIteratee_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(23958); +/* harmony import */ var _isArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(92049); + + + + + +/** + * Iterates over elements of `collection`, returning an array of all elements + * `predicate` returns truthy for. The predicate is invoked with three + * arguments: (value, index|key, collection). + * + * **Note:** Unlike `_.remove`, this method returns a new array. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @returns {Array} Returns the new filtered array. + * @see _.reject + * @example + * + * var users = [ + * { 'user': 'barney', 'age': 36, 'active': true }, + * { 'user': 'fred', 'age': 40, 'active': false } + * ]; + * + * _.filter(users, function(o) { return !o.active; }); + * // => objects for ['fred'] + * + * // The `_.matches` iteratee shorthand. + * _.filter(users, { 'age': 36, 'active': true }); + * // => objects for ['barney'] + * + * // The `_.matchesProperty` iteratee shorthand. + * _.filter(users, ['active', false]); + * // => objects for ['fred'] + * + * // The `_.property` iteratee shorthand. + * _.filter(users, 'active'); + * // => objects for ['barney'] + * + * // Combining several predicates using `_.overEvery` or `_.overSome`. + * _.filter(users, _.overSome([{ 'age': 36 }, ['age', 40]])); + * // => objects for ['fred', 'barney'] + */ +function filter(collection, predicate) { + var func = (0,_isArray_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(collection) ? _arrayFilter_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A : _baseFilter_js__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A; + return func(collection, (0,_baseIteratee_js__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A)(predicate, 3)); +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (filter); + + +/***/ }), + +/***/ 16145: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ lodash_es_find) +}); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseIteratee.js + 15 modules +var _baseIteratee = __webpack_require__(23958); +// EXTERNAL MODULE: ./node_modules/lodash-es/isArrayLike.js +var isArrayLike = __webpack_require__(38446); +// EXTERNAL MODULE: ./node_modules/lodash-es/keys.js +var keys = __webpack_require__(27422); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_createFind.js + + + + +/** + * Creates a `_.find` or `_.findLast` function. + * + * @private + * @param {Function} findIndexFunc The function to find the collection index. + * @returns {Function} Returns the new find function. + */ +function createFind(findIndexFunc) { + return function(collection, predicate, fromIndex) { + var iterable = Object(collection); + if (!(0,isArrayLike/* default */.A)(collection)) { + var iteratee = (0,_baseIteratee/* default */.A)(predicate, 3); + collection = (0,keys/* default */.A)(collection); + predicate = function(key) { return iteratee(iterable[key], key, iterable); }; + } + var index = findIndexFunc(collection, predicate, fromIndex); + return index > -1 ? iterable[iteratee ? collection[index] : index] : undefined; + }; +} + +/* harmony default export */ const _createFind = (createFind); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseFindIndex.js +var _baseFindIndex = __webpack_require__(25707); +// EXTERNAL MODULE: ./node_modules/lodash-es/toInteger.js +var toInteger = __webpack_require__(18593); +;// CONCATENATED MODULE: ./node_modules/lodash-es/findIndex.js + + + + +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeMax = Math.max; + +/** + * This method is like `_.find` except that it returns the index of the first + * element `predicate` returns truthy for instead of the element itself. + * + * @static + * @memberOf _ + * @since 1.1.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @param {number} [fromIndex=0] The index to search from. + * @returns {number} Returns the index of the found element, else `-1`. + * @example + * + * var users = [ + * { 'user': 'barney', 'active': false }, + * { 'user': 'fred', 'active': false }, + * { 'user': 'pebbles', 'active': true } + * ]; + * + * _.findIndex(users, function(o) { return o.user == 'barney'; }); + * // => 0 + * + * // The `_.matches` iteratee shorthand. + * _.findIndex(users, { 'user': 'fred', 'active': false }); + * // => 1 + * + * // The `_.matchesProperty` iteratee shorthand. + * _.findIndex(users, ['active', false]); + * // => 0 + * + * // The `_.property` iteratee shorthand. + * _.findIndex(users, 'active'); + * // => 2 + */ +function findIndex(array, predicate, fromIndex) { + var length = array == null ? 0 : array.length; + if (!length) { + return -1; + } + var index = fromIndex == null ? 0 : (0,toInteger/* default */.A)(fromIndex); + if (index < 0) { + index = nativeMax(length + index, 0); + } + return (0,_baseFindIndex/* default */.A)(array, (0,_baseIteratee/* default */.A)(predicate, 3), index); +} + +/* harmony default export */ const lodash_es_findIndex = (findIndex); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/find.js + + + +/** + * Iterates over elements of `collection`, returning the first element + * `predicate` returns truthy for. The predicate is invoked with three + * arguments: (value, index|key, collection). + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to inspect. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @param {number} [fromIndex=0] The index to search from. + * @returns {*} Returns the matched element, else `undefined`. + * @example + * + * var users = [ + * { 'user': 'barney', 'age': 36, 'active': true }, + * { 'user': 'fred', 'age': 40, 'active': false }, + * { 'user': 'pebbles', 'age': 1, 'active': true } + * ]; + * + * _.find(users, function(o) { return o.age < 40; }); + * // => object for 'barney' + * + * // The `_.matches` iteratee shorthand. + * _.find(users, { 'age': 1, 'active': true }); + * // => object for 'pebbles' + * + * // The `_.matchesProperty` iteratee shorthand. + * _.find(users, ['active', false]); + * // => object for 'fred' + * + * // The `_.property` iteratee shorthand. + * _.find(users, 'active'); + * // => object for 'barney' + */ +var find = _createFind(lodash_es_findIndex); + +/* harmony default export */ const lodash_es_find = (find); + + +/***/ }), + +/***/ 34098: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _baseFlatten_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(13588); + + +/** + * Flattens `array` a single level deep. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to flatten. + * @returns {Array} Returns the new flattened array. + * @example + * + * _.flatten([1, [2, [3, [4]], 5]]); + * // => [1, 2, [3, [4]], 5] + */ +function flatten(array) { + var length = array == null ? 0 : array.length; + return length ? (0,_baseFlatten_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(array, 1) : []; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (flatten); + + +/***/ }), + +/***/ 8058: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _arrayEach_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(72641); +/* harmony import */ var _baseEach_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(6240); +/* harmony import */ var _castFunction_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(99922); +/* harmony import */ var _isArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(92049); + + + + + +/** + * Iterates over elements of `collection` and invokes `iteratee` for each element. + * The iteratee is invoked with three arguments: (value, index|key, collection). + * Iteratee functions may exit iteration early by explicitly returning `false`. + * + * **Note:** As with other "Collections" methods, objects with a "length" + * property are iterated like arrays. To avoid this behavior use `_.forIn` + * or `_.forOwn` for object iteration. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @alias each + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Array|Object} Returns `collection`. + * @see _.forEachRight + * @example + * + * _.forEach([1, 2], function(value) { + * console.log(value); + * }); + * // => Logs `1` then `2`. + * + * _.forEach({ 'a': 1, 'b': 2 }, function(value, key) { + * console.log(key); + * }); + * // => Logs 'a' then 'b' (iteration order is not guaranteed). + */ +function forEach(collection, iteratee) { + var func = (0,_isArray_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(collection) ? _arrayEach_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A : _baseEach_js__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A; + return func(collection, (0,_castFunction_js__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A)(iteratee)); +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (forEach); + + +/***/ }), + +/***/ 48585: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ lodash_es_has) +}); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseHas.js +/** Used for built-in method references. */ +var objectProto = Object.prototype; + +/** Used to check objects for own properties. */ +var _baseHas_hasOwnProperty = objectProto.hasOwnProperty; + +/** + * The base implementation of `_.has` without support for deep paths. + * + * @private + * @param {Object} [object] The object to query. + * @param {Array|string} key The key to check. + * @returns {boolean} Returns `true` if `key` exists, else `false`. + */ +function baseHas(object, key) { + return object != null && _baseHas_hasOwnProperty.call(object, key); +} + +/* harmony default export */ const _baseHas = (baseHas); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_hasPath.js +var _hasPath = __webpack_require__(85054); +;// CONCATENATED MODULE: ./node_modules/lodash-es/has.js + + + +/** + * Checks if `path` is a direct property of `object`. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The object to query. + * @param {Array|string} path The path to check. + * @returns {boolean} Returns `true` if `path` exists, else `false`. + * @example + * + * var object = { 'a': { 'b': 2 } }; + * var other = _.create({ 'a': _.create({ 'b': 2 }) }); + * + * _.has(object, 'a'); + * // => true + * + * _.has(object, 'a.b'); + * // => true + * + * _.has(object, ['a', 'b']); + * // => true + * + * _.has(other, 'a'); + * // => false + */ +function has(object, path) { + return object != null && (0,_hasPath/* default */.A)(object, path, _baseHas); +} + +/* harmony default export */ const lodash_es_has = (has); + + +/***/ }), + +/***/ 16807: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ lodash_es_hasIn) +}); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseHasIn.js +/** + * The base implementation of `_.hasIn` without support for deep paths. + * + * @private + * @param {Object} [object] The object to query. + * @param {Array|string} key The key to check. + * @returns {boolean} Returns `true` if `key` exists, else `false`. + */ +function baseHasIn(object, key) { + return object != null && key in Object(object); +} + +/* harmony default export */ const _baseHasIn = (baseHasIn); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_hasPath.js +var _hasPath = __webpack_require__(85054); +;// CONCATENATED MODULE: ./node_modules/lodash-es/hasIn.js + + + +/** + * Checks if `path` is a direct or inherited property of `object`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Object + * @param {Object} object The object to query. + * @param {Array|string} path The path to check. + * @returns {boolean} Returns `true` if `path` exists, else `false`. + * @example + * + * var object = _.create({ 'a': _.create({ 'b': 2 }) }); + * + * _.hasIn(object, 'a'); + * // => true + * + * _.hasIn(object, 'a.b'); + * // => true + * + * _.hasIn(object, ['a', 'b']); + * // => true + * + * _.hasIn(object, 'b'); + * // => false + */ +function hasIn(object, path) { + return object != null && (0,_hasPath/* default */.A)(object, path, _baseHasIn); +} + +/* harmony default export */ const lodash_es_hasIn = (hasIn); + + +/***/ }), + +/***/ 9703: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _baseGetTag_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(88496); +/* harmony import */ var _isArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(92049); +/* harmony import */ var _isObjectLike_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(53098); + + + + +/** `Object#toString` result references. */ +var stringTag = '[object String]'; + +/** + * Checks if `value` is classified as a `String` primitive or object. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a string, else `false`. + * @example + * + * _.isString('abc'); + * // => true + * + * _.isString(1); + * // => false + */ +function isString(value) { + return typeof value == 'string' || + (!(0,_isArray_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(value) && (0,_isObjectLike_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A)(value) && (0,_baseGetTag_js__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A)(value) == stringTag); +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (isString); + + +/***/ }), + +/***/ 61882: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _baseGetTag_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(88496); +/* harmony import */ var _isObjectLike_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(53098); + + + +/** `Object#toString` result references. */ +var symbolTag = '[object Symbol]'; + +/** + * Checks if `value` is classified as a `Symbol` primitive or object. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a symbol, else `false`. + * @example + * + * _.isSymbol(Symbol.iterator); + * // => true + * + * _.isSymbol('abc'); + * // => false + */ +function isSymbol(value) { + return typeof value == 'symbol' || + ((0,_isObjectLike_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(value) && (0,_baseGetTag_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A)(value) == symbolTag); +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (isSymbol); + + +/***/ }), + +/***/ 69592: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * Checks if `value` is `undefined`. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is `undefined`, else `false`. + * @example + * + * _.isUndefined(void 0); + * // => true + * + * _.isUndefined(null); + * // => false + */ +function isUndefined(value) { + return value === undefined; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (isUndefined); + + +/***/ }), + +/***/ 27422: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _arrayLikeKeys_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(83607); +/* harmony import */ var _baseKeys_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(69471); +/* harmony import */ var _isArrayLike_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(38446); + + + + +/** + * Creates an array of the own enumerable property names of `object`. + * + * **Note:** Non-object values are coerced to objects. See the + * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys) + * for more details. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names. + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.keys(new Foo); + * // => ['a', 'b'] (iteration order is not guaranteed) + * + * _.keys('hi'); + * // => ['0', '1'] + */ +function keys(object) { + return (0,_isArrayLike_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(object) ? (0,_arrayLikeKeys_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A)(object) : (0,_baseKeys_js__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A)(object); +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (keys); + + +/***/ }), + +/***/ 26666: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * Gets the last element of `array`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to query. + * @returns {*} Returns the last element of `array`. + * @example + * + * _.last([1, 2, 3]); + * // => 3 + */ +function last(array) { + var length = array == null ? 0 : array.length; + return length ? array[length - 1] : undefined; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (last); + + +/***/ }), + +/***/ 74722: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _arrayMap_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(45572); +/* harmony import */ var _baseIteratee_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(23958); +/* harmony import */ var _baseMap_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(52568); +/* harmony import */ var _isArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(92049); + + + + + +/** + * Creates an array of values by running each element in `collection` thru + * `iteratee`. The iteratee is invoked with three arguments: + * (value, index|key, collection). + * + * Many lodash methods are guarded to work as iteratees for methods like + * `_.every`, `_.filter`, `_.map`, `_.mapValues`, `_.reject`, and `_.some`. + * + * The guarded methods are: + * `ary`, `chunk`, `curry`, `curryRight`, `drop`, `dropRight`, `every`, + * `fill`, `invert`, `parseInt`, `random`, `range`, `rangeRight`, `repeat`, + * `sampleSize`, `slice`, `some`, `sortBy`, `split`, `take`, `takeRight`, + * `template`, `trim`, `trimEnd`, `trimStart`, and `words` + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Array} Returns the new mapped array. + * @example + * + * function square(n) { + * return n * n; + * } + * + * _.map([4, 8], square); + * // => [16, 64] + * + * _.map({ 'a': 4, 'b': 8 }, square); + * // => [16, 64] (iteration order is not guaranteed) + * + * var users = [ + * { 'user': 'barney' }, + * { 'user': 'fred' } + * ]; + * + * // The `_.property` iteratee shorthand. + * _.map(users, 'user'); + * // => ['barney', 'fred'] + */ +function map(collection, iteratee) { + var func = (0,_isArray_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(collection) ? _arrayMap_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A : _baseMap_js__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A; + return func(collection, (0,_baseIteratee_js__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A)(iteratee, 3)); +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (map); + + +/***/ }), + +/***/ 86452: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _baseExtremum_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(72559); +/* harmony import */ var _baseLt_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(36224); +/* harmony import */ var _identity_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(29008); + + + + +/** + * Computes the minimum value of `array`. If `array` is empty or falsey, + * `undefined` is returned. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Math + * @param {Array} array The array to iterate over. + * @returns {*} Returns the minimum value. + * @example + * + * _.min([4, 2, 8, 6]); + * // => 2 + * + * _.min([]); + * // => undefined + */ +function min(array) { + return (array && array.length) + ? (0,_baseExtremum_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(array, _identity_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A, _baseLt_js__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A) + : undefined; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (min); + + +/***/ }), + +/***/ 42302: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * This method returns `undefined`. + * + * @static + * @memberOf _ + * @since 2.3.0 + * @category Util + * @example + * + * _.times(2, _.noop); + * // => [undefined, undefined] + */ +function noop() { + // No operation performed. +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (noop); + + +/***/ }), + +/***/ 89463: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ lodash_es_reduce) +}); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_arrayReduce.js +/** + * A specialized version of `_.reduce` for arrays without support for + * iteratee shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @param {*} [accumulator] The initial value. + * @param {boolean} [initAccum] Specify using the first element of `array` as + * the initial value. + * @returns {*} Returns the accumulated value. + */ +function arrayReduce(array, iteratee, accumulator, initAccum) { + var index = -1, + length = array == null ? 0 : array.length; + + if (initAccum && length) { + accumulator = array[++index]; + } + while (++index < length) { + accumulator = iteratee(accumulator, array[index], index, array); + } + return accumulator; +} + +/* harmony default export */ const _arrayReduce = (arrayReduce); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseEach.js + 1 modules +var _baseEach = __webpack_require__(6240); +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseIteratee.js + 15 modules +var _baseIteratee = __webpack_require__(23958); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseReduce.js +/** + * The base implementation of `_.reduce` and `_.reduceRight`, without support + * for iteratee shorthands, which iterates over `collection` using `eachFunc`. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @param {*} accumulator The initial value. + * @param {boolean} initAccum Specify using the first or last element of + * `collection` as the initial value. + * @param {Function} eachFunc The function to iterate over `collection`. + * @returns {*} Returns the accumulated value. + */ +function baseReduce(collection, iteratee, accumulator, initAccum, eachFunc) { + eachFunc(collection, function(value, index, collection) { + accumulator = initAccum + ? (initAccum = false, value) + : iteratee(accumulator, value, index, collection); + }); + return accumulator; +} + +/* harmony default export */ const _baseReduce = (baseReduce); + +// EXTERNAL MODULE: ./node_modules/lodash-es/isArray.js +var isArray = __webpack_require__(92049); +;// CONCATENATED MODULE: ./node_modules/lodash-es/reduce.js + + + + + + +/** + * Reduces `collection` to a value which is the accumulated result of running + * each element in `collection` thru `iteratee`, where each successive + * invocation is supplied the return value of the previous. If `accumulator` + * is not given, the first element of `collection` is used as the initial + * value. The iteratee is invoked with four arguments: + * (accumulator, value, index|key, collection). + * + * Many lodash methods are guarded to work as iteratees for methods like + * `_.reduce`, `_.reduceRight`, and `_.transform`. + * + * The guarded methods are: + * `assign`, `defaults`, `defaultsDeep`, `includes`, `merge`, `orderBy`, + * and `sortBy` + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @param {*} [accumulator] The initial value. + * @returns {*} Returns the accumulated value. + * @see _.reduceRight + * @example + * + * _.reduce([1, 2], function(sum, n) { + * return sum + n; + * }, 0); + * // => 3 + * + * _.reduce({ 'a': 1, 'b': 2, 'c': 1 }, function(result, value, key) { + * (result[value] || (result[value] = [])).push(key); + * return result; + * }, {}); + * // => { '1': ['a', 'c'], '2': ['b'] } (iteration order is not guaranteed) + */ +function reduce(collection, iteratee, accumulator) { + var func = (0,isArray/* default */.A)(collection) ? _arrayReduce : _baseReduce, + initAccum = arguments.length < 3; + + return func(collection, (0,_baseIteratee/* default */.A)(iteratee, 4), accumulator, initAccum, _baseEach/* default */.A); +} + +/* harmony default export */ const lodash_es_reduce = (reduce); + + +/***/ }), + +/***/ 13153: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * This method returns a new empty array. + * + * @static + * @memberOf _ + * @since 4.13.0 + * @category Util + * @returns {Array} Returns the new empty array. + * @example + * + * var arrays = _.times(2, _.stubArray); + * + * console.log(arrays); + * // => [[], []] + * + * console.log(arrays[0] === arrays[1]); + * // => false + */ +function stubArray() { + return []; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (stubArray); + + +/***/ }), + +/***/ 74342: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ lodash_es_toFinite) +}); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_trimmedEndIndex.js +/** Used to match a single whitespace character. */ +var reWhitespace = /\s/; + +/** + * Used by `_.trim` and `_.trimEnd` to get the index of the last non-whitespace + * character of `string`. + * + * @private + * @param {string} string The string to inspect. + * @returns {number} Returns the index of the last non-whitespace character. + */ +function trimmedEndIndex(string) { + var index = string.length; + + while (index-- && reWhitespace.test(string.charAt(index))) {} + return index; +} + +/* harmony default export */ const _trimmedEndIndex = (trimmedEndIndex); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseTrim.js + + +/** Used to match leading whitespace. */ +var reTrimStart = /^\s+/; + +/** + * The base implementation of `_.trim`. + * + * @private + * @param {string} string The string to trim. + * @returns {string} Returns the trimmed string. + */ +function baseTrim(string) { + return string + ? string.slice(0, _trimmedEndIndex(string) + 1).replace(reTrimStart, '') + : string; +} + +/* harmony default export */ const _baseTrim = (baseTrim); + +// EXTERNAL MODULE: ./node_modules/lodash-es/isObject.js +var isObject = __webpack_require__(23149); +// EXTERNAL MODULE: ./node_modules/lodash-es/isSymbol.js +var isSymbol = __webpack_require__(61882); +;// CONCATENATED MODULE: ./node_modules/lodash-es/toNumber.js + + + + +/** Used as references for various `Number` constants. */ +var NAN = 0 / 0; + +/** Used to detect bad signed hexadecimal string values. */ +var reIsBadHex = /^[-+]0x[0-9a-f]+$/i; + +/** Used to detect binary string values. */ +var reIsBinary = /^0b[01]+$/i; + +/** Used to detect octal string values. */ +var reIsOctal = /^0o[0-7]+$/i; + +/** Built-in method references without a dependency on `root`. */ +var freeParseInt = parseInt; + +/** + * Converts `value` to a number. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to process. + * @returns {number} Returns the number. + * @example + * + * _.toNumber(3.2); + * // => 3.2 + * + * _.toNumber(Number.MIN_VALUE); + * // => 5e-324 + * + * _.toNumber(Infinity); + * // => Infinity + * + * _.toNumber('3.2'); + * // => 3.2 + */ +function toNumber(value) { + if (typeof value == 'number') { + return value; + } + if ((0,isSymbol/* default */.A)(value)) { + return NAN; + } + if ((0,isObject/* default */.A)(value)) { + var other = typeof value.valueOf == 'function' ? value.valueOf() : value; + value = (0,isObject/* default */.A)(other) ? (other + '') : other; + } + if (typeof value != 'string') { + return value === 0 ? value : +value; + } + value = _baseTrim(value); + var isBinary = reIsBinary.test(value); + return (isBinary || reIsOctal.test(value)) + ? freeParseInt(value.slice(2), isBinary ? 2 : 8) + : (reIsBadHex.test(value) ? NAN : +value); +} + +/* harmony default export */ const lodash_es_toNumber = (toNumber); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/toFinite.js + + +/** Used as references for various `Number` constants. */ +var INFINITY = 1 / 0, + MAX_INTEGER = 1.7976931348623157e+308; + +/** + * Converts `value` to a finite number. + * + * @static + * @memberOf _ + * @since 4.12.0 + * @category Lang + * @param {*} value The value to convert. + * @returns {number} Returns the converted number. + * @example + * + * _.toFinite(3.2); + * // => 3.2 + * + * _.toFinite(Number.MIN_VALUE); + * // => 5e-324 + * + * _.toFinite(Infinity); + * // => 1.7976931348623157e+308 + * + * _.toFinite('3.2'); + * // => 3.2 + */ +function toFinite(value) { + if (!value) { + return value === 0 ? value : 0; + } + value = lodash_es_toNumber(value); + if (value === INFINITY || value === -INFINITY) { + var sign = (value < 0 ? -1 : 1); + return sign * MAX_INTEGER; + } + return value === value ? value : 0; +} + +/* harmony default export */ const lodash_es_toFinite = (toFinite); + + +/***/ }), + +/***/ 18593: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _toFinite_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(74342); + + +/** + * Converts `value` to an integer. + * + * **Note:** This method is loosely based on + * [`ToInteger`](http://www.ecma-international.org/ecma-262/7.0/#sec-tointeger). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to convert. + * @returns {number} Returns the converted integer. + * @example + * + * _.toInteger(3.2); + * // => 3 + * + * _.toInteger(Number.MIN_VALUE); + * // => 0 + * + * _.toInteger(Infinity); + * // => 1.7976931348623157e+308 + * + * _.toInteger('3.2'); + * // => 3 + */ +function toInteger(value) { + var result = (0,_toFinite_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(value), + remainder = result % 1; + + return result === result ? (remainder ? result - remainder : result) : 0; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (toInteger); + + +/***/ }), + +/***/ 28894: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ lodash_es_toString) +}); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_Symbol.js +var _Symbol = __webpack_require__(241); +// EXTERNAL MODULE: ./node_modules/lodash-es/_arrayMap.js +var _arrayMap = __webpack_require__(45572); +// EXTERNAL MODULE: ./node_modules/lodash-es/isArray.js +var isArray = __webpack_require__(92049); +// EXTERNAL MODULE: ./node_modules/lodash-es/isSymbol.js +var isSymbol = __webpack_require__(61882); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseToString.js + + + + + +/** Used as references for various `Number` constants. */ +var INFINITY = 1 / 0; + +/** Used to convert symbols to primitives and strings. */ +var symbolProto = _Symbol/* default */.A ? _Symbol/* default */.A.prototype : undefined, + symbolToString = symbolProto ? symbolProto.toString : undefined; + +/** + * The base implementation of `_.toString` which doesn't convert nullish + * values to empty strings. + * + * @private + * @param {*} value The value to process. + * @returns {string} Returns the string. + */ +function baseToString(value) { + // Exit early for strings to avoid a performance hit in some environments. + if (typeof value == 'string') { + return value; + } + if ((0,isArray/* default */.A)(value)) { + // Recursively convert values (susceptible to call stack limits). + return (0,_arrayMap/* default */.A)(value, baseToString) + ''; + } + if ((0,isSymbol/* default */.A)(value)) { + return symbolToString ? symbolToString.call(value) : ''; + } + var result = (value + ''); + return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result; +} + +/* harmony default export */ const _baseToString = (baseToString); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/toString.js + + +/** + * Converts `value` to a string. An empty string is returned for `null` + * and `undefined` values. The sign of `-0` is preserved. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to convert. + * @returns {string} Returns the converted string. + * @example + * + * _.toString(null); + * // => '' + * + * _.toString(-0); + * // => '-0' + * + * _.toString([1, 2, 3]); + * // => '1,2,3' + */ +function toString_toString(value) { + return value == null ? '' : _baseToString(value); +} + +/* harmony default export */ const lodash_es_toString = (toString_toString); + + +/***/ }), + +/***/ 38207: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ lodash_es_values) +}); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_arrayMap.js +var _arrayMap = __webpack_require__(45572); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseValues.js + + +/** + * The base implementation of `_.values` and `_.valuesIn` which creates an + * array of `object` property values corresponding to the property names + * of `props`. + * + * @private + * @param {Object} object The object to query. + * @param {Array} props The property names to get values for. + * @returns {Object} Returns the array of property values. + */ +function baseValues(object, props) { + return (0,_arrayMap/* default */.A)(props, function(key) { + return object[key]; + }); +} + +/* harmony default export */ const _baseValues = (baseValues); + +// EXTERNAL MODULE: ./node_modules/lodash-es/keys.js +var keys = __webpack_require__(27422); +;// CONCATENATED MODULE: ./node_modules/lodash-es/values.js + + + +/** + * Creates an array of the own enumerable string keyed property values of `object`. + * + * **Note:** Non-object values are coerced to objects. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property values. + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.values(new Foo); + * // => [1, 2] (iteration order is not guaranteed) + * + * _.values('hi'); + * // => ['h', 'i'] + */ +function values(object) { + return object == null ? [] : _baseValues(object, (0,keys/* default */.A)(object)); +} + +/* harmony default export */ const lodash_es_values = (values); + + +/***/ }), + +/***/ 4261: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + diagram: () => (/* binding */ diagram) +}); + +// EXTERNAL MODULE: ./node_modules/mermaid/dist/chunks/mermaid.core/chunk-VKXSJROQ.mjs +var chunk_VKXSJROQ = __webpack_require__(57323); +// EXTERNAL MODULE: ./node_modules/mermaid/dist/chunks/mermaid.core/chunk-O2AGWWWV.mjs + 3 modules +var chunk_O2AGWWWV = __webpack_require__(64994); +// EXTERNAL MODULE: ./node_modules/dagre-d3-es/src/graphlib/index.js +var graphlib = __webpack_require__(697); +// EXTERNAL MODULE: ./node_modules/d3/src/index.js + 193 modules +var src = __webpack_require__(20007); +// EXTERNAL MODULE: ./node_modules/dagre-d3-es/src/dagre/index.js + 62 modules +var dagre = __webpack_require__(62334); +;// CONCATENATED MODULE: ./node_modules/uuid/dist/esm-node/stringify.js + +/** + * Convert array of 16 byte values to UUID string format of the form: + * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX + */ + +const byteToHex = []; + +for (let i = 0; i < 256; ++i) { + byteToHex.push((i + 0x100).toString(16).slice(1)); +} + +function unsafeStringify(arr, offset = 0) { + // Note: Be careful editing this code! It's been tuned for performance + // and works in ways you may not expect. See https://github.com/uuidjs/uuid/pull/434 + return byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + '-' + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + '-' + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + '-' + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + '-' + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]]; +} + +function stringify(arr, offset = 0) { + const uuid = unsafeStringify(arr, offset); // Consistency check for valid UUID. If this throws, it's likely due to one + // of the following: + // - One or more input array values don't map to a hex octet (leading to + // "undefined" in the uuid) + // - Invalid input values for the RFC `version` or `variant` fields + + if (!validate(uuid)) { + throw TypeError('Stringified UUID is invalid'); + } + + return uuid; +} + +/* harmony default export */ const esm_node_stringify = ((/* unused pure expression or super */ null && (stringify))); +;// CONCATENATED MODULE: ./node_modules/uuid/dist/esm-node/regex.js +/* harmony default export */ const regex = (/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i); +;// CONCATENATED MODULE: ./node_modules/uuid/dist/esm-node/validate.js + + +function validate_validate(uuid) { + return typeof uuid === 'string' && regex.test(uuid); +} + +/* harmony default export */ const esm_node_validate = (validate_validate); +;// CONCATENATED MODULE: ./node_modules/uuid/dist/esm-node/parse.js + + +function parse(uuid) { + if (!esm_node_validate(uuid)) { + throw TypeError('Invalid UUID'); + } + + let v; + const arr = new Uint8Array(16); // Parse ########-....-....-....-............ + + arr[0] = (v = parseInt(uuid.slice(0, 8), 16)) >>> 24; + arr[1] = v >>> 16 & 0xff; + arr[2] = v >>> 8 & 0xff; + arr[3] = v & 0xff; // Parse ........-####-....-....-............ + + arr[4] = (v = parseInt(uuid.slice(9, 13), 16)) >>> 8; + arr[5] = v & 0xff; // Parse ........-....-####-....-............ + + arr[6] = (v = parseInt(uuid.slice(14, 18), 16)) >>> 8; + arr[7] = v & 0xff; // Parse ........-....-....-####-............ + + arr[8] = (v = parseInt(uuid.slice(19, 23), 16)) >>> 8; + arr[9] = v & 0xff; // Parse ........-....-....-....-############ + // (Use "/" to avoid 32-bit truncation when bit-shifting high-order bytes) + + arr[10] = (v = parseInt(uuid.slice(24, 36), 16)) / 0x10000000000 & 0xff; + arr[11] = v / 0x100000000 & 0xff; + arr[12] = v >>> 24 & 0xff; + arr[13] = v >>> 16 & 0xff; + arr[14] = v >>> 8 & 0xff; + arr[15] = v & 0xff; + return arr; +} + +/* harmony default export */ const esm_node_parse = (parse); +;// CONCATENATED MODULE: ./node_modules/uuid/dist/esm-node/v35.js + + + +function stringToBytes(str) { + str = unescape(encodeURIComponent(str)); // UTF8 escape + + const bytes = []; + + for (let i = 0; i < str.length; ++i) { + bytes.push(str.charCodeAt(i)); + } + + return bytes; +} + +const DNS = '6ba7b810-9dad-11d1-80b4-00c04fd430c8'; +const URL = '6ba7b811-9dad-11d1-80b4-00c04fd430c8'; +function v35(name, version, hashfunc) { + function generateUUID(value, namespace, buf, offset) { + var _namespace; + + if (typeof value === 'string') { + value = stringToBytes(value); + } + + if (typeof namespace === 'string') { + namespace = esm_node_parse(namespace); + } + + if (((_namespace = namespace) === null || _namespace === void 0 ? void 0 : _namespace.length) !== 16) { + throw TypeError('Namespace must be array-like (16 iterable integer values, 0-255)'); + } // Compute hash of namespace and value, Per 4.3 + // Future: Use spread syntax when supported on all platforms, e.g. `bytes = + // hashfunc([...namespace, ... value])` + + + let bytes = new Uint8Array(16 + value.length); + bytes.set(namespace); + bytes.set(value, namespace.length); + bytes = hashfunc(bytes); + bytes[6] = bytes[6] & 0x0f | version; + bytes[8] = bytes[8] & 0x3f | 0x80; + + if (buf) { + offset = offset || 0; + + for (let i = 0; i < 16; ++i) { + buf[offset + i] = bytes[i]; + } + + return buf; + } + + return unsafeStringify(bytes); + } // Function#name is not settable on some platforms (#270) + + + try { + generateUUID.name = name; // eslint-disable-next-line no-empty + } catch (err) {} // For CommonJS default export support + + + generateUUID.DNS = DNS; + generateUUID.URL = URL; + return generateUUID; +} +// EXTERNAL MODULE: external "crypto" +var external_crypto_ = __webpack_require__(76982); +var external_crypto_default = /*#__PURE__*/__webpack_require__.n(external_crypto_); +;// CONCATENATED MODULE: ./node_modules/uuid/dist/esm-node/sha1.js +/* provided dependency */ var Buffer = __webpack_require__(48287)["hp"]; + + +function sha1(bytes) { + if (Array.isArray(bytes)) { + bytes = Buffer.from(bytes); + } else if (typeof bytes === 'string') { + bytes = Buffer.from(bytes, 'utf8'); + } + + return external_crypto_default().createHash('sha1').update(bytes).digest(); +} + +/* harmony default export */ const esm_node_sha1 = (sha1); +;// CONCATENATED MODULE: ./node_modules/uuid/dist/esm-node/v5.js + + +const v5 = v35('v5', 0x50, esm_node_sha1); +/* harmony default export */ const esm_node_v5 = (v5); +;// CONCATENATED MODULE: ./node_modules/mermaid/dist/chunks/mermaid.core/erDiagram-762WSSOR.mjs + + + +// src/diagrams/er/parser/erDiagram.jison +var parser = function() { + var o = /* @__PURE__ */ (0,chunk_O2AGWWWV/* __name */.K2)(function(k, v, o2, l) { + for (o2 = o2 || {}, l = k.length; l--; o2[k[l]] = v) ; + return o2; + }, "o"), $V0 = [6, 8, 10, 20, 22, 24, 26, 27, 28], $V1 = [1, 10], $V2 = [1, 11], $V3 = [1, 12], $V4 = [1, 13], $V5 = [1, 14], $V6 = [1, 15], $V7 = [1, 21], $V8 = [1, 22], $V9 = [1, 23], $Va = [1, 24], $Vb = [1, 25], $Vc = [6, 8, 10, 13, 15, 18, 19, 20, 22, 24, 26, 27, 28, 41, 42, 43, 44, 45], $Vd = [1, 34], $Ve = [27, 28, 46, 47], $Vf = [41, 42, 43, 44, 45], $Vg = [17, 34], $Vh = [1, 54], $Vi = [1, 53], $Vj = [17, 34, 36, 38]; + var parser2 = { + trace: /* @__PURE__ */ (0,chunk_O2AGWWWV/* __name */.K2)(function trace() { + }, "trace"), + yy: {}, + symbols_: { "error": 2, "start": 3, "ER_DIAGRAM": 4, "document": 5, "EOF": 6, "line": 7, "SPACE": 8, "statement": 9, "NEWLINE": 10, "entityName": 11, "relSpec": 12, ":": 13, "role": 14, "BLOCK_START": 15, "attributes": 16, "BLOCK_STOP": 17, "SQS": 18, "SQE": 19, "title": 20, "title_value": 21, "acc_title": 22, "acc_title_value": 23, "acc_descr": 24, "acc_descr_value": 25, "acc_descr_multiline_value": 26, "ALPHANUM": 27, "ENTITY_NAME": 28, "attribute": 29, "attributeType": 30, "attributeName": 31, "attributeKeyTypeList": 32, "attributeComment": 33, "ATTRIBUTE_WORD": 34, "attributeKeyType": 35, "COMMA": 36, "ATTRIBUTE_KEY": 37, "COMMENT": 38, "cardinality": 39, "relType": 40, "ZERO_OR_ONE": 41, "ZERO_OR_MORE": 42, "ONE_OR_MORE": 43, "ONLY_ONE": 44, "MD_PARENT": 45, "NON_IDENTIFYING": 46, "IDENTIFYING": 47, "WORD": 48, "$accept": 0, "$end": 1 }, + terminals_: { 2: "error", 4: "ER_DIAGRAM", 6: "EOF", 8: "SPACE", 10: "NEWLINE", 13: ":", 15: "BLOCK_START", 17: "BLOCK_STOP", 18: "SQS", 19: "SQE", 20: "title", 21: "title_value", 22: "acc_title", 23: "acc_title_value", 24: "acc_descr", 25: "acc_descr_value", 26: "acc_descr_multiline_value", 27: "ALPHANUM", 28: "ENTITY_NAME", 34: "ATTRIBUTE_WORD", 36: "COMMA", 37: "ATTRIBUTE_KEY", 38: "COMMENT", 41: "ZERO_OR_ONE", 42: "ZERO_OR_MORE", 43: "ONE_OR_MORE", 44: "ONLY_ONE", 45: "MD_PARENT", 46: "NON_IDENTIFYING", 47: "IDENTIFYING", 48: "WORD" }, + productions_: [0, [3, 3], [5, 0], [5, 2], [7, 2], [7, 1], [7, 1], [7, 1], [9, 5], [9, 4], [9, 3], [9, 1], [9, 7], [9, 6], [9, 4], [9, 2], [9, 2], [9, 2], [9, 1], [11, 1], [11, 1], [16, 1], [16, 2], [29, 2], [29, 3], [29, 3], [29, 4], [30, 1], [31, 1], [32, 1], [32, 3], [35, 1], [33, 1], [12, 3], [39, 1], [39, 1], [39, 1], [39, 1], [39, 1], [40, 1], [40, 1], [14, 1], [14, 1], [14, 1]], + performAction: /* @__PURE__ */ (0,chunk_O2AGWWWV/* __name */.K2)(function anonymous(yytext, yyleng, yylineno, yy, yystate, $$, _$) { + var $0 = $$.length - 1; + switch (yystate) { + case 1: + break; + case 2: + this.$ = []; + break; + case 3: + $$[$0 - 1].push($$[$0]); + this.$ = $$[$0 - 1]; + break; + case 4: + case 5: + this.$ = $$[$0]; + break; + case 6: + case 7: + this.$ = []; + break; + case 8: + yy.addEntity($$[$0 - 4]); + yy.addEntity($$[$0 - 2]); + yy.addRelationship($$[$0 - 4], $$[$0], $$[$0 - 2], $$[$0 - 3]); + break; + case 9: + yy.addEntity($$[$0 - 3]); + yy.addAttributes($$[$0 - 3], $$[$0 - 1]); + break; + case 10: + yy.addEntity($$[$0 - 2]); + break; + case 11: + yy.addEntity($$[$0]); + break; + case 12: + yy.addEntity($$[$0 - 6], $$[$0 - 4]); + yy.addAttributes($$[$0 - 6], $$[$0 - 1]); + break; + case 13: + yy.addEntity($$[$0 - 5], $$[$0 - 3]); + break; + case 14: + yy.addEntity($$[$0 - 3], $$[$0 - 1]); + break; + case 15: + case 16: + this.$ = $$[$0].trim(); + yy.setAccTitle(this.$); + break; + case 17: + case 18: + this.$ = $$[$0].trim(); + yy.setAccDescription(this.$); + break; + case 19: + case 43: + this.$ = $$[$0]; + break; + case 20: + case 41: + case 42: + this.$ = $$[$0].replace(/"/g, ""); + break; + case 21: + case 29: + this.$ = [$$[$0]]; + break; + case 22: + $$[$0].push($$[$0 - 1]); + this.$ = $$[$0]; + break; + case 23: + this.$ = { attributeType: $$[$0 - 1], attributeName: $$[$0] }; + break; + case 24: + this.$ = { attributeType: $$[$0 - 2], attributeName: $$[$0 - 1], attributeKeyTypeList: $$[$0] }; + break; + case 25: + this.$ = { attributeType: $$[$0 - 2], attributeName: $$[$0 - 1], attributeComment: $$[$0] }; + break; + case 26: + this.$ = { attributeType: $$[$0 - 3], attributeName: $$[$0 - 2], attributeKeyTypeList: $$[$0 - 1], attributeComment: $$[$0] }; + break; + case 27: + case 28: + case 31: + this.$ = $$[$0]; + break; + case 30: + $$[$0 - 2].push($$[$0]); + this.$ = $$[$0 - 2]; + break; + case 32: + this.$ = $$[$0].replace(/"/g, ""); + break; + case 33: + this.$ = { cardA: $$[$0], relType: $$[$0 - 1], cardB: $$[$0 - 2] }; + break; + case 34: + this.$ = yy.Cardinality.ZERO_OR_ONE; + break; + case 35: + this.$ = yy.Cardinality.ZERO_OR_MORE; + break; + case 36: + this.$ = yy.Cardinality.ONE_OR_MORE; + break; + case 37: + this.$ = yy.Cardinality.ONLY_ONE; + break; + case 38: + this.$ = yy.Cardinality.MD_PARENT; + break; + case 39: + this.$ = yy.Identification.NON_IDENTIFYING; + break; + case 40: + this.$ = yy.Identification.IDENTIFYING; + break; + } + }, "anonymous"), + table: [{ 3: 1, 4: [1, 2] }, { 1: [3] }, o($V0, [2, 2], { 5: 3 }), { 6: [1, 4], 7: 5, 8: [1, 6], 9: 7, 10: [1, 8], 11: 9, 20: $V1, 22: $V2, 24: $V3, 26: $V4, 27: $V5, 28: $V6 }, o($V0, [2, 7], { 1: [2, 1] }), o($V0, [2, 3]), { 9: 16, 11: 9, 20: $V1, 22: $V2, 24: $V3, 26: $V4, 27: $V5, 28: $V6 }, o($V0, [2, 5]), o($V0, [2, 6]), o($V0, [2, 11], { 12: 17, 39: 20, 15: [1, 18], 18: [1, 19], 41: $V7, 42: $V8, 43: $V9, 44: $Va, 45: $Vb }), { 21: [1, 26] }, { 23: [1, 27] }, { 25: [1, 28] }, o($V0, [2, 18]), o($Vc, [2, 19]), o($Vc, [2, 20]), o($V0, [2, 4]), { 11: 29, 27: $V5, 28: $V6 }, { 16: 30, 17: [1, 31], 29: 32, 30: 33, 34: $Vd }, { 11: 35, 27: $V5, 28: $V6 }, { 40: 36, 46: [1, 37], 47: [1, 38] }, o($Ve, [2, 34]), o($Ve, [2, 35]), o($Ve, [2, 36]), o($Ve, [2, 37]), o($Ve, [2, 38]), o($V0, [2, 15]), o($V0, [2, 16]), o($V0, [2, 17]), { 13: [1, 39] }, { 17: [1, 40] }, o($V0, [2, 10]), { 16: 41, 17: [2, 21], 29: 32, 30: 33, 34: $Vd }, { 31: 42, 34: [1, 43] }, { 34: [2, 27] }, { 19: [1, 44] }, { 39: 45, 41: $V7, 42: $V8, 43: $V9, 44: $Va, 45: $Vb }, o($Vf, [2, 39]), o($Vf, [2, 40]), { 14: 46, 27: [1, 49], 28: [1, 48], 48: [1, 47] }, o($V0, [2, 9]), { 17: [2, 22] }, o($Vg, [2, 23], { 32: 50, 33: 51, 35: 52, 37: $Vh, 38: $Vi }), o([17, 34, 37, 38], [2, 28]), o($V0, [2, 14], { 15: [1, 55] }), o([27, 28], [2, 33]), o($V0, [2, 8]), o($V0, [2, 41]), o($V0, [2, 42]), o($V0, [2, 43]), o($Vg, [2, 24], { 33: 56, 36: [1, 57], 38: $Vi }), o($Vg, [2, 25]), o($Vj, [2, 29]), o($Vg, [2, 32]), o($Vj, [2, 31]), { 16: 58, 17: [1, 59], 29: 32, 30: 33, 34: $Vd }, o($Vg, [2, 26]), { 35: 60, 37: $Vh }, { 17: [1, 61] }, o($V0, [2, 13]), o($Vj, [2, 30]), o($V0, [2, 12])], + defaultActions: { 34: [2, 27], 41: [2, 22] }, + parseError: /* @__PURE__ */ (0,chunk_O2AGWWWV/* __name */.K2)(function parseError(str, hash) { + if (hash.recoverable) { + this.trace(str); + } else { + var error = new Error(str); + error.hash = hash; + throw error; + } + }, "parseError"), + parse: /* @__PURE__ */ (0,chunk_O2AGWWWV/* __name */.K2)(function parse(input) { + var self = this, stack = [0], tstack = [], vstack = [null], lstack = [], table = this.table, yytext = "", yylineno = 0, yyleng = 0, recovering = 0, TERROR = 2, EOF = 1; + var args = lstack.slice.call(arguments, 1); + var lexer2 = Object.create(this.lexer); + var sharedState = { yy: {} }; + for (var k in this.yy) { + if (Object.prototype.hasOwnProperty.call(this.yy, k)) { + sharedState.yy[k] = this.yy[k]; + } + } + lexer2.setInput(input, sharedState.yy); + sharedState.yy.lexer = lexer2; + sharedState.yy.parser = this; + if (typeof lexer2.yylloc == "undefined") { + lexer2.yylloc = {}; + } + var yyloc = lexer2.yylloc; + lstack.push(yyloc); + var ranges = lexer2.options && lexer2.options.ranges; + if (typeof sharedState.yy.parseError === "function") { + this.parseError = sharedState.yy.parseError; + } else { + this.parseError = Object.getPrototypeOf(this).parseError; + } + function popStack(n) { + stack.length = stack.length - 2 * n; + vstack.length = vstack.length - n; + lstack.length = lstack.length - n; + } + (0,chunk_O2AGWWWV/* __name */.K2)(popStack, "popStack"); + function lex() { + var token; + token = tstack.pop() || lexer2.lex() || EOF; + if (typeof token !== "number") { + if (token instanceof Array) { + tstack = token; + token = tstack.pop(); + } + token = self.symbols_[token] || token; + } + return token; + } + (0,chunk_O2AGWWWV/* __name */.K2)(lex, "lex"); + var symbol, preErrorSymbol, state, action, a, r, yyval = {}, p, len, newState, expected; + while (true) { + state = stack[stack.length - 1]; + if (this.defaultActions[state]) { + action = this.defaultActions[state]; + } else { + if (symbol === null || typeof symbol == "undefined") { + symbol = lex(); + } + action = table[state] && table[state][symbol]; + } + if (typeof action === "undefined" || !action.length || !action[0]) { + var errStr = ""; + expected = []; + for (p in table[state]) { + if (this.terminals_[p] && p > TERROR) { + expected.push("'" + this.terminals_[p] + "'"); + } + } + if (lexer2.showPosition) { + errStr = "Parse error on line " + (yylineno + 1) + ":\n" + lexer2.showPosition() + "\nExpecting " + expected.join(", ") + ", got '" + (this.terminals_[symbol] || symbol) + "'"; + } else { + errStr = "Parse error on line " + (yylineno + 1) + ": Unexpected " + (symbol == EOF ? "end of input" : "'" + (this.terminals_[symbol] || symbol) + "'"); + } + this.parseError(errStr, { + text: lexer2.match, + token: this.terminals_[symbol] || symbol, + line: lexer2.yylineno, + loc: yyloc, + expected + }); + } + if (action[0] instanceof Array && action.length > 1) { + throw new Error("Parse Error: multiple actions possible at state: " + state + ", token: " + symbol); + } + switch (action[0]) { + case 1: + stack.push(symbol); + vstack.push(lexer2.yytext); + lstack.push(lexer2.yylloc); + stack.push(action[1]); + symbol = null; + if (!preErrorSymbol) { + yyleng = lexer2.yyleng; + yytext = lexer2.yytext; + yylineno = lexer2.yylineno; + yyloc = lexer2.yylloc; + if (recovering > 0) { + recovering--; + } + } else { + symbol = preErrorSymbol; + preErrorSymbol = null; + } + break; + case 2: + len = this.productions_[action[1]][1]; + yyval.$ = vstack[vstack.length - len]; + yyval._$ = { + first_line: lstack[lstack.length - (len || 1)].first_line, + last_line: lstack[lstack.length - 1].last_line, + first_column: lstack[lstack.length - (len || 1)].first_column, + last_column: lstack[lstack.length - 1].last_column + }; + if (ranges) { + yyval._$.range = [ + lstack[lstack.length - (len || 1)].range[0], + lstack[lstack.length - 1].range[1] + ]; + } + r = this.performAction.apply(yyval, [ + yytext, + yyleng, + yylineno, + sharedState.yy, + action[1], + vstack, + lstack + ].concat(args)); + if (typeof r !== "undefined") { + return r; + } + if (len) { + stack = stack.slice(0, -1 * len * 2); + vstack = vstack.slice(0, -1 * len); + lstack = lstack.slice(0, -1 * len); + } + stack.push(this.productions_[action[1]][0]); + vstack.push(yyval.$); + lstack.push(yyval._$); + newState = table[stack[stack.length - 2]][stack[stack.length - 1]]; + stack.push(newState); + break; + case 3: + return true; + } + } + return true; + }, "parse") + }; + var lexer = /* @__PURE__ */ function() { + var lexer2 = { + EOF: 1, + parseError: /* @__PURE__ */ (0,chunk_O2AGWWWV/* __name */.K2)(function parseError(str, hash) { + if (this.yy.parser) { + this.yy.parser.parseError(str, hash); + } else { + throw new Error(str); + } + }, "parseError"), + // resets the lexer, sets new input + setInput: /* @__PURE__ */ (0,chunk_O2AGWWWV/* __name */.K2)(function(input, yy) { + this.yy = yy || this.yy || {}; + this._input = input; + this._more = this._backtrack = this.done = false; + this.yylineno = this.yyleng = 0; + this.yytext = this.matched = this.match = ""; + this.conditionStack = ["INITIAL"]; + this.yylloc = { + first_line: 1, + first_column: 0, + last_line: 1, + last_column: 0 + }; + if (this.options.ranges) { + this.yylloc.range = [0, 0]; + } + this.offset = 0; + return this; + }, "setInput"), + // consumes and returns one char from the input + input: /* @__PURE__ */ (0,chunk_O2AGWWWV/* __name */.K2)(function() { + var ch = this._input[0]; + this.yytext += ch; + this.yyleng++; + this.offset++; + this.match += ch; + this.matched += ch; + var lines = ch.match(/(?:\r\n?|\n).*/g); + if (lines) { + this.yylineno++; + this.yylloc.last_line++; + } else { + this.yylloc.last_column++; + } + if (this.options.ranges) { + this.yylloc.range[1]++; + } + this._input = this._input.slice(1); + return ch; + }, "input"), + // unshifts one char (or a string) into the input + unput: /* @__PURE__ */ (0,chunk_O2AGWWWV/* __name */.K2)(function(ch) { + var len = ch.length; + var lines = ch.split(/(?:\r\n?|\n)/g); + this._input = ch + this._input; + this.yytext = this.yytext.substr(0, this.yytext.length - len); + this.offset -= len; + var oldLines = this.match.split(/(?:\r\n?|\n)/g); + this.match = this.match.substr(0, this.match.length - 1); + this.matched = this.matched.substr(0, this.matched.length - 1); + if (lines.length - 1) { + this.yylineno -= lines.length - 1; + } + var r = this.yylloc.range; + this.yylloc = { + first_line: this.yylloc.first_line, + last_line: this.yylineno + 1, + first_column: this.yylloc.first_column, + last_column: lines ? (lines.length === oldLines.length ? this.yylloc.first_column : 0) + oldLines[oldLines.length - lines.length].length - lines[0].length : this.yylloc.first_column - len + }; + if (this.options.ranges) { + this.yylloc.range = [r[0], r[0] + this.yyleng - len]; + } + this.yyleng = this.yytext.length; + return this; + }, "unput"), + // When called from action, caches matched text and appends it on next action + more: /* @__PURE__ */ (0,chunk_O2AGWWWV/* __name */.K2)(function() { + this._more = true; + return this; + }, "more"), + // When called from action, signals the lexer that this rule fails to match the input, so the next matching rule (regex) should be tested instead. + reject: /* @__PURE__ */ (0,chunk_O2AGWWWV/* __name */.K2)(function() { + if (this.options.backtrack_lexer) { + this._backtrack = true; + } else { + return this.parseError("Lexical error on line " + (this.yylineno + 1) + ". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n" + this.showPosition(), { + text: "", + token: null, + line: this.yylineno + }); + } + return this; + }, "reject"), + // retain first n characters of the match + less: /* @__PURE__ */ (0,chunk_O2AGWWWV/* __name */.K2)(function(n) { + this.unput(this.match.slice(n)); + }, "less"), + // displays already matched input, i.e. for error messages + pastInput: /* @__PURE__ */ (0,chunk_O2AGWWWV/* __name */.K2)(function() { + var past = this.matched.substr(0, this.matched.length - this.match.length); + return (past.length > 20 ? "..." : "") + past.substr(-20).replace(/\n/g, ""); + }, "pastInput"), + // displays upcoming input, i.e. for error messages + upcomingInput: /* @__PURE__ */ (0,chunk_O2AGWWWV/* __name */.K2)(function() { + var next = this.match; + if (next.length < 20) { + next += this._input.substr(0, 20 - next.length); + } + return (next.substr(0, 20) + (next.length > 20 ? "..." : "")).replace(/\n/g, ""); + }, "upcomingInput"), + // displays the character position where the lexing error occurred, i.e. for error messages + showPosition: /* @__PURE__ */ (0,chunk_O2AGWWWV/* __name */.K2)(function() { + var pre = this.pastInput(); + var c = new Array(pre.length + 1).join("-"); + return pre + this.upcomingInput() + "\n" + c + "^"; + }, "showPosition"), + // test the lexed token: return FALSE when not a match, otherwise return token + test_match: /* @__PURE__ */ (0,chunk_O2AGWWWV/* __name */.K2)(function(match, indexed_rule) { + var token, lines, backup; + if (this.options.backtrack_lexer) { + backup = { + yylineno: this.yylineno, + yylloc: { + first_line: this.yylloc.first_line, + last_line: this.last_line, + first_column: this.yylloc.first_column, + last_column: this.yylloc.last_column + }, + yytext: this.yytext, + match: this.match, + matches: this.matches, + matched: this.matched, + yyleng: this.yyleng, + offset: this.offset, + _more: this._more, + _input: this._input, + yy: this.yy, + conditionStack: this.conditionStack.slice(0), + done: this.done + }; + if (this.options.ranges) { + backup.yylloc.range = this.yylloc.range.slice(0); + } + } + lines = match[0].match(/(?:\r\n?|\n).*/g); + if (lines) { + this.yylineno += lines.length; + } + this.yylloc = { + first_line: this.yylloc.last_line, + last_line: this.yylineno + 1, + first_column: this.yylloc.last_column, + last_column: lines ? lines[lines.length - 1].length - lines[lines.length - 1].match(/\r?\n?/)[0].length : this.yylloc.last_column + match[0].length + }; + this.yytext += match[0]; + this.match += match[0]; + this.matches = match; + this.yyleng = this.yytext.length; + if (this.options.ranges) { + this.yylloc.range = [this.offset, this.offset += this.yyleng]; + } + this._more = false; + this._backtrack = false; + this._input = this._input.slice(match[0].length); + this.matched += match[0]; + token = this.performAction.call(this, this.yy, this, indexed_rule, this.conditionStack[this.conditionStack.length - 1]); + if (this.done && this._input) { + this.done = false; + } + if (token) { + return token; + } else if (this._backtrack) { + for (var k in backup) { + this[k] = backup[k]; + } + return false; + } + return false; + }, "test_match"), + // return next match in input + next: /* @__PURE__ */ (0,chunk_O2AGWWWV/* __name */.K2)(function() { + if (this.done) { + return this.EOF; + } + if (!this._input) { + this.done = true; + } + var token, match, tempMatch, index; + if (!this._more) { + this.yytext = ""; + this.match = ""; + } + var rules = this._currentRules(); + for (var i = 0; i < rules.length; i++) { + tempMatch = this._input.match(this.rules[rules[i]]); + if (tempMatch && (!match || tempMatch[0].length > match[0].length)) { + match = tempMatch; + index = i; + if (this.options.backtrack_lexer) { + token = this.test_match(tempMatch, rules[i]); + if (token !== false) { + return token; + } else if (this._backtrack) { + match = false; + continue; + } else { + return false; + } + } else if (!this.options.flex) { + break; + } + } + } + if (match) { + token = this.test_match(match, rules[index]); + if (token !== false) { + return token; + } + return false; + } + if (this._input === "") { + return this.EOF; + } else { + return this.parseError("Lexical error on line " + (this.yylineno + 1) + ". Unrecognized text.\n" + this.showPosition(), { + text: "", + token: null, + line: this.yylineno + }); + } + }, "next"), + // return next match that has a token + lex: /* @__PURE__ */ (0,chunk_O2AGWWWV/* __name */.K2)(function lex() { + var r = this.next(); + if (r) { + return r; + } else { + return this.lex(); + } + }, "lex"), + // activates a new lexer condition state (pushes the new lexer condition state onto the condition stack) + begin: /* @__PURE__ */ (0,chunk_O2AGWWWV/* __name */.K2)(function begin(condition) { + this.conditionStack.push(condition); + }, "begin"), + // pop the previously active lexer condition state off the condition stack + popState: /* @__PURE__ */ (0,chunk_O2AGWWWV/* __name */.K2)(function popState() { + var n = this.conditionStack.length - 1; + if (n > 0) { + return this.conditionStack.pop(); + } else { + return this.conditionStack[0]; + } + }, "popState"), + // produce the lexer rule set which is active for the currently active lexer condition state + _currentRules: /* @__PURE__ */ (0,chunk_O2AGWWWV/* __name */.K2)(function _currentRules() { + if (this.conditionStack.length && this.conditionStack[this.conditionStack.length - 1]) { + return this.conditions[this.conditionStack[this.conditionStack.length - 1]].rules; + } else { + return this.conditions["INITIAL"].rules; + } + }, "_currentRules"), + // return the currently active lexer condition state; when an index argument is provided it produces the N-th previous condition state, if available + topState: /* @__PURE__ */ (0,chunk_O2AGWWWV/* __name */.K2)(function topState(n) { + n = this.conditionStack.length - 1 - Math.abs(n || 0); + if (n >= 0) { + return this.conditionStack[n]; + } else { + return "INITIAL"; + } + }, "topState"), + // alias for begin(condition) + pushState: /* @__PURE__ */ (0,chunk_O2AGWWWV/* __name */.K2)(function pushState(condition) { + this.begin(condition); + }, "pushState"), + // return the number of states currently on the stack + stateStackSize: /* @__PURE__ */ (0,chunk_O2AGWWWV/* __name */.K2)(function stateStackSize() { + return this.conditionStack.length; + }, "stateStackSize"), + options: { "case-insensitive": true }, + performAction: /* @__PURE__ */ (0,chunk_O2AGWWWV/* __name */.K2)(function anonymous(yy, yy_, $avoiding_name_collisions, YY_START) { + var YYSTATE = YY_START; + switch ($avoiding_name_collisions) { + case 0: + this.begin("acc_title"); + return 22; + break; + case 1: + this.popState(); + return "acc_title_value"; + break; + case 2: + this.begin("acc_descr"); + return 24; + break; + case 3: + this.popState(); + return "acc_descr_value"; + break; + case 4: + this.begin("acc_descr_multiline"); + break; + case 5: + this.popState(); + break; + case 6: + return "acc_descr_multiline_value"; + break; + case 7: + return 10; + break; + case 8: + break; + case 9: + return 8; + break; + case 10: + return 28; + break; + case 11: + return 48; + break; + case 12: + return 4; + break; + case 13: + this.begin("block"); + return 15; + break; + case 14: + return 36; + break; + case 15: + break; + case 16: + return 37; + break; + case 17: + return 34; + break; + case 18: + return 34; + break; + case 19: + return 38; + break; + case 20: + break; + case 21: + this.popState(); + return 17; + break; + case 22: + return yy_.yytext[0]; + break; + case 23: + return 18; + break; + case 24: + return 19; + break; + case 25: + return 41; + break; + case 26: + return 43; + break; + case 27: + return 43; + break; + case 28: + return 43; + break; + case 29: + return 41; + break; + case 30: + return 41; + break; + case 31: + return 42; + break; + case 32: + return 42; + break; + case 33: + return 42; + break; + case 34: + return 42; + break; + case 35: + return 42; + break; + case 36: + return 43; + break; + case 37: + return 42; + break; + case 38: + return 43; + break; + case 39: + return 44; + break; + case 40: + return 44; + break; + case 41: + return 44; + break; + case 42: + return 44; + break; + case 43: + return 41; + break; + case 44: + return 42; + break; + case 45: + return 43; + break; + case 46: + return 45; + break; + case 47: + return 46; + break; + case 48: + return 47; + break; + case 49: + return 47; + break; + case 50: + return 46; + break; + case 51: + return 46; + break; + case 52: + return 46; + break; + case 53: + return 27; + break; + case 54: + return yy_.yytext[0]; + break; + case 55: + return 6; + break; + } + }, "anonymous"), + rules: [/^(?:accTitle\s*:\s*)/i, /^(?:(?!\n||)*[^\n]*)/i, /^(?:accDescr\s*:\s*)/i, /^(?:(?!\n||)*[^\n]*)/i, /^(?:accDescr\s*\{\s*)/i, /^(?:[\}])/i, /^(?:[^\}]*)/i, /^(?:[\n]+)/i, /^(?:\s+)/i, /^(?:[\s]+)/i, /^(?:"[^"%\r\n\v\b\\]+")/i, /^(?:"[^"]*")/i, /^(?:erDiagram\b)/i, /^(?:\{)/i, /^(?:,)/i, /^(?:\s+)/i, /^(?:\b((?:PK)|(?:FK)|(?:UK))\b)/i, /^(?:(.*?)[~](.*?)*[~])/i, /^(?:[\*A-Za-z_][A-Za-z0-9\-_\[\]\(\)]*)/i, /^(?:"[^"]*")/i, /^(?:[\n]+)/i, /^(?:\})/i, /^(?:.)/i, /^(?:\[)/i, /^(?:\])/i, /^(?:one or zero\b)/i, /^(?:one or more\b)/i, /^(?:one or many\b)/i, /^(?:1\+)/i, /^(?:\|o\b)/i, /^(?:zero or one\b)/i, /^(?:zero or more\b)/i, /^(?:zero or many\b)/i, /^(?:0\+)/i, /^(?:\}o\b)/i, /^(?:many\(0\))/i, /^(?:many\(1\))/i, /^(?:many\b)/i, /^(?:\}\|)/i, /^(?:one\b)/i, /^(?:only one\b)/i, /^(?:1\b)/i, /^(?:\|\|)/i, /^(?:o\|)/i, /^(?:o\{)/i, /^(?:\|\{)/i, /^(?:\s*u\b)/i, /^(?:\.\.)/i, /^(?:--)/i, /^(?:to\b)/i, /^(?:optionally to\b)/i, /^(?:\.-)/i, /^(?:-\.)/i, /^(?:[A-Za-z_][A-Za-z0-9\-_]*)/i, /^(?:.)/i, /^(?:$)/i], + conditions: { "acc_descr_multiline": { "rules": [5, 6], "inclusive": false }, "acc_descr": { "rules": [3], "inclusive": false }, "acc_title": { "rules": [1], "inclusive": false }, "block": { "rules": [14, 15, 16, 17, 18, 19, 20, 21, 22], "inclusive": false }, "INITIAL": { "rules": [0, 2, 4, 7, 8, 9, 10, 11, 12, 13, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55], "inclusive": true } } + }; + return lexer2; + }(); + parser2.lexer = lexer; + function Parser() { + this.yy = {}; + } + (0,chunk_O2AGWWWV/* __name */.K2)(Parser, "Parser"); + Parser.prototype = parser2; + parser2.Parser = Parser; + return new Parser(); +}(); +parser.parser = parser; +var erDiagram_default = parser; + +// src/diagrams/er/erDb.js +var entities = /* @__PURE__ */ new Map(); +var relationships = []; +var Cardinality = { + ZERO_OR_ONE: "ZERO_OR_ONE", + ZERO_OR_MORE: "ZERO_OR_MORE", + ONE_OR_MORE: "ONE_OR_MORE", + ONLY_ONE: "ONLY_ONE", + MD_PARENT: "MD_PARENT" +}; +var Identification = { + NON_IDENTIFYING: "NON_IDENTIFYING", + IDENTIFYING: "IDENTIFYING" +}; +var addEntity = /* @__PURE__ */ (0,chunk_O2AGWWWV/* __name */.K2)(function(name, alias = void 0) { + if (!entities.has(name)) { + entities.set(name, { attributes: [], alias }); + chunk_O2AGWWWV/* log */.Rm.info("Added new entity :", name); + } else if (!entities.get(name).alias && alias) { + entities.get(name).alias = alias; + chunk_O2AGWWWV/* log */.Rm.info(`Add alias '${alias}' to entity '${name}'`); + } + return entities.get(name); +}, "addEntity"); +var getEntities = /* @__PURE__ */ (0,chunk_O2AGWWWV/* __name */.K2)(() => entities, "getEntities"); +var addAttributes = /* @__PURE__ */ (0,chunk_O2AGWWWV/* __name */.K2)(function(entityName, attribs) { + let entity = addEntity(entityName); + let i; + for (i = attribs.length - 1; i >= 0; i--) { + entity.attributes.push(attribs[i]); + chunk_O2AGWWWV/* log */.Rm.debug("Added attribute ", attribs[i].attributeName); + } +}, "addAttributes"); +var addRelationship = /* @__PURE__ */ (0,chunk_O2AGWWWV/* __name */.K2)(function(entA, rolA, entB, rSpec) { + let rel = { + entityA: entA, + roleA: rolA, + entityB: entB, + relSpec: rSpec + }; + relationships.push(rel); + chunk_O2AGWWWV/* log */.Rm.debug("Added new relationship :", rel); +}, "addRelationship"); +var getRelationships = /* @__PURE__ */ (0,chunk_O2AGWWWV/* __name */.K2)(() => relationships, "getRelationships"); +var clear2 = /* @__PURE__ */ (0,chunk_O2AGWWWV/* __name */.K2)(function() { + entities = /* @__PURE__ */ new Map(); + relationships = []; + (0,chunk_O2AGWWWV/* clear */.IU)(); +}, "clear"); +var erDb_default = { + Cardinality, + Identification, + getConfig: /* @__PURE__ */ (0,chunk_O2AGWWWV/* __name */.K2)(() => (0,chunk_O2AGWWWV/* getConfig2 */.D7)().er, "getConfig"), + addEntity, + addAttributes, + getEntities, + addRelationship, + getRelationships, + clear: clear2, + setAccTitle: chunk_O2AGWWWV/* setAccTitle */.SV, + getAccTitle: chunk_O2AGWWWV/* getAccTitle */.iN, + setAccDescription: chunk_O2AGWWWV/* setAccDescription */.EI, + getAccDescription: chunk_O2AGWWWV/* getAccDescription */.m7, + setDiagramTitle: chunk_O2AGWWWV/* setDiagramTitle */.ke, + getDiagramTitle: chunk_O2AGWWWV/* getDiagramTitle */.ab +}; + +// src/diagrams/er/erRenderer.js + + + + +// src/diagrams/er/erMarkers.js +var ERMarkers = { + ONLY_ONE_START: "ONLY_ONE_START", + ONLY_ONE_END: "ONLY_ONE_END", + ZERO_OR_ONE_START: "ZERO_OR_ONE_START", + ZERO_OR_ONE_END: "ZERO_OR_ONE_END", + ONE_OR_MORE_START: "ONE_OR_MORE_START", + ONE_OR_MORE_END: "ONE_OR_MORE_END", + ZERO_OR_MORE_START: "ZERO_OR_MORE_START", + ZERO_OR_MORE_END: "ZERO_OR_MORE_END", + MD_PARENT_END: "MD_PARENT_END", + MD_PARENT_START: "MD_PARENT_START" +}; +var insertMarkers = /* @__PURE__ */ (0,chunk_O2AGWWWV/* __name */.K2)(function(elem, conf2) { + let marker; + elem.append("defs").append("marker").attr("id", ERMarkers.MD_PARENT_START).attr("refX", 0).attr("refY", 7).attr("markerWidth", 190).attr("markerHeight", 240).attr("orient", "auto").append("path").attr("d", "M 18,7 L9,13 L1,7 L9,1 Z"); + elem.append("defs").append("marker").attr("id", ERMarkers.MD_PARENT_END).attr("refX", 19).attr("refY", 7).attr("markerWidth", 20).attr("markerHeight", 28).attr("orient", "auto").append("path").attr("d", "M 18,7 L9,13 L1,7 L9,1 Z"); + elem.append("defs").append("marker").attr("id", ERMarkers.ONLY_ONE_START).attr("refX", 0).attr("refY", 9).attr("markerWidth", 18).attr("markerHeight", 18).attr("orient", "auto").append("path").attr("stroke", conf2.stroke).attr("fill", "none").attr("d", "M9,0 L9,18 M15,0 L15,18"); + elem.append("defs").append("marker").attr("id", ERMarkers.ONLY_ONE_END).attr("refX", 18).attr("refY", 9).attr("markerWidth", 18).attr("markerHeight", 18).attr("orient", "auto").append("path").attr("stroke", conf2.stroke).attr("fill", "none").attr("d", "M3,0 L3,18 M9,0 L9,18"); + marker = elem.append("defs").append("marker").attr("id", ERMarkers.ZERO_OR_ONE_START).attr("refX", 0).attr("refY", 9).attr("markerWidth", 30).attr("markerHeight", 18).attr("orient", "auto"); + marker.append("circle").attr("stroke", conf2.stroke).attr("fill", "white").attr("cx", 21).attr("cy", 9).attr("r", 6); + marker.append("path").attr("stroke", conf2.stroke).attr("fill", "none").attr("d", "M9,0 L9,18"); + marker = elem.append("defs").append("marker").attr("id", ERMarkers.ZERO_OR_ONE_END).attr("refX", 30).attr("refY", 9).attr("markerWidth", 30).attr("markerHeight", 18).attr("orient", "auto"); + marker.append("circle").attr("stroke", conf2.stroke).attr("fill", "white").attr("cx", 9).attr("cy", 9).attr("r", 6); + marker.append("path").attr("stroke", conf2.stroke).attr("fill", "none").attr("d", "M21,0 L21,18"); + elem.append("defs").append("marker").attr("id", ERMarkers.ONE_OR_MORE_START).attr("refX", 18).attr("refY", 18).attr("markerWidth", 45).attr("markerHeight", 36).attr("orient", "auto").append("path").attr("stroke", conf2.stroke).attr("fill", "none").attr("d", "M0,18 Q 18,0 36,18 Q 18,36 0,18 M42,9 L42,27"); + elem.append("defs").append("marker").attr("id", ERMarkers.ONE_OR_MORE_END).attr("refX", 27).attr("refY", 18).attr("markerWidth", 45).attr("markerHeight", 36).attr("orient", "auto").append("path").attr("stroke", conf2.stroke).attr("fill", "none").attr("d", "M3,9 L3,27 M9,18 Q27,0 45,18 Q27,36 9,18"); + marker = elem.append("defs").append("marker").attr("id", ERMarkers.ZERO_OR_MORE_START).attr("refX", 18).attr("refY", 18).attr("markerWidth", 57).attr("markerHeight", 36).attr("orient", "auto"); + marker.append("circle").attr("stroke", conf2.stroke).attr("fill", "white").attr("cx", 48).attr("cy", 18).attr("r", 6); + marker.append("path").attr("stroke", conf2.stroke).attr("fill", "none").attr("d", "M0,18 Q18,0 36,18 Q18,36 0,18"); + marker = elem.append("defs").append("marker").attr("id", ERMarkers.ZERO_OR_MORE_END).attr("refX", 39).attr("refY", 18).attr("markerWidth", 57).attr("markerHeight", 36).attr("orient", "auto"); + marker.append("circle").attr("stroke", conf2.stroke).attr("fill", "white").attr("cx", 9).attr("cy", 18).attr("r", 6); + marker.append("path").attr("stroke", conf2.stroke).attr("fill", "none").attr("d", "M21,18 Q39,0 57,18 Q39,36 21,18"); + return; +}, "insertMarkers"); +var erMarkers_default = { + ERMarkers, + insertMarkers +}; + +// src/diagrams/er/erRenderer.js + +var BAD_ID_CHARS_REGEXP = /[^\dA-Za-z](\W)*/g; +var conf = {}; +var entityNameIds = /* @__PURE__ */ new Map(); +var setConf = /* @__PURE__ */ (0,chunk_O2AGWWWV/* __name */.K2)(function(cnf) { + const keys = Object.keys(cnf); + for (const key of keys) { + conf[key] = cnf[key]; + } +}, "setConf"); +var drawAttributes = /* @__PURE__ */ (0,chunk_O2AGWWWV/* __name */.K2)((groupNode, entityTextNode, attributes) => { + const heightPadding = conf.entityPadding / 3; + const widthPadding = conf.entityPadding / 3; + const attrFontSize = conf.fontSize * 0.85; + const labelBBox = entityTextNode.node().getBBox(); + const attributeNodes = []; + let hasKeyType = false; + let hasComment = false; + let maxTypeWidth = 0; + let maxNameWidth = 0; + let maxKeyWidth = 0; + let maxCommentWidth = 0; + let cumulativeHeight = labelBBox.height + heightPadding * 2; + let attrNum = 1; + attributes.forEach((item) => { + if (item.attributeKeyTypeList !== void 0 && item.attributeKeyTypeList.length > 0) { + hasKeyType = true; + } + if (item.attributeComment !== void 0) { + hasComment = true; + } + }); + attributes.forEach((item) => { + const attrPrefix = `${entityTextNode.node().id}-attr-${attrNum}`; + let nodeHeight = 0; + const attributeType = (0,chunk_O2AGWWWV/* parseGenericTypes */.QO)(item.attributeType); + const typeNode = groupNode.append("text").classed("er entityLabel", true).attr("id", `${attrPrefix}-type`).attr("x", 0).attr("y", 0).style("dominant-baseline", "middle").style("text-anchor", "left").style("font-family", (0,chunk_O2AGWWWV/* getConfig2 */.D7)().fontFamily).style("font-size", attrFontSize + "px").text(attributeType); + const nameNode = groupNode.append("text").classed("er entityLabel", true).attr("id", `${attrPrefix}-name`).attr("x", 0).attr("y", 0).style("dominant-baseline", "middle").style("text-anchor", "left").style("font-family", (0,chunk_O2AGWWWV/* getConfig2 */.D7)().fontFamily).style("font-size", attrFontSize + "px").text(item.attributeName); + const attributeNode = {}; + attributeNode.tn = typeNode; + attributeNode.nn = nameNode; + const typeBBox = typeNode.node().getBBox(); + const nameBBox = nameNode.node().getBBox(); + maxTypeWidth = Math.max(maxTypeWidth, typeBBox.width); + maxNameWidth = Math.max(maxNameWidth, nameBBox.width); + nodeHeight = Math.max(typeBBox.height, nameBBox.height); + if (hasKeyType) { + const keyTypeNodeText = item.attributeKeyTypeList !== void 0 ? item.attributeKeyTypeList.join(",") : ""; + const keyTypeNode = groupNode.append("text").classed("er entityLabel", true).attr("id", `${attrPrefix}-key`).attr("x", 0).attr("y", 0).style("dominant-baseline", "middle").style("text-anchor", "left").style("font-family", (0,chunk_O2AGWWWV/* getConfig2 */.D7)().fontFamily).style("font-size", attrFontSize + "px").text(keyTypeNodeText); + attributeNode.kn = keyTypeNode; + const keyTypeBBox = keyTypeNode.node().getBBox(); + maxKeyWidth = Math.max(maxKeyWidth, keyTypeBBox.width); + nodeHeight = Math.max(nodeHeight, keyTypeBBox.height); + } + if (hasComment) { + const commentNode = groupNode.append("text").classed("er entityLabel", true).attr("id", `${attrPrefix}-comment`).attr("x", 0).attr("y", 0).style("dominant-baseline", "middle").style("text-anchor", "left").style("font-family", (0,chunk_O2AGWWWV/* getConfig2 */.D7)().fontFamily).style("font-size", attrFontSize + "px").text(item.attributeComment || ""); + attributeNode.cn = commentNode; + const commentNodeBBox = commentNode.node().getBBox(); + maxCommentWidth = Math.max(maxCommentWidth, commentNodeBBox.width); + nodeHeight = Math.max(nodeHeight, commentNodeBBox.height); + } + attributeNode.height = nodeHeight; + attributeNodes.push(attributeNode); + cumulativeHeight += nodeHeight + heightPadding * 2; + attrNum += 1; + }); + let widthPaddingFactor = 4; + if (hasKeyType) { + widthPaddingFactor += 2; + } + if (hasComment) { + widthPaddingFactor += 2; + } + const maxWidth = maxTypeWidth + maxNameWidth + maxKeyWidth + maxCommentWidth; + const bBox = { + width: Math.max( + conf.minEntityWidth, + Math.max( + labelBBox.width + conf.entityPadding * 2, + maxWidth + widthPadding * widthPaddingFactor + ) + ), + height: attributes.length > 0 ? cumulativeHeight : Math.max(conf.minEntityHeight, labelBBox.height + conf.entityPadding * 2) + }; + if (attributes.length > 0) { + const spareColumnWidth = Math.max( + 0, + (bBox.width - maxWidth - widthPadding * widthPaddingFactor) / (widthPaddingFactor / 2) + ); + entityTextNode.attr( + "transform", + "translate(" + bBox.width / 2 + "," + (heightPadding + labelBBox.height / 2) + ")" + ); + let heightOffset = labelBBox.height + heightPadding * 2; + let attribStyle = "attributeBoxOdd"; + attributeNodes.forEach((attributeNode) => { + const alignY = heightOffset + heightPadding + attributeNode.height / 2; + attributeNode.tn.attr("transform", "translate(" + widthPadding + "," + alignY + ")"); + const typeRect = groupNode.insert("rect", "#" + attributeNode.tn.node().id).classed(`er ${attribStyle}`, true).attr("x", 0).attr("y", heightOffset).attr("width", maxTypeWidth + widthPadding * 2 + spareColumnWidth).attr("height", attributeNode.height + heightPadding * 2); + const nameXOffset = parseFloat(typeRect.attr("x")) + parseFloat(typeRect.attr("width")); + attributeNode.nn.attr( + "transform", + "translate(" + (nameXOffset + widthPadding) + "," + alignY + ")" + ); + const nameRect = groupNode.insert("rect", "#" + attributeNode.nn.node().id).classed(`er ${attribStyle}`, true).attr("x", nameXOffset).attr("y", heightOffset).attr("width", maxNameWidth + widthPadding * 2 + spareColumnWidth).attr("height", attributeNode.height + heightPadding * 2); + let keyTypeAndCommentXOffset = parseFloat(nameRect.attr("x")) + parseFloat(nameRect.attr("width")); + if (hasKeyType) { + attributeNode.kn.attr( + "transform", + "translate(" + (keyTypeAndCommentXOffset + widthPadding) + "," + alignY + ")" + ); + const keyTypeRect = groupNode.insert("rect", "#" + attributeNode.kn.node().id).classed(`er ${attribStyle}`, true).attr("x", keyTypeAndCommentXOffset).attr("y", heightOffset).attr("width", maxKeyWidth + widthPadding * 2 + spareColumnWidth).attr("height", attributeNode.height + heightPadding * 2); + keyTypeAndCommentXOffset = parseFloat(keyTypeRect.attr("x")) + parseFloat(keyTypeRect.attr("width")); + } + if (hasComment) { + attributeNode.cn.attr( + "transform", + "translate(" + (keyTypeAndCommentXOffset + widthPadding) + "," + alignY + ")" + ); + groupNode.insert("rect", "#" + attributeNode.cn.node().id).classed(`er ${attribStyle}`, "true").attr("x", keyTypeAndCommentXOffset).attr("y", heightOffset).attr("width", maxCommentWidth + widthPadding * 2 + spareColumnWidth).attr("height", attributeNode.height + heightPadding * 2); + } + heightOffset += attributeNode.height + heightPadding * 2; + attribStyle = attribStyle === "attributeBoxOdd" ? "attributeBoxEven" : "attributeBoxOdd"; + }); + } else { + bBox.height = Math.max(conf.minEntityHeight, cumulativeHeight); + entityTextNode.attr("transform", "translate(" + bBox.width / 2 + "," + bBox.height / 2 + ")"); + } + return bBox; +}, "drawAttributes"); +var drawEntities = /* @__PURE__ */ (0,chunk_O2AGWWWV/* __name */.K2)(function(svgNode, entities2, graph) { + const keys = [...entities2.keys()]; + let firstOne; + keys.forEach(function(entityName) { + const entityId = generateId(entityName, "entity"); + entityNameIds.set(entityName, entityId); + const groupNode = svgNode.append("g").attr("id", entityId); + firstOne = firstOne === void 0 ? entityId : firstOne; + const textId = "text-" + entityId; + const textNode = groupNode.append("text").classed("er entityLabel", true).attr("id", textId).attr("x", 0).attr("y", 0).style("dominant-baseline", "middle").style("text-anchor", "middle").style("font-family", (0,chunk_O2AGWWWV/* getConfig2 */.D7)().fontFamily).style("font-size", conf.fontSize + "px").text(entities2.get(entityName).alias ?? entityName); + const { width: entityWidth, height: entityHeight } = drawAttributes( + groupNode, + textNode, + entities2.get(entityName).attributes + ); + const rectNode = groupNode.insert("rect", "#" + textId).classed("er entityBox", true).attr("x", 0).attr("y", 0).attr("width", entityWidth).attr("height", entityHeight); + const rectBBox = rectNode.node().getBBox(); + graph.setNode(entityId, { + width: rectBBox.width, + height: rectBBox.height, + shape: "rect", + id: entityId + }); + }); + return firstOne; +}, "drawEntities"); +var adjustEntities = /* @__PURE__ */ (0,chunk_O2AGWWWV/* __name */.K2)(function(svgNode, graph) { + graph.nodes().forEach(function(v) { + if (v !== void 0 && graph.node(v) !== void 0) { + svgNode.select("#" + v).attr( + "transform", + "translate(" + (graph.node(v).x - graph.node(v).width / 2) + "," + (graph.node(v).y - graph.node(v).height / 2) + " )" + ); + } + }); +}, "adjustEntities"); +var getEdgeName = /* @__PURE__ */ (0,chunk_O2AGWWWV/* __name */.K2)(function(rel) { + return (rel.entityA + rel.roleA + rel.entityB).replace(/\s/g, ""); +}, "getEdgeName"); +var addRelationships = /* @__PURE__ */ (0,chunk_O2AGWWWV/* __name */.K2)(function(relationships2, g) { + relationships2.forEach(function(r) { + g.setEdge( + entityNameIds.get(r.entityA), + entityNameIds.get(r.entityB), + { relationship: r }, + getEdgeName(r) + ); + }); + return relationships2; +}, "addRelationships"); +var relCnt = 0; +var drawRelationshipFromLayout = /* @__PURE__ */ (0,chunk_O2AGWWWV/* __name */.K2)(function(svg, rel, g, insert, diagObj) { + relCnt++; + const edge = g.edge( + entityNameIds.get(rel.entityA), + entityNameIds.get(rel.entityB), + getEdgeName(rel) + ); + const lineFunction = (0,src/* line */.n8j)().x(function(d) { + return d.x; + }).y(function(d) { + return d.y; + }).curve(src/* curveBasis */.qrM); + const svgPath = svg.insert("path", "#" + insert).classed("er relationshipLine", true).attr("d", lineFunction(edge.points)).style("stroke", conf.stroke).style("fill", "none"); + if (rel.relSpec.relType === diagObj.db.Identification.NON_IDENTIFYING) { + svgPath.attr("stroke-dasharray", "8,8"); + } + let url = ""; + if (conf.arrowMarkerAbsolute) { + url = window.location.protocol + "//" + window.location.host + window.location.pathname + window.location.search; + url = url.replace(/\(/g, "\\("); + url = url.replace(/\)/g, "\\)"); + } + switch (rel.relSpec.cardA) { + case diagObj.db.Cardinality.ZERO_OR_ONE: + svgPath.attr("marker-end", "url(" + url + "#" + erMarkers_default.ERMarkers.ZERO_OR_ONE_END + ")"); + break; + case diagObj.db.Cardinality.ZERO_OR_MORE: + svgPath.attr("marker-end", "url(" + url + "#" + erMarkers_default.ERMarkers.ZERO_OR_MORE_END + ")"); + break; + case diagObj.db.Cardinality.ONE_OR_MORE: + svgPath.attr("marker-end", "url(" + url + "#" + erMarkers_default.ERMarkers.ONE_OR_MORE_END + ")"); + break; + case diagObj.db.Cardinality.ONLY_ONE: + svgPath.attr("marker-end", "url(" + url + "#" + erMarkers_default.ERMarkers.ONLY_ONE_END + ")"); + break; + case diagObj.db.Cardinality.MD_PARENT: + svgPath.attr("marker-end", "url(" + url + "#" + erMarkers_default.ERMarkers.MD_PARENT_END + ")"); + break; + } + switch (rel.relSpec.cardB) { + case diagObj.db.Cardinality.ZERO_OR_ONE: + svgPath.attr( + "marker-start", + "url(" + url + "#" + erMarkers_default.ERMarkers.ZERO_OR_ONE_START + ")" + ); + break; + case diagObj.db.Cardinality.ZERO_OR_MORE: + svgPath.attr( + "marker-start", + "url(" + url + "#" + erMarkers_default.ERMarkers.ZERO_OR_MORE_START + ")" + ); + break; + case diagObj.db.Cardinality.ONE_OR_MORE: + svgPath.attr( + "marker-start", + "url(" + url + "#" + erMarkers_default.ERMarkers.ONE_OR_MORE_START + ")" + ); + break; + case diagObj.db.Cardinality.ONLY_ONE: + svgPath.attr("marker-start", "url(" + url + "#" + erMarkers_default.ERMarkers.ONLY_ONE_START + ")"); + break; + case diagObj.db.Cardinality.MD_PARENT: + svgPath.attr("marker-start", "url(" + url + "#" + erMarkers_default.ERMarkers.MD_PARENT_START + ")"); + break; + } + const len = svgPath.node().getTotalLength(); + const labelPoint = svgPath.node().getPointAtLength(len * 0.5); + const labelId = "rel" + relCnt; + const labelNode = svg.append("text").classed("er relationshipLabel", true).attr("id", labelId).attr("x", labelPoint.x).attr("y", labelPoint.y).style("text-anchor", "middle").style("dominant-baseline", "middle").style("font-family", (0,chunk_O2AGWWWV/* getConfig2 */.D7)().fontFamily).style("font-size", conf.fontSize + "px").text(rel.roleA); + const labelBBox = labelNode.node().getBBox(); + svg.insert("rect", "#" + labelId).classed("er relationshipLabelBox", true).attr("x", labelPoint.x - labelBBox.width / 2).attr("y", labelPoint.y - labelBBox.height / 2).attr("width", labelBBox.width).attr("height", labelBBox.height); +}, "drawRelationshipFromLayout"); +var draw = /* @__PURE__ */ (0,chunk_O2AGWWWV/* __name */.K2)(function(text, id, _version, diagObj) { + conf = (0,chunk_O2AGWWWV/* getConfig2 */.D7)().er; + chunk_O2AGWWWV/* log */.Rm.info("Drawing ER diagram"); + const securityLevel = (0,chunk_O2AGWWWV/* getConfig2 */.D7)().securityLevel; + let sandboxElement; + if (securityLevel === "sandbox") { + sandboxElement = (0,src/* select */.Ltv)("#i" + id); + } + const root = securityLevel === "sandbox" ? (0,src/* select */.Ltv)(sandboxElement.nodes()[0].contentDocument.body) : (0,src/* select */.Ltv)("body"); + const svg = root.select(`[id='${id}']`); + erMarkers_default.insertMarkers(svg, conf); + let g; + g = new graphlib/* Graph */.T({ + multigraph: true, + directed: true, + compound: false + }).setGraph({ + rankdir: conf.layoutDirection, + marginx: 20, + marginy: 20, + nodesep: 100, + edgesep: 100, + ranksep: 100 + }).setDefaultEdgeLabel(function() { + return {}; + }); + const firstEntity = drawEntities(svg, diagObj.db.getEntities(), g); + const relationships2 = addRelationships(diagObj.db.getRelationships(), g); + (0,dagre/* layout */.Zp)(g); + adjustEntities(svg, g); + relationships2.forEach(function(rel) { + drawRelationshipFromLayout(svg, rel, g, firstEntity, diagObj); + }); + const padding = conf.diagramPadding; + chunk_VKXSJROQ/* utils_default */._K.insertTitle(svg, "entityTitleText", conf.titleTopMargin, diagObj.db.getDiagramTitle()); + const svgBounds = svg.node().getBBox(); + const width = svgBounds.width + padding * 2; + const height = svgBounds.height + padding * 2; + (0,chunk_O2AGWWWV/* configureSvgSize */.a$)(svg, height, width, conf.useMaxWidth); + svg.attr("viewBox", `${svgBounds.x - padding} ${svgBounds.y - padding} ${width} ${height}`); +}, "draw"); +var MERMAID_ERDIAGRAM_UUID = "28e9f9db-3c8d-5aa5-9faf-44286ae5937c"; +function generateId(str = "", prefix = "") { + const simplifiedStr = str.replace(BAD_ID_CHARS_REGEXP, ""); + return `${strWithHyphen(prefix)}${strWithHyphen(simplifiedStr)}${esm_node_v5( + str, + MERMAID_ERDIAGRAM_UUID + )}`; +} +(0,chunk_O2AGWWWV/* __name */.K2)(generateId, "generateId"); +function strWithHyphen(str = "") { + return str.length > 0 ? `${str}-` : ""; +} +(0,chunk_O2AGWWWV/* __name */.K2)(strWithHyphen, "strWithHyphen"); +var erRenderer_default = { + setConf, + draw +}; + +// src/diagrams/er/styles.js +var getStyles = /* @__PURE__ */ (0,chunk_O2AGWWWV/* __name */.K2)((options) => ` + .entityBox { + fill: ${options.mainBkg}; + stroke: ${options.nodeBorder}; + } + + .attributeBoxOdd { + fill: ${options.attributeBackgroundColorOdd}; + stroke: ${options.nodeBorder}; + } + + .attributeBoxEven { + fill: ${options.attributeBackgroundColorEven}; + stroke: ${options.nodeBorder}; + } + + .relationshipLabelBox { + fill: ${options.tertiaryColor}; + opacity: 0.7; + background-color: ${options.tertiaryColor}; + rect { + opacity: 0.5; + } + } + + .relationshipLine { + stroke: ${options.lineColor}; + } + + .entityTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${options.textColor}; + } + #MD_PARENT_START { + fill: #f5f5f5 !important; + stroke: ${options.lineColor} !important; + stroke-width: 1; + } + #MD_PARENT_END { + fill: #f5f5f5 !important; + stroke: ${options.lineColor} !important; + stroke-width: 1; + } + +`, "getStyles"); +var styles_default = getStyles; + +// src/diagrams/er/erDiagram.ts +var diagram = { + parser: erDiagram_default, + db: erDb_default, + renderer: erRenderer_default, + styles: styles_default +}; + + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/2627.b39a0a0c.js b/assets/js/2627.b39a0a0c.js new file mode 100644 index 00000000..eca22915 --- /dev/null +++ b/assets/js/2627.b39a0a0c.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkbeacon_docs=self.webpackChunkbeacon_docs||[]).push([[2627],{92627:(t,e,r)=>{r.d(e,{diagram:()=>lt});var i=r(57323),a=r(64994),n=r(20007),s=function(){var t=(0,a.K2)((function(t,e,r,i){for(r=r||{},i=t.length;i--;r[t[i]]=e);return r}),"o"),e=[1,3],r=[1,6],i=[1,4],n=[1,5],s=[2,5],c=[1,12],o=[5,7,13,19,21,23,24,26,28,31,36,39,48],l=[7,13,19,21,23,24,26,28,31,36,39],h=[7,12,13,19,21,23,24,26,28,31,36,39],m=[7,13,48],y=[1,42],u=[1,41],g=[1,49],p=[7,13,29,32,37,45,48],$=[1,57],d=[1,59],b=[1,60],f=[1,61],x=[7,13,32,41,45,48],k=[7,13,32,34,37,41,45,48],_={trace:(0,a.K2)((function(){}),"trace"),yy:{},symbols_:{error:2,start:3,eol:4,GG:5,document:6,EOF:7,":":8,DIR:9,options:10,body:11,OPT:12,NL:13,line:14,statement:15,commitStatement:16,mergeStatement:17,cherryPickStatement:18,acc_title:19,acc_title_value:20,acc_descr:21,acc_descr_value:22,acc_descr_multiline_value:23,section:24,branchStatement:25,CHECKOUT:26,ref:27,BRANCH:28,ORDER:29,NUM:30,CHERRY_PICK:31,COMMIT_ID:32,STR:33,PARENT_COMMIT:34,commitTags:35,MERGE:36,COMMIT_TYPE:37,commitType:38,COMMIT:39,commit_arg:40,COMMIT_MSG:41,NORMAL:42,REVERSE:43,HIGHLIGHT:44,COMMIT_TAG:45,EMPTYSTR:46,ID:47,";":48,$accept:0,$end:1},terminals_:{2:"error",5:"GG",7:"EOF",8:":",9:"DIR",12:"OPT",13:"NL",19:"acc_title",20:"acc_title_value",21:"acc_descr",22:"acc_descr_value",23:"acc_descr_multiline_value",24:"section",26:"CHECKOUT",28:"BRANCH",29:"ORDER",30:"NUM",31:"CHERRY_PICK",32:"COMMIT_ID",33:"STR",34:"PARENT_COMMIT",36:"MERGE",37:"COMMIT_TYPE",39:"COMMIT",41:"COMMIT_MSG",42:"NORMAL",43:"REVERSE",44:"HIGHLIGHT",45:"COMMIT_TAG",46:"EMPTYSTR",47:"ID",48:";"},productions_:[0,[3,2],[3,3],[3,4],[3,5],[6,0],[6,2],[10,2],[10,1],[11,0],[11,2],[14,2],[14,1],[15,1],[15,1],[15,1],[15,2],[15,2],[15,1],[15,1],[15,1],[15,2],[25,2],[25,4],[18,3],[18,5],[18,4],[18,6],[18,6],[18,4],[18,6],[17,2],[17,4],[17,4],[17,3],[17,5],[17,5],[17,5],[17,6],[17,5],[17,6],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[16,2],[16,2],[16,3],[16,4],[16,4],[16,3],[16,4],[16,4],[16,5],[16,5],[16,6],[16,6],[16,6],[16,6],[16,6],[16,6],[16,3],[16,4],[16,4],[16,5],[16,5],[16,5],[16,5],[16,6],[16,6],[16,6],[16,6],[16,6],[16,6],[16,7],[16,7],[16,7],[16,7],[16,7],[16,7],[16,6],[16,6],[16,6],[16,6],[16,6],[16,6],[16,8],[16,8],[16,8],[16,8],[16,8],[16,8],[16,8],[16,8],[16,8],[16,8],[16,8],[16,8],[16,8],[16,8],[16,8],[16,8],[16,8],[16,8],[16,8],[16,8],[16,8],[16,8],[16,8],[16,8],[40,0],[40,1],[38,1],[38,1],[38,1],[35,2],[35,2],[35,3],[35,3],[27,1],[27,1],[4,1],[4,1],[4,1]],performAction:(0,a.K2)((function(t,e,r,i,a,n,s){var c=n.length-1;switch(a){case 2:return n[c];case 3:return n[c-1];case 4:return i.setDirection(n[c-3]),n[c-1];case 6:i.setOptions(n[c-1]),this.$=n[c];break;case 7:n[c-1]+=n[c],this.$=n[c-1];break;case 9:this.$=[];break;case 10:n[c-1].push(n[c]),this.$=n[c-1];break;case 11:this.$=n[c-1];break;case 16:this.$=n[c].trim(),i.setAccTitle(this.$);break;case 17:case 18:this.$=n[c].trim(),i.setAccDescription(this.$);break;case 19:i.addSection(n[c].substr(8)),this.$=n[c].substr(8);break;case 21:i.checkout(n[c]);break;case 22:i.branch(n[c]);break;case 23:i.branch(n[c-2],n[c]);break;case 24:i.cherryPick(n[c],"",void 0);break;case 25:i.cherryPick(n[c-2],"",void 0,n[c]);break;case 26:i.cherryPick(n[c-1],"",n[c]);break;case 27:i.cherryPick(n[c-3],"",n[c],n[c-1]);break;case 28:i.cherryPick(n[c-3],"",n[c-2],n[c]);break;case 29:i.cherryPick(n[c],"",n[c-2]);break;case 30:i.cherryPick(n[c-2],"",n[c-4],n[c]);break;case 31:i.merge(n[c],"","",void 0);break;case 32:i.merge(n[c-2],n[c],"",void 0);break;case 33:i.merge(n[c-2],"",n[c],void 0);break;case 34:i.merge(n[c-1],"","",n[c]);break;case 35:i.merge(n[c-3],n[c],"",n[c-2]);break;case 36:i.merge(n[c-3],"",n[c],n[c-2]);break;case 37:i.merge(n[c-3],"",n[c-1],n[c]);break;case 38:i.merge(n[c-4],n[c-2],n[c],void 0);break;case 39:i.merge(n[c-3],n[c-1],"",n[c]);break;case 40:i.merge(n[c-4],n[c],n[c-2],void 0);break;case 41:i.merge(n[c-5],n[c-3],n[c-1],n[c]);break;case 42:i.merge(n[c-5],n[c],n[c-3],n[c-2]);break;case 43:i.merge(n[c-5],n[c-3],n[c],n[c-2]);break;case 44:i.merge(n[c-5],n[c-1],n[c-3],n[c]);break;case 45:i.merge(n[c-5],n[c],n[c-2],n[c-4]);break;case 46:i.merge(n[c-5],n[c-2],n[c],n[c-4]);break;case 47:i.commit(n[c]);break;case 48:i.commit("","",i.commitType.NORMAL,n[c]);break;case 49:i.commit("","",n[c],void 0);break;case 50:i.commit("","",n[c],n[c-2]);break;case 51:i.commit("","",n[c-1],n[c]);break;case 52:i.commit("",n[c],i.commitType.NORMAL,void 0);break;case 53:i.commit("",n[c-1],i.commitType.NORMAL,n[c]);break;case 54:i.commit("",n[c],i.commitType.NORMAL,n[c-2]);break;case 55:i.commit("",n[c-2],n[c],void 0);break;case 56:i.commit("",n[c],n[c-2],void 0);break;case 57:i.commit("",n[c-3],n[c-1],n[c]);break;case 58:i.commit("",n[c-3],n[c],n[c-2]);break;case 59:i.commit("",n[c-1],n[c-3],n[c]);break;case 60:i.commit("",n[c],n[c-3],n[c-2]);break;case 61:i.commit("",n[c],n[c-2],n[c-4]);break;case 62:i.commit("",n[c-2],n[c],n[c-4]);break;case 63:i.commit(n[c],"",i.commitType.NORMAL,void 0);break;case 64:i.commit(n[c],"",i.commitType.NORMAL,n[c-2]);break;case 65:i.commit(n[c-1],"",i.commitType.NORMAL,n[c]);break;case 66:i.commit(n[c-2],"",n[c],void 0);break;case 67:i.commit(n[c],"",n[c-2],void 0);break;case 68:i.commit(n[c],n[c-2],i.commitType.NORMAL,void 0);break;case 69:i.commit(n[c-2],n[c],i.commitType.NORMAL,void 0);break;case 70:i.commit(n[c-3],"",n[c-1],n[c]);break;case 71:i.commit(n[c-3],"",n[c],n[c-2]);break;case 72:i.commit(n[c-1],"",n[c-3],n[c]);break;case 73:i.commit(n[c],"",n[c-3],n[c-2]);break;case 74:i.commit(n[c],"",n[c-2],n[c-4]);break;case 75:i.commit(n[c-2],"",n[c],n[c-4]);break;case 76:i.commit(n[c-4],n[c],n[c-2],void 0);break;case 77:i.commit(n[c-4],n[c-2],n[c],void 0);break;case 78:i.commit(n[c-2],n[c],n[c-4],void 0);break;case 79:i.commit(n[c],n[c-2],n[c-4],void 0);break;case 80:i.commit(n[c],n[c-4],n[c-2],void 0);break;case 81:i.commit(n[c-2],n[c-4],n[c],void 0);break;case 82:i.commit(n[c-3],n[c],i.commitType.NORMAL,n[c-2]);break;case 83:i.commit(n[c-3],n[c-1],i.commitType.NORMAL,n[c]);break;case 84:i.commit(n[c-2],n[c],i.commitType.NORMAL,n[c-4]);break;case 85:i.commit(n[c],n[c-2],i.commitType.NORMAL,n[c-4]);break;case 86:i.commit(n[c],n[c-3],i.commitType.NORMAL,n[c-2]);break;case 87:i.commit(n[c-1],n[c-3],i.commitType.NORMAL,n[c]);break;case 88:i.commit(n[c-5],n[c-3],n[c-1],n[c]);break;case 89:i.commit(n[c-5],n[c-3],n[c],n[c-2]);break;case 90:i.commit(n[c-5],n[c-1],n[c-3],n[c]);break;case 91:i.commit(n[c-5],n[c],n[c-3],n[c-2]);break;case 92:i.commit(n[c-5],n[c-2],n[c],n[c-4]);break;case 93:i.commit(n[c-5],n[c],n[c-2],n[c-4]);break;case 94:i.commit(n[c-3],n[c-5],n[c-1],n[c]);break;case 95:i.commit(n[c-3],n[c-5],n[c],n[c-2]);break;case 96:i.commit(n[c-1],n[c-5],n[c-3],n[c]);break;case 97:i.commit(n[c],n[c-5],n[c-3],n[c-2]);break;case 98:i.commit(n[c-2],n[c-5],n[c],n[c-4]);break;case 99:i.commit(n[c],n[c-5],n[c-2],n[c-4]);break;case 100:i.commit(n[c],n[c-4],n[c-2],n[c-6]);break;case 101:i.commit(n[c-2],n[c-4],n[c],n[c-6]);break;case 102:i.commit(n[c],n[c-2],n[c-4],n[c-6]);break;case 103:i.commit(n[c-2],n[c],n[c-4],n[c-6]);break;case 104:i.commit(n[c-4],n[c-2],n[c],n[c-6]);break;case 105:i.commit(n[c-4],n[c],n[c-2],n[c-6]);break;case 106:i.commit(n[c-1],n[c-3],n[c-5],n[c]);break;case 107:i.commit(n[c],n[c-3],n[c-5],n[c-2]);break;case 108:i.commit(n[c-2],n[c],n[c-5],n[c-4]);break;case 109:i.commit(n[c],n[c-2],n[c-5],n[c-4]);break;case 110:i.commit(n[c-3],n[c-1],n[c-5],n[c]);break;case 111:i.commit(n[c-3],n[c],n[c-5],n[c-2]);break;case 112:this.$="";break;case 113:this.$=n[c];break;case 114:this.$=i.commitType.NORMAL;break;case 115:this.$=i.commitType.REVERSE;break;case 116:this.$=i.commitType.HIGHLIGHT;break;case 117:this.$=[n[c]];break;case 118:this.$=[""];break;case 119:n[c-2].push(n[c]),this.$=n[c-2];break;case 120:n[c-2].push(""),this.$=n[c-2]}}),"anonymous"),table:[{3:1,4:2,5:e,7:r,13:i,48:n},{1:[3]},{3:7,4:2,5:e,7:r,13:i,48:n},{6:8,7:s,8:[1,9],9:[1,10],10:11,13:c},t(o,[2,123]),t(o,[2,124]),t(o,[2,125]),{1:[2,1]},{7:[1,13]},{6:14,7:s,10:11,13:c},{8:[1,15]},t(l,[2,9],{11:16,12:[1,17]}),t(h,[2,8]),{1:[2,2]},{7:[1,18]},{6:19,7:s,10:11,13:c},{7:[2,6],13:[1,22],14:20,15:21,16:23,17:24,18:25,19:[1,26],21:[1,27],23:[1,28],24:[1,29],25:30,26:[1,31],28:[1,35],31:[1,34],36:[1,33],39:[1,32]},t(h,[2,7]),{1:[2,3]},{7:[1,36]},t(l,[2,10]),{4:37,7:r,13:i,48:n},t(l,[2,12]),t(m,[2,13]),t(m,[2,14]),t(m,[2,15]),{20:[1,38]},{22:[1,39]},t(m,[2,18]),t(m,[2,19]),t(m,[2,20]),{27:40,33:y,47:u},t(m,[2,112],{40:43,35:44,32:[1,46],33:[1,48],37:[1,45],41:[1,47],45:g}),{27:50,33:y,47:u},{32:[1,51],35:52,45:g},{27:53,33:y,47:u},{1:[2,4]},t(l,[2,11]),t(m,[2,16]),t(m,[2,17]),t(m,[2,21]),t(p,[2,121]),t(p,[2,122]),t(m,[2,47]),t(m,[2,48],{32:[1,55],37:[1,54],41:[1,56],45:$}),{38:58,42:d,43:b,44:f},{33:[1,62]},{33:[1,63]},t(m,[2,113]),{33:[1,64],46:[1,65]},t(m,[2,31],{35:68,32:[1,66],37:[1,67],45:g}),{33:[1,69]},{32:[1,70],45:$},t(m,[2,22],{29:[1,71]}),{38:72,42:d,43:b,44:f},{33:[1,73]},{33:[1,74]},{33:[1,75],46:[1,76]},t(m,[2,49],{35:77,32:[1,78],41:[1,79],45:g}),t(x,[2,114]),t(x,[2,115]),t(x,[2,116]),t(m,[2,52],{35:80,37:[1,81],41:[1,82],45:g}),t(m,[2,63],{35:83,32:[1,85],37:[1,84],45:g}),t(k,[2,117]),t(k,[2,118]),{33:[1,86]},{38:87,42:d,43:b,44:f},t(m,[2,34],{32:[1,88],37:[1,89],45:$}),t(m,[2,24],{35:91,34:[1,90],45:g}),{33:[1,92]},{30:[1,93]},t(m,[2,50],{32:[1,94],41:[1,95]}),t(m,[2,54],{37:[1,96],41:[1,97]}),t(m,[2,64],{32:[1,99],37:[1,98]}),t(k,[2,119]),t(k,[2,120]),t(m,[2,51],{32:[1,100],41:[1,101],45:$}),{33:[1,102]},{33:[1,103]},t(m,[2,53],{37:[1,104],41:[1,105],45:$}),{38:106,42:d,43:b,44:f},{33:[1,107]},t(m,[2,65],{32:[1,109],37:[1,108],45:$}),{38:110,42:d,43:b,44:f},{33:[1,111]},t(m,[2,32],{35:113,37:[1,112],45:g}),t(m,[2,33],{35:114,32:[1,115],45:g}),{33:[1,116]},{38:117,42:d,43:b,44:f},{33:[1,118]},t(m,[2,26],{34:[1,119],45:$}),t(m,[2,29],{34:[1,120]}),t(m,[2,23]),{33:[1,121]},{33:[1,122]},{38:123,42:d,43:b,44:f},{33:[1,124]},{38:125,42:d,43:b,44:f},{33:[1,126]},{33:[1,127]},{33:[1,128]},t(m,[2,56],{35:129,41:[1,130],45:g}),t(m,[2,67],{35:131,32:[1,132],45:g}),{38:133,42:d,43:b,44:f},{33:[1,134]},t(m,[2,55],{35:135,41:[1,136],45:g}),t(m,[2,68],{35:138,37:[1,137],45:g}),{38:139,42:d,43:b,44:f},{33:[1,140]},t(m,[2,66],{35:141,32:[1,142],45:g}),t(m,[2,69],{35:144,37:[1,143],45:g}),{38:145,42:d,43:b,44:f},t(m,[2,39],{37:[1,146],45:$}),t(m,[2,37],{32:[1,147],45:$}),{33:[1,148]},t(m,[2,35],{37:[1,149]}),t(m,[2,36],{32:[1,150]}),t(m,[2,25],{35:151,45:g}),{33:[1,152]},{33:[1,153]},t(m,[2,61],{41:[1,154]}),t(m,[2,74],{32:[1,155]}),t(m,[2,62],{41:[1,156]}),t(m,[2,85],{37:[1,157]}),t(m,[2,75],{32:[1,158]}),t(m,[2,84],{37:[1,159]}),t(m,[2,60],{41:[1,160]}),t(m,[2,73],{32:[1,161]}),t(m,[2,59],{41:[1,162],45:$}),{33:[1,163]},t(m,[2,72],{32:[1,164],45:$}),{33:[1,165]},t(m,[2,58],{41:[1,166]}),t(m,[2,86],{37:[1,167]}),t(m,[2,57],{41:[1,168],45:$}),{33:[1,169]},{38:170,42:d,43:b,44:f},t(m,[2,87],{37:[1,171],45:$}),t(m,[2,71],{32:[1,172]}),t(m,[2,82],{37:[1,173]}),t(m,[2,70],{32:[1,174],45:$}),{33:[1,175]},{38:176,42:d,43:b,44:f},t(m,[2,83],{37:[1,177],45:$}),t(m,[2,38],{35:178,45:g}),{38:179,42:d,43:b,44:f},{33:[1,180]},t(m,[2,40],{35:181,45:g}),{38:182,42:d,43:b,44:f},{33:[1,183]},t(m,[2,27],{45:$}),t(m,[2,28]),t(m,[2,30]),{33:[1,184]},{33:[1,185]},{33:[1,186]},{38:187,42:d,43:b,44:f},{33:[1,188]},{38:189,42:d,43:b,44:f},{33:[1,190]},{33:[1,191]},{33:[1,192]},t(m,[2,79],{35:193,45:g}),{33:[1,194]},t(m,[2,78],{35:195,45:g}),{33:[1,196]},{38:197,42:d,43:b,44:f},{33:[1,198]},t(m,[2,80],{35:199,45:g}),t(m,[2,81],{35:200,45:g}),{38:201,42:d,43:b,44:f},{33:[1,202]},{38:203,42:d,43:b,44:f},{33:[1,204]},t(m,[2,76],{35:205,45:g}),t(m,[2,77],{35:206,45:g}),{38:207,42:d,43:b,44:f},t(m,[2,41],{45:$}),t(m,[2,43]),t(m,[2,42]),t(m,[2,44],{45:$}),t(m,[2,46]),t(m,[2,45]),t(m,[2,102]),t(m,[2,103]),t(m,[2,100]),t(m,[2,101]),t(m,[2,105]),t(m,[2,104]),t(m,[2,109]),t(m,[2,108]),t(m,[2,107]),t(m,[2,106],{45:$}),t(m,[2,111]),t(m,[2,110],{45:$}),t(m,[2,99]),t(m,[2,98]),t(m,[2,97]),t(m,[2,96],{45:$}),t(m,[2,94],{45:$}),t(m,[2,95]),t(m,[2,93]),t(m,[2,92]),t(m,[2,91]),t(m,[2,90],{45:$}),t(m,[2,88],{45:$}),t(m,[2,89])],defaultActions:{7:[2,1],13:[2,2],18:[2,3],36:[2,4]},parseError:(0,a.K2)((function(t,e){if(!e.recoverable){var r=new Error(t);throw r.hash=e,r}this.trace(t)}),"parseError"),parse:(0,a.K2)((function(t){var e=this,r=[0],i=[],n=[null],s=[],c=this.table,o="",l=0,h=0,m=0,y=s.slice.call(arguments,1),u=Object.create(this.lexer),g={yy:{}};for(var p in this.yy)Object.prototype.hasOwnProperty.call(this.yy,p)&&(g.yy[p]=this.yy[p]);u.setInput(t,g.yy),g.yy.lexer=u,g.yy.parser=this,void 0===u.yylloc&&(u.yylloc={});var $=u.yylloc;s.push($);var d=u.options&&u.options.ranges;function b(){var t;return"number"!=typeof(t=i.pop()||u.lex()||1)&&(t instanceof Array&&(t=(i=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof g.yy.parseError?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,a.K2)((function(t){r.length=r.length-2*t,n.length=n.length-t,s.length=s.length-t}),"popStack"),(0,a.K2)(b,"lex");for(var f,x,k,_,T,w,L,v,M,E={};;){if(k=r[r.length-1],this.defaultActions[k]?_=this.defaultActions[k]:(null==f&&(f=b()),_=c[k]&&c[k][f]),void 0===_||!_.length||!_[0]){var R="";for(w in M=[],c[k])this.terminals_[w]&&w>2&&M.push("'"+this.terminals_[w]+"'");R=u.showPosition?"Parse error on line "+(l+1)+":\n"+u.showPosition()+"\nExpecting "+M.join(", ")+", got '"+(this.terminals_[f]||f)+"'":"Parse error on line "+(l+1)+": Unexpected "+(1==f?"end of input":"'"+(this.terminals_[f]||f)+"'"),this.parseError(R,{text:u.match,token:this.terminals_[f]||f,line:u.yylineno,loc:$,expected:M})}if(_[0]instanceof Array&&_.length>1)throw new Error("Parse Error: multiple actions possible at state: "+k+", token: "+f);switch(_[0]){case 1:r.push(f),n.push(u.yytext),s.push(u.yylloc),r.push(_[1]),f=null,x?(f=x,x=null):(h=u.yyleng,o=u.yytext,l=u.yylineno,$=u.yylloc,m>0&&m--);break;case 2:if(L=this.productions_[_[1]][1],E.$=n[n.length-L],E._$={first_line:s[s.length-(L||1)].first_line,last_line:s[s.length-1].last_line,first_column:s[s.length-(L||1)].first_column,last_column:s[s.length-1].last_column},d&&(E._$.range=[s[s.length-(L||1)].range[0],s[s.length-1].range[1]]),void 0!==(T=this.performAction.apply(E,[o,h,l,g.yy,_[1],n,s].concat(y))))return T;L&&(r=r.slice(0,-1*L*2),n=n.slice(0,-1*L),s=s.slice(0,-1*L)),r.push(this.productions_[_[1]][0]),n.push(E.$),s.push(E._$),v=c[r[r.length-2]][r[r.length-1]],r.push(v);break;case 3:return!0}}return!0}),"parse")},T=function(){return{EOF:1,parseError:(0,a.K2)((function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)}),"parseError"),setInput:(0,a.K2)((function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this}),"setInput"),input:(0,a.K2)((function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t}),"input"),unput:(0,a.K2)((function(t){var e=t.length,r=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var i=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),r.length-1&&(this.yylineno-=r.length-1);var a=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:r?(r.length===i.length?this.yylloc.first_column:0)+i[i.length-r.length].length-r[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[a[0],a[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this}),"unput"),more:(0,a.K2)((function(){return this._more=!0,this}),"more"),reject:(0,a.K2)((function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"reject"),less:(0,a.K2)((function(t){this.unput(this.match.slice(t))}),"less"),pastInput:(0,a.K2)((function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")}),"pastInput"),upcomingInput:(0,a.K2)((function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")}),"upcomingInput"),showPosition:(0,a.K2)((function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"}),"showPosition"),test_match:(0,a.K2)((function(t,e){var r,i,a;if(this.options.backtrack_lexer&&(a={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(a.yylloc.range=this.yylloc.range.slice(0))),(i=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=i.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:i?i[i.length-1].length-i[i.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],r=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),r)return r;if(this._backtrack){for(var n in a)this[n]=a[n];return!1}return!1}),"test_match"),next:(0,a.K2)((function(){if(this.done)return this.EOF;var t,e,r,i;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var a=this._currentRules(),n=0;ne[0].length)){if(e=r,i=n,this.options.backtrack_lexer){if(!1!==(t=this.test_match(r,a[n])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,a[i]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"next"),lex:(0,a.K2)((function(){var t=this.next();return t||this.lex()}),"lex"),begin:(0,a.K2)((function(t){this.conditionStack.push(t)}),"begin"),popState:(0,a.K2)((function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]}),"popState"),_currentRules:(0,a.K2)((function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules}),"_currentRules"),topState:(0,a.K2)((function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"}),"topState"),pushState:(0,a.K2)((function(t){this.begin(t)}),"pushState"),stateStackSize:(0,a.K2)((function(){return this.conditionStack.length}),"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,a.K2)((function(t,e,r,i){switch(r){case 0:return this.begin("acc_title"),19;case 1:return this.popState(),"acc_title_value";case 2:return this.begin("acc_descr"),21;case 3:return this.popState(),"acc_descr_value";case 4:this.begin("acc_descr_multiline");break;case 5:case 31:case 35:this.popState();break;case 6:return"acc_descr_multiline_value";case 7:return 13;case 8:case 9:case 40:break;case 10:return 5;case 11:return 39;case 12:return 32;case 13:return 37;case 14:return 41;case 15:return 42;case 16:return 43;case 17:return 44;case 18:return 45;case 19:return 28;case 20:return 29;case 21:return 36;case 22:return 31;case 23:return 34;case 24:return 26;case 25:case 26:case 27:return 9;case 28:return 8;case 29:return"CARET";case 30:this.begin("options");break;case 32:return 12;case 33:return 46;case 34:this.begin("string");break;case 36:return 33;case 37:return 30;case 38:return 47;case 39:return 7}}),"anonymous"),rules:[/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:(\r?\n)+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:gitGraph\b)/i,/^(?:commit(?=\s|$))/i,/^(?:id:)/i,/^(?:type:)/i,/^(?:msg:)/i,/^(?:NORMAL\b)/i,/^(?:REVERSE\b)/i,/^(?:HIGHLIGHT\b)/i,/^(?:tag:)/i,/^(?:branch(?=\s|$))/i,/^(?:order:)/i,/^(?:merge(?=\s|$))/i,/^(?:cherry-pick(?=\s|$))/i,/^(?:parent:)/i,/^(?:\b(checkout|switch)(?=\s|$))/i,/^(?:LR\b)/i,/^(?:TB\b)/i,/^(?:BT\b)/i,/^(?::)/i,/^(?:\^)/i,/^(?:options\r?\n)/i,/^(?:[ \r\n\t]+end\b)/i,/^(?:[\s\S]+(?=[ \r\n\t]+end))/i,/^(?:["]["])/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[0-9]+(?=\s|$))/i,/^(?:\w([-\./\w]*[-\w])?)/i,/^(?:$)/i,/^(?:\s+)/i],conditions:{acc_descr_multiline:{rules:[5,6],inclusive:!1},acc_descr:{rules:[3],inclusive:!1},acc_title:{rules:[1],inclusive:!1},options:{rules:[31,32],inclusive:!1},string:{rules:[35,36],inclusive:!1},INITIAL:{rules:[0,2,4,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,33,34,37,38,39,40],inclusive:!0}}}}();function w(){this.yy={}}return _.lexer=T,(0,a.K2)(w,"Parser"),w.prototype=_,_.Parser=w,new w}();s.parser=s;var c=s,{mainBranchName:o,mainBranchOrder:l}=(0,a.D7)().gitGraph,h=new Map,m=null,y=new Map;y.set(o,{name:o,order:l});var u=new Map;u.set(o,m);var g=o,p="LR",$=0;function d(){return(0,i.yT)({length:7})}function b(t,e){const r=Object.create(null);return t.reduce(((t,i)=>{const a=e(i);return r[a]||(r[a]=!0,t.push(i)),t}),[])}(0,a.K2)(d,"getId"),(0,a.K2)(b,"uniqBy");var f=(0,a.K2)((function(t){p=t}),"setDirection"),x={},k=(0,a.K2)((function(t){a.Rm.debug("options str",t),t=t?.trim(),t=t||"{}";try{x=JSON.parse(t)}catch(e){a.Rm.error("error while parsing gitGraph options",e.message)}}),"setOptions"),_=(0,a.K2)((function(){return x}),"getOptions"),T=(0,a.K2)((function(t,e,r,i){a.Rm.debug("Entering commit:",t,e,r,i);const n=(0,a.D7)();e=a.Y2.sanitizeText(e,n),t=a.Y2.sanitizeText(t,n),i=i?.map((t=>a.Y2.sanitizeText(t,n)));const s={id:e||$+"-"+d(),message:t,seq:$++,type:r||D.NORMAL,tags:i??[],parents:null==m?[]:[m.id],branch:g};m=s,h.set(s.id,s),u.set(g,s.id),a.Rm.debug("in pushCommit "+s.id)}),"commit"),w=(0,a.K2)((function(t,e){if(t=a.Y2.sanitizeText(t,(0,a.D7)()),u.has(t)){let e=new Error('Trying to create an existing branch. (Help: Either use a new name if you want create a new branch or try using "checkout '+t+'")');throw e.hash={text:"branch "+t,token:"branch "+t,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:['"checkout '+t+'"']},e}u.set(t,null!=m?m.id:null),y.set(t,{name:t,order:e?parseInt(e,10):null}),M(t),a.Rm.debug("in createBranch")}),"branch"),L=(0,a.K2)((function(t,e,r,i){const n=(0,a.D7)();t=a.Y2.sanitizeText(t,n),e=a.Y2.sanitizeText(e,n);const s=h.get(u.get(g)),c=h.get(u.get(t));if(g===t){let e=new Error('Incorrect usage of "merge". Cannot merge a branch to itself');throw e.hash={text:"merge "+t,token:"merge "+t,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["branch abc"]},e}if(void 0===s||!s){let e=new Error('Incorrect usage of "merge". Current branch ('+g+")has no commits");throw e.hash={text:"merge "+t,token:"merge "+t,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["commit"]},e}if(!u.has(t)){let e=new Error('Incorrect usage of "merge". Branch to be merged ('+t+") does not exist");throw e.hash={text:"merge "+t,token:"merge "+t,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["branch "+t]},e}if(void 0===c||!c){let e=new Error('Incorrect usage of "merge". Branch to be merged ('+t+") has no commits");throw e.hash={text:"merge "+t,token:"merge "+t,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:['"commit"']},e}if(s===c){let e=new Error('Incorrect usage of "merge". Both branches have same head');throw e.hash={text:"merge "+t,token:"merge "+t,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["branch abc"]},e}if(e&&h.has(e)){let a=new Error('Incorrect usage of "merge". Commit with id:'+e+" already exists, use different custom Id");throw a.hash={text:"merge "+t+e+r+i?.join(","),token:"merge "+t+e+r+i?.join(","),line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:[`merge ${t} ${e}_UNIQUE ${r} ${i?.join(",")}`]},a}const o={id:e||$+"-"+d(),message:"merged branch "+t+" into "+g,seq:$++,parents:[null==m?null:m.id,u.get(t)],branch:g,type:D.MERGE,customType:r,customId:!!e,tags:i||[]};m=o,h.set(o.id,o),u.set(g,o.id),a.Rm.debug(u),a.Rm.debug("in mergeBranch")}),"merge"),v=(0,a.K2)((function(t,e,r,i){a.Rm.debug("Entering cherryPick:",t,e,r);const n=(0,a.D7)();if(t=a.Y2.sanitizeText(t,n),e=a.Y2.sanitizeText(e,n),r=r?.map((t=>a.Y2.sanitizeText(t,n))),i=a.Y2.sanitizeText(i,n),!t||!h.has(t)){let r=new Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');throw r.hash={text:"cherryPick "+t+" "+e,token:"cherryPick "+t+" "+e,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["cherry-pick abc"]},r}let s=h.get(t),c=s.branch;if(i&&(!Array.isArray(s.parents)||!s.parents.includes(i))){throw new Error("Invalid operation: The specified parent commit is not an immediate parent of the cherry-picked commit.")}if(s.type===D.MERGE&&!i){throw new Error("Incorrect usage of cherry-pick: If the source commit is a merge commit, an immediate parent commit must be specified.")}if(!e||!h.has(e)){if(c===g){let r=new Error('Incorrect usage of "cherryPick". Source commit is already on current branch');throw r.hash={text:"cherryPick "+t+" "+e,token:"cherryPick "+t+" "+e,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["cherry-pick abc"]},r}const n=h.get(u.get(g));if(void 0===n||!n){let r=new Error('Incorrect usage of "cherry-pick". Current branch ('+g+")has no commits");throw r.hash={text:"cherryPick "+t+" "+e,token:"cherryPick "+t+" "+e,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["cherry-pick abc"]},r}const o={id:$+"-"+d(),message:"cherry-picked "+s+" into "+g,seq:$++,parents:[null==m?null:m.id,s.id],branch:g,type:D.CHERRY_PICK,tags:r?r.filter(Boolean):[`cherry-pick:${s.id}${s.type===D.MERGE?`|parent:${i}`:""}`]};m=o,h.set(o.id,o),u.set(g,o.id),a.Rm.debug(u),a.Rm.debug("in cherryPick")}}),"cherryPick"),M=(0,a.K2)((function(t){if(t=a.Y2.sanitizeText(t,(0,a.D7)()),!u.has(t)){let e=new Error('Trying to checkout branch which is not yet created. (Help try using "branch '+t+'")');throw e.hash={text:"checkout "+t,token:"checkout "+t,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:['"branch '+t+'"']},e}{g=t;const e=u.get(g);m=h.get(e)}}),"checkout");function E(t,e,r){const i=t.indexOf(e);-1===i?t.push(r):t.splice(i,1,r)}function R(t){const e=t.reduce(((t,e)=>t.seq>e.seq?t:e),t[0]);let r="";t.forEach((function(t){r+=t===e?"\t*":"\t|"}));const i=[r,e.id,e.seq];for(let a in u)u.get(a)===e.id&&i.push(a);if(a.Rm.debug(i.join(" ")),e.parents&&2==e.parents.length){const r=h.get(e.parents[0]);E(t,e,r),t.push(h.get(e.parents[1]))}else{if(0==e.parents.length)return;{const r=h.get(e.parents);E(t,e,r)}}R(t=b(t,(t=>t.id)))}(0,a.K2)(E,"upsert"),(0,a.K2)(R,"prettyPrintCommitHistory");var B=(0,a.K2)((function(){a.Rm.debug(h);R([O()[0]])}),"prettyPrint"),A=(0,a.K2)((function(){h=new Map,m=null;const{mainBranchName:t,mainBranchOrder:e}=(0,a.D7)().gitGraph;(u=new Map).set(t,null),(y=new Map).set(t,{name:t,order:e}),g=t,$=0,(0,a.IU)()}),"clear"),I=(0,a.K2)((function(){return[...y.values()].map(((t,e)=>null!==t.order?t:{...t,order:parseFloat(`0.${e}`,10)})).sort(((t,e)=>t.order-e.order)).map((({name:t})=>({name:t})))}),"getBranchesAsObjArray"),K=(0,a.K2)((function(){return u}),"getBranches"),C=(0,a.K2)((function(){return h}),"getCommits"),O=(0,a.K2)((function(){const t=[...h.values()];return t.forEach((function(t){a.Rm.debug(t.id)})),t.sort(((t,e)=>t.seq-e.seq)),t}),"getCommitsArray"),S=(0,a.K2)((function(){return g}),"getCurrentBranch"),P=(0,a.K2)((function(){return p}),"getDirection"),N=(0,a.K2)((function(){return m}),"getHead"),D={NORMAL:0,REVERSE:1,HIGHLIGHT:2,MERGE:3,CHERRY_PICK:4},G={getConfig:(0,a.K2)((()=>(0,a.D7)().gitGraph),"getConfig"),setDirection:f,setOptions:k,getOptions:_,commit:T,branch:w,merge:L,cherryPick:v,checkout:M,prettyPrint:B,clear:A,getBranchesAsObjArray:I,getBranches:K,getCommits:C,getCommitsArray:O,getCurrentBranch:S,getDirection:P,getHead:N,setAccTitle:a.SV,getAccTitle:a.iN,getAccDescription:a.m7,setAccDescription:a.EI,setDiagramTitle:a.ke,getDiagramTitle:a.ab,commitType:D},H=new Map,z=0,Y=1,j=2,q=3,F=4,U={},V={},W=[],J=0,Q="LR",X=(0,a.K2)((()=>{U=new Map,V=new Map,H=new Map,J=0,W=[],Q="LR"}),"clear"),Z=(0,a.K2)((t=>{const e=document.createElementNS("http://www.w3.org/2000/svg","text");let r=[];r="string"==typeof t?t.split(/\\n|\n|/gi):Array.isArray(t)?t:[];for(const i of r){const t=document.createElementNS("http://www.w3.org/2000/svg","tspan");t.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),t.setAttribute("dy","1em"),t.setAttribute("x","0"),t.setAttribute("class","row"),t.textContent=i.trim(),e.appendChild(t)}return e}),"drawText"),tt=(0,a.K2)((t=>{let e="",r=0;return t.forEach((t=>{const i="TB"===Q||"BT"===Q?V.get(t).y:V.get(t).x;i>=r&&(e=t,r=i)})),e||void 0}),"findClosestParent"),et=(0,a.K2)((t=>{let e="",r=1/0;return t.forEach((t=>{const i=V.get(t).y;i<=r&&(e=t,r=i)})),e||void 0}),"findClosestParentBT"),rt=(0,a.K2)(((t,e,r,i,a)=>{let n=r,s=r,c=[];t.forEach((t=>{const r=e.get(t);if(r.parents.length){const t=tt(r.parents);n=V.get(t).y+i,n>=s&&(s=n)}else c.push(r);const o=U.get(r.branch).pos,l=n+a;V.set(r.id,{x:o,y:l})})),n=s,c.forEach((t=>{const e=n+r,i=U.get(t.branch).pos;V.set(t.id,{x:i,y:e})})),t.forEach((t=>{const r=e.get(t);if(r.parents.length){const t=et(r.parents);n=V.get(t).y-i,n<=s&&(s=n);const e=U.get(r.branch).pos,c=n-a;V.set(r.id,{x:e,y:c})}}))}),"setParallelBTPos"),it=(0,a.K2)(((t,e,r)=>{const i=(0,a.D7)().gitGraph,n=t.append("g").attr("class","commit-bullets"),s=t.append("g").attr("class","commit-labels");let c=0;"TB"!==Q&&"BT"!==Q||(c=30);const o=[...e.keys()],l=i.parallelCommits,h=10,m=40;let y="BT"!==Q||"BT"===Q&&l?o.sort(((t,r)=>e.get(t).seq-e.get(r).seq)):o.sort(((t,r)=>e.get(t).seq-e.get(r).seq)).reverse();"BT"===Q&&l&&(rt(y,e,c,m,h),y=y.reverse()),y.forEach((t=>{const a=e.get(t);if(l)if(a.parents.length){const e="BT"===Q?et(a.parents):tt(a.parents);c="TB"===Q?V.get(e).y+m:"BT"===Q?V.get(t).y-m:V.get(e).x+m}else c="TB"===Q?30:"BT"===Q?V.get(t).y-m:0;const o="BT"===Q&&l?c:c+h,y="TB"===Q||"BT"===Q?o:U.get(a.branch).pos,u="TB"===Q||"BT"===Q?U.get(a.branch).pos:o;if(r){let t,e=void 0!==a.customType&&""!==a.customType?a.customType:a.type;switch(e){case z:t="commit-normal";break;case Y:t="commit-reverse";break;case j:t="commit-highlight";break;case q:t="commit-merge";break;case F:t="commit-cherry-pick";break;default:t="commit-normal"}if(e===j){const e=n.append("rect");e.attr("x",u-10),e.attr("y",y-10),e.attr("height",20),e.attr("width",20),e.attr("class",`commit ${a.id} commit-highlight${U.get(a.branch).index%8} ${t}-outer`),n.append("rect").attr("x",u-6).attr("y",y-6).attr("height",12).attr("width",12).attr("class",`commit ${a.id} commit${U.get(a.branch).index%8} ${t}-inner`)}else if(e===F)n.append("circle").attr("cx",u).attr("cy",y).attr("r",10).attr("class",`commit ${a.id} ${t}`),n.append("circle").attr("cx",u-3).attr("cy",y+2).attr("r",2.75).attr("fill","#fff").attr("class",`commit ${a.id} ${t}`),n.append("circle").attr("cx",u+3).attr("cy",y+2).attr("r",2.75).attr("fill","#fff").attr("class",`commit ${a.id} ${t}`),n.append("line").attr("x1",u+3).attr("y1",y+1).attr("x2",u).attr("y2",y-5).attr("stroke","#fff").attr("class",`commit ${a.id} ${t}`),n.append("line").attr("x1",u-3).attr("y1",y+1).attr("x2",u).attr("y2",y-5).attr("stroke","#fff").attr("class",`commit ${a.id} ${t}`);else{const r=n.append("circle");if(r.attr("cx",u),r.attr("cy",y),r.attr("r",a.type===q?9:10),r.attr("class",`commit ${a.id} commit${U.get(a.branch).index%8}`),e===q){const e=n.append("circle");e.attr("cx",u),e.attr("cy",y),e.attr("r",6),e.attr("class",`commit ${t} ${a.id} commit${U.get(a.branch).index%8}`)}if(e===Y){n.append("path").attr("d",`M ${u-5},${y-5}L${u+5},${y+5}M${u-5},${y+5}L${u+5},${y-5}`).attr("class",`commit ${t} ${a.id} commit${U.get(a.branch).index%8}`)}}}if("TB"===Q||"BT"===Q?V.set(a.id,{x:u,y:o}):V.set(a.id,{x:o,y:y}),r){const t=4,e=2;if(a.type!==F&&(a.customId&&a.type===q||a.type!==q)&&i.showCommitLabel){const r=s.append("g"),n=r.insert("rect").attr("class","commit-label-bkg"),l=r.append("text").attr("x",c).attr("y",y+25).attr("class","commit-label").text(a.id);let h=l.node().getBBox();if(n.attr("x",o-h.width/2-e).attr("y",y+13.5).attr("width",h.width+2*e).attr("height",h.height+2*e),"TB"===Q||"BT"===Q?(n.attr("x",u-(h.width+4*t+5)).attr("y",y-12),l.attr("x",u-(h.width+4*t)).attr("y",y+h.height-12)):l.attr("x",o-h.width/2),i.rotateCommitLabel)if("TB"===Q||"BT"===Q)l.attr("transform","rotate(-45, "+u+", "+y+")"),n.attr("transform","rotate(-45, "+u+", "+y+")");else{let t=-7.5-(h.width+10)/25*9.5,e=10+h.width/25*8.5;r.attr("transform","translate("+t+", "+e+") rotate(-45, "+c+", "+y+")")}}if(a.tags.length>0){let r=0,i=0,n=0;const l=[];for(const t of a.tags.reverse()){const e=s.insert("polygon"),a=s.append("circle"),c=s.append("text").attr("y",y-16-r).attr("class","tag-label").text(t);let h=c.node().getBBox();i=Math.max(i,h.width),n=Math.max(n,h.height),c.attr("x",o-h.width/2),l.push({tag:c,hole:a,rect:e,yOffset:r}),r+=20}for(const{tag:a,hole:s,rect:m,yOffset:g}of l){const r=n/2,l=y-19.2-g;if(m.attr("class","tag-label-bkg").attr("points",`\n ${c-i/2-t/2},${l+e}\n ${c-i/2-t/2},${l-e}\n ${o-i/2-t},${l-r-e}\n ${o+i/2+t},${l-r-e}\n ${o+i/2+t},${l+r+e}\n ${o-i/2-t},${l+r+e}`),s.attr("cy",l).attr("cx",c-i/2+t/2).attr("r",1.5).attr("class","tag-hole"),"TB"===Q||"BT"===Q){const n=c+g;m.attr("class","tag-label-bkg").attr("points",`\n ${u},${n+e}\n ${u},${n-e}\n ${u+h},${n-r-e}\n ${u+h+i+t},${n-r-e}\n ${u+h+i+t},${n+r+e}\n ${u+h},${n+r+e}`).attr("transform","translate(12,12) rotate(45, "+u+","+c+")"),s.attr("cx",u+t/2).attr("cy",n).attr("transform","translate(12,12) rotate(45, "+u+","+c+")"),a.attr("x",u+5).attr("y",n+3).attr("transform","translate(14,14) rotate(45, "+u+","+c+")")}}}}c="BT"===Q&&l?c+m:c+m+h,c>J&&(J=c)}))}),"drawCommits"),at=(0,a.K2)(((t,e,r,i,n)=>{const s=("TB"===Q||"BT"===Q?r.xt.branch===s),"isOnBranchToGetCurve"),o=(0,a.K2)((r=>r.seq>t.seq&&r.seqo(t)&&c(t)))}),"shouldRerouteArrow"),nt=(0,a.K2)(((t,e,r=0)=>{const i=t+Math.abs(t-e)/2;if(r>5)return i;if(W.every((t=>Math.abs(t-i)>=10)))return W.push(i),i;const a=Math.abs(t-e);return nt(t,e-a/5,r+1)}),"findLane"),st=(0,a.K2)(((t,e,r,i)=>{const a=V.get(e.id),n=V.get(r.id),s=at(e,r,a,n,i);let c,o="",l="",h=0,m=0,y=U.get(r.branch).index;if(r.type===q&&e.id!==r.parents[0]&&(y=U.get(e.branch).index),s){o="A 10 10, 0, 0, 0,",l="A 10 10, 0, 0, 1,",h=10,m=10;const t=a.yn.x&&(o="A 20 20, 0, 0, 0,",l="A 20 20, 0, 0, 1,",h=20,m=20,c=r.type===q&&e.id!==r.parents[0]?`M ${a.x} ${a.y} L ${a.x} ${n.y-h} ${l} ${a.x-m} ${n.y} L ${n.x} ${n.y}`:`M ${a.x} ${a.y} L ${n.x+h} ${a.y} ${o} ${n.x} ${a.y+m} L ${n.x} ${n.y}`),a.x===n.x&&(c=`M ${a.x} ${a.y} L ${n.x} ${n.y}`)):"BT"===Q?(a.xn.x&&(o="A 20 20, 0, 0, 0,",l="A 20 20, 0, 0, 1,",h=20,m=20,c=r.type===q&&e.id!==r.parents[0]?`M ${a.x} ${a.y} L ${a.x} ${n.y+h} ${o} ${a.x-m} ${n.y} L ${n.x} ${n.y}`:`M ${a.x} ${a.y} L ${n.x-h} ${a.y} ${o} ${n.x} ${a.y-m} L ${n.x} ${n.y}`),a.x===n.x&&(c=`M ${a.x} ${a.y} L ${n.x} ${n.y}`)):(a.yn.y&&(c=r.type===q&&e.id!==r.parents[0]?`M ${a.x} ${a.y} L ${n.x-h} ${a.y} ${o} ${n.x} ${a.y-m} L ${n.x} ${n.y}`:`M ${a.x} ${a.y} L ${a.x} ${n.y+h} ${l} ${a.x+m} ${n.y} L ${n.x} ${n.y}`),a.y===n.y&&(c=`M ${a.x} ${a.y} L ${n.x} ${n.y}`));t.append("path").attr("d",c).attr("class","arrow arrow"+y%8)}),"drawArrow"),ct=(0,a.K2)(((t,e)=>{const r=t.append("g").attr("class","commit-arrows");[...e.keys()].forEach((t=>{const i=e.get(t);i.parents&&i.parents.length>0&&i.parents.forEach((t=>{st(r,e.get(t),i,e)}))}))}),"drawArrows"),ot=(0,a.K2)(((t,e)=>{const r=(0,a.D7)().gitGraph,i=t.append("g");e.forEach(((t,e)=>{const a=e%8,n=U.get(t.name).pos,s=i.append("line");s.attr("x1",0),s.attr("y1",n),s.attr("x2",J),s.attr("y2",n),s.attr("class","branch branch"+a),"TB"===Q?(s.attr("y1",30),s.attr("x1",n),s.attr("y2",J),s.attr("x2",n)):"BT"===Q&&(s.attr("y1",J),s.attr("x1",n),s.attr("y2",30),s.attr("x2",n)),W.push(n);let c=t.name;const o=Z(c),l=i.insert("rect"),h=i.insert("g").attr("class","branchLabel").insert("g").attr("class","label branch-label"+a);h.node().appendChild(o);let m=o.getBBox();l.attr("class","branchLabelBkg label"+a).attr("rx",4).attr("ry",4).attr("x",-m.width-4-(!0===r.rotateCommitLabel?30:0)).attr("y",-m.height/2+8).attr("width",m.width+18).attr("height",m.height+4),h.attr("transform","translate("+(-m.width-14-(!0===r.rotateCommitLabel?30:0))+", "+(n-m.height/2-1)+")"),"TB"===Q?(l.attr("x",n-m.width/2-10).attr("y",0),h.attr("transform","translate("+(n-m.width/2-5)+", 0)")):"BT"===Q?(l.attr("x",n-m.width/2-10).attr("y",J),h.attr("transform","translate("+(n-m.width/2-5)+", "+J+")")):l.attr("transform","translate(-19, "+(n-m.height/2)+")")}))}),"drawBranches"),lt={parser:c,db:G,renderer:{draw:(0,a.K2)((function(t,e,r,s){X();const c=(0,a.D7)(),o=c.gitGraph;a.Rm.debug("in gitgraph renderer",t+"\n","id:",e,r),H=s.db.getCommits();const l=s.db.getBranchesAsObjArray();Q=s.db.getDirection();const h=(0,n.Ltv)(`[id="${e}"]`);let m=0;l.forEach(((t,e)=>{const r=Z(t.name),i=h.append("g"),a=i.insert("g").attr("class","branchLabel"),n=a.insert("g").attr("class","label branch-label");n.node().appendChild(r);let s=r.getBBox();U.set(t.name,{pos:m,index:e}),m+=50+(o.rotateCommitLabel?40:0)+("TB"===Q||"BT"===Q?s.width/2:0),n.remove(),a.remove(),i.remove()})),it(h,H,!1),o.showBranches&&ot(h,l),ct(h,H),it(h,H,!0),i._K.insertTitle(h,"gitTitleText",o.titleTopMargin,s.db.getDiagramTitle()),(0,a.mj)(void 0,h,o.diagramPadding,o.useMaxWidth??c.useMaxWidth)}),"draw")},styles:(0,a.K2)((t=>`\n .commit-id,\n .commit-msg,\n .branch-label {\n fill: lightgrey;\n color: lightgrey;\n font-family: 'trebuchet ms', verdana, arial, sans-serif;\n font-family: var(--mermaid-font-family);\n }\n ${[0,1,2,3,4,5,6,7].map((e=>`\n .branch-label${e} { fill: ${t["gitBranchLabel"+e]}; }\n .commit${e} { stroke: ${t["git"+e]}; fill: ${t["git"+e]}; }\n .commit-highlight${e} { stroke: ${t["gitInv"+e]}; fill: ${t["gitInv"+e]}; }\n .label${e} { fill: ${t["git"+e]}; }\n .arrow${e} { stroke: ${t["git"+e]}; }\n `)).join("\n")}\n\n .branch {\n stroke-width: 1;\n stroke: ${t.lineColor};\n stroke-dasharray: 2;\n }\n .commit-label { font-size: ${t.commitLabelFontSize}; fill: ${t.commitLabelColor};}\n .commit-label-bkg { font-size: ${t.commitLabelFontSize}; fill: ${t.commitLabelBackground}; opacity: 0.5; }\n .tag-label { font-size: ${t.tagLabelFontSize}; fill: ${t.tagLabelColor};}\n .tag-label-bkg { fill: ${t.tagLabelBackground}; stroke: ${t.tagLabelBorder}; }\n .tag-hole { fill: ${t.textColor}; }\n\n .commit-merge {\n stroke: ${t.primaryColor};\n fill: ${t.primaryColor};\n }\n .commit-reverse {\n stroke: ${t.primaryColor};\n fill: ${t.primaryColor};\n stroke-width: 3;\n }\n .commit-highlight-outer {\n }\n .commit-highlight-inner {\n stroke: ${t.primaryColor};\n fill: ${t.primaryColor};\n }\n\n .arrow { stroke-width: 8; stroke-linecap: round; fill: none}\n .gitTitleText {\n text-anchor: middle;\n font-size: 18px;\n fill: ${t.textColor};\n }\n`),"getStyles")}}}]); \ No newline at end of file diff --git a/assets/js/2654.a1ea61cb.js b/assets/js/2654.a1ea61cb.js new file mode 100644 index 00000000..f3a7612e --- /dev/null +++ b/assets/js/2654.a1ea61cb.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkbeacon_docs=self.webpackChunkbeacon_docs||[]).push([[2654],{37981:(e,t,s)=>{s.d(t,{T:()=>L});var i=s(48585),n=s(39142),r=s(89610),o=s(27422),a=s(94092),l=s(66401),c=s(8058),h=s(69592),d=s(13588),u=s(24326),g=s(99902),p=s(53533);const y=(0,u.A)((function(e){return(0,g.A)((0,d.A)(e,1,p.A,!0))}));var b=s(38207),_=s(89463),f="\0",m="\0",x="\x01";class L{constructor(e={}){this._isDirected=!i.A(e,"directed")||e.directed,this._isMultigraph=!!i.A(e,"multigraph")&&e.multigraph,this._isCompound=!!i.A(e,"compound")&&e.compound,this._label=void 0,this._defaultNodeLabelFn=n.A(void 0),this._defaultEdgeLabelFn=n.A(void 0),this._nodes={},this._isCompound&&(this._parent={},this._children={},this._children[m]={}),this._in={},this._preds={},this._out={},this._sucs={},this._edgeObjs={},this._edgeLabels={}}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph(e){return this._label=e,this}graph(){return this._label}setDefaultNodeLabel(e){return r.A(e)||(e=n.A(e)),this._defaultNodeLabelFn=e,this}nodeCount(){return this._nodeCount}nodes(){return o.A(this._nodes)}sources(){var e=this;return a.A(this.nodes(),(function(t){return l.A(e._in[t])}))}sinks(){var e=this;return a.A(this.nodes(),(function(t){return l.A(e._out[t])}))}setNodes(e,t){var s=arguments,i=this;return c.A(e,(function(e){s.length>1?i.setNode(e,t):i.setNode(e)})),this}setNode(e,t){return i.A(this._nodes,e)?(arguments.length>1&&(this._nodes[e]=t),this):(this._nodes[e]=arguments.length>1?t:this._defaultNodeLabelFn(e),this._isCompound&&(this._parent[e]=m,this._children[e]={},this._children[m][e]=!0),this._in[e]={},this._preds[e]={},this._out[e]={},this._sucs[e]={},++this._nodeCount,this)}node(e){return this._nodes[e]}hasNode(e){return i.A(this._nodes,e)}removeNode(e){var t=this;if(i.A(this._nodes,e)){var s=function(e){t.removeEdge(t._edgeObjs[e])};delete this._nodes[e],this._isCompound&&(this._removeFromParentsChildList(e),delete this._parent[e],c.A(this.children(e),(function(e){t.setParent(e)})),delete this._children[e]),c.A(o.A(this._in[e]),s),delete this._in[e],delete this._preds[e],c.A(o.A(this._out[e]),s),delete this._out[e],delete this._sucs[e],--this._nodeCount}return this}setParent(e,t){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(h.A(t))t=m;else{for(var s=t+="";!h.A(s);s=this.parent(s))if(s===e)throw new Error("Setting "+t+" as parent of "+e+" would create a cycle");this.setNode(t)}return this.setNode(e),this._removeFromParentsChildList(e),this._parent[e]=t,this._children[t][e]=!0,this}_removeFromParentsChildList(e){delete this._children[this._parent[e]][e]}parent(e){if(this._isCompound){var t=this._parent[e];if(t!==m)return t}}children(e){if(h.A(e)&&(e=m),this._isCompound){var t=this._children[e];if(t)return o.A(t)}else{if(e===m)return this.nodes();if(this.hasNode(e))return[]}}predecessors(e){var t=this._preds[e];if(t)return o.A(t)}successors(e){var t=this._sucs[e];if(t)return o.A(t)}neighbors(e){var t=this.predecessors(e);if(t)return y(t,this.successors(e))}isLeaf(e){return 0===(this.isDirected()?this.successors(e):this.neighbors(e)).length}filterNodes(e){var t=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});t.setGraph(this.graph());var s=this;c.A(this._nodes,(function(s,i){e(i)&&t.setNode(i,s)})),c.A(this._edgeObjs,(function(e){t.hasNode(e.v)&&t.hasNode(e.w)&&t.setEdge(e,s.edge(e))}));var i={};function n(e){var r=s.parent(e);return void 0===r||t.hasNode(r)?(i[e]=r,r):r in i?i[r]:n(r)}return this._isCompound&&c.A(t.nodes(),(function(e){t.setParent(e,n(e))})),t}setDefaultEdgeLabel(e){return r.A(e)||(e=n.A(e)),this._defaultEdgeLabelFn=e,this}edgeCount(){return this._edgeCount}edges(){return b.A(this._edgeObjs)}setPath(e,t){var s=this,i=arguments;return _.A(e,(function(e,n){return i.length>1?s.setEdge(e,n,t):s.setEdge(e,n),n})),this}setEdge(){var e,t,s,n,r=!1,o=arguments[0];"object"==typeof o&&null!==o&&"v"in o?(e=o.v,t=o.w,s=o.name,2===arguments.length&&(n=arguments[1],r=!0)):(e=o,t=arguments[1],s=arguments[3],arguments.length>2&&(n=arguments[2],r=!0)),e=""+e,t=""+t,h.A(s)||(s=""+s);var a=E(this._isDirected,e,t,s);if(i.A(this._edgeLabels,a))return r&&(this._edgeLabels[a]=n),this;if(!h.A(s)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(e),this.setNode(t),this._edgeLabels[a]=r?n:this._defaultEdgeLabelFn(e,t,s);var l=function(e,t,s,i){var n=""+t,r=""+s;if(!e&&n>r){var o=n;n=r,r=o}var a={v:n,w:r};i&&(a.name=i);return a}(this._isDirected,e,t,s);return e=l.v,t=l.w,Object.freeze(l),this._edgeObjs[a]=l,S(this._preds[t],e),S(this._sucs[e],t),this._in[t][a]=l,this._out[e][a]=l,this._edgeCount++,this}edge(e,t,s){var i=1===arguments.length?w(this._isDirected,arguments[0]):E(this._isDirected,e,t,s);return this._edgeLabels[i]}hasEdge(e,t,s){var n=1===arguments.length?w(this._isDirected,arguments[0]):E(this._isDirected,e,t,s);return i.A(this._edgeLabels,n)}removeEdge(e,t,s){var i=1===arguments.length?w(this._isDirected,arguments[0]):E(this._isDirected,e,t,s),n=this._edgeObjs[i];return n&&(e=n.v,t=n.w,delete this._edgeLabels[i],delete this._edgeObjs[i],k(this._preds[t],e),k(this._sucs[e],t),delete this._in[t][i],delete this._out[e][i],this._edgeCount--),this}inEdges(e,t){var s=this._in[e];if(s){var i=b.A(s);return t?a.A(i,(function(e){return e.v===t})):i}}outEdges(e,t){var s=this._out[e];if(s){var i=b.A(s);return t?a.A(i,(function(e){return e.w===t})):i}}nodeEdges(e,t){var s=this.inEdges(e,t);if(s)return s.concat(this.outEdges(e,t))}}function S(e,t){e[t]?e[t]++:e[t]=1}function k(e,t){--e[t]||delete e[t]}function E(e,t,s,i){var n=""+t,r=""+s;if(!e&&n>r){var o=n;n=r,r=o}return n+x+r+x+(h.A(i)?f:i)}function w(e,t){return E(e,t.v,t.w,t.name)}L.prototype._nodeCount=0,L.prototype._edgeCount=0},697:(e,t,s)=>{s.d(t,{T:()=>i.T});var i=s(37981)},75937:(e,t,s)=>{s.d(t,{A:()=>r});var i=s(72453),n=s(74886);const r=(e,t)=>i.A.lang.round(n.A.parse(e)[t])},273:(e,t,s)=>{s.d(t,{diagram:()=>le});var i=s(31953),n=s(46578),r=(s(48496),s(67895),s(57323)),o=s(64994),a=s(50053),l=s(75937),c=s(25582),h=s(20007),d=s(697),u=s(96763),g=function(){var e=(0,o.K2)((function(e,t,s,i){for(s=s||{},i=e.length;i--;s[e[i]]=t);return s}),"o"),t=[1,7],s=[1,13],i=[1,14],n=[1,15],r=[1,19],a=[1,16],l=[1,17],c=[1,18],h=[8,30],d=[8,21,28,29,30,31,32,40,44,47],u=[1,23],g=[1,24],p=[8,15,16,21,28,29,30,31,32,40,44,47],y=[8,15,16,21,27,28,29,30,31,32,40,44,47],b=[1,49],_={trace:(0,o.K2)((function(){}),"trace"),yy:{},symbols_:{error:2,spaceLines:3,SPACELINE:4,NL:5,separator:6,SPACE:7,EOF:8,start:9,BLOCK_DIAGRAM_KEY:10,document:11,stop:12,statement:13,link:14,LINK:15,START_LINK:16,LINK_LABEL:17,STR:18,nodeStatement:19,columnsStatement:20,SPACE_BLOCK:21,blockStatement:22,classDefStatement:23,cssClassStatement:24,styleStatement:25,node:26,SIZE:27,COLUMNS:28,"id-block":29,end:30,block:31,NODE_ID:32,nodeShapeNLabel:33,dirList:34,DIR:35,NODE_DSTART:36,NODE_DEND:37,BLOCK_ARROW_START:38,BLOCK_ARROW_END:39,classDef:40,CLASSDEF_ID:41,CLASSDEF_STYLEOPTS:42,DEFAULT:43,class:44,CLASSENTITY_IDS:45,STYLECLASS:46,style:47,STYLE_ENTITY_IDS:48,STYLE_DEFINITION_DATA:49,$accept:0,$end:1},terminals_:{2:"error",4:"SPACELINE",5:"NL",7:"SPACE",8:"EOF",10:"BLOCK_DIAGRAM_KEY",15:"LINK",16:"START_LINK",17:"LINK_LABEL",18:"STR",21:"SPACE_BLOCK",27:"SIZE",28:"COLUMNS",29:"id-block",30:"end",31:"block",32:"NODE_ID",35:"DIR",36:"NODE_DSTART",37:"NODE_DEND",38:"BLOCK_ARROW_START",39:"BLOCK_ARROW_END",40:"classDef",41:"CLASSDEF_ID",42:"CLASSDEF_STYLEOPTS",43:"DEFAULT",44:"class",45:"CLASSENTITY_IDS",46:"STYLECLASS",47:"style",48:"STYLE_ENTITY_IDS",49:"STYLE_DEFINITION_DATA"},productions_:[0,[3,1],[3,2],[3,2],[6,1],[6,1],[6,1],[9,3],[12,1],[12,1],[12,2],[12,2],[11,1],[11,2],[14,1],[14,4],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[19,3],[19,2],[19,1],[20,1],[22,4],[22,3],[26,1],[26,2],[34,1],[34,2],[33,3],[33,4],[23,3],[23,3],[24,3],[25,3]],performAction:(0,o.K2)((function(e,t,s,i,n,r,o){var a=r.length-1;switch(n){case 4:i.getLogger().debug("Rule: separator (NL) ");break;case 5:i.getLogger().debug("Rule: separator (Space) ");break;case 6:i.getLogger().debug("Rule: separator (EOF) ");break;case 7:i.getLogger().debug("Rule: hierarchy: ",r[a-1]),i.setHierarchy(r[a-1]);break;case 8:i.getLogger().debug("Stop NL ");break;case 9:i.getLogger().debug("Stop EOF ");break;case 10:i.getLogger().debug("Stop NL2 ");break;case 11:i.getLogger().debug("Stop EOF2 ");break;case 12:i.getLogger().debug("Rule: statement: ",r[a]),"number"==typeof r[a].length?this.$=r[a]:this.$=[r[a]];break;case 13:i.getLogger().debug("Rule: statement #2: ",r[a-1]),this.$=[r[a-1]].concat(r[a]);break;case 14:i.getLogger().debug("Rule: link: ",r[a],e),this.$={edgeTypeStr:r[a],label:""};break;case 15:i.getLogger().debug("Rule: LABEL link: ",r[a-3],r[a-1],r[a]),this.$={edgeTypeStr:r[a],label:r[a-1]};break;case 18:const t=parseInt(r[a]),s=i.generateId();this.$={id:s,type:"space",label:"",width:t,children:[]};break;case 23:i.getLogger().debug("Rule: (nodeStatement link node) ",r[a-2],r[a-1],r[a]," typestr: ",r[a-1].edgeTypeStr);const n=i.edgeStrToEdgeData(r[a-1].edgeTypeStr);this.$=[{id:r[a-2].id,label:r[a-2].label,type:r[a-2].type,directions:r[a-2].directions},{id:r[a-2].id+"-"+r[a].id,start:r[a-2].id,end:r[a].id,label:r[a-1].label,type:"edge",directions:r[a].directions,arrowTypeEnd:n,arrowTypeStart:"arrow_open"},{id:r[a].id,label:r[a].label,type:i.typeStr2Type(r[a].typeStr),directions:r[a].directions}];break;case 24:i.getLogger().debug("Rule: nodeStatement (abc88 node size) ",r[a-1],r[a]),this.$={id:r[a-1].id,label:r[a-1].label,type:i.typeStr2Type(r[a-1].typeStr),directions:r[a-1].directions,widthInColumns:parseInt(r[a],10)};break;case 25:i.getLogger().debug("Rule: nodeStatement (node) ",r[a]),this.$={id:r[a].id,label:r[a].label,type:i.typeStr2Type(r[a].typeStr),directions:r[a].directions,widthInColumns:1};break;case 26:i.getLogger().debug("APA123",this?this:"na"),i.getLogger().debug("COLUMNS: ",r[a]),this.$={type:"column-setting",columns:"auto"===r[a]?-1:parseInt(r[a])};break;case 27:i.getLogger().debug("Rule: id-block statement : ",r[a-2],r[a-1]);i.generateId();this.$={...r[a-2],type:"composite",children:r[a-1]};break;case 28:i.getLogger().debug("Rule: blockStatement : ",r[a-2],r[a-1],r[a]);const o=i.generateId();this.$={id:o,type:"composite",label:"",children:r[a-1]};break;case 29:i.getLogger().debug("Rule: node (NODE_ID separator): ",r[a]),this.$={id:r[a]};break;case 30:i.getLogger().debug("Rule: node (NODE_ID nodeShapeNLabel separator): ",r[a-1],r[a]),this.$={id:r[a-1],label:r[a].label,typeStr:r[a].typeStr,directions:r[a].directions};break;case 31:i.getLogger().debug("Rule: dirList: ",r[a]),this.$=[r[a]];break;case 32:i.getLogger().debug("Rule: dirList: ",r[a-1],r[a]),this.$=[r[a-1]].concat(r[a]);break;case 33:i.getLogger().debug("Rule: nodeShapeNLabel: ",r[a-2],r[a-1],r[a]),this.$={typeStr:r[a-2]+r[a],label:r[a-1]};break;case 34:i.getLogger().debug("Rule: BLOCK_ARROW nodeShapeNLabel: ",r[a-3],r[a-2]," #3:",r[a-1],r[a]),this.$={typeStr:r[a-3]+r[a],label:r[a-2],directions:r[a-1]};break;case 35:case 36:this.$={type:"classDef",id:r[a-1].trim(),css:r[a].trim()};break;case 37:this.$={type:"applyClass",id:r[a-1].trim(),styleClass:r[a].trim()};break;case 38:this.$={type:"applyStyles",id:r[a-1].trim(),stylesStr:r[a].trim()}}}),"anonymous"),table:[{9:1,10:[1,2]},{1:[3]},{11:3,13:4,19:5,20:6,21:t,22:8,23:9,24:10,25:11,26:12,28:s,29:i,31:n,32:r,40:a,44:l,47:c},{8:[1,20]},e(h,[2,12],{13:4,19:5,20:6,22:8,23:9,24:10,25:11,26:12,11:21,21:t,28:s,29:i,31:n,32:r,40:a,44:l,47:c}),e(d,[2,16],{14:22,15:u,16:g}),e(d,[2,17]),e(d,[2,18]),e(d,[2,19]),e(d,[2,20]),e(d,[2,21]),e(d,[2,22]),e(p,[2,25],{27:[1,25]}),e(d,[2,26]),{19:26,26:12,32:r},{11:27,13:4,19:5,20:6,21:t,22:8,23:9,24:10,25:11,26:12,28:s,29:i,31:n,32:r,40:a,44:l,47:c},{41:[1,28],43:[1,29]},{45:[1,30]},{48:[1,31]},e(y,[2,29],{33:32,36:[1,33],38:[1,34]}),{1:[2,7]},e(h,[2,13]),{26:35,32:r},{32:[2,14]},{17:[1,36]},e(p,[2,24]),{11:37,13:4,14:22,15:u,16:g,19:5,20:6,21:t,22:8,23:9,24:10,25:11,26:12,28:s,29:i,31:n,32:r,40:a,44:l,47:c},{30:[1,38]},{42:[1,39]},{42:[1,40]},{46:[1,41]},{49:[1,42]},e(y,[2,30]),{18:[1,43]},{18:[1,44]},e(p,[2,23]),{18:[1,45]},{30:[1,46]},e(d,[2,28]),e(d,[2,35]),e(d,[2,36]),e(d,[2,37]),e(d,[2,38]),{37:[1,47]},{34:48,35:b},{15:[1,50]},e(d,[2,27]),e(y,[2,33]),{39:[1,51]},{34:52,35:b,39:[2,31]},{32:[2,15]},e(y,[2,34]),{39:[2,32]}],defaultActions:{20:[2,7],23:[2,14],50:[2,15],52:[2,32]},parseError:(0,o.K2)((function(e,t){if(!t.recoverable){var s=new Error(e);throw s.hash=t,s}this.trace(e)}),"parseError"),parse:(0,o.K2)((function(e){var t=this,s=[0],i=[],n=[null],r=[],a=this.table,l="",c=0,h=0,d=0,u=r.slice.call(arguments,1),g=Object.create(this.lexer),p={yy:{}};for(var y in this.yy)Object.prototype.hasOwnProperty.call(this.yy,y)&&(p.yy[y]=this.yy[y]);g.setInput(e,p.yy),p.yy.lexer=g,p.yy.parser=this,void 0===g.yylloc&&(g.yylloc={});var b=g.yylloc;r.push(b);var _=g.options&&g.options.ranges;function f(){var e;return"number"!=typeof(e=i.pop()||g.lex()||1)&&(e instanceof Array&&(e=(i=e).pop()),e=t.symbols_[e]||e),e}"function"==typeof p.yy.parseError?this.parseError=p.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,o.K2)((function(e){s.length=s.length-2*e,n.length=n.length-e,r.length=r.length-e}),"popStack"),(0,o.K2)(f,"lex");for(var m,x,L,S,k,E,w,D,A,v={};;){if(L=s[s.length-1],this.defaultActions[L]?S=this.defaultActions[L]:(null==m&&(m=f()),S=a[L]&&a[L][m]),void 0===S||!S.length||!S[0]){var N="";for(E in A=[],a[L])this.terminals_[E]&&E>2&&A.push("'"+this.terminals_[E]+"'");N=g.showPosition?"Parse error on line "+(c+1)+":\n"+g.showPosition()+"\nExpecting "+A.join(", ")+", got '"+(this.terminals_[m]||m)+"'":"Parse error on line "+(c+1)+": Unexpected "+(1==m?"end of input":"'"+(this.terminals_[m]||m)+"'"),this.parseError(N,{text:g.match,token:this.terminals_[m]||m,line:g.yylineno,loc:b,expected:A})}if(S[0]instanceof Array&&S.length>1)throw new Error("Parse Error: multiple actions possible at state: "+L+", token: "+m);switch(S[0]){case 1:s.push(m),n.push(g.yytext),r.push(g.yylloc),s.push(S[1]),m=null,x?(m=x,x=null):(h=g.yyleng,l=g.yytext,c=g.yylineno,b=g.yylloc,d>0&&d--);break;case 2:if(w=this.productions_[S[1]][1],v.$=n[n.length-w],v._$={first_line:r[r.length-(w||1)].first_line,last_line:r[r.length-1].last_line,first_column:r[r.length-(w||1)].first_column,last_column:r[r.length-1].last_column},_&&(v._$.range=[r[r.length-(w||1)].range[0],r[r.length-1].range[1]]),void 0!==(k=this.performAction.apply(v,[l,h,c,p.yy,S[1],n,r].concat(u))))return k;w&&(s=s.slice(0,-1*w*2),n=n.slice(0,-1*w),r=r.slice(0,-1*w)),s.push(this.productions_[S[1]][0]),n.push(v.$),r.push(v._$),D=a[s[s.length-2]][s[s.length-1]],s.push(D);break;case 3:return!0}}return!0}),"parse")},f=function(){return{EOF:1,parseError:(0,o.K2)((function(e,t){if(!this.yy.parser)throw new Error(e);this.yy.parser.parseError(e,t)}),"parseError"),setInput:(0,o.K2)((function(e,t){return this.yy=t||this.yy||{},this._input=e,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this}),"setInput"),input:(0,o.K2)((function(){var e=this._input[0];return this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e,e.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e}),"input"),unput:(0,o.K2)((function(e){var t=e.length,s=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t),this.offset-=t;var i=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),s.length-1&&(this.yylineno-=s.length-1);var n=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:s?(s.length===i.length?this.yylloc.first_column:0)+i[i.length-s.length].length-s[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[n[0],n[0]+this.yyleng-t]),this.yyleng=this.yytext.length,this}),"unput"),more:(0,o.K2)((function(){return this._more=!0,this}),"more"),reject:(0,o.K2)((function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"reject"),less:(0,o.K2)((function(e){this.unput(this.match.slice(e))}),"less"),pastInput:(0,o.K2)((function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?"...":"")+e.substr(-20).replace(/\n/g,"")}),"pastInput"),upcomingInput:(0,o.K2)((function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?"...":"")).replace(/\n/g,"")}),"upcomingInput"),showPosition:(0,o.K2)((function(){var e=this.pastInput(),t=new Array(e.length+1).join("-");return e+this.upcomingInput()+"\n"+t+"^"}),"showPosition"),test_match:(0,o.K2)((function(e,t){var s,i,n;if(this.options.backtrack_lexer&&(n={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(n.yylloc.range=this.yylloc.range.slice(0))),(i=e[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=i.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:i?i[i.length-1].length-i[i.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+e[0].length},this.yytext+=e[0],this.match+=e[0],this.matches=e,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(e[0].length),this.matched+=e[0],s=this.performAction.call(this,this.yy,this,t,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),s)return s;if(this._backtrack){for(var r in n)this[r]=n[r];return!1}return!1}),"test_match"),next:(0,o.K2)((function(){if(this.done)return this.EOF;var e,t,s,i;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var n=this._currentRules(),r=0;rt[0].length)){if(t=s,i=r,this.options.backtrack_lexer){if(!1!==(e=this.test_match(s,n[r])))return e;if(this._backtrack){t=!1;continue}return!1}if(!this.options.flex)break}return t?!1!==(e=this.test_match(t,n[i]))&&e:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"next"),lex:(0,o.K2)((function(){var e=this.next();return e||this.lex()}),"lex"),begin:(0,o.K2)((function(e){this.conditionStack.push(e)}),"begin"),popState:(0,o.K2)((function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]}),"popState"),_currentRules:(0,o.K2)((function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules}),"_currentRules"),topState:(0,o.K2)((function(e){return(e=this.conditionStack.length-1-Math.abs(e||0))>=0?this.conditionStack[e]:"INITIAL"}),"topState"),pushState:(0,o.K2)((function(e){this.begin(e)}),"pushState"),stateStackSize:(0,o.K2)((function(){return this.conditionStack.length}),"stateStackSize"),options:{},performAction:(0,o.K2)((function(e,t,s,i){switch(s){case 0:return 10;case 1:return e.getLogger().debug("Found space-block"),31;case 2:return e.getLogger().debug("Found nl-block"),31;case 3:return e.getLogger().debug("Found space-block"),29;case 4:e.getLogger().debug(".",t.yytext);break;case 5:e.getLogger().debug("_",t.yytext);break;case 6:return 5;case 7:return t.yytext=-1,28;case 8:return t.yytext=t.yytext.replace(/columns\s+/,""),e.getLogger().debug("COLUMNS (LEX)",t.yytext),28;case 9:case 77:case 78:case 100:this.pushState("md_string");break;case 10:return"MD_STR";case 11:case 35:case 80:this.popState();break;case 12:this.pushState("string");break;case 13:e.getLogger().debug("LEX: POPPING STR:",t.yytext),this.popState();break;case 14:return e.getLogger().debug("LEX: STR end:",t.yytext),"STR";case 15:return t.yytext=t.yytext.replace(/space\:/,""),e.getLogger().debug("SPACE NUM (LEX)",t.yytext),21;case 16:return t.yytext="1",e.getLogger().debug("COLUMNS (LEX)",t.yytext),21;case 17:return 43;case 18:return"LINKSTYLE";case 19:return"INTERPOLATE";case 20:return this.pushState("CLASSDEF"),40;case 21:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";case 22:return this.popState(),this.pushState("CLASSDEFID"),41;case 23:return this.popState(),42;case 24:return this.pushState("CLASS"),44;case 25:return this.popState(),this.pushState("CLASS_STYLE"),45;case 26:return this.popState(),46;case 27:return this.pushState("STYLE_STMNT"),47;case 28:return this.popState(),this.pushState("STYLE_DEFINITION"),48;case 29:return this.popState(),49;case 30:return this.pushState("acc_title"),"acc_title";case 31:return this.popState(),"acc_title_value";case 32:return this.pushState("acc_descr"),"acc_descr";case 33:return this.popState(),"acc_descr_value";case 34:this.pushState("acc_descr_multiline");break;case 36:return"acc_descr_multiline_value";case 37:return 30;case 38:case 39:case 41:case 42:case 45:return this.popState(),e.getLogger().debug("Lex: (("),"NODE_DEND";case 40:return this.popState(),e.getLogger().debug("Lex: ))"),"NODE_DEND";case 43:return this.popState(),e.getLogger().debug("Lex: (-"),"NODE_DEND";case 44:return this.popState(),e.getLogger().debug("Lex: -)"),"NODE_DEND";case 46:return this.popState(),e.getLogger().debug("Lex: ]]"),"NODE_DEND";case 47:return this.popState(),e.getLogger().debug("Lex: ("),"NODE_DEND";case 48:return this.popState(),e.getLogger().debug("Lex: ])"),"NODE_DEND";case 49:case 50:return this.popState(),e.getLogger().debug("Lex: /]"),"NODE_DEND";case 51:return this.popState(),e.getLogger().debug("Lex: )]"),"NODE_DEND";case 52:return this.popState(),e.getLogger().debug("Lex: )"),"NODE_DEND";case 53:return this.popState(),e.getLogger().debug("Lex: ]>"),"NODE_DEND";case 54:return this.popState(),e.getLogger().debug("Lex: ]"),"NODE_DEND";case 55:return e.getLogger().debug("Lexa: -)"),this.pushState("NODE"),36;case 56:return e.getLogger().debug("Lexa: (-"),this.pushState("NODE"),36;case 57:return e.getLogger().debug("Lexa: ))"),this.pushState("NODE"),36;case 58:case 60:case 61:case 62:case 65:return e.getLogger().debug("Lexa: )"),this.pushState("NODE"),36;case 59:return e.getLogger().debug("Lex: ((("),this.pushState("NODE"),36;case 63:return e.getLogger().debug("Lexc: >"),this.pushState("NODE"),36;case 64:return e.getLogger().debug("Lexa: (["),this.pushState("NODE"),36;case 66:case 67:case 68:case 69:case 70:case 71:case 72:return this.pushState("NODE"),36;case 73:return e.getLogger().debug("Lexa: ["),this.pushState("NODE"),36;case 74:return this.pushState("BLOCK_ARROW"),e.getLogger().debug("LEX ARR START"),38;case 75:return e.getLogger().debug("Lex: NODE_ID",t.yytext),32;case 76:return e.getLogger().debug("Lex: EOF",t.yytext),8;case 79:return"NODE_DESCR";case 81:e.getLogger().debug("Lex: Starting string"),this.pushState("string");break;case 82:e.getLogger().debug("LEX ARR: Starting string"),this.pushState("string");break;case 83:return e.getLogger().debug("LEX: NODE_DESCR:",t.yytext),"NODE_DESCR";case 84:e.getLogger().debug("LEX POPPING"),this.popState();break;case 85:e.getLogger().debug("Lex: =>BAE"),this.pushState("ARROW_DIR");break;case 86:return t.yytext=t.yytext.replace(/^,\s*/,""),e.getLogger().debug("Lex (right): dir:",t.yytext),"DIR";case 87:return t.yytext=t.yytext.replace(/^,\s*/,""),e.getLogger().debug("Lex (left):",t.yytext),"DIR";case 88:return t.yytext=t.yytext.replace(/^,\s*/,""),e.getLogger().debug("Lex (x):",t.yytext),"DIR";case 89:return t.yytext=t.yytext.replace(/^,\s*/,""),e.getLogger().debug("Lex (y):",t.yytext),"DIR";case 90:return t.yytext=t.yytext.replace(/^,\s*/,""),e.getLogger().debug("Lex (up):",t.yytext),"DIR";case 91:return t.yytext=t.yytext.replace(/^,\s*/,""),e.getLogger().debug("Lex (down):",t.yytext),"DIR";case 92:return t.yytext="]>",e.getLogger().debug("Lex (ARROW_DIR end):",t.yytext),this.popState(),this.popState(),"BLOCK_ARROW_END";case 93:return e.getLogger().debug("Lex: LINK","#"+t.yytext+"#"),15;case 94:case 95:case 96:return e.getLogger().debug("Lex: LINK",t.yytext),15;case 97:case 98:case 99:return e.getLogger().debug("Lex: START_LINK",t.yytext),this.pushState("LLABEL"),16;case 101:return e.getLogger().debug("Lex: Starting string"),this.pushState("string"),"LINK_LABEL";case 102:return this.popState(),e.getLogger().debug("Lex: LINK","#"+t.yytext+"#"),15;case 103:case 104:return this.popState(),e.getLogger().debug("Lex: LINK",t.yytext),15;case 105:return e.getLogger().debug("Lex: COLON",t.yytext),t.yytext=t.yytext.slice(1),27}}),"anonymous"),rules:[/^(?:block-beta\b)/,/^(?:block\s+)/,/^(?:block\n+)/,/^(?:block:)/,/^(?:[\s]+)/,/^(?:[\n]+)/,/^(?:((\u000D\u000A)|(\u000A)))/,/^(?:columns\s+auto\b)/,/^(?:columns\s+[\d]+)/,/^(?:["][`])/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:space[:]\d+)/,/^(?:space\b)/,/^(?:default\b)/,/^(?:linkStyle\b)/,/^(?:interpolate\b)/,/^(?:classDef\s+)/,/^(?:DEFAULT\s+)/,/^(?:\w+\s+)/,/^(?:[^\n]*)/,/^(?:class\s+)/,/^(?:(\w+)+((,\s*\w+)*))/,/^(?:[^\n]*)/,/^(?:style\s+)/,/^(?:(\w+)+((,\s*\w+)*))/,/^(?:[^\n]*)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:end\b\s*)/,/^(?:\(\(\()/,/^(?:\)\)\))/,/^(?:[\)]\))/,/^(?:\}\})/,/^(?:\})/,/^(?:\(-)/,/^(?:-\))/,/^(?:\(\()/,/^(?:\]\])/,/^(?:\()/,/^(?:\]\))/,/^(?:\\\])/,/^(?:\/\])/,/^(?:\)\])/,/^(?:[\)])/,/^(?:\]>)/,/^(?:[\]])/,/^(?:-\))/,/^(?:\(-)/,/^(?:\)\))/,/^(?:\))/,/^(?:\(\(\()/,/^(?:\(\()/,/^(?:\{\{)/,/^(?:\{)/,/^(?:>)/,/^(?:\(\[)/,/^(?:\()/,/^(?:\[\[)/,/^(?:\[\|)/,/^(?:\[\()/,/^(?:\)\)\))/,/^(?:\[\\)/,/^(?:\[\/)/,/^(?:\[\\)/,/^(?:\[)/,/^(?:<\[)/,/^(?:[^\(\[\n\-\)\{\}\s\<\>:]+)/,/^(?:$)/,/^(?:["][`])/,/^(?:["][`])/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["])/,/^(?:["])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:\]>\s*\()/,/^(?:,?\s*right\s*)/,/^(?:,?\s*left\s*)/,/^(?:,?\s*x\s*)/,/^(?:,?\s*y\s*)/,/^(?:,?\s*up\s*)/,/^(?:,?\s*down\s*)/,/^(?:\)\s*)/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?:\s*~~[\~]+\s*)/,/^(?:\s*[xo<]?--\s*)/,/^(?:\s*[xo<]?==\s*)/,/^(?:\s*[xo<]?-\.\s*)/,/^(?:["][`])/,/^(?:["])/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?::\d+)/],conditions:{STYLE_DEFINITION:{rules:[29],inclusive:!1},STYLE_STMNT:{rules:[28],inclusive:!1},CLASSDEFID:{rules:[23],inclusive:!1},CLASSDEF:{rules:[21,22],inclusive:!1},CLASS_STYLE:{rules:[26],inclusive:!1},CLASS:{rules:[25],inclusive:!1},LLABEL:{rules:[100,101,102,103,104],inclusive:!1},ARROW_DIR:{rules:[86,87,88,89,90,91,92],inclusive:!1},BLOCK_ARROW:{rules:[77,82,85],inclusive:!1},NODE:{rules:[38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,78,81],inclusive:!1},md_string:{rules:[10,11,79,80],inclusive:!1},space:{rules:[],inclusive:!1},string:{rules:[13,14,83,84],inclusive:!1},acc_descr_multiline:{rules:[35,36],inclusive:!1},acc_descr:{rules:[33],inclusive:!1},acc_title:{rules:[31],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,12,15,16,17,18,19,20,24,27,30,32,34,37,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,93,94,95,96,97,98,99,105],inclusive:!0}}}}();function m(){this.yy={}}return _.lexer=f,(0,o.K2)(m,"Parser"),m.prototype=_,_.Parser=m,new m}();g.parser=g;var p=g,y=new Map,b=[],_=new Map,f="color",m="fill",x=(0,o.D7)(),L=new Map,S=(0,o.K2)((e=>o.Y2.sanitizeText(e,x)),"sanitizeText"),k=(0,o.K2)((function(e,t=""){let s=L.get(e);s||(s={id:e,styles:[],textStyles:[]},L.set(e,s)),null!=t&&t.split(",").forEach((e=>{const t=e.replace(/([^;]*);/,"$1").trim();if(RegExp(f).exec(e)){const e=t.replace(m,"bgFill").replace(f,m);s.textStyles.push(e)}s.styles.push(t)}))}),"addStyleClass"),E=(0,o.K2)((function(e,t=""){const s=y.get(e);null!=t&&(s.styles=t.split(","))}),"addStyle2Node"),w=(0,o.K2)((function(e,t){e.split(",").forEach((function(e){let s=y.get(e);if(void 0===s){const t=e.trim();s={id:t,type:"na",children:[]},y.set(t,s)}s.classes||(s.classes=[]),s.classes.push(t)}))}),"setCssClass"),D=(0,o.K2)(((e,t)=>{const s=e.flat(),i=[];for(const n of s)if(n.label&&(n.label=S(n.label)),"classDef"!==n.type)if("applyClass"!==n.type)if("applyStyles"!==n.type)if("column-setting"===n.type)t.columns=n.columns??-1;else if("edge"===n.type){const e=(_.get(n.id)??0)+1;_.set(n.id,e),n.id=e+"-"+n.id,b.push(n)}else{n.label||("composite"===n.type?n.label="":n.label=n.id);const e=y.get(n.id);if(void 0===e?y.set(n.id,n):("na"!==n.type&&(e.type=n.type),n.label!==n.id&&(e.label=n.label)),n.children&&D(n.children,n),"space"===n.type){const e=n.width??1;for(let t=0;t{o.Rm.debug("Clear called"),(0,o.IU)(),v={id:"root",type:"composite",children:[],columns:-1},y=new Map([["root",v]]),A=[],L=new Map,b=[],_=new Map}),"clear");function C(e){switch(o.Rm.debug("typeStr2Type",e),e){case"[]":return"square";case"()":return o.Rm.debug("we have a round"),"round";case"(())":return"circle";case">]":return"rect_left_inv_arrow";case"{}":return"diamond";case"{{}}":return"hexagon";case"([])":return"stadium";case"[[]]":return"subroutine";case"[()]":return"cylinder";case"((()))":return"doublecircle";case"[//]":return"lean_right";case"[\\\\]":return"lean_left";case"[/\\]":return"trapezoid";case"[\\/]":return"inv_trapezoid";case"<[]>":return"block_arrow";default:return"na"}}function $(e){return o.Rm.debug("typeStr2Type",e),"=="===e?"thick":"normal"}function T(e){switch(e.trim()){case"--x":return"arrow_cross";case"--o":return"arrow_circle";default:return"arrow_point"}}(0,o.K2)(C,"typeStr2Type"),(0,o.K2)($,"edgeTypeStr2Type"),(0,o.K2)(T,"edgeStrToEdgeData");var R=0,I=(0,o.K2)((()=>(R++,"id-"+Math.random().toString(36).substr(2,12)+"-"+R)),"generateId"),z=(0,o.K2)((e=>{v.children=e,D(e,v),A=v.children}),"setHierarchy"),O=(0,o.K2)((e=>{const t=y.get(e);return t?t.columns?t.columns:t.children?t.children.length:-1:-1}),"getColumns"),K=(0,o.K2)((()=>[...y.values()]),"getBlocksFlat"),B=(0,o.K2)((()=>A||[]),"getBlocks"),P=(0,o.K2)((()=>b),"getEdges"),F=(0,o.K2)((e=>y.get(e)),"getBlock"),M=(0,o.K2)((e=>{y.set(e.id,e)}),"setBlock"),Y=(0,o.K2)((()=>u),"getLogger"),X=(0,o.K2)((function(){return L}),"getClasses"),j={getConfig:(0,o.K2)((()=>(0,o.zj)().block),"getConfig"),typeStr2Type:C,edgeTypeStr2Type:$,edgeStrToEdgeData:T,getLogger:Y,getBlocksFlat:K,getBlocks:B,getEdges:P,setHierarchy:z,getBlock:F,setBlock:M,getColumns:O,getClasses:X,clear:N,generateId:I},W=(0,o.K2)(((e,t)=>{const s=l.A,i=s(e,"r"),n=s(e,"g"),r=s(e,"b");return c.A(i,n,r,t)}),"fade"),U=(0,o.K2)((e=>`.label {\n font-family: ${e.fontFamily};\n color: ${e.nodeTextColor||e.textColor};\n }\n .cluster-label text {\n fill: ${e.titleColor};\n }\n .cluster-label span,p {\n color: ${e.titleColor};\n }\n\n\n\n .label text,span,p {\n fill: ${e.nodeTextColor||e.textColor};\n color: ${e.nodeTextColor||e.textColor};\n }\n\n .node rect,\n .node circle,\n .node ellipse,\n .node polygon,\n .node path {\n fill: ${e.mainBkg};\n stroke: ${e.nodeBorder};\n stroke-width: 1px;\n }\n .flowchart-label text {\n text-anchor: middle;\n }\n // .flowchart-label .text-outer-tspan {\n // text-anchor: middle;\n // }\n // .flowchart-label .text-inner-tspan {\n // text-anchor: start;\n // }\n\n .node .label {\n text-align: center;\n }\n .node.clickable {\n cursor: pointer;\n }\n\n .arrowheadPath {\n fill: ${e.arrowheadColor};\n }\n\n .edgePath .path {\n stroke: ${e.lineColor};\n stroke-width: 2.0px;\n }\n\n .flowchart-link {\n stroke: ${e.lineColor};\n fill: none;\n }\n\n .edgeLabel {\n background-color: ${e.edgeLabelBackground};\n rect {\n opacity: 0.5;\n background-color: ${e.edgeLabelBackground};\n fill: ${e.edgeLabelBackground};\n }\n text-align: center;\n }\n\n /* For html labels only */\n .labelBkg {\n background-color: ${W(e.edgeLabelBackground,.5)};\n // background-color:\n }\n\n .node .cluster {\n // fill: ${W(e.mainBkg,.5)};\n fill: ${W(e.clusterBkg,.5)};\n stroke: ${W(e.clusterBorder,.2)};\n box-shadow: rgba(50, 50, 93, 0.25) 0px 13px 27px -5px, rgba(0, 0, 0, 0.3) 0px 8px 16px -8px;\n stroke-width: 1px;\n }\n\n .cluster text {\n fill: ${e.titleColor};\n }\n\n .cluster span,p {\n color: ${e.titleColor};\n }\n /* .cluster div {\n color: ${e.titleColor};\n } */\n\n div.mermaidTooltip {\n position: absolute;\n text-align: center;\n max-width: 200px;\n padding: 2px;\n font-family: ${e.fontFamily};\n font-size: 12px;\n background: ${e.tertiaryColor};\n border: 1px solid ${e.border2};\n border-radius: 2px;\n pointer-events: none;\n z-index: 100;\n }\n\n .flowchartTitleText {\n text-anchor: middle;\n font-size: 18px;\n fill: ${e.textColor};\n }\n`),"getStyles"),H=(0,o.D7)()?.block?.padding??8;function G(e,t){if(0===e||!Number.isInteger(e))throw new Error("Columns must be an integer !== 0.");if(t<0||!Number.isInteger(t))throw new Error("Position must be a non-negative integer."+t);if(e<0)return{px:t,py:0};if(1===e)return{px:0,py:t};return{px:t%e,py:Math.floor(t/e)}}(0,o.K2)(G,"calculateBlockPosition");var q=(0,o.K2)((e=>{let t=0,s=0;for(const i of e.children){const{width:n,height:r,x:a,y:l}=i.size??{width:0,height:0,x:0,y:0};o.Rm.debug("getMaxChildSize abc95 child:",i.id,"width:",n,"height:",r,"x:",a,"y:",l,i.type),"space"!==i.type&&(n>t&&(t=n/(e.widthInColumns??1)),r>s&&(s=r))}return{width:t,height:s}}),"getMaxChildSize");function J(e,t,s=0,i=0){o.Rm.debug("setBlockSizes abc95 (start)",e.id,e?.size?.x,"block width =",e?.size,"sieblingWidth",s),e?.size?.width||(e.size={width:s,height:i,x:0,y:0});let n=0,r=0;if(e.children?.length>0){for(const s of e.children)J(s,t);const a=q(e);n=a.width,r=a.height,o.Rm.debug("setBlockSizes abc95 maxWidth of",e.id,":s children is ",n,r);for(const t of e.children)t.size&&(o.Rm.debug(`abc95 Setting size of children of ${e.id} id=${t.id} ${n} ${r} ${JSON.stringify(t.size)}`),t.size.width=n*(t.widthInColumns??1)+H*((t.widthInColumns??1)-1),t.size.height=r,t.size.x=0,t.size.y=0,o.Rm.debug(`abc95 updating size of ${e.id} children child:${t.id} maxWidth:${n} maxHeight:${r}`));for(const s of e.children)J(s,t,n,r);const l=e.columns??-1;let c=0;for(const t of e.children)c+=t.widthInColumns??1;let h=e.children.length;l>0&&l0?Math.min(e.children.length,l):e.children.length;if(t>0){const s=(u-t*H-H)/t;o.Rm.debug("abc95 (growing to fit) width",e.id,u,e.size?.width,s);for(const t of e.children)t.size&&(t.size.width=s)}}e.size={width:u,height:g,x:0,y:0}}o.Rm.debug("setBlockSizes abc94 (done)",e.id,e?.size?.x,e?.size?.width,e?.size?.y,e?.size?.height)}function Z(e,t){o.Rm.debug(`abc85 layout blocks (=>layoutBlocks) ${e.id} x: ${e?.size?.x} y: ${e?.size?.y} width: ${e?.size?.width}`);const s=e.columns??-1;if(o.Rm.debug("layoutBlocks columns abc95",e.id,"=>",s,e),e.children&&e.children.length>0){const i=e?.children[0]?.size?.width??0,n=e.children.length*i+(e.children.length-1)*H;o.Rm.debug("widthOfChildren 88",n,"posX");let r=0;o.Rm.debug("abc91 block?.size?.x",e.id,e?.size?.x);let a=e?.size?.x?e?.size?.x+(-e?.size?.width/2||0):-H,l=0;for(const c of e.children){const i=e;if(!c.size)continue;const{width:n,height:h}=c.size,{px:d,py:u}=G(s,r);if(u!=l&&(l=u,a=e?.size?.x?e?.size?.x+(-e?.size?.width/2||0):-H,o.Rm.debug("New row in layout for block",e.id," and child ",c.id,l)),o.Rm.debug(`abc89 layout blocks (child) id: ${c.id} Pos: ${r} (px, py) ${d},${u} (${i?.size?.x},${i?.size?.y}) parent: ${i.id} width: ${n}${H}`),i.size){const e=n/2;c.size.x=a+H+e,o.Rm.debug(`abc91 layout blocks (calc) px, pyid:${c.id} startingPos=X${a} new startingPosX${c.size.x} ${e} padding=${H} width=${n} halfWidth=${e} => x:${c.size.x} y:${c.size.y} ${c.widthInColumns} (width * (child?.w || 1)) / 2 ${n*(c?.widthInColumns??1)/2}`),a=c.size.x+e,c.size.y=i.size.y-i.size.height/2+u*(h+H)+h/2+H,o.Rm.debug(`abc88 layout blocks (calc) px, pyid:${c.id}startingPosX${a}${H}${e}=>x:${c.size.x}y:${c.size.y}${c.widthInColumns}(width * (child?.w || 1)) / 2${n*(c?.widthInColumns??1)/2}`)}c.children&&Z(c,t),r+=c?.widthInColumns??1,o.Rm.debug("abc88 columnsPos",c,r)}}o.Rm.debug(`layout blocks (<==layoutBlocks) ${e.id} x: ${e?.size?.x} y: ${e?.size?.y} width: ${e?.size?.width}`)}function Q(e,{minX:t,minY:s,maxX:i,maxY:n}={minX:0,minY:0,maxX:0,maxY:0}){if(e.size&&"root"!==e.id){const{x:r,y:o,width:a,height:l}=e.size;r-a/2i&&(i=r+a/2),o+l/2>n&&(n=o+l/2)}if(e.children)for(const r of e.children)({minX:t,minY:s,maxX:i,maxY:n}=Q(r,{minX:t,minY:s,maxX:i,maxY:n}));return{minX:t,minY:s,maxX:i,maxY:n}}function V(e){const t=e.getBlock("root");if(!t)return;J(t,e,0,0),Z(t,e),o.Rm.debug("getBlocks",JSON.stringify(t,null,2));const{minX:s,minY:i,maxX:n,maxY:r}=Q(t);return{x:s,y:i,width:n-s,height:r-i}}function ee(e,t,s=!1){const i=e;let n="default";(i?.classes?.length||0)>0&&(n=(i?.classes??[]).join(" ")),n+=" flowchart-label";let a,l=0,c="";switch(i.type){case"round":l=5,c="rect";break;case"composite":l=0,c="composite",a=0;break;case"square":case"group":default:c="rect";break;case"diamond":c="question";break;case"hexagon":c="hexagon";break;case"block_arrow":c="block_arrow";break;case"odd":case"rect_left_inv_arrow":c="rect_left_inv_arrow";break;case"lean_right":c="lean_right";break;case"lean_left":c="lean_left";break;case"trapezoid":c="trapezoid";break;case"inv_trapezoid":c="inv_trapezoid";break;case"circle":c="circle";break;case"ellipse":c="ellipse";break;case"stadium":c="stadium";break;case"subroutine":c="subroutine";break;case"cylinder":c="cylinder";break;case"doublecircle":c="doublecircle"}const h=(0,r.sM)(i?.styles??[]),d=i.label,u=i.size??{width:0,height:0,x:0,y:0};return{labelStyle:h.labelStyle,shape:c,labelText:d,rx:l,ry:l,class:n,style:h.style,id:i.id,directions:i.directions,width:u.width,height:u.height,x:u.x,y:u.y,positioned:s,intersect:void 0,type:i.type,padding:a??(0,o.zj)()?.block?.padding??0}}async function te(e,t,s){const i=ee(t,0,!1);if("group"===i.type)return;const r=await(0,n.on)(e,i),o=r.node().getBBox(),a=s.getBlock(i.id);a.size={width:o.width,height:o.height,x:0,y:0,node:r},s.setBlock(a),r.remove()}async function se(e,t,s){const i=ee(t,0,!0);"space"!==s.getBlock(i.id).type&&(await(0,n.on)(e,i),t.intersect=i?.intersect,(0,n.U_)(i))}async function ie(e,t,s,i){for(const n of t)await i(e,n,s),n.children&&await ie(e,n.children,s,i)}async function ne(e,t,s){await ie(e,t,s,te)}async function re(e,t,s){await ie(e,t,s,se)}async function oe(e,t,s,n,r){const o=new d.T({multigraph:!0,compound:!0});o.setGraph({rankdir:"TB",nodesep:10,ranksep:10,marginx:8,marginy:8});for(const i of s)i.size&&o.setNode(i.id,{width:i.size.width,height:i.size.height,intersect:i.intersect});for(const a of t)if(a.start&&a.end){const t=n.getBlock(a.start),s=n.getBlock(a.end);if(t?.size&&s?.size){const n=t.size,l=s.size,c=[{x:n.x,y:n.y},{x:n.x+(l.x-n.x)/2,y:n.y+(l.y-n.y)/2},{x:l.x,y:l.y}];(0,i.Jo)(e,{v:a.start,w:a.end,name:a.id},{...a,arrowTypeEnd:a.arrowTypeEnd,arrowTypeStart:a.arrowTypeStart,points:c,classes:"edge-thickness-normal edge-pattern-solid flowchart-link LS-a1 LE-b1"},void 0,"block",o,r),a.label&&(await(0,i.jP)(e,{...a,label:a.label,labelStyle:"stroke: #333; stroke-width: 1.5px;fill:none;",arrowTypeEnd:a.arrowTypeEnd,arrowTypeStart:a.arrowTypeStart,points:c,classes:"edge-thickness-normal edge-pattern-solid flowchart-link LS-a1 LE-b1"}),(0,i.T_)({...a,x:c[1].x,y:c[1].y},{originalPath:c}))}}}(0,o.K2)(J,"setBlockSizes"),(0,o.K2)(Z,"layoutBlocks"),(0,o.K2)(Q,"findBounds"),(0,o.K2)(V,"layout"),(0,o.K2)(ee,"getNodeFromBlock"),(0,o.K2)(te,"calculateBlockSize"),(0,o.K2)(se,"insertBlockPositioned"),(0,o.K2)(ie,"performOperations"),(0,o.K2)(ne,"calculateBlockSizes"),(0,o.K2)(re,"insertBlocks"),(0,o.K2)(oe,"insertEdges");var ae=(0,o.K2)((function(e,t){return t.db.getClasses()}),"getClasses"),le={parser:p,db:j,renderer:{draw:(0,o.K2)((async function(e,t,s,n){const{securityLevel:r,block:a}=(0,o.zj)(),l=n.db;let c;"sandbox"===r&&(c=(0,h.Ltv)("#i"+t));const d="sandbox"===r?(0,h.Ltv)(c.nodes()[0].contentDocument.body):(0,h.Ltv)("body"),u="sandbox"===r?d.select(`[id="${t}"]`):(0,h.Ltv)(`[id="${t}"]`);(0,i.g0)(u,["point","circle","cross"],n.type,t);const g=l.getBlocks(),p=l.getBlocksFlat(),y=l.getEdges(),b=u.insert("g").attr("class","block");await ne(b,g,l);const _=V(l);if(await re(b,g,l),await oe(b,y,p,l,t),_){const e=_,t=Math.max(1,Math.round(e.width/e.height*.125)),s=e.height+t+10,i=e.width+10,{useMaxWidth:n}=a;(0,o.a$)(u,s,i,!!n),o.Rm.debug("Here Bounds",_,e),u.attr("viewBox",`${e.x-5} ${e.y-5} ${e.width+10} ${e.height+10}`)}}),"draw"),getClasses:ae},styles:U}}}]); \ No newline at end of file diff --git a/assets/js/26cf8def.12487983.js b/assets/js/26cf8def.12487983.js new file mode 100644 index 00000000..db4c7fcd --- /dev/null +++ b/assets/js/26cf8def.12487983.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkbeacon_docs=self.webpackChunkbeacon_docs||[]).push([[693],{64504:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>d,contentTitle:()=>a,default:()=>g,frontMatter:()=>o,metadata:()=>c,toc:()=>u});var i=n(74848),r=n(28453),s=n(31198);const o={},a="Bug Reporting",c={id:"guides/bug-report",title:"Bug Reporting",description:"To enable this feature, please refer to the performance metrics page.",source:"@site/docs/guides/bug-report.mdx",sourceDirName:"guides",slug:"/guides/bug-report",permalink:"/guides/bug-report",draft:!1,unlisted:!1,editUrl:"https://github.com/airgap-it/beacon-docs/edit/main/src/docs/guides/bug-report.mdx",tags:[],version:"current",frontMatter:{},sidebar:"docs",previous:{title:"Performance Metrics",permalink:"/guides/metrics"},next:{title:"Migration Guide: Updating to Event Subscription",permalink:"/guides/migration-guide"}},d={},u=[{value:"Overview",id:"overview",level:2},{value:"Bug Report Object",id:"bug-report-object",level:2},{value:"Snapshot of Broken State",id:"snapshot-of-broken-state",level:2},{value:"Data Privacy",id:"data-privacy",level:2}];function h(e){const t={a:"a",admonition:"admonition",code:"code",h1:"h1",h2:"h2",header:"header",p:"p",pre:"pre",...(0,r.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(t.header,{children:(0,i.jsx)(t.h1,{id:"bug-reporting",children:"Bug Reporting"})}),"\n",(0,i.jsx)(t.admonition,{type:"warning",children:(0,i.jsxs)(t.p,{children:["To enable this feature, please refer to the ",(0,i.jsx)(t.a,{href:"/guides/metrics",children:"performance metrics page"}),"."]})}),"\n",(0,i.jsx)(t.h2,{id:"overview",children:"Overview"}),"\n",(0,i.jsx)(t.p,{children:"Beacon includes a bug reporting feature, designed to gather and transmit user generated issue. This document outlines the structure and usage of the bug reporting system."}),"\n",(0,i.jsx)(s.A,{src:"/img/bug_report_alert.png",alt:"Beacon Pairing"}),"\n",(0,i.jsx)(t.h2,{id:"bug-report-object",children:"Bug Report Object"}),"\n",(0,i.jsx)(t.p,{children:"When a user encounters a bug, they can submit a report which is sent to our backend for analysis.\nHere is an overview of each field in the bug report object sent:"}),"\n",(0,i.jsx)(t.pre,{children:(0,i.jsx)(t.code,{className:"language-ts",children:"{\n userId: string, // A unique identifier for the user submitting the report. This helps in tracking bugs specific to user accounts or in following up with the user if needed.\n sdkVersion: string, // The version of the SDK.\n title: string, // [User generated] A brief, descriptive title of the bug. This should be concise yet informative enough to give an overview of the issue.\n description: string, // [User generated] A detailed description of the bug. It should include what the user expected to happen and what actually happened. This field can contain error messages, observations, and any relevant details about the bug's behavior.\n steps: string, // [User generated] A step-by-step guide on how to reproduce the bug. This is crucial for developers to understand and fix the issue. Clear and precise steps can significantly speed up the debugging process.\n os: string, // The operating system of the user's device. This information is vital as some bugs are OS-specific.\n browser: string, // The browser on which the bug was encountered. Browser-specific bugs are common, and this information helps in pinpointing such issues.\n localStorage: string, // A stringified version of the user's Beacon local storage data. Beacon's local storage often contains user settings and other information that could be relevant in understanding the bug.\n wcStorage: string // A stringified version of the user's WalletConnect storage data.\n}\n"})}),"\n",(0,i.jsx)(t.h2,{id:"snapshot-of-broken-state",children:"Snapshot of Broken State"}),"\n",(0,i.jsx)(t.p,{children:"Beacon creates a copy of the user's storage data at the moment of disconnection. This snapshot includes a copy of local and WalletConnect storage data at the time of disconnection.\nThese snapshots provide us with a clear picture of the application's state at the time of the bug, which is crucial for understanding and rectifying the issue."}),"\n",(0,i.jsx)(t.h2,{id:"data-privacy",children:"Data Privacy"}),"\n",(0,i.jsx)(t.p,{children:"Sensitive information should not be included in bug reports unless it's crucial for the issue resolution. User-specific data is not transmitted."})]})}function g(e={}){const{wrapper:t}={...(0,r.R)(),...e.components};return t?(0,i.jsx)(t,{...e,children:(0,i.jsx)(h,{...e})}):h(e)}},31198:(e,t,n)=>{n.d(t,{A:()=>s});n(96540);var i=n(16864),r=n(74848);const s=function(e){let{src:t,alt:n}=e,s="50%";return(0,i.A)().width<650&&(s="100%"),(0,r.jsx)("div",{style:{textAlign:"center"},children:(0,r.jsx)("img",{src:t,alt:n,width:s})})}},16864:(e,t,n)=>{n.d(t,{A:()=>r});var i=n(96540);const r=function(){if("undefined"==typeof window)return{width:999,height:999};const[e,t]=(0,i.useState)({width:window.innerWidth,height:window.innerHeight});return(0,i.useEffect)((()=>{function e(){t({width:window.innerWidth,height:window.innerHeight})}return window.addEventListener("resize",e),()=>window.removeEventListener("resize",e)}),[]),e}},28453:(e,t,n)=>{n.d(t,{R:()=>o,x:()=>a});var i=n(96540);const r={},s=i.createContext(r);function o(e){const t=i.useContext(s);return i.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function a(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:o(e.components),i.createElement(s.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/290c534d.10227560.js b/assets/js/290c534d.10227560.js new file mode 100644 index 00000000..786a3f90 --- /dev/null +++ b/assets/js/290c534d.10227560.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkbeacon_docs=self.webpackChunkbeacon_docs||[]).push([[691],{73012:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>a,contentTitle:()=>r,default:()=>h,frontMatter:()=>i,metadata:()=>d,toc:()=>l});var s=n(74848),o=n(28453);const i={title:"Postmortem Incident 1",slug:"/post-mortem"},r=void 0,d={id:"post-mortem",title:"Postmortem Incident 1",description:"Date: 2021-10-24",source:"@site/docs/post-mortem.md",sourceDirName:".",slug:"/post-mortem",permalink:"/post-mortem",draft:!1,unlisted:!1,editUrl:"https://github.com/airgap-it/beacon-docs/edit/main/src/docs/post-mortem.md",tags:[],version:"current",frontMatter:{title:"Postmortem Incident 1",slug:"/post-mortem"},sidebar:"docs",previous:{title:"Tezos Sapling",permalink:"/blockchains/tezos-sapling"},next:{title:"Postmortem Incident 2",permalink:"/post-mortem-2"}},a={},l=[{value:"Lessons Learned",id:"lessons-learned",level:2},{value:"What went wrong",id:"what-went-wrong",level:3},{value:"Conclusion",id:"conclusion",level:3},{value:"Timeline",id:"timeline",level:2}];function c(e){const t={a:"a",br:"br",h2:"h2",h3:"h3",li:"li",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,o.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)(t.p,{children:[(0,s.jsx)(t.strong,{children:"Date:"})," 2021-10-24"]}),"\n",(0,s.jsxs)(t.p,{children:[(0,s.jsx)(t.strong,{children:"Authors:"})," Andreas Gassmann"]}),"\n",(0,s.jsxs)(t.p,{children:[(0,s.jsx)(t.strong,{children:"Status:"})," Complete, action items in progress"]}),"\n",(0,s.jsxs)(t.p,{children:[(0,s.jsx)(t.strong,{children:"Summary:"})," For about 1 hour (19:00 UTC - 20:00 UTC) the Beacon p2p network experienced a congestion and was mostly unusable or very slow."]}),"\n",(0,s.jsxs)(t.p,{children:[(0,s.jsx)(t.strong,{children:"Impact:"})," New connection attempts between dApps and wallets during that time usually timed out or were very slow. Existing connections persisted and did allow for messages to be sent back and forth, but they were also slower or did not work at all, depending on the node the user was connected to. You can visit the ",(0,s.jsx)(t.a,{href:"https://status.walletbeacon.io/d/_98Bc2k7z/dashboard?orgId=1&from=1635096600000&to=1635123599000",children:"Beacon Monitoring Dashboard"})," for more information regarding the network activity."]}),"\n",(0,s.jsxs)(t.p,{children:[(0,s.jsx)(t.strong,{children:"Root Causes:"})," Due to the high volume of users trying to pair their wallets at the same time, the Beacon network was overloaded and the requests were slowed down or timed out. The nodes struggled to handle the requests and were slowed down, which resulted in users retrying and adding additional load."]}),"\n",(0,s.jsxs)(t.p,{children:[(0,s.jsx)(t.strong,{children:"Trigger:"})," The ",(0,s.jsx)(t.a,{href:"https://neonz.xyz/",children:"Neonz"})," NFT sale went public at 19:00 UTC, which created a traffic spike around that time and lead to many users pairing their wallets at the same time."]}),"\n",(0,s.jsxs)(t.p,{children:[(0,s.jsx)(t.strong,{children:"Resolution:"})," The nodes started recovering about one hour after the initial outage. After 2 hours, the functionality was fully restored."]}),"\n",(0,s.jsxs)(t.p,{children:[(0,s.jsx)(t.strong,{children:"Detection:"})," The network was being used by the team around the time of the NFT drop."]}),"\n",(0,s.jsx)(t.p,{children:(0,s.jsx)(t.strong,{children:"Action Items:"})}),"\n",(0,s.jsxs)(t.table,{children:[(0,s.jsx)(t.thead,{children:(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.th,{children:"Action Item"}),(0,s.jsx)(t.th,{children:"Type"}),(0,s.jsx)(t.th,{children:"Owner"}),(0,s.jsx)(t.th,{children:"State"})]})}),(0,s.jsxs)(t.tbody,{children:[(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{children:"Add 5 additional nodes (8 total)"}),(0,s.jsx)(t.td,{children:"mitigate"}),(0,s.jsx)(t.td,{children:"lionel"}),(0,s.jsx)(t.td,{children:"PLANNED"})]}),(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{children:"Investigate if the Beacon Node config can be improved"}),(0,s.jsx)(t.td,{children:"mitigate"}),(0,s.jsx)(t.td,{children:"lionel"}),(0,s.jsx)(t.td,{children:"PLANNED"})]}),(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{children:"Investigate if Dendrite, the new version of Matrix Synapse, improves performance"}),(0,s.jsx)(t.td,{children:"mitigate"}),(0,s.jsx)(t.td,{children:"lionel"}),(0,s.jsx)(t.td,{children:"PLANNED"})]}),(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{children:"Improve reconnection logic in Beacon SDK"}),(0,s.jsx)(t.td,{children:"mitigate"}),(0,s.jsx)(t.td,{children:"andreas"}),(0,s.jsx)(t.td,{children:"PR OPEN"})]}),(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{children:"Add additional transport layer to Beacon SDK for web wallets, to reduce the general load on the network"}),(0,s.jsx)(t.td,{children:"improve"}),(0,s.jsx)(t.td,{children:"andreas"}),(0,s.jsx)(t.td,{children:"PLANNED"})]})]})]}),"\n",(0,s.jsx)(t.h2,{id:"lessons-learned",children:"Lessons Learned"}),"\n",(0,s.jsx)(t.h3,{id:"what-went-wrong",children:"What went wrong"}),"\n",(0,s.jsxs)(t.ul,{children:["\n",(0,s.jsxs)(t.li,{children:["\n",(0,s.jsxs)(t.p,{children:["At the start of the Neonz public sale at 19:00 UTC, all connected wallets were disconnected from the neonz.xyz dApp. We were able to pinpoint an issue in the Beacon integration of the Neonz website where a user would be disconnected from the Neonz dApp in a certain case. This resulted in all users having to re-pair their wallets again before being able to mint neonz. Because many people tried to mint Neonz at once, this caused a massive load on the Beacon Nodes.",(0,s.jsx)(t.br,{}),"\n","Thanks to EyeJack, part of the team behind the Neonz project, for providing the source code of the frontend and help us with our investigation."]}),"\n"]}),"\n",(0,s.jsxs)(t.li,{children:["\n",(0,s.jsx)(t.p,{children:'Due to the high load, some Beacon Nodes became temporarily unreachable. This triggered the reconnection logic within the Beacon SDK, routing all traffic to the next available Beacon Node, which then also became unavailable. This resulted in a "waterfall" effect that took down all 4 Beacon Node in the Beacon network.'}),"\n"]}),"\n"]}),"\n",(0,s.jsx)(t.h3,{id:"conclusion",children:"Conclusion"}),"\n",(0,s.jsxs)(t.ul,{children:["\n",(0,s.jsx)(t.li,{children:"We are planning to add more nodes to the Beacon network to handle such spikes better."}),"\n",(0,s.jsx)(t.li,{children:"The logic in the Beacon SDK was changed to better distribute reconnection attempts to different nodes."}),"\n",(0,s.jsx)(t.li,{children:"The additional transport layer for web wallets was bumped up in the priority list."}),"\n",(0,s.jsx)(t.li,{children:"The outage did not affect Browser Extensions."}),"\n"]}),"\n",(0,s.jsx)(t.h2,{id:"timeline",children:"Timeline"}),"\n",(0,s.jsx)(t.p,{children:"2021-10-24 (all times UTC)"}),"\n",(0,s.jsxs)(t.ul,{children:["\n",(0,s.jsxs)(t.li,{children:["19:00 ",(0,s.jsx)(t.a,{href:"https://neonz.xyz",children:"https://neonz.xyz"})," public sale goes live"]}),"\n",(0,s.jsx)(t.li,{children:"19:01 Connection became unstable"}),"\n",(0,s.jsx)(t.li,{children:"19:02 Connectivity issues were visible in the monitoring system"}),"\n",(0,s.jsx)(t.li,{children:"19:05 investigation started"}),"\n",(0,s.jsx)(t.li,{children:"20:00 (approx.) the network recovered"}),"\n",(0,s.jsx)(t.li,{children:"20:30 (approx.) the investigation showed that the network was overloaded, a meeting was scheduled for the next day to discuss possible mitigations for the future"}),"\n"]})]})}function h(e={}){const{wrapper:t}={...(0,o.R)(),...e.components};return t?(0,s.jsx)(t,{...e,children:(0,s.jsx)(c,{...e})}):c(e)}},28453:(e,t,n)=>{n.d(t,{R:()=>r,x:()=>d});var s=n(96540);const o={},i=s.createContext(o);function r(e){const t=s.useContext(i);return s.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function d(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(o):e.components||o:r(e.components),s.createElement(i.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/297a623e.0c48be19.js b/assets/js/297a623e.0c48be19.js new file mode 100644 index 00000000..a3a0dc28 --- /dev/null +++ b/assets/js/297a623e.0c48be19.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkbeacon_docs=self.webpackChunkbeacon_docs||[]).push([[9908],{28919:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>u,contentTitle:()=>i,default:()=>m,frontMatter:()=>s,metadata:()=>c,toc:()=>p});var a=n(74848),o=n(28453),r=n(11470),l=n(19365);const s={title:"Network"},i=void 0,c={id:"guides/network",title:"Network",description:"The Network configuration in Beacon SDK allows developers to specify the blockchain network their application will interact with.",source:"@site/docs/guides/network.mdx",sourceDirName:"guides",slug:"/guides/network",permalink:"/guides/network",draft:!1,unlisted:!1,editUrl:"https://github.com/airgap-it/beacon-docs/edit/main/src/docs/guides/network.mdx",tags:[],version:"current",frontMatter:{title:"Network"},sidebar:"docs",previous:{title:"Disconnecting from a Wallet",permalink:"/guides/disconnecting-a-wallet"},next:{title:"Request Permissions",permalink:"/guides/request-permissions"}},u={},p=[{value:"Mainnet With Custom RPC",id:"mainnet-with-custom-rpc",level:2},{value:"Testnet",id:"testnet",level:2},{value:"Testnet With Custom RPC",id:"testnet-with-custom-rpc",level:2},{value:"Custom Network",id:"custom-network",level:2}];function d(e){const t={code:"code",h2:"h2",p:"p",pre:"pre",...(0,o.R)(),...e.components};return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(t.p,{children:"The Network configuration in Beacon SDK allows developers to specify the blockchain network their application will interact with.\nThis includes using predefined networks like Mainnet or Testnet, as well as defining custom networks and RPC endpoints."}),"\n","\n",(0,a.jsx)(t.h2,{id:"mainnet-with-custom-rpc",children:"Mainnet With Custom RPC"}),"\n",(0,a.jsxs)(r.A,{groupId:"beaconOrTaquitoN1",defaultValue:"beacon",values:[{label:"Beacon",value:"beacon"},{label:"Taquito",value:"taquito"}],children:[(0,a.jsx)(l.A,{value:"beacon",children:(0,a.jsx)(t.pre,{children:(0,a.jsx)(t.code,{className:"language-ts",metastring:"live",live:!0,children:'// beacon mainnet network\nimport { DAppClient, NetworkType } from "@airgap/beacon-sdk";\n\nconst dAppClient = new DAppClient({ name: "Beacon Docs" });\n\n// Mainnet with different rpcUrl\nconst result = await dAppClient.requestPermissions({\n network: {\n type: NetworkType.MAINNET,\n rpcUrl: "https://mainnet.api.tez.ie",\n },\n});\n'})})}),(0,a.jsx)(l.A,{value:"taquito",children:(0,a.jsx)(t.pre,{children:(0,a.jsx)(t.code,{className:"language-ts",metastring:"live",live:!0,children:'// taquito mainnet network\nimport { TezosToolkit } from "@taquito/taquito";\nimport { BeaconWallet } from "@taquito/beacon-wallet";\nimport { NetworkType } from "@airgap/beacon-sdk";\n\nconst Tezos = new TezosToolkit("https://mainnet.api.tez.ie");\nconst wallet = new BeaconWallet({ name: "Beacon Docs Taquito" });\n\nTezos.setWalletProvider(wallet);\n\n// Mainnet with different rpcUrl\nconst result = await wallet.client.requestPermissions({\n network: {\n type: NetworkType.MAINNET,\n rpcUrl: "https://mainnet.api.tez.ie",\n },\n});\n'})})})]}),"\n",(0,a.jsx)(t.h2,{id:"testnet",children:"Testnet"}),"\n",(0,a.jsxs)(r.A,{groupId:"beaconOrTaquitoN2",defaultValue:"beacon",values:[{label:"Beacon",value:"beacon"},{label:"Taquito",value:"taquito"}],children:[(0,a.jsx)(l.A,{value:"beacon",children:(0,a.jsx)(t.pre,{children:(0,a.jsx)(t.code,{className:"language-ts",metastring:"live",live:!0,children:'// beacon edonet network\nimport { DAppClient, NetworkType } from "@airgap/beacon-sdk";\n\nconst dAppClient = new DAppClient({\n name: "Beacon Docs",\n preferredNetwork: NetworkType.EDONET,\n});\n\n// Edonet with default rpcUrl\nconst result = await dAppClient.requestPermissions({\n network: {\n type: NetworkType.EDONET,\n },\n});\n'})})}),(0,a.jsx)(l.A,{value:"taquito",children:(0,a.jsx)(t.pre,{children:(0,a.jsx)(t.code,{className:"language-ts",metastring:"live",live:!0,children:'// taquito edonet network\nimport { TezosToolkit } from "@taquito/taquito";\nimport { BeaconWallet } from "@taquito/beacon-wallet";\nimport { NetworkType } from "@airgap/beacon-sdk";\n\nconst Tezos = new TezosToolkit("https://mainnet.api.tez.ie");\nconst wallet = new BeaconWallet({\n name: "Beacon Docs",\n preferredNetwork: NetworkType.EDONET,\n});\n\nTezos.setWalletProvider(wallet);\n\n// Edonet with default rpcUrl\nconst result = await wallet.client.requestPermissions({\n network: {\n type: NetworkType.EDONET,\n },\n});\n'})})})]}),"\n",(0,a.jsx)(t.h2,{id:"testnet-with-custom-rpc",children:"Testnet With Custom RPC"}),"\n",(0,a.jsxs)(r.A,{groupId:"beaconOrTaquitoN3",defaultValue:"beacon",values:[{label:"Beacon",value:"beacon"},{label:"Taquito",value:"taquito"}],children:[(0,a.jsx)(l.A,{value:"beacon",children:(0,a.jsx)(t.pre,{children:(0,a.jsx)(t.code,{className:"language-ts",metastring:"live",live:!0,children:'// beacon edonet network with RPC\nimport { DAppClient, NetworkType } from "@airgap/beacon-sdk";\n\nconst dAppClient = new DAppClient({\n name: "Beacon Docs",\n preferredNetwork: NetworkType.EDONET,\n});\n\n// Edonet with different rpcUrl\nconst result = await dAppClient.requestPermissions({\n network: {\n type: NetworkType.EDONET,\n rpcUrl: "https://testnet-tezos.giganode.io/",\n },\n});\n'})})}),(0,a.jsx)(l.A,{value:"taquito",children:(0,a.jsx)(t.pre,{children:(0,a.jsx)(t.code,{className:"language-ts",metastring:"live",live:!0,children:'// taquito edonet network with RPC\nimport { TezosToolkit } from "@taquito/taquito";\nimport { BeaconWallet } from "@taquito/beacon-wallet";\nimport { NetworkType } from "@airgap/beacon-sdk";\n\nconst Tezos = new TezosToolkit("https://mainnet.api.tez.ie");\nconst wallet = new BeaconWallet({\n name: "Beacon Docs",\n preferredNetwork: NetworkType.EDONET,\n});\n\nTezos.setWalletProvider(wallet);\n\n// Edonet with different rpcUrl\nconst result = await wallet.client.requestPermissions({\n network: {\n type: NetworkType.EDONET,\n rpcUrl: "https://testnet-tezos.giganode.io/",\n },\n});\n'})})})]}),"\n",(0,a.jsx)(t.h2,{id:"custom-network",children:"Custom Network"}),"\n",(0,a.jsxs)(r.A,{groupId:"beaconOrTaquitoN4",defaultValue:"beacon",values:[{label:"Beacon",value:"beacon"},{label:"Taquito",value:"taquito"}],children:[(0,a.jsx)(l.A,{value:"beacon",children:(0,a.jsx)(t.pre,{children:(0,a.jsx)(t.code,{className:"language-ts",metastring:"live",live:!0,children:'// beacon custom network\nimport { DAppClient, NetworkType } from "@airgap/beacon-sdk";\n\nconst dAppClient = new DAppClient({\n name: "Beacon Docs",\n preferredNetwork: NetworkType.CUSTOM,\n});\n\n// Custom network (eg. local development or latest testnet)\nconst result = await dAppClient.requestPermissions({\n network: {\n type: NetworkType.CUSTOM,\n name: "Local Node",\n rpcUrl: "http://localhost:8732/",\n },\n});\n'})})}),(0,a.jsx)(l.A,{value:"taquito",children:(0,a.jsx)(t.pre,{children:(0,a.jsx)(t.code,{className:"language-ts",metastring:"live",live:!0,children:'// taquito custom network\nimport { TezosToolkit } from "@taquito/taquito";\nimport { BeaconWallet } from "@taquito/beacon-wallet";\nimport { NetworkType } from "@airgap/beacon-sdk";\n\nconst Tezos = new TezosToolkit("https://mainnet.api.tez.ie");\nconst wallet = new BeaconWallet({\n name: "Beacon Docs Taquito",\n preferredNetwork: NetworkType.CUSTOM,\n});\n\nTezos.setWalletProvider(wallet);\n\n// Custom network (eg. local development or latest testnet)\nconst result = await wallet.client.requestPermissions({\n network: {\n type: NetworkType.CUSTOM,\n name: "Local Node",\n rpcUrl: "http://localhost:8732/",\n },\n});\n'})})})]})]})}function m(e={}){const{wrapper:t}={...(0,o.R)(),...e.components};return t?(0,a.jsx)(t,{...e,children:(0,a.jsx)(d,{...e})}):d(e)}},19365:(e,t,n)=>{n.d(t,{A:()=>l});n(96540);var a=n(34164);const o={tabItem:"tabItem_Ymn6"};var r=n(74848);function l(e){let{children:t,hidden:n,className:l}=e;return(0,r.jsx)("div",{role:"tabpanel",className:(0,a.A)(o.tabItem,l),hidden:n,children:t})}},11470:(e,t,n)=>{n.d(t,{A:()=>N});var a=n(96540),o=n(34164),r=n(23104),l=n(56347),s=n(205),i=n(57485),c=n(31682),u=n(70679);function p(e){return a.Children.toArray(e).filter((e=>"\n"!==e)).map((e=>{if(!e||(0,a.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}function d(e){const{values:t,children:n}=e;return(0,a.useMemo)((()=>{const e=t??function(e){return p(e).map((e=>{let{props:{value:t,label:n,attributes:a,default:o}}=e;return{value:t,label:n,attributes:a,default:o}}))}(n);return function(e){const t=(0,c.XI)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[t,n])}function m(e){let{value:t,tabValues:n}=e;return n.some((e=>e.value===t))}function w(e){let{queryString:t=!1,groupId:n}=e;const o=(0,l.W6)(),r=function(e){let{queryString:t=!1,groupId:n}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!n)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return n??null}({queryString:t,groupId:n});return[(0,i.aZ)(r),(0,a.useCallback)((e=>{if(!r)return;const t=new URLSearchParams(o.location.search);t.set(r,e),o.replace({...o.location,search:t.toString()})}),[r,o])]}function h(e){const{defaultValue:t,queryString:n=!1,groupId:o}=e,r=d(e),[l,i]=(0,a.useState)((()=>function(e){let{defaultValue:t,tabValues:n}=e;if(0===n.length)throw new Error("Docusaurus error: the component requires at least one children component");if(t){if(!m({value:t,tabValues:n}))throw new Error(`Docusaurus error: The has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${n.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const a=n.find((e=>e.default))??n[0];if(!a)throw new Error("Unexpected error: 0 tabValues");return a.value}({defaultValue:t,tabValues:r}))),[c,p]=w({queryString:n,groupId:o}),[h,f]=function(e){let{groupId:t}=e;const n=function(e){return e?`docusaurus.tab.${e}`:null}(t),[o,r]=(0,u.Dv)(n);return[o,(0,a.useCallback)((e=>{n&&r.set(e)}),[n,r])]}({groupId:o}),b=(()=>{const e=c??h;return m({value:e,tabValues:r})?e:null})();(0,s.A)((()=>{b&&i(b)}),[b]);return{selectedValue:l,selectValue:(0,a.useCallback)((e=>{if(!m({value:e,tabValues:r}))throw new Error(`Can't select invalid tab value=${e}`);i(e),p(e),f(e)}),[p,f,r]),tabValues:r}}var f=n(92303);const b={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};var k=n(74848);function v(e){let{className:t,block:n,selectedValue:a,selectValue:l,tabValues:s}=e;const i=[],{blockElementScrollPositionUntilNextRender:c}=(0,r.a_)(),u=e=>{const t=e.currentTarget,n=i.indexOf(t),o=s[n].value;o!==a&&(c(t),l(o))},p=e=>{let t=null;switch(e.key){case"Enter":u(e);break;case"ArrowRight":{const n=i.indexOf(e.currentTarget)+1;t=i[n]??i[0];break}case"ArrowLeft":{const n=i.indexOf(e.currentTarget)-1;t=i[n]??i[i.length-1];break}}t?.focus()};return(0,k.jsx)("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,o.A)("tabs",{"tabs--block":n},t),children:s.map((e=>{let{value:t,label:n,attributes:r}=e;return(0,k.jsx)("li",{role:"tab",tabIndex:a===t?0:-1,"aria-selected":a===t,ref:e=>i.push(e),onKeyDown:p,onClick:u,...r,className:(0,o.A)("tabs__item",b.tabItem,r?.className,{"tabs__item--active":a===t}),children:n??t},t)}))})}function T(e){let{lazy:t,children:n,selectedValue:r}=e;const l=(Array.isArray(n)?n:[n]).filter(Boolean);if(t){const e=l.find((e=>e.props.value===r));return e?(0,a.cloneElement)(e,{className:(0,o.A)("margin-top--md",e.props.className)}):null}return(0,k.jsx)("div",{className:"margin-top--md",children:l.map(((e,t)=>(0,a.cloneElement)(e,{key:t,hidden:e.props.value!==r})))})}function g(e){const t=h(e);return(0,k.jsxs)("div",{className:(0,o.A)("tabs-container",b.tabList),children:[(0,k.jsx)(v,{...t,...e}),(0,k.jsx)(T,{...t,...e})]})}function N(e){const t=(0,f.A)();return(0,k.jsx)(g,{...e,children:p(e.children)},String(t))}},28453:(e,t,n)=>{n.d(t,{R:()=>l,x:()=>s});var a=n(96540);const o={},r=a.createContext(o);function l(e){const t=a.useContext(r);return a.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function s(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(o):e.components||o:l(e.components),a.createElement(r.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/2d4036fa.8a16ac7b.js b/assets/js/2d4036fa.8a16ac7b.js new file mode 100644 index 00000000..0b915634 --- /dev/null +++ b/assets/js/2d4036fa.8a16ac7b.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkbeacon_docs=self.webpackChunkbeacon_docs||[]).push([[4905],{53542:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>u,contentTitle:()=>i,default:()=>f,frontMatter:()=>l,metadata:()=>c,toc:()=>d});var r=t(74848),a=t(28453),o=t(11470),s=t(19365);const l={title:"Different Beacon Node"},i=void 0,c={id:"advanced/different-node",title:"Different Beacon Node",description:"You can configure the dApp or Wallet to connect to a different beacon node.",source:"@site/docs/advanced/different-node.mdx",sourceDirName:"advanced",slug:"/advanced/different-node",permalink:"/advanced/different-node",draft:!1,unlisted:!1,editUrl:"https://github.com/airgap-it/beacon-docs/edit/main/src/docs/advanced/different-node.mdx",tags:[],version:"current",frontMatter:{title:"Different Beacon Node"},sidebar:"docs",previous:{title:"Custom Block Explorer",permalink:"/advanced/custom-block-explorer"},next:{title:"Debug Wallet",permalink:"/advanced/debug-wallet"}},u={},d=[];function p(e){const n={admonition:"admonition",code:"code",p:"p",pre:"pre",...(0,a.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(n.p,{children:"You can configure the dApp or Wallet to connect to a different beacon node.\nMake sure the servers you use are whitelisted in the beacon network and federation is working correctly."}),"\n",(0,r.jsxs)(o.A,{groupId:"beaconOrTaquitoDN",defaultValue:"beacon",values:[{label:"Beacon",value:"beacon"},{label:"Taquito",value:"taquito"}],children:[(0,r.jsx)(s.A,{value:"beacon",children:(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-ts",metastring:"live",live:!0,children:'// beacon different node\nimport { DAppClient, Regions } from "@airgap/beacon-sdk";\n\nconst dAppClient = new DAppClient({\n name: "Beacon Docs",\n matrixNodes: {\n [Regions.EUROPE_WEST]: ["beacon-node-0.papers.tech:8448"],\n },\n});\n\ntry {\n console.log("Requesting permissions...");\n const permissions = await dAppClient.requestPermissions();\n console.log("Got permissions:", permissions.address);\n} catch (error) {\n console.error("Got error:", error);\n}\n'})})}),(0,r.jsx)(s.A,{value:"taquito",children:(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-ts",metastring:"live",live:!0,children:'// taquito different node\nimport { TezosToolkit } from "@taquito/taquito";\nimport { BeaconWallet } from "@taquito/beacon-wallet";\nimport { Regions } from "@airgap/beacon-sdk";\n\nconst Tezos = new TezosToolkit("https://mainnet.api.tez.ie");\nconst wallet = new BeaconWallet({\n name: "Beacon Docs Taquito",\n matrixNodes: {\n [Regions.EUROPE_WEST]: ["beacon-node-0.papers.tech:8448"],\n },\n});\n\nTezos.setWalletProvider(wallet);\n\ntry {\n const permissions = await wallet.client.requestPermissions();\n console.log("Got permissions:", permissions.address);\n} catch (error) {\n console.error("Got error:", error);\n}\n'})})})]}),"\n",(0,r.jsx)(n.admonition,{type:"tip",children:(0,r.jsx)(n.p,{children:"The beacon-sdk deterministically chooses one of the nodes in the array. Changing the array of nodes will most likely lead to users losing their connection."})})]})}function f(e={}){const{wrapper:n}={...(0,a.R)(),...e.components};return n?(0,r.jsx)(n,{...e,children:(0,r.jsx)(p,{...e})}):p(e)}},19365:(e,n,t)=>{t.d(n,{A:()=>s});t(96540);var r=t(34164);const a={tabItem:"tabItem_Ymn6"};var o=t(74848);function s(e){let{children:n,hidden:t,className:s}=e;return(0,o.jsx)("div",{role:"tabpanel",className:(0,r.A)(a.tabItem,s),hidden:t,children:n})}},11470:(e,n,t)=>{t.d(n,{A:()=>k});var r=t(96540),a=t(34164),o=t(23104),s=t(56347),l=t(205),i=t(57485),c=t(31682),u=t(70679);function d(e){return r.Children.toArray(e).filter((e=>"\n"!==e)).map((e=>{if(!e||(0,r.isValidElement)(e)&&function(e){const{props:n}=e;return!!n&&"object"==typeof n&&"value"in n}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}function p(e){const{values:n,children:t}=e;return(0,r.useMemo)((()=>{const e=n??function(e){return d(e).map((e=>{let{props:{value:n,label:t,attributes:r,default:a}}=e;return{value:n,label:t,attributes:r,default:a}}))}(t);return function(e){const n=(0,c.XI)(e,((e,n)=>e.value===n.value));if(n.length>0)throw new Error(`Docusaurus error: Duplicate values "${n.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[n,t])}function f(e){let{value:n,tabValues:t}=e;return t.some((e=>e.value===n))}function m(e){let{queryString:n=!1,groupId:t}=e;const a=(0,s.W6)(),o=function(e){let{queryString:n=!1,groupId:t}=e;if("string"==typeof n)return n;if(!1===n)return null;if(!0===n&&!t)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return t??null}({queryString:n,groupId:t});return[(0,i.aZ)(o),(0,r.useCallback)((e=>{if(!o)return;const n=new URLSearchParams(a.location.search);n.set(o,e),a.replace({...a.location,search:n.toString()})}),[o,a])]}function b(e){const{defaultValue:n,queryString:t=!1,groupId:a}=e,o=p(e),[s,i]=(0,r.useState)((()=>function(e){let{defaultValue:n,tabValues:t}=e;if(0===t.length)throw new Error("Docusaurus error: the component requires at least one children component");if(n){if(!f({value:n,tabValues:t}))throw new Error(`Docusaurus error: The has a defaultValue "${n}" but none of its children has the corresponding value. Available values are: ${t.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return n}const r=t.find((e=>e.default))??t[0];if(!r)throw new Error("Unexpected error: 0 tabValues");return r.value}({defaultValue:n,tabValues:o}))),[c,d]=m({queryString:t,groupId:a}),[b,h]=function(e){let{groupId:n}=e;const t=function(e){return e?`docusaurus.tab.${e}`:null}(n),[a,o]=(0,u.Dv)(t);return[a,(0,r.useCallback)((e=>{t&&o.set(e)}),[t,o])]}({groupId:a}),v=(()=>{const e=c??b;return f({value:e,tabValues:o})?e:null})();(0,l.A)((()=>{v&&i(v)}),[v]);return{selectedValue:s,selectValue:(0,r.useCallback)((e=>{if(!f({value:e,tabValues:o}))throw new Error(`Can't select invalid tab value=${e}`);i(e),d(e),h(e)}),[d,h,o]),tabValues:o}}var h=t(92303);const v={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};var g=t(74848);function x(e){let{className:n,block:t,selectedValue:r,selectValue:s,tabValues:l}=e;const i=[],{blockElementScrollPositionUntilNextRender:c}=(0,o.a_)(),u=e=>{const n=e.currentTarget,t=i.indexOf(n),a=l[t].value;a!==r&&(c(n),s(a))},d=e=>{let n=null;switch(e.key){case"Enter":u(e);break;case"ArrowRight":{const t=i.indexOf(e.currentTarget)+1;n=i[t]??i[0];break}case"ArrowLeft":{const t=i.indexOf(e.currentTarget)-1;n=i[t]??i[i.length-1];break}}n?.focus()};return(0,g.jsx)("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,a.A)("tabs",{"tabs--block":t},n),children:l.map((e=>{let{value:n,label:t,attributes:o}=e;return(0,g.jsx)("li",{role:"tab",tabIndex:r===n?0:-1,"aria-selected":r===n,ref:e=>i.push(e),onKeyDown:d,onClick:u,...o,className:(0,a.A)("tabs__item",v.tabItem,o?.className,{"tabs__item--active":r===n}),children:t??n},n)}))})}function w(e){let{lazy:n,children:t,selectedValue:o}=e;const s=(Array.isArray(t)?t:[t]).filter(Boolean);if(n){const e=s.find((e=>e.props.value===o));return e?(0,r.cloneElement)(e,{className:(0,a.A)("margin-top--md",e.props.className)}):null}return(0,g.jsx)("div",{className:"margin-top--md",children:s.map(((e,n)=>(0,r.cloneElement)(e,{key:n,hidden:e.props.value!==o})))})}function y(e){const n=b(e);return(0,g.jsxs)("div",{className:(0,a.A)("tabs-container",v.tabList),children:[(0,g.jsx)(x,{...n,...e}),(0,g.jsx)(w,{...n,...e})]})}function k(e){const n=(0,h.A)();return(0,g.jsx)(y,{...e,children:d(e.children)},String(n))}},28453:(e,n,t)=>{t.d(n,{R:()=>s,x:()=>l});var r=t(96540);const a={},o=r.createContext(a);function s(e){const n=r.useContext(o);return r.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function l(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(a):e.components||a:s(e.components),r.createElement(o.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/300.96924fff.js b/assets/js/300.96924fff.js new file mode 100644 index 00000000..cbee78fd --- /dev/null +++ b/assets/js/300.96924fff.js @@ -0,0 +1,2191 @@ +exports.id = 300; +exports.ids = [300]; +exports.modules = { + +/***/ 97375: +/***/ (function(module) { + +!function(e,t){ true?module.exports=t():0}(this,(function(){"use strict";return function(e,t){var r=t.prototype,n=r.format;r.format=function(e){var t=this,r=this.$locale();if(!this.isValid())return n.bind(this)(e);var s=this.$utils(),a=(e||"YYYY-MM-DDTHH:mm:ssZ").replace(/\[([^\]]+)]|Q|wo|ww|w|WW|W|zzz|z|gggg|GGGG|Do|X|x|k{1,2}|S/g,(function(e){switch(e){case"Q":return Math.ceil((t.$M+1)/3);case"Do":return r.ordinal(t.$D);case"gggg":return t.weekYear();case"GGGG":return t.isoWeekYear();case"wo":return r.ordinal(t.week(),"W");case"w":case"ww":return s.s(t.week(),"w"===e?1:2,"0");case"W":case"WW":return s.s(t.isoWeek(),"W"===e?1:2,"0");case"k":case"kk":return s.s(String(0===t.$H?24:t.$H),"k"===e?1:2,"0");case"X":return Math.floor(t.$d.getTime()/1e3);case"x":return t.$d.getTime();case"z":return"["+t.offsetName()+"]";case"zzz":return"["+t.offsetName("long")+"]";default:return e}}));return n.bind(this)(a)}}})); + +/***/ }), + +/***/ 90445: +/***/ (function(module) { + +!function(e,t){ true?module.exports=t():0}(this,(function(){"use strict";var e={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},t=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|YYYY|YY?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,n=/\d\d/,r=/\d\d?/,i=/\d*[^-_:/,()\s\d]+/,o={},s=function(e){return(e=+e)+(e>68?1900:2e3)};var a=function(e){return function(t){this[e]=+t}},f=[/[+-]\d\d:?(\d\d)?|Z/,function(e){(this.zone||(this.zone={})).offset=function(e){if(!e)return 0;if("Z"===e)return 0;var t=e.match(/([+-]|\d\d)/g),n=60*t[1]+(+t[2]||0);return 0===n?0:"+"===t[0]?-n:n}(e)}],h=function(e){var t=o[e];return t&&(t.indexOf?t:t.s.concat(t.f))},u=function(e,t){var n,r=o.meridiem;if(r){for(var i=1;i<=24;i+=1)if(e.indexOf(r(i,0,t))>-1){n=i>12;break}}else n=e===(t?"pm":"PM");return n},d={A:[i,function(e){this.afternoon=u(e,!1)}],a:[i,function(e){this.afternoon=u(e,!0)}],S:[/\d/,function(e){this.milliseconds=100*+e}],SS:[n,function(e){this.milliseconds=10*+e}],SSS:[/\d{3}/,function(e){this.milliseconds=+e}],s:[r,a("seconds")],ss:[r,a("seconds")],m:[r,a("minutes")],mm:[r,a("minutes")],H:[r,a("hours")],h:[r,a("hours")],HH:[r,a("hours")],hh:[r,a("hours")],D:[r,a("day")],DD:[n,a("day")],Do:[i,function(e){var t=o.ordinal,n=e.match(/\d+/);if(this.day=n[0],t)for(var r=1;r<=31;r+=1)t(r).replace(/\[|\]/g,"")===e&&(this.day=r)}],M:[r,a("month")],MM:[n,a("month")],MMM:[i,function(e){var t=h("months"),n=(h("monthsShort")||t.map((function(e){return e.slice(0,3)}))).indexOf(e)+1;if(n<1)throw new Error;this.month=n%12||n}],MMMM:[i,function(e){var t=h("months").indexOf(e)+1;if(t<1)throw new Error;this.month=t%12||t}],Y:[/[+-]?\d+/,a("year")],YY:[n,function(e){this.year=s(e)}],YYYY:[/\d{4}/,a("year")],Z:f,ZZ:f};function c(n){var r,i;r=n,i=o&&o.formats;for(var s=(n=r.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(t,n,r){var o=r&&r.toUpperCase();return n||i[r]||e[r]||i[o].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(e,t,n){return t||n.slice(1)}))}))).match(t),a=s.length,f=0;f-1)return new Date(("X"===t?1e3:1)*e);var r=c(t)(e),i=r.year,o=r.month,s=r.day,a=r.hours,f=r.minutes,h=r.seconds,u=r.milliseconds,d=r.zone,l=new Date,m=s||(i||o?1:l.getDate()),M=i||l.getFullYear(),Y=0;i&&!o||(Y=o>0?o-1:l.getMonth());var p=a||0,v=f||0,D=h||0,g=u||0;return d?new Date(Date.UTC(M,Y,m,p,v,D,g+60*d.offset*1e3)):n?new Date(Date.UTC(M,Y,m,p,v,D,g)):new Date(M,Y,m,p,v,D,g)}catch(e){return new Date("")}}(t,a,r),this.init(),d&&!0!==d&&(this.$L=this.locale(d).$L),u&&t!=this.format(a)&&(this.$d=new Date("")),o={}}else if(a instanceof Array)for(var l=a.length,m=1;m<=l;m+=1){s[1]=a[m-1];var M=n.apply(this,s);if(M.isValid()){this.$d=M.$d,this.$L=M.$L,this.init();break}m===l&&(this.$d=new Date(""))}else i.call(this,e)}}})); + +/***/ }), + +/***/ 68313: +/***/ (function(module) { + +!function(e,t){ true?module.exports=t():0}(this,(function(){"use strict";var e="day";return function(t,i,s){var a=function(t){return t.add(4-t.isoWeekday(),e)},d=i.prototype;d.isoWeekYear=function(){return a(this).year()},d.isoWeek=function(t){if(!this.$utils().u(t))return this.add(7*(t-this.isoWeek()),e);var i,d,n,o,r=a(this),u=(i=this.isoWeekYear(),d=this.$u,n=(d?s.utc:s)().year(i).startOf("year"),o=4-n.isoWeekday(),n.isoWeekday()>4&&(o+=7),n.add(o,e));return r.diff(u,"week")+1},d.isoWeekday=function(e){return this.$utils().u(e)?this.day()||7:this.day(this.day()%7?e:e-7)};var n=d.startOf;d.startOf=function(e,t){var i=this.$utils(),s=!!i.u(t)||t;return"isoweek"===i.p(e)?s?this.date(this.date()-(this.isoWeekday()-1)).startOf("day"):this.date(this.date()-1-(this.isoWeekday()-1)+7).endOf("day"):n.bind(this)(e,t)}}})); + +/***/ }), + +/***/ 39300: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +"use strict"; +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ diagram: () => (/* binding */ diagram) +/* harmony export */ }); +/* harmony import */ var _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(57323); +/* harmony import */ var _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(64994); +/* harmony import */ var _braintree_sanitize_url__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(16750); +/* harmony import */ var dayjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(74353); +/* harmony import */ var dayjs_plugin_isoWeek_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(68313); +/* harmony import */ var dayjs_plugin_customParseFormat_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(90445); +/* harmony import */ var dayjs_plugin_advancedFormat_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(97375); +/* harmony import */ var d3__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(20007); + + + +// src/diagrams/gantt/parser/gantt.jison +var parser = function() { + var o = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(k, v, o2, l) { + for (o2 = o2 || {}, l = k.length; l--; o2[k[l]] = v) ; + return o2; + }, "o"), $V0 = [6, 8, 10, 12, 13, 14, 15, 16, 17, 18, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 33, 35, 36, 38, 40], $V1 = [1, 26], $V2 = [1, 27], $V3 = [1, 28], $V4 = [1, 29], $V5 = [1, 30], $V6 = [1, 31], $V7 = [1, 32], $V8 = [1, 33], $V9 = [1, 34], $Va = [1, 9], $Vb = [1, 10], $Vc = [1, 11], $Vd = [1, 12], $Ve = [1, 13], $Vf = [1, 14], $Vg = [1, 15], $Vh = [1, 16], $Vi = [1, 19], $Vj = [1, 20], $Vk = [1, 21], $Vl = [1, 22], $Vm = [1, 23], $Vn = [1, 25], $Vo = [1, 35]; + var parser2 = { + trace: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function trace() { + }, "trace"), + yy: {}, + symbols_: { "error": 2, "start": 3, "gantt": 4, "document": 5, "EOF": 6, "line": 7, "SPACE": 8, "statement": 9, "NL": 10, "weekday": 11, "weekday_monday": 12, "weekday_tuesday": 13, "weekday_wednesday": 14, "weekday_thursday": 15, "weekday_friday": 16, "weekday_saturday": 17, "weekday_sunday": 18, "weekend": 19, "weekend_friday": 20, "weekend_saturday": 21, "dateFormat": 22, "inclusiveEndDates": 23, "topAxis": 24, "axisFormat": 25, "tickInterval": 26, "excludes": 27, "includes": 28, "todayMarker": 29, "title": 30, "acc_title": 31, "acc_title_value": 32, "acc_descr": 33, "acc_descr_value": 34, "acc_descr_multiline_value": 35, "section": 36, "clickStatement": 37, "taskTxt": 38, "taskData": 39, "click": 40, "callbackname": 41, "callbackargs": 42, "href": 43, "clickStatementDebug": 44, "$accept": 0, "$end": 1 }, + terminals_: { 2: "error", 4: "gantt", 6: "EOF", 8: "SPACE", 10: "NL", 12: "weekday_monday", 13: "weekday_tuesday", 14: "weekday_wednesday", 15: "weekday_thursday", 16: "weekday_friday", 17: "weekday_saturday", 18: "weekday_sunday", 20: "weekend_friday", 21: "weekend_saturday", 22: "dateFormat", 23: "inclusiveEndDates", 24: "topAxis", 25: "axisFormat", 26: "tickInterval", 27: "excludes", 28: "includes", 29: "todayMarker", 30: "title", 31: "acc_title", 32: "acc_title_value", 33: "acc_descr", 34: "acc_descr_value", 35: "acc_descr_multiline_value", 36: "section", 38: "taskTxt", 39: "taskData", 40: "click", 41: "callbackname", 42: "callbackargs", 43: "href" }, + productions_: [0, [3, 3], [5, 0], [5, 2], [7, 2], [7, 1], [7, 1], [7, 1], [11, 1], [11, 1], [11, 1], [11, 1], [11, 1], [11, 1], [11, 1], [19, 1], [19, 1], [9, 1], [9, 1], [9, 1], [9, 1], [9, 1], [9, 1], [9, 1], [9, 1], [9, 1], [9, 1], [9, 1], [9, 2], [9, 2], [9, 1], [9, 1], [9, 1], [9, 2], [37, 2], [37, 3], [37, 3], [37, 4], [37, 3], [37, 4], [37, 2], [44, 2], [44, 3], [44, 3], [44, 4], [44, 3], [44, 4], [44, 2]], + performAction: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function anonymous(yytext, yyleng, yylineno, yy, yystate, $$, _$) { + var $0 = $$.length - 1; + switch (yystate) { + case 1: + return $$[$0 - 1]; + break; + case 2: + this.$ = []; + break; + case 3: + $$[$0 - 1].push($$[$0]); + this.$ = $$[$0 - 1]; + break; + case 4: + case 5: + this.$ = $$[$0]; + break; + case 6: + case 7: + this.$ = []; + break; + case 8: + yy.setWeekday("monday"); + break; + case 9: + yy.setWeekday("tuesday"); + break; + case 10: + yy.setWeekday("wednesday"); + break; + case 11: + yy.setWeekday("thursday"); + break; + case 12: + yy.setWeekday("friday"); + break; + case 13: + yy.setWeekday("saturday"); + break; + case 14: + yy.setWeekday("sunday"); + break; + case 15: + yy.setWeekend("friday"); + break; + case 16: + yy.setWeekend("saturday"); + break; + case 17: + yy.setDateFormat($$[$0].substr(11)); + this.$ = $$[$0].substr(11); + break; + case 18: + yy.enableInclusiveEndDates(); + this.$ = $$[$0].substr(18); + break; + case 19: + yy.TopAxis(); + this.$ = $$[$0].substr(8); + break; + case 20: + yy.setAxisFormat($$[$0].substr(11)); + this.$ = $$[$0].substr(11); + break; + case 21: + yy.setTickInterval($$[$0].substr(13)); + this.$ = $$[$0].substr(13); + break; + case 22: + yy.setExcludes($$[$0].substr(9)); + this.$ = $$[$0].substr(9); + break; + case 23: + yy.setIncludes($$[$0].substr(9)); + this.$ = $$[$0].substr(9); + break; + case 24: + yy.setTodayMarker($$[$0].substr(12)); + this.$ = $$[$0].substr(12); + break; + case 27: + yy.setDiagramTitle($$[$0].substr(6)); + this.$ = $$[$0].substr(6); + break; + case 28: + this.$ = $$[$0].trim(); + yy.setAccTitle(this.$); + break; + case 29: + case 30: + this.$ = $$[$0].trim(); + yy.setAccDescription(this.$); + break; + case 31: + yy.addSection($$[$0].substr(8)); + this.$ = $$[$0].substr(8); + break; + case 33: + yy.addTask($$[$0 - 1], $$[$0]); + this.$ = "task"; + break; + case 34: + this.$ = $$[$0 - 1]; + yy.setClickEvent($$[$0 - 1], $$[$0], null); + break; + case 35: + this.$ = $$[$0 - 2]; + yy.setClickEvent($$[$0 - 2], $$[$0 - 1], $$[$0]); + break; + case 36: + this.$ = $$[$0 - 2]; + yy.setClickEvent($$[$0 - 2], $$[$0 - 1], null); + yy.setLink($$[$0 - 2], $$[$0]); + break; + case 37: + this.$ = $$[$0 - 3]; + yy.setClickEvent($$[$0 - 3], $$[$0 - 2], $$[$0 - 1]); + yy.setLink($$[$0 - 3], $$[$0]); + break; + case 38: + this.$ = $$[$0 - 2]; + yy.setClickEvent($$[$0 - 2], $$[$0], null); + yy.setLink($$[$0 - 2], $$[$0 - 1]); + break; + case 39: + this.$ = $$[$0 - 3]; + yy.setClickEvent($$[$0 - 3], $$[$0 - 1], $$[$0]); + yy.setLink($$[$0 - 3], $$[$0 - 2]); + break; + case 40: + this.$ = $$[$0 - 1]; + yy.setLink($$[$0 - 1], $$[$0]); + break; + case 41: + case 47: + this.$ = $$[$0 - 1] + " " + $$[$0]; + break; + case 42: + case 43: + case 45: + this.$ = $$[$0 - 2] + " " + $$[$0 - 1] + " " + $$[$0]; + break; + case 44: + case 46: + this.$ = $$[$0 - 3] + " " + $$[$0 - 2] + " " + $$[$0 - 1] + " " + $$[$0]; + break; + } + }, "anonymous"), + table: [{ 3: 1, 4: [1, 2] }, { 1: [3] }, o($V0, [2, 2], { 5: 3 }), { 6: [1, 4], 7: 5, 8: [1, 6], 9: 7, 10: [1, 8], 11: 17, 12: $V1, 13: $V2, 14: $V3, 15: $V4, 16: $V5, 17: $V6, 18: $V7, 19: 18, 20: $V8, 21: $V9, 22: $Va, 23: $Vb, 24: $Vc, 25: $Vd, 26: $Ve, 27: $Vf, 28: $Vg, 29: $Vh, 30: $Vi, 31: $Vj, 33: $Vk, 35: $Vl, 36: $Vm, 37: 24, 38: $Vn, 40: $Vo }, o($V0, [2, 7], { 1: [2, 1] }), o($V0, [2, 3]), { 9: 36, 11: 17, 12: $V1, 13: $V2, 14: $V3, 15: $V4, 16: $V5, 17: $V6, 18: $V7, 19: 18, 20: $V8, 21: $V9, 22: $Va, 23: $Vb, 24: $Vc, 25: $Vd, 26: $Ve, 27: $Vf, 28: $Vg, 29: $Vh, 30: $Vi, 31: $Vj, 33: $Vk, 35: $Vl, 36: $Vm, 37: 24, 38: $Vn, 40: $Vo }, o($V0, [2, 5]), o($V0, [2, 6]), o($V0, [2, 17]), o($V0, [2, 18]), o($V0, [2, 19]), o($V0, [2, 20]), o($V0, [2, 21]), o($V0, [2, 22]), o($V0, [2, 23]), o($V0, [2, 24]), o($V0, [2, 25]), o($V0, [2, 26]), o($V0, [2, 27]), { 32: [1, 37] }, { 34: [1, 38] }, o($V0, [2, 30]), o($V0, [2, 31]), o($V0, [2, 32]), { 39: [1, 39] }, o($V0, [2, 8]), o($V0, [2, 9]), o($V0, [2, 10]), o($V0, [2, 11]), o($V0, [2, 12]), o($V0, [2, 13]), o($V0, [2, 14]), o($V0, [2, 15]), o($V0, [2, 16]), { 41: [1, 40], 43: [1, 41] }, o($V0, [2, 4]), o($V0, [2, 28]), o($V0, [2, 29]), o($V0, [2, 33]), o($V0, [2, 34], { 42: [1, 42], 43: [1, 43] }), o($V0, [2, 40], { 41: [1, 44] }), o($V0, [2, 35], { 43: [1, 45] }), o($V0, [2, 36]), o($V0, [2, 38], { 42: [1, 46] }), o($V0, [2, 37]), o($V0, [2, 39])], + defaultActions: {}, + parseError: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function parseError(str, hash) { + if (hash.recoverable) { + this.trace(str); + } else { + var error = new Error(str); + error.hash = hash; + throw error; + } + }, "parseError"), + parse: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function parse(input) { + var self = this, stack = [0], tstack = [], vstack = [null], lstack = [], table = this.table, yytext = "", yylineno = 0, yyleng = 0, recovering = 0, TERROR = 2, EOF = 1; + var args = lstack.slice.call(arguments, 1); + var lexer2 = Object.create(this.lexer); + var sharedState = { yy: {} }; + for (var k in this.yy) { + if (Object.prototype.hasOwnProperty.call(this.yy, k)) { + sharedState.yy[k] = this.yy[k]; + } + } + lexer2.setInput(input, sharedState.yy); + sharedState.yy.lexer = lexer2; + sharedState.yy.parser = this; + if (typeof lexer2.yylloc == "undefined") { + lexer2.yylloc = {}; + } + var yyloc = lexer2.yylloc; + lstack.push(yyloc); + var ranges = lexer2.options && lexer2.options.ranges; + if (typeof sharedState.yy.parseError === "function") { + this.parseError = sharedState.yy.parseError; + } else { + this.parseError = Object.getPrototypeOf(this).parseError; + } + function popStack(n) { + stack.length = stack.length - 2 * n; + vstack.length = vstack.length - n; + lstack.length = lstack.length - n; + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(popStack, "popStack"); + function lex() { + var token; + token = tstack.pop() || lexer2.lex() || EOF; + if (typeof token !== "number") { + if (token instanceof Array) { + tstack = token; + token = tstack.pop(); + } + token = self.symbols_[token] || token; + } + return token; + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(lex, "lex"); + var symbol, preErrorSymbol, state, action, a, r, yyval = {}, p, len, newState, expected; + while (true) { + state = stack[stack.length - 1]; + if (this.defaultActions[state]) { + action = this.defaultActions[state]; + } else { + if (symbol === null || typeof symbol == "undefined") { + symbol = lex(); + } + action = table[state] && table[state][symbol]; + } + if (typeof action === "undefined" || !action.length || !action[0]) { + var errStr = ""; + expected = []; + for (p in table[state]) { + if (this.terminals_[p] && p > TERROR) { + expected.push("'" + this.terminals_[p] + "'"); + } + } + if (lexer2.showPosition) { + errStr = "Parse error on line " + (yylineno + 1) + ":\n" + lexer2.showPosition() + "\nExpecting " + expected.join(", ") + ", got '" + (this.terminals_[symbol] || symbol) + "'"; + } else { + errStr = "Parse error on line " + (yylineno + 1) + ": Unexpected " + (symbol == EOF ? "end of input" : "'" + (this.terminals_[symbol] || symbol) + "'"); + } + this.parseError(errStr, { + text: lexer2.match, + token: this.terminals_[symbol] || symbol, + line: lexer2.yylineno, + loc: yyloc, + expected + }); + } + if (action[0] instanceof Array && action.length > 1) { + throw new Error("Parse Error: multiple actions possible at state: " + state + ", token: " + symbol); + } + switch (action[0]) { + case 1: + stack.push(symbol); + vstack.push(lexer2.yytext); + lstack.push(lexer2.yylloc); + stack.push(action[1]); + symbol = null; + if (!preErrorSymbol) { + yyleng = lexer2.yyleng; + yytext = lexer2.yytext; + yylineno = lexer2.yylineno; + yyloc = lexer2.yylloc; + if (recovering > 0) { + recovering--; + } + } else { + symbol = preErrorSymbol; + preErrorSymbol = null; + } + break; + case 2: + len = this.productions_[action[1]][1]; + yyval.$ = vstack[vstack.length - len]; + yyval._$ = { + first_line: lstack[lstack.length - (len || 1)].first_line, + last_line: lstack[lstack.length - 1].last_line, + first_column: lstack[lstack.length - (len || 1)].first_column, + last_column: lstack[lstack.length - 1].last_column + }; + if (ranges) { + yyval._$.range = [ + lstack[lstack.length - (len || 1)].range[0], + lstack[lstack.length - 1].range[1] + ]; + } + r = this.performAction.apply(yyval, [ + yytext, + yyleng, + yylineno, + sharedState.yy, + action[1], + vstack, + lstack + ].concat(args)); + if (typeof r !== "undefined") { + return r; + } + if (len) { + stack = stack.slice(0, -1 * len * 2); + vstack = vstack.slice(0, -1 * len); + lstack = lstack.slice(0, -1 * len); + } + stack.push(this.productions_[action[1]][0]); + vstack.push(yyval.$); + lstack.push(yyval._$); + newState = table[stack[stack.length - 2]][stack[stack.length - 1]]; + stack.push(newState); + break; + case 3: + return true; + } + } + return true; + }, "parse") + }; + var lexer = /* @__PURE__ */ function() { + var lexer2 = { + EOF: 1, + parseError: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function parseError(str, hash) { + if (this.yy.parser) { + this.yy.parser.parseError(str, hash); + } else { + throw new Error(str); + } + }, "parseError"), + // resets the lexer, sets new input + setInput: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(input, yy) { + this.yy = yy || this.yy || {}; + this._input = input; + this._more = this._backtrack = this.done = false; + this.yylineno = this.yyleng = 0; + this.yytext = this.matched = this.match = ""; + this.conditionStack = ["INITIAL"]; + this.yylloc = { + first_line: 1, + first_column: 0, + last_line: 1, + last_column: 0 + }; + if (this.options.ranges) { + this.yylloc.range = [0, 0]; + } + this.offset = 0; + return this; + }, "setInput"), + // consumes and returns one char from the input + input: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + var ch = this._input[0]; + this.yytext += ch; + this.yyleng++; + this.offset++; + this.match += ch; + this.matched += ch; + var lines = ch.match(/(?:\r\n?|\n).*/g); + if (lines) { + this.yylineno++; + this.yylloc.last_line++; + } else { + this.yylloc.last_column++; + } + if (this.options.ranges) { + this.yylloc.range[1]++; + } + this._input = this._input.slice(1); + return ch; + }, "input"), + // unshifts one char (or a string) into the input + unput: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(ch) { + var len = ch.length; + var lines = ch.split(/(?:\r\n?|\n)/g); + this._input = ch + this._input; + this.yytext = this.yytext.substr(0, this.yytext.length - len); + this.offset -= len; + var oldLines = this.match.split(/(?:\r\n?|\n)/g); + this.match = this.match.substr(0, this.match.length - 1); + this.matched = this.matched.substr(0, this.matched.length - 1); + if (lines.length - 1) { + this.yylineno -= lines.length - 1; + } + var r = this.yylloc.range; + this.yylloc = { + first_line: this.yylloc.first_line, + last_line: this.yylineno + 1, + first_column: this.yylloc.first_column, + last_column: lines ? (lines.length === oldLines.length ? this.yylloc.first_column : 0) + oldLines[oldLines.length - lines.length].length - lines[0].length : this.yylloc.first_column - len + }; + if (this.options.ranges) { + this.yylloc.range = [r[0], r[0] + this.yyleng - len]; + } + this.yyleng = this.yytext.length; + return this; + }, "unput"), + // When called from action, caches matched text and appends it on next action + more: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + this._more = true; + return this; + }, "more"), + // When called from action, signals the lexer that this rule fails to match the input, so the next matching rule (regex) should be tested instead. + reject: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + if (this.options.backtrack_lexer) { + this._backtrack = true; + } else { + return this.parseError("Lexical error on line " + (this.yylineno + 1) + ". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n" + this.showPosition(), { + text: "", + token: null, + line: this.yylineno + }); + } + return this; + }, "reject"), + // retain first n characters of the match + less: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(n) { + this.unput(this.match.slice(n)); + }, "less"), + // displays already matched input, i.e. for error messages + pastInput: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + var past = this.matched.substr(0, this.matched.length - this.match.length); + return (past.length > 20 ? "..." : "") + past.substr(-20).replace(/\n/g, ""); + }, "pastInput"), + // displays upcoming input, i.e. for error messages + upcomingInput: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + var next = this.match; + if (next.length < 20) { + next += this._input.substr(0, 20 - next.length); + } + return (next.substr(0, 20) + (next.length > 20 ? "..." : "")).replace(/\n/g, ""); + }, "upcomingInput"), + // displays the character position where the lexing error occurred, i.e. for error messages + showPosition: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + var pre = this.pastInput(); + var c = new Array(pre.length + 1).join("-"); + return pre + this.upcomingInput() + "\n" + c + "^"; + }, "showPosition"), + // test the lexed token: return FALSE when not a match, otherwise return token + test_match: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(match, indexed_rule) { + var token, lines, backup; + if (this.options.backtrack_lexer) { + backup = { + yylineno: this.yylineno, + yylloc: { + first_line: this.yylloc.first_line, + last_line: this.last_line, + first_column: this.yylloc.first_column, + last_column: this.yylloc.last_column + }, + yytext: this.yytext, + match: this.match, + matches: this.matches, + matched: this.matched, + yyleng: this.yyleng, + offset: this.offset, + _more: this._more, + _input: this._input, + yy: this.yy, + conditionStack: this.conditionStack.slice(0), + done: this.done + }; + if (this.options.ranges) { + backup.yylloc.range = this.yylloc.range.slice(0); + } + } + lines = match[0].match(/(?:\r\n?|\n).*/g); + if (lines) { + this.yylineno += lines.length; + } + this.yylloc = { + first_line: this.yylloc.last_line, + last_line: this.yylineno + 1, + first_column: this.yylloc.last_column, + last_column: lines ? lines[lines.length - 1].length - lines[lines.length - 1].match(/\r?\n?/)[0].length : this.yylloc.last_column + match[0].length + }; + this.yytext += match[0]; + this.match += match[0]; + this.matches = match; + this.yyleng = this.yytext.length; + if (this.options.ranges) { + this.yylloc.range = [this.offset, this.offset += this.yyleng]; + } + this._more = false; + this._backtrack = false; + this._input = this._input.slice(match[0].length); + this.matched += match[0]; + token = this.performAction.call(this, this.yy, this, indexed_rule, this.conditionStack[this.conditionStack.length - 1]); + if (this.done && this._input) { + this.done = false; + } + if (token) { + return token; + } else if (this._backtrack) { + for (var k in backup) { + this[k] = backup[k]; + } + return false; + } + return false; + }, "test_match"), + // return next match in input + next: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + if (this.done) { + return this.EOF; + } + if (!this._input) { + this.done = true; + } + var token, match, tempMatch, index; + if (!this._more) { + this.yytext = ""; + this.match = ""; + } + var rules = this._currentRules(); + for (var i = 0; i < rules.length; i++) { + tempMatch = this._input.match(this.rules[rules[i]]); + if (tempMatch && (!match || tempMatch[0].length > match[0].length)) { + match = tempMatch; + index = i; + if (this.options.backtrack_lexer) { + token = this.test_match(tempMatch, rules[i]); + if (token !== false) { + return token; + } else if (this._backtrack) { + match = false; + continue; + } else { + return false; + } + } else if (!this.options.flex) { + break; + } + } + } + if (match) { + token = this.test_match(match, rules[index]); + if (token !== false) { + return token; + } + return false; + } + if (this._input === "") { + return this.EOF; + } else { + return this.parseError("Lexical error on line " + (this.yylineno + 1) + ". Unrecognized text.\n" + this.showPosition(), { + text: "", + token: null, + line: this.yylineno + }); + } + }, "next"), + // return next match that has a token + lex: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function lex() { + var r = this.next(); + if (r) { + return r; + } else { + return this.lex(); + } + }, "lex"), + // activates a new lexer condition state (pushes the new lexer condition state onto the condition stack) + begin: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function begin(condition) { + this.conditionStack.push(condition); + }, "begin"), + // pop the previously active lexer condition state off the condition stack + popState: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function popState() { + var n = this.conditionStack.length - 1; + if (n > 0) { + return this.conditionStack.pop(); + } else { + return this.conditionStack[0]; + } + }, "popState"), + // produce the lexer rule set which is active for the currently active lexer condition state + _currentRules: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function _currentRules() { + if (this.conditionStack.length && this.conditionStack[this.conditionStack.length - 1]) { + return this.conditions[this.conditionStack[this.conditionStack.length - 1]].rules; + } else { + return this.conditions["INITIAL"].rules; + } + }, "_currentRules"), + // return the currently active lexer condition state; when an index argument is provided it produces the N-th previous condition state, if available + topState: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function topState(n) { + n = this.conditionStack.length - 1 - Math.abs(n || 0); + if (n >= 0) { + return this.conditionStack[n]; + } else { + return "INITIAL"; + } + }, "topState"), + // alias for begin(condition) + pushState: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function pushState(condition) { + this.begin(condition); + }, "pushState"), + // return the number of states currently on the stack + stateStackSize: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function stateStackSize() { + return this.conditionStack.length; + }, "stateStackSize"), + options: { "case-insensitive": true }, + performAction: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function anonymous(yy, yy_, $avoiding_name_collisions, YY_START) { + var YYSTATE = YY_START; + switch ($avoiding_name_collisions) { + case 0: + this.begin("open_directive"); + return "open_directive"; + break; + case 1: + this.begin("acc_title"); + return 31; + break; + case 2: + this.popState(); + return "acc_title_value"; + break; + case 3: + this.begin("acc_descr"); + return 33; + break; + case 4: + this.popState(); + return "acc_descr_value"; + break; + case 5: + this.begin("acc_descr_multiline"); + break; + case 6: + this.popState(); + break; + case 7: + return "acc_descr_multiline_value"; + break; + case 8: + break; + case 9: + break; + case 10: + break; + case 11: + return 10; + break; + case 12: + break; + case 13: + break; + case 14: + this.begin("href"); + break; + case 15: + this.popState(); + break; + case 16: + return 43; + break; + case 17: + this.begin("callbackname"); + break; + case 18: + this.popState(); + break; + case 19: + this.popState(); + this.begin("callbackargs"); + break; + case 20: + return 41; + break; + case 21: + this.popState(); + break; + case 22: + return 42; + break; + case 23: + this.begin("click"); + break; + case 24: + this.popState(); + break; + case 25: + return 40; + break; + case 26: + return 4; + break; + case 27: + return 22; + break; + case 28: + return 23; + break; + case 29: + return 24; + break; + case 30: + return 25; + break; + case 31: + return 26; + break; + case 32: + return 28; + break; + case 33: + return 27; + break; + case 34: + return 29; + break; + case 35: + return 12; + break; + case 36: + return 13; + break; + case 37: + return 14; + break; + case 38: + return 15; + break; + case 39: + return 16; + break; + case 40: + return 17; + break; + case 41: + return 18; + break; + case 42: + return 20; + break; + case 43: + return 21; + break; + case 44: + return "date"; + break; + case 45: + return 30; + break; + case 46: + return "accDescription"; + break; + case 47: + return 36; + break; + case 48: + return 38; + break; + case 49: + return 39; + break; + case 50: + return ":"; + break; + case 51: + return 6; + break; + case 52: + return "INVALID"; + break; + } + }, "anonymous"), + rules: [/^(?:%%\{)/i, /^(?:accTitle\s*:\s*)/i, /^(?:(?!\n||)*[^\n]*)/i, /^(?:accDescr\s*:\s*)/i, /^(?:(?!\n||)*[^\n]*)/i, /^(?:accDescr\s*\{\s*)/i, /^(?:[\}])/i, /^(?:[^\}]*)/i, /^(?:%%(?!\{)*[^\n]*)/i, /^(?:[^\}]%%*[^\n]*)/i, /^(?:%%*[^\n]*[\n]*)/i, /^(?:[\n]+)/i, /^(?:\s+)/i, /^(?:%[^\n]*)/i, /^(?:href[\s]+["])/i, /^(?:["])/i, /^(?:[^"]*)/i, /^(?:call[\s]+)/i, /^(?:\([\s]*\))/i, /^(?:\()/i, /^(?:[^(]*)/i, /^(?:\))/i, /^(?:[^)]*)/i, /^(?:click[\s]+)/i, /^(?:[\s\n])/i, /^(?:[^\s\n]*)/i, /^(?:gantt\b)/i, /^(?:dateFormat\s[^#\n;]+)/i, /^(?:inclusiveEndDates\b)/i, /^(?:topAxis\b)/i, /^(?:axisFormat\s[^#\n;]+)/i, /^(?:tickInterval\s[^#\n;]+)/i, /^(?:includes\s[^#\n;]+)/i, /^(?:excludes\s[^#\n;]+)/i, /^(?:todayMarker\s[^\n;]+)/i, /^(?:weekday\s+monday\b)/i, /^(?:weekday\s+tuesday\b)/i, /^(?:weekday\s+wednesday\b)/i, /^(?:weekday\s+thursday\b)/i, /^(?:weekday\s+friday\b)/i, /^(?:weekday\s+saturday\b)/i, /^(?:weekday\s+sunday\b)/i, /^(?:weekend\s+friday\b)/i, /^(?:weekend\s+saturday\b)/i, /^(?:\d\d\d\d-\d\d-\d\d\b)/i, /^(?:title\s[^\n]+)/i, /^(?:accDescription\s[^#\n;]+)/i, /^(?:section\s[^\n]+)/i, /^(?:[^:\n]+)/i, /^(?::[^#\n;]+)/i, /^(?::)/i, /^(?:$)/i, /^(?:.)/i], + conditions: { "acc_descr_multiline": { "rules": [6, 7], "inclusive": false }, "acc_descr": { "rules": [4], "inclusive": false }, "acc_title": { "rules": [2], "inclusive": false }, "callbackargs": { "rules": [21, 22], "inclusive": false }, "callbackname": { "rules": [18, 19, 20], "inclusive": false }, "href": { "rules": [15, 16], "inclusive": false }, "click": { "rules": [24, 25], "inclusive": false }, "INITIAL": { "rules": [0, 1, 3, 5, 8, 9, 10, 11, 12, 13, 14, 17, 23, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52], "inclusive": true } } + }; + return lexer2; + }(); + parser2.lexer = lexer; + function Parser() { + this.yy = {}; + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(Parser, "Parser"); + Parser.prototype = parser2; + parser2.Parser = Parser; + return new Parser(); +}(); +parser.parser = parser; +var gantt_default = parser; + +// src/diagrams/gantt/ganttDb.js + + + + + +dayjs__WEBPACK_IMPORTED_MODULE_3__.extend(dayjs_plugin_isoWeek_js__WEBPACK_IMPORTED_MODULE_4__); +dayjs__WEBPACK_IMPORTED_MODULE_3__.extend(dayjs_plugin_customParseFormat_js__WEBPACK_IMPORTED_MODULE_5__); +dayjs__WEBPACK_IMPORTED_MODULE_3__.extend(dayjs_plugin_advancedFormat_js__WEBPACK_IMPORTED_MODULE_6__); +var WEEKEND_START_DAY = { friday: 5, saturday: 6 }; +var dateFormat = ""; +var axisFormat = ""; +var tickInterval = void 0; +var todayMarker = ""; +var includes = []; +var excludes = []; +var links = /* @__PURE__ */ new Map(); +var sections = []; +var tasks = []; +var currentSection = ""; +var displayMode = ""; +var tags = ["active", "done", "crit", "milestone"]; +var funs = []; +var inclusiveEndDates = false; +var topAxis = false; +var weekday = "sunday"; +var weekend = "saturday"; +var lastOrder = 0; +var clear2 = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + sections = []; + tasks = []; + currentSection = ""; + funs = []; + taskCnt = 0; + lastTask = void 0; + lastTaskID = void 0; + rawTasks = []; + dateFormat = ""; + axisFormat = ""; + displayMode = ""; + tickInterval = void 0; + todayMarker = ""; + includes = []; + excludes = []; + inclusiveEndDates = false; + topAxis = false; + lastOrder = 0; + links = /* @__PURE__ */ new Map(); + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .clear */ .IU)(); + weekday = "sunday"; + weekend = "saturday"; +}, "clear"); +var setAxisFormat = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(txt) { + axisFormat = txt; +}, "setAxisFormat"); +var getAxisFormat = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + return axisFormat; +}, "getAxisFormat"); +var setTickInterval = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(txt) { + tickInterval = txt; +}, "setTickInterval"); +var getTickInterval = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + return tickInterval; +}, "getTickInterval"); +var setTodayMarker = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(txt) { + todayMarker = txt; +}, "setTodayMarker"); +var getTodayMarker = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + return todayMarker; +}, "getTodayMarker"); +var setDateFormat = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(txt) { + dateFormat = txt; +}, "setDateFormat"); +var enableInclusiveEndDates = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + inclusiveEndDates = true; +}, "enableInclusiveEndDates"); +var endDatesAreInclusive = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + return inclusiveEndDates; +}, "endDatesAreInclusive"); +var enableTopAxis = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + topAxis = true; +}, "enableTopAxis"); +var topAxisEnabled = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + return topAxis; +}, "topAxisEnabled"); +var setDisplayMode = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(txt) { + displayMode = txt; +}, "setDisplayMode"); +var getDisplayMode = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + return displayMode; +}, "getDisplayMode"); +var getDateFormat = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + return dateFormat; +}, "getDateFormat"); +var setIncludes = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(txt) { + includes = txt.toLowerCase().split(/[\s,]+/); +}, "setIncludes"); +var getIncludes = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + return includes; +}, "getIncludes"); +var setExcludes = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(txt) { + excludes = txt.toLowerCase().split(/[\s,]+/); +}, "setExcludes"); +var getExcludes = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + return excludes; +}, "getExcludes"); +var getLinks = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + return links; +}, "getLinks"); +var addSection = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(txt) { + currentSection = txt; + sections.push(txt); +}, "addSection"); +var getSections = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + return sections; +}, "getSections"); +var getTasks = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + let allItemsProcessed = compileTasks(); + const maxDepth = 10; + let iterationCount = 0; + while (!allItemsProcessed && iterationCount < maxDepth) { + allItemsProcessed = compileTasks(); + iterationCount++; + } + tasks = rawTasks; + return tasks; +}, "getTasks"); +var isInvalidDate = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(date, dateFormat2, excludes2, includes2) { + if (includes2.includes(date.format(dateFormat2.trim()))) { + return false; + } + if (excludes2.includes("weekends") && (date.isoWeekday() === WEEKEND_START_DAY[weekend] || date.isoWeekday() === WEEKEND_START_DAY[weekend] + 1)) { + return true; + } + if (excludes2.includes(date.format("dddd").toLowerCase())) { + return true; + } + return excludes2.includes(date.format(dateFormat2.trim())); +}, "isInvalidDate"); +var setWeekday = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(txt) { + weekday = txt; +}, "setWeekday"); +var getWeekday = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + return weekday; +}, "getWeekday"); +var setWeekend = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(startDay) { + weekend = startDay; +}, "setWeekend"); +var checkTaskDates = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(task, dateFormat2, excludes2, includes2) { + if (!excludes2.length || task.manualEndTime) { + return; + } + let startTime; + if (task.startTime instanceof Date) { + startTime = dayjs__WEBPACK_IMPORTED_MODULE_3__(task.startTime); + } else { + startTime = dayjs__WEBPACK_IMPORTED_MODULE_3__(task.startTime, dateFormat2, true); + } + startTime = startTime.add(1, "d"); + let originalEndTime; + if (task.endTime instanceof Date) { + originalEndTime = dayjs__WEBPACK_IMPORTED_MODULE_3__(task.endTime); + } else { + originalEndTime = dayjs__WEBPACK_IMPORTED_MODULE_3__(task.endTime, dateFormat2, true); + } + const [fixedEndTime, renderEndTime] = fixTaskDates( + startTime, + originalEndTime, + dateFormat2, + excludes2, + includes2 + ); + task.endTime = fixedEndTime.toDate(); + task.renderEndTime = renderEndTime; +}, "checkTaskDates"); +var fixTaskDates = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(startTime, endTime, dateFormat2, excludes2, includes2) { + let invalid = false; + let renderEndTime = null; + while (startTime <= endTime) { + if (!invalid) { + renderEndTime = endTime.toDate(); + } + invalid = isInvalidDate(startTime, dateFormat2, excludes2, includes2); + if (invalid) { + endTime = endTime.add(1, "d"); + } + startTime = startTime.add(1, "d"); + } + return [endTime, renderEndTime]; +}, "fixTaskDates"); +var getStartDate = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(prevTime, dateFormat2, str) { + str = str.trim(); + const afterRePattern = /^after\s+(?[\d\w- ]+)/; + const afterStatement = afterRePattern.exec(str); + if (afterStatement !== null) { + let latestTask = null; + for (const id of afterStatement.groups.ids.split(" ")) { + let task = findTaskById(id); + if (task !== void 0 && (!latestTask || task.endTime > latestTask.endTime)) { + latestTask = task; + } + } + if (latestTask) { + return latestTask.endTime; + } + const today = /* @__PURE__ */ new Date(); + today.setHours(0, 0, 0, 0); + return today; + } + let mDate = dayjs__WEBPACK_IMPORTED_MODULE_3__(str, dateFormat2.trim(), true); + if (mDate.isValid()) { + return mDate.toDate(); + } else { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .log */ .Rm.debug("Invalid date:" + str); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .log */ .Rm.debug("With date format:" + dateFormat2.trim()); + const d = new Date(str); + if (d === void 0 || isNaN(d.getTime()) || // WebKit browsers can mis-parse invalid dates to be ridiculously + // huge numbers, e.g. new Date('202304') gets parsed as January 1, 202304. + // This can cause virtually infinite loops while rendering, so for the + // purposes of Gantt charts we'll just treat any date beyond 10,000 AD/BC as + // invalid. + d.getFullYear() < -1e4 || d.getFullYear() > 1e4) { + throw new Error("Invalid date:" + str); + } + return d; + } +}, "getStartDate"); +var parseDuration = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(str) { + const statement = /^(\d+(?:\.\d+)?)([Mdhmswy]|ms)$/.exec(str.trim()); + if (statement !== null) { + return [Number.parseFloat(statement[1]), statement[2]]; + } + return [NaN, "ms"]; +}, "parseDuration"); +var getEndDate = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(prevTime, dateFormat2, str, inclusive = false) { + str = str.trim(); + const untilRePattern = /^until\s+(?[\d\w- ]+)/; + const untilStatement = untilRePattern.exec(str); + if (untilStatement !== null) { + let earliestTask = null; + for (const id of untilStatement.groups.ids.split(" ")) { + let task = findTaskById(id); + if (task !== void 0 && (!earliestTask || task.startTime < earliestTask.startTime)) { + earliestTask = task; + } + } + if (earliestTask) { + return earliestTask.startTime; + } + const today = /* @__PURE__ */ new Date(); + today.setHours(0, 0, 0, 0); + return today; + } + let parsedDate = dayjs__WEBPACK_IMPORTED_MODULE_3__(str, dateFormat2.trim(), true); + if (parsedDate.isValid()) { + if (inclusive) { + parsedDate = parsedDate.add(1, "d"); + } + return parsedDate.toDate(); + } + let endTime = dayjs__WEBPACK_IMPORTED_MODULE_3__(prevTime); + const [durationValue, durationUnit] = parseDuration(str); + if (!Number.isNaN(durationValue)) { + const newEndTime = endTime.add(durationValue, durationUnit); + if (newEndTime.isValid()) { + endTime = newEndTime; + } + } + return endTime.toDate(); +}, "getEndDate"); +var taskCnt = 0; +var parseId = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(idStr) { + if (idStr === void 0) { + taskCnt = taskCnt + 1; + return "task" + taskCnt; + } + return idStr; +}, "parseId"); +var compileData = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(prevTask, dataStr) { + let ds; + if (dataStr.substr(0, 1) === ":") { + ds = dataStr.substr(1, dataStr.length); + } else { + ds = dataStr; + } + const data = ds.split(","); + const task = {}; + getTaskTags(data, task, tags); + for (let i = 0; i < data.length; i++) { + data[i] = data[i].trim(); + } + let endTimeData = ""; + switch (data.length) { + case 1: + task.id = parseId(); + task.startTime = prevTask.endTime; + endTimeData = data[0]; + break; + case 2: + task.id = parseId(); + task.startTime = getStartDate(void 0, dateFormat, data[0]); + endTimeData = data[1]; + break; + case 3: + task.id = parseId(data[0]); + task.startTime = getStartDate(void 0, dateFormat, data[1]); + endTimeData = data[2]; + break; + default: + } + if (endTimeData) { + task.endTime = getEndDate(task.startTime, dateFormat, endTimeData, inclusiveEndDates); + task.manualEndTime = dayjs__WEBPACK_IMPORTED_MODULE_3__(endTimeData, "YYYY-MM-DD", true).isValid(); + checkTaskDates(task, dateFormat, excludes, includes); + } + return task; +}, "compileData"); +var parseData = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(prevTaskId, dataStr) { + let ds; + if (dataStr.substr(0, 1) === ":") { + ds = dataStr.substr(1, dataStr.length); + } else { + ds = dataStr; + } + const data = ds.split(","); + const task = {}; + getTaskTags(data, task, tags); + for (let i = 0; i < data.length; i++) { + data[i] = data[i].trim(); + } + switch (data.length) { + case 1: + task.id = parseId(); + task.startTime = { + type: "prevTaskEnd", + id: prevTaskId + }; + task.endTime = { + data: data[0] + }; + break; + case 2: + task.id = parseId(); + task.startTime = { + type: "getStartDate", + startData: data[0] + }; + task.endTime = { + data: data[1] + }; + break; + case 3: + task.id = parseId(data[0]); + task.startTime = { + type: "getStartDate", + startData: data[1] + }; + task.endTime = { + data: data[2] + }; + break; + default: + } + return task; +}, "parseData"); +var lastTask; +var lastTaskID; +var rawTasks = []; +var taskDb = {}; +var addTask = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(descr, data) { + const rawTask = { + section: currentSection, + type: currentSection, + processed: false, + manualEndTime: false, + renderEndTime: null, + raw: { data }, + task: descr, + classes: [] + }; + const taskInfo = parseData(lastTaskID, data); + rawTask.raw.startTime = taskInfo.startTime; + rawTask.raw.endTime = taskInfo.endTime; + rawTask.id = taskInfo.id; + rawTask.prevTaskId = lastTaskID; + rawTask.active = taskInfo.active; + rawTask.done = taskInfo.done; + rawTask.crit = taskInfo.crit; + rawTask.milestone = taskInfo.milestone; + rawTask.order = lastOrder; + lastOrder++; + const pos = rawTasks.push(rawTask); + lastTaskID = rawTask.id; + taskDb[rawTask.id] = pos - 1; +}, "addTask"); +var findTaskById = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(id) { + const pos = taskDb[id]; + return rawTasks[pos]; +}, "findTaskById"); +var addTaskOrg = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(descr, data) { + const newTask = { + section: currentSection, + type: currentSection, + description: descr, + task: descr, + classes: [] + }; + const taskInfo = compileData(lastTask, data); + newTask.startTime = taskInfo.startTime; + newTask.endTime = taskInfo.endTime; + newTask.id = taskInfo.id; + newTask.active = taskInfo.active; + newTask.done = taskInfo.done; + newTask.crit = taskInfo.crit; + newTask.milestone = taskInfo.milestone; + lastTask = newTask; + tasks.push(newTask); +}, "addTaskOrg"); +var compileTasks = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + const compileTask = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(pos) { + const task = rawTasks[pos]; + let startTime = ""; + switch (rawTasks[pos].raw.startTime.type) { + case "prevTaskEnd": { + const prevTask = findTaskById(task.prevTaskId); + task.startTime = prevTask.endTime; + break; + } + case "getStartDate": + startTime = getStartDate(void 0, dateFormat, rawTasks[pos].raw.startTime.startData); + if (startTime) { + rawTasks[pos].startTime = startTime; + } + break; + } + if (rawTasks[pos].startTime) { + rawTasks[pos].endTime = getEndDate( + rawTasks[pos].startTime, + dateFormat, + rawTasks[pos].raw.endTime.data, + inclusiveEndDates + ); + if (rawTasks[pos].endTime) { + rawTasks[pos].processed = true; + rawTasks[pos].manualEndTime = dayjs__WEBPACK_IMPORTED_MODULE_3__( + rawTasks[pos].raw.endTime.data, + "YYYY-MM-DD", + true + ).isValid(); + checkTaskDates(rawTasks[pos], dateFormat, excludes, includes); + } + } + return rawTasks[pos].processed; + }, "compileTask"); + let allProcessed = true; + for (const [i, rawTask] of rawTasks.entries()) { + compileTask(i); + allProcessed = allProcessed && rawTask.processed; + } + return allProcessed; +}, "compileTasks"); +var setLink = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(ids, _linkStr) { + let linkStr = _linkStr; + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .getConfig2 */ .D7)().securityLevel !== "loose") { + linkStr = (0,_braintree_sanitize_url__WEBPACK_IMPORTED_MODULE_2__/* .sanitizeUrl */ .J)(_linkStr); + } + ids.split(",").forEach(function(id) { + let rawTask = findTaskById(id); + if (rawTask !== void 0) { + pushFun(id, () => { + window.open(linkStr, "_self"); + }); + links.set(id, linkStr); + } + }); + setClass(ids, "clickable"); +}, "setLink"); +var setClass = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(ids, className) { + ids.split(",").forEach(function(id) { + let rawTask = findTaskById(id); + if (rawTask !== void 0) { + rawTask.classes.push(className); + } + }); +}, "setClass"); +var setClickFun = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(id, functionName, functionArgs) { + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .getConfig2 */ .D7)().securityLevel !== "loose") { + return; + } + if (functionName === void 0) { + return; + } + let argList = []; + if (typeof functionArgs === "string") { + argList = functionArgs.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/); + for (let i = 0; i < argList.length; i++) { + let item = argList[i].trim(); + if (item.startsWith('"') && item.endsWith('"')) { + item = item.substr(1, item.length - 2); + } + argList[i] = item; + } + } + if (argList.length === 0) { + argList.push(id); + } + let rawTask = findTaskById(id); + if (rawTask !== void 0) { + pushFun(id, () => { + _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_0__/* .utils_default */ ._K.runFunc(functionName, ...argList); + }); + } +}, "setClickFun"); +var pushFun = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(id, callbackFunction) { + funs.push( + function() { + const elem = document.querySelector(`[id="${id}"]`); + if (elem !== null) { + elem.addEventListener("click", function() { + callbackFunction(); + }); + } + }, + function() { + const elem = document.querySelector(`[id="${id}-text"]`); + if (elem !== null) { + elem.addEventListener("click", function() { + callbackFunction(); + }); + } + } + ); +}, "pushFun"); +var setClickEvent = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(ids, functionName, functionArgs) { + ids.split(",").forEach(function(id) { + setClickFun(id, functionName, functionArgs); + }); + setClass(ids, "clickable"); +}, "setClickEvent"); +var bindFunctions = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(element) { + funs.forEach(function(fun) { + fun(element); + }); +}, "bindFunctions"); +var ganttDb_default = { + getConfig: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(() => (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .getConfig2 */ .D7)().gantt, "getConfig"), + clear: clear2, + setDateFormat, + getDateFormat, + enableInclusiveEndDates, + endDatesAreInclusive, + enableTopAxis, + topAxisEnabled, + setAxisFormat, + getAxisFormat, + setTickInterval, + getTickInterval, + setTodayMarker, + getTodayMarker, + setAccTitle: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .setAccTitle */ .SV, + getAccTitle: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .getAccTitle */ .iN, + setDiagramTitle: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .setDiagramTitle */ .ke, + getDiagramTitle: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .getDiagramTitle */ .ab, + setDisplayMode, + getDisplayMode, + setAccDescription: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .setAccDescription */ .EI, + getAccDescription: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .getAccDescription */ .m7, + addSection, + getSections, + getTasks, + addTask, + findTaskById, + addTaskOrg, + setIncludes, + getIncludes, + setExcludes, + getExcludes, + setClickEvent, + setLink, + getLinks, + bindFunctions, + parseDuration, + isInvalidDate, + setWeekday, + getWeekday, + setWeekend +}; +function getTaskTags(data, task, tags2) { + let matchFound = true; + while (matchFound) { + matchFound = false; + tags2.forEach(function(t) { + const pattern = "^\\s*" + t + "\\s*$"; + const regex = new RegExp(pattern); + if (data[0].match(regex)) { + task[t] = true; + data.shift(1); + matchFound = true; + } + }); + } +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(getTaskTags, "getTaskTags"); + +// src/diagrams/gantt/ganttRenderer.js + + +var setConf = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .log */ .Rm.debug("Something is calling, setConf, remove the call"); +}, "setConf"); +var mapWeekdayToTimeFunction = { + monday: d3__WEBPACK_IMPORTED_MODULE_7__/* .timeMonday */ .ABi, + tuesday: d3__WEBPACK_IMPORTED_MODULE_7__/* .timeTuesday */ .PGu, + wednesday: d3__WEBPACK_IMPORTED_MODULE_7__/* .timeWednesday */ .GuW, + thursday: d3__WEBPACK_IMPORTED_MODULE_7__/* .timeThursday */ .Mol, + friday: d3__WEBPACK_IMPORTED_MODULE_7__/* .timeFriday */ .TUC, + saturday: d3__WEBPACK_IMPORTED_MODULE_7__/* .timeSaturday */ .rGn, + sunday: d3__WEBPACK_IMPORTED_MODULE_7__/* .timeSunday */ .YPH +}; +var getMaxIntersections = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)((tasks2, orderOffset) => { + let timeline = [...tasks2].map(() => -Infinity); + let sorted = [...tasks2].sort((a, b) => a.startTime - b.startTime || a.order - b.order); + let maxIntersections = 0; + for (const element of sorted) { + for (let j = 0; j < timeline.length; j++) { + if (element.startTime >= timeline[j]) { + timeline[j] = element.endTime; + element.order = j + orderOffset; + if (j > maxIntersections) { + maxIntersections = j; + } + break; + } + } + } + return maxIntersections; +}, "getMaxIntersections"); +var w; +var draw = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(text, id, version, diagObj) { + const conf = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .getConfig2 */ .D7)().gantt; + const securityLevel = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .getConfig2 */ .D7)().securityLevel; + let sandboxElement; + if (securityLevel === "sandbox") { + sandboxElement = (0,d3__WEBPACK_IMPORTED_MODULE_7__/* .select */ .Ltv)("#i" + id); + } + const root = securityLevel === "sandbox" ? (0,d3__WEBPACK_IMPORTED_MODULE_7__/* .select */ .Ltv)(sandboxElement.nodes()[0].contentDocument.body) : (0,d3__WEBPACK_IMPORTED_MODULE_7__/* .select */ .Ltv)("body"); + const doc = securityLevel === "sandbox" ? sandboxElement.nodes()[0].contentDocument : document; + const elem = doc.getElementById(id); + w = elem.parentElement.offsetWidth; + if (w === void 0) { + w = 1200; + } + if (conf.useWidth !== void 0) { + w = conf.useWidth; + } + const taskArray = diagObj.db.getTasks(); + let categories = []; + for (const element of taskArray) { + categories.push(element.type); + } + categories = checkUnique(categories); + const categoryHeights = {}; + let h = 2 * conf.topPadding; + if (diagObj.db.getDisplayMode() === "compact" || conf.displayMode === "compact") { + const categoryElements = {}; + for (const element of taskArray) { + if (categoryElements[element.section] === void 0) { + categoryElements[element.section] = [element]; + } else { + categoryElements[element.section].push(element); + } + } + let intersections = 0; + for (const category of Object.keys(categoryElements)) { + const categoryHeight = getMaxIntersections(categoryElements[category], intersections) + 1; + intersections += categoryHeight; + h += categoryHeight * (conf.barHeight + conf.barGap); + categoryHeights[category] = categoryHeight; + } + } else { + h += taskArray.length * (conf.barHeight + conf.barGap); + for (const category of categories) { + categoryHeights[category] = taskArray.filter((task) => task.type === category).length; + } + } + elem.setAttribute("viewBox", "0 0 " + w + " " + h); + const svg = root.select(`[id="${id}"]`); + const timeScale = (0,d3__WEBPACK_IMPORTED_MODULE_7__/* .scaleTime */ .w7C)().domain([ + (0,d3__WEBPACK_IMPORTED_MODULE_7__/* .min */ .jkA)(taskArray, function(d) { + return d.startTime; + }), + (0,d3__WEBPACK_IMPORTED_MODULE_7__/* .max */ .T9B)(taskArray, function(d) { + return d.endTime; + }) + ]).rangeRound([0, w - conf.leftPadding - conf.rightPadding]); + function taskCompare(a, b) { + const taskA = a.startTime; + const taskB = b.startTime; + let result = 0; + if (taskA > taskB) { + result = 1; + } else if (taskA < taskB) { + result = -1; + } + return result; + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(taskCompare, "taskCompare"); + taskArray.sort(taskCompare); + makeGantt(taskArray, w, h); + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .configureSvgSize */ .a$)(svg, h, w, conf.useMaxWidth); + svg.append("text").text(diagObj.db.getDiagramTitle()).attr("x", w / 2).attr("y", conf.titleTopMargin).attr("class", "titleText"); + function makeGantt(tasks2, pageWidth, pageHeight) { + const barHeight = conf.barHeight; + const gap = barHeight + conf.barGap; + const topPadding = conf.topPadding; + const leftPadding = conf.leftPadding; + const colorScale = (0,d3__WEBPACK_IMPORTED_MODULE_7__/* .scaleLinear */ .m4Y)().domain([0, categories.length]).range(["#00B9FA", "#F95002"]).interpolate(d3__WEBPACK_IMPORTED_MODULE_7__/* .interpolateHcl */ .bEH); + drawExcludeDays( + gap, + topPadding, + leftPadding, + pageWidth, + pageHeight, + tasks2, + diagObj.db.getExcludes(), + diagObj.db.getIncludes() + ); + makeGrid(leftPadding, topPadding, pageWidth, pageHeight); + drawRects(tasks2, gap, topPadding, leftPadding, barHeight, colorScale, pageWidth, pageHeight); + vertLabels(gap, topPadding, leftPadding, barHeight, colorScale); + drawToday(leftPadding, topPadding, pageWidth, pageHeight); + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(makeGantt, "makeGantt"); + function drawRects(theArray, theGap, theTopPad, theSidePad, theBarHeight, theColorScale, w2) { + const uniqueTaskOrderIds = [...new Set(theArray.map((item) => item.order))]; + const uniqueTasks = uniqueTaskOrderIds.map((id2) => theArray.find((item) => item.order === id2)); + svg.append("g").selectAll("rect").data(uniqueTasks).enter().append("rect").attr("x", 0).attr("y", function(d, i) { + i = d.order; + return i * theGap + theTopPad - 2; + }).attr("width", function() { + return w2 - conf.rightPadding / 2; + }).attr("height", theGap).attr("class", function(d) { + for (const [i, category] of categories.entries()) { + if (d.type === category) { + return "section section" + i % conf.numberSectionStyles; + } + } + return "section section0"; + }); + const rectangles = svg.append("g").selectAll("rect").data(theArray).enter(); + const links2 = diagObj.db.getLinks(); + rectangles.append("rect").attr("id", function(d) { + return d.id; + }).attr("rx", 3).attr("ry", 3).attr("x", function(d) { + if (d.milestone) { + return timeScale(d.startTime) + theSidePad + 0.5 * (timeScale(d.endTime) - timeScale(d.startTime)) - 0.5 * theBarHeight; + } + return timeScale(d.startTime) + theSidePad; + }).attr("y", function(d, i) { + i = d.order; + return i * theGap + theTopPad; + }).attr("width", function(d) { + if (d.milestone) { + return theBarHeight; + } + return timeScale(d.renderEndTime || d.endTime) - timeScale(d.startTime); + }).attr("height", theBarHeight).attr("transform-origin", function(d, i) { + i = d.order; + return (timeScale(d.startTime) + theSidePad + 0.5 * (timeScale(d.endTime) - timeScale(d.startTime))).toString() + "px " + (i * theGap + theTopPad + 0.5 * theBarHeight).toString() + "px"; + }).attr("class", function(d) { + const res = "task"; + let classStr = ""; + if (d.classes.length > 0) { + classStr = d.classes.join(" "); + } + let secNum = 0; + for (const [i, category] of categories.entries()) { + if (d.type === category) { + secNum = i % conf.numberSectionStyles; + } + } + let taskClass = ""; + if (d.active) { + if (d.crit) { + taskClass += " activeCrit"; + } else { + taskClass = " active"; + } + } else if (d.done) { + if (d.crit) { + taskClass = " doneCrit"; + } else { + taskClass = " done"; + } + } else { + if (d.crit) { + taskClass += " crit"; + } + } + if (taskClass.length === 0) { + taskClass = " task"; + } + if (d.milestone) { + taskClass = " milestone " + taskClass; + } + taskClass += secNum; + taskClass += " " + classStr; + return res + taskClass; + }); + rectangles.append("text").attr("id", function(d) { + return d.id + "-text"; + }).text(function(d) { + return d.task; + }).attr("font-size", conf.fontSize).attr("x", function(d) { + let startX = timeScale(d.startTime); + let endX = timeScale(d.renderEndTime || d.endTime); + if (d.milestone) { + startX += 0.5 * (timeScale(d.endTime) - timeScale(d.startTime)) - 0.5 * theBarHeight; + } + if (d.milestone) { + endX = startX + theBarHeight; + } + const textWidth = this.getBBox().width; + if (textWidth > endX - startX) { + if (endX + textWidth + 1.5 * conf.leftPadding > w2) { + return startX + theSidePad - 5; + } else { + return endX + theSidePad + 5; + } + } else { + return (endX - startX) / 2 + startX + theSidePad; + } + }).attr("y", function(d, i) { + i = d.order; + return i * theGap + conf.barHeight / 2 + (conf.fontSize / 2 - 2) + theTopPad; + }).attr("text-height", theBarHeight).attr("class", function(d) { + const startX = timeScale(d.startTime); + let endX = timeScale(d.endTime); + if (d.milestone) { + endX = startX + theBarHeight; + } + const textWidth = this.getBBox().width; + let classStr = ""; + if (d.classes.length > 0) { + classStr = d.classes.join(" "); + } + let secNum = 0; + for (const [i, category] of categories.entries()) { + if (d.type === category) { + secNum = i % conf.numberSectionStyles; + } + } + let taskType = ""; + if (d.active) { + if (d.crit) { + taskType = "activeCritText" + secNum; + } else { + taskType = "activeText" + secNum; + } + } + if (d.done) { + if (d.crit) { + taskType = taskType + " doneCritText" + secNum; + } else { + taskType = taskType + " doneText" + secNum; + } + } else { + if (d.crit) { + taskType = taskType + " critText" + secNum; + } + } + if (d.milestone) { + taskType += " milestoneText"; + } + if (textWidth > endX - startX) { + if (endX + textWidth + 1.5 * conf.leftPadding > w2) { + return classStr + " taskTextOutsideLeft taskTextOutside" + secNum + " " + taskType; + } else { + return classStr + " taskTextOutsideRight taskTextOutside" + secNum + " " + taskType + " width-" + textWidth; + } + } else { + return classStr + " taskText taskText" + secNum + " " + taskType + " width-" + textWidth; + } + }); + const securityLevel2 = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .getConfig2 */ .D7)().securityLevel; + if (securityLevel2 === "sandbox") { + let sandboxElement2; + sandboxElement2 = (0,d3__WEBPACK_IMPORTED_MODULE_7__/* .select */ .Ltv)("#i" + id); + const doc2 = sandboxElement2.nodes()[0].contentDocument; + rectangles.filter(function(d) { + return links2.has(d.id); + }).each(function(o) { + var taskRect = doc2.querySelector("#" + o.id); + var taskText = doc2.querySelector("#" + o.id + "-text"); + const oldParent = taskRect.parentNode; + var Link = doc2.createElement("a"); + Link.setAttribute("xlink:href", links2.get(o.id)); + Link.setAttribute("target", "_top"); + oldParent.appendChild(Link); + Link.appendChild(taskRect); + Link.appendChild(taskText); + }); + } + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(drawRects, "drawRects"); + function drawExcludeDays(theGap, theTopPad, theSidePad, w2, h2, tasks2, excludes2, includes2) { + if (excludes2.length === 0 && includes2.length === 0) { + return; + } + let minTime; + let maxTime; + for (const { startTime, endTime } of tasks2) { + if (minTime === void 0 || startTime < minTime) { + minTime = startTime; + } + if (maxTime === void 0 || endTime > maxTime) { + maxTime = endTime; + } + } + if (!minTime || !maxTime) { + return; + } + if (dayjs__WEBPACK_IMPORTED_MODULE_3__(maxTime).diff(dayjs__WEBPACK_IMPORTED_MODULE_3__(minTime), "year") > 5) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .log */ .Rm.warn( + "The difference between the min and max time is more than 5 years. This will cause performance issues. Skipping drawing exclude days." + ); + return; + } + const dateFormat2 = diagObj.db.getDateFormat(); + const excludeRanges = []; + let range = null; + let d = dayjs__WEBPACK_IMPORTED_MODULE_3__(minTime); + while (d.valueOf() <= maxTime) { + if (diagObj.db.isInvalidDate(d, dateFormat2, excludes2, includes2)) { + if (!range) { + range = { + start: d, + end: d + }; + } else { + range.end = d; + } + } else { + if (range) { + excludeRanges.push(range); + range = null; + } + } + d = d.add(1, "d"); + } + const rectangles = svg.append("g").selectAll("rect").data(excludeRanges).enter(); + rectangles.append("rect").attr("id", function(d2) { + return "exclude-" + d2.start.format("YYYY-MM-DD"); + }).attr("x", function(d2) { + return timeScale(d2.start) + theSidePad; + }).attr("y", conf.gridLineStartPadding).attr("width", function(d2) { + const renderEnd = d2.end.add(1, "day"); + return timeScale(renderEnd) - timeScale(d2.start); + }).attr("height", h2 - theTopPad - conf.gridLineStartPadding).attr("transform-origin", function(d2, i) { + return (timeScale(d2.start) + theSidePad + 0.5 * (timeScale(d2.end) - timeScale(d2.start))).toString() + "px " + (i * theGap + 0.5 * h2).toString() + "px"; + }).attr("class", "exclude-range"); + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(drawExcludeDays, "drawExcludeDays"); + function makeGrid(theSidePad, theTopPad, w2, h2) { + let bottomXAxis = (0,d3__WEBPACK_IMPORTED_MODULE_7__/* .axisBottom */ .l78)(timeScale).tickSize(-h2 + theTopPad + conf.gridLineStartPadding).tickFormat((0,d3__WEBPACK_IMPORTED_MODULE_7__/* .timeFormat */ .DCK)(diagObj.db.getAxisFormat() || conf.axisFormat || "%Y-%m-%d")); + const reTickInterval = /^([1-9]\d*)(millisecond|second|minute|hour|day|week|month)$/; + const resultTickInterval = reTickInterval.exec( + diagObj.db.getTickInterval() || conf.tickInterval + ); + if (resultTickInterval !== null) { + const every = resultTickInterval[1]; + const interval = resultTickInterval[2]; + const weekday2 = diagObj.db.getWeekday() || conf.weekday; + switch (interval) { + case "millisecond": + bottomXAxis.ticks(d3__WEBPACK_IMPORTED_MODULE_7__/* .timeMillisecond */ .t6C.every(every)); + break; + case "second": + bottomXAxis.ticks(d3__WEBPACK_IMPORTED_MODULE_7__/* .timeSecond */ .ucG.every(every)); + break; + case "minute": + bottomXAxis.ticks(d3__WEBPACK_IMPORTED_MODULE_7__/* .timeMinute */ .wXd.every(every)); + break; + case "hour": + bottomXAxis.ticks(d3__WEBPACK_IMPORTED_MODULE_7__/* .timeHour */ .Agd.every(every)); + break; + case "day": + bottomXAxis.ticks(d3__WEBPACK_IMPORTED_MODULE_7__/* .timeDay */ .UAC.every(every)); + break; + case "week": + bottomXAxis.ticks(mapWeekdayToTimeFunction[weekday2].every(every)); + break; + case "month": + bottomXAxis.ticks(d3__WEBPACK_IMPORTED_MODULE_7__/* .timeMonth */ .Ui6.every(every)); + break; + } + } + svg.append("g").attr("class", "grid").attr("transform", "translate(" + theSidePad + ", " + (h2 - 50) + ")").call(bottomXAxis).selectAll("text").style("text-anchor", "middle").attr("fill", "#000").attr("stroke", "none").attr("font-size", 10).attr("dy", "1em"); + if (diagObj.db.topAxisEnabled() || conf.topAxis) { + let topXAxis = (0,d3__WEBPACK_IMPORTED_MODULE_7__/* .axisTop */ .tlR)(timeScale).tickSize(-h2 + theTopPad + conf.gridLineStartPadding).tickFormat((0,d3__WEBPACK_IMPORTED_MODULE_7__/* .timeFormat */ .DCK)(diagObj.db.getAxisFormat() || conf.axisFormat || "%Y-%m-%d")); + if (resultTickInterval !== null) { + const every = resultTickInterval[1]; + const interval = resultTickInterval[2]; + const weekday2 = diagObj.db.getWeekday() || conf.weekday; + switch (interval) { + case "millisecond": + topXAxis.ticks(d3__WEBPACK_IMPORTED_MODULE_7__/* .timeMillisecond */ .t6C.every(every)); + break; + case "second": + topXAxis.ticks(d3__WEBPACK_IMPORTED_MODULE_7__/* .timeSecond */ .ucG.every(every)); + break; + case "minute": + topXAxis.ticks(d3__WEBPACK_IMPORTED_MODULE_7__/* .timeMinute */ .wXd.every(every)); + break; + case "hour": + topXAxis.ticks(d3__WEBPACK_IMPORTED_MODULE_7__/* .timeHour */ .Agd.every(every)); + break; + case "day": + topXAxis.ticks(d3__WEBPACK_IMPORTED_MODULE_7__/* .timeDay */ .UAC.every(every)); + break; + case "week": + topXAxis.ticks(mapWeekdayToTimeFunction[weekday2].every(every)); + break; + case "month": + topXAxis.ticks(d3__WEBPACK_IMPORTED_MODULE_7__/* .timeMonth */ .Ui6.every(every)); + break; + } + } + svg.append("g").attr("class", "grid").attr("transform", "translate(" + theSidePad + ", " + theTopPad + ")").call(topXAxis).selectAll("text").style("text-anchor", "middle").attr("fill", "#000").attr("stroke", "none").attr("font-size", 10); + } + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(makeGrid, "makeGrid"); + function vertLabels(theGap, theTopPad) { + let prevGap = 0; + const numOccurrences = Object.keys(categoryHeights).map((d) => [d, categoryHeights[d]]); + svg.append("g").selectAll("text").data(numOccurrences).enter().append(function(d) { + const rows = d[0].split(_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .common_default */ .Y2.lineBreakRegex); + const dy = -(rows.length - 1) / 2; + const svgLabel = doc.createElementNS("http://www.w3.org/2000/svg", "text"); + svgLabel.setAttribute("dy", dy + "em"); + for (const [j, row] of rows.entries()) { + const tspan = doc.createElementNS("http://www.w3.org/2000/svg", "tspan"); + tspan.setAttribute("alignment-baseline", "central"); + tspan.setAttribute("x", "10"); + if (j > 0) { + tspan.setAttribute("dy", "1em"); + } + tspan.textContent = row; + svgLabel.appendChild(tspan); + } + return svgLabel; + }).attr("x", 10).attr("y", function(d, i) { + if (i > 0) { + for (let j = 0; j < i; j++) { + prevGap += numOccurrences[i - 1][1]; + return d[1] * theGap / 2 + prevGap * theGap + theTopPad; + } + } else { + return d[1] * theGap / 2 + theTopPad; + } + }).attr("font-size", conf.sectionFontSize).attr("class", function(d) { + for (const [i, category] of categories.entries()) { + if (d[0] === category) { + return "sectionTitle sectionTitle" + i % conf.numberSectionStyles; + } + } + return "sectionTitle"; + }); + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(vertLabels, "vertLabels"); + function drawToday(theSidePad, theTopPad, w2, h2) { + const todayMarker2 = diagObj.db.getTodayMarker(); + if (todayMarker2 === "off") { + return; + } + const todayG = svg.append("g").attr("class", "today"); + const today = /* @__PURE__ */ new Date(); + const todayLine = todayG.append("line"); + todayLine.attr("x1", timeScale(today) + theSidePad).attr("x2", timeScale(today) + theSidePad).attr("y1", conf.titleTopMargin).attr("y2", h2 - conf.titleTopMargin).attr("class", "today"); + if (todayMarker2 !== "") { + todayLine.attr("style", todayMarker2.replace(/,/g, ";")); + } + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(drawToday, "drawToday"); + function checkUnique(arr) { + const hash = {}; + const result = []; + for (let i = 0, l = arr.length; i < l; ++i) { + if (!Object.prototype.hasOwnProperty.call(hash, arr[i])) { + hash[arr[i]] = true; + result.push(arr[i]); + } + } + return result; + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(checkUnique, "checkUnique"); +}, "draw"); +var ganttRenderer_default = { + setConf, + draw +}; + +// src/diagrams/gantt/styles.js +var getStyles = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)((options) => ` + .mermaid-main-font { + font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif); + } + + .exclude-range { + fill: ${options.excludeBkgColor}; + } + + .section { + stroke: none; + opacity: 0.2; + } + + .section0 { + fill: ${options.sectionBkgColor}; + } + + .section2 { + fill: ${options.sectionBkgColor2}; + } + + .section1, + .section3 { + fill: ${options.altSectionBkgColor}; + opacity: 0.2; + } + + .sectionTitle0 { + fill: ${options.titleColor}; + } + + .sectionTitle1 { + fill: ${options.titleColor}; + } + + .sectionTitle2 { + fill: ${options.titleColor}; + } + + .sectionTitle3 { + fill: ${options.titleColor}; + } + + .sectionTitle { + text-anchor: start; + font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif); + } + + + /* Grid and axis */ + + .grid .tick { + stroke: ${options.gridColor}; + opacity: 0.8; + shape-rendering: crispEdges; + } + + .grid .tick text { + font-family: ${options.fontFamily}; + fill: ${options.textColor}; + } + + .grid path { + stroke-width: 0; + } + + + /* Today line */ + + .today { + fill: none; + stroke: ${options.todayLineColor}; + stroke-width: 2px; + } + + + /* Task styling */ + + /* Default task */ + + .task { + stroke-width: 2; + } + + .taskText { + text-anchor: middle; + font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif); + } + + .taskTextOutsideRight { + fill: ${options.taskTextDarkColor}; + text-anchor: start; + font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif); + } + + .taskTextOutsideLeft { + fill: ${options.taskTextDarkColor}; + text-anchor: end; + } + + + /* Special case clickable */ + + .task.clickable { + cursor: pointer; + } + + .taskText.clickable { + cursor: pointer; + fill: ${options.taskTextClickableColor} !important; + font-weight: bold; + } + + .taskTextOutsideLeft.clickable { + cursor: pointer; + fill: ${options.taskTextClickableColor} !important; + font-weight: bold; + } + + .taskTextOutsideRight.clickable { + cursor: pointer; + fill: ${options.taskTextClickableColor} !important; + font-weight: bold; + } + + + /* Specific task settings for the sections*/ + + .taskText0, + .taskText1, + .taskText2, + .taskText3 { + fill: ${options.taskTextColor}; + } + + .task0, + .task1, + .task2, + .task3 { + fill: ${options.taskBkgColor}; + stroke: ${options.taskBorderColor}; + } + + .taskTextOutside0, + .taskTextOutside2 + { + fill: ${options.taskTextOutsideColor}; + } + + .taskTextOutside1, + .taskTextOutside3 { + fill: ${options.taskTextOutsideColor}; + } + + + /* Active task */ + + .active0, + .active1, + .active2, + .active3 { + fill: ${options.activeTaskBkgColor}; + stroke: ${options.activeTaskBorderColor}; + } + + .activeText0, + .activeText1, + .activeText2, + .activeText3 { + fill: ${options.taskTextDarkColor} !important; + } + + + /* Completed task */ + + .done0, + .done1, + .done2, + .done3 { + stroke: ${options.doneTaskBorderColor}; + fill: ${options.doneTaskBkgColor}; + stroke-width: 2; + } + + .doneText0, + .doneText1, + .doneText2, + .doneText3 { + fill: ${options.taskTextDarkColor} !important; + } + + + /* Tasks on the critical line */ + + .crit0, + .crit1, + .crit2, + .crit3 { + stroke: ${options.critBorderColor}; + fill: ${options.critBkgColor}; + stroke-width: 2; + } + + .activeCrit0, + .activeCrit1, + .activeCrit2, + .activeCrit3 { + stroke: ${options.critBorderColor}; + fill: ${options.activeTaskBkgColor}; + stroke-width: 2; + } + + .doneCrit0, + .doneCrit1, + .doneCrit2, + .doneCrit3 { + stroke: ${options.critBorderColor}; + fill: ${options.doneTaskBkgColor}; + stroke-width: 2; + cursor: pointer; + shape-rendering: crispEdges; + } + + .milestone { + transform: rotate(45deg) scale(0.8,0.8); + } + + .milestoneText { + font-style: italic; + } + .doneCritText0, + .doneCritText1, + .doneCritText2, + .doneCritText3 { + fill: ${options.taskTextDarkColor} !important; + } + + .activeCritText0, + .activeCritText1, + .activeCritText2, + .activeCritText3 { + fill: ${options.taskTextDarkColor} !important; + } + + .titleText { + text-anchor: middle; + font-size: 18px; + fill: ${options.titleColor || options.textColor}; + font-family: var(--mermaid-font-family, "trebuchet ms", verdana, arial, sans-serif); + } +`, "getStyles"); +var styles_default = getStyles; + +// src/diagrams/gantt/ganttDiagram.ts +var diagram = { + parser: gantt_default, + db: ganttDb_default, + renderer: ganttRenderer_default, + styles: styles_default +}; + + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/30259897.f8f67bc3.js b/assets/js/30259897.f8f67bc3.js new file mode 100644 index 00000000..f98109ea --- /dev/null +++ b/assets/js/30259897.f8f67bc3.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkbeacon_docs=self.webpackChunkbeacon_docs||[]).push([[142],{64887:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>i,contentTitle:()=>s,default:()=>u,frontMatter:()=>c,metadata:()=>d,toc:()=>l});var a=n(74848),o=n(28453);const c={title:"Debug Wallet"},s=void 0,d={id:"advanced/debug-wallet",title:"Debug Wallet",description:"This wallet is intended for developers to debug their dApps.",source:"@site/docs/advanced/debug-wallet.mdx",sourceDirName:"advanced",slug:"/advanced/debug-wallet",permalink:"/advanced/debug-wallet",draft:!1,unlisted:!1,editUrl:"https://github.com/airgap-it/beacon-docs/edit/main/src/docs/advanced/debug-wallet.mdx",tags:[],version:"current",frontMatter:{title:"Debug Wallet"},sidebar:"docs",previous:{title:"Different Beacon Node",permalink:"/advanced/different-node"},next:{title:"Client Info",permalink:"/advanced/sdk-info"}},i={},l=[{value:"Watch-only Accounts",id:"watch-only-accounts",level:2},{value:"Beacon Accounts",id:"beacon-accounts",level:2}];function r(e){const t={a:"a",admonition:"admonition",h2:"h2",p:"p",...(0,o.R)(),...e.components};return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(t.admonition,{type:"caution",children:(0,a.jsx)(t.p,{children:"This wallet is intended for developers to debug their dApps."})}),"\n",(0,a.jsx)(t.p,{children:"A common issue with dApps is that users report that a certain functionality doesn't work for them. It is often cumbersome to reproduce this in a development environment because the dev team doesn't have access to the account. The Debug Wallet can help debug those cases."}),"\n",(0,a.jsx)(t.p,{children:(0,a.jsx)(t.a,{href:"https://debug.walletbeacon.io",children:"Beacon Debug Wallet"})}),"\n",(0,a.jsx)(t.h2,{id:"watch-only-accounts",children:"Watch-only Accounts"}),"\n",(0,a.jsx)(t.p,{children:'With the "watch-only" feature in the Debug Wallet it is possible to connect to any dApp using any tz account. The dApp can then be viewed from the eyes of that user and operations can be debugged with ease.'}),"\n",(0,a.jsx)(t.h2,{id:"beacon-accounts",children:"Beacon Accounts"}),"\n",(0,a.jsx)(t.p,{children:'It is possible to pair any Beacon-compatible wallet to the Debug Wallet. If you do that, the Debug Wallet acts as a "relay" between the dApp and the actual wallet. Requests and responses will be relayed, but the details can be inspected.'})]})}function u(e={}){const{wrapper:t}={...(0,o.R)(),...e.components};return t?(0,a.jsx)(t,{...e,children:(0,a.jsx)(r,{...e})}):r(e)}},28453:(e,t,n)=>{n.d(t,{R:()=>s,x:()=>d});var a=n(96540);const o={},c=a.createContext(o);function s(e){const t=a.useContext(c);return a.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function d(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(o):e.components||o:s(e.components),a.createElement(c.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/3148.2355113c.js b/assets/js/3148.2355113c.js new file mode 100644 index 00000000..863dc2ca --- /dev/null +++ b/assets/js/3148.2355113c.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkbeacon_docs=self.webpackChunkbeacon_docs||[]).push([[3148],{36151:(t,e,s)=>{s.d(e,{A:()=>r,P:()=>o});var i=s(64994),n=s(20007),r=(0,i.K2)(((t,e)=>{let s;"sandbox"===e&&(s=(0,n.Ltv)("#i"+t));return("sandbox"===e?(0,n.Ltv)(s.nodes()[0].contentDocument.body):(0,n.Ltv)("body")).select(`[id="${t}"]`)}),"getDiagramElement"),o=(0,i.K2)(((t,e,s,n)=>{t.attr("class",s);const{width:r,height:o,x:l,y:h}=a(t,e);(0,i.a$)(t,o,r,n);const d=c(l,h,r,o,e);t.attr("viewBox",d),i.Rm.debug(`viewBox configured: ${d} with padding: ${e}`)}),"setupViewPortForSVG"),a=(0,i.K2)(((t,e)=>{const s=t.node()?.getBBox()||{width:0,height:0,x:0,y:0};return{width:s.width+2*e,height:s.height+2*e,x:s.x,y:s.y}}),"calculateDimensionsWithPadding"),c=(0,i.K2)(((t,e,s,i,n)=>`${t-n} ${e-n} ${s} ${i}`),"createViewBox")},83148:(t,e,s)=>{s.d(e,{Zk:()=>c,iP:()=>Bt,q7:()=>w,tM:()=>Ft});var i=s(36151),n=s(62602),r=s(57323),o=s(64994),a=function(){var t=(0,o.K2)((function(t,e,s,i){for(s=s||{},i=t.length;i--;s[t[i]]=e);return s}),"o"),e=[1,2],s=[1,3],i=[1,4],n=[2,4],r=[1,9],a=[1,11],c=[1,16],l=[1,17],h=[1,18],d=[1,19],u=[1,32],p=[1,20],y=[1,21],g=[1,22],f=[1,23],m=[1,24],S=[1,26],_=[1,27],b=[1,28],T=[1,29],k=[1,30],E=[1,31],x=[1,34],D=[1,35],C=[1,36],$=[1,37],v=[1,33],L=[1,4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,45,48,49,50,51,54],I=[1,4,5,14,15,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,45,48,49,50,51,54],A=[4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,45,48,49,50,51,54],K={trace:(0,o.K2)((function(){}),"trace"),yy:{},symbols_:{error:2,start:3,SPACE:4,NL:5,SD:6,document:7,line:8,statement:9,classDefStatement:10,styleStatement:11,cssClassStatement:12,idStatement:13,DESCR:14,"--\x3e":15,HIDE_EMPTY:16,scale:17,WIDTH:18,COMPOSIT_STATE:19,STRUCT_START:20,STRUCT_STOP:21,STATE_DESCR:22,AS:23,ID:24,FORK:25,JOIN:26,CHOICE:27,CONCURRENT:28,note:29,notePosition:30,NOTE_TEXT:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,classDef:38,CLASSDEF_ID:39,CLASSDEF_STYLEOPTS:40,DEFAULT:41,style:42,STYLE_IDS:43,STYLEDEF_STYLEOPTS:44,class:45,CLASSENTITY_IDS:46,STYLECLASS:47,direction_tb:48,direction_bt:49,direction_rl:50,direction_lr:51,eol:52,";":53,EDGE_STATE:54,STYLE_SEPARATOR:55,left_of:56,right_of:57,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NL",6:"SD",14:"DESCR",15:"--\x3e",16:"HIDE_EMPTY",17:"scale",18:"WIDTH",19:"COMPOSIT_STATE",20:"STRUCT_START",21:"STRUCT_STOP",22:"STATE_DESCR",23:"AS",24:"ID",25:"FORK",26:"JOIN",27:"CHOICE",28:"CONCURRENT",29:"note",31:"NOTE_TEXT",33:"acc_title",34:"acc_title_value",35:"acc_descr",36:"acc_descr_value",37:"acc_descr_multiline_value",38:"classDef",39:"CLASSDEF_ID",40:"CLASSDEF_STYLEOPTS",41:"DEFAULT",42:"style",43:"STYLE_IDS",44:"STYLEDEF_STYLEOPTS",45:"class",46:"CLASSENTITY_IDS",47:"STYLECLASS",48:"direction_tb",49:"direction_bt",50:"direction_rl",51:"direction_lr",53:";",54:"EDGE_STATE",55:"STYLE_SEPARATOR",56:"left_of",57:"right_of"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[9,1],[9,1],[9,1],[9,1],[9,2],[9,3],[9,4],[9,1],[9,2],[9,1],[9,4],[9,3],[9,6],[9,1],[9,1],[9,1],[9,1],[9,4],[9,4],[9,1],[9,2],[9,2],[9,1],[10,3],[10,3],[11,3],[12,3],[32,1],[32,1],[32,1],[32,1],[52,1],[52,1],[13,1],[13,1],[13,3],[13,3],[30,1],[30,1]],performAction:(0,o.K2)((function(t,e,s,i,n,r,o){var a=r.length-1;switch(n){case 3:return i.setRootDoc(r[a]),r[a];case 4:this.$=[];break;case 5:"nl"!=r[a]&&(r[a-1].push(r[a]),this.$=r[a-1]);break;case 6:case 7:case 12:this.$=r[a];break;case 8:this.$="nl";break;case 13:const t=r[a-1];t.description=i.trimColon(r[a]),this.$=t;break;case 14:this.$={stmt:"relation",state1:r[a-2],state2:r[a]};break;case 15:const e=i.trimColon(r[a]);this.$={stmt:"relation",state1:r[a-3],state2:r[a-1],description:e};break;case 19:this.$={stmt:"state",id:r[a-3],type:"default",description:"",doc:r[a-1]};break;case 20:var c=r[a],l=r[a-2].trim();if(r[a].match(":")){var h=r[a].split(":");c=h[0],l=[l,h[1]]}this.$={stmt:"state",id:c,type:"default",description:l};break;case 21:this.$={stmt:"state",id:r[a-3],type:"default",description:r[a-5],doc:r[a-1]};break;case 22:this.$={stmt:"state",id:r[a],type:"fork"};break;case 23:this.$={stmt:"state",id:r[a],type:"join"};break;case 24:this.$={stmt:"state",id:r[a],type:"choice"};break;case 25:this.$={stmt:"state",id:i.getDividerId(),type:"divider"};break;case 26:this.$={stmt:"state",id:r[a-1].trim(),note:{position:r[a-2].trim(),text:r[a].trim()}};break;case 29:this.$=r[a].trim(),i.setAccTitle(this.$);break;case 30:case 31:this.$=r[a].trim(),i.setAccDescription(this.$);break;case 32:case 33:this.$={stmt:"classDef",id:r[a-1].trim(),classes:r[a].trim()};break;case 34:this.$={stmt:"style",id:r[a-1].trim(),styleClass:r[a].trim()};break;case 35:this.$={stmt:"applyClass",id:r[a-1].trim(),styleClass:r[a].trim()};break;case 36:i.setDirection("TB"),this.$={stmt:"dir",value:"TB"};break;case 37:i.setDirection("BT"),this.$={stmt:"dir",value:"BT"};break;case 38:i.setDirection("RL"),this.$={stmt:"dir",value:"RL"};break;case 39:i.setDirection("LR"),this.$={stmt:"dir",value:"LR"};break;case 42:case 43:this.$={stmt:"state",id:r[a].trim(),type:"default",description:""};break;case 44:case 45:this.$={stmt:"state",id:r[a-2].trim(),classes:[r[a].trim()],type:"default",description:""}}}),"anonymous"),table:[{3:1,4:e,5:s,6:i},{1:[3]},{3:5,4:e,5:s,6:i},{3:6,4:e,5:s,6:i},t([1,4,5,16,17,19,22,24,25,26,27,28,29,33,35,37,38,42,45,48,49,50,51,54],n,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:r,5:a,8:8,9:10,10:12,11:13,12:14,13:15,16:c,17:l,19:h,22:d,24:u,25:p,26:y,27:g,28:f,29:m,32:25,33:S,35:_,37:b,38:T,42:k,45:E,48:x,49:D,50:C,51:$,54:v},t(L,[2,5]),{9:38,10:12,11:13,12:14,13:15,16:c,17:l,19:h,22:d,24:u,25:p,26:y,27:g,28:f,29:m,32:25,33:S,35:_,37:b,38:T,42:k,45:E,48:x,49:D,50:C,51:$,54:v},t(L,[2,7]),t(L,[2,8]),t(L,[2,9]),t(L,[2,10]),t(L,[2,11]),t(L,[2,12],{14:[1,39],15:[1,40]}),t(L,[2,16]),{18:[1,41]},t(L,[2,18],{20:[1,42]}),{23:[1,43]},t(L,[2,22]),t(L,[2,23]),t(L,[2,24]),t(L,[2,25]),{30:44,31:[1,45],56:[1,46],57:[1,47]},t(L,[2,28]),{34:[1,48]},{36:[1,49]},t(L,[2,31]),{39:[1,50],41:[1,51]},{43:[1,52]},{46:[1,53]},t(I,[2,42],{55:[1,54]}),t(I,[2,43],{55:[1,55]}),t(L,[2,36]),t(L,[2,37]),t(L,[2,38]),t(L,[2,39]),t(L,[2,6]),t(L,[2,13]),{13:56,24:u,54:v},t(L,[2,17]),t(A,n,{7:57}),{24:[1,58]},{24:[1,59]},{23:[1,60]},{24:[2,46]},{24:[2,47]},t(L,[2,29]),t(L,[2,30]),{40:[1,61]},{40:[1,62]},{44:[1,63]},{47:[1,64]},{24:[1,65]},{24:[1,66]},t(L,[2,14],{14:[1,67]}),{4:r,5:a,8:8,9:10,10:12,11:13,12:14,13:15,16:c,17:l,19:h,21:[1,68],22:d,24:u,25:p,26:y,27:g,28:f,29:m,32:25,33:S,35:_,37:b,38:T,42:k,45:E,48:x,49:D,50:C,51:$,54:v},t(L,[2,20],{20:[1,69]}),{31:[1,70]},{24:[1,71]},t(L,[2,32]),t(L,[2,33]),t(L,[2,34]),t(L,[2,35]),t(I,[2,44]),t(I,[2,45]),t(L,[2,15]),t(L,[2,19]),t(A,n,{7:72}),t(L,[2,26]),t(L,[2,27]),{4:r,5:a,8:8,9:10,10:12,11:13,12:14,13:15,16:c,17:l,19:h,21:[1,73],22:d,24:u,25:p,26:y,27:g,28:f,29:m,32:25,33:S,35:_,37:b,38:T,42:k,45:E,48:x,49:D,50:C,51:$,54:v},t(L,[2,21])],defaultActions:{5:[2,1],6:[2,2],46:[2,46],47:[2,47]},parseError:(0,o.K2)((function(t,e){if(!e.recoverable){var s=new Error(t);throw s.hash=e,s}this.trace(t)}),"parseError"),parse:(0,o.K2)((function(t){var e=this,s=[0],i=[],n=[null],r=[],a=this.table,c="",l=0,h=0,d=0,u=r.slice.call(arguments,1),p=Object.create(this.lexer),y={yy:{}};for(var g in this.yy)Object.prototype.hasOwnProperty.call(this.yy,g)&&(y.yy[g]=this.yy[g]);p.setInput(t,y.yy),y.yy.lexer=p,y.yy.parser=this,void 0===p.yylloc&&(p.yylloc={});var f=p.yylloc;r.push(f);var m=p.options&&p.options.ranges;function S(){var t;return"number"!=typeof(t=i.pop()||p.lex()||1)&&(t instanceof Array&&(t=(i=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof y.yy.parseError?this.parseError=y.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,o.K2)((function(t){s.length=s.length-2*t,n.length=n.length-t,r.length=r.length-t}),"popStack"),(0,o.K2)(S,"lex");for(var _,b,T,k,E,x,D,C,$,v={};;){if(T=s[s.length-1],this.defaultActions[T]?k=this.defaultActions[T]:(null==_&&(_=S()),k=a[T]&&a[T][_]),void 0===k||!k.length||!k[0]){var L="";for(x in $=[],a[T])this.terminals_[x]&&x>2&&$.push("'"+this.terminals_[x]+"'");L=p.showPosition?"Parse error on line "+(l+1)+":\n"+p.showPosition()+"\nExpecting "+$.join(", ")+", got '"+(this.terminals_[_]||_)+"'":"Parse error on line "+(l+1)+": Unexpected "+(1==_?"end of input":"'"+(this.terminals_[_]||_)+"'"),this.parseError(L,{text:p.match,token:this.terminals_[_]||_,line:p.yylineno,loc:f,expected:$})}if(k[0]instanceof Array&&k.length>1)throw new Error("Parse Error: multiple actions possible at state: "+T+", token: "+_);switch(k[0]){case 1:s.push(_),n.push(p.yytext),r.push(p.yylloc),s.push(k[1]),_=null,b?(_=b,b=null):(h=p.yyleng,c=p.yytext,l=p.yylineno,f=p.yylloc,d>0&&d--);break;case 2:if(D=this.productions_[k[1]][1],v.$=n[n.length-D],v._$={first_line:r[r.length-(D||1)].first_line,last_line:r[r.length-1].last_line,first_column:r[r.length-(D||1)].first_column,last_column:r[r.length-1].last_column},m&&(v._$.range=[r[r.length-(D||1)].range[0],r[r.length-1].range[1]]),void 0!==(E=this.performAction.apply(v,[c,h,l,y.yy,k[1],n,r].concat(u))))return E;D&&(s=s.slice(0,-1*D*2),n=n.slice(0,-1*D),r=r.slice(0,-1*D)),s.push(this.productions_[k[1]][0]),n.push(v.$),r.push(v._$),C=a[s[s.length-2]][s[s.length-1]],s.push(C);break;case 3:return!0}}return!0}),"parse")},R=function(){return{EOF:1,parseError:(0,o.K2)((function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)}),"parseError"),setInput:(0,o.K2)((function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this}),"setInput"),input:(0,o.K2)((function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t}),"input"),unput:(0,o.K2)((function(t){var e=t.length,s=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var i=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),s.length-1&&(this.yylineno-=s.length-1);var n=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:s?(s.length===i.length?this.yylloc.first_column:0)+i[i.length-s.length].length-s[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[n[0],n[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this}),"unput"),more:(0,o.K2)((function(){return this._more=!0,this}),"more"),reject:(0,o.K2)((function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"reject"),less:(0,o.K2)((function(t){this.unput(this.match.slice(t))}),"less"),pastInput:(0,o.K2)((function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")}),"pastInput"),upcomingInput:(0,o.K2)((function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")}),"upcomingInput"),showPosition:(0,o.K2)((function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"}),"showPosition"),test_match:(0,o.K2)((function(t,e){var s,i,n;if(this.options.backtrack_lexer&&(n={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(n.yylloc.range=this.yylloc.range.slice(0))),(i=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=i.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:i?i[i.length-1].length-i[i.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],s=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),s)return s;if(this._backtrack){for(var r in n)this[r]=n[r];return!1}return!1}),"test_match"),next:(0,o.K2)((function(){if(this.done)return this.EOF;var t,e,s,i;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var n=this._currentRules(),r=0;re[0].length)){if(e=s,i=r,this.options.backtrack_lexer){if(!1!==(t=this.test_match(s,n[r])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,n[i]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"next"),lex:(0,o.K2)((function(){var t=this.next();return t||this.lex()}),"lex"),begin:(0,o.K2)((function(t){this.conditionStack.push(t)}),"begin"),popState:(0,o.K2)((function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]}),"popState"),_currentRules:(0,o.K2)((function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules}),"_currentRules"),topState:(0,o.K2)((function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"}),"topState"),pushState:(0,o.K2)((function(t){this.begin(t)}),"pushState"),stateStackSize:(0,o.K2)((function(){return this.conditionStack.length}),"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,o.K2)((function(t,e,s,i){switch(s){case 0:return 41;case 1:case 42:return 48;case 2:case 43:return 49;case 3:case 44:return 50;case 4:case 45:return 51;case 5:case 6:case 8:case 9:case 10:case 11:case 54:case 56:case 62:break;case 7:case 77:return 5;case 12:case 32:return this.pushState("SCALE"),17;case 13:case 33:return 18;case 14:case 20:case 34:case 49:case 52:this.popState();break;case 15:return this.begin("acc_title"),33;case 16:return this.popState(),"acc_title_value";case 17:return this.begin("acc_descr"),35;case 18:return this.popState(),"acc_descr_value";case 19:this.begin("acc_descr_multiline");break;case 21:return"acc_descr_multiline_value";case 22:return this.pushState("CLASSDEF"),38;case 23:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";case 24:return this.popState(),this.pushState("CLASSDEFID"),39;case 25:return this.popState(),40;case 26:return this.pushState("CLASS"),45;case 27:return this.popState(),this.pushState("CLASS_STYLE"),46;case 28:return this.popState(),47;case 29:return this.pushState("STYLE"),42;case 30:return this.popState(),this.pushState("STYLEDEF_STYLES"),43;case 31:return this.popState(),44;case 35:this.pushState("STATE");break;case 36:case 39:return this.popState(),e.yytext=e.yytext.slice(0,-8).trim(),25;case 37:case 40:return this.popState(),e.yytext=e.yytext.slice(0,-8).trim(),26;case 38:case 41:return this.popState(),e.yytext=e.yytext.slice(0,-10).trim(),27;case 46:this.pushState("STATE_STRING");break;case 47:return this.pushState("STATE_ID"),"AS";case 48:case 64:return this.popState(),"ID";case 50:return"STATE_DESCR";case 51:return 19;case 53:return this.popState(),this.pushState("struct"),20;case 55:return this.popState(),21;case 57:return this.begin("NOTE"),29;case 58:return this.popState(),this.pushState("NOTE_ID"),56;case 59:return this.popState(),this.pushState("NOTE_ID"),57;case 60:this.popState(),this.pushState("FLOATING_NOTE");break;case 61:return this.popState(),this.pushState("FLOATING_NOTE_ID"),"AS";case 63:return"NOTE_TEXT";case 65:return this.popState(),this.pushState("NOTE_TEXT"),24;case 66:return this.popState(),e.yytext=e.yytext.substr(2).trim(),31;case 67:return this.popState(),e.yytext=e.yytext.slice(0,-8).trim(),31;case 68:case 69:return 6;case 70:return 16;case 71:return 54;case 72:return 24;case 73:return e.yytext=e.yytext.trim(),14;case 74:return 15;case 75:return 28;case 76:return 55;case 78:return"INVALID"}}),"anonymous"),rules:[/^(?:default\b)/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:[\s]+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:classDef\s+)/i,/^(?:DEFAULT\s+)/i,/^(?:\w+\s+)/i,/^(?:[^\n]*)/i,/^(?:class\s+)/i,/^(?:(\w+)+((,\s*\w+)*))/i,/^(?:[^\n]*)/i,/^(?:style\s+)/i,/^(?:[\w,]+\s+)/i,/^(?:[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:state\s+)/i,/^(?:.*<>)/i,/^(?:.*<>)/i,/^(?:.*<>)/i,/^(?:.*\[\[fork\]\])/i,/^(?:.*\[\[join\]\])/i,/^(?:.*\[\[choice\]\])/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:["])/i,/^(?:\s*as\s+)/i,/^(?:[^\n\{]*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[^\n\s\{]+)/i,/^(?:\n)/i,/^(?:\{)/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:\})/i,/^(?:[\n])/i,/^(?:note\s+)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:")/i,/^(?:\s*as\s*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[^\n]*)/i,/^(?:\s*[^:\n\s\-]+)/i,/^(?:\s*:[^:\n;]+)/i,/^(?:[\s\S]*?end note\b)/i,/^(?:stateDiagram\s+)/i,/^(?:stateDiagram-v2\s+)/i,/^(?:hide empty description\b)/i,/^(?:\[\*\])/i,/^(?:[^:\n\s\-\{]+)/i,/^(?:\s*:[^:\n;]+)/i,/^(?:-->)/i,/^(?:--)/i,/^(?::::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{LINE:{rules:[9,10],inclusive:!1},struct:{rules:[9,10,22,26,29,35,42,43,44,45,54,55,56,57,71,72,73,74,75],inclusive:!1},FLOATING_NOTE_ID:{rules:[64],inclusive:!1},FLOATING_NOTE:{rules:[61,62,63],inclusive:!1},NOTE_TEXT:{rules:[66,67],inclusive:!1},NOTE_ID:{rules:[65],inclusive:!1},NOTE:{rules:[58,59,60],inclusive:!1},STYLEDEF_STYLEOPTS:{rules:[],inclusive:!1},STYLEDEF_STYLES:{rules:[31],inclusive:!1},STYLE_IDS:{rules:[],inclusive:!1},STYLE:{rules:[30],inclusive:!1},CLASS_STYLE:{rules:[28],inclusive:!1},CLASS:{rules:[27],inclusive:!1},CLASSDEFID:{rules:[25],inclusive:!1},CLASSDEF:{rules:[23,24],inclusive:!1},acc_descr_multiline:{rules:[20,21],inclusive:!1},acc_descr:{rules:[18],inclusive:!1},acc_title:{rules:[16],inclusive:!1},SCALE:{rules:[13,14,33,34],inclusive:!1},ALIAS:{rules:[],inclusive:!1},STATE_ID:{rules:[48],inclusive:!1},STATE_STRING:{rules:[49,50],inclusive:!1},FORK_STATE:{rules:[],inclusive:!1},STATE:{rules:[9,10,36,37,38,39,40,41,46,47,51,52,53],inclusive:!1},ID:{rules:[9,10],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,10,11,12,15,17,19,22,26,29,32,35,53,57,68,69,70,71,72,73,74,76,77,78],inclusive:!0}}}}();function w(){this.yy={}}return K.lexer=R,(0,o.K2)(w,"Parser"),w.prototype=K,K.Parser=w,new w}();a.parser=a;var c=a,l="state",h="relation",d="default",u="divider",p="fill:none",y="fill: #333",g="text",f="normal",m="rect",S="rectWithTitle",_="divider",b="roundedWithTitle",T="statediagram",k=`${T}-state`,E="transition",x=`${E} note-edge`,D=`${T}-note`,C=`${T}-cluster`,$=`${T}-cluster-alt`,v="parent",L="note",I="----",A=`${I}${L}`,K=`${I}${v}`,R=(0,o.K2)(((t,e="TB")=>{if(!t.doc)return e;let s=e;for(const i of t.doc)"dir"===i.stmt&&(s=i.value);return s}),"getDir"),w={getClasses:(0,o.K2)((function(t,e){return e.db.extract(e.db.getRootDocV2()),e.db.getClasses()}),"getClasses"),draw:(0,o.K2)((async function(t,e,s,a){o.Rm.info("REF0:"),o.Rm.info("Drawing state diagram (v2)",e);const{securityLevel:c,state:l,layout:h}=(0,o.D7)();a.db.extract(a.db.getRootDocV2());const d=a.db.getData(),u=(0,i.A)(e,c);d.type=a.type,d.layoutAlgorithm=h,d.nodeSpacing=l?.nodeSpacing||50,d.rankSpacing=l?.rankSpacing||50,d.markers=["barb"],d.diagramId=e,await(0,n.XX)(d,u);r._K.insertTitle(u,"statediagramTitleText",l?.titleTopMargin??25,a.db.getDiagramTitle()),(0,i.P)(u,8,T,l?.useMaxWidth??!0)}),"draw"),getDir:R},O=new Map,N=0;function B(t="",e=0,s="",i=I){return`state-${t}${null!==s&&s.length>0?`${i}${s}`:""}-${e}`}(0,o.K2)(B,"stateDomId");var F=(0,o.K2)(((t,e,s,i,n,r,a,c)=>{o.Rm.trace("items",e),e.forEach((e=>{switch(e.stmt){case l:case d:z(t,e,s,i,n,r,a,c);break;case h:{z(t,e.state1,s,i,n,r,a,c),z(t,e.state2,s,i,n,r,a,c);const l={id:"edge"+N,start:e.state1.id,end:e.state2.id,arrowhead:"normal",arrowTypeEnd:"arrow_barb",style:p,labelStyle:"",label:o.Y2.sanitizeText(e.description,(0,o.D7)()),arrowheadStyle:y,labelpos:"c",labelType:g,thickness:f,classes:E,look:a};n.push(l),N++}}}))}),"setupDoc"),P=(0,o.K2)(((t,e="TB")=>{let s=e;if(t.doc)for(const i of t.doc)"dir"===i.stmt&&(s=i.value);return s}),"getDir");function Y(t,e,s){if(!e.id||""===e.id||""===e.id)return;e.cssClasses&&(Array.isArray(e.cssCompiledStyles)||(e.cssCompiledStyles=[]),e.cssClasses.split(" ").forEach((t=>{if(s.get(t)){const i=s.get(t);e.cssCompiledStyles=[...e.cssCompiledStyles,...i.styles]}})));const i=t.find((t=>t.id===e.id));i?Object.assign(i,e):t.push(e)}function G(t){return t?.classes?.join(" ")??""}function j(t){return t?.styles??[]}(0,o.K2)(Y,"insertOrUpdateNode"),(0,o.K2)(G,"getClassesFromDbInfo"),(0,o.K2)(j,"getStylesFromDbInfo");var z=(0,o.K2)(((t,e,s,i,n,r,a,c)=>{const l=e.id,h=s.get(l),T=G(h),E=j(h);if(o.Rm.info("dataFetcher parsedItem",e,h,E),"root"!==l){let s=m;!0===e.start?s="stateStart":!1===e.start&&(s="stateEnd"),e.type!==d&&(s=e.type),O.get(l)||O.set(l,{id:l,shape:s,description:o.Y2.sanitizeText(l,(0,o.D7)()),cssClasses:`${T} ${k}`,cssStyles:E});const h=O.get(l);e.description&&(Array.isArray(h.description)?(h.shape=S,h.description.push(e.description)):h.description?.length>0?(h.shape=S,h.description===l?h.description=[e.description]:h.description=[h.description,e.description]):(h.shape=m,h.description=e.description),h.description=o.Y2.sanitizeTextOrArray(h.description,(0,o.D7)())),1===h.description?.length&&h.shape===S&&("group"===h.type?h.shape=b:h.shape=m),!h.type&&e.doc&&(o.Rm.info("Setting cluster for XCX",l,P(e)),h.type="group",h.isGroup=!0,h.dir=P(e),h.shape=e.type===u?_:b,h.cssClasses=`${h.cssClasses} ${C} ${r?$:""}`);const I={labelStyle:"",shape:h.shape,label:h.description,cssClasses:h.cssClasses,cssCompiledStyles:[],cssStyles:h.cssStyles,id:l,dir:h.dir,domId:B(l,N),type:h.type,isGroup:"group"===h.type,padding:8,rx:10,ry:10,look:a};if(I.shape===_&&(I.label=""),t&&"root"!==t.id&&(o.Rm.trace("Setting node ",l," to be child of its parent ",t.id),I.parentId=t.id),I.centerLabel=!0,e.note){const t={labelStyle:"",shape:"note",label:e.note.text,cssClasses:D,cssStyles:[],cssCompilesStyles:[],id:l+A+"-"+N,domId:B(l,N,L),type:h.type,isGroup:"group"===h.type,padding:(0,o.D7)().flowchart.padding,look:a,position:e.note.position},s=l+K,r={labelStyle:"",shape:"noteGroup",label:e.note.text,cssClasses:h.cssClasses,cssStyles:[],id:l+K,domId:B(l,N,v),type:"group",isGroup:!0,padding:16,look:a,position:e.note.position};N++,r.id=s,t.parentId=s,Y(i,r,c),Y(i,t,c),Y(i,I,c);let d=l,u=t.id;"left of"===e.note.position&&(d=t.id,u=l),n.push({id:d+"-"+u,start:d,end:u,arrowhead:"none",arrowTypeEnd:"",style:p,labelStyle:"",classes:x,arrowheadStyle:y,labelpos:"c",labelType:g,thickness:f,look:a})}else Y(i,I,c)}e.doc&&(o.Rm.trace("Adding nodes children "),F(e,e.doc,s,i,n,!r,a,c))}),"dataFetcher"),U=(0,o.K2)((()=>{O.clear(),N=0}),"reset"),M="[*]",X="start",V=M,W="color",H="fill";function J(){return new Map}(0,o.K2)(J,"newClassesList");var q=[],Z=[],Q="LR",tt=[],et=J(),st=(0,o.K2)((()=>({relations:[],states:new Map,documents:{}})),"newDoc"),it={root:st()},nt=it.root,rt=0,ot=0,at=(0,o.K2)((t=>JSON.parse(JSON.stringify(t))),"clone"),ct=(0,o.K2)((t=>{o.Rm.info("Setting root doc",t),tt=t}),"setRootDoc"),lt=(0,o.K2)((()=>tt),"getRootDoc"),ht=(0,o.K2)(((t,e,s)=>{if(e.stmt===h)ht(t,e.state1,!0),ht(t,e.state2,!1);else if(e.stmt===l&&("[*]"===e.id?(e.id=s?t.id+"_start":t.id+"_end",e.start=s):e.id=e.id.trim()),e.doc){const t=[];let s,i=[];for(s=0;s0&&i.length>0){const s={stmt:l,id:(0,r.$C)(),type:"divider",doc:at(i)};t.push(at(s)),e.doc=t}e.doc.forEach((t=>ht(e,t,!0)))}}),"docTranslator"),dt=(0,o.K2)((()=>(ht({id:"root"},{id:"root",doc:tt},!0),{id:"root",doc:tt})),"getRootDocV2"),ut=(0,o.K2)((t=>{let e;e=t.doc?t.doc:t,o.Rm.info(e),yt(!0),o.Rm.info("Extract initial document:",e),e.forEach((t=>{switch(o.Rm.warn("Statement",t.stmt),t.stmt){case l:pt(t.id.trim(),t.type,t.doc,t.description,t.note,t.classes,t.styles,t.textStyles);break;case h:xt(t.state1,t.state2,t.description);break;case"classDef":vt(t.id.trim(),t.classes);break;case"style":{const e=t.id.trim().split(","),s=t.styleClass.split(",");e.forEach((t=>{let e=gt(t);if(void 0===e){const s=t.trim();pt(s),e=gt(s)}e.styles=s.map((t=>t.replace(/;/g,"")?.trim()))}))}break;case"applyClass":It(t.id.trim(),t.styleClass)}}));const s=ft(),i=(0,o.D7)().look;U(),z(void 0,dt(),s,q,Z,!0,i,et),q.forEach((t=>{if(Array.isArray(t.label)){if(t.description=t.label.slice(1),t.isGroup&&t.description.length>0)throw new Error("Group nodes can only have label. Remove the additional description for node ["+t.id+"]");t.label=t.label[0]}}))}),"extract"),pt=(0,o.K2)((function(t,e=d,s=null,i=null,n=null,r=null,a=null,c=null){const l=t?.trim();if(nt.states.has(l)?(nt.states.get(l).doc||(nt.states.get(l).doc=s),nt.states.get(l).type||(nt.states.get(l).type=e)):(o.Rm.info("Adding state ",l,i),nt.states.set(l,{id:l,descriptions:[],type:e,doc:s,note:n,classes:[],styles:[],textStyles:[]})),i&&(o.Rm.info("Setting state description",l,i),"string"==typeof i&&Dt(l,i.trim()),"object"==typeof i&&i.forEach((t=>Dt(l,t.trim())))),n){const t=nt.states.get(l);t.note=n,t.note.text=o.Y2.sanitizeText(t.note.text,(0,o.D7)())}if(r){o.Rm.info("Setting state classes",l,r);("string"==typeof r?[r]:r).forEach((t=>It(l,t.trim())))}if(a){o.Rm.info("Setting state styles",l,a);("string"==typeof a?[a]:a).forEach((t=>At(l,t.trim())))}if(c){o.Rm.info("Setting state styles",l,a);("string"==typeof c?[c]:c).forEach((t=>Kt(l,t.trim())))}}),"addState"),yt=(0,o.K2)((function(t){q=[],Z=[],it={root:st()},nt=it.root,rt=0,et=J(),t||(0,o.IU)()}),"clear"),gt=(0,o.K2)((function(t){return nt.states.get(t)}),"getState"),ft=(0,o.K2)((function(){return nt.states}),"getStates"),mt=(0,o.K2)((function(){o.Rm.info("Documents = ",it)}),"logDocuments"),St=(0,o.K2)((function(){return nt.relations}),"getRelations");function _t(t=""){let e=t;return t===M&&(rt++,e=`${X}${rt}`),e}function bt(t="",e=d){return t===M?X:e}function Tt(t=""){let e=t;return t===V&&(e=`end${++rt}`),e}function kt(t="",e=d){return t===V?"end":e}function Et(t,e,s){let i=_t(t.id.trim()),n=bt(t.id.trim(),t.type),r=_t(e.id.trim()),a=bt(e.id.trim(),e.type);pt(i,n,t.doc,t.description,t.note,t.classes,t.styles,t.textStyles),pt(r,a,e.doc,e.description,e.note,e.classes,e.styles,e.textStyles),nt.relations.push({id1:i,id2:r,relationTitle:o.Y2.sanitizeText(s,(0,o.D7)())})}(0,o.K2)(_t,"startIdIfNeeded"),(0,o.K2)(bt,"startTypeIfNeeded"),(0,o.K2)(Tt,"endIdIfNeeded"),(0,o.K2)(kt,"endTypeIfNeeded"),(0,o.K2)(Et,"addRelationObjs");var xt=(0,o.K2)((function(t,e,s){if("object"==typeof t)Et(t,e,s);else{const i=_t(t.trim()),n=bt(t),r=Tt(e.trim()),a=kt(e);pt(i,n),pt(r,a),nt.relations.push({id1:i,id2:r,title:o.Y2.sanitizeText(s,(0,o.D7)())})}}),"addRelation"),Dt=(0,o.K2)((function(t,e){const s=nt.states.get(t),i=e.startsWith(":")?e.replace(":","").trim():e;s.descriptions.push(o.Y2.sanitizeText(i,(0,o.D7)()))}),"addDescription"),Ct=(0,o.K2)((function(t){return":"===t.substring(0,1)?t.substr(2).trim():t.trim()}),"cleanupLabel"),$t=(0,o.K2)((()=>"divider-id-"+ ++ot),"getDividerId"),vt=(0,o.K2)((function(t,e=""){et.has(t)||et.set(t,{id:t,styles:[],textStyles:[]});const s=et.get(t);null!=e&&e.split(",").forEach((t=>{const e=t.replace(/([^;]*);/,"$1").trim();if(RegExp(W).exec(t)){const t=e.replace(H,"bgFill").replace(W,H);s.textStyles.push(t)}s.styles.push(e)}))}),"addStyleClass"),Lt=(0,o.K2)((function(){return et}),"getClasses"),It=(0,o.K2)((function(t,e){t.split(",").forEach((function(t){let s=gt(t);if(void 0===s){const e=t.trim();pt(e),s=gt(e)}s.classes.push(e)}))}),"setCssClass"),At=(0,o.K2)((function(t,e){const s=gt(t);void 0!==s&&s.styles.push(e)}),"setStyle"),Kt=(0,o.K2)((function(t,e){const s=gt(t);void 0!==s&&s.textStyles.push(e)}),"setTextStyle"),Rt=(0,o.K2)((()=>Q),"getDirection"),wt=(0,o.K2)((t=>{Q=t}),"setDirection"),Ot=(0,o.K2)((t=>t&&":"===t[0]?t.substr(1).trim():t.trim()),"trimColon"),Nt=(0,o.K2)((()=>{const t=(0,o.D7)();return{nodes:q,edges:Z,other:{},config:t,direction:R(dt())}}),"getData"),Bt={getConfig:(0,o.K2)((()=>(0,o.D7)().state),"getConfig"),getData:Nt,addState:pt,clear:yt,getState:gt,getStates:ft,getRelations:St,getClasses:Lt,getDirection:Rt,addRelation:xt,getDividerId:$t,setDirection:wt,cleanupLabel:Ct,lineType:{LINE:0,DOTTED_LINE:1},relationType:{AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3},logDocuments:mt,getRootDoc:lt,setRootDoc:ct,getRootDocV2:dt,extract:ut,trimColon:Ot,getAccTitle:o.iN,setAccTitle:o.SV,getAccDescription:o.m7,setAccDescription:o.EI,addStyleClass:vt,setCssClass:It,addDescription:Dt,setDiagramTitle:o.ke,getDiagramTitle:o.ab},Ft=(0,o.K2)((t=>`\ndefs #statediagram-barbEnd {\n fill: ${t.transitionColor};\n stroke: ${t.transitionColor};\n }\ng.stateGroup text {\n fill: ${t.nodeBorder};\n stroke: none;\n font-size: 10px;\n}\ng.stateGroup text {\n fill: ${t.textColor};\n stroke: none;\n font-size: 10px;\n\n}\ng.stateGroup .state-title {\n font-weight: bolder;\n fill: ${t.stateLabelColor};\n}\n\ng.stateGroup rect {\n fill: ${t.mainBkg};\n stroke: ${t.nodeBorder};\n}\n\ng.stateGroup line {\n stroke: ${t.lineColor};\n stroke-width: 1;\n}\n\n.transition {\n stroke: ${t.transitionColor};\n stroke-width: 1;\n fill: none;\n}\n\n.stateGroup .composit {\n fill: ${t.background};\n border-bottom: 1px\n}\n\n.stateGroup .alt-composit {\n fill: #e0e0e0;\n border-bottom: 1px\n}\n\n.state-note {\n stroke: ${t.noteBorderColor};\n fill: ${t.noteBkgColor};\n\n text {\n fill: ${t.noteTextColor};\n stroke: none;\n font-size: 10px;\n }\n}\n\n.stateLabel .box {\n stroke: none;\n stroke-width: 0;\n fill: ${t.mainBkg};\n opacity: 0.5;\n}\n\n.edgeLabel .label rect {\n fill: ${t.labelBackgroundColor};\n opacity: 0.5;\n}\n.edgeLabel {\n background-color: ${t.edgeLabelBackground};\n p {\n background-color: ${t.edgeLabelBackground};\n }\n rect {\n opacity: 0.5;\n background-color: ${t.edgeLabelBackground};\n fill: ${t.edgeLabelBackground};\n }\n text-align: center;\n}\n.edgeLabel .label text {\n fill: ${t.transitionLabelColor||t.tertiaryTextColor};\n}\n.label div .edgeLabel {\n color: ${t.transitionLabelColor||t.tertiaryTextColor};\n}\n\n.stateLabel text {\n fill: ${t.stateLabelColor};\n font-size: 10px;\n font-weight: bold;\n}\n\n.node circle.state-start {\n fill: ${t.specialStateColor};\n stroke: ${t.specialStateColor};\n}\n\n.node .fork-join {\n fill: ${t.specialStateColor};\n stroke: ${t.specialStateColor};\n}\n\n.node circle.state-end {\n fill: ${t.innerEndBackground};\n stroke: ${t.background};\n stroke-width: 1.5\n}\n.end-state-inner {\n fill: ${t.compositeBackground||t.background};\n // stroke: ${t.background};\n stroke-width: 1.5\n}\n\n.node rect {\n fill: ${t.stateBkg||t.mainBkg};\n stroke: ${t.stateBorder||t.nodeBorder};\n stroke-width: 1px;\n}\n.node polygon {\n fill: ${t.mainBkg};\n stroke: ${t.stateBorder||t.nodeBorder};;\n stroke-width: 1px;\n}\n#statediagram-barbEnd {\n fill: ${t.lineColor};\n}\n\n.statediagram-cluster rect {\n fill: ${t.compositeTitleBackground};\n stroke: ${t.stateBorder||t.nodeBorder};\n stroke-width: 1px;\n}\n\n.cluster-label, .nodeLabel {\n color: ${t.stateLabelColor};\n // line-height: 1;\n}\n\n.statediagram-cluster rect.outer {\n rx: 5px;\n ry: 5px;\n}\n.statediagram-state .divider {\n stroke: ${t.stateBorder||t.nodeBorder};\n}\n\n.statediagram-state .title-state {\n rx: 5px;\n ry: 5px;\n}\n.statediagram-cluster.statediagram-cluster .inner {\n fill: ${t.compositeBackground||t.background};\n}\n.statediagram-cluster.statediagram-cluster-alt .inner {\n fill: ${t.altBackground?t.altBackground:"#efefef"};\n}\n\n.statediagram-cluster .inner {\n rx:0;\n ry:0;\n}\n\n.statediagram-state rect.basic {\n rx: 5px;\n ry: 5px;\n}\n.statediagram-state rect.divider {\n stroke-dasharray: 10,10;\n fill: ${t.altBackground?t.altBackground:"#efefef"};\n}\n\n.note-edge {\n stroke-dasharray: 5;\n}\n\n.statediagram-note rect {\n fill: ${t.noteBkgColor};\n stroke: ${t.noteBorderColor};\n stroke-width: 1px;\n rx: 0;\n ry: 0;\n}\n.statediagram-note rect {\n fill: ${t.noteBkgColor};\n stroke: ${t.noteBorderColor};\n stroke-width: 1px;\n rx: 0;\n ry: 0;\n}\n\n.statediagram-note text {\n fill: ${t.noteTextColor};\n}\n\n.statediagram-note .nodeLabel {\n color: ${t.noteTextColor};\n}\n.statediagram .edgeLabel {\n color: red; // ${t.noteTextColor};\n}\n\n#dependencyStart, #dependencyEnd {\n fill: ${t.lineColor};\n stroke: ${t.lineColor};\n stroke-width: 1;\n}\n\n.statediagramTitleText {\n text-anchor: middle;\n font-size: 18px;\n fill: ${t.textColor};\n}\n`),"getStyles")}}]); \ No newline at end of file diff --git a/assets/js/350.8d93a742.js b/assets/js/350.8d93a742.js new file mode 100644 index 00000000..a719a305 --- /dev/null +++ b/assets/js/350.8d93a742.js @@ -0,0 +1,3658 @@ +"use strict"; +exports.id = 350; +exports.ids = [350]; +exports.modules = { + +/***/ 69323: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ CP: () => (/* binding */ drawEmbeddedImage), +/* harmony export */ HT: () => (/* binding */ getTextObj), +/* harmony export */ PB: () => (/* binding */ getNoteRect), +/* harmony export */ aC: () => (/* binding */ drawImage), +/* harmony export */ lC: () => (/* binding */ drawBackgroundRect), +/* harmony export */ m: () => (/* binding */ drawText), +/* harmony export */ tk: () => (/* binding */ drawRect) +/* harmony export */ }); +/* harmony import */ var _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(64994); +/* harmony import */ var _braintree_sanitize_url__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(16750); + + +// src/diagrams/common/svgDrawCommon.ts + +var drawRect = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_0__/* .__name */ .K2)((element, rectData) => { + const rectElement = element.append("rect"); + rectElement.attr("x", rectData.x); + rectElement.attr("y", rectData.y); + rectElement.attr("fill", rectData.fill); + rectElement.attr("stroke", rectData.stroke); + rectElement.attr("width", rectData.width); + rectElement.attr("height", rectData.height); + if (rectData.name) { + rectElement.attr("name", rectData.name); + } + if (rectData.rx) { + rectElement.attr("rx", rectData.rx); + } + if (rectData.ry) { + rectElement.attr("ry", rectData.ry); + } + if (rectData.attrs !== void 0) { + for (const attrKey in rectData.attrs) { + rectElement.attr(attrKey, rectData.attrs[attrKey]); + } + } + if (rectData.class) { + rectElement.attr("class", rectData.class); + } + return rectElement; +}, "drawRect"); +var drawBackgroundRect = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_0__/* .__name */ .K2)((element, bounds) => { + const rectData = { + x: bounds.startx, + y: bounds.starty, + width: bounds.stopx - bounds.startx, + height: bounds.stopy - bounds.starty, + fill: bounds.fill, + stroke: bounds.stroke, + class: "rect" + }; + const rectElement = drawRect(element, rectData); + rectElement.lower(); +}, "drawBackgroundRect"); +var drawText = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_0__/* .__name */ .K2)((element, textData) => { + const nText = textData.text.replace(_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_0__/* .lineBreakRegex */ .H1, " "); + const textElem = element.append("text"); + textElem.attr("x", textData.x); + textElem.attr("y", textData.y); + textElem.attr("class", "legend"); + textElem.style("text-anchor", textData.anchor); + if (textData.class) { + textElem.attr("class", textData.class); + } + const tspan = textElem.append("tspan"); + tspan.attr("x", textData.x + textData.textMargin * 2); + tspan.text(nText); + return textElem; +}, "drawText"); +var drawImage = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_0__/* .__name */ .K2)((elem, x, y, link) => { + const imageElement = elem.append("image"); + imageElement.attr("x", x); + imageElement.attr("y", y); + const sanitizedLink = (0,_braintree_sanitize_url__WEBPACK_IMPORTED_MODULE_1__/* .sanitizeUrl */ .J)(link); + imageElement.attr("xlink:href", sanitizedLink); +}, "drawImage"); +var drawEmbeddedImage = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_0__/* .__name */ .K2)((element, x, y, link) => { + const imageElement = element.append("use"); + imageElement.attr("x", x); + imageElement.attr("y", y); + const sanitizedLink = (0,_braintree_sanitize_url__WEBPACK_IMPORTED_MODULE_1__/* .sanitizeUrl */ .J)(link); + imageElement.attr("xlink:href", `#${sanitizedLink}`); +}, "drawEmbeddedImage"); +var getNoteRect = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_0__/* .__name */ .K2)(() => { + const noteRectData = { + x: 0, + y: 0, + width: 100, + height: 100, + fill: "#EDF2AE", + stroke: "#666", + anchor: "start", + rx: 0, + ry: 0 + }; + return noteRectData; +}, "getNoteRect"); +var getTextObj = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_0__/* .__name */ .K2)(() => { + const testObject = { + x: 0, + y: 0, + width: 100, + height: 100, + "text-anchor": "start", + style: "#666", + textMargin: 0, + rx: 0, + ry: 0, + tspan: true + }; + return testObject; +}, "getTextObj"); + + + + +/***/ }), + +/***/ 38350: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ diagram: () => (/* binding */ diagram) +/* harmony export */ }); +/* harmony import */ var _chunk_AIUMCIBP_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(69323); +/* harmony import */ var _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(57323); +/* harmony import */ var _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(64994); +/* harmony import */ var d3__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(20007); +/* harmony import */ var _braintree_sanitize_url__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(16750); + + + + +// src/diagrams/sequence/parser/sequenceDiagram.jison +var parser = function() { + var o = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(k, v, o2, l) { + for (o2 = o2 || {}, l = k.length; l--; o2[k[l]] = v) ; + return o2; + }, "o"), $V0 = [1, 2], $V1 = [1, 3], $V2 = [1, 4], $V3 = [2, 4], $V4 = [1, 9], $V5 = [1, 11], $V6 = [1, 13], $V7 = [1, 14], $V8 = [1, 16], $V9 = [1, 17], $Va = [1, 18], $Vb = [1, 24], $Vc = [1, 25], $Vd = [1, 26], $Ve = [1, 27], $Vf = [1, 28], $Vg = [1, 29], $Vh = [1, 30], $Vi = [1, 31], $Vj = [1, 32], $Vk = [1, 33], $Vl = [1, 34], $Vm = [1, 35], $Vn = [1, 36], $Vo = [1, 37], $Vp = [1, 38], $Vq = [1, 39], $Vr = [1, 41], $Vs = [1, 42], $Vt = [1, 43], $Vu = [1, 44], $Vv = [1, 45], $Vw = [1, 46], $Vx = [1, 4, 5, 13, 14, 16, 18, 21, 23, 29, 30, 31, 33, 35, 36, 37, 38, 39, 41, 43, 44, 46, 47, 48, 49, 50, 52, 53, 54, 59, 60, 61, 62, 70], $Vy = [4, 5, 16, 50, 52, 53], $Vz = [4, 5, 13, 14, 16, 18, 21, 23, 29, 30, 31, 33, 35, 36, 37, 38, 39, 41, 43, 44, 46, 50, 52, 53, 54, 59, 60, 61, 62, 70], $VA = [4, 5, 13, 14, 16, 18, 21, 23, 29, 30, 31, 33, 35, 36, 37, 38, 39, 41, 43, 44, 46, 49, 50, 52, 53, 54, 59, 60, 61, 62, 70], $VB = [4, 5, 13, 14, 16, 18, 21, 23, 29, 30, 31, 33, 35, 36, 37, 38, 39, 41, 43, 44, 46, 48, 50, 52, 53, 54, 59, 60, 61, 62, 70], $VC = [4, 5, 13, 14, 16, 18, 21, 23, 29, 30, 31, 33, 35, 36, 37, 38, 39, 41, 43, 44, 46, 47, 50, 52, 53, 54, 59, 60, 61, 62, 70], $VD = [68, 69, 70], $VE = [1, 122]; + var parser2 = { + trace: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function trace() { + }, "trace"), + yy: {}, + symbols_: { "error": 2, "start": 3, "SPACE": 4, "NEWLINE": 5, "SD": 6, "document": 7, "line": 8, "statement": 9, "box_section": 10, "box_line": 11, "participant_statement": 12, "create": 13, "box": 14, "restOfLine": 15, "end": 16, "signal": 17, "autonumber": 18, "NUM": 19, "off": 20, "activate": 21, "actor": 22, "deactivate": 23, "note_statement": 24, "links_statement": 25, "link_statement": 26, "properties_statement": 27, "details_statement": 28, "title": 29, "legacy_title": 30, "acc_title": 31, "acc_title_value": 32, "acc_descr": 33, "acc_descr_value": 34, "acc_descr_multiline_value": 35, "loop": 36, "rect": 37, "opt": 38, "alt": 39, "else_sections": 40, "par": 41, "par_sections": 42, "par_over": 43, "critical": 44, "option_sections": 45, "break": 46, "option": 47, "and": 48, "else": 49, "participant": 50, "AS": 51, "participant_actor": 52, "destroy": 53, "note": 54, "placement": 55, "text2": 56, "over": 57, "actor_pair": 58, "links": 59, "link": 60, "properties": 61, "details": 62, "spaceList": 63, ",": 64, "left_of": 65, "right_of": 66, "signaltype": 67, "+": 68, "-": 69, "ACTOR": 70, "SOLID_OPEN_ARROW": 71, "DOTTED_OPEN_ARROW": 72, "SOLID_ARROW": 73, "BIDIRECTIONAL_SOLID_ARROW": 74, "DOTTED_ARROW": 75, "BIDIRECTIONAL_DOTTED_ARROW": 76, "SOLID_CROSS": 77, "DOTTED_CROSS": 78, "SOLID_POINT": 79, "DOTTED_POINT": 80, "TXT": 81, "$accept": 0, "$end": 1 }, + terminals_: { 2: "error", 4: "SPACE", 5: "NEWLINE", 6: "SD", 13: "create", 14: "box", 15: "restOfLine", 16: "end", 18: "autonumber", 19: "NUM", 20: "off", 21: "activate", 23: "deactivate", 29: "title", 30: "legacy_title", 31: "acc_title", 32: "acc_title_value", 33: "acc_descr", 34: "acc_descr_value", 35: "acc_descr_multiline_value", 36: "loop", 37: "rect", 38: "opt", 39: "alt", 41: "par", 43: "par_over", 44: "critical", 46: "break", 47: "option", 48: "and", 49: "else", 50: "participant", 51: "AS", 52: "participant_actor", 53: "destroy", 54: "note", 57: "over", 59: "links", 60: "link", 61: "properties", 62: "details", 64: ",", 65: "left_of", 66: "right_of", 68: "+", 69: "-", 70: "ACTOR", 71: "SOLID_OPEN_ARROW", 72: "DOTTED_OPEN_ARROW", 73: "SOLID_ARROW", 74: "BIDIRECTIONAL_SOLID_ARROW", 75: "DOTTED_ARROW", 76: "BIDIRECTIONAL_DOTTED_ARROW", 77: "SOLID_CROSS", 78: "DOTTED_CROSS", 79: "SOLID_POINT", 80: "DOTTED_POINT", 81: "TXT" }, + productions_: [0, [3, 2], [3, 2], [3, 2], [7, 0], [7, 2], [8, 2], [8, 1], [8, 1], [10, 0], [10, 2], [11, 2], [11, 1], [11, 1], [9, 1], [9, 2], [9, 4], [9, 2], [9, 4], [9, 3], [9, 3], [9, 2], [9, 3], [9, 3], [9, 2], [9, 2], [9, 2], [9, 2], [9, 2], [9, 1], [9, 1], [9, 2], [9, 2], [9, 1], [9, 4], [9, 4], [9, 4], [9, 4], [9, 4], [9, 4], [9, 4], [9, 4], [45, 1], [45, 4], [42, 1], [42, 4], [40, 1], [40, 4], [12, 5], [12, 3], [12, 5], [12, 3], [12, 3], [24, 4], [24, 4], [25, 3], [26, 3], [27, 3], [28, 3], [63, 2], [63, 1], [58, 3], [58, 1], [55, 1], [55, 1], [17, 5], [17, 5], [17, 4], [22, 1], [67, 1], [67, 1], [67, 1], [67, 1], [67, 1], [67, 1], [67, 1], [67, 1], [67, 1], [67, 1], [56, 1]], + performAction: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function anonymous(yytext, yyleng, yylineno, yy, yystate, $$, _$) { + var $0 = $$.length - 1; + switch (yystate) { + case 3: + yy.apply($$[$0]); + return $$[$0]; + break; + case 4: + case 9: + this.$ = []; + break; + case 5: + case 10: + $$[$0 - 1].push($$[$0]); + this.$ = $$[$0 - 1]; + break; + case 6: + case 7: + case 11: + case 12: + this.$ = $$[$0]; + break; + case 8: + case 13: + this.$ = []; + break; + case 15: + $$[$0].type = "createParticipant"; + this.$ = $$[$0]; + break; + case 16: + $$[$0 - 1].unshift({ type: "boxStart", boxData: yy.parseBoxData($$[$0 - 2]) }); + $$[$0 - 1].push({ type: "boxEnd", boxText: $$[$0 - 2] }); + this.$ = $$[$0 - 1]; + break; + case 18: + this.$ = { type: "sequenceIndex", sequenceIndex: Number($$[$0 - 2]), sequenceIndexStep: Number($$[$0 - 1]), sequenceVisible: true, signalType: yy.LINETYPE.AUTONUMBER }; + break; + case 19: + this.$ = { type: "sequenceIndex", sequenceIndex: Number($$[$0 - 1]), sequenceIndexStep: 1, sequenceVisible: true, signalType: yy.LINETYPE.AUTONUMBER }; + break; + case 20: + this.$ = { type: "sequenceIndex", sequenceVisible: false, signalType: yy.LINETYPE.AUTONUMBER }; + break; + case 21: + this.$ = { type: "sequenceIndex", sequenceVisible: true, signalType: yy.LINETYPE.AUTONUMBER }; + break; + case 22: + this.$ = { type: "activeStart", signalType: yy.LINETYPE.ACTIVE_START, actor: $$[$0 - 1].actor }; + break; + case 23: + this.$ = { type: "activeEnd", signalType: yy.LINETYPE.ACTIVE_END, actor: $$[$0 - 1].actor }; + break; + case 29: + yy.setDiagramTitle($$[$0].substring(6)); + this.$ = $$[$0].substring(6); + break; + case 30: + yy.setDiagramTitle($$[$0].substring(7)); + this.$ = $$[$0].substring(7); + break; + case 31: + this.$ = $$[$0].trim(); + yy.setAccTitle(this.$); + break; + case 32: + case 33: + this.$ = $$[$0].trim(); + yy.setAccDescription(this.$); + break; + case 34: + $$[$0 - 1].unshift({ type: "loopStart", loopText: yy.parseMessage($$[$0 - 2]), signalType: yy.LINETYPE.LOOP_START }); + $$[$0 - 1].push({ type: "loopEnd", loopText: $$[$0 - 2], signalType: yy.LINETYPE.LOOP_END }); + this.$ = $$[$0 - 1]; + break; + case 35: + $$[$0 - 1].unshift({ type: "rectStart", color: yy.parseMessage($$[$0 - 2]), signalType: yy.LINETYPE.RECT_START }); + $$[$0 - 1].push({ type: "rectEnd", color: yy.parseMessage($$[$0 - 2]), signalType: yy.LINETYPE.RECT_END }); + this.$ = $$[$0 - 1]; + break; + case 36: + $$[$0 - 1].unshift({ type: "optStart", optText: yy.parseMessage($$[$0 - 2]), signalType: yy.LINETYPE.OPT_START }); + $$[$0 - 1].push({ type: "optEnd", optText: yy.parseMessage($$[$0 - 2]), signalType: yy.LINETYPE.OPT_END }); + this.$ = $$[$0 - 1]; + break; + case 37: + $$[$0 - 1].unshift({ type: "altStart", altText: yy.parseMessage($$[$0 - 2]), signalType: yy.LINETYPE.ALT_START }); + $$[$0 - 1].push({ type: "altEnd", signalType: yy.LINETYPE.ALT_END }); + this.$ = $$[$0 - 1]; + break; + case 38: + $$[$0 - 1].unshift({ type: "parStart", parText: yy.parseMessage($$[$0 - 2]), signalType: yy.LINETYPE.PAR_START }); + $$[$0 - 1].push({ type: "parEnd", signalType: yy.LINETYPE.PAR_END }); + this.$ = $$[$0 - 1]; + break; + case 39: + $$[$0 - 1].unshift({ type: "parStart", parText: yy.parseMessage($$[$0 - 2]), signalType: yy.LINETYPE.PAR_OVER_START }); + $$[$0 - 1].push({ type: "parEnd", signalType: yy.LINETYPE.PAR_END }); + this.$ = $$[$0 - 1]; + break; + case 40: + $$[$0 - 1].unshift({ type: "criticalStart", criticalText: yy.parseMessage($$[$0 - 2]), signalType: yy.LINETYPE.CRITICAL_START }); + $$[$0 - 1].push({ type: "criticalEnd", signalType: yy.LINETYPE.CRITICAL_END }); + this.$ = $$[$0 - 1]; + break; + case 41: + $$[$0 - 1].unshift({ type: "breakStart", breakText: yy.parseMessage($$[$0 - 2]), signalType: yy.LINETYPE.BREAK_START }); + $$[$0 - 1].push({ type: "breakEnd", optText: yy.parseMessage($$[$0 - 2]), signalType: yy.LINETYPE.BREAK_END }); + this.$ = $$[$0 - 1]; + break; + case 43: + this.$ = $$[$0 - 3].concat([{ type: "option", optionText: yy.parseMessage($$[$0 - 1]), signalType: yy.LINETYPE.CRITICAL_OPTION }, $$[$0]]); + break; + case 45: + this.$ = $$[$0 - 3].concat([{ type: "and", parText: yy.parseMessage($$[$0 - 1]), signalType: yy.LINETYPE.PAR_AND }, $$[$0]]); + break; + case 47: + this.$ = $$[$0 - 3].concat([{ type: "else", altText: yy.parseMessage($$[$0 - 1]), signalType: yy.LINETYPE.ALT_ELSE }, $$[$0]]); + break; + case 48: + $$[$0 - 3].draw = "participant"; + $$[$0 - 3].type = "addParticipant"; + $$[$0 - 3].description = yy.parseMessage($$[$0 - 1]); + this.$ = $$[$0 - 3]; + break; + case 49: + $$[$0 - 1].draw = "participant"; + $$[$0 - 1].type = "addParticipant"; + this.$ = $$[$0 - 1]; + break; + case 50: + $$[$0 - 3].draw = "actor"; + $$[$0 - 3].type = "addParticipant"; + $$[$0 - 3].description = yy.parseMessage($$[$0 - 1]); + this.$ = $$[$0 - 3]; + break; + case 51: + $$[$0 - 1].draw = "actor"; + $$[$0 - 1].type = "addParticipant"; + this.$ = $$[$0 - 1]; + break; + case 52: + $$[$0 - 1].type = "destroyParticipant"; + this.$ = $$[$0 - 1]; + break; + case 53: + this.$ = [$$[$0 - 1], { type: "addNote", placement: $$[$0 - 2], actor: $$[$0 - 1].actor, text: $$[$0] }]; + break; + case 54: + $$[$0 - 2] = [].concat($$[$0 - 1], $$[$0 - 1]).slice(0, 2); + $$[$0 - 2][0] = $$[$0 - 2][0].actor; + $$[$0 - 2][1] = $$[$0 - 2][1].actor; + this.$ = [$$[$0 - 1], { type: "addNote", placement: yy.PLACEMENT.OVER, actor: $$[$0 - 2].slice(0, 2), text: $$[$0] }]; + break; + case 55: + this.$ = [$$[$0 - 1], { type: "addLinks", actor: $$[$0 - 1].actor, text: $$[$0] }]; + break; + case 56: + this.$ = [$$[$0 - 1], { type: "addALink", actor: $$[$0 - 1].actor, text: $$[$0] }]; + break; + case 57: + this.$ = [$$[$0 - 1], { type: "addProperties", actor: $$[$0 - 1].actor, text: $$[$0] }]; + break; + case 58: + this.$ = [$$[$0 - 1], { type: "addDetails", actor: $$[$0 - 1].actor, text: $$[$0] }]; + break; + case 61: + this.$ = [$$[$0 - 2], $$[$0]]; + break; + case 62: + this.$ = $$[$0]; + break; + case 63: + this.$ = yy.PLACEMENT.LEFTOF; + break; + case 64: + this.$ = yy.PLACEMENT.RIGHTOF; + break; + case 65: + this.$ = [ + $$[$0 - 4], + $$[$0 - 1], + { type: "addMessage", from: $$[$0 - 4].actor, to: $$[$0 - 1].actor, signalType: $$[$0 - 3], msg: $$[$0], activate: true }, + { type: "activeStart", signalType: yy.LINETYPE.ACTIVE_START, actor: $$[$0 - 1].actor } + ]; + break; + case 66: + this.$ = [ + $$[$0 - 4], + $$[$0 - 1], + { type: "addMessage", from: $$[$0 - 4].actor, to: $$[$0 - 1].actor, signalType: $$[$0 - 3], msg: $$[$0] }, + { type: "activeEnd", signalType: yy.LINETYPE.ACTIVE_END, actor: $$[$0 - 4].actor } + ]; + break; + case 67: + this.$ = [$$[$0 - 3], $$[$0 - 1], { type: "addMessage", from: $$[$0 - 3].actor, to: $$[$0 - 1].actor, signalType: $$[$0 - 2], msg: $$[$0] }]; + break; + case 68: + this.$ = { type: "addParticipant", actor: $$[$0] }; + break; + case 69: + this.$ = yy.LINETYPE.SOLID_OPEN; + break; + case 70: + this.$ = yy.LINETYPE.DOTTED_OPEN; + break; + case 71: + this.$ = yy.LINETYPE.SOLID; + break; + case 72: + this.$ = yy.LINETYPE.BIDIRECTIONAL_SOLID; + break; + case 73: + this.$ = yy.LINETYPE.DOTTED; + break; + case 74: + this.$ = yy.LINETYPE.BIDIRECTIONAL_DOTTED; + break; + case 75: + this.$ = yy.LINETYPE.SOLID_CROSS; + break; + case 76: + this.$ = yy.LINETYPE.DOTTED_CROSS; + break; + case 77: + this.$ = yy.LINETYPE.SOLID_POINT; + break; + case 78: + this.$ = yy.LINETYPE.DOTTED_POINT; + break; + case 79: + this.$ = yy.parseMessage($$[$0].trim().substring(1)); + break; + } + }, "anonymous"), + table: [{ 3: 1, 4: $V0, 5: $V1, 6: $V2 }, { 1: [3] }, { 3: 5, 4: $V0, 5: $V1, 6: $V2 }, { 3: 6, 4: $V0, 5: $V1, 6: $V2 }, o([1, 4, 5, 13, 14, 18, 21, 23, 29, 30, 31, 33, 35, 36, 37, 38, 39, 41, 43, 44, 46, 50, 52, 53, 54, 59, 60, 61, 62, 70], $V3, { 7: 7 }), { 1: [2, 1] }, { 1: [2, 2] }, { 1: [2, 3], 4: $V4, 5: $V5, 8: 8, 9: 10, 12: 12, 13: $V6, 14: $V7, 17: 15, 18: $V8, 21: $V9, 22: 40, 23: $Va, 24: 19, 25: 20, 26: 21, 27: 22, 28: 23, 29: $Vb, 30: $Vc, 31: $Vd, 33: $Ve, 35: $Vf, 36: $Vg, 37: $Vh, 38: $Vi, 39: $Vj, 41: $Vk, 43: $Vl, 44: $Vm, 46: $Vn, 50: $Vo, 52: $Vp, 53: $Vq, 54: $Vr, 59: $Vs, 60: $Vt, 61: $Vu, 62: $Vv, 70: $Vw }, o($Vx, [2, 5]), { 9: 47, 12: 12, 13: $V6, 14: $V7, 17: 15, 18: $V8, 21: $V9, 22: 40, 23: $Va, 24: 19, 25: 20, 26: 21, 27: 22, 28: 23, 29: $Vb, 30: $Vc, 31: $Vd, 33: $Ve, 35: $Vf, 36: $Vg, 37: $Vh, 38: $Vi, 39: $Vj, 41: $Vk, 43: $Vl, 44: $Vm, 46: $Vn, 50: $Vo, 52: $Vp, 53: $Vq, 54: $Vr, 59: $Vs, 60: $Vt, 61: $Vu, 62: $Vv, 70: $Vw }, o($Vx, [2, 7]), o($Vx, [2, 8]), o($Vx, [2, 14]), { 12: 48, 50: $Vo, 52: $Vp, 53: $Vq }, { 15: [1, 49] }, { 5: [1, 50] }, { 5: [1, 53], 19: [1, 51], 20: [1, 52] }, { 22: 54, 70: $Vw }, { 22: 55, 70: $Vw }, { 5: [1, 56] }, { 5: [1, 57] }, { 5: [1, 58] }, { 5: [1, 59] }, { 5: [1, 60] }, o($Vx, [2, 29]), o($Vx, [2, 30]), { 32: [1, 61] }, { 34: [1, 62] }, o($Vx, [2, 33]), { 15: [1, 63] }, { 15: [1, 64] }, { 15: [1, 65] }, { 15: [1, 66] }, { 15: [1, 67] }, { 15: [1, 68] }, { 15: [1, 69] }, { 15: [1, 70] }, { 22: 71, 70: $Vw }, { 22: 72, 70: $Vw }, { 22: 73, 70: $Vw }, { 67: 74, 71: [1, 75], 72: [1, 76], 73: [1, 77], 74: [1, 78], 75: [1, 79], 76: [1, 80], 77: [1, 81], 78: [1, 82], 79: [1, 83], 80: [1, 84] }, { 55: 85, 57: [1, 86], 65: [1, 87], 66: [1, 88] }, { 22: 89, 70: $Vw }, { 22: 90, 70: $Vw }, { 22: 91, 70: $Vw }, { 22: 92, 70: $Vw }, o([5, 51, 64, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81], [2, 68]), o($Vx, [2, 6]), o($Vx, [2, 15]), o($Vy, [2, 9], { 10: 93 }), o($Vx, [2, 17]), { 5: [1, 95], 19: [1, 94] }, { 5: [1, 96] }, o($Vx, [2, 21]), { 5: [1, 97] }, { 5: [1, 98] }, o($Vx, [2, 24]), o($Vx, [2, 25]), o($Vx, [2, 26]), o($Vx, [2, 27]), o($Vx, [2, 28]), o($Vx, [2, 31]), o($Vx, [2, 32]), o($Vz, $V3, { 7: 99 }), o($Vz, $V3, { 7: 100 }), o($Vz, $V3, { 7: 101 }), o($VA, $V3, { 40: 102, 7: 103 }), o($VB, $V3, { 42: 104, 7: 105 }), o($VB, $V3, { 7: 105, 42: 106 }), o($VC, $V3, { 45: 107, 7: 108 }), o($Vz, $V3, { 7: 109 }), { 5: [1, 111], 51: [1, 110] }, { 5: [1, 113], 51: [1, 112] }, { 5: [1, 114] }, { 22: 117, 68: [1, 115], 69: [1, 116], 70: $Vw }, o($VD, [2, 69]), o($VD, [2, 70]), o($VD, [2, 71]), o($VD, [2, 72]), o($VD, [2, 73]), o($VD, [2, 74]), o($VD, [2, 75]), o($VD, [2, 76]), o($VD, [2, 77]), o($VD, [2, 78]), { 22: 118, 70: $Vw }, { 22: 120, 58: 119, 70: $Vw }, { 70: [2, 63] }, { 70: [2, 64] }, { 56: 121, 81: $VE }, { 56: 123, 81: $VE }, { 56: 124, 81: $VE }, { 56: 125, 81: $VE }, { 4: [1, 128], 5: [1, 130], 11: 127, 12: 129, 16: [1, 126], 50: $Vo, 52: $Vp, 53: $Vq }, { 5: [1, 131] }, o($Vx, [2, 19]), o($Vx, [2, 20]), o($Vx, [2, 22]), o($Vx, [2, 23]), { 4: $V4, 5: $V5, 8: 8, 9: 10, 12: 12, 13: $V6, 14: $V7, 16: [1, 132], 17: 15, 18: $V8, 21: $V9, 22: 40, 23: $Va, 24: 19, 25: 20, 26: 21, 27: 22, 28: 23, 29: $Vb, 30: $Vc, 31: $Vd, 33: $Ve, 35: $Vf, 36: $Vg, 37: $Vh, 38: $Vi, 39: $Vj, 41: $Vk, 43: $Vl, 44: $Vm, 46: $Vn, 50: $Vo, 52: $Vp, 53: $Vq, 54: $Vr, 59: $Vs, 60: $Vt, 61: $Vu, 62: $Vv, 70: $Vw }, { 4: $V4, 5: $V5, 8: 8, 9: 10, 12: 12, 13: $V6, 14: $V7, 16: [1, 133], 17: 15, 18: $V8, 21: $V9, 22: 40, 23: $Va, 24: 19, 25: 20, 26: 21, 27: 22, 28: 23, 29: $Vb, 30: $Vc, 31: $Vd, 33: $Ve, 35: $Vf, 36: $Vg, 37: $Vh, 38: $Vi, 39: $Vj, 41: $Vk, 43: $Vl, 44: $Vm, 46: $Vn, 50: $Vo, 52: $Vp, 53: $Vq, 54: $Vr, 59: $Vs, 60: $Vt, 61: $Vu, 62: $Vv, 70: $Vw }, { 4: $V4, 5: $V5, 8: 8, 9: 10, 12: 12, 13: $V6, 14: $V7, 16: [1, 134], 17: 15, 18: $V8, 21: $V9, 22: 40, 23: $Va, 24: 19, 25: 20, 26: 21, 27: 22, 28: 23, 29: $Vb, 30: $Vc, 31: $Vd, 33: $Ve, 35: $Vf, 36: $Vg, 37: $Vh, 38: $Vi, 39: $Vj, 41: $Vk, 43: $Vl, 44: $Vm, 46: $Vn, 50: $Vo, 52: $Vp, 53: $Vq, 54: $Vr, 59: $Vs, 60: $Vt, 61: $Vu, 62: $Vv, 70: $Vw }, { 16: [1, 135] }, { 4: $V4, 5: $V5, 8: 8, 9: 10, 12: 12, 13: $V6, 14: $V7, 16: [2, 46], 17: 15, 18: $V8, 21: $V9, 22: 40, 23: $Va, 24: 19, 25: 20, 26: 21, 27: 22, 28: 23, 29: $Vb, 30: $Vc, 31: $Vd, 33: $Ve, 35: $Vf, 36: $Vg, 37: $Vh, 38: $Vi, 39: $Vj, 41: $Vk, 43: $Vl, 44: $Vm, 46: $Vn, 49: [1, 136], 50: $Vo, 52: $Vp, 53: $Vq, 54: $Vr, 59: $Vs, 60: $Vt, 61: $Vu, 62: $Vv, 70: $Vw }, { 16: [1, 137] }, { 4: $V4, 5: $V5, 8: 8, 9: 10, 12: 12, 13: $V6, 14: $V7, 16: [2, 44], 17: 15, 18: $V8, 21: $V9, 22: 40, 23: $Va, 24: 19, 25: 20, 26: 21, 27: 22, 28: 23, 29: $Vb, 30: $Vc, 31: $Vd, 33: $Ve, 35: $Vf, 36: $Vg, 37: $Vh, 38: $Vi, 39: $Vj, 41: $Vk, 43: $Vl, 44: $Vm, 46: $Vn, 48: [1, 138], 50: $Vo, 52: $Vp, 53: $Vq, 54: $Vr, 59: $Vs, 60: $Vt, 61: $Vu, 62: $Vv, 70: $Vw }, { 16: [1, 139] }, { 16: [1, 140] }, { 4: $V4, 5: $V5, 8: 8, 9: 10, 12: 12, 13: $V6, 14: $V7, 16: [2, 42], 17: 15, 18: $V8, 21: $V9, 22: 40, 23: $Va, 24: 19, 25: 20, 26: 21, 27: 22, 28: 23, 29: $Vb, 30: $Vc, 31: $Vd, 33: $Ve, 35: $Vf, 36: $Vg, 37: $Vh, 38: $Vi, 39: $Vj, 41: $Vk, 43: $Vl, 44: $Vm, 46: $Vn, 47: [1, 141], 50: $Vo, 52: $Vp, 53: $Vq, 54: $Vr, 59: $Vs, 60: $Vt, 61: $Vu, 62: $Vv, 70: $Vw }, { 4: $V4, 5: $V5, 8: 8, 9: 10, 12: 12, 13: $V6, 14: $V7, 16: [1, 142], 17: 15, 18: $V8, 21: $V9, 22: 40, 23: $Va, 24: 19, 25: 20, 26: 21, 27: 22, 28: 23, 29: $Vb, 30: $Vc, 31: $Vd, 33: $Ve, 35: $Vf, 36: $Vg, 37: $Vh, 38: $Vi, 39: $Vj, 41: $Vk, 43: $Vl, 44: $Vm, 46: $Vn, 50: $Vo, 52: $Vp, 53: $Vq, 54: $Vr, 59: $Vs, 60: $Vt, 61: $Vu, 62: $Vv, 70: $Vw }, { 15: [1, 143] }, o($Vx, [2, 49]), { 15: [1, 144] }, o($Vx, [2, 51]), o($Vx, [2, 52]), { 22: 145, 70: $Vw }, { 22: 146, 70: $Vw }, { 56: 147, 81: $VE }, { 56: 148, 81: $VE }, { 56: 149, 81: $VE }, { 64: [1, 150], 81: [2, 62] }, { 5: [2, 55] }, { 5: [2, 79] }, { 5: [2, 56] }, { 5: [2, 57] }, { 5: [2, 58] }, o($Vx, [2, 16]), o($Vy, [2, 10]), { 12: 151, 50: $Vo, 52: $Vp, 53: $Vq }, o($Vy, [2, 12]), o($Vy, [2, 13]), o($Vx, [2, 18]), o($Vx, [2, 34]), o($Vx, [2, 35]), o($Vx, [2, 36]), o($Vx, [2, 37]), { 15: [1, 152] }, o($Vx, [2, 38]), { 15: [1, 153] }, o($Vx, [2, 39]), o($Vx, [2, 40]), { 15: [1, 154] }, o($Vx, [2, 41]), { 5: [1, 155] }, { 5: [1, 156] }, { 56: 157, 81: $VE }, { 56: 158, 81: $VE }, { 5: [2, 67] }, { 5: [2, 53] }, { 5: [2, 54] }, { 22: 159, 70: $Vw }, o($Vy, [2, 11]), o($VA, $V3, { 7: 103, 40: 160 }), o($VB, $V3, { 7: 105, 42: 161 }), o($VC, $V3, { 7: 108, 45: 162 }), o($Vx, [2, 48]), o($Vx, [2, 50]), { 5: [2, 65] }, { 5: [2, 66] }, { 81: [2, 61] }, { 16: [2, 47] }, { 16: [2, 45] }, { 16: [2, 43] }], + defaultActions: { 5: [2, 1], 6: [2, 2], 87: [2, 63], 88: [2, 64], 121: [2, 55], 122: [2, 79], 123: [2, 56], 124: [2, 57], 125: [2, 58], 147: [2, 67], 148: [2, 53], 149: [2, 54], 157: [2, 65], 158: [2, 66], 159: [2, 61], 160: [2, 47], 161: [2, 45], 162: [2, 43] }, + parseError: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function parseError(str, hash) { + if (hash.recoverable) { + this.trace(str); + } else { + var error = new Error(str); + error.hash = hash; + throw error; + } + }, "parseError"), + parse: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function parse(input) { + var self = this, stack = [0], tstack = [], vstack = [null], lstack = [], table = this.table, yytext = "", yylineno = 0, yyleng = 0, recovering = 0, TERROR = 2, EOF = 1; + var args = lstack.slice.call(arguments, 1); + var lexer2 = Object.create(this.lexer); + var sharedState = { yy: {} }; + for (var k in this.yy) { + if (Object.prototype.hasOwnProperty.call(this.yy, k)) { + sharedState.yy[k] = this.yy[k]; + } + } + lexer2.setInput(input, sharedState.yy); + sharedState.yy.lexer = lexer2; + sharedState.yy.parser = this; + if (typeof lexer2.yylloc == "undefined") { + lexer2.yylloc = {}; + } + var yyloc = lexer2.yylloc; + lstack.push(yyloc); + var ranges = lexer2.options && lexer2.options.ranges; + if (typeof sharedState.yy.parseError === "function") { + this.parseError = sharedState.yy.parseError; + } else { + this.parseError = Object.getPrototypeOf(this).parseError; + } + function popStack(n) { + stack.length = stack.length - 2 * n; + vstack.length = vstack.length - n; + lstack.length = lstack.length - n; + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(popStack, "popStack"); + function lex() { + var token; + token = tstack.pop() || lexer2.lex() || EOF; + if (typeof token !== "number") { + if (token instanceof Array) { + tstack = token; + token = tstack.pop(); + } + token = self.symbols_[token] || token; + } + return token; + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(lex, "lex"); + var symbol, preErrorSymbol, state2, action, a, r, yyval = {}, p, len, newState, expected; + while (true) { + state2 = stack[stack.length - 1]; + if (this.defaultActions[state2]) { + action = this.defaultActions[state2]; + } else { + if (symbol === null || typeof symbol == "undefined") { + symbol = lex(); + } + action = table[state2] && table[state2][symbol]; + } + if (typeof action === "undefined" || !action.length || !action[0]) { + var errStr = ""; + expected = []; + for (p in table[state2]) { + if (this.terminals_[p] && p > TERROR) { + expected.push("'" + this.terminals_[p] + "'"); + } + } + if (lexer2.showPosition) { + errStr = "Parse error on line " + (yylineno + 1) + ":\n" + lexer2.showPosition() + "\nExpecting " + expected.join(", ") + ", got '" + (this.terminals_[symbol] || symbol) + "'"; + } else { + errStr = "Parse error on line " + (yylineno + 1) + ": Unexpected " + (symbol == EOF ? "end of input" : "'" + (this.terminals_[symbol] || symbol) + "'"); + } + this.parseError(errStr, { + text: lexer2.match, + token: this.terminals_[symbol] || symbol, + line: lexer2.yylineno, + loc: yyloc, + expected + }); + } + if (action[0] instanceof Array && action.length > 1) { + throw new Error("Parse Error: multiple actions possible at state: " + state2 + ", token: " + symbol); + } + switch (action[0]) { + case 1: + stack.push(symbol); + vstack.push(lexer2.yytext); + lstack.push(lexer2.yylloc); + stack.push(action[1]); + symbol = null; + if (!preErrorSymbol) { + yyleng = lexer2.yyleng; + yytext = lexer2.yytext; + yylineno = lexer2.yylineno; + yyloc = lexer2.yylloc; + if (recovering > 0) { + recovering--; + } + } else { + symbol = preErrorSymbol; + preErrorSymbol = null; + } + break; + case 2: + len = this.productions_[action[1]][1]; + yyval.$ = vstack[vstack.length - len]; + yyval._$ = { + first_line: lstack[lstack.length - (len || 1)].first_line, + last_line: lstack[lstack.length - 1].last_line, + first_column: lstack[lstack.length - (len || 1)].first_column, + last_column: lstack[lstack.length - 1].last_column + }; + if (ranges) { + yyval._$.range = [ + lstack[lstack.length - (len || 1)].range[0], + lstack[lstack.length - 1].range[1] + ]; + } + r = this.performAction.apply(yyval, [ + yytext, + yyleng, + yylineno, + sharedState.yy, + action[1], + vstack, + lstack + ].concat(args)); + if (typeof r !== "undefined") { + return r; + } + if (len) { + stack = stack.slice(0, -1 * len * 2); + vstack = vstack.slice(0, -1 * len); + lstack = lstack.slice(0, -1 * len); + } + stack.push(this.productions_[action[1]][0]); + vstack.push(yyval.$); + lstack.push(yyval._$); + newState = table[stack[stack.length - 2]][stack[stack.length - 1]]; + stack.push(newState); + break; + case 3: + return true; + } + } + return true; + }, "parse") + }; + var lexer = /* @__PURE__ */ function() { + var lexer2 = { + EOF: 1, + parseError: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function parseError(str, hash) { + if (this.yy.parser) { + this.yy.parser.parseError(str, hash); + } else { + throw new Error(str); + } + }, "parseError"), + // resets the lexer, sets new input + setInput: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(input, yy) { + this.yy = yy || this.yy || {}; + this._input = input; + this._more = this._backtrack = this.done = false; + this.yylineno = this.yyleng = 0; + this.yytext = this.matched = this.match = ""; + this.conditionStack = ["INITIAL"]; + this.yylloc = { + first_line: 1, + first_column: 0, + last_line: 1, + last_column: 0 + }; + if (this.options.ranges) { + this.yylloc.range = [0, 0]; + } + this.offset = 0; + return this; + }, "setInput"), + // consumes and returns one char from the input + input: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function() { + var ch = this._input[0]; + this.yytext += ch; + this.yyleng++; + this.offset++; + this.match += ch; + this.matched += ch; + var lines = ch.match(/(?:\r\n?|\n).*/g); + if (lines) { + this.yylineno++; + this.yylloc.last_line++; + } else { + this.yylloc.last_column++; + } + if (this.options.ranges) { + this.yylloc.range[1]++; + } + this._input = this._input.slice(1); + return ch; + }, "input"), + // unshifts one char (or a string) into the input + unput: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(ch) { + var len = ch.length; + var lines = ch.split(/(?:\r\n?|\n)/g); + this._input = ch + this._input; + this.yytext = this.yytext.substr(0, this.yytext.length - len); + this.offset -= len; + var oldLines = this.match.split(/(?:\r\n?|\n)/g); + this.match = this.match.substr(0, this.match.length - 1); + this.matched = this.matched.substr(0, this.matched.length - 1); + if (lines.length - 1) { + this.yylineno -= lines.length - 1; + } + var r = this.yylloc.range; + this.yylloc = { + first_line: this.yylloc.first_line, + last_line: this.yylineno + 1, + first_column: this.yylloc.first_column, + last_column: lines ? (lines.length === oldLines.length ? this.yylloc.first_column : 0) + oldLines[oldLines.length - lines.length].length - lines[0].length : this.yylloc.first_column - len + }; + if (this.options.ranges) { + this.yylloc.range = [r[0], r[0] + this.yyleng - len]; + } + this.yyleng = this.yytext.length; + return this; + }, "unput"), + // When called from action, caches matched text and appends it on next action + more: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function() { + this._more = true; + return this; + }, "more"), + // When called from action, signals the lexer that this rule fails to match the input, so the next matching rule (regex) should be tested instead. + reject: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function() { + if (this.options.backtrack_lexer) { + this._backtrack = true; + } else { + return this.parseError("Lexical error on line " + (this.yylineno + 1) + ". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n" + this.showPosition(), { + text: "", + token: null, + line: this.yylineno + }); + } + return this; + }, "reject"), + // retain first n characters of the match + less: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(n) { + this.unput(this.match.slice(n)); + }, "less"), + // displays already matched input, i.e. for error messages + pastInput: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function() { + var past = this.matched.substr(0, this.matched.length - this.match.length); + return (past.length > 20 ? "..." : "") + past.substr(-20).replace(/\n/g, ""); + }, "pastInput"), + // displays upcoming input, i.e. for error messages + upcomingInput: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function() { + var next = this.match; + if (next.length < 20) { + next += this._input.substr(0, 20 - next.length); + } + return (next.substr(0, 20) + (next.length > 20 ? "..." : "")).replace(/\n/g, ""); + }, "upcomingInput"), + // displays the character position where the lexing error occurred, i.e. for error messages + showPosition: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function() { + var pre = this.pastInput(); + var c = new Array(pre.length + 1).join("-"); + return pre + this.upcomingInput() + "\n" + c + "^"; + }, "showPosition"), + // test the lexed token: return FALSE when not a match, otherwise return token + test_match: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(match, indexed_rule) { + var token, lines, backup; + if (this.options.backtrack_lexer) { + backup = { + yylineno: this.yylineno, + yylloc: { + first_line: this.yylloc.first_line, + last_line: this.last_line, + first_column: this.yylloc.first_column, + last_column: this.yylloc.last_column + }, + yytext: this.yytext, + match: this.match, + matches: this.matches, + matched: this.matched, + yyleng: this.yyleng, + offset: this.offset, + _more: this._more, + _input: this._input, + yy: this.yy, + conditionStack: this.conditionStack.slice(0), + done: this.done + }; + if (this.options.ranges) { + backup.yylloc.range = this.yylloc.range.slice(0); + } + } + lines = match[0].match(/(?:\r\n?|\n).*/g); + if (lines) { + this.yylineno += lines.length; + } + this.yylloc = { + first_line: this.yylloc.last_line, + last_line: this.yylineno + 1, + first_column: this.yylloc.last_column, + last_column: lines ? lines[lines.length - 1].length - lines[lines.length - 1].match(/\r?\n?/)[0].length : this.yylloc.last_column + match[0].length + }; + this.yytext += match[0]; + this.match += match[0]; + this.matches = match; + this.yyleng = this.yytext.length; + if (this.options.ranges) { + this.yylloc.range = [this.offset, this.offset += this.yyleng]; + } + this._more = false; + this._backtrack = false; + this._input = this._input.slice(match[0].length); + this.matched += match[0]; + token = this.performAction.call(this, this.yy, this, indexed_rule, this.conditionStack[this.conditionStack.length - 1]); + if (this.done && this._input) { + this.done = false; + } + if (token) { + return token; + } else if (this._backtrack) { + for (var k in backup) { + this[k] = backup[k]; + } + return false; + } + return false; + }, "test_match"), + // return next match in input + next: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function() { + if (this.done) { + return this.EOF; + } + if (!this._input) { + this.done = true; + } + var token, match, tempMatch, index; + if (!this._more) { + this.yytext = ""; + this.match = ""; + } + var rules = this._currentRules(); + for (var i = 0; i < rules.length; i++) { + tempMatch = this._input.match(this.rules[rules[i]]); + if (tempMatch && (!match || tempMatch[0].length > match[0].length)) { + match = tempMatch; + index = i; + if (this.options.backtrack_lexer) { + token = this.test_match(tempMatch, rules[i]); + if (token !== false) { + return token; + } else if (this._backtrack) { + match = false; + continue; + } else { + return false; + } + } else if (!this.options.flex) { + break; + } + } + } + if (match) { + token = this.test_match(match, rules[index]); + if (token !== false) { + return token; + } + return false; + } + if (this._input === "") { + return this.EOF; + } else { + return this.parseError("Lexical error on line " + (this.yylineno + 1) + ". Unrecognized text.\n" + this.showPosition(), { + text: "", + token: null, + line: this.yylineno + }); + } + }, "next"), + // return next match that has a token + lex: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function lex() { + var r = this.next(); + if (r) { + return r; + } else { + return this.lex(); + } + }, "lex"), + // activates a new lexer condition state (pushes the new lexer condition state onto the condition stack) + begin: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function begin(condition) { + this.conditionStack.push(condition); + }, "begin"), + // pop the previously active lexer condition state off the condition stack + popState: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function popState() { + var n = this.conditionStack.length - 1; + if (n > 0) { + return this.conditionStack.pop(); + } else { + return this.conditionStack[0]; + } + }, "popState"), + // produce the lexer rule set which is active for the currently active lexer condition state + _currentRules: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function _currentRules() { + if (this.conditionStack.length && this.conditionStack[this.conditionStack.length - 1]) { + return this.conditions[this.conditionStack[this.conditionStack.length - 1]].rules; + } else { + return this.conditions["INITIAL"].rules; + } + }, "_currentRules"), + // return the currently active lexer condition state; when an index argument is provided it produces the N-th previous condition state, if available + topState: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function topState(n) { + n = this.conditionStack.length - 1 - Math.abs(n || 0); + if (n >= 0) { + return this.conditionStack[n]; + } else { + return "INITIAL"; + } + }, "topState"), + // alias for begin(condition) + pushState: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function pushState(condition) { + this.begin(condition); + }, "pushState"), + // return the number of states currently on the stack + stateStackSize: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function stateStackSize() { + return this.conditionStack.length; + }, "stateStackSize"), + options: { "case-insensitive": true }, + performAction: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function anonymous(yy, yy_, $avoiding_name_collisions, YY_START) { + var YYSTATE = YY_START; + switch ($avoiding_name_collisions) { + case 0: + return 5; + break; + case 1: + break; + case 2: + break; + case 3: + break; + case 4: + break; + case 5: + break; + case 6: + return 19; + break; + case 7: + this.begin("LINE"); + return 14; + break; + case 8: + this.begin("ID"); + return 50; + break; + case 9: + this.begin("ID"); + return 52; + break; + case 10: + return 13; + break; + case 11: + this.begin("ID"); + return 53; + break; + case 12: + yy_.yytext = yy_.yytext.trim(); + this.begin("ALIAS"); + return 70; + break; + case 13: + this.popState(); + this.popState(); + this.begin("LINE"); + return 51; + break; + case 14: + this.popState(); + this.popState(); + return 5; + break; + case 15: + this.begin("LINE"); + return 36; + break; + case 16: + this.begin("LINE"); + return 37; + break; + case 17: + this.begin("LINE"); + return 38; + break; + case 18: + this.begin("LINE"); + return 39; + break; + case 19: + this.begin("LINE"); + return 49; + break; + case 20: + this.begin("LINE"); + return 41; + break; + case 21: + this.begin("LINE"); + return 43; + break; + case 22: + this.begin("LINE"); + return 48; + break; + case 23: + this.begin("LINE"); + return 44; + break; + case 24: + this.begin("LINE"); + return 47; + break; + case 25: + this.begin("LINE"); + return 46; + break; + case 26: + this.popState(); + return 15; + break; + case 27: + return 16; + break; + case 28: + return 65; + break; + case 29: + return 66; + break; + case 30: + return 59; + break; + case 31: + return 60; + break; + case 32: + return 61; + break; + case 33: + return 62; + break; + case 34: + return 57; + break; + case 35: + return 54; + break; + case 36: + this.begin("ID"); + return 21; + break; + case 37: + this.begin("ID"); + return 23; + break; + case 38: + return 29; + break; + case 39: + return 30; + break; + case 40: + this.begin("acc_title"); + return 31; + break; + case 41: + this.popState(); + return "acc_title_value"; + break; + case 42: + this.begin("acc_descr"); + return 33; + break; + case 43: + this.popState(); + return "acc_descr_value"; + break; + case 44: + this.begin("acc_descr_multiline"); + break; + case 45: + this.popState(); + break; + case 46: + return "acc_descr_multiline_value"; + break; + case 47: + return 6; + break; + case 48: + return 18; + break; + case 49: + return 20; + break; + case 50: + return 64; + break; + case 51: + return 5; + break; + case 52: + yy_.yytext = yy_.yytext.trim(); + return 70; + break; + case 53: + return 73; + break; + case 54: + return 74; + break; + case 55: + return 75; + break; + case 56: + return 76; + break; + case 57: + return 71; + break; + case 58: + return 72; + break; + case 59: + return 77; + break; + case 60: + return 78; + break; + case 61: + return 79; + break; + case 62: + return 80; + break; + case 63: + return 81; + break; + case 64: + return 68; + break; + case 65: + return 69; + break; + case 66: + return 5; + break; + case 67: + return "INVALID"; + break; + } + }, "anonymous"), + rules: [/^(?:[\n]+)/i, /^(?:\s+)/i, /^(?:((?!\n)\s)+)/i, /^(?:#[^\n]*)/i, /^(?:%(?!\{)[^\n]*)/i, /^(?:[^\}]%%[^\n]*)/i, /^(?:[0-9]+(?=[ \n]+))/i, /^(?:box\b)/i, /^(?:participant\b)/i, /^(?:actor\b)/i, /^(?:create\b)/i, /^(?:destroy\b)/i, /^(?:[^\<->\->:\n,;]+?([\-]*[^\<->\->:\n,;]+?)*?(?=((?!\n)\s)+as(?!\n)\s|[#\n;]|$))/i, /^(?:as\b)/i, /^(?:(?:))/i, /^(?:loop\b)/i, /^(?:rect\b)/i, /^(?:opt\b)/i, /^(?:alt\b)/i, /^(?:else\b)/i, /^(?:par\b)/i, /^(?:par_over\b)/i, /^(?:and\b)/i, /^(?:critical\b)/i, /^(?:option\b)/i, /^(?:break\b)/i, /^(?:(?:[:]?(?:no)?wrap)?[^#\n;]*)/i, /^(?:end\b)/i, /^(?:left of\b)/i, /^(?:right of\b)/i, /^(?:links\b)/i, /^(?:link\b)/i, /^(?:properties\b)/i, /^(?:details\b)/i, /^(?:over\b)/i, /^(?:note\b)/i, /^(?:activate\b)/i, /^(?:deactivate\b)/i, /^(?:title\s[^#\n;]+)/i, /^(?:title:\s[^#\n;]+)/i, /^(?:accTitle\s*:\s*)/i, /^(?:(?!\n||)*[^\n]*)/i, /^(?:accDescr\s*:\s*)/i, /^(?:(?!\n||)*[^\n]*)/i, /^(?:accDescr\s*\{\s*)/i, /^(?:[\}])/i, /^(?:[^\}]*)/i, /^(?:sequenceDiagram\b)/i, /^(?:autonumber\b)/i, /^(?:off\b)/i, /^(?:,)/i, /^(?:;)/i, /^(?:[^\+\<->\->:\n,;]+((?!(-x|--x|-\)|--\)))[\-]*[^\+\<->\->:\n,;]+)*)/i, /^(?:->>)/i, /^(?:<<->>)/i, /^(?:-->>)/i, /^(?:<<-->>)/i, /^(?:->)/i, /^(?:-->)/i, /^(?:-[x])/i, /^(?:--[x])/i, /^(?:-[\)])/i, /^(?:--[\)])/i, /^(?::(?:(?:no)?wrap)?[^#\n;]+)/i, /^(?:\+)/i, /^(?:-)/i, /^(?:$)/i, /^(?:.)/i], + conditions: { "acc_descr_multiline": { "rules": [45, 46], "inclusive": false }, "acc_descr": { "rules": [43], "inclusive": false }, "acc_title": { "rules": [41], "inclusive": false }, "ID": { "rules": [2, 3, 12], "inclusive": false }, "ALIAS": { "rules": [2, 3, 13, 14], "inclusive": false }, "LINE": { "rules": [2, 3, 26], "inclusive": false }, "INITIAL": { "rules": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 42, 44, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67], "inclusive": true } } + }; + return lexer2; + }(); + parser2.lexer = lexer; + function Parser() { + this.yy = {}; + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(Parser, "Parser"); + Parser.prototype = parser2; + parser2.Parser = Parser; + return new Parser(); +}(); +parser.parser = parser; +var sequenceDiagram_default = parser; + +// src/utils/imperativeState.ts +var ImperativeState = class { + /** + * @param init - Function that creates the default state. + */ + constructor(init) { + this.init = init; + this.records = this.init(); + } + static { + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(this, "ImperativeState"); + } + reset() { + this.records = this.init(); + } +}; + +// src/diagrams/sequence/sequenceDb.ts +var state = new ImperativeState(() => ({ + prevActor: void 0, + actors: /* @__PURE__ */ new Map(), + createdActors: /* @__PURE__ */ new Map(), + destroyedActors: /* @__PURE__ */ new Map(), + boxes: [], + messages: [], + notes: [], + sequenceNumbersEnabled: false, + wrapEnabled: void 0, + currentBox: void 0, + lastCreated: void 0, + lastDestroyed: void 0 +})); +var addBox = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(data) { + state.records.boxes.push({ + name: data.text, + wrap: data.wrap ?? autoWrap(), + fill: data.color, + actorKeys: [] + }); + state.records.currentBox = state.records.boxes.slice(-1)[0]; +}, "addBox"); +var addActor = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(id, name, description, type) { + let assignedBox = state.records.currentBox; + const old = state.records.actors.get(id); + if (old) { + if (state.records.currentBox && old.box && state.records.currentBox !== old.box) { + throw new Error( + `A same participant should only be defined in one Box: ${old.name} can't be in '${old.box.name}' and in '${state.records.currentBox.name}' at the same time.` + ); + } + assignedBox = old.box ? old.box : state.records.currentBox; + old.box = assignedBox; + if (old && name === old.name && description == null) { + return; + } + } + if (description?.text == null) { + description = { text: name, type }; + } + if (type == null || description.text == null) { + description = { text: name, type }; + } + state.records.actors.set(id, { + box: assignedBox, + name, + description: description.text, + wrap: description.wrap ?? autoWrap(), + prevActor: state.records.prevActor, + links: {}, + properties: {}, + actorCnt: null, + rectData: null, + type: type ?? "participant" + }); + if (state.records.prevActor) { + const prevActorInRecords = state.records.actors.get(state.records.prevActor); + if (prevActorInRecords) { + prevActorInRecords.nextActor = id; + } + } + if (state.records.currentBox) { + state.records.currentBox.actorKeys.push(id); + } + state.records.prevActor = id; +}, "addActor"); +var activationCount = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((part) => { + let i; + let count = 0; + if (!part) { + return 0; + } + for (i = 0; i < state.records.messages.length; i++) { + if (state.records.messages[i].type === LINETYPE.ACTIVE_START && state.records.messages[i].from === part) { + count++; + } + if (state.records.messages[i].type === LINETYPE.ACTIVE_END && state.records.messages[i].from === part) { + count--; + } + } + return count; +}, "activationCount"); +var addMessage = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(idFrom, idTo, message, answer) { + state.records.messages.push({ + from: idFrom, + to: idTo, + message: message.text, + wrap: message.wrap ?? autoWrap(), + answer + }); +}, "addMessage"); +var addSignal = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(idFrom, idTo, message, messageType, activate = false) { + if (messageType === LINETYPE.ACTIVE_END) { + const cnt = activationCount(idFrom ?? ""); + if (cnt < 1) { + const error = new Error("Trying to inactivate an inactive participant (" + idFrom + ")"); + error.hash = { + text: "->>-", + token: "->>-", + line: "1", + loc: { first_line: 1, last_line: 1, first_column: 1, last_column: 1 }, + expected: ["'ACTIVE_PARTICIPANT'"] + }; + throw error; + } + } + state.records.messages.push({ + from: idFrom, + to: idTo, + message: message?.text ?? "", + wrap: message?.wrap ?? autoWrap(), + type: messageType, + activate + }); + return true; +}, "addSignal"); +var hasAtLeastOneBox = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function() { + return state.records.boxes.length > 0; +}, "hasAtLeastOneBox"); +var hasAtLeastOneBoxWithTitle = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function() { + return state.records.boxes.some((b) => b.name); +}, "hasAtLeastOneBoxWithTitle"); +var getMessages = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function() { + return state.records.messages; +}, "getMessages"); +var getBoxes = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function() { + return state.records.boxes; +}, "getBoxes"); +var getActors = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function() { + return state.records.actors; +}, "getActors"); +var getCreatedActors = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function() { + return state.records.createdActors; +}, "getCreatedActors"); +var getDestroyedActors = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function() { + return state.records.destroyedActors; +}, "getDestroyedActors"); +var getActor = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(id) { + return state.records.actors.get(id); +}, "getActor"); +var getActorKeys = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function() { + return [...state.records.actors.keys()]; +}, "getActorKeys"); +var enableSequenceNumbers = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function() { + state.records.sequenceNumbersEnabled = true; +}, "enableSequenceNumbers"); +var disableSequenceNumbers = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function() { + state.records.sequenceNumbersEnabled = false; +}, "disableSequenceNumbers"); +var showSequenceNumbers = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(() => state.records.sequenceNumbersEnabled, "showSequenceNumbers"); +var setWrap = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(wrapSetting) { + state.records.wrapEnabled = wrapSetting; +}, "setWrap"); +var extractWrap = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((text) => { + if (text === void 0) { + return {}; + } + text = text.trim(); + const wrap = /^:?wrap:/.exec(text) !== null ? true : /^:?nowrap:/.exec(text) !== null ? false : void 0; + const cleanedText = (wrap === void 0 ? text : text.replace(/^:?(?:no)?wrap:/, "")).trim(); + return { cleanedText, wrap }; +}, "extractWrap"); +var autoWrap = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(() => { + if (state.records.wrapEnabled !== void 0) { + return state.records.wrapEnabled; + } + return (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)().sequence?.wrap ?? false; +}, "autoWrap"); +var clear2 = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function() { + state.reset(); + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .clear */ .IU)(); +}, "clear"); +var parseMessage = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(str) { + const trimmedStr = str.trim(); + const { wrap, cleanedText } = extractWrap(trimmedStr); + const message = { + text: cleanedText, + wrap + }; + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.debug(`parseMessage: ${JSON.stringify(message)}`); + return message; +}, "parseMessage"); +var parseBoxData = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(str) { + const match = /^((?:rgba?|hsla?)\s*\(.*\)|\w*)(.*)$/.exec(str); + let color = match?.[1] ? match[1].trim() : "transparent"; + let title = match?.[2] ? match[2].trim() : void 0; + if (window?.CSS) { + if (!window.CSS.supports("color", color)) { + color = "transparent"; + title = str.trim(); + } + } else { + const style = new Option().style; + style.color = color; + if (style.color !== color) { + color = "transparent"; + title = str.trim(); + } + } + const { wrap, cleanedText } = extractWrap(title); + return { + text: cleanedText ? (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .sanitizeText */ .jZ)(cleanedText, (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)()) : void 0, + color, + wrap + }; +}, "parseBoxData"); +var LINETYPE = { + SOLID: 0, + DOTTED: 1, + NOTE: 2, + SOLID_CROSS: 3, + DOTTED_CROSS: 4, + SOLID_OPEN: 5, + DOTTED_OPEN: 6, + LOOP_START: 10, + LOOP_END: 11, + ALT_START: 12, + ALT_ELSE: 13, + ALT_END: 14, + OPT_START: 15, + OPT_END: 16, + ACTIVE_START: 17, + ACTIVE_END: 18, + PAR_START: 19, + PAR_AND: 20, + PAR_END: 21, + RECT_START: 22, + RECT_END: 23, + SOLID_POINT: 24, + DOTTED_POINT: 25, + AUTONUMBER: 26, + CRITICAL_START: 27, + CRITICAL_OPTION: 28, + CRITICAL_END: 29, + BREAK_START: 30, + BREAK_END: 31, + PAR_OVER_START: 32, + BIDIRECTIONAL_SOLID: 33, + BIDIRECTIONAL_DOTTED: 34 +}; +var ARROWTYPE = { + FILLED: 0, + OPEN: 1 +}; +var PLACEMENT = { + LEFTOF: 0, + RIGHTOF: 1, + OVER: 2 +}; +var addNote = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(actor, placement, message) { + const note = { + actor, + placement, + message: message.text, + wrap: message.wrap ?? autoWrap() + }; + const actors = [].concat(actor, actor); + state.records.notes.push(note); + state.records.messages.push({ + from: actors[0], + to: actors[1], + message: message.text, + wrap: message.wrap ?? autoWrap(), + type: LINETYPE.NOTE, + placement + }); +}, "addNote"); +var addLinks = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(actorId, text) { + const actor = getActor(actorId); + try { + let sanitizedText = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .sanitizeText */ .jZ)(text.text, (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)()); + sanitizedText = sanitizedText.replace(/&/g, "&"); + sanitizedText = sanitizedText.replace(/=/g, "="); + const links = JSON.parse(sanitizedText); + insertLinks(actor, links); + } catch (e) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.error("error while parsing actor link text", e); + } +}, "addLinks"); +var addALink = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(actorId, text) { + const actor = getActor(actorId); + try { + const links = {}; + let sanitizedText = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .sanitizeText */ .jZ)(text.text, (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)()); + const sep = sanitizedText.indexOf("@"); + sanitizedText = sanitizedText.replace(/&/g, "&"); + sanitizedText = sanitizedText.replace(/=/g, "="); + const label = sanitizedText.slice(0, sep - 1).trim(); + const link = sanitizedText.slice(sep + 1).trim(); + links[label] = link; + insertLinks(actor, links); + } catch (e) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.error("error while parsing actor link text", e); + } +}, "addALink"); +function insertLinks(actor, links) { + if (actor.links == null) { + actor.links = links; + } else { + for (const key in links) { + actor.links[key] = links[key]; + } + } +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(insertLinks, "insertLinks"); +var addProperties = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(actorId, text) { + const actor = getActor(actorId); + try { + const sanitizedText = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .sanitizeText */ .jZ)(text.text, (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)()); + const properties = JSON.parse(sanitizedText); + insertProperties(actor, properties); + } catch (e) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.error("error while parsing actor properties text", e); + } +}, "addProperties"); +function insertProperties(actor, properties) { + if (actor.properties == null) { + actor.properties = properties; + } else { + for (const key in properties) { + actor.properties[key] = properties[key]; + } + } +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(insertProperties, "insertProperties"); +function boxEnd() { + state.records.currentBox = void 0; +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(boxEnd, "boxEnd"); +var addDetails = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(actorId, text) { + const actor = getActor(actorId); + const elem = document.getElementById(text.text); + try { + const text2 = elem.innerHTML; + const details = JSON.parse(text2); + if (details.properties) { + insertProperties(actor, details.properties); + } + if (details.links) { + insertLinks(actor, details.links); + } + } catch (e) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.error("error while parsing actor details text", e); + } +}, "addDetails"); +var getActorProperty = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(actor, key) { + if (actor?.properties !== void 0) { + return actor.properties[key]; + } + return void 0; +}, "getActorProperty"); +var apply = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(param) { + if (Array.isArray(param)) { + param.forEach(function(item) { + apply(item); + }); + } else { + switch (param.type) { + case "sequenceIndex": + state.records.messages.push({ + from: void 0, + to: void 0, + message: { + start: param.sequenceIndex, + step: param.sequenceIndexStep, + visible: param.sequenceVisible + }, + wrap: false, + type: param.signalType + }); + break; + case "addParticipant": + addActor(param.actor, param.actor, param.description, param.draw); + break; + case "createParticipant": + if (state.records.actors.has(param.actor)) { + throw new Error( + "It is not possible to have actors with the same id, even if one is destroyed before the next is created. Use 'AS' aliases to simulate the behavior" + ); + } + state.records.lastCreated = param.actor; + addActor(param.actor, param.actor, param.description, param.draw); + state.records.createdActors.set(param.actor, state.records.messages.length); + break; + case "destroyParticipant": + state.records.lastDestroyed = param.actor; + state.records.destroyedActors.set(param.actor, state.records.messages.length); + break; + case "activeStart": + addSignal(param.actor, void 0, void 0, param.signalType); + break; + case "activeEnd": + addSignal(param.actor, void 0, void 0, param.signalType); + break; + case "addNote": + addNote(param.actor, param.placement, param.text); + break; + case "addLinks": + addLinks(param.actor, param.text); + break; + case "addALink": + addALink(param.actor, param.text); + break; + case "addProperties": + addProperties(param.actor, param.text); + break; + case "addDetails": + addDetails(param.actor, param.text); + break; + case "addMessage": + if (state.records.lastCreated) { + if (param.to !== state.records.lastCreated) { + throw new Error( + "The created participant " + state.records.lastCreated.name + " does not have an associated creating message after its declaration. Please check the sequence diagram." + ); + } else { + state.records.lastCreated = void 0; + } + } else if (state.records.lastDestroyed) { + if (param.to !== state.records.lastDestroyed && param.from !== state.records.lastDestroyed) { + throw new Error( + "The destroyed participant " + state.records.lastDestroyed.name + " does not have an associated destroying message after its declaration. Please check the sequence diagram." + ); + } else { + state.records.lastDestroyed = void 0; + } + } + addSignal(param.from, param.to, param.msg, param.signalType, param.activate); + break; + case "boxStart": + addBox(param.boxData); + break; + case "boxEnd": + boxEnd(); + break; + case "loopStart": + addSignal(void 0, void 0, param.loopText, param.signalType); + break; + case "loopEnd": + addSignal(void 0, void 0, void 0, param.signalType); + break; + case "rectStart": + addSignal(void 0, void 0, param.color, param.signalType); + break; + case "rectEnd": + addSignal(void 0, void 0, void 0, param.signalType); + break; + case "optStart": + addSignal(void 0, void 0, param.optText, param.signalType); + break; + case "optEnd": + addSignal(void 0, void 0, void 0, param.signalType); + break; + case "altStart": + addSignal(void 0, void 0, param.altText, param.signalType); + break; + case "else": + addSignal(void 0, void 0, param.altText, param.signalType); + break; + case "altEnd": + addSignal(void 0, void 0, void 0, param.signalType); + break; + case "setAccTitle": + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .setAccTitle */ .SV)(param.text); + break; + case "parStart": + addSignal(void 0, void 0, param.parText, param.signalType); + break; + case "and": + addSignal(void 0, void 0, param.parText, param.signalType); + break; + case "parEnd": + addSignal(void 0, void 0, void 0, param.signalType); + break; + case "criticalStart": + addSignal(void 0, void 0, param.criticalText, param.signalType); + break; + case "option": + addSignal(void 0, void 0, param.optionText, param.signalType); + break; + case "criticalEnd": + addSignal(void 0, void 0, void 0, param.signalType); + break; + case "breakStart": + addSignal(void 0, void 0, param.breakText, param.signalType); + break; + case "breakEnd": + addSignal(void 0, void 0, void 0, param.signalType); + break; + } + } +}, "apply"); +var sequenceDb_default = { + addActor, + addMessage, + addSignal, + addLinks, + addDetails, + addProperties, + autoWrap, + setWrap, + enableSequenceNumbers, + disableSequenceNumbers, + showSequenceNumbers, + getMessages, + getActors, + getCreatedActors, + getDestroyedActors, + getActor, + getActorKeys, + getActorProperty, + getAccTitle: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getAccTitle */ .iN, + getBoxes, + getDiagramTitle: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getDiagramTitle */ .ab, + setDiagramTitle: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .setDiagramTitle */ .ke, + getConfig: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(() => (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)().sequence, "getConfig"), + clear: clear2, + parseMessage, + parseBoxData, + LINETYPE, + ARROWTYPE, + PLACEMENT, + addNote, + setAccTitle: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .setAccTitle */ .SV, + apply, + setAccDescription: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .setAccDescription */ .EI, + getAccDescription: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getAccDescription */ .m7, + hasAtLeastOneBox, + hasAtLeastOneBoxWithTitle +}; + +// src/diagrams/sequence/styles.js +var getStyles = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((options) => `.actor { + stroke: ${options.actorBorder}; + fill: ${options.actorBkg}; + } + + text.actor > tspan { + fill: ${options.actorTextColor}; + stroke: none; + } + + .actor-line { + stroke: ${options.actorLineColor}; + } + + .messageLine0 { + stroke-width: 1.5; + stroke-dasharray: none; + stroke: ${options.signalColor}; + } + + .messageLine1 { + stroke-width: 1.5; + stroke-dasharray: 2, 2; + stroke: ${options.signalColor}; + } + + #arrowhead path { + fill: ${options.signalColor}; + stroke: ${options.signalColor}; + } + + .sequenceNumber { + fill: ${options.sequenceNumberColor}; + } + + #sequencenumber { + fill: ${options.signalColor}; + } + + #crosshead path { + fill: ${options.signalColor}; + stroke: ${options.signalColor}; + } + + .messageText { + fill: ${options.signalTextColor}; + stroke: none; + } + + .labelBox { + stroke: ${options.labelBoxBorderColor}; + fill: ${options.labelBoxBkgColor}; + } + + .labelText, .labelText > tspan { + fill: ${options.labelTextColor}; + stroke: none; + } + + .loopText, .loopText > tspan { + fill: ${options.loopTextColor}; + stroke: none; + } + + .loopLine { + stroke-width: 2px; + stroke-dasharray: 2, 2; + stroke: ${options.labelBoxBorderColor}; + fill: ${options.labelBoxBorderColor}; + } + + .note { + //stroke: #decc93; + stroke: ${options.noteBorderColor}; + fill: ${options.noteBkgColor}; + } + + .noteText, .noteText > tspan { + fill: ${options.noteTextColor}; + stroke: none; + } + + .activation0 { + fill: ${options.activationBkgColor}; + stroke: ${options.activationBorderColor}; + } + + .activation1 { + fill: ${options.activationBkgColor}; + stroke: ${options.activationBorderColor}; + } + + .activation2 { + fill: ${options.activationBkgColor}; + stroke: ${options.activationBorderColor}; + } + + .actorPopupMenu { + position: absolute; + } + + .actorPopupMenuPanel { + position: absolute; + fill: ${options.actorBkg}; + box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2); + filter: drop-shadow(3px 5px 2px rgb(0 0 0 / 0.4)); +} + .actor-man line { + stroke: ${options.actorBorder}; + fill: ${options.actorBkg}; + } + .actor-man circle, line { + stroke: ${options.actorBorder}; + fill: ${options.actorBkg}; + stroke-width: 2px; + } +`, "getStyles"); +var styles_default = getStyles; + +// src/diagrams/sequence/sequenceRenderer.ts + + +// src/diagrams/sequence/svgDraw.js + +var ACTOR_TYPE_WIDTH = 18 * 2; +var TOP_ACTOR_CLASS = "actor-top"; +var BOTTOM_ACTOR_CLASS = "actor-bottom"; +var ACTOR_BOX_CLASS = "actor-box"; +var ACTOR_MAN_FIGURE_CLASS = "actor-man"; +var drawRect2 = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(elem, rectData) { + return (0,_chunk_AIUMCIBP_mjs__WEBPACK_IMPORTED_MODULE_0__/* .drawRect */ .tk)(elem, rectData); +}, "drawRect"); +var drawPopup = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(elem, actor, minMenuWidth, textAttrs, forceMenus) { + if (actor.links === void 0 || actor.links === null || Object.keys(actor.links).length === 0) { + return { height: 0, width: 0 }; + } + const links = actor.links; + const actorCnt2 = actor.actorCnt; + const rectData = actor.rectData; + var displayValue = "none"; + if (forceMenus) { + displayValue = "block !important"; + } + const g = elem.append("g"); + g.attr("id", "actor" + actorCnt2 + "_popup"); + g.attr("class", "actorPopupMenu"); + g.attr("display", displayValue); + var actorClass = ""; + if (rectData.class !== void 0) { + actorClass = " " + rectData.class; + } + let menuWidth = rectData.width > minMenuWidth ? rectData.width : minMenuWidth; + const rectElem = g.append("rect"); + rectElem.attr("class", "actorPopupMenuPanel" + actorClass); + rectElem.attr("x", rectData.x); + rectElem.attr("y", rectData.height); + rectElem.attr("fill", rectData.fill); + rectElem.attr("stroke", rectData.stroke); + rectElem.attr("width", menuWidth); + rectElem.attr("height", rectData.height); + rectElem.attr("rx", rectData.rx); + rectElem.attr("ry", rectData.ry); + if (links != null) { + var linkY = 20; + for (let key in links) { + var linkElem = g.append("a"); + var sanitizedLink = (0,_braintree_sanitize_url__WEBPACK_IMPORTED_MODULE_4__/* .sanitizeUrl */ .J)(links[key]); + linkElem.attr("xlink:href", sanitizedLink); + linkElem.attr("target", "_blank"); + _drawMenuItemTextCandidateFunc(textAttrs)( + key, + linkElem, + rectData.x + 10, + rectData.height + linkY, + menuWidth, + 20, + { class: "actor" }, + textAttrs + ); + linkY += 30; + } + } + rectElem.attr("height", linkY); + return { height: rectData.height + linkY, width: menuWidth }; +}, "drawPopup"); +var popupMenuToggle = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(popId) { + return "var pu = document.getElementById('" + popId + "'); if (pu != null) { pu.style.display = pu.style.display == 'block' ? 'none' : 'block'; }"; +}, "popupMenuToggle"); +var drawKatex = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async function(elem, textData, msgModel = null) { + let textElem = elem.append("foreignObject"); + const lines = await (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .renderKatex */ .VJ)(textData.text, (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig */ .zj)()); + const divElem = textElem.append("xhtml:div").attr("style", "width: fit-content;").attr("xmlns", "http://www.w3.org/1999/xhtml").html(lines); + const dim = divElem.node().getBoundingClientRect(); + textElem.attr("height", Math.round(dim.height)).attr("width", Math.round(dim.width)); + if (textData.class === "noteText") { + const rectElem = elem.node().firstChild; + rectElem.setAttribute("height", dim.height + 2 * textData.textMargin); + const rectDim = rectElem.getBBox(); + textElem.attr("x", Math.round(rectDim.x + rectDim.width / 2 - dim.width / 2)).attr("y", Math.round(rectDim.y + rectDim.height / 2 - dim.height / 2)); + } else if (msgModel) { + let { startx, stopx, starty } = msgModel; + if (startx > stopx) { + const temp = startx; + startx = stopx; + stopx = temp; + } + textElem.attr("x", Math.round(startx + Math.abs(startx - stopx) / 2 - dim.width / 2)); + if (textData.class === "loopText") { + textElem.attr("y", Math.round(starty)); + } else { + textElem.attr("y", Math.round(starty - dim.height)); + } + } + return [textElem]; +}, "drawKatex"); +var drawText = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(elem, textData) { + let prevTextHeight = 0; + let textHeight = 0; + const lines = textData.text.split(_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.lineBreakRegex); + const [_textFontSize, _textFontSizePx] = (0,_chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_1__/* .parseFontSize */ .I5)(textData.fontSize); + let textElems = []; + let dy = 0; + let yfunc = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(() => textData.y, "yfunc"); + if (textData.valign !== void 0 && textData.textMargin !== void 0 && textData.textMargin > 0) { + switch (textData.valign) { + case "top": + case "start": + yfunc = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(() => Math.round(textData.y + textData.textMargin), "yfunc"); + break; + case "middle": + case "center": + yfunc = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(() => Math.round(textData.y + (prevTextHeight + textHeight + textData.textMargin) / 2), "yfunc"); + break; + case "bottom": + case "end": + yfunc = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(() => Math.round( + textData.y + (prevTextHeight + textHeight + 2 * textData.textMargin) - textData.textMargin + ), "yfunc"); + break; + } + } + if (textData.anchor !== void 0 && textData.textMargin !== void 0 && textData.width !== void 0) { + switch (textData.anchor) { + case "left": + case "start": + textData.x = Math.round(textData.x + textData.textMargin); + textData.anchor = "start"; + textData.dominantBaseline = "middle"; + textData.alignmentBaseline = "middle"; + break; + case "middle": + case "center": + textData.x = Math.round(textData.x + textData.width / 2); + textData.anchor = "middle"; + textData.dominantBaseline = "middle"; + textData.alignmentBaseline = "middle"; + break; + case "right": + case "end": + textData.x = Math.round(textData.x + textData.width - textData.textMargin); + textData.anchor = "end"; + textData.dominantBaseline = "middle"; + textData.alignmentBaseline = "middle"; + break; + } + } + for (let [i, line] of lines.entries()) { + if (textData.textMargin !== void 0 && textData.textMargin === 0 && _textFontSize !== void 0) { + dy = i * _textFontSize; + } + const textElem = elem.append("text"); + textElem.attr("x", textData.x); + textElem.attr("y", yfunc()); + if (textData.anchor !== void 0) { + textElem.attr("text-anchor", textData.anchor).attr("dominant-baseline", textData.dominantBaseline).attr("alignment-baseline", textData.alignmentBaseline); + } + if (textData.fontFamily !== void 0) { + textElem.style("font-family", textData.fontFamily); + } + if (_textFontSizePx !== void 0) { + textElem.style("font-size", _textFontSizePx); + } + if (textData.fontWeight !== void 0) { + textElem.style("font-weight", textData.fontWeight); + } + if (textData.fill !== void 0) { + textElem.attr("fill", textData.fill); + } + if (textData.class !== void 0) { + textElem.attr("class", textData.class); + } + if (textData.dy !== void 0) { + textElem.attr("dy", textData.dy); + } else if (dy !== 0) { + textElem.attr("dy", dy); + } + const text = line || _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_1__/* .ZERO_WIDTH_SPACE */ .pe; + if (textData.tspan) { + const span = textElem.append("tspan"); + span.attr("x", textData.x); + if (textData.fill !== void 0) { + span.attr("fill", textData.fill); + } + span.text(text); + } else { + textElem.text(text); + } + if (textData.valign !== void 0 && textData.textMargin !== void 0 && textData.textMargin > 0) { + textHeight += (textElem._groups || textElem)[0][0].getBBox().height; + prevTextHeight = textHeight; + } + textElems.push(textElem); + } + return textElems; +}, "drawText"); +var drawLabel = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(elem, txtObject) { + function genPoints(x, y, width, height, cut) { + return x + "," + y + " " + (x + width) + "," + y + " " + (x + width) + "," + (y + height - cut) + " " + (x + width - cut * 1.2) + "," + (y + height) + " " + x + "," + (y + height); + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(genPoints, "genPoints"); + const polygon = elem.append("polygon"); + polygon.attr("points", genPoints(txtObject.x, txtObject.y, txtObject.width, txtObject.height, 7)); + polygon.attr("class", "labelBox"); + txtObject.y = txtObject.y + txtObject.height / 2; + drawText(elem, txtObject); + return polygon; +}, "drawLabel"); +var actorCnt = -1; +var fixLifeLineHeights = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((diagram2, actors, actorKeys, conf2) => { + if (!diagram2.select) { + return; + } + actorKeys.forEach((actorKey) => { + const actor = actors.get(actorKey); + const actorDOM = diagram2.select("#actor" + actor.actorCnt); + if (!conf2.mirrorActors && actor.stopy) { + actorDOM.attr("y2", actor.stopy + actor.height / 2); + } else if (conf2.mirrorActors) { + actorDOM.attr("y2", actor.stopy); + } + }); +}, "fixLifeLineHeights"); +var drawActorTypeParticipant = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(elem, actor, conf2, isFooter) { + const actorY = isFooter ? actor.stopy : actor.starty; + const center = actor.x + actor.width / 2; + const centerY = actorY + 5; + const boxplusLineGroup = elem.append("g").lower(); + var g = boxplusLineGroup; + if (!isFooter) { + actorCnt++; + if (Object.keys(actor.links || {}).length && !conf2.forceMenus) { + g.attr("onclick", popupMenuToggle(`actor${actorCnt}_popup`)).attr("cursor", "pointer"); + } + g.append("line").attr("id", "actor" + actorCnt).attr("x1", center).attr("y1", centerY).attr("x2", center).attr("y2", 2e3).attr("class", "actor-line 200").attr("stroke-width", "0.5px").attr("stroke", "#999").attr("name", actor.name); + g = boxplusLineGroup.append("g"); + actor.actorCnt = actorCnt; + if (actor.links != null) { + g.attr("id", "root-" + actorCnt); + } + } + const rect = (0,_chunk_AIUMCIBP_mjs__WEBPACK_IMPORTED_MODULE_0__/* .getNoteRect */ .PB)(); + var cssclass = "actor"; + if (actor.properties?.class) { + cssclass = actor.properties.class; + } else { + rect.fill = "#eaeaea"; + } + if (isFooter) { + cssclass += ` ${BOTTOM_ACTOR_CLASS}`; + } else { + cssclass += ` ${TOP_ACTOR_CLASS}`; + } + rect.x = actor.x; + rect.y = actorY; + rect.width = actor.width; + rect.height = actor.height; + rect.class = cssclass; + rect.rx = 3; + rect.ry = 3; + rect.name = actor.name; + const rectElem = drawRect2(g, rect); + actor.rectData = rect; + if (actor.properties?.icon) { + const iconSrc = actor.properties.icon.trim(); + if (iconSrc.charAt(0) === "@") { + (0,_chunk_AIUMCIBP_mjs__WEBPACK_IMPORTED_MODULE_0__/* .drawEmbeddedImage */ .CP)(g, rect.x + rect.width - 20, rect.y + 10, iconSrc.substr(1)); + } else { + (0,_chunk_AIUMCIBP_mjs__WEBPACK_IMPORTED_MODULE_0__/* .drawImage */ .aC)(g, rect.x + rect.width - 20, rect.y + 10, iconSrc); + } + } + _drawTextCandidateFunc(conf2, (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .hasKatex */ .Wi)(actor.description))( + actor.description, + g, + rect.x, + rect.y, + rect.width, + rect.height, + { class: `actor ${ACTOR_BOX_CLASS}` }, + conf2 + ); + let height = actor.height; + if (rectElem.node) { + const bounds2 = rectElem.node().getBBox(); + actor.height = bounds2.height; + height = bounds2.height; + } + return height; +}, "drawActorTypeParticipant"); +var drawActorTypeActor = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(elem, actor, conf2, isFooter) { + const actorY = isFooter ? actor.stopy : actor.starty; + const center = actor.x + actor.width / 2; + const centerY = actorY + 80; + const line = elem.append("g").lower(); + if (!isFooter) { + actorCnt++; + line.append("line").attr("id", "actor" + actorCnt).attr("x1", center).attr("y1", centerY).attr("x2", center).attr("y2", 2e3).attr("class", "actor-line 200").attr("stroke-width", "0.5px").attr("stroke", "#999").attr("name", actor.name); + actor.actorCnt = actorCnt; + } + const actElem = elem.append("g"); + let cssClass = ACTOR_MAN_FIGURE_CLASS; + if (isFooter) { + cssClass += ` ${BOTTOM_ACTOR_CLASS}`; + } else { + cssClass += ` ${TOP_ACTOR_CLASS}`; + } + actElem.attr("class", cssClass); + actElem.attr("name", actor.name); + const rect = (0,_chunk_AIUMCIBP_mjs__WEBPACK_IMPORTED_MODULE_0__/* .getNoteRect */ .PB)(); + rect.x = actor.x; + rect.y = actorY; + rect.fill = "#eaeaea"; + rect.width = actor.width; + rect.height = actor.height; + rect.class = "actor"; + rect.rx = 3; + rect.ry = 3; + actElem.append("line").attr("id", "actor-man-torso" + actorCnt).attr("x1", center).attr("y1", actorY + 25).attr("x2", center).attr("y2", actorY + 45); + actElem.append("line").attr("id", "actor-man-arms" + actorCnt).attr("x1", center - ACTOR_TYPE_WIDTH / 2).attr("y1", actorY + 33).attr("x2", center + ACTOR_TYPE_WIDTH / 2).attr("y2", actorY + 33); + actElem.append("line").attr("x1", center - ACTOR_TYPE_WIDTH / 2).attr("y1", actorY + 60).attr("x2", center).attr("y2", actorY + 45); + actElem.append("line").attr("x1", center).attr("y1", actorY + 45).attr("x2", center + ACTOR_TYPE_WIDTH / 2 - 2).attr("y2", actorY + 60); + const circle = actElem.append("circle"); + circle.attr("cx", actor.x + actor.width / 2); + circle.attr("cy", actorY + 10); + circle.attr("r", 15); + circle.attr("width", actor.width); + circle.attr("height", actor.height); + const bounds2 = actElem.node().getBBox(); + actor.height = bounds2.height; + _drawTextCandidateFunc(conf2, (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .hasKatex */ .Wi)(actor.description))( + actor.description, + actElem, + rect.x, + rect.y + 35, + rect.width, + rect.height, + { class: `actor ${ACTOR_MAN_FIGURE_CLASS}` }, + conf2 + ); + return actor.height; +}, "drawActorTypeActor"); +var drawActor = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async function(elem, actor, conf2, isFooter) { + switch (actor.type) { + case "actor": + return await drawActorTypeActor(elem, actor, conf2, isFooter); + case "participant": + return await drawActorTypeParticipant(elem, actor, conf2, isFooter); + } +}, "drawActor"); +var drawBox = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(elem, box, conf2) { + const boxplusTextGroup = elem.append("g"); + const g = boxplusTextGroup; + drawBackgroundRect2(g, box); + if (box.name) { + _drawTextCandidateFunc(conf2)( + box.name, + g, + box.x, + box.y + (box.textMaxHeight || 0) / 2, + box.width, + 0, + { class: "text" }, + conf2 + ); + } + g.lower(); +}, "drawBox"); +var anchorElement = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(elem) { + return elem.append("g"); +}, "anchorElement"); +var drawActivation = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(elem, bounds2, verticalPos, conf2, actorActivations2) { + const rect = (0,_chunk_AIUMCIBP_mjs__WEBPACK_IMPORTED_MODULE_0__/* .getNoteRect */ .PB)(); + const g = bounds2.anchored; + rect.x = bounds2.startx; + rect.y = bounds2.starty; + rect.class = "activation" + actorActivations2 % 3; + rect.width = bounds2.stopx - bounds2.startx; + rect.height = verticalPos - bounds2.starty; + drawRect2(g, rect); +}, "drawActivation"); +var drawLoop = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async function(elem, loopModel, labelText, conf2) { + const { + boxMargin, + boxTextMargin, + labelBoxHeight, + labelBoxWidth, + messageFontFamily: fontFamily, + messageFontSize: fontSize, + messageFontWeight: fontWeight + } = conf2; + const g = elem.append("g"); + const drawLoopLine = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(startx, starty, stopx, stopy) { + return g.append("line").attr("x1", startx).attr("y1", starty).attr("x2", stopx).attr("y2", stopy).attr("class", "loopLine"); + }, "drawLoopLine"); + drawLoopLine(loopModel.startx, loopModel.starty, loopModel.stopx, loopModel.starty); + drawLoopLine(loopModel.stopx, loopModel.starty, loopModel.stopx, loopModel.stopy); + drawLoopLine(loopModel.startx, loopModel.stopy, loopModel.stopx, loopModel.stopy); + drawLoopLine(loopModel.startx, loopModel.starty, loopModel.startx, loopModel.stopy); + if (loopModel.sections !== void 0) { + loopModel.sections.forEach(function(item) { + drawLoopLine(loopModel.startx, item.y, loopModel.stopx, item.y).style( + "stroke-dasharray", + "3, 3" + ); + }); + } + let txt = (0,_chunk_AIUMCIBP_mjs__WEBPACK_IMPORTED_MODULE_0__/* .getTextObj */ .HT)(); + txt.text = labelText; + txt.x = loopModel.startx; + txt.y = loopModel.starty; + txt.fontFamily = fontFamily; + txt.fontSize = fontSize; + txt.fontWeight = fontWeight; + txt.anchor = "middle"; + txt.valign = "middle"; + txt.tspan = false; + txt.width = labelBoxWidth || 50; + txt.height = labelBoxHeight || 20; + txt.textMargin = boxTextMargin; + txt.class = "labelText"; + drawLabel(g, txt); + txt = getTextObj2(); + txt.text = loopModel.title; + txt.x = loopModel.startx + labelBoxWidth / 2 + (loopModel.stopx - loopModel.startx) / 2; + txt.y = loopModel.starty + boxMargin + boxTextMargin; + txt.anchor = "middle"; + txt.valign = "middle"; + txt.textMargin = boxTextMargin; + txt.class = "loopText"; + txt.fontFamily = fontFamily; + txt.fontSize = fontSize; + txt.fontWeight = fontWeight; + txt.wrap = true; + let textElem = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .hasKatex */ .Wi)(txt.text) ? await drawKatex(g, txt, loopModel) : drawText(g, txt); + if (loopModel.sectionTitles !== void 0) { + for (const [idx, item] of Object.entries(loopModel.sectionTitles)) { + if (item.message) { + txt.text = item.message; + txt.x = loopModel.startx + (loopModel.stopx - loopModel.startx) / 2; + txt.y = loopModel.sections[idx].y + boxMargin + boxTextMargin; + txt.class = "loopText"; + txt.anchor = "middle"; + txt.valign = "middle"; + txt.tspan = false; + txt.fontFamily = fontFamily; + txt.fontSize = fontSize; + txt.fontWeight = fontWeight; + txt.wrap = loopModel.wrap; + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .hasKatex */ .Wi)(txt.text)) { + loopModel.starty = loopModel.sections[idx].y; + await drawKatex(g, txt, loopModel); + } else { + drawText(g, txt); + } + let sectionHeight = Math.round( + textElem.map((te) => (te._groups || te)[0][0].getBBox().height).reduce((acc, curr) => acc + curr) + ); + loopModel.sections[idx].height += sectionHeight - (boxMargin + boxTextMargin); + } + } + } + loopModel.height = Math.round(loopModel.stopy - loopModel.starty); + return g; +}, "drawLoop"); +var drawBackgroundRect2 = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(elem, bounds2) { + (0,_chunk_AIUMCIBP_mjs__WEBPACK_IMPORTED_MODULE_0__/* .drawBackgroundRect */ .lC)(elem, bounds2); +}, "drawBackgroundRect"); +var insertDatabaseIcon = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(elem) { + elem.append("defs").append("symbol").attr("id", "database").attr("fill-rule", "evenodd").attr("clip-rule", "evenodd").append("path").attr("transform", "scale(.5)").attr( + "d", + "M12.258.001l.256.004.255.005.253.008.251.01.249.012.247.015.246.016.242.019.241.02.239.023.236.024.233.027.231.028.229.031.225.032.223.034.22.036.217.038.214.04.211.041.208.043.205.045.201.046.198.048.194.05.191.051.187.053.183.054.18.056.175.057.172.059.168.06.163.061.16.063.155.064.15.066.074.033.073.033.071.034.07.034.069.035.068.035.067.035.066.035.064.036.064.036.062.036.06.036.06.037.058.037.058.037.055.038.055.038.053.038.052.038.051.039.05.039.048.039.047.039.045.04.044.04.043.04.041.04.04.041.039.041.037.041.036.041.034.041.033.042.032.042.03.042.029.042.027.042.026.043.024.043.023.043.021.043.02.043.018.044.017.043.015.044.013.044.012.044.011.045.009.044.007.045.006.045.004.045.002.045.001.045v17l-.001.045-.002.045-.004.045-.006.045-.007.045-.009.044-.011.045-.012.044-.013.044-.015.044-.017.043-.018.044-.02.043-.021.043-.023.043-.024.043-.026.043-.027.042-.029.042-.03.042-.032.042-.033.042-.034.041-.036.041-.037.041-.039.041-.04.041-.041.04-.043.04-.044.04-.045.04-.047.039-.048.039-.05.039-.051.039-.052.038-.053.038-.055.038-.055.038-.058.037-.058.037-.06.037-.06.036-.062.036-.064.036-.064.036-.066.035-.067.035-.068.035-.069.035-.07.034-.071.034-.073.033-.074.033-.15.066-.155.064-.16.063-.163.061-.168.06-.172.059-.175.057-.18.056-.183.054-.187.053-.191.051-.194.05-.198.048-.201.046-.205.045-.208.043-.211.041-.214.04-.217.038-.22.036-.223.034-.225.032-.229.031-.231.028-.233.027-.236.024-.239.023-.241.02-.242.019-.246.016-.247.015-.249.012-.251.01-.253.008-.255.005-.256.004-.258.001-.258-.001-.256-.004-.255-.005-.253-.008-.251-.01-.249-.012-.247-.015-.245-.016-.243-.019-.241-.02-.238-.023-.236-.024-.234-.027-.231-.028-.228-.031-.226-.032-.223-.034-.22-.036-.217-.038-.214-.04-.211-.041-.208-.043-.204-.045-.201-.046-.198-.048-.195-.05-.19-.051-.187-.053-.184-.054-.179-.056-.176-.057-.172-.059-.167-.06-.164-.061-.159-.063-.155-.064-.151-.066-.074-.033-.072-.033-.072-.034-.07-.034-.069-.035-.068-.035-.067-.035-.066-.035-.064-.036-.063-.036-.062-.036-.061-.036-.06-.037-.058-.037-.057-.037-.056-.038-.055-.038-.053-.038-.052-.038-.051-.039-.049-.039-.049-.039-.046-.039-.046-.04-.044-.04-.043-.04-.041-.04-.04-.041-.039-.041-.037-.041-.036-.041-.034-.041-.033-.042-.032-.042-.03-.042-.029-.042-.027-.042-.026-.043-.024-.043-.023-.043-.021-.043-.02-.043-.018-.044-.017-.043-.015-.044-.013-.044-.012-.044-.011-.045-.009-.044-.007-.045-.006-.045-.004-.045-.002-.045-.001-.045v-17l.001-.045.002-.045.004-.045.006-.045.007-.045.009-.044.011-.045.012-.044.013-.044.015-.044.017-.043.018-.044.02-.043.021-.043.023-.043.024-.043.026-.043.027-.042.029-.042.03-.042.032-.042.033-.042.034-.041.036-.041.037-.041.039-.041.04-.041.041-.04.043-.04.044-.04.046-.04.046-.039.049-.039.049-.039.051-.039.052-.038.053-.038.055-.038.056-.038.057-.037.058-.037.06-.037.061-.036.062-.036.063-.036.064-.036.066-.035.067-.035.068-.035.069-.035.07-.034.072-.034.072-.033.074-.033.151-.066.155-.064.159-.063.164-.061.167-.06.172-.059.176-.057.179-.056.184-.054.187-.053.19-.051.195-.05.198-.048.201-.046.204-.045.208-.043.211-.041.214-.04.217-.038.22-.036.223-.034.226-.032.228-.031.231-.028.234-.027.236-.024.238-.023.241-.02.243-.019.245-.016.247-.015.249-.012.251-.01.253-.008.255-.005.256-.004.258-.001.258.001zm-9.258 20.499v.01l.001.021.003.021.004.022.005.021.006.022.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.023.018.024.019.024.021.024.022.025.023.024.024.025.052.049.056.05.061.051.066.051.07.051.075.051.079.052.084.052.088.052.092.052.097.052.102.051.105.052.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.048.144.049.147.047.152.047.155.047.16.045.163.045.167.043.171.043.176.041.178.041.183.039.187.039.19.037.194.035.197.035.202.033.204.031.209.03.212.029.216.027.219.025.222.024.226.021.23.02.233.018.236.016.24.015.243.012.246.01.249.008.253.005.256.004.259.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.021.224-.024.22-.026.216-.027.212-.028.21-.031.205-.031.202-.034.198-.034.194-.036.191-.037.187-.039.183-.04.179-.04.175-.042.172-.043.168-.044.163-.045.16-.046.155-.046.152-.047.148-.048.143-.049.139-.049.136-.05.131-.05.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.053.083-.051.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.05.023-.024.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.023.01-.022.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.127l-.077.055-.08.053-.083.054-.085.053-.087.052-.09.052-.093.051-.095.05-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.045-.118.044-.12.043-.122.042-.124.042-.126.041-.128.04-.13.04-.132.038-.134.038-.135.037-.138.037-.139.035-.142.035-.143.034-.144.033-.147.032-.148.031-.15.03-.151.03-.153.029-.154.027-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.01-.179.008-.179.008-.181.006-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.006-.179-.008-.179-.008-.178-.01-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.027-.153-.029-.151-.03-.15-.03-.148-.031-.146-.032-.145-.033-.143-.034-.141-.035-.14-.035-.137-.037-.136-.037-.134-.038-.132-.038-.13-.04-.128-.04-.126-.041-.124-.042-.122-.042-.12-.044-.117-.043-.116-.045-.113-.045-.112-.046-.109-.047-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.05-.093-.052-.09-.051-.087-.052-.085-.053-.083-.054-.08-.054-.077-.054v4.127zm0-5.654v.011l.001.021.003.021.004.021.005.022.006.022.007.022.009.022.01.022.011.023.012.023.013.023.015.024.016.023.017.024.018.024.019.024.021.024.022.024.023.025.024.024.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.052.11.051.114.051.119.052.123.05.127.051.131.05.135.049.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.044.171.042.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.022.23.02.233.018.236.016.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.012.241-.015.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.048.139-.05.136-.049.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.051.051-.049.023-.025.023-.024.021-.025.02-.024.019-.024.018-.024.017-.024.015-.023.014-.023.013-.024.012-.022.01-.023.01-.023.008-.022.006-.022.006-.022.004-.021.004-.022.001-.021.001-.021v-4.139l-.077.054-.08.054-.083.054-.085.052-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.044-.118.044-.12.044-.122.042-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.035-.143.033-.144.033-.147.033-.148.031-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.009-.179.009-.179.007-.181.007-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.007-.179-.007-.179-.009-.178-.009-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.031-.146-.033-.145-.033-.143-.033-.141-.035-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.04-.126-.041-.124-.042-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.051-.093-.051-.09-.051-.087-.053-.085-.052-.083-.054-.08-.054-.077-.054v4.139zm0-5.666v.011l.001.02.003.022.004.021.005.022.006.021.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.024.018.023.019.024.021.025.022.024.023.024.024.025.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.051.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.043.171.043.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.021.23.02.233.018.236.017.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.013.241-.014.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.049.139-.049.136-.049.131-.051.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.049.023-.025.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.022.01-.023.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.153l-.077.054-.08.054-.083.053-.085.053-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.048-.105.048-.106.048-.109.046-.111.046-.114.046-.115.044-.118.044-.12.043-.122.043-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.034-.143.034-.144.033-.147.032-.148.032-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.024-.161.024-.162.023-.163.023-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.01-.178.01-.179.009-.179.007-.181.006-.182.006-.182.004-.184.003-.184.001-.185.001-.185-.001-.184-.001-.184-.003-.182-.004-.182-.006-.181-.006-.179-.007-.179-.009-.178-.01-.176-.01-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.023-.162-.023-.161-.024-.159-.024-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.032-.146-.032-.145-.033-.143-.034-.141-.034-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.041-.126-.041-.124-.041-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.048-.105-.048-.102-.048-.1-.05-.097-.049-.095-.051-.093-.051-.09-.052-.087-.052-.085-.053-.083-.053-.08-.054-.077-.054v4.153zm8.74-8.179l-.257.004-.254.005-.25.008-.247.011-.244.012-.241.014-.237.016-.233.018-.231.021-.226.022-.224.023-.22.026-.216.027-.212.028-.21.031-.205.032-.202.033-.198.034-.194.036-.191.038-.187.038-.183.04-.179.041-.175.042-.172.043-.168.043-.163.045-.16.046-.155.046-.152.048-.148.048-.143.048-.139.049-.136.05-.131.05-.126.051-.123.051-.118.051-.114.052-.11.052-.106.052-.101.052-.096.052-.092.052-.088.052-.083.052-.079.052-.074.051-.07.052-.065.051-.06.05-.056.05-.051.05-.023.025-.023.024-.021.024-.02.025-.019.024-.018.024-.017.023-.015.024-.014.023-.013.023-.012.023-.01.023-.01.022-.008.022-.006.023-.006.021-.004.022-.004.021-.001.021-.001.021.001.021.001.021.004.021.004.022.006.021.006.023.008.022.01.022.01.023.012.023.013.023.014.023.015.024.017.023.018.024.019.024.02.025.021.024.023.024.023.025.051.05.056.05.06.05.065.051.07.052.074.051.079.052.083.052.088.052.092.052.096.052.101.052.106.052.11.052.114.052.118.051.123.051.126.051.131.05.136.05.139.049.143.048.148.048.152.048.155.046.16.046.163.045.168.043.172.043.175.042.179.041.183.04.187.038.191.038.194.036.198.034.202.033.205.032.21.031.212.028.216.027.22.026.224.023.226.022.231.021.233.018.237.016.241.014.244.012.247.011.25.008.254.005.257.004.26.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.022.224-.023.22-.026.216-.027.212-.028.21-.031.205-.032.202-.033.198-.034.194-.036.191-.038.187-.038.183-.04.179-.041.175-.042.172-.043.168-.043.163-.045.16-.046.155-.046.152-.048.148-.048.143-.048.139-.049.136-.05.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.05.051-.05.023-.025.023-.024.021-.024.02-.025.019-.024.018-.024.017-.023.015-.024.014-.023.013-.023.012-.023.01-.023.01-.022.008-.022.006-.023.006-.021.004-.022.004-.021.001-.021.001-.021-.001-.021-.001-.021-.004-.021-.004-.022-.006-.021-.006-.023-.008-.022-.01-.022-.01-.023-.012-.023-.013-.023-.014-.023-.015-.024-.017-.023-.018-.024-.019-.024-.02-.025-.021-.024-.023-.024-.023-.025-.051-.05-.056-.05-.06-.05-.065-.051-.07-.052-.074-.051-.079-.052-.083-.052-.088-.052-.092-.052-.096-.052-.101-.052-.106-.052-.11-.052-.114-.052-.118-.051-.123-.051-.126-.051-.131-.05-.136-.05-.139-.049-.143-.048-.148-.048-.152-.048-.155-.046-.16-.046-.163-.045-.168-.043-.172-.043-.175-.042-.179-.041-.183-.04-.187-.038-.191-.038-.194-.036-.198-.034-.202-.033-.205-.032-.21-.031-.212-.028-.216-.027-.22-.026-.224-.023-.226-.022-.231-.021-.233-.018-.237-.016-.241-.014-.244-.012-.247-.011-.25-.008-.254-.005-.257-.004-.26-.001-.26.001z" + ); +}, "insertDatabaseIcon"); +var insertComputerIcon = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(elem) { + elem.append("defs").append("symbol").attr("id", "computer").attr("width", "24").attr("height", "24").append("path").attr("transform", "scale(.5)").attr( + "d", + "M2 2v13h20v-13h-20zm18 11h-16v-9h16v9zm-10.228 6l.466-1h3.524l.467 1h-4.457zm14.228 3h-24l2-6h2.104l-1.33 4h18.45l-1.297-4h2.073l2 6zm-5-10h-14v-7h14v7z" + ); +}, "insertComputerIcon"); +var insertClockIcon = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(elem) { + elem.append("defs").append("symbol").attr("id", "clock").attr("width", "24").attr("height", "24").append("path").attr("transform", "scale(.5)").attr( + "d", + "M12 2c5.514 0 10 4.486 10 10s-4.486 10-10 10-10-4.486-10-10 4.486-10 10-10zm0-2c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm5.848 12.459c.202.038.202.333.001.372-1.907.361-6.045 1.111-6.547 1.111-.719 0-1.301-.582-1.301-1.301 0-.512.77-5.447 1.125-7.445.034-.192.312-.181.343.014l.985 6.238 5.394 1.011z" + ); +}, "insertClockIcon"); +var insertArrowHead = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(elem) { + elem.append("defs").append("marker").attr("id", "arrowhead").attr("refX", 7.9).attr("refY", 5).attr("markerUnits", "userSpaceOnUse").attr("markerWidth", 12).attr("markerHeight", 12).attr("orient", "auto-start-reverse").append("path").attr("d", "M -1 0 L 10 5 L 0 10 z"); +}, "insertArrowHead"); +var insertArrowFilledHead = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(elem) { + elem.append("defs").append("marker").attr("id", "filled-head").attr("refX", 15.5).attr("refY", 7).attr("markerWidth", 20).attr("markerHeight", 28).attr("orient", "auto").append("path").attr("d", "M 18,7 L9,13 L14,7 L9,1 Z"); +}, "insertArrowFilledHead"); +var insertSequenceNumber = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(elem) { + elem.append("defs").append("marker").attr("id", "sequencenumber").attr("refX", 15).attr("refY", 15).attr("markerWidth", 60).attr("markerHeight", 40).attr("orient", "auto").append("circle").attr("cx", 15).attr("cy", 15).attr("r", 6); +}, "insertSequenceNumber"); +var insertArrowCrossHead = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(elem) { + const defs = elem.append("defs"); + const marker = defs.append("marker").attr("id", "crosshead").attr("markerWidth", 15).attr("markerHeight", 8).attr("orient", "auto").attr("refX", 4).attr("refY", 4.5); + marker.append("path").attr("fill", "none").attr("stroke", "#000000").style("stroke-dasharray", "0, 0").attr("stroke-width", "1pt").attr("d", "M 1,2 L 6,7 M 6,2 L 1,7"); +}, "insertArrowCrossHead"); +var getTextObj2 = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function() { + return { + x: 0, + y: 0, + fill: void 0, + anchor: void 0, + style: "#666", + width: void 0, + height: void 0, + textMargin: 0, + rx: 0, + ry: 0, + tspan: true, + valign: void 0 + }; +}, "getTextObj"); +var getNoteRect2 = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function() { + return { + x: 0, + y: 0, + fill: "#EDF2AE", + stroke: "#666", + width: 100, + anchor: "start", + height: 100, + rx: 0, + ry: 0 + }; +}, "getNoteRect"); +var _drawTextCandidateFunc = /* @__PURE__ */ function() { + function byText(content, g, x, y, width, height, textAttrs) { + const text = g.append("text").attr("x", x + width / 2).attr("y", y + height / 2 + 5).style("text-anchor", "middle").text(content); + _setTextAttrs(text, textAttrs); + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(byText, "byText"); + function byTspan(content, g, x, y, width, height, textAttrs, conf2) { + const { actorFontSize, actorFontFamily, actorFontWeight } = conf2; + const [_actorFontSize, _actorFontSizePx] = (0,_chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_1__/* .parseFontSize */ .I5)(actorFontSize); + const lines = content.split(_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.lineBreakRegex); + for (let i = 0; i < lines.length; i++) { + const dy = i * _actorFontSize - _actorFontSize * (lines.length - 1) / 2; + const text = g.append("text").attr("x", x + width / 2).attr("y", y).style("text-anchor", "middle").style("font-size", _actorFontSizePx).style("font-weight", actorFontWeight).style("font-family", actorFontFamily); + text.append("tspan").attr("x", x + width / 2).attr("dy", dy).text(lines[i]); + text.attr("y", y + height / 2).attr("dominant-baseline", "central").attr("alignment-baseline", "central"); + _setTextAttrs(text, textAttrs); + } + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(byTspan, "byTspan"); + function byFo(content, g, x, y, width, height, textAttrs, conf2) { + const s = g.append("switch"); + const f = s.append("foreignObject").attr("x", x).attr("y", y).attr("width", width).attr("height", height); + const text = f.append("xhtml:div").style("display", "table").style("height", "100%").style("width", "100%"); + text.append("div").style("display", "table-cell").style("text-align", "center").style("vertical-align", "middle").text(content); + byTspan(content, s, x, y, width, height, textAttrs, conf2); + _setTextAttrs(text, textAttrs); + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(byFo, "byFo"); + async function byKatex(content, g, x, y, width, height, textAttrs, conf2) { + const dim = await (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .calculateMathMLDimensions */ .Dl)(content, (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig */ .zj)()); + const s = g.append("switch"); + const f = s.append("foreignObject").attr("x", x + width / 2 - dim.width / 2).attr("y", y + height / 2 - dim.height / 2).attr("width", dim.width).attr("height", dim.height); + const text = f.append("xhtml:div").style("height", "100%").style("width", "100%"); + text.append("div").style("text-align", "center").style("vertical-align", "middle").html(await (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .renderKatex */ .VJ)(content, (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig */ .zj)())); + byTspan(content, s, x, y, width, height, textAttrs, conf2); + _setTextAttrs(text, textAttrs); + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(byKatex, "byKatex"); + function _setTextAttrs(toText, fromTextAttrsDict) { + for (const key in fromTextAttrsDict) { + if (fromTextAttrsDict.hasOwnProperty(key)) { + toText.attr(key, fromTextAttrsDict[key]); + } + } + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(_setTextAttrs, "_setTextAttrs"); + return function(conf2, hasKatex2 = false) { + if (hasKatex2) { + return byKatex; + } + return conf2.textPlacement === "fo" ? byFo : conf2.textPlacement === "old" ? byText : byTspan; + }; +}(); +var _drawMenuItemTextCandidateFunc = /* @__PURE__ */ function() { + function byText(content, g, x, y, width, height, textAttrs) { + const text = g.append("text").attr("x", x).attr("y", y).style("text-anchor", "start").text(content); + _setTextAttrs(text, textAttrs); + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(byText, "byText"); + function byTspan(content, g, x, y, width, height, textAttrs, conf2) { + const { actorFontSize, actorFontFamily, actorFontWeight } = conf2; + const lines = content.split(_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.lineBreakRegex); + for (let i = 0; i < lines.length; i++) { + const dy = i * actorFontSize - actorFontSize * (lines.length - 1) / 2; + const text = g.append("text").attr("x", x).attr("y", y).style("text-anchor", "start").style("font-size", actorFontSize).style("font-weight", actorFontWeight).style("font-family", actorFontFamily); + text.append("tspan").attr("x", x).attr("dy", dy).text(lines[i]); + text.attr("y", y + height / 2).attr("dominant-baseline", "central").attr("alignment-baseline", "central"); + _setTextAttrs(text, textAttrs); + } + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(byTspan, "byTspan"); + function byFo(content, g, x, y, width, height, textAttrs, conf2) { + const s = g.append("switch"); + const f = s.append("foreignObject").attr("x", x).attr("y", y).attr("width", width).attr("height", height); + const text = f.append("xhtml:div").style("display", "table").style("height", "100%").style("width", "100%"); + text.append("div").style("display", "table-cell").style("text-align", "center").style("vertical-align", "middle").text(content); + byTspan(content, s, x, y, width, height, textAttrs, conf2); + _setTextAttrs(text, textAttrs); + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(byFo, "byFo"); + function _setTextAttrs(toText, fromTextAttrsDict) { + for (const key in fromTextAttrsDict) { + if (fromTextAttrsDict.hasOwnProperty(key)) { + toText.attr(key, fromTextAttrsDict[key]); + } + } + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(_setTextAttrs, "_setTextAttrs"); + return function(conf2) { + return conf2.textPlacement === "fo" ? byFo : conf2.textPlacement === "old" ? byText : byTspan; + }; +}(); +var svgDraw_default = { + drawRect: drawRect2, + drawText, + drawLabel, + drawActor, + drawBox, + drawPopup, + anchorElement, + drawActivation, + drawLoop, + drawBackgroundRect: drawBackgroundRect2, + insertArrowHead, + insertArrowFilledHead, + insertSequenceNumber, + insertArrowCrossHead, + insertDatabaseIcon, + insertComputerIcon, + insertClockIcon, + getTextObj: getTextObj2, + getNoteRect: getNoteRect2, + fixLifeLineHeights, + sanitizeUrl: _braintree_sanitize_url__WEBPACK_IMPORTED_MODULE_4__/* .sanitizeUrl */ .J +}; + +// src/diagrams/sequence/sequenceRenderer.ts +var conf = {}; +var bounds = { + data: { + startx: void 0, + stopx: void 0, + starty: void 0, + stopy: void 0 + }, + verticalPos: 0, + sequenceItems: [], + activations: [], + models: { + getHeight: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function() { + return Math.max.apply( + null, + this.actors.length === 0 ? [0] : this.actors.map((actor) => actor.height || 0) + ) + (this.loops.length === 0 ? 0 : this.loops.map((it) => it.height || 0).reduce((acc, h) => acc + h)) + (this.messages.length === 0 ? 0 : this.messages.map((it) => it.height || 0).reduce((acc, h) => acc + h)) + (this.notes.length === 0 ? 0 : this.notes.map((it) => it.height || 0).reduce((acc, h) => acc + h)); + }, "getHeight"), + clear: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function() { + this.actors = []; + this.boxes = []; + this.loops = []; + this.messages = []; + this.notes = []; + }, "clear"), + addBox: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(boxModel) { + this.boxes.push(boxModel); + }, "addBox"), + addActor: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(actorModel) { + this.actors.push(actorModel); + }, "addActor"), + addLoop: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(loopModel) { + this.loops.push(loopModel); + }, "addLoop"), + addMessage: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(msgModel) { + this.messages.push(msgModel); + }, "addMessage"), + addNote: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(noteModel) { + this.notes.push(noteModel); + }, "addNote"), + lastActor: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function() { + return this.actors[this.actors.length - 1]; + }, "lastActor"), + lastLoop: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function() { + return this.loops[this.loops.length - 1]; + }, "lastLoop"), + lastMessage: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function() { + return this.messages[this.messages.length - 1]; + }, "lastMessage"), + lastNote: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function() { + return this.notes[this.notes.length - 1]; + }, "lastNote"), + actors: [], + boxes: [], + loops: [], + messages: [], + notes: [] + }, + init: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function() { + this.sequenceItems = []; + this.activations = []; + this.models.clear(); + this.data = { + startx: void 0, + stopx: void 0, + starty: void 0, + stopy: void 0 + }; + this.verticalPos = 0; + setConf((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)()); + }, "init"), + updateVal: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(obj, key, val, fun) { + if (obj[key] === void 0) { + obj[key] = val; + } else { + obj[key] = fun(val, obj[key]); + } + }, "updateVal"), + updateBounds: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(startx, starty, stopx, stopy) { + const _self = this; + let cnt = 0; + function updateFn(type) { + return /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function updateItemBounds(item) { + cnt++; + const n = _self.sequenceItems.length - cnt + 1; + _self.updateVal(item, "starty", starty - n * conf.boxMargin, Math.min); + _self.updateVal(item, "stopy", stopy + n * conf.boxMargin, Math.max); + _self.updateVal(bounds.data, "startx", startx - n * conf.boxMargin, Math.min); + _self.updateVal(bounds.data, "stopx", stopx + n * conf.boxMargin, Math.max); + if (!(type === "activation")) { + _self.updateVal(item, "startx", startx - n * conf.boxMargin, Math.min); + _self.updateVal(item, "stopx", stopx + n * conf.boxMargin, Math.max); + _self.updateVal(bounds.data, "starty", starty - n * conf.boxMargin, Math.min); + _self.updateVal(bounds.data, "stopy", stopy + n * conf.boxMargin, Math.max); + } + }, "updateItemBounds"); + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(updateFn, "updateFn"); + this.sequenceItems.forEach(updateFn()); + this.activations.forEach(updateFn("activation")); + }, "updateBounds"), + insert: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(startx, starty, stopx, stopy) { + const _startx = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMin(startx, stopx); + const _stopx = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMax(startx, stopx); + const _starty = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMin(starty, stopy); + const _stopy = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMax(starty, stopy); + this.updateVal(bounds.data, "startx", _startx, Math.min); + this.updateVal(bounds.data, "starty", _starty, Math.min); + this.updateVal(bounds.data, "stopx", _stopx, Math.max); + this.updateVal(bounds.data, "stopy", _stopy, Math.max); + this.updateBounds(_startx, _starty, _stopx, _stopy); + }, "insert"), + newActivation: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(message, diagram2, actors) { + const actorRect = actors.get(message.from); + const stackedSize = actorActivations(message.from).length || 0; + const x = actorRect.x + actorRect.width / 2 + (stackedSize - 1) * conf.activationWidth / 2; + this.activations.push({ + startx: x, + starty: this.verticalPos + 2, + stopx: x + conf.activationWidth, + stopy: void 0, + actor: message.from, + anchored: svgDraw_default.anchorElement(diagram2) + }); + }, "newActivation"), + endActivation: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(message) { + const lastActorActivationIdx = this.activations.map(function(activation) { + return activation.actor; + }).lastIndexOf(message.from); + return this.activations.splice(lastActorActivationIdx, 1)[0]; + }, "endActivation"), + createLoop: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(title = { message: void 0, wrap: false, width: void 0 }, fill) { + return { + startx: void 0, + starty: this.verticalPos, + stopx: void 0, + stopy: void 0, + title: title.message, + wrap: title.wrap, + width: title.width, + height: 0, + fill + }; + }, "createLoop"), + newLoop: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(title = { message: void 0, wrap: false, width: void 0 }, fill) { + this.sequenceItems.push(this.createLoop(title, fill)); + }, "newLoop"), + endLoop: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function() { + return this.sequenceItems.pop(); + }, "endLoop"), + isLoopOverlap: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function() { + return this.sequenceItems.length ? this.sequenceItems[this.sequenceItems.length - 1].overlap : false; + }, "isLoopOverlap"), + addSectionToLoop: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(message) { + const loop = this.sequenceItems.pop(); + loop.sections = loop.sections || []; + loop.sectionTitles = loop.sectionTitles || []; + loop.sections.push({ y: bounds.getVerticalPos(), height: 0 }); + loop.sectionTitles.push(message); + this.sequenceItems.push(loop); + }, "addSectionToLoop"), + saveVerticalPos: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function() { + if (this.isLoopOverlap()) { + this.savedVerticalPos = this.verticalPos; + } + }, "saveVerticalPos"), + resetVerticalPos: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function() { + if (this.isLoopOverlap()) { + this.verticalPos = this.savedVerticalPos; + } + }, "resetVerticalPos"), + bumpVerticalPos: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(bump) { + this.verticalPos = this.verticalPos + bump; + this.data.stopy = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMax(this.data.stopy, this.verticalPos); + }, "bumpVerticalPos"), + getVerticalPos: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function() { + return this.verticalPos; + }, "getVerticalPos"), + getBounds: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function() { + return { bounds: this.data, models: this.models }; + }, "getBounds") +}; +var drawNote = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async function(elem, noteModel) { + bounds.bumpVerticalPos(conf.boxMargin); + noteModel.height = conf.boxMargin; + noteModel.starty = bounds.getVerticalPos(); + const rect = (0,_chunk_AIUMCIBP_mjs__WEBPACK_IMPORTED_MODULE_0__/* .getNoteRect */ .PB)(); + rect.x = noteModel.startx; + rect.y = noteModel.starty; + rect.width = noteModel.width || conf.width; + rect.class = "note"; + const g = elem.append("g"); + const rectElem = svgDraw_default.drawRect(g, rect); + const textObj = (0,_chunk_AIUMCIBP_mjs__WEBPACK_IMPORTED_MODULE_0__/* .getTextObj */ .HT)(); + textObj.x = noteModel.startx; + textObj.y = noteModel.starty; + textObj.width = rect.width; + textObj.dy = "1em"; + textObj.text = noteModel.message; + textObj.class = "noteText"; + textObj.fontFamily = conf.noteFontFamily; + textObj.fontSize = conf.noteFontSize; + textObj.fontWeight = conf.noteFontWeight; + textObj.anchor = conf.noteAlign; + textObj.textMargin = conf.noteMargin; + textObj.valign = "center"; + const textElem = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .hasKatex */ .Wi)(textObj.text) ? await drawKatex(g, textObj) : drawText(g, textObj); + const textHeight = Math.round( + textElem.map((te) => (te._groups || te)[0][0].getBBox().height).reduce((acc, curr) => acc + curr) + ); + rectElem.attr("height", textHeight + 2 * conf.noteMargin); + noteModel.height += textHeight + 2 * conf.noteMargin; + bounds.bumpVerticalPos(textHeight + 2 * conf.noteMargin); + noteModel.stopy = noteModel.starty + textHeight + 2 * conf.noteMargin; + noteModel.stopx = noteModel.startx + rect.width; + bounds.insert(noteModel.startx, noteModel.starty, noteModel.stopx, noteModel.stopy); + bounds.models.addNote(noteModel); +}, "drawNote"); +var messageFont = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((cnf) => { + return { + fontFamily: cnf.messageFontFamily, + fontSize: cnf.messageFontSize, + fontWeight: cnf.messageFontWeight + }; +}, "messageFont"); +var noteFont = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((cnf) => { + return { + fontFamily: cnf.noteFontFamily, + fontSize: cnf.noteFontSize, + fontWeight: cnf.noteFontWeight + }; +}, "noteFont"); +var actorFont = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((cnf) => { + return { + fontFamily: cnf.actorFontFamily, + fontSize: cnf.actorFontSize, + fontWeight: cnf.actorFontWeight + }; +}, "actorFont"); +async function boundMessage(_diagram, msgModel) { + bounds.bumpVerticalPos(10); + const { startx, stopx, message } = msgModel; + const lines = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.splitBreaks(message).length; + const isKatexMsg = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .hasKatex */ .Wi)(message); + const textDims = isKatexMsg ? await (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .calculateMathMLDimensions */ .Dl)(message, (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)()) : _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_1__/* .utils_default */ ._K.calculateTextDimensions(message, messageFont(conf)); + if (!isKatexMsg) { + const lineHeight = textDims.height / lines; + msgModel.height += lineHeight; + bounds.bumpVerticalPos(lineHeight); + } + let lineStartY; + let totalOffset = textDims.height - 10; + const textWidth = textDims.width; + if (startx === stopx) { + lineStartY = bounds.getVerticalPos() + totalOffset; + if (!conf.rightAngles) { + totalOffset += conf.boxMargin; + lineStartY = bounds.getVerticalPos() + totalOffset; + } + totalOffset += 30; + const dx = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMax(textWidth / 2, conf.width / 2); + bounds.insert( + startx - dx, + bounds.getVerticalPos() - 10 + totalOffset, + stopx + dx, + bounds.getVerticalPos() + 30 + totalOffset + ); + } else { + totalOffset += conf.boxMargin; + lineStartY = bounds.getVerticalPos() + totalOffset; + bounds.insert(startx, lineStartY - 10, stopx, lineStartY); + } + bounds.bumpVerticalPos(totalOffset); + msgModel.height += totalOffset; + msgModel.stopy = msgModel.starty + msgModel.height; + bounds.insert(msgModel.fromBounds, msgModel.starty, msgModel.toBounds, msgModel.stopy); + return lineStartY; +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(boundMessage, "boundMessage"); +var drawMessage = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async function(diagram2, msgModel, lineStartY, diagObj) { + const { startx, stopx, starty, message, type, sequenceIndex, sequenceVisible } = msgModel; + const textDims = _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_1__/* .utils_default */ ._K.calculateTextDimensions(message, messageFont(conf)); + const textObj = (0,_chunk_AIUMCIBP_mjs__WEBPACK_IMPORTED_MODULE_0__/* .getTextObj */ .HT)(); + textObj.x = startx; + textObj.y = starty + 10; + textObj.width = stopx - startx; + textObj.class = "messageText"; + textObj.dy = "1em"; + textObj.text = message; + textObj.fontFamily = conf.messageFontFamily; + textObj.fontSize = conf.messageFontSize; + textObj.fontWeight = conf.messageFontWeight; + textObj.anchor = conf.messageAlign; + textObj.valign = "center"; + textObj.textMargin = conf.wrapPadding; + textObj.tspan = false; + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .hasKatex */ .Wi)(textObj.text)) { + await drawKatex(diagram2, textObj, { startx, stopx, starty: lineStartY }); + } else { + drawText(diagram2, textObj); + } + const textWidth = textDims.width; + let line; + if (startx === stopx) { + if (conf.rightAngles) { + line = diagram2.append("path").attr( + "d", + `M ${startx},${lineStartY} H ${startx + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMax(conf.width / 2, textWidth / 2)} V ${lineStartY + 25} H ${startx}` + ); + } else { + line = diagram2.append("path").attr( + "d", + "M " + startx + "," + lineStartY + " C " + (startx + 60) + "," + (lineStartY - 10) + " " + (startx + 60) + "," + (lineStartY + 30) + " " + startx + "," + (lineStartY + 20) + ); + } + } else { + line = diagram2.append("line"); + line.attr("x1", startx); + line.attr("y1", lineStartY); + line.attr("x2", stopx); + line.attr("y2", lineStartY); + } + if (type === diagObj.db.LINETYPE.DOTTED || type === diagObj.db.LINETYPE.DOTTED_CROSS || type === diagObj.db.LINETYPE.DOTTED_POINT || type === diagObj.db.LINETYPE.DOTTED_OPEN || type === diagObj.db.LINETYPE.BIDIRECTIONAL_DOTTED) { + line.style("stroke-dasharray", "3, 3"); + line.attr("class", "messageLine1"); + } else { + line.attr("class", "messageLine0"); + } + let url = ""; + if (conf.arrowMarkerAbsolute) { + url = window.location.protocol + "//" + window.location.host + window.location.pathname + window.location.search; + url = url.replace(/\(/g, "\\("); + url = url.replace(/\)/g, "\\)"); + } + line.attr("stroke-width", 2); + line.attr("stroke", "none"); + line.style("fill", "none"); + if (type === diagObj.db.LINETYPE.SOLID || type === diagObj.db.LINETYPE.DOTTED) { + line.attr("marker-end", "url(" + url + "#arrowhead)"); + } + if (type === diagObj.db.LINETYPE.BIDIRECTIONAL_SOLID || type === diagObj.db.LINETYPE.BIDIRECTIONAL_DOTTED) { + line.attr("marker-start", "url(" + url + "#arrowhead)"); + line.attr("marker-end", "url(" + url + "#arrowhead)"); + } + if (type === diagObj.db.LINETYPE.SOLID_POINT || type === diagObj.db.LINETYPE.DOTTED_POINT) { + line.attr("marker-end", "url(" + url + "#filled-head)"); + } + if (type === diagObj.db.LINETYPE.SOLID_CROSS || type === diagObj.db.LINETYPE.DOTTED_CROSS) { + line.attr("marker-end", "url(" + url + "#crosshead)"); + } + if (sequenceVisible || conf.showSequenceNumbers) { + line.attr("marker-start", "url(" + url + "#sequencenumber)"); + diagram2.append("text").attr("x", startx).attr("y", lineStartY + 4).attr("font-family", "sans-serif").attr("font-size", "12px").attr("text-anchor", "middle").attr("class", "sequenceNumber").text(sequenceIndex); + } +}, "drawMessage"); +var addActorRenderingData = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(diagram2, actors, createdActors, actorKeys, verticalPos, messages, isFooter) { + let prevWidth = 0; + let prevMargin = 0; + let prevBox = void 0; + let maxHeight = 0; + for (const actorKey of actorKeys) { + const actor = actors.get(actorKey); + const box = actor.box; + if (prevBox && prevBox != box) { + if (!isFooter) { + bounds.models.addBox(prevBox); + } + prevMargin += conf.boxMargin + prevBox.margin; + } + if (box && box != prevBox) { + if (!isFooter) { + box.x = prevWidth + prevMargin; + box.y = verticalPos; + } + prevMargin += box.margin; + } + actor.width = actor.width || conf.width; + actor.height = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMax(actor.height || conf.height, conf.height); + actor.margin = actor.margin || conf.actorMargin; + maxHeight = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMax(maxHeight, actor.height); + if (createdActors.get(actor.name)) { + prevMargin += actor.width / 2; + } + actor.x = prevWidth + prevMargin; + actor.starty = bounds.getVerticalPos(); + bounds.insert(actor.x, verticalPos, actor.x + actor.width, actor.height); + prevWidth += actor.width + prevMargin; + if (actor.box) { + actor.box.width = prevWidth + box.margin - actor.box.x; + } + prevMargin = actor.margin; + prevBox = actor.box; + bounds.models.addActor(actor); + } + if (prevBox && !isFooter) { + bounds.models.addBox(prevBox); + } + bounds.bumpVerticalPos(maxHeight); +}, "addActorRenderingData"); +var drawActors = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async function(diagram2, actors, actorKeys, isFooter) { + if (!isFooter) { + for (const actorKey of actorKeys) { + const actor = actors.get(actorKey); + await svgDraw_default.drawActor(diagram2, actor, conf, false); + } + } else { + let maxHeight = 0; + bounds.bumpVerticalPos(conf.boxMargin * 2); + for (const actorKey of actorKeys) { + const actor = actors.get(actorKey); + if (!actor.stopy) { + actor.stopy = bounds.getVerticalPos(); + } + const height = await svgDraw_default.drawActor(diagram2, actor, conf, true); + maxHeight = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMax(maxHeight, height); + } + bounds.bumpVerticalPos(maxHeight + conf.boxMargin); + } +}, "drawActors"); +var drawActorsPopup = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(diagram2, actors, actorKeys, doc) { + let maxHeight = 0; + let maxWidth = 0; + for (const actorKey of actorKeys) { + const actor = actors.get(actorKey); + const minMenuWidth = getRequiredPopupWidth(actor); + const menuDimensions = svgDraw_default.drawPopup( + diagram2, + actor, + minMenuWidth, + conf, + conf.forceMenus, + doc + ); + if (menuDimensions.height > maxHeight) { + maxHeight = menuDimensions.height; + } + if (menuDimensions.width + actor.x > maxWidth) { + maxWidth = menuDimensions.width + actor.x; + } + } + return { maxHeight, maxWidth }; +}, "drawActorsPopup"); +var setConf = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(cnf) { + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .assignWithDepth_default */ .hH)(conf, cnf); + if (cnf.fontFamily) { + conf.actorFontFamily = conf.noteFontFamily = conf.messageFontFamily = cnf.fontFamily; + } + if (cnf.fontSize) { + conf.actorFontSize = conf.noteFontSize = conf.messageFontSize = cnf.fontSize; + } + if (cnf.fontWeight) { + conf.actorFontWeight = conf.noteFontWeight = conf.messageFontWeight = cnf.fontWeight; + } +}, "setConf"); +var actorActivations = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(actor) { + return bounds.activations.filter(function(activation) { + return activation.actor === actor; + }); +}, "actorActivations"); +var activationBounds = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(actor, actors) { + const actorObj = actors.get(actor); + const activations = actorActivations(actor); + const left = activations.reduce( + function(acc, activation) { + return _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMin(acc, activation.startx); + }, + actorObj.x + actorObj.width / 2 - 1 + ); + const right = activations.reduce( + function(acc, activation) { + return _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMax(acc, activation.stopx); + }, + actorObj.x + actorObj.width / 2 + 1 + ); + return [left, right]; +}, "activationBounds"); +function adjustLoopHeightForWrap(loopWidths, msg, preMargin, postMargin, addLoopFn) { + bounds.bumpVerticalPos(preMargin); + let heightAdjust = postMargin; + if (msg.id && msg.message && loopWidths[msg.id]) { + const loopWidth = loopWidths[msg.id].width; + const textConf = messageFont(conf); + msg.message = _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_1__/* .utils_default */ ._K.wrapLabel(`[${msg.message}]`, loopWidth - 2 * conf.wrapPadding, textConf); + msg.width = loopWidth; + msg.wrap = true; + const textDims = _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_1__/* .utils_default */ ._K.calculateTextDimensions(msg.message, textConf); + const totalOffset = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMax(textDims.height, conf.labelBoxHeight); + heightAdjust = postMargin + totalOffset; + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.debug(`${totalOffset} - ${msg.message}`); + } + addLoopFn(msg); + bounds.bumpVerticalPos(heightAdjust); +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(adjustLoopHeightForWrap, "adjustLoopHeightForWrap"); +function adjustCreatedDestroyedData(msg, msgModel, lineStartY, index, actors, createdActors, destroyedActors) { + function receiverAdjustment(actor, adjustment) { + if (actor.x < actors.get(msg.from).x) { + bounds.insert( + msgModel.stopx - adjustment, + msgModel.starty, + msgModel.startx, + msgModel.stopy + actor.height / 2 + conf.noteMargin + ); + msgModel.stopx = msgModel.stopx + adjustment; + } else { + bounds.insert( + msgModel.startx, + msgModel.starty, + msgModel.stopx + adjustment, + msgModel.stopy + actor.height / 2 + conf.noteMargin + ); + msgModel.stopx = msgModel.stopx - adjustment; + } + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(receiverAdjustment, "receiverAdjustment"); + function senderAdjustment(actor, adjustment) { + if (actor.x < actors.get(msg.to).x) { + bounds.insert( + msgModel.startx - adjustment, + msgModel.starty, + msgModel.stopx, + msgModel.stopy + actor.height / 2 + conf.noteMargin + ); + msgModel.startx = msgModel.startx + adjustment; + } else { + bounds.insert( + msgModel.stopx, + msgModel.starty, + msgModel.startx + adjustment, + msgModel.stopy + actor.height / 2 + conf.noteMargin + ); + msgModel.startx = msgModel.startx - adjustment; + } + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(senderAdjustment, "senderAdjustment"); + if (createdActors.get(msg.to) == index) { + const actor = actors.get(msg.to); + const adjustment = actor.type == "actor" ? ACTOR_TYPE_WIDTH / 2 + 3 : actor.width / 2 + 3; + receiverAdjustment(actor, adjustment); + actor.starty = lineStartY - actor.height / 2; + bounds.bumpVerticalPos(actor.height / 2); + } else if (destroyedActors.get(msg.from) == index) { + const actor = actors.get(msg.from); + if (conf.mirrorActors) { + const adjustment = actor.type == "actor" ? ACTOR_TYPE_WIDTH / 2 : actor.width / 2; + senderAdjustment(actor, adjustment); + } + actor.stopy = lineStartY - actor.height / 2; + bounds.bumpVerticalPos(actor.height / 2); + } else if (destroyedActors.get(msg.to) == index) { + const actor = actors.get(msg.to); + if (conf.mirrorActors) { + const adjustment = actor.type == "actor" ? ACTOR_TYPE_WIDTH / 2 + 3 : actor.width / 2 + 3; + receiverAdjustment(actor, adjustment); + } + actor.stopy = lineStartY - actor.height / 2; + bounds.bumpVerticalPos(actor.height / 2); + } +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(adjustCreatedDestroyedData, "adjustCreatedDestroyedData"); +var draw = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async function(_text, id, _version, diagObj) { + const { securityLevel, sequence } = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)(); + conf = sequence; + let sandboxElement; + if (securityLevel === "sandbox") { + sandboxElement = (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)("#i" + id); + } + const root = securityLevel === "sandbox" ? (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(sandboxElement.nodes()[0].contentDocument.body) : (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)("body"); + const doc = securityLevel === "sandbox" ? sandboxElement.nodes()[0].contentDocument : document; + bounds.init(); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.debug(diagObj.db); + const diagram2 = securityLevel === "sandbox" ? root.select(`[id="${id}"]`) : (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(`[id="${id}"]`); + const actors = diagObj.db.getActors(); + const createdActors = diagObj.db.getCreatedActors(); + const destroyedActors = diagObj.db.getDestroyedActors(); + const boxes = diagObj.db.getBoxes(); + let actorKeys = diagObj.db.getActorKeys(); + const messages = diagObj.db.getMessages(); + const title = diagObj.db.getDiagramTitle(); + const hasBoxes = diagObj.db.hasAtLeastOneBox(); + const hasBoxTitles = diagObj.db.hasAtLeastOneBoxWithTitle(); + const maxMessageWidthPerActor = await getMaxMessageWidthPerActor(actors, messages, diagObj); + conf.height = await calculateActorMargins(actors, maxMessageWidthPerActor, boxes); + svgDraw_default.insertComputerIcon(diagram2); + svgDraw_default.insertDatabaseIcon(diagram2); + svgDraw_default.insertClockIcon(diagram2); + if (hasBoxes) { + bounds.bumpVerticalPos(conf.boxMargin); + if (hasBoxTitles) { + bounds.bumpVerticalPos(boxes[0].textMaxHeight); + } + } + if (conf.hideUnusedParticipants === true) { + const newActors = /* @__PURE__ */ new Set(); + messages.forEach((message) => { + newActors.add(message.from); + newActors.add(message.to); + }); + actorKeys = actorKeys.filter((actorKey) => newActors.has(actorKey)); + } + addActorRenderingData(diagram2, actors, createdActors, actorKeys, 0, messages, false); + const loopWidths = await calculateLoopBounds(messages, actors, maxMessageWidthPerActor, diagObj); + svgDraw_default.insertArrowHead(diagram2); + svgDraw_default.insertArrowCrossHead(diagram2); + svgDraw_default.insertArrowFilledHead(diagram2); + svgDraw_default.insertSequenceNumber(diagram2); + function activeEnd(msg, verticalPos) { + const activationData = bounds.endActivation(msg); + if (activationData.starty + 18 > verticalPos) { + activationData.starty = verticalPos - 6; + verticalPos += 12; + } + svgDraw_default.drawActivation( + diagram2, + activationData, + verticalPos, + conf, + actorActivations(msg.from).length + ); + bounds.insert(activationData.startx, verticalPos - 10, activationData.stopx, verticalPos); + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(activeEnd, "activeEnd"); + let sequenceIndex = 1; + let sequenceIndexStep = 1; + const messagesToDraw = []; + const backgrounds = []; + let index = 0; + for (const msg of messages) { + let loopModel, noteModel, msgModel; + switch (msg.type) { + case diagObj.db.LINETYPE.NOTE: + bounds.resetVerticalPos(); + noteModel = msg.noteModel; + await drawNote(diagram2, noteModel); + break; + case diagObj.db.LINETYPE.ACTIVE_START: + bounds.newActivation(msg, diagram2, actors); + break; + case diagObj.db.LINETYPE.ACTIVE_END: + activeEnd(msg, bounds.getVerticalPos()); + break; + case diagObj.db.LINETYPE.LOOP_START: + adjustLoopHeightForWrap( + loopWidths, + msg, + conf.boxMargin, + conf.boxMargin + conf.boxTextMargin, + (message) => bounds.newLoop(message) + ); + break; + case diagObj.db.LINETYPE.LOOP_END: + loopModel = bounds.endLoop(); + await svgDraw_default.drawLoop(diagram2, loopModel, "loop", conf); + bounds.bumpVerticalPos(loopModel.stopy - bounds.getVerticalPos()); + bounds.models.addLoop(loopModel); + break; + case diagObj.db.LINETYPE.RECT_START: + adjustLoopHeightForWrap( + loopWidths, + msg, + conf.boxMargin, + conf.boxMargin, + (message) => bounds.newLoop(void 0, message.message) + ); + break; + case diagObj.db.LINETYPE.RECT_END: + loopModel = bounds.endLoop(); + backgrounds.push(loopModel); + bounds.models.addLoop(loopModel); + bounds.bumpVerticalPos(loopModel.stopy - bounds.getVerticalPos()); + break; + case diagObj.db.LINETYPE.OPT_START: + adjustLoopHeightForWrap( + loopWidths, + msg, + conf.boxMargin, + conf.boxMargin + conf.boxTextMargin, + (message) => bounds.newLoop(message) + ); + break; + case diagObj.db.LINETYPE.OPT_END: + loopModel = bounds.endLoop(); + await svgDraw_default.drawLoop(diagram2, loopModel, "opt", conf); + bounds.bumpVerticalPos(loopModel.stopy - bounds.getVerticalPos()); + bounds.models.addLoop(loopModel); + break; + case diagObj.db.LINETYPE.ALT_START: + adjustLoopHeightForWrap( + loopWidths, + msg, + conf.boxMargin, + conf.boxMargin + conf.boxTextMargin, + (message) => bounds.newLoop(message) + ); + break; + case diagObj.db.LINETYPE.ALT_ELSE: + adjustLoopHeightForWrap( + loopWidths, + msg, + conf.boxMargin + conf.boxTextMargin, + conf.boxMargin, + (message) => bounds.addSectionToLoop(message) + ); + break; + case diagObj.db.LINETYPE.ALT_END: + loopModel = bounds.endLoop(); + await svgDraw_default.drawLoop(diagram2, loopModel, "alt", conf); + bounds.bumpVerticalPos(loopModel.stopy - bounds.getVerticalPos()); + bounds.models.addLoop(loopModel); + break; + case diagObj.db.LINETYPE.PAR_START: + case diagObj.db.LINETYPE.PAR_OVER_START: + adjustLoopHeightForWrap( + loopWidths, + msg, + conf.boxMargin, + conf.boxMargin + conf.boxTextMargin, + (message) => bounds.newLoop(message) + ); + bounds.saveVerticalPos(); + break; + case diagObj.db.LINETYPE.PAR_AND: + adjustLoopHeightForWrap( + loopWidths, + msg, + conf.boxMargin + conf.boxTextMargin, + conf.boxMargin, + (message) => bounds.addSectionToLoop(message) + ); + break; + case diagObj.db.LINETYPE.PAR_END: + loopModel = bounds.endLoop(); + await svgDraw_default.drawLoop(diagram2, loopModel, "par", conf); + bounds.bumpVerticalPos(loopModel.stopy - bounds.getVerticalPos()); + bounds.models.addLoop(loopModel); + break; + case diagObj.db.LINETYPE.AUTONUMBER: + sequenceIndex = msg.message.start || sequenceIndex; + sequenceIndexStep = msg.message.step || sequenceIndexStep; + if (msg.message.visible) { + diagObj.db.enableSequenceNumbers(); + } else { + diagObj.db.disableSequenceNumbers(); + } + break; + case diagObj.db.LINETYPE.CRITICAL_START: + adjustLoopHeightForWrap( + loopWidths, + msg, + conf.boxMargin, + conf.boxMargin + conf.boxTextMargin, + (message) => bounds.newLoop(message) + ); + break; + case diagObj.db.LINETYPE.CRITICAL_OPTION: + adjustLoopHeightForWrap( + loopWidths, + msg, + conf.boxMargin + conf.boxTextMargin, + conf.boxMargin, + (message) => bounds.addSectionToLoop(message) + ); + break; + case diagObj.db.LINETYPE.CRITICAL_END: + loopModel = bounds.endLoop(); + await svgDraw_default.drawLoop(diagram2, loopModel, "critical", conf); + bounds.bumpVerticalPos(loopModel.stopy - bounds.getVerticalPos()); + bounds.models.addLoop(loopModel); + break; + case diagObj.db.LINETYPE.BREAK_START: + adjustLoopHeightForWrap( + loopWidths, + msg, + conf.boxMargin, + conf.boxMargin + conf.boxTextMargin, + (message) => bounds.newLoop(message) + ); + break; + case diagObj.db.LINETYPE.BREAK_END: + loopModel = bounds.endLoop(); + await svgDraw_default.drawLoop(diagram2, loopModel, "break", conf); + bounds.bumpVerticalPos(loopModel.stopy - bounds.getVerticalPos()); + bounds.models.addLoop(loopModel); + break; + default: + try { + msgModel = msg.msgModel; + msgModel.starty = bounds.getVerticalPos(); + msgModel.sequenceIndex = sequenceIndex; + msgModel.sequenceVisible = diagObj.db.showSequenceNumbers(); + const lineStartY = await boundMessage(diagram2, msgModel); + adjustCreatedDestroyedData( + msg, + msgModel, + lineStartY, + index, + actors, + createdActors, + destroyedActors + ); + messagesToDraw.push({ messageModel: msgModel, lineStartY }); + bounds.models.addMessage(msgModel); + } catch (e) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.error("error while drawing message", e); + } + } + if ([ + diagObj.db.LINETYPE.SOLID_OPEN, + diagObj.db.LINETYPE.DOTTED_OPEN, + diagObj.db.LINETYPE.SOLID, + diagObj.db.LINETYPE.DOTTED, + diagObj.db.LINETYPE.SOLID_CROSS, + diagObj.db.LINETYPE.DOTTED_CROSS, + diagObj.db.LINETYPE.SOLID_POINT, + diagObj.db.LINETYPE.DOTTED_POINT, + diagObj.db.LINETYPE.BIDIRECTIONAL_SOLID, + diagObj.db.LINETYPE.BIDIRECTIONAL_DOTTED + ].includes(msg.type)) { + sequenceIndex = sequenceIndex + sequenceIndexStep; + } + index++; + } + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.debug("createdActors", createdActors); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.debug("destroyedActors", destroyedActors); + await drawActors(diagram2, actors, actorKeys, false); + for (const e of messagesToDraw) { + await drawMessage(diagram2, e.messageModel, e.lineStartY, diagObj); + } + if (conf.mirrorActors) { + await drawActors(diagram2, actors, actorKeys, true); + } + backgrounds.forEach((e) => svgDraw_default.drawBackgroundRect(diagram2, e)); + fixLifeLineHeights(diagram2, actors, actorKeys, conf); + for (const box2 of bounds.models.boxes) { + box2.height = bounds.getVerticalPos() - box2.y; + bounds.insert(box2.x, box2.y, box2.x + box2.width, box2.height); + box2.startx = box2.x; + box2.starty = box2.y; + box2.stopx = box2.startx + box2.width; + box2.stopy = box2.starty + box2.height; + box2.stroke = "rgb(0,0,0, 0.5)"; + svgDraw_default.drawBox(diagram2, box2, conf); + } + if (hasBoxes) { + bounds.bumpVerticalPos(conf.boxMargin); + } + const requiredBoxSize = drawActorsPopup(diagram2, actors, actorKeys, doc); + const { bounds: box } = bounds.getBounds(); + if (box.startx === void 0) { + box.startx = 0; + } + if (box.starty === void 0) { + box.starty = 0; + } + if (box.stopx === void 0) { + box.stopx = 0; + } + if (box.stopy === void 0) { + box.stopy = 0; + } + let boxHeight = box.stopy - box.starty; + if (boxHeight < requiredBoxSize.maxHeight) { + boxHeight = requiredBoxSize.maxHeight; + } + let height = boxHeight + 2 * conf.diagramMarginY; + if (conf.mirrorActors) { + height = height - conf.boxMargin + conf.bottomMarginAdj; + } + let boxWidth = box.stopx - box.startx; + if (boxWidth < requiredBoxSize.maxWidth) { + boxWidth = requiredBoxSize.maxWidth; + } + const width = boxWidth + 2 * conf.diagramMarginX; + if (title) { + diagram2.append("text").text(title).attr("x", (box.stopx - box.startx) / 2 - 2 * conf.diagramMarginX).attr("y", -25); + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .configureSvgSize */ .a$)(diagram2, height, width, conf.useMaxWidth); + const extraVertForTitle = title ? 40 : 0; + diagram2.attr( + "viewBox", + box.startx - conf.diagramMarginX + " -" + (conf.diagramMarginY + extraVertForTitle) + " " + width + " " + (height + extraVertForTitle) + ); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.debug(`models:`, bounds.models); +}, "draw"); +async function getMaxMessageWidthPerActor(actors, messages, diagObj) { + const maxMessageWidthPerActor = {}; + for (const msg of messages) { + if (actors.get(msg.to) && actors.get(msg.from)) { + const actor = actors.get(msg.to); + if (msg.placement === diagObj.db.PLACEMENT.LEFTOF && !actor.prevActor) { + continue; + } + if (msg.placement === diagObj.db.PLACEMENT.RIGHTOF && !actor.nextActor) { + continue; + } + const isNote = msg.placement !== void 0; + const isMessage = !isNote; + const textFont = isNote ? noteFont(conf) : messageFont(conf); + const wrappedMessage = msg.wrap ? _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_1__/* .utils_default */ ._K.wrapLabel(msg.message, conf.width - 2 * conf.wrapPadding, textFont) : msg.message; + const messageDimensions = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .hasKatex */ .Wi)(wrappedMessage) ? await (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .calculateMathMLDimensions */ .Dl)(msg.message, (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)()) : _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_1__/* .utils_default */ ._K.calculateTextDimensions(wrappedMessage, textFont); + const messageWidth = messageDimensions.width + 2 * conf.wrapPadding; + if (isMessage && msg.from === actor.nextActor) { + maxMessageWidthPerActor[msg.to] = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMax( + maxMessageWidthPerActor[msg.to] || 0, + messageWidth + ); + } else if (isMessage && msg.from === actor.prevActor) { + maxMessageWidthPerActor[msg.from] = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMax( + maxMessageWidthPerActor[msg.from] || 0, + messageWidth + ); + } else if (isMessage && msg.from === msg.to) { + maxMessageWidthPerActor[msg.from] = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMax( + maxMessageWidthPerActor[msg.from] || 0, + messageWidth / 2 + ); + maxMessageWidthPerActor[msg.to] = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMax( + maxMessageWidthPerActor[msg.to] || 0, + messageWidth / 2 + ); + } else if (msg.placement === diagObj.db.PLACEMENT.RIGHTOF) { + maxMessageWidthPerActor[msg.from] = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMax( + maxMessageWidthPerActor[msg.from] || 0, + messageWidth + ); + } else if (msg.placement === diagObj.db.PLACEMENT.LEFTOF) { + maxMessageWidthPerActor[actor.prevActor] = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMax( + maxMessageWidthPerActor[actor.prevActor] || 0, + messageWidth + ); + } else if (msg.placement === diagObj.db.PLACEMENT.OVER) { + if (actor.prevActor) { + maxMessageWidthPerActor[actor.prevActor] = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMax( + maxMessageWidthPerActor[actor.prevActor] || 0, + messageWidth / 2 + ); + } + if (actor.nextActor) { + maxMessageWidthPerActor[msg.from] = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMax( + maxMessageWidthPerActor[msg.from] || 0, + messageWidth / 2 + ); + } + } + } + } + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.debug("maxMessageWidthPerActor:", maxMessageWidthPerActor); + return maxMessageWidthPerActor; +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(getMaxMessageWidthPerActor, "getMaxMessageWidthPerActor"); +var getRequiredPopupWidth = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(actor) { + let requiredPopupWidth = 0; + const textFont = actorFont(conf); + for (const key in actor.links) { + const labelDimensions = _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_1__/* .utils_default */ ._K.calculateTextDimensions(key, textFont); + const labelWidth = labelDimensions.width + 2 * conf.wrapPadding + 2 * conf.boxMargin; + if (requiredPopupWidth < labelWidth) { + requiredPopupWidth = labelWidth; + } + } + return requiredPopupWidth; +}, "getRequiredPopupWidth"); +async function calculateActorMargins(actors, actorToMessageWidth, boxes) { + let maxHeight = 0; + for (const prop of actors.keys()) { + const actor = actors.get(prop); + if (actor.wrap) { + actor.description = _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_1__/* .utils_default */ ._K.wrapLabel( + actor.description, + conf.width - 2 * conf.wrapPadding, + actorFont(conf) + ); + } + const actDims = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .hasKatex */ .Wi)(actor.description) ? await (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .calculateMathMLDimensions */ .Dl)(actor.description, (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)()) : _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_1__/* .utils_default */ ._K.calculateTextDimensions(actor.description, actorFont(conf)); + actor.width = actor.wrap ? conf.width : _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMax(conf.width, actDims.width + 2 * conf.wrapPadding); + actor.height = actor.wrap ? _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMax(actDims.height, conf.height) : conf.height; + maxHeight = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMax(maxHeight, actor.height); + } + for (const actorKey in actorToMessageWidth) { + const actor = actors.get(actorKey); + if (!actor) { + continue; + } + const nextActor = actors.get(actor.nextActor); + if (!nextActor) { + const messageWidth2 = actorToMessageWidth[actorKey]; + const actorWidth2 = messageWidth2 + conf.actorMargin - actor.width / 2; + actor.margin = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMax(actorWidth2, conf.actorMargin); + continue; + } + const messageWidth = actorToMessageWidth[actorKey]; + const actorWidth = messageWidth + conf.actorMargin - actor.width / 2 - nextActor.width / 2; + actor.margin = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMax(actorWidth, conf.actorMargin); + } + let maxBoxHeight = 0; + boxes.forEach((box) => { + const textFont = messageFont(conf); + let totalWidth = box.actorKeys.reduce((total, aKey) => { + return total += actors.get(aKey).width + (actors.get(aKey).margin || 0); + }, 0); + totalWidth -= 2 * conf.boxTextMargin; + if (box.wrap) { + box.name = _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_1__/* .utils_default */ ._K.wrapLabel(box.name, totalWidth - 2 * conf.wrapPadding, textFont); + } + const boxMsgDimensions = _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_1__/* .utils_default */ ._K.calculateTextDimensions(box.name, textFont); + maxBoxHeight = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMax(boxMsgDimensions.height, maxBoxHeight); + const minWidth = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMax(totalWidth, boxMsgDimensions.width + 2 * conf.wrapPadding); + box.margin = conf.boxTextMargin; + if (totalWidth < minWidth) { + const missing = (minWidth - totalWidth) / 2; + box.margin += missing; + } + }); + boxes.forEach((box) => box.textMaxHeight = maxBoxHeight); + return _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMax(maxHeight, conf.height); +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(calculateActorMargins, "calculateActorMargins"); +var buildNoteModel = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async function(msg, actors, diagObj) { + const fromActor = actors.get(msg.from); + const toActor = actors.get(msg.to); + const startx = fromActor.x; + const stopx = toActor.x; + const shouldWrap = msg.wrap && msg.message; + let textDimensions = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .hasKatex */ .Wi)(msg.message) ? await (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .calculateMathMLDimensions */ .Dl)(msg.message, (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)()) : _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_1__/* .utils_default */ ._K.calculateTextDimensions( + shouldWrap ? _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_1__/* .utils_default */ ._K.wrapLabel(msg.message, conf.width, noteFont(conf)) : msg.message, + noteFont(conf) + ); + const noteModel = { + width: shouldWrap ? conf.width : _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMax(conf.width, textDimensions.width + 2 * conf.noteMargin), + height: 0, + startx: fromActor.x, + stopx: 0, + starty: 0, + stopy: 0, + message: msg.message + }; + if (msg.placement === diagObj.db.PLACEMENT.RIGHTOF) { + noteModel.width = shouldWrap ? _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMax(conf.width, textDimensions.width) : _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMax( + fromActor.width / 2 + toActor.width / 2, + textDimensions.width + 2 * conf.noteMargin + ); + noteModel.startx = startx + (fromActor.width + conf.actorMargin) / 2; + } else if (msg.placement === diagObj.db.PLACEMENT.LEFTOF) { + noteModel.width = shouldWrap ? _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMax(conf.width, textDimensions.width + 2 * conf.noteMargin) : _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMax( + fromActor.width / 2 + toActor.width / 2, + textDimensions.width + 2 * conf.noteMargin + ); + noteModel.startx = startx - noteModel.width + (fromActor.width - conf.actorMargin) / 2; + } else if (msg.to === msg.from) { + textDimensions = _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_1__/* .utils_default */ ._K.calculateTextDimensions( + shouldWrap ? _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_1__/* .utils_default */ ._K.wrapLabel(msg.message, _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMax(conf.width, fromActor.width), noteFont(conf)) : msg.message, + noteFont(conf) + ); + noteModel.width = shouldWrap ? _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMax(conf.width, fromActor.width) : _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMax(fromActor.width, conf.width, textDimensions.width + 2 * conf.noteMargin); + noteModel.startx = startx + (fromActor.width - noteModel.width) / 2; + } else { + noteModel.width = Math.abs(startx + fromActor.width / 2 - (stopx + toActor.width / 2)) + conf.actorMargin; + noteModel.startx = startx < stopx ? startx + fromActor.width / 2 - conf.actorMargin / 2 : stopx + toActor.width / 2 - conf.actorMargin / 2; + } + if (shouldWrap) { + noteModel.message = _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_1__/* .utils_default */ ._K.wrapLabel( + msg.message, + noteModel.width - 2 * conf.wrapPadding, + noteFont(conf) + ); + } + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.debug( + `NM:[${noteModel.startx},${noteModel.stopx},${noteModel.starty},${noteModel.stopy}:${noteModel.width},${noteModel.height}=${msg.message}]` + ); + return noteModel; +}, "buildNoteModel"); +var buildMessageModel = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(function(msg, actors, diagObj) { + if (![ + diagObj.db.LINETYPE.SOLID_OPEN, + diagObj.db.LINETYPE.DOTTED_OPEN, + diagObj.db.LINETYPE.SOLID, + diagObj.db.LINETYPE.DOTTED, + diagObj.db.LINETYPE.SOLID_CROSS, + diagObj.db.LINETYPE.DOTTED_CROSS, + diagObj.db.LINETYPE.SOLID_POINT, + diagObj.db.LINETYPE.DOTTED_POINT, + diagObj.db.LINETYPE.BIDIRECTIONAL_SOLID, + diagObj.db.LINETYPE.BIDIRECTIONAL_DOTTED + ].includes(msg.type)) { + return {}; + } + const [fromLeft, fromRight] = activationBounds(msg.from, actors); + const [toLeft, toRight] = activationBounds(msg.to, actors); + const isArrowToRight = fromLeft <= toLeft; + let startx = isArrowToRight ? fromRight : fromLeft; + let stopx = isArrowToRight ? toLeft : toRight; + const isArrowToActivation = Math.abs(toLeft - toRight) > 2; + const adjustValue = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((value) => { + return isArrowToRight ? -value : value; + }, "adjustValue"); + if (msg.from === msg.to) { + stopx = startx; + } else { + if (msg.activate && !isArrowToActivation) { + stopx += adjustValue(conf.activationWidth / 2 - 1); + } + if (![diagObj.db.LINETYPE.SOLID_OPEN, diagObj.db.LINETYPE.DOTTED_OPEN].includes(msg.type)) { + stopx += adjustValue(3); + } + if ([diagObj.db.LINETYPE.BIDIRECTIONAL_SOLID, diagObj.db.LINETYPE.BIDIRECTIONAL_DOTTED].includes( + msg.type + )) { + startx -= adjustValue(3); + } + } + const allBounds = [fromLeft, fromRight, toLeft, toRight]; + const boundedWidth = Math.abs(startx - stopx); + if (msg.wrap && msg.message) { + msg.message = _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_1__/* .utils_default */ ._K.wrapLabel( + msg.message, + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMax(boundedWidth + 2 * conf.wrapPadding, conf.width), + messageFont(conf) + ); + } + const msgDims = _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_1__/* .utils_default */ ._K.calculateTextDimensions(msg.message, messageFont(conf)); + return { + width: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMax( + msg.wrap ? 0 : msgDims.width + 2 * conf.wrapPadding, + boundedWidth + 2 * conf.wrapPadding, + conf.width + ), + height: 0, + startx, + stopx, + starty: 0, + stopy: 0, + message: msg.message, + type: msg.type, + wrap: msg.wrap, + fromBounds: Math.min.apply(null, allBounds), + toBounds: Math.max.apply(null, allBounds) + }; +}, "buildMessageModel"); +var calculateLoopBounds = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async function(messages, actors, _maxWidthPerActor, diagObj) { + const loops = {}; + const stack = []; + let current, noteModel, msgModel; + for (const msg of messages) { + msg.id = _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_1__/* .utils_default */ ._K.random({ length: 10 }); + switch (msg.type) { + case diagObj.db.LINETYPE.LOOP_START: + case diagObj.db.LINETYPE.ALT_START: + case diagObj.db.LINETYPE.OPT_START: + case diagObj.db.LINETYPE.PAR_START: + case diagObj.db.LINETYPE.PAR_OVER_START: + case diagObj.db.LINETYPE.CRITICAL_START: + case diagObj.db.LINETYPE.BREAK_START: + stack.push({ + id: msg.id, + msg: msg.message, + from: Number.MAX_SAFE_INTEGER, + to: Number.MIN_SAFE_INTEGER, + width: 0 + }); + break; + case diagObj.db.LINETYPE.ALT_ELSE: + case diagObj.db.LINETYPE.PAR_AND: + case diagObj.db.LINETYPE.CRITICAL_OPTION: + if (msg.message) { + current = stack.pop(); + loops[current.id] = current; + loops[msg.id] = current; + stack.push(current); + } + break; + case diagObj.db.LINETYPE.LOOP_END: + case diagObj.db.LINETYPE.ALT_END: + case diagObj.db.LINETYPE.OPT_END: + case diagObj.db.LINETYPE.PAR_END: + case diagObj.db.LINETYPE.CRITICAL_END: + case diagObj.db.LINETYPE.BREAK_END: + current = stack.pop(); + loops[current.id] = current; + break; + case diagObj.db.LINETYPE.ACTIVE_START: + { + const actorRect = actors.get(msg.from ? msg.from : msg.to.actor); + const stackedSize = actorActivations(msg.from ? msg.from : msg.to.actor).length; + const x = actorRect.x + actorRect.width / 2 + (stackedSize - 1) * conf.activationWidth / 2; + const toAdd = { + startx: x, + stopx: x + conf.activationWidth, + actor: msg.from, + enabled: true + }; + bounds.activations.push(toAdd); + } + break; + case diagObj.db.LINETYPE.ACTIVE_END: + { + const lastActorActivationIdx = bounds.activations.map((a) => a.actor).lastIndexOf(msg.from); + bounds.activations.splice(lastActorActivationIdx, 1).splice(0, 1); + } + break; + } + const isNote = msg.placement !== void 0; + if (isNote) { + noteModel = await buildNoteModel(msg, actors, diagObj); + msg.noteModel = noteModel; + stack.forEach((stk) => { + current = stk; + current.from = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMin(current.from, noteModel.startx); + current.to = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMax(current.to, noteModel.startx + noteModel.width); + current.width = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMax(current.width, Math.abs(current.from - current.to)) - conf.labelBoxWidth; + }); + } else { + msgModel = buildMessageModel(msg, actors, diagObj); + msg.msgModel = msgModel; + if (msgModel.startx && msgModel.stopx && stack.length > 0) { + stack.forEach((stk) => { + current = stk; + if (msgModel.startx === msgModel.stopx) { + const from = actors.get(msg.from); + const to = actors.get(msg.to); + current.from = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMin( + from.x - msgModel.width / 2, + from.x - from.width / 2, + current.from + ); + current.to = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMax( + to.x + msgModel.width / 2, + to.x + from.width / 2, + current.to + ); + current.width = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMax(current.width, Math.abs(current.to - current.from)) - conf.labelBoxWidth; + } else { + current.from = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMin(msgModel.startx, current.from); + current.to = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMax(msgModel.stopx, current.to); + current.width = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .common_default */ .Y2.getMax(current.width, msgModel.width) - conf.labelBoxWidth; + } + }); + } + } + } + bounds.activations = []; + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.debug("Loop type widths:", loops); + return loops; +}, "calculateLoopBounds"); +var sequenceRenderer_default = { + bounds, + drawActors, + drawActorsPopup, + setConf, + draw +}; + +// src/diagrams/sequence/sequenceDiagram.ts +var diagram = { + parser: sequenceDiagram_default, + db: sequenceDb_default, + renderer: sequenceRenderer_default, + styles: styles_default, + init: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(({ wrap }) => { + sequenceDb_default.setWrap(wrap); + }, "init") +}; + + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/376.f69f96df.js b/assets/js/376.f69f96df.js new file mode 100644 index 00000000..16e4673b --- /dev/null +++ b/assets/js/376.f69f96df.js @@ -0,0 +1,3669 @@ +"use strict"; +exports.id = 376; +exports.ids = [376]; +exports.modules = { + +/***/ 75937: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _utils_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(72453); +/* harmony import */ var _color_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(74886); +/* IMPORT */ + + +/* MAIN */ +const channel = (color, channel) => { + return _utils_index_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.lang.round(_color_index_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A.parse(color)[channel]); +}; +/* EXPORT */ +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (channel); + + +/***/ }), + +/***/ 36151: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (/* binding */ getDiagramElement), +/* harmony export */ P: () => (/* binding */ setupViewPortForSVG) +/* harmony export */ }); +/* harmony import */ var _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(64994); +/* harmony import */ var d3__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(20007); + + +// src/rendering-util/insertElementsForSize.js + +var getDiagramElement = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_0__/* .__name */ .K2)((id, securityLevel) => { + let sandboxElement; + if (securityLevel === "sandbox") { + sandboxElement = (0,d3__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Ltv)("#i" + id); + } + const root = securityLevel === "sandbox" ? (0,d3__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Ltv)(sandboxElement.nodes()[0].contentDocument.body) : (0,d3__WEBPACK_IMPORTED_MODULE_1__/* .select */ .Ltv)("body"); + const svg = root.select(`[id="${id}"]`); + return svg; +}, "getDiagramElement"); + +// src/rendering-util/setupViewPortForSVG.ts +var setupViewPortForSVG = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_0__/* .__name */ .K2)((svg, padding, cssDiagram, useMaxWidth) => { + svg.attr("class", cssDiagram); + const { width, height, x, y } = calculateDimensionsWithPadding(svg, padding); + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_0__/* .configureSvgSize */ .a$)(svg, height, width, useMaxWidth); + const viewBox = createViewBox(x, y, width, height, padding); + svg.attr("viewBox", viewBox); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_0__/* .log */ .Rm.debug(`viewBox configured: ${viewBox} with padding: ${padding}`); +}, "setupViewPortForSVG"); +var calculateDimensionsWithPadding = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_0__/* .__name */ .K2)((svg, padding) => { + const bounds = svg.node()?.getBBox() || { width: 0, height: 0, x: 0, y: 0 }; + return { + width: bounds.width + padding * 2, + height: bounds.height + padding * 2, + x: bounds.x, + y: bounds.y + }; +}, "calculateDimensionsWithPadding"); +var createViewBox = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_0__/* .__name */ .K2)((x, y, width, height, padding) => { + return `${x - padding} ${y - padding} ${width} ${height}`; +}, "createViewBox"); + + + + +/***/ }), + +/***/ 46578: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ DA: () => (/* binding */ createLabel_default), +/* harmony export */ IU: () => (/* binding */ clear), +/* harmony export */ U7: () => (/* binding */ setNodeElem), +/* harmony export */ U_: () => (/* binding */ positionNode), +/* harmony export */ lC: () => (/* binding */ updateNodeBounds), +/* harmony export */ nM: () => (/* binding */ intersect_rect_default), +/* harmony export */ on: () => (/* binding */ insertNode) +/* harmony export */ }); +/* harmony import */ var _chunk_OERGPBFJ_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(67895); +/* harmony import */ var _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(57323); +/* harmony import */ var _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(64994); +/* harmony import */ var d3__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(20007); + + + + +// src/dagre-wrapper/createLabel.js + +function applyStyle(dom, styleFn) { + if (styleFn) { + dom.attr("style", styleFn); + } +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(applyStyle, "applyStyle"); +function addHtmlLabel(node) { + const fo = (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(document.createElementNS("http://www.w3.org/2000/svg", "foreignObject")); + const div = fo.append("xhtml:div"); + const label = node.label; + const labelClass = node.isNode ? "nodeLabel" : "edgeLabel"; + const span = div.append("span"); + span.html(label); + applyStyle(span, node.labelStyle); + span.attr("class", labelClass); + applyStyle(div, node.labelStyle); + div.style("display", "inline-block"); + div.style("white-space", "nowrap"); + div.attr("xmlns", "http://www.w3.org/1999/xhtml"); + return fo.node(); +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(addHtmlLabel, "addHtmlLabel"); +var createLabel = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((_vertexText, style, isTitle, isNode) => { + let vertexText = _vertexText || ""; + if (typeof vertexText === "object") { + vertexText = vertexText[0]; + } + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .evaluate */ ._3)((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)().flowchart.htmlLabels)) { + vertexText = vertexText.replace(/\\n|\n/g, "
    "); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.debug("vertexText" + vertexText); + const node = { + isNode, + label: (0,_chunk_OERGPBFJ_mjs__WEBPACK_IMPORTED_MODULE_0__/* .replaceIconSubstring */ .hE)((0,_chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_1__/* .decodeEntities */ .Sm)(vertexText)), + labelStyle: style.replace("fill:", "color:") + }; + let vertexNode = addHtmlLabel(node); + return vertexNode; + } else { + const svgLabel = document.createElementNS("http://www.w3.org/2000/svg", "text"); + svgLabel.setAttribute("style", style.replace("color:", "fill:")); + let rows = []; + if (typeof vertexText === "string") { + rows = vertexText.split(/\\n|\n|/gi); + } else if (Array.isArray(vertexText)) { + rows = vertexText; + } else { + rows = []; + } + for (const row of rows) { + const tspan = document.createElementNS("http://www.w3.org/2000/svg", "tspan"); + tspan.setAttributeNS("http://www.w3.org/XML/1998/namespace", "xml:space", "preserve"); + tspan.setAttribute("dy", "1em"); + tspan.setAttribute("x", "0"); + if (isTitle) { + tspan.setAttribute("class", "title-row"); + } else { + tspan.setAttribute("class", "row"); + } + tspan.textContent = row.trim(); + svgLabel.appendChild(tspan); + } + return svgLabel; + } +}, "createLabel"); +var createLabel_default = createLabel; + +// src/dagre-wrapper/shapes/util.js + +var labelHelper = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node, _classes, isNode) => { + const config = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)(); + let classes; + const useHtmlLabels = node.useHtmlLabels || (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .evaluate */ ._3)(config.flowchart.htmlLabels); + if (!_classes) { + classes = "node default"; + } else { + classes = _classes; + } + const shapeSvg = parent.insert("g").attr("class", classes).attr("id", node.domId || node.id); + const label = shapeSvg.insert("g").attr("class", "label").attr("style", node.labelStyle); + let labelText; + if (node.labelText === void 0) { + labelText = ""; + } else { + labelText = typeof node.labelText === "string" ? node.labelText : node.labelText[0]; + } + const textNode = label.node(); + let text; + if (node.labelType === "markdown") { + text = (0,_chunk_OERGPBFJ_mjs__WEBPACK_IMPORTED_MODULE_0__/* .createText */ .GZ)( + label, + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .sanitizeText */ .jZ)((0,_chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_1__/* .decodeEntities */ .Sm)(labelText), config), + { + useHtmlLabels, + width: node.width || config.flowchart.wrappingWidth, + classes: "markdown-node-label" + }, + config + ); + } else { + text = textNode.appendChild( + createLabel_default((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .sanitizeText */ .jZ)((0,_chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_1__/* .decodeEntities */ .Sm)(labelText), config), node.labelStyle, false, isNode) + ); + } + let bbox = text.getBBox(); + const halfPadding = node.padding / 2; + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .evaluate */ ._3)(config.flowchart.htmlLabels)) { + const div = text.children[0]; + const dv = (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(text); + const images = div.getElementsByTagName("img"); + if (images) { + const noImgText = labelText.replace(/]*>/g, "").trim() === ""; + await Promise.all( + [...images].map( + (img) => new Promise((res) => { + function setupImage() { + img.style.display = "flex"; + img.style.flexDirection = "column"; + if (noImgText) { + const bodyFontSize = config.fontSize ? config.fontSize : window.getComputedStyle(document.body).fontSize; + const enlargingFactor = 5; + const width = parseInt(bodyFontSize, 10) * enlargingFactor + "px"; + img.style.minWidth = width; + img.style.maxWidth = width; + } else { + img.style.width = "100%"; + } + res(img); + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(setupImage, "setupImage"); + setTimeout(() => { + if (img.complete) { + setupImage(); + } + }); + img.addEventListener("error", setupImage); + img.addEventListener("load", setupImage); + }) + ) + ); + } + bbox = div.getBoundingClientRect(); + dv.attr("width", bbox.width); + dv.attr("height", bbox.height); + } + if (useHtmlLabels) { + label.attr("transform", "translate(" + -bbox.width / 2 + ", " + -bbox.height / 2 + ")"); + } else { + label.attr("transform", "translate(0, " + -bbox.height / 2 + ")"); + } + if (node.centerLabel) { + label.attr("transform", "translate(" + -bbox.width / 2 + ", " + -bbox.height / 2 + ")"); + } + label.insert("rect", ":first-child"); + return { shapeSvg, bbox, halfPadding, label }; +}, "labelHelper"); +var updateNodeBounds = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((node, element) => { + const bbox = element.node().getBBox(); + node.width = bbox.width; + node.height = bbox.height; +}, "updateNodeBounds"); +function insertPolygonShape(parent, w, h, points) { + return parent.insert("polygon", ":first-child").attr( + "points", + points.map(function(d) { + return d.x + "," + d.y; + }).join(" ") + ).attr("class", "label-container").attr("transform", "translate(" + -w / 2 + "," + h / 2 + ")"); +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(insertPolygonShape, "insertPolygonShape"); + +// src/dagre-wrapper/nodes.js + + +// src/dagre-wrapper/blockArrowHelper.ts +var expandAndDeduplicateDirections = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((directions) => { + const uniqueDirections = /* @__PURE__ */ new Set(); + for (const direction of directions) { + switch (direction) { + case "x": + uniqueDirections.add("right"); + uniqueDirections.add("left"); + break; + case "y": + uniqueDirections.add("up"); + uniqueDirections.add("down"); + break; + default: + uniqueDirections.add(direction); + break; + } + } + return uniqueDirections; +}, "expandAndDeduplicateDirections"); +var getArrowPoints = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((duplicatedDirections, bbox, node) => { + const directions = expandAndDeduplicateDirections(duplicatedDirections); + const f = 2; + const height = bbox.height + 2 * node.padding; + const midpoint = height / f; + const width = bbox.width + 2 * midpoint + node.padding; + const padding = node.padding / 2; + if (directions.has("right") && directions.has("left") && directions.has("up") && directions.has("down")) { + return [ + // Bottom + { x: 0, y: 0 }, + { x: midpoint, y: 0 }, + { x: width / 2, y: 2 * padding }, + { x: width - midpoint, y: 0 }, + { x: width, y: 0 }, + // Right + { x: width, y: -height / 3 }, + { x: width + 2 * padding, y: -height / 2 }, + { x: width, y: -2 * height / 3 }, + { x: width, y: -height }, + // Top + { x: width - midpoint, y: -height }, + { x: width / 2, y: -height - 2 * padding }, + { x: midpoint, y: -height }, + // Left + { x: 0, y: -height }, + { x: 0, y: -2 * height / 3 }, + { x: -2 * padding, y: -height / 2 }, + { x: 0, y: -height / 3 } + ]; + } + if (directions.has("right") && directions.has("left") && directions.has("up")) { + return [ + { x: midpoint, y: 0 }, + { x: width - midpoint, y: 0 }, + { x: width, y: -height / 2 }, + { x: width - midpoint, y: -height }, + { x: midpoint, y: -height }, + { x: 0, y: -height / 2 } + ]; + } + if (directions.has("right") && directions.has("left") && directions.has("down")) { + return [ + { x: 0, y: 0 }, + { x: midpoint, y: -height }, + { x: width - midpoint, y: -height }, + { x: width, y: 0 } + ]; + } + if (directions.has("right") && directions.has("up") && directions.has("down")) { + return [ + { x: 0, y: 0 }, + { x: width, y: -midpoint }, + { x: width, y: -height + midpoint }, + { x: 0, y: -height } + ]; + } + if (directions.has("left") && directions.has("up") && directions.has("down")) { + return [ + { x: width, y: 0 }, + { x: 0, y: -midpoint }, + { x: 0, y: -height + midpoint }, + { x: width, y: -height } + ]; + } + if (directions.has("right") && directions.has("left")) { + return [ + { x: midpoint, y: 0 }, + { x: midpoint, y: -padding }, + { x: width - midpoint, y: -padding }, + { x: width - midpoint, y: 0 }, + { x: width, y: -height / 2 }, + { x: width - midpoint, y: -height }, + { x: width - midpoint, y: -height + padding }, + { x: midpoint, y: -height + padding }, + { x: midpoint, y: -height }, + { x: 0, y: -height / 2 } + ]; + } + if (directions.has("up") && directions.has("down")) { + return [ + // Bottom center + { x: width / 2, y: 0 }, + // Left pont of bottom arrow + { x: 0, y: -padding }, + { x: midpoint, y: -padding }, + // Left top over vertical section + { x: midpoint, y: -height + padding }, + { x: 0, y: -height + padding }, + // Top of arrow + { x: width / 2, y: -height }, + { x: width, y: -height + padding }, + // Top of right vertical bar + { x: width - midpoint, y: -height + padding }, + { x: width - midpoint, y: -padding }, + { x: width, y: -padding } + ]; + } + if (directions.has("right") && directions.has("up")) { + return [ + { x: 0, y: 0 }, + { x: width, y: -midpoint }, + { x: 0, y: -height } + ]; + } + if (directions.has("right") && directions.has("down")) { + return [ + { x: 0, y: 0 }, + { x: width, y: 0 }, + { x: 0, y: -height } + ]; + } + if (directions.has("left") && directions.has("up")) { + return [ + { x: width, y: 0 }, + { x: 0, y: -midpoint }, + { x: width, y: -height } + ]; + } + if (directions.has("left") && directions.has("down")) { + return [ + { x: width, y: 0 }, + { x: 0, y: 0 }, + { x: width, y: -height } + ]; + } + if (directions.has("right")) { + return [ + { x: midpoint, y: -padding }, + { x: midpoint, y: -padding }, + { x: width - midpoint, y: -padding }, + { x: width - midpoint, y: 0 }, + { x: width, y: -height / 2 }, + { x: width - midpoint, y: -height }, + { x: width - midpoint, y: -height + padding }, + // top left corner of arrow + { x: midpoint, y: -height + padding }, + { x: midpoint, y: -height + padding } + ]; + } + if (directions.has("left")) { + return [ + { x: midpoint, y: 0 }, + { x: midpoint, y: -padding }, + // Two points, the right corners + { x: width - midpoint, y: -padding }, + { x: width - midpoint, y: -height + padding }, + { x: midpoint, y: -height + padding }, + { x: midpoint, y: -height }, + { x: 0, y: -height / 2 } + ]; + } + if (directions.has("up")) { + return [ + // Bottom center + { x: midpoint, y: -padding }, + // Left top over vertical section + { x: midpoint, y: -height + padding }, + { x: 0, y: -height + padding }, + // Top of arrow + { x: width / 2, y: -height }, + { x: width, y: -height + padding }, + // Top of right vertical bar + { x: width - midpoint, y: -height + padding }, + { x: width - midpoint, y: -padding } + ]; + } + if (directions.has("down")) { + return [ + // Bottom center + { x: width / 2, y: 0 }, + // Left pont of bottom arrow + { x: 0, y: -padding }, + { x: midpoint, y: -padding }, + // Left top over vertical section + { x: midpoint, y: -height + padding }, + { x: width - midpoint, y: -height + padding }, + { x: width - midpoint, y: -padding }, + { x: width, y: -padding } + ]; + } + return [{ x: 0, y: 0 }]; +}, "getArrowPoints"); + +// src/dagre-wrapper/intersect/intersect-node.js +function intersectNode(node, point) { + return node.intersect(point); +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(intersectNode, "intersectNode"); +var intersect_node_default = intersectNode; + +// src/dagre-wrapper/intersect/intersect-ellipse.js +function intersectEllipse(node, rx, ry, point) { + var cx = node.x; + var cy = node.y; + var px = cx - point.x; + var py = cy - point.y; + var det = Math.sqrt(rx * rx * py * py + ry * ry * px * px); + var dx = Math.abs(rx * ry * px / det); + if (point.x < cx) { + dx = -dx; + } + var dy = Math.abs(rx * ry * py / det); + if (point.y < cy) { + dy = -dy; + } + return { x: cx + dx, y: cy + dy }; +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(intersectEllipse, "intersectEllipse"); +var intersect_ellipse_default = intersectEllipse; + +// src/dagre-wrapper/intersect/intersect-circle.js +function intersectCircle(node, rx, point) { + return intersect_ellipse_default(node, rx, rx, point); +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(intersectCircle, "intersectCircle"); +var intersect_circle_default = intersectCircle; + +// src/dagre-wrapper/intersect/intersect-line.js +function intersectLine(p1, p2, q1, q2) { + var a1, a2, b1, b2, c1, c2; + var r1, r2, r3, r4; + var denom, offset, num; + var x, y; + a1 = p2.y - p1.y; + b1 = p1.x - p2.x; + c1 = p2.x * p1.y - p1.x * p2.y; + r3 = a1 * q1.x + b1 * q1.y + c1; + r4 = a1 * q2.x + b1 * q2.y + c1; + if (r3 !== 0 && r4 !== 0 && sameSign(r3, r4)) { + return; + } + a2 = q2.y - q1.y; + b2 = q1.x - q2.x; + c2 = q2.x * q1.y - q1.x * q2.y; + r1 = a2 * p1.x + b2 * p1.y + c2; + r2 = a2 * p2.x + b2 * p2.y + c2; + if (r1 !== 0 && r2 !== 0 && sameSign(r1, r2)) { + return; + } + denom = a1 * b2 - a2 * b1; + if (denom === 0) { + return; + } + offset = Math.abs(denom / 2); + num = b1 * c2 - b2 * c1; + x = num < 0 ? (num - offset) / denom : (num + offset) / denom; + num = a2 * c1 - a1 * c2; + y = num < 0 ? (num - offset) / denom : (num + offset) / denom; + return { x, y }; +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(intersectLine, "intersectLine"); +function sameSign(r1, r2) { + return r1 * r2 > 0; +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(sameSign, "sameSign"); +var intersect_line_default = intersectLine; + +// src/dagre-wrapper/intersect/intersect-polygon.js +var intersect_polygon_default = intersectPolygon; +function intersectPolygon(node, polyPoints, point) { + var x1 = node.x; + var y1 = node.y; + var intersections = []; + var minX = Number.POSITIVE_INFINITY; + var minY = Number.POSITIVE_INFINITY; + if (typeof polyPoints.forEach === "function") { + polyPoints.forEach(function(entry) { + minX = Math.min(minX, entry.x); + minY = Math.min(minY, entry.y); + }); + } else { + minX = Math.min(minX, polyPoints.x); + minY = Math.min(minY, polyPoints.y); + } + var left = x1 - node.width / 2 - minX; + var top = y1 - node.height / 2 - minY; + for (var i = 0; i < polyPoints.length; i++) { + var p1 = polyPoints[i]; + var p2 = polyPoints[i < polyPoints.length - 1 ? i + 1 : 0]; + var intersect = intersect_line_default( + node, + point, + { x: left + p1.x, y: top + p1.y }, + { x: left + p2.x, y: top + p2.y } + ); + if (intersect) { + intersections.push(intersect); + } + } + if (!intersections.length) { + return node; + } + if (intersections.length > 1) { + intersections.sort(function(p, q) { + var pdx = p.x - point.x; + var pdy = p.y - point.y; + var distp = Math.sqrt(pdx * pdx + pdy * pdy); + var qdx = q.x - point.x; + var qdy = q.y - point.y; + var distq = Math.sqrt(qdx * qdx + qdy * qdy); + return distp < distq ? -1 : distp === distq ? 0 : 1; + }); + } + return intersections[0]; +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(intersectPolygon, "intersectPolygon"); + +// src/dagre-wrapper/intersect/intersect-rect.js +var intersectRect = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((node, point) => { + var x = node.x; + var y = node.y; + var dx = point.x - x; + var dy = point.y - y; + var w = node.width / 2; + var h = node.height / 2; + var sx, sy; + if (Math.abs(dy) * w > Math.abs(dx) * h) { + if (dy < 0) { + h = -h; + } + sx = dy === 0 ? 0 : h * dx / dy; + sy = h; + } else { + if (dx < 0) { + w = -w; + } + sx = w; + sy = dx === 0 ? 0 : w * dy / dx; + } + return { x: x + sx, y: y + sy }; +}, "intersectRect"); +var intersect_rect_default = intersectRect; + +// src/dagre-wrapper/intersect/index.js +var intersect_default = { + node: intersect_node_default, + circle: intersect_circle_default, + ellipse: intersect_ellipse_default, + polygon: intersect_polygon_default, + rect: intersect_rect_default +}; + +// src/dagre-wrapper/shapes/note.js +var note = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const useHtmlLabels = node.useHtmlLabels || (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)().flowchart.htmlLabels; + if (!useHtmlLabels) { + node.centerLabel = true; + } + const { shapeSvg, bbox, halfPadding } = await labelHelper( + parent, + node, + "node " + node.classes, + true + ); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.info("Classes = ", node.classes); + const rect2 = shapeSvg.insert("rect", ":first-child"); + rect2.attr("rx", node.rx).attr("ry", node.ry).attr("x", -bbox.width / 2 - halfPadding).attr("y", -bbox.height / 2 - halfPadding).attr("width", bbox.width + node.padding).attr("height", bbox.height + node.padding); + updateNodeBounds(node, rect2); + node.intersect = function(point) { + return intersect_default.rect(node, point); + }; + return shapeSvg; +}, "note"); +var note_default = note; + +// src/dagre-wrapper/nodes.js +var formatClass = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((str) => { + if (str) { + return " " + str; + } + return ""; +}, "formatClass"); +var getClassesFromNode = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((node, otherClasses) => { + return `${otherClasses ? otherClasses : "node default"}${formatClass(node.classes)} ${formatClass( + node.class + )}`; +}, "getClassesFromNode"); +var question = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox } = await labelHelper( + parent, + node, + getClassesFromNode(node, void 0), + true + ); + const w = bbox.width + node.padding; + const h = bbox.height + node.padding; + const s = w + h; + const points = [ + { x: s / 2, y: 0 }, + { x: s, y: -s / 2 }, + { x: s / 2, y: -s }, + { x: 0, y: -s / 2 } + ]; + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.info("Question main (Circle)"); + const questionElem = insertPolygonShape(shapeSvg, s, s, points); + questionElem.attr("style", node.style); + updateNodeBounds(node, questionElem); + node.intersect = function(point) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.warn("Intersect called"); + return intersect_default.polygon(node, points, point); + }; + return shapeSvg; +}, "question"); +var choice = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((parent, node) => { + const shapeSvg = parent.insert("g").attr("class", "node default").attr("id", node.domId || node.id); + const s = 28; + const points = [ + { x: 0, y: s / 2 }, + { x: s / 2, y: 0 }, + { x: 0, y: -s / 2 }, + { x: -s / 2, y: 0 } + ]; + const choice2 = shapeSvg.insert("polygon", ":first-child").attr( + "points", + points.map(function(d) { + return d.x + "," + d.y; + }).join(" ") + ); + choice2.attr("class", "state-start").attr("r", 7).attr("width", 28).attr("height", 28); + node.width = 28; + node.height = 28; + node.intersect = function(point) { + return intersect_default.circle(node, 14, point); + }; + return shapeSvg; +}, "choice"); +var hexagon = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox } = await labelHelper( + parent, + node, + getClassesFromNode(node, void 0), + true + ); + const f = 4; + const h = bbox.height + node.padding; + const m = h / f; + const w = bbox.width + 2 * m + node.padding; + const points = [ + { x: m, y: 0 }, + { x: w - m, y: 0 }, + { x: w, y: -h / 2 }, + { x: w - m, y: -h }, + { x: m, y: -h }, + { x: 0, y: -h / 2 } + ]; + const hex = insertPolygonShape(shapeSvg, w, h, points); + hex.attr("style", node.style); + updateNodeBounds(node, hex); + node.intersect = function(point) { + return intersect_default.polygon(node, points, point); + }; + return shapeSvg; +}, "hexagon"); +var block_arrow = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox } = await labelHelper(parent, node, void 0, true); + const f = 2; + const h = bbox.height + 2 * node.padding; + const m = h / f; + const w = bbox.width + 2 * m + node.padding; + const points = getArrowPoints(node.directions, bbox, node); + const blockArrow = insertPolygonShape(shapeSvg, w, h, points); + blockArrow.attr("style", node.style); + updateNodeBounds(node, blockArrow); + node.intersect = function(point) { + return intersect_default.polygon(node, points, point); + }; + return shapeSvg; +}, "block_arrow"); +var rect_left_inv_arrow = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox } = await labelHelper( + parent, + node, + getClassesFromNode(node, void 0), + true + ); + const w = bbox.width + node.padding; + const h = bbox.height + node.padding; + const points = [ + { x: -h / 2, y: 0 }, + { x: w, y: 0 }, + { x: w, y: -h }, + { x: -h / 2, y: -h }, + { x: 0, y: -h / 2 } + ]; + const el = insertPolygonShape(shapeSvg, w, h, points); + el.attr("style", node.style); + node.width = w + h; + node.height = h; + node.intersect = function(point) { + return intersect_default.polygon(node, points, point); + }; + return shapeSvg; +}, "rect_left_inv_arrow"); +var lean_right = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox } = await labelHelper(parent, node, getClassesFromNode(node), true); + const w = bbox.width + node.padding; + const h = bbox.height + node.padding; + const points = [ + { x: -2 * h / 6, y: 0 }, + { x: w - h / 6, y: 0 }, + { x: w + 2 * h / 6, y: -h }, + { x: h / 6, y: -h } + ]; + const el = insertPolygonShape(shapeSvg, w, h, points); + el.attr("style", node.style); + updateNodeBounds(node, el); + node.intersect = function(point) { + return intersect_default.polygon(node, points, point); + }; + return shapeSvg; +}, "lean_right"); +var lean_left = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox } = await labelHelper( + parent, + node, + getClassesFromNode(node, void 0), + true + ); + const w = bbox.width + node.padding; + const h = bbox.height + node.padding; + const points = [ + { x: 2 * h / 6, y: 0 }, + { x: w + h / 6, y: 0 }, + { x: w - 2 * h / 6, y: -h }, + { x: -h / 6, y: -h } + ]; + const el = insertPolygonShape(shapeSvg, w, h, points); + el.attr("style", node.style); + updateNodeBounds(node, el); + node.intersect = function(point) { + return intersect_default.polygon(node, points, point); + }; + return shapeSvg; +}, "lean_left"); +var trapezoid = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox } = await labelHelper( + parent, + node, + getClassesFromNode(node, void 0), + true + ); + const w = bbox.width + node.padding; + const h = bbox.height + node.padding; + const points = [ + { x: -2 * h / 6, y: 0 }, + { x: w + 2 * h / 6, y: 0 }, + { x: w - h / 6, y: -h }, + { x: h / 6, y: -h } + ]; + const el = insertPolygonShape(shapeSvg, w, h, points); + el.attr("style", node.style); + updateNodeBounds(node, el); + node.intersect = function(point) { + return intersect_default.polygon(node, points, point); + }; + return shapeSvg; +}, "trapezoid"); +var inv_trapezoid = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox } = await labelHelper( + parent, + node, + getClassesFromNode(node, void 0), + true + ); + const w = bbox.width + node.padding; + const h = bbox.height + node.padding; + const points = [ + { x: h / 6, y: 0 }, + { x: w - h / 6, y: 0 }, + { x: w + 2 * h / 6, y: -h }, + { x: -2 * h / 6, y: -h } + ]; + const el = insertPolygonShape(shapeSvg, w, h, points); + el.attr("style", node.style); + updateNodeBounds(node, el); + node.intersect = function(point) { + return intersect_default.polygon(node, points, point); + }; + return shapeSvg; +}, "inv_trapezoid"); +var rect_right_inv_arrow = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox } = await labelHelper( + parent, + node, + getClassesFromNode(node, void 0), + true + ); + const w = bbox.width + node.padding; + const h = bbox.height + node.padding; + const points = [ + { x: 0, y: 0 }, + { x: w + h / 2, y: 0 }, + { x: w, y: -h / 2 }, + { x: w + h / 2, y: -h }, + { x: 0, y: -h } + ]; + const el = insertPolygonShape(shapeSvg, w, h, points); + el.attr("style", node.style); + updateNodeBounds(node, el); + node.intersect = function(point) { + return intersect_default.polygon(node, points, point); + }; + return shapeSvg; +}, "rect_right_inv_arrow"); +var cylinder = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox } = await labelHelper( + parent, + node, + getClassesFromNode(node, void 0), + true + ); + const w = bbox.width + node.padding; + const rx = w / 2; + const ry = rx / (2.5 + w / 50); + const h = bbox.height + ry + node.padding; + const shape = "M 0," + ry + " a " + rx + "," + ry + " 0,0,0 " + w + " 0 a " + rx + "," + ry + " 0,0,0 " + -w + " 0 l 0," + h + " a " + rx + "," + ry + " 0,0,0 " + w + " 0 l 0," + -h; + const el = shapeSvg.attr("label-offset-y", ry).insert("path", ":first-child").attr("style", node.style).attr("d", shape).attr("transform", "translate(" + -w / 2 + "," + -(h / 2 + ry) + ")"); + updateNodeBounds(node, el); + node.intersect = function(point) { + const pos = intersect_default.rect(node, point); + const x = pos.x - node.x; + if (rx != 0 && (Math.abs(x) < node.width / 2 || Math.abs(x) == node.width / 2 && Math.abs(pos.y - node.y) > node.height / 2 - ry)) { + let y = ry * ry * (1 - x * x / (rx * rx)); + if (y != 0) { + y = Math.sqrt(y); + } + y = ry - y; + if (point.y - node.y > 0) { + y = -y; + } + pos.y += y; + } + return pos; + }; + return shapeSvg; +}, "cylinder"); +var rect = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox, halfPadding } = await labelHelper( + parent, + node, + "node " + node.classes + " " + node.class, + true + ); + const rect2 = shapeSvg.insert("rect", ":first-child"); + const totalWidth = node.positioned ? node.width : bbox.width + node.padding; + const totalHeight = node.positioned ? node.height : bbox.height + node.padding; + const x = node.positioned ? -totalWidth / 2 : -bbox.width / 2 - halfPadding; + const y = node.positioned ? -totalHeight / 2 : -bbox.height / 2 - halfPadding; + rect2.attr("class", "basic label-container").attr("style", node.style).attr("rx", node.rx).attr("ry", node.ry).attr("x", x).attr("y", y).attr("width", totalWidth).attr("height", totalHeight); + if (node.props) { + const propKeys = new Set(Object.keys(node.props)); + if (node.props.borders) { + applyNodePropertyBorders(rect2, node.props.borders, totalWidth, totalHeight); + propKeys.delete("borders"); + } + propKeys.forEach((propKey) => { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.warn(`Unknown node property ${propKey}`); + }); + } + updateNodeBounds(node, rect2); + node.intersect = function(point) { + return intersect_default.rect(node, point); + }; + return shapeSvg; +}, "rect"); +var composite = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox, halfPadding } = await labelHelper( + parent, + node, + "node " + node.classes, + true + ); + const rect2 = shapeSvg.insert("rect", ":first-child"); + const totalWidth = node.positioned ? node.width : bbox.width + node.padding; + const totalHeight = node.positioned ? node.height : bbox.height + node.padding; + const x = node.positioned ? -totalWidth / 2 : -bbox.width / 2 - halfPadding; + const y = node.positioned ? -totalHeight / 2 : -bbox.height / 2 - halfPadding; + rect2.attr("class", "basic cluster composite label-container").attr("style", node.style).attr("rx", node.rx).attr("ry", node.ry).attr("x", x).attr("y", y).attr("width", totalWidth).attr("height", totalHeight); + if (node.props) { + const propKeys = new Set(Object.keys(node.props)); + if (node.props.borders) { + applyNodePropertyBorders(rect2, node.props.borders, totalWidth, totalHeight); + propKeys.delete("borders"); + } + propKeys.forEach((propKey) => { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.warn(`Unknown node property ${propKey}`); + }); + } + updateNodeBounds(node, rect2); + node.intersect = function(point) { + return intersect_default.rect(node, point); + }; + return shapeSvg; +}, "composite"); +var labelRect = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg } = await labelHelper(parent, node, "label", true); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.trace("Classes = ", node.class); + const rect2 = shapeSvg.insert("rect", ":first-child"); + const totalWidth = 0; + const totalHeight = 0; + rect2.attr("width", totalWidth).attr("height", totalHeight); + shapeSvg.attr("class", "label edgeLabel"); + if (node.props) { + const propKeys = new Set(Object.keys(node.props)); + if (node.props.borders) { + applyNodePropertyBorders(rect2, node.props.borders, totalWidth, totalHeight); + propKeys.delete("borders"); + } + propKeys.forEach((propKey) => { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.warn(`Unknown node property ${propKey}`); + }); + } + updateNodeBounds(node, rect2); + node.intersect = function(point) { + return intersect_default.rect(node, point); + }; + return shapeSvg; +}, "labelRect"); +function applyNodePropertyBorders(rect2, borders, totalWidth, totalHeight) { + const strokeDashArray = []; + const addBorder = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((length) => { + strokeDashArray.push(length, 0); + }, "addBorder"); + const skipBorder = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((length) => { + strokeDashArray.push(0, length); + }, "skipBorder"); + if (borders.includes("t")) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.debug("add top border"); + addBorder(totalWidth); + } else { + skipBorder(totalWidth); + } + if (borders.includes("r")) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.debug("add right border"); + addBorder(totalHeight); + } else { + skipBorder(totalHeight); + } + if (borders.includes("b")) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.debug("add bottom border"); + addBorder(totalWidth); + } else { + skipBorder(totalWidth); + } + if (borders.includes("l")) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.debug("add left border"); + addBorder(totalHeight); + } else { + skipBorder(totalHeight); + } + rect2.attr("stroke-dasharray", strokeDashArray.join(" ")); +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(applyNodePropertyBorders, "applyNodePropertyBorders"); +var rectWithTitle = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((parent, node) => { + let classes; + if (!node.classes) { + classes = "node default"; + } else { + classes = "node " + node.classes; + } + const shapeSvg = parent.insert("g").attr("class", classes).attr("id", node.domId || node.id); + const rect2 = shapeSvg.insert("rect", ":first-child"); + const innerLine = shapeSvg.insert("line"); + const label = shapeSvg.insert("g").attr("class", "label"); + const text2 = node.labelText.flat ? node.labelText.flat() : node.labelText; + let title = ""; + if (typeof text2 === "object") { + title = text2[0]; + } else { + title = text2; + } + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.info("Label text abc79", title, text2, typeof text2 === "object"); + const text = label.node().appendChild(createLabel_default(title, node.labelStyle, true, true)); + let bbox = { width: 0, height: 0 }; + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .evaluate */ ._3)((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)().flowchart.htmlLabels)) { + const div = text.children[0]; + const dv = (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(text); + bbox = div.getBoundingClientRect(); + dv.attr("width", bbox.width); + dv.attr("height", bbox.height); + } + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.info("Text 2", text2); + const textRows = text2.slice(1, text2.length); + let titleBox = text.getBBox(); + const descr = label.node().appendChild( + createLabel_default(textRows.join ? textRows.join("
    ") : textRows, node.labelStyle, true, true) + ); + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .evaluate */ ._3)((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)().flowchart.htmlLabels)) { + const div = descr.children[0]; + const dv = (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(descr); + bbox = div.getBoundingClientRect(); + dv.attr("width", bbox.width); + dv.attr("height", bbox.height); + } + const halfPadding = node.padding / 2; + (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(descr).attr( + "transform", + "translate( " + // (titleBox.width - bbox.width) / 2 + + (bbox.width > titleBox.width ? 0 : (titleBox.width - bbox.width) / 2) + ", " + (titleBox.height + halfPadding + 5) + ")" + ); + (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(text).attr( + "transform", + "translate( " + // (titleBox.width - bbox.width) / 2 + + (bbox.width < titleBox.width ? 0 : -(titleBox.width - bbox.width) / 2) + ", 0)" + ); + bbox = label.node().getBBox(); + label.attr( + "transform", + "translate(" + -bbox.width / 2 + ", " + (-bbox.height / 2 - halfPadding + 3) + ")" + ); + rect2.attr("class", "outer title-state").attr("x", -bbox.width / 2 - halfPadding).attr("y", -bbox.height / 2 - halfPadding).attr("width", bbox.width + node.padding).attr("height", bbox.height + node.padding); + innerLine.attr("class", "divider").attr("x1", -bbox.width / 2 - halfPadding).attr("x2", bbox.width / 2 + halfPadding).attr("y1", -bbox.height / 2 - halfPadding + titleBox.height + halfPadding).attr("y2", -bbox.height / 2 - halfPadding + titleBox.height + halfPadding); + updateNodeBounds(node, rect2); + node.intersect = function(point) { + return intersect_default.rect(node, point); + }; + return shapeSvg; +}, "rectWithTitle"); +var stadium = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox } = await labelHelper( + parent, + node, + getClassesFromNode(node, void 0), + true + ); + const h = bbox.height + node.padding; + const w = bbox.width + h / 4 + node.padding; + const rect2 = shapeSvg.insert("rect", ":first-child").attr("style", node.style).attr("rx", h / 2).attr("ry", h / 2).attr("x", -w / 2).attr("y", -h / 2).attr("width", w).attr("height", h); + updateNodeBounds(node, rect2); + node.intersect = function(point) { + return intersect_default.rect(node, point); + }; + return shapeSvg; +}, "stadium"); +var circle = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox, halfPadding } = await labelHelper( + parent, + node, + getClassesFromNode(node, void 0), + true + ); + const circle2 = shapeSvg.insert("circle", ":first-child"); + circle2.attr("style", node.style).attr("rx", node.rx).attr("ry", node.ry).attr("r", bbox.width / 2 + halfPadding).attr("width", bbox.width + node.padding).attr("height", bbox.height + node.padding); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.info("Circle main"); + updateNodeBounds(node, circle2); + node.intersect = function(point) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.info("Circle intersect", node, bbox.width / 2 + halfPadding, point); + return intersect_default.circle(node, bbox.width / 2 + halfPadding, point); + }; + return shapeSvg; +}, "circle"); +var doublecircle = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox, halfPadding } = await labelHelper( + parent, + node, + getClassesFromNode(node, void 0), + true + ); + const gap = 5; + const circleGroup = shapeSvg.insert("g", ":first-child"); + const outerCircle = circleGroup.insert("circle"); + const innerCircle = circleGroup.insert("circle"); + circleGroup.attr("class", node.class); + outerCircle.attr("style", node.style).attr("rx", node.rx).attr("ry", node.ry).attr("r", bbox.width / 2 + halfPadding + gap).attr("width", bbox.width + node.padding + gap * 2).attr("height", bbox.height + node.padding + gap * 2); + innerCircle.attr("style", node.style).attr("rx", node.rx).attr("ry", node.ry).attr("r", bbox.width / 2 + halfPadding).attr("width", bbox.width + node.padding).attr("height", bbox.height + node.padding); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.info("DoubleCircle main"); + updateNodeBounds(node, outerCircle); + node.intersect = function(point) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.info("DoubleCircle intersect", node, bbox.width / 2 + halfPadding + gap, point); + return intersect_default.circle(node, bbox.width / 2 + halfPadding + gap, point); + }; + return shapeSvg; +}, "doublecircle"); +var subroutine = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox } = await labelHelper( + parent, + node, + getClassesFromNode(node, void 0), + true + ); + const w = bbox.width + node.padding; + const h = bbox.height + node.padding; + const points = [ + { x: 0, y: 0 }, + { x: w, y: 0 }, + { x: w, y: -h }, + { x: 0, y: -h }, + { x: 0, y: 0 }, + { x: -8, y: 0 }, + { x: w + 8, y: 0 }, + { x: w + 8, y: -h }, + { x: -8, y: -h }, + { x: -8, y: 0 } + ]; + const el = insertPolygonShape(shapeSvg, w, h, points); + el.attr("style", node.style); + updateNodeBounds(node, el); + node.intersect = function(point) { + return intersect_default.polygon(node, points, point); + }; + return shapeSvg; +}, "subroutine"); +var start = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((parent, node) => { + const shapeSvg = parent.insert("g").attr("class", "node default").attr("id", node.domId || node.id); + const circle2 = shapeSvg.insert("circle", ":first-child"); + circle2.attr("class", "state-start").attr("r", 7).attr("width", 14).attr("height", 14); + updateNodeBounds(node, circle2); + node.intersect = function(point) { + return intersect_default.circle(node, 7, point); + }; + return shapeSvg; +}, "start"); +var forkJoin = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((parent, node, dir) => { + const shapeSvg = parent.insert("g").attr("class", "node default").attr("id", node.domId || node.id); + let width = 70; + let height = 10; + if (dir === "LR") { + width = 10; + height = 70; + } + const shape = shapeSvg.append("rect").attr("x", -1 * width / 2).attr("y", -1 * height / 2).attr("width", width).attr("height", height).attr("class", "fork-join"); + updateNodeBounds(node, shape); + node.height = node.height + node.padding / 2; + node.width = node.width + node.padding / 2; + node.intersect = function(point) { + return intersect_default.rect(node, point); + }; + return shapeSvg; +}, "forkJoin"); +var end = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((parent, node) => { + const shapeSvg = parent.insert("g").attr("class", "node default").attr("id", node.domId || node.id); + const innerCircle = shapeSvg.insert("circle", ":first-child"); + const circle2 = shapeSvg.insert("circle", ":first-child"); + circle2.attr("class", "state-start").attr("r", 7).attr("width", 14).attr("height", 14); + innerCircle.attr("class", "state-end").attr("r", 5).attr("width", 10).attr("height", 10); + updateNodeBounds(node, circle2); + node.intersect = function(point) { + return intersect_default.circle(node, 7, point); + }; + return shapeSvg; +}, "end"); +var class_box = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((parent, node) => { + const halfPadding = node.padding / 2; + const rowPadding = 4; + const lineHeight = 8; + let classes; + if (!node.classes) { + classes = "node default"; + } else { + classes = "node " + node.classes; + } + const shapeSvg = parent.insert("g").attr("class", classes).attr("id", node.domId || node.id); + const rect2 = shapeSvg.insert("rect", ":first-child"); + const topLine = shapeSvg.insert("line"); + const bottomLine = shapeSvg.insert("line"); + let maxWidth = 0; + let maxHeight = rowPadding; + const labelContainer = shapeSvg.insert("g").attr("class", "label"); + let verticalPos = 0; + const hasInterface = node.classData.annotations?.[0]; + const interfaceLabelText = node.classData.annotations[0] ? "\xAB" + node.classData.annotations[0] + "\xBB" : ""; + const interfaceLabel = labelContainer.node().appendChild(createLabel_default(interfaceLabelText, node.labelStyle, true, true)); + let interfaceBBox = interfaceLabel.getBBox(); + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .evaluate */ ._3)((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)().flowchart.htmlLabels)) { + const div = interfaceLabel.children[0]; + const dv = (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(interfaceLabel); + interfaceBBox = div.getBoundingClientRect(); + dv.attr("width", interfaceBBox.width); + dv.attr("height", interfaceBBox.height); + } + if (node.classData.annotations[0]) { + maxHeight += interfaceBBox.height + rowPadding; + maxWidth += interfaceBBox.width; + } + let classTitleString = node.classData.label; + if (node.classData.type !== void 0 && node.classData.type !== "") { + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)().flowchart.htmlLabels) { + classTitleString += "<" + node.classData.type + ">"; + } else { + classTitleString += "<" + node.classData.type + ">"; + } + } + const classTitleLabel = labelContainer.node().appendChild(createLabel_default(classTitleString, node.labelStyle, true, true)); + (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(classTitleLabel).attr("class", "classTitle"); + let classTitleBBox = classTitleLabel.getBBox(); + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .evaluate */ ._3)((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)().flowchart.htmlLabels)) { + const div = classTitleLabel.children[0]; + const dv = (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(classTitleLabel); + classTitleBBox = div.getBoundingClientRect(); + dv.attr("width", classTitleBBox.width); + dv.attr("height", classTitleBBox.height); + } + maxHeight += classTitleBBox.height + rowPadding; + if (classTitleBBox.width > maxWidth) { + maxWidth = classTitleBBox.width; + } + const classAttributes = []; + node.classData.members.forEach((member) => { + const parsedInfo = member.getDisplayDetails(); + let parsedText = parsedInfo.displayText; + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)().flowchart.htmlLabels) { + parsedText = parsedText.replace(//g, ">"); + } + const lbl = labelContainer.node().appendChild( + createLabel_default( + parsedText, + parsedInfo.cssStyle ? parsedInfo.cssStyle : node.labelStyle, + true, + true + ) + ); + let bbox = lbl.getBBox(); + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .evaluate */ ._3)((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)().flowchart.htmlLabels)) { + const div = lbl.children[0]; + const dv = (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(lbl); + bbox = div.getBoundingClientRect(); + dv.attr("width", bbox.width); + dv.attr("height", bbox.height); + } + if (bbox.width > maxWidth) { + maxWidth = bbox.width; + } + maxHeight += bbox.height + rowPadding; + classAttributes.push(lbl); + }); + maxHeight += lineHeight; + const classMethods = []; + node.classData.methods.forEach((member) => { + const parsedInfo = member.getDisplayDetails(); + let displayText = parsedInfo.displayText; + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)().flowchart.htmlLabels) { + displayText = displayText.replace(//g, ">"); + } + const lbl = labelContainer.node().appendChild( + createLabel_default( + displayText, + parsedInfo.cssStyle ? parsedInfo.cssStyle : node.labelStyle, + true, + true + ) + ); + let bbox = lbl.getBBox(); + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .evaluate */ ._3)((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)().flowchart.htmlLabels)) { + const div = lbl.children[0]; + const dv = (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(lbl); + bbox = div.getBoundingClientRect(); + dv.attr("width", bbox.width); + dv.attr("height", bbox.height); + } + if (bbox.width > maxWidth) { + maxWidth = bbox.width; + } + maxHeight += bbox.height + rowPadding; + classMethods.push(lbl); + }); + maxHeight += lineHeight; + if (hasInterface) { + let diffX2 = (maxWidth - interfaceBBox.width) / 2; + (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(interfaceLabel).attr( + "transform", + "translate( " + (-1 * maxWidth / 2 + diffX2) + ", " + -1 * maxHeight / 2 + ")" + ); + verticalPos = interfaceBBox.height + rowPadding; + } + let diffX = (maxWidth - classTitleBBox.width) / 2; + (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(classTitleLabel).attr( + "transform", + "translate( " + (-1 * maxWidth / 2 + diffX) + ", " + (-1 * maxHeight / 2 + verticalPos) + ")" + ); + verticalPos += classTitleBBox.height + rowPadding; + topLine.attr("class", "divider").attr("x1", -maxWidth / 2 - halfPadding).attr("x2", maxWidth / 2 + halfPadding).attr("y1", -maxHeight / 2 - halfPadding + lineHeight + verticalPos).attr("y2", -maxHeight / 2 - halfPadding + lineHeight + verticalPos); + verticalPos += lineHeight; + classAttributes.forEach((lbl) => { + (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(lbl).attr( + "transform", + "translate( " + -maxWidth / 2 + ", " + (-1 * maxHeight / 2 + verticalPos + lineHeight / 2) + ")" + ); + const memberBBox = lbl?.getBBox(); + verticalPos += (memberBBox?.height ?? 0) + rowPadding; + }); + verticalPos += lineHeight; + bottomLine.attr("class", "divider").attr("x1", -maxWidth / 2 - halfPadding).attr("x2", maxWidth / 2 + halfPadding).attr("y1", -maxHeight / 2 - halfPadding + lineHeight + verticalPos).attr("y2", -maxHeight / 2 - halfPadding + lineHeight + verticalPos); + verticalPos += lineHeight; + classMethods.forEach((lbl) => { + (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(lbl).attr( + "transform", + "translate( " + -maxWidth / 2 + ", " + (-1 * maxHeight / 2 + verticalPos) + ")" + ); + const memberBBox = lbl?.getBBox(); + verticalPos += (memberBBox?.height ?? 0) + rowPadding; + }); + rect2.attr("style", node.style).attr("class", "outer title-state").attr("x", -maxWidth / 2 - halfPadding).attr("y", -(maxHeight / 2) - halfPadding).attr("width", maxWidth + node.padding).attr("height", maxHeight + node.padding); + updateNodeBounds(node, rect2); + node.intersect = function(point) { + return intersect_default.rect(node, point); + }; + return shapeSvg; +}, "class_box"); +var shapes = { + rhombus: question, + composite, + question, + rect, + labelRect, + rectWithTitle, + choice, + circle, + doublecircle, + stadium, + hexagon, + block_arrow, + rect_left_inv_arrow, + lean_right, + lean_left, + trapezoid, + inv_trapezoid, + rect_right_inv_arrow, + cylinder, + start, + end, + note: note_default, + subroutine, + fork: forkJoin, + join: forkJoin, + class_box +}; +var nodeElems = {}; +var insertNode = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (elem, node, dir) => { + let newEl; + let el; + if (node.link) { + let target; + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)().securityLevel === "sandbox") { + target = "_top"; + } else if (node.linkTarget) { + target = node.linkTarget || "_blank"; + } + newEl = elem.insert("svg:a").attr("xlink:href", node.link).attr("target", target); + el = await shapes[node.shape](newEl, node, dir); + } else { + el = await shapes[node.shape](elem, node, dir); + newEl = el; + } + if (node.tooltip) { + el.attr("title", node.tooltip); + } + if (node.class) { + el.attr("class", "node default " + node.class); + } + nodeElems[node.id] = newEl; + if (node.haveCallback) { + nodeElems[node.id].attr("class", nodeElems[node.id].attr("class") + " clickable"); + } + return newEl; +}, "insertNode"); +var setNodeElem = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((elem, node) => { + nodeElems[node.id] = elem; +}, "setNodeElem"); +var clear = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(() => { + nodeElems = {}; +}, "clear"); +var positionNode = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((node) => { + const el = nodeElems[node.id]; + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.trace( + "Transforming node", + node.diff, + node, + "translate(" + (node.x - node.width / 2 - 5) + ", " + node.width / 2 + ")" + ); + const padding = 8; + const diff = node.diff || 0; + if (node.clusterNode) { + el.attr( + "transform", + "translate(" + (node.x + diff - node.width / 2) + ", " + (node.y - node.height / 2 - padding) + ")" + ); + } else { + el.attr("transform", "translate(" + node.x + ", " + node.y + ")"); + } + return diff; +}, "positionNode"); + + + + +/***/ }), + +/***/ 30376: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ diagram: () => (/* binding */ diagram) +/* harmony export */ }); +/* harmony import */ var _chunk_FUIDI54P_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(36151); +/* harmony import */ var _chunk_Z2VRG6XP_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(46578); +/* harmony import */ var _chunk_T3KDJ7CM_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(62602); +/* harmony import */ var _chunk_5CZSE4TR_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(49139); +/* harmony import */ var _chunk_TINLTEC2_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(48496); +/* harmony import */ var _chunk_OERGPBFJ_mjs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(67895); +/* harmony import */ var _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(57323); +/* harmony import */ var _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(64994); +/* harmony import */ var d3__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(20007); +/* harmony import */ var khroma__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(75937); +/* harmony import */ var khroma__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(25582); + + + + + + + + + +// src/diagrams/flowchart/flowDb.ts + +var MERMAID_DOM_ID_PREFIX = "flowchart-"; +var vertexCounter = 0; +var config = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .getConfig2 */ .D7)(); +var vertices = /* @__PURE__ */ new Map(); +var edges = []; +var classes = /* @__PURE__ */ new Map(); +var subGraphs = []; +var subGraphLookup = /* @__PURE__ */ new Map(); +var tooltips = /* @__PURE__ */ new Map(); +var subCount = 0; +var firstGraphFlag = true; +var direction; +var version; +var funs = []; +var sanitizeText = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)((txt) => _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .common_default */ .Y2.sanitizeText(txt, config), "sanitizeText"); +var lookUpDomId = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function(id) { + for (const vertex of vertices.values()) { + if (vertex.id === id) { + return vertex.domId; + } + } + return id; +}, "lookUpDomId"); +var addVertex = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function(id, textObj, type, style, classes2, dir, props = {}) { + if (!id || id.trim().length === 0) { + return; + } + let txt; + let vertex = vertices.get(id); + if (vertex === void 0) { + vertex = { + id, + labelType: "text", + domId: MERMAID_DOM_ID_PREFIX + id + "-" + vertexCounter, + styles: [], + classes: [] + }; + vertices.set(id, vertex); + } + vertexCounter++; + if (textObj !== void 0) { + config = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .getConfig2 */ .D7)(); + txt = sanitizeText(textObj.text.trim()); + vertex.labelType = textObj.type; + if (txt.startsWith('"') && txt.endsWith('"')) { + txt = txt.substring(1, txt.length - 1); + } + vertex.text = txt; + } else { + if (vertex.text === void 0) { + vertex.text = id; + } + } + if (type !== void 0) { + vertex.type = type; + } + if (style !== void 0 && style !== null) { + style.forEach(function(s) { + vertex.styles.push(s); + }); + } + if (classes2 !== void 0 && classes2 !== null) { + classes2.forEach(function(s) { + vertex.classes.push(s); + }); + } + if (dir !== void 0) { + vertex.dir = dir; + } + if (vertex.props === void 0) { + vertex.props = props; + } else if (props !== void 0) { + Object.assign(vertex.props, props); + } +}, "addVertex"); +var addSingleLink = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function(_start, _end, type) { + const start = _start; + const end = _end; + const edge = { start, end, type: void 0, text: "", labelType: "text" }; + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .log */ .Rm.info("abc78 Got edge...", edge); + const linkTextObj = type.text; + if (linkTextObj !== void 0) { + edge.text = sanitizeText(linkTextObj.text.trim()); + if (edge.text.startsWith('"') && edge.text.endsWith('"')) { + edge.text = edge.text.substring(1, edge.text.length - 1); + } + edge.labelType = linkTextObj.type; + } + if (type !== void 0) { + edge.type = type.type; + edge.stroke = type.stroke; + edge.length = type.length > 10 ? 10 : type.length; + } + if (edges.length < (config.maxEdges ?? 500)) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .log */ .Rm.info("Pushing edge..."); + edges.push(edge); + } else { + throw new Error( + `Edge limit exceeded. ${edges.length} edges found, but the limit is ${config.maxEdges}. + +Initialize mermaid with maxEdges set to a higher number to allow more edges. +You cannot set this config via configuration inside the diagram as it is a secure config. +You have to call mermaid.initialize.` + ); + } +}, "addSingleLink"); +var addLink = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function(_start, _end, type) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .log */ .Rm.info("addLink", _start, _end, type); + for (const start of _start) { + for (const end of _end) { + addSingleLink(start, end, type); + } + } +}, "addLink"); +var updateLinkInterpolate = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function(positions, interpolate) { + positions.forEach(function(pos) { + if (pos === "default") { + edges.defaultInterpolate = interpolate; + } else { + edges[pos].interpolate = interpolate; + } + }); +}, "updateLinkInterpolate"); +var updateLink = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function(positions, style) { + positions.forEach(function(pos) { + if (typeof pos === "number" && pos >= edges.length) { + throw new Error( + `The index ${pos} for linkStyle is out of bounds. Valid indices for linkStyle are between 0 and ${edges.length - 1}. (Help: Ensure that the index is within the range of existing edges.)` + ); + } + if (pos === "default") { + edges.defaultStyle = style; + } else { + edges[pos].style = style; + if ((edges[pos]?.style?.length ?? 0) > 0 && !edges[pos]?.style?.some((s) => s?.startsWith("fill"))) { + edges[pos]?.style?.push("fill:none"); + } + } + }); +}, "updateLink"); +var addClass = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function(ids, style) { + ids.split(",").forEach(function(id) { + let classNode = classes.get(id); + if (classNode === void 0) { + classNode = { id, styles: [], textStyles: [] }; + classes.set(id, classNode); + } + if (style !== void 0 && style !== null) { + style.forEach(function(s) { + if (/color/.exec(s)) { + const newStyle = s.replace("fill", "bgFill"); + classNode.textStyles.push(newStyle); + } + classNode.styles.push(s); + }); + } + }); +}, "addClass"); +var setDirection = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function(dir) { + direction = dir; + if (/.*/.exec(direction)) { + direction = "LR"; + } + if (/.*v/.exec(direction)) { + direction = "TB"; + } + if (direction === "TD") { + direction = "TB"; + } +}, "setDirection"); +var setClass = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function(ids, className) { + for (const id of ids.split(",")) { + const vertex = vertices.get(id); + if (vertex) { + vertex.classes.push(className); + } + const subGraph = subGraphLookup.get(id); + if (subGraph) { + subGraph.classes.push(className); + } + } +}, "setClass"); +var setTooltip = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function(ids, tooltip) { + if (tooltip === void 0) { + return; + } + tooltip = sanitizeText(tooltip); + for (const id of ids.split(",")) { + tooltips.set(version === "gen-1" ? lookUpDomId(id) : id, tooltip); + } +}, "setTooltip"); +var setClickFun = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function(id, functionName, functionArgs) { + const domId = lookUpDomId(id); + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .getConfig2 */ .D7)().securityLevel !== "loose") { + return; + } + if (functionName === void 0) { + return; + } + let argList = []; + if (typeof functionArgs === "string") { + argList = functionArgs.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/); + for (let i = 0; i < argList.length; i++) { + let item = argList[i].trim(); + if (item.startsWith('"') && item.endsWith('"')) { + item = item.substr(1, item.length - 2); + } + argList[i] = item; + } + } + if (argList.length === 0) { + argList.push(id); + } + const vertex = vertices.get(id); + if (vertex) { + vertex.haveCallback = true; + funs.push(function() { + const elem = document.querySelector(`[id="${domId}"]`); + if (elem !== null) { + elem.addEventListener( + "click", + function() { + _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_6__/* .utils_default */ ._K.runFunc(functionName, ...argList); + }, + false + ); + } + }); + } +}, "setClickFun"); +var setLink = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function(ids, linkStr, target) { + ids.split(",").forEach(function(id) { + const vertex = vertices.get(id); + if (vertex !== void 0) { + vertex.link = _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_6__/* .utils_default */ ._K.formatUrl(linkStr, config); + vertex.linkTarget = target; + } + }); + setClass(ids, "clickable"); +}, "setLink"); +var getTooltip = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function(id) { + return tooltips.get(id); +}, "getTooltip"); +var setClickEvent = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function(ids, functionName, functionArgs) { + ids.split(",").forEach(function(id) { + setClickFun(id, functionName, functionArgs); + }); + setClass(ids, "clickable"); +}, "setClickEvent"); +var bindFunctions = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function(element) { + funs.forEach(function(fun) { + fun(element); + }); +}, "bindFunctions"); +var getDirection = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function() { + return direction.trim(); +}, "getDirection"); +var getVertices = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function() { + return vertices; +}, "getVertices"); +var getEdges = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function() { + return edges; +}, "getEdges"); +var getClasses = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function() { + return classes; +}, "getClasses"); +var setupToolTips = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function(element) { + let tooltipElem = (0,d3__WEBPACK_IMPORTED_MODULE_8__/* .select */ .Ltv)(".mermaidTooltip"); + if ((tooltipElem._groups || tooltipElem)[0][0] === null) { + tooltipElem = (0,d3__WEBPACK_IMPORTED_MODULE_8__/* .select */ .Ltv)("body").append("div").attr("class", "mermaidTooltip").style("opacity", 0); + } + const svg = (0,d3__WEBPACK_IMPORTED_MODULE_8__/* .select */ .Ltv)(element).select("svg"); + const nodes = svg.selectAll("g.node"); + nodes.on("mouseover", function() { + const el = (0,d3__WEBPACK_IMPORTED_MODULE_8__/* .select */ .Ltv)(this); + const title = el.attr("title"); + if (title === null) { + return; + } + const rect = this?.getBoundingClientRect(); + tooltipElem.transition().duration(200).style("opacity", ".9"); + tooltipElem.text(el.attr("title")).style("left", window.scrollX + rect.left + (rect.right - rect.left) / 2 + "px").style("top", window.scrollY + rect.bottom + "px"); + tooltipElem.html(tooltipElem.html().replace(/<br\/>/g, "
    ")); + el.classed("hover", true); + }).on("mouseout", function() { + tooltipElem.transition().duration(500).style("opacity", 0); + const el = (0,d3__WEBPACK_IMPORTED_MODULE_8__/* .select */ .Ltv)(this); + el.classed("hover", false); + }); +}, "setupToolTips"); +funs.push(setupToolTips); +var clear2 = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function(ver = "gen-1") { + vertices = /* @__PURE__ */ new Map(); + classes = /* @__PURE__ */ new Map(); + edges = []; + funs = [setupToolTips]; + subGraphs = []; + subGraphLookup = /* @__PURE__ */ new Map(); + subCount = 0; + tooltips = /* @__PURE__ */ new Map(); + firstGraphFlag = true; + version = ver; + config = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .getConfig2 */ .D7)(); + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .clear */ .IU)(); +}, "clear"); +var setGen = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)((ver) => { + version = ver || "gen-2"; +}, "setGen"); +var defaultStyle = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function() { + return "fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;"; +}, "defaultStyle"); +var addSubGraph = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function(_id, list, _title) { + let id = _id.text.trim(); + let title = _title.text; + if (_id === _title && /\s/.exec(_title.text)) { + id = void 0; + } + function uniq(a) { + const prims = { boolean: {}, number: {}, string: {} }; + const objs = []; + let dir2; + const nodeList2 = a.filter(function(item) { + const type = typeof item; + if (item.stmt && item.stmt === "dir") { + dir2 = item.value; + return false; + } + if (item.trim() === "") { + return false; + } + if (type in prims) { + return prims[type].hasOwnProperty(item) ? false : prims[type][item] = true; + } else { + return objs.includes(item) ? false : objs.push(item); + } + }); + return { nodeList: nodeList2, dir: dir2 }; + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(uniq, "uniq"); + const { nodeList, dir } = uniq(list.flat()); + if (version === "gen-1") { + for (let i = 0; i < nodeList.length; i++) { + nodeList[i] = lookUpDomId(nodeList[i]); + } + } + id = id ?? "subGraph" + subCount; + title = title || ""; + title = sanitizeText(title); + subCount = subCount + 1; + const subGraph = { + id, + nodes: nodeList, + title: title.trim(), + classes: [], + dir, + labelType: _title.type + }; + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .log */ .Rm.info("Adding", subGraph.id, subGraph.nodes, subGraph.dir); + subGraph.nodes = makeUniq(subGraph, subGraphs).nodes; + subGraphs.push(subGraph); + subGraphLookup.set(id, subGraph); + return id; +}, "addSubGraph"); +var getPosForId = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function(id) { + for (const [i, subGraph] of subGraphs.entries()) { + if (subGraph.id === id) { + return i; + } + } + return -1; +}, "getPosForId"); +var secCount = -1; +var posCrossRef = []; +var indexNodes2 = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function(id, pos) { + const nodes = subGraphs[pos].nodes; + secCount = secCount + 1; + if (secCount > 2e3) { + return { + result: false, + count: 0 + }; + } + posCrossRef[secCount] = pos; + if (subGraphs[pos].id === id) { + return { + result: true, + count: 0 + }; + } + let count = 0; + let posCount = 1; + while (count < nodes.length) { + const childPos = getPosForId(nodes[count]); + if (childPos >= 0) { + const res = indexNodes2(id, childPos); + if (res.result) { + return { + result: true, + count: posCount + res.count + }; + } else { + posCount = posCount + res.count; + } + } + count = count + 1; + } + return { + result: false, + count: posCount + }; +}, "indexNodes2"); +var getDepthFirstPos = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function(pos) { + return posCrossRef[pos]; +}, "getDepthFirstPos"); +var indexNodes = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function() { + secCount = -1; + if (subGraphs.length > 0) { + indexNodes2("none", subGraphs.length - 1); + } +}, "indexNodes"); +var getSubGraphs = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function() { + return subGraphs; +}, "getSubGraphs"); +var firstGraph = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(() => { + if (firstGraphFlag) { + firstGraphFlag = false; + return true; + } + return false; +}, "firstGraph"); +var destructStartLink = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)((_str) => { + let str = _str.trim(); + let type = "arrow_open"; + switch (str[0]) { + case "<": + type = "arrow_point"; + str = str.slice(1); + break; + case "x": + type = "arrow_cross"; + str = str.slice(1); + break; + case "o": + type = "arrow_circle"; + str = str.slice(1); + break; + } + let stroke = "normal"; + if (str.includes("=")) { + stroke = "thick"; + } + if (str.includes(".")) { + stroke = "dotted"; + } + return { type, stroke }; +}, "destructStartLink"); +var countChar = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)((char, str) => { + const length = str.length; + let count = 0; + for (let i = 0; i < length; ++i) { + if (str[i] === char) { + ++count; + } + } + return count; +}, "countChar"); +var destructEndLink = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)((_str) => { + const str = _str.trim(); + let line = str.slice(0, -1); + let type = "arrow_open"; + switch (str.slice(-1)) { + case "x": + type = "arrow_cross"; + if (str.startsWith("x")) { + type = "double_" + type; + line = line.slice(1); + } + break; + case ">": + type = "arrow_point"; + if (str.startsWith("<")) { + type = "double_" + type; + line = line.slice(1); + } + break; + case "o": + type = "arrow_circle"; + if (str.startsWith("o")) { + type = "double_" + type; + line = line.slice(1); + } + break; + } + let stroke = "normal"; + let length = line.length - 1; + if (line.startsWith("=")) { + stroke = "thick"; + } + if (line.startsWith("~")) { + stroke = "invisible"; + } + const dots = countChar(".", line); + if (dots) { + stroke = "dotted"; + length = dots; + } + return { type, stroke, length }; +}, "destructEndLink"); +var destructLink = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)((_str, _startStr) => { + const info = destructEndLink(_str); + let startInfo; + if (_startStr) { + startInfo = destructStartLink(_startStr); + if (startInfo.stroke !== info.stroke) { + return { type: "INVALID", stroke: "INVALID" }; + } + if (startInfo.type === "arrow_open") { + startInfo.type = info.type; + } else { + if (startInfo.type !== info.type) { + return { type: "INVALID", stroke: "INVALID" }; + } + startInfo.type = "double_" + startInfo.type; + } + if (startInfo.type === "double_arrow") { + startInfo.type = "double_arrow_point"; + } + startInfo.length = info.length; + return startInfo; + } + return info; +}, "destructLink"); +var exists = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)((allSgs, _id) => { + for (const sg of allSgs) { + if (sg.nodes.includes(_id)) { + return true; + } + } + return false; +}, "exists"); +var makeUniq = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)((sg, allSubgraphs) => { + const res = []; + sg.nodes.forEach((_id, pos) => { + if (!exists(allSubgraphs, _id)) { + res.push(sg.nodes[pos]); + } + }); + return { nodes: res }; +}, "makeUniq"); +var lex = { + firstGraph +}; +var getTypeFromVertex = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)((vertex) => { + if (vertex.type === "square") { + return "squareRect"; + } + if (vertex.type === "round") { + return "roundedRect"; + } + return vertex.type ?? "squareRect"; +}, "getTypeFromVertex"); +var findNode = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)((nodes, id) => nodes.find((node) => node.id === id), "findNode"); +var destructEdgeType = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)((type) => { + let arrowTypeStart = "none"; + let arrowTypeEnd = "arrow_point"; + switch (type) { + case "arrow_point": + case "arrow_circle": + case "arrow_cross": + arrowTypeEnd = type; + break; + case "double_arrow_point": + case "double_arrow_circle": + case "double_arrow_cross": + arrowTypeStart = type.replace("double_", ""); + arrowTypeEnd = arrowTypeStart; + break; + } + return { arrowTypeStart, arrowTypeEnd }; +}, "destructEdgeType"); +var addNodeFromVertex = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)((vertex, nodes, parentDB, subGraphDB, config2, look) => { + const parentId = parentDB.get(vertex.id); + const isGroup = subGraphDB.get(vertex.id) ?? false; + const node = findNode(nodes, vertex.id); + if (node) { + node.cssStyles = vertex.styles; + node.cssCompiledStyles = getCompiledStyles(vertex.classes); + node.cssClasses = vertex.classes.join(" "); + } else { + nodes.push({ + id: vertex.id, + label: vertex.text, + labelStyle: "", + parentId, + padding: config2.flowchart?.padding || 8, + cssStyles: vertex.styles, + cssCompiledStyles: getCompiledStyles(["default", "node", ...vertex.classes]), + cssClasses: "default " + vertex.classes.join(" "), + shape: getTypeFromVertex(vertex), + dir: vertex.dir, + domId: vertex.domId, + isGroup, + look, + link: vertex.link, + linkTarget: vertex.linkTarget, + tooltip: getTooltip(vertex.id) + }); + } +}, "addNodeFromVertex"); +function getCompiledStyles(classDefs) { + let compiledStyles = []; + for (const customClass of classDefs) { + const cssClass = classes.get(customClass); + if (cssClass?.styles) { + compiledStyles = [...compiledStyles, ...cssClass.styles ?? []].map((s) => s.trim()); + } + if (cssClass?.textStyles) { + compiledStyles = [...compiledStyles, ...cssClass.textStyles ?? []].map((s) => s.trim()); + } + } + return compiledStyles; +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(getCompiledStyles, "getCompiledStyles"); +var getData = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(() => { + const config2 = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .getConfig2 */ .D7)(); + const nodes = []; + const edges2 = []; + const subGraphs2 = getSubGraphs(); + const parentDB = /* @__PURE__ */ new Map(); + const subGraphDB = /* @__PURE__ */ new Map(); + for (let i = subGraphs2.length - 1; i >= 0; i--) { + const subGraph = subGraphs2[i]; + if (subGraph.nodes.length > 0) { + subGraphDB.set(subGraph.id, true); + } + for (const id of subGraph.nodes) { + parentDB.set(id, subGraph.id); + } + } + for (let i = subGraphs2.length - 1; i >= 0; i--) { + const subGraph = subGraphs2[i]; + nodes.push({ + id: subGraph.id, + label: subGraph.title, + labelStyle: "", + parentId: parentDB.get(subGraph.id), + padding: 8, + cssCompiledStyles: getCompiledStyles(subGraph.classes), + cssClasses: subGraph.classes.join(" "), + shape: "rect", + dir: subGraph.dir, + isGroup: true, + look: config2.look + }); + } + const n = getVertices(); + n.forEach((vertex) => { + addNodeFromVertex(vertex, nodes, parentDB, subGraphDB, config2, config2.look || "classic"); + }); + const e = getEdges(); + e.forEach((rawEdge, index) => { + const { arrowTypeStart, arrowTypeEnd } = destructEdgeType(rawEdge.type); + const styles = [...e.defaultStyle ?? []]; + if (rawEdge.style) { + styles.push(...rawEdge.style); + } + const edge = { + id: (0,_chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_6__/* .getEdgeId */ .rY)(rawEdge.start, rawEdge.end, { counter: index, prefix: "L" }), + start: rawEdge.start, + end: rawEdge.end, + type: rawEdge.type ?? "normal", + label: rawEdge.text, + labelpos: "c", + thickness: rawEdge.stroke, + minlen: rawEdge.length, + classes: rawEdge?.stroke === "invisible" ? "" : "edge-thickness-normal edge-pattern-solid flowchart-link", + arrowTypeStart: rawEdge?.stroke === "invisible" ? "none" : arrowTypeStart, + arrowTypeEnd: rawEdge?.stroke === "invisible" ? "none" : arrowTypeEnd, + arrowheadStyle: "fill: #333", + labelStyle: styles, + style: styles, + pattern: rawEdge.stroke, + look: config2.look + }; + edges2.push(edge); + }); + return { nodes, edges: edges2, other: {}, config: config2 }; +}, "getData"); +var flowDb_default = { + defaultConfig: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(() => _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .defaultConfig2 */ .ME.flowchart, "defaultConfig"), + setAccTitle: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .setAccTitle */ .SV, + getAccTitle: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .getAccTitle */ .iN, + getAccDescription: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .getAccDescription */ .m7, + getData, + setAccDescription: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .setAccDescription */ .EI, + addVertex, + lookUpDomId, + addLink, + updateLinkInterpolate, + updateLink, + addClass, + setDirection, + setClass, + setTooltip, + getTooltip, + setClickEvent, + setLink, + bindFunctions, + getDirection, + getVertices, + getEdges, + getClasses, + clear: clear2, + setGen, + defaultStyle, + addSubGraph, + getDepthFirstPos, + indexNodes, + getSubGraphs, + destructLink, + lex, + exists, + makeUniq, + setDiagramTitle: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .setDiagramTitle */ .ke, + getDiagramTitle: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .getDiagramTitle */ .ab +}; + +// src/diagrams/flowchart/flowRenderer-v3-unified.ts + +var getClasses2 = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function(text, diagramObj) { + return diagramObj.db.getClasses(); +}, "getClasses"); +var draw = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(async function(text, id, _version, diag) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .log */ .Rm.info("REF0:"); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .log */ .Rm.info("Drawing state diagram (v2)", id); + const { securityLevel, flowchart: conf, layout } = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .getConfig2 */ .D7)(); + let sandboxElement; + if (securityLevel === "sandbox") { + sandboxElement = (0,d3__WEBPACK_IMPORTED_MODULE_8__/* .select */ .Ltv)("#i" + id); + } + const doc = securityLevel === "sandbox" ? sandboxElement.nodes()[0].contentDocument : document; + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .log */ .Rm.debug("Before getData: "); + const data4Layout = diag.db.getData(); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .log */ .Rm.debug("Data: ", data4Layout); + const svg = (0,_chunk_FUIDI54P_mjs__WEBPACK_IMPORTED_MODULE_0__/* .getDiagramElement */ .A)(id, securityLevel); + const direction2 = getDirection(); + data4Layout.type = diag.type; + data4Layout.layoutAlgorithm = (0,_chunk_T3KDJ7CM_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getRegisteredLayoutAlgorithm */ .q7)(layout); + if (data4Layout.layoutAlgorithm === "dagre" && layout === "elk") { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .log */ .Rm.warn( + "flowchart-elk was moved to an external package in Mermaid v11. Please refer [release notes](https://github.com/mermaid-js/mermaid/releases/tag/v11.0.0) for more details. This diagram will be rendered using `dagre` layout as a fallback." + ); + } + data4Layout.direction = direction2; + data4Layout.nodeSpacing = conf?.nodeSpacing || 50; + data4Layout.rankSpacing = conf?.rankSpacing || 50; + data4Layout.markers = ["point", "circle", "cross"]; + data4Layout.diagramId = id; + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .log */ .Rm.debug("REF1:", data4Layout); + await (0,_chunk_T3KDJ7CM_mjs__WEBPACK_IMPORTED_MODULE_2__/* .render */ .XX)(data4Layout, svg); + const padding = data4Layout.config.flowchart?.diagramPadding ?? 8; + _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_6__/* .utils_default */ ._K.insertTitle( + svg, + "flowchartTitleText", + conf?.titleTopMargin || 0, + diag.db.getDiagramTitle() + ); + (0,_chunk_FUIDI54P_mjs__WEBPACK_IMPORTED_MODULE_0__/* .setupViewPortForSVG */ .P)(svg, padding, "flowchart", conf?.useMaxWidth || false); + for (const vertex of data4Layout.nodes) { + const node = (0,d3__WEBPACK_IMPORTED_MODULE_8__/* .select */ .Ltv)(`#${id} [id="${vertex.id}"]`); + if (!node || !vertex.link) { + continue; + } + const link = doc.createElementNS("http://www.w3.org/2000/svg", "a"); + link.setAttributeNS("http://www.w3.org/2000/svg", "class", vertex.cssClasses); + link.setAttributeNS("http://www.w3.org/2000/svg", "rel", "noopener"); + if (securityLevel === "sandbox") { + link.setAttributeNS("http://www.w3.org/2000/svg", "target", "_top"); + } else if (vertex.linkTarget) { + link.setAttributeNS("http://www.w3.org/2000/svg", "target", vertex.linkTarget); + } + const linkNode = node.insert(function() { + return link; + }, ":first-child"); + const shape = node.select(".label-container"); + if (shape) { + linkNode.append(function() { + return shape.node(); + }); + } + const label = node.select(".label"); + if (label) { + linkNode.append(function() { + return label.node(); + }); + } + } +}, "draw"); +var flowRenderer_v3_unified_default = { + getClasses: getClasses2, + draw +}; + +// src/diagrams/flowchart/parser/flow.jison +var parser = function() { + var o = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function(k, v, o2, l) { + for (o2 = o2 || {}, l = k.length; l--; o2[k[l]] = v) ; + return o2; + }, "o"), $V0 = [1, 4], $V1 = [1, 3], $V2 = [1, 5], $V3 = [1, 8, 9, 10, 11, 27, 34, 36, 38, 42, 58, 81, 82, 83, 84, 85, 86, 99, 102, 103, 106, 108, 111, 112, 113, 118, 119, 120, 121], $V4 = [2, 2], $V5 = [1, 13], $V6 = [1, 14], $V7 = [1, 15], $V8 = [1, 16], $V9 = [1, 23], $Va = [1, 25], $Vb = [1, 26], $Vc = [1, 27], $Vd = [1, 49], $Ve = [1, 48], $Vf = [1, 29], $Vg = [1, 30], $Vh = [1, 31], $Vi = [1, 32], $Vj = [1, 33], $Vk = [1, 44], $Vl = [1, 46], $Vm = [1, 42], $Vn = [1, 47], $Vo = [1, 43], $Vp = [1, 50], $Vq = [1, 45], $Vr = [1, 51], $Vs = [1, 52], $Vt = [1, 34], $Vu = [1, 35], $Vv = [1, 36], $Vw = [1, 37], $Vx = [1, 57], $Vy = [1, 8, 9, 10, 11, 27, 32, 34, 36, 38, 42, 58, 81, 82, 83, 84, 85, 86, 99, 102, 103, 106, 108, 111, 112, 113, 118, 119, 120, 121], $Vz = [1, 61], $VA = [1, 60], $VB = [1, 62], $VC = [8, 9, 11, 73, 75], $VD = [1, 88], $VE = [1, 93], $VF = [1, 92], $VG = [1, 89], $VH = [1, 85], $VI = [1, 91], $VJ = [1, 87], $VK = [1, 94], $VL = [1, 90], $VM = [1, 95], $VN = [1, 86], $VO = [8, 9, 10, 11, 73, 75], $VP = [8, 9, 10, 11, 44, 73, 75], $VQ = [8, 9, 10, 11, 29, 42, 44, 46, 48, 50, 52, 54, 56, 58, 61, 63, 65, 66, 68, 73, 75, 86, 99, 102, 103, 106, 108, 111, 112, 113], $VR = [8, 9, 11, 42, 58, 73, 75, 86, 99, 102, 103, 106, 108, 111, 112, 113], $VS = [42, 58, 86, 99, 102, 103, 106, 108, 111, 112, 113], $VT = [1, 121], $VU = [1, 120], $VV = [1, 128], $VW = [1, 142], $VX = [1, 143], $VY = [1, 144], $VZ = [1, 145], $V_ = [1, 130], $V$ = [1, 132], $V01 = [1, 136], $V11 = [1, 137], $V21 = [1, 138], $V31 = [1, 139], $V41 = [1, 140], $V51 = [1, 141], $V61 = [1, 146], $V71 = [1, 147], $V81 = [1, 126], $V91 = [1, 127], $Va1 = [1, 134], $Vb1 = [1, 129], $Vc1 = [1, 133], $Vd1 = [1, 131], $Ve1 = [8, 9, 10, 11, 27, 32, 34, 36, 38, 42, 58, 81, 82, 83, 84, 85, 86, 99, 102, 103, 106, 108, 111, 112, 113, 118, 119, 120, 121], $Vf1 = [1, 149], $Vg1 = [8, 9, 11], $Vh1 = [8, 9, 10, 11, 14, 42, 58, 86, 102, 103, 106, 108, 111, 112, 113], $Vi1 = [1, 169], $Vj1 = [1, 165], $Vk1 = [1, 166], $Vl1 = [1, 170], $Vm1 = [1, 167], $Vn1 = [1, 168], $Vo1 = [75, 113, 116], $Vp1 = [8, 9, 10, 11, 12, 14, 27, 29, 32, 42, 58, 73, 81, 82, 83, 84, 85, 86, 87, 102, 106, 108, 111, 112, 113], $Vq1 = [10, 103], $Vr1 = [31, 47, 49, 51, 53, 55, 60, 62, 64, 65, 67, 69, 113, 114, 115], $Vs1 = [1, 235], $Vt1 = [1, 233], $Vu1 = [1, 237], $Vv1 = [1, 231], $Vw1 = [1, 232], $Vx1 = [1, 234], $Vy1 = [1, 236], $Vz1 = [1, 238], $VA1 = [1, 255], $VB1 = [8, 9, 11, 103], $VC1 = [8, 9, 10, 11, 58, 81, 102, 103, 106, 107, 108, 109]; + var parser2 = { + trace: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function trace() { + }, "trace"), + yy: {}, + symbols_: { "error": 2, "start": 3, "graphConfig": 4, "document": 5, "line": 6, "statement": 7, "SEMI": 8, "NEWLINE": 9, "SPACE": 10, "EOF": 11, "GRAPH": 12, "NODIR": 13, "DIR": 14, "FirstStmtSeparator": 15, "ending": 16, "endToken": 17, "spaceList": 18, "spaceListNewline": 19, "vertexStatement": 20, "separator": 21, "styleStatement": 22, "linkStyleStatement": 23, "classDefStatement": 24, "classStatement": 25, "clickStatement": 26, "subgraph": 27, "textNoTags": 28, "SQS": 29, "text": 30, "SQE": 31, "end": 32, "direction": 33, "acc_title": 34, "acc_title_value": 35, "acc_descr": 36, "acc_descr_value": 37, "acc_descr_multiline_value": 38, "link": 39, "node": 40, "styledVertex": 41, "AMP": 42, "vertex": 43, "STYLE_SEPARATOR": 44, "idString": 45, "DOUBLECIRCLESTART": 46, "DOUBLECIRCLEEND": 47, "PS": 48, "PE": 49, "(-": 50, "-)": 51, "STADIUMSTART": 52, "STADIUMEND": 53, "SUBROUTINESTART": 54, "SUBROUTINEEND": 55, "VERTEX_WITH_PROPS_START": 56, "NODE_STRING[field]": 57, "COLON": 58, "NODE_STRING[value]": 59, "PIPE": 60, "CYLINDERSTART": 61, "CYLINDEREND": 62, "DIAMOND_START": 63, "DIAMOND_STOP": 64, "TAGEND": 65, "TRAPSTART": 66, "TRAPEND": 67, "INVTRAPSTART": 68, "INVTRAPEND": 69, "linkStatement": 70, "arrowText": 71, "TESTSTR": 72, "START_LINK": 73, "edgeText": 74, "LINK": 75, "edgeTextToken": 76, "STR": 77, "MD_STR": 78, "textToken": 79, "keywords": 80, "STYLE": 81, "LINKSTYLE": 82, "CLASSDEF": 83, "CLASS": 84, "CLICK": 85, "DOWN": 86, "UP": 87, "textNoTagsToken": 88, "stylesOpt": 89, "idString[vertex]": 90, "idString[class]": 91, "CALLBACKNAME": 92, "CALLBACKARGS": 93, "HREF": 94, "LINK_TARGET": 95, "STR[link]": 96, "STR[tooltip]": 97, "alphaNum": 98, "DEFAULT": 99, "numList": 100, "INTERPOLATE": 101, "NUM": 102, "COMMA": 103, "style": 104, "styleComponent": 105, "NODE_STRING": 106, "UNIT": 107, "BRKT": 108, "PCT": 109, "idStringToken": 110, "MINUS": 111, "MULT": 112, "UNICODE_TEXT": 113, "TEXT": 114, "TAGSTART": 115, "EDGE_TEXT": 116, "alphaNumToken": 117, "direction_tb": 118, "direction_bt": 119, "direction_rl": 120, "direction_lr": 121, "$accept": 0, "$end": 1 }, + terminals_: { 2: "error", 8: "SEMI", 9: "NEWLINE", 10: "SPACE", 11: "EOF", 12: "GRAPH", 13: "NODIR", 14: "DIR", 27: "subgraph", 29: "SQS", 31: "SQE", 32: "end", 34: "acc_title", 35: "acc_title_value", 36: "acc_descr", 37: "acc_descr_value", 38: "acc_descr_multiline_value", 42: "AMP", 44: "STYLE_SEPARATOR", 46: "DOUBLECIRCLESTART", 47: "DOUBLECIRCLEEND", 48: "PS", 49: "PE", 50: "(-", 51: "-)", 52: "STADIUMSTART", 53: "STADIUMEND", 54: "SUBROUTINESTART", 55: "SUBROUTINEEND", 56: "VERTEX_WITH_PROPS_START", 57: "NODE_STRING[field]", 58: "COLON", 59: "NODE_STRING[value]", 60: "PIPE", 61: "CYLINDERSTART", 62: "CYLINDEREND", 63: "DIAMOND_START", 64: "DIAMOND_STOP", 65: "TAGEND", 66: "TRAPSTART", 67: "TRAPEND", 68: "INVTRAPSTART", 69: "INVTRAPEND", 72: "TESTSTR", 73: "START_LINK", 75: "LINK", 77: "STR", 78: "MD_STR", 81: "STYLE", 82: "LINKSTYLE", 83: "CLASSDEF", 84: "CLASS", 85: "CLICK", 86: "DOWN", 87: "UP", 90: "idString[vertex]", 91: "idString[class]", 92: "CALLBACKNAME", 93: "CALLBACKARGS", 94: "HREF", 95: "LINK_TARGET", 96: "STR[link]", 97: "STR[tooltip]", 99: "DEFAULT", 101: "INTERPOLATE", 102: "NUM", 103: "COMMA", 106: "NODE_STRING", 107: "UNIT", 108: "BRKT", 109: "PCT", 111: "MINUS", 112: "MULT", 113: "UNICODE_TEXT", 114: "TEXT", 115: "TAGSTART", 116: "EDGE_TEXT", 118: "direction_tb", 119: "direction_bt", 120: "direction_rl", 121: "direction_lr" }, + productions_: [0, [3, 2], [5, 0], [5, 2], [6, 1], [6, 1], [6, 1], [6, 1], [6, 1], [4, 2], [4, 2], [4, 2], [4, 3], [16, 2], [16, 1], [17, 1], [17, 1], [17, 1], [15, 1], [15, 1], [15, 2], [19, 2], [19, 2], [19, 1], [19, 1], [18, 2], [18, 1], [7, 2], [7, 2], [7, 2], [7, 2], [7, 2], [7, 2], [7, 9], [7, 6], [7, 4], [7, 1], [7, 2], [7, 2], [7, 1], [21, 1], [21, 1], [21, 1], [20, 3], [20, 4], [20, 2], [20, 1], [40, 1], [40, 5], [41, 1], [41, 3], [43, 4], [43, 4], [43, 6], [43, 4], [43, 4], [43, 4], [43, 8], [43, 4], [43, 4], [43, 4], [43, 6], [43, 4], [43, 4], [43, 4], [43, 4], [43, 4], [43, 1], [39, 2], [39, 3], [39, 3], [39, 1], [39, 3], [74, 1], [74, 2], [74, 1], [74, 1], [70, 1], [71, 3], [30, 1], [30, 2], [30, 1], [30, 1], [80, 1], [80, 1], [80, 1], [80, 1], [80, 1], [80, 1], [80, 1], [80, 1], [80, 1], [80, 1], [80, 1], [28, 1], [28, 2], [28, 1], [28, 1], [24, 5], [25, 5], [26, 2], [26, 4], [26, 3], [26, 5], [26, 3], [26, 5], [26, 5], [26, 7], [26, 2], [26, 4], [26, 2], [26, 4], [26, 4], [26, 6], [22, 5], [23, 5], [23, 5], [23, 9], [23, 9], [23, 7], [23, 7], [100, 1], [100, 3], [89, 1], [89, 3], [104, 1], [104, 2], [105, 1], [105, 1], [105, 1], [105, 1], [105, 1], [105, 1], [105, 1], [105, 1], [110, 1], [110, 1], [110, 1], [110, 1], [110, 1], [110, 1], [110, 1], [110, 1], [110, 1], [110, 1], [110, 1], [79, 1], [79, 1], [79, 1], [79, 1], [88, 1], [88, 1], [88, 1], [88, 1], [88, 1], [88, 1], [88, 1], [88, 1], [88, 1], [88, 1], [88, 1], [76, 1], [76, 1], [117, 1], [117, 1], [117, 1], [117, 1], [117, 1], [117, 1], [117, 1], [117, 1], [117, 1], [117, 1], [117, 1], [45, 1], [45, 2], [98, 1], [98, 2], [33, 1], [33, 1], [33, 1], [33, 1]], + performAction: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function anonymous(yytext, yyleng, yylineno, yy, yystate, $$, _$) { + var $0 = $$.length - 1; + switch (yystate) { + case 2: + this.$ = []; + break; + case 3: + if (!Array.isArray($$[$0]) || $$[$0].length > 0) { + $$[$0 - 1].push($$[$0]); + } + this.$ = $$[$0 - 1]; + break; + case 4: + case 176: + this.$ = $$[$0]; + break; + case 11: + yy.setDirection("TB"); + this.$ = "TB"; + break; + case 12: + yy.setDirection($$[$0 - 1]); + this.$ = $$[$0 - 1]; + break; + case 27: + this.$ = $$[$0 - 1].nodes; + break; + case 28: + case 29: + case 30: + case 31: + case 32: + this.$ = []; + break; + case 33: + this.$ = yy.addSubGraph($$[$0 - 6], $$[$0 - 1], $$[$0 - 4]); + break; + case 34: + this.$ = yy.addSubGraph($$[$0 - 3], $$[$0 - 1], $$[$0 - 3]); + break; + case 35: + this.$ = yy.addSubGraph(void 0, $$[$0 - 1], void 0); + break; + case 37: + this.$ = $$[$0].trim(); + yy.setAccTitle(this.$); + break; + case 38: + case 39: + this.$ = $$[$0].trim(); + yy.setAccDescription(this.$); + break; + case 43: + yy.addLink($$[$0 - 2].stmt, $$[$0], $$[$0 - 1]); + this.$ = { stmt: $$[$0], nodes: $$[$0].concat($$[$0 - 2].nodes) }; + break; + case 44: + yy.addLink($$[$0 - 3].stmt, $$[$0 - 1], $$[$0 - 2]); + this.$ = { stmt: $$[$0 - 1], nodes: $$[$0 - 1].concat($$[$0 - 3].nodes) }; + break; + case 45: + this.$ = { stmt: $$[$0 - 1], nodes: $$[$0 - 1] }; + break; + case 46: + this.$ = { stmt: $$[$0], nodes: $$[$0] }; + break; + case 47: + this.$ = [$$[$0]]; + break; + case 48: + this.$ = $$[$0 - 4].concat($$[$0]); + break; + case 49: + this.$ = $$[$0]; + break; + case 50: + this.$ = $$[$0 - 2]; + yy.setClass($$[$0 - 2], $$[$0]); + break; + case 51: + this.$ = $$[$0 - 3]; + yy.addVertex($$[$0 - 3], $$[$0 - 1], "square"); + break; + case 52: + this.$ = $$[$0 - 3]; + yy.addVertex($$[$0 - 3], $$[$0 - 1], "doublecircle"); + break; + case 53: + this.$ = $$[$0 - 5]; + yy.addVertex($$[$0 - 5], $$[$0 - 2], "circle"); + break; + case 54: + this.$ = $$[$0 - 3]; + yy.addVertex($$[$0 - 3], $$[$0 - 1], "ellipse"); + break; + case 55: + this.$ = $$[$0 - 3]; + yy.addVertex($$[$0 - 3], $$[$0 - 1], "stadium"); + break; + case 56: + this.$ = $$[$0 - 3]; + yy.addVertex($$[$0 - 3], $$[$0 - 1], "subroutine"); + break; + case 57: + this.$ = $$[$0 - 7]; + yy.addVertex($$[$0 - 7], $$[$0 - 1], "rect", void 0, void 0, void 0, Object.fromEntries([[$$[$0 - 5], $$[$0 - 3]]])); + break; + case 58: + this.$ = $$[$0 - 3]; + yy.addVertex($$[$0 - 3], $$[$0 - 1], "cylinder"); + break; + case 59: + this.$ = $$[$0 - 3]; + yy.addVertex($$[$0 - 3], $$[$0 - 1], "round"); + break; + case 60: + this.$ = $$[$0 - 3]; + yy.addVertex($$[$0 - 3], $$[$0 - 1], "diamond"); + break; + case 61: + this.$ = $$[$0 - 5]; + yy.addVertex($$[$0 - 5], $$[$0 - 2], "hexagon"); + break; + case 62: + this.$ = $$[$0 - 3]; + yy.addVertex($$[$0 - 3], $$[$0 - 1], "odd"); + break; + case 63: + this.$ = $$[$0 - 3]; + yy.addVertex($$[$0 - 3], $$[$0 - 1], "trapezoid"); + break; + case 64: + this.$ = $$[$0 - 3]; + yy.addVertex($$[$0 - 3], $$[$0 - 1], "inv_trapezoid"); + break; + case 65: + this.$ = $$[$0 - 3]; + yy.addVertex($$[$0 - 3], $$[$0 - 1], "lean_right"); + break; + case 66: + this.$ = $$[$0 - 3]; + yy.addVertex($$[$0 - 3], $$[$0 - 1], "lean_left"); + break; + case 67: + this.$ = $$[$0]; + yy.addVertex($$[$0]); + break; + case 68: + $$[$0 - 1].text = $$[$0]; + this.$ = $$[$0 - 1]; + break; + case 69: + case 70: + $$[$0 - 2].text = $$[$0 - 1]; + this.$ = $$[$0 - 2]; + break; + case 71: + this.$ = $$[$0]; + break; + case 72: + var inf = yy.destructLink($$[$0], $$[$0 - 2]); + this.$ = { "type": inf.type, "stroke": inf.stroke, "length": inf.length, "text": $$[$0 - 1] }; + break; + case 73: + this.$ = { text: $$[$0], type: "text" }; + break; + case 74: + this.$ = { text: $$[$0 - 1].text + "" + $$[$0], type: $$[$0 - 1].type }; + break; + case 75: + this.$ = { text: $$[$0], type: "string" }; + break; + case 76: + this.$ = { text: $$[$0], type: "markdown" }; + break; + case 77: + var inf = yy.destructLink($$[$0]); + this.$ = { "type": inf.type, "stroke": inf.stroke, "length": inf.length }; + break; + case 78: + this.$ = $$[$0 - 1]; + break; + case 79: + this.$ = { text: $$[$0], type: "text" }; + break; + case 80: + this.$ = { text: $$[$0 - 1].text + "" + $$[$0], type: $$[$0 - 1].type }; + break; + case 81: + this.$ = { text: $$[$0], type: "string" }; + break; + case 82: + case 97: + this.$ = { text: $$[$0], type: "markdown" }; + break; + case 94: + this.$ = { text: $$[$0], type: "text" }; + break; + case 95: + this.$ = { text: $$[$0 - 1].text + "" + $$[$0], type: $$[$0 - 1].type }; + break; + case 96: + this.$ = { text: $$[$0], type: "text" }; + break; + case 98: + this.$ = $$[$0 - 4]; + yy.addClass($$[$0 - 2], $$[$0]); + break; + case 99: + this.$ = $$[$0 - 4]; + yy.setClass($$[$0 - 2], $$[$0]); + break; + case 100: + case 108: + this.$ = $$[$0 - 1]; + yy.setClickEvent($$[$0 - 1], $$[$0]); + break; + case 101: + case 109: + this.$ = $$[$0 - 3]; + yy.setClickEvent($$[$0 - 3], $$[$0 - 2]); + yy.setTooltip($$[$0 - 3], $$[$0]); + break; + case 102: + this.$ = $$[$0 - 2]; + yy.setClickEvent($$[$0 - 2], $$[$0 - 1], $$[$0]); + break; + case 103: + this.$ = $$[$0 - 4]; + yy.setClickEvent($$[$0 - 4], $$[$0 - 3], $$[$0 - 2]); + yy.setTooltip($$[$0 - 4], $$[$0]); + break; + case 104: + this.$ = $$[$0 - 2]; + yy.setLink($$[$0 - 2], $$[$0]); + break; + case 105: + this.$ = $$[$0 - 4]; + yy.setLink($$[$0 - 4], $$[$0 - 2]); + yy.setTooltip($$[$0 - 4], $$[$0]); + break; + case 106: + this.$ = $$[$0 - 4]; + yy.setLink($$[$0 - 4], $$[$0 - 2], $$[$0]); + break; + case 107: + this.$ = $$[$0 - 6]; + yy.setLink($$[$0 - 6], $$[$0 - 4], $$[$0]); + yy.setTooltip($$[$0 - 6], $$[$0 - 2]); + break; + case 110: + this.$ = $$[$0 - 1]; + yy.setLink($$[$0 - 1], $$[$0]); + break; + case 111: + this.$ = $$[$0 - 3]; + yy.setLink($$[$0 - 3], $$[$0 - 2]); + yy.setTooltip($$[$0 - 3], $$[$0]); + break; + case 112: + this.$ = $$[$0 - 3]; + yy.setLink($$[$0 - 3], $$[$0 - 2], $$[$0]); + break; + case 113: + this.$ = $$[$0 - 5]; + yy.setLink($$[$0 - 5], $$[$0 - 4], $$[$0]); + yy.setTooltip($$[$0 - 5], $$[$0 - 2]); + break; + case 114: + this.$ = $$[$0 - 4]; + yy.addVertex($$[$0 - 2], void 0, void 0, $$[$0]); + break; + case 115: + this.$ = $$[$0 - 4]; + yy.updateLink([$$[$0 - 2]], $$[$0]); + break; + case 116: + this.$ = $$[$0 - 4]; + yy.updateLink($$[$0 - 2], $$[$0]); + break; + case 117: + this.$ = $$[$0 - 8]; + yy.updateLinkInterpolate([$$[$0 - 6]], $$[$0 - 2]); + yy.updateLink([$$[$0 - 6]], $$[$0]); + break; + case 118: + this.$ = $$[$0 - 8]; + yy.updateLinkInterpolate($$[$0 - 6], $$[$0 - 2]); + yy.updateLink($$[$0 - 6], $$[$0]); + break; + case 119: + this.$ = $$[$0 - 6]; + yy.updateLinkInterpolate([$$[$0 - 4]], $$[$0]); + break; + case 120: + this.$ = $$[$0 - 6]; + yy.updateLinkInterpolate($$[$0 - 4], $$[$0]); + break; + case 121: + case 123: + this.$ = [$$[$0]]; + break; + case 122: + case 124: + $$[$0 - 2].push($$[$0]); + this.$ = $$[$0 - 2]; + break; + case 126: + this.$ = $$[$0 - 1] + $$[$0]; + break; + case 174: + this.$ = $$[$0]; + break; + case 175: + this.$ = $$[$0 - 1] + "" + $$[$0]; + break; + case 177: + this.$ = $$[$0 - 1] + "" + $$[$0]; + break; + case 178: + this.$ = { stmt: "dir", value: "TB" }; + break; + case 179: + this.$ = { stmt: "dir", value: "BT" }; + break; + case 180: + this.$ = { stmt: "dir", value: "RL" }; + break; + case 181: + this.$ = { stmt: "dir", value: "LR" }; + break; + } + }, "anonymous"), + table: [{ 3: 1, 4: 2, 9: $V0, 10: $V1, 12: $V2 }, { 1: [3] }, o($V3, $V4, { 5: 6 }), { 4: 7, 9: $V0, 10: $V1, 12: $V2 }, { 4: 8, 9: $V0, 10: $V1, 12: $V2 }, { 13: [1, 9], 14: [1, 10] }, { 1: [2, 1], 6: 11, 7: 12, 8: $V5, 9: $V6, 10: $V7, 11: $V8, 20: 17, 22: 18, 23: 19, 24: 20, 25: 21, 26: 22, 27: $V9, 33: 24, 34: $Va, 36: $Vb, 38: $Vc, 40: 28, 41: 38, 42: $Vd, 43: 39, 45: 40, 58: $Ve, 81: $Vf, 82: $Vg, 83: $Vh, 84: $Vi, 85: $Vj, 86: $Vk, 99: $Vl, 102: $Vm, 103: $Vn, 106: $Vo, 108: $Vp, 110: 41, 111: $Vq, 112: $Vr, 113: $Vs, 118: $Vt, 119: $Vu, 120: $Vv, 121: $Vw }, o($V3, [2, 9]), o($V3, [2, 10]), o($V3, [2, 11]), { 8: [1, 54], 9: [1, 55], 10: $Vx, 15: 53, 18: 56 }, o($Vy, [2, 3]), o($Vy, [2, 4]), o($Vy, [2, 5]), o($Vy, [2, 6]), o($Vy, [2, 7]), o($Vy, [2, 8]), { 8: $Vz, 9: $VA, 11: $VB, 21: 58, 39: 59, 70: 63, 73: [1, 64], 75: [1, 65] }, { 8: $Vz, 9: $VA, 11: $VB, 21: 66 }, { 8: $Vz, 9: $VA, 11: $VB, 21: 67 }, { 8: $Vz, 9: $VA, 11: $VB, 21: 68 }, { 8: $Vz, 9: $VA, 11: $VB, 21: 69 }, { 8: $Vz, 9: $VA, 11: $VB, 21: 70 }, { 8: $Vz, 9: $VA, 10: [1, 71], 11: $VB, 21: 72 }, o($Vy, [2, 36]), { 35: [1, 73] }, { 37: [1, 74] }, o($Vy, [2, 39]), o($VC, [2, 46], { 18: 75, 10: $Vx }), { 10: [1, 76] }, { 10: [1, 77] }, { 10: [1, 78] }, { 10: [1, 79] }, { 14: $VD, 42: $VE, 58: $VF, 77: [1, 83], 86: $VG, 92: [1, 80], 94: [1, 81], 98: 82, 102: $VH, 103: $VI, 106: $VJ, 108: $VK, 111: $VL, 112: $VM, 113: $VN, 117: 84 }, o($Vy, [2, 178]), o($Vy, [2, 179]), o($Vy, [2, 180]), o($Vy, [2, 181]), o($VO, [2, 47]), o($VO, [2, 49], { 44: [1, 96] }), o($VP, [2, 67], { 110: 109, 29: [1, 97], 42: $Vd, 46: [1, 98], 48: [1, 99], 50: [1, 100], 52: [1, 101], 54: [1, 102], 56: [1, 103], 58: $Ve, 61: [1, 104], 63: [1, 105], 65: [1, 106], 66: [1, 107], 68: [1, 108], 86: $Vk, 99: $Vl, 102: $Vm, 103: $Vn, 106: $Vo, 108: $Vp, 111: $Vq, 112: $Vr, 113: $Vs }), o($VQ, [2, 174]), o($VQ, [2, 135]), o($VQ, [2, 136]), o($VQ, [2, 137]), o($VQ, [2, 138]), o($VQ, [2, 139]), o($VQ, [2, 140]), o($VQ, [2, 141]), o($VQ, [2, 142]), o($VQ, [2, 143]), o($VQ, [2, 144]), o($VQ, [2, 145]), o($V3, [2, 12]), o($V3, [2, 18]), o($V3, [2, 19]), { 9: [1, 110] }, o($VR, [2, 26], { 18: 111, 10: $Vx }), o($Vy, [2, 27]), { 40: 112, 41: 38, 42: $Vd, 43: 39, 45: 40, 58: $Ve, 86: $Vk, 99: $Vl, 102: $Vm, 103: $Vn, 106: $Vo, 108: $Vp, 110: 41, 111: $Vq, 112: $Vr, 113: $Vs }, o($Vy, [2, 40]), o($Vy, [2, 41]), o($Vy, [2, 42]), o($VS, [2, 71], { 71: 113, 60: [1, 115], 72: [1, 114] }), { 74: 116, 76: 117, 77: [1, 118], 78: [1, 119], 113: $VT, 116: $VU }, o([42, 58, 60, 72, 86, 99, 102, 103, 106, 108, 111, 112, 113], [2, 77]), o($Vy, [2, 28]), o($Vy, [2, 29]), o($Vy, [2, 30]), o($Vy, [2, 31]), o($Vy, [2, 32]), { 10: $VV, 12: $VW, 14: $VX, 27: $VY, 28: 122, 32: $VZ, 42: $V_, 58: $V$, 73: $V01, 77: [1, 124], 78: [1, 125], 80: 135, 81: $V11, 82: $V21, 83: $V31, 84: $V41, 85: $V51, 86: $V61, 87: $V71, 88: 123, 102: $V81, 106: $V91, 108: $Va1, 111: $Vb1, 112: $Vc1, 113: $Vd1 }, o($Ve1, $V4, { 5: 148 }), o($Vy, [2, 37]), o($Vy, [2, 38]), o($VC, [2, 45], { 42: $Vf1 }), { 42: $Vd, 45: 150, 58: $Ve, 86: $Vk, 99: $Vl, 102: $Vm, 103: $Vn, 106: $Vo, 108: $Vp, 110: 41, 111: $Vq, 112: $Vr, 113: $Vs }, { 99: [1, 151], 100: 152, 102: [1, 153] }, { 42: $Vd, 45: 154, 58: $Ve, 86: $Vk, 99: $Vl, 102: $Vm, 103: $Vn, 106: $Vo, 108: $Vp, 110: 41, 111: $Vq, 112: $Vr, 113: $Vs }, { 42: $Vd, 45: 155, 58: $Ve, 86: $Vk, 99: $Vl, 102: $Vm, 103: $Vn, 106: $Vo, 108: $Vp, 110: 41, 111: $Vq, 112: $Vr, 113: $Vs }, o($Vg1, [2, 100], { 10: [1, 156], 93: [1, 157] }), { 77: [1, 158] }, o($Vg1, [2, 108], { 117: 160, 10: [1, 159], 14: $VD, 42: $VE, 58: $VF, 86: $VG, 102: $VH, 103: $VI, 106: $VJ, 108: $VK, 111: $VL, 112: $VM, 113: $VN }), o($Vg1, [2, 110], { 10: [1, 161] }), o($Vh1, [2, 176]), o($Vh1, [2, 163]), o($Vh1, [2, 164]), o($Vh1, [2, 165]), o($Vh1, [2, 166]), o($Vh1, [2, 167]), o($Vh1, [2, 168]), o($Vh1, [2, 169]), o($Vh1, [2, 170]), o($Vh1, [2, 171]), o($Vh1, [2, 172]), o($Vh1, [2, 173]), { 42: $Vd, 45: 162, 58: $Ve, 86: $Vk, 99: $Vl, 102: $Vm, 103: $Vn, 106: $Vo, 108: $Vp, 110: 41, 111: $Vq, 112: $Vr, 113: $Vs }, { 30: 163, 65: $Vi1, 77: $Vj1, 78: $Vk1, 79: 164, 113: $Vl1, 114: $Vm1, 115: $Vn1 }, { 30: 171, 65: $Vi1, 77: $Vj1, 78: $Vk1, 79: 164, 113: $Vl1, 114: $Vm1, 115: $Vn1 }, { 30: 173, 48: [1, 172], 65: $Vi1, 77: $Vj1, 78: $Vk1, 79: 164, 113: $Vl1, 114: $Vm1, 115: $Vn1 }, { 30: 174, 65: $Vi1, 77: $Vj1, 78: $Vk1, 79: 164, 113: $Vl1, 114: $Vm1, 115: $Vn1 }, { 30: 175, 65: $Vi1, 77: $Vj1, 78: $Vk1, 79: 164, 113: $Vl1, 114: $Vm1, 115: $Vn1 }, { 30: 176, 65: $Vi1, 77: $Vj1, 78: $Vk1, 79: 164, 113: $Vl1, 114: $Vm1, 115: $Vn1 }, { 106: [1, 177] }, { 30: 178, 65: $Vi1, 77: $Vj1, 78: $Vk1, 79: 164, 113: $Vl1, 114: $Vm1, 115: $Vn1 }, { 30: 179, 63: [1, 180], 65: $Vi1, 77: $Vj1, 78: $Vk1, 79: 164, 113: $Vl1, 114: $Vm1, 115: $Vn1 }, { 30: 181, 65: $Vi1, 77: $Vj1, 78: $Vk1, 79: 164, 113: $Vl1, 114: $Vm1, 115: $Vn1 }, { 30: 182, 65: $Vi1, 77: $Vj1, 78: $Vk1, 79: 164, 113: $Vl1, 114: $Vm1, 115: $Vn1 }, { 30: 183, 65: $Vi1, 77: $Vj1, 78: $Vk1, 79: 164, 113: $Vl1, 114: $Vm1, 115: $Vn1 }, o($VQ, [2, 175]), o($V3, [2, 20]), o($VR, [2, 25]), o($VC, [2, 43], { 18: 184, 10: $Vx }), o($VS, [2, 68], { 10: [1, 185] }), { 10: [1, 186] }, { 30: 187, 65: $Vi1, 77: $Vj1, 78: $Vk1, 79: 164, 113: $Vl1, 114: $Vm1, 115: $Vn1 }, { 75: [1, 188], 76: 189, 113: $VT, 116: $VU }, o($Vo1, [2, 73]), o($Vo1, [2, 75]), o($Vo1, [2, 76]), o($Vo1, [2, 161]), o($Vo1, [2, 162]), { 8: $Vz, 9: $VA, 10: $VV, 11: $VB, 12: $VW, 14: $VX, 21: 191, 27: $VY, 29: [1, 190], 32: $VZ, 42: $V_, 58: $V$, 73: $V01, 80: 135, 81: $V11, 82: $V21, 83: $V31, 84: $V41, 85: $V51, 86: $V61, 87: $V71, 88: 192, 102: $V81, 106: $V91, 108: $Va1, 111: $Vb1, 112: $Vc1, 113: $Vd1 }, o($Vp1, [2, 94]), o($Vp1, [2, 96]), o($Vp1, [2, 97]), o($Vp1, [2, 150]), o($Vp1, [2, 151]), o($Vp1, [2, 152]), o($Vp1, [2, 153]), o($Vp1, [2, 154]), o($Vp1, [2, 155]), o($Vp1, [2, 156]), o($Vp1, [2, 157]), o($Vp1, [2, 158]), o($Vp1, [2, 159]), o($Vp1, [2, 160]), o($Vp1, [2, 83]), o($Vp1, [2, 84]), o($Vp1, [2, 85]), o($Vp1, [2, 86]), o($Vp1, [2, 87]), o($Vp1, [2, 88]), o($Vp1, [2, 89]), o($Vp1, [2, 90]), o($Vp1, [2, 91]), o($Vp1, [2, 92]), o($Vp1, [2, 93]), { 6: 11, 7: 12, 8: $V5, 9: $V6, 10: $V7, 11: $V8, 20: 17, 22: 18, 23: 19, 24: 20, 25: 21, 26: 22, 27: $V9, 32: [1, 193], 33: 24, 34: $Va, 36: $Vb, 38: $Vc, 40: 28, 41: 38, 42: $Vd, 43: 39, 45: 40, 58: $Ve, 81: $Vf, 82: $Vg, 83: $Vh, 84: $Vi, 85: $Vj, 86: $Vk, 99: $Vl, 102: $Vm, 103: $Vn, 106: $Vo, 108: $Vp, 110: 41, 111: $Vq, 112: $Vr, 113: $Vs, 118: $Vt, 119: $Vu, 120: $Vv, 121: $Vw }, { 10: $Vx, 18: 194 }, { 10: [1, 195], 42: $Vd, 58: $Ve, 86: $Vk, 99: $Vl, 102: $Vm, 103: $Vn, 106: $Vo, 108: $Vp, 110: 109, 111: $Vq, 112: $Vr, 113: $Vs }, { 10: [1, 196] }, { 10: [1, 197], 103: [1, 198] }, o($Vq1, [2, 121]), { 10: [1, 199], 42: $Vd, 58: $Ve, 86: $Vk, 99: $Vl, 102: $Vm, 103: $Vn, 106: $Vo, 108: $Vp, 110: 109, 111: $Vq, 112: $Vr, 113: $Vs }, { 10: [1, 200], 42: $Vd, 58: $Ve, 86: $Vk, 99: $Vl, 102: $Vm, 103: $Vn, 106: $Vo, 108: $Vp, 110: 109, 111: $Vq, 112: $Vr, 113: $Vs }, { 77: [1, 201] }, o($Vg1, [2, 102], { 10: [1, 202] }), o($Vg1, [2, 104], { 10: [1, 203] }), { 77: [1, 204] }, o($Vh1, [2, 177]), { 77: [1, 205], 95: [1, 206] }, o($VO, [2, 50], { 110: 109, 42: $Vd, 58: $Ve, 86: $Vk, 99: $Vl, 102: $Vm, 103: $Vn, 106: $Vo, 108: $Vp, 111: $Vq, 112: $Vr, 113: $Vs }), { 31: [1, 207], 65: $Vi1, 79: 208, 113: $Vl1, 114: $Vm1, 115: $Vn1 }, o($Vr1, [2, 79]), o($Vr1, [2, 81]), o($Vr1, [2, 82]), o($Vr1, [2, 146]), o($Vr1, [2, 147]), o($Vr1, [2, 148]), o($Vr1, [2, 149]), { 47: [1, 209], 65: $Vi1, 79: 208, 113: $Vl1, 114: $Vm1, 115: $Vn1 }, { 30: 210, 65: $Vi1, 77: $Vj1, 78: $Vk1, 79: 164, 113: $Vl1, 114: $Vm1, 115: $Vn1 }, { 49: [1, 211], 65: $Vi1, 79: 208, 113: $Vl1, 114: $Vm1, 115: $Vn1 }, { 51: [1, 212], 65: $Vi1, 79: 208, 113: $Vl1, 114: $Vm1, 115: $Vn1 }, { 53: [1, 213], 65: $Vi1, 79: 208, 113: $Vl1, 114: $Vm1, 115: $Vn1 }, { 55: [1, 214], 65: $Vi1, 79: 208, 113: $Vl1, 114: $Vm1, 115: $Vn1 }, { 58: [1, 215] }, { 62: [1, 216], 65: $Vi1, 79: 208, 113: $Vl1, 114: $Vm1, 115: $Vn1 }, { 64: [1, 217], 65: $Vi1, 79: 208, 113: $Vl1, 114: $Vm1, 115: $Vn1 }, { 30: 218, 65: $Vi1, 77: $Vj1, 78: $Vk1, 79: 164, 113: $Vl1, 114: $Vm1, 115: $Vn1 }, { 31: [1, 219], 65: $Vi1, 79: 208, 113: $Vl1, 114: $Vm1, 115: $Vn1 }, { 65: $Vi1, 67: [1, 220], 69: [1, 221], 79: 208, 113: $Vl1, 114: $Vm1, 115: $Vn1 }, { 65: $Vi1, 67: [1, 223], 69: [1, 222], 79: 208, 113: $Vl1, 114: $Vm1, 115: $Vn1 }, o($VC, [2, 44], { 42: $Vf1 }), o($VS, [2, 70]), o($VS, [2, 69]), { 60: [1, 224], 65: $Vi1, 79: 208, 113: $Vl1, 114: $Vm1, 115: $Vn1 }, o($VS, [2, 72]), o($Vo1, [2, 74]), { 30: 225, 65: $Vi1, 77: $Vj1, 78: $Vk1, 79: 164, 113: $Vl1, 114: $Vm1, 115: $Vn1 }, o($Ve1, $V4, { 5: 226 }), o($Vp1, [2, 95]), o($Vy, [2, 35]), { 41: 227, 42: $Vd, 43: 39, 45: 40, 58: $Ve, 86: $Vk, 99: $Vl, 102: $Vm, 103: $Vn, 106: $Vo, 108: $Vp, 110: 41, 111: $Vq, 112: $Vr, 113: $Vs }, { 10: $Vs1, 58: $Vt1, 81: $Vu1, 89: 228, 102: $Vv1, 104: 229, 105: 230, 106: $Vw1, 107: $Vx1, 108: $Vy1, 109: $Vz1 }, { 10: $Vs1, 58: $Vt1, 81: $Vu1, 89: 239, 101: [1, 240], 102: $Vv1, 104: 229, 105: 230, 106: $Vw1, 107: $Vx1, 108: $Vy1, 109: $Vz1 }, { 10: $Vs1, 58: $Vt1, 81: $Vu1, 89: 241, 101: [1, 242], 102: $Vv1, 104: 229, 105: 230, 106: $Vw1, 107: $Vx1, 108: $Vy1, 109: $Vz1 }, { 102: [1, 243] }, { 10: $Vs1, 58: $Vt1, 81: $Vu1, 89: 244, 102: $Vv1, 104: 229, 105: 230, 106: $Vw1, 107: $Vx1, 108: $Vy1, 109: $Vz1 }, { 42: $Vd, 45: 245, 58: $Ve, 86: $Vk, 99: $Vl, 102: $Vm, 103: $Vn, 106: $Vo, 108: $Vp, 110: 41, 111: $Vq, 112: $Vr, 113: $Vs }, o($Vg1, [2, 101]), { 77: [1, 246] }, { 77: [1, 247], 95: [1, 248] }, o($Vg1, [2, 109]), o($Vg1, [2, 111], { 10: [1, 249] }), o($Vg1, [2, 112]), o($VP, [2, 51]), o($Vr1, [2, 80]), o($VP, [2, 52]), { 49: [1, 250], 65: $Vi1, 79: 208, 113: $Vl1, 114: $Vm1, 115: $Vn1 }, o($VP, [2, 59]), o($VP, [2, 54]), o($VP, [2, 55]), o($VP, [2, 56]), { 106: [1, 251] }, o($VP, [2, 58]), o($VP, [2, 60]), { 64: [1, 252], 65: $Vi1, 79: 208, 113: $Vl1, 114: $Vm1, 115: $Vn1 }, o($VP, [2, 62]), o($VP, [2, 63]), o($VP, [2, 65]), o($VP, [2, 64]), o($VP, [2, 66]), o([10, 42, 58, 86, 99, 102, 103, 106, 108, 111, 112, 113], [2, 78]), { 31: [1, 253], 65: $Vi1, 79: 208, 113: $Vl1, 114: $Vm1, 115: $Vn1 }, { 6: 11, 7: 12, 8: $V5, 9: $V6, 10: $V7, 11: $V8, 20: 17, 22: 18, 23: 19, 24: 20, 25: 21, 26: 22, 27: $V9, 32: [1, 254], 33: 24, 34: $Va, 36: $Vb, 38: $Vc, 40: 28, 41: 38, 42: $Vd, 43: 39, 45: 40, 58: $Ve, 81: $Vf, 82: $Vg, 83: $Vh, 84: $Vi, 85: $Vj, 86: $Vk, 99: $Vl, 102: $Vm, 103: $Vn, 106: $Vo, 108: $Vp, 110: 41, 111: $Vq, 112: $Vr, 113: $Vs, 118: $Vt, 119: $Vu, 120: $Vv, 121: $Vw }, o($VO, [2, 48]), o($Vg1, [2, 114], { 103: $VA1 }), o($VB1, [2, 123], { 105: 256, 10: $Vs1, 58: $Vt1, 81: $Vu1, 102: $Vv1, 106: $Vw1, 107: $Vx1, 108: $Vy1, 109: $Vz1 }), o($VC1, [2, 125]), o($VC1, [2, 127]), o($VC1, [2, 128]), o($VC1, [2, 129]), o($VC1, [2, 130]), o($VC1, [2, 131]), o($VC1, [2, 132]), o($VC1, [2, 133]), o($VC1, [2, 134]), o($Vg1, [2, 115], { 103: $VA1 }), { 10: [1, 257] }, o($Vg1, [2, 116], { 103: $VA1 }), { 10: [1, 258] }, o($Vq1, [2, 122]), o($Vg1, [2, 98], { 103: $VA1 }), o($Vg1, [2, 99], { 110: 109, 42: $Vd, 58: $Ve, 86: $Vk, 99: $Vl, 102: $Vm, 103: $Vn, 106: $Vo, 108: $Vp, 111: $Vq, 112: $Vr, 113: $Vs }), o($Vg1, [2, 103]), o($Vg1, [2, 105], { 10: [1, 259] }), o($Vg1, [2, 106]), { 95: [1, 260] }, { 49: [1, 261] }, { 60: [1, 262] }, { 64: [1, 263] }, { 8: $Vz, 9: $VA, 11: $VB, 21: 264 }, o($Vy, [2, 34]), { 10: $Vs1, 58: $Vt1, 81: $Vu1, 102: $Vv1, 104: 265, 105: 230, 106: $Vw1, 107: $Vx1, 108: $Vy1, 109: $Vz1 }, o($VC1, [2, 126]), { 14: $VD, 42: $VE, 58: $VF, 86: $VG, 98: 266, 102: $VH, 103: $VI, 106: $VJ, 108: $VK, 111: $VL, 112: $VM, 113: $VN, 117: 84 }, { 14: $VD, 42: $VE, 58: $VF, 86: $VG, 98: 267, 102: $VH, 103: $VI, 106: $VJ, 108: $VK, 111: $VL, 112: $VM, 113: $VN, 117: 84 }, { 95: [1, 268] }, o($Vg1, [2, 113]), o($VP, [2, 53]), { 30: 269, 65: $Vi1, 77: $Vj1, 78: $Vk1, 79: 164, 113: $Vl1, 114: $Vm1, 115: $Vn1 }, o($VP, [2, 61]), o($Ve1, $V4, { 5: 270 }), o($VB1, [2, 124], { 105: 256, 10: $Vs1, 58: $Vt1, 81: $Vu1, 102: $Vv1, 106: $Vw1, 107: $Vx1, 108: $Vy1, 109: $Vz1 }), o($Vg1, [2, 119], { 117: 160, 10: [1, 271], 14: $VD, 42: $VE, 58: $VF, 86: $VG, 102: $VH, 103: $VI, 106: $VJ, 108: $VK, 111: $VL, 112: $VM, 113: $VN }), o($Vg1, [2, 120], { 117: 160, 10: [1, 272], 14: $VD, 42: $VE, 58: $VF, 86: $VG, 102: $VH, 103: $VI, 106: $VJ, 108: $VK, 111: $VL, 112: $VM, 113: $VN }), o($Vg1, [2, 107]), { 31: [1, 273], 65: $Vi1, 79: 208, 113: $Vl1, 114: $Vm1, 115: $Vn1 }, { 6: 11, 7: 12, 8: $V5, 9: $V6, 10: $V7, 11: $V8, 20: 17, 22: 18, 23: 19, 24: 20, 25: 21, 26: 22, 27: $V9, 32: [1, 274], 33: 24, 34: $Va, 36: $Vb, 38: $Vc, 40: 28, 41: 38, 42: $Vd, 43: 39, 45: 40, 58: $Ve, 81: $Vf, 82: $Vg, 83: $Vh, 84: $Vi, 85: $Vj, 86: $Vk, 99: $Vl, 102: $Vm, 103: $Vn, 106: $Vo, 108: $Vp, 110: 41, 111: $Vq, 112: $Vr, 113: $Vs, 118: $Vt, 119: $Vu, 120: $Vv, 121: $Vw }, { 10: $Vs1, 58: $Vt1, 81: $Vu1, 89: 275, 102: $Vv1, 104: 229, 105: 230, 106: $Vw1, 107: $Vx1, 108: $Vy1, 109: $Vz1 }, { 10: $Vs1, 58: $Vt1, 81: $Vu1, 89: 276, 102: $Vv1, 104: 229, 105: 230, 106: $Vw1, 107: $Vx1, 108: $Vy1, 109: $Vz1 }, o($VP, [2, 57]), o($Vy, [2, 33]), o($Vg1, [2, 117], { 103: $VA1 }), o($Vg1, [2, 118], { 103: $VA1 })], + defaultActions: {}, + parseError: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function parseError(str, hash) { + if (hash.recoverable) { + this.trace(str); + } else { + var error = new Error(str); + error.hash = hash; + throw error; + } + }, "parseError"), + parse: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function parse(input) { + var self = this, stack = [0], tstack = [], vstack = [null], lstack = [], table = this.table, yytext = "", yylineno = 0, yyleng = 0, recovering = 0, TERROR = 2, EOF = 1; + var args = lstack.slice.call(arguments, 1); + var lexer2 = Object.create(this.lexer); + var sharedState = { yy: {} }; + for (var k in this.yy) { + if (Object.prototype.hasOwnProperty.call(this.yy, k)) { + sharedState.yy[k] = this.yy[k]; + } + } + lexer2.setInput(input, sharedState.yy); + sharedState.yy.lexer = lexer2; + sharedState.yy.parser = this; + if (typeof lexer2.yylloc == "undefined") { + lexer2.yylloc = {}; + } + var yyloc = lexer2.yylloc; + lstack.push(yyloc); + var ranges = lexer2.options && lexer2.options.ranges; + if (typeof sharedState.yy.parseError === "function") { + this.parseError = sharedState.yy.parseError; + } else { + this.parseError = Object.getPrototypeOf(this).parseError; + } + function popStack(n) { + stack.length = stack.length - 2 * n; + vstack.length = vstack.length - n; + lstack.length = lstack.length - n; + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(popStack, "popStack"); + function lex2() { + var token; + token = tstack.pop() || lexer2.lex() || EOF; + if (typeof token !== "number") { + if (token instanceof Array) { + tstack = token; + token = tstack.pop(); + } + token = self.symbols_[token] || token; + } + return token; + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(lex2, "lex"); + var symbol, preErrorSymbol, state, action, a, r, yyval = {}, p, len, newState, expected; + while (true) { + state = stack[stack.length - 1]; + if (this.defaultActions[state]) { + action = this.defaultActions[state]; + } else { + if (symbol === null || typeof symbol == "undefined") { + symbol = lex2(); + } + action = table[state] && table[state][symbol]; + } + if (typeof action === "undefined" || !action.length || !action[0]) { + var errStr = ""; + expected = []; + for (p in table[state]) { + if (this.terminals_[p] && p > TERROR) { + expected.push("'" + this.terminals_[p] + "'"); + } + } + if (lexer2.showPosition) { + errStr = "Parse error on line " + (yylineno + 1) + ":\n" + lexer2.showPosition() + "\nExpecting " + expected.join(", ") + ", got '" + (this.terminals_[symbol] || symbol) + "'"; + } else { + errStr = "Parse error on line " + (yylineno + 1) + ": Unexpected " + (symbol == EOF ? "end of input" : "'" + (this.terminals_[symbol] || symbol) + "'"); + } + this.parseError(errStr, { + text: lexer2.match, + token: this.terminals_[symbol] || symbol, + line: lexer2.yylineno, + loc: yyloc, + expected + }); + } + if (action[0] instanceof Array && action.length > 1) { + throw new Error("Parse Error: multiple actions possible at state: " + state + ", token: " + symbol); + } + switch (action[0]) { + case 1: + stack.push(symbol); + vstack.push(lexer2.yytext); + lstack.push(lexer2.yylloc); + stack.push(action[1]); + symbol = null; + if (!preErrorSymbol) { + yyleng = lexer2.yyleng; + yytext = lexer2.yytext; + yylineno = lexer2.yylineno; + yyloc = lexer2.yylloc; + if (recovering > 0) { + recovering--; + } + } else { + symbol = preErrorSymbol; + preErrorSymbol = null; + } + break; + case 2: + len = this.productions_[action[1]][1]; + yyval.$ = vstack[vstack.length - len]; + yyval._$ = { + first_line: lstack[lstack.length - (len || 1)].first_line, + last_line: lstack[lstack.length - 1].last_line, + first_column: lstack[lstack.length - (len || 1)].first_column, + last_column: lstack[lstack.length - 1].last_column + }; + if (ranges) { + yyval._$.range = [ + lstack[lstack.length - (len || 1)].range[0], + lstack[lstack.length - 1].range[1] + ]; + } + r = this.performAction.apply(yyval, [ + yytext, + yyleng, + yylineno, + sharedState.yy, + action[1], + vstack, + lstack + ].concat(args)); + if (typeof r !== "undefined") { + return r; + } + if (len) { + stack = stack.slice(0, -1 * len * 2); + vstack = vstack.slice(0, -1 * len); + lstack = lstack.slice(0, -1 * len); + } + stack.push(this.productions_[action[1]][0]); + vstack.push(yyval.$); + lstack.push(yyval._$); + newState = table[stack[stack.length - 2]][stack[stack.length - 1]]; + stack.push(newState); + break; + case 3: + return true; + } + } + return true; + }, "parse") + }; + var lexer = /* @__PURE__ */ function() { + var lexer2 = { + EOF: 1, + parseError: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function parseError(str, hash) { + if (this.yy.parser) { + this.yy.parser.parseError(str, hash); + } else { + throw new Error(str); + } + }, "parseError"), + // resets the lexer, sets new input + setInput: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function(input, yy) { + this.yy = yy || this.yy || {}; + this._input = input; + this._more = this._backtrack = this.done = false; + this.yylineno = this.yyleng = 0; + this.yytext = this.matched = this.match = ""; + this.conditionStack = ["INITIAL"]; + this.yylloc = { + first_line: 1, + first_column: 0, + last_line: 1, + last_column: 0 + }; + if (this.options.ranges) { + this.yylloc.range = [0, 0]; + } + this.offset = 0; + return this; + }, "setInput"), + // consumes and returns one char from the input + input: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function() { + var ch = this._input[0]; + this.yytext += ch; + this.yyleng++; + this.offset++; + this.match += ch; + this.matched += ch; + var lines = ch.match(/(?:\r\n?|\n).*/g); + if (lines) { + this.yylineno++; + this.yylloc.last_line++; + } else { + this.yylloc.last_column++; + } + if (this.options.ranges) { + this.yylloc.range[1]++; + } + this._input = this._input.slice(1); + return ch; + }, "input"), + // unshifts one char (or a string) into the input + unput: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function(ch) { + var len = ch.length; + var lines = ch.split(/(?:\r\n?|\n)/g); + this._input = ch + this._input; + this.yytext = this.yytext.substr(0, this.yytext.length - len); + this.offset -= len; + var oldLines = this.match.split(/(?:\r\n?|\n)/g); + this.match = this.match.substr(0, this.match.length - 1); + this.matched = this.matched.substr(0, this.matched.length - 1); + if (lines.length - 1) { + this.yylineno -= lines.length - 1; + } + var r = this.yylloc.range; + this.yylloc = { + first_line: this.yylloc.first_line, + last_line: this.yylineno + 1, + first_column: this.yylloc.first_column, + last_column: lines ? (lines.length === oldLines.length ? this.yylloc.first_column : 0) + oldLines[oldLines.length - lines.length].length - lines[0].length : this.yylloc.first_column - len + }; + if (this.options.ranges) { + this.yylloc.range = [r[0], r[0] + this.yyleng - len]; + } + this.yyleng = this.yytext.length; + return this; + }, "unput"), + // When called from action, caches matched text and appends it on next action + more: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function() { + this._more = true; + return this; + }, "more"), + // When called from action, signals the lexer that this rule fails to match the input, so the next matching rule (regex) should be tested instead. + reject: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function() { + if (this.options.backtrack_lexer) { + this._backtrack = true; + } else { + return this.parseError("Lexical error on line " + (this.yylineno + 1) + ". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n" + this.showPosition(), { + text: "", + token: null, + line: this.yylineno + }); + } + return this; + }, "reject"), + // retain first n characters of the match + less: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function(n) { + this.unput(this.match.slice(n)); + }, "less"), + // displays already matched input, i.e. for error messages + pastInput: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function() { + var past = this.matched.substr(0, this.matched.length - this.match.length); + return (past.length > 20 ? "..." : "") + past.substr(-20).replace(/\n/g, ""); + }, "pastInput"), + // displays upcoming input, i.e. for error messages + upcomingInput: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function() { + var next = this.match; + if (next.length < 20) { + next += this._input.substr(0, 20 - next.length); + } + return (next.substr(0, 20) + (next.length > 20 ? "..." : "")).replace(/\n/g, ""); + }, "upcomingInput"), + // displays the character position where the lexing error occurred, i.e. for error messages + showPosition: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function() { + var pre = this.pastInput(); + var c = new Array(pre.length + 1).join("-"); + return pre + this.upcomingInput() + "\n" + c + "^"; + }, "showPosition"), + // test the lexed token: return FALSE when not a match, otherwise return token + test_match: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function(match, indexed_rule) { + var token, lines, backup; + if (this.options.backtrack_lexer) { + backup = { + yylineno: this.yylineno, + yylloc: { + first_line: this.yylloc.first_line, + last_line: this.last_line, + first_column: this.yylloc.first_column, + last_column: this.yylloc.last_column + }, + yytext: this.yytext, + match: this.match, + matches: this.matches, + matched: this.matched, + yyleng: this.yyleng, + offset: this.offset, + _more: this._more, + _input: this._input, + yy: this.yy, + conditionStack: this.conditionStack.slice(0), + done: this.done + }; + if (this.options.ranges) { + backup.yylloc.range = this.yylloc.range.slice(0); + } + } + lines = match[0].match(/(?:\r\n?|\n).*/g); + if (lines) { + this.yylineno += lines.length; + } + this.yylloc = { + first_line: this.yylloc.last_line, + last_line: this.yylineno + 1, + first_column: this.yylloc.last_column, + last_column: lines ? lines[lines.length - 1].length - lines[lines.length - 1].match(/\r?\n?/)[0].length : this.yylloc.last_column + match[0].length + }; + this.yytext += match[0]; + this.match += match[0]; + this.matches = match; + this.yyleng = this.yytext.length; + if (this.options.ranges) { + this.yylloc.range = [this.offset, this.offset += this.yyleng]; + } + this._more = false; + this._backtrack = false; + this._input = this._input.slice(match[0].length); + this.matched += match[0]; + token = this.performAction.call(this, this.yy, this, indexed_rule, this.conditionStack[this.conditionStack.length - 1]); + if (this.done && this._input) { + this.done = false; + } + if (token) { + return token; + } else if (this._backtrack) { + for (var k in backup) { + this[k] = backup[k]; + } + return false; + } + return false; + }, "test_match"), + // return next match in input + next: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function() { + if (this.done) { + return this.EOF; + } + if (!this._input) { + this.done = true; + } + var token, match, tempMatch, index; + if (!this._more) { + this.yytext = ""; + this.match = ""; + } + var rules = this._currentRules(); + for (var i = 0; i < rules.length; i++) { + tempMatch = this._input.match(this.rules[rules[i]]); + if (tempMatch && (!match || tempMatch[0].length > match[0].length)) { + match = tempMatch; + index = i; + if (this.options.backtrack_lexer) { + token = this.test_match(tempMatch, rules[i]); + if (token !== false) { + return token; + } else if (this._backtrack) { + match = false; + continue; + } else { + return false; + } + } else if (!this.options.flex) { + break; + } + } + } + if (match) { + token = this.test_match(match, rules[index]); + if (token !== false) { + return token; + } + return false; + } + if (this._input === "") { + return this.EOF; + } else { + return this.parseError("Lexical error on line " + (this.yylineno + 1) + ". Unrecognized text.\n" + this.showPosition(), { + text: "", + token: null, + line: this.yylineno + }); + } + }, "next"), + // return next match that has a token + lex: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function lex2() { + var r = this.next(); + if (r) { + return r; + } else { + return this.lex(); + } + }, "lex"), + // activates a new lexer condition state (pushes the new lexer condition state onto the condition stack) + begin: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function begin(condition) { + this.conditionStack.push(condition); + }, "begin"), + // pop the previously active lexer condition state off the condition stack + popState: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function popState() { + var n = this.conditionStack.length - 1; + if (n > 0) { + return this.conditionStack.pop(); + } else { + return this.conditionStack[0]; + } + }, "popState"), + // produce the lexer rule set which is active for the currently active lexer condition state + _currentRules: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function _currentRules() { + if (this.conditionStack.length && this.conditionStack[this.conditionStack.length - 1]) { + return this.conditions[this.conditionStack[this.conditionStack.length - 1]].rules; + } else { + return this.conditions["INITIAL"].rules; + } + }, "_currentRules"), + // return the currently active lexer condition state; when an index argument is provided it produces the N-th previous condition state, if available + topState: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function topState(n) { + n = this.conditionStack.length - 1 - Math.abs(n || 0); + if (n >= 0) { + return this.conditionStack[n]; + } else { + return "INITIAL"; + } + }, "topState"), + // alias for begin(condition) + pushState: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function pushState(condition) { + this.begin(condition); + }, "pushState"), + // return the number of states currently on the stack + stateStackSize: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function stateStackSize() { + return this.conditionStack.length; + }, "stateStackSize"), + options: {}, + performAction: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(function anonymous(yy, yy_, $avoiding_name_collisions, YY_START) { + var YYSTATE = YY_START; + switch ($avoiding_name_collisions) { + case 0: + this.begin("acc_title"); + return 34; + break; + case 1: + this.popState(); + return "acc_title_value"; + break; + case 2: + this.begin("acc_descr"); + return 36; + break; + case 3: + this.popState(); + return "acc_descr_value"; + break; + case 4: + this.begin("acc_descr_multiline"); + break; + case 5: + this.popState(); + break; + case 6: + return "acc_descr_multiline_value"; + break; + case 7: + this.begin("callbackname"); + break; + case 8: + this.popState(); + break; + case 9: + this.popState(); + this.begin("callbackargs"); + break; + case 10: + return 92; + break; + case 11: + this.popState(); + break; + case 12: + return 93; + break; + case 13: + return "MD_STR"; + break; + case 14: + this.popState(); + break; + case 15: + this.begin("md_string"); + break; + case 16: + return "STR"; + break; + case 17: + this.popState(); + break; + case 18: + this.pushState("string"); + break; + case 19: + return 81; + break; + case 20: + return 99; + break; + case 21: + return 82; + break; + case 22: + return 101; + break; + case 23: + return 83; + break; + case 24: + return 84; + break; + case 25: + return 94; + break; + case 26: + this.begin("click"); + break; + case 27: + this.popState(); + break; + case 28: + return 85; + break; + case 29: + if (yy.lex.firstGraph()) { + this.begin("dir"); + } + return 12; + break; + case 30: + if (yy.lex.firstGraph()) { + this.begin("dir"); + } + return 12; + break; + case 31: + if (yy.lex.firstGraph()) { + this.begin("dir"); + } + return 12; + break; + case 32: + return 27; + break; + case 33: + return 32; + break; + case 34: + return 95; + break; + case 35: + return 95; + break; + case 36: + return 95; + break; + case 37: + return 95; + break; + case 38: + this.popState(); + return 13; + break; + case 39: + this.popState(); + return 14; + break; + case 40: + this.popState(); + return 14; + break; + case 41: + this.popState(); + return 14; + break; + case 42: + this.popState(); + return 14; + break; + case 43: + this.popState(); + return 14; + break; + case 44: + this.popState(); + return 14; + break; + case 45: + this.popState(); + return 14; + break; + case 46: + this.popState(); + return 14; + break; + case 47: + this.popState(); + return 14; + break; + case 48: + this.popState(); + return 14; + break; + case 49: + return 118; + break; + case 50: + return 119; + break; + case 51: + return 120; + break; + case 52: + return 121; + break; + case 53: + return 102; + break; + case 54: + return 108; + break; + case 55: + return 44; + break; + case 56: + return 58; + break; + case 57: + return 42; + break; + case 58: + return 8; + break; + case 59: + return 103; + break; + case 60: + return 112; + break; + case 61: + this.popState(); + return 75; + break; + case 62: + this.pushState("edgeText"); + return 73; + break; + case 63: + return 116; + break; + case 64: + this.popState(); + return 75; + break; + case 65: + this.pushState("thickEdgeText"); + return 73; + break; + case 66: + return 116; + break; + case 67: + this.popState(); + return 75; + break; + case 68: + this.pushState("dottedEdgeText"); + return 73; + break; + case 69: + return 116; + break; + case 70: + return 75; + break; + case 71: + this.popState(); + return 51; + break; + case 72: + return "TEXT"; + break; + case 73: + this.pushState("ellipseText"); + return 50; + break; + case 74: + this.popState(); + return 53; + break; + case 75: + this.pushState("text"); + return 52; + break; + case 76: + this.popState(); + return 55; + break; + case 77: + this.pushState("text"); + return 54; + break; + case 78: + return 56; + break; + case 79: + this.pushState("text"); + return 65; + break; + case 80: + this.popState(); + return 62; + break; + case 81: + this.pushState("text"); + return 61; + break; + case 82: + this.popState(); + return 47; + break; + case 83: + this.pushState("text"); + return 46; + break; + case 84: + this.popState(); + return 67; + break; + case 85: + this.popState(); + return 69; + break; + case 86: + return 114; + break; + case 87: + this.pushState("trapText"); + return 66; + break; + case 88: + this.pushState("trapText"); + return 68; + break; + case 89: + return 115; + break; + case 90: + return 65; + break; + case 91: + return 87; + break; + case 92: + return "SEP"; + break; + case 93: + return 86; + break; + case 94: + return 112; + break; + case 95: + return 108; + break; + case 96: + return 42; + break; + case 97: + return 106; + break; + case 98: + return 111; + break; + case 99: + return 113; + break; + case 100: + this.popState(); + return 60; + break; + case 101: + this.pushState("text"); + return 60; + break; + case 102: + this.popState(); + return 49; + break; + case 103: + this.pushState("text"); + return 48; + break; + case 104: + this.popState(); + return 31; + break; + case 105: + this.pushState("text"); + return 29; + break; + case 106: + this.popState(); + return 64; + break; + case 107: + this.pushState("text"); + return 63; + break; + case 108: + return "TEXT"; + break; + case 109: + return "QUOTE"; + break; + case 110: + return 9; + break; + case 111: + return 10; + break; + case 112: + return 11; + break; + } + }, "anonymous"), + rules: [/^(?:accTitle\s*:\s*)/, /^(?:(?!\n||)*[^\n]*)/, /^(?:accDescr\s*:\s*)/, /^(?:(?!\n||)*[^\n]*)/, /^(?:accDescr\s*\{\s*)/, /^(?:[\}])/, /^(?:[^\}]*)/, /^(?:call[\s]+)/, /^(?:\([\s]*\))/, /^(?:\()/, /^(?:[^(]*)/, /^(?:\))/, /^(?:[^)]*)/, /^(?:[^`"]+)/, /^(?:[`]["])/, /^(?:["][`])/, /^(?:[^"]+)/, /^(?:["])/, /^(?:["])/, /^(?:style\b)/, /^(?:default\b)/, /^(?:linkStyle\b)/, /^(?:interpolate\b)/, /^(?:classDef\b)/, /^(?:class\b)/, /^(?:href[\s])/, /^(?:click[\s]+)/, /^(?:[\s\n])/, /^(?:[^\s\n]*)/, /^(?:flowchart-elk\b)/, /^(?:graph\b)/, /^(?:flowchart\b)/, /^(?:subgraph\b)/, /^(?:end\b\s*)/, /^(?:_self\b)/, /^(?:_blank\b)/, /^(?:_parent\b)/, /^(?:_top\b)/, /^(?:(\r?\n)*\s*\n)/, /^(?:\s*LR\b)/, /^(?:\s*RL\b)/, /^(?:\s*TB\b)/, /^(?:\s*BT\b)/, /^(?:\s*TD\b)/, /^(?:\s*BR\b)/, /^(?:\s*<)/, /^(?:\s*>)/, /^(?:\s*\^)/, /^(?:\s*v\b)/, /^(?:.*direction\s+TB[^\n]*)/, /^(?:.*direction\s+BT[^\n]*)/, /^(?:.*direction\s+RL[^\n]*)/, /^(?:.*direction\s+LR[^\n]*)/, /^(?:[0-9]+)/, /^(?:#)/, /^(?::::)/, /^(?::)/, /^(?:&)/, /^(?:;)/, /^(?:,)/, /^(?:\*)/, /^(?:\s*[xo<]?--+[-xo>]\s*)/, /^(?:\s*[xo<]?--\s*)/, /^(?:[^-]|-(?!-)+)/, /^(?:\s*[xo<]?==+[=xo>]\s*)/, /^(?:\s*[xo<]?==\s*)/, /^(?:[^=]|=(?!))/, /^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/, /^(?:\s*[xo<]?-\.\s*)/, /^(?:[^\.]|\.(?!))/, /^(?:\s*~~[\~]+\s*)/, /^(?:[-/\)][\)])/, /^(?:[^\(\)\[\]\{\}]|!\)+)/, /^(?:\(-)/, /^(?:\]\))/, /^(?:\(\[)/, /^(?:\]\])/, /^(?:\[\[)/, /^(?:\[\|)/, /^(?:>)/, /^(?:\)\])/, /^(?:\[\()/, /^(?:\)\)\))/, /^(?:\(\(\()/, /^(?:[\\(?=\])][\]])/, /^(?:\/(?=\])\])/, /^(?:\/(?!\])|\\(?!\])|[^\\\[\]\(\)\{\}\/]+)/, /^(?:\[\/)/, /^(?:\[\\)/, /^(?:<)/, /^(?:>)/, /^(?:\^)/, /^(?:\\\|)/, /^(?:v\b)/, /^(?:\*)/, /^(?:#)/, /^(?:&)/, /^(?:([A-Za-z0-9!"\#$%&'*+\.`?\\_\/]|-(?=[^\>\-\.])|(?!))+)/, /^(?:-)/, /^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/, /^(?:\|)/, /^(?:\|)/, /^(?:\))/, /^(?:\()/, /^(?:\])/, /^(?:\[)/, /^(?:(\}))/, /^(?:\{)/, /^(?:[^\[\]\(\)\{\}\|\"]+)/, /^(?:")/, /^(?:(\r?\n)+)/, /^(?:\s)/, /^(?:$)/], + conditions: { "callbackargs": { "rules": [11, 12, 15, 18, 70, 73, 75, 77, 81, 83, 87, 88, 101, 103, 105, 107], "inclusive": false }, "callbackname": { "rules": [8, 9, 10, 15, 18, 70, 73, 75, 77, 81, 83, 87, 88, 101, 103, 105, 107], "inclusive": false }, "href": { "rules": [15, 18, 70, 73, 75, 77, 81, 83, 87, 88, 101, 103, 105, 107], "inclusive": false }, "click": { "rules": [15, 18, 27, 28, 70, 73, 75, 77, 81, 83, 87, 88, 101, 103, 105, 107], "inclusive": false }, "dottedEdgeText": { "rules": [15, 18, 67, 69, 70, 73, 75, 77, 81, 83, 87, 88, 101, 103, 105, 107], "inclusive": false }, "thickEdgeText": { "rules": [15, 18, 64, 66, 70, 73, 75, 77, 81, 83, 87, 88, 101, 103, 105, 107], "inclusive": false }, "edgeText": { "rules": [15, 18, 61, 63, 70, 73, 75, 77, 81, 83, 87, 88, 101, 103, 105, 107], "inclusive": false }, "trapText": { "rules": [15, 18, 70, 73, 75, 77, 81, 83, 84, 85, 86, 87, 88, 101, 103, 105, 107], "inclusive": false }, "ellipseText": { "rules": [15, 18, 70, 71, 72, 73, 75, 77, 81, 83, 87, 88, 101, 103, 105, 107], "inclusive": false }, "text": { "rules": [15, 18, 70, 73, 74, 75, 76, 77, 80, 81, 82, 83, 87, 88, 100, 101, 102, 103, 104, 105, 106, 107, 108], "inclusive": false }, "vertex": { "rules": [15, 18, 70, 73, 75, 77, 81, 83, 87, 88, 101, 103, 105, 107], "inclusive": false }, "dir": { "rules": [15, 18, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 70, 73, 75, 77, 81, 83, 87, 88, 101, 103, 105, 107], "inclusive": false }, "acc_descr_multiline": { "rules": [5, 6, 15, 18, 70, 73, 75, 77, 81, 83, 87, 88, 101, 103, 105, 107], "inclusive": false }, "acc_descr": { "rules": [3, 15, 18, 70, 73, 75, 77, 81, 83, 87, 88, 101, 103, 105, 107], "inclusive": false }, "acc_title": { "rules": [1, 15, 18, 70, 73, 75, 77, 81, 83, 87, 88, 101, 103, 105, 107], "inclusive": false }, "md_string": { "rules": [13, 14, 15, 18, 70, 73, 75, 77, 81, 83, 87, 88, 101, 103, 105, 107], "inclusive": false }, "string": { "rules": [15, 16, 17, 18, 70, 73, 75, 77, 81, 83, 87, 88, 101, 103, 105, 107], "inclusive": false }, "INITIAL": { "rules": [0, 2, 4, 7, 15, 18, 19, 20, 21, 22, 23, 24, 25, 26, 29, 30, 31, 32, 33, 34, 35, 36, 37, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 64, 65, 67, 68, 70, 73, 75, 77, 78, 79, 81, 83, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 101, 103, 105, 107, 109, 110, 111, 112], "inclusive": true } } + }; + return lexer2; + }(); + parser2.lexer = lexer; + function Parser() { + this.yy = {}; + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)(Parser, "Parser"); + Parser.prototype = parser2; + parser2.Parser = Parser; + return new Parser(); +}(); +parser.parser = parser; +var flow_default = parser; + +// src/diagrams/flowchart/styles.ts + +var fade = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)((color, opacity) => { + const channel2 = khroma__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .A; + const r = channel2(color, "r"); + const g = channel2(color, "g"); + const b = channel2(color, "b"); + return khroma__WEBPACK_IMPORTED_MODULE_10__/* ["default"] */ .A(r, g, b, opacity); +}, "fade"); +var getStyles = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)((options) => `.label { + font-family: ${options.fontFamily}; + color: ${options.nodeTextColor || options.textColor}; + } + .cluster-label text { + fill: ${options.titleColor}; + } + .cluster-label span { + color: ${options.titleColor}; + } + .cluster-label span p { + background-color: transparent; + } + + .label text,span { + fill: ${options.nodeTextColor || options.textColor}; + color: ${options.nodeTextColor || options.textColor}; + } + + .node rect, + .node circle, + .node ellipse, + .node polygon, + .node path { + fill: ${options.mainBkg}; + stroke: ${options.nodeBorder}; + stroke-width: 1px; + } + .rough-node .label text , .node .label text { + text-anchor: middle; + } + // .flowchart-label .text-outer-tspan { + // text-anchor: middle; + // } + // .flowchart-label .text-inner-tspan { + // text-anchor: start; + // } + + .node .katex path { + fill: #000; + stroke: #000; + stroke-width: 1px; + } + + .node .label { + text-align: center; + } + .node.clickable { + cursor: pointer; + } + + .arrowheadPath { + fill: ${options.arrowheadColor}; + } + + .edgePath .path { + stroke: ${options.lineColor}; + stroke-width: 2.0px; + } + + .flowchart-link { + stroke: ${options.lineColor}; + fill: none; + } + + .edgeLabel { + background-color: ${options.edgeLabelBackground}; + p { + background-color: ${options.edgeLabelBackground}; + } + rect { + opacity: 0.5; + background-color: ${options.edgeLabelBackground}; + fill: ${options.edgeLabelBackground}; + } + text-align: center; + } + + /* For html labels only */ + .labelBkg { + background-color: ${fade(options.edgeLabelBackground, 0.5)}; + // background-color: + } + + .cluster rect { + fill: ${options.clusterBkg}; + stroke: ${options.clusterBorder}; + stroke-width: 1px; + } + + .cluster text { + fill: ${options.titleColor}; + } + + .cluster span { + color: ${options.titleColor}; + } + /* .cluster div { + color: ${options.titleColor}; + } */ + + div.mermaidTooltip { + position: absolute; + text-align: center; + max-width: 200px; + padding: 2px; + font-family: ${options.fontFamily}; + font-size: 12px; + background: ${options.tertiaryColor}; + border: 1px solid ${options.border2}; + border-radius: 2px; + pointer-events: none; + z-index: 100; + } + + .flowchartTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${options.textColor}; + } +`, "getStyles"); +var styles_default = getStyles; + +// src/diagrams/flowchart/flowDiagram.ts +var diagram = { + parser: flow_default, + db: flowDb_default, + renderer: flowRenderer_v3_unified_default, + styles: styles_default, + init: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .__name */ .K2)((cnf) => { + if (!cnf.flowchart) { + cnf.flowchart = {}; + } + if (cnf.layout) { + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .setConfig2 */ .XV)({ layout: cnf.layout }); + } + cnf.flowchart.arrowMarkerAbsolute = cnf.arrowMarkerAbsolute; + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_7__/* .setConfig2 */ .XV)({ flowchart: { arrowMarkerAbsolute: cnf.arrowMarkerAbsolute } }); + flowDb_default.clear(); + flowDb_default.setGen("gen-2"); + }, "init") +}; + + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/376.f85d7542.js b/assets/js/376.f85d7542.js new file mode 100644 index 00000000..a980679c --- /dev/null +++ b/assets/js/376.f85d7542.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkbeacon_docs=self.webpackChunkbeacon_docs||[]).push([[376],{75937:(t,e,s)=>{s.d(e,{A:()=>u});var n=s(72453),r=s(74886);const u=(t,e)=>n.A.lang.round(r.A.parse(t)[e])},36151:(t,e,s)=>{s.d(e,{A:()=>u,P:()=>i});var n=s(64994),r=s(20007),u=(0,n.K2)(((t,e)=>{let s;"sandbox"===e&&(s=(0,r.Ltv)("#i"+t));return("sandbox"===e?(0,r.Ltv)(s.nodes()[0].contentDocument.body):(0,r.Ltv)("body")).select(`[id="${t}"]`)}),"getDiagramElement"),i=(0,n.K2)(((t,e,s,r)=>{t.attr("class",s);const{width:u,height:i,x:c,y:l}=a(t,e);(0,n.a$)(t,i,u,r);const h=o(c,l,u,i,e);t.attr("viewBox",h),n.Rm.debug(`viewBox configured: ${h} with padding: ${e}`)}),"setupViewPortForSVG"),a=(0,n.K2)(((t,e)=>{const s=t.node()?.getBBox()||{width:0,height:0,x:0,y:0};return{width:s.width+2*e,height:s.height+2*e,x:s.x,y:s.y}}),"calculateDimensionsWithPadding"),o=(0,n.K2)(((t,e,s,n,r)=>`${t-r} ${e-r} ${s} ${n}`),"createViewBox")},30376:(t,e,s)=>{s.d(e,{diagram:()=>Et});var n,r,u=s(36151),i=(s(46578),s(62602)),a=(s(49139),s(48496),s(67895),s(57323)),o=s(64994),c=s(20007),l=s(75937),h=s(25582),d=0,p=(0,o.D7)(),A=new Map,g=[],y=new Map,f=[],k=new Map,b=new Map,E=0,D=!0,m=[],C=(0,o.K2)((t=>o.Y2.sanitizeText(t,p)),"sanitizeText"),T=(0,o.K2)((function(t){for(const e of A.values())if(e.id===t)return e.domId;return t}),"lookUpDomId"),x=(0,o.K2)((function(t,e,s,n,r,u,i={}){if(!t||0===t.trim().length)return;let a,c=A.get(t);void 0===c&&(c={id:t,labelType:"text",domId:"flowchart-"+t+"-"+d,styles:[],classes:[]},A.set(t,c)),d++,void 0!==e?(p=(0,o.D7)(),a=C(e.text.trim()),c.labelType=e.type,a.startsWith('"')&&a.endsWith('"')&&(a=a.substring(1,a.length-1)),c.text=a):void 0===c.text&&(c.text=t),void 0!==s&&(c.type=s),null!=n&&n.forEach((function(t){c.styles.push(t)})),null!=r&&r.forEach((function(t){c.classes.push(t)})),void 0!==u&&(c.dir=u),void 0===c.props?c.props=i:void 0!==i&&Object.assign(c.props,i)}),"addVertex"),F=(0,o.K2)((function(t,e,s){const n={start:t,end:e,type:void 0,text:"",labelType:"text"};o.Rm.info("abc78 Got edge...",n);const r=s.text;if(void 0!==r&&(n.text=C(r.text.trim()),n.text.startsWith('"')&&n.text.endsWith('"')&&(n.text=n.text.substring(1,n.text.length-1)),n.labelType=r.type),void 0!==s&&(n.type=s.type,n.stroke=s.stroke,n.length=s.length>10?10:s.length),!(g.length<(p.maxEdges??500)))throw new Error(`Edge limit exceeded. ${g.length} edges found, but the limit is ${p.maxEdges}.\n\nInitialize mermaid with maxEdges set to a higher number to allow more edges.\nYou cannot set this config via configuration inside the diagram as it is a secure config.\nYou have to call mermaid.initialize.`);o.Rm.info("Pushing edge..."),g.push(n)}),"addSingleLink"),S=(0,o.K2)((function(t,e,s){o.Rm.info("addLink",t,e,s);for(const n of t)for(const t of e)F(n,t,s)}),"addLink"),_=(0,o.K2)((function(t,e){t.forEach((function(t){"default"===t?g.defaultInterpolate=e:g[t].interpolate=e}))}),"updateLinkInterpolate"),B=(0,o.K2)((function(t,e){t.forEach((function(t){if("number"==typeof t&&t>=g.length)throw new Error(`The index ${t} for linkStyle is out of bounds. Valid indices for linkStyle are between 0 and ${g.length-1}. (Help: Ensure that the index is within the range of existing edges.)`);"default"===t?g.defaultStyle=e:(g[t].style=e,(g[t]?.style?.length??0)>0&&!g[t]?.style?.some((t=>t?.startsWith("fill")))&&g[t]?.style?.push("fill:none"))}))}),"updateLink"),v=(0,o.K2)((function(t,e){t.split(",").forEach((function(t){let s=y.get(t);void 0===s&&(s={id:t,styles:[],textStyles:[]},y.set(t,s)),null!=e&&e.forEach((function(t){if(/color/.exec(t)){const e=t.replace("fill","bgFill");s.textStyles.push(e)}s.styles.push(t)}))}))}),"addClass"),w=(0,o.K2)((function(t){/.*/.exec(n)&&(n="LR"),/.*v/.exec(n)&&(n="TB"),"TD"===n&&(n="TB")}),"setDirection"),L=(0,o.K2)((function(t,e){for(const s of t.split(",")){const t=A.get(s);t&&t.classes.push(e);const n=k.get(s);n&&n.classes.push(e)}}),"setClass"),$=(0,o.K2)((function(t,e){if(void 0!==e){e=C(e);for(const s of t.split(","))b.set("gen-1"===r?T(s):s,e)}}),"setTooltip"),R=(0,o.K2)((function(t,e,s){const n=T(t);if("loose"!==(0,o.D7)().securityLevel)return;if(void 0===e)return;let r=[];if("string"==typeof s){r=s.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let t=0;t")),t.classed("hover",!0)})).on("mouseout",(function(){e.transition().duration(500).style("opacity",0);(0,c.Ltv)(this).classed("hover",!1)}))}),"setupToolTips");m.push(G);var W=(0,o.K2)((function(t="gen-1"){A=new Map,y=new Map,g=[],m=[G],f=[],k=new Map,E=0,b=new Map,D=!0,r=t,p=(0,o.D7)(),(0,o.IU)()}),"clear"),Y=(0,o.K2)((t=>{r=t||"gen-2"}),"setGen"),j=(0,o.K2)((function(){return"fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;"}),"defaultStyle"),X=(0,o.K2)((function(t,e,s){let n=t.text.trim(),u=s.text;function i(t){const e={boolean:{},number:{},string:{}},s=[];let n;return{nodeList:t.filter((function(t){const r=typeof t;return t.stmt&&"dir"===t.stmt?(n=t.value,!1):""!==t.trim()&&(r in e?!e[r].hasOwnProperty(t)&&(e[r][t]=!0):!s.includes(t)&&s.push(t))})),dir:n}}t===s&&/\s/.exec(s.text)&&(n=void 0),(0,o.K2)(i,"uniq");const{nodeList:a,dir:c}=i(e.flat());if("gen-1"===r)for(let r=0;r2e3)return{result:!1,count:0};if(H[q]=e,f[e].id===t)return{result:!0,count:0};let n=0,r=1;for(;n=0){const s=Q(t,e);if(s.result)return{result:!0,count:r+s.count};r+=s.count}n+=1}return{result:!1,count:r}}),"indexNodes2"),Z=(0,o.K2)((function(t){return H[t]}),"getDepthFirstPos"),J=(0,o.K2)((function(){q=-1,f.length>0&&Q("none",f.length-1)}),"indexNodes"),tt=(0,o.K2)((function(){return f}),"getSubGraphs"),et=(0,o.K2)((()=>!!D&&(D=!1,!0)),"firstGraph"),st=(0,o.K2)((t=>{let e=t.trim(),s="arrow_open";switch(e[0]){case"<":s="arrow_point",e=e.slice(1);break;case"x":s="arrow_cross",e=e.slice(1);break;case"o":s="arrow_circle",e=e.slice(1)}let n="normal";return e.includes("=")&&(n="thick"),e.includes(".")&&(n="dotted"),{type:s,stroke:n}}),"destructStartLink"),nt=(0,o.K2)(((t,e)=>{const s=e.length;let n=0;for(let r=0;r{const e=t.trim();let s=e.slice(0,-1),n="arrow_open";switch(e.slice(-1)){case"x":n="arrow_cross",e.startsWith("x")&&(n="double_"+n,s=s.slice(1));break;case">":n="arrow_point",e.startsWith("<")&&(n="double_"+n,s=s.slice(1));break;case"o":n="arrow_circle",e.startsWith("o")&&(n="double_"+n,s=s.slice(1))}let r="normal",u=s.length-1;s.startsWith("=")&&(r="thick"),s.startsWith("~")&&(r="invisible");const i=nt(".",s);return i&&(r="dotted",u=i),{type:n,stroke:r,length:u}}),"destructEndLink"),ut=(0,o.K2)(((t,e)=>{const s=rt(t);let n;if(e){if(n=st(e),n.stroke!==s.stroke)return{type:"INVALID",stroke:"INVALID"};if("arrow_open"===n.type)n.type=s.type;else{if(n.type!==s.type)return{type:"INVALID",stroke:"INVALID"};n.type="double_"+n.type}return"double_arrow"===n.type&&(n.type="double_arrow_point"),n.length=s.length,n}return s}),"destructLink"),it=(0,o.K2)(((t,e)=>{for(const s of t)if(s.nodes.includes(e))return!0;return!1}),"exists"),at=(0,o.K2)(((t,e)=>{const s=[];return t.nodes.forEach(((n,r)=>{it(e,n)||s.push(t.nodes[r])})),{nodes:s}}),"makeUniq"),ot={firstGraph:et},ct=(0,o.K2)((t=>"square"===t.type?"squareRect":"round"===t.type?"roundedRect":t.type??"squareRect"),"getTypeFromVertex"),lt=(0,o.K2)(((t,e)=>t.find((t=>t.id===e))),"findNode"),ht=(0,o.K2)((t=>{let e="none",s="arrow_point";switch(t){case"arrow_point":case"arrow_circle":case"arrow_cross":s=t;break;case"double_arrow_point":case"double_arrow_circle":case"double_arrow_cross":e=t.replace("double_",""),s=e}return{arrowTypeStart:e,arrowTypeEnd:s}}),"destructEdgeType"),dt=(0,o.K2)(((t,e,s,n,r,u)=>{const i=s.get(t.id),a=n.get(t.id)??!1,o=lt(e,t.id);o?(o.cssStyles=t.styles,o.cssCompiledStyles=pt(t.classes),o.cssClasses=t.classes.join(" ")):e.push({id:t.id,label:t.text,labelStyle:"",parentId:i,padding:r.flowchart?.padding||8,cssStyles:t.styles,cssCompiledStyles:pt(["default","node",...t.classes]),cssClasses:"default "+t.classes.join(" "),shape:ct(t),dir:t.dir,domId:t.domId,isGroup:a,look:u,link:t.link,linkTarget:t.linkTarget,tooltip:K(t.id)})}),"addNodeFromVertex");function pt(t){let e=[];for(const s of t){const t=y.get(s);t?.styles&&(e=[...e,...t.styles??[]].map((t=>t.trim()))),t?.textStyles&&(e=[...e,...t.textStyles??[]].map((t=>t.trim())))}return e}(0,o.K2)(pt,"getCompiledStyles");var At=(0,o.K2)((()=>{const t=(0,o.D7)(),e=[],s=[],n=tt(),r=new Map,u=new Map;for(let a=n.length-1;a>=0;a--){const t=n[a];t.nodes.length>0&&u.set(t.id,!0);for(const e of t.nodes)r.set(e,t.id)}for(let a=n.length-1;a>=0;a--){const s=n[a];e.push({id:s.id,label:s.title,labelStyle:"",parentId:r.get(s.id),padding:8,cssCompiledStyles:pt(s.classes),cssClasses:s.classes.join(" "),shape:"rect",dir:s.dir,isGroup:!0,look:t.look})}M().forEach((s=>{dt(s,e,r,u,t,t.look||"classic")}));const i=V();return i.forEach(((e,n)=>{const{arrowTypeStart:r,arrowTypeEnd:u}=ht(e.type),o=[...i.defaultStyle??[]];e.style&&o.push(...e.style);const c={id:(0,a.rY)(e.start,e.end,{counter:n,prefix:"L"}),start:e.start,end:e.end,type:e.type??"normal",label:e.text,labelpos:"c",thickness:e.stroke,minlen:e.length,classes:"invisible"===e?.stroke?"":"edge-thickness-normal edge-pattern-solid flowchart-link",arrowTypeStart:"invisible"===e?.stroke?"none":r,arrowTypeEnd:"invisible"===e?.stroke?"none":u,arrowheadStyle:"fill: #333",labelStyle:o,style:o,pattern:e.stroke,look:t.look};s.push(c)})),{nodes:e,edges:s,other:{},config:t}}),"getData"),gt={defaultConfig:(0,o.K2)((()=>o.ME.flowchart),"defaultConfig"),setAccTitle:o.SV,getAccTitle:o.iN,getAccDescription:o.m7,getData:At,setAccDescription:o.EI,addVertex:x,lookUpDomId:T,addLink:S,updateLinkInterpolate:_,updateLink:B,addClass:v,setDirection:w,setClass:L,setTooltip:$,getTooltip:K,setClickEvent:N,setLink:I,bindFunctions:P,getDirection:O,getVertices:M,getEdges:V,getClasses:U,clear:W,setGen:Y,defaultStyle:j,addSubGraph:X,getDepthFirstPos:Z,indexNodes:J,getSubGraphs:tt,destructLink:ut,lex:ot,exists:it,makeUniq:at,setDiagramTitle:o.ke,getDiagramTitle:o.ab},yt={getClasses:(0,o.K2)((function(t,e){return e.db.getClasses()}),"getClasses"),draw:(0,o.K2)((async function(t,e,s,n){o.Rm.info("REF0:"),o.Rm.info("Drawing state diagram (v2)",e);const{securityLevel:r,flowchart:l,layout:h}=(0,o.D7)();let d;"sandbox"===r&&(d=(0,c.Ltv)("#i"+e));const p="sandbox"===r?d.nodes()[0].contentDocument:document;o.Rm.debug("Before getData: ");const A=n.db.getData();o.Rm.debug("Data: ",A);const g=(0,u.A)(e,r),y=O();A.type=n.type,A.layoutAlgorithm=(0,i.q7)(h),"dagre"===A.layoutAlgorithm&&"elk"===h&&o.Rm.warn("flowchart-elk was moved to an external package in Mermaid v11. Please refer [release notes](https://github.com/mermaid-js/mermaid/releases/tag/v11.0.0) for more details. This diagram will be rendered using `dagre` layout as a fallback."),A.direction=y,A.nodeSpacing=l?.nodeSpacing||50,A.rankSpacing=l?.rankSpacing||50,A.markers=["point","circle","cross"],A.diagramId=e,o.Rm.debug("REF1:",A),await(0,i.XX)(A,g);const f=A.config.flowchart?.diagramPadding??8;a._K.insertTitle(g,"flowchartTitleText",l?.titleTopMargin||0,n.db.getDiagramTitle()),(0,u.P)(g,f,"flowchart",l?.useMaxWidth||!1);for(const u of A.nodes){const t=(0,c.Ltv)(`#${e} [id="${u.id}"]`);if(!t||!u.link)continue;const s=p.createElementNS("http://www.w3.org/2000/svg","a");s.setAttributeNS("http://www.w3.org/2000/svg","class",u.cssClasses),s.setAttributeNS("http://www.w3.org/2000/svg","rel","noopener"),"sandbox"===r?s.setAttributeNS("http://www.w3.org/2000/svg","target","_top"):u.linkTarget&&s.setAttributeNS("http://www.w3.org/2000/svg","target",u.linkTarget);const n=t.insert((function(){return s}),":first-child"),i=t.select(".label-container");i&&n.append((function(){return i.node()}));const a=t.select(".label");a&&n.append((function(){return a.node()}))}}),"draw")},ft=function(){var t=(0,o.K2)((function(t,e,s,n){for(s=s||{},n=t.length;n--;s[t[n]]=e);return s}),"o"),e=[1,4],s=[1,3],n=[1,5],r=[1,8,9,10,11,27,34,36,38,42,58,81,82,83,84,85,86,99,102,103,106,108,111,112,113,118,119,120,121],u=[2,2],i=[1,13],a=[1,14],c=[1,15],l=[1,16],h=[1,23],d=[1,25],p=[1,26],A=[1,27],g=[1,49],y=[1,48],f=[1,29],k=[1,30],b=[1,31],E=[1,32],D=[1,33],m=[1,44],C=[1,46],T=[1,42],x=[1,47],F=[1,43],S=[1,50],_=[1,45],B=[1,51],v=[1,52],w=[1,34],L=[1,35],$=[1,36],R=[1,37],I=[1,57],K=[1,8,9,10,11,27,32,34,36,38,42,58,81,82,83,84,85,86,99,102,103,106,108,111,112,113,118,119,120,121],N=[1,61],P=[1,60],O=[1,62],M=[8,9,11,73,75],V=[1,88],U=[1,93],G=[1,92],W=[1,89],Y=[1,85],j=[1,91],X=[1,87],z=[1,94],q=[1,90],H=[1,95],Q=[1,86],Z=[8,9,10,11,73,75],J=[8,9,10,11,44,73,75],tt=[8,9,10,11,29,42,44,46,48,50,52,54,56,58,61,63,65,66,68,73,75,86,99,102,103,106,108,111,112,113],et=[8,9,11,42,58,73,75,86,99,102,103,106,108,111,112,113],st=[42,58,86,99,102,103,106,108,111,112,113],nt=[1,121],rt=[1,120],ut=[1,128],it=[1,142],at=[1,143],ot=[1,144],ct=[1,145],lt=[1,130],ht=[1,132],dt=[1,136],pt=[1,137],At=[1,138],gt=[1,139],yt=[1,140],ft=[1,141],kt=[1,146],bt=[1,147],Et=[1,126],Dt=[1,127],mt=[1,134],Ct=[1,129],Tt=[1,133],xt=[1,131],Ft=[8,9,10,11,27,32,34,36,38,42,58,81,82,83,84,85,86,99,102,103,106,108,111,112,113,118,119,120,121],St=[1,149],_t=[8,9,11],Bt=[8,9,10,11,14,42,58,86,102,103,106,108,111,112,113],vt=[1,169],wt=[1,165],Lt=[1,166],$t=[1,170],Rt=[1,167],It=[1,168],Kt=[75,113,116],Nt=[8,9,10,11,12,14,27,29,32,42,58,73,81,82,83,84,85,86,87,102,106,108,111,112,113],Pt=[10,103],Ot=[31,47,49,51,53,55,60,62,64,65,67,69,113,114,115],Mt=[1,235],Vt=[1,233],Ut=[1,237],Gt=[1,231],Wt=[1,232],Yt=[1,234],jt=[1,236],Xt=[1,238],zt=[1,255],qt=[8,9,11,103],Ht=[8,9,10,11,58,81,102,103,106,107,108,109],Qt={trace:(0,o.K2)((function(){}),"trace"),yy:{},symbols_:{error:2,start:3,graphConfig:4,document:5,line:6,statement:7,SEMI:8,NEWLINE:9,SPACE:10,EOF:11,GRAPH:12,NODIR:13,DIR:14,FirstStmtSeparator:15,ending:16,endToken:17,spaceList:18,spaceListNewline:19,vertexStatement:20,separator:21,styleStatement:22,linkStyleStatement:23,classDefStatement:24,classStatement:25,clickStatement:26,subgraph:27,textNoTags:28,SQS:29,text:30,SQE:31,end:32,direction:33,acc_title:34,acc_title_value:35,acc_descr:36,acc_descr_value:37,acc_descr_multiline_value:38,link:39,node:40,styledVertex:41,AMP:42,vertex:43,STYLE_SEPARATOR:44,idString:45,DOUBLECIRCLESTART:46,DOUBLECIRCLEEND:47,PS:48,PE:49,"(-":50,"-)":51,STADIUMSTART:52,STADIUMEND:53,SUBROUTINESTART:54,SUBROUTINEEND:55,VERTEX_WITH_PROPS_START:56,"NODE_STRING[field]":57,COLON:58,"NODE_STRING[value]":59,PIPE:60,CYLINDERSTART:61,CYLINDEREND:62,DIAMOND_START:63,DIAMOND_STOP:64,TAGEND:65,TRAPSTART:66,TRAPEND:67,INVTRAPSTART:68,INVTRAPEND:69,linkStatement:70,arrowText:71,TESTSTR:72,START_LINK:73,edgeText:74,LINK:75,edgeTextToken:76,STR:77,MD_STR:78,textToken:79,keywords:80,STYLE:81,LINKSTYLE:82,CLASSDEF:83,CLASS:84,CLICK:85,DOWN:86,UP:87,textNoTagsToken:88,stylesOpt:89,"idString[vertex]":90,"idString[class]":91,CALLBACKNAME:92,CALLBACKARGS:93,HREF:94,LINK_TARGET:95,"STR[link]":96,"STR[tooltip]":97,alphaNum:98,DEFAULT:99,numList:100,INTERPOLATE:101,NUM:102,COMMA:103,style:104,styleComponent:105,NODE_STRING:106,UNIT:107,BRKT:108,PCT:109,idStringToken:110,MINUS:111,MULT:112,UNICODE_TEXT:113,TEXT:114,TAGSTART:115,EDGE_TEXT:116,alphaNumToken:117,direction_tb:118,direction_bt:119,direction_rl:120,direction_lr:121,$accept:0,$end:1},terminals_:{2:"error",8:"SEMI",9:"NEWLINE",10:"SPACE",11:"EOF",12:"GRAPH",13:"NODIR",14:"DIR",27:"subgraph",29:"SQS",31:"SQE",32:"end",34:"acc_title",35:"acc_title_value",36:"acc_descr",37:"acc_descr_value",38:"acc_descr_multiline_value",42:"AMP",44:"STYLE_SEPARATOR",46:"DOUBLECIRCLESTART",47:"DOUBLECIRCLEEND",48:"PS",49:"PE",50:"(-",51:"-)",52:"STADIUMSTART",53:"STADIUMEND",54:"SUBROUTINESTART",55:"SUBROUTINEEND",56:"VERTEX_WITH_PROPS_START",57:"NODE_STRING[field]",58:"COLON",59:"NODE_STRING[value]",60:"PIPE",61:"CYLINDERSTART",62:"CYLINDEREND",63:"DIAMOND_START",64:"DIAMOND_STOP",65:"TAGEND",66:"TRAPSTART",67:"TRAPEND",68:"INVTRAPSTART",69:"INVTRAPEND",72:"TESTSTR",73:"START_LINK",75:"LINK",77:"STR",78:"MD_STR",81:"STYLE",82:"LINKSTYLE",83:"CLASSDEF",84:"CLASS",85:"CLICK",86:"DOWN",87:"UP",90:"idString[vertex]",91:"idString[class]",92:"CALLBACKNAME",93:"CALLBACKARGS",94:"HREF",95:"LINK_TARGET",96:"STR[link]",97:"STR[tooltip]",99:"DEFAULT",101:"INTERPOLATE",102:"NUM",103:"COMMA",106:"NODE_STRING",107:"UNIT",108:"BRKT",109:"PCT",111:"MINUS",112:"MULT",113:"UNICODE_TEXT",114:"TEXT",115:"TAGSTART",116:"EDGE_TEXT",118:"direction_tb",119:"direction_bt",120:"direction_rl",121:"direction_lr"},productions_:[0,[3,2],[5,0],[5,2],[6,1],[6,1],[6,1],[6,1],[6,1],[4,2],[4,2],[4,2],[4,3],[16,2],[16,1],[17,1],[17,1],[17,1],[15,1],[15,1],[15,2],[19,2],[19,2],[19,1],[19,1],[18,2],[18,1],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,9],[7,6],[7,4],[7,1],[7,2],[7,2],[7,1],[21,1],[21,1],[21,1],[20,3],[20,4],[20,2],[20,1],[40,1],[40,5],[41,1],[41,3],[43,4],[43,4],[43,6],[43,4],[43,4],[43,4],[43,8],[43,4],[43,4],[43,4],[43,6],[43,4],[43,4],[43,4],[43,4],[43,4],[43,1],[39,2],[39,3],[39,3],[39,1],[39,3],[74,1],[74,2],[74,1],[74,1],[70,1],[71,3],[30,1],[30,2],[30,1],[30,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[28,1],[28,2],[28,1],[28,1],[24,5],[25,5],[26,2],[26,4],[26,3],[26,5],[26,3],[26,5],[26,5],[26,7],[26,2],[26,4],[26,2],[26,4],[26,4],[26,6],[22,5],[23,5],[23,5],[23,9],[23,9],[23,7],[23,7],[100,1],[100,3],[89,1],[89,3],[104,1],[104,2],[105,1],[105,1],[105,1],[105,1],[105,1],[105,1],[105,1],[105,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[79,1],[79,1],[79,1],[79,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[76,1],[76,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[45,1],[45,2],[98,1],[98,2],[33,1],[33,1],[33,1],[33,1]],performAction:(0,o.K2)((function(t,e,s,n,r,u,i){var a=u.length-1;switch(r){case 2:case 28:case 29:case 30:case 31:case 32:this.$=[];break;case 3:(!Array.isArray(u[a])||u[a].length>0)&&u[a-1].push(u[a]),this.$=u[a-1];break;case 4:case 176:case 49:case 71:case 174:this.$=u[a];break;case 11:n.setDirection("TB"),this.$="TB";break;case 12:n.setDirection(u[a-1]),this.$=u[a-1];break;case 27:this.$=u[a-1].nodes;break;case 33:this.$=n.addSubGraph(u[a-6],u[a-1],u[a-4]);break;case 34:this.$=n.addSubGraph(u[a-3],u[a-1],u[a-3]);break;case 35:this.$=n.addSubGraph(void 0,u[a-1],void 0);break;case 37:this.$=u[a].trim(),n.setAccTitle(this.$);break;case 38:case 39:this.$=u[a].trim(),n.setAccDescription(this.$);break;case 43:n.addLink(u[a-2].stmt,u[a],u[a-1]),this.$={stmt:u[a],nodes:u[a].concat(u[a-2].nodes)};break;case 44:n.addLink(u[a-3].stmt,u[a-1],u[a-2]),this.$={stmt:u[a-1],nodes:u[a-1].concat(u[a-3].nodes)};break;case 45:this.$={stmt:u[a-1],nodes:u[a-1]};break;case 46:this.$={stmt:u[a],nodes:u[a]};break;case 47:case 121:case 123:this.$=[u[a]];break;case 48:this.$=u[a-4].concat(u[a]);break;case 50:this.$=u[a-2],n.setClass(u[a-2],u[a]);break;case 51:this.$=u[a-3],n.addVertex(u[a-3],u[a-1],"square");break;case 52:this.$=u[a-3],n.addVertex(u[a-3],u[a-1],"doublecircle");break;case 53:this.$=u[a-5],n.addVertex(u[a-5],u[a-2],"circle");break;case 54:this.$=u[a-3],n.addVertex(u[a-3],u[a-1],"ellipse");break;case 55:this.$=u[a-3],n.addVertex(u[a-3],u[a-1],"stadium");break;case 56:this.$=u[a-3],n.addVertex(u[a-3],u[a-1],"subroutine");break;case 57:this.$=u[a-7],n.addVertex(u[a-7],u[a-1],"rect",void 0,void 0,void 0,Object.fromEntries([[u[a-5],u[a-3]]]));break;case 58:this.$=u[a-3],n.addVertex(u[a-3],u[a-1],"cylinder");break;case 59:this.$=u[a-3],n.addVertex(u[a-3],u[a-1],"round");break;case 60:this.$=u[a-3],n.addVertex(u[a-3],u[a-1],"diamond");break;case 61:this.$=u[a-5],n.addVertex(u[a-5],u[a-2],"hexagon");break;case 62:this.$=u[a-3],n.addVertex(u[a-3],u[a-1],"odd");break;case 63:this.$=u[a-3],n.addVertex(u[a-3],u[a-1],"trapezoid");break;case 64:this.$=u[a-3],n.addVertex(u[a-3],u[a-1],"inv_trapezoid");break;case 65:this.$=u[a-3],n.addVertex(u[a-3],u[a-1],"lean_right");break;case 66:this.$=u[a-3],n.addVertex(u[a-3],u[a-1],"lean_left");break;case 67:this.$=u[a],n.addVertex(u[a]);break;case 68:u[a-1].text=u[a],this.$=u[a-1];break;case 69:case 70:u[a-2].text=u[a-1],this.$=u[a-2];break;case 72:var o=n.destructLink(u[a],u[a-2]);this.$={type:o.type,stroke:o.stroke,length:o.length,text:u[a-1]};break;case 73:case 79:case 94:case 96:this.$={text:u[a],type:"text"};break;case 74:case 80:case 95:this.$={text:u[a-1].text+""+u[a],type:u[a-1].type};break;case 75:case 81:this.$={text:u[a],type:"string"};break;case 76:case 82:case 97:this.$={text:u[a],type:"markdown"};break;case 77:o=n.destructLink(u[a]);this.$={type:o.type,stroke:o.stroke,length:o.length};break;case 78:this.$=u[a-1];break;case 98:this.$=u[a-4],n.addClass(u[a-2],u[a]);break;case 99:this.$=u[a-4],n.setClass(u[a-2],u[a]);break;case 100:case 108:this.$=u[a-1],n.setClickEvent(u[a-1],u[a]);break;case 101:case 109:this.$=u[a-3],n.setClickEvent(u[a-3],u[a-2]),n.setTooltip(u[a-3],u[a]);break;case 102:this.$=u[a-2],n.setClickEvent(u[a-2],u[a-1],u[a]);break;case 103:this.$=u[a-4],n.setClickEvent(u[a-4],u[a-3],u[a-2]),n.setTooltip(u[a-4],u[a]);break;case 104:this.$=u[a-2],n.setLink(u[a-2],u[a]);break;case 105:this.$=u[a-4],n.setLink(u[a-4],u[a-2]),n.setTooltip(u[a-4],u[a]);break;case 106:this.$=u[a-4],n.setLink(u[a-4],u[a-2],u[a]);break;case 107:this.$=u[a-6],n.setLink(u[a-6],u[a-4],u[a]),n.setTooltip(u[a-6],u[a-2]);break;case 110:this.$=u[a-1],n.setLink(u[a-1],u[a]);break;case 111:this.$=u[a-3],n.setLink(u[a-3],u[a-2]),n.setTooltip(u[a-3],u[a]);break;case 112:this.$=u[a-3],n.setLink(u[a-3],u[a-2],u[a]);break;case 113:this.$=u[a-5],n.setLink(u[a-5],u[a-4],u[a]),n.setTooltip(u[a-5],u[a-2]);break;case 114:this.$=u[a-4],n.addVertex(u[a-2],void 0,void 0,u[a]);break;case 115:this.$=u[a-4],n.updateLink([u[a-2]],u[a]);break;case 116:this.$=u[a-4],n.updateLink(u[a-2],u[a]);break;case 117:this.$=u[a-8],n.updateLinkInterpolate([u[a-6]],u[a-2]),n.updateLink([u[a-6]],u[a]);break;case 118:this.$=u[a-8],n.updateLinkInterpolate(u[a-6],u[a-2]),n.updateLink(u[a-6],u[a]);break;case 119:this.$=u[a-6],n.updateLinkInterpolate([u[a-4]],u[a]);break;case 120:this.$=u[a-6],n.updateLinkInterpolate(u[a-4],u[a]);break;case 122:case 124:u[a-2].push(u[a]),this.$=u[a-2];break;case 126:this.$=u[a-1]+u[a];break;case 175:case 177:this.$=u[a-1]+""+u[a];break;case 178:this.$={stmt:"dir",value:"TB"};break;case 179:this.$={stmt:"dir",value:"BT"};break;case 180:this.$={stmt:"dir",value:"RL"};break;case 181:this.$={stmt:"dir",value:"LR"}}}),"anonymous"),table:[{3:1,4:2,9:e,10:s,12:n},{1:[3]},t(r,u,{5:6}),{4:7,9:e,10:s,12:n},{4:8,9:e,10:s,12:n},{13:[1,9],14:[1,10]},{1:[2,1],6:11,7:12,8:i,9:a,10:c,11:l,20:17,22:18,23:19,24:20,25:21,26:22,27:h,33:24,34:d,36:p,38:A,40:28,41:38,42:g,43:39,45:40,58:y,81:f,82:k,83:b,84:E,85:D,86:m,99:C,102:T,103:x,106:F,108:S,110:41,111:_,112:B,113:v,118:w,119:L,120:$,121:R},t(r,[2,9]),t(r,[2,10]),t(r,[2,11]),{8:[1,54],9:[1,55],10:I,15:53,18:56},t(K,[2,3]),t(K,[2,4]),t(K,[2,5]),t(K,[2,6]),t(K,[2,7]),t(K,[2,8]),{8:N,9:P,11:O,21:58,39:59,70:63,73:[1,64],75:[1,65]},{8:N,9:P,11:O,21:66},{8:N,9:P,11:O,21:67},{8:N,9:P,11:O,21:68},{8:N,9:P,11:O,21:69},{8:N,9:P,11:O,21:70},{8:N,9:P,10:[1,71],11:O,21:72},t(K,[2,36]),{35:[1,73]},{37:[1,74]},t(K,[2,39]),t(M,[2,46],{18:75,10:I}),{10:[1,76]},{10:[1,77]},{10:[1,78]},{10:[1,79]},{14:V,42:U,58:G,77:[1,83],86:W,92:[1,80],94:[1,81],98:82,102:Y,103:j,106:X,108:z,111:q,112:H,113:Q,117:84},t(K,[2,178]),t(K,[2,179]),t(K,[2,180]),t(K,[2,181]),t(Z,[2,47]),t(Z,[2,49],{44:[1,96]}),t(J,[2,67],{110:109,29:[1,97],42:g,46:[1,98],48:[1,99],50:[1,100],52:[1,101],54:[1,102],56:[1,103],58:y,61:[1,104],63:[1,105],65:[1,106],66:[1,107],68:[1,108],86:m,99:C,102:T,103:x,106:F,108:S,111:_,112:B,113:v}),t(tt,[2,174]),t(tt,[2,135]),t(tt,[2,136]),t(tt,[2,137]),t(tt,[2,138]),t(tt,[2,139]),t(tt,[2,140]),t(tt,[2,141]),t(tt,[2,142]),t(tt,[2,143]),t(tt,[2,144]),t(tt,[2,145]),t(r,[2,12]),t(r,[2,18]),t(r,[2,19]),{9:[1,110]},t(et,[2,26],{18:111,10:I}),t(K,[2,27]),{40:112,41:38,42:g,43:39,45:40,58:y,86:m,99:C,102:T,103:x,106:F,108:S,110:41,111:_,112:B,113:v},t(K,[2,40]),t(K,[2,41]),t(K,[2,42]),t(st,[2,71],{71:113,60:[1,115],72:[1,114]}),{74:116,76:117,77:[1,118],78:[1,119],113:nt,116:rt},t([42,58,60,72,86,99,102,103,106,108,111,112,113],[2,77]),t(K,[2,28]),t(K,[2,29]),t(K,[2,30]),t(K,[2,31]),t(K,[2,32]),{10:ut,12:it,14:at,27:ot,28:122,32:ct,42:lt,58:ht,73:dt,77:[1,124],78:[1,125],80:135,81:pt,82:At,83:gt,84:yt,85:ft,86:kt,87:bt,88:123,102:Et,106:Dt,108:mt,111:Ct,112:Tt,113:xt},t(Ft,u,{5:148}),t(K,[2,37]),t(K,[2,38]),t(M,[2,45],{42:St}),{42:g,45:150,58:y,86:m,99:C,102:T,103:x,106:F,108:S,110:41,111:_,112:B,113:v},{99:[1,151],100:152,102:[1,153]},{42:g,45:154,58:y,86:m,99:C,102:T,103:x,106:F,108:S,110:41,111:_,112:B,113:v},{42:g,45:155,58:y,86:m,99:C,102:T,103:x,106:F,108:S,110:41,111:_,112:B,113:v},t(_t,[2,100],{10:[1,156],93:[1,157]}),{77:[1,158]},t(_t,[2,108],{117:160,10:[1,159],14:V,42:U,58:G,86:W,102:Y,103:j,106:X,108:z,111:q,112:H,113:Q}),t(_t,[2,110],{10:[1,161]}),t(Bt,[2,176]),t(Bt,[2,163]),t(Bt,[2,164]),t(Bt,[2,165]),t(Bt,[2,166]),t(Bt,[2,167]),t(Bt,[2,168]),t(Bt,[2,169]),t(Bt,[2,170]),t(Bt,[2,171]),t(Bt,[2,172]),t(Bt,[2,173]),{42:g,45:162,58:y,86:m,99:C,102:T,103:x,106:F,108:S,110:41,111:_,112:B,113:v},{30:163,65:vt,77:wt,78:Lt,79:164,113:$t,114:Rt,115:It},{30:171,65:vt,77:wt,78:Lt,79:164,113:$t,114:Rt,115:It},{30:173,48:[1,172],65:vt,77:wt,78:Lt,79:164,113:$t,114:Rt,115:It},{30:174,65:vt,77:wt,78:Lt,79:164,113:$t,114:Rt,115:It},{30:175,65:vt,77:wt,78:Lt,79:164,113:$t,114:Rt,115:It},{30:176,65:vt,77:wt,78:Lt,79:164,113:$t,114:Rt,115:It},{106:[1,177]},{30:178,65:vt,77:wt,78:Lt,79:164,113:$t,114:Rt,115:It},{30:179,63:[1,180],65:vt,77:wt,78:Lt,79:164,113:$t,114:Rt,115:It},{30:181,65:vt,77:wt,78:Lt,79:164,113:$t,114:Rt,115:It},{30:182,65:vt,77:wt,78:Lt,79:164,113:$t,114:Rt,115:It},{30:183,65:vt,77:wt,78:Lt,79:164,113:$t,114:Rt,115:It},t(tt,[2,175]),t(r,[2,20]),t(et,[2,25]),t(M,[2,43],{18:184,10:I}),t(st,[2,68],{10:[1,185]}),{10:[1,186]},{30:187,65:vt,77:wt,78:Lt,79:164,113:$t,114:Rt,115:It},{75:[1,188],76:189,113:nt,116:rt},t(Kt,[2,73]),t(Kt,[2,75]),t(Kt,[2,76]),t(Kt,[2,161]),t(Kt,[2,162]),{8:N,9:P,10:ut,11:O,12:it,14:at,21:191,27:ot,29:[1,190],32:ct,42:lt,58:ht,73:dt,80:135,81:pt,82:At,83:gt,84:yt,85:ft,86:kt,87:bt,88:192,102:Et,106:Dt,108:mt,111:Ct,112:Tt,113:xt},t(Nt,[2,94]),t(Nt,[2,96]),t(Nt,[2,97]),t(Nt,[2,150]),t(Nt,[2,151]),t(Nt,[2,152]),t(Nt,[2,153]),t(Nt,[2,154]),t(Nt,[2,155]),t(Nt,[2,156]),t(Nt,[2,157]),t(Nt,[2,158]),t(Nt,[2,159]),t(Nt,[2,160]),t(Nt,[2,83]),t(Nt,[2,84]),t(Nt,[2,85]),t(Nt,[2,86]),t(Nt,[2,87]),t(Nt,[2,88]),t(Nt,[2,89]),t(Nt,[2,90]),t(Nt,[2,91]),t(Nt,[2,92]),t(Nt,[2,93]),{6:11,7:12,8:i,9:a,10:c,11:l,20:17,22:18,23:19,24:20,25:21,26:22,27:h,32:[1,193],33:24,34:d,36:p,38:A,40:28,41:38,42:g,43:39,45:40,58:y,81:f,82:k,83:b,84:E,85:D,86:m,99:C,102:T,103:x,106:F,108:S,110:41,111:_,112:B,113:v,118:w,119:L,120:$,121:R},{10:I,18:194},{10:[1,195],42:g,58:y,86:m,99:C,102:T,103:x,106:F,108:S,110:109,111:_,112:B,113:v},{10:[1,196]},{10:[1,197],103:[1,198]},t(Pt,[2,121]),{10:[1,199],42:g,58:y,86:m,99:C,102:T,103:x,106:F,108:S,110:109,111:_,112:B,113:v},{10:[1,200],42:g,58:y,86:m,99:C,102:T,103:x,106:F,108:S,110:109,111:_,112:B,113:v},{77:[1,201]},t(_t,[2,102],{10:[1,202]}),t(_t,[2,104],{10:[1,203]}),{77:[1,204]},t(Bt,[2,177]),{77:[1,205],95:[1,206]},t(Z,[2,50],{110:109,42:g,58:y,86:m,99:C,102:T,103:x,106:F,108:S,111:_,112:B,113:v}),{31:[1,207],65:vt,79:208,113:$t,114:Rt,115:It},t(Ot,[2,79]),t(Ot,[2,81]),t(Ot,[2,82]),t(Ot,[2,146]),t(Ot,[2,147]),t(Ot,[2,148]),t(Ot,[2,149]),{47:[1,209],65:vt,79:208,113:$t,114:Rt,115:It},{30:210,65:vt,77:wt,78:Lt,79:164,113:$t,114:Rt,115:It},{49:[1,211],65:vt,79:208,113:$t,114:Rt,115:It},{51:[1,212],65:vt,79:208,113:$t,114:Rt,115:It},{53:[1,213],65:vt,79:208,113:$t,114:Rt,115:It},{55:[1,214],65:vt,79:208,113:$t,114:Rt,115:It},{58:[1,215]},{62:[1,216],65:vt,79:208,113:$t,114:Rt,115:It},{64:[1,217],65:vt,79:208,113:$t,114:Rt,115:It},{30:218,65:vt,77:wt,78:Lt,79:164,113:$t,114:Rt,115:It},{31:[1,219],65:vt,79:208,113:$t,114:Rt,115:It},{65:vt,67:[1,220],69:[1,221],79:208,113:$t,114:Rt,115:It},{65:vt,67:[1,223],69:[1,222],79:208,113:$t,114:Rt,115:It},t(M,[2,44],{42:St}),t(st,[2,70]),t(st,[2,69]),{60:[1,224],65:vt,79:208,113:$t,114:Rt,115:It},t(st,[2,72]),t(Kt,[2,74]),{30:225,65:vt,77:wt,78:Lt,79:164,113:$t,114:Rt,115:It},t(Ft,u,{5:226}),t(Nt,[2,95]),t(K,[2,35]),{41:227,42:g,43:39,45:40,58:y,86:m,99:C,102:T,103:x,106:F,108:S,110:41,111:_,112:B,113:v},{10:Mt,58:Vt,81:Ut,89:228,102:Gt,104:229,105:230,106:Wt,107:Yt,108:jt,109:Xt},{10:Mt,58:Vt,81:Ut,89:239,101:[1,240],102:Gt,104:229,105:230,106:Wt,107:Yt,108:jt,109:Xt},{10:Mt,58:Vt,81:Ut,89:241,101:[1,242],102:Gt,104:229,105:230,106:Wt,107:Yt,108:jt,109:Xt},{102:[1,243]},{10:Mt,58:Vt,81:Ut,89:244,102:Gt,104:229,105:230,106:Wt,107:Yt,108:jt,109:Xt},{42:g,45:245,58:y,86:m,99:C,102:T,103:x,106:F,108:S,110:41,111:_,112:B,113:v},t(_t,[2,101]),{77:[1,246]},{77:[1,247],95:[1,248]},t(_t,[2,109]),t(_t,[2,111],{10:[1,249]}),t(_t,[2,112]),t(J,[2,51]),t(Ot,[2,80]),t(J,[2,52]),{49:[1,250],65:vt,79:208,113:$t,114:Rt,115:It},t(J,[2,59]),t(J,[2,54]),t(J,[2,55]),t(J,[2,56]),{106:[1,251]},t(J,[2,58]),t(J,[2,60]),{64:[1,252],65:vt,79:208,113:$t,114:Rt,115:It},t(J,[2,62]),t(J,[2,63]),t(J,[2,65]),t(J,[2,64]),t(J,[2,66]),t([10,42,58,86,99,102,103,106,108,111,112,113],[2,78]),{31:[1,253],65:vt,79:208,113:$t,114:Rt,115:It},{6:11,7:12,8:i,9:a,10:c,11:l,20:17,22:18,23:19,24:20,25:21,26:22,27:h,32:[1,254],33:24,34:d,36:p,38:A,40:28,41:38,42:g,43:39,45:40,58:y,81:f,82:k,83:b,84:E,85:D,86:m,99:C,102:T,103:x,106:F,108:S,110:41,111:_,112:B,113:v,118:w,119:L,120:$,121:R},t(Z,[2,48]),t(_t,[2,114],{103:zt}),t(qt,[2,123],{105:256,10:Mt,58:Vt,81:Ut,102:Gt,106:Wt,107:Yt,108:jt,109:Xt}),t(Ht,[2,125]),t(Ht,[2,127]),t(Ht,[2,128]),t(Ht,[2,129]),t(Ht,[2,130]),t(Ht,[2,131]),t(Ht,[2,132]),t(Ht,[2,133]),t(Ht,[2,134]),t(_t,[2,115],{103:zt}),{10:[1,257]},t(_t,[2,116],{103:zt}),{10:[1,258]},t(Pt,[2,122]),t(_t,[2,98],{103:zt}),t(_t,[2,99],{110:109,42:g,58:y,86:m,99:C,102:T,103:x,106:F,108:S,111:_,112:B,113:v}),t(_t,[2,103]),t(_t,[2,105],{10:[1,259]}),t(_t,[2,106]),{95:[1,260]},{49:[1,261]},{60:[1,262]},{64:[1,263]},{8:N,9:P,11:O,21:264},t(K,[2,34]),{10:Mt,58:Vt,81:Ut,102:Gt,104:265,105:230,106:Wt,107:Yt,108:jt,109:Xt},t(Ht,[2,126]),{14:V,42:U,58:G,86:W,98:266,102:Y,103:j,106:X,108:z,111:q,112:H,113:Q,117:84},{14:V,42:U,58:G,86:W,98:267,102:Y,103:j,106:X,108:z,111:q,112:H,113:Q,117:84},{95:[1,268]},t(_t,[2,113]),t(J,[2,53]),{30:269,65:vt,77:wt,78:Lt,79:164,113:$t,114:Rt,115:It},t(J,[2,61]),t(Ft,u,{5:270}),t(qt,[2,124],{105:256,10:Mt,58:Vt,81:Ut,102:Gt,106:Wt,107:Yt,108:jt,109:Xt}),t(_t,[2,119],{117:160,10:[1,271],14:V,42:U,58:G,86:W,102:Y,103:j,106:X,108:z,111:q,112:H,113:Q}),t(_t,[2,120],{117:160,10:[1,272],14:V,42:U,58:G,86:W,102:Y,103:j,106:X,108:z,111:q,112:H,113:Q}),t(_t,[2,107]),{31:[1,273],65:vt,79:208,113:$t,114:Rt,115:It},{6:11,7:12,8:i,9:a,10:c,11:l,20:17,22:18,23:19,24:20,25:21,26:22,27:h,32:[1,274],33:24,34:d,36:p,38:A,40:28,41:38,42:g,43:39,45:40,58:y,81:f,82:k,83:b,84:E,85:D,86:m,99:C,102:T,103:x,106:F,108:S,110:41,111:_,112:B,113:v,118:w,119:L,120:$,121:R},{10:Mt,58:Vt,81:Ut,89:275,102:Gt,104:229,105:230,106:Wt,107:Yt,108:jt,109:Xt},{10:Mt,58:Vt,81:Ut,89:276,102:Gt,104:229,105:230,106:Wt,107:Yt,108:jt,109:Xt},t(J,[2,57]),t(K,[2,33]),t(_t,[2,117],{103:zt}),t(_t,[2,118],{103:zt})],defaultActions:{},parseError:(0,o.K2)((function(t,e){if(!e.recoverable){var s=new Error(t);throw s.hash=e,s}this.trace(t)}),"parseError"),parse:(0,o.K2)((function(t){var e=this,s=[0],n=[],r=[null],u=[],i=this.table,a="",c=0,l=0,h=0,d=u.slice.call(arguments,1),p=Object.create(this.lexer),A={yy:{}};for(var g in this.yy)Object.prototype.hasOwnProperty.call(this.yy,g)&&(A.yy[g]=this.yy[g]);p.setInput(t,A.yy),A.yy.lexer=p,A.yy.parser=this,void 0===p.yylloc&&(p.yylloc={});var y=p.yylloc;u.push(y);var f=p.options&&p.options.ranges;function k(){var t;return"number"!=typeof(t=n.pop()||p.lex()||1)&&(t instanceof Array&&(t=(n=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof A.yy.parseError?this.parseError=A.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,o.K2)((function(t){s.length=s.length-2*t,r.length=r.length-t,u.length=u.length-t}),"popStack"),(0,o.K2)(k,"lex");for(var b,E,D,m,C,T,x,F,S,_={};;){if(D=s[s.length-1],this.defaultActions[D]?m=this.defaultActions[D]:(null==b&&(b=k()),m=i[D]&&i[D][b]),void 0===m||!m.length||!m[0]){var B="";for(T in S=[],i[D])this.terminals_[T]&&T>2&&S.push("'"+this.terminals_[T]+"'");B=p.showPosition?"Parse error on line "+(c+1)+":\n"+p.showPosition()+"\nExpecting "+S.join(", ")+", got '"+(this.terminals_[b]||b)+"'":"Parse error on line "+(c+1)+": Unexpected "+(1==b?"end of input":"'"+(this.terminals_[b]||b)+"'"),this.parseError(B,{text:p.match,token:this.terminals_[b]||b,line:p.yylineno,loc:y,expected:S})}if(m[0]instanceof Array&&m.length>1)throw new Error("Parse Error: multiple actions possible at state: "+D+", token: "+b);switch(m[0]){case 1:s.push(b),r.push(p.yytext),u.push(p.yylloc),s.push(m[1]),b=null,E?(b=E,E=null):(l=p.yyleng,a=p.yytext,c=p.yylineno,y=p.yylloc,h>0&&h--);break;case 2:if(x=this.productions_[m[1]][1],_.$=r[r.length-x],_._$={first_line:u[u.length-(x||1)].first_line,last_line:u[u.length-1].last_line,first_column:u[u.length-(x||1)].first_column,last_column:u[u.length-1].last_column},f&&(_._$.range=[u[u.length-(x||1)].range[0],u[u.length-1].range[1]]),void 0!==(C=this.performAction.apply(_,[a,l,c,A.yy,m[1],r,u].concat(d))))return C;x&&(s=s.slice(0,-1*x*2),r=r.slice(0,-1*x),u=u.slice(0,-1*x)),s.push(this.productions_[m[1]][0]),r.push(_.$),u.push(_._$),F=i[s[s.length-2]][s[s.length-1]],s.push(F);break;case 3:return!0}}return!0}),"parse")},Zt=function(){return{EOF:1,parseError:(0,o.K2)((function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)}),"parseError"),setInput:(0,o.K2)((function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this}),"setInput"),input:(0,o.K2)((function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t}),"input"),unput:(0,o.K2)((function(t){var e=t.length,s=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var n=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),s.length-1&&(this.yylineno-=s.length-1);var r=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:s?(s.length===n.length?this.yylloc.first_column:0)+n[n.length-s.length].length-s[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[r[0],r[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this}),"unput"),more:(0,o.K2)((function(){return this._more=!0,this}),"more"),reject:(0,o.K2)((function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"reject"),less:(0,o.K2)((function(t){this.unput(this.match.slice(t))}),"less"),pastInput:(0,o.K2)((function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")}),"pastInput"),upcomingInput:(0,o.K2)((function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")}),"upcomingInput"),showPosition:(0,o.K2)((function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"}),"showPosition"),test_match:(0,o.K2)((function(t,e){var s,n,r;if(this.options.backtrack_lexer&&(r={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(r.yylloc.range=this.yylloc.range.slice(0))),(n=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=n.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:n?n[n.length-1].length-n[n.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],s=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),s)return s;if(this._backtrack){for(var u in r)this[u]=r[u];return!1}return!1}),"test_match"),next:(0,o.K2)((function(){if(this.done)return this.EOF;var t,e,s,n;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var r=this._currentRules(),u=0;ue[0].length)){if(e=s,n=u,this.options.backtrack_lexer){if(!1!==(t=this.test_match(s,r[u])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,r[n]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"next"),lex:(0,o.K2)((function(){var t=this.next();return t||this.lex()}),"lex"),begin:(0,o.K2)((function(t){this.conditionStack.push(t)}),"begin"),popState:(0,o.K2)((function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]}),"popState"),_currentRules:(0,o.K2)((function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules}),"_currentRules"),topState:(0,o.K2)((function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"}),"topState"),pushState:(0,o.K2)((function(t){this.begin(t)}),"pushState"),stateStackSize:(0,o.K2)((function(){return this.conditionStack.length}),"stateStackSize"),options:{},performAction:(0,o.K2)((function(t,e,s,n){switch(s){case 0:return this.begin("acc_title"),34;case 1:return this.popState(),"acc_title_value";case 2:return this.begin("acc_descr"),36;case 3:return this.popState(),"acc_descr_value";case 4:this.begin("acc_descr_multiline");break;case 5:case 8:case 11:case 14:case 17:case 27:this.popState();break;case 6:return"acc_descr_multiline_value";case 7:this.begin("callbackname");break;case 9:this.popState(),this.begin("callbackargs");break;case 10:return 92;case 12:return 93;case 13:return"MD_STR";case 15:this.begin("md_string");break;case 16:return"STR";case 18:this.pushState("string");break;case 19:return 81;case 20:return 99;case 21:return 82;case 22:return 101;case 23:return 83;case 24:return 84;case 25:return 94;case 26:this.begin("click");break;case 28:return 85;case 29:case 30:case 31:return t.lex.firstGraph()&&this.begin("dir"),12;case 32:return 27;case 33:return 32;case 34:case 35:case 36:case 37:return 95;case 38:return this.popState(),13;case 39:case 40:case 41:case 42:case 43:case 44:case 45:case 46:case 47:case 48:return this.popState(),14;case 49:return 118;case 50:return 119;case 51:return 120;case 52:return 121;case 53:return 102;case 54:case 95:return 108;case 55:return 44;case 56:return 58;case 57:case 96:return 42;case 58:return 8;case 59:return 103;case 60:case 94:return 112;case 61:case 64:case 67:return this.popState(),75;case 62:return this.pushState("edgeText"),73;case 63:case 66:case 69:return 116;case 65:return this.pushState("thickEdgeText"),73;case 68:return this.pushState("dottedEdgeText"),73;case 70:return 75;case 71:return this.popState(),51;case 72:case 108:return"TEXT";case 73:return this.pushState("ellipseText"),50;case 74:return this.popState(),53;case 75:return this.pushState("text"),52;case 76:return this.popState(),55;case 77:return this.pushState("text"),54;case 78:return 56;case 79:return this.pushState("text"),65;case 80:return this.popState(),62;case 81:return this.pushState("text"),61;case 82:return this.popState(),47;case 83:return this.pushState("text"),46;case 84:return this.popState(),67;case 85:return this.popState(),69;case 86:return 114;case 87:return this.pushState("trapText"),66;case 88:return this.pushState("trapText"),68;case 89:return 115;case 90:return 65;case 91:return 87;case 92:return"SEP";case 93:return 86;case 97:return 106;case 98:return 111;case 99:return 113;case 100:return this.popState(),60;case 101:return this.pushState("text"),60;case 102:return this.popState(),49;case 103:return this.pushState("text"),48;case 104:return this.popState(),31;case 105:return this.pushState("text"),29;case 106:return this.popState(),64;case 107:return this.pushState("text"),63;case 109:return"QUOTE";case 110:return 9;case 111:return 10;case 112:return 11}}),"anonymous"),rules:[/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["][`])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:["])/,/^(?:style\b)/,/^(?:default\b)/,/^(?:linkStyle\b)/,/^(?:interpolate\b)/,/^(?:classDef\b)/,/^(?:class\b)/,/^(?:href[\s])/,/^(?:click[\s]+)/,/^(?:[\s\n])/,/^(?:[^\s\n]*)/,/^(?:flowchart-elk\b)/,/^(?:graph\b)/,/^(?:flowchart\b)/,/^(?:subgraph\b)/,/^(?:end\b\s*)/,/^(?:_self\b)/,/^(?:_blank\b)/,/^(?:_parent\b)/,/^(?:_top\b)/,/^(?:(\r?\n)*\s*\n)/,/^(?:\s*LR\b)/,/^(?:\s*RL\b)/,/^(?:\s*TB\b)/,/^(?:\s*BT\b)/,/^(?:\s*TD\b)/,/^(?:\s*BR\b)/,/^(?:\s*<)/,/^(?:\s*>)/,/^(?:\s*\^)/,/^(?:\s*v\b)/,/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:[0-9]+)/,/^(?:#)/,/^(?::::)/,/^(?::)/,/^(?:&)/,/^(?:;)/,/^(?:,)/,/^(?:\*)/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?--\s*)/,/^(?:[^-]|-(?!-)+)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?==\s*)/,/^(?:[^=]|=(?!))/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?:\s*[xo<]?-\.\s*)/,/^(?:[^\.]|\.(?!))/,/^(?:\s*~~[\~]+\s*)/,/^(?:[-/\)][\)])/,/^(?:[^\(\)\[\]\{\}]|!\)+)/,/^(?:\(-)/,/^(?:\]\))/,/^(?:\(\[)/,/^(?:\]\])/,/^(?:\[\[)/,/^(?:\[\|)/,/^(?:>)/,/^(?:\)\])/,/^(?:\[\()/,/^(?:\)\)\))/,/^(?:\(\(\()/,/^(?:[\\(?=\])][\]])/,/^(?:\/(?=\])\])/,/^(?:\/(?!\])|\\(?!\])|[^\\\[\]\(\)\{\}\/]+)/,/^(?:\[\/)/,/^(?:\[\\)/,/^(?:<)/,/^(?:>)/,/^(?:\^)/,/^(?:\\\|)/,/^(?:v\b)/,/^(?:\*)/,/^(?:#)/,/^(?:&)/,/^(?:([A-Za-z0-9!"\#$%&'*+\.`?\\_\/]|-(?=[^\>\-\.])|(?!))+)/,/^(?:-)/,/^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/,/^(?:\|)/,/^(?:\|)/,/^(?:\))/,/^(?:\()/,/^(?:\])/,/^(?:\[)/,/^(?:(\}))/,/^(?:\{)/,/^(?:[^\[\]\(\)\{\}\|\"]+)/,/^(?:")/,/^(?:(\r?\n)+)/,/^(?:\s)/,/^(?:$)/],conditions:{callbackargs:{rules:[11,12,15,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},callbackname:{rules:[8,9,10,15,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},href:{rules:[15,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},click:{rules:[15,18,27,28,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},dottedEdgeText:{rules:[15,18,67,69,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},thickEdgeText:{rules:[15,18,64,66,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},edgeText:{rules:[15,18,61,63,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},trapText:{rules:[15,18,70,73,75,77,81,83,84,85,86,87,88,101,103,105,107],inclusive:!1},ellipseText:{rules:[15,18,70,71,72,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},text:{rules:[15,18,70,73,74,75,76,77,80,81,82,83,87,88,100,101,102,103,104,105,106,107,108],inclusive:!1},vertex:{rules:[15,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},dir:{rules:[15,18,38,39,40,41,42,43,44,45,46,47,48,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},acc_descr_multiline:{rules:[5,6,15,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},acc_descr:{rules:[3,15,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},acc_title:{rules:[1,15,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},md_string:{rules:[13,14,15,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},string:{rules:[15,16,17,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},INITIAL:{rules:[0,2,4,7,15,18,19,20,21,22,23,24,25,26,29,30,31,32,33,34,35,36,37,49,50,51,52,53,54,55,56,57,58,59,60,61,62,64,65,67,68,70,73,75,77,78,79,81,83,87,88,89,90,91,92,93,94,95,96,97,98,99,101,103,105,107,109,110,111,112],inclusive:!0}}}}();function Jt(){this.yy={}}return Qt.lexer=Zt,(0,o.K2)(Jt,"Parser"),Jt.prototype=Qt,Qt.Parser=Jt,new Jt}();ft.parser=ft;var kt=ft,bt=(0,o.K2)(((t,e)=>{const s=l.A,n=s(t,"r"),r=s(t,"g"),u=s(t,"b");return h.A(n,r,u,e)}),"fade"),Et={parser:kt,db:gt,renderer:yt,styles:(0,o.K2)((t=>`.label {\n font-family: ${t.fontFamily};\n color: ${t.nodeTextColor||t.textColor};\n }\n .cluster-label text {\n fill: ${t.titleColor};\n }\n .cluster-label span {\n color: ${t.titleColor};\n }\n .cluster-label span p {\n background-color: transparent;\n }\n\n .label text,span {\n fill: ${t.nodeTextColor||t.textColor};\n color: ${t.nodeTextColor||t.textColor};\n }\n\n .node rect,\n .node circle,\n .node ellipse,\n .node polygon,\n .node path {\n fill: ${t.mainBkg};\n stroke: ${t.nodeBorder};\n stroke-width: 1px;\n }\n .rough-node .label text , .node .label text {\n text-anchor: middle;\n }\n // .flowchart-label .text-outer-tspan {\n // text-anchor: middle;\n // }\n // .flowchart-label .text-inner-tspan {\n // text-anchor: start;\n // }\n\n .node .katex path {\n fill: #000;\n stroke: #000;\n stroke-width: 1px;\n }\n\n .node .label {\n text-align: center;\n }\n .node.clickable {\n cursor: pointer;\n }\n\n .arrowheadPath {\n fill: ${t.arrowheadColor};\n }\n\n .edgePath .path {\n stroke: ${t.lineColor};\n stroke-width: 2.0px;\n }\n\n .flowchart-link {\n stroke: ${t.lineColor};\n fill: none;\n }\n\n .edgeLabel {\n background-color: ${t.edgeLabelBackground};\n p {\n background-color: ${t.edgeLabelBackground};\n }\n rect {\n opacity: 0.5;\n background-color: ${t.edgeLabelBackground};\n fill: ${t.edgeLabelBackground};\n }\n text-align: center;\n }\n\n /* For html labels only */\n .labelBkg {\n background-color: ${bt(t.edgeLabelBackground,.5)};\n // background-color:\n }\n\n .cluster rect {\n fill: ${t.clusterBkg};\n stroke: ${t.clusterBorder};\n stroke-width: 1px;\n }\n\n .cluster text {\n fill: ${t.titleColor};\n }\n\n .cluster span {\n color: ${t.titleColor};\n }\n /* .cluster div {\n color: ${t.titleColor};\n } */\n\n div.mermaidTooltip {\n position: absolute;\n text-align: center;\n max-width: 200px;\n padding: 2px;\n font-family: ${t.fontFamily};\n font-size: 12px;\n background: ${t.tertiaryColor};\n border: 1px solid ${t.border2};\n border-radius: 2px;\n pointer-events: none;\n z-index: 100;\n }\n\n .flowchartTitleText {\n text-anchor: middle;\n font-size: 18px;\n fill: ${t.textColor};\n }\n`),"getStyles"),init:(0,o.K2)((t=>{t.flowchart||(t.flowchart={}),t.layout&&(0,o.XV)({layout:t.layout}),t.flowchart.arrowMarkerAbsolute=t.arrowMarkerAbsolute,(0,o.XV)({flowchart:{arrowMarkerAbsolute:t.arrowMarkerAbsolute}}),gt.clear(),gt.setGen("gen-2")}),"init")}}}]); \ No newline at end of file diff --git a/assets/js/3773.8ca02dac.js b/assets/js/3773.8ca02dac.js new file mode 100644 index 00000000..4c4f82ae --- /dev/null +++ b/assets/js/3773.8ca02dac.js @@ -0,0 +1 @@ +(self.webpackChunkbeacon_docs=self.webpackChunkbeacon_docs||[]).push([[3773],{99320:function(e,t,n){!function(e,t,n,s){"use strict";const o=0,r=1,i=2,a=3,c=4,l=-1;class u{constructor({file:e,sourceRoot:n}={}){this._names=new t.SetArray,this._sources=new t.SetArray,this._sourcesContent=[],this._mappings=[],this.file=e,this.sourceRoot=n,this._ignoreList=new t.SetArray}}function h(e){return e}function p(e,t,n,s,o,r,i,a){return T(!1,e,t,n,s,o,r,i,a)}function d(e,t){return S(!1,e,t)}const f=(e,t,n,s,o,r,i,a)=>T(!0,e,t,n,s,o,r,i,a),m=(e,t)=>S(!0,e,t);function k(e,n,s){const{_sources:o,_sourcesContent:r}=h(e);r[t.put(o,n)]=s}function g(e,n,s=!0){const{_sources:o,_sourcesContent:r,_ignoreList:i}=h(e),a=t.put(o,n);a===r.length&&(r[a]=null),s?t.put(i,a):t.remove(i,a)}function x(e){const{_mappings:t,_sources:n,_sourcesContent:s,_names:o,_ignoreList:r}=h(e);return w(t),{version:3,file:e.file||void 0,names:o.array,sourceRoot:e.sourceRoot||void 0,sources:n.array,sourcesContent:s,mappings:t,ignoreList:r.array}}function _(e){const t=x(e);return Object.assign(Object.assign({},t),{mappings:n.encode(t.mappings)})}function y(e){const t=new s.TraceMap(e),n=new u({file:t.file,sourceRoot:t.sourceRoot});return A(h(n)._names,t.names),A(h(n)._sources,t.sources),h(n)._sourcesContent=t.sourcesContent||t.sources.map((()=>null)),h(n)._mappings=s.decodedMappings(t),t.ignoreList&&A(h(n)._ignoreList,t.ignoreList),n}function b(e){const t=[],{_mappings:n,_sources:s,_names:l}=h(e);for(let u=0;u=0&&!(t>=e[s][o]);n=s--);return n}function C(e,t,n){for(let s=e.length;s>t;s--)e[s]=e[s-1];e[t]=n}function w(e){const{length:t}=e;let n=t;for(let s=n-1;s>=0&&!(e[s].length>0);n=s,s--);ns&&(s=o)}f(n,s);const o=n.query+n.hash;switch(s){case 2:case 3:return o;case 4:{const s=n.path.slice(1);return s?a(t||e)&&!a(s)?"./"+s+o:s+o:o||"."}case 5:return n.path+o;default:return n.scheme+"//"+n.user+n.host+n.port+n.path+o}}return m}()},13534:function(e,t){!function(e){"use strict";class t{constructor(){this._indexes={__proto__:null},this.array=[]}}function n(e){return e}function s(e,t){return n(e)._indexes[t]}function o(e,t){const o=s(e,t);if(void 0!==o)return o;const{array:r,_indexes:i}=n(e),a=r.push(t);return i[t]=a-1}function r(e){const{array:t,_indexes:s}=n(e);0!==t.length&&(s[t.pop()]=void 0)}function i(e,t){const o=s(e,t);if(void 0===o)return;const{array:r,_indexes:i}=n(e);for(let n=o+1;ns.from(e.buffer,e.byteOffset,e.byteLength).toString()}:{decode(e){let t="";for(let n=0;n>>=1,c&&(o=-2147483648|-o),n[s]+=o,t}function h(e,n,s){return!(n>=s)&&e.charCodeAt(n)!==t}function p(e){e.sort(d)}function d(e,t){return e[0]-t[0]}function f(e){const s=new Int32Array(5),o=16384,r=o-36,i=new Uint8Array(o),c=i.subarray(0,r);let l=0,u="";for(let h=0;h0&&(l===o&&(u+=a.decode(i),l=0),i[l++]=n),0!==p.length){s[0]=0;for(let e=0;er&&(u+=a.decode(c),i.copyWithin(0,r,l),l-=r),e>0&&(i[l++]=t),l=m(i,l,s,n,0),1!==n.length&&(l=m(i,l,s,n,1),l=m(i,l,s,n,2),l=m(i,l,s,n,3),4!==n.length&&(l=m(i,l,s,n,4)))}}}return u+a.decode(i.subarray(0,l))}function m(e,t,n,s,o){const i=s[o];let a=i-n[o];n[o]=i,a=a<0?-a<<1|1:a<<1;do{let n=31&a;a>>>=5,a>0&&(n|=32),e[t++]=r[n]}while(a>0);return t}e.decode=c,e.encode=f,Object.defineProperty(e,"__esModule",{value:!0})}(t)},92802:function(e,t,n){!function(e,t,n){"use strict";function s(e,t){return t&&!t.endsWith("/")&&(t+="/"),n(e,t)}function o(e){if(!e)return"";const t=e.lastIndexOf("/");return e.slice(0,t+1)}const r=0,i=1,a=2,c=3,l=4,u=1,h=2;function p(e,t){const n=d(e,0);if(n===e.length)return e;t||(e=e.slice());for(let s=n;s>1),i=e[o][r]-t;if(0===i)return g=!0,o;i<0?n=o+1:s=o-1}return g=!1,n-1}function _(e,t,n){for(let s=n+1;s=0&&e[s][r]===t;n=s--);return n}function b(){return{lastKey:-1,lastNeedle:-1,lastIndex:-1}}function T(e,t,n,s){const{lastKey:o,lastNeedle:i,lastIndex:a}=n;let c=0,l=e.length-1;if(s===o){if(t===i)return g=-1!==a&&e[a][r]===t,a;t>=i?c=-1===a?0:a:l=a}return n.lastKey=s,n.lastNeedle=t,n.lastIndex=x(e,t,c,l)}function v(e,t){const n=t.map(C);for(let s=0;st;s--)e[s]=e[s-1];e[t]=n}function C(){return{__proto__:null}}const w=function(e,t){const n=A(e);if(!("sections"in n))return new P(n,t);const s=[],o=[],r=[],i=[],a=[];return E(n,t,s,o,r,i,a,0,0,1/0,1/0),G({version:3,file:n.file,names:i,sources:o,sourcesContent:r,mappings:s,ignoreList:a})};function A(e){return"string"==typeof e?JSON.parse(e):e}function E(e,t,n,s,o,r,i,a,c,l,u){const{sections:h}=e;for(let p=0;pf)return;const t=j(n,e),s=0===I?d:0,o=y[I];for(let n=0;n=m)return;if(1===u.length){t.push([h]);continue}const p=x+u[i],d=u[a],k=u[c];t.push(4===u.length?[h,p,d,k]:[h,p,d,k,_+u[l]])}}}function S(e,t){for(let n=0;ns(e||"",d)));const{mappings:f}=r;"string"==typeof f?(this._encoded=f,this._decoded=void 0):(this._encoded=void 0,this._decoded=p(f,n)),this._decodedMemo=b(),this._bySources=void 0,this._bySourceMemos=void 0}}function B(e){return e}function M(e){var n,s;return null!==(n=(s=B(e))._encoded)&&void 0!==n?n:s._encoded=t.encode(B(e)._decoded)}function q(e){var n;return(n=B(e))._decoded||(n._decoded=t.decode(B(e)._encoded))}function F(e,t,n){const s=q(e);if(t>=s.length)return null;const o=s[t],r=ee(o,B(e)._decodedMemo,t,n,D);return-1===r?null:o[r]}function $(e,t){let{line:n,column:s,bias:o}=t;if(n--,n<0)throw new Error(L);if(s<0)throw new Error(R);const r=q(e);if(n>=r.length)return Q(null,null,null,null);const u=r[n],h=ee(u,B(e)._decodedMemo,n,s,o||D);if(-1===h)return Q(null,null,null,null);const p=u[h];if(1===p.length)return Q(null,null,null,null);const{names:d,resolvedSources:f}=e;return Q(f[p[i]],p[a]+1,p[c],5===p.length?d[p[l]]:null)}function H(e,t){const{source:n,line:s,column:o,bias:r}=t;return ne(e,n,s,o,r||D,!1)}function U(e,t){const{source:n,line:s,column:o,bias:r}=t;return ne(e,n,s,o,r||O,!0)}function V(e,t){const n=q(e),{names:s,resolvedSources:o}=e;for(let r=0;r{"use strict";n.r(t),n.d(t,{default:()=>Wt});var s=n(96540),o=n(1003),r=n(89532),i=n(74848);const a=s.createContext(null);function c(e){let{children:t,content:n}=e;const o=function(e){return(0,s.useMemo)((()=>({metadata:e.metadata,frontMatter:e.frontMatter,assets:e.assets,contentTitle:e.contentTitle,toc:e.toc})),[e])}(n);return(0,i.jsx)(a.Provider,{value:o,children:t})}function l(){const e=(0,s.useContext)(a);if(null===e)throw new r.dV("DocProvider");return e}function u(){const{metadata:e,frontMatter:t,assets:n}=l();return(0,i.jsx)(o.be,{title:e.title,description:e.description,keywords:t.keywords,image:n.image??t.image})}var h=n(34164),p=n(24581),d=n(21312),f=n(28774);function m(e){const{permalink:t,title:n,subLabel:s,isNext:o}=e;return(0,i.jsxs)(f.A,{className:(0,h.A)("pagination-nav__link",o?"pagination-nav__link--next":"pagination-nav__link--prev"),to:t,children:[s&&(0,i.jsx)("div",{className:"pagination-nav__sublabel",children:s}),(0,i.jsx)("div",{className:"pagination-nav__label",children:n})]})}function k(e){const{previous:t,next:n}=e;return(0,i.jsxs)("nav",{className:"pagination-nav docusaurus-mt-lg","aria-label":(0,d.T)({id:"theme.docs.paginator.navAriaLabel",message:"Docs pages",description:"The ARIA label for the docs pagination"}),children:[t&&(0,i.jsx)(m,{...t,subLabel:(0,i.jsx)(d.A,{id:"theme.docs.paginator.previous",description:"The label used to navigate to the previous doc",children:"Previous"})}),n&&(0,i.jsx)(m,{...n,subLabel:(0,i.jsx)(d.A,{id:"theme.docs.paginator.next",description:"The label used to navigate to the next doc",children:"Next"}),isNext:!0})]})}function g(){const{metadata:e}=l();return(0,i.jsx)(k,{previous:e.previous,next:e.next})}var x=n(44586),_=n(44070),y=n(17559),b=n(53886),T=n(23025);const v={unreleased:function(e){let{siteTitle:t,versionMetadata:n}=e;return(0,i.jsx)(d.A,{id:"theme.docs.versions.unreleasedVersionLabel",description:"The label used to tell the user that he's browsing an unreleased doc version",values:{siteTitle:t,versionLabel:(0,i.jsx)("b",{children:n.label})},children:"This is unreleased documentation for {siteTitle} {versionLabel} version."})},unmaintained:function(e){let{siteTitle:t,versionMetadata:n}=e;return(0,i.jsx)(d.A,{id:"theme.docs.versions.unmaintainedVersionLabel",description:"The label used to tell the user that he's browsing an unmaintained doc version",values:{siteTitle:t,versionLabel:(0,i.jsx)("b",{children:n.label})},children:"This is documentation for {siteTitle} {versionLabel}, which is no longer actively maintained."})}};function I(e){const t=v[e.versionMetadata.banner];return(0,i.jsx)(t,{...e})}function C(e){let{versionLabel:t,to:n,onClick:s}=e;return(0,i.jsx)(d.A,{id:"theme.docs.versions.latestVersionSuggestionLabel",description:"The label used to tell the user to check the latest version",values:{versionLabel:t,latestVersionLink:(0,i.jsx)("b",{children:(0,i.jsx)(f.A,{to:n,onClick:s,children:(0,i.jsx)(d.A,{id:"theme.docs.versions.latestVersionLinkLabel",description:"The label used for the latest version suggestion link label",children:"latest version"})})})},children:"For up-to-date documentation, see the {latestVersionLink} ({versionLabel})."})}function w(e){let{className:t,versionMetadata:n}=e;const{siteConfig:{title:s}}=(0,x.A)(),{pluginId:o}=(0,_.vT)({failfast:!0}),{savePreferredVersionName:r}=(0,b.g1)(o),{latestDocSuggestion:a,latestVersionSuggestion:c}=(0,_.HW)(o),l=a??(u=c).docs.find((e=>e.id===u.mainDocId));var u;return(0,i.jsxs)("div",{className:(0,h.A)(t,y.G.docs.docVersionBanner,"alert alert--warning margin-bottom--md"),role:"alert",children:[(0,i.jsx)("div",{children:(0,i.jsx)(I,{siteTitle:s,versionMetadata:n})}),(0,i.jsx)("div",{className:"margin-top--md",children:(0,i.jsx)(C,{versionLabel:c.label,to:l.path,onClick:()=>r(c.name)})})]})}function A(e){let{className:t}=e;const n=(0,T.r)();return n.banner?(0,i.jsx)(w,{className:t,versionMetadata:n}):null}function E(e){let{className:t}=e;const n=(0,T.r)();return n.badge?(0,i.jsx)("span",{className:(0,h.A)(t,y.G.docs.docVersionBadge,"badge badge--secondary"),children:(0,i.jsx)(d.A,{id:"theme.docs.versionBadge.label",values:{versionLabel:n.label},children:"Version: {versionLabel}"})}):null}const N={tag:"tag_zVej",tagRegular:"tagRegular_sFm0",tagWithCount:"tagWithCount_h2kH"};function S(e){let{permalink:t,label:n,count:s,description:o}=e;return(0,i.jsxs)(f.A,{href:t,title:o,className:(0,h.A)(N.tag,s?N.tagWithCount:N.tagRegular),children:[n,s&&(0,i.jsx)("span",{children:s})]})}const j={tags:"tags_jXut",tag:"tag_QGVx"};function L(e){let{tags:t}=e;return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)("b",{children:(0,i.jsx)(d.A,{id:"theme.tags.tagsListLabel",description:"The label alongside a tag list",children:"Tags:"})}),(0,i.jsx)("ul",{className:(0,h.A)(j.tags,"padding--none","margin-left--sm"),children:t.map((e=>(0,i.jsx)("li",{className:j.tag,children:(0,i.jsx)(S,{...e})},e.permalink)))})]})}const R={iconEdit:"iconEdit_Z9Sw"};function O(e){let{className:t,...n}=e;return(0,i.jsx)("svg",{fill:"currentColor",height:"20",width:"20",viewBox:"0 0 40 40",className:(0,h.A)(R.iconEdit,t),"aria-hidden":"true",...n,children:(0,i.jsx)("g",{children:(0,i.jsx)("path",{d:"m34.5 11.7l-3 3.1-6.3-6.3 3.1-3q0.5-0.5 1.2-0.5t1.1 0.5l3.9 3.9q0.5 0.4 0.5 1.1t-0.5 1.2z m-29.5 17.1l18.4-18.5 6.3 6.3-18.4 18.4h-6.3v-6.2z"})})})}function D(e){let{editUrl:t}=e;return(0,i.jsxs)(f.A,{to:t,className:y.G.common.editThisPage,children:[(0,i.jsx)(O,{}),(0,i.jsx)(d.A,{id:"theme.common.editThisPage",description:"The link label to edit the current page",children:"Edit this page"})]})}function P(e){void 0===e&&(e={});const{i18n:{currentLocale:t}}=(0,x.A)(),n=function(){const{i18n:{currentLocale:e,localeConfigs:t}}=(0,x.A)();return t[e].calendar}();return new Intl.DateTimeFormat(t,{calendar:n,...e})}function B(e){let{lastUpdatedAt:t}=e;const n=new Date(t),s=P({day:"numeric",month:"short",year:"numeric",timeZone:"UTC"}).format(n);return(0,i.jsx)(d.A,{id:"theme.lastUpdated.atDate",description:"The words used to describe on which date a page has been last updated",values:{date:(0,i.jsx)("b",{children:(0,i.jsx)("time",{dateTime:n.toISOString(),itemProp:"dateModified",children:s})})},children:" on {date}"})}function M(e){let{lastUpdatedBy:t}=e;return(0,i.jsx)(d.A,{id:"theme.lastUpdated.byUser",description:"The words used to describe by who the page has been last updated",values:{user:(0,i.jsx)("b",{children:t})},children:" by {user}"})}function q(e){let{lastUpdatedAt:t,lastUpdatedBy:n}=e;return(0,i.jsxs)("span",{className:y.G.common.lastUpdated,children:[(0,i.jsx)(d.A,{id:"theme.lastUpdated.lastUpdatedAtBy",description:"The sentence used to display when a page has been last updated, and by who",values:{atDate:t?(0,i.jsx)(B,{lastUpdatedAt:t}):"",byUser:n?(0,i.jsx)(M,{lastUpdatedBy:n}):""},children:"Last updated{atDate}{byUser}"}),!1]})}const F={lastUpdated:"lastUpdated_JAkA"};function $(e){let{className:t,editUrl:n,lastUpdatedAt:s,lastUpdatedBy:o}=e;return(0,i.jsxs)("div",{className:(0,h.A)("row",t),children:[(0,i.jsx)("div",{className:"col",children:n&&(0,i.jsx)(D,{editUrl:n})}),(0,i.jsx)("div",{className:(0,h.A)("col",F.lastUpdated),children:(s||o)&&(0,i.jsx)(q,{lastUpdatedAt:s,lastUpdatedBy:o})})]})}function H(){const{metadata:e}=l(),{editUrl:t,lastUpdatedAt:n,lastUpdatedBy:s,tags:o}=e,r=o.length>0,a=!!(t||n||s);return r||a?(0,i.jsxs)("footer",{className:(0,h.A)(y.G.docs.docFooter,"docusaurus-mt-lg"),children:[r&&(0,i.jsx)("div",{className:(0,h.A)("row margin-top--sm",y.G.docs.docFooterTagsRow),children:(0,i.jsx)("div",{className:"col",children:(0,i.jsx)(L,{tags:o})})}),a&&(0,i.jsx)($,{className:(0,h.A)("margin-top--sm",y.G.docs.docFooterEditMetaRow),editUrl:t,lastUpdatedAt:n,lastUpdatedBy:s})]}):null}var U=n(41422),V=n(65195);const K={tocCollapsibleButton:"tocCollapsibleButton_TO0P",tocCollapsibleButtonExpanded:"tocCollapsibleButtonExpanded_MG3E"};function W(e){let{collapsed:t,...n}=e;return(0,i.jsx)("button",{type:"button",...n,className:(0,h.A)("clean-btn",K.tocCollapsibleButton,!t&&K.tocCollapsibleButtonExpanded,n.className),children:(0,i.jsx)(d.A,{id:"theme.TOCCollapsible.toggleButtonLabel",description:"The label used by the button on the collapsible TOC component",children:"On this page"})})}const z={tocCollapsible:"tocCollapsible_ETCw",tocCollapsibleContent:"tocCollapsibleContent_vkbj",tocCollapsibleExpanded:"tocCollapsibleExpanded_sAul"};function G(e){let{toc:t,className:n,minHeadingLevel:s,maxHeadingLevel:o}=e;const{collapsed:r,toggleCollapsed:a}=(0,U.u)({initialState:!0});return(0,i.jsxs)("div",{className:(0,h.A)(z.tocCollapsible,!r&&z.tocCollapsibleExpanded,n),children:[(0,i.jsx)(W,{collapsed:r,onClick:a}),(0,i.jsx)(U.N,{lazy:!0,className:z.tocCollapsibleContent,collapsed:r,children:(0,i.jsx)(V.A,{toc:t,minHeadingLevel:s,maxHeadingLevel:o})})]})}const X={tocMobile:"tocMobile_ITEo"};function J(){const{toc:e,frontMatter:t}=l();return(0,i.jsx)(G,{toc:e,minHeadingLevel:t.toc_min_heading_level,maxHeadingLevel:t.toc_max_heading_level,className:(0,h.A)(y.G.docs.docTocMobile,X.tocMobile)})}const Y={tableOfContents:"tableOfContents_bqdL",docItemContainer:"docItemContainer_F8PC"},Q="table-of-contents__link toc-highlight",Z="table-of-contents__link--active";function ee(e){let{className:t,...n}=e;return(0,i.jsx)("div",{className:(0,h.A)(Y.tableOfContents,"thin-scrollbar",t),children:(0,i.jsx)(V.A,{...n,linkClassName:Q,linkActiveClassName:Z})})}function te(){const{toc:e,frontMatter:t}=l();return(0,i.jsx)(ee,{toc:e,minHeadingLevel:t.toc_min_heading_level,maxHeadingLevel:t.toc_max_heading_level,className:y.G.docs.docTocDesktop})}var ne=n(51107),se=n(28453),oe=n(5260),re=n(84827);const ie={React:s,...s};var ae=n(92303),ce=n(26058),le=n(18426),ue=n.n(le);const he=/title=(?["'])(?.*?)\1/,pe=/\{(?<range>[\d,-]+)\}/,de={js:{start:"\\/\\/",end:""},jsBlock:{start:"\\/\\*",end:"\\*\\/"},jsx:{start:"\\{\\s*\\/\\*",end:"\\*\\/\\s*\\}"},bash:{start:"#",end:""},html:{start:"\x3c!--",end:"--\x3e"}},fe={...de,lua:{start:"--",end:""},wasm:{start:"\\;\\;",end:""},tex:{start:"%",end:""},vb:{start:"['\u2018\u2019]",end:""},vbnet:{start:"(?:_\\s*)?['\u2018\u2019]",end:""},rem:{start:"[Rr][Ee][Mm]\\b",end:""},f90:{start:"!",end:""},ml:{start:"\\(\\*",end:"\\*\\)"},cobol:{start:"\\*>",end:""}},me=Object.keys(de);function ke(e,t){const n=e.map((e=>{const{start:n,end:s}=fe[e];return`(?:${n}\\s*(${t.flatMap((e=>[e.line,e.block?.start,e.block?.end].filter(Boolean))).join("|")})\\s*${s})`})).join("|");return new RegExp(`^\\s*(?:${n})\\s*$`)}function ge(e,t){let n=e.replace(/\n$/,"");const{language:s,magicComments:o,metastring:r}=t;if(r&&pe.test(r)){const e=r.match(pe).groups.range;if(0===o.length)throw new Error(`A highlight range has been given in code block's metastring (\`\`\` ${r}), but no magic comment config is available. Docusaurus applies the first magic comment entry's className for metastring ranges.`);const t=o[0].className,s=ue()(e).filter((e=>e>0)).map((e=>[e-1,[t]]));return{lineClassNames:Object.fromEntries(s),code:n}}if(void 0===s)return{lineClassNames:{},code:n};const i=function(e,t){switch(e){case"js":case"javascript":case"ts":case"typescript":return ke(["js","jsBlock"],t);case"jsx":case"tsx":return ke(["js","jsBlock","jsx"],t);case"html":return ke(["js","jsBlock","html"],t);case"python":case"py":case"bash":return ke(["bash"],t);case"markdown":case"md":return ke(["html","jsx","bash"],t);case"tex":case"latex":case"matlab":return ke(["tex"],t);case"lua":case"haskell":case"sql":return ke(["lua"],t);case"wasm":return ke(["wasm"],t);case"vb":case"vba":case"visual-basic":return ke(["vb","rem"],t);case"vbnet":return ke(["vbnet","rem"],t);case"batch":return ke(["rem"],t);case"basic":return ke(["rem","f90"],t);case"fsharp":return ke(["js","ml"],t);case"ocaml":case"sml":return ke(["ml"],t);case"fortran":return ke(["f90"],t);case"cobol":return ke(["cobol"],t);default:return ke(me,t)}}(s,o),a=n.split("\n"),c=Object.fromEntries(o.map((e=>[e.className,{start:0,range:""}]))),l=Object.fromEntries(o.filter((e=>e.line)).map((e=>{let{className:t,line:n}=e;return[n,t]}))),u=Object.fromEntries(o.filter((e=>e.block)).map((e=>{let{className:t,block:n}=e;return[n.start,t]}))),h=Object.fromEntries(o.filter((e=>e.block)).map((e=>{let{className:t,block:n}=e;return[n.end,t]})));for(let d=0;d<a.length;){const e=a[d].match(i);if(!e){d+=1;continue}const t=e.slice(1).find((e=>void 0!==e));l[t]?c[l[t]].range+=`${d},`:u[t]?c[u[t]].start=d:h[t]&&(c[h[t]].range+=`${c[h[t]].start}-${d-1},`),a.splice(d,1)}n=a.join("\n");const p={};return Object.entries(c).forEach((e=>{let[t,{range:n}]=e;ue()(n).forEach((e=>{p[e]??=[],p[e].push(t)}))})),{lineClassNames:p,code:n}}const xe={codeBlockContainer:"codeBlockContainer_Ckt0"};function _e(e){let{as:t,...n}=e;const s=function(e){const t={color:"--prism-color",backgroundColor:"--prism-background-color"},n={};return Object.entries(e.plain).forEach((e=>{let[s,o]=e;const r=t[s];r&&"string"==typeof o&&(n[r]=o)})),n}((0,ce.A)());return(0,i.jsx)(t,{...n,style:s,className:(0,h.A)(n.className,xe.codeBlockContainer,y.G.common.codeBlock)})}const ye={codeBlockContent:"codeBlockContent_biex",codeBlockTitle:"codeBlockTitle_Ktv7",codeBlock:"codeBlock_bY9V",codeBlockStandalone:"codeBlockStandalone_MEMb",codeBlockLines:"codeBlockLines_e6Vv",codeBlockLinesWithNumbering:"codeBlockLinesWithNumbering_o6Pm",buttonGroup:"buttonGroup__atx"};function be(e){let{children:t,className:n}=e;return(0,i.jsx)(_e,{as:"pre",tabIndex:0,className:(0,h.A)(ye.codeBlockStandalone,"thin-scrollbar",n),children:(0,i.jsx)("code",{className:ye.codeBlockLines,children:t})})}var Te=n(6342);const ve={attributes:!0,characterData:!0,childList:!0,subtree:!0};function Ie(e,t){const[n,o]=(0,s.useState)(),i=(0,s.useCallback)((()=>{o(e.current?.closest("[role=tabpanel][hidden]"))}),[e,o]);(0,s.useEffect)((()=>{i()}),[i]),function(e,t,n){void 0===n&&(n=ve);const o=(0,r._q)(t),i=(0,r.Be)(n);(0,s.useEffect)((()=>{const t=new MutationObserver(o);return e&&t.observe(e,i),()=>t.disconnect()}),[e,o,i])}(n,(e=>{e.forEach((e=>{"attributes"===e.type&&"hidden"===e.attributeName&&(t(),i())}))}),{attributes:!0,characterData:!1,childList:!1,subtree:!1})}var Ce=n(71765);const we={codeLine:"codeLine_lJS_",codeLineNumber:"codeLineNumber_Tfdd",codeLineContent:"codeLineContent_feaV"};function Ae(e){let{line:t,classNames:n,showLineNumbers:s,getLineProps:o,getTokenProps:r}=e;1===t.length&&"\n"===t[0].content&&(t[0].content="");const a=o({line:t,className:(0,h.A)(n,s&&we.codeLine)}),c=t.map(((e,t)=>(0,i.jsx)("span",{...r({token:e})},t)));return(0,i.jsxs)("span",{...a,children:[s?(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)("span",{className:we.codeLineNumber}),(0,i.jsx)("span",{className:we.codeLineContent,children:c})]}):c,(0,i.jsx)("br",{})]})}function Ee(e){return(0,i.jsx)("svg",{viewBox:"0 0 24 24",...e,children:(0,i.jsx)("path",{fill:"currentColor",d:"M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"})})}function Ne(e){return(0,i.jsx)("svg",{viewBox:"0 0 24 24",...e,children:(0,i.jsx)("path",{fill:"currentColor",d:"M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"})})}const Se={copyButtonCopied:"copyButtonCopied_obH4",copyButtonIcons:"copyButtonIcons_eSgA",copyButtonIcon:"copyButtonIcon_y97N",copyButtonSuccessIcon:"copyButtonSuccessIcon_LjdS"};function je(e){let{code:t,className:n}=e;const[o,r]=(0,s.useState)(!1),a=(0,s.useRef)(void 0),c=(0,s.useCallback)((()=>{!function(e,t){let{target:n=document.body}=void 0===t?{}:t;if("string"!=typeof e)throw new TypeError(`Expected parameter \`text\` to be a \`string\`, got \`${typeof e}\`.`);const s=document.createElement("textarea"),o=document.activeElement;s.value=e,s.setAttribute("readonly",""),s.style.contain="strict",s.style.position="absolute",s.style.left="-9999px",s.style.fontSize="12pt";const r=document.getSelection(),i=r.rangeCount>0&&r.getRangeAt(0);n.append(s),s.select(),s.selectionStart=0,s.selectionEnd=e.length;let a=!1;try{a=document.execCommand("copy")}catch{}s.remove(),i&&(r.removeAllRanges(),r.addRange(i)),o&&o.focus()}(t),r(!0),a.current=window.setTimeout((()=>{r(!1)}),1e3)}),[t]);return(0,s.useEffect)((()=>()=>window.clearTimeout(a.current)),[]),(0,i.jsx)("button",{type:"button","aria-label":o?(0,d.T)({id:"theme.CodeBlock.copied",message:"Copied",description:"The copied button label on code blocks"}):(0,d.T)({id:"theme.CodeBlock.copyButtonAriaLabel",message:"Copy code to clipboard",description:"The ARIA label for copy code blocks button"}),title:(0,d.T)({id:"theme.CodeBlock.copy",message:"Copy",description:"The copy button label on code blocks"}),className:(0,h.A)("clean-btn",n,Se.copyButton,o&&Se.copyButtonCopied),onClick:c,children:(0,i.jsxs)("span",{className:Se.copyButtonIcons,"aria-hidden":"true",children:[(0,i.jsx)(Ee,{className:Se.copyButtonIcon}),(0,i.jsx)(Ne,{className:Se.copyButtonSuccessIcon})]})})}function Le(e){return(0,i.jsx)("svg",{viewBox:"0 0 24 24",...e,children:(0,i.jsx)("path",{fill:"currentColor",d:"M4 19h6v-2H4v2zM20 5H4v2h16V5zm-3 6H4v2h13.25c1.1 0 2 .9 2 2s-.9 2-2 2H15v-2l-3 3l3 3v-2h2c2.21 0 4-1.79 4-4s-1.79-4-4-4z"})})}const Re={wordWrapButtonIcon:"wordWrapButtonIcon_Bwma",wordWrapButtonEnabled:"wordWrapButtonEnabled_EoeP"};function Oe(e){let{className:t,onClick:n,isEnabled:s}=e;const o=(0,d.T)({id:"theme.CodeBlock.wordWrapToggle",message:"Toggle word wrap",description:"The title attribute for toggle word wrapping button of code block lines"});return(0,i.jsx)("button",{type:"button",onClick:n,className:(0,h.A)("clean-btn",t,s&&Re.wordWrapButtonEnabled),"aria-label":o,title:o,children:(0,i.jsx)(Le,{className:Re.wordWrapButtonIcon,"aria-hidden":"true"})})}function De(e){let{children:t,className:n="",metastring:o,title:r,showLineNumbers:a,language:c}=e;const{prism:{defaultLanguage:l,magicComments:u}}=(0,Te.p)(),p=function(e){return e?.toLowerCase()}(c??function(e){const t=e.split(" ").find((e=>e.startsWith("language-")));return t?.replace(/language-/,"")}(n)??l),d=(0,ce.A)(),f=function(){const[e,t]=(0,s.useState)(!1),[n,o]=(0,s.useState)(!1),r=(0,s.useRef)(null),i=(0,s.useCallback)((()=>{const n=r.current.querySelector("code");e?n.removeAttribute("style"):(n.style.whiteSpace="pre-wrap",n.style.overflowWrap="anywhere"),t((e=>!e))}),[r,e]),a=(0,s.useCallback)((()=>{const{scrollWidth:e,clientWidth:t}=r.current,n=e>t||r.current.querySelector("code").hasAttribute("style");o(n)}),[r]);return Ie(r,a),(0,s.useEffect)((()=>{a()}),[e,a]),(0,s.useEffect)((()=>(window.addEventListener("resize",a,{passive:!0}),()=>{window.removeEventListener("resize",a)})),[a]),{codeBlockRef:r,isEnabled:e,isCodeScrollable:n,toggle:i}}(),m=function(e){return e?.match(he)?.groups.title??""}(o)||r,{lineClassNames:k,code:g}=ge(t,{metastring:o,language:p,magicComments:u}),x=a??function(e){return Boolean(e?.includes("showLineNumbers"))}(o);return(0,i.jsxs)(_e,{as:"div",className:(0,h.A)(n,p&&!n.includes(`language-${p}`)&&`language-${p}`),children:[m&&(0,i.jsx)("div",{className:ye.codeBlockTitle,children:m}),(0,i.jsxs)("div",{className:ye.codeBlockContent,children:[(0,i.jsx)(Ce.f4,{theme:d,code:g,language:p??"text",children:e=>{let{className:t,style:n,tokens:s,getLineProps:o,getTokenProps:r}=e;return(0,i.jsx)("pre",{tabIndex:0,ref:f.codeBlockRef,className:(0,h.A)(t,ye.codeBlock,"thin-scrollbar"),style:n,children:(0,i.jsx)("code",{className:(0,h.A)(ye.codeBlockLines,x&&ye.codeBlockLinesWithNumbering),children:s.map(((e,t)=>(0,i.jsx)(Ae,{line:e,getLineProps:o,getTokenProps:r,classNames:k[t],showLineNumbers:x},t)))})})}}),(0,i.jsxs)("div",{className:ye.buttonGroup,children:[(f.isEnabled||f.isCodeScrollable)&&(0,i.jsx)(Oe,{className:ye.codeButton,onClick:()=>f.toggle(),isEnabled:f.isEnabled}),(0,i.jsx)(je,{className:ye.codeButton,code:g})]})]})]})}const Pe=(Be=function(e){let{children:t,...n}=e;const o=(0,ae.A)(),r=function(e){return s.Children.toArray(e).some((e=>(0,s.isValidElement)(e)))?e:Array.isArray(e)?e.join(""):e}(t),a="string"==typeof r?De:be;return(0,i.jsx)(a,{...n,children:r},String(o))},function(e){return e.live?(0,i.jsx)(re.A,{scope:ie,...e}):(0,i.jsx)(Be,{...e})});var Be;function Me(e){return(0,i.jsx)("code",{...e})}var qe=n(63427);const Fe={details:"details_lb9f",isBrowser:"isBrowser_bmU9",collapsibleContent:"collapsibleContent_i85q"};function $e(e){return!!e&&("SUMMARY"===e.tagName||$e(e.parentElement))}function He(e,t){return!!e&&(e===t||He(e.parentElement,t))}function Ue(e){let{summary:t,children:n,...o}=e;(0,qe.A)().collectAnchor(o.id);const r=(0,ae.A)(),a=(0,s.useRef)(null),{collapsed:c,setCollapsed:l}=(0,U.u)({initialState:!o.open}),[u,p]=(0,s.useState)(o.open),d=s.isValidElement(t)?t:(0,i.jsx)("summary",{children:t??"Details"});return(0,i.jsxs)("details",{...o,ref:a,open:u,"data-collapsed":c,className:(0,h.A)(Fe.details,r&&Fe.isBrowser,o.className),onMouseDown:e=>{$e(e.target)&&e.detail>1&&e.preventDefault()},onClick:e=>{e.stopPropagation();const t=e.target;$e(t)&&He(t,a.current)&&(e.preventDefault(),c?(l(!1),p(!0)):l(!0))},children:[d,(0,i.jsx)(U.N,{lazy:!1,collapsed:c,disableSSRStyle:!0,onCollapseTransitionEnd:e=>{l(e),p(!e)},children:(0,i.jsx)("div",{className:Fe.collapsibleContent,children:n})})]})}const Ve={details:"details_b_Ee"},Ke="alert alert--info";function We(e){let{...t}=e;return(0,i.jsx)(Ue,{...t,className:(0,h.A)(Ke,Ve.details,t.className)})}function ze(e){const t=s.Children.toArray(e.children),n=t.find((e=>s.isValidElement(e)&&"summary"===e.type)),o=(0,i.jsx)(i.Fragment,{children:t.filter((e=>e!==n))});return(0,i.jsx)(We,{...e,summary:n,children:o})}function Ge(e){return(0,i.jsx)(ne.A,{...e})}const Xe={containsTaskList:"containsTaskList_mC6p"};function Je(e){if(void 0!==e)return(0,h.A)(e,e?.includes("contains-task-list")&&Xe.containsTaskList)}const Ye={img:"img_ev3q"};function Qe(e){const{mdxAdmonitionTitle:t,rest:n}=function(e){const t=s.Children.toArray(e),n=t.find((e=>s.isValidElement(e)&&"mdxAdmonitionTitle"===e.type)),o=t.filter((e=>e!==n)),r=n?.props.children;return{mdxAdmonitionTitle:r,rest:o.length>0?(0,i.jsx)(i.Fragment,{children:o}):null}}(e.children),o=e.title??t;return{...e,...o&&{title:o},children:n}}const Ze={admonition:"admonition_xJq3",admonitionHeading:"admonitionHeading_Gvgb",admonitionIcon:"admonitionIcon_Rf37",admonitionContent:"admonitionContent_BuS1"};function et(e){let{type:t,className:n,children:s}=e;return(0,i.jsx)("div",{className:(0,h.A)(y.G.common.admonition,y.G.common.admonitionType(t),Ze.admonition,n),children:s})}function tt(e){let{icon:t,title:n}=e;return(0,i.jsxs)("div",{className:Ze.admonitionHeading,children:[(0,i.jsx)("span",{className:Ze.admonitionIcon,children:t}),n]})}function nt(e){let{children:t}=e;return t?(0,i.jsx)("div",{className:Ze.admonitionContent,children:t}):null}function st(e){const{type:t,icon:n,title:s,children:o,className:r}=e;return(0,i.jsxs)(et,{type:t,className:r,children:[s||n?(0,i.jsx)(tt,{title:s,icon:n}):null,(0,i.jsx)(nt,{children:o})]})}function ot(e){return(0,i.jsx)("svg",{viewBox:"0 0 14 16",...e,children:(0,i.jsx)("path",{fillRule:"evenodd",d:"M6.3 5.69a.942.942 0 0 1-.28-.7c0-.28.09-.52.28-.7.19-.18.42-.28.7-.28.28 0 .52.09.7.28.18.19.28.42.28.7 0 .28-.09.52-.28.7a1 1 0 0 1-.7.3c-.28 0-.52-.11-.7-.3zM8 7.99c-.02-.25-.11-.48-.31-.69-.2-.19-.42-.3-.69-.31H6c-.27.02-.48.13-.69.31-.2.2-.3.44-.31.69h1v3c.02.27.11.5.31.69.2.2.42.31.69.31h1c.27 0 .48-.11.69-.31.2-.19.3-.42.31-.69H8V7.98v.01zM7 2.3c-3.14 0-5.7 2.54-5.7 5.68 0 3.14 2.56 5.7 5.7 5.7s5.7-2.55 5.7-5.7c0-3.15-2.56-5.69-5.7-5.69v.01zM7 .98c3.86 0 7 3.14 7 7s-3.14 7-7 7-7-3.12-7-7 3.14-7 7-7z"})})}const rt={icon:(0,i.jsx)(ot,{}),title:(0,i.jsx)(d.A,{id:"theme.admonition.note",description:"The default label used for the Note admonition (:::note)",children:"note"})};function it(e){return(0,i.jsx)(st,{...rt,...e,className:(0,h.A)("alert alert--secondary",e.className),children:e.children})}function at(e){return(0,i.jsx)("svg",{viewBox:"0 0 12 16",...e,children:(0,i.jsx)("path",{fillRule:"evenodd",d:"M6.5 0C3.48 0 1 2.19 1 5c0 .92.55 2.25 1 3 1.34 2.25 1.78 2.78 2 4v1h5v-1c.22-1.22.66-1.75 2-4 .45-.75 1-2.08 1-3 0-2.81-2.48-5-5.5-5zm3.64 7.48c-.25.44-.47.8-.67 1.11-.86 1.41-1.25 2.06-1.45 3.23-.02.05-.02.11-.02.17H5c0-.06 0-.13-.02-.17-.2-1.17-.59-1.83-1.45-3.23-.2-.31-.42-.67-.67-1.11C2.44 6.78 2 5.65 2 5c0-2.2 2.02-4 4.5-4 1.22 0 2.36.42 3.22 1.19C10.55 2.94 11 3.94 11 5c0 .66-.44 1.78-.86 2.48zM4 14h5c-.23 1.14-1.3 2-2.5 2s-2.27-.86-2.5-2z"})})}const ct={icon:(0,i.jsx)(at,{}),title:(0,i.jsx)(d.A,{id:"theme.admonition.tip",description:"The default label used for the Tip admonition (:::tip)",children:"tip"})};function lt(e){return(0,i.jsx)(st,{...ct,...e,className:(0,h.A)("alert alert--success",e.className),children:e.children})}function ut(e){return(0,i.jsx)("svg",{viewBox:"0 0 14 16",...e,children:(0,i.jsx)("path",{fillRule:"evenodd",d:"M7 2.3c3.14 0 5.7 2.56 5.7 5.7s-2.56 5.7-5.7 5.7A5.71 5.71 0 0 1 1.3 8c0-3.14 2.56-5.7 5.7-5.7zM7 1C3.14 1 0 4.14 0 8s3.14 7 7 7 7-3.14 7-7-3.14-7-7-7zm1 3H6v5h2V4zm0 6H6v2h2v-2z"})})}const ht={icon:(0,i.jsx)(ut,{}),title:(0,i.jsx)(d.A,{id:"theme.admonition.info",description:"The default label used for the Info admonition (:::info)",children:"info"})};function pt(e){return(0,i.jsx)(st,{...ht,...e,className:(0,h.A)("alert alert--info",e.className),children:e.children})}function dt(e){return(0,i.jsx)("svg",{viewBox:"0 0 16 16",...e,children:(0,i.jsx)("path",{fillRule:"evenodd",d:"M8.893 1.5c-.183-.31-.52-.5-.887-.5s-.703.19-.886.5L.138 13.499a.98.98 0 0 0 0 1.001c.193.31.53.501.886.501h13.964c.367 0 .704-.19.877-.5a1.03 1.03 0 0 0 .01-1.002L8.893 1.5zm.133 11.497H6.987v-2.003h2.039v2.003zm0-3.004H6.987V5.987h2.039v4.006z"})})}const ft={icon:(0,i.jsx)(dt,{}),title:(0,i.jsx)(d.A,{id:"theme.admonition.warning",description:"The default label used for the Warning admonition (:::warning)",children:"warning"})};function mt(e){return(0,i.jsx)("svg",{viewBox:"0 0 12 16",...e,children:(0,i.jsx)("path",{fillRule:"evenodd",d:"M5.05.31c.81 2.17.41 3.38-.52 4.31C3.55 5.67 1.98 6.45.9 7.98c-1.45 2.05-1.7 6.53 3.53 7.7-2.2-1.16-2.67-4.52-.3-6.61-.61 2.03.53 3.33 1.94 2.86 1.39-.47 2.3.53 2.27 1.67-.02.78-.31 1.44-1.13 1.81 3.42-.59 4.78-3.42 4.78-5.56 0-2.84-2.53-3.22-1.25-5.61-1.52.13-2.03 1.13-1.89 2.75.09 1.08-1.02 1.8-1.86 1.33-.67-.41-.66-1.19-.06-1.78C8.18 5.31 8.68 2.45 5.05.32L5.03.3l.02.01z"})})}const kt={icon:(0,i.jsx)(mt,{}),title:(0,i.jsx)(d.A,{id:"theme.admonition.danger",description:"The default label used for the Danger admonition (:::danger)",children:"danger"})};const gt={icon:(0,i.jsx)(dt,{}),title:(0,i.jsx)(d.A,{id:"theme.admonition.caution",description:"The default label used for the Caution admonition (:::caution)",children:"caution"})};const xt={...{note:it,tip:lt,info:pt,warning:function(e){return(0,i.jsx)(st,{...ft,...e,className:(0,h.A)("alert alert--warning",e.className),children:e.children})},danger:function(e){return(0,i.jsx)(st,{...kt,...e,className:(0,h.A)("alert alert--danger",e.className),children:e.children})}},...{secondary:e=>(0,i.jsx)(it,{title:"secondary",...e}),important:e=>(0,i.jsx)(pt,{title:"important",...e}),success:e=>(0,i.jsx)(lt,{title:"success",...e}),caution:function(e){return(0,i.jsx)(st,{...gt,...e,className:(0,h.A)("alert alert--warning",e.className),children:e.children})}}};var _t=n(96763);function yt(e){const t=Qe(e),n=(s=t.type,xt[s]||(_t.warn(`No admonition component found for admonition type "${s}". Using Info as fallback.`),xt.info));var s;return(0,i.jsx)(n,{...t})}var bt=n(61114);const Tt={Head:oe.A,details:ze,Details:ze,code:function(e){return function(e){return void 0!==e.children&&s.Children.toArray(e.children).every((e=>"string"==typeof e&&!e.includes("\n")))}(e)?(0,i.jsx)(Me,{...e}):(0,i.jsx)(Pe,{...e})},a:function(e){return(0,i.jsx)(f.A,{...e})},pre:function(e){return(0,i.jsx)(i.Fragment,{children:e.children})},ul:function(e){return(0,i.jsx)("ul",{...e,className:Je(e.className)})},li:function(e){return(0,qe.A)().collectAnchor(e.id),(0,i.jsx)("li",{...e})},img:function(e){return(0,i.jsx)("img",{decoding:"async",loading:"lazy",...e,className:(t=e.className,(0,h.A)(t,Ye.img))});var t},h1:e=>(0,i.jsx)(Ge,{as:"h1",...e}),h2:e=>(0,i.jsx)(Ge,{as:"h2",...e}),h3:e=>(0,i.jsx)(Ge,{as:"h3",...e}),h4:e=>(0,i.jsx)(Ge,{as:"h4",...e}),h5:e=>(0,i.jsx)(Ge,{as:"h5",...e}),h6:e=>(0,i.jsx)(Ge,{as:"h6",...e}),admonition:yt,mermaid:bt.A};function vt(e){let{children:t}=e;return(0,i.jsx)(se.x,{components:Tt,children:t})}function It(e){let{children:t}=e;const n=function(){const{metadata:e,frontMatter:t,contentTitle:n}=l();return t.hide_title||void 0!==n?null:e.title}();return(0,i.jsxs)("div",{className:(0,h.A)(y.G.docs.docMarkdown,"markdown"),children:[n&&(0,i.jsx)("header",{children:(0,i.jsx)(ne.A,{as:"h1",children:n})}),(0,i.jsx)(vt,{children:t})]})}var Ct=n(26972),wt=n(99169),At=n(86025);function Et(e){return(0,i.jsx)("svg",{viewBox:"0 0 24 24",...e,children:(0,i.jsx)("path",{d:"M10 19v-5h4v5c0 .55.45 1 1 1h3c.55 0 1-.45 1-1v-7h1.7c.46 0 .68-.57.33-.87L12.67 3.6c-.38-.34-.96-.34-1.34 0l-8.36 7.53c-.34.3-.13.87.33.87H5v7c0 .55.45 1 1 1h3c.55 0 1-.45 1-1z",fill:"currentColor"})})}const Nt={breadcrumbHomeIcon:"breadcrumbHomeIcon_YNFT"};function St(){const e=(0,At.Ay)("/");return(0,i.jsx)("li",{className:"breadcrumbs__item",children:(0,i.jsx)(f.A,{"aria-label":(0,d.T)({id:"theme.docs.breadcrumbs.home",message:"Home page",description:"The ARIA label for the home page in the breadcrumbs"}),className:"breadcrumbs__link",href:e,children:(0,i.jsx)(Et,{className:Nt.breadcrumbHomeIcon})})})}const jt={breadcrumbsContainer:"breadcrumbsContainer_Z_bl"};function Lt(e){let{children:t,href:n,isLast:s}=e;const o="breadcrumbs__link";return s?(0,i.jsx)("span",{className:o,itemProp:"name",children:t}):n?(0,i.jsx)(f.A,{className:o,href:n,itemProp:"item",children:(0,i.jsx)("span",{itemProp:"name",children:t})}):(0,i.jsx)("span",{className:o,children:t})}function Rt(e){let{children:t,active:n,index:s,addMicrodata:o}=e;return(0,i.jsxs)("li",{...o&&{itemScope:!0,itemProp:"itemListElement",itemType:"https://schema.org/ListItem"},className:(0,h.A)("breadcrumbs__item",{"breadcrumbs__item--active":n}),children:[t,(0,i.jsx)("meta",{itemProp:"position",content:String(s+1)})]})}function Ot(){const e=(0,Ct.OF)(),t=(0,wt.Dt)();return e?(0,i.jsx)("nav",{className:(0,h.A)(y.G.docs.docBreadcrumbs,jt.breadcrumbsContainer),"aria-label":(0,d.T)({id:"theme.docs.breadcrumbs.navAriaLabel",message:"Breadcrumbs",description:"The ARIA label for the breadcrumbs"}),children:(0,i.jsxs)("ul",{className:"breadcrumbs",itemScope:!0,itemType:"https://schema.org/BreadcrumbList",children:[t&&(0,i.jsx)(St,{}),e.map(((t,n)=>{const s=n===e.length-1,o="category"===t.type&&t.linkUnlisted?void 0:t.href;return(0,i.jsx)(Rt,{active:s,index:n,addMicrodata:!!o,children:(0,i.jsx)(Lt,{href:o,isLast:s,children:t.label})},n)}))]})}):null}function Dt(){return(0,i.jsx)(d.A,{id:"theme.contentVisibility.unlistedBanner.title",description:"The unlisted content banner title",children:"Unlisted page"})}function Pt(){return(0,i.jsx)(d.A,{id:"theme.contentVisibility.unlistedBanner.message",description:"The unlisted content banner message",children:"This page is unlisted. Search engines will not index it, and only users having a direct link can access it."})}function Bt(){return(0,i.jsx)(oe.A,{children:(0,i.jsx)("meta",{name:"robots",content:"noindex, nofollow"})})}function Mt(){return(0,i.jsx)(d.A,{id:"theme.contentVisibility.draftBanner.title",description:"The draft content banner title",children:"Draft page"})}function qt(){return(0,i.jsx)(d.A,{id:"theme.contentVisibility.draftBanner.message",description:"The draft content banner message",children:"This page is a draft. It will only be visible in dev and be excluded from the production build."})}function Ft(e){let{className:t}=e;return(0,i.jsx)(yt,{type:"caution",title:(0,i.jsx)(Mt,{}),className:(0,h.A)(t,y.G.common.draftBanner),children:(0,i.jsx)(qt,{})})}function $t(e){let{className:t}=e;return(0,i.jsx)(yt,{type:"caution",title:(0,i.jsx)(Dt,{}),className:(0,h.A)(t,y.G.common.unlistedBanner),children:(0,i.jsx)(Pt,{})})}function Ht(e){return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(Bt,{}),(0,i.jsx)($t,{...e})]})}function Ut(e){let{metadata:t}=e;const{unlisted:n,frontMatter:s}=t;return(0,i.jsxs)(i.Fragment,{children:[(n||s.unlisted)&&(0,i.jsx)(Ht,{}),s.draft&&(0,i.jsx)(Ft,{})]})}const Vt={docItemContainer:"docItemContainer_Djhp",docItemCol:"docItemCol_VOVn"};function Kt(e){let{children:t}=e;const n=function(){const{frontMatter:e,toc:t}=l(),n=(0,p.l)(),s=e.hide_table_of_contents,o=!s&&t.length>0;return{hidden:s,mobile:o?(0,i.jsx)(J,{}):void 0,desktop:!o||"desktop"!==n&&"ssr"!==n?void 0:(0,i.jsx)(te,{})}}(),{metadata:s}=l();return(0,i.jsxs)("div",{className:"row",children:[(0,i.jsxs)("div",{className:(0,h.A)("col",!n.hidden&&Vt.docItemCol),children:[(0,i.jsx)(Ut,{metadata:s}),(0,i.jsx)(A,{}),(0,i.jsxs)("div",{className:Vt.docItemContainer,children:[(0,i.jsxs)("article",{children:[(0,i.jsx)(Ot,{}),(0,i.jsx)(E,{}),n.mobile,(0,i.jsx)(It,{children:t}),(0,i.jsx)(H,{})]}),(0,i.jsx)(g,{})]})]}),n.desktop&&(0,i.jsx)("div",{className:"col col--3",children:n.desktop})]})}function Wt(e){const t=`docs-doc-id-${e.content.metadata.id}`,n=e.content;return(0,i.jsx)(c,{content:e.content,children:(0,i.jsxs)(o.e3,{className:t,children:[(0,i.jsx)(u,{}),(0,i.jsx)(Kt,{children:(0,i.jsx)(n,{})})]})})}},65195:(e,t,n)=>{"use strict";n.d(t,{A:()=>m});var s=n(96540),o=n(6342);function r(e){const t=e.map((e=>({...e,parentIndex:-1,children:[]}))),n=Array(7).fill(-1);t.forEach(((e,t)=>{const s=n.slice(2,e.level);e.parentIndex=Math.max(...s),n[e.level]=t}));const s=[];return t.forEach((e=>{const{parentIndex:n,...o}=e;n>=0?t[n].children.push(o):s.push(o)})),s}function i(e){let{toc:t,minHeadingLevel:n,maxHeadingLevel:s}=e;return t.flatMap((e=>{const t=i({toc:e.children,minHeadingLevel:n,maxHeadingLevel:s});return function(e){return e.level>=n&&e.level<=s}(e)?[{...e,children:t}]:t}))}function a(e){const t=e.getBoundingClientRect();return t.top===t.bottom?a(e.parentNode):t}function c(e,t){let{anchorTopOffset:n}=t;const s=e.find((e=>a(e).top>=n));if(s){return function(e){return e.top>0&&e.bottom<window.innerHeight/2}(a(s))?s:e[e.indexOf(s)-1]??null}return e[e.length-1]??null}function l(){const e=(0,s.useRef)(0),{navbar:{hideOnScroll:t}}=(0,o.p)();return(0,s.useEffect)((()=>{e.current=t?0:document.querySelector(".navbar").clientHeight}),[t]),e}function u(e){const t=(0,s.useRef)(void 0),n=l();(0,s.useEffect)((()=>{if(!e)return()=>{};const{linkClassName:s,linkActiveClassName:o,minHeadingLevel:r,maxHeadingLevel:i}=e;function a(){const e=function(e){return Array.from(document.getElementsByClassName(e))}(s),a=function(e){let{minHeadingLevel:t,maxHeadingLevel:n}=e;const s=[];for(let o=t;o<=n;o+=1)s.push(`h${o}.anchor`);return Array.from(document.querySelectorAll(s.join()))}({minHeadingLevel:r,maxHeadingLevel:i}),l=c(a,{anchorTopOffset:n.current}),u=e.find((e=>l&&l.id===function(e){return decodeURIComponent(e.href.substring(e.href.indexOf("#")+1))}(e)));e.forEach((e=>{!function(e,n){n?(t.current&&t.current!==e&&t.current.classList.remove(o),e.classList.add(o),t.current=e):e.classList.remove(o)}(e,e===u)}))}return document.addEventListener("scroll",a),document.addEventListener("resize",a),a(),()=>{document.removeEventListener("scroll",a),document.removeEventListener("resize",a)}}),[e,n])}var h=n(28774),p=n(74848);function d(e){let{toc:t,className:n,linkClassName:s,isChild:o}=e;return t.length?(0,p.jsx)("ul",{className:o?void 0:n,children:t.map((e=>(0,p.jsxs)("li",{children:[(0,p.jsx)(h.A,{to:`#${e.id}`,className:s??void 0,dangerouslySetInnerHTML:{__html:e.value}}),(0,p.jsx)(d,{isChild:!0,toc:e.children,className:n,linkClassName:s})]},e.id)))}):null}const f=s.memo(d);function m(e){let{toc:t,className:n="table-of-contents table-of-contents__left-border",linkClassName:a="table-of-contents__link",linkActiveClassName:c,minHeadingLevel:l,maxHeadingLevel:h,...d}=e;const m=(0,o.p)(),k=l??m.tableOfContents.minHeadingLevel,g=h??m.tableOfContents.maxHeadingLevel,x=function(e){let{toc:t,minHeadingLevel:n,maxHeadingLevel:o}=e;return(0,s.useMemo)((()=>i({toc:r(t),minHeadingLevel:n,maxHeadingLevel:o})),[t,n,o])}({toc:t,minHeadingLevel:k,maxHeadingLevel:g});return u((0,s.useMemo)((()=>{if(a&&c)return{linkClassName:a,linkActiveClassName:c,minHeadingLevel:k,maxHeadingLevel:g}}),[a,c,k,g])),(0,p.jsx)(f,{toc:x,className:n,linkClassName:a,...d})}},26058:(e,t,n)=>{"use strict";n.d(t,{A:()=>r});var s=n(95293),o=n(6342);function r(){const{prism:e}=(0,o.p)(),{colorMode:t}=(0,s.G)(),n=e.theme,r=e.darkTheme||n;return"dark"===t?r:n}},50089:(e,t)=>{"use strict";var n="\n",s=function(){function e(e){this.string=e;for(var t=[0],s=0;s<e.length;)switch(e[s]){case n:s+=1,t.push(s);break;case"\r":e[s+=1]===n&&(s+=1),t.push(s);break;default:s++}this.offsets=t}return e.prototype.locationForIndex=function(e){if(e<0||e>this.string.length)return null;for(var t=0,n=this.offsets;n[t+1]<=e;)t++;return{line:t,column:e-n[t]}},e.prototype.indexForLocation=function(e){var t=e.line,n=e.column;return t<0||t>=this.offsets.length||n<0||n>this.lengthOfLine(t)?null:this.offsets[t]+n},e.prototype.lengthOfLine=function(e){var t=this.offsets[e];return(e===this.offsets.length-1?this.string.length:this.offsets[e+1])-t},e}()},18426:(e,t)=>{function n(e){let t,n=[];for(let s of e.split(",").map((e=>e.trim())))if(/^-?\d+$/.test(s))n.push(parseInt(s,10));else if(t=s.match(/^(-?\d+)(-|\.\.\.?|\u2025|\u2026|\u22EF)(-?\d+)$/)){let[e,s,o,r]=t;if(s&&r){s=parseInt(s),r=parseInt(r);const e=s<r?1:-1;"-"!==o&&".."!==o&&"\u2025"!==o||(r+=e);for(let t=s;t!==r;t+=e)n.push(t)}}return n}t.default=n,e.exports=n},99361:function(e,t,n){"use strict";var s=this&&this.__spreadArrays||function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var s=Array(e),o=0;for(t=0;t<n;t++)for(var r=arguments[t],i=0,a=r.length;i<a;i++,o++)s[o]=r[i];return s};Object.defineProperty(t,"__esModule",{value:!0}),t.Checker=t.createCheckers=void 0;var o=n(1680),r=n(31977),i=n(1680);Object.defineProperty(t,"TArray",{enumerable:!0,get:function(){return i.TArray}}),Object.defineProperty(t,"TEnumType",{enumerable:!0,get:function(){return i.TEnumType}}),Object.defineProperty(t,"TEnumLiteral",{enumerable:!0,get:function(){return i.TEnumLiteral}}),Object.defineProperty(t,"TFunc",{enumerable:!0,get:function(){return i.TFunc}}),Object.defineProperty(t,"TIface",{enumerable:!0,get:function(){return i.TIface}}),Object.defineProperty(t,"TLiteral",{enumerable:!0,get:function(){return i.TLiteral}}),Object.defineProperty(t,"TName",{enumerable:!0,get:function(){return i.TName}}),Object.defineProperty(t,"TOptional",{enumerable:!0,get:function(){return i.TOptional}}),Object.defineProperty(t,"TParam",{enumerable:!0,get:function(){return i.TParam}}),Object.defineProperty(t,"TParamList",{enumerable:!0,get:function(){return i.TParamList}}),Object.defineProperty(t,"TProp",{enumerable:!0,get:function(){return i.TProp}}),Object.defineProperty(t,"TTuple",{enumerable:!0,get:function(){return i.TTuple}}),Object.defineProperty(t,"TType",{enumerable:!0,get:function(){return i.TType}}),Object.defineProperty(t,"TUnion",{enumerable:!0,get:function(){return i.TUnion}}),Object.defineProperty(t,"TIntersection",{enumerable:!0,get:function(){return i.TIntersection}}),Object.defineProperty(t,"array",{enumerable:!0,get:function(){return i.array}}),Object.defineProperty(t,"enumlit",{enumerable:!0,get:function(){return i.enumlit}}),Object.defineProperty(t,"enumtype",{enumerable:!0,get:function(){return i.enumtype}}),Object.defineProperty(t,"func",{enumerable:!0,get:function(){return i.func}}),Object.defineProperty(t,"iface",{enumerable:!0,get:function(){return i.iface}}),Object.defineProperty(t,"lit",{enumerable:!0,get:function(){return i.lit}}),Object.defineProperty(t,"name",{enumerable:!0,get:function(){return i.name}}),Object.defineProperty(t,"opt",{enumerable:!0,get:function(){return i.opt}}),Object.defineProperty(t,"param",{enumerable:!0,get:function(){return i.param}}),Object.defineProperty(t,"tuple",{enumerable:!0,get:function(){return i.tuple}}),Object.defineProperty(t,"union",{enumerable:!0,get:function(){return i.union}}),Object.defineProperty(t,"intersection",{enumerable:!0,get:function(){return i.intersection}}),Object.defineProperty(t,"BasicType",{enumerable:!0,get:function(){return i.BasicType}});var a=n(31977);Object.defineProperty(t,"VError",{enumerable:!0,get:function(){return a.VError}}),t.createCheckers=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];for(var n=Object.assign.apply(Object,s([{},o.basicTypes],e)),r={},i=0,a=e;i<a.length;i++)for(var l=a[i],u=0,h=Object.keys(l);u<h.length;u++){var p=h[u];r[p]=new c(n,l[p])}return r};var c=function(){function e(e,t,n){if(void 0===n&&(n="value"),this.suite=e,this.ttype=t,this._path=n,this.props=new Map,t instanceof o.TIface)for(var s=0,r=t.props;s<r.length;s++){var i=r[s];this.props.set(i.name,i.ttype)}this.checkerPlain=this.ttype.getChecker(e,!1),this.checkerStrict=this.ttype.getChecker(e,!0)}return e.prototype.setReportedPath=function(e){this._path=e},e.prototype.check=function(e){return this._doCheck(this.checkerPlain,e)},e.prototype.test=function(e){return this.checkerPlain(e,new r.NoopContext)},e.prototype.validate=function(e){return this._doValidate(this.checkerPlain,e)},e.prototype.strictCheck=function(e){return this._doCheck(this.checkerStrict,e)},e.prototype.strictTest=function(e){return this.checkerStrict(e,new r.NoopContext)},e.prototype.strictValidate=function(e){return this._doValidate(this.checkerStrict,e)},e.prototype.getProp=function(t){var n=this.props.get(t);if(!n)throw new Error("Type has no property "+t);return new e(this.suite,n,this._path+"."+t)},e.prototype.methodArgs=function(t){var n=this._getMethod(t);return new e(this.suite,n.paramList)},e.prototype.methodResult=function(t){var n=this._getMethod(t);return new e(this.suite,n.result)},e.prototype.getArgs=function(){if(!(this.ttype instanceof o.TFunc))throw new Error("getArgs() applied to non-function");return new e(this.suite,this.ttype.paramList)},e.prototype.getResult=function(){if(!(this.ttype instanceof o.TFunc))throw new Error("getResult() applied to non-function");return new e(this.suite,this.ttype.result)},e.prototype.getType=function(){return this.ttype},e.prototype._doCheck=function(e,t){if(!e(t,new r.NoopContext)){var n=new r.DetailContext;throw e(t,n),n.getError(this._path)}},e.prototype._doValidate=function(e,t){if(e(t,new r.NoopContext))return null;var n=new r.DetailContext;return e(t,n),n.getErrorDetail(this._path)},e.prototype._getMethod=function(e){var t=this.props.get(e);if(!t)throw new Error("Type has no property "+e);if(!(t instanceof o.TFunc))throw new Error("Property "+e+" is not a method");return t},e}();t.Checker=c},1680:function(e,t,n){"use strict";var s,o=n(48287).Buffer,r=this&&this.__extends||(s=function(e,t){return s=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])},s(e,t)},function(e,t){function n(){this.constructor=e}s(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)});Object.defineProperty(t,"__esModule",{value:!0}),t.basicTypes=t.BasicType=t.TParamList=t.TParam=t.param=t.TFunc=t.func=t.TProp=t.TOptional=t.opt=t.TIface=t.iface=t.TEnumLiteral=t.enumlit=t.TEnumType=t.enumtype=t.TIntersection=t.intersection=t.TUnion=t.union=t.TTuple=t.tuple=t.TArray=t.array=t.TLiteral=t.lit=t.TName=t.name=t.TType=void 0;var i=n(31977),a=function(){};function c(e){return"string"==typeof e?u(e):e}function l(e,t){var n=e[t];if(!n)throw new Error("Unknown type "+t);return n}function u(e){return new h(e)}t.TType=a,t.name=u;var h=function(e){function t(t){var n=e.call(this)||this;return n.name=t,n._failMsg="is not a "+t,n}return r(t,e),t.prototype.getChecker=function(e,n,s){var o=this,r=l(e,this.name),i=r.getChecker(e,n,s);return r instanceof w||r instanceof t?i:function(e,t){return!!i(e,t)||t.fail(null,o._failMsg,0)}},t}(a);t.TName=h,t.lit=function(e){return new p(e)};var p=function(e){function t(t){var n=e.call(this)||this;return n.value=t,n.name=JSON.stringify(t),n._failMsg="is not "+n.name,n}return r(t,e),t.prototype.getChecker=function(e,t){var n=this;return function(e,t){return e===n.value||t.fail(null,n._failMsg,-1)}},t}(a);t.TLiteral=p,t.array=function(e){return new d(c(e))};var d=function(e){function t(t){var n=e.call(this)||this;return n.ttype=t,n}return r(t,e),t.prototype.getChecker=function(e,t){var n=this.ttype.getChecker(e,t);return function(e,t){if(!Array.isArray(e))return t.fail(null,"is not an array",0);for(var s=0;s<e.length;s++){if(!n(e[s],t))return t.fail(s,null,1)}return!0}},t}(a);t.TArray=d,t.tuple=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return new f(e.map((function(e){return c(e)})))};var f=function(e){function t(t){var n=e.call(this)||this;return n.ttypes=t,n}return r(t,e),t.prototype.getChecker=function(e,t){var n=this.ttypes.map((function(n){return n.getChecker(e,t)})),s=function(e,t){if(!Array.isArray(e))return t.fail(null,"is not an array",0);for(var s=0;s<n.length;s++){if(!n[s](e[s],t))return t.fail(s,null,1)}return!0};return t?function(e,t){return!!s(e,t)&&(e.length<=n.length||t.fail(n.length,"is extraneous",2))}:s},t}(a);t.TTuple=f,t.union=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return new m(e.map((function(e){return c(e)})))};var m=function(e){function t(t){var n=e.call(this)||this;n.ttypes=t;var s=t.map((function(e){return e instanceof h||e instanceof p?e.name:null})).filter((function(e){return e})),o=t.length-s.length;return s.length?(o>0&&s.push(o+" more"),n._failMsg="is none of "+s.join(", ")):n._failMsg="is none of "+o+" types",n}return r(t,e),t.prototype.getChecker=function(e,t){var n=this,s=this.ttypes.map((function(n){return n.getChecker(e,t)}));return function(e,t){for(var o=t.unionResolver(),r=0;r<s.length;r++){if(s[r](e,o.createContext()))return!0}return t.resolveUnion(o),t.fail(null,n._failMsg,0)}},t}(a);t.TUnion=m,t.intersection=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return new k(e.map((function(e){return c(e)})))};var k=function(e){function t(t){var n=e.call(this)||this;return n.ttypes=t,n}return r(t,e),t.prototype.getChecker=function(e,t){var n=new Set,s=this.ttypes.map((function(s){return s.getChecker(e,t,n)}));return function(e,t){return!!s.every((function(n){return n(e,t)}))||t.fail(null,null,0)}},t}(a);t.TIntersection=k,t.enumtype=function(e){return new g(e)};var g=function(e){function t(t){var n=e.call(this)||this;return n.members=t,n.validValues=new Set,n._failMsg="is not a valid enum value",n.validValues=new Set(Object.keys(t).map((function(e){return t[e]}))),n}return r(t,e),t.prototype.getChecker=function(e,t){var n=this;return function(e,t){return!!n.validValues.has(e)||t.fail(null,n._failMsg,0)}},t}(a);t.TEnumType=g,t.enumlit=function(e,t){return new x(e,t)};var x=function(e){function t(t,n){var s=e.call(this)||this;return s.enumName=t,s.prop=n,s._failMsg="is not "+t+"."+n,s}return r(t,e),t.prototype.getChecker=function(e,t){var n=this,s=l(e,this.enumName);if(!(s instanceof g))throw new Error("Type "+this.enumName+" used in enumlit is not an enum type");var o=s.members[this.prop];if(!s.members.hasOwnProperty(this.prop))throw new Error("Unknown value "+this.enumName+"."+this.prop+" used in enumlit");return function(e,t){return e===o||t.fail(null,n._failMsg,-1)}},t}(a);function _(e){return Object.keys(e).map((function(t){return function(e,t){return t instanceof b?new T(e,t.ttype,!0):new T(e,c(t),!1)}(t,e[t])}))}t.TEnumLiteral=x,t.iface=function(e,t){return new y(e,_(t))};var y=function(e){function t(t,n){var s=e.call(this)||this;return s.bases=t,s.props=n,s.propSet=new Set(n.map((function(e){return e.name}))),s}return r(t,e),t.prototype.getChecker=function(e,t,n){var s=this,o=this.bases.map((function(n){return l(e,n).getChecker(e,t)})),r=this.props.map((function(n){return n.ttype.getChecker(e,t)})),a=new i.NoopContext,c=this.props.map((function(e,t){return!e.isOpt&&!r[t](void 0,a)})),u=function(e,t){if("object"!=typeof e||null===e)return t.fail(null,"is not an object",0);for(var n=0;n<o.length;n++)if(!o[n](e,t))return!1;for(n=0;n<r.length;n++){var i=s.props[n].name,a=e[i];if(void 0===a){if(c[n])return t.fail(i,"is missing",1)}else if(!r[n](a,t))return t.fail(i,null,1)}return!0};if(!t)return u;var h=this.propSet;return n&&(this.propSet.forEach((function(e){return n.add(e)})),h=n),function(e,t){if(!u(e,t))return!1;for(var n in e)if(!h.has(n))return t.fail(n,"is extraneous",2);return!0}},t}(a);t.TIface=y,t.opt=function(e){return new b(c(e))};var b=function(e){function t(t){var n=e.call(this)||this;return n.ttype=t,n}return r(t,e),t.prototype.getChecker=function(e,t){var n=this.ttype.getChecker(e,t);return function(e,t){return void 0===e||n(e,t)}},t}(a);t.TOptional=b;var T=function(e,t,n){this.name=e,this.ttype=t,this.isOpt=n};t.TProp=T,t.func=function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];return new v(new C(t),c(e))};var v=function(e){function t(t,n){var s=e.call(this)||this;return s.paramList=t,s.result=n,s}return r(t,e),t.prototype.getChecker=function(e,t){return function(e,t){return"function"==typeof e||t.fail(null,"is not a function",0)}},t}(a);t.TFunc=v,t.param=function(e,t,n){return new I(e,c(t),Boolean(n))};var I=function(e,t,n){this.name=e,this.ttype=t,this.isOpt=n};t.TParam=I;var C=function(e){function t(t){var n=e.call(this)||this;return n.params=t,n}return r(t,e),t.prototype.getChecker=function(e,t){var n=this,s=this.params.map((function(n){return n.ttype.getChecker(e,t)})),o=new i.NoopContext,r=this.params.map((function(e,t){return!e.isOpt&&!s[t](void 0,o)})),a=function(e,t){if(!Array.isArray(e))return t.fail(null,"is not an array",0);for(var o=0;o<s.length;o++){var i=n.params[o];if(void 0===e[o]){if(r[o])return t.fail(i.name,"is missing",1)}else if(!s[o](e[o],t))return t.fail(i.name,null,1)}return!0};return t?function(e,t){return!!a(e,t)&&(e.length<=s.length||t.fail(s.length,"is extraneous",2))}:a},t}(a);t.TParamList=C;var w=function(e){function t(t,n){var s=e.call(this)||this;return s.validator=t,s.message=n,s}return r(t,e),t.prototype.getChecker=function(e,t){var n=this;return function(e,t){return!!n.validator(e)||t.fail(null,n.message,0)}},t}(a);t.BasicType=w,t.basicTypes={any:new w((function(e){return!0}),"is invalid"),number:new w((function(e){return"number"==typeof e}),"is not a number"),object:new w((function(e){return"object"==typeof e&&e}),"is not an object"),boolean:new w((function(e){return"boolean"==typeof e}),"is not a boolean"),string:new w((function(e){return"string"==typeof e}),"is not a string"),symbol:new w((function(e){return"symbol"==typeof e}),"is not a symbol"),void:new w((function(e){return null==e}),"is not void"),undefined:new w((function(e){return void 0===e}),"is not undefined"),null:new w((function(e){return null===e}),"is not null"),never:new w((function(e){return!1}),"is unexpected"),Date:new w(E("[object Date]"),"is not a Date"),RegExp:new w(E("[object RegExp]"),"is not a RegExp")};var A=Object.prototype.toString;function E(e){return function(t){return"object"==typeof t&&t&&A.call(t)===e}}void 0!==o&&(t.basicTypes.Buffer=new w((function(e){return o.isBuffer(e)}),"is not a Buffer"));for(var N=function(e){t.basicTypes[e.name]=new w((function(t){return t instanceof e}),"is not a "+e.name)},S=0,j=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,ArrayBuffer];S<j.length;S++){N(j[S])}},31977:function(e,t){"use strict";var n,s=this&&this.__extends||(n=function(e,t){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])},n(e,t)},function(e,t){function s(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(s.prototype=t.prototype,new s)});Object.defineProperty(t,"__esModule",{value:!0}),t.DetailContext=t.NoopContext=t.VError=void 0;var o=function(e){function t(n,s){var o=e.call(this,s)||this;return o.path=n,Object.setPrototypeOf(o,t.prototype),o}return s(t,e),t}(Error);t.VError=o;var r=function(){function e(){}return e.prototype.fail=function(e,t,n){return!1},e.prototype.unionResolver=function(){return this},e.prototype.createContext=function(){return this},e.prototype.resolveUnion=function(e){},e}();t.NoopContext=r;var i=function(){function e(){this._propNames=[""],this._messages=[null],this._score=0}return e.prototype.fail=function(e,t,n){return this._propNames.push(e),this._messages.push(t),this._score+=n,!1},e.prototype.unionResolver=function(){return new a},e.prototype.resolveUnion=function(e){for(var t,n,s=null,o=0,r=e.contexts;o<r.length;o++){var i=r[o];(!s||i._score>=s._score)&&(s=i)}s&&s._score>0&&((t=this._propNames).push.apply(t,s._propNames),(n=this._messages).push.apply(n,s._messages))},e.prototype.getError=function(e){for(var t=[],n=this._propNames.length-1;n>=0;n--){var s=this._propNames[n];e+="number"==typeof s?"["+s+"]":s?"."+s:"";var r=this._messages[n];r&&t.push(e+" "+r)}return new o(e,t.join("; "))},e.prototype.getErrorDetail=function(e){for(var t=[],n=this._propNames.length-1;n>=0;n--){var s=this._propNames[n];e+="number"==typeof s?"["+s+"]":s?"."+s:"";var o=this._messages[n];o&&t.push({path:e,message:o})}var r=null;for(n=t.length-1;n>=0;n--)r&&(t[n].nested=[r]),r=t[n];return r},e}();t.DetailContext=i;var a=function(){function e(){this.contexts=[]}return e.prototype.createContext=function(){var e=new i;return this.contexts.push(e),e},e}()},86850:(e,t,n)=>{"use strict";n.d(t,{w:()=>Qo,Q:()=>Yo});var s=n(71765),o=n(96540),r={characterData:!0,characterDataOldValue:!0,childList:!0,subtree:!0};function i(e){var t=window.getSelection();t.empty(),t.addRange(e)}function a(e){return(e.metaKey||e.ctrlKey)&&!e.altKey&&"KeyZ"===e.code}function c(e){e=[e.firstChild];for(var t,n="";t=e.pop();)t.nodeType===Node.TEXT_NODE?n+=t.textContent:t.nodeType===Node.ELEMENT_NODE&&"BR"===t.nodeName&&(n+="\n"),t.nextSibling&&e.push(t.nextSibling),t.firstChild&&e.push(t.firstChild);return"\n"!==n[n.length-1]&&(n+="\n"),n}function l(e){var t=window.getSelection().getRangeAt(0),n=t.collapsed?0:t.toString().length,s=document.createRange();return s.setStart(e,0),s.setEnd(t.startContainer,t.startOffset),{position:e=(s=s.toString()).length,extent:n,content:s=(s=s.split("\n"))[t=s.length-1],line:t}}function u(e,t,n){0>=t&&(t=0),(!n||0>n)&&(n=t);var s=document.createRange();e=[e.firstChild];for(var o,r=0,i=t;o=e[e.length-1];){if(o.nodeType===Node.TEXT_NODE){if(r+o.textContent.length>=i){var a=i-r;if(i===t){if(i=s,a<o.textContent.length?i.setStart(o,a):i.setStartAfter(o),n!==t){i=n;continue}break}t=s,a<(n=o).textContent.length?t.setEnd(n,a):t.setEndAfter(n);break}r+=o.textContent.length}else if(o.nodeType===Node.ELEMENT_NODE&&"BR"===o.nodeName){if(r+1>=i){if(i===t){if(a=s,0<o.textContent.length?a.setStart(o,0):a.setStartAfter(o),n!==t){i=n;continue}break}t=s,0<(n=o).textContent.length?t.setEnd(n,0):t.setEndAfter(n);break}r++}e.pop(),o.nextSibling&&e.push(o.nextSibling),o.firstChild&&e.push(o.firstChild)}return s}var h,p,d,f=n(74848);!function(e){e[e.NONE=0]="NONE";e[e._abstract=1]="_abstract";e[e._accessor=2]="_accessor";e[e._as=3]="_as";e[e._assert=4]="_assert";e[e._asserts=5]="_asserts";e[e._async=6]="_async";e[e._await=7]="_await";e[e._checks=8]="_checks";e[e._constructor=9]="_constructor";e[e._declare=10]="_declare";e[e._enum=11]="_enum";e[e._exports=12]="_exports";e[e._from=13]="_from";e[e._get=14]="_get";e[e._global=15]="_global";e[e._implements=16]="_implements";e[e._infer=17]="_infer";e[e._interface=18]="_interface";e[e._is=19]="_is";e[e._keyof=20]="_keyof";e[e._mixins=21]="_mixins";e[e._module=22]="_module";e[e._namespace=23]="_namespace";e[e._of=24]="_of";e[e._opaque=25]="_opaque";e[e._out=26]="_out";e[e._override=27]="_override";e[e._private=28]="_private";e[e._protected=29]="_protected";e[e._proto=30]="_proto";e[e._public=31]="_public";e[e._readonly=32]="_readonly";e[e._require=33]="_require";e[e._satisfies=34]="_satisfies";e[e._set=35]="_set";e[e._static=36]="_static";e[e._symbol=37]="_symbol";e[e._type=38]="_type";e[e._unique=39]="_unique";e[e._using=40]="_using"}(h||(h={})),function(e){e[e.PRECEDENCE_MASK=15]="PRECEDENCE_MASK";e[e.IS_KEYWORD=16]="IS_KEYWORD";e[e.IS_ASSIGN=32]="IS_ASSIGN";e[e.IS_RIGHT_ASSOCIATIVE=64]="IS_RIGHT_ASSOCIATIVE";e[e.IS_PREFIX=128]="IS_PREFIX";e[e.IS_POSTFIX=256]="IS_POSTFIX";e[e.IS_EXPRESSION_START=512]="IS_EXPRESSION_START";e[e.num=512]="num";e[e.bigint=1536]="bigint";e[e.decimal=2560]="decimal";e[e.regexp=3584]="regexp";e[e.string=4608]="string";e[e.name=5632]="name";e[e.eof=6144]="eof";e[e.bracketL=7680]="bracketL";e[e.bracketR=8192]="bracketR";e[e.braceL=9728]="braceL";e[e.braceBarL=10752]="braceBarL";e[e.braceR=11264]="braceR";e[e.braceBarR=12288]="braceBarR";e[e.parenL=13824]="parenL";e[e.parenR=14336]="parenR";e[e.comma=15360]="comma";e[e.semi=16384]="semi";e[e.colon=17408]="colon";e[e.doubleColon=18432]="doubleColon";e[e.dot=19456]="dot";e[e.question=20480]="question";e[e.questionDot=21504]="questionDot";e[e.arrow=22528]="arrow";e[e.template=23552]="template";e[e.ellipsis=24576]="ellipsis";e[e.backQuote=25600]="backQuote";e[e.dollarBraceL=27136]="dollarBraceL";e[e.at=27648]="at";e[e.hash=29184]="hash";e[e.eq=29728]="eq";e[e.assign=30752]="assign";e[e.preIncDec=32640]="preIncDec";e[e.postIncDec=33664]="postIncDec";e[e.bang=34432]="bang";e[e.tilde=35456]="tilde";e[e.pipeline=35841]="pipeline";e[e.nullishCoalescing=36866]="nullishCoalescing";e[e.logicalOR=37890]="logicalOR";e[e.logicalAND=38915]="logicalAND";e[e.bitwiseOR=39940]="bitwiseOR";e[e.bitwiseXOR=40965]="bitwiseXOR";e[e.bitwiseAND=41990]="bitwiseAND";e[e.equality=43015]="equality";e[e.lessThan=44040]="lessThan";e[e.greaterThan=45064]="greaterThan";e[e.relationalOrEqual=46088]="relationalOrEqual";e[e.bitShiftL=47113]="bitShiftL";e[e.bitShiftR=48137]="bitShiftR";e[e.plus=49802]="plus";e[e.minus=50826]="minus";e[e.modulo=51723]="modulo";e[e.star=52235]="star";e[e.slash=53259]="slash";e[e.exponent=54348]="exponent";e[e.jsxName=55296]="jsxName";e[e.jsxText=56320]="jsxText";e[e.jsxEmptyText=57344]="jsxEmptyText";e[e.jsxTagStart=58880]="jsxTagStart";e[e.jsxTagEnd=59392]="jsxTagEnd";e[e.typeParameterStart=60928]="typeParameterStart";e[e.nonNullAssertion=61440]="nonNullAssertion";e[e._break=62480]="_break";e[e._case=63504]="_case";e[e._catch=64528]="_catch";e[e._continue=65552]="_continue";e[e._debugger=66576]="_debugger";e[e._default=67600]="_default";e[e._do=68624]="_do";e[e._else=69648]="_else";e[e._finally=70672]="_finally";e[e._for=71696]="_for";e[e._function=73232]="_function";e[e._if=73744]="_if";e[e._return=74768]="_return";e[e._switch=75792]="_switch";e[e._throw=77456]="_throw";e[e._try=77840]="_try";e[e._var=78864]="_var";e[e._let=79888]="_let";e[e._const=80912]="_const";e[e._while=81936]="_while";e[e._with=82960]="_with";e[e._new=84496]="_new";e[e._this=85520]="_this";e[e._super=86544]="_super";e[e._class=87568]="_class";e[e._extends=88080]="_extends";e[e._export=89104]="_export";e[e._import=90640]="_import";e[e._yield=91664]="_yield";e[e._null=92688]="_null";e[e._true=93712]="_true";e[e._false=94736]="_false";e[e._in=95256]="_in";e[e._instanceof=96280]="_instanceof";e[e._typeof=97936]="_typeof";e[e._void=98960]="_void";e[e._delete=99984]="_delete";e[e._async=100880]="_async";e[e._get=101904]="_get";e[e._set=102928]="_set";e[e._declare=103952]="_declare";e[e._readonly=104976]="_readonly";e[e._abstract=106e3]="_abstract";e[e._static=107024]="_static";e[e._public=107536]="_public";e[e._private=108560]="_private";e[e._protected=109584]="_protected";e[e._override=110608]="_override";e[e._as=112144]="_as";e[e._enum=113168]="_enum";e[e._type=114192]="_type";e[e._implements=115216]="_implements"}(p||(p={}));class m{constructor(e,t,n){this.startTokenIndex=e,this.endTokenIndex=t,this.isFunctionScope=n}}class k{constructor(e,t,n,s,o,r,i,a,c,l,u,h,p){this.potentialArrowAt=e,this.noAnonFunctionType=t,this.inDisallowConditionalTypesContext=n,this.tokensLength=s,this.scopesLength=o,this.pos=r,this.type=i,this.contextualKeyword=a,this.start=c,this.end=l,this.isType=u,this.scopeDepth=h,this.error=p}}class g{constructor(){g.prototype.__init.call(this),g.prototype.__init2.call(this),g.prototype.__init3.call(this),g.prototype.__init4.call(this),g.prototype.__init5.call(this),g.prototype.__init6.call(this),g.prototype.__init7.call(this),g.prototype.__init8.call(this),g.prototype.__init9.call(this),g.prototype.__init10.call(this),g.prototype.__init11.call(this),g.prototype.__init12.call(this),g.prototype.__init13.call(this)}__init(){this.potentialArrowAt=-1}__init2(){this.noAnonFunctionType=!1}__init3(){this.inDisallowConditionalTypesContext=!1}__init4(){this.tokens=[]}__init5(){this.scopes=[]}__init6(){this.pos=0}__init7(){this.type=p.eof}__init8(){this.contextualKeyword=h.NONE}__init9(){this.start=0}__init10(){this.end=0}__init11(){this.isType=!1}__init12(){this.scopeDepth=0}__init13(){this.error=null}snapshot(){return new k(this.potentialArrowAt,this.noAnonFunctionType,this.inDisallowConditionalTypesContext,this.tokens.length,this.scopes.length,this.pos,this.type,this.contextualKeyword,this.start,this.end,this.isType,this.scopeDepth,this.error)}restoreFromSnapshot(e){this.potentialArrowAt=e.potentialArrowAt,this.noAnonFunctionType=e.noAnonFunctionType,this.inDisallowConditionalTypesContext=e.inDisallowConditionalTypesContext,this.tokens.length=e.tokensLength,this.scopes.length=e.scopesLength,this.pos=e.pos,this.type=e.type,this.contextualKeyword=e.contextualKeyword,this.start=e.start,this.end=e.end,this.isType=e.isType,this.scopeDepth=e.scopeDepth,this.error=e.error}}let x,_,y,b,T,v;function I(){return v++}function C(e){if("pos"in e){const t=function(e){let t=1,n=1;for(let s=0;s<e;s++)T.charCodeAt(s)===d.lineFeed?(t++,n=1):n++;return new w(t,n)}(e.pos);e.message+=` (${t.line}:${t.column})`,e.loc=t}return e}!function(e){e[e.backSpace=8]="backSpace";e[e.lineFeed=10]="lineFeed";e[e.tab=9]="tab";e[e.carriageReturn=13]="carriageReturn";e[e.shiftOut=14]="shiftOut";e[e.space=32]="space";e[e.exclamationMark=33]="exclamationMark";e[e.quotationMark=34]="quotationMark";e[e.numberSign=35]="numberSign";e[e.dollarSign=36]="dollarSign";e[e.percentSign=37]="percentSign";e[e.ampersand=38]="ampersand";e[e.apostrophe=39]="apostrophe";e[e.leftParenthesis=40]="leftParenthesis";e[e.rightParenthesis=41]="rightParenthesis";e[e.asterisk=42]="asterisk";e[e.plusSign=43]="plusSign";e[e.comma=44]="comma";e[e.dash=45]="dash";e[e.dot=46]="dot";e[e.slash=47]="slash";e[e.digit0=48]="digit0";e[e.digit1=49]="digit1";e[e.digit2=50]="digit2";e[e.digit3=51]="digit3";e[e.digit4=52]="digit4";e[e.digit5=53]="digit5";e[e.digit6=54]="digit6";e[e.digit7=55]="digit7";e[e.digit8=56]="digit8";e[e.digit9=57]="digit9";e[e.colon=58]="colon";e[e.semicolon=59]="semicolon";e[e.lessThan=60]="lessThan";e[e.equalsTo=61]="equalsTo";e[e.greaterThan=62]="greaterThan";e[e.questionMark=63]="questionMark";e[e.atSign=64]="atSign";e[e.uppercaseA=65]="uppercaseA";e[e.uppercaseB=66]="uppercaseB";e[e.uppercaseC=67]="uppercaseC";e[e.uppercaseD=68]="uppercaseD";e[e.uppercaseE=69]="uppercaseE";e[e.uppercaseF=70]="uppercaseF";e[e.uppercaseG=71]="uppercaseG";e[e.uppercaseH=72]="uppercaseH";e[e.uppercaseI=73]="uppercaseI";e[e.uppercaseJ=74]="uppercaseJ";e[e.uppercaseK=75]="uppercaseK";e[e.uppercaseL=76]="uppercaseL";e[e.uppercaseM=77]="uppercaseM";e[e.uppercaseN=78]="uppercaseN";e[e.uppercaseO=79]="uppercaseO";e[e.uppercaseP=80]="uppercaseP";e[e.uppercaseQ=81]="uppercaseQ";e[e.uppercaseR=82]="uppercaseR";e[e.uppercaseS=83]="uppercaseS";e[e.uppercaseT=84]="uppercaseT";e[e.uppercaseU=85]="uppercaseU";e[e.uppercaseV=86]="uppercaseV";e[e.uppercaseW=87]="uppercaseW";e[e.uppercaseX=88]="uppercaseX";e[e.uppercaseY=89]="uppercaseY";e[e.uppercaseZ=90]="uppercaseZ";e[e.leftSquareBracket=91]="leftSquareBracket";e[e.backslash=92]="backslash";e[e.rightSquareBracket=93]="rightSquareBracket";e[e.caret=94]="caret";e[e.underscore=95]="underscore";e[e.graveAccent=96]="graveAccent";e[e.lowercaseA=97]="lowercaseA";e[e.lowercaseB=98]="lowercaseB";e[e.lowercaseC=99]="lowercaseC";e[e.lowercaseD=100]="lowercaseD";e[e.lowercaseE=101]="lowercaseE";e[e.lowercaseF=102]="lowercaseF";e[e.lowercaseG=103]="lowercaseG";e[e.lowercaseH=104]="lowercaseH";e[e.lowercaseI=105]="lowercaseI";e[e.lowercaseJ=106]="lowercaseJ";e[e.lowercaseK=107]="lowercaseK";e[e.lowercaseL=108]="lowercaseL";e[e.lowercaseM=109]="lowercaseM";e[e.lowercaseN=110]="lowercaseN";e[e.lowercaseO=111]="lowercaseO";e[e.lowercaseP=112]="lowercaseP";e[e.lowercaseQ=113]="lowercaseQ";e[e.lowercaseR=114]="lowercaseR";e[e.lowercaseS=115]="lowercaseS";e[e.lowercaseT=116]="lowercaseT";e[e.lowercaseU=117]="lowercaseU";e[e.lowercaseV=118]="lowercaseV";e[e.lowercaseW=119]="lowercaseW";e[e.lowercaseX=120]="lowercaseX";e[e.lowercaseY=121]="lowercaseY";e[e.lowercaseZ=122]="lowercaseZ";e[e.leftCurlyBrace=123]="leftCurlyBrace";e[e.verticalBar=124]="verticalBar";e[e.rightCurlyBrace=125]="rightCurlyBrace";e[e.tilde=126]="tilde";e[e.nonBreakingSpace=160]="nonBreakingSpace";e[e.oghamSpaceMark=5760]="oghamSpaceMark";e[e.lineSeparator=8232]="lineSeparator";e[e.paragraphSeparator=8233]="paragraphSeparator"}(d||(d={}));class w{constructor(e,t){this.line=e,this.column=t}}function A(e,t,n,s){T=e,b=new g,v=1,x=t,_=n,y=s}function E(e){return b.contextualKeyword===e}function N(e){const t=he();return t.type===p.name&&t.contextualKeyword===e}function S(e){return b.contextualKeyword===e&&ie(p.name)}function j(e){S(e)||M()}function L(){return ce(p.eof)||ce(p.braceR)||R()}function R(){const e=b.tokens[b.tokens.length-1];for(let t=e?e.end:0;t<b.start;t++){const e=T.charCodeAt(t);if(e===d.lineFeed||e===d.carriageReturn||8232===e||8233===e)return!0}return!1}function O(){const e=pe();for(let t=b.end;t<e;t++){const e=T.charCodeAt(t);if(e===d.lineFeed||e===d.carriageReturn||8232===e||8233===e)return!0}return!1}function D(){return ie(p.semi)||L()}function P(){D()||M('Unexpected token, expected ";"')}function B(e){ie(e)||M(`Unexpected token, expected "${function(e){switch(e){case p.num:return"num";case p.bigint:return"bigint";case p.decimal:return"decimal";case p.regexp:return"regexp";case p.string:return"string";case p.name:return"name";case p.eof:return"eof";case p.bracketL:return"[";case p.bracketR:return"]";case p.braceL:return"{";case p.braceBarL:return"{|";case p.braceR:return"}";case p.braceBarR:return"|}";case p.parenL:return"(";case p.parenR:return")";case p.comma:return",";case p.semi:return";";case p.colon:return":";case p.doubleColon:return"::";case p.dot:return".";case p.question:return"?";case p.questionDot:return"?.";case p.arrow:return"=>";case p.template:return"template";case p.ellipsis:return"...";case p.backQuote:return"`";case p.dollarBraceL:return"${";case p.at:return"@";case p.hash:return"#";case p.eq:return"=";case p.assign:return"_=";case p.preIncDec:case p.postIncDec:return"++/--";case p.bang:return"!";case p.tilde:return"~";case p.pipeline:return"|>";case p.nullishCoalescing:return"??";case p.logicalOR:return"||";case p.logicalAND:return"&&";case p.bitwiseOR:return"|";case p.bitwiseXOR:return"^";case p.bitwiseAND:return"&";case p.equality:return"==/!=";case p.lessThan:return"<";case p.greaterThan:return">";case p.relationalOrEqual:return"<=/>=";case p.bitShiftL:return"<<";case p.bitShiftR:return">>/>>>";case p.plus:return"+";case p.minus:return"-";case p.modulo:return"%";case p.star:return"*";case p.slash:return"/";case p.exponent:return"**";case p.jsxName:return"jsxName";case p.jsxText:return"jsxText";case p.jsxEmptyText:return"jsxEmptyText";case p.jsxTagStart:return"jsxTagStart";case p.jsxTagEnd:return"jsxTagEnd";case p.typeParameterStart:return"typeParameterStart";case p.nonNullAssertion:return"nonNullAssertion";case p._break:return"break";case p._case:return"case";case p._catch:return"catch";case p._continue:return"continue";case p._debugger:return"debugger";case p._default:return"default";case p._do:return"do";case p._else:return"else";case p._finally:return"finally";case p._for:return"for";case p._function:return"function";case p._if:return"if";case p._return:return"return";case p._switch:return"switch";case p._throw:return"throw";case p._try:return"try";case p._var:return"var";case p._let:return"let";case p._const:return"const";case p._while:return"while";case p._with:return"with";case p._new:return"new";case p._this:return"this";case p._super:return"super";case p._class:return"class";case p._extends:return"extends";case p._export:return"export";case p._import:return"import";case p._yield:return"yield";case p._null:return"null";case p._true:return"true";case p._false:return"false";case p._in:return"in";case p._instanceof:return"instanceof";case p._typeof:return"typeof";case p._void:return"void";case p._delete:return"delete";case p._async:return"async";case p._get:return"get";case p._set:return"set";case p._declare:return"declare";case p._readonly:return"readonly";case p._abstract:return"abstract";case p._static:return"static";case p._public:return"public";case p._private:return"private";case p._protected:return"protected";case p._override:return"override";case p._as:return"as";case p._enum:return"enum";case p._type:return"type";case p._implements:return"implements";default:return""}}(e)}"`)}function M(e="Unexpected token",t=b.start){if(b.error)return;const n=new SyntaxError(e);n.pos=t,b.error=n,b.pos=T.length,_e(p.eof)}const q=[9,11,12,d.space,d.nonBreakingSpace,d.oghamSpaceMark,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288,65279],F=/(?:\s|\/\/.*|\/\*[^]*?\*\/)*/g,$=new Uint8Array(65536);for(const Zo of q)$[Zo]=1;function H(e){if(e<48)return 36===e;if(e<58)return!0;if(e<65)return!1;if(e<91)return!0;if(e<97)return 95===e;if(e<123)return!0;if(e<128)return!1;throw new Error("Should not be called with non-ASCII char code.")}const U=new Uint8Array(65536);for(let Zo=0;Zo<128;Zo++)U[Zo]=H(Zo)?1:0;for(let Zo=128;Zo<65536;Zo++)U[Zo]=1;for(const Zo of q)U[Zo]=0;U[8232]=0,U[8233]=0;const V=U.slice();for(let Zo=d.digit0;Zo<=d.digit9;Zo++)V[Zo]=0;const K=new Int32Array([-1,27,783,918,1755,2376,2862,3483,-1,3699,-1,4617,4752,4833,5130,5508,5940,-1,6480,6939,7749,8181,8451,8613,-1,8829,-1,-1,-1,54,243,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,432,-1,-1,-1,675,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,81,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,108,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,135,-1,-1,-1,-1,-1,-1,-1,-1,-1,162,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,189,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,216,-1,-1,-1,-1,-1,-1,h._abstract<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,270,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,297,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,324,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,351,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,378,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,405,-1,-1,-1,-1,-1,-1,-1,-1,h._accessor<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,h._as<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,459,-1,-1,-1,-1,-1,594,-1,-1,-1,-1,-1,-1,486,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,513,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,540,-1,-1,-1,-1,-1,-1,h._assert<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,567,-1,-1,-1,-1,-1,-1,-1,h._asserts<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,621,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,648,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,h._async<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,702,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,729,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,756,-1,-1,-1,-1,-1,-1,h._await<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,810,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,837,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,864,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,891,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1+(p._break<<1),-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,945,-1,-1,-1,-1,-1,-1,1107,-1,-1,-1,1242,-1,-1,1350,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,972,1026,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,999,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1+(p._case<<1),-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1053,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1080,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1+(p._catch<<1),-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1134,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1161,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1188,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1215,-1,-1,-1,-1,-1,-1,-1,h._checks<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1269,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1296,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1323,-1,-1,-1,-1,-1,-1,-1,1+(p._class<<1),-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1377,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1404,1620,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1431,-1,-1,-1,-1,-1,-1,1+(p._const<<1),-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1458,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1485,-1,-1,-1,-1,-1,-1,-1,-1,1512,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1539,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1566,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1593,-1,-1,-1,-1,-1,-1,-1,-1,h._constructor<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1647,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1674,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1701,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1728,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1+(p._continue<<1),-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1782,-1,-1,-1,-1,-1,-1,-1,-1,-1,2349,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1809,1971,-1,-1,2106,-1,-1,-1,-1,-1,2241,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1836,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1863,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1890,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1917,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1944,-1,-1,-1,-1,-1,-1,-1,-1,1+(p._debugger<<1),-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1998,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2025,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2052,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2079,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,h._declare<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2133,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2160,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2187,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2214,-1,-1,-1,-1,-1,-1,1+(p._default<<1),-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2268,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2295,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2322,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1+(p._delete<<1),-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1+(p._do<<1),-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2403,-1,2484,-1,-1,-1,-1,-1,-1,-1,-1,-1,2565,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2430,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2457,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1+(p._else<<1),-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2511,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2538,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,h._enum<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2592,-1,-1,-1,2727,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2619,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2646,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2673,-1,-1,-1,-1,-1,-1,1+(p._export<<1),-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2700,-1,-1,-1,-1,-1,-1,-1,h._exports<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2754,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2781,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2808,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2835,-1,-1,-1,-1,-1,-1,-1,1+(p._extends<<1),-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2889,-1,-1,-1,-1,-1,-1,-1,2997,-1,-1,-1,-1,-1,3159,-1,-1,3213,-1,-1,3294,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2916,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2943,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2970,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1+(p._false<<1),-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3024,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3051,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3078,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3105,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3132,-1,1+(p._finally<<1),-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3186,-1,-1,-1,-1,-1,-1,-1,-1,1+(p._for<<1),-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3240,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3267,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,h._from<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3321,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3348,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3375,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3402,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3429,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3456,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1+(p._function<<1),-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3510,-1,-1,-1,-1,-1,-1,3564,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3537,-1,-1,-1,-1,-1,-1,h._get<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3591,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3618,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3645,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3672,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,h._global<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3726,-1,-1,-1,-1,-1,-1,3753,4077,-1,-1,-1,-1,4590,-1,-1,-1,-1,-1,-1,-1,1+(p._if<<1),-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3780,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3807,-1,-1,3996,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3834,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3861,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3888,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3915,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3942,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3969,-1,-1,-1,-1,-1,-1,-1,h._implements<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4023,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4050,-1,-1,-1,-1,-1,-1,1+(p._import<<1),-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1+(p._in<<1),-1,-1,-1,-1,-1,4104,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4185,4401,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4131,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4158,-1,-1,-1,-1,-1,-1,-1,-1,h._infer<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4212,-1,-1,-1,-1,-1,-1,-1,4239,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4266,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4293,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4320,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4347,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4374,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1+(p._instanceof<<1),-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4428,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4455,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4482,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4509,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4536,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4563,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,h._interface<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,h._is<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4644,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4671,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4698,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4725,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,h._keyof<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4779,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4806,-1,-1,-1,-1,-1,-1,1+(p._let<<1),-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4860,-1,-1,-1,-1,-1,4995,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4887,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4914,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4941,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4968,-1,-1,-1,-1,-1,-1,-1,h._mixins<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5022,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5049,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5076,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5103,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,h._module<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5157,-1,-1,-1,5373,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5427,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5184,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5211,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5238,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5265,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5292,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5319,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5346,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,h._namespace<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5400,-1,-1,-1,1+(p._new<<1),-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5454,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5481,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1+(p._null<<1),-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5535,-1,-1,-1,-1,-1,-1,-1,-1,-1,5562,-1,-1,-1,-1,5697,5751,-1,-1,-1,-1,h._of<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5589,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5616,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5643,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5670,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,h._opaque<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5724,-1,-1,-1,-1,-1,-1,h._out<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5778,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5805,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5832,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5859,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5886,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5913,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,h._override<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5967,-1,-1,6345,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,5994,-1,-1,-1,-1,-1,6129,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6021,-1,-1,-1,-1,-1,6048,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6075,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6102,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,h._private<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6156,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6183,-1,-1,-1,-1,-1,-1,-1,-1,-1,6318,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6210,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6237,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6264,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6291,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,h._protected<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,h._proto<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6372,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6399,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6426,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6453,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,h._public<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6507,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6534,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6696,-1,-1,6831,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6561,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6588,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6615,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6642,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6669,-1,h._readonly<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6723,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6750,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6777,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6804,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,h._require<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6858,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6885,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6912,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1+(p._return<<1),-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6966,-1,-1,-1,7182,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7236,7371,-1,7479,-1,7614,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,6993,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7020,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7047,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7074,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7101,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7128,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7155,-1,-1,-1,-1,-1,-1,-1,h._satisfies<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7209,-1,-1,-1,-1,-1,-1,h._set<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7263,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7290,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7317,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7344,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,h._static<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7398,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7425,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7452,-1,-1,-1,-1,-1,-1,-1,-1,1+(p._super<<1),-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7506,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7533,-1,-1,-1,-1,-1,-1,-1,-1,-1,7560,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7587,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1+(p._switch<<1),-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7641,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7668,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7695,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7722,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,h._symbol<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7776,-1,-1,-1,-1,-1,-1,-1,-1,-1,7938,-1,-1,-1,-1,-1,-1,8046,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7803,-1,-1,-1,-1,-1,-1,-1,-1,7857,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7830,-1,-1,-1,-1,-1,-1,-1,1+(p._this<<1),-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7884,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7911,-1,-1,-1,1+(p._throw<<1),-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,7965,-1,-1,-1,8019,-1,-1,-1,-1,-1,-1,7992,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1+(p._true<<1),-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1+(p._try<<1),-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8073,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8100,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,h._type<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8127,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8154,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1+(p._typeof<<1),-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8208,-1,-1,-1,-1,8343,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8235,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8262,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8289,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8316,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,h._unique<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8370,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8397,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8424,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,h._using<<1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8478,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8532,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8505,-1,-1,-1,-1,-1,-1,-1,-1,1+(p._var<<1),-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8559,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8586,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1+(p._void<<1),-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8640,8748,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8667,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8694,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8721,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1+(p._while<<1),-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8775,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8802,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1+(p._with<<1),-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8856,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8883,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8910,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8937,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1+(p._yield<<1),-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1]);var W,z;function G(e){const t=e.identifierRole;return t===W.TopLevelDeclaration||t===W.FunctionScopedDeclaration||t===W.BlockScopedDeclaration||t===W.ObjectShorthandTopLevelDeclaration||t===W.ObjectShorthandFunctionScopedDeclaration||t===W.ObjectShorthandBlockScopedDeclaration}function X(e){const t=e.identifierRole;return t===W.FunctionScopedDeclaration||t===W.BlockScopedDeclaration||t===W.ObjectShorthandFunctionScopedDeclaration||t===W.ObjectShorthandBlockScopedDeclaration}function J(e){const t=e.identifierRole;return t===W.TopLevelDeclaration||t===W.ObjectShorthandTopLevelDeclaration||t===W.ImportDeclaration}function Y(e){const t=e.identifierRole;return t===W.TopLevelDeclaration||t===W.BlockScopedDeclaration||t===W.ObjectShorthandTopLevelDeclaration||t===W.ObjectShorthandBlockScopedDeclaration}function Q(e){const t=e.identifierRole;return t===W.FunctionScopedDeclaration||t===W.ObjectShorthandFunctionScopedDeclaration}function Z(e){return e.identifierRole===W.ObjectShorthandTopLevelDeclaration||e.identifierRole===W.ObjectShorthandBlockScopedDeclaration||e.identifierRole===W.ObjectShorthandFunctionScopedDeclaration}!function(e){e[e.Access=0]="Access";e[e.ExportAccess=1]="ExportAccess";e[e.TopLevelDeclaration=2]="TopLevelDeclaration";e[e.FunctionScopedDeclaration=3]="FunctionScopedDeclaration";e[e.BlockScopedDeclaration=4]="BlockScopedDeclaration";e[e.ObjectShorthandTopLevelDeclaration=5]="ObjectShorthandTopLevelDeclaration";e[e.ObjectShorthandFunctionScopedDeclaration=6]="ObjectShorthandFunctionScopedDeclaration";e[e.ObjectShorthandBlockScopedDeclaration=7]="ObjectShorthandBlockScopedDeclaration";e[e.ObjectShorthand=8]="ObjectShorthand";e[e.ImportDeclaration=9]="ImportDeclaration";e[e.ObjectKey=10]="ObjectKey";e[e.ImportAccess=11]="ImportAccess"}(W||(W={})),function(e){e[e.NoChildren=0]="NoChildren";e[e.OneChild=1]="OneChild";e[e.StaticChildren=2]="StaticChildren";e[e.KeyAfterPropSpread=3]="KeyAfterPropSpread"}(z||(z={}));class ee{constructor(){this.type=b.type,this.contextualKeyword=b.contextualKeyword,this.start=b.start,this.end=b.end,this.scopeDepth=b.scopeDepth,this.isType=b.isType,this.identifierRole=null,this.jsxRole=null,this.shadowsGlobal=!1,this.isAsyncOperation=!1,this.contextId=null,this.rhsEndIndex=null,this.isExpression=!1,this.numNullishCoalesceStarts=0,this.numNullishCoalesceEnds=0,this.isOptionalChainStart=!1,this.isOptionalChainEnd=!1,this.subscriptStartIndex=null,this.nullishStartIndex=null}}function te(){b.tokens.push(new ee),me()}function ne(){b.tokens.push(new ee),b.start=b.pos,function(){for(;;){if(b.pos>=T.length)return void M("Unterminated template");const e=T.charCodeAt(b.pos);if(e===d.graveAccent||e===d.dollarSign&&T.charCodeAt(b.pos+1)===d.leftCurlyBrace)return b.pos===b.start&&ce(p.template)?e===d.dollarSign?(b.pos+=2,void _e(p.dollarBraceL)):(++b.pos,void _e(p.backQuote)):void _e(p.template);e===d.backslash&&b.pos++,b.pos++}}()}function se(){b.type===p.assign&&--b.pos,function(){const e=b.pos;let t=!1,n=!1;for(;;){if(b.pos>=T.length)return void M("Unterminated regular expression",e);const s=T.charCodeAt(b.pos);if(t)t=!1;else{if(s===d.leftSquareBracket)n=!0;else if(s===d.rightSquareBracket&&n)n=!1;else if(s===d.slash&&!n)break;t=s===d.backslash}++b.pos}++b.pos,function(){for(;b.pos<T.length;){const e=T.charCodeAt(b.pos);if(U[e])b.pos++;else{if(e!==d.backslash)break;if(b.pos+=2,T.charCodeAt(b.pos)===d.leftCurlyBrace){for(;b.pos<T.length&&T.charCodeAt(b.pos)!==d.rightCurlyBrace;)b.pos++;b.pos++}}}}(),_e(p.regexp)}()}function oe(e){for(let n=b.tokens.length-e;n<b.tokens.length;n++)b.tokens[n].isType=!0;const t=b.isType;return b.isType=!0,t}function re(e){b.isType=e}function ie(e){return!!ce(e)&&(te(),!0)}function ae(e){const t=b.isType;b.isType=!0,ie(e),b.isType=t}function ce(e){return b.type===e}function le(){const e=b.snapshot();te();const t=b.type;return b.restoreFromSnapshot(e),t}class ue{constructor(e,t){this.type=e,this.contextualKeyword=t}}function he(){const e=b.snapshot();te();const t=b.type,n=b.contextualKeyword;return b.restoreFromSnapshot(e),new ue(t,n)}function pe(){return de(b.pos)}function de(e){F.lastIndex=e;return e+F.exec(T)[0].length}function fe(){return T.charCodeAt(pe())}function me(){if(xe(),b.start=b.pos,b.pos>=T.length){const e=b.tokens;return e.length>=2&&e[e.length-1].start>=T.length&&e[e.length-2].start>=T.length&&M("Unexpectedly reached the end of input."),void _e(p.eof)}var e;e=T.charCodeAt(b.pos),V[e]||e===d.backslash||e===d.atSign&&T.charCodeAt(b.pos+1)===d.atSign?function(){let e=0,t=0,n=b.pos;for(;n<T.length&&(t=T.charCodeAt(n),!(t<d.lowercaseA||t>d.lowercaseZ));){const s=K[e+(t-d.lowercaseA)+1];if(-1===s)break;e=s,n++}const s=K[e];if(s>-1&&!U[t])return b.pos=n,void(1&s?_e(s>>>1):_e(p.name,s>>>1));for(;n<T.length;){const e=T.charCodeAt(n);if(U[e])n++;else if(e===d.backslash){if(n+=2,T.charCodeAt(n)===d.leftCurlyBrace){for(;n<T.length&&T.charCodeAt(n)!==d.rightCurlyBrace;)n++;n++}}else{if(e!==d.atSign||T.charCodeAt(n+1)!==d.atSign)break;n+=2}}b.pos=n,_e(p.name)}():Te(e)}function ke(){for(;T.charCodeAt(b.pos)!==d.asterisk||T.charCodeAt(b.pos+1)!==d.slash;)if(b.pos++,b.pos>T.length)return void M("Unterminated comment",b.pos-2);b.pos+=2}function ge(e){let t=T.charCodeAt(b.pos+=e);if(b.pos<T.length)for(;t!==d.lineFeed&&t!==d.carriageReturn&&t!==d.lineSeparator&&t!==d.paragraphSeparator&&++b.pos<T.length;)t=T.charCodeAt(b.pos)}function xe(){for(;b.pos<T.length;){const e=T.charCodeAt(b.pos);switch(e){case d.carriageReturn:T.charCodeAt(b.pos+1)===d.lineFeed&&++b.pos;case d.lineFeed:case d.lineSeparator:case d.paragraphSeparator:++b.pos;break;case d.slash:switch(T.charCodeAt(b.pos+1)){case d.asterisk:b.pos+=2,ke();break;case d.slash:ge(2);break;default:return}break;default:if(!$[e])return;++b.pos}}}function _e(e,t=h.NONE){b.end=b.pos,b.type=e,b.contextualKeyword=t}function ye(){if(b.isType)return void ve(p.greaterThan,1);const e=T.charCodeAt(b.pos+1);if(e===d.greaterThan){const e=T.charCodeAt(b.pos+2)===d.greaterThan?3:2;return T.charCodeAt(b.pos+e)===d.equalsTo?void ve(p.assign,e+1):void ve(p.bitShiftR,e)}e===d.equalsTo?ve(p.relationalOrEqual,2):ve(p.greaterThan,1)}function be(){b.type===p.greaterThan&&(b.pos-=1,ye())}function Te(e){switch(e){case d.numberSign:return++b.pos,void _e(p.hash);case d.dot:return void function(){const e=T.charCodeAt(b.pos+1);e>=d.digit0&&e<=d.digit9?Ce(!0):e===d.dot&&T.charCodeAt(b.pos+2)===d.dot?(b.pos+=3,_e(p.ellipsis)):(++b.pos,_e(p.dot))}();case d.leftParenthesis:return++b.pos,void _e(p.parenL);case d.rightParenthesis:return++b.pos,void _e(p.parenR);case d.semicolon:return++b.pos,void _e(p.semi);case d.comma:return++b.pos,void _e(p.comma);case d.leftSquareBracket:return++b.pos,void _e(p.bracketL);case d.rightSquareBracket:return++b.pos,void _e(p.bracketR);case d.leftCurlyBrace:return void(y&&T.charCodeAt(b.pos+1)===d.verticalBar?ve(p.braceBarL,2):(++b.pos,_e(p.braceL)));case d.rightCurlyBrace:return++b.pos,void _e(p.braceR);case d.colon:return void(T.charCodeAt(b.pos+1)===d.colon?ve(p.doubleColon,2):(++b.pos,_e(p.colon)));case d.questionMark:return void function(){const e=T.charCodeAt(b.pos+1),t=T.charCodeAt(b.pos+2);e!==d.questionMark||y&&b.isType?e!==d.dot||t>=d.digit0&&t<=d.digit9?(++b.pos,_e(p.question)):(b.pos+=2,_e(p.questionDot)):t===d.equalsTo?ve(p.assign,3):ve(p.nullishCoalescing,2)}();case d.atSign:return++b.pos,void _e(p.at);case d.graveAccent:return++b.pos,void _e(p.backQuote);case d.digit0:{const e=T.charCodeAt(b.pos+1);if(e===d.lowercaseX||e===d.uppercaseX||e===d.lowercaseO||e===d.uppercaseO||e===d.lowercaseB||e===d.uppercaseB)return void function(){b.pos+=2;for(;;){const e=T.charCodeAt(b.pos);if(!(e>=d.digit0&&e<=d.digit9||e>=d.lowercaseA&&e<=d.lowercaseF||e>=d.uppercaseA&&e<=d.uppercaseF||e===d.underscore))break;b.pos++}const e=T.charCodeAt(b.pos);e===d.lowercaseN?(++b.pos,_e(p.bigint)):_e(p.num)}()}case d.digit1:case d.digit2:case d.digit3:case d.digit4:case d.digit5:case d.digit6:case d.digit7:case d.digit8:case d.digit9:return void Ce(!1);case d.quotationMark:case d.apostrophe:return void function(e){for(b.pos++;;){if(b.pos>=T.length)return void M("Unterminated string constant");const t=T.charCodeAt(b.pos);if(t===d.backslash)b.pos++;else if(t===e)break;b.pos++}b.pos++,_e(p.string)}(e);case d.slash:return void(T.charCodeAt(b.pos+1)===d.equalsTo?ve(p.assign,2):ve(p.slash,1));case d.percentSign:case d.asterisk:return void function(e){let t=e===d.asterisk?p.star:p.modulo,n=1,s=T.charCodeAt(b.pos+1);e===d.asterisk&&s===d.asterisk&&(n++,s=T.charCodeAt(b.pos+2),t=p.exponent),s===d.equalsTo&&T.charCodeAt(b.pos+2)!==d.greaterThan&&(n++,t=p.assign),ve(t,n)}(e);case d.verticalBar:case d.ampersand:return void function(e){const t=T.charCodeAt(b.pos+1);if(t!==e){if(e===d.verticalBar){if(t===d.greaterThan)return void ve(p.pipeline,2);if(t===d.rightCurlyBrace&&y)return void ve(p.braceBarR,2)}t!==d.equalsTo?ve(e===d.verticalBar?p.bitwiseOR:p.bitwiseAND,1):ve(p.assign,2)}else T.charCodeAt(b.pos+2)===d.equalsTo?ve(p.assign,3):ve(e===d.verticalBar?p.logicalOR:p.logicalAND,2)}(e);case d.caret:return void(T.charCodeAt(b.pos+1)===d.equalsTo?ve(p.assign,2):ve(p.bitwiseXOR,1));case d.plusSign:case d.dash:return void function(e){const t=T.charCodeAt(b.pos+1);t!==e?t===d.equalsTo?ve(p.assign,2):e===d.plusSign?ve(p.plus,1):ve(p.minus,1):ve(p.preIncDec,2)}(e);case d.lessThan:return void function(){const e=T.charCodeAt(b.pos+1);if(e===d.lessThan)return T.charCodeAt(b.pos+2)===d.equalsTo?void ve(p.assign,3):void(b.isType?ve(p.lessThan,1):ve(p.bitShiftL,2));e===d.equalsTo?ve(p.relationalOrEqual,2):ve(p.lessThan,1)}();case d.greaterThan:return void ye();case d.equalsTo:case d.exclamationMark:return void function(e){const t=T.charCodeAt(b.pos+1);if(t!==d.equalsTo)return e===d.equalsTo&&t===d.greaterThan?(b.pos+=2,void _e(p.arrow)):void ve(e===d.equalsTo?p.eq:p.bang,1);ve(p.equality,T.charCodeAt(b.pos+2)===d.equalsTo?3:2)}(e);case d.tilde:return void ve(p.tilde,1)}M(`Unexpected character '${String.fromCharCode(e)}'`,b.pos)}function ve(e,t){b.pos+=t,_e(e)}function Ie(){for(;;){const e=T.charCodeAt(b.pos);if(!(e>=d.digit0&&e<=d.digit9||e===d.underscore))break;b.pos++}}function Ce(e){let t=!1,n=!1;e||Ie();let s=T.charCodeAt(b.pos);s===d.dot&&(++b.pos,Ie(),s=T.charCodeAt(b.pos)),s!==d.uppercaseE&&s!==d.lowercaseE||(s=T.charCodeAt(++b.pos),s!==d.plusSign&&s!==d.dash||++b.pos,Ie(),s=T.charCodeAt(b.pos)),s===d.lowercaseN?(++b.pos,t=!0):s===d.lowercaseM&&(++b.pos,n=!0),_e(t?p.bigint:n?p.decimal:p.num)}function we(e,t=e.currentIndex()){let n=t+1;if(Ae(e,n)){const s=e.identifierNameAtIndex(t);return{isType:!1,leftName:s,rightName:s,endIndex:n}}if(n++,Ae(e,n))return{isType:!0,leftName:null,rightName:null,endIndex:n};if(n++,Ae(e,n))return{isType:!1,leftName:e.identifierNameAtIndex(t),rightName:e.identifierNameAtIndex(t+2),endIndex:n};if(n++,Ae(e,n))return{isType:!0,leftName:null,rightName:null,endIndex:n};throw new Error(`Unexpected import/export specifier at ${t}`)}function Ae(e,t){const n=e.tokens[t];return n.type===p.braceR||n.type===p.comma}const Ee=new Map([["quot",'"'],["amp","&"],["apos","'"],["lt","<"],["gt",">"],["nbsp","\xa0"],["iexcl","\xa1"],["cent","\xa2"],["pound","\xa3"],["curren","\xa4"],["yen","\xa5"],["brvbar","\xa6"],["sect","\xa7"],["uml","\xa8"],["copy","\xa9"],["ordf","\xaa"],["laquo","\xab"],["not","\xac"],["shy","\xad"],["reg","\xae"],["macr","\xaf"],["deg","\xb0"],["plusmn","\xb1"],["sup2","\xb2"],["sup3","\xb3"],["acute","\xb4"],["micro","\xb5"],["para","\xb6"],["middot","\xb7"],["cedil","\xb8"],["sup1","\xb9"],["ordm","\xba"],["raquo","\xbb"],["frac14","\xbc"],["frac12","\xbd"],["frac34","\xbe"],["iquest","\xbf"],["Agrave","\xc0"],["Aacute","\xc1"],["Acirc","\xc2"],["Atilde","\xc3"],["Auml","\xc4"],["Aring","\xc5"],["AElig","\xc6"],["Ccedil","\xc7"],["Egrave","\xc8"],["Eacute","\xc9"],["Ecirc","\xca"],["Euml","\xcb"],["Igrave","\xcc"],["Iacute","\xcd"],["Icirc","\xce"],["Iuml","\xcf"],["ETH","\xd0"],["Ntilde","\xd1"],["Ograve","\xd2"],["Oacute","\xd3"],["Ocirc","\xd4"],["Otilde","\xd5"],["Ouml","\xd6"],["times","\xd7"],["Oslash","\xd8"],["Ugrave","\xd9"],["Uacute","\xda"],["Ucirc","\xdb"],["Uuml","\xdc"],["Yacute","\xdd"],["THORN","\xde"],["szlig","\xdf"],["agrave","\xe0"],["aacute","\xe1"],["acirc","\xe2"],["atilde","\xe3"],["auml","\xe4"],["aring","\xe5"],["aelig","\xe6"],["ccedil","\xe7"],["egrave","\xe8"],["eacute","\xe9"],["ecirc","\xea"],["euml","\xeb"],["igrave","\xec"],["iacute","\xed"],["icirc","\xee"],["iuml","\xef"],["eth","\xf0"],["ntilde","\xf1"],["ograve","\xf2"],["oacute","\xf3"],["ocirc","\xf4"],["otilde","\xf5"],["ouml","\xf6"],["divide","\xf7"],["oslash","\xf8"],["ugrave","\xf9"],["uacute","\xfa"],["ucirc","\xfb"],["uuml","\xfc"],["yacute","\xfd"],["thorn","\xfe"],["yuml","\xff"],["OElig","\u0152"],["oelig","\u0153"],["Scaron","\u0160"],["scaron","\u0161"],["Yuml","\u0178"],["fnof","\u0192"],["circ","\u02c6"],["tilde","\u02dc"],["Alpha","\u0391"],["Beta","\u0392"],["Gamma","\u0393"],["Delta","\u0394"],["Epsilon","\u0395"],["Zeta","\u0396"],["Eta","\u0397"],["Theta","\u0398"],["Iota","\u0399"],["Kappa","\u039a"],["Lambda","\u039b"],["Mu","\u039c"],["Nu","\u039d"],["Xi","\u039e"],["Omicron","\u039f"],["Pi","\u03a0"],["Rho","\u03a1"],["Sigma","\u03a3"],["Tau","\u03a4"],["Upsilon","\u03a5"],["Phi","\u03a6"],["Chi","\u03a7"],["Psi","\u03a8"],["Omega","\u03a9"],["alpha","\u03b1"],["beta","\u03b2"],["gamma","\u03b3"],["delta","\u03b4"],["epsilon","\u03b5"],["zeta","\u03b6"],["eta","\u03b7"],["theta","\u03b8"],["iota","\u03b9"],["kappa","\u03ba"],["lambda","\u03bb"],["mu","\u03bc"],["nu","\u03bd"],["xi","\u03be"],["omicron","\u03bf"],["pi","\u03c0"],["rho","\u03c1"],["sigmaf","\u03c2"],["sigma","\u03c3"],["tau","\u03c4"],["upsilon","\u03c5"],["phi","\u03c6"],["chi","\u03c7"],["psi","\u03c8"],["omega","\u03c9"],["thetasym","\u03d1"],["upsih","\u03d2"],["piv","\u03d6"],["ensp","\u2002"],["emsp","\u2003"],["thinsp","\u2009"],["zwnj","\u200c"],["zwj","\u200d"],["lrm","\u200e"],["rlm","\u200f"],["ndash","\u2013"],["mdash","\u2014"],["lsquo","\u2018"],["rsquo","\u2019"],["sbquo","\u201a"],["ldquo","\u201c"],["rdquo","\u201d"],["bdquo","\u201e"],["dagger","\u2020"],["Dagger","\u2021"],["bull","\u2022"],["hellip","\u2026"],["permil","\u2030"],["prime","\u2032"],["Prime","\u2033"],["lsaquo","\u2039"],["rsaquo","\u203a"],["oline","\u203e"],["frasl","\u2044"],["euro","\u20ac"],["image","\u2111"],["weierp","\u2118"],["real","\u211c"],["trade","\u2122"],["alefsym","\u2135"],["larr","\u2190"],["uarr","\u2191"],["rarr","\u2192"],["darr","\u2193"],["harr","\u2194"],["crarr","\u21b5"],["lArr","\u21d0"],["uArr","\u21d1"],["rArr","\u21d2"],["dArr","\u21d3"],["hArr","\u21d4"],["forall","\u2200"],["part","\u2202"],["exist","\u2203"],["empty","\u2205"],["nabla","\u2207"],["isin","\u2208"],["notin","\u2209"],["ni","\u220b"],["prod","\u220f"],["sum","\u2211"],["minus","\u2212"],["lowast","\u2217"],["radic","\u221a"],["prop","\u221d"],["infin","\u221e"],["ang","\u2220"],["and","\u2227"],["or","\u2228"],["cap","\u2229"],["cup","\u222a"],["int","\u222b"],["there4","\u2234"],["sim","\u223c"],["cong","\u2245"],["asymp","\u2248"],["ne","\u2260"],["equiv","\u2261"],["le","\u2264"],["ge","\u2265"],["sub","\u2282"],["sup","\u2283"],["nsub","\u2284"],["sube","\u2286"],["supe","\u2287"],["oplus","\u2295"],["otimes","\u2297"],["perp","\u22a5"],["sdot","\u22c5"],["lceil","\u2308"],["rceil","\u2309"],["lfloor","\u230a"],["rfloor","\u230b"],["lang","\u2329"],["rang","\u232a"],["loz","\u25ca"],["spades","\u2660"],["clubs","\u2663"],["hearts","\u2665"],["diams","\u2666"]]);function Ne(e){const[t,n]=Se(e.jsxPragma||"React.createElement"),[s,o]=Se(e.jsxFragmentPragma||"React.Fragment");return{base:t,suffix:n,fragmentBase:s,fragmentSuffix:o}}function Se(e){let t=e.indexOf(".");return-1===t&&(t=e.length),[e.slice(0,t),e.slice(t)]}class je{getPrefixCode(){return""}getHoistedCode(){return""}getSuffixCode(){return""}}class Le extends je{__init(){this.lastLineNumber=1}__init2(){this.lastIndex=0}__init3(){this.filenameVarName=null}__init4(){this.esmAutomaticImportNameResolutions={}}__init5(){this.cjsAutomaticModuleNameResolutions={}}constructor(e,t,n,s,o){super(),this.rootTransformer=e,this.tokens=t,this.importProcessor=n,this.nameManager=s,this.options=o,Le.prototype.__init.call(this),Le.prototype.__init2.call(this),Le.prototype.__init3.call(this),Le.prototype.__init4.call(this),Le.prototype.__init5.call(this),this.jsxPragmaInfo=Ne(o),this.isAutomaticRuntime="automatic"===o.jsxRuntime,this.jsxImportSource=o.jsxImportSource||"react"}process(){return!!this.tokens.matches1(p.jsxTagStart)&&(this.processJSXTag(),!0)}getPrefixCode(){let e="";if(this.filenameVarName&&(e+=`const ${this.filenameVarName} = ${JSON.stringify(this.options.filePath||"")};`),this.isAutomaticRuntime)if(this.importProcessor)for(const[t,n]of Object.entries(this.cjsAutomaticModuleNameResolutions))e+=`var ${n} = require("${t}");`;else{const{createElement:t,...n}=this.esmAutomaticImportNameResolutions;t&&(e+=`import {createElement as ${t}} from "${this.jsxImportSource}";`);const s=Object.entries(n).map((([e,t])=>`${e} as ${t}`)).join(", ");if(s){e+=`import {${s}} from "${this.jsxImportSource+(this.options.production?"/jsx-runtime":"/jsx-dev-runtime")}";`}}return e}processJSXTag(){const{jsxRole:e,start:t}=this.tokens.currentToken(),n=this.options.production?null:this.getElementLocationCode(t);this.isAutomaticRuntime&&e!==z.KeyAfterPropSpread?this.transformTagToJSXFunc(n,e):this.transformTagToCreateElement(n)}getElementLocationCode(e){return`lineNumber: ${this.getLineNumberForIndex(e)}`}getLineNumberForIndex(e){const t=this.tokens.code;for(;this.lastIndex<e&&this.lastIndex<t.length;)"\n"===t[this.lastIndex]&&this.lastLineNumber++,this.lastIndex++;return this.lastLineNumber}transformTagToJSXFunc(e,t){const n=t===z.StaticChildren;this.tokens.replaceToken(this.getJSXFuncInvocationCode(n));let s=null;if(this.tokens.matches1(p.jsxTagEnd))this.tokens.replaceToken(`${this.getFragmentCode()}, {`),this.processAutomaticChildrenAndEndProps(t);else{if(this.processTagIntro(),this.tokens.appendCode(", {"),s=this.processProps(!0),this.tokens.matches2(p.slash,p.jsxTagEnd))this.tokens.appendCode("}");else{if(!this.tokens.matches1(p.jsxTagEnd))throw new Error("Expected either /> or > at the end of the tag.");this.tokens.removeToken(),this.processAutomaticChildrenAndEndProps(t)}s&&this.tokens.appendCode(`, ${s}`)}for(this.options.production||(null===s&&this.tokens.appendCode(", void 0"),this.tokens.appendCode(`, ${n}, ${this.getDevSource(e)}, this`)),this.tokens.removeInitialToken();!this.tokens.matches1(p.jsxTagEnd);)this.tokens.removeToken();this.tokens.replaceToken(")")}transformTagToCreateElement(e){if(this.tokens.replaceToken(this.getCreateElementInvocationCode()),this.tokens.matches1(p.jsxTagEnd))this.tokens.replaceToken(`${this.getFragmentCode()}, null`),this.processChildren(!0);else if(this.processTagIntro(),this.processPropsObjectWithDevInfo(e),this.tokens.matches2(p.slash,p.jsxTagEnd));else{if(!this.tokens.matches1(p.jsxTagEnd))throw new Error("Expected either /> or > at the end of the tag.");this.tokens.removeToken(),this.processChildren(!0)}for(this.tokens.removeInitialToken();!this.tokens.matches1(p.jsxTagEnd);)this.tokens.removeToken();this.tokens.replaceToken(")")}getJSXFuncInvocationCode(e){return this.options.production?e?this.claimAutoImportedFuncInvocation("jsxs","/jsx-runtime"):this.claimAutoImportedFuncInvocation("jsx","/jsx-runtime"):this.claimAutoImportedFuncInvocation("jsxDEV","/jsx-dev-runtime")}getCreateElementInvocationCode(){if(this.isAutomaticRuntime)return this.claimAutoImportedFuncInvocation("createElement","");{const{jsxPragmaInfo:e}=this;return`${this.importProcessor&&this.importProcessor.getIdentifierReplacement(e.base)||e.base}${e.suffix}(`}}getFragmentCode(){if(this.isAutomaticRuntime)return this.claimAutoImportedName("Fragment",this.options.production?"/jsx-runtime":"/jsx-dev-runtime");{const{jsxPragmaInfo:e}=this;return(this.importProcessor&&this.importProcessor.getIdentifierReplacement(e.fragmentBase)||e.fragmentBase)+e.fragmentSuffix}}claimAutoImportedFuncInvocation(e,t){const n=this.claimAutoImportedName(e,t);return this.importProcessor?`${n}.call(void 0, `:`${n}(`}claimAutoImportedName(e,t){if(this.importProcessor){const n=this.jsxImportSource+t;return this.cjsAutomaticModuleNameResolutions[n]||(this.cjsAutomaticModuleNameResolutions[n]=this.importProcessor.getFreeIdentifierForPath(n)),`${this.cjsAutomaticModuleNameResolutions[n]}.${e}`}return this.esmAutomaticImportNameResolutions[e]||(this.esmAutomaticImportNameResolutions[e]=this.nameManager.claimFreeName(`_${e}`)),this.esmAutomaticImportNameResolutions[e]}processTagIntro(){let e=this.tokens.currentIndex()+1;for(;this.tokens.tokens[e].isType||!this.tokens.matches2AtIndex(e-1,p.jsxName,p.jsxName)&&!this.tokens.matches2AtIndex(e-1,p.greaterThan,p.jsxName)&&!this.tokens.matches1AtIndex(e,p.braceL)&&!this.tokens.matches1AtIndex(e,p.jsxTagEnd)&&!this.tokens.matches2AtIndex(e,p.slash,p.jsxTagEnd);)e++;if(e===this.tokens.currentIndex()+1){const e=this.tokens.identifierName();Re(e)&&this.tokens.replaceToken(`'${e}'`)}for(;this.tokens.currentIndex()<e;)this.rootTransformer.processToken()}processPropsObjectWithDevInfo(e){const t=this.options.production?"":`__self: this, __source: ${this.getDevSource(e)}`;this.tokens.matches1(p.jsxName)||this.tokens.matches1(p.braceL)?(this.tokens.appendCode(", {"),this.processProps(!1),t?this.tokens.appendCode(` ${t}}`):this.tokens.appendCode("}")):t?this.tokens.appendCode(`, {${t}}`):this.tokens.appendCode(", null")}processProps(e){let t=null;for(;;){if(this.tokens.matches2(p.jsxName,p.eq)){const n=this.tokens.identifierName();if(e&&"key"===n){null!==t&&this.tokens.appendCode(t.replace(/[^\n]/g,"")),this.tokens.removeToken(),this.tokens.removeToken();const e=this.tokens.snapshot();this.processPropValue(),t=this.tokens.dangerouslyGetAndRemoveCodeSinceSnapshot(e);continue}this.processPropName(n),this.tokens.replaceToken(": "),this.processPropValue()}else if(this.tokens.matches1(p.jsxName)){const e=this.tokens.identifierName();this.processPropName(e),this.tokens.appendCode(": true")}else{if(!this.tokens.matches1(p.braceL))break;this.tokens.replaceToken(""),this.rootTransformer.processBalancedCode(),this.tokens.replaceToken("")}this.tokens.appendCode(",")}return t}processPropName(e){e.includes("-")?this.tokens.replaceToken(`'${e}'`):this.tokens.copyToken()}processPropValue(){this.tokens.matches1(p.braceL)?(this.tokens.replaceToken(""),this.rootTransformer.processBalancedCode(),this.tokens.replaceToken("")):this.tokens.matches1(p.jsxTagStart)?this.processJSXTag():this.processStringPropValue()}processStringPropValue(){const e=this.tokens.currentToken(),t=this.tokens.code.slice(e.start+1,e.end-1),n=Oe(t),s=function(e){let t="";for(let n=0;n<e.length;n++){const s=e[n];if("\n"===s)if(/\s/.test(e[n+1]))for(t+=" ";n<e.length&&/\s/.test(e[n+1]);)n++;else t+="\n";else if("&"===s){const{entity:s,newI:o}=De(e,n+1);t+=s,n=o-1}else t+=s}return JSON.stringify(t)}(t);this.tokens.replaceToken(s+n)}processAutomaticChildrenAndEndProps(e){e===z.StaticChildren?(this.tokens.appendCode(" children: ["),this.processChildren(!1),this.tokens.appendCode("]}")):(e===z.OneChild&&this.tokens.appendCode(" children: "),this.processChildren(!1),this.tokens.appendCode("}"))}processChildren(e){let t=e;for(;;){if(this.tokens.matches2(p.jsxTagStart,p.slash))return;let e=!1;if(this.tokens.matches1(p.braceL))this.tokens.matches2(p.braceL,p.braceR)?(this.tokens.replaceToken(""),this.tokens.replaceToken("")):(this.tokens.replaceToken(t?", ":""),this.rootTransformer.processBalancedCode(),this.tokens.replaceToken(""),e=!0);else if(this.tokens.matches1(p.jsxTagStart))this.tokens.appendCode(t?", ":""),this.processJSXTag(),e=!0;else{if(!this.tokens.matches1(p.jsxText)&&!this.tokens.matches1(p.jsxEmptyText))throw new Error("Unexpected token when processing JSX children.");e=this.processChildTextElement(t)}e&&(t=!0)}}processChildTextElement(e){const t=this.tokens.currentToken(),n=this.tokens.code.slice(t.start,t.end),s=Oe(n),o=function(e){let t="",n="",s=!1,o=!1;for(let r=0;r<e.length;r++){const i=e[r];if(" "===i||"\t"===i||"\r"===i)s||(n+=i);else if("\n"===i)n="",s=!0;else{if(o&&s&&(t+=" "),t+=n,n="","&"===i){const{entity:n,newI:s}=De(e,r+1);r=s-1,t+=n}else t+=i;o=!0,s=!1}}s||(t+=n);return JSON.stringify(t)}(n);return'""'===o?(this.tokens.replaceToken(s),!1):(this.tokens.replaceToken(`${e?", ":""}${o}${s}`),!0)}getDevSource(e){return`{fileName: ${this.getFilenameVarName()}, ${e}}`}getFilenameVarName(){return this.filenameVarName||(this.filenameVarName=this.nameManager.claimFreeName("_jsxFileName")),this.filenameVarName}}function Re(e){const t=e.charCodeAt(0);return t>=d.lowercaseA&&t<=d.lowercaseZ}function Oe(e){let t=0,n=0;for(const s of e)"\n"===s?(t++,n=0):" "===s&&n++;return"\n".repeat(t)+" ".repeat(n)}function De(e,t){let n,s="",o=0,r=t;if("#"===e[r]){let t,s=10;if(r++,"x"===e[r])for(s=16,r++,t=r;r<e.length&&((i=e.charCodeAt(r))>=d.digit0&&i<=d.digit9||i>=d.lowercaseA&&i<=d.lowercaseF||i>=d.uppercaseA&&i<=d.uppercaseF);)r++;else for(t=r;r<e.length&&Pe(e.charCodeAt(r));)r++;if(";"===e[r]){const o=e.slice(t,r);o&&(r++,n=String.fromCodePoint(parseInt(o,s)))}}else for(;r<e.length&&o++<10;){const t=e[r];if(r++,";"===t){n=Ee.get(s);break}s+=t}var i;return n?{entity:n,newI:r}:{entity:"&",newI:t}}function Pe(e){return e>=d.digit0&&e<=d.digit9}function Be(e,t){const n=Ne(t),s=new Set;for(let o=0;o<e.tokens.length;o++){const t=e.tokens[o];if(t.type!==p.name||t.isType||t.identifierRole!==W.Access&&t.identifierRole!==W.ObjectShorthand&&t.identifierRole!==W.ExportAccess||t.shadowsGlobal||s.add(e.identifierNameForToken(t)),t.type===p.jsxTagStart&&s.add(n.base),t.type===p.jsxTagStart&&o+1<e.tokens.length&&e.tokens[o+1].type===p.jsxTagEnd&&(s.add(n.base),s.add(n.fragmentBase)),t.type===p.jsxName&&t.identifierRole===W.Access){Re(e.identifierNameForToken(t))&&e.tokens[o+1].type!==p.dot||s.add(e.identifierNameForToken(t))}}return s}class Me{__init(){this.nonTypeIdentifiers=new Set}__init2(){this.importInfoByPath=new Map}__init3(){this.importsToReplace=new Map}__init4(){this.identifierReplacements=new Map}__init5(){this.exportBindingsByLocalName=new Map}constructor(e,t,n,s,o,r,i){this.nameManager=e,this.tokens=t,this.enableLegacyTypeScriptModuleInterop=n,this.options=s,this.isTypeScriptTransformEnabled=o,this.keepUnusedImports=r,this.helperManager=i,Me.prototype.__init.call(this),Me.prototype.__init2.call(this),Me.prototype.__init3.call(this),Me.prototype.__init4.call(this),Me.prototype.__init5.call(this)}preprocessTokens(){for(let e=0;e<this.tokens.tokens.length;e++)this.tokens.matches1AtIndex(e,p._import)&&!this.tokens.matches3AtIndex(e,p._import,p.name,p.eq)&&this.preprocessImportAtIndex(e),this.tokens.matches1AtIndex(e,p._export)&&!this.tokens.matches2AtIndex(e,p._export,p.eq)&&this.preprocessExportAtIndex(e);this.generateImportReplacements()}pruneTypeOnlyImports(){this.nonTypeIdentifiers=Be(this.tokens,this.options);for(const[e,t]of this.importInfoByPath.entries()){if(t.hasBareImport||t.hasStarExport||t.exportStarNames.length>0||t.namedExports.length>0)continue;[...t.defaultNames,...t.wildcardNames,...t.namedImports.map((({localName:e})=>e))].every((e=>this.shouldAutomaticallyElideImportedName(e)))&&this.importsToReplace.set(e,"")}}shouldAutomaticallyElideImportedName(e){return this.isTypeScriptTransformEnabled&&!this.keepUnusedImports&&!this.nonTypeIdentifiers.has(e)}generateImportReplacements(){for(const[e,t]of this.importInfoByPath.entries()){const{defaultNames:n,wildcardNames:s,namedImports:o,namedExports:r,exportStarNames:i,hasStarExport:a}=t;if(0===n.length&&0===s.length&&0===o.length&&0===r.length&&0===i.length&&!a){this.importsToReplace.set(e,`require('${e}');`);continue}const c=this.getFreeIdentifierForPath(e);let l;l=this.enableLegacyTypeScriptModuleInterop?c:s.length>0?s[0]:this.getFreeIdentifierForPath(e);let u=`var ${c} = require('${e}');`;if(s.length>0)for(const e of s){u+=` var ${e} = ${this.enableLegacyTypeScriptModuleInterop?c:`${this.helperManager.getHelperName("interopRequireWildcard")}(${c})`};`}else i.length>0&&l!==c?u+=` var ${l} = ${this.helperManager.getHelperName("interopRequireWildcard")}(${c});`:n.length>0&&l!==c&&(u+=` var ${l} = ${this.helperManager.getHelperName("interopRequireDefault")}(${c});`);for(const{importedName:e,localName:t}of r)u+=` ${this.helperManager.getHelperName("createNamedExportFrom")}(${c}, '${t}', '${e}');`;for(const e of i)u+=` exports.${e} = ${l};`;a&&(u+=` ${this.helperManager.getHelperName("createStarExport")}(${c});`),this.importsToReplace.set(e,u);for(const e of n)this.identifierReplacements.set(e,`${l}.default`);for(const{importedName:e,localName:t}of o)this.identifierReplacements.set(t,`${c}.${e}`)}}getFreeIdentifierForPath(e){const t=e.split("/"),n=t[t.length-1].replace(/\W/g,"");return this.nameManager.claimFreeName(`_${n}`)}preprocessImportAtIndex(e){const t=[],n=[],s=[];if(e++,(this.tokens.matchesContextualAtIndex(e,h._type)||this.tokens.matches1AtIndex(e,p._typeof))&&!this.tokens.matches1AtIndex(e+1,p.comma)&&!this.tokens.matchesContextualAtIndex(e+1,h._from))return;if(this.tokens.matches1AtIndex(e,p.parenL))return;if(this.tokens.matches1AtIndex(e,p.name)&&(t.push(this.tokens.identifierNameAtIndex(e)),e++,this.tokens.matches1AtIndex(e,p.comma)&&e++),this.tokens.matches1AtIndex(e,p.star)&&(e+=2,n.push(this.tokens.identifierNameAtIndex(e)),e++),this.tokens.matches1AtIndex(e,p.braceL)){const n=this.getNamedImports(e+1);e=n.newIndex;for(const e of n.namedImports)"default"===e.importedName?t.push(e.localName):s.push(e)}if(this.tokens.matchesContextualAtIndex(e,h._from)&&e++,!this.tokens.matches1AtIndex(e,p.string))throw new Error("Expected string token at the end of import statement.");const o=this.tokens.stringValueAtIndex(e),r=this.getImportInfo(o);r.defaultNames.push(...t),r.wildcardNames.push(...n),r.namedImports.push(...s),0===t.length&&0===n.length&&0===s.length&&(r.hasBareImport=!0)}preprocessExportAtIndex(e){if(this.tokens.matches2AtIndex(e,p._export,p._var)||this.tokens.matches2AtIndex(e,p._export,p._let)||this.tokens.matches2AtIndex(e,p._export,p._const))this.preprocessVarExportAtIndex(e);else if(this.tokens.matches2AtIndex(e,p._export,p._function)||this.tokens.matches2AtIndex(e,p._export,p._class)){const t=this.tokens.identifierNameAtIndex(e+2);this.addExportBinding(t,t)}else if(this.tokens.matches3AtIndex(e,p._export,p.name,p._function)){const t=this.tokens.identifierNameAtIndex(e+3);this.addExportBinding(t,t)}else this.tokens.matches2AtIndex(e,p._export,p.braceL)?this.preprocessNamedExportAtIndex(e):this.tokens.matches2AtIndex(e,p._export,p.star)&&this.preprocessExportStarAtIndex(e)}preprocessVarExportAtIndex(e){let t=0;for(let n=e+2;;n++)if(this.tokens.matches1AtIndex(n,p.braceL)||this.tokens.matches1AtIndex(n,p.dollarBraceL)||this.tokens.matches1AtIndex(n,p.bracketL))t++;else if(this.tokens.matches1AtIndex(n,p.braceR)||this.tokens.matches1AtIndex(n,p.bracketR))t--;else{if(0===t&&!this.tokens.matches1AtIndex(n,p.name))break;if(this.tokens.matches1AtIndex(1,p.eq)){const e=this.tokens.currentToken().rhsEndIndex;if(null==e)throw new Error("Expected = token with an end index.");n=e-1}else{if(G(this.tokens.tokens[n])){const e=this.tokens.identifierNameAtIndex(n);this.identifierReplacements.set(e,`exports.${e}`)}}}}preprocessNamedExportAtIndex(e){e+=2;const{newIndex:t,namedImports:n}=this.getNamedImports(e);if(e=t,!this.tokens.matchesContextualAtIndex(e,h._from)){for(const{importedName:e,localName:t}of n)this.addExportBinding(e,t);return}if(e++,!this.tokens.matches1AtIndex(e,p.string))throw new Error("Expected string token at the end of import statement.");const s=this.tokens.stringValueAtIndex(e);this.getImportInfo(s).namedExports.push(...n)}preprocessExportStarAtIndex(e){let t=null;if(this.tokens.matches3AtIndex(e,p._export,p.star,p._as)?(e+=3,t=this.tokens.identifierNameAtIndex(e),e+=2):e+=3,!this.tokens.matches1AtIndex(e,p.string))throw new Error("Expected string token at the end of star export statement.");const n=this.tokens.stringValueAtIndex(e),s=this.getImportInfo(n);null!==t?s.exportStarNames.push(t):s.hasStarExport=!0}getNamedImports(e){const t=[];for(;;){if(this.tokens.matches1AtIndex(e,p.braceR)){e++;break}const n=we(this.tokens,e);if(e=n.endIndex,n.isType||t.push({importedName:n.leftName,localName:n.rightName}),this.tokens.matches2AtIndex(e,p.comma,p.braceR)){e+=2;break}if(this.tokens.matches1AtIndex(e,p.braceR)){e++;break}if(!this.tokens.matches1AtIndex(e,p.comma))throw new Error(`Unexpected token: ${JSON.stringify(this.tokens.tokens[e])}`);e++}return{newIndex:e,namedImports:t}}getImportInfo(e){const t=this.importInfoByPath.get(e);if(t)return t;const n={defaultNames:[],wildcardNames:[],namedImports:[],namedExports:[],hasBareImport:!1,exportStarNames:[],hasStarExport:!1};return this.importInfoByPath.set(e,n),n}addExportBinding(e,t){this.exportBindingsByLocalName.has(e)||this.exportBindingsByLocalName.set(e,[]),this.exportBindingsByLocalName.get(e).push(t)}claimImportCode(e){const t=this.importsToReplace.get(e);return this.importsToReplace.set(e,""),t||""}getIdentifierReplacement(e){return this.identifierReplacements.get(e)||null}resolveExportBinding(e){const t=this.exportBindingsByLocalName.get(e);return t&&0!==t.length?t.map((e=>`exports.${e}`)).join(" = "):null}getGlobalNames(){return new Set([...this.identifierReplacements.keys(),...this.exportBindingsByLocalName.keys()])}}var qe=n(99320);function Fe({code:e,mappings:t},n,s,o,r){const i=function(e,t){const n=new Array(t.length);let s=0,o=t[s].start,r=0;for(let i=0;i<e.length;i++)i===o&&(n[s]=o-r,s++,o=t[s].start),e.charCodeAt(i)===d.lineFeed&&(r=i+1);return n}(o,r),a=new qe.GenMapping({file:s.compiledFilename});let c=0,l=t[0];for(;void 0===l&&c<t.length-1;)c++,l=t[c];let u=0,h=0;l!==h&&(0,qe.maybeAddSegment)(a,u,0,n,u,0);for(let k=0;k<e.length;k++){if(k===l){const e=l-h,s=i[c];for((0,qe.maybeAddSegment)(a,u,e,n,u,s);(l===k||void 0===l)&&c<t.length-1;)c++,l=t[c]}e.charCodeAt(k)===d.lineFeed&&(u++,h=k+1,l!==h&&(0,qe.maybeAddSegment)(a,u,0,n,u,0))}const{sourceRoot:p,sourcesContent:f,...m}=(0,qe.toEncodedMap)(a);return m}const $e={require:'\n import {createRequire as CREATE_REQUIRE_NAME} from "module";\n const require = CREATE_REQUIRE_NAME(import.meta.url);\n ',interopRequireWildcard:"\n function interopRequireWildcard(obj) {\n if (obj && obj.__esModule) {\n return obj;\n } else {\n var newObj = {};\n if (obj != null) {\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n newObj[key] = obj[key];\n }\n }\n }\n newObj.default = obj;\n return newObj;\n }\n }\n ",interopRequireDefault:"\n function interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n }\n ",createNamedExportFrom:"\n function createNamedExportFrom(obj, localName, importedName) {\n Object.defineProperty(exports, localName, {enumerable: true, configurable: true, get: () => obj[importedName]});\n }\n ",createStarExport:'\n function createStarExport(obj) {\n Object.keys(obj)\n .filter((key) => key !== "default" && key !== "__esModule")\n .forEach((key) => {\n if (exports.hasOwnProperty(key)) {\n return;\n }\n Object.defineProperty(exports, key, {enumerable: true, configurable: true, get: () => obj[key]});\n });\n }\n ',nullishCoalesce:"\n function nullishCoalesce(lhs, rhsFn) {\n if (lhs != null) {\n return lhs;\n } else {\n return rhsFn();\n }\n }\n ",asyncNullishCoalesce:"\n async function asyncNullishCoalesce(lhs, rhsFn) {\n if (lhs != null) {\n return lhs;\n } else {\n return await rhsFn();\n }\n }\n ",optionalChain:"\n function optionalChain(ops) {\n let lastAccessLHS = undefined;\n let value = ops[0];\n let i = 1;\n while (i < ops.length) {\n const op = ops[i];\n const fn = ops[i + 1];\n i += 2;\n if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) {\n return undefined;\n }\n if (op === 'access' || op === 'optionalAccess') {\n lastAccessLHS = value;\n value = fn(value);\n } else if (op === 'call' || op === 'optionalCall') {\n value = fn((...args) => value.call(lastAccessLHS, ...args));\n lastAccessLHS = undefined;\n }\n }\n return value;\n }\n ",asyncOptionalChain:"\n async function asyncOptionalChain(ops) {\n let lastAccessLHS = undefined;\n let value = ops[0];\n let i = 1;\n while (i < ops.length) {\n const op = ops[i];\n const fn = ops[i + 1];\n i += 2;\n if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) {\n return undefined;\n }\n if (op === 'access' || op === 'optionalAccess') {\n lastAccessLHS = value;\n value = await fn(value);\n } else if (op === 'call' || op === 'optionalCall') {\n value = await fn((...args) => value.call(lastAccessLHS, ...args));\n lastAccessLHS = undefined;\n }\n }\n return value;\n }\n ",optionalChainDelete:"\n function optionalChainDelete(ops) {\n const result = OPTIONAL_CHAIN_NAME(ops);\n return result == null ? true : result;\n }\n ",asyncOptionalChainDelete:"\n async function asyncOptionalChainDelete(ops) {\n const result = await ASYNC_OPTIONAL_CHAIN_NAME(ops);\n return result == null ? true : result;\n }\n "};class He{__init(){this.helperNames={}}__init2(){this.createRequireName=null}constructor(e){this.nameManager=e,He.prototype.__init.call(this),He.prototype.__init2.call(this)}getHelperName(e){let t=this.helperNames[e];return t||(t=this.nameManager.claimFreeName(`_${e}`),this.helperNames[e]=t,t)}emitHelpers(){let e="";this.helperNames.optionalChainDelete&&this.getHelperName("optionalChain"),this.helperNames.asyncOptionalChainDelete&&this.getHelperName("asyncOptionalChain");for(const[t,n]of Object.entries($e)){const s=this.helperNames[t];let o=n;"optionalChainDelete"===t?o=o.replace("OPTIONAL_CHAIN_NAME",this.helperNames.optionalChain):"asyncOptionalChainDelete"===t?o=o.replace("ASYNC_OPTIONAL_CHAIN_NAME",this.helperNames.asyncOptionalChain):"require"===t&&(null===this.createRequireName&&(this.createRequireName=this.nameManager.claimFreeName("_createRequire")),o=o.replace(/CREATE_REQUIRE_NAME/g,this.createRequireName)),s&&(e+=" ",e+=o.replace(t,s).replace(/\s+/g," ").trim())}return e}}function Ue(e,t,n){(function(e,t){for(const n of e.tokens)if(n.type===p.name&&!n.isType&&X(n)&&t.has(e.identifierNameForToken(n)))return!0;return!1})(e,n)&&function(e,t,n){const s=[];let o=t.length-1;for(let r=e.tokens.length-1;;r--){for(;s.length>0&&s[s.length-1].startTokenIndex===r+1;)s.pop();for(;o>=0&&t[o].endTokenIndex===r+1;)s.push(t[o]),o--;if(r<0)break;const i=e.tokens[r],a=e.identifierNameForToken(i);if(s.length>1&&!i.isType&&i.type===p.name&&n.has(a))if(Y(i))Ve(s[s.length-1],e,a);else if(Q(i)){let t=s.length-1;for(;t>0&&!s[t].isFunctionScope;)t--;if(t<0)throw new Error("Did not find parent function scope.");Ve(s[t],e,a)}}if(s.length>0)throw new Error("Expected empty scope stack after processing file.")}(e,t,n)}function Ve(e,t,n){for(let s=e.startTokenIndex;s<e.endTokenIndex;s++){const e=t.tokens[s];e.type!==p.name&&e.type!==p.jsxName||t.identifierNameForToken(e)!==n||(e.shadowsGlobal=!0)}}class Ke{__init(){this.usedNames=new Set}constructor(e,t){Ke.prototype.__init.call(this),this.usedNames=new Set(function(e,t){const n=[];for(const s of t)s.type===p.name&&n.push(e.slice(s.start,s.end));return n}(e,t))}claimFreeName(e){const t=this.findFreeName(e);return this.usedNames.add(t),t}findFreeName(e){if(!this.usedNames.has(e))return e;let t=2;for(;this.usedNames.has(e+String(t));)t++;return e+String(t)}}var We=n(99361);const ze={Transform:We.union(We.lit("jsx"),We.lit("typescript"),We.lit("flow"),We.lit("imports"),We.lit("react-hot-loader"),We.lit("jest")),SourceMapOptions:We.iface([],{compiledFilename:"string"}),Options:We.iface([],{transforms:We.array("Transform"),disableESTransforms:We.opt("boolean"),jsxRuntime:We.opt(We.union(We.lit("classic"),We.lit("automatic"),We.lit("preserve"))),production:We.opt("boolean"),jsxImportSource:We.opt("string"),jsxPragma:We.opt("string"),jsxFragmentPragma:We.opt("string"),keepUnusedImports:We.opt("boolean"),preserveDynamicImport:We.opt("boolean"),injectCreateRequireForImportRequire:We.opt("boolean"),enableLegacyTypeScriptModuleInterop:We.opt("boolean"),enableLegacyBabel5ModuleInterop:We.opt("boolean"),sourceMapOptions:We.opt("SourceMapOptions"),filePath:We.opt("string")})},{Options:Ge}=(0,We.createCheckers)(ze);function Xe(){te(),un(!1)}function Je(e){te(),et(e)}function Ye(e){$n(),Ze(e)}function Qe(){$n(),b.tokens[b.tokens.length-1].identifierRole=W.ImportDeclaration}function Ze(e){let t;t=0===b.scopeDepth?W.TopLevelDeclaration:e?W.BlockScopedDeclaration:W.FunctionScopedDeclaration,b.tokens[b.tokens.length-1].identifierRole=t}function et(e){switch(b.type){case p._this:{const e=oe(0);return te(),void re(e)}case p._yield:case p.name:return b.type=p.name,void Ye(e);case p.bracketL:return te(),void tt(p.bracketR,e,!0);case p.braceL:return void jn(!0,e);default:M()}}function tt(e,t,n=!1,s=!1,o=0){let r=!0,i=!1;const a=b.tokens.length;for(;!ie(e)&&!b.error;)if(r?r=!1:(B(p.comma),b.tokens[b.tokens.length-1].contextId=o,!i&&b.tokens[a].isType&&(b.tokens[b.tokens.length-1].isType=!0,i=!0)),n&&ce(p.comma));else{if(ie(e))break;if(ce(p.ellipsis)){Je(t),st(),ie(p.comma),B(e);break}nt(s,t)}}function nt(e,t){e&&at([h._public,h._protected,h._private,h._readonly,h._override]),ot(t),st(),ot(t,!0)}function st(){y?function(){const e=oe(0);ie(p.question),ce(p.colon)&&ds();re(e)}():_&&function(){const e=oe(0);ie(p.question),jt(),re(e)}()}function ot(e,t=!1){if(t||et(e),!ie(p.eq))return;const n=b.tokens.length-1;un(),b.tokens[n].rhsEndIndex=b.tokens.length}function rt(){return ce(p.name)}function it(){const e=b.snapshot();te();return!!((ce(p.bracketL)||ce(p.braceL)||ce(p.star)||ce(p.ellipsis)||ce(p.hash)||ce(p.name)||Boolean(b.type&p.IS_KEYWORD)||ce(p.string)||ce(p.num)||ce(p.bigint)||ce(p.decimal))&&!R())||(b.restoreFromSnapshot(e),!1)}function at(e){for(;;){if(null===ct(e))break}}function ct(e){if(!ce(p.name))return null;const t=b.contextualKeyword;if(-1!==e.indexOf(t)&&it()){switch(t){case h._readonly:b.tokens[b.tokens.length-1].type=p._readonly;break;case h._abstract:b.tokens[b.tokens.length-1].type=p._abstract;break;case h._static:b.tokens[b.tokens.length-1].type=p._static;break;case h._public:b.tokens[b.tokens.length-1].type=p._public;break;case h._private:b.tokens[b.tokens.length-1].type=p._private;break;case h._protected:b.tokens[b.tokens.length-1].type=p._protected;break;case h._override:b.tokens[b.tokens.length-1].type=p._override;break;case h._declare:b.tokens[b.tokens.length-1].type=p._declare}return t}return null}function lt(){for($n();ie(p.dot);)$n()}function ut(){B(p._import),B(p.parenL),B(p.string),B(p.parenR),ie(p.dot)&<(),ce(p.lessThan)&&Xt()}function ht(){ie(p._const);const e=ie(p._in),t=S(h._out);ie(p._const),!e&&!t||ce(p.name)?$n():b.tokens[b.tokens.length-1].type=p.name,ie(p._extends)&&Rt(),ie(p.eq)&&Rt()}function pt(){ce(p.lessThan)&&dt()}function dt(){const e=oe(0);for(ce(p.lessThan)||ce(p.typeParameterStart)?te():M();!ie(p.greaterThan)&&!b.error;)ht(),ie(p.comma);re(e)}function ft(e){const t=e===p.arrow;var n;pt(),B(p.parenL),b.scopeDepth++,n=!1,tt(p.parenR,n),b.scopeDepth--,(t||ce(e))&&St(e)}function mt(){ie(p.comma)||P()}function kt(){ft(p.colon),mt()}function gt(){if(!ce(p.bracketL)||!function(){const e=b.snapshot();te();const t=ie(p.name)&&ce(p.colon);return b.restoreFromSnapshot(e),t}())return!1;const e=oe(0);return B(p.bracketL),$n(),Lt(),B(p.bracketR),jt(),mt(),re(e),!0}function xt(e){ie(p.question),e||!ce(p.parenL)&&!ce(p.lessThan)?(jt(),mt()):(ft(p.colon),mt())}function _t(){if(ce(p.parenL)||ce(p.lessThan))return void kt();if(ce(p._new))return te(),void(ce(p.parenL)||ce(p.lessThan)?kt():xt(!1));const e=!!ct([h._readonly]);gt()||((E(h._get)||E(h._set))&&it(),On(-1),xt(e))}function yt(){for(B(p.braceL);!ie(p.braceR)&&!b.error;)_t()}function bt(){const e=b.snapshot(),t=function(){if(te(),ie(p.plus)||ie(p.minus))return E(h._readonly);E(h._readonly)&&te();if(!ce(p.bracketL))return!1;if(te(),!rt())return!1;return te(),ce(p._in)}();return b.restoreFromSnapshot(e),t}function Tt(){B(p.braceL),ce(p.plus)||ce(p.minus)?(te(),j(h._readonly)):S(h._readonly),B(p.bracketL),$n(),B(p._in),Rt(),S(h._as)&&Rt(),B(p.bracketR),ce(p.plus)||ce(p.minus)?(te(),B(p.question)):ie(p.question),ie(p.colon)&&Rt(),P(),B(p.braceR)}function vt(){ie(p.ellipsis)?Rt():(Rt(),ie(p.question)),ie(p.colon)&&Rt()}var It;function Ct(e){e===It.TSAbstractConstructorType&&j(h._abstract),e!==It.TSConstructorType&&e!==It.TSAbstractConstructorType||B(p._new);const t=b.inDisallowConditionalTypesContext;b.inDisallowConditionalTypesContext=!1,ft(p.arrow),b.inDisallowConditionalTypesContext=t}function wt(){switch(b.type){case p.name:return lt(),void(!R()&&ce(p.lessThan)&&Xt());case p._void:case p._null:return void te();case p.string:case p.num:case p.bigint:case p.decimal:case p._true:case p._false:return void Cn();case p.minus:return te(),void Cn();case p._this:return te(),void(E(h._is)&&!R()&&(te(),Lt()));case p._typeof:return B(p._typeof),ce(p._import)?ut():lt(),void(!R()&&ce(p.lessThan)&&Xt());case p._import:return void ut();case p.braceL:return void(bt()?Tt():yt());case p.bracketL:return void function(){for(B(p.bracketL);!ie(p.bracketR)&&!b.error;)vt(),ie(p.comma)}();case p.parenL:return B(p.parenL),Rt(),void B(p.parenR);case p.backQuote:return void function(){for(ne(),ne();!ce(p.backQuote)&&!b.error;)B(p.dollarBraceL),Rt(),ne(),ne();te()}();default:if(b.type&p.IS_KEYWORD)return te(),void(b.tokens[b.tokens.length-1].type=p.name)}M()}function At(){if(E(h._keyof)||E(h._unique)||E(h._readonly))te(),At();else if(E(h._infer))!function(){if(j(h._infer),$n(),ce(p._extends)){const e=b.snapshot();B(p._extends);const t=b.inDisallowConditionalTypesContext;b.inDisallowConditionalTypesContext=!0,Rt(),b.inDisallowConditionalTypesContext=t,(b.error||!b.inDisallowConditionalTypesContext&&ce(p.question))&&b.restoreFromSnapshot(e)}}();else{const e=b.inDisallowConditionalTypesContext;b.inDisallowConditionalTypesContext=!1,function(){for(wt();!R()&&ie(p.bracketL);)ie(p.bracketR)||(Rt(),B(p.bracketR))}(),b.inDisallowConditionalTypesContext=e}}function Et(){if(ie(p.bitwiseAND),At(),ce(p.bitwiseAND))for(;ie(p.bitwiseAND);)At()}function Nt(){return!!ce(p.lessThan)||ce(p.parenL)&&function(){const e=b.snapshot(),t=function(){if(te(),ce(p.parenR)||ce(p.ellipsis))return!0;if(function(){if(ce(p.name)||ce(p._this))return te(),!0;if(ce(p.braceL)||ce(p.bracketL)){let e=1;for(te();e>0&&!b.error;)ce(p.braceL)||ce(p.bracketL)?e++:(ce(p.braceR)||ce(p.bracketR))&&e--,te();return!0}return!1}()){if(ce(p.colon)||ce(p.comma)||ce(p.question)||ce(p.eq))return!0;if(ce(p.parenR)&&(te(),ce(p.arrow)))return!0}return!1}();return b.restoreFromSnapshot(e),t}()}function St(e){const t=oe(0);B(e);(function(){const e=b.snapshot();if(E(h._asserts))return te(),S(h._is)?(Rt(),!0):rt()||ce(p._this)?(te(),S(h._is)&&Rt(),!0):(b.restoreFromSnapshot(e),!1);if(rt()||ce(p._this))return te(),E(h._is)&&!R()?(te(),Rt(),!0):(b.restoreFromSnapshot(e),!1);return!1})()||Rt(),re(t)}function jt(){ce(p.colon)&&Lt()}function Lt(){const e=oe(0);B(p.colon),Rt(),re(e)}function Rt(){if(Ot(),b.inDisallowConditionalTypesContext||R()||!ie(p._extends))return;const e=b.inDisallowConditionalTypesContext;b.inDisallowConditionalTypesContext=!0,Ot(),b.inDisallowConditionalTypesContext=e,B(p.question),Rt(),B(p.colon),Rt()}function Ot(){Nt()?Ct(It.TSFunctionType):ce(p._new)?Ct(It.TSConstructorType):E(h._abstract)&&le()===p._new?Ct(It.TSAbstractConstructorType):function(){if(ie(p.bitwiseOR),Et(),ce(p.bitwiseOR))for(;ie(p.bitwiseOR);)Et()}()}function Dt(){for(;!ce(p.braceL)&&!b.error;)Pt(),ie(p.comma)}function Pt(){lt(),ce(p.lessThan)&&Xt()}function Bt(){if(ce(p.string)?Cn():$n(),ie(p.eq)){const e=b.tokens.length-1;un(),b.tokens[e].rhsEndIndex=b.tokens.length}}function Mt(){for(Ye(!1),B(p.braceL);!ie(p.braceR)&&!b.error;)Bt(),ie(p.comma)}function qt(){B(p.braceL),ws(p.braceR)}function Ft(){Ye(!1),ie(p.dot)?Ft():qt()}function $t(){E(h._global)?$n():ce(p.string)?vn():M(),ce(p.braceL)?qt():P()}function Ht(){Qe(),B(p.eq),E(h._require)&&le()===p.parenL?(j(h._require),B(p.parenL),ce(p.string)||M(),Cn(),B(p.parenR)):lt(),P()}function Ut(){return Kt(b.contextualKeyword,!0)}function Vt(e){switch(e){case h._declare:{const e=b.tokens.length-1,t=function(){if(D())return!1;switch(b.type){case p._function:{const e=oe(1);return te(),js(b.start,!0),re(e),!0}case p._class:{const e=oe(1);return Rs(!0,!1),re(e),!0}case p._const:if(ce(p._const)&&N(h._enum)){const e=oe(1);return B(p._const),j(h._enum),b.tokens[b.tokens.length-1].type=p._enum,Mt(),re(e),!0}case p._var:case p._let:{const e=oe(1);return Is(b.type!==p._var),re(e),!0}case p.name:{const e=oe(1),t=b.contextualKeyword;let n=!1;return t===h._global?($t(),n=!0):n=Kt(t,!0),re(e),n}default:return!1}}();if(t)return b.tokens[e].type=p._declare,!0;break}case h._global:if(ce(p.braceL))return qt(),!0;break;default:return Kt(e,!1)}return!1}function Kt(e,t){switch(e){case h._abstract:if(Wt(t)&&ce(p._class))return b.tokens[b.tokens.length-1].type=p._abstract,Rs(!0,!1),!0;break;case h._enum:if(Wt(t)&&ce(p.name))return b.tokens[b.tokens.length-1].type=p._enum,Mt(),!0;break;case h._interface:if(Wt(t)&&ce(p.name)){const e=oe(t?2:1);return Ye(!1),pt(),ie(p._extends)&&Dt(),yt(),re(e),!0}break;case h._module:if(Wt(t)){if(ce(p.string)){const e=oe(t?2:1);return $t(),re(e),!0}if(ce(p.name)){const e=oe(t?2:1);return Ft(),re(e),!0}}break;case h._namespace:if(Wt(t)&&ce(p.name)){const e=oe(t?2:1);return Ft(),re(e),!0}break;case h._type:if(Wt(t)&&ce(p.name)){const e=oe(t?2:1);return Ye(!1),pt(),B(p.eq),Rt(),P(),re(e),!0}}return!1}function Wt(e){return e?(te(),!0):!D()}function zt(){const e=b.snapshot();return dt(),Ls(),ce(p.colon)&&St(p.colon),B(p.arrow),b.error?(b.restoreFromSnapshot(e),!1):(Mn(!0),!0)}function Gt(){b.type===p.bitShiftL&&(b.pos-=1,_e(p.lessThan)),Xt()}function Xt(){const e=oe(0);for(B(p.lessThan);!ce(p.greaterThan)&&!b.error;)Rt(),ie(p.comma);e?(B(p.greaterThan),re(e)):(re(e),be(),B(p.greaterThan),b.tokens[b.tokens.length-1].isType=!0)}function Jt(){if(ce(p.name))switch(b.contextualKeyword){case h._abstract:case h._declare:case h._enum:case h._interface:case h._module:case h._namespace:case h._type:return!0}return!1}function Yt(e,t){return x?function(e,t){if(!ce(p.lessThan))return hn(e,t);const n=b.snapshot();let s=hn(e,t);if(!b.error)return s;b.restoreFromSnapshot(n);b.type=p.typeParameterStart,dt(),s=hn(e,t),s||M();return s}(e,t):function(e,t){if(!ce(p.lessThan))return hn(e,t);const n=b.snapshot();dt();const s=hn(e,t);s||M();if(!b.error)return s;b.restoreFromSnapshot(n);return hn(e,t)}(e,t)}function Qt(){rn()}function Zt(e){Qt(),ie(p.colon)?Qt():b.tokens[b.tokens.length-1].identifierRole=e}function en(){const e=b.tokens.length;Zt(W.Access);let t=!1;for(;ce(p.dot);)t=!0,rn(),Qt();if(!t){const t=b.tokens[e],n=T.charCodeAt(t.start);n>=d.lowercaseA&&n<=d.lowercaseZ&&(t.identifierRole=null)}}function tn(){switch(b.type){case p.braceL:return te(),ln(),void rn();case p.jsxTagStart:return on(),void rn();case p.string:return void rn();default:M("JSX value should be either an expression or a quoted JSX text")}}function nn(e){if(ce(p.jsxTagEnd))return!1;en(),_&&function(){if(ie(p.jsxTagStart)){b.tokens[b.tokens.length-1].type=p.typeParameterStart;const e=oe(1);for(;!ce(p.greaterThan)&&!b.error;)Rt(),ie(p.comma);rn(),re(e)}}();let t=!1;for(;!ce(p.slash)&&!ce(p.jsxTagEnd)&&!b.error;)ie(p.braceL)?(t=!0,B(p.ellipsis),un(),rn()):(t&&b.end-b.start==3&&T.charCodeAt(b.start)===d.lowercaseK&&T.charCodeAt(b.start+1)===d.lowercaseE&&T.charCodeAt(b.start+2)===d.lowercaseY&&(b.tokens[e].jsxRole=z.KeyAfterPropSpread),Zt(W.ObjectKey),ce(p.eq)&&(rn(),tn()));const n=ce(p.slash);return n&&rn(),n}function sn(){const e=b.tokens.length-1;b.tokens[e].jsxRole=z.NoChildren;let t=0;if(!nn(e))for(an();;)switch(b.type){case p.jsxTagStart:if(rn(),ce(p.slash))return rn(),ce(p.jsxTagEnd)||en(),void(b.tokens[e].jsxRole!==z.KeyAfterPropSpread&&(1===t?b.tokens[e].jsxRole=z.OneChild:t>1&&(b.tokens[e].jsxRole=z.StaticChildren)));t++,sn(),an();break;case p.jsxText:t++,an();break;case p.jsxEmptyText:an();break;case p.braceL:te(),ce(p.ellipsis)?(B(p.ellipsis),ln(),an(),t+=2):(ce(p.braceR)||(t++,ln()),an());break;default:return void M()}}function on(){rn(),sn()}function rn(){b.tokens.push(new ee),xe(),b.start=b.pos;const e=T.charCodeAt(b.pos);if(V[e])!function(){let e;do{if(b.pos>T.length)return void M("Unexpectedly reached the end of input.");e=T.charCodeAt(++b.pos)}while(U[e]||e===d.dash);_e(p.jsxName)}();else if(e===d.quotationMark||e===d.apostrophe)!function(e){for(b.pos++;;){if(b.pos>=T.length)return void M("Unterminated string constant");if(T.charCodeAt(b.pos)===e){b.pos++;break}b.pos++}_e(p.string)}(e);else switch(++b.pos,e){case d.greaterThan:_e(p.jsxTagEnd);break;case d.lessThan:_e(p.jsxTagStart);break;case d.slash:_e(p.slash);break;case d.equalsTo:_e(p.eq);break;case d.leftCurlyBrace:_e(p.braceL);break;case d.dot:_e(p.dot);break;case d.colon:_e(p.colon);break;default:M()}}function an(){b.tokens.push(new ee),b.start=b.pos,function(){let e=!1,t=!1;for(;;){if(b.pos>=T.length)return void M("Unterminated JSX contents");const n=T.charCodeAt(b.pos);if(n===d.lessThan||n===d.leftCurlyBrace)return b.pos===b.start?n===d.lessThan?(b.pos++,void _e(p.jsxTagStart)):void Te(n):void _e(e&&!t?p.jsxEmptyText:p.jsxText);n===d.lineFeed?e=!0:n!==d.space&&n!==d.carriageReturn&&n!==d.tab&&(t=!0),b.pos++}}()}!function(e){e[e.TSFunctionType=0]="TSFunctionType";e[e.TSConstructorType=1]="TSConstructorType";e[e.TSAbstractConstructorType=2]="TSAbstractConstructorType"}(It||(It={}));class cn{constructor(e){this.stop=e}}function ln(e=!1){if(un(e),ce(p.comma))for(;ie(p.comma);)un(e)}function un(e=!1,t=!1){return _?Yt(e,t):y?function(e,t){if(ce(p.lessThan)){const n=b.snapshot();let s=hn(e,t);if(!b.error)return s;b.restoreFromSnapshot(n),b.type=p.typeParameterStart;const o=oe(0);if(Qn(),re(o),s=hn(e,t),s)return!0;M()}return hn(e,t)}(e,t):hn(e,t)}function hn(e,t){if(ce(p._yield))return te(),ce(p.semi)||L()||(ie(p.star),un()),!1;(ce(p.parenL)||ce(p.name)||ce(p._yield))&&(b.potentialArrowAt=b.start);const n=function(e){const t=function(e){const t=b.tokens.length,n=fn();if(n)return!0;return dn(t,-1,e),!1}(e);if(t)return!0;return function(e){_||y?function(e){if(ce(p.question)){const e=le();if(e===p.colon||e===p.comma||e===p.parenR)return}pn(e)}(e):pn(e)}(e),!1}(e);return t&&Nn(),b.type&p.IS_ASSIGN?(te(),un(e),!1):n}function pn(e){ie(p.question)&&(un(),B(p.colon),un(e))}function dn(e,t,n){if(_&&(p._in&p.PRECEDENCE_MASK)>t&&!R()&&(S(h._as)||S(h._satisfies))){const s=oe(1);return Rt(),re(s),be(),void dn(e,t,n)}const s=b.type&p.PRECEDENCE_MASK;if(s>0&&(!n||!ce(p._in))&&s>t){const o=b.type;te(),o===p.nullishCoalescing&&(b.tokens[b.tokens.length-1].nullishStartIndex=e);const r=b.tokens.length;fn(),dn(r,o&p.IS_RIGHT_ASSOCIATIVE?s-1:s,n),o===p.nullishCoalescing&&(b.tokens[e].numNullishCoalesceStarts++,b.tokens[b.tokens.length-1].numNullishCoalesceEnds++),dn(e,t,n)}}function fn(){if(_&&!x&&ie(p.lessThan))return function(){const e=oe(1);Rt(),B(p.greaterThan),re(e),fn()}(),!1;if(E(h._module)&&fe()===d.leftCurlyBrace&&!O())return j(h._module),B(p.braceL),ws(p.braceR),!1;if(b.type&p.IS_PREFIX)return te(),fn(),!1;if(mn())return!0;for(;b.type&p.IS_POSTFIX&&!L();)b.type===p.preIncDec&&(b.type=p.postIncDec),te();return!1}function mn(){const e=b.tokens.length;return!!vn()||(kn(e),b.tokens.length>e&&b.tokens[e].isOptionalChainStart&&(b.tokens[b.tokens.length-1].isOptionalChainEnd=!0),!1)}function kn(e,t=!1){y?function(e,t=!1){if(b.tokens[b.tokens.length-1].contextualKeyword===h._async&&ce(p.lessThan)){const e=b.snapshot(),t=function(){b.scopeDepth++;const e=b.tokens.length;if(Ls(),!En())return!1;return Pn(e),!0}();if(t&&!b.error)return;b.restoreFromSnapshot(e)}gn(e,t)}(e,t):gn(e,t)}function gn(e,t=!1){const n=new cn(!1);do{xn(e,t,n)}while(!n.stop&&!b.error)}function xn(e,t,n){_?function(e,t,n){if(R()||!ie(p.bang)){if(ce(p.lessThan)||ce(p.bitShiftL)){const n=b.snapshot();if(!t&&yn()&&zt())return;if(Gt(),!t&&ie(p.parenL)?(b.tokens[b.tokens.length-1].subscriptStartIndex=e,bn()):ce(p.backQuote)?Sn():(b.type===p.greaterThan||b.type!==p.parenL&&Boolean(b.type&p.IS_EXPRESSION_START)&&!R())&&M(),!b.error)return;b.restoreFromSnapshot(n)}else!t&&ce(p.questionDot)&&le()===p.lessThan&&(te(),b.tokens[e].isOptionalChainStart=!0,b.tokens[b.tokens.length-1].subscriptStartIndex=e,Xt(),B(p.parenL),bn());_n(e,t,n)}else b.tokens[b.tokens.length-1].type=p.nonNullAssertion}(e,t,n):y?function(e,t,n){if(ce(p.questionDot)&&le()===p.lessThan)return t?void(n.stop=!0):(te(),Zn(),B(p.parenL),void bn());if(!t&&ce(p.lessThan)){const e=b.snapshot();if(Zn(),B(p.parenL),bn(),!b.error)return;b.restoreFromSnapshot(e)}_n(e,t,n)}(e,t,n):_n(e,t,n)}function _n(e,t,n){if(!t&&ie(p.doubleColon))Tn(),n.stop=!0,kn(e,t);else if(ce(p.questionDot)){if(b.tokens[e].isOptionalChainStart=!0,t&&le()===p.parenL)return void(n.stop=!0);te(),b.tokens[b.tokens.length-1].subscriptStartIndex=e,ie(p.bracketL)?(ln(),B(p.bracketR)):ie(p.parenL)?bn():In()}else if(ie(p.dot))b.tokens[b.tokens.length-1].subscriptStartIndex=e,In();else if(ie(p.bracketL))b.tokens[b.tokens.length-1].subscriptStartIndex=e,ln(),B(p.bracketR);else if(!t&&ce(p.parenL))if(yn()){const t=b.snapshot(),s=b.tokens.length;te(),b.tokens[b.tokens.length-1].subscriptStartIndex=e;const o=I();b.tokens[b.tokens.length-1].contextId=o,bn(),b.tokens[b.tokens.length-1].contextId=o,(ce(p.colon)||ce(p.arrow))&&(b.restoreFromSnapshot(t),n.stop=!0,b.scopeDepth++,Ls(),function(e){_?ce(p.colon)&&Lt():y&&function(){if(ce(p.colon)){const e=b.noAnonFunctionType;b.noAnonFunctionType=!0,ds(),b.noAnonFunctionType=e}}();B(p.arrow),Pn(e)}(s))}else{te(),b.tokens[b.tokens.length-1].subscriptStartIndex=e;const t=I();b.tokens[b.tokens.length-1].contextId=t,bn(),b.tokens[b.tokens.length-1].contextId=t}else ce(p.backQuote)?Sn():n.stop=!0}function yn(){return b.tokens[b.tokens.length-1].contextualKeyword===h._async&&!L()}function bn(){let e=!0;for(;!ie(p.parenR)&&!b.error;){if(e)e=!1;else if(B(p.comma),ie(p.parenR))break;Fn(!1)}}function Tn(){const e=b.tokens.length;vn(),kn(e,!0)}function vn(){if(ie(p.modulo))return $n(),!1;if(ce(p.jsxText)||ce(p.jsxEmptyText))return Cn(),!1;if(ce(p.lessThan)&&x)return b.type=p.jsxTagStart,on(),te(),!1;const e=b.potentialArrowAt===b.start;switch(b.type){case p.slash:case p.assign:se();case p._super:case p._this:case p.regexp:case p.num:case p.bigint:case p.decimal:case p.string:case p._null:case p._true:case p._false:return te(),!1;case p._import:return te(),ce(p.dot)&&(b.tokens[b.tokens.length-1].type=p.name,te(),$n()),!1;case p.name:{const t=b.tokens.length,n=b.start,s=b.contextualKeyword;return $n(),s===h._await?(fn(),!1):s===h._async&&ce(p._function)&&!L()?(te(),js(n,!1),!1):e&&s===h._async&&!L()&&ce(p.name)?(b.scopeDepth++,Ye(!1),B(p.arrow),Pn(t),!0):ce(p._do)&&!L()?(te(),Cs(),!1):e&&!L()&&ce(p.arrow)?(b.scopeDepth++,Ze(!1),B(p.arrow),Pn(t),!0):(b.tokens[b.tokens.length-1].identifierRole=W.Access,!1)}case p._do:return te(),Cs(),!1;case p.parenL:return An(e);case p.bracketL:return te(),qn(p.bracketR,!0),!1;case p.braceL:return jn(!1,!1),!1;case p._function:return function(){const e=b.start;$n(),ie(p.dot)&&$n();js(e,!1)}(),!1;case p.at:bs();case p._class:return Rs(!1),!1;case p._new:return function(){if(B(p._new),ie(p.dot))return void $n();Tn(),void ie(p.questionDot),y&&function(){if(ce(p.lessThan)){const e=b.snapshot();Zn(),b.error&&b.restoreFromSnapshot(e)}}();ie(p.parenL)&&qn(p.parenR)}(),!1;case p.backQuote:return Sn(),!1;case p.doubleColon:return te(),Tn(),!1;case p.hash:{const e=fe();return V[e]||e===d.backslash?In():te(),!1}default:return M(),!1}}function In(){ie(p.hash),$n()}function Cn(){te()}function wn(){B(p.parenL),ln(),B(p.parenR)}function An(e){const t=b.snapshot(),n=b.tokens.length;B(p.parenL);let s=!0;for(;!ce(p.parenR)&&!b.error;){if(s)s=!1;else if(B(p.comma),ce(p.parenR))break;if(ce(p.ellipsis)){Je(!1),Nn();break}un(!1,!0)}if(B(p.parenR),e&&(ce(p.colon)||!L())){if(En())return b.restoreFromSnapshot(t),b.scopeDepth++,Ls(),En(),Pn(n),!b.error||(b.restoreFromSnapshot(t),An(!1),!1)}return!1}function En(){return _?function(){if(ce(p.colon)){const e=b.snapshot();St(p.colon),L()&&M(),ce(p.arrow)||M(),b.error&&b.restoreFromSnapshot(e)}return ie(p.arrow)}():y?function(){if(ce(p.colon)){const e=oe(0),t=b.snapshot(),n=b.noAnonFunctionType;b.noAnonFunctionType=!0,Vn(),b.noAnonFunctionType=n,L()&&M(),ce(p.arrow)||M(),b.error&&b.restoreFromSnapshot(t),re(e)}return ie(p.arrow)}():ie(p.arrow)}function Nn(){(_||y)&&(ae(p.question),ce(p.colon)&&(_?Lt():y&&ds()))}function Sn(){for(ne(),ne();!ce(p.backQuote)&&!b.error;)B(p.dollarBraceL),ln(),ne(),ne();te()}function jn(e,t){const n=I();let s=!0;for(te(),b.tokens[b.tokens.length-1].contextId=n;!ie(p.braceR)&&!b.error;){if(s)s=!1;else if(B(p.comma),ie(p.braceR))break;let o=!1;if(ce(p.ellipsis)){const n=b.tokens.length;if(Xe(),e&&(b.tokens.length===n+2&&Ze(t),ie(p.braceR)))break}else e||(o=ie(p.star)),!e&&E(h._async)?(o&&M(),$n(),ce(p.colon)||ce(p.parenL)||ce(p.braceR)||ce(p.eq)||ce(p.comma)||(ce(p.star)&&(te(),o=!0),On(n))):On(n),Rn(e,t,n)}b.tokens[b.tokens.length-1].contextId=n}function Ln(e,t){const n=b.start;return ce(p.parenL)?(e&&M(),Dn(n,!1),!0):!!function(e){return!e&&(ce(p.string)||ce(p.num)||ce(p.bracketL)||ce(p.name)||!!(b.type&p.IS_KEYWORD))}(e)&&(On(t),Dn(n,!1),!0)}function Rn(e,t,n){_?pt():y&&ce(p.lessThan)&&(Qn(),ce(p.parenL)||M());Ln(e,n)||function(e,t){if(ie(p.colon))return void(e?ot(t):un(!1));let n;n=e?0===b.scopeDepth?W.ObjectShorthandTopLevelDeclaration:t?W.ObjectShorthandBlockScopedDeclaration:W.ObjectShorthandFunctionScopedDeclaration:W.ObjectShorthand,b.tokens[b.tokens.length-1].identifierRole=n,ot(t,!0)}(e,t)}function On(e){y&&ms(),ie(p.bracketL)?(b.tokens[b.tokens.length-1].contextId=e,un(),B(p.bracketR),b.tokens[b.tokens.length-1].contextId=e):(ce(p.num)||ce(p.string)||ce(p.bigint)||ce(p.decimal)?vn():In(),b.tokens[b.tokens.length-1].identifierRole=W.ObjectKey,b.tokens[b.tokens.length-1].contextId=e)}function Dn(e,t){const n=I();b.scopeDepth++;const s=b.tokens.length;Ls(t,n),Bn(e,n);const o=b.tokens.length;b.scopes.push(new m(s,o,!0)),b.scopeDepth--}function Pn(e){Mn(!0);const t=b.tokens.length;b.scopes.push(new m(e,t,!0)),b.scopeDepth--}function Bn(e,t=0){_?function(e,t){if(ce(p.colon)&&St(p.colon),ce(p.braceL)||!D())Mn(!1,t);else{let t=b.tokens.length-1;for(;t>=0&&(b.tokens[t].start>=e||b.tokens[t].type===p._default||b.tokens[t].type===p._export);)b.tokens[t].isType=!0,t--}}(e,t):y?function(e){ce(p.colon)&&Vn();Mn(!1,e)}(t):Mn(!1,t)}function Mn(e,t=0){e&&!ce(p.braceL)?un():Cs(!0,t)}function qn(e,t=!1){let n=!0;for(;!ie(e)&&!b.error;){if(n)n=!1;else if(B(p.comma),ie(e))break;Fn(t)}}function Fn(e){e&&ce(p.comma)||(ce(p.ellipsis)?(Xe(),Nn()):ce(p.question)?te():un(!1,!0))}function $n(){te(),b.tokens[b.tokens.length-1].type=p.name}function Hn(e){const t=oe(0);B(e||p.colon),ps(),re(t)}function Un(){B(p.modulo),j(h._checks),ie(p.parenL)&&(ln(),B(p.parenR))}function Vn(){const e=oe(0);B(p.colon),ce(p.modulo)?Un():(ps(),ce(p.modulo)&&Un()),re(e)}function Kn(){ce(p._class)?(te(),Wn(!0)):ce(p._function)?(te(),$n(),ce(p.lessThan)&&Qn(),B(p.parenL),as(),B(p.parenR),Vn(),P()):ce(p._var)?(te(),fs(),P()):S(h._module)?ie(p.dot)?(j(h._exports),ds(),P()):function(){ce(p.string)?vn():$n();B(p.braceL);for(;!ce(p.braceR)&&!b.error;)ce(p._import)?(te(),Gs()):M();B(p.braceR)}():E(h._type)?(te(),Jn()):E(h._opaque)?(te(),Yn(!0)):E(h._interface)?(te(),Wn()):ce(p._export)?(B(p._export),ie(p._default)?ce(p._function)||ce(p._class)?Kn():(ps(),P()):ce(p._var)||ce(p._function)||ce(p._class)||E(h._opaque)?Kn():ce(p.star)||ce(p.braceL)||E(h._interface)||E(h._type)||E(h._opaque)?$s():M()):M()}function Wn(e=!1){if(Xn(),ce(p.lessThan)&&Qn(),ie(p._extends))do{zn()}while(!e&&ie(p.comma));if(E(h._mixins)){te();do{zn()}while(ie(p.comma))}if(E(h._implements)){te();do{zn()}while(ie(p.comma))}ns(e,!1,e)}function zn(){rs(!1),ce(p.lessThan)&&Zn()}function Gn(){Wn()}function Xn(){$n()}function Jn(){Xn(),ce(p.lessThan)&&Qn(),Hn(p.eq),P()}function Yn(e){j(h._type),Xn(),ce(p.lessThan)&&Qn(),ce(p.colon)&&Hn(p.colon),e||Hn(p.eq),P()}function Qn(){const e=oe(0);ce(p.lessThan)||ce(p.typeParameterStart)?te():M();do{ms(),fs(),ie(p.eq)&&ps(),ce(p.greaterThan)||B(p.comma)}while(!ce(p.greaterThan)&&!b.error);B(p.greaterThan),re(e)}function Zn(){const e=oe(0);for(B(p.lessThan);!ce(p.greaterThan)&&!b.error;)ps(),ce(p.greaterThan)||B(p.comma);B(p.greaterThan),re(e)}function es(){ce(p.num)||ce(p.string)?vn():$n()}function ts(){for(ce(p.lessThan)&&Qn(),B(p.parenL);!ce(p.parenR)&&!ce(p.ellipsis)&&!b.error;)is(),ce(p.parenR)||B(p.comma);ie(p.ellipsis)&&is(),B(p.parenR),Hn()}function ns(e,t,n){let s;for(t&&ce(p.braceBarL)?(B(p.braceBarL),s=p.braceBarR):(B(p.braceL),s=p.braceR);!ce(s)&&!b.error;){if(n&&E(h._proto)){const t=le();t!==p.colon&&t!==p.question&&(te(),e=!1)}if(e&&E(h._static)){const e=le();e!==p.colon&&e!==p.question&&te()}if(ms(),ie(p.bracketL))ie(p.bracketL)?(es(),B(p.bracketR),B(p.bracketR),ce(p.lessThan)||ce(p.parenL)?ts():(ie(p.question),Hn())):(le()===p.colon?(es(),Hn()):ps(),B(p.bracketR),Hn());else if(ce(p.parenL)||ce(p.lessThan))ts();else{if(E(h._get)||E(h._set)){const e=le();e!==p.name&&e!==p.string&&e!==p.num||te()}ss()}os()}B(s)}function ss(){if(ce(p.ellipsis)){if(B(p.ellipsis),ie(p.comma)||ie(p.semi),ce(p.braceR))return;ps()}else es(),ce(p.lessThan)||ce(p.parenL)?ts():(ie(p.question),Hn())}function os(){ie(p.semi)||ie(p.comma)||ce(p.braceR)||ce(p.braceBarR)||M()}function rs(e){for(e||$n();ie(p.dot);)$n()}function is(){const e=le();e===p.colon||e===p.question?($n(),ie(p.question),Hn()):ps()}function as(){for(;!ce(p.parenR)&&!ce(p.ellipsis)&&!b.error;)is(),ce(p.parenR)||B(p.comma);ie(p.ellipsis)&&is()}function cs(){let e=!1;const t=b.noAnonFunctionType;switch(b.type){case p.name:return E(h._interface)?void function(){if(j(h._interface),ie(p._extends))do{zn()}while(ie(p.comma));ns(!1,!1,!1)}():($n(),rs(!0),void(ce(p.lessThan)&&Zn()));case p.braceL:return void ns(!1,!1,!1);case p.braceBarL:return void ns(!1,!0,!1);case p.bracketL:return void function(){for(B(p.bracketL);b.pos<T.length&&!ce(p.bracketR)&&(ps(),!ce(p.bracketR));)B(p.comma);B(p.bracketR)}();case p.lessThan:return Qn(),B(p.parenL),as(),B(p.parenR),B(p.arrow),void ps();case p.parenL:if(te(),!ce(p.parenR)&&!ce(p.ellipsis))if(ce(p.name)){const t=le();e=t!==p.question&&t!==p.colon}else e=!0;if(e){if(b.noAnonFunctionType=!1,ps(),b.noAnonFunctionType=t,b.noAnonFunctionType||!(ce(p.comma)||ce(p.parenR)&&le()===p.arrow))return void B(p.parenR);ie(p.comma)}return as(),B(p.parenR),B(p.arrow),void ps();case p.minus:return te(),void Cn();case p.string:case p.num:case p._true:case p._false:case p._null:case p._this:case p._void:case p.star:return void te();default:if(b.type===p._typeof)return B(p._typeof),void cs();if(b.type&p.IS_KEYWORD)return te(),void(b.tokens[b.tokens.length-1].type=p.name)}M()}function ls(){ie(p.question)?ls():function(){for(cs();!L()&&(ce(p.bracketL)||ce(p.questionDot));)ie(p.questionDot),B(p.bracketL),ie(p.bracketR)||(ps(),B(p.bracketR))}()}function us(){ls(),!b.noAnonFunctionType&&ie(p.arrow)&&ps()}function hs(){for(ie(p.bitwiseAND),us();ie(p.bitwiseAND);)us()}function ps(){!function(){for(ie(p.bitwiseOR),hs();ie(p.bitwiseOR);)hs()}()}function ds(){Hn()}function fs(){$n(),ce(p.colon)&&ds()}function ms(){(ce(p.plus)||ce(p.minus))&&(te(),b.tokens[b.tokens.length-1].isType=!0)}function ks(){if(ce(p._typeof)||E(h._type)){const t=he();(((e=t).type===p.name||e.type&p.IS_KEYWORD)&&e.contextualKeyword!==h._from||t.type===p.braceL||t.type===p.star)&&te()}var e}function gs(){j(h._enum),b.tokens[b.tokens.length-1].type=p._enum,$n(),function(){S(h._of)&&te();B(p.braceL),function(){for(;!ce(p.braceR)&&!b.error&&!ie(p.ellipsis);)xs(),ce(p.braceR)||B(p.comma)}(),B(p.braceR)}()}function xs(){$n(),ie(p.eq)&&te()}function _s(e){y&&function(){if(ce(p.name)&&b.contextualKeyword===h._interface){const e=oe(0);return te(),Gn(),re(e),!0}return!!E(h._enum)&&(gs(),!0)}()||(ce(p.at)&&bs(),function(e){if(_&&function(){if(b.type===p._const){const e=he();if(e.type===p.name&&e.contextualKeyword===h._enum)return B(p._const),j(h._enum),b.tokens[b.tokens.length-1].type=p._enum,Mt(),!0}return!1}())return;const t=b.type;switch(t){case p._break:case p._continue:return te(),void(D()||($n(),P()));case p._debugger:return te(),void P();case p._do:return te(),_s(!1),B(p._while),wn(),void ie(p.semi);case p._for:return void function(){b.scopeDepth++;const e=b.tokens.length;!function(){te();let e=!1;E(h._await)&&(e=!0,te());if(B(p.parenL),ce(p.semi))return e&&M(),void As();const t=ys();if(t||ce(p._var)||ce(p._let)||ce(p._const)||function(){if(!E(h._using))return!1;if(N(h._of))return!1;return!0}())return t&&j(h._await),te(),Ns(!0,b.type!==p._var),ce(p._in)||E(h._of)?void Es(e):void As();if(ln(!0),ce(p._in)||E(h._of))return void Es(e);e&&M();As()}();const t=b.tokens.length;b.scopes.push(new m(e,t,!1)),b.scopeDepth--}();case p._function:if(le()===p.dot)break;return e||M(),void function(){const e=b.start;te(),js(e,!0)}();case p._class:return e||M(),void Rs(!0);case p._if:return te(),wn(),_s(!1),void(ie(p._else)&&_s(!1));case p._return:return te(),void(D()||(ln(),P()));case p._switch:return void function(){te(),wn(),b.scopeDepth++;const e=b.tokens.length;B(p.braceL);for(;!ce(p.braceR)&&!b.error;)if(ce(p._case)||ce(p._default)){const e=ce(p._case);te(),e&&ln(),B(p.colon)}else _s(!0);te();const t=b.tokens.length;b.scopes.push(new m(e,t,!1)),b.scopeDepth--}();case p._throw:return te(),ln(),void P();case p._try:return void function(){if(te(),Cs(),ce(p._catch)){te();let e=null;if(ce(p.parenL)&&(b.scopeDepth++,e=b.tokens.length,B(p.parenL),et(!0),_&&jt(),B(p.parenR)),Cs(),null!=e){const t=b.tokens.length;b.scopes.push(new m(e,t,!1)),b.scopeDepth--}}ie(p._finally)&&Cs()}();case p._let:case p._const:e||M();case p._var:return void Is(t!==p._var);case p._while:return te(),wn(),void _s(!1);case p.braceL:return void Cs();case p.semi:return void te();case p._export:case p._import:{const e=le();if(e===p.parenL||e===p.dot)break;return te(),void(t===p._import?Gs():$s())}case p.name:if(b.contextualKeyword===h._async){const e=b.start,t=b.snapshot();if(te(),ce(p._function)&&!L())return B(p._function),void js(e,!0);b.restoreFromSnapshot(t)}else{if(b.contextualKeyword===h._using&&!O()&&le()===p.name)return void Is(!0);if(ys())return j(h._await),void Is(!0)}}const n=b.tokens.length;ln();let s=null;if(b.tokens.length===n+1){const e=b.tokens[b.tokens.length-1];e.type===p.name&&(s=e.contextualKeyword)}if(null==s)return void P();ie(p.colon)?_s(!0):(o=s,_?function(e){Vt(e)||P()}(o):y?function(e){if(e===h._declare){if(ce(p._class)||ce(p.name)||ce(p._function)||ce(p._var)||ce(p._export)){const e=oe(1);Kn(),re(e)}}else if(ce(p.name))if(e===h._interface){const e=oe(1);Gn(),re(e)}else if(e===h._type){const e=oe(1);Jn(),re(e)}else if(e===h._opaque){const e=oe(1);Yn(!1),re(e)}P()}(o):P());var o}(e))}function ys(){if(!E(h._await))return!1;const e=b.snapshot();return te(),!E(h._using)||R()?(b.restoreFromSnapshot(e),!1):(te(),!ce(p.name)||R()?(b.restoreFromSnapshot(e),!1):(b.restoreFromSnapshot(e),!0))}function bs(){for(;ce(p.at);)Ts()}function Ts(){if(te(),ie(p.parenL))ln(),B(p.parenR);else{for($n();ie(p.dot);)$n();_?((ce(p.lessThan)||ce(p.bitShiftL))&&Gt(),vs()):vs()}}function vs(){ie(p.parenL)&&bn()}function Is(e){te(),Ns(!1,e),P()}function Cs(e=!1,t=0){const n=b.tokens.length;b.scopeDepth++,B(p.braceL),t&&(b.tokens[b.tokens.length-1].contextId=t),ws(p.braceR),t&&(b.tokens[b.tokens.length-1].contextId=t);const s=b.tokens.length;b.scopes.push(new m(n,s,e)),b.scopeDepth--}function ws(e){for(;!ie(e)&&!b.error;)_s(!0)}function As(){B(p.semi),ce(p.semi)||ln(),B(p.semi),ce(p.parenR)||ln(),B(p.parenR),_s(!1)}function Es(e){e?S(h._of):te(),ln(),B(p.parenR),_s(!1)}function Ns(e,t){for(;;){if(Ss(t),ie(p.eq)){const t=b.tokens.length-1;un(e),b.tokens[t].rhsEndIndex=b.tokens.length}if(!ie(p.comma))break}}function Ss(e){et(e),_?function(){const e=oe(0);R()||ie(p.bang),jt(),re(e)}():y&&ce(p.colon)&&ds()}function js(e,t,n=!1){ce(p.star)&&te(),!t||n||ce(p.name)||ce(p._yield)||M();let s=null;ce(p.name)&&(t||(s=b.tokens.length,b.scopeDepth++),Ye(!1));const o=b.tokens.length;b.scopeDepth++,Ls(),Bn(e);const r=b.tokens.length;b.scopes.push(new m(o,r,!0)),b.scopeDepth--,null!==s&&(b.scopes.push(new m(s,r,!0)),b.scopeDepth--)}function Ls(e=!1,t=0){_?pt():y&&function(){if(ce(p.lessThan)){const e=oe(0);Qn(),re(e)}}(),B(p.parenL),t&&(b.tokens[b.tokens.length-1].contextId=t),tt(p.parenR,!1,!1,e,t),t&&(b.tokens[b.tokens.length-1].contextId=t)}function Rs(e,t=!1){const n=I();te(),b.tokens[b.tokens.length-1].contextId=n,b.tokens[b.tokens.length-1].isExpression=!e;let s=null;e||(s=b.tokens.length,b.scopeDepth++),function(e,t=!1){if(_&&(!e||t)&&E(h._implements))return;ce(p.name)&&Ye(!0);_?pt():y&&ce(p.lessThan)&&Qn()}(e,t),function(){let e=!1;ie(p._extends)?(mn(),e=!0):e=!1;_?function(e){if(e&&(ce(p.lessThan)||ce(p.bitShiftL))&&Gt(),S(h._implements)){b.tokens[b.tokens.length-1].type=p._implements;const e=oe(1);Dt(),re(e)}}(e):y&&function(e){if(e&&ce(p.lessThan)&&Zn(),E(h._implements)){const e=oe(0);te(),b.tokens[b.tokens.length-1].type=p._implements;do{Xn(),ce(p.lessThan)&&Zn()}while(ie(p.comma));re(e)}}(e)}();const o=b.tokens.length;if(function(e){B(p.braceL);for(;!ie(p.braceR)&&!b.error;){if(ie(p.semi))continue;if(ce(p.at)){Ts();continue}Ps(b.start,e)}}(n),!b.error&&(b.tokens[o].contextId=n,b.tokens[b.tokens.length-1].contextId=n,null!==s)){const e=b.tokens.length;b.scopes.push(new m(s,e,!1)),b.scopeDepth--}}function Os(){return ce(p.eq)||ce(p.semi)||ce(p.braceR)||ce(p.bang)||ce(p.colon)}function Ds(){return ce(p.parenL)||ce(p.lessThan)}function Ps(e,t){_&&at([h._declare,h._public,h._protected,h._private,h._override]);let n=!1;if(ce(p.name)&&b.contextualKeyword===h._static){if($n(),Ds())return void Bs(e,!1);if(Os())return void Fs();if(b.tokens[b.tokens.length-1].type=p._static,n=!0,ce(p.braceL))return b.tokens[b.tokens.length-1].contextId=t,void Cs()}!function(e,t,n){if(_&&function(e){const t=b.tokens.length;at([h._abstract,h._readonly,h._declare,h._static,h._override]);const n=b.tokens.length;if(gt()){for(let s=e?t-1:t;s<n;s++)b.tokens[s].isType=!0;return!0}return!1}(t))return;if(ie(p.star))return Ms(n),void Bs(e,!1);Ms(n);let s=!1;const o=b.tokens[b.tokens.length-1];o.contextualKeyword===h._constructor&&(s=!0);if(qs(),Ds())Bs(e,s);else if(Os())Fs();else if(o.contextualKeyword!==h._async||D())o.contextualKeyword!==h._get&&o.contextualKeyword!==h._set||D()&&ce(p.star)?o.contextualKeyword!==h._accessor||D()?D()?Fs():M():(Ms(n),Fs()):(o.contextualKeyword===h._get?b.tokens[b.tokens.length-1].type=p._get:b.tokens[b.tokens.length-1].type=p._set,Ms(n),Bs(e,!1));else{b.tokens[b.tokens.length-1].type=p._async;ce(p.star)&&te(),Ms(n),qs(),Bs(e,!1)}}(e,n,t)}function Bs(e,t){_?pt():y&&ce(p.lessThan)&&Qn(),Dn(e,t)}function Ms(e){On(e)}function qs(){if(_){const e=oe(0);ie(p.question),re(e)}}function Fs(){if(_?(ae(p.bang),jt()):y&&ce(p.colon)&&ds(),ce(p.eq)){const e=b.tokens.length;te(),un(),b.tokens[e].rhsEndIndex=b.tokens.length}P()}function $s(){const e=b.tokens.length-1;_&&function(){if(ie(p._import))return E(h._type)&&le()!==p.eq&&j(h._type),Ht(),!0;if(ie(p.eq))return ln(),P(),!0;if(S(h._as))return j(h._namespace),$n(),P(),!0;if(E(h._type)){const e=le();e!==p.braceL&&e!==p.star||te()}return!1}()||((y?ce(p.star)||E(h._type)&&le()===p.star:ce(p.star))?y?function(){if(S(h._type)){const e=oe(2);Vs(),re(e)}else Vs()}():Vs():function(){if(_&&Jt())return!1;if(y&&ce(p.name)&&(b.contextualKeyword===h._type||b.contextualKeyword===h._interface||b.contextualKeyword===h._opaque||b.contextualKeyword===h._enum))return!1;if(ce(p.name))return b.contextualKeyword!==h._async;if(!ce(p._default))return!1;const e=pe(),t=he(),n=t.type===p.name&&t.contextualKeyword===h._from;if(t.type===p.comma)return!0;if(n){const t=T.charCodeAt(de(e+4));return t===d.quotationMark||t===d.apostrophe}return!1}()?($n(),ce(p.comma)&&le()===p.star?(B(p.comma),B(p.star),j(h._as),$n()):Hs(),Us()):ie(p._default)?function(){if(_&&function(){if(E(h._abstract)&&le()===p._class)return b.type=p._abstract,te(),Rs(!0,!0),!0;if(E(h._interface)){const e=oe(2);return Kt(h._interface,!0),re(e),!0}return!1}())return;if(y&&E(h._enum)&&(gs(),1))return;const e=b.start;ie(p._function)?js(e,!0,!0):E(h._async)&&le()===p._function?(S(h._async),ie(p._function),js(e,!0,!0)):ce(p._class)?Rs(!0,!0):ce(p.at)?(bs(),Rs(!0,!0)):(un(),P())}():_&&Jt()||y&&(E(h._type)||E(h._interface)||E(h._opaque)||E(h._enum))||b.type===p._var||b.type===p._const||b.type===p._let||b.type===p._function||b.type===p._class||E(h._async)||ce(p.at)?_?function(){const e=S(h._declare);e&&(b.tokens[b.tokens.length-1].type=p._declare);let t=!1;if(ce(p.name))if(e){const e=oe(2);t=Ut(),re(e)}else t=Ut();if(!t)if(e){const e=oe(2);_s(!0),re(e)}else _s(!0)}():y?function(){if(E(h._type)){const e=oe(1);te(),ce(p.braceL)?(Ks(),Us()):Jn(),re(e)}else if(E(h._opaque)){const e=oe(1);te(),Yn(!1),re(e)}else if(E(h._interface)){const e=oe(1);te(),Gn(),re(e)}else _s(!0)}():_s(!0):(Ks(),Us()),b.tokens[e].rhsEndIndex=b.tokens.length)}function Hs(){ie(p.comma)&&Ks()}function Us(){S(h._from)&&(vn(),Ys()),P()}function Vs(){B(p.star),E(h._as)?(te(),b.tokens[b.tokens.length-1].type=p._as,$n(),Hs(),Us()):Us()}function Ks(){let e=!0;for(B(p.braceL);!ie(p.braceR)&&!b.error;){if(e)e=!1;else if(B(p.comma),ie(p.braceR))break;Ws()}}function Ws(){_?function(){if($n(),ce(p.comma)||ce(p.braceR))b.tokens[b.tokens.length-1].identifierRole=W.ExportAccess;else{if($n(),ce(p.comma)||ce(p.braceR))return b.tokens[b.tokens.length-1].identifierRole=W.ExportAccess,b.tokens[b.tokens.length-2].isType=!0,void(b.tokens[b.tokens.length-1].isType=!0);$n(),ce(p.comma)||ce(p.braceR)?b.tokens[b.tokens.length-3].identifierRole=W.ExportAccess:($n(),b.tokens[b.tokens.length-3].identifierRole=W.ExportAccess,b.tokens[b.tokens.length-4].isType=!0,b.tokens[b.tokens.length-3].isType=!0,b.tokens[b.tokens.length-2].isType=!0,b.tokens[b.tokens.length-1].isType=!0)}}():($n(),b.tokens[b.tokens.length-1].identifierRole=W.ExportAccess,S(h._as)&&$n())}function zs(){E(h._module)&&function(){const e=b.snapshot();return j(h._module),S(h._from)?E(h._from)?(b.restoreFromSnapshot(e),!0):(b.restoreFromSnapshot(e),!1):ce(p.comma)?(b.restoreFromSnapshot(e),!1):(b.restoreFromSnapshot(e),!0)}()&&te()}function Gs(){if(_&&ce(p.name)&&le()===p.eq)Ht();else{if(_&&E(h._type)){const e=he();if(e.type===p.name&&e.contextualKeyword!==h._from){if(j(h._type),le()===p.eq)return void Ht()}else e.type!==p.star&&e.type!==p.braceL||j(h._type)}ce(p.string)||(zs(),function(){y&&ks();let e=!0;if(ce(p.name)&&(Xs(),!ie(p.comma)))return;if(ce(p.star))return te(),j(h._as),void Xs();B(p.braceL);for(;!ie(p.braceR)&&!b.error;){if(e)e=!1;else if(ie(p.colon)&&M("ES2015 named imports do not destructure. Use another statement for destructuring after the import."),B(p.comma),ie(p.braceR))break;Js()}}(),j(h._from)),vn(),Ys(),P()}}function Xs(){Qe()}function Js(){_?function(){if($n(),ce(p.comma)||ce(p.braceR))b.tokens[b.tokens.length-1].identifierRole=W.ImportDeclaration;else{if($n(),ce(p.comma)||ce(p.braceR))return b.tokens[b.tokens.length-1].identifierRole=W.ImportDeclaration,b.tokens[b.tokens.length-2].isType=!0,void(b.tokens[b.tokens.length-1].isType=!0);if($n(),ce(p.comma)||ce(p.braceR))return b.tokens[b.tokens.length-3].identifierRole=W.ImportAccess,void(b.tokens[b.tokens.length-1].identifierRole=W.ImportDeclaration);$n(),b.tokens[b.tokens.length-3].identifierRole=W.ImportAccess,b.tokens[b.tokens.length-1].identifierRole=W.ImportDeclaration,b.tokens[b.tokens.length-4].isType=!0,b.tokens[b.tokens.length-3].isType=!0,b.tokens[b.tokens.length-2].isType=!0,b.tokens[b.tokens.length-1].isType=!0}}():y?function(){const e=b.contextualKeyword===h._type||b.type===p._typeof;e?te():$n(),E(h._as)&&!N(h._as)?($n(),(!e||ce(p.name)||b.type&p.IS_KEYWORD)&&$n()):(e&&(ce(p.name)||b.type&p.IS_KEYWORD)&&$n(),S(h._as)&&$n())}():(Qe(),E(h._as)&&(b.tokens[b.tokens.length-1].identifierRole=W.ImportAccess,te(),Qe()))}function Ys(){(ce(p._with)||E(h._assert)&&!R())&&(te(),jn(!1,!1))}function Qs(){return 0===b.pos&&T.charCodeAt(0)===d.numberSign&&T.charCodeAt(1)===d.exclamationMark&&ge(2),me(),function(){if(ws(p.eof),b.scopes.push(new m(0,b.tokens.length,!0)),0!==b.scopeDepth)throw new Error(`Invalid scope depth at end of file: ${b.scopeDepth}`);return new Zs(b.tokens,b.scopes)}()}class Zs{constructor(e,t){this.tokens=e,this.scopes=t}}class eo{__init(){this.resultCode=""}__init2(){this.resultMappings=new Array(this.tokens.length)}__init3(){this.tokenIndex=0}constructor(e,t,n,s,o){this.code=e,this.tokens=t,this.isFlowEnabled=n,this.disableESTransforms=s,this.helperManager=o,eo.prototype.__init.call(this),eo.prototype.__init2.call(this),eo.prototype.__init3.call(this)}snapshot(){return{resultCode:this.resultCode,tokenIndex:this.tokenIndex}}restoreToSnapshot(e){this.resultCode=e.resultCode,this.tokenIndex=e.tokenIndex}dangerouslyGetAndRemoveCodeSinceSnapshot(e){const t=this.resultCode.slice(e.resultCode.length);return this.resultCode=e.resultCode,t}reset(){this.resultCode="",this.resultMappings=new Array(this.tokens.length),this.tokenIndex=0}matchesContextualAtIndex(e,t){return this.matches1AtIndex(e,p.name)&&this.tokens[e].contextualKeyword===t}identifierNameAtIndex(e){return this.identifierNameForToken(this.tokens[e])}identifierNameAtRelativeIndex(e){return this.identifierNameForToken(this.tokenAtRelativeIndex(e))}identifierName(){return this.identifierNameForToken(this.currentToken())}identifierNameForToken(e){return this.code.slice(e.start,e.end)}rawCodeForToken(e){return this.code.slice(e.start,e.end)}stringValueAtIndex(e){return this.stringValueForToken(this.tokens[e])}stringValue(){return this.stringValueForToken(this.currentToken())}stringValueForToken(e){return this.code.slice(e.start+1,e.end-1)}matches1AtIndex(e,t){return this.tokens[e].type===t}matches2AtIndex(e,t,n){return this.tokens[e].type===t&&this.tokens[e+1].type===n}matches3AtIndex(e,t,n,s){return this.tokens[e].type===t&&this.tokens[e+1].type===n&&this.tokens[e+2].type===s}matches1(e){return this.tokens[this.tokenIndex].type===e}matches2(e,t){return this.tokens[this.tokenIndex].type===e&&this.tokens[this.tokenIndex+1].type===t}matches3(e,t,n){return this.tokens[this.tokenIndex].type===e&&this.tokens[this.tokenIndex+1].type===t&&this.tokens[this.tokenIndex+2].type===n}matches4(e,t,n,s){return this.tokens[this.tokenIndex].type===e&&this.tokens[this.tokenIndex+1].type===t&&this.tokens[this.tokenIndex+2].type===n&&this.tokens[this.tokenIndex+3].type===s}matches5(e,t,n,s,o){return this.tokens[this.tokenIndex].type===e&&this.tokens[this.tokenIndex+1].type===t&&this.tokens[this.tokenIndex+2].type===n&&this.tokens[this.tokenIndex+3].type===s&&this.tokens[this.tokenIndex+4].type===o}matchesContextual(e){return this.matchesContextualAtIndex(this.tokenIndex,e)}matchesContextIdAndLabel(e,t){return this.matches1(e)&&this.currentToken().contextId===t}previousWhitespaceAndComments(){let e=this.code.slice(this.tokenIndex>0?this.tokens[this.tokenIndex-1].end:0,this.tokenIndex<this.tokens.length?this.tokens[this.tokenIndex].start:this.code.length);return this.isFlowEnabled&&(e=e.replace(/@flow/g,"")),e}replaceToken(e){this.resultCode+=this.previousWhitespaceAndComments(),this.appendTokenPrefix(),this.resultMappings[this.tokenIndex]=this.resultCode.length,this.resultCode+=e,this.appendTokenSuffix(),this.tokenIndex++}replaceTokenTrimmingLeftWhitespace(e){this.resultCode+=this.previousWhitespaceAndComments().replace(/[^\r\n]/g,""),this.appendTokenPrefix(),this.resultMappings[this.tokenIndex]=this.resultCode.length,this.resultCode+=e,this.appendTokenSuffix(),this.tokenIndex++}removeInitialToken(){this.replaceToken("")}removeToken(){this.replaceTokenTrimmingLeftWhitespace("")}removeBalancedCode(){let e=0;for(;!this.isAtEnd();){if(this.matches1(p.braceL))e++;else if(this.matches1(p.braceR)){if(0===e)return;e--}this.removeToken()}}copyExpectedToken(e){if(this.tokens[this.tokenIndex].type!==e)throw new Error(`Expected token ${e}`);this.copyToken()}copyToken(){this.resultCode+=this.previousWhitespaceAndComments(),this.appendTokenPrefix(),this.resultMappings[this.tokenIndex]=this.resultCode.length,this.resultCode+=this.code.slice(this.tokens[this.tokenIndex].start,this.tokens[this.tokenIndex].end),this.appendTokenSuffix(),this.tokenIndex++}copyTokenWithPrefix(e){this.resultCode+=this.previousWhitespaceAndComments(),this.appendTokenPrefix(),this.resultCode+=e,this.resultMappings[this.tokenIndex]=this.resultCode.length,this.resultCode+=this.code.slice(this.tokens[this.tokenIndex].start,this.tokens[this.tokenIndex].end),this.appendTokenSuffix(),this.tokenIndex++}appendTokenPrefix(){const e=this.currentToken();if((e.numNullishCoalesceStarts||e.isOptionalChainStart)&&(e.isAsyncOperation=function(e){let t=e.currentIndex(),n=0;const s=e.currentToken();do{const o=e.tokens[t];if(o.isOptionalChainStart&&n++,o.isOptionalChainEnd&&n--,n+=o.numNullishCoalesceStarts,n-=o.numNullishCoalesceEnds,o.contextualKeyword===h._await&&null==o.identifierRole&&o.scopeDepth===s.scopeDepth)return!0;t+=1}while(n>0&&t<e.tokens.length);return!1}(this)),!this.disableESTransforms){if(e.numNullishCoalesceStarts)for(let t=0;t<e.numNullishCoalesceStarts;t++)e.isAsyncOperation?(this.resultCode+="await ",this.resultCode+=this.helperManager.getHelperName("asyncNullishCoalesce")):this.resultCode+=this.helperManager.getHelperName("nullishCoalesce"),this.resultCode+="(";e.isOptionalChainStart&&(e.isAsyncOperation&&(this.resultCode+="await "),this.tokenIndex>0&&this.tokenAtRelativeIndex(-1).type===p._delete?e.isAsyncOperation?this.resultCode+=this.helperManager.getHelperName("asyncOptionalChainDelete"):this.resultCode+=this.helperManager.getHelperName("optionalChainDelete"):e.isAsyncOperation?this.resultCode+=this.helperManager.getHelperName("asyncOptionalChain"):this.resultCode+=this.helperManager.getHelperName("optionalChain"),this.resultCode+="([")}}appendTokenSuffix(){const e=this.currentToken();if(e.isOptionalChainEnd&&!this.disableESTransforms&&(this.resultCode+="])"),e.numNullishCoalesceEnds&&!this.disableESTransforms)for(let t=0;t<e.numNullishCoalesceEnds;t++)this.resultCode+="))"}appendCode(e){this.resultCode+=e}currentToken(){return this.tokens[this.tokenIndex]}currentTokenCode(){const e=this.currentToken();return this.code.slice(e.start,e.end)}tokenAtRelativeIndex(e){return this.tokens[this.tokenIndex+e]}currentIndex(){return this.tokenIndex}nextToken(){if(this.tokenIndex===this.tokens.length)throw new Error("Unexpectedly reached end of input.");this.tokenIndex++}previousToken(){this.tokenIndex--}finish(){if(this.tokenIndex!==this.tokens.length)throw new Error("Tried to finish processing tokens before reaching the end.");return this.resultCode+=this.previousWhitespaceAndComments(),{code:this.resultCode,mappings:this.resultMappings}}isAtEnd(){return this.tokenIndex===this.tokens.length}}function to(e,t,n,s){const o=t.snapshot(),r=function(e){const t=e.currentToken(),n=t.contextId;if(null==n)throw new Error("Expected context ID on class token.");const s=t.isExpression;if(null==s)throw new Error("Expected isExpression on class token.");let o=null,r=!1;e.nextToken(),e.matches1(p.name)&&(o=e.identifierName());for(;!e.matchesContextIdAndLabel(p.braceL,n);)e.matches1(p._extends)&&!e.currentToken().isType&&(r=!0),e.nextToken();return{isExpression:s,className:o,hasSuperclass:r}}(t);let i=[];const a=[],c=[];let l=null;const u=[],d=[],f=t.currentToken().contextId;if(null==f)throw new Error("Expected non-null class context ID on class open-brace.");for(t.nextToken();!t.matchesContextIdAndLabel(p.braceR,f);)if(t.matchesContextual(h._constructor)&&!t.currentToken().isType)({constructorInitializerStatements:i,constructorInsertPos:l}=so(t));else if(t.matches1(p.semi))s||d.push({start:t.currentIndex(),end:t.currentIndex()+1}),t.nextToken();else if(t.currentToken().isType)t.nextToken();else{const o=t.currentIndex();let r=!1,m=!1,k=!1;for(;oo(t.currentToken());)t.matches1(p._static)&&(r=!0),t.matches1(p.hash)&&(m=!0),(t.matches1(p._declare)||t.matches1(p._abstract))&&(k=!0),t.nextToken();if(r&&t.matches1(p.braceL)){no(t,f);continue}if(m){no(t,f);continue}if(t.matchesContextual(h._constructor)&&!t.currentToken().isType){({constructorInitializerStatements:i,constructorInsertPos:l}=so(t));continue}const g=t.currentIndex();if(ro(t),t.matches1(p.lessThan)||t.matches1(p.parenL)){no(t,f);continue}for(;t.currentToken().isType;)t.nextToken();if(t.matches1(p.eq)){const s=t.currentIndex(),o=t.currentToken().rhsEndIndex;if(null==o)throw new Error("Expected rhsEndIndex on class field assignment.");for(t.nextToken();t.currentIndex()<o;)e.processToken();let i;r?(i=n.claimFreeName("__initStatic"),c.push(i)):(i=n.claimFreeName("__init"),a.push(i)),u.push({initializerName:i,equalsIndex:s,start:g,end:t.currentIndex()})}else s&&!k||d.push({start:o,end:t.currentIndex()})}return t.restoreToSnapshot(o),s?{headerInfo:r,constructorInitializerStatements:i,instanceInitializerNames:[],staticInitializerNames:[],constructorInsertPos:l,fields:[],rangesToRemove:d}:{headerInfo:r,constructorInitializerStatements:i,instanceInitializerNames:a,staticInitializerNames:c,constructorInsertPos:l,fields:u,rangesToRemove:d}}function no(e,t){for(e.nextToken();e.currentToken().contextId!==t;)e.nextToken();for(;oo(e.tokenAtRelativeIndex(-1));)e.previousToken()}function so(e){const t=[];e.nextToken();const n=e.currentToken().contextId;if(null==n)throw new Error("Expected context ID on open-paren starting constructor params.");for(;!e.matchesContextIdAndLabel(p.parenR,n);)if(e.currentToken().contextId===n){if(e.nextToken(),oo(e.currentToken())){for(e.nextToken();oo(e.currentToken());)e.nextToken();const n=e.currentToken();if(n.type!==p.name)throw new Error("Expected identifier after access modifiers in constructor arg.");const s=e.identifierNameForToken(n);t.push(`this.${s} = ${s}`)}}else e.nextToken();for(e.nextToken();e.currentToken().isType;)e.nextToken();let s=e.currentIndex(),o=!1;for(;!e.matchesContextIdAndLabel(p.braceR,n);){if(!o&&e.matches2(p._super,p.parenL)){e.nextToken();const t=e.currentToken().contextId;if(null==t)throw new Error("Expected a context ID on the super call");for(;!e.matchesContextIdAndLabel(p.parenR,t);)e.nextToken();s=e.currentIndex(),o=!0}e.nextToken()}return e.nextToken(),{constructorInitializerStatements:t,constructorInsertPos:s}}function oo(e){return[p._async,p._get,p._set,p.plus,p.minus,p._readonly,p._static,p._public,p._private,p._protected,p._override,p._abstract,p.star,p._declare,p.hash].includes(e.type)}function ro(e){if(e.matches1(p.bracketL)){const t=e.currentToken().contextId;if(null==t)throw new Error("Expected class context ID on computed name open bracket.");for(;!e.matchesContextIdAndLabel(p.bracketR,t);)e.nextToken();e.nextToken()}else e.nextToken()}function io(e){if(e.removeInitialToken(),e.removeToken(),e.removeToken(),e.removeToken(),e.matches1(p.parenL))e.removeToken(),e.removeToken(),e.removeToken();else for(;e.matches1(p.dot);)e.removeToken(),e.removeToken()}const ao={typeDeclarations:new Set,valueDeclarations:new Set};function co(e){const t=new Set,n=new Set;for(let s=0;s<e.tokens.length;s++){const o=e.tokens[s];o.type===p.name&&J(o)&&(o.isType?t.add(e.identifierNameForToken(o)):n.add(e.identifierNameForToken(o)))}return{typeDeclarations:t,valueDeclarations:n}}function lo(e){let t=e.currentIndex();for(;!e.matches1AtIndex(t,p.braceR);)t++;return e.matchesContextualAtIndex(t+1,h._from)&&e.matches1AtIndex(t+2,p.string)}function uo(e){(e.matches2(p._with,p.braceL)||e.matches2(p.name,p.braceL)&&e.matchesContextual(h._assert))&&(e.removeToken(),e.removeToken(),e.removeBalancedCode(),e.removeToken())}function ho(e,t,n,s){if(!e||t)return!1;const o=n.currentToken();if(null==o.rhsEndIndex)throw new Error("Expected non-null rhsEndIndex on export token.");const r=o.rhsEndIndex-n.currentIndex();if(3!==r&&(4!==r||!n.matches1AtIndex(o.rhsEndIndex-1,p.semi)))return!1;const i=n.tokenAtRelativeIndex(2);if(i.type!==p.name)return!1;const a=n.identifierNameForToken(i);return s.typeDeclarations.has(a)&&!s.valueDeclarations.has(a)}class po extends je{__init(){this.hadExport=!1}__init2(){this.hadNamedExport=!1}__init3(){this.hadDefaultExport=!1}constructor(e,t,n,s,o,r,i,a,c,l,u,h){super(),this.rootTransformer=e,this.tokens=t,this.importProcessor=n,this.nameManager=s,this.helperManager=o,this.reactHotLoaderTransformer=r,this.enableLegacyBabel5ModuleInterop=i,this.enableLegacyTypeScriptModuleInterop=a,this.isTypeScriptTransformEnabled=c,this.isFlowTransformEnabled=l,this.preserveDynamicImport=u,this.keepUnusedImports=h,po.prototype.__init.call(this),po.prototype.__init2.call(this),po.prototype.__init3.call(this),this.declarationInfo=c?co(t):ao}getPrefixCode(){let e="";return this.hadExport&&(e+='Object.defineProperty(exports, "__esModule", {value: true});'),e}getSuffixCode(){return this.enableLegacyBabel5ModuleInterop&&this.hadDefaultExport&&!this.hadNamedExport?"\nmodule.exports = exports.default;\n":""}process(){return this.tokens.matches3(p._import,p.name,p.eq)?this.processImportEquals():this.tokens.matches1(p._import)?(this.processImport(),!0):this.tokens.matches2(p._export,p.eq)?(this.tokens.replaceToken("module.exports"),!0):this.tokens.matches1(p._export)&&!this.tokens.currentToken().isType?(this.hadExport=!0,this.processExport()):!(!this.tokens.matches2(p.name,p.postIncDec)||!this.processPostIncDec())||(this.tokens.matches1(p.name)||this.tokens.matches1(p.jsxName)?this.processIdentifier():this.tokens.matches1(p.eq)?this.processAssignment():this.tokens.matches1(p.assign)?this.processComplexAssignment():!!this.tokens.matches1(p.preIncDec)&&this.processPreIncDec())}processImportEquals(){const e=this.tokens.identifierNameAtIndex(this.tokens.currentIndex()+1);return this.importProcessor.shouldAutomaticallyElideImportedName(e)?io(this.tokens):this.tokens.replaceToken("const"),!0}processImport(){if(this.tokens.matches2(p._import,p.parenL)){if(this.preserveDynamicImport)return void this.tokens.copyToken();const e=this.enableLegacyTypeScriptModuleInterop?"":`${this.helperManager.getHelperName("interopRequireWildcard")}(`;this.tokens.replaceToken(`Promise.resolve().then(() => ${e}require`);const t=this.tokens.currentToken().contextId;if(null==t)throw new Error("Expected context ID on dynamic import invocation.");for(this.tokens.copyToken();!this.tokens.matchesContextIdAndLabel(p.parenR,t);)this.rootTransformer.processToken();return void this.tokens.replaceToken(e?")))":"))")}if(this.removeImportAndDetectIfShouldElide())this.tokens.removeToken();else{const e=this.tokens.stringValue();this.tokens.replaceTokenTrimmingLeftWhitespace(this.importProcessor.claimImportCode(e)),this.tokens.appendCode(this.importProcessor.claimImportCode(e))}uo(this.tokens),this.tokens.matches1(p.semi)&&this.tokens.removeToken()}removeImportAndDetectIfShouldElide(){if(this.tokens.removeInitialToken(),this.tokens.matchesContextual(h._type)&&!this.tokens.matches1AtIndex(this.tokens.currentIndex()+1,p.comma)&&!this.tokens.matchesContextualAtIndex(this.tokens.currentIndex()+1,h._from))return this.removeRemainingImport(),!0;if(this.tokens.matches1(p.name)||this.tokens.matches1(p.star))return this.removeRemainingImport(),!1;if(this.tokens.matches1(p.string))return!1;let e=!1,t=!1;for(;!this.tokens.matches1(p.string);)(!e&&this.tokens.matches1(p.braceL)||this.tokens.matches1(p.comma))&&(this.tokens.removeToken(),this.tokens.matches1(p.braceR)||(t=!0),(this.tokens.matches2(p.name,p.comma)||this.tokens.matches2(p.name,p.braceR)||this.tokens.matches4(p.name,p.name,p.name,p.comma)||this.tokens.matches4(p.name,p.name,p.name,p.braceR))&&(e=!0)),this.tokens.removeToken();return!this.keepUnusedImports&&(this.isTypeScriptTransformEnabled?!e:!!this.isFlowTransformEnabled&&(t&&!e))}removeRemainingImport(){for(;!this.tokens.matches1(p.string);)this.tokens.removeToken()}processIdentifier(){const e=this.tokens.currentToken();if(e.shadowsGlobal)return!1;if(e.identifierRole===W.ObjectShorthand)return this.processObjectShorthand();if(e.identifierRole!==W.Access)return!1;const t=this.importProcessor.getIdentifierReplacement(this.tokens.identifierNameForToken(e));if(!t)return!1;let n=this.tokens.currentIndex()+1;for(;n<this.tokens.tokens.length&&this.tokens.tokens[n].type===p.parenR;)n++;return this.tokens.tokens[n].type===p.parenL?this.tokens.tokenAtRelativeIndex(1).type===p.parenL&&this.tokens.tokenAtRelativeIndex(-1).type!==p._new?(this.tokens.replaceToken(`${t}.call(void 0, `),this.tokens.removeToken(),this.rootTransformer.processBalancedCode(),this.tokens.copyExpectedToken(p.parenR)):this.tokens.replaceToken(`(0, ${t})`):this.tokens.replaceToken(t),!0}processObjectShorthand(){const e=this.tokens.identifierName(),t=this.importProcessor.getIdentifierReplacement(e);return!!t&&(this.tokens.replaceToken(`${e}: ${t}`),!0)}processExport(){if(this.tokens.matches2(p._export,p._enum)||this.tokens.matches3(p._export,p._const,p._enum))return this.hadNamedExport=!0,!1;if(this.tokens.matches2(p._export,p._default))return this.tokens.matches3(p._export,p._default,p._enum)?(this.hadDefaultExport=!0,!1):(this.processExportDefault(),!0);if(this.tokens.matches2(p._export,p.braceL))return this.processExportBindings(),!0;if(this.tokens.matches2(p._export,p.name)&&this.tokens.matchesContextualAtIndex(this.tokens.currentIndex()+1,h._type)){if(this.tokens.removeInitialToken(),this.tokens.removeToken(),this.tokens.matches1(p.braceL)){for(;!this.tokens.matches1(p.braceR);)this.tokens.removeToken();this.tokens.removeToken()}else this.tokens.removeToken(),this.tokens.matches1(p._as)&&(this.tokens.removeToken(),this.tokens.removeToken());return this.tokens.matchesContextual(h._from)&&this.tokens.matches1AtIndex(this.tokens.currentIndex()+1,p.string)&&(this.tokens.removeToken(),this.tokens.removeToken(),uo(this.tokens)),!0}if(this.hadNamedExport=!0,this.tokens.matches2(p._export,p._var)||this.tokens.matches2(p._export,p._let)||this.tokens.matches2(p._export,p._const))return this.processExportVar(),!0;if(this.tokens.matches2(p._export,p._function)||this.tokens.matches3(p._export,p.name,p._function))return this.processExportFunction(),!0;if(this.tokens.matches2(p._export,p._class)||this.tokens.matches3(p._export,p._abstract,p._class)||this.tokens.matches2(p._export,p.at))return this.processExportClass(),!0;if(this.tokens.matches2(p._export,p.star))return this.processExportStar(),!0;throw new Error("Unrecognized export syntax.")}processAssignment(){const e=this.tokens.currentIndex(),t=this.tokens.tokens[e-1];if(t.isType||t.type!==p.name)return!1;if(t.shadowsGlobal)return!1;if(e>=2&&this.tokens.matches1AtIndex(e-2,p.dot))return!1;if(e>=2&&[p._var,p._let,p._const].includes(this.tokens.tokens[e-2].type))return!1;const n=this.importProcessor.resolveExportBinding(this.tokens.identifierNameForToken(t));return!!n&&(this.tokens.copyToken(),this.tokens.appendCode(` ${n} =`),!0)}processComplexAssignment(){const e=this.tokens.currentIndex(),t=this.tokens.tokens[e-1];if(t.type!==p.name)return!1;if(t.shadowsGlobal)return!1;if(e>=2&&this.tokens.matches1AtIndex(e-2,p.dot))return!1;const n=this.importProcessor.resolveExportBinding(this.tokens.identifierNameForToken(t));return!!n&&(this.tokens.appendCode(` = ${n}`),this.tokens.copyToken(),!0)}processPreIncDec(){const e=this.tokens.currentIndex(),t=this.tokens.tokens[e+1];if(t.type!==p.name)return!1;if(t.shadowsGlobal)return!1;if(e+2<this.tokens.tokens.length&&(this.tokens.matches1AtIndex(e+2,p.dot)||this.tokens.matches1AtIndex(e+2,p.bracketL)||this.tokens.matches1AtIndex(e+2,p.parenL)))return!1;const n=this.tokens.identifierNameForToken(t),s=this.importProcessor.resolveExportBinding(n);return!!s&&(this.tokens.appendCode(`${s} = `),this.tokens.copyToken(),!0)}processPostIncDec(){const e=this.tokens.currentIndex(),t=this.tokens.tokens[e],n=this.tokens.tokens[e+1];if(t.type!==p.name)return!1;if(t.shadowsGlobal)return!1;if(e>=1&&this.tokens.matches1AtIndex(e-1,p.dot))return!1;const s=this.tokens.identifierNameForToken(t),o=this.importProcessor.resolveExportBinding(s);if(!o)return!1;const r=this.tokens.rawCodeForToken(n),i=this.importProcessor.getIdentifierReplacement(s)||s;if("++"===r)this.tokens.replaceToken(`(${i} = ${o} = ${i} + 1, ${i} - 1)`);else{if("--"!==r)throw new Error(`Unexpected operator: ${r}`);this.tokens.replaceToken(`(${i} = ${o} = ${i} - 1, ${i} + 1)`)}return this.tokens.removeToken(),!0}processExportDefault(){let e=!0;if(this.tokens.matches4(p._export,p._default,p._function,p.name)||this.tokens.matches5(p._export,p._default,p.name,p._function,p.name)&&this.tokens.matchesContextualAtIndex(this.tokens.currentIndex()+2,h._async)){this.tokens.removeInitialToken(),this.tokens.removeToken();const e=this.processNamedFunction();this.tokens.appendCode(` exports.default = ${e};`)}else if(this.tokens.matches4(p._export,p._default,p._class,p.name)||this.tokens.matches5(p._export,p._default,p._abstract,p._class,p.name)||this.tokens.matches3(p._export,p._default,p.at)){this.tokens.removeInitialToken(),this.tokens.removeToken(),this.copyDecorators(),this.tokens.matches1(p._abstract)&&this.tokens.removeToken();const e=this.rootTransformer.processNamedClass();this.tokens.appendCode(` exports.default = ${e};`)}else if(ho(this.isTypeScriptTransformEnabled,this.keepUnusedImports,this.tokens,this.declarationInfo))e=!1,this.tokens.removeInitialToken(),this.tokens.removeToken(),this.tokens.removeToken();else if(this.reactHotLoaderTransformer){const e=this.nameManager.claimFreeName("_default");this.tokens.replaceToken(`let ${e}; exports.`),this.tokens.copyToken(),this.tokens.appendCode(` = ${e} =`),this.reactHotLoaderTransformer.setExtractedDefaultExportName(e)}else this.tokens.replaceToken("exports."),this.tokens.copyToken(),this.tokens.appendCode(" =");e&&(this.hadDefaultExport=!0)}copyDecorators(){for(;this.tokens.matches1(p.at);)if(this.tokens.copyToken(),this.tokens.matches1(p.parenL))this.tokens.copyExpectedToken(p.parenL),this.rootTransformer.processBalancedCode(),this.tokens.copyExpectedToken(p.parenR);else{for(this.tokens.copyExpectedToken(p.name);this.tokens.matches1(p.dot);)this.tokens.copyExpectedToken(p.dot),this.tokens.copyExpectedToken(p.name);this.tokens.matches1(p.parenL)&&(this.tokens.copyExpectedToken(p.parenL),this.rootTransformer.processBalancedCode(),this.tokens.copyExpectedToken(p.parenR))}}processExportVar(){this.isSimpleExportVar()?this.processSimpleExportVar():this.processComplexExportVar()}isSimpleExportVar(){let e=this.tokens.currentIndex();if(e++,e++,!this.tokens.matches1AtIndex(e,p.name))return!1;for(e++;e<this.tokens.tokens.length&&this.tokens.tokens[e].isType;)e++;return!!this.tokens.matches1AtIndex(e,p.eq)}processSimpleExportVar(){this.tokens.removeInitialToken(),this.tokens.copyToken();const e=this.tokens.identifierName();for(;!this.tokens.matches1(p.eq);)this.rootTransformer.processToken();const t=this.tokens.currentToken().rhsEndIndex;if(null==t)throw new Error("Expected = token with an end index.");for(;this.tokens.currentIndex()<t;)this.rootTransformer.processToken();this.tokens.appendCode(`; exports.${e} = ${e}`)}processComplexExportVar(){this.tokens.removeInitialToken(),this.tokens.removeToken();const e=this.tokens.matches1(p.braceL);e&&this.tokens.appendCode("(");let t=0;for(;;)if(this.tokens.matches1(p.braceL)||this.tokens.matches1(p.dollarBraceL)||this.tokens.matches1(p.bracketL))t++,this.tokens.copyToken();else if(this.tokens.matches1(p.braceR)||this.tokens.matches1(p.bracketR))t--,this.tokens.copyToken();else{if(0===t&&!this.tokens.matches1(p.name)&&!this.tokens.currentToken().isType)break;if(this.tokens.matches1(p.eq)){const e=this.tokens.currentToken().rhsEndIndex;if(null==e)throw new Error("Expected = token with an end index.");for(;this.tokens.currentIndex()<e;)this.rootTransformer.processToken()}else{const e=this.tokens.currentToken();if(G(e)){const t=this.tokens.identifierName();let n=this.importProcessor.getIdentifierReplacement(t);if(null===n)throw new Error(`Expected a replacement for ${t} in \`export var\` syntax.`);Z(e)&&(n=`${t}: ${n}`),this.tokens.replaceToken(n)}else this.rootTransformer.processToken()}}if(e){const e=this.tokens.currentToken().rhsEndIndex;if(null==e)throw new Error("Expected = token with an end index.");for(;this.tokens.currentIndex()<e;)this.rootTransformer.processToken();this.tokens.appendCode(")")}}processExportFunction(){this.tokens.replaceToken("");const e=this.processNamedFunction();this.tokens.appendCode(` exports.${e} = ${e};`)}processNamedFunction(){if(this.tokens.matches1(p._function))this.tokens.copyToken();else if(this.tokens.matches2(p.name,p._function)){if(!this.tokens.matchesContextual(h._async))throw new Error("Expected async keyword in function export.");this.tokens.copyToken(),this.tokens.copyToken()}if(this.tokens.matches1(p.star)&&this.tokens.copyToken(),!this.tokens.matches1(p.name))throw new Error("Expected identifier for exported function name.");const e=this.tokens.identifierName();if(this.tokens.copyToken(),this.tokens.currentToken().isType)for(this.tokens.removeInitialToken();this.tokens.currentToken().isType;)this.tokens.removeToken();return this.tokens.copyExpectedToken(p.parenL),this.rootTransformer.processBalancedCode(),this.tokens.copyExpectedToken(p.parenR),this.rootTransformer.processPossibleTypeRange(),this.tokens.copyExpectedToken(p.braceL),this.rootTransformer.processBalancedCode(),this.tokens.copyExpectedToken(p.braceR),e}processExportClass(){this.tokens.removeInitialToken(),this.copyDecorators(),this.tokens.matches1(p._abstract)&&this.tokens.removeToken();const e=this.rootTransformer.processNamedClass();this.tokens.appendCode(` exports.${e} = ${e};`)}processExportBindings(){this.tokens.removeInitialToken(),this.tokens.removeToken();const e=lo(this.tokens),t=[];for(;;){if(this.tokens.matches1(p.braceR)){this.tokens.removeToken();break}const n=we(this.tokens);for(;this.tokens.currentIndex()<n.endIndex;)this.tokens.removeToken();if(!(n.isType||!e&&this.shouldElideExportedIdentifier(n.leftName))){const e=n.rightName;"default"===e?this.hadDefaultExport=!0:this.hadNamedExport=!0;const s=n.leftName,o=this.importProcessor.getIdentifierReplacement(s);t.push(`exports.${e} = ${o||s};`)}if(this.tokens.matches1(p.braceR)){this.tokens.removeToken();break}if(this.tokens.matches2(p.comma,p.braceR)){this.tokens.removeToken(),this.tokens.removeToken();break}if(!this.tokens.matches1(p.comma))throw new Error(`Unexpected token: ${JSON.stringify(this.tokens.currentToken())}`);this.tokens.removeToken()}if(this.tokens.matchesContextual(h._from)){this.tokens.removeToken();const e=this.tokens.stringValue();this.tokens.replaceTokenTrimmingLeftWhitespace(this.importProcessor.claimImportCode(e)),uo(this.tokens)}else this.tokens.appendCode(t.join(" "));this.tokens.matches1(p.semi)&&this.tokens.removeToken()}processExportStar(){for(this.tokens.removeInitialToken();!this.tokens.matches1(p.string);)this.tokens.removeToken();const e=this.tokens.stringValue();this.tokens.replaceTokenTrimmingLeftWhitespace(this.importProcessor.claimImportCode(e)),uo(this.tokens),this.tokens.matches1(p.semi)&&this.tokens.removeToken()}shouldElideExportedIdentifier(e){return this.isTypeScriptTransformEnabled&&!this.keepUnusedImports&&!this.declarationInfo.valueDeclarations.has(e)}}class fo extends je{constructor(e,t,n,s,o,r,i,a){super(),this.tokens=e,this.nameManager=t,this.helperManager=n,this.reactHotLoaderTransformer=s,this.isTypeScriptTransformEnabled=o,this.isFlowTransformEnabled=r,this.keepUnusedImports=i,this.nonTypeIdentifiers=o&&!i?Be(e,a):new Set,this.declarationInfo=o&&!i?co(e):ao,this.injectCreateRequireForImportRequire=Boolean(a.injectCreateRequireForImportRequire)}process(){if(this.tokens.matches3(p._import,p.name,p.eq))return this.processImportEquals();if(this.tokens.matches4(p._import,p.name,p.name,p.eq)&&this.tokens.matchesContextualAtIndex(this.tokens.currentIndex()+1,h._type)){this.tokens.removeInitialToken();for(let e=0;e<7;e++)this.tokens.removeToken();return!0}if(this.tokens.matches2(p._export,p.eq))return this.tokens.replaceToken("module.exports"),!0;if(this.tokens.matches5(p._export,p._import,p.name,p.name,p.eq)&&this.tokens.matchesContextualAtIndex(this.tokens.currentIndex()+2,h._type)){this.tokens.removeInitialToken();for(let e=0;e<8;e++)this.tokens.removeToken();return!0}if(this.tokens.matches1(p._import))return this.processImport();if(this.tokens.matches2(p._export,p._default))return this.processExportDefault();if(this.tokens.matches2(p._export,p.braceL))return this.processNamedExports();if(this.tokens.matches2(p._export,p.name)&&this.tokens.matchesContextualAtIndex(this.tokens.currentIndex()+1,h._type)){if(this.tokens.removeInitialToken(),this.tokens.removeToken(),this.tokens.matches1(p.braceL)){for(;!this.tokens.matches1(p.braceR);)this.tokens.removeToken();this.tokens.removeToken()}else this.tokens.removeToken(),this.tokens.matches1(p._as)&&(this.tokens.removeToken(),this.tokens.removeToken());return this.tokens.matchesContextual(h._from)&&this.tokens.matches1AtIndex(this.tokens.currentIndex()+1,p.string)&&(this.tokens.removeToken(),this.tokens.removeToken(),uo(this.tokens)),!0}return!1}processImportEquals(){const e=this.tokens.identifierNameAtIndex(this.tokens.currentIndex()+1);return this.shouldAutomaticallyElideImportedName(e)?io(this.tokens):this.injectCreateRequireForImportRequire?(this.tokens.replaceToken("const"),this.tokens.copyToken(),this.tokens.copyToken(),this.tokens.replaceToken(this.helperManager.getHelperName("require"))):this.tokens.replaceToken("const"),!0}processImport(){if(this.tokens.matches2(p._import,p.parenL))return!1;const e=this.tokens.snapshot();if(this.removeImportTypeBindings()){for(this.tokens.restoreToSnapshot(e);!this.tokens.matches1(p.string);)this.tokens.removeToken();this.tokens.removeToken(),uo(this.tokens),this.tokens.matches1(p.semi)&&this.tokens.removeToken()}return!0}removeImportTypeBindings(){if(this.tokens.copyExpectedToken(p._import),this.tokens.matchesContextual(h._type)&&!this.tokens.matches1AtIndex(this.tokens.currentIndex()+1,p.comma)&&!this.tokens.matchesContextualAtIndex(this.tokens.currentIndex()+1,h._from))return!0;if(this.tokens.matches1(p.string))return this.tokens.copyToken(),!1;this.tokens.matchesContextual(h._module)&&this.tokens.matchesContextualAtIndex(this.tokens.currentIndex()+2,h._from)&&this.tokens.copyToken();let e=!1,t=!1,n=!1;if(this.tokens.matches1(p.name)&&(this.shouldAutomaticallyElideImportedName(this.tokens.identifierName())?(this.tokens.removeToken(),this.tokens.matches1(p.comma)&&this.tokens.removeToken()):(e=!0,this.tokens.copyToken(),this.tokens.matches1(p.comma)&&(n=!0,this.tokens.removeToken()))),this.tokens.matches1(p.star))this.shouldAutomaticallyElideImportedName(this.tokens.identifierNameAtRelativeIndex(2))?(this.tokens.removeToken(),this.tokens.removeToken(),this.tokens.removeToken()):(n&&this.tokens.appendCode(","),e=!0,this.tokens.copyExpectedToken(p.star),this.tokens.copyExpectedToken(p.name),this.tokens.copyExpectedToken(p.name));else if(this.tokens.matches1(p.braceL)){for(n&&this.tokens.appendCode(","),this.tokens.copyToken();!this.tokens.matches1(p.braceR);){t=!0;const n=we(this.tokens);if(n.isType||this.shouldAutomaticallyElideImportedName(n.rightName)){for(;this.tokens.currentIndex()<n.endIndex;)this.tokens.removeToken();this.tokens.matches1(p.comma)&&this.tokens.removeToken()}else{for(e=!0;this.tokens.currentIndex()<n.endIndex;)this.tokens.copyToken();this.tokens.matches1(p.comma)&&this.tokens.copyToken()}}this.tokens.copyExpectedToken(p.braceR)}return!this.keepUnusedImports&&(this.isTypeScriptTransformEnabled?!e:!!this.isFlowTransformEnabled&&(t&&!e))}shouldAutomaticallyElideImportedName(e){return this.isTypeScriptTransformEnabled&&!this.keepUnusedImports&&!this.nonTypeIdentifiers.has(e)}processExportDefault(){if(ho(this.isTypeScriptTransformEnabled,this.keepUnusedImports,this.tokens,this.declarationInfo))return this.tokens.removeInitialToken(),this.tokens.removeToken(),this.tokens.removeToken(),!0;if(!(this.tokens.matches4(p._export,p._default,p._function,p.name)||this.tokens.matches5(p._export,p._default,p.name,p._function,p.name)&&this.tokens.matchesContextualAtIndex(this.tokens.currentIndex()+2,h._async)||this.tokens.matches4(p._export,p._default,p._class,p.name)||this.tokens.matches5(p._export,p._default,p._abstract,p._class,p.name))&&this.reactHotLoaderTransformer){const e=this.nameManager.claimFreeName("_default");return this.tokens.replaceToken(`let ${e}; export`),this.tokens.copyToken(),this.tokens.appendCode(` ${e} =`),this.reactHotLoaderTransformer.setExtractedDefaultExportName(e),!0}return!1}processNamedExports(){if(!this.isTypeScriptTransformEnabled)return!1;this.tokens.copyExpectedToken(p._export),this.tokens.copyExpectedToken(p.braceL);const e=lo(this.tokens);let t=!1;for(;!this.tokens.matches1(p.braceR);){const n=we(this.tokens);if(n.isType||!e&&this.shouldElideExportedName(n.leftName)){for(;this.tokens.currentIndex()<n.endIndex;)this.tokens.removeToken();this.tokens.matches1(p.comma)&&this.tokens.removeToken()}else{for(t=!0;this.tokens.currentIndex()<n.endIndex;)this.tokens.copyToken();this.tokens.matches1(p.comma)&&this.tokens.copyToken()}}return this.tokens.copyExpectedToken(p.braceR),this.keepUnusedImports||!e||t||(this.tokens.removeToken(),this.tokens.removeToken(),uo(this.tokens)),!0}shouldElideExportedName(e){return this.isTypeScriptTransformEnabled&&!this.keepUnusedImports&&this.declarationInfo.typeDeclarations.has(e)&&!this.declarationInfo.valueDeclarations.has(e)}}class mo extends je{constructor(e,t,n){super(),this.rootTransformer=e,this.tokens=t,this.isImportsTransformEnabled=n}process(){return!!(this.rootTransformer.processPossibleArrowParamEnd()||this.rootTransformer.processPossibleAsyncArrowWithTypeParams()||this.rootTransformer.processPossibleTypeRange())||(this.tokens.matches1(p._enum)?(this.processEnum(),!0):this.tokens.matches2(p._export,p._enum)?(this.processNamedExportEnum(),!0):!!this.tokens.matches3(p._export,p._default,p._enum)&&(this.processDefaultExportEnum(),!0))}processNamedExportEnum(){if(this.isImportsTransformEnabled){this.tokens.removeInitialToken();const e=this.tokens.identifierNameAtRelativeIndex(1);this.processEnum(),this.tokens.appendCode(` exports.${e} = ${e};`)}else this.tokens.copyToken(),this.processEnum()}processDefaultExportEnum(){this.tokens.removeInitialToken(),this.tokens.removeToken();const e=this.tokens.identifierNameAtRelativeIndex(1);this.processEnum(),this.isImportsTransformEnabled?this.tokens.appendCode(` exports.default = ${e};`):this.tokens.appendCode(` export default ${e};`)}processEnum(){this.tokens.replaceToken("const"),this.tokens.copyExpectedToken(p.name);let e=!1;this.tokens.matchesContextual(h._of)&&(this.tokens.removeToken(),e=this.tokens.matchesContextual(h._symbol),this.tokens.removeToken());const t=this.tokens.matches3(p.braceL,p.name,p.eq);this.tokens.appendCode(' = require("flow-enums-runtime")');const n=!e&&!t;for(this.tokens.replaceTokenTrimmingLeftWhitespace(n?".Mirrored([":"({");!this.tokens.matches1(p.braceR);){if(this.tokens.matches1(p.ellipsis)){this.tokens.removeToken();break}this.processEnumElement(e,t),this.tokens.matches1(p.comma)&&this.tokens.copyToken()}this.tokens.replaceToken(n?"]);":"});")}processEnumElement(e,t){if(e){const e=this.tokens.identifierName();this.tokens.copyToken(),this.tokens.appendCode(`: Symbol("${e}")`)}else t?(this.tokens.copyToken(),this.tokens.replaceTokenTrimmingLeftWhitespace(":"),this.tokens.copyToken()):this.tokens.replaceToken(`"${this.tokens.identifierName()}"`)}}const ko="jest",go=["mock","unmock","enableAutomock","disableAutomock"];class xo extends je{__init(){this.hoistedFunctionNames=[]}constructor(e,t,n,s){super(),this.rootTransformer=e,this.tokens=t,this.nameManager=n,this.importProcessor=s,xo.prototype.__init.call(this)}process(){return!(0!==this.tokens.currentToken().scopeDepth||!this.tokens.matches4(p.name,p.dot,p.name,p.parenL)||this.tokens.identifierName()!==ko)&&(!function(e){let t,n=e[0],s=1;for(;s<e.length;){const o=e[s],r=e[s+1];if(s+=2,("optionalAccess"===o||"optionalCall"===o)&&null==n)return;"access"===o||"optionalAccess"===o?(t=n,n=r(n)):"call"!==o&&"optionalCall"!==o||(n=r(((...e)=>n.call(t,...e))),t=void 0)}return n}([this,"access",e=>e.importProcessor,"optionalAccess",e=>e.getGlobalNames,"call",e=>e(),"optionalAccess",e=>e.has,"call",e=>e(ko)])&&this.extractHoistedCalls())}getHoistedCode(){return this.hoistedFunctionNames.length>0?this.hoistedFunctionNames.map((e=>`${e}();`)).join(""):""}extractHoistedCalls(){this.tokens.removeToken();let e=!1;for(;this.tokens.matches3(p.dot,p.name,p.parenL);){const t=this.tokens.identifierNameAtIndex(this.tokens.currentIndex()+1);if(go.includes(t)){const t=this.nameManager.claimFreeName("__jestHoist");this.hoistedFunctionNames.push(t),this.tokens.replaceToken(`function ${t}(){${ko}.`),this.tokens.copyToken(),this.tokens.copyToken(),this.rootTransformer.processBalancedCode(),this.tokens.copyExpectedToken(p.parenR),this.tokens.appendCode(";}"),e=!1}else e?this.tokens.copyToken():this.tokens.replaceToken(`${ko}.`),this.tokens.copyToken(),this.tokens.copyToken(),this.rootTransformer.processBalancedCode(),this.tokens.copyExpectedToken(p.parenR),e=!0}return!0}}class _o extends je{constructor(e){super(),this.tokens=e}process(){if(this.tokens.matches1(p.num)){const e=this.tokens.currentTokenCode();if(e.includes("_"))return this.tokens.replaceToken(e.replace(/_/g,"")),!0}return!1}}class yo extends je{constructor(e,t){super(),this.tokens=e,this.nameManager=t}process(){return!!this.tokens.matches2(p._catch,p.braceL)&&(this.tokens.copyToken(),this.tokens.appendCode(` (${this.nameManager.claimFreeName("e")})`),!0)}}class bo extends je{constructor(e,t){super(),this.tokens=e,this.nameManager=t}process(){if(this.tokens.matches1(p.nullishCoalescing)){const e=this.tokens.currentToken();return this.tokens.tokens[e.nullishStartIndex].isAsyncOperation?this.tokens.replaceTokenTrimmingLeftWhitespace(", async () => ("):this.tokens.replaceTokenTrimmingLeftWhitespace(", () => ("),!0}if(this.tokens.matches1(p._delete)){if(this.tokens.tokenAtRelativeIndex(1).isOptionalChainStart)return this.tokens.removeInitialToken(),!0}const e=this.tokens.currentToken().subscriptStartIndex;if(null!=e&&this.tokens.tokens[e].isOptionalChainStart&&this.tokens.tokenAtRelativeIndex(-1).type!==p._super){const t=this.nameManager.claimFreeName("_");let n;if(n=e>0&&this.tokens.matches1AtIndex(e-1,p._delete)&&this.isLastSubscriptInChain()?`${t} => delete ${t}`:`${t} => ${t}`,this.tokens.tokens[e].isAsyncOperation&&(n=`async ${n}`),this.tokens.matches2(p.questionDot,p.parenL)||this.tokens.matches2(p.questionDot,p.lessThan))this.justSkippedSuper()&&this.tokens.appendCode(".bind(this)"),this.tokens.replaceTokenTrimmingLeftWhitespace(`, 'optionalCall', ${n}`);else if(this.tokens.matches2(p.questionDot,p.bracketL))this.tokens.replaceTokenTrimmingLeftWhitespace(`, 'optionalAccess', ${n}`);else if(this.tokens.matches1(p.questionDot))this.tokens.replaceTokenTrimmingLeftWhitespace(`, 'optionalAccess', ${n}.`);else if(this.tokens.matches1(p.dot))this.tokens.replaceTokenTrimmingLeftWhitespace(`, 'access', ${n}.`);else if(this.tokens.matches1(p.bracketL))this.tokens.replaceTokenTrimmingLeftWhitespace(`, 'access', ${n}[`);else{if(!this.tokens.matches1(p.parenL))throw new Error("Unexpected subscript operator in optional chain.");this.justSkippedSuper()&&this.tokens.appendCode(".bind(this)"),this.tokens.replaceTokenTrimmingLeftWhitespace(`, 'call', ${n}(`)}return!0}return!1}isLastSubscriptInChain(){let e=0;for(let t=this.tokens.currentIndex()+1;;t++){if(t>=this.tokens.tokens.length)throw new Error("Reached the end of the code while finding the end of the access chain.");if(this.tokens.tokens[t].isOptionalChainStart?e++:this.tokens.tokens[t].isOptionalChainEnd&&e--,e<0)return!0;if(0===e&&null!=this.tokens.tokens[t].subscriptStartIndex)return!1}}justSkippedSuper(){let e=0,t=this.tokens.currentIndex()-1;for(;;){if(t<0)throw new Error("Reached the start of the code while finding the start of the access chain.");if(this.tokens.tokens[t].isOptionalChainStart?e--:this.tokens.tokens[t].isOptionalChainEnd&&e++,e<0)return!1;if(0===e&&null!=this.tokens.tokens[t].subscriptStartIndex)return this.tokens.tokens[t-1].type===p._super;t--}}}class To extends je{constructor(e,t,n,s){super(),this.rootTransformer=e,this.tokens=t,this.importProcessor=n,this.options=s}process(){const e=this.tokens.currentIndex();if("createReactClass"===this.tokens.identifierName()){const t=this.importProcessor&&this.importProcessor.getIdentifierReplacement("createReactClass");return t?this.tokens.replaceToken(`(0, ${t})`):this.tokens.copyToken(),this.tryProcessCreateClassCall(e),!0}if(this.tokens.matches3(p.name,p.dot,p.name)&&"React"===this.tokens.identifierName()&&"createClass"===this.tokens.identifierNameAtIndex(this.tokens.currentIndex()+2)){const t=this.importProcessor&&this.importProcessor.getIdentifierReplacement("React")||"React";return t?(this.tokens.replaceToken(t),this.tokens.copyToken(),this.tokens.copyToken()):(this.tokens.copyToken(),this.tokens.copyToken(),this.tokens.copyToken()),this.tryProcessCreateClassCall(e),!0}return!1}tryProcessCreateClassCall(e){const t=this.findDisplayName(e);t&&this.classNeedsDisplayName()&&(this.tokens.copyExpectedToken(p.parenL),this.tokens.copyExpectedToken(p.braceL),this.tokens.appendCode(`displayName: '${t}',`),this.rootTransformer.processBalancedCode(),this.tokens.copyExpectedToken(p.braceR),this.tokens.copyExpectedToken(p.parenR))}findDisplayName(e){return e<2?null:this.tokens.matches2AtIndex(e-2,p.name,p.eq)||e>=2&&this.tokens.tokens[e-2].identifierRole===W.ObjectKey?this.tokens.identifierNameAtIndex(e-2):this.tokens.matches2AtIndex(e-2,p._export,p._default)?this.getDisplayNameFromFilename():null}getDisplayNameFromFilename(){const e=(this.options.filePath||"unknown").split("/"),t=e[e.length-1],n=t.lastIndexOf("."),s=-1===n?t:t.slice(0,n);return"index"===s&&e[e.length-2]?e[e.length-2]:s}classNeedsDisplayName(){let e=this.tokens.currentIndex();if(!this.tokens.matches2(p.parenL,p.braceL))return!1;const t=e+1,n=this.tokens.tokens[t].contextId;if(null==n)throw new Error("Expected non-null context ID on object open-brace.");for(;e<this.tokens.tokens.length;e++){const t=this.tokens.tokens[e];if(t.type===p.braceR&&t.contextId===n){e++;break}if("displayName"===this.tokens.identifierNameAtIndex(e)&&this.tokens.tokens[e].identifierRole===W.ObjectKey&&t.contextId===n)return!1}if(e===this.tokens.tokens.length)throw new Error("Unexpected end of input when processing React class.");return this.tokens.matches1AtIndex(e,p.parenR)||this.tokens.matches2AtIndex(e,p.comma,p.parenR)}}class vo extends je{__init(){this.extractedDefaultExportName=null}constructor(e,t){super(),this.tokens=e,this.filePath=t,vo.prototype.__init.call(this)}setExtractedDefaultExportName(e){this.extractedDefaultExportName=e}getPrefixCode(){return"\n (function () {\n var enterModule = require('react-hot-loader').enterModule;\n enterModule && enterModule(module);\n })();".replace(/\s+/g," ").trim()}getSuffixCode(){const e=new Set;for(const n of this.tokens.tokens)!n.isType&&J(n)&&n.identifierRole!==W.ImportDeclaration&&e.add(this.tokens.identifierNameForToken(n));const t=Array.from(e).map((e=>({variableName:e,uniqueLocalName:e})));return this.extractedDefaultExportName&&t.push({variableName:this.extractedDefaultExportName,uniqueLocalName:"default"}),`\n;(function () {\n var reactHotLoader = require('react-hot-loader').default;\n var leaveModule = require('react-hot-loader').leaveModule;\n if (!reactHotLoader) {\n return;\n }\n${t.map((({variableName:e,uniqueLocalName:t})=>` reactHotLoader.register(${e}, "${t}", ${JSON.stringify(this.filePath||"")});`)).join("\n")}\n leaveModule(module);\n})();`}process(){return!1}}const Io=new Set(["break","case","catch","class","const","continue","debugger","default","delete","do","else","export","extends","finally","for","function","if","import","in","instanceof","new","return","super","switch","this","throw","try","typeof","var","void","while","with","yield","enum","implements","interface","let","package","private","protected","public","static","await","false","null","true"]);function Co(e){if(0===e.length)return!1;if(!V[e.charCodeAt(0)])return!1;for(let t=1;t<e.length;t++)if(!U[e.charCodeAt(t)])return!1;return!Io.has(e)}class wo extends je{constructor(e,t,n){super(),this.rootTransformer=e,this.tokens=t,this.isImportsTransformEnabled=n}process(){return!!(this.rootTransformer.processPossibleArrowParamEnd()||this.rootTransformer.processPossibleAsyncArrowWithTypeParams()||this.rootTransformer.processPossibleTypeRange())||(this.tokens.matches1(p._public)||this.tokens.matches1(p._protected)||this.tokens.matches1(p._private)||this.tokens.matches1(p._abstract)||this.tokens.matches1(p._readonly)||this.tokens.matches1(p._override)||this.tokens.matches1(p.nonNullAssertion)?(this.tokens.removeInitialToken(),!0):this.tokens.matches1(p._enum)||this.tokens.matches2(p._const,p._enum)?(this.processEnum(),!0):!(!this.tokens.matches2(p._export,p._enum)&&!this.tokens.matches3(p._export,p._const,p._enum))&&(this.processEnum(!0),!0))}processEnum(e=!1){for(this.tokens.removeInitialToken();this.tokens.matches1(p._const)||this.tokens.matches1(p._enum);)this.tokens.removeToken();const t=this.tokens.identifierName();this.tokens.removeToken(),e&&!this.isImportsTransformEnabled&&this.tokens.appendCode("export "),this.tokens.appendCode(`var ${t}; (function (${t})`),this.tokens.copyExpectedToken(p.braceL),this.processEnumBody(t),this.tokens.copyExpectedToken(p.braceR),e&&this.isImportsTransformEnabled?this.tokens.appendCode(`)(${t} || (exports.${t} = ${t} = {}));`):this.tokens.appendCode(`)(${t} || (${t} = {}));`)}processEnumBody(e){let t=null;for(;!this.tokens.matches1(p.braceR);){const{nameStringCode:n,variableName:s}=this.extractEnumKeyInfo(this.tokens.currentToken());this.tokens.removeInitialToken(),this.tokens.matches3(p.eq,p.string,p.comma)||this.tokens.matches3(p.eq,p.string,p.braceR)?this.processStringLiteralEnumMember(e,n,s):this.tokens.matches1(p.eq)?this.processExplicitValueEnumMember(e,n,s):this.processImplicitValueEnumMember(e,n,s,t),this.tokens.matches1(p.comma)&&this.tokens.removeToken(),t=null!=s?s:`${e}[${n}]`}}extractEnumKeyInfo(e){if(e.type===p.name){const t=this.tokens.identifierNameForToken(e);return{nameStringCode:`"${t}"`,variableName:Co(t)?t:null}}if(e.type===p.string){const t=this.tokens.stringValueForToken(e);return{nameStringCode:this.tokens.code.slice(e.start,e.end),variableName:Co(t)?t:null}}throw new Error("Expected name or string at beginning of enum element.")}processStringLiteralEnumMember(e,t,n){null!=n?(this.tokens.appendCode(`const ${n}`),this.tokens.copyToken(),this.tokens.copyToken(),this.tokens.appendCode(`; ${e}[${t}] = ${n};`)):(this.tokens.appendCode(`${e}[${t}]`),this.tokens.copyToken(),this.tokens.copyToken(),this.tokens.appendCode(";"))}processExplicitValueEnumMember(e,t,n){const s=this.tokens.currentToken().rhsEndIndex;if(null==s)throw new Error("Expected rhsEndIndex on enum assign.");if(null!=n){for(this.tokens.appendCode(`const ${n}`),this.tokens.copyToken();this.tokens.currentIndex()<s;)this.rootTransformer.processToken();this.tokens.appendCode(`; ${e}[${e}[${t}] = ${n}] = ${t};`)}else{for(this.tokens.appendCode(`${e}[${e}[${t}]`),this.tokens.copyToken();this.tokens.currentIndex()<s;)this.rootTransformer.processToken();this.tokens.appendCode(`] = ${t};`)}}processImplicitValueEnumMember(e,t,n,s){let o=null!=s?`${s} + 1`:"0";null!=n&&(this.tokens.appendCode(`const ${n} = ${o}; `),o=n),this.tokens.appendCode(`${e}[${e}[${t}] = ${o}] = ${t};`)}}class Ao{__init(){this.transformers=[]}__init2(){this.generatedVariables=[]}constructor(e,t,n,s){Ao.prototype.__init.call(this),Ao.prototype.__init2.call(this),this.nameManager=e.nameManager,this.helperManager=e.helperManager;const{tokenProcessor:o,importProcessor:r}=e;this.tokens=o,this.isImportsTransformEnabled=t.includes("imports"),this.isReactHotLoaderTransformEnabled=t.includes("react-hot-loader"),this.disableESTransforms=Boolean(s.disableESTransforms),s.disableESTransforms||(this.transformers.push(new bo(o,this.nameManager)),this.transformers.push(new _o(o)),this.transformers.push(new yo(o,this.nameManager))),t.includes("jsx")&&("preserve"!==s.jsxRuntime&&this.transformers.push(new Le(this,o,r,this.nameManager,s)),this.transformers.push(new To(this,o,r,s)));let i=null;if(t.includes("react-hot-loader")){if(!s.filePath)throw new Error("filePath is required when using the react-hot-loader transform.");i=new vo(o,s.filePath),this.transformers.push(i)}if(t.includes("imports")){if(null===r)throw new Error("Expected non-null importProcessor with imports transform enabled.");this.transformers.push(new po(this,o,r,this.nameManager,this.helperManager,i,n,Boolean(s.enableLegacyTypeScriptModuleInterop),t.includes("typescript"),t.includes("flow"),Boolean(s.preserveDynamicImport),Boolean(s.keepUnusedImports)))}else this.transformers.push(new fo(o,this.nameManager,this.helperManager,i,t.includes("typescript"),t.includes("flow"),Boolean(s.keepUnusedImports),s));t.includes("flow")&&this.transformers.push(new mo(this,o,t.includes("imports"))),t.includes("typescript")&&this.transformers.push(new wo(this,o,t.includes("imports"))),t.includes("jest")&&this.transformers.push(new xo(this,o,this.nameManager,r))}transform(){this.tokens.reset(),this.processBalancedCode();let e=this.isImportsTransformEnabled?'"use strict";':"";for(const o of this.transformers)e+=o.getPrefixCode();e+=this.helperManager.emitHelpers(),e+=this.generatedVariables.map((e=>` var ${e};`)).join("");for(const o of this.transformers)e+=o.getHoistedCode();let t="";for(const o of this.transformers)t+=o.getSuffixCode();const n=this.tokens.finish();let{code:s}=n;if(s.startsWith("#!")){let o=s.indexOf("\n");return-1===o&&(o=s.length,s+="\n"),{code:s.slice(0,o+1)+e+s.slice(o+1)+t,mappings:this.shiftMappings(n.mappings,e.length)}}return{code:e+s+t,mappings:this.shiftMappings(n.mappings,e.length)}}processBalancedCode(){let e=0,t=0;for(;!this.tokens.isAtEnd();){if(this.tokens.matches1(p.braceL)||this.tokens.matches1(p.dollarBraceL))e++;else if(this.tokens.matches1(p.braceR)){if(0===e)return;e--}if(this.tokens.matches1(p.parenL))t++;else if(this.tokens.matches1(p.parenR)){if(0===t)return;t--}this.processToken()}}processToken(){if(this.tokens.matches1(p._class))this.processClass();else{for(const e of this.transformers){if(e.process())return}this.tokens.copyToken()}}processNamedClass(){if(!this.tokens.matches2(p._class,p.name))throw new Error("Expected identifier for exported class name.");const e=this.tokens.identifierNameAtIndex(this.tokens.currentIndex()+1);return this.processClass(),e}processClass(){const e=to(this,this.tokens,this.nameManager,this.disableESTransforms),t=(e.headerInfo.isExpression||!e.headerInfo.className)&&e.staticInitializerNames.length+e.instanceInitializerNames.length>0;let n=e.headerInfo.className;t&&(n=this.nameManager.claimFreeName("_class"),this.generatedVariables.push(n),this.tokens.appendCode(` (${n} =`));const s=this.tokens.currentToken().contextId;if(null==s)throw new Error("Expected class to have a context ID.");for(this.tokens.copyExpectedToken(p._class);!this.tokens.matchesContextIdAndLabel(p.braceL,s);)this.processToken();this.processClassBody(e,n);const o=e.staticInitializerNames.map((e=>`${n}.${e}()`));t?this.tokens.appendCode(`, ${o.map((e=>`${e}, `)).join("")}${n})`):e.staticInitializerNames.length>0&&this.tokens.appendCode(` ${o.map((e=>`${e};`)).join(" ")}`)}processClassBody(e,t){const{headerInfo:n,constructorInsertPos:s,constructorInitializerStatements:o,fields:r,instanceInitializerNames:i,rangesToRemove:a}=e;let c=0,l=0;const u=this.tokens.currentToken().contextId;if(null==u)throw new Error("Expected non-null context ID on class.");this.tokens.copyExpectedToken(p.braceL),this.isReactHotLoaderTransformEnabled&&this.tokens.appendCode("__reactstandin__regenerateByEval(key, code) {this[key] = eval(code);}");const h=o.length+i.length>0;if(null===s&&h){const e=this.makeConstructorInitCode(o,i,t);if(n.hasSuperclass){const t=this.nameManager.claimFreeName("args");this.tokens.appendCode(`constructor(...${t}) { super(...${t}); ${e}; }`)}else this.tokens.appendCode(`constructor() { ${e}; }`)}for(;!this.tokens.matchesContextIdAndLabel(p.braceR,u);)if(c<r.length&&this.tokens.currentIndex()===r[c].start){let e=!1;for(this.tokens.matches1(p.bracketL)?this.tokens.copyTokenWithPrefix(`${r[c].initializerName}() {this`):this.tokens.matches1(p.string)||this.tokens.matches1(p.num)?(this.tokens.copyTokenWithPrefix(`${r[c].initializerName}() {this[`),e=!0):this.tokens.copyTokenWithPrefix(`${r[c].initializerName}() {this.`);this.tokens.currentIndex()<r[c].end;)e&&this.tokens.currentIndex()===r[c].equalsIndex&&this.tokens.appendCode("]"),this.processToken();this.tokens.appendCode("}"),c++}else if(l<a.length&&this.tokens.currentIndex()>=a[l].start){for(this.tokens.currentIndex()<a[l].end&&this.tokens.removeInitialToken();this.tokens.currentIndex()<a[l].end;)this.tokens.removeToken();l++}else this.tokens.currentIndex()===s?(this.tokens.copyToken(),h&&this.tokens.appendCode(`;${this.makeConstructorInitCode(o,i,t)};`),this.processToken()):this.processToken();this.tokens.copyExpectedToken(p.braceR)}makeConstructorInitCode(e,t,n){return[...e,...t.map((e=>`${n}.prototype.${e}.call(this)`))].join(";")}processPossibleArrowParamEnd(){if(this.tokens.matches2(p.parenR,p.colon)&&this.tokens.tokenAtRelativeIndex(1).isType){let e=this.tokens.currentIndex()+1;for(;this.tokens.tokens[e].isType;)e++;if(this.tokens.matches1AtIndex(e,p.arrow)){for(this.tokens.removeInitialToken();this.tokens.currentIndex()<e;)this.tokens.removeToken();return this.tokens.replaceTokenTrimmingLeftWhitespace(") =>"),!0}}return!1}processPossibleAsyncArrowWithTypeParams(){if(!this.tokens.matchesContextual(h._async)&&!this.tokens.matches1(p._async))return!1;const e=this.tokens.tokenAtRelativeIndex(1);if(e.type!==p.lessThan||!e.isType)return!1;let t=this.tokens.currentIndex()+1;for(;this.tokens.tokens[t].isType;)t++;if(this.tokens.matches1AtIndex(t,p.parenL)){for(this.tokens.replaceToken("async ("),this.tokens.removeInitialToken();this.tokens.currentIndex()<t;)this.tokens.removeToken();return this.tokens.removeToken(),this.processBalancedCode(),this.processToken(),!0}return!1}processPossibleTypeRange(){if(this.tokens.currentToken().isType){for(this.tokens.removeInitialToken();this.tokens.currentToken().isType;)this.tokens.removeToken();return!0}return!1}shiftMappings(e,t){for(let n=0;n<e.length;n++){const s=e[n];void 0!==s&&(e[n]=s+t)}return e}}n(50089);function Eo(e,t,n){t++,e.matches1AtIndex(t,p.parenL)||(e.matches1AtIndex(t,p.name)&&(n.add(e.identifierNameAtIndex(t)),t++,e.matches1AtIndex(t,p.comma)&&t++),e.matches1AtIndex(t,p.star)&&(t+=2,n.add(e.identifierNameAtIndex(t)),t++),e.matches1AtIndex(t,p.braceL)&&function(e,t,n){for(;;){if(e.matches1AtIndex(t,p.braceR))return;const s=we(e,t);if(t=s.endIndex,s.isType||n.add(s.rightName),e.matches2AtIndex(t,p.comma,p.braceR))return;if(e.matches1AtIndex(t,p.braceR))return;if(!e.matches1AtIndex(t,p.comma))throw new Error(`Unexpected token: ${JSON.stringify(e.tokens[t])}`);t++}}(e,++t,n))}function No(e,t){!function(e){Ge.strictCheck(e)}(t);try{const n=So(e,t),s=new Ao(n,t.transforms,Boolean(t.enableLegacyBabel5ModuleInterop),t).transform();let o={code:s.code};if(t.sourceMapOptions){if(!t.filePath)throw new Error("filePath must be specified when generating a source map.");o={...o,sourceMap:Fe(s,t.filePath,t.sourceMapOptions,e,n.tokenProcessor.tokens)}}return o}catch(n){throw t.filePath&&(n.message=`Error transforming ${t.filePath}: ${n.message}`),n}}function So(e,t){const n=t.transforms.includes("jsx"),s=t.transforms.includes("typescript"),o=t.transforms.includes("flow"),r=!0===t.disableESTransforms,i=function(e,t,n,s){if(s&&n)throw new Error("Cannot combine flow and typescript plugins.");A(e,t,n,s);const o=Qs();if(b.error)throw C(b.error);return o}(e,n,s,o),a=i.tokens,c=i.scopes,l=new Ke(e,a),u=new He(l),h=new eo(e,a,o,r,u),d=Boolean(t.enableLegacyTypeScriptModuleInterop);let f=null;return t.transforms.includes("imports")?(f=new Me(l,h,d,t,t.transforms.includes("typescript"),Boolean(t.keepUnusedImports),u),f.preprocessTokens(),Ue(h,c,f.getGlobalNames()),t.transforms.includes("typescript")&&!t.keepUnusedImports&&f.pruneTypeOnlyImports()):t.transforms.includes("typescript")&&!t.keepUnusedImports&&Ue(h,c,function(e){const t=new Set;for(let n=0;n<e.tokens.length;n++)e.matches1AtIndex(n,p._import)&&!e.matches3AtIndex(n,p._import,p.name,p.eq)&&Eo(e,n,t);return t}(h)),{tokenProcessor:h,scopes:c,nameManager:l,importProcessor:f,helperManager:u}}var jo=Object.defineProperty,Lo=Object.defineProperties,Ro=Object.getOwnPropertyDescriptors,Oo=Object.getOwnPropertySymbols,Do=Object.prototype.hasOwnProperty,Po=Object.prototype.propertyIsEnumerable,Bo=(e,t,n)=>t in e?jo(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Mo=(e,t)=>{for(var n in t||(t={}))Do.call(t,n)&&Bo(e,n,t[n]);if(Oo)for(var n of Oo(t))Po.call(t,n)&&Bo(e,n,t[n]);return e},qo=(e,t)=>Lo(e,Ro(t)),Fo=e=>{const{tabMode:t="indentation"}=e,n=(0,o.useRef)(null),[h,p]=(0,o.useState)(e.code||""),{theme:d}=e;return(0,o.useEffect)((()=>{p(e.code)}),[e.code]),function(e,t,n){function s(t){var n=e.current;if(n){var s=l(n);n=c(n),s.position+=t.length-n.length,k.position=s,k.onChange(t,s)}}function h(t,n){var s=e.current;if(s){var o=window.getSelection().getRangeAt(0);o.deleteContents(),o.collapse();var r=n||0;(o=u(s,n=(o=l(s)).position+(0>r?r:0),o.position+(0<r?r:0))).deleteContents(),t&&o.insertNode(document.createTextNode(t)),i(u(s,n+t.length))}}function p(t){var n=e.current;if(n){n.focus();var s=0;if("number"==typeof t)s=t;else{var o=c(n).split("\n").slice(0,t.row);t.row&&(s+=o.join("\n").length+1),s+=t.column}i(u(n,s))}}function d(){var t=e.current;return{text:c(t),position:t=l(t)}}function f(){k.observer.disconnect()}n||(n={});var m=(0,o.useState)([])[1],k=(0,o.useState)((function(){var e={observer:null,disconnected:!1,onChange:t,queue:[],history:[],historyAt:-1,position:null};return"undefined"!=typeof MutationObserver&&(e.observer=new MutationObserver((function(t){var n;(n=e.queue).push.apply(n,t)}))),e}))[0],g=(0,o.useMemo)((function(){return{update:s,insert:h,move:p,getState:d}}),[]);"object"!=typeof navigator||((0,o.useLayoutEffect)((function(){if(k.onChange=t,e.current&&!n.disabled){if(k.disconnected=!1,k.observer.observe(e.current,r),k.position){var s=k.position,o=s.position;i(u(e.current,o,o+s.extent))}return f}})),(0,o.useLayoutEffect)((function(){if(e.current&&!n.disabled){var t=e.current;if(k.position){t.focus();var s=k.position,o=s.position;i(u(t,o,o+s.extent))}var r=t.style.whiteSpace,h=t.contentEditable,p=!0;try{t.contentEditable="plaintext-only"}catch(C){t.contentEditable="true",p=!1}"pre"!==r&&(t.style.whiteSpace="pre-wrap"),n.indentation&&(t.style.tabSize=t.style.MozTabSize=""+n.indentation),s=""+" ".repeat(n.indentation||0);var d,f=new RegExp("^(?:"+s+")"),x=new RegExp("^(?:"+s+")*("+s+")$"),_=function(n){if(e.current&&k.position){var s=c(t),o=l(t),r=(new Date).valueOf(),i=k.history[k.historyAt];!n&&500>r-d||i&&i[1]===s?d=r:(n=++k.historyAt,k.history[n]=[o,s],k.history.splice(n+1),500<n&&(k.historyAt--,k.history.shift()))}},y=function(){var e;if((e=k.queue).push.apply(e,k.observer.takeRecords()),e=l(t),k.queue.length){k.observer.disconnect(),k.disconnected=!0;var n,s,o=c(t);for(k.position=e;n=k.queue.pop();){for(null!==n.oldValue&&(n.target.textContent=n.oldValue),s=n.removedNodes.length-1;0<=s;s--)n.target.insertBefore(n.removedNodes[s],n.nextSibling);for(s=n.addedNodes.length-1;0<=s;s--)n.addedNodes[s].parentNode&&n.target.removeChild(n.addedNodes[s])}k.onChange(o,e)}},b=function(e){if(!e.defaultPrevented&&e.target===t){if(k.disconnected)return e.preventDefault(),m([]);if(a(e))e.preventDefault(),e.shiftKey?(e=++k.historyAt,(e=k.history[e])||(k.historyAt=k.history.length-1)):(e=--k.historyAt,(e=k.history[e])||(k.historyAt=0)),e&&(k.observer.disconnect(),k.disconnected=!0,k.position=e[0],k.onChange(e[1],e[0]));else{if(_(),"Enter"===e.key){e.preventDefault();var s=l(t),o=/\S/g.exec(s.content);s="\n"+s.content.slice(0,o?o.index:s.content.length),g.insert(s)}else if(p&&!n.indentation||"Backspace"!==e.key){if(n.indentation&&"Tab"===e.key){e.preventDefault(),o=(s=l(t)).position-s.content.length;var r=c(t);s=e.shiftKey?r.slice(0,o)+s.content.replace(f,"")+r.slice(o+s.content.length):r.slice(0,o)+(n.indentation?" ".repeat(n.indentation):"\t")+r.slice(o),g.update(s)}}else e.preventDefault(),window.getSelection().getRangeAt(0).collapsed?(s=l(t),s=x.exec(s.content),g.insert("",s?-s[1].length:-1)):g.insert("",0);e.repeat&&y()}}},T=function(e){e.defaultPrevented||e.isComposing||(a(e)||_(),y(),t.focus())},v=function(e){k.position=window.getSelection().rangeCount&&e.target===t?l(t):null},I=function(e){e.preventDefault(),_(!0),g.insert(e.clipboardData.getData("text/plain")),_(!0),y()};return document.addEventListener("selectstart",v),window.addEventListener("keydown",b),t.addEventListener("paste",I),t.addEventListener("keyup",T),function(){document.removeEventListener("selectstart",v),window.removeEventListener("keydown",b),t.removeEventListener("paste",I),t.removeEventListener("keyup",T),t.style.whiteSpace=r,t.contentEditable=h}}k.history.length=0,k.historyAt=-1}),[e.current,n.disabled,n.indentation]))}(n,(e=>p(e.slice(0,-1))),{disabled:e.disabled,indentation:"indentation"===t?2:void 0}),(0,o.useEffect)((()=>{e.onChange&&e.onChange(h)}),[h]),(0,f.jsx)("div",{className:e.className,style:e.style,children:(0,f.jsx)(s.f4,{code:h,theme:e.theme||s.Zj.nightOwl,language:e.language,children:({className:e,tokens:t,getLineProps:s,getTokenProps:o,style:r})=>(0,f.jsx)("pre",{className:e,style:Mo(Mo({margin:0,outline:"none",padding:10,fontFamily:"inherit"},d&&"object"==typeof d.plain?d.plain:{}),r),ref:n,spellCheck:"false",children:t.map(((e,t)=>(0,f.jsxs)("span",qo(Mo({},s({line:e})),{children:[e.filter((e=>!e.empty)).map(((e,t)=>(0,f.jsx)("span",Mo({},o({token:e})),`token-${t}`))),"\n"]}),`line-${t}`)))})})})},$o=(0,o.createContext)({}),Ho=["jsx","imports"];function Uo(e={}){const t=Array.isArray(e.transforms)?e.transforms.filter(Boolean):Ho;return e=>No(e,{transforms:t}).code}var Vo=(e,t)=>class extends o.Component{componentDidCatch(e){t(e)}render(){return"function"==typeof e?(0,f.jsx)(e,{}):o.isValidElement(e)?e:null}},Ko=(e,t)=>{const n=Object.keys(t),s=n.map((e=>t[e]));return new Function(...n,e)(...s)};var Wo='const _jsxFileName = "";',zo=e=>e.trim().replace(/;$/,""),Go=e=>e.replace(Wo,"").trim(),Xo=e=>Wo+e,Jo=e=>`return (${e})`;var Yo=function({children:e,code:t="",language:n="tsx",theme:s,enableTypeScript:r=!0,disabled:i=!1,scope:a,transformCode:c,noInline:l=!1}){const[u,h]=(0,o.useState)({error:void 0,element:void 0});function p(e){return t=this,n=null,s=function*(){const t=e=>{h({error:e.toString(),element:void 0})};try{const s=c?c(e):e;try{const e=yield Promise.resolve(s),n=e=>h({error:void 0,element:e});if("string"!=typeof e)throw new Error("Code failed to transform");const i={code:e,scope:a,enableTypeScript:r};l?(h({error:void 0,element:null}),(({code:e="",scope:t={},enableTypeScript:n=!0},s,r)=>{if(!/render\s*\(/.test(e))return r(new SyntaxError("No-Inline evaluations must call `render`."));const i=["jsx","imports"];n&&i.splice(1,0,"typescript"),Ko(Uo({transforms:i})(e),qo(Mo({React:o},t),{render:e=>{void 0===e?r(new SyntaxError("`render` must be called with valid JSX.")):s(Vo(e,r))}}))})(i,n,t)):n((({code:e="",scope:t={},enableTypeScript:n=!0},s)=>{const r=["jsx"];n&&r.push("typescript");const i=function(...e){return e.reduce(((e,t)=>(...n)=>e(t(...n))))}(Xo,Uo({transforms:["imports"]}),Jo,Go,zo,Uo({transforms:r}),zo)(e);return Vo(Ko(i,Mo({React:o},t)),s)})(i,t))}catch(n){return t(n)}}catch(s){return t(s),Promise.resolve()}},new Promise(((e,o)=>{var r=e=>{try{a(s.next(e))}catch(t){o(t)}},i=e=>{try{a(s.throw(e))}catch(t){o(t)}},a=t=>t.done?e(t.value):Promise.resolve(t.value).then(r,i);a((s=s.apply(t,n)).next())}));var t,n,s}const d=e=>h({error:e.toString()});return(0,o.useEffect)((()=>{p(t).catch(d)}),[t,a,l,c]),(0,f.jsx)($o.Provider,{value:qo(Mo({},u),{code:t,language:n,theme:s,disabled:i,onError:d,onChange:e=>{p(e).catch(d)}}),children:e})};function Qo(e){const{code:t,language:n,theme:s,disabled:r,onChange:i}=(0,o.useContext)($o);return(0,f.jsx)(Fo,Mo({theme:s,code:t,language:n,disabled:r,onChange:i},e))}}}]); \ No newline at end of file diff --git a/assets/js/37c45b6e.9e4218a7.js b/assets/js/37c45b6e.9e4218a7.js new file mode 100644 index 00000000..10d06ff8 --- /dev/null +++ b/assets/js/37c45b6e.9e4218a7.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkbeacon_docs=self.webpackChunkbeacon_docs||[]).push([[3334],{12881:(e,n,s)=>{s.r(n),s.d(n,{assets:()=>c,contentTitle:()=>r,default:()=>l,frontMatter:()=>a,metadata:()=>o,toc:()=>p});var t=s(74848),i=s(28453);const a={title:"Substrate",slug:"/blockchains/substrate"},r=void 0,o={id:"blockchains/blockchain-substrate",title:"Substrate",description:"Permission Scopes",source:"@site/docs/blockchains/blockchain-substrate.md",sourceDirName:"blockchains",slug:"/blockchains/substrate",permalink:"/blockchains/substrate",draft:!1,unlisted:!1,editUrl:"https://github.com/airgap-it/beacon-docs/edit/main/src/docs/blockchains/blockchain-substrate.md",tags:[],version:"current",frontMatter:{title:"Substrate",slug:"/blockchains/substrate"},sidebar:"docs",previous:{title:"Usage",permalink:"/blockchains/usage"},next:{title:"Tezos",permalink:"/blockchains/tezos"}},c={},p=[{value:"Permission Scopes",id:"permission-scopes",level:2},{value:"Message Types",id:"message-types",level:2},{value:"Messages",id:"messages",level:2},{value:"Permission Request",id:"permission-request",level:3},{value:"Permission Response",id:"permission-response",level:3},{value:"Transfer Request",id:"transfer-request",level:3},{value:"Transfer Response",id:"transfer-response",level:3},{value:"Sign Payload Request",id:"sign-payload-request",level:3},{value:"Sign Payload Response",id:"sign-payload-response",level:3}];function d(e){const n={code:"code",h2:"h2",h3:"h3",p:"p",pre:"pre",...(0,i.R)(),...e.components};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(n.h2,{id:"permission-scopes",children:"Permission Scopes"}),"\n",(0,t.jsx)(n.p,{children:"The following permission scopes are available in the Substrate package."}),"\n",(0,t.jsx)(n.pre,{children:(0,t.jsx)(n.code,{className:"language-ts",children:'export enum SubstratePermissionScope {\n "transfer" = "transfer",\n "sign_payload_json" = "sign_payload_json",\n "sign_payload_raw" = "sign_payload_raw",\n}\n'})}),"\n",(0,t.jsx)(n.h2,{id:"message-types",children:"Message Types"}),"\n",(0,t.jsx)(n.p,{children:"The supported message types."}),"\n",(0,t.jsx)(n.pre,{children:(0,t.jsx)(n.code,{className:"language-ts",children:'export enum SubstrateMessageType {\n "transfer_request" = "transfer_request",\n "sign_payload_request" = "sign_payload_request",\n}\n'})}),"\n",(0,t.jsx)(n.h2,{id:"messages",children:"Messages"}),"\n",(0,t.jsx)(n.h3,{id:"permission-request",children:"Permission Request"}),"\n",(0,t.jsx)(n.p,{children:"This message is used to request permissions to use an account."}),"\n",(0,t.jsx)(n.pre,{children:(0,t.jsx)(n.code,{className:"language-ts",children:'export interface SubstratePermissionRequest\n extends PermissionRequestV3<"substrate"> {\n blockchainData: {\n scopes: SubstratePermissionScope[]; // enum\n appMetadata: AppMetadata;\n network?: {\n genesisHash: string; // Wallet shows only those accounts\n rpc?: string; // For development nodes?\n }[]; // Array to "whitelist" certain networks? (optional)\n\n}\n'})}),"\n",(0,t.jsx)(n.h3,{id:"permission-response",children:"Permission Response"}),"\n",(0,t.jsx)(n.p,{children:"This message is used to share information about an account with a dApp."}),"\n",(0,t.jsx)(n.pre,{children:(0,t.jsx)(n.code,{className:"language-ts",children:'export interface SubstratePermissionResponse\n extends PermissionResponseV3<"substrate"> {\n blockchainData: {\n appMetadata: AppMetadata;\n scopes: SubstratePermissionScope[]; // enum\n accounts: {\n accountId: string;\n network?: {\n genesisHash: string;\n rpc?: string;\n\n publicKey: string;\n address: string;\n }[];\n\n}\n'})}),"\n",(0,t.jsx)(n.h3,{id:"transfer-request",children:"Transfer Request"}),"\n",(0,t.jsx)(n.p,{children:"This message is used to initiate a transfer between two accounts."}),"\n",(0,t.jsx)(n.pre,{children:(0,t.jsx)(n.code,{className:"language-ts",children:'export interface SubstrateTransferRequest\n extends BlockchainMessage<"substrate"> {\n blockchainData: {\n type: SubstrateMessageType.transfer_request;\n scope: SubstratePermissionScope.transfer;\n sourceAddress: string;\n amount: string;\n recipient: string;\n network: {\n genesisHash: string;\n rpc?: string;\n\n mode: "submit" | "submit-and-return" | "return"; // TODO: Wording\n\n}\n'})}),"\n",(0,t.jsx)(n.h3,{id:"transfer-response",children:"Transfer Response"}),"\n",(0,t.jsx)(n.p,{children:"This message is used to share information about a requested operation with the dApp."}),"\n",(0,t.jsx)(n.pre,{children:(0,t.jsx)(n.code,{className:"language-ts",children:"export type SubstrateTransferResponse =\n | {\n transactionHash: string;\n }\n | {\n transactionHash: string;\n signature: string;\n payload?: string;\n }\n | {\n signature: string;\n payload?: string;\n\n"})}),"\n",(0,t.jsx)(n.h3,{id:"sign-payload-request",children:"Sign Payload Request"}),"\n",(0,t.jsx)(n.p,{children:"This message is used to request the signature for a payload."}),"\n",(0,t.jsx)(n.pre,{children:(0,t.jsx)(n.code,{className:"language-ts",children:'export interface SubstrateSignPayloadRequest\n extends BlockchainMessage<"substrate"> {\n blockchainData: {\n type: SubstrateMessageType.sign_payload_request;\n scope:\n | SubstratePermissionScope.sign_payload_json\n | SubstratePermissionScope.sign_payload_json;\n\n // This type is the same as the "SignerPayloadJSON" of polkadot.js https://github.com/polkadot-js/api/blob/f169ca08a80ea9c3865dc545e03e921c50f0d284/packages/types/src/types/extrinsic.ts#L32\n payload:\n | {\n type: "json";\n\n /**\n * @description The checkpoint hash of the block, in hex\n */\n blockHash: string;\n\n /**\n * @description The checkpoint block number, in hex\n */\n blockNumber: string;\n\n /**\n * @description The era for this transaction, in hex\n */\n era: string;\n\n /**\n * @description The genesis hash of the chain, in hex\n */\n genesisHash: string;\n\n /**\n * @description The encoded method (with arguments) in hex\n */\n method: string;\n\n /**\n * @description The nonce for this transaction, in hex\n */\n nonce: string;\n\n /**\n * @description The current spec version for the runtime\n */\n specVersion: string;\n\n /**\n * @description The tip for this transaction, in hex\n */\n tip: string;\n\n /**\n * @description The current transaction version for the runtime\n */\n transactionVersion: string;\n\n /**\n * @description The applicable signed extensions for this runtime\n */\n signedExtensions: string[];\n\n /**\n * @description The version of the extrinsic we are dealing with\n */\n version: number;\n }\n | {\n type: "raw";\n isMutable: boolean;\n dataType: "bytes" | "payload";\n data: string;\n mode: "submit" | "submit-and-return" | "return";\n }\n'})}),"\n",(0,t.jsx)(n.h3,{id:"sign-payload-response",children:"Sign Payload Response"}),"\n",(0,t.jsx)(n.p,{children:"This message is used to share information about a requested signature with the dApp."}),"\n",(0,t.jsx)(n.pre,{children:(0,t.jsx)(n.code,{className:"language-ts",children:"export type SubstrateSignPayloadResponse =\n | {\n transactionHash: string;\n }\n | {\n transactionHash: string;\n signature: string;\n payload?: string;\n }\n | {\n signature: string;\n payload?: string;\n\n"})})]})}function l(e={}){const{wrapper:n}={...(0,i.R)(),...e.components};return n?(0,t.jsx)(n,{...e,children:(0,t.jsx)(d,{...e})}):d(e)}},28453:(e,n,s)=>{s.d(n,{R:()=>r,x:()=>o});var t=s(96540);const i={},a=t.createContext(i);function r(e){const n=t.useContext(a);return t.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function o(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:r(e.components),t.createElement(a.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/388.3d9bfee9.js b/assets/js/388.3d9bfee9.js new file mode 100644 index 00000000..9741dc75 --- /dev/null +++ b/assets/js/388.3d9bfee9.js @@ -0,0 +1,7 @@ +/*! For license information please see 388.3d9bfee9.js.LICENSE.txt */ +(self.webpackChunkbeacon_docs=self.webpackChunkbeacon_docs||[]).push([[388],{67557:(e,t)=>{"use strict";function n(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`positive integer expected, not ${e}`)}function r(e){if("boolean"!=typeof e)throw new Error(`boolean expected, not ${e}`)}function i(e){return e instanceof Uint8Array||null!=e&&"object"==typeof e&&"Uint8Array"===e.constructor.name}function o(e,...t){if(!i(e))throw new Error("Uint8Array expected");if(t.length>0&&!t.includes(e.length))throw new Error(`Uint8Array expected of length ${t}, not of length=${e.length}`)}function s(e){if("function"!=typeof e||"function"!=typeof e.create)throw new Error("Hash should be wrapped by utils.wrapConstructor");n(e.outputLen),n(e.blockLen)}function a(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function c(e,t){o(e);const n=t.outputLen;if(e.length<n)throw new Error(`digestInto() expects output buffer of length at least ${n}`)}Object.defineProperty(t,"__esModule",{value:!0}),t.output=t.exists=t.hash=t.bytes=t.bool=t.number=t.isBytes=void 0,t.number=n,t.bool=r,t.isBytes=i,t.bytes=o,t.hash=s,t.exists=a,t.output=c;const l={number:n,bool:r,bytes:o,hash:s,exists:a,output:c};t.default=l},37202:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.HashMD=t.Maj=t.Chi=void 0;const r=n(67557),i=n(99175);t.Chi=(e,t,n)=>e&t^~e&n;t.Maj=(e,t,n)=>e&t^e&n^t&n;class o extends i.Hash{constructor(e,t,n,r){super(),this.blockLen=e,this.outputLen=t,this.padOffset=n,this.isLE=r,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=(0,i.createView)(this.buffer)}update(e){(0,r.exists)(this);const{view:t,buffer:n,blockLen:o}=this,s=(e=(0,i.toBytes)(e)).length;for(let r=0;r<s;){const a=Math.min(o-this.pos,s-r);if(a!==o)n.set(e.subarray(r,r+a),this.pos),this.pos+=a,r+=a,this.pos===o&&(this.process(t,0),this.pos=0);else{const t=(0,i.createView)(e);for(;o<=s-r;r+=o)this.process(t,r)}}return this.length+=e.length,this.roundClean(),this}digestInto(e){(0,r.exists)(this),(0,r.output)(e,this),this.finished=!0;const{buffer:t,view:n,blockLen:o,isLE:s}=this;let{pos:a}=this;t[a++]=128,this.buffer.subarray(a).fill(0),this.padOffset>o-a&&(this.process(n,0),a=0);for(let r=a;r<o;r++)t[r]=0;!function(e,t,n,r){if("function"==typeof e.setBigUint64)return e.setBigUint64(t,n,r);const i=BigInt(32),o=BigInt(4294967295),s=Number(n>>i&o),a=Number(n&o),c=r?4:0,l=r?0:4;e.setUint32(t+c,s,r),e.setUint32(t+l,a,r)}(n,o-8,BigInt(8*this.length),s),this.process(n,0);const c=(0,i.createView)(e),l=this.outputLen;if(l%4)throw new Error("_sha2: outputLen should be aligned to 32bit");const u=l/4,d=this.get();if(u>d.length)throw new Error("_sha2: outputLen bigger than state");for(let r=0;r<u;r++)c.setUint32(4*r,d[r],s)}digest(){const{buffer:e,outputLen:t}=this;this.digestInto(e);const n=e.slice(0,t);return this.destroy(),n}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());const{blockLen:t,buffer:n,length:r,finished:i,destroyed:o,pos:s}=this;return e.length=r,e.pos=s,e.finished=i,e.destroyed=o,r%t&&e.buffer.set(n),e}}t.HashMD=o},25145:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.crypto=void 0,t.crypto="object"==typeof globalThis&&"crypto"in globalThis?globalThis.crypto:void 0},22623:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.sha224=t.sha256=void 0;const r=n(37202),i=n(99175),o=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),s=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),a=new Uint32Array(64);class c extends r.HashMD{constructor(){super(64,32,8,!1),this.A=0|s[0],this.B=0|s[1],this.C=0|s[2],this.D=0|s[3],this.E=0|s[4],this.F=0|s[5],this.G=0|s[6],this.H=0|s[7]}get(){const{A:e,B:t,C:n,D:r,E:i,F:o,G:s,H:a}=this;return[e,t,n,r,i,o,s,a]}set(e,t,n,r,i,o,s,a){this.A=0|e,this.B=0|t,this.C=0|n,this.D=0|r,this.E=0|i,this.F=0|o,this.G=0|s,this.H=0|a}process(e,t){for(let r=0;r<16;r++,t+=4)a[r]=e.getUint32(t,!1);for(let r=16;r<64;r++){const e=a[r-15],t=a[r-2],n=(0,i.rotr)(e,7)^(0,i.rotr)(e,18)^e>>>3,o=(0,i.rotr)(t,17)^(0,i.rotr)(t,19)^t>>>10;a[r]=o+a[r-7]+n+a[r-16]|0}let{A:n,B:s,C:c,D:l,E:u,F:d,G:_,H:p}=this;for(let f=0;f<64;f++){const e=p+((0,i.rotr)(u,6)^(0,i.rotr)(u,11)^(0,i.rotr)(u,25))+(0,r.Chi)(u,d,_)+o[f]+a[f]|0,t=((0,i.rotr)(n,2)^(0,i.rotr)(n,13)^(0,i.rotr)(n,22))+(0,r.Maj)(n,s,c)|0;p=_,_=d,d=u,u=l+e|0,l=c,c=s,s=n,n=e+t|0}n=n+this.A|0,s=s+this.B|0,c=c+this.C|0,l=l+this.D|0,u=u+this.E|0,d=d+this.F|0,_=_+this.G|0,p=p+this.H|0,this.set(n,s,c,l,u,d,_,p)}roundClean(){a.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}}class l extends c{constructor(){super(),this.A=-1056596264,this.B=914150663,this.C=812702999,this.D=-150054599,this.E=-4191439,this.F=1750603025,this.G=1694076839,this.H=-1090891868,this.outputLen=28}}t.sha256=(0,i.wrapConstructor)((()=>new c)),t.sha224=(0,i.wrapConstructor)((()=>new l))},99175:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.randomBytes=t.wrapXOFConstructorWithOpts=t.wrapConstructorWithOpts=t.wrapConstructor=t.checkOpts=t.Hash=t.concatBytes=t.toBytes=t.utf8ToBytes=t.asyncLoop=t.nextTick=t.hexToBytes=t.bytesToHex=t.byteSwap32=t.byteSwapIfBE=t.byteSwap=t.isLE=t.rotl=t.rotr=t.createView=t.u32=t.u8=t.isBytes=void 0;const r=n(25145),i=n(67557);t.isBytes=function(e){return e instanceof Uint8Array||null!=e&&"object"==typeof e&&"Uint8Array"===e.constructor.name};t.u8=e=>new Uint8Array(e.buffer,e.byteOffset,e.byteLength);t.u32=e=>new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4));t.createView=e=>new DataView(e.buffer,e.byteOffset,e.byteLength);t.rotr=(e,t)=>e<<32-t|e>>>t;t.rotl=(e,t)=>e<<t|e>>>32-t>>>0,t.isLE=68===new Uint8Array(new Uint32Array([287454020]).buffer)[0];t.byteSwap=e=>e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255,t.byteSwapIfBE=t.isLE?e=>e:e=>(0,t.byteSwap)(e),t.byteSwap32=function(e){for(let n=0;n<e.length;n++)e[n]=(0,t.byteSwap)(e[n])};const o=Array.from({length:256},((e,t)=>t.toString(16).padStart(2,"0")));t.bytesToHex=function(e){(0,i.bytes)(e);let t="";for(let n=0;n<e.length;n++)t+=o[e[n]];return t};const s={_0:48,_9:57,_A:65,_F:70,_a:97,_f:102};function a(e){return e>=s._0&&e<=s._9?e-s._0:e>=s._A&&e<=s._F?e-(s._A-10):e>=s._a&&e<=s._f?e-(s._a-10):void 0}t.hexToBytes=function(e){if("string"!=typeof e)throw new Error("hex string expected, got "+typeof e);const t=e.length,n=t/2;if(t%2)throw new Error("padded hex string expected, got unpadded hex of length "+t);const r=new Uint8Array(n);for(let i=0,o=0;i<n;i++,o+=2){const t=a(e.charCodeAt(o)),n=a(e.charCodeAt(o+1));if(void 0===t||void 0===n){const t=e[o]+e[o+1];throw new Error('hex string expected, got non-hex character "'+t+'" at index '+o)}r[i]=16*t+n}return r};function c(e){if("string"!=typeof e)throw new Error("utf8ToBytes expected string, got "+typeof e);return new Uint8Array((new TextEncoder).encode(e))}function l(e){return"string"==typeof e&&(e=c(e)),(0,i.bytes)(e),e}t.nextTick=async()=>{},t.asyncLoop=async function(e,n,r){let i=Date.now();for(let o=0;o<e;o++){r(o);const e=Date.now()-i;e>=0&&e<n||(await(0,t.nextTick)(),i+=e)}},t.utf8ToBytes=c,t.toBytes=l,t.concatBytes=function(...e){let t=0;for(let r=0;r<e.length;r++){const n=e[r];(0,i.bytes)(n),t+=n.length}const n=new Uint8Array(t);for(let r=0,i=0;r<e.length;r++){const t=e[r];n.set(t,i),i+=t.length}return n};t.Hash=class{clone(){return this._cloneInto()}};const u={}.toString;t.checkOpts=function(e,t){if(void 0!==t&&"[object Object]"!==u.call(t))throw new Error("Options should be object or undefined");return Object.assign(e,t)},t.wrapConstructor=function(e){const t=t=>e().update(l(t)).digest(),n=e();return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=()=>e(),t},t.wrapConstructorWithOpts=function(e){const t=(t,n)=>e(n).update(l(t)).digest(),n=e({});return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=t=>e(t),t},t.wrapXOFConstructorWithOpts=function(e){const t=(t,n)=>e(n).update(l(t)).digest(),n=e({});return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=t=>e(t),t},t.randomBytes=function(e=32){if(r.crypto&&"function"==typeof r.crypto.getRandomValues)return r.crypto.getRandomValues(new Uint8Array(e));throw new Error("crypto.getRandomValues must be defined")}},30972:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(74512);function i(e,t,n){return void 0===t&&(t=new Uint8Array(2)),void 0===n&&(n=0),t[n+0]=e>>>8,t[n+1]=e>>>0,t}function o(e,t,n){return void 0===t&&(t=new Uint8Array(2)),void 0===n&&(n=0),t[n+0]=e>>>0,t[n+1]=e>>>8,t}function s(e,t){return void 0===t&&(t=0),e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3]}function a(e,t){return void 0===t&&(t=0),(e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3])>>>0}function c(e,t){return void 0===t&&(t=0),e[t+3]<<24|e[t+2]<<16|e[t+1]<<8|e[t]}function l(e,t){return void 0===t&&(t=0),(e[t+3]<<24|e[t+2]<<16|e[t+1]<<8|e[t])>>>0}function u(e,t,n){return void 0===t&&(t=new Uint8Array(4)),void 0===n&&(n=0),t[n+0]=e>>>24,t[n+1]=e>>>16,t[n+2]=e>>>8,t[n+3]=e>>>0,t}function d(e,t,n){return void 0===t&&(t=new Uint8Array(4)),void 0===n&&(n=0),t[n+0]=e>>>0,t[n+1]=e>>>8,t[n+2]=e>>>16,t[n+3]=e>>>24,t}function _(e,t,n){return void 0===t&&(t=new Uint8Array(8)),void 0===n&&(n=0),u(e/4294967296>>>0,t,n),u(e>>>0,t,n+4),t}function p(e,t,n){return void 0===t&&(t=new Uint8Array(8)),void 0===n&&(n=0),d(e>>>0,t,n),d(e/4294967296>>>0,t,n+4),t}t.readInt16BE=function(e,t){return void 0===t&&(t=0),(e[t+0]<<8|e[t+1])<<16>>16},t.readUint16BE=function(e,t){return void 0===t&&(t=0),(e[t+0]<<8|e[t+1])>>>0},t.readInt16LE=function(e,t){return void 0===t&&(t=0),(e[t+1]<<8|e[t])<<16>>16},t.readUint16LE=function(e,t){return void 0===t&&(t=0),(e[t+1]<<8|e[t])>>>0},t.writeUint16BE=i,t.writeInt16BE=i,t.writeUint16LE=o,t.writeInt16LE=o,t.readInt32BE=s,t.readUint32BE=a,t.readInt32LE=c,t.readUint32LE=l,t.writeUint32BE=u,t.writeInt32BE=u,t.writeUint32LE=d,t.writeInt32LE=d,t.readInt64BE=function(e,t){void 0===t&&(t=0);var n=s(e,t),r=s(e,t+4);return 4294967296*n+r-4294967296*(r>>31)},t.readUint64BE=function(e,t){return void 0===t&&(t=0),4294967296*a(e,t)+a(e,t+4)},t.readInt64LE=function(e,t){void 0===t&&(t=0);var n=c(e,t);return 4294967296*c(e,t+4)+n-4294967296*(n>>31)},t.readUint64LE=function(e,t){void 0===t&&(t=0);var n=l(e,t);return 4294967296*l(e,t+4)+n},t.writeUint64BE=_,t.writeInt64BE=_,t.writeUint64LE=p,t.writeInt64LE=p,t.readUintBE=function(e,t,n){if(void 0===n&&(n=0),e%8!=0)throw new Error("readUintBE supports only bitLengths divisible by 8");if(e/8>t.length-n)throw new Error("readUintBE: array is too short for the given bitLength");for(var r=0,i=1,o=e/8+n-1;o>=n;o--)r+=t[o]*i,i*=256;return r},t.readUintLE=function(e,t,n){if(void 0===n&&(n=0),e%8!=0)throw new Error("readUintLE supports only bitLengths divisible by 8");if(e/8>t.length-n)throw new Error("readUintLE: array is too short for the given bitLength");for(var r=0,i=1,o=n;o<n+e/8;o++)r+=t[o]*i,i*=256;return r},t.writeUintBE=function(e,t,n,i){if(void 0===n&&(n=new Uint8Array(e/8)),void 0===i&&(i=0),e%8!=0)throw new Error("writeUintBE supports only bitLengths divisible by 8");if(!r.isSafeInteger(t))throw new Error("writeUintBE value must be an integer");for(var o=1,s=e/8+i-1;s>=i;s--)n[s]=t/o&255,o*=256;return n},t.writeUintLE=function(e,t,n,i){if(void 0===n&&(n=new Uint8Array(e/8)),void 0===i&&(i=0),e%8!=0)throw new Error("writeUintLE supports only bitLengths divisible by 8");if(!r.isSafeInteger(t))throw new Error("writeUintLE value must be an integer");for(var o=1,s=i;s<i+e/8;s++)n[s]=t/o&255,o*=256;return n},t.readFloat32BE=function(e,t){return void 0===t&&(t=0),new DataView(e.buffer,e.byteOffset,e.byteLength).getFloat32(t)},t.readFloat32LE=function(e,t){return void 0===t&&(t=0),new DataView(e.buffer,e.byteOffset,e.byteLength).getFloat32(t,!0)},t.readFloat64BE=function(e,t){return void 0===t&&(t=0),new DataView(e.buffer,e.byteOffset,e.byteLength).getFloat64(t)},t.readFloat64LE=function(e,t){return void 0===t&&(t=0),new DataView(e.buffer,e.byteOffset,e.byteLength).getFloat64(t,!0)},t.writeFloat32BE=function(e,t,n){return void 0===t&&(t=new Uint8Array(4)),void 0===n&&(n=0),new DataView(t.buffer,t.byteOffset,t.byteLength).setFloat32(n,e),t},t.writeFloat32LE=function(e,t,n){return void 0===t&&(t=new Uint8Array(4)),void 0===n&&(n=0),new DataView(t.buffer,t.byteOffset,t.byteLength).setFloat32(n,e,!0),t},t.writeFloat64BE=function(e,t,n){return void 0===t&&(t=new Uint8Array(8)),void 0===n&&(n=0),new DataView(t.buffer,t.byteOffset,t.byteLength).setFloat64(n,e),t},t.writeFloat64LE=function(e,t,n){return void 0===t&&(t=new Uint8Array(8)),void 0===n&&(n=0),new DataView(t.buffer,t.byteOffset,t.byteLength).setFloat64(n,e,!0),t}},19444:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(30972),i=n(76228);t.BLOCK_SIZE=128,t.DIGEST_LENGTH=64,t.KEY_LENGTH=64,t.PERSONALIZATION_LENGTH=16,t.SALT_LENGTH=16,t.MAX_LEAF_SIZE=Math.pow(2,32)-1,t.MAX_FANOUT=255,t.MAX_MAX_DEPTH=255;var o=new Uint32Array([4089235720,1779033703,2227873595,3144134277,4271175723,1013904242,1595750129,2773480762,2917565137,1359893119,725511199,2600822924,4215389547,528734635,327033209,1541459225]),s=[[0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30],[28,20,8,16,18,30,26,12,2,24,0,4,22,14,10,6],[22,16,24,0,10,4,30,26,20,28,6,12,14,2,18,8],[14,18,6,2,26,24,22,28,4,12,10,20,8,0,30,16],[18,0,10,14,4,8,20,30,28,2,22,24,12,16,6,26],[4,24,12,20,0,22,16,6,8,26,14,10,30,28,2,18],[24,10,2,30,28,26,8,20,0,14,12,6,18,4,16,22],[26,22,14,28,24,2,6,18,10,0,30,8,16,12,4,20],[12,30,28,18,22,6,0,16,24,4,26,14,2,8,20,10],[20,4,16,8,14,12,2,10,30,22,18,28,6,24,26,0],[0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30],[28,20,8,16,18,30,26,12,2,24,0,4,22,14,10,6]],a=function(){function e(e,n){if(void 0===e&&(e=64),this.digestLength=e,this.blockSize=t.BLOCK_SIZE,this._state=new Int32Array(o),this._buffer=new Uint8Array(t.BLOCK_SIZE),this._bufferLength=0,this._ctr=new Uint32Array(4),this._flag=new Uint32Array(4),this._lastNode=!1,this._finished=!1,this._vtmp=new Uint32Array(32),this._mtmp=new Uint32Array(32),e<1||e>t.DIGEST_LENGTH)throw new Error("blake2b: wrong digest length");n&&this.validateConfig(n);var i=0;n&&n.key&&(i=n.key.length);var s=1,a=1;n&&n.tree&&(s=n.tree.fanout,a=n.tree.maxDepth),this._state[0]^=e|i<<8|s<<16|a<<24,n&&n.tree&&(this._state[1]^=n.tree.leafSize,this._state[2]^=n.tree.nodeOffsetLowBits,this._state[3]^=n.tree.nodeOffsetHighBits,this._state[4]^=n.tree.nodeDepth|n.tree.innerDigestLength<<8,this._lastNode=n.tree.lastNode),n&&n.salt&&(this._state[8]^=r.readUint32LE(n.salt,0),this._state[9]^=r.readUint32LE(n.salt,4),this._state[10]^=r.readUint32LE(n.salt,8),this._state[11]^=r.readUint32LE(n.salt,12)),n&&n.personalization&&(this._state[12]^=r.readUint32LE(n.personalization,0),this._state[13]^=r.readUint32LE(n.personalization,4),this._state[14]^=r.readUint32LE(n.personalization,8),this._state[15]^=r.readUint32LE(n.personalization,12)),this._initialState=new Uint32Array(this._state),n&&n.key&&i>0&&(this._paddedKey=new Uint8Array(t.BLOCK_SIZE),this._paddedKey.set(n.key),this._buffer.set(this._paddedKey),this._bufferLength=t.BLOCK_SIZE)}return e.prototype.reset=function(){return this._state.set(this._initialState),this._paddedKey?(this._buffer.set(this._paddedKey),this._bufferLength=t.BLOCK_SIZE):this._bufferLength=0,i.wipe(this._ctr),i.wipe(this._flag),this._finished=!1,this},e.prototype.validateConfig=function(e){if(e.key&&e.key.length>t.KEY_LENGTH)throw new Error("blake2b: wrong key length");if(e.salt&&e.salt.length!==t.SALT_LENGTH)throw new Error("blake2b: wrong salt length");if(e.personalization&&e.personalization.length!==t.PERSONALIZATION_LENGTH)throw new Error("blake2b: wrong personalization length");if(e.tree){if(e.tree.fanout<0||e.tree.fanout>t.MAX_FANOUT)throw new Error("blake2b: wrong tree fanout");if(e.tree.maxDepth<0||e.tree.maxDepth>t.MAX_MAX_DEPTH)throw new Error("blake2b: wrong tree depth");if(e.tree.leafSize<0||e.tree.leafSize>t.MAX_LEAF_SIZE)throw new Error("blake2b: wrong leaf size");if(e.tree.innerDigestLength<0||e.tree.innerDigestLength>t.DIGEST_LENGTH)throw new Error("blake2b: wrong tree inner digest length")}},e.prototype.update=function(e,n){if(void 0===n&&(n=e.length),this._finished)throw new Error("blake2b: can't update because hash was finished.");var r=t.BLOCK_SIZE-this._bufferLength,i=0;if(0===n)return this;if(n>r){for(var o=0;o<r;o++)this._buffer[this._bufferLength+o]=e[i+o];this._processBlock(t.BLOCK_SIZE),i+=r,n-=r,this._bufferLength=0}for(;n>t.BLOCK_SIZE;){for(o=0;o<t.BLOCK_SIZE;o++)this._buffer[o]=e[i+o];this._processBlock(t.BLOCK_SIZE),i+=t.BLOCK_SIZE,n-=t.BLOCK_SIZE,this._bufferLength=0}for(o=0;o<n;o++)this._buffer[this._bufferLength+o]=e[i+o];return this._bufferLength+=n,this},e.prototype.finish=function(e){if(!this._finished){for(var n=this._bufferLength;n<t.BLOCK_SIZE;n++)this._buffer[n]=0;this._flag[0]=4294967295,this._flag[1]=4294967295,this._lastNode&&(this._flag[2]=4294967295,this._flag[3]=4294967295),this._processBlock(this._bufferLength),this._finished=!0}var i=this._buffer.subarray(0,64);for(n=0;n<16;n++)r.writeUint32LE(this._state[n],i,4*n);return e.set(i.subarray(0,e.length)),this},e.prototype.digest=function(){var e=new Uint8Array(this.digestLength);return this.finish(e),e},e.prototype.clean=function(){i.wipe(this._vtmp),i.wipe(this._mtmp),i.wipe(this._state),i.wipe(this._buffer),i.wipe(this._initialState),this._paddedKey&&i.wipe(this._paddedKey),this._bufferLength=0,i.wipe(this._ctr),i.wipe(this._flag),this._lastNode=!1,this._finished=!1},e.prototype.saveState=function(){if(this._finished)throw new Error("blake2b: cannot save finished state");return{state:new Uint32Array(this._state),buffer:new Uint8Array(this._buffer),bufferLength:this._bufferLength,ctr:new Uint32Array(this._ctr),flag:new Uint32Array(this._flag),lastNode:this._lastNode,paddedKey:this._paddedKey?new Uint8Array(this._paddedKey):void 0,initialState:new Uint32Array(this._initialState)}},e.prototype.restoreState=function(e){return this._state.set(e.state),this._buffer.set(e.buffer),this._bufferLength=e.bufferLength,this._ctr.set(e.ctr),this._flag.set(e.flag),this._lastNode=e.lastNode,this._paddedKey&&i.wipe(this._paddedKey),this._paddedKey=e.paddedKey?new Uint8Array(e.paddedKey):void 0,this._initialState.set(e.initialState),this},e.prototype.cleanSavedState=function(e){i.wipe(e.state),i.wipe(e.buffer),i.wipe(e.initialState),e.paddedKey&&i.wipe(e.paddedKey),e.bufferLength=0,i.wipe(e.ctr),i.wipe(e.flag),e.lastNode=!1},e.prototype._G=function(e,t,n,r,i,o,s,a,c,l,u,d,_){var p=e[t],f=e[o],m=e[n],h=e[s],g=e[r],y=e[a],v=e[i],b=e[c],x=65535&p,S=p>>>16,T=65535&f,w=f>>>16;S+=m>>>16,T+=65535&h,w+=h>>>16,T+=(S+=(x+=65535&m)>>>16)>>>16,x=65535&(p=65535&x|S<<16),S=p>>>16,T=65535&(f=65535&T|(w+=T>>>16)<<16),w=f>>>16,S+=l>>>16,T+=65535&u,w+=u>>>16,p=65535&(x+=65535&l)|(S+=x>>>16)<<16,x=b^=f=65535&(T+=S>>>16)|(w+=T>>>16)<<16,b=v^=p,v=x,x=65535&g,S=g>>>16,T=65535&y,w=y>>>16,S+=v>>>16,T+=65535&b,w+=b>>>16,x=(m^=g=65535&(x+=65535&v)|(S+=x>>>16)<<16)<<8|(h^=y=65535&(T+=S>>>16)|(w+=T>>>16)<<16)>>>24,m=h<<8|m>>>24,h=x,x=65535&p,S=p>>>16,T=65535&f,w=f>>>16,S+=m>>>16,T+=65535&h,w+=h>>>16,T+=(S+=(x+=65535&m)>>>16)>>>16,x=65535&(p=65535&x|S<<16),S=p>>>16,T=65535&(f=65535&T|(w+=T>>>16)<<16),w=f>>>16,S+=d>>>16,T+=65535&_,w+=_>>>16,x=(v^=p=65535&(x+=65535&d)|(S+=x>>>16)<<16)<<16|(b^=f=65535&(T+=S>>>16)|(w+=T>>>16)<<16)>>>16,v=b<<16|v>>>16,b=x,x=65535&g,S=g>>>16,T=65535&y,w=y>>>16,S+=v>>>16,T+=65535&b,w+=b>>>16,x=(h^=y=65535&(T+=(S+=(x+=65535&v)>>>16)>>>16)|(w+=T>>>16)<<16)<<1|(m^=g=65535&x|S<<16)>>>31,m=m<<1|h>>>31,h=x,e[t]=p,e[o]=f,e[n]=m,e[s]=h,e[r]=g,e[a]=y,e[i]=v,e[c]=b},e.prototype._incrementCounter=function(e){for(var t=0;t<3;t++){var n=this._ctr[t]+e;if(this._ctr[t]=n>>>0,this._ctr[t]===n)return;e=1}},e.prototype._processBlock=function(e){this._incrementCounter(e);var t=this._vtmp;t.set(this._state),t.set(o,16),t[24]^=this._ctr[0],t[25]^=this._ctr[1],t[26]^=this._ctr[2],t[27]^=this._ctr[3],t[28]^=this._flag[0],t[29]^=this._flag[1],t[30]^=this._flag[2],t[31]^=this._flag[3];for(var n=this._mtmp,i=0;i<32;i++)n[i]=r.readUint32LE(this._buffer,4*i);for(var a=0;a<12;a++)this._G(t,0,8,16,24,1,9,17,25,n[s[a][0]],n[s[a][0]+1],n[s[a][1]],n[s[a][1]+1]),this._G(t,2,10,18,26,3,11,19,27,n[s[a][2]],n[s[a][2]+1],n[s[a][3]],n[s[a][3]+1]),this._G(t,4,12,20,28,5,13,21,29,n[s[a][4]],n[s[a][4]+1],n[s[a][5]],n[s[a][5]+1]),this._G(t,6,14,22,30,7,15,23,31,n[s[a][6]],n[s[a][6]+1],n[s[a][7]],n[s[a][7]+1]),this._G(t,0,10,20,30,1,11,21,31,n[s[a][8]],n[s[a][8]+1],n[s[a][9]],n[s[a][9]+1]),this._G(t,2,12,22,24,3,13,23,25,n[s[a][10]],n[s[a][10]+1],n[s[a][11]],n[s[a][11]+1]),this._G(t,4,14,16,26,5,15,17,27,n[s[a][12]],n[s[a][12]+1],n[s[a][13]],n[s[a][13]+1]),this._G(t,6,8,18,28,7,9,19,29,n[s[a][14]],n[s[a][14]+1],n[s[a][15]],n[s[a][15]+1]);for(i=0;i<16;i++)this._state[i]^=t[i]^t[i+16]},e}();t.BLAKE2b=a,t.hash=function(e,n,r){void 0===n&&(n=t.DIGEST_LENGTH);var i=new a(n,r);i.update(e);var o=i.digest();return i.clean(),o}},14028:(e,t)=>{"use strict";t.x=function(){for(var e=0,t=0;t<arguments.length;t++)e+=arguments[t].length;var n=new Uint8Array(e),r=0;for(t=0;t<arguments.length;t++){var i=arguments[t];n.set(i,r),r+=i.length}return n}},29918:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(30972),i=n(76228),o=20;function s(e,t,n){for(var i=1634760805,s=857760878,a=2036477234,c=1797285236,l=n[3]<<24|n[2]<<16|n[1]<<8|n[0],u=n[7]<<24|n[6]<<16|n[5]<<8|n[4],d=n[11]<<24|n[10]<<16|n[9]<<8|n[8],_=n[15]<<24|n[14]<<16|n[13]<<8|n[12],p=n[19]<<24|n[18]<<16|n[17]<<8|n[16],f=n[23]<<24|n[22]<<16|n[21]<<8|n[20],m=n[27]<<24|n[26]<<16|n[25]<<8|n[24],h=n[31]<<24|n[30]<<16|n[29]<<8|n[28],g=t[3]<<24|t[2]<<16|t[1]<<8|t[0],y=t[7]<<24|t[6]<<16|t[5]<<8|t[4],v=t[11]<<24|t[10]<<16|t[9]<<8|t[8],b=t[15]<<24|t[14]<<16|t[13]<<8|t[12],x=i,S=s,T=a,w=c,k=l,E=u,C=d,N=_,A=p,I=f,D=m,P=h,M=g,O=y,F=v,R=b,L=0;L<o;L+=2)k=(k^=A=A+(M=(M^=x=x+k|0)>>>16|M<<16)|0)>>>20|k<<12,E=(E^=I=I+(O=(O^=S=S+E|0)>>>16|O<<16)|0)>>>20|E<<12,C=(C^=D=D+(F=(F^=T=T+C|0)>>>16|F<<16)|0)>>>20|C<<12,N=(N^=P=P+(R=(R^=w=w+N|0)>>>16|R<<16)|0)>>>20|N<<12,C=(C^=D=D+(F=(F^=T=T+C|0)>>>24|F<<8)|0)>>>25|C<<7,N=(N^=P=P+(R=(R^=w=w+N|0)>>>24|R<<8)|0)>>>25|N<<7,E=(E^=I=I+(O=(O^=S=S+E|0)>>>24|O<<8)|0)>>>25|E<<7,k=(k^=A=A+(M=(M^=x=x+k|0)>>>24|M<<8)|0)>>>25|k<<7,E=(E^=D=D+(R=(R^=x=x+E|0)>>>16|R<<16)|0)>>>20|E<<12,C=(C^=P=P+(M=(M^=S=S+C|0)>>>16|M<<16)|0)>>>20|C<<12,N=(N^=A=A+(O=(O^=T=T+N|0)>>>16|O<<16)|0)>>>20|N<<12,k=(k^=I=I+(F=(F^=w=w+k|0)>>>16|F<<16)|0)>>>20|k<<12,N=(N^=A=A+(O=(O^=T=T+N|0)>>>24|O<<8)|0)>>>25|N<<7,k=(k^=I=I+(F=(F^=w=w+k|0)>>>24|F<<8)|0)>>>25|k<<7,C=(C^=P=P+(M=(M^=S=S+C|0)>>>24|M<<8)|0)>>>25|C<<7,E=(E^=D=D+(R=(R^=x=x+E|0)>>>24|R<<8)|0)>>>25|E<<7;r.writeUint32LE(x+i|0,e,0),r.writeUint32LE(S+s|0,e,4),r.writeUint32LE(T+a|0,e,8),r.writeUint32LE(w+c|0,e,12),r.writeUint32LE(k+l|0,e,16),r.writeUint32LE(E+u|0,e,20),r.writeUint32LE(C+d|0,e,24),r.writeUint32LE(N+_|0,e,28),r.writeUint32LE(A+p|0,e,32),r.writeUint32LE(I+f|0,e,36),r.writeUint32LE(D+m|0,e,40),r.writeUint32LE(P+h|0,e,44),r.writeUint32LE(M+g|0,e,48),r.writeUint32LE(O+y|0,e,52),r.writeUint32LE(F+v|0,e,56),r.writeUint32LE(R+b|0,e,60)}function a(e,t,n,r,o){if(void 0===o&&(o=0),32!==e.length)throw new Error("ChaCha: key size must be 32 bytes");if(r.length<n.length)throw new Error("ChaCha: destination is shorter than source");var a,l;if(0===o){if(8!==t.length&&12!==t.length)throw new Error("ChaCha nonce must be 8 or 12 bytes");l=(a=new Uint8Array(16)).length-t.length,a.set(t,l)}else{if(16!==t.length)throw new Error("ChaCha nonce with counter must be 16 bytes");a=t,l=o}for(var u=new Uint8Array(64),d=0;d<n.length;d+=64){s(u,a,e);for(var _=d;_<d+64&&_<n.length;_++)r[_]=n[_]^u[_-d];c(a,0,l)}return i.wipe(u),0===o&&i.wipe(a),r}function c(e,t,n){for(var r=1;n--;)r=r+(255&e[t])|0,e[t]=255&r,r>>>=8,t++;if(r>0)throw new Error("ChaCha: counter overflow")}t.streamXOR=a,t.stream=function(e,t,n,r){return void 0===r&&(r=0),i.wipe(n),a(e,t,n,n,r)}},51612:(e,t,n)=>{"use strict";var r=n(29918),i=n(77360),o=n(76228),s=n(30972),a=n(26452);t.J4=32,t.PX=12,t.iW=16;var c=new Uint8Array(16),l=function(){function e(e){if(this.nonceLength=t.PX,this.tagLength=t.iW,e.length!==t.J4)throw new Error("ChaCha20Poly1305 needs 32-byte key");this._key=new Uint8Array(e)}return e.prototype.seal=function(e,t,n,i){if(e.length>16)throw new Error("ChaCha20Poly1305: incorrect nonce length");var s=new Uint8Array(16);s.set(e,s.length-e.length);var a=new Uint8Array(32);r.stream(this._key,s,a,4);var c,l=t.length+this.tagLength;if(i){if(i.length!==l)throw new Error("ChaCha20Poly1305: incorrect destination length");c=i}else c=new Uint8Array(l);return r.streamXOR(this._key,s,t,c,4),this._authenticate(c.subarray(c.length-this.tagLength,c.length),a,c.subarray(0,c.length-this.tagLength),n),o.wipe(s),c},e.prototype.open=function(e,t,n,i){if(e.length>16)throw new Error("ChaCha20Poly1305: incorrect nonce length");if(t.length<this.tagLength)return null;var s=new Uint8Array(16);s.set(e,s.length-e.length);var c=new Uint8Array(32);r.stream(this._key,s,c,4);var l=new Uint8Array(this.tagLength);if(this._authenticate(l,c,t.subarray(0,t.length-this.tagLength),n),!a.equal(l,t.subarray(t.length-this.tagLength,t.length)))return null;var u,d=t.length-this.tagLength;if(i){if(i.length!==d)throw new Error("ChaCha20Poly1305: incorrect destination length");u=i}else u=new Uint8Array(d);return r.streamXOR(this._key,s,t.subarray(0,t.length-this.tagLength),u,4),o.wipe(s),u},e.prototype.clean=function(){return o.wipe(this._key),this},e.prototype._authenticate=function(e,t,n,r){var a=new i.Poly1305(t);r&&(a.update(r),r.length%16>0&&a.update(c.subarray(r.length%16))),a.update(n),n.length%16>0&&a.update(c.subarray(n.length%16));var l=new Uint8Array(8);r&&s.writeUint64LE(r.length,l),a.update(l),s.writeUint64LE(n.length,l),a.update(l);for(var u=a.digest(),d=0;d<u.length;d++)e[d]=u[d];a.clean(),o.wipe(u),o.wipe(l)},e}();t.g6=l},26452:(e,t)=>{"use strict";function n(e,t){if(e.length!==t.length)return 0;for(var n=0,r=0;r<e.length;r++)n|=e[r]^t[r];return 1&n-1>>>8}Object.defineProperty(t,"__esModule",{value:!0}),t.select=function(e,t,n){return~(e-1)&t|e-1&n},t.lessOrEqual=function(e,t){return(0|e)-(0|t)-1>>>31&1},t.compare=n,t.equal=function(e,t){return 0!==e.length&&0!==t.length&&0!==n(e,t)}},34904:(e,t,n)=>{"use strict";t.a_=t.J$=t._S=t.K=t.TP=t.wE=t.Ee=void 0;const r=n(37052),i=n(64974),o=n(76228);function s(e){const t=new Float64Array(16);if(e)for(let n=0;n<e.length;n++)t[n]=e[n];return t}t.Ee=64,t.wE=64,t.TP=32;new Uint8Array(32)[0]=9;const a=s(),c=s([1]),l=s([30883,4953,19914,30187,55467,16705,2637,112,59544,30585,16505,36039,65139,11119,27886,20995]),u=s([61785,9906,39828,60374,45398,33411,5274,224,53552,61171,33010,6542,64743,22239,55772,9222]),d=s([54554,36645,11616,51542,42930,38181,51040,26924,56412,64982,57905,49316,21502,52590,14035,8553]),_=s([26200,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214]),p=s([41136,18958,6951,50414,58488,44335,6150,12099,55207,15867,153,11085,57099,20417,9344,11139]);function f(e,t){for(let n=0;n<16;n++)e[n]=0|t[n]}function m(e){let t=1;for(let n=0;n<16;n++){let r=e[n]+t+65535;t=Math.floor(r/65536),e[n]=r-65536*t}e[0]+=t-1+37*(t-1)}function h(e,t,n){const r=~(n-1);for(let i=0;i<16;i++){const n=r&(e[i]^t[i]);e[i]^=n,t[i]^=n}}function g(e,t){const n=s(),r=s();for(let i=0;i<16;i++)r[i]=t[i];m(r),m(r),m(r);for(let i=0;i<2;i++){n[0]=r[0]-65517;for(let t=1;t<15;t++)n[t]=r[t]-65535-(n[t-1]>>16&1),n[t-1]&=65535;n[15]=r[15]-32767-(n[14]>>16&1);const e=n[15]>>16&1;n[14]&=65535,h(r,n,1-e)}for(let i=0;i<16;i++)e[2*i]=255&r[i],e[2*i+1]=r[i]>>8}function y(e,t){let n=0;for(let r=0;r<32;r++)n|=e[r]^t[r];return(1&n-1>>>8)-1}function v(e,t){const n=new Uint8Array(32),r=new Uint8Array(32);return g(n,e),g(r,t),y(n,r)}function b(e){const t=new Uint8Array(32);return g(t,e),1&t[0]}function x(e,t,n){for(let r=0;r<16;r++)e[r]=t[r]+n[r]}function S(e,t,n){for(let r=0;r<16;r++)e[r]=t[r]-n[r]}function T(e,t,n){let r,i,o=0,s=0,a=0,c=0,l=0,u=0,d=0,_=0,p=0,f=0,m=0,h=0,g=0,y=0,v=0,b=0,x=0,S=0,T=0,w=0,k=0,E=0,C=0,N=0,A=0,I=0,D=0,P=0,M=0,O=0,F=0,R=n[0],L=n[1],j=n[2],z=n[3],U=n[4],B=n[5],q=n[6],V=n[7],K=n[8],J=n[9],W=n[10],H=n[11],G=n[12],Q=n[13],Y=n[14],Z=n[15];r=t[0],o+=r*R,s+=r*L,a+=r*j,c+=r*z,l+=r*U,u+=r*B,d+=r*q,_+=r*V,p+=r*K,f+=r*J,m+=r*W,h+=r*H,g+=r*G,y+=r*Q,v+=r*Y,b+=r*Z,r=t[1],s+=r*R,a+=r*L,c+=r*j,l+=r*z,u+=r*U,d+=r*B,_+=r*q,p+=r*V,f+=r*K,m+=r*J,h+=r*W,g+=r*H,y+=r*G,v+=r*Q,b+=r*Y,x+=r*Z,r=t[2],a+=r*R,c+=r*L,l+=r*j,u+=r*z,d+=r*U,_+=r*B,p+=r*q,f+=r*V,m+=r*K,h+=r*J,g+=r*W,y+=r*H,v+=r*G,b+=r*Q,x+=r*Y,S+=r*Z,r=t[3],c+=r*R,l+=r*L,u+=r*j,d+=r*z,_+=r*U,p+=r*B,f+=r*q,m+=r*V,h+=r*K,g+=r*J,y+=r*W,v+=r*H,b+=r*G,x+=r*Q,S+=r*Y,T+=r*Z,r=t[4],l+=r*R,u+=r*L,d+=r*j,_+=r*z,p+=r*U,f+=r*B,m+=r*q,h+=r*V,g+=r*K,y+=r*J,v+=r*W,b+=r*H,x+=r*G,S+=r*Q,T+=r*Y,w+=r*Z,r=t[5],u+=r*R,d+=r*L,_+=r*j,p+=r*z,f+=r*U,m+=r*B,h+=r*q,g+=r*V,y+=r*K,v+=r*J,b+=r*W,x+=r*H,S+=r*G,T+=r*Q,w+=r*Y,k+=r*Z,r=t[6],d+=r*R,_+=r*L,p+=r*j,f+=r*z,m+=r*U,h+=r*B,g+=r*q,y+=r*V,v+=r*K,b+=r*J,x+=r*W,S+=r*H,T+=r*G,w+=r*Q,k+=r*Y,E+=r*Z,r=t[7],_+=r*R,p+=r*L,f+=r*j,m+=r*z,h+=r*U,g+=r*B,y+=r*q,v+=r*V,b+=r*K,x+=r*J,S+=r*W,T+=r*H,w+=r*G,k+=r*Q,E+=r*Y,C+=r*Z,r=t[8],p+=r*R,f+=r*L,m+=r*j,h+=r*z,g+=r*U,y+=r*B,v+=r*q,b+=r*V,x+=r*K,S+=r*J,T+=r*W,w+=r*H,k+=r*G,E+=r*Q,C+=r*Y,N+=r*Z,r=t[9],f+=r*R,m+=r*L,h+=r*j,g+=r*z,y+=r*U,v+=r*B,b+=r*q,x+=r*V,S+=r*K,T+=r*J,w+=r*W,k+=r*H,E+=r*G,C+=r*Q,N+=r*Y,A+=r*Z,r=t[10],m+=r*R,h+=r*L,g+=r*j,y+=r*z,v+=r*U,b+=r*B,x+=r*q,S+=r*V,T+=r*K,w+=r*J,k+=r*W,E+=r*H,C+=r*G,N+=r*Q,A+=r*Y,I+=r*Z,r=t[11],h+=r*R,g+=r*L,y+=r*j,v+=r*z,b+=r*U,x+=r*B,S+=r*q,T+=r*V,w+=r*K,k+=r*J,E+=r*W,C+=r*H,N+=r*G,A+=r*Q,I+=r*Y,D+=r*Z,r=t[12],g+=r*R,y+=r*L,v+=r*j,b+=r*z,x+=r*U,S+=r*B,T+=r*q,w+=r*V,k+=r*K,E+=r*J,C+=r*W,N+=r*H,A+=r*G,I+=r*Q,D+=r*Y,P+=r*Z,r=t[13],y+=r*R,v+=r*L,b+=r*j,x+=r*z,S+=r*U,T+=r*B,w+=r*q,k+=r*V,E+=r*K,C+=r*J,N+=r*W,A+=r*H,I+=r*G,D+=r*Q,P+=r*Y,M+=r*Z,r=t[14],v+=r*R,b+=r*L,x+=r*j,S+=r*z,T+=r*U,w+=r*B,k+=r*q,E+=r*V,C+=r*K,N+=r*J,A+=r*W,I+=r*H,D+=r*G,P+=r*Q,M+=r*Y,O+=r*Z,r=t[15],b+=r*R,x+=r*L,S+=r*j,T+=r*z,w+=r*U,k+=r*B,E+=r*q,C+=r*V,N+=r*K,A+=r*J,I+=r*W,D+=r*H,P+=r*G,M+=r*Q,O+=r*Y,F+=r*Z,o+=38*x,s+=38*S,a+=38*T,c+=38*w,l+=38*k,u+=38*E,d+=38*C,_+=38*N,p+=38*A,f+=38*I,m+=38*D,h+=38*P,g+=38*M,y+=38*O,v+=38*F,i=1,r=o+i+65535,i=Math.floor(r/65536),o=r-65536*i,r=s+i+65535,i=Math.floor(r/65536),s=r-65536*i,r=a+i+65535,i=Math.floor(r/65536),a=r-65536*i,r=c+i+65535,i=Math.floor(r/65536),c=r-65536*i,r=l+i+65535,i=Math.floor(r/65536),l=r-65536*i,r=u+i+65535,i=Math.floor(r/65536),u=r-65536*i,r=d+i+65535,i=Math.floor(r/65536),d=r-65536*i,r=_+i+65535,i=Math.floor(r/65536),_=r-65536*i,r=p+i+65535,i=Math.floor(r/65536),p=r-65536*i,r=f+i+65535,i=Math.floor(r/65536),f=r-65536*i,r=m+i+65535,i=Math.floor(r/65536),m=r-65536*i,r=h+i+65535,i=Math.floor(r/65536),h=r-65536*i,r=g+i+65535,i=Math.floor(r/65536),g=r-65536*i,r=y+i+65535,i=Math.floor(r/65536),y=r-65536*i,r=v+i+65535,i=Math.floor(r/65536),v=r-65536*i,r=b+i+65535,i=Math.floor(r/65536),b=r-65536*i,o+=i-1+37*(i-1),i=1,r=o+i+65535,i=Math.floor(r/65536),o=r-65536*i,r=s+i+65535,i=Math.floor(r/65536),s=r-65536*i,r=a+i+65535,i=Math.floor(r/65536),a=r-65536*i,r=c+i+65535,i=Math.floor(r/65536),c=r-65536*i,r=l+i+65535,i=Math.floor(r/65536),l=r-65536*i,r=u+i+65535,i=Math.floor(r/65536),u=r-65536*i,r=d+i+65535,i=Math.floor(r/65536),d=r-65536*i,r=_+i+65535,i=Math.floor(r/65536),_=r-65536*i,r=p+i+65535,i=Math.floor(r/65536),p=r-65536*i,r=f+i+65535,i=Math.floor(r/65536),f=r-65536*i,r=m+i+65535,i=Math.floor(r/65536),m=r-65536*i,r=h+i+65535,i=Math.floor(r/65536),h=r-65536*i,r=g+i+65535,i=Math.floor(r/65536),g=r-65536*i,r=y+i+65535,i=Math.floor(r/65536),y=r-65536*i,r=v+i+65535,i=Math.floor(r/65536),v=r-65536*i,r=b+i+65535,i=Math.floor(r/65536),b=r-65536*i,o+=i-1+37*(i-1),e[0]=o,e[1]=s,e[2]=a,e[3]=c,e[4]=l,e[5]=u,e[6]=d,e[7]=_,e[8]=p,e[9]=f,e[10]=m,e[11]=h,e[12]=g,e[13]=y,e[14]=v,e[15]=b}function w(e,t){T(e,t,t)}function k(e,t){const n=s();let r;for(r=0;r<16;r++)n[r]=t[r];for(r=253;r>=0;r--)w(n,n),2!==r&&4!==r&&T(n,n,t);for(r=0;r<16;r++)e[r]=n[r]}function E(e,t){const n=s(),r=s(),i=s(),o=s(),a=s(),c=s(),l=s(),d=s(),_=s();S(n,e[1],e[0]),S(_,t[1],t[0]),T(n,n,_),x(r,e[0],e[1]),x(_,t[0],t[1]),T(r,r,_),T(i,e[3],t[3]),T(i,i,u),T(o,e[2],t[2]),x(o,o,o),S(a,r,n),S(c,o,i),x(l,o,i),x(d,r,n),T(e[0],a,c),T(e[1],d,l),T(e[2],l,c),T(e[3],a,d)}function C(e,t,n){for(let r=0;r<4;r++)h(e[r],t[r],n)}function N(e,t){const n=s(),r=s(),i=s();k(i,t[2]),T(n,t[0],i),T(r,t[1],i),g(e,r),e[31]^=b(n)<<7}function A(e,t,n){f(e[0],a),f(e[1],c),f(e[2],c),f(e[3],a);for(let r=255;r>=0;--r){const i=n[r/8|0]>>(7&r)&1;C(e,t,i),E(t,e),E(e,e),C(e,t,i)}}function I(e,t){const n=[s(),s(),s(),s()];f(n[0],d),f(n[1],_),f(n[2],c),T(n[3],d,_),A(e,n,t)}function D(e){if(e.length!==t.TP)throw new Error(`ed25519: seed must be ${t.TP} bytes`);const n=(0,i.hash)(e);n[0]&=248,n[31]&=127,n[31]|=64;const r=new Uint8Array(32),o=[s(),s(),s(),s()];I(o,n),N(r,o);const a=new Uint8Array(64);return a.set(e),a.set(r,32),{publicKey:r,secretKey:a}}t.K=D;const P=new Float64Array([237,211,245,92,26,99,18,88,214,156,247,162,222,249,222,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16]);function M(e,t){let n,r,i,o;for(r=63;r>=32;--r){for(n=0,i=r-32,o=r-12;i<o;++i)t[i]+=n-16*t[r]*P[i-(r-32)],n=Math.floor((t[i]+128)/256),t[i]-=256*n;t[i]+=n,t[r]=0}for(n=0,i=0;i<32;i++)t[i]+=n-(t[31]>>4)*P[i],n=t[i]>>8,t[i]&=255;for(i=0;i<32;i++)t[i]-=n*P[i];for(r=0;r<32;r++)t[r+1]+=t[r]>>8,e[r]=255&t[r]}function O(e){const t=new Float64Array(64);for(let n=0;n<64;n++)t[n]=e[n];for(let n=0;n<64;n++)e[n]=0;M(e,t)}function F(e,t){const n=s(),r=s(),i=s(),o=s(),u=s(),d=s(),_=s();return f(e[2],c),function(e,t){for(let n=0;n<16;n++)e[n]=t[2*n]+(t[2*n+1]<<8);e[15]&=32767}(e[1],t),w(i,e[1]),T(o,i,l),S(i,i,e[2]),x(o,e[2],o),w(u,o),w(d,u),T(_,d,u),T(n,_,i),T(n,n,o),function(e,t){const n=s();let r;for(r=0;r<16;r++)n[r]=t[r];for(r=250;r>=0;r--)w(n,n),1!==r&&T(n,n,t);for(r=0;r<16;r++)e[r]=n[r]}(n,n),T(n,n,i),T(n,n,o),T(n,n,o),T(e[0],n,o),w(r,e[0]),T(r,r,o),v(r,i)&&T(e[0],e[0],p),w(r,e[0]),T(r,r,o),v(r,i)?-1:(b(e[0])===t[31]>>7&&S(e[0],a,e[0]),T(e[3],e[0],e[1]),0)}t._S=function(e,t){const n=new Float64Array(64),r=[s(),s(),s(),s()],o=(0,i.hash)(e.subarray(0,32));o[0]&=248,o[31]&=127,o[31]|=64;const a=new Uint8Array(64);a.set(o.subarray(32),32);const c=new i.SHA512;c.update(a.subarray(32)),c.update(t);const l=c.digest();c.clean(),O(l),I(r,l),N(a,r),c.reset(),c.update(a.subarray(0,32)),c.update(e.subarray(32)),c.update(t);const u=c.digest();O(u);for(let i=0;i<32;i++)n[i]=l[i];for(let i=0;i<32;i++)for(let e=0;e<32;e++)n[i+e]+=u[i]*o[e];return M(a.subarray(32),n),a},t.J$=function(e){let t=[s(),s(),s(),s()];if(F(t,e))throw new Error("Ed25519: invalid public key");let n=s(),r=s(),i=t[1];x(n,c,i),S(r,c,i),k(r,r),T(n,n,r);let o=new Uint8Array(32);return g(o,n),o},t.a_=function(e){const t=(0,i.hash)(e.subarray(0,32));t[0]&=248,t[31]&=127,t[31]|=64;const n=new Uint8Array(t.subarray(0,32));return(0,o.wipe)(t),n}},52670:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isSerializableHash=function(e){return void 0!==e.saveState&&void 0!==e.restoreState&&void 0!==e.cleanSavedState}},16804:(e,t,n)=>{"use strict";var r=n(22412),i=n(76228),o=function(){function e(e,t,n,i){void 0===n&&(n=new Uint8Array(0)),this._counter=new Uint8Array(1),this._hash=e,this._info=i;var o=r.hmac(this._hash,n,t);this._hmac=new r.HMAC(e,o),this._buffer=new Uint8Array(this._hmac.digestLength),this._bufpos=this._buffer.length}return e.prototype._fillBuffer=function(){this._counter[0]++;var e=this._counter[0];if(0===e)throw new Error("hkdf: cannot expand more");this._hmac.reset(),e>1&&this._hmac.update(this._buffer),this._info&&this._hmac.update(this._info),this._hmac.update(this._counter),this._hmac.finish(this._buffer),this._bufpos=0},e.prototype.expand=function(e){for(var t=new Uint8Array(e),n=0;n<t.length;n++)this._bufpos===this._buffer.length&&this._fillBuffer(),t[n]=this._buffer[this._bufpos++];return t},e.prototype.clean=function(){this._hmac.clean(),i.wipe(this._buffer),i.wipe(this._counter),this._bufpos=0},e}();t.i=o},22412:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(52670),i=n(26452),o=n(76228),s=function(){function e(e,t){this._finished=!1,this._inner=new e,this._outer=new e,this.blockSize=this._outer.blockSize,this.digestLength=this._outer.digestLength;var n=new Uint8Array(this.blockSize);t.length>this.blockSize?this._inner.update(t).finish(n).clean():n.set(t);for(var i=0;i<n.length;i++)n[i]^=54;this._inner.update(n);for(i=0;i<n.length;i++)n[i]^=106;this._outer.update(n),r.isSerializableHash(this._inner)&&r.isSerializableHash(this._outer)&&(this._innerKeyedState=this._inner.saveState(),this._outerKeyedState=this._outer.saveState()),o.wipe(n)}return e.prototype.reset=function(){if(!r.isSerializableHash(this._inner)||!r.isSerializableHash(this._outer))throw new Error("hmac: can't reset() because hash doesn't implement restoreState()");return this._inner.restoreState(this._innerKeyedState),this._outer.restoreState(this._outerKeyedState),this._finished=!1,this},e.prototype.clean=function(){r.isSerializableHash(this._inner)&&this._inner.cleanSavedState(this._innerKeyedState),r.isSerializableHash(this._outer)&&this._outer.cleanSavedState(this._outerKeyedState),this._inner.clean(),this._outer.clean()},e.prototype.update=function(e){return this._inner.update(e),this},e.prototype.finish=function(e){return this._finished?(this._outer.finish(e),this):(this._inner.finish(e),this._outer.update(e.subarray(0,this.digestLength)).finish(e),this._finished=!0,this)},e.prototype.digest=function(){var e=new Uint8Array(this.digestLength);return this.finish(e),e},e.prototype.saveState=function(){if(!r.isSerializableHash(this._inner))throw new Error("hmac: can't saveState() because hash doesn't implement it");return this._inner.saveState()},e.prototype.restoreState=function(e){if(!r.isSerializableHash(this._inner)||!r.isSerializableHash(this._outer))throw new Error("hmac: can't restoreState() because hash doesn't implement it");return this._inner.restoreState(e),this._outer.restoreState(this._outerKeyedState),this._finished=!1,this},e.prototype.cleanSavedState=function(e){if(!r.isSerializableHash(this._inner))throw new Error("hmac: can't cleanSavedState() because hash doesn't implement it");this._inner.cleanSavedState(e)},e}();t.HMAC=s,t.hmac=function(e,t,n){var r=new s(e,t);r.update(n);var i=r.digest();return r.clean(),i},t.equal=i.equal},74512:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.mul=Math.imul||function(e,t){var n=65535&e,r=65535&t;return n*r+((e>>>16&65535)*r+n*(t>>>16&65535)<<16>>>0)|0},t.add=function(e,t){return e+t|0},t.sub=function(e,t){return e-t|0},t.rotl=function(e,t){return e<<t|e>>>32-t},t.rotr=function(e,t){return e<<32-t|e>>>t},t.isInteger=Number.isInteger||function(e){return"number"==typeof e&&isFinite(e)&&Math.floor(e)===e},t.MAX_SAFE_INTEGER=9007199254740991,t.isSafeInteger=function(e){return t.isInteger(e)&&e>=-t.MAX_SAFE_INTEGER&&e<=t.MAX_SAFE_INTEGER}},50495:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.openBox=t.box=t.precomputeSharedKey=t.generateKeyPair=void 0;const r=n(774),i=n(36166),o=n(79615),s=n(76228);var a=n(774);Object.defineProperty(t,"generateKeyPair",{enumerable:!0,get:function(){return a.generateKeyPair}});const c=new Uint8Array(16);function l(e,t){const n=(0,r.scalarMult)(t,e);return(0,i.hsalsa)(n,c,n),n}t.precomputeSharedKey=l,t.box=function(e,t,n,r){const i=l(e,t),a=(0,o.secretBox)(i,n,r);return(0,s.wipe)(i),a},t.openBox=function(e,t,n,r){const i=l(e,t),a=(0,o.openSecretBox)(i,n,r);return(0,s.wipe)(i),a}},71474:function(e,t,n){"use strict";var r=this&&this.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n);var i=Object.getOwnPropertyDescriptor(t,n);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,i)}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),i=this&&this.__exportStar||function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||r(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),i(n(50495),t),i(n(79615),t)},79615:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.generateKey=t.openSecretBox=t.secretBox=void 0;const r=n(36166),i=n(77360),o=n(76228),s=n(37052);t.secretBox=function(e,t,n){if(24!==t.length)throw new Error("secretBox nonce must be 24 bytes");const s=new Uint8Array(64),a=new Uint8Array(32);a.set(t),(0,r.stream)(e,a,s,8);const c=new Uint8Array(16+n.length);for(let r=0;r<32&&r<n.length;r++)c[16+r]=n[r]^s[32+r];n.length>32&&(0,r.streamXOR)(e,a,n.subarray(32),c.subarray(48),8);const l=(0,i.oneTimeAuth)(s.subarray(0,32),c.subarray(16));for(let r=0;r<l.length;r++)c[r]=l[r];return(0,o.wipe)(l),(0,o.wipe)(s),(0,o.wipe)(a),c},t.openSecretBox=function(e,t,n){if(24!==t.length)throw new Error("secretBox nonce must be 24 bytes");if(n.length<16)throw new Error("secretBox data must be at least 16 bytes");const s=new Uint8Array(64),a=new Uint8Array(32);a.set(t),(0,r.stream)(e,a,s,8);const c=(0,i.oneTimeAuth)(s.subarray(0,32),n.subarray(16));if(!(0,i.equal)(c,n.subarray(0,16)))return null;const l=n.subarray(16),u=new Uint8Array(l.length);for(let r=0;r<32&&r<l.length;r++)u[r]=l[r]^s[32+r];return l.length>32&&(0,r.streamXOR)(e,a,l.subarray(32),u.subarray(32),8),(0,o.wipe)(c),(0,o.wipe)(s),(0,o.wipe)(a),u},t.generateKey=function(e){return(0,s.randomBytes)(32,e)}},77360:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(26452),i=n(76228);t.DIGEST_LENGTH=16;var o=function(){function e(e){this.digestLength=t.DIGEST_LENGTH,this._buffer=new Uint8Array(16),this._r=new Uint16Array(10),this._h=new Uint16Array(10),this._pad=new Uint16Array(8),this._leftover=0,this._fin=0,this._finished=!1;var n=e[0]|e[1]<<8;this._r[0]=8191&n;var r=e[2]|e[3]<<8;this._r[1]=8191&(n>>>13|r<<3);var i=e[4]|e[5]<<8;this._r[2]=7939&(r>>>10|i<<6);var o=e[6]|e[7]<<8;this._r[3]=8191&(i>>>7|o<<9);var s=e[8]|e[9]<<8;this._r[4]=255&(o>>>4|s<<12),this._r[5]=s>>>1&8190;var a=e[10]|e[11]<<8;this._r[6]=8191&(s>>>14|a<<2);var c=e[12]|e[13]<<8;this._r[7]=8065&(a>>>11|c<<5);var l=e[14]|e[15]<<8;this._r[8]=8191&(c>>>8|l<<8),this._r[9]=l>>>5&127,this._pad[0]=e[16]|e[17]<<8,this._pad[1]=e[18]|e[19]<<8,this._pad[2]=e[20]|e[21]<<8,this._pad[3]=e[22]|e[23]<<8,this._pad[4]=e[24]|e[25]<<8,this._pad[5]=e[26]|e[27]<<8,this._pad[6]=e[28]|e[29]<<8,this._pad[7]=e[30]|e[31]<<8}return e.prototype._blocks=function(e,t,n){for(var r=this._fin?0:2048,i=this._h[0],o=this._h[1],s=this._h[2],a=this._h[3],c=this._h[4],l=this._h[5],u=this._h[6],d=this._h[7],_=this._h[8],p=this._h[9],f=this._r[0],m=this._r[1],h=this._r[2],g=this._r[3],y=this._r[4],v=this._r[5],b=this._r[6],x=this._r[7],S=this._r[8],T=this._r[9];n>=16;){var w=e[t+0]|e[t+1]<<8;i+=8191&w;var k=e[t+2]|e[t+3]<<8;o+=8191&(w>>>13|k<<3);var E=e[t+4]|e[t+5]<<8;s+=8191&(k>>>10|E<<6);var C=e[t+6]|e[t+7]<<8;a+=8191&(E>>>7|C<<9);var N=e[t+8]|e[t+9]<<8;c+=8191&(C>>>4|N<<12),l+=N>>>1&8191;var A=e[t+10]|e[t+11]<<8;u+=8191&(N>>>14|A<<2);var I=e[t+12]|e[t+13]<<8;d+=8191&(A>>>11|I<<5);var D=e[t+14]|e[t+15]<<8,P=0,M=P;M+=i*f,M+=o*(5*T),M+=s*(5*S),M+=a*(5*x),P=(M+=c*(5*b))>>>13,M&=8191,M+=l*(5*v),M+=u*(5*y),M+=d*(5*g),M+=(_+=8191&(I>>>8|D<<8))*(5*h);var O=P+=(M+=(p+=D>>>5|r)*(5*m))>>>13;O+=i*m,O+=o*f,O+=s*(5*T),O+=a*(5*S),P=(O+=c*(5*x))>>>13,O&=8191,O+=l*(5*b),O+=u*(5*v),O+=d*(5*y),O+=_*(5*g),P+=(O+=p*(5*h))>>>13,O&=8191;var F=P;F+=i*h,F+=o*m,F+=s*f,F+=a*(5*T),P=(F+=c*(5*S))>>>13,F&=8191,F+=l*(5*x),F+=u*(5*b),F+=d*(5*v),F+=_*(5*y);var R=P+=(F+=p*(5*g))>>>13;R+=i*g,R+=o*h,R+=s*m,R+=a*f,P=(R+=c*(5*T))>>>13,R&=8191,R+=l*(5*S),R+=u*(5*x),R+=d*(5*b),R+=_*(5*v);var L=P+=(R+=p*(5*y))>>>13;L+=i*y,L+=o*g,L+=s*h,L+=a*m,P=(L+=c*f)>>>13,L&=8191,L+=l*(5*T),L+=u*(5*S),L+=d*(5*x),L+=_*(5*b);var j=P+=(L+=p*(5*v))>>>13;j+=i*v,j+=o*y,j+=s*g,j+=a*h,P=(j+=c*m)>>>13,j&=8191,j+=l*f,j+=u*(5*T),j+=d*(5*S),j+=_*(5*x);var z=P+=(j+=p*(5*b))>>>13;z+=i*b,z+=o*v,z+=s*y,z+=a*g,P=(z+=c*h)>>>13,z&=8191,z+=l*m,z+=u*f,z+=d*(5*T),z+=_*(5*S);var U=P+=(z+=p*(5*x))>>>13;U+=i*x,U+=o*b,U+=s*v,U+=a*y,P=(U+=c*g)>>>13,U&=8191,U+=l*h,U+=u*m,U+=d*f,U+=_*(5*T);var B=P+=(U+=p*(5*S))>>>13;B+=i*S,B+=o*x,B+=s*b,B+=a*v,P=(B+=c*y)>>>13,B&=8191,B+=l*g,B+=u*h,B+=d*m,B+=_*f;var q=P+=(B+=p*(5*T))>>>13;q+=i*T,q+=o*S,q+=s*x,q+=a*b,P=(q+=c*v)>>>13,q&=8191,q+=l*y,q+=u*g,q+=d*h,q+=_*m,i=M=8191&(P=(P=((P+=(q+=p*f)>>>13)<<2)+P|0)+(M&=8191)|0),o=O+=P>>>=13,s=F&=8191,a=R&=8191,c=L&=8191,l=j&=8191,u=z&=8191,d=U&=8191,_=B&=8191,p=q&=8191,t+=16,n-=16}this._h[0]=i,this._h[1]=o,this._h[2]=s,this._h[3]=a,this._h[4]=c,this._h[5]=l,this._h[6]=u,this._h[7]=d,this._h[8]=_,this._h[9]=p},e.prototype.finish=function(e,t){void 0===t&&(t=0);var n,r,i,o,s=new Uint16Array(10);if(this._leftover){for(o=this._leftover,this._buffer[o++]=1;o<16;o++)this._buffer[o]=0;this._fin=1,this._blocks(this._buffer,0,16)}for(n=this._h[1]>>>13,this._h[1]&=8191,o=2;o<10;o++)this._h[o]+=n,n=this._h[o]>>>13,this._h[o]&=8191;for(this._h[0]+=5*n,n=this._h[0]>>>13,this._h[0]&=8191,this._h[1]+=n,n=this._h[1]>>>13,this._h[1]&=8191,this._h[2]+=n,s[0]=this._h[0]+5,n=s[0]>>>13,s[0]&=8191,o=1;o<10;o++)s[o]=this._h[o]+n,n=s[o]>>>13,s[o]&=8191;for(s[9]-=8192,r=(1^n)-1,o=0;o<10;o++)s[o]&=r;for(r=~r,o=0;o<10;o++)this._h[o]=this._h[o]&r|s[o];for(this._h[0]=65535&(this._h[0]|this._h[1]<<13),this._h[1]=65535&(this._h[1]>>>3|this._h[2]<<10),this._h[2]=65535&(this._h[2]>>>6|this._h[3]<<7),this._h[3]=65535&(this._h[3]>>>9|this._h[4]<<4),this._h[4]=65535&(this._h[4]>>>12|this._h[5]<<1|this._h[6]<<14),this._h[5]=65535&(this._h[6]>>>2|this._h[7]<<11),this._h[6]=65535&(this._h[7]>>>5|this._h[8]<<8),this._h[7]=65535&(this._h[8]>>>8|this._h[9]<<5),i=this._h[0]+this._pad[0],this._h[0]=65535&i,o=1;o<8;o++)i=(this._h[o]+this._pad[o]|0)+(i>>>16)|0,this._h[o]=65535&i;return e[t+0]=this._h[0]>>>0,e[t+1]=this._h[0]>>>8,e[t+2]=this._h[1]>>>0,e[t+3]=this._h[1]>>>8,e[t+4]=this._h[2]>>>0,e[t+5]=this._h[2]>>>8,e[t+6]=this._h[3]>>>0,e[t+7]=this._h[3]>>>8,e[t+8]=this._h[4]>>>0,e[t+9]=this._h[4]>>>8,e[t+10]=this._h[5]>>>0,e[t+11]=this._h[5]>>>8,e[t+12]=this._h[6]>>>0,e[t+13]=this._h[6]>>>8,e[t+14]=this._h[7]>>>0,e[t+15]=this._h[7]>>>8,this._finished=!0,this},e.prototype.update=function(e){var t,n=0,r=e.length;if(this._leftover){(t=16-this._leftover)>r&&(t=r);for(var i=0;i<t;i++)this._buffer[this._leftover+i]=e[n+i];if(r-=t,n+=t,this._leftover+=t,this._leftover<16)return this;this._blocks(this._buffer,0,16),this._leftover=0}if(r>=16&&(t=r-r%16,this._blocks(e,n,t),n+=t,r-=t),r){for(i=0;i<r;i++)this._buffer[this._leftover+i]=e[n+i];this._leftover+=r}return this},e.prototype.digest=function(){if(this._finished)throw new Error("Poly1305 was finished");var e=new Uint8Array(16);return this.finish(e),e},e.prototype.clean=function(){return i.wipe(this._buffer),i.wipe(this._r),i.wipe(this._h),i.wipe(this._pad),this._leftover=0,this._fin=0,this._finished=!0,this},e}();t.Poly1305=o,t.oneTimeAuth=function(e,t){var n=new o(e);n.update(t);var r=n.digest();return n.clean(),r},t.equal=function(e,n){return e.length===t.DIGEST_LENGTH&&n.length===t.DIGEST_LENGTH&&r.equal(e,n)}},37052:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.randomStringForEntropy=t.randomString=t.randomUint32=t.randomBytes=t.defaultRandomSource=void 0;const r=n(15492),i=n(30972),o=n(76228);function s(e,n=t.defaultRandomSource){return n.randomBytes(e)}t.defaultRandomSource=new r.SystemRandomSource,t.randomBytes=s,t.randomUint32=function(e=t.defaultRandomSource){const n=s(4,e),r=(0,i.readUint32LE)(n);return(0,o.wipe)(n),r};const a="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";function c(e,n=a,r=t.defaultRandomSource){if(n.length<2)throw new Error("randomString charset is too short");if(n.length>256)throw new Error("randomString charset is too long");let i="";const c=n.length,l=256-256%c;for(;e>0;){const t=s(Math.ceil(256*e/l),r);for(let r=0;r<t.length&&e>0;r++){const o=t[r];o<l&&(i+=n.charAt(o%c),e--)}(0,o.wipe)(t)}return i}t.randomString=c,t.randomStringForEntropy=function(e,n=a,r=t.defaultRandomSource){return c(Math.ceil(e/(Math.log(n.length)/Math.LN2)),n,r)}},87029:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BrowserRandomSource=void 0;t.BrowserRandomSource=class{constructor(){this.isAvailable=!1,this.isInstantiated=!1;const e="undefined"!=typeof self?self.crypto||self.msCrypto:null;e&&void 0!==e.getRandomValues&&(this._crypto=e,this.isAvailable=!0,this.isInstantiated=!0)}randomBytes(e){if(!this.isAvailable||!this._crypto)throw new Error("Browser random byte generator is not available.");const t=new Uint8Array(e);for(let n=0;n<t.length;n+=65536)this._crypto.getRandomValues(t.subarray(n,n+Math.min(t.length-n,65536)));return t}}},35821:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeRandomSource=void 0;const r=n(76228);t.NodeRandomSource=class{constructor(){this.isAvailable=!1,this.isInstantiated=!1;{const e=n(99432);e&&e.randomBytes&&(this._crypto=e,this.isAvailable=!0,this.isInstantiated=!0)}}randomBytes(e){if(!this.isAvailable||!this._crypto)throw new Error("Node.js random byte generator is not available.");let t=this._crypto.randomBytes(e);if(t.length!==e)throw new Error("NodeRandomSource: got fewer bytes than requested");const n=new Uint8Array(e);for(let r=0;r<n.length;r++)n[r]=t[r];return(0,r.wipe)(t),n}}},15492:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SystemRandomSource=void 0;const r=n(87029),i=n(35821);t.SystemRandomSource=class{constructor(){return this.isAvailable=!1,this.name="",this._source=new r.BrowserRandomSource,this._source.isAvailable?(this.isAvailable=!0,void(this.name="Browser")):(this._source=new i.NodeRandomSource,this._source.isAvailable?(this.isAvailable=!0,void(this.name="Node")):void 0)}randomBytes(e){if(!this.isAvailable)throw new Error("System random byte generator is not available.");return this._source.randomBytes(e)}}},3612:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(30972),i=n(76228),o=20;function s(e,t,n){for(var i,s=1634760805,a=n[3]<<24|n[2]<<16|n[1]<<8|n[0],c=n[7]<<24|n[6]<<16|n[5]<<8|n[4],l=n[11]<<24|n[10]<<16|n[9]<<8|n[8],u=n[15]<<24|n[14]<<16|n[13]<<8|n[12],d=857760878,_=t[3]<<24|t[2]<<16|t[1]<<8|t[0],p=t[7]<<24|t[6]<<16|t[5]<<8|t[4],f=t[11]<<24|t[10]<<16|t[9]<<8|t[8],m=t[15]<<24|t[14]<<16|t[13]<<8|t[12],h=2036477234,g=n[19]<<24|n[18]<<16|n[17]<<8|n[16],y=n[23]<<24|n[22]<<16|n[21]<<8|n[20],v=n[27]<<24|n[26]<<16|n[25]<<8|n[24],b=n[31]<<24|n[30]<<16|n[29]<<8|n[28],x=1797285236,S=s,T=a,w=c,k=l,E=u,C=d,N=_,A=p,I=f,D=m,P=h,M=g,O=y,F=v,R=b,L=x,j=0;j<o;j+=2)S^=(i=(O^=(i=(I^=(i=(E^=(i=S+O|0)<<7|i>>>25)+S|0)<<9|i>>>23)+E|0)<<13|i>>>19)+I|0)<<18|i>>>14,C^=(i=(T^=(i=(F^=(i=(D^=(i=C+T|0)<<7|i>>>25)+C|0)<<9|i>>>23)+D|0)<<13|i>>>19)+F|0)<<18|i>>>14,P^=(i=(N^=(i=(w^=(i=(R^=(i=P+N|0)<<7|i>>>25)+P|0)<<9|i>>>23)+R|0)<<13|i>>>19)+w|0)<<18|i>>>14,L^=(i=(M^=(i=(A^=(i=(k^=(i=L+M|0)<<7|i>>>25)+L|0)<<9|i>>>23)+k|0)<<13|i>>>19)+A|0)<<18|i>>>14,S^=(i=(k^=(i=(w^=(i=(T^=(i=S+k|0)<<7|i>>>25)+S|0)<<9|i>>>23)+T|0)<<13|i>>>19)+w|0)<<18|i>>>14,C^=(i=(E^=(i=(A^=(i=(N^=(i=C+E|0)<<7|i>>>25)+C|0)<<9|i>>>23)+N|0)<<13|i>>>19)+A|0)<<18|i>>>14,P^=(i=(D^=(i=(I^=(i=(M^=(i=P+D|0)<<7|i>>>25)+P|0)<<9|i>>>23)+M|0)<<13|i>>>19)+I|0)<<18|i>>>14,L^=(i=(R^=(i=(F^=(i=(O^=(i=L+R|0)<<7|i>>>25)+L|0)<<9|i>>>23)+O|0)<<13|i>>>19)+F|0)<<18|i>>>14;r.writeUint32LE(S+s|0,e,0),r.writeUint32LE(T+a|0,e,4),r.writeUint32LE(w+c|0,e,8),r.writeUint32LE(k+l|0,e,12),r.writeUint32LE(E+u|0,e,16),r.writeUint32LE(C+d|0,e,20),r.writeUint32LE(N+_|0,e,24),r.writeUint32LE(A+p|0,e,28),r.writeUint32LE(I+f|0,e,32),r.writeUint32LE(D+m|0,e,36),r.writeUint32LE(P+h|0,e,40),r.writeUint32LE(M+g|0,e,44),r.writeUint32LE(O+y|0,e,48),r.writeUint32LE(F+v|0,e,52),r.writeUint32LE(R+b|0,e,56),r.writeUint32LE(L+x|0,e,60)}function a(e,t,n,r,o){if(void 0===o&&(o=0),32!==e.length)throw new Error("Salsa20: key size must be 32 bytes");if(r.length<n.length)throw new Error("Salsa20: destination is shorter than source");var a,l;if(0===o){if(8!==t.length)throw new Error("Salsa20 nonce must be 8 bytes");(a=new Uint8Array(16)).set(t),l=t.length}else{if(16!==t.length)throw new Error("Salsa20 nonce with counter must be 16 bytes");a=t,l=16-o}for(var u=new Uint8Array(64),d=0;d<n.length;d+=64){s(u,a,e);for(var _=d;_<d+64&&_<n.length;_++)r[_]=n[_]^u[_-d];c(a,l,a.length-l)}return i.wipe(u),0===o&&i.wipe(a),r}function c(e,t,n){for(var r=1;n--;)r=r+(255&e[t])|0,e[t]=255&r,r>>>=8,t++;if(r>0)throw new Error("Salsa20: counter overflow")}t.streamXOR=a,t.stream=function(e,t,n,r){return void 0===r&&(r=0),i.wipe(n),a(e,t,n,n,r)}},50204:(e,t,n)=>{"use strict";var r=n(30972),i=n(76228);t.On=32,t.cS=64;var o=function(){function e(){this.digestLength=t.On,this.blockSize=t.cS,this._state=new Int32Array(8),this._temp=new Int32Array(64),this._buffer=new Uint8Array(128),this._bufferLength=0,this._bytesHashed=0,this._finished=!1,this.reset()}return e.prototype._initState=function(){this._state[0]=1779033703,this._state[1]=3144134277,this._state[2]=1013904242,this._state[3]=2773480762,this._state[4]=1359893119,this._state[5]=2600822924,this._state[6]=528734635,this._state[7]=1541459225},e.prototype.reset=function(){return this._initState(),this._bufferLength=0,this._bytesHashed=0,this._finished=!1,this},e.prototype.clean=function(){i.wipe(this._buffer),i.wipe(this._temp),this.reset()},e.prototype.update=function(e,t){if(void 0===t&&(t=e.length),this._finished)throw new Error("SHA256: can't update because hash was finished.");var n=0;if(this._bytesHashed+=t,this._bufferLength>0){for(;this._bufferLength<this.blockSize&&t>0;)this._buffer[this._bufferLength++]=e[n++],t--;this._bufferLength===this.blockSize&&(a(this._temp,this._state,this._buffer,0,this.blockSize),this._bufferLength=0)}for(t>=this.blockSize&&(n=a(this._temp,this._state,e,n,t),t%=this.blockSize);t>0;)this._buffer[this._bufferLength++]=e[n++],t--;return this},e.prototype.finish=function(e){if(!this._finished){var t=this._bytesHashed,n=this._bufferLength,i=t/536870912|0,o=t<<3,s=t%64<56?64:128;this._buffer[n]=128;for(var c=n+1;c<s-8;c++)this._buffer[c]=0;r.writeUint32BE(i,this._buffer,s-8),r.writeUint32BE(o,this._buffer,s-4),a(this._temp,this._state,this._buffer,0,s),this._finished=!0}for(c=0;c<this.digestLength/4;c++)r.writeUint32BE(this._state[c],e,4*c);return this},e.prototype.digest=function(){var e=new Uint8Array(this.digestLength);return this.finish(e),e},e.prototype.saveState=function(){if(this._finished)throw new Error("SHA256: cannot save finished state");return{state:new Int32Array(this._state),buffer:this._bufferLength>0?new Uint8Array(this._buffer):void 0,bufferLength:this._bufferLength,bytesHashed:this._bytesHashed}},e.prototype.restoreState=function(e){return this._state.set(e.state),this._bufferLength=e.bufferLength,e.buffer&&this._buffer.set(e.buffer),this._bytesHashed=e.bytesHashed,this._finished=!1,this},e.prototype.cleanSavedState=function(e){i.wipe(e.state),e.buffer&&i.wipe(e.buffer),e.bufferLength=0,e.bytesHashed=0},e}();t.aD=o;var s=new Int32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]);function a(e,t,n,i,o){for(;o>=64;){for(var a=t[0],c=t[1],l=t[2],u=t[3],d=t[4],_=t[5],p=t[6],f=t[7],m=0;m<16;m++){var h=i+4*m;e[m]=r.readUint32BE(n,h)}for(m=16;m<64;m++){var g=e[m-2],y=(g>>>17|g<<15)^(g>>>19|g<<13)^g>>>10,v=((g=e[m-15])>>>7|g<<25)^(g>>>18|g<<14)^g>>>3;e[m]=(y+e[m-7]|0)+(v+e[m-16]|0)}for(m=0;m<64;m++){y=(((d>>>6|d<<26)^(d>>>11|d<<21)^(d>>>25|d<<7))+(d&_^~d&p)|0)+(f+(s[m]+e[m]|0)|0)|0,v=((a>>>2|a<<30)^(a>>>13|a<<19)^(a>>>22|a<<10))+(a&c^a&l^c&l)|0;f=p,p=_,_=d,d=u+y|0,u=l,l=c,c=a,a=y+v|0}t[0]+=a,t[1]+=c,t[2]+=l,t[3]+=u,t[4]+=d,t[5]+=_,t[6]+=p,t[7]+=f,i+=64,o-=64}return i}t.tW=function(e){var t=new o;t.update(e);var n=t.digest();return t.clean(),n}},64974:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(30972),i=n(76228);t.DIGEST_LENGTH=64,t.BLOCK_SIZE=128;var o=function(){function e(){this.digestLength=t.DIGEST_LENGTH,this.blockSize=t.BLOCK_SIZE,this._stateHi=new Int32Array(8),this._stateLo=new Int32Array(8),this._tempHi=new Int32Array(16),this._tempLo=new Int32Array(16),this._buffer=new Uint8Array(256),this._bufferLength=0,this._bytesHashed=0,this._finished=!1,this.reset()}return e.prototype._initState=function(){this._stateHi[0]=1779033703,this._stateHi[1]=3144134277,this._stateHi[2]=1013904242,this._stateHi[3]=2773480762,this._stateHi[4]=1359893119,this._stateHi[5]=2600822924,this._stateHi[6]=528734635,this._stateHi[7]=1541459225,this._stateLo[0]=4089235720,this._stateLo[1]=2227873595,this._stateLo[2]=4271175723,this._stateLo[3]=1595750129,this._stateLo[4]=2917565137,this._stateLo[5]=725511199,this._stateLo[6]=4215389547,this._stateLo[7]=327033209},e.prototype.reset=function(){return this._initState(),this._bufferLength=0,this._bytesHashed=0,this._finished=!1,this},e.prototype.clean=function(){i.wipe(this._buffer),i.wipe(this._tempHi),i.wipe(this._tempLo),this.reset()},e.prototype.update=function(e,n){if(void 0===n&&(n=e.length),this._finished)throw new Error("SHA512: can't update because hash was finished.");var r=0;if(this._bytesHashed+=n,this._bufferLength>0){for(;this._bufferLength<t.BLOCK_SIZE&&n>0;)this._buffer[this._bufferLength++]=e[r++],n--;this._bufferLength===this.blockSize&&(a(this._tempHi,this._tempLo,this._stateHi,this._stateLo,this._buffer,0,this.blockSize),this._bufferLength=0)}for(n>=this.blockSize&&(r=a(this._tempHi,this._tempLo,this._stateHi,this._stateLo,e,r,n),n%=this.blockSize);n>0;)this._buffer[this._bufferLength++]=e[r++],n--;return this},e.prototype.finish=function(e){if(!this._finished){var t=this._bytesHashed,n=this._bufferLength,i=t/536870912|0,o=t<<3,s=t%128<112?128:256;this._buffer[n]=128;for(var c=n+1;c<s-8;c++)this._buffer[c]=0;r.writeUint32BE(i,this._buffer,s-8),r.writeUint32BE(o,this._buffer,s-4),a(this._tempHi,this._tempLo,this._stateHi,this._stateLo,this._buffer,0,s),this._finished=!0}for(c=0;c<this.digestLength/8;c++)r.writeUint32BE(this._stateHi[c],e,8*c),r.writeUint32BE(this._stateLo[c],e,8*c+4);return this},e.prototype.digest=function(){var e=new Uint8Array(this.digestLength);return this.finish(e),e},e.prototype.saveState=function(){if(this._finished)throw new Error("SHA256: cannot save finished state");return{stateHi:new Int32Array(this._stateHi),stateLo:new Int32Array(this._stateLo),buffer:this._bufferLength>0?new Uint8Array(this._buffer):void 0,bufferLength:this._bufferLength,bytesHashed:this._bytesHashed}},e.prototype.restoreState=function(e){return this._stateHi.set(e.stateHi),this._stateLo.set(e.stateLo),this._bufferLength=e.bufferLength,e.buffer&&this._buffer.set(e.buffer),this._bytesHashed=e.bytesHashed,this._finished=!1,this},e.prototype.cleanSavedState=function(e){i.wipe(e.stateHi),i.wipe(e.stateLo),e.buffer&&i.wipe(e.buffer),e.bufferLength=0,e.bytesHashed=0},e}();t.SHA512=o;var s=new Int32Array([1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591]);function a(e,t,n,i,o,a,c){for(var l,u,d,_,p,f,m,h,g=n[0],y=n[1],v=n[2],b=n[3],x=n[4],S=n[5],T=n[6],w=n[7],k=i[0],E=i[1],C=i[2],N=i[3],A=i[4],I=i[5],D=i[6],P=i[7];c>=128;){for(var M=0;M<16;M++){var O=8*M+a;e[M]=r.readUint32BE(o,O),t[M]=r.readUint32BE(o,O+4)}for(M=0;M<80;M++){var F,R,L=g,j=y,z=v,U=b,B=x,q=S,V=T,K=k,J=E,W=C,H=N,G=A,Q=I,Y=D;if(p=65535&(u=P),f=u>>>16,m=65535&(l=w),h=l>>>16,p+=65535&(u=(A>>>14|x<<18)^(A>>>18|x<<14)^(x>>>9|A<<23)),f+=u>>>16,m+=65535&(l=(x>>>14|A<<18)^(x>>>18|A<<14)^(A>>>9|x<<23)),h+=l>>>16,p+=65535&(u=A&I^~A&D),f+=u>>>16,m+=65535&(l=x&S^~x&T),h+=l>>>16,l=s[2*M],p+=65535&(u=s[2*M+1]),f+=u>>>16,m+=65535&l,h+=l>>>16,l=e[M%16],f+=(u=t[M%16])>>>16,m+=65535&l,h+=l>>>16,m+=(f+=(p+=65535&u)>>>16)>>>16,p=65535&(u=_=65535&p|f<<16),f=u>>>16,m=65535&(l=d=65535&m|(h+=m>>>16)<<16),h=l>>>16,p+=65535&(u=(k>>>28|g<<4)^(g>>>2|k<<30)^(g>>>7|k<<25)),f+=u>>>16,m+=65535&(l=(g>>>28|k<<4)^(k>>>2|g<<30)^(k>>>7|g<<25)),h+=l>>>16,f+=(u=k&E^k&C^E&C)>>>16,m+=65535&(l=g&y^g&v^y&v),h+=l>>>16,F=65535&(m+=(f+=(p+=65535&u)>>>16)>>>16)|(h+=m>>>16)<<16,R=65535&p|f<<16,p=65535&(u=H),f=u>>>16,m=65535&(l=U),h=l>>>16,f+=(u=_)>>>16,m+=65535&(l=d),h+=l>>>16,y=L,v=j,b=z,x=U=65535&(m+=(f+=(p+=65535&u)>>>16)>>>16)|(h+=m>>>16)<<16,S=B,T=q,w=V,g=F,E=K,C=J,N=W,A=H=65535&p|f<<16,I=G,D=Q,P=Y,k=R,M%16==15)for(O=0;O<16;O++)l=e[O],p=65535&(u=t[O]),f=u>>>16,m=65535&l,h=l>>>16,l=e[(O+9)%16],p+=65535&(u=t[(O+9)%16]),f+=u>>>16,m+=65535&l,h+=l>>>16,d=e[(O+1)%16],p+=65535&(u=((_=t[(O+1)%16])>>>1|d<<31)^(_>>>8|d<<24)^(_>>>7|d<<25)),f+=u>>>16,m+=65535&(l=(d>>>1|_<<31)^(d>>>8|_<<24)^d>>>7),h+=l>>>16,d=e[(O+14)%16],f+=(u=((_=t[(O+14)%16])>>>19|d<<13)^(d>>>29|_<<3)^(_>>>6|d<<26))>>>16,m+=65535&(l=(d>>>19|_<<13)^(_>>>29|d<<3)^d>>>6),h+=l>>>16,h+=(m+=(f+=(p+=65535&u)>>>16)>>>16)>>>16,e[O]=65535&m|h<<16,t[O]=65535&p|f<<16}p=65535&(u=k),f=u>>>16,m=65535&(l=g),h=l>>>16,l=n[0],f+=(u=i[0])>>>16,m+=65535&l,h+=l>>>16,h+=(m+=(f+=(p+=65535&u)>>>16)>>>16)>>>16,n[0]=g=65535&m|h<<16,i[0]=k=65535&p|f<<16,p=65535&(u=E),f=u>>>16,m=65535&(l=y),h=l>>>16,l=n[1],f+=(u=i[1])>>>16,m+=65535&l,h+=l>>>16,h+=(m+=(f+=(p+=65535&u)>>>16)>>>16)>>>16,n[1]=y=65535&m|h<<16,i[1]=E=65535&p|f<<16,p=65535&(u=C),f=u>>>16,m=65535&(l=v),h=l>>>16,l=n[2],f+=(u=i[2])>>>16,m+=65535&l,h+=l>>>16,h+=(m+=(f+=(p+=65535&u)>>>16)>>>16)>>>16,n[2]=v=65535&m|h<<16,i[2]=C=65535&p|f<<16,p=65535&(u=N),f=u>>>16,m=65535&(l=b),h=l>>>16,l=n[3],f+=(u=i[3])>>>16,m+=65535&l,h+=l>>>16,h+=(m+=(f+=(p+=65535&u)>>>16)>>>16)>>>16,n[3]=b=65535&m|h<<16,i[3]=N=65535&p|f<<16,p=65535&(u=A),f=u>>>16,m=65535&(l=x),h=l>>>16,l=n[4],f+=(u=i[4])>>>16,m+=65535&l,h+=l>>>16,h+=(m+=(f+=(p+=65535&u)>>>16)>>>16)>>>16,n[4]=x=65535&m|h<<16,i[4]=A=65535&p|f<<16,p=65535&(u=I),f=u>>>16,m=65535&(l=S),h=l>>>16,l=n[5],f+=(u=i[5])>>>16,m+=65535&l,h+=l>>>16,h+=(m+=(f+=(p+=65535&u)>>>16)>>>16)>>>16,n[5]=S=65535&m|h<<16,i[5]=I=65535&p|f<<16,p=65535&(u=D),f=u>>>16,m=65535&(l=T),h=l>>>16,l=n[6],f+=(u=i[6])>>>16,m+=65535&l,h+=l>>>16,h+=(m+=(f+=(p+=65535&u)>>>16)>>>16)>>>16,n[6]=T=65535&m|h<<16,i[6]=D=65535&p|f<<16,p=65535&(u=P),f=u>>>16,m=65535&(l=w),h=l>>>16,l=n[7],f+=(u=i[7])>>>16,m+=65535&l,h+=l>>>16,h+=(m+=(f+=(p+=65535&u)>>>16)>>>16)>>>16,n[7]=w=65535&m|h<<16,i[7]=P=65535&p|f<<16,a+=128,c-=128}return a}t.hash=function(e){var t=new o;t.update(e);var n=t.digest();return t.clean(),n}},87052:(e,t)=>{"use strict";t.lF=void 0;const n="utf8: invalid string",r="utf8: invalid source encoding";function i(e){let t=0;for(let r=0;r<e.length;r++){let i=e.charCodeAt(r);if(i>=55296&&i<=56319){if(r===e.length-1)throw new Error(n);r++;const t=e.charCodeAt(r);if(t<56320||t>57343)throw new Error(n);i=t-56320+(i-55296<<10)+65536}t+=i<128?1:i<2048?2:i<65536?3:4}return t}t.lF=function(e){const t=new Uint8Array(i(e));let n=0;for(let r=0;r<e.length;r++){let i=e.charCodeAt(r);i>=55296&&i<=56319&&(i=(i-55296<<10)+(e.charCodeAt(++r)-56320)+65536),i<128?t[n++]=i:i<2048?(t[n++]=192|i>>6,t[n++]=128|63&i):i<65536?(t[n++]=224|i>>12,t[n++]=128|i>>6&63,t[n++]=128|63&i):(t[n++]=240|i>>18,t[n++]=128|i>>12&63,t[n++]=128|i>>6&63,t[n++]=128|63&i)}return t}},76228:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.wipe=function(e){for(var t=0;t<e.length;t++)e[t]=0;return e}},90074:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.X25519Session=t.SECRET_SEED_LENGTH=t.SAVED_STATE_LENGTH=t.ACCEPT_MESSAGE_LENGTH=t.OFFER_MESSAGE_LENGTH=void 0;const r=n(37052),i=n(76228),o=n(774),s=n(32492);t.OFFER_MESSAGE_LENGTH=o.PUBLIC_KEY_LENGTH,t.ACCEPT_MESSAGE_LENGTH=o.PUBLIC_KEY_LENGTH,t.SAVED_STATE_LENGTH=o.SECRET_KEY_LENGTH,t.SECRET_SEED_LENGTH=o.SECRET_KEY_LENGTH;t.X25519Session=class{constructor(e,n){this.offerMessageLength=t.OFFER_MESSAGE_LENGTH,this.acceptMessageLength=t.ACCEPT_MESSAGE_LENGTH,this.sharedKeyLength=o.SHARED_KEY_LENGTH,this.savedStateLength=t.SAVED_STATE_LENGTH,this._seed=e||(0,r.randomBytes)(o.SECRET_KEY_LENGTH,n)}saveState(){return new Uint8Array(this._seed)}restoreState(e){return this._seed=new Uint8Array(e),this}clean(){this._seed&&(0,i.wipe)(this._seed),this._keyPair&&((0,i.wipe)(this._keyPair.secretKey),(0,i.wipe)(this._keyPair.publicKey)),this._sharedKey&&(0,i.wipe)(this._sharedKey),this._sessionKeys&&((0,i.wipe)(this._sessionKeys.receive),(0,i.wipe)(this._sessionKeys.send))}offer(){return this._keyPair=(0,o.generateKeyPairFromSeed)(this._seed),new Uint8Array(this._keyPair.publicKey)}accept(e){if(this._keyPair)throw new Error("X25519Session: accept shouldn't be called by offering party");if(e.length!==this.offerMessageLength)throw new Error("X25519Session: incorrect offer message length");if(this._sharedKey)throw new Error("X25519Session: accept was already called");const t=(0,o.generateKeyPairFromSeed)(this._seed);return this._sharedKey=(0,o.sharedKey)(t.secretKey,e),this._sessionKeys=(0,s.clientSessionKeysFromSharedKey)(this._sharedKey,t.publicKey,e),(0,i.wipe)(t.secretKey),t.publicKey}finish(e){if(e.length!==this.acceptMessageLength)throw new Error("X25519Session: incorrect accept message length");if(!this._keyPair)throw new Error("X25519Session: no offer state");if(this._sharedKey)throw new Error("X25519Session: finish was already called");return this._sharedKey=(0,o.sharedKey)(this._keyPair.secretKey,e),this._sessionKeys=(0,s.serverSessionKeysFromSharedKey)(this._sharedKey,this._keyPair.publicKey,e),this}getSharedKey(){if(!this._sharedKey)throw new Error("X25519Session: no shared key established");return new Uint8Array(this._sharedKey)}getSessionKeys(){if(!this._sessionKeys)throw new Error("X25519Session: no shared key established");return{receive:new Uint8Array(this._sessionKeys.receive),send:new Uint8Array(this._sessionKeys.send)}}}},32492:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.clientSessionKeys=t.serverSessionKeys=t.clientSessionKeysFromSharedKey=t.serverSessionKeysFromSharedKey=t.X25519Session=void 0;const r=n(19444),i=n(774);var o=n(90074);Object.defineProperty(t,"X25519Session",{enumerable:!0,get:function(){return o.X25519Session}});const s=32;function a(e,t,n,i=r.BLAKE2b){const o=new i;if(o.digestLength!==2*s)throw new Error("X25519: incorrect digest length");const a=o.update(e).update(n).update(t).digest();return{send:a.subarray(0,s),receive:a.subarray(s)}}function c(e,t,n,i=r.BLAKE2b){const o=new i;if(o.digestLength!==2*s)throw new Error("X25519: incorrect digest length");const a=o.update(e).update(t).update(n).digest();return{receive:a.subarray(0,s),send:a.subarray(s)}}t.serverSessionKeysFromSharedKey=a,t.clientSessionKeysFromSharedKey=c,t.serverSessionKeys=function(e,t,n=r.BLAKE2b){return a((0,i.sharedKey)(e.secretKey,t),e.publicKey,t,n)},t.clientSessionKeys=function(e,t,n=r.BLAKE2b){return c((0,i.sharedKey)(e.secretKey,t),e.publicKey,t,n)}},774:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.sharedKey=t.generateKeyPair=t.generateKeyPairFromSeed=t.scalarMultBase=t.scalarMult=t.SHARED_KEY_LENGTH=t.SECRET_KEY_LENGTH=t.PUBLIC_KEY_LENGTH=void 0;const r=n(37052),i=n(76228);function o(e){const t=new Float64Array(16);if(e)for(let n=0;n<e.length;n++)t[n]=e[n];return t}t.PUBLIC_KEY_LENGTH=32,t.SECRET_KEY_LENGTH=32,t.SHARED_KEY_LENGTH=32;const s=new Uint8Array(32);s[0]=9;const a=o([56129,1]);function c(e){let t=1;for(let n=0;n<16;n++){let r=e[n]+t+65535;t=Math.floor(r/65536),e[n]=r-65536*t}e[0]+=t-1+37*(t-1)}function l(e,t,n){const r=~(n-1);for(let i=0;i<16;i++){const n=r&(e[i]^t[i]);e[i]^=n,t[i]^=n}}function u(e,t,n){for(let r=0;r<16;r++)e[r]=t[r]+n[r]}function d(e,t,n){for(let r=0;r<16;r++)e[r]=t[r]-n[r]}function _(e,t,n){let r,i,o=0,s=0,a=0,c=0,l=0,u=0,d=0,_=0,p=0,f=0,m=0,h=0,g=0,y=0,v=0,b=0,x=0,S=0,T=0,w=0,k=0,E=0,C=0,N=0,A=0,I=0,D=0,P=0,M=0,O=0,F=0,R=n[0],L=n[1],j=n[2],z=n[3],U=n[4],B=n[5],q=n[6],V=n[7],K=n[8],J=n[9],W=n[10],H=n[11],G=n[12],Q=n[13],Y=n[14],Z=n[15];r=t[0],o+=r*R,s+=r*L,a+=r*j,c+=r*z,l+=r*U,u+=r*B,d+=r*q,_+=r*V,p+=r*K,f+=r*J,m+=r*W,h+=r*H,g+=r*G,y+=r*Q,v+=r*Y,b+=r*Z,r=t[1],s+=r*R,a+=r*L,c+=r*j,l+=r*z,u+=r*U,d+=r*B,_+=r*q,p+=r*V,f+=r*K,m+=r*J,h+=r*W,g+=r*H,y+=r*G,v+=r*Q,b+=r*Y,x+=r*Z,r=t[2],a+=r*R,c+=r*L,l+=r*j,u+=r*z,d+=r*U,_+=r*B,p+=r*q,f+=r*V,m+=r*K,h+=r*J,g+=r*W,y+=r*H,v+=r*G,b+=r*Q,x+=r*Y,S+=r*Z,r=t[3],c+=r*R,l+=r*L,u+=r*j,d+=r*z,_+=r*U,p+=r*B,f+=r*q,m+=r*V,h+=r*K,g+=r*J,y+=r*W,v+=r*H,b+=r*G,x+=r*Q,S+=r*Y,T+=r*Z,r=t[4],l+=r*R,u+=r*L,d+=r*j,_+=r*z,p+=r*U,f+=r*B,m+=r*q,h+=r*V,g+=r*K,y+=r*J,v+=r*W,b+=r*H,x+=r*G,S+=r*Q,T+=r*Y,w+=r*Z,r=t[5],u+=r*R,d+=r*L,_+=r*j,p+=r*z,f+=r*U,m+=r*B,h+=r*q,g+=r*V,y+=r*K,v+=r*J,b+=r*W,x+=r*H,S+=r*G,T+=r*Q,w+=r*Y,k+=r*Z,r=t[6],d+=r*R,_+=r*L,p+=r*j,f+=r*z,m+=r*U,h+=r*B,g+=r*q,y+=r*V,v+=r*K,b+=r*J,x+=r*W,S+=r*H,T+=r*G,w+=r*Q,k+=r*Y,E+=r*Z,r=t[7],_+=r*R,p+=r*L,f+=r*j,m+=r*z,h+=r*U,g+=r*B,y+=r*q,v+=r*V,b+=r*K,x+=r*J,S+=r*W,T+=r*H,w+=r*G,k+=r*Q,E+=r*Y,C+=r*Z,r=t[8],p+=r*R,f+=r*L,m+=r*j,h+=r*z,g+=r*U,y+=r*B,v+=r*q,b+=r*V,x+=r*K,S+=r*J,T+=r*W,w+=r*H,k+=r*G,E+=r*Q,C+=r*Y,N+=r*Z,r=t[9],f+=r*R,m+=r*L,h+=r*j,g+=r*z,y+=r*U,v+=r*B,b+=r*q,x+=r*V,S+=r*K,T+=r*J,w+=r*W,k+=r*H,E+=r*G,C+=r*Q,N+=r*Y,A+=r*Z,r=t[10],m+=r*R,h+=r*L,g+=r*j,y+=r*z,v+=r*U,b+=r*B,x+=r*q,S+=r*V,T+=r*K,w+=r*J,k+=r*W,E+=r*H,C+=r*G,N+=r*Q,A+=r*Y,I+=r*Z,r=t[11],h+=r*R,g+=r*L,y+=r*j,v+=r*z,b+=r*U,x+=r*B,S+=r*q,T+=r*V,w+=r*K,k+=r*J,E+=r*W,C+=r*H,N+=r*G,A+=r*Q,I+=r*Y,D+=r*Z,r=t[12],g+=r*R,y+=r*L,v+=r*j,b+=r*z,x+=r*U,S+=r*B,T+=r*q,w+=r*V,k+=r*K,E+=r*J,C+=r*W,N+=r*H,A+=r*G,I+=r*Q,D+=r*Y,P+=r*Z,r=t[13],y+=r*R,v+=r*L,b+=r*j,x+=r*z,S+=r*U,T+=r*B,w+=r*q,k+=r*V,E+=r*K,C+=r*J,N+=r*W,A+=r*H,I+=r*G,D+=r*Q,P+=r*Y,M+=r*Z,r=t[14],v+=r*R,b+=r*L,x+=r*j,S+=r*z,T+=r*U,w+=r*B,k+=r*q,E+=r*V,C+=r*K,N+=r*J,A+=r*W,I+=r*H,D+=r*G,P+=r*Q,M+=r*Y,O+=r*Z,r=t[15],b+=r*R,x+=r*L,S+=r*j,T+=r*z,w+=r*U,k+=r*B,E+=r*q,C+=r*V,N+=r*K,A+=r*J,I+=r*W,D+=r*H,P+=r*G,M+=r*Q,O+=r*Y,F+=r*Z,o+=38*x,s+=38*S,a+=38*T,c+=38*w,l+=38*k,u+=38*E,d+=38*C,_+=38*N,p+=38*A,f+=38*I,m+=38*D,h+=38*P,g+=38*M,y+=38*O,v+=38*F,i=1,r=o+i+65535,i=Math.floor(r/65536),o=r-65536*i,r=s+i+65535,i=Math.floor(r/65536),s=r-65536*i,r=a+i+65535,i=Math.floor(r/65536),a=r-65536*i,r=c+i+65535,i=Math.floor(r/65536),c=r-65536*i,r=l+i+65535,i=Math.floor(r/65536),l=r-65536*i,r=u+i+65535,i=Math.floor(r/65536),u=r-65536*i,r=d+i+65535,i=Math.floor(r/65536),d=r-65536*i,r=_+i+65535,i=Math.floor(r/65536),_=r-65536*i,r=p+i+65535,i=Math.floor(r/65536),p=r-65536*i,r=f+i+65535,i=Math.floor(r/65536),f=r-65536*i,r=m+i+65535,i=Math.floor(r/65536),m=r-65536*i,r=h+i+65535,i=Math.floor(r/65536),h=r-65536*i,r=g+i+65535,i=Math.floor(r/65536),g=r-65536*i,r=y+i+65535,i=Math.floor(r/65536),y=r-65536*i,r=v+i+65535,i=Math.floor(r/65536),v=r-65536*i,r=b+i+65535,i=Math.floor(r/65536),b=r-65536*i,o+=i-1+37*(i-1),i=1,r=o+i+65535,i=Math.floor(r/65536),o=r-65536*i,r=s+i+65535,i=Math.floor(r/65536),s=r-65536*i,r=a+i+65535,i=Math.floor(r/65536),a=r-65536*i,r=c+i+65535,i=Math.floor(r/65536),c=r-65536*i,r=l+i+65535,i=Math.floor(r/65536),l=r-65536*i,r=u+i+65535,i=Math.floor(r/65536),u=r-65536*i,r=d+i+65535,i=Math.floor(r/65536),d=r-65536*i,r=_+i+65535,i=Math.floor(r/65536),_=r-65536*i,r=p+i+65535,i=Math.floor(r/65536),p=r-65536*i,r=f+i+65535,i=Math.floor(r/65536),f=r-65536*i,r=m+i+65535,i=Math.floor(r/65536),m=r-65536*i,r=h+i+65535,i=Math.floor(r/65536),h=r-65536*i,r=g+i+65535,i=Math.floor(r/65536),g=r-65536*i,r=y+i+65535,i=Math.floor(r/65536),y=r-65536*i,r=v+i+65535,i=Math.floor(r/65536),v=r-65536*i,r=b+i+65535,i=Math.floor(r/65536),b=r-65536*i,o+=i-1+37*(i-1),e[0]=o,e[1]=s,e[2]=a,e[3]=c,e[4]=l,e[5]=u,e[6]=d,e[7]=_,e[8]=p,e[9]=f,e[10]=m,e[11]=h,e[12]=g,e[13]=y,e[14]=v,e[15]=b}function p(e,t){_(e,t,t)}function f(e,t){const n=new Uint8Array(32),r=new Float64Array(80),i=o(),s=o(),f=o(),m=o(),h=o(),g=o();for(let o=0;o<31;o++)n[o]=e[o];n[31]=127&e[31]|64,n[0]&=248,function(e,t){for(let n=0;n<16;n++)e[n]=t[2*n]+(t[2*n+1]<<8);e[15]&=32767}(r,t);for(let o=0;o<16;o++)s[o]=r[o];i[0]=m[0]=1;for(let o=254;o>=0;--o){const e=n[o>>>3]>>>(7&o)&1;l(i,s,e),l(f,m,e),u(h,i,f),d(i,i,f),u(f,s,m),d(s,s,m),p(m,h),p(g,i),_(i,f,i),_(f,s,h),u(h,i,f),d(i,i,f),p(s,i),d(f,m,g),_(i,f,a),u(i,i,m),_(f,f,i),_(i,m,g),_(m,s,r),p(s,h),l(i,s,e),l(f,m,e)}for(let o=0;o<16;o++)r[o+16]=i[o],r[o+32]=f[o],r[o+48]=s[o],r[o+64]=m[o];const y=r.subarray(32),v=r.subarray(16);!function(e,t){const n=o();for(let r=0;r<16;r++)n[r]=t[r];for(let r=253;r>=0;r--)p(n,n),2!==r&&4!==r&&_(n,n,t);for(let r=0;r<16;r++)e[r]=n[r]}(y,y),_(v,v,y);const b=new Uint8Array(32);return function(e,t){const n=o(),r=o();for(let i=0;i<16;i++)r[i]=t[i];c(r),c(r),c(r);for(let i=0;i<2;i++){n[0]=r[0]-65517;for(let t=1;t<15;t++)n[t]=r[t]-65535-(n[t-1]>>16&1),n[t-1]&=65535;n[15]=r[15]-32767-(n[14]>>16&1);const e=n[15]>>16&1;n[14]&=65535,l(r,n,1-e)}for(let i=0;i<16;i++)e[2*i]=255&r[i],e[2*i+1]=r[i]>>8}(b,v),b}function m(e){return f(e,s)}function h(e){if(e.length!==t.SECRET_KEY_LENGTH)throw new Error(`x25519: seed must be ${t.SECRET_KEY_LENGTH} bytes`);const n=new Uint8Array(e);return{publicKey:m(n),secretKey:n}}t.scalarMult=f,t.scalarMultBase=m,t.generateKeyPairFromSeed=h,t.generateKeyPair=function(e){const t=(0,r.randomBytes)(32,e),n=h(t);return(0,i.wipe)(t),n},t.sharedKey=function(e,n,r=!1){if(e.length!==t.PUBLIC_KEY_LENGTH)throw new Error("X25519: incorrect secret key length");if(n.length!==t.PUBLIC_KEY_LENGTH)throw new Error("X25519: incorrect public key length");const i=f(e,n);if(r){let e=0;for(let t=0;t<i.length;t++)e|=i[t];if(0===e)throw new Error("X25519: invalid shared key")}return i}},36166:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(30972),i=n(3612),o=n(76228);function s(e,t,n,r,s){if(void 0===s&&(s=0),0===s){if(24!==t.length)throw new Error("XSalsa20 nonce must be 24 bytes")}else if(32!==t.length)throw new Error("XSalsa20 nonce with counter must be 32 bytes");var a=c(e,t.subarray(0,16),new Uint8Array(32)),l=i.streamXOR(a,t.subarray(16),n,r,s);return o.wipe(a),l}t.streamXOR=s,t.stream=function(e,t,n,r){return void 0===r&&(r=0),o.wipe(n),s(e,t,n,n,r)};var a=20;function c(e,t,n){for(var i,o=1634760805,s=e[3]<<24|e[2]<<16|e[1]<<8|e[0],c=e[7]<<24|e[6]<<16|e[5]<<8|e[4],l=e[11]<<24|e[10]<<16|e[9]<<8|e[8],u=e[15]<<24|e[14]<<16|e[13]<<8|e[12],d=857760878,_=t[3]<<24|t[2]<<16|t[1]<<8|t[0],p=t[7]<<24|t[6]<<16|t[5]<<8|t[4],f=t[11]<<24|t[10]<<16|t[9]<<8|t[8],m=t[15]<<24|t[14]<<16|t[13]<<8|t[12],h=2036477234,g=e[19]<<24|e[18]<<16|e[17]<<8|e[16],y=e[23]<<24|e[22]<<16|e[21]<<8|e[20],v=e[27]<<24|e[26]<<16|e[25]<<8|e[24],b=e[31]<<24|e[30]<<16|e[29]<<8|e[28],x=1797285236,S=0;S<a;S+=2)o^=(i=(y^=(i=(f^=(i=(u^=(i=o+y|0)<<7|i>>>25)+o|0)<<9|i>>>23)+u|0)<<13|i>>>19)+f|0)<<18|i>>>14,d^=(i=(s^=(i=(v^=(i=(m^=(i=d+s|0)<<7|i>>>25)+d|0)<<9|i>>>23)+m|0)<<13|i>>>19)+v|0)<<18|i>>>14,h^=(i=(_^=(i=(c^=(i=(b^=(i=h+_|0)<<7|i>>>25)+h|0)<<9|i>>>23)+b|0)<<13|i>>>19)+c|0)<<18|i>>>14,x^=(i=(g^=(i=(p^=(i=(l^=(i=x+g|0)<<7|i>>>25)+x|0)<<9|i>>>23)+l|0)<<13|i>>>19)+p|0)<<18|i>>>14,o^=(i=(l^=(i=(c^=(i=(s^=(i=o+l|0)<<7|i>>>25)+o|0)<<9|i>>>23)+s|0)<<13|i>>>19)+c|0)<<18|i>>>14,d^=(i=(u^=(i=(p^=(i=(_^=(i=d+u|0)<<7|i>>>25)+d|0)<<9|i>>>23)+_|0)<<13|i>>>19)+p|0)<<18|i>>>14,h^=(i=(m^=(i=(f^=(i=(g^=(i=h+m|0)<<7|i>>>25)+h|0)<<9|i>>>23)+g|0)<<13|i>>>19)+f|0)<<18|i>>>14,x^=(i=(b^=(i=(v^=(i=(y^=(i=x+b|0)<<7|i>>>25)+x|0)<<9|i>>>23)+y|0)<<13|i>>>19)+v|0)<<18|i>>>14;return r.writeUint32LE(o,n,0),r.writeUint32LE(d,n,4),r.writeUint32LE(h,n,8),r.writeUint32LE(x,n,12),r.writeUint32LE(_,n,16),r.writeUint32LE(p,n,20),r.writeUint32LE(f,n,24),r.writeUint32LE(m,n,28),n}t.hsalsa=c},79434:(e,t,n)=>{"use strict";n.r(t),n.d(t,{BeaconWallet:()=>Cy,BeaconWalletNotInitialized:()=>wy,MissingRequiredScopes:()=>ky,VERSION:()=>Ey});var r={};n.r(r),n.d(r,{hasBrowserEnv:()=>xn,hasStandardBrowserEnv:()=>Tn,hasStandardBrowserWebWorkerEnv:()=>wn,navigator:()=>Sn,origin:()=>kn});var i={};n.r(i),n.d(i,{identity:()=>Go});var o={};n.r(o),n.d(o,{base2:()=>Qo});var s={};n.r(s),n.d(s,{base8:()=>Yo});var a={};n.r(a),n.d(a,{base10:()=>Zo});var c={};n.r(c),n.d(c,{base16:()=>Xo,base16upper:()=>$o});var l={};n.r(l),n.d(l,{base32:()=>es,base32hex:()=>is,base32hexpad:()=>ss,base32hexpadupper:()=>as,base32hexupper:()=>os,base32pad:()=>ns,base32padupper:()=>rs,base32upper:()=>ts,base32z:()=>cs});var u={};n.r(u),n.d(u,{base36:()=>ls,base36upper:()=>us});var d={};n.r(d),n.d(d,{base58btc:()=>ds,base58flickr:()=>_s});var _={};n.r(_),n.d(_,{base64:()=>ps,base64pad:()=>fs,base64url:()=>ms,base64urlpad:()=>hs});var p={};n.r(p),n.d(p,{base256emoji:()=>bs});var f={};n.r(f),n.d(f,{sha256:()=>Js,sha512:()=>Ws});var m={};n.r(m),n.d(m,{identity:()=>Gs});var h={};n.r(h),n.d(h,{code:()=>Ys,decode:()=>Xs,encode:()=>Zs,name:()=>Qs});var g,y={};function v(e){return Object.keys(e)}n.r(y),n.d(y,{code:()=>na,decode:()=>ia,encode:()=>ra,name:()=>ta}),function(e){e.PENDING="pending",e.RESOLVED="resolved",e.REJECTED="rejected"}(g||(g={}));const b=()=>{throw new Error("ExposedPromise not initialized yet.")};class x{_promise;_resolve=b;_reject=b;_status=g.PENDING;_promiseResult;_promiseError;get promise(){return this._promise}get resolve(){return this._resolve}get reject(){return this._reject}get status(){return this._status}get promiseResult(){return this._promiseResult}get promiseError(){return this._promiseError}constructor(){this._promise=new Promise(((e,t)=>{this._resolve=t=>{this.isSettled()||(this._promiseResult=t,e(t),this._status=g.RESOLVED)},this._reject=e=>{this.isSettled()||(this._promiseError=e,t(e),this._status=g.REJECTED)}}))}static resolve(e){const t=new x;return t.resolve(e),t}static reject(e){const t=new x;return t.reject(e),t}isPending(){return this.status===g.PENDING}isResolved(){return this.status===g.RESOLVED}isRejected(){return this.status===g.REJECTED}isSettled(){return this.isResolved()||this.isRejected()}}var S=n(91889),T=n(71474),w=n(37052),k=n(87052),E=n(19444),C=n(34904),N=n(14028),A=n(48287).Buffer;function I(e){return A.from(e).toString("hex")}async function D(e){return I("string"==typeof e?(0,E.hash)((0,k.lF)(e),32):(0,E.hash)(e,32))}async function P(e){return(0,C.K)((0,E.hash)((0,k.lF)(e),32))}async function M(e,t){const n=A.from((0,w.randomBytes)(24));return I(A.concat([n,A.from((0,T.secretBox)(t,n,A.from(e,"utf8")))]))}async function O(e,t){const n=e.slice(0,24),r=e.slice(24),i=(0,T.openSecretBox)(t,n,r);if(!i)throw new Error("Decryption failed");return A.from(i).toString("utf8")}async function F(e,t,n){const r=(0,C.a_)(A.from(n)),i=(0,C.J$)(A.from(t)),o="string"==typeof e?(0,k.lF)(e):e,s=o.slice(0,32),a=o.slice(32),c=new E.BLAKE2b(24).update(s,32).update(i,32).digest(),l=(0,T.openBox)(s,r,c,a);if(!l)throw new Error("Decryption failed");return A.from(l).toString()}async function R(e){const t={edpk:{length:54,prefix:A.from(new Uint8Array([6,161,159]))},sppk:{length:55,prefix:A.from(new Uint8Array([6,161,161]))},p2pk:{length:55,prefix:A.from(new Uint8Array([6,161,164]))}};let n,r;if(64===e.length)n=t.edpk.prefix,r=e;else{const i=Object.entries(t);for(let t=0;t<i.length;t++){const[o,s]=i[t];if(e.startsWith(o)&&e.length===s.length){n=s.prefix;const t=S.decode(e);r=t.slice(o.length,t.length).toString("hex");break}}}if(!n||!r)throw new Error(`invalid publicKey: ${e}`);const i=(0,E.hash)(A.from(r,"hex"),20);return S.encode(A.concat([n,A.from(i)]))}function L(e,t){return`@${e}:${t}`}const j=async(e,t)=>{const n=await(async e=>{if(e.length%2!=0)return(0,k.lF)(e);let t=e;e.startsWith("0x")&&(t=e.slice(2));const n=A.from(t,"hex");return n.length===t.length/2?n:(0,k.lF)(e)})(e),r=new Uint8Array([9,245,205,134,18]),i=await(async(e,t=32)=>(0,E.hash)(e,t))(n),o=(0,C._S)(t.secretKey,i);return S.encode(A.concat([A.from(r),A.from(o)]))};var z=n(48287).Buffer;async function U(){const e=(0,w.randomBytes)(16);return[e.slice(0,4),e.slice(4,6),e.slice(6,8),e.slice(8,10),e.slice(10,16)].map((function(e){return z.from(e).toString("hex")})).join("-")}var B,q,V,K,J,W,H,G,Q,Y;!function(e){e.BlockchainRequest="blockchain_request",e.PermissionRequest="permission_request",e.SignPayloadRequest="sign_payload_request",e.OperationRequest="operation_request",e.BroadcastRequest="broadcast_request",e.ChangeAccountRequest="change_account_request",e.BlockchainResponse="blockchain_response",e.PermissionResponse="permission_response",e.SignPayloadResponse="sign_payload_response",e.ProofOfEventChallengeRequest="proof_of_event_challenge_request",e.ProofOfEventChallengeResponse="proof_of_event_challenge_response",e.SimulatedProofOfEventChallengeRequest="simulated_proof_of_event_challenge_request",e.SimulatedProofOfEventChallengeResponse="simulated_proof_of_event_challenge_response",e.OperationResponse="operation_response",e.BroadcastResponse="broadcast_response",e.Acknowledge="acknowledge",e.Disconnect="disconnect",e.Error="error"}(B||(B={})),function(e){e.SIGN="sign",e.OPERATION_REQUEST="operation_request",e.ENCRYPT="encrypt",e.NOTIFICATION="notification",e.THRESHOLD="threshold"}(q||(q={})),function(e){e.MAINNET="mainnet",e.GHOSTNET="ghostnet",e.WEEKLYNET="weeklynet",e.DAILYNET="dailynet",e.DELPHINET="delphinet",e.EDONET="edonet",e.FLORENCENET="florencenet",e.GRANADANET="granadanet",e.HANGZHOUNET="hangzhounet",e.ITHACANET="ithacanet",e.JAKARTANET="jakartanet",e.KATHMANDUNET="kathmandunet",e.LIMANET="limanet",e.MUMBAINET="mumbainet",e.NAIROBINET="nairobinet",e.OXFORDNET="oxfordnet",e.PARISNET="parisnet",e.CUSTOM="custom"}(V||(V={})),function(e){e.ORIGINATION="origination",e.DELEGATION="delegation",e.REVEAL="reveal",e.TRANSACTION="transaction",e.ACTIVATE_ACCOUNT="activate_account",e.ENDORSEMENT="endorsement",e.SEED_NONCE_REVELATION="seed_nonce_revelation",e.DOUBLE_ENDORSEMENT_EVIDENCE="double_endorsement_evidence",e.DOUBLE_BAKING_EVIDENCE="double_baking_evidence",e.PROPOSALS="proposals",e.BALLOT="ballot",e.ATTESTATION="attestation",e.PREATTESTATION="preattestation",e.PREENDORSEMENT="preendorsement",e.SET_DEPOSITS_LIMIT="set_deposits_limit",e.DOUBLE_PREATTESTATION_EVIDENCE="double_preattestation_evidence",e.DOUBLE_PREENDORSEMENT_EVIDENCE="double_preendorsement_evidence",e.ATTESTATION_WITH_SLOT="attestation_with_slot",e.ENDORSEMENT_WITH_SLOT="endorsement_with_slot",e.DOUBLE_ATTESTATION_EVIDENCE="double_attestation_evidence",e.FAILING_NOOP="failing_noop",e.REGISTER_GLOBAL_CONSTANT="register_global_constant",e.TRANSFER_TICKET="transfer_ticket",e.INCREASE_PAID_STORAGE="increase_paid_storage",e.UPDATE_CONSENSUS_KEY="update_consensus_key",e.DRAIN_DELEGATE="drain_delegate",e.VDF_REVELATION="vdf_revelation",e.EVENT="event",e.TICKET_UPDATES="ticket_updates",e.SMART_ROLLUP_ORIGINATE="smart_rollup_originate",e.SMART_ROLLUP_ADD_MESSAGES="smart_rollup_add_messages",e.SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE="smart_rollup_execute_outbox_message",e.SMART_ROLLUP_PUBLISH="smart_rollup_publish",e.SMART_ROLLUP_CEMENT="smart_rollup_cement",e.SMART_ROLLUP_RECOVER_BOND="smart_rollup_recover_bond",e.SMART_ROLLUP_REFUTE="smart_rollup_refute",e.SMART_ROLLUP_TIMEOUT="smart_rollup_timeout",e.DAL_PUBLISH_COMMITMENT="dal_publish_commitment"}(K||(K={})),function(e){e.WEBSITE="website",e.EXTENSION="extension",e.P2P="p2p",e.WALLETCONNECT="walletconnect"}(J||(J={})),function(e){e.BACKGROUND="toBackground",e.PAGE="toPage",e.EXTENSION="toExtension"}(W||(W={})),function(e){e.BROADCAST_ERROR="BROADCAST_ERROR",e.NETWORK_NOT_SUPPORTED="NETWORK_NOT_SUPPORTED",e.NO_ADDRESS_ERROR="NO_ADDRESS_ERROR",e.NO_PRIVATE_KEY_FOUND_ERROR="NO_PRIVATE_KEY_FOUND_ERROR",e.NOT_GRANTED_ERROR="NOT_GRANTED_ERROR",e.PARAMETERS_INVALID_ERROR="PARAMETERS_INVALID_ERROR",e.TOO_MANY_OPERATIONS="TOO_MANY_OPERATIONS",e.TRANSACTION_INVALID_ERROR="TRANSACTION_INVALID_ERROR",e.SIGNATURE_TYPE_NOT_SUPPORTED="SIGNATURE_TYPE_NOT_SUPPORTED",e.ABORTED_ERROR="ABORTED_ERROR",e.UNKNOWN_ERROR="UNKNOWN_ERROR"}(H||(H={})),function(e){e.NOT_CONNECTED="NOT_CONNECTED",e.CONNECTING="CONNECTING",e.CONNECTED="CONNECTED"}(G||(G={})),function(e){e.CHROME_MESSAGE="chrome_message",e.WALLETCONNECT="walletconnect",e.POST_MESSAGE="post_message",e.LEDGER="ledger",e.P2P="p2p"}(Q||(Q={}));class Z{static isSupported(){return Promise.resolve(!1)}}!function(e){e.TRANSPORT_P2P_PEERS_DAPP="beacon:communication-peers-dapp",e.TRANSPORT_P2P_PEERS_WALLET="beacon:communication-peers-wallet",e.TRANSPORT_POSTMESSAGE_PEERS_DAPP="beacon:postmessage-peers-dapp",e.TRANSPORT_POSTMESSAGE_PEERS_WALLET="beacon:postmessage-peers-wallet",e.TRANSPORT_WALLETCONNECT_PEERS_DAPP="beacon:walletconnect-peers-dapp",e.LAST_SELECTED_WALLET="beacon:last-selected-wallet",e.ACCOUNTS="beacon:accounts",e.ACTIVE_ACCOUNT="beacon:active-account",e.PUSH_TOKENS="beacon:push-tokens",e.BEACON_SDK_SECRET_SEED="beacon:sdk-secret-seed",e.APP_METADATA_LIST="beacon:app-metadata-list",e.PERMISSION_LIST="beacon:permissions",e.ONGOING_PROOF_OF_EVENT_CHALLENGES="beacon:ongoing-proof-of-event-challenges",e.BEACON_SDK_VERSION="beacon:sdk_version",e.MATRIX_PRESERVED_STATE="beacon:sdk-matrix-preserved-state",e.MATRIX_PEER_ROOM_IDS="beacon:matrix-peer-rooms",e.MATRIX_SELECTED_NODE="beacon:matrix-selected-node",e.MULTI_NODE_SETUP_DONE="beacon:multi-node-setup",e.USER_ID="beacon:user-id",e.ENABLE_METRICS="beacon:enable_metrics",e.WC_2_CORE_PAIRING="wc@2:core:0.3:pairing",e.WC_2_CLIENT_SESSION="wc@2:client:0.3:session",e.WC_2_CORE_KEYCHAIN="wc@2:core:0.3:keychain",e.WC_2_CORE_MESSAGES="wc@2:core:0.3:messages",e.WC_2_CLIENT_PROPOSAL="wc@2:client:0.3:proposal",e.WC_2_CORE_SUBSCRIPTION="wc@2:core:0.3:subscription",e.WC_2_CORE_HISTORY="wc@2:core:0.3:history",e.WC_2_CORE_EXPIRER="wc@2:core:0.3:expirer"}(Y||(Y={}));const X={[Y.TRANSPORT_P2P_PEERS_DAPP]:[],[Y.TRANSPORT_P2P_PEERS_WALLET]:[],[Y.TRANSPORT_POSTMESSAGE_PEERS_DAPP]:[],[Y.TRANSPORT_POSTMESSAGE_PEERS_WALLET]:[],[Y.TRANSPORT_WALLETCONNECT_PEERS_DAPP]:[],[Y.LAST_SELECTED_WALLET]:void 0,[Y.ACCOUNTS]:[],[Y.ACTIVE_ACCOUNT]:void 0,[Y.PUSH_TOKENS]:[],[Y.BEACON_SDK_SECRET_SEED]:void 0,[Y.APP_METADATA_LIST]:[],[Y.PERMISSION_LIST]:[],[Y.ONGOING_PROOF_OF_EVENT_CHALLENGES]:[],[Y.BEACON_SDK_VERSION]:void 0,[Y.MATRIX_PRESERVED_STATE]:{},[Y.MATRIX_PEER_ROOM_IDS]:{},[Y.MATRIX_SELECTED_NODE]:void 0,[Y.MULTI_NODE_SETUP_DONE]:void 0,[Y.WC_2_CLIENT_SESSION]:void 0,[Y.USER_ID]:void 0,[Y.ENABLE_METRICS]:void 0,[Y.WC_2_CORE_PAIRING]:void 0,[Y.WC_2_CORE_KEYCHAIN]:void 0,[Y.WC_2_CORE_MESSAGES]:void 0,[Y.WC_2_CLIENT_PROPOSAL]:void 0,[Y.WC_2_CORE_SUBSCRIPTION]:void 0,[Y.WC_2_CORE_HISTORY]:void 0,[Y.WC_2_CORE_EXPIRER]:void 0};class ${type="p2p-pairing-request";relayServer;id;name;icon;appUrl;publicKey;version;constructor(e,t,n,r,i,o,s){this.id=e,this.name=t,this.icon=o,this.appUrl=s,this.publicKey=n,this.version=r,this.relayServer=i}}var ee,te,ne;!function(e){e.RAW="raw",e.OPERATION="operation",e.MICHELINE="micheline"}(ee||(ee={}));class re{type="p2p-pairing-request";relayServer;id;name;icon;appUrl;publicKey;version;constructor(e,t,n,r,i,o,s){this.id=e,this.name=t,this.icon=o,this.appUrl=s,this.publicKey=n,this.version=r,this.relayServer=i}}class ie{type="postmessage-pairing-request";id;name;icon;appUrl;publicKey;version;constructor(e,t,n,r,i,o){this.id=e,this.name=t,this.icon=i,this.appUrl=o,this.publicKey=n,this.version=r}}class oe{type="walletconnect-pairing-response";id;name;icon;appUrl;publicKey;version;constructor(e,t,n,r,i,o){this.id=e,this.name=t,this.icon=i,this.appUrl=o,this.publicKey=n,this.version=r}}class se extends oe{senderId;extensionId;constructor(e,t,n,r,i,o,s,a){super(e,t,n,r,s,a),this.senderId=i,this.extensionId=o}}class ae{type="walletconnect-pairing-request";uri;id;name;icon;appUrl;publicKey;version;constructor(e,t,n,r,i,o,s){this.id=e,this.name=t,this.icon=o,this.appUrl=s,this.publicKey=n,this.version=r,this.uri=i}}class ce extends ae{senderId;constructor(e,t,n,r,i,o,s,a){super(e,t,n,r,o,s,a),this.senderId=i}}class le{type="postmessage-pairing-response";id;name;icon;appUrl;publicKey;version;constructor(e,t,n,r,i,o){this.id=e,this.name=t,this.icon=i,this.appUrl=o,this.publicKey=n,this.version=r}}class ue extends le{senderId;extensionId;constructor(e,t,n,r,i,o,s,a){super(e,t,n,r,s,a),this.senderId=i,this.extensionId=o}}!function(e){e.LIGHT="light",e.DARK="dark"}(te||(te={})),function(e){e.EUROPE_EAST="europe-east",e.EUROPE_WEST="europe-west",e.NORTH_AMERICA_EAST="north-america-east",e.NORTH_AMERICA_WEST="north-america-west",e.CENTRAL_AMERICA="central-america",e.SOUTH_AMERICA="south-america",e.ASIA_EAST="asia-east",e.ASIA_WEST="asia-west",e.AFRICA="africa",e.AUSTRALIA="australia"}(ne||(ne={}));const de="4.2.2";var _e=n(96763);const pe=[e=>{}];let fe={postMessage:(e,t)=>{_e.log("GOT MOCK POST MESSAGE",e),pe.forEach((t=>{t({data:e})}))},addEventListener:(e,t)=>{pe.push(t)},removeEventListener:(e,t)=>{pe.splice(pe.indexOf((e=>e===t)),1)},location:{origin:"*"}};try{"undefined"!=typeof window&&(fe=window)}catch(Ny){_e.log(`not defined: ${Ny}`)}class me{track(e,t,n,r){}}var he=n(96763);class ge{name;iconUrl;appUrl;_beaconId=new x;get beaconId(){return this._beaconId.promise}storage;analytics;_keyPair=new x;get keyPair(){return this._keyPair.promise}constructor(e){if(!e.name)throw new Error("Name not set");if(!e.storage)throw new Error("Storage not set");this.name=e.name,this.iconUrl=e.iconUrl,this.appUrl=e.appUrl??fe.location.origin,this.storage=e.storage,this.analytics=e.analytics??new me,fe.beaconCreatedClientInstance?he.error("[BEACON] It looks like you created multiple Beacon SDK Client instances. This can lead to problems. Only create one instance and re-use it everywhere."):fe.beaconCreatedClientInstance=!0,this.initSDK().catch(he.error)}async destroy(){await this.removeBeaconEntriesFromStorage(),fe.beaconCreatedClientInstance=!1}async initSDK(){return this.storage.set(Y.BEACON_SDK_VERSION,de).catch(he.error),this.loadOrCreateBeaconSecret().catch(he.error),this.keyPair.then((e=>{this._beaconId.resolve(I(e.publicKey))}))}async removeBeaconEntriesFromStorage(){const e=Object.values(Y);await Promise.all(e.map((e=>this.storage.delete(e))))}async loadOrCreateBeaconSecret(){const e=await this.storage.get(Y.BEACON_SDK_SECRET_SEED);if(e&&"string"==typeof e)this._keyPair.resolve(await P(e));else{const e=await U();await this.storage.set(Y.BEACON_SDK_SECRET_SEED,e),this._keyPair.resolve(await P(e))}}}class ye{storage;storageKey;constructor(e,t){this.storage=e,this.storageKey=t}async getAll(){return await this.storage.get(this.storageKey)??[]}async getOne(e){return(await this.storage.get(this.storageKey)).find(e)}async addOne(e,t,n=!0){const r=await this.storage.get(this.storageKey);if(r.some(t)){if(n)for(let i=0;i<r.length;i++)t(r[i])&&(r[i]=e)}else r.push(e);return this.storage.set(this.storageKey,r)}async remove(e){const t=(await this.storage.get(this.storageKey)).filter((t=>!e(t)));return this.storage.set(this.storageKey,t)}async removeAll(){return this.storage.delete(this.storageKey)}}var ve=n(48287).Buffer;const be=async(e,t)=>{const n=[e,t.type];t.name&&n.push(`name:${t.name}`),t.rpcUrl&&n.push(`rpc:${t.rpcUrl}`);const r=ve.from((0,E.hash)((0,k.lF)(n.join("-")),10));return S.encode(r)};class xe{static async hasPermission(e,t,n){switch(e.type){case B.PermissionRequest:case B.BroadcastRequest:return!0;case B.OperationRequest:{const n=await be(e.sourceAddress,e.network),r=await t(n);return!!r&&r.scopes.includes(q.OPERATION_REQUEST)}case B.SignPayloadRequest:{const t=(await n()).filter((t=>t.address===e.sourceAddress));return 0!==t.length&&t.some((e=>e.scopes.includes(q.SIGN)))}default:throw new Error("Message not handled")}}}class Se{storageManager;constructor(e){this.storageManager=new ye(e,Y.ACCOUNTS)}async getAccounts(){return await this.storageManager.getAll()??[]}async getAccount(e){return this.storageManager.getOne((t=>t.accountIdentifier===e))}async addAccount(e){return this.storageManager.addOne(e,(t=>t.accountIdentifier===e.accountIdentifier))}async updateAccount(e,t){const n=await this.getAccount(e);if(!n)return;const r={...n,...t};return await this.storageManager.addOne(r,(t=>t.accountIdentifier===e),!0),r}async removeAccount(e){return this.storageManager.remove((t=>t.accountIdentifier===e))}async removeAccounts(e){return this.storageManager.remove((t=>e.includes(t.accountIdentifier)))}async removeAllAccounts(){return this.storageManager.removeAll()}async hasPermission(e){return xe.hasPermission(e,this.getAccount.bind(this),this.getAccounts.bind(this))}}var Te=n(96763),we=n(48287).Buffer;const ke=async e=>{/^[A-F0-9]+$/i.test(e)||Te.error("PublicKey needs to be in hex format!");const t=we.from((0,E.hash)(we.from(e,"hex"),5));return S.encode(t)};var Ee=n(96763);let Ce=!!fe.beaconSdkDebugEnabled;Ce&&Ee.log("[BEACON]: Debug mode is ON (turned on either by the developer or a browser extension)");var Ne=n(96763);class Ae{name;constructor(e){this.name=e}debug(e,...t){Ie.debug(this.name,e,t)}log(e,...t){Ie.log(this.name,e,t)}warn(e,...t){Ie.warn(this.name,e,t)}error(e,...t){Ie.error(this.name,e,t)}time(e,t){Ie.time(e,t)}timeLog(e,...t){Ie.timeLog(e,t)}}new Ae("");let Ie=new class{constructor(){}debug(e,t,...n){this._log("debug",e,t,n)}log(e,t,...n){this._log("log",e,t,n)}warn(e,t,...n){this._log("warn",e,t,n)}error(e,t,...n){this._log("error",e,t,n)}time(e,t){e?Ne.time(t):Ne.timeEnd(t)}timeLog(e,t,...n){this._log("timeLog",e,t,n)}_log(e,t,n,r=[]){if(!Ce)return;let i=`[BEACON] ${(new Date).toISOString()} [${t}](${n})`,o=r;switch(r[0]&&"string"==typeof r[0]&&(i+=` ${r[0]}`,o=r.slice(1)),e){case"error":Ne.group(i),Ne.error(...o);break;case"warn":Ne.group(i),Ne.warn(...o);break;case"debug":Ne.groupCollapsed(i),Ne.debug(...o);break;case"timeLog":Ne.group(i),Ne.timeLog(...o);break;default:Ne.group(i),Ne.log(...o)}Ne.groupEnd()}};const De=new Ae("Client");class Pe extends ge{accountManager;handleResponse;rateLimit=2;rateLimitWindowInSeconds=5;requestCounter=[];matrixNodes;transportListeners=new Map;_transport=new x;get transport(){return this._transport.promise}get connectionStatus(){return this._transport.promiseResult?.connectionStatus??G.NOT_CONNECTED}get ready(){return this.transport.then((()=>{}))}constructor(e){super(e),this.accountManager=new Se(e.storage),this.matrixNodes=e.matrixNodes??{},this.handleResponse=(e,t)=>{throw new Error(`not overwritten${JSON.stringify(e)} - ${JSON.stringify(t)}`)}}async cleanup(){if(this.transportListeners.size&&this._transport.isResolved()){const e=await this.transport;await Promise.all(Array.from(this.transportListeners.values()).map((t=>e.removeListener(t)))),this.transportListeners.clear()}}async getAccounts(){return this.accountManager.getAccounts()}async getAccount(e){return this.accountManager.getAccount(e)}async removeAccount(e){return this.accountManager.removeAccount(e)}async removeAllAccounts(){return this.accountManager.removeAllAccounts()}async addRequestAndCheckIfRateLimited(){const e=(new Date).getTime();return this.requestCounter=this.requestCounter.filter((t=>t+1e3*this.rateLimitWindowInSeconds>e)),this.requestCounter.push(e),this.requestCounter.length>this.rateLimit}async init(e){return this._transport.isResolved()?(await this.transport).type:(await this.setTransport(e),e.type)}async getOwnAppMetadata(){return{senderId:await ke(await this.beaconId),name:this.name,icon:this.iconUrl}}async getPeers(){return(await this.transport).getPeers()}async addPeer(e){return(await this.transport).addPeer(e)}async destroy(){if(this._transport.isResolved()){const e=await this.transport;await this.cleanup(),await e.disconnect(),e.type===Q.WALLETCONNECT&&await e.doClientCleanup()}await super.destroy()}async setTransport(e){e?this._transport.isSettled()?this._transport=x.resolve(e):this._transport.resolve(e):this._transport.isSettled()&&(this._transport=new x)}async addListener(e){this.transportListeners.has(e.type)&&await e.removeListener(this.transportListeners.get(e.type));const t=async(e,t)=>{if("string"==typeof e){const n=await(new He).deserialize(e);this.handleResponse(n,t)}};this.transportListeners.set(e.type,t),e.addListener(t).catch((e=>De.error("addListener",e)))}async sendDisconnectToPeer(e,t){const n={id:await U(),version:e.version,senderId:await ke(await this.beaconId),type:B.Disconnect},r=await(new He).serialize(n),i=t??await this.transport;await i.send(r,e)}}class Me{name="BeaconError";message;title="Error";description;get fullDescription(){return{description:this.description}}constructor(e,t){this.message=`[${e}]:${t}`,this.description=t}static getError(e,t){switch(e){case H.BROADCAST_ERROR:return new Oe;case H.NETWORK_NOT_SUPPORTED:return new Fe;case H.NO_ADDRESS_ERROR:return new Re;case H.NO_PRIVATE_KEY_FOUND_ERROR:return new Le;case H.NOT_GRANTED_ERROR:return new je;case H.PARAMETERS_INVALID_ERROR:return new ze;case H.TOO_MANY_OPERATIONS:return new Ue;case H.TRANSACTION_INVALID_ERROR:return new Be(t);case H.SIGNATURE_TYPE_NOT_SUPPORTED:return new rt;case H.ABORTED_ERROR:return new Qe;case H.UNKNOWN_ERROR:return new qe}}}class Oe extends Me{name="BroadcastBeaconError";title="Broadcast Error";constructor(){super(H.BROADCAST_ERROR,"The transaction could not be broadcast to the network. Please try again.")}}class Fe extends Me{name="NetworkNotSupportedBeaconError";title="Network Error";constructor(){super(H.NETWORK_NOT_SUPPORTED,"The wallet does not support this network. Please select another one.")}}class Re extends Me{name="NoAddressBeaconError";title="No Address";constructor(){super(H.NO_ADDRESS_ERROR,"The wallet does not have an account set up. Please make sure to set up your wallet and try again.")}}class Le extends Me{name="NoPrivateKeyBeaconError";title="Account Not Found";constructor(){super(H.NO_PRIVATE_KEY_FOUND_ERROR,"The account you are trying to interact with is not available. Please make sure to add the account to your wallet and try again.")}}class je extends Me{name="NotGrantedBeaconError";title="Permission Not Granted";constructor(){super(H.NOT_GRANTED_ERROR,"You do not have the necessary permissions to perform this action. Please initiate another permission request and give the necessary permissions.")}}class ze extends Me{name="ParametersInvalidBeaconError";title="Parameters Invalid";constructor(){super(H.PARAMETERS_INVALID_ERROR,"Some of the parameters you provided are invalid and the request could not be completed. Please check your inputs and try again.")}}class Ue extends Me{name="TooManyOperationsBeaconError";title="Too Many Operations";constructor(){super(H.TOO_MANY_OPERATIONS,"The request contains too many transactions. Please include fewer operations and try again.")}}class Be extends Me{data;name="TransactionInvalidBeaconError";title="Transaction Invalid";get fullDescription(){return{description:this.description,data:JSON.stringify(this.data,void 0,2)}}constructor(e){super(H.TRANSACTION_INVALID_ERROR,"The transaction is invalid and the node did not accept it."),this.data=e,this.data=e}}class qe extends Me{name="UnknownBeaconError";title="Error";constructor(){super(H.UNKNOWN_ERROR,"An unknown error occured. Please try again or report it to a developer.")}}const Ve=new Ae("Transport");class Ke{type=Q.POST_MESSAGE;name;_isConnected=G.NOT_CONNECTED;peerManager;client;newPeerListener;setEventHandler(e,t){this.client.eventHandlers.set(e,t)}listeners=[];get connectionStatus(){return this._isConnected}constructor(e,t,n){this.name=e,this.client=t,this.peerManager=n}static async isAvailable(){return Promise.resolve(!1)}async connect(){Ve.log("connect"),this._isConnected=G.CONNECTED}async disconnect(){Ve.log("disconnect"),this._isConnected=G.NOT_CONNECTED}async send(e,t){if(t)return this.client.sendMessage(e,t);{const t=(await this.getPeers()).map((t=>this.client.sendMessage(e,t)));return(await Promise.all(t))[0]}}async addListener(e){Ve.debug("addListener"),this.listeners.push(e)}async removeListener(e){Ve.log("removeListener"),this.listeners=this.listeners.filter((t=>t!==e))}async getPeers(){return this.peerManager.getPeers()}async addPeer(e,t=!0){Ve.log("addPeer","adding peer",e),await this.peerManager.addPeer(e),await this.listen(e.publicKey)}async removePeer(e){Ve.log("removePeer","removing peer",e),await this.peerManager.removePeer(e.publicKey),this.client&&await this.client.unsubscribeFromEncryptedMessage(e.publicKey)}async removeAllPeers(){Ve.log("removeAllPeers"),await this.peerManager.removeAllPeers(),this.client&&await this.client.unsubscribeFromEncryptedMessages()}async notifyListeners(e,t){0===this.listeners.length?Ve.warn("notifyListeners","0 listeners notified!",this):Ve.log("notifyListeners",`Notifying ${this.listeners.length} listeners`,this),this.listeners.forEach((n=>{n(e,t)}))}}class Je extends Z{prefix;constructor(e){super(),this.prefix=e}static async isSupported(){return Promise.resolve(Boolean("undefined"!=typeof window)&&Boolean(window.localStorage))}async get(e){const t=localStorage.getItem(this.getPrefixedKey(e));if(!t)return"object"==typeof X[e]?JSON.parse(JSON.stringify(X[e])):X[e];try{return JSON.parse(t)}catch(n){return t}}async set(e,t){return"string"==typeof t?localStorage.setItem(this.getPrefixedKey(e),t):localStorage.setItem(this.getPrefixedKey(e),JSON.stringify(t))}async delete(e){return Promise.resolve(localStorage.removeItem(this.getPrefixedKey(e)))}async subscribeToStorageChanged(e){window.addEventListener("storage",(t=>{t.key?e({eventType:"entryModified",key:this.getPrefixedKey(t.key),oldValue:t.oldValue,newValue:t.newValue}):e({eventType:"storageCleared",key:null,oldValue:null,newValue:null})}),!1)}getPrefixedKey(e){return this.prefix?`${this.prefix}-${e}`:e}}new Ae("STORAGE");var We=n(48287).Buffer;class He{async serialize(e){const t=JSON.stringify(e);return S.encode(We.from(t))}async deserialize(e){if("string"!=typeof e)throw new Error("Encoded payload needs to be a string");return JSON.parse(S.decode(e).toString())}}class Ge{storageManager;constructor(e){this.storageManager=new ye(e,Y.APP_METADATA_LIST)}async getAppMetadataList(){return await this.storageManager.getAll()??[]}async getAppMetadata(e){return this.storageManager.getOne((t=>t.senderId===e))}async addAppMetadata(e){return this.storageManager.addOne(e,(t=>t.senderId===e.senderId))}async removeAppMetadata(e){return this.storageManager.remove((t=>t.senderId===e))}async removeAppMetadatas(e){return this.storageManager.remove((t=>e.includes(t.senderId)))}async removeAllAppMetadata(){return this.storageManager.removeAll()}}class Qe extends Me{name="UnknownBeaconError";title="Aborted";constructor(){super(H.ABORTED_ERROR,"The action was aborted by the user.")}}class Ye{storageManager;constructor(e,t){this.storageManager=new ye(e,t)}async hasPeer(e){return!!await this.getPeer(e)}async getPeers(){return await this.storageManager.getAll()??[]}async getPeer(e){return this.storageManager.getOne((t=>t.publicKey===e))}async addPeer(e){return this.storageManager.addOne(e,(t=>t.publicKey===e.publicKey))}async removePeer(e){return this.storageManager.remove((t=>t.publicKey===e))}async removePeers(e){return this.storageManager.remove((t=>e.includes(t.publicKey)))}async removeAllPeers(){return this.storageManager.removeAll()}}var Ze=n(32492),Xe=n(48287).Buffer;class $e{keyPair;constructor(e){this.keyPair=e}eventHandlers=new Map;isMobileOS=()=>/(Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini|Mobile|Tablet|Windows Phone|SymbianOS|Kindle)/i.test(navigator.userAgent);async getPublicKey(){return I(this.keyPair?.publicKey)}async getPublicKeyHash(){return D(this.keyPair.publicKey)}async createCryptoBoxServer(e,t){return(0,Ze.serverSessionKeys)({publicKey:(0,C.J$)(t.publicKey),secretKey:(0,C.a_)(t.secretKey)},(0,C.J$)(Xe.from(e,"hex")))}async createCryptoBoxClient(e,t){return(0,Ze.clientSessionKeys)({publicKey:(0,C.J$)(t.publicKey),secretKey:(0,C.a_)(t.secretKey)},(0,C.J$)(Xe.from(e,"hex")))}async encryptMessageAsymmetric(e,t){return async function(e,t){const n=(0,C.J$)(A.from(t)),r=(0,T.generateKeyPair)(),i=new E.BLAKE2b(24).update(r.publicKey,32).update(n,32).digest(),o="string"==typeof e?(0,k.lF)(e):e,s=(0,T.box)(n,r.secretKey,i,o);return I((0,N.x)(r.publicKey,s))}(t,Xe.from(e,"hex"))}}var et=n(96763),tt=n(48287).Buffer;class nt extends $e{name;constructor(e,t){super(t),this.name=e,this.init().catch(et.error)}async start(){await Promise.resolve()}async getPairingRequestInfo(){return new ie(await U(),this.name,await this.getPublicKey(),"3")}async getPairingResponseInfo(e){return new le(e.id,this.name,await this.getPublicKey(),e.version)}async unsubscribeFromEncryptedMessage(e){this.activeListeners.get(e)&&this.activeListeners.delete(e)}async unsubscribeFromEncryptedMessages(){this.activeListeners.clear()}async decryptMessage(e,t){const n=await this.createCryptoBoxServer(e,this.keyPair),r=tt.from(t,"hex");if(r.length>=40)try{return await O(r,n.receive)}catch(i){}throw new Error("Could not decrypt message")}async encryptMessage(e,t){return M(t,(await this.createCryptoBoxClient(e,this.keyPair)).send)}}class rt extends Me{name="SignatureTypeNotSupportedBeaconError";title="Signature Type Not Supported";constructor(){super(H.SIGNATURE_TYPE_NOT_SUPPORTED,"The wallet is not able to sign payloads of this type.")}}const it=new Ae("IndexedDBStorage");class ot extends Z{dbName;storeName;db=null;isSupported=!0;constructor(e="WALLET_CONNECT_V2_INDEXED_DB",t="keyvaluestorage"){super(),this.dbName=e,this.storeName=t,this.initDB().then((e=>this.db=e)).catch((e=>it.error(e.message)))}isIndexedDBSupported(){return"undefined"!=typeof window&&"indexedDB"in window?(it.log("isIndexedDBSupported","IndexedDB is supported in this browser."),!0):(it.error("isIndexedDBSupported","IndexedDB is not supported in this browser."),!1)}async initDB(){return new Promise(((e,t)=>{this.isSupported=this.isIndexedDBSupported(),this.isSupported||t("IndexedDB is not supported.");const n=indexedDB.open(this.dbName);n.onupgradeneeded=e=>{const t=e.target.result;t.objectStoreNames.contains(this.storeName)||t.createObjectStore(this.storeName)},n.onsuccess=t=>e(t.target.result),n.onerror=e=>t(e.target.error)}))}async transaction(e,t){return new Promise(((n,r)=>{this.isSupported||r("IndexedDB is not supported."),this.db?.objectStoreNames.contains(this.storeName)||r(`${this.storeName} not found. error: ${(new Error).stack}`);const i=this.db?.transaction(this.storeName,e),o=i?.objectStore(this.storeName);o&&t(o).then(n).catch(r)}))}get(e){return this.transaction("readonly",(t=>new Promise(((n,r)=>{const i=t.get(e);i.onsuccess=()=>n(i.result),i.onerror=()=>r(i.error)}))))}set(e,t){return this.transaction("readwrite",(n=>new Promise(((r,i)=>{const o=n.put(t,e);o.onsuccess=()=>r(),o.onerror=()=>i(o.error)}))))}delete(e){return this.transaction("readwrite",(t=>new Promise(((n,r)=>{const i=t.delete(e);i.onsuccess=()=>n(),i.onerror=()=>r(i.error)}))))}getAll(){return this.transaction("readonly",(e=>new Promise(((t,n)=>{const r=e.getAll();r.onsuccess=()=>t(r.result),r.onerror=()=>n(r.error)}))))}getAllKeys(){return this.transaction("readonly",(e=>new Promise(((t,n)=>{const r=e.getAllKeys();r.onsuccess=()=>t(r.result),r.onerror=()=>n(r.error)}))))}clearStore(){return this.transaction("readwrite",(e=>new Promise(((t,n)=>{const r=e.clear();r.onsuccess=()=>t(),r.onerror=()=>n(r.error)}))))}getPrefixedKey(e){throw it.debug("getPrefixedKey",e),new Error("Method not implemented.")}subscribeToStorageChanged(e){throw it.debug("subscriveToStorageEvent",e),new Error("Method not implemented.")}async fillStore(e,t,n=[]){if(!this.isSupported)return void it.error("fillStore","IndexedDB not supported.");const r=indexedDB.open(e);r.onerror=e=>{throw new Error(`Failed to open target database: ${e.target.error}`)};const i=await new Promise(((e,t)=>{r.onsuccess=t=>e(t.target.result),r.onerror=e=>t(e.target.error)}));await this.transaction("readonly",(async e=>{const r=e.getAll(),o=e.getAllKeys();r.onsuccess=async()=>{o.onsuccess=async()=>{const e=r.result,s=o.result;if(!i.objectStoreNames.contains(t))return void it.error(`${this.storeName} not found. ${(new Error).stack}`);const a=i.transaction(t,"readwrite"),c=a.objectStore(t);s.filter((e=>!n.includes(e.toString()))).forEach(((t,n)=>{c.put(e[n],t)})),a.onerror=e=>{it.error("Transaction error: ",e.target.error)}}},o.onerror=()=>{it.error("Failed to getAllKeys from source:",o.error)},r.onerror=()=>{it.error("Failed to getAll from source:",r.error)}}))}}var st=n(96763);class at{localStorage=new Je;indexedDB=new ot;channel=new BroadcastChannel("WALLET_CONNECT_V2_INDEXED_DB");onMessageHandler;onErrorHandler;constructor(){this.channel.onmessage=this.onMessage.bind(this),this.channel.onmessageerror=this.onError.bind(this)}onMessage(e){this.onMessageHandler&&this.onMessageHandler(e.data.type)}onError({data:e}){this.onErrorHandler&&this.onErrorHandler(e)}notify(e){this.channel?.postMessage({type:e})}async hasPairings(){return!!(await this.indexedDB.get(Y.WC_2_CORE_PAIRING)??"[]").length||!!await Je.isSupported()&&"[]"!==(await this.localStorage.get(Y.WC_2_CORE_PAIRING)??"[]")}async hasSessions(){return!!(await this.indexedDB.get(Y.WC_2_CLIENT_SESSION)??"[]").length||!!await Je.isSupported()&&"[]"!==(await this.localStorage.get(Y.WC_2_CLIENT_SESSION)??"[]")}backup(){this.indexedDB.fillStore("beacon","bug_report",[Y.WC_2_CORE_KEYCHAIN]).catch((e=>st.error(e.message)))}async resetState(){await this.indexedDB.clearStore(),await Je.isSupported()&&await Promise.all([this.localStorage.delete(Y.WC_2_CLIENT_SESSION),this.localStorage.delete(Y.WC_2_CORE_PAIRING),this.localStorage.delete(Y.WC_2_CORE_KEYCHAIN),this.localStorage.delete(Y.WC_2_CORE_MESSAGES),this.localStorage.delete(Y.WC_2_CLIENT_PROPOSAL),this.localStorage.delete(Y.WC_2_CORE_SUBSCRIPTION),this.localStorage.delete(Y.WC_2_CORE_HISTORY),this.localStorage.delete(Y.WC_2_CORE_EXPIRER)])}}class ct{storage;constructor(e){this.storage=e}validateNumber(e){return"number"==typeof e&&!isNaN(e)}validateText(e){return"string"==typeof e}validateBoolean(e){return"boolean"==typeof e}validateArray(e){return Array.isArray(e)}objHasProperty(e,t){if(!e)return!1;const n=t.split(".");let r=e;for(const i of n){if(!r.hasOwnProperty(i))return!1;r=r[i]}return!0}innerValidate(e,t,n){if(!e)return!0;switch(t){case"num":return this.validateNumber(e);case"str":return this.validateText(e);case"bol":return this.validateBoolean(e);case"obj":return this.objHasProperty(e,n);case"arr":return this.validateArray(e);default:return!1}}async validate(){return!!this.innerValidate(await this.storage.get(Y.BEACON_SDK_VERSION),"str")&&(!!this.innerValidate(await this.storage.get(Y.MATRIX_SELECTED_NODE),"str")&&(!!this.innerValidate(await this.storage.get(Y.MULTI_NODE_SETUP_DONE),"bol")&&(!!this.innerValidate(await this.storage.get(Y.TRANSPORT_P2P_PEERS_DAPP),"arr")&&(!!this.innerValidate(await this.storage.get(Y.TRANSPORT_P2P_PEERS_WALLET),"arr")&&(!!this.innerValidate(await this.storage.get(Y.TRANSPORT_POSTMESSAGE_PEERS_DAPP),"arr")&&(!!this.innerValidate(await this.storage.get(Y.TRANSPORT_POSTMESSAGE_PEERS_WALLET),"arr")&&(!!this.innerValidate(await this.storage.get(Y.TRANSPORT_WALLETCONNECT_PEERS_DAPP),"arr")&&(!!this.innerValidate(await this.storage.get(Y.ACCOUNTS),"arr")&&(!!this.innerValidate(await this.storage.get(Y.APP_METADATA_LIST),"arr")&&(!!this.innerValidate(await this.storage.get(Y.PERMISSION_LIST),"arr")&&(!!this.innerValidate(await this.storage.get(Y.ACTIVE_ACCOUNT),"str")&&!!this.innerValidate(await this.storage.get(Y.LAST_SELECTED_WALLET),"obj","key"))))))))))))}}function lt(e,t){return function(){return e.apply(t,arguments)}}var ut=n(65606);const{toString:dt}=Object.prototype,{getPrototypeOf:_t}=Object,pt=(ft=Object.create(null),e=>{const t=dt.call(e);return ft[t]||(ft[t]=t.slice(8,-1).toLowerCase())});var ft;const mt=e=>(e=e.toLowerCase(),t=>pt(t)===e),ht=e=>t=>typeof t===e,{isArray:gt}=Array,yt=ht("undefined");const vt=mt("ArrayBuffer");const bt=ht("string"),xt=ht("function"),St=ht("number"),Tt=e=>null!==e&&"object"==typeof e,wt=e=>{if("object"!==pt(e))return!1;const t=_t(e);return!(null!==t&&t!==Object.prototype&&null!==Object.getPrototypeOf(t)||Symbol.toStringTag in e||Symbol.iterator in e)},kt=mt("Date"),Et=mt("File"),Ct=mt("Blob"),Nt=mt("FileList"),At=mt("URLSearchParams"),[It,Dt,Pt,Mt]=["ReadableStream","Request","Response","Headers"].map(mt);function Ot(e,t,{allOwnKeys:n=!1}={}){if(null==e)return;let r,i;if("object"!=typeof e&&(e=[e]),gt(e))for(r=0,i=e.length;r<i;r++)t.call(null,e[r],r,e);else{const i=n?Object.getOwnPropertyNames(e):Object.keys(e),o=i.length;let s;for(r=0;r<o;r++)s=i[r],t.call(null,e[s],s,e)}}function Ft(e,t){t=t.toLowerCase();const n=Object.keys(e);let r,i=n.length;for(;i-- >0;)if(r=n[i],t===r.toLowerCase())return r;return null}const Rt="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:global,Lt=e=>!yt(e)&&e!==Rt;const jt=(zt="undefined"!=typeof Uint8Array&&_t(Uint8Array),e=>zt&&e instanceof zt);var zt;const Ut=mt("HTMLFormElement"),Bt=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),qt=mt("RegExp"),Vt=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),r={};Ot(n,((n,i)=>{let o;!1!==(o=t(n,i,e))&&(r[i]=o||n)})),Object.defineProperties(e,r)},Kt="abcdefghijklmnopqrstuvwxyz",Jt="0123456789",Wt={DIGIT:Jt,ALPHA:Kt,ALPHA_DIGIT:Kt+Kt.toUpperCase()+Jt};const Ht=mt("AsyncFunction"),Gt=(Qt="function"==typeof setImmediate,Yt=xt(Rt.postMessage),Qt?setImmediate:Yt?(Zt=`axios@${Math.random()}`,Xt=[],Rt.addEventListener("message",(({source:e,data:t})=>{e===Rt&&t===Zt&&Xt.length&&Xt.shift()()}),!1),e=>{Xt.push(e),Rt.postMessage(Zt,"*")}):e=>setTimeout(e));var Qt,Yt,Zt,Xt;const $t="undefined"!=typeof queueMicrotask?queueMicrotask.bind(Rt):void 0!==ut&&ut.nextTick||Gt,en={isArray:gt,isArrayBuffer:vt,isBuffer:function(e){return null!==e&&!yt(e)&&null!==e.constructor&&!yt(e.constructor)&&xt(e.constructor.isBuffer)&&e.constructor.isBuffer(e)},isFormData:e=>{let t;return e&&("function"==typeof FormData&&e instanceof FormData||xt(e.append)&&("formdata"===(t=pt(e))||"object"===t&&xt(e.toString)&&"[object FormData]"===e.toString()))},isArrayBufferView:function(e){let t;return t="undefined"!=typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer&&vt(e.buffer),t},isString:bt,isNumber:St,isBoolean:e=>!0===e||!1===e,isObject:Tt,isPlainObject:wt,isReadableStream:It,isRequest:Dt,isResponse:Pt,isHeaders:Mt,isUndefined:yt,isDate:kt,isFile:Et,isBlob:Ct,isRegExp:qt,isFunction:xt,isStream:e=>Tt(e)&&xt(e.pipe),isURLSearchParams:At,isTypedArray:jt,isFileList:Nt,forEach:Ot,merge:function e(){const{caseless:t}=Lt(this)&&this||{},n={},r=(r,i)=>{const o=t&&Ft(n,i)||i;wt(n[o])&&wt(r)?n[o]=e(n[o],r):wt(r)?n[o]=e({},r):gt(r)?n[o]=r.slice():n[o]=r};for(let i=0,o=arguments.length;i<o;i++)arguments[i]&&Ot(arguments[i],r);return n},extend:(e,t,n,{allOwnKeys:r}={})=>(Ot(t,((t,r)=>{n&&xt(t)?e[r]=lt(t,n):e[r]=t}),{allOwnKeys:r}),e),trim:e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,""),stripBOM:e=>(65279===e.charCodeAt(0)&&(e=e.slice(1)),e),inherits:(e,t,n,r)=>{e.prototype=Object.create(t.prototype,r),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),n&&Object.assign(e.prototype,n)},toFlatObject:(e,t,n,r)=>{let i,o,s;const a={};if(t=t||{},null==e)return t;do{for(i=Object.getOwnPropertyNames(e),o=i.length;o-- >0;)s=i[o],r&&!r(s,e,t)||a[s]||(t[s]=e[s],a[s]=!0);e=!1!==n&&_t(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},kindOf:pt,kindOfTest:mt,endsWith:(e,t,n)=>{e=String(e),(void 0===n||n>e.length)&&(n=e.length),n-=t.length;const r=e.indexOf(t,n);return-1!==r&&r===n},toArray:e=>{if(!e)return null;if(gt(e))return e;let t=e.length;if(!St(t))return null;const n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},forEachEntry:(e,t)=>{const n=(e&&e[Symbol.iterator]).call(e);let r;for(;(r=n.next())&&!r.done;){const n=r.value;t.call(e,n[0],n[1])}},matchAll:(e,t)=>{let n;const r=[];for(;null!==(n=e.exec(t));)r.push(n);return r},isHTMLForm:Ut,hasOwnProperty:Bt,hasOwnProp:Bt,reduceDescriptors:Vt,freezeMethods:e=>{Vt(e,((t,n)=>{if(xt(e)&&-1!==["arguments","caller","callee"].indexOf(n))return!1;const r=e[n];xt(r)&&(t.enumerable=!1,"writable"in t?t.writable=!1:t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")}))}))},toObjectSet:(e,t)=>{const n={},r=e=>{e.forEach((e=>{n[e]=!0}))};return gt(e)?r(e):r(String(e).split(t)),n},toCamelCase:e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,(function(e,t,n){return t.toUpperCase()+n})),noop:()=>{},toFiniteNumber:(e,t)=>null!=e&&Number.isFinite(e=+e)?e:t,findKey:Ft,global:Rt,isContextDefined:Lt,ALPHABET:Wt,generateString:(e=16,t=Wt.ALPHA_DIGIT)=>{let n="";const{length:r}=t;for(;e--;)n+=t[Math.random()*r|0];return n},isSpecCompliantForm:function(e){return!!(e&&xt(e.append)&&"FormData"===e[Symbol.toStringTag]&&e[Symbol.iterator])},toJSONObject:e=>{const t=new Array(10),n=(e,r)=>{if(Tt(e)){if(t.indexOf(e)>=0)return;if(!("toJSON"in e)){t[r]=e;const i=gt(e)?[]:{};return Ot(e,((e,t)=>{const o=n(e,r+1);!yt(o)&&(i[t]=o)})),t[r]=void 0,i}}return e};return n(e,0)},isAsyncFn:Ht,isThenable:e=>e&&(Tt(e)||xt(e))&&xt(e.then)&&xt(e.catch),setImmediate:Gt,asap:$t};function tn(e,t,n,r,i){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=(new Error).stack,this.message=e,this.name="AxiosError",t&&(this.code=t),n&&(this.config=n),r&&(this.request=r),i&&(this.response=i,this.status=i.status?i.status:null)}en.inherits(tn,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:en.toJSONObject(this.config),code:this.code,status:this.status}}});const nn=tn.prototype,rn={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach((e=>{rn[e]={value:e}})),Object.defineProperties(tn,rn),Object.defineProperty(nn,"isAxiosError",{value:!0}),tn.from=(e,t,n,r,i,o)=>{const s=Object.create(nn);return en.toFlatObject(e,s,(function(e){return e!==Error.prototype}),(e=>"isAxiosError"!==e)),tn.call(s,e.message,t,n,r,i),s.cause=e,s.name=e.name,o&&Object.assign(s,o),s};const on=tn;var sn=n(48287).Buffer;function an(e){return en.isPlainObject(e)||en.isArray(e)}function cn(e){return en.endsWith(e,"[]")?e.slice(0,-2):e}function ln(e,t,n){return e?e.concat(t).map((function(e,t){return e=cn(e),!n&&t?"["+e+"]":e})).join(n?".":""):t}const un=en.toFlatObject(en,{},null,(function(e){return/^is[A-Z]/.test(e)}));const dn=function(e,t,n){if(!en.isObject(e))throw new TypeError("target must be an object");t=t||new FormData;const r=(n=en.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,(function(e,t){return!en.isUndefined(t[e])}))).metaTokens,i=n.visitor||l,o=n.dots,s=n.indexes,a=(n.Blob||"undefined"!=typeof Blob&&Blob)&&en.isSpecCompliantForm(t);if(!en.isFunction(i))throw new TypeError("visitor must be a function");function c(e){if(null===e)return"";if(en.isDate(e))return e.toISOString();if(!a&&en.isBlob(e))throw new on("Blob is not supported. Use a Buffer instead.");return en.isArrayBuffer(e)||en.isTypedArray(e)?a&&"function"==typeof Blob?new Blob([e]):sn.from(e):e}function l(e,n,i){let a=e;if(e&&!i&&"object"==typeof e)if(en.endsWith(n,"{}"))n=r?n:n.slice(0,-2),e=JSON.stringify(e);else if(en.isArray(e)&&function(e){return en.isArray(e)&&!e.some(an)}(e)||(en.isFileList(e)||en.endsWith(n,"[]"))&&(a=en.toArray(e)))return n=cn(n),a.forEach((function(e,r){!en.isUndefined(e)&&null!==e&&t.append(!0===s?ln([n],r,o):null===s?n:n+"[]",c(e))})),!1;return!!an(e)||(t.append(ln(i,n,o),c(e)),!1)}const u=[],d=Object.assign(un,{defaultVisitor:l,convertValue:c,isVisitable:an});if(!en.isObject(e))throw new TypeError("data must be an object");return function e(n,r){if(!en.isUndefined(n)){if(-1!==u.indexOf(n))throw Error("Circular reference detected in "+r.join("."));u.push(n),en.forEach(n,(function(n,o){!0===(!(en.isUndefined(n)||null===n)&&i.call(t,n,en.isString(o)?o.trim():o,r,d))&&e(n,r?r.concat(o):[o])})),u.pop()}}(e),t};function _n(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,(function(e){return t[e]}))}function pn(e,t){this._pairs=[],e&&dn(e,this,t)}const fn=pn.prototype;fn.append=function(e,t){this._pairs.push([e,t])},fn.toString=function(e){const t=e?function(t){return e.call(this,t,_n)}:_n;return this._pairs.map((function(e){return t(e[0])+"="+t(e[1])}),"").join("&")};const mn=pn;function hn(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function gn(e,t,n){if(!t)return e;const r=n&&n.encode||hn,i=n&&n.serialize;let o;if(o=i?i(t,n):en.isURLSearchParams(t)?t.toString():new mn(t,n).toString(r),o){const t=e.indexOf("#");-1!==t&&(e=e.slice(0,t)),e+=(-1===e.indexOf("?")?"?":"&")+o}return e}const yn=class{constructor(){this.handlers=[]}use(e,t,n){return this.handlers.push({fulfilled:e,rejected:t,synchronous:!!n&&n.synchronous,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){en.forEach(this.handlers,(function(t){null!==t&&e(t)}))}},vn={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},bn={isBrowser:!0,classes:{URLSearchParams:"undefined"!=typeof URLSearchParams?URLSearchParams:mn,FormData:"undefined"!=typeof FormData?FormData:null,Blob:"undefined"!=typeof Blob?Blob:null},protocols:["http","https","file","blob","url","data"]},xn="undefined"!=typeof window&&"undefined"!=typeof document,Sn="object"==typeof navigator&&navigator||void 0,Tn=xn&&(!Sn||["ReactNative","NativeScript","NS"].indexOf(Sn.product)<0),wn="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&"function"==typeof self.importScripts,kn=xn&&window.location.href||"http://localhost",En={...r,...bn};const Cn=function(e){function t(e,n,r,i){let o=e[i++];if("__proto__"===o)return!0;const s=Number.isFinite(+o),a=i>=e.length;if(o=!o&&en.isArray(r)?r.length:o,a)return en.hasOwnProp(r,o)?r[o]=[r[o],n]:r[o]=n,!s;r[o]&&en.isObject(r[o])||(r[o]=[]);return t(e,n,r[o],i)&&en.isArray(r[o])&&(r[o]=function(e){const t={},n=Object.keys(e);let r;const i=n.length;let o;for(r=0;r<i;r++)o=n[r],t[o]=e[o];return t}(r[o])),!s}if(en.isFormData(e)&&en.isFunction(e.entries)){const n={};return en.forEachEntry(e,((e,r)=>{t(function(e){return en.matchAll(/\w+|\[(\w*)]/g,e).map((e=>"[]"===e[0]?"":e[1]||e[0]))}(e),r,n,0)})),n}return null};const Nn={transitional:vn,adapter:["xhr","http","fetch"],transformRequest:[function(e,t){const n=t.getContentType()||"",r=n.indexOf("application/json")>-1,i=en.isObject(e);i&&en.isHTMLForm(e)&&(e=new FormData(e));if(en.isFormData(e))return r?JSON.stringify(Cn(e)):e;if(en.isArrayBuffer(e)||en.isBuffer(e)||en.isStream(e)||en.isFile(e)||en.isBlob(e)||en.isReadableStream(e))return e;if(en.isArrayBufferView(e))return e.buffer;if(en.isURLSearchParams(e))return t.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let o;if(i){if(n.indexOf("application/x-www-form-urlencoded")>-1)return function(e,t){return dn(e,new En.classes.URLSearchParams,Object.assign({visitor:function(e,t,n,r){return En.isNode&&en.isBuffer(e)?(this.append(t,e.toString("base64")),!1):r.defaultVisitor.apply(this,arguments)}},t))}(e,this.formSerializer).toString();if((o=en.isFileList(e))||n.indexOf("multipart/form-data")>-1){const t=this.env&&this.env.FormData;return dn(o?{"files[]":e}:e,t&&new t,this.formSerializer)}}return i||r?(t.setContentType("application/json",!1),function(e,t,n){if(en.isString(e))try{return(t||JSON.parse)(e),en.trim(e)}catch(r){if("SyntaxError"!==r.name)throw r}return(n||JSON.stringify)(e)}(e)):e}],transformResponse:[function(e){const t=this.transitional||Nn.transitional,n=t&&t.forcedJSONParsing,r="json"===this.responseType;if(en.isResponse(e)||en.isReadableStream(e))return e;if(e&&en.isString(e)&&(n&&!this.responseType||r)){const n=!(t&&t.silentJSONParsing)&&r;try{return JSON.parse(e)}catch(i){if(n){if("SyntaxError"===i.name)throw on.from(i,on.ERR_BAD_RESPONSE,this,null,this.response);throw i}}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:En.classes.FormData,Blob:En.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};en.forEach(["delete","get","head","post","put","patch"],(e=>{Nn.headers[e]={}}));const An=Nn,In=en.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),Dn=Symbol("internals");function Pn(e){return e&&String(e).trim().toLowerCase()}function Mn(e){return!1===e||null==e?e:en.isArray(e)?e.map(Mn):String(e)}function On(e,t,n,r,i){return en.isFunction(r)?r.call(this,t,n):(i&&(t=n),en.isString(t)?en.isString(r)?-1!==t.indexOf(r):en.isRegExp(r)?r.test(t):void 0:void 0)}class Fn{constructor(e){e&&this.set(e)}set(e,t,n){const r=this;function i(e,t,n){const i=Pn(t);if(!i)throw new Error("header name must be a non-empty string");const o=en.findKey(r,i);(!o||void 0===r[o]||!0===n||void 0===n&&!1!==r[o])&&(r[o||t]=Mn(e))}const o=(e,t)=>en.forEach(e,((e,n)=>i(e,n,t)));if(en.isPlainObject(e)||e instanceof this.constructor)o(e,t);else if(en.isString(e)&&(e=e.trim())&&!/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim()))o((e=>{const t={};let n,r,i;return e&&e.split("\n").forEach((function(e){i=e.indexOf(":"),n=e.substring(0,i).trim().toLowerCase(),r=e.substring(i+1).trim(),!n||t[n]&&In[n]||("set-cookie"===n?t[n]?t[n].push(r):t[n]=[r]:t[n]=t[n]?t[n]+", "+r:r)})),t})(e),t);else if(en.isHeaders(e))for(const[s,a]of e.entries())i(a,s,n);else null!=e&&i(t,e,n);return this}get(e,t){if(e=Pn(e)){const n=en.findKey(this,e);if(n){const e=this[n];if(!t)return e;if(!0===t)return function(e){const t=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let r;for(;r=n.exec(e);)t[r[1]]=r[2];return t}(e);if(en.isFunction(t))return t.call(this,e,n);if(en.isRegExp(t))return t.exec(e);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,t){if(e=Pn(e)){const n=en.findKey(this,e);return!(!n||void 0===this[n]||t&&!On(0,this[n],n,t))}return!1}delete(e,t){const n=this;let r=!1;function i(e){if(e=Pn(e)){const i=en.findKey(n,e);!i||t&&!On(0,n[i],i,t)||(delete n[i],r=!0)}}return en.isArray(e)?e.forEach(i):i(e),r}clear(e){const t=Object.keys(this);let n=t.length,r=!1;for(;n--;){const i=t[n];e&&!On(0,this[i],i,e,!0)||(delete this[i],r=!0)}return r}normalize(e){const t=this,n={};return en.forEach(this,((r,i)=>{const o=en.findKey(n,i);if(o)return t[o]=Mn(r),void delete t[i];const s=e?function(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,((e,t,n)=>t.toUpperCase()+n))}(i):String(i).trim();s!==i&&delete t[i],t[s]=Mn(r),n[s]=!0})),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){const t=Object.create(null);return en.forEach(this,((n,r)=>{null!=n&&!1!==n&&(t[r]=e&&en.isArray(n)?n.join(", "):n)})),t}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map((([e,t])=>e+": "+t)).join("\n")}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...t){const n=new this(e);return t.forEach((e=>n.set(e))),n}static accessor(e){const t=(this[Dn]=this[Dn]={accessors:{}}).accessors,n=this.prototype;function r(e){const r=Pn(e);t[r]||(!function(e,t){const n=en.toCamelCase(" "+t);["get","set","has"].forEach((r=>{Object.defineProperty(e,r+n,{value:function(e,n,i){return this[r].call(this,t,e,n,i)},configurable:!0})}))}(n,e),t[r]=!0)}return en.isArray(e)?e.forEach(r):r(e),this}}Fn.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),en.reduceDescriptors(Fn.prototype,(({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(e){this[n]=e}}})),en.freezeMethods(Fn);const Rn=Fn;function Ln(e,t){const n=this||An,r=t||n,i=Rn.from(r.headers);let o=r.data;return en.forEach(e,(function(e){o=e.call(n,o,i.normalize(),t?t.status:void 0)})),i.normalize(),o}function jn(e){return!(!e||!e.__CANCEL__)}function zn(e,t,n){on.call(this,null==e?"canceled":e,on.ERR_CANCELED,t,n),this.name="CanceledError"}en.inherits(zn,on,{__CANCEL__:!0});const Un=zn;function Bn(e,t,n){const r=n.config.validateStatus;n.status&&r&&!r(n.status)?t(new on("Request failed with status code "+n.status,[on.ERR_BAD_REQUEST,on.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n)):e(n)}const qn=function(e,t){e=e||10;const n=new Array(e),r=new Array(e);let i,o=0,s=0;return t=void 0!==t?t:1e3,function(a){const c=Date.now(),l=r[s];i||(i=c),n[o]=a,r[o]=c;let u=s,d=0;for(;u!==o;)d+=n[u++],u%=e;if(o=(o+1)%e,o===s&&(s=(s+1)%e),c-i<t)return;const _=l&&c-l;return _?Math.round(1e3*d/_):void 0}};const Vn=function(e,t){let n,r,i=0,o=1e3/t;const s=(t,o=Date.now())=>{i=o,n=null,r&&(clearTimeout(r),r=null),e.apply(null,t)};return[(...e)=>{const t=Date.now(),a=t-i;a>=o?s(e,t):(n=e,r||(r=setTimeout((()=>{r=null,s(n)}),o-a)))},()=>n&&s(n)]},Kn=(e,t,n=3)=>{let r=0;const i=qn(50,250);return Vn((n=>{const o=n.loaded,s=n.lengthComputable?n.total:void 0,a=o-r,c=i(a);r=o;e({loaded:o,total:s,progress:s?o/s:void 0,bytes:a,rate:c||void 0,estimated:c&&s&&o<=s?(s-o)/c:void 0,event:n,lengthComputable:null!=s,[t?"download":"upload"]:!0})}),n)},Jn=(e,t)=>{const n=null!=e;return[r=>t[0]({lengthComputable:n,total:e,loaded:r}),t[1]]},Wn=e=>(...t)=>en.asap((()=>e(...t))),Hn=En.hasStandardBrowserEnv?function(){const e=En.navigator&&/(msie|trident)/i.test(En.navigator.userAgent),t=document.createElement("a");let n;function r(n){let r=n;return e&&(t.setAttribute("href",r),r=t.href),t.setAttribute("href",r),{href:t.href,protocol:t.protocol?t.protocol.replace(/:$/,""):"",host:t.host,search:t.search?t.search.replace(/^\?/,""):"",hash:t.hash?t.hash.replace(/^#/,""):"",hostname:t.hostname,port:t.port,pathname:"/"===t.pathname.charAt(0)?t.pathname:"/"+t.pathname}}return n=r(window.location.href),function(e){const t=en.isString(e)?r(e):e;return t.protocol===n.protocol&&t.host===n.host}}():function(){return!0},Gn=En.hasStandardBrowserEnv?{write(e,t,n,r,i,o){const s=[e+"="+encodeURIComponent(t)];en.isNumber(n)&&s.push("expires="+new Date(n).toGMTString()),en.isString(r)&&s.push("path="+r),en.isString(i)&&s.push("domain="+i),!0===o&&s.push("secure"),document.cookie=s.join("; ")},read(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read:()=>null,remove(){}};function Qn(e,t){return e&&!/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)?function(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}(e,t):t}const Yn=e=>e instanceof Rn?{...e}:e;function Zn(e,t){t=t||{};const n={};function r(e,t,n){return en.isPlainObject(e)&&en.isPlainObject(t)?en.merge.call({caseless:n},e,t):en.isPlainObject(t)?en.merge({},t):en.isArray(t)?t.slice():t}function i(e,t,n){return en.isUndefined(t)?en.isUndefined(e)?void 0:r(void 0,e,n):r(e,t,n)}function o(e,t){if(!en.isUndefined(t))return r(void 0,t)}function s(e,t){return en.isUndefined(t)?en.isUndefined(e)?void 0:r(void 0,e):r(void 0,t)}function a(n,i,o){return o in t?r(n,i):o in e?r(void 0,n):void 0}const c={url:o,method:o,data:o,baseURL:s,transformRequest:s,transformResponse:s,paramsSerializer:s,timeout:s,timeoutMessage:s,withCredentials:s,withXSRFToken:s,adapter:s,responseType:s,xsrfCookieName:s,xsrfHeaderName:s,onUploadProgress:s,onDownloadProgress:s,decompress:s,maxContentLength:s,maxBodyLength:s,beforeRedirect:s,transport:s,httpAgent:s,httpsAgent:s,cancelToken:s,socketPath:s,responseEncoding:s,validateStatus:a,headers:(e,t)=>i(Yn(e),Yn(t),!0)};return en.forEach(Object.keys(Object.assign({},e,t)),(function(r){const o=c[r]||i,s=o(e[r],t[r],r);en.isUndefined(s)&&o!==a||(n[r]=s)})),n}const Xn=e=>{const t=Zn({},e);let n,{data:r,withXSRFToken:i,xsrfHeaderName:o,xsrfCookieName:s,headers:a,auth:c}=t;if(t.headers=a=Rn.from(a),t.url=gn(Qn(t.baseURL,t.url),e.params,e.paramsSerializer),c&&a.set("Authorization","Basic "+btoa((c.username||"")+":"+(c.password?unescape(encodeURIComponent(c.password)):""))),en.isFormData(r))if(En.hasStandardBrowserEnv||En.hasStandardBrowserWebWorkerEnv)a.setContentType(void 0);else if(!1!==(n=a.getContentType())){const[e,...t]=n?n.split(";").map((e=>e.trim())).filter(Boolean):[];a.setContentType([e||"multipart/form-data",...t].join("; "))}if(En.hasStandardBrowserEnv&&(i&&en.isFunction(i)&&(i=i(t)),i||!1!==i&&Hn(t.url))){const e=o&&s&&Gn.read(s);e&&a.set(o,e)}return t},$n="undefined"!=typeof XMLHttpRequest&&function(e){return new Promise((function(t,n){const r=Xn(e);let i=r.data;const o=Rn.from(r.headers).normalize();let s,a,c,l,u,{responseType:d,onUploadProgress:_,onDownloadProgress:p}=r;function f(){l&&l(),u&&u(),r.cancelToken&&r.cancelToken.unsubscribe(s),r.signal&&r.signal.removeEventListener("abort",s)}let m=new XMLHttpRequest;function h(){if(!m)return;const r=Rn.from("getAllResponseHeaders"in m&&m.getAllResponseHeaders());Bn((function(e){t(e),f()}),(function(e){n(e),f()}),{data:d&&"text"!==d&&"json"!==d?m.response:m.responseText,status:m.status,statusText:m.statusText,headers:r,config:e,request:m}),m=null}m.open(r.method.toUpperCase(),r.url,!0),m.timeout=r.timeout,"onloadend"in m?m.onloadend=h:m.onreadystatechange=function(){m&&4===m.readyState&&(0!==m.status||m.responseURL&&0===m.responseURL.indexOf("file:"))&&setTimeout(h)},m.onabort=function(){m&&(n(new on("Request aborted",on.ECONNABORTED,e,m)),m=null)},m.onerror=function(){n(new on("Network Error",on.ERR_NETWORK,e,m)),m=null},m.ontimeout=function(){let t=r.timeout?"timeout of "+r.timeout+"ms exceeded":"timeout exceeded";const i=r.transitional||vn;r.timeoutErrorMessage&&(t=r.timeoutErrorMessage),n(new on(t,i.clarifyTimeoutError?on.ETIMEDOUT:on.ECONNABORTED,e,m)),m=null},void 0===i&&o.setContentType(null),"setRequestHeader"in m&&en.forEach(o.toJSON(),(function(e,t){m.setRequestHeader(t,e)})),en.isUndefined(r.withCredentials)||(m.withCredentials=!!r.withCredentials),d&&"json"!==d&&(m.responseType=r.responseType),p&&([c,u]=Kn(p,!0),m.addEventListener("progress",c)),_&&m.upload&&([a,l]=Kn(_),m.upload.addEventListener("progress",a),m.upload.addEventListener("loadend",l)),(r.cancelToken||r.signal)&&(s=t=>{m&&(n(!t||t.type?new Un(null,e,m):t),m.abort(),m=null)},r.cancelToken&&r.cancelToken.subscribe(s),r.signal&&(r.signal.aborted?s():r.signal.addEventListener("abort",s)));const g=function(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}(r.url);g&&-1===En.protocols.indexOf(g)?n(new on("Unsupported protocol "+g+":",on.ERR_BAD_REQUEST,e)):m.send(i||null)}))},er=(e,t)=>{let n,r=new AbortController;const i=function(e){if(!n){n=!0,s();const t=e instanceof Error?e:this.reason;r.abort(t instanceof on?t:new Un(t instanceof Error?t.message:t))}};let o=t&&setTimeout((()=>{i(new on(`timeout ${t} of ms exceeded`,on.ETIMEDOUT))}),t);const s=()=>{e&&(o&&clearTimeout(o),o=null,e.forEach((e=>{e&&(e.removeEventListener?e.removeEventListener("abort",i):e.unsubscribe(i))})),e=null)};e.forEach((e=>e&&e.addEventListener&&e.addEventListener("abort",i)));const{signal:a}=r;return a.unsubscribe=s,[a,()=>{o&&clearTimeout(o),o=null}]},tr=function*(e,t){let n=e.byteLength;if(!t||n<t)return void(yield e);let r,i=0;for(;i<n;)r=i+t,yield e.slice(i,r),i=r},nr=(e,t,n,r,i)=>{const o=async function*(e,t,n){for await(const r of e)yield*tr(ArrayBuffer.isView(r)?r:await n(String(r)),t)}(e,t,i);let s,a=0,c=e=>{s||(s=!0,r&&r(e))};return new ReadableStream({async pull(e){try{const{done:t,value:r}=await o.next();if(t)return c(),void e.close();let i=r.byteLength;if(n){let e=a+=i;n(e)}e.enqueue(new Uint8Array(r))}catch(t){throw c(t),t}},cancel:e=>(c(e),o.return())},{highWaterMark:2})},rr="function"==typeof fetch&&"function"==typeof Request&&"function"==typeof Response,ir=rr&&"function"==typeof ReadableStream,or=rr&&("function"==typeof TextEncoder?(sr=new TextEncoder,e=>sr.encode(e)):async e=>new Uint8Array(await new Response(e).arrayBuffer()));var sr;const ar=(e,...t)=>{try{return!!e(...t)}catch(n){return!1}},cr=ir&&ar((()=>{let e=!1;const t=new Request(En.origin,{body:new ReadableStream,method:"POST",get duplex(){return e=!0,"half"}}).headers.has("Content-Type");return e&&!t})),lr=ir&&ar((()=>en.isReadableStream(new Response("").body))),ur={stream:lr&&(e=>e.body)};var dr;rr&&(dr=new Response,["text","arrayBuffer","blob","formData","stream"].forEach((e=>{!ur[e]&&(ur[e]=en.isFunction(dr[e])?t=>t[e]():(t,n)=>{throw new on(`Response type '${e}' is not supported`,on.ERR_NOT_SUPPORT,n)})})));const _r=async(e,t)=>{const n=en.toFiniteNumber(e.getContentLength());return null==n?(async e=>null==e?0:en.isBlob(e)?e.size:en.isSpecCompliantForm(e)?(await new Request(e).arrayBuffer()).byteLength:en.isArrayBufferView(e)||en.isArrayBuffer(e)?e.byteLength:(en.isURLSearchParams(e)&&(e+=""),en.isString(e)?(await or(e)).byteLength:void 0))(t):n},pr={http:null,xhr:$n,fetch:rr&&(async e=>{let{url:t,method:n,data:r,signal:i,cancelToken:o,timeout:s,onDownloadProgress:a,onUploadProgress:c,responseType:l,headers:u,withCredentials:d="same-origin",fetchOptions:_}=Xn(e);l=l?(l+"").toLowerCase():"text";let p,f,[m,h]=i||o||s?er([i,o],s):[];const g=()=>{!p&&setTimeout((()=>{m&&m.unsubscribe()})),p=!0};let y;try{if(c&&cr&&"get"!==n&&"head"!==n&&0!==(y=await _r(u,r))){let e,n=new Request(t,{method:"POST",body:r,duplex:"half"});if(en.isFormData(r)&&(e=n.headers.get("content-type"))&&u.setContentType(e),n.body){const[e,t]=Jn(y,Kn(Wn(c)));r=nr(n.body,65536,e,t,or)}}en.isString(d)||(d=d?"include":"omit");const i="credentials"in Request.prototype;f=new Request(t,{..._,signal:m,method:n.toUpperCase(),headers:u.normalize().toJSON(),body:r,duplex:"half",credentials:i?d:void 0});let o=await fetch(f);const s=lr&&("stream"===l||"response"===l);if(lr&&(a||s)){const e={};["status","statusText","headers"].forEach((t=>{e[t]=o[t]}));const t=en.toFiniteNumber(o.headers.get("content-length")),[n,r]=a&&Jn(t,Kn(Wn(a),!0))||[];o=new Response(nr(o.body,65536,n,(()=>{r&&r(),s&&g()}),or),e)}l=l||"text";let p=await ur[en.findKey(ur,l)||"text"](o,e);return!s&&g(),h&&h(),await new Promise(((t,n)=>{Bn(t,n,{data:p,headers:Rn.from(o.headers),status:o.status,statusText:o.statusText,config:e,request:f})}))}catch(v){if(g(),v&&"TypeError"===v.name&&/fetch/i.test(v.message))throw Object.assign(new on("Network Error",on.ERR_NETWORK,e,f),{cause:v.cause||v});throw on.from(v,v&&v.code,e,f)}})};en.forEach(pr,((e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch(n){}Object.defineProperty(e,"adapterName",{value:t})}}));const fr=e=>`- ${e}`,mr=e=>en.isFunction(e)||null===e||!1===e,hr=e=>{e=en.isArray(e)?e:[e];const{length:t}=e;let n,r;const i={};for(let o=0;o<t;o++){let t;if(n=e[o],r=n,!mr(n)&&(r=pr[(t=String(n)).toLowerCase()],void 0===r))throw new on(`Unknown adapter '${t}'`);if(r)break;i[t||"#"+o]=r}if(!r){const e=Object.entries(i).map((([e,t])=>`adapter ${e} `+(!1===t?"is not supported by the environment":"is not available in the build")));let n=t?e.length>1?"since :\n"+e.map(fr).join("\n"):" "+fr(e[0]):"as no adapter specified";throw new on("There is no suitable adapter to dispatch the request "+n,"ERR_NOT_SUPPORT")}return r};function gr(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new Un(null,e)}function yr(e){gr(e),e.headers=Rn.from(e.headers),e.data=Ln.call(e,e.transformRequest),-1!==["post","put","patch"].indexOf(e.method)&&e.headers.setContentType("application/x-www-form-urlencoded",!1);return hr(e.adapter||An.adapter)(e).then((function(t){return gr(e),t.data=Ln.call(e,e.transformResponse,t),t.headers=Rn.from(t.headers),t}),(function(t){return jn(t)||(gr(e),t&&t.response&&(t.response.data=Ln.call(e,e.transformResponse,t.response),t.response.headers=Rn.from(t.response.headers))),Promise.reject(t)}))}const vr="1.7.5";var br=n(96763);const xr={};["object","boolean","number","function","string","symbol"].forEach(((e,t)=>{xr[e]=function(n){return typeof n===e||"a"+(t<1?"n ":" ")+e}}));const Sr={};xr.transitional=function(e,t,n){function r(e,t){return"[Axios v1.7.5] Transitional option '"+e+"'"+t+(n?". "+n:"")}return(n,i,o)=>{if(!1===e)throw new on(r(i," has been removed"+(t?" in "+t:"")),on.ERR_DEPRECATED);return t&&!Sr[i]&&(Sr[i]=!0,br.warn(r(i," has been deprecated since v"+t+" and will be removed in the near future"))),!e||e(n,i,o)}};const Tr={assertOptions:function(e,t,n){if("object"!=typeof e)throw new on("options must be an object",on.ERR_BAD_OPTION_VALUE);const r=Object.keys(e);let i=r.length;for(;i-- >0;){const o=r[i],s=t[o];if(s){const t=e[o],n=void 0===t||s(t,o,e);if(!0!==n)throw new on("option "+o+" must be "+n,on.ERR_BAD_OPTION_VALUE)}else if(!0!==n)throw new on("Unknown option "+o,on.ERR_BAD_OPTION)}},validators:xr},wr=Tr.validators;class kr{constructor(e){this.defaults=e,this.interceptors={request:new yn,response:new yn}}async request(e,t){try{return await this._request(e,t)}catch(n){if(n instanceof Error){let e;Error.captureStackTrace?Error.captureStackTrace(e={}):e=new Error;const t=e.stack?e.stack.replace(/^.+\n/,""):"";try{n.stack?t&&!String(n.stack).endsWith(t.replace(/^.+\n.+\n/,""))&&(n.stack+="\n"+t):n.stack=t}catch(r){}}throw n}}_request(e,t){"string"==typeof e?(t=t||{}).url=e:t=e||{},t=Zn(this.defaults,t);const{transitional:n,paramsSerializer:r,headers:i}=t;void 0!==n&&Tr.assertOptions(n,{silentJSONParsing:wr.transitional(wr.boolean),forcedJSONParsing:wr.transitional(wr.boolean),clarifyTimeoutError:wr.transitional(wr.boolean)},!1),null!=r&&(en.isFunction(r)?t.paramsSerializer={serialize:r}:Tr.assertOptions(r,{encode:wr.function,serialize:wr.function},!0)),t.method=(t.method||this.defaults.method||"get").toLowerCase();let o=i&&en.merge(i.common,i[t.method]);i&&en.forEach(["delete","get","head","post","put","patch","common"],(e=>{delete i[e]})),t.headers=Rn.concat(o,i);const s=[];let a=!0;this.interceptors.request.forEach((function(e){"function"==typeof e.runWhen&&!1===e.runWhen(t)||(a=a&&e.synchronous,s.unshift(e.fulfilled,e.rejected))}));const c=[];let l;this.interceptors.response.forEach((function(e){c.push(e.fulfilled,e.rejected)}));let u,d=0;if(!a){const e=[yr.bind(this),void 0];for(e.unshift.apply(e,s),e.push.apply(e,c),u=e.length,l=Promise.resolve(t);d<u;)l=l.then(e[d++],e[d++]);return l}u=s.length;let _=t;for(d=0;d<u;){const e=s[d++],t=s[d++];try{_=e(_)}catch(p){t.call(this,p);break}}try{l=yr.call(this,_)}catch(p){return Promise.reject(p)}for(d=0,u=c.length;d<u;)l=l.then(c[d++],c[d++]);return l}getUri(e){return gn(Qn((e=Zn(this.defaults,e)).baseURL,e.url),e.params,e.paramsSerializer)}}en.forEach(["delete","get","head","options"],(function(e){kr.prototype[e]=function(t,n){return this.request(Zn(n||{},{method:e,url:t,data:(n||{}).data}))}})),en.forEach(["post","put","patch"],(function(e){function t(t){return function(n,r,i){return this.request(Zn(i||{},{method:e,headers:t?{"Content-Type":"multipart/form-data"}:{},url:n,data:r}))}}kr.prototype[e]=t(),kr.prototype[e+"Form"]=t(!0)}));const Er=kr;class Cr{constructor(e){if("function"!=typeof e)throw new TypeError("executor must be a function.");let t;this.promise=new Promise((function(e){t=e}));const n=this;this.promise.then((e=>{if(!n._listeners)return;let t=n._listeners.length;for(;t-- >0;)n._listeners[t](e);n._listeners=null})),this.promise.then=e=>{let t;const r=new Promise((e=>{n.subscribe(e),t=e})).then(e);return r.cancel=function(){n.unsubscribe(t)},r},e((function(e,r,i){n.reason||(n.reason=new Un(e,r,i),t(n.reason))}))}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){this.reason?e(this.reason):this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const t=this._listeners.indexOf(e);-1!==t&&this._listeners.splice(t,1)}static source(){let e;const t=new Cr((function(t){e=t}));return{token:t,cancel:e}}}const Nr=Cr;const Ar={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(Ar).forEach((([e,t])=>{Ar[t]=e}));const Ir=Ar;const Dr=function e(t){const n=new Er(t),r=lt(Er.prototype.request,n);return en.extend(r,Er.prototype,n,{allOwnKeys:!0}),en.extend(r,n,null,{allOwnKeys:!0}),r.create=function(n){return e(Zn(t,n))},r}(An);Dr.Axios=Er,Dr.CanceledError=Un,Dr.CancelToken=Nr,Dr.isCancel=jn,Dr.VERSION=vr,Dr.toFormData=dn,Dr.AxiosError=on,Dr.Cancel=Dr.CanceledError,Dr.all=function(e){return Promise.all(e)},Dr.spread=function(e){return function(t){return e.apply(null,t)}},Dr.isAxiosError=function(e){return en.isObject(e)&&!0===e.isAxiosError},Dr.mergeConfig=Zn,Dr.AxiosHeaders=Rn,Dr.formToJSON=e=>Cn(en.isHTMLForm(e)?new FormData(e):e),Dr.getAdapter=hr,Dr.HttpStatusCode=Ir,Dr.default=Dr;const Pr=Dr;var Mr;!function(e){e.TEXT="m.text"}(Mr||(Mr={}));class Or{type;sender;content;timestamp;static from(e){if(Rr(e))return new Or(e.content.msgtype,e.sender,e.content.body,e.origin_server_ts)}constructor(e,t,n,r){this.type=e,this.sender=t,this.content=n,this.timestamp=r}}const Fr=e=>"m.room.message"===e.type,Rr=e=>Fr(e)&&e.content instanceof Object&&"msgtype"in e.content&&e.content.msgtype===Mr.TEXT;var Lr;!function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.JOINED=1]="JOINED",e[e.INVITED=2]="INVITED",e[e.LEFT=3]="LEFT"}(Lr||(Lr={}));class jr{id;status;members;messages;static fromSync(e){if(!e)return[];function t(e,t){return Object.entries(e).map((([e,n])=>t(e,n)))}return[...t(e.join??{},jr.fromJoined),...t(e.invite??{},jr.fromInvited),...t(e.leave??{},jr.fromLeft)]}static from(e,t){return"string"==typeof e?new jr(e,t||Lr.UNKNOWN):void 0!==t?new jr(e.id,t,e.members,e.messages):e}static merge(e,t){return t&&t.id===e.id?new jr(e.id,e.status,[...t.members,...e.members].filter(((e,t,n)=>n.indexOf(e)===t)),[...t.messages,...e.messages]):jr.from(e)}static fromJoined(e,t){const n=[...t.state.events,...t.timeline.events],r=jr.getMembersFromEvents(n),i=jr.getMessagesFromEvents(n);return new jr(e,Lr.JOINED,r,i)}static fromInvited(e,t){const n=jr.getMembersFromEvents(t.invite_state.events);return new jr(e,Lr.INVITED,n)}static fromLeft(e,t){const n=[...t.state.events,...t.timeline.events],r=jr.getMembersFromEvents(n),i=jr.getMessagesFromEvents(n);return new jr(e,Lr.LEFT,r,i)}static getMembersFromEvents(e){return jr.getUniqueEvents(e.filter((e=>(e=>"m.room.create"===e.type&&e.content instanceof Object&&"creator"in e.content)(e)||(e=>"m.room.member"===e.type&&e.content instanceof Object&&"membership"in e.content&&"join"===e.content.membership)(e)))).map((e=>e.sender)).filter(((e,t,n)=>n.indexOf(e)===t))}static getMessagesFromEvents(e){return jr.getUniqueEvents(e.filter(Fr)).map((e=>Or.from(e))).filter(Boolean)}static getUniqueEvents(e){const t={},n=[];return e.forEach(((e,r)=>{const i=e.event_id;void 0!==i&&i in t||(void 0!==i&&(t[i]=r),n.push(e))})),n}constructor(e,t=Lr.UNKNOWN,n=[],r=[]){this.id=e,this.status=t,this.members=n,this.messages=r}}const zr=["syncToken","rooms"];class Ur{storage;state={isRunning:!1,userId:void 0,deviceId:void 0,txnNo:0,accessToken:void 0,syncToken:void 0,pollingTimeout:void 0,pollingRetries:0,rooms:{}};onStateChangedListeners=new Map;waitReadyPromise;constructor(e){this.storage=e,this.waitReadyPromise=new Promise((async(e,t)=>{try{await this.initFromStorage(),e()}catch(n){t(n)}}))}get(e){return this.state[e]}getRoom(e){const t=jr.from(e,Lr.UNKNOWN);return this.state.rooms[t.id]||t}async update(e){await this.waitReady();const t=Object.assign({},this.state);this.setState(e),this.updateStorage(e),this.notifyListeners(t,this.state,e)}onStateChanged(e,...t){t.length>0?t.forEach((t=>{this.onStateChangedListeners.set(t,e)})):this.onStateChangedListeners.set("all",e)}async waitReady(){return this.waitReadyPromise}async initFromStorage(){const e=await this.storage.get(Y.MATRIX_PRESERVED_STATE);this.setState(e)}prepareData(e){const t=["rooms"].some((t=>void 0!==e[t]))?JSON.parse(JSON.stringify(e)):e;return Object.values(t.rooms||{}).forEach((e=>{e.messages=[]})),t}updateStorage(e){if(Object.entries(e).filter((([e,t])=>zr.includes(e)&&Boolean(t))).length>0){const e={};zr.forEach((t=>{e[t]=this.state[t]})),this.storage.set(Y.MATRIX_PRESERVED_STATE,this.prepareData(e))}}setState(e){this.state={isRunning:e.isRunning||this.state.isRunning,userId:e.userId||this.state.userId,deviceId:e.deviceId||this.state.deviceId,txnNo:e.txnNo||this.state.txnNo,accessToken:e.accessToken||this.state.accessToken,syncToken:e.syncToken||this.state.syncToken,pollingTimeout:e.pollingTimeout||this.state.pollingTimeout,pollingRetries:e.pollingRetries||this.state.pollingRetries,rooms:this.mergeRooms(this.state.rooms,e.rooms)}}mergeRooms(e,t){if(!t)return e;const n=Array.isArray(t)?t:Object.values(t),r=Object.assign({},e);return n.forEach((t=>{r[t.id]=jr.merge(t,e[t.id])})),r}notifyListeners(e,t,n){const r=this.onStateChangedListeners.get("all");r&&r(e,t,n),v(n).filter((e=>void 0!==n[e])).forEach((r=>{const i=this.onStateChangedListeners.get(r);i&&i(e,t,n)}))}}const Br=new Ae("MatrixHttpClient");class qr{baseUrl;cancelTokenSource;constructor(e){this.baseUrl=e,this.cancelTokenSource=Pr.CancelToken.source()}async get(e,t,n){return this.send("GET",e,n,t)}async post(e,t,n,r){return this.send("POST",e,n,r,t)}async put(e,t,n,r){return this.send("PUT",e,n,r,t)}async cancelAllRequests(){return this.cancelTokenSource.cancel("Manually cancelled")}async send(e,t,n,r,i){const o=n?this.getHeaders(n):void 0,s=r?this.getParams(r):void 0;let a;try{a=await Pr.request({method:e,url:t,baseURL:this.apiUrl("/_matrix/client/r0"),headers:o,data:i,params:s,cancelToken:this.cancelTokenSource.token})}catch(c){const e=c;throw Br.error("send",e.code,e.message,e.response.data),c.response.data}return a.data}getHeaders(e){const t={},n=[];if(e.accessToken&&n.push(["Authorization",`Bearer ${e.accessToken}`]),0!==n.length){for(const[e,r]of n)t[e]=r;return t}}getParams(e){if(!e)return;const t=Object.assign(e,{});return v(t).forEach((e=>void 0===t[e]&&delete t[e])),t}apiUrl(...e){return[this.baseUrl.endsWith("/")?this.baseUrl.substr(0,this.baseUrl.length-1):this.baseUrl,...e.map((e=>e.startsWith("/")?e.substr(1):e))].join("/")}}class Vr{httpClient;constructor(e){this.httpClient=e}async createRoom(e,t={}){return this.httpClient.post("/createRoom",t,{accessToken:e})}async inviteToRoom(e,t,n){return n.status!==Lr.JOINED&&n.status!==Lr.UNKNOWN?Promise.reject(`User is not a member of room ${n.id}.`):this.httpClient.post(`/rooms/${encodeURIComponent(n.id)}/invite`,{user_id:t},{accessToken:e})}async joinRoom(e,t){return t.status===Lr.JOINED?Promise.resolve({room_id:t.id}):this.httpClient.post(`/rooms/${encodeURIComponent(t.id)}/join`,{},{accessToken:e})}async getJoinedRooms(e){return this.httpClient.get("/joined_rooms",void 0,{accessToken:e})}}class Kr{httpClient;constructor(e){this.httpClient=e}async login(e,t,n){return this.httpClient.post("/login",{type:"m.login.password",identifier:{type:"m.id.user",user:e},password:t,device_id:n})}}class Jr{httpClient;cachedPromises=new Map;constructor(e){this.httpClient=e}async sync(e,t){return this.withCache("sync",(()=>this.httpClient.get("/sync",{timeout:t?t.pollingTimeout:void 0,since:t?t.syncToken:void 0},{accessToken:e})))}async sendMessage(e,t,n,r){return new Promise(((i,o)=>this.scheduleEvent({accessToken:e,roomId:t,type:"m.room.message",content:n,txnId:r,onSuccess:i,onError:o})))}scheduleEvent(e){this.sendEvent(e)}async sendEvent(e){const{roomId:t,type:n,txnId:r,content:i,accessToken:o}=e;try{const s=await this.httpClient.put(`/rooms/${encodeURIComponent(t)}/send/${n}/${encodeURIComponent(r)}`,i,{accessToken:o});e.onSuccess(s)}catch(s){e.onError(s)}}withCache(e,t){let n=this.cachedPromises.get(e);return n||(n=t().finally((()=>{this.cachedPromises.delete(e)})),this.cachedPromises.set(e,n)),n}}class Wr{events={};on(e,t){return"object"!=typeof this.events[e]&&(this.events[e]=[]),this.events[e].push(t),()=>this.removeListener(e,t)}removeListener(e,t){if("object"!=typeof this.events[e])return;if(!t)return void(this.events[e]=[]);const n=this.events[e].indexOf(t);n>-1&&this.events[e].splice(n,1)}removeAllListeners(){Object.keys(this.events).forEach((e=>this.events[e].splice(0,this.events[e].length)))}emit(e,...t){"object"==typeof this.events[e]&&[...this.events[e]].forEach((e=>e.apply(this,t)))}once(e,t){const n=this.on(e,((...e)=>{n(),t.apply(this,e)}));return n}}var Hr;!function(e){e.INVITE="invite",e.MESSAGE="message"}(Hr||(Hr={}));class Gr extends Wr{eventEmitProviders=new Map([[Hr.INVITE,()=>[this.isInvite,this.emitInvite.bind(this)]],[Hr.MESSAGE,()=>[this.isMessage,this.emitMessage.bind(this)]]]);onStateChanged(e,t,n){for(const r of v(Hr))this.emitIfEvent(Hr[r],n)}emitIfEvent(e,t){const n=this.eventEmitProviders.get(e);if(n){const[r,i]=n();r(t)&&i(e,t)}}emitClientEvent(e,t,n){this.emit(e,{type:e,content:t,timestamp:n})}isInvite(e){return!!e.rooms&&e.rooms.some((e=>e.status===Lr.INVITED))}emitInvite(e,t){t.rooms.filter((e=>e.status===Lr.INVITED)).map((e=>[e.id,e.members])).forEach((([t,n])=>{this.emitClientEvent(e,{roomId:t,members:n})}))}isMessage(e){return!!e.rooms&&e.rooms.some((e=>e.messages.length>0))}emitMessage(e,t){t.rooms.filter((e=>e.messages.length>0)).map((e=>e.messages.map((t=>[e.id,t,t.timestamp])))).reduce(((e,t)=>e.concat(t)),[]).forEach((([t,n,r])=>{this.emitClientEvent(e,{roomId:t,message:n},r)}))}}var Qr=n(96763);const Yr=new Ae("MatrixClient");class Zr{store;eventEmitter;userService;roomService;eventService;httpClient;isActive=!0;_isReady=new x;constructor(e,t,n,r,i,o){this.store=e,this.eventEmitter=t,this.userService=n,this.roomService=r,this.eventService=i,this.httpClient=o,this.store.onStateChanged(((e,t,n)=>{this.eventEmitter.onStateChanged(e,t,n)}),"rooms")}static create(e){const t=new Ur(e.storage),n=new Gr,r=new qr(e.baseUrl),i=new Kr(r),o=new Vr(r),s=new Jr(r);return new Zr(t,n,i,o,s,r)}get joinedRooms(){return new Promise((async e=>{await this.isConnected(),e(Object.values(this.store.get("rooms")).filter((e=>e.status===Lr.JOINED)))}))}get invitedRooms(){return new Promise((async e=>{await this.isConnected(),e(Object.values(this.store.get("rooms")).filter((e=>e.status===Lr.INVITED)))}))}get leftRooms(){return new Promise((async e=>{await this.isConnected(),e(Object.values(this.store.get("rooms")).filter((e=>e.status===Lr.LEFT)))}))}async start(e){const t=await this.userService.login(e.id,e.password,e.deviceId);await this.store.update({accessToken:t.access_token});const n=new Promise((async(e,t)=>{await this.poll(0,(async t=>{this.store.get("isRunning")||e(),await this.store.update({isRunning:!0,syncToken:t.next_batch,pollingTimeout:3e4,pollingRetries:0,rooms:jr.fromSync(t.rooms)})}),(async e=>{this.store.get("isRunning")||t(e),await this.store.update({isRunning:!1,pollingRetries:this.store.get("pollingRetries")+1})}))}));return n.then((()=>{this._isReady.resolve()})).catch(Qr.error),n}async isConnected(){return this._isReady.promise}async stop(){return Yr.log("MATRIX CLIENT STOPPED"),this.isActive=!1,this._isReady=new x,this.httpClient.cancelAllRequests()}subscribe(e,t){this.eventEmitter.on(e,t)}unsubscribe(e,t){t&&this.eventEmitter.removeListener(e,t)}unsubscribeAll(e){this.eventEmitter.removeListener(e)}async getRoomById(e){return await this.isConnected(),this.store.getRoom(e)}async createTrustedPrivateRoom(...e){return await this.isConnected(),this.requiresAuthorization("createRoom",(async t=>(await this.roomService.createRoom(t,{room_version:"5",invite:e,preset:"public_chat",is_direct:!0})).room_id))}async inviteToRooms(e,...t){await this.isConnected(),await this.requiresAuthorization("invite",(n=>Promise.all(t.map((t=>{const r=this.store.getRoom(t);this.roomService.inviteToRoom(n,e,r).catch((e=>Yr.warn("inviteToRooms",e)))})))))}async joinRooms(...e){await this.isConnected(),await this.requiresAuthorization("join",(t=>Promise.all(e.map((e=>{const n=this.store.getRoom(e);return this.roomService.joinRoom(t,n)})))))}async sendTextMessage(e,t){await this.isConnected(),await this.requiresAuthorization("send",(async n=>{const r=await this.createTxnId();return this.eventService.sendMessage(n,e,{msgtype:"m.text",body:t},r)}))}async poll(e,t,n){const r=this.store,i=this.sync.bind(this),o=async(s,a)=>{let c=0;try{const e=await i();t(e)}catch(l){n(l),c=r.get("pollingRetries"),this.isActive&&Yr.log(`Retry syncing... ${c} retries so far`)}finally{this.isActive?setTimeout((async()=>{await o(s,a)}),c>3?5e3+e:e):a(new Error("Syncing stopped manually."))}};return new Promise(o)}async sync(){return this.requiresAuthorization("sync",(async e=>this.eventService.sync(e,{pollingTimeout:this.store.get("pollingTimeout"),syncToken:this.store.get("syncToken")})))}async requiresAuthorization(e,t){const n=this.store.get("accessToken");return n?t(n):Promise.reject(`${e} requires authorization but no access token has been provided.`)}async createTxnId(){const e=(new Date).getTime(),t=this.store.get("txnNo");return await this.store.update({txnNo:t+1}),`m${e}.${t}`}}var Xr=n(48287).Buffer;const $r=new Ae("P2PCommunicationClient"),ei={[ne.EUROPE_WEST]:["beacon-node-1.diamond.papers.tech","beacon-node-1.sky.papers.tech","beacon-node-2.sky.papers.tech","beacon-node-1.hope.papers.tech","beacon-node-1.hope-2.papers.tech","beacon-node-1.hope-3.papers.tech","beacon-node-1.hope-4.papers.tech","beacon-node-1.hope-5.papers.tech"],[ne.NORTH_AMERICA_EAST]:["beacon-node-1.beacon-server-1.papers.tech"],[ne.NORTH_AMERICA_WEST]:["beacon-node-1.beacon-server-2.papers.tech"],[ne.ASIA_EAST]:["beacon-node-1.beacon-server-3.papers.tech"],[ne.AUSTRALIA]:["beacon-node-1.beacon-server-4.papers.tech"]},ti=e=>new Promise((t=>setTimeout(t,e)));class ni extends $e{name;replicationCount;storage;iconUrl;appUrl;client=new x;initialEvent;initialListener;selectedRegion;ENABLED_RELAY_SERVERS;relayServer;activeListeners=new Map;ignoredRooms=[];loginCounter=0;constructor(e,t,n,r,i,o,s){super(t),this.name=e,this.replicationCount=n,this.storage=r,this.iconUrl=o,this.appUrl=s,$r.log("constructor","P2PCommunicationClient created"),this.ENABLED_RELAY_SERVERS=ei,i&&(this.ENABLED_RELAY_SERVERS={...ei,...i})}async getPairingRequestInfo(){const e=new $(await U(),this.name,await this.getPublicKey(),"3",(await this.getRelayServer()).server);return this.iconUrl&&(e.icon=this.iconUrl),this.appUrl&&(e.appUrl=this.appUrl),e}async getPairingResponseInfo(e){const t=new re(e.id,this.name,await this.getPublicKey(),e.version,(await this.getRelayServer()).server);return this.iconUrl&&(t.icon=this.iconUrl),this.appUrl&&(t.appUrl=this.appUrl),t}async findBestRegionAndGetServer(){if(this.selectedRegion)return this.relayServer?.promiseResult;const e=Object.keys(this.ENABLED_RELAY_SERVERS),t=[],n=new x;let r=0;const i=new x;e.forEach((e=>{const o=this.ENABLED_RELAY_SERVERS[e]??[];if(0===o.length)return;r+=2;const s=(o=!0)=>{const c=Date.now();Promise.race([this.getBeaconInfo(a),i.promise]).then((i=>{"boolean"!=typeof i&&(t.push({time:Date.now()-c,server:a,region:e,result:i}),t.length>=r&&n.resolve(void 0),o||s(!0))}))},a=o[Math.floor(Math.random()*o.length)];s(!1)})),await Promise.race([n.promise,ti(1e3)]);let o=0;for(;t.length<=0;){if(o>=100)throw new Error("No server responded.");await ti(50),o++}i.resolve(!0);const s=t.reduce(((e,t)=>e.time<t.time?e:t));return this.selectedRegion=s.region,{server:s.server,timestamp:s.result.timestamp}}async getRelayServer(){if(this.relayServer){const e=await this.relayServer.promise;if(Date.now()-e.localTimestamp<6e4)return{server:e.server,timestamp:e.timestamp};const t=await this.getBeaconInfo(e.server);return this.relayServer.resolve({server:e.server,timestamp:t.timestamp,localTimestamp:(new Date).getTime()}),{server:e.server,timestamp:t.timestamp}}this.relayServer=new x;const e=await this.storage.get(Y.MATRIX_SELECTED_NODE);if(e&&e.length>0){const t=await this.getBeaconInfo(e);return this.relayServer.resolve({server:e,timestamp:t.timestamp,localTimestamp:(new Date).getTime()}),{server:e,timestamp:t.timestamp}}const t=await this.findBestRegionAndGetServer();if(!t)throw new Error("No servers found");return this.storage.set(Y.MATRIX_SELECTED_NODE,t.server).catch((e=>$r.log(e))),this.relayServer.resolve({server:t.server,timestamp:t.timestamp,localTimestamp:(new Date).getTime()}),{server:t.server,timestamp:t.timestamp}}async getBeaconInfo(e){return Pr.get(`https://${e}/_synapse/client/beacon/info`).then((e=>({region:e.data.region,known_servers:e.data.known_servers,timestamp:Math.floor(e.data.timestamp)})))}async tryJoinRooms(e,t=1){try{await(await this.client.promise).joinRooms(e)}catch(n){t<=10&&"M_FORBIDDEN"===n.errcode?($r.log("Retrying to join...",n),setTimeout((async()=>{await this.tryJoinRooms(e,t+1)}),200)):$r.log(`Failed to join after ${t} tries.`,n)}}async start(){$r.log("start","starting client"),$r.log("start","connecting to server");const e=await this.getRelayServer(),t=Zr.create({baseUrl:`https://${e.server}`,storage:this.storage});if(this.initialListener=async e=>{this.initialEvent&&this.initialEvent.timestamp&&e&&e.timestamp?this.initialEvent.timestamp<e.timestamp&&(this.initialEvent=e):this.initialEvent=e},t.subscribe(Hr.MESSAGE,this.initialListener),t.subscribe(Hr.INVITE,(async e=>{let t;1===e.content.members.length&&(t=e.content.members[0]),await this.tryJoinRooms(e.content.roomId),t&&(await this.updateRelayServer(t),await this.updatePeerRoom(t,e.content.roomId))})),!e.timestamp)throw new Error("No timestamp received from relay server");const n=Math.floor(e.timestamp),r=`login:${Math.floor(n/300)}`;$r.log("start",`login ${r}, ${await this.getPublicKeyHash()} on ${e.server}`);const i=(0,E.hash)((0,k.lF)(r),32),o=this.keyPair.secretKey??this.keyPair.privateKey,s=(0,C._S)(o,i);try{await t.start({id:await this.getPublicKeyHash(),password:`ed:${I(s)}:${await this.getPublicKey()}`,deviceId:I(this.keyPair.publicKey)})}catch(a){if($r.error("start","Could not log in, retrying"),await this.reset(),!this.selectedRegion)throw new Error("No region selected.");if(this.loginCounter<=(this.ENABLED_RELAY_SERVERS[this.selectedRegion]??[]).length)return this.loginCounter++,void this.start();throw $r.error("start","Tried to log in to every known beacon node, but no login was successful."),new Error("Could not connect to any beacon nodes. Try again later.")}$r.log("start","login successful, client is ready"),this.client.resolve(t)}async stop(){$r.log("stop","stopping client"),this.client.isResolved()&&await(await this.client.promise).stop().catch((e=>$r.error(e))),await this.reset()}async reset(){$r.log("reset","resetting connection"),await this.storage.delete(Y.MATRIX_PEER_ROOM_IDS).catch((e=>$r.log(e))),await this.storage.delete(Y.MATRIX_PRESERVED_STATE).catch((e=>$r.log(e))),await this.storage.delete(Y.MATRIX_SELECTED_NODE).catch((e=>$r.log(e))),this.relayServer=void 0,this.client=new x,this.initialEvent=void 0,this.initialListener=void 0}async listenForEncryptedMessage(e,t){if(this.activeListeners.has(e))return;$r.log("listenForEncryptedMessage",`start listening for encrypted messages from publicKey ${e}`);const n=await this.createCryptoBoxServer(e,this.keyPair),r=async r=>{if(this.isTextMessage(r.content)&&await this.isSender(r,e)){let o;await this.updateRelayServer(r.content.message.sender),await this.updatePeerRoom(r.content.message.sender,r.content.roomId);try{o=Xr.from(r.content.message.content,"hex")}catch{}if(o&&o.length>=40)try{const r=await O(o,n.receive);$r.log("listenForEncryptedMessage",`received a message from ${e}`,r),t(r)}catch(i){}}};this.activeListeners.set(e,r),(await this.client.promise).subscribe(Hr.MESSAGE,r);const i=this.initialEvent;i&&i.timestamp&&(new Date).getTime()-i.timestamp<3e5?($r.log("listenForEncryptedMessage","Handling previous event"),await r(i)):$r.log("listenForEncryptedMessage","No previous event found");const o=this.initialListener;o&&(await this.client.promise).unsubscribe(Hr.MESSAGE,o),this.initialListener=void 0,this.initialEvent=void 0}async unsubscribeFromEncryptedMessage(e){const t=this.activeListeners.get(e);t&&((await this.client.promise).unsubscribe(Hr.MESSAGE,t),this.activeListeners.delete(e))}async unsubscribeFromEncryptedMessages(){(await this.client.promise).unsubscribeAll(Hr.MESSAGE),this.activeListeners.clear()}async sendMessage(e,t){const n=await this.createCryptoBoxClient(t.publicKey,this.keyPair),r=L(await D(Xr.from(t.publicKey,"hex")),t.relayServer),i=await this.getRelevantRoom(r),o=await M(e,n.send);$r.log("sendMessage","sending encrypted message",t.publicKey,i,e),(await this.client.promise).sendTextMessage(i,o).catch((async e=>{if("M_FORBIDDEN"===e.errcode){$r.log("sendMessage","M_FORBIDDEN",i,e),await this.deleteRoomIdFromRooms(i);const t=await this.getRelevantRoom(r);$r.log("sendMessage","Old room deleted, new room created",t),(await this.client.promise).sendTextMessage(t,o).catch((async e=>{$r.log("sendMessage","inner error",t,e)}))}else $r.log("sendMessage","unexpected error",e)}))}async updatePeerRoom(e,t){$r.log("updatePeerRoom",e,t);const n=e.split(":");if(n.length<2||!n[0].startsWith("@"))throw new Error("Invalid sender");const r=await this.storage.get(Y.MATRIX_PEER_ROOM_IDS),i=r[e];i===t&&$r.debug("updatePeerRoom","rooms are the same, not updating"),$r.debug("updatePeerRoom","current room",i,"new room",t),i&&i[1]&&($r.log("updatePeerRoom",`adding room "${i[1]}" to ignored array`),this.ignoredRooms.push(i[1])),r[e]=t,await this.storage.set(Y.MATRIX_PEER_ROOM_IDS,r)}async deleteRoomIdFromRooms(e){const t=await this.storage.get(Y.MATRIX_PEER_ROOM_IDS),n=Object.entries(t).filter((t=>t[1]!==e)).reduce(((e,t)=>({...e,[t[0]]:t[1]})),{});await this.storage.set(Y.MATRIX_PEER_ROOM_IDS,n),this.ignoredRooms.push(e)}async listenForChannelOpening(e){$r.debug("listenForChannelOpening"),(await this.client.promise).subscribe(Hr.MESSAGE,(async t=>{if(this.isTextMessage(t.content)&&await this.isChannelOpenMessage(t.content)){$r.log("listenForChannelOpening","channel opening received, trying to decrypt",JSON.stringify(t)),await this.updateRelayServer(t.content.message.sender),await this.updatePeerRoom(t.content.message.sender,t.content.roomId);const r=t.content.message.content.split(":"),i=Xr.from(r[r.length-1],"hex");if(i.length>=40)try{const t=JSON.parse(await F(i,this.keyPair.publicKey,this.keyPair.secretKey));$r.log("listenForChannelOpening","channel opening received and decrypted",JSON.stringify(t)),e({...t,senderId:await ke(t.publicKey)})}catch(n){}}}))}async waitForJoin(e,t=0){const n=await(await this.client.promise).getRoomById(e);if($r.log("waitForJoin",`Currently ${n.members.length} members, we need at least 2`),!(n.members.length>=2)){if(t<=200)return $r.log(`Waiting for join... Try: ${t}`),new Promise((n=>{setTimeout((()=>{n(this.waitForJoin(e,t+1))}),100*(t>50?10:1))}));throw new Error(`No one joined after ${t} tries.`)}}async sendPairingResponse(e){$r.log("sendPairingResponse");const t=L(await D(Xr.from(e.publicKey,"hex")),e.relayServer),n=await(await this.client.promise).createTrustedPrivateRoom(t);$r.debug("sendPairingResponse",`Connecting to room "${n}"`),await this.updatePeerRoom(t,n),await this.waitForJoin(n),$r.debug("sendPairingResponse","Successfully joined room.");const r=void 0===e.version?await this.getPublicKey():JSON.stringify(await this.getPairingResponseInfo(e));$r.debug("sendPairingResponse","Sending pairing response",r);const i=await this.encryptMessageAsymmetric(e.publicKey,r),o=["@channel-open",t,i].join(":");(await this.client.promise).sendTextMessage(n,o).catch((async e=>{if("M_FORBIDDEN"===e.errcode){$r.log("sendPairingResponse","M_FORBIDDEN",n,e),await this.deleteRoomIdFromRooms(n);const r=await this.getRelevantRoom(t);$r.log("sendPairingResponse","Old room deleted, new room created",r),(await this.client.promise).sendTextMessage(r,o).catch((async e=>{$r.log("sendPairingResponse","inner error",r,e)}))}else $r.log("sendPairingResponse","unexpected error",e)}))}isTextMessage(e){return e.message.type===Mr.TEXT}async updateRelayServer(e){$r.log("updateRelayServer",e);const t=e.split(":");if(t.length<2||!t[0].startsWith("@"))throw new Error("Invalid sender");const n=t.shift(),r=t.join(":"),i=localStorage.getItem("beacon:communication-peers-dapp")?new Ye(this.storage,Y.TRANSPORT_P2P_PEERS_DAPP):new Ye(this.storage,Y.TRANSPORT_P2P_PEERS_WALLET),o=(await i.getPeers()).map((async e=>{`@${await D(Xr.from(e.publicKey,"hex"))}`===n&&e.relayServer!==r&&(e.relayServer=r,await i.addPeer(e))}));await Promise.all(o)}async isChannelOpenMessage(e){return e.message.content.startsWith(`@channel-open:@${await D(Xr.from(await this.getPublicKey(),"hex"))}`)}async isSender(e,t){return e.content.message.sender.startsWith(`@${await D(Xr.from(t,"hex"))}`)}async getRelevantRoom(e){const t=await this.storage.get(Y.MATRIX_PEER_ROOM_IDS);let n=t[e];if(!n){$r.log("getRelevantRoom",`No room found for peer ${e}, checking joined ones.`);const r=await this.getRelevantJoinedRoom(e);n=r.id,t[e]=r.id,await this.storage.set(Y.MATRIX_PEER_ROOM_IDS,t)}return $r.log("getRelevantRoom",`Using room ${n}`),n}async getRelevantJoinedRoom(e){const t=await(await this.client.promise).joinedRooms;$r.log("checking joined rooms",t,e);const n=t.filter((e=>!this.ignoredRooms.some((t=>e.id===t)))).filter((t=>t.members.some((t=>t===e))));let r;if(0===n.length||this.ignoredRooms.length>0){$r.log("getRelevantJoinedRoom","no relevant rooms found, creating new one");const t=await(await this.client.promise).createTrustedPrivateRoom(e);r=await(await this.client.promise).getRoomById(t),$r.log("getRelevantJoinedRoom",`waiting for other party to join room: ${r.id}`),await this.waitForJoin(t),$r.log("getRelevantJoinedRoom",`new room created and peer invited: ${r.id}`)}else r=n[0],$r.log("getRelevantJoinedRoom",`channel already open, reusing room ${r.id}`);return r}}const ri=new Ae("P2PTransport");class ii extends Ke{type=Q.P2P;constructor(e,t,n,r,i,o,s){super(e,new ni(e,t,1,n,r,o,s),new Ye(n,i))}static async isAvailable(){return Promise.resolve(!0)}async connect(){if(this._isConnected!==G.NOT_CONNECTED)return;ri.log("connect"),this._isConnected=G.CONNECTING,await this.client.start();const e=await this.getPeers();if(e.length>0){ri.log("connect",`connecting to ${e.length} peers`);const t=e.map((async e=>this.listen(e.publicKey)));Promise.all(t).catch((e=>ri.error("connect",e)))}return await this.startOpenChannelListener(),super.connect()}async disconnect(){return await this.client.stop(),super.disconnect()}async startOpenChannelListener(){}async getPairingRequestInfo(){return this.client.getPairingRequestInfo()}async listen(e){await this.client.listenForEncryptedMessage(e,(t=>{const n={origin:J.P2P,id:e};this.notifyListeners(t,n).catch((e=>{throw e}))})).catch((e=>{throw e}))}}var oi=n(96763),si=n(48287).Buffer;class ai extends nt{activeListeners=new Map;async init(){this.subscribeToMessages().catch(oi.error)}async listenForEncryptedMessage(e,t){if(this.activeListeners.has(e))return;this.activeListeners.set(e,(async(n,r)=>{try{const i=await this.decryptMessage(e,n.encryptedPayload);t(i,r)}catch(i){}}))}async sendMessage(e,t){const n=await this.encryptMessage(t.publicKey,e),r=t?.extensionId,i={target:W.EXTENSION,encryptedPayload:n,targetId:r};fe.postMessage(i,fe.location.origin)}async listenForChannelOpening(e){fe.addEventListener("message",(async t=>{if(t.source!==fe||t.origin!==fe.location.origin)return;const n=t?.data?.message;if(n&&n.target===W.PAGE&&await this.isChannelOpenMessage(n)){const i=si.from(n.payload,"hex");if(i.length>=40)try{const n=JSON.parse(await F(i,this.keyPair.publicKey,this.keyPair.secretKey));e(new ue(n.id,n.name,n.publicKey,n.version,await ke(n.publicKey),t?.data?.sender.id))}catch(r){}}}))}async sendPairingRequest(e){const t={target:W.EXTENSION,payload:await(new He).serialize(await this.getPairingRequestInfo()),targetId:e};fe.postMessage(t,fe.location.origin)}async isChannelOpenMessage(e){return"object"==typeof e&&e.hasOwnProperty("payload")}async subscribeToMessages(){fe.addEventListener("message",(e=>{if(e.source===fe&&e.origin===fe.location.origin&&"object"==typeof e&&e){const t=e.data;t.message&&t.message.target===W.PAGE&&this.activeListeners.forEach((e=>{e(t.message,{origin:J.EXTENSION,id:t.sender.id||""})}))}}))}}const ci=new Ae("PostMessageTransport");let li,ui,di=!1;class _i extends Ke{type=Q.POST_MESSAGE;constructor(e,t,n,r){super(e,new ai(e,t),new Ye(n,r))}static async isAvailable(){return new Promise((e=>{const t=n=>{const r=n.data;r&&"pong"===r.payload&&(e(!0),fe.removeEventListener("message",t))};fe.addEventListener("message",t);const n={target:W.EXTENSION,payload:"ping"};fe.postMessage(n,fe.location.origin)}))}static async getAvailableExtensions(){return li||(ui||(ui=[],li=new Promise((e=>{_i.listenForExtensions(),setTimeout((()=>{e(ui??[])}),1e3)})).finally((()=>{li=void 0})),li))}static listenForExtensions(){if(di)return;fe.addEventListener("message",(e=>{if(e.source!==fe||e.origin!==fe.location.origin)return;const t=e.data,n=t.sender;var r;t&&"pong"===t.payload&&n&&(ci.log("getAvailableExtensions",`extension "${n.name}" is available`,n),r=n,ui||(ui=[]),ui.some((e=>e.id===r.id))||(ui.push(r),fe.postMessage("extensionsUpdated",fe.location.origin)))}));const e={target:W.EXTENSION,payload:"ping"};fe.postMessage(e,fe.location.origin),di=!0}async connect(){if(ci.log("connect"),this._isConnected!==G.NOT_CONNECTED)return;this._isConnected=G.CONNECTING;const e=await this.getPeers();if(e.length>0){ci.log("connect",`connecting to ${e.length} peers`);const t=e.map((async e=>this.listen(e.publicKey)));Promise.all(t).catch((e=>ci.error("connect",e)))}await this.startOpenChannelListener(),await super.connect()}async startOpenChannelListener(){}async getPairingRequestInfo(){return this.client.getPairingRequestInfo()}async listen(e){ci.log("listen",e),await this.client.listenForEncryptedMessage(e,((e,t)=>{const n={origin:J.EXTENSION,id:t.id};this.notifyListeners(e,n).catch((e=>{throw e}))})).catch((e=>{throw e}))}}_i.getAvailableExtensions();const pi={context:void 0,registry:void 0,done:!1,getContextId(){return fi(this.context.count)},getNextContextId(){return fi(this.context.count++)}};function fi(e){const t=String(e),n=t.length-1;return pi.context.id+(n?String.fromCharCode(96+n):"")+t}function mi(e){pi.context=e}const hi=(e,t)=>e===t,gi=(Symbol("solid-proxy"),Symbol("solid-track")),yi=(Symbol("solid-dev-component"),{equals:hi});let vi=null,bi=Xi;const xi=1,Si=2,Ti={owned:null,cleanups:null,context:null,owner:null};var wi=null;let ki=null,Ei=null,Ci=null,Ni=null,Ai=null,Ii=null,Di=0;function Pi(e,t){const n=Ni,r=wi,i=0===e.length,o=void 0===t?r:t,s=i?Ti:{owned:null,cleanups:null,context:o?o.context:null,owner:o},a=i?e:()=>e((()=>Li((()=>no(s)))));wi=s,Ni=null;try{return Zi(a,!0)}finally{Ni=n,wi=r}}function Mi(e,t){const n={value:e,observers:null,observerSlots:null,comparator:(t=t?Object.assign({},yi,t):yi).equals||void 0};return[Ji.bind(n),e=>("function"==typeof e&&(e=ki&&ki.running&&ki.sources.has(n)?e(n.tValue):e(n.value)),Wi(n,e))]}function Oi(e,t,n){const r=Qi(e,t,!1,xi);Ei&&ki&&ki.running?Ai.push(r):Hi(r)}function Fi(e,t,n){bi=$i;const r=Qi(e,t,!1,xi),i=Ki&&Vi(Ki);i&&(r.suspense=i),n&&n.render||(r.user=!0),Ii?Ii.push(r):Hi(r)}function Ri(e,t,n){n=n?Object.assign({},yi,n):yi;const r=Qi(e,t,!0,0);return r.observers=null,r.observerSlots=null,r.comparator=n.equals||void 0,Ei&&ki&&ki.running?(r.tState=xi,Ai.push(r)):Hi(r),Ji.bind(r)}function Li(e){if(!Ci&&null===Ni)return e();const t=Ni;Ni=null;try{return Ci?Ci.untrack(e):e()}finally{Ni=t}}function ji(e){Fi((()=>Li(e)))}function zi(e){return null===wi||(null===wi.cleanups?wi.cleanups=[e]:wi.cleanups.push(e)),e}function Ui(e){if(ki&&ki.running)return e(),ki.done;const t=Ni,n=wi;return Promise.resolve().then((()=>{let r;return Ni=t,wi=n,(Ei||Ki)&&(r=ki||(ki={sources:new Set,effects:[],promises:new Set,disposed:new Set,queue:new Set,running:!0}),r.done||(r.done=new Promise((e=>r.resolve=e))),r.running=!0),Zi(e,!1),Ni=wi=null,r?r.done:void 0}))}const[Bi,qi]=Mi(!1);function Vi(e){let t;return wi&&wi.context&&void 0!==(t=wi.context[e.id])?t:e.defaultValue}let Ki;function Ji(){const e=ki&&ki.running;if(this.sources&&(e?this.tState:this.state))if((e?this.tState:this.state)===xi)Hi(this);else{const e=Ai;Ai=null,Zi((()=>eo(this)),!1),Ai=e}if(Ni){const e=this.observers?this.observers.length:0;Ni.sources?(Ni.sources.push(this),Ni.sourceSlots.push(e)):(Ni.sources=[this],Ni.sourceSlots=[e]),this.observers?(this.observers.push(Ni),this.observerSlots.push(Ni.sources.length-1)):(this.observers=[Ni],this.observerSlots=[Ni.sources.length-1])}return e&&ki.sources.has(this)?this.tValue:this.value}function Wi(e,t,n){let r=ki&&ki.running&&ki.sources.has(e)?e.tValue:e.value;if(!e.comparator||!e.comparator(r,t)){if(ki){const r=ki.running;(r||!n&&ki.sources.has(e))&&(ki.sources.add(e),e.tValue=t),r||(e.value=t)}else e.value=t;e.observers&&e.observers.length&&Zi((()=>{for(let t=0;t<e.observers.length;t+=1){const n=e.observers[t],r=ki&&ki.running;r&&ki.disposed.has(n)||((r?n.tState:n.state)||(n.pure?Ai.push(n):Ii.push(n),n.observers&&to(n)),r?n.tState=xi:n.state=xi)}if(Ai.length>1e6)throw Ai=[],new Error}),!1)}return t}function Hi(e){if(!e.fn)return;no(e);const t=Di;Gi(e,ki&&ki.running&&ki.sources.has(e)?e.tValue:e.value,t),ki&&!ki.running&&ki.sources.has(e)&&queueMicrotask((()=>{Zi((()=>{ki&&(ki.running=!0),Ni=wi=e,Gi(e,e.tValue,t),Ni=wi=null}),!1)}))}function Gi(e,t,n){let r;const i=wi,o=Ni;Ni=wi=e;try{r=e.fn(t)}catch(s){return e.pure&&(ki&&ki.running?(e.tState=xi,e.tOwned&&e.tOwned.forEach(no),e.tOwned=void 0):(e.state=xi,e.owned&&e.owned.forEach(no),e.owned=null)),e.updatedAt=n+1,so(s)}finally{Ni=o,wi=i}(!e.updatedAt||e.updatedAt<=n)&&(null!=e.updatedAt&&"observers"in e?Wi(e,r,!0):ki&&ki.running&&e.pure?(ki.sources.add(e),e.tValue=r):e.value=r,e.updatedAt=n)}function Qi(e,t,n,r=xi,i){const o={fn:e,state:r,updatedAt:null,owned:null,sources:null,sourceSlots:null,cleanups:null,value:t,owner:wi,context:wi?wi.context:null,pure:n};if(ki&&ki.running&&(o.state=0,o.tState=r),null===wi||wi!==Ti&&(ki&&ki.running&&wi.pure?wi.tOwned?wi.tOwned.push(o):wi.tOwned=[o]:wi.owned?wi.owned.push(o):wi.owned=[o]),Ci&&o.fn){const[e,t]=Mi(void 0,{equals:!1}),n=Ci.factory(o.fn,t);zi((()=>n.dispose()));const r=()=>Ui(t).then((()=>i.dispose())),i=Ci.factory(o.fn,r);o.fn=t=>(e(),ki&&ki.running?i.track(t):n.track(t))}return o}function Yi(e){const t=ki&&ki.running;if(0===(t?e.tState:e.state))return;if((t?e.tState:e.state)===Si)return eo(e);if(e.suspense&&Li(e.suspense.inFallback))return e.suspense.effects.push(e);const n=[e];for(;(e=e.owner)&&(!e.updatedAt||e.updatedAt<Di);){if(t&&ki.disposed.has(e))return;(t?e.tState:e.state)&&n.push(e)}for(let r=n.length-1;r>=0;r--){if(e=n[r],t){let t=e,i=n[r+1];for(;(t=t.owner)&&t!==i;)if(ki.disposed.has(t))return}if((t?e.tState:e.state)===xi)Hi(e);else if((t?e.tState:e.state)===Si){const t=Ai;Ai=null,Zi((()=>eo(e,n[0])),!1),Ai=t}}}function Zi(e,t){if(Ai)return e();let n=!1;t||(Ai=[]),Ii?n=!0:Ii=[],Di++;try{const t=e();return function(e){Ai&&(Ei&&ki&&ki.running?function(e){for(let t=0;t<e.length;t++){const n=e[t],r=ki.queue;r.has(n)||(r.add(n),Ei((()=>{r.delete(n),Zi((()=>{ki.running=!0,Yi(n)}),!1),ki&&(ki.running=!1)})))}}(Ai):Xi(Ai),Ai=null);if(e)return;let t;if(ki)if(ki.promises.size||ki.queue.size){if(ki.running)return ki.running=!1,ki.effects.push.apply(ki.effects,Ii),Ii=null,void qi(!0)}else{const e=ki.sources,n=ki.disposed;Ii.push.apply(Ii,ki.effects),t=ki.resolve;for(const t of Ii)"tState"in t&&(t.state=t.tState),delete t.tState;ki=null,Zi((()=>{for(const e of n)no(e);for(const t of e){if(t.value=t.tValue,t.owned)for(let e=0,n=t.owned.length;e<n;e++)no(t.owned[e]);t.tOwned&&(t.owned=t.tOwned),delete t.tValue,delete t.tOwned,t.tState=0}qi(!1)}),!1)}const n=Ii;Ii=null,n.length&&Zi((()=>bi(n)),!1);t&&t()}(n),t}catch(r){n||(Ii=null),Ai=null,so(r)}}function Xi(e){for(let t=0;t<e.length;t++)Yi(e[t])}function $i(e){let t,n=0;for(t=0;t<e.length;t++){const r=e[t];r.user?e[n++]=r:Yi(r)}if(pi.context){if(pi.count)return pi.effects||(pi.effects=[]),void pi.effects.push(...e.slice(0,n));pi.effects&&(e=[...pi.effects,...e],n+=pi.effects.length,delete pi.effects),mi()}for(t=0;t<n;t++)Yi(e[t])}function eo(e,t){const n=ki&&ki.running;n?e.tState=0:e.state=0;for(let r=0;r<e.sources.length;r+=1){const i=e.sources[r];if(i.sources){const e=n?i.tState:i.state;e===xi?i!==t&&(!i.updatedAt||i.updatedAt<Di)&&Yi(i):e===Si&&eo(i,t)}}}function to(e){const t=ki&&ki.running;for(let n=0;n<e.observers.length;n+=1){const r=e.observers[n];(t?r.tState:r.state)||(t?r.tState=Si:r.state=Si,r.pure?Ai.push(r):Ii.push(r),r.observers&&to(r))}}function no(e){let t;if(e.sources)for(;e.sources.length;){const t=e.sources.pop(),n=e.sourceSlots.pop(),r=t.observers;if(r&&r.length){const e=r.pop(),i=t.observerSlots.pop();n<r.length&&(e.sourceSlots[i]=n,r[n]=e,t.observerSlots[n]=i)}}if(ki&&ki.running&&e.pure){if(e.tOwned){for(t=e.tOwned.length-1;t>=0;t--)no(e.tOwned[t]);delete e.tOwned}ro(e,!0)}else if(e.owned){for(t=e.owned.length-1;t>=0;t--)no(e.owned[t]);e.owned=null}if(e.cleanups){for(t=e.cleanups.length-1;t>=0;t--)e.cleanups[t]();e.cleanups=null}ki&&ki.running?e.tState=0:e.state=0}function ro(e,t){if(t||(e.tState=0,ki.disposed.add(e)),e.owned)for(let n=0;n<e.owned.length;n++)ro(e.owned[n])}function io(e){return e instanceof Error?e:new Error("string"==typeof e?e:"Unknown error",{cause:e})}function oo(e,t,n){try{for(const n of t)n(e)}catch(r){so(r,n&&n.owner||null)}}function so(e,t=wi){const n=vi&&t&&t.context&&t.context[vi],r=io(e);if(!n)throw r;Ii?Ii.push({fn(){oo(r,n,t)},state:xi}):oo(r,n,t)}const ao=Symbol("fallback");function co(e){for(let t=0;t<e.length;t++)e[t]()}let lo=!1;function uo(e,t){if(lo&&pi.context){const n=pi.context;mi({...pi.context,id:pi.getNextContextId(),count:0});const r=Li((()=>e(t||{})));return mi(n),r}return Li((()=>e(t||{})))}function _o(e){const t="fallback"in e&&{fallback:()=>e.fallback};return Ri(function(e,t,n={}){let r=[],i=[],o=[],s=0,a=t.length>1?[]:null;return zi((()=>co(o))),()=>{let c,l,u=e()||[],d=u.length;return u[gi],Li((()=>{let e,t,p,f,m,h,g,y,v;if(0===d)0!==s&&(co(o),o=[],r=[],i=[],s=0,a&&(a=[])),n.fallback&&(r=[ao],i[0]=Pi((e=>(o[0]=e,n.fallback()))),s=1);else if(0===s){for(i=new Array(d),l=0;l<d;l++)r[l]=u[l],i[l]=Pi(_);s=d}else{for(p=new Array(d),f=new Array(d),a&&(m=new Array(d)),h=0,g=Math.min(s,d);h<g&&r[h]===u[h];h++);for(g=s-1,y=d-1;g>=h&&y>=h&&r[g]===u[y];g--,y--)p[y]=i[g],f[y]=o[g],a&&(m[y]=a[g]);for(e=new Map,t=new Array(y+1),l=y;l>=h;l--)v=u[l],c=e.get(v),t[l]=void 0===c?-1:c,e.set(v,l);for(c=h;c<=g;c++)v=r[c],l=e.get(v),void 0!==l&&-1!==l?(p[l]=i[c],f[l]=o[c],a&&(m[l]=a[c]),l=t[l],e.set(v,l)):o[c]();for(l=h;l<d;l++)l in p?(i[l]=p[l],o[l]=f[l],a&&(a[l]=m[l],a[l](l))):i[l]=Pi(_);i=i.slice(0,s=d),r=u.slice(0)}return i}));function _(e){if(o[l]=e,a){const[e,n]=Mi(l);return a[l]=n,t(u[l],e)}return t(u[l])}}}((()=>e.each),e.children,t||void 0))}n(96763);Object.create(null),Object.create(null);const po="_$DX_DELEGATE";function fo(e,t,n,r={}){let i;return Pi((r=>{i=r,t===document?e():xo(t,e(),t.firstChild?null:void 0,n)}),r.owner),()=>{i(),t.textContent=""}}function mo(e,t,n){let r;const i=()=>{const t=document.createElement("template");return t.innerHTML=e,n?t.content.firstChild.firstChild:t.content.firstChild},o=t?()=>Li((()=>document.importNode(r||(r=i()),!0))):()=>(r||(r=i())).cloneNode(!0);return o.cloneNode=o,o}function ho(e,t=window.document){const n=t[po]||(t[po]=new Set);for(let r=0,i=e.length;r<i;r++){const i=e[r];n.has(i)||(n.add(i),t.addEventListener(i,To))}}function go(e,t,n){So(e)||(null==n?e.removeAttribute(t):e.setAttribute(t,n))}function yo(e,t){So(e)||(null==t?e.removeAttribute("class"):e.className=t)}function vo(e,t,n,r){if(r)Array.isArray(n)?(e[`$$${t}`]=n[0],e[`$$${t}Data`]=n[1]):e[`$$${t}`]=n;else if(Array.isArray(n)){const r=n[0];e.addEventListener(t,n[0]=t=>r.call(e,n[1],t))}else e.addEventListener(t,n)}function bo(e,t,n){if(!t)return n?go(e,"style"):t;const r=e.style;if("string"==typeof t)return r.cssText=t;let i,o;for(o in"string"==typeof n&&(r.cssText=n=void 0),n||(n={}),t||(t={}),n)null==t[o]&&r.removeProperty(o),delete n[o];for(o in t)i=t[o],i!==n[o]&&(r.setProperty(o,i),n[o]=i);return n}function xo(e,t,n,r){if(void 0===n||r||(r=[]),"function"!=typeof t)return wo(e,t,r,n);Oi((r=>wo(e,t(),r,n)),r)}function So(e){return!!pi.context&&!pi.done&&(!e||e.isConnected)}function To(e){if(pi.registry&&pi.events&&pi.events.find((([t,n])=>n===e)))return;const t=`$$${e.type}`;let n=e.composedPath&&e.composedPath()[0]||e.target;for(e.target!==n&&Object.defineProperty(e,"target",{configurable:!0,value:n}),Object.defineProperty(e,"currentTarget",{configurable:!0,get:()=>n||document}),pi.registry&&!pi.done&&(pi.done=_$HY.done=!0);n;){const r=n[t];if(r&&!n.disabled){const i=n[`${t}Data`];if(void 0!==i?r.call(n,i,e):r.call(n,e),e.cancelBubble)return}n=n._$host||n.parentNode||n.host}}function wo(e,t,n,r,i){const o=So(e);if(o){!n&&(n=[...e.childNodes]);let t=[];for(let e=0;e<n.length;e++){const r=n[e];8===r.nodeType&&"!$"===r.data.slice(0,2)?r.remove():t.push(r)}n=t}for(;"function"==typeof n;)n=n();if(t===n)return n;const s=typeof t,a=void 0!==r;if(e=a&&n[0]&&n[0].parentNode||e,"string"===s||"number"===s){if(o)return n;if("number"===s&&(t=t.toString())===n)return n;if(a){let i=n[0];i&&3===i.nodeType?i.data!==t&&(i.data=t):i=document.createTextNode(t),n=Co(e,n,r,i)}else n=""!==n&&"string"==typeof n?e.firstChild.data=t:e.textContent=t}else if(null==t||"boolean"===s){if(o)return n;n=Co(e,n,r)}else{if("function"===s)return Oi((()=>{let i=t();for(;"function"==typeof i;)i=i();n=wo(e,i,n,r)})),()=>n;if(Array.isArray(t)){const s=[],c=n&&Array.isArray(n);if(ko(s,t,n,i))return Oi((()=>n=wo(e,s,n,r,!0))),()=>n;if(o){if(!s.length)return n;if(void 0===r)return n=[...e.childNodes];let t=s[0];if(t.parentNode!==e)return n;const i=[t];for(;(t=t.nextSibling)!==r;)i.push(t);return n=i}if(0===s.length){if(n=Co(e,n,r),a)return n}else c?0===n.length?Eo(e,s,r):function(e,t,n){let r=n.length,i=t.length,o=r,s=0,a=0,c=t[i-1].nextSibling,l=null;for(;s<i||a<o;)if(t[s]!==n[a]){for(;t[i-1]===n[o-1];)i--,o--;if(i===s){const t=o<r?a?n[a-1].nextSibling:n[o-a]:c;for(;a<o;)e.insertBefore(n[a++],t)}else if(o===a)for(;s<i;)l&&l.has(t[s])||t[s].remove(),s++;else if(t[s]===n[o-1]&&n[a]===t[i-1]){const r=t[--i].nextSibling;e.insertBefore(n[a++],t[s++].nextSibling),e.insertBefore(n[--o],r),t[i]=n[o]}else{if(!l){l=new Map;let e=a;for(;e<o;)l.set(n[e],e++)}const r=l.get(t[s]);if(null!=r)if(a<r&&r<o){let c,u=s,d=1;for(;++u<i&&u<o&&null!=(c=l.get(t[u]))&&c===r+d;)d++;if(d>r-a){const i=t[s];for(;a<r;)e.insertBefore(n[a++],i)}else e.replaceChild(n[a++],t[s++])}else s++;else t[s++].remove()}}else s++,a++}(e,n,s):(n&&Co(e),Eo(e,s));n=s}else if(t.nodeType){if(o&&t.parentNode)return n=a?[t]:t;if(Array.isArray(n)){if(a)return n=Co(e,n,r,t);Co(e,n,null,t)}else null!=n&&""!==n&&e.firstChild?e.replaceChild(t,e.firstChild):e.appendChild(t);n=t}}return n}function ko(e,t,n,r){let i=!1;for(let o=0,s=t.length;o<s;o++){let s,a=t[o],c=n&&n[e.length];if(null==a||!0===a||!1===a);else if("object"==(s=typeof a)&&a.nodeType)e.push(a);else if(Array.isArray(a))i=ko(e,a,c)||i;else if("function"===s)if(r){for(;"function"==typeof a;)a=a();i=ko(e,Array.isArray(a)?a:[a],Array.isArray(c)?c:[c])||i}else e.push(a),i=!0;else{const t=String(a);c&&3===c.nodeType&&c.data===t?e.push(c):e.push(document.createTextNode(t))}}return i}function Eo(e,t,n=null){for(let r=0,i=t.length;r<i;r++)e.insertBefore(t[r],n)}function Co(e,t,n,r){if(void 0===n)return e.textContent="";const i=r||document.createTextNode("");if(t.length){let r=!1;for(let o=t.length-1;o>=0;o--){const s=t[o];if(i!==s){const t=s.parentNode===e;r||o?t&&s.remove():t?e.replaceChild(i,s):e.insertBefore(i,n)}else r=!0}}else e.insertBefore(i,n);return[i]}Symbol();var No=n(58684),Ao=n.n(No),Io=n(51612),Do=n(16804),Po=n(50204),Mo=n(774);function Oo(e){return null!=globalThis.Buffer?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function Fo(e=0){return null!=globalThis.Buffer&&null!=globalThis.Buffer.allocUnsafe?Oo(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}function Ro(e,t){t||(t=e.reduce(((e,t)=>e+t.length),0));const n=Fo(t);let r=0;for(const i of e)n.set(i,r),r+=i.length;return Oo(n)}var Lo=function(e,t){if(e.length>=255)throw new TypeError("Alphabet too long");for(var n=new Uint8Array(256),r=0;r<n.length;r++)n[r]=255;for(var i=0;i<e.length;i++){var o=e.charAt(i),s=o.charCodeAt(0);if(255!==n[s])throw new TypeError(o+" is ambiguous");n[s]=i}var a=e.length,c=e.charAt(0),l=Math.log(a)/Math.log(256),u=Math.log(256)/Math.log(a);function d(e){if("string"!=typeof e)throw new TypeError("Expected String");if(0===e.length)return new Uint8Array;var t=0;if(" "!==e[t]){for(var r=0,i=0;e[t]===c;)r++,t++;for(var o=(e.length-t)*l+1>>>0,s=new Uint8Array(o);e[t];){var u=n[e.charCodeAt(t)];if(255===u)return;for(var d=0,_=o-1;(0!==u||d<i)&&-1!==_;_--,d++)u+=a*s[_]>>>0,s[_]=u%256>>>0,u=u/256>>>0;if(0!==u)throw new Error("Non-zero carry");i=d,t++}if(" "!==e[t]){for(var p=o-i;p!==o&&0===s[p];)p++;for(var f=new Uint8Array(r+(o-p)),m=r;p!==o;)f[m++]=s[p++];return f}}}return{encode:function(t){if(t instanceof Uint8Array||(ArrayBuffer.isView(t)?t=new Uint8Array(t.buffer,t.byteOffset,t.byteLength):Array.isArray(t)&&(t=Uint8Array.from(t))),!(t instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(0===t.length)return"";for(var n=0,r=0,i=0,o=t.length;i!==o&&0===t[i];)i++,n++;for(var s=(o-i)*u+1>>>0,l=new Uint8Array(s);i!==o;){for(var d=t[i],_=0,p=s-1;(0!==d||_<r)&&-1!==p;p--,_++)d+=256*l[p]>>>0,l[p]=d%a>>>0,d=d/a>>>0;if(0!==d)throw new Error("Non-zero carry");r=_,i++}for(var f=s-r;f!==s&&0===l[f];)f++;for(var m=c.repeat(n);f<s;++f)m+=e.charAt(l[f]);return m},decodeUnsafe:d,decode:function(e){var n=d(e);if(n)return n;throw new Error(`Non-${t} character`)}}};const jo=Lo,zo=(new Uint8Array(0),e=>{if(e instanceof Uint8Array&&"Uint8Array"===e.constructor.name)return e;if(e instanceof ArrayBuffer)return new Uint8Array(e);if(ArrayBuffer.isView(e))return new Uint8Array(e.buffer,e.byteOffset,e.byteLength);throw new Error("Unknown type, must be binary type")});class Uo{constructor(e,t,n){this.name=e,this.prefix=t,this.baseEncode=n}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}}class Bo{constructor(e,t,n){if(this.name=e,this.prefix=t,void 0===t.codePointAt(0))throw new Error("Invalid prefix character");this.prefixCodePoint=t.codePointAt(0),this.baseDecode=n}decode(e){if("string"==typeof e){if(e.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(e)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(e.slice(this.prefix.length))}throw Error("Can only multibase decode strings")}or(e){return Vo(this,e)}}class qo{constructor(e){this.decoders=e}or(e){return Vo(this,e)}decode(e){const t=e[0],n=this.decoders[t];if(n)return n.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}}const Vo=(e,t)=>new qo({...e.decoders||{[e.prefix]:e},...t.decoders||{[t.prefix]:t}});class Ko{constructor(e,t,n,r){this.name=e,this.prefix=t,this.baseEncode=n,this.baseDecode=r,this.encoder=new Uo(e,t,n),this.decoder=new Bo(e,t,r)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}}const Jo=({name:e,prefix:t,encode:n,decode:r})=>new Ko(e,t,n,r),Wo=({prefix:e,name:t,alphabet:n})=>{const{encode:r,decode:i}=jo(n,t);return Jo({prefix:e,name:t,encode:r,decode:e=>zo(i(e))})},Ho=({name:e,prefix:t,bitsPerChar:n,alphabet:r})=>Jo({prefix:t,name:e,encode:e=>((e,t,n)=>{const r="="===t[t.length-1],i=(1<<n)-1;let o="",s=0,a=0;for(let c=0;c<e.length;++c)for(a=a<<8|e[c],s+=8;s>n;)s-=n,o+=t[i&a>>s];if(s&&(o+=t[i&a<<n-s]),r)for(;o.length*n&7;)o+="=";return o})(e,r,n),decode:t=>((e,t,n,r)=>{const i={};for(let u=0;u<t.length;++u)i[t[u]]=u;let o=e.length;for(;"="===e[o-1];)--o;const s=new Uint8Array(o*n/8|0);let a=0,c=0,l=0;for(let u=0;u<o;++u){const t=i[e[u]];if(void 0===t)throw new SyntaxError(`Non-${r} character`);c=c<<n|t,a+=n,a>=8&&(a-=8,s[l++]=255&c>>a)}if(a>=n||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return s})(t,r,n,e)}),Go=Jo({prefix:"\0",name:"identity",encode:e=>(e=>(new TextDecoder).decode(e))(e),decode:e=>(e=>(new TextEncoder).encode(e))(e)}),Qo=Ho({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1}),Yo=Ho({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3}),Zo=Wo({prefix:"9",name:"base10",alphabet:"0123456789"}),Xo=Ho({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),$o=Ho({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4}),es=Ho({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),ts=Ho({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),ns=Ho({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),rs=Ho({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),is=Ho({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),os=Ho({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),ss=Ho({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),as=Ho({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),cs=Ho({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5}),ls=Wo({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),us=Wo({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"}),ds=Wo({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),_s=Wo({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"}),ps=Ho({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),fs=Ho({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),ms=Ho({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),hs=Ho({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6}),gs=Array.from("\ud83d\ude80\ud83e\ude90\u2604\ud83d\udef0\ud83c\udf0c\ud83c\udf11\ud83c\udf12\ud83c\udf13\ud83c\udf14\ud83c\udf15\ud83c\udf16\ud83c\udf17\ud83c\udf18\ud83c\udf0d\ud83c\udf0f\ud83c\udf0e\ud83d\udc09\u2600\ud83d\udcbb\ud83d\udda5\ud83d\udcbe\ud83d\udcbf\ud83d\ude02\u2764\ud83d\ude0d\ud83e\udd23\ud83d\ude0a\ud83d\ude4f\ud83d\udc95\ud83d\ude2d\ud83d\ude18\ud83d\udc4d\ud83d\ude05\ud83d\udc4f\ud83d\ude01\ud83d\udd25\ud83e\udd70\ud83d\udc94\ud83d\udc96\ud83d\udc99\ud83d\ude22\ud83e\udd14\ud83d\ude06\ud83d\ude44\ud83d\udcaa\ud83d\ude09\u263a\ud83d\udc4c\ud83e\udd17\ud83d\udc9c\ud83d\ude14\ud83d\ude0e\ud83d\ude07\ud83c\udf39\ud83e\udd26\ud83c\udf89\ud83d\udc9e\u270c\u2728\ud83e\udd37\ud83d\ude31\ud83d\ude0c\ud83c\udf38\ud83d\ude4c\ud83d\ude0b\ud83d\udc97\ud83d\udc9a\ud83d\ude0f\ud83d\udc9b\ud83d\ude42\ud83d\udc93\ud83e\udd29\ud83d\ude04\ud83d\ude00\ud83d\udda4\ud83d\ude03\ud83d\udcaf\ud83d\ude48\ud83d\udc47\ud83c\udfb6\ud83d\ude12\ud83e\udd2d\u2763\ud83d\ude1c\ud83d\udc8b\ud83d\udc40\ud83d\ude2a\ud83d\ude11\ud83d\udca5\ud83d\ude4b\ud83d\ude1e\ud83d\ude29\ud83d\ude21\ud83e\udd2a\ud83d\udc4a\ud83e\udd73\ud83d\ude25\ud83e\udd24\ud83d\udc49\ud83d\udc83\ud83d\ude33\u270b\ud83d\ude1a\ud83d\ude1d\ud83d\ude34\ud83c\udf1f\ud83d\ude2c\ud83d\ude43\ud83c\udf40\ud83c\udf37\ud83d\ude3b\ud83d\ude13\u2b50\u2705\ud83e\udd7a\ud83c\udf08\ud83d\ude08\ud83e\udd18\ud83d\udca6\u2714\ud83d\ude23\ud83c\udfc3\ud83d\udc90\u2639\ud83c\udf8a\ud83d\udc98\ud83d\ude20\u261d\ud83d\ude15\ud83c\udf3a\ud83c\udf82\ud83c\udf3b\ud83d\ude10\ud83d\udd95\ud83d\udc9d\ud83d\ude4a\ud83d\ude39\ud83d\udde3\ud83d\udcab\ud83d\udc80\ud83d\udc51\ud83c\udfb5\ud83e\udd1e\ud83d\ude1b\ud83d\udd34\ud83d\ude24\ud83c\udf3c\ud83d\ude2b\u26bd\ud83e\udd19\u2615\ud83c\udfc6\ud83e\udd2b\ud83d\udc48\ud83d\ude2e\ud83d\ude46\ud83c\udf7b\ud83c\udf43\ud83d\udc36\ud83d\udc81\ud83d\ude32\ud83c\udf3f\ud83e\udde1\ud83c\udf81\u26a1\ud83c\udf1e\ud83c\udf88\u274c\u270a\ud83d\udc4b\ud83d\ude30\ud83e\udd28\ud83d\ude36\ud83e\udd1d\ud83d\udeb6\ud83d\udcb0\ud83c\udf53\ud83d\udca2\ud83e\udd1f\ud83d\ude41\ud83d\udea8\ud83d\udca8\ud83e\udd2c\u2708\ud83c\udf80\ud83c\udf7a\ud83e\udd13\ud83d\ude19\ud83d\udc9f\ud83c\udf31\ud83d\ude16\ud83d\udc76\ud83e\udd74\u25b6\u27a1\u2753\ud83d\udc8e\ud83d\udcb8\u2b07\ud83d\ude28\ud83c\udf1a\ud83e\udd8b\ud83d\ude37\ud83d\udd7a\u26a0\ud83d\ude45\ud83d\ude1f\ud83d\ude35\ud83d\udc4e\ud83e\udd32\ud83e\udd20\ud83e\udd27\ud83d\udccc\ud83d\udd35\ud83d\udc85\ud83e\uddd0\ud83d\udc3e\ud83c\udf52\ud83d\ude17\ud83e\udd11\ud83c\udf0a\ud83e\udd2f\ud83d\udc37\u260e\ud83d\udca7\ud83d\ude2f\ud83d\udc86\ud83d\udc46\ud83c\udfa4\ud83d\ude47\ud83c\udf51\u2744\ud83c\udf34\ud83d\udca3\ud83d\udc38\ud83d\udc8c\ud83d\udccd\ud83e\udd40\ud83e\udd22\ud83d\udc45\ud83d\udca1\ud83d\udca9\ud83d\udc50\ud83d\udcf8\ud83d\udc7b\ud83e\udd10\ud83e\udd2e\ud83c\udfbc\ud83e\udd75\ud83d\udea9\ud83c\udf4e\ud83c\udf4a\ud83d\udc7c\ud83d\udc8d\ud83d\udce3\ud83e\udd42"),ys=gs.reduce(((e,t,n)=>(e[n]=t,e)),[]),vs=gs.reduce(((e,t,n)=>(e[t.codePointAt(0)]=n,e)),[]);const bs=Jo({prefix:"\ud83d\ude80",name:"base256emoji",encode:function(e){return e.reduce(((e,t)=>e+=ys[t]),"")},decode:function(e){const t=[];for(const n of e){const e=vs[n.codePointAt(0)];if(void 0===e)throw new Error(`Non-base256emoji character: ${n}`);t.push(e)}return new Uint8Array(t)}});var xs=function e(t,n,r){n=n||[];var i=r=r||0;for(;t>=ws;)n[r++]=255&t|Ss,t/=128;for(;t&Ts;)n[r++]=255&t|Ss,t>>>=7;return n[r]=0|t,e.bytes=r-i+1,n},Ss=128,Ts=-128,ws=Math.pow(2,31);var ks=function e(t,n){var r,i=0,o=0,s=n=n||0,a=t.length;do{if(s>=a)throw e.bytes=0,new RangeError("Could not decode varint");r=t[s++],i+=o<28?(r&Cs)<<o:(r&Cs)*Math.pow(2,o),o+=7}while(r>=Es);return e.bytes=s-n,i},Es=128,Cs=127;var Ns=Math.pow(2,7),As=Math.pow(2,14),Is=Math.pow(2,21),Ds=Math.pow(2,28),Ps=Math.pow(2,35),Ms=Math.pow(2,42),Os=Math.pow(2,49),Fs=Math.pow(2,56),Rs=Math.pow(2,63);const Ls={encode:xs,decode:ks,encodingLength:function(e){return e<Ns?1:e<As?2:e<Is?3:e<Ds?4:e<Ps?5:e<Ms?6:e<Os?7:e<Fs?8:e<Rs?9:10}},js=(e,t,n=0)=>(Ls.encode(e,t,n),t),zs=e=>Ls.encodingLength(e),Us=(e,t)=>{const n=t.byteLength,r=zs(e),i=r+zs(n),o=new Uint8Array(i+n);return js(e,o,0),js(n,o,r),o.set(t,i),new Bs(e,n,t,o)};class Bs{constructor(e,t,n,r){this.code=e,this.size=t,this.digest=n,this.bytes=r}}const qs=({name:e,code:t,encode:n})=>new Vs(e,t,n);class Vs{constructor(e,t,n){this.name=e,this.code=t,this.encode=n}digest(e){if(e instanceof Uint8Array){const t=this.encode(e);return t instanceof Uint8Array?Us(this.code,t):t.then((e=>Us(this.code,e)))}throw Error("Unknown type, must be binary type")}}const Ks=e=>async t=>new Uint8Array(await crypto.subtle.digest(e,t)),Js=qs({name:"sha2-256",code:18,encode:Ks("SHA-256")}),Ws=qs({name:"sha2-512",code:19,encode:Ks("SHA-512")}),Hs=zo,Gs={code:0,name:"identity",encode:Hs,digest:e=>Us(0,Hs(e))},Qs="raw",Ys=85,Zs=e=>zo(e),Xs=e=>zo(e),$s=new TextEncoder,ea=new TextDecoder,ta="json",na=512,ra=e=>$s.encode(JSON.stringify(e)),ia=e=>JSON.parse(ea.decode(e));n(96763);Symbol.toStringTag,Symbol.for("nodejs.util.inspect.custom");Symbol.for("@ipld/js-cid/CID");const oa={...i,...o,...s,...a,...c,...l,...u,...d,..._,...p};function sa(e,t,n,r){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:n},decoder:{decode:r}}}const aa=sa("utf8","u",(e=>"u"+new TextDecoder("utf8").decode(e)),(e=>(new TextEncoder).encode(e.substring(1)))),ca=sa("ascii","a",(e=>{let t="a";for(let n=0;n<e.length;n++)t+=String.fromCharCode(e[n]);return t}),(e=>{const t=Fo((e=e.substring(1)).length);for(let n=0;n<e.length;n++)t[n]=e.charCodeAt(n);return t})),la={utf8:aa,"utf-8":aa,hex:oa.base16,latin1:ca,ascii:ca,binary:ca,...oa};function ua(e,t="utf8"){const n=la[t];if(!n)throw new Error(`Unsupported encoding "${t}"`);return"utf8"!==t&&"utf-8"!==t||null==globalThis.Buffer||null==globalThis.Buffer.from?n.decoder.decode(`${n.prefix}${e}`):Oo(globalThis.Buffer.from(e,"utf-8"))}function da(e,t="utf8"){const n=la[t];if(!n)throw new Error(`Unsupported encoding "${t}"`);return"utf8"!==t&&"utf-8"!==t||null==globalThis.Buffer||null==globalThis.Buffer.from?n.encoder.encode(e).substring(1):globalThis.Buffer.from(e.buffer,e.byteOffset,e.byteLength).toString("utf8")}var _a=n(65606),pa=function(e,t,n){if(n||2===arguments.length)for(var r,i=0,o=t.length;i<o;i++)!r&&i in t||(r||(r=Array.prototype.slice.call(t,0,i)),r[i]=t[i]);return e.concat(r||Array.prototype.slice.call(t))},fa=function(e,t,n){this.name=e,this.version=t,this.os=n,this.type="browser"},ma=function(e){this.version=e,this.type="node",this.name="node",this.os=_a.platform},ha=function(e,t,n,r){this.name=e,this.version=t,this.os=n,this.bot=r,this.type="bot-device"},ga=function(){this.type="bot",this.bot=!0,this.name="bot",this.version=null,this.os=null},ya=function(){this.type="react-native",this.name="react-native",this.version=null,this.os=null},va=/(nuhk|curl|Googlebot|Yammybot|Openbot|Slurp|MSNBot|Ask\ Jeeves\/Teoma|ia_archiver)/,ba=3,xa=[["aol",/AOLShield\/([0-9\._]+)/],["edge",/Edge\/([0-9\._]+)/],["edge-ios",/EdgiOS\/([0-9\._]+)/],["yandexbrowser",/YaBrowser\/([0-9\._]+)/],["kakaotalk",/KAKAOTALK\s([0-9\.]+)/],["samsung",/SamsungBrowser\/([0-9\.]+)/],["silk",/\bSilk\/([0-9._-]+)\b/],["miui",/MiuiBrowser\/([0-9\.]+)$/],["beaker",/BeakerBrowser\/([0-9\.]+)/],["edge-chromium",/EdgA?\/([0-9\.]+)/],["chromium-webview",/(?!Chrom.*OPR)wv\).*Chrom(?:e|ium)\/([0-9\.]+)(:?\s|$)/],["chrome",/(?!Chrom.*OPR)Chrom(?:e|ium)\/([0-9\.]+)(:?\s|$)/],["phantomjs",/PhantomJS\/([0-9\.]+)(:?\s|$)/],["crios",/CriOS\/([0-9\.]+)(:?\s|$)/],["firefox",/Firefox\/([0-9\.]+)(?:\s|$)/],["fxios",/FxiOS\/([0-9\.]+)/],["opera-mini",/Opera Mini.*Version\/([0-9\.]+)/],["opera",/Opera\/([0-9\.]+)(?:\s|$)/],["opera",/OPR\/([0-9\.]+)(:?\s|$)/],["pie",/^Microsoft Pocket Internet Explorer\/(\d+\.\d+)$/],["pie",/^Mozilla\/\d\.\d+\s\(compatible;\s(?:MSP?IE|MSInternet Explorer) (\d+\.\d+);.*Windows CE.*\)$/],["netfront",/^Mozilla\/\d\.\d+.*NetFront\/(\d.\d)/],["ie",/Trident\/7\.0.*rv\:([0-9\.]+).*\).*Gecko$/],["ie",/MSIE\s([0-9\.]+);.*Trident\/[4-7].0/],["ie",/MSIE\s(7\.0)/],["bb10",/BB10;\sTouch.*Version\/([0-9\.]+)/],["android",/Android\s([0-9\.]+)/],["ios",/Version\/([0-9\._]+).*Mobile.*Safari.*/],["safari",/Version\/([0-9\._]+).*Safari/],["facebook",/FB[AS]V\/([0-9\.]+)/],["instagram",/Instagram\s([0-9\.]+)/],["ios-webview",/AppleWebKit\/([0-9\.]+).*Mobile/],["ios-webview",/AppleWebKit\/([0-9\.]+).*Gecko\)$/],["curl",/^curl\/([0-9\.]+)$/],["searchbot",/alexa|bot|crawl(er|ing)|facebookexternalhit|feedburner|google web preview|nagios|postrank|pingdom|slurp|spider|yahoo!|yandex/]],Sa=[["iOS",/iP(hone|od|ad)/],["Android OS",/Android/],["BlackBerry OS",/BlackBerry|BB10/],["Windows Mobile",/IEMobile/],["Amazon OS",/Kindle/],["Windows 3.11",/Win16/],["Windows 95",/(Windows 95)|(Win95)|(Windows_95)/],["Windows 98",/(Windows 98)|(Win98)/],["Windows 2000",/(Windows NT 5.0)|(Windows 2000)/],["Windows XP",/(Windows NT 5.1)|(Windows XP)/],["Windows Server 2003",/(Windows NT 5.2)/],["Windows Vista",/(Windows NT 6.0)/],["Windows 7",/(Windows NT 6.1)/],["Windows 8",/(Windows NT 6.2)/],["Windows 8.1",/(Windows NT 6.3)/],["Windows 10",/(Windows NT 10.0)/],["Windows ME",/Windows ME/],["Windows CE",/Windows CE|WinCE|Microsoft Pocket Internet Explorer/],["Open BSD",/OpenBSD/],["Sun OS",/SunOS/],["Chrome OS",/CrOS/],["Linux",/(Linux)|(X11)/],["Mac OS",/(Mac_PowerPC)|(Macintosh)/],["QNX",/QNX/],["BeOS",/BeOS/],["OS/2",/OS\/2/]];function Ta(e){return e?ka(e):"undefined"==typeof document&&"undefined"!=typeof navigator&&"ReactNative"===navigator.product?new ya:"undefined"!=typeof navigator?ka(navigator.userAgent):void 0!==_a&&_a.version?new ma(_a.version.slice(1)):null}function wa(e){return""!==e&&xa.reduce((function(t,n){var r=n[0],i=n[1];if(t)return t;var o=i.exec(e);return!!o&&[r,o]}),!1)}function ka(e){var t=wa(e);if(!t)return null;var n=t[0],r=t[1];if("searchbot"===n)return new ga;var i=r[1]&&r[1].split(".").join("_").split("_").slice(0,3);i?i.length<ba&&(i=pa(pa([],i,!0),function(e){for(var t=[],n=0;n<e;n++)t.push("0");return t}(ba-i.length),!0)):i=[];var o=i.join("."),s=function(e){for(var t=0,n=Sa.length;t<n;t++){var r=Sa[t],i=r[0];if(r[1].exec(e))return i}return null}(e),a=va.exec(e);return a&&a[1]?new ha(n,o,s,a[1]):new fa(n,o,s)}var Ea=n(88900),Ca=n(38196),Na=n(42063),Aa=n(86663);const Ia={waku:{publish:"waku_publish",batchPublish:"waku_batchPublish",subscribe:"waku_subscribe",batchSubscribe:"waku_batchSubscribe",subscription:"waku_subscription",unsubscribe:"waku_unsubscribe",batchUnsubscribe:"waku_batchUnsubscribe",batchFetchMessages:"waku_batchFetchMessages"},irn:{publish:"irn_publish",batchPublish:"irn_batchPublish",subscribe:"irn_subscribe",batchSubscribe:"irn_batchSubscribe",subscription:"irn_subscription",unsubscribe:"irn_unsubscribe",batchUnsubscribe:"irn_batchUnsubscribe",batchFetchMessages:"irn_batchFetchMessages"},iridium:{publish:"iridium_publish",batchPublish:"iridium_batchPublish",subscribe:"iridium_subscribe",batchSubscribe:"iridium_batchSubscribe",subscription:"iridium_subscription",unsubscribe:"iridium_unsubscribe",batchUnsubscribe:"iridium_batchUnsubscribe",batchFetchMessages:"iridium_batchFetchMessages"}};var Da=n(65606),Pa=n(96763);function Ma(e,t){return e.includes(":")?[e]:t.chains||[]}const Oa="base10",Fa="base16",Ra="base64pad",La="utf8",ja=0,za=1,Ua=0,Ba=1,qa=12,Va=32;function Ka(){return da((0,w.randomBytes)(Va),Fa)}function Ja(e){return da((0,Po.tW)(ua(e,La)),Fa)}function Wa(e){return Number(da(e,Oa))}function Ha(e){const t=function(e){return ua(`${e}`,Oa)}(typeof e.type<"u"?e.type:ja);if(Wa(t)===za&&typeof e.senderPublicKey>"u")throw new Error("Missing sender public key for type 1 envelope");const n=typeof e.senderPublicKey<"u"?ua(e.senderPublicKey,Fa):void 0,r=typeof e.iv<"u"?ua(e.iv,Fa):(0,w.randomBytes)(qa);return function(e){if(Wa(e.type)===za){if(typeof e.senderPublicKey>"u")throw new Error("Missing sender public key for type 1 envelope");return da(Ro([e.type,e.senderPublicKey,e.iv,e.sealed]),Ra)}return da(Ro([e.type,e.iv,e.sealed]),Ra)}({type:t,sealed:new Io.g6(ua(e.symKey,Fa)).seal(r,ua(e.message,La)),iv:r,senderPublicKey:n})}function Ga(e){const t=ua(e,Ra),n=t.slice(Ua,Ba),r=Ba;if(Wa(n)===za){const e=r+Va,i=e+qa,o=t.slice(r,e),s=t.slice(e,i);return{type:n,sealed:t.slice(i),iv:s,senderPublicKey:o}}const i=r+qa,o=t.slice(r,i);return{type:n,sealed:t.slice(i),iv:o}}function Qa(e){const t=e?.type||ja;if(t===za){if(typeof e?.senderPublicKey>"u")throw new Error("missing sender public key");if(typeof e?.receiverPublicKey>"u")throw new Error("missing receiver public key")}return{type:t,senderPublicKey:e?.senderPublicKey,receiverPublicKey:e?.receiverPublicKey}}function Ya(e){return e.type===za&&"string"==typeof e.senderPublicKey&&"string"==typeof e.receiverPublicKey}var Za=Object.defineProperty,Xa=Object.getOwnPropertySymbols,$a=Object.prototype.hasOwnProperty,ec=Object.prototype.propertyIsEnumerable,tc=(e,t,n)=>t in e?Za(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,nc=(e,t)=>{for(var n in t||(t={}))$a.call(t,n)&&tc(e,n,t[n]);if(Xa)for(var n of Xa(t))ec.call(t,n)&&tc(e,n,t[n]);return e};const rc="ReactNative",ic={reactNative:"react-native",node:"node",browser:"browser",unknown:"unknown"},oc="js";function sc(){return typeof Da<"u"&&typeof Da.versions<"u"&&typeof Da.versions.node<"u"}function ac(){return!(0,Ca.getDocument)()&&!!(0,Ca.getNavigator)()&&navigator.product===rc}function cc(){return!sc()&&!!(0,Ca.getNavigator)()&&!!(0,Ca.getDocument)()}function lc(){return ac()?ic.reactNative:sc()?ic.node:cc()?ic.browser:ic.unknown}function uc(e,t,r){const i=function(){if(lc()===ic.reactNative&&typeof n.g<"u"&&typeof(null==n.g?void 0:n.g.Platform)<"u"){const{OS:e,Version:t}=n.g.Platform;return[e,t].join("-")}const e=Ta();if(null===e)return"unknown";const t=e.os?e.os.replace(" ","").toLowerCase():"unknown";return"browser"===e.type?[t,e.name,e.version].join("-"):[t,e.version].join("-")}(),o=function(){var e;const t=lc();return t===ic.browser?[t,(null==(e=(0,Ca.getLocation)())?void 0:e.host)||"unknown"].join(":"):t}();return[[e,t].join("-"),[oc,r].join("-"),i,o].join("/")}function dc({protocol:e,version:t,relayUrl:n,sdkVersion:r,auth:i,projectId:o,useOnCloseEvent:s,bundleId:a}){const c=n.split("?"),l={auth:i,ua:uc(e,t,r),projectId:o,useOnCloseEvent:s||void 0,origin:a||void 0},u=function(e,t){let n=Aa.parse(e);return n=nc(nc({},n),t),Aa.stringify(n)}(c[1]||"",l);return c[0]+"?"+u}function _c(e,t){return e.filter((e=>t.includes(e))).length===e.length}function pc(e){return Object.fromEntries(e.entries())}function fc(e){return new Map(Object.entries(e))}function mc(e=Ea.FIVE_MINUTES,t){const n=(0,Ea.toMiliseconds)(e||Ea.FIVE_MINUTES);let r,i,o;return{resolve:e=>{o&&r&&(clearTimeout(o),r(e))},reject:e=>{o&&i&&(clearTimeout(o),i(e))},done:()=>new Promise(((e,s)=>{o=setTimeout((()=>{s(new Error(t))}),n),r=e,i=s}))}}function hc(e,t,n){return new Promise((async(r,i)=>{const o=setTimeout((()=>i(new Error(n))),t);try{r(await e)}catch(rp){i(rp)}clearTimeout(o)}))}function gc(e,t){if("string"==typeof t&&t.startsWith(`${e}:`))return t;if("topic"===e.toLowerCase()){if("string"!=typeof t)throw new Error('Value must be "string" for expirer target type: topic');return`topic:${t}`}if("id"===e.toLowerCase()){if("number"!=typeof t)throw new Error('Value must be "number" for expirer target type: id');return`id:${t}`}throw new Error(`Unknown expirer target type: ${e}`)}function yc(e){const[t,n]=e.split(":"),r={id:void 0,topic:void 0};if("topic"===t&&"string"==typeof n)r.topic=n;else{if("id"!==t||!Number.isInteger(Number(n)))throw new Error(`Invalid target, expected id:number or topic:string, got ${t}:${n}`);r.id=Number(n)}return r}function vc(e,t){return(0,Ea.fromMiliseconds)((t||Date.now())+(0,Ea.toMiliseconds)(e))}function bc(e){return Date.now()>=(0,Ea.toMiliseconds)(e)}function xc(e,t){return`${e}${t?`:${t}`:""}`}function Sc(e){return e?.relay||{protocol:"irn"}}function Tc(e){const t=Ia[e];if(typeof t>"u")throw new Error(`Relay Protocol not supported: ${e}`);return t}var wc=Object.defineProperty,kc=Object.defineProperties,Ec=Object.getOwnPropertyDescriptors,Cc=Object.getOwnPropertySymbols,Nc=Object.prototype.hasOwnProperty,Ac=Object.prototype.propertyIsEnumerable,Ic=(e,t,n)=>t in e?wc(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;function Dc(e,t="-"){const n={},r="relay"+t;return Object.keys(e).forEach((t=>{if(t.startsWith(r)){const i=t.replace(r,""),o=e[t];n[i]=o}})),n}function Pc(e){const t=(e=(e=e.includes("wc://")?e.replace("wc://",""):e).includes("wc:")?e.replace("wc:",""):e).indexOf(":"),n=-1!==e.indexOf("?")?e.indexOf("?"):void 0,r=e.substring(0,t),i=e.substring(t+1,n).split("@"),o=typeof n<"u"?e.substring(n):"",s=Aa.parse(o);return{protocol:r,topic:Mc(i[0]),version:parseInt(i[1],10),symKey:s.symKey,relay:Dc(s),expiryTimestamp:s.expiryTimestamp?parseInt(s.expiryTimestamp,10):void 0}}function Mc(e){return e.startsWith("//")?e.substring(2):e}function Oc(e){return`${e.protocol}:${e.topic}@${e.version}?`+Aa.stringify(((e,t)=>kc(e,Ec(t)))(((e,t)=>{for(var n in t||(t={}))Nc.call(t,n)&&Ic(e,n,t[n]);if(Cc)for(var n of Cc(t))Ac.call(t,n)&&Ic(e,n,t[n]);return e})({symKey:e.symKey},function(e,t="-"){const n={};return Object.keys(e).forEach((r=>{const i="relay"+t+r;e[r]&&(n[i]=e[r])})),n}(e.relay)),{expiryTimestamp:e.expiryTimestamp}))}Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;function Fc(e){const t=[];return e.forEach((e=>{const[n,r]=e.split(":");t.push(`${n}:${r}`)})),t}const Rc={INVALID_METHOD:{message:"Invalid method.",code:1001},INVALID_EVENT:{message:"Invalid event.",code:1002},INVALID_UPDATE_REQUEST:{message:"Invalid update request.",code:1003},INVALID_EXTEND_REQUEST:{message:"Invalid extend request.",code:1004},INVALID_SESSION_SETTLE_REQUEST:{message:"Invalid session settle request.",code:1005},UNAUTHORIZED_METHOD:{message:"Unauthorized method.",code:3001},UNAUTHORIZED_EVENT:{message:"Unauthorized event.",code:3002},UNAUTHORIZED_UPDATE_REQUEST:{message:"Unauthorized update request.",code:3003},UNAUTHORIZED_EXTEND_REQUEST:{message:"Unauthorized extend request.",code:3004},USER_REJECTED:{message:"User rejected.",code:5e3},USER_REJECTED_CHAINS:{message:"User rejected chains.",code:5001},USER_REJECTED_METHODS:{message:"User rejected methods.",code:5002},USER_REJECTED_EVENTS:{message:"User rejected events.",code:5003},UNSUPPORTED_CHAINS:{message:"Unsupported chains.",code:5100},UNSUPPORTED_METHODS:{message:"Unsupported methods.",code:5101},UNSUPPORTED_EVENTS:{message:"Unsupported events.",code:5102},UNSUPPORTED_ACCOUNTS:{message:"Unsupported accounts.",code:5103},UNSUPPORTED_NAMESPACE_KEY:{message:"Unsupported namespace key.",code:5104},USER_DISCONNECTED:{message:"User disconnected.",code:6e3},SESSION_SETTLEMENT_FAILED:{message:"Session settlement failed.",code:7e3},WC_METHOD_UNSUPPORTED:{message:"Unsupported wc_ method.",code:10001}},Lc={NOT_INITIALIZED:{message:"Not initialized.",code:1},NO_MATCHING_KEY:{message:"No matching key.",code:2},RESTORE_WILL_OVERRIDE:{message:"Restore will override.",code:3},RESUBSCRIBED:{message:"Resubscribed.",code:4},MISSING_OR_INVALID:{message:"Missing or invalid.",code:5},EXPIRED:{message:"Expired.",code:6},UNKNOWN_TYPE:{message:"Unknown type.",code:7},MISMATCHED_TOPIC:{message:"Mismatched topic.",code:8},NON_CONFORMING_NAMESPACES:{message:"Non conforming namespaces.",code:9}};function jc(e,t){const{message:n,code:r}=Lc[e];return{message:t?`${n} ${t}`:n,code:r}}function zc(e,t){const{message:n,code:r}=Rc[e];return{message:t?`${n} ${t}`:n,code:r}}function Uc(e,t){return!!Array.isArray(e)&&(!(typeof t<"u"&&e.length)||e.every(t))}function Bc(e){return Object.getPrototypeOf(e)===Object.prototype&&Object.keys(e).length}function qc(e){return typeof e>"u"}function Vc(e,t){return!(!t||!qc(e))||"string"==typeof e&&!!e.trim().length}function Kc(e,t){return!(!t||!qc(e))||"number"==typeof e&&!isNaN(e)}function Jc(e){return!(!Vc(e,!1)||!e.includes(":"))&&2===e.split(":").length}function Wc(e){let t=!0;return Uc(e)?e.length&&(t=e.every((e=>Vc(e,!1)))):t=!1,t}function Hc(e,t,n){let r=null;return Object.entries(e).forEach((([e,i])=>{if(r)return;const o=function(e,t,n){let r=null;return Uc(t)&&t.length?t.forEach((e=>{r||Jc(e)||(r=zc("UNSUPPORTED_CHAINS",`${n}, chain ${e} should be a string and conform to "namespace:chainId" format`))})):Jc(e)||(r=zc("UNSUPPORTED_CHAINS",`${n}, chains must be defined as "namespace:chainId" e.g. "eip155:1": {...} in the namespace key OR as an array of CAIP-2 chainIds e.g. eip155: { chains: ["eip155:1", "eip155:5"] }`)),r}(e,Ma(e,i),`${t} ${n}`);o&&(r=o)})),r}function Gc(e,t){let n=null;return Uc(e)?e.forEach((e=>{n||function(e){if(Vc(e,!1)&&e.includes(":")){const t=e.split(":");if(3===t.length){const e=t[0]+":"+t[1];return!!t[2]&&Jc(e)}}return!1}(e)||(n=zc("UNSUPPORTED_ACCOUNTS",`${t}, account ${e} should be a string and conform to "namespace:chainId:address" format`))})):n=zc("UNSUPPORTED_ACCOUNTS",`${t}, accounts should be an array of strings conforming to "namespace:chainId:address" format`),n}function Qc(e,t){let n=null;return Object.values(e).forEach((e=>{if(n)return;const r=function(e,t){let n=null;return Wc(e?.methods)?Wc(e?.events)||(n=zc("UNSUPPORTED_EVENTS",`${t}, events should be an array of strings or empty array for no events`)):n=zc("UNSUPPORTED_METHODS",`${t}, methods should be an array of strings or empty array for no methods`),n}(e,`${t}, namespace`);r&&(n=r)})),n}function Yc(e,t){let n=null;if(e&&Bc(e)){const r=Qc(e,t);r&&(n=r);const i=function(e,t){let n=null;return Object.values(e).forEach((e=>{if(n)return;const r=Gc(e?.accounts,`${t} namespace`);r&&(n=r)})),n}(e,t);i&&(n=i)}else n=jc("MISSING_OR_INVALID",`${t}, namespaces should be an object with data`);return n}function Zc(e){return Vc(e.protocol,!0)}function Xc(e){return typeof e<"u"&&null!==typeof e}function $c(e,t){return!(!Jc(t)||!function(e){const t=[];return Object.values(e).forEach((e=>{t.push(...Fc(e.accounts))})),t}(e).includes(t))}function el(e,t,n){return!!Vc(n,!1)&&function(e,t){const n=[];return Object.values(e).forEach((e=>{Fc(e.accounts).includes(t)&&n.push(...e.methods)})),n}(e,t).includes(n)}function tl(e,t,n){return!!Vc(n,!1)&&function(e,t){const n=[];return Object.values(e).forEach((e=>{Fc(e.accounts).includes(t)&&n.push(...e.events)})),n}(e,t).includes(n)}function nl(e,t,n){let r=null;const i=function(e){const t={};return Object.keys(e).forEach((n=>{var r;n.includes(":")?t[n]=e[n]:null==(r=e[n].chains)||r.forEach((r=>{t[r]={methods:e[n].methods,events:e[n].events}}))})),t}(e),o=function(e){const t={};return Object.keys(e).forEach((n=>{if(n.includes(":"))t[n]=e[n];else{const r=Fc(e[n].accounts);r?.forEach((r=>{t[r]={accounts:e[n].accounts.filter((e=>e.includes(`${r}:`))),methods:e[n].methods,events:e[n].events}}))}})),t}(t),s=Object.keys(i),a=Object.keys(o),c=rl(Object.keys(e)),l=rl(Object.keys(t)),u=c.filter((e=>!l.includes(e)));return u.length&&(r=jc("NON_CONFORMING_NAMESPACES",`${n} namespaces keys don't satisfy requiredNamespaces.\n Required: ${u.toString()}\n Received: ${Object.keys(t).toString()}`)),_c(s,a)||(r=jc("NON_CONFORMING_NAMESPACES",`${n} namespaces chains don't satisfy required namespaces.\n Required: ${s.toString()}\n Approved: ${a.toString()}`)),Object.keys(t).forEach((e=>{if(!e.includes(":")||r)return;const i=Fc(t[e].accounts);i.includes(e)||(r=jc("NON_CONFORMING_NAMESPACES",`${n} namespaces accounts don't satisfy namespace accounts for ${e}\n Required: ${e}\n Approved: ${i.toString()}`))})),s.forEach((e=>{r||(_c(i[e].methods,o[e].methods)?_c(i[e].events,o[e].events)||(r=jc("NON_CONFORMING_NAMESPACES",`${n} namespaces events don't satisfy namespace events for ${e}`)):r=jc("NON_CONFORMING_NAMESPACES",`${n} namespaces methods don't satisfy namespace methods for ${e}`))})),r}function rl(e){return[...new Set(e.map((e=>e.includes(":")?e.split(":")[0]:e)))]}function il(){const e=lc();return new Promise((t=>{switch(e){case ic.browser:t(cc()&&navigator?.onLine);break;case ic.reactNative:t(async function(){if(ac()&&typeof n.g<"u"&&null!=n.g&&n.g.NetInfo){const e=await(null==n.g?void 0:n.g.NetInfo.fetch());return e?.isConnected}return!0}());break;case ic.node:default:t(!0)}}))}function ol(e){switch(lc()){case ic.browser:!function(e){!ac()&&cc()&&(window.addEventListener("online",(()=>e(!0))),window.addEventListener("offline",(()=>e(!1))))}(e);break;case ic.reactNative:!function(e){ac()&&typeof n.g<"u"&&null!=n.g&&n.g.NetInfo&&n.g?.NetInfo.addEventListener((t=>e(t?.isConnected)))}(e);case ic.node:}}const sl={};class al{static get(e){return sl[e]}static set(e,t){sl[e]=t}static delete(e){delete sl[e]}}var cl=n(96763);const ll=[{key:"spire_chrome",id:"gpfndedineagiepkpinficbcbbgjoenn",name:"Spire",shortName:"Spire",color:"",logo:"data:image/png;base64,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",link:"https://spirewallet.com/"},{key:"temple_chrome",id:"ookjlbkiijinhpmnjffcofjonbfbgaoc",name:"Temple Wallet Chrome",shortName:"Temple",color:"",logo:"data:image/png;base64,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",link:"https://templewallet.com/"},{key:"temple_firefox",id:"{34ac229e-1cf5-4e4c-8a77-988155c4360f}",name:"Temple Wallet Firefox",shortName:"Temple",color:"",logo:"data:image/png;base64,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",link:"https://templewallet.com/"}],ul=[{key:"infinity_wallet",name:"Infinity Wallet",shortName:"Infinity Wallet",color:"rgb(52, 147, 218)",logo:"data:image/png;base64,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",deepLink:"infinity://",downloadLink:"https://infinitywallet.io/download"},{key:"galleon_desktop",name:"Galleon",shortName:"Galleon",color:"",logo:"data:image/png;base64,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",deepLink:"galleon://",downloadLink:"https://cryptonomic.tech/galleon.html"},{key:"umami_desktop",name:"Umami",shortName:"Umami",color:"",logo:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAYAAABccqhmAAA3bElEQVR4AezBCXyU1aHw4f85553JHhKWsAUM+76p7CCCAsqmZSuKS8SrX63WVq223lZNba3XWhXbqlW0NEWqgtWiiCI7IrKHfZElIZJEAgkhCVnnPeezv/p9t7YyM4FJMoHzPIKGxQE6Az2AzkA7IBloDjQBGgGRgBfLCr1qoBwoBk4CXwLHgKPAAWAPcABwaSAE4S0WGAGMAAYDlwFRWFb4Kge2Ap8Ba4A1QClhShB+WgOTgUnAFYAXy2q4qoA1wGLgb0AOYUQQHqKAycBtwEhAYlkXHg2sAOYBC4EK6pmgfrUG7gVuB5pgWRePQuAV4CUgm3oiqB8dgZ8BNwEOlnXxqgL+AjwJHKGOCepWS+BR4L8AB8uy/p8q4E9AGnCcOiKoGx7gfuC/gXgsyzqbUuCXwGygilomqH1DgZeBHoSIlJJ27drRuXNn0759e5KTk0lKSjIJCQkiJiaGiIgIgWWFWFVVlSktLaWoqIgTJ06IL774whw5coQDBw6QlZWF1loQOruBO4AN1CJB7YkAfgk8AEjOQ2xsLFdccYUZMWIEgwcPpl+/fiI2NhbLChelpaVkZGTw2WefmTVr1rB27VpRWlrKedLAb4HHgApqgaB2dAHeBPpyjpo2bcp3vvMdM3XqVDFixAgiIiKwrIaiqqpKr1q1SrzzzjvinXfe4eTJk5yH7cAM4AAhJgi9acBrQBw1JIRgzJgx+s4775STJk0yjuMILKuBq66uNosXLxavvPKK/vjjj6XWmnNQAtwOLCSEBKEjgceB/wYENeD1ernlllt46KGHdKdOnSSWdYHav3+/mT17NnPnzhVVVVXUkAF+BaQBmhAQhEYkMBeYQQ04jsOtt96qH3vsMdGmTRuBZV0ksrOzeeKJJ8yrr74qtNbU0BvALKCC8yQ4f7HAO8BoauCqq65yn3/+edmjRw+BZV2kdu/ezb333qtXrVolqZmPgSlAKedBcH4aAUuBgQSpSZMmzJ49m5tuugnLsv5p/vz55v777xf5+fnUwEZgLHCacyQ4d7HAcmAgQZowYYKZM2eOaNGiBZZlfVN+fj633347ixcvpgY2AlcBZzgHinMTCbwLjCAIXq/XPPPMM8yePVvExcVhWdZ/iomJ4YYbbiAxMdGsXLkS13UFgSUD/YGFgI8aUtScBNKB6wlC8+bNzQcffMD06dPFV7As6+yEEAwaNEiMGjWKxYsXizNnzhCEDkAH4F3AUAOKmvsFcDdB6NmzJ6tWrRK9e/cWWJYVtLZt24rp06eb5cuXi/z8fILQC3CAldSAomamAb8HBAEMGDBAL1++XLRs2RLLsmouISFBzJgxg9WrV5OTk0MQhgN7gL0ESRG8LsBiIIIARo0axdKlS0V8fDyWZZ27qKgoZs6cyYYNG8jMzCQAAVwLvAMUEARFcCKBj4BLCGDAgAF66dKlIjo6Gsuyzp/H42HatGlm+fLlJicnR+BfBDAM+DPgEoAiOE8AUwigV69eZvny5TI+Ph7LskLH4/GIKVOmiCVLlpCfn08ALYAIYBkBKAIbBLwGCPxISkpi1apVomXLlliWFXpRUVGMHz+ev/71r/rMmTMC/wYDy4Ev8EPhnxf4AGiOHxERESxZsoRevXphWVbtSUhIYPDgwcyfP1+4rosfAhgEzAE0Z6Hw7wHgRgJ45plnmDZtGpZl1b62bduK+Ph489FHHwn8SwJKgPWcheTsmgOPEMCECRO49957sSyr7tx7771iwoQJhsB+DrTgLCRnlwbE4kdSUhKvvfYaQggsy6o7QgjmzJkjmjRpQgDxwKOchcO3aw/MIoBnn31WJyUlScKFW40pKYKqCr4hMgYR35gaMQZzMheMptZFxyNiG3E+zKnjUF1FfRFxiRAVS8hUV2FOHSeseCMRcYmgHMJBixYtmD17NjfffDMB3AE8Cxzi3zh8u4cBL35cddVVeubMmZL64vrQ+zahd61HH8zAfHEAczIPjObbyI59cb73JLJjX4JR/eRtuJuWUldE4+bIy0fjXJuKaNeDmvC99Sy+N56mvolmrZF9rkCNmILsNZRz5vqovO8qzLFDhB0hEU1aINp2RXbqh+w1BNltACiH+nDTTTcxd+5cVq5ciR8O8DPgNv6N4j+1BV4DFGchpTSLFi2SSUlJ1DWTuQffW8/g+/19uB+lo/d8hsnLhLISwHA2pvBL3DXvoAZeg2jUFL9cH9W/+yEYTZ0pP4M5vBP349cxJ46heg0FTwTB8L3+a8zJXOpdWQnmyG7cVQvQOz5BduyLSGhGjVWW4fvLr8Fowo+BshJMXiZ6z2e4KxfgfpSOOZ6NaNwSkZhEXbvsssuYM2cOWmv86AH8CSjhXyj+08PACPy48847mTVrlqAO6f1bqH7+Xnx/eQJzaAdUVVBjrg+TvR816rsgBGclJeb0SczB7dQ9g8ncjbttJWrIeERENIGIxOa46xaBMYQLczIHd+WbiPgmyI59qBGPF9m5L3r/ZjhzmrBXWY45tAN36Tz059sQLdshmrSkriQlJZGdnU1GRgZ+KMAFlvEvFN8UCcwHojgLr9fLwoULRaNGjagLpugEvhcfxPenxzDHszlf5sQxRKv2yJRu+KO6DcBdvRDKS6kXRScwezagrpwKysEf0ao9Ir4xeusKworrorcsw+RlofqNAMdLsETLdjijZ4IQ6IMZoF0aApOXhbv8DUzuYWT3gYjIaOpC3759efHFF3FdFz+6Ar8HfHxN8U03ADfixx133MHMmTOpC3rLcqp/cSP6822EkjmwFWfMTPBEcFaeCGSLFNx1i6gvpiAPU5CHGngNgchOfaG6Cr1vE+HGHN2H+9kHyK6XIxo3J2iOB9l7GOqK78CJHEzOIRoKc3Q/etVCZJvOiFbtqW2NGjUiOzubbdu24Uc0sBfYxdcU3/RboANnIaVk3rx5NG3alFplDL4Fz1H90kNQcYaQqziDqTiDuuwq/BHJHTHHDmGyD1BfTOYeiIpFdr2cQGTvYZgTxzCZewg7JadwVy0Ax4vsejkIQbBEbAJq+PXIHoMxxw5iCr+kQagsw/1kEUiJ7D4IhKA2de3alRdeeIEAGgHz+Jrif7UGfg8IzuKaa64xP/zhDwW1yWiqX3wQd9HLgKG2mMM7kZddhWjcAn9kz8Ho5W9AVQX1Re/4BNmhN6J1B/wSAtV/NPrwLkzuEcKOdtE71qL3bED2GISITaAmRPO2qNE3INp0xhzdByWnCH8GvetTTEEuqv9oEILa0qRJEzZs2MChQ4fwIwV4FSjhK4r/dRswDj+efvppunbtKqhF1S88gLv8DWqdMZjDO1FX3wBScjYiIhqR1Aa9fjH1x+BuWYa87CpEYhJ+CYkaPA79+TbM8aOEI5P/Be7yNxAx8ciOvUEIgiYEsm1XnGtuQTRthcnaC2UlhDtzZDem8EtU/zEgBLUlOjqaBQsW4IcAjgKb+Irif/0S6MBZNG3alJdfflkopagt7qqF+N54mrpiTh2H6Fhk1/74I9t2weQcxmTvp974qtBbl6MGT0DExOOXclCDx6N3rsMU5BGWfNXorSvQezchu/VHxCVSI1IiO/TGGXcbosUlmNwjUFxAODNHdoGUyJ6DqS0dO3bkpZdeoqysDD8cYB5fUfxTHPAioDiLm2++WV933XWCWuR79RHMiWPUJb1vM2rYJERcIv7IXkPRqxdCxRnqTVkJetc61PDvILwR+OV4UEMmorevwZzKJ1yZ/GzcZa/zD7LLZSAVNSIVsl1PnGtvRbTrASdzMSdzCVd6zwZkxz6IVu2pDUopDh06xLZt2/CjDTAbqFL802jgZvz49a9/LTp06EBt8i14Ds6cpk65PkzWXtSo6SAEZyMiopCXdMVd+w71qugE5uB21PDrQDn45Y1ADp2I2b4WcyqfsOW66F2f4n76HjK5I6LFJdSYEMjkTqirb0T2uxKqKjA5h0FrwotB7/gENXIaIjKG2hAREcHrr7+OHwr4FDio+Kc7gKGcRVxcnHnxxReFUorapDNWYvKyqGvmxDFEoybITv3wR7RshykpxBzMoD6Z/Gz0F5+jhk4EIfBHeCORQyditq/FnMonrJWcwl39NiZrH7JTP0RsI86FaNoKNXg8asxNiOg4TP4XcOY0YaOyDAq/RA0eT21ITk5m9uzZVFVV4UcesEzxT48CbTmL0aNHi5tvvpnaJuIScde8Q33Qezaghk5ExCXij+o1FHfTx3D6JPXJHDuIKchD9R8DQuCP8Eaihl2H3r0eU5BHuDPHDuIu/QuUlyI7XwqeCM6FiIxB9hiMM+F2ZI9BoF3M8aPgq6a+mewDyD7DEc1aE2qO4/Dpp59y8OBB/NDAXAUo4PeAh7O44447GDp0KLVNtGyH/jwDk5dJnfNVYzJ3o0ZNByE4K+WgegzCXfkWuD7qkzmyGyrOIPtdSUDeCNQVk9GHtmO+PErY0y56/2bcZfNBKmTHPiAV50QIRPNLUIPH44ybhWjbFarKMfk5YDT1xRzPRo36LrUhNzeXZcuW4Ucz4CkFdAN+iB+PPPIIl1xyCXVBduyDu3QeGE1dMydyIDIG2a0//ohGTREJTdGbP6a+6QNbAIHsOYSAHA9q6ER01h5M7hEahMpy9PY1uKsWICIikSndQSrOmScCmdINNWIKavxtyDadEYA5mQOuj7pk8r9ADrgGkZhEqGmtmTt3Ln54gLcUcCUwjbNQSvH888/j9XqpCyK+MZSVoA9soT7ovRtQA8YiEprhj+zQG5N7BHN0P/VN714PCGTPIQSkHNSwSZiTuZjM3TQYZSXoLctxVy1AREQiU7qDVJwP4Y1EtuuBGn49zvXfQ3a9HBHfGFNWDMWF1AkhUJePJtSaNGnCU089hTEGP1YrYDIwirNo3769+fGPfyyoQ7LLpbgr3oKKMuqcdtF7N+JcNQOUgz+q7wjcjR9CcSH1Te9eDwhkzyEEJCRqwFjQPvTejTQoZSXoLctxVy0A7SJTuoPj5bwpB9GqPfLSUTjjZqGuvhHZriciLgEqyqDkFLXieDbOdf8HpCSUvF4v8+bN49SpU/ixUwG3AJdyFoMHDxYzZ86kTnkiEI2aojd+SL04XYApPY26/Gr88nhRPYfirloAvmrqm969HhDInkMISAhk72GIxCT0tlVgDA1KWQl6+xrcj9LhzGlEqw6ImHhCRUTHIdv1QA0YizP+dtS1qaheQxEtLoHIGKgqh/JSzltVBWrYJESjpoTa0qVLOXjwIH5kKuAuoCNnMXbsWDNu3DhBHZMp3dG71mFO5FAfzOEdiJTuyORO+CMaNUW0SEGvX0w40LvXAwLZcwjBkB37IDv0xt28DHxVNDhVleh9m3CX/AlzdD8ioRkiKZlQE5HRiFbtkb2GokZMxrnue6hxt6EuuwrZqR+yZTuITQCloLwUtEswRFwizowHwOMl1DZs2MCmTZvw44QDtMCP5ORkQX0QAs/3nqLyvtHgVlPnjMH3h/uRHXohmiXjjxp2HebzDHzvvUw48L35WygrwbntMRCCQOTlVxPx5CKqnrgVc+IYDZLrw13/Pu769xFtOuOMuQl55VREXCK1RcQ3QfQcAj2H8A3GYIryMQV5UJiPOX0Cc7oAigsxZ4qgrBRTVoKIiceZ+kOIiqU2tGrVigCaK+DnQDxnceONN5p+/foJ6oFo1BSqytD7NlEvqiown29DjZwGUuGP7D0MvW8zJj+bcKAPbMWczEENGANCEIhIaIYaMRmzfzPmZC4NWnEBOmMV7vuvYLL2IjwRiBYpICV1QghEVCyicQtE6w7IDr2R3Qci+12JGngNatgk1MhpqKGTEIlJ1JZDhw6xaNEi/KhWQBoQwVnceuutdOvWTRBKRuN7+3nwVSNaXII/smt/3HWLoLSI+mAK8jAVZ1D9RuKXlMj+o9HrF8OZ04QDk7kbnbUXNehaUA6BiMho1IgpmKITmCO7aPC0xnzxOe4nf8f9KB2Tl4XwRiGSkkFILnSZmZksWLAAfxTwOKA4i1mzZokOHToQSubLTKqfnIXesgx11QxEZDRn5XiQbTrjrvkb9cV8vg3RtguyTWf8ERFRqN5Dcdf8DXxVhAOTcwi9fzNywFiEN5KAlIMaMAaR0Ay9Yy1olwtCZTnm8E7c1QtxP/wzJjcTIQQiKRmUw4UoOzub119/HT+kAh7Hj9tvv52UlBRCqrgAd8lcqKqA4kLUwGvwR7S4BHP8KCZrL/VFZ6xGDboWEd8Yf0RCM2RKN9xPFgGGcGDyv0BvW4G67CpETDzBkB37Ivtegd6+BspKuKBUlmOO7ML95F18772MPrAVSosQMY0QcYlcKI4dO0Z6ejp+KAWk4UdqaiopKSmEVEkh7pK5/IPJ2ovsNRSRlIw/sscg9OqFUHGGelFdhd65DmfkNPB48Ue06oCIiUdnrCJsFJ1Er38f2WsYIjGJYIgmrVAjp2Gy92PyMrkguT5M7hH01hW4H/wJd/kbmKx9UFqEiIpBxCXSUGVlZZGeno4/CkjDj9TUVFJSUgipkkLcJXP5f/TBDJzRM0EpzkZERCFbtsNdt4h6U1yIyTmEGjoRhMAf2eUyTPEpzMEMwkZ5Ke6ad5BtOiOSOxIMERGFuuJ6iIhG7/kMtOaCVlaCydyD3rQU94PXcD9MR+/biPnyKFSVQ1QsIjKGhiArK4v09HT8UUAafqSmppKSkkJIlRTiLpnL/1dcAI4H2XMw/ojkjpi8TMzRfdQXc+wQCInsOYRAVL8r0Zm7MTmHCRu+atxP3wdvJLLbAIIiBLLbAGTfEehd66G0iItGZRkm5zB616e4a/6G+/eXcJfNR2esxhzZjTmZAxVl4PUiIqJBCMJFVlYW6enp+OMQJnxvP48aMgHRpjP+OP/1K/TOdZhT+dQX31vPIi7piho8Hr+kwvvjl6n62WT0wQzChtH4/vIrzNG9eO55FjwRBEN2vpSI2cupnvNz3BVvcrEyBV9iCr5Eb1/DN0REIZLaIJq2QjRtjWjcHJGYBI2aIuISEbGJEBMP0XGImHjCgUO4qK6i+sUH8f76XRCSsxFxiXju+g1Vv06l3hhN9fP3Ipq3RbbvhV/eSDyPzqfqpxMxOYcJJ+6adzA5h/H85DVEs9YEJTIGzw+eQw0YS/WLD2JOn8T6WmU55ovPMV98TiAivglq5DSc794P0XHUF0kY0fs24Vv8GoHIAWNRo2+kXlWUUf3ErZiCLwlExCXifewNRNNWhBt9aAdVD4xB71xHTciB1+D93SrU0ElYNWeKC/At+iOV/30dpvQ09UUSZnyvP4nJyyQQz21piBYp1CdTkEf1E7dARRmBiKQ2eB/9KyI2gXBjigupeuy7+BbOBqMJlmjUFM+DL+N58GVEYhJWzZmsffjSH6e+SMJNZTnVv78PjMav6Dg8P/o9KIf6pI/sourpO0G7BCLadsHzi7cQ0XGEHaPxzX+Kql/ehDl9kppQQycR8YdPUFffAEJi1Yy79l3wVVMfJGFI792Ib/FrBCK7Xo4z/UfUN711BdUvP0wwZIfeeP77z+CNJBzpbauoum80etc6aiQmHs89z+L91duItl2waqCyHHMyh/ogCVO+15/E5BwiEGfaj5DdBlDf3KXz8L31LMGQPYfgffhP4I0gHJnCL6l69Lv4Xn8SfNXUhOwxmIhnl+GkPgqRMVhBcn3UB0m4qiyn+rl7wPXhl1R4HngJEZtAffO9+VvcZX8lGLLfSLwPzwVvBGHJaHxv/46qn07E5ByiRhwPzvV3EfHip6grp4KQWOFJEsb0oR343nqWQETTVnjunQ1CUK+Mofqlh3A3fEgwZL+ReB+eC94IwpU+tIPK+67GXfwaGE1NiMbN8fzo93ifeg/Z5TKs8CMJc763f4fet4lA5ICxOBPvoN5pl+pn70JvX0MwZL+ReB+eC94IwlZVJdWv/pyqR7+LOX6UmpKdL8P71GI8D72CaN0BK3xIwp12qX7uHigrIRDnlp8ju1xGvauqpOrJ29CfbyUYst9IvA/PBW8k4UzvWkflD6/C994rYDQ1pYZMJOL5VXjuegrRpCVW/ZM0ACb/C6pfepCAHA+eH7+MiG9Mvassp/rxm9BHdhEM2W8k3sf+ioiOI6xVnMH3p8eo+ukkTOYeaszxoMbeQsSLn+KkPoqIb4xVfyQNhPvJItzlbxCIaNYaz/0vgpDUN1NaRPWj09FHdhMM2WMwnl/9DRGbQLjTB7ZS+eC1+P78S6g4Q41FROFcfxcRr2zCueXniMbNseqepAGpnvMzTPYBApF9R+DM/AnhwJQWUZ02A310P8GQ7XvhfXIRollrwp6vGt/fX6TyByNwNyzhnETG4Ey+m4iXN+K56ylEUhusuiNpSCrLqXr6TqgoIxBnyg9Qg8YRDkxxAdWPTEUf3U8wRJvOeJ94F5HckYbAnMih+n9up+qx6Zjs/ZwTTwRq7C1EvLQez4//iOzUD6v2SRoY88XnVP/xJwQkBJ4fPo9o24VwYIoLqH5kCvrILoIhktrg/Z/3kZ0vpaHQOz6h8r4xVL/yM0xxIedEOahh1+F9egneJxehhkwA5WDVDgWk4UdqaiopKSmEVEkh7pK5nCuTtReR2BzZsQ9+ebyofleiV78NVZXUu8py9KfvI/uOQCQ2JxDhjURdORVzdB8m5zANgtGYgxm4S18HqZAde4NyOBeiWWvU0Emoq29ARMVg8o5A+RkuRM74WYj4xoRSVlYW6enp+KOANPxITU0lJSWFkCopxF0yl/Ohd6xBXjoS0bgF/ojYBGSHPrifvAtGU++qKtCfvo/sMQjRtBUBKQc1bBKcOY3+PIMGo7oSvWMt7uqFiKhYZPseIATnQkTHIXsNxZnwX8gOvTHlpZjj2WAMFwpn/CxEfGNCKSsri/T0dPxRQBp+pKamkpKSQkiVFOIumct50S46Yw3qyqmIiCj8ES0uQcQloreuICxUVeB+8ndkxz6IlikEJATy0lGI2ER0xmrA0GCUlaA3f4y7fjEivjGyTWcQgnMiJSK5I2rEZNTomYhGTTGnjsPpAho6Z/wsRHxjQikrK4v09HT8UUAafqSmppKSkkJIlRTiLpnLeSsrxhzehRoxGYTEH9mpH6b4FOZgBmHB9eF+thjRpjMyuRPBkJ0vRXbsg96yAqoraVCKC9DrF+OuX4yIb4xs0xmE4FyJqFhktwE416aiBl6LiI7FFORCWQkNkTN+FiK+MaGUlZVFeno6/iggDT9SU1NJSUkhpEoKcZfMJRTM8WyoKEP2u5JAVL8r0Yd2YPIyCQuui/50MaJJS2SHXgRDtGqP6j8anbEGSotocIoL0OsX465fjIhNQCZ3Aik5HyIxCdl3BM7EO5CXjUTENMKcPgmlRTQUzvhZiPjGhFJWVhbp6en4o4A0/EhNTSUlJYWQKinEXTKXUNEHtiBatkOmdMcvIVEDxqC3rcQUnSA8GPTmj0FIZM/BBEM0aoq6cirm8E7M8WwapOIC9Gcf4K5+G+F4kG06gePlvAiBaNIK2XcEzoT/Qg0ah2jSCqrKMafywRjClTN+FiK+MaGUlZVFeno6/iggDT9SU1NJSUkhpEoKcZfMJZT0thXIPsMRTVrhl8eL7D8G/dliKCshXOjd6zEFX6IuvwqEJBDhjURdOQUqy9H7t9BgnSlGb12B+/HrUFaCSO6EiIolFERCM2SPQajRN6LG3Ybs0AsRFQulRVBWTDhxrvseIrYRoZSVlUV6ejr+KCANP1JTU0lJSSGkSgpxl8wlpFwXvXUlaugkRHQc/ojoWFTfK9Cf/B2qKgkX5sgu9MHtqIHXgOMlICGQfUcg2nZBb1sFvioarMpy9N6NuB+8hsk5hEhsjmjailAREVHItl1RA6/BmXQnasQUZEp3REw8lJXAmWLqkzPpTkRMI0IpKyuL9PR0/FFAGn6kpqaSkpJCSJUU4i6ZS8iVl2J2f4YaMQUcD/6IRk2RXS7DXfd3cF3ChcnLRG9bibzsakR0HMGQbbqgBl2L3vUpFBfQoGmNOboPd/kb6I0fgRDI1h3A4yWURFwiskMv1KBxOBPvQI25GdWtPyKpDTgRUFoE1ZXUFef67yOiYwmlrKws0tPT8UcBafiRmppKSkoKIVVSiLtkLrXBnMpHf/E5atgkEAJ/RFIbZJsuuOsXgzGEC3MqH/3pe8ieQxCNmxMMEd8EZ9R3MQV5mKy9XAhM0Qn0lmX4lszF5GUi4psgmrWmNoioWERyJ2SfK1CjpuNMvgc1ciqy+0BkcmdEXAIYA2WlYDShJBo1xZnxAAhJKGVlZZGeno4/CkjDj5tuuon27dsTUlUVuO+9Qm0xOYcw5aWofiMJRCR3QjRugd6yjLBSXoq7+m1E6w7INl0IiuNBDboW0awNescacH1cEHxVmMzduCvewF37LpSVIpq2RMQmUGuEQMQmINt0QfYaghp2Hc74WThTf4AaMRnV90pk50sRrdsjE5IQEVHgulBVQY0Iief7TyNTuhNqBw8eZN68efjjEEBZWRmhJmLiqW3ue68gm1+CGj+LQNToGzHFBfjm/ZqwUlVB9dPfw0zdi3PjgyAkwVBXfRfZ9TKqf/s9dOYeLiQm9wi++f+D76+/QXa5FDXseuSQCYjGzakTykG07oho3ZF/UPyb6kpM0UlMUT6cLsCUFEJJEebMaSgrwZSXQmUZVFVCbALq6huQ3QZQG8rLywnEIYDi4mJCLioWEdsIU3qa2lT96iOIZq2RA8YSiDPlB1BZjm/Bc4QVo/EtnI0+ug/vj34P0XEEQ7TuiPc3H+Cb92t8778KRnNBMRq9fwt6/xZ47VFk18tRQyYgB12LaJZMvfFEIJq1RjRrTX0rKioiEAWk4cfw4cMZPHgwoaY3foQpyKN2GdyNHyJ7D0c0bUUgstdQKD6FPphBuDE5h3E3LEH1HoZo1ISgKAfZbySy2wD0zrVQfoYLk8GczEFnrMJ9fw7uhg+h8Dh4IxGNm4OQXIxWrlzJ0qVL8UcBafjRq1cvxowZQ6jprD2YgxnUOtdFb1iC6j8G0agJgchLR2JO5mIydxN2Sk7hrn4b0TIF2bYLwRItLsG5+kZMQR7m6D4ueEUn0Hs24C7/K+6SuZjM3VBeiohLRMTEc7F45513WL9+Pf4oIA0/WrZsyfTp0wm5ijPo9YupE1UV6C3LUIPHIWLi8UsI1IAxmJO5mMzdhB1fFXr9YkxpEarXMFCKoHgjUIPHIdp2wez+DCrLuChUVWCy96M3LcV9/xXcNe9gju6FshJEdBwiphEXqldeeYV9+/bhjwLS8MNxHO666y5CTTZugW/Ry2A0daKsBJ2xGjX8ekREFH4JgRowBnMyF5O5m3BkPs9A71iL7D0MEZtAsGSbLqhR0+FUPuboPi46pUWYI7vQGz7EfX8O7rL5mM8zMPnZoDUiPhEcLxeCJ554guPHj+OPAtLw4/Tp0/zkJz9BKUVIeSPRBzMwuUeoM8WFmB1rkcOvR3gi8EsI1IAxmJO5mMzdhCNTkIdetQDRsh2yTWeCJSKjUYPHITv1Q+/dAGUlXLTKSzFfHEDvWIu78i1877yA+8m7mH2bMLlHoKwEHA8iOh6EoKGorq7mgQcewHVd/FFAGn64rsvkyZNp0aIFoSa8kbjrFlGXzKl8zP7NqOHXg3LwSwjUgDGYk7mYzN2EpepK9KfvYwq+RPUZDo6HYIlW7XHG3ASV5eiD2wHDRc8YKC7EZB9A71yHu/Zd3Pfn4Fv0R/T6xejdn2Ky9mJOHIOyEhACERkNUhJOdu3axQsvvEAgDkHYtGkTffv2JdRk/9GIlu0weZnUJb1nA1X/Mwvvw3PBE4FfQuK55xn+wV3xJuHKXTYfvW8jnvteQHboTdAiY3Bufxw5cjq+F3+MPrQD61tUnEEf2QVHdvEflINIaIpo3BLRuDkkJiHimyDim0BcIiImHmLiEdFxEBkNkTGIuESQitqyceNGgqGANAJISEhg8uTJhJyUiOhY9MaPqGsmLwuduRs1ZCJIhV9CoAaMgdLT6IMZhK3iQtyVb4GQyO4DQAiCJRKTUKNvRDRpiTmwFSrLsYJkNJSXYgq/xOQcwhzagd6zAb1tJXrDEty17+KueBP3o3Tcxa/i/v0l9N6NqFHTqS3PP/88O3fuJBAFpBFAfn4+DzzwAEIIQk2mdEdv/hhzKp+6ZnKPoLP2ogaPB6nwSwjkZaPAGPSezwhbWqN3rUNvX4PsPgAR35igCYHs0Bt11Q1QWYY5tBMwWKEnEpNQo2+kNhhjuPvuuyktLSUQBaQRQGlpKRMnTqRVq1aEnBCIDn1wV7wJRlPXTM5hTF4matC1ICSByF5DwRuJ3rmOcGYK8nBXvAmR0cjO/UAIgiUiolCXXY0aPA6TexhzPBsrhJSD5yevIhq3oDZs376dZ555hmAoII0gNG/enJEjR1IbROMWYAx693rqg8nej8k9jBowFqQiENltAKJpK/SW5WAMYcv1oTNWoXesRXYbgIhvTE2IhGaokdORHfugM/dAcQHW+XNm3I+6YjK15YUXXuCTTz4hGApIIwh5eXn84Ac/oLbIHoPQB7dj8jKpDyb7ADprL2rweJCKQGT7Xsj2vXA3LgHXJZyZk7m4y//KP8gul4FU1IRo1QHnmlsQjZtjMvdAeSnWuZGXX43nrqdACGrLXXfdRUFBAcFQQBpBKCws5JprriE5OZlaIQSq/xh0xmrMqXzqg8k5jD60AzVkAiiHQETrDsgeg9EbP4KqCsKa66J3fYq7aSmyXU9E01bUiJDIjn1wxt4E0XGYzD1QWY4VPNm+F96f/QW8kdSWjRs38tRTTxEsBaQRJCklEydOpNZ4IpBDJ2K2r8Wcyqc+mLxM9OEdqMHjQTkEIpoloy4fjd66As4UE/aKTuCueBNz6jiyW3+EN5IacbzIbgNwxt4Cjgd9eCf4qrH8k+174Xl8ASKmEbXpscceIyMjg2ApII0g7du3j+9///tERUVRW4Q3Ejl0IubgDkx+NvXB5GWh92xADhqH8EYQiGjUFDV0Emb3esyp44Q/gzm8E73iLUR8Y2S77iAENeKJQPYaihpzE0JKzNH9UF2J9Z9kzyF4HpmPiE2gNhUUFHDHHXdQVVVFsBSQRpB8Ph+xsbFcccUV1CbhjURd8R0oK0EfzKA+mBM5mO1rkIPHIyKiCERExaJGTEZn7cPkHqFBqCxDb1qKzliNaNcD0bgFNSUiopB9rsC55laIisUc3QuV5VhfEQI18Q689/0BERlNbXv++ef58MMPqQkFpFEDe/bs4Z577sHj8VCrpEJeOgrZqS963yYoK6aumVP56I0fofqPQcQ0IiDHixp+HVRXovdvBQwNgSnIw132Bib/C2SnfoioWGrMG4HsMQjn2lREQjPMF59DWQkXK9GsNd4HX8EZdxtISW0rLS1lxowZlJWVURMKSKMGzpw5Q2xsLMOGDaMuiFbtccbMBE8E+tAO8FVTp0pOoTcsQfUejkhoRkBCIPtcgewxEL1/C5QW0TAYTOYe3KXzwPUhO/YGx0uNOV5k50txxs9CJHeC/C8wp45zsRAx8ThT78V7/4uI5I7Uleeee4733nuPmlJAGjW0detW7rjjDqKjo6kTjhfZczDONbdCbALmeDaUFlFnykrQez7DGXcbwRLN2+JccwuiSQtM9gE4U0yD4KtG716Pu2ohslNfRLNkzomUyEu6ocbejOw1DMpKMLlHwBguRKJFCs6UH+D90R+Q/a4Ex0NdOXnyJDNmzKCiooKaUkAaNVRRUUFpaSnjx4+nTnkjkd0G4Iyfhew3EpHQDFwfprgAtEttkk1bosbeQo1IhezYB2fC7ciu/cEbASWFUFZC2CsvRcQ0Qva7kvMlkpJRw65DjZqOiIzBnPgCykpo0LwRyI59UaOm46Q+gueWnyO7DQBvBHXtoYceYu3atZwLARjOgVKKDRs2cPnll1PvXB8mLxNz4hjmdAFUlhFSUiH7j0EkNCMUTNEJTM4hTMGXUF4KGMKOVMjBExCxjagNJi8Tc3Q/pqQQtEuDEBmDaNQU0aw1okUKKIf6tmXLFgYOHIjWmnMhAMM56t27N5s3b8br9WJZVt2qqqpi4MCBbN++nXMlOQ87d+7k8ccfx7Ksuvf444+zfft2zofkPD355JOsWrUKy7LqzurVq3nyySc5X5LzpLVm5syZ5ObmYllW7cvJyeGGG25Aa835koRAXl4eU6ZMoaKiAsuyak9FRQVTp07lyy+/JBQUkEYIHDt2jIMHDzJlyhSEEFiWFVpaa26++WaWLl1KqCggjRDZs2cPJ0+eZPz48ViWFVp33303f/7znwkho4A0Qmjz5s1UVlZy9dVXY1lWaDz88MPMnj2bECtXQBohtm7dOoqKihgzZgxCCCzLOjdaa+6//35++9vfUgtOKyCNWrBx40aysrIYN24cjuNgWVbNVFZWcvvtt/PKK69QS3IUkEYt2bFjB+vWrWPixIlER0djWVZwCgoKmDRpEu+99x616KAC0qhFWVlZLFiwgCFDhtC6dWssy/Jv8+bNjB49mu3bt1PLNiogjVpWVFTEvHnziImJYeDAgQghsCzrm7TWzJ49m5kzZ1JQUEAd+FgBadQB13VZunQp69atY/jw4SQmJmJZ1j8dOnSIadOm8fLLL+O6LnVkvgLSqEOZmZnMmTMHIQT9+/fHcRws62JVUVHBb37zG2688UYOHjxIHZutgDTqmM/nY+XKlcyfP58WLVrQvXt3hBBY1sVCa838+fOZNm0af/vb36iurqYePCgAQz3r3r07jzzyCFOnTsVxHCzrQuXz+Vi4cCFPP/00GRkZ1KMcIFkAhjCRkpLC97//fW699VaSkpKwrAvFyZMnmTt3Li+99BKZmZmEgXeAKQIwhBmv18u1117LjBkzGDduHPHx8VhWQ1NSUsIHH3zAW2+9xQcffEB1dTVh5AHgWQEYwlhkZCQjRozg6quv5oorrqBfv354PB4sK9xUV1ezY8cOVq9ezfLly1m9ejWVlZWEqUuBDAEYGpCoqCh69+5N79696dy5M+3ataN169Y0b96chIQEYmNj8Xg8WFaoVVdXc+bMGU6dOsWJEyc4duwYmZmZ7N+/n127drFz507Ky8tpAPKBloB2aGDKy8vZuHEjGzduxLqgPQX8lLMbBHyGdS7eBzRfkViWdbFZxNcklmVdTE4BH/M1iWVZF5O3gEq+JrEs62Iyl38hsSzrYrEV2MS/kFiWdbH4Hf9GYlnWxSAbeJN/I7Es62LwJFDFv5FYlnWhywb+xLeQWJZ1ofsFUMW3kFiWdSHbDvyZs5BYlnWh0sAPAM1ZSCzLulC9BqzDD4llWReiXOAhApBYlnWh0cCtQBH+NZJYlnWheRZYTmCPSSzLupB8CvyMwPoC90osy7pQ5ADTgSr8k8BrgJJYlnUhKAeuB3IJ7KfApXxFYllWQ+cC3wW2ENilwGN8TWJZVkOmgTuB9wksFpgPePmaxLKshsoAdwN/IjivAF35Fw6WZTVEGvgeMIfg/BC4gX/jYFlWQ1MF3A68TnBGA8/wLRwsy2pITgHTgBUEpxfwFqD4Fg6WZTUUB4Drgf0E5xLgfSCRs3CwLKsheAeYBZwmOM2Aj4FL8MPBsqxwVg48CLwIGILTDFgBdMa/agfLssLVZiAV2EvwWgJLgV4EVuFgWVa4KQYeBf4AuASvHbAcaE9wShwsywoXGkgHfg7kUjOXA+8DLQjeKQfLsuqbARYBvwC2U3NTgb8AUdTMcQfLsuqLD/g78Gsgg5qTwC+AnwGCmst1sCyrruUDc4GXgUzOTXPgdeBqzl2Wg2VZdaEUeB94C/gA8HHuxgGvAS04P4cdLMuqLZ8DK4APgWVABecnHvgt8F+A4PztcbAs63wZ4BiwG9gJbAY+A3IJnSnAbCCZ0HCBPQ7WxaQIOAAcBQqBM4CP8LQa/3KBp6hbGigDSoAC4EvgGJANlFE7ugHPAWMJrX1AmYN1ISsFlgAfAWuBI4DhwpAN/JQLV0vgEeAOwCH0PuMrDtaFKAP4HbAQOIPVkLQEHgL+DxBF7fmErzhYF5LtwMPAR1gNTR/gh8CNQAS1bwVfcbAuBMXAT4GXAY3VUEQDU4E7gaHUnR1ALl9xsBq6z4AbgSyshiACGAtMAb4DxFH3PuBrDlZD9ipwD1CJFc7aAVcDY4ExQBz1ayFfc7Aaql8Cj2KFmyZAD+BSYCAwGLiE8HEA2M7XHKyG6HHgMc6dF2gNxAMCK1gRQAQQBzQCmgItgGSgPdABaEF4+zP/wsFqaF4FHqNmHOAaYAIwHOgMOFgXm2rgL/wLB6shWQ/cQ/BigfuAu4CWWBe7d4Fc/oWD1VAUAzOBSoIzFXgeaIVl/dNz/BsHq6H4KZBFYJHAC8AsLOt/rQM28G8crIZgG/AygTUCFgEjsKxveoJvIbEagp8BGv8igUXACCzrm1YBH/EtJFa42wx8RGAvAiOwrG/SwE85C4kV7v5AYNOB27Cs/zQP2MRZSKxwVgy8jX+xwO+wrP9UBPwEPyRWOFsClOHfPUBzLOs//QQ4jh8OVjhbin9e4D5qbjewCPgcMEAX4HqgB9aFYjnwKgE4WOFsHf6NA5II3inge8BCwPBNPwdmAC8AjbEaskLgVkDjX1+JFa6KgEP4N4HgFQIjgAWA4du9CYwETmE1VAaYBeTinwR+L7HC1T4CG07w7gJ2EdhO4HtYDdUzwCICux0YJrHC1VH8iwI6EJwdwAKCtxDYjdXQfAz8hMBaAb/hKxIrXBXiXzKgCM7fqRkDvIvVkOwCZgAa/wQwB0jgKxIrXJ3Bv0YEbz819zlWQ3EUmAicIrC7gXF8TWI1VILaZbAaghPANcBRAusLPM2/kFjhKgb/igheF2quM1a4OwFcBewnsERgARDJv5BY4aoJ/uUAmuBcR81dhxXOjgGjgF0EJoF5QCf+jcQKV23wrww4QnD6AZMJ3neAPljh6gAwHNhNcJ4GxvMtJFa46goI/PuE4P0R6EhgnYA5WOFqNTAEyCI4dwP3cxYSK1w1Btrh33sErxmwAZjE2U0GPgOaYIWjF4GxQCHB+S7wO/xwsMLZCOAIZ/cRcBJoSnCaAIuArcB7wH7+qQvwHaAfVjgq/b/twX2M1gUdAPAPP34ebx1a06bx4qqVTWtzUBtuTJxSMGswNZyhtflCRzf/aI0XmxEwM0MYhZj9IQiMsygFJOc4qiURmA5jigEBZxFBlgvH+z2ct4fYjgYodzzPvf5+j9/PB7VYrnRjsQyJNqRClo3BEq0r4KeYqTzDMVzIg824E7uVbixWo48LSIUsuxn9cVzrfoJv4aNCJSngB5iDZqW7BT9HXyXojVlCVvVBA17TugLewq1CpViH8XgORaWbhGWoUqJUyLr7sVTbnsaX8TUhz3ZgOp5Xnl6YjRnKlKIJVUJWDcdY1Gvbvfg4Rgh504CHUYdm5RmAJZigfCd6Yyr6CFl2NRbhpNY1YzVuwGAhDzZjKmqxBUXl+TTW4Ubtc7Q3anGxkGVX4N94VdsaUYdP4nNCFh1BHWoxC39BUfkmYg2Gar+3UxzAECHr5mAt/qFtBUzEOszFZUJPO4J1WIlf47j2uwQLcZeOe6cX6jFGyIM/4QY0Kc1ATEMNLhW6SxP+jA34Hf6IEzpuHJ7AIJ2jvhcW4x4hL57EN5WnL27GOIzEJ9BL6Kgj2Ic92IVteB1bUdB5hmA+vqpzLUrxNyFPJuFfmKV0BazCKi0GYCiqkQilakYjDuEAGnWt/piKaeiv8+1JsUvIm5lazNI+x7BDyKoq1OC7uELX2ZVim5BHMzEI9+OEUAn6oQbfwRBdb3uKXWhEPyFv7sPVuBN7hLy6EjWYjA/rHgXs7I0ixmKokEdDcA8OYQtOCnnQF7dhHhbgevTTfTbjyVSLlzFSyKuBeAL34UHUC1lUjS/hFoxDtZ7zklNSLdZjipB3w7AWr2IhVuKY0FP6YjhG4UaMRB/ZsMEpqRZ/QBOqhErweSzD41iLtdiIBqErJBiMT+Ez+CyG4VpUyZ5mrHdKqsVRbMBooZJU43bcrsVB/BV78V80olk2rUe91g1Fre6ToAp9MQAX4zJcjkG4SH5sxGGnpM54HqOFSnYJRmCEfKjXuo9hutAea5yWOGMlikIIlayIZ52WOGM/XhRCqGSbsM9piXMtEUKoZEudJXGuVTgghFCJDuNXzpI4VyOeEkKoRE/hqLMk3m8BmoUQKkkzFniPxPvtR50QQiV5Fnu8R+L8HkazEEIlKOIh55E4vwYsFkKoBMux3XkkWjcbh4UQ8uwYvq8Vida9hR8KIeTZPOzVikTb5mObEEIe7caPtCHRtndRg6IQQp4UMRkFbUhc2CbMF0LIk5/h9y4gUZrv4TUhhDzYgSlKkCjNCdyBI0IIWdaICSgoQaJ0O3EvTgohZNUkbFOiRHmewSNCCFn0YzytDInyzcAKIYQsWY0pypQoXxF347dCCFmwARNRVKZE+xRwK14RQuhJWzAeBe2QaL+jGINXhBB6whZ8EQe1U6JjDmE0fiOE0J024Ca8owMSHXcU4/ELIYTu8BzG4KAOSnWOAu7Cm3gQvYQQusI8TEdRJ0h1niJmYCsWo1oIobMcRw3qdKJU53sGW7EC1wohdNR23IE3dLJE19iJ6zAXRSGE9jiJhfgC3tAFUl2ngGlYhUW4RgihVLtRgxd1oVTXexnD8G3MwIeEEFrTiDl4FI26WKp7NOFRLMNs3I0qIYT/a0YdZmCfbpLqXv/BZMzFA/gGqoTwwdWMFXgE23WzVM94E5PwEGoxCR8RwgfHQSzD42jQQ1I9ay8ewCxMwNdxExIhVJ6T2Iil+CWO6WGpbChgOZZjEG7DVzAKVULIr3exCWuwCntlSCp79uMxPIZqXI9RuA7D0U8I2VXA63gJ67Eeh2VUKtuO4AW8oEVvXIVrcBWuxGBcjksxEP1wkRA6XxMacRgH8Db+ib+jAduxA81y4n/E6cqsB6CXqwAAAABJRU5ErkJggg==",deepLink:"umami://",downloadLink:"https://umamiwallet.com/#download"},{key:"atomex_desktop",name:"Atomex Wallet",shortName:"Atomex",color:"",logo:"data:image/png;base64,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",deepLink:"atomex://",downloadLink:"https://atomex.me/"}],dl=[{key:"metamask_tezos_web",name:"MetaMask",shortName:"MetaMask",color:"",logo:"data:image/png;base64,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",links:{mainnet:"https://metamask.tezos.com/",ghostnet:"https://metamask.tezos.com/",weeklynet:"https://metamask.tezos.com/",dailynet:"https://metamask.tezos.com/",delphinet:"https://metamask.tezos.com/",edonet:"https://metamask.tezos.com/",florencenet:"https://metamask.tezos.com/",granadanet:"https://metamask.tezos.com/",hangzhounet:"https://metamask.tezos.com/",ithacanet:"https://metamask.tezos.com/",jakartanet:"https://metamask.tezos.com/",kathmandunet:"https://metamask.tezos.com/",limanet:"https://metamask.tezos.com/",mumbainet:"https://metamask.tezos.com/",nairobinet:"https://metamask.tezos.com/",oxfordnet:"https://metamask.tezos.com/",parisnet:"https://metamask.tezos.com/"}},{key:"kukai_web",name:"Kukai Wallet",shortName:"Kukai",color:"",logo:"data:image/png;base64,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",supportedInteractionStandards:["wallet_connect"],links:{mainnet:"https://wallet.kukai.app",ghostnet:"https://ghostnet.kukai.app",weeklynet:"https://weeklynet.kukai.app",dailynet:"https://dailynet.kukai.app",delphinet:"https://testnet.kukai.app",edonet:"https://edonet.kukai.app",florencenet:"https://florencenet.kukai.app",granadanet:"https://granadanet.kukai.app",hangzhounet:"https://hangzhounet.kukai.app",ithacanet:"https://ithacanet.kukai.app",jakartanet:"https://jakartanet.kukai.app",kathmandunet:"https://kathmandunet.kukai.app",limanet:"https://limanet.kukai.app",mumbainet:"https://mumbainet.kukai.app",nairobinet:"https://nairobinet.kukai.app",oxfordnet:"https://oxfordnet.kukai.app",parisnet:"https://parisnet.kukai.app"}},{key:"tzsafe",name:"TzSafe",shortName:"TzSafe",color:"rgb(235, 52, 72)",logo:"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNjAwIiBoZWlnaHQ9IjYwMCIgdmlld0JveD0iMCAwIDYwMCA2MDAiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxyZWN0IHdpZHRoPSI2MDAiIGhlaWdodD0iNjAwIiBmaWxsPSIjRjE0RDVBIi8+CjxwYXRoIGQ9Ik0zNDEuMTY4IDQxMi41Mkg1MDkuMjkxVjQ0Ni43QzUwOS4yOTEgNDU0LjYzMSA1MTUuNzEzIDQ2MS4wNTEgNTIzLjY0NyA0NjEuMDUxQzUzMS41ODEgNDYxLjA1MSA1MzguMDA0IDQ1NC42MzEgNTM4LjAwNCA0NDYuN1YzOTguMTY5QzUzOC4wMDQgMzkwLjIzNyA1MzEuNTgxIDM4My44MTcgNTIzLjY0NyAzODMuODE3SDM0MC44ODRDMzM3Ljc2OCAzNTUuOTY0IDMyNi4zMzkgMzMwLjU2NSAzMDkuMjQzIDMxMC4wNzZMMzYxLjA5NyAyNTguMjRMMzk5LjkxNiAyOTcuMDQ2QzQwMi43NSAyOTkuODc5IDQwNi40MzMgMzAxLjI5NSA0MTAuMTE3IDMwMS4yOTVDNDEzLjgwMSAzMDEuMjk1IDQxNy40ODQgMjk5Ljg3OSA0MjAuMzE4IDI5Ny4wNDZDNDI1Ljg5IDI5MS40NzYgNDI1Ljg5IDI4Mi4zMTcgNDIwLjMxOCAyNzYuNzQ2TDM4MS40OTggMjM3Ljk0TDQyOS4xOTYgMTkwLjI1OUw0NjguMDE2IDIyOS4wNjVDNDczLjU4OCAyMzQuNjM2IDQ4Mi43NSAyMzQuNjM2IDQ4OC4zMjIgMjI5LjA2NUM0OTMuODk1IDIyMy40OTQgNDkzLjg5NSAyMTQuMzM2IDQ4OC4zMjIgMjA4Ljc2NUw0MzkuMzk3IDE1OS44NTZDNDMzLjgyNCAxNTQuMjg2IDQyNC42NjIgMTU0LjI4NiA0MTkuMDkgMTU5Ljg1NkwzNTEuMDg1IDIyNy44MzhMMjg4LjY1MyAyODkuOTY1QzI2OC4wNjMgMjczLjcyNSAyNDIuNzUgMjYzLjE1IDIxNS4xNyAyNjAuNjAxVjE5Ni40OTFIMjMwLjI4MkMyMzguMjE2IDE5Ni40OTEgMjQ0LjYzOSAxOTAuMDcgMjQ0LjYzOSAxODIuMTM5QzI0NC42MzkgMTc0LjIwOCAyMzguMjE2IDE2Ny43ODcgMjMwLjI4MiAxNjcuNzg3SDIxNS4xN1YxNDIuMTA2SDI0MC40ODNDMjQ4LjQxNyAxNDIuMTA2IDI1NC44NCAxMzUuNjg1IDI1NC44NCAxMjcuNzU0QzI1NC44NCAxMTkuODIzIDI0OC40MTcgMTEzLjQwMiAyNDAuNDgzIDExMy40MDJIMjE1LjE3Vjg5LjcwMzJIMjcwLjA0NkMyNzcuOTggODkuNzAzMiAyODQuNDAzIDgzLjI4MjggMjg0LjQwMyA3NS4zNTE2QzI4NC40MDMgNjcuNDIwNSAyNzcuOTggNjEgMjcwLjA0NiA2MUgyMDAuODE0QzE5Mi44OCA2MSAxODYuNDU3IDY3LjQyMDUgMTg2LjQ1NyA3NS4zNTE2VjI2MC45NzhDMTE2Ljk0MSAyNjguOTEgNjIuODIwOCAzMjguMDE2IDYyLjgyMDggMzk5LjQ5QzYyLjgyMDggNDc2LjM0NyAxMjUuNDQyIDUzOC45NDcgMjAyLjMyNSA1MzguOTQ3QzI3NC44NjMgNTM4Ljk0NyAzMzQuNTU2IDQ4My4zMzQgMzQxLjE2OCA0MTIuNTJaTTIwMi4zMjUgNTEwLjI0M0MxNDEuMjE1IDUxMC4yNDMgOTEuNTMzOSA0NjAuNTc5IDkxLjUzMzkgMzk5LjQ5QzkxLjUzMzkgMzM4LjQwMiAxNDEuMjE1IDI4OC43MzggMjAyLjMyNSAyODguNzM4QzI2Mi43NzQgMjg4LjczOCAzMTIuMDc3IDMzNy40NTcgMzEzLjExNiAzOTcuNjAyQzMxMy4xMTYgMzk3Ljc5MSAzMTMuMTE2IDM5Ny45OCAzMTMuMTE2IDM5OC4wNzRDMzEzLjExNiAzOTguMzU3IDMxMy4xMTYgMzk4LjY0MSAzMTMuMTE2IDM5OC45MjRDMzEzLjExNiAzOTkuMTEzIDMxMy4xMTYgMzk5LjMwMiAzMTMuMTE2IDM5OS4zOTZDMzEzLjAyMSA0NjAuNTc5IDI2My4zNCA1MTAuMjQzIDIwMi4zMjUgNTEwLjI0M1oiIGZpbGw9IndoaXRlIi8+CjxwYXRoIGQ9Ik0yMDcuMjM2IDQ4Ny4zQzIxMS4yOTggNDg1LjYgMjE0Ljk4MSA0ODMuMDUxIDIxOC4yODcgNDc5Ljg0MUwyMTguNTcgNDc5LjY1MkwyMTguNzU5IDQ3OS40NjNMMjE4Ljg1NCA0NzkuMzY5TDIxOS4wNDMgNDc5LjE4TDIxOS4xMzcgNDc5LjA4NUwyMTkuNjA5IDQ3OC42MTNMMjE5LjcwNCA0NzguNTE5TDIxOS44OTMgNDc4LjMzTDIxOS45ODcgNDc4LjIzNkwyMjAuMTc2IDQ3OC4wNDdMMjIwLjI3IDQ3Ny45NTJDMjIzLjI5MyA0NzQuNzQyIDIyNi4wMzIgNDcxLjE1NCAyMjguMzkzIDQ2Ny4xODlMMjI5Ljk5OSA0NjcuMDk0QzIzMS40MTYgNDY3IDIzMi43MzggNDY2LjcxNiAyMzQuMDYgNDY2LjI0NEMyMzMuMTE2IDQ2OC4wMzggMjMyLjA3NyA0NjkuODMyIDIzMC45NDMgNDcxLjYyNkMyMjkuNzE2IDQ3My42MDkgMjMxLjY5OSA0NzUuOTY5IDIzMy43NzcgNDc1LjEyTDI2MS4xNjggNDYzLjk3OEMyNjQuNjYyIDQ2Mi41NjIgMjY3LjExOCA0NjAuMTA3IDI2OC41MzUgNDU2LjYxNEMyNzAuMTQxIDQ1Mi41NTQgMjcwLjk5MSA0NDguMTE2IDI3MS4wODUgNDQzLjQ4OVY0NDMuMjA2VjQ0Mi45MjNWNDQyLjgyOVY0NDIuNTQ1VjQ0Mi40NTFWNDQxLjY5NlY0NDEuNTA3VjQ0MS4zMThWNDQxLjIyM1Y0NDEuMDM1VjQ0MC45NEMyNzAuOTkxIDQzNi41OTcgMjcwLjMzIDQzMi4wNjUgMjY5LjE5NiA0MjcuNjI3TDI3MC4yMzUgNDI2LjRDMjcxLjE4IDQyNS4zNjEgMjcxLjkzNSA0MjQuMjI4IDI3Mi41MDIgNDIzLjAwMUMyNzMuMTYzIDQyNC45ODMgMjczLjYzNSA0MjYuOTY2IDI3NC4xMDggNDI4Ljk0OUMyNzQuNTggNDMxLjIxNSAyNzcuNjk3IDQzMS40OTggMjc4LjY0MSA0MjkuNDIxTDI5MC4xNjQgNDAyLjIyOUMyOTEuNTgxIDM5OC43MzUgMjkxLjU4MSAzOTUuMjQyIDI5MC4xNjQgMzkxLjc0OEMyODguNDY0IDM4Ny42ODggMjg1LjkxNCAzODQuMDA2IDI4Mi43MDMgMzgwLjcwMUwyODIuNTE0IDM4MC40MThMMjgyLjMyNSAzODAuMjI5TDI4Mi4wNDEgMzgwLjA0TDI4MS44NTMgMzc5Ljg1MUwyODEuNzU4IDM3OS43NTdMMjgxLjI4NiAzNzkuMjg1TDI4MS4xOTEgMzc5LjE5TDI4MS4wMDIgMzc5LjAwMkwyODAuOTA4IDM3OC45MDdMMjgwLjcxOSAzNzguNzE4TDI4MC42MjUgMzc4LjYyNEMyNzcuNDEzIDM3NS42MDMgMjczLjgyNCAzNzIuODY0IDI2OS44NTcgMzcwLjU5OEwyNjkuNzYzIDM2OC45OTNDMjY5LjY2OCAzNjcuNTc3IDI2OS4zODUgMzY2LjI1NSAyNjguOTEzIDM2NS4wMjhDMjcwLjcwNyAzNjUuOTcyIDI3Mi41MDIgMzY3LjAxIDI3NC4yOTYgMzY4LjE0M0MyNzYuMjggMzY5LjM3MSAyNzguNjQxIDM2Ny4zODggMjc3Ljc5MSAzNjUuMzExTDI2Ni42NDYgMzM3LjkzQzI2NS4yMjkgMzM0LjQzNiAyNjIuNzczIDMzMS45ODEgMjU5LjI3OSAzMzAuNTY1QzI1NS4yMTcgMzI4Ljk2IDI1MC43NzggMzI4LjExIDI0Ni4xNSAzMjguMDE2SDI0NS44NjdIMjQ1LjU4M0gyNDUuNDg5SDI0NS4yMDZIMjQ1LjExMUgyNDQuMzU1SDI0NC4xNjdIMjQzLjk3OEgyNDMuODgzSDI0My42OTRIMjQzLjZDMjM5LjI1NSAzMjguMTEgMjM0LjcyMiAzMjguNzcxIDIzMC4yODIgMzI5LjkwNEwyMjkuMDU0IDMyOC44NjVDMjI4LjAxNSAzMjcuOTIxIDIyNi44ODIgMzI3LjE2NiAyMjUuNjU0IDMyNi41OTlDMjI3LjYzOCAzMjUuOTM4IDIyOS42MjEgMzI1LjQ2NiAyMzEuNjA1IDMyNC45OTRDMjMzLjg3MSAzMjQuNTIyIDIzNC4xNTUgMzIxLjQwNiAyMzIuMDc3IDMyMC40NjJMMjA0Ljg3NSAzMDguOTQzQzIwMS4zOCAzMDcuNTI3IDE5Ny44ODYgMzA3LjUyNyAxOTQuMzkxIDMwOC45NDNDMTkwLjMzIDMxMC42NDMgMTg2LjY0NiAzMTMuMTkyIDE4My4zNCAzMTYuNDAyTDE4My4wNTcgMzE2LjU5MUwxODIuODY4IDMxNi43OEwxODIuNzczIDMxNi44NzRMMTgyLjU4NSAzMTcuMDYzTDE4Mi40OSAzMTcuMTU3TDE4MS45MjMgMzE3LjcyNEwxODEuODI5IDMxNy44MThMMTgxLjY0IDMxOC4wMDdMMTgxLjU0NiAzMTguMTAyTDE4MS4zNTcgMzE4LjI5TDE4MS4yNjIgMzE4LjM4NUMxNzguMjQgMzIxLjU5NSAxNzUuNTAxIDMyNS4xODMgMTczLjIzNCAzMjkuMTQ5TDE3MS42MjggMzI5LjI0M0MxNzAuMjExIDMyOS4zMzcgMTY4Ljg4OSAzMjkuNjIxIDE2Ny41NjcgMzMwLjA5M0MxNjguNTExIDMyOC4yOTkgMTY5LjU1IDMyNi41MDUgMTcwLjY4NCAzMjQuNzExQzE3MS45MTIgMzIyLjcyOCAxNjkuOTI4IDMyMC4zNjggMTY3Ljg1IDMyMS4yMTdMMTQwLjQ1OSAzMzIuMzU5QzEzNi45NjUgMzMzLjc3NSAxMzQuNTA5IDMzNi4yMyAxMzMuMDkyIDMzOS43MjNDMTMxLjQ4NyAzNDMuNzgzIDEzMC42MzcgMzQ4LjIyMSAxMzAuNTQyIDM1Mi44NDhWMzUzLjEzMVYzNTMuNDE0VjM1My41MDlWMzUzLjc5MlYzNTMuODg2VjM1NC42NDJWMzU0LjgzVjM1NS4wMTlWMzU1LjExNFYzNTUuMzAzVjM1NS4zOTdDMTMwLjYzNyAzNTkuNzQgMTMxLjI5OCAzNjQuMjcyIDEzMi40MzEgMzY4LjcxTDEzMS4zOTIgMzY5LjkzN0MxMzAuNDQ4IDM3MC45NzYgMTI5LjY5MiAzNzIuMTA5IDEyOS4xMjUgMzczLjMzNkMxMjguNDY0IDM3MS4zNTQgMTI3Ljk5MiAzNjkuMzcxIDEyNy41MiAzNjcuMzg4QzEyNy4wNDcgMzY1LjEyMiAxMjMuOTMxIDM2NC44MzkgMTIyLjk4NiAzNjYuOTE2TDExMS40NjMgMzk0LjEwOUMxMTAuMDQ2IDM5Ny42MDIgMTEwLjA0NiA0MDEuMDk2IDExMS40NjMgNDA0LjU4OUMxMTMuMTYzIDQwOC42NDkgMTE1LjcxMyA0MTIuMzMxIDExOC45MjUgNDE1LjYzNkwxMTkuMTEzIDQxNS45MTlMMTE5LjMwMiA0MTYuMTA4TDExOS4zOTcgNDE2LjIwM0wxMTkuNTg2IDQxNi4zOTFMMTE5LjY4IDQxNi40ODZMMTIwLjE1MiA0MTYuOTU4TDEyMC4yNDcgNDE3LjA1MkwxMjAuNDM2IDQxNy4yNDFMMTIwLjUzIDQxNy4zMzZMMTIwLjcxOSA0MTcuNTI0TDEyMC44MTQgNDE3LjYxOUMxMjQuMDI1IDQyMC42NCAxMjcuNjE0IDQyMy4zNzggMTMxLjU4MSA0MjUuNjQ0TDEzMS42NzUgNDI3LjI0OUMxMzEuNzcgNDI4LjY2NiAxMzIuMDUzIDQyOS45ODggMTMyLjUyNiA0MzEuMjE1QzEzMC43MzEgNDMwLjI3MSAxMjguOTM2IDQyOS4yMzIgMTI3LjE0MiA0MjguMDk5QzEyNS4xNTggNDI2Ljg3MiAxMjIuNzk3IDQyOC44NTUgMTIzLjY0NyA0MzAuOTMyTDEzNC43OTIgNDU4LjMxM0MxMzYuMjA5IDQ2MS44MDcgMTM4LjY2NSA0NjQuMjYyIDE0Mi4xNiA0NjUuNjc4QzE0Ni4yMjEgNDY3LjI4MyAxNTAuNjYgNDY4LjEzMyAxNTUuMjg4IDQ2OC4yMjdIMTU1LjU3MkgxNTUuODU1SDE1NS45NDlIMTU2LjIzM0gxNTYuMzI3SDE1Ny4wODNIMTU3LjI3MkgxNTcuNDYxSDE1Ny41NTVIMTU3Ljc0NEgxNTcuODM4QzE2Mi4xODMgNDY4LjEzMyAxNjYuNzE3IDQ2Ny40NzIgMTcxLjE1NiA0NjYuMzM5TDE3Mi4zODQgNDY3LjM3N0MxNzMuNDIzIDQ2OC4zMjIgMTc0LjU1NiA0NjkuMDc3IDE3NS43ODQgNDY5LjY0M0MxNzMuODAxIDQ3MC4zMDQgMTcxLjgxNyA0NzAuNzc2IDE2OS43MzkgNDcxLjI0OUMxNjcuNDcyIDQ3MS43MjEgMTY3LjE4OSA0NzQuODM2IDE2OS4yNjcgNDc1Ljc4MUwxOTYuNDY5IDQ4Ny4zQzIwMC4yNDcgNDg4LjgxIDIwMy43NDIgNDg4LjgxIDIwNy4yMzYgNDg3LjNaTTI0My42IDQzMy40ODFWNDMzLjc2NFY0MzMuOTUzQzI0My42IDQzMy45NTMgMjQzLjYgNDM0LjA0OCAyNDMuNiA0MzQuMTQyVjQzNC4yMzZDMjQzLjUwNSA0MzkuNjE4IDI0Mi43NSA0NDQuNjIzIDI0MS40MjggNDQ4Ljk2NlY0NDkuMDZMMjQxLjA1IDQ1MC4wOTlWNDUwLjE5M0wyNDAuNzY2IDQ1MC44NTRDMjM5LjkxNiA0NTMuMTIgMjM4Ljg3NyA0NTUuMTAzIDIzNy42NDkgNDU2Ljk5MUMyMzcuMDgzIDQ1Ny45MzYgMjM2LjQyMiA0NTguNzg1IDIzNS42NjYgNDU5LjYzNUMyMzQuMzQ0IDQ2MS4xNDYgMjMyLjgzMiA0NjIuMDkgMjMwLjk0MyA0NjIuMzczQzIzMC40NzEgNDYyLjQ2OCAyMzAuMDkzIDQ2Mi41NjIgMjI5LjYyMSA0NjIuNTYyTDIyMC40NTkgNDYzLjAzNEMyMTguMjg3IDQ2My4xMjkgMjE2LjM5OCA0NjIuMDkgMjE1LjM1OSA0NjAuMjAyQzIxNC4zMiA0NTguMzEzIDIxNC40MTUgNDU2LjA0NyAyMTUuNjQyIDQ1NC4xNTlMMjE1LjczNyA0NTQuMDY0TDIxNS44MzEgNDUzLjk3TDIxNi4zOTggNDUzLjEyQzIxNi4zOTggNDUzLjEyIDIxNi4zOTggNDUzLjAyNiAyMTYuNDkyIDQ1My4wMjZMMjE2Ljg3IDQ1Mi4zNjVDMjE2Ljg3IDQ1Mi4zNjUgMjE2Ljg3IDQ1Mi4yNyAyMTYuOTY1IDQ1Mi4yN0wyMTcuMTU0IDQ1MS45ODdMMjE3LjI0OCA0NTEuODkzTDIxNy4zNDMgNDUxLjcwNEwyMTcuNDM3IDQ1MS42MDlMMjE3LjYyNiA0NTEuMzI2QzIyMC4xNzYgNDQ2Ljg4OSAyMjEuODc2IDQ0MS45NzkgMjIzLjAxIDQzNi4xMjVDMjIzLjEwNCA0MzUuNjUzIDIyMy4xOTggNDM1LjE4MSAyMjMuMTk4IDQzNC44MDNMMjIzLjI5MyA0MzQuMDQ4QzIyMy4yOTMgNDMzLjk1MyAyMjMuMjkzIDQzMy45NTMgMjIzLjI5MyA0MzMuODU5QzIyMy4yOTMgNDMzLjY3IDIyMy4yOTMgNDMzLjU3NiAyMjMuMzg3IDQzMy4zODdDMjIzLjc2NSA0MzAuNjQ5IDIyNC4wNDkgNDI3LjcyMiAyMjQuMTQzIDQyNC43QzIyNC4yMzcgNDIxLjIwNyAyMjYuODgyIDQxOC4zNzQgMjMwLjM3NyA0MTguMTg1TDIzNS4wMDUgNDE3LjkwMkMyMzUuMDk5IDQxNy45MDIgMjM1LjE5NCA0MTcuOTAyIDIzNS4yODggNDE3LjkwMkMyMzYuNjExIDQxNy45MDIgMjM3LjgzOCA0MTguMzc0IDIzOC45NzIgNDE5LjMxOEMyNDIuMDg5IDQyMi4yNDUgMjQzLjY5NCA0MjguNjY2IDI0My43ODkgNDMyLjA2NVY0MzIuMzQ4VjQzMi42MzFWNDMyLjcyNkwyNDMuNiA0MzMuNDgxWk0yNjYuMTc0IDQwNi44NTVMMjY2LjM2MyA0MDcuMjMzQzI2Ny40MDIgNDA5LjQwNCAyNjguMDYzIDQxMS42NyAyNjguNTM1IDQxMy44NDJDMjY4LjcyNCA0MTQuODgxIDI2OC45MTMgNDE1LjkxOSAyNjkuMDA3IDQxNi45NThDMjY5LjEwMiA0MTguOTQxIDI2OC43MjQgNDIwLjY0IDI2Ny42ODUgNDIyLjI0NUMyNjcuNDAyIDQyMi42MjMgMjY3LjIxMyA0MjMuMDAxIDI2Ni44MzUgNDIzLjI4NEwyNjAuNzkgNDMwLjA4MkMyNTkuMzczIDQzMS42ODcgMjU3LjI5NSA0MzIuMzQ4IDI1NS4yMTcgNDMxLjc4MkMyNTMuMTM5IDQzMS4yMTUgMjUxLjUzNCA0MjkuNTE2IDI1MS4xNTYgNDI3LjM0NFY0MjcuMDYxVjQyNi45NjZWNDI2Ljc3N1Y0MjYuNjgzTDI1MS4wNjIgNDI2LjRWNDI2LjMwNUwyNTAuODczIDQyNS4yNjdDMjUwLjg3MyA0MjUuMjY3IDI1MC44NzMgNDI1LjE3MiAyNTAuODczIDQyNS4wNzhMMjUwLjY4NCA0MjQuMzIzVjQyNC4yMjhMMjUwLjU4OSA0MjMuODVDMjQ5LjI2NyA0MTguOTQxIDI0NyA0MTQuMjIgMjQzLjYgNDA5LjMxQzI0My4zMTcgNDA4LjkzMiAyNDMuMDMzIDQwOC41NTUgMjQyLjg0NCA0MDguMTc3TDI0Mi4zNzIgNDA3LjUxNkwyNDIuMjc4IDQwNy40MjJDMjQyLjE4MyA0MDcuMzI3IDI0Mi4wODkgNDA3LjEzOCAyNDEuOTk0IDQwNy4wNDRDMjQwLjI5NCA0MDQuODcyIDIzOC40MDUgNDAyLjYwNiAyMzYuMzI3IDQwMC4zNEMyMzMuOTY2IDM5Ny43OTEgMjMzLjg3MSAzOTMuOTIgMjM2LjEzOCAzOTEuMjc2TDIzNi4yMzMgMzkxLjE4MkwyMzkuMjU1IDM4Ny43ODNDMjM5LjM1IDM4Ny42ODggMjM5LjM1IDM4Ny42ODggMjM5LjQ0NCAzODcuNTk0QzI0MC4zODkgMzg2LjY1IDI0MS41MjIgMzg2LjA4MyAyNDMuMDMzIDM4Ni4wODNDMjQ3LjI4MyAzODUuODk0IDI1My4wNDUgMzg5LjM4OCAyNTUuNTAxIDM5MS43NDhMMjU1Ljg3OCAzOTIuMTI2TDI1NS45NzMgMzkyLjIyTDI1Ni45MTcgMzkzLjE2NEMyNjAuNjk2IDM5Ny4wMzYgMjYzLjcxOCA0MDEuMDk2IDI2NS43OTYgNDA1LjA2MUwyNjUuODkgNDA1LjE1NkwyNjYuNDU3IDQwNi4zODNDMjY2LjA3OSA0MDYuNzYxIDI2Ni4wNzkgNDA2Ljc2MSAyNjYuMTc0IDQwNi44NTVaTTIzNS4zODMgMzU1LjM5N0MyMzUuMzgzIDM1NS4zOTcgMjM1LjQ3NyAzNTUuMzk3IDIzNS41NzIgMzU1LjM5N0gyMzYuMDQ0SDIzNi4yMzNIMjM2LjMyN0gyMzYuNTE2SDIzNi43MDVIMjM2Ljc5OUgyMzYuOTg4QzI0Mi4zNzIgMzU1LjQ5MSAyNDcuMzc4IDM1Ni4yNDcgMjUxLjcyMyAzNTcuNTY5SDI1MS44MTdMMjUyLjg1NiAzNTcuOTQ2SDI1Mi45NTFMMjUzLjcwNiAzNTguMjNDMjU1Ljk3MyAzNTkuMDc5IDI1Ny45NTYgMzYwLjExOCAyNTkuNzUxIDM2MS4zNDVDMjYwLjY5NiAzNjEuOTEyIDI2MS41NDYgMzYyLjU3MyAyNjIuMzk2IDM2My4zMjhDMjYzLjkwNyAzNjQuNjUgMjY0Ljg1MSAzNjYuMTYxIDI2NS4xMzUgMzY4LjA0OUMyNjUuMjI5IDM2OC41MjEgMjY1LjMyNCAzNjguODk5IDI2NS4zMjQgMzY5LjM3MUwyNjUuNzk2IDM3OC41M0MyNjUuODkgMzgwLjcwMSAyNjQuODUxIDM4Mi41OSAyNjIuOTYyIDM4My42MjhDMjYxLjA3MyAzODQuNjY3IDI1OC44MDYgMzg0LjU3MiAyNTYuOTE3IDM4My4zNDVMMjU2LjgyMyAzODMuMjVDMjU2LjgyMyAzODMuMjUgMjU2LjcyOSAzODMuMTU2IDI1Ni42MzQgMzgzLjE1NkwyNTYuNDQ1IDM4My4wNjJDMjU2LjQ0NSAzODMuMDYyIDI1Ni4zNTEgMzgzLjA2MiAyNTYuMzUxIDM4Mi45NjdMMjU2LjA2NyAzODIuNzc4TDI1NS44NzggMzgyLjY4NEwyNTUuNzg0IDM4Mi41OUwyNTUuMjE3IDM4Mi4yMTJMMjU1LjEyMyAzODIuMTE3TDI1NC43NDUgMzgxLjkyOUgyNTQuNjUxTDI1NC40NjIgMzgxLjgzNEwyNTQuMzY3IDM4MS43NEwyNTQuMDg0IDM4MS41NTFDMjQ5LjY0NSAzNzkuMDAyIDI0NC43MzMgMzc3LjMwMiAyMzguODc3IDM3Ni4xNjlDMjM4LjQwNSAzNzYuMDc1IDIzNy45MzMgMzc1Ljk4IDIzNy41NTUgMzc1Ljk4TDIzNi43OTkgMzc1Ljg4NkMyMzYuNzA1IDM3NS44ODYgMjM2LjcwNSAzNzUuODg2IDIzNi42MTEgMzc1Ljg4NkMyMzYuNDIyIDM3NS44ODYgMjM2LjMyNyAzNzUuODg2IDIzNi4xMzggMzc1Ljc5MUMyMzMuMzk5IDM3NS40MTQgMjMwLjQ3MSAzNzUuMTMgMjI3LjQ0OSAzNzUuMDM2QzIyMy45NTQgMzc0Ljk0MiAyMjEuMTIxIDM3Mi4yOTggMjIwLjkzMiAzNjguODA0TDIyMC42NDggMzY0LjA4M0MyMjAuNjQ4IDM2My45ODkgMjIwLjY0OCAzNjMuODk1IDIyMC42NDggMzYzLjhDMjIwLjY0OCAzNjIuNDc4IDIyMS4xMjEgMzYxLjI1MSAyMjIuMDY1IDM2MC4xMThDMjI0Ljk5MyAzNTYuOTA4IDIzMS40MTYgMzU1LjM5NyAyMzQuOTEgMzU1LjMwM0wyMzUuMzgzIDM1NS4zOTdaTTE5NC41OCAzNDMuNzg0TDE5NC45NTggMzQzLjQwNkMxOTQuOTU4IDM0My40MDYgMTk1LjA1MiAzNDMuNDA2IDE5NS4wNTIgMzQzLjMxMUwxOTUuNTI0IDM0Mi44MzlDMTk1LjUyNCAzNDIuODM5IDE5NS41MjQgMzQyLjgzOSAxOTUuNjE5IDM0Mi43NDVMMTk2LjA5MSAzNDIuMjczQzE5OS45NjQgMzM4LjQ5NiAyMDQuMDI1IDMzNS40NzUgMjA4LjA4NiAzMzMuMzk3TDIwOS4zMTQgMzMyLjczN0MyMDkuMzE0IDMzMi43MzcgMjA5LjQwOSAzMzIuNzM3IDIwOS40MDkgMzMyLjY0MkwyMDkuNzg2IDMzMi40NTNDMjExLjk1OSAzMzEuNDE1IDIxNC4yMjYgMzMwLjc1NCAyMTYuMzk4IDMzMC4yODJDMjE3LjQzNyAzMzAuMDkzIDIxOC40NzYgMzI5LjkwNCAyMTkuNTE1IDMyOS44MUMyMjEuNDk4IDMyOS43MTUgMjIzLjE5OCAzMzAuMDkzIDIyNC44MDQgMzMxLjEzMUMyMjUuMTgyIDMzMS40MTUgMjI1LjU2IDMzMS42MDQgMjI1Ljg0MyAzMzEuOTgxTDIzMi42NDQgMzM4LjAyNEMyMzQuMjQ5IDMzOS40NCAyMzQuOTEgMzQxLjUxNyAyMzQuMzQ0IDM0My41OTVDMjMzLjc3NyAzNDUuNzY2IDIzMi4wNzcgMzQ3LjI3NyAyMjkuOTA0IDM0Ny42NTVIMjI5LjcxNkgyMjkuNjIxSDIyOS40MzJDMjI5LjMzOCAzNDcuNjU1IDIyOS4zMzggMzQ3LjY1NSAyMjkuMjQzIDM0Ny42NTVIMjI5LjA1NEMyMjguOTYgMzQ3LjY1NSAyMjguOTYgMzQ3LjY1NSAyMjguODY2IDM0Ny42NTVMMjI3LjgyNyAzNDcuOTM4SDIyNy43MzJMMjI3LjA3MSAzNDguMTI3SDIyNi45NzdMMjI2LjU5OSAzNDguMjIxQzIyMS42ODcgMzQ5LjU0MyAyMTYuOTY1IDM1MS45MDMgMjEyLjE0OCAzNTUuMTE0QzIxMi4xNDggMzU1LjExNCAyMTIuMDUzIDM1NS4xMTQgMjEyLjA1MyAzNTUuMjA4QzIxMS42NzUgMzU1LjQ5MSAyMTEuMjk4IDM1NS43NzUgMjExLjAxNCAzNTUuOTYzTDIxMC45MiAzNTYuMDU4QzIxMC45MiAzNTYuMDU4IDIxMC44MjUgMzU2LjA1OCAyMTAuODI1IDM1Ni4xNTJMMjEwLjM1MyAzNTYuNTNMMjEwLjI1OSAzNTYuNjI0QzIxMC4xNjQgMzU2LjcxOSAyMDkuOTc1IDM1Ni44MTMgMjA5Ljg4MSAzNTYuOTA4QzIwNy43MDkgMzU4LjYwNyAyMDUuNDQyIDM2MC40MDEgMjAzLjE3NSAzNjIuNTczQzIwMC42MjUgMzY0LjkzMyAxOTYuNzUyIDM2NS4wMjggMTk0LjEwOCAzNjIuNzYyTDE5MC42MTMgMzU5Ljc0QzE5MC41MTggMzU5LjY0NiAxOTAuNTE4IDM1OS42NDYgMTkwLjQyNCAzNTkuNTUxQzE4OS40NzkgMzU4LjYwNyAxODguOTEzIDM1Ny40NzQgMTg4LjkxMyAzNTUuOTYzQzE4OC43MjQgMzUxLjk5OCAxOTIuMjE5IDM0Ni4zMzMgMTk0LjU4IDM0My43ODRaTTE4Ny42ODUgMzYzLjUxN0wxOTEuMjc0IDM2Ni42MzNDMTkzLjM1MiAzNjguNDI3IDE5NS45OTcgMzY5LjM3MSAxOTguNjQxIDM2OS4zNzFDMjAxLjQ3NSAzNjkuMzcxIDIwNC4yMTQgMzY4LjMzMiAyMDYuNDgxIDM2Ni4yNTVDMjA4LjU1OSAzNjQuMjcyIDIxMC43MzEgMzYyLjQ3OCAyMTIuNzE0IDM2MC45NjhDMjEzLjc1MyAzNjEuODE3IDIxNC44ODcgMzYyLjU3MyAyMTYuMTE1IDM2My4wNDVDMjE2LjExNSAzNjMuNTE3IDIxNi4xMTUgMzYzLjg5NSAyMTYuMTE1IDM2NC4zNjdMMjE2LjM5OCAzNjkuMDg4QzIxNi43NzYgMzc0Ljg0NyAyMjEuNDk4IDM3OS4zNzkgMjI3LjM1NCAzNzkuNTY4QzIzMC4xODggMzc5LjY2MyAyMzIuOTI3IDM3OS44NTEgMjM1LjQ3NyAzODAuMjI5QzIzNS41NzIgMzgxLjU1MSAyMzUuODU1IDM4Mi44NzMgMjM2LjQyMiAzODQuMUMyMzYuMTM4IDM4NC4zODMgMjM1Ljc2IDM4NC42NjcgMjM1LjQ3NyAzODUuMDQ0TDIzMi40NTUgMzg4LjUzOEwyMzIuMzYgMzg4LjYzMkMyMjguNTgyIDM5Mi45NzYgMjI4Ljc3MSAzOTkuNDkgMjMyLjczOCA0MDMuNzM5QzIzNC43MjEgNDA1LjgxNiAyMzYuNDIyIDQwNy44OTQgMjM4LjAyNyA0MDkuOTcxQzIzNy4xNzcgNDExLjAxIDIzNi40MjIgNDEyLjE0MyAyMzUuOTQ5IDQxMy4zN0MyMzUuNDc3IDQxMy4zNyAyMzUuMDk5IDQxMy4zNyAyMzQuNjI3IDQxMy4zN0wyMjkuOTA0IDQxMy42NTNDMjI0LjE0MyA0MTQuMDMxIDIxOS42MDkgNDE4Ljc1MiAyMTkuNDIgNDI0LjYwNkMyMTkuMzI2IDQyNy40MzggMjE5LjEzNyA0MzAuMTc2IDIxOC43NTkgNDMyLjcyNkMyMTcuNDM3IDQzMi44MiAyMTYuMTE1IDQzMy4xMDMgMjE0Ljg4NyA0MzMuNjdDMjE0LjYwMyA0MzMuMzg3IDIxNC4zMiA0MzMuMDA5IDIxMy45NDIgNDMyLjcyNkwyMTAuNDQ4IDQyOS43MDRDMjEwLjQ0OCA0MjkuNzA0IDIxMC4zNTMgNDI5LjcwNCAyMTAuMzUzIDQyOS42MUMyMDYuMDA4IDQyNS44MzMgMTk5LjQ5MSA0MjYuMDIyIDE5NS4yNDEgNDI5Ljk4OEMxOTMuMTYzIDQzMS45NyAxOTEuMDg1IDQzMy43NjQgMTg5LjAwNyA0MzUuMjc1QzE4Ny45NjggNDM0LjQyNSAxODYuODM1IDQzMy42NyAxODUuNjA3IDQzMy4xOThDMTg1LjYwNyA0MzIuNzI2IDE4NS42MDcgNDMyLjM0OCAxODUuNjA3IDQzMS44NzZMMTg1LjMyNCA0MjcuMTU1QzE4NC45NDYgNDIxLjM5NiAxODAuMjIzIDQxNi44NjMgMTc0LjM2NyA0MTYuNjc1QzE3MS41MzQgNDE2LjU4IDE2OC43OTUgNDE2LjM5MSAxNjYuMjQ1IDQxNi4wMTRDMTY2LjE1IDQxNC42OTIgMTY1Ljg2NyA0MTMuMzcgMTY1LjMgNDEyLjE0M0MxNjUuNTgzIDQxMS44NTkgMTY1Ljk2MSA0MTEuNTc2IDE2Ni4yNDUgNDExLjE5OEwxNjkuMjY3IDQwNy43MDVMMTY5LjM2MSA0MDcuNjFDMTczLjA0NSA0MDMuMjY3IDE3Mi45NTEgMzk2Ljc1MiAxNjguOTg0IDM5Mi41MDNDMTY3IDM5MC40MjYgMTY1LjIwNiAzODguMzQ5IDE2My42OTQgMzg2LjI3MkMxNjQuNTQ0IDM4NS4yMzMgMTY1LjMgMzg0LjEgMTY1Ljc3MiAzODIuODczQzE2NS45NjEgMzgyLjg3MyAxNjYuMTUgMzgyLjg3MyAxNjYuNDMzIDM4Mi44NzNDMTY2LjYyMiAzODIuODczIDE2Ni45MDYgMzgyLjg3MyAxNjcuMDk1IDM4Mi44NzNMMTcxLjgxNyAzODIuNTlDMTc3LjU3OSAzODIuMjEyIDE4Mi4xMTIgMzc3LjQ5MSAxODIuMzAxIDM3MS42MzdDMTgyLjM5NiAzNjguODA0IDE4Mi41ODUgMzY2LjA2NiAxODIuOTYyIDM2My41MTdDMTg0LjI4NSAzNjMuNDIzIDE4NS42MDcgMzYzLjEzOSAxODYuODM1IDM2Mi41NzNDMTg3LjAyNCAzNjIuOTUgMTg3LjMwNyAzNjMuMjM0IDE4Ny42ODUgMzYzLjUxN1pNMTU4LjAyNyAzNjIuNzYyVjM2Mi40NzhWMzYyLjI5VjM2Mi4xOTVWMzYyLjEwMUMxNTguMTIyIDM1Ni43MTkgMTU4Ljg3NyAzNTEuNzE1IDE2MC4yIDM0Ny4zNzFWMzQ3LjI3N0wxNjAuNDgzIDM0Ni4yMzhDMTYwLjQ4MyAzNDYuMjM4IDE2MC41NzcgMzQ2LjE0NCAxNjAuNTc3IDM0Ni4wNUwxNjAuODYxIDM0NS4zODlDMTYxLjcxMSAzNDMuMTIzIDE2Mi43NSAzNDEuMTQgMTYzLjk3OCAzMzkuMjUxQzE2NC41NDQgMzM4LjMwNyAxNjUuMjA2IDMzNy40NTcgMTY1Ljk2MSAzMzYuNjA4QzE2Ny4yODQgMzM1LjA5NyAxNjguNzk1IDMzNC4xNTMgMTcwLjY4NCAzMzMuODdDMTcxLjE1NiAzMzMuNzc1IDE3MS41MzQgMzMzLjY4MSAxNzIuMDA2IDMzMy42ODFMMTgxLjE2OCAzMzMuMjA5QzE4My4zNCAzMzMuMTE0IDE4NS4yMjkgMzM0LjE1MyAxODYuMjY4IDMzNi4wNDFDMTg3LjMwNyAzMzcuOTMgMTg3LjIxMyAzNDAuMTk2IDE4NS45ODUgMzQyLjA4NEwxODUuODkgMzQyLjE3OEwxODUuNzk2IDM0Mi4yNzNMMTg1LjcwMSAzNDIuNDYyQzE4NS43MDEgMzQyLjQ2MiAxODUuNzAxIDM0Mi41NTYgMTg1LjYwNyAzNDIuNTU2TDE4NS40MTggMzQyLjgzOUwxODUuMjI5IDM0My4xMjNMMTg1LjEzNSAzNDMuMjE3TDE4NC45NDYgMzQzLjVDMTg0Ljk0NiAzNDMuNSAxODQuOTQ2IDM0My41OTUgMTg0Ljg1MSAzNDMuNTk1TDE4NC41NjggMzQzLjk3MkMxODQuNTY4IDM0My45NzIgMTg0LjU2OCAzNDQuMDY3IDE4NC40NzQgMzQ0LjA2N0wxODQuMzc5IDM0NC4xNjFDMTg0LjM3OSAzNDQuMTYxIDE4NC4zNzkgMzQ0LjI1NiAxODQuMjg1IDM0NC4yNTZMMTg0LjE5IDM0NC40NDRDMTg0LjE5IDM0NC40NDQgMTg0LjE5IDM0NC41MzkgMTg0LjA5NiAzNDQuNTM5TDE4My45MDcgMzQ0LjgyMkMxODEuMzU3IDM0OS4yNiAxNzkuNjU3IDM1NC4xNyAxNzguNTIzIDM2MC4wMjNDMTc4LjQyOSAzNjAuNDk2IDE3OC4zMzQgMzYwLjk2OCAxNzguMzM0IDM2MS4zNDVMMTc4LjI0IDM2Mi4xMDFDMTc4LjI0IDM2Mi4xOTUgMTc4LjI0IDM2Mi4xOTUgMTc4LjI0IDM2Mi4yOUMxNzguMjQgMzYyLjQ3OCAxNzguMjQgMzYyLjU3MyAxNzguMTQ1IDM2Mi43NjJDMTc3Ljc2OCAzNjUuNSAxNzcuNDg0IDM2OC40MjcgMTc3LjM5IDM3MS40NDhDMTc3LjI5NSAzNzQuOTQyIDE3NC42NTEgMzc3Ljc3NCAxNzEuMTU2IDM3Ny45NjNMMTY2LjQzMyAzNzguMjQ2QzE2Ni4zMzkgMzc4LjI0NiAxNjYuMjQ1IDM3OC4yNDYgMTY2LjE1IDM3OC4yNDZDMTY0LjgyOCAzNzguMjQ2IDE2My42IDM3Ny43NzQgMTYyLjQ2NiAzNzYuODNDMTU5LjM1IDM3My45MDMgMTU3Ljc0NCAzNjcuNDgzIDE1Ny42NDkgMzYzLjk4OVYzNjMuNDIzVjM2My4zMjhMMTU4LjAyNyAzNjIuNzYyWk0xMzUuNDU0IDM4OS40ODJMMTM1LjM1OSAzODkuMjkzQzEzNS4zNTkgMzg5LjI5MyAxMzUuMzU5IDM4OS4yOTMgMTM1LjM1OSAzODkuMTk5TDEzNS4yNjUgMzg5LjAxQzEzNS4yNjUgMzg5LjAxIDEzNS4yNjUgMzg5LjAxIDEzNS4yNjUgMzg4LjkxNkMxMzQuMzIgMzg2Ljc0NCAxMzMuNTY1IDM4NC41NzIgMTMzLjA5MiAzODIuNDAxQzEzMi45MDMgMzgxLjM2MiAxMzIuNzE0IDM4MC4zMjMgMTMyLjYyIDM3OS4yODVDMTMyLjUyNiAzNzcuMzAyIDEzMi45MDMgMzc1LjYwMyAxMzMuOTQyIDM3My45OTdDMTM0LjIyNiAzNzMuNjIgMTM0LjQxNSAzNzMuMjQyIDEzNC43OTIgMzcyLjk1OUwxNDAuODM3IDM2Ni4xNjFDMTQyLjI1NCAzNjQuNTU2IDE0NC4zMzIgMzYzLjg5NSAxNDYuNDEgMzY0LjQ2MUMxNDguNTgyIDM2NS4wMjggMTUwLjA5MyAzNjYuNzI3IDE1MC40NzEgMzY4Ljg5OVYzNjkuMTgyVjM2OS4yNzdWMzY5LjU2VjM2OS42NTRMMTUwLjU2NiAzNjkuOTM3VjM3MC4wMzJMMTUwLjc1NSAzNzEuMDdWMzcxLjE2NUwxNTAuOTQzIDM3MS44MjZDMTUwLjk0MyAzNzEuOTIgMTUwLjk0MyAzNzEuOTIgMTUwLjk0MyAzNzIuMDE1TDE1MS4wMzggMzcyLjI5OEMxNTIuMzYgMzc3LjIwOCAxNTQuNjI3IDM4MS45MjkgMTU3LjkzMyAzODYuNzQ0QzE1Ny45MzMgMzg2Ljc0NCAxNTcuOTMzIDM4Ni44MzggMTU4LjAyNyAzODYuODM4QzE1OC4zMTEgMzg3LjIxNiAxNTguNSAzODcuNTk0IDE1OC43ODMgMzg3Ljg3N0wxNTkuMjU1IDM4OC41MzhMMTU5LjM1IDM4OC42MzJDMTU5LjQ0NCAzODguNzI3IDE1OS41MzkgMzg4LjkxNiAxNTkuNjMzIDM4OS4wMUMxNjEuMjM5IDM5MS4xODIgMTYzLjEyOCAzOTMuNDQ4IDE2NS4zIDM5NS43MTRDMTY3LjY2MSAzOTguMjYzIDE2Ny43NTYgNDAyLjEzNCAxNjUuNDg5IDQwNC43NzhMMTY1LjM5NCA0MDQuODcyTDE2Mi40NjYgNDA4LjI3MUMxNjIuMzcyIDQwOC4zNjYgMTYyLjM3MiA0MDguMzY2IDE2Mi4yNzggNDA4LjQ2QzE2MS4zMzMgNDA5LjQwNCAxNjAuMiA0MDkuOTcxIDE1OC42ODggNDA5Ljk3MUMxNTQuMzQ0IDQxMC4xNiAxNDguNjc3IDQwNi42NjYgMTQ2LjIyMSA0MDQuMzA2TDE0NS44NDMgNDAzLjkyOEMxNDUuODQzIDQwMy45MjggMTQ1Ljg0MyA0MDMuOTI4IDE0NS43NDkgNDAzLjgzNEwxNDQuODA0IDQwMi44OUMxNDEuMDI2IDM5OS4wMTggMTM4LjAwNCAzOTQuOTU4IDEzNS45MjYgMzkwLjg5OFYzOTAuODA0TDEzNS43MzcgMzkwLjQyNkMxMzUuNzM3IDM5MC40MjYgMTM1LjczNyAzOTAuNDI2IDEzNS43MzcgMzkwLjMzMkwxMzUuMzU5IDM4OS40ODJDMTM1LjQ1NCAzODkuNTc2IDEzNS40NTQgMzg5LjQ4MiAxMzUuNDU0IDM4OS40ODJaTTE2Ni4xNSA0NDAuOTRIMTY2LjA1NkgxNjUuODY3SDE2NS43NzJIMTY1LjY3OEgxNjUuNDg5SDE2NS4yMDZIMTY1LjAxN0gxNjQuOTIySDE2NC43MzNDMTU5LjM1IDQ0MC44NDYgMTU0LjM0NCA0NDAuMDkgMTQ5Ljk5OSA0MzguNzY5SDE0OS45MDVMMTQ4Ljg2NiA0MzguMzkxSDE0OC43NzFMMTQ4LjExIDQzOC4xMDhDMTQ1Ljg0MyA0MzcuMjU4IDE0My44NiA0MzYuMjE5IDE0MS45NzEgNDM0Ljk5MkMxNDEuMDI2IDQzNC40MjUgMTQwLjE3NiA0MzMuNzY0IDEzOS4zMjYgNDMzLjEwM0MxMzcuODE1IDQzMS43ODIgMTM2Ljg3IDQzMC4yNzEgMTM2LjU4NyA0MjguMzgzQzEzNi40OTIgNDI3LjkxIDEzNi4zOTggNDI3LjUzMyAxMzYuMzk4IDQyNy4wNjFMMTM1LjkyNiA0MTcuOTAyQzEzNS44MzEgNDE1LjczIDEzNi44NyA0MTMuODQyIDEzOC43NTkgNDEyLjgwM0MxNDAuNjQ4IDQxMS43NjUgMTQyLjkxNSA0MTEuODU5IDE0NC44MDQgNDEzLjA4N0wxNDQuODk5IDQxMy4xODFDMTQ0Ljk5MyA0MTMuMTgxIDE0NC45OTMgNDEzLjI3NiAxNDUuMDg4IDQxMy4yNzZMMTQ1LjM3MSA0MTMuNDY0QzE0NS4zNzEgNDEzLjQ2NCAxNDUuNDY1IDQxMy40NjQgMTQ1LjQ2NSA0MTMuNTU5TDE0NS41NiA0MTMuNjUzTDE0NS44NDMgNDEzLjg0MkwxNDUuOTM4IDQxMy45MzZMMTQ2LjUwNCA0MTQuMjJMMTQ2LjU5OSA0MTQuMzE0TDE0Ni45NzcgNDE0LjUwM0gxNDcuMDcxTDE0Ny4yNiA0MTQuNTk3QzE0Ny4yNiA0MTQuNTk3IDE0Ny4zNTQgNDE0LjU5NyAxNDcuMzU0IDQxNC42OTJMMTQ3LjYzOCA0MTQuODgxQzE1Mi4wNzcgNDE3LjQzIDE1Ni45ODggNDE5LjEzIDE2Mi44NDQgNDIwLjI2M0MxNjMuMzE3IDQyMC4zNTcgMTYzLjc4OSA0MjAuNDUxIDE2NC4xNjcgNDIwLjQ1MUwxNjQuOTIyIDQyMC41NDZIMTY1LjAxN0MxNjUuMjA2IDQyMC41NDYgMTY1LjMgNDIwLjU0NiAxNjUuNDg5IDQyMC42NEMxNjguMjI4IDQyMS4wMTggMTcxLjE1NiA0MjEuMzAxIDE3NC4xNzggNDIxLjM5NkMxNzcuNjczIDQyMS40OSAxODAuNTA3IDQyNC4xMzQgMTgwLjY5NiA0MjcuNjI3TDE4MC45NzkgNDMyLjM0OEMxODAuOTc5IDQzMi40NDMgMTgwLjk3OSA0MzIuNTM3IDE4MC45NzkgNDMyLjYzMUMxODAuOTc5IDQzMy45NTMgMTgwLjUwNyA0MzUuMTgxIDE3OS41NjIgNDM2LjMxNEMxNzYuNjM0IDQzOS41MjQgMTcwLjIxMSA0NDEuMDM1IDE2Ni43MTcgNDQxLjEyOUwxNjYuMTUgNDQwLjk0Wk0xOTMuNTQxIDQ2Mi43NTFDMTkzLjU0MSA0NjIuNzUxIDE5My40NDYgNDYyLjc1MSAxOTMuNDQ2IDQ2Mi44NDVMMTkyLjIxOSA0NjMuNDEyQzE5Mi4yMTkgNDYzLjQxMiAxOTIuMTI0IDQ2My40MTIgMTkyLjEyNCA0NjMuNTA2TDE5MS45MzUgNDYzLjYwMUwxOTEuNzQ2IDQ2My42OTVDMTg5LjU3NCA0NjQuNzM0IDE4Ny4zMDcgNDY1LjM5NSAxODUuMTM1IDQ2NS44NjdDMTg0LjA5NiA0NjYuMDU2IDE4My4wNTcgNDY2LjI0NCAxODIuMDE4IDQ2Ni4zMzlDMTgwLjAzNCA0NjYuNDMzIDE3OC4zMzQgNDY2LjA1NiAxNzYuNzI5IDQ2NS4wMTdDMTc2LjM1MSA0NjQuNzM0IDE3NS45NzMgNDY0LjU0NSAxNzUuNjkgNDY0LjE2N0wxNjguODg5IDQ1OC4xMjRDMTY3LjI4NCA0NTYuNzA4IDE2Ni42MjIgNDU0LjYzMSAxNjcuMTg5IDQ1Mi41NTRDMTY3Ljc1NiA0NTAuMzgyIDE2OS40NTYgNDQ4Ljg3MSAxNzEuNzIzIDQ0OC40OTRIMTcxLjgxN0MxNzEuOTEyIDQ0OC40OTQgMTcxLjkxMiA0NDguNDk0IDE3Mi4wMDYgNDQ4LjQ5NEgxNzIuMTk1SDE3Mi4yODlMMTcyLjU3MyA0NDguMzk5SDE3Mi42NjdMMTczLjcwNiA0NDguMTE2SDE3My44MDFMMTc0LjU1NiA0NDcuOTI3SDE3NC42NTFMMTc1LjAyOCA0NDcuODMzQzE3OS45NCA0NDYuNTExIDE4NC42NjIgNDQ0LjI0NSAxODkuNTc0IDQ0MC44NDZDMTg5Ljk1MiA0NDAuNTYzIDE5MC4zMyA0NDAuMjc5IDE5MC43MDcgNDQwLjA5TDE5MS4yNzQgNDM5LjYxOEMxOTEuMzY4IDQzOS42MTggMTkxLjM2OSA0MzkuNTI0IDE5MS40NjMgNDM5LjUyNEMxOTEuNTU3IDQzOS40MjkgMTkxLjc0NiA0MzkuMzM1IDE5MS44NDEgNDM5LjI0MUMxOTQuMDEzIDQzNy41NDEgMTk2LjI4IDQzNS42NTMgMTk4LjU0NyA0MzMuNTc2QzIwMS4wOTcgNDMxLjIxNSAyMDQuOTY5IDQzMS4xMjEgMjA3LjYxNCA0MzMuMzg3QzIwNy42MTQgNDMzLjM4NyAyMDcuNzA5IDQzMy4zODcgMjA3LjcwOSA0MzMuNDgxTDIxMS4xMDkgNDM2LjUwMkMyMTEuMjAzIDQzNi41OTcgMjExLjIwMyA0MzYuNTk3IDIxMS4yOTggNDM2LjY5MUMyMTIuMjQyIDQzNy42MzYgMjEyLjgwOSA0MzguNzY5IDIxMi44MDkgNDQwLjI3OUMyMTIuOTk4IDQ0NC41MjggMjA5LjUwMyA0NTAuMjg4IDIwNy4xNDIgNDUyLjc0MkwyMDYuNzY0IDQ1My4xMkMyMDYuNzY0IDQ1My4xMiAyMDYuNzY0IDQ1My4xMiAyMDYuNjcgNDUzLjIxNUwyMDUuNzI1IDQ1NC4xNTlDMjAxLjY2NCA0NTcuNjUyIDE5Ny42MDIgNDYwLjY3NCAxOTMuNTQxIDQ2Mi43NTFaIiBmaWxsPSJ3aGl0ZSIvPgo8L3N2Zz4K",links:{mainnet:"https://tzsafe.marigold.dev",ghostnet:"https://ghostnet.tzsafe.marigold.dev",weeklynet:"https://ghostnet.tzsafe.marigold.dev",dailynet:"https://ghostnet.tzsafe.marigold.dev",delphinet:"https://ghostnet.tzsafe.marigold.dev",edonet:"https://ghostnet.tzsafe.marigold.dev",florencenet:"https://ghostnet.tzsafe.marigold.dev",granadanet:"https://ghostnet.tzsafe.marigold.dev",hangzhounet:"https://ghostnet.tzsafe.marigold.dev",ithacanet:"https://ghostnet.tzsafe.marigold.dev",jakartanet:"https://ghostnet.tzsafe.marigold.dev",kathmandunet:"https://ghostnet.tzsafe.marigold.dev",limanet:"https://ghostnet.tzsafe.marigold.dev",mumbainet:"https://ghostnet.tzsafe.marigold.dev",nairobinet:"https://ghostnet.tzsafe.marigold.dev",oxfordnet:"https://ghostnet.tzsafe.marigold.dev",parisnet:"https://ghostnet.tzsafe.marigold.dev"}}],_l=[{key:"airgap_ios",name:"AirGap Wallet",shortName:"AirGap",color:"rgb(4, 235, 204)",logo:"data:image/png;base64,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",universalLink:"https://wallet.airgap.it",deepLink:"airgap-wallet://"},{key:"plenty_wallet_ios",name:"Plenty Wallet - your portal to web3 ",shortName:"Plenty Wallet",color:"",logo:"data:image/png;base64,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",universalLink:"https://www.naan.app/",deepLink:"naan://"},{key:"altme_wallet",name:"Altme Wallet",shortName:"Altme",color:"",logo:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAYAAABccqhmAAA0IElEQVR4AezBWZOl930Y5uf3f9+z9Ol1enqmp9fZMYOVxCaSEkhKohnZsZxU5LLLuUmuU5WbfANf5xPkJhepuFK+cMVW4jiOZUXWForUapIiCS4CSIAEMAPM3vs57y9Tp1kDU6QozN6Dfp8n/olMrVbrUCpardahVbRarUOraLVah1bRarUOraLVah1aRavVOrSKVqt1aBWtVuvQKlqt1qFVtFqtQ6totVqHVtFqtQ6totVqHVpFq9U6tIpWq3VoFa1W69AqWq3WoVW0Wq1Dq2i1WodW0Wq1Dq2i1WodWkWr1Tq0ilardWgVrVbr0CpardahVbRarUOraLVah1bRarUOraLVah1aRavVOrSKVqt1aBWtVuvQKlqt1qFVtFqtQ6totVqHVtFqtQ6totVqHVpFq9U6tIpWq3VoFa1W69AqWq3WoVVrHR7hJ6UPhZ+UWodArfXxEz6UpB9Lf7P0U8KPBVLrY6jW+ngJMo1FIbpUfaJLVAgEEe5ItyUSSY7IPZotcpdMY+G2QGp9TNRaT75A2lcoXaJGRRSaiqzIiiZoChmkfYFISlIaitsaygR6JHKP3MNI62Ok1nqyBYJEJFFTL1BNIdjbYvtdtrfYCXawg100YaxOuuiii17Sx8QS3XlKYXiV4XVGNwm3BQKN1hOs1npyhTuqAdU0WbN1hVtX2UOnYWaX+RNMnqG/QGeWeoJSIWh2GW6ye52t99l4j823uXaFnZuUYLpiYkBvntEVmi2aERH2pdYTqNZ6MoWx6FImyJot7O3Q3WLhFFMrHJnj+ID5ZWZOMThKf47ugFIQjHbZ3WD7Bhvvc+M9rr/N5RtcvcnGVXZ+yPYOTU1/QNSUHXIbqfWEqrWePIFAIQbEDKNttvYQrJ3g4hc480ssn2buOJPT9Pp0etQ9qpoIY9kw2mO4y94uO9ts3eLKJS69xQ+/wzf+LT/4Hlc3qSfpdokOoxH27EutJ0yt9eQId2TSPc5Ow8Y7dJPnPsvzX+SpZ1g8w8xxugPqmlIRQRQiiHBHFKoupaYzwcQMM0dZWOHU02x9hk/8Im9+k9f/nK/+O269T6fDxCKjK4xuEW4LpNYTotZ6MgTSWPSo59jYo9Nn/RkufJJnP8+5V5k/wcQkdRcF6adk+ilRCPuqmm6f/iRTs0zNcewkaxdZXOLbf8Db32Rjg06PEuRNpNYTpNZ6okQXA4YDypATZ3jpc7z6n7P6FNPz7kgfynRPIqg6TB1hao4TJzlxmoUT/Mn/yet/SYOoiF1yD43WE6LWejKksTLPTs37b/FL/4DX/gte/SLTR+l0jTWNOyKIIMJdyySTTCKM1V2WzzD5j1m+wG//b3z197l+ibkFRh+QO0itJ0Ct9USIDvUCN/foDvjFv88v/0Oe+RSzx6hqBJlEuCPCPYtwR4SxTKIwNc/pF/hCUFV8/fe48i6DHqXQbGo9AWqtAy96xICdQjXB6lk+/xs8/0ssrFBqPyHCAxXhp9QdZo/x9Ke4+QHb1/nK9xhNoxAdcojUOsCK1sEVZFCmyVmuvMfiEq/+Kr/49zm6TKnJJBBBhIcqgghjURjM8sIv88qvMt+j2WBvjxigaB1wRevgCQSCeo5myPBdZkY8/wov/DITM5TKWAmERyoQyGR6nnOf4Vf+ByZPsufHAqF1gBWtgyftC6LPDoYdLrzG07/E6lNUHaLYFx69IIJM6i7HT/Hir3PyeQZz7O6iRtE6wIrWgRRB6dAEuxWdRV76R5x9lZl5d4THKNwxmOHMczz9KgurbO2QHaLWOsCK1oGTiD7lCJvXmEzOneTCC8weJZPRyL7wWJWCJAr9SS58muWn2Q30UNsXWgdQ0Tpwwm0VWbM9YnaNpz7NidNMTBmLcKAESsXSGdbOcHSG3KYZotI6oIrWgRMdBMMdsmFhnTOvMr1A3TEWQYQDIQJhbO44a2dZO0fTMELpaR1QRevAKQMaDC8zvcfyMVZOU9c0SSYRDo4gwlh/kqVnOfcF9qbYm6BMk4FAaB0gRevgqRgWdjosv8LaJzm6RKkIB1QiiWDuOKefYaZPhSYJrYOoaB0cQdTkiNGI7LD6CZYvMjlLFAQRDrSpWVbPsXqO/iS7u8QEKq0DpmgdGFGIHs0uduj2WLvAwip1l0xjEQ6eIMJYf5LFk1z8LNPH2NqiOkJ0yURoHRBF6+AoRI+9hk6HlSXWzjJ3lEwyHWxBJlHoT3HuJWaW2a6IAVFrHTBF62AIBFnYTSYWOPMKJ04zmDEW4YnR6bFyjpVVZnvsXSNRekitA6JoHQxBBs0eo2RqiXOvcWSZTt9YBBEOvAiqmoVlTp1lZZHND2gqygSpdVAUrYOhMtbcpDPk6DynnqE/QEM2RDjwIoyViokZ1l5m7bNcqdmbpJq0LxBaj1nROhCi0BS2GxZOs/4cSyfp9BBEeKJkUgrH1lh/iumKMqJB6SKQWo9Z0ToYCk3FFhYvsv4cswvUtX3hiTR3lLWzrK1Tgp09qimi0joAitaBEBVZsYOli6xcoNMj7YvwRBrMsvwUz/0a1YCNHeoFdEi3hdZjVLQeuyiMdqg2WcLJVY4teaKFfaVi+ggXXmHyKMNATQThttR6jIrW41WICfZQJjjzMivnmZ43FuGJFsHENCcvsrTCZJft6+gSPa3HrGg9HoFAoUyx26U6wdP/kGNP0Z8kEUGEJ0+Qaazb48Q6Z86xMMuNdzBBmSLdFlqPSdF6vIIslGB2hgsvMX2ETDJ9LFQdpuY48yqLL3A1GE1QulqPWdF6PJKoiS7bG8zMs36R1XNMTBoLT7YIMglUXZbOsHKKySQ3aEaUCYTWY1K0HotE9DBgc4Ojq5x9kflFOj0ifGykffMnWDvF6jFyi+GQahqh9ZgUrUcvjEUXU2wUFs5x5pN0J4hCJhE+VqbmWH2WC7/G7oCtinoGFQKh9YgVrceidGn2yGssNKydYHGdKD62Oj3mlzn/MoMpmhGjEVEhkFqPWNF6LKoBw2Bvl/WzrJ3lyHEiiCDCx0KEsUxKxfQ8Jy9yfIluzc4G0Sc6Wo9B0Xp0AoGgmmW3z/Yk5/9Lll9iMO1jKZANmUxMsnyKsxeZmWLjGmWG6JNuC61HqGg9Ookk0CAw2ef008wdQ5DpYymCQKfH7HFOv8zcKTaDrCiFcFtqPUJF65GKLtUMO5v0u6ydY/UcU7M+vgJBIgq9SVYvsLhMf8TwBk1S+lqPWNF6NIJE9KkWuHWLyVkuvsLiOhOTPtYi3FEKi2usrrDQZ/cKI5QpMrQeoaL1SEWFPhuFqTXO/wKTc5TaWPgYSyRRmFtg/SXWPs/2gL2a6BJaj1LReviCTMoEiZ33mNllZYGV83T6RCARPr4CYaw74NgpTr5Ap0ezS7NL9FC0HpGi9XCFO6pJRhUbH7B0lJOnOLZMXZNJ+niLMJYoNfOLnLzAkSNEw+4OZUDUWo9I0XpkqkmGk1zpsPpFTn6GqVlKcahkg2R6jtWznHyK/oCdITFJVFqPSNF6uBJB6dI0GDKoOHmBY+uUmgwC4SFKMskkk0wyySSTTDLJJBPpoYkg0BuwsMq5TzG1zG5DjhAIrUegaD10UVHNsLNLSVbWWTvH3AIRSNJt4cFKMpHuSSaZSA9MBBEkSs3kEU5/gqPHqUYMN8kgaq1HoGg9PGEsOtRH2dyi6vDMZ1g5w9SssUwPXCaZZJJBBhFE+BsFIoggw1gmmUgPTATZkEm3x+p5lo4xjd1rZCF6Wo9ArfXwpH2Bip3CsWNc+DRzJ6h7xiI8GEmmfUEUwocyGe0x3GU0pGmMRVAVqi51h1ITbgsijGWiQRDh/gUR1B0Wllh/lb/6Lt/+YzqFklqPQK31UJU+0WX7ChM7LM5x8mkGM5RCprEI9yXTvkASGA3Z3WLzJpu32LzFxjU2rrB9k+E2iaqm02cwz+QckzMMppmYoj9Jr29fGMsk3BbuWYR9wcQUyxdZfpZv/QnNHgI1Rkith6TWejiCTGJA9rj1HsemOLXE0km6PTLJpBT3JROJMDYasrvNratceYf3fsDld/ngMtfe4+a7bH3A3oaxqkNniqklZo4zd4yFRRZXWFjh6DK9AXWXqiYbMgj3LoJMY1WH4+usnafXxx5NoIMGqfWQ1FoPTaB02O1xDc++xpkvMHeMTtcDkUkmEUSwu8PV9/j+N/nen/GdP+L7r3P5GreGVCM6Q+oR0RBuC0aFnZphRamZqVhf58zznH+NM89z4hSzR4lCNjRJCYT7duQ4a2dZW+eDtxju0q1oQushqrUejqD0aUY0G/SS5TMsnafTQxiLcM8yyTQ23OX9H/H9r/KNf833fsR777L5DntDSsXUBFVDNaI0hA9l0KkYFRLNLu+8wdXLfOM7nDvOUy9z4e+wfJqJGaqaTGMR7lrYl8lgisXTPPUaf/rv2HyHbkFoPUS11sMRlCn2hjQjji+yeoaFJaLQJIFwbzLJpBmxu817b/KNr/DV3+bb/5JL2KuZSAbTTPQpFRpyiMZYprEIokZFYlTY2eD9S2y+z5Ut3nmdd2/y4mdZv8iRJeoOgUwi3J0gkKi7HFniqV/kW3/K1R+RjX2B1HoIaq0HK+wrlEm2b1B6nP9F1i4yu2Bf2lfctUyyIQp7O1z6Ab/7L/i9/4vv/gUzI2bW6E1jh9E1RlfZ2yX97aJQ+kzMMnkMXW59n69/nb94k7e/xef+K176AnPHEcYyiXDXmoZSmJjm7AscneXSiGabkqTWw1JrPViJQtQ0Q0Yj+nOcfZGFVboTJCLck0wyicLNK3zrS/zR/8GffZkbVzh2jG5SbrF3HSNyD0Nj4SNoyG2GI+ImUeh1qRYZ1rz+J2xf5r2v87n/lmNr9CbtS4SPLijFWK/P4jqnf4FL7/Lu6wz6xJDc1XoIaq0HLjpEj91N6oajRzj9LDMLlJpMAhHuSiaZNA3DHV7/Cl/+v/nKb3HtFr3CREWMGG2SOyTCj4WPLEcYkdvGqhm6FXXDxjZ/9ZdsXaM/x4t/l7WL1D37EuGuVTVTc5z6BG98kzdfp9+lRu5qPQS11gOVKF0M2L7MzCTrS6ydZzCNJBuiuCuZZBLY2+b9H/Kl3+Qr/54fvcuJJaotRldpdog0FoG0L92dcMfwBnGL0uPIMjdu8cYb7P7PTEwze4z5ZdK+8NFFkImg1KxeYPEMo4IORgj7UusBKloPVLgtaAqbmL3Imc+xsEKvbyzCXclEEkEz5NIP+P1/xZ9/hes3WVwkrjC6Su4S/hPp3iUSSQSSZofdHzJRmFzgjXf48u/ytT9kuIMkgkz3bGGZ9TWWB7jJcIeotB6CovVARY9MRjeoGo6vsfYs/QFRGYsgwt0JIrhyidf/lD/4TW5copN09sgtcheNh6uh2cYt6h3607z+Df7od3j7O2xvGotwV8KHpuZYfoqzn2LUZ6+mTCG0HrCi9eAE0adJRreYGbC8ztIpSk0mmUT4yDLdMdrj7W/zl/8f3/gSZcigYnSdHNoXSA9eIhHGRjdxjflZPvghX/tDvvpbXH+PZuTuBREkun2OneX8F4hZhl3KAIFAaD0gReuBig7DimGflU+w/ixHl4jinmQaa4bcusZ3vsx3/4gO6ppIRltIJNLDlQhjzZDRVWZ3aL7F7/6P/PBr7GwZy3T3GiSzRzn7PLMDKjRaD0PRejCCqMkRoxHRY/05jp+mP2ksgggfWSYRBHZ3+OH3eP3r/Ohd5pYoOzQ3iQbp0UkEGkY36A0YTvHtK3zvu3zwjnsWgWBimuUznHuJmXk2b1FmiR4SofUAFK0Ho6BDs0vsMehy8mmOLlN1yTQW4SPJNBZBJlu3ePNb/PD73Npg8gh2abY8Pg3NNqWQXW4mb36Ld9+kGbkvnR5HFjn/CjMn2NihzBBdUutBKVoPRBSix94unV2O9zh5ltmjSLJx1zKNDfe4eYU3vsqt96mDqiDJRHj0Ekmg2aLeZLbh7b/g7W+yt40kk0wfXZBJBL0BZ15k7iRbBT2iQiAQWvepaD0YYWwHk2c4//dYPMvEFIFS3JUIIoztbHHlLb7/OwzfZmLI8CY5tC89VrlFDOnP8v6bvPs6199nNHRfSsXSOqcXWNlj722aIdUEmUit+1S07l8xlkOaZG6FM59meoG6Q7otiHBPtjf44D1+9DZD9HqMrmNIePxyZKwecGOD9y9z7QNGI2OZ7kogUCrmjnHyadafZXOPYYcyidR6AIrWfYsgMdqjU7GwxKln6A1IZBLhI8skkwhjW5tcucblhuEsnWmam+TQ4xckIig128H1Ta5fZjQ0FuGeRNCfZPllTv0aWxMMJygDBAKhdR+K1v2raILdPY6tsvYUJ9bodIhw34a7bG6wmTQVpSIbB0sSQ0rDzi2uvMdoiEC4O4EgE8H8IifPM1tThjQjSo1Aat2HonXfoqap2cbys6w9w9QRojIW4d4lu9tsb5ANEQgy7QuPXbgtMaLCcJtb12iGBML9mZpj5RznX6LbZ2ub+ijR0bpPRev+VWRFBqvPsHSeTt8dEe5ZNuztsLNJSSIdTEk2lKTZY3uTpkHal+5Zf8DxNZ55jYlZNneo54mOfaF1j4rWvQtjzS7VLrPB+mkWljwwmQyHDHcpSSTSwZE+lMYyaYZoPBBVh6l5zr/C4Dg7BR2iaN2nonXvCmWa7aA+wsUvsnKBqTljEYT7E4W6pu4yCjIcLOFDYSyCUiHclwgyjXX7LJ3i1ArHam6+RXYpU2QitO5B0bon6baKMsVeoXuUp3+Zo2t0J8gk3BbuSwSdLt0+TZCBcPAEETRBqen2iYJw3zKpOxw9wemLLK5x7QpNjzLQug9F6+4FEShkl1HN5DwXXmVyzlgmwv0LOj16kwgyjYWDI90WqBih6jE5S6lJpNvCfalqpuY4+SonXuUqhj2ii9C6R0Xr7iXRQcX2JY5OcuYMK2foD4xFeGA6XQYDBkEZ0YyIQCIdDIXo0hQ6k8weo6qRSPcsgggyESyssLbOUbfdYLRHNY2idQ+K1t0JY9HHgBs7HDvDmU8wt0DdIYII9yzCT+hNMDfLfKG6xWiDMonKgRBuS5qkg6kBc8eoKmOZ7kumfcHcUVbPcfZ5BDtDqhlUWvegaH10gSCD6JIDtoITz3DqJboDoiLdvwgyjfUnmV9gcY56m90NqiNEh3QAFDIZbTPV4egccwtUtbEID8xghuVzPPOrxCTbSRkQBYHQugtF66NLJCVoRthhHmsrnFizLz0QmWQa6w9YOMnpX6GzymZNNU3U9oXHJpPSJyu2rnB0jaXzzC1Q1R64usvcIudfZjBL09AMiRoFqXUXitbdCaoj7AbD5NynWHuamaPGIggPRoSxusv0UU59kokF9twWRBBuS49eIIyVAaMB1xuWnmH5Ar1JohBBhPsSYSwbAoNp1p5ibZ2pLptXMaD07Qutj6hofTSBQKHMsFfIDhc/z4nz9Cc9UBHGMikVgxnWn2ZhiW6HnQ1UlK7HJ4gOWSEohZPPsHyWuoPwwAQSid4EJ9Y5fZG5BW7dRJ/okVp3o2jdlQjUNIXuFE+9zJFFSuWBiyCTTLo91s5x7gyLk1z/ATmgzJJuKwiPRthXqKYYbVBf5WRw7hzHV+1LD04QCHS6zB3j9KvMP8VGMKoQhNtS6yMqWn+7QBI9yiybl5npcP4cK6cZTBvL9MBFGKs6zB7j4mc580tsNOwVdCg9HwoPVxhLRIfucW50KSf53H/P6gv0p41FeKAiSCSiYvEky0vMjBhdotmjTCG0PqKi9ZEkSo8yw60tZhZ46kWOLtHre2gijEXQm+DUCzz9WZYuMAp2kmoWBenhCmOJakCZYWOX/hFOvcQrv8HCOnXHwxH2JREsLLF6lhPrDPcYokwgtD6iovWRRBAd9LlVmD3LuU8xeYSq46HLNHZ8lec+xWt/n6rHxh7VEUoPBYnw4IV9gYpqDke49DanTvGZX+GpFxlMG8v0cKQ7Zo+y+iynfpHRFHs1OkRofURF62+XlAkyGF5nfsTKAidOUVXGMonwUEQQQdNQ1Zw4xed+g0++yGyP99+hHKeeM5aJQHgwColMVEyss4vNt1nt8MpneP6z1H2ikEmEhyICQZN0eiyscvp5+hM0uzS7RI+otD6CovWRVFPsVWxssvo0J5/hyCJRkemhiyAQhcE0J5/h07/Oc59iUHFri90u9VFKD8W9C4Q7MomKeobOMTZ2aW5ybIrP/dc8/8scX6cUYxEenrAvicLsUU5e4PgJOhW728QEaq2PoNb6+YJETDAcsjnk9KdYfZ6pWUqQHo0IElWHqTle/DWM2LzEN77Hbk01IBrsYEgOkT6UPpqwrxAdShfTDGfYucziLC+8zK/+dyydZ2KKTCI8EtkQFZMzrJzm5HluvMu1y/RmiC1S629Ta/2tSiGTpqHusP40x1aoagTSoxFIY4mZBT75a8wtM/8v+PIf8NZbrMzSnSN2GX5As0s27gg/XyaSqKmm6J5guMeVm1x7m0++wOd+nV/4uyw9RadPpkcmUAqB3gQLq5z5DN//Ae9dpmmIIArZaP0ctdbPFkiiSz3H1gbdLivnWTvL9DyCTGMRHokIMglEYXqBMy9SOsyf4mt/yNt/xNUNomHQUB0hCobkECM0ZGNfEAWFqFETNc0uOyOuXqLfsLTKp17l5de4+BInztPtI4xFeDSCQKax7oD1pzm+yPeHjG5QBTrY0fo5aq2fKzpUR9h8m/kjXHiREycZTBvLJMIjFUGmsbrD7ALPfIa5RRZP8OWGt9/j5iVik92CmkAkkUQi7AuaICuyImt0KHvUHWYWODHH05/ipX/AmWeZOUrdJdNYhEcryAZB3WH5NMunmZ1n8woxoOqQO1o/R631c0Uh+mwUlk5w/jMcWabbNxYIj14EmfYF3QlOPcvSaZ57jW9+ha/9G772z7l8mW3U6KODGsW+RIM97GAHeziGcxd46b/huU+z/jRHl4xlkmkswmMRYayqWVhm/RMsfYJv/j5VUIXW36LW+pkyqSbJis03mN1kdY7Vc/R6ZBqLQHgsItyRSQSdHsdW6P8KJ8/xyn/Gjy7x/rtce4+bl9i6ys51RteNlR7VDL0ZphaYWWTuBCcWWVpn+VmmjzCYNpZJhMcugkQmnR4nTrP+LH/5JUZDFKImR0itn6HW+htFn1HNjfdYWufkBY6vUveMZRLFgRBhrFT0p+hPcWSR5Yuc/YDr73P9Mjcus3GVrWvsXTdWenRnmZhl+iizx5g7xuwCU3NMTPkJ4YAIJJmUwsIK6+eYrhhtM6ooNRqk1s9Qa/20MFa67NbcwCdf4uTLzC1Q18YiHDxJIoK6w/QRpo+weo5MmiF7Owx3Ge4ZK4W6S6dH1aFUfkqmsXBbOFAiEMwdZe0UK7O8s83ekF4fe6TWz1Jr/bSg6tOMaIZ0sHqWE2fo9BEOriB8KNNYBBGUmm6h00faF0QQQYSxTHdEEOFACreFsd4Ux5/i6X/MtX/NrTfpd8gdjLR+hqL1U6KiTLE3xIjlddbOcvQEUcg0FuHAiyDCHRFEoVSUmlJTKqIgEMYCgQgHWxDIpBSm5jn3GWaOG0utn6dofSgQKJQJdkaUmvMvsHKWmSOeeJk+lP5mgfBkCKSx/oBTT3N8hYkBoyEZKAitv6ZofSiRxppkN+nMc+GzHD9Ff8pYeHJFEEEEUYgggggiPLEijHX7nFjj7Cc5foaNDZqa6CC1/pqi9ROijz67V+ltsTjN6eeYnEPQNAgiPDmSbMiGpqFpaBqahqahaWgamoamIZNMT5QI+4LugLVnOXGRjST7RI90W2j9J4rWT4gOemxvMj3L6llWzzIxaV96ImSSSSbp3mSSSaYnRqCqWTrDyhm6bmvIhgitv6bW+klBFjZx5jnOvMaxFTo9d4SDLZNMMo2VQhRjkaSfLdwWxhLZkEm4rRDhibGwxPoKS4WtG4yCqpCN1n+i1toXRI8cMbpO1XB8leVzdPooxkpBOHiSRCYRRBBhLIJmyN4uu1vs7TIckiMEpVDVdHp0e3R6REUUIo1lkkkgigMpAmFsYpql53n2n/DH/y87N5geMLyKIQLp0Ku17ogewyHNiLkFVs6wuE6paRr7woGTaV8SYWy4y84WmzfZuMHGNW5d49YHbL3PznVGu0RQ9ejMMJhnap6peSbnmJxhMM3EJFGIMJZpLMKBVXeYX+Hi5/nan7G1RfQRCK0fq7X2BWqGDdll5Tyr5zi66I5MIhwomWQay6TZY2+HG+/z/o94903efYv33+Hau9y6xOb32XmXvW0C1STdY0yuMn2CIydYWGVxhRNrLJ5iYpbegLom0x0RDpxMIpia48wLzC9w631GSVTkCKl1W61FEIUcMRzRmebsp1l6iolZEhEOnGyMlWJs4xqXf8ib3+SNv+DNv+Ctr3Fjj509ckg1pOxi6ENb5I9oLpMd1HQ7HOlwYp3Tn+f8S5x6hqWTVD1KMdY0RBDhwAj7+gNOrPPUK9z8gMtvMDVLbDC6RQTSoVZriYIOzQ7VkOkJTj/DkUVKIRsiiHAgZNoXNCN2Nnjv+3z3D/j2l3nzHa6/w6132b7MaJLSJWrqQukgiTSWQaIpNEHTsHeLK9tsXOWdG/zVn3Lyac69zKnnOb7G1BwRxjKJcDCEsapmcpazL/JX3+KvvsvUJLGn9WO1FgUdhhv0JjixwtpTTM3ZlwgHQqaxTIa7XL/MO9/jq1/iG/+GN77MB6iDHro1Ez2iSxSiIRMN0r5AoLIvaQp7DVs7XHud9/6St77K97/FM5/h6U9z6jlmjlIqojhwotDpsf40x9eM5YgIosbIoVdrEShsB/OnOft5ls4wmCLcFoTHLxsiEASuXeI//gf+4F/y519i7wP6wfwMVYdw2w65QXONTHek25LwY+GOCKJHp09nhqnC6Bobl/jqv+cb/4EX/g6v/SNe+SLT89QVmYQfC49VprEoLK5y8hjLe+z9EH2qCYa3CIdb7bALBIkh5pY4/Rz9KRQyiUB4bDKNRSDYuM6Pvscf/K9840u8/Tb1Ht1J6oayQ24hyRGGZCLdEf6adEcGdjDCFhlE0ulTVWTy3a9y4xbvfIcXv8jp55maI/1YEuGxi2BqjvWXOf/3+Mrv0+sz3WN4y6FXO+wKmTR7TFQsLrF6nm7fWCLCY5PpQ8H19/ne1/ijf8PXfpNLbzHqMVFT3NaQu+SQTPcmyRFG7ogOVaFCBltXeePrbH7A1gdsXeKZL9Cfoqo9dhFkGuv0WDzPmdf4yp8yKugQBQ3SoVU75KIwSoZbHDvC2ionTlLVhMcvkwhjw13+6uv87r/gX/1PzCaDKQZTjD6g2fXQ5B65ZyyCySOMuvzgm1z/Gle+wcwyKxeYnCMKmUR4bCLIJIK5Y5y6yNwkWxuMRpQOzS7SoVU955/+U4dRGCuT7FZsBc9+kU/+XU6/QKlQCLeFRy7TWASBzRt884/5t/8Lf/bb9GomJqgaRjcxRHo0ghxiyMQco4Ybl/nBHzO3wvQxJiaNhR8Lj00EpZDJ5be4fomb1xgskLvkHsKhVBxG4UMFhbrm5CdYPEvdsS8RHr10RwTX3uebf8z/8894/U/Yvk6/oozIXewhPVI5JHco25Qum7u8/qf84T/ja7/FzSs0IxLp8ev0OHKci7/A5HE2h5RJonaoFYdR2lcxaqgq5o6w/hTzi8YyPTbpQztbvPGX/OG/5vf/FdcvMzlBbNPcInfsS49OItCwd50K9QS7hT/+Tb78z3njT9i6SdMYy/RYlYrBDGc+yfwSidEQhagdWsUhFRXVNLu79Ke48BmWzzE1ayyC8OhlIhCMhrz1Or/3v/M7/5zpKSa72GJ4AyP70qPX/P/twWuTXHedGODn9z/dM9Nz0YzutmVZtnzZGLCXZNnKLknVVpIPkMonCp8hb/dFUpW8yyabVEEBSbGAASdgfMEXWb5Jsu7WXXPt6e5zfpnqARFSC5gsbtnd53nQUAr1JvosHWU4xzs/5Fv/lstvs7ttLJNMExdBprFOl+MneeoojzZsnaepKCtkIsycYlZ1iGV2KxaO8id/ydoxqi6ZhD3hodnd5vo5Xvr3fPASMaQT2KHeQiKRHp5EoiYH5AZzy2wl73/IT7/NxTOMBvYlmR6KTEqH1cOc+iec+Br3akbzlAW/FmZKMWsCQQaJwMHDPPOPWVylFPvCQ9OMuHOVMz/i1W9x6zxLPWKHZpscEOHzoSHsGVFvUtkzz/2an32Pd/4Xt68i7Uukh6IEC4uceIHHv8aoorGnIroIpJnSMWuS6JANg1usDXn8ACefZn4BgTRxmcYi2N3i/Ov83X/ik5vEHAtz9G8QDSXI2udHIohgdIfuATqrvPsLlo+x9giHH6M7jySTCBMT9iWi4shjPPEUh4LYop6js0y9QTZmSjFLgkRZJle5O+TRf8bT/5KVw3S6xiJMVhJB2JN88AavvMS779I5yFzF4AaRSLLx+ZNIIsldYpO1Ba68yU/+hvdeZeMuiUwyTU6Qfm15jRPP8fy/IJbYGlGtoWNfmBnFjAnEHDnPsOHEC5z8U+Z6RPFQpD3JcMCda7z6fc68wmBINSJ2abbRIJE+n9K+IblDb46t23z0Kq9+i+sfMdxFGMv0UCwscvQkz32d+VUGNbqoEGZKMUuSKDT2LS5w4jTHThrLJNPEZdIkm/d4/zVe+S6Xz3L0MHmb+j4RaJA+97LGgIJOYesW//s/c+51Nu9SCplkmpgID1RdDhzhma9y4JCx0YCoiAppZhSzIOzr0DnC7gBDvvJ1nvgTDhzycCSZlGDY59r7/OA/sPkxCwNynaztS18o2dDcZ65LWeLcFd76OefPoKEEEWSaqKYhk/lFHn+aJ59gbY7NT9CjLJL2hJlQzIpAoaywW7DI83/JsZPMLxiLIMLEpF8Kbl3lvTf4xc8YDJjrUG+gsS99sSTNkGioktLnw5d55/vcuspwYCzTxER4YG6OI4/y5IscforNAdkluoQ9aSYUs6IQHTJpkt4Bnv0aq8coHQ9NJsNdPn6bMz/h+lXqpFPR7KDxxRRk0gwoA1bnuf4uZ37MR2+zvUEmEWSamAhjpcPSKk+8yPHnGCb1iEyigzATimkXZBLzlEV2rrB2n6d7PPEsiyvGMk1U05CoR9y5zplv8/43OVjT2aTZIuxJpC+eJILsk0PmH2O4yJXrvPY97lyjHhLIJNNERJBJJlE49gQnHme1ob5JPaCsIMyEYkaUBRzgTrL6FZ79Vxw6TnfexGUSQWB3m/de46Pz3N1lfplAjnzxJRoMyW168+ys8/r3OP8O67cRhIfn4DFOPs+TX6NZZFCIBSLMhGIGREV0yA7D4MjzPPV1egeoOiYqk0wiGA24e523v8f1C9RBmSPsSVMja+p1FubImotn+fAX3LhMPUIYyzQREcYSSwd49BlO/1OqFUZ+qUKYesUMKHMkmj7LyYnHeOw0pSKRCJOTDZls3efyGd76b2x9wFJihMb0CDTUW5RCmWNY89EbXH6PwQ7SRAUiyKQzz6HHePqrLCzTDKn7RJeoTL1iBlRr7AbbWzzz5zz5AmtHEUgkwsSUisCtq7z/Jrd3GfXo9Mg+2ZgeiSTQ3Kc74OARzr3Fuz/j+seMhkQYy/TZC2PZIFla4dQznDzOUofdHaJHdE29YtoFscAoGOHpP+OxZ+ktE2GiMj2ws8XVM3z4I3a3iQ6lwghpKtU7lBGLy6zf5eL7nHubnS2ahggTFfb1ljh+ilMvsvIIuzVZUBCmWjHFIigV2ZCYX+LJFzhygs6cicskk2y4d4OLr3Phx1S7dOxJskGaPkGOUFOCUnHzCmd/ysZt6iGZZJLpMxdBhLHuPGvHeeovOHiaYdKMjEUx1YppFKQ9C1RH2bnDwjZPHeHxUyytGmsaYxE+c5lEEEHTcO0Cl65xu6GzQgmaXdMrCTR96tusLrN9izMvce0CO5tEEEGEiYhCJk1SdTn5HI88ynzNaJ2mwZypVkyx6BDLbNX0jvPsX3DsJAuLSAJhAhJprKnpb3DpLDev0KCapyCHpl6OqLeYW2CYXL/BxQ9Yv0MmEWSauFI4eoLH/xHHnqYO6kBlqhVTKipUNMkQqyd5+uusHqM7T9oTJiKRaWw04P4tLr7J3Ut0g6qgQW26BWpyQAkUdnY4/zq3r1CPPJBpIiKIIAqrh3n8eU5+lXqeUSAQplYxhTIpPVQMb7I04JEjnHyOuZ4HIhAmIu3rb3PjEhdfZfMCC4khGtMvjWVSbzLfp7fBR/+Ta2/T30CaqAhj2dCZ59gpnnyRmCNroiEKwlQqplTpUXfY6HP8eU69yJFH6XTsS5ORxkohsL3B5Y+4ucHuPN01coccmBmR1Ot0KrpHuHiHS1e4e5NEBBEmLrB2lFOnOdqlO2Q0QIUwlYppE0RBRR30a058mce/xMohSmWi0p4kgtGQezf4+G22tsg5qkVyQI7MlOxTCtUSG7tcv8KNS2SNNFGBCBLLazx2mlPPs7DKoCG6RJhKxbQJoksmdU1UnHiOR04zv4hiX5iITNK+nU1uXuDcz2k2mAtKkmZP2lMTIzq4fZkrHzAakmks02QEEQjmFzlymuf+NUtPs1sRC6hMpWLKRIdqjcEO1Q5PHOLkKdYOG8vGWITPXhKBMLZ+h2vnufQuUdNFvY3GbEkCzQ65zlqPu2f48O+4d4PhrskLskGy0OPpFzl0lIKmkH4pTJVi2hTKAv2GzjKn/4xHT7O8ZuLSvkA23LnOtUvcXqf0qCqabTRmUg7Qp7fC+g4fX+TaBfrbHqruPCdO8/gzrB1jd4esiC7SVCmmSUHQ1AyThWM881ccOcXCIpkmKtO+ZDTgkwtcv8gAZYlSkTtIsyfIhmZEZ5GdLp9sceEsW+tkEmGiIox1uhw+zpNf5tGn2dqk6RBzpk4xRWIeXQY3mNvhyCqnv8LiAQSZRBBhokZD7t/m41e49RYrKCOyJu0JsytpdlgY4h7v/5T7N2hG9qWJiTCW6Mxz4nlOvMBGUPeIBdKeMDWKKRIdssv2iLUTPPElTpxmoWdfEmEiMolAMBxw+xqXLnJ3nZXDxC7ZJ+xJsyeRGNHcZT4w4r2fcP0c2xt+LU1UIApHH+fkkxxE1acZEJWpUkyLgkJT6OPw0zzxAoceoTtnLMJEZNoXSHa3uXaBT26wVbNwEAOyr9VQb9KtSFz8gKvnuH/LWCJNTtgTxlYP8/hTPHmKKhkOKQsIU6OYBkF0yIZ6QJ0cfZLHnqO3TFT2hYnJJNDUbN3n4zPcv09WdOYwImuE2RYkotBUbODyJW5e9XAEEcYWlzn+HF/6N8RR+l06h4iOfeELr5gGQcyRNbZZSo4d5dAxBJlIIkxMhLH+Fjc+4t3/TnOJxSH1JlmTiTTbkkDTp2yxmtx4m8tvs7tFNkSQaaIyESyu8uQLVCsMK2IeBWEqFNOiQ51I1tY4dJyVg/YlaXIiPLC1zvVLnHuPuqE3R32fHBFav5K7lAErS9z4mEtnuX+bekSmhyOY73H8CRYXCTTp19IXXjENAkETxAIHT7F2nN6yfWFiMskkAsn6Ha5e42pDfZjuCvVdjLR+Jcghkcwf4tZtLp3nxhWGA2Pp4ejOsXaU1TkWRtS7xsJ0KKZIg5ynd5LeYeYWPBBhojIZ7nL9AlfOMl9T1RiR9oTWr6R9SQyJ5P4dzr1NfxtBhIeidOitsNih26e5iwodU6GYImlPobNEd4GqMhZh4pqa9Tt8/BaX3mJ5hc6QepuwJ7X+XzW5RXfE1kXOfoc7lxj2jWWSaaKiUHWoglKTfQSKqVBMm6QZ0dRkGss0caMB1z/m/FtcP8fKGmVIs6n1W2RNs8V80r/O+z/g8rts3kXSpMlLmppMMogKiTQViilSkAO2rrB1m92+BzJ95jKJQLKzybs/5epFRkGni5ocIbT+Pkk2dBYZ9bg55L23+OQSEUQYyzQxzYjdLXZqRj3KITQYmQrFNEg0VIkdbn3E7cts3rcvfeYyyTS2foeP3uSV73LvBsvL1DfIvn2p9TvkiKqm9HnnO5x9iVtXyZpMMk1EJoNdbl/n3i79DlUPSaapUEyDJIdUQQT3b3H9Arevko0HMv3RZZLpgd1tLp/htW9y4VUG9+l1qO+RA61PIQdUDXPBlbc582M++Dk7GzQ1kkykz0SmsWzYus+Fd9jcIJNIpH3hC6+YBknuULpUq+wGFz/i0vvUQyIINDXSH1UmmcYiuPsJb36bH/478jbdPrlJk1qfVk2p6Kwy6vDBG7z8X7h1mdGAKDQ1TUOmP6pMMomgGXH3Gm9+n/oWC0PqLbI2Naqv+MY3TIuKCDrJzn3qEYceZ2mV+QUiSGR6IMKnl6TfFEEE/W1uXOCl/8ir3+HGJ3RXiYamT6R9qfUpZGJEZ4nBkPW77G4zv8TKQeZ7lLAvkR6I8AfJ9BsiiOD8GV75H/zob8mGDnITNdJUqL7iG98wJSIJdLr019ndZNind4D5JeYWiEKEByL8f8ukGXH/Fudf55W/5eff5toF6kKnYIChfan1aSUaqi5N0u9z7yZ1H0nvAJ0uVce+MBbhH6Sp6W9x9SNe+TavfZdr7zEXVDXZJ9LU6JgiOSIQc8wV7p3nh39N3dDf4bmvsnSQzhxVRRQkwu+WxhKZZENTM9hl6y4f/ILXvsnLf81OobNIb5H6Dmr7UusP1ZAbdFdoKi6fZesGN8/T3+WZP+XQo8z1KBWloBD2hN8vSWRDNtQ12+t8coHXvs/Lf8PFN1iZJ7ZRE6ZLx5TJmtwg5uks0PT58X/l3Bme/3Oe/+c8+hQHj7K0SqdLFL9bGhsNGeywuc7dG1z9kLMv897rfPIhNRYWCTR3USO1/gEyyS1iyOoBBtu882MuvMeX/4pn/5wnv8zBYyyv0luiO4/w+yXDAf0tNu9z4zIf/pyzL/PeL9i9w3yXUpMNmaZOx7RJ1BiiEIXBOlfPsHWTc+9x9AhHj3HkNAsH6MwTfrtMmobdTTZvcusyt+9w5yb3znH/NsMd5uYoNWpyqPXHUpMDSiEaRgPuXuLtH3DpQ9Ye5cgKhx9j9VEWD1J1/G5J3bBzj/VPuH2JT+5y+2PuXWRrk86QqiFrpKnUMa2GKJSKXpfRFtfvcO5DesnaMgefpXeQzjwl/L0SiWbE7jqbN7hzhc0BdbLYMDdPr0OgGaDW+mOrabao5ul0SNy9yLWPGQUHGlaPc+AEi0eoOkT4rTKpa3busHGNu5fZKFQNi0Fv0b4R2ZhaHdOsIZPcoOqytMjyMs2Qfp+Lb1AHTfi9AqWhg84KB5eJJLfIXXKHtCe1PkM5IAcIej16Pcxhl4173LlJXUi/X6Bq6HTornKkSwzJbXITDdJU65h2aSxHBLImGkrSnaNbyPCpRE2piW0EmRihRmpNQtqX2EWNCjVVEF2aDhH2pd8uiZrSEFsoZIMRGqSp1zErGnJADgiUiqpLFITfL8kw1uySDYnQelhyhBGJQJmjqlAIvxR+q0w0aMhd0uzpmDERSLImN0l/mLAnEIQ9qfWQRSDJATkgfXrh/xL2pZnRMWvSbwh7wqeT9qXW50n6DRE+vfRraeYUrVZrZnW0SK1pklqfUtFqtWZW0Wq1ZlbRarVmVtFqtWZW0Wq1ZlbRarVmVtFqtWZW0Wq1ZlbRarVmVtFqtWZW0Wq1ZlbRarVmVtFqtWZW0Wq1ZlbRarVmVtFqtWZW0Wq1ZlbRarVmVtFqtWZW0Wq1ZlbRarVmVtFqtWZW0Wq1ZlbRarVmVtFqtWZW0Wq1ZlbRarVmVtFqtWZW0Wq1ZlbRarVmVtFqtWZW0Wq1ZlbRarVmVtFqtWZW0Wq1ZlbRarVmVtFqtWZW0Wq1ZlbRarVmVtFqtWZW0Wq1Ztb/AVsUdTNabiCPAAAAAElFTkSuQmCC",universalLink:"https://app.altme.io/app/download"},{key:"feralfile_app",name:"Feral File - The place to experience digital art today",shortName:"Feral File",color:"rgb(236, 255, 12)",logo:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAYAAABccqhmAAAM/klEQVR4Ae3Be2iWBf/H8ff1vS9337XN1ZZiC3OJWNlJFAUVQ1fmk0mHtTIqC5FGJPhHJVZYYUQHOvwhGGFIB0uyllaYYcqyooJEsZOYRGrRNJva3Fa75+5dz4+C5yF6+ieIu5+fz+uVZP8HM5MUmJmswMxkBWYmKzAzWYGZyQrMTFZgZrICM5MVmJmswMxkBWYmKzAzWYGZyQrMTFZgZrICM5MVmJmswMxkBWYmKzAzWYGZyQrMTFZgZrICM5MVmJmswMxkBWYmKzAzWYGZyQrMTFZgZrICM5MVmJmswMxkBWYmKzAzWYGZyQrMTFZgZrICM5MVmJmswMxkBWYmKzAzWYGZyQrMTFZgZrICM5MVmJmswMxkBWYmKzAzWYGZyQrMTFZgZrICM5MVmJmswMxkBWYmKzAzWYGZyQrMTFaKuNbWVvr6+lCUy+Vobm4ml8uhqK+vj9bWVsqlUCjQ1NREOaUIy7KMlpYWjhw5gqKKigquuOIKcrkcirq6urjxxhvJsoxyGDZsGE1NTZRTIC4iUBURKEuShHJKkoRyC8xMVmBmsgIzkxWYmazAzGQFZiYrMDNZgZnJCsxMVmBmsgIzkxWYmazAzGQFZiYrEHbs2DFKpRKq0jQlSRJUFYtF1AXCOjs76e3tRVVNTQ1pmqKqo6ODLMtQFghrb2+nt7cXVQ0NDeRyOVTt2bMHdYGw7du3o2zixIko27p1K+oCYRs2bEDZjBkzUJVlGe+88w7qAlGdnZ1s2rQJVfX19TQ2NqLq66+/Ztu2bagLRK1atYrOzk5UzZ8/n3w+j6qnn36aUqmEukBQV1cXjz/+OKpqa2tZuHAhqr799ltWrlyJQSDooYceYt++fah66KGHOOWUU1C1ePFiOjs7MQjEbNmyhSeffBJVV155JbfccguqVq1axZo1a7DfBEK+/vprrr/+evr6+lA0duxYnnvuOSICRR9//DELFiwgyzLsNykidu/ezcUXX8z+/ftRNG7cODZs2EBNTQ2KPvroI2bPnk1XVxf2XykCNmzYwM0330xHRweKrrvuOp5++mlqampQ9Oyzz7Jw4UK6u7ux30s5jnV0dHDvvffyzDPPUCqVUDN8+HAefvhhrr/+epIkQc3evXtZtGgRra2t2P+WchzavXs3zz77LCtWrODw4cMoSZKEMWPG0NLSwvz586msrERJlmV8+umnrFixglWrVtHd3Y39uZQy27VrF/39/fxV/f39dHd3s3fvXrZt28YHH3zAjh07KJVK/F0qKiqoq6ujqqqKiKCcKioqGDx4MCNGjGDixIlMmzaNc889l1wux9+lWCzS3t5OT08P5Xbs2DGOHj3KN998w9atW3nvvffYtWsXAwMD/F0KhQJ1dXVUVlaSJAl/VV1dHeWWUmbTp0/nwIED/NOdc845NDU10djYyPnnn091dTWDBg1CxaeffkprayttbW3s3LmTo0ePMjAwgIIkSRg/fjzNzc1ceOGFjBkzhsrKStI05f+7lDJLkoR/sqlTp3Lfffcxffp0crkcajZu3MiDDz7IRx99xMDAAEoigssuu4wlS5YwYcIEkiTheJNi/9OQIUNYtmwZc+bMIUkS1Bw4cIDbbruN119/nSzLUHPGGWewYsUKLr74Yo5nKfYH48aNY926dZx++uko+vDDD7n22mtpb29H0cyZM3nppZeoq6vjeJdivzNlyhTWr1/PSSedhKINGzZw7bXX0tPTg6Krr76aF198kUKhgILA/uPcc8/lzTff5KSTTkLR9u3bmTNnDj09PSi66KKLWLVqFYVCARWB/aq6uppXX32V2tpaFB0+fJirr76a7u5uFJ122mmsXr2aE044ASWB/Wrp0qWcddZZqFq0aBF79+5FUZIkLFu2jKFDh6ImMM4880wWLFiAqh07dvDCCy+gqrGxkaamJhQFxh133EFFRQWqHnnkEfr7+1G1ePFiVAXiqquraW5uRtWBAwd44403UDVy5EimT5+OqkDctGnTOPnkk1H19ttv09vbi6rZs2eTpimqAnGNjY0o27RpE8oaGxtRFog777zzUPbll1+iKkkSxowZg7JA3PDhw1HV399Pe3s7qk488USGDh2KskBYkiTU1dWhqlQq0dPTg6p8Pk91dTXKAnFJkqAqyzKyLENVkiQkSYKywMxkBWYmKzAzWYGZyQrMTFZgZrICM5MVmJmswMxkBWYmKzAzWYGZyQrMTFZgZrJSyiyfz1MoFCiHJEkoFov09vaiqFgsks/nUVVRUUGxWKRckiQhn89TTilltmvXLrIso1xGjhzJkSNHUJTP59m3bx/5fB5FR44coba2lizLKIdhw4axZ88eyimlzPL5POWSZRl9fX309vaiKp/PUygUUJTP5+nt7SXLMsqhWCxSboGZyQrMTFZgZrICM5MVmJmswMxkBWYmKzAzWYGZyQrMTFZgZrICM5MVmJmswMxkBcKyLCPLMlQlSUKSJKjKsgx1gbCuri6KxSKqKisryeVyqDp06BBZlqEsEHbw4EF+/vlnVNXX15OmKaq+++471AXCdu7cSZZlqDrnnHNQ9vnnn6MuENbW1oayGTNmoKytrQ11gaj+/n7Wr1+PqkKhwKWXXoqqI0eOsGXLFtQFot59912++eYbVF1xxRUMGzYMVa2trXR1daEuEPXoo4+iKk1T7rrrLlT19fXxxBNPYBAIWrt2LW1tbai66aabGDt2LKqWL1/OV199hUEg5uDBgyxcuJAsy1DU0NDAY489hqpdu3Zx//33Y78JhPzyyy/ccMMNfP/99yiqqqritddeo7a2FkWHDx/mmmuuoaurC/tNIKJYLHLTTTexefNmFFVWVrJmzRrGjRuHop9++onLL7+cL774AvuvFAGHDh3ihhtuYOPGjSiqr6/nlVdeYcqUKSj69ttvueqqq9i+fTv2eynHuc2bN9PS0sKePXtQkyQJV155JU899RTDhg1DTZZlrFmzhoULF/Ljjz9if5RyHMqyjK1bt/Lggw/y1ltvMTAwgJKIYPLkySxZsoSZM2eiplQqsWXLFpYuXcoHH3yA/bmU40B/fz89PT3s3LmT999/n9bWVrZt20aWZSiICAYPHsyYMWNobGykubmZCy64ABXHjh2jq6uLzz77jLa2NtauXcuXX37JP12WZZRbSplNmTKFQ4cO8VdlWcbPP/9MR0cHvb29/F0igrPPPpupU6cyceJERo4cyeDBgxk0aBDlVllZSX19Pfl8nr9LqVTiiy++YMuWLXzyySfs27ePo0eP0tfXRzkNDAzQ3d3NoUOH6Ovr4++Sy+UYO3YsU6dOZfz48TQ0NFBVVUWapvxVaZpSbilltmfPHvbv388/VVVVFXPnzqWlpYULLriAJElQ0tPTw8qVK1mxYgU7d+4kyzKU1NbW0tLSwrx58xg9ejTHmxT7U83NzTz22GM0NDSgJssyVq9ezd133813332Hmlwuxy233MIDDzzAkCFDOF6l2B9UVVWxbNky5s2bh6LOzk5uvfVWXn75ZRSdcsopPP/888yaNYvjXYr9zsknn8z69euZPHkyin744QdmzZrF9u3bUTR8+HA2b97M6NGjUZBi/1FdXc1bb73FpEmTUNTZ2cm//vUvduzYgaJTTz2VtrY2Ro0ahYrAfpUkCcuXL2fSpEkoGhgYYN68eezYsQNFFRUVrF69mlGjRqEksF/NmTOHuXPnouqZZ55h3bp1qLr99tuZNm0aagKjpqaGRx99FFUdHR3cc889qBoxYgT33HMPigJj/vz5nH766ahatmwZhw8fRtWdd95JdXU1igJxuVyOW2+9FVXFYpGVK1eiqqamhrlz56IqEDd+/HhGjRqFqra2Ntrb21E1Y8YMampqUBWIu+SSS0iSBFWbNm1C2axZs1AWiJswYQLKPvnkE5SNGzcOZYG4hoYGVJVKJfbu3YuqQqFAfX09ygJhSZIwZMgQVPX399PZ2YmqQqFATU0NygJx+XweVVmW0d/fj6pcLsegQYNQFpiZrMDMZAVmJiswM1mBmckKzExWYGayAjOTFZiZrMDMZAVmJiswM1mBmckKzExWUGZZllFOWZahbGBgAFUDAwOoSymz5cuX09vbS7lUV1ejatCgQbzwwguUSiUUVVRUkCQJylLKrKmpCSuPXC7HnDlzMF2BmckKzExWYGayAjOTFZiZrMDMZAVmJiswM1mBmckKzExWYGayAjOTFZiZrMDMZAVmJiswM1mBmckKzExWYGayAjOTFZiZrMDMZAVmJiswM1mBmckKzExWYGayAjOTFZiZrMDMZAVmJiswM1mBmckKzExWYGayAjOTFZiZrMDMZAVmJiswM1mBmckKzExWYGayAjOTFZiZrMDMZAVmJiswM1mBmckKzExWYGayAjOTFZiZrMDMZAVmJiswM1mBmckKzExWYGayAjOTFZiZrMDMZP0bvkGl4FxzioIAAAAASUVORK5CYII=",universalLink:"https://app.feralfile.com/apps/tezos",deepLink:"autonomy-tezos://"},{key:"temple_ios",name:"Temple Wallet",shortName:"Temple",color:"",logo:"data:image/png;base64,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",universalLink:"https://templewallet.com",deepLink:"temple://"},{key:"atomex_ios",name:"Atomex Wallet",shortName:"Atomex",color:"",logo:"data:image/png;base64,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",universalLink:"https://atomex.me",deepLink:"atomex://"},{key:"umami_ios",name:"Umami Mobile",shortName:"Umami Mobile",color:"",logo:"data:image/png;base64,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",deepLink:"umami://",universalLink:"https://umamiwallet.com/"},{key:"trust_ios",name:"Trust Wallet",shortName:"Trust Wallet",color:"",supportedInteractionStandards:["wallet_connect"],logo:"data:image/png;base64,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",universalLink:"https://link.trustwallet.com",deepLink:"trust://"},{key:"exodus_mobile",name:"Exodus Mobile",shortName:"Exodus",color:"",logo:"data:image/svg+xml;base64,PHN2ZyBmaWxsPSJub25lIiBoZWlnaHQ9IjMwMCIgdmlld0JveD0iMCAwIDMwMCAzMDAiIHdpZHRoPSIzMDAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPjxsaW5lYXJHcmFkaWVudCBpZD0iYSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIHgxPSIyNTYuODc1IiB4Mj0iMTcxLjMiIHkxPSIzMjAuNjI1IiB5Mj0iLTMyLjk0NTkiPjxzdG9wIG9mZnNldD0iMCIgc3RvcC1jb2xvcj0iIzBiNDZmOSIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iI2JiZmJlMCIvPjwvbGluZWFyR3JhZGllbnQ+PGxpbmVhckdyYWRpZW50IGlkPSJiIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjIyLjUwMDIiIHgyPSIxNzAuNjI1IiB5MT0iNjcuNSIgeTI9IjE3OC4xMjUiPjxzdG9wIG9mZnNldD0iLjExOTc5MiIgc3RvcC1jb2xvcj0iIzg5NTJmZiIgc3RvcC1vcGFjaXR5PSIuODciLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiNkYWJkZmYiIHN0b3Atb3BhY2l0eT0iMCIvPjwvbGluZWFyR3JhZGllbnQ+PG1hc2sgaWQ9ImMiIGhlaWdodD0iMzAwIiBtYXNrVW5pdHM9InVzZXJTcGFjZU9uVXNlIiB3aWR0aD0iMjk2IiB4PSIzIiB5PSIwIj48cGF0aCBkPSJtMjk4LjIwNCA4My43NjQ1LTEyNy43NTQtODMuNzY0NXY0Ni44MzMybDgxLjk1NSA1My4yNTU4LTkuNjQyIDMwLjUwOWgtNzIuMzEzdjM4LjgwNGg3Mi4zMTNsOS42NDIgMzAuNTA5LTgxLjk1NSA1My4yNTZ2NDYuODMzbDEyNy43NTQtODMuNDk3LTIwLjg5MS02Ni4zNjl6IiBmaWxsPSJ1cmwoI2EpIi8+PHBhdGggZD0ibTU5LjMwMSAxNjkuNDAyaDcyLjA0NnYtMzguODA0aC03Mi4zMTM4bC05LjM3NC0zMC41MDkgODEuNjg3OC01My4yNTU4di00Ni44MzMybC0xMjcuNzU0MjMgODMuNzY0NSAyMC44OTA2MyA2Ni4zNjk1LTIwLjg5MDYzIDY2LjM2OSAxMjguMDIyMjMgODMuNDk3di00Ni44MzNsLTgxLjk1NTgtNTMuMjU2eiIgZmlsbD0idXJsKCNhKSIvPjwvbWFzaz48cGF0aCBkPSJtMjk4LjIwMyA4My43NjQ1LTEyNy43NTQtODMuNzY0NXY0Ni44MzMybDgxLjk1NiA1My4yNTU4LTkuNjQyIDMwLjUwOWgtNzIuMzE0djM4LjgwNGg3Mi4zMTRsOS42NDIgMzAuNTA5LTgxLjk1NiA1My4yNTZ2NDYuODMzbDEyNy43NTQtODMuNDk3LTIwLjg5LTY2LjM2OXoiIGZpbGw9InVybCgjYSkiLz48cGF0aCBkPSJtNTkuMzAwNyAxNjkuNDAyaDcyLjA0NTN2LTM4LjgwNGgtNzIuMzEzMWwtOS4zNzQtMzAuNTA5IDgxLjY4NzEtNTMuMjU1OHYtNDYuODMzMmwtMTI3Ljc1MzQ3IDgzLjc2NDUgMjAuODkwNTcgNjYuMzY5NS0yMC44OTA1NyA2Ni4zNjkgMTI4LjAyMTQ3IDgzLjQ5N3YtNDYuODMzbC04MS45NTUxLTUzLjI1NnoiIGZpbGw9InVybCgjYSkiLz48ZyBtYXNrPSJ1cmwoI2MpIj48cGF0aCBkPSJtMy43NTAyNCAwaDI5Mi41djMwMGgtMjkyLjV6IiBmaWxsPSJ1cmwoI2IpIi8+PC9nPjwvc3ZnPg==",supportedInteractionStandards:["beacon"],deepLink:"exodus://wc",universalLink:"https://www.exodus.com/"},{key:"kukai_ios",name:"Kukai Wallet",shortName:"Kukai",color:"",logo:"data:image/png;base64,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",supportedInteractionStandards:["wallet_connect"],universalLink:"https://wallet.kukai.app",deepLink:"kukai://"},{key:"fireblocks_ios",name:"Fireblocks Wallet",shortName:"Fireblocks",color:"",logo:"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTAwMHB4IiBoZWlnaHQ9IjEwMDBweCIgdmlld0JveD0iMCAwIDExMiAxMTIiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8dGl0bGU+RmlyZUJsb2NrcyBOYXZ5PC90aXRsZT4KICAgIDxnIGlkPSJGaXJlQmxvY2tzLU5hdnkiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPgogICAgICAgIDxnIGlkPSJCcmFuZC9Mb2dvbWFyayIgZmlsbD0iIzAwMkU3RiI+CiAgICAgICAgICAgIDxnIGlkPSJCcmFuZC9CcmFuZG1hcmsvTmF2eSI+CiAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMTEyLDAgQzExMi41NTIyODUsMS40NTI4NTkxN2UtMTUgMTEzLDAuNDQ3NzE1MjUgMTEzLDEgTDExMywxIEwxMTMsMTEyIEMxMTMsMTEyLjU1MjI4NSAxMTIuNTUyMjg1LDExMyAxMTIsMTEzIEwxMTIsMTEzIEwxLDExMyBDMC40NDc3MTUyNSwxMTMgNi43NjM1Mzc1MWUtMTcsMTEyLjU1MjI4NSAwLDExMiBMMCwxMTIgTDAsMSBDMS40ODY2NzY4NmUtMTUsMC40NDc3MTUyNSAwLjQ0NzcxNTI1LDEuMDE0NTMwNjNlLTE2IDEsMCBMMSwwIFogTTU2LjQ5OTc0ODksMzEuMzg4ODg4OSBMMjUuMTEwODYsODEuNjExMTExMSBMODcuODg4NjM3OCw4MS42MTExMTExIEw1Ni40OTk3NDg5LDMxLjM4ODg4ODkgWiIgaWQ9IkJyYW5kL0JyYW5kbWFyayI+PC9wYXRoPgogICAgICAgICAgICA8L2c+CiAgICAgICAgPC9nPgogICAgPC9nPgo8L3N2Zz4=",supportedInteractionStandards:["wallet_connect"],universalLink:""}];var pl=mo('<svg stroke-width=0 xmlns=http://www.w3.org/2000/svg viewBox="0 0 512 512"height=1em width=1em><path d="m289.94 256 95-95A24 24 0 0 0 351 127l-95 95-95-95a24 24 0 0 0-34 34l95 95-95 95a24 24 0 1 0 34 34l95-95 95 95a24 24 0 0 0 34-34Z">'),fl=mo('<svg stroke-width=0 xmlns=http://www.w3.org/2000/svg viewBox="0 0 320 512"height=1em width=1em><path d="M224 480c-8.188 0-16.38-3.125-22.62-9.375l-192-192c-12.5-12.5-12.5-32.75 0-45.25l192-192c12.5-12.5 32.75-12.5 45.25 0s12.5 32.75 0 45.25L77.25 256l169.4 169.4c12.5 12.5 12.5 32.75 0 45.25C240.4 476.9 232.2 480 224 480z">'),ml=mo('<svg xmlns=http://www.w3.org/2000/svg id=Guides x=0 y=0 version=1.1 viewBox="0 0 179.2 43"width=140 height=40><path fill=#3880FF d="M45 19v.9c0 .3-.2 7.5-3.4 13.2-3.3 5.6-9.4 9.3-9.7 9.5l-.8.4-1.3-.8-7.6-4.4c-.5-.3-.9-.6-1.4-.9-.4-.3-.7-.5-1.1-.8-.8-.7-1.5-1.4-2.1-2.2-.9-1.1-1.6-2.4-2.1-3.7-.9-2.3-1.3-4.8-1.2-7.5.8-.4 1.6-.6 2.4-.6h.6c-.2 2.4.1 4.6.8 6.6 1 2.8 2.9 5.1 5.5 6.6l7.4 4.3c.2-.1.4-.2.6-.4 1.9-1.3 5.3-4.1 7.3-7.6 2.2-3.9 2.8-8.9 3-10.8L38.8 19c.3-1 .4-2.1.5-3.2L45 19z"class=st0></path><path fill=#3880FF d="M36.3 4.1v10.3c0 .5 0 1.1-.1 1.6s-.1.9-.2 1.3c-.2 1-.5 2-.9 3-.5 1.3-1.3 2.6-2.2 3.7-1.5 1.9-3.5 3.6-5.9 4.8-.9-.6-1.6-1.3-2-2.4 2.1-1 3.9-2.3 5.2-4 1.9-2.3 3-5.1 3-8.1V5.9l-.6-.3c-2-1-6.1-2.6-10.1-2.6-4.5 0-9.1 2-10.9 2.9v3.6c-1 .3-2 .7-3 1.1V4.1l.8-.4C9.7 3.5 16 0 22.5 0s12.8 3.5 13.1 3.6l.7.5z"class=st0></path><path fill=#3880FF d="M10.5 16.5l-7.4 4.3v.7c.2 2.1.9 6.5 2.9 10 2.2 3.9 6.2 6.9 7.9 8l3.1-1.8c.8.7 1.6 1.4 2.5 2L13.8 43l-.8-.5c-.3-.2-6.4-3.9-9.7-9.5C.1 27.4 0 20.2 0 19.9V19l1.3-.8L9 13.9c.5-.3.9-.5 1.4-.7.4-.2.8-.4 1.3-.5 1-.4 2-.6 3-.7 1.4-.2 2.9-.2 4.3 0 2.4.3 4.8 1.2 7.1 2.7 0 1-.4 2-1 2.9-1.9-1.3-4-2.2-6-2.5-3.1-.6-6-.1-8.6 1.4z"class=st0></path><g><path d="M73.9 23c.9 1 1.3 2.3 1.3 3.7 0 1.9-.6 3.4-1.9 4.5-1.3 1.1-3.1 1.7-5.5 1.7h-8.6v-23h8.4c2.3 0 4.1.5 5.3 1.5 1.2 1 1.8 2.4 1.8 4.2 0 1.5-.4 2.7-1.2 3.6-.8.9-1.8 1.5-3.1 1.8 1.5.3 2.6 1 3.5 2zm-11.7-3h5c1.5 0 2.6-.3 3.4-1 .8-.7 1.2-1.6 1.2-2.8 0-1.2-.4-2.1-1.1-2.8-.8-.7-1.9-1-3.5-1h-4.8V20zm8.7 9.4c.9-.7 1.3-1.7 1.3-3s-.4-2.3-1.3-3c-.9-.7-2.1-1.1-3.7-1.1h-5v8.2h5c1.6-.1 2.8-.4 3.7-1.1zM95.3 24.6H81c.1 2.1.6 3.6 1.7 4.6s2.4 1.5 4 1.5c1.4 0 2.6-.4 3.6-1.1 1-.7 1.6-1.7 1.8-2.9h3.2c-.2 1.2-.7 2.4-1.5 3.3-.8 1-1.7 1.7-2.9 2.3-1.2.5-2.6.8-4.1.8-1.7 0-3.2-.4-4.6-1.1-1.3-.7-2.4-1.8-3.1-3.2-.8-1.4-1.1-3-1.1-4.9 0-1.9.4-3.5 1.1-4.9.8-1.4 1.8-2.5 3.1-3.2 1.3-.7 2.9-1.1 4.6-1.1 1.7 0 3.3.4 4.6 1.1 1.3.7 2.3 1.7 3 3 .7 1.2 1 2.6 1 4.1.1.7 0 1.2-.1 1.7zm-3.5-4.8c-.5-.9-1.2-1.6-2.1-2-.9-.4-1.8-.7-2.8-.7-1.6 0-3 .5-4.1 1.5-1.1 1-1.7 2.5-1.8 4.5h11.5c0-1.3-.2-2.4-.7-3.3zM111.2 16c1.2.9 2.1 2 2.5 3.5V15h3v18h-3v-4.6c-.5 1.5-1.3 2.6-2.5 3.5-1.2.9-2.7 1.3-4.4 1.3-1.6 0-3-.4-4.3-1.1-1.2-.7-2.2-1.8-2.9-3.2-.7-1.4-1.1-3-1.1-4.9 0-1.9.4-3.5 1.1-4.9.7-1.4 1.7-2.5 2.9-3.2 1.2-.7 2.7-1.1 4.3-1.1 1.7-.1 3.1.4 4.4 1.2zm-8 3.1c-1.1 1.2-1.7 2.8-1.7 4.8 0 2.1.5 3.7 1.7 4.8 1.1 1.2 2.6 1.8 4.4 1.8 1.2 0 2.2-.3 3.2-.8.9-.5 1.7-1.3 2.2-2.3.5-1 .8-2.1.8-3.5 0-1.3-.3-2.5-.8-3.5s-1.2-1.8-2.2-2.3c-.9-.5-2-.8-3.2-.8-1.9.1-3.3.7-4.4 1.8zM135 16.6c1.5 1.2 2.4 2.9 2.8 4.9h-3.1c-.2-1.3-.8-2.3-1.8-3-1-.7-2.2-1.1-3.6-1.1-1 0-2 .2-2.9.7-.9.5-1.6 1.2-2.1 2.2-.5 1-.8 2.2-.8 3.7s.3 2.7.8 3.7 1.2 1.7 2.1 2.2c.9.5 1.8.7 2.9.7 1.4 0 2.6-.4 3.6-1.1 1-.7 1.6-1.8 1.8-3h3.1c-.3 2.1-1.3 3.7-2.8 4.9-1.5 1.2-3.4 1.8-5.7 1.8-1.7 0-3.2-.4-4.6-1.1-1.3-.7-2.4-1.8-3.1-3.2-.8-1.4-1.1-3-1.1-4.9 0-1.9.4-3.5 1.1-4.9.8-1.4 1.8-2.5 3.1-3.2 1.3-.7 2.9-1.1 4.6-1.1 2.3-.1 4.2.6 5.7 1.8zM154.5 15.9c1.4.7 2.4 1.8 3.2 3.2.8 1.4 1.2 3 1.2 4.9 0 1.9-.4 3.5-1.2 4.9-.8 1.4-1.8 2.4-3.2 3.2-1.4.7-2.9 1.1-4.6 1.1-1.7 0-3.3-.4-4.6-1.1-1.4-.7-2.4-1.8-3.2-3.2-.8-1.4-1.2-3-1.2-4.9 0-1.9.4-3.5 1.2-4.9.8-1.4 1.9-2.5 3.2-3.2 1.4-.7 2.9-1.1 4.6-1.1 1.7-.1 3.2.3 4.6 1.1zm-7.6 2.2c-.9.5-1.6 1.2-2.2 2.2-.6 1-.8 2.2-.8 3.7 0 1.4.3 2.7.8 3.6.6 1 1.3 1.7 2.2 2.2.9.5 1.9.7 3 .7s2.1-.2 3-.7c.9-.5 1.6-1.2 2.2-2.2.6-1 .8-2.2.8-3.6 0-1.5-.3-2.7-.8-3.7-.6-1-1.3-1.7-2.2-2.2-.9-.5-1.9-.7-3-.7s-2.1.2-3 .7zM177.3 16.7c1.3 1.3 1.9 3.3 1.9 5.8v10.4h-3V22.8c0-1.8-.5-3.2-1.4-4.1-.9-1-2.2-1.4-3.7-1.4-1.6 0-2.9.5-3.9 1.6s-1.5 2.6-1.5 4.6V33h-3V15h3v4.3c.5-1.5 1.3-2.6 2.4-3.4 1.2-.8 2.5-1.2 4-1.2 2.2 0 3.9.6 5.2 2z"class=st1>'),hl=mo('<svg xmlns=http://www.w3.org/2000/svg viewBox="0 0 448 512"><path d="M0 224h192V32H0v192zM64 96h64v64H64V96zm192-64v192h192V32H256zm128 128h-64V96h64v64zM0 480h192V288H0v192zm64-128h64v64H64v-64zm352-64h32v128h-96v-32h-32v96h-64V288h96v32h64v-32zm0 160h32v32h-32v-32zm-64 0h32v32h-32v-32z">');function gl(e){return t=pl(),Oi((n=>bo(t,e.style?{overflow:"visible","font-size":"22px",...e.style}:{overflow:"visible","font-size":"22px"},n))),t;var t}function yl(e){return t=fl(),Oi((n=>bo(t,e.style?{overflow:"visible",...e.style}:{overflow:"visible"},n))),t;var t}function vl(e){return t=ml(),Oi((n=>bo(t,e.style?{...e.style}:{},n))),t;var t}function bl(){return hl()}var xl=".loader {\n height: 3px;\n position: relative;\n background-color: #ddd;\n position: absolute;\n width: 100%;\n left: 0px;\n bottom: 0px;\n overflow: hidden;\n}\n\n.loader:before {\n content: '';\n position: absolute;\n left: -50%;\n height: 3px;\n width: 40%;\n background-color: #3880ff;\n -webkit-animation: lineAnim 1s linear infinite;\n -moz-animation: lineAnim 1s linear infinite;\n animation: lineAnim 1s linear infinite;\n}\n\n@keyframes lineAnim {\n 0% {\n left: -40%;\n }\n 50% {\n left: 20%;\n width: 80%;\n }\n 100% {\n left: 100%;\n width: 100%;\n }\n}\n",Sl=mo("<div class=loader>");const Tl=e=>Sl();var wl=mo("<div><div><div class=alert-header><div class=alert-logo></div><div class=alert-button-icon></div></div><div class=alert-modal-loading-wrapper></div><div class=alert-body>"),kl=mo("<div class=alert-button-icon>"),El=mo("<div class=alert-button-icon-empty>"),Cl=mo("<div>"),Nl=mo("<div class=alert-divider>"),Al=mo("<div class=alert-footer>");const Il=e=>{let t=null;ji((()=>{t=document.body.style.overflow,document.body.style.overflow="hidden"})),zi((()=>{document.body.style.overflow=t}));const n=window.innerWidth<=800;return c=wl(),l=c.firstChild,u=l.firstChild,d=u.firstChild,_=d.nextSibling,p=u.nextSibling,f=p.nextSibling,c.$$click=()=>{e.onCloseClick()},l.$$click=e=>{e.stopPropagation()},xo(u,(r=Ri((()=>!!e.onBackClick)),()=>{return r()&&(vo(t=kl(),"click",e.onBackClick,!0),xo(t,uo(yl,{})),t);var t}),d),xo(u,(i=Ri((()=>!e.onBackClick)),()=>i()&&El()),d),xo(d,uo(vl,{})),vo(_,"click",e.onCloseClick,!0),xo(_,uo(gl,{})),xo(p,uo(Tl,{})),xo(f,(()=>e.content),null),xo(f,!n&&(xo(s=Cl(),(o=Ri((()=>!!e.extraContent)),()=>o()&&Nl()),null),xo(s,(()=>e.extraContent),null),Oi((()=>yo(s,e.showMore?"alert-body-extra-show":"alert-body-extra-hide"))),s),null),xo(l,(a=Ri((()=>!(n||!e.extraContent))),()=>{return a()&&((t=Al()).$$click=()=>{e.onClickShowMore&&e.onClickShowMore()},xo(t,(()=>e.showMore?"Show less":"Show more")),t);var t}),null),Oi((t=>{var n=e.open?"alert-wrapper-show":"alert-wrapper-hide",r=e.open?"alert-modal-show":"alert-modal-hide",i=e.loading?{opacity:1,transition:"all ease 0.3s",height:"14px",overflow:"unset",width:"unset"}:{opacity:0,transition:"all ease 0.3s",height:0,overflow:"hidden",width:0},o=e.extraContent?"":"1.8em";return n!==t.e&&yo(c,t.e=n),r!==t.t&&yo(l,t.t=r),t.a=bo(p,i,t.a),o!==t.o&&(null!=(t.o=o)?f.style.setProperty("margin-bottom",o):f.style.removeProperty("margin-bottom")),t}),{e:void 0,t:void 0,a:void 0,o:void 0}),c;var r,i,o,s,a,c,l,u,d,_,p,f};ho(["click"]);var Dl=mo("<div>"),Pl=mo("<div><div><h3></h3></div><div class=wallet-main-right><img>"),Ml=mo("<p>"),Ol=mo("<div class=wallet-main-tags>"),Fl=mo("<span class=wallet-main-tag>"),Rl=mo("<div class=wallet-small><img><h3>");const Ll=e=>{return xo(r=Dl(),(t=Ri((()=>!e.small)),()=>{return t()&&(i=Pl(),o=i.firstChild,s=o.firstChild,a=o.nextSibling.firstChild,vo(i,"click",e.onClick,!0),xo(s,(()=>e.name)),xo(o,(n=Ri((()=>!!e.description)),()=>{return n()&&(xo(t=Ml(),(()=>e.description)),t);var t}),null),xo(o,(r=Ri((()=>!!(e.tags&&e.tags.length>0))),()=>{return r()&&(xo(t=Ol(),uo(_o,{get each(){return e.tags},children:e=>{return xo(t=Fl(),e),t;var t}})),t);var t}),null),Oi((t=>{var n="wallet-main "+(e.mobile?"wallet-main-mobile":""),r="wallet-main-left "+(e.mobile?"wallet-main-left-mobile":""),s=e.image;return n!==t.e&&yo(i,t.e=n),r!==t.t&&yo(o,t.t=r),s!==t.a&&go(a,"src",t.a=s),t}),{e:void 0,t:void 0,a:void 0}),i);var n,r,i,o,s,a}),null),xo(r,(n=Ri((()=>!!e.small)),()=>{return n()&&(t=Rl(),r=t.firstChild,i=r.nextSibling,vo(t,"click",e.onClick,!0),xo(i,(()=>e.name)),Oi((()=>go(r,"src",e.image))),t);var t,r,i}),null),Oi((()=>yo(r,e.disabled?"wallet-disabled":""))),r;var t,n,r};ho(["click"]);var jl=mo("<div class=top-wallets-wrapper><div class=top-wallets-info><h3>Connect Wallet</h3></div><div class=top-wallets-wallets-main>"),zl=mo("<span>Do you wish to report a bug? <span class=top-wallets-learn-more>Click here"),Ul=mo("<span>If you don't have a wallet, you can select a provider and create one now. <span class=top-wallets-learn-more>Learn more"),Bl=mo("<div class=top-wallets-other-wallets><div class=top-wallets-other-wallets-left><h3>Other Wallets</h3><p>See other wallets you can use to connect</p></div><div class=top-wallets-other-wallets-right><img><img class=top-wallets-other-wallets-center-wallet><img>");const ql=e=>{const t=localStorage?localStorage.getItem(Y.ENABLE_METRICS):"false";return(()=>{var n=jl(),r=n.firstChild;r.firstChild;var i,o,s,a=r.nextSibling;return xo(r,"true"===t&&((i=zl()).firstChild.nextSibling.$$click=()=>e.onClickLearnMore(),i),null),xo(r,"true"!==t&&((o=Ul()).firstChild.nextSibling.$$click=()=>e.onClickLearnMore(),o),null),xo(a,uo(_o,{get each(){return e.wallets},children:t=>uo(Ll,{get disabled(){return e.disabled},get mobile(){return e.isMobile},get name(){return t.name},get description(){return t.descriptions.join(" & ")},get image(){return t.image},onClick:()=>e.onClickWallet(t.id),get tags(){return t.tags}})}),null),xo(a,(s=Ri((()=>!!e.otherWallets)),()=>{return s()&&(t=Bl(),n=t.firstChild.nextSibling.firstChild,r=n.nextSibling,i=r.nextSibling,t.$$click=()=>{e.otherWallets&&e.otherWallets.onClick()},Oi((t=>{var o=e.otherWallets.images[0],s=e.otherWallets.images[1],a=e.otherWallets.images[2];return o!==t.e&&go(n,"src",t.e=o),s!==t.t&&go(r,"src",t.t=s),a!==t.a&&go(i,"src",t.a=a),t}),{e:void 0,t:void 0,a:void 0}),t);var t,n,r,i}),null),n})()};ho(["click"]);var Vl=mo("<div class=wallets-list-main-wrapper><div class=wallets-list-wrapper></div><button class=wallets-button>");const Kl=e=>{return t=Vl(),n=t.firstChild,r=n.nextSibling,xo(n,uo(_o,{get each(){return e.wallets},children:t=>uo(Ll,{get disabled(){return e.disabled},get name(){return t.name},get description(){return t.descriptions.join(" & ")},get image(){return t.image},get small(){return e.small},onClick:()=>{e.onClickWallet&&e.onClickWallet(t.id)}})})),r.$$click=()=>e.onClickOther(),xo(r,(()=>e.isMobile?"Pair wallet on another device":"Show QR code")),t;var t,n,r};ho(["click"]);var Jl=mo("<div><h3 class=info-title></h3><div class=info-buttons>"),Wl=mo("<div>"),Hl=mo("<div class=info-description>"),Gl=mo("<pre class=info-data>"),Ql=mo("<button>"),Yl=mo("<a class=downloadLink>"),Zl=mo("<button id=qr-code-icon>");const Xl=e=>{return s=Jl(),a=s.firstChild,c=a.nextSibling,xo(s,(t=Ri((()=>!!e.icon)),()=>{return t()&&(xo(n=Wl(),(()=>e.icon)),Oi((t=>{var r="info-icon "+(e.iconBadge?"info-badge":""),i=e.bigIcon?{"font-size":"3.4em"}:{};return r!==t.e&&yo(n,t.e=r),t.t=bo(n,i,t.t),t}),{e:void 0,t:void 0}),n);var n}),a),xo(a,(()=>e.title)),xo(s,(n=Ri((()=>!!e.description)),()=>{return n()&&(xo(t=Hl(),(()=>e.description)),t);var t}),c),xo(s,(r=Ri((()=>!!e.data)),()=>{return r()&&(xo(t=Gl(),(()=>e.data)),t);var t}),c),xo(c,uo(_o,{get each(){return e.buttons},children:e=>{return vo(t=Ql(),"click",e.onClick,!0),xo(t,(()=>e.label)),Oi((()=>yo(t,"secondary"!==e.type?"info-button":"info-button-secondary"))),t;var t}})),xo(s,(i=Ri((()=>!!e.downloadLink)),()=>{return i()&&(xo(t=Yl(),(()=>e.downloadLink.label)),Oi((()=>go(t,"href",e.downloadLink.url))),t);var t}),null),xo(s,(o=Ri((()=>!!e.onShowQRCodeClick)),()=>{return o()&&((t=Zl()).$$click=()=>e.onShowQRCodeClick&&e.onShowQRCodeClick(),xo(t,uo(bl,{})),t);var t}),null),Oi((()=>yo(s,"info-wrapper "+(e.border?"info-border":"")))),s;var t,n,r,i,o,s,a,c};ho(["click"]);const $l=(e,t)=>`${e}?type=tzip10&data=${t}`,eu=new Ae("QR"),tu=(e,t,n)=>{e.length>500&&eu.warn("getQrData",'The size of the payload in the QR code is quite long and some devices might not be able to scan it anymore. To reduce the QR size, try using a shorter "name", "appUrl" and "iconUrl"');try{return new(Ao())({color:"black",content:e,join:!0,ecl:"L",height:t,width:n}).svg()}catch(r){throw cl.error("error",r),r}};var nu=mo("<div class=qr-wrapper><div class=qr-left></div><div class=qr-right>"),ru=mo("<h3>Or scan to connect"),iu=mo("<span>"),ou=mo("<span class=qr-more-info>Learn more"),su=mo('<div class=qr-copy-wrapper><svg fill=currentColor stroke-width=0 xmlns=http://www.w3.org/2000/svg viewBox="0 0 512 512"height=1em width=1em style=overflow:visible;><path d="M243.8 339.8c-10.9 10.9-28.7 10.9-39.6 0l-64-64c-10.9-10.9-10.9-28.7 0-39.6 10.9-10.9 28.7-10.9 39.6 0l44.2 44.2 108.2-108.2c10.9-10.9 28.7-10.9 39.6 0 10.9 10.9 10.9 28.7 0 39.6l-128 128zM512 256c0 141.4-114.6 256-256 256S0 397.4 0 256 114.6 0 256 0s256 114.6 256 256zM256 48C141.1 48 48 141.1 48 256s93.1 208 208 208 208-93.1 208-208S370.9 48 256 48z"></path></svg><p>Copied!'),au=mo('<div class=qr-copy-wrapper><svg fill=currentColor stroke-width=0 xmlns=http://www.w3.org/2000/svg viewBox="0 0 512 512"height=1em width=1em style=overflow:visible;><path d="M502.6 70.63 441.35 9.38C435.4 3.371 427.2 0 418.7 0H255.1c-35.35 0-64 28.66-64 64l.02 256c.88 35.4 29.58 64 64.88 64h192c35.2 0 64-28.8 64-64V93.25c0-8.48-3.4-16.62-9.4-22.62zM464 320c0 8.836-7.164 16-16 16H255.1c-8.838 0-16-7.164-16-16V64.13c0-8.836 7.164-16 16-16h128L384 96c0 17.67 14.33 32 32 32h47.1v192zM272 448c0 8.836-7.164 16-16 16H63.1c-8.838 0-16-7.164-16-16l.88-255.9c0-8.836 7.164-16 16-16H160V128H63.99c-35.35 0-64 28.65-64 64L0 448c.002 35.3 28.66 64 64 64h192c35.2 0 64-28.8 64-64v-32h-47.1l-.9 32z"></path></svg><p>Copy to clipboard');const cu=e=>{const[t,n]=Mi(!1),r=document.createElement("div");async function i(){e.onClickQrCode&&e.onClickQrCode(),navigator.clipboard.writeText(e.code).then((()=>{t()||(n(!0),setTimeout((()=>{n(!1)}),3e3))})).catch((e=>{cl.error("Error copying text: ",e)}))}return r.classList.add("qr-svg-wrapper"),Fi((()=>{const t=e.code.startsWith("wc:")?e.code:$l("tezos://",e.code),n=e.isMobile?tu(t,300,300):tu(t,160,160);r.innerHTML=n})),d=nu(),_=d.firstChild,p=_.nextSibling,xo(_,(o=Ri((()=>!e.isMobile)),()=>o()&&ru()),null),xo(_,(s=Ri((()=>!e.isMobile)),()=>{return s()&&(xo(t=iu(),(()=>`Open ${e.walletName} Wallet on your mobile phone and scan.`)),t);var t}),null),xo(_,(a=Ri((()=>!!e.isMobile)),()=>{return a()&&(xo(n=iu(),(()=>`Scan QR code with a ${e.isWalletConnect?"WalletConnect":"Beacon"}-compatible wallet.`),null),xo(n,(t=Ri((()=>!!e.onClickLearnMore)),()=>{return t()&&((n=ou()).$$click=()=>{e.onClickLearnMore&&e.onClickLearnMore()},n);var n}),null),n);var t,n}),null),xo(_,(c=Ri((()=>!(e.isMobile||!e.onClickLearnMore))),()=>{return c()&&((t=ou()).$$click=()=>{e.onClickLearnMore&&e.onClickLearnMore()},t.style.setProperty("margin-top","auto"),t);var t}),null),p.$$click=i,xo(p,r,null),xo(p,(l=Ri((()=>!!t())),()=>l()&&su()),null),xo(p,(u=Ri((()=>!t())),()=>u()&&au()),null),Oi((t=>{var n=e.isMobile?{"flex-direction":"column","align-items":"center","justify-content":"center",height:"340px","text-align":"center",border:"none"}:{},r=e.isMobile?{"background-color":"transparent"}:{};return t.e=bo(d,n,t.e),t.t=bo(p,r,t.t),t}),{e:void 0,t:void 0}),d;var o,s,a,c,l,u,d,_,p};ho(["click"]);var lu;function uu(e,t){let n;switch(t.type){case"web":n=lu.WEB;break;case"extension":n=lu.EXTENSION;break;case"ios":n=lu.IOS;break;default:n=lu.DESKTOP}e.links[n]="ios"===t.type?t.deepLink??t.link:t.link}!function(e){e[e.WEB=0]="WEB",e[e.IOS=1]="IOS",e[e.DESKTOP=2]="DESKTOP",e[e.EXTENSION=3]="EXTENSION"}(lu||(lu={}));const du=(e,t)=>t.test(e.navigator.userAgent),_u=e=>((e,t)=>e.matchMedia(t).matches)(e,"(any-pointer:coarse)"),pu=e=>du(e,/(?:Mozilla)(?=.*\b(?:Gecko|AppleWebKit))(?=.*\b(?:Chrome|Safari|Firefox|Opera|Edge|Brave|DuckDuckGo)).*/i),fu=e=>du(e,/Mobile DuckDuckGo/i),mu=e=>fu(e)||du(e,/iPhone|iPod|Mobile DuckDuckGo/i)||(e=>!!du(e,/iPad/i)||!(!du(e,/Macintosh/i)||!_u(e)))(e),hu=e=>!fu(e)&&du(e,/android|sink/i),gu=e=>du(e,/(Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini|Mobile|Tablet|Windows Phone|SymbianOS|Kindle)/i),yu=()=>{var e=navigator.userAgent,t=new Map([["Windows","Windows"],["Mac","Mac OS"],["Linux","Linux"],["iPhone","iOS"],["iPad","iOS"],["Android","Android"]]);for(let[n,r]of t)if(-1!==e.indexOf(n))return r;return"UNKOWN"},vu=()=>{var e=navigator.userAgent,t=new Map([["Firefox","Firefox"],["Opera","Opera"],["OPR","Opera"],["Trident","Internet Explorer"],["Edge","Edge"],["Chrome","Chrome"],["Safari","Safari"]]);for(let[n,r]of t)if(-1!==e.indexOf(n))return r;return"UNKOWN"};let bu=te.LIGHT;const xu=e=>{bu=e},Su=()=>bu;var Tu=mo("<div><span class=pair-other-info>Select QR Type</span><br>"),wu=mo("<button class=wallets-button>Beacon"),ku=mo("<button class=wallets-button>WalletConnect");const[Eu,Cu]=Mi("selection"),[Nu,Au]=Mi(!1),[Iu,Du]=Mi(!1),[Pu,Mu]=Mi(""),Ou=e=>{ji((()=>{Cu("selection"),Mu("")})),Au(!!e.p2pPayload),Du(!!e.wcPayload);const t=t=>{"p2p"===t&&e.p2pPayload?e.p2pPayload.then((async e=>{const t=new He,n=await t.serialize(e);Mu(n)})):"walletconnect"===t&&e.wcPayload&&e.wcPayload.then((e=>{Mu(e.uri)})).catch((e=>cl.error(e.message))),Cu(t)};return[Ri((()=>{return Ri((()=>"selection"===Eu()))()&&((r=Tu()).firstChild.nextSibling,xo(r,(e=Ri((()=>!!Nu())),()=>{return e()&&((n=wu()).$$click=()=>{t("p2p")},n);var n}),null),xo(r,(n=Ri((()=>!!Iu())),()=>{return n()&&((e=ku()).$$click=()=>{t("walletconnect")},e);var e}),null),r);var e,n,r})),Ri((()=>Ri((()=>!("selection"===Eu()||!Pu())))()&&uo(cu,{get isWalletConnect(){return"walletconnect"===Eu()},isMobile:!0,walletName:"AirGap",get code(){return Pu()},get onClickLearnMore(){return e.onClickLearnMore}})))]};ho(["click"]);var Fu=mo("<form class=form-style><div class=input-group><label for=title class=label-style>Title</label><input type=text id=title></div><div class=input-group><label for=description class=label-style>Description</label><textarea id=description></textarea></div><div class=input-group><label for=steps class=label-style>Steps to Reproduce</label><textarea id=steps></textarea></div><div class=permissions-group><label for=user-premissions>You agree to share anonymous data with the developers.</label><input id=user-premissions type=checkbox></div><button type=submit>"),Ru=mo("<label class=error-label>"),Lu=mo("<span>"),ju=mo("<div class=thank-you-message>");const zu=new Ae("BugReport"),Uu=e=>{const[t,n]=Mi(""),[r,i]=Mi(!1),[o,s]=Mi(""),[a,c]=Mi(""),[l,u]=Mi(!1),[d,_]=Mi(""),[p,f]=Mi(""),[m,h]=Mi(!1),[g,y]=Mi(""),[v,b]=Mi(!1),[x,S]=Mi(!1),[T,w]=Mi(!1),[k,E]=Mi(null),[C,N]=Mi(!1),A=new ot("beacon","bug_report"),I=()=>{if(!localStorage)return"UNKOWN";const e=Object.keys(localStorage).find((e=>e.includes("user-id")));return e&&e.length?localStorage.getItem(e)??"UNKOWN":"UNKOWN"};Fi((()=>{const e=(()=>{const e=t().replace(/ /gi,"").length>10;return s(e?"":"The title must be at least 10 characters long."),e})(),n=(()=>{const e=a().replace(/ /gi,"").length>=30;return _(e?"":"The description must be at least 30 characters long."),e})(),r=(()=>{const e=p().replace(/ /gi,"").length>=30;return y(e?"":"Write at least 30 characters to describe the steps to reproduce."),e})(),i=T();b(e&&n&&r&&i)}));const D=async n=>{n.preventDefault(),E(null),N(!1),S(!0);const[r,i]=await(async()=>{const e={},t={};let n=[],r=[];try{n=(await A.getAllKeys()).map((e=>e.toString())),r=await A.getAll()}catch(i){return zu.error("indexDBToMetadata","getAll failed: ",i.message),[t,e]}return n.length&&r.length&&n.length===r.length&&n.forEach(((n,i)=>(n.includes("beacon")?t:e)[n]=r[i])),[t,e]})(),o={userId:r[Y.USER_ID]&&r[Y.USER_ID].length?r[Y.USER_ID]:I(),title:t(),sdkVersion:de,description:a(),steps:p(),os:yu(),browser:vu(),localStorage:JSON.stringify(r),wcStorage:JSON.stringify(i)},s={method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(o)};fetch("https://beacon-backend.prod.gke.papers.tech/bug-report/save",s).then((e=>{if(!e.ok)throw new Error("Network response was not ok");return E("success"),setTimeout((()=>N(!0)),600),e.json()})).then((e=>{cl.log(e)})).catch((e=>{cl.error("Error while sending report:",e.message),E("error")})).then((()=>{S(!1),setTimeout((()=>{e.onSubmit()}),5e3)}))};return j=Fu(),z=j.firstChild,U=z.firstChild.nextSibling,B=z.nextSibling,q=B.firstChild.nextSibling,V=B.nextSibling,K=V.firstChild.nextSibling,J=V.nextSibling,W=J.firstChild.nextSibling,H=J.nextSibling,j.addEventListener("submit",D),U.addEventListener("blur",(e=>{!r()&&i(!0),n(e.currentTarget.value)})),xo(z,(P=Ri((()=>!(!r()||!o().length))),()=>{return P()&&(xo(e=Ru(),o),e);var e}),null),q.addEventListener("blur",(e=>{!l()&&u(!0),c(e.currentTarget.value)})),xo(B,(M=Ri((()=>!(!l()||!d().length))),()=>{return M()&&(xo(e=Ru(),d),e);var e}),null),K.addEventListener("blur",(e=>{!m()&&h(!0),f(e.currentTarget.value)})),xo(V,(O=Ri((()=>!(!m()||!g().length))),()=>{return O()&&(xo(e=Ru(),g),e);var e}),null),W.addEventListener("change",(()=>w((e=>!e)))),xo(H,(F=Ri((()=>!(x()||k()))),()=>F()?"Submit":"\xa0"),null),xo(H,(R=Ri((()=>!(x()||!k()))),()=>{return R()&&(xo(e=Lu(),(()=>"success"===k()?"\u2713":"\u2715")),Oi((()=>yo(e,"success"===k()?"icon success-icon":"icon error-icon"))),e);var e}),null),xo(H,(L=Ri((()=>!!C())),()=>{return L()&&(xo(e=ju(),uo(_o,{get each(){return"Thank You!".split("")},children:(e,t)=>{return xo(n=Lu(),e),Oi((()=>.1*t()+"s"!=null?n.style.setProperty("animation-delay",.1*t()+"s"):n.style.removeProperty("animation-delay"))),n;var n}})),e);var e}),null),Oi((e=>{var t="input-style "+(r()&&o().length?"invalid":""),n="textarea-style "+(l()&&d().length?"invalid":""),i="textarea-style "+(m()&&g().length?"invalid":""),s=!v(),a=`button-style ${v()?"valid":"invalid"} ${x()?"button-loading":""}`;return t!==e.e&&yo(U,e.e=t),n!==e.t&&yo(q,e.t=n),i!==e.a&&yo(K,e.a=i),s!==e.o&&(H.disabled=e.o=s),a!==e.i&&yo(H,e.i=a),e}),{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0}),Oi((()=>U.value=t())),Oi((()=>q.value=a())),Oi((()=>K.value=p())),j;var P,M,O,F,R,L,j,z,U,B,q,V,K,J,W,H};var Bu=mo("<div>"),qu=mo("<div><div></div><div></div><div>"),Vu=mo('<svg fill=currentColor stroke-width=0 xmlns=http://www.w3.org/2000/svg viewBox="0 0 24 24"height=1em width=1em style=overflow:visible; color=white><path d="M16 12h2v4h-2z"></path><path d="M20 7V5c0-1.103-.897-2-2-2H5C3.346 3 2 4.346 2 6v12c0 2.201 1.794 3 3 3h15c1.103 0 2-.897 2-2V9c0-1.103-.897-2-2-2zM5 5h13v2H5a1.001 1.001 0 0 1 0-2zm15 14H5.012C4.55 18.988 4 18.805 4 18V8.815c.314.113.647.185 1 .185h15v10z">'),Ku=mo('<svg fill=none stroke-width=2 xmlns=http://www.w3.org/2000/svg stroke=currentColor stroke-linecap=round stroke-linejoin=round viewBox="0 0 24 24"height=1em width=1em style=overflow:visible; color=white><path stroke=none d="M0 0h24v24H0z"></path><rect width=16 height=16 x=4 y=4 rx=2></rect><path d="M9 12h6M12 9v6">'),Ju=mo('<svg fill=currentColor stroke-width=0 xmlns=http://www.w3.org/2000/svg viewBox="0 0 512 512"height=1em width=1em style=overflow:visible; color=#494949><path d="M85.57 446.25h340.86a32 32 0 0 0 28.17-47.17L284.18 82.58c-12.09-22.44-44.27-22.44-56.36 0L57.4 399.08a32 32 0 0 0 28.17 47.17Z"fill=none stroke=currentColor stroke-linecap=round stroke-linejoin=round stroke-width=32px></path><path d="m250.26 195.39 5.74 122 5.73-121.95a5.74 5.74 0 0 0-5.79-6h0a5.74 5.74 0 0 0-5.68 5.95Z"fill=none stroke=currentColor stroke-linecap=round stroke-linejoin=round stroke-width=32px></path><path d="M256 397.25a20 20 0 1 1 20-20 20 20 0 0 1-20 20Z">');const Wu=new Ae("Alert"),[Hu,Gu]=Mi(!1),[Qu,Yu]=Mi(!1),[Zu,Xu]=Mi(!1),[$u,ed]=Mi(""),[td,nd]=Mi([]),[rd,id]=Mi(void 0),[od,sd]=Mi("top-wallets"),[ad,cd]=Mi("top-wallets"),[ld,ud]=Mi(void 0),[dd,_d]=Mi(!1),[pd,fd]=Mi(!1);let md=null;const hd=async()=>"help"===ad()?(cl.log("setting status as pairing expired."),void fd(!0)):new Promise((async e=>{md&&Hu()&&(Gu(!1),setTimeout((()=>{md&&md(),document.getElementById("beacon-alert-wrapper")&&document.getElementById("beacon-alert-wrapper").remove()}),500)),e()})),gd=async e=>{Yu(!1);const t=e.pairingPayload?.p2pSyncCode(),n=e.pairingPayload?.walletConnectSyncCode(),r=navigator.onLine,i=!!localStorage&&"true"===localStorage.getItem(Y.ENABLE_METRICS);if(ud(e.analytics),!Hu()){let o=await _i.getAvailableExtensions();const s=async e=>{"extensionsUpdated"===e.data&&(o=await _i.getAvailableExtensions(),nd(b()))};fe.addEventListener("message",s);const a=async()=>{if(e.pairingPayload){const e=new He;try{const n=await e.serialize(await t);ed(n)}catch(n){cl.error("Cannot connect to network: ",n.message)}}};cd("top-wallets"),id(void 0),!e.title.toLowerCase().includes("error")&&localStorage.removeItem(Y.LAST_SELECTED_WALLET);const c=document.createElement("div");document.getElementById("beacon-alert-wrapper")&&document.getElementById("beacon-alert-wrapper").remove(),c.setAttribute("id","beacon-alert-wrapper"),c.style.height="0px";const l=c.attachShadow({mode:"open"}),u=document.createElement("style");u.textContent=".alert-wrapper-show {\n display: flex;\n align-items: center;\n justify-content: center;\n position: fixed;\n height: 100%;\n width: 100vw;\n overflow: hidden;\n top: 0px;\n left: 0px;\n background-color: rgba(0, 0, 0, 0.6);\n opacity: 1;\n transition: all ease 0.3s;\n z-index: 99999;\n}\n\n.alert-wrapper-hide {\n display: flex;\n align-items: center;\n justify-content: center;\n position: fixed;\n height: 100%;\n width: 100vw;\n overflow: hidden;\n top: 0px;\n left: 0px;\n background-color: rgba(0, 0, 0, 0.6);\n opacity: 0;\n transition: all ease 0.3s;\n z-index: 99999;\n}\n\n.theme__dark .alert-modal-show {\n background-color: #27334c;\n}\n\n.theme__dark .alert-modal-hide {\n background-color: #27334c;\n}\n\n.theme__dark .alert-footer {\n color: white;\n -webkit-box-shadow: 0px -4px 12px rgb(0 0 0 / 20%);\n -moz-box-shadow: 0px -4px 12px rgb(0 0 0 / 20%);\n box-shadow: 0px -4px 12px rgb(0 0 0 / 20%);\n}\n\n.theme__dark .alert-logo svg g {\n fill: white;\n}\n\n.alert-modal-show {\n background-color: white;\n border-radius: 32px;\n transition: all ease 0.3s;\n transform: translateY(0px);\n opacity: 1;\n width: 480px;\n}\n\n.alert-modal-hide {\n background-color: white;\n border-radius: 32px;\n transition: all ease 0.3s;\n transform: translateY(24px);\n opacity: 1;\n width: 480px;\n}\n\n.alert-modal-loading-wrapper {\n width: 480px;\n display: flex;\n align-items: center;\n justify-content: center;\n position: relative;\n}\n\n.alert-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 1.8em;\n padding-top: 1.2em;\n padding-bottom: 0px;\n}\n\n.alert-button-icon-empty {\n width: 24px;\n height: 24px;\n padding: 2px;\n}\n\n.alert-button-icon {\n width: 24px;\n height: 24px;\n padding: 2px;\n border-radius: 100%;\n border: 1px solid #f0f0f1;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n fill: #64748b;\n transition: all ease 0.2s;\n}\n\n.alert-button-icon:hover {\n background-color: #475569;\n border: 1px solid #475569;\n fill: #e2e8f0;\n}\n\n.alert-logo {\n margin: 0px 6em;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.alert-logo svg {\n height: 28px;\n}\n\n.alert-body {\n padding: 1.8em;\n padding-bottom: 0px;\n transition: all ease 0.3s;\n}\n\n.alert-footer {\n display: flex;\n align-items: center;\n justify-content: center;\n color: grey;\n cursor: pointer;\n -webkit-box-shadow: 0px -4px 12px rgb(50 50 50 / 6%);\n -moz-box-shadow: 0px -4px 12px rgb(50 50 50 / 6%);\n box-shadow: 0px -4px 12px rgb(50 50 50 / 6%);\n font-size: 0.938rem;\n font-weight: bold;\n height: 64px;\n}\n\n.alert-body-extra-show {\n transition: all ease 0.3s;\n overflow: hidden;\n max-height: 35vh;\n overflow-y: auto;\n}\n\n.alert-body-extra-hide {\n transition: all ease 0.3s;\n overflow: hidden;\n max-height: 0px;\n}\n\n.alert-divider {\n border-top: 1px solid #aaaaaa42;\n width: 100%;\n border-radius: 6px;\n}\n\n@media only screen and (max-width: 800px) {\n .alert-logo {\n margin: 0px 2em;\n }\n\n .alert-wrapper-show {\n align-items: flex-end;\n width: 100%;\n }\n\n .alert-wrapper-hide {\n align-items: flex-end;\n width: 100%;\n }\n\n .alert-modal-show {\n border-bottom-left-radius: 0px;\n border-bottom-right-radius: 0px;\n padding-bottom: 1.8em;\n width: 100%;\n }\n\n .alert-modal-hide {\n border-bottom-left-radius: 0px;\n border-bottom-right-radius: 0px;\n padding-bottom: 1.8em;\n }\n}\n\n@media only screen and (max-width: 300px) {\n .alert-wrapper-show {\n align-items: flex-end;\n width: 100vw;\n }\n\n .alert-wrapper-hide {\n align-items: flex-end;\n width: 100vw;\n }\n\n .alert-body {\n padding: 0.8em;\n }\n\n .alert-body {\n padding: 0.8em;\n padding-top: 0.4em;\n }\n\n .alert-logo {\n margin: 0px;\n transform: scale(0.8);\n }\n}\n",l.appendChild(u);const d=document.createElement("style");d.textContent=".top-wallets-wrapper {\n margin-bottom: 1.8em;\n}\n\n.top-wallets-info {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n}\n\n.theme__dark .top-wallets-info h3 {\n color: white;\n}\n\n.theme__dark .top-wallets-info span {\n color: #b5b8be;\n}\n\n.theme__dark .top-wallets-other-wallets-left h3 {\n color: white;\n}\n\n.top-wallets-info h3 {\n text-align: center;\n color: #334155;\n margin: 0px;\n font-size: 0.938rem;\n}\n\n.top-wallets-info span {\n text-align: center;\n max-width: 300px;\n font-size: 0.8em;\n font-weight: 300;\n color: #7c828b;\n line-height: 1.35em;\n margin: 6px 0px 12px 0px;\n}\n\n.top-wallets-learn-more {\n text-decoration: underline;\n cursor: pointer;\n font-size: 0.95em !important;\n}\n\n.top-wallets-wallets-main {\n margin-top: 1em;\n grid-template-columns: repeat(2, 1fr);\n display: grid;\n gap: 1em;\n}\n\n.top-wallets-other-wallets {\n display: flex;\n gap: 1.25em;\n justify-content: space-between;\n border-radius: 12px;\n padding: 1.25em;\n cursor: pointer;\n transition: all ease 0.2s;\n\n -webkit-box-shadow: 0px 0px 12px -4px rgb(0 0 0 / 30%);\n -moz-box-shadow: 0px 0px 12px -4px rgb(0 0 0 / 30%);\n box-shadow: 0px 0px 12px -4px rgb(0 0 0 / 30%);\n}\n\n.top-wallets-other-wallets-left {\n max-width: 148px;\n}\n\n.top-wallets-other-wallets-left h3 {\n color: #334155;\n margin: 0px;\n font-size: 1em;\n}\n\n.top-wallets-other-wallets-left p {\n max-width: 400px;\n font-size: 0.85em;\n font-weight: 300;\n color: #94a3b8;\n line-height: 1.35em;\n margin: 0px;\n font-size: 0.75em;\n}\n\n.top-wallets-other-wallets-right {\n display: flex;\n justify-content: center;\n align-items: center;\n}\n\n.top-wallets-other-wallets-right img {\n border-radius: 8px;\n width: 2.4em;\n height: 2.4em;\n -webkit-box-shadow: 0px 0px 12px -4px rgb(0 0 0 / 30%);\n -moz-box-shadow: 0px 0px 12px -4px rgb(0 0 0 / 30%);\n box-shadow: 0px 0px 12px -4px rgb(0 0 0 / 30%);\n}\n\n.top-wallets-other-wallets-center-wallet {\n transform: perspective(500px) translateZ(100px);\n}\n\n@media only screen and (max-width: 800px) {\n .top-wallets-info h3 {\n font-size: 1em;\n }\n\n .top-wallets-info p {\n font-size: 0.75em;\n }\n\n .top-wallets-other-wallets {\n flex-direction: column;\n text-align: center;\n justify-content: center;\n align-items: center;\n }\n\n .top-wallets-other-wallets-left {\n order: 1;\n }\n\n .top-wallets-other-wallets-left h3 {\n font-size: 0.85em;\n }\n\n .top-wallets-other-wallets-left p {\n font-size: 0.65em;\n }\n}\n\n@media only screen and (max-width: 400px) {\n .top-wallets-other-wallets-right {\n max-width: 50px;\n transform: scale(0.8);\n }\n}\n",l.appendChild(d);const _=document.createElement("style");_.textContent=".wallets-button {\n border-radius: 6px;\n background-color: transparent;\n border: 1px solid #3880ff;\n color: #3880ff;\n width: 100%;\n padding: 12px 0px;\n margin-bottom: 1.8em;\n transition: all ease 0.2s;\n cursor: pointer;\n font-size: 0.9em;\n}\n\n.wallets-button:hover {\n color: white;\n background-color: #3880ff;\n}\n\n.wallets-list-main-wrapper {\n position: relative;\n}\n\n.wallets-list-wrapper {\n display: grid;\n overflow-y: auto;\n grid-template-columns: repeat(4, 1fr);\n padding: 1.8em 0px;\n gap: 1.2em 0em;\n max-height: 180px;\n}\n\n@media only screen and (max-width: 800px) {\n .wallets-list-wrapper {\n display: flex;\n flex-direction: column;\n gap: 12px;\n max-height: 300px;\n padding: 1.6em 0.6em;\n margin-top: 0px;\n }\n\n .wallets-list-main-wrapper::before {\n position: absolute;\n top: 0px;\n content: '';\n left: -24px;\n width: calc(100% + 48px);\n background: radial-gradient(\n circle,\n rgba(171, 171, 171, 0.7329525560224089) 0%,\n rgba(193, 193, 193, 0.1279105392156863) 100%\n );\n height: 1px;\n }\n}\n",l.appendChild(_);const p=document.createElement("style");p.textContent=".wallet-main {\n display: flex;\n gap: 1.25em;\n justify-content: space-between;\n border-radius: 12px;\n padding: 15px;\n cursor: pointer;\n transition: all ease 0.2s;\n\n -webkit-box-shadow: 0px 0px 12px -4px rgb(0 0 0 / 30%);\n -moz-box-shadow: 0px 0px 12px -4px rgb(0 0 0 / 30%);\n box-shadow: 0px 0px 12px -4px rgb(0 0 0 / 30%);\n}\n\n.wallet-disabled {\n opacity: 0.5;\n}\n\n.wallet-main:hover {\n transform: scale(1.01);\n}\n\n.wallet-main:active {\n transform: scale(0.99);\n}\n\n.wallet-main-left {\n max-width: 148px;\n flex: 1;\n}\n\n.theme__dark .wallet-main-left h3 {\n color: white;\n}\n\n.theme__dark .top-wallets-info p {\n color: #b5b8be;\n}\n\n.theme__dark .wallet-main-right {\n -webkit-box-shadow: 0px 0px 12px -4px rgb(0 0 0 / 63%);\n -moz-box-shadow: 0px 0px 12px -4px rgb(0 0 0 / 63%);\n box-shadow: 0px 0px 12px -4px rgb(0 0 0 / 63%);\n}\n\n.theme__dark .wallet-small img {\n -webkit-box-shadow: 0px 0px 12px -4px rgb(0 0 0 / 63%);\n -moz-box-shadow: 0px 0px 12px -4px rgb(0 0 0 / 63%);\n box-shadow: 0px 0px 12px -4px rgb(0 0 0 / 63%);\n}\n\n.theme__dark .wallet-small h3 {\n color: white;\n}\n\n.wallet-main-left h3 {\n color: #1c1e21;\n margin: 0px;\n font-size: 1em;\n}\n\n.wallet-main-left p {\n max-width: 400px;\n font-weight: 300;\n color: #7c828b;\n line-height: 1.35em;\n margin: 0px;\n font-size: 0.65em;\n}\n\n.wallet-main-right {\n display: flex;\n justify-content: center;\n align-items: center;\n border-radius: 8px;\n overflow: hidden;\n -webkit-box-shadow: 0px 0px 12px -4px rgb(0 0 0 / 30%);\n -moz-box-shadow: 0px 0px 12px -4px rgb(0 0 0 / 30%);\n box-shadow: 0px 0px 12px -4px rgb(0 0 0 / 30%);\n}\n\n.wallet-main-right img {\n width: 3.2em;\n height: 3.2em;\n}\n\n.wallet-main-tags {\n display: flex;\n gap: 6px;\n}\n\n.wallet-main-tag {\n color: #3880ff;\n margin: 0px;\n font-size: 0.75em;\n font-weight: 600;\n margin-top: 6px;\n text-transform: uppercase;\n}\n\n.wallet-small {\n display: flex;\n align-items: center;\n justify-content: center;\n flex-direction: column;\n gap: 0.5em;\n}\n\n.wallet-small img {\n padding: 0.4em;\n border-radius: 10px;\n width: 2.5em;\n height: 2.5em;\n cursor: pointer;\n transition: all ease 0.2s;\n\n -webkit-box-shadow: 0px 0px 12px -4px rgb(0 0 0 / 30%);\n -moz-box-shadow: 0px 0px 12px -4px rgb(0 0 0 / 30%);\n box-shadow: 0px 0px 12px -4px rgb(0 0 0 / 30%);\n}\n\n.wallet-small img:hover {\n transform: scale(1.01);\n}\n\n.wallet-small img:active {\n transform: scale(0.99);\n}\n\n.wallet-small h3 {\n color: #334155;\n margin: 0px;\n font-size: 0.8em;\n text-align: center;\n}\n\n.wallet-main-mobile {\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: 1em;\n}\n\n.wallet-main-left-mobile {\n order: 1;\n}\n\n.wallet-main-left-mobile h3 {\n font-size: 0.9em;\n text-align: center;\n}\n\n.wallet-main-left-mobile p {\n font-size: 0.65em;\n text-align: center;\n}\n\n@media only screen and (max-width: 800px) {\n .wallet-main {\n padding: 0.65em 15px;\n }\n\n .wallet-main-mobile {\n padding: 1.25em;\n }\n}\n",l.appendChild(p);const f=document.createElement("style");f.textContent=".info-wrapper {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: 0.5em;\n border-radius: 10px;\n padding: 30px;\n}\n\n.info-border {\n border: 1px solid #aaaaaa42;\n}\n\n.info-icon {\n width: 40px;\n height: 40px;\n border-radius: 6px;\n display: flex;\n justify-content: center;\n align-items: center;\n font-size: 28px;\n margin-bottom: 0.2em;\n}\n\n.info-badge {\n background-color: #3880ff;\n font-size: 38px;\n -webkit-box-shadow: 0px 0px 12px -4px rgb(0 0 0 / 30%);\n -moz-box-shadow: 0px 0px 12px -4px rgb(0 0 0 / 30%);\n box-shadow: 0px 0px 12px -4px rgb(0 0 0 / 30%);\n}\n\n.theme__dark .info-title {\n color: white;\n}\n\n.theme__dark .info-description {\n color: #aeaeae;\n}\n\n.info-title {\n text-align: center;\n color: #334155;\n margin: 0px;\n font-size: 1em;\n}\n\n.info-description {\n text-align: center;\n font-size: 0.8em;\n font-weight: 300;\n color: #7c828b;\n line-height: 1.25em;\n margin: 6px 0px 12px 0px;\n margin: 0px;\n max-width: 300px;\n}\n\n.info-data {\n font-size: 0.8em;\n font-weight: 300;\n color: #7c828b;\n line-height: 1.25em;\n margin: 6px 0px 12px 0px;\n margin: 0px;\n overflow: scroll;\n max-height: 300px;\n}\n\n.info-buttons {\n display: flex;\n align-items: center;\n gap: 0.6em;\n}\n\n.info-button {\n border-radius: 6px;\n background-color: #3880ff;\n border: 1px solid #3880ff;\n color: white;\n padding: 0.6em 1.2em;\n width: 180px;\n transition: all ease 0.2s;\n cursor: pointer;\n margin-top: 1em;\n font-size: 0.8em;\n}\n\n.info-button:hover {\n background-color: #166afc;\n}\n\n.info-button-secondary {\n border-radius: 6px;\n background-color: transparent;\n border: 1px solid #3880ff;\n color: #3880ff;\n padding: 0.6em 1.2em;\n width: 180px;\n transition: all ease 0.2s;\n cursor: pointer;\n margin-top: 1em;\n}\n\n.info-button-secondary:hover {\n background-color: #e8f0ff;\n}\n\n.downloadLink {\n text-decoration: none;\n color: gray;\n font-size: smaller;\n padding: 0.5rem;\n}\n\nbutton#qr-code-icon {\n background-color: transparent;\n border: none;\n min-width: 2.5rem;\n align-self: self-end;\n position: absolute;\n top: 0.3rem;\n right: 0.3rem;\n}\n\n@media only screen and (max-width: 300px) {\n button#qr-code-icon {\n min-width: 1.5rem;\n }\n}\n\n@media only screen and (max-width: 800px) {\n .info-title {\n font-size: 0.9em;\n line-height: 1em;\n }\n\n .info-description {\n font-size: 0.65em;\n }\n\n .qr-more-info {\n font-size: 0.75em;\n }\n\n .info-wrapper {\n max-height: 180px;\n padding: 1.2em;\n position: relative;\n }\n\n .info-icon {\n width: 40px;\n height: 40px;\n font-size: 1.8em;\n }\n\n .info-button {\n padding: 0.5em 1.6em;\n font-size: 1em;\n font-weight: bold;\n }\n}\n",l.appendChild(f);const m=document.createElement("style");m.textContent=".qr-wrapper {\n display: flex;\n align-items: flex-start;\n justify-content: center;\n gap: 0.5em;\n border: 1px solid #aaaaaa42;\n border-radius: 10px;\n padding: 30px;\n height: 200px;\n}\n\n.qr-left {\n display: flex;\n flex-direction: column;\n max-width: 16em;\n height: 100%;\n}\n\n.qr-left h3 {\n color: #334155;\n margin: 0px;\n margin-bottom: 0.4em;\n font-size: 1em;\n}\n\n.theme__dark .qr-left h3 {\n color: white;\n}\n\n.theme__dark .qr-left span {\n color: #aeaeae;\n}\n\n.theme__dark .qr-copy-wrapper p {\n color: #aeaeae;\n}\n\n.qr-left span {\n font-size: 0.8em;\n font-weight: 300;\n color: #7c828b;\n line-height: 1.35em;\n margin: 0px;\n}\n\n.qr-more-info {\n font-size: 0.95em !important;\n text-decoration: underline;\n margin-left: 6px !important;\n cursor: pointer;\n}\n\n.qr-right {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n height: 100%;\n border-radius: 6px;\n transition: all ease 0.2s;\n cursor: pointer;\n}\n\n.theme__dark .qr-right:hover {\n background-color: rgba(238, 238, 238, 0.492);\n}\n\n.qr-right:hover {\n background-color: rgb(238, 238, 238);\n}\n\n.qr-copy-wrapper {\n display: flex;\n align-items: center;\n gap: 0.6em;\n color: #7c828b;\n margin-bottom: 8px;\n margin-top: 18px;\n}\n\n.qr-copy-wrapper svg {\n font-size: 1em;\n}\n\n.qr-copy-wrapper p {\n font-size: 0.8em;\n margin: 0px;\n}\n\n.qr-svg-wrapper {\n background-color: white;\n border-radius: 10px;\n}\n\n.qr-svg-wrapper svg rect {\n fill: transparent !important;\n}\n\n@media only screen and (max-width: 800px) {\n .qr-wrapper {\n flex-direction: column;\n align-items: center;\n justify-content: center;\n height: 340px;\n }\n\n .qr-left {\n margin: 0.6em 0px;\n }\n\n .qr-left h3 {\n font-size: 1em;\n line-height: 1em;\n }\n\n .qr-left p {\n font-size: 0.75em;\n text-align: center;\n }\n\n .qr-left > div {\n display: flex;\n align-items: center;\n justify-content: center;\n }\n\n .qr-more-info {\n font-size: 0.75em;\n }\n}\n",l.appendChild(m);const h=document.createElement("style");h.textContent=xl,l.appendChild(h);const g=document.createElement("style");g.textContent=".pair-other-info {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n color: #b5b8be;\n}\n",l.appendChild(g);const y=document.createElement("style");g.textContent=".form-style {\n display: flex;\n flex-direction: column;\n max-width: 500px;\n min-width: 100%;\n margin: 0 auto;\n gap: 20px;\n}\n\n.input-group {\n display: flex;\n flex-direction: column;\n margin-bottom: 15px;\n}\n\n.label-style {\n margin-bottom: 8px;\n}\n\n.input-style,\n.textarea-style {\n width: 100%;\n padding: 10px;\n box-sizing: border-box;\n border: 1px solid #ccc;\n border-radius: 5px;\n}\n\n.input-style.invalid,\n.textarea-style.invalid {\n border-color: #f76b8a;\n border-width: medium;\n}\n\n.textarea-style {\n height: 8rem;\n}\n\n.button-style {\n padding: 10px 20px;\n color: white;\n border: none;\n border-radius: 5px;\n cursor: pointer;\n margin-top: 20px;\n}\n\n.button-style.valid {\n background-color: #007bff;\n}\n\n.button-style.invalid {\n background-color: #65afff;\n}\n\n.error-label {\n display: inline;\n font-size: 0.7rem;\n color: #f76b8a;\n}\n\n.permissions-group {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n}\n\n.permissions-group label {\n flex-grow: 1;\n font-size: 0.7rem;\n}\n\n.permissions-group input {\n flex-shrink: 0;\n}\n\n@media screen and (max-height: 700px) {\n .textarea-style {\n height: 6rem;\n }\n}\n\n.button-loading::after {\n content: '';\n position: absolute;\n width: 16px;\n height: 16px;\n left: 0;\n right: 0;\n margin: auto;\n border: 4px solid transparent;\n border-top-color: #ffffff;\n border-radius: 50%;\n animation: button-loading-spinner 1s ease infinite;\n}\n\n@keyframes button-loading-spinner {\n from {\n transform: rotate(0turn);\n }\n\n to {\n transform: rotate(1turn);\n }\n}\n\n.icon {\n display: inline-block;\n border: 2px solid white;\n border-radius: 50%;\n padding: 5px;\n margin-bottom: 3px;\n width: 1rem;\n opacity: 0;\n transition: opacity 0.3s ease;\n}\n\n.success-icon {\n animation: successAnimation 0.6s ease forwards;\n}\n\n.error-icon {\n animation: fadeIn 0.3s ease forwards;\n}\n\n@keyframes successAnimation {\n 0% {\n transform: rotate(0deg);\n opacity: 0;\n }\n 100% {\n transform: rotate(360deg);\n opacity: 1;\n }\n}\n\n@keyframes fadeIn {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n}\n\n.thank-you-message {\n display: inline-block;\n margin-left: 10px;\n}\n\n.thank-you-message span {\n opacity: 0;\n animation: fadeInLetter 0.3s ease forwards;\n}\n\n@keyframes fadeInLetter {\n to {\n opacity: 1;\n }\n}\n",l.appendChild(y);const v=document.createElement("style");v.textContent="* { font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', 'Segoe UI Emoji', 'Apple Color Emoji', 'Noto Color Emoji', sans-serif;}",l.appendChild(v);const b=()=>{const t=function(e){return e.map((e=>{const t=["Web","web","App","app","Mobile","mobile"];for(let n=0;n<t.length;n++)e.name.includes(t[n])&&(e.name=e.name.replace(t[n],""));return e.name=e.name.trim(),e}))}([...ul.filter((e=>!o.some((t=>e.name===t.name)))).map((e=>({id:e.key,key:e.key,name:e.shortName,image:e.logo,description:"Desktop App",supportedInteractionStandards:e.supportedInteractionStandards,type:"desktop",link:e.downloadLink,deepLink:e.deepLink}))),...ll.map((e=>({id:e.id,key:e.key,name:e.shortName,image:e.logo,description:"Browser Extension",supportedInteractionStandards:e.supportedInteractionStandards,type:"extension",link:e.link}))),..._l.map((e=>({id:e.key,key:e.key,name:e.shortName,image:e.logo,description:"Mobile App",supportedInteractionStandards:e.supportedInteractionStandards,type:"ios",link:e.universalLink,deepLink:e.deepLink}))),...dl.map((t=>{const n=t.links[e.pairingPayload?.networkType??V.MAINNET];return{id:t.key,key:t.key,name:t.shortName,image:t.logo,description:"Web App",supportedInteractionStandards:t.supportedInteractionStandards,type:"web",link:n??t.links.mainnet}})),...o.filter((e=>!ll.some((t=>t.id===e.id)))).map((e=>({id:e.id,key:e.id,name:e.shortName??e.name??"",image:e.iconUrl??"",description:"Browser Extension",type:"extension",link:e.link??""})))]),n=function(e){const t=[];for(let n=0;n<e.length;n++){const r=e[n];if(t.map((e=>e.name)).includes(r.name)){const e=t.findIndex((e=>e.name===r.name));e<0&&cl.error("There should be a wallet"),t[e].descriptions.includes(r.description)||(uu(t[e],r),t[e].descriptions.push(r.description)),t[e].types.push(r.type),t[e].deepLink=r.deepLink,t[e].firefoxId=r.key.includes("firefox")?r.id:t[e].firefoxId}else{const e={...r,descriptions:[r.description],links:["","","",""],types:[r.type],firefoxId:r.key.includes("firefox")?r.id:void 0};uu(e,r),t.push(e)}}return t}(t),r=function(e,t){const n=t.slice(0,4),r=[],i=[];for(let o of e){let e;n.some(((t,n)=>{const r=o.key.startsWith(t);return r&&(e=n),r})),void 0!==e?r[e]=o:i.push(o)}return i.sort(((e,t)=>e.name<t.name?-1:e.name>t.name?1:0)),[...r,...i]}(n,e.featuredWallets??["kukai","temple","plenty","umami"]);return r};nd(b());const x=gu(window),[S,T]=Mi(x),[w,k]=Mi(window.innerWidth),E=()=>{const e=((e,t)=>{let n;return(...r)=>{clearTimeout(n),n=setTimeout((()=>e(...r)),t)}})(k,200);return Fi((()=>{var e;e=w()<=800,nd(b()),T(e||x)})),Fi((()=>{const t=()=>{e(window.innerWidth)};window.addEventListener("resize",t),zi((()=>{window.removeEventListener("resize",t)}))})),[]},C=e=>{!e||e.types.length<=1&&!e.types.includes("ios")&&!e.types.includes("desktop")||x&&1===e.types.length&&e.types.includes("desktop")||cd("install")},N=()=>{ld()?.track("click","ui","show more wallets"),Xu(!Zu())},A=()=>{ld()?.track("click","ui","learn more"),sd(ad()),cd("help"),Xu(!1)},I=()=>{ld()?.track("click","ui","copy QR code to clipboard")},D=()=>{new Promise((async e=>{md&&Hu()&&(Gu(!1),setTimeout((()=>{md&&md(),document.getElementById("beacon-alert-wrapper")&&document.getElementById("beacon-alert-wrapper").remove()}),500)),e()})),fe.removeEventListener("message",s),e.closeButtonCallback&&e.closeButtonCallback()},P=e=>{let t=JSON.parse(localStorage.getItem(Y.LAST_SELECTED_WALLET)??"{}");t.key&&(t={...t,url:e},localStorage.setItem(Y.LAST_SELECTED_WALLET,JSON.stringify(t)))},M=async()=>{let t=(await n)?.uri??"";return Pc(t).symKey||(t=(await(e.pairingPayload?.walletConnectSyncCode()))?.uri??"",Pc(t).symKey)?t:(D(),setTimeout((()=>gd({title:"Error",body:"Unexpected transport error. Please try again."})),500),null)},O=async(e,n)=>{if(!n)return;if(!e.pairingPayload)return;Yu(!0);const r=window.open("","_blank");r&&(r.opener=null);let i="";if(n.supportedInteractionStandards?.includes("wallet_connect")&&!n.name.toLowerCase().includes("kukai")){const e=await M();if(!e)return;i=`${n.links[lu.WEB]}/wc?uri=${encodeURIComponent(e)}`}else{const e=new He,r=await e.serialize(await t);i=$l(n.links[lu.WEB],r)}r?r.location.href=i:window.open(i,"_blank","noopener"),localStorage.setItem(Y.LAST_SELECTED_WALLET,JSON.stringify({key:n.key,name:n.name,type:"web",icon:rd()?.image}))},F=async(e,r)=>{if(localStorage.setItem(Y.LAST_SELECTED_WALLET,JSON.stringify({key:e.key,type:"mobile",icon:e.image})),!e.links[lu.IOS].length){const e=rd()?.supportedInteractionStandards?.includes("wallet_connect")?(await n)?.uri??"":await(new He).serialize(await t);return e.length?(ed(e),cd("qr"),void _d(!0)):void D()}const i=`${e.links[lu.IOS]}wc?uri=${encodeURIComponent(r)}`;var o;if(P(`${e.links[lu.IOS]}wc?uri=`),Wu.log("DO DEEPLINK WITH "+i),(o=window)&&1==o.ethereum?.isTrust&&hu(window)&&(window.location.href=`${r}`),hu(window))window.open(i,"_blank","noopener");else{const e=document.createElement("a");e.setAttribute("href",i),e.setAttribute("rel","noopener"),e.dispatchEvent(new MouseEvent("click",{view:window,bubbles:!0,cancelable:!0}))}},R=async n=>{Yu(!0),Xu(!1);const r=td().find((e=>e.id===n));if(id(r),r?.key&&ld()?.track("click","ui","opened wallet",{key:r.key}),localStorage.setItem(Y.LAST_SELECTED_WALLET,JSON.stringify({key:r?.key,type:"mobile",icon:rd()?.image})),r?.types.includes("web")&&1===r?.types.length||hu(window)&&r?.name.toLowerCase().includes("kukai"))O(e,r);else if(r&&r.supportedInteractionStandards?.includes("wallet_connect")){const e=await M();e&&(x&&r.types.includes("ios")&&1===r.types.length?F(r,e):(ed(e),C(r))),Yu(!1)}else if(r?.types.includes("ios")&&x){if(ed(""),e.pairingPayload){const e=new He,n=await e.serialize(await t),i=$l(mu(window)&&r.deepLink?r.deepLink:hu(window)?r.links[lu.IOS]:"tezos://",n);if(P(i),hu(window))window.open(i,"_blank","noopener");else if(mu(window)){const e=document.createElement("a");e.setAttribute("href",i),e.setAttribute("rel","noopener"),e.dispatchEvent(new MouseEvent("click",{view:window,bubbles:!0,cancelable:!0}))}}Yu(!1)}else Yu(!1),C(r),await a()},L=async()=>{ld()?.track("click","ui","other wallet"),localStorage.setItem(Y.LAST_SELECTED_WALLET,JSON.stringify({key:"wallet",name:"wallet",type:"mobile",icon:"data:image/svg+xml;base64,PHN2ZyBpZD0iZjYzZTk1YTktZmQxOS00NDg3LWJjMWEtMDllYjJmMDY2NzA0IiBkYXRhLW5hbWU9Ikd1aWRlcyIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iNjUiIGhlaWdodD0iNjUiIHZpZXdCb3g9IjAgMCA2NSA2NSI+CiAgICA8dGl0bGU+IGJlYWNvbl9sb2dvPC90aXRsZT4KICAgIDxwYXRoIHN0eWxlPSJmaWxsOiByZ2IoMjYsIDEyOCwgMjUwKTsiIGQ9Ik01OS42NiwyOS41MnYxLjA2YzAsLjM3LS4xOCw5LjA3LTQuMTEsMTUuODhTNDQuMTYsNTcuNzUsNDMuODQsNTcuOTNsLS45MS41NC0xLjYxLS45My05LjE5LTUuM2ExNC42OCwxNC42OCwwLDAsMS0xLjYzLTEuMDZoMGExNC4wOSwxNC4wOSwwLDAsMS0xLjI5LTEsMTcuNjMsMTcuNjMsMCwwLDEtMi41Ni0yLjcsMTguNTgsMTguNTgsMCwwLDEtMi41Ni00LjUxLDIxLjUzLDIxLjUzLDAsMCwxLTEuNS05LDYuMjEsNi4yMSwwLDAsMSwyLjkzLS43M2MuMjUsMCwuNDksMCwuNzQsMGExOC4yOSwxOC4yOSwwLDAsMCwxLDcuOTMsMTUuMDYsMTUuMDYsMCwwLDAsNi42Nyw4bDguOTMsNS4xNmMuMi0uMTMuNDMtLjMuNjgtLjQ4LDIuMjYtMS42LDYuNDItNC45Miw4Ljg2LTkuMTNDNTUuMTIsMzkuOTQsNTUuOCwzNCw1NiwzMS41N2wtMy43OS0yLjE5YTIzLDIzLDAsMCwwLC42LTMuODNaIiAvPgogICAgPHBhdGggc3R5bGU9ImZpbGw6IHJnYigyNiwgMTI4LCAyNTApOyIgZD0iTTQ5LjIyLDExLjQzVjIzLjg5YzAsLjY1LDAsMS4zLS4xLDEuOTR2MGMtLjA2LjU1LS4xMywxLjEtLjI0LDEuNjNBMTgsMTgsMCwwLDEsNDcuODIsMzFhMTkuMTEsMTkuMTEsMCwwLDEtMi42Miw0LjQ5LDIxLjM3LDIxLjM3LDAsMCwxLTcuMDcsNS44LDYuMDgsNi4wOCwwLDAsMS0yLjQyLTIuODRBMTguMSwxOC4xLDAsMCwwLDQyLDMzLjdoMGExNS4xMiwxNS4xMiwwLDAsMCwzLjU4LTkuODFWMTMuNmMtLjIxLS4xMS0uNDctLjIxLS43NC0uMzUtMi41Mi0xLjE2LTcuNDctMy4xLTEyLjM2LTMuMS01LjQyLDAtMTEsMi40LTEzLjA4LDMuNDVWMThhMjIuNTQsMjIuNTQsMCwwLDAtMy42MywxLjM4VjExLjQzbC45Mi0uNTJjLjMzLS4xOCw4LTQuMzgsMTUuNzktNC4zOHMxNS40OCw0LjIsMTUuOCw0LjM4WiIgLz4KICAgIDxwYXRoIHN0eWxlPSJmaWxsOiByZ2IoMjYsIDEyOCwgMjUwKTsiIGQ9Ik0xOCwyNi40LDksMzEuNTVxMCwuMzUuMDYuNzhhMzEuNjMsMzEuNjMsMCwwLDAsMy40OSwxMi4yOGMyLjcxLDQuNzEsNy41NSw4LjMsOS41Myw5LjY0bDMuNzktMi4xOWEyMy4zMywyMy4zMywwLDAsMCwzLDIuNDRsLTYuODgsNC0uOTItLjU0Yy0uMzEtLjE4LTcuNzUtNC42OS0xMS42OC0xMS41UzUuMzYsMzAuOTIsNS4zNSwzMC41NlYyOS40OUw3LDI4LjU1bDkuMTctNS4yOWMuNTctLjMyLDEuMTQtLjYxLDEuNzItLjg3YTEzLjQ2LDEzLjQ2LDAsMCwxLDEuNTUtLjYxQTE3LjUyLDE3LjUyLDAsMCwxLDIzLDIwLjkxYTE5LjIsMTkuMiwwLDAsMSw1LjE5LDAsMjEuNDksMjEuNDksMCwwLDEsOC41NSwzLjI0LDYuMjksNi4yOSwwLDAsMS0xLjI1LDMuNTEsMTcuOSwxNy45LDAsMCwwLTcuMy0zLjA2QTE1LjE0LDE1LjE0LDAsMCwwLDE4LDI2LjRaIi8+Cjwvc3ZnPgo="})),cd("qr")},j=async()=>{if(ld()?.track("click","ui","open extension",{key:rd()?.key}),Xu(!1),e.pairingPayload?.postmessageSyncCode){const t=new He,n=await t.serialize(await e.pairingPayload.postmessageSyncCode()),r={target:W.EXTENSION,payload:n,targetId:rd()?.id};if(fe.postMessage(r,fe.location.origin),rd()?.firefoxId){const e={target:W.EXTENSION,payload:n,targetId:rd()?.firefoxId};fe.postMessage(e,fe.location.origin)}}localStorage.setItem(Y.LAST_SELECTED_WALLET,JSON.stringify({key:rd()?.key,name:rd()?.name,type:"extension",icon:rd()?.image}))},z=async()=>{ld()?.track("click","ui","install extension",{key:rd()?.key}),Xu(!1),window.open(rd()?.links[lu.EXTENSION]||"","_blank","noopener")},U=async()=>{if(Xu(!1),ld()?.track("click","ui","open desktop",{key:rd()?.key}),await t){const e=new He,n=await e.serialize(await t),r=$l(rd()?.deepLink||"",n);window.open(r,"_blank","noopener")}localStorage.setItem(Y.LAST_SELECTED_WALLET,JSON.stringify({key:rd()?.key,name:rd()?.name,type:"desktop",icon:rd()?.image}))},B=async()=>{ld()?.track("click","ui","download desktop",{key:rd()?.key}),Xu(!1),window.open(rd()?.links[lu.DESKTOP]||"","_blank","noopener")},q=()=>o.map((e=>e.id)).includes(rd()?.firefoxId||"")||o.map((e=>e.id)).includes(rd()?.id||""),K=({isMobile:e})=>(localStorage.setItem(Y.LAST_SELECTED_WALLET,JSON.stringify({key:rd()?.key,name:rd()?.name,type:"mobile",icon:rd()?.image})),uo(cu,{get isWalletConnect(){return rd()?.supportedInteractionStandards?.includes("wallet_connect")||!1},isMobile:e,get walletName(){return rd()?.name||"AirGap"},get code(){return $u()},onClickLearnMore:A,onClickQrCode:I})),J=Su();md=fo((()=>{return yo(a=Bu(),`theme__${J}`),xo(a,uo(E,{}),null),xo(a,(o=Ri((()=>!!e.pairingPayload)),()=>o()&&uo(Il,{get loading(){return Qu()},get open(){return Hu()},get showMore(){return Zu()},get content(){return a=qu(),c=a.firstChild,l=c.nextSibling,u=l.nextSibling,xo(a,(o=Ri((()=>"install"===ad())),()=>{return o()&&(xo(d=Bu(),(i=Ri((()=>!(!r||!rd()?.types.includes("web")))),()=>i()&&uo(Xl,{border:!0,get title(){return`Connect with ${rd()?.name} Web`},description:"(It will open the wallet in a new tab)",buttons:[{label:"Use Browser",type:"primary",onClick:()=>O(e,rd())}]})),null),xo(d,(s=Ri((()=>!(S()||!rd()?.types.includes("extension")))),()=>s()&&uo(Xl,{border:!0,get title(){return Ri((()=>!!q()))()?`Connect with ${rd()?.name} Browser Extension`:`Install ${rd()?.name} Wallet`},get description(){return Ri((()=>!!q()))()?`Please connect below to use your ${rd()?.name} Wallet browser extension.`:`To connect your ${rd()?.name} Wallet, install the browser extension.`},get buttons(){return q()?[{label:"Use Extension",type:"primary",onClick:()=>j()}]:[{label:"Install extension",type:"primary",onClick:()=>z()}]}})),null),xo(d,(a=Ri((()=>!(S()||!rd()?.types.includes("desktop")))),()=>a()&&uo(Xl,{border:!0,get title(){return`Connect with ${rd()?.name} Desktop App`},description:"If you don't have the desktop app installed, click below to download it.",buttons:[{label:"Open desktop app",type:"primary",onClick:()=>U()},{label:"Download desktop app",type:"secondary",onClick:()=>B()}]})),null),xo(d,(c=Ri((()=>!!(!S()&&$u().length>0&&rd()?.types.includes("ios")&&rd()?.types.length>1))),()=>c()&&uo(K,{isMobile:!1})),null),xo(d,(l=Ri((()=>!!(!S()&&$u().length>0&&rd()?.types.includes("ios")&&rd()?.types.length<=1))),()=>l()&&uo(K,{isMobile:!0})),null),xo(d,(u=Ri((()=>!(!S()||!rd()?.types.includes("ios")))),()=>u()&&uo(Xl,{border:!0,get title(){return`Connect with ${rd()?.name} Mobile`},description:"",buttons:[{label:"Use App",type:"primary",onClick:async()=>{const e=rd();if(!e)return;let r="";r=e.supportedInteractionStandards?.includes("wallet_connect")?(await n)?.uri??"":await(new He).serialize(await t),F(e,r)}}],get downloadLink(){return rd()?.name.toLowerCase().includes("kukai")&&mu(window)?{label:"Get Kukai Mobile >",url:"https://ios.kukai.app"}:void 0},onShowQRCodeClick:async()=>{const e=rd()?.supportedInteractionStandards?.includes("wallet_connect")?(await n)?.uri??"":await(new He).serialize(await t),r=rd();e.length&&r?(x&&r.types.includes("ios")&&1===r.types.length?F(r,e):ed(e),cd("qr"),_d(!0)):D()}})),null),Oi((e=>bo(d,"install"===ad()||"qr"===ad()?{opacity:1,height:"unset",overflow:"unset",transform:"scale(1)",transition:"all ease 0.3s",display:"flex","flex-direction":"column",gap:"0.9em"}:{opacity:0,height:0,overflow:"hidden",transform:"scale(1.1)",transition:"all ease 0.3s",display:"flex","flex-direction":"column",gap:"0.9em"},e))),d);var i,s,a,c,l,u,d}),c),xo(a,(s=Ri((()=>"qr"===ad())),()=>{return s()&&(xo(r=Bu(),(e=Ri((()=>!dd())),()=>e()?uo(Ou,{get walletList(){return td()},onClickLearnMore:A,p2pPayload:t,wcPayload:n}):uo(K,{isMobile:!0}))),Oi((e=>bo(r,"install"===ad()||"qr"===ad()?{opacity:1,height:"unset",overflow:"unset",transform:"scale(1)",transition:"all ease 0.3s",display:"flex","flex-direction":"column",gap:"0.9em"}:{opacity:0,height:0,overflow:"hidden",transform:"scale(1.1)",transition:"all ease 0.3s",display:"flex","flex-direction":"column",gap:"0.9em"},e))),r);var e,r}),c),xo(c,uo(Kl,{get wallets(){return td().slice(-(td().length-(S()?3:4)))},get isMobile(){return S()},onClickWallet:R,onClickOther:L})),xo(l,i&&uo(Uu,{onSubmit:()=>{D()}}),null),xo(l,!i&&[uo(Xl,{iconBadge:!0,get icon(){return Vu()},title:"What is a wallet?",description:"Wallets let you send, receive, store and interact with digital assets. Your wallet can be used as an easy way to login, instead of having to remember a password."}),uo(Xl,{iconBadge:!0,get icon(){return Ku()},title:"Not sure where to start?",description:"If you are new to the Web3, we recommend that you start by creating a Kukai wallet. Kukai is a fast way of creating your first wallet using your preferred social account."})],null),xo(u,uo(ql,{get wallets(){return Ri((()=>!!S()))()?td().slice(0,3):td().slice(0,4)},get isMobile(){return S()},onClickWallet:R,onClickLearnMore:A,get otherWallets(){return Ri((()=>!!S()))()?{images:[td()[3].image,td()[4].image,td()[5].image],onClick:()=>cd("wallets")}:void 0}})),Oi((e=>{var t="wallets"===ad()?{opacity:1,height:"unset",overflow:"unset",transform:"scale(1)",transition:"all ease 0.3s"}:{opacity:0,height:0,overflow:"hidden",transform:"scale(1.1)",transition:"all ease 0.3s"},n="help"===ad()?{opacity:1,height:"unset",overflow:"unset",transform:"scale(1)",transition:"all ease 0.3s",display:"flex","flex-direction":"column",gap:"0.9em"}:{opacity:0,height:0,overflow:"hidden",transform:"scale(1.1)",transition:"all ease 0.3s",display:"flex","flex-direction":"column",gap:"0.9em"},r="install"!==ad()&&"qr"!==ad()&&"wallets"!==ad()&&"help"!==ad()?{opacity:1,height:"unset",overflow:"unset",transform:"scale(1)",transition:"all ease 0.3s"}:{opacity:0,height:0,overflow:"hidden",transform:"scale(1.1)",transition:"all ease 0.3s"};return e.e=bo(c,t,e.e),e.t=bo(l,n,e.t),e.a=bo(u,r,e.a),e}),{e:void 0,t:void 0,a:void 0}),a;var o,s,a,c,l,u},get extraContent(){return Ri((()=>!("top-wallets"===ad()&&!S())))()?void 0:uo(Kl,{small:!0,get wallets(){return td().slice(-(td().length-4))},get isMobile(){return S()},onClickWallet:R,onClickOther:L})},onClickShowMore:N,onCloseClick:()=>D(),get onBackClick(){return Ri((()=>"install"===ad()))()||Ri((()=>"qr"===ad()))()||Ri((()=>!("wallets"!==ad()||!S())))()?()=>cd("top-wallets"):"help"===ad()?()=>{if(!pd())return cd(od());D()}:void 0}})),null),xo(a,(s=Ri((()=>!e.pairingPayload)),()=>s()&&uo(Il,{get open(){return Hu()},get content(){return uo(Xl,{bigIcon:!0,get icon(){return Ju()},get title(){return e.title||"No title"},get description(){return e.body||"No description"},get data(){return e.data},buttons:[{label:"Close",type:"primary",onClick:()=>D()}]})},onCloseClick:()=>D()})),null),a;var o,s,a}),l),document.body.prepend(c),setTimeout((()=>{Gu(!0)}),50)}return""};let yd=ul,vd=ll,bd=dl,xd=_l;var Sd,Td;!function(e){e[e.DESKTOP=0]="DESKTOP",e[e.IOS=1]="IOS",e[e.ANDROID=2]="ANDROID"}(Sd||(Sd={})),function(e){e.IOS="ios",e.ANDROID="android",e.EXTENSION="extension",e.DESKTOP="desktop",e.WEB="web"}(Td||(Td={}));var wd=mo("<img>"),kd=mo("<h3>"),Ed=mo("<p class=toast-label>"),Cd=mo("<div><div class=toast-header><div class=toast-button-icon>"),Nd=mo("<p class=toast-label>props.label"),Ad=mo("<div class=toast-action-button>Open Wallet"),Id=mo("<div class=toast-body>"),Dd=mo("<div class=toast-action-wrapper><p>"),Pd=mo("<div class=toast-action-button>");const[Md,Od]=Mi(!0),Fd=e=>{const t=e.label.includes("{{wallet}}")&&e.walletInfo,n=e.label.includes("Request sent to"),r={x:gu(window)?12:window.innerWidth-460,y:12},[i,o]=Mi(r),[s,a]=Mi(!1),c=e=>{e.preventDefault();const t=e.target;if("toast-header"!==t.className&&"toast-header"!==t.parentElement?.className)return;const n=t.getBoundingClientRect();r.x=e.clientX-n.x,r.y=e.clientY-n.y,a(!0)},l=e=>{if(s()&&1===e.buttons){const t=Math.min(Math.max(e.clientX-r.x,0),window.innerWidth-460),n=Math.min(Math.max(e.clientY-r.y,0),window.innerHeight-12);o({x:t,y:n})}},u=()=>{a(!1)},d=()=>{a(!1)};return Fi((()=>{s()?(window.addEventListener("mousemove",l),window.addEventListener("mouseup",u)):(window.removeEventListener("mousemove",l),window.removeEventListener("mouseup",u))})),n&&(Od(!1),setTimeout((()=>{Od(!0)}),3e3)),m=Cd(),h=m.firstChild,g=h.firstChild,m.$$dblclick=d,m.$$click=d,m.$$mousedown=c,xo(h,uo(Tl,{}),g),xo(h,(_=Ri((()=>!(!t||!e.walletInfo))),()=>_()&&Ri((()=>function(e,t){const n=/({{\s*wallet\s*}})/g;return e.split(n).map((e=>{return e.match(n)?[(o=wd(),Oi((()=>go(o,"src",t.icon))),o),(i=kd(),xo(i,(()=>t.name)),i)]:(xo(r=Ed(),e),r);var r,i,o}))}(e.label,e.walletInfo)))),g),xo(h,!t&&Nd(),g),xo(h,(p=Ri((()=>!(gu(window)||!e.openWalletAction))),()=>{return p()&&((t=Ad()).$$click=()=>{e&&e.openWalletAction&&e?.openWalletAction()},t);var t}),g),vo(g,"click",e.onClickClose,!0),xo(g,uo(gl,{})),xo(m,(f=Ri((()=>!(!e.actions||!Md()))),()=>{return f()&&(xo(t=Id(),uo(_o,{get each(){return e.actions},children:e=>{return n=Dd(),xo(r=n.firstChild,(()=>e.text)),xo(n,(t=Ri((()=>!!e.actionText)),()=>{return t()&&((n=Pd()).$$click=()=>{e.actionCallback&&e.actionCallback()},xo(n,(()=>e.actionText)),n);var n}),null),Oi((()=>yo(r,"toast-action-label "+(e.isBold?"toast-action-bold":"")))),n;var t,n,r}})),t);var t}),null),Oi((t=>{var n=`${i().x}px`,r=`${i().y}px`,o=e.open?"toast-wrapper-show":"toast-wrapper-hide";return n!==t.e&&(null!=(t.e=n)?m.style.setProperty("left",n):m.style.removeProperty("left")),r!==t.t&&(null!=(t.t=r)?m.style.setProperty("top",r):m.style.removeProperty("top")),o!==t.a&&yo(m,t.a=o),t}),{e:void 0,t:void 0,a:void 0}),m;var _,p,f,m,h,g};ho(["mousedown","click","dblclick"]);let Rd=null;const[Ld,jd]=Mi(!1),[zd,Ud]=Mi("");let Bd;const qd=()=>new Promise((e=>{jd(!1),setTimeout((()=>{Rd&&Rd(),document.getElementById("beacon-toast-wrapper")&&document.getElementById("beacon-toast-wrapper").remove(),e()}),300)})),Vd=async e=>{const t=await U();Ud(t),await qd(),t===zd()&&(e=>{const t=document.createElement("div");document.getElementById("beacon-toast-wrapper")&&document.getElementById("beacon-toast-wrapper").remove(),t.setAttribute("id","beacon-toast-wrapper"),t.style.height="0px";const n=t.attachShadow({mode:"open"}),r=document.createElement("style");r.textContent=".toast-wrapper-show {\n max-width: 460px;\n overflow: hidden;\n background-color: white;\n position: fixed;\n top: 12px;\n right: 12px;\n border-radius: 6px;\n transition: all ease 0.3s;\n transform: translateY(0px) scale(1);\n z-index: 1000000;\n -webkit-box-shadow: 0px 4px 11px -4px rgba(0, 0, 0, 0.45);\n -moz-box-shadow: 0px 4px 11px -4px rgba(0, 0, 0, 0.45);\n box-shadow: 0px 4px 11px -4px rgba(0, 0, 0, 0.45);\n}\n\n.toast-wrapper-hide {\n max-width: 460px;\n overflow: hidden;\n background-color: white;\n position: fixed;\n top: 12px;\n right: 12px;\n border-radius: 6px;\n transition: all ease 0.3s;\n transform: translateY(-150px) scale(0.2);\n z-index: 1000000;\n -webkit-box-shadow: 0px 4px 11px -4px rgba(0, 0, 0, 0.45);\n -moz-box-shadow: 0px 4px 11px -4px rgba(0, 0, 0, 0.45);\n box-shadow: 0px 4px 11px -4px rgba(0, 0, 0, 0.45);\n}\n\n.toast-header {\n cursor: move;\n padding: 0px 0.6em 0px 1.2em;\n display: flex;\n align-items: center;\n gap: 6px;\n overflow: hidden;\n position: relative;\n}\n\n.toast-header img {\n width: 24px;\n}\n\n.toast-header h3 {\n font-weight: bold;\n color: #334155;\n font-size: 0.8em;\n margin-right: auto;\n}\n\n.toast-label {\n margin: 1em 0em 1em 0em;\n color: #334155;\n font-size: 0.9em;\n}\n\n.toast-button-icon {\n width: 24px;\n height: 24px;\n padding: 2px;\n border-radius: 100%;\n border: 1px solid #cbd5e1;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n fill: #64748b;\n transition: all ease 0.2s;\n margin-left: auto;\n}\n\n.toast-button-icon:hover {\n background-color: #475569;\n border: 1px solid #475569;\n fill: #e2e8f0;\n}\n\n.toast-body {\n padding: 0.6em 1.2em;\n}\n\n.toast-action-wrapper {\n display: flex;\n align-items: center;\n justify-content: space-between;\n}\n\n.toast-action-label {\n margin: 0.8em 0em;\n font-size: 0.8em;\n color: #64748b;\n}\n\n.toast-action-bold {\n font-weight: bold;\n color: #334155;\n}\n\n.toast-action-button {\n cursor: pointer;\n font-size: 0.8em;\n font-weight: 600;\n color: #3880ff;\n transition: all ease 0.2s;\n border-radius: 6px;\n padding: 0.4em 0.8em;\n}\n\n.toast-action-button:hover {\n background-color: #e4eeff;\n transition: all ease 0.2s;\n}\n\n@media only screen and (max-width: 800px) {\n .toast-wrapper-show {\n width: calc(100% - 24px);\n }\n\n .toast-wrapper-hide {\n width: calc(100% - 24px);\n }\n}\n",n.appendChild(r);const i=document.createElement("style");i.textContent=xl,n.appendChild(i);const o=document.createElement("style");o.textContent="* { font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', 'Segoe UI Emoji', 'Apple Color Emoji', 'Noto Color Emoji', sans-serif;}",n.appendChild(o),Rd=fo((()=>uo(Fd,{get label(){return e.body},get open(){return Ld()},onClickClose:()=>{qd()},get actions(){return e.actions},get walletInfo(){return e.walletInfo},get openWalletAction(){return e.openWalletAction}})),n),document.body.prepend(t),setTimeout((()=>{jd(!0)}),50),clearTimeout(Bd),e.timer&&(Bd=setTimeout((()=>qd()),e.timer))})(e)},Kd=e=>e.length>=12?`${e.substr(0,5)}...${e.substr(-5)}`:e;var Jd=n(96763);const Wd=new Ae("BeaconEvents"),Hd=5e3;var Gd;!function(e){e.PERMISSION_REQUEST_SENT="PERMISSION_REQUEST_SENT",e.PERMISSION_REQUEST_SUCCESS="PERMISSION_REQUEST_SUCCESS",e.PERMISSION_REQUEST_ERROR="PERMISSION_REQUEST_ERROR",e.PROOF_OF_EVENT_CHALLENGE_REQUEST_SENT="PROOF_OF_EVENT_CHALLENGE_REQUEST_SENT",e.PROOF_OF_EVENT_CHALLENGE_REQUEST_SUCCESS="PROOF_OF_EVENT_CHALLENGE_REQUEST_SUCCESS",e.PROOF_OF_EVENT_CHALLENGE_REQUEST_ERROR="PROOF_OF_EVENT_CHALLENGE_REQUEST_ERROR",e.SIMULATED_PROOF_OF_EVENT_CHALLENGE_REQUEST_SENT="SIMULATED_PROOF_OF_EVENT_CHALLENGE_REQUEST_SENT",e.SIMULATED_PROOF_OF_EVENT_CHALLENGE_REQUEST_SUCCESS="SIMULATED_PROOF_OF_EVENT_CHALLENGE_REQUEST_SUCCESS",e.SIMULATED_PROOF_OF_EVENT_CHALLENGE_REQUEST_ERROR="SIMULATED_PROOF_OF_EVENT_CHALLENGE_REQUEST_ERROR",e.OPERATION_REQUEST_SENT="OPERATION_REQUEST_SENT",e.OPERATION_REQUEST_SUCCESS="OPERATION_REQUEST_SUCCESS",e.OPERATION_REQUEST_ERROR="OPERATION_REQUEST_ERROR",e.SIGN_REQUEST_SENT="SIGN_REQUEST_SENT",e.SIGN_REQUEST_SUCCESS="SIGN_REQUEST_SUCCESS",e.SIGN_REQUEST_ERROR="SIGN_REQUEST_ERROR",e.BROADCAST_REQUEST_SENT="BROADCAST_REQUEST_SENT",e.BROADCAST_REQUEST_SUCCESS="BROADCAST_REQUEST_SUCCESS",e.BROADCAST_REQUEST_ERROR="BROADCAST_REQUEST_ERROR",e.ACKNOWLEDGE_RECEIVED="ACKNOWLEDGE_RECEIVED",e.LOCAL_RATE_LIMIT_REACHED="LOCAL_RATE_LIMIT_REACHED",e.NO_PERMISSIONS="NO_PERMISSIONS",e.ACTIVE_ACCOUNT_SET="ACTIVE_ACCOUNT_SET",e.ACTIVE_TRANSPORT_SET="ACTIVE_TRANSPORT_SET",e.SHOW_PREPARE="SHOW_PREPARE",e.HIDE_UI="HIDE_UI",e.INVALID_ACTIVE_ACCOUNT_STATE="INVALID_ACTIVE_ACCOUNT_STATE",e.PAIR_INIT="PAIR_INIT",e.PAIR_SUCCESS="PAIR_SUCCESS",e.CHANNEL_CLOSED="CHANNEL_CLOSED",e.INTERNAL_ERROR="INTERNAL_ERROR",e.UNKNOWN="UNKNOWN"}(Gd||(Gd={}));const Qd=async e=>{let t;const n=[];if(e.walletInfo.deeplink&&("web"===e.walletInfo.type||"mobile"===e.walletInfo.type&&_u(window)||"desktop"===e.walletInfo.type&&!_u(window))){const n=e.walletInfo.deeplink;t=async()=>{const e=document.createElement("a");e.setAttribute("rel","noopener"),e.setAttribute("href",n),e.setAttribute("target","_blank"),e.dispatchEvent(new MouseEvent("click",{view:window,bubbles:!0,cancelable:!0}))}}n.push({text:"No answer from your wallet received yet. Please make sure the wallet is open.",isBold:!0}),n.push({text:"Wallet not receiving request?",actionText:"Reset Connection",actionCallback:async()=>{await qd();const t=e.extraInfo.resetCallback;t&&(Wd.log("showSentToast","resetCallback invoked"),await t())}}),Vd({body:"Request sent to\xa0 {{wallet}}",walletInfo:e.walletInfo,state:"loading",actions:n,openWalletAction:t}).catch((e=>Jd.error(e)))},Yd=async(e,t)=>{const n=e.errorResponse.errorType?Me.getError(e.errorResponse.errorType,e.errorResponse.errorData):new qe,r=[{text:n.title,isBold:!0}];if(e.errorResponse.errorType===H.TRANSACTION_INVALID_ERROR&&e.errorResponse.errorData){const i=e.errorResponse.errorData,o=e.errorMessages;let s=!1;if(i[0]?.contract_handle&&o&&o?.[i[0].contract_handle]){const e=i[1]?.with?.int??i[1]?.with?.string,t=o?.[i[0].contract_handle];e&&t?.[e]&&(r.push({text:t?.[e],isBold:!0}),s=!0)}s||r.push({text:n.description}),r.push({text:"",actionText:"Show Details",actionCallback:async()=>{await qd(),await gd({title:n.title,body:n.fullDescription.description,data:n.fullDescription.data,buttons:t})}})}await Vd({body:"{{wallet}}\xa0 has returned an error",timer:e.errorResponse.errorType===H.ABORTED_ERROR?Hd:void 0,state:"finished",walletInfo:e.walletInfo,actions:r})},Zd={[Gd.PERMISSION_REQUEST_SENT]:Qd,[Gd.PERMISSION_REQUEST_SUCCESS]:async e=>{const{output:t}=e;await Vd({body:"{{wallet}}\xa0 has granted permission",timer:Hd,walletInfo:e.walletInfo,state:"finished",actions:[{text:"Address",actionText:Kd(t.address),isBold:!0},{text:"Network",actionText:`${t.network.type}`},{text:"Permissions",actionText:t.scopes.join(", ")}]})},[Gd.PERMISSION_REQUEST_ERROR]:Yd,[Gd.PROOF_OF_EVENT_CHALLENGE_REQUEST_SENT]:Qd,[Gd.PROOF_OF_EVENT_CHALLENGE_REQUEST_SUCCESS]:async e=>{const{output:t}=e;await Vd({body:`{{wallet}}\xa0 has ${t.isAccepted?"accepted":"refused"} the challenge`,timer:Hd,walletInfo:e.walletInfo,state:"finished",actions:t.isAccepted?[{text:`Payload hash: ${t.payloadHash}`,actionText:"Copy to clipboard",actionCallback:async()=>{navigator.clipboard.writeText(t.payloadHash).then((()=>{Wd.log("showSignSuccessAlert","Copying to clipboard was successful!")}),(e=>{Wd.error("showSignSuccessAlert","Could not copy text to clipboard: ",e)})),await qd()}}]:[]})},[Gd.PROOF_OF_EVENT_CHALLENGE_REQUEST_ERROR]:Yd,[Gd.SIMULATED_PROOF_OF_EVENT_CHALLENGE_REQUEST_SENT]:Qd,[Gd.SIMULATED_PROOF_OF_EVENT_CHALLENGE_REQUEST_SUCCESS]:async e=>{const{output:t}=e;await Vd({body:t.errorMessage?"{{wallet}}\xa0 has returned an error":"{{wallet}}\xa0 has returned the list of operation",timer:Hd,walletInfo:e.walletInfo,state:"finished",actions:t.errorMessage?[{text:"Error message",actionText:t.errorMessage}]:[{text:"Operation list",actionText:"Copy to clipboard",actionCallback:async()=>{navigator.clipboard.writeText(t.operationsList).then((()=>{Wd.log("showSignSuccessAlert","Copying to clipboard was successful!")}),(e=>{Wd.error("showSignSuccessAlert","Could not copy text to clipboard: ",e)})),await qd()}}]})},[Gd.SIMULATED_PROOF_OF_EVENT_CHALLENGE_REQUEST_ERROR]:Yd,[Gd.OPERATION_REQUEST_SENT]:Qd,[Gd.OPERATION_REQUEST_SUCCESS]:async e=>{const{account:t,output:n,blockExplorer:r}=e;await Vd({body:"{{wallet}}\xa0 successfully submitted operation",timer:Hd,state:"finished",walletInfo:e.walletInfo,actions:[{text:Kd(n.transactionHash),isBold:!0,actionText:"Open Blockexplorer",actionLogo:"external",actionCallback:async()=>{const e=await r.getTransactionLink(n.transactionHash,t.network);window.open(e,"_blank","noopener"),await qd()}}]})},[Gd.OPERATION_REQUEST_ERROR]:Yd,[Gd.SIGN_REQUEST_SENT]:Qd,[Gd.SIGN_REQUEST_SUCCESS]:async e=>{const t=e.output;await Vd({body:"{{wallet}}\xa0 successfully signed payload",timer:Hd,state:"finished",walletInfo:e.walletInfo,actions:[{text:`Signature: ${Kd(t.signature)}`,actionText:"Copy to clipboard",actionCallback:async()=>{navigator.clipboard.writeText(t.signature).then((()=>{Wd.log("showSignSuccessAlert","Copying to clipboard was successful!")}),(e=>{Wd.error("showSignSuccessAlert","Could not copy text to clipboard: ",e)})),await qd()}}]})},[Gd.SIGN_REQUEST_ERROR]:Yd,[Gd.BROADCAST_REQUEST_SENT]:Qd,[Gd.BROADCAST_REQUEST_SUCCESS]:async e=>{const{network:t,output:n,blockExplorer:r}=e;await Vd({body:"{{wallet}}\xa0 successfully injected operation",timer:Hd,state:"finished",walletInfo:e.walletInfo,actions:[{text:Kd(n.transactionHash),isBold:!0,actionText:"Open Blockexplorer",actionLogo:"external",actionCallback:async()=>{const e=await r.getTransactionLink(n.transactionHash,t);window.open(e,"_blank","noopener"),await qd()}}]})},[Gd.BROADCAST_REQUEST_ERROR]:Yd,[Gd.ACKNOWLEDGE_RECEIVED]:async e=>{Vd({body:"Awaiting confirmation in\xa0 {{wallet}}",state:"acknowledge",walletInfo:e.walletInfo}).catch((e=>Jd.error(e)))},[Gd.LOCAL_RATE_LIMIT_REACHED]:async()=>{gd({title:"Error",body:"Rate limit reached. Please slow down",buttons:[{text:"Done",style:"outline"}],timer:3e3}).catch((e=>Jd.error(e)))},[Gd.NO_PERMISSIONS]:async()=>{await gd({title:"No Permission",body:"Please allow the wallet to handle this type of request."})},[Gd.ACTIVE_ACCOUNT_SET]:async()=>{},[Gd.ACTIVE_TRANSPORT_SET]:async()=>{},[Gd.INVALID_ACTIVE_ACCOUNT_STATE]:async()=>{await gd({title:"Invalid state",body:"An active account has been received, but no active subscription was found for BeaconEvent.ACTIVE_ACCOUNT_SET.\n For more information, visit: https://docs.walletbeacon.io/guides/migration-guide"})},[Gd.SHOW_PREPARE]:async e=>{const t=e.walletInfo?"Preparing Request for\xa0 {{wallet}}...":"Preparing Request...";Vd({body:t,state:"prepare",walletInfo:e.walletInfo}).catch((e=>Jd.error(e)))},[Gd.HIDE_UI]:async e=>{e?(e.includes("alert")&&await hd(),e.includes("toast")&&await qd()):await qd()},[Gd.PAIR_INIT]:async e=>{Wd.log("showPairAlert");const t={title:"Choose your preferred wallet",body:"<p></p>",pairingPayload:{p2pSyncCode:e.p2pPeerInfo,walletConnectSyncCode:e.walletConnectPeerInfo,postmessageSyncCode:e.postmessagePeerInfo,networkType:e.networkType},closeButtonCallback:e.abortedHandler,disclaimerText:e.disclaimerText,analytics:e.analytics,featuredWallets:e.featuredWallets};await gd(t)},[Gd.PAIR_SUCCESS]:async()=>{await hd()},[Gd.CHANNEL_CLOSED]:async()=>{},[Gd.INTERNAL_ERROR]:async e=>{const t=[...e.buttons??[]];t.push({text:"Done",style:"outline"});const n={title:"Internal Error",body:e.text,buttons:t};await gd(n)},[Gd.UNKNOWN]:async()=>{}};class Xd{callbackMap={[Gd.PERMISSION_REQUEST_SENT]:[Zd.PERMISSION_REQUEST_SENT],[Gd.PERMISSION_REQUEST_SUCCESS]:[Zd.PERMISSION_REQUEST_SUCCESS],[Gd.PERMISSION_REQUEST_ERROR]:[Zd.PERMISSION_REQUEST_ERROR],[Gd.PROOF_OF_EVENT_CHALLENGE_REQUEST_SENT]:[Zd.PERMISSION_REQUEST_SENT],[Gd.PROOF_OF_EVENT_CHALLENGE_REQUEST_SUCCESS]:[Zd.PROOF_OF_EVENT_CHALLENGE_REQUEST_SUCCESS],[Gd.PROOF_OF_EVENT_CHALLENGE_REQUEST_ERROR]:[Zd.PROOF_OF_EVENT_CHALLENGE_REQUEST_ERROR],[Gd.SIMULATED_PROOF_OF_EVENT_CHALLENGE_REQUEST_SENT]:[Zd.SIMULATED_PROOF_OF_EVENT_CHALLENGE_REQUEST_SENT],[Gd.SIMULATED_PROOF_OF_EVENT_CHALLENGE_REQUEST_SUCCESS]:[Zd.SIMULATED_PROOF_OF_EVENT_CHALLENGE_REQUEST_SUCCESS],[Gd.SIMULATED_PROOF_OF_EVENT_CHALLENGE_REQUEST_ERROR]:[Zd.SIMULATED_PROOF_OF_EVENT_CHALLENGE_REQUEST_ERROR],[Gd.OPERATION_REQUEST_SENT]:[Zd.OPERATION_REQUEST_SENT],[Gd.OPERATION_REQUEST_SUCCESS]:[Zd.OPERATION_REQUEST_SUCCESS],[Gd.OPERATION_REQUEST_ERROR]:[Zd.OPERATION_REQUEST_ERROR],[Gd.SIGN_REQUEST_SENT]:[Zd.SIGN_REQUEST_SENT],[Gd.SIGN_REQUEST_SUCCESS]:[Zd.SIGN_REQUEST_SUCCESS],[Gd.SIGN_REQUEST_ERROR]:[Zd.SIGN_REQUEST_ERROR],[Gd.BROADCAST_REQUEST_SENT]:[Zd.BROADCAST_REQUEST_SENT],[Gd.BROADCAST_REQUEST_SUCCESS]:[Zd.BROADCAST_REQUEST_SUCCESS],[Gd.BROADCAST_REQUEST_ERROR]:[Zd.BROADCAST_REQUEST_ERROR],[Gd.ACKNOWLEDGE_RECEIVED]:[Zd.ACKNOWLEDGE_RECEIVED],[Gd.LOCAL_RATE_LIMIT_REACHED]:[Zd.LOCAL_RATE_LIMIT_REACHED],[Gd.NO_PERMISSIONS]:[Zd.NO_PERMISSIONS],[Gd.ACTIVE_ACCOUNT_SET]:[Zd.ACTIVE_ACCOUNT_SET],[Gd.ACTIVE_TRANSPORT_SET]:[Zd.ACTIVE_TRANSPORT_SET],[Gd.INVALID_ACTIVE_ACCOUNT_STATE]:[Zd.INVALID_ACTIVE_ACCOUNT_STATE],[Gd.SHOW_PREPARE]:[Zd.SHOW_PREPARE],[Gd.HIDE_UI]:[Zd.HIDE_UI],[Gd.PAIR_INIT]:[Zd.PAIR_INIT],[Gd.PAIR_SUCCESS]:[Zd.PAIR_SUCCESS],[Gd.CHANNEL_CLOSED]:[Zd.CHANNEL_CLOSED],[Gd.INTERNAL_ERROR]:[Zd.INTERNAL_ERROR],[Gd.UNKNOWN]:[Zd.UNKNOWN]};constructor(e={},t){t&&this.setAllHandlers(),this.overrideDefaults(e)}async on(e,t){const n=this.callbackMap[e]||[];n.push(t),this.callbackMap[e]=n}async emit(e,t,n){const r=this.callbackMap[e];r&&r.length>0&&r.forEach((async r=>{try{await r(t,n)}catch(i){Wd.error(`error handling event ${e}`,i)}}))}overrideDefaults(e){Object.keys(e).forEach((t=>{const n=t,r=e[n];r&&(this.callbackMap[n]=[r.handler])}))}setAllHandlers(e){Object.keys(this.callbackMap).forEach((t=>{const n=t;this.callbackMap[n]=[],e?this.callbackMap[n].push(e):this.callbackMap[n].push(((...e)=>{Wd.log(t,...e)}))}))}}const $d={[B.BlockchainRequest]:{sent:Gd.UNKNOWN,success:Gd.UNKNOWN,error:Gd.UNKNOWN},[B.BlockchainResponse]:{sent:Gd.UNKNOWN,success:Gd.UNKNOWN,error:Gd.UNKNOWN},[B.PermissionRequest]:{sent:Gd.PERMISSION_REQUEST_SENT,success:Gd.PERMISSION_REQUEST_SUCCESS,error:Gd.PERMISSION_REQUEST_ERROR},[B.PermissionResponse]:{sent:Gd.UNKNOWN,success:Gd.UNKNOWN,error:Gd.UNKNOWN},[B.ProofOfEventChallengeRequest]:{sent:Gd.PROOF_OF_EVENT_CHALLENGE_REQUEST_SENT,success:Gd.PROOF_OF_EVENT_CHALLENGE_REQUEST_SUCCESS,error:Gd.PROOF_OF_EVENT_CHALLENGE_REQUEST_ERROR},[B.ProofOfEventChallengeResponse]:{sent:Gd.UNKNOWN,success:Gd.UNKNOWN,error:Gd.UNKNOWN},[B.SimulatedProofOfEventChallengeRequest]:{sent:Gd.SIMULATED_PROOF_OF_EVENT_CHALLENGE_REQUEST_SENT,success:Gd.SIMULATED_PROOF_OF_EVENT_CHALLENGE_REQUEST_SUCCESS,error:Gd.SIMULATED_PROOF_OF_EVENT_CHALLENGE_REQUEST_ERROR},[B.SimulatedProofOfEventChallengeResponse]:{sent:Gd.UNKNOWN,success:Gd.UNKNOWN,error:Gd.UNKNOWN},[B.OperationRequest]:{sent:Gd.OPERATION_REQUEST_SENT,success:Gd.OPERATION_REQUEST_SUCCESS,error:Gd.OPERATION_REQUEST_ERROR},[B.OperationResponse]:{sent:Gd.UNKNOWN,success:Gd.UNKNOWN,error:Gd.UNKNOWN},[B.SignPayloadRequest]:{sent:Gd.SIGN_REQUEST_SENT,success:Gd.SIGN_REQUEST_SUCCESS,error:Gd.SIGN_REQUEST_ERROR},[B.SignPayloadResponse]:{sent:Gd.UNKNOWN,success:Gd.UNKNOWN,error:Gd.UNKNOWN},[B.BroadcastRequest]:{sent:Gd.BROADCAST_REQUEST_SENT,success:Gd.BROADCAST_REQUEST_SUCCESS,error:Gd.BROADCAST_REQUEST_ERROR},[B.BroadcastResponse]:{sent:Gd.UNKNOWN,success:Gd.UNKNOWN,error:Gd.UNKNOWN},[B.ChangeAccountRequest]:{sent:Gd.UNKNOWN,success:Gd.UNKNOWN,error:Gd.UNKNOWN},[B.Acknowledge]:{sent:Gd.UNKNOWN,success:Gd.UNKNOWN,error:Gd.UNKNOWN},[B.Disconnect]:{sent:Gd.UNKNOWN,success:Gd.UNKNOWN,error:Gd.UNKNOWN},[B.Error]:{sent:Gd.UNKNOWN,success:Gd.UNKNOWN,error:Gd.UNKNOWN}};class e_{rpcUrls;constructor(e){this.rpcUrls=e}async getLinkForNetwork(e){return this.rpcUrls[e.type]}}class t_ extends e_{rpcUrls;constructor(e={[V.MAINNET]:"https://tzkt.io",[V.GHOSTNET]:"https://ghostnet.tzkt.io",[V.WEEKLYNET]:"https://weeklynet.tzkt.io",[V.DAILYNET]:"https://dailynet.tzkt.io",[V.DELPHINET]:"https://delphinet.tzkt.io",[V.EDONET]:"https://edonet.tzkt.io",[V.FLORENCENET]:"https://florencenet.tzkt.io",[V.GRANADANET]:"https://granadanet.tzkt.io",[V.HANGZHOUNET]:"https://hangzhounet.tzkt.io",[V.ITHACANET]:"https://ithacanet.tzkt.io",[V.JAKARTANET]:"https://jakartanet.tzkt.io",[V.KATHMANDUNET]:"https://kathmandunet.tzkt.io",[V.LIMANET]:"https://limanet.tzkt.io",[V.MUMBAINET]:"https://mumbainet.tzkt.io",[V.NAIROBINET]:"https://nairobinet.tzkt.io",[V.OXFORDNET]:"https://oxfordnet.tzkt.io",[V.PARISNET]:"https://parisnet.tzkt.io",[V.CUSTOM]:"https://parisnet.tzkt.io"}){super(e),this.rpcUrls=e}async getAddressLink(e,t){return`${await this.getLinkForNetwork(t)}/${e}`}async getTransactionLink(e,t){return`${await this.getLinkForNetwork(t)}/${e}`}}const n_=new Ae("DappPostMessageTransport");class r_ extends _i{constructor(e,t,n){super(e,t,n,Y.TRANSPORT_POSTMESSAGE_PEERS_DAPP)}async startOpenChannelListener(){return this.client.listenForChannelOpening((async e=>{n_.log("connect","received PostMessagePairingResponse",e),await this.addPeer(e),this._isConnected=G.CONNECTED,this.newPeerListener&&(this.newPeerListener(e),this.newPeerListener=void 0)}))}async listenForNewPeer(e){n_.log("listenForNewPeer"),this.newPeerListener=e}async stopListeningForNewPeers(){n_.log("stopListeningForNewPeers"),this.newPeerListener=void 0}}const i_=new Ae("DappP2PTransport");class o_ extends ii{constructor(e,t,n,r,i,o){super(e,t,n,r,Y.TRANSPORT_P2P_PEERS_DAPP,i,o)}async startOpenChannelListener(){return this.client.listenForChannelOpening((async e=>{i_.log("listenForNewPeer","new publicKey",e.publicKey),await this.addPeer(e),this._isConnected=G.CONNECTED,this.newPeerListener&&(this.newPeerListener(e),this.newPeerListener=void 0)}))}async listenForNewPeer(e){i_.log("listenForNewPeer"),this.newPeerListener=e}async stopListeningForNewPeers(){i_.log("stopListeningForNewPeers"),this.newPeerListener=void 0}}var s_=n(37007),a_=n.n(s_),c_=n(96763);const l_=/"(?:_|\\u0{2}5[Ff]){2}(?:p|\\u0{2}70)(?:r|\\u0{2}72)(?:o|\\u0{2}6[Ff])(?:t|\\u0{2}74)(?:o|\\u0{2}6[Ff])(?:_|\\u0{2}5[Ff]){2}"\s*:/,u_=/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/,d_=/^\s*["[{]|^\s*-?\d{1,16}(\.\d{1,17})?([Ee][+-]?\d+)?\s*$/;function __(e,t){if(!("__proto__"===e||"constructor"===e&&t&&"object"==typeof t&&"prototype"in t))return t;!function(e){c_.warn(`[destr] Dropping "${e}" key to prevent prototype pollution.`)}(e)}function p_(e,t={}){if("string"!=typeof e)return e;const n=e.trim();if('"'===e[0]&&e.endsWith('"')&&!e.includes("\\"))return n.slice(1,-1);if(n.length<=9){const e=n.toLowerCase();if("true"===e)return!0;if("false"===e)return!1;if("undefined"===e)return;if("null"===e)return null;if("nan"===e)return Number.NaN;if("infinity"===e)return Number.POSITIVE_INFINITY;if("-infinity"===e)return Number.NEGATIVE_INFINITY}if(!d_.test(e)){if(t.strict)throw new SyntaxError("[destr] Invalid JSON");return e}try{if(l_.test(e)||u_.test(e)){if(t.strict)throw new Error("[destr] Possible prototype pollution");return JSON.parse(e,__)}return JSON.parse(e)}catch(r){if(t.strict)throw r;return e}}var f_=n(48287).Buffer;function m_(e,...t){try{return(n=e(...t))&&"function"==typeof n.then?n:Promise.resolve(n)}catch(r){return Promise.reject(r)}var n}function h_(e){if(function(e){const t=typeof e;return null===e||"object"!==t&&"function"!==t}(e))return String(e);if(function(e){const t=Object.getPrototypeOf(e);return!t||t.isPrototypeOf(Object)}(e)||Array.isArray(e))return JSON.stringify(e);if("function"==typeof e.toJSON)return h_(e.toJSON());throw new Error("[unstorage] Cannot stringify value!")}function g_(){if(void 0===typeof f_)throw new TypeError("[unstorage] Buffer is not supported!")}const y_="base64:";function v_(e){return e?e.split("?")[0].replace(/[/\\]/g,":").replace(/:+/g,":").replace(/^:|:$/g,""):""}function b_(...e){return v_(e.join(":"))}function x_(e){return(e=v_(e))?e+":":""}var S_=n(96763);const T_=()=>{const e=new Map;return{name:"memory",options:{},hasItem:t=>e.has(t),getItem:t=>e.get(t)??null,getItemRaw:t=>e.get(t)??null,setItem(t,n){e.set(t,n)},setItemRaw(t,n){e.set(t,n)},removeItem(t){e.delete(t)},getKeys:()=>Array.from(e.keys()),clear(){e.clear()},dispose(){e.clear()}}};function w_(e={}){const t={mounts:{"":e.driver||T_()},mountpoints:[""],watching:!1,watchListeners:[],unwatch:{}},n=e=>{for(const n of t.mountpoints)if(e.startsWith(n))return{base:n,relativeKey:e.slice(n.length),driver:t.mounts[n]};return{base:"",relativeKey:e,driver:t.mounts[""]}},r=(e,n)=>t.mountpoints.filter((t=>t.startsWith(e)||n&&e.startsWith(t))).map((n=>({relativeBase:e.length>n.length?e.slice(n.length):void 0,mountpoint:n,driver:t.mounts[n]}))),i=(e,n)=>{if(t.watching){n=v_(n);for(const r of t.watchListeners)r(e,n)}},o=async()=>{if(t.watching){for(const e in t.unwatch)await t.unwatch[e]();t.unwatch={},t.watching=!1}},s=(e,t,r)=>{const i=new Map,o=e=>{let t=i.get(e.base);return t||(t={driver:e.driver,base:e.base,items:[]},i.set(e.base,t)),t};for(const s of e){const e="string"==typeof s,r=v_(e?s:s.key),i=e?void 0:s.value,a=e||!s.options?t:{...t,...s.options},c=n(r);o(c).items.push({key:r,value:i,relativeKey:c.relativeKey,options:a})}return Promise.all([...i.values()].map((e=>r(e)))).then((e=>e.flat()))},a={hasItem(e,t={}){e=v_(e);const{relativeKey:r,driver:i}=n(e);return m_(i.hasItem,r,t)},getItem(e,t={}){e=v_(e);const{relativeKey:r,driver:i}=n(e);return m_(i.getItem,r,t).then((e=>p_(e)))},getItems:(e,t)=>s(e,t,(e=>e.driver.getItems?m_(e.driver.getItems,e.items.map((e=>({key:e.relativeKey,options:e.options}))),t).then((t=>t.map((t=>({key:b_(e.base,t.key),value:p_(t.value)}))))):Promise.all(e.items.map((t=>m_(e.driver.getItem,t.relativeKey,t.options).then((e=>({key:t.key,value:p_(e)})))))))),getItemRaw(e,t={}){e=v_(e);const{relativeKey:r,driver:i}=n(e);return i.getItemRaw?m_(i.getItemRaw,r,t):m_(i.getItem,r,t).then((e=>function(e){return"string"!=typeof e?e:e.startsWith(y_)?(g_(),f_.from(e.slice(y_.length),"base64")):e}(e)))},async setItem(e,t,r={}){if(void 0===t)return a.removeItem(e);e=v_(e);const{relativeKey:o,driver:s}=n(e);s.setItem&&(await m_(s.setItem,o,h_(t),r),s.watch||i("update",e))},async setItems(e,t){await s(e,t,(async e=>{if(e.driver.setItems)return m_(e.driver.setItems,e.items.map((e=>({key:e.relativeKey,value:h_(e.value),options:e.options}))),t);e.driver.setItem&&await Promise.all(e.items.map((t=>m_(e.driver.setItem,t.relativeKey,h_(t.value),t.options))))}))},async setItemRaw(e,t,r={}){if(void 0===t)return a.removeItem(e,r);e=v_(e);const{relativeKey:o,driver:s}=n(e);if(s.setItemRaw)await m_(s.setItemRaw,o,t,r);else{if(!s.setItem)return;await m_(s.setItem,o,function(e){if("string"==typeof e)return e;g_();const t=f_.from(e).toString("base64");return y_+t}(t),r)}s.watch||i("update",e)},async removeItem(e,t={}){"boolean"==typeof t&&(t={removeMeta:t}),e=v_(e);const{relativeKey:r,driver:o}=n(e);o.removeItem&&(await m_(o.removeItem,r,t),(t.removeMeta||t.removeMata)&&await m_(o.removeItem,r+"$",t),o.watch||i("remove",e))},async getMeta(e,t={}){"boolean"==typeof t&&(t={nativeOnly:t}),e=v_(e);const{relativeKey:r,driver:i}=n(e),o=Object.create(null);if(i.getMeta&&Object.assign(o,await m_(i.getMeta,r,t)),!t.nativeOnly){const e=await m_(i.getItem,r+"$",t).then((e=>p_(e)));e&&"object"==typeof e&&("string"==typeof e.atime&&(e.atime=new Date(e.atime)),"string"==typeof e.mtime&&(e.mtime=new Date(e.mtime)),Object.assign(o,e))}return o},setMeta(e,t,n={}){return this.setItem(e+"$",t,n)},removeMeta(e,t={}){return this.removeItem(e+"$",t)},async getKeys(e,t={}){e=x_(e);const n=r(e,!0);let i=[];const o=[];for(const r of n){const e=(await m_(r.driver.getKeys,r.relativeBase,t)).map((e=>r.mountpoint+v_(e))).filter((e=>!i.some((t=>e.startsWith(t)))));o.push(...e),i=[r.mountpoint,...i.filter((e=>!e.startsWith(r.mountpoint)))]}return e?o.filter((t=>t.startsWith(e)&&!t.endsWith("$"))):o.filter((e=>!e.endsWith("$")))},async clear(e,t={}){e=x_(e),await Promise.all(r(e,!1).map((async e=>{if(e.driver.clear)return m_(e.driver.clear,e.relativeBase,t);if(e.driver.removeItem){const n=await e.driver.getKeys(e.relativeBase||"",t);return Promise.all(n.map((n=>e.driver.removeItem(n,t))))}})))},async dispose(){await Promise.all(Object.values(t.mounts).map((e=>E_(e))))},watch:async e=>(await(async()=>{if(!t.watching){t.watching=!0;for(const e in t.mounts)t.unwatch[e]=await k_(t.mounts[e],i,e)}})(),t.watchListeners.push(e),async()=>{t.watchListeners=t.watchListeners.filter((t=>t!==e)),0===t.watchListeners.length&&await o()}),async unwatch(){t.watchListeners=[],await o()},mount(e,n){if((e=x_(e))&&t.mounts[e])throw new Error(`already mounted at ${e}`);return e&&(t.mountpoints.push(e),t.mountpoints.sort(((e,t)=>t.length-e.length))),t.mounts[e]=n,t.watching&&Promise.resolve(k_(n,i,e)).then((n=>{t.unwatch[e]=n})).catch(S_.error),a},async unmount(e,n=!0){(e=x_(e))&&t.mounts[e]&&(t.watching&&e in t.unwatch&&(t.unwatch[e](),delete t.unwatch[e]),n&&await E_(t.mounts[e]),t.mountpoints=t.mountpoints.filter((t=>t!==e)),delete t.mounts[e])},getMount(e=""){e=v_(e)+":";const t=n(e);return{driver:t.driver,base:t.base}},getMounts(e="",t={}){e=v_(e);return r(e,t.parents).map((e=>({driver:e.driver,base:e.mountpoint})))}};return a}function k_(e,t,n){return e.watch?e.watch(((e,r)=>t(e,n+r))):()=>{}}async function E_(e){"function"==typeof e.dispose&&await m_(e.dispose)}function C_(e){return new Promise(((t,n)=>{e.oncomplete=e.onsuccess=()=>t(e.result),e.onabort=e.onerror=()=>n(e.error)}))}function N_(e,t){const n=indexedDB.open(e);n.onupgradeneeded=()=>n.result.createObjectStore(t);const r=C_(n);return(e,n)=>r.then((r=>n(r.transaction(t,e).objectStore(t))))}let A_;function I_(){return A_||(A_=N_("keyval-store","keyval")),A_}function D_(e,t=I_()){return t("readonly",(t=>C_(t.get(e))))}function P_(e,t){return e.openCursor().onsuccess=function(){this.result&&(t(this.result),this.result.continue())},C_(e.transaction)}const M_=e=>JSON.stringify(e,((e,t)=>"bigint"==typeof t?t.toString()+"n":t)),O_=e=>{const t=e.replace(/([\[:])?(\d{17,}|(?:[9](?:[1-9]07199254740991|0[1-9]7199254740991|00[8-9]199254740991|007[2-9]99254740991|007199[3-9]54740991|0071992[6-9]4740991|00719925[5-9]740991|007199254[8-9]40991|0071992547[5-9]0991|00719925474[1-9]991|00719925474099[2-9])))([,\}\]])/g,'$1"$2n"$3');return JSON.parse(t,((e,t)=>"string"==typeof t&&t.match(/^\d+n$/)?BigInt(t.substring(0,t.length-1)):t))};function F_(e){if("string"!=typeof e)throw new Error("Cannot safe json parse value of type "+typeof e);try{return O_(e)}catch(t){return e}}function R_(e){return"string"==typeof e?e:M_(e)||""}var L_=(e={})=>{const t=e.base&&e.base.length>0?`${e.base}:`:"",n=e=>t+e;let r;return e.dbName&&e.storeName&&(r=N_(e.dbName,e.storeName)),{name:"idb-keyval",options:e,hasItem:async e=>!(typeof await D_(n(e),r)>"u"),getItem:async e=>await D_(n(e),r)??null,setItem:(e,t)=>function(e,t,n=I_()){return n("readwrite",(n=>(n.put(t,e),C_(n.transaction))))}(n(e),t,r),removeItem:e=>function(e,t=I_()){return t("readwrite",(t=>(t.delete(e),C_(t.transaction))))}(n(e),r),getKeys:()=>function(e=I_()){return e("readonly",(e=>{if(e.getAllKeys)return C_(e.getAllKeys());const t=[];return P_(e,(e=>t.push(e.key))).then((()=>t))}))}(r),clear:()=>function(e=I_()){return e("readwrite",(e=>(e.clear(),C_(e.transaction))))}(r)}};class j_{constructor(){this.indexedDb=w_({driver:L_({dbName:"WALLET_CONNECT_V2_INDEXED_DB",storeName:"keyvaluestorage"})})}async getKeys(){return this.indexedDb.getKeys()}async getEntries(){return(await this.indexedDb.getItems(await this.indexedDb.getKeys())).map((e=>[e.key,e.value]))}async getItem(e){const t=await this.indexedDb.getItem(e);if(null!==t)return t}async setItem(e,t){await this.indexedDb.setItem(e,R_(t))}async removeItem(e){await this.indexedDb.removeItem(e)}}var z_=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof n.g<"u"?n.g:typeof self<"u"?self:{},U_={exports:{}};function B_(e){var t;return[e[0],F_(null!=(t=e[1])?t:"")]}!function(){let e;function t(){}e=t,e.prototype.getItem=function(e){return this.hasOwnProperty(e)?String(this[e]):null},e.prototype.setItem=function(e,t){this[e]=String(t)},e.prototype.removeItem=function(e){delete this[e]},e.prototype.clear=function(){const e=this;Object.keys(e).forEach((function(t){e[t]=void 0,delete e[t]}))},e.prototype.key=function(e){return e=e||0,Object.keys(this)[e]},e.prototype.__defineGetter__("length",(function(){return Object.keys(this).length})),typeof z_<"u"&&z_.localStorage?U_.exports=z_.localStorage:typeof window<"u"&&window.localStorage?U_.exports=window.localStorage:U_.exports=new t}();class q_{constructor(){this.localStorage=U_.exports}async getKeys(){return Object.keys(this.localStorage)}async getEntries(){return Object.entries(this.localStorage).map(B_)}async getItem(e){const t=this.localStorage.getItem(e);if(null!==t)return F_(t)}async setItem(e,t){this.localStorage.setItem(e,R_(t))}async removeItem(e){this.localStorage.removeItem(e)}}const V_=async(e,t)=>{t.length&&t.forEach((async t=>{await e.removeItem(t)}))};class K_{constructor(){this.initialized=!1,this.setInitialized=e=>{this.storage=e,this.initialized=!0};const e=new q_;this.storage=e;try{(async(e,t,n)=>{const r="wc_storage_version",i=await t.getItem(r);if(i&&i>=1)return void n(t);const o=await e.getKeys();if(!o.length)return void n(t);const s=[];for(;o.length;){const n=o.shift();if(!n)continue;const r=n.toLowerCase();if(r.includes("wc@")||r.includes("walletconnect")||r.includes("wc_")||r.includes("wallet_connect")){const r=await e.getItem(n);await t.setItem(n,r),s.push(n)}}await t.setItem(r,1),n(t),V_(e,s)})(e,new j_,this.setInitialized)}catch{this.initialized=!0}}async getKeys(){return await this.initialize(),this.storage.getKeys()}async getEntries(){return await this.initialize(),this.storage.getEntries()}async getItem(e){return await this.initialize(),this.storage.getItem(e)}async setItem(e,t){return await this.initialize(),this.storage.setItem(e,t)}async removeItem(e){return await this.initialize(),this.storage.removeItem(e)}async initialize(){this.initialized||await new Promise((e=>{const t=setInterval((()=>{this.initialized&&(clearInterval(t),e())}),20)}))}}var J_=n(86545),W_=n(44874),H_=n.n(W_);n(96763);const G_="info",Q_="custom_context";Symbol.iterator;var Y_=Object.defineProperty,Z_=Object.defineProperties,X_=Object.getOwnPropertyDescriptors,$_=Object.getOwnPropertySymbols,ep=Object.prototype.hasOwnProperty,tp=Object.prototype.propertyIsEnumerable,np=(e,t,n)=>t in e?Y_(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,rp=(e,t)=>{for(var n in t||(t={}))ep.call(t,n)&&np(e,n,t[n]);if($_)for(var n of $_(t))tp.call(t,n)&&np(e,n,t[n]);return e},ip=(e,t)=>Z_(e,X_(t));function op(e){return ip(rp({},e),{level:e?.level||G_})}function sp(e,t=Q_){let n="";return n=typeof e.bindings>"u"?function(e,t=Q_){return e[t]||""}(e,t):e.bindings().context||"",n}function ap(e,t,n=Q_){const r=function(e,t,n=Q_){const r=sp(e,n);return r.trim()?`${r}/${t}`:t}(e,t,n);return function(e,t,n=Q_){return e[n]=t,e}(e.child({context:r}),r,n)}var cp=n(4556);class lp extends cp.H{constructor(e){super(),this.opts=e,this.protocol="wc",this.version=2}}class up extends cp.H{constructor(e,t){super(),this.core=e,this.logger=t,this.records=new Map}}class dp{constructor(e,t){this.logger=e,this.core=t}}class _p extends cp.H{constructor(e,t){super(),this.relayer=e,this.logger=t}}class pp extends cp.H{constructor(e){super()}}class fp{constructor(e,t,n,r){this.core=e,this.logger=t,this.name=n}}class mp extends cp.H{constructor(e,t){super(),this.relayer=e,this.logger=t}}class hp extends cp.H{constructor(e,t){super(),this.core=e,this.logger=t}}class gp{constructor(e,t){this.projectId=e,this.logger=t}}class yp{constructor(e,t){this.projectId=e,this.logger=t}}a_();class vp{constructor(e){this.opts=e,this.protocol="wc",this.version=2}}s_.EventEmitter;class bp{constructor(e){this.client=e}}const xp=".",Sp="base64url",Tp="utf8",wp="utf8",kp=":",Ep="did",Cp="key",Np="base58btc",Ap="z",Ip="K36";function Dp(e){return da(ua(R_(e),Tp),Sp)}function Pp(e){const t=ua(Ip,Np),n=Ap+da(Ro([t,e]),Np);return[Ep,Cp,n].join(kp)}function Mp(e){return da(e,Sp)}function Op(e=(0,w.randomBytes)(32)){return C.K(e)}async function Fp(e,t,n,r,i=(0,Ea.fromMiliseconds)(Date.now())){const o={alg:"EdDSA",typ:"JWT"},s={iss:Pp(r.publicKey),sub:e,aud:t,iat:i,exp:i+n},a=ua([Dp((c={header:o,payload:s}).header),Dp(c.payload)].join(xp),wp);var c;return function(e){return[Dp(e.header),Dp(e.payload),Mp(e.signature)].join(xp)}({header:o,payload:s,signature:C._S(r.secretKey,a)})}n(55665);const Rp="PARSE_ERROR",Lp="INVALID_REQUEST",jp="METHOD_NOT_FOUND",zp="INVALID_PARAMS",Up="INTERNAL_ERROR",Bp="SERVER_ERROR",qp=[-32700,-32600,-32601,-32602,-32603],Vp={[Rp]:{code:-32700,message:"Parse error"},[Lp]:{code:-32600,message:"Invalid Request"},[jp]:{code:-32601,message:"Method not found"},[zp]:{code:-32602,message:"Invalid params"},[Up]:{code:-32603,message:"Internal error"},[Bp]:{code:-32e3,message:"Server error"}},Kp=Bp;function Jp(e){return qp.includes(e)}function Wp(e){return Object.keys(Vp).includes(e)?Vp[e]:Vp[Kp]}function Hp(e){const t=Object.values(Vp).find((t=>t.code===e));return t||Vp[Kp]}var Gp=n(25682);function Qp(e=3){return Date.now()*Math.pow(10,e)+Math.floor(Math.random()*Math.pow(10,e))}function Yp(e=6){return BigInt(Qp(e))}function Zp(e,t,n){return{id:n||Qp(),jsonrpc:"2.0",method:e,params:t}}function Xp(e,t){return{id:e,jsonrpc:"2.0",result:t}}function $p(e,t,n){return{id:e,jsonrpc:"2.0",error:ef(t,n)}}function ef(e,t){return void 0===e?Wp(Up):("string"==typeof e&&(e=Object.assign(Object.assign({},Wp(Bp)),{message:e})),void 0!==t&&(e.data=t),Jp(e.code)&&(e=Hp(e.code)),e)}class tf{}class nf extends tf{constructor(){super()}}class rf extends nf{constructor(e){super()}}function of(e,t){const n=function(e){const t=e.match(new RegExp(/^\w+:/,"gi"));if(t&&t.length)return t[0]}(e);return void 0!==n&&new RegExp(t).test(n)}function sf(e){return of(e,"^wss?:")}function af(e){return"object"==typeof e&&"id"in e&&"jsonrpc"in e&&"2.0"===e.jsonrpc}function cf(e){return af(e)&&"method"in e}function lf(e){return af(e)&&(uf(e)||df(e))}function uf(e){return"result"in e}function df(e){return"error"in e}class _f extends rf{constructor(e){super(e),this.events=new s_.EventEmitter,this.hasRegisteredEventListeners=!1,this.connection=this.setConnection(e),this.connection.connected&&this.registerEventListeners()}async connect(e=this.connection){await this.open(e)}async disconnect(){await this.close()}on(e,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}off(e,t){this.events.off(e,t)}removeListener(e,t){this.events.removeListener(e,t)}async request(e,t){return this.requestStrict(Zp(e.method,e.params||[],e.id||Yp().toString()),t)}async requestStrict(e,t){return new Promise((async(n,r)=>{if(!this.connection.connected)try{await this.open()}catch(i){r(i)}this.events.on(`${e.id}`,(e=>{df(e)?r(e.error):n(e.result)}));try{await this.connection.send(e,t)}catch(i){r(i)}}))}setConnection(e=this.connection){return e}onPayload(e){this.events.emit("payload",e),lf(e)?this.events.emit(`${e.id}`,e):this.events.emit("message",{type:e.method,data:e.params})}onClose(e){e&&3e3===e.code&&this.events.emit("error",new Error(`WebSocket connection closed abnormally with code: ${e.code} ${e.reason?`(${e.reason})`:""}`)),this.events.emit("disconnect")}async open(e=this.connection){this.connection===e&&this.connection.connected||(this.connection.connected&&this.close(),"string"==typeof e&&(await this.connection.open(e),e=this.connection),this.connection=this.setConnection(e),await this.connection.open(),this.registerEventListeners(),this.events.emit("connect"))}async close(){await this.connection.close()}registerEventListeners(){this.hasRegisteredEventListeners||(this.connection.on("payload",(e=>this.onPayload(e))),this.connection.on("close",(e=>this.onClose(e))),this.connection.on("error",(e=>this.events.emit("error",e))),this.connection.on("register_error",(e=>this.onClose())),this.hasRegisteredEventListeners=!0)}}const pf=e=>e.split("?")[0],ff=typeof WebSocket<"u"?WebSocket:typeof n.g<"u"&&typeof n.g.WebSocket<"u"?n.g.WebSocket:typeof window<"u"&&typeof window.WebSocket<"u"?window.WebSocket:typeof self<"u"&&typeof self.WebSocket<"u"?self.WebSocket:n(51591);class mf{constructor(e){if(this.url=e,this.events=new s_.EventEmitter,this.registering=!1,!sf(e))throw new Error(`Provided URL is not compatible with WebSocket connection: ${e}`);this.url=e}get connected(){return typeof this.socket<"u"}get connecting(){return this.registering}on(e,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}off(e,t){this.events.off(e,t)}removeListener(e,t){this.events.removeListener(e,t)}async open(e=this.url){await this.register(e)}async close(){return new Promise(((e,t)=>{typeof this.socket>"u"?t(new Error("Connection already closed")):(this.socket.onclose=t=>{this.onClose(t),e()},this.socket.close())}))}async send(e){typeof this.socket>"u"&&(this.socket=await this.register());try{this.socket.send(R_(e))}catch(t){this.onError(e.id,t)}}register(e=this.url){if(!sf(e))throw new Error(`Provided URL is not compatible with WebSocket connection: ${e}`);if(this.registering){const e=this.events.getMaxListeners();return(this.events.listenerCount("register_error")>=e||this.events.listenerCount("open")>=e)&&this.events.setMaxListeners(e+1),new Promise(((e,t)=>{this.events.once("register_error",(e=>{this.resetMaxListeners(),t(e)})),this.events.once("open",(()=>{if(this.resetMaxListeners(),typeof this.socket>"u")return t(new Error("WebSocket connection is missing or invalid"));e(this.socket)}))}))}return this.url=e,this.registering=!0,new Promise(((t,r)=>{const i=new URLSearchParams(e).get("origin"),o=(0,Gp.isReactNative)()?{headers:{origin:i}}:{rejectUnauthorized:(a=e,!new RegExp("wss?://localhost(:d{2,5})?").test(a))},s=new ff(e,[],o);var a;typeof WebSocket<"u"||typeof n.g<"u"&&typeof n.g.WebSocket<"u"||typeof window<"u"&&typeof window.WebSocket<"u"||typeof self<"u"&&typeof self.WebSocket<"u"?s.onerror=e=>{const t=e;r(this.emitError(t.error))}:s.on("error",(e=>{r(this.emitError(e))})),s.onopen=()=>{this.onOpen(s),t(s)}}))}onOpen(e){e.onmessage=e=>this.onPayload(e),e.onclose=e=>this.onClose(e),this.socket=e,this.registering=!1,this.events.emit("open")}onClose(e){this.socket=void 0,this.registering=!1,this.events.emit("close",e)}onPayload(e){if(typeof e.data>"u")return;const t="string"==typeof e.data?F_(e.data):e.data;this.events.emit("payload",t)}onError(e,t){const n=this.parseError(t),r=$p(e,n.message||n.toString());this.events.emit("payload",r)}parseError(e,t=this.url){return function(e,t,n){return e.message.includes("getaddrinfo ENOTFOUND")||e.message.includes("connect ECONNREFUSED")?new Error(`Unavailable ${n} RPC url at ${t}`):e}(e,pf(t),"WS")}resetMaxListeners(){this.events.getMaxListeners()>10&&this.events.setMaxListeners(10)}emitError(e){const t=this.parseError(new Error(e?.message||`WebSocket connection failed for host: ${pf(this.url)}`));return this.events.emit("register_error",t),t}}var hf=n(8142),gf=n.n(hf),yf=n(50916),vf=n.n(yf),bf=n(65606);var xf=function(e,t){if(e.length>=255)throw new TypeError("Alphabet too long");for(var n=new Uint8Array(256),r=0;r<n.length;r++)n[r]=255;for(var i=0;i<e.length;i++){var o=e.charAt(i),s=o.charCodeAt(0);if(255!==n[s])throw new TypeError(o+" is ambiguous");n[s]=i}var a=e.length,c=e.charAt(0),l=Math.log(a)/Math.log(256),u=Math.log(256)/Math.log(a);function d(e){if("string"!=typeof e)throw new TypeError("Expected String");if(0===e.length)return new Uint8Array;var t=0;if(" "!==e[t]){for(var r=0,i=0;e[t]===c;)r++,t++;for(var o=(e.length-t)*l+1>>>0,s=new Uint8Array(o);e[t];){var u=n[e.charCodeAt(t)];if(255===u)return;for(var d=0,_=o-1;(0!==u||d<i)&&-1!==_;_--,d++)u+=a*s[_]>>>0,s[_]=u%256>>>0,u=u/256>>>0;if(0!==u)throw new Error("Non-zero carry");i=d,t++}if(" "!==e[t]){for(var p=o-i;p!==o&&0===s[p];)p++;for(var f=new Uint8Array(r+(o-p)),m=r;p!==o;)f[m++]=s[p++];return f}}}return{encode:function(t){if(t instanceof Uint8Array||(ArrayBuffer.isView(t)?t=new Uint8Array(t.buffer,t.byteOffset,t.byteLength):Array.isArray(t)&&(t=Uint8Array.from(t))),!(t instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(0===t.length)return"";for(var n=0,r=0,i=0,o=t.length;i!==o&&0===t[i];)i++,n++;for(var s=(o-i)*u+1>>>0,l=new Uint8Array(s);i!==o;){for(var d=t[i],_=0,p=s-1;(0!==d||_<r)&&-1!==p;p--,_++)d+=256*l[p]>>>0,l[p]=d%a>>>0,d=d/a>>>0;if(0!==d)throw new Error("Non-zero carry");r=_,i++}for(var f=s-r;f!==s&&0===l[f];)f++;for(var m=c.repeat(n);f<s;++f)m+=e.charAt(l[f]);return m},decodeUnsafe:d,decode:function(e){var n=d(e);if(n)return n;throw new Error(`Non-${t} character`)}}},Sf=xf;const Tf=e=>{if(e instanceof Uint8Array&&"Uint8Array"===e.constructor.name)return e;if(e instanceof ArrayBuffer)return new Uint8Array(e);if(ArrayBuffer.isView(e))return new Uint8Array(e.buffer,e.byteOffset,e.byteLength);throw new Error("Unknown type, must be binary type")};class wf{constructor(e,t,n){this.name=e,this.prefix=t,this.baseEncode=n}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}}class kf{constructor(e,t,n){if(this.name=e,this.prefix=t,void 0===t.codePointAt(0))throw new Error("Invalid prefix character");this.prefixCodePoint=t.codePointAt(0),this.baseDecode=n}decode(e){if("string"==typeof e){if(e.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(e)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(e.slice(this.prefix.length))}throw Error("Can only multibase decode strings")}or(e){return Cf(this,e)}}class Ef{constructor(e){this.decoders=e}or(e){return Cf(this,e)}decode(e){const t=e[0],n=this.decoders[t];if(n)return n.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}}const Cf=(e,t)=>new Ef({...e.decoders||{[e.prefix]:e},...t.decoders||{[t.prefix]:t}});class Nf{constructor(e,t,n,r){this.name=e,this.prefix=t,this.baseEncode=n,this.baseDecode=r,this.encoder=new wf(e,t,n),this.decoder=new kf(e,t,r)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}}const Af=({name:e,prefix:t,encode:n,decode:r})=>new Nf(e,t,n,r),If=({prefix:e,name:t,alphabet:n})=>{const{encode:r,decode:i}=Sf(n,t);return Af({prefix:e,name:t,encode:r,decode:e=>Tf(i(e))})},Df=({name:e,prefix:t,bitsPerChar:n,alphabet:r})=>Af({prefix:t,name:e,encode:e=>((e,t,n)=>{const r="="===t[t.length-1],i=(1<<n)-1;let o="",s=0,a=0;for(let c=0;c<e.length;++c)for(a=a<<8|e[c],s+=8;s>n;)s-=n,o+=t[i&a>>s];if(s&&(o+=t[i&a<<n-s]),r)for(;o.length*n&7;)o+="=";return o})(e,r,n),decode:t=>((e,t,n,r)=>{const i={};for(let u=0;u<t.length;++u)i[t[u]]=u;let o=e.length;for(;"="===e[o-1];)--o;const s=new Uint8Array(o*n/8|0);let a=0,c=0,l=0;for(let u=0;u<o;++u){const t=i[e[u]];if(void 0===t)throw new SyntaxError(`Non-${r} character`);c=c<<n|t,a+=n,a>=8&&(a-=8,s[l++]=255&c>>a)}if(a>=n||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return s})(t,r,n,e)}),Pf=Af({prefix:"\0",name:"identity",encode:e=>(e=>(new TextDecoder).decode(e))(e),decode:e=>(e=>(new TextEncoder).encode(e))(e)});var Mf=Object.freeze({__proto__:null,identity:Pf});const Of=Df({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Ff=Object.freeze({__proto__:null,base2:Of});const Rf=Df({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var Lf=Object.freeze({__proto__:null,base8:Rf});const jf=If({prefix:"9",name:"base10",alphabet:"0123456789"});var zf=Object.freeze({__proto__:null,base10:jf});const Uf=Df({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),Bf=Df({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var qf=Object.freeze({__proto__:null,base16:Uf,base16upper:Bf});const Vf=Df({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),Kf=Df({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),Jf=Df({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),Wf=Df({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),Hf=Df({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),Gf=Df({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),Qf=Df({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),Yf=Df({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),Zf=Df({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Xf=Object.freeze({__proto__:null,base32:Vf,base32upper:Kf,base32pad:Jf,base32padupper:Wf,base32hex:Hf,base32hexupper:Gf,base32hexpad:Qf,base32hexpadupper:Yf,base32z:Zf});const $f=If({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),em=If({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var tm=Object.freeze({__proto__:null,base36:$f,base36upper:em});const nm=If({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),rm=If({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var im=Object.freeze({__proto__:null,base58btc:nm,base58flickr:rm});const om=Df({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),sm=Df({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),am=Df({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),cm=Df({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var lm=Object.freeze({__proto__:null,base64:om,base64pad:sm,base64url:am,base64urlpad:cm});const um=Array.from("\ud83d\ude80\ud83e\ude90\u2604\ud83d\udef0\ud83c\udf0c\ud83c\udf11\ud83c\udf12\ud83c\udf13\ud83c\udf14\ud83c\udf15\ud83c\udf16\ud83c\udf17\ud83c\udf18\ud83c\udf0d\ud83c\udf0f\ud83c\udf0e\ud83d\udc09\u2600\ud83d\udcbb\ud83d\udda5\ud83d\udcbe\ud83d\udcbf\ud83d\ude02\u2764\ud83d\ude0d\ud83e\udd23\ud83d\ude0a\ud83d\ude4f\ud83d\udc95\ud83d\ude2d\ud83d\ude18\ud83d\udc4d\ud83d\ude05\ud83d\udc4f\ud83d\ude01\ud83d\udd25\ud83e\udd70\ud83d\udc94\ud83d\udc96\ud83d\udc99\ud83d\ude22\ud83e\udd14\ud83d\ude06\ud83d\ude44\ud83d\udcaa\ud83d\ude09\u263a\ud83d\udc4c\ud83e\udd17\ud83d\udc9c\ud83d\ude14\ud83d\ude0e\ud83d\ude07\ud83c\udf39\ud83e\udd26\ud83c\udf89\ud83d\udc9e\u270c\u2728\ud83e\udd37\ud83d\ude31\ud83d\ude0c\ud83c\udf38\ud83d\ude4c\ud83d\ude0b\ud83d\udc97\ud83d\udc9a\ud83d\ude0f\ud83d\udc9b\ud83d\ude42\ud83d\udc93\ud83e\udd29\ud83d\ude04\ud83d\ude00\ud83d\udda4\ud83d\ude03\ud83d\udcaf\ud83d\ude48\ud83d\udc47\ud83c\udfb6\ud83d\ude12\ud83e\udd2d\u2763\ud83d\ude1c\ud83d\udc8b\ud83d\udc40\ud83d\ude2a\ud83d\ude11\ud83d\udca5\ud83d\ude4b\ud83d\ude1e\ud83d\ude29\ud83d\ude21\ud83e\udd2a\ud83d\udc4a\ud83e\udd73\ud83d\ude25\ud83e\udd24\ud83d\udc49\ud83d\udc83\ud83d\ude33\u270b\ud83d\ude1a\ud83d\ude1d\ud83d\ude34\ud83c\udf1f\ud83d\ude2c\ud83d\ude43\ud83c\udf40\ud83c\udf37\ud83d\ude3b\ud83d\ude13\u2b50\u2705\ud83e\udd7a\ud83c\udf08\ud83d\ude08\ud83e\udd18\ud83d\udca6\u2714\ud83d\ude23\ud83c\udfc3\ud83d\udc90\u2639\ud83c\udf8a\ud83d\udc98\ud83d\ude20\u261d\ud83d\ude15\ud83c\udf3a\ud83c\udf82\ud83c\udf3b\ud83d\ude10\ud83d\udd95\ud83d\udc9d\ud83d\ude4a\ud83d\ude39\ud83d\udde3\ud83d\udcab\ud83d\udc80\ud83d\udc51\ud83c\udfb5\ud83e\udd1e\ud83d\ude1b\ud83d\udd34\ud83d\ude24\ud83c\udf3c\ud83d\ude2b\u26bd\ud83e\udd19\u2615\ud83c\udfc6\ud83e\udd2b\ud83d\udc48\ud83d\ude2e\ud83d\ude46\ud83c\udf7b\ud83c\udf43\ud83d\udc36\ud83d\udc81\ud83d\ude32\ud83c\udf3f\ud83e\udde1\ud83c\udf81\u26a1\ud83c\udf1e\ud83c\udf88\u274c\u270a\ud83d\udc4b\ud83d\ude30\ud83e\udd28\ud83d\ude36\ud83e\udd1d\ud83d\udeb6\ud83d\udcb0\ud83c\udf53\ud83d\udca2\ud83e\udd1f\ud83d\ude41\ud83d\udea8\ud83d\udca8\ud83e\udd2c\u2708\ud83c\udf80\ud83c\udf7a\ud83e\udd13\ud83d\ude19\ud83d\udc9f\ud83c\udf31\ud83d\ude16\ud83d\udc76\ud83e\udd74\u25b6\u27a1\u2753\ud83d\udc8e\ud83d\udcb8\u2b07\ud83d\ude28\ud83c\udf1a\ud83e\udd8b\ud83d\ude37\ud83d\udd7a\u26a0\ud83d\ude45\ud83d\ude1f\ud83d\ude35\ud83d\udc4e\ud83e\udd32\ud83e\udd20\ud83e\udd27\ud83d\udccc\ud83d\udd35\ud83d\udc85\ud83e\uddd0\ud83d\udc3e\ud83c\udf52\ud83d\ude17\ud83e\udd11\ud83c\udf0a\ud83e\udd2f\ud83d\udc37\u260e\ud83d\udca7\ud83d\ude2f\ud83d\udc86\ud83d\udc46\ud83c\udfa4\ud83d\ude47\ud83c\udf51\u2744\ud83c\udf34\ud83d\udca3\ud83d\udc38\ud83d\udc8c\ud83d\udccd\ud83e\udd40\ud83e\udd22\ud83d\udc45\ud83d\udca1\ud83d\udca9\ud83d\udc50\ud83d\udcf8\ud83d\udc7b\ud83e\udd10\ud83e\udd2e\ud83c\udfbc\ud83e\udd75\ud83d\udea9\ud83c\udf4e\ud83c\udf4a\ud83d\udc7c\ud83d\udc8d\ud83d\udce3\ud83e\udd42"),dm=um.reduce(((e,t,n)=>(e[n]=t,e)),[]),_m=um.reduce(((e,t,n)=>(e[t.codePointAt(0)]=n,e)),[]);const pm=Af({prefix:"\ud83d\ude80",name:"base256emoji",encode:function(e){return e.reduce(((e,t)=>e+=dm[t]),"")},decode:function(e){const t=[];for(const n of e){const e=_m[n.codePointAt(0)];if(void 0===e)throw new Error(`Non-base256emoji character: ${n}`);t.push(e)}return new Uint8Array(t)}});var fm=Object.freeze({__proto__:null,base256emoji:pm}),mm=function e(t,n,r){n=n||[];for(var i=r=r||0;t>=ym;)n[r++]=255&t|hm,t/=128;for(;t&gm;)n[r++]=255&t|hm,t>>>=7;return n[r]=0|t,e.bytes=r-i+1,n},hm=128,gm=-128,ym=Math.pow(2,31);var vm=function e(t,n){var r,i=0,o=(n=n||0,0),s=n,a=t.length;do{if(s>=a)throw e.bytes=0,new RangeError("Could not decode varint");r=t[s++],i+=o<28?(r&xm)<<o:(r&xm)*Math.pow(2,o),o+=7}while(r>=bm);return e.bytes=s-n,i},bm=128,xm=127;var Sm=Math.pow(2,7),Tm=Math.pow(2,14),wm=Math.pow(2,21),km=Math.pow(2,28),Em=Math.pow(2,35),Cm=Math.pow(2,42),Nm=Math.pow(2,49),Am=Math.pow(2,56),Im=Math.pow(2,63),Dm={encode:mm,decode:vm,encodingLength:function(e){return e<Sm?1:e<Tm?2:e<wm?3:e<km?4:e<Em?5:e<Cm?6:e<Nm?7:e<Am?8:e<Im?9:10}},Pm=Dm;const Mm=(e,t,n=0)=>(Pm.encode(e,t,n),t),Om=e=>Pm.encodingLength(e),Fm=(e,t)=>{const n=t.byteLength,r=Om(e),i=r+Om(n),o=new Uint8Array(i+n);return Mm(e,o,0),Mm(n,o,r),o.set(t,i),new Rm(e,n,t,o)};class Rm{constructor(e,t,n,r){this.code=e,this.size=t,this.digest=n,this.bytes=r}}const Lm=({name:e,code:t,encode:n})=>new jm(e,t,n);class jm{constructor(e,t,n){this.name=e,this.code=t,this.encode=n}digest(e){if(e instanceof Uint8Array){const t=this.encode(e);return t instanceof Uint8Array?Fm(this.code,t):t.then((e=>Fm(this.code,e)))}throw Error("Unknown type, must be binary type")}}const zm=e=>async t=>new Uint8Array(await crypto.subtle.digest(e,t)),Um=Lm({name:"sha2-256",code:18,encode:zm("SHA-256")}),Bm=Lm({name:"sha2-512",code:19,encode:zm("SHA-512")});Object.freeze({__proto__:null,sha256:Um,sha512:Bm});const qm=Tf,Vm={code:0,name:"identity",encode:qm,digest:e=>Fm(0,qm(e))};Object.freeze({__proto__:null,identity:Vm});new TextEncoder,new TextDecoder;const Km={...Mf,...Ff,...Lf,...zf,...qf,...Xf,...tm,...im,...lm,...fm};function Jm(e){return null!=globalThis.Buffer?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function Wm(e,t,n,r){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:n},decoder:{decode:r}}}const Hm=Wm("utf8","u",(e=>"u"+new TextDecoder("utf8").decode(e)),(e=>(new TextEncoder).encode(e.substring(1)))),Gm=Wm("ascii","a",(e=>{let t="a";for(let n=0;n<e.length;n++)t+=String.fromCharCode(e[n]);return t}),(e=>{const t=function(e=0){return null!=globalThis.Buffer&&null!=globalThis.Buffer.allocUnsafe?Jm(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}((e=e.substring(1)).length);for(let n=0;n<e.length;n++)t[n]=e.charCodeAt(n);return t})),Qm={utf8:Hm,"utf-8":Hm,hex:Km.base16,latin1:Gm,ascii:Gm,binary:Gm,...Km};const Ym="core",Zm=`wc@2:${Ym}:`,Xm="error",$m={database:":memory:"},eh="client_ed25519_seed",th=Ea.ONE_DAY,nh=Ea.SIX_HOURS,rh="wss://relay.walletconnect.com",ih="wss://relay.walletconnect.org",oh="relayer_message",sh="relayer_message_ack",ah="relayer_connect",ch="relayer_disconnect",lh="relayer_error",uh="relayer_connection_stalled",dh="relayer_publish",_h="payload",ph="connect",fh="disconnect",mh="error",hh=Ea.ONE_SECOND,gh="subscription_created",yh="subscription_deleted",vh="subscription_sync",bh="subscription_resubscribed",xh=1e3*Ea.FIVE_SECONDS,Sh={wc_pairingDelete:{req:{ttl:Ea.ONE_DAY,prompt:!1,tag:1e3},res:{ttl:Ea.ONE_DAY,prompt:!1,tag:1001}},wc_pairingPing:{req:{ttl:Ea.THIRTY_SECONDS,prompt:!1,tag:1002},res:{ttl:Ea.THIRTY_SECONDS,prompt:!1,tag:1003}},unregistered_method:{req:{ttl:Ea.ONE_DAY,prompt:!1,tag:0},res:{ttl:Ea.ONE_DAY,prompt:!1,tag:0}}},Th="pairing_create",wh="pairing_expire",kh="pairing_delete",Eh="pairing_ping",Ch="history_created",Nh="history_updated",Ah="history_deleted",Ih="history_sync",Dh="expirer_created",Ph="expirer_deleted",Mh="expirer_expired",Oh="expirer_sync",Fh="verify-api",Rh="https://verify.walletconnect.com",Lh="https://verify.walletconnect.org",jh=[Rh,Lh];class zh{constructor(e,t){this.core=e,this.logger=t,this.keychain=new Map,this.name="keychain",this.version="0.3",this.initialized=!1,this.storagePrefix=Zm,this.init=async()=>{if(!this.initialized){const e=await this.getKeyChain();typeof e<"u"&&(this.keychain=e),this.initialized=!0}},this.has=e=>(this.isInitialized(),this.keychain.has(e)),this.set=async(e,t)=>{this.isInitialized(),this.keychain.set(e,t),await this.persist()},this.get=e=>{this.isInitialized();const t=this.keychain.get(e);if(typeof t>"u"){const{message:t}=jc("NO_MATCHING_KEY",`${this.name}: ${e}`);throw new Error(t)}return t},this.del=async e=>{this.isInitialized(),this.keychain.delete(e),await this.persist()},this.core=e,this.logger=ap(t,this.name)}get context(){return sp(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+"//"+this.name}async setKeyChain(e){await this.core.storage.setItem(this.storageKey,pc(e))}async getKeyChain(){const e=await this.core.storage.getItem(this.storageKey);return typeof e<"u"?fc(e):void 0}async persist(){await this.setKeyChain(this.keychain)}isInitialized(){if(!this.initialized){const{message:e}=jc("NOT_INITIALIZED",this.name);throw new Error(e)}}}class Uh{constructor(e,t,n){this.core=e,this.logger=t,this.name="crypto",this.initialized=!1,this.init=async()=>{this.initialized||(await this.keychain.init(),this.initialized=!0)},this.hasKeys=e=>(this.isInitialized(),this.keychain.has(e)),this.getClientId=async()=>{this.isInitialized();return Pp(Op(await this.getClientSeed()).publicKey)},this.generateKeyPair=()=>{this.isInitialized();const e=function(){const e=Mo.generateKeyPair();return{privateKey:da(e.secretKey,Fa),publicKey:da(e.publicKey,Fa)}}();return this.setPrivateKey(e.publicKey,e.privateKey)},this.signJWT=async e=>{this.isInitialized();const t=Op(await this.getClientSeed()),n=Ka(),r=th;return await Fp(n,e,r,t)},this.generateSharedKey=(e,t,n)=>{this.isInitialized();const r=function(e,t){const n=Mo.sharedKey(ua(e,Fa),ua(t,Fa),!0);return da(new Do.i(Po.aD,n).expand(Va),Fa)}(this.getPrivateKey(e),t);return this.setSymKey(r,n)},this.setSymKey=async(e,t)=>{this.isInitialized();const n=t||function(e){return da((0,Po.tW)(ua(e,Fa)),Fa)}(e);return await this.keychain.set(n,e),n},this.deleteKeyPair=async e=>{this.isInitialized(),await this.keychain.del(e)},this.deleteSymKey=async e=>{this.isInitialized(),await this.keychain.del(e)},this.encode=async(e,t,n)=>{this.isInitialized();const r=Qa(n),i=R_(t);if(Ya(r)){const t=r.senderPublicKey,n=r.receiverPublicKey;e=await this.generateSharedKey(t,n)}const o=this.getSymKey(e),{type:s,senderPublicKey:a}=r;return Ha({type:s,symKey:o,message:i,senderPublicKey:a})},this.decode=async(e,t,n)=>{this.isInitialized();const r=function(e,t){const n=Ga(e);return Qa({type:Wa(n.type),senderPublicKey:typeof n.senderPublicKey<"u"?da(n.senderPublicKey,Fa):void 0,receiverPublicKey:t?.receiverPublicKey})}(t,n);if(Ya(r)){const t=r.receiverPublicKey,n=r.senderPublicKey;e=await this.generateSharedKey(t,n)}try{const n=function(e){const t=new Io.g6(ua(e.symKey,Fa)),{sealed:n,iv:r}=Ga(e.encoded),i=t.open(r,n);if(null===i)throw new Error("Failed to decrypt");return da(i,La)}({symKey:this.getSymKey(e),encoded:t});return F_(n)}catch(i){this.logger.error(`Failed to decode message from topic: '${e}', clientId: '${await this.getClientId()}'`),this.logger.error(i)}},this.getPayloadType=e=>Wa(Ga(e).type),this.getPayloadSenderPublicKey=e=>{const t=Ga(e);return t.senderPublicKey?da(t.senderPublicKey,Fa):void 0},this.core=e,this.logger=ap(t,this.name),this.keychain=n||new zh(this.core,this.logger)}get context(){return sp(this.logger)}async setPrivateKey(e,t){return await this.keychain.set(e,t),e}getPrivateKey(e){return this.keychain.get(e)}async getClientSeed(){let e="";try{e=this.keychain.get(eh)}catch{e=Ka(),await this.keychain.set(eh,e)}return function(e,t="utf8"){const n=Qm[t];if(!n)throw new Error(`Unsupported encoding "${t}"`);return"utf8"!==t&&"utf-8"!==t||null==globalThis.Buffer||null==globalThis.Buffer.from?n.decoder.decode(`${n.prefix}${e}`):Jm(globalThis.Buffer.from(e,"utf-8"))}(e,"base16")}getSymKey(e){return this.keychain.get(e)}isInitialized(){if(!this.initialized){const{message:e}=jc("NOT_INITIALIZED",this.name);throw new Error(e)}}}class Bh extends dp{constructor(e,t){super(e,t),this.logger=e,this.core=t,this.messages=new Map,this.name="messages",this.version="0.3",this.initialized=!1,this.storagePrefix=Zm,this.init=async()=>{if(!this.initialized){this.logger.trace("Initialized");try{const e=await this.getRelayerMessages();typeof e<"u"&&(this.messages=e),this.logger.debug(`Successfully Restored records for ${this.name}`),this.logger.trace({type:"method",method:"restore",size:this.messages.size})}catch(rp){this.logger.debug(`Failed to Restore records for ${this.name}`),this.logger.error(rp)}finally{this.initialized=!0}}},this.set=async(e,t)=>{this.isInitialized();const n=Ja(t);let r=this.messages.get(e);return typeof r>"u"&&(r={}),typeof r[n]<"u"||(r[n]=t,this.messages.set(e,r),await this.persist()),n},this.get=e=>{this.isInitialized();let t=this.messages.get(e);return typeof t>"u"&&(t={}),t},this.has=(e,t)=>{this.isInitialized();return typeof this.get(e)[Ja(t)]<"u"},this.del=async e=>{this.isInitialized(),this.messages.delete(e),await this.persist()},this.logger=ap(e,this.name),this.core=t}get context(){return sp(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+"//"+this.name}async setRelayerMessages(e){await this.core.storage.setItem(this.storageKey,pc(e))}async getRelayerMessages(){const e=await this.core.storage.getItem(this.storageKey);return typeof e<"u"?fc(e):void 0}async persist(){await this.setRelayerMessages(this.messages)}isInitialized(){if(!this.initialized){const{message:e}=jc("NOT_INITIALIZED",this.name);throw new Error(e)}}}class qh extends _p{constructor(e,t){super(e,t),this.relayer=e,this.logger=t,this.events=new s_.EventEmitter,this.name="publisher",this.queue=new Map,this.publishTimeout=(0,Ea.toMiliseconds)(2*Ea.TEN_SECONDS),this.needsTransportRestart=!1,this.publish=async(e,t,n)=>{var r;this.logger.debug("Publishing Payload"),this.logger.trace({type:"method",method:"publish",params:{topic:e,message:t,opts:n}});try{const o=n?.ttl||nh,s=Sc(n),a=n?.prompt||!1,c=n?.tag||0,l=n?.id||Yp().toString(),u={topic:e,message:t,opts:{ttl:o,relay:s,prompt:a,tag:c,id:l}},d=setTimeout((()=>this.queue.set(l,u)),this.publishTimeout);try{await await hc(this.rpcPublish(e,t,o,s,a,c,l),this.publishTimeout,`Failed to publish payload, please try again. id:${l} tag:${c}`),this.removeRequestFromQueue(l),this.relayer.events.emit(dh,u)}catch(i){if(this.logger.debug("Publishing Payload stalled"),this.needsTransportRestart=!0,null!=(r=n?.internal)&&r.throwOnFailedPublish)throw this.removeRequestFromQueue(l),i;return}finally{clearTimeout(d)}this.logger.debug("Successfully Published Payload"),this.logger.trace({type:"method",method:"publish",params:{topic:e,message:t,opts:n}})}catch(o){throw this.logger.debug("Failed to Publish Payload"),this.logger.error(o),o}},this.on=(e,t)=>{this.events.on(e,t)},this.once=(e,t)=>{this.events.once(e,t)},this.off=(e,t)=>{this.events.off(e,t)},this.removeListener=(e,t)=>{this.events.removeListener(e,t)},this.relayer=e,this.logger=ap(t,this.name),this.registerEventListeners()}get context(){return sp(this.logger)}rpcPublish(e,t,n,r,i,o,s){var a,c,l,u;const d={method:Tc(r.protocol).publish,params:{topic:e,message:t,ttl:n,prompt:i,tag:o},id:s};return qc(null==(a=d.params)?void 0:a.prompt)&&(null==(c=d.params)||delete c.prompt),qc(null==(l=d.params)?void 0:l.tag)&&(null==(u=d.params)||delete u.tag),this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"message",direction:"outgoing",request:d}),this.relayer.request(d)}removeRequestFromQueue(e){this.queue.delete(e)}checkQueue(){this.queue.forEach((async e=>{const{topic:t,message:n,opts:r}=e;await this.publish(t,n,r)}))}registerEventListeners(){this.relayer.core.heartbeat.on(J_.HEARTBEAT_EVENTS.pulse,(()=>{if(this.needsTransportRestart)return this.needsTransportRestart=!1,void this.relayer.events.emit(uh);this.checkQueue()})),this.relayer.on(sh,(e=>{this.removeRequestFromQueue(e.id.toString())}))}}class Vh{constructor(){this.map=new Map,this.set=(e,t)=>{const n=this.get(e);this.exists(e,t)||this.map.set(e,[...n,t])},this.get=e=>this.map.get(e)||[],this.exists=(e,t)=>this.get(e).includes(t),this.delete=(e,t)=>{if(typeof t>"u")return void this.map.delete(e);if(!this.map.has(e))return;const n=this.get(e);if(!this.exists(e,t))return;const r=n.filter((e=>e!==t));r.length?this.map.set(e,r):this.map.delete(e)},this.clear=()=>{this.map.clear()}}get topics(){return Array.from(this.map.keys())}}var Kh=Object.defineProperty,Jh=Object.defineProperties,Wh=Object.getOwnPropertyDescriptors,Hh=Object.getOwnPropertySymbols,Gh=Object.prototype.hasOwnProperty,Qh=Object.prototype.propertyIsEnumerable,Yh=(e,t,n)=>t in e?Kh(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Zh=(e,t)=>{for(var n in t||(t={}))Gh.call(t,n)&&Yh(e,n,t[n]);if(Hh)for(var n of Hh(t))Qh.call(t,n)&&Yh(e,n,t[n]);return e},Xh=(e,t)=>Jh(e,Wh(t));class $h extends mp{constructor(e,t){super(e,t),this.relayer=e,this.logger=t,this.subscriptions=new Map,this.topicMap=new Vh,this.events=new s_.EventEmitter,this.name="subscription",this.version="0.3",this.pending=new Map,this.cached=[],this.initialized=!1,this.pendingSubscriptionWatchLabel="pending_sub_watch_label",this.pollingInterval=20,this.storagePrefix=Zm,this.subscribeTimeout=1e4,this.restartInProgress=!1,this.batchSubscribeTopicsLimit=500,this.init=async()=>{this.initialized||(this.logger.trace("Initialized"),this.registerEventListeners(),this.clientId=await this.relayer.core.crypto.getClientId())},this.subscribe=async(e,t)=>{await this.restartToComplete(),this.isInitialized(),this.logger.debug("Subscribing Topic"),this.logger.trace({type:"method",method:"subscribe",params:{topic:e,opts:t}});try{const n=Sc(t),r={topic:e,relay:n};this.pending.set(e,r);const i=await this.rpcSubscribe(e,n);return this.onSubscribe(i,r),this.logger.debug("Successfully Subscribed Topic"),this.logger.trace({type:"method",method:"subscribe",params:{topic:e,opts:t}}),i}catch(n){throw this.logger.debug("Failed to Subscribe Topic"),this.logger.error(n),n}},this.unsubscribe=async(e,t)=>{await this.restartToComplete(),this.isInitialized(),typeof t?.id<"u"?await this.unsubscribeById(e,t.id,t):await this.unsubscribeByTopic(e,t)},this.isSubscribed=async e=>{if(this.topics.includes(e))return!0;const t=`${this.pendingSubscriptionWatchLabel}_${e}`;return await new Promise(((n,r)=>{const i=new Ea.Watch;i.start(t);const o=setInterval((()=>{!this.pending.has(e)&&this.topics.includes(e)&&(clearInterval(o),i.stop(t),n(!0)),i.elapsed(t)>=xh&&(clearInterval(o),i.stop(t),r(new Error("Subscription resolution timeout")))}),this.pollingInterval)})).catch((()=>!1))},this.on=(e,t)=>{this.events.on(e,t)},this.once=(e,t)=>{this.events.once(e,t)},this.off=(e,t)=>{this.events.off(e,t)},this.removeListener=(e,t)=>{this.events.removeListener(e,t)},this.restart=async()=>{this.restartInProgress=!0,await this.restore(),await this.reset(),this.restartInProgress=!1},this.relayer=e,this.logger=ap(t,this.name),this.clientId=""}get context(){return sp(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.relayer.core.customStoragePrefix+"//"+this.name}get length(){return this.subscriptions.size}get ids(){return Array.from(this.subscriptions.keys())}get values(){return Array.from(this.subscriptions.values())}get topics(){return this.topicMap.topics}hasSubscription(e,t){let n=!1;try{n=this.getSubscription(e).topic===t}catch{}return n}onEnable(){this.cached=[],this.initialized=!0}onDisable(){this.cached=this.values,this.subscriptions.clear(),this.topicMap.clear()}async unsubscribeByTopic(e,t){const n=this.topicMap.get(e);await Promise.all(n.map((async n=>await this.unsubscribeById(e,n,t))))}async unsubscribeById(e,t,n){this.logger.debug("Unsubscribing Topic"),this.logger.trace({type:"method",method:"unsubscribe",params:{topic:e,id:t,opts:n}});try{const r=Sc(n);await this.rpcUnsubscribe(e,t,r);const i=zc("USER_DISCONNECTED",`${this.name}, ${e}`);await this.onUnsubscribe(e,t,i),this.logger.debug("Successfully Unsubscribed Topic"),this.logger.trace({type:"method",method:"unsubscribe",params:{topic:e,id:t,opts:n}})}catch(r){throw this.logger.debug("Failed to Unsubscribe Topic"),this.logger.error(r),r}}async rpcSubscribe(e,t){const n={method:Tc(t.protocol).subscribe,params:{topic:e}};this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"payload",direction:"outgoing",request:n});try{await await hc(this.relayer.request(n),this.subscribeTimeout)}catch{this.logger.debug("Outgoing Relay Subscribe Payload stalled"),this.relayer.events.emit(uh)}return Ja(e+this.clientId)}async rpcBatchSubscribe(e){if(!e.length)return;const t={method:Tc(e[0].relay.protocol).batchSubscribe,params:{topics:e.map((e=>e.topic))}};this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"payload",direction:"outgoing",request:t});try{return await await hc(this.relayer.request(t),this.subscribeTimeout)}catch{this.logger.debug("Outgoing Relay Payload stalled"),this.relayer.events.emit(uh)}}rpcUnsubscribe(e,t,n){const r={method:Tc(n.protocol).unsubscribe,params:{topic:e,id:t}};return this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"payload",direction:"outgoing",request:r}),this.relayer.request(r)}onSubscribe(e,t){this.setSubscription(e,Xh(Zh({},t),{id:e})),this.pending.delete(t.topic)}onBatchSubscribe(e){e.length&&e.forEach((e=>{this.setSubscription(e.id,Zh({},e)),this.pending.delete(e.topic)}))}async onUnsubscribe(e,t,n){this.events.removeAllListeners(t),this.hasSubscription(t,e)&&this.deleteSubscription(t,n),await this.relayer.messages.del(e)}async setRelayerSubscriptions(e){await this.relayer.core.storage.setItem(this.storageKey,e)}async getRelayerSubscriptions(){return await this.relayer.core.storage.getItem(this.storageKey)}setSubscription(e,t){this.subscriptions.has(e)||(this.logger.debug("Setting subscription"),this.logger.trace({type:"method",method:"setSubscription",id:e,subscription:t}),this.addSubscription(e,t))}addSubscription(e,t){this.subscriptions.set(e,Zh({},t)),this.topicMap.set(t.topic,e),this.events.emit(gh,t)}getSubscription(e){this.logger.debug("Getting subscription"),this.logger.trace({type:"method",method:"getSubscription",id:e});const t=this.subscriptions.get(e);if(!t){const{message:t}=jc("NO_MATCHING_KEY",`${this.name}: ${e}`);throw new Error(t)}return t}deleteSubscription(e,t){this.logger.debug("Deleting subscription"),this.logger.trace({type:"method",method:"deleteSubscription",id:e,reason:t});const n=this.getSubscription(e);this.subscriptions.delete(e),this.topicMap.delete(n.topic,e),this.events.emit(yh,Xh(Zh({},n),{reason:t}))}async persist(){await this.setRelayerSubscriptions(this.values),this.events.emit(vh)}async reset(){if(this.cached.length){const e=Math.ceil(this.cached.length/this.batchSubscribeTopicsLimit);for(let t=0;t<e;t++){const e=this.cached.splice(0,this.batchSubscribeTopicsLimit);await this.batchSubscribe(e)}}this.events.emit(bh)}async restore(){try{const e=await this.getRelayerSubscriptions();if(typeof e>"u"||!e.length)return;if(this.subscriptions.size){const{message:e}=jc("RESTORE_WILL_OVERRIDE",this.name);throw this.logger.error(e),this.logger.error(`${this.name}: ${JSON.stringify(this.values)}`),new Error(e)}this.cached=e,this.logger.debug(`Successfully Restored subscriptions for ${this.name}`),this.logger.trace({type:"method",method:"restore",subscriptions:this.values})}catch(e){this.logger.debug(`Failed to Restore subscriptions for ${this.name}`),this.logger.error(e)}}async batchSubscribe(e){if(!e.length)return;const t=await this.rpcBatchSubscribe(e);Uc(t)&&this.onBatchSubscribe(t.map(((t,n)=>Xh(Zh({},e[n]),{id:t}))))}async onConnect(){this.restartInProgress||(await this.restart(),this.onEnable())}onDisconnect(){this.onDisable()}async checkPending(){if(!this.initialized||this.relayer.transportExplicitlyClosed)return;const e=[];this.pending.forEach((t=>{e.push(t)})),await this.batchSubscribe(e)}registerEventListeners(){this.relayer.core.heartbeat.on(J_.HEARTBEAT_EVENTS.pulse,(async()=>{await this.checkPending()})),this.relayer.on(ah,(async()=>{await this.onConnect()})),this.relayer.on(ch,(()=>{this.onDisconnect()})),this.events.on(gh,(async e=>{const t=gh;this.logger.info(`Emitting ${t}`),this.logger.debug({type:"event",event:t,data:e}),await this.persist()})),this.events.on(yh,(async e=>{const t=yh;this.logger.info(`Emitting ${t}`),this.logger.debug({type:"event",event:t,data:e}),await this.persist()}))}isInitialized(){if(!this.initialized){const{message:e}=jc("NOT_INITIALIZED",this.name);throw new Error(e)}}async restartToComplete(){this.restartInProgress&&await new Promise((e=>{const t=setInterval((()=>{this.restartInProgress||(clearInterval(t),e())}),this.pollingInterval)}))}}var eg=Object.defineProperty,tg=Object.getOwnPropertySymbols,ng=Object.prototype.hasOwnProperty,rg=Object.prototype.propertyIsEnumerable,ig=(e,t,n)=>t in e?eg(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;class og extends pp{constructor(e){super(e),this.protocol="wc",this.version=2,this.events=new s_.EventEmitter,this.name="relayer",this.transportExplicitlyClosed=!1,this.initialized=!1,this.connectionAttemptInProgress=!1,this.connectionStatusPollingInterval=20,this.staleConnectionErrors=["socket hang up","socket stalled"],this.hasExperiencedNetworkDisruption=!1,this.requestsInFlight=new Map,this.request=async e=>{this.logger.debug("Publishing Request Payload");const t=e.id;try{await this.toEstablishConnection();const n=this.provider.request(e);return this.requestsInFlight.set(t,{promise:n,request:e}),await n}catch(n){throw this.logger.debug("Failed to Publish Request"),this.logger.error(n),n}finally{this.requestsInFlight.delete(t)}},this.onPayloadHandler=e=>{this.onProviderPayload(e)},this.onConnectHandler=()=>{this.events.emit(ah)},this.onDisconnectHandler=()=>{this.onProviderDisconnect()},this.onProviderErrorHandler=e=>{this.logger.error(e),this.events.emit(lh,e),this.logger.info("Fatal socket error received, closing transport"),this.transportClose()},this.registerProviderListeners=()=>{this.provider.on(_h,this.onPayloadHandler),this.provider.on(ph,this.onConnectHandler),this.provider.on(fh,this.onDisconnectHandler),this.provider.on(mh,this.onProviderErrorHandler)},this.core=e.core,this.logger=typeof e.logger<"u"&&"string"!=typeof e.logger?ap(e.logger,this.name):H_()(op({level:e.logger||"error"})),this.messages=new Bh(this.logger,e.core),this.subscriber=new $h(this,this.logger),this.publisher=new qh(this,this.logger),this.relayUrl=e?.relayUrl||rh,this.projectId=e.projectId,this.bundleId=function(){var e;try{return ac()&&typeof n.g<"u"&&typeof(null==n.g?void 0:n.g.Application)<"u"?null==(e=n.g.Application)?void 0:e.applicationId:void 0}catch{return}}(),this.provider={}}async init(){this.logger.trace("Initialized"),this.registerEventListeners(),await this.createProvider(),await Promise.all([this.messages.init(),this.subscriber.init()]);try{await this.transportOpen()}catch{this.logger.warn(`Connection via ${this.relayUrl} failed, attempting to connect via failover domain ${ih}...`),await this.restartTransport(ih)}this.initialized=!0,setTimeout((async()=>{0===this.subscriber.topics.length&&(this.logger.info("No topics subscribed to after init, closing transport"),await this.transportClose(),this.transportExplicitlyClosed=!1)}),1e4)}get context(){return sp(this.logger)}get connected(){return this.provider.connection.connected}get connecting(){return this.provider.connection.connecting}async publish(e,t,n){this.isInitialized(),await this.publisher.publish(e,t,n),await this.recordMessageEvent({topic:e,message:t,publishedAt:Date.now()})}async subscribe(e,t){var n;this.isInitialized();let r,i=(null==(n=this.subscriber.topicMap.get(e))?void 0:n[0])||"";if(i)return i;const o=t=>{t.topic===e&&(this.subscriber.off(gh,o),r())};return await Promise.all([new Promise((e=>{r=e,this.subscriber.on(gh,o)})),new Promise((async n=>{i=await this.subscriber.subscribe(e,t),n()}))]),i}async unsubscribe(e,t){this.isInitialized(),await this.subscriber.unsubscribe(e,t)}on(e,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}off(e,t){this.events.off(e,t)}removeListener(e,t){this.events.removeListener(e,t)}async transportClose(){this.requestsInFlight.size>0&&(this.logger.debug("Waiting for all in-flight requests to finish before closing transport..."),this.requestsInFlight.forEach((async e=>{await e.promise}))),this.transportExplicitlyClosed=!0,this.hasExperiencedNetworkDisruption&&this.connected?await hc(this.provider.disconnect(),1e3,"provider.disconnect()").catch((()=>this.onProviderDisconnect())):this.connected&&await this.provider.disconnect()}async transportOpen(e){if(this.transportExplicitlyClosed=!1,await this.confirmOnlineStateOrThrow(),!this.connectionAttemptInProgress){e&&e!==this.relayUrl&&(this.relayUrl=e,await this.transportClose(),await this.createProvider()),this.connectionAttemptInProgress=!0;try{await Promise.all([new Promise((e=>{if(!this.initialized)return e();this.subscriber.once(bh,(()=>{e()}))})),new Promise((async(e,t)=>{try{await hc(this.provider.connect(),1e4,`Socket stalled when trying to connect to ${this.relayUrl}`)}catch(n){return void t(n)}e()}))])}catch(t){this.logger.error(t);const e=t;if(!this.isConnectionStalled(e.message))throw t;this.provider.events.emit(fh)}finally{this.connectionAttemptInProgress=!1,this.hasExperiencedNetworkDisruption=!1}}}async restartTransport(e){await this.confirmOnlineStateOrThrow(),!this.connectionAttemptInProgress&&(this.relayUrl=e||this.relayUrl,await this.transportClose(),await this.createProvider(),await this.transportOpen())}async confirmOnlineStateOrThrow(){if(!await il())throw new Error("No internet connection detected. Please restart your network and try again.")}isConnectionStalled(e){return this.staleConnectionErrors.some((t=>e.includes(t)))}async createProvider(){this.provider.connection&&this.unregisterProviderListeners();const e=await this.core.crypto.signJWT(this.relayUrl);this.provider=new _f(new mf(dc({sdkVersion:"2.11.2",protocol:this.protocol,version:this.version,relayUrl:this.relayUrl,projectId:this.projectId,auth:e,useOnCloseEvent:!0,bundleId:this.bundleId}))),this.registerProviderListeners()}async recordMessageEvent(e){const{topic:t,message:n}=e;await this.messages.set(t,n)}async shouldIgnoreMessageEvent(e){const{topic:t,message:n}=e;if(!n||0===n.length)return this.logger.debug(`Ignoring invalid/empty message: ${n}`),!0;if(!await this.subscriber.isSubscribed(t))return this.logger.debug(`Ignoring message for non-subscribed topic ${t}`),!0;const r=this.messages.has(t,n);return r&&this.logger.debug(`Ignoring duplicate message: ${n}`),r}async onProviderPayload(e){if(this.logger.debug("Incoming Relay Payload"),this.logger.trace({type:"payload",direction:"incoming",payload:e}),cf(e)){if(!e.method.endsWith("_subscription"))return;const t=e.params,{topic:n,message:r,publishedAt:i}=t.data,o={topic:n,message:r,publishedAt:i};this.logger.debug("Emitting Relayer Payload"),this.logger.trace(((e,t)=>{for(var n in t||(t={}))ng.call(t,n)&&ig(e,n,t[n]);if(tg)for(var n of tg(t))rg.call(t,n)&&ig(e,n,t[n]);return e})({type:"event",event:t.id},o)),this.events.emit(t.id,o),await this.acknowledgePayload(e),await this.onMessageEvent(o)}else lf(e)&&this.events.emit(sh,e)}async onMessageEvent(e){await this.shouldIgnoreMessageEvent(e)||(this.events.emit(oh,e),await this.recordMessageEvent(e))}async acknowledgePayload(e){const t=Xp(e.id,!0);await this.provider.connection.send(t)}unregisterProviderListeners(){this.provider.off(_h,this.onPayloadHandler),this.provider.off(ph,this.onConnectHandler),this.provider.off(fh,this.onDisconnectHandler),this.provider.off(mh,this.onProviderErrorHandler)}async registerEventListeners(){this.events.on(uh,(()=>{this.restartTransport().catch((e=>this.logger.error(e)))}));let e=await il();ol((async t=>{this.initialized&&e!==t&&(e=t,t?await this.restartTransport().catch((e=>this.logger.error(e))):(this.hasExperiencedNetworkDisruption=!0,await this.transportClose().catch((e=>this.logger.error(e)))))}))}onProviderDisconnect(){this.events.emit(ch),this.attemptToReconnect()}attemptToReconnect(){this.transportExplicitlyClosed||(this.logger.info("attemptToReconnect called. Connecting..."),setTimeout((async()=>{await this.restartTransport().catch((e=>this.logger.error(e)))}),(0,Ea.toMiliseconds)(hh)))}isInitialized(){if(!this.initialized){const{message:e}=jc("NOT_INITIALIZED",this.name);throw new Error(e)}}async toEstablishConnection(){if(await this.confirmOnlineStateOrThrow(),!this.connected){if(this.connectionAttemptInProgress)return await new Promise((e=>{const t=setInterval((()=>{this.connected&&(clearInterval(t),e())}),this.connectionStatusPollingInterval)}));await this.restartTransport()}}}var sg=Object.defineProperty,ag=Object.getOwnPropertySymbols,cg=Object.prototype.hasOwnProperty,lg=Object.prototype.propertyIsEnumerable,ug=(e,t,n)=>t in e?sg(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,dg=(e,t)=>{for(var n in t||(t={}))cg.call(t,n)&&ug(e,n,t[n]);if(ag)for(var n of ag(t))lg.call(t,n)&&ug(e,n,t[n]);return e};class _g extends fp{constructor(e,t,n,r=Zm,i=void 0){super(e,t,n,r),this.core=e,this.logger=t,this.name=n,this.map=new Map,this.version="0.3",this.cached=[],this.initialized=!1,this.storagePrefix=Zm,this.init=async()=>{this.initialized||(this.logger.trace("Initialized"),await this.restore(),this.cached.forEach((e=>{this.getKey&&null!==e&&!qc(e)?this.map.set(this.getKey(e),e):function(e){var t;return null==(t=e?.proposer)?void 0:t.publicKey}(e)?this.map.set(e.id,e):function(e){return e?.topic}(e)&&this.map.set(e.topic,e)})),this.cached=[],this.initialized=!0)},this.set=async(e,t)=>{this.isInitialized(),this.map.has(e)?await this.update(e,t):(this.logger.debug("Setting value"),this.logger.trace({type:"method",method:"set",key:e,value:t}),this.map.set(e,t),await this.persist())},this.get=e=>(this.isInitialized(),this.logger.debug("Getting value"),this.logger.trace({type:"method",method:"get",key:e}),this.getData(e)),this.getAll=e=>(this.isInitialized(),e?this.values.filter((t=>Object.keys(e).every((n=>gf()(t[n],e[n]))))):this.values),this.update=async(e,t)=>{this.isInitialized(),this.logger.debug("Updating value"),this.logger.trace({type:"method",method:"update",key:e,update:t});const n=dg(dg({},this.getData(e)),t);this.map.set(e,n),await this.persist()},this.delete=async(e,t)=>{this.isInitialized(),this.map.has(e)&&(this.logger.debug("Deleting value"),this.logger.trace({type:"method",method:"delete",key:e,reason:t}),this.map.delete(e),await this.persist())},this.logger=ap(t,this.name),this.storagePrefix=r,this.getKey=i}get context(){return sp(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+"//"+this.name}get length(){return this.map.size}get keys(){return Array.from(this.map.keys())}get values(){return Array.from(this.map.values())}async setDataStore(e){await this.core.storage.setItem(this.storageKey,e)}async getDataStore(){return await this.core.storage.getItem(this.storageKey)}getData(e){const t=this.map.get(e);if(!t){const{message:t}=jc("NO_MATCHING_KEY",`${this.name}: ${e}`);throw this.logger.error(t),new Error(t)}return t}async persist(){await this.setDataStore(this.values)}async restore(){try{const e=await this.getDataStore();if(typeof e>"u"||!e.length)return;if(this.map.size){const{message:e}=jc("RESTORE_WILL_OVERRIDE",this.name);throw this.logger.error(e),new Error(e)}this.cached=e,this.logger.debug(`Successfully Restored value for ${this.name}`),this.logger.trace({type:"method",method:"restore",value:this.values})}catch(e){this.logger.debug(`Failed to Restore value for ${this.name}`),this.logger.error(e)}}isInitialized(){if(!this.initialized){const{message:e}=jc("NOT_INITIALIZED",this.name);throw new Error(e)}}}class pg{constructor(e,t){this.core=e,this.logger=t,this.name="pairing",this.version="0.3",this.events=new(a_()),this.initialized=!1,this.storagePrefix=Zm,this.ignoredPayloadTypes=[za],this.registeredMethods=[],this.init=async()=>{this.initialized||(await this.pairings.init(),await this.cleanup(),this.registerRelayerEvents(),this.registerExpirerEvents(),this.initialized=!0,this.logger.trace("Initialized"))},this.register=({methods:e})=>{this.isInitialized(),this.registeredMethods=[...new Set([...this.registeredMethods,...e])]},this.create=async()=>{this.isInitialized();const e=Ka(),t=await this.core.crypto.setSymKey(e),n=vc(Ea.FIVE_MINUTES),r={protocol:"irn"},i={topic:t,expiry:n,relay:r,active:!1},o=Oc({protocol:this.core.protocol,version:this.core.version,topic:t,symKey:e,relay:r,expiryTimestamp:n});return await this.pairings.set(t,i),await this.core.relayer.subscribe(t),this.core.expirer.set(t,n),{topic:t,uri:o}},this.pair=async e=>{this.isInitialized(),this.isValidPair(e);const{topic:t,symKey:n,relay:r,expiryTimestamp:i}=Pc(e.uri);let o;if(this.pairings.keys.includes(t)&&(o=this.pairings.get(t),o.active))throw new Error(`Pairing already exists: ${t}. Please try again with a new connection URI.`);const s=i||vc(Ea.FIVE_MINUTES),a={topic:t,relay:r,expiry:s,active:!1};return await this.pairings.set(t,a),this.core.expirer.set(t,s),e.activatePairing&&await this.activate({topic:t}),this.events.emit(Th,a),this.core.crypto.keychain.has(t)||(await this.core.crypto.setSymKey(n,t),await this.core.relayer.subscribe(t,{relay:r})),a},this.activate=async({topic:e})=>{this.isInitialized();const t=vc(Ea.THIRTY_DAYS);await this.pairings.update(e,{active:!0,expiry:t}),this.core.expirer.set(e,t)},this.ping=async e=>{this.isInitialized(),await this.isValidPing(e);const{topic:t}=e;if(this.pairings.keys.includes(t)){const e=await this.sendRequest(t,"wc_pairingPing",{}),{done:n,resolve:r,reject:i}=mc();this.events.once(xc("pairing_ping",e),(({error:e})=>{e?i(e):r()})),await n()}},this.updateExpiry=async({topic:e,expiry:t})=>{this.isInitialized(),await this.pairings.update(e,{expiry:t})},this.updateMetadata=async({topic:e,metadata:t})=>{this.isInitialized(),await this.pairings.update(e,{peerMetadata:t})},this.getPairings=()=>(this.isInitialized(),this.pairings.values),this.disconnect=async e=>{this.isInitialized(),await this.isValidDisconnect(e);const{topic:t}=e;this.pairings.keys.includes(t)&&(await this.sendRequest(t,"wc_pairingDelete",zc("USER_DISCONNECTED")),await this.deletePairing(t))},this.sendRequest=async(e,t,n)=>{const r=Zp(t,n),i=await this.core.crypto.encode(e,r),o=Sh[t].req;return this.core.history.set(e,r),this.core.relayer.publish(e,i,o),r.id},this.sendResult=async(e,t,n)=>{const r=Xp(e,n),i=await this.core.crypto.encode(t,r),o=await this.core.history.get(t,e),s=Sh[o.request.method].res;await this.core.relayer.publish(t,i,s),await this.core.history.resolve(r)},this.sendError=async(e,t,n)=>{const r=$p(e,n),i=await this.core.crypto.encode(t,r),o=await this.core.history.get(t,e),s=Sh[o.request.method]?Sh[o.request.method].res:Sh.unregistered_method.res;await this.core.relayer.publish(t,i,s),await this.core.history.resolve(r)},this.deletePairing=async(e,t)=>{await this.core.relayer.unsubscribe(e),await Promise.all([this.pairings.delete(e,zc("USER_DISCONNECTED")),this.core.crypto.deleteSymKey(e),t?Promise.resolve():this.core.expirer.del(e)])},this.cleanup=async()=>{const e=this.pairings.getAll().filter((e=>bc(e.expiry)));await Promise.all(e.map((e=>this.deletePairing(e.topic))))},this.onRelayEventRequest=e=>{const{topic:t,payload:n}=e;switch(n.method){case"wc_pairingPing":return this.onPairingPingRequest(t,n);case"wc_pairingDelete":return this.onPairingDeleteRequest(t,n);default:return this.onUnknownRpcMethodRequest(t,n)}},this.onRelayEventResponse=async e=>{const{topic:t,payload:n}=e,r=(await this.core.history.get(t,n.id)).request.method;return"wc_pairingPing"===r?this.onPairingPingResponse(t,n):this.onUnknownRpcMethodResponse(r)},this.onPairingPingRequest=async(e,t)=>{const{id:n}=t;try{this.isValidPing({topic:e}),await this.sendResult(n,e,!0),this.events.emit(Eh,{id:n,topic:e})}catch(r){await this.sendError(n,e,r),this.logger.error(r)}},this.onPairingPingResponse=(e,t)=>{const{id:n}=t;setTimeout((()=>{uf(t)?this.events.emit(xc("pairing_ping",n),{}):df(t)&&this.events.emit(xc("pairing_ping",n),{error:t.error})}),500)},this.onPairingDeleteRequest=async(e,t)=>{const{id:n}=t;try{this.isValidDisconnect({topic:e}),await this.deletePairing(e),this.events.emit(kh,{id:n,topic:e})}catch(r){await this.sendError(n,e,r),this.logger.error(r)}},this.onUnknownRpcMethodRequest=async(e,t)=>{const{id:n,method:r}=t;try{if(this.registeredMethods.includes(r))return;const t=zc("WC_METHOD_UNSUPPORTED",r);await this.sendError(n,e,t),this.logger.error(t)}catch(i){await this.sendError(n,e,i),this.logger.error(i)}},this.onUnknownRpcMethodResponse=e=>{this.registeredMethods.includes(e)||this.logger.error(zc("WC_METHOD_UNSUPPORTED",e))},this.isValidPair=e=>{var t;if(!Xc(e)){const{message:t}=jc("MISSING_OR_INVALID",`pair() params: ${e}`);throw new Error(t)}if(!function(e){if(Vc(e,!1))try{return typeof new URL(e)<"u"}catch{return!1}return!1}(e.uri)){const{message:t}=jc("MISSING_OR_INVALID",`pair() uri: ${e.uri}`);throw new Error(t)}const n=Pc(e.uri);if(null==(t=n?.relay)||!t.protocol){const{message:e}=jc("MISSING_OR_INVALID","pair() uri#relay-protocol");throw new Error(e)}if(null==n||!n.symKey){const{message:e}=jc("MISSING_OR_INVALID","pair() uri#symKey");throw new Error(e)}if(null!=n&&n.expiryTimestamp&&(0,Ea.toMiliseconds)(n?.expiryTimestamp)<Date.now()){const{message:e}=jc("EXPIRED","pair() URI has expired. Please try again with a new connection URI.");throw new Error(e)}},this.isValidPing=async e=>{if(!Xc(e)){const{message:t}=jc("MISSING_OR_INVALID",`ping() params: ${e}`);throw new Error(t)}const{topic:t}=e;await this.isValidPairingTopic(t)},this.isValidDisconnect=async e=>{if(!Xc(e)){const{message:t}=jc("MISSING_OR_INVALID",`disconnect() params: ${e}`);throw new Error(t)}const{topic:t}=e;await this.isValidPairingTopic(t)},this.isValidPairingTopic=async e=>{if(!Vc(e,!1)){const{message:t}=jc("MISSING_OR_INVALID",`pairing topic should be a string: ${e}`);throw new Error(t)}if(!this.pairings.keys.includes(e)){const{message:t}=jc("NO_MATCHING_KEY",`pairing topic doesn't exist: ${e}`);throw new Error(t)}if(bc(this.pairings.get(e).expiry)){await this.deletePairing(e);const{message:t}=jc("EXPIRED",`pairing topic: ${e}`);throw new Error(t)}},this.core=e,this.logger=ap(t,this.name),this.pairings=new _g(this.core,this.logger,this.name,this.storagePrefix)}get context(){return sp(this.logger)}isInitialized(){if(!this.initialized){const{message:e}=jc("NOT_INITIALIZED",this.name);throw new Error(e)}}registerRelayerEvents(){this.core.relayer.on(oh,(async e=>{const{topic:t,message:n}=e;if(!this.pairings.keys.includes(t)||this.ignoredPayloadTypes.includes(this.core.crypto.getPayloadType(n)))return;const r=await this.core.crypto.decode(t,n);try{cf(r)?(this.core.history.set(t,r),this.onRelayEventRequest({topic:t,payload:r})):lf(r)&&(await this.core.history.resolve(r),await this.onRelayEventResponse({topic:t,payload:r}),this.core.history.delete(t,r.id))}catch(i){this.logger.error(i)}}))}registerExpirerEvents(){this.core.expirer.on(Mh,(async e=>{const{topic:t}=yc(e.target);t&&this.pairings.keys.includes(t)&&(await this.deletePairing(t,!0),this.events.emit(wh,{topic:t}))}))}}class fg extends up{constructor(e,t){super(e,t),this.core=e,this.logger=t,this.records=new Map,this.events=new s_.EventEmitter,this.name="history",this.version="0.3",this.cached=[],this.initialized=!1,this.storagePrefix=Zm,this.init=async()=>{this.initialized||(this.logger.trace("Initialized"),await this.restore(),this.cached.forEach((e=>this.records.set(e.id,e))),this.cached=[],this.registerEventListeners(),this.initialized=!0)},this.set=(e,t,n)=>{if(this.isInitialized(),this.logger.debug("Setting JSON-RPC request history record"),this.logger.trace({type:"method",method:"set",topic:e,request:t,chainId:n}),this.records.has(t.id))return;const r={id:t.id,topic:e,request:{method:t.method,params:t.params||null},chainId:n,expiry:vc(Ea.THIRTY_DAYS)};this.records.set(r.id,r),this.events.emit(Ch,r)},this.resolve=async e=>{if(this.isInitialized(),this.logger.debug("Updating JSON-RPC response history record"),this.logger.trace({type:"method",method:"update",response:e}),!this.records.has(e.id))return;const t=await this.getRecord(e.id);typeof t.response>"u"&&(t.response=df(e)?{error:e.error}:{result:e.result},this.records.set(t.id,t),this.events.emit(Nh,t))},this.get=async(e,t)=>(this.isInitialized(),this.logger.debug("Getting record"),this.logger.trace({type:"method",method:"get",topic:e,id:t}),await this.getRecord(t)),this.delete=(e,t)=>{this.isInitialized(),this.logger.debug("Deleting record"),this.logger.trace({type:"method",method:"delete",id:t}),this.values.forEach((n=>{if(n.topic===e){if(typeof t<"u"&&n.id!==t)return;this.records.delete(n.id),this.events.emit(Ah,n)}}))},this.exists=async(e,t)=>(this.isInitialized(),!!this.records.has(t)&&(await this.getRecord(t)).topic===e),this.on=(e,t)=>{this.events.on(e,t)},this.once=(e,t)=>{this.events.once(e,t)},this.off=(e,t)=>{this.events.off(e,t)},this.removeListener=(e,t)=>{this.events.removeListener(e,t)},this.logger=ap(t,this.name)}get context(){return sp(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+"//"+this.name}get size(){return this.records.size}get keys(){return Array.from(this.records.keys())}get values(){return Array.from(this.records.values())}get pending(){const e=[];return this.values.forEach((t=>{if(typeof t.response<"u")return;const n={topic:t.topic,request:Zp(t.request.method,t.request.params,t.id),chainId:t.chainId};return e.push(n)})),e}async setJsonRpcRecords(e){await this.core.storage.setItem(this.storageKey,e)}async getJsonRpcRecords(){return await this.core.storage.getItem(this.storageKey)}getRecord(e){this.isInitialized();const t=this.records.get(e);if(!t){const{message:t}=jc("NO_MATCHING_KEY",`${this.name}: ${e}`);throw new Error(t)}return t}async persist(){await this.setJsonRpcRecords(this.values),this.events.emit(Ih)}async restore(){try{const e=await this.getJsonRpcRecords();if(typeof e>"u"||!e.length)return;if(this.records.size){const{message:e}=jc("RESTORE_WILL_OVERRIDE",this.name);throw this.logger.error(e),new Error(e)}this.cached=e,this.logger.debug(`Successfully Restored records for ${this.name}`),this.logger.trace({type:"method",method:"restore",records:this.values})}catch(e){this.logger.debug(`Failed to Restore records for ${this.name}`),this.logger.error(e)}}registerEventListeners(){this.events.on(Ch,(e=>{const t=Ch;this.logger.info(`Emitting ${t}`),this.logger.debug({type:"event",event:t,record:e}),this.persist()})),this.events.on(Nh,(e=>{const t=Nh;this.logger.info(`Emitting ${t}`),this.logger.debug({type:"event",event:t,record:e}),this.persist()})),this.events.on(Ah,(e=>{const t=Ah;this.logger.info(`Emitting ${t}`),this.logger.debug({type:"event",event:t,record:e}),this.persist()})),this.core.heartbeat.on(J_.HEARTBEAT_EVENTS.pulse,(()=>{this.cleanup()}))}cleanup(){try{this.records.forEach((e=>{(0,Ea.toMiliseconds)(e.expiry||0)-Date.now()<=0&&(this.logger.info(`Deleting expired history log: ${e.id}`),this.delete(e.topic,e.id))}))}catch(e){this.logger.warn(e)}}isInitialized(){if(!this.initialized){const{message:e}=jc("NOT_INITIALIZED",this.name);throw new Error(e)}}}class mg extends hp{constructor(e,t){super(e,t),this.core=e,this.logger=t,this.expirations=new Map,this.events=new s_.EventEmitter,this.name="expirer",this.version="0.3",this.cached=[],this.initialized=!1,this.storagePrefix=Zm,this.init=async()=>{this.initialized||(this.logger.trace("Initialized"),await this.restore(),this.cached.forEach((e=>this.expirations.set(e.target,e))),this.cached=[],this.registerEventListeners(),this.initialized=!0)},this.has=e=>{try{const t=this.formatTarget(e);return typeof this.getExpiration(t)<"u"}catch{return!1}},this.set=(e,t)=>{this.isInitialized();const n=this.formatTarget(e),r={target:n,expiry:t};this.expirations.set(n,r),this.checkExpiry(n,r),this.events.emit(Dh,{target:n,expiration:r})},this.get=e=>{this.isInitialized();const t=this.formatTarget(e);return this.getExpiration(t)},this.del=e=>{if(this.isInitialized(),this.has(e)){const t=this.formatTarget(e),n=this.getExpiration(t);this.expirations.delete(t),this.events.emit(Ph,{target:t,expiration:n})}},this.on=(e,t)=>{this.events.on(e,t)},this.once=(e,t)=>{this.events.once(e,t)},this.off=(e,t)=>{this.events.off(e,t)},this.removeListener=(e,t)=>{this.events.removeListener(e,t)},this.logger=ap(t,this.name)}get context(){return sp(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+"//"+this.name}get length(){return this.expirations.size}get keys(){return Array.from(this.expirations.keys())}get values(){return Array.from(this.expirations.values())}formatTarget(e){if("string"==typeof e)return function(e){return gc("topic",e)}(e);if("number"==typeof e)return function(e){return gc("id",e)}(e);const{message:t}=jc("UNKNOWN_TYPE","Target type: "+typeof e);throw new Error(t)}async setExpirations(e){await this.core.storage.setItem(this.storageKey,e)}async getExpirations(){return await this.core.storage.getItem(this.storageKey)}async persist(){await this.setExpirations(this.values),this.events.emit(Oh)}async restore(){try{const e=await this.getExpirations();if(typeof e>"u"||!e.length)return;if(this.expirations.size){const{message:e}=jc("RESTORE_WILL_OVERRIDE",this.name);throw this.logger.error(e),new Error(e)}this.cached=e,this.logger.debug(`Successfully Restored expirations for ${this.name}`),this.logger.trace({type:"method",method:"restore",expirations:this.values})}catch(e){this.logger.debug(`Failed to Restore expirations for ${this.name}`),this.logger.error(e)}}getExpiration(e){const t=this.expirations.get(e);if(!t){const{message:t}=jc("NO_MATCHING_KEY",`${this.name}: ${e}`);throw this.logger.error(t),new Error(t)}return t}checkExpiry(e,t){const{expiry:n}=t;(0,Ea.toMiliseconds)(n)-Date.now()<=0&&this.expire(e,t)}expire(e,t){this.expirations.delete(e),this.events.emit(Mh,{target:e,expiration:t})}checkExpirations(){this.core.relayer.connected&&this.expirations.forEach(((e,t)=>this.checkExpiry(t,e)))}registerEventListeners(){this.core.heartbeat.on(J_.HEARTBEAT_EVENTS.pulse,(()=>this.checkExpirations())),this.events.on(Dh,(e=>{const t=Dh;this.logger.info(`Emitting ${t}`),this.logger.debug({type:"event",event:t,data:e}),this.persist()})),this.events.on(Mh,(e=>{const t=Mh;this.logger.info(`Emitting ${t}`),this.logger.debug({type:"event",event:t,data:e}),this.persist()})),this.events.on(Ph,(e=>{const t=Ph;this.logger.info(`Emitting ${t}`),this.logger.debug({type:"event",event:t,data:e}),this.persist()}))}isInitialized(){if(!this.initialized){const{message:e}=jc("NOT_INITIALIZED",this.name);throw new Error(e)}}}class hg extends gp{constructor(e,t){super(e,t),this.projectId=e,this.logger=t,this.name=Fh,this.initialized=!1,this.queue=[],this.verifyDisabled=!1,this.init=async e=>{if(this.verifyDisabled||ac()||!cc())return;const t=this.getVerifyUrl(e?.verifyUrl);this.verifyUrl!==t&&this.removeIframe(),this.verifyUrl=t;try{await this.createIframe()}catch(n){this.logger.info(`Verify iframe failed to load: ${this.verifyUrl}`),this.logger.info(n)}if(!this.initialized){this.removeIframe(),this.verifyUrl=Lh;try{await this.createIframe()}catch(n){this.logger.info(`Verify iframe failed to load: ${this.verifyUrl}`),this.logger.info(n),this.verifyDisabled=!0}}},this.register=async e=>{this.initialized?this.sendPost(e.attestationId):(this.addToQueue(e.attestationId),await this.init())},this.resolve=async e=>{if(this.isDevEnv)return"";const t=this.getVerifyUrl(e?.verifyUrl);let n;try{n=await this.fetchAttestation(e.attestationId,t)}catch(r){this.logger.info(`failed to resolve attestation: ${e.attestationId} from url: ${t}`),this.logger.info(r),n=await this.fetchAttestation(e.attestationId,Lh)}return n},this.fetchAttestation=async(e,t)=>{this.logger.info(`resolving attestation: ${e} from url: ${t}`);const n=this.startAbortTimer(2*Ea.ONE_SECOND),r=await fetch(`${t}/attestation/${e}`,{signal:this.abortController.signal});return clearTimeout(n),200===r.status?await r.json():void 0},this.addToQueue=e=>{this.queue.push(e)},this.processQueue=()=>{0!==this.queue.length&&(this.queue.forEach((e=>this.sendPost(e))),this.queue=[])},this.sendPost=e=>{var t;try{if(!this.iframe)return;null==(t=this.iframe.contentWindow)||t.postMessage(e,"*"),this.logger.info(`postMessage sent: ${e} ${this.verifyUrl}`)}catch{}},this.createIframe=async()=>{let e;const t=n=>{"verify_ready"===n.data&&(this.initialized=!0,this.processQueue(),window.removeEventListener("message",t),e())};await Promise.race([new Promise((n=>{if(document.getElementById(Fh))return n();window.addEventListener("message",t);const r=document.createElement("iframe");r.id=Fh,r.src=`${this.verifyUrl}/${this.projectId}`,r.style.display="none",document.body.append(r),this.iframe=r,e=n})),new Promise(((e,n)=>setTimeout((()=>{window.removeEventListener("message",t),n("verify iframe load timeout")}),(0,Ea.toMiliseconds)(Ea.FIVE_SECONDS))))])},this.removeIframe=()=>{this.iframe&&(this.iframe.remove(),this.iframe=void 0,this.initialized=!1)},this.getVerifyUrl=e=>{let t=e||Rh;return jh.includes(t)||(this.logger.info(`verify url: ${t}, not included in trusted list, assigning default: ${Rh}`),t=Rh),t},this.logger=ap(t,this.name),this.verifyUrl=Rh,this.abortController=new AbortController,this.isDevEnv=sc()&&bf.env.IS_VITEST}get context(){return sp(this.logger)}startAbortTimer(e){return this.abortController=new AbortController,setTimeout((()=>this.abortController.abort()),(0,Ea.toMiliseconds)(e))}}class gg extends yp{constructor(e,t){super(e,t),this.projectId=e,this.logger=t,this.context="echo",this.registerDeviceToken=async e=>{const{clientId:t,token:n,notificationType:r,enableEncrypted:i=!1}=e,o=`https://echo.walletconnect.com/${this.projectId}/clients`;await vf()(o,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({client_id:t,type:r,token:n,always_raw:i})})},this.logger=ap(t,this.context)}}var yg=Object.defineProperty,vg=Object.getOwnPropertySymbols,bg=Object.prototype.hasOwnProperty,xg=Object.prototype.propertyIsEnumerable,Sg=(e,t,n)=>t in e?yg(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Tg=(e,t)=>{for(var n in t||(t={}))bg.call(t,n)&&Sg(e,n,t[n]);if(vg)for(var n of vg(t))xg.call(t,n)&&Sg(e,n,t[n]);return e};class wg extends lp{constructor(e){super(e),this.protocol="wc",this.version=2,this.name=Ym,this.events=new s_.EventEmitter,this.initialized=!1,this.on=(e,t)=>this.events.on(e,t),this.once=(e,t)=>this.events.once(e,t),this.off=(e,t)=>this.events.off(e,t),this.removeListener=(e,t)=>this.events.removeListener(e,t),this.projectId=e?.projectId,this.relayUrl=e?.relayUrl||rh,this.customStoragePrefix=null!=e&&e.customStoragePrefix?`:${e.customStoragePrefix}`:"";const t=typeof e?.logger<"u"&&"string"!=typeof e?.logger?e.logger:H_()(op({level:e?.logger||Xm}));this.logger=ap(t,this.name),this.heartbeat=new J_.HeartBeat,this.crypto=new Uh(this,this.logger,e?.keychain),this.history=new fg(this,this.logger),this.expirer=new mg(this,this.logger),this.storage=null!=e&&e.storage?e.storage:new K_(Tg(Tg({},$m),e?.storageOptions)),this.relayer=new og({core:this,logger:this.logger,relayUrl:this.relayUrl,projectId:this.projectId}),this.pairing=new pg(this,this.logger),this.verify=new hg(this.projectId||"",this.logger),this.echoClient=new gg(this.projectId||"",this.logger)}static async init(e){const t=new wg(e);await t.initialize();const n=await t.crypto.getClientId();return await t.storage.setItem("WALLETCONNECT_CLIENT_ID",n),t}get context(){return sp(this.logger)}async start(){this.initialized||await this.initialize()}async initialize(){this.logger.trace("Initialized");try{await this.crypto.init(),await this.history.init(),await this.expirer.init(),await this.relayer.init(),await this.heartbeat.init(),await this.pairing.init(),this.initialized=!0,this.logger.info("Core Initialization Success")}catch(e){throw this.logger.warn(`Core Initialization Failure at epoch ${Date.now()}`,e),this.logger.error(e.message),e}}}const kg=wg,Eg="client",Cg=`wc@2:${Eg}:`,Ng=Eg,Ag="error",Ig="WALLETCONNECT_DEEPLINK_CHOICE",Dg=Ea.SEVEN_DAYS,Pg={wc_sessionPropose:{req:{ttl:Ea.FIVE_MINUTES,prompt:!0,tag:1100},res:{ttl:Ea.FIVE_MINUTES,prompt:!1,tag:1101}},wc_sessionSettle:{req:{ttl:Ea.FIVE_MINUTES,prompt:!1,tag:1102},res:{ttl:Ea.FIVE_MINUTES,prompt:!1,tag:1103}},wc_sessionUpdate:{req:{ttl:Ea.ONE_DAY,prompt:!1,tag:1104},res:{ttl:Ea.ONE_DAY,prompt:!1,tag:1105}},wc_sessionExtend:{req:{ttl:Ea.ONE_DAY,prompt:!1,tag:1106},res:{ttl:Ea.ONE_DAY,prompt:!1,tag:1107}},wc_sessionRequest:{req:{ttl:Ea.FIVE_MINUTES,prompt:!0,tag:1108},res:{ttl:Ea.FIVE_MINUTES,prompt:!1,tag:1109}},wc_sessionEvent:{req:{ttl:Ea.FIVE_MINUTES,prompt:!0,tag:1110},res:{ttl:Ea.FIVE_MINUTES,prompt:!1,tag:1111}},wc_sessionDelete:{req:{ttl:Ea.ONE_DAY,prompt:!1,tag:1112},res:{ttl:Ea.ONE_DAY,prompt:!1,tag:1113}},wc_sessionPing:{req:{ttl:Ea.THIRTY_SECONDS,prompt:!1,tag:1114},res:{ttl:Ea.THIRTY_SECONDS,prompt:!1,tag:1115}}},Mg={min:Ea.FIVE_MINUTES,max:Ea.SEVEN_DAYS},Og="IDLE",Fg="ACTIVE",Rg=["wc_sessionPropose","wc_sessionRequest","wc_authRequest"];var Lg=Object.defineProperty,jg=Object.defineProperties,zg=Object.getOwnPropertyDescriptors,Ug=Object.getOwnPropertySymbols,Bg=Object.prototype.hasOwnProperty,qg=Object.prototype.propertyIsEnumerable,Vg=(e,t,n)=>t in e?Lg(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Kg=(e,t)=>{for(var n in t||(t={}))Bg.call(t,n)&&Vg(e,n,t[n]);if(Ug)for(var n of Ug(t))qg.call(t,n)&&Vg(e,n,t[n]);return e},Jg=(e,t)=>jg(e,zg(t));class Wg extends bp{constructor(e){super(e),this.name="engine",this.events=new(a_()),this.initialized=!1,this.ignoredPayloadTypes=[za],this.requestQueue={state:Og,queue:[]},this.sessionRequestQueue={state:Og,queue:[]},this.requestQueueDelay=Ea.ONE_SECOND,this.init=async()=>{this.initialized||(await this.cleanup(),this.registerRelayerEvents(),this.registerExpirerEvents(),this.registerPairingEvents(),this.client.core.pairing.register({methods:Object.keys(Pg)}),this.initialized=!0,setTimeout((()=>{this.sessionRequestQueue.queue=this.getPendingSessionRequests(),this.processSessionRequestQueue()}),(0,Ea.toMiliseconds)(this.requestQueueDelay)))},this.connect=async e=>{await this.isInitialized();const t=Jg(Kg({},e),{requiredNamespaces:e.requiredNamespaces||{},optionalNamespaces:e.optionalNamespaces||{}});await this.isValidConnect(t);const{pairingTopic:n,requiredNamespaces:r,optionalNamespaces:i,sessionProperties:o,relays:s}=t;let a,c=n,l=!1;if(c&&(l=this.client.core.pairing.pairings.get(c).active),!c||!l){const{topic:e,uri:t}=await this.client.core.pairing.create();c=e,a=t}const u=await this.client.core.crypto.generateKeyPair(),d=Pg.wc_sessionPropose.req.ttl||Ea.FIVE_MINUTES,_=vc(d),p=Kg({requiredNamespaces:r,optionalNamespaces:i,relays:s??[{protocol:"irn"}],proposer:{publicKey:u,metadata:this.client.metadata},expiryTimestamp:_},o&&{sessionProperties:o}),{reject:f,resolve:m,done:h}=mc(d,"Proposal expired");if(this.events.once(xc("session_connect"),(async({error:e,session:t})=>{if(e)f(e);else if(t){t.self.publicKey=u;const e=Jg(Kg({},t),{requiredNamespaces:p.requiredNamespaces,optionalNamespaces:p.optionalNamespaces});await this.client.session.set(t.topic,e),await this.setExpiry(t.topic,t.expiry),c&&await this.client.core.pairing.updateMetadata({topic:c,metadata:t.peer.metadata}),m(e)}})),!c){const{message:e}=jc("NO_MATCHING_KEY",`connect() pairing topic: ${c}`);throw new Error(e)}const g=await this.sendRequest({topic:c,method:"wc_sessionPropose",params:p,throwOnFailedPublish:!0});return await this.setProposal(g,Kg({id:g},p)),{uri:a,approval:h}},this.pair=async e=>(await this.isInitialized(),await this.client.core.pairing.pair(e)),this.approve=async e=>{await this.isInitialized(),await this.isValidApprove(e);const{id:t,relayProtocol:n,namespaces:r,sessionProperties:i}=e,o=this.client.proposal.get(t);let{pairingTopic:s,proposer:a,requiredNamespaces:c,optionalNamespaces:l}=o;s=s||"";const u=await this.client.core.crypto.generateKeyPair(),d=a.publicKey,_=await this.client.core.crypto.generateSharedKey(u,d);s&&t&&(await this.client.core.pairing.updateMetadata({topic:s,metadata:a.metadata}),await this.sendResult({id:t,topic:s,result:{relay:{protocol:n??"irn"},responderPublicKey:u}}),await this.client.proposal.delete(t,zc("USER_DISCONNECTED")),await this.client.core.pairing.activate({topic:s}));const p=Kg({relay:{protocol:n??"irn"},namespaces:r,pairingTopic:s,controller:{publicKey:u,metadata:this.client.metadata},expiry:vc(Dg)},i&&{sessionProperties:i});await this.client.core.relayer.subscribe(_);const f=Jg(Kg({},p),{topic:_,requiredNamespaces:c,optionalNamespaces:l,pairingTopic:s,acknowledged:!1,self:p.controller,peer:{publicKey:a.publicKey,metadata:a.metadata},controller:u});await this.client.session.set(_,f);try{await this.sendRequest({topic:_,method:"wc_sessionSettle",params:p,throwOnFailedPublish:!0})}catch(_c){throw this.client.logger.error(_c),this.client.session.delete(_,zc("USER_DISCONNECTED")),await this.client.core.relayer.unsubscribe(_),_c}return await this.setExpiry(_,vc(Dg)),{topic:_,acknowledged:()=>new Promise((e=>setTimeout((()=>e(this.client.session.get(_))),500)))}},this.reject=async e=>{await this.isInitialized(),await this.isValidReject(e);const{id:t,reason:n}=e,{pairingTopic:r}=this.client.proposal.get(t);r&&(await this.sendError(t,r,n),await this.client.proposal.delete(t,zc("USER_DISCONNECTED")))},this.update=async e=>{await this.isInitialized(),await this.isValidUpdate(e);const{topic:t,namespaces:n}=e,r=await this.sendRequest({topic:t,method:"wc_sessionUpdate",params:{namespaces:n}}),{done:i,resolve:o,reject:s}=mc();return this.events.once(xc("session_update",r),(({error:e})=>{e?s(e):o()})),await this.client.session.update(t,{namespaces:n}),{acknowledged:i}},this.extend=async e=>{await this.isInitialized(),await this.isValidExtend(e);const{topic:t}=e,n=await this.sendRequest({topic:t,method:"wc_sessionExtend",params:{}}),{done:r,resolve:i,reject:o}=mc();return this.events.once(xc("session_extend",n),(({error:e})=>{e?o(e):i()})),await this.setExpiry(t,vc(Dg)),{acknowledged:r}},this.request=async t=>{await this.isInitialized(),await this.isValidRequest(t);const{chainId:r,request:i,topic:o,expiry:s=Pg.wc_sessionRequest.req.ttl}=t,a=Qp(),{done:c,resolve:l,reject:u}=mc(s,"Request expired. Please try again.");return this.events.once(xc("session_request",a),(({error:e,result:t})=>{e?u(e):l(t)})),await Promise.all([new Promise((async e=>{await this.sendRequest({clientRpcId:a,topic:o,method:"wc_sessionRequest",params:{request:Jg(Kg({},i),{expiryTimestamp:vc(s)}),chainId:r},expiry:s,throwOnFailedPublish:!0}).catch((e=>u(e))),this.client.events.emit("session_request_sent",{topic:o,request:i,chainId:r,id:a}),e()})),new Promise((async t=>{const r=await async function(e,t){try{return await e.getItem(t)||(cc()?localStorage.getItem(t):void 0)}catch(i){Pa.error(i)}}(this.client.core.storage,Ig);(async function({id:t,topic:r,wcDeepLink:i}){try{if(!i)return;const e="string"==typeof i?JSON.parse(i):i;let o=e?.href;if("string"!=typeof o)return;o.endsWith("/")&&(o=o.slice(0,-1));const s=`${o}/wc?requestId=${t}&sessionTopic=${r}`,a=lc();a===ic.browser?s.startsWith("https://")?window.open(s,"_blank","noreferrer noopener"):window.open(s,"_self","noreferrer noopener"):a===ic.reactNative&&typeof(null==n.g?void 0:n.g.Linking)<"u"&&await n.g.Linking.openURL(s)}catch(e){Pa.error(e)}})({id:a,topic:o,wcDeepLink:r}),t()})),c()]).then((e=>e[2]))},this.respond=async e=>{await this.isInitialized(),await this.isValidRespond(e);const{topic:t,response:n}=e,{id:r}=n;uf(n)?await this.sendResult({id:r,topic:t,result:n.result,throwOnFailedPublish:!0}):df(n)&&await this.sendError(r,t,n.error),this.cleanupAfterResponse(e)},this.ping=async e=>{await this.isInitialized(),await this.isValidPing(e);const{topic:t}=e;if(this.client.session.keys.includes(t)){const e=await this.sendRequest({topic:t,method:"wc_sessionPing",params:{}}),{done:n,resolve:r,reject:i}=mc();this.events.once(xc("session_ping",e),(({error:e})=>{e?i(e):r()})),await n()}else this.client.core.pairing.pairings.keys.includes(t)&&await this.client.core.pairing.ping({topic:t})},this.emit=async e=>{await this.isInitialized(),await this.isValidEmit(e);const{topic:t,event:n,chainId:r}=e;await this.sendRequest({topic:t,method:"wc_sessionEvent",params:{event:n,chainId:r}})},this.disconnect=async e=>{await this.isInitialized(),await this.isValidDisconnect(e);const{topic:t}=e;if(this.client.session.keys.includes(t))await this.sendRequest({topic:t,method:"wc_sessionDelete",params:zc("USER_DISCONNECTED"),throwOnFailedPublish:!0}),await this.deleteSession({topic:t,emitEvent:!1});else{if(!this.client.core.pairing.pairings.keys.includes(t)){const{message:e}=jc("MISMATCHED_TOPIC",`Session or pairing topic not found: ${t}`);throw new Error(e)}await this.client.core.pairing.disconnect({topic:t})}},this.find=e=>(this.isInitialized(),this.client.session.getAll().filter((t=>function(e,t){const{requiredNamespaces:n}=t,r=Object.keys(e.namespaces),i=Object.keys(n);let o=!0;return!!_c(i,r)&&(r.forEach((t=>{const{accounts:r,methods:i,events:s}=e.namespaces[t],a=Fc(r),c=n[t];_c(Ma(t,c),a)&&_c(c.methods,i)&&_c(c.events,s)||(o=!1)})),o)}(t,e)))),this.getPendingSessionRequests=()=>this.client.pendingRequest.getAll(),this.cleanupDuplicatePairings=async e=>{if(e.pairingTopic)try{const t=this.client.core.pairing.pairings.get(e.pairingTopic),n=this.client.core.pairing.pairings.getAll().filter((n=>{var r,i;return(null==(r=n.peerMetadata)?void 0:r.url)&&(null==(i=n.peerMetadata)?void 0:i.url)===e.peer.metadata.url&&n.topic&&n.topic!==t.topic}));if(0===n.length)return;this.client.logger.info(`Cleaning up ${n.length} duplicate pairing(s)`),await Promise.all(n.map((e=>this.client.core.pairing.disconnect({topic:e.topic})))),this.client.logger.info("Duplicate pairings clean up finished")}catch(t){this.client.logger.error(t)}},this.deleteSession=async e=>{const{topic:t,expirerHasDeleted:n=!1,emitEvent:r=!0,id:i=0}=e,{self:o}=this.client.session.get(t);await this.client.core.relayer.unsubscribe(t),await this.client.session.delete(t,zc("USER_DISCONNECTED")),this.client.core.crypto.keychain.has(o.publicKey)&&await this.client.core.crypto.deleteKeyPair(o.publicKey),this.client.core.crypto.keychain.has(t)&&await this.client.core.crypto.deleteSymKey(t),n||this.client.core.expirer.del(t),this.client.core.storage.removeItem(Ig).catch((e=>this.client.logger.warn(e))),this.getPendingSessionRequests().forEach((e=>{e.topic===t&&this.deletePendingSessionRequest(e.id,zc("USER_DISCONNECTED"))})),r&&this.client.events.emit("session_delete",{id:i,topic:t})},this.deleteProposal=async(e,t)=>{await Promise.all([this.client.proposal.delete(e,zc("USER_DISCONNECTED")),t?Promise.resolve():this.client.core.expirer.del(e)])},this.deletePendingSessionRequest=async(e,t,n=!1)=>{await Promise.all([this.client.pendingRequest.delete(e,t),n?Promise.resolve():this.client.core.expirer.del(e)]),this.sessionRequestQueue.queue=this.sessionRequestQueue.queue.filter((t=>t.id!==e)),n&&(this.sessionRequestQueue.state=Og,this.client.events.emit("session_request_expire",{id:e}))},this.setExpiry=async(e,t)=>{this.client.session.keys.includes(e)&&await this.client.session.update(e,{expiry:t}),this.client.core.expirer.set(e,t)},this.setProposal=async(e,t)=>{await this.client.proposal.set(e,t),this.client.core.expirer.set(e,vc(Pg.wc_sessionPropose.req.ttl))},this.setPendingSessionRequest=async e=>{const{id:t,topic:n,params:r,verifyContext:i}=e,o=r.request.expiryTimestamp||vc(Pg.wc_sessionRequest.req.ttl);await this.client.pendingRequest.set(t,{id:t,topic:n,params:r,verifyContext:i}),o&&this.client.core.expirer.set(t,o)},this.sendRequest=async e=>{const{topic:t,method:n,params:r,expiry:i,relayRpcId:o,clientRpcId:s,throwOnFailedPublish:a}=e,c=Zp(n,r,s);if(cc()&&Rg.includes(n)){const e=Ja(JSON.stringify(c));this.client.core.verify.register({attestationId:e})}const l=await this.client.core.crypto.encode(t,c),u=Pg[n].req;return i&&(u.ttl=i),o&&(u.id=o),this.client.core.history.set(t,c),a?(u.internal=Jg(Kg({},u.internal),{throwOnFailedPublish:!0}),await this.client.core.relayer.publish(t,l,u)):this.client.core.relayer.publish(t,l,u).catch((e=>this.client.logger.error(e))),c.id},this.sendResult=async e=>{const{id:t,topic:n,result:r,throwOnFailedPublish:i}=e,o=Xp(t,r),s=await this.client.core.crypto.encode(n,o),a=await this.client.core.history.get(n,t),c=Pg[a.request.method].res;i?(c.internal=Jg(Kg({},c.internal),{throwOnFailedPublish:!0}),await this.client.core.relayer.publish(n,s,c)):this.client.core.relayer.publish(n,s,c).catch((e=>this.client.logger.error(e))),await this.client.core.history.resolve(o)},this.sendError=async(e,t,n)=>{const r=$p(e,n),i=await this.client.core.crypto.encode(t,r),o=await this.client.core.history.get(t,e),s=Pg[o.request.method].res;this.client.core.relayer.publish(t,i,s),await this.client.core.history.resolve(r)},this.cleanup=async()=>{const e=[],t=[];this.client.session.getAll().forEach((t=>{let n=!1;bc(t.expiry)&&(n=!0),this.client.core.crypto.keychain.has(t.topic)||(n=!0),n&&e.push(t.topic)})),this.client.proposal.getAll().forEach((e=>{bc(e.expiryTimestamp)&&t.push(e.id)})),await Promise.all([...e.map((e=>this.deleteSession({topic:e}))),...t.map((e=>this.deleteProposal(e)))])},this.onRelayEventRequest=async e=>{this.requestQueue.queue.push(e),await this.processRequestsQueue()},this.processRequestsQueue=async()=>{if(this.requestQueue.state!==Fg){for(this.client.logger.info(`Request queue starting with ${this.requestQueue.queue.length} requests`);this.requestQueue.queue.length>0;){this.requestQueue.state=Fg;const t=this.requestQueue.queue.shift();if(t)try{this.processRequest(t),await new Promise((e=>setTimeout(e,300)))}catch(e){this.client.logger.warn(e)}}this.requestQueue.state=Og}else this.client.logger.info("Request queue already active, skipping...")},this.processRequest=e=>{const{topic:t,payload:n}=e,r=n.method;switch(r){case"wc_sessionPropose":return this.onSessionProposeRequest(t,n);case"wc_sessionSettle":return this.onSessionSettleRequest(t,n);case"wc_sessionUpdate":return this.onSessionUpdateRequest(t,n);case"wc_sessionExtend":return this.onSessionExtendRequest(t,n);case"wc_sessionPing":return this.onSessionPingRequest(t,n);case"wc_sessionDelete":return this.onSessionDeleteRequest(t,n);case"wc_sessionRequest":return this.onSessionRequest(t,n);case"wc_sessionEvent":return this.onSessionEventRequest(t,n);default:return this.client.logger.info(`Unsupported request method ${r}`)}},this.onRelayEventResponse=async e=>{const{topic:t,payload:n}=e,r=(await this.client.core.history.get(t,n.id)).request.method;switch(r){case"wc_sessionPropose":return this.onSessionProposeResponse(t,n);case"wc_sessionSettle":return this.onSessionSettleResponse(t,n);case"wc_sessionUpdate":return this.onSessionUpdateResponse(t,n);case"wc_sessionExtend":return this.onSessionExtendResponse(t,n);case"wc_sessionPing":return this.onSessionPingResponse(t,n);case"wc_sessionRequest":return this.onSessionRequestResponse(t,n);default:return this.client.logger.info(`Unsupported response method ${r}`)}},this.onRelayEventUnknownPayload=e=>{const{topic:t}=e,{message:n}=jc("MISSING_OR_INVALID",`Decoded payload on topic ${t} is not identifiable as a JSON-RPC request or a response.`);throw new Error(n)},this.onSessionProposeRequest=async(e,t)=>{const{params:n,id:r}=t;try{this.isValidConnect(Kg({},t.params));const i=n.expiryTimestamp||vc(Pg.wc_sessionPropose.req.ttl),o=Kg({id:r,pairingTopic:e,expiryTimestamp:i},n);await this.setProposal(r,o);const s=Ja(JSON.stringify(t)),a=await this.getVerifyContext(s,o.proposer.metadata);this.client.events.emit("session_proposal",{id:r,params:o,verifyContext:a})}catch(i){await this.sendError(r,e,i),this.client.logger.error(i)}},this.onSessionProposeResponse=async(e,t)=>{const{id:n}=t;if(uf(t)){const{result:r}=t;this.client.logger.trace({type:"method",method:"onSessionProposeResponse",result:r});const i=this.client.proposal.get(n);this.client.logger.trace({type:"method",method:"onSessionProposeResponse",proposal:i});const o=i.proposer.publicKey;this.client.logger.trace({type:"method",method:"onSessionProposeResponse",selfPublicKey:o});const s=r.responderPublicKey;this.client.logger.trace({type:"method",method:"onSessionProposeResponse",peerPublicKey:s});const a=await this.client.core.crypto.generateSharedKey(o,s);this.client.logger.trace({type:"method",method:"onSessionProposeResponse",sessionTopic:a});const c=await this.client.core.relayer.subscribe(a);this.client.logger.trace({type:"method",method:"onSessionProposeResponse",subscriptionId:c}),await this.client.core.pairing.activate({topic:e})}else df(t)&&(await this.client.proposal.delete(n,zc("USER_DISCONNECTED")),this.events.emit(xc("session_connect"),{error:t.error}))},this.onSessionSettleRequest=async(e,t)=>{const{id:n,params:r}=t;try{this.isValidSessionSettleRequest(r);const{relay:n,controller:i,expiry:o,namespaces:s,sessionProperties:a,pairingTopic:c}=t.params,l=Kg({topic:e,relay:n,expiry:o,namespaces:s,acknowledged:!0,pairingTopic:c,requiredNamespaces:{},optionalNamespaces:{},controller:i.publicKey,self:{publicKey:"",metadata:this.client.metadata},peer:{publicKey:i.publicKey,metadata:i.metadata}},a&&{sessionProperties:a});await this.sendResult({id:t.id,topic:e,result:!0}),this.events.emit(xc("session_connect"),{session:l}),this.cleanupDuplicatePairings(l)}catch(i){await this.sendError(n,e,i),this.client.logger.error(i)}},this.onSessionSettleResponse=async(e,t)=>{const{id:n}=t;uf(t)?(await this.client.session.update(e,{acknowledged:!0}),this.events.emit(xc("session_approve",n),{})):df(t)&&(await this.client.session.delete(e,zc("USER_DISCONNECTED")),this.events.emit(xc("session_approve",n),{error:t.error}))},this.onSessionUpdateRequest=async(e,t)=>{const{params:n,id:r}=t;try{const t=`${e}_session_update`,i=al.get(t);if(i&&this.isRequestOutOfSync(i,r))return void this.client.logger.info(`Discarding out of sync request - ${r}`);this.isValidUpdate(Kg({topic:e},n)),await this.client.session.update(e,{namespaces:n.namespaces}),await this.sendResult({id:r,topic:e,result:!0}),this.client.events.emit("session_update",{id:r,topic:e,params:n}),al.set(t,r)}catch(i){await this.sendError(r,e,i),this.client.logger.error(i)}},this.isRequestOutOfSync=(e,t)=>parseInt(t.toString().slice(0,-3))<=parseInt(e.toString().slice(0,-3)),this.onSessionUpdateResponse=(e,t)=>{const{id:n}=t;uf(t)?this.events.emit(xc("session_update",n),{}):df(t)&&this.events.emit(xc("session_update",n),{error:t.error})},this.onSessionExtendRequest=async(e,t)=>{const{id:n}=t;try{this.isValidExtend({topic:e}),await this.setExpiry(e,vc(Dg)),await this.sendResult({id:n,topic:e,result:!0}),this.client.events.emit("session_extend",{id:n,topic:e})}catch(rp){await this.sendError(n,e,rp),this.client.logger.error(rp)}},this.onSessionExtendResponse=(e,t)=>{const{id:n}=t;uf(t)?this.events.emit(xc("session_extend",n),{}):df(t)&&this.events.emit(xc("session_extend",n),{error:t.error})},this.onSessionPingRequest=async(e,t)=>{const{id:n}=t;try{this.isValidPing({topic:e}),await this.sendResult({id:n,topic:e,result:!0}),this.client.events.emit("session_ping",{id:n,topic:e})}catch(rp){await this.sendError(n,e,rp),this.client.logger.error(rp)}},this.onSessionPingResponse=(e,t)=>{const{id:n}=t;setTimeout((()=>{uf(t)?this.events.emit(xc("session_ping",n),{}):df(t)&&this.events.emit(xc("session_ping",n),{error:t.error})}),500)},this.onSessionDeleteRequest=async(e,t)=>{const{id:n}=t;try{this.isValidDisconnect({topic:e,reason:t.params}),await Promise.all([new Promise((t=>{this.client.core.relayer.once(dh,(async()=>{t(await this.deleteSession({topic:e,id:n}))}))})),this.sendResult({id:n,topic:e,result:!0}),this.cleanupPendingSentRequestsForTopic({topic:e,error:zc("USER_DISCONNECTED")})])}catch(rp){this.client.logger.error(rp)}},this.onSessionRequest=async(e,t)=>{const{id:n,params:r}=t;try{this.isValidRequest(Kg({topic:e},r));const t=Ja(JSON.stringify(Zp("wc_sessionRequest",r,n))),i=this.client.session.get(e),o={id:n,topic:e,params:r,verifyContext:await this.getVerifyContext(t,i.peer.metadata)};await this.setPendingSessionRequest(o),this.addSessionRequestToSessionRequestQueue(o),this.processSessionRequestQueue()}catch(i){await this.sendError(n,e,i),this.client.logger.error(i)}},this.onSessionRequestResponse=(e,t)=>{const{id:n}=t;uf(t)?this.events.emit(xc("session_request",n),{result:t.result}):df(t)&&this.events.emit(xc("session_request",n),{error:t.error})},this.onSessionEventRequest=async(e,t)=>{const{id:n,params:r}=t;try{const t=`${e}_session_event_${r.event.name}`,i=al.get(t);if(i&&this.isRequestOutOfSync(i,n))return void this.client.logger.info(`Discarding out of sync request - ${n}`);this.isValidEmit(Kg({topic:e},r)),this.client.events.emit("session_event",{id:n,topic:e,params:r}),al.set(t,n)}catch(i){await this.sendError(n,e,i),this.client.logger.error(i)}},this.addSessionRequestToSessionRequestQueue=e=>{this.sessionRequestQueue.queue.push(e)},this.cleanupAfterResponse=e=>{this.deletePendingSessionRequest(e.response.id,{message:"fulfilled",code:0}),setTimeout((()=>{this.sessionRequestQueue.state=Og,this.processSessionRequestQueue()}),(0,Ea.toMiliseconds)(this.requestQueueDelay))},this.cleanupPendingSentRequestsForTopic=({topic:e,error:t})=>{const n=this.client.core.history.pending;n.length>0&&n.filter((t=>t.topic===e&&"wc_sessionRequest"===t.request.method)).forEach((e=>{this.events.emit(xc("session_request",e.request.id),{error:t})}))},this.processSessionRequestQueue=()=>{if(this.sessionRequestQueue.state===Fg)return void this.client.logger.info("session request queue is already active.");const e=this.sessionRequestQueue.queue[0];if(e)try{this.sessionRequestQueue.state=Fg,this.client.events.emit("session_request",e)}catch(t){this.client.logger.error(t)}else this.client.logger.info("session request queue is empty.")},this.onPairingCreated=e=>{if(e.active)return;const t=this.client.proposal.getAll().find((t=>t.pairingTopic===e.topic));t&&this.onSessionProposeRequest(e.topic,Zp("wc_sessionPropose",{requiredNamespaces:t.requiredNamespaces,optionalNamespaces:t.optionalNamespaces,relays:t.relays,proposer:t.proposer,sessionProperties:t.sessionProperties},t.id))},this.isValidConnect=async e=>{if(!Xc(e)){const{message:t}=jc("MISSING_OR_INVALID",`connect() params: ${JSON.stringify(e)}`);throw new Error(t)}const{pairingTopic:t,requiredNamespaces:n,optionalNamespaces:r,sessionProperties:i,relays:o}=e;if(qc(t)||await this.isValidPairingTopic(t),!function(e,t){let n=!1;return t&&!e?n=!0:e&&Uc(e)&&e.length&&e.forEach((e=>{n=Zc(e)})),n}(o,!0)){const{message:e}=jc("MISSING_OR_INVALID",`connect() relays: ${o}`);throw new Error(e)}!qc(n)&&0!==Bc(n)&&this.validateNamespaces(n,"requiredNamespaces"),!qc(r)&&0!==Bc(r)&&this.validateNamespaces(r,"optionalNamespaces"),qc(i)||this.validateSessionProps(i,"sessionProperties")},this.validateNamespaces=(e,t)=>{const n=function(e,t,n){let r=null;if(e&&Bc(e)){const i=Qc(e,t);i&&(r=i);const o=Hc(e,t,n);o&&(r=o)}else r=jc("MISSING_OR_INVALID",`${t}, ${n} should be an object with data`);return r}(e,"connect()",t);if(n)throw new Error(n.message)},this.isValidApprove=async e=>{if(!Xc(e))throw new Error(jc("MISSING_OR_INVALID",`approve() params: ${e}`).message);const{id:t,namespaces:n,relayProtocol:r,sessionProperties:i}=e;await this.isValidProposalId(t);const o=this.client.proposal.get(t),s=Yc(n,"approve()");if(s)throw new Error(s.message);const a=nl(o.requiredNamespaces,n,"approve()");if(a)throw new Error(a.message);if(!Vc(r,!0)){const{message:e}=jc("MISSING_OR_INVALID",`approve() relayProtocol: ${r}`);throw new Error(e)}qc(i)||this.validateSessionProps(i,"sessionProperties")},this.isValidReject=async e=>{if(!Xc(e)){const{message:t}=jc("MISSING_OR_INVALID",`reject() params: ${e}`);throw new Error(t)}const{id:t,reason:n}=e;if(await this.isValidProposalId(t),!function(e){return!!(e&&"object"==typeof e&&e.code&&Kc(e.code,!1)&&e.message&&Vc(e.message,!1))}(n)){const{message:e}=jc("MISSING_OR_INVALID",`reject() reason: ${JSON.stringify(n)}`);throw new Error(e)}},this.isValidSessionSettleRequest=e=>{if(!Xc(e)){const{message:t}=jc("MISSING_OR_INVALID",`onSessionSettleRequest() params: ${e}`);throw new Error(t)}const{relay:t,controller:n,namespaces:r,expiry:i}=e;if(!Zc(t)){const{message:e}=jc("MISSING_OR_INVALID","onSessionSettleRequest() relay protocol should be a string");throw new Error(e)}const o=function(e,t){let n=null;return Vc(e?.publicKey,!1)||(n=jc("MISSING_OR_INVALID",`${t} controller public key should be a string`)),n}(n,"onSessionSettleRequest()");if(o)throw new Error(o.message);const s=Yc(r,"onSessionSettleRequest()");if(s)throw new Error(s.message);if(bc(i)){const{message:e}=jc("EXPIRED","onSessionSettleRequest()");throw new Error(e)}},this.isValidUpdate=async e=>{if(!Xc(e)){const{message:t}=jc("MISSING_OR_INVALID",`update() params: ${e}`);throw new Error(t)}const{topic:t,namespaces:n}=e;await this.isValidSessionTopic(t);const r=this.client.session.get(t),i=Yc(n,"update()");if(i)throw new Error(i.message);const o=nl(r.requiredNamespaces,n,"update()");if(o)throw new Error(o.message)},this.isValidExtend=async e=>{if(!Xc(e)){const{message:t}=jc("MISSING_OR_INVALID",`extend() params: ${e}`);throw new Error(t)}const{topic:t}=e;await this.isValidSessionTopic(t)},this.isValidRequest=async e=>{if(!Xc(e)){const{message:t}=jc("MISSING_OR_INVALID",`request() params: ${e}`);throw new Error(t)}const{topic:t,request:n,chainId:r,expiry:i}=e;await this.isValidSessionTopic(t);const{namespaces:o}=this.client.session.get(t);if(!$c(o,r)){const{message:e}=jc("MISSING_OR_INVALID",`request() chainId: ${r}`);throw new Error(e)}if(!function(e){return!(qc(e)||!Vc(e.method,!1))}(n)){const{message:e}=jc("MISSING_OR_INVALID",`request() ${JSON.stringify(n)}`);throw new Error(e)}if(!el(o,r,n.method)){const{message:e}=jc("MISSING_OR_INVALID",`request() method: ${n.method}`);throw new Error(e)}if(i&&!function(e,t){return Kc(e,!1)&&e<=t.max&&e>=t.min}(i,Mg)){const{message:e}=jc("MISSING_OR_INVALID",`request() expiry: ${i}. Expiry must be a number (in seconds) between ${Mg.min} and ${Mg.max}`);throw new Error(e)}},this.isValidRespond=async e=>{var t;if(!Xc(e)){const{message:t}=jc("MISSING_OR_INVALID",`respond() params: ${e}`);throw new Error(t)}const{topic:n,response:r}=e;try{await this.isValidSessionTopic(n)}catch(i){throw null!=(t=e?.response)&&t.id&&this.cleanupAfterResponse(e),i}if(!function(e){return!(qc(e)||qc(e.result)&&qc(e.error)||!Kc(e.id,!1)||!Vc(e.jsonrpc,!1))}(r)){const{message:e}=jc("MISSING_OR_INVALID",`respond() response: ${JSON.stringify(r)}`);throw new Error(e)}},this.isValidPing=async e=>{if(!Xc(e)){const{message:t}=jc("MISSING_OR_INVALID",`ping() params: ${e}`);throw new Error(t)}const{topic:t}=e;await this.isValidSessionOrPairingTopic(t)},this.isValidEmit=async e=>{if(!Xc(e)){const{message:t}=jc("MISSING_OR_INVALID",`emit() params: ${e}`);throw new Error(t)}const{topic:t,event:n,chainId:r}=e;await this.isValidSessionTopic(t);const{namespaces:i}=this.client.session.get(t);if(!$c(i,r)){const{message:e}=jc("MISSING_OR_INVALID",`emit() chainId: ${r}`);throw new Error(e)}if(!function(e){return!(qc(e)||!Vc(e.name,!1))}(n)){const{message:e}=jc("MISSING_OR_INVALID",`emit() event: ${JSON.stringify(n)}`);throw new Error(e)}if(!tl(i,r,n.name)){const{message:e}=jc("MISSING_OR_INVALID",`emit() event: ${JSON.stringify(n)}`);throw new Error(e)}},this.isValidDisconnect=async e=>{if(!Xc(e)){const{message:t}=jc("MISSING_OR_INVALID",`disconnect() params: ${e}`);throw new Error(t)}const{topic:t}=e;await this.isValidSessionOrPairingTopic(t)},this.getVerifyContext=async(e,t)=>{const n={verified:{verifyUrl:t.verifyUrl||Rh,validation:"UNKNOWN",origin:t.url||""}};try{const r=await this.client.core.verify.resolve({attestationId:e,verifyUrl:t.verifyUrl});r&&(n.verified.origin=r.origin,n.verified.isScam=r.isScam,n.verified.validation=r.origin===new URL(t.url).origin?"VALID":"INVALID")}catch(rp){this.client.logger.info(rp)}return this.client.logger.info(`Verify context: ${JSON.stringify(n)}`),n},this.validateSessionProps=(e,t)=>{Object.values(e).forEach((e=>{if(!Vc(e,!1)){const{message:n}=jc("MISSING_OR_INVALID",`${t} must be in Record<string, string> format. Received: ${JSON.stringify(e)}`);throw new Error(n)}}))}}async isInitialized(){if(!this.initialized){const{message:e}=jc("NOT_INITIALIZED",this.name);throw new Error(e)}await this.client.core.relayer.confirmOnlineStateOrThrow()}registerRelayerEvents(){this.client.core.relayer.on(oh,(async e=>{const{topic:t,message:n}=e;if(this.ignoredPayloadTypes.includes(this.client.core.crypto.getPayloadType(n)))return;const r=await this.client.core.crypto.decode(t,n);try{cf(r)?(this.client.core.history.set(t,r),this.onRelayEventRequest({topic:t,payload:r})):lf(r)?(await this.client.core.history.resolve(r),await this.onRelayEventResponse({topic:t,payload:r}),this.client.core.history.delete(t,r.id)):this.onRelayEventUnknownPayload({topic:t,payload:r})}catch(rp){this.client.logger.error(rp)}}))}registerExpirerEvents(){this.client.core.expirer.on(Mh,(async e=>{const{topic:t,id:n}=yc(e.target);if(n&&this.client.pendingRequest.keys.includes(n))return await this.deletePendingSessionRequest(n,jc("EXPIRED"),!0);t?this.client.session.keys.includes(t)&&(await this.deleteSession({topic:t,expirerHasDeleted:!0}),this.client.events.emit("session_expire",{topic:t})):n&&(await this.deleteProposal(n,!0),this.client.events.emit("proposal_expire",{id:n}))}))}registerPairingEvents(){this.client.core.pairing.events.on(Th,(e=>this.onPairingCreated(e)))}isValidPairingTopic(e){if(!Vc(e,!1)){const{message:t}=jc("MISSING_OR_INVALID",`pairing topic should be a string: ${e}`);throw new Error(t)}if(!this.client.core.pairing.pairings.keys.includes(e)){const{message:t}=jc("NO_MATCHING_KEY",`pairing topic doesn't exist: ${e}`);throw new Error(t)}if(bc(this.client.core.pairing.pairings.get(e).expiry)){const{message:t}=jc("EXPIRED",`pairing topic: ${e}`);throw new Error(t)}}async isValidSessionTopic(e){if(!Vc(e,!1)){const{message:t}=jc("MISSING_OR_INVALID",`session topic should be a string: ${e}`);throw new Error(t)}if(!this.client.session.keys.includes(e)){const{message:t}=jc("NO_MATCHING_KEY",`session topic doesn't exist: ${e}`);throw new Error(t)}if(bc(this.client.session.get(e).expiry)){await this.deleteSession({topic:e});const{message:t}=jc("EXPIRED",`session topic: ${e}`);throw new Error(t)}if(!this.client.core.crypto.keychain.has(e)){const{message:t}=jc("MISSING_OR_INVALID",`session topic does not exist in keychain: ${e}`);throw await this.deleteSession({topic:e}),new Error(t)}}async isValidSessionOrPairingTopic(e){if(this.client.session.keys.includes(e))await this.isValidSessionTopic(e);else{if(!this.client.core.pairing.pairings.keys.includes(e)){if(Vc(e,!1)){const{message:t}=jc("NO_MATCHING_KEY",`session or pairing topic doesn't exist: ${e}`);throw new Error(t)}{const{message:t}=jc("MISSING_OR_INVALID",`session or pairing topic should be a string: ${e}`);throw new Error(t)}}this.isValidPairingTopic(e)}}async isValidProposalId(e){if(!function(e){return"number"==typeof e}(e)){const{message:t}=jc("MISSING_OR_INVALID",`proposal id should be a number: ${e}`);throw new Error(t)}if(!this.client.proposal.keys.includes(e)){const{message:t}=jc("NO_MATCHING_KEY",`proposal id doesn't exist: ${e}`);throw new Error(t)}if(bc(this.client.proposal.get(e).expiryTimestamp)){await this.deleteProposal(e);const{message:t}=jc("EXPIRED",`proposal id: ${e}`);throw new Error(t)}}}class Hg extends _g{constructor(e,t){super(e,t,"proposal",Cg),this.core=e,this.logger=t}}class Gg extends _g{constructor(e,t){super(e,t,"session",Cg),this.core=e,this.logger=t}}class Qg extends _g{constructor(e,t){super(e,t,"request",Cg,(e=>e.id)),this.core=e,this.logger=t}}class Yg extends vp{constructor(e){super(e),this.protocol="wc",this.version=2,this.name=Ng,this.events=new s_.EventEmitter,this.on=(e,t)=>this.events.on(e,t),this.once=(e,t)=>this.events.once(e,t),this.off=(e,t)=>this.events.off(e,t),this.removeListener=(e,t)=>this.events.removeListener(e,t),this.removeAllListeners=e=>this.events.removeAllListeners(e),this.connect=async e=>{try{return await this.engine.connect(e)}catch(t){throw this.logger.error(t.message),t}},this.pair=async e=>{try{return await this.engine.pair(e)}catch(t){throw this.logger.error(t.message),t}},this.approve=async e=>{try{return await this.engine.approve(e)}catch(t){throw this.logger.error(t.message),t}},this.reject=async e=>{try{return await this.engine.reject(e)}catch(t){throw this.logger.error(t.message),t}},this.update=async e=>{try{return await this.engine.update(e)}catch(t){throw this.logger.error(t.message),t}},this.extend=async e=>{try{return await this.engine.extend(e)}catch(t){throw this.logger.error(t.message),t}},this.request=async e=>{try{return await this.engine.request(e)}catch(t){throw this.logger.error(t.message),t}},this.respond=async e=>{try{return await this.engine.respond(e)}catch(t){throw this.logger.error(t.message),t}},this.ping=async e=>{try{return await this.engine.ping(e)}catch(t){throw this.logger.error(t.message),t}},this.emit=async e=>{try{return await this.engine.emit(e)}catch(t){throw this.logger.error(t.message),t}},this.disconnect=async e=>{try{return await this.engine.disconnect(e)}catch(t){throw this.logger.error(t.message),t}},this.find=e=>{try{return this.engine.find(e)}catch(t){throw this.logger.error(t.message),t}},this.getPendingSessionRequests=()=>{try{return this.engine.getPendingSessionRequests()}catch(e){throw this.logger.error(e.message),e}},this.name=e?.name||Ng,this.metadata=e?.metadata||(0,Na.g)()||{name:"",description:"",url:"",icons:[""]};const t=typeof e?.logger<"u"&&"string"!=typeof e?.logger?e.logger:H_()(op({level:e?.logger||Ag}));this.core=e?.core||new kg(e),this.logger=ap(t,this.name),this.session=new Gg(this.core,this.logger),this.proposal=new Hg(this.core,this.logger),this.pendingRequest=new Qg(this.core,this.logger),this.engine=new Wg(this)}static async init(e){const t=new Yg(e);return await t.initialize(),t}get context(){return sp(this.logger)}get pairing(){return this.core.pairing.pairings}async initialize(){this.logger.trace("Initialized");try{await this.core.start(),await this.session.init(),await this.proposal.init(),await this.pendingRequest.init(),await this.engine.init(),this.core.verify.init({verifyUrl:this.metadata.verifyUrl}),this.logger.info("SignClient Initialization Success")}catch(e){throw this.logger.info("SignClient Initialization Failure"),this.logger.error(e.message),e}}}class Zg extends Error{messageWc;codeWc;data;name="InvalidReceivedSessionNamespace";constructor(e,t,n,r){super(),this.messageWc=e,this.codeWc=t,this.data=r;const i=`${t}: ${e}.`;this.message=r?"incomplete"===n?` ${i} "${r}" is missing in the session namespace.`:` ${i} "${r}" is invalid.`:i}}class Xg extends Error{name="NotConnected";constructor(){super("Not connected, no active session")}}class $g extends Error{name="InvalidSession";constructor(e){super(e)}}class ey extends Error{requiredScopes;name="MissingRequiredScope";constructor(e){super(`Required permission scope were not granted for "${e}"`),this.requiredScopes=e}}class ty extends Error{name="ActiveNetworkUnspecified";constructor(){super('Please specify the active network using the "setActiveNetwork" method.')}}class ny extends Error{name="ActiveAccountUnspecified";constructor(){super('Please specify the active account using the "setActiveAccount" method.')}}class ry extends Error{network;pkh;name="InvalidNetworkOrAccount";constructor(e,t){super(`No permission. The combinaison "${e}" and "${t}" is not part of the active session.`),this.network=e,this.pkh=t}}var iy=n(96763);const oy="tezos",sy=new Ae("WalletConnectCommunicationClient");var ay,cy;!function(e){e.GET_ACCOUNTS="tezos_getAccounts",e.OPERATION_REQUEST="tezos_send",e.SIGN="tezos_sign"}(ay||(ay={})),function(e){e.CHAIN_CHANGED="chainChanged",e.ACCOUNTS_CHANGED="accountsChanged",e.REQUEST_ACKNOWLEDGED="requestAcknowledged"}(cy||(cy={}));class ly extends $e{wcOptions;activeListeners=new Map;channelOpeningListeners=new Map;static instance;signClient;storage=new at;session;activeAccount;activeNetwork;disconnectionEvents=new Set;pingInterval;messageIds=[];constructor(e){super(),this.wcOptions=e,this.storage.onMessageHandler=this.onStorageMessageHandler.bind(this),this.storage.onErrorHandler=this.onStorageErrorHandler.bind(this)}static getInstance(e){return this.instance||(this.instance=new ly(e)),ly.instance}getTopicFromSession(e){return e.topic}async listenForEncryptedMessage(e,t){if(this.activeListeners.has(e))return;this.activeListeners.set(e,(async e=>{t(e)}))}async listenForChannelOpening(e){this.channelOpeningListeners.set("channelOpening",(async t=>{e(t)}))}async refreshState(){await this.closeSignClient();const e=await this.getSignClient(),t=e.session.keys.length-1;t>-1?(this.session=e.session.get(e.session.keys[t]),this.updateStorageWallet(this.session),this.setDefaultAccountAndNetwork()):this.clearState()}clearEvents(){this.signClient?.removeAllListeners("session_event"),this.signClient?.removeAllListeners("session_update"),this.signClient?.removeAllListeners("session_delete"),this.signClient?.removeAllListeners("session_expire"),this.signClient?.core.pairing.events.removeAllListeners("pairing_delete"),this.signClient?.core.pairing.events.removeAllListeners("pairing_expire")}abortErrorBuilder(){if(!this.messageIds.length)return;const e={type:B.Disconnect,id:this.messageIds.pop(),errorType:H.ABORTED_ERROR};this.session&&this.notifyListeners(this.getTopicFromSession(this.session),e),this.messageIds=[]}onStorageMessageHandler(e){if(sy.debug("onStorageMessageHandler",e),"RESET"===e)return this.abortErrorBuilder(),this.clearEvents(),this.signClient=void 0,void this.clearState();this.refreshState()}onStorageErrorHandler(e){sy.error("onStorageError",e)}async unsubscribeFromEncryptedMessages(){this.activeListeners.clear(),this.channelOpeningListeners.clear()}async unsubscribeFromEncryptedMessage(e){}async closeSignClient(){this.signClient?(await this.signClient.core.relayer.transportClose(),this.signClient.core.events.removeAllListeners(),this.signClient.core.relayer.events.removeAllListeners(),this.signClient.core.heartbeat.stop(),this.signClient.core.relayer.provider.events.removeAllListeners(),this.signClient.core.relayer.subscriber.events.removeAllListeners(),this.signClient.core.relayer.provider.connection.events.removeAllListeners(),this.clearEvents(),this.signClient=void 0):sy.error("No client active")}async ping(){const e=await this.getSignClient();e&&this.session?e.ping({topic:this.session.topic}).then((()=>{this.messageIds.length&&this.acknowledgeRequest(this.messageIds[0])})).catch((e=>{sy.error(`ping catch handler: ${e.message}`)})).then((()=>{clearInterval(this.pingInterval),this.pingInterval=void 0})):sy.error("No session available.")}async checkWalletReadiness(e){this.pingInterval||(this.ping(),this.pingInterval=setInterval((()=>{this.ping()}),3e4))}async sendMessage(e,t){const n=new He,r=await n.deserialize(e);if(r)switch(this.messageIds.unshift(r.id),r.type){case B.PermissionRequest:this.requestPermissions(r);break;case B.OperationRequest:this.sendOperations(r);break;case B.SignPayloadRequest:this.signPayload(r);break;default:return}}async fetchAccounts(e,t){const n=await this.getSignClient();if(n)return n.request({topic:e,chainId:t,request:{method:ay.GET_ACCOUNTS,params:{}}})}async notifyListenersWithPermissionResponse(e,t,n){let r;if(e.sessionProperties?.pubkey&&e.sessionProperties?.algo&&e.sessionProperties?.address)r=e.sessionProperties?.pubkey,sy.log('[requestPermissions]: Have pubkey in sessionProperties, skipping "get_accounts" call',e.sessionProperties);else{const n=this.getTezosNamespace(e.namespaces).accounts[0].split(":",3)[2];if(n.startsWith("edpk"))r=n;else{if(t.type!==this.wcOptions.network)throw new Error("Network in permission request is not the same as preferred network!");const n=await this.fetchAccounts(e.topic,`${oy}:${t.type}`);if(!n||n.length<1)throw new Error("No account shared by wallet");if(n.some((e=>!e.pubkey)))throw new Error("Public Key in `tezos_getAccounts` is empty!");r=n[0]?.pubkey}}if(!r)throw new Error("Public Key in `tezos_getAccounts` is empty!");const i={type:B.PermissionResponse,appMetadata:{senderId:this.getTopicFromSession(e),name:e.peer.metadata.name,icon:e.peer.metadata.icons[0]},publicKey:r,network:t,scopes:[q.SIGN,q.OPERATION_REQUEST],id:n??this.messageIds.pop()??"",walletType:"implicit"};this.notifyListeners(this.getTopicFromSession(e),i)}async requestPermissions(e){if(sy.log("#### Requesting permissions"),!this.getPermittedMethods().includes(ay.GET_ACCOUNTS))throw new ey(ay.GET_ACCOUNTS);if(this.activeAccount)try{await this.openSession()}catch(t){return void sy.error(t.message)}this.setDefaultAccountAndNetwork(),this.notifyListenersWithPermissionResponse(this.getSession(),e.network)}async signPayload(e){const t=await this.getSignClient();if(!t)return;const n=this.getSession();if(!this.getPermittedMethods().includes(ay.SIGN))throw new ey(ay.SIGN);const r=this.getActiveNetwork(),i=await this.getPKH();this.validateNetworkAndAccount(r,i),this.checkWalletReadiness(this.getTopicFromSession(n)),t.request({topic:n.topic,chainId:`${oy}:${r}`,request:{method:ay.SIGN,params:{account:i,payload:e.payload}}}).then((t=>{const r={type:B.SignPayloadResponse,signingType:e.signingType,signature:t?.signature,id:this.messageIds.pop()};this.notifyListeners(this.getTopicFromSession(n),r),this.session&&this.messageIds.length&&this.checkWalletReadiness(this.getTopicFromSession(n))})).catch((async()=>{const e={type:B.Error,id:this.messageIds.pop(),errorType:H.ABORTED_ERROR};this.notifyListeners(this.getTopicFromSession(n),e),this.session&&this.messageIds.length&&this.checkWalletReadiness(this.getTopicFromSession(n))}))}async sendOperations(e){const t=await this.getSignClient();if(!t)return;const n=this.getSession();if(!this.getPermittedMethods().includes(ay.OPERATION_REQUEST))throw new ey(ay.OPERATION_REQUEST);const r=this.getActiveNetwork(),i=await this.getPKH();this.validateNetworkAndAccount(r,i),this.checkWalletReadiness(this.getTopicFromSession(n)),t.request({topic:n.topic,chainId:`${oy}:${r}`,request:{method:ay.OPERATION_REQUEST,params:{account:i,operations:e.operationDetails}}}).then((e=>{const t={type:B.OperationResponse,transactionHash:e.operationHash??e.transactionHash??e.hash??"",id:this.messageIds.pop()??""};this.notifyListeners(this.getTopicFromSession(n),t),this.session&&this.messageIds.length&&this.checkWalletReadiness(this.getTopicFromSession(n))})).catch((async()=>{const e={type:B.Error,id:this.messageIds.pop(),errorType:H.ABORTED_ERROR};this.notifyListeners(this.getTopicFromSession(n),e),this.session&&this.messageIds.length&&this.checkWalletReadiness(this.getTopicFromSession(n))}))}isMobileSesion(e){const t=e.peer.metadata.redirect;return!(!t||!t.native||t.native.includes("http")||t.native.includes("ws"))}updateStorageWallet(e){const t=JSON.parse(localStorage.getItem(Y.LAST_SELECTED_WALLET)??"{}");t.key&&(this.isMobileSesion(e)?t.type="mobile":t.type="web",localStorage.setItem(Y.LAST_SELECTED_WALLET,JSON.stringify(t)))}async init(e=!1){sy.warn("init"),this.disconnectionEvents.size&&this.disconnectionEvents.clear(),e&&await this.closePairings();const t=await this.getSignClient();if(!t){const e=this.eventHandlers.get("CLOSE_ALERT");return void(e&&e())}const n=t.session.keys.length-1;if(n>-1)return this.session=t.session.get(t.session.keys[n]),this.updateStorageWallet(this.session),void this.setDefaultAccountAndNetwork();sy.warn("before create");const r={networks:[this.wcOptions.network],events:[],methods:[ay.GET_ACCOUNTS,ay.OPERATION_REQUEST,ay.SIGN]},i={networks:[this.wcOptions.network],events:[cy.REQUEST_ACKNOWLEDGED],methods:[]},o={requiredNamespaces:{[oy]:this.permissionScopeParamsToNamespaces(r)},optionalNamespaces:{[oy]:this.permissionScopeParamsToNamespaces(i)}},{uri:s,approval:a}=await t.connect(o),c=function(e,t,n){if(!e||!t||!n)return"";const r=e.indexOf(t),i=e.indexOf(n,r+1);if(-1===r||-1===i)throw new Error("String not found");return e.substring(r+1,i)}(s,":","@");if(!c)return;let l=!1;return t.core.pairing.ping({topic:c}).then((async()=>{if(!l){const e=this.eventHandlers.get("WC_ACK_NOTIFICATION");e&&e("pending")}})).catch((e=>{iy.error("--------",e)})),a().then((e=>{sy.debug("session open"),l=!0,this.updateStorageWallet(e);const t=new se(e.topic,e.peer.metadata.name,e.peer.publicKey,"3",e.topic,e.peer.metadata.name);this.channelOpeningListeners.forEach((e=>{e(t)})),e?.controller!==this.session?.controller&&(sy.debug("Controller doesnt match, closing active session",[e.pairingTopic]),this.activeAccount&&this.closeActiveSession(this.activeAccount,!1),this.session=void 0),this.session=this.session??e,sy.debug("Session is now",[e.pairingTopic]),this.validateReceivedNamespace(r,this.session.namespaces)})).catch((async e=>{if(l=!0,e.message&&e.message.length&&!e.message.toLowerCase().includes("expir"))if(sy.error("Error happened!",[e.message]),0===this.activeListeners.size){sy.debug("No active listeners",[]);const e=this.eventHandlers.get("WC_ACK_NOTIFICATION");e&&e("error")}else{const e=c??t.core.pairing.getPairings()[0]?.topic;sy.debug("New pairing topic?",[]);const n={type:B.Error,id:this.messageIds.pop(),errorType:H.ABORTED_ERROR};this.notifyListeners(e,n)}else{const e=this.eventHandlers.get("CLOSE_ALERT");e&&e(Q.WALLETCONNECT)}})),sy.warn("return uri and topic"),{uri:s??"",topic:c}}async close(){this.storage.backup(),this.abortErrorBuilder(),await this.closePairings(),this.unsubscribeFromEncryptedMessages()}subscribeToSessionEvents(e){e.on("session_event",(e=>{e.params.event.name===cy.REQUEST_ACKNOWLEDGED&&this.messageIds.length&&this.acknowledgeRequest(this.messageIds[0])})),e.on("session_update",(t=>{this.disconnectionEvents.add("session_update");const n=e.session.get(t.topic);n?(this.session=n,this.updateActiveAccount(t.params.namespaces,n)):sy.warn("session_update","topic does not exist")})),e.on("session_delete",(t=>{this.disconnectionEvents.add("session_delete"),this.disconnect(e,{type:"session",topic:t.topic})})),e.on("session_expire",(t=>{this.disconnectionEvents.add("session_expire"),this.disconnect(e,{type:"session",topic:t.topic})})),e.core.pairing.events.on("pairing_delete",(t=>{this.disconnectionEvents.add("pairing_delete"),this.disconnect(e,{type:"pairing",topic:t.topic})})),e.core.pairing.events.on("pairing_expire",(t=>{this.disconnectionEvents.add("pairing_expire"),this.disconnect(e,{type:"pairing",topic:t.topic})}))}async acknowledgeRequest(e){const t=this.getSession(),n={type:B.Acknowledge,id:e};this.notifyListeners(this.getTopicFromSession(t),n)}async updateActiveAccount(e,t){try{const n=this.getTezosNamespace(e).accounts;if(n.length){const[e,t,r]=n[0].split(":",3),i=this.getSession();let o;if(this.activeNetwork=t,r.startsWith("edpk"))o=r,this.activeAccount=await R(o);else{this.activeAccount=r;const e=await this.fetchAccounts(i.topic,`${oy}:${t}`);o=e?.find((({address:e})=>r===e))?.pubkey}if(!o)throw new Error("Public key for the new account not provided");this.notifyListeners(this.getTopicFromSession(i),{id:await U(),type:B.ChangeAccountRequest,publicKey:o,network:{type:t},scopes:[q.SIGN,q.OPERATION_REQUEST],walletType:"implicit"})}else this.notifyListenersWithPermissionResponse(t,{type:this.wcOptions.network},"session_update")}catch{}}async disconnect(e,t){let n;if("session"===t.type&&(n=await this.onSessionClosed(e,t.topic)),"pairing"===t.type&&(n=await this.onPairingClosed(e,t.topic)),!this.activeAccount){const e=this.eventHandlers.get("RESET_STATE");e&&e(Q.WALLETCONNECT)}n&&(this.notifyListeners(this.getTopicFromSession(n),{id:await U(),type:B.Disconnect}),this.clearState())}async onPairingClosed(e,t){const n=this.session?.pairingTopic===t?this.session:e.session.getAll().find((e=>e.pairingTopic===t));if(n){try{await e.disconnect({topic:n.topic,reason:{code:-1,message:"Pairing deleted"}})}catch(r){sy.warn(r)}return n}}async onSessionClosed(e,t){if(this.session&&this.session.topic===t){try{this.session.pairingTopic?await e.core.pairing.disconnect({topic:this.session.pairingTopic}):await e.core.pairing.disconnect({topic:e.core.pairing.getPairings()[0]?.topic})}catch(n){sy.warn(n.message)}return this.session}}async getPairingRequestInfo(){let e="",t="";try{sy.warn("getPairingRequestInfo");const{uri:n,topic:r}=await this.init(!0)??{uri:"",topic:""};e=n,t=r}catch(n){iy.warn(n.message)}return new ce(t,"WalletConnect",await U(),"3",await U(),e)}async closePairings(){await this.closeSessions();const e=await this.getSignClient();if(e){const t=e.pairing.getAll()??[];t.length&&await Promise.allSettled(t.map((t=>e.disconnect({topic:t.topic,reason:{code:0,message:"Force new connection"}}))))}await this.closeSignClient(),await this.storage.resetState(),this.storage.notify("RESET")}async closeSessions(){const e=await this.getSignClient();if(e){const t=e.session.getAll()??[];t.length&&await Promise.allSettled(t.map((t=>e.disconnect({topic:t.topic,reason:{code:0,message:"Force new connection"}}))))}this.clearState()}async openSession(){const e=await this.getSignClient(),t=e.core.pairing.getPairings()[0]?.topic;if(sy.debug("Starting open session with",[t]),!e)throw new Error("Transport error.");const n={networks:[this.wcOptions.network],events:[],methods:[ay.GET_ACCOUNTS,ay.OPERATION_REQUEST,ay.SIGN]},r={networks:[this.wcOptions.network],events:[cy.REQUEST_ACKNOWLEDGED],methods:[]},i={requiredNamespaces:{[oy]:this.permissionScopeParamsToNamespaces(n)},optionalNamespaces:{[oy]:this.permissionScopeParamsToNamespaces(r)},pairingTopic:t};sy.debug("Checking wallet readiness",[t]),this.checkWalletReadiness(t);try{sy.debug("connect",[t]);const{approval:r}=await e.connect(i);sy.debug("before await approal",[t]);const o=await r();sy.debug("after await approal, have session",[t]),o?.controller!==this.session?.controller&&(sy.debug("Controller doesnt match, closing active session",[t]),this.activeAccount&&this.closeActiveSession(this.activeAccount,!1),this.session=void 0),this.session=this.session??o,sy.debug("Session is now",[o.pairingTopic,t]),this.validateReceivedNamespace(n,this.session.namespaces)}catch(o){if(o.message&&o.message.length&&!o.message.toLowerCase().includes("expir"))if(sy.debug("Error happened!",[t]),sy.error(o.message),0===this.activeListeners.size){sy.debug("No active listeners",[t]);const e=this.eventHandlers.get("WC_ACK_NOTIFICATION");e&&e("error")}else{sy.debug("New pairing topic?",[t]);const e={type:B.Error,id:this.messageIds.pop(),errorType:H.ABORTED_ERROR};this.notifyListeners(t,e)}else{const e=this.eventHandlers.get("CLOSE_ALERT");e&&e(Q.WALLETCONNECT)}}if(this.session)return sy.debug("Have session, returning",[t]),this.session;throw sy.debug("Nope, aborting",[t]),new $g("No session set."+t)}permissionScopeParamsToNamespaces(e){return{chains:e.networks.map((e=>`${oy}:${e}`)),methods:e.methods,events:e.events??[]}}validateReceivedNamespace(e,t){if(!t[oy])throw this.clearState(),new Zg("All namespaces must be approved",zc("USER_REJECTED").code,"incomplete","tezos");this.validateMethods(e.methods,t[oy].methods),e.events&&this.validateEvents(e.events,t.tezos.events),this.validateAccounts(e.networks,t[oy].accounts)}validateMethods(e,t){const n=[];if(e.forEach((e=>{t.includes(e)||n.push(e)})),n.length>0)throw this.clearState(),new Zg("All methods must be approved",zc("USER_REJECTED_METHODS").code,"incomplete",n)}validateEvents(e,t){const n=[];if(e.forEach((e=>{t.includes(e)||n.push(e)})),n.length>0)throw this.clearState(),new Zg("All events must be approved",zc("USER_REJECTED_EVENTS").code,"incomplete",n)}validateAccounts(e,t){if(0===t.length)throw this.clearState(),new Zg("Accounts must not be empty",zc("USER_REJECTED_CHAINS").code,"incomplete");const n=[],r=[],i=[],o=[];if(t.forEach((e=>{const t=e.split(":");3!==t.length&&r.push(e),t[0]!==oy&&o.push(e);const i=t[1];n.includes(i)||n.push(i)})),r.length>0)throw this.clearState(),new Zg("Accounts must be CAIP-10 compliant",zc("USER_REJECTED_CHAINS").code,"invalid",r);if(o.length>0)throw this.clearState(),new Zg("Accounts must be defined in matching namespace",zc("UNSUPPORTED_ACCOUNTS").code,"invalid",o);if(e.forEach((e=>{n.includes(e)||i.push(e)})),i.length>0)throw this.clearState(),new Zg("All chains must have at least one account",zc("USER_REJECTED_CHAINS").code,"incomplete",i)}async closeActiveSession(e,t=!0){try{this.validateNetworkAndAccount(this.getActiveNetwork(),e)}catch(r){return void sy.error(r.message)}const n=this.getSession();if(t&&this.messageIds.length){const e={type:B.Disconnect,id:this.messageIds.pop(),errorType:H.ABORTED_ERROR};this.notifyListeners(this.getTopicFromSession(n),e),this.messageIds=[]}await(this.signClient?.disconnect({topic:n.topic,reason:{code:0,message:"Force new connection"}}))}validateNetworkAndAccount(e,t){if(!this.getTezosNamespace().accounts.includes(`${oy}:${e}:${t}`))throw new ry(e,t)}getActiveNetwork(){if(!this.activeNetwork)throw this.getSession(),new ty;return this.activeNetwork}setDefaultAccountAndNetwork(){const e=this.getAccounts();e.length&&(this.activeAccount=e[0]);const t=this.getNetworks();t.length&&(this.activeNetwork=t[0])}getAccounts(){return this.getTezosNamespace().accounts.map((e=>e.split(":")[2]))}getNetworks(){return this.getPermittedNetwork()}getTezosNamespace(e=this.getSession().namespaces){if(oy in e)return e[oy];throw new $g("Tezos not found in namespaces")}getPermittedMethods(){return this.getTezosRequiredNamespace().methods}getPermittedNetwork(){return this.getTezosRequiredNamespace().chains.map((e=>e.split(":")[1]))}getTezosRequiredNamespace(){return{chains:[`${oy}:${this.wcOptions.network}`],events:[],methods:["tezos_getAccounts","tezos_send","tezos_sign"]}}async notifyListeners(e,t){const n={...t,version:"2",senderId:e},r=new He,i=await r.serialize(n);this.activeListeners.forEach((e=>{e(i)}))}currentSession(){return this.session}async getSignClient(){if(void 0===this.signClient)try{this.signClient=await Yg.init(this.wcOptions.opts),this.subscribeToSessionEvents(this.signClient)}catch(e){return void sy.error(e.message)}return this.signClient}getSession(){if(!this.session)throw new Xg;return this.session}async getPKH(){if(!this.activeAccount)throw this.getSession(),new ny;return this.activeAccount}clearState(){this.session=void 0,this.activeAccount=void 0,this.activeNetwork=void 0}}class uy extends Ke{wcOptions;type=Q.WALLETCONNECT;constructor(e,t,n,r,i){super(e,ly.getInstance(i),new Ye(n,r)),this.wcOptions=i}static async isAvailable(){return Promise.resolve(!0)}async connect(){if(this._isConnected!==G.NOT_CONNECTED)return;this._isConnected=G.CONNECTING,await this.client.init();const e=await this.getPeers();return e.length>0&&e.map((async e=>this.listen(e.publicKey))),await this.startOpenChannelListener(),super.connect()}wasDisconnectedByWallet(){return!!this.client.disconnectionEvents.size}async hasPairings(){return!!await this.client.storage.hasPairings()||!!this.client.signClient?.pairing.getAll()?.length}async hasSessions(){return!!await this.client.storage.hasSessions()||!!this.client.signClient?.session.getAll()?.length}forceUpdate(e){this.client.storage.notify(e)}async getPeers(){const e=ly.getInstance(this.wcOptions).currentSession();return e?[{senderId:e.peer.publicKey,extensionId:e.peer.metadata.name,id:e.peer.publicKey,type:"walletconnect-pairing-response",name:"peer",publicKey:e.peer.publicKey,version:"first"}]:[]}async disconnect(){return await this.client.close(),super.disconnect()}async startOpenChannelListener(){}async doClientCleanup(){await this.client.unsubscribeFromEncryptedMessages()}getPairingRequestInfo(){return this.client.getPairingRequestInfo()}async listen(e){await this.client.listenForEncryptedMessage(e,(t=>{const n={origin:J.WALLETCONNECT,id:e};this.notifyListeners(t,n).catch((e=>{throw e}))})).catch((e=>{throw e}))}}const dy=new Ae("DappWalletConnectTransport");class _y extends uy{constructor(e,t,n,r){super(e,t,n,Y.TRANSPORT_WALLETCONNECT_PEERS_DAPP,r),this.client.listenForChannelOpening((async e=>{await this.addPeer(e),this._isConnected=G.CONNECTED,this.newPeerListener&&(this.newPeerListener(e),this.newPeerListener=void 0)}))}async listenForNewPeer(e){this.newPeerListener=e}async stopListeningForNewPeers(){dy.log("stopListeningForNewPeers"),this.newPeerListener=void 0}}var py=n(96763),fy=n(48287).Buffer;const my=new Ae("DAppClient");class hy extends Pe{description;blockExplorer;enableAppSwitching;enableMetrics;userId;network;events=new Xd;postMessageTransport;p2pTransport;walletConnectTransport;wcProjectId;wcRelayUrl;isGetActiveAccountHandled=!1;openRequests=new Map;_activeAccount=new x;_activePeer=new x;_initPromise;isInitPending=!1;activeAccountLoaded;appMetadataManager;disclaimerText;errorMessages;featuredWallets;storageValidator;bugReportStorage=new ot("beacon","bug_report");debounceEventResponse=!1;debounceSetActiveAccount=!1;constructor(e){super({storage:e&&e.storage?e.storage:new Je,...e}),this.description=e.description,this.wcProjectId=e.walletConnectOptions?.projectId||"24469fd0a06df227b6e5f7dc7de0ff4f",this.wcRelayUrl=e.walletConnectOptions?.relayUrl,this.featuredWallets=e.featuredWallets,this.events=new Xd(e.eventHandlers,e.disableDefaultEvents??!1),this.blockExplorer=e.blockExplorer??new t_,this.network=e.network??{type:e.preferredNetwork??V.MAINNET},xu(e.colorMode??te.LIGHT),this.disclaimerText=e.disclaimerText,this.errorMessages=e.errorMessages??{},this.appMetadataManager=new Ge(this.storage),this.storageValidator=new ct(this.storage),this.enableAppSwitching=void 0===e.enableAppSwitching||!!e.enableAppSwitching,this.enableMetrics=!!e.enableMetrics,this.storage.subscribeToStorageChanged((async e=>{if("storageCleared"===e.eventType)this.setActiveAccount(void 0);else if("entryModified"===e.eventType)if(e.key===this.storage.getPrefixedKey(Y.ACTIVE_ACCOUNT)){const t=e.newValue;if(t&&"undefined"!==t){const e=await this.getAccount(t);this.setActiveAccount(e)}else this.setActiveAccount(void 0)}else e.key===this.storage.getPrefixedKey(Y.ENABLE_METRICS)&&(this.enableMetrics=!!await this.storage.get(Y.ENABLE_METRICS))})),this.activeAccountLoaded=this.storage.get(Y.ACTIVE_ACCOUNT).then((async e=>{if(e){const t=await this.accountManager.getAccount(e);return await this.setActiveAccount(t),t}await this.setActiveAccount(void 0)})).catch((async e=>{await this.setActiveAccount(void 0),my.error(e)})),this.handleResponse=async(e,t)=>{const n=this.openRequests.get(e.id);if(my.log("### openRequest ###",n),my.log("handleResponse","Received message",e,t),my.log("### message ###",JSON.stringify(e)),my.log("### connectionInfo ###",t),"3"===e.version){const r=e;if(n&&r.message?.type===B.Acknowledge)this.analytics.track("event","DAppClient","Acknowledge received from Wallet"),my.log("handleResponse",`acknowledge message received for ${e.id}`),this.events.emit(Gd.ACKNOWLEDGE_RECEIVED,{message:r.message,extraInfo:{},walletInfo:await this.getWalletInfo()}).catch(py.error);else if(n){const i=r.message.blockchainData.appMetadata;r.message?.type===B.PermissionResponse&&i&&await this.appMetadataManager.addAppMetadata(i),r.message?.type===B.Error?n.reject(r.message):n.resolve({message:e,connectionInfo:t}),this.openRequests.delete(r.id)}else if(r.message?.type===B.Disconnect){this.analytics.track("event","DAppClient","Disconnect received from Wallet");const n=t.origin===J.P2P?this.p2pTransport:t.origin===J.WALLETCONNECT?this.walletConnectTransport:this.postMessageTransport??await this.transport;if(n){const t=(await n.getPeers()).find((t=>t.senderId===e.senderId));t&&await n.removePeer(t),await this.removeAccountsForPeerIds([e.senderId]),await this.events.emit(Gd.CHANNEL_CLOSED)}}else r.message?.type===B.ChangeAccountRequest?await this.onNewAccount(r.message,t):my.error("handleResponse","no request found for id ",e.id,e)}else{const r=e;if(n&&r.type===B.Acknowledge)my.log("handleResponse",`acknowledge message received for ${e.id}`),this.analytics.track("event","DAppClient","Acknowledge received from Wallet"),this.events.emit(Gd.ACKNOWLEDGE_RECEIVED,{message:r,extraInfo:{},walletInfo:await this.getWalletInfo()}).catch(py.error);else if(n)r.type===B.PermissionResponse&&r.appMetadata&&await this.appMetadataManager.addAppMetadata(r.appMetadata),r.type===B.Error||e.errorType?n.reject(r):n.resolve({message:e,connectionInfo:t}),this.openRequests.delete(r.id);else if(r.type===B.Disconnect||e?.typedMessage?.type===B.Disconnect){this.analytics.track("event","DAppClient","Disconnect received from Wallet");const n=t.origin===J.P2P?this.p2pTransport:t.origin===J.WALLETCONNECT?this.walletConnectTransport:this.postMessageTransport??await this.transport;if(n){const t=(await n.getPeers()).find((t=>t.senderId===e.senderId));t&&await n.removePeer(t),await this.removeAccountsForPeerIds([e.senderId]),await this.events.emit(Gd.CHANNEL_CLOSED)}}else r.type===B.ChangeAccountRequest?this.debounceEventResponse||(this.debounceEventResponse=!0,await this.onNewAccount(r,t),this.debounceEventResponse=!1):my.error("handleResponse","no request found for id ",e.id,e)}if(this._transport.isResolved()){await this.transport instanceof uy&&!this.openRequests.has("session_update")&&this.openRequests.set("session_update",new x)}},this.storageValidator.validate().then((async e=>{const t=await this.activeAccountLoaded;if(!e){const e=await this.getWalletInfo(void 0,t,!1);e.type="extension"===e.type&&t?.origin.type===J.P2P?"mobile":e.type,await this.storage.set(Y.LAST_SELECTED_WALLET,{icon:e.icon??"",key:e.name,type:e.type??"web",name:e.name,url:e.deeplink});await this.storageValidator.validate()||this.resetInvalidState(!1)}t&&"p2p"!==t.origin.type&&this.init()})).catch((e=>my.error(e.message))),this.sendMetrics("enable-metrics?"+this.addQueryParam("version",de),void 0,(e=>{e.ok||(426===e.status?py.error("Metrics are no longer supported for this version, please upgrade."):py.warn("Network error encountered. Metrics sharing have been automatically disabled.")),this.enableMetrics=e.ok,this.storage.set(Y.ENABLE_METRICS,e.ok)}),(()=>{this.enableMetrics=!1,this.storage.set(Y.ENABLE_METRICS,!1)})),this.initUserID().catch((e=>my.error(e.message)))}async createStateSnapshot(){if(!localStorage||!this.enableMetrics)return;const e=Object.values(Y).filter((e=>!e.includes("wc@2")&&!e.includes("secret")&&!e.includes("account")));try{for(const t of e)await this.bugReportStorage.set(t,await this.storage.get(t))}catch(t){my.error("createStateSnapshot",t.message)}}async initUserID(){const e=await this.storage.get(Y.USER_ID);e?this.userId=e:(this.userId=await U(),this.storage.set(Y.USER_ID,this.userId))}async initInternalTransports(){const e=await this.keyPair;if(this.postMessageTransport||this.p2pTransport||this.walletConnectTransport)return;this.postMessageTransport=new r_(this.name,e,this.storage),await this.addListener(this.postMessageTransport),this.p2pTransport=new o_(this.name,e,this.storage,this.matrixNodes,this.iconUrl,this.appUrl),await this.addListener(this.p2pTransport);const t={projectId:this.wcProjectId,relayUrl:this.wcRelayUrl,metadata:{name:this.name,description:this.description??"",url:this.appUrl??"",icons:this.iconUrl?[this.iconUrl]:[]}};this.walletConnectTransport=new _y(this.name,e,this.storage,{network:this.network.type,opts:t}),this.initEvents(),await this.addListener(this.walletConnectTransport)}initEvents(){this.walletConnectTransport&&(this.walletConnectTransport.setEventHandler("CLOSE_ALERT",this.hideUI.bind(this,["alert","toast"])),this.walletConnectTransport.setEventHandler("RESET_STATE",this.channelClosedHandler.bind(this)),this.walletConnectTransport.setEventHandler("WC_ACK_NOTIFICATION",this.wcToastHandler.bind(this)))}async wcToastHandler(e){const t=await(async()=>{try{return await this.getWalletInfo()}catch{return{name:"wallet"}}})();await this.events.emit(Gd.HIDE_UI,["alert"]),"pending"===e?this.events.emit(Gd.ACKNOWLEDGE_RECEIVED,{message:{},extraInfo:{},walletInfo:t}):this.events.emit(Gd.PERMISSION_REQUEST_ERROR,{errorResponse:{errorType:H.ABORTED_ERROR},walletInfo:t})}async channelClosedHandler(e){(await this.transport).type===e&&(await this.events.emit(Gd.CHANNEL_CLOSED),this.setActiveAccount(void 0),await this.disconnect())}async destroy(){await this.createStateSnapshot(),await super.destroy()}async init(e){if(this._initPromise)return this._initPromise;try{await this.activeAccountLoaded}catch{}return this._initPromise=new Promise((async t=>{if(e)await this.addListener(e),t(await super.init(e));else if(this._transport.isSettled())await(await this.transport).connect(),t(await super.init(await this.transport));else{const e=await this.getActiveAccount(),n=()=>{this.postMessageTransport&&this.postMessageTransport.stopListeningForNewPeers().catch(py.error),this.p2pTransport&&this.p2pTransport.stopListeningForNewPeers().catch(py.error),this.walletConnectTransport&&this.walletConnectTransport.stopListeningForNewPeers().catch(py.error)};if(await this.initInternalTransports(),!this.postMessageTransport||!this.p2pTransport||!this.walletConnectTransport)return;if(this.postMessageTransport.connect().then().catch(py.error),e&&e.origin){const n=e.origin.type;n===J.EXTENSION?t(await super.init(this.postMessageTransport)):n===J.P2P?t(await super.init(this.p2pTransport)):n===J.WALLETCONNECT&&t(await super.init(this.walletConnectTransport))}else{const e=this.p2pTransport,r=this.postMessageTransport,i=this.walletConnectTransport;r.listenForNewPeer((e=>{my.log("init","postmessage transport peer connected",e),this.analytics.track("event","DAppClient","Extension connected",{peerName:e.name}),this.events.emit(Gd.PAIR_SUCCESS,e).catch((e=>py.warn(e))),this.setActivePeer(e).catch(py.error),this.setTransport(this.postMessageTransport).catch(py.error),n(),t(Q.POST_MESSAGE)})).catch(py.error),e.listenForNewPeer((e=>{my.log("init","p2p transport peer connected",e),this.analytics.track("event","DAppClient","Beacon Wallet connected",{peerName:e.name}),this.events.emit(Gd.PAIR_SUCCESS,e).catch((e=>py.warn(e))),this.setActivePeer(e).catch(py.error),this.setTransport(this.p2pTransport).catch(py.error),n(),t(Q.P2P)})).catch(py.error),i.listenForNewPeer((e=>{my.log("init","walletconnect transport peer connected",e),this.analytics.track("event","DAppClient","WalletConnect Wallet connected",{peerName:e.name}),this.events.emit(Gd.PAIR_SUCCESS,e).catch((e=>py.warn(e))),this.setActivePeer(e).catch(py.error),this.setTransport(this.walletConnectTransport).catch(py.error),n(),t(Q.WALLETCONNECT)})).catch(py.error),_i.getAvailableExtensions().then((async e=>{this.analytics.track("event","DAppClient","Extensions detected",{extensions:e})})).catch((e=>{this._initPromise=void 0,py.error(e)})),this.events.emit(Gd.PAIR_INIT,{p2pPeerInfo:()=>(e.connect().then().catch(py.error),e.getPairingRequestInfo()),postmessagePeerInfo:()=>r.getPairingRequestInfo(),walletConnectPeerInfo:()=>i.getPairingRequestInfo(),networkType:this.network.type,abortedHandler:async()=>{my.log("init","ABORTED"),this.sendMetrics("performance-metrics/save",await this.buildPayload("connect","abort")),await Promise.all([r.disconnect(),i.disconnect()]),this.postMessageTransport=this.walletConnectTransport=this.p2pTransport=void 0,this._activeAccount.isResolved()&&this.clearActiveAccount(),this._initPromise=void 0},disclaimerText:this.disclaimerText,analytics:this.analytics,featuredWallets:this.featuredWallets}).catch((e=>py.warn(e)))}}})),this._initPromise}async getActiveAccount(){return this._activeAccount.promise}async isInvalidState(e){const t=await this._activeAccount.promise;return!!t&&(t?.address!==e?.address&&!this.isGetActiveAccountHandled)}async resetInvalidState(e=!0){this.accountManager.removeAllAccounts(),this._activeAccount=x.resolve(void 0),this.storage.set(Y.ACTIVE_ACCOUNT,void 0),e&&this.events.emit(Gd.INVALID_ACTIVE_ACCOUNT_STATE),!e&&this.hideUI(["alert"]),await Promise.all([this.postMessageTransport?.disconnect(),this.walletConnectTransport?.disconnect()]),this.postMessageTransport=this.p2pTransport=this.walletConnectTransport=void 0,await this.setActivePeer(void 0),await this.setTransport(void 0),this._initPromise=void 0}async setActiveAccount(e){if(this.isGetActiveAccountHandled||py.warn("An active account has been received, but no active subscription was found for BeaconEvent.ACTIVE_ACCOUNT_SET.\n For more information, visit: https://docs.walletbeacon.io/guides/migration-guide"),e&&this._activeAccount.isSettled()&&await this.isInvalidState(e)){const e=await this.transport;if(e instanceof uy&&e.wasDisconnectedByWallet())return void await this.resetInvalidState()}if(!e&&this._activeAccount.isResolved()&&await this.getActiveAccount()){const e=await this.transport,t=await this.getActiveAccount();if(!e||!t)return;!this.debounceSetActiveAccount&&e instanceof uy&&(this.debounceSetActiveAccount=!0,this._initPromise=void 0,this.postMessageTransport=this.p2pTransport=this.walletConnectTransport=void 0,await e.disconnect(),this.debounceSetActiveAccount=!1)}if(this._activeAccount.isSettled()?this._activeAccount=x.resolve(e):this._activeAccount.resolve(e),!this.isGetActiveAccountHandled&&this._transport.isResolved()){const e=await this.transport;if(e instanceof uy&&e.wasDisconnectedByWallet())return void await this.resetInvalidState()}if(e){const t=e.origin.type;if(await this.initInternalTransports(),t===J.EXTENSION?await this.setTransport(this.postMessageTransport):t===J.P2P?await this.setTransport(this.p2pTransport):t===J.WALLETCONNECT&&(await this.setTransport(this.walletConnectTransport),this.walletConnectTransport?.forceUpdate("INIT")),this._transport.isResolved()){const e=await this.transport;e.connectionStatus===G.NOT_CONNECTED&&await e.connect()}const n=await this.getPeer(e);await this.setActivePeer(n)}else await this.setActivePeer(void 0),await this.setTransport(void 0);await this.storage.set(Y.ACTIVE_ACCOUNT,e?e.accountIdentifier:void 0),await this.events.emit(Gd.ACTIVE_ACCOUNT_SET,e)}clearActiveAccount(){return this.setActiveAccount()}async setColorMode(e){return xu(e)}async getColorMode(){return Su()}async getAppMetadata(){return this.getOwnAppMetadata()}async showPrepare(){const e=await(async()=>{try{return await this.getWalletInfo()}catch{return}})();await this.events.emit(Gd.SHOW_PREPARE,{walletInfo:e})}async hideUI(e){await this.events.emit(Gd.HIDE_UI,e)}async tryToAppSwitch(){if(!gu(window)||!this.enableAppSwitching)return;const e=await this.getWalletInfo();if("mobile"!==e.type||!e.deeplink)return;const t=mu(window)?e.deeplink:`${e.deeplink}wc?uri=`;t?.length&&(window.location=t)}addQueryParam(e,t){return e+"="+t}async buildPayload(e,t){const n=await this.storage.get(Y.LAST_SELECTED_WALLET),r=this._activeAccount.isResolved()?(await this.getActiveAccount())?.origin.type??"UNKOWN":"UNKOWN";return{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({userId:this.userId,os:yu(),walletName:n?.name??"init",walletType:n?.type??"init",sdkVersion:de,transport:r,time:new Date,action:e,status:t})}}sendMetrics(e,t,n,r){this.enableMetrics&&fetch(`https://beacon-backend.prod.gke.papers.tech/${e}`,t).then((e=>n&&n(e))).catch((e=>{py.warn("Network error encountered. Metrics sharing have been automatically disabled."),my.error(e.message),this.enableMetrics=!1,r&&r(e)}))}async removeAccount(e){const t=super.removeAccount(e),n=await this.getActiveAccount();return n&&n.accountIdentifier===e&&await this.setActiveAccount(void 0),t}async removeAllAccounts(){await super.removeAllAccounts(),await this.setActiveAccount(void 0)}async removePeer(e,t=!1){const n=await this.transport,r=n.removePeer(e);return await this.removeAccountsForPeers([e]),t&&await this.sendDisconnectToPeer(e,n),r}async removeAllPeers(e=!1){const t=await this.transport,n=await t.getPeers(),r=t.removeAllPeers();if(await this.removeAccountsForPeers(n),e){const e=n.map((e=>this.sendDisconnectToPeer(e,t)));await Promise.all(e)}return r}async subscribeToEvent(e,t){e===Gd.ACTIVE_ACCOUNT_SET&&(this.isGetActiveAccountHandled=!0),await this.events.on(e,t)}async checkPermissions(e){if([B.PermissionRequest,B.ProofOfEventChallengeRequest,B.SimulatedProofOfEventChallengeRequest].includes(e))return!0;const t=await this.getActiveAccount();if(!t)throw await this.sendInternalError("No active account set!");const n=t.scopes;switch(e){case B.OperationRequest:return n.includes(q.OPERATION_REQUEST);case B.SignPayloadRequest:return n.includes(q.SIGN);case B.BroadcastRequest:return!0;default:return!1}}async sendNotification(e,t,n,r){const i=await this.getActiveAccount();if(!i||i&&!i.scopes.includes(q.NOTIFICATION)&&!i.notification)throw new Error("notification permissions not given");if(!i.notification?.token)throw new Error("No AccessToken");const o=i.notification?.apiUrl;if(!o)throw new Error("No Push URL set");return this.sendNotificationWithAccessToken({url:o,recipient:i.address,title:e,body:t,payload:n,protocolIdentifier:r,accessToken:i.notification?.token})}blockchains=new Map;addBlockchain(e){this.blockchains.set(e.identifier,e),e.getWalletLists().then((e=>{var t;(e=>{yd=e})(e.desktopList),(e=>{vd=e})(e.extensionList),(e=>{bd=e})(e.webList),t=e.iOSList,xd=t}))}removeBlockchain(e){this.blockchains.delete(e)}async permissionRequest(e){my.log("permissionRequest",e);const t=this.blockchains.get(e.blockchainIdentifier);if(!t)throw new Error(`Blockchain "${e.blockchainIdentifier}" not supported by dAppClient`);const n={...e,type:B.PermissionRequest,blockchainData:{...e.blockchainData,appMetadata:await this.getOwnAppMetadata()}};my.log("REQUESTION PERMIMISSION V3","xxx",n),this.sendMetrics("performance-metrics/save",await this.buildPayload("connect","start"));const r=`makeRequestV3 ${Date.now()}`;my.time(!0,r);const{message:i,connectionInfo:o}=await this.makeRequestV3(n).catch((async e=>{throw e.errorType===H.ABORTED_ERROR?this.sendMetrics("performance-metrics/save",await this.buildPayload("message","abort")):this.sendMetrics("performance-metrics/save",await this.buildPayload("message","error")),my.time(!1,r),new Error("TODO")}));my.time(!1,r),this.sendMetrics("performance-metrics/save",await this.buildPayload("connect","start")),my.log("RESPONSE V3",i,o);const s=await t.getAccountInfosFromPermissionResponse(i.message),a={accountIdentifier:s[0].accountId,senderId:i.senderId,origin:{type:o.origin,id:o.id},address:s[0].address,publicKey:s[0].publicKey,scopes:i.message.blockchainData.scopes,connectedAt:(new Date).getTime(),chainData:i.message.blockchainData};return await this.accountManager.addAccount(a),await this.setActiveAccount(a),await t.handleResponse({request:n,account:a,output:i,blockExplorer:this.blockExplorer,connectionContext:o,walletInfo:await this.getWalletInfo()}),await this.notifySuccess(n,{account:a,output:{address:s[0].address,network:{type:V.MAINNET},scopes:[q.OPERATION_REQUEST]},blockExplorer:this.blockExplorer,connectionContext:o,walletInfo:await this.getWalletInfo()}),i.message}async request(e){my.log("request",e);const t=this.blockchains.get(e.blockchainIdentifier);if(!t)throw new Error(`Blockchain "${t}" not supported by dAppClient`);await t.validateRequest(e);const n=await this.getActiveAccount();if(!n)throw await this.sendInternalError("No active account!");const r={...e,type:B.BlockchainRequest,accountId:n.accountIdentifier};this.sendMetrics("performance-metrics/save",await this.buildPayload("message","start"));const i=`makeRequestV3 ${Date.now()}`;my.time(!0,i);const{message:o,connectionInfo:s}=await this.makeRequestV3(r).catch((async e=>{throw py.error(e),e.errorType===H.ABORTED_ERROR?this.sendMetrics("performance-metrics/save",await this.buildPayload("message","abort")):this.sendMetrics("performance-metrics/save",await this.buildPayload("message","error")),my.time(!1,i),new Error("TODO")}));return my.time(!1,i),this.sendMetrics("performance-metrics/save",await this.buildPayload("message","success")),await t.handleResponse({request:r,account:n,output:o,blockExplorer:this.blockExplorer,connectionContext:s,walletInfo:await this.getWalletInfo()}),o.message}async requestPermissions(e){void 0!==e?.network&&this.network.type!==e?.network?.type&&py.error("[BEACON] The network specified in the DAppClient constructor does not match the network set in the permission request. Please set the network in the constructor. Setting it during the Permission Request is deprecated.");const t={appMetadata:await this.getOwnAppMetadata(),type:B.PermissionRequest,network:this.network,scopes:e&&e.scopes?e.scopes:[q.OPERATION_REQUEST,q.SIGN]};this.analytics.track("event","DAppClient","Permission requested"),this.sendMetrics("performance-metrics/save",await this.buildPayload("connect","start"));const n=`makeRequest ${Date.now()}`;my.time(!0,n);const{message:r,connectionInfo:i}=await this.makeRequest(t).catch((async e=>{throw e.errorType===H.ABORTED_ERROR?this.sendMetrics("performance-metrics/save",await this.buildPayload("message","abort")):this.sendMetrics("performance-metrics/save",await this.buildPayload("message","error")),my.time(!1,n),await this.handleRequestError(t,e)}));my.time(!1,n),this.sendMetrics("performance-metrics/save",await this.buildPayload("connect","success")),my.log("requestPermissions","######## MESSAGE #######"),my.log("requestPermissions",r);const o=await this.onNewAccount(r,i);my.log("requestPermissions","######## ACCOUNT INFO #######"),my.log("requestPermissions",JSON.stringify(o)),await this.accountManager.addAccount(o);const s={...r,walletKey:o.walletKey,address:o.address,accountInfo:o};return await this.notifySuccess(t,{account:o,output:s,blockExplorer:this.blockExplorer,connectionContext:i,walletInfo:await this.getWalletInfo()}),this.analytics.track("event","DAppClient","Permission received",{address:o.address}),s}async requestProofOfEventChallenge(e){const t=await this.getActiveAccount();if(!t)throw new Error("Please request permissions before doing a proof of event challenge");if("abstracted_account"!==t.walletType&&"proof_of_event"!==t.verificationType)throw new Error("This wallet is not an abstracted account and thus cannot perform proof of event");const n={type:B.ProofOfEventChallengeRequest,contractAddress:t.address,payload:e.payload};this.sendMetrics("performance-metrics/save",await this.buildPayload("message","start"));const r=`makeRequest ${Date.now()}`;my.time(!0,r);const{message:i,connectionInfo:o}=await this.makeRequest(n).catch((async e=>{throw e.errorType===H.ABORTED_ERROR?this.sendMetrics("performance-metrics/save",await this.buildPayload("message","abort")):this.sendMetrics("performance-metrics/save",await this.buildPayload("message","error")),my.time(!1,r),await this.handleRequestError(n,e)}));return my.time(!1,r),this.sendMetrics("performance-metrics/save",await this.buildPayload("message","success")),this.analytics.track("event","DAppClient","Proof of event challenge "+(i.isAccepted?"accepted":"refused"),{address:t.address}),await this.notifySuccess(n,{account:t,output:i,blockExplorer:this.blockExplorer,connectionContext:o,walletInfo:await this.getWalletInfo()}),i}async requestSimulatedProofOfEventChallenge(e){const t=await this.getActiveAccount();if(!t)throw new Error("Please request permissions before doing a proof of event challenge");if("abstracted_account"!==t.walletType&&"proof_of_event"!==t.verificationType)throw new Error("This wallet is not an abstracted account and thus cannot perform a simulated proof of event");const n={type:B.SimulatedProofOfEventChallengeRequest,contractAddress:t.address,...e},r=`makeRequest ${Date.now()}`;my.time(!0,r);const{message:i,connectionInfo:o}=await this.makeRequest(n).catch((async e=>{throw my.time(!1,r),await this.handleRequestError(n,e)}));return my.time(!1,r),this.analytics.track("event","DAppClient","Simulated proof of event challenge "+(i.errorMessage?"refused":"accepted"),{address:t.address}),await this.notifySuccess(n,{account:t,output:i,blockExplorer:this.blockExplorer,connectionContext:o,walletInfo:await this.getWalletInfo()}),i}async requestSignPayload(e){if(!e.payload)throw await this.sendInternalError("Payload must be provided");const t=await this.getActiveAccount();if(!t)throw await this.sendInternalError("No active account!");const n=e.payload;if("string"!=typeof n)throw new Error("Payload must be a string");const r=(()=>{switch(e.signingType){case ee.OPERATION:if(!n.startsWith("03"))throw new Error('When using signing type "OPERATION", the payload must start with prefix "03"');return ee.OPERATION;case ee.MICHELINE:if(!n.startsWith("05"))throw new Error('When using signing type "MICHELINE", the payload must start with prefix "05"');return ee.MICHELINE;case ee.RAW:default:return ee.RAW}})();this.analytics.track("event","DAppClient","Signature requested");const i={type:B.SignPayloadRequest,signingType:r,payload:n,sourceAddress:e.sourceAddress||t.address};this.sendMetrics("performance-metrics/save",await this.buildPayload("message","start"));const o=`makeRequest ${Date.now()}`;my.time(!0,o);const{message:s,connectionInfo:a}=await this.makeRequest(i).catch((async e=>{throw e.errorType===H.ABORTED_ERROR?this.sendMetrics("performance-metrics/save",await this.buildPayload("message","abort")):this.sendMetrics("performance-metrics/save",await this.buildPayload("message","error")),my.time(!1,o),await this.handleRequestError(i,e)}));return my.time(!1,o),this.sendMetrics("performance-metrics/save",await this.buildPayload("message","success")),await this.notifySuccess(i,{account:t,output:s,connectionContext:a,walletInfo:await this.getWalletInfo()}),this.analytics.track("event","DAppClient","Signature response"),s}async requestOperation(e){if(!e.operationDetails)throw await this.sendInternalError("Operation details must be provided");const t=await this.getActiveAccount();if(!t)throw await this.sendInternalError("No active account!");const n={type:B.OperationRequest,network:t.network||this.network,operationDetails:e.operationDetails,sourceAddress:t.address||""};this.analytics.track("event","DAppClient","Operation requested"),this.sendMetrics("performance-metrics/save",await this.buildPayload("message","start"));const r=`makeRequest ${Date.now()}`;my.time(!0,r);const{message:i,connectionInfo:o}=await this.makeRequest(n).catch((async e=>{throw e.errorType===H.ABORTED_ERROR?this.sendMetrics("performance-metrics/save",await this.buildPayload("message","abort")):this.sendMetrics("performance-metrics/save",await this.buildPayload("message","error")),my.time(!1,r),await this.handleRequestError(n,e)}));return my.time(!1,r),this.sendMetrics("performance-metrics/save",await this.buildPayload("message","success")),await this.notifySuccess(n,{account:t,output:i,blockExplorer:this.blockExplorer,connectionContext:o,walletInfo:await this.getWalletInfo()}),this.analytics.track("event","DAppClient","Operation response"),i}async requestBroadcast(e){if(!e.signedTransaction)throw await this.sendInternalError("Signed transaction must be provided");void 0!==e.network&&this.network.type!==e.network?.type&&py.error("[BEACON] The network specified in the DAppClient constructor does not match the network set in the broadcast request. Please set the network in the constructor. Setting it during the Broadcast Request is deprecated.");const t={type:B.BroadcastRequest,network:this.network,signedTransaction:e.signedTransaction};this.analytics.track("event","DAppClient","Broadcast requested"),this.sendMetrics("performance-metrics/save",await this.buildPayload("message","start"));const n=`makeRequest ${Date.now()}`;my.time(!0,n);const{message:r,connectionInfo:i}=await this.makeRequest(t).catch((async e=>{throw e.errorType===H.ABORTED_ERROR?this.sendMetrics("performance-metrics/save",await this.buildPayload("message","abort")):this.sendMetrics("performance-metrics/save",await this.buildPayload("message","error")),my.time(!1,n),await this.handleRequestError(t,e)}));return my.time(!1,n),this.sendMetrics("performance-metrics/save",await this.buildPayload("message","success")),await this.notifySuccess(t,{network:this.network,output:r,blockExplorer:this.blockExplorer,connectionContext:i,walletInfo:await this.getWalletInfo()}),this.analytics.track("event","DAppClient","Broadcast response"),r}async setActivePeer(e){this._activePeer.isSettled()?this._activePeer=x.resolve(e):this._activePeer.resolve(e),e&&(await this.initInternalTransports(),"postmessage-pairing-response"===e.type?await this.setTransport(this.postMessageTransport):"p2p-pairing-response"===e.type&&await this.setTransport(this.p2pTransport))}async setTransport(e){e||(this._initPromise=void 0);const t=super.setTransport(e),n=e?{...e}:void 0;return n&&(n.client={...n.client,keyPair:void 0}),await this.events.emit(Gd.ACTIVE_TRANSPORT_SET,n),t}async sendInternalError(e){throw await this.events.emit(Gd.INTERNAL_ERROR,{text:e}),new Error(e)}async removeAccountsForPeers(e){const t=e.map((e=>e.senderId));return this.removeAccountsForPeerIds(t)}async removeAccountsForPeerIds(e){const t=(await this.accountManager.getAccounts()).filter((t=>e.includes(t.senderId))).map((e=>e.accountIdentifier));await this.accountManager.removeAccounts(t);const n=await this.getActiveAccount();n&&t.includes(n.accountIdentifier)&&await this.setActiveAccount(void 0)}async handleRequestError(e,t){if(my.error("handleRequestError","error response",t),t.errorType){const n=[];if(t.errorType===H.NO_PRIVATE_KEY_FOUND_ERROR){const t=async()=>{const t=e;let n;if(t.sourceAddress&&t.network){const e=await be(t.sourceAddress,t.network);n=await this.getAccount(e),n&&await this.removeAccount(n.accountIdentifier)}};n.push({text:"Remove account",actionCallback:t})}const r=await this.getPeer(),i=await this.getActiveAccount();throw e.type===B.PermissionRequest&&void 0===await this.getActiveAccount()&&(this._initPromise=void 0,this.postMessageTransport=void 0,this.p2pTransport=void 0,this.walletConnectTransport=void 0,await this.setTransport(),await this.setActivePeer()),this.events.emit($d[e.type].error,{errorResponse:t,walletInfo:await this.getWalletInfo(r,i),errorMessages:this.errorMessages},n).catch((e=>my.error("handleRequestError",e))),Me.getError(t.errorType,t.errorData)}throw t}async notifySuccess(e,t){this.events.emit($d[e.type].success,t).catch((e=>py.warn(e)))}async getWalletInfoFromStorage(){return await this.storage.get(Y.LAST_SELECTED_WALLET)}async updateStorageWallet(e){const t=await this.storage.get(Y.LAST_SELECTED_WALLET);t&&(t.name=e.name,t.icon=e.icon??t.icon,this.storage.set(Y.LAST_SELECTED_WALLET,t))}async getWalletInfo(e,t,n=!0){const r=t||await this.getActiveAccount(),i=e||await this.getPeer(r);let o,s;r&&(o=await this.appMetadataManager.getAppMetadata(r.senderId)),n&&(s=await this.getWalletInfoFromStorage()),o||(o={name:i?.name??s?.key??"",icon:i?.icon??s?.icon,type:s?.type},this.updateStorageWallet(o));const a=e=>e.split(/[_\s]+/)[0],c=[...xd,...bd,...yd,...vd].filter((e=>{return t=a(e.key),n=a(o?.name??"wallet"),!(!t||!n)&&t.toLowerCase()===n.toLowerCase();var t,n})),l=c.find((e=>e.universalLink||e.key.includes("ios")||e.key.includes("mobile"))),u=c.find((e=>e.links)),d=c.find((e=>e.downloadLink)),_=c.find((e=>e.id)),p={extension:{app:_,type:"extension"},desktop:{app:d,type:"desktop"},mobile:{app:l,type:"mobile"},web:{app:u,type:"web"}},{app:f,type:m}=s?p[s.type]:pu(window)&&u?{app:u,type:"web"}:(h=window,!_u(h)&&d?{app:d,type:"desktop"}:pu(window)&&_?{app:_,type:"extension"}:l?{app:l,type:"mobile"}:{app:void 0,type:void 0});var h;if(f){let e;return f.hasOwnProperty("links")?e=f.links[r?.network.type??this.network.type]:f.hasOwnProperty("deepLink")&&(e=f.deepLink),{name:f?.name??o.name,icon:f?.logo??o.icon,deeplink:e,type:m}}return o}async getPeer(e){let t;if(e){my.log("getPeer","We have an account",e);const n=[...await(this.postMessageTransport?.getPeers())??[],...await(this.p2pTransport?.getPeers())??[],...await(this.walletConnectTransport?.getPeers())??[]];my.log("getPeer","Found peers",n,e),t=n.find((t=>t.senderId===e.senderId)),t||(t=n.find((t=>t.extensionId===e.origin.id)))}else t=await this._activePeer.promise,my.log("getPeer","Active peer",t);return t}async makeRequest(e,t){const n=await U();if(this._initPromise&&this.isInitPending&&(await Promise.all([this.postMessageTransport?.disconnect(),this.walletConnectTransport?.disconnect()]),this._initPromise=void 0,this.hideUI(["toast"])),my.log("makeRequest","starting"),this.isInitPending=!0,await this.init(),this.isInitPending=!1,my.log("makeRequest","after init"),await this.addRequestAndCheckIfRateLimited())throw this.events.emit(Gd.LOCAL_RATE_LIMIT_REACHED).catch((e=>py.warn(e))),new Error("rate limit reached");if(!await this.checkPermissions(e.type))throw this.events.emit(Gd.NO_PERMISSIONS).catch((e=>py.warn(e))),new Error("No permissions to send this request to wallet!");if(!this.beaconId)throw await this.sendInternalError("BeaconID not defined");const r={id:n,version:"2",senderId:await ke(await this.beaconId),...e};let i;t||(i=new x,this.addOpenRequest(r.id,i));const o=await(new He).serialize(r),s=await this.getActiveAccount(),a=await this.getPeer(s),c=await this.getWalletInfo(a,s);my.log("makeRequest","sending message",r);try{(await this.transport).send(o,a),(r.type!==B.PermissionRequest||this._activeAccount.isResolved()&&await this._activeAccount.promise)&&this.tryToAppSwitch()}catch(l){throw this.events.emit(Gd.INTERNAL_ERROR,{text:"Unable to send message. If this problem persists, please reset the connection and pair your wallet again.",buttons:[{text:"Reset Connection",actionCallback:async()=>{await qd(),this.disconnect()}}]}),l}return this.events.emit($d[e.type].sent,{walletInfo:{...c,name:c.name??"Wallet"},extraInfo:{resetCallback:async()=>{this.disconnect()}}}).catch((e=>py.warn(e))),i?.promise}async makeRequestV3(e){this._initPromise&&this.isInitPending&&(await Promise.all([this.postMessageTransport?.disconnect(),this.walletConnectTransport?.disconnect()]),this._initPromise=void 0,this.hideUI(["toast"]));const t=await U();if(my.log("makeRequest","starting"),this.isInitPending=!0,await this.init(),this.isInitPending=!1,my.log("makeRequest","after init"),await this.addRequestAndCheckIfRateLimited())throw this.events.emit(Gd.LOCAL_RATE_LIMIT_REACHED).catch((e=>py.warn(e))),new Error("rate limit reached");if(!this.beaconId)throw await this.sendInternalError("BeaconID not defined");const n={id:t,version:"3",senderId:await ke(await this.beaconId),message:e},r=new x;this.addOpenRequest(n.id,r);const i=await(new He).serialize(n),o=await this.getActiveAccount(),s=await this.getPeer(o),a=await this.getWalletInfo(s,o);my.log("makeRequest","sending message",n);try{(await this.transport).send(i,s),(n.message.type!==B.PermissionRequest||this._activeAccount.isResolved()&&await this._activeAccount.promise)&&this.tryToAppSwitch()}catch(l){throw this.events.emit(Gd.INTERNAL_ERROR,{text:"Unable to send message. If this problem persists, please reset the connection and pair your wallet again.",buttons:[{text:"Reset Connection",actionCallback:async()=>{await qd(),this.disconnect()}}]}),l}const c=e.type;return this.events.emit($d[c].sent,{walletInfo:{...a,name:a.name??"Wallet"},extraInfo:{resetCallback:async()=>{this.disconnect()}}}).catch((e=>py.warn(e))),r.promise}async disconnect(){if(!this._transport.isResolved())throw new Error("No transport available.");const e=await this.transport;if(e.connectionStatus===G.NOT_CONNECTED)throw new Error("Not connected.");await this.createStateSnapshot(),this.sendMetrics("performance-metrics/save",await this.buildPayload("disconnect","start")),await this.clearActiveAccount(),e instanceof uy||await e.disconnect(),this.postMessageTransport=void 0,this.p2pTransport=void 0,this.walletConnectTransport=void 0,this.sendMetrics("performance-metrics/save",await this.buildPayload("disconnect","success"))}addOpenRequest(e,t){my.log("addOpenRequest",this.name,`adding request ${e} and waiting for answer`),this.openRequests.set(e,t)}async sendNotificationWithAccessToken(e){const{url:t,recipient:n,title:r,body:i,payload:o,protocolIdentifier:s,accessToken:a}=e,c=(new Date).toISOString(),l=await this.keyPair,u=l.publicKey,d=fy.from(new Uint8Array([13,15,37,217])),_=S.encode(fy.concat([d,fy.from(u)])),p=I(["Tezos Signed Message: ",n,r,i,c,o].join(" ")),f="0501"+p.length.toString(16).padStart(8,"0")+p,m=await j(f,{secretKey:fy.from(l.secretKey)});return(await Pr.post(`${t}/send`,{recipient:n,title:r,body:i,timestamp:c,payload:o,accessToken:a,protocolIdentifier:s,sender:{name:this.name,publicKey:_,signature:m}})).data}async onNewAccount(e,t){const n=e.publicKey||e.pubkey||e.pubKey,r=n?function(e){if(64!==e.length)return e;const t=A.from(e,"hex");return S.encode(A.concat([new Uint8Array([13,15,37,217]),A.from(t)]))}(n):void 0;if(!r&&!e.address)throw new Error("PublicKey or Address must be defined");const i=e.address??await R(r);if(!(e=>{if(!["tz1","tz2","tz3","tz4","KT1","txr1","sr1"].some((t=>e.toLowerCase().startsWith(t.toLowerCase()))))return!1;try{S.decode(e)}catch(t){return!1}return!0})(i))throw new Error(`Invalid address: "${i}"`);if("abstracted_account"===e.walletType&&"KT1"!==i.substring(0,3))throw new Error(`Invalid abstracted account address "${i}", it should be a KT1 address`);my.log("######## MESSAGE #######"),my.log("onNewAccount",e);const o=(await this.storage.get(Y.LAST_SELECTED_WALLET))?.key,s={accountIdentifier:await be(i,e.network),senderId:e.senderId,origin:{type:t.origin,id:t.id},walletKey:o,address:i,publicKey:r,network:e.network,scopes:e.scopes,threshold:e.threshold,notification:e.notification,connectedAt:(new Date).getTime(),walletType:e.walletType??"implicit",verificationType:e.verificationType,..."proof_of_event"===e.verificationType?{hasVerifiedChallenge:!1}:{}};return my.log("accountInfo","######## ACCOUNT INFO #######"),my.log("accountInfo",s),await this.accountManager.addAccount(s),await this.setActiveAccount(s),s}}let gy;var yy=n(17432),vy=n(64527),by=n.n(vy),xy=n(10695),Sy=n(48110);function Ty(e,t,n,r){return new(n||(n=Promise))((function(i,o){function s(e){try{c(r.next(e))}catch(t){o(t)}}function a(e){try{c(r.throw(e))}catch(t){o(t)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}c((r=r.apply(e,t||[])).next())}))}"function"==typeof SuppressedError&&SuppressedError;class wy extends yy.Ll{constructor(){super(),this.name="BeaconWalletNotInitialized",this.message='BeaconWallet needs to be initialized by calling `await BeaconWallet.requestPermissions({network: {type: "chosen_network"}})` first.'}}class ky extends yy.Ll{constructor(e){super(),this.requiredScopes=e,this.name="MissingRequiredScopes",this.message=`Required permissions scopes: ${e.join(",")} were not granted.`}}const Ey={commitHash:"d44ee8a26e6924e12a8cae2f9c5b717fc65af72c",version:"20.0.1"};class Cy{constructor(e){var t,n;this.client=(t=e,gy&&n&&(gy.disconnect(),gy=void 0),gy||(gy||(gy=new hy(t)),gy)),this.client.subscribeToEvent(Gd.ACTIVE_ACCOUNT_SET,(e=>Ty(this,void 0,void 0,(function*(){this.account=e}))))}validateRequiredScopesOrFail(e,t){const n=new Set(t);for(const r of e)n.has(r)&&n.delete(r);if(n.size>0)throw new ky(Array.from(n))}requestPermissions(e){return Ty(this,void 0,void 0,(function*(){yield this.client.requestPermissions(e)}))}getPKH(){return Ty(this,void 0,void 0,(function*(){if(!this.account)throw new wy;return this.account.address}))}getPK(){var e;return Ty(this,void 0,void 0,(function*(){if(!this.account)throw new wy;return null!==(e=this.account.publicKey)&&void 0!==e?e:""}))}mapTransferParamsToWalletParams(e){return Ty(this,void 0,void 0,(function*(){let t;yield this.client.showPrepare();try{t=yield e()}catch(n){throw yield this.client.hideUI(["alert"]),n}return this.removeDefaultParams(t,yield(0,xy.createTransferOperation)(this.formatParameters(t)))}))}mapStakeParamsToWalletParams(e){return Ty(this,void 0,void 0,(function*(){let t;yield this.client.showPrepare();try{t=yield e()}catch(n){throw yield this.client.hideUI(["alert"]),n}return this.removeDefaultParams(t,yield(0,xy.createTransferOperation)(this.formatParameters(t)))}))}mapUnstakeParamsToWalletParams(e){return Ty(this,void 0,void 0,(function*(){let t;yield this.client.showPrepare();try{t=yield e()}catch(n){throw yield this.client.hideUI(["alert"]),n}return this.removeDefaultParams(t,yield(0,xy.createTransferOperation)(this.formatParameters(t)))}))}mapFinalizeUnstakeParamsToWalletParams(e){return Ty(this,void 0,void 0,(function*(){let t;yield this.client.showPrepare();try{t=yield e()}catch(n){throw yield this.client.hideUI(["alert"]),n}return this.removeDefaultParams(t,yield(0,xy.createTransferOperation)(this.formatParameters(t)))}))}mapIncreasePaidStorageWalletParams(e){return Ty(this,void 0,void 0,(function*(){let t;yield this.client.showPrepare();try{t=yield e()}catch(n){throw yield this.client.hideUI(["alert"]),n}return this.removeDefaultParams(t,yield(0,xy.createIncreasePaidStorageOperation)(this.formatParameters(t)))}))}mapOriginateParamsToWalletParams(e){return Ty(this,void 0,void 0,(function*(){let t;yield this.client.showPrepare();try{t=yield e()}catch(n){throw yield this.client.hideUI(["alert"]),n}return this.removeDefaultParams(t,yield(0,xy.createOriginationOperation)(this.formatParameters(t)))}))}mapDelegateParamsToWalletParams(e){return Ty(this,void 0,void 0,(function*(){let t;yield this.client.showPrepare();try{t=yield e()}catch(n){throw yield this.client.hideUI(["alert"]),n}return this.removeDefaultParams(t,yield(0,xy.createSetDelegateOperation)(this.formatParameters(t)))}))}formatParameters(e){return e.fee&&(e.fee=e.fee.toString()),e.storageLimit&&(e.storageLimit=e.storageLimit.toString()),e.gasLimit&&(e.gasLimit=e.gasLimit.toString()),e}removeDefaultParams(e,t){return e.fee||delete t.fee,e.storageLimit||delete t.storage_limit,e.gasLimit||delete t.gas_limit,t}sendOperations(e){return Ty(this,void 0,void 0,(function*(){if(!this.account)throw new wy;const t=this.account.scopes;this.validateRequiredScopesOrFail(t,[q.OPERATION_REQUEST]);const{transactionHash:n}=yield this.client.requestOperation({operationDetails:e});return n}))}disconnect(){return Ty(this,void 0,void 0,(function*(){yield this.client.destroy()}))}clearActiveAccount(){return Ty(this,void 0,void 0,(function*(){yield this.client.setActiveAccount()}))}sign(e,t){return Ty(this,void 0,void 0,(function*(){let n=(0,Sy.$$)(e);void 0!==t&&(n=(0,Sy.m6)(t,n));const r=(0,Sy.hi)(by()(n)),i=this.getSigningType(t);if(i!==ee.OPERATION)throw new yy.ic(`Taquito Beacon Wallet currently only supports signing operations, not ${i}`);const{signature:o}=yield this.client.requestSignPayload({payload:r,signingType:i});return o}))}getSigningType(e){if(!e||0===e.length)return ee.RAW;if(1===e.length){if(5===e[0])return ee.MICHELINE;if(3===e[0])return ee.OPERATION}throw new Error(`Invalid watermark ${JSON.stringify(e)}`)}}},17432:(e,t,n)=>{"use strict";n.d(t,{$W:()=>T,$u:()=>x,DL:()=>p,Dr:()=>c,IA:()=>f,IT:()=>r,L:()=>h,LJ:()=>_,Ll:()=>l,Ms:()=>u,O7:()=>y,Q1:()=>s,Qc:()=>o,Sj:()=>m,Xi:()=>i,_d:()=>k,dr:()=>d,dy:()=>w,ic:()=>a,mC:()=>v,mx:()=>g,qD:()=>b,xs:()=>S});class r extends Error{}class i extends r{}class o extends r{}class s extends r{}class a extends r{}class c extends r{}class l extends r{}class u extends i{constructor(e,t){super(),this.address=e,this.errorDetail=t,this.name="InvalidAddressError",this.message=`Invalid address "${e}"`,this.message+=t?` ${t}.`:"."}}class d extends i{constructor(e,t){super(),this.address=e,this.errorDetail=t,this.name="InvalidStakingAddressError",this.message=`Invalid staking address "${e}", you can only set destination as your own address`}}class _ extends i{constructor(e,t){super(),this.address=e,this.errorDetail=t,this.name="InvalidFinalizeUnstakeAmountError",this.message="The amount can only be 0 when finalizing an unstake"}}class p extends i{constructor(e,t){super(),this.blockHash=e,this.errorDetail=t,this.name="InvalidBlockHashError",this.message=`Invalid block hash "${e}"`,this.message+=t?` ${t}.`:"."}}class f extends i{constructor(e){super(),this.amount=e,this.name="InvalidAmountError",this.message=`Invalid amount "${e}"`}}class m extends i{constructor(e,t){super(),this.hexString=e,this.errorDetail=t,this.name="InvalidHexStringError",this.message=`Invalid hex string "${e}"`,this.message+=t?` ${t}.`:"."}}class h extends i{constructor(e,t){super(),this.msg=e,this.errorDetail=t,this.name="InvalidMessageError",this.message=`Invalid message "${e}"`,this.message+=t?` ${t}.`:"."}}class g extends i{constructor(e,t,n,r){super(),this.viewName=e,this.sigs=t,this.args=n,this.cause=r,this.name="InvalidViewParameterError",this.message=`Invalid view arguments ${JSON.stringify(n)} received for name "${e}" expecting one of the following signatures ${JSON.stringify(t)}.`}}class y extends i{constructor(e,t){super(),this.publicKey=e,this.errorDetail=t,this.name="InvalidPublicKeyError",this.message=`Invalid public key "${e}"`,this.message+=t?` ${t}.`:"."}}class v extends i{constructor(e,t){super(),this.contractAddress=e,this.errorDetail=t,this.name="InvalidContractAddressError",this.message=`Invalid contract address "${e}"`,this.message+=t?` ${t}.`:"."}}class b extends i{constructor(e,t){super(),this.chainId=e,this.errorDetail=t,this.name="InvalidChainIdError",this.message=`Invalid chain id "${e}"`,this.message+=t?` ${t}.`:"."}}class x extends i{constructor(e,t){super(),this.keyHash=e,this.errorDetail=t,this.name="InvalidKeyHashError",this.message=`Invalid public key hash "${e}"`,this.message+=t?` ${t}.`:"."}}class S extends i{constructor(e,t){super(),this.operationHash=e,this.errorDetail=t,this.name="InvalidOperationHashError",this.message=`Invalid operation hash "${e}"`,this.message+=t?` ${t}.`:"."}}class T extends i{constructor(e,t){super(),this.operationKind=e,this.errorDetail=t,this.name="InvalidOperationKindError",this.message=`Invalid operation kind "${e}"`,this.message+=t?` ${t}.`:"."}}class w extends a{constructor(e){super(),this.message=e,this.name="DeprecationError"}}class k extends r{constructor(e,t){super(),this.pkh=e,this.cause=t,this.name="PublicKeyNotFoundError",this.message=`Public key not found of this address "${e}" in either wallet or contract API.`}}},10695:(e,t,n)=>{"use strict";n.r(t),n.d(t,{BallotOperation:()=>Wl,BatchOperation:()=>Xc,BigMapAbstraction:()=>bl,COST_PER_BYTE:()=>ec,ChainIds:()=>rc,CompositeForger:()=>yu,Context:()=>fu,ContractAbstraction:()=>ml,ContractMethod:()=>ul,ContractMethodObject:()=>ll,ContractView:()=>fl,DEFAULT_FEE:()=>qa,DEFAULT_GAS_LIMIT:()=>Ba,DEFAULT_SMART_CONTRACT_METHOD_NAME:()=>pl,DEFAULT_STORAGE_LIMIT:()=>Va,DefaultGlobalConstantsProvider:()=>Su,DelegateOperation:()=>Ll,DelegationWalletOperation:()=>al,DrainDelegateOperation:()=>Hl,Estimate:()=>Ol,GlobalConstantNotFound:()=>eu,IncreasePaidStorageOperation:()=>ql,InvalidBalanceError:()=>yc,InvalidCodeParameter:()=>uc,InvalidDelegationSource:()=>lc,InvalidEstimateValueError:()=>Hc,InvalidInitParameter:()=>dc,InvalidParameterError:()=>cc,InvalidViewSimulationContext:()=>mc,LegacyWalletProvider:()=>cl,MANAGER_LAMBDA:()=>hl,MichelCodecPacker:()=>xu,MichelCodecParser:()=>Xl,MichelsonMap:()=>Bt,NoopParser:()=>bu,ORIGINATION_SIZE:()=>$a,ObservableSubscription:()=>cu,OpKind:()=>A,Operation:()=>Zc,OperationBatch:()=>El,OriginationOperation:()=>jl,OriginationParameterError:()=>gc,OriginationWalletOperation:()=>sl,PollingSubscribeProvider:()=>du,PrepareProvider:()=>wl,ProposalsOperation:()=>Gl,Protocols:()=>tc,REVEAL_STORAGE_LIMIT:()=>Xa,RPCEstimateProvider:()=>Rl,RegisterGlobalConstantOperation:()=>zl,RevealEstimateError:()=>Fl,RevealOperation:()=>Ul,RevealOperationError:()=>hc,RpcForger:()=>vu,RpcInjector:()=>La,RpcPacker:()=>$l,RpcReadAdapter:()=>ru,SaplingStateAbstraction:()=>vl,SmartRollupAddMessagesOperation:()=>Kl,SmartRollupOriginateOperation:()=>Jl,TaquitoLocalForger:()=>_u,TezosOperationError:()=>qc,TezosPreapplyFailureError:()=>Vc,TezosToolkit:()=>Tu,Token:()=>Vt,TransactionOperation:()=>Bl,TransactionWalletOperation:()=>ol,TransferTicketOperation:()=>Ql,UnconfiguredGlobalConstantsProviderError:()=>tu,UnitValue:()=>Cr,UpdateConsensusKeyOperation:()=>Vl,VIEW_LAMBDA:()=>gl,ViewSimulationError:()=>_c,Wallet:()=>tl,WalletOperation:()=>il,WalletOperationBatch:()=>el,compose:()=>yl,createActivationOperation:()=>vc,createBallotOperation:()=>Ac,createDrainDelegateOperation:()=>Nc,createIncreasePaidStorageOperation:()=>Cc,createOriginationOperation:()=>bc,createProposalsOperation:()=>Ic,createRegisterDelegateOperation:()=>Tc,createRegisterGlobalConstantOperation:()=>kc,createRevealOperation:()=>wc,createSetDelegateOperation:()=>Sc,createSmartRollupAddMessagesOperation:()=>Pc,createSmartRollupExecuteOutboxMessageOperation:()=>Oc,createSmartRollupOriginateOperation:()=>Mc,createTransferOperation:()=>xc,createTransferTicketOperation:()=>Ec,createUpdateConsensusKeyOperation:()=>Dc,defaultConfigConfirmation:()=>pu,getRevealFee:()=>sc,getRevealFeeInternal:()=>ac,getRevealGasLimit:()=>ic,protocols:()=>nc,smartContractAbstractionSemantic:()=>xl,validateAndExtractFailwith:()=>pc});var r,i=n(17432),o=n(65606);function s(e,t,n,r){return new(n||(n=Promise))((function(i,o){function s(e){try{c(r.next(e))}catch(t){o(t)}}function a(e){try{c(r.throw(e))}catch(t){o(t)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}c((r=r.apply(e,t||[])).next())}))}"function"==typeof SuppressedError&&SuppressedError;class a extends i.Dr{constructor(e,t,n){super(),this.method=e,this.url=t,this.cause=n,this.name="HttpRequestFailed",this.message=`${e} ${t} ${String(n)}`}}class c extends i.Dr{constructor(e,t,n,r,i){super(),this.message=e,this.status=t,this.statusText=n,this.body=r,this.url=i,this.name="HttpResponseError"}}class l extends i.Dr{constructor(e,t){super(),this.timeout=e,this.url=t,this.name="HttpTimeoutError",this.message=`HTTP request timeout of ${e}ms exceeded`}}!function(e){e[e.CONTINUE=100]="CONTINUE",e[e.SWITCHING_PROTOCOLS=101]="SWITCHING_PROTOCOLS",e[e.PROCESSING=102]="PROCESSING",e[e.OK=200]="OK",e[e.CREATED=201]="CREATED",e[e.ACCEPTED=202]="ACCEPTED",e[e.NON_AUTHORITATIVE_INFORMATION=203]="NON_AUTHORITATIVE_INFORMATION",e[e.NO_CONTENT=204]="NO_CONTENT",e[e.RESET_CONTENT=205]="RESET_CONTENT",e[e.PARTIAL_CONTENT=206]="PARTIAL_CONTENT",e[e.MULTI_STATUS=207]="MULTI_STATUS",e[e.ALREADY_REPORTED=208]="ALREADY_REPORTED",e[e.IM_USED=226]="IM_USED",e[e.MULTIPLE_CHOICES=300]="MULTIPLE_CHOICES",e[e.MOVED_PERMANENTLY=301]="MOVED_PERMANENTLY",e[e.FOUND=302]="FOUND",e[e.SEE_OTHER=303]="SEE_OTHER",e[e.NOT_MODIFIED=304]="NOT_MODIFIED",e[e.USE_PROXY=305]="USE_PROXY",e[e.SWITCH_PROXY=306]="SWITCH_PROXY",e[e.TEMPORARY_REDIRECT=307]="TEMPORARY_REDIRECT",e[e.PERMANENT_REDIRECT=308]="PERMANENT_REDIRECT",e[e.BAD_REQUEST=400]="BAD_REQUEST",e[e.UNAUTHORIZED=401]="UNAUTHORIZED",e[e.PAYMENT_REQUIRED=402]="PAYMENT_REQUIRED",e[e.FORBIDDEN=403]="FORBIDDEN",e[e.NOT_FOUND=404]="NOT_FOUND",e[e.METHOD_NOT_ALLOWED=405]="METHOD_NOT_ALLOWED",e[e.NOT_ACCEPTABLE=406]="NOT_ACCEPTABLE",e[e.PROXY_AUTHENTICATION_REQUIRED=407]="PROXY_AUTHENTICATION_REQUIRED",e[e.REQUEST_TIMEOUT=408]="REQUEST_TIMEOUT",e[e.CONFLICT=409]="CONFLICT",e[e.GONE=410]="GONE",e[e.LENGTH_REQUIRED=411]="LENGTH_REQUIRED",e[e.PRECONDITION_FAILED=412]="PRECONDITION_FAILED",e[e.PAYLOAD_TOO_LARGE=413]="PAYLOAD_TOO_LARGE",e[e.URI_TOO_LONG=414]="URI_TOO_LONG",e[e.UNSUPPORTED_MEDIA_TYPE=415]="UNSUPPORTED_MEDIA_TYPE",e[e.RANGE_NOT_SATISFIABLE=416]="RANGE_NOT_SATISFIABLE",e[e.EXPECTATION_FAILED=417]="EXPECTATION_FAILED",e[e.I_AM_A_TEAPOT=418]="I_AM_A_TEAPOT",e[e.MISDIRECTED_REQUEST=421]="MISDIRECTED_REQUEST",e[e.UNPROCESSABLE_ENTITY=422]="UNPROCESSABLE_ENTITY",e[e.LOCKED=423]="LOCKED",e[e.FAILED_DEPENDENCY=424]="FAILED_DEPENDENCY",e[e.UPGRADE_REQUIRED=426]="UPGRADE_REQUIRED",e[e.PRECONDITION_REQUIRED=428]="PRECONDITION_REQUIRED",e[e.TOO_MANY_REQUESTS=429]="TOO_MANY_REQUESTS",e[e.REQUEST_HEADER_FIELDS_TOO_LARGE=431]="REQUEST_HEADER_FIELDS_TOO_LARGE",e[e.UNAVAILABLE_FOR_LEGAL_REASONS=451]="UNAVAILABLE_FOR_LEGAL_REASONS",e[e.INTERNAL_SERVER_ERROR=500]="INTERNAL_SERVER_ERROR",e[e.NOT_IMPLEMENTED=501]="NOT_IMPLEMENTED",e[e.BAD_GATEWAY=502]="BAD_GATEWAY",e[e.SERVICE_UNAVAILABLE=503]="SERVICE_UNAVAILABLE",e[e.GATEWAY_TIMEOUT=504]="GATEWAY_TIMEOUT",e[e.HTTP_VERSION_NOT_SUPPORTED=505]="HTTP_VERSION_NOT_SUPPORTED",e[e.VARIANT_ALSO_NEGOTIATES=506]="VARIANT_ALSO_NEGOTIATES",e[e.INSUFFICIENT_STORAGE=507]="INSUFFICIENT_STORAGE",e[e.LOOP_DETECTED=508]="LOOP_DETECTED",e[e.NOT_EXTENDED=510]="NOT_EXTENDED",e[e.NETWORK_AUTHENTICATION_REQUIRED=511]="NETWORK_AUTHENTICATION_REQUIRED"}(r||(r={}));var u;let d=null===globalThis||void 0===globalThis?void 0:globalThis.fetch;void 0!==o&&!!(null===(u=null==o?void 0:o.versions)||void 0===u?void 0:u.node)&&(d=n(43092));class _{constructor(e=3e4){this.timeout=e}serialize(e){if(!e)return"";const t=[];for(const r in e)if(e.hasOwnProperty(r)&&void 0!==e[r]){const n="function"==typeof e[r].toJSON?e[r].toJSON():e[r];if(null===n){t.push(encodeURIComponent(r));continue}if(Array.isArray(n)){n.forEach((e=>{t.push(encodeURIComponent(r)+"="+encodeURIComponent(e))}));continue}t.push(encodeURIComponent(r)+"="+encodeURIComponent(n))}const n=t.join("&");return n?`?${n}`:""}createRequest({url:e,method:t,timeout:n=this.timeout,query:r,headers:i={},json:o=!0},u){return s(this,void 0,void 0,(function*(){const s=e+this.serialize(r);i["Content-Type"]||(i["Content-Type"]="application/json");const _=new AbortController,p=setTimeout((()=>_.abort()),n);try{const e=yield d(s,{keepalive:!1,method:t,headers:i,body:JSON.stringify(u),signal:_.signal});if(void 0===e)throw new Error("Response is undefined");if(e.status>=400){const t=yield e.text();throw new c(`Http error response: (${e.status}) ${t}`,e.status,e.statusText,t,s)}return o?e.json():e.text()}catch(f){throw f instanceof Error&&"AbortError"===f.name?new l(n,s):f instanceof c?f:new a(String(t),s,f)}finally{clearTimeout(p)}}))}}var p=n(60346),f=n(48110);function m(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]])}return n}function h(e,t,n,r){return new(n||(n=Promise))((function(i,o){function s(e){try{c(r.next(e))}catch(t){o(t)}}function a(e){try{c(r.throw(e))}catch(t){o(t)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}c((r=r.apply(e,t||[])).next())}))}"function"==typeof SuppressedError&&SuppressedError;const g={block:"head"};var y;function v(e,t){const n=Array.isArray(e);void 0===t&&(t=Object.keys(e));const r=n?[]:{};return t.forEach((t=>{const n=e[t];let i;if(void 0!==n){if(Array.isArray(n))return i=v(n),void(r[t]=i);i=new p.A(n),r[t]=i}})),r}!function(e){e.GET_BAKING_RIGHTS="getBakingRights",e.GET_BALLOTS="getBallots",e.GET_BALLOT_LIST="getBallotList",e.GET_BIG_MAP_KEY="getBigMapKey",e.GET_BIG_MAP_EXPR="getBigMapExpr",e.GET_BLOCK_HASH="getBlockHash",e.GET_BLOCK="getBlock",e.GET_BLOCK_HEADER="getBlockHeader",e.GET_BLOCK_METADATA="getBlockMetadata",e.GET_BALANCE="getBalance",e.GET_FULL_BALANCE="getFullBalance",e.GET_STAKED_BALANCE="getStakedBalance",e.GET_UNSTAKED_FINALIZABLE_BALANCE="getUnstakedFinalizableBalance",e.GET_UNSTAKED_FROZEN_BALANCE="getUnstakedFrozenBalance",e.GET_UNSTAKE_REQUESTS="getUnstakeRequests",e.GET_CHAIN_ID="getChainId",e.GET_CONSTANTS="getConstants",e.GET_CONTRACT="getContract",e.GET_CURRENT_PERIOD="getCurrentPeriod",e.GET_CURRENT_PROPOSAL="getCurrentProposal",e.GET_CURRENT_QUORUM="getCurrentQuorum",e.GET_DELEGATE="getDelegate",e.GET_ALL_DELEGATES="getAllDelegates",e.GET_DELEGATES="getDelegates",e.GET_VOTING_INFO="getVotingInfo",e.GET_ATTESTATION_RIGHTS="getAttestationRights",e.GET_ENTRYPOINTS="getEntrypoints",e.GET_LIVE_BLOCKS="getLiveBlocks",e.GET_MANAGER_KEY="getManagerKey",e.GET_NORMALIZED_SCRIPT="getNormalizedScript",e.GET_PROPOSALS="getProposals",e.GET_PROTOCOLS="getProtocols",e.GET_SAPLING_DIFF_BY_CONTRACT="getSaplingDiffByContract",e.GET_SAPLING_DIFF_BY_ID="getSaplingDiffById",e.GET_SCRIPT="getScript",e.GET_STORAGE="getStorage",e.GET_SUCCESSOR_PERIOD="getSuccessorPeriod",e.GET_VOTES_LISTINGS="getVotesListings",e.PACK_DATA="packData",e.GET_STORAGE_USED_SPACE="getStorageUsedSpace",e.GET_STORAGE_PAID_SPACE="getStoragePaidSpace",e.GET_TICKET_BALANCE="getTicketBalance",e.GET_ALL_TICKET_BALANCES="getAllTicketBalances",e.GET_ADAPTIVE_ISSUANCE_LAUNCH_CYCLE="getAdaptiveIssuanceLaunchCycle",e.GET_PENDING_OPERATIONS="getPendingOperations"}(y||(y={}));var b,x,S,T,w,k,E,C,N,A;!function(e){e.TOO_LARGE="too large"}(b||(b={})),function(e){e.BAKING_BONUSES="baking bonuses",e.BAKING_REWARDS="baking rewards",e.BLOCK_FEES="block fees",e.BONDS="bonds",e.BOOTSTRAP="bootstrap",e.BURNED="burned",e.COMMITMENT="commitment",e.DELEGATE_DENOMINATOR="delegate_denominator",e.DELEGATOR_NUMERATOR="delegator_numerator",e.DEPOSITS="deposits",e.ENDORSING_REWARDS="endorsing rewards",e.INVOICE="invoice",e.LOST_ENDORSING_REWARDS="lost endorsing rewards",e.LOST_ATTESTING_REWARDS="lost attesting rewards",e.MINTED="minted",e.NONCE_REVELATION_REWARDS="nonce revelation rewards",e.PUNISHMENTS="punishments",e.SMART_ROLLUP_REFUTATION_PUNISHMENTS="smart_rollup_refutation_punishments",e.SMART_ROLLUP_REFUTATION_REWARDS="smart_rollup_refutation_rewards",e.STORAGE_FEES="storage fees",e.SUBSIDY="subsidy",e.UNSTAKED_DEPOSITS="unstaked_deposits",e.DOUBLE_SIGNING_EVIDENCE_REWARDS="double signing evidence rewards",e.FEES="fees",e.LEGACY_DEPOSITS="legacy_deposits",e.LEGACY_FEES="legacy_fees",e.LEGACY_REWARDS="legacy_rewards",e.REWARDS="rewards"}(x||(x={})),function(e){e.WASM2="wasm_2_0_0",e.ARITH="arith",e.RISCV="riscv"}(S||(S={})),function(e){e.START="start",e.MOVE="move"}(T||(T={})),function(e){e.INBOX_PROOF="inbox_proof",e.REVEAL_PROOF="reveal_proof",e.FIRST_INPUT="first_input"}(w||(w={})),function(e){e.RAW_DATA_PROOF="raw_data_proof",e.METADATA_PROOF="metadata_proof",e.DAL_PAGE_PROOF="dal_page_proof",e.DAL_PARAMETERS_PROOF="dal_parameters_proof"}(k||(k={})),function(e){e.ONGOING="ongoing",e.ENDED="ended"}(E||(E={})),function(e){e.LOSER="loser",e.DRAW="draw"}(C||(C={})),function(e){e.CONFLICT_RESOLVED="conflict_resolved",e.TIMEOUT="timeout"}(N||(N={})),function(e){e.ORIGINATION="origination",e.DELEGATION="delegation",e.REVEAL="reveal",e.TRANSACTION="transaction",e.ACTIVATION="activate_account",e.ATTESTATION="attestation",e.ENDORSEMENT="endorsement",e.PREATTESTATION="preattestation",e.PREENDORSEMENT="preendorsement",e.SET_DEPOSITS_LIMIT="set_deposits_limit",e.DOUBLE_PREATTESTATION_EVIDENCE="double_preattestation_evidence",e.DOUBLE_PREENDORSEMENT_EVIDENCE="double_preendorsement_evidence",e.ATTESTATION_WITH_DAL="attestation_with_dal",e.ENDORSEMENT_WITH_DAL="endorsement_with_dal",e.SEED_NONCE_REVELATION="seed_nonce_revelation",e.DOUBLE_ATTESTATION_EVIDENCE="double_attestation_evidence",e.DOUBLE_ENDORSEMENT_EVIDENCE="double_endorsement_evidence",e.DOUBLE_BAKING_EVIDENCE="double_baking_evidence",e.PROPOSALS="proposals",e.BALLOT="ballot",e.FAILING_NOOP="failing_noop",e.REGISTER_GLOBAL_CONSTANT="register_global_constant",e.TRANSFER_TICKET="transfer_ticket",e.INCREASE_PAID_STORAGE="increase_paid_storage",e.UPDATE_CONSENSUS_KEY="update_consensus_key",e.DRAIN_DELEGATE="drain_delegate",e.VDF_REVELATION="vdf_revelation",e.EVENT="event",e.TICKET_UPDATES="ticket_updates",e.SMART_ROLLUP_ORIGINATE="smart_rollup_originate",e.SMART_ROLLUP_ADD_MESSAGES="smart_rollup_add_messages",e.SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE="smart_rollup_execute_outbox_message",e.SMART_ROLLUP_PUBLISH="smart_rollup_publish",e.SMART_ROLLUP_CEMENT="smart_rollup_cement",e.SMART_ROLLUP_RECOVER_BOND="smart_rollup_recover_bond",e.SMART_ROLLUP_REFUTE="smart_rollup_refute",e.SMART_ROLLUP_TIMEOUT="smart_rollup_timeout",e.DAL_PUBLISH_COMMITMENT="dal_publish_commitment"}(A||(A={}));class I{constructor(e,t="main",n=new _){this.url=e,this.chain=t,this.httpBackend=n}createURL(e){let t=this.url;for(;t.endsWith("/");)t=t.slice(0,-1);return`${t}${e}`}validateAddress(e){const t=(0,f.jl)(e);if(t!==f.nA.VALID)throw new i.Ms(e,(0,f.Z)(t))}validateContract(e){const t=(0,f.Lg)(e);if(t!==f.nA.VALID)throw new i.mC(e,(0,f.Z)(t))}getBlockHash({block:e}=g){return h(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/hash`),method:"GET"})}))}getLiveBlocks({block:e}=g){return h(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/live_blocks`),method:"GET"})}))}getBalance(e,{block:t}=g){return h(this,void 0,void 0,(function*(){this.validateAddress(e);const n=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/balance`),method:"GET"});return new p.A(n)}))}getFullBalance(e,{block:t}=g){return h(this,void 0,void 0,(function*(){this.validateAddress(e);const n=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/full_balance`),method:"GET"});return new p.A(n)}))}getStakedBalance(e,{block:t}=g){return h(this,void 0,void 0,(function*(){this.validateAddress(e);const n=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/staked_balance`),method:"GET"});return new p.A(n)}))}getUnstakedFinalizableBalance(e,{block:t}=g){return h(this,void 0,void 0,(function*(){this.validateAddress(e);const n=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/unstaked_finalizable_balance`),method:"GET"});return new p.A(n)}))}getUnstakedFrozenBalance(e,{block:t}=g){return h(this,void 0,void 0,(function*(){this.validateAddress(e);const n=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/unstaked_frozen_balance`),method:"GET"});return new p.A(n)}))}getUnstakeRequests(e,{block:t}=g){return h(this,void 0,void 0,(function*(){this.validateAddress(e);const n=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/unstake_requests`),method:"GET"});return null===n?null:{finalizable:n.finalizable.map((e=>{var{amount:t}=e,n=m(e,["amount"]);const r=v({amount:t},["amount"]);return Object.assign(Object.assign({},n),{amount:r.amount})})),unfinalizable:{delegate:n.unfinalizable.delegate,requests:n.unfinalizable.requests.map((({amount:e,cycle:t})=>({cycle:t,amount:v({amount:e},["amount"]).amount})))}}}))}getStorage(e,{block:t}=g){return h(this,void 0,void 0,(function*(){return this.validateContract(e),this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/storage`),method:"GET"})}))}getScript(e,{block:t}=g){return h(this,void 0,void 0,(function*(){return this.validateContract(e),this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/script`),method:"GET"})}))}getNormalizedScript(e,t={unparsing_mode:"Readable"},{block:n}=g){return h(this,void 0,void 0,(function*(){return this.validateContract(e),this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${n}/context/contracts/${e}/script/normalized`),method:"POST"},t)}))}getContract(e,{block:t}=g){return h(this,void 0,void 0,(function*(){this.validateAddress(e);const n=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}`),method:"GET"});return Object.assign(Object.assign({},n),{balance:new p.A(n.balance)})}))}getManagerKey(e,{block:t}=g){return h(this,void 0,void 0,(function*(){return this.validateAddress(e),this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/manager_key`),method:"GET"})}))}getDelegate(e,{block:t}=g){return h(this,void 0,void 0,(function*(){let n;this.validateAddress(e);try{n=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/delegate`),method:"GET"})}catch(i){if(!(i instanceof c&&i.status===r.NOT_FOUND))throw i;n=null}return n}))}getBigMapKey(e,t,{block:n}=g){return h(this,void 0,void 0,(function*(){return this.validateAddress(e),this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${n}/context/contracts/${e}/big_map_get`),method:"POST"},t)}))}getBigMapExpr(e,t,{block:n}=g){return h(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${n}/context/big_maps/${e}/${t}`),method:"GET"})}))}getAllDelegates(e={},{block:t}=g){return h(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/delegates`),method:"GET",query:e})}))}getDelegates(e,{block:t}=g){return h(this,void 0,void 0,(function*(){this.validateAddress(e);const n=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/delegates/${e}`),method:"GET"}),r=v(n,["balance","full_balance","current_frozen_deposits","frozen_deposits","frozen_balance","frozen_deposits_limit","staking_balance","delegated_balance","voting_power","total_delegated_stake","staking_denominator"]);return Object.assign(Object.assign(Object.assign({},n),r),{frozen_balance_by_cycle:n.frozen_balance_by_cycle?n.frozen_balance_by_cycle.map((e=>{var{deposit:t,deposits:n,fees:r,rewards:i}=e,o=m(e,["deposit","deposits","fees","rewards"]);const s=v({deposit:t,deposits:n,fees:r,rewards:i},["deposit","deposits","fees","rewards"]);return Object.assign(Object.assign({},o),{deposit:s.deposit,deposits:s.deposits,fees:s.fees,rewards:s.rewards})})):void 0})}))}getVotingInfo(e,{block:t}=g){return h(this,void 0,void 0,(function*(){return this.validateAddress(e),yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/delegates/${e}/voting_info`),method:"GET"})}))}getConstants({block:e}=g){return h(this,void 0,void 0,(function*(){const t=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/context/constants`),method:"GET"}),n=v(t,["time_between_blocks","hard_gas_limit_per_operation","hard_gas_limit_per_block","proof_of_work_threshold","tokens_per_roll","seed_nonce_revelation_tip","block_security_deposit","endorsement_security_deposit","block_reward","endorsement_reward","cost_per_byte","hard_storage_limit_per_operation","test_chain_duration","baking_reward_per_endorsement","delay_per_missing_endorsement","minimal_block_delay","liquidity_baking_subsidy","cache_layout","baking_reward_fixed_portion","baking_reward_bonus_per_slot","endorsing_reward_per_slot","double_baking_punishment","delay_increment_per_round","tx_rollup_commitment_bond","vdf_difficulty","sc_rollup_stake_amount","minimal_stake"]);return Object.assign(Object.assign({},t),n)}))}getBlock({block:e,version:t}=g){return h(this,void 0,void 0,(function*(){const n={url:this.createURL(`/chains/${this.chain}/blocks/${e}`),method:"GET"};return void 0!==t&&(n.query={version:t}),yield this.httpBackend.createRequest(n)}))}getBlockHeader({block:e}=g){return h(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/header`),method:"GET"})}))}getBlockMetadata({block:e,version:t}=g){return h(this,void 0,void 0,(function*(){const n={url:this.createURL(`/chains/${this.chain}/blocks/${e}/metadata`),method:"GET"};return void 0!==t&&(n.query={version:t}),yield this.httpBackend.createRequest(n)}))}getBakingRights(e={},{block:t}=g){return h(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/helpers/baking_rights`),method:"GET",query:e})}))}getAttestationRights(e={},{block:t}=g){return h(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/helpers/attestation_rights`),method:"GET",query:e})}))}getBallotList({block:e}=g){return h(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/votes/ballot_list`),method:"GET"})}))}getBallots({block:e}=g){return h(this,void 0,void 0,(function*(){return v(yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/votes/ballots`),method:"GET"}),["yay","nay","pass"])}))}getCurrentProposal({block:e}=g){return h(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/votes/current_proposal`),method:"GET"})}))}getCurrentQuorum({block:e}=g){return h(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/votes/current_quorum`),method:"GET"})}))}getVotesListings({block:e}=g){return h(this,void 0,void 0,(function*(){const t=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/votes/listings`),method:"GET"});return t.map((e=>(e.voting_power&&(e.voting_power=new p.A(e.voting_power)),e))),t}))}getProposals({block:e}=g){return h(this,void 0,void 0,(function*(){const t=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/votes/proposals`),method:"GET"});return t.map((e=>e[1]=new p.A(e[1]))),t}))}forgeOperations(e,{block:t}=g){return h(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/helpers/forge/operations`),method:"POST"},e)}))}injectOperation(e){return h(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL("/injection/operation"),method:"POST"},e)}))}preapplyOperations(e,{block:t,version:n}=g){return h(this,void 0,void 0,(function*(){const r={url:this.createURL(`/chains/${this.chain}/blocks/${t}/helpers/preapply/operations`),method:"POST"};return void 0!==n&&(r.query={version:n}),yield this.httpBackend.createRequest(r,e)}))}getEntrypoints(e,{block:t}=g){return h(this,void 0,void 0,(function*(){this.validateContract(e);return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/entrypoints`),method:"GET"})}))}runOperation(e,{block:t,version:n}=g){return h(this,void 0,void 0,(function*(){const r={url:this.createURL(`/chains/${this.chain}/blocks/${t}/helpers/scripts/run_operation`),method:"POST"};return void 0!==n&&(r.query={version:n}),yield this.httpBackend.createRequest(r,e)}))}simulateOperation(e,{block:t,version:n}=g){return h(this,void 0,void 0,(function*(){const r={url:this.createURL(`/chains/${this.chain}/blocks/${t}/helpers/scripts/simulate_operation`),method:"POST"};return void 0!==n&&(r.query={version:n}),yield this.httpBackend.createRequest(r,e)}))}runCode(e,{block:t}=g){return h(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/helpers/scripts/run_code`),method:"POST"},e)}))}runScriptView(e,t){var{unparsing_mode:n="Readable"}=e,r=m(e,["unparsing_mode"]),i=(void 0===t?g:t).block;return h(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${i}/helpers/scripts/run_script_view`),method:"POST"},Object.assign({unparsing_mode:n},r))}))}runView(e,t){var{unparsing_mode:n="Readable"}=e,r=m(e,["unparsing_mode"]),i=(void 0===t?g:t).block;return h(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${i}/helpers/scripts/run_view`),method:"POST"},Object.assign({unparsing_mode:n},r))}))}getChainId(){return h(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/chain_id`),method:"GET"})}))}packData(e,{block:t}=g){return h(this,void 0,void 0,(function*(){const n=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/helpers/scripts/pack_data`),method:"POST"},e),{gas:r}=n,i=m(n,["gas"]);let o=r;const s=new p.A(r||"");return s.isNaN()||(o=s),Object.assign({gas:o},i)}))}getRpcUrl(){return this.url}getCurrentPeriod({block:e}=g){return h(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/votes/current_period`),method:"GET"})}))}getSuccessorPeriod({block:e}=g){return h(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/votes/successor_period`),method:"GET"})}))}getSaplingDiffById(e,{block:t}=g){return h(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/sapling/${e}/get_diff`),method:"GET"})}))}getSaplingDiffByContract(e,{block:t}=g){return h(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/single_sapling_get_diff`),method:"GET"})}))}getProtocols({block:e}=g){return h(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/protocols`),method:"GET"})}))}getStorageUsedSpace(e,{block:t}=g){return h(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/storage/used_space`),method:"GET"})}))}getStoragePaidSpace(e,{block:t}=g){return h(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/storage/paid_space`),method:"GET"})}))}getTicketBalance(e,t,{block:n}=g){return h(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${n}/context/contracts/${e}/ticket_balance`),method:"POST"},t)}))}getAllTicketBalances(e,{block:t}=g){return h(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/all_ticket_balances`),method:"GET"})}))}getAdaptiveIssuanceLaunchCycle({block:e}=g){return h(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/context/adaptive_issuance_launch_cycle`),method:"GET"})}))}getPendingOperations(e={}){return h(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/mempool/pending_operations`),method:"GET",query:e})}))}}var D=n(31635);function P(e){return"function"==typeof e}function M(e){var t=e((function(e){Error.call(e),e.stack=(new Error).stack}));return t.prototype=Object.create(Error.prototype),t.prototype.constructor=t,t}var O=M((function(e){return function(t){e(this),this.message=t?t.length+" errors occurred during unsubscription:\n"+t.map((function(e,t){return t+1+") "+e.toString()})).join("\n "):"",this.name="UnsubscriptionError",this.errors=t}}));function F(e,t){if(e){var n=e.indexOf(t);0<=n&&e.splice(n,1)}}var R=function(){function e(e){this.initialTeardown=e,this.closed=!1,this._parentage=null,this._finalizers=null}return e.prototype.unsubscribe=function(){var e,t,n,r,i;if(!this.closed){this.closed=!0;var o=this._parentage;if(o)if(this._parentage=null,Array.isArray(o))try{for(var s=(0,D.__values)(o),a=s.next();!a.done;a=s.next()){a.value.remove(this)}}catch(p){e={error:p}}finally{try{a&&!a.done&&(t=s.return)&&t.call(s)}finally{if(e)throw e.error}}else o.remove(this);var c=this.initialTeardown;if(P(c))try{c()}catch(f){i=f instanceof O?f.errors:[f]}var l=this._finalizers;if(l){this._finalizers=null;try{for(var u=(0,D.__values)(l),d=u.next();!d.done;d=u.next()){var _=d.value;try{z(_)}catch(m){i=null!=i?i:[],m instanceof O?i=(0,D.__spreadArray)((0,D.__spreadArray)([],(0,D.__read)(i)),(0,D.__read)(m.errors)):i.push(m)}}}catch(h){n={error:h}}finally{try{d&&!d.done&&(r=u.return)&&r.call(u)}finally{if(n)throw n.error}}}if(i)throw new O(i)}},e.prototype.add=function(t){var n;if(t&&t!==this)if(this.closed)z(t);else{if(t instanceof e){if(t.closed||t._hasParent(this))return;t._addParent(this)}(this._finalizers=null!==(n=this._finalizers)&&void 0!==n?n:[]).push(t)}},e.prototype._hasParent=function(e){var t=this._parentage;return t===e||Array.isArray(t)&&t.includes(e)},e.prototype._addParent=function(e){var t=this._parentage;this._parentage=Array.isArray(t)?(t.push(e),t):t?[t,e]:e},e.prototype._removeParent=function(e){var t=this._parentage;t===e?this._parentage=null:Array.isArray(t)&&F(t,e)},e.prototype.remove=function(t){var n=this._finalizers;n&&F(n,t),t instanceof e&&t._removeParent(this)},e.EMPTY=function(){var t=new e;return t.closed=!0,t}(),e}(),L=R.EMPTY;function j(e){return e instanceof R||e&&"closed"in e&&P(e.remove)&&P(e.add)&&P(e.unsubscribe)}function z(e){P(e)?e():e.unsubscribe()}var U={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1},B={setTimeout:function(e,t){for(var n=[],r=2;r<arguments.length;r++)n[r-2]=arguments[r];var i=B.delegate;return(null==i?void 0:i.setTimeout)?i.setTimeout.apply(i,(0,D.__spreadArray)([e,t],(0,D.__read)(n))):setTimeout.apply(void 0,(0,D.__spreadArray)([e,t],(0,D.__read)(n)))},clearTimeout:function(e){var t=B.delegate;return((null==t?void 0:t.clearTimeout)||clearTimeout)(e)},delegate:void 0};function q(e){B.setTimeout((function(){var t=U.onUnhandledError;if(!t)throw e;t(e)}))}function V(){}var K=J("C",void 0,void 0);function J(e,t,n){return{kind:e,value:t,error:n}}var W=null;function H(e){if(U.useDeprecatedSynchronousErrorHandling){var t=!W;if(t&&(W={errorThrown:!1,error:null}),e(),t){var n=W,r=n.errorThrown,i=n.error;if(W=null,r)throw i}}else e()}var G=function(e){function t(t){var n=e.call(this)||this;return n.isStopped=!1,t?(n.destination=t,j(t)&&t.add(n)):n.destination=te,n}return(0,D.__extends)(t,e),t.create=function(e,t,n){return new X(e,t,n)},t.prototype.next=function(e){this.isStopped?ee(function(e){return J("N",e,void 0)}(e),this):this._next(e)},t.prototype.error=function(e){this.isStopped?ee(J("E",void 0,e),this):(this.isStopped=!0,this._error(e))},t.prototype.complete=function(){this.isStopped?ee(K,this):(this.isStopped=!0,this._complete())},t.prototype.unsubscribe=function(){this.closed||(this.isStopped=!0,e.prototype.unsubscribe.call(this),this.destination=null)},t.prototype._next=function(e){this.destination.next(e)},t.prototype._error=function(e){try{this.destination.error(e)}finally{this.unsubscribe()}},t.prototype._complete=function(){try{this.destination.complete()}finally{this.unsubscribe()}},t}(R),Q=Function.prototype.bind;function Y(e,t){return Q.call(e,t)}var Z=function(){function e(e){this.partialObserver=e}return e.prototype.next=function(e){var t=this.partialObserver;if(t.next)try{t.next(e)}catch(n){$(n)}},e.prototype.error=function(e){var t=this.partialObserver;if(t.error)try{t.error(e)}catch(n){$(n)}else $(e)},e.prototype.complete=function(){var e=this.partialObserver;if(e.complete)try{e.complete()}catch(t){$(t)}},e}(),X=function(e){function t(t,n,r){var i,o,s=e.call(this)||this;P(t)||!t?i={next:null!=t?t:void 0,error:null!=n?n:void 0,complete:null!=r?r:void 0}:s&&U.useDeprecatedNextContext?((o=Object.create(t)).unsubscribe=function(){return s.unsubscribe()},i={next:t.next&&Y(t.next,o),error:t.error&&Y(t.error,o),complete:t.complete&&Y(t.complete,o)}):i=t;return s.destination=new Z(i),s}return(0,D.__extends)(t,e),t}(G);function $(e){var t;U.useDeprecatedSynchronousErrorHandling?(t=e,U.useDeprecatedSynchronousErrorHandling&&W&&(W.errorThrown=!0,W.error=t)):q(e)}function ee(e,t){var n=U.onStoppedNotification;n&&B.setTimeout((function(){return n(e,t)}))}var te={closed:!0,next:V,error:function(e){throw e},complete:V},ne="function"==typeof Symbol&&Symbol.observable||"@@observable";function re(e){return e}function ie(e){return 0===e.length?re:1===e.length?e[0]:function(t){return e.reduce((function(e,t){return t(e)}),t)}}var oe=function(){function e(e){e&&(this._subscribe=e)}return e.prototype.lift=function(t){var n=new e;return n.source=this,n.operator=t,n},e.prototype.subscribe=function(e,t,n){var r,i=this,o=(r=e)&&r instanceof G||function(e){return e&&P(e.next)&&P(e.error)&&P(e.complete)}(r)&&j(r)?e:new X(e,t,n);return H((function(){var e=i,t=e.operator,n=e.source;o.add(t?t.call(o,n):n?i._subscribe(o):i._trySubscribe(o))})),o},e.prototype._trySubscribe=function(e){try{return this._subscribe(e)}catch(t){e.error(t)}},e.prototype.forEach=function(e,t){var n=this;return new(t=se(t))((function(t,r){var i=new X({next:function(t){try{e(t)}catch(n){r(n),i.unsubscribe()}},error:r,complete:t});n.subscribe(i)}))},e.prototype._subscribe=function(e){var t;return null===(t=this.source)||void 0===t?void 0:t.subscribe(e)},e.prototype[ne]=function(){return this},e.prototype.pipe=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return ie(e)(this)},e.prototype.toPromise=function(e){var t=this;return new(e=se(e))((function(e,n){var r;t.subscribe((function(e){return r=e}),(function(e){return n(e)}),(function(){return e(r)}))}))},e.create=function(t){return new e(t)},e}();function se(e){var t;return null!==(t=null!=e?e:U.Promise)&&void 0!==t?t:Promise}var ae=M((function(e){return function(){e(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"}})),ce=function(e){function t(){var t=e.call(this)||this;return t.closed=!1,t.currentObservers=null,t.observers=[],t.isStopped=!1,t.hasError=!1,t.thrownError=null,t}return(0,D.__extends)(t,e),t.prototype.lift=function(e){var t=new le(this,this);return t.operator=e,t},t.prototype._throwIfClosed=function(){if(this.closed)throw new ae},t.prototype.next=function(e){var t=this;H((function(){var n,r;if(t._throwIfClosed(),!t.isStopped){t.currentObservers||(t.currentObservers=Array.from(t.observers));try{for(var i=(0,D.__values)(t.currentObservers),o=i.next();!o.done;o=i.next()){o.value.next(e)}}catch(s){n={error:s}}finally{try{o&&!o.done&&(r=i.return)&&r.call(i)}finally{if(n)throw n.error}}}}))},t.prototype.error=function(e){var t=this;H((function(){if(t._throwIfClosed(),!t.isStopped){t.hasError=t.isStopped=!0,t.thrownError=e;for(var n=t.observers;n.length;)n.shift().error(e)}}))},t.prototype.complete=function(){var e=this;H((function(){if(e._throwIfClosed(),!e.isStopped){e.isStopped=!0;for(var t=e.observers;t.length;)t.shift().complete()}}))},t.prototype.unsubscribe=function(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null},Object.defineProperty(t.prototype,"observed",{get:function(){var e;return(null===(e=this.observers)||void 0===e?void 0:e.length)>0},enumerable:!1,configurable:!0}),t.prototype._trySubscribe=function(t){return this._throwIfClosed(),e.prototype._trySubscribe.call(this,t)},t.prototype._subscribe=function(e){return this._throwIfClosed(),this._checkFinalizedStatuses(e),this._innerSubscribe(e)},t.prototype._innerSubscribe=function(e){var t=this,n=this,r=n.hasError,i=n.isStopped,o=n.observers;return r||i?L:(this.currentObservers=null,o.push(e),new R((function(){t.currentObservers=null,F(o,e)})))},t.prototype._checkFinalizedStatuses=function(e){var t=this,n=t.hasError,r=t.thrownError,i=t.isStopped;n?e.error(r):i&&e.complete()},t.prototype.asObservable=function(){var e=new oe;return e.source=this,e},t.create=function(e,t){return new le(e,t)},t}(oe),le=function(e){function t(t,n){var r=e.call(this)||this;return r.destination=t,r.source=n,r}return(0,D.__extends)(t,e),t.prototype.next=function(e){var t,n;null===(n=null===(t=this.destination)||void 0===t?void 0:t.next)||void 0===n||n.call(t,e)},t.prototype.error=function(e){var t,n;null===(n=null===(t=this.destination)||void 0===t?void 0:t.error)||void 0===n||n.call(t,e)},t.prototype.complete=function(){var e,t;null===(t=null===(e=this.destination)||void 0===e?void 0:e.complete)||void 0===t||t.call(e)},t.prototype._subscribe=function(e){var t,n;return null!==(n=null===(t=this.source)||void 0===t?void 0:t.subscribe(e))&&void 0!==n?n:L},t}(ce),ue={now:function(){return(ue.delegate||Date).now()},delegate:void 0},de=function(e){function t(t,n,r){void 0===t&&(t=1/0),void 0===n&&(n=1/0),void 0===r&&(r=ue);var i=e.call(this)||this;return i._bufferSize=t,i._windowTime=n,i._timestampProvider=r,i._buffer=[],i._infiniteTimeWindow=!0,i._infiniteTimeWindow=n===1/0,i._bufferSize=Math.max(1,t),i._windowTime=Math.max(1,n),i}return(0,D.__extends)(t,e),t.prototype.next=function(t){var n=this,r=n.isStopped,i=n._buffer,o=n._infiniteTimeWindow,s=n._timestampProvider,a=n._windowTime;r||(i.push(t),!o&&i.push(s.now()+a)),this._trimBuffer(),e.prototype.next.call(this,t)},t.prototype._subscribe=function(e){this._throwIfClosed(),this._trimBuffer();for(var t=this._innerSubscribe(e),n=this._infiniteTimeWindow,r=this._buffer.slice(),i=0;i<r.length&&!e.closed;i+=n?1:2)e.next(r[i]);return this._checkFinalizedStatuses(e),t},t.prototype._trimBuffer=function(){var e=this,t=e._bufferSize,n=e._timestampProvider,r=e._buffer,i=e._infiniteTimeWindow,o=(i?1:2)*t;if(t<1/0&&o<r.length&&r.splice(0,r.length-o),!i){for(var s=n.now(),a=0,c=1;c<r.length&&r[c]<=s;c+=2)a=c;a&&r.splice(0,a+1)}},t}(ce),_e=function(e){function t(t){var n=e.call(this)||this;return n._value=t,n}return(0,D.__extends)(t,e),Object.defineProperty(t.prototype,"value",{get:function(){return this.getValue()},enumerable:!1,configurable:!0}),t.prototype._subscribe=function(t){var n=e.prototype._subscribe.call(this,t);return!n.closed&&t.next(this._value),n},t.prototype.getValue=function(){var e=this,t=e.hasError,n=e.thrownError,r=e._value;if(t)throw n;return this._throwIfClosed(),r},t.prototype.next=function(t){e.prototype.next.call(this,this._value=t)},t}(ce);function pe(e,t){var n=P(e)?e:function(){return e},r=function(e){return e.error(n())};return new oe(t?function(e){return t.schedule(r,0,e)}:r)}var fe=function(e){return e&&"number"==typeof e.length&&"function"!=typeof e};function me(e){return P(null==e?void 0:e.then)}function he(e){return P(e[ne])}function ge(e){return Symbol.asyncIterator&&P(null==e?void 0:e[Symbol.asyncIterator])}function ye(e){return new TypeError("You provided "+(null!==e&&"object"==typeof e?"an invalid object":"'"+e+"'")+" where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.")}var ve="function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator";function be(e){return P(null==e?void 0:e[ve])}function xe(e){return(0,D.__asyncGenerator)(this,arguments,(function(){var t,n,r;return(0,D.__generator)(this,(function(i){switch(i.label){case 0:t=e.getReader(),i.label=1;case 1:i.trys.push([1,,9,10]),i.label=2;case 2:return[4,(0,D.__await)(t.read())];case 3:return n=i.sent(),r=n.value,n.done?[4,(0,D.__await)(void 0)]:[3,5];case 4:return[2,i.sent()];case 5:return[4,(0,D.__await)(r)];case 6:return[4,i.sent()];case 7:return i.sent(),[3,2];case 8:return[3,10];case 9:return t.releaseLock(),[7];case 10:return[2]}}))}))}function Se(e){return P(null==e?void 0:e.getReader)}function Te(e){if(e instanceof oe)return e;if(null!=e){if(he(e))return i=e,new oe((function(e){var t=i[ne]();if(P(t.subscribe))return t.subscribe(e);throw new TypeError("Provided object does not correctly implement Symbol.observable")}));if(fe(e))return r=e,new oe((function(e){for(var t=0;t<r.length&&!e.closed;t++)e.next(r[t]);e.complete()}));if(me(e))return n=e,new oe((function(e){n.then((function(t){e.closed||(e.next(t),e.complete())}),(function(t){return e.error(t)})).then(null,q)}));if(ge(e))return we(e);if(be(e))return t=e,new oe((function(e){var n,r;try{for(var i=(0,D.__values)(t),o=i.next();!o.done;o=i.next()){var s=o.value;if(e.next(s),e.closed)return}}catch(a){n={error:a}}finally{try{o&&!o.done&&(r=i.return)&&r.call(i)}finally{if(n)throw n.error}}e.complete()}));if(Se(e))return we(xe(e))}var t,n,r,i;throw ye(e)}function we(e){return new oe((function(t){(function(e,t){var n,r,i,o;return(0,D.__awaiter)(this,void 0,void 0,(function(){var s,a;return(0,D.__generator)(this,(function(c){switch(c.label){case 0:c.trys.push([0,5,6,11]),n=(0,D.__asyncValues)(e),c.label=1;case 1:return[4,n.next()];case 2:if((r=c.sent()).done)return[3,4];if(s=r.value,t.next(s),t.closed)return[2];c.label=3;case 3:return[3,1];case 4:return[3,11];case 5:return a=c.sent(),i={error:a},[3,11];case 6:return c.trys.push([6,,9,10]),r&&!r.done&&(o=n.return)?[4,o.call(n)]:[3,8];case 7:c.sent(),c.label=8;case 8:return[3,10];case 9:if(i)throw i.error;return[7];case 10:return[7];case 11:return t.complete(),[2]}}))}))})(e,t).catch((function(e){return t.error(e)}))}))}function ke(e){return new oe((function(t){Te(e()).subscribe(t)}))}var Ee=new oe((function(e){return e.complete()}));function Ce(e,t,n){if(null==t&&(t=e,e=0),t<=0)return Ee;var r=t+e;return new oe(n?function(t){var i=e;return n.schedule((function(){i<r?(t.next(i++),this.schedule()):t.complete()}))}:function(t){for(var n=e;n<r&&!t.closed;)t.next(n++);t.complete()})}function Ne(e){return e&&P(e.schedule)}function Ae(e){return e[e.length-1]}function Ie(e){return Ne(Ae(e))?e.pop():void 0}function De(e,t,n,r,i){void 0===r&&(r=0),void 0===i&&(i=!1);var o=t.schedule((function(){n(),i?e.add(this.schedule(null,r)):this.unsubscribe()}),r);if(e.add(o),!i)return o}function Pe(e){return P(null==e?void 0:e.lift)}function Me(e){return function(t){if(Pe(t))return t.lift((function(t){try{return e(t,this)}catch(n){this.error(n)}}));throw new TypeError("Unable to lift unknown Observable type")}}function Oe(e,t,n,r,i){return new Fe(e,t,n,r,i)}var Fe=function(e){function t(t,n,r,i,o,s){var a=e.call(this,t)||this;return a.onFinalize=o,a.shouldUnsubscribe=s,a._next=n?function(e){try{n(e)}catch(r){t.error(r)}}:e.prototype._next,a._error=i?function(e){try{i(e)}catch(e){t.error(e)}finally{this.unsubscribe()}}:e.prototype._error,a._complete=r?function(){try{r()}catch(e){t.error(e)}finally{this.unsubscribe()}}:e.prototype._complete,a}return(0,D.__extends)(t,e),t.prototype.unsubscribe=function(){var t;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){var n=this.closed;e.prototype.unsubscribe.call(this),!n&&(null===(t=this.onFinalize)||void 0===t||t.call(this))}},t}(G);function Re(e,t){return void 0===t&&(t=0),Me((function(n,r){n.subscribe(Oe(r,(function(n){return De(r,e,(function(){return r.next(n)}),t)}),(function(){return De(r,e,(function(){return r.complete()}),t)}),(function(n){return De(r,e,(function(){return r.error(n)}),t)})))}))}function Le(e,t){return void 0===t&&(t=0),Me((function(n,r){r.add(e.schedule((function(){return n.subscribe(r)}),t))}))}function je(e,t){if(!e)throw new Error("Iterable cannot be null");return new oe((function(n){De(n,t,(function(){var r=e[Symbol.asyncIterator]();De(n,t,(function(){r.next().then((function(e){e.done?n.complete():n.next(e.value)}))}),0,!0)}))}))}function ze(e,t){if(null!=e){if(he(e))return function(e,t){return Te(e).pipe(Le(t),Re(t))}(e,t);if(fe(e))return function(e,t){return new oe((function(n){var r=0;return t.schedule((function(){r===e.length?n.complete():(n.next(e[r++]),n.closed||this.schedule())}))}))}(e,t);if(me(e))return function(e,t){return Te(e).pipe(Le(t),Re(t))}(e,t);if(ge(e))return je(e,t);if(be(e))return function(e,t){return new oe((function(n){var r;return De(n,t,(function(){r=e[ve](),De(n,t,(function(){var e,t,i;try{t=(e=r.next()).value,i=e.done}catch(o){return void n.error(o)}i?n.complete():n.next(t)}),0,!0)})),function(){return P(null==r?void 0:r.return)&&r.return()}}))}(e,t);if(Se(e))return function(e,t){return je(xe(e),t)}(e,t)}throw ye(e)}function Ue(e,t){return t?ze(e,t):Te(e)}function Be(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return Ue(e,Ie(e))}var qe=Array.isArray,Ve=Object.getPrototypeOf,Ke=Object.prototype,Je=Object.keys;function We(e){if(1===e.length){var t=e[0];if(qe(t))return{args:t,keys:null};if((r=t)&&"object"==typeof r&&Ve(r)===Ke){var n=Je(t);return{args:n.map((function(e){return t[e]})),keys:n}}}var r;return{args:e,keys:null}}function He(e,t){return Me((function(n,r){var i=0;n.subscribe(Oe(r,(function(n){r.next(e.call(t,n,i++))})))}))}var Ge=Array.isArray;function Qe(e){return He((function(t){return function(e,t){return Ge(t)?e.apply(void 0,(0,D.__spreadArray)([],(0,D.__read)(t))):e(t)}(e,t)}))}function Ye(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var n=Ie(e),r=function(e){return P(Ae(e))?e.pop():void 0}(e),i=We(e),o=i.args,s=i.keys;if(0===o.length)return Ue([],n);var a=new oe(function(e,t,n){void 0===n&&(n=re);return function(r){Ze(t,(function(){for(var i=e.length,o=new Array(i),s=i,a=i,c=function(i){Ze(t,(function(){var c=Ue(e[i],t),l=!1;c.subscribe(Oe(r,(function(e){o[i]=e,l||(l=!0,a--),a||r.next(n(o.slice()))}),(function(){--s||r.complete()})))}),r)},l=0;l<i;l++)c(l)}),r)}}(o,n,s?function(e){return function(e,t){return e.reduce((function(e,n,r){return e[n]=t[r],e}),{})}(s,e)}:re));return r?a.pipe(Qe(r)):a}function Ze(e,t,n){e?De(n,e,t):t()}function Xe(e,t,n){return void 0===n&&(n=1/0),P(t)?Xe((function(n,r){return He((function(e,i){return t(n,e,r,i)}))(Te(e(n,r)))}),n):("number"==typeof t&&(n=t),Me((function(t,r){return function(e,t,n,r,i,o,s,a){var c=[],l=0,u=0,d=!1,_=function(){!d||c.length||l||t.complete()},p=function(e){return l<r?f(e):c.push(e)},f=function(e){o&&t.next(e),l++;var a=!1;Te(n(e,u++)).subscribe(Oe(t,(function(e){null==i||i(e),o?p(e):t.next(e)}),(function(){a=!0}),void 0,(function(){if(a)try{l--;for(var e=function(){var e=c.shift();s?De(t,s,(function(){return f(e)})):f(e)};c.length&&l<r;)e();_()}catch(n){t.error(n)}})))};return e.subscribe(Oe(t,p,(function(){d=!0,_()}))),function(){null==a||a()}}(t,r,e,n)})))}function $e(){return void 0===(e=1)&&(e=1/0),Xe(re,e);var e}function et(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return $e()(Ue(e,Ie(e)))}var tt=new oe(V);var nt=function(e){function t(t,n){return e.call(this)||this}return(0,D.__extends)(t,e),t.prototype.schedule=function(e,t){return void 0===t&&(t=0),this},t}(R),rt={setInterval:function(e,t){for(var n=[],r=2;r<arguments.length;r++)n[r-2]=arguments[r];var i=rt.delegate;return(null==i?void 0:i.setInterval)?i.setInterval.apply(i,(0,D.__spreadArray)([e,t],(0,D.__read)(n))):setInterval.apply(void 0,(0,D.__spreadArray)([e,t],(0,D.__read)(n)))},clearInterval:function(e){var t=rt.delegate;return((null==t?void 0:t.clearInterval)||clearInterval)(e)},delegate:void 0},it=function(e){function t(t,n){var r=e.call(this,t,n)||this;return r.scheduler=t,r.work=n,r.pending=!1,r}return(0,D.__extends)(t,e),t.prototype.schedule=function(e,t){var n;if(void 0===t&&(t=0),this.closed)return this;this.state=e;var r=this.id,i=this.scheduler;return null!=r&&(this.id=this.recycleAsyncId(i,r,t)),this.pending=!0,this.delay=t,this.id=null!==(n=this.id)&&void 0!==n?n:this.requestAsyncId(i,this.id,t),this},t.prototype.requestAsyncId=function(e,t,n){return void 0===n&&(n=0),rt.setInterval(e.flush.bind(e,this),n)},t.prototype.recycleAsyncId=function(e,t,n){if(void 0===n&&(n=0),null!=n&&this.delay===n&&!1===this.pending)return t;null!=t&&rt.clearInterval(t)},t.prototype.execute=function(e,t){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;var n=this._execute(e,t);if(n)return n;!1===this.pending&&null!=this.id&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))},t.prototype._execute=function(e,t){var n,r=!1;try{this.work(e)}catch(i){r=!0,n=i||new Error("Scheduled action threw falsy error")}if(r)return this.unsubscribe(),n},t.prototype.unsubscribe=function(){if(!this.closed){var t=this.id,n=this.scheduler,r=n.actions;this.work=this.state=this.scheduler=null,this.pending=!1,F(r,this),null!=t&&(this.id=this.recycleAsyncId(n,t,null)),this.delay=null,e.prototype.unsubscribe.call(this)}},t}(nt),ot=function(){function e(t,n){void 0===n&&(n=e.now),this.schedulerActionCtor=t,this.now=n}return e.prototype.schedule=function(e,t,n){return void 0===t&&(t=0),new this.schedulerActionCtor(this,e).schedule(n,t)},e.now=ue.now,e}(),st=new(function(e){function t(t,n){void 0===n&&(n=ot.now);var r=e.call(this,t,n)||this;return r.actions=[],r._active=!1,r}return(0,D.__extends)(t,e),t.prototype.flush=function(e){var t=this.actions;if(this._active)t.push(e);else{var n;this._active=!0;do{if(n=e.execute(e.state,e.delay))break}while(e=t.shift());if(this._active=!1,n){for(;e=t.shift();)e.unsubscribe();throw n}}},t}(ot))(it),at=st;function ct(e){return e instanceof Date&&!isNaN(e)}function lt(e,t,n){void 0===e&&(e=0),void 0===n&&(n=at);var r=-1;return null!=t&&(Ne(t)?n=t:r=t),new oe((function(t){var i=ct(e)?+e-n.now():e;i<0&&(i=0);var o=0;return n.schedule((function(){t.closed||(t.next(o++),0<=r?this.schedule(void 0,r):t.complete())}),i)}))}function ut(e,t){return Me((function(n,r){var i=null,o=0,s=!1,a=function(){return s&&!i&&r.complete()};n.subscribe(Oe(r,(function(n){null==i||i.unsubscribe();var s=0,c=o++;Te(e(n,c)).subscribe(i=Oe(r,(function(e){return r.next(t?t(n,e,c,s++):e)}),(function(){i=null,a()})))}),(function(){s=!0,a()})))}))}var dt=M((function(e){return function(t){void 0===t&&(t=null),e(this),this.message="Timeout has occurred",this.name="TimeoutError",this.info=t}}));function _t(e,t){var n=ct(e)?{first:e}:"number"==typeof e?{each:e}:e,r=n.first,i=n.each,o=n.with,s=void 0===o?pt:o,a=n.scheduler,c=void 0===a?null!=t?t:st:a,l=n.meta,u=void 0===l?null:l;if(null==r&&null==i)throw new TypeError("No timeout provided.");return Me((function(e,t){var n,o,a=null,l=0,d=function(e){o=De(t,c,(function(){try{n.unsubscribe(),Te(s({meta:u,lastValue:a,seen:l})).subscribe(t)}catch(e){t.error(e)}}),e)};n=e.subscribe(Oe(t,(function(e){null==o||o.unsubscribe(),l++,t.next(a=e),i>0&&d(i)}),void 0,void 0,(function(){(null==o?void 0:o.closed)||null==o||o.unsubscribe(),a=null}))),!l&&d(null!=r?"number"==typeof r?r:+r-c.now():i)}))}function pt(e){throw new dt(e)}function ft(e,t){return P(t)?Xe(e,t,1):Xe(e,1)}function mt(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return function(t){return et(t,Be.apply(void 0,(0,D.__spreadArray)([],(0,D.__read)(e))))}}function ht(e,t,n){var r=P(e)||t||n?{next:e,error:t,complete:n}:e;return r?Me((function(e,t){var n;null===(n=r.subscribe)||void 0===n||n.call(r);var i=!0;e.subscribe(Oe(t,(function(e){var n;null===(n=r.next)||void 0===n||n.call(r,e),t.next(e)}),(function(){var e;i=!1,null===(e=r.complete)||void 0===e||e.call(r),t.complete()}),(function(e){var n;i=!1,null===(n=r.error)||void 0===n||n.call(r,e),t.error(e)}),(function(){var e,t;i&&(null===(e=r.unsubscribe)||void 0===e||e.call(r)),null===(t=r.finalize)||void 0===t||t.call(r)})))})):re}function gt(e){void 0===e&&(e={});var t=e.connector,n=void 0===t?function(){return new ce}:t,r=e.resetOnError,i=void 0===r||r,o=e.resetOnComplete,s=void 0===o||o,a=e.resetOnRefCountZero,c=void 0===a||a;return function(e){var t,r,o,a=0,l=!1,u=!1,d=function(){null==r||r.unsubscribe(),r=void 0},_=function(){d(),t=o=void 0,l=u=!1},p=function(){var e=t;_(),null==e||e.unsubscribe()};return Me((function(e,f){a++,u||l||d();var m=o=null!=o?o:n();f.add((function(){0!==--a||u||l||(r=yt(p,c))})),m.subscribe(f),!t&&a>0&&(t=new X({next:function(e){return m.next(e)},error:function(e){u=!0,d(),r=yt(_,i,e),m.error(e)},complete:function(){l=!0,d(),r=yt(_,s),m.complete()}}),Te(e).subscribe(t))}))(e)}}function yt(e,t){for(var n=[],r=2;r<arguments.length;r++)n[r-2]=arguments[r];if(!0!==t){if(!1!==t){var i=new X({next:function(){i.unsubscribe(),e()}});return Te(t.apply(void 0,(0,D.__spreadArray)([],(0,D.__read)(n)))).subscribe(i)}}else e()}function vt(e,t,n){var r,i,o,s,a=!1;return e&&"object"==typeof e?(r=e.bufferSize,s=void 0===r?1/0:r,i=e.windowTime,t=void 0===i?1/0:i,a=void 0!==(o=e.refCount)&&o,n=e.scheduler):s=null!=e?e:1/0,gt({connector:function(){return new de(s,t,n)},resetOnError:!0,resetOnComplete:!1,resetOnRefCountZero:a})}function bt(e,t){return Me((function(n,r){var i=0;n.subscribe(Oe(r,(function(n){return e.call(t,n,i++)&&r.next(n)})))}))}var xt=M((function(e){return function(){e(this),this.name="EmptyError",this.message="no elements in sequence"}}));function St(){return new xt}function Tt(e,t){var n=arguments.length>=2;return function(r){return r.pipe(e?bt((function(t,n){return e(t,n,r)})):re,(o=1)<=0?function(){return Ee}:Me((function(e,t){var n=0;e.subscribe(Oe(t,(function(e){++n<=o&&(t.next(e),o<=n&&t.complete())})))})),n?function(e){return Me((function(t,n){var r=!1;t.subscribe(Oe(n,(function(e){r=!0,n.next(e)}),(function(){r||n.next(e),n.complete()})))}))}(t):(void 0===(i=function(){return new xt})&&(i=St),Me((function(e,t){var n=!1;e.subscribe(Oe(t,(function(e){n=!0,t.next(e)}),(function(){return n?t.complete():t.error(i())})))}))));var i,o}}function wt(e){return Me((function(t,n){var r,i=null,o=!1;i=t.subscribe(Oe(n,void 0,void 0,(function(s){r=Te(e(s,wt(e)(t))),i?(i.unsubscribe(),i=null,r.subscribe(n)):o=!0}))),o&&(i.unsubscribe(),i=null,r.subscribe(n))}))}function kt(e,t){return void 0===t&&(t=re),e=null!=e?e:Et,Me((function(n,r){var i,o=!0;n.subscribe(Oe(r,(function(n){var s=t(n);!o&&e(i,s)||(o=!1,i=s,r.next(n))})))}))}function Et(e,t){return e===t}function Ct(e){var t;void 0===e&&(e=1/0);var n=(t=e&&"object"==typeof e?e:{count:e}).count,r=void 0===n?1/0:n,i=t.delay,o=t.resetOnSuccess,s=void 0!==o&&o;return r<=0?re:Me((function(e,t){var n,o=0,a=function(){var c=!1;n=e.subscribe(Oe(t,(function(e){s&&(o=0),t.next(e)}),void 0,(function(e){if(o++<r){var s=function(){n?(n.unsubscribe(),n=null,a()):c=!0};if(null!=i){var l="number"==typeof i?lt(i):Te(i(e,o)),u=Oe(t,(function(){u.unsubscribe(),s()}),(function(){t.complete()}));l.subscribe(u)}else s()}else t.error(e)}))),c&&(n.unsubscribe(),n=null,a())};a()}))}function Nt(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var n=e.length;if(0===n)throw new Error("list of properties cannot be empty.");return He((function(t){for(var r=t,i=0;i<n;i++){var o=null==r?void 0:r[e[i]];if(void 0===o)return;r=o}return r}))}function At(){return Me((function(e,t){var n=null;e._refCount++;var r=Oe(t,void 0,void 0,void 0,(function(){if(!e||e._refCount<=0||0<--e._refCount)n=null;else{var r=e._connection,i=n;n=null,!r||i&&r!==i||r.unsubscribe(),t.unsubscribe()}}));e.subscribe(r),r.closed||(n=e.connect())}))}var It=function(e){function t(t,n){var r=e.call(this)||this;return r.source=t,r.subjectFactory=n,r._subject=null,r._refCount=0,r._connection=null,Pe(t)&&(r.lift=t.lift),r}return(0,D.__extends)(t,e),t.prototype._subscribe=function(e){return this.getSubject().subscribe(e)},t.prototype.getSubject=function(){var e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject},t.prototype._teardown=function(){this._refCount=0;var e=this._connection;this._subject=this._connection=null,null==e||e.unsubscribe()},t.prototype.connect=function(){var e=this,t=this._connection;if(!t){t=this._connection=new R;var n=this.getSubject();t.add(this.source.subscribe(Oe(n,void 0,(function(){e._teardown(),n.complete()}),(function(t){e._teardown(),n.error(t)}),(function(){return e._teardown()})))),t.closed&&(this._connection=null,t=R.EMPTY)}return t},t.prototype.refCount=function(){return At()(this)},t}(oe);var Dt={connector:function(){return new ce}};function Pt(e,t){void 0===t&&(t=Dt);var n=t.connector;return Me((function(t,r){var i,o=n();Te(e((i=o,new oe((function(e){return i.subscribe(e)}))))).subscribe(r),r.add(t.subscribe(o))}))}function Mt(e){return e?function(t){return Pt(e)(t)}:function(e){return function(e,t){var n=P(e)?e:function(){return e};return P(t)?Pt(t,{connector:n}):function(e){return new It(e,n)}}(new ce)(e)}}var Ot,Ft=n(72492),Rt=n.n(Ft),Lt=n(48287).Buffer;class jt extends i.IT{constructor(e,t){super(),this.mapType=e,this.reason=t,this.message=`The map type '${JSON.stringify(e)}' is invalid. Reason: ${t}.`,this.name="InvalidMapTypeError"}}const zt=Symbol.for("taquito-michelson-map-type-symbol");class Ut extends i.IT{constructor(e,t,n,r){super(),this.value=e,this.type=t,this.reason=r,this.name="MapTypecheckError",this.message=`The ${n} provided: ${JSON.stringify(e)} is not compatible with the expected michelson type: ${JSON.stringify(t)}. Reason: ${JSON.stringify(r)}.`,this.name="MapTypecheckError"}}class Bt{static isMichelsonMap(e){return e&&!0===e[zt]}constructor(e){this.valueMap=new Map,this.keyMap=new Map,this[Ot]=!0,e&&this.setType(e)}setType(e){!function(e){if(!("prim"in e))throw new jt(e,"Missing 'prim' field");if(!["map","big_map"].includes(e.prim))throw new jt(e,"The prim field should be 'map' or 'big_map'");if(!("args"in e))throw new jt(e,"Missing 'args' field");if(!Array.isArray(e.args))throw new jt(e,"The 'args' field should be an array");if(2!==e.args.length)throw new jt(e,"The 'args' field should have 2 elements")}(e),this.keySchema=new Tr(e.args[0]),this.valueSchema=new Tr(e.args[1])}removeType(){this.keySchema=void 0,this.valueSchema=void 0}static fromLiteral(e,t){const n=new Bt(t);return Object.keys(e).forEach((t=>{n.set(t,e[t])})),n}typecheckKey(e){this.keySchema&&this.keySchema.Typecheck(e)}typecheckValue(e){this.valueSchema&&this.valueSchema.Typecheck(e)}assertTypecheckValue(e){try{this.typecheckValue(e)}catch(t){throw new Ut(e,this.valueSchema,"value",t)}}assertTypecheckKey(e){try{this.typecheckKey(e)}catch(t){throw new Ut(e,this.keySchema,"key",t)}}serializeDeterministically(e){return Rt()(e)}*keys(){for(const[e]of this.entries())yield e}*values(){for(const[,e]of this.entries())yield e}*entries(){for(const e of this.valueMap.keys())yield[this.keyMap.get(e),this.valueMap.get(e)]}get(e){this.assertTypecheckKey(e);const t=this.serializeDeterministically(e);return this.valueMap.get(t)}set(e,t){this.assertTypecheckKey(e),this.assertTypecheckValue(t);const n=this.serializeDeterministically(e);this.keyMap.set(n,e),this.valueMap.set(n,t)}delete(e){this.assertTypecheckKey(e),this.keyMap.delete(this.serializeDeterministically(e)),this.valueMap.delete(this.serializeDeterministically(e))}has(e){this.assertTypecheckKey(e);const t=this.serializeDeterministically(e);return this.keyMap.has(t)&&this.valueMap.has(t)}clear(){this.keyMap.clear(),this.valueMap.clear()}get size(){return this.keyMap.size}forEach(e){for(const[t,n]of this.entries())e(n,t,this)}}Ot=zt;class qt extends i.IT{constructor(e,t,n){super(),this.value=e,this.token=t,this.name="TokenValidationError";const r=this.token.annot(),i=r?`[${r}] `:"";this.message=`${i}${n}`}}class Vt{static get fieldNumberingStrategy(){return Vt._fieldNumberingStrategy}static set fieldNumberingStrategy(e){Vt._fieldNumberingStrategy=e}constructor(e,t,n,r){this.val=e,this.idx=t,this.fac=n,this.parentTokenType=r,this.createToken=this.fac}typeWithoutAnnotations(){const e=t=>{if("object"==typeof t){if(Array.isArray(t)){return t.map((t=>e(t)))}const n=t;return n.args?{prim:n.prim,args:n.args.map((t=>e(t)))}:{prim:n.prim}}return t};return(t=this.val).args?{prim:t.prim,args:t.args.map((t=>e(t)))}:{prim:t.prim};var t}annot(){return(Array.isArray(this.val.annots)&&this.val.annots.length>0?this.val.annots[0]:String(this.idx)).replace(/(%|:)(_Liq_entry_)?/,"")}hasAnnotations(){return Array.isArray(this.val.annots)&&this.val.annots.length}get tokenVal(){return this.val}ExtractSignature(){return[[this.ExtractSchema()]]}}Vt._fieldNumberingStrategy="Latest";class Kt extends Vt{compare(e,t){return e===t?0:e<t?-1:1}}class Jt extends qt{constructor(e,t,n){super(e,t,n),this.value=e,this.token=t,this.name="BigMapValidationError"}}class Wt extends Vt{constructor(e,t,n){super(e,t,n),this.val=e,this.idx=t,this.fac=n}get ValueSchema(){return this.createToken(this.val.args[1],0)}get KeySchema(){return this.createToken(this.val.args[0],0)}ExtractSchema(){return{big_map:{key:this.KeySchema.ExtractSchema(),value:this.ValueSchema.ExtractSchema()}}}generateSchema(){return{__michelsonType:Wt.prim,schema:{key:this.KeySchema.generateSchema(),value:this.ValueSchema.generateSchema()}}}validate(e){if(!Bt.isMichelsonMap(e))throw new Jt(e,this,`Value ${JSON.stringify(e)} is not a MichelsonMap`)}objLitToMichelsonMap(e){return e instanceof Bt?e:"object"==typeof e?0===Object.keys(e).length?new Bt:Bt.fromLiteral(e):e}Encode(e){const t=this.objLitToMichelsonMap(e.pop());return this.validate(t),Array.from(t.keys()).sort(((e,t)=>this.KeySchema.compare(e,t))).map((e=>({prim:"Elt",args:[this.KeySchema.EncodeObject(e),this.ValueSchema.EncodeObject(t.get(e))]})))}EncodeObject(e,t){const n=this.objLitToMichelsonMap(e);return this.validate(n),t&&t[Wt.prim]?t[Wt.prim](n,this.val):Array.from(n.keys()).sort(((e,t)=>this.KeySchema.compare(e,t))).map((e=>({prim:"Elt",args:[this.KeySchema.EncodeObject(e),this.ValueSchema.EncodeObject(n.get(e))]})))}Execute(e,t){if(t&&t[Wt.prim])return t[Wt.prim](e,this.val);if(Array.isArray(e)){const t=new Bt(this.val);return e.forEach((e=>{t.set(this.KeySchema.ToKey(e.args[0]),this.ValueSchema.Execute(e.args[1]))})),t}if("int"in e)return e.int;throw new Jt(e,this,`Big map is expecting either an array (Athens) or an object with an int property (Babylon). Got ${JSON.stringify(e)}`)}findAndReturnTokens(e,t){return Wt.prim===e&&t.push(this),this.KeySchema.findAndReturnTokens(e,t),this.ValueSchema.findAndReturnTokens(e,t),t}}Wt.prim="big_map";class Ht extends qt{constructor(e,t,n){super(e,t,n),this.value=e,this.token=t,this.name="OrValidationError"}}class Gt extends Kt{constructor(e,t,n,r){super(e,t,n,r),this.val=e,this.idx=t,this.fac=n,this.parentTokenType=r}Encode(e){const t=e[e.length-1],n=this.createToken(this.val.args[0],this.getIdxForChildren(),"Or");let r=1;n instanceof Gt&&(r=Object.keys(n.ExtractSchema()).length);const i=this.createToken(this.val.args[1],this.getIdxForChildren()+r,"Or");if(String(n.annot())!==String(t)||n instanceof Gt){if(String(i.annot())!==String(t)||i instanceof Gt){if(n instanceof Gt){const t=n.Encode(e);if(t)return{prim:"Left",args:[t]}}if(i instanceof Gt){const t=i.Encode(e);if(t)return{prim:"Right",args:[t]}}return null}return e.pop(),{prim:"Right",args:[i.Encode(e)]}}return e.pop(),{prim:"Left",args:[n.Encode(e)]}}ExtractSignature(){const e=this.createToken(this.val.args[0],this.getIdxForChildren(),"Or");let t=1;e instanceof Gt&&(t=Object.keys(e.ExtractSchema()).length);const n=this.createToken(this.val.args[1],this.getIdxForChildren()+t,"Or"),r=[];if(e instanceof Gt)r.push(...e.ExtractSignature());else for(const i of e.ExtractSignature())r.push([e.annot(),...i]);if(n instanceof Gt)r.push(...n.ExtractSignature());else for(const i of n.ExtractSignature())r.push([n.annot(),...i]);return r}EncodeObject(e,t){this.validateJavascriptObject(e);const n=Object.keys(e)[0],r=this.createToken(this.val.args[0],this.getIdxForChildren(),"Or");let i=1;r instanceof Gt&&(i=Object.keys(r.ExtractSchema()).length);const o=this.createToken(this.val.args[1],this.getIdxForChildren()+i,"Or");if(String(r.annot())!==String(n)||r instanceof Gt){if(String(o.annot())!==String(n)||o instanceof Gt){if(r instanceof Gt){const n=r.EncodeObject(e,t);if(n)return{prim:"Left",args:[n]}}if(o instanceof Gt){const n=o.EncodeObject(e,t);if(n)return{prim:"Right",args:[n]}}return null}return{prim:"Right",args:[o.EncodeObject(e[n],t)]}}return{prim:"Left",args:[r.EncodeObject(e[n],t)]}}validateJavascriptObject(e){if("object"!=typeof e||Array.isArray(e)||null===e||1!==Object.keys(e).length)throw new Ht(e,this,`EncodeObject expects an object with a single key but got: ${JSON.stringify(e)}`)}Execute(e,t){const n=this.createToken(this.val.args[0],this.getIdxForChildren(),"Or");let r=1;n instanceof Gt&&(r=Object.keys(n.ExtractSchema()).length);const i=this.createToken(this.val.args[1],this.getIdxForChildren()+r,"Or");if("Right"===e.prim)return i instanceof Gt?i.Execute(e.args[0],t):{[i.annot()]:i.Execute(e.args[0],t)};if("Left"===e.prim)return n instanceof Gt?n.Execute(e.args[0],t):{[n.annot()]:n.Execute(e.args[0],t)};throw new Ht(e,this,`Was expecting Left or Right prim but got: ${JSON.stringify(e.prim)}`)}traversal(e,t,n){const r=this.createToken(this.val.args[0],this.getIdxForChildren(),"Or");let i,o=1;r instanceof Gt?(i=e(r),o=Object.keys(r.ExtractSchema()).length):i={[r.annot()]:e(r)};const s=this.createToken(this.val.args[1],this.getIdxForChildren()+o,"Or");let a;a=s instanceof Gt?t(s):{[s.annot()]:t(s)};return n(i,a)}ExtractSchema(){return this.traversal((e=>e.ExtractSchema()),(e=>e.ExtractSchema()),((e,t)=>Object.assign(Object.assign({},e),t)))}generateSchema(){return{__michelsonType:Gt.prim,schema:this.traversal((e=>e instanceof Gt?e.generateSchema().schema:e.generateSchema()),(e=>e instanceof Gt?e.generateSchema().schema:e.generateSchema()),((e,t)=>Object.assign(Object.assign({},e),t)))}}findToken(e){const t=this.createToken(this.val.args[0],this.getIdxForChildren(),"Or");let n=1;t instanceof Gt&&(n=Object.keys(t.ExtractSchema()).length);const r=this.createToken(this.val.args[1],this.getIdxForChildren()+n,"Or");if(String(t.annot())===String(e)&&!(t instanceof Gt)&&t instanceof Kt)return t;if(String(r.annot())===String(e)&&!(r instanceof Gt)&&r instanceof Kt)return r;if(t instanceof Gt){const n=t.findToken(e);if(n)return n}if(r instanceof Gt){const t=r.findToken(e);if(t)return t}return null}compare(e,t){const n=Object.keys(e)[0];if(n!==Object.keys(t)[0]){return JSON.stringify(this.EncodeObject(e))<JSON.stringify(this.EncodeObject(t))?-1:1}{const r=this.findToken(n);if(r instanceof Kt)return r.compare(e[n],t[n])}}ToKey(e){return this.Execute(e)}ToBigMapKey(e){return{key:this.EncodeObject(e),type:this.typeWithoutAnnotations()}}findAndReturnTokens(e,t){return Gt.prim===e&&t.push(this),this.traversal((n=>n.findAndReturnTokens(e,t)),(n=>n.findAndReturnTokens(e,t)),((e,t)=>Object.assign(Object.assign({},e),t))),t}getIdxForChildren(){return"Legacy"===Vt.fieldNumberingStrategy||"Or"===this.parentTokenType?this.idx:0}}Gt.prim="or";class Qt extends i.IT{constructor(e){super(e),this.message=e,this.name="TokenArgumentValidationError"}}class Yt extends i.IT{constructor(e,t){super(),this.val1=e,this.val2=t,this.name="TokenComparisonError",this.message=`Tokens ${JSON.stringify(e)} and ${JSON.stringify(t)} are not comparable`}}function Zt(e,t=Xt.prim){if(Array.isArray(e))return Zt({prim:t,args:e},t);if(void 0===e.args)throw new Qt(`The value ${JSON.stringify(e)} is an invalid PairToken with no arguments, a pair must have two or more arguments.`);return e.args.length>2?[e.args[0],{prim:t,args:e.args.slice(1)}]:[e.args[0],e.args[1]]}class Xt extends Kt{constructor(e,t,n,r){super(Array.isArray(e)?{prim:Xt.prim,args:e}:e.prim?e:{prim:Xt.prim,args:e},t,n,r)}args(){return Zt(this.val)}tokens(){let e=0;return this.args().map((t=>{const n=this.createToken(t,this.getIdxForChildren()+e,"Pair");return n instanceof Xt?e+=Object.keys(n.ExtractSchema()).length:e++,n}))}Encode(e){return{prim:"Pair",args:this.tokens().map((t=>t.Encode(e)))}}ExtractSignature(){const e=this.args(),t=this.createToken(e[0],this.getIdxForChildren(),"Pair");let n=1;t instanceof Gt&&(n=Object.keys(t.ExtractSchema()).length);const r=this.createToken(e[1],this.getIdxForChildren()+n,"Pair"),i=[];for(const o of t.ExtractSignature())for(const e of r.ExtractSignature())i.push([...o,...e]);return i}ToBigMapKey(e){return{key:this.EncodeObject(e),type:this.typeWithoutAnnotations()}}ToKey(e){return this.Execute(e)}EncodeObject(e,t){const[n,r]=this.tokens();let i,o;return i=n instanceof Xt&&!n.hasAnnotations()?e:e[n.annot()],o=r instanceof Xt&&!r.hasAnnotations()?e:e[r.annot()],{prim:"Pair",args:[n.EncodeObject(i,t),r.EncodeObject(o,t)]}}traversal(e,t){const n=this.args(),r=this.createToken(n[0],this.getIdxForChildren(),"Pair");let i,o=1;r instanceof Xt&&!r.hasAnnotations()?(i=e(r),r instanceof Xt&&(o=Object.keys(r.ExtractSchema()).length)):i={[r.annot()]:e(r)};const s=this.createToken(n[1],this.getIdxForChildren()+o,"Pair");let a;a=s instanceof Xt&&!s.hasAnnotations()?t(s):{[s.annot()]:t(s)};return Object.assign(Object.assign({},i),a)}Execute(e,t){const n=Zt(e,"Pair");return this.traversal((e=>e.Execute(n[0],t)),(e=>e.Execute(n[1],t)))}ExtractSchema(){return this.traversal((e=>e.ExtractSchema()),(e=>e.ExtractSchema()))}generateSchema(){return{__michelsonType:Xt.prim,schema:this.traversal((e=>e instanceof Xt&&!e.hasAnnotations()?e.generateSchema().schema:e.generateSchema()),(e=>e instanceof Xt&&!e.hasAnnotations()?e.generateSchema().schema:e.generateSchema()))}}compare(e,t){const[n,r]=this.tokens(),i=(e,t)=>e instanceof Xt&&!e.hasAnnotations()?t:t[e.annot()];if(n instanceof Kt&&r instanceof Kt){const o=n.compare(i(n,e),i(n,t));return 0===o?r.compare(i(r,e),i(r,t)):o}throw new Yt(e,t)}findAndReturnTokens(e,t){return Xt.prim===e&&t.push(this),this.tokens().map((n=>n.findAndReturnTokens(e,t))),t}getIdxForChildren(){return"Legacy"===Vt.fieldNumberingStrategy||"Pair"===this.parentTokenType?this.idx:0}}Xt.prim="pair";class $t extends qt{constructor(e,t,n){super(e,t,n),this.value=e,this.token=t,this.name="NatValidationError"}}class en extends Kt{constructor(e,t,n){super(e,t,n),this.val=e,this.idx=t,this.fac=n}Execute(e){return new p.A(e[Object.keys(e)[0]])}Encode(e){const t=e.pop();return this.validate(t),{int:new p.A(t).toFixed()}}validate(e){const t=new p.A(e);if(t.isNaN())throw new $t(e,this,`Value is not a number: ${JSON.stringify(e)}`);if(t.isNegative())throw new $t(e,this,`Value cannot be negative: ${JSON.stringify(e)}`)}EncodeObject(e,t){return this.validate(e),t&&t[en.prim]?t[en.prim](e):{int:new p.A(e).toFixed()}}ExtractSchema(){return en.prim}generateSchema(){return{__michelsonType:en.prim,schema:en.prim}}ToBigMapKey(e){return{key:{int:String(e)},type:{prim:en.prim}}}ToKey({int:e}){return new p.A(e)}compare(e,t){const n=Number(e),r=Number(t);return n===r?0:n<r?-1:1}findAndReturnTokens(e,t){return en.prim===e&&t.push(this),t}}en.prim="nat";class tn extends Kt{constructor(e,t,n){super(e,t,n),this.val=e,this.idx=t,this.fac=n}Execute(e){return e[Object.keys(e)[0]]}ExtractSchema(){return tn.prim}generateSchema(){return{__michelsonType:tn.prim,schema:tn.prim}}Encode(e){return{string:e.pop()}}EncodeObject(e,t){return t&&t[tn.prim]?t[tn.prim](e):{string:e}}ToKey({string:e}){return e}ToBigMapKey(e){return{key:{string:e},type:{prim:tn.prim}}}findAndReturnTokens(e,t){return tn.prim===e&&t.push(this),t}}tn.prim="string";class nn extends qt{constructor(e,t,n){super(e,t,n),this.value=e,this.token=t,this.name="AddressValidationError"}}class rn extends Kt{constructor(e,t,n){super(e,t,n),this.val=e,this.idx=t,this.fac=n}ToBigMapKey(e){return{key:{bytes:(0,f.Wf)(e)},type:{prim:"bytes"}}}validate(e){if((0,f.jl)(e)!==f.nA.VALID)throw new nn(e,this,`Address is not valid: ${JSON.stringify(e)}`)}Encode(e){const t=e.pop();return this.validate(t),{string:t}}EncodeObject(e,t){return this.validate(e),t&&t[rn.prim]?t[rn.prim](e):{string:e}}Execute(e){if(e.string)return e.string;if(!e.bytes)throw new nn(e,this,`cannot be missing both string and bytes: ${JSON.stringify(e)}`);return(0,f.jX)(e.bytes)}ExtractSchema(){return rn.prim}generateSchema(){return{__michelsonType:rn.prim,schema:rn.prim}}ToKey({bytes:e,string:t}){if(t)return t;if(!e)throw new nn({bytes:e,string:t},this,`cannot be missing both string and bytes ${JSON.stringify({string:t,bytes:e})}`);return(0,f.jX)(e)}compare(e,t){const n=e=>e.startsWith("tz"),r=n(e),i=n(t);return r&&!i?-1:i&&!r?1:super.compare(e,t)}findAndReturnTokens(e,t){return rn.prim===e&&t.push(this),t}}rn.prim="address";class on extends qt{constructor(e,t,n){super(e,t,n),this.value=e,this.token=t,this.name="MapValidationError"}}class sn extends Vt{constructor(e,t,n){super(e,t,n),this.val=e,this.idx=t,this.fac=n}get ValueSchema(){return this.createToken(this.val.args[1],0)}get KeySchema(){return this.createToken(this.val.args[0],0)}validate(e){if(!Bt.isMichelsonMap(e))throw new on(e,this,`Value ${JSON.stringify(e)} is not a valid MichelsonMap`)}Execute(e,t){const n=new Bt(this.val);return e.forEach((e=>{n.set(this.KeySchema.ToKey(e.args[0]),this.ValueSchema.Execute(e.args[1],t))})),n}objLitToMichelsonMap(e){return e instanceof Bt?e:"object"==typeof e?0===Object.keys(e).length?new Bt:Bt.fromLiteral(e):e}Encode(e){const t=this.objLitToMichelsonMap(e.pop());return this.validate(t),Array.from(t.keys()).sort(((e,t)=>this.KeySchema.compare(e,t))).map((e=>({prim:"Elt",args:[this.KeySchema.EncodeObject(e),this.ValueSchema.EncodeObject(t.get(e))]})))}EncodeObject(e,t){const n=this.objLitToMichelsonMap(e);return this.validate(n),t&&t[sn.prim]?t[sn.prim](n):Array.from(n.keys()).sort(((e,t)=>this.KeySchema.compare(e,t))).map((e=>({prim:"Elt",args:[this.KeySchema.EncodeObject(e),this.ValueSchema.EncodeObject(n.get(e))]})))}ExtractSchema(){return{map:{key:this.KeySchema.ExtractSchema(),value:this.ValueSchema.ExtractSchema()}}}generateSchema(){return{__michelsonType:sn.prim,schema:{key:this.KeySchema.generateSchema(),value:this.ValueSchema.generateSchema()}}}findAndReturnTokens(e,t){return sn.prim===e&&t.push(this),this.KeySchema.findAndReturnTokens(e,t),this.ValueSchema.findAndReturnTokens(e,t),t}}sn.prim="map";class an extends Kt{constructor(e,t,n){super(e,t,n),this.val=e,this.idx=t,this.fac=n}Execute(e){return"true"===String(e.prim).toLowerCase()}Encode(e){return{prim:e.pop()?"True":"False"}}EncodeObject(e,t){return t&&t[an.prim]?t[an.prim](e):{prim:e?"True":"False"}}ExtractSchema(){return an.prim}generateSchema(){return{__michelsonType:an.prim,schema:an.prim}}ToBigMapKey(e){return{key:this.EncodeObject(e),type:{prim:an.prim}}}ToKey(e){return this.EncodeObject(e)}compare(e,t){return e&&t||!e&&!t?0:e?1:-1}findAndReturnTokens(e,t){return an.prim===e&&t.push(this),t}}an.prim="bool";class cn extends qt{constructor(e,t,n){super(e,t,n),this.value=e,this.token=t,this.name="ContractValidationError"}}class ln extends Vt{constructor(e,t,n){super(e,t,n),this.val=e,this.idx=t,this.fac=n}validate(e){if((0,f.jl)(e)!==f.nA.VALID)throw new cn(e,this,`Value ${JSON.stringify(e)} is not a valid contract address.`);return null}Execute(e){if(e.string)return e.string;if(!e.bytes)throw new cn(e,this,`Value ${JSON.stringify(e)} is not a valid contract address. must contain bytes or string.`);return(0,f.jX)(e.bytes)}Encode(e){const t=e.pop();return this.validate(t),{string:t}}EncodeObject(e,t){return this.validate(e),t&&t[ln.prim]?t[ln.prim](e):{string:e}}ExtractSchema(){return ln.prim}generateSchema(){const e=this.createToken(this.val.args[0],0);return{__michelsonType:ln.prim,schema:{parameter:this.val.args[0]?e.generateSchema():{}}}}findAndReturnTokens(e,t){return ln.prim===e&&t.push(this),t}}ln.prim="contract";class un extends qt{constructor(e,t,n){super(e,t,n),this.value=e,this.token=t,this.name="ListValidationError"}}class dn extends Vt{constructor(e,t,n){super(e,t,n),this.val=e,this.idx=t,this.fac=n}get valueSchema(){return this.createToken(this.val.args[0],this.idx)}validate(e){if(!Array.isArray(e))throw new un(e,this,`Value ${JSON.stringify(e)} is not a valid array`)}Encode(e){const t=e.pop();this.validate(t);const n=this.createToken(this.val.args[0],0);return t.reduce(((e,t)=>[...e,n.EncodeObject(t)]),[])}Execute(e,t){const n=this.createToken(this.val.args[0],0);return this.validate(e),e.reduce(((e,r)=>[...e,n.Execute(r,t)]),[])}EncodeObject(e,t){const n=this.createToken(this.val.args[0],0);return this.validate(e),t&&t[dn.prim]?t[dn.prim](e):e.reduce(((e,t)=>[...e,n.EncodeObject(t)]),[])}ExtractSchema(){return{[dn.prim]:this.valueSchema.ExtractSchema()}}generateSchema(){return{__michelsonType:dn.prim,schema:this.valueSchema.generateSchema()}}findAndReturnTokens(e,t){return dn.prim===e&&t.push(this),this.createToken(this.val.args[0],this.idx).findAndReturnTokens(e,t),t}}dn.prim="list";class _n extends qt{constructor(e,t,n){super(e,t,n),this.value=e,this.token=t,this.name="MutezValidationError"}}class pn extends Kt{constructor(e,t,n){super(e,t,n),this.val=e,this.idx=t,this.fac=n}Execute(e){return new p.A(e[Object.keys(e)[0]])}ExtractSchema(){return pn.prim}generateSchema(){return{__michelsonType:pn.prim,schema:pn.prim}}validate(e){if(new p.A(e).isNaN())throw new _n(e,this,`Value is not a number: ${e}`)}Encode(e){const t=e.pop();return this.validate(t),{int:String(t).toString()}}EncodeObject(e,t){return this.validate(e),t&&t[pn.prim]?t[pn.prim](e):{int:String(e).toString()}}ToBigMapKey(e){return{key:{int:String(e)},type:{prim:pn.prim}}}ToKey({int:e}){return e}compare(e,t){const n=Number(e),r=Number(t);return n===r?0:n<r?-1:1}findAndReturnTokens(e,t){return pn.prim===e&&t.push(this),t}}pn.prim="mutez";class fn extends qt{constructor(e,t,n){super(e,t,n),this.value=e,this.token=t,this.name="BytesValidationError"}}class mn extends Kt{constructor(e,t,n){super(e,t,n),this.val=e,this.idx=t,this.fac=n}ToBigMapKey(e){return{key:{bytes:e},type:{prim:mn.prim}}}validate(e){if("string"!=typeof e||!/^[0-9a-fA-F]*$/.test(e)||e.length%2!=0)throw new fn(e,this,`Invalid bytes: ${e}`)}convertUint8ArrayToHexString(e){return e.constructor===Uint8Array?Lt.from(e).toString("hex"):e}Encode(e){let t=e.pop();return t=(0,f.Ag)(this.convertUint8ArrayToHexString(t)),this.validate(t),{bytes:String(t).toString()}}EncodeObject(e,t){return"string"==typeof(e=this.convertUint8ArrayToHexString(e))&&(e=(0,f.Ag)(e)),this.validate(e),t&&t[mn.prim]?t[mn.prim](e):{bytes:String(e).toString()}}Execute(e){return e.bytes}ExtractSchema(){return mn.prim}generateSchema(){return{__michelsonType:mn.prim,schema:mn.prim}}ToKey({bytes:e,string:t}){return t||e}findAndReturnTokens(e,t){return mn.prim===e&&t.push(this),t}}mn.prim="bytes";class hn extends Kt{constructor(e,t,n){super(e,t,n),this.val=e,this.idx=t,this.fac=n}subToken(){return this.createToken(this.val.args[0],this.idx)}schema(){return this.createToken(this.val.args[0],0)}annot(){return Array.isArray(this.val.annots)?super.annot():this.createToken(this.val.args[0],this.idx).annot()}Encode(e){const t=e;return null==t?{prim:"None"}:!Array.isArray(t)||void 0!==t[t.length-1]&&null!==t[t.length-1]?{prim:"Some",args:[this.schema().Encode(e)]}:(t.pop(),{prim:"None"})}EncodeObject(e,t){let n=e;return null==n?{prim:"None"}:(n="object"==typeof n&&"Some"in n?n.Some:n,{prim:"Some",args:[this.schema().EncodeObject(n,t)]})}Execute(e,t){return"None"===e.prim?null:{Some:this.schema().Execute(e.args[0],t)}}ExtractSchema(){return{Some:this.schema().ExtractSchema()}}generateSchema(){return{__michelsonType:hn.prim,schema:this.schema().generateSchema()}}ExtractSignature(){return[...this.schema().ExtractSignature()]}get KeySchema(){return this.schema()}compare(e,t){return e?t?this.KeySchema.compare(e,t):1:-1}ToKey(e){return this.Execute(e)}ToBigMapKey(e){return{key:this.EncodeObject(e),type:this.typeWithoutAnnotations()}}findAndReturnTokens(e,t){return hn.prim===e&&t.push(this),this.subToken().findAndReturnTokens(e,t),t}}hn.prim="option";class gn extends Kt{constructor(e,t,n){super(e,t,n),this.val=e,this.idx=t,this.fac=n}Execute(e){return e.string&&/^\d+$/.test(e.string)?new Date(1e3*Number(e.string)).toISOString():e.string?new Date(e.string).toISOString():e.int?new Date(1e3*Number(e.int)).toISOString():void 0}Encode(e){const t=e.pop();return"number"==typeof t?{int:String(t)}:{string:t}}EncodeObject(e,t){return t&&t[gn.prim]?t[gn.prim](e):"number"==typeof e?{int:String(e)}:{string:e}}ExtractSchema(){return gn.prim}generateSchema(){return{__michelsonType:gn.prim,schema:gn.prim}}ToKey({string:e}){return e}ToBigMapKey(e){return{key:{string:e},type:{prim:gn.prim}}}findAndReturnTokens(e,t){return gn.prim===e&&t.push(this),t}}gn.prim="timestamp";class yn extends qt{constructor(e,t,n){super(e,t,n),this.value=e,this.token=t,this.name="IntValidationError"}}class vn extends Kt{constructor(e,t,n){super(e,t,n),this.val=e,this.idx=t,this.fac=n}Execute(e){return new p.A(e[Object.keys(e)[0]])}ExtractSchema(){return vn.prim}generateSchema(){return{__michelsonType:vn.prim,schema:vn.prim}}validate(e){if(new p.A(e).isNaN())throw new yn(e,this,`Value is not a number: ${JSON.stringify(e)}`)}Encode(e){const t=e.pop();return this.validate(t),{int:new p.A(t).toFixed()}}EncodeObject(e,t){return this.validate(e),t&&t[vn.prim]?t[vn.prim](e):{int:new p.A(e).toFixed()}}ToBigMapKey(e){return{key:{int:String(e)},type:{prim:vn.prim}}}ToKey({int:e}){return e}compare(e,t){const n=Number(e),r=Number(t);return n===r?0:n<r?-1:1}findAndReturnTokens(e,t){return vn.prim===e&&t.push(this),t}}vn.prim="int";class bn extends Kt{constructor(e,t,n){super(e,t,n),this.val=e,this.idx=t,this.fac=n}Encode(e){return e.pop(),{prim:"Unit"}}EncodeObject(e,t){return t&&t[bn.prim]?t[bn.prim](e):{prim:"Unit"}}Execute(e){return Cr}ExtractSchema(){return bn.prim}generateSchema(){return{__michelsonType:bn.prim,schema:bn.prim}}compare(e,t){return 0}ToKey(e){return Cr}ToBigMapKey(e){return{key:{prim:"Unit"},type:{prim:bn.prim}}}findAndReturnTokens(e,t){return bn.prim===e&&t.push(this),t}}bn.prim="unit";class xn extends qt{constructor(e,t,n){super(e,t,n),this.value=e,this.token=t,this.name="KeyValidationError"}}class Sn extends Kt{constructor(e,t,n){super(e,t,n),this.val=e,this.idx=t,this.fac=n}Execute(e){return e.string?e.string:(0,f.g2)(e.bytes)}validate(e){if((0,f.Z_)(e)!==f.nA.VALID)throw new xn(e,this,"Key is not valid")}Encode(e){const t=e.pop();return this.validate(t),{string:t}}EncodeObject(e,t){return this.validate(e),t&&t[Sn.prim]?t[Sn.prim](e):{string:e}}ExtractSchema(){return Sn.prim}generateSchema(){return{__michelsonType:Sn.prim,schema:Sn.prim}}ToKey(e){return this.Execute(e)}ToBigMapKey(e){return{key:{string:e},type:{prim:Sn.prim}}}compare(e,t){const n=this.getPrefix(e),r=this.getPrefix(t);if(n===f.b3.EDPK&&r!==f.b3.EDPK)return-1;if(n===f.b3.SPPK&&r!==f.b3.SPPK)return r===f.b3.EDPK?1:-1;if(n===f.b3.P2PK){if(r!==f.b3.P2PK)return 1;const n=this.getP256PublicKeyComparableBytes(e),i=this.getP256PublicKeyComparableBytes(t);return Lt.compare(n,i)}return super.compare(e,t)}getPrefix(e){return e.substring(0,4)}getP256PublicKeyComparableBytes(e){return(0,f.FN)(e,f.Pl[f.b3.P2PK]).slice(1)}findAndReturnTokens(e,t){return Sn.prim===e&&t.push(this),t}}Sn.prim="key";class Tn extends qt{constructor(e,t,n){super(e,t,n),this.value=e,this.token=t,this.name="KeyHashValidationError"}}class wn extends Kt{constructor(e,t,n){super(e,t,n),this.val=e,this.idx=t,this.fac=n}Execute(e){return e.string?e.string:(0,f.WP)(e.bytes)}validate(e){if((0,f._f)(e)!==f.nA.VALID)throw new Tn(e,this,`KeyHash is not valid: ${JSON.stringify(e)}`)}Encode(e){const t=e.pop();return this.validate(t),{string:t}}EncodeObject(e,t){return this.validate(e),t&&t[wn.prim]?t[wn.prim](e):{string:e}}ExtractSchema(){return wn.prim}generateSchema(){return{__michelsonType:wn.prim,schema:wn.prim}}ToKey({string:e,bytes:t}){return e||(0,f.WP)(t)}ToBigMapKey(e){return{key:{string:e},type:{prim:wn.prim}}}findAndReturnTokens(e,t){return wn.prim===e&&t.push(this),t}}wn.prim="key_hash";class kn extends qt{constructor(e,t,n){super(e,t,n),this.value=e,this.token=t,this.name="SignatureValidationError"}}class En extends Kt{constructor(e,t,n){super(e,t,n),this.val=e,this.idx=t,this.fac=n}Execute(e){return e.string?e.string:e.bytes}validate(e){if((0,f.fK)(e)!==f.nA.VALID)throw new kn(e,this,"Signature is not valid")}Encode(e){const t=e.pop();return this.validate(t),{string:t}}EncodeObject(e,t){return this.validate(e),t&&t[En.prim]?t[En.prim](e):{string:e}}ExtractSchema(){return En.prim}generateSchema(){return{__michelsonType:En.prim,schema:En.prim}}ToKey(e){return this.Execute(e)}ToBigMapKey(e){return{key:{string:e},type:{prim:En.prim}}}findAndReturnTokens(e,t){return En.prim===e&&t.push(this),t}}En.prim="signature";class Cn extends Vt{constructor(e,t,n){super(e,t,n),this.val=e,this.idx=t,this.fac=n}get paramSchema(){return this.createToken(this.val.args[0],this.idx)}get returnSchema(){return this.createToken(this.val.args[1],this.idx+1)}Execute(e){return e.string?e.string:e}Encode(e){return e.pop()}EncodeObject(e,t){return t&&t[Cn.prim]?t[Cn.prim](e):e}ExtractSchema(){return{[Cn.prim]:{parameters:this.paramSchema.ExtractSchema(),returns:this.returnSchema.ExtractSchema()}}}generateSchema(){return{__michelsonType:Cn.prim,schema:{parameters:this.paramSchema.generateSchema(),returns:this.returnSchema.generateSchema()}}}findAndReturnTokens(e,t){return Cn.prim===e&&t.push(this),this.createToken(this.val.args[0],this.idx).findAndReturnTokens(e,t),this.createToken(this.val.args[1],this.idx).findAndReturnTokens(e,t),t}}Cn.prim="lambda";class Nn extends Vt{constructor(e,t,n){super(e,t,n),this.val=e,this.idx=t,this.fac=n}Execute(e){return e.string}Encode(...e){return{string:e.pop()}}EncodeObject(e,t){return t&&t[Nn.prim]?t[Nn.prim](e):{string:e}}ExtractSchema(){return Nn.prim}generateSchema(){return{__michelsonType:Nn.prim,schema:Nn.prim}}findAndReturnTokens(e,t){return Nn.prim===e&&t.push(this),t}}Nn.prim="operation";class An extends qt{constructor(e,t,n){super(e,t,n),this.value=e,this.token=t,this.name="SetValidationError"}}class In extends Vt{constructor(e,t,n){super(e,t,n),this.val=e,this.idx=t,this.fac=n}get KeySchema(){return this.createToken(this.val.args[0],0)}validate(e){if(!Array.isArray(e))throw new An(e,this,`Value ${JSON.stringify(e)} is not an array`)}Encode(e){const t=e.pop();return this.validate(t),t.sort(((e,t)=>this.KeySchema.compare(e,t))).reduce(((e,t)=>[...e,this.KeySchema.EncodeObject(t)]),[])}Execute(e,t){return e.reduce(((e,n)=>[...e,this.KeySchema.Execute(n,t)]),[])}EncodeObject(e,t){return this.validate(e),t&&t[In.prim]?t[In.prim](e):e.sort(((e,t)=>this.KeySchema.compare(e,t))).reduce(((e,t)=>[...e,this.KeySchema.EncodeObject(t)]),[])}ExtractSchema(){return In.prim}generateSchema(){return{__michelsonType:In.prim,schema:this.KeySchema.generateSchema()}}findAndReturnTokens(e,t){return In.prim===e&&t.push(this),this.KeySchema.findAndReturnTokens(e,t),t}}In.prim="set";class Dn extends qt{constructor(e,t,n){super(e,t,n),this.value=e,this.token=t,this.name="ChainIDValidationError"}}class Pn extends Kt{constructor(e,t,n){super(e,t,n),this.val=e,this.idx=t,this.fac=n}validate(e){if((0,f.yC)(e)!==f.nA.VALID)throw new Dn(e,this,`Value ${JSON.stringify(e)} is not a valid ChainID`)}Execute(e){return e[Object.keys(e)[0]]}ExtractSchema(){return Pn.prim}generateSchema(){return{__michelsonType:Pn.prim,schema:Pn.prim}}Encode(e){const t=e.pop();return this.validate(t),{string:t}}EncodeObject(e,t){return this.validate(e),t&&t[Pn.prim]?t[Pn.prim](e):{string:e}}ToKey({string:e}){return e}ToBigMapKey(e){return{key:{string:e},type:{prim:Pn.prim}}}findAndReturnTokens(e,t){return Pn.prim===e&&t.push(this),t}}Pn.prim="chain_id";class Mn extends i.IT{constructor(){super(),this.name="TicketEncodeError",this.message="Tickets cannot be sent to the blockchain; they are created on-chain"}}const On={prim:"contract"},Fn={prim:"int"};class Rn extends Vt{constructor(e,t,n){super(e,t,n),this.val=e,this.idx=t,this.fac=n}get valueToken(){return this.createToken(this.val.args[0],this.idx)}Encode(e){throw new Mn}EncodeObject(e,t){if(t&&t[Rn.prim])return t[Rn.prim](e,this.val);throw new Mn}Execute(e,t){if(t&&t[Rn.prim])return t[Rn.prim](e,this.val);const n=this.createToken(On,this.idx),r=this.valueToken,i=this.createToken(Fn,this.idx);return void 0===e.args[2]&&void 0!==e.args[1].args?{ticketer:n.Execute(e.args[0],t),value:r.Execute(e.args[1].args[0],t),amount:i.Execute(e.args[1].args[1],t)}:{ticketer:n.Execute(e.args[0],t),value:r.Execute(e.args[1],t),amount:i.Execute(e.args[2],t)}}ExtractSchema(){return{ticketer:ln.prim,value:this.valueToken.ExtractSchema(),amount:vn.prim}}generateSchema(){return{__michelsonType:Rn.prim,schema:{value:this.valueToken.generateSchema(),ticketer:{__michelsonType:ln.prim,schema:ln.prim},amount:{__michelsonType:vn.prim,schema:vn.prim}}}}findAndReturnTokens(e,t){return Rn.prim===e&&t.push(this),this.valueToken.findAndReturnTokens(e,t),t}}Rn.prim="ticket";class Ln extends i.IT{constructor(){super(),this.name="TicketDeprecatedEncodeError",this.message="Ticket_deprecated cannot be sent to the blockchain; they are created on-chain"}}const jn={prim:"contract"},zn={prim:"int"};class Un extends Vt{constructor(e,t,n){super(e,t,n),this.val=e,this.idx=t,this.fac=n}get valueToken(){return this.createToken(this.val.args[0],this.idx)}Encode(e){throw new Ln}EncodeObject(e,t){if(t&&t[Un.prim])return t[Un.prim](e,this.val);throw new Ln}Execute(e,t){if(t&&t[Un.prim])return t[Un.prim](e,this.val);const n=this.createToken(jn,this.idx),r=this.valueToken,i=this.createToken(zn,this.idx);return void 0===e.args[2]&&void 0!==e.args[1].args?{ticketer:n.Execute(e.args[0],t),value:r.Execute(e.args[1].args[0],t),amount:i.Execute(e.args[1].args[1],t)}:{ticketer:n.Execute(e.args[0],t),value:r.Execute(e.args[1],t),amount:i.Execute(e.args[2],t)}}ExtractSchema(){return{ticketer:ln.prim,value:this.valueToken.ExtractSchema(),amount:vn.prim}}generateSchema(){return{__michelsonType:Un.prim,schema:{value:this.valueToken.generateSchema(),ticketer:{__michelsonType:ln.prim,schema:ln.prim},amount:{__michelsonType:vn.prim,schema:vn.prim}}}}findAndReturnTokens(e,t){return Un.prim===e&&t.push(this),this.valueToken.findAndReturnTokens(e,t),t}}Un.prim="ticket_deprecated";class Bn extends qt{constructor(e,t,n){super(e,t,n),this.value=e,this.token=t,this.name="NeverTokenError"}}class qn extends Vt{constructor(e,t,n){super(e,t,n),this.val=e,this.idx=t,this.fac=n}Encode(e){const t=e.pop();throw new Bn(t,this,`Assigning a value to the type never is forbidden. Trying to assign ${JSON.stringify(t)}.`)}EncodeObject(e,t){if(t&&t[qn.prim])return t[qn.prim](e);throw new Bn(e,this,`Assigning a value to the type never is forbidden. Trying to assign ${JSON.stringify(e)}.`)}Execute(e){throw new Bn(e,this,`There is no literal value for the type never. Trying to execute ${JSON.stringify(e)}.`)}ExtractSchema(){return qn.prim}generateSchema(){return{__michelsonType:qn.prim,schema:qn.prim}}findAndReturnTokens(e,t){return qn.prim===e&&t.push(this),t}}qn.prim="never";class Vn extends qt{constructor(e,t,n){super(e,t,n),this.value=e,this.token=t,this.name="SaplingStateValidationError"}}class Kn extends Vt{constructor(e,t,n){super(e,t,n),this.val=e,this.idx=t,this.fac=n}isValid(e){return"object"==typeof e&&0===Object.keys(e).length}Execute(e,t){if(t&&t[Kn.prim])return t[Kn.prim](e,this.val);if("int"in e)return e.int;throw new Vn(e,this,`Sapling state is expecting an object with an int property. Got ${JSON.stringify(e)}`)}Encode(e){const t=e.pop();if(this.isValid(t))return[];throw new Vn(t,this,`Invalid sapling_state. Received: ${JSON.stringify(t)} while expecting: {}`)}EncodeObject(e,t){if(t&&t[Kn.prim])return t[Kn.prim](e);if(this.isValid(e))return[];throw new Vn(e,this,`Invalid sapling_state. Received: ${JSON.stringify(e)} while expecting: {}`)}ExtractSchema(){return{[Kn.prim]:{"memo-size":Number(this.val.args[0].int)}}}generateSchema(){return{__michelsonType:Kn.prim,schema:{memoSize:this.val.args[0].int}}}findAndReturnTokens(e,t){return Kn.prim===e&&t.push(this),t}}Kn.prim="sapling_state";class Jn extends qt{constructor(e,t,n){super(e,t,n),this.value=e,this.token=t,this.name="SaplingTransactionValidationError"}}class Wn extends Vt{constructor(e,t,n){super(e,t,n),this.val=e,this.idx=t,this.fac=n}Execute(e){throw new Jn(e,this,`There is no literal value for the sapling_transaction type. Got: ${JSON.stringify(e)}.`)}validateBytes(e){const t=/^(0x|0X)?([0-9a-fA-F]*$)/.exec(e);if(t&&t[2].length%2==0)return t[2];throw new Jn(e,this,`Invalid bytes: ${JSON.stringify(e)}`)}convertUint8ArrayToHexString(e){return e.constructor===Uint8Array?Lt.from(e).toString("hex"):e}Encode(e){let t=e.pop();return t=this.validateBytes(this.convertUint8ArrayToHexString(t)),{bytes:String(t).toString()}}EncodeObject(e,t){return e=this.validateBytes(this.convertUint8ArrayToHexString(e)),t&&t[Wn.prim]?t[Wn.prim](e):{bytes:String(e).toString()}}ExtractSchema(){return{[Wn.prim]:{"memo-size":Number(this.val.args[0].int)}}}generateSchema(){return{__michelsonType:Wn.prim,schema:{memoSize:this.val.args[0].int}}}findAndReturnTokens(e,t){return Wn.prim===e&&t.push(this),t}}Wn.prim="sapling_transaction";class Hn extends qt{constructor(e,t,n){super(e,t,n),this.value=e,this.token=t,this.name="SaplingTransactionDeprecatedValidationError"}}class Gn extends Vt{constructor(e,t,n){super(e,t,n),this.val=e,this.idx=t,this.fac=n}Execute(e){throw new Hn(e,this,`There is no literal value for the sapling_transaction_deprecated type. Got: ${JSON.stringify(e)}.`)}validateBytes(e){const t=/^(0x|0X)?([0-9a-fA-F]*$)/.exec(e);if(t&&t[2].length%2==0)return t[2];throw new Hn(e,this,`Invalid bytes: ${JSON.stringify(e)}`)}convertUint8ArrayToHexString(e){return e.constructor===Uint8Array?Lt.from(e).toString("hex"):e}Encode(e){let t=e.pop();return t=this.validateBytes(this.convertUint8ArrayToHexString(t)),{bytes:String(t).toString()}}EncodeObject(e,t){return e=this.validateBytes(this.convertUint8ArrayToHexString(e)),t&&t[Gn.prim]?t[Gn.prim](e):{bytes:String(e).toString()}}ExtractSchema(){return{[Gn.prim]:{"memo-size":Number(this.val.args[0].int)}}}generateSchema(){return{__michelsonType:Gn.prim,schema:{memoSize:this.val.args[0].int}}}findAndReturnTokens(e,t){return Gn.prim===e&&t.push(this),t}}Gn.prim="sapling_transaction_deprecated";class Qn extends qt{constructor(e,t,n){super(e,t,n),this.value=e,this.token=t,this.name="Bls12381frValidationError"}}class Yn extends Vt{constructor(e,t,n){super(e,t,n),this.val=e,this.idx=t,this.fac=n}validate(e){if(!/^[0-9a-fA-F]*$/.test(e)||e.length%2!=0)throw new Qn(e,this,`Invalid bytes: ${JSON.stringify(e)}`)}convertUint8ArrayToHexString(e){return e.constructor===Uint8Array?Lt.from(e).toString("hex"):e}Encode(e){let t=e.pop();return"number"==typeof t?{int:t.toString()}:(t=this.convertUint8ArrayToHexString(t),this.validate(t),{bytes:t})}EncodeObject(e,t){return t&&t[Yn.prim]?t[Yn.prim](e):"number"==typeof e?{int:e.toString()}:(e=this.convertUint8ArrayToHexString(e),this.validate(e),{bytes:e})}Execute(e){return e.bytes}ExtractSchema(){return Yn.prim}generateSchema(){return{__michelsonType:Yn.prim,schema:Yn.prim}}findAndReturnTokens(e,t){return Yn.prim===e&&t.push(this),t}}Yn.prim="bls12_381_fr";class Zn extends qt{constructor(e,t,n){super(e,t,n),this.value=e,this.token=t,this.name="Bls12381g1ValidationError"}}class Xn extends Vt{constructor(e,t,n){super(e,t,n),this.val=e,this.idx=t,this.fac=n}validate(e){if(!/^[0-9a-fA-F]*$/.test(e)||e.length%2!=0)throw new Zn(e,this,`Invalid bytes: ${JSON.stringify(e)}`)}convertUint8ArrayToHexString(e){return e.constructor===Uint8Array?Lt.from(e).toString("hex"):e}Encode(e){let t=e.pop();return t=this.convertUint8ArrayToHexString(t),this.validate(t),{bytes:t}}EncodeObject(e,t){return e=this.convertUint8ArrayToHexString(e),this.validate(e),t&&t[Xn.prim]?t[Xn.prim](e):{bytes:e}}Execute(e){return e.bytes}ExtractSchema(){return Xn.prim}generateSchema(){return{__michelsonType:Xn.prim,schema:Xn.prim}}findAndReturnTokens(e,t){return Xn.prim===e&&t.push(this),t}}Xn.prim="bls12_381_g1";class $n extends qt{constructor(e,t,n){super(e,t,n),this.value=e,this.token=t,this.name="Bls12381g2ValidationError"}}class er extends Vt{constructor(e,t,n){super(e,t,n),this.val=e,this.idx=t,this.fac=n}validate(e){if(!/^[0-9a-fA-F]*$/.test(e)||e.length%2!=0)throw new $n(e,this,`Invalid bytes: ${JSON.stringify(e)}`)}convertUint8ArrayToHexString(e){return e.constructor===Uint8Array?Lt.from(e).toString("hex"):e}Encode(e){let t=e.pop();return t=this.convertUint8ArrayToHexString(t),this.validate(t),{bytes:t}}EncodeObject(e,t){return e=this.convertUint8ArrayToHexString(e),this.validate(e),t&&t[er.prim]?t[er.prim](e):{bytes:e}}Execute(e){return e.bytes}ExtractSchema(){return er.prim}generateSchema(){return{__michelsonType:er.prim,schema:er.prim}}findAndReturnTokens(e,t){return er.prim===e&&t.push(this),t}}er.prim="bls12_381_g2";class tr extends qt{constructor(e,t,n){super(e,t,n),this.value=e,this.token=t,this.name="ChestValidationError"}}class nr extends Vt{constructor(e,t,n){super(e,t,n),this.val=e,this.idx=t,this.fac=n}validate(e){if(!/^[0-9a-fA-F]*$/.test(e)||e.length%2!=0)throw new tr(e,this,`Invalid bytes: ${JSON.stringify(e)}`)}convertUint8ArrayToHexString(e){return e.constructor===Uint8Array?Lt.from(e).toString("hex"):e}Encode(e){let t=e.pop();return t=this.convertUint8ArrayToHexString(t),this.validate(t),{bytes:t}}EncodeObject(e,t){return e=this.convertUint8ArrayToHexString(e),this.validate(e),t&&t[nr.prim]?t[nr.prim](e):{bytes:e}}Execute(e){return e.bytes}ExtractSchema(){return nr.prim}generateSchema(){return{__michelsonType:nr.prim,schema:nr.prim}}findAndReturnTokens(e,t){return nr.prim===e&&t.push(this),t}}nr.prim="chest";class rr extends qt{constructor(e,t,n){super(e,t,n),this.value=e,this.token=t,this.name="ChestKeyValidationError"}}class ir extends Vt{constructor(e,t,n){super(e,t,n),this.val=e,this.idx=t,this.fac=n}validate(e){if(!/^[0-9a-fA-F]*$/.test(e)||e.length%2!=0)throw new rr(e,this,`Invalid bytes: ${JSON.stringify(e)}`)}convertUint8ArrayToHexString(e){return e.constructor===Uint8Array?Lt.from(e).toString("hex"):e}Encode(e){let t=e.pop();return t=this.convertUint8ArrayToHexString(t),this.validate(t),{bytes:t}}EncodeObject(e,t){return e=this.convertUint8ArrayToHexString(e),this.validate(e),t&&t[ir.prim]?t[ir.prim](e):{bytes:e}}Execute(e){return e.bytes}ExtractSchema(){return ir.prim}generateSchema(){return{__michelsonType:ir.prim,schema:ir.prim}}findAndReturnTokens(e,t){return ir.prim===e&&t.push(this),t}}ir.prim="chest_key";class or extends qt{constructor(e,t,n){super(e,t,n),this.value=e,this.token=t,this.name="GlobalConstantEncodingError"}}class sr extends qt{constructor(e,t,n){super(e,t,n),this.value=e,this.token=t,this.name="GlobalConstantDecodingError"}}class ar extends Vt{constructor(e,t,n){super(e,t,n),this.val=e,this.idx=t,this.fac=n}Execute(e,t){if(t&&t[ar.prim])return t[ar.prim](e,this.val);throw new sr(e,this,`Unable to decode a value represented by a global constants. Please provide an expanded script to the Michelson-Encoder or semantics for the decoding. The following global constant hash was encountered: ${this.val.args[0].string}.`)}Encode(e){throw new or(e,this,`Unable to encode a script containing global constants. Please provide an expanded script to the Michelson-Encoder. The following global constant hash was encountered: ${this.val.args[0].string}.`)}EncodeObject(e,t){if(t&&t[ar.prim])return t[ar.prim](e);throw new or(e,this,`Unable to encode a script containing global constants. Please provide an expanded script to the Michelson-Encoder. The following global constant hash was encountered: ${this.val.args[0].string}.`)}ExtractSchema(){return ar.prim}generateSchema(){return{__michelsonType:ar.prim,schema:{hash:this.val.args[0].string}}}findAndReturnTokens(e,t){return ar.prim===e&&t.push(this),t}}ar.prim="constant";const cr=[Xt,en,tn,Wt,rn,sn,an,Gt,ln,dn,pn,mn,hn,gn,vn,bn,Sn,wn,En,Cn,Nn,In,Pn,Rn,Un,qn,Kn,Wn,Gn,Yn,Xn,er,nr,ir,ar];class lr extends i.IT{constructor(e,t){super(e),this.message=e,this.data=t,this.name="Invalid token error"}}function ur(e,t,n){if(Array.isArray(e))return new Xt(e,t,ur,n);const r=cr.find((t=>t.prim===e.prim));if(!r)throw new lr(`Malformed data: ${JSON.stringify(e)}. Expected a value with a valid prim property`,e);return new r(e,t,ur,n)}class dr extends i.mx{constructor(e,t,n,r){super(e,t,n,r),this.viewName=e,this.sigs=t,this.args=n,this.cause=r,this.name="ParameterEncodingError",this.message=`Could not encode parameter ${JSON.stringify(n)} received for name "${e}" expecting one of the following signatures ${JSON.stringify(t)}`}}class _r extends i.IT{constructor(e,t){super(),this.script=e,this.reason=t,this.name="InvalidScriptError";let n="Invalid on-chain view found in the following script.";t&&(n+=` Reason: ${t}.`),n+=`Script: ${JSON.stringify(e)}`,this.message=n}}class pr extends i.IT{constructor(e,t){super(),this.script=e,this.reason=t,this.name="InvalidRpcResponseError";let n="Invalid RPC response passed as argument(s).";t&&(n+=` Reason: ${t}.`),n+=` Received: ${JSON.stringify(e)}`,this.message=n}}class fr extends i.IT{constructor(e){super(e),this.message=e,this.name="InvalidBigMapSchemaError"}}class mr extends i.IT{constructor(e,t){super(e),this.message=e,this.value=t,this.name="InvalidBigMapDiffError"}}class hr extends i.IT{constructor(e,t,n,r){super(),this.details=t,this.schema=n,this.value=r,this.name="BigMapEncodingError",this.message=`Unable to encode the big map ${e}. Schema is: ${JSON.stringify(n)}. The ${e} is: ${JSON.stringify(r)}. Error details: ${t}`}}class gr extends i.IT{constructor(e,t,n,r,i){super(),this.details=t,this.schema=n,this.value=r,this.semantics=i,this.name="StorageEncodingError",this.message=`Unable to encode ${e}. The schema is: ${JSON.stringify(n)}, the value is: ${JSON.stringify(r)}.${i?`And the semantic is: ${JSON.stringify(i)}`:""}. Error details: ${t}`}}class yr extends i.IT{constructor(e){super(e),this.message=e,this.name="MissingArgumentError"}}var vr;const br=Symbol.for("taquito-schema-type-symbol");function xr(e,t=Xt.prim){var n,r;if(Array.isArray(e))return xr({prim:t,args:e},t);const i=e;return i.prim===t&&i.args&&i.args.length>2?Object.assign(Object.assign({},i),{args:[null===(n=i.args)||void 0===n?void 0:n[0],{prim:t,args:null===(r=i.args)||void 0===r?void 0:r.slice(1)}]}):i}function Sr(e,t){if(void 0===e||void 0===t)return e===t;const n=xr(e),r=xr(t);return n.prim===r.prim&&(void 0===n.args&&void 0===r.args||void 0!==n.args&&void 0!==r.args&&n.args.length===r.args.length&&n.args.every(((e,t)=>{var n,i;return Sr(e,null!==(i=null===(n=r.args)||void 0===n?void 0:n[t])&&void 0!==i?i:{})})))&&(void 0===n.annots&&void 0===r.annots||void 0!==n.annots&&void 0!==r.annots&&n.annots.length===r.annots.length&&n.annots.every(((e,t)=>{var n;return e===(null===(n=r.annots)||void 0===n?void 0:n[t])})))}class Tr{static isSchema(e){return e&&!0===e[br]}static fromRPCResponse(e){if(!e)throw new pr(e,"the RPC response is empty");if(!e.script)throw new pr(e,"the RPC response has no script");if(!Array.isArray(e.script.code))throw new pr(e,"The response.script.code should be an array");let t=e.script.code;for(;1===t.length&&Array.isArray(t[0]);)t=t[0];const n=t.find((e=>"prim"in e&&"storage"===e.prim));if(!n||!Array.isArray(n.args))throw new pr(e,'The response.script.code has an element of type {prim: "storage"}, but its args is not an array');return new Tr(n.args[0])}isExpressionExtended(e){return"prim"in e&&Array.isArray(e.args)}constructor(e){if(this.val=e,this[vr]=!0,this.root=ur(e,0),this.root instanceof Wt)this.bigMap=this.root;else if(this.isExpressionExtended(e)&&"pair"===e.prim){const t=e.args[0];this.isExpressionExtended(t)&&"big_map"===t.prim&&(this.bigMap=new Wt(t,0,ur))}}removeTopLevelAnnotation(e){return(this.root instanceof Xt||this.root instanceof Gt)&&this.root.hasAnnotations()&&"object"==typeof e&&1===Object.keys(e).length?e[Object.keys(e)[0]]:e}Execute(e,t){const n=this.root.Execute(e,t);return this.removeTopLevelAnnotation(n)}Typecheck(e){this.root instanceof Wt&&Number.isInteger(Number(e))||this.root instanceof Rn&&e.ticketer&&e.value&&e.amount||this.root instanceof Un&&e.ticketer&&e.value&&e.amount||this.root instanceof sn&&this.root.ValueSchema instanceof Wt||this.root.EncodeObject(e)}ExecuteOnBigMapDiff(e,t){if(!this.bigMap)throw new fr("Big map schema is undefined");if(!Array.isArray(e))throw new mr(`Big map diff must be an array, got: ${JSON.stringify(e)}`,e);const n=e.map((({key:e,value:t})=>({args:[e,t]})));return this.bigMap.Execute(n,t)}ExecuteOnBigMapValue(e,t){if(!this.bigMap)throw new fr("Big map schema is undefined");return this.bigMap.ValueSchema.Execute(e,t)}EncodeBigMapKey(e){if(!this.bigMap)throw new fr("Big map schema is undefined");try{return this.bigMap.KeySchema.ToBigMapKey(e)}catch(t){throw new hr("key",t,this.bigMap.KeySchema,e)}}Encode(e,t){try{return this.root.EncodeObject(e,t)}catch(n){if(n instanceof qt)throw n;throw new gr("storage object",n,this.root,e,t)}}ExtractSchema(){return this.removeTopLevelAnnotation(this.root.ExtractSchema())}generateSchema(){return this.removeTopLevelAnnotation(this.root.generateSchema())}ComputeState(e,t){if(!this.bigMap)throw new fr("Big map schema is undefined");const n=e.reduce(((e,t)=>Object.assign(Object.assign({},e),this.ExecuteOnBigMapDiff(t.contents[0].metadata.operation_result.big_map_diff))),{});return Object.assign(Object.assign({},this.Execute(t)),{[this.bigMap.annot()]:n})}FindFirstInTopLevelPair(e,t){return this.findValue(this.root.val,e,t)}findValue(e,t,n){if(Sr(n,e))return t;if(Array.isArray(e)||"pair"===e.prim){const r=xr(e),i=xr(t,"Pair");if(void 0===r.args||void 0===i.args)throw new yr("Tokens have no arguments");if(r.args[0])return this.findValue(r.args[0],i.args[0],n)||this.findValue(r.args[1],i.args[1],n)}}findToken(e){return this.root.findAndReturnTokens(e,[])}}vr=br;class wr{static fromRPCResponse(e){if(!e)throw new pr(e,"the RPC response is empty");if(!e.script)throw new pr(e,"the RPC response has no script");if(!Array.isArray(e.script.code))throw new pr(e,"The response.script.code should be an array");const t=e.script.code.find((e=>"prim"in e&&"parameter"===e.prim));if(!t)throw new pr(e,'The response.script.code should have an element of type {prim: "parameter"}');if(!Array.isArray(t.args))throw new pr(e,'The response.script.code has an element of type {prim: "parameter"}, but its args is not an array');return new wr(t.args[0])}get isMultipleEntryPoint(){return this.root instanceof Gt||this.root instanceof hn&&this.root.subToken()instanceof Gt}get hasAnnotation(){return!this.isMultipleEntryPoint||"0"!==Object.keys(this.ExtractSchema())[0]}constructor(e){this.root=ur(e,0)}Execute(e,t){return this.root.Execute(e,t)}Encode(...e){try{return this.root.Encode(e.reverse())}catch(t){if(t instanceof qt)throw t;throw new dr("Unable to encode parameter",this.root,e,t)}}EncodeObject(e,t){try{return this.root.EncodeObject(e,t)}catch(n){if(n instanceof qt)throw n;throw new dr("Unable to encode parameter object",this.root,e,n)}}ExtractSchema(){return this.root.ExtractSchema()}generateSchema(){return this.root.generateSchema()}ExtractSignatures(){return this.root.ExtractSignature()}}class kr{static fromRPCResponse(e){const t=[],n=e&&e.script&&Array.isArray(e.script.code)&&e.script.code.filter((e=>"view"===e.prim));return n&&n.forEach((e=>{t.push(new kr(e.args))})),t}constructor(e){if(!e)throw new _r(e,"the args are not defined");if(4!==e.length)throw new _r(e,"there should be exactly 4 arguments");if(!("string"in e[0])||!e[0].string)throw new _r(e,"The first argument should be a string, representing the view name. It should be in the form: { string: 'viewName' }");this.viewName=e[0].string,this.viewArgsType=e[1],this.viewReturnType=e[2],this.instructions=e[3],this.rootArgsType=ur(this.viewArgsType,0),this.rootReturnType=ur(this.viewReturnType,0)}encodeViewArgs(e){try{return this.rootArgsType.EncodeObject(e)}catch(t){throw new dr(this.viewName,void 0,e,t)}}decodeViewResult(e,t){return this.rootReturnType.Execute(e,t)}extractArgsSchema(){return this.rootArgsType.ExtractSchema()}extractResultSchema(){return this.rootReturnType.ExtractSchema()}}class Er{constructor(e,t){this.tag=e,this.type=t}static fromMichelineValue(e){var t,n;return new Er(null===(t=e.annots)||void 0===t?void 0:t[0],null===(n=e.args)||void 0===n?void 0:n[0])}static fromRPCResponse(e){const t=[];return e.script.code.forEach((e=>{"prim"in e&&"code"===e.prim&&"args"in e&&e.args&&t.push(...Er.extractEventsRecursively(e.args))})),Er.removeDuplicates(t)}static removeDuplicates(e){const t=[];return e.forEach((e=>{-1===t.findIndex((t=>t.tag===e.tag&&Sr(t.type,e.type)))&&t.push(e)})),t}static extractEventsRecursively(e){return Array.isArray(e)?e.flatMap((e=>Er.extractEventsRecursively(e))):"prim"in e?"EMIT"===e.prim?[Er.fromMichelineValue(e)]:"args"in e&&e.args?e.args.flatMap((e=>Er.extractEventsRecursively(e))):[]:[]}}const Cr=Symbol(),Nr=Symbol("source_reference");class Ar extends i.IT{constructor(e,t,n){super(),this.src=e,this.idx=t,this.message=n,this.name="ScanError"}}var Ir;!function(e){e[e.Comment=0]="Comment",e[e.Number=1]="Number",e[e.String=2]="String",e[e.Bytes=3]="Bytes",e[e.Ident=4]="Ident"}(Ir||(Ir={}));const Dr=new RegExp("\\s"),Pr=new RegExp("[:@%_A-Za-z]"),Mr=new RegExp("[@%_\\.A-Za-z0-9]"),Or=new RegExp("[0-9]"),Fr=new RegExp("[0-9a-fA-F]");function*Rr(e,t=!1){let n=0;for(;n<e.length;){for(;n<e.length&&Dr.test(e[n]);)n++;if(n===e.length)return;const r=e[n],i=n;if(Pr.test(r)){for(n++;n<e.length&&Mr.test(e[n]);)n++;yield{t:Ir.Ident,v:e.slice(i,n),first:i,last:n}}else if(e.length-n>1&&"0x"===e.substring(n,n+2)){for(n+=2;n<e.length&&Fr.test(e[n]);)n++;if(n-i&1)throw new Ar(e,n,"Bytes literal length is expected to be power of two");yield{t:Ir.Bytes,v:e.slice(i,n),first:i,last:n}}else if(Or.test(r)||"-"===r){"-"===r&&n++;const t=n;for(;n<e.length&&Or.test(e[n]);)n++;if(t===n)throw new Ar(e,n,"Number literal is too short");yield{t:Ir.Number,v:e.slice(i,n),first:i,last:n}}else if('"'===r){n++;let t=!1;for(;n<e.length&&(t||'"'!==e[n]);n++)t=!t&&"\\"===e[n];if(n===e.length)throw new Ar(e,n,"Unterminated string literal");n++,yield{t:Ir.String,v:e.slice(i,n),first:i,last:n}}else if("#"===r){for(n++;n<e.length&&"\n"!==e[n];)n++;t&&(yield{t:Ir.Comment,v:e.slice(i,n),first:i,last:n})}else if(e.length-n>1&&"/*"===e.substring(n,n+2)){for(n+=2;n<e.length&&!(e.length-n>1&&"*/"===e.substring(n,n+2));)n++;if(n===e.length)throw new Ar(e,n,"Unterminated C style comment");n+=2,t&&(yield{t:Ir.Comment,v:e.slice(i,n),first:i,last:n})}else{if("("!==r&&")"!==r&&"{"!==r&&"}"!==r&&";"!==r)throw new Ar(e,n,`Invalid character at offset ${n}: \`${r}'`);n++,yield{t:r,v:r,first:i,last:n}}}}const Lr=Symbol("ref_contract");var jr;!function(e){e.Ps9mPmXa="Ps9mPmXaRzmzk35gbAYNCAw6UXdE2qoABTHbN2oEEc1qM7CwT9P",e.PtCJ7pwo="PtCJ7pwoxe8JasnHY8YonnLYjcVHmhiARPJvqcC6VfHT5s8k8sY",e.PsYLVpVv="PsYLVpVvgbLhAhoqAkMFUo6gudkJ9weNXhUYCiLDzcUpFpkk8Wt",e.PsddFKi3="PsddFKi32cMJ2qPjf43Qv5GDWLDPZb3T3bF6fLKiF5HtvHNU7aP",e.Pt24m4xi="Pt24m4xiPbLDhVgVfABUjirbmda3yohdN82Sp9FeuAXJ4eV9otd",e.PsBABY5H="PsBABY5HQTSkA4297zNHfsZNKtxULfL18y95qb3m53QJiXGmrbU",e.PsBabyM1="PsBabyM1eUXZseaJdmXFApDSBqj8YBfwELoxZHHW77EMcAbbwAS",e.PsCARTHA="PsCARTHAGazKbHtnKfLzQg3kms52kSRpgnDY982a9oYsSXRLQEb",e.PsDELPH1="PsDELPH1Kxsxt8f9eWbxQeRxkjfbxoqM52jvs5Y5fBxWWh4ifpo",e.PtEdoTez="PtEdoTezd3RHSC31mpxxo1npxFjoWWcFgQtxapi51Z8TLu6v6Uq",e.PtEdo2Zk="PtEdo2ZkT9oKpimTah6x2embF25oss54njMuPzkJTEi5RqfdZFA",e.PsFLorena="PsFLorenaUUuikDWvMDr6fGBRG8kt3e3D3fHoXK1j1BFRxeSH4i",e.PtGRANADs="PtGRANADsDU8R9daYKAgWnQYAJ64omN1o3KMGVCykShA97vQbvV",e.PtHangzH="PtHangzHogokSuiMHemCuowEavgYTP8J5qQ9fQS793MHYFpCY3r",e.PtHangz2="PtHangz2aRngywmSRGGvrcTyMbbdpWdpFKuS4uMWxg2RaH9i1qx",e.PsiThaCa="PsiThaCaT47Zboaw71QWScM8sXeMM7bbQFncK9FLqYc6EKdpjVP",e.Psithaca2="Psithaca2MLRFYargivpo7YvUr7wUDqyxrdhC5CQq78mRvimz6A",e.PtJakarta="PtJakartaiDz69SfDDLXJSiuZqTSeSKRDbKVZC8MNzJnvRjvnGw",e.PtJakart2="PtJakart2xVj7pYXJBXrqHgd82rdkLey5ZeeGwDgPp9rhQUbSqY",e.PtKathman="PtKathmankSpLLDALzWw7CGD2j2MtyveTwboEYokqUCP4a1LxMg",e.PtLimaPtL="PtLimaPtLMwfNinJi9rCfDPWea8dFgTZ1MeJ9f1m2SRic6ayiwW",e.PtMumbaii="PtMumbaiiFFEGbew1rRjzSPyzRbA51Tm3RVZL5suHPxSZYDhCEc",e.PtMumbai2="PtMumbai2TmsJHNGRkD8v8YDbtao7BLUC3wjASn1inAKLFCjaH1",e.PtNairobi="PtNairobiyssHuh87hEhfVBGCVrK3WnS8Z2FT4ymB5tAa4r1nQf",e.ProxfordY="ProxfordYmVfjWnRcgjWH36fW6PArwqykTFzotUxRs6gmTcZDuH",e.PtParisBx="PtParisBxoLz5gzMmn3d9WBQNoPSZakgnkMC2VNuQ3KXfUtUQeZ",e.PsParisCZ="PsParisCZo7KAh1Z1smVd9ZMZ1HHn5gkzbM94V3PLCpknFWhUAi",e.ProtoALpha="ProtoALphaALphaALphaALphaALphaALphaALphaALphaDdp3zK"}(jr||(jr={}));const zr=jr.PsParisCZ,Ur={Ps9mPmXaRzmzk35gbAYNCAw6UXdE2qoABTHbN2oEEc1qM7CwT9P:0,PtCJ7pwoxe8JasnHY8YonnLYjcVHmhiARPJvqcC6VfHT5s8k8sY:1,PsYLVpVvgbLhAhoqAkMFUo6gudkJ9weNXhUYCiLDzcUpFpkk8Wt:2,PsddFKi32cMJ2qPjf43Qv5GDWLDPZb3T3bF6fLKiF5HtvHNU7aP:3,Pt24m4xiPbLDhVgVfABUjirbmda3yohdN82Sp9FeuAXJ4eV9otd:4,PsBABY5HQTSkA4297zNHfsZNKtxULfL18y95qb3m53QJiXGmrbU:5,PsBabyM1eUXZseaJdmXFApDSBqj8YBfwELoxZHHW77EMcAbbwAS:5,PsCARTHAGazKbHtnKfLzQg3kms52kSRpgnDY982a9oYsSXRLQEb:6,PsDELPH1Kxsxt8f9eWbxQeRxkjfbxoqM52jvs5Y5fBxWWh4ifpo:7,PtEdoTezd3RHSC31mpxxo1npxFjoWWcFgQtxapi51Z8TLu6v6Uq:8,PtEdo2ZkT9oKpimTah6x2embF25oss54njMuPzkJTEi5RqfdZFA:8,PsFLorenaUUuikDWvMDr6fGBRG8kt3e3D3fHoXK1j1BFRxeSH4i:9,PtGRANADsDU8R9daYKAgWnQYAJ64omN1o3KMGVCykShA97vQbvV:10,PtHangzHogokSuiMHemCuowEavgYTP8J5qQ9fQS793MHYFpCY3r:11,PtHangz2aRngywmSRGGvrcTyMbbdpWdpFKuS4uMWxg2RaH9i1qx:11,PsiThaCaT47Zboaw71QWScM8sXeMM7bbQFncK9FLqYc6EKdpjVP:12,Psithaca2MLRFYargivpo7YvUr7wUDqyxrdhC5CQq78mRvimz6A:12,PtJakartaiDz69SfDDLXJSiuZqTSeSKRDbKVZC8MNzJnvRjvnGw:13,PtJakart2xVj7pYXJBXrqHgd82rdkLey5ZeeGwDgPp9rhQUbSqY:13,PtKathmankSpLLDALzWw7CGD2j2MtyveTwboEYokqUCP4a1LxMg:14,PtLimaPtLMwfNinJi9rCfDPWea8dFgTZ1MeJ9f1m2SRic6ayiwW:15,PtMumbaiiFFEGbew1rRjzSPyzRbA51Tm3RVZL5suHPxSZYDhCEc:16,PtMumbai2TmsJHNGRkD8v8YDbtao7BLUC3wjASn1inAKLFCjaH1:16,PtNairobiyssHuh87hEhfVBGCVrK3WnS8Z2FT4ymB5tAa4r1nQf:17,ProxfordYmVfjWnRcgjWH36fW6PArwqykTFzotUxRs6gmTcZDuH:19,PtParisBxoLz5gzMmn3d9WBQNoPSZakgnkMC2VNuQ3KXfUtUQeZ:20,PsParisCZo7KAh1Z1smVd9ZMZ1HHn5gkzbM94V3PLCpknFWhUAi:20,ProtoALphaALphaALphaALphaALphaALphaALphaALphaDdp3zK:21};function Br(e,t){return Ur[e]<Ur[t]}class qr extends i.IT{constructor(e,t){super(),this.prim=e,this.message=t,this.name="MacroError"}}function Vr(e,t){var n,r;if(0===t&&void 0===e.args||(null===(n=e.args)||void 0===n?void 0:n.length)===t)return!0;throw new qr(e,`macro ${e.prim} expects ${t} arguments, was given ${null===(r=e.args)||void 0===r?void 0:r.length}`)}function Kr(e){if(void 0===e.annots)return!0;throw new qr(e,`unexpected annotation on macro ${e.prim}: ${e.annots}`)}function Jr(e,t){if("int"in t)return!0;throw new qr(e,`macro ${e.prim} expects int argument`)}function Wr(e,t,n,r){let i=0,o=0;const s=[null,null];let a;if(i===t.length)throw new qr(e,`unexpected end: ${e.prim}`);let c,l=t[i++];switch(l){case"P":{const{r:s,n:c,an:l}=Wr(e,t.slice(i),n.slice(o),r);a=s,i+=c,o+=l;break}case"A":o!==n.length&&(s[0]=n[o++]);break;default:throw new qr(e,`${e.prim}: unexpected character: ${l}`)}if(i===t.length)throw new qr(e,`unexpected end: ${e.prim}`);switch(l=t[i++],l){case"P":{const{r:s,n:a,an:l}=Wr(e,t.slice(i),n.slice(o),r);c=s.map((([e,t])=>[e+1,t])),i+=a,o+=l;break}case"I":o!==n.length&&(s[1]=n[o++]);break;default:throw new qr(e,`${e.prim}: unexpected character: ${l}`)}return{r:r(a,c,[0,s]),n:i,an:o}}function Hr(e,t,n,r){const i=t[0];switch(i){case"A":return t.length>1?[{prim:"DUP"},{prim:"DIP",args:[[{prim:"CAR",annots:["@%%"]},Hr(e,t.slice(1),[],r)]]},{prim:"CDR",annots:["@%%"]},{prim:"SWAP"},{prim:"PAIR",annots:["%@","%@",...n]}]:r.a;case"D":return t.length>1?[{prim:"DUP"},{prim:"DIP",args:[[{prim:"CDR",annots:["@%%"]},Hr(e,t.slice(1),[],r)]]},{prim:"CAR",annots:["@%%"]},{prim:"PAIR",annots:["%@","%@",...n]}]:r.d;default:throw new qr(e,`${e.prim}: unexpected character: ${i}`)}}function Gr(e,t){let n=e.length;for(;n>0&&e[n-1]===t;)n--;return e.slice(0,n)}function Qr(e){const t=[],n=[];if(void 0!==e)for(const r of e)(0!==r.length&&"%"===r[0]?t:n).push(r);return{fields:t,rest:n}}function Yr({prim:e,annots:t,args:n}){return Object.assign(Object.assign({prim:e},t&&{annots:t}),n&&{args:n})}const Zr=/^P[PAI]{3,}R$/,Xr=/^UNP[PAI]{2,}R$/,$r=/^C[AD]{2,}R$/,ei=/^SET_C[AD]+R$/,ti=/^MAP_C[AD]+R$/,ni=/^DI{2,}P$/,ri=/^DU+P$/;class ii extends i.IT{constructor(e,t){super(),this.token=e,this.message=t,this.name="MichelineParseError"}}class oi extends i.IT{constructor(e,t){super(),this.node=e,this.message=t,this.name="JSONParseError"}}const si=new ii(null,"Unexpected EOF");function ai(e){return e.t===Ir.Ident&&("@"===e.v[0]||"%"===e.v[0]||":"===e.v[0])}const ci=new RegExp("^-?[0-9]+$"),li=new RegExp("^([0-9a-fA-F]{2})*$");class ui{constructor(e){this.opt=e}expand(e){var t,n,r;if(void 0!==(null===(t=this.opt)||void 0===t?void 0:t.expandGlobalConstant)&&"constant"===e.prim){const t=function(e,t){return void 0!==e.args&&1===e.args.length&&"string"in e.args[0]&&e.args[0].string in t?t[e.args[0].string]:e}(e,this.opt.expandGlobalConstant);return t!==e&&(t[Nr]=Object.assign(Object.assign({},e[Nr]||{first:0,last:0}),{globalConstant:e})),t}if(void 0===(null===(n=this.opt)||void 0===n?void 0:n.expandMacros)||(null===(r=this.opt)||void 0===r?void 0:r.expandMacros)){const t=function(e,t){const n=(null==t?void 0:t.protocol)||zr;function r(e){return void 0!==e?[{prim:"RENAME",annots:e}]:[]}switch(e.prim){case"CMPEQ":case"CMPNEQ":case"CMPLT":case"CMPGT":case"CMPLE":case"CMPGE":if(Vr(e,0))return[{prim:"COMPARE"},Yr({prim:e.prim.slice(3),annots:e.annots})];break;case"IFEQ":case"IFNEQ":case"IFLT":case"IFGT":case"IFLE":case"IFGE":if(Vr(e,2))return[{prim:e.prim.slice(2)},Yr({prim:"IF",annots:e.annots,args:e.args})];break;case"IFCMPEQ":case"IFCMPNEQ":case"IFCMPLT":case"IFCMPGT":case"IFCMPLE":case"IFCMPGE":if(Vr(e,2))return[{prim:"COMPARE"},{prim:e.prim.slice(5)},Yr({prim:"IF",annots:e.annots,args:e.args})];break;case"FAIL":if(Vr(e,0)&&Kr(e))return[{prim:"UNIT"},{prim:"FAILWITH"}];break;case"ASSERT":if(Vr(e,0)&&Kr(e))return[{prim:"IF",args:[[],[[{prim:"UNIT"},{prim:"FAILWITH"}]]]}];break;case"ASSERT_EQ":case"ASSERT_NEQ":case"ASSERT_LT":case"ASSERT_GT":case"ASSERT_LE":case"ASSERT_GE":if(Vr(e,0)&&Kr(e))return[{prim:e.prim.slice(7)},{prim:"IF",args:[[],[[{prim:"UNIT"},{prim:"FAILWITH"}]]]}];break;case"ASSERT_CMPEQ":case"ASSERT_CMPNEQ":case"ASSERT_CMPLT":case"ASSERT_CMPGT":case"ASSERT_CMPLE":case"ASSERT_CMPGE":if(Vr(e,0)&&Kr(e))return[[{prim:"COMPARE"},{prim:e.prim.slice(10)}],{prim:"IF",args:[[],[[{prim:"UNIT"},{prim:"FAILWITH"}]]]}];break;case"ASSERT_NONE":if(Vr(e,0)&&Kr(e))return[{prim:"IF_NONE",args:[[],[[{prim:"UNIT"},{prim:"FAILWITH"}]]]}];break;case"ASSERT_SOME":if(Vr(e,0))return[{prim:"IF_NONE",args:[[[{prim:"UNIT"},{prim:"FAILWITH"}]],r(e.annots)]}];break;case"ASSERT_LEFT":if(Vr(e,0))return[{prim:"IF_LEFT",args:[r(e.annots),[[{prim:"UNIT"},{prim:"FAILWITH"}]]]}];break;case"ASSERT_RIGHT":if(Vr(e,0))return[{prim:"IF_LEFT",args:[[[{prim:"UNIT"},{prim:"FAILWITH"}]],r(e.annots)]}];break;case"IF_SOME":if(Vr(e,2))return[Yr({prim:"IF_NONE",annots:e.annots,args:[e.args[1],e.args[0]]})];break;case"IF_RIGHT":if(Vr(e,2))return[Yr({prim:"IF_LEFT",annots:e.annots,args:[e.args[1],e.args[0]]})];break;case"CAR":case"CDR":if(void 0===e.args)return e;if(Vr(e,1)&&Jr(e,e.args[0])){const t=parseInt(e.args[0].int,10);return Yr({prim:"GET",args:[{int:"CAR"===e.prim?String(2*t+1):String(2*t)}],annots:e.annots})}}if(Zr.test(e.prim)&&Vr(e,0)){const{fields:t,rest:n}=Qr(e.annots),{r:r}=Wr(e,e.prim.slice(1),t,((e,t,n)=>[...e||[],...t||[],n]));return r.map((([e,t],i)=>{const o=[...Gr(t,null).map((e=>null===e?"%":e)),...0===e&&i===r.length-1?n:[]],s=Yr({prim:"PAIR",annots:0!==o.length?o:void 0});return 0===e?s:{prim:"DIP",args:1===e?[[s]]:[{int:String(e)},[s]]}}))}if(Xr.test(e.prim)){if(Br(n,jr.PtEdo2Zk)&&Vr(e,0)){const{r:t}=Wr(e,e.prim.slice(3),e.annots||[],((e,t,n)=>[n,...t||[],...e||[]]));return t.map((([e,t])=>{const n=[{prim:"DUP"},Yr({prim:"CAR",annots:null!==t[0]?[t[0]]:void 0}),{prim:"DIP",args:[[Yr({prim:"CDR",annots:null!==t[1]?[t[1]]:void 0})]]}];return 0===e?n:{prim:"DIP",args:1===e?[[n]]:[{int:String(e)},[n]]}}))}if("UNPAIR"===e.prim)return e;if(Vr(e,0)){const{r:t}=Wr(e,e.prim.slice(3),[],((e,t,n)=>[n,...t||[],...e||[]]));return t.map((([e])=>{const t=Yr({prim:"UNPAIR"});return 0===e?t:{prim:"DIP",args:1===e?[[t]]:[{int:String(e)},[t]]}}))}}if($r.test(e.prim)&&Vr(e,0)){const t=[...e.prim.slice(1,e.prim.length-1)];return t.map(((n,r)=>{const i=r===t.length-1?e.annots:void 0;switch(n){case"A":return Yr({prim:"CAR",annots:i});case"D":return Yr({prim:"CDR",annots:i});default:throw new qr(e,`unexpected character: ${n}`)}}))}if(ei.test(e.prim)&&Vr(e,0)){const{fields:t,rest:n}=Qr(e.annots);if(t.length>1)throw new qr(e,`unexpected annotation on macro ${e.prim}: ${t}`);const r=0!==t.length?{a:[{prim:"DUP"},{prim:"CAR",annots:t},{prim:"DROP"},{prim:"CDR",annots:["@%%"]},{prim:"SWAP"},{prim:"PAIR",annots:[t[0],"%@"]}],d:[{prim:"DUP"},{prim:"CDR",annots:t},{prim:"DROP"},{prim:"CAR",annots:["@%%"]},{prim:"PAIR",annots:["%@",t[0]]}]}:{a:[{prim:"CDR",annots:["@%%"]},{prim:"SWAP"},{prim:"PAIR",annots:["%","%@"]}],d:[{prim:"CAR",annots:["@%%"]},{prim:"PAIR",annots:["%@","%"]}]};return Hr(e,e.prim.slice(5,e.prim.length-1),n,r)}if(ti.test(e.prim)&&Vr(e,1)){const{fields:t}=Qr(e.annots);if(t.length>1)throw new qr(e,`unexpected annotation on macro ${e.prim}: ${t}`);const n={a:[{prim:"DUP"},{prim:"CDR",annots:["@%%"]},{prim:"DIP",args:[[Yr({prim:"CAR",annots:0!==t.length?["@"+t[0].slice(1)]:void 0}),e.args[0]]]},{prim:"SWAP"},{prim:"PAIR",annots:[0!==t.length?t[0]:"%","%@"]}],d:[{prim:"DUP"},Yr({prim:"CDR",annots:0!==t.length?["@"+t[0].slice(1)]:void 0}),e.args[0],{prim:"SWAP"},{prim:"CAR",annots:["@%%"]},{prim:"PAIR",annots:["%@",0!==t.length?t[0]:"%"]}]};return Hr(e,e.prim.slice(5,e.prim.length-1),[],n)}if(ni.test(e.prim)&&Vr(e,1)){let t=0;for(;"I"===e.prim[1+t];)t++;return Yr({prim:"DIP",args:[{int:String(t)},e.args[0]]})}if(ri.test(e.prim)){let t=0;for(;"U"===e.prim[1+t];)t++;if(Br(n,jr.PtEdo2Zk)){if(1===t){if(void 0===e.args)return e;Vr(e,1)&&Jr(e,e.args[0])&&(t=parseInt(e.args[0].int,10))}else Vr(e,0);return 1===t?[Yr({prim:"DUP",annots:e.annots})]:2===t?[{prim:"DIP",args:[[Yr({prim:"DUP",annots:e.annots})]]},{prim:"SWAP"}]:[{prim:"DIP",args:[{int:String(t-1)},[Yr({prim:"DUP",annots:e.annots})]]},{prim:"DIG",args:[{int:String(t)}]}]}if(1===t)return e;if(Vr(e,0))return Yr({prim:"DUP",args:[{int:String(t)}],annots:e.annots})}return e}(e,this.opt);return t!==e&&(t[Nr]=Object.assign(Object.assign({},e[Nr]||{first:0,last:0}),{macro:e})),t}return e}parseListExpr(e,t){var n;const r={first:t.first,last:t.last},i="("===t.t;let o;if(i){if(o=e.next(),o.done)throw si;r.last=o.value.last}else o={value:t};if(o.value.t!==Ir.Ident)throw new ii(o.value,`not an identifier: ${o.value.v}`);const s={prim:o.value.v,[Nr]:r};for(;;){const t=e.next();if(t.done){if(i)throw si;break}if(")"===t.value.t){if(!i)throw new ii(t.value,"unexpected closing bracket");r.last=t.value.last;break}if(ai(t.value))s.annots=s.annots||[],s.annots.push(t.value.v),r.last=t.value.last;else{s.args=s.args||[];const i=this.parseExpr(e,t.value);r.last=(null===(n=i[Nr])||void 0===n?void 0:n.last)||r.last,s.args.push(i)}}return this.expand(s)}parseArgs(e,t){var n;const r={first:t.first,last:t.last},i={prim:t.v,[Nr]:r};for(;;){const t=e.next();if(t.done||"}"===t.value.t||";"===t.value.t)return[i,t];if(ai(t.value))r.last=t.value.last,i.annots=i.annots||[],i.annots.push(t.value.v);else{const o=this.parseExpr(e,t.value);r.last=(null===(n=o[Nr])||void 0===n?void 0:n.last)||r.last,i.args=i.args||[],i.args.push(o)}}}parseSequenceExpr(e,t){var n,r;const i={first:t.first,last:t.last},o=[];o[Nr]=i;const s="{"===t.t;let a="{"===t.t?null:{value:t};for(;;){if(null===a&&(a=e.next(),a.done||(i.last=a.value.last)),a.done){if(s)throw si;return o}if("}"===a.value.t){if(s)return o;throw new ii(a.value,"unexpected closing bracket")}if(a.value.t===Ir.Ident){const[t,r]=this.parseArgs(e,a.value);i.last=(null===(n=t[Nr])||void 0===n?void 0:n.last)||i.last,o.push(this.expand(t)),a=r}else{const t=this.parseExpr(e,a.value);i.last=(null===(r=t[Nr])||void 0===r?void 0:r.last)||i.last,o.push(t),a=null}null===a&&(a=e.next(),a.done||(i.last=a.value.last)),a.done||";"!==a.value.t||(a=null)}}parseExpr(e,t){switch(t.t){case Ir.Ident:return this.expand({prim:t.v,[Nr]:{first:t.first,last:t.last}});case Ir.Number:return{int:t.v,[Nr]:{first:t.first,last:t.last}};case Ir.String:return{string:JSON.parse(t.v),[Nr]:{first:t.first,last:t.last}};case Ir.Bytes:return{bytes:t.v.slice(2),[Nr]:{first:t.first,last:t.last}};case"{":return this.parseSequenceExpr(e,t);default:return this.parseListExpr(e,t)}}parseSequence(e){if("string"!=typeof e)throw new TypeError(`string type was expected, got ${typeof e} instead`);const t=Rr(e),n=t.next();return n.done?null:this.parseSequenceExpr(t,n.value)}parseList(e){if("string"!=typeof e)throw new TypeError(`string type was expected, got ${typeof e} instead`);const t=Rr(e),n=t.next();return n.done?null:this.parseListExpr(t,n.value)}parseMichelineExpression(e){if("string"!=typeof e)throw new TypeError(`string type was expected, got ${typeof e} instead`);const t=Rr(e),n=t.next();return n.done?null:this.parseExpr(t,n.value)}parseScript(e){return this.parseSequence(e)}parseData(e){return this.parseList(e)}parseJSON(e){if("object"!=typeof e)throw new TypeError(`object type was expected, got ${typeof e} instead`);if(Array.isArray(e)){const t=[];for(const n of e){if(null===n||"object"!=typeof n)throw new oi(n,`unexpected sequence element: ${n}`);t.push(this.parseJSON(n))}return t}if("prim"in e){const t=e;if("string"==typeof t.prim&&(void 0===t.annots||Array.isArray(t.annots))&&(void 0===t.args||Array.isArray(t.args))){const e={prim:t.prim};if(void 0!==t.annots){for(const e of t.annots)if("string"!=typeof e)throw new oi(e,`string expected: ${e}`);e.annots=t.annots}if(void 0!==t.args){e.args=[];for(const n of t.args){if(null===n||"object"!=typeof n)throw new oi(n,`unexpected argument: ${n}`);e.args.push(this.parseJSON(n))}}return this.expand(e)}throw new oi(e,`malformed prim expression: ${e}`)}if("string"in e){if("string"==typeof e.string)return{string:e.string};throw new oi(e,`malformed string literal: ${e}`)}if("int"in e){if("string"==typeof e.int&&ci.test(e.int))return{int:e.int};throw new oi(e,`malformed int literal: ${e}`)}if("bytes"in e){if("string"==typeof e.bytes&&li.test(e.bytes))return{bytes:e.bytes};throw new oi(e,`malformed bytes literal: ${e}`)}throw new oi(e,`unexpected object: ${e}`)}}const di=[1779033703,-1150833019,1013904242,-1521486534,1359893119,-1694144372,528734635,1541459225],_i=[1116352408,1899447441,-1245643825,-373957723,961987163,1508970993,-1841331548,-1424204075,-670586216,310598401,607225278,1426881987,1925078388,-2132889090,-1680079193,-1046744716,-459576895,-272742522,264347078,604807628,770255983,1249150122,1555081692,1996064986,-1740746414,-1473132947,-1341970488,-1084653625,-958395405,-710438585,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,-2117940946,-1838011259,-1564481375,-1474664885,-1035236496,-949202525,-778901479,-694614492,-200395387,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,-2067236844,-1933114872,-1866530822,-1538233109,-1090935817,-965641998];class pi extends i.IT{constructor(e){super(),this.message=e,this.name="Base58DecodingError"}}function fi(e){const t=(e.length+9)%64,n=0===t?0:64-t;if(e.length>268435455)throw new i.L("",`: Invalid length ${e.length} is too big -- SHA-256.`);const r=e.length<<3,o=[...e,128,...new Array(n).fill(0),0,0,0,0,r>>24&255,r>>16&255,r>>8&255,255&r];function s(e,t){return e>>>t|e<<32-t}const a=[...di],c=new Array(64),l=new Array(8);for(let i=0;i<o.length;i+=64){let e=i,t=0;for(;t<16;)c[t]=o[e]<<24|o[e+1]<<16|o[e+2]<<8|o[e+3],e+=4,t++;for(;t<64;){const e=s(c[t-15],7)^s(c[t-15],18)^c[t-15]>>>3,n=s(c[t-2],17)^s(c[t-2],19)^c[t-2]>>>10;c[t]=(0|n)+c[t-7]+e+c[t-16]|0,t++}for(let n=0;n<8;n++)l[n]=a[n];for(let n=0;n<64;n++){const e=s(l[0],2)^s(l[0],13)^s(l[0],22),t=s(l[4],6)^s(l[4],11)^s(l[4],25),r=l[7]+t+(l[4]&l[5]^~l[4]&l[6])+_i[n]+c[n]|0,i=e+(l[0]&l[1]^l[0]&l[2]^l[1]&l[2])|0;l[7]=l[6],l[6]=l[5],l[5]=l[4],l[4]=l[3]+r|0,l[3]=l[2],l[2]=l[1],l[1]=l[0],l[0]=r+i|0}for(let n=0;n<8;n++)a[n]=a[n]+l[n]|0}const u=[];for(const i of a)u.push(i>>24&255),u.push(i>>16&255),u.push(i>>8&255),u.push(255&i);return u}const mi=[0,1,2,3,4,5,6,7,8,-1,-1,-1,-1,-1,-1,-1,9,10,11,12,13,14,15,16,-1,17,18,19,20,21,-1,22,23,24,25,26,27,28,29,30,31,32,-1,-1,-1,-1,-1,-1,33,34,35,36,37,38,39,40,41,42,43,-1,44,45,46,47,48,49,50,51,52,53,54,55,56,57];function hi(e,t){const n=e.charCodeAt(t)-49;if(n>=mi.length||-1===mi[n])throw new pi(`Unexpected character at position ${t}: ${e[t]}`);return mi[n]}function gi(e){const t=function(e){const t=[];let n=0;for(;n<e.length&&0===hi(e,n);)n++;let r=n;for(;n<e.length;){let r=hi(e,n++),i=0;for(;0!==r||i<t.length;){const e=58*(t[i]||0)+r;t[i++]=e%256,r=Math.floor(e/256)}}for(;r-- >0;)t.push(0);return t.reverse()}(e);if(t.length<4)throw new pi(`Data is too short ${t.length}`);const n=t.slice(0,t.length-4),r=t.slice(t.length-4),i=fi(fi(n));if(r[0]!==i[0]||r[1]!==i[1]||r[2]!==i[2]||r[3]!==i[3])throw new pi("Invalid checksum");return n}class yi extends i.Xi{constructor(e){super(),this.message=e,this.name="InvalidMichelsonError"}}class vi extends i.Xi{constructor(e){super(),this.message=e,this.name="InvalidTypeExpressionError"}}class bi extends i.Xi{constructor(e){super(),this.message=e,this.name="InvalidDataExpressionError"}}class xi extends i.Xi{constructor(e){super(),this.entrypoint=e,this.name="InvalidEntrypointError",this.message=`Contract has no entrypoint named: "${e}"`}}i.Xi;class Si extends i.IT{constructor(e){super(),this.message=e,this.name="LongIntegerError"}}class Ti extends i.IT{constructor(e){super(),this.hexByte=e,this.name="HexParseError",this.message=`Unable to parse hex byte "${e}"`}}class wi extends i.IT{constructor(e,t){super(),this.val=e,this.message=t,this.name="MichelsonError"}}class ki extends wi{constructor(e,t,n){super(e,t),this.val=e,this.message=t,this.name="MichelsonTypeError",void 0!==n&&(this.data=n)}}class Ei{append(e){let t=0;for(;0!==e||t<this.buf.length;){const n=10*(this.buf[t]||0)+e;this.buf[t++]=n%256,e=Math.floor(n/256)}}constructor(e){if(this.neg=!1,this.buf=[],void 0!==e)if("string"==typeof e)for(let t=0;t<e.length;t++){const n=e.charCodeAt(t);if(0===t&&45===n)this.neg=!0;else{if(n<48||n>57)throw new Si(`unexpected character in integer constant "${e[t]}"`);this.append(n-48)}}else e<0?(this.neg=!0,this.append(-e)):this.append(e)}cmp(e){if(this.neg!==e.neg)return(e.neg?1:0)-(this.neg?1:0);{let t=0;if(this.buf.length!==e.buf.length)t=this.buf.length<e.buf.length?-1:1;else if(0!==this.buf.length){let n=e.buf.length-1;for(;n>=0&&this.buf[n]===e.buf[n];)n--;t=n<0?0:this.buf[n]<e.buf[n]?-1:1}return this.neg?0===t?0:-t:t}}get sign(){return 0===this.buf.length?0:this.neg?-1:1}}function Ci(e){const t=[];for(let n=0;n<e.length;n+=2){const r=parseInt(e.slice(n,n+2),16);if(Number.isNaN(r))return null;t.push(r)}return t}function Ni(e){try{return new Ei(e),!0}catch(u){return!1}}function Ai(e){try{return new Ei(e).sign>=0}catch(u){return!1}}const Ii=/^(@%|@%%|%@|[@:%]([_0-9a-zA-Z][_0-9a-zA-Z.%@]*)?)$/;function Di(e,t){if(Array.isArray(e))return{};let n,r,i;if(void 0!==e.annots)for(const o of e.annots)if(0!==o.length){if(!Ii.test(o)||!(null==t?void 0:t.specialVar)&&("@%"===o||"@%%"===o)||!(null==t?void 0:t.specialFields)&&"%@"===o)throw new wi(e,`${e.prim}: unexpected annotation: ${o}`);switch(o[0]){case"%":((null==t?void 0:t.emptyFields)||o.length>1)&&(n=n||[],n.push(o));break;case":":o.length>1&&(r=r||[],r.push(o));break;case"@":((null==t?void 0:t.emptyVar)||o.length>1)&&(i=i||[],i.push(o))}}return{f:n,t:r,v:i}}const Pi={BlockHash:[32,[1,52]],OperationHash:[32,[5,116]],OperationListHash:[32,[133,233]],OperationListListHash:[32,[29,159,109]],ProtocolHash:[32,[2,170]],ContextHash:[32,[79,199]],ED25519PublicKeyHash:[20,[6,161,159]],SECP256K1PublicKeyHash:[20,[6,161,161]],P256PublicKeyHash:[20,[6,161,164]],ContractHash:[20,[2,90,121]],CryptoboxPublicKeyHash:[16,[153,103]],ED25519Seed:[32,[13,15,58,7]],ED25519PublicKey:[32,[13,15,37,217]],SECP256K1SecretKey:[32,[17,162,224,201]],P256SecretKey:[32,[16,81,238,189]],ED25519EncryptedSeed:[56,[7,90,60,179,41]],SECP256K1EncryptedSecretKey:[56,[9,237,241,174,150]],P256EncryptedSecretKey:[56,[9,48,57,115,171]],SECP256K1PublicKey:[33,[3,254,226,86]],P256PublicKey:[33,[3,178,139,127]],SECP256K1Scalar:[33,[38,248,136]],SECP256K1Element:[33,[5,92,0]],ED25519SecretKey:[64,[43,246,78,7]],ED25519Signature:[64,[9,245,205,134,18]],SECP256K1Signature:[64,[13,115,101,19,63]],P256Signature:[64,[54,240,44,52]],GenericSignature:[64,[4,130,43]],ChainID:[4,[87,82,0]],RollupAddress:[20,[1,128,120,31]]};function Mi(e,...t){const n=gi(e);for(const r of t){const[e,t]=Pi[r];if(n.length===e+t.length){let e=0;for(;e<t.length&&n[e]===t[e];)e++;if(e===t.length)return[r,n.slice(t.length)]}}return null}function Oi(e,t){const n=t,r=Array.isArray(n)?n:n.args;if(2===r.length){return"pair"===e?{prim:"pair",args:r}:{prim:"Pair",args:r}}return Object.assign(Object.assign({},Array.isArray(n)?{prim:e}:n),{args:[r[0],{prim:e,args:r.slice(1)}]})}function Fi(e){return Array.isArray(e)||"pair"===e.prim}function Ri(e){return Array.isArray(e)||"prim"in e&&"Pair"===e.prim}const Li=/^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])[T ]([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9]|60)(\.[0-9]+)?(Z|[+-]([01][0-9]|2[0-3]):([0-5][0-9]))$/;function ji(e){if("string"in e){if(Ai(e.string))return new Date(parseInt(e.string,10));if(Li.test(e.string)){const t=new Date(e.string);if(!Number.isNaN(t.valueOf))return t}}else if(Ni(e.int))return new Date(parseInt(e.int,10));return null}function zi(e){return e.map((e=>(e>>4&15).toString(16)+(15&e).toString(16))).join("")}const Ui=31,Bi={ABS:!0,ADD:!0,ADDRESS:!0,AMOUNT:!0,AND:!0,APPLY:!0,BALANCE:!0,BLAKE2B:!0,CAR:!0,CDR:!0,CHAIN_ID:!0,CHECK_SIGNATURE:!0,COMPARE:!0,CONCAT:!0,CONS:!0,EDIV:!0,EQ:!0,EXEC:!0,FAILWITH:!0,GE:!0,GET_AND_UPDATE:!0,GT:!0,HASH_KEY:!0,IMPLICIT_ACCOUNT:!0,INT:!0,ISNAT:!0,JOIN_TICKETS:!0,KECCAK:!0,LE:!0,LEVEL:!0,LSL:!0,LSR:!0,LT:!0,MEM:!0,MUL:!0,NEG:!0,NEQ:!0,NEVER:!0,NOT:!0,NOW:!0,OR:!0,PACK:!0,PAIRING_CHECK:!0,READ_TICKET:!0,SAPLING_VERIFY_UPDATE:!0,SELF:!0,SELF_ADDRESS:!0,SENDER:!0,SET_DELEGATE:!0,SHA256:!0,SHA3:!0,SHA512:!0,SIZE:!0,SLICE:!0,SOME:!0,SOURCE:!0,SPLIT_TICKET:!0,SUB:!0,SWAP:!0,TICKET:!0,TICKET_DEPRECATED:!0,TOTAL_VOTING_POWER:!0,TRANSFER_TOKENS:!0,UNIT:!0,VOTING_POWER:!0,XOR:!0,RENAME:!0,OPEN_CHEST:!0,SUB_MUTEZ:!0,MIN_BLOCK_TIME:!0,BYTES:!0,NAT:!0},qi=Object.assign({},Bi,{CONTRACT:!0,CREATE_CONTRACT:!0,DIG:!0,DIP:!0,DROP:!0,DUG:!0,DUP:!0,EMIT:!0,EMPTY_BIG_MAP:!0,EMPTY_MAP:!0,EMPTY_SET:!0,GET:!0,IF:!0,IF_CONS:!0,IF_LEFT:!0,IF_NONE:!0,ITER:!0,LAMBDA:!0,LAMBDA_REC:!0,LEFT:!0,LOOP:!0,LOOP_LEFT:!0,MAP:!0,NIL:!0,NONE:!0,PAIR:!0,PUSH:!0,RIGHT:!0,SAPLING_EMPTY_STATE:!0,UNPACK:!0,UNPAIR:!0,UPDATE:!0,CAST:!0,VIEW:!0}),Vi={unit:!0,never:!0,bool:!0,int:!0,nat:!0,string:!0,chain_id:!0,bytes:!0,mutez:!0,key_hash:!0,key:!0,signature:!0,timestamp:!0,address:!0,tx_rollup_l2_address:!0},Ki=Object.assign({},Vi,{or:!0,pair:!0,set:!0,big_map:!0,contract:!0,lambda:!0,list:!0,map:!0,operation:!0,option:!0,bls12_381_g1:!0,bls12_381_g2:!0,bls12_381_fr:!0,sapling_transaction:!0,sapling_transaction_deprecated:!0,sapling_state:!0,ticket:!0,chest_key:!0,chest:!0});class Ji extends wi{constructor(e,t){super(e,t),this.val=e,this.message=t,this.name="MichelsonValidationError"}}function Wi(e){return"prim"in e}function Hi(e){if(Wi(e))return!0;throw new Ji(e,"prim expression expected")}function Gi(e){if(Array.isArray(e))return!0;throw new Ji(e,"sequence expression expected")}function Qi(e){if(function(e){return Array.isArray(e)||"prim"in e}(e))return!0;throw new Ji(e,"prim or sequence expression expected")}function Yi(e){if("-"===e.int[0])throw new Ji(e,"natural number expected")}function Zi(e){if("int"in e)return!0;throw new Ji(e,"int literal expected")}function Xi(e){if("string"in e)return!0;throw new Ji(e,"string literal expected")}function $i(e,t){var n;if(0===t&&void 0===e.args||(null===(n=e.args)||void 0===n?void 0:n.length)===t)return!0;throw new Ji(e,`${t} arguments expected`)}function eo(e){var t,n;if(Array.isArray(e)){for(const t of e){if(!Array.isArray(t)&&!Wi(t))throw new Ji(e,"sequence or prim expected");eo(t)}return!0}if(Hi(e)){if(Object.prototype.hasOwnProperty.call(Bi,e.prim))return $i(e,0),!0;switch(e.prim){case"DROP":case"PAIR":case"UNPAIR":case"DUP":case"UPDATE":case"GET":void 0!==e.args&&$i(e,1)&&Zi(e.args[0])&&Yi(e.args[0]);break;case"DIG":case"DUG":case"SAPLING_EMPTY_STATE":$i(e,1)&&Zi(e.args[0])&&Yi(e.args[0]);break;case"NONE":case"LEFT":case"RIGHT":case"NIL":case"CAST":$i(e,1)&&lo(e.args[0]);break;case"UNPACK":$i(e,1)&&no(e.args[0]);break;case"CONTRACT":$i(e,1)&&oo(e.args[0]);break;case"IF_NONE":case"IF_LEFT":case"IF_CONS":case"IF":$i(e,2)&&(Gi(e.args[0])&&eo(e.args[0]),Gi(e.args[1])&&eo(e.args[1]));break;case"MAP":case"ITER":case"LOOP":case"LOOP_LEFT":$i(e,1)&&eo(e.args[0]);break;case"CREATE_CONTRACT":$i(e,1)&&po(e.args[0]);break;case"DIP":if(2===(null===(t=e.args)||void 0===t?void 0:t.length))Zi(e.args[0])&&Yi(e.args[0]),Gi(e.args[1])&&eo(e.args[1]);else{if(1!==(null===(n=e.args)||void 0===n?void 0:n.length))throw new Ji(e,"1 or 2 arguments expected");Gi(e.args[0])&&eo(e.args[0])}break;case"PUSH":$i(e,2)&&(ro(e.args[0]),_o(e.args[1]));break;case"EMPTY_SET":$i(e,1)&&to(e.args[0]);break;case"EMPTY_MAP":$i(e,2)&&(to(e.args[0]),lo(e.args[1]));break;case"EMPTY_BIG_MAP":$i(e,2)&&(to(e.args[0]),so(e.args[1]));break;case"LAMBDA_REC":case"LAMBDA":$i(e,3)&&(lo(e.args[0]),lo(e.args[1]),Gi(e.args[2])&&eo(e.args[2]));break;case"VIEW":$i(e,2)&&(Xi(e.args[0])&&co(e.args[0]),lo(e.args[1])&&ro(e.args[1]));break;case"EMIT":e.args&&e.args.length>0?$i(e,1):$i(e,0);break;default:throw new Ji(e,"instruction expected")}}return!0}function to(e){if(Qi(e))if(Array.isArray(e)||"pair"===e.prim||"or"===e.prim||"option"===e.prim)uo(e,(e=>to(e)));else if(!Object.prototype.hasOwnProperty.call(Vi,e.prim))throw new Ji(e,`${e.prim}: type is not comparable`);return!0}function no(e){if(Qi(e)&&Wi(e)){if(!Object.prototype.hasOwnProperty.call(Ki,e.prim)||"big_map"===e.prim||"operation"===e.prim||"sapling_state"===e.prim||"ticket"===e.prim)throw new Ji(e,`${e.prim}: type can't be used inside PACK/UNPACK instructions`);uo(e,(e=>no(e)))}return!0}function ro(e){if(Qi(e)&&Wi(e)){if(!Object.prototype.hasOwnProperty.call(Ki,e.prim)||"big_map"===e.prim||"operation"===e.prim||"sapling_state"===e.prim||"ticket"===e.prim||"contract"===e.prim)throw new Ji(e,`${e.prim}: type can't be pushed`);uo(e,(e=>ro(e)))}return!0}function io(e){if(Qi(e)&&Wi(e)){if(!Object.prototype.hasOwnProperty.call(Ki,e.prim)||"operation"===e.prim||"contract"===e.prim)throw new Ji(e,`${e.prim}: type can't be used as part of a storage`);uo(e,(e=>io(e)))}return!0}function oo(e){if(Qi(e)&&Wi(e)){if(!Object.prototype.hasOwnProperty.call(Ki,e.prim)||"operation"===e.prim)throw new Ji(e,`${e.prim}: type can't be used as part of a parameter`);uo(e,(e=>oo(e)))}return!0}function so(e){if(Qi(e)&&Wi(e)){if(!Object.prototype.hasOwnProperty.call(Ki,e.prim)||"big_map"===e.prim||"operation"===e.prim||"sapling_state"===e.prim)throw new Ji(e,`${e.prim}: type can't be used inside a big_map`);uo(e,(e=>so(e)))}return!0}const ao=new RegExp("^[a-zA-Z0-9_.%@]*$");function co(e){if(e.string.length>Ui)throw new Ji(e,`view name too long: ${e.string}`);if(!ao.test(e.string))throw new Ji(e,`invalid character(s) in view name: ${e.string}`)}function lo(e){if(Qi(e)&&Wi(e)){if(!Object.prototype.hasOwnProperty.call(Ki,e.prim))throw new Ji(e,"type expected");uo(e,(e=>lo(e)))}return!0}function uo(e,t){if(Array.isArray(e)||"pair"===e.prim){const n=Array.isArray(e)?e:e.args;if(void 0===n||n.length<2)throw new Ji(e,"at least 2 arguments expected");return n.forEach((e=>{Qi(e)&&t(e)})),!0}switch(e.prim){case"option":case"list":$i(e,1)&&Qi(e.args[0])&&t(e.args[0]);break;case"contract":$i(e,1)&&oo(e.args[0]);break;case"or":$i(e,2)&&Qi(e.args[0])&&Qi(e.args[1])&&(t(e.args[0]),t(e.args[1]));break;case"lambda":$i(e,2)&&(lo(e.args[0]),lo(e.args[1]));break;case"set":$i(e,1)&&to(e.args[0]);break;case"map":$i(e,2)&&Qi(e.args[0])&&Qi(e.args[1])&&(to(e.args[0]),t(e.args[1]));break;case"big_map":$i(e,2)&&Qi(e.args[0])&&Qi(e.args[1])&&(to(e.args[0]),so(e.args[1]),t(e.args[1]));break;case"ticket":$i(e,1)&&Qi(e.args[0])&&to(e.args[0]);break;case"sapling_state":case"sapling_transaction":$i(e,1)&&Zi(e.args[0]);break;default:$i(e,0)}return!0}function _o(e){if("int"in e||"string"in e||"bytes"in e)return!0;if(Array.isArray(e)){let t=0;for(const n of e)Wi(n)&&"Elt"===n.prim?($i(n,2)&&(_o(n.args[0]),_o(n.args[1])),t++):_o(n);if(0!==t&&t!==e.length)throw new Ji(e,"data entries and map elements can't be intermixed");return!0}if(!Wi(e))throw new Ji(e,"data entry expected");switch(e.prim){case"Unit":case"True":case"False":case"None":$i(e,0);break;case"Pair":if(void 0===e.args||e.args.length<2)throw new Ji(e,"at least 2 arguments expected");for(const t of e.args)_o(t);break;case"Left":case"Right":case"Some":$i(e,1)&&_o(e.args[0]);break;case"Lambda_rec":e.args&&eo(e.args);break;case"Ticket":$i(e,4)&&(!function(e){if("string"in e||"bytes"in e)return!0;throw new Ji(e,"string or bytes literal expected")}(e.args[0]),lo(e.args[1]),_o(e.args[2]),Zi(e.args[3]));break;default:if(!Object.prototype.hasOwnProperty.call(qi,e.prim))throw new Ji(e,"data entry or instruction expected");eo(e)}return!0}function po(e){if(Gi(e)){const t={},n={};for(const r of e)if(Hi(r)){if("view"!==r.prim){if(r.prim in t)throw new Ji(e,`duplicate contract section: ${r.prim}`);t[r.prim]=!0}switch(r.prim){case"code":$i(r,1)&&Gi(r.args[0])&&eo(r.args[0]);break;case"parameter":if($i(r,1)&&oo(r.args[0]),r.annots)throw new Ji(r,"Annotation must be part of the parameter type");break;case"storage":$i(r,1)&&io(r.args[0]);break;case"view":if($i(r,4)){if(Xi(r.args[0])){const t=r.args[0];if(t.string in n)throw new Ji(e,`duplicate view name: ${t.string}`);n[t.string]=!0,co(t)}ro(r.args[1]),ro(r.args[2]),Gi(r.args[3])&&eo(r.args[3])}break;default:throw new Ji(e,`unexpected contract section: ${r.prim}`)}}}return!0}function fo(e){return Object.prototype.hasOwnProperty.call(qi,e.prim)}function mo(e){if(!Array.isArray(e))return!1;for(const t of e)if("prim"in t){if(fo(t))throw new wi(e,`Instruction outside of a lambda: ${JSON.stringify(e)}`);if("Elt"===t.prim)throw new wi(e,`Elt item outside of a map literal: ${JSON.stringify(e)}`)}return!0}"function"==typeof SuppressedError&&SuppressedError;const ho=["parameter","storage","code","False","Elt","Left","None","Pair","Right","Some","True","Unit","PACK","UNPACK","BLAKE2B","SHA256","SHA512","ABS","ADD","AMOUNT","AND","BALANCE","CAR","CDR","CHECK_SIGNATURE","COMPARE","CONCAT","CONS","CREATE_ACCOUNT","CREATE_CONTRACT","IMPLICIT_ACCOUNT","DIP","DROP","DUP","EDIV","EMPTY_MAP","EMPTY_SET","EQ","EXEC","FAILWITH","GE","GET","GT","HASH_KEY","IF","IF_CONS","IF_LEFT","IF_NONE","INT","LAMBDA","LE","LEFT","LOOP","LSL","LSR","LT","MAP","MEM","MUL","NEG","NEQ","NIL","NONE","NOT","NOW","OR","PAIR","PUSH","RIGHT","SIZE","SOME","SOURCE","SENDER","SELF","STEPS_TO_QUOTA","SUB","SWAP","TRANSFER_TOKENS","SET_DELEGATE","UNIT","UPDATE","XOR","ITER","LOOP_LEFT","ADDRESS","CONTRACT","ISNAT","CAST","RENAME","bool","contract","int","key","key_hash","lambda","list","map","big_map","nat","option","or","pair","set","signature","string","bytes","mutez","timestamp","unit","operation","address","SLICE","DIG","DUG","EMPTY_BIG_MAP","APPLY","chain_id","CHAIN_ID","LEVEL","SELF_ADDRESS","never","NEVER","UNPAIR","VOTING_POWER","TOTAL_VOTING_POWER","KECCAK","SHA3","PAIRING_CHECK","bls12_381_g1","bls12_381_g2","bls12_381_fr","sapling_state","sapling_transaction_deprecated","SAPLING_EMPTY_STATE","SAPLING_VERIFY_UPDATE","ticket","TICKET_DEPRECATED","READ_TICKET","SPLIT_TICKET","JOIN_TICKETS","GET_AND_UPDATE","chest","chest_key","OPEN_CHEST","VIEW","view","constant","SUB_MUTEZ","tx_rollup_l2_address","MIN_BLOCK_TIME","sapling_transaction","EMIT","Lambda_rec","LAMBDA_REC","TICKET","BYTES","NAT","Ticket"],go=Object.assign({},...ho.map(((e,t)=>({[e]:t}))));var yo;!function(e){e[e.Int=0]="Int",e[e.String=1]="String",e[e.Sequence=2]="Sequence",e[e.Prim0=3]="Prim0",e[e.Prim0Annot=4]="Prim0Annot",e[e.Prim1=5]="Prim1",e[e.Prim1Annot=6]="Prim1Annot",e[e.Prim2=7]="Prim2",e[e.Prim2Annot=8]="Prim2Annot",e[e.Prim=9]="Prim",e[e.Bytes=10]="Bytes"}(yo||(yo={}));class vo{constructor(){this.buffer=[]}get length(){return this.buffer.length}writeBytes(e){this.buffer.push(...e.map((e=>255&e)))}writeUint8(e){const t=0|e;this.buffer.push(255&t)}writeUint16(e){const t=0|e;this.buffer.push(t>>8&255),this.buffer.push(255&t)}writeUint32(e){const t=0|e;this.buffer.push(t>>24&255),this.buffer.push(t>>16&255),this.buffer.push(t>>8&255),this.buffer.push(255&t)}writeInt8(e){this.writeUint8(e)}writeInt16(e){this.writeUint16(e)}writeInt32(e){this.writeUint32(e)}}const bo=new Error("bounds out of range");class xo{constructor(e,t=0,n=e.length){this.buffer=e,this.idx=t,this.cap=n}get length(){return this.cap-this.idx}readBytes(e){if(this.cap-this.idx<e)throw bo;const t=this.buffer.slice(this.idx,this.idx+e);return this.idx+=e,t}reader(e){if(this.cap-this.idx<e)throw bo;const t=new xo(this.buffer,this.idx,this.idx+e);return this.idx+=e,t}copy(){return new xo(this.buffer,this.idx,this.cap)}readUint8(){if(this.cap-this.idx<1)throw bo;return this.buffer[this.idx++]>>>0}readUint16(){if(this.cap-this.idx<2)throw bo;return(this.buffer[this.idx++]<<8|this.buffer[this.idx++])>>>0}readUint32(){if(this.cap-this.idx<4)throw bo;return(this.buffer[this.idx++]<<24|this.buffer[this.idx++]<<16|this.buffer[this.idx++]<<8|this.buffer[this.idx++])>>>0}readInt8(){if(this.cap-this.idx<1)throw bo;return this.buffer[this.idx++]<<24>>24}readInt16(){if(this.cap-this.idx<2)throw bo;return(this.buffer[this.idx++]<<8|this.buffer[this.idx++])<<16>>16}readInt32(){if(this.cap-this.idx<4)throw bo;return this.buffer[this.idx++]<<24|this.buffer[this.idx++]<<16|this.buffer[this.idx++]<<8|this.buffer[this.idx++]}}var So,To,wo;function ko(e){let t;const n=e.readUint8();switch(n){case To.ED25519:t="ED25519PublicKeyHash";break;case To.SECP256K1:t="SECP256K1PublicKeyHash";break;case To.P256:t="P256PublicKeyHash";break;default:throw new Error(`unknown public key hash tag: ${n}`)}return{type:t,hash:e.readBytes(20)}}function Eo(e){let t;const n=e.readUint8();switch(n){case So.Implicit:t=ko(e);break;case So.Originated:t={type:"ContractHash",hash:e.readBytes(20)},e.readBytes(1);break;default:throw new Error(`unknown address tag: ${n}`)}if(0!==e.length){const n=new TextDecoder;t.entryPoint=n.decode(new Uint8Array(e.readBytes(e.length)))}return t}function Co(e,t){let n;switch(e.type){case"ED25519PublicKeyHash":n=To.ED25519;break;case"SECP256K1PublicKeyHash":n=To.SECP256K1;break;case"P256PublicKeyHash":n=To.P256;break;default:throw new Error(`unexpected address type: ${e.type}`)}t.writeUint8(n),t.writeBytes(Array.from(e.hash))}function No(e){let t,n;const r=e.readUint8();switch(r){case wo.ED25519:n="ED25519PublicKey",t=32;break;case wo.SECP256K1:n="SECP256K1PublicKey",t=33;break;case wo.P256:n="P256PublicKey",t=33;break;default:throw new Error(`unknown public key tag: ${r}`)}return{type:n,publicKey:e.readBytes(t)}}function Ao(e,t,n){var r,i;const[o,s]=n(e);if(Array.isArray(o)){const e=new vo;for(const t of o){const n=s.next();if(n.done)throw new Error("REPORT ME: iterator is done");Ao(t,e,n.value)}return t.writeUint8(yo.Sequence),t.writeUint32(e.length),void t.writeBytes(e.buffer)}if("string"in o){const e=(new TextEncoder).encode(o.string);return t.writeUint8(yo.String),t.writeUint32(e.length),void t.writeBytes(Array.from(e))}if("int"in o){t.writeUint8(yo.Int);let e=BigInt(o.int);const n=e<0;n&&(e=-e);let r=0;do{const i=0===r?BigInt(6):BigInt(7);let o=e&(BigInt(1)<<i)-BigInt(1);e>>=i,e&&(o|=BigInt(128)),0===r&&n&&(o|=BigInt(64)),t.writeUint8(Number(o)),r++}while(e);return}if("bytes"in o){const e=function(e){const t=[];for(let n=0;n<e.length;n+=2){const r=e.slice(n,n+2),i=parseInt(r,16);if(Number.isNaN(i))throw new Ti(r);t.push(i)}return t}(o.bytes);return t.writeUint8(yo.Bytes),t.writeUint32(e.length),void t.writeBytes(e)}const a=go[o.prim];if(void 0===a)throw new TypeError(`Can't encode primary: ${o.prim}`);const c=((null===(r=o.args)||void 0===r?void 0:r.length)||0)<3?yo.Prim0+2*((null===(i=o.args)||void 0===i?void 0:i.length)||0)+(void 0===o.annots||0===o.annots.length?0:1):yo.Prim;if(t.writeUint8(c),t.writeUint8(a),void 0!==o.args)if(o.args.length<3)for(const l of o.args){const e=s.next();if(e.done)throw new Error("REPORT ME: iterator is done");Ao(l,t,e.value)}else{const e=new vo;for(const t of o.args){const n=s.next();if(n.done)throw new Error("REPORT ME: iterator is done");Ao(t,e,n.value)}t.writeUint32(e.length),t.writeBytes(e.buffer)}if(void 0!==o.annots&&0!==o.annots.length){const e=(new TextEncoder).encode(o.annots.join(" "));t.writeUint32(e.length),t.writeBytes(Array.from(e))}else void 0!==o.args&&o.args.length>=3&&t.writeUint32(0)}!function(e){e[e.Implicit=0]="Implicit",e[e.Originated=1]="Originated"}(So||(So={})),function(e){e[e.ED25519=0]="ED25519",e[e.SECP256K1=1]="SECP256K1",e[e.P256=2]="P256"}(To||(To={})),function(e){e[e.ED25519=0]="ED25519",e[e.SECP256K1=1]="SECP256K1",e[e.P256=2]="P256"}(wo||(wo={}));const Io=e=>"prim"in e&&("Left"===e.prim||"Right"===e.prim),Do=e=>"prim"in e&&("Some"===e.prim||"None"===e.prim),Po=e=>{if(Fi(e))return t=>{if(!Ri(t))throw new ki(e,`pair expected: ${JSON.stringify(t)}`,t);mo(t);const n=Oi("pair",e);return[Oi("Pair",t),function*(){for(const e of n.args)yield Po(e)}()]};switch(e.prim){case"or":return t=>{if(!Io(t))throw new ki(e,`or expected: ${JSON.stringify(t)}`,t);return[t,function*(){yield Po(e.args["Left"===t.prim?0:1])}()]};case"option":return t=>{if(!Do(t))throw new ki(e,`option expected: ${JSON.stringify(t)}`,t);return[t,function*(){"Some"===t.prim&&(yield Po(e.args[0]))}()]};case"list":case"set":return t=>{if(!Array.isArray(t))throw new ki(e,`${e.prim} expected: ${JSON.stringify(t)}`,t);return[t,function*(){for(const n of t)yield Po(e.args[0])}()]};case"map":return t=>{if(!Array.isArray(t))throw new ki(e,`map expected: ${JSON.stringify(t)}`,t);return[t,function*(){for(const n of t)yield t=>{if(!("prim"in t)||"Elt"!==t.prim)throw new ki(e,`map element expected: ${JSON.stringify(t)}`,t);return[t,function*(){for(const t of e.args)yield Po(t)}()]}}()]};case"chain_id":return t=>{if(!("bytes"in t)&&!("string"in t))throw new ki(e,`chain id expected: ${JSON.stringify(t)}`,t);let n;if("string"in t){const r=Mi(t.string,"ChainID");if(null===r)throw new ki(e,`chain id base58 expected: ${t.string}`,t);n={bytes:zi(r[1])}}else n=t;return[n,[][Symbol.iterator]()]};case"signature":return t=>{if(!("bytes"in t)&&!("string"in t))throw new ki(e,`signature expected: ${JSON.stringify(t)}`,t);let n;if("string"in t){const r=Mi(t.string,"ED25519Signature","SECP256K1Signature","P256Signature","GenericSignature");if(null===r)throw new ki(e,`signature base58 expected: ${t.string}`,t);n={bytes:zi(r[1])}}else n=t;return[n,[][Symbol.iterator]()]};case"key_hash":return t=>{if(!("bytes"in t)&&!("string"in t))throw new ki(e,`key hash expected: ${JSON.stringify(t)}`,t);let n;if("string"in t){const r=Mi(t.string,"ED25519PublicKeyHash","SECP256K1PublicKeyHash","P256PublicKeyHash");if(null===r)throw new ki(e,`key hash base58 expected: ${t.string}`,t);const i=new vo;Co({type:r[0],hash:r[1]},i),n={bytes:zi(i.buffer)}}else n=t;return[n,[][Symbol.iterator]()]};case"key":return t=>{if(!("bytes"in t)&&!("string"in t))throw new ki(e,`public key expected: ${JSON.stringify(t)}`,t);let n;if("string"in t){const r=Mi(t.string,"ED25519PublicKey","SECP256K1PublicKey","P256PublicKey");if(null===r)throw new ki(e,`public key base58 expected: ${t.string}`,t);const i=new vo;!function(e,t){let n;switch(e.type){case"ED25519PublicKey":n=wo.ED25519;break;case"SECP256K1PublicKey":n=wo.SECP256K1;break;case"P256PublicKey":n=wo.P256;break;default:throw new Error(`unexpected public key type: ${e.type}`)}t.writeUint8(n),t.writeBytes(Array.from(e.publicKey))}({type:r[0],publicKey:r[1]},i),n={bytes:zi(i.buffer)}}else n=t;return[n,[][Symbol.iterator]()]};case"address":return t=>{if(!("bytes"in t)&&!("string"in t))throw new ki(e,`address expected: ${JSON.stringify(t)}`,t);let n;if("string"in t){const r=t.string.split("%"),i=Mi(r[0],"ED25519PublicKeyHash","SECP256K1PublicKeyHash","P256PublicKeyHash","ContractHash");if(null===i)throw new ki(e,`address base58 expected: ${t.string}`,t);const o=new vo;!function(e,t){if("ContractHash"===e.type?(t.writeUint8(So.Originated),t.writeBytes(Array.from(e.hash)),t.writeUint8(0)):(t.writeUint8(So.Implicit),Co(e,t)),void 0!==e.entryPoint&&""!==e.entryPoint&&"default"!==e.entryPoint){const n=(new TextEncoder).encode(e.entryPoint);t.writeBytes(Array.from(n))}}({type:i[0],hash:i[1],entryPoint:r.length>1?r[1]:void 0},o),n={bytes:zi(o.buffer)}}else n=t;return[n,[][Symbol.iterator]()]};case"timestamp":return t=>{if(!("string"in t)&&!("int"in t))throw new ki(e,`timestamp expected: ${JSON.stringify(t)}`,t);let n;if("string"in t){const r=ji(t);if(null===r)throw new ki(e,`can't parse date: ${t.string}`,t);n={int:String(Math.floor(r.getTime()/1e3))}}else n=t;return[n,[][Symbol.iterator]()]};default:return Oo}},Mo=e=>"prim"in e&&"PUSH"===e.prim,Oo=e=>Mo(e)?(eo(e),[e,function*(){yield Oo,yield Po(e.args[0])}()]):[e,function*(){for(;;)yield Oo}()];function Fo(e,t){const n=new vo;return n.writeUint8(5),Ao(e,n,void 0!==t?Po(t):Oo),n.buffer}class Ro extends wi{constructor(e,t,n){super(e,n),this.val=e,this.stackState=t,this.message=n,this.name="MichelsonInstructionError"}}function Lo(e){return Array.isArray(e)?"pair":e.prim}function jo(e){return"prim"in e?e.args:e}function zo(e,t,n=!1){if(Lo(e)!==Lo(t))throw new ki(e,`types mismatch: ${Lo(e)} != ${Lo(t)}`,void 0);const r=[Di(e),Di(t)];if(r[0].t&&r[1].t&&r[0].t[0]!==r[1].t[0])throw new ki(e,`${Lo(e)}: type names mismatch: ${r[0].t[0]} != ${r[1].t[0]}`,void 0);if(n&&r[0].f&&r[1].f&&r[0].f[0]!==r[1].f[0])throw new ki(e,`${Lo(e)}: field names mismatch: ${r[0].f[0]} != ${r[1].f}`,void 0);if(Fi(e)){const n=Oi("pair",e),r=Oi("pair",t);return zo(n.args[0],r.args[0],!0),void zo(n.args[1],r.args[1],!0)}switch(e.prim){case"option":case"list":case"contract":case"set":case"ticket":zo(e.args[0],t.args[0]);break;case"or":zo(e.args[0],t.args[0],!0),zo(e.args[1],t.args[1],!0);break;case"lambda":case"map":case"big_map":zo(e.args[0],t.args[0]),zo(e.args[1],t.args[1]);break;case"sapling_state":case"sapling_transaction":if(parseInt(e.args[0].int,10)!==parseInt(t.args[0].int,10))throw new ki(e,`${Lo(e)}: type argument mismatch: ${e.args[0].int} != ${t.args[0].int}`,void 0)}}function Uo(e,t){if(e.length!==t.length)throw new ki(e,`stack length mismatch: ${e.length} != ${t.length}`,void 0);for(let n=0;n<e.length;n++)zo(e[n],t[n])}function Bo(e,t=!1){var n,r,i;if(!Array.isArray(e)){const o=Di(e);if(((null===(n=o.t)||void 0===n?void 0:n.length)||0)>1)throw new ki(e,`${e.prim}: at most one type annotation allowed: ${e.annots}`,void 0);if(t){if(((null===(r=o.f)||void 0===r?void 0:r.length)||0)>1)throw new ki(e,`${e.prim}: at most one field annotation allowed: ${e.annots}`,void 0)}else if(((null===(i=o.f)||void 0===i?void 0:i.length)||0)>0)throw new ki(e,`${e.prim}: field annotations aren't allowed: ${e.annots}`,void 0)}if(Fi(e)){const t=jo(e);for(const e of t)Bo(e,!0)}else switch(e.prim){case"option":case"list":case"contract":case"set":Bo(e.args[0]);break;case"or":for(const t of e.args)Bo(t,!0);break;case"lambda":case"map":case"big_map":Bo(e.args[0]),Bo(e.args[1])}}function qo(e){if(!Array.isArray(e))return!1;for(const t of e)if(!(Array.isArray(t)&&qo(t)||"prim"in t&&fo(t)))return!1;return!0}function Vo(e,t,n){if(Fi(t)){if(Ri(e)){mo(e);const r=Oi("Pair",e),i=Oi("pair",t);return Vo(r.args[0],i.args[0],n),void Vo(r.args[1],i.args[1],n)}throw new ki(t,`pair expected: ${JSON.stringify(e)}`,e)}switch(t.prim){case"int":if("int"in e&&Ni(e.int))return;throw new ki(t,`integer value expected: ${JSON.stringify(e)}`,e);case"nat":case"mutez":if("int"in e&&Ai(e.int))return;throw new ki(t,`natural value expected: ${JSON.stringify(e)}`,e);case"string":if("string"in e)return;throw new ki(t,`string value expected: ${JSON.stringify(e)}`,e);case"bytes":case"bls12_381_g1":case"bls12_381_g2":if("bytes"in e&&null!==Ci(e.bytes))return;throw new ki(t,`bytes value expected: ${JSON.stringify(e)}`,e);case"bool":if("prim"in e&&("True"===e.prim||"False"===e.prim))return;throw new ki(t,`boolean value expected: ${JSON.stringify(e)}`,e);case"key_hash":if("string"in e&&null!==Mi(e.string,"ED25519PublicKeyHash","SECP256K1PublicKeyHash","P256PublicKeyHash"))return;if("bytes"in e)try{return void function(e){const t=Ci(e.bytes);if(null===t)throw new Error(`can't parse bytes: "${e.bytes}"`);ko(new xo(new Uint8Array(t)))}(e)}catch(r){}throw new ki(t,`key hash expected: ${JSON.stringify(e)}`,e);case"timestamp":if(("string"in e||"int"in e)&&null!==ji(e))return;throw new ki(t,`timestamp expected: ${JSON.stringify(e)}`,e);case"address":if("string"in e){let t=e.string;const n=e.string.indexOf("%");if(n>=0&&(t=e.string.slice(0,n)),null!==Mi(t,"ED25519PublicKeyHash","SECP256K1PublicKeyHash","P256PublicKeyHash","ContractHash","RollupAddress"))return}else if("bytes"in e)try{return void function(e){const t=Ci(e.bytes);if(null===t)throw new Error(`can't parse bytes: "${e.bytes}"`);Eo(new xo(new Uint8Array(t)))}(e)}catch(r){}throw new ki(t,`address expected: ${JSON.stringify(e)}`,e);case"key":if("string"in e&&null!==Mi(e.string,"ED25519PublicKey","SECP256K1PublicKey","P256PublicKey"))return;if("bytes"in e)try{return void function(e){const t=Ci(e.bytes);if(null===t)throw new Error(`can't parse bytes: "${e.bytes}"`);No(new xo(new Uint8Array(t)))}(e)}catch(r){}throw new ki(t,`public key expected: ${JSON.stringify(e)}`,e);case"unit":if("prim"in e&&"Unit"===e.prim)return;throw new ki(t,`unit value expected: ${JSON.stringify(e)}`,e);case"signature":if("bytes"in e||"string"in e&&null!==Mi(e.string,"ED25519Signature","SECP256K1Signature","P256Signature","GenericSignature"))return;throw new ki(t,`signature expected: ${JSON.stringify(e)}`,e);case"chain_id":if("bytes"in e||"string"in e){if(null!==("string"in e?gi(e.string):Ci(e.bytes)))return}throw new ki(t,`chain id expected: ${JSON.stringify(e)}`,e);case"option":if("prim"in e){if("None"===e.prim)return;if("Some"===e.prim)return void Vo(e.args[0],t.args[0],n)}throw new ki(t,`option expected: ${JSON.stringify(e)}`,e);case"list":case"set":if(mo(e)){for(const r of e)Vo(r,t.args[0],n);return}throw new ki(t,`${t.prim} expected: ${JSON.stringify(e)}`,e);case"or":if("prim"in e){if("Left"===e.prim)return void Vo(e.args[0],t.args[0],n);if("Right"===e.prim)return void Vo(e.args[0],t.args[1],n)}throw new ki(t,`union (or) expected: ${JSON.stringify(e)}`,e);case"lambda":if(qo(e)){const r=Ko(e,[t.args[0]],n);if("failed"in r)throw new ki(t,`function is failed with error type: ${r.failed}`,e);if(1!==r.length)throw new ki(t,"function must return a value",e);return void zo(t.args[1],r[0])}throw new ki(t,`function expected: ${JSON.stringify(e)}`,e);case"map":case"big_map":if(Array.isArray(e)){for(const r of e){if(!("prim"in r)||"Elt"!==r.prim)throw new ki(t,`map elements expected: ${JSON.stringify(e)}`,e);Vo(r.args[0],t.args[0],n),Vo(r.args[1],t.args[1],n)}return}throw new ki(t,`${t.prim} expected: ${JSON.stringify(e)}`,e);case"bls12_381_fr":if("int"in e&&Ni(e.int)||"bytes"in e&&null!==Ci(e.bytes))return;throw new ki(t,`BLS12-381 element expected: ${JSON.stringify(e)}`,e);case"sapling_state":if(Array.isArray(e))return;throw new ki(t,`sapling state expected: ${JSON.stringify(e)}`,e);case"ticket":if("prim"in e&&"Ticket"===e.prim)return Vo(e.args[0],{prim:"address"},n),Zo(e.args[1],t.args[0]),Vo(e.args[2],t.args[0],n),void Vo(e.args[3],{prim:"nat"},n);if(Ri(e))return void Vo(e,{prim:"pair",args:[{prim:"address"},t.args[0],{prim:"nat"}]},n);throw new ki(t,`ticket expected: ${JSON.stringify(e)}`,e);default:throw new ki(t,`type ${Lo(t)} don't have Michelson literal representation`,e)}}function Ko(e,t,n){const r=(null==n?void 0:n.protocol)||zr;if(Array.isArray(e))return function(e,t,n){let r=t,i=t,o=0;for(const s of e){const e=Ko(s,i,n);if(r=e,"failed"in e)break;i=e,o++}if("failed"in r&&0==r.level&&(!("prim"in r.failed)||"never"!==r.failed.prim)&&o!==e.length-1)throw new Ro(e,r,"FAIL must appear in a tail position");if(void 0!==(null==n?void 0:n.traceCallback)){const i={op:e,in:t,out:r};n.traceCallback(i)}return"failed"in r?{failed:r.failed,level:r.level+1}:r}(e,t,n);const i=e;function o(e,...n){if(t.length<n.length+e)throw new Ro(i,t,`${i.prim}: stack must have at least ${n.length} element(s)`);let r=e;for(const o of n){if(null!==o&&0!==o.length){let e=0;for(;e<o.length&&o[e]!==Lo(t[r]);)e++;if(e===o.length)throw new Ro(i,t,`${i.prim}: stack type mismatch: [${r}] expected to be ${o}, got ${Lo(t[r])} instead`)}r++}return t.slice(e,n.length+e)}function s(e){return(...n)=>{try{return e(...n)}catch(r){throw r instanceof wi?new Ro(i,t,r.message):r}}}function a(e){return n=>{try{return e(n)}catch(r){throw r instanceof wi?new Ro(i,t,r.message):r}}}const c=s(Di),l=s(Uo),u=s(zo),d=a(to),_=a(no),p=a(io),f=a(ro),m=a(so);function h(e,n){const r=c(i,Object.assign(Object.assign({},n),{emptyFields:void 0!==e.f&&e.f>1,emptyVar:void 0!==e.v&&e.v>1})),o=(e,n,r)=>{if(e&&e.length>(n||0))throw new Ro(i,t,`${i.prim}: at most ${n||0} ${r} annotations allowed`)};return o(r.f,e.f,"field"),o(r.t,e.t,"type"),o(r.v,e.v,"variable"),r}function g(e,t){const n=e,r=Array.isArray(n)?{prim:"pair",args:n}:n,i=c(r),o=void 0!==t.v||void 0!==t.t||void 0!==t.f?[...(null===t.v?i.v:t.v)||[],...(null===t.t?i.t:t.t)||[],...(null===t.f?i.f:t.f)||[]]:void 0,s=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]])}return n}(r,["annots"]);return Object.assign(Object.assign({},s),o&&0!==o.length&&{annots:o})}function y(e,t){const n=h({v:1});return g(e,{v:void 0!==n.v?n.v:void 0!==t?[t]:null,t:null})}function v(e,n,r,o,s){var a,l,u,d;const _=null===(a=c(n).f)||void 0===a?void 0:a[0],p=null===(l=r.f)||void 0===l?void 0:l[o];if(void 0!==p&&"%"!==p&&void 0!==_&&p!==_)throw new Ro(i,t,`${i.prim}: field names doesn't match: ${p} !== ${_}`);const f=null===(u=r.v)||void 0===u?void 0:u[o],m=null===(d=c(e).v)||void 0===d?void 0:d[0];return g(n,{t:null,v:f?"@%"===f?_?["@"+_.slice(1)]:void 0:"@%%"===f?m?["@"+m.slice(1)+"."+(_?_.slice(1):s)]:_?["@"+_.slice(1)]:void 0:[f]:null})}function b(e,n,r=n){const o=Oi("pair",e);if(1===r)return[o.args[0]];if(2===r)return o.args;const s=o.args[1];if(Fi(s))return[o.args[0],...b(s,n,r-1)];throw new Ro(i,t,`${i.prim}: at least ${n} fields are expected`)}function x(e,n,r=n){if(0===r)return e;const o=Oi("pair",e);if(1===r)return o.args[0];const s=o.args[1];if(Fi(s))return x(s,n,r-2);if(2===r)return s;throw new Ro(i,t,`${i.prim}: at least ${n+1} fields are expected`)}function S(e,n,r,o=r){if(0===o)return n;const s=Oi("pair",e);if(1===o)return Object.assign(Object.assign({},s),{args:[n,s.args[1]]});const a=s.args[1];if(Fi(a))return Object.assign(Object.assign({},s),{args:[s.args[0],S(a,n,r,o-2)]});if(2===o)return Object.assign(Object.assign({},s),{args:[s.args[0],n]});throw new Ro(i,t,`${i.prim}: at least ${r+1} fields are expected`)}const T=(e,t)=>["@"+(e.v?e.v[0].slice(1)+".":"")+t];function w(e,t){return"failed"in e||"failed"in t?"failed"in e?t:e:(l(e,t),e)}const k=(e=>{var i,s,a,k,E;switch(e.prim){case"DUP":{const n=e.args?parseInt(e.args[0].int,10):1;if(0===n)throw new Ro(e,t,"DUP 0 is forbidden");const r=o(n-1,null)[0];if("ticket"===Lo(r))throw new Ro(e,t,"ticket can't be DUPed");return[r,...t]}case"SWAP":{const e=o(0,null,null);return h({}),[e[1],e[0],...t.slice(2)]}case"SOME":return[g({prim:"option",args:[o(0,null)[0]]},h({t:1,v:1})),...t.slice(1)];case"UNIT":return[g({prim:"unit"},h({v:1,t:1})),...t];case"PAIR":{const n=e.args?parseInt(e.args[0].int,10):2;if(n<2)throw new Ro(e,t,`PAIR ${n} is forbidden`);const r=o(0,...new Array(n).fill(null)),i=h({f:n,t:1,v:1},{specialFields:!0}),s=e=>{const t=e.lastIndexOf(".");return e.slice(t>0?t+1:1)},a=r.map(((e,t)=>{var n;const r=c(e);return g(e,{v:null,t:null,f:i.f&&i.f.length>t&&"%"!==i.f[t]?"%@"===i.f[t]?r.v?["%"+s((null===(n=r.v)||void 0===n?void 0:n[0])||"")]:void 0:[i.f[t]]:void 0})}));return[g({prim:"pair",args:a},{t:i.t,v:i.v}),...t.slice(n)]}case"UNPAIR":{const n=e.args?parseInt(e.args[0].int,10):2;if(n<2)throw new Ro(e,t,`UNPAIR ${n} is forbidden`);const r=o(0,["pair"])[0],i=h({f:2,v:2},{specialVar:!0});return[...b(r,n).map(((e,t)=>v(r,e,i,t,0===t?"car":"cdr"))),...t.slice(1)]}case"CAR":case"CDR":{const n=Oi("pair",o(0,["pair"])[0]);return[v(n,n.args["CAR"===e.prim?0:1],h({f:1,v:1},{specialVar:!0}),0,e.prim.toLocaleLowerCase()),...t.slice(1)]}case"CONS":{const e=o(0,null,["list"]);return u(e[0],e[1].args[0]),[y({prim:"list",args:[e[1].args[0]]}),...t.slice(2)]}case"SIZE":return o(0,["string","list","set","map","bytes"]),[y({prim:"nat"}),...t.slice(1)];case"MEM":{const e=o(0,null,["set","map","big_map"]);return d(e[0]),u(e[0],e[1].args[0]),[y({prim:"bool"}),...t.slice(2)]}case"GET":if(e.args){const n=parseInt(e.args[0].int,10);return[y(x(o(0,["pair"])[0],n)),...t.slice(1)]}{const e=o(0,null,["map","big_map"]);return d(e[0]),u(e[0],e[1].args[0]),[y({prim:"option",args:[e[1].args[1]]}),...t.slice(2)]}case"UPDATE":if(e.args){const n=parseInt(e.args[0].int,10),r=o(0,null,["pair"]);return[y(S(r[1],r[0],n)),...t.slice(2)]}{const e=o(0,null,["bool","option"]);if(d(e[0]),"bool"===e[1].prim){const n=o(2,["set"]);return u(e[0],n[0].args[0]),[y({prim:"set",args:[g(e[0],{t:null})]}),...t.slice(3)]}const n=o(2,["map","big_map"]);return u(e[0],n[0].args[0]),"map"===n[0].prim?[y({prim:"map",args:[g(e[0],{t:null}),g(e[1].args[0],{t:null})]}),...t.slice(3)]:(m(e[1].args[0]),[y({prim:"big_map",args:[g(e[0],{t:null}),g(e[1].args[0],{t:null})]}),...t.slice(3)])}case"GET_AND_UPDATE":{const e=h({v:2}),n=o(0,null,["option"],["map","big_map"]);d(n[0]),u(n[0],n[2].args[0]),u(n[1].args[0],n[2].args[1]);const r=null===(i=e.v)||void 0===i?void 0:i.map((e=>"@"!==e?[e]:void 0));return"map"===n[2].prim?[g({prim:"option",args:[n[2].args[1]]},{v:null==r?void 0:r[0]}),g({prim:"map",args:[g(n[0],{t:null}),g(n[1].args[0],{t:null})]},{v:null==r?void 0:r[1]}),...t.slice(3)]:(m(n[1].args[0]),[g({prim:"option",args:[n[2].args[1]]},{v:null==r?void 0:r[0]}),g({prim:"big_map",args:[g(n[0],{t:null}),g(n[1].args[0],{t:null})]},{v:null==r?void 0:r[1]}),...t.slice(3)])}case"EXEC":{const e=o(0,null,["lambda"]);return u(e[0],e[1].args[0]),[y(e[1].args[1]),...t.slice(2)]}case"APPLY":{const n=o(0,null,["lambda"]);if(p(n[0]),f(n[0]),!Fi(n[1].args[0]))throw new Ro(e,t,`${e.prim}: function's argument must be a pair: ${Lo(n[1].args[0])}`);const r=n[1].args[0];return u(n[0],jo(r)[0]),[y({prim:"lambda",args:[jo(r)[1],n[1].args[1]]}),...t.slice(2)]}case"FAILWITH":{const e=o(0,null)[0];return Br(r,jr.PtEdo2Zk)||_(e),{failed:e,level:0}}case"NEVER":return o(0,["never"]),{failed:{prim:"never"},level:0};case"RENAME":return[y(o(0,null)[0]),...t.slice(1)];case"CONCAT":{const n=o(0,["string","list","bytes"]);if("list"===n[0].prim){if("string"!==Lo(n[0].args[0])&&"bytes"!==Lo(n[0].args[0]))throw new Ro(e,t,`${e.prim}: can't concatenate list of ${Lo(n[0].args[0])}'s`);return[y(n[0].args[0]),...t.slice(1)]}const r=o(1,["string","bytes"]);if(n[0].prim!==r[0].prim)throw new Ro(e,t,`${e.prim}: can't concatenate ${n[0].prim} with ${r[0].prim}`);return[y(r[0]),...t.slice(2)]}case"SLICE":return[y({prim:"option",args:[o(0,["nat"],["nat"],["string","bytes"])[2]]},"@slice"),...t.slice(3)];case"PACK":{const e=o(0,null)[0];return _(e),[y({prim:"bytes"},"@packed"),...t.slice(1)]}case"ADD":{const n=o(0,["nat","int","timestamp","mutez","bls12_381_g1","bls12_381_g2","bls12_381_fr"],["nat","int","timestamp","mutez","bls12_381_g1","bls12_381_g2","bls12_381_fr"]);if("nat"===n[0].prim&&"int"===n[1].prim||"int"===n[0].prim&&"nat"===n[1].prim)return[y({prim:"int"}),...t.slice(2)];if("int"===n[0].prim&&"timestamp"===n[1].prim||"timestamp"===n[0].prim&&"int"===n[1].prim)return[y({prim:"timestamp"}),...t.slice(2)];if(("int"===n[0].prim||"nat"===n[0].prim||"mutez"===n[0].prim||"bls12_381_g1"===n[0].prim||"bls12_381_g2"===n[0].prim||"bls12_381_fr"===n[0].prim)&&n[0].prim===n[1].prim)return[y(n[0]),...t.slice(2)];throw new Ro(e,t,`${e.prim}: can't add ${n[0].prim} to ${n[1].prim}`)}case"SUB":{const n=Br(r,jr.PsiThaCa)?o(0,["nat","int","timestamp","mutez"],["nat","int","timestamp","mutez"]):o(0,["nat","int","timestamp"],["nat","int","timestamp"]);if(("nat"===n[0].prim||"int"===n[0].prim)&&("nat"===n[1].prim||"int"===n[1].prim)||"timestamp"===n[0].prim&&"timestamp"===n[1].prim)return[y({prim:"int"}),...t.slice(2)];if("timestamp"===n[0].prim&&"int"===n[1].prim)return[y({prim:"timestamp"}),...t.slice(2)];if("mutez"===n[0].prim&&"mutez"===n[1].prim)return[y({prim:"mutez"}),...t.slice(2)];throw new Ro(e,t,`${e.prim}: can't subtract ${n[0].prim} from ${n[1].prim}`)}case"SUB_MUTEZ":return o(0,["mutez"],["mutez"]),[y({prim:"option",args:[{prim:"mutez"}]}),...t.slice(2)];case"MUL":{const n=o(0,["nat","int","mutez","bls12_381_g1","bls12_381_g2","bls12_381_fr"],["nat","int","mutez","bls12_381_g1","bls12_381_g2","bls12_381_fr"]);if("nat"===n[0].prim&&"int"===n[1].prim||"int"===n[0].prim&&"nat"===n[1].prim)return[y({prim:"int"}),...t.slice(2)];if("nat"===n[0].prim&&"mutez"===n[1].prim||"mutez"===n[0].prim&&"nat"===n[1].prim)return[y({prim:"mutez"}),...t.slice(2)];if(("bls12_381_g1"===n[0].prim||"bls12_381_g2"===n[0].prim||"bls12_381_fr"===n[0].prim)&&"bls12_381_fr"===n[1].prim||("nat"===n[0].prim||"int"===n[0].prim)&&n[0].prim===n[1].prim)return[y(n[0]),...t.slice(2)];if(("nat"===n[0].prim||"int"===n[0].prim)&&"bls12_381_fr"===n[1].prim||("nat"===n[1].prim||"int"===n[1].prim)&&"bls12_381_fr"===n[0].prim)return[y({prim:"bls12_381_fr"}),...t.slice(2)];throw new Ro(e,t,`${e.prim}: can't multiply ${n[0].prim} by ${n[1].prim}`)}case"EDIV":{const n=(e,t)=>({prim:"option",args:[{prim:"pair",args:[{prim:e},{prim:t}]}]}),r=o(0,["nat","int","mutez"],["nat","int","mutez"]);if("nat"===r[0].prim&&"nat"===r[1].prim)return[y(n("nat","nat")),...t.slice(2)];if(!("nat"!==r[0].prim&&"int"!==r[0].prim||"nat"!==r[1].prim&&"int"!==r[1].prim))return[y(n("int","nat")),...t.slice(2)];if("mutez"===r[0].prim&&"nat"===r[1].prim)return[y(n("mutez","mutez")),...t.slice(2)];if("mutez"===r[0].prim&&"mutez"===r[1].prim)return[y(n("nat","mutez")),...t.slice(2)];throw new Ro(e,t,`${e.prim}: can't euclideally divide ${r[0].prim} by ${r[1].prim}`)}case"ABS":return o(0,["int"]),[y({prim:"nat"}),...t.slice(1)];case"ISNAT":return o(0,["int"]),[y({prim:"option",args:[{prim:"nat"}]}),...t.slice(1)];case"INT":return o(0,["nat","bls12_381_fr","bytes"]),[y({prim:"int"}),...t.slice(1)];case"BYTES":return o(0,["nat","int"]),[y({prim:"bytes"}),...t.slice(1)];case"NAT":return o(0,["bytes"]),[y({prim:"nat"}),...t.slice(1)];case"NEG":{const e=o(0,["nat","int","bls12_381_g1","bls12_381_g2","bls12_381_fr"])[0];return"nat"===e.prim||"int"===e.prim?[y({prim:"int"}),...t.slice(1)]:[y(e),...t.slice(1)]}case"LSL":case"LSR":return o(0,["nat","bytes"],["nat","bytes"]),[y({prim:"nat"}),...t.slice(2)];case"OR":case"XOR":{const n=o(0,["nat","bytes","bool"],["nat","bytes","bool"]);if(n[0].prim!==n[1].prim)throw new Ro(e,t,`${e.prim}: both arguments must be of the same type: ${n[0].prim}, ${n[1].prim}`);return[y(n[1]),...t.slice(2)]}case"AND":{const n=o(0,["nat","bytes","bool","int"],["nat","bytes","bool"]);if(("int"!==n[0].prim||"nat"!==n[1].prim)&&n[0].prim!==n[1].prim)throw new Ro(e,t,`${e.prim}: both arguments must be of the same type: ${n[0].prim}, ${n[1].prim}`);return[y(n[1]),...t.slice(2)]}case"NOT":return"bool"===o(0,["nat","bytes","bool","int"])[0].prim?[y({prim:"bool"}),...t.slice(1)]:[y({prim:"int"}),...t.slice(1)];case"COMPARE":{const e=o(0,null,null);return d(e[0]),d(e[1]),[y({prim:"int"}),...t.slice(2)]}case"EQ":case"NEQ":case"LT":case"GT":case"LE":case"GE":return o(0,["int"]),[y({prim:"bool"}),...t.slice(1)];case"SELF":{if(void 0===(null==n?void 0:n.contract))throw new Ro(e,t,`${e.prim}: contract required`);const r=h({f:1,v:1}),i=Ho(n.contract,null===(s=r.f)||void 0===s?void 0:s[0]);if(null===i)throw new Ro(e,t,`${e.prim}: contract has no entrypoint ${i}`);return[g({prim:"contract",args:[i]},{v:r.v?r.v:["@self"]}),...t]}case"TRANSFER_TOKENS":{const e=o(0,null,["mutez"],["contract"]);return u(e[0],e[2].args[0]),[y({prim:"operation"}),...t.slice(3)]}case"SET_DELEGATE":{const n=o(0,["option"])[0];if("key_hash"!==Lo(n.args[0]))throw new Ro(e,t,`${e.prim}: key hash expected: ${Lo(n.args[0])}`);return[y({prim:"operation"}),...t.slice(1)]}case"IMPLICIT_ACCOUNT":return o(0,["key_hash"]),[y({prim:"contract",args:[{prim:"unit"}]}),...t.slice(1)];case"NOW":return[y({prim:"timestamp"},"@now"),...t];case"AMOUNT":return[y({prim:"mutez"},"@amount"),...t];case"BALANCE":return[y({prim:"mutez"},"@balance"),...t];case"CHECK_SIGNATURE":return o(0,["key"],["signature"],["bytes"]),[y({prim:"bool"}),...t.slice(3)];case"BLAKE2B":case"SHA256":case"SHA512":case"KECCAK":case"SHA3":return o(0,["bytes"]),[y({prim:"bytes"}),...t.slice(1)];case"HASH_KEY":return o(0,["key"]),[y({prim:"key_hash"}),...t.slice(1)];case"SOURCE":return[y({prim:"address"},"@source"),...t];case"SENDER":return[y({prim:"address"},"@sender"),...t];case"ADDRESS":{const e=o(0,["contract"])[0],n=h({v:1});return[g({prim:"address",[Lr]:e},{v:n.v?n.v:T(c(e),"address")}),...t.slice(1)]}case"SELF_ADDRESS":{const e={prim:"address"};return void 0!==(null==n?void 0:n.contract)&&(e[Lr]={prim:"contract",args:[Jo(n.contract,"parameter").args[0]]}),[y(e,"@address"),...t]}case"CHAIN_ID":return[y({prim:"chain_id"}),...t];case"DROP":{h({});const n=void 0!==e.args?parseInt(e.args[0].int,10):1;return o(n-1,null),t.slice(n)}case"DIG":{h({});const n=parseInt(e.args[0].int,10);return[o(n,null)[0],...t.slice(0,n),...t.slice(n+1)]}case"DUG":{h({});const n=parseInt(e.args[0].int,10);return[...t.slice(1,n+1),o(0,null)[0],...t.slice(n+1)]}case"NONE":return Bo(e.args[0]),[g({prim:"option",args:[e.args[0]]},h({t:1,v:1})),...t];case"LEFT":case"RIGHT":{const n=o(0,null)[0],r=h({f:2,t:1,v:1},{specialFields:!0}),i=c(n),s=[g(n,{t:null,v:null,f:r.f&&r.f.length>0&&"%"!==r.f[0]?"%@"===r.f[0]?i.v?["%"+i.v[0].slice(1)]:void 0:r.f:void 0}),g(e.args[0],{t:null,f:r.f&&r.f.length>1&&"%"!==r.f[1]?r.f:void 0})];return[g({prim:"or",args:"LEFT"===e.prim?s:[s[1],s[0]]},{t:r.t,v:r.v}),...t.slice(1)]}case"NIL":return Bo(e.args[0]),[g({prim:"list",args:[e.args[0]]},h({t:1,v:1})),...t];case"UNPACK":return o(0,["bytes"]),Bo(e.args[0]),[y({prim:"option",args:[e.args[0]]},"@unpacked"),...t.slice(1)];case"CONTRACT":{const n=o(0,["address"])[0];Bo(e.args[0]);const r=h({v:1,f:1}),i=n[Lr];if(void 0!==i){const n=Ho(i,null===(a=r.f)||void 0===a?void 0:a[0]);if(null===n)throw new Ro(e,t,`${e.prim}: contract has no entrypoint ${n}`);u(n,e.args[0])}return[g({prim:"option",args:[{prim:"contract",args:[e.args[0]]}]},{v:r.v?r.v:T(c(n),"contract")}),...t.slice(1)]}case"CAST":{h({});const n=o(0,null)[0];return Bo(e.args[0]),u(e.args[0],n),[e.args[0],...t.slice(1)]}case"IF_NONE":{h({});const r=o(0,["option"])[0],i=t.slice(1);return w(Ko(e.args[0],i,n),Ko(e.args[1],[g(r.args[0],{t:null,v:T(c(r),"some")}),...i],n))}case"IF_LEFT":{h({});const r=o(0,["or"])[0],i=c(r),s=c(r.args[0]),a=c(r.args[1]),l=t.slice(1);return w(Ko(e.args[0],[g(r.args[0],{t:null,v:T(i,s.f?s.f[0].slice(1):"left")}),...l],n),Ko(e.args[1],[g(r.args[1],{t:null,v:T(i,a.f?a.f[0].slice(1):"right")}),...l],n))}case"IF_CONS":{h({});const r=o(0,["list"])[0],i=c(r),s=t.slice(1);return w(Ko(e.args[0],[g(r.args[0],{t:null,v:T(i,"hd")}),g(r,{t:null,v:T(i,"tl")}),...s],n),Ko(e.args[1],s,n))}case"IF":{h({}),o(0,["bool"]);const r=t.slice(1);return w(Ko(e.args[0],r,n),Ko(e.args[1],r,n))}case"MAP":{const r=o(0,["list","map","option"])[0],i=t.slice(1),s="map"===r.prim?{prim:"pair",args:r.args}:r.args[0],a=Ko(e.args[0],[g(s,{t:null,v:T(c(r),"elt")}),...i],n);if("failed"in a){if(!("prim"in a.failed)||"never"!==a.failed.prim)throw new Ro(e,t,`${e.prim}: FAIL is not allowed in MAP`);return{failed:a.failed,level:a.level+1}}if(a.length<1)throw new Ro(e,t,`${e.prim}: function must return a value`);return l(a.slice(1),i),"list"===r.prim?[y({prim:"list",args:[a[0]]}),...i]:"map"===r.prim?[y({prim:"map",args:[r.args[0],a[0]]}),...i]:[y({prim:"option",args:[a[0]]}),...i]}case"ITER":{h({});const r=o(0,["set","list","map"])[0],i=t.slice(1),s="map"===r.prim?{prim:"pair",args:r.args}:r.args[0],a=Ko(e.args[0],[g(s,{t:null,v:T(c(r),"elt")}),...i],n);return"failed"in a?{failed:a.failed,level:a.level+1}:(l(a,i),i)}case"LOOP":{h({}),o(0,["bool"]);const r=t.slice(1),i=Ko(e.args[0],r,n);return"failed"in i?{failed:i.failed,level:i.level+1}:(l(i,[{prim:"bool"},...r]),r)}case"LOOP_LEFT":{h({});const r=o(0,["or"])[0],i=t.slice(1),s=Ko(e.args[0],[g(r.args[0],{t:null,v:T(c(r),"left")}),...i],n);return"failed"in s?{failed:s.failed,level:s.level+1}:(l(s,[r,...i]),[g(r.args[1],{t:null,v:h({v:1}).v}),...i])}case"DIP":{h({});const r=2===e.args.length?parseInt(e.args[0].int,10):1;o(r-1,null);const i=t.slice(0,r),s=t.slice(r),a=2===e.args.length?Ko(e.args[1],s,n):Ko(e.args[0],s,n);return"failed"in a?{failed:a.failed,level:a.level+1}:[...i,...a]}case"CREATE_CONTRACT":{const n=h({v:2}),r=o(0,["option"],["mutez"],null);if("key_hash"!==Lo(r[0].args[0]))throw new Ro(e,t,`${e.prim}: key hash expected: ${Lo(r[0].args[0])}`);p(r[2])&&(Qo(e.args[0]),zo(Jo(e.args[0],"storage").args[0],r[2]));const i=null===(k=n.v)||void 0===k?void 0:k.map((e=>"@"!==e?[e]:void 0));return[g({prim:"operation"},{v:null==i?void 0:i[0]}),g({prim:"address",[Lr]:{prim:"contract",args:[Jo(e.args[0],"parameter").args[0]]}},{v:null==i?void 0:i[1]}),...t.slice(3)]}case"PUSH":return Bo(e.args[0]),Vo(e.args[1],e.args[0],Object.assign(Object.assign({},n),{contract:void 0})),[y(e.args[0]),...t];case"EMPTY_SET":return Bo(e.args[0]),d(e.args[0]),[g({prim:"set",args:e.args},h({t:1,v:1})),...t];case"EMPTY_MAP":return Bo(e.args[0]),d(e.args[0]),Bo(e.args[1]),[g({prim:"map",args:e.args},h({t:1,v:1})),...t];case"EMPTY_BIG_MAP":return Bo(e.args[0]),d(e.args[0]),Bo(e.args[1]),m(e.args[0]),[g({prim:"big_map",args:e.args},h({t:1,v:1})),...t];case"LAMBDA_REC":case"LAMBDA":{Bo(e.args[0]),Bo(e.args[1]);const r=[e.args[0]];"LAMBDA_REC"===e.prim&&r.push({prim:"lambda",args:[e.args[0],e.args[1]]});const i=Ko(e.args[2],r,Object.assign(Object.assign({},n),{contract:void 0}));if("failed"in i)return{failed:i.failed,level:i.level+1};if(1!==i.length)throw new Ro(e,t,`${e.prim}: function must return a value`);return u(e.args[1],i[0]),[y({prim:"lambda",args:[e.args[0],e.args[1]]}),...t]}case"LEVEL":return[y({prim:"nat"},"@level"),...t];case"TOTAL_VOTING_POWER":case"MIN_BLOCK_TIME":return[y({prim:"nat"}),...t];case"VOTING_POWER":return o(0,["key_hash"]),[y({prim:"nat"}),...t.slice(1)];case"TICKET":{const e=o(0,null,["nat"])[0];return d(e),Br(r,jr.PtLimaPtL)?[g({prim:"ticket",args:[e]},h({t:1,v:1})),...t.slice(2)]:[y({prim:"option",args:[g({prim:"ticket",args:[e]},h({t:1,v:1}))]}),...t.slice(2)]}case"JOIN_TICKETS":{const n=Oi("pair",o(0,["pair"])[0]);if("ticket"!==Lo(n.args[0]))throw new Ro(e,t,`${e.prim}: ticket expected: ${Lo(n.args[0])}`);return u(n.args[0],n.args[1]),[y({prim:"option",args:[g(n.args[0],{t:null})]}),...t.slice(1)]}case"SPLIT_TICKET":{const n=o(0,["ticket"],["pair"]),r=Oi("pair",n[1]);if("nat"!==Lo(r.args[0]))throw new Ro(e,t,`${e.prim}: nat expected: ${Lo(r.args[0])}`);return u(r.args[0],r.args[1]),[y({prim:"option",args:[{prim:"pair",args:[g(n[0],{t:null}),g(n[0],{t:null})]}]}),...t.slice(2)]}case"READ_TICKET":{const e=h({v:2}),n=o(0,["ticket"])[0],r=null===(E=e.v)||void 0===E?void 0:E.map((e=>"@"!==e?[e]:void 0));return[g({prim:"pair",args:[{prim:"address"},g(n.args[0],{t:null}),{prim:"nat"}]},{v:null==r?void 0:r[0]}),g(n,{v:null==r?void 0:r[1],t:null}),...t.slice(1)]}case"PAIRING_CHECK":{const n=o(0,["list"])[0].args[0];if(!Fi(n))throw new Ro(e,t,`${e.prim}: pair expected: ${Lo(n)}`);const r=Oi("pair",n);if("bls12_381_g1"!==Lo(r.args[0]))throw new Ro(e,t,`${e.prim}: bls12_381_g1 expected: ${Lo(r.args[0])}`);if("bls12_381_g2"!==Lo(r.args[1]))throw new Ro(e,t,`${e.prim}: bls12_381_g2 expected: ${Lo(r.args[1])}`);return[y({prim:"bool"}),...t.slice(1)]}case"SAPLING_EMPTY_STATE":return[g({prim:"sapling_state",args:[e.args[0]]},h({v:1,t:1})),...t];case"SAPLING_VERIFY_UPDATE":{const n=o(0,["sapling_transaction"],["sapling_state"]);if(parseInt(n[0].args[0].int,10)!==parseInt(n[1].args[0].int,10))throw new Ro(e,t,`${e.prim}: sapling memo size mismatch: ${n[0].args[0].int} != ${n[1].args[0].int}`);return Br(r,jr.PtJakarta)?[y({prim:"option",args:[{prim:"pair",args:[{prim:"int"},g(n[1],{t:null})]}]}),...t.slice(2)]:[y({prim:"option",args:[{prim:"pair",args:[{prim:"bytes"},{prim:"pair",args:[{prim:"int"},g(n[1],{t:null})]}]}]}),...t.slice(2)]}case"OPEN_CHEST":return o(0,["chest_key"],["chest"],["nat"]),[y({prim:"or",args:[{prim:"bytes"},{prim:"bool"}]}),...t.slice(3)];case"VIEW":{const n=o(0,null,["address"]);return f(n[0]),[y({prim:"option",args:[e.args[1]]}),...t.slice(2)]}case"EMIT":{const n=h({f:1,t:1});if(e.args){const r=o(0,null);return u(r[0],e.args[0]),[g({prim:"operation"},n),...t.slice(1)]}return[g({prim:"operation"},n),...t.slice(1)]}default:throw new wi(e,`unexpected instruction: ${e.prim}`)}})(i);if(void 0!==(null==n?void 0:n.traceCallback)){const e={op:i,in:t,out:k};n.traceCallback(e)}return k}function Jo(e,t){for(const n of e)if(n.prim===t)return n;throw new wi(e,`missing contract section: ${t}`)}function Wo(e){if(Array.isArray(e))for(const t of e)if("prim"in t&&("parameter"===t.prim||"storage"===t.prim||"code"===t.prim))return!0;return!1}function Ho(e,t){t=t||"%default";const n=Go(e).find((e=>e[0]===t));return void 0!==n?n[1]:"%default"===t?Wo(e)?Jo(e,"parameter").args[0]:e:null}function Go(e){if(Wo(e)){const t=Jo(e,"parameter"),n=Go(t.args[0]),r=Di(t);return r.f?[[r.f[0],t.args[0]],...n]:n}if(t=e,Array.isArray(t)||"or"===t.prim){const t=jo(e),n=e=>{const n=Di(t[e]);if("or"===Lo(t[e])){const r=Go(t[e]);return n.f?[[n.f[0],t[e]],...r]:r}return n.f?[[n.f[0],t[e]]]:[]};return[...n(0),...n(1)]}var t;return[]}function Qo(e,t){const n=(n,r,i,o)=>{Bo(n,!0),Bo(r);const s=Ko(o,[{prim:"pair",args:[Object.assign(Object.assign({},n),{annots:["@parameter"]}),Object.assign(Object.assign({},r),{annots:["@storage"]})]}],Object.assign(Object.assign({},t),{contract:e}));if("failed"in s)return s;try{Uo(s,[i])}catch(a){throw a instanceof wi?new Ro(o,s,a.message):a}return s},r=Jo(e,"parameter").args[0],i=Jo(e,"storage").args[0],o=n(r,i,{prim:"pair",args:[{prim:"list",args:[{prim:"operation"}]},i]},Jo(e,"code").args[0]);for(const s of Object.values(function(e){const t={};for(const n of e)"view"===n.prim&&(t[n.args[0].string]=n);return t}(e)))n(s.args[1],i,s.args[2],s.args[3]);return o}function Yo(e,t,n){Bo(t),Vo(e,t,n||null)}function Zo(e,t,n=!1){if(Array.isArray(e)){for(const t of e)Bo(t);for(const e of t)Bo(e)}else Bo(e),Bo(t);zo(e,t,n)}class Xo{constructor(e,t){this.contract=e,this.ctx=Object.assign({contract:e},t),this.output=Qo(e,this.ctx)}static parse(e,t){const n=new ui(t),r="string"==typeof e?n.parseScript(e):n.parseJSON(e);if(null===r)throw new yi("empty Michelson");if(po(r))return new Xo(r,t)}static parseTypeExpression(e,t){const n=new ui(t),r="string"==typeof e?n.parseScript(e):n.parseJSON(e);if(null===r)throw new vi("empty type expression");if(lo(r))return Bo(r),r}static parseDataExpression(e,t){const n=new ui(t),r="string"==typeof e?n.parseScript(e):n.parseJSON(e);if(null===r)throw new bi("empty data expression");if(_o(r))return r;throw void 0}section(e){return Jo(this.contract,e)}entryPoints(){return Go(this.contract)}entryPoint(e){return Ho(this.contract,e)}assertDataValid(e,t){Yo(e,t,this.ctx)}isDataValid(e,t){return function(e,t,n){try{return Yo(e,t,n),!0}catch(u){return!1}}(e,t,this.ctx)}assertParameterValid(e,t){const n=this.entryPoint(e||void 0);if(null===n)throw new xi(null==e?void 0:e.toString());this.assertDataValid(t,n)}isParameterValid(e,t){try{return this.assertParameterValid(e,t),!0}catch(u){return!1}}functionType(e,t){return function(e,t,n){for(const r of t)Bo(r);if(void 0!==(null==n?void 0:n.contract))for(const r of["parameter","storage"])Bo(Jo(n.contract,r).args[0]);return Ko(e,t,n||null)}(e,t,this.ctx)}}new Xo([{prim:"parameter",args:[{prim:"unit"}]},{prim:"storage",args:[{prim:"unit"}]},{prim:"code",args:[[{prim:"CAR"},{prim:"NIL",args:[{prim:"operation"}]},{prim:"PAIR"}]]}]);var $o=n(48287).Buffer;const es=e=>e.reduce(((e,t)=>e+t.toString(16).padStart(2,"0")),""),ts=(e,t=8)=>e.toString(16).padStart(t,"0");var ns;!function(e){e.SECRET="secret",e.RAW="raw",e.TZ1="tz1",e.BRANCH="branch",e.ZARITH="zarith",e.PUBLIC_KEY="public_key",e.PKH="pkh",e.PKH_ARR="pkhArr",e.DELEGATE="delegate",e.SCRIPT="script",e.BALLOT_STATEMENT="ballotStmt",e.PROPOSAL="proposal",e.PROPOSAL_ARR="proposalArr",e.INT32="int32",e.INT16="int16",e.PARAMETERS="parameters",e.ADDRESS="address",e.SMART_CONTRACT_ADDRESS="smart_contract_address",e.SMART_ROLLUP_ADDRESS="smart_rollup_address",e.SMART_ROLLUP_COMMITMENT_HASH="smart_rollup_commitment_hash",e.VALUE="value",e.PADDED_BYTES="padded_bytes",e.SMART_ROLLUP_MESSAGE="smart_rollup_message",e.MANAGER="manager",e.BLOCK_PAYLOAD_HASH="blockPayloadHash",e.ENTRYPOINT="entrypoint",e.OPERATION="operation",e.OP_ACTIVATE_ACCOUNT="activate_account",e.OP_DELEGATION="delegation",e.OP_TRANSACTION="transaction",e.OP_ORIGINATION="origination",e.OP_BALLOT="ballot",e.OP_FAILING_NOOP="failing_noop",e.OP_ATTESTATION="attestation",e.OP_ATTESTATION_WITH_DAL="attestation_with_dal",e.OP_SEED_NONCE_REVELATION="seed_nonce_revelation",e.OP_REVEAL="reveal",e.OP_PROPOSALS="proposals",e.OP_REGISTER_GLOBAL_CONSTANT="register_global_constant",e.OP_TRANSFER_TICKET="transfer_ticket",e.BURN_LIMIT="burn_limit",e.OP_INCREASE_PAID_STORAGE="increase_paid_storage",e.OP_UPDATE_CONSENSUS_KEY="update_consensus_key",e.OP_DRAIN_DELEGATE="drain_delegate",e.DEPOSITS_LIMIT="deposits_limit",e.OP_SET_DEPOSITS_LIMIT="set_deposits_limit",e.OP_SMART_ROLLUP_ORIGINATE="smart_rollup_originate",e.PVM_KIND="pvm_kind",e.OP_SMART_ROLLUP_ADD_MESSAGES="smart_rollup_add_messages",e.OP_SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE="smart_rollup_execute_outbox_message",e.OP_DAL_PUBLISH_COMMITMENT="dal_publish_commitment",e.SLOT_HEADER="slot_header"}(ns||(ns={}));const rs={"00":"parameter","01":"storage","02":"code","03":"False","04":"Elt","05":"Left","06":"None","07":"Pair","08":"Right","09":"Some","0a":"True","0b":"Unit","0c":"PACK","0d":"UNPACK","0e":"BLAKE2B","0f":"SHA256",10:"SHA512",11:"ABS",12:"ADD",13:"AMOUNT",14:"AND",15:"BALANCE",16:"CAR",17:"CDR",18:"CHECK_SIGNATURE",19:"COMPARE","1a":"CONCAT","1b":"CONS","1c":"CREATE_ACCOUNT","1d":"CREATE_CONTRACT","1e":"IMPLICIT_ACCOUNT","1f":"DIP",20:"DROP",21:"DUP",22:"EDIV",23:"EMPTY_MAP",24:"EMPTY_SET",25:"EQ",26:"EXEC",27:"FAILWITH",28:"GE",29:"GET","2a":"GT","2b":"HASH_KEY","2c":"IF","2d":"IF_CONS","2e":"IF_LEFT","2f":"IF_NONE",30:"INT",31:"LAMBDA",32:"LE",33:"LEFT",34:"LOOP",35:"LSL",36:"LSR",37:"LT",38:"MAP",39:"MEM","3a":"MUL","3b":"NEG","3c":"NEQ","3d":"NIL","3e":"NONE","3f":"NOT",40:"NOW",41:"OR",42:"PAIR",43:"PUSH",44:"RIGHT",45:"SIZE",46:"SOME",47:"SOURCE",48:"SENDER",49:"SELF","4a":"STEPS_TO_QUOTA","4b":"SUB","4c":"SWAP","4d":"TRANSFER_TOKENS","4e":"SET_DELEGATE","4f":"UNIT",50:"UPDATE",51:"XOR",52:"ITER",53:"LOOP_LEFT",54:"ADDRESS",55:"CONTRACT",56:"ISNAT",57:"CAST",58:"RENAME",59:"bool","5a":"contract","5b":"int","5c":"key","5d":"key_hash","5e":"lambda","5f":"list",60:"map",61:"big_map",62:"nat",63:"option",64:"or",65:"pair",66:"set",67:"signature",68:"string",69:"bytes","6a":"mutez","6b":"timestamp","6c":"unit","6d":"operation","6e":"address","6f":"SLICE",70:"DIG",71:"DUG",72:"EMPTY_BIG_MAP",73:"APPLY",74:"chain_id",75:"CHAIN_ID",76:"LEVEL",77:"SELF_ADDRESS",78:"never",79:"NEVER","7a":"UNPAIR","7b":"VOTING_POWER","7c":"TOTAL_VOTING_POWER","7d":"KECCAK","7e":"SHA3","7f":"PAIRING_CHECK",80:"bls12_381_g1",81:"bls12_381_g2",82:"bls12_381_fr",83:"sapling_state",84:"sapling_transaction_deprecated",85:"SAPLING_EMPTY_STATE",86:"SAPLING_VERIFY_UPDATE",87:"ticket",88:"TICKET_DEPRECATED",89:"READ_TICKET","8a":"SPLIT_TICKET","8b":"JOIN_TICKETS","8c":"GET_AND_UPDATE","8d":"chest","8e":"chest_key","8f":"OPEN_CHEST",90:"VIEW",91:"view",92:"constant",93:"SUB_MUTEZ",94:"tx_rollup_l2_address",95:"MIN_BLOCK_TIME",96:"sapling_transaction",97:"EMIT",98:"Lambda_rec",99:"LAMBDA_REC","9a":"TICKET","9b":"BYTES","9c":"NAT","9d":"Ticket"},is=(()=>{const e={};return Object.keys(rs).forEach((t=>{e[rs[t]]=t})),e})(),os={4:"activate_account",107:"reveal",110:"delegation",108:"transaction",109:"origination",6:"ballot",21:"attestation",23:"attestation_with_dal",1:"seed_nonce_revelation",5:"proposals",111:"register_global_constant",158:"transfer_ticket",112:"set_deposits_limit",113:"increase_paid_storage",114:"update_consensus_key",9:"drain_delegate",200:"smart_rollup_originate",201:"smart_rollup_add_messages",206:"smart_rollup_execute_outbox_message",230:"dal_publish_commitment",17:"failing_noop"},ss=(()=>{const e={};return Object.keys(os).forEach((t=>{const n="string"==typeof t?parseInt(t,10):t;e[os[n]]=ts(n,2)})),e})(),as={"00":"default","01":"root","02":"do","03":"set_delegate","04":"remove_delegate","05":"deposit","06":"stake","07":"unstake","08":"finalize_unstake","09":"set_delegate_parameters"},cs=(()=>{const e={};return Object.keys(as).forEach((t=>{e[as[t]]=t})),e})();class ls extends i.Xi{constructor(e,t){super(),this.operation=e,this.errorDetail=t,this.name="InvalidOperationSchemaError",this.message="Invalid operation content recevied",t&&(this.message+=` ${t}.`)}}class us extends i.Xi{constructor(e){super(),this.entrypoint=e,this.name="OversizedEntryPointError",this.message=`Invalid entrypoint length "${e.length}", maximum length is "31".`}}class ds extends i.Xi{constructor(e){super(),this.ballotValue=e,this.name="InvalidBallotValueError",this.message=`Invalid ballot value "${e}" expecting one of the following: "yay", "nay", "pass".`}}class _s extends i.Xi{constructor(e){super(),this.ballotValue=e,this.name="DecodeBallotValueError",this.message=`Invalid ballot value "${e}", cannot be decoded.`}}class ps extends i.Xi{constructor(e){super(),this.value=e,this.name="UnexpectedMichelsonValueError",this.message=`Invalid Michelson value "${e}", unalbe to encode.`}}class fs extends i.Xi{constructor(e){super(),this.message=e,this.name="OperationDecodingError"}}class ms extends i.Xi{constructor(e){super(),this.message=e,this.name="OperationEncodingError"}}class hs extends i.Xi{constructor(e){super(),this.op=e,this.name="UnsupportedOperationError",this.message=`Unsupported operation "${e}", can submit an issue on our github for feature request.`}}class gs extends i.Xi{constructor(e){super(),this.pvm=e,this.name="UnsupportedPvmKindError",this.message=`Invalid Pvm kind "${e}" expecting either "arith" or "wasm_2_0_0".`}}class ys extends i.Xi{constructor(e){super(),this.pvm=e,this.name="DecodePvmKindError",this.message=`Invalid Pvm kind "${e}", cannot be decoded.`}}class vs extends i.Xi{constructor(e,t){super(),this.address=e,this.errorDetail=t,this.name="InvalidSmartRollupAddress",this.message=`Invalid smart rollup address "${e}"`,t&&(this.message+=` ${t}.`)}}class bs extends i.Xi{constructor(e,t){super(),this.hash=e,this.errorDetail=t,this.name="InvalidSmartRollupCommitmentHashError",this.message=`Invalid smart rollup commitment hash "${e}"`,t&&(this.message+=` ${t}.`)}}class xs extends i.Xi{constructor(e,t){super(),this.commitment=e,this.errorDetail=t,this.name="InvalidDalCommitmentError",this.message=`Invalid dal commitment "${e}"`,t&&(this.message+=` ${t}.`)}}class Ss{static fromHexString(e){const t=e.toLowerCase();if(/^(([a-f]|\d){2})*$/.test(t)){const e=new Uint8Array((t.match(/([a-z]|\d){2}/g)||[]).map((e=>parseInt(e,16))));return new Ss(e)}throw new i.Sj(t)}constructor(e,t=0){this.arr=e,this.offset=t}consume(e){const t=this.arr.subarray(this.offset,this.offset+e);return this.offset+=e,t}get(e){return this.arr[this.offset+e]}length(){return this.arr.length-this.offset}slice(e,t){return new Ss(this.arr.slice(e,t))}}const Ts=e=>{if(Array.isArray(e)){const t=e.map((e=>Ts(e))).join(""),n=t.length/2;return`02${ts(n)}${t}`}if((e=>"prim"in e)(e))return Ps(e);if((e=>"bytes"in e&&"string"==typeof e.bytes)(e))return Es(e);if((e=>"string"in e&&"string"==typeof e.string)(e))return Ns(e);if((e=>"int"in e&&"string"==typeof e.int)(e))return Is(e);throw new ps(JSON.stringify(e))},ws=e=>{const t=e.consume(1);switch(t[0]){case 10:return Cs(e);case 1:return As(e);case 0:return Ds(e);case 2:{const t=new Ss(ks(e)),n=[];for(;t.length()>0;)n.push(ws(t));return n}default:return Ms(e,t)}},ks=(e,t=4)=>{const n=e.consume(t),r=parseInt($o.from(n).toString("hex"),16);return e.consume(r)},Es=e=>{if(!/^([A-Fa-f0-9]{2})*$/.test(e.bytes))throw new i.Sj(e.bytes);const t=e.bytes.length/2;return`0a${ts(t)}${e.bytes}`},Cs=e=>{const t=ks(e);return{bytes:$o.from(t).toString("hex")}},Ns=e=>{const t=$o.from(e.string,"utf8").toString("hex"),n=t.length/2;return`01${ts(n)}${t}`},As=e=>{const t=ks(e);return{string:$o.from(t).toString("utf8")}},Is=({int:e})=>{const t=new p.g(e,10),n="-"===t.toString(2)[0]?"1":"0",r=t.toString(2).replace(/-/g,""),i=r.length<=6?6:(r.length-6)%7?r.length+7-(r.length-6)%7:r.length,o=r.padStart(i,"0").match(/\d{6,7}/g).reverse();o[0]=n+o[0];return`00${o.map(((e,t)=>parseInt((t===o.length-1?"0":"1")+e,2).toString(16).padStart(2,"0"))).join("")}`},Ds=e=>{let t=e.consume(1)[0];const n=[];for(;128&t;)n.push(t),t=e.consume(1)[0];n.push(t);const r=!!(64&n[0]);n[0]=127&n[0];const i=n.map(((e,t)=>e.toString(2).slice(0===t?-6:-7).padStart(0===t?6:7,"0"))).reverse();let o=new p.g(i.join(""),2);return r&&(o=o.times(-1)),{int:o.toFixed()}},Ps=e=>{const t=+Array.isArray(e.annots),n=Array.isArray(e.args)?e.args.length:0,r=ts(Math.min(2*n+t+3,9),2),i=is[e.prim];let o=(e.args||[]).map((e=>Ts(e))).join("");const s=Array.isArray(e.annots)?Rs(e.annots):"";return"LAMBDA"!==e.prim&&"LAMBDA_REC"!==e.prim||!n||(o=ts(o.length/2)+o+ts(0)),("pair"===e.prim||"Pair"===e.prim)&&n>2&&(o=""===s?ts(o.length/2)+o+ts(0):ts(o.length/2)+o),"view"===e.prim&&e.args&&(o=ts(o.length/2)+o+ts(0)),`${r}${i}${o}${s}`},Ms=(e,t)=>{const n=(t[0]-3)%2==1;let r=Math.floor((t[0]-3)/2);const i=e.consume(1)[0].toString(16).padStart(2,"0"),o={prim:rs[i]};if("LAMBDA"!==rs[i]&&"LAMBDA_REC"!==rs[i]||e.consume(4),"view"===rs[i])return 0!=r?Os(e,o):o;let s,a;("pair"===rs[i]||"Pair"===rs[i])&&r>2&&(s=Fs(e),r=0,a=Ls(e));const c=new Array(r).fill(0).map((()=>ws(e)));return"LAMBDA"!==rs[i]&&"LAMBDA_REC"!==rs[i]||e.consume(4),s?o.args=s:c.length&&(o.args=c),a&&""!==a[0]?o.annots=a:n&&(o.annots=Ls(e)),o},Os=(e,t)=>(e.consume(4),t.args=new Array(4).fill(0).map((()=>ws(e))),e.consume(4),t),Fs=e=>{const t=new Ss(ks(e)),n=[];for(;t.length()>0;)n.push(ws(t));return n},Rs=e=>{const t=e.map((e=>$o.from(e,"utf8").toString("hex"))).join("20"),n=t.length/2;return`${ts(n)}${t}`},Ls=e=>{const t=e.consume(4),n=parseInt($o.from(t).toString("hex"),16),r=e.consume(n);return $o.from(r).toString("hex").split("20").map((e=>$o.from(e,"hex").toString("utf8")))},js=e=>t=>(0,f.hi)($o.from((0,f.FN)(t,f.Pl[e]))),zs=e=>t=>{const n=t.consume(f.BK[e]);return(0,f.fI)(n,f.Pl[e])},Us=zs(f.b3.TZ1),Bs=zs(f.b3.B),qs=e=>{const t=e.consume(1);return 0===t[0]?zs(f.b3.TZ1)(e):1===t[0]?zs(f.b3.TZ2)(e):2===t[0]?zs(f.b3.TZ3)(e):void 0},Vs=js(f.b3.B),Ks=js(f.b3.TZ1),Js=e=>e?"ff":"00",Ws=e=>js(f.b3.P)(e),Hs=e=>zs(f.b3.P)(e),Gs=e=>255===e.consume(1)[0],Qs=e=>{switch(e.substring(0,3)){case f.b3.TZ1:return"00"+js(f.b3.TZ1)(e);case f.b3.TZ2:return"01"+js(f.b3.TZ2)(e);case f.b3.TZ3:return"02"+js(f.b3.TZ3)(e);case f.b3.TZ4:return"03"+js(f.b3.TZ4)(e);default:throw new f.$u(e,(0,f.Z)(f.nA.NO_PREFIX_MATCHED)+` expecting one for the following "${f.b3.TZ1}", "${f.b3.TZ2}", "${f.b3.TZ3}" or "${f.b3.TZ4}".`)}},Ys=e=>{const t=[];let n=new p.A(e,10);if(n.isNaN())throw new TypeError(`Invalid zarith number ${e}`);for(;;){if(n.lt(128)){n.lt(16)&&t.push("0"),t.push(n.toString(16));break}{let e=n.mod(128);n=n.minus(e),n=n.dividedBy(128),e=e.plus(128),t.push(e.toString(16))}}return t.join("")},Zs=e=>{let t=0;for(;t<e.length()&&128&e.get(t);)t+=1;let n=new p.A(0);for(let r=t;r>=0;r-=1){const t=127&e.get(r);n=n.multipliedBy(128),n=n.plus(t)}return e.consume(t+1),new p.A(n).toString()},Xs=js(f.b3.VH),$s=zs(f.b3.VH),ea=e=>{const t=zs(f.b3.SH)(e);if(t.substring(0,2)!==f.b3.SH)throw new xs(t,(0,f.Z)(f.nA.NO_PREFIX_MATCHED)+` expecting prefix '${f.b3.SH}'`);return t},ta={branch:ns.BRANCH,contents:[ns.OPERATION]},na={pkh:ns.TZ1,secret:ns.SECRET},ra={source:ns.PKH,fee:ns.ZARITH,counter:ns.ZARITH,gas_limit:ns.ZARITH,storage_limit:ns.ZARITH,public_key:ns.PUBLIC_KEY},ia={source:ns.PKH,fee:ns.ZARITH,counter:ns.ZARITH,gas_limit:ns.ZARITH,storage_limit:ns.ZARITH,delegate:ns.DELEGATE},oa={source:ns.PKH,fee:ns.ZARITH,counter:ns.ZARITH,gas_limit:ns.ZARITH,storage_limit:ns.ZARITH,amount:ns.ZARITH,destination:ns.ADDRESS,parameters:ns.PARAMETERS},sa={source:ns.PKH,fee:ns.ZARITH,counter:ns.ZARITH,gas_limit:ns.ZARITH,storage_limit:ns.ZARITH,balance:ns.ZARITH,delegate:ns.DELEGATE,script:ns.SCRIPT},aa={source:ns.PKH,period:ns.INT32,proposal:ns.PROPOSAL,ballot:ns.BALLOT_STATEMENT},ca={slot:ns.INT16,level:ns.INT32,round:ns.INT32,block_payload_hash:ns.BLOCK_PAYLOAD_HASH},la={slot:ns.INT16,level:ns.INT32,round:ns.INT32,block_payload_hash:ns.BLOCK_PAYLOAD_HASH,dal_attestation:ns.ZARITH},ua={level:ns.INT32,nonce:ns.RAW},da={source:ns.PKH,period:ns.INT32,proposals:ns.PROPOSAL_ARR},_a={source:ns.PKH,fee:ns.ZARITH,counter:ns.ZARITH,gas_limit:ns.ZARITH,storage_limit:ns.ZARITH,value:ns.VALUE},pa={source:ns.PKH,fee:ns.ZARITH,counter:ns.ZARITH,gas_limit:ns.ZARITH,storage_limit:ns.ZARITH,ticket_contents:ns.VALUE,ticket_ty:ns.VALUE,ticket_ticketer:ns.ADDRESS,ticket_amount:ns.ZARITH,destination:ns.ADDRESS,entrypoint:ns.ENTRYPOINT},fa={source:ns.PKH,fee:ns.ZARITH,counter:ns.ZARITH,gas_limit:ns.ZARITH,storage_limit:ns.ZARITH,amount:ns.ZARITH,destination:ns.SMART_CONTRACT_ADDRESS},ma={source:ns.PKH,fee:ns.ZARITH,counter:ns.ZARITH,gas_limit:ns.ZARITH,storage_limit:ns.ZARITH,pk:ns.PUBLIC_KEY},ha={consensus_key:ns.PKH,delegate:ns.PKH,destination:ns.PKH},ga={source:ns.PKH,fee:ns.ZARITH,counter:ns.ZARITH,gas_limit:ns.ZARITH,storage_limit:ns.ZARITH,limit:ns.DEPOSITS_LIMIT},ya={source:ns.PKH,fee:ns.ZARITH,counter:ns.ZARITH,gas_limit:ns.ZARITH,storage_limit:ns.ZARITH,pvm_kind:ns.PVM_KIND,kernel:ns.PADDED_BYTES,parameters_ty:ns.VALUE,whitelist:ns.PKH_ARR},va={source:ns.PKH,fee:ns.ZARITH,counter:ns.ZARITH,gas_limit:ns.ZARITH,storage_limit:ns.ZARITH,message:ns.SMART_ROLLUP_MESSAGE},ba={source:ns.PKH,fee:ns.ZARITH,counter:ns.ZARITH,gas_limit:ns.ZARITH,storage_limit:ns.ZARITH,rollup:ns.SMART_ROLLUP_ADDRESS,cemented_commitment:ns.SMART_ROLLUP_COMMITMENT_HASH,output_proof:ns.PADDED_BYTES},xa={source:ns.PKH,fee:ns.ZARITH,counter:ns.ZARITH,gas_limit:ns.ZARITH,storage_limit:ns.ZARITH,slot_header:ns.SLOT_HEADER},Sa={arbitrary:ns.PADDED_BYTES},Ta=e=>t=>n=>Object.keys(t).reduce(((r,i)=>{const o=t[i];if(n&&Array.isArray(o)){const t=e[o[0]],s=n[i];if(!Array.isArray(s))throw new ms(`Invalid operation value "${JSON.stringify(s)}" of key "${i}, expected value to be Array.`);return r+s.reduce(((e,n)=>e+t(n)),"")}return r+(0,e[o])(n[i])}),""),wa=e=>t=>n=>Object.keys(t).reduce(((r,i)=>{const o=t[i];if(Array.isArray(o)){const t=e[o[0]],s=[],a=n.length();for(;n.length()>0;)if(s.push(t(n)),a===n.length())throw new fs("Unable to decode value");return Object.assign(Object.assign({},r),{[i]:s})}{const t=(0,e[o])(n);return void 0!==t?Object.assign(Object.assign({},r),{[i]:t}):Object.assign({},r)}}),{}),ka={[ns.SECRET]:e=>es(e.consume(20)),[ns.RAW]:e=>es(e.consume(32)),[ns.TZ1]:Us,[ns.BRANCH]:Bs,[ns.ZARITH]:Zs,[ns.PUBLIC_KEY]:e=>{switch(e.consume(1)[0]){case 0:return zs(f.b3.EDPK)(e);case 1:return zs(f.b3.SPPK)(e);case 2:return zs(f.b3.P2PK)(e);default:throw new f.O7(e.toString(),(0,f.Z)(f.nA.NO_PREFIX_MATCHED))}},[ns.PKH]:qs,[ns.PKH_ARR]:e=>{if(!Gs(e))return;const t=[];for(e.consume(4);e.length()>0;)t.push(qs(e));return t},[ns.DELEGATE]:e=>{if(Gs(e))return qs(e)},[ns.INT32]:e=>{const t=e.consume(4);let n=0;for(let r=0;r<t.length;r++)n|=t[r]<<8*(t.length-(r+1));return n},[ns.SCRIPT]:e=>{const t=ks(e),n=ks(e);return{code:ws(new Ss(t)),storage:ws(new Ss(n))}},[ns.BALLOT_STATEMENT]:e=>{const t=e.consume(1);switch(t[0]){case 0:return"yay";case 1:return"nay";case 2:return"pass";default:throw new _s(t[0].toString())}},[ns.PROPOSAL]:Hs,[ns.PROPOSAL_ARR]:e=>{const t=[];for(e.consume(4);e.length()>0;)t.push(Hs(e));return t},[ns.PARAMETERS]:e=>{if(0!==e.consume(1)[0]){const t=(e=>{const t=ts(e.consume(1)[0],2);if(t in as)return as[t];{const t=ks(e,1),n=$o.from(t).toString("utf8");if(n.length>31)throw new us(n);return n}})(e),n=ks(e);return{entrypoint:t,value:ws(new Ss(n))}}},[ns.ADDRESS]:e=>{switch(e.consume(1)[0]){case 0:return qs(e);case 1:{const t=zs(f.b3.KT1)(e);return e.consume(1),t}default:throw new i.Ms(e.toString(),": Unable to decode.")}},[ns.SMART_ROLLUP_ADDRESS]:e=>{const t=zs(f.b3.SR1)(e);if(t.substring(0,3)!==f.b3.SR1)throw new vs(t,(0,f.Z)(f.nA.NO_PREFIX_MATCHED)+` expecting prefix '${f.b3.SR1}'.`);return t},[ns.SMART_CONTRACT_ADDRESS]:e=>{if(1===e.consume(1)[0]){const t=zs(f.b3.KT1)(e);return e.consume(1),t}throw new i.mC(e.toString(),(0,f.Z)(f.nA.NO_PREFIX_MATCHED))},[ns.SMART_ROLLUP_COMMITMENT_HASH]:e=>{const t=zs(f.b3.SRC1)(e);if(t.substring(0,4)!==f.b3.SRC1)throw new bs(t,(0,f.Z)(f.nA.NO_PREFIX_MATCHED)+` expecting prefix '${f.b3.SRC1}'`);return t},[ns.VALUE]:e=>{const t=ks(e);return ws(new Ss(t))},[ns.INT16]:e=>{const t=e.consume(2);let n=0;for(let r=0;r<t.length;r++)n|=t[r]<<8*(t.length-(r+1));return n},[ns.BLOCK_PAYLOAD_HASH]:$s,[ns.ENTRYPOINT]:e=>{const t=ks(e);return $o.from(t).toString("utf8")},[ns.BURN_LIMIT]:e=>{const t=e.consume(1);if("00"!==$o.from(t).toString("hex"))return Zs(e)},[ns.DEPOSITS_LIMIT]:e=>{const t=e.consume(1);if("00"!==$o.from(t).toString("hex"))return Zs(e)},[ns.PVM_KIND]:e=>{const t=e.consume(1);switch(t[0]){case 0:return"arith";case 1:return"wasm_2_0_0";case 2:return"riscv";default:throw new ys(t[0].toString())}},[ns.PADDED_BYTES]:e=>{const t=ks(e);return $o.from(t).toString("hex")},[ns.SMART_ROLLUP_MESSAGE]:e=>{const t=ks(e);return((e,t=4)=>{const n=[];let r=e;for(;r.length();){const e=r.consume(t),i=parseInt($o.from(e).toString("hex"),16);n.push(r.consume(i)),r=r.slice(i+t)}return n})(new Ss(t)).map((e=>$o.from(e).toString("hex")))},[ns.SLOT_HEADER]:e=>{const t=e.consume(1);return{slot_index:Number(t[0].toString(10)),commitment:ea(e),commitment_proof:es(e.consume(96))}}};ka[ns.OPERATION]=(e=>t=>{const n=t.consume(1),r=os[n[0]];if(void 0===r)throw new hs(n[0].toString());const i=e[r](t);if("object"!=typeof i)throw new fs("Invalid operation, cannot be decoded.");return Object.assign({kind:r},i)})(ka),ka[ns.OP_ACTIVATE_ACCOUNT]=e=>wa(ka)(na)(e),ka[ns.OP_FAILING_NOOP]=e=>wa(ka)(Sa)(e),ka[ns.OP_DELEGATION]=e=>wa(ka)(ia)(e),ka[ns.OP_TRANSACTION]=e=>wa(ka)(oa)(e),ka[ns.OP_ORIGINATION]=e=>wa(ka)(sa)(e),ka[ns.OP_BALLOT]=e=>wa(ka)(aa)(e),ka[ns.OP_ATTESTATION]=e=>wa(ka)(ca)(e),ka[ns.OP_ATTESTATION_WITH_DAL]=e=>wa(ka)(la)(e),ka[ns.OP_SEED_NONCE_REVELATION]=e=>wa(ka)(ua)(e),ka[ns.OP_PROPOSALS]=e=>wa(ka)(da)(e),ka[ns.OP_REVEAL]=e=>wa(ka)(ra)(e),ka[ns.OP_REGISTER_GLOBAL_CONSTANT]=e=>wa(ka)(_a)(e),ka[ns.OP_TRANSFER_TICKET]=e=>wa(ka)(pa)(e),ka[ns.OP_INCREASE_PAID_STORAGE]=e=>wa(ka)(fa)(e),ka[ns.OP_UPDATE_CONSENSUS_KEY]=e=>wa(ka)(ma)(e),ka[ns.OP_DRAIN_DELEGATE]=e=>wa(ka)(ha)(e),ka[ns.OP_SMART_ROLLUP_ORIGINATE]=e=>wa(ka)(ya)(e),ka[ns.OP_SMART_ROLLUP_ADD_MESSAGES]=e=>wa(ka)(va)(e),ka[ns.OP_SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE]=e=>wa(ka)(ba)(e),ka[ns.OP_DAL_PUBLISH_COMMITMENT]=e=>wa(ka)(xa)(e),ka[ns.MANAGER]=wa(ka)(ta),ka[ns.OP_SET_DEPOSITS_LIMIT]=e=>wa(ka)(ga)(e);const Ea={[ns.SECRET]:e=>e,[ns.RAW]:e=>e,[ns.TZ1]:Ks,[ns.BRANCH]:Vs,[ns.ZARITH]:Ys,[ns.PUBLIC_KEY]:e=>{switch(e.substring(0,4)){case f.b3.EDPK:return"00"+js(f.b3.EDPK)(e);case f.b3.SPPK:return"01"+js(f.b3.SPPK)(e);case f.b3.P2PK:return"02"+js(f.b3.P2PK)(e);default:throw new f.O7(e,(0,f.Z)(f.nA.NO_PREFIX_MATCHED)+` expecting one of the following '${f.b3.EDPK}', '${f.b3.SPPK}', '${f.b3.P2PK}' or '${f.b3.BLPK}'.`)}},[ns.PKH]:Qs,[ns.PKH_ARR]:e=>{if(!e)return Js(!1);if(0===e.length)return Js(!0)+ts(0);const t=e.reduce(((e,t)=>e+Qs(t)),"");return Js(!0)+ts(t.length/2)+t},[ns.DELEGATE]:e=>e?Js(!0)+Qs(e):Js(!1),[ns.SCRIPT]:e=>{const t=Ts(e.code),n=Ts(e.storage);return`${ts(t.length/2,8)}${t}${ts(n.length/2,8)}${n}`},[ns.BALLOT_STATEMENT]:e=>{switch(e){case"yay":return"00";case"nay":return"01";case"pass":return"02";default:throw new ds(e)}},[ns.PROPOSAL]:Ws,[ns.PROPOSAL_ARR]:e=>ts(32*e.length)+e.map((e=>Ws(e))).join(""),[ns.INT32]:e=>{const t=parseInt(String(e),10),n=[];for(let r=0;r<4;r++){const e=8*(4-(r+1));n.push((t&255<<e)>>e)}return $o.from(n).toString("hex")},[ns.PARAMETERS]:e=>{if(!e||"default"===e.entrypoint&&"prim"in e.value&&"Unit"===e.value.prim)return"00";const t=(e=>{if(e in cs)return`${cs[e]}`;if(e.length>31)throw new us(e);return`ff${Ts({string:e}).slice(8)}`})(e.entrypoint),n=Ts(e.value);return`ff${t}${ts(n.length/2)}${n}`},[ns.ADDRESS]:e=>{switch(e.substring(0,3)){case f.b3.TZ1:case f.b3.TZ2:case f.b3.TZ3:case f.b3.TZ4:return"00"+Qs(e);case f.b3.KT1:return"01"+js(f.b3.KT1)(e)+"00";default:throw new i.Ms(e,(0,f.Z)(f.nA.NO_PREFIX_MATCHED)+` expecting one of the following prefix '${f.b3.TZ1}', ${f.b3.TZ2}', '${f.b3.TZ3}', '${f.b3.TZ4}' or '${f.b3.KT1}'.`)}},[ns.SMART_ROLLUP_ADDRESS]:e=>{if(e.substring(0,3)!==f.b3.SR1)throw new vs(e,(0,f.Z)(f.nA.NO_PREFIX_MATCHED)+` expecting prefix '${f.b3.SR1}'.`);return js(f.b3.SR1)(e)},[ns.SMART_CONTRACT_ADDRESS]:e=>{if(e.substring(0,3)===f.b3.KT1)return"01"+js(f.b3.KT1)(e)+"00";throw new i.mC(e,(0,f.Z)(f.nA.NO_PREFIX_MATCHED)+` expecting prefix '${f.b3.KT1}'.`)},[ns.SMART_ROLLUP_COMMITMENT_HASH]:e=>{if(e.substring(0,4)===f.b3.SRC1)return js(f.b3.SRC1)(e);throw new bs(e,(0,f.Z)(f.nA.NO_PREFIX_MATCHED)+` expecting prefix '${f.b3.SRC1}'`)},[ns.VALUE]:e=>{const t=Ts(e);return`${ts(t.length/2)}${t}`},[ns.INT16]:e=>{const t=parseInt(String(e),10),n=[];for(let r=0;r<2;r++){const e=8*(2-(r+1));n.push((t&255<<e)>>e)}return $o.from(n).toString("hex")},[ns.BLOCK_PAYLOAD_HASH]:Xs,[ns.ENTRYPOINT]:e=>`${Ts({string:e}).slice(2)}`,[ns.BURN_LIMIT]:e=>e?`ff${Ys(e)}`:"00",[ns.DEPOSITS_LIMIT]:e=>e?`ff${Ys(e)}`:"00",[ns.PVM_KIND]:e=>{switch(e){case"arith":return"00";case"wasm_2_0_0":return"01";case"riscv":return"02";default:throw new gs(e)}},[ns.PADDED_BYTES]:(e,t=8)=>`${ts(e.length/2,t)}${e}`,[ns.SMART_ROLLUP_MESSAGE]:e=>{const t=e.reduce(((e,t)=>e+`${ts(t.length/2)}${t}`),"");return`${ts(t.length/2)}${t}`},[ns.SLOT_HEADER]:e=>ts(e.slot_index,2)+(e=>{if(e.substring(0,2)===f.b3.SH)return js(f.b3.SH)(e);throw new xs(e,(0,f.Z)(f.nA.NO_PREFIX_MATCHED)+` expecting prefix '${f.b3.SH}'`)})(e.commitment)+e.commitment_proof};Ea[ns.OPERATION]=(e=>t=>{if(!(t.kind in e)||!(t.kind in ss))throw new i.$W(t.kind);return ss[t.kind]+e[t.kind](t)})(Ea),Ea[ns.OP_ACTIVATE_ACCOUNT]=e=>Ta(Ea)(na)(e),Ea[ns.OP_DELEGATION]=e=>Ta(Ea)(ia)(e),Ea[ns.OP_TRANSACTION]=e=>Ta(Ea)(oa)(e),Ea[ns.OP_ORIGINATION]=e=>Ta(Ea)(sa)(e),Ea[ns.OP_BALLOT]=e=>Ta(Ea)(aa)(e),Ea[ns.OP_ATTESTATION]=e=>Ta(Ea)(ca)(e),Ea[ns.OP_ATTESTATION_WITH_DAL]=e=>Ta(Ea)(la)(e),Ea[ns.OP_SEED_NONCE_REVELATION]=e=>Ta(Ea)(ua)(e),Ea[ns.OP_PROPOSALS]=e=>Ta(Ea)(da)(e),Ea[ns.OP_REVEAL]=e=>Ta(Ea)(ra)(e),Ea[ns.OP_REGISTER_GLOBAL_CONSTANT]=e=>Ta(Ea)(_a)(e),Ea[ns.OP_TRANSFER_TICKET]=e=>Ta(Ea)(pa)(e),Ea[ns.OP_INCREASE_PAID_STORAGE]=e=>Ta(Ea)(fa)(e),Ea[ns.OP_UPDATE_CONSENSUS_KEY]=e=>Ta(Ea)(ma)(e),Ea[ns.OP_DRAIN_DELEGATE]=e=>Ta(Ea)(ha)(e),Ea[ns.OP_SMART_ROLLUP_ORIGINATE]=e=>Ta(Ea)(ya)(e),Ea[ns.OP_SMART_ROLLUP_ADD_MESSAGES]=e=>Ta(Ea)(va)(e),Ea[ns.OP_SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE]=e=>Ta(Ea)(ba)(e),Ea[ns.OP_DAL_PUBLISH_COMMITMENT]=e=>Ta(Ea)(xa)(e),Ea[ns.MANAGER]=Ta(Ea)(ta),Ea[ns.OP_SET_DEPOSITS_LIMIT]=e=>Ta(Ea)(ga)(e),Ea[ns.OP_FAILING_NOOP]=e=>Ta(Ea)(Sa)(e);const Ca={activate_account:na,reveal:ra,delegation:ia,transaction:oa,origination:sa,ballot:aa,attestation:ca,attestation_with_dal:la,seed_nonce_revelation:ua,proposals:da,register_global_constant:_a,transfer_ticket:pa,increase_paid_storage:fa,update_consensus_key:ma,drain_delegate:ha,set_deposits_limit:ga,smart_rollup_originate:ya,smart_rollup_add_messages:va,smart_rollup_execute_outbox_message:ba,dal_publish_commitment:xa,failing_noop:Sa},Na=e=>{const t=e.kind,n=Object.keys(e),r=(i="kind",n.filter((e=>e!==i)));var i;const o=Object.keys(Ca[t]);return s=r,o.filter((e=>!s.includes(e)));var s};var Aa;!function(e){e.Pt24m4xi="Pt24m4xiPbLDhVgVfABUjirbmda3yohdN82Sp9FeuAXJ4eV9otd",e.PsBABY5H="PsBABY5HQTSkA4297zNHfsZNKtxULfL18y95qb3m53QJiXGmrbU",e.PsBabyM1="PsBabyM1eUXZseaJdmXFApDSBqj8YBfwELoxZHHW77EMcAbbwAS",e.PsCARTHA="PsCARTHAGazKbHtnKfLzQg3kms52kSRpgnDY982a9oYsSXRLQEb",e.PsDELPH1="PsDELPH1Kxsxt8f9eWbxQeRxkjfbxoqM52jvs5Y5fBxWWh4ifpo",e.PtEdo2Zk="PtEdo2ZkT9oKpimTah6x2embF25oss54njMuPzkJTEi5RqfdZFA",e.PsFLorena="PsFLorenaUUuikDWvMDr6fGBRG8kt3e3D3fHoXK1j1BFRxeSH4i",e.PtGRANADs="PtGRANADsDU8R9daYKAgWnQYAJ64omN1o3KMGVCykShA97vQbvV",e.PtHangz2="PtHangz2aRngywmSRGGvrcTyMbbdpWdpFKuS4uMWxg2RaH9i1qx",e.Psithaca2="Psithaca2MLRFYargivpo7YvUr7wUDqyxrdhC5CQq78mRvimz6A",e.PtJakart2="PtJakart2xVj7pYXJBXrqHgd82rdkLey5ZeeGwDgPp9rhQUbSqY",e.PtKathman="PtKathmankSpLLDALzWw7CGD2j2MtyveTwboEYokqUCP4a1LxMg",e.PtLimaPtL="PtLimaPtLMwfNinJi9rCfDPWea8dFgTZ1MeJ9f1m2SRic6ayiwW",e.PtMumbaii="PtMumbaiiFFEGbew1rRjzSPyzRbA51Tm3RVZL5suHPxSZYDhCEc",e.PtMumbai2="PtMumbai2TmsJHNGRkD8v8YDbtao7BLUC3wjASn1inAKLFCjaH1",e.PtNairobi="PtNairobiyssHuh87hEhfVBGCVrK3WnS8Z2FT4ymB5tAa4r1nQf",e.ProxfordY="ProxfordYmVfjWnRcgjWH36fW6PArwqykTFzotUxRs6gmTcZDuH",e.PtParisBx="PtParisBxoLz5gzMmn3d9WBQNoPSZakgnkMC2VNuQ3KXfUtUQeZ",e.PsParisCZ="PsParisCZo7KAh1Z1smVd9ZMZ1HHn5gkzbM94V3PLCpknFWhUAi",e.ProtoALpha="ProtoALphaALphaALphaALphaALphaALphaALphaALphaDdp3zK"}(Aa||(Aa={}));const Ia=Aa.PsParisCZ;class Da{constructor(e=Ia){var t;this.protocolHash=e,this.codec=(t=ns.MANAGER,this.protocolHash,{encoder:Ea[t],decoder:e=>{const n=Ss.fromHexString(e);return ka[t](n)}})}forge(e){const t=(0,f.YV)(e.branch);if(t!==f.nA.VALID)throw new i.DL(e.branch,(0,f.Z)(t));for(const o of e.contents){if(n=o.kind,!Object.keys(Ca).includes(n))throw new i.$W(o.kind);const e=Na(o);if(1===e.length){if("delegation"===o.kind&&"delegate"===e[0])continue;if("origination"===o.kind&&"delegate"===e[0])continue;if("transaction"===o.kind&&"parameters"===e[0])continue;if("set_deposits_limit"===o.kind&&"limit"===e[0])continue;if("smart_rollup_originate"===o.kind&&"whitelist"===e[0])continue;throw new ls(o,`missing properties "${e.join(", ")}"`)}if(e.length>1)throw new ls(o,`missing properties "${e.join(", ")}"`)}var n;const r=this.codec.encoder(e).toLowerCase();return Promise.resolve(r)}parse(e){return Promise.resolve(this.codec.decoder(e))}}new Da;var Pa=n(96763);function Ma(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]])}return n}function Oa(e,t,n,r){return new(n||(n=Promise))((function(i,o){function s(e){try{c(r.next(e))}catch(t){o(t)}}function a(e){try{c(r.throw(e))}catch(t){o(t)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}c((r=r.apply(e,t||[])).next())}))}function Fa(e,t,n,r){if("a"===n&&!r)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof t?e!==t||!r:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===n?r:"a"===n?r.call(e):r?r.value:t.get(e)}function Ra(e,t,n,r,i){if("m"===r)throw new TypeError("Private method is not writable");if("a"===r&&!i)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof t?e!==t||!i:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===r?i.call(e,n):i?i.value=n:t.set(e,n),n}"function"==typeof SuppressedError&&SuppressedError;class La{constructor(e){this.context=e}inject(e){return Oa(this,void 0,void 0,(function*(){let t;try{t=yield this.context.rpc.injectOperation(e)}catch(n){const e=". You may want to use --replace to provide adequate fee and replace it";throw n instanceof c&&n.message.includes(e)?function(e,t){const n=JSON.parse(e.body);if(n[0]&&n[0].kind&&n[0].msg){const r=JSON.stringify({kind:n[0].kind,id:n[0].id,msg:n[0].msg.replace(t,"")});return new c(`Http error response: (${e.status}) ${r}`,e.status,e.statusText,r,e.url)}return e}(n,e):n}return t}))}}class ja extends i.Q1{constructor(){super(),this.name="UnconfiguredSignerError",this.message="No signer has been configured. Please configure one by calling setProvider({signer}) on your TezosToolkit instance."}}class za{publicKey(){return Oa(this,void 0,void 0,(function*(){throw new ja}))}publicKeyHash(){return Oa(this,void 0,void 0,(function*(){throw new ja}))}secretKey(){return Oa(this,void 0,void 0,(function*(){throw new ja}))}sign(e,t){return Oa(this,void 0,void 0,(function*(){throw new ja}))}}function Ua(e){return new oe((t=>(e.on("data",(e=>{t.next(e)})),e.on("error",(e=>{t.error(e)})),e.on("close",(()=>{t.complete()})),()=>{e.close()})))}const Ba={DELEGATION:10600,ORIGINATION:10600,TRANSFER:10600,REVEAL_TZ1:1e3,REVEAL_TZ2:1e3,REVEAL_TZ3:2e3,REVEAL_TZ4:2e3},qa={DELEGATION:1257,ORIGINATION:1e4,TRANSFER:1e4,REVEAL:374},Va={DELEGATION:0,ORIGINATION:257,TRANSFER:257,REVEAL:0},Ka=169,Ja=155,Wa=445,Ha=1674,Ga=276,Qa=276,Ya=305,Za=477,Xa=0,$a=257,ec=250;var tc;!function(e){e.Pt24m4xi="Pt24m4xiPbLDhVgVfABUjirbmda3yohdN82Sp9FeuAXJ4eV9otd",e.PsBABY5H="PsBABY5HQTSkA4297zNHfsZNKtxULfL18y95qb3m53QJiXGmrbU",e.PsBabyM1="PsBabyM1eUXZseaJdmXFApDSBqj8YBfwELoxZHHW77EMcAbbwAS",e.PsCARTHA="PsCARTHAGazKbHtnKfLzQg3kms52kSRpgnDY982a9oYsSXRLQEb",e.PsDELPH1="PsDELPH1Kxsxt8f9eWbxQeRxkjfbxoqM52jvs5Y5fBxWWh4ifpo",e.PtEdo2Zk="PtEdo2ZkT9oKpimTah6x2embF25oss54njMuPzkJTEi5RqfdZFA",e.PsFLorena="PsFLorenaUUuikDWvMDr6fGBRG8kt3e3D3fHoXK1j1BFRxeSH4i",e.PtGRANADs="PtGRANADsDU8R9daYKAgWnQYAJ64omN1o3KMGVCykShA97vQbvV",e.PtHangz2="PtHangz2aRngywmSRGGvrcTyMbbdpWdpFKuS4uMWxg2RaH9i1qx",e.PsiThaCa="PsiThaCaT47Zboaw71QWScM8sXeMM7bbQFncK9FLqYc6EKdpjVP",e.Psithaca2="Psithaca2MLRFYargivpo7YvUr7wUDqyxrdhC5CQq78mRvimz6A",e.PtJakart2="PtJakart2xVj7pYXJBXrqHgd82rdkLey5ZeeGwDgPp9rhQUbSqY",e.PtKathman="PtKathmankSpLLDALzWw7CGD2j2MtyveTwboEYokqUCP4a1LxMg",e.PtLimaPtL="PtLimaPtLMwfNinJi9rCfDPWea8dFgTZ1MeJ9f1m2SRic6ayiwW",e.PtMumbaii="PtMumbaiiFFEGbew1rRjzSPyzRbA51Tm3RVZL5suHPxSZYDhCEc",e.PtMumbai2="PtMumbai2TmsJHNGRkD8v8YDbtao7BLUC3wjASn1inAKLFCjaH1",e.PtNairobi="PtNairobiyssHuh87hEhfVBGCVrK3WnS8Z2FT4ymB5tAa4r1nQf",e.ProxfordY="ProxfordYmVfjWnRcgjWH36fW6PArwqykTFzotUxRs6gmTcZDuH",e.PtParisBx="PtParisBxoLz5gzMmn3d9WBQNoPSZakgnkMC2VNuQ3KXfUtUQeZ",e.PsParisCZ="PsParisCZo7KAh1Z1smVd9ZMZ1HHn5gkzbM94V3PLCpknFWhUAi",e.ProtoALpha="ProtoALphaALphaALphaALphaALphaALphaALphaALphaDdp3zK"}(tc||(tc={}));const nc={"004":[tc.Pt24m4xi],"005":[tc.PsBABY5H,tc.PsBabyM1],"006":[tc.PsCARTHA],"007":[tc.PsDELPH1],"008":[tc.PtEdo2Zk],"009":[tc.PsFLorena],"010":[tc.PtGRANADs],"011":[tc.PtHangz2],"012":[tc.PsiThaCa,tc.Psithaca2],"013":[tc.PtJakart2],"014":[tc.PtKathman],"015":[tc.PtLimaPtL],"016":[tc.PtMumbai2],"017":[tc.PtNairobi],"019":[tc.ProxfordY],"020":[tc.PtParisBx,tc.PsParisCZ],"021":[tc.ProtoALpha]};var rc;!function(e){e.MAINNET="NetXdQprcVkpaWU",e.CARTHAGENET="NetXjD3HPJJjmcd",e.DELPHINET="NetXm8tYqnMWky1",e.EDONET="NetXSgo1ZT2DRUG",e.FLORENCENET="NetXxkAx4woPLyu",e.GRANADANET="NetXz969SFaFn8k",e.HANGZHOUNET="NetXZSsxBpMQeAT",e.ITHACANET="NetXbhmtAbMukLc",e.ITHACANET2="NetXnHfVqm9iesp",e.JAKARTANET2="NetXLH1uAxK7CCh",e.KATHMANDUNET="NetXazhm4yetmff",e.LIMANET="NetXizpkH94bocH",e.MUMBAINET="NetXQw6nWSnrJ5t",e.MUMBAINET2="NetXgbcrNtXD2yA",e.NAIROBINET="NetXyuzvDo2Ugzb",e.OXFORDNET2="NetXxWsskGahzQB",e.PARISBNET="NetXo8SqH1c38SS",e.PARISCNET="NetXXWAHLEvre9b"}(rc||(rc={}));const ic=e=>Math.round(37*oc(e)/10),oc=e=>{switch(e.substring(0,3)){case"tz1":return Ka;case"tz2":return Ja;case"tz3":return Wa;case"tz4":return Ha;default:throw new Error(`Cannot estimate reveal gas limit for ${e}`)}},sc=e=>Math.round(12*ac(e)/10),ac=e=>{switch(e.substring(0,3)){case"tz1":return Ga;case"tz2":return Qa;case"tz3":return Ya;case"tz4":return Za;default:throw new Error(`Cannot estimate reveal fee for ${e}`)}};class cc extends i.Xi{constructor(e,t,n){super(),this.smartContractMethodName=e,this.sigs=t,this.invalidParams=n,this.name="InvalidParameterError",this.message=`${e} Received ${n.length} arguments while expecting one of the following signatures (${JSON.stringify(t)})`}}class lc extends i.Xi{constructor(e){super(),this.source=e,this.name="InvalidDelegationSource",this.message=`Since Babylon delegation source can no longer be a contract address ${e}. Please use the smart contract abstraction to set your delegate.`}}class uc extends i.Xi{constructor(e,t){super(),this.message=e,this.data=t,this.name="InvalidCodeParameter"}}class dc extends i.Xi{constructor(e,t){super(),this.message=e,this.data=t,this.name="InvalidInitParameter"}}class _c extends i.Qc{constructor(e,t,n,r){super(),this.message=e,this.viewName=t,this.failWith=n,this.cause=r,this.name="ViewSimulationError"}}const pc=e=>{if(fc(e.body)){const t=JSON.parse(e.body);if(Array.isArray(t)&&"with"in t[t.length-1])return t[t.length-1].with}},fc=e=>{try{JSON.parse(e)}catch(t){return!1}return!0};class mc extends i.Xi{constructor(e){super(),this.info=e,this.name="InvalidViewSimulationContext",this.message=`${e} Please configure the context of the view execution in the executeView method.`}}class hc extends i.Qc{constructor(e){super(),this.message=e,this.name="RevealOperationError"}}class gc extends i.Xi{constructor(e){super(),this.message=e,this.name}}class yc extends i.Xi{constructor(e){super(),this.message=e,this.name="InvalidBalanceError"}}const vc=({pkh:e,secret:t})=>Oa(void 0,void 0,void 0,(function*(){return{kind:A.ACTIVATION,pkh:e,secret:t}})),bc=({code:e,init:t,balance:n="0",delegate:r,storage:i,fee:o,gasLimit:s,storageLimit:a,mutez:c=!1})=>Oa(void 0,void 0,void 0,(function*(){if(void 0!==i&&void 0!==t)throw new gc("Storage and Init cannot be set a the same time. Please either use storage or init but not both.");if(!Array.isArray(e))throw new uc("Wrong code parameter type, expected an array",e);let l;if(void 0!==i){const t=e.find((e=>"prim"in e&&"storage"===e.prim));if(void 0===(null==t?void 0:t.args))throw new uc("The storage section is missing from the script",e);l=new Tr(t.args[0]).Encode(i)}else{if(void 0===t||"object"!=typeof t)throw new dc("Wrong init parameter type, expected JSON Michelson",t);l=t}const u={code:e,storage:l};if(isNaN(Number(n)))throw new yc(`Invalid Balance "${n}", cannot be converted to a number`);const d={kind:A.ORIGINATION,fee:o,gas_limit:s,storage_limit:a,balance:c?n.toString():(0,f.GP)("tz","mutez",n).toString(),script:u};return r&&(d.delegate=r),d})),xc=({to:e,amount:t,parameter:n,fee:r,gasLimit:i,storageLimit:o,mutez:s=!1})=>Oa(void 0,void 0,void 0,(function*(){return{kind:A.TRANSACTION,fee:r,gas_limit:i,storage_limit:o,amount:s?t.toString():(0,f.GP)("tz","mutez",t).toString(),destination:e,parameters:n}})),Sc=({delegate:e,source:t,fee:n,gasLimit:r,storageLimit:i})=>Oa(void 0,void 0,void 0,(function*(){return{kind:A.DELEGATION,source:t,fee:n,gas_limit:r,storage_limit:i,delegate:e}})),Tc=({fee:e,gasLimit:t,storageLimit:n},r)=>Oa(void 0,void 0,void 0,(function*(){return{kind:A.DELEGATION,fee:e,gas_limit:t,storage_limit:n,delegate:r}})),wc=({fee:e,gasLimit:t,storageLimit:n},r,i)=>Oa(void 0,void 0,void 0,(function*(){return{kind:A.REVEAL,fee:e,public_key:i,source:r,gas_limit:null!=t?t:ic(r),storage_limit:n}})),kc=({value:e,source:t,fee:n,gasLimit:r,storageLimit:i})=>Oa(void 0,void 0,void 0,(function*(){return{kind:A.REGISTER_GLOBAL_CONSTANT,value:e,fee:n,gas_limit:r,storage_limit:i,source:t}})),Ec=({ticketContents:e,ticketTy:t,ticketTicketer:n,ticketAmount:r,destination:i,entrypoint:o,source:s,fee:a,gasLimit:c,storageLimit:l})=>Oa(void 0,void 0,void 0,(function*(){return{kind:A.TRANSFER_TICKET,fee:a,gas_limit:c,storage_limit:l,source:s,ticket_contents:e,ticket_ty:t,ticket_ticketer:n,ticket_amount:r,destination:i,entrypoint:o}})),Cc=({source:e,fee:t,gasLimit:n,storageLimit:r,amount:i,destination:o})=>Oa(void 0,void 0,void 0,(function*(){return{kind:A.INCREASE_PAID_STORAGE,source:e,fee:t,gas_limit:n,storage_limit:r,amount:i,destination:o}})),Nc=({consensus_key:e,delegate:t,destination:n})=>Oa(void 0,void 0,void 0,(function*(){return{kind:A.DRAIN_DELEGATE,consensus_key:e,delegate:t,destination:n}})),Ac=({source:e,proposal:t,ballot:n})=>Oa(void 0,void 0,void 0,(function*(){return{kind:A.BALLOT,source:e,proposal:t,ballot:n}})),Ic=({source:e,proposals:t})=>Oa(void 0,void 0,void 0,(function*(){return{kind:A.PROPOSALS,source:e,proposals:t}})),Dc=({source:e,fee:t,gasLimit:n,storageLimit:r,pk:i})=>Oa(void 0,void 0,void 0,(function*(){return{kind:A.UPDATE_CONSENSUS_KEY,source:e,fee:t,gas_limit:n,storage_limit:r,pk:i}})),Pc=({source:e,fee:t,gasLimit:n,storageLimit:r,message:i})=>Oa(void 0,void 0,void 0,(function*(){return{kind:A.SMART_ROLLUP_ADD_MESSAGES,source:e,fee:t,gas_limit:n,storage_limit:r,message:i}})),Mc=({source:e,fee:t,gasLimit:n,storageLimit:r,pvmKind:i,kernel:o,parametersType:s})=>Oa(void 0,void 0,void 0,(function*(){return{kind:A.SMART_ROLLUP_ORIGINATE,source:e,fee:t,gas_limit:n,storage_limit:r,pvm_kind:i,kernel:o,parameters_ty:s}})),Oc=({source:e,fee:t,gasLimit:n,storageLimit:r,rollup:i,cementedCommitment:o,outputProof:s})=>Oa(void 0,void 0,void 0,(function*(){return{kind:A.SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE,source:e,fee:t,gas_limit:n,storage_limit:r,rollup:i,cemented_commitment:o,output_proof:s}})),Fc=(e,t)=>Object.assign(Object.assign({},e),{kind:t}),Rc=(e,t)=>{if(Array.isArray(e)){const n=e.find((e=>e.kind===t));if(n&&Lc(n,t))return n}},Lc=(e,t)=>e.kind===t,jc=e=>-1!==["transaction","delegation","origination","reveal","register_global_constant","increase_paid_storage","transfer_ticket","update_consensus_key","smart_rollup_add_messages","smart_rollup_originate","smart_rollup_execute_outbox_message"].indexOf(e.kind),zc=e=>-1!==["transaction","delegation","origination","register_global_constant","increase_paid_storage","transfer_ticket","update_consensus_key","smart_rollup_add_messages","smart_rollup_originate","smart_rollup_execute_outbox_message"].indexOf(e.kind),Uc=e=>"metadata"in e,Bc=e=>Uc(e)&&"operation_result"in e.metadata;class qc extends i.Qc{constructor(e,t,n){super(),this.errors=e,this.errorDetails=t,this.operationsWithResults=n,this.name="TezosOperationError",this.lastError=e[e.length-1],this.message=`(${this.kind}) ${this.id}`,"with"in this.lastError&&(this.lastError.with.string?this.message=this.lastError.with.string:this.lastError.with.int?this.message=this.lastError.with.int:this.message=JSON.stringify(this.lastError.with))}get id(){return this.lastError.id}get kind(){return this.lastError.kind}}class Vc extends Error{constructor(e){super(),this.result=e,this.name="TezosPreapplyFailureError",this.message="Preapply returned an unexpected result"}}const Kc=e=>{const t=Array.isArray(e)?e:[e],n=[];for(let r=0;r<t.length;r++)for(let e=0;e<t[r].contents.length;e++){const i=t[r].contents[e];Bc(i)&&"fee"in i&&(n.push(Object.assign({fee:i.fee},i.metadata.operation_result)),Array.isArray(i.metadata.internal_operation_results)&&i.metadata.internal_operation_results.forEach((e=>n.push(e.result))))}return n},Jc=(e,t="failed")=>{const n=Array.isArray(e)?e:[e];let r=[];for(let o=0;o<n.length;o++)for(let e=0;e<n[o].contents.length;e++){const s=n[o].contents[e];if(Uc(s)&&(Bc(s)&&s.metadata.operation_result.status===t&&(r=r.concat(s.metadata.operation_result.errors||[])),Uc(i=s)&&"internal_operation_results"in i.metadata&&Array.isArray(s.metadata.internal_operation_results)))for(const e of s.metadata.internal_operation_results)"result"in e&&e.result.status===t&&(r=r.concat(e.result.errors||[]))}var i;return r};class Wc extends i.IT{constructor(e){super(),this.message=e,this.name="OriginationOperationError"}}class Hc extends i.Xi{constructor(e){super(),this.message=e,this.name="InvalidEstimateValueError"}}class Gc extends i.Xi{constructor(e){super(),this.invalidConfirmations=e,this.name="InvalidConfirmationCountError",this.message=`Invalid confirmation count ${e} expecting at least 1`}}class Qc extends i.Dr{constructor(e){super(),this.message=e,this.name="ConfirmationTimeoutError"}}class Yc extends i.Qc{constructor(e,t){super(),this.message=e,this.cause=t,this.name="RPCResponseError"}}class Zc{get includedInBlock(){return this._foundAt}constructor(e,t,n,r){if(this.hash=e,this.raw=t,this.results=n,this.context=r,this._pollingConfig$=new de(1),this.currentHead$=this._pollingConfig$.pipe(ut((e=>new _e(e).pipe(_t({each:1e3*e.timeout,with:()=>pe((()=>new Qc("Confirmation polling timed out")))})))),ut((()=>ke((()=>Ua(this.context.stream.subscribeBlock("head")))).pipe(ut((e=>{var t,n;const r=null!==(n=null===(t=this.lastHead)||void 0===t?void 0:t.header.level)&&void 0!==n?n:e.header.level-1;return Ce(r+1,e.header.level-r-1).pipe(ft((e=>this.context.readProvider.getBlock(e))),mt(e))})),ht((e=>this.lastHead=e))))),vt({refCount:!0})),this.confirmed$=this.currentHead$.pipe(He((e=>{for(let t=3;t>=0;t--)e.operations[t].forEach((t=>{t.hash===this.hash&&(this._foundAt=e.header.level)}));if(e.header.level-this._foundAt>=0)return this._foundAt})),bt((e=>void 0!==e)),Tt(),vt()),this._foundAt=Number.POSITIVE_INFINITY,(0,f.KE)(this.hash)!==f.nA.VALID)throw new i.xs(this.hash);this.confirmed$.pipe(Tt(),wt((()=>Be(Ee)))).subscribe()}get revealOperation(){return Array.isArray(this.results)&&this.results.find((e=>"reveal"===e.kind))}get revealStatus(){return this.revealOperation?this.revealOperation.metadata.operation_result.status:"unknown"}get status(){return this.results.map((e=>Bc(e)?e.metadata.operation_result.status:"unknown"))[0]||"unknown"}confirmation(e,t){return Oa(this,void 0,void 0,(function*(){if(void 0!==e&&e<1)throw new Gc(e);const{defaultConfirmationCount:n,confirmationPollingTimeoutSecond:r}=this.context.config;this._pollingConfig$.next({timeout:t||r});const i=void 0!==e?e:n;return new Promise(((e,t)=>{this.confirmed$.pipe(ut((()=>this.currentHead$)),bt((e=>e.header.level-this._foundAt>=i-1)),Tt()).subscribe({error:e=>t(e),complete:()=>e(this._foundAt+(i-1))})}))}))}}class Xc extends Zc{constructor(e,t,n,r,i,o){super(e,r,i,o),this.params=t,this.source=n}sumProp(e,t){return e.reduce(((e,n)=>t in n?Number(n[t])+e:e),0)}getOriginatedContractAddresses(){const e=this.results.filter((e=>"origination"===e.kind));let t=[];for(const n of e)n.metadata.operation_result.originated_contracts&&(t=[...t,...n.metadata.operation_result.originated_contracts]);return t}get status(){return this.results.filter((e=>-1!==kl.indexOf(e.kind))).map((e=>{if(Bc(e)){return e.metadata.operation_result.status}return"unknown"}))[0]||"unknown"}get fee(){return this.sumProp(this.params,"fee")}get gasLimit(){return this.sumProp(this.params,"gas_limit")}get storageLimit(){return this.sumProp(this.params,"storage_limit")}get consumedGas(){return p.A.config({DECIMAL_PLACES:0,ROUNDING_MODE:p.A.ROUND_UP}),new p.A(this.consumedMilliGas).dividedBy(1e3).toString()}get consumedMilliGas(){return String(this.sumProp(Kc({contents:this.results}),"consumed_milligas"))}get storageDiff(){return String(this.sumProp(Kc({contents:this.results}),"paid_storage_size_diff"))}get errors(){return Jc({contents:this.results})}}class $c{get rpc(){return this.context.rpc}get signer(){return this.context.signer}constructor(e){this.context=e}forge({opOb:{branch:e,contents:t,protocol:n},counter:r}){return Oa(this,void 0,void 0,(function*(){return{opbytes:yield this.context.forger.forge({branch:e,contents:t}),opOb:{branch:e,contents:t,protocol:n},counter:r}}))}estimate(e,t){var{fee:n,gasLimit:r,storageLimit:i}=e,o=Ma(e,["fee","gasLimit","storageLimit"]);return Oa(this,void 0,void 0,(function*(){let e=n,s=r,a=i;if(e&&e%1!=0)throw new Hc(`Fee value must not be a decimal: ${e}`);if(s&&s%1!=0)throw new Hc(`Gas Limit value must not be a decimal: ${s}`);if(a&&a%1!=0)throw new Hc(`Storage Limit value must not be a decimal: ${a}`);if(void 0===n||void 0===r||void 0===i){const c=yield t(Object.assign({fee:n,gasLimit:r,storageLimit:i},o));null!=e||(e=c.suggestedFeeMutez),null!=s||(s=c.gasLimit),null!=a||(a=c.storageLimit)}return{fee:e,gasLimit:s,storageLimit:a}}))}getRPCOp(e){return Oa(this,void 0,void 0,(function*(){switch(e.kind){case A.TRANSACTION:return xc(Object.assign({},e));case A.ORIGINATION:return bc(yield this.context.parser.prepareCodeOrigination(Object.assign({},e)));case A.DELEGATION:return Sc(Object.assign({},e));case A.REGISTER_GLOBAL_CONSTANT:return kc(Object.assign({},e));case A.INCREASE_PAID_STORAGE:return Cc(Object.assign({},e));case A.TRANSFER_TICKET:return Ec(Object.assign({},e));case A.SMART_ROLLUP_ADD_MESSAGES:return Pc(Object.assign({},e));case A.SMART_ROLLUP_ORIGINATE:return Mc(Object.assign({},e));case A.SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE:return Oc(Object.assign({},e));default:throw new f.$W(e.kind)}}))}runOperation(e){return Oa(this,void 0,void 0,(function*(){return{opResponse:yield this.rpc.runOperation(e),op:e,context:this.context.clone()}}))}simulate(e){return Oa(this,void 0,void 0,(function*(){return{opResponse:yield this.rpc.simulateOperation(e),op:e,context:this.context.clone()}}))}isRevealOpNeeded(e,t){return Oa(this,void 0,void 0,(function*(){return!(!(yield this.isAccountRevealRequired(t))||!this.isRevealRequiredForOpType(e))}))}isAccountRevealRequired(e){return Oa(this,void 0,void 0,(function*(){return!(yield this.context.readProvider.isAccountRevealed(e,"head"))}))}isRevealRequiredForOpType(e){let t=!1;for(const n of e)zc(n)&&(t=!0);return t}signAndInject(e){return Oa(this,void 0,void 0,(function*(){const t=yield this.signer.sign(e.opbytes,new Uint8Array([3]));e.opbytes=t.sbytes,e.opOb.signature=t.prefixSig;const n=[],r=yield this.rpc.preapplyOperations([e.opOb]);if(!Array.isArray(r))throw new Vc(r);for(let e=0;e<r.length;e++)for(let t=0;t<r[e].contents.length;t++)n.push(r[e].contents[t]);const i=Jc(r);if(i.length)throw new qc(i,"Error occurred during validation simulation of operation",n);return{hash:yield this.context.injector.inject(e.opbytes),forgedBytes:e,opResponse:n,context:this.context.clone()}}))}}class el{constructor(e,t){this.walletProvider=e,this.context=t,this.operations=[]}withTransfer(e){const t=(0,f.jl)(e.to);if(t!==f.nA.VALID)throw new i.Ms(e.to,(0,f.Z)(t));return this.operations.push(Object.assign({kind:A.TRANSACTION},e)),this}withContractCall(e,t={}){return this.withTransfer(e.toTransferParams(t))}withDelegation(e){var t;const n=(0,f.jl)(null!==(t=e.delegate)&&void 0!==t?t:"");if(e.delegate&&n!==f.nA.VALID)throw new i.Ms(e.delegate,(0,f.Z)(n));return this.operations.push(Object.assign({kind:A.DELEGATION},e)),this}withOrigination(e){return this.operations.push(Object.assign({kind:A.ORIGINATION},e)),this}withIncreasePaidStorage(e){const t=(0,f.jl)(e.destination);if(t!==f.nA.VALID)throw new i.Ms(e.destination,(0,f.Z)(t));return this.operations.push(Object.assign({kind:A.INCREASE_PAID_STORAGE},e)),this}mapOperation(e){return Oa(this,void 0,void 0,(function*(){switch(e.kind){case A.TRANSACTION:return this.walletProvider.mapTransferParamsToWalletParams((()=>Oa(this,void 0,void 0,(function*(){return e}))));case A.ORIGINATION:return this.walletProvider.mapOriginateParamsToWalletParams((()=>Oa(this,void 0,void 0,(function*(){return this.context.parser.prepareCodeOrigination(Object.assign({},e))}))));case A.DELEGATION:return this.walletProvider.mapDelegateParamsToWalletParams((()=>Oa(this,void 0,void 0,(function*(){return e}))));case A.INCREASE_PAID_STORAGE:return this.walletProvider.mapIncreasePaidStorageWalletParams((()=>Oa(this,void 0,void 0,(function*(){return e}))));default:throw new i.$W(JSON.stringify(e.kind))}}))}with(e){for(const t of e)switch(t.kind){case A.TRANSACTION:this.withTransfer(t);break;case A.ORIGINATION:this.withOrigination(t);break;case A.DELEGATION:this.withDelegation(t);break;case A.INCREASE_PAID_STORAGE:this.withIncreasePaidStorage(t);break;default:throw new i.$W(JSON.stringify(t.kind))}return this}send(){return Oa(this,void 0,void 0,(function*(){const e=[];for(const n of this.operations)e.push(yield this.mapOperation(n));const t=yield this.walletProvider.sendOperations(e);return this.context.operationFactory.createBatchOperation(t)}))}}class tl{constructor(e){this.context=e,this.walletCommand=e=>({send:e})}get walletProvider(){return this.context.walletProvider}pkh({forceRefetch:e}={}){return Oa(this,void 0,void 0,(function*(){return this._pkh&&!e||(this._pkh=yield this.walletProvider.getPKH()),this._pkh}))}pk({forceRefetch:e}={}){return Oa(this,void 0,void 0,(function*(){return this._pk&&!e||(this._pk=yield this.walletProvider.getPK()),this._pk}))}originate(e){return this.walletCommand((()=>Oa(this,void 0,void 0,(function*(){const t=yield this.walletProvider.mapOriginateParamsToWalletParams((()=>this.context.parser.prepareCodeOrigination(Object.assign({},e)))),n=yield this.walletProvider.sendOperations([t]);return this.context.operationFactory.createOriginationOperation(n)}))))}setDelegate(e){var t;const n=(0,f.jl)(null!==(t=e.delegate)&&void 0!==t?t:"");if(e.delegate&&n!==f.nA.VALID)throw new i.Ms(e.delegate,(0,f.Z)(n));return this.walletCommand((()=>Oa(this,void 0,void 0,(function*(){const t=yield this.walletProvider.mapDelegateParamsToWalletParams((()=>Oa(this,void 0,void 0,(function*(){return e})))),n=yield this.walletProvider.sendOperations([t]);return this.context.operationFactory.createDelegationOperation(n)}))))}signFailingNoop(e){return Oa(this,void 0,void 0,(function*(){const t={kind:A.FAILING_NOOP,arbitrary:e.arbitrary},n=yield this.context.readProvider.getBlockHash(e.basedOnBlock),r=yield this.context.forger.forge({branch:n,contents:[t]});return{signature:yield this.walletProvider.sign(r,Uint8Array.from([3])),bytes:r,signedContent:{branch:n,contents:[{kind:A.FAILING_NOOP,arbitrary:e.arbitrary}]}}}))}registerDelegate(){return this.walletCommand((()=>Oa(this,void 0,void 0,(function*(){const e=yield this.walletProvider.mapDelegateParamsToWalletParams((()=>Oa(this,void 0,void 0,(function*(){return{delegate:yield this.pkh()}})))),t=yield this.walletProvider.sendOperations([e]);return this.context.operationFactory.createDelegationOperation(t)}))))}transfer(e){const t=(0,f.jl)(e.to);if(t!==f.nA.VALID)throw new i.Ms(e.to,(0,f.Z)(t));return this.walletCommand((()=>Oa(this,void 0,void 0,(function*(){const t=yield this.walletProvider.mapTransferParamsToWalletParams((()=>Oa(this,void 0,void 0,(function*(){return e})))),n=yield this.walletProvider.sendOperations([t]);return this.context.operationFactory.createTransactionOperation(n)}))))}stake(e){return this.walletCommand((()=>Oa(this,void 0,void 0,(function*(){const t=yield this.walletProvider.mapStakeParamsToWalletParams((()=>Oa(this,void 0,void 0,(function*(){const t=yield this.pkh();if(e.to||(e.to=t),e.to!==t)throw new i.dr(e.to);return e.parameter={entrypoint:"stake",value:{prim:"Unit"}},e})))),n=yield this.walletProvider.sendOperations([t]);return this.context.operationFactory.createTransactionOperation(n)}))))}unstake(e){return this.walletCommand((()=>Oa(this,void 0,void 0,(function*(){const t=yield this.walletProvider.mapUnstakeParamsToWalletParams((()=>Oa(this,void 0,void 0,(function*(){const t=yield this.pkh();if(e.to||(e.to=t),e.to!==t)throw new i.dr(e.to);return e.parameter={entrypoint:"unstake",value:{prim:"Unit"}},e})))),n=yield this.walletProvider.sendOperations([t]);return yield this.context.operationFactory.createTransactionOperation(n)}))))}finalizeUnstake(e){return this.walletCommand((()=>Oa(this,void 0,void 0,(function*(){const t=yield this.walletProvider.mapFinalizeUnstakeParamsToWalletParams((()=>Oa(this,void 0,void 0,(function*(){const t=yield this.pkh();if(e.to||(e.to=t),e.to!==t)throw new i.dr(e.to);if(e.amount||(e.amount=0),0!==e.amount)throw new i.LJ("Amount must be 0 to finalize unstake.");return e.parameter={entrypoint:"finalize_unstake",value:{prim:"Unit"}},e})))),n=yield this.walletProvider.sendOperations([t]);return yield this.context.operationFactory.createTransactionOperation(n)}))))}increasePaidStorage(e){const t=(0,f.jl)(e.destination);if(t!==f.nA.VALID)throw new i.Ms(e.destination,(0,f.Z)(t));return this.walletCommand((()=>Oa(this,void 0,void 0,(function*(){const t=yield this.walletProvider.mapIncreasePaidStorageWalletParams((()=>Oa(this,void 0,void 0,(function*(){return e})))),n=yield this.walletProvider.sendOperations([t]);return this.context.operationFactory.createIncreasePaidStorageOperation(n)}))))}batch(e){const t=new el(this.walletProvider,this.context);return Array.isArray(e)&&t.with(e),t}at(e,t=(e=>e)){return Oa(this,void 0,void 0,(function*(){const n=(0,f.Lg)(e);if(n!==f.nA.VALID)throw new i.mC(e,(0,f.Z)(n));const r=this.context.withExtensions().rpc,o=this.context.withExtensions().readProvider,s=yield o.getScript(e,"head"),a=yield o.getEntrypoints(e),c=new ml(e,s,this,this.context.contract,a,r,o);return t(c,this.context)}))}getPK(){return Oa(this,void 0,void 0,(function*(){return yield this.pk()}))}}class nl extends i.Q1{constructor(){super(),this.name="ConfirmationUndefinedError",this.message="Default confirmation count can not be undefined"}}class rl extends i.Dr{constructor(e){super(),this.message=e,this.name="ObservableError"}}class il{operationResults(){return Oa(this,void 0,void 0,(function*(){return this._operationResult.pipe(Tt()).toPromise()}))}receipt(){return Oa(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(!e)throw new rl("Unable to get operation results");return((e,{ALLOCATION_BURN:t,ORIGINATION_BURN:n}={ALLOCATION_BURN:257,ORIGINATION_BURN:257})=>{p.A.config({DECIMAL_PLACES:0,ROUNDING_MODE:p.A.ROUND_UP});const r=Kc({contents:e});let i=new p.A(0),o=new p.A(0),s=new p.A(0),a=new p.A(0),c=new p.A(0),l=new p.A(0);return r.forEach((e=>{s=s.plus(e.fee||0),a=a.plus(Array.isArray(e.originated_contracts)?e.originated_contracts.length*n:0),c=c.plus("allocated_destination_contract"in e?t:0),i=i.plus(e.consumed_milligas||0),l=l.plus("paid_storage_size_diff"in e&&Number(e.paid_storage_size_diff)||0)})),o=o.plus(c).plus(a).plus(l),{totalFee:s,totalMilliGas:i,totalGas:i.dividedBy(1e3),totalStorage:o,totalAllocationBurn:c,totalOriginationBurn:a,totalPaidStorageDiff:l,totalStorageBurn:new p.A(o.multipliedBy(ec))}})(e)}))}constructor(e,t,n){if(this.opHash=e,this.context=t,this._newHead$=n,this._operationResult=new de(1),this._includedInBlock=new de(1),this._included=!1,this.newHead$=this._newHead$.pipe(ut((e=>{var t,n;const r=null!==(n=null===(t=this.lastHead)||void 0===t?void 0:t.header.level)&&void 0!==n?n:e.header.level-1;return Ce(r+1,e.header.level-r-1).pipe(ft((e=>this.context.readProvider.getBlock(e))),mt(e))})),ht((e=>this.lastHead=e)),gt({connector:()=>new de(1),resetOnError:!1,resetOnComplete:!1,resetOnRefCountZero:!1})),this.confirmed$=this.newHead$.pipe(He((e=>{for(const t of e.operations)for(const n of t)if(n.hash===this.opHash)return this._included=!0,this._includedInBlock.next(e),this._operationResult.next(n.contents),e})),bt((e=>void 0!==e)),Tt(),gt({connector:()=>new de(1),resetOnError:!1,resetOnComplete:!1,resetOnRefCountZero:!1})),(0,f.KE)(this.opHash)!==f.nA.VALID)throw new i.xs(this.opHash);this.confirmed$.pipe(Tt(),wt((()=>Be(void 0)))).subscribe()}getCurrentConfirmation(){return Oa(this,void 0,void 0,(function*(){return this._included?Ye([this._includedInBlock,Ue(this.context.readProvider.getBlock("head"))]).pipe(He((([e,t])=>t.header.level-e.header.level+1)),Tt()).toPromise():0}))}isInCurrentBranch(e="head"){return Oa(this,void 0,void 0,(function*(){if(!this._included)return!0;const t=yield this.context.readProvider.getBlockLevel(e),n=yield this._includedInBlock.pipe(Tt()).toPromise();if(!n)throw new rl("Inclusion block is undefined");const r=t-n.header.level;if(r<=0)return!0;const i=Math.min(n.header.level+r,n.header.level+60);return new Set(yield this.context.readProvider.getLiveBlocks(i)).has(n.hash)}))}confirmationObservable(e){if(void 0!==e&&e<1)throw new Gc(e);const{defaultConfirmationCount:t}=this.context.config,n=void 0!==e?e:t;if(void 0===n)throw new nl;return Ye([this._includedInBlock,this.newHead$]).pipe(kt((([,e],[,t])=>e.hash===t.hash)),He((([e,t])=>({block:t,expectedConfirmation:n,currentConfirmation:t.header.level-e.header.level+1,completed:t.header.level-e.header.level>=n-1,isInCurrentBranch:()=>this.isInCurrentBranch(t.hash)}))),(r=({completed:e})=>!e,void 0===(i=!0)&&(i=!1),Me((function(e,t){var n=0;e.subscribe(Oe(t,(function(e){var o=r(e,n++);(o||i)&&t.next(e),!o&&t.complete()})))}))));var r,i}confirmation(e){return this.confirmationObservable(e).toPromise()}}class ol extends il{constructor(e,t,n){super(e,t,n),this.opHash=e,this.context=t}revealOperation(){return Oa(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(!e)throw new rl("operationResult returned undefined");return e.find((e=>e.kind===A.REVEAL))}))}transactionOperation(){return Oa(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(!e)throw new rl("operationResult returned undefined");return e.find((e=>e.kind===A.TRANSACTION))}))}status(){return Oa(this,void 0,void 0,(function*(){if(!this._included)return"pending";const e=yield this.transactionOperation();return e?e.metadata.operation_result.status:"unknown"}))}}class sl extends il{constructor(e,t,n){super(e,t,n),this.opHash=e,this.context=t}originationOperation(){return Oa(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(e)return Rc(e,A.ORIGINATION);throw new rl("Unable to fetch operation result")}))}revealOperation(){return Oa(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(e)return Rc(e,A.REVEAL);throw new rl("Unable to fetch operation result")}))}status(){return Oa(this,void 0,void 0,(function*(){if(!this._included)return"pending";const e=yield this.originationOperation();return e?e.metadata.operation_result.status:"unknown"}))}contract(){return Oa(this,void 0,void 0,(function*(){const e=yield this.originationOperation(),t=((null==e?void 0:e.metadata.operation_result.originated_contracts)||[])[0];return this.context.wallet.at(t)}))}}class al extends il{constructor(e,t,n){super(e,t,n),this.opHash=e,this.context=t}revealOperation(){return Oa(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(e)return e.find((e=>e.kind===A.REVEAL));throw new rl("Unable to fetch operation result")}))}delegationOperation(){return Oa(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(e)return e.find((e=>e.kind===A.DELEGATION));throw new rl("Unable to fetch operation result")}))}status(){return Oa(this,void 0,void 0,(function*(){if(!this._included)return"pending";const e=yield this.delegationOperation();return e?e.metadata.operation_result.status:"unknown"}))}}class cl{constructor(e){this.context=e}getPKH(){return Oa(this,void 0,void 0,(function*(){return this.context.signer.publicKeyHash()}))}getPK(){return Oa(this,void 0,void 0,(function*(){return this.context.signer.publicKey()}))}mapTransferParamsToWalletParams(e){return Oa(this,void 0,void 0,(function*(){return Fc(yield e(),A.TRANSACTION)}))}mapStakeParamsToWalletParams(e){return Oa(this,void 0,void 0,(function*(){return Fc(yield e(),A.TRANSACTION)}))}mapUnstakeParamsToWalletParams(e){return Oa(this,void 0,void 0,(function*(){return Fc(yield e(),A.TRANSACTION)}))}mapFinalizeUnstakeParamsToWalletParams(e){return Oa(this,void 0,void 0,(function*(){return Fc(yield e(),A.TRANSACTION)}))}mapOriginateParamsToWalletParams(e){return Oa(this,void 0,void 0,(function*(){return Fc(yield e(),A.ORIGINATION)}))}mapDelegateParamsToWalletParams(e){return Oa(this,void 0,void 0,(function*(){return Fc(yield e(),A.DELEGATION)}))}mapIncreasePaidStorageWalletParams(e){return Oa(this,void 0,void 0,(function*(){return Fc(yield e(),A.INCREASE_PAID_STORAGE)}))}sendOperations(e){return Oa(this,void 0,void 0,(function*(){return(yield this.context.batch.batch(e).send()).hash}))}sign(e,t){return Oa(this,void 0,void 0,(function*(){const{prefixSig:n}=yield this.context.signer.sign(e,t);return n}))}}class ll{constructor(e,t,n,r,i="unit",o=!0,s=!1){this.provider=e,this.address=t,this.parameterSchema=n,this.name=r,this.args=i,this.isMultipleEntrypoint=o,this.isAnonymous=s}getSignature(){return this.isAnonymous?this.parameterSchema.ExtractSchema()[this.name]:this.parameterSchema.ExtractSchema()}send(e={}){return this.provider instanceof tl?this.provider.transfer(this.toTransferParams(e)).send():this.provider.transfer(this.toTransferParams(e))}toTransferParams({fee:e,gasLimit:t,storageLimit:n,source:r,amount:i=0,mutez:o=!1}={}){return{to:this.address,amount:i,fee:e,mutez:o,source:r,gasLimit:t,storageLimit:n,parameter:{entrypoint:this.isMultipleEntrypoint?this.name:pl,value:this.isAnonymous?this.parameterSchema.EncodeObject({[this.name]:this.args}):this.parameterSchema.EncodeObject(this.args)}}}}class ul{constructor(e,t,n,r,i,o=!0,s=!1){this.provider=e,this.address=t,this.parameterSchema=n,this.name=r,this.args=i,this.isMultipleEntrypoint=o,this.isAnonymous=s}validateArgs(e,t,n){const r=t.ExtractSignatures();if(!r.find((t=>t.length===e.length)))throw new cc(n,r,e)}get schema(){return this.isAnonymous?this.parameterSchema.ExtractSchema()[this.name]:this.parameterSchema.ExtractSchema()}getSignature(){if(!this.isAnonymous){const e=this.parameterSchema.ExtractSignatures();return 1==e.length?e[0]:e}{const e=this.parameterSchema.ExtractSignatures().find((e=>e[0]===this.name));if(e)return e.shift(),e}}send(e={}){return this.provider instanceof tl?this.provider.transfer(this.toTransferParams(e)).send():this.provider.transfer(this.toTransferParams(e))}toTransferParams({fee:e,gasLimit:t,storageLimit:n,source:r,amount:i=0,mutez:o=!1}={}){return{to:this.address,amount:i,fee:e,mutez:o,source:r,gasLimit:t,storageLimit:n,parameter:{entrypoint:this.isMultipleEntrypoint?this.name:pl,value:this.isAnonymous?this.parameterSchema.Encode(this.name,...this.args):this.parameterSchema.Encode(...this.args)}}}}class dl{constructor(e,t,n,r,i,o="Unit"){this._rpc=e,this._readProvider=t,this._contractAddress=n,this._smartContractViewSchema=r,this._contractStorageType=i,this._args=o}getSignature(){return{parameter:this._smartContractViewSchema.extractArgsSchema(),result:this._smartContractViewSchema.extractResultSchema()}}executeView(e){return Oa(this,void 0,void 0,(function*(){this.verifyContextExecution(e);const t=yield this._readProvider.getChainId(),n=this.transformArgsToMichelson(),r={contract:this._contractAddress,view:this._smartContractViewSchema.viewName,input:n,chain_id:t,source:e.viewCaller};return e.source&&(r.payer=e.source),this.executeViewAndDecodeResult(r)}))}verifyContextExecution(e){if(e.source&&(0,f.jl)(e.source)!==f.nA.VALID)throw new mc(`The source account who initialized the view execution is invalid: ${e.source}.`);if(!e.viewCaller||(0,f.jl)(e.viewCaller)!==f.nA.VALID)throw new mc(`The contract which is the caller of view is invalid: ${e.viewCaller}.`)}transformArgsToMichelson(){try{return this._smartContractViewSchema.encodeViewArgs(this._args)}catch(e){throw new i.mx(this._smartContractViewSchema.viewName,this.getSignature(),this._args,e)}}adaptViewCodeToContext(e,t,n){const r={BALANCE:[{prim:"PUSH",args:[{prim:"mutez"},{int:n}]}],SENDER:[{prim:"PUSH",args:[{prim:"address"},{string:t}]}],SELF_ADDRESS:[{prim:"PUSH",args:[{prim:"address"},{string:this._contractAddress}]}],AMOUNT:[{prim:"PUSH",args:[{prim:"mutez"},{int:"0"}]}]};return e.forEach(((i,o)=>{i.prim in r&&(e[o]=Object(r)[i.prim]),i.args&&0!==i.args.length?this.adaptViewCodeToContext(i.args,t,n):Array.isArray(i)&&this.adaptViewCodeToContext(i,t,n)})),e}executeViewAndDecodeResult(e){return Oa(this,void 0,void 0,(function*(){let t;try{t=(yield this._rpc.runScriptView(e)).data}catch(n){const e=pc(n);throw e?new _c(`The simulation of the on-chain view named ${this._smartContractViewSchema.viewName} failed with: ${JSON.stringify(e)}`,this._smartContractViewSchema.viewName,e,n):n}return this._smartContractViewSchema.decodeViewResult(t)}))}}class _l{constructor(e,t){this.provider=e,this.contractAddress=t}createContractMethodFlatParams(e,t,n,r=!0,i=!1){return new ul(this.provider,this.contractAddress,e,t,n,r,i)}createContractMethodObjectParam(e,t,n,r=!0,i=!1){return new ll(this.provider,this.contractAddress,e,t,n,r,i)}createContractViewObjectParam(e,t,n,r,i){return new dl(e,t,this.contractAddress,n,r,i)}}const pl="default";class fl{constructor(e,t,n,r,i,o,s){this.currentContract=e,this.name=t,this.callbackParametersSchema=n,this.parameterSchema=r,this.args=i,this.rpc=o,this.readProvider=s}read(e){return Oa(this,void 0,void 0,(function*(){const t=(0,f.yC)(null!=e?e:"");if((0,f.Lg)(null!=e?e:"")==f.nA.VALID)throw new i.dy("Since version 12, the lambda view no longer depends on a lambda contract. The read method no longer accepts a contract address as a parameter.");if(e&&t!==f.nA.VALID)throw new i.qD(e,(0,f.Z)(t));const n=this.parameterSchema.Encode(...this.args),r=yield this.rpc.runView({contract:this.currentContract.address,entrypoint:this.name,input:n,chain_id:e||(yield this.readProvider.getChainId())});return this.callbackParametersSchema.Execute(r.data)}))}}class ml{constructor(e,t,n,r,i,o,s){this.address=e,this.script=t,this.storageProvider=r,this.entrypoints=i,this.rpc=o,this.readProvider=s,this.methods={},this.methodsObject={},this.views={},this.contractViews={},this.contractMethodFactory=new _l(n,e),this.schema=Tr.fromRPCResponse({script:this.script}),this.parameterSchema=wr.fromRPCResponse({script:this.script}),this.viewSchema=kr.fromRPCResponse({script:this.script}),0!==this.viewSchema.length&&this._initializeOnChainViews(this,o,this.readProvider,this.viewSchema),this.eventSchema=Er.fromRPCResponse({script:this.script}),this._initializeMethods(this,this.entrypoints.entrypoints,this.rpc,this.readProvider)}_initializeMethods(e,t,n,r){const i=this.parameterSchema,o=Object.keys(t);if(i.isMultipleEntryPoint){o.forEach((i=>{const o=new wr(t[i]);if(this.methods[i]=function(...t){return e.contractMethodFactory.createContractMethodFlatParams(o,i,t)},this.methodsObject[i]=function(t){return e.contractMethodFactory.createContractMethodObjectParam(o,i,t)},(e=>{let t=!1;if("prim"in e&&"pair"===e.prim&&e.args){const n=e.args[e.args.length-1];"prim"in n&&"contract"===n.prim&&(t=!0)}return t})(t[i])){const o=function(...o){const s=t[i].args[0],a=new wr(s),c=t[i].args[1].args[0],l=new wr(c);return((e,t,n)=>{const r=t.ExtractSignatures();if(!r.find((t=>t.length===e.length)))throw new cc(n,r,e)})(o,a,i),new fl(e,i,l,a,o,n,r)};this.views[i]=o}}));Object.keys(i.ExtractSchema()).filter((e=>-1===Object.keys(t).indexOf(e))).forEach((t=>{this.methods[t]=function(...n){return e.contractMethodFactory.createContractMethodFlatParams(i,t,n,!1,!0)},this.methodsObject[t]=function(n){return e.contractMethodFactory.createContractMethodObjectParam(i,t,n,!1,!0)}}))}else{const t=this.parameterSchema;this.methods[pl]=function(...n){return e.contractMethodFactory.createContractMethodFlatParams(t,pl,n,!1)},this.methodsObject[pl]=function(n){return e.contractMethodFactory.createContractMethodObjectParam(t,pl,n,!1)}}}_initializeOnChainViews(e,t,n,r){const i=this.schema.val;r.forEach((r=>{this.contractViews[r.viewName]=function(o){return e.contractMethodFactory.createContractViewObjectParam(t,n,r,i,o)}}))}storage(){return this.storageProvider.getStorage(this.address,this.schema)}bigMap(e){return this.storageProvider.getBigMapKey(this.address,e,this.schema)}}const hl={setDelegate:e=>[{prim:"DROP"},{prim:"NIL",args:[{prim:"operation"}]},{prim:"PUSH",args:[{prim:"key_hash"},{string:e}]},{prim:"SOME"},{prim:"SET_DELEGATE"},{prim:"CONS"}],removeDelegate:()=>[{prim:"DROP"},{prim:"NIL",args:[{prim:"operation"}]},{prim:"NONE",args:[{prim:"key_hash"}]},{prim:"SET_DELEGATE"},{prim:"CONS"}],transferImplicit:(e,t)=>[{prim:"DROP"},{prim:"NIL",args:[{prim:"operation"}]},{prim:"PUSH",args:[{prim:"key_hash"},{string:e}]},{prim:"IMPLICIT_ACCOUNT"},{prim:"PUSH",args:[{prim:"mutez"},{int:`${t}`}]},{prim:"UNIT"},{prim:"TRANSFER_TOKENS"},{prim:"CONS"}],transferToContract:(e,t)=>[{prim:"DROP"},{prim:"NIL",args:[{prim:"operation"}]},{prim:"PUSH",args:[{prim:"address"},{string:e}]},{prim:"CONTRACT",args:[{prim:"unit"}]},{prim:"IF_NONE",args:[[{prim:"UNIT"},{prim:"FAILWITH"}],[]]},{prim:"PUSH",args:[{prim:"mutez"},{int:`${t}`}]},{prim:"UNIT"},{prim:"TRANSFER_TOKENS"},{prim:"CONS"}]},gl={code:[{prim:"parameter",args:[{prim:"lambda",args:[{prim:"unit"},{prim:"pair",args:[{prim:"list",args:[{prim:"operation"}]},{prim:"unit"}]}]}]},{prim:"storage",args:[{prim:"unit"}]},{prim:"code",args:[[{prim:"CAR"},{prim:"UNIT"},{prim:"EXEC"}]]}],storage:"Unit"};function yl(e,t){return(n,r)=>t(e(n,r),r)}class vl{constructor(e,t){this.id=e,this.provider=t}getSaplingDiff(e){return Oa(this,void 0,void 0,(function*(){return this.provider.getSaplingDiffByID(this.id.toString(),e)}))}getId(){return this.id.toString()}}class bl{constructor(e,t,n){this.id=e,this.schema=t,this.provider=n}get(e,t){return Oa(this,void 0,void 0,(function*(){try{return yield this.provider.getBigMapKeyByID(this.id.toString(),e,this.schema,t)}catch(n){if(n instanceof c&&n.status===r.NOT_FOUND)return;throw n}}))}getMultipleValues(e,t,n=5){return Oa(this,void 0,void 0,(function*(){return this.provider.getBigMapKeysByID(this.id.toString(),e,this.schema,t,n)}))}toJSON(){return this.id.toString()}toString(){return this.id.toString()}}const xl=e=>({big_map:(t,n)=>{if(t&&"int"in t&&void 0!==t.int){const r=new Tr(n);return new bl(new p.A(t.int),r,e)}return{}},sapling_state:t=>t&&"int"in t&&void 0!==t.int?new vl(new p.A(t.int),e):{}});var Sl;const Tl=(e,t)=>{var n,r,i;return{fee:null!==(n=e.fee)&&void 0!==n?n:t.fee,gasLimit:null!==(r=e.gasLimit)&&void 0!==r?r:t.gasLimit,storageLimit:null!==(i=e.storageLimit)&&void 0!==i?i:t.storageLimit}};class wl extends $c{constructor(e){super(e),this.context=e,Sl.set(this,void 0),Ra(this,Sl,{},"f")}getBlockHash(e){return Oa(this,void 0,void 0,(function*(){return this.context.readProvider.getBlockHash(null!=e?e:"head~2")}))}getProtocolHash(){return Oa(this,void 0,void 0,(function*(){return this.context.readProvider.getNextProtocol("head")}))}getHeadCounter(e){var t;return Oa(this,void 0,void 0,(function*(){return null!==(t=this.context.readProvider.getCounter(e,"head"))&&void 0!==t?t:"0"}))}adjustGasForBatchOperation(e,t,n){return p.A.min(t,e.div(n+1))}getOperationLimits(e,t){return Oa(this,void 0,void 0,(function*(){const{hard_gas_limit_per_operation:n,hard_gas_limit_per_block:r,hard_storage_limit_per_operation:i}=e;return{fee:0,gasLimit:t?Math.floor(this.adjustGasForBatchOperation(r,n,t).toNumber()):n.toNumber(),storageLimit:i.toNumber()}}))}getFee(e,t,n){(!Fa(this,Sl,"f")[t]||Fa(this,Sl,"f")[t]<n)&&(Fa(this,Sl,"f")[t]=n);return{counter:`${++Fa(this,Sl,"f")[t]}`,fee:void 0===e.fee?"0":`${e.fee}`,gas_limit:void 0===e.gas_limit?"0":`${e.gas_limit}`,storage_limit:void 0===e.storage_limit?"0":`${e.storage_limit}`}}getSource(e,t,n){return{source:void 0===e.source?n||t:e.source}}addRevealOperationIfNeeded(e,t){return Oa(this,void 0,void 0,(function*(){if(zc(e)){const n=[e],{publicKey:r,pkh:o}=yield this.getKeys();if(yield this.isAccountRevealRequired(t)){if(!r)throw new i._d(o);return n.unshift(yield wc({fee:sc(o),storageLimit:Xa,gasLimit:ic(o)},t,r)),n}}return e}))}getKeys(){return Oa(this,void 0,void 0,(function*(){const e=this.context.isAnySignerConfigured();return{pkh:e?yield this.signer.publicKeyHash():yield this.context.walletProvider.getPKH(),publicKey:e?yield this.signer.publicKey():void 0}}))}convertIntoArray(e){return Array.isArray(e)?[...e]:[e]}constructOpContents(e,t,n,r,o){return e.map((e=>{switch(e.kind){case A.ACTIVATION:case A.DRAIN_DELEGATE:return Object.assign({},e);case A.ORIGINATION:return Object.assign(Object.assign(Object.assign(Object.assign({},e),{balance:void 0!==e.balance?`${e.balance}`:"0"}),this.getSource(e,n,r)),this.getFee(e,n,t));case A.TRANSACTION:{const o=Object.assign(Object.assign(Object.assign(Object.assign({},e),{amount:void 0!==e.amount?`${e.amount}`:"0"}),this.getSource(e,n,r)),this.getFee(e,n,t));if(o.source.toLowerCase().startsWith("kt1"))throw new i.dy(`KT1 addresses are not supported as source since ${tc.PsBabyM1}`);return o}case A.REVEAL:case A.DELEGATION:case A.REGISTER_GLOBAL_CONSTANT:case A.UPDATE_CONSENSUS_KEY:case A.SMART_ROLLUP_ADD_MESSAGES:case A.SMART_ROLLUP_ORIGINATE:case A.SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE:return Object.assign(Object.assign(Object.assign({},e),this.getSource(e,n,r)),this.getFee(e,n,t));case A.TRANSFER_TICKET:return Object.assign(Object.assign(Object.assign(Object.assign({},e),{ticket_amount:`${e.ticket_amount}`}),this.getSource(e,n,r)),this.getFee(e,n,t));case A.INCREASE_PAID_STORAGE:return Object.assign(Object.assign(Object.assign(Object.assign({},e),{amount:`${e.amount}`}),this.getSource(e,n,r)),this.getFee(e,n,t));case A.BALLOT:case A.PROPOSALS:if(void 0===o)throw new Yc("Failed to get the current voting period index");return Object.assign(Object.assign({},e),{period:null==o?void 0:o.voting_period.index});default:throw new i.$W(e.kind)}}))}activate({pkh:e,secret:t}){return Oa(this,void 0,void 0,(function*(){const n=yield vc({pkh:e,secret:t}),r=this.convertIntoArray(n),i=yield this.getBlockHash(),o=yield this.getProtocolHash();Ra(this,Sl,{},"f");const s=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:i,contents:this.constructOpContents(r,s,e),protocol:o},counter:s}}))}reveal({fee:e,gasLimit:t,storageLimit:n}){return Oa(this,void 0,void 0,(function*(){const{pkh:r,publicKey:o}=yield this.getKeys();if(!o)throw new i._d(r);const s=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.getOperationLimits(s),c=Tl({fee:e,storageLimit:n,gasLimit:t},a),l=yield wc({fee:c.fee,gasLimit:c.gasLimit,storageLimit:c.storageLimit},r,o),u=this.convertIntoArray(l),d=yield this.getBlockHash(),_=yield this.getProtocolHash();Ra(this,Sl,{},"f");const p=parseInt(yield this.getHeadCounter(r),10);return{opOb:{branch:d,contents:this.constructOpContents(u,p,r),protocol:_},counter:p}}))}originate(e,t){var{fee:n,storageLimit:r,gasLimit:i}=e,o=Ma(e,["fee","storageLimit","gasLimit"]);return Oa(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),s=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.getOperationLimits(s),c=yield bc(yield this.context.parser.prepareCodeOrigination(Object.assign(Object.assign({},o),Tl({fee:n,storageLimit:r,gasLimit:i},a)))),l=yield this.addRevealOperationIfNeeded(c,e),u=this.convertIntoArray(l),d=yield this.getBlockHash(),_=yield this.getProtocolHash();Ra(this,Sl,{},"f");const p=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:d,contents:this.constructOpContents(u,p,e,t),protocol:_},counter:p}}))}transaction(e){var{fee:t,storageLimit:n,gasLimit:r}=e,i=Ma(e,["fee","storageLimit","gasLimit"]);return Oa(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),s=yield this.getOperationLimits(o),a=yield xc(Object.assign(Object.assign({},i),Tl({fee:t,storageLimit:n,gasLimit:r},s))),c=yield this.addRevealOperationIfNeeded(a,e),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();Ra(this,Sl,{},"f");const _=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:u,contents:this.constructOpContents(l,_,e,i.source),protocol:d},counter:_}}))}stake(e){var{fee:t,storageLimit:n,gasLimit:r}=e,i=Ma(e,["fee","storageLimit","gasLimit"]);return Oa(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),s=yield this.getOperationLimits(o),a=yield xc(Object.assign(Object.assign(Object.assign(Object.assign({},i),{to:e}),Tl({fee:t,storageLimit:n,gasLimit:r},s)),{parameter:{entrypoint:"stake",value:{prim:"Unit"}}})),c=yield this.addRevealOperationIfNeeded(a,e),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();Ra(this,Sl,{},"f");const _=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:u,contents:this.constructOpContents(l,_,e,i.source),protocol:d},counter:_}}))}unstake(e){var{fee:t,storageLimit:n,gasLimit:r}=e,i=Ma(e,["fee","storageLimit","gasLimit"]);return Oa(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),s=yield this.getOperationLimits(o),a=yield xc(Object.assign(Object.assign(Object.assign(Object.assign({},i),{to:e}),Tl({fee:t,storageLimit:n,gasLimit:r},s)),{parameter:{entrypoint:"unstake",value:{prim:"Unit"}}})),c=yield this.addRevealOperationIfNeeded(a,e),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();Ra(this,Sl,{},"f");const _=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:u,contents:this.constructOpContents(l,_,e,i.source),protocol:d},counter:_}}))}finalizeUnstake(e){var{fee:t,storageLimit:n,gasLimit:r}=e,i=Ma(e,["fee","storageLimit","gasLimit"]);return Oa(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),s=yield this.getOperationLimits(o),a=yield xc(Object.assign(Object.assign(Object.assign(Object.assign({},i),{to:e,amount:0}),Tl({fee:t,storageLimit:n,gasLimit:r},s)),{parameter:{entrypoint:"finalize_unstake",value:{prim:"Unit"}}})),c=yield this.addRevealOperationIfNeeded(a,e),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();Ra(this,Sl,{},"f");const _=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:u,contents:this.constructOpContents(l,_,e,i.source),protocol:d},counter:_}}))}delegation(e){var{fee:t,storageLimit:n,gasLimit:r}=e,i=Ma(e,["fee","storageLimit","gasLimit"]);return Oa(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),s=yield this.getOperationLimits(o),a=yield Sc(Object.assign(Object.assign({},i),Tl({fee:t,storageLimit:n,gasLimit:r},s))),c=yield this.addRevealOperationIfNeeded(a,e),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();Ra(this,Sl,{},"f");const _=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:u,contents:this.constructOpContents(l,_,e,i.source),protocol:d},counter:_}}))}registerDelegate({fee:e,storageLimit:t,gasLimit:n},r){return Oa(this,void 0,void 0,(function*(){const{pkh:i}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),s=yield this.getOperationLimits(o),a=Tl({fee:e,storageLimit:t,gasLimit:n},s),c=yield Tc({fee:a.fee,storageLimit:a.storageLimit,gasLimit:a.gasLimit},i),l=yield this.addRevealOperationIfNeeded(c,i),u=this.convertIntoArray(l),d=yield this.getBlockHash(),_=yield this.getProtocolHash();Ra(this,Sl,{},"f");const p=parseInt(yield this.getHeadCounter(i),10);return{opOb:{branch:d,contents:this.constructOpContents(u,p,i,r),protocol:_},counter:p}}))}registerGlobalConstant(e){var{fee:t,storageLimit:n,gasLimit:r}=e,i=Ma(e,["fee","storageLimit","gasLimit"]);return Oa(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),s=yield this.getOperationLimits(o),a=yield kc(Object.assign(Object.assign({},i),Tl({fee:t,storageLimit:n,gasLimit:r},s))),c=yield this.addRevealOperationIfNeeded(a,e),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();Ra(this,Sl,{},"f");const _=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:u,contents:this.constructOpContents(l,_,e,i.source),protocol:d},counter:_}}))}updateConsensusKey(e,t){var{fee:n,storageLimit:r,gasLimit:i}=e,o=Ma(e,["fee","storageLimit","gasLimit"]);return Oa(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),s=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.getOperationLimits(s),c=yield Dc(Object.assign(Object.assign({},o),Tl({fee:n,storageLimit:r,gasLimit:i},a))),l=yield this.addRevealOperationIfNeeded(c,e),u=this.convertIntoArray(l),d=yield this.getBlockHash(),_=yield this.getProtocolHash();Ra(this,Sl,{},"f");const p=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:d,contents:this.constructOpContents(u,p,e,t),protocol:_},counter:p}}))}increasePaidStorage(e){var{fee:t,storageLimit:n,gasLimit:r}=e,i=Ma(e,["fee","storageLimit","gasLimit"]);return Oa(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),s=yield this.getOperationLimits(o),a=yield Cc(Object.assign(Object.assign({},i),Tl({fee:t,storageLimit:n,gasLimit:r},s))),c=yield this.addRevealOperationIfNeeded(a,e),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();Ra(this,Sl,{},"f");const _=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:u,contents:this.constructOpContents(l,_,e,i.source),protocol:d},counter:_}}))}ballot(e){return Oa(this,void 0,void 0,(function*(){const{pkh:t}=yield this.getKeys(),n=yield Ac(Object.assign({},e)),r=this.convertIntoArray(n),i=yield this.getBlockHash(),o=yield this.getProtocolHash();Ra(this,Sl,{},"f");const s=parseInt(yield this.getHeadCounter(t),10);let a;try{a=yield this.rpc.getCurrentPeriod()}catch(c){throw new Yc("Failed to get the current voting period index")}return{opOb:{branch:i,contents:this.constructOpContents(r,s,t,void 0,a),protocol:o},counter:s}}))}proposals(e){return Oa(this,void 0,void 0,(function*(){const{pkh:t}=yield this.getKeys(),n=yield Ic(Object.assign({},e)),r=this.convertIntoArray(n),i=yield this.getBlockHash(),o=yield this.getProtocolHash();Ra(this,Sl,{},"f");const s=parseInt(yield this.getHeadCounter(t),10);let a;try{a=yield this.rpc.getCurrentPeriod()}catch(c){throw new Yc("Failed to get the current voting period index")}return{opOb:{branch:i,contents:this.constructOpContents(r,s,t,void 0,a),protocol:o},counter:s}}))}drainDelegate(e,t){return Oa(this,void 0,void 0,(function*(){const{pkh:n}=yield this.getKeys(),r=yield Nc(Object.assign({},e)),i=this.convertIntoArray(r),o=yield this.getBlockHash(),s=yield this.getProtocolHash();Ra(this,Sl,{},"f");const a=parseInt(yield this.getHeadCounter(n),10);return{opOb:{branch:o,contents:this.constructOpContents(i,a,n,t),protocol:s},counter:a}}))}transferTicket(e){var{fee:t,storageLimit:n,gasLimit:r}=e,i=Ma(e,["fee","storageLimit","gasLimit"]);return Oa(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),s=yield this.getOperationLimits(o),a=yield Ec(Object.assign(Object.assign({},i),Tl({fee:t,storageLimit:n,gasLimit:r},s))),c=yield this.addRevealOperationIfNeeded(a,e),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();Ra(this,Sl,{},"f");const _=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:u,contents:this.constructOpContents(l,_,e,i.source),protocol:d},counter:_}}))}smartRollupAddMessages(e){var{fee:t,storageLimit:n,gasLimit:r}=e,i=Ma(e,["fee","storageLimit","gasLimit"]);return Oa(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),s=yield this.getOperationLimits(o),a=yield Pc(Object.assign(Object.assign({},i),Tl({fee:t,storageLimit:n,gasLimit:r},s))),c=yield this.addRevealOperationIfNeeded(a,e),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();Ra(this,Sl,{},"f");const _=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:u,contents:this.constructOpContents(l,_,e,i.source),protocol:d},counter:_}}))}smartRollupOriginate(e){var{fee:t,storageLimit:n,gasLimit:r}=e,i=Ma(e,["fee","storageLimit","gasLimit"]);return Oa(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),s=yield this.getOperationLimits(o),a=yield Mc(Object.assign(Object.assign({},Tl({fee:t,storageLimit:n,gasLimit:r},s)),i)),c=yield this.addRevealOperationIfNeeded(a,e),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();Ra(this,Sl,{},"f");const _=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:u,contents:this.constructOpContents(l,_,e,i.source),protocol:d},counter:_}}))}smartRollupExecuteOutboxMessage(e){var{fee:t,storageLimit:n,gasLimit:r}=e,i=Ma(e,["fee","storageLimit","gasLimit"]);return Oa(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),s=yield this.getOperationLimits(o),a=yield Oc(Object.assign(Object.assign({},i),Tl({fee:t,storageLimit:n,gasLimit:r},s))),c=yield this.addRevealOperationIfNeeded(a,e),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();Ra(this,Sl,{},"f");const _=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:u,contents:this.constructOpContents(l,_,e,i.source),protocol:d},counter:_}}))}batch(e,t){return Oa(this,void 0,void 0,(function*(){const{pkh:n,publicKey:r}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),s=yield this.getOperationLimits(o,e.length),a=yield this.isRevealOpNeeded(e,n),c=[];if(t)for(const i of e)if(jc(i)){const e=t.shift(),n=Tl(i,{fee:e.suggestedFeeMutez,storageLimit:e.storageLimit,gasLimit:e.gasLimit});c.push(yield this.getRPCOp(Object.assign(Object.assign({},i),n)))}else c.push(Object.assign({},i));else for(const t of e)if(jc(t)){const e=Tl(t,s);c.push(yield this.getRPCOp(Object.assign(Object.assign({},t),e)))}else c.push(Object.assign({},t));if(a){if(!r)throw new i._d(n);c.unshift(yield wc({fee:sc(n),storageLimit:Xa,gasLimit:ic(n)},n,r))}const l=yield this.getBlockHash(),u=yield this.getProtocolHash();Ra(this,Sl,{},"f");const d=parseInt(yield this.getHeadCounter(n),10);return{opOb:{branch:l,contents:this.constructOpContents(c,d,n),protocol:u},counter:d}}))}contractCall(e){var t,n,r;return Oa(this,void 0,void 0,(function*(){const i=yield this.getBlockHash(),o=yield this.getProtocolHash(),{pkh:s}=yield this.getKeys();Ra(this,Sl,{},"f");const a=parseInt(yield this.getHeadCounter(s),10),c=e.toTransferParams(),l=yield this.context.readProvider.getProtocolConstants("head"),u=yield this.getOperationLimits(l),d=Tl({fee:c.fee,storageLimit:c.storageLimit,gasLimit:c.gasLimit},u),_={kind:A.TRANSACTION,fee:null!==(t=c.fee)&&void 0!==t?t:d.fee,gas_limit:null!==(n=c.gasLimit)&&void 0!==n?n:d.gasLimit,storage_limit:null!==(r=c.storageLimit)&&void 0!==r?r:d.storageLimit,amount:String(c.amount),destination:c.to,parameters:c.parameter},p=yield this.addRevealOperationIfNeeded(_,s),f=this.convertIntoArray(p);return{opOb:{branch:i,contents:this.constructOpContents(f,a,s),protocol:o},counter:a}}))}toPreapply(e){return Oa(this,void 0,void 0,(function*(){const{opOb:{contents:t,branch:n,protocol:r}}=e,i=this.toForge(e),o=yield this.context.forger.forge(i);return[{contents:t,branch:n,protocol:r,signature:(yield this.context.signer.sign(o,new Uint8Array([3]))).prefixSig}]}))}toForge({opOb:{contents:e,branch:t}}){return{branch:t,contents:e}}}Sl=new WeakMap;const kl=[A.ACTIVATION,A.ORIGINATION,A.TRANSACTION,A.DELEGATION];class El extends $c{constructor(e,t){super(e),this.estimator=t,this.operations=[],this.prepare=new wl(this.context)}withTransfer(e){const t=(0,f.jl)(e.to);if(e.amount<0)throw new i.IA(e.amount.toString());if(t!==f.nA.VALID)throw new i.Ms(e.to,(0,f.Z)(t));return this.operations.push(Object.assign({kind:A.TRANSACTION},e)),this}withTransferTicket(e){const t=(0,f.jl)(e.destination);if(t!==f.nA.VALID)throw new i.Ms(e.destination,(0,f.Z)(t));return this.operations.push(Object.assign({kind:A.TRANSFER_TICKET},e)),this}withContractCall(e,t={}){return this.withTransfer(e.toTransferParams(t))}withDelegation(e){var t;const n=(0,f.jl)(e.source);if(e.source&&n!==f.nA.VALID)throw new i.Ms(e.source,(0,f.Z)(n));const r=(0,f.jl)(null!==(t=e.delegate)&&void 0!==t?t:"");if(e.delegate&&r!==f.nA.VALID)throw new i.Ms(e.delegate,(0,f.Z)(r));return this.operations.push(Object.assign({kind:A.DELEGATION},e)),this}withActivation({pkh:e,secret:t}){const n=(0,f._f)(e);if(n!==f.nA.VALID)throw new i.$u(e,(0,f.Z)(n));return this.operations.push({kind:A.ACTIVATION,pkh:e,secret:t}),this}withOrigination(e){return this.operations.push(Object.assign({kind:A.ORIGINATION},e)),this}withRegisterGlobalConstant(e){return this.operations.push(Object.assign({kind:A.REGISTER_GLOBAL_CONSTANT},e)),this}withIncreasePaidStorage(e){return this.operations.push(Object.assign({kind:A.INCREASE_PAID_STORAGE},e)),this}withSmartRollupAddMessages(e){return this.operations.push(Object.assign({kind:A.SMART_ROLLUP_ADD_MESSAGES},e)),this}withSmartRollupOriginate(e){return this.operations.push(Object.assign({kind:A.SMART_ROLLUP_ORIGINATE},e)),this}withSmartRollupExecuteOutboxMessage(e){return this.operations.push(Object.assign({kind:A.SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE},e)),this}getRPCOp(e){return Oa(this,void 0,void 0,(function*(){switch(e.kind){case A.TRANSACTION:return xc(Object.assign({},e));case A.ORIGINATION:return bc(yield this.context.parser.prepareCodeOrigination(Object.assign({},e)));case A.DELEGATION:return Sc(Object.assign({},e));case A.REGISTER_GLOBAL_CONSTANT:return kc(Object.assign({},e));case A.INCREASE_PAID_STORAGE:return Cc(Object.assign({},e));case A.TRANSFER_TICKET:return Ec(Object.assign({},e));case A.SMART_ROLLUP_ADD_MESSAGES:return Pc(Object.assign({},e));case A.SMART_ROLLUP_ORIGINATE:return Mc(Object.assign({},e));case A.SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE:return Oc(Object.assign({},e));default:throw new i.$W(JSON.stringify(e.kind))}}))}with(e){for(const t of e)switch(t.kind){case A.TRANSACTION:this.withTransfer(t);break;case A.ORIGINATION:this.withOrigination(t);break;case A.DELEGATION:this.withDelegation(t);break;case A.ACTIVATION:this.withActivation(t);break;case A.REGISTER_GLOBAL_CONSTANT:this.withRegisterGlobalConstant(t);break;case A.INCREASE_PAID_STORAGE:this.withIncreasePaidStorage(t);break;case A.TRANSFER_TICKET:this.withTransferTicket(t);break;case A.SMART_ROLLUP_ADD_MESSAGES:this.withSmartRollupAddMessages(t);break;case A.SMART_ROLLUP_ORIGINATE:this.withSmartRollupOriginate(t);break;case A.SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE:this.withSmartRollupExecuteOutboxMessage(t);break;default:throw new i.$W(JSON.stringify(t.kind))}return this}send(e){return Oa(this,void 0,void 0,(function*(){const t=yield this.signer.publicKeyHash(),n=e&&e.source||t,r=yield this.estimator.batch(this.operations);r.length!==this.operations.length&&r.shift();const i=yield this.prepare.batch(this.operations,r),o=yield this.forge(i),{hash:s,context:a,forgedBytes:c,opResponse:l}=yield this.signAndInject(o);return new Xc(s,i.opOb.contents,n,c,l,a)}))}}class Cl{constructor(e,t){this.context=e,this.estimator=t}batch(e){const t=new El(this.context,this.estimator);return Array.isArray(e)&&t.with(e),t}}class Nl extends il{constructor(e,t,n){super(e,t,n),this.opHash=e,this.context=t,this.getOriginatedContractAddresses=()=>Oa(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(e){const t=e.filter((e=>"origination"===e.kind));let n=[];for(const e of t)e.metadata.operation_result.originated_contracts&&(n=[...n,...e.metadata.operation_result.originated_contracts]);return n}throw new rl("Unable to fetch operation results")}))}revealOperation(){return Oa(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(e)return e.find((e=>e.kind===A.REVEAL));throw new rl("Unable to fetch operation results")}))}status(){return Oa(this,void 0,void 0,(function*(){if(!this._included)return"pending";const e=yield this.operationResults();if(e)return e.filter((e=>-1!==kl.indexOf(e.kind))).map((e=>{if(Bc(e)){return e.metadata.operation_result.status}return"unknown"}))[0]||"unknown";throw new rl("Unable to fetch operation results")}))}}class Al extends il{constructor(e,t,n){super(e,t,n),this.opHash=e,this.context=t}revealOperation(){return Oa(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(e)return e.find((e=>e.kind===A.REVEAL));throw new rl("Unable to fetch operation result")}))}increasePaidStorageOperation(){return Oa(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(e)return e.find((e=>e.kind===A.INCREASE_PAID_STORAGE));throw new rl("Unable to fetch operation result")}))}status(){return Oa(this,void 0,void 0,(function*(){if(!this._included)return"pending";const e=yield this.increasePaidStorageOperation();return e?e.metadata.operation_result.status:"unknown"}))}}const Il=(e,t,n)=>{return e.pipe((r=1e3*t.config.confirmationPollingTimeoutSecond,function(e){return new _e(null).pipe(_t({each:r,with:()=>pe((()=>new Qc("Confirmation polling timed out")))}),Xe((()=>e)))}),gt({connector:()=>new de(1),resetOnError:!1,resetOnComplete:!1,resetOnRefCountZero:!1}));var r};class Dl{constructor(e){this.context=e,this.sharedHeadObs=ke((()=>Ua(this.context.stream.subscribeBlock("head"))))}createNewHeadObservable(){return Oa(this,void 0,void 0,(function*(){return Il(this.sharedHeadObs,this.context)}))}createPastBlockWalker(e,t=1){return Ue(this.context.readProvider.getBlock(e)).pipe(ut((e=>1===t?Be(e):Ce(e.header.level,t-1).pipe(function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var n=Ie(e);return Me((function(t,r){(n?et(e,t,n):et(e,t)).subscribe(r)}))}(e),ft((e=>Oa(this,void 0,void 0,(function*(){return this.context.readProvider.getBlock("number"==typeof e?e:e.header.level)}))))))))}createHeadObservableFromConfig({blockIdentifier:e}){return Oa(this,void 0,void 0,(function*(){const t=[];return e&&t.push(this.createPastBlockWalker(e)),t.push(yield this.createNewHeadObservable()),et(...t)}))}createOperation(e,t={}){return Oa(this,void 0,void 0,(function*(){return new il(e,this.context.clone(),yield this.createHeadObservableFromConfig(t))}))}createBatchOperation(e,t={}){return Oa(this,void 0,void 0,(function*(){return new Nl(e,this.context.clone(),yield this.createHeadObservableFromConfig(t))}))}createTransactionOperation(e,t={}){return Oa(this,void 0,void 0,(function*(){return new ol(e,this.context.clone(),yield this.createHeadObservableFromConfig(t))}))}createDelegationOperation(e,t={}){return Oa(this,void 0,void 0,(function*(){return new al(e,this.context.clone(),yield this.createHeadObservableFromConfig(t))}))}createOriginationOperation(e,t={}){return Oa(this,void 0,void 0,(function*(){return new sl(e,this.context.clone(),yield this.createHeadObservableFromConfig(t))}))}createIncreasePaidStorageOperation(e,t={}){return Oa(this,void 0,void 0,(function*(){return new Al(e,this.context.clone(),yield this.createHeadObservableFromConfig(t))}))}}class Pl extends $c{constructor(e){super(e),this.prepare=new wl(this.context)}getBalance(e){return Oa(this,void 0,void 0,(function*(){const t=(0,f.jl)(e);if(t!==f.nA.VALID)throw new i.Ms(e,(0,f.Z)(t));return this.context.readProvider.getBalance(e,"head")}))}getDelegate(e){return Oa(this,void 0,void 0,(function*(){const t=(0,f.jl)(e);if(t!==f.nA.VALID)throw new i.Ms(e,(0,f.Z)(t));return this.context.readProvider.getDelegate(e,"head")}))}activate(e,t){return Oa(this,void 0,void 0,(function*(){const n=(0,f._f)(e);if(n!==f.nA.VALID)throw new f.$u(e,(0,f.Z)(n));const r=yield this.prepare.activate({pkh:e,secret:t}),i=yield this.forge(r),o=`${i.opbytes}00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000`;return new Zc(yield this.rpc.injectOperation(o),Object.assign(Object.assign({},i),{opbytes:o}),[],this.context.clone())}))}}const Ml=100;class Ol{constructor(e,t,n,r,i=100){this._milligasLimit=e,this._storageLimit=t,this.opSize=n,this.minimalFeePerStorageByteMutez=r,this.baseFeeMutez=i}get burnFeeMutez(){return this.roundUp(Number(this.storageLimit)*Number(this.minimalFeePerStorageByteMutez))}get storageLimit(){return Math.max(Number(this._storageLimit),0)}get gasLimit(){return this.roundUp(Number(this._milligasLimit)/1e3)}get operationFeeMutez(){return.1*this.gasLimit+1*Number(this.opSize)}roundUp(e){return Math.ceil(Number(e))}get minimalFeeMutez(){return this.roundUp(this.operationFeeMutez+Ml)}get suggestedFeeMutez(){return this.roundUp(this.operationFeeMutez+120)}get usingBaseFeeMutez(){return Math.max(Number(this.baseFeeMutez),Ml)+this.roundUp(this.operationFeeMutez)}get totalCost(){return this.minimalFeeMutez+this.burnFeeMutez}get consumedMilligas(){return Number(this._milligasLimit)}static createEstimateInstanceFromProperties(e){let t,n=0,r=0,i=0,o=0;return e.forEach((e=>{n+=e.milligasLimit,r+=e.storageLimit,i+=e.opSize,o=Math.max(e.minimalFeePerStorageByteMutez,o),e.baseFeeMutez&&(t=t?t+e.baseFeeMutez:e.baseFeeMutez)})),new Ol(n,r,i,o,t)}static createArrayEstimateInstancesFromProperties(e){return e.map((e=>new Ol(e.milligasLimit,e.storageLimit,e.opSize,e.minimalFeePerStorageByteMutez,e.baseFeeMutez)))}}class Fl extends i.IT{constructor(){super(),this.name="RevealEstimateError",this.message="Public key is unknown, unable to estimate the reveal operation in Wallet API."}}class Rl extends $c{constructor(){super(...arguments),this.OP_SIZE_REVEAL=324,this.MILLIGAS_BUFFER=1e5,this.STORAGE_BUFFER=20,this.prepare=new wl(this.context)}getKeys(){return Oa(this,void 0,void 0,(function*(){const e=this.context.isAnySignerConfigured();return{publicKeyHash:e?yield this.signer.publicKeyHash():yield this.context.walletProvider.getPKH(),publicKey:e?yield this.signer.publicKey():void 0}}))}getEstimationPropertiesFromOperationContent(e,t,n,r){const i=Kc({contents:[e]});let o=0,s=0;return i.forEach((e=>{o+=Number(e.consumed_milligas)||0,s+="allocated_destination_contract"in e?r:0,s+="originated_contracts"in e&&Array.isArray(e.originated_contracts)?e.originated_contracts.length*r:0,s+="storage_size"in e&&"global_address"in e&&Number(e.storage_size)||0,s+="paid_storage_size_diff"in e&&Number(e.paid_storage_size_diff)||0,s+="genesis_commitment_hash"in e&&Number(e.size)||0})),jc(e)?{milligasLimit:(a=e,a.kind===A.TRANSACTION&&a.parameters||-1!==["origination","register_global_constant","transfer_ticket","update_consensus_key","smart_rollup_add_messages","smart_rollup_originate"].indexOf(a.kind)?o+Number(this.MILLIGAS_BUFFER):o),storageLimit:s>0?s+this.STORAGE_BUFFER:0,opSize:t,minimalFeePerStorageByteMutez:n.toNumber()}:{milligasLimit:0,storageLimit:0,opSize:t,minimalFeePerStorageByteMutez:n.toNumber(),baseFeeMutez:0};var a}calculateEstimates(e,t){return Oa(this,void 0,void 0,(function*(){const{opbytes:n,opOb:{branch:r,contents:i}}=yield this.forge(e),o={operation:{branch:r,contents:i,signature:"edsigtkpiSSschcaCt9pUVrpNPf7TTcgvgDEDD6NCEHMy8NNQJCGnMfLZzYoQj74yLjo9wx6MPVV29CvVzgi7qEcEUok3k7AuMg"},chain_id:yield this.context.readProvider.getChainId()},{opResponse:s}=yield this.simulate(o),{cost_per_byte:a,origination_size:c}=t,l=[...Jc(s,"backtracked"),...Jc(s)];if(l.length)throw new qc(l,"Error occurred during estimation",s.contents);let u=1;return Array.isArray(e.opOb.contents)&&e.opOb.contents.length>1&&(u="reveal"===s.contents[0].kind?e.opOb.contents.length-1:e.opOb.contents.length),s.contents.map((e=>this.getEstimationPropertiesFromOperationContent(e,"reveal"===e.kind?this.OP_SIZE_REVEAL/2:(n.length+130)/2/u,a,null!=c?c:257)))}))}originate(e){return Oa(this,void 0,void 0,(function*(){const t=yield this.prepare.originate(e),n=yield this.context.readProvider.getProtocolConstants("head"),r=yield this.calculateEstimates(t,n);return"reveal"===t.opOb.contents[0].kind&&(r.shift(),r[0].opSize-=this.OP_SIZE_REVEAL/2),Ol.createEstimateInstanceFromProperties(r)}))}transfer(e){var t,{fee:n,storageLimit:r,gasLimit:o}=e,s=Ma(e,["fee","storageLimit","gasLimit"]);return Oa(this,void 0,void 0,(function*(){const e=(0,f.jl)(s.to);if(e!==f.nA.VALID)throw new i.Ms(s.to,(0,f.Z)(e));const a=(0,f.jl)(null!==(t=s.source)&&void 0!==t?t:"");if(s.source&&a!==f.nA.VALID)throw new i.Ms(s.source,(0,f.Z)(a));if(s.amount<0)throw new i.IA(s.amount.toString());const c=yield this.prepare.transaction(Object.assign({fee:n,storageLimit:r,gasLimit:o},s)),l=yield this.context.readProvider.getProtocolConstants("head"),u=yield this.calculateEstimates(c,l);return"reveal"===c.opOb.contents[0].kind&&(u.shift(),u[0].opSize-=this.OP_SIZE_REVEAL/2),Ol.createEstimateInstanceFromProperties(u)}))}stake(e){var t,{fee:n,storageLimit:r,gasLimit:o}=e,s=Ma(e,["fee","storageLimit","gasLimit"]);return Oa(this,void 0,void 0,(function*(){const e=(0,f.jl)(null!==(t=s.source)&&void 0!==t?t:"");if(s.source&&e!==f.nA.VALID)throw new i.Ms(s.source,(0,f.Z)(e));if(s.to||(s.to=s.source),s.to&&s.to!==s.source)throw new i.dr(s.to);if(s.amount<0)throw new i.IA(s.amount.toString());const a=yield this.prepare.stake(Object.assign({fee:n,storageLimit:r,gasLimit:o},s)),c=yield this.context.readProvider.getProtocolConstants("head"),l=yield this.calculateEstimates(a,c);return"reveal"===a.opOb.contents[0].kind&&(l.shift(),l[0].opSize-=this.OP_SIZE_REVEAL/2),Ol.createEstimateInstanceFromProperties(l)}))}unstake(e){var t,{fee:n,storageLimit:r,gasLimit:o}=e,s=Ma(e,["fee","storageLimit","gasLimit"]);return Oa(this,void 0,void 0,(function*(){const e=(0,f.jl)(null!==(t=s.source)&&void 0!==t?t:"");if(s.source&&e!==f.nA.VALID)throw new i.Ms(s.source,(0,f.Z)(e));if(s.to||(s.to=s.source),s.to&&s.to!==s.source)throw new i.dr(s.to);if(s.amount<0)throw new i.IA(s.amount.toString());const a=yield this.prepare.unstake(Object.assign({fee:n,storageLimit:r,gasLimit:o},s)),c=yield this.context.readProvider.getProtocolConstants("head"),l=yield this.calculateEstimates(a,c);return"reveal"===a.opOb.contents[0].kind&&(l.shift(),l[0].opSize-=this.OP_SIZE_REVEAL/2),Ol.createEstimateInstanceFromProperties(l)}))}finalizeUnstake(e){var t,{fee:n,storageLimit:r,gasLimit:o}=e,s=Ma(e,["fee","storageLimit","gasLimit"]);return Oa(this,void 0,void 0,(function*(){const e=(0,f.jl)(null!==(t=s.source)&&void 0!==t?t:"");if(s.source&&e!==f.nA.VALID)throw new i.Ms(s.source,(0,f.Z)(e));if(s.to||(s.to=s.source),s.to&&s.to!==s.source)throw new i.dr(s.to);if(s.amount||(s.amount=0),void 0!==s.amount&&0!==s.amount)throw new Error("Amount must be 0 for finalize_unstake operation");const a=yield this.prepare.finalizeUnstake(Object.assign({fee:n,storageLimit:r,gasLimit:o},s)),c=yield this.context.readProvider.getProtocolConstants("head"),l=yield this.calculateEstimates(a,c);return"reveal"===a.opOb.contents[0].kind&&(l.shift(),l[0].opSize-=this.OP_SIZE_REVEAL/2),Ol.createEstimateInstanceFromProperties(l)}))}transferTicket(e){var t,{fee:n,storageLimit:r,gasLimit:o}=e,s=Ma(e,["fee","storageLimit","gasLimit"]);return Oa(this,void 0,void 0,(function*(){const e=(0,f.jl)(s.destination);if(e!==f.nA.VALID)throw new i.Ms(s.destination,(0,f.Z)(e));const a=(0,f.jl)(null!==(t=s.source)&&void 0!==t?t:"");if(s.source&&a!==f.nA.VALID)throw new i.Ms(s.source,(0,f.Z)(a));const c=yield this.context.readProvider.getProtocolConstants("head"),l=yield this.prepare.transferTicket(Object.assign({fee:n,storageLimit:r,gasLimit:o},s)),u=yield this.calculateEstimates(l,c);return"reveal"===l.opOb.contents[0].kind&&(u.shift(),u[0].opSize-=this.OP_SIZE_REVEAL/2),Ol.createEstimateInstanceFromProperties(u)}))}setDelegate(e){var t,{fee:n,gasLimit:r,storageLimit:o}=e,s=Ma(e,["fee","gasLimit","storageLimit"]);return Oa(this,void 0,void 0,(function*(){const e=(0,f.jl)(s.source);if(s.source&&e!==f.nA.VALID)throw new i.Ms(s.source,(0,f.Z)(e));const a=(0,f.jl)(null!==(t=s.delegate)&&void 0!==t?t:"");if(s.delegate&&a!==f.nA.VALID)throw new i.Ms(s.delegate,(0,f.Z)(a));const c=yield this.prepare.delegation(Object.assign({fee:n,storageLimit:o,gasLimit:r},s)),l=yield this.context.readProvider.getProtocolConstants("head"),u=yield this.calculateEstimates(c,l);return"reveal"===c.opOb.contents[0].kind&&(u.shift(),u[0].opSize-=this.OP_SIZE_REVEAL/2),Ol.createEstimateInstanceFromProperties(u)}))}batch(e){return Oa(this,void 0,void 0,(function*(){const t=yield this.context.readProvider.getProtocolConstants("head"),n=yield this.prepare.batch(e),r=yield this.calculateEstimates(n,t);return Ol.createArrayEstimateInstancesFromProperties(r)}))}registerDelegate(e,t){var{fee:n,storageLimit:r,gasLimit:i}=e,o=Ma(e,["fee","storageLimit","gasLimit"]);return Oa(this,void 0,void 0,(function*(){const e=(yield this.getKeys()).publicKeyHash,s=yield this.context.readProvider.getProtocolConstants("head"),a=t||e,c=yield this.prepare.registerDelegate(Object.assign({fee:n,storageLimit:r,gasLimit:i},o),a),l=yield this.calculateEstimates(c,s);return"reveal"===c.opOb.contents[0].kind&&(l.shift(),l[0].opSize-=this.OP_SIZE_REVEAL/2),Ol.createEstimateInstanceFromProperties(l)}))}reveal(e){return Oa(this,void 0,void 0,(function*(){const{publicKeyHash:t,publicKey:n}=yield this.getKeys();if(!n)throw new Fl;if(yield this.isAccountRevealRequired(t)){const t=yield this.context.readProvider.getProtocolConstants("head"),n=e?yield this.prepare.reveal(e):yield this.prepare.reveal({}),r=yield this.calculateEstimates(n,t);return Ol.createEstimateInstanceFromProperties(r)}}))}registerGlobalConstant(e){var{fee:t,storageLimit:n,gasLimit:r}=e,i=Ma(e,["fee","storageLimit","gasLimit"]);return Oa(this,void 0,void 0,(function*(){const e=yield this.prepare.registerGlobalConstant(Object.assign({fee:t,storageLimit:n,gasLimit:r},i)),o=yield this.context.readProvider.getProtocolConstants("head"),s=yield this.calculateEstimates(e,o);return"reveal"===e.opOb.contents[0].kind&&(s.shift(),s[0].opSize-=this.OP_SIZE_REVEAL/2),Ol.createEstimateInstanceFromProperties(s)}))}increasePaidStorage(e){var{fee:t,storageLimit:n,gasLimit:r}=e,o=Ma(e,["fee","storageLimit","gasLimit"]);return Oa(this,void 0,void 0,(function*(){if(o.amount<0)throw new i.IA(o.amount.toString());const e=yield this.context.readProvider.getProtocolConstants("head"),s=yield this.prepare.increasePaidStorage(Object.assign({fee:t,storageLimit:n,gasLimit:r},o)),a=yield this.calculateEstimates(s,e);return"reveal"===s.opOb.contents[0].kind&&(a.shift(),a[0].opSize-=this.OP_SIZE_REVEAL/2),Ol.createEstimateInstanceFromProperties(a)}))}updateConsensusKey(e){return Oa(this,void 0,void 0,(function*(){const t=yield this.context.readProvider.getProtocolConstants("head"),n=yield this.prepare.updateConsensusKey(e),r=yield this.calculateEstimates(n,t);return"reveal"===n.opOb.contents[0].kind&&(r.shift(),r[0].opSize-=this.OP_SIZE_REVEAL/2),Ol.createEstimateInstanceFromProperties(r)}))}smartRollupAddMessages(e){return Oa(this,void 0,void 0,(function*(){const t=yield this.context.readProvider.getProtocolConstants("head"),n=yield this.prepare.smartRollupAddMessages(e),r=yield this.calculateEstimates(n,t);return"reveal"===n.opOb.contents[0].kind&&(r.shift(),r[0].opSize-=this.OP_SIZE_REVEAL/2),Ol.createEstimateInstanceFromProperties(r)}))}smartRollupOriginate(e){return Oa(this,void 0,void 0,(function*(){const t=yield this.context.readProvider.getProtocolConstants("head"),n=yield this.prepare.smartRollupOriginate(e),r=yield this.calculateEstimates(n,t);return"reveal"===n.opOb.contents[0].kind&&(r.shift(),r[0].opSize-=this.OP_SIZE_REVEAL/2),Ol.createEstimateInstanceFromProperties(r)}))}smartRollupExecuteOutboxMessage(e){return Oa(this,void 0,void 0,(function*(){const t=yield this.context.readProvider.getProtocolConstants("head"),n=yield this.prepare.smartRollupExecuteOutboxMessage(e),r=yield this.calculateEstimates(n,t);return"reveal"===n.opOb.contents[0].kind&&r.shift(),Ol.createEstimateInstanceFromProperties(r)}))}contractCall(e){return Oa(this,void 0,void 0,(function*(){const t=yield this.context.readProvider.getProtocolConstants("head"),n=yield this.prepare.contractCall(e),r=yield this.calculateEstimates(n,t);return"reveal"===n.opOb.contents[0].kind&&(r.shift(),r[0].opSize-=this.OP_SIZE_REVEAL/2),Ol.createEstimateInstanceFromProperties(r)}))}}class Ll extends Zc{constructor(e,t,n,r,i,o){super(e,r,i,o),this.params=t,this.source=n}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"delegation"===e.kind)),t=e&&e.metadata&&e.metadata.operation_result;return t||void 0}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get delegate(){return this.params.delegate}get isRegisterOperation(){return this.delegate===this.source}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get consumedGas(){return p.g.config({DECIMAL_PLACES:0,ROUNDING_MODE:p.g.ROUND_UP}),this.consumedMilliGas?new p.g(this.consumedMilliGas).dividedBy(1e3).toString():void 0}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}get errors(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.errors}}class jl extends Zc{constructor(e,t,n,r,i,o){super(e,n,r,i),this.params=t,this.contractProvider=o;const s=this.operationResults&&this.operationResults.originated_contracts;Array.isArray(s)&&(this.contractAddress=s[0])}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"origination"===e.kind)),t=e&&Bc(e)&&e.metadata.operation_result;return t||void 0}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get consumedGas(){return p.g.config({DECIMAL_PLACES:0,ROUNDING_MODE:p.g.ROUND_UP}),this.consumedMilliGas?new p.g(this.consumedMilliGas).dividedBy(1e3).toString():void 0}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}get storageDiff(){const e=this.operationResults&&this.operationResults.paid_storage_size_diff;return e||void 0}get storageSize(){const e=this.operationResults&&this.operationResults.storage_size;return e||void 0}get errors(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.errors}contract(e,t){return Oa(this,void 0,void 0,(function*(){if(!this.contractAddress)throw new Wc("No contract was originated in this operation");return yield this.confirmation(e,t),this.contractProvider.at(this.contractAddress)}))}}class zl extends Zc{constructor(e,t,n,r,i,o){super(e,r,i,o),this.params=t,this.source=n,this.globalConstantHash=this.operationResults&&this.operationResults.global_address}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"register_global_constant"===e.kind)),t=e&&e.metadata&&e.metadata.operation_result;return t||void 0}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get registeredExpression(){return this.params.value}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get errors(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.errors}get consumedGas(){return p.g.config({DECIMAL_PLACES:0,ROUNDING_MODE:p.g.ROUND_UP}),this.consumedMilliGas?new p.g(this.consumedMilliGas).dividedBy(1e3).toString():void 0}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}}class Ul extends Zc{constructor(e,t,n,r,i,o){super(e,r,i,o),this.params=t,this.source=n}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"reveal"===e.kind));return e?[e]:[]}get status(){const e=this.operationResults[0];return e?e.metadata.operation_result.status:"unknown"}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get publicKey(){return this.params.public_key}sumProp(e,t){return e.reduce(((e,n)=>t in n?Number(n[t])+e:e),0)}get consumedGas(){return p.g.config({DECIMAL_PLACES:0,ROUNDING_MODE:p.g.ROUND_UP}),new p.g(this.consumedMilliGas).dividedBy(1e3).toString()}get consumedMilliGas(){return String(this.sumProp(Kc({contents:this.operationResults}),"consumed_milligas"))}get storageDiff(){return String(this.sumProp(Kc({contents:this.operationResults}),"paid_storage_size_diff"))}get storageSize(){return String(this.sumProp(Kc({contents:this.operationResults}),"storage_size"))}get errors(){return Jc({contents:this.operationResults})}}class Bl extends Zc{constructor(e,t,n,r,i,o){super(e,r,i,o),this.params=t,this.source=n}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"transaction"===e.kind));return e?[e]:[]}get status(){const e=this.operationResults[0];return e?e.metadata.operation_result.status:"unknown"}get amount(){return new p.A(this.params.amount)}get destination(){return this.params.destination}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}sumProp(e,t){return e.reduce(((e,n)=>t in n?Number(n[t])+e:e),0)}get consumedGas(){return p.A.config({DECIMAL_PLACES:0,ROUNDING_MODE:p.A.ROUND_UP}),new p.A(this.consumedMilliGas).dividedBy(1e3).toString()}get consumedMilliGas(){return String(this.sumProp(Kc({contents:this.operationResults}),"consumed_milligas"))}get storageDiff(){return String(this.sumProp(Kc({contents:this.operationResults}),"paid_storage_size_diff"))}get storageSize(){return String(this.sumProp(Kc({contents:this.operationResults}),"storage_size"))}get errors(){return Jc({contents:this.operationResults})}}class ql extends Zc{constructor(e,t,n,r,i,o){super(e,r,i,o),this.params=t,this.source=n}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"increase_paid_storage"===e.kind)),t=e&&e.metadata&&e.metadata.operation_result;return t||void 0}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get errors(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.errors}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}get amount(){return this.params.amount}get destination(){return this.params.destination}}class Vl extends Zc{constructor(e,t,n,r,i,o){super(e,r,i,o),this.params=t,this.source=n}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"update_consensus_key"===e.kind)),t=e&&e.metadata&&e.metadata.operation_result;return t||void 0}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get pk(){return this.params.pk}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}get errors(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.errors}}class Kl extends Zc{constructor(e,t,n,r,i,o){super(e,r,i,o),this.params=t,this.source=n}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"smart_rollup_add_messages"===e.kind)),t=e&&e.metadata&&e.metadata.operation_result;return t||void 0}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get message(){return this.params.message}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}get errors(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.errors}}class Jl extends Zc{constructor(e,t,n,r,i,o){super(e,r,i,o),this.params=t,this.source=n}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>e.kind===A.SMART_ROLLUP_ORIGINATE)),t=e&&e.metadata&&e.metadata.operation_result;return t||void 0}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}get pvmKind(){return this.params.pvm_kind}get kernel(){return this.params.kernel}get errors(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.errors}}class Wl extends Zc{constructor(e,t,n,r,i,o){super(e,r,i,o),this.params=t,this.source=n}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"ballot"===e.kind));return e||void 0}get period(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.period}get proposal(){return this.params.proposal}get ballot(){return this.params.ballot}}class Hl extends Zc{constructor(e,t,n,r,i){super(e,n,r,i),this.params=t}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"drain_delegate"===e.kind)),t=e&&e.metadata&&e.metadata.balance_updates;return t||void 0}get consensusKey(){return this.params.consensus_key}get delegate(){return this.params.delegate}get destination(){return this.params.destination}}class Gl extends Zc{constructor(e,t,n,r,i,o){super(e,r,i,o),this.params=t,this.source=n}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"proposals"===e.kind));return e||void 0}get proposals(){return this.params.proposals}get period(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.period}}class Ql extends Zc{constructor(e,t,n,r,i,o){super(e,r,i,o),this.params=t,this.source=n}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>e.kind===A.TRANSFER_TICKET)),t=e&&e.metadata&&e.metadata.operation_result;return t||void 0}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get consumedGas(){return p.g.config({DECIMAL_PLACES:0,ROUNDING_MODE:p.g.ROUND_UP}),this.consumedMilliGas?new p.g(this.consumedMilliGas).dividedBy(1e3).toString():void 0}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}}class Yl extends Zc{constructor(e,t,n,r,i,o){super(e,r,i,o),this.params=t,this.source=n}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>e.kind===A.SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE)),t=e&&e.metadata&&e.metadata.operation_result;return t||void 0}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get rollup(){return this.params.rollup}get cementedCommitment(){return this.params.cemented_commitment}get outputProof(){return this.params.output_proof}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}get errors(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.errors}}class Zl extends $c{constructor(e,t){super(e),this.estimator=t,this.contractProviderTypeSymbol=Symbol.for("taquito-contract-provider-type-symbol"),this.prepare=new wl(this.context)}getStorage(e,t){return Oa(this,void 0,void 0,(function*(){const n=(0,f.Lg)(e);if(n!==f.nA.VALID)throw new i.mC(e,(0,f.Z)(n));const r=yield this.context.readProvider.getScript(e,"head");let o;return t||(t=r),o=Tr.isSchema(t)?t:Tr.fromRPCResponse({script:t}),o.Execute(r.storage,xl(this))}))}getBigMapKey(e,t,n){return Oa(this,void 0,void 0,(function*(){const r=(0,f.Lg)(e);if(r!==f.nA.VALID)throw new i.mC(e,(0,f.Z)(r));let o;n||(n=(yield this.rpc.getContract(e)).script),o=Tr.isSchema(n)?n:Tr.fromRPCResponse({script:n});const s=o.EncodeBigMapKey(t),a=yield this.rpc.getBigMapKey(e,s);return o.ExecuteOnBigMapValue(a)}))}getBigMapKeyByID(e,t,n,r){return Oa(this,void 0,void 0,(function*(){const{key:i,type:o}=n.EncodeBigMapKey(t),{packed:s}=yield this.context.packer.packData({data:i,type:o}),a=(0,f.Ad)(s),c=r?yield this.context.readProvider.getBigMapValue({id:e.toString(),expr:a},r):yield this.context.readProvider.getBigMapValue({id:e.toString(),expr:a},"head");return n.ExecuteOnBigMapValue(c,xl(this))}))}getBigMapKeysByID(e,t,n,r,i=5){return Oa(this,void 0,void 0,(function*(){const o=yield this.getBlockForRequest(t,r),s=new Bt;let a=0,c=[];for(;a<t.length;){const r=t.slice(a,a+i).map((t=>this.getBigMapValueOrUndefined(t,e,n,o)));c=[...c,...yield Promise.all(r)],a+=i}for(let e=0;e<c.length;e++)s.set(t[e],c[e]);return s}))}getBlockForRequest(e,t){return Oa(this,void 0,void 0,(function*(){return 1===e.length||void 0!==t?t:yield this.context.readProvider.getBlockLevel("head")}))}getBigMapValueOrUndefined(e,t,n,i){return Oa(this,void 0,void 0,(function*(){try{return yield this.getBigMapKeyByID(t,e,n,i)}catch(o){if(o instanceof c&&o.status===r.NOT_FOUND)return;throw o}}))}getSaplingDiffByID(e,t){return Oa(this,void 0,void 0,(function*(){return t?yield this.context.readProvider.getSaplingDiffById({id:e.toString()},t):yield this.context.readProvider.getSaplingDiffById({id:e.toString()},"head")}))}originate(e){return Oa(this,void 0,void 0,(function*(){const t=yield this.estimate(e,this.estimator.originate.bind(this.estimator)),n=yield this.prepare.originate(Object.assign(Object.assign({},e),t)),r=n.opOb.contents.find((e=>e.kind===A.ORIGINATION)),i=yield this.forge(n),{hash:o,context:s,forgedBytes:a,opResponse:c}=yield this.signAndInject(i);return new jl(o,r,a,c,s,this)}))}setDelegate(e){var t;return Oa(this,void 0,void 0,(function*(){const n=(0,f.jl)(e.source);if(e.source&&n!==f.nA.VALID)throw new i.Ms(e.source,(0,f.Z)(n));const r=(0,f.jl)(null!==(t=e.delegate)&&void 0!==t?t:"");if(e.delegate&&r!==f.nA.VALID)throw new i.Ms(e.delegate,(0,f.Z)(r));if(/kt1/i.test(e.source))throw new lc(e.source);const o=yield this.signer.publicKeyHash(),s=e.source||o,a=yield this.estimate(e,this.estimator.setDelegate.bind(this.estimator)),c=yield this.prepare.delegation(Object.assign(Object.assign({},e),a)),l=c.opOb.contents.find((e=>e.kind===A.DELEGATION)),u=yield this.forge(c),{hash:d,context:_,forgedBytes:p,opResponse:m}=yield this.signAndInject(u);return new Ll(d,l,s,p,m,_)}))}registerDelegate(e){return Oa(this,void 0,void 0,(function*(){const t=yield this.estimate(e,this.estimator.registerDelegate.bind(this.estimator)),n=yield this.signer.publicKeyHash(),r=yield this.prepare.registerDelegate(Object.assign(Object.assign({},e),t)),i=r.opOb.contents.find((e=>e.kind===A.DELEGATION)),o=yield this.forge(r),{hash:s,context:a,forgedBytes:c,opResponse:l}=yield this.signAndInject(o);return new Ll(s,i,n,c,l,a)}))}transfer(e){var t;return Oa(this,void 0,void 0,(function*(){const n=(0,f.jl)(e.to);if(n!==f.nA.VALID)throw new i.Ms(e.to,(0,f.Z)(n));const r=(0,f.jl)(null!==(t=e.source)&&void 0!==t?t:"");if(e.source&&r!==f.nA.VALID)throw new i.Ms(e.source,(0,f.Z)(r));if(e.amount<0)throw new i.IA(e.amount.toString());const o=yield this.signer.publicKeyHash(),s=yield this.estimate(e,this.estimator.transfer.bind(this.estimator)),a=e.source||o,c=yield this.prepare.transaction(Object.assign(Object.assign({},e),s)),l=c.opOb.contents.find((e=>e.kind===A.TRANSACTION)),u=yield this.forge(c),{hash:d,context:_,forgedBytes:p,opResponse:m}=yield this.signAndInject(u);return new Bl(d,l,a,p,m,_)}))}stake(e){var t;return Oa(this,void 0,void 0,(function*(){const n=(0,f.jl)(null!==(t=e.source)&&void 0!==t?t:"");if(e.source&&n!==f.nA.VALID)throw new i.Ms(e.source,(0,f.Z)(n));if(e.to||(e.to=e.source),e.to&&e.to!==e.source)throw new i.dr(e.to);if(e.amount<0)throw new i.IA(e.amount.toString());const r=yield this.signer.publicKeyHash(),o=yield this.estimate(e,this.estimator.stake.bind(this.estimator)),s=e.source||r,a=yield this.prepare.stake(Object.assign(Object.assign({},e),o)),c=a.opOb.contents.find((e=>e.kind===A.TRANSACTION)),l=yield this.forge(a),{hash:u,context:d,forgedBytes:_,opResponse:p}=yield this.signAndInject(l);return new Bl(u,c,s,_,p,d)}))}unstake(e){var t;return Oa(this,void 0,void 0,(function*(){const n=(0,f.jl)(null!==(t=e.source)&&void 0!==t?t:"");if(e.source&&n!==f.nA.VALID)throw new i.Ms(e.source,(0,f.Z)(n));if(e.to||(e.to=e.source),e.to&&e.to!==e.source)throw new i.dr(e.to);if(e.amount<0)throw new i.IA(e.amount.toString());const r=yield this.signer.publicKeyHash(),o=yield this.estimate(e,this.estimator.unstake.bind(this.estimator)),s=e.source||r,a=yield this.prepare.unstake(Object.assign(Object.assign({},e),o)),c=a.opOb.contents.find((e=>e.kind===A.TRANSACTION)),l=yield this.forge(a),{hash:u,context:d,forgedBytes:_,opResponse:p}=yield this.signAndInject(l);return new Bl(u,c,s,_,p,d)}))}finalizeUnstake(e){var t;return Oa(this,void 0,void 0,(function*(){const n=(0,f.jl)(null!==(t=e.source)&&void 0!==t?t:"");if(e.source&&n!==f.nA.VALID)throw new i.Ms(e.source,(0,f.Z)(n));if(e.to||(e.to=e.source),e.to&&e.to!==e.source)throw new i.dr(e.to);if(e.amount||(e.amount=0),void 0!==e.amount&&e.amount>0)throw new i.LJ("Amount must be 0 to finalize unstake.");const r=yield this.signer.publicKeyHash(),o=yield this.estimate(e,this.estimator.finalizeUnstake.bind(this.estimator)),s=e.source||r,a=yield this.prepare.finalizeUnstake(Object.assign(Object.assign({},e),o)),c=a.opOb.contents.find((e=>e.kind===A.TRANSACTION)),l=yield this.forge(a),{hash:u,context:d,forgedBytes:_,opResponse:p}=yield this.signAndInject(l);return new Bl(u,c,s,_,p,d)}))}transferTicket(e){var t,n;return Oa(this,void 0,void 0,(function*(){const r=(0,f.jl)(e.destination);if(r!==f.nA.VALID)throw new i.Ms(e.destination,(0,f.Z)(r));const o=(0,f.jl)(null!==(t=e.source)&&void 0!==t?t:"");if(e.source&&o!==f.nA.VALID)throw new i.Ms(e.source,(0,f.Z)(o));const s=yield this.signer.publicKeyHash(),a=null!==(n=e.source)&&void 0!==n?n:s,c=yield this.estimate(e,this.estimator.transferTicket.bind(this.estimator)),l=yield this.prepare.transferTicket(Object.assign(Object.assign({},e),c)),u=l.opOb.contents.find((e=>e.kind===A.TRANSFER_TICKET)),d=yield this.forge(l),{hash:_,context:p,forgedBytes:m,opResponse:h}=yield this.signAndInject(d);return new Ql(_,u,a,m,h,p)}))}reveal(e){return Oa(this,void 0,void 0,(function*(){const t=yield this.signer.publicKeyHash(),n=yield this.estimator.reveal(e);if(n){const r=yield this.estimate(e,(()=>Oa(this,void 0,void 0,(function*(){return n})))),i=yield this.prepare.reveal(Object.assign(Object.assign({},e),r)),o=i.opOb.contents.find((e=>e.kind===A.REVEAL)),s=yield this.forge(i),{hash:a,context:c,forgedBytes:l,opResponse:u}=yield this.signAndInject(s);return new Ul(a,o,t,l,u,c)}throw new hc(`The publicKeyHash '${t}' has already been revealed.`)}))}registerGlobalConstant(e){return Oa(this,void 0,void 0,(function*(){const t=yield this.signer.publicKeyHash(),n=yield this.estimate(e,this.estimator.registerGlobalConstant.bind(this.estimator)),r=yield this.prepare.registerGlobalConstant(Object.assign(Object.assign({},e),n)),i=r.opOb.contents.find((e=>e.kind===A.REGISTER_GLOBAL_CONSTANT)),o=yield this.forge(r),{hash:s,context:a,forgedBytes:c,opResponse:l}=yield this.signAndInject(o);return new zl(s,i,t,c,l,a)}))}increasePaidStorage(e){return Oa(this,void 0,void 0,(function*(){if(e.amount<0)throw new i.IA(e.amount.toString());const t=yield this.signer.publicKeyHash(),n=yield this.estimate(e,this.estimator.increasePaidStorage.bind(this.estimator)),r=yield this.prepare.increasePaidStorage(Object.assign(Object.assign({},e),n)),o=r.opOb.contents.find((e=>e.kind===A.INCREASE_PAID_STORAGE)),s=yield this.forge(r),{hash:a,context:c,forgedBytes:l,opResponse:u}=yield this.signAndInject(s);return new ql(a,o,t,l,u,c)}))}drainDelegate(e){return Oa(this,void 0,void 0,(function*(){const t=yield this.prepare.drainDelegate(e),n=t.opOb.contents.find((e=>e.kind===A.DRAIN_DELEGATE)),r=yield this.forge(t),{hash:i,context:o,forgedBytes:s,opResponse:a}=yield this.signAndInject(r);return new Hl(i,n,s,a,o)}))}ballot(e){var t,n;return Oa(this,void 0,void 0,(function*(){const r=yield this.signer.publicKeyHash(),o=(0,f.jl)(null!==(t=e.source)&&void 0!==t?t:"");if(e.source&&o!==f.nA.VALID)throw new i.Ms(e.source,(0,f.Z)(o));const s=null!==(n=e.source)&&void 0!==n?n:r,a=yield this.prepare.ballot(Object.assign(Object.assign({},e),{source:s})),c=a.opOb.contents.find((e=>e.kind===A.BALLOT)),l=yield this.forge(a),{hash:u,context:d,forgedBytes:_,opResponse:p}=yield this.signAndInject(l);return new Wl(u,c,r,_,p,d)}))}proposals(e){var t,n;return Oa(this,void 0,void 0,(function*(){const r=yield this.signer.publicKeyHash(),o=(0,f.jl)(null!==(t=e.source)&&void 0!==t?t:"");if(e.source&&o!==f.nA.VALID)throw new i.Ms(e.source,(0,f.Z)(o));const s=null!==(n=e.source)&&void 0!==n?n:r,a=yield this.prepare.proposals(Object.assign(Object.assign({},e),{source:s})),c=a.opOb.contents.find((e=>e.kind===A.PROPOSALS)),l=yield this.forge(a),{hash:u,context:d,forgedBytes:_,opResponse:p}=yield this.signAndInject(l);return new Gl(u,c,r,_,p,d)}))}updateConsensusKey(e){return Oa(this,void 0,void 0,(function*(){const t=yield this.signer.publicKeyHash(),n=yield this.estimate(e,this.estimator.updateConsensusKey.bind(this.estimator)),r=yield this.prepare.updateConsensusKey(Object.assign(Object.assign({},e),n)),i=r.opOb.contents.find((e=>e.kind===A.UPDATE_CONSENSUS_KEY)),o=yield this.forge(r),{hash:s,context:a,forgedBytes:c,opResponse:l}=yield this.signAndInject(o);return new Vl(s,i,t,c,l,a)}))}smartRollupAddMessages(e){return Oa(this,void 0,void 0,(function*(){const t=yield this.signer.publicKeyHash(),n=yield this.estimate(e,this.estimator.smartRollupAddMessages.bind(this.estimator)),r=yield this.prepare.smartRollupAddMessages(Object.assign(Object.assign({},e),n)),i=r.opOb.contents.find((e=>e.kind===A.SMART_ROLLUP_ADD_MESSAGES)),o=yield this.forge(r),{hash:s,context:a,forgedBytes:c,opResponse:l}=yield this.signAndInject(o);return new Kl(s,i,t,c,l,a)}))}smartRollupOriginate(e){return Oa(this,void 0,void 0,(function*(){const t=yield this.signer.publicKeyHash(),n=yield this.estimate(e,this.estimator.smartRollupOriginate.bind(this.estimator)),r=yield this.prepare.smartRollupOriginate(Object.assign(Object.assign({},e),n)),i=r.opOb.contents.find((e=>e.kind===A.SMART_ROLLUP_ORIGINATE)),o=yield this.forge(r),{hash:s,context:a,forgedBytes:c,opResponse:l}=yield this.signAndInject(o);return new Jl(s,i,t,c,l,a)}))}smartRollupExecuteOutboxMessage(e){return Oa(this,void 0,void 0,(function*(){const t=yield this.signer.publicKeyHash(),n=yield this.estimate(e,this.estimator.smartRollupExecuteOutboxMessage.bind(this.estimator)),r=yield this.prepare.smartRollupExecuteOutboxMessage(Object.assign(Object.assign({},e),n)),i=r.opOb.contents.find((e=>e.kind===A.SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE)),o=yield this.forge(r),{hash:s,context:a,forgedBytes:c,opResponse:l}=yield this.signAndInject(o);return new Yl(s,i,t,c,l,a)}))}failingNoop(e){return Oa(this,void 0,void 0,(function*(){const t={kind:A.FAILING_NOOP,arbitrary:e.arbitrary},n=yield this.context.readProvider.getBlockHash(e.basedOnBlock),r=yield this.context.forger.forge({branch:n,contents:[t]}),{prefixSig:i}=yield this.signer.sign(r,new Uint8Array([3]));return{signature:i,bytes:r,signedContent:{branch:n,contents:[{kind:A.FAILING_NOOP,arbitrary:e.arbitrary}]}}}))}at(e,t=(e=>e)){return Oa(this,void 0,void 0,(function*(){const n=(0,f.Lg)(e);if(n!==f.nA.VALID)throw new i.mC(e,(0,f.Z)(n));const r=this.context.withExtensions().rpc,o=this.context.withExtensions().readProvider,s=yield o.getScript(e,"head"),a=yield o.getEntrypoints(e),c=new ml(e,s,this,this,a,r,o);return t(c,this.context)}))}batch(e){const t=new El(this.context,this.estimator);return Array.isArray(e)&&t.with(e),t}}class Xl{constructor(e){this.context=e}getNextProto(){return Oa(this,void 0,void 0,(function*(){if(!this.context.proto){const e=yield this.context.readProvider.getNextProtocol("head");this.context.proto=e}return this.context.proto}))}parseScript(e){return Oa(this,void 0,void 0,(function*(){return new ui({protocol:yield this.getNextProto()}).parseScript(e)}))}parseMichelineExpression(e){return Oa(this,void 0,void 0,(function*(){return new ui({protocol:yield this.getNextProto()}).parseMichelineExpression(e)}))}parseJSON(e){return Oa(this,void 0,void 0,(function*(){return new ui({protocol:yield this.getNextProto()}).parseJSON(e)}))}prepareCodeOrigination(e){return Oa(this,void 0,void 0,(function*(){const t=e;if(t.code=yield this.formatCodeParam(e.code),e.init)t.init=yield this.formatInitParam(e.init);else if(e.storage){const n=t.code.find((e=>"prim"in e&&"storage"===e.prim));if(!(null==n?void 0:n.args))throw new uc("The storage section is missing from the script",e.code);const r=new Tr(n.args[0]),i=yield this.findGlobalConstantsHashAndValue(r);if(0!==Object.keys(i).length){const r=new ui({expandGlobalConstant:i}).parseJSON(n.args[0]),o=new Tr(r);t.init=o.Encode(e.storage)}else t.init=r.Encode(e.storage);delete t.storage}return t}))}formatCodeParam(e){return Oa(this,void 0,void 0,(function*(){let t;if("string"==typeof e){const n=yield this.parseScript(e);if(null===n)throw new uc("Unable to parse",e);t=n}else{const n=yield this.parseJSON(e),r=["parameter","storage","code"];t=n.sort(((e,t)=>r.indexOf(e.prim)-r.indexOf(t.prim)))}return t}))}formatInitParam(e){return Oa(this,void 0,void 0,(function*(){let t;if("string"==typeof e){const n=yield this.parseMichelineExpression(e);if(null===n)throw new dc("Invalid init parameter",e);t=n}else t=yield this.parseJSON(e);return t}))}findGlobalConstantsHashAndValue(e){return Oa(this,void 0,void 0,(function*(){const t=e.findToken("constant"),n={};if(0!==t.length)for(const e of t){const t=e.tokenVal.args;if(t){const e=t[0];if(e.string){const t=e.string,r=yield this.context.globalConstantsProvider.getGlobalConstantByHash(t);Object.assign(n,{[t]:r})}}}return n}))}}class $l{constructor(e){this.context=e}packData(e){return Oa(this,void 0,void 0,(function*(){return this.context.rpc.packData(e)}))}}class eu extends i.IT{constructor(e){super(),this.hash=e,this.name="GlobalConstantNotFound",this.message=`Please load the value associated with the constant ${e} using the loadGlobalConstant method of the DefaultGlobalConstantsProvider.`}}class tu extends i.Q1{constructor(){super(),this.name="UnconfiguredGlobalConstantsProviderError",this.message="No global constants provider has been configured. Please configure one by calling setGlobalConstantsProvider({globalConstantsProvider}) on your TezosToolkit instance."}}class nu{getGlobalConstantByHash(e){return Oa(this,void 0,void 0,(function*(){throw new tu}))}}class ru{constructor(e){this.rpc=e}getBalance(e,t){return Oa(this,void 0,void 0,(function*(){return this.rpc.getBalance(e,{block:String(t)})}))}getDelegate(e,t){return Oa(this,void 0,void 0,(function*(){return this.rpc.getDelegate(e,{block:String(t)})}))}getNextProtocol(e){return Oa(this,void 0,void 0,(function*(){return(yield this.rpc.getProtocols({block:String(e)})).next_protocol}))}getProtocolConstants(e){return Oa(this,void 0,void 0,(function*(){const{time_between_blocks:t,minimal_block_delay:n,hard_gas_limit_per_operation:r,hard_gas_limit_per_block:i,hard_storage_limit_per_operation:o,cost_per_byte:s,smart_rollup_origination_size:a}=yield this.rpc.getConstants({block:String(e)});return{time_between_blocks:t,minimal_block_delay:n,hard_gas_limit_per_operation:r,hard_gas_limit_per_block:i,hard_storage_limit_per_operation:o,cost_per_byte:s,smart_rollup_origination_size:a}}))}getScript(e,t){return Oa(this,void 0,void 0,(function*(){const{script:n}=yield this.rpc.getContract(e,{block:String(t)});return n}))}getStorage(e,t){return Oa(this,void 0,void 0,(function*(){return this.rpc.getStorage(e,{block:String(t)})}))}getBlockHash(e){return Oa(this,void 0,void 0,(function*(){const{hash:t}=yield this.rpc.getBlockHeader({block:String(e)});return t}))}getBlockLevel(e){return Oa(this,void 0,void 0,(function*(){const{level:t}=yield this.rpc.getBlockHeader({block:String(e)});return t}))}getCounter(e,t){return Oa(this,void 0,void 0,(function*(){const{counter:n}=yield this.rpc.getContract(e,{block:String(t)});return n||"0"}))}getBlockTimestamp(e){return Oa(this,void 0,void 0,(function*(){const{timestamp:t}=yield this.rpc.getBlockHeader({block:String(e)});return t}))}getBigMapValue(e,t){return Oa(this,void 0,void 0,(function*(){return this.rpc.getBigMapExpr(e.id,e.expr,{block:String(t)})}))}getSaplingDiffById(e,t){return Oa(this,void 0,void 0,(function*(){return this.rpc.getSaplingDiffById(e.id,{block:String(t)})}))}getSaplingDiffByContract(e,t){return Oa(this,void 0,void 0,(function*(){return this.rpc.getSaplingDiffByContract(e,{block:String(t)})}))}getEntrypoints(e){return Oa(this,void 0,void 0,(function*(){return this.rpc.getEntrypoints(e)}))}getChainId(){return Oa(this,void 0,void 0,(function*(){return this.rpc.getChainId()}))}isAccountRevealed(e,t){return Oa(this,void 0,void 0,(function*(){const n=yield this.rpc.getManagerKey(e,{block:String(t)});return n&&"object"==typeof n?!!n.key:!!n}))}getBlock(e){return Oa(this,void 0,void 0,(function*(){return this.rpc.getBlock({block:String(e)})}))}getLiveBlocks(e){return this.rpc.getLiveBlocks({block:String(e)})}getAdaptiveIssuanceLaunchCycle(e){return this.rpc.getAdaptiveIssuanceLaunchCycle({block:String(e)})}}class iu extends i.Xi{constructor(e){super(),this.type=e,this.name="UnsupportedEventError",this.message=`Unsupported event type "${e}" expecting one of the "data", "error", or "close".`}}class ou extends i.Xi{constructor(e){super(),this.invalidExpression=e,this.name="InvalidFilterExpressionError",this.message="Invalid filter expression expecting the object to contain either and/or property"}}const su=(e,t)=>"opHash"in t?((e,t)=>e.hash===t.opHash)(e,t):"source"in t?((e,t)=>{switch(e.kind){case"attestation":case"endorsement":return"metadata"in e&&e.metadata.delegate===t.source;case"activate_account":return"metadata"in e&&e.pkh===t.source;default:return"source"in e&&e.source===t.source}})(e,t):"kind"in t?((e,t)=>"kind"in e&&e.kind===t.kind)(e,t):"destination"in t&&((e,t)=>{switch(e.kind){case"delegation":return e.delegate===t.destination;case"origination":if("metadata"in e&&"operation_result"in e.metadata&&"originated_contracts"in e.metadata.operation_result&&Array.isArray(e.metadata.operation_result.originated_contracts))return e.metadata.operation_result.originated_contracts.some((e=>e===t.destination));break;case"transaction":return e.destination===t.destination;default:return!1}})(e,t),au=(e,t)=>{const n=[];return Array.isArray(t)?n.push(...t):n.push(t),n.every((t=>"and"in t||"or"in t?((e,t)=>{if(Array.isArray(t.and))return t.and.every((t=>au(e,t)));if(Array.isArray(t.or))return t.or.some((t=>au(e,t)));throw new ou(t)})(e,t):su(e,t)))};class cu{constructor(e,t=!1,n=Ct()){var r;this.shouldRetry=t,this.operatorFunction=n,this.errorListeners=[],this.messageListeners=[],this.closeListeners=[],this.completed$=new ce,e.pipe((r=this.completed$,Me((function(e,t){Te(r).subscribe(Oe(t,(function(){return t.complete()}),V)),!t.closed&&e.subscribe(t)}))),ht((e=>{this.call(this.messageListeners,e)}),(e=>{this.call(this.errorListeners,e)}),(()=>{this.call(this.closeListeners)})),this.shouldRetry?n:ht(),wt((()=>tt))).subscribe()}call(e,t){for(const r of e)try{r(t)}catch(n){Pa.error(n)}}remove(e,t){const n=e.indexOf(t);-1!==n&&e.splice(n,1)}on(e,t){switch(e){case"data":this.messageListeners.push(t);break;case"error":this.errorListeners.push(t);break;case"close":this.closeListeners.push(t);break;default:throw new iu(e)}}off(e,t){switch(e){case"data":this.remove(this.messageListeners,t);break;case"error":this.remove(this.errorListeners,t);break;case"close":this.remove(this.closeListeners,t);break;default:throw new iu(e)}}close(){this.completed$.next()}}const lu={shouldObservableSubscriptionRetry:!1,observableSubscriptionRetryFunction:Ct()},uu=e=>ft((t=>new oe((n=>{for(const a of t.operations)for(const c of a)for(const a of c.contents){const l=a.metadata.internal_operation_results;if(l)for(const a of l)r=a,i=null==e?void 0:e.address,o=null==e?void 0:e.tag,s=null==e?void 0:e.excludeFailedOperations,"event"!==r.kind||o&&r.tag!==o||i&&r.source!==i||s&&"applied"!==r.result.status||n.next(Object.assign({opHash:c.hash,blockHash:t.hash,level:t.header.level},a))}var r,i,o,s;n.complete()}))));class du{constructor(e,t={}){var n,r;this.context=e,this._config$=new _e(Object.assign(Object.assign({},lu),t)),this.timer$=this._config$.pipe(Nt("pollingIntervalMilliseconds"),ut((e=>e?lt(0,e):Ue(this.getConfirmationPollingInterval()).pipe(ut((e=>lt(0,e))))))),this.newBlock$=this.timer$.pipe(ut((()=>(e=>Ue(e.rpc.getBlock()).pipe(Tt()))(this.context))),(n="hash",kt((function(e,t){return r?r(e[n],t[n]):e[n]===t[n]}))),Mt(),At())}get config(){return this._config$.getValue()}getConfirmationPollingInterval(){return Oa(this,void 0,void 0,(function*(){if(!this.config.pollingIntervalMilliseconds){const t=5e3,n=1e3;try{const e=yield this.context.readProvider.getProtocolConstants("head"),r=(e.minimal_block_delay?e.minimal_block_delay.multipliedBy(1e3):e.time_between_blocks?e.time_between_blocks[0].multipliedBy(1e3):new p.A(t)).dividedBy(3);this.config.pollingIntervalMilliseconds=0===r.toNumber()?n:r.toNumber()}catch(e){return t}}return this.config.pollingIntervalMilliseconds}))}subscribeBlock(e){return new cu(this.newBlock$,this.config.shouldObservableSubscriptionRetry,this.config.observableSubscriptionRetryFunction)}subscribe(e){return new cu(this.newBlock$.pipe(Nt("hash")),this.config.shouldObservableSubscriptionRetry,this.config.observableSubscriptionRetryFunction)}subscribeOperation(e){return new cu(this.newBlock$.pipe((e=>ft((t=>new oe((n=>{for(const r of t.operations)for(const t of r)for(const r of t.contents)au(Object.assign({hash:t.hash},r),e)&&n.next(Object.assign({hash:t.hash},r));n.complete()})))))(e)),this.config.shouldObservableSubscriptionRetry,this.config.observableSubscriptionRetryFunction)}subscribeEvent(e){return new cu(this.newBlock$.pipe(uu(e)),this.config.shouldObservableSubscriptionRetry,this.config.observableSubscriptionRetryFunction)}}class _u{constructor(e){this.context=e}getNextProto(){return Oa(this,void 0,void 0,(function*(){if(!this.context.proto){const e=yield this.context.readProvider.getNextProtocol("head");this.context.proto=e}return this.context.proto}))}forge({branch:e,contents:t}){return Oa(this,void 0,void 0,(function*(){return new Da(yield this.getNextProto()).forge({branch:e,contents:t})}))}}const pu={defaultConfirmationCount:1,confirmationPollingTimeoutSecond:180};class fu{constructor(e,t=new za,n,r=new _e(Object.assign({},pu)),i,o,s,a,c,l,u,d){this._rpc=e,this._signer=t,this._proto=n,this._config=r,this.providerDecorator=[],this.tz=new Pl(this),this.estimate=new Rl(this),this.contract=new Zl(this,this.estimate),this.prepare=new wl(this),this.batch=new Cl(this,this.estimate),this.wallet=new tl(this),this.withExtensions=()=>{let e=this.clone();return this.providerDecorator.forEach((t=>{e=t(e)})),e},"string"==typeof this._rpc?this._rpcClient=new I(this._rpc):this._rpcClient=this._rpc,this._forger=i||new _u(this),this._injector=o||new La(this),this.operationFactory=new Dl(this),this._walletProvider=a||new cl(this),this._parser=c||new Xl(this),this._packer=s||new $l(this),this._globalConstantsProvider=l||new nu,this._readProvider=u||new ru(this._rpcClient),this._stream=d||new du(this)}get config(){return this._config.getValue()}set config(e){this._config.next(Object.assign({},e))}setPartialConfig(e){this._config.next(Object.assign(Object.assign({},this._config.getValue()),e))}get rpc(){return this._rpcClient}set rpc(e){this._rpcClient=e}get injector(){return this._injector}set injector(e){this._injector=e}get forger(){return this._forger}set forger(e){this._forger=e}get signer(){return this._signer}set signer(e){this._signer=e}get walletProvider(){return this._walletProvider}set walletProvider(e){this._walletProvider=e}set proto(e){this._proto=e}get proto(){return this._proto}get parser(){return this._parser}set parser(e){this._parser=e}get packer(){return this._packer}set packer(e){this._packer=e}get globalConstantsProvider(){return this._globalConstantsProvider}set globalConstantsProvider(e){this._globalConstantsProvider=e}get readProvider(){return this._readProvider}set readProvider(e){this._readProvider=e}get stream(){return this._stream}set stream(e){this._stream=e}isAnyProtocolActive(e=[]){return Oa(this,void 0,void 0,(function*(){if(this._proto)return e.includes(this._proto);{const t=yield this.readProvider.getNextProtocol("head");return e.includes(t)}}))}isAnySignerConfigured(){return!(this.signer instanceof za)}clone(){return new fu(this.rpc,this.signer,this.proto,this._config,this.forger,this._injector,this.packer,this._walletProvider,this._parser,this._globalConstantsProvider,this._readProvider,this._stream)}registerProviderDecorator(e){this.providerDecorator.push(e)}}const mu={commitHash:"d44ee8a26e6924e12a8cae2f9c5b717fc65af72c",version:"20.0.1"};class hu extends i.IT{constructor(e){super(),this.results=e,this.name="ForgingMismatchError",this.message="Forging mismatch error"}}class gu extends i.Q1{constructor(){super(),this.name="UnspecifiedForgerError",this.message="No forger has been configured. Please configure new CompositeForger([rpcForger, localForger]) with your TezosToolkit instance."}}class yu{constructor(e){if(this.forgers=e,0===e.length)throw new gu}forge({branch:e,contents:t}){return Oa(this,void 0,void 0,(function*(){const n=yield Promise.all(this.forgers.map((n=>n.forge({branch:e,contents:t}))));if(0===n.length)throw new gu;let r=n.pop();for(;n.length;){const e=n.pop();if(e!==r)throw new hu([r,e]);r=e}return r}))}}class vu{constructor(e){this.context=e}forge({branch:e,contents:t}){return this.context.rpc.forgeOperations({branch:e,contents:t})}}class bu{prepareCodeOrigination(e){return Oa(this,void 0,void 0,(function*(){return e}))}}class xu{packData(e){return Oa(this,void 0,void 0,(function*(){const{bytes:t}=(n=e.data,r=e.type,{bytes:zi(Fo(n,r))});var n,r;return{packed:t}}))}}class Su{constructor(){this._globalConstantsLibrary={}}loadGlobalConstant(e){for(const t in e)Object.assign(this._globalConstantsLibrary,{[t]:e[t]})}getGlobalConstantByHash(e){return Oa(this,void 0,void 0,(function*(){const t=this._globalConstantsLibrary[e];if(!t)throw new eu(e);return t}))}}class Tu{constructor(e){this._rpc=e,this._options={},this.format=f.GP,"string"==typeof this._rpc?this._rpcClient=new I(this._rpc):this._rpcClient=this._rpc,this._context=new fu(e),this._wallet=new tl(this._context),this.setProvider({rpc:this._rpcClient}),this.batch=this._context.batch.batch.bind(this._context.batch)}setProvider({rpc:e,stream:t,signer:n,protocol:r,config:i,forger:o,wallet:s,packer:a,globalConstantsProvider:c,readProvider:l,parserProvider:u,injectorProvider:d}){this.setRpcProvider(e),this.setStreamProvider(t),this.setSignerProvider(n),this.setForgerProvider(o),this.setWalletProvider(s),this.setPackerProvider(a),this.setGlobalConstantsProvider(c),this.setReadProvider(l),this.setParserProvider(u),this.setInjectorProvider(d),this._context.proto=r,i&&this._context.setPartialConfig(i)}setSignerProvider(e){this._options.signer||void 0!==e?void 0!==e&&(this._context.signer=e,this._options.signer=e):(this._context.signer=new za,this._options.signer=e)}setRpcProvider(e){"string"==typeof e?this._rpcClient=new I(e):void 0===e||(this._rpcClient=e),this._options.rpc=this._rpcClient,this._context.rpc=this._rpcClient}setForgerProvider(e){if(void 0!==e)this._options.forger=e,this._context.forger=e;else if(void 0===this._options.forger){const e=this.getFactory(_u)();this._options.forger=e,this._context.forger=e}}setStreamProvider(e){if("string"==typeof e){const t=new du(new fu(new I(e)));this._options.stream=t,this._context.stream=t}else if(void 0!==e)this._options.stream=e,this._context.stream=e;else if(void 0===this._options.stream){const e=this.getFactory(du)();this._options.stream=e,this._context.stream=e}}setWalletProvider(e){if(this._options.wallet||void 0!==e)void 0!==e&&(this._options.wallet=e,this._context.walletProvider=e);else{const e=this.getFactory(cl)();this._options.wallet=e,this._context.walletProvider=e}}setPackerProvider(e){if(this._options.packer||void 0!==e)void 0!==e&&(this._context.packer=e,this._options.packer=e);else{const e=this.getFactory($l)();this._context.packer=e,this._options.packer=e}}setGlobalConstantsProvider(e){if(this._options.globalConstantsProvider||void 0!==e)void 0!==e&&(this._context.globalConstantsProvider=e,this._options.globalConstantsProvider=e);else{const e=new nu;this._context.globalConstantsProvider=e,this._options.globalConstantsProvider=e}}setReadProvider(e){const t=e||new ru(this._context.rpc);this._options.readProvider=t,this._context.readProvider=t}setParserProvider(e){if(this._options.parserProvider||void 0!==e)void 0!==e&&(this._context.parser=e,this._options.parserProvider=e);else{const e=new Xl(this._context);this._context.parser=e,this._options.parserProvider=e}}setInjectorProvider(e){if(this._options.injectorProvider||void 0!==e)void 0!==e&&(this._context.injector=e,this._options.injectorProvider=e);else{const e=new La(this._context);this._context.injector=e,this._options.injectorProvider=e}}setFieldNumberingStrategy(e){Vt.fieldNumberingStrategy=e}get tz(){return this._context.tz}get contract(){return this._context.contract}get prepare(){return this._context.prepare}get wallet(){return this._wallet}get operation(){return this._context.operationFactory}get estimate(){return this._context.estimate}get stream(){return this._context.stream}get rpc(){return this._context.rpc}get signer(){return this._context.signer}get globalConstants(){return this._context.globalConstantsProvider}addExtension(e){Array.isArray(e)?e.forEach((e=>e.configureContext(this._context))):e.configureContext(this._context)}getFactory(e){return(...t)=>new e(this._context,...t)}getVersionInfo(){return mu}}},48110:(e,t,n)=>{"use strict";n.d(t,{$$:()=>V,$W:()=>l.$W,$u:()=>l.$u,Ad:()=>R,Ag:()=>W,BK:()=>_,FN:()=>j,GP:()=>F,KE:()=>A,Lg:()=>k,O7:()=>l.O7,Pl:()=>d,WP:()=>q,Wf:()=>z,YV:()=>I,Z:()=>D,Z_:()=>N,_f:()=>E,b3:()=>r,fI:()=>L,fK:()=>C,g2:()=>B,hi:()=>J,jX:()=>U,jl:()=>T,m6:()=>K,nA:()=>f,yC:()=>w});var r,i=n(48287),o=(n(34904),n(19444),n(92493)),s=n.n(o),a=n(86e3),c=n.n(a),l=n(17432),u=n(60346);n(86729),n(64527);!function(e){e.TZ1="tz1",e.TZ2="tz2",e.TZ3="tz3",e.TZ4="tz4",e.KT="KT",e.KT1="KT1",e.EDSK2="edsk2",e.SPSK="spsk",e.P2SK="p2sk",e.EDPK="edpk",e.SPPK="sppk",e.P2PK="p2pk",e.BLPK="BLpk",e.EDESK="edesk",e.SPESK="spesk",e.P2ESK="p2esk",e.EDSK="edsk",e.EDSIG="edsig",e.SPSIG="spsig",e.P2SIG="p2sig",e.SIG="sig",e.NET="Net",e.NCE="nce",e.B="B",e.O="o",e.LO="Lo",e.LLO="LLo",e.P="P",e.CO="Co",e.ID="id",e.EXPR="expr",e.TZ="TZ",e.VH="vh",e.SASK="sask",e.ZET1="zet1",e.SR1="sr1",e.SRC1="src1",e.SH="sh"}(r||(r={}));const d={[r.TZ1]:new Uint8Array([6,161,159]),[r.TZ2]:new Uint8Array([6,161,161]),[r.TZ3]:new Uint8Array([6,161,164]),[r.TZ4]:new Uint8Array([6,161,166]),[r.KT]:new Uint8Array([2,90,121]),[r.KT1]:new Uint8Array([2,90,121]),[r.EDSK]:new Uint8Array([43,246,78,7]),[r.EDSK2]:new Uint8Array([13,15,58,7]),[r.SPSK]:new Uint8Array([17,162,224,201]),[r.P2SK]:new Uint8Array([16,81,238,189]),[r.EDPK]:new Uint8Array([13,15,37,217]),[r.SPPK]:new Uint8Array([3,254,226,86]),[r.P2PK]:new Uint8Array([3,178,139,127]),[r.BLPK]:new Uint8Array([6,149,135,204]),[r.EDESK]:new Uint8Array([7,90,60,179,41]),[r.SPESK]:new Uint8Array([9,237,241,174,150]),[r.P2ESK]:new Uint8Array([9,48,57,115,171]),[r.EDSIG]:new Uint8Array([9,245,205,134,18]),[r.SPSIG]:new Uint8Array([13,115,101,19,63]),[r.P2SIG]:new Uint8Array([54,240,44,52]),[r.SIG]:new Uint8Array([4,130,43]),[r.NET]:new Uint8Array([87,82,0]),[r.NCE]:new Uint8Array([69,220,169]),[r.B]:new Uint8Array([1,52]),[r.O]:new Uint8Array([5,116]),[r.LO]:new Uint8Array([133,233]),[r.LLO]:new Uint8Array([29,159,109]),[r.P]:new Uint8Array([2,170]),[r.CO]:new Uint8Array([79,179]),[r.ID]:new Uint8Array([153,103]),[r.EXPR]:new Uint8Array([13,44,64,27]),[r.TZ]:new Uint8Array([2,90,121]),[r.VH]:new Uint8Array([1,106,242]),[r.SASK]:new Uint8Array([11,237,20,92]),[r.ZET1]:new Uint8Array([18,71,40,223]),[r.SR1]:new Uint8Array([6,124,117]),[r.SRC1]:new Uint8Array([17,165,134,138]),[r.SH]:new Uint8Array([2,116,180])},_={[r.TZ1]:20,[r.TZ2]:20,[r.TZ3]:20,[r.TZ4]:20,[r.KT]:20,[r.KT1]:20,[r.EDPK]:32,[r.SPPK]:33,[r.P2PK]:33,[r.BLPK]:48,[r.EDSIG]:64,[r.SPSIG]:64,[r.P2SIG]:64,[r.SIG]:64,[r.NET]:4,[r.B]:32,[r.P]:32,[r.O]:32,[r.VH]:32,[r.SASK]:169,[r.ZET1]:43,[r.SR1]:20,[r.SRC1]:32,[r.SH]:48};l.Xi;class p extends l.ic{constructor(e,t){super(),this.value=e,this.desiredType=t,this.name="ValueConversionError",this.message=`Unable to convert ${e} to a ${t}`}}var f;function m(e,t){const n=new RegExp(`^(${t.join("|")})`).exec(e);if(!n||0===n.length)return f.NO_PREFIX_MATCHED;const r=n[0];if(!function(e){return"string"==typeof e&&e in d}(r))return f.NO_PREFIX_MATCHED;e.includes("%")&&(e=e.split("%")[0]);if(!/^(KT1\w{33})$/.test(e)&&"KT1"===r)return f.INVALID_CHECKSUM;let i=c().decodeUnsafe(e);return i?(i=i.slice(d[r].length),i.length!==_[r]?f.INVALID_LENGTH:f.VALID):f.INVALID_CHECKSUM}!function(e){e[e.NO_PREFIX_MATCHED=0]="NO_PREFIX_MATCHED",e[e.INVALID_CHECKSUM=1]="INVALID_CHECKSUM",e[e.INVALID_LENGTH=2]="INVALID_LENGTH",e[e.VALID=3]="VALID"}(f||(f={}));const h=[r.TZ1,r.TZ2,r.TZ3,r.TZ4],g=[r.KT1],y=[r.EDSIG,r.P2SIG,r.SPSIG,r.SIG],v=[r.EDPK,r.SPPK,r.P2PK,r.BLPK],b=[r.O],x=(r.P,[r.B]),S=[r.SR1];function T(e){return m(e,[...h,...g,...S])}function w(e){return m(e,[r.NET])}function k(e){return m(e,g)}function E(e){return m(e,h)}function C(e){return m(e,y)}function N(e){return m(e,v)}function A(e){return m(e,b)}function I(e){return m(e,x)}function D(e){switch(e){case f.NO_PREFIX_MATCHED:return"with unsupported prefix";case f.INVALID_CHECKSUM:return"failed checksum";case f.INVALID_LENGTH:return"with incorrect length";default:return""}}const P=6,M=3;function O(e){switch(e){case"tz":return P;case"mtz":return M;default:return 0}}function F(e="mutez",t="mutez",n){const r=new u.A(n);return r.isNaN()?n:r.multipliedBy(Math.pow(10,O(e))).dividedBy(Math.pow(10,O(t)))}function R(e){return L(s().blake2b(V(e),void 0,32),d.expr)}function L(e,t){const n="string"==typeof e?Uint8Array.from(i.Buffer.from(e,"hex")):e,r=new Uint8Array(t.length+n.length);return r.set(t),r.set(n,t.length),c().encode(i.Buffer.from(r.buffer))}const j=(e,t)=>c().decode(e).slice(t.length);function z(e){const t=c().decode(e),n={[d.tz1.toString()]:"0000",[d.tz2.toString()]:"0001",[d.tz3.toString()]:"0002"}[new Uint8Array(t.slice(0,3)).toString()];if(n){return n+J(t.slice(3))}return"01"+J(t.slice(3,42))+"00"}function U(e){if("0x"===e.substring(0,2)&&(e=e.slice(2)),"00"===e.substring(0,2)){const t={"0000":d.tz1,"0001":d.tz2,"0002":d.tz3};return L(e.substring(4),t[e.substring(0,4)])}return L(e.substring(2,42),d.KT)}function B(e){if("0"===e[0]){const t={"00":new Uint8Array([13,15,37,217]),"01":new Uint8Array([3,254,226,86]),"02":new Uint8Array([3,178,139,127])};return L(e.substring(2),t[e.substring(0,2)])}}function q(e){if("0"===e[0]){const t={"00":new Uint8Array([6,161,159]),"01":new Uint8Array([6,161,161]),"02":new Uint8Array([6,161,164])};return L(e.substring(2),t[e.substring(0,2)])}}const V=e=>{if(e.length%2!=0)throw new l.Sj(e,": Expecting even number of characters");const t=W(e);if(!t.match(/^([\da-f]{2})*$/gi))throw new l.Sj(e,": Only characters 0-9, a-f and A-F are expected. Optionally, it can be prefixed with '0x'");const n=new Uint8Array(t.length/2);let r=0;for(let i=0;i<t.length;i+=2){const o=parseInt(t.slice(i,i+2),16);if(Number.isNaN(o))throw new p(e,"Uint8Array");n[r++]=o}return n},K=(e,t)=>{const n=new Uint8Array(e.length+t.length);return n.set(e),n.set(t,e.length),n},J=e=>{const t=[];return e.forEach((e=>{const n=`00${e.toString(16)}`.slice(-2);t.push(n)})),t.join("")};function W(e){return e.startsWith("0x")?e.slice(2):e}},4883:e=>{"use strict";e.exports=function(e){if(e.length>=255)throw new TypeError("Alphabet too long");for(var t=new Uint8Array(256),n=0;n<t.length;n++)t[n]=255;for(var r=0;r<e.length;r++){var i=e.charAt(r),o=i.charCodeAt(0);if(255!==t[o])throw new TypeError(i+" is ambiguous");t[o]=r}var s=e.length,a=e.charAt(0),c=Math.log(s)/Math.log(256),l=Math.log(256)/Math.log(s);function u(e){if("string"!=typeof e)throw new TypeError("Expected String");if(0===e.length)return new Uint8Array;for(var n=0,r=0,i=0;e[n]===a;)r++,n++;for(var o=(e.length-n)*c+1>>>0,l=new Uint8Array(o);e[n];){var u=t[e.charCodeAt(n)];if(255===u)return;for(var d=0,_=o-1;(0!==u||d<i)&&-1!==_;_--,d++)u+=s*l[_]>>>0,l[_]=u%256>>>0,u=u/256>>>0;if(0!==u)throw new Error("Non-zero carry");i=d,n++}for(var p=o-i;p!==o&&0===l[p];)p++;for(var f=new Uint8Array(r+(o-p)),m=r;p!==o;)f[m++]=l[p++];return f}return{encode:function(t){if(t instanceof Uint8Array||(ArrayBuffer.isView(t)?t=new Uint8Array(t.buffer,t.byteOffset,t.byteLength):Array.isArray(t)&&(t=Uint8Array.from(t))),!(t instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(0===t.length)return"";for(var n=0,r=0,i=0,o=t.length;i!==o&&0===t[i];)i++,n++;for(var c=(o-i)*l+1>>>0,u=new Uint8Array(c);i!==o;){for(var d=t[i],_=0,p=c-1;(0!==d||_<r)&&-1!==p;p--,_++)d+=256*u[p]>>>0,u[p]=d%s>>>0,d=d/s>>>0;if(0!==d)throw new Error("Non-zero carry");r=_,i++}for(var f=c-r;f!==c&&0===u[f];)f++;for(var m=a.repeat(n);f<c;++f)m+=e.charAt(u[f]);return m},decodeUnsafe:u,decode:function(e){var t=u(e);if(t)return t;throw new Error("Non-base"+s+" character")}}}},61944:(e,t,n)=>{const r=n(4883);e.exports=r("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz")},83919:(e,t,n)=>{"use strict";var r=n(61944);e.exports=function(e){function t(t){var n=t.slice(0,-4),r=t.slice(-4),i=e(n);if(!(r[0]^i[0]|r[1]^i[1]|r[2]^i[2]|r[3]^i[3]))return n}return{encode:function(t){var n=Uint8Array.from(t),i=e(n),o=n.length+4,s=new Uint8Array(o);return s.set(n,0),s.set(i.subarray(0,4),n.length),r.encode(s,o)},decode:function(e){var n=t(r.decode(e));if(!n)throw new Error("Invalid checksum");return n},decodeUnsafe:function(e){var n=r.decodeUnsafe(e);if(n)return t(n)}}}},86e3:(e,t,n)=>{"use strict";var{sha256:r}=n(22623),i=n(83919);e.exports=i((function(e){return r(r(e))}))},77173:(e,t,n)=>{"use strict";function r(){return(null===n.g||void 0===n.g?void 0:n.g.crypto)||(null===n.g||void 0===n.g?void 0:n.g.msCrypto)||{}}function i(){const e=r();return e.subtle||e.webkitSubtle}Object.defineProperty(t,"__esModule",{value:!0}),t.isBrowserCryptoAvailable=t.getSubtleCrypto=t.getBrowerCrypto=void 0,t.getBrowerCrypto=r,t.getSubtleCrypto=i,t.isBrowserCryptoAvailable=function(){return!!r()&&!!i()}},91089:(e,t,n)=>{"use strict";var r=n(65606);function i(){return"undefined"==typeof document&&"undefined"!=typeof navigator&&"ReactNative"===navigator.product}function o(){return void 0!==r&&void 0!==r.versions&&void 0!==r.versions.node}Object.defineProperty(t,"__esModule",{value:!0}),t.isBrowser=t.isNode=t.isReactNative=void 0,t.isReactNative=i,t.isNode=o,t.isBrowser=function(){return!i()&&!o()}},25682:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(98186);r.__exportStar(n(77173),t),r.__exportStar(n(91089),t)},98186:(e,t,n)=>{"use strict";n.r(t),n.d(t,{__assign:()=>o,__asyncDelegator:()=>b,__asyncGenerator:()=>v,__asyncValues:()=>x,__await:()=>y,__awaiter:()=>u,__classPrivateFieldGet:()=>k,__classPrivateFieldSet:()=>E,__createBinding:()=>_,__decorate:()=>a,__exportStar:()=>p,__extends:()=>i,__generator:()=>d,__importDefault:()=>w,__importStar:()=>T,__makeTemplateObject:()=>S,__metadata:()=>l,__param:()=>c,__read:()=>m,__rest:()=>s,__spread:()=>h,__spreadArrays:()=>g,__values:()=>f});var r=function(e,t){return r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])},r(e,t)};function i(e,t){function n(){this.constructor=e}r(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}var o=function(){return o=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var i in t=arguments[n])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},o.apply(this,arguments)};function s(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]])}return n}function a(e,t,n,r){var i,o=arguments.length,s=o<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,r);else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(s=(o<3?i(s):o>3?i(t,n,s):i(t,n))||s);return o>3&&s&&Object.defineProperty(t,n,s),s}function c(e,t){return function(n,r){t(n,r,e)}}function l(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)}function u(e,t,n,r){return new(n||(n=Promise))((function(i,o){function s(e){try{c(r.next(e))}catch(t){o(t)}}function a(e){try{c(r.throw(e))}catch(t){o(t)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}c((r=r.apply(e,t||[])).next())}))}function d(e,t){var n,r,i,o,s={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(o){return function(a){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,r&&(i=2&o[0]?r.return:o[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,o[1])).done)return i;switch(r=0,i&&(o=[2&o[0],i.value]),o[0]){case 0:case 1:i=o;break;case 4:return s.label++,{value:o[1],done:!1};case 5:s.label++,r=o[1],o=[0];continue;case 7:o=s.ops.pop(),s.trys.pop();continue;default:if(!(i=s.trys,(i=i.length>0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]<i[3])){s.label=o[1];break}if(6===o[0]&&s.label<i[1]){s.label=i[1],i=o;break}if(i&&s.label<i[2]){s.label=i[2],s.ops.push(o);break}i[2]&&s.ops.pop(),s.trys.pop();continue}o=t.call(e,s)}catch(a){o=[6,a],r=0}finally{n=i=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,a])}}}function _(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}function p(e,t){for(var n in e)"default"===n||t.hasOwnProperty(n)||(t[n]=e[n])}function f(e){var t="function"==typeof Symbol&&Symbol.iterator,n=t&&e[t],r=0;if(n)return n.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function m(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var r,i,o=n.call(e),s=[];try{for(;(void 0===t||t-- >0)&&!(r=o.next()).done;)s.push(r.value)}catch(a){i={error:a}}finally{try{r&&!r.done&&(n=o.return)&&n.call(o)}finally{if(i)throw i.error}}return s}function h(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(m(arguments[t]));return e}function g(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var r=Array(e),i=0;for(t=0;t<n;t++)for(var o=arguments[t],s=0,a=o.length;s<a;s++,i++)r[i]=o[s];return r}function y(e){return this instanceof y?(this.v=e,this):new y(e)}function v(e,t,n){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var r,i=n.apply(e,t||[]),o=[];return r={},s("next"),s("throw"),s("return"),r[Symbol.asyncIterator]=function(){return this},r;function s(e){i[e]&&(r[e]=function(t){return new Promise((function(n,r){o.push([e,t,n,r])>1||a(e,t)}))})}function a(e,t){try{(n=i[e](t)).value instanceof y?Promise.resolve(n.value.v).then(c,l):u(o[0][2],n)}catch(r){u(o[0][3],r)}var n}function c(e){a("next",e)}function l(e){a("throw",e)}function u(e,t){e(t),o.shift(),o.length&&a(o[0][0],o[0][1])}}function b(e){var t,n;return t={},r("next"),r("throw",(function(e){throw e})),r("return"),t[Symbol.iterator]=function(){return this},t;function r(r,i){t[r]=e[r]?function(t){return(n=!n)?{value:y(e[r](t)),done:"return"===r}:i?i(t):t}:i}}function x(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,n=e[Symbol.asyncIterator];return n?n.call(e):(e=f(e),t={},r("next"),r("throw"),r("return"),t[Symbol.asyncIterator]=function(){return this},t);function r(n){t[n]=e[n]&&function(t){return new Promise((function(r,i){(function(e,t,n,r){Promise.resolve(r).then((function(t){e({value:t,done:n})}),t)})(r,i,(t=e[n](t)).done,t.value)}))}}}function S(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e}function T(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}function w(e){return e&&e.__esModule?e:{default:e}}function k(e,t){if(!t.has(e))throw new TypeError("attempted to get private field on non-instance");return t.get(e)}function E(e,t,n){if(!t.has(e))throw new TypeError("attempted to set private field on non-instance");return t.set(e,n),n}},4556:(e,t,n)=>{"use strict";n.d(t,{H:()=>r});class r{}},44833:(e,t,n)=>{"use strict";n.r(t),n.d(t,{IEvents:()=>r.H});var r=n(4556)},98859:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.HEARTBEAT_EVENTS=t.HEARTBEAT_INTERVAL=void 0;const r=n(88900);t.HEARTBEAT_INTERVAL=r.FIVE_SECONDS,t.HEARTBEAT_EVENTS={pulse:"heartbeat_pulse"}},6223:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});n(24613).__exportStar(n(98859),t)},26401:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.HeartBeat=void 0;const r=n(24613),i=n(37007),o=n(88900),s=n(94359),a=n(6223);class c extends s.IHeartBeat{constructor(e){super(e),this.events=new i.EventEmitter,this.interval=a.HEARTBEAT_INTERVAL,this.interval=(null==e?void 0:e.interval)||a.HEARTBEAT_INTERVAL}static init(e){return r.__awaiter(this,void 0,void 0,(function*(){const t=new c(e);return yield t.init(),t}))}init(){return r.__awaiter(this,void 0,void 0,(function*(){yield this.initialize()}))}stop(){clearInterval(this.intervalRef)}on(e,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}off(e,t){this.events.off(e,t)}removeListener(e,t){this.events.removeListener(e,t)}initialize(){return r.__awaiter(this,void 0,void 0,(function*(){this.intervalRef=setInterval((()=>this.pulse()),o.toMiliseconds(this.interval))}))}pulse(){this.events.emit(a.HEARTBEAT_EVENTS.pulse)}}t.HeartBeat=c},86545:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(24613);r.__exportStar(n(26401),t),r.__exportStar(n(94359),t),r.__exportStar(n(6223),t)},38451:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.IHeartBeat=void 0;const r=n(44833);class i extends r.IEvents{constructor(e){super()}}t.IHeartBeat=i},94359:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});n(24613).__exportStar(n(38451),t)},24613:(e,t,n)=>{"use strict";n.r(t),n.d(t,{__assign:()=>o,__asyncDelegator:()=>b,__asyncGenerator:()=>v,__asyncValues:()=>x,__await:()=>y,__awaiter:()=>u,__classPrivateFieldGet:()=>k,__classPrivateFieldSet:()=>E,__createBinding:()=>_,__decorate:()=>a,__exportStar:()=>p,__extends:()=>i,__generator:()=>d,__importDefault:()=>w,__importStar:()=>T,__makeTemplateObject:()=>S,__metadata:()=>l,__param:()=>c,__read:()=>m,__rest:()=>s,__spread:()=>h,__spreadArrays:()=>g,__values:()=>f});var r=function(e,t){return r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])},r(e,t)};function i(e,t){function n(){this.constructor=e}r(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}var o=function(){return o=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var i in t=arguments[n])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},o.apply(this,arguments)};function s(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]])}return n}function a(e,t,n,r){var i,o=arguments.length,s=o<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,r);else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(s=(o<3?i(s):o>3?i(t,n,s):i(t,n))||s);return o>3&&s&&Object.defineProperty(t,n,s),s}function c(e,t){return function(n,r){t(n,r,e)}}function l(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)}function u(e,t,n,r){return new(n||(n=Promise))((function(i,o){function s(e){try{c(r.next(e))}catch(t){o(t)}}function a(e){try{c(r.throw(e))}catch(t){o(t)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}c((r=r.apply(e,t||[])).next())}))}function d(e,t){var n,r,i,o,s={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(o){return function(a){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,r&&(i=2&o[0]?r.return:o[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,o[1])).done)return i;switch(r=0,i&&(o=[2&o[0],i.value]),o[0]){case 0:case 1:i=o;break;case 4:return s.label++,{value:o[1],done:!1};case 5:s.label++,r=o[1],o=[0];continue;case 7:o=s.ops.pop(),s.trys.pop();continue;default:if(!(i=s.trys,(i=i.length>0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]<i[3])){s.label=o[1];break}if(6===o[0]&&s.label<i[1]){s.label=i[1],i=o;break}if(i&&s.label<i[2]){s.label=i[2],s.ops.push(o);break}i[2]&&s.ops.pop(),s.trys.pop();continue}o=t.call(e,s)}catch(a){o=[6,a],r=0}finally{n=i=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,a])}}}function _(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}function p(e,t){for(var n in e)"default"===n||t.hasOwnProperty(n)||(t[n]=e[n])}function f(e){var t="function"==typeof Symbol&&Symbol.iterator,n=t&&e[t],r=0;if(n)return n.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function m(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var r,i,o=n.call(e),s=[];try{for(;(void 0===t||t-- >0)&&!(r=o.next()).done;)s.push(r.value)}catch(a){i={error:a}}finally{try{r&&!r.done&&(n=o.return)&&n.call(o)}finally{if(i)throw i.error}}return s}function h(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(m(arguments[t]));return e}function g(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var r=Array(e),i=0;for(t=0;t<n;t++)for(var o=arguments[t],s=0,a=o.length;s<a;s++,i++)r[i]=o[s];return r}function y(e){return this instanceof y?(this.v=e,this):new y(e)}function v(e,t,n){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var r,i=n.apply(e,t||[]),o=[];return r={},s("next"),s("throw"),s("return"),r[Symbol.asyncIterator]=function(){return this},r;function s(e){i[e]&&(r[e]=function(t){return new Promise((function(n,r){o.push([e,t,n,r])>1||a(e,t)}))})}function a(e,t){try{(n=i[e](t)).value instanceof y?Promise.resolve(n.value.v).then(c,l):u(o[0][2],n)}catch(r){u(o[0][3],r)}var n}function c(e){a("next",e)}function l(e){a("throw",e)}function u(e,t){e(t),o.shift(),o.length&&a(o[0][0],o[0][1])}}function b(e){var t,n;return t={},r("next"),r("throw",(function(e){throw e})),r("return"),t[Symbol.iterator]=function(){return this},t;function r(r,i){t[r]=e[r]?function(t){return(n=!n)?{value:y(e[r](t)),done:"return"===r}:i?i(t):t}:i}}function x(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,n=e[Symbol.asyncIterator];return n?n.call(e):(e=f(e),t={},r("next"),r("throw"),r("return"),t[Symbol.asyncIterator]=function(){return this},t);function r(n){t[n]=e[n]&&function(t){return new Promise((function(r,i){(function(e,t,n,r){Promise.resolve(r).then((function(t){e({value:t,done:n})}),t)})(r,i,(t=e[n](t)).done,t.value)}))}}}function S(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e}function T(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}function w(e){return e&&e.__esModule?e:{default:e}}function k(e,t){if(!t.has(e))throw new TypeError("attempted to get private field on non-instance");return t.get(e)}function E(e,t,n){if(!t.has(e))throw new TypeError("attempted to set private field on non-instance");return t.set(e,n),n}},55665:()=>{},49026:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(80584);r.__exportStar(n(79244),t),r.__exportStar(n(31861),t)},79244:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ONE_THOUSAND=t.ONE_HUNDRED=void 0,t.ONE_HUNDRED=100,t.ONE_THOUSAND=1e3},31861:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ONE_YEAR=t.FOUR_WEEKS=t.THREE_WEEKS=t.TWO_WEEKS=t.ONE_WEEK=t.THIRTY_DAYS=t.SEVEN_DAYS=t.FIVE_DAYS=t.THREE_DAYS=t.ONE_DAY=t.TWENTY_FOUR_HOURS=t.TWELVE_HOURS=t.SIX_HOURS=t.THREE_HOURS=t.ONE_HOUR=t.SIXTY_MINUTES=t.THIRTY_MINUTES=t.TEN_MINUTES=t.FIVE_MINUTES=t.ONE_MINUTE=t.SIXTY_SECONDS=t.THIRTY_SECONDS=t.TEN_SECONDS=t.FIVE_SECONDS=t.ONE_SECOND=void 0,t.ONE_SECOND=1,t.FIVE_SECONDS=5,t.TEN_SECONDS=10,t.THIRTY_SECONDS=30,t.SIXTY_SECONDS=60,t.ONE_MINUTE=t.SIXTY_SECONDS,t.FIVE_MINUTES=5*t.ONE_MINUTE,t.TEN_MINUTES=10*t.ONE_MINUTE,t.THIRTY_MINUTES=30*t.ONE_MINUTE,t.SIXTY_MINUTES=60*t.ONE_MINUTE,t.ONE_HOUR=t.SIXTY_MINUTES,t.THREE_HOURS=3*t.ONE_HOUR,t.SIX_HOURS=6*t.ONE_HOUR,t.TWELVE_HOURS=12*t.ONE_HOUR,t.TWENTY_FOUR_HOURS=24*t.ONE_HOUR,t.ONE_DAY=t.TWENTY_FOUR_HOURS,t.THREE_DAYS=3*t.ONE_DAY,t.FIVE_DAYS=5*t.ONE_DAY,t.SEVEN_DAYS=7*t.ONE_DAY,t.THIRTY_DAYS=30*t.ONE_DAY,t.ONE_WEEK=t.SEVEN_DAYS,t.TWO_WEEKS=2*t.ONE_WEEK,t.THREE_WEEKS=3*t.ONE_WEEK,t.FOUR_WEEKS=4*t.ONE_WEEK,t.ONE_YEAR=365*t.ONE_DAY},88900:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(80584);r.__exportStar(n(99606),t),r.__exportStar(n(89883),t),r.__exportStar(n(62010),t),r.__exportStar(n(49026),t)},62010:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});n(80584).__exportStar(n(63093),t)},63093:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.IWatch=void 0;t.IWatch=class{}},60221:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.fromMiliseconds=t.toMiliseconds=void 0;const r=n(49026);t.toMiliseconds=function(e){return e*r.ONE_THOUSAND},t.fromMiliseconds=function(e){return Math.floor(e/r.ONE_THOUSAND)}},2985:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.delay=void 0,t.delay=function(e){return new Promise((t=>{setTimeout((()=>{t(!0)}),e)}))}},99606:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(80584);r.__exportStar(n(2985),t),r.__exportStar(n(60221),t)},89883:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Watch=void 0;class n{constructor(){this.timestamps=new Map}start(e){if(this.timestamps.has(e))throw new Error(`Watch already started for label: ${e}`);this.timestamps.set(e,{started:Date.now()})}stop(e){const t=this.get(e);if(void 0!==t.elapsed)throw new Error(`Watch already stopped for label: ${e}`);const n=Date.now()-t.started;this.timestamps.set(e,{started:t.started,elapsed:n})}get(e){const t=this.timestamps.get(e);if(void 0===t)throw new Error(`No timestamp found for label: ${e}`);return t}elapsed(e){const t=this.get(e);return t.elapsed||Date.now()-t.started}}t.Watch=n,t.default=n},80584:(e,t,n)=>{"use strict";n.r(t),n.d(t,{__assign:()=>o,__asyncDelegator:()=>b,__asyncGenerator:()=>v,__asyncValues:()=>x,__await:()=>y,__awaiter:()=>u,__classPrivateFieldGet:()=>k,__classPrivateFieldSet:()=>E,__createBinding:()=>_,__decorate:()=>a,__exportStar:()=>p,__extends:()=>i,__generator:()=>d,__importDefault:()=>w,__importStar:()=>T,__makeTemplateObject:()=>S,__metadata:()=>l,__param:()=>c,__read:()=>m,__rest:()=>s,__spread:()=>h,__spreadArrays:()=>g,__values:()=>f});var r=function(e,t){return r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])},r(e,t)};function i(e,t){function n(){this.constructor=e}r(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}var o=function(){return o=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var i in t=arguments[n])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},o.apply(this,arguments)};function s(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]])}return n}function a(e,t,n,r){var i,o=arguments.length,s=o<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,r);else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(s=(o<3?i(s):o>3?i(t,n,s):i(t,n))||s);return o>3&&s&&Object.defineProperty(t,n,s),s}function c(e,t){return function(n,r){t(n,r,e)}}function l(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)}function u(e,t,n,r){return new(n||(n=Promise))((function(i,o){function s(e){try{c(r.next(e))}catch(t){o(t)}}function a(e){try{c(r.throw(e))}catch(t){o(t)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}c((r=r.apply(e,t||[])).next())}))}function d(e,t){var n,r,i,o,s={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(o){return function(a){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,r&&(i=2&o[0]?r.return:o[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,o[1])).done)return i;switch(r=0,i&&(o=[2&o[0],i.value]),o[0]){case 0:case 1:i=o;break;case 4:return s.label++,{value:o[1],done:!1};case 5:s.label++,r=o[1],o=[0];continue;case 7:o=s.ops.pop(),s.trys.pop();continue;default:if(!(i=s.trys,(i=i.length>0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]<i[3])){s.label=o[1];break}if(6===o[0]&&s.label<i[1]){s.label=i[1],i=o;break}if(i&&s.label<i[2]){s.label=i[2],s.ops.push(o);break}i[2]&&s.ops.pop(),s.trys.pop();continue}o=t.call(e,s)}catch(a){o=[6,a],r=0}finally{n=i=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,a])}}}function _(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}function p(e,t){for(var n in e)"default"===n||t.hasOwnProperty(n)||(t[n]=e[n])}function f(e){var t="function"==typeof Symbol&&Symbol.iterator,n=t&&e[t],r=0;if(n)return n.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function m(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var r,i,o=n.call(e),s=[];try{for(;(void 0===t||t-- >0)&&!(r=o.next()).done;)s.push(r.value)}catch(a){i={error:a}}finally{try{r&&!r.done&&(n=o.return)&&n.call(o)}finally{if(i)throw i.error}}return s}function h(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(m(arguments[t]));return e}function g(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var r=Array(e),i=0;for(t=0;t<n;t++)for(var o=arguments[t],s=0,a=o.length;s<a;s++,i++)r[i]=o[s];return r}function y(e){return this instanceof y?(this.v=e,this):new y(e)}function v(e,t,n){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var r,i=n.apply(e,t||[]),o=[];return r={},s("next"),s("throw"),s("return"),r[Symbol.asyncIterator]=function(){return this},r;function s(e){i[e]&&(r[e]=function(t){return new Promise((function(n,r){o.push([e,t,n,r])>1||a(e,t)}))})}function a(e,t){try{(n=i[e](t)).value instanceof y?Promise.resolve(n.value.v).then(c,l):u(o[0][2],n)}catch(r){u(o[0][3],r)}var n}function c(e){a("next",e)}function l(e){a("throw",e)}function u(e,t){e(t),o.shift(),o.length&&a(o[0][0],o[0][1])}}function b(e){var t,n;return t={},r("next"),r("throw",(function(e){throw e})),r("return"),t[Symbol.iterator]=function(){return this},t;function r(r,i){t[r]=e[r]?function(t){return(n=!n)?{value:y(e[r](t)),done:"return"===r}:i?i(t):t}:i}}function x(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,n=e[Symbol.asyncIterator];return n?n.call(e):(e=f(e),t={},r("next"),r("throw"),r("return"),t[Symbol.asyncIterator]=function(){return this},t);function r(n){t[n]=e[n]&&function(t){return new Promise((function(r,i){(function(e,t,n,r){Promise.resolve(r).then((function(t){e({value:t,done:n})}),t)})(r,i,(t=e[n](t)).done,t.value)}))}}}function S(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e}function T(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}function w(e){return e&&e.__esModule?e:{default:e}}function k(e,t){if(!t.has(e))throw new TypeError("attempted to get private field on non-instance");return t.get(e)}function E(e,t,n){if(!t.has(e))throw new TypeError("attempted to set private field on non-instance");return t.set(e,n),n}},38196:(e,t)=>{"use strict";function n(e){let t;return"undefined"!=typeof window&&void 0!==window[e]&&(t=window[e]),t}function r(e){const t=n(e);if(!t)throw new Error(`${e} is not defined in Window`);return t}Object.defineProperty(t,"__esModule",{value:!0}),t.getLocalStorage=t.getLocalStorageOrThrow=t.getCrypto=t.getCryptoOrThrow=t.getLocation=t.getLocationOrThrow=t.getNavigator=t.getNavigatorOrThrow=t.getDocument=t.getDocumentOrThrow=t.getFromWindowOrThrow=t.getFromWindow=void 0,t.getFromWindow=n,t.getFromWindowOrThrow=r,t.getDocumentOrThrow=function(){return r("document")},t.getDocument=function(){return n("document")},t.getNavigatorOrThrow=function(){return r("navigator")},t.getNavigator=function(){return n("navigator")},t.getLocationOrThrow=function(){return r("location")},t.getLocation=function(){return n("location")},t.getCryptoOrThrow=function(){return r("crypto")},t.getCrypto=function(){return n("crypto")},t.getLocalStorageOrThrow=function(){return r("localStorage")},t.getLocalStorage=function(){return n("localStorage")}},42063:(e,t,n)=>{"use strict";t.g=void 0;const r=n(38196);t.g=function(){let e,t;try{e=r.getDocumentOrThrow(),t=r.getLocationOrThrow()}catch(o){return null}function n(...t){const n=e.getElementsByTagName("meta");for(let e=0;e<n.length;e++){const r=n[e],i=["itemprop","property","name"].map((e=>r.getAttribute(e))).filter((e=>!!e&&t.includes(e)));if(i.length&&i){const e=r.getAttribute("content");if(e)return e}}return""}const i=function(){let t=n("name","og:site_name","og:title","twitter:title");return t||(t=e.title),t}();return{description:n("description","og:description","twitter:description","keywords"),url:t.origin,icons:function(){const n=e.getElementsByTagName("link"),r=[];for(let e=0;e<n.length;e++){const i=n[e],o=i.getAttribute("rel");if(o&&o.toLowerCase().indexOf("icon")>-1){const e=i.getAttribute("href");if(e)if(-1===e.toLowerCase().indexOf("https:")&&-1===e.toLowerCase().indexOf("http:")&&0!==e.indexOf("//")){let n=t.protocol+"//"+t.host;if(0===e.indexOf("/"))n+=e;else{const r=t.pathname.split("/");r.pop();n+=r.join("/")+"/"+e}r.push(n)}else if(0===e.indexOf("//")){const n=t.protocol+e;r.push(n)}else r.push(e)}}return r}(),name:i}}},95364:(e,t,n)=>{"use strict";var r=n(92861).Buffer;e.exports=function(e){if(e.length>=255)throw new TypeError("Alphabet too long");for(var t=new Uint8Array(256),n=0;n<t.length;n++)t[n]=255;for(var i=0;i<e.length;i++){var o=e.charAt(i),s=o.charCodeAt(0);if(255!==t[s])throw new TypeError(o+" is ambiguous");t[s]=i}var a=e.length,c=e.charAt(0),l=Math.log(a)/Math.log(256),u=Math.log(256)/Math.log(a);function d(e){if("string"!=typeof e)throw new TypeError("Expected String");if(0===e.length)return r.alloc(0);for(var n=0,i=0,o=0;e[n]===c;)i++,n++;for(var s=(e.length-n)*l+1>>>0,u=new Uint8Array(s);n<e.length;){var d=t[e.charCodeAt(n)];if(255===d)return;for(var _=0,p=s-1;(0!==d||_<o)&&-1!==p;p--,_++)d+=a*u[p]>>>0,u[p]=d%256>>>0,d=d/256>>>0;if(0!==d)throw new Error("Non-zero carry");o=_,n++}for(var f=s-o;f!==s&&0===u[f];)f++;var m=r.allocUnsafe(i+(s-f));m.fill(0,0,i);for(var h=i;f!==s;)m[h++]=u[f++];return m}return{encode:function(t){if((Array.isArray(t)||t instanceof Uint8Array)&&(t=r.from(t)),!r.isBuffer(t))throw new TypeError("Expected Buffer");if(0===t.length)return"";for(var n=0,i=0,o=0,s=t.length;o!==s&&0===t[o];)o++,n++;for(var l=(s-o)*u+1>>>0,d=new Uint8Array(l);o!==s;){for(var _=t[o],p=0,f=l-1;(0!==_||p<i)&&-1!==f;f--,p++)_+=256*d[f]>>>0,d[f]=_%a>>>0,_=_/a>>>0;if(0!==_)throw new Error("Non-zero carry");i=p,o++}for(var m=l-i;m!==l&&0===d[m];)m++;for(var h=c.repeat(n);m<l;++m)h+=e.charAt(d[m]);return h},decodeUnsafe:d,decode:function(e){var t=d(e);if(t)return t;throw new Error("Non-base"+a+" character")}}}},67526:(e,t)=>{"use strict";t.byteLength=function(e){var t=a(e),n=t[0],r=t[1];return 3*(n+r)/4-r},t.toByteArray=function(e){var t,n,o=a(e),s=o[0],c=o[1],l=new i(function(e,t,n){return 3*(t+n)/4-n}(0,s,c)),u=0,d=c>0?s-4:s;for(n=0;n<d;n+=4)t=r[e.charCodeAt(n)]<<18|r[e.charCodeAt(n+1)]<<12|r[e.charCodeAt(n+2)]<<6|r[e.charCodeAt(n+3)],l[u++]=t>>16&255,l[u++]=t>>8&255,l[u++]=255&t;2===c&&(t=r[e.charCodeAt(n)]<<2|r[e.charCodeAt(n+1)]>>4,l[u++]=255&t);1===c&&(t=r[e.charCodeAt(n)]<<10|r[e.charCodeAt(n+1)]<<4|r[e.charCodeAt(n+2)]>>2,l[u++]=t>>8&255,l[u++]=255&t);return l},t.fromByteArray=function(e){for(var t,r=e.length,i=r%3,o=[],s=16383,a=0,l=r-i;a<l;a+=s)o.push(c(e,a,a+s>l?l:a+s));1===i?(t=e[r-1],o.push(n[t>>2]+n[t<<4&63]+"==")):2===i&&(t=(e[r-2]<<8)+e[r-1],o.push(n[t>>10]+n[t>>4&63]+n[t<<2&63]+"="));return o.join("")};for(var n=[],r=[],i="undefined"!=typeof Uint8Array?Uint8Array:Array,o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=0;s<64;++s)n[s]=o[s],r[o.charCodeAt(s)]=s;function a(e){var t=e.length;if(t%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var n=e.indexOf("=");return-1===n&&(n=t),[n,n===t?0:4-n%4]}function c(e,t,r){for(var i,o,s=[],a=t;a<r;a+=3)i=(e[a]<<16&16711680)+(e[a+1]<<8&65280)+(255&e[a+2]),s.push(n[(o=i)>>18&63]+n[o>>12&63]+n[o>>6&63]+n[63&o]);return s.join("")}r["-".charCodeAt(0)]=62,r["_".charCodeAt(0)]=63},74156:(e,t,n)=>{const r=n(20829);function i(e,t,n){const r=e[t]+e[n];let i=e[t+1]+e[n+1];r>=4294967296&&i++,e[t]=r,e[t+1]=i}function o(e,t,n,r){let i=e[t]+n;n<0&&(i+=4294967296);let o=e[t+1]+r;i>=4294967296&&o++,e[t]=i,e[t+1]=o}function s(e,t){return e[t]^e[t+1]<<8^e[t+2]<<16^e[t+3]<<24}function a(e,t,n,r,s,a){const c=d[s],l=d[s+1],_=d[a],p=d[a+1];i(u,e,t),o(u,e,c,l);let f=u[r]^u[e],m=u[r+1]^u[e+1];u[r]=m,u[r+1]=f,i(u,n,r),f=u[t]^u[n],m=u[t+1]^u[n+1],u[t]=f>>>24^m<<8,u[t+1]=m>>>24^f<<8,i(u,e,t),o(u,e,_,p),f=u[r]^u[e],m=u[r+1]^u[e+1],u[r]=f>>>16^m<<16,u[r+1]=m>>>16^f<<16,i(u,n,r),f=u[t]^u[n],m=u[t+1]^u[n+1],u[t]=m>>>31^f<<1,u[t+1]=f>>>31^m<<1}const c=new Uint32Array([4089235720,1779033703,2227873595,3144134277,4271175723,1013904242,1595750129,2773480762,2917565137,1359893119,725511199,2600822924,4215389547,528734635,327033209,1541459225]),l=new Uint8Array([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3,11,8,12,0,5,2,15,13,10,14,3,6,7,1,9,4,7,9,3,1,13,12,11,14,2,6,5,10,4,0,15,8,9,0,5,7,2,4,10,15,14,1,11,12,6,8,3,13,2,12,6,10,0,11,8,3,4,13,7,5,15,14,1,9,12,5,1,15,14,13,4,10,0,7,6,3,9,2,8,11,13,11,7,14,12,1,3,9,5,0,15,4,8,6,2,10,6,15,14,9,11,3,0,8,12,2,13,7,1,4,10,5,10,2,8,4,7,6,1,5,15,11,9,14,3,12,13,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3].map((function(e){return 2*e}))),u=new Uint32Array(32),d=new Uint32Array(32);function _(e,t){let n=0;for(n=0;n<16;n++)u[n]=e.h[n],u[n+16]=c[n];for(u[24]=u[24]^e.t,u[25]=u[25]^e.t/4294967296,t&&(u[28]=~u[28],u[29]=~u[29]),n=0;n<32;n++)d[n]=s(e.b,4*n);for(n=0;n<12;n++)a(0,8,16,24,l[16*n+0],l[16*n+1]),a(2,10,18,26,l[16*n+2],l[16*n+3]),a(4,12,20,28,l[16*n+4],l[16*n+5]),a(6,14,22,30,l[16*n+6],l[16*n+7]),a(0,10,20,30,l[16*n+8],l[16*n+9]),a(2,12,22,24,l[16*n+10],l[16*n+11]),a(4,14,16,26,l[16*n+12],l[16*n+13]),a(6,8,18,28,l[16*n+14],l[16*n+15]);for(n=0;n<16;n++)e.h[n]=e.h[n]^u[n]^u[n+16]}const p=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]);function f(e,t,n,r){if(0===e||e>64)throw new Error("Illegal output length, expected 0 < length <= 64");if(t&&t.length>64)throw new Error("Illegal key, expected Uint8Array with 0 < length <= 64");if(n&&16!==n.length)throw new Error("Illegal salt, expected Uint8Array with length is 16");if(r&&16!==r.length)throw new Error("Illegal personal, expected Uint8Array with length is 16");const i={b:new Uint8Array(128),h:new Uint32Array(16),t:0,c:0,outlen:e};p.fill(0),p[0]=e,t&&(p[1]=t.length),p[2]=1,p[3]=1,n&&p.set(n,32),r&&p.set(r,48);for(let o=0;o<16;o++)i.h[o]=c[o]^s(p,4*o);return t&&(m(i,t),i.c=128),i}function m(e,t){for(let n=0;n<t.length;n++)128===e.c&&(e.t+=e.c,_(e,!1),e.c=0),e.b[e.c++]=t[n]}function h(e){for(e.t+=e.c;e.c<128;)e.b[e.c++]=0;_(e,!0);const t=new Uint8Array(e.outlen);for(let n=0;n<e.outlen;n++)t[n]=e.h[n>>2]>>8*(3&n);return t}function g(e,t,n,i,o){n=n||64,e=r.normalizeInput(e),i&&(i=r.normalizeInput(i)),o&&(o=r.normalizeInput(o));const s=f(n,t,i,o);return m(s,e),h(s)}e.exports={blake2b:g,blake2bHex:function(e,t,n,i,o){const s=g(e,t,n,i,o);return r.toHex(s)},blake2bInit:f,blake2bUpdate:m,blake2bFinal:h}},51843:(e,t,n)=>{const r=n(20829);function i(e,t){return e[t]^e[t+1]<<8^e[t+2]<<16^e[t+3]<<24}function o(e,t,n,r,i,o){l[e]=l[e]+l[t]+i,l[r]=s(l[r]^l[e],16),l[n]=l[n]+l[r],l[t]=s(l[t]^l[n],12),l[e]=l[e]+l[t]+o,l[r]=s(l[r]^l[e],8),l[n]=l[n]+l[r],l[t]=s(l[t]^l[n],7)}function s(e,t){return e>>>t^e<<32-t}const a=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),c=new Uint8Array([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3,11,8,12,0,5,2,15,13,10,14,3,6,7,1,9,4,7,9,3,1,13,12,11,14,2,6,5,10,4,0,15,8,9,0,5,7,2,4,10,15,14,1,11,12,6,8,3,13,2,12,6,10,0,11,8,3,4,13,7,5,15,14,1,9,12,5,1,15,14,13,4,10,0,7,6,3,9,2,8,11,13,11,7,14,12,1,3,9,5,0,15,4,8,6,2,10,6,15,14,9,11,3,0,8,12,2,13,7,1,4,10,5,10,2,8,4,7,6,1,5,15,11,9,14,3,12,13,0]),l=new Uint32Array(16),u=new Uint32Array(16);function d(e,t){let n=0;for(n=0;n<8;n++)l[n]=e.h[n],l[n+8]=a[n];for(l[12]^=e.t,l[13]^=e.t/4294967296,t&&(l[14]=~l[14]),n=0;n<16;n++)u[n]=i(e.b,4*n);for(n=0;n<10;n++)o(0,4,8,12,u[c[16*n+0]],u[c[16*n+1]]),o(1,5,9,13,u[c[16*n+2]],u[c[16*n+3]]),o(2,6,10,14,u[c[16*n+4]],u[c[16*n+5]]),o(3,7,11,15,u[c[16*n+6]],u[c[16*n+7]]),o(0,5,10,15,u[c[16*n+8]],u[c[16*n+9]]),o(1,6,11,12,u[c[16*n+10]],u[c[16*n+11]]),o(2,7,8,13,u[c[16*n+12]],u[c[16*n+13]]),o(3,4,9,14,u[c[16*n+14]],u[c[16*n+15]]);for(n=0;n<8;n++)e.h[n]^=l[n]^l[n+8]}function _(e,t){if(!(e>0&&e<=32))throw new Error("Incorrect output length, should be in [1, 32]");const n=t?t.length:0;if(t&&!(n>0&&n<=32))throw new Error("Incorrect key length, should be in [1, 32]");const r={h:new Uint32Array(a),b:new Uint8Array(64),c:0,t:0,outlen:e};return r.h[0]^=16842752^n<<8^e,n>0&&(p(r,t),r.c=64),r}function p(e,t){for(let n=0;n<t.length;n++)64===e.c&&(e.t+=e.c,d(e,!1),e.c=0),e.b[e.c++]=t[n]}function f(e){for(e.t+=e.c;e.c<64;)e.b[e.c++]=0;d(e,!0);const t=new Uint8Array(e.outlen);for(let n=0;n<e.outlen;n++)t[n]=e.h[n>>2]>>8*(3&n)&255;return t}function m(e,t,n){n=n||32,e=r.normalizeInput(e);const i=_(n,t);return p(i,e),f(i)}e.exports={blake2s:m,blake2sHex:function(e,t,n){const i=m(e,t,n);return r.toHex(i)},blake2sInit:_,blake2sUpdate:p,blake2sFinal:f}},92493:(e,t,n)=>{const r=n(74156),i=n(51843);e.exports={blake2b:r.blake2b,blake2bHex:r.blake2bHex,blake2bInit:r.blake2bInit,blake2bUpdate:r.blake2bUpdate,blake2bFinal:r.blake2bFinal,blake2s:i.blake2s,blake2sHex:i.blake2sHex,blake2sInit:i.blake2sInit,blake2sUpdate:i.blake2sUpdate,blake2sFinal:i.blake2sFinal}},20829:(e,t,n)=>{var r=n(96763);function i(e){return(4294967296+e).toString(16).substring(1)}e.exports={normalizeInput:function(e){let t;if(e instanceof Uint8Array)t=e;else{if("string"!=typeof e)throw new Error("Input must be an string, Buffer or Uint8Array");t=(new TextEncoder).encode(e)}return t},toHex:function(e){return Array.prototype.map.call(e,(function(e){return(e<16?"0":"")+e.toString(16)})).join("")},debugPrint:function(e,t,n){let o="\n"+e+" = ";for(let r=0;r<t.length;r+=2){if(32===n)o+=i(t[r]).toUpperCase(),o+=" ",o+=i(t[r+1]).toUpperCase();else{if(64!==n)throw new Error("Invalid size "+n);o+=i(t[r+1]).toUpperCase(),o+=i(t[r]).toUpperCase()}r%6==4?o+="\n"+new Array(e.length+4).join(" "):r<t.length-2&&(o+=" ")}r.log(o)},testSpeed:function(e,t,n){let i=(new Date).getTime();const o=new Uint8Array(t);for(let r=0;r<t;r++)o[r]=r%256;const s=(new Date).getTime();r.log("Generated random input in "+(s-i)+"ms"),i=s;for(let a=0;a<n;a++){const n=e(o),s=(new Date).getTime(),a=s-i;i=s,r.log("Hashed in "+a+"ms: "+n.substring(0,20)+"..."),r.log(Math.round(t/(1<<20)/(a/1e3)*100)/100+" MB PER SECOND")}}}},39404:function(e,t,n){!function(e,t){"use strict";function r(e,t){if(!e)throw new Error(t||"Assertion failed")}function i(e,t){e.super_=t;var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e}function o(e,t,n){if(o.isBN(e))return e;this.negative=0,this.words=null,this.length=0,this.red=null,null!==e&&("le"!==t&&"be"!==t||(n=t,t=10),this._init(e||0,t||10,n||"be"))}var s;"object"==typeof e?e.exports=o:t.BN=o,o.BN=o,o.wordSize=26;try{s="undefined"!=typeof window&&void 0!==window.Buffer?window.Buffer:n(47790).Buffer}catch(k){}function a(e,t){var n=e.charCodeAt(t);return n>=65&&n<=70?n-55:n>=97&&n<=102?n-87:n-48&15}function c(e,t,n){var r=a(e,n);return n-1>=t&&(r|=a(e,n-1)<<4),r}function l(e,t,n,r){for(var i=0,o=Math.min(e.length,n),s=t;s<o;s++){var a=e.charCodeAt(s)-48;i*=r,i+=a>=49?a-49+10:a>=17?a-17+10:a}return i}o.isBN=function(e){return e instanceof o||null!==e&&"object"==typeof e&&e.constructor.wordSize===o.wordSize&&Array.isArray(e.words)},o.max=function(e,t){return e.cmp(t)>0?e:t},o.min=function(e,t){return e.cmp(t)<0?e:t},o.prototype._init=function(e,t,n){if("number"==typeof e)return this._initNumber(e,t,n);if("object"==typeof e)return this._initArray(e,t,n);"hex"===t&&(t=16),r(t===(0|t)&&t>=2&&t<=36);var i=0;"-"===(e=e.toString().replace(/\s+/g,""))[0]&&(i++,this.negative=1),i<e.length&&(16===t?this._parseHex(e,i,n):(this._parseBase(e,t,i),"le"===n&&this._initArray(this.toArray(),t,n)))},o.prototype._initNumber=function(e,t,n){e<0&&(this.negative=1,e=-e),e<67108864?(this.words=[67108863&e],this.length=1):e<4503599627370496?(this.words=[67108863&e,e/67108864&67108863],this.length=2):(r(e<9007199254740992),this.words=[67108863&e,e/67108864&67108863,1],this.length=3),"le"===n&&this._initArray(this.toArray(),t,n)},o.prototype._initArray=function(e,t,n){if(r("number"==typeof e.length),e.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(e.length/3),this.words=new Array(this.length);for(var i=0;i<this.length;i++)this.words[i]=0;var o,s,a=0;if("be"===n)for(i=e.length-1,o=0;i>=0;i-=3)s=e[i]|e[i-1]<<8|e[i-2]<<16,this.words[o]|=s<<a&67108863,this.words[o+1]=s>>>26-a&67108863,(a+=24)>=26&&(a-=26,o++);else if("le"===n)for(i=0,o=0;i<e.length;i+=3)s=e[i]|e[i+1]<<8|e[i+2]<<16,this.words[o]|=s<<a&67108863,this.words[o+1]=s>>>26-a&67108863,(a+=24)>=26&&(a-=26,o++);return this.strip()},o.prototype._parseHex=function(e,t,n){this.length=Math.ceil((e.length-t)/6),this.words=new Array(this.length);for(var r=0;r<this.length;r++)this.words[r]=0;var i,o=0,s=0;if("be"===n)for(r=e.length-1;r>=t;r-=2)i=c(e,t,r)<<o,this.words[s]|=67108863&i,o>=18?(o-=18,s+=1,this.words[s]|=i>>>26):o+=8;else for(r=(e.length-t)%2==0?t+1:t;r<e.length;r+=2)i=c(e,t,r)<<o,this.words[s]|=67108863&i,o>=18?(o-=18,s+=1,this.words[s]|=i>>>26):o+=8;this.strip()},o.prototype._parseBase=function(e,t,n){this.words=[0],this.length=1;for(var r=0,i=1;i<=67108863;i*=t)r++;r--,i=i/t|0;for(var o=e.length-n,s=o%r,a=Math.min(o,o-s)+n,c=0,u=n;u<a;u+=r)c=l(e,u,u+r,t),this.imuln(i),this.words[0]+c<67108864?this.words[0]+=c:this._iaddn(c);if(0!==s){var d=1;for(c=l(e,u,e.length,t),u=0;u<s;u++)d*=t;this.imuln(d),this.words[0]+c<67108864?this.words[0]+=c:this._iaddn(c)}this.strip()},o.prototype.copy=function(e){e.words=new Array(this.length);for(var t=0;t<this.length;t++)e.words[t]=this.words[t];e.length=this.length,e.negative=this.negative,e.red=this.red},o.prototype.clone=function(){var e=new o(null);return this.copy(e),e},o.prototype._expand=function(e){for(;this.length<e;)this.words[this.length++]=0;return this},o.prototype.strip=function(){for(;this.length>1&&0===this.words[this.length-1];)this.length--;return this._normSign()},o.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},o.prototype.inspect=function(){return(this.red?"<BN-R: ":"<BN: ")+this.toString(16)+">"};var u=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],d=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],_=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];function p(e,t,n){n.negative=t.negative^e.negative;var r=e.length+t.length|0;n.length=r,r=r-1|0;var i=0|e.words[0],o=0|t.words[0],s=i*o,a=67108863&s,c=s/67108864|0;n.words[0]=a;for(var l=1;l<r;l++){for(var u=c>>>26,d=67108863&c,_=Math.min(l,t.length-1),p=Math.max(0,l-e.length+1);p<=_;p++){var f=l-p|0;u+=(s=(i=0|e.words[f])*(o=0|t.words[p])+d)/67108864|0,d=67108863&s}n.words[l]=0|d,c=0|u}return 0!==c?n.words[l]=0|c:n.length--,n.strip()}o.prototype.toString=function(e,t){var n;if(t=0|t||1,16===(e=e||10)||"hex"===e){n="";for(var i=0,o=0,s=0;s<this.length;s++){var a=this.words[s],c=(16777215&(a<<i|o)).toString(16);n=0!==(o=a>>>24-i&16777215)||s!==this.length-1?u[6-c.length]+c+n:c+n,(i+=2)>=26&&(i-=26,s--)}for(0!==o&&(n=o.toString(16)+n);n.length%t!=0;)n="0"+n;return 0!==this.negative&&(n="-"+n),n}if(e===(0|e)&&e>=2&&e<=36){var l=d[e],p=_[e];n="";var f=this.clone();for(f.negative=0;!f.isZero();){var m=f.modn(p).toString(e);n=(f=f.idivn(p)).isZero()?m+n:u[l-m.length]+m+n}for(this.isZero()&&(n="0"+n);n.length%t!=0;)n="0"+n;return 0!==this.negative&&(n="-"+n),n}r(!1,"Base should be between 2 and 36")},o.prototype.toNumber=function(){var e=this.words[0];return 2===this.length?e+=67108864*this.words[1]:3===this.length&&1===this.words[2]?e+=4503599627370496+67108864*this.words[1]:this.length>2&&r(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-e:e},o.prototype.toJSON=function(){return this.toString(16)},o.prototype.toBuffer=function(e,t){return r(void 0!==s),this.toArrayLike(s,e,t)},o.prototype.toArray=function(e,t){return this.toArrayLike(Array,e,t)},o.prototype.toArrayLike=function(e,t,n){var i=this.byteLength(),o=n||Math.max(1,i);r(i<=o,"byte array longer than desired length"),r(o>0,"Requested array length <= 0"),this.strip();var s,a,c="le"===t,l=new e(o),u=this.clone();if(c){for(a=0;!u.isZero();a++)s=u.andln(255),u.iushrn(8),l[a]=s;for(;a<o;a++)l[a]=0}else{for(a=0;a<o-i;a++)l[a]=0;for(a=0;!u.isZero();a++)s=u.andln(255),u.iushrn(8),l[o-a-1]=s}return l},Math.clz32?o.prototype._countBits=function(e){return 32-Math.clz32(e)}:o.prototype._countBits=function(e){var t=e,n=0;return t>=4096&&(n+=13,t>>>=13),t>=64&&(n+=7,t>>>=7),t>=8&&(n+=4,t>>>=4),t>=2&&(n+=2,t>>>=2),n+t},o.prototype._zeroBits=function(e){if(0===e)return 26;var t=e,n=0;return 8191&t||(n+=13,t>>>=13),127&t||(n+=7,t>>>=7),15&t||(n+=4,t>>>=4),3&t||(n+=2,t>>>=2),1&t||n++,n},o.prototype.bitLength=function(){var e=this.words[this.length-1],t=this._countBits(e);return 26*(this.length-1)+t},o.prototype.zeroBits=function(){if(this.isZero())return 0;for(var e=0,t=0;t<this.length;t++){var n=this._zeroBits(this.words[t]);if(e+=n,26!==n)break}return e},o.prototype.byteLength=function(){return Math.ceil(this.bitLength()/8)},o.prototype.toTwos=function(e){return 0!==this.negative?this.abs().inotn(e).iaddn(1):this.clone()},o.prototype.fromTwos=function(e){return this.testn(e-1)?this.notn(e).iaddn(1).ineg():this.clone()},o.prototype.isNeg=function(){return 0!==this.negative},o.prototype.neg=function(){return this.clone().ineg()},o.prototype.ineg=function(){return this.isZero()||(this.negative^=1),this},o.prototype.iuor=function(e){for(;this.length<e.length;)this.words[this.length++]=0;for(var t=0;t<e.length;t++)this.words[t]=this.words[t]|e.words[t];return this.strip()},o.prototype.ior=function(e){return r(!(this.negative|e.negative)),this.iuor(e)},o.prototype.or=function(e){return this.length>e.length?this.clone().ior(e):e.clone().ior(this)},o.prototype.uor=function(e){return this.length>e.length?this.clone().iuor(e):e.clone().iuor(this)},o.prototype.iuand=function(e){var t;t=this.length>e.length?e:this;for(var n=0;n<t.length;n++)this.words[n]=this.words[n]&e.words[n];return this.length=t.length,this.strip()},o.prototype.iand=function(e){return r(!(this.negative|e.negative)),this.iuand(e)},o.prototype.and=function(e){return this.length>e.length?this.clone().iand(e):e.clone().iand(this)},o.prototype.uand=function(e){return this.length>e.length?this.clone().iuand(e):e.clone().iuand(this)},o.prototype.iuxor=function(e){var t,n;this.length>e.length?(t=this,n=e):(t=e,n=this);for(var r=0;r<n.length;r++)this.words[r]=t.words[r]^n.words[r];if(this!==t)for(;r<t.length;r++)this.words[r]=t.words[r];return this.length=t.length,this.strip()},o.prototype.ixor=function(e){return r(!(this.negative|e.negative)),this.iuxor(e)},o.prototype.xor=function(e){return this.length>e.length?this.clone().ixor(e):e.clone().ixor(this)},o.prototype.uxor=function(e){return this.length>e.length?this.clone().iuxor(e):e.clone().iuxor(this)},o.prototype.inotn=function(e){r("number"==typeof e&&e>=0);var t=0|Math.ceil(e/26),n=e%26;this._expand(t),n>0&&t--;for(var i=0;i<t;i++)this.words[i]=67108863&~this.words[i];return n>0&&(this.words[i]=~this.words[i]&67108863>>26-n),this.strip()},o.prototype.notn=function(e){return this.clone().inotn(e)},o.prototype.setn=function(e,t){r("number"==typeof e&&e>=0);var n=e/26|0,i=e%26;return this._expand(n+1),this.words[n]=t?this.words[n]|1<<i:this.words[n]&~(1<<i),this.strip()},o.prototype.iadd=function(e){var t,n,r;if(0!==this.negative&&0===e.negative)return this.negative=0,t=this.isub(e),this.negative^=1,this._normSign();if(0===this.negative&&0!==e.negative)return e.negative=0,t=this.isub(e),e.negative=1,t._normSign();this.length>e.length?(n=this,r=e):(n=e,r=this);for(var i=0,o=0;o<r.length;o++)t=(0|n.words[o])+(0|r.words[o])+i,this.words[o]=67108863&t,i=t>>>26;for(;0!==i&&o<n.length;o++)t=(0|n.words[o])+i,this.words[o]=67108863&t,i=t>>>26;if(this.length=n.length,0!==i)this.words[this.length]=i,this.length++;else if(n!==this)for(;o<n.length;o++)this.words[o]=n.words[o];return this},o.prototype.add=function(e){var t;return 0!==e.negative&&0===this.negative?(e.negative=0,t=this.sub(e),e.negative^=1,t):0===e.negative&&0!==this.negative?(this.negative=0,t=e.sub(this),this.negative=1,t):this.length>e.length?this.clone().iadd(e):e.clone().iadd(this)},o.prototype.isub=function(e){if(0!==e.negative){e.negative=0;var t=this.iadd(e);return e.negative=1,t._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(e),this.negative=1,this._normSign();var n,r,i=this.cmp(e);if(0===i)return this.negative=0,this.length=1,this.words[0]=0,this;i>0?(n=this,r=e):(n=e,r=this);for(var o=0,s=0;s<r.length;s++)o=(t=(0|n.words[s])-(0|r.words[s])+o)>>26,this.words[s]=67108863&t;for(;0!==o&&s<n.length;s++)o=(t=(0|n.words[s])+o)>>26,this.words[s]=67108863&t;if(0===o&&s<n.length&&n!==this)for(;s<n.length;s++)this.words[s]=n.words[s];return this.length=Math.max(this.length,s),n!==this&&(this.negative=1),this.strip()},o.prototype.sub=function(e){return this.clone().isub(e)};var f=function(e,t,n){var r,i,o,s=e.words,a=t.words,c=n.words,l=0,u=0|s[0],d=8191&u,_=u>>>13,p=0|s[1],f=8191&p,m=p>>>13,h=0|s[2],g=8191&h,y=h>>>13,v=0|s[3],b=8191&v,x=v>>>13,S=0|s[4],T=8191&S,w=S>>>13,k=0|s[5],E=8191&k,C=k>>>13,N=0|s[6],A=8191&N,I=N>>>13,D=0|s[7],P=8191&D,M=D>>>13,O=0|s[8],F=8191&O,R=O>>>13,L=0|s[9],j=8191&L,z=L>>>13,U=0|a[0],B=8191&U,q=U>>>13,V=0|a[1],K=8191&V,J=V>>>13,W=0|a[2],H=8191&W,G=W>>>13,Q=0|a[3],Y=8191&Q,Z=Q>>>13,X=0|a[4],$=8191&X,ee=X>>>13,te=0|a[5],ne=8191&te,re=te>>>13,ie=0|a[6],oe=8191&ie,se=ie>>>13,ae=0|a[7],ce=8191&ae,le=ae>>>13,ue=0|a[8],de=8191&ue,_e=ue>>>13,pe=0|a[9],fe=8191&pe,me=pe>>>13;n.negative=e.negative^t.negative,n.length=19;var he=(l+(r=Math.imul(d,B))|0)+((8191&(i=(i=Math.imul(d,q))+Math.imul(_,B)|0))<<13)|0;l=((o=Math.imul(_,q))+(i>>>13)|0)+(he>>>26)|0,he&=67108863,r=Math.imul(f,B),i=(i=Math.imul(f,q))+Math.imul(m,B)|0,o=Math.imul(m,q);var ge=(l+(r=r+Math.imul(d,K)|0)|0)+((8191&(i=(i=i+Math.imul(d,J)|0)+Math.imul(_,K)|0))<<13)|0;l=((o=o+Math.imul(_,J)|0)+(i>>>13)|0)+(ge>>>26)|0,ge&=67108863,r=Math.imul(g,B),i=(i=Math.imul(g,q))+Math.imul(y,B)|0,o=Math.imul(y,q),r=r+Math.imul(f,K)|0,i=(i=i+Math.imul(f,J)|0)+Math.imul(m,K)|0,o=o+Math.imul(m,J)|0;var ye=(l+(r=r+Math.imul(d,H)|0)|0)+((8191&(i=(i=i+Math.imul(d,G)|0)+Math.imul(_,H)|0))<<13)|0;l=((o=o+Math.imul(_,G)|0)+(i>>>13)|0)+(ye>>>26)|0,ye&=67108863,r=Math.imul(b,B),i=(i=Math.imul(b,q))+Math.imul(x,B)|0,o=Math.imul(x,q),r=r+Math.imul(g,K)|0,i=(i=i+Math.imul(g,J)|0)+Math.imul(y,K)|0,o=o+Math.imul(y,J)|0,r=r+Math.imul(f,H)|0,i=(i=i+Math.imul(f,G)|0)+Math.imul(m,H)|0,o=o+Math.imul(m,G)|0;var ve=(l+(r=r+Math.imul(d,Y)|0)|0)+((8191&(i=(i=i+Math.imul(d,Z)|0)+Math.imul(_,Y)|0))<<13)|0;l=((o=o+Math.imul(_,Z)|0)+(i>>>13)|0)+(ve>>>26)|0,ve&=67108863,r=Math.imul(T,B),i=(i=Math.imul(T,q))+Math.imul(w,B)|0,o=Math.imul(w,q),r=r+Math.imul(b,K)|0,i=(i=i+Math.imul(b,J)|0)+Math.imul(x,K)|0,o=o+Math.imul(x,J)|0,r=r+Math.imul(g,H)|0,i=(i=i+Math.imul(g,G)|0)+Math.imul(y,H)|0,o=o+Math.imul(y,G)|0,r=r+Math.imul(f,Y)|0,i=(i=i+Math.imul(f,Z)|0)+Math.imul(m,Y)|0,o=o+Math.imul(m,Z)|0;var be=(l+(r=r+Math.imul(d,$)|0)|0)+((8191&(i=(i=i+Math.imul(d,ee)|0)+Math.imul(_,$)|0))<<13)|0;l=((o=o+Math.imul(_,ee)|0)+(i>>>13)|0)+(be>>>26)|0,be&=67108863,r=Math.imul(E,B),i=(i=Math.imul(E,q))+Math.imul(C,B)|0,o=Math.imul(C,q),r=r+Math.imul(T,K)|0,i=(i=i+Math.imul(T,J)|0)+Math.imul(w,K)|0,o=o+Math.imul(w,J)|0,r=r+Math.imul(b,H)|0,i=(i=i+Math.imul(b,G)|0)+Math.imul(x,H)|0,o=o+Math.imul(x,G)|0,r=r+Math.imul(g,Y)|0,i=(i=i+Math.imul(g,Z)|0)+Math.imul(y,Y)|0,o=o+Math.imul(y,Z)|0,r=r+Math.imul(f,$)|0,i=(i=i+Math.imul(f,ee)|0)+Math.imul(m,$)|0,o=o+Math.imul(m,ee)|0;var xe=(l+(r=r+Math.imul(d,ne)|0)|0)+((8191&(i=(i=i+Math.imul(d,re)|0)+Math.imul(_,ne)|0))<<13)|0;l=((o=o+Math.imul(_,re)|0)+(i>>>13)|0)+(xe>>>26)|0,xe&=67108863,r=Math.imul(A,B),i=(i=Math.imul(A,q))+Math.imul(I,B)|0,o=Math.imul(I,q),r=r+Math.imul(E,K)|0,i=(i=i+Math.imul(E,J)|0)+Math.imul(C,K)|0,o=o+Math.imul(C,J)|0,r=r+Math.imul(T,H)|0,i=(i=i+Math.imul(T,G)|0)+Math.imul(w,H)|0,o=o+Math.imul(w,G)|0,r=r+Math.imul(b,Y)|0,i=(i=i+Math.imul(b,Z)|0)+Math.imul(x,Y)|0,o=o+Math.imul(x,Z)|0,r=r+Math.imul(g,$)|0,i=(i=i+Math.imul(g,ee)|0)+Math.imul(y,$)|0,o=o+Math.imul(y,ee)|0,r=r+Math.imul(f,ne)|0,i=(i=i+Math.imul(f,re)|0)+Math.imul(m,ne)|0,o=o+Math.imul(m,re)|0;var Se=(l+(r=r+Math.imul(d,oe)|0)|0)+((8191&(i=(i=i+Math.imul(d,se)|0)+Math.imul(_,oe)|0))<<13)|0;l=((o=o+Math.imul(_,se)|0)+(i>>>13)|0)+(Se>>>26)|0,Se&=67108863,r=Math.imul(P,B),i=(i=Math.imul(P,q))+Math.imul(M,B)|0,o=Math.imul(M,q),r=r+Math.imul(A,K)|0,i=(i=i+Math.imul(A,J)|0)+Math.imul(I,K)|0,o=o+Math.imul(I,J)|0,r=r+Math.imul(E,H)|0,i=(i=i+Math.imul(E,G)|0)+Math.imul(C,H)|0,o=o+Math.imul(C,G)|0,r=r+Math.imul(T,Y)|0,i=(i=i+Math.imul(T,Z)|0)+Math.imul(w,Y)|0,o=o+Math.imul(w,Z)|0,r=r+Math.imul(b,$)|0,i=(i=i+Math.imul(b,ee)|0)+Math.imul(x,$)|0,o=o+Math.imul(x,ee)|0,r=r+Math.imul(g,ne)|0,i=(i=i+Math.imul(g,re)|0)+Math.imul(y,ne)|0,o=o+Math.imul(y,re)|0,r=r+Math.imul(f,oe)|0,i=(i=i+Math.imul(f,se)|0)+Math.imul(m,oe)|0,o=o+Math.imul(m,se)|0;var Te=(l+(r=r+Math.imul(d,ce)|0)|0)+((8191&(i=(i=i+Math.imul(d,le)|0)+Math.imul(_,ce)|0))<<13)|0;l=((o=o+Math.imul(_,le)|0)+(i>>>13)|0)+(Te>>>26)|0,Te&=67108863,r=Math.imul(F,B),i=(i=Math.imul(F,q))+Math.imul(R,B)|0,o=Math.imul(R,q),r=r+Math.imul(P,K)|0,i=(i=i+Math.imul(P,J)|0)+Math.imul(M,K)|0,o=o+Math.imul(M,J)|0,r=r+Math.imul(A,H)|0,i=(i=i+Math.imul(A,G)|0)+Math.imul(I,H)|0,o=o+Math.imul(I,G)|0,r=r+Math.imul(E,Y)|0,i=(i=i+Math.imul(E,Z)|0)+Math.imul(C,Y)|0,o=o+Math.imul(C,Z)|0,r=r+Math.imul(T,$)|0,i=(i=i+Math.imul(T,ee)|0)+Math.imul(w,$)|0,o=o+Math.imul(w,ee)|0,r=r+Math.imul(b,ne)|0,i=(i=i+Math.imul(b,re)|0)+Math.imul(x,ne)|0,o=o+Math.imul(x,re)|0,r=r+Math.imul(g,oe)|0,i=(i=i+Math.imul(g,se)|0)+Math.imul(y,oe)|0,o=o+Math.imul(y,se)|0,r=r+Math.imul(f,ce)|0,i=(i=i+Math.imul(f,le)|0)+Math.imul(m,ce)|0,o=o+Math.imul(m,le)|0;var we=(l+(r=r+Math.imul(d,de)|0)|0)+((8191&(i=(i=i+Math.imul(d,_e)|0)+Math.imul(_,de)|0))<<13)|0;l=((o=o+Math.imul(_,_e)|0)+(i>>>13)|0)+(we>>>26)|0,we&=67108863,r=Math.imul(j,B),i=(i=Math.imul(j,q))+Math.imul(z,B)|0,o=Math.imul(z,q),r=r+Math.imul(F,K)|0,i=(i=i+Math.imul(F,J)|0)+Math.imul(R,K)|0,o=o+Math.imul(R,J)|0,r=r+Math.imul(P,H)|0,i=(i=i+Math.imul(P,G)|0)+Math.imul(M,H)|0,o=o+Math.imul(M,G)|0,r=r+Math.imul(A,Y)|0,i=(i=i+Math.imul(A,Z)|0)+Math.imul(I,Y)|0,o=o+Math.imul(I,Z)|0,r=r+Math.imul(E,$)|0,i=(i=i+Math.imul(E,ee)|0)+Math.imul(C,$)|0,o=o+Math.imul(C,ee)|0,r=r+Math.imul(T,ne)|0,i=(i=i+Math.imul(T,re)|0)+Math.imul(w,ne)|0,o=o+Math.imul(w,re)|0,r=r+Math.imul(b,oe)|0,i=(i=i+Math.imul(b,se)|0)+Math.imul(x,oe)|0,o=o+Math.imul(x,se)|0,r=r+Math.imul(g,ce)|0,i=(i=i+Math.imul(g,le)|0)+Math.imul(y,ce)|0,o=o+Math.imul(y,le)|0,r=r+Math.imul(f,de)|0,i=(i=i+Math.imul(f,_e)|0)+Math.imul(m,de)|0,o=o+Math.imul(m,_e)|0;var ke=(l+(r=r+Math.imul(d,fe)|0)|0)+((8191&(i=(i=i+Math.imul(d,me)|0)+Math.imul(_,fe)|0))<<13)|0;l=((o=o+Math.imul(_,me)|0)+(i>>>13)|0)+(ke>>>26)|0,ke&=67108863,r=Math.imul(j,K),i=(i=Math.imul(j,J))+Math.imul(z,K)|0,o=Math.imul(z,J),r=r+Math.imul(F,H)|0,i=(i=i+Math.imul(F,G)|0)+Math.imul(R,H)|0,o=o+Math.imul(R,G)|0,r=r+Math.imul(P,Y)|0,i=(i=i+Math.imul(P,Z)|0)+Math.imul(M,Y)|0,o=o+Math.imul(M,Z)|0,r=r+Math.imul(A,$)|0,i=(i=i+Math.imul(A,ee)|0)+Math.imul(I,$)|0,o=o+Math.imul(I,ee)|0,r=r+Math.imul(E,ne)|0,i=(i=i+Math.imul(E,re)|0)+Math.imul(C,ne)|0,o=o+Math.imul(C,re)|0,r=r+Math.imul(T,oe)|0,i=(i=i+Math.imul(T,se)|0)+Math.imul(w,oe)|0,o=o+Math.imul(w,se)|0,r=r+Math.imul(b,ce)|0,i=(i=i+Math.imul(b,le)|0)+Math.imul(x,ce)|0,o=o+Math.imul(x,le)|0,r=r+Math.imul(g,de)|0,i=(i=i+Math.imul(g,_e)|0)+Math.imul(y,de)|0,o=o+Math.imul(y,_e)|0;var Ee=(l+(r=r+Math.imul(f,fe)|0)|0)+((8191&(i=(i=i+Math.imul(f,me)|0)+Math.imul(m,fe)|0))<<13)|0;l=((o=o+Math.imul(m,me)|0)+(i>>>13)|0)+(Ee>>>26)|0,Ee&=67108863,r=Math.imul(j,H),i=(i=Math.imul(j,G))+Math.imul(z,H)|0,o=Math.imul(z,G),r=r+Math.imul(F,Y)|0,i=(i=i+Math.imul(F,Z)|0)+Math.imul(R,Y)|0,o=o+Math.imul(R,Z)|0,r=r+Math.imul(P,$)|0,i=(i=i+Math.imul(P,ee)|0)+Math.imul(M,$)|0,o=o+Math.imul(M,ee)|0,r=r+Math.imul(A,ne)|0,i=(i=i+Math.imul(A,re)|0)+Math.imul(I,ne)|0,o=o+Math.imul(I,re)|0,r=r+Math.imul(E,oe)|0,i=(i=i+Math.imul(E,se)|0)+Math.imul(C,oe)|0,o=o+Math.imul(C,se)|0,r=r+Math.imul(T,ce)|0,i=(i=i+Math.imul(T,le)|0)+Math.imul(w,ce)|0,o=o+Math.imul(w,le)|0,r=r+Math.imul(b,de)|0,i=(i=i+Math.imul(b,_e)|0)+Math.imul(x,de)|0,o=o+Math.imul(x,_e)|0;var Ce=(l+(r=r+Math.imul(g,fe)|0)|0)+((8191&(i=(i=i+Math.imul(g,me)|0)+Math.imul(y,fe)|0))<<13)|0;l=((o=o+Math.imul(y,me)|0)+(i>>>13)|0)+(Ce>>>26)|0,Ce&=67108863,r=Math.imul(j,Y),i=(i=Math.imul(j,Z))+Math.imul(z,Y)|0,o=Math.imul(z,Z),r=r+Math.imul(F,$)|0,i=(i=i+Math.imul(F,ee)|0)+Math.imul(R,$)|0,o=o+Math.imul(R,ee)|0,r=r+Math.imul(P,ne)|0,i=(i=i+Math.imul(P,re)|0)+Math.imul(M,ne)|0,o=o+Math.imul(M,re)|0,r=r+Math.imul(A,oe)|0,i=(i=i+Math.imul(A,se)|0)+Math.imul(I,oe)|0,o=o+Math.imul(I,se)|0,r=r+Math.imul(E,ce)|0,i=(i=i+Math.imul(E,le)|0)+Math.imul(C,ce)|0,o=o+Math.imul(C,le)|0,r=r+Math.imul(T,de)|0,i=(i=i+Math.imul(T,_e)|0)+Math.imul(w,de)|0,o=o+Math.imul(w,_e)|0;var Ne=(l+(r=r+Math.imul(b,fe)|0)|0)+((8191&(i=(i=i+Math.imul(b,me)|0)+Math.imul(x,fe)|0))<<13)|0;l=((o=o+Math.imul(x,me)|0)+(i>>>13)|0)+(Ne>>>26)|0,Ne&=67108863,r=Math.imul(j,$),i=(i=Math.imul(j,ee))+Math.imul(z,$)|0,o=Math.imul(z,ee),r=r+Math.imul(F,ne)|0,i=(i=i+Math.imul(F,re)|0)+Math.imul(R,ne)|0,o=o+Math.imul(R,re)|0,r=r+Math.imul(P,oe)|0,i=(i=i+Math.imul(P,se)|0)+Math.imul(M,oe)|0,o=o+Math.imul(M,se)|0,r=r+Math.imul(A,ce)|0,i=(i=i+Math.imul(A,le)|0)+Math.imul(I,ce)|0,o=o+Math.imul(I,le)|0,r=r+Math.imul(E,de)|0,i=(i=i+Math.imul(E,_e)|0)+Math.imul(C,de)|0,o=o+Math.imul(C,_e)|0;var Ae=(l+(r=r+Math.imul(T,fe)|0)|0)+((8191&(i=(i=i+Math.imul(T,me)|0)+Math.imul(w,fe)|0))<<13)|0;l=((o=o+Math.imul(w,me)|0)+(i>>>13)|0)+(Ae>>>26)|0,Ae&=67108863,r=Math.imul(j,ne),i=(i=Math.imul(j,re))+Math.imul(z,ne)|0,o=Math.imul(z,re),r=r+Math.imul(F,oe)|0,i=(i=i+Math.imul(F,se)|0)+Math.imul(R,oe)|0,o=o+Math.imul(R,se)|0,r=r+Math.imul(P,ce)|0,i=(i=i+Math.imul(P,le)|0)+Math.imul(M,ce)|0,o=o+Math.imul(M,le)|0,r=r+Math.imul(A,de)|0,i=(i=i+Math.imul(A,_e)|0)+Math.imul(I,de)|0,o=o+Math.imul(I,_e)|0;var Ie=(l+(r=r+Math.imul(E,fe)|0)|0)+((8191&(i=(i=i+Math.imul(E,me)|0)+Math.imul(C,fe)|0))<<13)|0;l=((o=o+Math.imul(C,me)|0)+(i>>>13)|0)+(Ie>>>26)|0,Ie&=67108863,r=Math.imul(j,oe),i=(i=Math.imul(j,se))+Math.imul(z,oe)|0,o=Math.imul(z,se),r=r+Math.imul(F,ce)|0,i=(i=i+Math.imul(F,le)|0)+Math.imul(R,ce)|0,o=o+Math.imul(R,le)|0,r=r+Math.imul(P,de)|0,i=(i=i+Math.imul(P,_e)|0)+Math.imul(M,de)|0,o=o+Math.imul(M,_e)|0;var De=(l+(r=r+Math.imul(A,fe)|0)|0)+((8191&(i=(i=i+Math.imul(A,me)|0)+Math.imul(I,fe)|0))<<13)|0;l=((o=o+Math.imul(I,me)|0)+(i>>>13)|0)+(De>>>26)|0,De&=67108863,r=Math.imul(j,ce),i=(i=Math.imul(j,le))+Math.imul(z,ce)|0,o=Math.imul(z,le),r=r+Math.imul(F,de)|0,i=(i=i+Math.imul(F,_e)|0)+Math.imul(R,de)|0,o=o+Math.imul(R,_e)|0;var Pe=(l+(r=r+Math.imul(P,fe)|0)|0)+((8191&(i=(i=i+Math.imul(P,me)|0)+Math.imul(M,fe)|0))<<13)|0;l=((o=o+Math.imul(M,me)|0)+(i>>>13)|0)+(Pe>>>26)|0,Pe&=67108863,r=Math.imul(j,de),i=(i=Math.imul(j,_e))+Math.imul(z,de)|0,o=Math.imul(z,_e);var Me=(l+(r=r+Math.imul(F,fe)|0)|0)+((8191&(i=(i=i+Math.imul(F,me)|0)+Math.imul(R,fe)|0))<<13)|0;l=((o=o+Math.imul(R,me)|0)+(i>>>13)|0)+(Me>>>26)|0,Me&=67108863;var Oe=(l+(r=Math.imul(j,fe))|0)+((8191&(i=(i=Math.imul(j,me))+Math.imul(z,fe)|0))<<13)|0;return l=((o=Math.imul(z,me))+(i>>>13)|0)+(Oe>>>26)|0,Oe&=67108863,c[0]=he,c[1]=ge,c[2]=ye,c[3]=ve,c[4]=be,c[5]=xe,c[6]=Se,c[7]=Te,c[8]=we,c[9]=ke,c[10]=Ee,c[11]=Ce,c[12]=Ne,c[13]=Ae,c[14]=Ie,c[15]=De,c[16]=Pe,c[17]=Me,c[18]=Oe,0!==l&&(c[19]=l,n.length++),n};function m(e,t,n){return(new h).mulp(e,t,n)}function h(e,t){this.x=e,this.y=t}Math.imul||(f=p),o.prototype.mulTo=function(e,t){var n,r=this.length+e.length;return n=10===this.length&&10===e.length?f(this,e,t):r<63?p(this,e,t):r<1024?function(e,t,n){n.negative=t.negative^e.negative,n.length=e.length+t.length;for(var r=0,i=0,o=0;o<n.length-1;o++){var s=i;i=0;for(var a=67108863&r,c=Math.min(o,t.length-1),l=Math.max(0,o-e.length+1);l<=c;l++){var u=o-l,d=(0|e.words[u])*(0|t.words[l]),_=67108863&d;a=67108863&(_=_+a|0),i+=(s=(s=s+(d/67108864|0)|0)+(_>>>26)|0)>>>26,s&=67108863}n.words[o]=a,r=s,s=i}return 0!==r?n.words[o]=r:n.length--,n.strip()}(this,e,t):m(this,e,t),n},h.prototype.makeRBT=function(e){for(var t=new Array(e),n=o.prototype._countBits(e)-1,r=0;r<e;r++)t[r]=this.revBin(r,n,e);return t},h.prototype.revBin=function(e,t,n){if(0===e||e===n-1)return e;for(var r=0,i=0;i<t;i++)r|=(1&e)<<t-i-1,e>>=1;return r},h.prototype.permute=function(e,t,n,r,i,o){for(var s=0;s<o;s++)r[s]=t[e[s]],i[s]=n[e[s]]},h.prototype.transform=function(e,t,n,r,i,o){this.permute(o,e,t,n,r,i);for(var s=1;s<i;s<<=1)for(var a=s<<1,c=Math.cos(2*Math.PI/a),l=Math.sin(2*Math.PI/a),u=0;u<i;u+=a)for(var d=c,_=l,p=0;p<s;p++){var f=n[u+p],m=r[u+p],h=n[u+p+s],g=r[u+p+s],y=d*h-_*g;g=d*g+_*h,h=y,n[u+p]=f+h,r[u+p]=m+g,n[u+p+s]=f-h,r[u+p+s]=m-g,p!==a&&(y=c*d-l*_,_=c*_+l*d,d=y)}},h.prototype.guessLen13b=function(e,t){var n=1|Math.max(t,e),r=1&n,i=0;for(n=n/2|0;n;n>>>=1)i++;return 1<<i+1+r},h.prototype.conjugate=function(e,t,n){if(!(n<=1))for(var r=0;r<n/2;r++){var i=e[r];e[r]=e[n-r-1],e[n-r-1]=i,i=t[r],t[r]=-t[n-r-1],t[n-r-1]=-i}},h.prototype.normalize13b=function(e,t){for(var n=0,r=0;r<t/2;r++){var i=8192*Math.round(e[2*r+1]/t)+Math.round(e[2*r]/t)+n;e[r]=67108863&i,n=i<67108864?0:i/67108864|0}return e},h.prototype.convert13b=function(e,t,n,i){for(var o=0,s=0;s<t;s++)o+=0|e[s],n[2*s]=8191&o,o>>>=13,n[2*s+1]=8191&o,o>>>=13;for(s=2*t;s<i;++s)n[s]=0;r(0===o),r(!(-8192&o))},h.prototype.stub=function(e){for(var t=new Array(e),n=0;n<e;n++)t[n]=0;return t},h.prototype.mulp=function(e,t,n){var r=2*this.guessLen13b(e.length,t.length),i=this.makeRBT(r),o=this.stub(r),s=new Array(r),a=new Array(r),c=new Array(r),l=new Array(r),u=new Array(r),d=new Array(r),_=n.words;_.length=r,this.convert13b(e.words,e.length,s,r),this.convert13b(t.words,t.length,l,r),this.transform(s,o,a,c,r,i),this.transform(l,o,u,d,r,i);for(var p=0;p<r;p++){var f=a[p]*u[p]-c[p]*d[p];c[p]=a[p]*d[p]+c[p]*u[p],a[p]=f}return this.conjugate(a,c,r),this.transform(a,c,_,o,r,i),this.conjugate(_,o,r),this.normalize13b(_,r),n.negative=e.negative^t.negative,n.length=e.length+t.length,n.strip()},o.prototype.mul=function(e){var t=new o(null);return t.words=new Array(this.length+e.length),this.mulTo(e,t)},o.prototype.mulf=function(e){var t=new o(null);return t.words=new Array(this.length+e.length),m(this,e,t)},o.prototype.imul=function(e){return this.clone().mulTo(e,this)},o.prototype.imuln=function(e){r("number"==typeof e),r(e<67108864);for(var t=0,n=0;n<this.length;n++){var i=(0|this.words[n])*e,o=(67108863&i)+(67108863&t);t>>=26,t+=i/67108864|0,t+=o>>>26,this.words[n]=67108863&o}return 0!==t&&(this.words[n]=t,this.length++),this},o.prototype.muln=function(e){return this.clone().imuln(e)},o.prototype.sqr=function(){return this.mul(this)},o.prototype.isqr=function(){return this.imul(this.clone())},o.prototype.pow=function(e){var t=function(e){for(var t=new Array(e.bitLength()),n=0;n<t.length;n++){var r=n/26|0,i=n%26;t[n]=(e.words[r]&1<<i)>>>i}return t}(e);if(0===t.length)return new o(1);for(var n=this,r=0;r<t.length&&0===t[r];r++,n=n.sqr());if(++r<t.length)for(var i=n.sqr();r<t.length;r++,i=i.sqr())0!==t[r]&&(n=n.mul(i));return n},o.prototype.iushln=function(e){r("number"==typeof e&&e>=0);var t,n=e%26,i=(e-n)/26,o=67108863>>>26-n<<26-n;if(0!==n){var s=0;for(t=0;t<this.length;t++){var a=this.words[t]&o,c=(0|this.words[t])-a<<n;this.words[t]=c|s,s=a>>>26-n}s&&(this.words[t]=s,this.length++)}if(0!==i){for(t=this.length-1;t>=0;t--)this.words[t+i]=this.words[t];for(t=0;t<i;t++)this.words[t]=0;this.length+=i}return this.strip()},o.prototype.ishln=function(e){return r(0===this.negative),this.iushln(e)},o.prototype.iushrn=function(e,t,n){var i;r("number"==typeof e&&e>=0),i=t?(t-t%26)/26:0;var o=e%26,s=Math.min((e-o)/26,this.length),a=67108863^67108863>>>o<<o,c=n;if(i-=s,i=Math.max(0,i),c){for(var l=0;l<s;l++)c.words[l]=this.words[l];c.length=s}if(0===s);else if(this.length>s)for(this.length-=s,l=0;l<this.length;l++)this.words[l]=this.words[l+s];else this.words[0]=0,this.length=1;var u=0;for(l=this.length-1;l>=0&&(0!==u||l>=i);l--){var d=0|this.words[l];this.words[l]=u<<26-o|d>>>o,u=d&a}return c&&0!==u&&(c.words[c.length++]=u),0===this.length&&(this.words[0]=0,this.length=1),this.strip()},o.prototype.ishrn=function(e,t,n){return r(0===this.negative),this.iushrn(e,t,n)},o.prototype.shln=function(e){return this.clone().ishln(e)},o.prototype.ushln=function(e){return this.clone().iushln(e)},o.prototype.shrn=function(e){return this.clone().ishrn(e)},o.prototype.ushrn=function(e){return this.clone().iushrn(e)},o.prototype.testn=function(e){r("number"==typeof e&&e>=0);var t=e%26,n=(e-t)/26,i=1<<t;return!(this.length<=n)&&!!(this.words[n]&i)},o.prototype.imaskn=function(e){r("number"==typeof e&&e>=0);var t=e%26,n=(e-t)/26;if(r(0===this.negative,"imaskn works only with positive numbers"),this.length<=n)return this;if(0!==t&&n++,this.length=Math.min(n,this.length),0!==t){var i=67108863^67108863>>>t<<t;this.words[this.length-1]&=i}return this.strip()},o.prototype.maskn=function(e){return this.clone().imaskn(e)},o.prototype.iaddn=function(e){return r("number"==typeof e),r(e<67108864),e<0?this.isubn(-e):0!==this.negative?1===this.length&&(0|this.words[0])<e?(this.words[0]=e-(0|this.words[0]),this.negative=0,this):(this.negative=0,this.isubn(e),this.negative=1,this):this._iaddn(e)},o.prototype._iaddn=function(e){this.words[0]+=e;for(var t=0;t<this.length&&this.words[t]>=67108864;t++)this.words[t]-=67108864,t===this.length-1?this.words[t+1]=1:this.words[t+1]++;return this.length=Math.max(this.length,t+1),this},o.prototype.isubn=function(e){if(r("number"==typeof e),r(e<67108864),e<0)return this.iaddn(-e);if(0!==this.negative)return this.negative=0,this.iaddn(e),this.negative=1,this;if(this.words[0]-=e,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var t=0;t<this.length&&this.words[t]<0;t++)this.words[t]+=67108864,this.words[t+1]-=1;return this.strip()},o.prototype.addn=function(e){return this.clone().iaddn(e)},o.prototype.subn=function(e){return this.clone().isubn(e)},o.prototype.iabs=function(){return this.negative=0,this},o.prototype.abs=function(){return this.clone().iabs()},o.prototype._ishlnsubmul=function(e,t,n){var i,o,s=e.length+n;this._expand(s);var a=0;for(i=0;i<e.length;i++){o=(0|this.words[i+n])+a;var c=(0|e.words[i])*t;a=((o-=67108863&c)>>26)-(c/67108864|0),this.words[i+n]=67108863&o}for(;i<this.length-n;i++)a=(o=(0|this.words[i+n])+a)>>26,this.words[i+n]=67108863&o;if(0===a)return this.strip();for(r(-1===a),a=0,i=0;i<this.length;i++)a=(o=-(0|this.words[i])+a)>>26,this.words[i]=67108863&o;return this.negative=1,this.strip()},o.prototype._wordDiv=function(e,t){var n=(this.length,e.length),r=this.clone(),i=e,s=0|i.words[i.length-1];0!==(n=26-this._countBits(s))&&(i=i.ushln(n),r.iushln(n),s=0|i.words[i.length-1]);var a,c=r.length-i.length;if("mod"!==t){(a=new o(null)).length=c+1,a.words=new Array(a.length);for(var l=0;l<a.length;l++)a.words[l]=0}var u=r.clone()._ishlnsubmul(i,1,c);0===u.negative&&(r=u,a&&(a.words[c]=1));for(var d=c-1;d>=0;d--){var _=67108864*(0|r.words[i.length+d])+(0|r.words[i.length+d-1]);for(_=Math.min(_/s|0,67108863),r._ishlnsubmul(i,_,d);0!==r.negative;)_--,r.negative=0,r._ishlnsubmul(i,1,d),r.isZero()||(r.negative^=1);a&&(a.words[d]=_)}return a&&a.strip(),r.strip(),"div"!==t&&0!==n&&r.iushrn(n),{div:a||null,mod:r}},o.prototype.divmod=function(e,t,n){return r(!e.isZero()),this.isZero()?{div:new o(0),mod:new o(0)}:0!==this.negative&&0===e.negative?(a=this.neg().divmod(e,t),"mod"!==t&&(i=a.div.neg()),"div"!==t&&(s=a.mod.neg(),n&&0!==s.negative&&s.iadd(e)),{div:i,mod:s}):0===this.negative&&0!==e.negative?(a=this.divmod(e.neg(),t),"mod"!==t&&(i=a.div.neg()),{div:i,mod:a.mod}):this.negative&e.negative?(a=this.neg().divmod(e.neg(),t),"div"!==t&&(s=a.mod.neg(),n&&0!==s.negative&&s.isub(e)),{div:a.div,mod:s}):e.length>this.length||this.cmp(e)<0?{div:new o(0),mod:this}:1===e.length?"div"===t?{div:this.divn(e.words[0]),mod:null}:"mod"===t?{div:null,mod:new o(this.modn(e.words[0]))}:{div:this.divn(e.words[0]),mod:new o(this.modn(e.words[0]))}:this._wordDiv(e,t);var i,s,a},o.prototype.div=function(e){return this.divmod(e,"div",!1).div},o.prototype.mod=function(e){return this.divmod(e,"mod",!1).mod},o.prototype.umod=function(e){return this.divmod(e,"mod",!0).mod},o.prototype.divRound=function(e){var t=this.divmod(e);if(t.mod.isZero())return t.div;var n=0!==t.div.negative?t.mod.isub(e):t.mod,r=e.ushrn(1),i=e.andln(1),o=n.cmp(r);return o<0||1===i&&0===o?t.div:0!==t.div.negative?t.div.isubn(1):t.div.iaddn(1)},o.prototype.modn=function(e){r(e<=67108863);for(var t=(1<<26)%e,n=0,i=this.length-1;i>=0;i--)n=(t*n+(0|this.words[i]))%e;return n},o.prototype.idivn=function(e){r(e<=67108863);for(var t=0,n=this.length-1;n>=0;n--){var i=(0|this.words[n])+67108864*t;this.words[n]=i/e|0,t=i%e}return this.strip()},o.prototype.divn=function(e){return this.clone().idivn(e)},o.prototype.egcd=function(e){r(0===e.negative),r(!e.isZero());var t=this,n=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var i=new o(1),s=new o(0),a=new o(0),c=new o(1),l=0;t.isEven()&&n.isEven();)t.iushrn(1),n.iushrn(1),++l;for(var u=n.clone(),d=t.clone();!t.isZero();){for(var _=0,p=1;!(t.words[0]&p)&&_<26;++_,p<<=1);if(_>0)for(t.iushrn(_);_-- >0;)(i.isOdd()||s.isOdd())&&(i.iadd(u),s.isub(d)),i.iushrn(1),s.iushrn(1);for(var f=0,m=1;!(n.words[0]&m)&&f<26;++f,m<<=1);if(f>0)for(n.iushrn(f);f-- >0;)(a.isOdd()||c.isOdd())&&(a.iadd(u),c.isub(d)),a.iushrn(1),c.iushrn(1);t.cmp(n)>=0?(t.isub(n),i.isub(a),s.isub(c)):(n.isub(t),a.isub(i),c.isub(s))}return{a:a,b:c,gcd:n.iushln(l)}},o.prototype._invmp=function(e){r(0===e.negative),r(!e.isZero());var t=this,n=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var i,s=new o(1),a=new o(0),c=n.clone();t.cmpn(1)>0&&n.cmpn(1)>0;){for(var l=0,u=1;!(t.words[0]&u)&&l<26;++l,u<<=1);if(l>0)for(t.iushrn(l);l-- >0;)s.isOdd()&&s.iadd(c),s.iushrn(1);for(var d=0,_=1;!(n.words[0]&_)&&d<26;++d,_<<=1);if(d>0)for(n.iushrn(d);d-- >0;)a.isOdd()&&a.iadd(c),a.iushrn(1);t.cmp(n)>=0?(t.isub(n),s.isub(a)):(n.isub(t),a.isub(s))}return(i=0===t.cmpn(1)?s:a).cmpn(0)<0&&i.iadd(e),i},o.prototype.gcd=function(e){if(this.isZero())return e.abs();if(e.isZero())return this.abs();var t=this.clone(),n=e.clone();t.negative=0,n.negative=0;for(var r=0;t.isEven()&&n.isEven();r++)t.iushrn(1),n.iushrn(1);for(;;){for(;t.isEven();)t.iushrn(1);for(;n.isEven();)n.iushrn(1);var i=t.cmp(n);if(i<0){var o=t;t=n,n=o}else if(0===i||0===n.cmpn(1))break;t.isub(n)}return n.iushln(r)},o.prototype.invm=function(e){return this.egcd(e).a.umod(e)},o.prototype.isEven=function(){return!(1&this.words[0])},o.prototype.isOdd=function(){return!(1&~this.words[0])},o.prototype.andln=function(e){return this.words[0]&e},o.prototype.bincn=function(e){r("number"==typeof e);var t=e%26,n=(e-t)/26,i=1<<t;if(this.length<=n)return this._expand(n+1),this.words[n]|=i,this;for(var o=i,s=n;0!==o&&s<this.length;s++){var a=0|this.words[s];o=(a+=o)>>>26,a&=67108863,this.words[s]=a}return 0!==o&&(this.words[s]=o,this.length++),this},o.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},o.prototype.cmpn=function(e){var t,n=e<0;if(0!==this.negative&&!n)return-1;if(0===this.negative&&n)return 1;if(this.strip(),this.length>1)t=1;else{n&&(e=-e),r(e<=67108863,"Number is too big");var i=0|this.words[0];t=i===e?0:i<e?-1:1}return 0!==this.negative?0|-t:t},o.prototype.cmp=function(e){if(0!==this.negative&&0===e.negative)return-1;if(0===this.negative&&0!==e.negative)return 1;var t=this.ucmp(e);return 0!==this.negative?0|-t:t},o.prototype.ucmp=function(e){if(this.length>e.length)return 1;if(this.length<e.length)return-1;for(var t=0,n=this.length-1;n>=0;n--){var r=0|this.words[n],i=0|e.words[n];if(r!==i){r<i?t=-1:r>i&&(t=1);break}}return t},o.prototype.gtn=function(e){return 1===this.cmpn(e)},o.prototype.gt=function(e){return 1===this.cmp(e)},o.prototype.gten=function(e){return this.cmpn(e)>=0},o.prototype.gte=function(e){return this.cmp(e)>=0},o.prototype.ltn=function(e){return-1===this.cmpn(e)},o.prototype.lt=function(e){return-1===this.cmp(e)},o.prototype.lten=function(e){return this.cmpn(e)<=0},o.prototype.lte=function(e){return this.cmp(e)<=0},o.prototype.eqn=function(e){return 0===this.cmpn(e)},o.prototype.eq=function(e){return 0===this.cmp(e)},o.red=function(e){return new T(e)},o.prototype.toRed=function(e){return r(!this.red,"Already a number in reduction context"),r(0===this.negative,"red works only with positives"),e.convertTo(this)._forceRed(e)},o.prototype.fromRed=function(){return r(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},o.prototype._forceRed=function(e){return this.red=e,this},o.prototype.forceRed=function(e){return r(!this.red,"Already a number in reduction context"),this._forceRed(e)},o.prototype.redAdd=function(e){return r(this.red,"redAdd works only with red numbers"),this.red.add(this,e)},o.prototype.redIAdd=function(e){return r(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,e)},o.prototype.redSub=function(e){return r(this.red,"redSub works only with red numbers"),this.red.sub(this,e)},o.prototype.redISub=function(e){return r(this.red,"redISub works only with red numbers"),this.red.isub(this,e)},o.prototype.redShl=function(e){return r(this.red,"redShl works only with red numbers"),this.red.shl(this,e)},o.prototype.redMul=function(e){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.mul(this,e)},o.prototype.redIMul=function(e){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.imul(this,e)},o.prototype.redSqr=function(){return r(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},o.prototype.redISqr=function(){return r(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},o.prototype.redSqrt=function(){return r(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},o.prototype.redInvm=function(){return r(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},o.prototype.redNeg=function(){return r(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},o.prototype.redPow=function(e){return r(this.red&&!e.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,e)};var g={k256:null,p224:null,p192:null,p25519:null};function y(e,t){this.name=e,this.p=new o(t,16),this.n=this.p.bitLength(),this.k=new o(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function v(){y.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function b(){y.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function x(){y.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function S(){y.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function T(e){if("string"==typeof e){var t=o._prime(e);this.m=t.p,this.prime=t}else r(e.gtn(1),"modulus must be greater than 1"),this.m=e,this.prime=null}function w(e){T.call(this,e),this.shift=this.m.bitLength(),this.shift%26!=0&&(this.shift+=26-this.shift%26),this.r=new o(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}y.prototype._tmp=function(){var e=new o(null);return e.words=new Array(Math.ceil(this.n/13)),e},y.prototype.ireduce=function(e){var t,n=e;do{this.split(n,this.tmp),t=(n=(n=this.imulK(n)).iadd(this.tmp)).bitLength()}while(t>this.n);var r=t<this.n?-1:n.ucmp(this.p);return 0===r?(n.words[0]=0,n.length=1):r>0?n.isub(this.p):void 0!==n.strip?n.strip():n._strip(),n},y.prototype.split=function(e,t){e.iushrn(this.n,0,t)},y.prototype.imulK=function(e){return e.imul(this.k)},i(v,y),v.prototype.split=function(e,t){for(var n=4194303,r=Math.min(e.length,9),i=0;i<r;i++)t.words[i]=e.words[i];if(t.length=r,e.length<=9)return e.words[0]=0,void(e.length=1);var o=e.words[9];for(t.words[t.length++]=o&n,i=10;i<e.length;i++){var s=0|e.words[i];e.words[i-10]=(s&n)<<4|o>>>22,o=s}o>>>=22,e.words[i-10]=o,0===o&&e.length>10?e.length-=10:e.length-=9},v.prototype.imulK=function(e){e.words[e.length]=0,e.words[e.length+1]=0,e.length+=2;for(var t=0,n=0;n<e.length;n++){var r=0|e.words[n];t+=977*r,e.words[n]=67108863&t,t=64*r+(t/67108864|0)}return 0===e.words[e.length-1]&&(e.length--,0===e.words[e.length-1]&&e.length--),e},i(b,y),i(x,y),i(S,y),S.prototype.imulK=function(e){for(var t=0,n=0;n<e.length;n++){var r=19*(0|e.words[n])+t,i=67108863&r;r>>>=26,e.words[n]=i,t=r}return 0!==t&&(e.words[e.length++]=t),e},o._prime=function(e){if(g[e])return g[e];var t;if("k256"===e)t=new v;else if("p224"===e)t=new b;else if("p192"===e)t=new x;else{if("p25519"!==e)throw new Error("Unknown prime "+e);t=new S}return g[e]=t,t},T.prototype._verify1=function(e){r(0===e.negative,"red works only with positives"),r(e.red,"red works only with red numbers")},T.prototype._verify2=function(e,t){r(!(e.negative|t.negative),"red works only with positives"),r(e.red&&e.red===t.red,"red works only with red numbers")},T.prototype.imod=function(e){return this.prime?this.prime.ireduce(e)._forceRed(this):e.umod(this.m)._forceRed(this)},T.prototype.neg=function(e){return e.isZero()?e.clone():this.m.sub(e)._forceRed(this)},T.prototype.add=function(e,t){this._verify2(e,t);var n=e.add(t);return n.cmp(this.m)>=0&&n.isub(this.m),n._forceRed(this)},T.prototype.iadd=function(e,t){this._verify2(e,t);var n=e.iadd(t);return n.cmp(this.m)>=0&&n.isub(this.m),n},T.prototype.sub=function(e,t){this._verify2(e,t);var n=e.sub(t);return n.cmpn(0)<0&&n.iadd(this.m),n._forceRed(this)},T.prototype.isub=function(e,t){this._verify2(e,t);var n=e.isub(t);return n.cmpn(0)<0&&n.iadd(this.m),n},T.prototype.shl=function(e,t){return this._verify1(e),this.imod(e.ushln(t))},T.prototype.imul=function(e,t){return this._verify2(e,t),this.imod(e.imul(t))},T.prototype.mul=function(e,t){return this._verify2(e,t),this.imod(e.mul(t))},T.prototype.isqr=function(e){return this.imul(e,e.clone())},T.prototype.sqr=function(e){return this.mul(e,e)},T.prototype.sqrt=function(e){if(e.isZero())return e.clone();var t=this.m.andln(3);if(r(t%2==1),3===t){var n=this.m.add(new o(1)).iushrn(2);return this.pow(e,n)}for(var i=this.m.subn(1),s=0;!i.isZero()&&0===i.andln(1);)s++,i.iushrn(1);r(!i.isZero());var a=new o(1).toRed(this),c=a.redNeg(),l=this.m.subn(1).iushrn(1),u=this.m.bitLength();for(u=new o(2*u*u).toRed(this);0!==this.pow(u,l).cmp(c);)u.redIAdd(c);for(var d=this.pow(u,i),_=this.pow(e,i.addn(1).iushrn(1)),p=this.pow(e,i),f=s;0!==p.cmp(a);){for(var m=p,h=0;0!==m.cmp(a);h++)m=m.redSqr();r(h<f);var g=this.pow(d,new o(1).iushln(f-h-1));_=_.redMul(g),d=g.redSqr(),p=p.redMul(d),f=h}return _},T.prototype.invm=function(e){var t=e._invmp(this.m);return 0!==t.negative?(t.negative=0,this.imod(t).redNeg()):this.imod(t)},T.prototype.pow=function(e,t){if(t.isZero())return new o(1).toRed(this);if(0===t.cmpn(1))return e.clone();var n=new Array(16);n[0]=new o(1).toRed(this),n[1]=e;for(var r=2;r<n.length;r++)n[r]=this.mul(n[r-1],e);var i=n[0],s=0,a=0,c=t.bitLength()%26;for(0===c&&(c=26),r=t.length-1;r>=0;r--){for(var l=t.words[r],u=c-1;u>=0;u--){var d=l>>u&1;i!==n[0]&&(i=this.sqr(i)),0!==d||0!==s?(s<<=1,s|=d,(4===++a||0===r&&0===u)&&(i=this.mul(i,n[s]),a=0,s=0)):a=0}c=26}return i},T.prototype.convertTo=function(e){var t=e.umod(this.m);return t===e?t.clone():t},T.prototype.convertFrom=function(e){var t=e.clone();return t.red=null,t},o.mont=function(e){return new w(e)},i(w,T),w.prototype.convertTo=function(e){return this.imod(e.ushln(this.shift))},w.prototype.convertFrom=function(e){var t=this.imod(e.mul(this.rinv));return t.red=null,t},w.prototype.imul=function(e,t){if(e.isZero()||t.isZero())return e.words[0]=0,e.length=1,e;var n=e.imul(t),r=n.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=n.isub(r).iushrn(this.shift),o=i;return i.cmp(this.m)>=0?o=i.isub(this.m):i.cmpn(0)<0&&(o=i.iadd(this.m)),o._forceRed(this)},w.prototype.mul=function(e,t){if(e.isZero()||t.isZero())return new o(0)._forceRed(this);var n=e.mul(t),r=n.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=n.isub(r).iushrn(this.shift),s=i;return i.cmp(this.m)>=0?s=i.isub(this.m):i.cmpn(0)<0&&(s=i.iadd(this.m)),s._forceRed(this)},w.prototype.invm=function(e){return this.imod(e._invmp(this.m).mul(this.r2))._forceRed(this)}}(e=n.nmd(e),this)},15037:(e,t,n)=>{var r;function i(e){this.rand=e}if(e.exports=function(e){return r||(r=new i(null)),r.generate(e)},e.exports.Rand=i,i.prototype.generate=function(e){return this._rand(e)},i.prototype._rand=function(e){if(this.rand.getBytes)return this.rand.getBytes(e);for(var t=new Uint8Array(e),n=0;n<t.length;n++)t[n]=this.rand.getByte();return t},"object"==typeof self)self.crypto&&self.crypto.getRandomValues?i.prototype._rand=function(e){var t=new Uint8Array(e);return self.crypto.getRandomValues(t),t}:self.msCrypto&&self.msCrypto.getRandomValues?i.prototype._rand=function(e){var t=new Uint8Array(e);return self.msCrypto.getRandomValues(t),t}:"object"==typeof window&&(i.prototype._rand=function(){throw new Error("Not implemented yet")});else try{var o=n(73776);if("function"!=typeof o.randomBytes)throw new Error("Not supported");i.prototype._rand=function(e){return o.randomBytes(e)}}catch(s){}},16763:(e,t,n)=>{var r=n(95364);e.exports=r("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz")},59204:(e,t,n)=>{"use strict";var r=n(16763),i=n(92861).Buffer;e.exports=function(e){function t(t){var n=t.slice(0,-4),r=t.slice(-4),i=e(n);if(!(r[0]^i[0]|r[1]^i[1]|r[2]^i[2]|r[3]^i[3]))return n}return{encode:function(t){var n=e(t);return r.encode(i.concat([t,n],t.length+4))},decode:function(e){var n=t(r.decode(e));if(!n)throw new Error("Invalid checksum");return n},decodeUnsafe:function(e){var n=r.decodeUnsafe(e);if(n)return t(n)}}}},91889:(e,t,n)=>{"use strict";var r=n(47108),i=n(59204);e.exports=i((function(e){var t=r("sha256").update(e).digest();return r("sha256").update(t).digest()}))},48287:(e,t,n)=>{"use strict";var r=n(96763);const i=n(67526),o=n(251),s="function"==typeof Symbol&&"function"==typeof Symbol.for?Symbol.for("nodejs.util.inspect.custom"):null;t.Buffer=l,t.SlowBuffer=function(e){+e!=e&&(e=0);return l.alloc(+e)},t.INSPECT_MAX_BYTES=50;const a=2147483647;function c(e){if(e>a)throw new RangeError('The value "'+e+'" is invalid for option "size"');const t=new Uint8Array(e);return Object.setPrototypeOf(t,l.prototype),t}function l(e,t,n){if("number"==typeof e){if("string"==typeof t)throw new TypeError('The "string" argument must be of type string. Received type number');return _(e)}return u(e,t,n)}function u(e,t,n){if("string"==typeof e)return function(e,t){"string"==typeof t&&""!==t||(t="utf8");if(!l.isEncoding(t))throw new TypeError("Unknown encoding: "+t);const n=0|h(e,t);let r=c(n);const i=r.write(e,t);i!==n&&(r=r.slice(0,i));return r}(e,t);if(ArrayBuffer.isView(e))return function(e){if(Y(e,Uint8Array)){const t=new Uint8Array(e);return f(t.buffer,t.byteOffset,t.byteLength)}return p(e)}(e);if(null==e)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(Y(e,ArrayBuffer)||e&&Y(e.buffer,ArrayBuffer))return f(e,t,n);if("undefined"!=typeof SharedArrayBuffer&&(Y(e,SharedArrayBuffer)||e&&Y(e.buffer,SharedArrayBuffer)))return f(e,t,n);if("number"==typeof e)throw new TypeError('The "value" argument must not be of type number. Received type number');const r=e.valueOf&&e.valueOf();if(null!=r&&r!==e)return l.from(r,t,n);const i=function(e){if(l.isBuffer(e)){const t=0|m(e.length),n=c(t);return 0===n.length||e.copy(n,0,0,t),n}if(void 0!==e.length)return"number"!=typeof e.length||Z(e.length)?c(0):p(e);if("Buffer"===e.type&&Array.isArray(e.data))return p(e.data)}(e);if(i)return i;if("undefined"!=typeof Symbol&&null!=Symbol.toPrimitive&&"function"==typeof e[Symbol.toPrimitive])return l.from(e[Symbol.toPrimitive]("string"),t,n);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e)}function d(e){if("number"!=typeof e)throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function _(e){return d(e),c(e<0?0:0|m(e))}function p(e){const t=e.length<0?0:0|m(e.length),n=c(t);for(let r=0;r<t;r+=1)n[r]=255&e[r];return n}function f(e,t,n){if(t<0||e.byteLength<t)throw new RangeError('"offset" is outside of buffer bounds');if(e.byteLength<t+(n||0))throw new RangeError('"length" is outside of buffer bounds');let r;return r=void 0===t&&void 0===n?new Uint8Array(e):void 0===n?new Uint8Array(e,t):new Uint8Array(e,t,n),Object.setPrototypeOf(r,l.prototype),r}function m(e){if(e>=a)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+a.toString(16)+" bytes");return 0|e}function h(e,t){if(l.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||Y(e,ArrayBuffer))return e.byteLength;if("string"!=typeof e)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);const n=e.length,r=arguments.length>2&&!0===arguments[2];if(!r&&0===n)return 0;let i=!1;for(;;)switch(t){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":return H(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return G(e).length;default:if(i)return r?-1:H(e).length;t=(""+t).toLowerCase(),i=!0}}function g(e,t,n){let r=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if((n>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return D(this,t,n);case"utf8":case"utf-8":return C(this,t,n);case"ascii":return A(this,t,n);case"latin1":case"binary":return I(this,t,n);case"base64":return E(this,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return P(this,t,n);default:if(r)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),r=!0}}function y(e,t,n){const r=e[t];e[t]=e[n],e[n]=r}function v(e,t,n,r,i){if(0===e.length)return-1;if("string"==typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),Z(n=+n)&&(n=i?0:e.length-1),n<0&&(n=e.length+n),n>=e.length){if(i)return-1;n=e.length-1}else if(n<0){if(!i)return-1;n=0}if("string"==typeof t&&(t=l.from(t,r)),l.isBuffer(t))return 0===t.length?-1:b(e,t,n,r,i);if("number"==typeof t)return t&=255,"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,n):Uint8Array.prototype.lastIndexOf.call(e,t,n):b(e,[t],n,r,i);throw new TypeError("val must be string, number or Buffer")}function b(e,t,n,r,i){let o,s=1,a=e.length,c=t.length;if(void 0!==r&&("ucs2"===(r=String(r).toLowerCase())||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(e.length<2||t.length<2)return-1;s=2,a/=2,c/=2,n/=2}function l(e,t){return 1===s?e[t]:e.readUInt16BE(t*s)}if(i){let r=-1;for(o=n;o<a;o++)if(l(e,o)===l(t,-1===r?0:o-r)){if(-1===r&&(r=o),o-r+1===c)return r*s}else-1!==r&&(o-=o-r),r=-1}else for(n+c>a&&(n=a-c),o=n;o>=0;o--){let n=!0;for(let r=0;r<c;r++)if(l(e,o+r)!==l(t,r)){n=!1;break}if(n)return o}return-1}function x(e,t,n,r){n=Number(n)||0;const i=e.length-n;r?(r=Number(r))>i&&(r=i):r=i;const o=t.length;let s;for(r>o/2&&(r=o/2),s=0;s<r;++s){const r=parseInt(t.substr(2*s,2),16);if(Z(r))return s;e[n+s]=r}return s}function S(e,t,n,r){return Q(H(t,e.length-n),e,n,r)}function T(e,t,n,r){return Q(function(e){const t=[];for(let n=0;n<e.length;++n)t.push(255&e.charCodeAt(n));return t}(t),e,n,r)}function w(e,t,n,r){return Q(G(t),e,n,r)}function k(e,t,n,r){return Q(function(e,t){let n,r,i;const o=[];for(let s=0;s<e.length&&!((t-=2)<0);++s)n=e.charCodeAt(s),r=n>>8,i=n%256,o.push(i),o.push(r);return o}(t,e.length-n),e,n,r)}function E(e,t,n){return 0===t&&n===e.length?i.fromByteArray(e):i.fromByteArray(e.slice(t,n))}function C(e,t,n){n=Math.min(e.length,n);const r=[];let i=t;for(;i<n;){const t=e[i];let o=null,s=t>239?4:t>223?3:t>191?2:1;if(i+s<=n){let n,r,a,c;switch(s){case 1:t<128&&(o=t);break;case 2:n=e[i+1],128==(192&n)&&(c=(31&t)<<6|63&n,c>127&&(o=c));break;case 3:n=e[i+1],r=e[i+2],128==(192&n)&&128==(192&r)&&(c=(15&t)<<12|(63&n)<<6|63&r,c>2047&&(c<55296||c>57343)&&(o=c));break;case 4:n=e[i+1],r=e[i+2],a=e[i+3],128==(192&n)&&128==(192&r)&&128==(192&a)&&(c=(15&t)<<18|(63&n)<<12|(63&r)<<6|63&a,c>65535&&c<1114112&&(o=c))}}null===o?(o=65533,s=1):o>65535&&(o-=65536,r.push(o>>>10&1023|55296),o=56320|1023&o),r.push(o),i+=s}return function(e){const t=e.length;if(t<=N)return String.fromCharCode.apply(String,e);let n="",r=0;for(;r<t;)n+=String.fromCharCode.apply(String,e.slice(r,r+=N));return n}(r)}t.kMaxLength=a,l.TYPED_ARRAY_SUPPORT=function(){try{const e=new Uint8Array(1),t={foo:function(){return 42}};return Object.setPrototypeOf(t,Uint8Array.prototype),Object.setPrototypeOf(e,t),42===e.foo()}catch(e){return!1}}(),l.TYPED_ARRAY_SUPPORT||void 0===r||"function"!=typeof r.error||r.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support."),Object.defineProperty(l.prototype,"parent",{enumerable:!0,get:function(){if(l.isBuffer(this))return this.buffer}}),Object.defineProperty(l.prototype,"offset",{enumerable:!0,get:function(){if(l.isBuffer(this))return this.byteOffset}}),l.poolSize=8192,l.from=function(e,t,n){return u(e,t,n)},Object.setPrototypeOf(l.prototype,Uint8Array.prototype),Object.setPrototypeOf(l,Uint8Array),l.alloc=function(e,t,n){return function(e,t,n){return d(e),e<=0?c(e):void 0!==t?"string"==typeof n?c(e).fill(t,n):c(e).fill(t):c(e)}(e,t,n)},l.allocUnsafe=function(e){return _(e)},l.allocUnsafeSlow=function(e){return _(e)},l.isBuffer=function(e){return null!=e&&!0===e._isBuffer&&e!==l.prototype},l.compare=function(e,t){if(Y(e,Uint8Array)&&(e=l.from(e,e.offset,e.byteLength)),Y(t,Uint8Array)&&(t=l.from(t,t.offset,t.byteLength)),!l.isBuffer(e)||!l.isBuffer(t))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(e===t)return 0;let n=e.length,r=t.length;for(let i=0,o=Math.min(n,r);i<o;++i)if(e[i]!==t[i]){n=e[i],r=t[i];break}return n<r?-1:r<n?1:0},l.isEncoding=function(e){switch(String(e).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},l.concat=function(e,t){if(!Array.isArray(e))throw new TypeError('"list" argument must be an Array of Buffers');if(0===e.length)return l.alloc(0);let n;if(void 0===t)for(t=0,n=0;n<e.length;++n)t+=e[n].length;const r=l.allocUnsafe(t);let i=0;for(n=0;n<e.length;++n){let t=e[n];if(Y(t,Uint8Array))i+t.length>r.length?(l.isBuffer(t)||(t=l.from(t)),t.copy(r,i)):Uint8Array.prototype.set.call(r,t,i);else{if(!l.isBuffer(t))throw new TypeError('"list" argument must be an Array of Buffers');t.copy(r,i)}i+=t.length}return r},l.byteLength=h,l.prototype._isBuffer=!0,l.prototype.swap16=function(){const e=this.length;if(e%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let t=0;t<e;t+=2)y(this,t,t+1);return this},l.prototype.swap32=function(){const e=this.length;if(e%4!=0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(let t=0;t<e;t+=4)y(this,t,t+3),y(this,t+1,t+2);return this},l.prototype.swap64=function(){const e=this.length;if(e%8!=0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(let t=0;t<e;t+=8)y(this,t,t+7),y(this,t+1,t+6),y(this,t+2,t+5),y(this,t+3,t+4);return this},l.prototype.toString=function(){const e=this.length;return 0===e?"":0===arguments.length?C(this,0,e):g.apply(this,arguments)},l.prototype.toLocaleString=l.prototype.toString,l.prototype.equals=function(e){if(!l.isBuffer(e))throw new TypeError("Argument must be a Buffer");return this===e||0===l.compare(this,e)},l.prototype.inspect=function(){let e="";const n=t.INSPECT_MAX_BYTES;return e=this.toString("hex",0,n).replace(/(.{2})/g,"$1 ").trim(),this.length>n&&(e+=" ... "),"<Buffer "+e+">"},s&&(l.prototype[s]=l.prototype.inspect),l.prototype.compare=function(e,t,n,r,i){if(Y(e,Uint8Array)&&(e=l.from(e,e.offset,e.byteLength)),!l.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof e);if(void 0===t&&(t=0),void 0===n&&(n=e?e.length:0),void 0===r&&(r=0),void 0===i&&(i=this.length),t<0||n>e.length||r<0||i>this.length)throw new RangeError("out of range index");if(r>=i&&t>=n)return 0;if(r>=i)return-1;if(t>=n)return 1;if(this===e)return 0;let o=(i>>>=0)-(r>>>=0),s=(n>>>=0)-(t>>>=0);const a=Math.min(o,s),c=this.slice(r,i),u=e.slice(t,n);for(let l=0;l<a;++l)if(c[l]!==u[l]){o=c[l],s=u[l];break}return o<s?-1:s<o?1:0},l.prototype.includes=function(e,t,n){return-1!==this.indexOf(e,t,n)},l.prototype.indexOf=function(e,t,n){return v(this,e,t,n,!0)},l.prototype.lastIndexOf=function(e,t,n){return v(this,e,t,n,!1)},l.prototype.write=function(e,t,n,r){if(void 0===t)r="utf8",n=this.length,t=0;else if(void 0===n&&"string"==typeof t)r=t,n=this.length,t=0;else{if(!isFinite(t))throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");t>>>=0,isFinite(n)?(n>>>=0,void 0===r&&(r="utf8")):(r=n,n=void 0)}const i=this.length-t;if((void 0===n||n>i)&&(n=i),e.length>0&&(n<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");let o=!1;for(;;)switch(r){case"hex":return x(this,e,t,n);case"utf8":case"utf-8":return S(this,e,t,n);case"ascii":case"latin1":case"binary":return T(this,e,t,n);case"base64":return w(this,e,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return k(this,e,t,n);default:if(o)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),o=!0}},l.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};const N=4096;function A(e,t,n){let r="";n=Math.min(e.length,n);for(let i=t;i<n;++i)r+=String.fromCharCode(127&e[i]);return r}function I(e,t,n){let r="";n=Math.min(e.length,n);for(let i=t;i<n;++i)r+=String.fromCharCode(e[i]);return r}function D(e,t,n){const r=e.length;(!t||t<0)&&(t=0),(!n||n<0||n>r)&&(n=r);let i="";for(let o=t;o<n;++o)i+=X[e[o]];return i}function P(e,t,n){const r=e.slice(t,n);let i="";for(let o=0;o<r.length-1;o+=2)i+=String.fromCharCode(r[o]+256*r[o+1]);return i}function M(e,t,n){if(e%1!=0||e<0)throw new RangeError("offset is not uint");if(e+t>n)throw new RangeError("Trying to access beyond buffer length")}function O(e,t,n,r,i,o){if(!l.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||t<o)throw new RangeError('"value" argument is out of bounds');if(n+r>e.length)throw new RangeError("Index out of range")}function F(e,t,n,r,i){V(t,r,i,e,n,7);let o=Number(t&BigInt(4294967295));e[n++]=o,o>>=8,e[n++]=o,o>>=8,e[n++]=o,o>>=8,e[n++]=o;let s=Number(t>>BigInt(32)&BigInt(4294967295));return e[n++]=s,s>>=8,e[n++]=s,s>>=8,e[n++]=s,s>>=8,e[n++]=s,n}function R(e,t,n,r,i){V(t,r,i,e,n,7);let o=Number(t&BigInt(4294967295));e[n+7]=o,o>>=8,e[n+6]=o,o>>=8,e[n+5]=o,o>>=8,e[n+4]=o;let s=Number(t>>BigInt(32)&BigInt(4294967295));return e[n+3]=s,s>>=8,e[n+2]=s,s>>=8,e[n+1]=s,s>>=8,e[n]=s,n+8}function L(e,t,n,r,i,o){if(n+r>e.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function j(e,t,n,r,i){return t=+t,n>>>=0,i||L(e,0,n,4),o.write(e,t,n,r,23,4),n+4}function z(e,t,n,r,i){return t=+t,n>>>=0,i||L(e,0,n,8),o.write(e,t,n,r,52,8),n+8}l.prototype.slice=function(e,t){const n=this.length;(e=~~e)<0?(e+=n)<0&&(e=0):e>n&&(e=n),(t=void 0===t?n:~~t)<0?(t+=n)<0&&(t=0):t>n&&(t=n),t<e&&(t=e);const r=this.subarray(e,t);return Object.setPrototypeOf(r,l.prototype),r},l.prototype.readUintLE=l.prototype.readUIntLE=function(e,t,n){e>>>=0,t>>>=0,n||M(e,t,this.length);let r=this[e],i=1,o=0;for(;++o<t&&(i*=256);)r+=this[e+o]*i;return r},l.prototype.readUintBE=l.prototype.readUIntBE=function(e,t,n){e>>>=0,t>>>=0,n||M(e,t,this.length);let r=this[e+--t],i=1;for(;t>0&&(i*=256);)r+=this[e+--t]*i;return r},l.prototype.readUint8=l.prototype.readUInt8=function(e,t){return e>>>=0,t||M(e,1,this.length),this[e]},l.prototype.readUint16LE=l.prototype.readUInt16LE=function(e,t){return e>>>=0,t||M(e,2,this.length),this[e]|this[e+1]<<8},l.prototype.readUint16BE=l.prototype.readUInt16BE=function(e,t){return e>>>=0,t||M(e,2,this.length),this[e]<<8|this[e+1]},l.prototype.readUint32LE=l.prototype.readUInt32LE=function(e,t){return e>>>=0,t||M(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},l.prototype.readUint32BE=l.prototype.readUInt32BE=function(e,t){return e>>>=0,t||M(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},l.prototype.readBigUInt64LE=$((function(e){K(e>>>=0,"offset");const t=this[e],n=this[e+7];void 0!==t&&void 0!==n||J(e,this.length-8);const r=t+256*this[++e]+65536*this[++e]+this[++e]*2**24,i=this[++e]+256*this[++e]+65536*this[++e]+n*2**24;return BigInt(r)+(BigInt(i)<<BigInt(32))})),l.prototype.readBigUInt64BE=$((function(e){K(e>>>=0,"offset");const t=this[e],n=this[e+7];void 0!==t&&void 0!==n||J(e,this.length-8);const r=t*2**24+65536*this[++e]+256*this[++e]+this[++e],i=this[++e]*2**24+65536*this[++e]+256*this[++e]+n;return(BigInt(r)<<BigInt(32))+BigInt(i)})),l.prototype.readIntLE=function(e,t,n){e>>>=0,t>>>=0,n||M(e,t,this.length);let r=this[e],i=1,o=0;for(;++o<t&&(i*=256);)r+=this[e+o]*i;return i*=128,r>=i&&(r-=Math.pow(2,8*t)),r},l.prototype.readIntBE=function(e,t,n){e>>>=0,t>>>=0,n||M(e,t,this.length);let r=t,i=1,o=this[e+--r];for(;r>0&&(i*=256);)o+=this[e+--r]*i;return i*=128,o>=i&&(o-=Math.pow(2,8*t)),o},l.prototype.readInt8=function(e,t){return e>>>=0,t||M(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},l.prototype.readInt16LE=function(e,t){e>>>=0,t||M(e,2,this.length);const n=this[e]|this[e+1]<<8;return 32768&n?4294901760|n:n},l.prototype.readInt16BE=function(e,t){e>>>=0,t||M(e,2,this.length);const n=this[e+1]|this[e]<<8;return 32768&n?4294901760|n:n},l.prototype.readInt32LE=function(e,t){return e>>>=0,t||M(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},l.prototype.readInt32BE=function(e,t){return e>>>=0,t||M(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},l.prototype.readBigInt64LE=$((function(e){K(e>>>=0,"offset");const t=this[e],n=this[e+7];void 0!==t&&void 0!==n||J(e,this.length-8);const r=this[e+4]+256*this[e+5]+65536*this[e+6]+(n<<24);return(BigInt(r)<<BigInt(32))+BigInt(t+256*this[++e]+65536*this[++e]+this[++e]*2**24)})),l.prototype.readBigInt64BE=$((function(e){K(e>>>=0,"offset");const t=this[e],n=this[e+7];void 0!==t&&void 0!==n||J(e,this.length-8);const r=(t<<24)+65536*this[++e]+256*this[++e]+this[++e];return(BigInt(r)<<BigInt(32))+BigInt(this[++e]*2**24+65536*this[++e]+256*this[++e]+n)})),l.prototype.readFloatLE=function(e,t){return e>>>=0,t||M(e,4,this.length),o.read(this,e,!0,23,4)},l.prototype.readFloatBE=function(e,t){return e>>>=0,t||M(e,4,this.length),o.read(this,e,!1,23,4)},l.prototype.readDoubleLE=function(e,t){return e>>>=0,t||M(e,8,this.length),o.read(this,e,!0,52,8)},l.prototype.readDoubleBE=function(e,t){return e>>>=0,t||M(e,8,this.length),o.read(this,e,!1,52,8)},l.prototype.writeUintLE=l.prototype.writeUIntLE=function(e,t,n,r){if(e=+e,t>>>=0,n>>>=0,!r){O(this,e,t,n,Math.pow(2,8*n)-1,0)}let i=1,o=0;for(this[t]=255&e;++o<n&&(i*=256);)this[t+o]=e/i&255;return t+n},l.prototype.writeUintBE=l.prototype.writeUIntBE=function(e,t,n,r){if(e=+e,t>>>=0,n>>>=0,!r){O(this,e,t,n,Math.pow(2,8*n)-1,0)}let i=n-1,o=1;for(this[t+i]=255&e;--i>=0&&(o*=256);)this[t+i]=e/o&255;return t+n},l.prototype.writeUint8=l.prototype.writeUInt8=function(e,t,n){return e=+e,t>>>=0,n||O(this,e,t,1,255,0),this[t]=255&e,t+1},l.prototype.writeUint16LE=l.prototype.writeUInt16LE=function(e,t,n){return e=+e,t>>>=0,n||O(this,e,t,2,65535,0),this[t]=255&e,this[t+1]=e>>>8,t+2},l.prototype.writeUint16BE=l.prototype.writeUInt16BE=function(e,t,n){return e=+e,t>>>=0,n||O(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=255&e,t+2},l.prototype.writeUint32LE=l.prototype.writeUInt32LE=function(e,t,n){return e=+e,t>>>=0,n||O(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e,t+4},l.prototype.writeUint32BE=l.prototype.writeUInt32BE=function(e,t,n){return e=+e,t>>>=0,n||O(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},l.prototype.writeBigUInt64LE=$((function(e,t=0){return F(this,e,t,BigInt(0),BigInt("0xffffffffffffffff"))})),l.prototype.writeBigUInt64BE=$((function(e,t=0){return R(this,e,t,BigInt(0),BigInt("0xffffffffffffffff"))})),l.prototype.writeIntLE=function(e,t,n,r){if(e=+e,t>>>=0,!r){const r=Math.pow(2,8*n-1);O(this,e,t,n,r-1,-r)}let i=0,o=1,s=0;for(this[t]=255&e;++i<n&&(o*=256);)e<0&&0===s&&0!==this[t+i-1]&&(s=1),this[t+i]=(e/o|0)-s&255;return t+n},l.prototype.writeIntBE=function(e,t,n,r){if(e=+e,t>>>=0,!r){const r=Math.pow(2,8*n-1);O(this,e,t,n,r-1,-r)}let i=n-1,o=1,s=0;for(this[t+i]=255&e;--i>=0&&(o*=256);)e<0&&0===s&&0!==this[t+i+1]&&(s=1),this[t+i]=(e/o|0)-s&255;return t+n},l.prototype.writeInt8=function(e,t,n){return e=+e,t>>>=0,n||O(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=255&e,t+1},l.prototype.writeInt16LE=function(e,t,n){return e=+e,t>>>=0,n||O(this,e,t,2,32767,-32768),this[t]=255&e,this[t+1]=e>>>8,t+2},l.prototype.writeInt16BE=function(e,t,n){return e=+e,t>>>=0,n||O(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=255&e,t+2},l.prototype.writeInt32LE=function(e,t,n){return e=+e,t>>>=0,n||O(this,e,t,4,2147483647,-2147483648),this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4},l.prototype.writeInt32BE=function(e,t,n){return e=+e,t>>>=0,n||O(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},l.prototype.writeBigInt64LE=$((function(e,t=0){return F(this,e,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),l.prototype.writeBigInt64BE=$((function(e,t=0){return R(this,e,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),l.prototype.writeFloatLE=function(e,t,n){return j(this,e,t,!0,n)},l.prototype.writeFloatBE=function(e,t,n){return j(this,e,t,!1,n)},l.prototype.writeDoubleLE=function(e,t,n){return z(this,e,t,!0,n)},l.prototype.writeDoubleBE=function(e,t,n){return z(this,e,t,!1,n)},l.prototype.copy=function(e,t,n,r){if(!l.isBuffer(e))throw new TypeError("argument should be a Buffer");if(n||(n=0),r||0===r||(r=this.length),t>=e.length&&(t=e.length),t||(t=0),r>0&&r<n&&(r=n),r===n)return 0;if(0===e.length||0===this.length)return 0;if(t<0)throw new RangeError("targetStart out of bounds");if(n<0||n>=this.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),e.length-t<r-n&&(r=e.length-t+n);const i=r-n;return this===e&&"function"==typeof Uint8Array.prototype.copyWithin?this.copyWithin(t,n,r):Uint8Array.prototype.set.call(e,this.subarray(n,r),t),i},l.prototype.fill=function(e,t,n,r){if("string"==typeof e){if("string"==typeof t?(r=t,t=0,n=this.length):"string"==typeof n&&(r=n,n=this.length),void 0!==r&&"string"!=typeof r)throw new TypeError("encoding must be a string");if("string"==typeof r&&!l.isEncoding(r))throw new TypeError("Unknown encoding: "+r);if(1===e.length){const t=e.charCodeAt(0);("utf8"===r&&t<128||"latin1"===r)&&(e=t)}}else"number"==typeof e?e&=255:"boolean"==typeof e&&(e=Number(e));if(t<0||this.length<t||this.length<n)throw new RangeError("Out of range index");if(n<=t)return this;let i;if(t>>>=0,n=void 0===n?this.length:n>>>0,e||(e=0),"number"==typeof e)for(i=t;i<n;++i)this[i]=e;else{const o=l.isBuffer(e)?e:l.from(e,r),s=o.length;if(0===s)throw new TypeError('The value "'+e+'" is invalid for argument "value"');for(i=0;i<n-t;++i)this[i+t]=o[i%s]}return this};const U={};function B(e,t,n){U[e]=class extends n{constructor(){super(),Object.defineProperty(this,"message",{value:t.apply(this,arguments),writable:!0,configurable:!0}),this.name=`${this.name} [${e}]`,this.stack,delete this.name}get code(){return e}set code(e){Object.defineProperty(this,"code",{configurable:!0,enumerable:!0,value:e,writable:!0})}toString(){return`${this.name} [${e}]: ${this.message}`}}}function q(e){let t="",n=e.length;const r="-"===e[0]?1:0;for(;n>=r+4;n-=3)t=`_${e.slice(n-3,n)}${t}`;return`${e.slice(0,n)}${t}`}function V(e,t,n,r,i,o){if(e>n||e<t){const r="bigint"==typeof t?"n":"";let i;throw i=o>3?0===t||t===BigInt(0)?`>= 0${r} and < 2${r} ** ${8*(o+1)}${r}`:`>= -(2${r} ** ${8*(o+1)-1}${r}) and < 2 ** ${8*(o+1)-1}${r}`:`>= ${t}${r} and <= ${n}${r}`,new U.ERR_OUT_OF_RANGE("value",i,e)}!function(e,t,n){K(t,"offset"),void 0!==e[t]&&void 0!==e[t+n]||J(t,e.length-(n+1))}(r,i,o)}function K(e,t){if("number"!=typeof e)throw new U.ERR_INVALID_ARG_TYPE(t,"number",e)}function J(e,t,n){if(Math.floor(e)!==e)throw K(e,n),new U.ERR_OUT_OF_RANGE(n||"offset","an integer",e);if(t<0)throw new U.ERR_BUFFER_OUT_OF_BOUNDS;throw new U.ERR_OUT_OF_RANGE(n||"offset",`>= ${n?1:0} and <= ${t}`,e)}B("ERR_BUFFER_OUT_OF_BOUNDS",(function(e){return e?`${e} is outside of buffer bounds`:"Attempt to access memory outside buffer bounds"}),RangeError),B("ERR_INVALID_ARG_TYPE",(function(e,t){return`The "${e}" argument must be of type number. Received type ${typeof t}`}),TypeError),B("ERR_OUT_OF_RANGE",(function(e,t,n){let r=`The value of "${e}" is out of range.`,i=n;return Number.isInteger(n)&&Math.abs(n)>2**32?i=q(String(n)):"bigint"==typeof n&&(i=String(n),(n>BigInt(2)**BigInt(32)||n<-(BigInt(2)**BigInt(32)))&&(i=q(i)),i+="n"),r+=` It must be ${t}. Received ${i}`,r}),RangeError);const W=/[^+/0-9A-Za-z-_]/g;function H(e,t){let n;t=t||1/0;const r=e.length;let i=null;const o=[];for(let s=0;s<r;++s){if(n=e.charCodeAt(s),n>55295&&n<57344){if(!i){if(n>56319){(t-=3)>-1&&o.push(239,191,189);continue}if(s+1===r){(t-=3)>-1&&o.push(239,191,189);continue}i=n;continue}if(n<56320){(t-=3)>-1&&o.push(239,191,189),i=n;continue}n=65536+(i-55296<<10|n-56320)}else i&&(t-=3)>-1&&o.push(239,191,189);if(i=null,n<128){if((t-=1)<0)break;o.push(n)}else if(n<2048){if((t-=2)<0)break;o.push(n>>6|192,63&n|128)}else if(n<65536){if((t-=3)<0)break;o.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;o.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return o}function G(e){return i.toByteArray(function(e){if((e=(e=e.split("=")[0]).trim().replace(W,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function Q(e,t,n,r){let i;for(i=0;i<r&&!(i+n>=t.length||i>=e.length);++i)t[i+n]=e[i];return i}function Y(e,t){return e instanceof t||null!=e&&null!=e.constructor&&null!=e.constructor.name&&e.constructor.name===t.name}function Z(e){return e!=e}const X=function(){const e="0123456789abcdef",t=new Array(256);for(let n=0;n<16;++n){const r=16*n;for(let i=0;i<16;++i)t[r+i]=e[n]+e[i]}return t}();function $(e){return"undefined"==typeof BigInt?ee:e}function ee(){throw new Error("BigInt not supported")}},56168:(e,t,n)=>{var r=n(92861).Buffer,i=n(88310).Transform,o=n(83141).I;function s(e){i.call(this),this.hashMode="string"==typeof e,this.hashMode?this[e]=this._finalOrDigest:this.final=this._finalOrDigest,this._final&&(this.__final=this._final,this._final=null),this._decoder=null,this._encoding=null}n(56698)(s,i),s.prototype.update=function(e,t,n){"string"==typeof e&&(e=r.from(e,t));var i=this._update(e);return this.hashMode?this:(n&&(i=this._toString(i,n)),i)},s.prototype.setAutoPadding=function(){},s.prototype.getAuthTag=function(){throw new Error("trying to get auth tag in unsupported state")},s.prototype.setAuthTag=function(){throw new Error("trying to set auth tag in unsupported state")},s.prototype.setAAD=function(){throw new Error("trying to set aad in unsupported state")},s.prototype._transform=function(e,t,n){var r;try{this.hashMode?this._update(e):this.push(this._update(e))}catch(i){r=i}finally{n(r)}},s.prototype._flush=function(e){var t;try{this.push(this.__final())}catch(n){t=n}e(t)},s.prototype._finalOrDigest=function(e){var t=this.__final()||r.alloc(0);return e&&(t=this._toString(t,e,!0)),t},s.prototype._toString=function(e,t,n){if(this._decoder||(this._decoder=new o(t),this._encoding=t),this._encoding!==t)throw new Error("can't switch encodings");var r=this._decoder.write(e);return n&&(r+=this._decoder.end()),r},e.exports=s},47108:(e,t,n)=>{"use strict";var r=n(56698),i=n(88276),o=n(66011),s=n(62802),a=n(56168);function c(e){a.call(this,"digest"),this._hash=e}r(c,a),c.prototype._update=function(e){this._hash.update(e)},c.prototype._final=function(){return this._hash.digest()},e.exports=function(e){return"md5"===(e=e.toLowerCase())?new i:"rmd160"===e||"ripemd160"===e?new o:new c(s(e))}},30454:e=>{"use strict";var t="%[a-f0-9]{2}",n=new RegExp("("+t+")|([^%]+?)","gi"),r=new RegExp("("+t+")+","gi");function i(e,t){try{return[decodeURIComponent(e.join(""))]}catch(o){}if(1===e.length)return e;t=t||1;var n=e.slice(0,t),r=e.slice(t);return Array.prototype.concat.call([],i(n),i(r))}function o(e){try{return decodeURIComponent(e)}catch(o){for(var t=e.match(n)||[],r=1;r<t.length;r++)t=(e=i(t,r).join("")).match(n)||[];return e}}e.exports=function(e){if("string"!=typeof e)throw new TypeError("Expected `encodedURI` to be of type `string`, got `"+typeof e+"`");try{return e=e.replace(/\+/g," "),decodeURIComponent(e)}catch(t){return function(e){for(var n={"%FE%FF":"\ufffd\ufffd","%FF%FE":"\ufffd\ufffd"},i=r.exec(e);i;){try{n[i[0]]=decodeURIComponent(i[0])}catch(t){var s=o(i[0]);s!==i[0]&&(n[i[0]]=s)}i=r.exec(e)}n["%C2"]="\ufffd";for(var a=Object.keys(n),c=0;c<a.length;c++){var l=a[c];e=e.replace(new RegExp(l,"g"),n[l])}return e}(e)}}},86729:(e,t,n)=>{"use strict";var r=t;r.version=n(1636).rE,r.utils=n(47011),r.rand=n(15037),r.curve=n(894),r.curves=n(60480),r.ec=n(57447),r.eddsa=n(8650)},36677:(e,t,n)=>{"use strict";var r=n(39404),i=n(47011),o=i.getNAF,s=i.getJSF,a=i.assert;function c(e,t){this.type=e,this.p=new r(t.p,16),this.red=t.prime?r.red(t.prime):r.mont(this.p),this.zero=new r(0).toRed(this.red),this.one=new r(1).toRed(this.red),this.two=new r(2).toRed(this.red),this.n=t.n&&new r(t.n,16),this.g=t.g&&this.pointFromJSON(t.g,t.gRed),this._wnafT1=new Array(4),this._wnafT2=new Array(4),this._wnafT3=new Array(4),this._wnafT4=new Array(4),this._bitLength=this.n?this.n.bitLength():0;var n=this.n&&this.p.div(this.n);!n||n.cmpn(100)>0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}function l(e,t){this.curve=e,this.type=t,this.precomputed=null}e.exports=c,c.prototype.point=function(){throw new Error("Not implemented")},c.prototype.validate=function(){throw new Error("Not implemented")},c.prototype._fixedNafMul=function(e,t){a(e.precomputed);var n=e._getDoubles(),r=o(t,1,this._bitLength),i=(1<<n.step+1)-(n.step%2==0?2:1);i/=3;var s,c,l=[];for(s=0;s<r.length;s+=n.step){c=0;for(var u=s+n.step-1;u>=s;u--)c=(c<<1)+r[u];l.push(c)}for(var d=this.jpoint(null,null,null),_=this.jpoint(null,null,null),p=i;p>0;p--){for(s=0;s<l.length;s++)(c=l[s])===p?_=_.mixedAdd(n.points[s]):c===-p&&(_=_.mixedAdd(n.points[s].neg()));d=d.add(_)}return d.toP()},c.prototype._wnafMul=function(e,t){var n=4,r=e._getNAFPoints(n);n=r.wnd;for(var i=r.points,s=o(t,n,this._bitLength),c=this.jpoint(null,null,null),l=s.length-1;l>=0;l--){for(var u=0;l>=0&&0===s[l];l--)u++;if(l>=0&&u++,c=c.dblp(u),l<0)break;var d=s[l];a(0!==d),c="affine"===e.type?d>0?c.mixedAdd(i[d-1>>1]):c.mixedAdd(i[-d-1>>1].neg()):d>0?c.add(i[d-1>>1]):c.add(i[-d-1>>1].neg())}return"affine"===e.type?c.toP():c},c.prototype._wnafMulAdd=function(e,t,n,r,i){var a,c,l,u=this._wnafT1,d=this._wnafT2,_=this._wnafT3,p=0;for(a=0;a<r;a++){var f=(l=t[a])._getNAFPoints(e);u[a]=f.wnd,d[a]=f.points}for(a=r-1;a>=1;a-=2){var m=a-1,h=a;if(1===u[m]&&1===u[h]){var g=[t[m],null,null,t[h]];0===t[m].y.cmp(t[h].y)?(g[1]=t[m].add(t[h]),g[2]=t[m].toJ().mixedAdd(t[h].neg())):0===t[m].y.cmp(t[h].y.redNeg())?(g[1]=t[m].toJ().mixedAdd(t[h]),g[2]=t[m].add(t[h].neg())):(g[1]=t[m].toJ().mixedAdd(t[h]),g[2]=t[m].toJ().mixedAdd(t[h].neg()));var y=[-3,-1,-5,-7,0,7,5,1,3],v=s(n[m],n[h]);for(p=Math.max(v[0].length,p),_[m]=new Array(p),_[h]=new Array(p),c=0;c<p;c++){var b=0|v[0][c],x=0|v[1][c];_[m][c]=y[3*(b+1)+(x+1)],_[h][c]=0,d[m]=g}}else _[m]=o(n[m],u[m],this._bitLength),_[h]=o(n[h],u[h],this._bitLength),p=Math.max(_[m].length,p),p=Math.max(_[h].length,p)}var S=this.jpoint(null,null,null),T=this._wnafT4;for(a=p;a>=0;a--){for(var w=0;a>=0;){var k=!0;for(c=0;c<r;c++)T[c]=0|_[c][a],0!==T[c]&&(k=!1);if(!k)break;w++,a--}if(a>=0&&w++,S=S.dblp(w),a<0)break;for(c=0;c<r;c++){var E=T[c];0!==E&&(E>0?l=d[c][E-1>>1]:E<0&&(l=d[c][-E-1>>1].neg()),S="affine"===l.type?S.mixedAdd(l):S.add(l))}}for(a=0;a<r;a++)d[a]=null;return i?S:S.toP()},c.BasePoint=l,l.prototype.eq=function(){throw new Error("Not implemented")},l.prototype.validate=function(){return this.curve.validate(this)},c.prototype.decodePoint=function(e,t){e=i.toArray(e,t);var n=this.p.byteLength();if((4===e[0]||6===e[0]||7===e[0])&&e.length-1==2*n)return 6===e[0]?a(e[e.length-1]%2==0):7===e[0]&&a(e[e.length-1]%2==1),this.point(e.slice(1,1+n),e.slice(1+n,1+2*n));if((2===e[0]||3===e[0])&&e.length-1===n)return this.pointFromX(e.slice(1,1+n),3===e[0]);throw new Error("Unknown point format")},l.prototype.encodeCompressed=function(e){return this.encode(e,!0)},l.prototype._encode=function(e){var t=this.curve.p.byteLength(),n=this.getX().toArray("be",t);return e?[this.getY().isEven()?2:3].concat(n):[4].concat(n,this.getY().toArray("be",t))},l.prototype.encode=function(e,t){return i.encode(this._encode(t),e)},l.prototype.precompute=function(e){if(this.precomputed)return this;var t={doubles:null,naf:null,beta:null};return t.naf=this._getNAFPoints(8),t.doubles=this._getDoubles(4,e),t.beta=this._getBeta(),this.precomputed=t,this},l.prototype._hasDoubles=function(e){if(!this.precomputed)return!1;var t=this.precomputed.doubles;return!!t&&t.points.length>=Math.ceil((e.bitLength()+1)/t.step)},l.prototype._getDoubles=function(e,t){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var n=[this],r=this,i=0;i<t;i+=e){for(var o=0;o<e;o++)r=r.dbl();n.push(r)}return{step:e,points:n}},l.prototype._getNAFPoints=function(e){if(this.precomputed&&this.precomputed.naf)return this.precomputed.naf;for(var t=[this],n=(1<<e)-1,r=1===n?null:this.dbl(),i=1;i<n;i++)t[i]=t[i-1].add(r);return{wnd:e,points:t}},l.prototype._getBeta=function(){return null},l.prototype.dblp=function(e){for(var t=this,n=0;n<e;n++)t=t.dbl();return t}},31298:(e,t,n)=>{"use strict";var r=n(47011),i=n(39404),o=n(56698),s=n(36677),a=r.assert;function c(e){this.twisted=1!=(0|e.a),this.mOneA=this.twisted&&-1==(0|e.a),this.extended=this.mOneA,s.call(this,"edwards",e),this.a=new i(e.a,16).umod(this.red.m),this.a=this.a.toRed(this.red),this.c=new i(e.c,16).toRed(this.red),this.c2=this.c.redSqr(),this.d=new i(e.d,16).toRed(this.red),this.dd=this.d.redAdd(this.d),a(!this.twisted||0===this.c.fromRed().cmpn(1)),this.oneC=1==(0|e.c)}function l(e,t,n,r,o){s.BasePoint.call(this,e,"projective"),null===t&&null===n&&null===r?(this.x=this.curve.zero,this.y=this.curve.one,this.z=this.curve.one,this.t=this.curve.zero,this.zOne=!0):(this.x=new i(t,16),this.y=new i(n,16),this.z=r?new i(r,16):this.curve.one,this.t=o&&new i(o,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.t&&!this.t.red&&(this.t=this.t.toRed(this.curve.red)),this.zOne=this.z===this.curve.one,this.curve.extended&&!this.t&&(this.t=this.x.redMul(this.y),this.zOne||(this.t=this.t.redMul(this.z.redInvm()))))}o(c,s),e.exports=c,c.prototype._mulA=function(e){return this.mOneA?e.redNeg():this.a.redMul(e)},c.prototype._mulC=function(e){return this.oneC?e:this.c.redMul(e)},c.prototype.jpoint=function(e,t,n,r){return this.point(e,t,n,r)},c.prototype.pointFromX=function(e,t){(e=new i(e,16)).red||(e=e.toRed(this.red));var n=e.redSqr(),r=this.c2.redSub(this.a.redMul(n)),o=this.one.redSub(this.c2.redMul(this.d).redMul(n)),s=r.redMul(o.redInvm()),a=s.redSqrt();if(0!==a.redSqr().redSub(s).cmp(this.zero))throw new Error("invalid point");var c=a.fromRed().isOdd();return(t&&!c||!t&&c)&&(a=a.redNeg()),this.point(e,a)},c.prototype.pointFromY=function(e,t){(e=new i(e,16)).red||(e=e.toRed(this.red));var n=e.redSqr(),r=n.redSub(this.c2),o=n.redMul(this.d).redMul(this.c2).redSub(this.a),s=r.redMul(o.redInvm());if(0===s.cmp(this.zero)){if(t)throw new Error("invalid point");return this.point(this.zero,e)}var a=s.redSqrt();if(0!==a.redSqr().redSub(s).cmp(this.zero))throw new Error("invalid point");return a.fromRed().isOdd()!==t&&(a=a.redNeg()),this.point(a,e)},c.prototype.validate=function(e){if(e.isInfinity())return!0;e.normalize();var t=e.x.redSqr(),n=e.y.redSqr(),r=t.redMul(this.a).redAdd(n),i=this.c2.redMul(this.one.redAdd(this.d.redMul(t).redMul(n)));return 0===r.cmp(i)},o(l,s.BasePoint),c.prototype.pointFromJSON=function(e){return l.fromJSON(this,e)},c.prototype.point=function(e,t,n,r){return new l(this,e,t,n,r)},l.fromJSON=function(e,t){return new l(e,t[0],t[1],t[2])},l.prototype.inspect=function(){return this.isInfinity()?"<EC Point Infinity>":"<EC Point x: "+this.x.fromRed().toString(16,2)+" y: "+this.y.fromRed().toString(16,2)+" z: "+this.z.fromRed().toString(16,2)+">"},l.prototype.isInfinity=function(){return 0===this.x.cmpn(0)&&(0===this.y.cmp(this.z)||this.zOne&&0===this.y.cmp(this.curve.c))},l.prototype._extDbl=function(){var e=this.x.redSqr(),t=this.y.redSqr(),n=this.z.redSqr();n=n.redIAdd(n);var r=this.curve._mulA(e),i=this.x.redAdd(this.y).redSqr().redISub(e).redISub(t),o=r.redAdd(t),s=o.redSub(n),a=r.redSub(t),c=i.redMul(s),l=o.redMul(a),u=i.redMul(a),d=s.redMul(o);return this.curve.point(c,l,d,u)},l.prototype._projDbl=function(){var e,t,n,r,i,o,s=this.x.redAdd(this.y).redSqr(),a=this.x.redSqr(),c=this.y.redSqr();if(this.curve.twisted){var l=(r=this.curve._mulA(a)).redAdd(c);this.zOne?(e=s.redSub(a).redSub(c).redMul(l.redSub(this.curve.two)),t=l.redMul(r.redSub(c)),n=l.redSqr().redSub(l).redSub(l)):(i=this.z.redSqr(),o=l.redSub(i).redISub(i),e=s.redSub(a).redISub(c).redMul(o),t=l.redMul(r.redSub(c)),n=l.redMul(o))}else r=a.redAdd(c),i=this.curve._mulC(this.z).redSqr(),o=r.redSub(i).redSub(i),e=this.curve._mulC(s.redISub(r)).redMul(o),t=this.curve._mulC(r).redMul(a.redISub(c)),n=r.redMul(o);return this.curve.point(e,t,n)},l.prototype.dbl=function(){return this.isInfinity()?this:this.curve.extended?this._extDbl():this._projDbl()},l.prototype._extAdd=function(e){var t=this.y.redSub(this.x).redMul(e.y.redSub(e.x)),n=this.y.redAdd(this.x).redMul(e.y.redAdd(e.x)),r=this.t.redMul(this.curve.dd).redMul(e.t),i=this.z.redMul(e.z.redAdd(e.z)),o=n.redSub(t),s=i.redSub(r),a=i.redAdd(r),c=n.redAdd(t),l=o.redMul(s),u=a.redMul(c),d=o.redMul(c),_=s.redMul(a);return this.curve.point(l,u,_,d)},l.prototype._projAdd=function(e){var t,n,r=this.z.redMul(e.z),i=r.redSqr(),o=this.x.redMul(e.x),s=this.y.redMul(e.y),a=this.curve.d.redMul(o).redMul(s),c=i.redSub(a),l=i.redAdd(a),u=this.x.redAdd(this.y).redMul(e.x.redAdd(e.y)).redISub(o).redISub(s),d=r.redMul(c).redMul(u);return this.curve.twisted?(t=r.redMul(l).redMul(s.redSub(this.curve._mulA(o))),n=c.redMul(l)):(t=r.redMul(l).redMul(s.redSub(o)),n=this.curve._mulC(c).redMul(l)),this.curve.point(d,t,n)},l.prototype.add=function(e){return this.isInfinity()?e:e.isInfinity()?this:this.curve.extended?this._extAdd(e):this._projAdd(e)},l.prototype.mul=function(e){return this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve._wnafMul(this,e)},l.prototype.mulAdd=function(e,t,n){return this.curve._wnafMulAdd(1,[this,t],[e,n],2,!1)},l.prototype.jmulAdd=function(e,t,n){return this.curve._wnafMulAdd(1,[this,t],[e,n],2,!0)},l.prototype.normalize=function(){if(this.zOne)return this;var e=this.z.redInvm();return this.x=this.x.redMul(e),this.y=this.y.redMul(e),this.t&&(this.t=this.t.redMul(e)),this.z=this.curve.one,this.zOne=!0,this},l.prototype.neg=function(){return this.curve.point(this.x.redNeg(),this.y,this.z,this.t&&this.t.redNeg())},l.prototype.getX=function(){return this.normalize(),this.x.fromRed()},l.prototype.getY=function(){return this.normalize(),this.y.fromRed()},l.prototype.eq=function(e){return this===e||0===this.getX().cmp(e.getX())&&0===this.getY().cmp(e.getY())},l.prototype.eqXToP=function(e){var t=e.toRed(this.curve.red).redMul(this.z);if(0===this.x.cmp(t))return!0;for(var n=e.clone(),r=this.curve.redN.redMul(this.z);;){if(n.iadd(this.curve.n),n.cmp(this.curve.p)>=0)return!1;if(t.redIAdd(r),0===this.x.cmp(t))return!0}},l.prototype.toP=l.prototype.normalize,l.prototype.mixedAdd=l.prototype.add},894:(e,t,n)=>{"use strict";var r=t;r.base=n(36677),r.short=n(39188),r.mont=n(30370),r.edwards=n(31298)},30370:(e,t,n)=>{"use strict";var r=n(39404),i=n(56698),o=n(36677),s=n(47011);function a(e){o.call(this,"mont",e),this.a=new r(e.a,16).toRed(this.red),this.b=new r(e.b,16).toRed(this.red),this.i4=new r(4).toRed(this.red).redInvm(),this.two=new r(2).toRed(this.red),this.a24=this.i4.redMul(this.a.redAdd(this.two))}function c(e,t,n){o.BasePoint.call(this,e,"projective"),null===t&&null===n?(this.x=this.curve.one,this.z=this.curve.zero):(this.x=new r(t,16),this.z=new r(n,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)))}i(a,o),e.exports=a,a.prototype.validate=function(e){var t=e.normalize().x,n=t.redSqr(),r=n.redMul(t).redAdd(n.redMul(this.a)).redAdd(t);return 0===r.redSqrt().redSqr().cmp(r)},i(c,o.BasePoint),a.prototype.decodePoint=function(e,t){return this.point(s.toArray(e,t),1)},a.prototype.point=function(e,t){return new c(this,e,t)},a.prototype.pointFromJSON=function(e){return c.fromJSON(this,e)},c.prototype.precompute=function(){},c.prototype._encode=function(){return this.getX().toArray("be",this.curve.p.byteLength())},c.fromJSON=function(e,t){return new c(e,t[0],t[1]||e.one)},c.prototype.inspect=function(){return this.isInfinity()?"<EC Point Infinity>":"<EC Point x: "+this.x.fromRed().toString(16,2)+" z: "+this.z.fromRed().toString(16,2)+">"},c.prototype.isInfinity=function(){return 0===this.z.cmpn(0)},c.prototype.dbl=function(){var e=this.x.redAdd(this.z).redSqr(),t=this.x.redSub(this.z).redSqr(),n=e.redSub(t),r=e.redMul(t),i=n.redMul(t.redAdd(this.curve.a24.redMul(n)));return this.curve.point(r,i)},c.prototype.add=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.diffAdd=function(e,t){var n=this.x.redAdd(this.z),r=this.x.redSub(this.z),i=e.x.redAdd(e.z),o=e.x.redSub(e.z).redMul(n),s=i.redMul(r),a=t.z.redMul(o.redAdd(s).redSqr()),c=t.x.redMul(o.redISub(s).redSqr());return this.curve.point(a,c)},c.prototype.mul=function(e){for(var t=e.clone(),n=this,r=this.curve.point(null,null),i=[];0!==t.cmpn(0);t.iushrn(1))i.push(t.andln(1));for(var o=i.length-1;o>=0;o--)0===i[o]?(n=n.diffAdd(r,this),r=r.dbl()):(r=n.diffAdd(r,this),n=n.dbl());return r},c.prototype.mulAdd=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.jumlAdd=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.eq=function(e){return 0===this.getX().cmp(e.getX())},c.prototype.normalize=function(){return this.x=this.x.redMul(this.z.redInvm()),this.z=this.curve.one,this},c.prototype.getX=function(){return this.normalize(),this.x.fromRed()}},39188:(e,t,n)=>{"use strict";var r=n(47011),i=n(39404),o=n(56698),s=n(36677),a=r.assert;function c(e){s.call(this,"short",e),this.a=new i(e.a,16).toRed(this.red),this.b=new i(e.b,16).toRed(this.red),this.tinv=this.two.redInvm(),this.zeroA=0===this.a.fromRed().cmpn(0),this.threeA=0===this.a.fromRed().sub(this.p).cmpn(-3),this.endo=this._getEndomorphism(e),this._endoWnafT1=new Array(4),this._endoWnafT2=new Array(4)}function l(e,t,n,r){s.BasePoint.call(this,e,"affine"),null===t&&null===n?(this.x=null,this.y=null,this.inf=!0):(this.x=new i(t,16),this.y=new i(n,16),r&&(this.x.forceRed(this.curve.red),this.y.forceRed(this.curve.red)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.inf=!1)}function u(e,t,n,r){s.BasePoint.call(this,e,"jacobian"),null===t&&null===n&&null===r?(this.x=this.curve.one,this.y=this.curve.one,this.z=new i(0)):(this.x=new i(t,16),this.y=new i(n,16),this.z=new i(r,16)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.zOne=this.z===this.curve.one}o(c,s),e.exports=c,c.prototype._getEndomorphism=function(e){if(this.zeroA&&this.g&&this.n&&1===this.p.modn(3)){var t,n;if(e.beta)t=new i(e.beta,16).toRed(this.red);else{var r=this._getEndoRoots(this.p);t=(t=r[0].cmp(r[1])<0?r[0]:r[1]).toRed(this.red)}if(e.lambda)n=new i(e.lambda,16);else{var o=this._getEndoRoots(this.n);0===this.g.mul(o[0]).x.cmp(this.g.x.redMul(t))?n=o[0]:(n=o[1],a(0===this.g.mul(n).x.cmp(this.g.x.redMul(t))))}return{beta:t,lambda:n,basis:e.basis?e.basis.map((function(e){return{a:new i(e.a,16),b:new i(e.b,16)}})):this._getEndoBasis(n)}}},c.prototype._getEndoRoots=function(e){var t=e===this.p?this.red:i.mont(e),n=new i(2).toRed(t).redInvm(),r=n.redNeg(),o=new i(3).toRed(t).redNeg().redSqrt().redMul(n);return[r.redAdd(o).fromRed(),r.redSub(o).fromRed()]},c.prototype._getEndoBasis=function(e){for(var t,n,r,o,s,a,c,l,u,d=this.n.ushrn(Math.floor(this.n.bitLength()/2)),_=e,p=this.n.clone(),f=new i(1),m=new i(0),h=new i(0),g=new i(1),y=0;0!==_.cmpn(0);){var v=p.div(_);l=p.sub(v.mul(_)),u=h.sub(v.mul(f));var b=g.sub(v.mul(m));if(!r&&l.cmp(d)<0)t=c.neg(),n=f,r=l.neg(),o=u;else if(r&&2==++y)break;c=l,p=_,_=l,h=f,f=u,g=m,m=b}s=l.neg(),a=u;var x=r.sqr().add(o.sqr());return s.sqr().add(a.sqr()).cmp(x)>=0&&(s=t,a=n),r.negative&&(r=r.neg(),o=o.neg()),s.negative&&(s=s.neg(),a=a.neg()),[{a:r,b:o},{a:s,b:a}]},c.prototype._endoSplit=function(e){var t=this.endo.basis,n=t[0],r=t[1],i=r.b.mul(e).divRound(this.n),o=n.b.neg().mul(e).divRound(this.n),s=i.mul(n.a),a=o.mul(r.a),c=i.mul(n.b),l=o.mul(r.b);return{k1:e.sub(s).sub(a),k2:c.add(l).neg()}},c.prototype.pointFromX=function(e,t){(e=new i(e,16)).red||(e=e.toRed(this.red));var n=e.redSqr().redMul(e).redIAdd(e.redMul(this.a)).redIAdd(this.b),r=n.redSqrt();if(0!==r.redSqr().redSub(n).cmp(this.zero))throw new Error("invalid point");var o=r.fromRed().isOdd();return(t&&!o||!t&&o)&&(r=r.redNeg()),this.point(e,r)},c.prototype.validate=function(e){if(e.inf)return!0;var t=e.x,n=e.y,r=this.a.redMul(t),i=t.redSqr().redMul(t).redIAdd(r).redIAdd(this.b);return 0===n.redSqr().redISub(i).cmpn(0)},c.prototype._endoWnafMulAdd=function(e,t,n){for(var r=this._endoWnafT1,i=this._endoWnafT2,o=0;o<e.length;o++){var s=this._endoSplit(t[o]),a=e[o],c=a._getBeta();s.k1.negative&&(s.k1.ineg(),a=a.neg(!0)),s.k2.negative&&(s.k2.ineg(),c=c.neg(!0)),r[2*o]=a,r[2*o+1]=c,i[2*o]=s.k1,i[2*o+1]=s.k2}for(var l=this._wnafMulAdd(1,r,i,2*o,n),u=0;u<2*o;u++)r[u]=null,i[u]=null;return l},o(l,s.BasePoint),c.prototype.point=function(e,t,n){return new l(this,e,t,n)},c.prototype.pointFromJSON=function(e,t){return l.fromJSON(this,e,t)},l.prototype._getBeta=function(){if(this.curve.endo){var e=this.precomputed;if(e&&e.beta)return e.beta;var t=this.curve.point(this.x.redMul(this.curve.endo.beta),this.y);if(e){var n=this.curve,r=function(e){return n.point(e.x.redMul(n.endo.beta),e.y)};e.beta=t,t.precomputed={beta:null,naf:e.naf&&{wnd:e.naf.wnd,points:e.naf.points.map(r)},doubles:e.doubles&&{step:e.doubles.step,points:e.doubles.points.map(r)}}}return t}},l.prototype.toJSON=function(){return this.precomputed?[this.x,this.y,this.precomputed&&{doubles:this.precomputed.doubles&&{step:this.precomputed.doubles.step,points:this.precomputed.doubles.points.slice(1)},naf:this.precomputed.naf&&{wnd:this.precomputed.naf.wnd,points:this.precomputed.naf.points.slice(1)}}]:[this.x,this.y]},l.fromJSON=function(e,t,n){"string"==typeof t&&(t=JSON.parse(t));var r=e.point(t[0],t[1],n);if(!t[2])return r;function i(t){return e.point(t[0],t[1],n)}var o=t[2];return r.precomputed={beta:null,doubles:o.doubles&&{step:o.doubles.step,points:[r].concat(o.doubles.points.map(i))},naf:o.naf&&{wnd:o.naf.wnd,points:[r].concat(o.naf.points.map(i))}},r},l.prototype.inspect=function(){return this.isInfinity()?"<EC Point Infinity>":"<EC Point x: "+this.x.fromRed().toString(16,2)+" y: "+this.y.fromRed().toString(16,2)+">"},l.prototype.isInfinity=function(){return this.inf},l.prototype.add=function(e){if(this.inf)return e;if(e.inf)return this;if(this.eq(e))return this.dbl();if(this.neg().eq(e))return this.curve.point(null,null);if(0===this.x.cmp(e.x))return this.curve.point(null,null);var t=this.y.redSub(e.y);0!==t.cmpn(0)&&(t=t.redMul(this.x.redSub(e.x).redInvm()));var n=t.redSqr().redISub(this.x).redISub(e.x),r=t.redMul(this.x.redSub(n)).redISub(this.y);return this.curve.point(n,r)},l.prototype.dbl=function(){if(this.inf)return this;var e=this.y.redAdd(this.y);if(0===e.cmpn(0))return this.curve.point(null,null);var t=this.curve.a,n=this.x.redSqr(),r=e.redInvm(),i=n.redAdd(n).redIAdd(n).redIAdd(t).redMul(r),o=i.redSqr().redISub(this.x.redAdd(this.x)),s=i.redMul(this.x.redSub(o)).redISub(this.y);return this.curve.point(o,s)},l.prototype.getX=function(){return this.x.fromRed()},l.prototype.getY=function(){return this.y.fromRed()},l.prototype.mul=function(e){return e=new i(e,16),this.isInfinity()?this:this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve.endo?this.curve._endoWnafMulAdd([this],[e]):this.curve._wnafMul(this,e)},l.prototype.mulAdd=function(e,t,n){var r=[this,t],i=[e,n];return this.curve.endo?this.curve._endoWnafMulAdd(r,i):this.curve._wnafMulAdd(1,r,i,2)},l.prototype.jmulAdd=function(e,t,n){var r=[this,t],i=[e,n];return this.curve.endo?this.curve._endoWnafMulAdd(r,i,!0):this.curve._wnafMulAdd(1,r,i,2,!0)},l.prototype.eq=function(e){return this===e||this.inf===e.inf&&(this.inf||0===this.x.cmp(e.x)&&0===this.y.cmp(e.y))},l.prototype.neg=function(e){if(this.inf)return this;var t=this.curve.point(this.x,this.y.redNeg());if(e&&this.precomputed){var n=this.precomputed,r=function(e){return e.neg()};t.precomputed={naf:n.naf&&{wnd:n.naf.wnd,points:n.naf.points.map(r)},doubles:n.doubles&&{step:n.doubles.step,points:n.doubles.points.map(r)}}}return t},l.prototype.toJ=function(){return this.inf?this.curve.jpoint(null,null,null):this.curve.jpoint(this.x,this.y,this.curve.one)},o(u,s.BasePoint),c.prototype.jpoint=function(e,t,n){return new u(this,e,t,n)},u.prototype.toP=function(){if(this.isInfinity())return this.curve.point(null,null);var e=this.z.redInvm(),t=e.redSqr(),n=this.x.redMul(t),r=this.y.redMul(t).redMul(e);return this.curve.point(n,r)},u.prototype.neg=function(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)},u.prototype.add=function(e){if(this.isInfinity())return e;if(e.isInfinity())return this;var t=e.z.redSqr(),n=this.z.redSqr(),r=this.x.redMul(t),i=e.x.redMul(n),o=this.y.redMul(t.redMul(e.z)),s=e.y.redMul(n.redMul(this.z)),a=r.redSub(i),c=o.redSub(s);if(0===a.cmpn(0))return 0!==c.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var l=a.redSqr(),u=l.redMul(a),d=r.redMul(l),_=c.redSqr().redIAdd(u).redISub(d).redISub(d),p=c.redMul(d.redISub(_)).redISub(o.redMul(u)),f=this.z.redMul(e.z).redMul(a);return this.curve.jpoint(_,p,f)},u.prototype.mixedAdd=function(e){if(this.isInfinity())return e.toJ();if(e.isInfinity())return this;var t=this.z.redSqr(),n=this.x,r=e.x.redMul(t),i=this.y,o=e.y.redMul(t).redMul(this.z),s=n.redSub(r),a=i.redSub(o);if(0===s.cmpn(0))return 0!==a.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var c=s.redSqr(),l=c.redMul(s),u=n.redMul(c),d=a.redSqr().redIAdd(l).redISub(u).redISub(u),_=a.redMul(u.redISub(d)).redISub(i.redMul(l)),p=this.z.redMul(s);return this.curve.jpoint(d,_,p)},u.prototype.dblp=function(e){if(0===e)return this;if(this.isInfinity())return this;if(!e)return this.dbl();var t;if(this.curve.zeroA||this.curve.threeA){var n=this;for(t=0;t<e;t++)n=n.dbl();return n}var r=this.curve.a,i=this.curve.tinv,o=this.x,s=this.y,a=this.z,c=a.redSqr().redSqr(),l=s.redAdd(s);for(t=0;t<e;t++){var u=o.redSqr(),d=l.redSqr(),_=d.redSqr(),p=u.redAdd(u).redIAdd(u).redIAdd(r.redMul(c)),f=o.redMul(d),m=p.redSqr().redISub(f.redAdd(f)),h=f.redISub(m),g=p.redMul(h);g=g.redIAdd(g).redISub(_);var y=l.redMul(a);t+1<e&&(c=c.redMul(_)),o=m,a=y,l=g}return this.curve.jpoint(o,l.redMul(i),a)},u.prototype.dbl=function(){return this.isInfinity()?this:this.curve.zeroA?this._zeroDbl():this.curve.threeA?this._threeDbl():this._dbl()},u.prototype._zeroDbl=function(){var e,t,n;if(this.zOne){var r=this.x.redSqr(),i=this.y.redSqr(),o=i.redSqr(),s=this.x.redAdd(i).redSqr().redISub(r).redISub(o);s=s.redIAdd(s);var a=r.redAdd(r).redIAdd(r),c=a.redSqr().redISub(s).redISub(s),l=o.redIAdd(o);l=(l=l.redIAdd(l)).redIAdd(l),e=c,t=a.redMul(s.redISub(c)).redISub(l),n=this.y.redAdd(this.y)}else{var u=this.x.redSqr(),d=this.y.redSqr(),_=d.redSqr(),p=this.x.redAdd(d).redSqr().redISub(u).redISub(_);p=p.redIAdd(p);var f=u.redAdd(u).redIAdd(u),m=f.redSqr(),h=_.redIAdd(_);h=(h=h.redIAdd(h)).redIAdd(h),e=m.redISub(p).redISub(p),t=f.redMul(p.redISub(e)).redISub(h),n=(n=this.y.redMul(this.z)).redIAdd(n)}return this.curve.jpoint(e,t,n)},u.prototype._threeDbl=function(){var e,t,n;if(this.zOne){var r=this.x.redSqr(),i=this.y.redSqr(),o=i.redSqr(),s=this.x.redAdd(i).redSqr().redISub(r).redISub(o);s=s.redIAdd(s);var a=r.redAdd(r).redIAdd(r).redIAdd(this.curve.a),c=a.redSqr().redISub(s).redISub(s);e=c;var l=o.redIAdd(o);l=(l=l.redIAdd(l)).redIAdd(l),t=a.redMul(s.redISub(c)).redISub(l),n=this.y.redAdd(this.y)}else{var u=this.z.redSqr(),d=this.y.redSqr(),_=this.x.redMul(d),p=this.x.redSub(u).redMul(this.x.redAdd(u));p=p.redAdd(p).redIAdd(p);var f=_.redIAdd(_),m=(f=f.redIAdd(f)).redAdd(f);e=p.redSqr().redISub(m),n=this.y.redAdd(this.z).redSqr().redISub(d).redISub(u);var h=d.redSqr();h=(h=(h=h.redIAdd(h)).redIAdd(h)).redIAdd(h),t=p.redMul(f.redISub(e)).redISub(h)}return this.curve.jpoint(e,t,n)},u.prototype._dbl=function(){var e=this.curve.a,t=this.x,n=this.y,r=this.z,i=r.redSqr().redSqr(),o=t.redSqr(),s=n.redSqr(),a=o.redAdd(o).redIAdd(o).redIAdd(e.redMul(i)),c=t.redAdd(t),l=(c=c.redIAdd(c)).redMul(s),u=a.redSqr().redISub(l.redAdd(l)),d=l.redISub(u),_=s.redSqr();_=(_=(_=_.redIAdd(_)).redIAdd(_)).redIAdd(_);var p=a.redMul(d).redISub(_),f=n.redAdd(n).redMul(r);return this.curve.jpoint(u,p,f)},u.prototype.trpl=function(){if(!this.curve.zeroA)return this.dbl().add(this);var e=this.x.redSqr(),t=this.y.redSqr(),n=this.z.redSqr(),r=t.redSqr(),i=e.redAdd(e).redIAdd(e),o=i.redSqr(),s=this.x.redAdd(t).redSqr().redISub(e).redISub(r),a=(s=(s=(s=s.redIAdd(s)).redAdd(s).redIAdd(s)).redISub(o)).redSqr(),c=r.redIAdd(r);c=(c=(c=c.redIAdd(c)).redIAdd(c)).redIAdd(c);var l=i.redIAdd(s).redSqr().redISub(o).redISub(a).redISub(c),u=t.redMul(l);u=(u=u.redIAdd(u)).redIAdd(u);var d=this.x.redMul(a).redISub(u);d=(d=d.redIAdd(d)).redIAdd(d);var _=this.y.redMul(l.redMul(c.redISub(l)).redISub(s.redMul(a)));_=(_=(_=_.redIAdd(_)).redIAdd(_)).redIAdd(_);var p=this.z.redAdd(s).redSqr().redISub(n).redISub(a);return this.curve.jpoint(d,_,p)},u.prototype.mul=function(e,t){return e=new i(e,t),this.curve._wnafMul(this,e)},u.prototype.eq=function(e){if("affine"===e.type)return this.eq(e.toJ());if(this===e)return!0;var t=this.z.redSqr(),n=e.z.redSqr();if(0!==this.x.redMul(n).redISub(e.x.redMul(t)).cmpn(0))return!1;var r=t.redMul(this.z),i=n.redMul(e.z);return 0===this.y.redMul(i).redISub(e.y.redMul(r)).cmpn(0)},u.prototype.eqXToP=function(e){var t=this.z.redSqr(),n=e.toRed(this.curve.red).redMul(t);if(0===this.x.cmp(n))return!0;for(var r=e.clone(),i=this.curve.redN.redMul(t);;){if(r.iadd(this.curve.n),r.cmp(this.curve.p)>=0)return!1;if(n.redIAdd(i),0===this.x.cmp(n))return!0}},u.prototype.inspect=function(){return this.isInfinity()?"<EC JPoint Infinity>":"<EC JPoint x: "+this.x.toString(16,2)+" y: "+this.y.toString(16,2)+" z: "+this.z.toString(16,2)+">"},u.prototype.isInfinity=function(){return 0===this.z.cmpn(0)}},60480:(e,t,n)=>{"use strict";var r,i=t,o=n(77952),s=n(894),a=n(47011).assert;function c(e){"short"===e.type?this.curve=new s.short(e):"edwards"===e.type?this.curve=new s.edwards(e):this.curve=new s.mont(e),this.g=this.curve.g,this.n=this.curve.n,this.hash=e.hash,a(this.g.validate(),"Invalid curve"),a(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}function l(e,t){Object.defineProperty(i,e,{configurable:!0,enumerable:!0,get:function(){var n=new c(t);return Object.defineProperty(i,e,{configurable:!0,enumerable:!0,value:n}),n}})}i.PresetCurve=c,l("p192",{type:"short",prime:"p192",p:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff",a:"ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc",b:"64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1",n:"ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831",hash:o.sha256,gRed:!1,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]}),l("p224",{type:"short",prime:"p224",p:"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001",a:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe",b:"b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4",n:"ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d",hash:o.sha256,gRed:!1,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]}),l("p256",{type:"short",prime:null,p:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff",a:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc",b:"5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b",n:"ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551",hash:o.sha256,gRed:!1,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]}),l("p384",{type:"short",prime:null,p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 ffffffff",a:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 fffffffc",b:"b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f 5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef",n:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 f4372ddf 581a0db2 48b0a77a ecec196a ccc52973",hash:o.sha384,gRed:!1,g:["aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 5502f25d bf55296c 3a545e38 72760ab7","3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 0a60b1ce 1d7e819d 7a431d7c 90ea0e5f"]}),l("p521",{type:"short",prime:null,p:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff",a:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffc",b:"00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b 99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd 3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00",n:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409",hash:o.sha512,gRed:!1,g:["000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66","00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 3fad0761 353c7086 a272c240 88be9476 9fd16650"]}),l("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"1",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:o.sha256,gRed:!1,g:["9"]}),l("ed25519",{type:"edwards",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"-1",c:"1",d:"52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:o.sha256,gRed:!1,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});try{r=n(74011)}catch(u){r=void 0}l("secp256k1",{type:"short",prime:"k256",p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f",a:"0",b:"7",n:"ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141",h:"1",hash:o.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:!1,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",r]})},57447:(e,t,n)=>{"use strict";var r=n(39404),i=n(32723),o=n(47011),s=n(60480),a=n(15037),c=o.assert,l=n(61200),u=n(28545);function d(e){if(!(this instanceof d))return new d(e);"string"==typeof e&&(c(Object.prototype.hasOwnProperty.call(s,e),"Unknown curve "+e),e=s[e]),e instanceof s.PresetCurve&&(e={curve:e}),this.curve=e.curve.curve,this.n=this.curve.n,this.nh=this.n.ushrn(1),this.g=this.curve.g,this.g=e.curve.g,this.g.precompute(e.curve.n.bitLength()+1),this.hash=e.hash||e.curve.hash}e.exports=d,d.prototype.keyPair=function(e){return new l(this,e)},d.prototype.keyFromPrivate=function(e,t){return l.fromPrivate(this,e,t)},d.prototype.keyFromPublic=function(e,t){return l.fromPublic(this,e,t)},d.prototype.genKeyPair=function(e){e||(e={});for(var t=new i({hash:this.hash,pers:e.pers,persEnc:e.persEnc||"utf8",entropy:e.entropy||a(this.hash.hmacStrength),entropyEnc:e.entropy&&e.entropyEnc||"utf8",nonce:this.n.toArray()}),n=this.n.byteLength(),o=this.n.sub(new r(2));;){var s=new r(t.generate(n));if(!(s.cmp(o)>0))return s.iaddn(1),this.keyFromPrivate(s)}},d.prototype._truncateToN=function(e,t){var n=8*e.byteLength()-this.n.bitLength();return n>0&&(e=e.ushrn(n)),!t&&e.cmp(this.n)>=0?e.sub(this.n):e},d.prototype.sign=function(e,t,n,o){"object"==typeof n&&(o=n,n=null),o||(o={}),t=this.keyFromPrivate(t,n),e=this._truncateToN(new r(e,16));for(var s=this.n.byteLength(),a=t.getPrivate().toArray("be",s),c=e.toArray("be",s),l=new i({hash:this.hash,entropy:a,nonce:c,pers:o.pers,persEnc:o.persEnc||"utf8"}),d=this.n.sub(new r(1)),_=0;;_++){var p=o.k?o.k(_):new r(l.generate(this.n.byteLength()));if(!((p=this._truncateToN(p,!0)).cmpn(1)<=0||p.cmp(d)>=0)){var f=this.g.mul(p);if(!f.isInfinity()){var m=f.getX(),h=m.umod(this.n);if(0!==h.cmpn(0)){var g=p.invm(this.n).mul(h.mul(t.getPrivate()).iadd(e));if(0!==(g=g.umod(this.n)).cmpn(0)){var y=(f.getY().isOdd()?1:0)|(0!==m.cmp(h)?2:0);return o.canonical&&g.cmp(this.nh)>0&&(g=this.n.sub(g),y^=1),new u({r:h,s:g,recoveryParam:y})}}}}}},d.prototype.verify=function(e,t,n,i){e=this._truncateToN(new r(e,16)),n=this.keyFromPublic(n,i);var o=(t=new u(t,"hex")).r,s=t.s;if(o.cmpn(1)<0||o.cmp(this.n)>=0)return!1;if(s.cmpn(1)<0||s.cmp(this.n)>=0)return!1;var a,c=s.invm(this.n),l=c.mul(e).umod(this.n),d=c.mul(o).umod(this.n);return this.curve._maxwellTrick?!(a=this.g.jmulAdd(l,n.getPublic(),d)).isInfinity()&&a.eqXToP(o):!(a=this.g.mulAdd(l,n.getPublic(),d)).isInfinity()&&0===a.getX().umod(this.n).cmp(o)},d.prototype.recoverPubKey=function(e,t,n,i){c((3&n)===n,"The recovery param is more than two bits"),t=new u(t,i);var o=this.n,s=new r(e),a=t.r,l=t.s,d=1&n,_=n>>1;if(a.cmp(this.curve.p.umod(this.curve.n))>=0&&_)throw new Error("Unable to find sencond key candinate");a=_?this.curve.pointFromX(a.add(this.curve.n),d):this.curve.pointFromX(a,d);var p=t.r.invm(o),f=o.sub(s).mul(p).umod(o),m=l.mul(p).umod(o);return this.g.mulAdd(f,a,m)},d.prototype.getKeyRecoveryParam=function(e,t,n,r){if(null!==(t=new u(t,r)).recoveryParam)return t.recoveryParam;for(var i=0;i<4;i++){var o;try{o=this.recoverPubKey(e,t,i)}catch(e){continue}if(o.eq(n))return i}throw new Error("Unable to find valid recovery factor")}},61200:(e,t,n)=>{"use strict";var r=n(39404),i=n(47011).assert;function o(e,t){this.ec=e,this.priv=null,this.pub=null,t.priv&&this._importPrivate(t.priv,t.privEnc),t.pub&&this._importPublic(t.pub,t.pubEnc)}e.exports=o,o.fromPublic=function(e,t,n){return t instanceof o?t:new o(e,{pub:t,pubEnc:n})},o.fromPrivate=function(e,t,n){return t instanceof o?t:new o(e,{priv:t,privEnc:n})},o.prototype.validate=function(){var e=this.getPublic();return e.isInfinity()?{result:!1,reason:"Invalid public key"}:e.validate()?e.mul(this.ec.curve.n).isInfinity()?{result:!0,reason:null}:{result:!1,reason:"Public key * N != O"}:{result:!1,reason:"Public key is not a point"}},o.prototype.getPublic=function(e,t){return"string"==typeof e&&(t=e,e=null),this.pub||(this.pub=this.ec.g.mul(this.priv)),t?this.pub.encode(t,e):this.pub},o.prototype.getPrivate=function(e){return"hex"===e?this.priv.toString(16,2):this.priv},o.prototype._importPrivate=function(e,t){this.priv=new r(e,t||16),this.priv=this.priv.umod(this.ec.curve.n)},o.prototype._importPublic=function(e,t){if(e.x||e.y)return"mont"===this.ec.curve.type?i(e.x,"Need x coordinate"):"short"!==this.ec.curve.type&&"edwards"!==this.ec.curve.type||i(e.x&&e.y,"Need both x and y coordinate"),void(this.pub=this.ec.curve.point(e.x,e.y));this.pub=this.ec.curve.decodePoint(e,t)},o.prototype.derive=function(e){return e.validate()||i(e.validate(),"public point not validated"),e.mul(this.priv).getX()},o.prototype.sign=function(e,t,n){return this.ec.sign(e,this,t,n)},o.prototype.verify=function(e,t){return this.ec.verify(e,t,this)},o.prototype.inspect=function(){return"<Key priv: "+(this.priv&&this.priv.toString(16,2))+" pub: "+(this.pub&&this.pub.inspect())+" >"}},28545:(e,t,n)=>{"use strict";var r=n(39404),i=n(47011),o=i.assert;function s(e,t){if(e instanceof s)return e;this._importDER(e,t)||(o(e.r&&e.s,"Signature without r or s"),this.r=new r(e.r,16),this.s=new r(e.s,16),void 0===e.recoveryParam?this.recoveryParam=null:this.recoveryParam=e.recoveryParam)}function a(){this.place=0}function c(e,t){var n=e[t.place++];if(!(128&n))return n;var r=15&n;if(0===r||r>4)return!1;for(var i=0,o=0,s=t.place;o<r;o++,s++)i<<=8,i|=e[s],i>>>=0;return!(i<=127)&&(t.place=s,i)}function l(e){for(var t=0,n=e.length-1;!e[t]&&!(128&e[t+1])&&t<n;)t++;return 0===t?e:e.slice(t)}function u(e,t){if(t<128)e.push(t);else{var n=1+(Math.log(t)/Math.LN2>>>3);for(e.push(128|n);--n;)e.push(t>>>(n<<3)&255);e.push(t)}}e.exports=s,s.prototype._importDER=function(e,t){e=i.toArray(e,t);var n=new a;if(48!==e[n.place++])return!1;var o=c(e,n);if(!1===o)return!1;if(o+n.place!==e.length)return!1;if(2!==e[n.place++])return!1;var s=c(e,n);if(!1===s)return!1;var l=e.slice(n.place,s+n.place);if(n.place+=s,2!==e[n.place++])return!1;var u=c(e,n);if(!1===u)return!1;if(e.length!==u+n.place)return!1;var d=e.slice(n.place,u+n.place);if(0===l[0]){if(!(128&l[1]))return!1;l=l.slice(1)}if(0===d[0]){if(!(128&d[1]))return!1;d=d.slice(1)}return this.r=new r(l),this.s=new r(d),this.recoveryParam=null,!0},s.prototype.toDER=function(e){var t=this.r.toArray(),n=this.s.toArray();for(128&t[0]&&(t=[0].concat(t)),128&n[0]&&(n=[0].concat(n)),t=l(t),n=l(n);!(n[0]||128&n[1]);)n=n.slice(1);var r=[2];u(r,t.length),(r=r.concat(t)).push(2),u(r,n.length);var o=r.concat(n),s=[48];return u(s,o.length),s=s.concat(o),i.encode(s,e)}},8650:(e,t,n)=>{"use strict";var r=n(77952),i=n(60480),o=n(47011),s=o.assert,a=o.parseBytes,c=n(46661),l=n(90220);function u(e){if(s("ed25519"===e,"only tested with ed25519 so far"),!(this instanceof u))return new u(e);e=i[e].curve,this.curve=e,this.g=e.g,this.g.precompute(e.n.bitLength()+1),this.pointClass=e.point().constructor,this.encodingLength=Math.ceil(e.n.bitLength()/8),this.hash=r.sha512}e.exports=u,u.prototype.sign=function(e,t){e=a(e);var n=this.keyFromSecret(t),r=this.hashInt(n.messagePrefix(),e),i=this.g.mul(r),o=this.encodePoint(i),s=this.hashInt(o,n.pubBytes(),e).mul(n.priv()),c=r.add(s).umod(this.curve.n);return this.makeSignature({R:i,S:c,Rencoded:o})},u.prototype.verify=function(e,t,n){e=a(e),t=this.makeSignature(t);var r=this.keyFromPublic(n),i=this.hashInt(t.Rencoded(),r.pubBytes(),e),o=this.g.mul(t.S());return t.R().add(r.pub().mul(i)).eq(o)},u.prototype.hashInt=function(){for(var e=this.hash(),t=0;t<arguments.length;t++)e.update(arguments[t]);return o.intFromLE(e.digest()).umod(this.curve.n)},u.prototype.keyFromPublic=function(e){return c.fromPublic(this,e)},u.prototype.keyFromSecret=function(e){return c.fromSecret(this,e)},u.prototype.makeSignature=function(e){return e instanceof l?e:new l(this,e)},u.prototype.encodePoint=function(e){var t=e.getY().toArray("le",this.encodingLength);return t[this.encodingLength-1]|=e.getX().isOdd()?128:0,t},u.prototype.decodePoint=function(e){var t=(e=o.parseBytes(e)).length-1,n=e.slice(0,t).concat(-129&e[t]),r=!!(128&e[t]),i=o.intFromLE(n);return this.curve.pointFromY(i,r)},u.prototype.encodeInt=function(e){return e.toArray("le",this.encodingLength)},u.prototype.decodeInt=function(e){return o.intFromLE(e)},u.prototype.isPoint=function(e){return e instanceof this.pointClass}},46661:(e,t,n)=>{"use strict";var r=n(47011),i=r.assert,o=r.parseBytes,s=r.cachedProperty;function a(e,t){this.eddsa=e,this._secret=o(t.secret),e.isPoint(t.pub)?this._pub=t.pub:this._pubBytes=o(t.pub)}a.fromPublic=function(e,t){return t instanceof a?t:new a(e,{pub:t})},a.fromSecret=function(e,t){return t instanceof a?t:new a(e,{secret:t})},a.prototype.secret=function(){return this._secret},s(a,"pubBytes",(function(){return this.eddsa.encodePoint(this.pub())})),s(a,"pub",(function(){return this._pubBytes?this.eddsa.decodePoint(this._pubBytes):this.eddsa.g.mul(this.priv())})),s(a,"privBytes",(function(){var e=this.eddsa,t=this.hash(),n=e.encodingLength-1,r=t.slice(0,e.encodingLength);return r[0]&=248,r[n]&=127,r[n]|=64,r})),s(a,"priv",(function(){return this.eddsa.decodeInt(this.privBytes())})),s(a,"hash",(function(){return this.eddsa.hash().update(this.secret()).digest()})),s(a,"messagePrefix",(function(){return this.hash().slice(this.eddsa.encodingLength)})),a.prototype.sign=function(e){return i(this._secret,"KeyPair can only verify"),this.eddsa.sign(e,this)},a.prototype.verify=function(e,t){return this.eddsa.verify(e,t,this)},a.prototype.getSecret=function(e){return i(this._secret,"KeyPair is public only"),r.encode(this.secret(),e)},a.prototype.getPublic=function(e){return r.encode(this.pubBytes(),e)},e.exports=a},90220:(e,t,n)=>{"use strict";var r=n(39404),i=n(47011),o=i.assert,s=i.cachedProperty,a=i.parseBytes;function c(e,t){this.eddsa=e,"object"!=typeof t&&(t=a(t)),Array.isArray(t)&&(t={R:t.slice(0,e.encodingLength),S:t.slice(e.encodingLength)}),o(t.R&&t.S,"Signature without R or S"),e.isPoint(t.R)&&(this._R=t.R),t.S instanceof r&&(this._S=t.S),this._Rencoded=Array.isArray(t.R)?t.R:t.Rencoded,this._Sencoded=Array.isArray(t.S)?t.S:t.Sencoded}s(c,"S",(function(){return this.eddsa.decodeInt(this.Sencoded())})),s(c,"R",(function(){return this.eddsa.decodePoint(this.Rencoded())})),s(c,"Rencoded",(function(){return this.eddsa.encodePoint(this.R())})),s(c,"Sencoded",(function(){return this.eddsa.encodeInt(this.S())})),c.prototype.toBytes=function(){return this.Rencoded().concat(this.Sencoded())},c.prototype.toHex=function(){return i.encode(this.toBytes(),"hex").toUpperCase()},e.exports=c},74011:e=>{e.exports={doubles:{step:4,points:[["e60fce93b59e9ec53011aabc21c23e97b2a31369b87a5ae9c44ee89e2a6dec0a","f7e3507399e595929db99f34f57937101296891e44d23f0be1f32cce69616821"],["8282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508","11f8a8098557dfe45e8256e830b60ace62d613ac2f7b17bed31b6eaff6e26caf"],["175e159f728b865a72f99cc6c6fc846de0b93833fd2222ed73fce5b551e5b739","d3506e0d9e3c79eba4ef97a51ff71f5eacb5955add24345c6efa6ffee9fed695"],["363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640","4e273adfc732221953b445397f3363145b9a89008199ecb62003c7f3bee9de9"],["8b4b5f165df3c2be8c6244b5b745638843e4a781a15bcd1b69f79a55dffdf80c","4aad0a6f68d308b4b3fbd7813ab0da04f9e336546162ee56b3eff0c65fd4fd36"],["723cbaa6e5db996d6bf771c00bd548c7b700dbffa6c0e77bcb6115925232fcda","96e867b5595cc498a921137488824d6e2660a0653779494801dc069d9eb39f5f"],["eebfa4d493bebf98ba5feec812c2d3b50947961237a919839a533eca0e7dd7fa","5d9a8ca3970ef0f269ee7edaf178089d9ae4cdc3a711f712ddfd4fdae1de8999"],["100f44da696e71672791d0a09b7bde459f1215a29b3c03bfefd7835b39a48db0","cdd9e13192a00b772ec8f3300c090666b7ff4a18ff5195ac0fbd5cd62bc65a09"],["e1031be262c7ed1b1dc9227a4a04c017a77f8d4464f3b3852c8acde6e534fd2d","9d7061928940405e6bb6a4176597535af292dd419e1ced79a44f18f29456a00d"],["feea6cae46d55b530ac2839f143bd7ec5cf8b266a41d6af52d5e688d9094696d","e57c6b6c97dce1bab06e4e12bf3ecd5c981c8957cc41442d3155debf18090088"],["da67a91d91049cdcb367be4be6ffca3cfeed657d808583de33fa978bc1ec6cb1","9bacaa35481642bc41f463f7ec9780e5dec7adc508f740a17e9ea8e27a68be1d"],["53904faa0b334cdda6e000935ef22151ec08d0f7bb11069f57545ccc1a37b7c0","5bc087d0bc80106d88c9eccac20d3c1c13999981e14434699dcb096b022771c8"],["8e7bcd0bd35983a7719cca7764ca906779b53a043a9b8bcaeff959f43ad86047","10b7770b2a3da4b3940310420ca9514579e88e2e47fd68b3ea10047e8460372a"],["385eed34c1cdff21e6d0818689b81bde71a7f4f18397e6690a841e1599c43862","283bebc3e8ea23f56701de19e9ebf4576b304eec2086dc8cc0458fe5542e5453"],["6f9d9b803ecf191637c73a4413dfa180fddf84a5947fbc9c606ed86c3fac3a7","7c80c68e603059ba69b8e2a30e45c4d47ea4dd2f5c281002d86890603a842160"],["3322d401243c4e2582a2147c104d6ecbf774d163db0f5e5313b7e0e742d0e6bd","56e70797e9664ef5bfb019bc4ddaf9b72805f63ea2873af624f3a2e96c28b2a0"],["85672c7d2de0b7da2bd1770d89665868741b3f9af7643397721d74d28134ab83","7c481b9b5b43b2eb6374049bfa62c2e5e77f17fcc5298f44c8e3094f790313a6"],["948bf809b1988a46b06c9f1919413b10f9226c60f668832ffd959af60c82a0a","53a562856dcb6646dc6b74c5d1c3418c6d4dff08c97cd2bed4cb7f88d8c8e589"],["6260ce7f461801c34f067ce0f02873a8f1b0e44dfc69752accecd819f38fd8e8","bc2da82b6fa5b571a7f09049776a1ef7ecd292238051c198c1a84e95b2b4ae17"],["e5037de0afc1d8d43d8348414bbf4103043ec8f575bfdc432953cc8d2037fa2d","4571534baa94d3b5f9f98d09fb990bddbd5f5b03ec481f10e0e5dc841d755bda"],["e06372b0f4a207adf5ea905e8f1771b4e7e8dbd1c6a6c5b725866a0ae4fce725","7a908974bce18cfe12a27bb2ad5a488cd7484a7787104870b27034f94eee31dd"],["213c7a715cd5d45358d0bbf9dc0ce02204b10bdde2a3f58540ad6908d0559754","4b6dad0b5ae462507013ad06245ba190bb4850f5f36a7eeddff2c27534b458f2"],["4e7c272a7af4b34e8dbb9352a5419a87e2838c70adc62cddf0cc3a3b08fbd53c","17749c766c9d0b18e16fd09f6def681b530b9614bff7dd33e0b3941817dcaae6"],["fea74e3dbe778b1b10f238ad61686aa5c76e3db2be43057632427e2840fb27b6","6e0568db9b0b13297cf674deccb6af93126b596b973f7b77701d3db7f23cb96f"],["76e64113f677cf0e10a2570d599968d31544e179b760432952c02a4417bdde39","c90ddf8dee4e95cf577066d70681f0d35e2a33d2b56d2032b4b1752d1901ac01"],["c738c56b03b2abe1e8281baa743f8f9a8f7cc643df26cbee3ab150242bcbb891","893fb578951ad2537f718f2eacbfbbbb82314eef7880cfe917e735d9699a84c3"],["d895626548b65b81e264c7637c972877d1d72e5f3a925014372e9f6588f6c14b","febfaa38f2bc7eae728ec60818c340eb03428d632bb067e179363ed75d7d991f"],["b8da94032a957518eb0f6433571e8761ceffc73693e84edd49150a564f676e03","2804dfa44805a1e4d7c99cc9762808b092cc584d95ff3b511488e4e74efdf6e7"],["e80fea14441fb33a7d8adab9475d7fab2019effb5156a792f1a11778e3c0df5d","eed1de7f638e00771e89768ca3ca94472d155e80af322ea9fcb4291b6ac9ec78"],["a301697bdfcd704313ba48e51d567543f2a182031efd6915ddc07bbcc4e16070","7370f91cfb67e4f5081809fa25d40f9b1735dbf7c0a11a130c0d1a041e177ea1"],["90ad85b389d6b936463f9d0512678de208cc330b11307fffab7ac63e3fb04ed4","e507a3620a38261affdcbd9427222b839aefabe1582894d991d4d48cb6ef150"],["8f68b9d2f63b5f339239c1ad981f162ee88c5678723ea3351b7b444c9ec4c0da","662a9f2dba063986de1d90c2b6be215dbbea2cfe95510bfdf23cbf79501fff82"],["e4f3fb0176af85d65ff99ff9198c36091f48e86503681e3e6686fd5053231e11","1e63633ad0ef4f1c1661a6d0ea02b7286cc7e74ec951d1c9822c38576feb73bc"],["8c00fa9b18ebf331eb961537a45a4266c7034f2f0d4e1d0716fb6eae20eae29e","efa47267fea521a1a9dc343a3736c974c2fadafa81e36c54e7d2a4c66702414b"],["e7a26ce69dd4829f3e10cec0a9e98ed3143d084f308b92c0997fddfc60cb3e41","2a758e300fa7984b471b006a1aafbb18d0a6b2c0420e83e20e8a9421cf2cfd51"],["b6459e0ee3662ec8d23540c223bcbdc571cbcb967d79424f3cf29eb3de6b80ef","67c876d06f3e06de1dadf16e5661db3c4b3ae6d48e35b2ff30bf0b61a71ba45"],["d68a80c8280bb840793234aa118f06231d6f1fc67e73c5a5deda0f5b496943e8","db8ba9fff4b586d00c4b1f9177b0e28b5b0e7b8f7845295a294c84266b133120"],["324aed7df65c804252dc0270907a30b09612aeb973449cea4095980fc28d3d5d","648a365774b61f2ff130c0c35aec1f4f19213b0c7e332843967224af96ab7c84"],["4df9c14919cde61f6d51dfdbe5fee5dceec4143ba8d1ca888e8bd373fd054c96","35ec51092d8728050974c23a1d85d4b5d506cdc288490192ebac06cad10d5d"],["9c3919a84a474870faed8a9c1cc66021523489054d7f0308cbfc99c8ac1f98cd","ddb84f0f4a4ddd57584f044bf260e641905326f76c64c8e6be7e5e03d4fc599d"],["6057170b1dd12fdf8de05f281d8e06bb91e1493a8b91d4cc5a21382120a959e5","9a1af0b26a6a4807add9a2daf71df262465152bc3ee24c65e899be932385a2a8"],["a576df8e23a08411421439a4518da31880cef0fba7d4df12b1a6973eecb94266","40a6bf20e76640b2c92b97afe58cd82c432e10a7f514d9f3ee8be11ae1b28ec8"],["7778a78c28dec3e30a05fe9629de8c38bb30d1f5cf9a3a208f763889be58ad71","34626d9ab5a5b22ff7098e12f2ff580087b38411ff24ac563b513fc1fd9f43ac"],["928955ee637a84463729fd30e7afd2ed5f96274e5ad7e5cb09eda9c06d903ac","c25621003d3f42a827b78a13093a95eeac3d26efa8a8d83fc5180e935bcd091f"],["85d0fef3ec6db109399064f3a0e3b2855645b4a907ad354527aae75163d82751","1f03648413a38c0be29d496e582cf5663e8751e96877331582c237a24eb1f962"],["ff2b0dce97eece97c1c9b6041798b85dfdfb6d8882da20308f5404824526087e","493d13fef524ba188af4c4dc54d07936c7b7ed6fb90e2ceb2c951e01f0c29907"],["827fbbe4b1e880ea9ed2b2e6301b212b57f1ee148cd6dd28780e5e2cf856e241","c60f9c923c727b0b71bef2c67d1d12687ff7a63186903166d605b68baec293ec"],["eaa649f21f51bdbae7be4ae34ce6e5217a58fdce7f47f9aa7f3b58fa2120e2b3","be3279ed5bbbb03ac69a80f89879aa5a01a6b965f13f7e59d47a5305ba5ad93d"],["e4a42d43c5cf169d9391df6decf42ee541b6d8f0c9a137401e23632dda34d24f","4d9f92e716d1c73526fc99ccfb8ad34ce886eedfa8d8e4f13a7f7131deba9414"],["1ec80fef360cbdd954160fadab352b6b92b53576a88fea4947173b9d4300bf19","aeefe93756b5340d2f3a4958a7abbf5e0146e77f6295a07b671cdc1cc107cefd"],["146a778c04670c2f91b00af4680dfa8bce3490717d58ba889ddb5928366642be","b318e0ec3354028add669827f9d4b2870aaa971d2f7e5ed1d0b297483d83efd0"],["fa50c0f61d22e5f07e3acebb1aa07b128d0012209a28b9776d76a8793180eef9","6b84c6922397eba9b72cd2872281a68a5e683293a57a213b38cd8d7d3f4f2811"],["da1d61d0ca721a11b1a5bf6b7d88e8421a288ab5d5bba5220e53d32b5f067ec2","8157f55a7c99306c79c0766161c91e2966a73899d279b48a655fba0f1ad836f1"],["a8e282ff0c9706907215ff98e8fd416615311de0446f1e062a73b0610d064e13","7f97355b8db81c09abfb7f3c5b2515888b679a3e50dd6bd6cef7c73111f4cc0c"],["174a53b9c9a285872d39e56e6913cab15d59b1fa512508c022f382de8319497c","ccc9dc37abfc9c1657b4155f2c47f9e6646b3a1d8cb9854383da13ac079afa73"],["959396981943785c3d3e57edf5018cdbe039e730e4918b3d884fdff09475b7ba","2e7e552888c331dd8ba0386a4b9cd6849c653f64c8709385e9b8abf87524f2fd"],["d2a63a50ae401e56d645a1153b109a8fcca0a43d561fba2dbb51340c9d82b151","e82d86fb6443fcb7565aee58b2948220a70f750af484ca52d4142174dcf89405"],["64587e2335471eb890ee7896d7cfdc866bacbdbd3839317b3436f9b45617e073","d99fcdd5bf6902e2ae96dd6447c299a185b90a39133aeab358299e5e9faf6589"],["8481bde0e4e4d885b3a546d3e549de042f0aa6cea250e7fd358d6c86dd45e458","38ee7b8cba5404dd84a25bf39cecb2ca900a79c42b262e556d64b1b59779057e"],["13464a57a78102aa62b6979ae817f4637ffcfed3c4b1ce30bcd6303f6caf666b","69be159004614580ef7e433453ccb0ca48f300a81d0942e13f495a907f6ecc27"],["bc4a9df5b713fe2e9aef430bcc1dc97a0cd9ccede2f28588cada3a0d2d83f366","d3a81ca6e785c06383937adf4b798caa6e8a9fbfa547b16d758d666581f33c1"],["8c28a97bf8298bc0d23d8c749452a32e694b65e30a9472a3954ab30fe5324caa","40a30463a3305193378fedf31f7cc0eb7ae784f0451cb9459e71dc73cbef9482"],["8ea9666139527a8c1dd94ce4f071fd23c8b350c5a4bb33748c4ba111faccae0","620efabbc8ee2782e24e7c0cfb95c5d735b783be9cf0f8e955af34a30e62b945"],["dd3625faef5ba06074669716bbd3788d89bdde815959968092f76cc4eb9a9787","7a188fa3520e30d461da2501045731ca941461982883395937f68d00c644a573"],["f710d79d9eb962297e4f6232b40e8f7feb2bc63814614d692c12de752408221e","ea98e67232d3b3295d3b535532115ccac8612c721851617526ae47a9c77bfc82"]]},naf:{wnd:7,points:[["f9308a019258c31049344f85f89d5229b531c845836f99b08601f113bce036f9","388f7b0f632de8140fe337e62a37f3566500a99934c2231b6cb9fd7584b8e672"],["2f8bde4d1a07209355b4a7250a5c5128e88b84bddc619ab7cba8d569b240efe4","d8ac222636e5e3d6d4dba9dda6c9c426f788271bab0d6840dca87d3aa6ac62d6"],["5cbdf0646e5db4eaa398f365f2ea7a0e3d419b7e0330e39ce92bddedcac4f9bc","6aebca40ba255960a3178d6d861a54dba813d0b813fde7b5a5082628087264da"],["acd484e2f0c7f65309ad178a9f559abde09796974c57e714c35f110dfc27ccbe","cc338921b0a7d9fd64380971763b61e9add888a4375f8e0f05cc262ac64f9c37"],["774ae7f858a9411e5ef4246b70c65aac5649980be5c17891bbec17895da008cb","d984a032eb6b5e190243dd56d7b7b365372db1e2dff9d6a8301d74c9c953c61b"],["f28773c2d975288bc7d1d205c3748651b075fbc6610e58cddeeddf8f19405aa8","ab0902e8d880a89758212eb65cdaf473a1a06da521fa91f29b5cb52db03ed81"],["d7924d4f7d43ea965a465ae3095ff41131e5946f3c85f79e44adbcf8e27e080e","581e2872a86c72a683842ec228cc6defea40af2bd896d3a5c504dc9ff6a26b58"],["defdea4cdb677750a420fee807eacf21eb9898ae79b9768766e4faa04a2d4a34","4211ab0694635168e997b0ead2a93daeced1f4a04a95c0f6cfb199f69e56eb77"],["2b4ea0a797a443d293ef5cff444f4979f06acfebd7e86d277475656138385b6c","85e89bc037945d93b343083b5a1c86131a01f60c50269763b570c854e5c09b7a"],["352bbf4a4cdd12564f93fa332ce333301d9ad40271f8107181340aef25be59d5","321eb4075348f534d59c18259dda3e1f4a1b3b2e71b1039c67bd3d8bcf81998c"],["2fa2104d6b38d11b0230010559879124e42ab8dfeff5ff29dc9cdadd4ecacc3f","2de1068295dd865b64569335bd5dd80181d70ecfc882648423ba76b532b7d67"],["9248279b09b4d68dab21a9b066edda83263c3d84e09572e269ca0cd7f5453714","73016f7bf234aade5d1aa71bdea2b1ff3fc0de2a887912ffe54a32ce97cb3402"],["daed4f2be3a8bf278e70132fb0beb7522f570e144bf615c07e996d443dee8729","a69dce4a7d6c98e8d4a1aca87ef8d7003f83c230f3afa726ab40e52290be1c55"],["c44d12c7065d812e8acf28d7cbb19f9011ecd9e9fdf281b0e6a3b5e87d22e7db","2119a460ce326cdc76c45926c982fdac0e106e861edf61c5a039063f0e0e6482"],["6a245bf6dc698504c89a20cfded60853152b695336c28063b61c65cbd269e6b4","e022cf42c2bd4a708b3f5126f16a24ad8b33ba48d0423b6efd5e6348100d8a82"],["1697ffa6fd9de627c077e3d2fe541084ce13300b0bec1146f95ae57f0d0bd6a5","b9c398f186806f5d27561506e4557433a2cf15009e498ae7adee9d63d01b2396"],["605bdb019981718b986d0f07e834cb0d9deb8360ffb7f61df982345ef27a7479","2972d2de4f8d20681a78d93ec96fe23c26bfae84fb14db43b01e1e9056b8c49"],["62d14dab4150bf497402fdc45a215e10dcb01c354959b10cfe31c7e9d87ff33d","80fc06bd8cc5b01098088a1950eed0db01aa132967ab472235f5642483b25eaf"],["80c60ad0040f27dade5b4b06c408e56b2c50e9f56b9b8b425e555c2f86308b6f","1c38303f1cc5c30f26e66bad7fe72f70a65eed4cbe7024eb1aa01f56430bd57a"],["7a9375ad6167ad54aa74c6348cc54d344cc5dc9487d847049d5eabb0fa03c8fb","d0e3fa9eca8726909559e0d79269046bdc59ea10c70ce2b02d499ec224dc7f7"],["d528ecd9b696b54c907a9ed045447a79bb408ec39b68df504bb51f459bc3ffc9","eecf41253136e5f99966f21881fd656ebc4345405c520dbc063465b521409933"],["49370a4b5f43412ea25f514e8ecdad05266115e4a7ecb1387231808f8b45963","758f3f41afd6ed428b3081b0512fd62a54c3f3afbb5b6764b653052a12949c9a"],["77f230936ee88cbbd73df930d64702ef881d811e0e1498e2f1c13eb1fc345d74","958ef42a7886b6400a08266e9ba1b37896c95330d97077cbbe8eb3c7671c60d6"],["f2dac991cc4ce4b9ea44887e5c7c0bce58c80074ab9d4dbaeb28531b7739f530","e0dedc9b3b2f8dad4da1f32dec2531df9eb5fbeb0598e4fd1a117dba703a3c37"],["463b3d9f662621fb1b4be8fbbe2520125a216cdfc9dae3debcba4850c690d45b","5ed430d78c296c3543114306dd8622d7c622e27c970a1de31cb377b01af7307e"],["f16f804244e46e2a09232d4aff3b59976b98fac14328a2d1a32496b49998f247","cedabd9b82203f7e13d206fcdf4e33d92a6c53c26e5cce26d6579962c4e31df6"],["caf754272dc84563b0352b7a14311af55d245315ace27c65369e15f7151d41d1","cb474660ef35f5f2a41b643fa5e460575f4fa9b7962232a5c32f908318a04476"],["2600ca4b282cb986f85d0f1709979d8b44a09c07cb86d7c124497bc86f082120","4119b88753c15bd6a693b03fcddbb45d5ac6be74ab5f0ef44b0be9475a7e4b40"],["7635ca72d7e8432c338ec53cd12220bc01c48685e24f7dc8c602a7746998e435","91b649609489d613d1d5e590f78e6d74ecfc061d57048bad9e76f302c5b9c61"],["754e3239f325570cdbbf4a87deee8a66b7f2b33479d468fbc1a50743bf56cc18","673fb86e5bda30fb3cd0ed304ea49a023ee33d0197a695d0c5d98093c536683"],["e3e6bd1071a1e96aff57859c82d570f0330800661d1c952f9fe2694691d9b9e8","59c9e0bba394e76f40c0aa58379a3cb6a5a2283993e90c4167002af4920e37f5"],["186b483d056a033826ae73d88f732985c4ccb1f32ba35f4b4cc47fdcf04aa6eb","3b952d32c67cf77e2e17446e204180ab21fb8090895138b4a4a797f86e80888b"],["df9d70a6b9876ce544c98561f4be4f725442e6d2b737d9c91a8321724ce0963f","55eb2dafd84d6ccd5f862b785dc39d4ab157222720ef9da217b8c45cf2ba2417"],["5edd5cc23c51e87a497ca815d5dce0f8ab52554f849ed8995de64c5f34ce7143","efae9c8dbc14130661e8cec030c89ad0c13c66c0d17a2905cdc706ab7399a868"],["290798c2b6476830da12fe02287e9e777aa3fba1c355b17a722d362f84614fba","e38da76dcd440621988d00bcf79af25d5b29c094db2a23146d003afd41943e7a"],["af3c423a95d9f5b3054754efa150ac39cd29552fe360257362dfdecef4053b45","f98a3fd831eb2b749a93b0e6f35cfb40c8cd5aa667a15581bc2feded498fd9c6"],["766dbb24d134e745cccaa28c99bf274906bb66b26dcf98df8d2fed50d884249a","744b1152eacbe5e38dcc887980da38b897584a65fa06cedd2c924f97cbac5996"],["59dbf46f8c94759ba21277c33784f41645f7b44f6c596a58ce92e666191abe3e","c534ad44175fbc300f4ea6ce648309a042ce739a7919798cd85e216c4a307f6e"],["f13ada95103c4537305e691e74e9a4a8dd647e711a95e73cb62dc6018cfd87b8","e13817b44ee14de663bf4bc808341f326949e21a6a75c2570778419bdaf5733d"],["7754b4fa0e8aced06d4167a2c59cca4cda1869c06ebadfb6488550015a88522c","30e93e864e669d82224b967c3020b8fa8d1e4e350b6cbcc537a48b57841163a2"],["948dcadf5990e048aa3874d46abef9d701858f95de8041d2a6828c99e2262519","e491a42537f6e597d5d28a3224b1bc25df9154efbd2ef1d2cbba2cae5347d57e"],["7962414450c76c1689c7b48f8202ec37fb224cf5ac0bfa1570328a8a3d7c77ab","100b610ec4ffb4760d5c1fc133ef6f6b12507a051f04ac5760afa5b29db83437"],["3514087834964b54b15b160644d915485a16977225b8847bb0dd085137ec47ca","ef0afbb2056205448e1652c48e8127fc6039e77c15c2378b7e7d15a0de293311"],["d3cc30ad6b483e4bc79ce2c9dd8bc54993e947eb8df787b442943d3f7b527eaf","8b378a22d827278d89c5e9be8f9508ae3c2ad46290358630afb34db04eede0a4"],["1624d84780732860ce1c78fcbfefe08b2b29823db913f6493975ba0ff4847610","68651cf9b6da903e0914448c6cd9d4ca896878f5282be4c8cc06e2a404078575"],["733ce80da955a8a26902c95633e62a985192474b5af207da6df7b4fd5fc61cd4","f5435a2bd2badf7d485a4d8b8db9fcce3e1ef8e0201e4578c54673bc1dc5ea1d"],["15d9441254945064cf1a1c33bbd3b49f8966c5092171e699ef258dfab81c045c","d56eb30b69463e7234f5137b73b84177434800bacebfc685fc37bbe9efe4070d"],["a1d0fcf2ec9de675b612136e5ce70d271c21417c9d2b8aaaac138599d0717940","edd77f50bcb5a3cab2e90737309667f2641462a54070f3d519212d39c197a629"],["e22fbe15c0af8ccc5780c0735f84dbe9a790badee8245c06c7ca37331cb36980","a855babad5cd60c88b430a69f53a1a7a38289154964799be43d06d77d31da06"],["311091dd9860e8e20ee13473c1155f5f69635e394704eaa74009452246cfa9b3","66db656f87d1f04fffd1f04788c06830871ec5a64feee685bd80f0b1286d8374"],["34c1fd04d301be89b31c0442d3e6ac24883928b45a9340781867d4232ec2dbdf","9414685e97b1b5954bd46f730174136d57f1ceeb487443dc5321857ba73abee"],["f219ea5d6b54701c1c14de5b557eb42a8d13f3abbcd08affcc2a5e6b049b8d63","4cb95957e83d40b0f73af4544cccf6b1f4b08d3c07b27fb8d8c2962a400766d1"],["d7b8740f74a8fbaab1f683db8f45de26543a5490bca627087236912469a0b448","fa77968128d9c92ee1010f337ad4717eff15db5ed3c049b3411e0315eaa4593b"],["32d31c222f8f6f0ef86f7c98d3a3335ead5bcd32abdd94289fe4d3091aa824bf","5f3032f5892156e39ccd3d7915b9e1da2e6dac9e6f26e961118d14b8462e1661"],["7461f371914ab32671045a155d9831ea8793d77cd59592c4340f86cbc18347b5","8ec0ba238b96bec0cbdddcae0aa442542eee1ff50c986ea6b39847b3cc092ff6"],["ee079adb1df1860074356a25aa38206a6d716b2c3e67453d287698bad7b2b2d6","8dc2412aafe3be5c4c5f37e0ecc5f9f6a446989af04c4e25ebaac479ec1c8c1e"],["16ec93e447ec83f0467b18302ee620f7e65de331874c9dc72bfd8616ba9da6b5","5e4631150e62fb40d0e8c2a7ca5804a39d58186a50e497139626778e25b0674d"],["eaa5f980c245f6f038978290afa70b6bd8855897f98b6aa485b96065d537bd99","f65f5d3e292c2e0819a528391c994624d784869d7e6ea67fb18041024edc07dc"],["78c9407544ac132692ee1910a02439958ae04877151342ea96c4b6b35a49f51","f3e0319169eb9b85d5404795539a5e68fa1fbd583c064d2462b675f194a3ddb4"],["494f4be219a1a77016dcd838431aea0001cdc8ae7a6fc688726578d9702857a5","42242a969283a5f339ba7f075e36ba2af925ce30d767ed6e55f4b031880d562c"],["a598a8030da6d86c6bc7f2f5144ea549d28211ea58faa70ebf4c1e665c1fe9b5","204b5d6f84822c307e4b4a7140737aec23fc63b65b35f86a10026dbd2d864e6b"],["c41916365abb2b5d09192f5f2dbeafec208f020f12570a184dbadc3e58595997","4f14351d0087efa49d245b328984989d5caf9450f34bfc0ed16e96b58fa9913"],["841d6063a586fa475a724604da03bc5b92a2e0d2e0a36acfe4c73a5514742881","73867f59c0659e81904f9a1c7543698e62562d6744c169ce7a36de01a8d6154"],["5e95bb399a6971d376026947f89bde2f282b33810928be4ded112ac4d70e20d5","39f23f366809085beebfc71181313775a99c9aed7d8ba38b161384c746012865"],["36e4641a53948fd476c39f8a99fd974e5ec07564b5315d8bf99471bca0ef2f66","d2424b1b1abe4eb8164227b085c9aa9456ea13493fd563e06fd51cf5694c78fc"],["336581ea7bfbbb290c191a2f507a41cf5643842170e914faeab27c2c579f726","ead12168595fe1be99252129b6e56b3391f7ab1410cd1e0ef3dcdcabd2fda224"],["8ab89816dadfd6b6a1f2634fcf00ec8403781025ed6890c4849742706bd43ede","6fdcef09f2f6d0a044e654aef624136f503d459c3e89845858a47a9129cdd24e"],["1e33f1a746c9c5778133344d9299fcaa20b0938e8acff2544bb40284b8c5fb94","60660257dd11b3aa9c8ed618d24edff2306d320f1d03010e33a7d2057f3b3b6"],["85b7c1dcb3cec1b7ee7f30ded79dd20a0ed1f4cc18cbcfcfa410361fd8f08f31","3d98a9cdd026dd43f39048f25a8847f4fcafad1895d7a633c6fed3c35e999511"],["29df9fbd8d9e46509275f4b125d6d45d7fbe9a3b878a7af872a2800661ac5f51","b4c4fe99c775a606e2d8862179139ffda61dc861c019e55cd2876eb2a27d84b"],["a0b1cae06b0a847a3fea6e671aaf8adfdfe58ca2f768105c8082b2e449fce252","ae434102edde0958ec4b19d917a6a28e6b72da1834aff0e650f049503a296cf2"],["4e8ceafb9b3e9a136dc7ff67e840295b499dfb3b2133e4ba113f2e4c0e121e5","cf2174118c8b6d7a4b48f6d534ce5c79422c086a63460502b827ce62a326683c"],["d24a44e047e19b6f5afb81c7ca2f69080a5076689a010919f42725c2b789a33b","6fb8d5591b466f8fc63db50f1c0f1c69013f996887b8244d2cdec417afea8fa3"],["ea01606a7a6c9cdd249fdfcfacb99584001edd28abbab77b5104e98e8e3b35d4","322af4908c7312b0cfbfe369f7a7b3cdb7d4494bc2823700cfd652188a3ea98d"],["af8addbf2b661c8a6c6328655eb96651252007d8c5ea31be4ad196de8ce2131f","6749e67c029b85f52a034eafd096836b2520818680e26ac8f3dfbcdb71749700"],["e3ae1974566ca06cc516d47e0fb165a674a3dabcfca15e722f0e3450f45889","2aeabe7e4531510116217f07bf4d07300de97e4874f81f533420a72eeb0bd6a4"],["591ee355313d99721cf6993ffed1e3e301993ff3ed258802075ea8ced397e246","b0ea558a113c30bea60fc4775460c7901ff0b053d25ca2bdeee98f1a4be5d196"],["11396d55fda54c49f19aa97318d8da61fa8584e47b084945077cf03255b52984","998c74a8cd45ac01289d5833a7beb4744ff536b01b257be4c5767bea93ea57a4"],["3c5d2a1ba39c5a1790000738c9e0c40b8dcdfd5468754b6405540157e017aa7a","b2284279995a34e2f9d4de7396fc18b80f9b8b9fdd270f6661f79ca4c81bd257"],["cc8704b8a60a0defa3a99a7299f2e9c3fbc395afb04ac078425ef8a1793cc030","bdd46039feed17881d1e0862db347f8cf395b74fc4bcdc4e940b74e3ac1f1b13"],["c533e4f7ea8555aacd9777ac5cad29b97dd4defccc53ee7ea204119b2889b197","6f0a256bc5efdf429a2fb6242f1a43a2d9b925bb4a4b3a26bb8e0f45eb596096"],["c14f8f2ccb27d6f109f6d08d03cc96a69ba8c34eec07bbcf566d48e33da6593","c359d6923bb398f7fd4473e16fe1c28475b740dd098075e6c0e8649113dc3a38"],["a6cbc3046bc6a450bac24789fa17115a4c9739ed75f8f21ce441f72e0b90e6ef","21ae7f4680e889bb130619e2c0f95a360ceb573c70603139862afd617fa9b9f"],["347d6d9a02c48927ebfb86c1359b1caf130a3c0267d11ce6344b39f99d43cc38","60ea7f61a353524d1c987f6ecec92f086d565ab687870cb12689ff1e31c74448"],["da6545d2181db8d983f7dcb375ef5866d47c67b1bf31c8cf855ef7437b72656a","49b96715ab6878a79e78f07ce5680c5d6673051b4935bd897fea824b77dc208a"],["c40747cc9d012cb1a13b8148309c6de7ec25d6945d657146b9d5994b8feb1111","5ca560753be2a12fc6de6caf2cb489565db936156b9514e1bb5e83037e0fa2d4"],["4e42c8ec82c99798ccf3a610be870e78338c7f713348bd34c8203ef4037f3502","7571d74ee5e0fb92a7a8b33a07783341a5492144cc54bcc40a94473693606437"],["3775ab7089bc6af823aba2e1af70b236d251cadb0c86743287522a1b3b0dedea","be52d107bcfa09d8bcb9736a828cfa7fac8db17bf7a76a2c42ad961409018cf7"],["cee31cbf7e34ec379d94fb814d3d775ad954595d1314ba8846959e3e82f74e26","8fd64a14c06b589c26b947ae2bcf6bfa0149ef0be14ed4d80f448a01c43b1c6d"],["b4f9eaea09b6917619f6ea6a4eb5464efddb58fd45b1ebefcdc1a01d08b47986","39e5c9925b5a54b07433a4f18c61726f8bb131c012ca542eb24a8ac07200682a"],["d4263dfc3d2df923a0179a48966d30ce84e2515afc3dccc1b77907792ebcc60e","62dfaf07a0f78feb30e30d6295853ce189e127760ad6cf7fae164e122a208d54"],["48457524820fa65a4f8d35eb6930857c0032acc0a4a2de422233eeda897612c4","25a748ab367979d98733c38a1fa1c2e7dc6cc07db2d60a9ae7a76aaa49bd0f77"],["dfeeef1881101f2cb11644f3a2afdfc2045e19919152923f367a1767c11cceda","ecfb7056cf1de042f9420bab396793c0c390bde74b4bbdff16a83ae09a9a7517"],["6d7ef6b17543f8373c573f44e1f389835d89bcbc6062ced36c82df83b8fae859","cd450ec335438986dfefa10c57fea9bcc521a0959b2d80bbf74b190dca712d10"],["e75605d59102a5a2684500d3b991f2e3f3c88b93225547035af25af66e04541f","f5c54754a8f71ee540b9b48728473e314f729ac5308b06938360990e2bfad125"],["eb98660f4c4dfaa06a2be453d5020bc99a0c2e60abe388457dd43fefb1ed620c","6cb9a8876d9cb8520609af3add26cd20a0a7cd8a9411131ce85f44100099223e"],["13e87b027d8514d35939f2e6892b19922154596941888336dc3563e3b8dba942","fef5a3c68059a6dec5d624114bf1e91aac2b9da568d6abeb2570d55646b8adf1"],["ee163026e9fd6fe017c38f06a5be6fc125424b371ce2708e7bf4491691e5764a","1acb250f255dd61c43d94ccc670d0f58f49ae3fa15b96623e5430da0ad6c62b2"],["b268f5ef9ad51e4d78de3a750c2dc89b1e626d43505867999932e5db33af3d80","5f310d4b3c99b9ebb19f77d41c1dee018cf0d34fd4191614003e945a1216e423"],["ff07f3118a9df035e9fad85eb6c7bfe42b02f01ca99ceea3bf7ffdba93c4750d","438136d603e858a3a5c440c38eccbaddc1d2942114e2eddd4740d098ced1f0d8"],["8d8b9855c7c052a34146fd20ffb658bea4b9f69e0d825ebec16e8c3ce2b526a1","cdb559eedc2d79f926baf44fb84ea4d44bcf50fee51d7ceb30e2e7f463036758"],["52db0b5384dfbf05bfa9d472d7ae26dfe4b851ceca91b1eba54263180da32b63","c3b997d050ee5d423ebaf66a6db9f57b3180c902875679de924b69d84a7b375"],["e62f9490d3d51da6395efd24e80919cc7d0f29c3f3fa48c6fff543becbd43352","6d89ad7ba4876b0b22c2ca280c682862f342c8591f1daf5170e07bfd9ccafa7d"],["7f30ea2476b399b4957509c88f77d0191afa2ff5cb7b14fd6d8e7d65aaab1193","ca5ef7d4b231c94c3b15389a5f6311e9daff7bb67b103e9880ef4bff637acaec"],["5098ff1e1d9f14fb46a210fada6c903fef0fb7b4a1dd1d9ac60a0361800b7a00","9731141d81fc8f8084d37c6e7542006b3ee1b40d60dfe5362a5b132fd17ddc0"],["32b78c7de9ee512a72895be6b9cbefa6e2f3c4ccce445c96b9f2c81e2778ad58","ee1849f513df71e32efc3896ee28260c73bb80547ae2275ba497237794c8753c"],["e2cb74fddc8e9fbcd076eef2a7c72b0ce37d50f08269dfc074b581550547a4f7","d3aa2ed71c9dd2247a62df062736eb0baddea9e36122d2be8641abcb005cc4a4"],["8438447566d4d7bedadc299496ab357426009a35f235cb141be0d99cd10ae3a8","c4e1020916980a4da5d01ac5e6ad330734ef0d7906631c4f2390426b2edd791f"],["4162d488b89402039b584c6fc6c308870587d9c46f660b878ab65c82c711d67e","67163e903236289f776f22c25fb8a3afc1732f2b84b4e95dbda47ae5a0852649"],["3fad3fa84caf0f34f0f89bfd2dcf54fc175d767aec3e50684f3ba4a4bf5f683d","cd1bc7cb6cc407bb2f0ca647c718a730cf71872e7d0d2a53fa20efcdfe61826"],["674f2600a3007a00568c1a7ce05d0816c1fb84bf1370798f1c69532faeb1a86b","299d21f9413f33b3edf43b257004580b70db57da0b182259e09eecc69e0d38a5"],["d32f4da54ade74abb81b815ad1fb3b263d82d6c692714bcff87d29bd5ee9f08f","f9429e738b8e53b968e99016c059707782e14f4535359d582fc416910b3eea87"],["30e4e670435385556e593657135845d36fbb6931f72b08cb1ed954f1e3ce3ff6","462f9bce619898638499350113bbc9b10a878d35da70740dc695a559eb88db7b"],["be2062003c51cc3004682904330e4dee7f3dcd10b01e580bf1971b04d4cad297","62188bc49d61e5428573d48a74e1c655b1c61090905682a0d5558ed72dccb9bc"],["93144423ace3451ed29e0fb9ac2af211cb6e84a601df5993c419859fff5df04a","7c10dfb164c3425f5c71a3f9d7992038f1065224f72bb9d1d902a6d13037b47c"],["b015f8044f5fcbdcf21ca26d6c34fb8197829205c7b7d2a7cb66418c157b112c","ab8c1e086d04e813744a655b2df8d5f83b3cdc6faa3088c1d3aea1454e3a1d5f"],["d5e9e1da649d97d89e4868117a465a3a4f8a18de57a140d36b3f2af341a21b52","4cb04437f391ed73111a13cc1d4dd0db1693465c2240480d8955e8592f27447a"],["d3ae41047dd7ca065dbf8ed77b992439983005cd72e16d6f996a5316d36966bb","bd1aeb21ad22ebb22a10f0303417c6d964f8cdd7df0aca614b10dc14d125ac46"],["463e2763d885f958fc66cdd22800f0a487197d0a82e377b49f80af87c897b065","bfefacdb0e5d0fd7df3a311a94de062b26b80c61fbc97508b79992671ef7ca7f"],["7985fdfd127c0567c6f53ec1bb63ec3158e597c40bfe747c83cddfc910641917","603c12daf3d9862ef2b25fe1de289aed24ed291e0ec6708703a5bd567f32ed03"],["74a1ad6b5f76e39db2dd249410eac7f99e74c59cb83d2d0ed5ff1543da7703e9","cc6157ef18c9c63cd6193d83631bbea0093e0968942e8c33d5737fd790e0db08"],["30682a50703375f602d416664ba19b7fc9bab42c72747463a71d0896b22f6da3","553e04f6b018b4fa6c8f39e7f311d3176290d0e0f19ca73f17714d9977a22ff8"],["9e2158f0d7c0d5f26c3791efefa79597654e7a2b2464f52b1ee6c1347769ef57","712fcdd1b9053f09003a3481fa7762e9ffd7c8ef35a38509e2fbf2629008373"],["176e26989a43c9cfeba4029c202538c28172e566e3c4fce7322857f3be327d66","ed8cc9d04b29eb877d270b4878dc43c19aefd31f4eee09ee7b47834c1fa4b1c3"],["75d46efea3771e6e68abb89a13ad747ecf1892393dfc4f1b7004788c50374da8","9852390a99507679fd0b86fd2b39a868d7efc22151346e1a3ca4726586a6bed8"],["809a20c67d64900ffb698c4c825f6d5f2310fb0451c869345b7319f645605721","9e994980d9917e22b76b061927fa04143d096ccc54963e6a5ebfa5f3f8e286c1"],["1b38903a43f7f114ed4500b4eac7083fdefece1cf29c63528d563446f972c180","4036edc931a60ae889353f77fd53de4a2708b26b6f5da72ad3394119daf408f9"]]}}},47011:(e,t,n)=>{"use strict";var r=t,i=n(39404),o=n(43349),s=n(64367);r.assert=o,r.toArray=s.toArray,r.zero2=s.zero2,r.toHex=s.toHex,r.encode=s.encode,r.getNAF=function(e,t,n){var r,i=new Array(Math.max(e.bitLength(),n)+1);for(r=0;r<i.length;r+=1)i[r]=0;var o=1<<t+1,s=e.clone();for(r=0;r<i.length;r++){var a,c=s.andln(o-1);s.isOdd()?(a=c>(o>>1)-1?(o>>1)-c:c,s.isubn(a)):a=0,i[r]=a,s.iushrn(1)}return i},r.getJSF=function(e,t){var n=[[],[]];e=e.clone(),t=t.clone();for(var r,i=0,o=0;e.cmpn(-i)>0||t.cmpn(-o)>0;){var s,a,c=e.andln(3)+i&3,l=t.andln(3)+o&3;3===c&&(c=-1),3===l&&(l=-1),s=1&c?3!==(r=e.andln(7)+i&7)&&5!==r||2!==l?c:-c:0,n[0].push(s),a=1&l?3!==(r=t.andln(7)+o&7)&&5!==r||2!==c?l:-l:0,n[1].push(a),2*i===s+1&&(i=1-i),2*o===a+1&&(o=1-o),e.iushrn(1),t.iushrn(1)}return n},r.cachedProperty=function(e,t,n){var r="_"+t;e.prototype[t]=function(){return void 0!==this[r]?this[r]:this[r]=n.call(this)}},r.parseBytes=function(e){return"string"==typeof e?r.toArray(e,"hex"):e},r.intFromLE=function(e){return new i(e,"hex","le")}},37007:(e,t,n)=>{"use strict";var r,i=n(96763),o="object"==typeof Reflect?Reflect:null,s=o&&"function"==typeof o.apply?o.apply:function(e,t,n){return Function.prototype.apply.call(e,t,n)};r=o&&"function"==typeof o.ownKeys?o.ownKeys:Object.getOwnPropertySymbols?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:function(e){return Object.getOwnPropertyNames(e)};var a=Number.isNaN||function(e){return e!=e};function c(){c.init.call(this)}e.exports=c,e.exports.once=function(e,t){return new Promise((function(n,r){function i(n){e.removeListener(t,o),r(n)}function o(){"function"==typeof e.removeListener&&e.removeListener("error",i),n([].slice.call(arguments))}y(e,t,o,{once:!0}),"error"!==t&&function(e,t,n){"function"==typeof e.on&&y(e,"error",t,n)}(e,i,{once:!0})}))},c.EventEmitter=c,c.prototype._events=void 0,c.prototype._eventsCount=0,c.prototype._maxListeners=void 0;var l=10;function u(e){if("function"!=typeof e)throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}function d(e){return void 0===e._maxListeners?c.defaultMaxListeners:e._maxListeners}function _(e,t,n,r){var o,s,a,c;if(u(n),void 0===(s=e._events)?(s=e._events=Object.create(null),e._eventsCount=0):(void 0!==s.newListener&&(e.emit("newListener",t,n.listener?n.listener:n),s=e._events),a=s[t]),void 0===a)a=s[t]=n,++e._eventsCount;else if("function"==typeof a?a=s[t]=r?[n,a]:[a,n]:r?a.unshift(n):a.push(n),(o=d(e))>0&&a.length>o&&!a.warned){a.warned=!0;var l=new Error("Possible EventEmitter memory leak detected. "+a.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");l.name="MaxListenersExceededWarning",l.emitter=e,l.type=t,l.count=a.length,c=l,i&&i.warn&&i.warn(c)}return e}function p(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function f(e,t,n){var r={fired:!1,wrapFn:void 0,target:e,type:t,listener:n},i=p.bind(r);return i.listener=n,r.wrapFn=i,i}function m(e,t,n){var r=e._events;if(void 0===r)return[];var i=r[t];return void 0===i?[]:"function"==typeof i?n?[i.listener||i]:[i]:n?function(e){for(var t=new Array(e.length),n=0;n<t.length;++n)t[n]=e[n].listener||e[n];return t}(i):g(i,i.length)}function h(e){var t=this._events;if(void 0!==t){var n=t[e];if("function"==typeof n)return 1;if(void 0!==n)return n.length}return 0}function g(e,t){for(var n=new Array(t),r=0;r<t;++r)n[r]=e[r];return n}function y(e,t,n,r){if("function"==typeof e.on)r.once?e.once(t,n):e.on(t,n);else{if("function"!=typeof e.addEventListener)throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type '+typeof e);e.addEventListener(t,(function i(o){r.once&&e.removeEventListener(t,i),n(o)}))}}Object.defineProperty(c,"defaultMaxListeners",{enumerable:!0,get:function(){return l},set:function(e){if("number"!=typeof e||e<0||a(e))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+e+".");l=e}}),c.init=function(){void 0!==this._events&&this._events!==Object.getPrototypeOf(this)._events||(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0},c.prototype.setMaxListeners=function(e){if("number"!=typeof e||e<0||a(e))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+e+".");return this._maxListeners=e,this},c.prototype.getMaxListeners=function(){return d(this)},c.prototype.emit=function(e){for(var t=[],n=1;n<arguments.length;n++)t.push(arguments[n]);var r="error"===e,i=this._events;if(void 0!==i)r=r&&void 0===i.error;else if(!r)return!1;if(r){var o;if(t.length>0&&(o=t[0]),o instanceof Error)throw o;var a=new Error("Unhandled error."+(o?" ("+o.message+")":""));throw a.context=o,a}var c=i[e];if(void 0===c)return!1;if("function"==typeof c)s(c,this,t);else{var l=c.length,u=g(c,l);for(n=0;n<l;++n)s(u[n],this,t)}return!0},c.prototype.addListener=function(e,t){return _(this,e,t,!1)},c.prototype.on=c.prototype.addListener,c.prototype.prependListener=function(e,t){return _(this,e,t,!0)},c.prototype.once=function(e,t){return u(t),this.on(e,f(this,e,t)),this},c.prototype.prependOnceListener=function(e,t){return u(t),this.prependListener(e,f(this,e,t)),this},c.prototype.removeListener=function(e,t){var n,r,i,o,s;if(u(t),void 0===(r=this._events))return this;if(void 0===(n=r[e]))return this;if(n===t||n.listener===t)0==--this._eventsCount?this._events=Object.create(null):(delete r[e],r.removeListener&&this.emit("removeListener",e,n.listener||t));else if("function"!=typeof n){for(i=-1,o=n.length-1;o>=0;o--)if(n[o]===t||n[o].listener===t){s=n[o].listener,i=o;break}if(i<0)return this;0===i?n.shift():function(e,t){for(;t+1<e.length;t++)e[t]=e[t+1];e.pop()}(n,i),1===n.length&&(r[e]=n[0]),void 0!==r.removeListener&&this.emit("removeListener",e,s||t)}return this},c.prototype.off=c.prototype.removeListener,c.prototype.removeAllListeners=function(e){var t,n,r;if(void 0===(n=this._events))return this;if(void 0===n.removeListener)return 0===arguments.length?(this._events=Object.create(null),this._eventsCount=0):void 0!==n[e]&&(0==--this._eventsCount?this._events=Object.create(null):delete n[e]),this;if(0===arguments.length){var i,o=Object.keys(n);for(r=0;r<o.length;++r)"removeListener"!==(i=o[r])&&this.removeAllListeners(i);return this.removeAllListeners("removeListener"),this._events=Object.create(null),this._eventsCount=0,this}if("function"==typeof(t=n[e]))this.removeListener(e,t);else if(void 0!==t)for(r=t.length-1;r>=0;r--)this.removeListener(e,t[r]);return this},c.prototype.listeners=function(e){return m(this,e,!0)},c.prototype.rawListeners=function(e){return m(this,e,!1)},c.listenerCount=function(e,t){return"function"==typeof e.listenerCount?e.listenerCount(t):h.call(e,t)},c.prototype.listenerCount=h,c.prototype.eventNames=function(){return this._eventsCount>0?r(this._events):[]}},72492:e=>{"use strict";e.exports=function(e,t){t||(t={}),"function"==typeof t&&(t={cmp:t});var n,r="boolean"==typeof t.cycles&&t.cycles,i=t.cmp&&(n=t.cmp,function(e){return function(t,r){var i={key:t,value:e[t]},o={key:r,value:e[r]};return n(i,o)}}),o=[];return function e(t){if(t&&t.toJSON&&"function"==typeof t.toJSON&&(t=t.toJSON()),void 0!==t){if("number"==typeof t)return isFinite(t)?""+t:"null";if("object"!=typeof t)return JSON.stringify(t);var n,s;if(Array.isArray(t)){for(s="[",n=0;n<t.length;n++)n&&(s+=","),s+=e(t[n])||"null";return s+"]"}if(null===t)return"null";if(-1!==o.indexOf(t)){if(r)return JSON.stringify("__cycle__");throw new TypeError("Converting circular structure to JSON")}var a=o.push(t)-1,c=Object.keys(t).sort(i&&i(t));for(s="",n=0;n<c.length;n++){var l=c[n],u=e(t[l]);u&&(s&&(s+=","),s+=JSON.stringify(l)+":"+u)}return o.splice(a,1),"{"+s+"}"}}(e)}},4729:(e,t,n)=>{"use strict";var r=n(92861).Buffer,i=n(28399).Transform;function o(e){i.call(this),this._block=r.allocUnsafe(e),this._blockSize=e,this._blockOffset=0,this._length=[0,0,0,0],this._finalized=!1}n(56698)(o,i),o.prototype._transform=function(e,t,n){var r=null;try{this.update(e,t)}catch(i){r=i}n(r)},o.prototype._flush=function(e){var t=null;try{this.push(this.digest())}catch(n){t=n}e(t)},o.prototype.update=function(e,t){if(function(e,t){if(!r.isBuffer(e)&&"string"!=typeof e)throw new TypeError(t+" must be a string or a buffer")}(e,"Data"),this._finalized)throw new Error("Digest already called");r.isBuffer(e)||(e=r.from(e,t));for(var n=this._block,i=0;this._blockOffset+e.length-i>=this._blockSize;){for(var o=this._blockOffset;o<this._blockSize;)n[o++]=e[i++];this._update(),this._blockOffset=0}for(;i<e.length;)n[this._blockOffset++]=e[i++];for(var s=0,a=8*e.length;a>0;++s)this._length[s]+=a,(a=this._length[s]/4294967296|0)>0&&(this._length[s]-=4294967296*a);return this},o.prototype._update=function(){throw new Error("_update is not implemented")},o.prototype.digest=function(e){if(this._finalized)throw new Error("Digest already called");this._finalized=!0;var t=this._digest();void 0!==e&&(t=t.toString(e)),this._block.fill(0),this._blockOffset=0;for(var n=0;n<4;++n)this._length[n]=0;return t},o.prototype._digest=function(){throw new Error("_digest is not implemented")},e.exports=o},77952:(e,t,n)=>{var r=t;r.utils=n(67426),r.common=n(66166),r.sha=n(46229),r.ripemd=n(46784),r.hmac=n(28948),r.sha1=r.sha.sha1,r.sha256=r.sha.sha256,r.sha224=r.sha.sha224,r.sha384=r.sha.sha384,r.sha512=r.sha.sha512,r.ripemd160=r.ripemd.ripemd160},66166:(e,t,n)=>{"use strict";var r=n(67426),i=n(43349);function o(){this.pending=null,this.pendingTotal=0,this.blockSize=this.constructor.blockSize,this.outSize=this.constructor.outSize,this.hmacStrength=this.constructor.hmacStrength,this.padLength=this.constructor.padLength/8,this.endian="big",this._delta8=this.blockSize/8,this._delta32=this.blockSize/32}t.BlockHash=o,o.prototype.update=function(e,t){if(e=r.toArray(e,t),this.pending?this.pending=this.pending.concat(e):this.pending=e,this.pendingTotal+=e.length,this.pending.length>=this._delta8){var n=(e=this.pending).length%this._delta8;this.pending=e.slice(e.length-n,e.length),0===this.pending.length&&(this.pending=null),e=r.join32(e,0,e.length-n,this.endian);for(var i=0;i<e.length;i+=this._delta32)this._update(e,i,i+this._delta32)}return this},o.prototype.digest=function(e){return this.update(this._pad()),i(null===this.pending),this._digest(e)},o.prototype._pad=function(){var e=this.pendingTotal,t=this._delta8,n=t-(e+this.padLength)%t,r=new Array(n+this.padLength);r[0]=128;for(var i=1;i<n;i++)r[i]=0;if(e<<=3,"big"===this.endian){for(var o=8;o<this.padLength;o++)r[i++]=0;r[i++]=0,r[i++]=0,r[i++]=0,r[i++]=0,r[i++]=e>>>24&255,r[i++]=e>>>16&255,r[i++]=e>>>8&255,r[i++]=255&e}else for(r[i++]=255&e,r[i++]=e>>>8&255,r[i++]=e>>>16&255,r[i++]=e>>>24&255,r[i++]=0,r[i++]=0,r[i++]=0,r[i++]=0,o=8;o<this.padLength;o++)r[i++]=0;return r}},28948:(e,t,n)=>{"use strict";var r=n(67426),i=n(43349);function o(e,t,n){if(!(this instanceof o))return new o(e,t,n);this.Hash=e,this.blockSize=e.blockSize/8,this.outSize=e.outSize/8,this.inner=null,this.outer=null,this._init(r.toArray(t,n))}e.exports=o,o.prototype._init=function(e){e.length>this.blockSize&&(e=(new this.Hash).update(e).digest()),i(e.length<=this.blockSize);for(var t=e.length;t<this.blockSize;t++)e.push(0);for(t=0;t<e.length;t++)e[t]^=54;for(this.inner=(new this.Hash).update(e),t=0;t<e.length;t++)e[t]^=106;this.outer=(new this.Hash).update(e)},o.prototype.update=function(e,t){return this.inner.update(e,t),this},o.prototype.digest=function(e){return this.outer.update(this.inner.digest()),this.outer.digest(e)}},46784:(e,t,n)=>{"use strict";var r=n(67426),i=n(66166),o=r.rotl32,s=r.sum32,a=r.sum32_3,c=r.sum32_4,l=i.BlockHash;function u(){if(!(this instanceof u))return new u;l.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.endian="little"}function d(e,t,n,r){return e<=15?t^n^r:e<=31?t&n|~t&r:e<=47?(t|~n)^r:e<=63?t&r|n&~r:t^(n|~r)}function _(e){return e<=15?0:e<=31?1518500249:e<=47?1859775393:e<=63?2400959708:2840853838}function p(e){return e<=15?1352829926:e<=31?1548603684:e<=47?1836072691:e<=63?2053994217:0}r.inherits(u,l),t.ripemd160=u,u.blockSize=512,u.outSize=160,u.hmacStrength=192,u.padLength=64,u.prototype._update=function(e,t){for(var n=this.h[0],r=this.h[1],i=this.h[2],l=this.h[3],u=this.h[4],y=n,v=r,b=i,x=l,S=u,T=0;T<80;T++){var w=s(o(c(n,d(T,r,i,l),e[f[T]+t],_(T)),h[T]),u);n=u,u=l,l=o(i,10),i=r,r=w,w=s(o(c(y,d(79-T,v,b,x),e[m[T]+t],p(T)),g[T]),S),y=S,S=x,x=o(b,10),b=v,v=w}w=a(this.h[1],i,x),this.h[1]=a(this.h[2],l,S),this.h[2]=a(this.h[3],u,y),this.h[3]=a(this.h[4],n,v),this.h[4]=a(this.h[0],r,b),this.h[0]=w},u.prototype._digest=function(e){return"hex"===e?r.toHex32(this.h,"little"):r.split32(this.h,"little")};var f=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13],m=[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11],h=[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6],g=[8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11]},46229:(e,t,n)=>{"use strict";t.sha1=n(43917),t.sha224=n(47714),t.sha256=n(2287),t.sha384=n(21911),t.sha512=n(57766)},43917:(e,t,n)=>{"use strict";var r=n(67426),i=n(66166),o=n(66225),s=r.rotl32,a=r.sum32,c=r.sum32_5,l=o.ft_1,u=i.BlockHash,d=[1518500249,1859775393,2400959708,3395469782];function _(){if(!(this instanceof _))return new _;u.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.W=new Array(80)}r.inherits(_,u),e.exports=_,_.blockSize=512,_.outSize=160,_.hmacStrength=80,_.padLength=64,_.prototype._update=function(e,t){for(var n=this.W,r=0;r<16;r++)n[r]=e[t+r];for(;r<n.length;r++)n[r]=s(n[r-3]^n[r-8]^n[r-14]^n[r-16],1);var i=this.h[0],o=this.h[1],u=this.h[2],_=this.h[3],p=this.h[4];for(r=0;r<n.length;r++){var f=~~(r/20),m=c(s(i,5),l(f,o,u,_),p,n[r],d[f]);p=_,_=u,u=s(o,30),o=i,i=m}this.h[0]=a(this.h[0],i),this.h[1]=a(this.h[1],o),this.h[2]=a(this.h[2],u),this.h[3]=a(this.h[3],_),this.h[4]=a(this.h[4],p)},_.prototype._digest=function(e){return"hex"===e?r.toHex32(this.h,"big"):r.split32(this.h,"big")}},47714:(e,t,n)=>{"use strict";var r=n(67426),i=n(2287);function o(){if(!(this instanceof o))return new o;i.call(this),this.h=[3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428]}r.inherits(o,i),e.exports=o,o.blockSize=512,o.outSize=224,o.hmacStrength=192,o.padLength=64,o.prototype._digest=function(e){return"hex"===e?r.toHex32(this.h.slice(0,7),"big"):r.split32(this.h.slice(0,7),"big")}},2287:(e,t,n)=>{"use strict";var r=n(67426),i=n(66166),o=n(66225),s=n(43349),a=r.sum32,c=r.sum32_4,l=r.sum32_5,u=o.ch32,d=o.maj32,_=o.s0_256,p=o.s1_256,f=o.g0_256,m=o.g1_256,h=i.BlockHash,g=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298];function y(){if(!(this instanceof y))return new y;h.call(this),this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.k=g,this.W=new Array(64)}r.inherits(y,h),e.exports=y,y.blockSize=512,y.outSize=256,y.hmacStrength=192,y.padLength=64,y.prototype._update=function(e,t){for(var n=this.W,r=0;r<16;r++)n[r]=e[t+r];for(;r<n.length;r++)n[r]=c(m(n[r-2]),n[r-7],f(n[r-15]),n[r-16]);var i=this.h[0],o=this.h[1],h=this.h[2],g=this.h[3],y=this.h[4],v=this.h[5],b=this.h[6],x=this.h[7];for(s(this.k.length===n.length),r=0;r<n.length;r++){var S=l(x,p(y),u(y,v,b),this.k[r],n[r]),T=a(_(i),d(i,o,h));x=b,b=v,v=y,y=a(g,S),g=h,h=o,o=i,i=a(S,T)}this.h[0]=a(this.h[0],i),this.h[1]=a(this.h[1],o),this.h[2]=a(this.h[2],h),this.h[3]=a(this.h[3],g),this.h[4]=a(this.h[4],y),this.h[5]=a(this.h[5],v),this.h[6]=a(this.h[6],b),this.h[7]=a(this.h[7],x)},y.prototype._digest=function(e){return"hex"===e?r.toHex32(this.h,"big"):r.split32(this.h,"big")}},21911:(e,t,n)=>{"use strict";var r=n(67426),i=n(57766);function o(){if(!(this instanceof o))return new o;i.call(this),this.h=[3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]}r.inherits(o,i),e.exports=o,o.blockSize=1024,o.outSize=384,o.hmacStrength=192,o.padLength=128,o.prototype._digest=function(e){return"hex"===e?r.toHex32(this.h.slice(0,12),"big"):r.split32(this.h.slice(0,12),"big")}},57766:(e,t,n)=>{"use strict";var r=n(67426),i=n(66166),o=n(43349),s=r.rotr64_hi,a=r.rotr64_lo,c=r.shr64_hi,l=r.shr64_lo,u=r.sum64,d=r.sum64_hi,_=r.sum64_lo,p=r.sum64_4_hi,f=r.sum64_4_lo,m=r.sum64_5_hi,h=r.sum64_5_lo,g=i.BlockHash,y=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591];function v(){if(!(this instanceof v))return new v;g.call(this),this.h=[1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209],this.k=y,this.W=new Array(160)}function b(e,t,n,r,i){var o=e&n^~e&i;return o<0&&(o+=4294967296),o}function x(e,t,n,r,i,o){var s=t&r^~t&o;return s<0&&(s+=4294967296),s}function S(e,t,n,r,i){var o=e&n^e&i^n&i;return o<0&&(o+=4294967296),o}function T(e,t,n,r,i,o){var s=t&r^t&o^r&o;return s<0&&(s+=4294967296),s}function w(e,t){var n=s(e,t,28)^s(t,e,2)^s(t,e,7);return n<0&&(n+=4294967296),n}function k(e,t){var n=a(e,t,28)^a(t,e,2)^a(t,e,7);return n<0&&(n+=4294967296),n}function E(e,t){var n=s(e,t,14)^s(e,t,18)^s(t,e,9);return n<0&&(n+=4294967296),n}function C(e,t){var n=a(e,t,14)^a(e,t,18)^a(t,e,9);return n<0&&(n+=4294967296),n}function N(e,t){var n=s(e,t,1)^s(e,t,8)^c(e,t,7);return n<0&&(n+=4294967296),n}function A(e,t){var n=a(e,t,1)^a(e,t,8)^l(e,t,7);return n<0&&(n+=4294967296),n}function I(e,t){var n=s(e,t,19)^s(t,e,29)^c(e,t,6);return n<0&&(n+=4294967296),n}function D(e,t){var n=a(e,t,19)^a(t,e,29)^l(e,t,6);return n<0&&(n+=4294967296),n}r.inherits(v,g),e.exports=v,v.blockSize=1024,v.outSize=512,v.hmacStrength=192,v.padLength=128,v.prototype._prepareBlock=function(e,t){for(var n=this.W,r=0;r<32;r++)n[r]=e[t+r];for(;r<n.length;r+=2){var i=I(n[r-4],n[r-3]),o=D(n[r-4],n[r-3]),s=n[r-14],a=n[r-13],c=N(n[r-30],n[r-29]),l=A(n[r-30],n[r-29]),u=n[r-32],d=n[r-31];n[r]=p(i,o,s,a,c,l,u,d),n[r+1]=f(i,o,s,a,c,l,u,d)}},v.prototype._update=function(e,t){this._prepareBlock(e,t);var n=this.W,r=this.h[0],i=this.h[1],s=this.h[2],a=this.h[3],c=this.h[4],l=this.h[5],p=this.h[6],f=this.h[7],g=this.h[8],y=this.h[9],v=this.h[10],N=this.h[11],A=this.h[12],I=this.h[13],D=this.h[14],P=this.h[15];o(this.k.length===n.length);for(var M=0;M<n.length;M+=2){var O=D,F=P,R=E(g,y),L=C(g,y),j=b(g,y,v,N,A),z=x(g,y,v,N,A,I),U=this.k[M],B=this.k[M+1],q=n[M],V=n[M+1],K=m(O,F,R,L,j,z,U,B,q,V),J=h(O,F,R,L,j,z,U,B,q,V);O=w(r,i),F=k(r,i),R=S(r,i,s,a,c),L=T(r,i,s,a,c,l);var W=d(O,F,R,L),H=_(O,F,R,L);D=A,P=I,A=v,I=N,v=g,N=y,g=d(p,f,K,J),y=_(f,f,K,J),p=c,f=l,c=s,l=a,s=r,a=i,r=d(K,J,W,H),i=_(K,J,W,H)}u(this.h,0,r,i),u(this.h,2,s,a),u(this.h,4,c,l),u(this.h,6,p,f),u(this.h,8,g,y),u(this.h,10,v,N),u(this.h,12,A,I),u(this.h,14,D,P)},v.prototype._digest=function(e){return"hex"===e?r.toHex32(this.h,"big"):r.split32(this.h,"big")}},66225:(e,t,n)=>{"use strict";var r=n(67426).rotr32;function i(e,t,n){return e&t^~e&n}function o(e,t,n){return e&t^e&n^t&n}function s(e,t,n){return e^t^n}t.ft_1=function(e,t,n,r){return 0===e?i(t,n,r):1===e||3===e?s(t,n,r):2===e?o(t,n,r):void 0},t.ch32=i,t.maj32=o,t.p32=s,t.s0_256=function(e){return r(e,2)^r(e,13)^r(e,22)},t.s1_256=function(e){return r(e,6)^r(e,11)^r(e,25)},t.g0_256=function(e){return r(e,7)^r(e,18)^e>>>3},t.g1_256=function(e){return r(e,17)^r(e,19)^e>>>10}},67426:(e,t,n)=>{"use strict";var r=n(43349),i=n(56698);function o(e,t){return 55296==(64512&e.charCodeAt(t))&&(!(t<0||t+1>=e.length)&&56320==(64512&e.charCodeAt(t+1)))}function s(e){return(e>>>24|e>>>8&65280|e<<8&16711680|(255&e)<<24)>>>0}function a(e){return 1===e.length?"0"+e:e}function c(e){return 7===e.length?"0"+e:6===e.length?"00"+e:5===e.length?"000"+e:4===e.length?"0000"+e:3===e.length?"00000"+e:2===e.length?"000000"+e:1===e.length?"0000000"+e:e}t.inherits=i,t.toArray=function(e,t){if(Array.isArray(e))return e.slice();if(!e)return[];var n=[];if("string"==typeof e)if(t){if("hex"===t)for((e=e.replace(/[^a-z0-9]+/gi,"")).length%2!=0&&(e="0"+e),i=0;i<e.length;i+=2)n.push(parseInt(e[i]+e[i+1],16))}else for(var r=0,i=0;i<e.length;i++){var s=e.charCodeAt(i);s<128?n[r++]=s:s<2048?(n[r++]=s>>6|192,n[r++]=63&s|128):o(e,i)?(s=65536+((1023&s)<<10)+(1023&e.charCodeAt(++i)),n[r++]=s>>18|240,n[r++]=s>>12&63|128,n[r++]=s>>6&63|128,n[r++]=63&s|128):(n[r++]=s>>12|224,n[r++]=s>>6&63|128,n[r++]=63&s|128)}else for(i=0;i<e.length;i++)n[i]=0|e[i];return n},t.toHex=function(e){for(var t="",n=0;n<e.length;n++)t+=a(e[n].toString(16));return t},t.htonl=s,t.toHex32=function(e,t){for(var n="",r=0;r<e.length;r++){var i=e[r];"little"===t&&(i=s(i)),n+=c(i.toString(16))}return n},t.zero2=a,t.zero8=c,t.join32=function(e,t,n,i){var o=n-t;r(o%4==0);for(var s=new Array(o/4),a=0,c=t;a<s.length;a++,c+=4){var l;l="big"===i?e[c]<<24|e[c+1]<<16|e[c+2]<<8|e[c+3]:e[c+3]<<24|e[c+2]<<16|e[c+1]<<8|e[c],s[a]=l>>>0}return s},t.split32=function(e,t){for(var n=new Array(4*e.length),r=0,i=0;r<e.length;r++,i+=4){var o=e[r];"big"===t?(n[i]=o>>>24,n[i+1]=o>>>16&255,n[i+2]=o>>>8&255,n[i+3]=255&o):(n[i+3]=o>>>24,n[i+2]=o>>>16&255,n[i+1]=o>>>8&255,n[i]=255&o)}return n},t.rotr32=function(e,t){return e>>>t|e<<32-t},t.rotl32=function(e,t){return e<<t|e>>>32-t},t.sum32=function(e,t){return e+t>>>0},t.sum32_3=function(e,t,n){return e+t+n>>>0},t.sum32_4=function(e,t,n,r){return e+t+n+r>>>0},t.sum32_5=function(e,t,n,r,i){return e+t+n+r+i>>>0},t.sum64=function(e,t,n,r){var i=e[t],o=r+e[t+1]>>>0,s=(o<r?1:0)+n+i;e[t]=s>>>0,e[t+1]=o},t.sum64_hi=function(e,t,n,r){return(t+r>>>0<t?1:0)+e+n>>>0},t.sum64_lo=function(e,t,n,r){return t+r>>>0},t.sum64_4_hi=function(e,t,n,r,i,o,s,a){var c=0,l=t;return c+=(l=l+r>>>0)<t?1:0,c+=(l=l+o>>>0)<o?1:0,e+n+i+s+(c+=(l=l+a>>>0)<a?1:0)>>>0},t.sum64_4_lo=function(e,t,n,r,i,o,s,a){return t+r+o+a>>>0},t.sum64_5_hi=function(e,t,n,r,i,o,s,a,c,l){var u=0,d=t;return u+=(d=d+r>>>0)<t?1:0,u+=(d=d+o>>>0)<o?1:0,u+=(d=d+a>>>0)<a?1:0,e+n+i+s+c+(u+=(d=d+l>>>0)<l?1:0)>>>0},t.sum64_5_lo=function(e,t,n,r,i,o,s,a,c,l){return t+r+o+a+l>>>0},t.rotr64_hi=function(e,t,n){return(t<<32-n|e>>>n)>>>0},t.rotr64_lo=function(e,t,n){return(e<<32-n|t>>>n)>>>0},t.shr64_hi=function(e,t,n){return e>>>n},t.shr64_lo=function(e,t,n){return(e<<32-n|t>>>n)>>>0}},32723:(e,t,n)=>{"use strict";var r=n(77952),i=n(64367),o=n(43349);function s(e){if(!(this instanceof s))return new s(e);this.hash=e.hash,this.predResist=!!e.predResist,this.outLen=this.hash.outSize,this.minEntropy=e.minEntropy||this.hash.hmacStrength,this._reseed=null,this.reseedInterval=null,this.K=null,this.V=null;var t=i.toArray(e.entropy,e.entropyEnc||"hex"),n=i.toArray(e.nonce,e.nonceEnc||"hex"),r=i.toArray(e.pers,e.persEnc||"hex");o(t.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._init(t,n,r)}e.exports=s,s.prototype._init=function(e,t,n){var r=e.concat(t).concat(n);this.K=new Array(this.outLen/8),this.V=new Array(this.outLen/8);for(var i=0;i<this.V.length;i++)this.K[i]=0,this.V[i]=1;this._update(r),this._reseed=1,this.reseedInterval=281474976710656},s.prototype._hmac=function(){return new r.hmac(this.hash,this.K)},s.prototype._update=function(e){var t=this._hmac().update(this.V).update([0]);e&&(t=t.update(e)),this.K=t.digest(),this.V=this._hmac().update(this.V).digest(),e&&(this.K=this._hmac().update(this.V).update([1]).update(e).digest(),this.V=this._hmac().update(this.V).digest())},s.prototype.reseed=function(e,t,n,r){"string"!=typeof t&&(r=n,n=t,t=null),e=i.toArray(e,t),n=i.toArray(n,r),o(e.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._update(e.concat(n||[])),this._reseed=1},s.prototype.generate=function(e,t,n,r){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");"string"!=typeof t&&(r=n,n=t,t=null),n&&(n=i.toArray(n,r||"hex"),this._update(n));for(var o=[];o.length<e;)this.V=this._hmac().update(this.V).digest(),o=o.concat(this.V);var s=o.slice(0,e);return this._update(n),this._reseed++,i.encode(s,t)}},251:(e,t)=>{t.read=function(e,t,n,r,i){var o,s,a=8*i-r-1,c=(1<<a)-1,l=c>>1,u=-7,d=n?i-1:0,_=n?-1:1,p=e[t+d];for(d+=_,o=p&(1<<-u)-1,p>>=-u,u+=a;u>0;o=256*o+e[t+d],d+=_,u-=8);for(s=o&(1<<-u)-1,o>>=-u,u+=r;u>0;s=256*s+e[t+d],d+=_,u-=8);if(0===o)o=1-l;else{if(o===c)return s?NaN:1/0*(p?-1:1);s+=Math.pow(2,r),o-=l}return(p?-1:1)*s*Math.pow(2,o-r)},t.write=function(e,t,n,r,i,o){var s,a,c,l=8*o-i-1,u=(1<<l)-1,d=u>>1,_=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,p=r?0:o-1,f=r?1:-1,m=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(a=isNaN(t)?1:0,s=u):(s=Math.floor(Math.log(t)/Math.LN2),t*(c=Math.pow(2,-s))<1&&(s--,c*=2),(t+=s+d>=1?_/c:_*Math.pow(2,1-d))*c>=2&&(s++,c/=2),s+d>=u?(a=0,s=u):s+d>=1?(a=(t*c-1)*Math.pow(2,i),s+=d):(a=t*Math.pow(2,d-1)*Math.pow(2,i),s=0));i>=8;e[n+p]=255&a,p+=f,a/=256,i-=8);for(s=s<<i|a,l+=i;l>0;e[n+p]=255&s,p+=f,s/=256,l-=8);e[n+p-f]|=128*m}},50916:(e,t,n)=>{e.exports=self.fetch||(self.fetch=n(76782).default||n(76782))},8142:(e,t,n)=>{e=n.nmd(e);var r="__lodash_hash_undefined__",i=1,o=2,s=9007199254740991,a="[object Arguments]",c="[object Array]",l="[object AsyncFunction]",u="[object Boolean]",d="[object Date]",_="[object Error]",p="[object Function]",f="[object GeneratorFunction]",m="[object Map]",h="[object Number]",g="[object Null]",y="[object Object]",v="[object Promise]",b="[object Proxy]",x="[object RegExp]",S="[object Set]",T="[object String]",w="[object Symbol]",k="[object Undefined]",E="[object WeakMap]",C="[object ArrayBuffer]",N="[object DataView]",A=/^\[object .+?Constructor\]$/,I=/^(?:0|[1-9]\d*)$/,D={};D["[object Float32Array]"]=D["[object Float64Array]"]=D["[object Int8Array]"]=D["[object Int16Array]"]=D["[object Int32Array]"]=D["[object Uint8Array]"]=D["[object Uint8ClampedArray]"]=D["[object Uint16Array]"]=D["[object Uint32Array]"]=!0,D[a]=D[c]=D[C]=D[u]=D[N]=D[d]=D[_]=D[p]=D[m]=D[h]=D[y]=D[x]=D[S]=D[T]=D[E]=!1;var P="object"==typeof n.g&&n.g&&n.g.Object===Object&&n.g,M="object"==typeof self&&self&&self.Object===Object&&self,O=P||M||Function("return this")(),F=t&&!t.nodeType&&t,R=F&&e&&!e.nodeType&&e,L=R&&R.exports===F,j=L&&P.process,z=function(){try{return j&&j.binding&&j.binding("util")}catch(e){}}(),U=z&&z.isTypedArray;function B(e,t){for(var n=-1,r=null==e?0:e.length;++n<r;)if(t(e[n],n,e))return!0;return!1}function q(e){var t=-1,n=Array(e.size);return e.forEach((function(e,r){n[++t]=[r,e]})),n}function V(e){var t=-1,n=Array(e.size);return e.forEach((function(e){n[++t]=e})),n}var K,J,W,H=Array.prototype,G=Function.prototype,Q=Object.prototype,Y=O["__core-js_shared__"],Z=G.toString,X=Q.hasOwnProperty,$=(K=/[^.]+$/.exec(Y&&Y.keys&&Y.keys.IE_PROTO||""))?"Symbol(src)_1."+K:"",ee=Q.toString,te=RegExp("^"+Z.call(X).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),ne=L?O.Buffer:void 0,re=O.Symbol,ie=O.Uint8Array,oe=Q.propertyIsEnumerable,se=H.splice,ae=re?re.toStringTag:void 0,ce=Object.getOwnPropertySymbols,le=ne?ne.isBuffer:void 0,ue=(J=Object.keys,W=Object,function(e){return J(W(e))}),de=ze(O,"DataView"),_e=ze(O,"Map"),pe=ze(O,"Promise"),fe=ze(O,"Set"),me=ze(O,"WeakMap"),he=ze(Object,"create"),ge=Ve(de),ye=Ve(_e),ve=Ve(pe),be=Ve(fe),xe=Ve(me),Se=re?re.prototype:void 0,Te=Se?Se.valueOf:void 0;function we(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function ke(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function Ee(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function Ce(e){var t=-1,n=null==e?0:e.length;for(this.__data__=new Ee;++t<n;)this.add(e[t])}function Ne(e){var t=this.__data__=new ke(e);this.size=t.size}function Ae(e,t){var n=We(e),r=!n&&Je(e),i=!n&&!r&&He(e),o=!n&&!r&&!i&&Xe(e),s=n||r||i||o,a=s?function(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}(e.length,String):[],c=a.length;for(var l in e)!t&&!X.call(e,l)||s&&("length"==l||i&&("offset"==l||"parent"==l)||o&&("buffer"==l||"byteLength"==l||"byteOffset"==l)||qe(l,c))||a.push(l);return a}function Ie(e,t){for(var n=e.length;n--;)if(Ke(e[n][0],t))return n;return-1}function De(e){return null==e?void 0===e?k:g:ae&&ae in Object(e)?function(e){var t=X.call(e,ae),n=e[ae];try{e[ae]=void 0;var r=!0}catch(o){}var i=ee.call(e);r&&(t?e[ae]=n:delete e[ae]);return i}(e):function(e){return ee.call(e)}(e)}function Pe(e){return Ze(e)&&De(e)==a}function Me(e,t,n,r,s){return e===t||(null==e||null==t||!Ze(e)&&!Ze(t)?e!=e&&t!=t:function(e,t,n,r,s,l){var p=We(e),f=We(t),g=p?c:Be(e),v=f?c:Be(t),b=(g=g==a?y:g)==y,k=(v=v==a?y:v)==y,E=g==v;if(E&&He(e)){if(!He(t))return!1;p=!0,b=!1}if(E&&!b)return l||(l=new Ne),p||Xe(e)?Re(e,t,n,r,s,l):function(e,t,n,r,s,a,c){switch(n){case N:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case C:return!(e.byteLength!=t.byteLength||!a(new ie(e),new ie(t)));case u:case d:case h:return Ke(+e,+t);case _:return e.name==t.name&&e.message==t.message;case x:case T:return e==t+"";case m:var l=q;case S:var p=r&i;if(l||(l=V),e.size!=t.size&&!p)return!1;var f=c.get(e);if(f)return f==t;r|=o,c.set(e,t);var g=Re(l(e),l(t),r,s,a,c);return c.delete(e),g;case w:if(Te)return Te.call(e)==Te.call(t)}return!1}(e,t,g,n,r,s,l);if(!(n&i)){var A=b&&X.call(e,"__wrapped__"),I=k&&X.call(t,"__wrapped__");if(A||I){var D=A?e.value():e,P=I?t.value():t;return l||(l=new Ne),s(D,P,n,r,l)}}if(!E)return!1;return l||(l=new Ne),function(e,t,n,r,o,s){var a=n&i,c=Le(e),l=c.length,u=Le(t),d=u.length;if(l!=d&&!a)return!1;var _=l;for(;_--;){var p=c[_];if(!(a?p in t:X.call(t,p)))return!1}var f=s.get(e);if(f&&s.get(t))return f==t;var m=!0;s.set(e,t),s.set(t,e);var h=a;for(;++_<l;){var g=e[p=c[_]],y=t[p];if(r)var v=a?r(y,g,p,t,e,s):r(g,y,p,e,t,s);if(!(void 0===v?g===y||o(g,y,n,r,s):v)){m=!1;break}h||(h="constructor"==p)}if(m&&!h){var b=e.constructor,x=t.constructor;b==x||!("constructor"in e)||!("constructor"in t)||"function"==typeof b&&b instanceof b&&"function"==typeof x&&x instanceof x||(m=!1)}return s.delete(e),s.delete(t),m}(e,t,n,r,s,l)}(e,t,n,r,Me,s))}function Oe(e){return!(!Ye(e)||function(e){return!!$&&$ in e}(e))&&(Ge(e)?te:A).test(Ve(e))}function Fe(e){if(n=(t=e)&&t.constructor,r="function"==typeof n&&n.prototype||Q,t!==r)return ue(e);var t,n,r,i=[];for(var o in Object(e))X.call(e,o)&&"constructor"!=o&&i.push(o);return i}function Re(e,t,n,r,s,a){var c=n&i,l=e.length,u=t.length;if(l!=u&&!(c&&u>l))return!1;var d=a.get(e);if(d&&a.get(t))return d==t;var _=-1,p=!0,f=n&o?new Ce:void 0;for(a.set(e,t),a.set(t,e);++_<l;){var m=e[_],h=t[_];if(r)var g=c?r(h,m,_,t,e,a):r(m,h,_,e,t,a);if(void 0!==g){if(g)continue;p=!1;break}if(f){if(!B(t,(function(e,t){if(i=t,!f.has(i)&&(m===e||s(m,e,n,r,a)))return f.push(t);var i}))){p=!1;break}}else if(m!==h&&!s(m,h,n,r,a)){p=!1;break}}return a.delete(e),a.delete(t),p}function Le(e){return function(e,t,n){var r=t(e);return We(e)?r:function(e,t){for(var n=-1,r=t.length,i=e.length;++n<r;)e[i+n]=t[n];return e}(r,n(e))}(e,$e,Ue)}function je(e,t){var n,r,i=e.__data__;return("string"==(r=typeof(n=t))||"number"==r||"symbol"==r||"boolean"==r?"__proto__"!==n:null===n)?i["string"==typeof t?"string":"hash"]:i.map}function ze(e,t){var n=function(e,t){return null==e?void 0:e[t]}(e,t);return Oe(n)?n:void 0}we.prototype.clear=function(){this.__data__=he?he(null):{},this.size=0},we.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},we.prototype.get=function(e){var t=this.__data__;if(he){var n=t[e];return n===r?void 0:n}return X.call(t,e)?t[e]:void 0},we.prototype.has=function(e){var t=this.__data__;return he?void 0!==t[e]:X.call(t,e)},we.prototype.set=function(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=he&&void 0===t?r:t,this},ke.prototype.clear=function(){this.__data__=[],this.size=0},ke.prototype.delete=function(e){var t=this.__data__,n=Ie(t,e);return!(n<0)&&(n==t.length-1?t.pop():se.call(t,n,1),--this.size,!0)},ke.prototype.get=function(e){var t=this.__data__,n=Ie(t,e);return n<0?void 0:t[n][1]},ke.prototype.has=function(e){return Ie(this.__data__,e)>-1},ke.prototype.set=function(e,t){var n=this.__data__,r=Ie(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this},Ee.prototype.clear=function(){this.size=0,this.__data__={hash:new we,map:new(_e||ke),string:new we}},Ee.prototype.delete=function(e){var t=je(this,e).delete(e);return this.size-=t?1:0,t},Ee.prototype.get=function(e){return je(this,e).get(e)},Ee.prototype.has=function(e){return je(this,e).has(e)},Ee.prototype.set=function(e,t){var n=je(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this},Ce.prototype.add=Ce.prototype.push=function(e){return this.__data__.set(e,r),this},Ce.prototype.has=function(e){return this.__data__.has(e)},Ne.prototype.clear=function(){this.__data__=new ke,this.size=0},Ne.prototype.delete=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n},Ne.prototype.get=function(e){return this.__data__.get(e)},Ne.prototype.has=function(e){return this.__data__.has(e)},Ne.prototype.set=function(e,t){var n=this.__data__;if(n instanceof ke){var r=n.__data__;if(!_e||r.length<199)return r.push([e,t]),this.size=++n.size,this;n=this.__data__=new Ee(r)}return n.set(e,t),this.size=n.size,this};var Ue=ce?function(e){return null==e?[]:(e=Object(e),function(e,t){for(var n=-1,r=null==e?0:e.length,i=0,o=[];++n<r;){var s=e[n];t(s,n,e)&&(o[i++]=s)}return o}(ce(e),(function(t){return oe.call(e,t)})))}:function(){return[]},Be=De;function qe(e,t){return!!(t=null==t?s:t)&&("number"==typeof e||I.test(e))&&e>-1&&e%1==0&&e<t}function Ve(e){if(null!=e){try{return Z.call(e)}catch(t){}try{return e+""}catch(t){}}return""}function Ke(e,t){return e===t||e!=e&&t!=t}(de&&Be(new de(new ArrayBuffer(1)))!=N||_e&&Be(new _e)!=m||pe&&Be(pe.resolve())!=v||fe&&Be(new fe)!=S||me&&Be(new me)!=E)&&(Be=function(e){var t=De(e),n=t==y?e.constructor:void 0,r=n?Ve(n):"";if(r)switch(r){case ge:return N;case ye:return m;case ve:return v;case be:return S;case xe:return E}return t});var Je=Pe(function(){return arguments}())?Pe:function(e){return Ze(e)&&X.call(e,"callee")&&!oe.call(e,"callee")},We=Array.isArray;var He=le||function(){return!1};function Ge(e){if(!Ye(e))return!1;var t=De(e);return t==p||t==f||t==l||t==b}function Qe(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=s}function Ye(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function Ze(e){return null!=e&&"object"==typeof e}var Xe=U?function(e){return function(t){return e(t)}}(U):function(e){return Ze(e)&&Qe(e.length)&&!!D[De(e)]};function $e(e){return null!=(t=e)&&Qe(t.length)&&!Ge(t)?Ae(e):Fe(e);var t}e.exports=function(e,t){return Me(e,t)}},88276:(e,t,n)=>{"use strict";var r=n(56698),i=n(4729),o=n(92861).Buffer,s=new Array(16);function a(){i.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878}function c(e,t){return e<<t|e>>>32-t}function l(e,t,n,r,i,o,s){return c(e+(t&n|~t&r)+i+o|0,s)+t|0}function u(e,t,n,r,i,o,s){return c(e+(t&r|n&~r)+i+o|0,s)+t|0}function d(e,t,n,r,i,o,s){return c(e+(t^n^r)+i+o|0,s)+t|0}function _(e,t,n,r,i,o,s){return c(e+(n^(t|~r))+i+o|0,s)+t|0}r(a,i),a.prototype._update=function(){for(var e=s,t=0;t<16;++t)e[t]=this._block.readInt32LE(4*t);var n=this._a,r=this._b,i=this._c,o=this._d;n=l(n,r,i,o,e[0],3614090360,7),o=l(o,n,r,i,e[1],3905402710,12),i=l(i,o,n,r,e[2],606105819,17),r=l(r,i,o,n,e[3],3250441966,22),n=l(n,r,i,o,e[4],4118548399,7),o=l(o,n,r,i,e[5],1200080426,12),i=l(i,o,n,r,e[6],2821735955,17),r=l(r,i,o,n,e[7],4249261313,22),n=l(n,r,i,o,e[8],1770035416,7),o=l(o,n,r,i,e[9],2336552879,12),i=l(i,o,n,r,e[10],4294925233,17),r=l(r,i,o,n,e[11],2304563134,22),n=l(n,r,i,o,e[12],1804603682,7),o=l(o,n,r,i,e[13],4254626195,12),i=l(i,o,n,r,e[14],2792965006,17),n=u(n,r=l(r,i,o,n,e[15],1236535329,22),i,o,e[1],4129170786,5),o=u(o,n,r,i,e[6],3225465664,9),i=u(i,o,n,r,e[11],643717713,14),r=u(r,i,o,n,e[0],3921069994,20),n=u(n,r,i,o,e[5],3593408605,5),o=u(o,n,r,i,e[10],38016083,9),i=u(i,o,n,r,e[15],3634488961,14),r=u(r,i,o,n,e[4],3889429448,20),n=u(n,r,i,o,e[9],568446438,5),o=u(o,n,r,i,e[14],3275163606,9),i=u(i,o,n,r,e[3],4107603335,14),r=u(r,i,o,n,e[8],1163531501,20),n=u(n,r,i,o,e[13],2850285829,5),o=u(o,n,r,i,e[2],4243563512,9),i=u(i,o,n,r,e[7],1735328473,14),n=d(n,r=u(r,i,o,n,e[12],2368359562,20),i,o,e[5],4294588738,4),o=d(o,n,r,i,e[8],2272392833,11),i=d(i,o,n,r,e[11],1839030562,16),r=d(r,i,o,n,e[14],4259657740,23),n=d(n,r,i,o,e[1],2763975236,4),o=d(o,n,r,i,e[4],1272893353,11),i=d(i,o,n,r,e[7],4139469664,16),r=d(r,i,o,n,e[10],3200236656,23),n=d(n,r,i,o,e[13],681279174,4),o=d(o,n,r,i,e[0],3936430074,11),i=d(i,o,n,r,e[3],3572445317,16),r=d(r,i,o,n,e[6],76029189,23),n=d(n,r,i,o,e[9],3654602809,4),o=d(o,n,r,i,e[12],3873151461,11),i=d(i,o,n,r,e[15],530742520,16),n=_(n,r=d(r,i,o,n,e[2],3299628645,23),i,o,e[0],4096336452,6),o=_(o,n,r,i,e[7],1126891415,10),i=_(i,o,n,r,e[14],2878612391,15),r=_(r,i,o,n,e[5],4237533241,21),n=_(n,r,i,o,e[12],1700485571,6),o=_(o,n,r,i,e[3],2399980690,10),i=_(i,o,n,r,e[10],4293915773,15),r=_(r,i,o,n,e[1],2240044497,21),n=_(n,r,i,o,e[8],1873313359,6),o=_(o,n,r,i,e[15],4264355552,10),i=_(i,o,n,r,e[6],2734768916,15),r=_(r,i,o,n,e[13],1309151649,21),n=_(n,r,i,o,e[4],4149444226,6),o=_(o,n,r,i,e[11],3174756917,10),i=_(i,o,n,r,e[2],718787259,15),r=_(r,i,o,n,e[9],3951481745,21),this._a=this._a+n|0,this._b=this._b+r|0,this._c=this._c+i|0,this._d=this._d+o|0},a.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var e=o.allocUnsafe(16);return e.writeInt32LE(this._a,0),e.writeInt32LE(this._b,4),e.writeInt32LE(this._c,8),e.writeInt32LE(this._d,12),e},e.exports=a},43349:e=>{function t(e,t){if(!e)throw new Error(t||"Assertion failed")}e.exports=t,t.equal=function(e,t,n){if(e!=t)throw new Error(n||"Assertion failed: "+e+" != "+t)}},64367:(e,t)=>{"use strict";var n=t;function r(e){return 1===e.length?"0"+e:e}function i(e){for(var t="",n=0;n<e.length;n++)t+=r(e[n].toString(16));return t}n.toArray=function(e,t){if(Array.isArray(e))return e.slice();if(!e)return[];var n=[];if("string"!=typeof e){for(var r=0;r<e.length;r++)n[r]=0|e[r];return n}if("hex"===t){(e=e.replace(/[^a-z0-9]+/gi,"")).length%2!=0&&(e="0"+e);for(r=0;r<e.length;r+=2)n.push(parseInt(e[r]+e[r+1],16))}else for(r=0;r<e.length;r++){var i=e.charCodeAt(r),o=i>>8,s=255&i;o?n.push(o,s):n.push(s)}return n},n.zero2=r,n.toHex=i,n.encode=function(e,t){return"hex"===t?i(e):e}},43092:(e,t,n)=>{"use strict";var r=function(){if("undefined"!=typeof self)return self;if("undefined"!=typeof window)return window;if(void 0!==n.g)return n.g;throw new Error("unable to locate global object")}();e.exports=t=r.fetch,r.fetch&&(t.default=r.fetch.bind(r)),t.Headers=r.Headers,t.Request=r.Request,t.Response=r.Response},58684:(e,t,n)=>{function r(e){this.mode=o.MODE_8BIT_BYTE,this.data=e,this.parsedData=[];for(var t=0,n=this.data.length;t<n;t++){var r=[],i=this.data.charCodeAt(t);i>65536?(r[0]=240|(1835008&i)>>>18,r[1]=128|(258048&i)>>>12,r[2]=128|(4032&i)>>>6,r[3]=128|63&i):i>2048?(r[0]=224|(61440&i)>>>12,r[1]=128|(4032&i)>>>6,r[2]=128|63&i):i>128?(r[0]=192|(1984&i)>>>6,r[1]=128|63&i):r[0]=i,this.parsedData.push(r)}this.parsedData=Array.prototype.concat.apply([],this.parsedData),this.parsedData.length!=this.data.length&&(this.parsedData.unshift(191),this.parsedData.unshift(187),this.parsedData.unshift(239))}function i(e,t){this.typeNumber=e,this.errorCorrectLevel=t,this.modules=null,this.moduleCount=0,this.dataCache=null,this.dataList=[]}r.prototype={getLength:function(e){return this.parsedData.length},write:function(e){for(var t=0,n=this.parsedData.length;t<n;t++)e.put(this.parsedData[t],8)}},i.prototype={addData:function(e){var t=new r(e);this.dataList.push(t),this.dataCache=null},isDark:function(e,t){if(e<0||this.moduleCount<=e||t<0||this.moduleCount<=t)throw new Error(e+","+t);return this.modules[e][t]},getModuleCount:function(){return this.moduleCount},make:function(){this.makeImpl(!1,this.getBestMaskPattern())},makeImpl:function(e,t){this.moduleCount=4*this.typeNumber+17,this.modules=new Array(this.moduleCount);for(var n=0;n<this.moduleCount;n++){this.modules[n]=new Array(this.moduleCount);for(var r=0;r<this.moduleCount;r++)this.modules[n][r]=null}this.setupPositionProbePattern(0,0),this.setupPositionProbePattern(this.moduleCount-7,0),this.setupPositionProbePattern(0,this.moduleCount-7),this.setupPositionAdjustPattern(),this.setupTimingPattern(),this.setupTypeInfo(e,t),this.typeNumber>=7&&this.setupTypeNumber(e),null==this.dataCache&&(this.dataCache=i.createData(this.typeNumber,this.errorCorrectLevel,this.dataList)),this.mapData(this.dataCache,t)},setupPositionProbePattern:function(e,t){for(var n=-1;n<=7;n++)if(!(e+n<=-1||this.moduleCount<=e+n))for(var r=-1;r<=7;r++)t+r<=-1||this.moduleCount<=t+r||(this.modules[e+n][t+r]=0<=n&&n<=6&&(0==r||6==r)||0<=r&&r<=6&&(0==n||6==n)||2<=n&&n<=4&&2<=r&&r<=4)},getBestMaskPattern:function(){for(var e=0,t=0,n=0;n<8;n++){this.makeImpl(!0,n);var r=y.getLostPoint(this);(0==n||e>r)&&(e=r,t=n)}return t},createMovieClip:function(e,t,n){var r=e.createEmptyMovieClip(t,n);this.make();for(var i=0;i<this.modules.length;i++)for(var o=1*i,s=0;s<this.modules[i].length;s++){var a=1*s;this.modules[i][s]&&(r.beginFill(0,100),r.moveTo(a,o),r.lineTo(a+1,o),r.lineTo(a+1,o+1),r.lineTo(a,o+1),r.endFill())}return r},setupTimingPattern:function(){for(var e=8;e<this.moduleCount-8;e++)null==this.modules[e][6]&&(this.modules[e][6]=e%2==0);for(var t=8;t<this.moduleCount-8;t++)null==this.modules[6][t]&&(this.modules[6][t]=t%2==0)},setupPositionAdjustPattern:function(){for(var e=y.getPatternPosition(this.typeNumber),t=0;t<e.length;t++)for(var n=0;n<e.length;n++){var r=e[t],i=e[n];if(null==this.modules[r][i])for(var o=-2;o<=2;o++)for(var s=-2;s<=2;s++)this.modules[r+o][i+s]=-2==o||2==o||-2==s||2==s||0==o&&0==s}},setupTypeNumber:function(e){for(var t=y.getBCHTypeNumber(this.typeNumber),n=0;n<18;n++){var r=!e&&1==(t>>n&1);this.modules[Math.floor(n/3)][n%3+this.moduleCount-8-3]=r}for(n=0;n<18;n++){r=!e&&1==(t>>n&1);this.modules[n%3+this.moduleCount-8-3][Math.floor(n/3)]=r}},setupTypeInfo:function(e,t){for(var n=this.errorCorrectLevel<<3|t,r=y.getBCHTypeInfo(n),i=0;i<15;i++){var o=!e&&1==(r>>i&1);i<6?this.modules[i][8]=o:i<8?this.modules[i+1][8]=o:this.modules[this.moduleCount-15+i][8]=o}for(i=0;i<15;i++){o=!e&&1==(r>>i&1);i<8?this.modules[8][this.moduleCount-i-1]=o:i<9?this.modules[8][15-i-1+1]=o:this.modules[8][15-i-1]=o}this.modules[this.moduleCount-8][8]=!e},mapData:function(e,t){for(var n=-1,r=this.moduleCount-1,i=7,o=0,s=this.moduleCount-1;s>0;s-=2)for(6==s&&s--;;){for(var a=0;a<2;a++)if(null==this.modules[r][s-a]){var c=!1;o<e.length&&(c=1==(e[o]>>>i&1)),y.getMask(t,r,s-a)&&(c=!c),this.modules[r][s-a]=c,-1==--i&&(o++,i=7)}if((r+=n)<0||this.moduleCount<=r){r-=n,n=-n;break}}}},i.PAD0=236,i.PAD1=17,i.createData=function(e,t,n){for(var r=S.getRSBlocks(e,t),o=new T,s=0;s<n.length;s++){var a=n[s];o.put(a.mode,4),o.put(a.getLength(),y.getLengthInBits(a.mode,e)),a.write(o)}var c=0;for(s=0;s<r.length;s++)c+=r[s].dataCount;if(o.getLengthInBits()>8*c)throw new Error("code length overflow. ("+o.getLengthInBits()+">"+8*c+")");for(o.getLengthInBits()+4<=8*c&&o.put(0,4);o.getLengthInBits()%8!=0;)o.putBit(!1);for(;!(o.getLengthInBits()>=8*c||(o.put(i.PAD0,8),o.getLengthInBits()>=8*c));)o.put(i.PAD1,8);return i.createBytes(o,r)},i.createBytes=function(e,t){for(var n=0,r=0,i=0,o=new Array(t.length),s=new Array(t.length),a=0;a<t.length;a++){var c=t[a].dataCount,l=t[a].totalCount-c;r=Math.max(r,c),i=Math.max(i,l),o[a]=new Array(c);for(var u=0;u<o[a].length;u++)o[a][u]=255&e.buffer[u+n];n+=c;var d=y.getErrorCorrectPolynomial(l),_=new x(o[a],d.getLength()-1).mod(d);s[a]=new Array(d.getLength()-1);for(u=0;u<s[a].length;u++){var p=u+_.getLength()-s[a].length;s[a][u]=p>=0?_.get(p):0}}var f=0;for(u=0;u<t.length;u++)f+=t[u].totalCount;var m=new Array(f),h=0;for(u=0;u<r;u++)for(a=0;a<t.length;a++)u<o[a].length&&(m[h++]=o[a][u]);for(u=0;u<i;u++)for(a=0;a<t.length;a++)u<s[a].length&&(m[h++]=s[a][u]);return m};for(var o={MODE_NUMBER:1,MODE_ALPHA_NUM:2,MODE_8BIT_BYTE:4,MODE_KANJI:8},s=1,a=0,c=3,l=2,u=0,d=1,_=2,p=3,f=4,m=5,h=6,g=7,y={PATTERN_POSITION_TABLE:[[],[6,18],[6,22],[6,26],[6,30],[6,34],[6,22,38],[6,24,42],[6,26,46],[6,28,50],[6,30,54],[6,32,58],[6,34,62],[6,26,46,66],[6,26,48,70],[6,26,50,74],[6,30,54,78],[6,30,56,82],[6,30,58,86],[6,34,62,90],[6,28,50,72,94],[6,26,50,74,98],[6,30,54,78,102],[6,28,54,80,106],[6,32,58,84,110],[6,30,58,86,114],[6,34,62,90,118],[6,26,50,74,98,122],[6,30,54,78,102,126],[6,26,52,78,104,130],[6,30,56,82,108,134],[6,34,60,86,112,138],[6,30,58,86,114,142],[6,34,62,90,118,146],[6,30,54,78,102,126,150],[6,24,50,76,102,128,154],[6,28,54,80,106,132,158],[6,32,58,84,110,136,162],[6,26,54,82,110,138,166],[6,30,58,86,114,142,170]],G15:1335,G18:7973,G15_MASK:21522,getBCHTypeInfo:function(e){for(var t=e<<10;y.getBCHDigit(t)-y.getBCHDigit(y.G15)>=0;)t^=y.G15<<y.getBCHDigit(t)-y.getBCHDigit(y.G15);return(e<<10|t)^y.G15_MASK},getBCHTypeNumber:function(e){for(var t=e<<12;y.getBCHDigit(t)-y.getBCHDigit(y.G18)>=0;)t^=y.G18<<y.getBCHDigit(t)-y.getBCHDigit(y.G18);return e<<12|t},getBCHDigit:function(e){for(var t=0;0!=e;)t++,e>>>=1;return t},getPatternPosition:function(e){return y.PATTERN_POSITION_TABLE[e-1]},getMask:function(e,t,n){switch(e){case u:return(t+n)%2==0;case d:return t%2==0;case _:return n%3==0;case p:return(t+n)%3==0;case f:return(Math.floor(t/2)+Math.floor(n/3))%2==0;case m:return t*n%2+t*n%3==0;case h:return(t*n%2+t*n%3)%2==0;case g:return(t*n%3+(t+n)%2)%2==0;default:throw new Error("bad maskPattern:"+e)}},getErrorCorrectPolynomial:function(e){for(var t=new x([1],0),n=0;n<e;n++)t=t.multiply(new x([1,v.gexp(n)],0));return t},getLengthInBits:function(e,t){if(1<=t&&t<10)switch(e){case o.MODE_NUMBER:return 10;case o.MODE_ALPHA_NUM:return 9;case o.MODE_8BIT_BYTE:case o.MODE_KANJI:return 8;default:throw new Error("mode:"+e)}else if(t<27)switch(e){case o.MODE_NUMBER:return 12;case o.MODE_ALPHA_NUM:return 11;case o.MODE_8BIT_BYTE:return 16;case o.MODE_KANJI:return 10;default:throw new Error("mode:"+e)}else{if(!(t<41))throw new Error("type:"+t);switch(e){case o.MODE_NUMBER:return 14;case o.MODE_ALPHA_NUM:return 13;case o.MODE_8BIT_BYTE:return 16;case o.MODE_KANJI:return 12;default:throw new Error("mode:"+e)}}},getLostPoint:function(e){for(var t=e.getModuleCount(),n=0,r=0;r<t;r++)for(var i=0;i<t;i++){for(var o=0,s=e.isDark(r,i),a=-1;a<=1;a++)if(!(r+a<0||t<=r+a))for(var c=-1;c<=1;c++)i+c<0||t<=i+c||0==a&&0==c||s==e.isDark(r+a,i+c)&&o++;o>5&&(n+=3+o-5)}for(r=0;r<t-1;r++)for(i=0;i<t-1;i++){var l=0;e.isDark(r,i)&&l++,e.isDark(r+1,i)&&l++,e.isDark(r,i+1)&&l++,e.isDark(r+1,i+1)&&l++,0!=l&&4!=l||(n+=3)}for(r=0;r<t;r++)for(i=0;i<t-6;i++)e.isDark(r,i)&&!e.isDark(r,i+1)&&e.isDark(r,i+2)&&e.isDark(r,i+3)&&e.isDark(r,i+4)&&!e.isDark(r,i+5)&&e.isDark(r,i+6)&&(n+=40);for(i=0;i<t;i++)for(r=0;r<t-6;r++)e.isDark(r,i)&&!e.isDark(r+1,i)&&e.isDark(r+2,i)&&e.isDark(r+3,i)&&e.isDark(r+4,i)&&!e.isDark(r+5,i)&&e.isDark(r+6,i)&&(n+=40);var u=0;for(i=0;i<t;i++)for(r=0;r<t;r++)e.isDark(r,i)&&u++;return n+=10*(Math.abs(100*u/t/t-50)/5)}},v={glog:function(e){if(e<1)throw new Error("glog("+e+")");return v.LOG_TABLE[e]},gexp:function(e){for(;e<0;)e+=255;for(;e>=256;)e-=255;return v.EXP_TABLE[e]},EXP_TABLE:new Array(256),LOG_TABLE:new Array(256)},b=0;b<8;b++)v.EXP_TABLE[b]=1<<b;for(b=8;b<256;b++)v.EXP_TABLE[b]=v.EXP_TABLE[b-4]^v.EXP_TABLE[b-5]^v.EXP_TABLE[b-6]^v.EXP_TABLE[b-8];for(b=0;b<255;b++)v.LOG_TABLE[v.EXP_TABLE[b]]=b;function x(e,t){if(null==e.length)throw new Error(e.length+"/"+t);for(var n=0;n<e.length&&0==e[n];)n++;this.num=new Array(e.length-n+t);for(var r=0;r<e.length-n;r++)this.num[r]=e[r+n]}function S(e,t){this.totalCount=e,this.dataCount=t}function T(){this.buffer=[],this.length=0}x.prototype={get:function(e){return this.num[e]},getLength:function(){return this.num.length},multiply:function(e){for(var t=new Array(this.getLength()+e.getLength()-1),n=0;n<this.getLength();n++)for(var r=0;r<e.getLength();r++)t[n+r]^=v.gexp(v.glog(this.get(n))+v.glog(e.get(r)));return new x(t,0)},mod:function(e){if(this.getLength()-e.getLength()<0)return this;for(var t=v.glog(this.get(0))-v.glog(e.get(0)),n=new Array(this.getLength()),r=0;r<this.getLength();r++)n[r]=this.get(r);for(r=0;r<e.getLength();r++)n[r]^=v.gexp(v.glog(e.get(r))+t);return new x(n,0).mod(e)}},S.RS_BLOCK_TABLE=[[1,26,19],[1,26,16],[1,26,13],[1,26,9],[1,44,34],[1,44,28],[1,44,22],[1,44,16],[1,70,55],[1,70,44],[2,35,17],[2,35,13],[1,100,80],[2,50,32],[2,50,24],[4,25,9],[1,134,108],[2,67,43],[2,33,15,2,34,16],[2,33,11,2,34,12],[2,86,68],[4,43,27],[4,43,19],[4,43,15],[2,98,78],[4,49,31],[2,32,14,4,33,15],[4,39,13,1,40,14],[2,121,97],[2,60,38,2,61,39],[4,40,18,2,41,19],[4,40,14,2,41,15],[2,146,116],[3,58,36,2,59,37],[4,36,16,4,37,17],[4,36,12,4,37,13],[2,86,68,2,87,69],[4,69,43,1,70,44],[6,43,19,2,44,20],[6,43,15,2,44,16],[4,101,81],[1,80,50,4,81,51],[4,50,22,4,51,23],[3,36,12,8,37,13],[2,116,92,2,117,93],[6,58,36,2,59,37],[4,46,20,6,47,21],[7,42,14,4,43,15],[4,133,107],[8,59,37,1,60,38],[8,44,20,4,45,21],[12,33,11,4,34,12],[3,145,115,1,146,116],[4,64,40,5,65,41],[11,36,16,5,37,17],[11,36,12,5,37,13],[5,109,87,1,110,88],[5,65,41,5,66,42],[5,54,24,7,55,25],[11,36,12],[5,122,98,1,123,99],[7,73,45,3,74,46],[15,43,19,2,44,20],[3,45,15,13,46,16],[1,135,107,5,136,108],[10,74,46,1,75,47],[1,50,22,15,51,23],[2,42,14,17,43,15],[5,150,120,1,151,121],[9,69,43,4,70,44],[17,50,22,1,51,23],[2,42,14,19,43,15],[3,141,113,4,142,114],[3,70,44,11,71,45],[17,47,21,4,48,22],[9,39,13,16,40,14],[3,135,107,5,136,108],[3,67,41,13,68,42],[15,54,24,5,55,25],[15,43,15,10,44,16],[4,144,116,4,145,117],[17,68,42],[17,50,22,6,51,23],[19,46,16,6,47,17],[2,139,111,7,140,112],[17,74,46],[7,54,24,16,55,25],[34,37,13],[4,151,121,5,152,122],[4,75,47,14,76,48],[11,54,24,14,55,25],[16,45,15,14,46,16],[6,147,117,4,148,118],[6,73,45,14,74,46],[11,54,24,16,55,25],[30,46,16,2,47,17],[8,132,106,4,133,107],[8,75,47,13,76,48],[7,54,24,22,55,25],[22,45,15,13,46,16],[10,142,114,2,143,115],[19,74,46,4,75,47],[28,50,22,6,51,23],[33,46,16,4,47,17],[8,152,122,4,153,123],[22,73,45,3,74,46],[8,53,23,26,54,24],[12,45,15,28,46,16],[3,147,117,10,148,118],[3,73,45,23,74,46],[4,54,24,31,55,25],[11,45,15,31,46,16],[7,146,116,7,147,117],[21,73,45,7,74,46],[1,53,23,37,54,24],[19,45,15,26,46,16],[5,145,115,10,146,116],[19,75,47,10,76,48],[15,54,24,25,55,25],[23,45,15,25,46,16],[13,145,115,3,146,116],[2,74,46,29,75,47],[42,54,24,1,55,25],[23,45,15,28,46,16],[17,145,115],[10,74,46,23,75,47],[10,54,24,35,55,25],[19,45,15,35,46,16],[17,145,115,1,146,116],[14,74,46,21,75,47],[29,54,24,19,55,25],[11,45,15,46,46,16],[13,145,115,6,146,116],[14,74,46,23,75,47],[44,54,24,7,55,25],[59,46,16,1,47,17],[12,151,121,7,152,122],[12,75,47,26,76,48],[39,54,24,14,55,25],[22,45,15,41,46,16],[6,151,121,14,152,122],[6,75,47,34,76,48],[46,54,24,10,55,25],[2,45,15,64,46,16],[17,152,122,4,153,123],[29,74,46,14,75,47],[49,54,24,10,55,25],[24,45,15,46,46,16],[4,152,122,18,153,123],[13,74,46,32,75,47],[48,54,24,14,55,25],[42,45,15,32,46,16],[20,147,117,4,148,118],[40,75,47,7,76,48],[43,54,24,22,55,25],[10,45,15,67,46,16],[19,148,118,6,149,119],[18,75,47,31,76,48],[34,54,24,34,55,25],[20,45,15,61,46,16]],S.getRSBlocks=function(e,t){var n=S.getRsBlockTable(e,t);if(null==n)throw new Error("bad rs block @ typeNumber:"+e+"/errorCorrectLevel:"+t);for(var r=n.length/3,i=[],o=0;o<r;o++)for(var s=n[3*o+0],a=n[3*o+1],c=n[3*o+2],l=0;l<s;l++)i.push(new S(a,c));return i},S.getRsBlockTable=function(e,t){switch(t){case s:return S.RS_BLOCK_TABLE[4*(e-1)+0];case a:return S.RS_BLOCK_TABLE[4*(e-1)+1];case c:return S.RS_BLOCK_TABLE[4*(e-1)+2];case l:return S.RS_BLOCK_TABLE[4*(e-1)+3];default:return}},T.prototype={get:function(e){var t=Math.floor(e/8);return 1==(this.buffer[t]>>>7-e%8&1)},put:function(e,t){for(var n=0;n<t;n++)this.putBit(1==(e>>>t-n-1&1))},getLengthInBits:function(){return this.length},putBit:function(e){var t=Math.floor(this.length/8);this.buffer.length<=t&&this.buffer.push(0),e&&(this.buffer[t]|=128>>>this.length%8),this.length++}};var w=[[17,14,11,7],[32,26,20,14],[53,42,32,24],[78,62,46,34],[106,84,60,44],[134,106,74,58],[154,122,86,64],[192,152,108,84],[230,180,130,98],[271,213,151,119],[321,251,177,137],[367,287,203,155],[425,331,241,177],[458,362,258,194],[520,412,292,220],[586,450,322,250],[644,504,364,280],[718,560,394,310],[792,624,442,338],[858,666,482,382],[929,711,509,403],[1003,779,565,439],[1091,857,611,461],[1171,911,661,511],[1273,997,715,535],[1367,1059,751,593],[1465,1125,805,625],[1528,1190,868,658],[1628,1264,908,698],[1732,1370,982,742],[1840,1452,1030,790],[1952,1538,1112,842],[2068,1628,1168,898],[2188,1722,1228,958],[2303,1809,1283,983],[2431,1911,1351,1051],[2563,1989,1423,1093],[2699,2099,1499,1139],[2809,2213,1579,1219],[2953,2331,1663,1273]];function k(e){if(this.options={padding:4,width:256,height:256,typeNumber:4,color:"#000000",background:"#ffffff",ecl:"M"},"string"==typeof e&&(e={content:e}),e)for(var t in e)this.options[t]=e[t];if("string"!=typeof this.options.content)throw new Error("Expected 'content' as string!");if(0===this.options.content.length)throw new Error("Expected 'content' to be non-empty!");if(!(this.options.padding>=0))throw new Error("Expected 'padding' value to be non-negative!");if(!(this.options.width>0&&this.options.height>0))throw new Error("Expected 'width' or 'height' value to be higher than zero!");var n=this.options.content,r=function(e,t){for(var n=function(e){var t=encodeURI(e).toString().replace(/\%[0-9a-fA-F]{2}/g,"a");return t.length+(t.length!=e?3:0)}(e),r=1,i=0,o=0,s=w.length;o<=s;o++){var a=w[o];if(!a)throw new Error("Content too long: expected "+i+" but got "+n);switch(t){case"L":i=a[0];break;case"M":i=a[1];break;case"Q":i=a[2];break;case"H":i=a[3];break;default:throw new Error("Unknwon error correction level: "+t)}if(n<=i)break;r++}if(r>w.length)throw new Error("Content too long");return r}(n,this.options.ecl),o=function(e){switch(e){case"L":return s;case"M":return a;case"Q":return c;case"H":return l;default:throw new Error("Unknwon error correction level: "+e)}}(this.options.ecl);this.qrcode=new i(r,o),this.qrcode.addData(n),this.qrcode.make()}k.prototype.svg=function(e){var t=this.options||{},n=this.qrcode.modules;void 0===e&&(e={container:t.container||"svg"});for(var r=void 0===t.pretty||!!t.pretty,i=r?" ":"",o=r?"\r\n":"",s=t.width,a=t.height,c=n.length,l=s/(c+2*t.padding),u=a/(c+2*t.padding),d=void 0!==t.join&&!!t.join,_=void 0!==t.swap&&!!t.swap,p=void 0===t.xmlDeclaration||!!t.xmlDeclaration,f=void 0!==t.predefined&&!!t.predefined,m=f?i+'<defs><path id="qrmodule" d="M0 0 h'+u+" v"+l+' H0 z" style="fill:'+t.color+';shape-rendering:crispEdges;" /></defs>'+o:"",h=i+'<rect x="0" y="0" width="'+s+'" height="'+a+'" style="fill:'+t.background+';shape-rendering:crispEdges;"/>'+o,g="",y="",v=0;v<c;v++)for(var b=0;b<c;b++){if(n[b][v]){var x=b*l+t.padding*l,S=v*u+t.padding*u;if(_){var T=x;x=S,S=T}if(d){var w=l+x,k=u+S;x=Number.isInteger(x)?Number(x):x.toFixed(2),S=Number.isInteger(S)?Number(S):S.toFixed(2),w=Number.isInteger(w)?Number(w):w.toFixed(2),y+="M"+x+","+S+" V"+(k=Number.isInteger(k)?Number(k):k.toFixed(2))+" H"+w+" V"+S+" H"+x+" Z "}else g+=f?i+'<use x="'+x.toString()+'" y="'+S.toString()+'" href="#qrmodule" />'+o:i+'<rect x="'+x.toString()+'" y="'+S.toString()+'" width="'+l+'" height="'+u+'" style="fill:'+t.color+';shape-rendering:crispEdges;"/>'+o}}d&&(g=i+'<path x="0" y="0" style="fill:'+t.color+';shape-rendering:crispEdges;" d="'+y+'" />');var E="";switch(e.container){case"svg":p&&(E+='<?xml version="1.0" standalone="yes"?>'+o),E+='<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="'+s+'" height="'+a+'">'+o,E+=m+h+g,E+="</svg>";break;case"svg-viewbox":p&&(E+='<?xml version="1.0" standalone="yes"?>'+o),E+='<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 '+s+" "+a+'">'+o,E+=m+h+g,E+="</svg>";break;case"g":E+='<g width="'+s+'" height="'+a+'">'+o,E+=m+h+g,E+="</g>";break;default:E+=(m+h+g).replace(/^\s+/,"")}return E},k.prototype.save=function(e,t){var r=this.svg();"function"!=typeof t&&(t=function(e,t){});try{n(Object(function(){var e=new Error("Cannot find module 'fs'");throw e.code="MODULE_NOT_FOUND",e}())).writeFile(e,r,t)}catch(i){t(i)}},e.exports=k},86663:(e,t,n)=>{"use strict";const r=n(24280),i=n(30454),o=n(528),s=n(85009),a=Symbol("encodeFragmentIdentifier");function c(e){if("string"!=typeof e||1!==e.length)throw new TypeError("arrayFormatSeparator must be single character string")}function l(e,t){return t.encode?t.strict?r(e):encodeURIComponent(e):e}function u(e,t){return t.decode?i(e):e}function d(e){return Array.isArray(e)?e.sort():"object"==typeof e?d(Object.keys(e)).sort(((e,t)=>Number(e)-Number(t))).map((t=>e[t])):e}function _(e){const t=e.indexOf("#");return-1!==t&&(e=e.slice(0,t)),e}function p(e){const t=(e=_(e)).indexOf("?");return-1===t?"":e.slice(t+1)}function f(e,t){return t.parseNumbers&&!Number.isNaN(Number(e))&&"string"==typeof e&&""!==e.trim()?e=Number(e):!t.parseBooleans||null===e||"true"!==e.toLowerCase()&&"false"!==e.toLowerCase()||(e="true"===e.toLowerCase()),e}function m(e,t){c((t=Object.assign({decode:!0,sort:!0,arrayFormat:"none",arrayFormatSeparator:",",parseNumbers:!1,parseBooleans:!1},t)).arrayFormatSeparator);const n=function(e){let t;switch(e.arrayFormat){case"index":return(e,n,r)=>{t=/\[(\d*)\]$/.exec(e),e=e.replace(/\[\d*\]$/,""),t?(void 0===r[e]&&(r[e]={}),r[e][t[1]]=n):r[e]=n};case"bracket":return(e,n,r)=>{t=/(\[\])$/.exec(e),e=e.replace(/\[\]$/,""),t?void 0!==r[e]?r[e]=[].concat(r[e],n):r[e]=[n]:r[e]=n};case"colon-list-separator":return(e,n,r)=>{t=/(:list)$/.exec(e),e=e.replace(/:list$/,""),t?void 0!==r[e]?r[e]=[].concat(r[e],n):r[e]=[n]:r[e]=n};case"comma":case"separator":return(t,n,r)=>{const i="string"==typeof n&&n.includes(e.arrayFormatSeparator),o="string"==typeof n&&!i&&u(n,e).includes(e.arrayFormatSeparator);n=o?u(n,e):n;const s=i||o?n.split(e.arrayFormatSeparator).map((t=>u(t,e))):null===n?n:u(n,e);r[t]=s};case"bracket-separator":return(t,n,r)=>{const i=/(\[\])$/.test(t);if(t=t.replace(/\[\]$/,""),!i)return void(r[t]=n?u(n,e):n);const o=null===n?[]:n.split(e.arrayFormatSeparator).map((t=>u(t,e)));void 0!==r[t]?r[t]=[].concat(r[t],o):r[t]=o};default:return(e,t,n)=>{void 0!==n[e]?n[e]=[].concat(n[e],t):n[e]=t}}}(t),r=Object.create(null);if("string"!=typeof e)return r;if(!(e=e.trim().replace(/^[?#&]/,"")))return r;for(const i of e.split("&")){if(""===i)continue;let[e,s]=o(t.decode?i.replace(/\+/g," "):i,"=");s=void 0===s?null:["comma","separator","bracket-separator"].includes(t.arrayFormat)?s:u(s,t),n(u(e,t),s,r)}for(const i of Object.keys(r)){const e=r[i];if("object"==typeof e&&null!==e)for(const n of Object.keys(e))e[n]=f(e[n],t);else r[i]=f(e,t)}return!1===t.sort?r:(!0===t.sort?Object.keys(r).sort():Object.keys(r).sort(t.sort)).reduce(((e,t)=>{const n=r[t];return Boolean(n)&&"object"==typeof n&&!Array.isArray(n)?e[t]=d(n):e[t]=n,e}),Object.create(null))}t.extract=p,t.parse=m,t.stringify=(e,t)=>{if(!e)return"";c((t=Object.assign({encode:!0,strict:!0,arrayFormat:"none",arrayFormatSeparator:","},t)).arrayFormatSeparator);const n=n=>t.skipNull&&null==e[n]||t.skipEmptyString&&""===e[n],r=function(e){switch(e.arrayFormat){case"index":return t=>(n,r)=>{const i=n.length;return void 0===r||e.skipNull&&null===r||e.skipEmptyString&&""===r?n:null===r?[...n,[l(t,e),"[",i,"]"].join("")]:[...n,[l(t,e),"[",l(i,e),"]=",l(r,e)].join("")]};case"bracket":return t=>(n,r)=>void 0===r||e.skipNull&&null===r||e.skipEmptyString&&""===r?n:null===r?[...n,[l(t,e),"[]"].join("")]:[...n,[l(t,e),"[]=",l(r,e)].join("")];case"colon-list-separator":return t=>(n,r)=>void 0===r||e.skipNull&&null===r||e.skipEmptyString&&""===r?n:null===r?[...n,[l(t,e),":list="].join("")]:[...n,[l(t,e),":list=",l(r,e)].join("")];case"comma":case"separator":case"bracket-separator":{const t="bracket-separator"===e.arrayFormat?"[]=":"=";return n=>(r,i)=>void 0===i||e.skipNull&&null===i||e.skipEmptyString&&""===i?r:(i=null===i?"":i,0===r.length?[[l(n,e),t,l(i,e)].join("")]:[[r,l(i,e)].join(e.arrayFormatSeparator)])}default:return t=>(n,r)=>void 0===r||e.skipNull&&null===r||e.skipEmptyString&&""===r?n:null===r?[...n,l(t,e)]:[...n,[l(t,e),"=",l(r,e)].join("")]}}(t),i={};for(const s of Object.keys(e))n(s)||(i[s]=e[s]);const o=Object.keys(i);return!1!==t.sort&&o.sort(t.sort),o.map((n=>{const i=e[n];return void 0===i?"":null===i?l(n,t):Array.isArray(i)?0===i.length&&"bracket-separator"===t.arrayFormat?l(n,t)+"[]":i.reduce(r(n),[]).join("&"):l(n,t)+"="+l(i,t)})).filter((e=>e.length>0)).join("&")},t.parseUrl=(e,t)=>{t=Object.assign({decode:!0},t);const[n,r]=o(e,"#");return Object.assign({url:n.split("?")[0]||"",query:m(p(e),t)},t&&t.parseFragmentIdentifier&&r?{fragmentIdentifier:u(r,t)}:{})},t.stringifyUrl=(e,n)=>{n=Object.assign({encode:!0,strict:!0,[a]:!0},n);const r=_(e.url).split("?")[0]||"",i=t.extract(e.url),o=t.parse(i,{sort:!1}),s=Object.assign(o,e.query);let c=t.stringify(s,n);c&&(c=`?${c}`);let u=function(e){let t="";const n=e.indexOf("#");return-1!==n&&(t=e.slice(n)),t}(e.url);return e.fragmentIdentifier&&(u=`#${n[a]?l(e.fragmentIdentifier,n):e.fragmentIdentifier}`),`${r}${c}${u}`},t.pick=(e,n,r)=>{r=Object.assign({parseFragmentIdentifier:!0,[a]:!1},r);const{url:i,query:o,fragmentIdentifier:c}=t.parseUrl(e,r);return t.stringifyUrl({url:i,query:s(o,n),fragmentIdentifier:c},r)},t.exclude=(e,n,r)=>{const i=Array.isArray(n)?e=>!n.includes(e):(e,t)=>!n(e,t);return t.pick(e,i,r)}},85009:e=>{"use strict";e.exports=function(e,t){for(var n={},r=Object.keys(e),i=Array.isArray(t),o=0;o<r.length;o++){var s=r[o],a=e[s];(i?-1!==t.indexOf(s):t(s,a,e))&&(n[s]=a)}return n}},40793:e=>{"use strict";function t(e){try{return JSON.stringify(e)}catch(t){return'"[Circular]"'}}e.exports=function(e,n,r){var i=r&&r.stringify||t;if("object"==typeof e&&null!==e){var o=n.length+1;if(1===o)return e;var s=new Array(o);s[0]=i(e);for(var a=1;a<o;a++)s[a]=i(n[a]);return s.join(" ")}if("string"!=typeof e)return e;var c=n.length;if(0===c)return e;for(var l="",u=0,d=-1,_=e&&e.length||0,p=0;p<_;){if(37===e.charCodeAt(p)&&p+1<_){switch(d=d>-1?d:0,e.charCodeAt(p+1)){case 100:case 102:if(u>=c)break;if(null==n[u])break;d<p&&(l+=e.slice(d,p)),l+=Number(n[u]),d=p+2,p++;break;case 105:if(u>=c)break;if(null==n[u])break;d<p&&(l+=e.slice(d,p)),l+=Math.floor(Number(n[u])),d=p+2,p++;break;case 79:case 111:case 106:if(u>=c)break;if(void 0===n[u])break;d<p&&(l+=e.slice(d,p));var f=typeof n[u];if("string"===f){l+="'"+n[u]+"'",d=p+2,p++;break}if("function"===f){l+=n[u].name||"<anonymous>",d=p+2,p++;break}l+=i(n[u]),d=p+2,p++;break;case 115:if(u>=c)break;d<p&&(l+=e.slice(d,p)),l+=String(n[u]),d=p+2,p++;break;case 37:d<p&&(l+=e.slice(d,p)),l+="%",d=p+2,p++,u--}++u}++p}if(-1===d)return e;d<_&&(l+=e.slice(d));return l}},86048:e=>{"use strict";var t={};function n(e,n,r){r||(r=Error);var i=function(e){var t,r;function i(t,r,i){return e.call(this,function(e,t,r){return"string"==typeof n?n:n(e,t,r)}(t,r,i))||this}return r=e,(t=i).prototype=Object.create(r.prototype),t.prototype.constructor=t,t.__proto__=r,i}(r);i.prototype.name=r.name,i.prototype.code=e,t[e]=i}function r(e,t){if(Array.isArray(e)){var n=e.length;return e=e.map((function(e){return String(e)})),n>2?"one of ".concat(t," ").concat(e.slice(0,n-1).join(", "),", or ")+e[n-1]:2===n?"one of ".concat(t," ").concat(e[0]," or ").concat(e[1]):"of ".concat(t," ").concat(e[0])}return"of ".concat(t," ").concat(String(e))}n("ERR_INVALID_OPT_VALUE",(function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'}),TypeError),n("ERR_INVALID_ARG_TYPE",(function(e,t,n){var i,o,s,a;if("string"==typeof t&&(o="not ",t.substr(!s||s<0?0:+s,o.length)===o)?(i="must not be",t=t.replace(/^not /,"")):i="must be",function(e,t,n){return(void 0===n||n>e.length)&&(n=e.length),e.substring(n-t.length,n)===t}(e," argument"))a="The ".concat(e," ").concat(i," ").concat(r(t,"type"));else{var c=function(e,t,n){return"number"!=typeof n&&(n=0),!(n+t.length>e.length)&&-1!==e.indexOf(t,n)}(e,".")?"property":"argument";a='The "'.concat(e,'" ').concat(c," ").concat(i," ").concat(r(t,"type"))}return a+=". Received type ".concat(typeof n)}),TypeError),n("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),n("ERR_METHOD_NOT_IMPLEMENTED",(function(e){return"The "+e+" method is not implemented"})),n("ERR_STREAM_PREMATURE_CLOSE","Premature close"),n("ERR_STREAM_DESTROYED",(function(e){return"Cannot call "+e+" after a stream was destroyed"})),n("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),n("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),n("ERR_STREAM_WRITE_AFTER_END","write after end"),n("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),n("ERR_UNKNOWN_ENCODING",(function(e){return"Unknown encoding: "+e}),TypeError),n("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),e.exports.F=t},25382:(e,t,n)=>{"use strict";var r=n(65606),i=Object.keys||function(e){var t=[];for(var n in e)t.push(n);return t};e.exports=u;var o=n(45412),s=n(16708);n(56698)(u,o);for(var a=i(s.prototype),c=0;c<a.length;c++){var l=a[c];u.prototype[l]||(u.prototype[l]=s.prototype[l])}function u(e){if(!(this instanceof u))return new u(e);o.call(this,e),s.call(this,e),this.allowHalfOpen=!0,e&&(!1===e.readable&&(this.readable=!1),!1===e.writable&&(this.writable=!1),!1===e.allowHalfOpen&&(this.allowHalfOpen=!1,this.once("end",d)))}function d(){this._writableState.ended||r.nextTick(_,this)}function _(e){e.end()}Object.defineProperty(u.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),Object.defineProperty(u.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(u.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(u.prototype,"destroyed",{enumerable:!1,get:function(){return void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed&&this._writableState.destroyed)},set:function(e){void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed=e,this._writableState.destroyed=e)}})},63600:(e,t,n)=>{"use strict";e.exports=i;var r=n(74610);function i(e){if(!(this instanceof i))return new i(e);r.call(this,e)}n(56698)(i,r),i.prototype._transform=function(e,t,n){n(null,e)}},45412:(e,t,n)=>{"use strict";var r,i=n(65606);e.exports=k,k.ReadableState=w;n(37007).EventEmitter;var o=function(e,t){return e.listeners(t).length},s=n(40345),a=n(48287).Buffer,c=(void 0!==n.g?n.g:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){};var l,u=n(79838);l=u&&u.debuglog?u.debuglog("stream"):function(){};var d,_,p,f=n(80345),m=n(75896),h=n(65291).getHighWaterMark,g=n(86048).F,y=g.ERR_INVALID_ARG_TYPE,v=g.ERR_STREAM_PUSH_AFTER_EOF,b=g.ERR_METHOD_NOT_IMPLEMENTED,x=g.ERR_STREAM_UNSHIFT_AFTER_END_EVENT;n(56698)(k,s);var S=m.errorOrDestroy,T=["error","close","destroy","pause","resume"];function w(e,t,i){r=r||n(25382),e=e||{},"boolean"!=typeof i&&(i=t instanceof r),this.objectMode=!!e.objectMode,i&&(this.objectMode=this.objectMode||!!e.readableObjectMode),this.highWaterMark=h(this,e,"readableHighWaterMark",i),this.buffer=new f,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=!1!==e.emitClose,this.autoDestroy=!!e.autoDestroy,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(d||(d=n(83141).I),this.decoder=new d(e.encoding),this.encoding=e.encoding)}function k(e){if(r=r||n(25382),!(this instanceof k))return new k(e);var t=this instanceof r;this._readableState=new w(e,this,t),this.readable=!0,e&&("function"==typeof e.read&&(this._read=e.read),"function"==typeof e.destroy&&(this._destroy=e.destroy)),s.call(this)}function E(e,t,n,r,i){l("readableAddChunk",t);var o,s=e._readableState;if(null===t)s.reading=!1,function(e,t){if(l("onEofChunk"),t.ended)return;if(t.decoder){var n=t.decoder.end();n&&n.length&&(t.buffer.push(n),t.length+=t.objectMode?1:n.length)}t.ended=!0,t.sync?I(e):(t.needReadable=!1,t.emittedReadable||(t.emittedReadable=!0,D(e)))}(e,s);else if(i||(o=function(e,t){var n;r=t,a.isBuffer(r)||r instanceof c||"string"==typeof t||void 0===t||e.objectMode||(n=new y("chunk",["string","Buffer","Uint8Array"],t));var r;return n}(s,t)),o)S(e,o);else if(s.objectMode||t&&t.length>0)if("string"==typeof t||s.objectMode||Object.getPrototypeOf(t)===a.prototype||(t=function(e){return a.from(e)}(t)),r)s.endEmitted?S(e,new x):C(e,s,t,!0);else if(s.ended)S(e,new v);else{if(s.destroyed)return!1;s.reading=!1,s.decoder&&!n?(t=s.decoder.write(t),s.objectMode||0!==t.length?C(e,s,t,!1):P(e,s)):C(e,s,t,!1)}else r||(s.reading=!1,P(e,s));return!s.ended&&(s.length<s.highWaterMark||0===s.length)}function C(e,t,n,r){t.flowing&&0===t.length&&!t.sync?(t.awaitDrain=0,e.emit("data",n)):(t.length+=t.objectMode?1:n.length,r?t.buffer.unshift(n):t.buffer.push(n),t.needReadable&&I(e)),P(e,t)}Object.defineProperty(k.prototype,"destroyed",{enumerable:!1,get:function(){return void 0!==this._readableState&&this._readableState.destroyed},set:function(e){this._readableState&&(this._readableState.destroyed=e)}}),k.prototype.destroy=m.destroy,k.prototype._undestroy=m.undestroy,k.prototype._destroy=function(e,t){t(e)},k.prototype.push=function(e,t){var n,r=this._readableState;return r.objectMode?n=!0:"string"==typeof e&&((t=t||r.defaultEncoding)!==r.encoding&&(e=a.from(e,t),t=""),n=!0),E(this,e,t,!1,n)},k.prototype.unshift=function(e){return E(this,e,null,!0,!1)},k.prototype.isPaused=function(){return!1===this._readableState.flowing},k.prototype.setEncoding=function(e){d||(d=n(83141).I);var t=new d(e);this._readableState.decoder=t,this._readableState.encoding=this._readableState.decoder.encoding;for(var r=this._readableState.buffer.head,i="";null!==r;)i+=t.write(r.data),r=r.next;return this._readableState.buffer.clear(),""!==i&&this._readableState.buffer.push(i),this._readableState.length=i.length,this};var N=1073741824;function A(e,t){return e<=0||0===t.length&&t.ended?0:t.objectMode?1:e!=e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=function(e){return e>=N?e=N:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function I(e){var t=e._readableState;l("emitReadable",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(l("emitReadable",t.flowing),t.emittedReadable=!0,i.nextTick(D,e))}function D(e){var t=e._readableState;l("emitReadable_",t.destroyed,t.length,t.ended),t.destroyed||!t.length&&!t.ended||(e.emit("readable"),t.emittedReadable=!1),t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark,L(e)}function P(e,t){t.readingMore||(t.readingMore=!0,i.nextTick(M,e,t))}function M(e,t){for(;!t.reading&&!t.ended&&(t.length<t.highWaterMark||t.flowing&&0===t.length);){var n=t.length;if(l("maybeReadMore read 0"),e.read(0),n===t.length)break}t.readingMore=!1}function O(e){var t=e._readableState;t.readableListening=e.listenerCount("readable")>0,t.resumeScheduled&&!t.paused?t.flowing=!0:e.listenerCount("data")>0&&e.resume()}function F(e){l("readable nexttick read 0"),e.read(0)}function R(e,t){l("resume",t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit("resume"),L(e),t.flowing&&!t.reading&&e.read(0)}function L(e){var t=e._readableState;for(l("flow",t.flowing);t.flowing&&null!==e.read(););}function j(e,t){return 0===t.length?null:(t.objectMode?n=t.buffer.shift():!e||e>=t.length?(n=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.first():t.buffer.concat(t.length),t.buffer.clear()):n=t.buffer.consume(e,t.decoder),n);var n}function z(e){var t=e._readableState;l("endReadable",t.endEmitted),t.endEmitted||(t.ended=!0,i.nextTick(U,t,e))}function U(e,t){if(l("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&0===e.length&&(e.endEmitted=!0,t.readable=!1,t.emit("end"),e.autoDestroy)){var n=t._writableState;(!n||n.autoDestroy&&n.finished)&&t.destroy()}}function B(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1}k.prototype.read=function(e){l("read",e),e=parseInt(e,10);var t=this._readableState,n=e;if(0!==e&&(t.emittedReadable=!1),0===e&&t.needReadable&&((0!==t.highWaterMark?t.length>=t.highWaterMark:t.length>0)||t.ended))return l("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?z(this):I(this),null;if(0===(e=A(e,t))&&t.ended)return 0===t.length&&z(this),null;var r,i=t.needReadable;return l("need readable",i),(0===t.length||t.length-e<t.highWaterMark)&&l("length less than watermark",i=!0),t.ended||t.reading?l("reading or ended",i=!1):i&&(l("do read"),t.reading=!0,t.sync=!0,0===t.length&&(t.needReadable=!0),this._read(t.highWaterMark),t.sync=!1,t.reading||(e=A(n,t))),null===(r=e>0?j(e,t):null)?(t.needReadable=t.length<=t.highWaterMark,e=0):(t.length-=e,t.awaitDrain=0),0===t.length&&(t.ended||(t.needReadable=!0),n!==e&&t.ended&&z(this)),null!==r&&this.emit("data",r),r},k.prototype._read=function(e){S(this,new b("_read()"))},k.prototype.pipe=function(e,t){var n=this,r=this._readableState;switch(r.pipesCount){case 0:r.pipes=e;break;case 1:r.pipes=[r.pipes,e];break;default:r.pipes.push(e)}r.pipesCount+=1,l("pipe count=%d opts=%j",r.pipesCount,t);var s=(!t||!1!==t.end)&&e!==i.stdout&&e!==i.stderr?c:h;function a(t,i){l("onunpipe"),t===n&&i&&!1===i.hasUnpiped&&(i.hasUnpiped=!0,l("cleanup"),e.removeListener("close",f),e.removeListener("finish",m),e.removeListener("drain",u),e.removeListener("error",p),e.removeListener("unpipe",a),n.removeListener("end",c),n.removeListener("end",h),n.removeListener("data",_),d=!0,!r.awaitDrain||e._writableState&&!e._writableState.needDrain||u())}function c(){l("onend"),e.end()}r.endEmitted?i.nextTick(s):n.once("end",s),e.on("unpipe",a);var u=function(e){return function(){var t=e._readableState;l("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&o(e,"data")&&(t.flowing=!0,L(e))}}(n);e.on("drain",u);var d=!1;function _(t){l("ondata");var i=e.write(t);l("dest.write",i),!1===i&&((1===r.pipesCount&&r.pipes===e||r.pipesCount>1&&-1!==B(r.pipes,e))&&!d&&(l("false write response, pause",r.awaitDrain),r.awaitDrain++),n.pause())}function p(t){l("onerror",t),h(),e.removeListener("error",p),0===o(e,"error")&&S(e,t)}function f(){e.removeListener("finish",m),h()}function m(){l("onfinish"),e.removeListener("close",f),h()}function h(){l("unpipe"),n.unpipe(e)}return n.on("data",_),function(e,t,n){if("function"==typeof e.prependListener)return e.prependListener(t,n);e._events&&e._events[t]?Array.isArray(e._events[t])?e._events[t].unshift(n):e._events[t]=[n,e._events[t]]:e.on(t,n)}(e,"error",p),e.once("close",f),e.once("finish",m),e.emit("pipe",n),r.flowing||(l("pipe resume"),n.resume()),e},k.prototype.unpipe=function(e){var t=this._readableState,n={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,n)),this;if(!e){var r=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var o=0;o<i;o++)r[o].emit("unpipe",this,{hasUnpiped:!1});return this}var s=B(t.pipes,e);return-1===s||(t.pipes.splice(s,1),t.pipesCount-=1,1===t.pipesCount&&(t.pipes=t.pipes[0]),e.emit("unpipe",this,n)),this},k.prototype.on=function(e,t){var n=s.prototype.on.call(this,e,t),r=this._readableState;return"data"===e?(r.readableListening=this.listenerCount("readable")>0,!1!==r.flowing&&this.resume()):"readable"===e&&(r.endEmitted||r.readableListening||(r.readableListening=r.needReadable=!0,r.flowing=!1,r.emittedReadable=!1,l("on readable",r.length,r.reading),r.length?I(this):r.reading||i.nextTick(F,this))),n},k.prototype.addListener=k.prototype.on,k.prototype.removeListener=function(e,t){var n=s.prototype.removeListener.call(this,e,t);return"readable"===e&&i.nextTick(O,this),n},k.prototype.removeAllListeners=function(e){var t=s.prototype.removeAllListeners.apply(this,arguments);return"readable"!==e&&void 0!==e||i.nextTick(O,this),t},k.prototype.resume=function(){var e=this._readableState;return e.flowing||(l("resume"),e.flowing=!e.readableListening,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,i.nextTick(R,e,t))}(this,e)),e.paused=!1,this},k.prototype.pause=function(){return l("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(l("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this},k.prototype.wrap=function(e){var t=this,n=this._readableState,r=!1;for(var i in e.on("end",(function(){if(l("wrapped end"),n.decoder&&!n.ended){var e=n.decoder.end();e&&e.length&&t.push(e)}t.push(null)})),e.on("data",(function(i){(l("wrapped data"),n.decoder&&(i=n.decoder.write(i)),n.objectMode&&null==i)||(n.objectMode||i&&i.length)&&(t.push(i)||(r=!0,e.pause()))})),e)void 0===this[i]&&"function"==typeof e[i]&&(this[i]=function(t){return function(){return e[t].apply(e,arguments)}}(i));for(var o=0;o<T.length;o++)e.on(T[o],this.emit.bind(this,T[o]));return this._read=function(t){l("wrapped _read",t),r&&(r=!1,e.resume())},this},"function"==typeof Symbol&&(k.prototype[Symbol.asyncIterator]=function(){return void 0===_&&(_=n(2955)),_(this)}),Object.defineProperty(k.prototype,"readableHighWaterMark",{enumerable:!1,get:function(){return this._readableState.highWaterMark}}),Object.defineProperty(k.prototype,"readableBuffer",{enumerable:!1,get:function(){return this._readableState&&this._readableState.buffer}}),Object.defineProperty(k.prototype,"readableFlowing",{enumerable:!1,get:function(){return this._readableState.flowing},set:function(e){this._readableState&&(this._readableState.flowing=e)}}),k._fromList=j,Object.defineProperty(k.prototype,"readableLength",{enumerable:!1,get:function(){return this._readableState.length}}),"function"==typeof Symbol&&(k.from=function(e,t){return void 0===p&&(p=n(55157)),p(k,e,t)})},74610:(e,t,n)=>{"use strict";e.exports=u;var r=n(86048).F,i=r.ERR_METHOD_NOT_IMPLEMENTED,o=r.ERR_MULTIPLE_CALLBACK,s=r.ERR_TRANSFORM_ALREADY_TRANSFORMING,a=r.ERR_TRANSFORM_WITH_LENGTH_0,c=n(25382);function l(e,t){var n=this._transformState;n.transforming=!1;var r=n.writecb;if(null===r)return this.emit("error",new o);n.writechunk=null,n.writecb=null,null!=t&&this.push(t),r(e);var i=this._readableState;i.reading=!1,(i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}function u(e){if(!(this instanceof u))return new u(e);c.call(this,e),this._transformState={afterTransform:l.bind(this),needTransform:!1,transforming:!1,writecb:null,writechunk:null,writeencoding:null},this._readableState.needReadable=!0,this._readableState.sync=!1,e&&("function"==typeof e.transform&&(this._transform=e.transform),"function"==typeof e.flush&&(this._flush=e.flush)),this.on("prefinish",d)}function d(){var e=this;"function"!=typeof this._flush||this._readableState.destroyed?_(this,null,null):this._flush((function(t,n){_(e,t,n)}))}function _(e,t,n){if(t)return e.emit("error",t);if(null!=n&&e.push(n),e._writableState.length)throw new a;if(e._transformState.transforming)throw new s;return e.push(null)}n(56698)(u,c),u.prototype.push=function(e,t){return this._transformState.needTransform=!1,c.prototype.push.call(this,e,t)},u.prototype._transform=function(e,t,n){n(new i("_transform()"))},u.prototype._write=function(e,t,n){var r=this._transformState;if(r.writecb=n,r.writechunk=e,r.writeencoding=t,!r.transforming){var i=this._readableState;(r.needTransform||i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}},u.prototype._read=function(e){var t=this._transformState;null===t.writechunk||t.transforming?t.needTransform=!0:(t.transforming=!0,this._transform(t.writechunk,t.writeencoding,t.afterTransform))},u.prototype._destroy=function(e,t){c.prototype._destroy.call(this,e,(function(e){t(e)}))}},16708:(e,t,n)=>{"use strict";var r,i=n(65606);function o(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,n){var r=e.entry;e.entry=null;for(;r;){var i=r.callback;t.pendingcb--,i(n),r=r.next}t.corkedRequestsFree.next=e}(t,e)}}e.exports=k,k.WritableState=w;var s={deprecate:n(94643)},a=n(40345),c=n(48287).Buffer,l=(void 0!==n.g?n.g:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){};var u,d=n(75896),_=n(65291).getHighWaterMark,p=n(86048).F,f=p.ERR_INVALID_ARG_TYPE,m=p.ERR_METHOD_NOT_IMPLEMENTED,h=p.ERR_MULTIPLE_CALLBACK,g=p.ERR_STREAM_CANNOT_PIPE,y=p.ERR_STREAM_DESTROYED,v=p.ERR_STREAM_NULL_VALUES,b=p.ERR_STREAM_WRITE_AFTER_END,x=p.ERR_UNKNOWN_ENCODING,S=d.errorOrDestroy;function T(){}function w(e,t,s){r=r||n(25382),e=e||{},"boolean"!=typeof s&&(s=t instanceof r),this.objectMode=!!e.objectMode,s&&(this.objectMode=this.objectMode||!!e.writableObjectMode),this.highWaterMark=_(this,e,"writableHighWaterMark",s),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var a=!1===e.decodeStrings;this.decodeStrings=!a,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var n=e._writableState,r=n.sync,o=n.writecb;if("function"!=typeof o)throw new h;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(n),t)!function(e,t,n,r,o){--t.pendingcb,n?(i.nextTick(o,r),i.nextTick(D,e,t),e._writableState.errorEmitted=!0,S(e,r)):(o(r),e._writableState.errorEmitted=!0,S(e,r),D(e,t))}(e,n,r,t,o);else{var s=A(n)||e.destroyed;s||n.corked||n.bufferProcessing||!n.bufferedRequest||N(e,n),r?i.nextTick(C,e,n,s,o):C(e,n,s,o)}}(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=!1!==e.emitClose,this.autoDestroy=!!e.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new o(this)}function k(e){var t=this instanceof(r=r||n(25382));if(!t&&!u.call(k,this))return new k(e);this._writableState=new w(e,this,t),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.final&&(this._final=e.final)),a.call(this)}function E(e,t,n,r,i,o,s){t.writelen=r,t.writecb=s,t.writing=!0,t.sync=!0,t.destroyed?t.onwrite(new y("write")):n?e._writev(i,t.onwrite):e._write(i,o,t.onwrite),t.sync=!1}function C(e,t,n,r){n||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,r(),D(e,t)}function N(e,t){t.bufferProcessing=!0;var n=t.bufferedRequest;if(e._writev&&n&&n.next){var r=t.bufferedRequestCount,i=new Array(r),s=t.corkedRequestsFree;s.entry=n;for(var a=0,c=!0;n;)i[a]=n,n.isBuf||(c=!1),n=n.next,a+=1;i.allBuffers=c,E(e,t,!0,t.length,i,"",s.finish),t.pendingcb++,t.lastBufferedRequest=null,s.next?(t.corkedRequestsFree=s.next,s.next=null):t.corkedRequestsFree=new o(t),t.bufferedRequestCount=0}else{for(;n;){var l=n.chunk,u=n.encoding,d=n.callback;if(E(e,t,!1,t.objectMode?1:l.length,l,u,d),n=n.next,t.bufferedRequestCount--,t.writing)break}null===n&&(t.lastBufferedRequest=null)}t.bufferedRequest=n,t.bufferProcessing=!1}function A(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function I(e,t){e._final((function(n){t.pendingcb--,n&&S(e,n),t.prefinished=!0,e.emit("prefinish"),D(e,t)}))}function D(e,t){var n=A(t);if(n&&(function(e,t){t.prefinished||t.finalCalled||("function"!=typeof e._final||t.destroyed?(t.prefinished=!0,e.emit("prefinish")):(t.pendingcb++,t.finalCalled=!0,i.nextTick(I,e,t)))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"),t.autoDestroy))){var r=e._readableState;(!r||r.autoDestroy&&r.endEmitted)&&e.destroy()}return n}n(56698)(k,a),w.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(w.prototype,"buffer",{get:s.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(u=Function.prototype[Symbol.hasInstance],Object.defineProperty(k,Symbol.hasInstance,{value:function(e){return!!u.call(this,e)||this===k&&(e&&e._writableState instanceof w)}})):u=function(e){return e instanceof this},k.prototype.pipe=function(){S(this,new g)},k.prototype.write=function(e,t,n){var r,o=this._writableState,s=!1,a=!o.objectMode&&(r=e,c.isBuffer(r)||r instanceof l);return a&&!c.isBuffer(e)&&(e=function(e){return c.from(e)}(e)),"function"==typeof t&&(n=t,t=null),a?t="buffer":t||(t=o.defaultEncoding),"function"!=typeof n&&(n=T),o.ending?function(e,t){var n=new b;S(e,n),i.nextTick(t,n)}(this,n):(a||function(e,t,n,r){var o;return null===n?o=new v:"string"==typeof n||t.objectMode||(o=new f("chunk",["string","Buffer"],n)),!o||(S(e,o),i.nextTick(r,o),!1)}(this,o,e,n))&&(o.pendingcb++,s=function(e,t,n,r,i,o){if(!n){var s=function(e,t,n){e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=c.from(t,n));return t}(t,r,i);r!==s&&(n=!0,i="buffer",r=s)}var a=t.objectMode?1:r.length;t.length+=a;var l=t.length<t.highWaterMark;l||(t.needDrain=!0);if(t.writing||t.corked){var u=t.lastBufferedRequest;t.lastBufferedRequest={chunk:r,encoding:i,isBuf:n,callback:o,next:null},u?u.next=t.lastBufferedRequest:t.bufferedRequest=t.lastBufferedRequest,t.bufferedRequestCount+=1}else E(e,t,!1,a,r,i,o);return l}(this,o,a,e,t,n)),s},k.prototype.cork=function(){this._writableState.corked++},k.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,e.writing||e.corked||e.bufferProcessing||!e.bufferedRequest||N(this,e))},k.prototype.setDefaultEncoding=function(e){if("string"==typeof e&&(e=e.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((e+"").toLowerCase())>-1))throw new x(e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(k.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(k.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),k.prototype._write=function(e,t,n){n(new m("_write()"))},k.prototype._writev=null,k.prototype.end=function(e,t,n){var r=this._writableState;return"function"==typeof e?(n=e,e=null,t=null):"function"==typeof t&&(n=t,t=null),null!=e&&this.write(e,t),r.corked&&(r.corked=1,this.uncork()),r.ending||function(e,t,n){t.ending=!0,D(e,t),n&&(t.finished?i.nextTick(n):e.once("finish",n));t.ended=!0,e.writable=!1}(this,r,n),this},Object.defineProperty(k.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(k.prototype,"destroyed",{enumerable:!1,get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),k.prototype.destroy=d.destroy,k.prototype._undestroy=d.undestroy,k.prototype._destroy=function(e,t){t(e)}},2955:(e,t,n)=>{"use strict";var r,i=n(65606);function o(e,t,n){return(t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!=typeof r)return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var s=n(86238),a=Symbol("lastResolve"),c=Symbol("lastReject"),l=Symbol("error"),u=Symbol("ended"),d=Symbol("lastPromise"),_=Symbol("handlePromise"),p=Symbol("stream");function f(e,t){return{value:e,done:t}}function m(e){var t=e[a];if(null!==t){var n=e[p].read();null!==n&&(e[d]=null,e[a]=null,e[c]=null,t(f(n,!1)))}}function h(e){i.nextTick(m,e)}var g=Object.getPrototypeOf((function(){})),y=Object.setPrototypeOf((o(r={get stream(){return this[p]},next:function(){var e=this,t=this[l];if(null!==t)return Promise.reject(t);if(this[u])return Promise.resolve(f(void 0,!0));if(this[p].destroyed)return new Promise((function(t,n){i.nextTick((function(){e[l]?n(e[l]):t(f(void 0,!0))}))}));var n,r=this[d];if(r)n=new Promise(function(e,t){return function(n,r){e.then((function(){t[u]?n(f(void 0,!0)):t[_](n,r)}),r)}}(r,this));else{var o=this[p].read();if(null!==o)return Promise.resolve(f(o,!1));n=new Promise(this[_])}return this[d]=n,n}},Symbol.asyncIterator,(function(){return this})),o(r,"return",(function(){var e=this;return new Promise((function(t,n){e[p].destroy(null,(function(e){e?n(e):t(f(void 0,!0))}))}))})),r),g);e.exports=function(e){var t,n=Object.create(y,(o(t={},p,{value:e,writable:!0}),o(t,a,{value:null,writable:!0}),o(t,c,{value:null,writable:!0}),o(t,l,{value:null,writable:!0}),o(t,u,{value:e._readableState.endEmitted,writable:!0}),o(t,_,{value:function(e,t){var r=n[p].read();r?(n[d]=null,n[a]=null,n[c]=null,e(f(r,!1))):(n[a]=e,n[c]=t)},writable:!0}),t));return n[d]=null,s(e,(function(e){if(e&&"ERR_STREAM_PREMATURE_CLOSE"!==e.code){var t=n[c];return null!==t&&(n[d]=null,n[a]=null,n[c]=null,t(e)),void(n[l]=e)}var r=n[a];null!==r&&(n[d]=null,n[a]=null,n[c]=null,r(f(void 0,!0))),n[u]=!0})),e.on("readable",h.bind(null,n)),n}},80345:(e,t,n)=>{"use strict";function r(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 i(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?r(Object(n),!0).forEach((function(t){o(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):r(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function o(e,t,n){return(t=a(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function s(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,a(r.key),r)}}function a(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!=typeof r)return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:String(t)}var c=n(48287).Buffer,l=n(15340).inspect,u=l&&l.custom||"inspect";e.exports=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.head=null,this.tail=null,this.length=0}var t,n,r;return t=e,(n=[{key:"push",value:function(e){var t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length}},{key:"unshift",value:function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length}},{key:"shift",value:function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(e){if(0===this.length)return"";for(var t=this.head,n=""+t.data;t=t.next;)n+=e+t.data;return n}},{key:"concat",value:function(e){if(0===this.length)return c.alloc(0);for(var t,n,r,i=c.allocUnsafe(e>>>0),o=this.head,s=0;o;)t=o.data,n=i,r=s,c.prototype.copy.call(t,n,r),s+=o.data.length,o=o.next;return i}},{key:"consume",value:function(e,t){var n;return e<this.head.data.length?(n=this.head.data.slice(0,e),this.head.data=this.head.data.slice(e)):n=e===this.head.data.length?this.shift():t?this._getString(e):this._getBuffer(e),n}},{key:"first",value:function(){return this.head.data}},{key:"_getString",value:function(e){var t=this.head,n=1,r=t.data;for(e-=r.length;t=t.next;){var i=t.data,o=e>i.length?i.length:e;if(o===i.length?r+=i:r+=i.slice(0,e),0==(e-=o)){o===i.length?(++n,t.next?this.head=t.next:this.head=this.tail=null):(this.head=t,t.data=i.slice(o));break}++n}return this.length-=n,r}},{key:"_getBuffer",value:function(e){var t=c.allocUnsafe(e),n=this.head,r=1;for(n.data.copy(t),e-=n.data.length;n=n.next;){var i=n.data,o=e>i.length?i.length:e;if(i.copy(t,t.length-e,0,o),0==(e-=o)){o===i.length?(++r,n.next?this.head=n.next:this.head=this.tail=null):(this.head=n,n.data=i.slice(o));break}++r}return this.length-=r,t}},{key:u,value:function(e,t){return l(this,i(i({},t),{},{depth:0,customInspect:!1}))}}])&&s(t.prototype,n),r&&s(t,r),Object.defineProperty(t,"prototype",{writable:!1}),e}()},75896:(e,t,n)=>{"use strict";var r=n(65606);function i(e,t){s(e,t),o(e)}function o(e){e._writableState&&!e._writableState.emitClose||e._readableState&&!e._readableState.emitClose||e.emit("close")}function s(e,t){e.emit("error",t)}e.exports={destroy:function(e,t){var n=this,a=this._readableState&&this._readableState.destroyed,c=this._writableState&&this._writableState.destroyed;return a||c?(t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,r.nextTick(s,this,e)):r.nextTick(s,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,(function(e){!t&&e?n._writableState?n._writableState.errorEmitted?r.nextTick(o,n):(n._writableState.errorEmitted=!0,r.nextTick(i,n,e)):r.nextTick(i,n,e):t?(r.nextTick(o,n),t(e)):r.nextTick(o,n)})),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)},errorOrDestroy:function(e,t){var n=e._readableState,r=e._writableState;n&&n.autoDestroy||r&&r.autoDestroy?e.destroy(t):e.emit("error",t)}}},86238:(e,t,n)=>{"use strict";var r=n(86048).F.ERR_STREAM_PREMATURE_CLOSE;function i(){}e.exports=function e(t,n,o){if("function"==typeof n)return e(t,null,n);n||(n={}),o=function(e){var t=!1;return function(){if(!t){t=!0;for(var n=arguments.length,r=new Array(n),i=0;i<n;i++)r[i]=arguments[i];e.apply(this,r)}}}(o||i);var s=n.readable||!1!==n.readable&&t.readable,a=n.writable||!1!==n.writable&&t.writable,c=function(){t.writable||u()},l=t._writableState&&t._writableState.finished,u=function(){a=!1,l=!0,s||o.call(t)},d=t._readableState&&t._readableState.endEmitted,_=function(){s=!1,d=!0,a||o.call(t)},p=function(e){o.call(t,e)},f=function(){var e;return s&&!d?(t._readableState&&t._readableState.ended||(e=new r),o.call(t,e)):a&&!l?(t._writableState&&t._writableState.ended||(e=new r),o.call(t,e)):void 0},m=function(){t.req.on("finish",u)};return!function(e){return e.setHeader&&"function"==typeof e.abort}(t)?a&&!t._writableState&&(t.on("end",c),t.on("close",c)):(t.on("complete",u),t.on("abort",f),t.req?m():t.on("request",m)),t.on("end",_),t.on("finish",u),!1!==n.error&&t.on("error",p),t.on("close",f),function(){t.removeListener("complete",u),t.removeListener("abort",f),t.removeListener("request",m),t.req&&t.req.removeListener("finish",u),t.removeListener("end",c),t.removeListener("close",c),t.removeListener("finish",u),t.removeListener("end",_),t.removeListener("error",p),t.removeListener("close",f)}}},55157:e=>{e.exports=function(){throw new Error("Readable.from is not available in the browser")}},57758:(e,t,n)=>{"use strict";var r;var i=n(86048).F,o=i.ERR_MISSING_ARGS,s=i.ERR_STREAM_DESTROYED;function a(e){if(e)throw e}function c(e){e()}function l(e,t){return e.pipe(t)}e.exports=function(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];var u,d=function(e){return e.length?"function"!=typeof e[e.length-1]?a:e.pop():a}(t);if(Array.isArray(t[0])&&(t=t[0]),t.length<2)throw new o("streams");var _=t.map((function(e,i){var o=i<t.length-1;return function(e,t,i,o){o=function(e){var t=!1;return function(){t||(t=!0,e.apply(void 0,arguments))}}(o);var a=!1;e.on("close",(function(){a=!0})),void 0===r&&(r=n(86238)),r(e,{readable:t,writable:i},(function(e){if(e)return o(e);a=!0,o()}));var c=!1;return function(t){if(!a&&!c)return c=!0,function(e){return e.setHeader&&"function"==typeof e.abort}(e)?e.abort():"function"==typeof e.destroy?e.destroy():void o(t||new s("pipe"))}}(e,o,i>0,(function(e){u||(u=e),e&&_.forEach(c),o||(_.forEach(c),d(u))}))}));return t.reduce(l)}},65291:(e,t,n)=>{"use strict";var r=n(86048).F.ERR_INVALID_OPT_VALUE;e.exports={getHighWaterMark:function(e,t,n,i){var o=function(e,t,n){return null!=e.highWaterMark?e.highWaterMark:t?e[n]:null}(t,i,n);if(null!=o){if(!isFinite(o)||Math.floor(o)!==o||o<0)throw new r(i?n:"highWaterMark",o);return Math.floor(o)}return e.objectMode?16:16384}}},40345:(e,t,n)=>{e.exports=n(37007).EventEmitter},28399:(e,t,n)=>{(t=e.exports=n(45412)).Stream=t,t.Readable=t,t.Writable=n(16708),t.Duplex=n(25382),t.Transform=n(74610),t.PassThrough=n(63600),t.finished=n(86238),t.pipeline=n(57758)},66011:(e,t,n)=>{"use strict";var r=n(48287).Buffer,i=n(56698),o=n(4729),s=new Array(16),a=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13],c=[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11],l=[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6],u=[8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11],d=[0,1518500249,1859775393,2400959708,2840853838],_=[1352829926,1548603684,1836072691,2053994217,0];function p(){o.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520}function f(e,t){return e<<t|e>>>32-t}function m(e,t,n,r,i,o,s,a){return f(e+(t^n^r)+o+s|0,a)+i|0}function h(e,t,n,r,i,o,s,a){return f(e+(t&n|~t&r)+o+s|0,a)+i|0}function g(e,t,n,r,i,o,s,a){return f(e+((t|~n)^r)+o+s|0,a)+i|0}function y(e,t,n,r,i,o,s,a){return f(e+(t&r|n&~r)+o+s|0,a)+i|0}function v(e,t,n,r,i,o,s,a){return f(e+(t^(n|~r))+o+s|0,a)+i|0}i(p,o),p.prototype._update=function(){for(var e=s,t=0;t<16;++t)e[t]=this._block.readInt32LE(4*t);for(var n=0|this._a,r=0|this._b,i=0|this._c,o=0|this._d,p=0|this._e,b=0|this._a,x=0|this._b,S=0|this._c,T=0|this._d,w=0|this._e,k=0;k<80;k+=1){var E,C;k<16?(E=m(n,r,i,o,p,e[a[k]],d[0],l[k]),C=v(b,x,S,T,w,e[c[k]],_[0],u[k])):k<32?(E=h(n,r,i,o,p,e[a[k]],d[1],l[k]),C=y(b,x,S,T,w,e[c[k]],_[1],u[k])):k<48?(E=g(n,r,i,o,p,e[a[k]],d[2],l[k]),C=g(b,x,S,T,w,e[c[k]],_[2],u[k])):k<64?(E=y(n,r,i,o,p,e[a[k]],d[3],l[k]),C=h(b,x,S,T,w,e[c[k]],_[3],u[k])):(E=v(n,r,i,o,p,e[a[k]],d[4],l[k]),C=m(b,x,S,T,w,e[c[k]],_[4],u[k])),n=p,p=o,o=f(i,10),i=r,r=E,b=w,w=T,T=f(S,10),S=x,x=C}var N=this._b+i+T|0;this._b=this._c+o+w|0,this._c=this._d+p+b|0,this._d=this._e+n+x|0,this._e=this._a+r+S|0,this._a=N},p.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var e=r.alloc?r.alloc(20):new r(20);return e.writeInt32LE(this._a,0),e.writeInt32LE(this._b,4),e.writeInt32LE(this._c,8),e.writeInt32LE(this._d,12),e.writeInt32LE(this._e,16),e},e.exports=p},92861:(e,t,n)=>{var r=n(48287),i=r.Buffer;function o(e,t){for(var n in e)t[n]=e[n]}function s(e,t,n){return i(e,t,n)}i.from&&i.alloc&&i.allocUnsafe&&i.allocUnsafeSlow?e.exports=r:(o(r,t),t.Buffer=s),s.prototype=Object.create(i.prototype),o(i,s),s.from=function(e,t,n){if("number"==typeof e)throw new TypeError("Argument must not be a number");return i(e,t,n)},s.alloc=function(e,t,n){if("number"!=typeof e)throw new TypeError("Argument must be a number");var r=i(e);return void 0!==t?"string"==typeof n?r.fill(t,n):r.fill(t):r.fill(0),r},s.allocUnsafe=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return i(e)},s.allocUnsafeSlow=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return r.SlowBuffer(e)}},90392:(e,t,n)=>{var r=n(92861).Buffer;function i(e,t){this._block=r.alloc(e),this._finalSize=t,this._blockSize=e,this._len=0}i.prototype.update=function(e,t){"string"==typeof e&&(t=t||"utf8",e=r.from(e,t));for(var n=this._block,i=this._blockSize,o=e.length,s=this._len,a=0;a<o;){for(var c=s%i,l=Math.min(o-a,i-c),u=0;u<l;u++)n[c+u]=e[a+u];a+=l,(s+=l)%i==0&&this._update(n)}return this._len+=o,this},i.prototype.digest=function(e){var t=this._len%this._blockSize;this._block[t]=128,this._block.fill(0,t+1),t>=this._finalSize&&(this._update(this._block),this._block.fill(0));var n=8*this._len;if(n<=4294967295)this._block.writeUInt32BE(n,this._blockSize-4);else{var r=(4294967295&n)>>>0,i=(n-r)/4294967296;this._block.writeUInt32BE(i,this._blockSize-8),this._block.writeUInt32BE(r,this._blockSize-4)}this._update(this._block);var o=this._hash();return e?o.toString(e):o},i.prototype._update=function(){throw new Error("_update must be implemented by subclass")},e.exports=i},62802:(e,t,n)=>{var r=e.exports=function(e){e=e.toLowerCase();var t=r[e];if(!t)throw new Error(e+" is not supported (we accept pull requests)");return new t};r.sha=n(27816),r.sha1=n(63737),r.sha224=n(26710),r.sha256=n(24107),r.sha384=n(32827),r.sha512=n(82890)},27816:(e,t,n)=>{var r=n(56698),i=n(90392),o=n(92861).Buffer,s=[1518500249,1859775393,-1894007588,-899497514],a=new Array(80);function c(){this.init(),this._w=a,i.call(this,64,56)}function l(e){return e<<30|e>>>2}function u(e,t,n,r){return 0===e?t&n|~t&r:2===e?t&n|t&r|n&r:t^n^r}r(c,i),c.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this},c.prototype._update=function(e){for(var t,n=this._w,r=0|this._a,i=0|this._b,o=0|this._c,a=0|this._d,c=0|this._e,d=0;d<16;++d)n[d]=e.readInt32BE(4*d);for(;d<80;++d)n[d]=n[d-3]^n[d-8]^n[d-14]^n[d-16];for(var _=0;_<80;++_){var p=~~(_/20),f=0|((t=r)<<5|t>>>27)+u(p,i,o,a)+c+n[_]+s[p];c=a,a=o,o=l(i),i=r,r=f}this._a=r+this._a|0,this._b=i+this._b|0,this._c=o+this._c|0,this._d=a+this._d|0,this._e=c+this._e|0},c.prototype._hash=function(){var e=o.allocUnsafe(20);return e.writeInt32BE(0|this._a,0),e.writeInt32BE(0|this._b,4),e.writeInt32BE(0|this._c,8),e.writeInt32BE(0|this._d,12),e.writeInt32BE(0|this._e,16),e},e.exports=c},63737:(e,t,n)=>{var r=n(56698),i=n(90392),o=n(92861).Buffer,s=[1518500249,1859775393,-1894007588,-899497514],a=new Array(80);function c(){this.init(),this._w=a,i.call(this,64,56)}function l(e){return e<<5|e>>>27}function u(e){return e<<30|e>>>2}function d(e,t,n,r){return 0===e?t&n|~t&r:2===e?t&n|t&r|n&r:t^n^r}r(c,i),c.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this},c.prototype._update=function(e){for(var t,n=this._w,r=0|this._a,i=0|this._b,o=0|this._c,a=0|this._d,c=0|this._e,_=0;_<16;++_)n[_]=e.readInt32BE(4*_);for(;_<80;++_)n[_]=(t=n[_-3]^n[_-8]^n[_-14]^n[_-16])<<1|t>>>31;for(var p=0;p<80;++p){var f=~~(p/20),m=l(r)+d(f,i,o,a)+c+n[p]+s[f]|0;c=a,a=o,o=u(i),i=r,r=m}this._a=r+this._a|0,this._b=i+this._b|0,this._c=o+this._c|0,this._d=a+this._d|0,this._e=c+this._e|0},c.prototype._hash=function(){var e=o.allocUnsafe(20);return e.writeInt32BE(0|this._a,0),e.writeInt32BE(0|this._b,4),e.writeInt32BE(0|this._c,8),e.writeInt32BE(0|this._d,12),e.writeInt32BE(0|this._e,16),e},e.exports=c},26710:(e,t,n)=>{var r=n(56698),i=n(24107),o=n(90392),s=n(92861).Buffer,a=new Array(64);function c(){this.init(),this._w=a,o.call(this,64,56)}r(c,i),c.prototype.init=function(){return this._a=3238371032,this._b=914150663,this._c=812702999,this._d=4144912697,this._e=4290775857,this._f=1750603025,this._g=1694076839,this._h=3204075428,this},c.prototype._hash=function(){var e=s.allocUnsafe(28);return e.writeInt32BE(this._a,0),e.writeInt32BE(this._b,4),e.writeInt32BE(this._c,8),e.writeInt32BE(this._d,12),e.writeInt32BE(this._e,16),e.writeInt32BE(this._f,20),e.writeInt32BE(this._g,24),e},e.exports=c},24107:(e,t,n)=>{var r=n(56698),i=n(90392),o=n(92861).Buffer,s=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],a=new Array(64);function c(){this.init(),this._w=a,i.call(this,64,56)}function l(e,t,n){return n^e&(t^n)}function u(e,t,n){return e&t|n&(e|t)}function d(e){return(e>>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10)}function _(e){return(e>>>6|e<<26)^(e>>>11|e<<21)^(e>>>25|e<<7)}function p(e){return(e>>>7|e<<25)^(e>>>18|e<<14)^e>>>3}r(c,i),c.prototype.init=function(){return this._a=1779033703,this._b=3144134277,this._c=1013904242,this._d=2773480762,this._e=1359893119,this._f=2600822924,this._g=528734635,this._h=1541459225,this},c.prototype._update=function(e){for(var t,n=this._w,r=0|this._a,i=0|this._b,o=0|this._c,a=0|this._d,c=0|this._e,f=0|this._f,m=0|this._g,h=0|this._h,g=0;g<16;++g)n[g]=e.readInt32BE(4*g);for(;g<64;++g)n[g]=0|(((t=n[g-2])>>>17|t<<15)^(t>>>19|t<<13)^t>>>10)+n[g-7]+p(n[g-15])+n[g-16];for(var y=0;y<64;++y){var v=h+_(c)+l(c,f,m)+s[y]+n[y]|0,b=d(r)+u(r,i,o)|0;h=m,m=f,f=c,c=a+v|0,a=o,o=i,i=r,r=v+b|0}this._a=r+this._a|0,this._b=i+this._b|0,this._c=o+this._c|0,this._d=a+this._d|0,this._e=c+this._e|0,this._f=f+this._f|0,this._g=m+this._g|0,this._h=h+this._h|0},c.prototype._hash=function(){var e=o.allocUnsafe(32);return e.writeInt32BE(this._a,0),e.writeInt32BE(this._b,4),e.writeInt32BE(this._c,8),e.writeInt32BE(this._d,12),e.writeInt32BE(this._e,16),e.writeInt32BE(this._f,20),e.writeInt32BE(this._g,24),e.writeInt32BE(this._h,28),e},e.exports=c},32827:(e,t,n)=>{var r=n(56698),i=n(82890),o=n(90392),s=n(92861).Buffer,a=new Array(160);function c(){this.init(),this._w=a,o.call(this,128,112)}r(c,i),c.prototype.init=function(){return this._ah=3418070365,this._bh=1654270250,this._ch=2438529370,this._dh=355462360,this._eh=1731405415,this._fh=2394180231,this._gh=3675008525,this._hh=1203062813,this._al=3238371032,this._bl=914150663,this._cl=812702999,this._dl=4144912697,this._el=4290775857,this._fl=1750603025,this._gl=1694076839,this._hl=3204075428,this},c.prototype._hash=function(){var e=s.allocUnsafe(48);function t(t,n,r){e.writeInt32BE(t,r),e.writeInt32BE(n,r+4)}return t(this._ah,this._al,0),t(this._bh,this._bl,8),t(this._ch,this._cl,16),t(this._dh,this._dl,24),t(this._eh,this._el,32),t(this._fh,this._fl,40),e},e.exports=c},82890:(e,t,n)=>{var r=n(56698),i=n(90392),o=n(92861).Buffer,s=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591],a=new Array(160);function c(){this.init(),this._w=a,i.call(this,128,112)}function l(e,t,n){return n^e&(t^n)}function u(e,t,n){return e&t|n&(e|t)}function d(e,t){return(e>>>28|t<<4)^(t>>>2|e<<30)^(t>>>7|e<<25)}function _(e,t){return(e>>>14|t<<18)^(e>>>18|t<<14)^(t>>>9|e<<23)}function p(e,t){return(e>>>1|t<<31)^(e>>>8|t<<24)^e>>>7}function f(e,t){return(e>>>1|t<<31)^(e>>>8|t<<24)^(e>>>7|t<<25)}function m(e,t){return(e>>>19|t<<13)^(t>>>29|e<<3)^e>>>6}function h(e,t){return(e>>>19|t<<13)^(t>>>29|e<<3)^(e>>>6|t<<26)}function g(e,t){return e>>>0<t>>>0?1:0}r(c,i),c.prototype.init=function(){return this._ah=1779033703,this._bh=3144134277,this._ch=1013904242,this._dh=2773480762,this._eh=1359893119,this._fh=2600822924,this._gh=528734635,this._hh=1541459225,this._al=4089235720,this._bl=2227873595,this._cl=4271175723,this._dl=1595750129,this._el=2917565137,this._fl=725511199,this._gl=4215389547,this._hl=327033209,this},c.prototype._update=function(e){for(var t=this._w,n=0|this._ah,r=0|this._bh,i=0|this._ch,o=0|this._dh,a=0|this._eh,c=0|this._fh,y=0|this._gh,v=0|this._hh,b=0|this._al,x=0|this._bl,S=0|this._cl,T=0|this._dl,w=0|this._el,k=0|this._fl,E=0|this._gl,C=0|this._hl,N=0;N<32;N+=2)t[N]=e.readInt32BE(4*N),t[N+1]=e.readInt32BE(4*N+4);for(;N<160;N+=2){var A=t[N-30],I=t[N-30+1],D=p(A,I),P=f(I,A),M=m(A=t[N-4],I=t[N-4+1]),O=h(I,A),F=t[N-14],R=t[N-14+1],L=t[N-32],j=t[N-32+1],z=P+R|0,U=D+F+g(z,P)|0;U=(U=U+M+g(z=z+O|0,O)|0)+L+g(z=z+j|0,j)|0,t[N]=U,t[N+1]=z}for(var B=0;B<160;B+=2){U=t[B],z=t[B+1];var q=u(n,r,i),V=u(b,x,S),K=d(n,b),J=d(b,n),W=_(a,w),H=_(w,a),G=s[B],Q=s[B+1],Y=l(a,c,y),Z=l(w,k,E),X=C+H|0,$=v+W+g(X,C)|0;$=($=($=$+Y+g(X=X+Z|0,Z)|0)+G+g(X=X+Q|0,Q)|0)+U+g(X=X+z|0,z)|0;var ee=J+V|0,te=K+q+g(ee,J)|0;v=y,C=E,y=c,E=k,c=a,k=w,a=o+$+g(w=T+X|0,T)|0,o=i,T=S,i=r,S=x,r=n,x=b,n=$+te+g(b=X+ee|0,X)|0}this._al=this._al+b|0,this._bl=this._bl+x|0,this._cl=this._cl+S|0,this._dl=this._dl+T|0,this._el=this._el+w|0,this._fl=this._fl+k|0,this._gl=this._gl+E|0,this._hl=this._hl+C|0,this._ah=this._ah+n+g(this._al,b)|0,this._bh=this._bh+r+g(this._bl,x)|0,this._ch=this._ch+i+g(this._cl,S)|0,this._dh=this._dh+o+g(this._dl,T)|0,this._eh=this._eh+a+g(this._el,w)|0,this._fh=this._fh+c+g(this._fl,k)|0,this._gh=this._gh+y+g(this._gl,E)|0,this._hh=this._hh+v+g(this._hl,C)|0},c.prototype._hash=function(){var e=o.allocUnsafe(64);function t(t,n,r){e.writeInt32BE(t,r),e.writeInt32BE(n,r+4)}return t(this._ah,this._al,0),t(this._bh,this._bl,8),t(this._ch,this._cl,16),t(this._dh,this._dl,24),t(this._eh,this._el,32),t(this._fh,this._fl,40),t(this._gh,this._gl,48),t(this._hh,this._hl,56),e},e.exports=c},528:e=>{"use strict";e.exports=(e,t)=>{if("string"!=typeof e||"string"!=typeof t)throw new TypeError("Expected the arguments to be of type `string`");if(""===t)return[e];const n=e.indexOf(t);return-1===n?[e]:[e.slice(0,n),e.slice(n+t.length)]}},88310:(e,t,n)=>{e.exports=i;var r=n(37007).EventEmitter;function i(){r.call(this)}n(56698)(i,r),i.Readable=n(45412),i.Writable=n(16708),i.Duplex=n(25382),i.Transform=n(74610),i.PassThrough=n(63600),i.finished=n(86238),i.pipeline=n(57758),i.Stream=i,i.prototype.pipe=function(e,t){var n=this;function i(t){e.writable&&!1===e.write(t)&&n.pause&&n.pause()}function o(){n.readable&&n.resume&&n.resume()}n.on("data",i),e.on("drain",o),e._isStdio||t&&!1===t.end||(n.on("end",a),n.on("close",c));var s=!1;function a(){s||(s=!0,e.end())}function c(){s||(s=!0,"function"==typeof e.destroy&&e.destroy())}function l(e){if(u(),0===r.listenerCount(this,"error"))throw e}function u(){n.removeListener("data",i),e.removeListener("drain",o),n.removeListener("end",a),n.removeListener("close",c),n.removeListener("error",l),e.removeListener("error",l),n.removeListener("end",u),n.removeListener("close",u),e.removeListener("close",u)}return n.on("error",l),e.on("error",l),n.on("end",u),n.on("close",u),e.on("close",u),e.emit("pipe",n),e}},24280:e=>{"use strict";e.exports=e=>encodeURIComponent(e).replace(/[!'()*]/g,(e=>`%${e.charCodeAt(0).toString(16).toUpperCase()}`))},83141:(e,t,n)=>{"use strict";var r=n(92861).Buffer,i=r.isEncoding||function(e){switch((e=""+e)&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function o(e){var t;switch(this.encoding=function(e){var t=function(e){if(!e)return"utf8";for(var t;;)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}(e);if("string"!=typeof t&&(r.isEncoding===i||!i(e)))throw new Error("Unknown encoding: "+e);return t||e}(e),this.encoding){case"utf16le":this.text=c,this.end=l,t=4;break;case"utf8":this.fillLast=a,t=4;break;case"base64":this.text=u,this.end=d,t=3;break;default:return this.write=_,void(this.end=p)}this.lastNeed=0,this.lastTotal=0,this.lastChar=r.allocUnsafe(t)}function s(e){return e<=127?0:e>>5==6?2:e>>4==14?3:e>>3==30?4:e>>6==2?-1:-2}function a(e){var t=this.lastTotal-this.lastNeed,n=function(e,t,n){if(128!=(192&t[0]))return e.lastNeed=0,"\ufffd";if(e.lastNeed>1&&t.length>1){if(128!=(192&t[1]))return e.lastNeed=1,"\ufffd";if(e.lastNeed>2&&t.length>2&&128!=(192&t[2]))return e.lastNeed=2,"\ufffd"}}(this,e);return void 0!==n?n:this.lastNeed<=e.length?(e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(e.copy(this.lastChar,t,0,e.length),void(this.lastNeed-=e.length))}function c(e,t){if((e.length-t)%2==0){var n=e.toString("utf16le",t);if(n){var r=n.charCodeAt(n.length-1);if(r>=55296&&r<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],n.slice(0,-1)}return n}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function l(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var n=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,n)}return t}function u(e,t){var n=(e.length-t)%3;return 0===n?e.toString("base64",t):(this.lastNeed=3-n,this.lastTotal=3,1===n?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-n))}function d(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function _(e){return e.toString(this.encoding)}function p(e){return e&&e.length?this.write(e):""}t.I=o,o.prototype.write=function(e){if(0===e.length)return"";var t,n;if(this.lastNeed){if(void 0===(t=this.fillLast(e)))return"";n=this.lastNeed,this.lastNeed=0}else n=0;return n<e.length?t?t+this.text(e,n):this.text(e,n):t||""},o.prototype.end=function(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+"\ufffd":t},o.prototype.text=function(e,t){var n=function(e,t,n){var r=t.length-1;if(r<n)return 0;var i=s(t[r]);if(i>=0)return i>0&&(e.lastNeed=i-1),i;if(--r<n||-2===i)return 0;if(i=s(t[r]),i>=0)return i>0&&(e.lastNeed=i-2),i;if(--r<n||-2===i)return 0;if(i=s(t[r]),i>=0)return i>0&&(2===i?i=0:e.lastNeed=i-3),i;return 0}(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=n;var r=e.length-(n-this.lastNeed);return e.copy(this.lastChar,0,r),e.toString("utf8",t,r)},o.prototype.fillLast=function(e){if(this.lastNeed<=e.length)return e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,e.length),this.lastNeed-=e.length}},64527:(e,t,n)=>{var r=n(48287).Buffer;e.exports=function(e){return ArrayBuffer.isView(e)?r.from(e.buffer,e.byteOffset,e.byteLength):r.from(e)}},58843:(e,t,n)=>{var r="/index.js",i=n(65606),o=n(96763),s=n(48287).Buffer,a={};(e=>{"use strict";var t=Object.defineProperty,a=(Object.getOwnPropertyDescriptor,Object.getOwnPropertyNames,Object.prototype.hasOwnProperty,(e,n)=>{for(var r in n)t(e,r,{get:n[r],enumerable:!0})}),c={};a(c,{ANONYMOUS:()=>N$,AccessFlags:()=>li,AssertionLevel:()=>Ct,AssignmentDeclarationKind:()=>vi,AssignmentKind:()=>ng,Associativity:()=>hy,BreakpointResolver:()=>k8,BuilderFileEmit:()=>HK,BuilderProgramKind:()=>mJ,BuilderState:()=>JK,CallHierarchy:()=>C8,CharacterCodes:()=>Fi,CheckFlags:()=>ni,CheckMode:()=>qz,ClassificationType:()=>zQ,ClassificationTypeNames:()=>jQ,CommentDirectiveType:()=>Lr,Comparison:()=>d,CompletionInfoFlags:()=>DQ,CompletionTriggerKind:()=>TQ,Completions:()=>Dse,ContainerFlags:()=>Jj,ContextFlags:()=>Hr,Debug:()=>Tn,DiagnosticCategory:()=>bi,Diagnostics:()=>ws,DocumentHighlights:()=>R0,ElementFlags:()=>ci,EmitFlags:()=>zi,EmitHint:()=>Vi,EmitOnly:()=>Br,EndOfLineState:()=>OQ,ExitStatus:()=>Vr,ExportKind:()=>E0,Extension:()=>Ri,ExternalEmitHelpers:()=>qi,FileIncludeKind:()=>zr,FilePreprocessingDiagnosticsKind:()=>Ur,FileSystemEntryKind:()=>yo,FileWatcherEventKind:()=>Xi,FindAllReferences:()=>Ice,FlattenLevel:()=>yB,FlowFlags:()=>Rr,ForegroundColorEscapeSequences:()=>HV,FunctionFlags:()=>Kg,GeneratedIdentifierFlags:()=>Mr,GetLiteralTextFlags:()=>sp,GoToDefinition:()=>gle,HighlightSpanKind:()=>kQ,IdentifierNameMap:()=>HU,IdentifierNameMultiMap:()=>GU,ImportKind:()=>k0,ImportsNotUsedAsValues:()=>Ai,IndentStyle:()=>EQ,IndexFlags:()=>ui,IndexKind:()=>fi,InferenceFlags:()=>gi,InferencePriority:()=>hi,InlayHintKind:()=>wQ,InlayHints:()=>Fle,InternalEmitFlags:()=>Ui,InternalSymbolName:()=>ri,IntersectionFlags:()=>Wr,InvalidatedProjectKind:()=>uH,JSDocParsingMode:()=>Qi,JsDoc:()=>Ule,JsTyping:()=>jG,JsxEmit:()=>Ni,JsxFlags:()=>Dr,JsxReferenceKind:()=>di,LanguageFeatureMinimumTarget:()=>Bi,LanguageServiceMode:()=>vQ,LanguageVariant:()=>Mi,LexicalEnvironmentFlags:()=>Ji,ListFormat:()=>Wi,LogLevel:()=>wn,MapCode:()=>sue,MemberOverrideStatus:()=>Kr,ModifierFlags:()=>Ir,ModuleDetectionKind:()=>Ti,ModuleInstanceState:()=>Bj,ModuleKind:()=>Ci,ModuleResolutionKind:()=>Si,ModuleSpecifierEnding:()=>XT,NavigateTo:()=>c2,NavigationBar:()=>v2,NewLineKind:()=>Ii,NodeBuilderFlags:()=>Gr,NodeCheckFlags:()=>ii,NodeFactoryFlags:()=>Kk,NodeFlags:()=>Ar,NodeResolutionFeatures:()=>zL,ObjectFlags:()=>si,OperationCanceledException:()=>jr,OperatorPrecedence:()=>xy,OrganizeImports:()=>_ue,OrganizeImportsMode:()=>SQ,OuterExpressionKinds:()=>Ki,OutliningElementsCollector:()=>Kue,OutliningSpanKind:()=>PQ,OutputFileType:()=>MQ,PackageJsonAutoImportPreference:()=>yQ,PackageJsonDependencyGroup:()=>gQ,PatternMatchKind:()=>l1,PollingInterval:()=>$i,PollingWatchKind:()=>Ei,PragmaKindFlags:()=>Hi,PrivateIdentifierKind:()=>GE,ProcessLevel:()=>BB,ProgramUpdateLevel:()=>wV,QuotePreference:()=>nX,RegularExpressionFlags:()=>Or,RelationComparisonResult:()=>Pr,Rename:()=>$ue,ScriptElementKind:()=>RQ,ScriptElementKindModifier:()=>LQ,ScriptKind:()=>Di,ScriptSnapshot:()=>uQ,ScriptTarget:()=>Pi,SemanticClassificationFormat:()=>xQ,SemanticMeaning:()=>BQ,SemicolonPreference:()=>CQ,SignatureCheckMode:()=>Vz,SignatureFlags:()=>pi,SignatureHelp:()=>sde,SignatureInfo:()=>WK,SignatureKind:()=>_i,SmartSelectionRange:()=>Pde,SnippetKind:()=>ji,StatisticType:()=>eG,StructureIsReused:()=>qr,SymbolAccessibility:()=>Zr,SymbolDisplay:()=>Vde,SymbolDisplayPartKind:()=>IQ,SymbolFlags:()=>ti,SymbolFormatFlags:()=>Yr,SyntaxKind:()=>Nr,SyntheticSymbolKind:()=>Xr,Ternary:()=>yi,ThrottledCancellationToken:()=>h8,TokenClass:()=>FQ,TokenFlags:()=>Fr,TransformFlags:()=>Li,TypeFacts:()=>Uz,TypeFlags:()=>oi,TypeFormatFlags:()=>Qr,TypeMapKind:()=>mi,TypePredicateKind:()=>$r,TypeReferenceSerializationKind:()=>ei,UnionReduction:()=>Jr,UpToDateStatusType:()=>FW,VarianceFlags:()=>ai,Version:()=>Pn,VersionRange:()=>On,WatchDirectoryFlags:()=>Oi,WatchDirectoryKind:()=>ki,WatchFileKind:()=>wi,WatchLogLevel:()=>PV,WatchType:()=>vW,accessPrivateIdentifier:()=>mB,addDisposableResourceHelper:()=>EC,addEmitFlags:()=>_E,addEmitHelper:()=>PE,addEmitHelpers:()=>ME,addInternalEmitFlags:()=>fE,addNodeFactoryPatcher:()=>Wk,addObjectAllocatorPatcher:()=>rS,addRange:()=>me,addRelatedInfo:()=>xw,addSyntheticLeadingComment:()=>kE,addSyntheticTrailingComment:()=>NE,addToSeen:()=>jx,advancedAsyncSuperHelper:()=>AC,affectsDeclarationPathOptionDeclarations:()=>OO,affectsEmitOptionDeclarations:()=>MO,allKeysStartWithDot:()=>hj,altDirectorySeparator:()=>Eo,and:()=>_n,append:()=>_e,appendIfUnique:()=>ge,arrayFrom:()=>Ke,arrayIsEqualTo:()=>le,arrayIsHomogeneous:()=>Fw,arrayIsSorted:()=>ce,arrayOf:()=>Ve,arrayReverseIterator:()=>be,arrayToMap:()=>He,arrayToMultiMap:()=>Qe,arrayToNumericMap:()=>Ge,arraysEqual:()=>I,assertType:()=>mn,assign:()=>Je,assignHelper:()=>rC,asyncDelegator:()=>sC,asyncGeneratorHelper:()=>oC,asyncSuperHelper:()=>NC,asyncValues:()=>aC,attachFileToDiagnostics:()=>_S,awaitHelper:()=>iC,awaiterHelper:()=>lC,base64decode:()=>qb,base64encode:()=>Bb,binarySearch:()=>Oe,binarySearchKey:()=>Fe,bindSourceFile:()=>Gj,breakIntoCharacterSpans:()=>E1,breakIntoWordSpans:()=>C1,buildLinkParts:()=>BX,buildOpts:()=>KO,buildOverload:()=>Rfe,bundlerModuleNameResolver:()=>BL,canBeConvertedToAsync:()=>Z1,canHaveDecorators:()=>xM,canHaveExportModifier:()=>sk,canHaveFlowNode:()=>qh,canHaveIllegalDecorators:()=>jP,canHaveIllegalModifiers:()=>zP,canHaveIllegalType:()=>RP,canHaveIllegalTypeParameters:()=>LP,canHaveJSDoc:()=>Vh,canHaveLocals:()=>vd,canHaveModifiers:()=>bM,canHaveSymbol:()=>yd,canIncludeBindAndCheckDiagnsotics:()=>Ew,canJsonReportNoInputFiles:()=>pR,canProduceDiagnostics:()=>xq,canUsePropertyAccess:()=>ck,canWatchAffectingLocation:()=>LJ,canWatchAtTypes:()=>OJ,canWatchDirectoryOrFile:()=>MJ,cartesianProduct:()=>yn,cast:()=>_t,chainBundle:()=>UU,chainDiagnosticMessages:()=>gS,changeAnyExtension:()=>as,changeCompilerHostLikeToUseCache:()=>VV,changeExtension:()=>cw,changeFullExtension:()=>cs,changesAffectModuleResolution:()=>l_,changesAffectingProgramStructure:()=>d_,characterToRegularExpressionFlag:()=>Hs,childIsDecorated:()=>wm,classElementOrClassElementParameterIsDecorated:()=>Em,classHasClassThisAssignment:()=>IB,classHasDeclaredOrExplicitlyAssignedName:()=>LB,classHasExplicitlyAssignedName:()=>RB,classOrConstructorParameterIsDecorated:()=>km,classPrivateFieldGetHelper:()=>TC,classPrivateFieldInHelper:()=>kC,classPrivateFieldSetHelper:()=>wC,classicNameResolver:()=>Oj,classifier:()=>W8,cleanExtendedConfigCache:()=>CV,clear:()=>F,clearMap:()=>Nx,clearSharedExtendedConfigFileWatcher:()=>EV,climbPastPropertyAccess:()=>tY,climbPastPropertyOrElementAccess:()=>nY,clone:()=>Xe,cloneCompilerOptions:()=>EZ,closeFileWatcher:()=>vx,closeFileWatcherOf:()=>FV,codefix:()=>G8,collapseTextChangeRangesAcrossMultipleVersions:()=>sc,collectExternalModuleInfo:()=>KU,combine:()=>pe,combinePaths:()=>Zo,commandLineOptionOfCustomType:()=>BO,commentPragmas:()=>Gi,commonOptionsWithBuild:()=>CO,commonPackageFolders:()=>yT,compact:()=>ue,compareBooleans:()=>Wt,compareDataObjects:()=>Cx,compareDiagnostics:()=>bS,compareDiagnosticsSkipRelatedInformation:()=>xS,compareEmitHelpers:()=>YE,compareNumberOfDirectorySeparators:()=>rw,comparePaths:()=>ps,comparePathsCaseInsensitive:()=>_s,comparePathsCaseSensitive:()=>ds,comparePatternKeys:()=>yj,compareProperties:()=>Jt,compareStringsCaseInsensitive:()=>Ft,compareStringsCaseInsensitiveEslintCompatible:()=>Rt,compareStringsCaseSensitive:()=>Lt,compareStringsCaseSensitiveUI:()=>Kt,compareTextSpans:()=>Mt,compareValues:()=>Pt,compileOnSaveCommandLineOption:()=>bO,compilerOptionsAffectDeclarationPath:()=>oT,compilerOptionsAffectEmit:()=>iT,compilerOptionsAffectSemanticDiagnostics:()=>rT,compilerOptionsDidYouMeanDiagnostics:()=>oF,compilerOptionsIndicateEsModules:()=>YZ,compose:()=>Et,computeCommonSourceDirectoryOfFilenames:()=>jV,computeLineAndCharacterOfPosition:()=>Xs,computeLineOfPosition:()=>$s,computeLineStarts:()=>Gs,computePositionOfLineAndCharacter:()=>Ys,computeSignature:()=>vJ,computeSignatureWithDiagnostics:()=>yJ,computeSuggestionDiagnostics:()=>B1,computedOptions:()=>PS,concatenate:()=>te,concatenateDiagnosticMessageChains:()=>yS,configDirTemplateSubstitutionOptions:()=>zO,configDirTemplateSubstitutionWatchOptions:()=>UO,consumesNodeCoreModules:()=>G$,contains:()=>A,containsIgnoredPath:()=>Hw,containsObjectRestOrSpread:()=>yM,containsParseError:()=>E_,containsPath:()=>fs,convertCompilerOptionsForTelemetry:()=>JR,convertCompilerOptionsFromJson:()=>yR,convertJsonOption:()=>ER,convertToBase64:()=>Ub,convertToJson:()=>RF,convertToObject:()=>FF,convertToOptionsWithAbsolutePaths:()=>QF,convertToRelativePath:()=>ys,convertToTSConfig:()=>zF,convertTypeAcquisitionFromJson:()=>vR,copyComments:()=>d$,copyEntries:()=>h_,copyLeadingComments:()=>h$,copyProperties:()=>et,copyTrailingAsLeadingComments:()=>y$,copyTrailingComments:()=>g$,couldStartTrivia:()=>ua,countWhere:()=>P,createAbstractBuilder:()=>IJ,createAccessorPropertyBackingField:()=>_M,createAccessorPropertyGetRedirector:()=>pM,createAccessorPropertySetRedirector:()=>fM,createBaseNodeFactory:()=>Lk,createBinaryExpressionTrampoline:()=>rM,createBindingHelper:()=>yC,createBuildInfo:()=>dV,createBuilderProgram:()=>bJ,createBuilderProgramUsingProgramBuildInfo:()=>kJ,createBuilderStatusReporter:()=>VW,createCacheWithRedirects:()=>TL,createCacheableExportInfoMap:()=>C0,createCachedDirectoryStructureHost:()=>TV,createClassNamedEvaluationHelperBlock:()=>OB,createClassThisAssignmentBlock:()=>NB,createClassifier:()=>F0,createCommentDirectivesMap:()=>G_,createCompilerDiagnostic:()=>mS,createCompilerDiagnosticForInvalidCustomType:()=>YO,createCompilerDiagnosticFromMessageChain:()=>hS,createCompilerHost:()=>zV,createCompilerHostFromProgramHost:()=>xW,createCompilerHostWorker:()=>qV,createDetachedDiagnostic:()=>lS,createDiagnosticCollection:()=>ky,createDiagnosticForFileFromMessageChain:()=>Yp,createDiagnosticForNode:()=>Vp,createDiagnosticForNodeArray:()=>Kp,createDiagnosticForNodeArrayFromMessageChain:()=>Hp,createDiagnosticForNodeFromMessageChain:()=>Wp,createDiagnosticForNodeInSourceFile:()=>Jp,createDiagnosticForRange:()=>Xp,createDiagnosticMessageChainFromDiagnostic:()=>Zp,createDiagnosticReporter:()=>QJ,createDocumentPositionMapper:()=>FU,createDocumentRegistry:()=>Z0,createDocumentRegistryInternal:()=>X0,createEmitAndSemanticDiagnosticsBuilderProgram:()=>AJ,createEmitHelperFactory:()=>QE,createEmptyExports:()=>HD,createEvaluator:()=>Ik,createExpressionForJsxElement:()=>XD,createExpressionForJsxFragment:()=>$D,createExpressionForObjectLiteralElementLike:()=>iP,createExpressionForPropertyName:()=>rP,createExpressionFromEntityName:()=>nP,createExternalHelpersImportDeclarationIfNeeded:()=>TP,createFileDiagnostic:()=>pS,createFileDiagnosticFromMessageChain:()=>Qp,createFlowNode:()=>Wj,createForOfBindingStatement:()=>eP,createFutureSourceFile:()=>w0,createGetCanonicalFileName:()=>rn,createGetIsolatedDeclarationErrors:()=>wq,createGetSourceFile:()=>UV,createGetSymbolAccessibilityDiagnosticForNode:()=>Tq,createGetSymbolAccessibilityDiagnosticForNodeName:()=>Sq,createGetSymbolWalker:()=>ez,createIncrementalCompilerHost:()=>DW,createIncrementalProgram:()=>PW,createJsxFactoryExpression:()=>ZD,createLanguageService:()=>v8,createLanguageServiceSourceFile:()=>_8,createMemberAccessForPropertyName:()=>GD,createModeAwareCache:()=>EL,createModeAwareCacheKey:()=>kL,createModuleNotFoundChain:()=>x_,createModuleResolutionCache:()=>DL,createModuleResolutionLoader:()=>mK,createModuleResolutionLoaderUsingGlobalCache:()=>JJ,createModuleSpecifierResolutionHost:()=>ZZ,createMultiMap:()=>nt,createNameResolver:()=>Mk,createNodeConverters:()=>Uk,createNodeFactory:()=>Hk,createOptionNameMap:()=>WO,createOverload:()=>Ffe,createPackageJsonImportFilter:()=>H$,createPackageJsonInfo:()=>W$,createParenthesizerRules:()=>jk,createPatternMatcher:()=>d1,createPrinter:()=>vV,createPrinterWithDefaults:()=>mV,createPrinterWithRemoveComments:()=>hV,createPrinterWithRemoveCommentsNeverAsciiEscape:()=>gV,createPrinterWithRemoveCommentsOmitTrailingSemicolon:()=>yV,createProgram:()=>FK,createProgramHost:()=>wW,createPropertyNameNodeForIdentifierOrLiteral:()=>tk,createQueue:()=>ot,createRange:()=>Yb,createRedirectedBuilderProgram:()=>CJ,createResolutionCache:()=>WJ,createRuntimeTypeSerializer:()=>QB,createScanner:()=>Ia,createSemanticDiagnosticsBuilderProgram:()=>NJ,createSet:()=>st,createSolutionBuilder:()=>HW,createSolutionBuilderHost:()=>JW,createSolutionBuilderWithWatch:()=>GW,createSolutionBuilderWithWatchHost:()=>WW,createSortedArray:()=>oe,createSourceFile:()=>XM,createSourceMapGenerator:()=>gU,createSourceMapSource:()=>sE,createSuperAccessVariableStatement:()=>$B,createSymbolTable:()=>o_,createSymlinkCache:()=>dT,createSyntacticTypeNodeBuilder:()=>LG,createSystemWatchFunctions:()=>xo,createTextChange:()=>jZ,createTextChangeFromStartLength:()=>LZ,createTextChangeRange:()=>ic,createTextRangeFromNode:()=>OZ,createTextRangeFromSpan:()=>RZ,createTextSpan:()=>ec,createTextSpanFromBounds:()=>tc,createTextSpanFromNode:()=>PZ,createTextSpanFromRange:()=>FZ,createTextSpanFromStringLiteralLikeContent:()=>MZ,createTextWriter:()=>Qy,createTokenRange:()=>nx,createTypeChecker:()=>Zz,createTypeReferenceDirectiveResolutionCache:()=>PL,createTypeReferenceResolutionLoader:()=>yK,createWatchCompilerHost:()=>MW,createWatchCompilerHostOfConfigFile:()=>CW,createWatchCompilerHostOfFilesAndCompilerOptions:()=>NW,createWatchFactory:()=>bW,createWatchHost:()=>yW,createWatchProgram:()=>OW,createWatchStatusReporter:()=>$J,createWriteFileMeasuringIO:()=>BV,declarationNameToString:()=>Lp,decodeMappings:()=>EU,decodedTextSpanIntersectsWith:()=>Za,decorateHelper:()=>XE,deduplicate:()=>ie,defaultIncludeSpec:()=>nR,defaultInitCompilerOptions:()=>QO,defaultMaximumTruncationLength:()=>t_,diagnosticCategoryName:()=>xi,diagnosticToString:()=>g0,diagnosticsEqualityComparer:()=>wS,directoryProbablyExists:()=>Wb,directorySeparator:()=>ko,displayPart:()=>CX,displayPartsToString:()=>a8,disposeEmitNodes:()=>lE,disposeResourcesHelper:()=>CC,documentSpansEqual:()=>gX,dumpTracingLegend:()=>Cr,elementAt:()=>Te,elideNodes:()=>aM,emitComments:()=>Rv,emitDetachedComments:()=>Lv,emitFiles:()=>uV,emitFilesAndReportErrors:()=>fW,emitFilesAndReportErrorsAndGetExitStatus:()=>mW,emitModuleKindIsNonNodeESM:()=>QS,emitNewLineBeforeLeadingCommentOfPosition:()=>Fv,emitNewLineBeforeLeadingComments:()=>Mv,emitNewLineBeforeLeadingCommentsOfPosition:()=>Ov,emitResolverSkipsTypeChecking:()=>lV,emitSkippedWithNoDiagnostics:()=>RK,emptyArray:()=>_,emptyFileSystemEntries:()=>yw,emptyMap:()=>p,emptyOptions:()=>bQ,emptySet:()=>f,endsWith:()=>Qt,ensurePathIsNonModuleName:()=>ss,ensureScriptKind:()=>FT,ensureTrailingDirectorySeparator:()=>os,entityNameToString:()=>qp,enumerateInsertsAndDeletes:()=>gn,equalOwnProperties:()=>We,equateStringsCaseInsensitive:()=>At,equateStringsCaseSensitive:()=>It,equateValues:()=>Nt,esDecorateHelper:()=>tC,escapeJsxAttributeString:()=>Vy,escapeLeadingUnderscores:()=>Tc,escapeNonAsciiString:()=>jy,escapeSnippetText:()=>$w,escapeString:()=>Ry,escapeTemplateSubstitution:()=>Cy,evaluatorResult:()=>Ak,every:()=>T,executeCommandLine:()=>gG,expandPreOrPostfixIncrementOrDecrementExpression:()=>oP,explainFiles:()=>cW,explainIfFileIsRedirectAndImpliedFormat:()=>lW,exportAssignmentIsAlias:()=>wg,exportStarHelper:()=>SC,expressionResultIsUnused:()=>Ww,extend:()=>$e,extendsHelper:()=>uC,extensionFromPath:()=>fw,extensionIsTS:()=>_w,extensionsNotSupportingExtensionlessResolution:()=>HT,externalHelpersModuleNameText:()=>e_,factory:()=>oE,fileExtensionIs:()=>Lo,fileExtensionIsOneOf:()=>jo,fileIncludeReasonToDiagnostics:()=>_W,fileShouldUseJavaScriptRequire:()=>S0,filter:()=>M,filterMutate:()=>O,filterSemanticDiagnostics:()=>jK,find:()=>w,findAncestor:()=>bc,findBestPatternMatch:()=>an,findChildOfKind:()=>FY,findComputedPropertyNameCacheAssignment:()=>mM,findConfigFile:()=>RV,findConstructorDeclaration:()=>Pk,findContainingList:()=>RY,findDiagnosticForNode:()=>Z$,findFirstNonJsxWhitespaceToken:()=>ZY,findIndex:()=>E,findLast:()=>k,findLastIndex:()=>C,findListItemInfo:()=>MY,findMap:()=>N,findModifier:()=>pX,findNextToken:()=>$Y,findPackageJson:()=>K$,findPackageJsons:()=>V$,findPrecedingMatchingToken:()=>uZ,findPrecedingToken:()=>eZ,findSuperStatementIndexPath:()=>tB,findTokenOnLeftOfPosition:()=>XY,findUseStrictPrologue:()=>uP,first:()=>Ee,firstDefined:()=>y,firstDefinedIterator:()=>v,firstIterator:()=>Ce,firstOrOnly:()=>n0,firstOrUndefined:()=>we,firstOrUndefinedIterator:()=>ke,fixupCompilerOptions:()=>a2,flatMap:()=>U,flatMapIterator:()=>q,flatMapToMutable:()=>B,flatten:()=>z,flattenCommaList:()=>gM,flattenDestructuringAssignment:()=>vB,flattenDestructuringBinding:()=>SB,flattenDiagnosticMessageText:()=>oK,forEach:()=>h,forEachAncestor:()=>p_,forEachAncestorDirectory:()=>xs,forEachChild:()=>GM,forEachChildRecursively:()=>QM,forEachEmittedFile:()=>Kq,forEachEnclosingBlockScopeContainer:()=>Rp,forEachEntry:()=>f_,forEachExternalModuleToImportFrom:()=>A0,forEachImportClauseDeclaration:()=>Mh,forEachKey:()=>m_,forEachLeadingCommentRange:()=>va,forEachNameInAccessChainWalkingLeft:()=>Jx,forEachNameOfDefaultExport:()=>O0,forEachPropertyAssignment:()=>Zf,forEachResolvedProjectReference:()=>bK,forEachReturnStatement:()=>Of,forEachRight:()=>g,forEachTrailingCommentRange:()=>ba,forEachTsConfigPropArray:()=>tm,forEachUnique:()=>vX,forEachYieldExpression:()=>Ff,forSomeAncestorDirectory:()=>Ox,formatColorAndReset:()=>tK,formatDiagnostic:()=>WV,formatDiagnostics:()=>JV,formatDiagnosticsWithColorAndContext:()=>iK,formatGeneratedName:()=>dM,formatGeneratedNamePart:()=>lM,formatLocation:()=>rK,formatMessage:()=>fS,formatStringFromArgs:()=>oS,formatting:()=>C_e,fullTripleSlashAMDReferencePathRegEx:()=>Nf,fullTripleSlashReferencePathRegEx:()=>kf,generateDjb2Hash:()=>Yi,generateTSConfig:()=>GF,generatorHelper:()=>gC,getAdjustedReferenceLocation:()=>JY,getAdjustedRenameLocation:()=>WY,getAliasDeclarationFromName:()=>Sg,getAllAccessorDeclarations:()=>Cv,getAllDecoratorsOfClass:()=>cB,getAllDecoratorsOfClassElement:()=>lB,getAllJSDocTags:()=>gl,getAllJSDocTagsOfKind:()=>yl,getAllKeys:()=>Be,getAllProjectOutputs:()=>sV,getAllSuperTypeNodes:()=>Ig,getAllowJSCompilerOption:()=>HS,getAllowSyntheticDefaultImports:()=>zS,getAncestor:()=>Mg,getAnyExtensionFromPath:()=>Wo,getAreDeclarationMapsEnabled:()=>WS,getAssignedExpandoInitializer:()=>nh,getAssignedName:()=>Fc,getAssignedNameOfIdentifier:()=>PB,getAssignmentDeclarationKind:()=>dh,getAssignmentDeclarationPropertyAccessKind:()=>xh,getAssignmentTargetKind:()=>ig,getAutomaticTypeDirectiveNames:()=>yL,getBaseFileName:()=>Ko,getBinaryOperatorPrecedence:()=>Ty,getBuildInfo:()=>pV,getBuildInfoFileVersionMap:()=>EJ,getBuildInfoText:()=>_V,getBuildOrderFromAnyBuildOrder:()=>qW,getBuilderCreationParameters:()=>hJ,getBuilderFileEmit:()=>GK,getCanonicalDiagnostic:()=>$p,getCheckFlags:()=>bx,getClassExtendsHeritageElement:()=>Ng,getClassLikeDeclarationOfSymbol:()=>Px,getCombinedLocalAndExportSymbolFlags:()=>Tx,getCombinedModifierFlags:()=>pc,getCombinedNodeFlags:()=>mc,getCombinedNodeFlagsAlwaysIncludeJSDoc:()=>fc,getCommentRange:()=>xE,getCommonSourceDirectory:()=>iV,getCommonSourceDirectoryOfConfig:()=>oV,getCompilerOptionValue:()=>sT,getCompilerOptionsDiffValue:()=>WF,getConditions:()=>hL,getConfigFileParsingDiagnostics:()=>DK,getConstantValue:()=>IE,getContainerFlags:()=>Xj,getContainerNode:()=>hY,getContainingClass:()=>im,getContainingClassExcludingClassDecorators:()=>am,getContainingClassStaticBlock:()=>om,getContainingFunction:()=>nm,getContainingFunctionDeclaration:()=>rm,getContainingFunctionOrClassStaticBlock:()=>sm,getContainingNodeArray:()=>Gw,getContainingObjectLiteralElement:()=>x8,getContextualTypeFromParent:()=>S$,getContextualTypeFromParentOrAncestorTypeNode:()=>UY,getCurrentTime:()=>UW,getDeclarationDiagnostics:()=>kq,getDeclarationEmitExtensionForPath:()=>sv,getDeclarationEmitOutputFilePath:()=>iv,getDeclarationEmitOutputFilePathWorker:()=>ov,getDeclarationFileExtension:()=>uO,getDeclarationFromName:()=>yg,getDeclarationModifierFlagsFromSymbol:()=>xx,getDeclarationOfKind:()=>r_,getDeclarationsOfKind:()=>i_,getDeclaredExpandoInitializer:()=>th,getDecorators:()=>Rc,getDefaultCompilerOptions:()=>c8,getDefaultFormatCodeSettings:()=>NQ,getDefaultLibFileName:()=>Ba,getDefaultLibFilePath:()=>T8,getDefaultLikeExportInfo:()=>P0,getDefaultLikeExportNameFromDeclaration:()=>s0,getDiagnosticText:()=>_F,getDiagnosticsWithinSpan:()=>X$,getDirectoryPath:()=>Vo,getDirectoryToWatchFailedLookupLocation:()=>jJ,getDirectoryToWatchFailedLookupLocationFromTypeRoot:()=>BJ,getDocumentPositionMapper:()=>j1,getDocumentSpansEqualityComparer:()=>yX,getESModuleInterop:()=>jS,getEditsForFileRename:()=>t1,getEffectiveBaseTypeNode:()=>Cg,getEffectiveConstraintOfTypeParameter:()=>xl,getEffectiveContainerForJSDocTemplateTag:()=>Gh,getEffectiveImplementsTypeNodes:()=>Ag,getEffectiveInitializer:()=>eh,getEffectiveJSDocHost:()=>Zh,getEffectiveModifierFlags:()=>nb,getEffectiveModifierFlagsAlwaysIncludeJSDoc:()=>rb,getEffectiveModifierFlagsNoCache:()=>ab,getEffectiveReturnTypeNode:()=>Iv,getEffectiveSetAccessorTypeAnnotationNode:()=>Pv,getEffectiveTypeAnnotationNode:()=>Nv,getEffectiveTypeParameterDeclarations:()=>bl,getEffectiveTypeRoots:()=>uL,getElementOrPropertyAccessArgumentExpressionOrName:()=>vh,getElementOrPropertyAccessName:()=>bh,getElementsOfBindingOrAssignmentPattern:()=>OP,getEmitDeclarations:()=>VS,getEmitFlags:()=>rp,getEmitHelpers:()=>FE,getEmitModuleDetectionKind:()=>RS,getEmitModuleKind:()=>OS,getEmitModuleResolutionKind:()=>FS,getEmitScriptTarget:()=>MS,getEmitStandardClassFields:()=>nT,getEnclosingBlockScopeContainer:()=>Fp,getEnclosingContainer:()=>Op,getEncodedSemanticClassifications:()=>K0,getEncodedSyntacticClassifications:()=>Q0,getEndLinePosition:()=>M_,getEntityNameFromTypeNode:()=>vm,getEntrypointsFromPackageJsonInfo:()=>sj,getErrorCountForSummary:()=>tW,getErrorSpanForNode:()=>nf,getErrorSummaryText:()=>oW,getEscapedTextOfIdentifierOrLiteral:()=>ey,getEscapedTextOfJsxAttributeName:()=>hk,getEscapedTextOfJsxNamespacedName:()=>vk,getExpandoInitializer:()=>rh,getExportAssignmentExpression:()=>kg,getExportInfoMap:()=>D0,getExportNeedsImportStarHelper:()=>BU,getExpressionAssociativity:()=>gy,getExpressionPrecedence:()=>vy,getExternalHelpersModuleName:()=>xP,getExternalModuleImportEqualsDeclarationExpression:()=>Om,getExternalModuleName:()=>Ih,getExternalModuleNameFromDeclaration:()=>tv,getExternalModuleNameFromPath:()=>nv,getExternalModuleNameLiteral:()=>EP,getExternalModuleRequireArgument:()=>Fm,getFallbackOptions:()=>OV,getFileEmitOutput:()=>KK,getFileMatcherPatterns:()=>IT,getFileNamesFromConfigSpecs:()=>MR,getFileWatcherEventKind:()=>_o,getFilesInErrorForSummary:()=>nW,getFirstConstructorWithBody:()=>yv,getFirstIdentifier:()=>kb,getFirstNonSpaceCharacterPosition:()=>t$,getFirstProjectOutput:()=>cV,getFixableErrorSpanExpression:()=>e0,getFormatCodeSettingsForWriting:()=>y0,getFullWidth:()=>y_,getFunctionFlags:()=>Jg,getHeritageClause:()=>Pg,getHostSignatureFromJSDoc:()=>Yh,getIdentifierAutoGenerate:()=>JE,getIdentifierGeneratedImportReference:()=>HE,getIdentifierTypeArguments:()=>VE,getImmediatelyInvokedFunctionExpression:()=>pm,getImpliedNodeFormatForFile:()=>PK,getImpliedNodeFormatForFileWorker:()=>MK,getImportNeedsImportDefaultHelper:()=>VU,getImportNeedsImportStarHelper:()=>qU,getIndentSize:()=>Gy,getIndentString:()=>Hy,getInferredLibraryNameResolveFrom:()=>TK,getInitializedVariables:()=>hx,getInitializerOfBinaryExpression:()=>Sh,getInitializerOfBindingOrAssignmentElement:()=>NP,getInterfaceBaseTypeNodes:()=>Dg,getInternalEmitFlags:()=>ip,getInvokedExpression:()=>bm,getIsolatedModules:()=>LS,getJSDocAugmentsTag:()=>Jc,getJSDocClassTag:()=>Hc,getJSDocCommentRanges:()=>wf,getJSDocCommentsAndTags:()=>Kh,getJSDocDeprecatedTag:()=>rl,getJSDocDeprecatedTagNoCache:()=>il,getJSDocEnumTag:()=>ol,getJSDocHost:()=>Xh,getJSDocImplementsTags:()=>Wc,getJSDocOverloadTags:()=>Qh,getJSDocOverrideTagNoCache:()=>nl,getJSDocParameterTags:()=>zc,getJSDocParameterTagsNoCache:()=>Uc,getJSDocPrivateTag:()=>Yc,getJSDocPrivateTagNoCache:()=>Zc,getJSDocProtectedTag:()=>Xc,getJSDocProtectedTagNoCache:()=>$c,getJSDocPublicTag:()=>Gc,getJSDocPublicTagNoCache:()=>Qc,getJSDocReadonlyTag:()=>el,getJSDocReadonlyTagNoCache:()=>tl,getJSDocReturnTag:()=>al,getJSDocReturnType:()=>_l,getJSDocRoot:()=>$h,getJSDocSatisfiesExpressionType:()=>fk,getJSDocSatisfiesTag:()=>ll,getJSDocTags:()=>fl,getJSDocTagsNoCache:()=>ml,getJSDocTemplateTag:()=>cl,getJSDocThisTag:()=>sl,getJSDocType:()=>dl,getJSDocTypeAliasName:()=>FP,getJSDocTypeAssertionType:()=>mP,getJSDocTypeParameterDeclarations:()=>Dv,getJSDocTypeParameterTags:()=>qc,getJSDocTypeParameterTagsNoCache:()=>Vc,getJSDocTypeTag:()=>ul,getJSXImplicitImportBase:()=>cT,getJSXRuntimeImport:()=>lT,getJSXTransformEnabled:()=>aT,getKeyForCompilerOptions:()=>SL,getLanguageVariant:()=>CS,getLastChild:()=>Lx,getLeadingCommentRanges:()=>wa,getLeadingCommentRangesOfNode:()=>Tf,getLeftmostAccessExpression:()=>Kx,getLeftmostExpression:()=>Wx,getLibraryNameFromLibFileName:()=>wK,getLineAndCharacterOfPosition:()=>ta,getLineInfo:()=>xU,getLineOfLocalPosition:()=>hv,getLineOfLocalPositionFromLineMap:()=>gv,getLineStartPositionForPosition:()=>bY,getLineStarts:()=>Zs,getLinesBetweenPositionAndNextNonWhitespaceCharacter:()=>fx,getLinesBetweenPositionAndPrecedingNonWhitespaceCharacter:()=>px,getLinesBetweenPositions:()=>ea,getLinesBetweenRangeEndAndRangeStart:()=>cx,getLinesBetweenRangeEndPositions:()=>lx,getLiteralText:()=>ap,getLocalNameForExternalImport:()=>kP,getLocalSymbolForExportDefault:()=>Lb,getLocaleSpecificMessage:()=>cS,getLocaleTimeString:()=>XJ,getMappedContextSpan:()=>TX,getMappedDocumentSpan:()=>SX,getMappedLocation:()=>xX,getMatchedFileSpec:()=>uW,getMatchedIncludeSpec:()=>dW,getMeaningFromDeclaration:()=>qQ,getMeaningFromLocation:()=>VQ,getMembersOfDeclaration:()=>Lf,getModeForFileReference:()=>sK,getModeForResolutionAtIndex:()=>aK,getModeForUsageLocation:()=>lK,getModifiedTime:()=>to,getModifiers:()=>Lc,getModuleInstanceState:()=>qj,getModuleNameStringLiteralAt:()=>VK,getModuleSpecifierEndingPreference:()=>ew,getModuleSpecifierResolverHost:()=>XZ,getNameForExportedSymbol:()=>i0,getNameFromImportAttribute:()=>Nk,getNameFromIndexInfo:()=>jp,getNameFromPropertyName:()=>HZ,getNameOfAccessExpression:()=>qx,getNameOfCompilerOptionValue:()=>VF,getNameOfDeclaration:()=>Oc,getNameOfExpando:()=>oh,getNameOfJSDocTypedef:()=>Dc,getNameOfScriptTarget:()=>tT,getNameOrArgument:()=>yh,getNameTable:()=>b8,getNamesForExportedSymbol:()=>r0,getNamespaceDeclarationNode:()=>Dh,getNewLineCharacter:()=>Qb,getNewLineKind:()=>h0,getNewLineOrDefaultFromHost:()=>VX,getNewTargetContainer:()=>dm,getNextJSDocCommentLocation:()=>Wh,getNodeChildren:()=>VD,getNodeForGeneratedName:()=>cM,getNodeId:()=>Gz,getNodeKind:()=>gY,getNodeModifiers:()=>yZ,getNodeModulePathParts:()=>rk,getNonAssignedNameOfDeclaration:()=>Mc,getNonAssignmentOperatorForCompoundAssignment:()=>XU,getNonAugmentationDeclaration:()=>xp,getNonDecoratorTokenPosOfNode:()=>Y_,getNormalizedAbsolutePath:()=>es,getNormalizedAbsolutePathWithoutRoot:()=>ns,getNormalizedPathComponents:()=>$o,getObjectFlags:()=>Mx,getOperator:()=>by,getOperatorAssociativity:()=>yy,getOperatorPrecedence:()=>Sy,getOptionFromName:()=>aF,getOptionsForLibraryResolution:()=>ML,getOptionsNameMap:()=>HO,getOrCreateEmitNode:()=>cE,getOrCreateExternalHelpersModuleNameIfNeeded:()=>wP,getOrUpdate:()=>G,getOriginalNode:()=>vc,getOriginalNodeId:()=>LU,getOriginalSourceFile:()=>my,getOutputDeclarationFileName:()=>Zq,getOutputDeclarationFileNameWorker:()=>Xq,getOutputExtension:()=>Qq,getOutputFileNames:()=>aV,getOutputJSFileNameWorker:()=>eV,getOutputPathsFor:()=>Hq,getOutputPathsForBundle:()=>Wq,getOwnEmitOutputFilePath:()=>rv,getOwnKeys:()=>Ue,getOwnValues:()=>qe,getPackageJsonInfo:()=>_j,getPackageJsonTypesVersionsPaths:()=>lL,getPackageJsonsVisibleToFile:()=>J$,getPackageNameFromTypesPackageName:()=>Dj,getPackageScopeForPath:()=>lj,getParameterSymbolFromJSDoc:()=>Hh,getParameterTypeNode:()=>ik,getParentNodeInSpan:()=>dX,getParseTreeNode:()=>Sc,getParsedCommandLineOfConfigFile:()=>pF,getPathComponents:()=>Ho,getPathComponentsRelativeTo:()=>hs,getPathFromPathComponents:()=>Go,getPathUpdater:()=>n1,getPathsBasePath:()=>cv,getPatternFromSpec:()=>CT,getPendingEmitKind:()=>QK,getPositionOfLineAndCharacter:()=>Qs,getPossibleGenericSignatures:()=>pZ,getPossibleOriginalInputExtensionForExtension:()=>av,getPossibleTypeArgumentsInfo:()=>fZ,getPreEmitDiagnostics:()=>KV,getPrecedingNonSpaceCharacterPosition:()=>n$,getPrivateIdentifier:()=>pB,getProperties:()=>nB,getProperty:()=>ze,getPropertyArrayElementValue:()=>Xf,getPropertyAssignmentAliasLikeExpression:()=>Eg,getPropertyNameForPropertyNameNode:()=>Zg,getPropertyNameForUniqueESSymbol:()=>ty,getPropertyNameFromType:()=>Tk,getPropertyNameOfBindingOrAssignmentElement:()=>DP,getPropertySymbolFromBindingElement:()=>uX,getPropertySymbolsFromContextualType:()=>S8,getQuoteFromPreference:()=>oX,getQuotePreference:()=>iX,getRangesWhere:()=>ee,getRefactorContextSpan:()=>$$,getReferencedFileLocation:()=>AK,getRegexFromPattern:()=>DT,getRegularExpressionForWildcard:()=>wT,getRegularExpressionsForWildcards:()=>kT,getRelativePathFromDirectory:()=>gs,getRelativePathFromFile:()=>vs,getRelativePathToDirectoryOrUrl:()=>bs,getRenameLocation:()=>m$,getReplacementSpanForContextToken:()=>DZ,getResolutionDiagnostic:()=>BK,getResolutionModeOverride:()=>dK,getResolveJsonModule:()=>qS,getResolvePackageJsonExports:()=>US,getResolvePackageJsonImports:()=>BS,getResolvedExternalModuleName:()=>$y,getRestIndicatorOfBindingOrAssignmentElement:()=>IP,getRestParameterElementType:()=>Rf,getRightMostAssignedExpression:()=>ah,getRootDeclaration:()=>_y,getRootDirectoryOfResolutionCache:()=>qJ,getRootLength:()=>qo,getRootPathSplitLength:()=>VJ,getScriptKind:()=>ZX,getScriptKindFromFileName:()=>RT,getScriptTargetFeatures:()=>op,getSelectedEffectiveModifierFlags:()=>$v,getSelectedSyntacticModifierFlags:()=>eb,getSemanticClassifications:()=>q0,getSemanticJsxChildren:()=>wy,getSetAccessorTypeAnnotationNode:()=>bv,getSetAccessorValueParameter:()=>vv,getSetExternalModuleIndicator:()=>DS,getShebang:()=>Ea,getSingleInitializerOfVariableStatementOrPropertyDeclaration:()=>zh,getSingleVariableOfVariableStatement:()=>Uh,getSnapshotText:()=>KZ,getSnippetElement:()=>LE,getSourceFileOfModule:()=>N_,getSourceFileOfNode:()=>C_,getSourceFilePathInNewDir:()=>dv,getSourceFilePathInNewDirWorker:()=>_v,getSourceFileVersionAsHashFromText:()=>SW,getSourceFilesToEmit:()=>lv,getSourceMapRange:()=>mE,getSourceMapper:()=>L1,getSourceTextOfNodeFromSourceFile:()=>Z_,getSpanOfTokenAtPosition:()=>ef,getSpellingSuggestion:()=>Ht,getStartPositionOfLine:()=>D_,getStartPositionOfRange:()=>_x,getStartsOnNewLine:()=>vE,getStaticPropertiesAndClassStaticBlock:()=>iB,getStrictOptionValue:()=>eT,getStringComparer:()=>jt,getSubPatternFromSpec:()=>NT,getSuperCallFromStatement:()=>$U,getSuperContainer:()=>_m,getSupportedCodeFixes:()=>l8,getSupportedExtensions:()=>GT,getSupportedExtensionsWithJsonIfResolveJsonModule:()=>QT,getSwitchedType:()=>C$,getSymbolId:()=>Qz,getSymbolNameForPrivateIdentifier:()=>ny,getSymbolParentOrFail:()=>a0,getSymbolTarget:()=>XX,getSyntacticClassifications:()=>G0,getSyntacticModifierFlags:()=>ib,getSyntacticModifierFlagsNoCache:()=>cb,getSynthesizedDeepClone:()=>r$,getSynthesizedDeepCloneWithReplacements:()=>i$,getSynthesizedDeepClones:()=>s$,getSynthesizedDeepClonesWithReplacements:()=>a$,getSyntheticLeadingComments:()=>TE,getSyntheticTrailingComments:()=>EE,getTargetLabel:()=>rY,getTargetOfBindingOrAssignmentElement:()=>AP,getTemporaryModuleResolutionState:()=>cj,getTextOfConstantValue:()=>cp,getTextOfIdentifierOrLiteral:()=>$g,getTextOfJSDocComment:()=>vl,getTextOfJsxAttributeName:()=>gk,getTextOfJsxNamespacedName:()=>bk,getTextOfNode:()=>ep,getTextOfNodeFromSourceText:()=>$_,getTextOfPropertyName:()=>Bp,getThisContainer:()=>cm,getThisParameter:()=>xv,getTokenAtPosition:()=>QY,getTokenPosOfNode:()=>Q_,getTokenSourceMapRange:()=>gE,getTouchingPropertyName:()=>HY,getTouchingToken:()=>GY,getTrailingCommentRanges:()=>ka,getTrailingSemicolonDeferringWriter:()=>Yy,getTransformFlagsSubtreeExclusions:()=>tE,getTransformers:()=>Pq,getTsBuildInfoEmitOutputFilePath:()=>Jq,getTsConfigObjectLiteralExpression:()=>$f,getTsConfigPropArrayElementValue:()=>em,getTypeAnnotationNode:()=>Av,getTypeArgumentOrTypeParameterList:()=>vZ,getTypeKeywordOfTypeOnlyImport:()=>mX,getTypeNode:()=>BE,getTypeNodeIfAccessible:()=>A$,getTypeParameterFromJsDoc:()=>eg,getTypeParameterOwner:()=>ac,getTypesPackageName:()=>Aj,getUILocale:()=>qt,getUniqueName:()=>f$,getUniqueSymbolId:()=>e$,getUseDefineForClassFields:()=>GS,getWatchErrorSummaryDiagnosticMessage:()=>rW,getWatchFactory:()=>MV,group:()=>Ye,groupBy:()=>Ze,guessIndentation:()=>Wd,handleNoEmitOptions:()=>LK,handleWatchOptionsConfigDirTemplateSubstitution:()=>iR,hasAbstractModifier:()=>Gv,hasAccessorModifier:()=>Yv,hasAmbientModifier:()=>Qv,hasChangesInResolutions:()=>k_,hasChildOfKind:()=>OY,hasContextSensitiveParameters:()=>Qw,hasDecorators:()=>Xv,hasDocComment:()=>hZ,hasDynamicName:()=>Qg,hasEffectiveModifier:()=>Vv,hasEffectiveModifiers:()=>Bv,hasEffectiveReadonlyModifier:()=>Zv,hasExtension:()=>Ro,hasIndexSignature:()=>E$,hasInferredType:()=>Rk,hasInitializer:()=>Bd,hasInvalidEscape:()=>Ay,hasJSDocNodes:()=>zd,hasJSDocParameterTags:()=>Kc,hasJSFileExtension:()=>YT,hasJsonModuleEmitEnabled:()=>YS,hasOnlyExpressionInitializer:()=>qd,hasOverrideModifier:()=>Hv,hasPossibleExternalModuleReference:()=>Pp,hasProperty:()=>je,hasPropertyAccessExpressionWithName:()=>iY,hasQuestionToken:()=>Oh,hasRecordedExternalHelpers:()=>SP,hasResolutionModeOverride:()=>kk,hasRestParameter:()=>Qd,hasScopeMarker:()=>sd,hasStaticModifier:()=>Wv,hasSyntacticModifier:()=>Kv,hasSyntacticModifiers:()=>qv,hasTSFileExtension:()=>ZT,hasTabstop:()=>lk,hasTrailingDirectorySeparator:()=>zo,hasType:()=>Ud,hasTypeArguments:()=>tg,hasZeroOrOneAsteriskCharacter:()=>uT,helperString:()=>ZE,hostGetCanonicalFileName:()=>Xy,hostUsesCaseSensitiveFileNames:()=>Zy,idText:()=>kc,identifierIsThisKeyword:()=>Ev,identifierToKeywordKind:()=>Ec,identity:()=>gt,identitySourceMapConsumer:()=>RU,ignoreSourceNewlines:()=>zE,ignoredPaths:()=>po,importDefaultHelper:()=>xC,importFromModuleSpecifier:()=>Nh,importStarHelper:()=>bC,indexOfAnyCharCode:()=>D,indexOfNode:()=>np,indicesOf:()=>re,inferredTypesContainingFile:()=>SK,injectClassNamedEvaluationHelperBlockIfMissing:()=>jB,injectClassThisAssignmentIfMissing:()=>DB,insertImports:()=>fX,insertLeadingStatement:()=>tP,insertSorted:()=>se,insertStatementAfterCustomPrologue:()=>J_,insertStatementAfterStandardPrologue:()=>K_,insertStatementsAfterCustomPrologue:()=>V_,insertStatementsAfterStandardPrologue:()=>q_,intersperse:()=>S,intrinsicTagNameToString:()=>xk,introducesArgumentsExoticObject:()=>Kf,inverseJsxOptionMap:()=>SO,isAbstractConstructorSymbol:()=>Dx,isAbstractModifier:()=>oN,isAccessExpression:()=>Bx,isAccessibilityModifier:()=>kZ,isAccessor:()=>Su,isAccessorModifier:()=>aN,isAliasSymbolDeclaration:()=>xg,isAliasableExpression:()=>Tg,isAmbientModule:()=>_p,isAmbientPropertyDeclaration:()=>wp,isAnonymousFunctionDefinition:()=>ay,isAnyDirectorySeparator:()=>Ao,isAnyImportOrBareOrAccessedRequire:()=>Ap,isAnyImportOrReExport:()=>Mp,isAnyImportOrRequireStatement:()=>Ip,isAnyImportSyntax:()=>Np,isAnySupportedFileExtension:()=>mw,isApplicableVersionedTypesKey:()=>xj,isArgumentExpressionOfElementAccess:()=>dY,isArray:()=>at,isArrayBindingElement:()=>Fu,isArrayBindingOrAssignmentElement:()=>qu,isArrayBindingOrAssignmentPattern:()=>Bu,isArrayBindingPattern:()=>XN,isArrayLiteralExpression:()=>eA,isArrayLiteralOrObjectLiteralDestructuringPattern:()=>CZ,isArrayTypeNode:()=>MN,isArrowFunction:()=>uA,isAsExpression:()=>kA,isAssertClause:()=>fI,isAssertEntry:()=>mI,isAssertionExpression:()=>nd,isAssertsKeyword:()=>tN,isAssignmentDeclaration:()=>$m,isAssignmentExpression:()=>bb,isAssignmentOperator:()=>gb,isAssignmentPattern:()=>Ou,isAssignmentTarget:()=>og,isAsteriskToken:()=>KC,isAsyncFunction:()=>Wg,isAsyncModifier:()=>eN,isAutoAccessorPropertyDeclaration:()=>Tu,isAwaitExpression:()=>fA,isAwaitKeyword:()=>nN,isBigIntLiteral:()=>PC,isBinaryExpression:()=>gA,isBinaryOperatorToken:()=>YP,isBindableObjectDefinePropertyCall:()=>_h,isBindableStaticAccessExpression:()=>mh,isBindableStaticElementAccessExpression:()=>hh,isBindableStaticNameExpression:()=>gh,isBindingElement:()=>$N,isBindingElementOfBareOrAccessedRequire:()=>Gm,isBindingName:()=>_u,isBindingOrAssignmentElement:()=>Lu,isBindingOrAssignmentPattern:()=>ju,isBindingPattern:()=>Mu,isBlock:()=>OA,isBlockLike:()=>T0,isBlockOrCatchScoped:()=>up,isBlockScope:()=>kp,isBlockScopedContainerTopLevel:()=>gp,isBooleanLiteral:()=>hu,isBreakOrContinueStatement:()=>Fl,isBreakStatement:()=>JA,isBuild:()=>hG,isBuildInfoFile:()=>Vq,isBuilderProgram:()=>sW,isBundle:()=>ZI,isCallChain:()=>El,isCallExpression:()=>iA,isCallExpressionTarget:()=>JQ,isCallLikeExpression:()=>Wu,isCallLikeOrFunctionLikeExpression:()=>Ju,isCallOrNewExpression:()=>Hu,isCallOrNewExpressionTarget:()=>HQ,isCallSignatureDeclaration:()=>wN,isCallToHelper:()=>IC,isCaseBlock:()=>cI,isCaseClause:()=>qI,isCaseKeyword:()=>uN,isCaseOrDefaultClause:()=>Md,isCatchClause:()=>JI,isCatchClauseVariableDeclaration:()=>Zw,isCatchClauseVariableDeclarationOrBindingElement:()=>dp,isCheckJsEnabledForFile:()=>gw,isChildOfNodeWithKind:()=>Mf,isCircularBuildOrder:()=>BW,isClassDeclaration:()=>nI,isClassElement:()=>bu,isClassExpression:()=>SA,isClassInstanceProperty:()=>wu,isClassLike:()=>xu,isClassMemberModifier:()=>cu,isClassNamedEvaluationHelperBlock:()=>FB,isClassOrTypeElement:()=>Au,isClassStaticBlockDeclaration:()=>bN,isClassThisAssignmentBlock:()=>AB,isCollapsedRange:()=>tx,isColonToken:()=>HC,isCommaExpression:()=>_P,isCommaListExpression:()=>DA,isCommaSequence:()=>pP,isCommaToken:()=>BC,isComment:()=>bZ,isCommonJsExportPropertyAssignment:()=>qf,isCommonJsExportedExpression:()=>Bf,isCompoundAssignment:()=>ZU,isComputedNonLiteralName:()=>zp,isComputedPropertyName:()=>_N,isConciseBody:()=>ud,isConditionalExpression:()=>yA,isConditionalTypeNode:()=>UN,isConstAssertion:()=>Dk,isConstTypeReference:()=>Pl,isConstructSignatureDeclaration:()=>kN,isConstructorDeclaration:()=>xN,isConstructorTypeNode:()=>IN,isContextualKeyword:()=>Lg,isContinueStatement:()=>KA,isCustomPrologue:()=>vf,isDebuggerStatement:()=>XA,isDeclaration:()=>Sd,isDeclarationBindingElement:()=>Ru,isDeclarationFileName:()=>lO,isDeclarationName:()=>gg,isDeclarationNameOfEnumOrNamespace:()=>mx,isDeclarationReadonly:()=>cf,isDeclarationStatement:()=>Td,isDeclarationWithTypeParameterChildren:()=>Cp,isDeclarationWithTypeParameters:()=>Ep,isDecorator:()=>mN,isDecoratorTarget:()=>QQ,isDefaultClause:()=>VI,isDefaultImport:()=>Ph,isDefaultModifier:()=>$C,isDefaultedExpandoInitializer:()=>ih,isDeleteExpression:()=>dA,isDeleteTarget:()=>mg,isDeprecatedDeclaration:()=>f0,isDestructuringAssignment:()=>Sb,isDiagnosticWithLocation:()=>Y$,isDiskPathRoot:()=>Po,isDoStatement:()=>zA,isDocumentRegistryEntry:()=>Y0,isDotDotDotToken:()=>UC,isDottedName:()=>Eb,isDynamicName:()=>Yg,isESSymbolIdentifier:()=>oy,isEffectiveExternalModule:()=>Sp,isEffectiveModuleDeclaration:()=>mp,isEffectiveStrictModeSourceFile:()=>Tp,isElementAccessChain:()=>kl,isElementAccessExpression:()=>rA,isEmittedFileOfProgram:()=>DV,isEmptyArrayLiteral:()=>Rb,isEmptyBindingElement:()=>uc,isEmptyBindingPattern:()=>lc,isEmptyObjectLiteral:()=>Fb,isEmptyStatement:()=>RA,isEmptyStringLiteral:()=>Cm,isEntityName:()=>uu,isEntityNameExpression:()=>wb,isEnumConst:()=>af,isEnumDeclaration:()=>oI,isEnumMember:()=>QI,isEqualityOperatorKind:()=>w$,isEqualsGreaterThanToken:()=>QC,isExclamationToken:()=>JC,isExcludedFile:()=>OR,isExclusivelyTypeOnlyImportOrExport:()=>cK,isExpandoPropertyDeclaration:()=>wk,isExportAssignment:()=>SI,isExportDeclaration:()=>TI,isExportModifier:()=>XC,isExportName:()=>cP,isExportNamespaceAsDefaultDeclaration:()=>X_,isExportOrDefaultModifier:()=>oM,isExportSpecifier:()=>kI,isExportsIdentifier:()=>ch,isExportsOrModuleExportsOrAlias:()=>Zj,isExpression:()=>td,isExpressionNode:()=>Am,isExpressionOfExternalModuleImportEqualsDeclaration:()=>mY,isExpressionOfOptionalChainRoot:()=>Al,isExpressionStatement:()=>LA,isExpressionWithTypeArguments:()=>wA,isExpressionWithTypeArgumentsInClassExtendsClause:()=>Tb,isExternalModule:()=>tO,isExternalModuleAugmentation:()=>vp,isExternalModuleImportEqualsDeclaration:()=>Mm,isExternalModuleIndicator:()=>cd,isExternalModuleNameRelative:()=>za,isExternalModuleReference:()=>AI,isExternalModuleSymbol:()=>a_,isExternalOrCommonJsModule:()=>of,isFileLevelReservedGeneratedIdentifier:()=>ru,isFileLevelUniqueName:()=>O_,isFileProbablyExternalModule:()=>CM,isFirstDeclarationOfSymbolParameter:()=>wX,isFixablePromiseHandler:()=>W1,isForInOrOfStatement:()=>ld,isForInStatement:()=>qA,isForInitializer:()=>_d,isForOfStatement:()=>VA,isForStatement:()=>BA,isFullSourceFile:()=>Lm,isFunctionBlock:()=>Wf,isFunctionBody:()=>dd,isFunctionDeclaration:()=>tI,isFunctionExpression:()=>lA,isFunctionExpressionOrArrowFunction:()=>Xw,isFunctionLike:()=>pu,isFunctionLikeDeclaration:()=>mu,isFunctionLikeKind:()=>yu,isFunctionLikeOrClassStaticBlockDeclaration:()=>fu,isFunctionOrConstructorTypeNode:()=>Pu,isFunctionOrModuleBlock:()=>vu,isFunctionSymbol:()=>Eh,isFunctionTypeNode:()=>AN,isFutureReservedKeyword:()=>zg,isGeneratedIdentifier:()=>tu,isGeneratedPrivateIdentifier:()=>nu,isGetAccessor:()=>jd,isGetAccessorDeclaration:()=>SN,isGetOrSetAccessorDeclaration:()=>Tl,isGlobalDeclaration:()=>_0,isGlobalScopeAugmentation:()=>yp,isGlobalSourceFile:()=>rf,isGrammarError:()=>L_,isHeritageClause:()=>KI,isHoistedFunction:()=>bf,isHoistedVariableStatement:()=>Sf,isIdentifier:()=>YC,isIdentifierANonContextualKeyword:()=>qg,isIdentifierName:()=>bg,isIdentifierOrThisTypeNode:()=>BP,isIdentifierPart:()=>Na,isIdentifierStart:()=>Ca,isIdentifierText:()=>Aa,isIdentifierTypePredicate:()=>Qf,isIdentifierTypeReference:()=>Ow,isIfStatement:()=>jA,isIgnoredFileFromWildCardWatching:()=>IV,isImplicitGlob:()=>ET,isImportAttribute:()=>gI,isImportAttributeName:()=>eu,isImportAttributes:()=>hI,isImportCall:()=>mf,isImportClause:()=>_I,isImportDeclaration:()=>dI,isImportEqualsDeclaration:()=>uI,isImportKeyword:()=>lN,isImportMeta:()=>hf,isImportOrExportSpecifier:()=>Ql,isImportOrExportSpecifierName:()=>YX,isImportSpecifier:()=>xI,isImportTypeAssertionContainer:()=>pI,isImportTypeNode:()=>GN,isImportableFile:()=>N0,isInComment:()=>mZ,isInCompoundLikeAssignment:()=>sg,isInExpressionContext:()=>Im,isInJSDoc:()=>Vm,isInJSFile:()=>Um,isInJSXText:()=>cZ,isInJsonFile:()=>Bm,isInNonReferenceComment:()=>AZ,isInReferenceComment:()=>NZ,isInRightSideOfInternalImportEqualsDeclaration:()=>KQ,isInString:()=>iZ,isInTemplateString:()=>aZ,isInTopLevelContext:()=>um,isInTypeQuery:()=>wv,isIncrementalCompilation:()=>JS,isIndexSignatureDeclaration:()=>EN,isIndexedAccessTypeNode:()=>JN,isInferTypeNode:()=>BN,isInfinityOrNaNString:()=>Yw,isInitializedProperty:()=>oB,isInitializedVariable:()=>gx,isInsideJsxElement:()=>lZ,isInsideJsxElementOrAttribute:()=>oZ,isInsideNodeModules:()=>Q$,isInsideTemplateLiteral:()=>wZ,isInstanceOfExpression:()=>Mb,isInstantiatedModule:()=>Yz,isInterfaceDeclaration:()=>rI,isInternalDeclaration:()=>Xd,isInternalModuleImportEqualsDeclaration:()=>Rm,isInternalName:()=>sP,isIntersectionTypeNode:()=>zN,isIntrinsicJsxName:()=>Jy,isIterationStatement:()=>id,isJSDoc:()=>_D,isJSDocAllType:()=>iD,isJSDocAugmentsTag:()=>mD,isJSDocAuthorTag:()=>hD,isJSDocCallbackTag:()=>yD,isJSDocClassTag:()=>gD,isJSDocCommentContainingNode:()=>Fd,isJSDocConstructSignature:()=>Fh,isJSDocDeprecatedTag:()=>kD,isJSDocEnumTag:()=>CD,isJSDocFunctionType:()=>lD,isJSDocImplementsTag:()=>RD,isJSDocImportTag:()=>zD,isJSDocIndexSignature:()=>Km,isJSDocLikeText:()=>EM,isJSDocLink:()=>tD,isJSDocLinkCode:()=>nD,isJSDocLinkLike:()=>Gd,isJSDocLinkPlain:()=>rD,isJSDocMemberName:()=>eD,isJSDocNameReference:()=>$I,isJSDocNamepathType:()=>dD,isJSDocNamespaceBody:()=>md,isJSDocNode:()=>Od,isJSDocNonNullableType:()=>aD,isJSDocNullableType:()=>sD,isJSDocOptionalParameter:()=>uk,isJSDocOptionalType:()=>cD,isJSDocOverloadTag:()=>wD,isJSDocOverrideTag:()=>TD,isJSDocParameterTag:()=>ND,isJSDocPrivateTag:()=>bD,isJSDocPropertyLikeTag:()=>Ll,isJSDocPropertyTag:()=>FD,isJSDocProtectedTag:()=>xD,isJSDocPublicTag:()=>vD,isJSDocReadonlyTag:()=>SD,isJSDocReturnTag:()=>AD,isJSDocSatisfiesExpression:()=>pk,isJSDocSatisfiesTag:()=>LD,isJSDocSeeTag:()=>ED,isJSDocSignature:()=>fD,isJSDocTag:()=>Rd,isJSDocTemplateTag:()=>PD,isJSDocThisTag:()=>ID,isJSDocThrowsTag:()=>jD,isJSDocTypeAlias:()=>Rh,isJSDocTypeAssertion:()=>fP,isJSDocTypeExpression:()=>XI,isJSDocTypeLiteral:()=>pD,isJSDocTypeTag:()=>DD,isJSDocTypedefTag:()=>MD,isJSDocUnknownTag:()=>OD,isJSDocUnknownType:()=>oD,isJSDocVariadicType:()=>uD,isJSXTagName:()=>Nm,isJsonEqual:()=>Cw,isJsonSourceFile:()=>sf,isJsxAttribute:()=>LI,isJsxAttributeLike:()=>Id,isJsxAttributeName:()=>yk,isJsxAttributes:()=>jI,isJsxChild:()=>Ad,isJsxClosingElement:()=>MI,isJsxClosingFragment:()=>RI,isJsxElement:()=>II,isJsxExpression:()=>UI,isJsxFragment:()=>OI,isJsxNamespacedName:()=>BI,isJsxOpeningElement:()=>PI,isJsxOpeningFragment:()=>FI,isJsxOpeningLikeElement:()=>Pd,isJsxOpeningLikeElementTagName:()=>YQ,isJsxSelfClosingElement:()=>DI,isJsxSpreadAttribute:()=>zI,isJsxTagNameExpression:()=>Nd,isJsxText:()=>OC,isJumpStatementTarget:()=>oY,isKeyword:()=>Og,isKeywordOrPunctuation:()=>Rg,isKnownSymbol:()=>ry,isLabelName:()=>aY,isLabelOfLabeledStatement:()=>sY,isLabeledStatement:()=>QA,isLateVisibilityPaintedStatement:()=>Dp,isLeftHandSideExpression:()=>Qu,isLeftHandSideOfAssignment:()=>xb,isLet:()=>pf,isLineBreak:()=>ia,isLiteralComputedPropertyDeclarationName:()=>vg,isLiteralExpression:()=>Kl,isLiteralExpressionOfObject:()=>Jl,isLiteralImportTypeNode:()=>gf,isLiteralKind:()=>Vl,isLiteralLikeAccess:()=>ph,isLiteralLikeElementAccess:()=>fh,isLiteralNameOfPropertyDeclarationOrIndexAccess:()=>fY,isLiteralTypeLikeExpression:()=>JP,isLiteralTypeLiteral:()=>ed,isLiteralTypeNode:()=>HN,isLocalName:()=>aP,isLogicalOperator:()=>_b,isLogicalOrCoalescingAssignmentExpression:()=>fb,isLogicalOrCoalescingAssignmentOperator:()=>pb,isLogicalOrCoalescingBinaryExpression:()=>hb,isLogicalOrCoalescingBinaryOperator:()=>mb,isMappedTypeNode:()=>WN,isMemberName:()=>Sl,isMetaProperty:()=>NA,isMethodDeclaration:()=>vN,isMethodOrAccessor:()=>ku,isMethodSignature:()=>yN,isMinusToken:()=>VC,isMissingDeclaration:()=>EI,isMissingPackageJsonInfo:()=>bL,isModifier:()=>lu,isModifierKind:()=>su,isModifierLike:()=>Cu,isModuleAugmentationExternal:()=>bp,isModuleBlock:()=>aI,isModuleBody:()=>pd,isModuleDeclaration:()=>sI,isModuleExportsAccessExpression:()=>uh,isModuleIdentifier:()=>lh,isModuleName:()=>KP,isModuleOrEnumDeclaration:()=>gd,isModuleReference:()=>Cd,isModuleSpecifierLike:()=>cX,isModuleWithStringLiteralName:()=>pp,isNameOfFunctionDeclaration:()=>pY,isNameOfModuleDeclaration:()=>_Y,isNamedClassElement:()=>Eu,isNamedDeclaration:()=>Pc,isNamedEvaluation:()=>ly,isNamedEvaluationSource:()=>cy,isNamedExportBindings:()=>Rl,isNamedExports:()=>wI,isNamedImportBindings:()=>hd,isNamedImports:()=>bI,isNamedImportsOrExports:()=>Vx,isNamedTupleMember:()=>FN,isNamespaceBody:()=>fd,isNamespaceExport:()=>vI,isNamespaceExportDeclaration:()=>lI,isNamespaceImport:()=>yI,isNamespaceReexportDeclaration:()=>Pm,isNewExpression:()=>oA,isNewExpressionTarget:()=>WQ,isNoSubstitutionTemplateLiteral:()=>RC,isNode:()=>jl,isNodeArray:()=>ql,isNodeArrayMultiLine:()=>ux,isNodeDescendantOf:()=>hg,isNodeKind:()=>zl,isNodeLikeSystem:()=>Sn,isNodeModulesDirectory:()=>Ss,isNodeWithPossibleHoistedDeclaration:()=>ag,isNonContextualKeyword:()=>jg,isNonExportDefaultModifier:()=>sM,isNonGlobalAmbientModule:()=>fp,isNonGlobalDeclaration:()=>p0,isNonNullAccess:()=>_k,isNonNullChain:()=>Ol,isNonNullExpression:()=>CA,isNonStaticMethodOrAccessorWithPrivateName:()=>sB,isNotEmittedOrPartiallyEmittedNode:()=>rd,isNotEmittedStatement:()=>CI,isNullishCoalesce:()=>Dl,isNumber:()=>ut,isNumericLiteral:()=>DC,isNumericLiteralName:()=>ek,isObjectBindingElementWithoutPropertyName:()=>lX,isObjectBindingOrAssignmentElement:()=>Uu,isObjectBindingOrAssignmentPattern:()=>zu,isObjectBindingPattern:()=>ZN,isObjectLiteralElement:()=>Vd,isObjectLiteralElementLike:()=>Iu,isObjectLiteralExpression:()=>tA,isObjectLiteralMethod:()=>Hf,isObjectLiteralOrClassExpressionMethodOrAccessor:()=>Gf,isObjectTypeDeclaration:()=>zx,isOctalDigit:()=>la,isOmittedExpression:()=>TA,isOptionalChain:()=>Cl,isOptionalChainRoot:()=>Nl,isOptionalDeclaration:()=>dk,isOptionalJSDocPropertyLikeTag:()=>ak,isOptionalTypeNode:()=>RN,isOuterExpression:()=>hP,isOutermostOptionalChain:()=>Il,isOverrideModifier:()=>sN,isPackageJsonInfo:()=>vL,isPackedArrayLiteral:()=>Jw,isParameter:()=>fN,isParameterPropertyDeclaration:()=>cc,isParameterPropertyModifier:()=>au,isParenthesizedExpression:()=>cA,isParenthesizedTypeNode:()=>qN,isParseTreeNode:()=>xc,isPartOfParameterDeclaration:()=>dy,isPartOfTypeNode:()=>Df,isPartOfTypeQuery:()=>Dm,isPartiallyEmittedExpression:()=>IA,isPatternMatch:()=>dn,isPinnedComment:()=>H_,isPlainJsFile:()=>A_,isPlusToken:()=>qC,isPossiblyTypeArgumentPosition:()=>_Z,isPostfixUnaryExpression:()=>hA,isPrefixUnaryExpression:()=>mA,isPrimitiveLiteralValue:()=>Ok,isPrivateIdentifier:()=>ZC,isPrivateIdentifierClassElementDeclaration:()=>iu,isPrivateIdentifierPropertyAccessExpression:()=>ou,isPrivateIdentifierSymbol:()=>iy,isProgramBundleEmitBuildInfo:()=>fJ,isProgramUptoDate:()=>IK,isPrologueDirective:()=>yf,isPropertyAccessChain:()=>wl,isPropertyAccessEntityNameExpression:()=>Cb,isPropertyAccessExpression:()=>nA,isPropertyAccessOrQualifiedName:()=>Ku,isPropertyAccessOrQualifiedNameOrImportTypeNode:()=>Vu,isPropertyAssignment:()=>WI,isPropertyDeclaration:()=>gN,isPropertyName:()=>du,isPropertyNameLiteral:()=>Xg,isPropertySignature:()=>hN,isProtoSetter:()=>sy,isPrototypeAccess:()=>Ab,isPrototypePropertyAssignment:()=>Th,isPunctuation:()=>Fg,isPushOrUnshiftIdentifier:()=>uy,isQualifiedName:()=>dN,isQuestionDotToken:()=>GC,isQuestionOrExclamationToken:()=>UP,isQuestionOrPlusOrMinusToken:()=>VP,isQuestionToken:()=>WC,isRawSourceMap:()=>wU,isReadonlyKeyword:()=>rN,isReadonlyKeywordOrPlusOrMinusToken:()=>qP,isRecognizedTripleSlashComment:()=>W_,isReferenceFileLocation:()=>NK,isReferencedFile:()=>CK,isRegularExpressionLiteral:()=>FC,isRequireCall:()=>Jm,isRequireVariableStatement:()=>Ym,isRestParameter:()=>Yd,isRestTypeNode:()=>LN,isReturnStatement:()=>WA,isReturnStatementWithFixablePromiseHandler:()=>J1,isRightSideOfAccessExpression:()=>Db,isRightSideOfInstanceofExpression:()=>Ob,isRightSideOfPropertyAccess:()=>uY,isRightSideOfQualifiedName:()=>lY,isRightSideOfQualifiedNameOrPropertyAccess:()=>Ib,isRightSideOfQualifiedNameOrPropertyAccessOrJSDocMemberName:()=>Pb,isRootedDiskPath:()=>Do,isSameEntityName:()=>sh,isSatisfiesExpression:()=>EA,isScopeMarker:()=>od,isSemicolonClassElement:()=>MA,isSetAccessor:()=>Ld,isSetAccessorDeclaration:()=>TN,isShebangTrivia:()=>ha,isShiftOperatorOrHigher:()=>WP,isShorthandAmbientModuleSymbol:()=>hp,isShorthandPropertyAssignment:()=>HI,isSignedNumericLiteral:()=>Gg,isSimpleCopiableExpression:()=>QU,isSimpleInlineableExpression:()=>YU,isSimpleParameter:()=>hB,isSimpleParameterList:()=>gB,isSingleOrDoubleQuote:()=>Zm,isSourceFile:()=>YI,isSourceFileFromLibrary:()=>b0,isSourceFileJS:()=>jm,isSourceFileNotJS:()=>zm,isSourceFileNotJson:()=>qm,isSourceMapping:()=>NU,isSpecialPropertyDeclaration:()=>wh,isSpreadAssignment:()=>GI,isSpreadElement:()=>xA,isStatement:()=>kd,isStatementButNotDeclaration:()=>wd,isStatementOrBlock:()=>Ed,isStatementWithLocals:()=>I_,isStatic:()=>Jv,isStaticModifier:()=>iN,isString:()=>lt,isStringAKeyword:()=>Bg,isStringANonContextualKeyword:()=>Ug,isStringAndEmptyAnonymousObjectIntersection:()=>TZ,isStringDoubleQuoted:()=>Xm,isStringLiteral:()=>MC,isStringLiteralLike:()=>Hd,isStringLiteralOrJsxExpression:()=>Dd,isStringLiteralOrTemplate:()=>k$,isStringOrNumericLiteralLike:()=>Hg,isStringOrRegularExpressionOrTemplateLiteral:()=>xZ,isStringTextContainingNode:()=>$l,isSuperCall:()=>ff,isSuperKeyword:()=>cN,isSuperOrSuperProperty:()=>fm,isSuperProperty:()=>mm,isSupportedSourceFileName:()=>tw,isSwitchStatement:()=>GA,isSyntaxList:()=>UD,isSyntheticExpression:()=>AA,isSyntheticReference:()=>NI,isTagName:()=>cY,isTaggedTemplateExpression:()=>sA,isTaggedTemplateTag:()=>GQ,isTemplateExpression:()=>vA,isTemplateHead:()=>LC,isTemplateLiteral:()=>Gu,isTemplateLiteralKind:()=>Wl,isTemplateLiteralToken:()=>Hl,isTemplateLiteralTypeNode:()=>YN,isTemplateLiteralTypeSpan:()=>QN,isTemplateMiddle:()=>jC,isTemplateMiddleOrTemplateTail:()=>Gl,isTemplateSpan:()=>PA,isTemplateTail:()=>zC,isTextWhiteSpaceLike:()=>bX,isThis:()=>yY,isThisContainerOrFunctionBlock:()=>lm,isThisIdentifier:()=>Tv,isThisInTypeQuery:()=>kv,isThisInitializedDeclaration:()=>gm,isThisInitializedObjectBindingExpression:()=>ym,isThisProperty:()=>hm,isThisTypeNode:()=>VN,isThisTypeParameter:()=>nk,isThisTypePredicate:()=>Yf,isThrowStatement:()=>YA,isToken:()=>Bl,isTokenKind:()=>Ul,isTraceEnabled:()=>QR,isTransientSymbol:()=>s_,isTrivia:()=>Vg,isTryStatement:()=>ZA,isTupleTypeNode:()=>ON,isTypeAlias:()=>Lh,isTypeAliasDeclaration:()=>iI,isTypeAssertionExpression:()=>aA,isTypeDeclaration:()=>ok,isTypeElement:()=>Nu,isTypeKeyword:()=>UZ,isTypeKeywordToken:()=>BZ,isTypeKeywordTokenOrIdentifier:()=>qZ,isTypeLiteralNode:()=>PN,isTypeNode:()=>Du,isTypeNodeKind:()=>Ux,isTypeOfExpression:()=>_A,isTypeOnlyExportDeclaration:()=>Zl,isTypeOnlyImportDeclaration:()=>Yl,isTypeOnlyImportOrExportDeclaration:()=>Xl,isTypeOperatorNode:()=>KN,isTypeParameterDeclaration:()=>pN,isTypePredicateNode:()=>CN,isTypeQueryNode:()=>DN,isTypeReferenceNode:()=>NN,isTypeReferenceType:()=>Kd,isTypeUsableAsPropertyName:()=>Sk,isUMDExportSymbol:()=>Fx,isUnaryExpression:()=>Zu,isUnaryExpressionWithWrite:()=>$u,isUnicodeIdentifierStart:()=>Us,isUnionTypeNode:()=>jN,isUrl:()=>Io,isValidBigIntString:()=>Pw,isValidESSymbolDeclaration:()=>Vf,isValidTypeOnlyAliasUseSite:()=>Mw,isValueSignatureDeclaration:()=>cg,isVarAwaitUsing:()=>lf,isVarConst:()=>df,isVarConstLike:()=>_f,isVarUsing:()=>uf,isVariableDeclaration:()=>$A,isVariableDeclarationInVariableStatement:()=>Uf,isVariableDeclarationInitializedToBareOrAccessedRequire:()=>Hm,isVariableDeclarationInitializedToRequire:()=>Wm,isVariableDeclarationList:()=>eI,isVariableLike:()=>jf,isVariableLikeOrAccessor:()=>zf,isVariableStatement:()=>FA,isVoidExpression:()=>pA,isWatchSet:()=>yx,isWhileStatement:()=>UA,isWhiteSpaceLike:()=>na,isWhiteSpaceSingleLine:()=>ra,isWithStatement:()=>HA,isWriteAccess:()=>kx,isWriteOnlyAccess:()=>wx,isYieldExpression:()=>bA,jsxModeNeedsExplicitImport:()=>v0,keywordPart:()=>AX,last:()=>Ae,lastOrUndefined:()=>Ne,length:()=>m,libMap:()=>kO,libs:()=>wO,lineBreakPart:()=>KX,linkNamePart:()=>zX,linkPart:()=>UX,linkTextPart:()=>jX,listFiles:()=>aW,loadModuleFromGlobalCache:()=>Lj,loadWithModeAwareCache:()=>vK,makeIdentifierFromModuleName:()=>lp,makeImport:()=>eX,makeStringLiteral:()=>tX,mangleScopedPackageName:()=>Ij,map:()=>R,mapAllOrFail:()=>K,mapDefined:()=>J,mapDefinedEntries:()=>H,mapDefinedIterator:()=>W,mapEntries:()=>X,mapIterator:()=>L,mapOneOrMany:()=>t0,mapToDisplayParts:()=>JX,matchFiles:()=>PT,matchPatternOrExact:()=>vw,matchedText:()=>sn,matchesExclude:()=>RR,maybeBind:()=>tt,maybeSetLocalizedDiagnosticMessages:()=>aS,memoize:()=>St,memoizeCached:()=>kt,memoizeOne:()=>Tt,memoizeWeak:()=>wt,metadataHelper:()=>$E,min:()=>Ot,minAndMax:()=>Sw,missingFileModifiedTime:()=>eo,modifierToFlag:()=>ub,modifiersToFlags:()=>lb,moduleOptionDeclaration:()=>AO,moduleResolutionIsEqualTo:()=>b_,moduleResolutionNameAndModeGetter:()=>fK,moduleResolutionOptionDeclarations:()=>FO,moduleResolutionSupportsPackageJsonExportsAndImports:()=>$S,moduleResolutionUsesNodeModules:()=>$Z,moduleSpecifierToValidIdentifier:()=>l0,moduleSpecifiers:()=>tz,moduleSymbolToValidIdentifier:()=>c0,moveEmitHelpers:()=>RE,moveRangeEnd:()=>Zb,moveRangePastDecorators:()=>$b,moveRangePastModifiers:()=>ex,moveRangePos:()=>Xb,moveSyntheticComments:()=>AE,mutateMap:()=>Ix,mutateMapSkippingNewValues:()=>Ax,needsParentheses:()=>x$,needsScopeMarker:()=>ad,newCaseClauseTracker:()=>x0,newPrivateEnvironment:()=>_B,noEmitNotification:()=>zq,noEmitSubstitution:()=>jq,noTransformers:()=>Dq,noTruncationMaximumTruncationLength:()=>n_,nodeCanBeDecorated:()=>xm,nodeHasName:()=>Ic,nodeIsDecorated:()=>Sm,nodeIsMissing:()=>F_,nodeIsPresent:()=>R_,nodeIsSynthesized:()=>fy,nodeModuleNameResolver:()=>qL,nodeModulesPathPart:()=>GL,nodeNextJsonConfigResolver:()=>VL,nodeOrChildIsDecorated:()=>Tm,nodeOverlapsWithStartEnd:()=>NY,nodePosToString:()=>P_,nodeSeenTracker:()=>VZ,nodeStartsNewLexicalEnvironment:()=>py,nodeToDisplayParts:()=>QX,noop:()=>pt,noopFileWatcher:()=>hW,normalizePath:()=>ts,normalizeSlashes:()=>Qo,not:()=>fn,notImplemented:()=>xt,notImplementedResolver:()=>fV,nullNodeConverters:()=>qk,nullParenthesizerRules:()=>zk,nullTransformationContext:()=>Bq,objectAllocator:()=>tS,operatorPart:()=>DX,optionDeclarations:()=>DO,optionMapToObject:()=>UF,optionsAffectingProgramStructure:()=>LO,optionsForBuild:()=>VO,optionsForWatch:()=>EO,optionsHaveChanges:()=>__,optionsHaveModuleResolutionChanges:()=>u_,or:()=>pn,orderedRemoveItem:()=>$t,orderedRemoveItemAt:()=>en,packageIdToPackageName:()=>S_,packageIdToString:()=>T_,paramHelper:()=>eC,parameterIsThisKeyword:()=>Sv,parameterNamePart:()=>PX,parseBaseNodeFactory:()=>SM,parseBigInt:()=>Iw,parseBuildCommand:()=>dF,parseCommandLine:()=>sF,parseCommandLineWorker:()=>nF,parseConfigFileTextToJson:()=>mF,parseConfigFileWithSystem:()=>eW,parseConfigHostFromCompilerHostLike:()=>zK,parseCustomTypeOption:()=>XO,parseIsolatedEntityName:()=>$M,parseIsolatedJSDocComment:()=>rO,parseJSDocTypeExpressionForTests:()=>iO,parseJsonConfigFileContent:()=>ZF,parseJsonSourceFileConfigFileContent:()=>XF,parseJsonText:()=>eO,parseListTypeOption:()=>$O,parseNodeFactory:()=>TM,parseNodeModuleFromPath:()=>YL,parsePackageName:()=>mj,parsePseudoBigInt:()=>Nw,parseValidBigInt:()=>Dw,pasteEdits:()=>Cfe,patchWriteFileEnsuringDirectory:()=>So,pathContainsNodeModules:()=>QL,pathIsAbsolute:()=>Mo,pathIsBareSpecifier:()=>Fo,pathIsRelative:()=>Oo,patternText:()=>on,perfLogger:()=>rr,performIncrementalCompilation:()=>AW,performance:()=>ir,plainJSErrors:()=>OK,positionBelongsToNode:()=>IY,positionIsASICandidate:()=>F$,positionIsSynthesized:()=>dw,positionsAreOnSameLine:()=>dx,preProcessFile:()=>F1,probablyUsesSemicolons:()=>R$,processCommentPragmas:()=>dO,processPragmasIntoFields:()=>_O,processTaggedTemplateExpression:()=>qB,programContainsEsModules:()=>QZ,programContainsModules:()=>GZ,projectReferenceIsEqualTo:()=>v_,propKeyHelper:()=>fC,propertyNamePart:()=>MX,pseudoBigIntToString:()=>Aw,punctuationPart:()=>IX,pushIfUnique:()=>he,quote:()=>T$,quotePreferenceFromString:()=>rX,rangeContainsPosition:()=>TY,rangeContainsPositionExclusive:()=>wY,rangeContainsRange:()=>xY,rangeContainsRangeExclusive:()=>SY,rangeContainsStartEnd:()=>EY,rangeEndIsOnSameLineAsRangeStart:()=>ax,rangeEndPositionsAreOnSameLine:()=>ox,rangeEquals:()=>Se,rangeIsOnSingleLine:()=>rx,rangeOfNode:()=>Tw,rangeOfTypeParameters:()=>ww,rangeOverlapsWithStartEnd:()=>CY,rangeStartIsOnSameLineAsRangeEnd:()=>sx,rangeStartPositionsAreOnSameLine:()=>ix,readBuilderProgram:()=>IW,readConfigFile:()=>fF,readHelper:()=>_C,readJson:()=>Kb,readJsonConfigFile:()=>hF,readJsonOrUndefined:()=>Vb,reduceEachLeadingCommentRange:()=>xa,reduceEachTrailingCommentRange:()=>Sa,reduceLeft:()=>Re,reduceLeftIterator:()=>b,reducePathComponents:()=>Yo,refactor:()=>m3,regExpEscape:()=>mT,regularExpressionFlagToCharacter:()=>Ws,relativeComplement:()=>de,removeAllComments:()=>uE,removeEmitHelper:()=>OE,removeExtension:()=>aw,removeFileExtension:()=>ow,removeIgnoredPath:()=>DJ,removeMinAndVersionNumbers:()=>Xt,removeOptionality:()=>dZ,removePrefix:()=>ln,removeSuffix:()=>Yt,removeTrailingDirectorySeparator:()=>is,repeatString:()=>JZ,replaceElement:()=>Me,replaceFirstStar:()=>Ck,resolutionExtensionIsTSOrJson:()=>pw,resolveConfigFileProjectName:()=>RW,resolveJSModule:()=>jL,resolveLibrary:()=>OL,resolveModuleName:()=>RL,resolveModuleNameFromCache:()=>FL,resolvePackageNameToPackageJson:()=>gL,resolvePath:()=>Xo,resolveProjectReferencePath:()=>UK,resolveTripleslashReference:()=>LV,resolveTypeReferenceDirective:()=>fL,resolvingEmptyArray:()=>$d,restHelper:()=>cC,returnFalse:()=>ft,returnNoopFileWatcher:()=>gW,returnTrue:()=>mt,returnUndefined:()=>ht,returnsPromise:()=>K1,runInitializersHelper:()=>nC,sameFlatMap:()=>V,sameMap:()=>j,sameMapping:()=>CU,scanShebangTrivia:()=>ga,scanTokenAtPosition:()=>tf,scanner:()=>UQ,screenStartingMessageCodes:()=>ZJ,semanticDiagnosticsOptionDeclarations:()=>PO,serializeCompilerOptions:()=>KF,server:()=>Pge,servicesVersion:()=>q5,setCommentRange:()=>SE,setConfigFileInOptions:()=>$F,setConstantValue:()=>DE,setEachParent:()=>qw,setEmitFlags:()=>dE,setFunctionNameHelper:()=>mC,setGetSourceFileAsHashVersioned:()=>TW,setIdentifierAutoGenerate:()=>KE,setIdentifierGeneratedImportReference:()=>WE,setIdentifierTypeArguments:()=>qE,setInternalEmitFlags:()=>pE,setLocalizedDiagnosticMessages:()=>sS,setModuleDefaultHelper:()=>vC,setNodeChildren:()=>KD,setNodeFlags:()=>Uw,setObjectAllocator:()=>iS,setOriginalNode:()=>aE,setParent:()=>Bw,setParentRecursive:()=>Vw,setPrivateIdentifier:()=>fB,setSnippetElement:()=>jE,setSourceMapRange:()=>hE,setStackTraceLimit:()=>Zi,setStartsOnNewLine:()=>bE,setSyntheticLeadingComments:()=>wE,setSyntheticTrailingComments:()=>CE,setSys:()=>wo,setSysLog:()=>ho,setTextRange:()=>vM,setTextRangeEnd:()=>Lw,setTextRangePos:()=>Rw,setTextRangePosEnd:()=>jw,setTextRangePosWidth:()=>zw,setTokenSourceMapRange:()=>yE,setTypeNode:()=>UE,setUILocale:()=>Vt,setValueDeclaration:()=>kh,shouldAllowImportingTsExtension:()=>Rj,shouldPreserveConstEnums:()=>KS,shouldUseUriStyleNodeCoreModules:()=>m0,showModuleSpecifier:()=>Rx,signatureHasLiteralTypes:()=>nU,signatureHasRestParameter:()=>tU,signatureToDisplayParts:()=>GX,single:()=>De,singleElementArray:()=>hn,singleIterator:()=>Y,singleOrMany:()=>Pe,singleOrUndefined:()=>Ie,skipAlias:()=>Sx,skipAssertions:()=>vP,skipConstraint:()=>WZ,skipOuterExpressions:()=>gP,skipParentheses:()=>fg,skipPartiallyEmittedExpressions:()=>Ml,skipTrivia:()=>da,skipTypeChecking:()=>kw,skipTypeParentheses:()=>pg,skipWhile:()=>xn,sliceAfter:()=>bw,some:()=>$,sort:()=>ve,sortAndDeduplicate:()=>ae,sortAndDeduplicateDiagnostics:()=>Ua,sourceFileAffectingCompilerOptions:()=>RO,sourceFileMayBeEmitted:()=>uv,sourceMapCommentRegExp:()=>vU,sourceMapCommentRegExpDontCareLineStart:()=>yU,spacePart:()=>NX,spanMap:()=>Z,spreadArrayHelper:()=>pC,stableSort:()=>xe,startEndContainsRange:()=>kY,startEndOverlapsWithStartEnd:()=>AY,startOnNewLine:()=>bP,startTracing:()=>Er,startsWith:()=>cn,startsWithDirectory:()=>ms,startsWithUnderscore:()=>d0,startsWithUseStrict:()=>dP,stringContainsAt:()=>u0,stringToToken:()=>Ks,stripQuotes:()=>Ky,supportedDeclarationExtensions:()=>JT,supportedJSExtensions:()=>BT,supportedJSExtensionsFlat:()=>qT,supportedLocaleDirectories:()=>gc,supportedTSExtensions:()=>LT,supportedTSExtensionsFlat:()=>jT,supportedTSImplementationExtensions:()=>WT,suppressLeadingAndTrailingTrivia:()=>c$,suppressLeadingTrivia:()=>l$,suppressTrailingTrivia:()=>u$,symbolEscapedNameNoDefault:()=>aX,symbolName:()=>Cc,symbolNameNoDefault:()=>sX,symbolPart:()=>EX,symbolToDisplayParts:()=>HX,syntaxMayBeASICandidate:()=>O$,syntaxRequiresTrailingSemicolonOrASI:()=>M$,sys:()=>To,sysLog:()=>mo,tagNamesAreEquivalent:()=>vO,takeWhile:()=>bn,targetOptionDeclaration:()=>NO,templateObjectHelper:()=>dC,testFormatSettings:()=>AQ,textChangeRangeIsUnchanged:()=>rc,textChangeRangeNewSpan:()=>nc,textChanges:()=>Xde,textOrKeywordPart:()=>OX,textPart:()=>FX,textRangeContainsPositionInclusive:()=>Ja,textSpanContainsPosition:()=>Ka,textSpanContainsTextSpan:()=>Wa,textSpanEnd:()=>qa,textSpanIntersection:()=>$a,textSpanIntersectsWith:()=>Ya,textSpanIntersectsWithPosition:()=>Xa,textSpanIntersectsWithTextSpan:()=>Qa,textSpanIsEmpty:()=>Va,textSpanOverlap:()=>Ga,textSpanOverlapsWith:()=>Ha,textSpansEqual:()=>hX,textToKeywordObj:()=>Cs,timestamp:()=>er,toArray:()=>ct,toBuilderFileEmit:()=>TJ,toBuilderStateFileInfoForMultiEmit:()=>SJ,toEditorSettings:()=>o8,toFileNameLowerCase:()=>bt,toLowerCase:()=>yt,toPath:()=>rs,toProgramEmitPending:()=>wJ,tokenIsIdentifierOrKeyword:()=>ks,tokenIsIdentifierOrKeywordOrGreaterThan:()=>Es,tokenToString:()=>Vs,trace:()=>GR,tracing:()=>ar,tracingEnabled:()=>cr,transferSourceFileChildren:()=>WD,transform:()=>w8,transformClassFields:()=>HB,transformDeclarations:()=>Cq,transformECMAScriptModule:()=>vq,transformES2015:()=>fq,transformES2016:()=>_q,transformES2017:()=>XB,transformES2018:()=>eq,transformES2019:()=>tq,transformES2020:()=>nq,transformES2021:()=>rq,transformESDecorators:()=>ZB,transformESNext:()=>iq,transformGenerators:()=>mq,transformJsx:()=>uq,transformLegacyDecorators:()=>YB,transformModule:()=>hq,transformNamedEvaluation:()=>UB,transformNodeModule:()=>bq,transformNodes:()=>Uq,transformSystemModule:()=>yq,transformTypeScript:()=>WB,transpile:()=>s2,transpileDeclaration:()=>e2,transpileModule:()=>$1,transpileOptionValueCompilerOptions:()=>jO,tryAddToSet:()=>Q,tryAndIgnoreErrors:()=>B$,tryCast:()=>dt,tryDirectoryExists:()=>U$,tryExtractTSExtension:()=>jb,tryFileExists:()=>z$,tryGetClassExtendingExpressionWithTypeArguments:()=>yb,tryGetClassImplementingOrExtendingExpressionWithTypeArguments:()=>vb,tryGetDirectories:()=>L$,tryGetExtensionFromPath:()=>hw,tryGetImportFromModuleSpecifier:()=>Ah,tryGetJSDocSatisfiesTypeNode:()=>mk,tryGetModuleNameFromFile:()=>CP,tryGetModuleSpecifierFromDeclaration:()=>Ch,tryGetNativePerformanceHooks:()=>Xn,tryGetPropertyAccessOrIdentifierToString:()=>Nb,tryGetPropertyNameOfBindingOrAssignmentElement:()=>PP,tryGetSourceMappingURL:()=>SU,tryGetTextOfPropertyName:()=>Up,tryIOAndConsumeErrors:()=>q$,tryParseJson:()=>Jb,tryParsePattern:()=>lw,tryParsePatterns:()=>uw,tryParseRawSourceMap:()=>kU,tryReadDirectory:()=>j$,tryReadFile:()=>gF,tryRemoveDirectoryPrefix:()=>pT,tryRemoveExtension:()=>sw,tryRemovePrefix:()=>un,tryRemoveSuffix:()=>Zt,typeAcquisitionDeclarations:()=>JO,typeAliasNamePart:()=>RX,typeDirectiveIsEqualTo:()=>w_,typeKeywords:()=>zZ,typeParameterNamePart:()=>LX,typeToDisplayParts:()=>WX,unchangedPollThresholds:()=>oo,unchangedTextChangeRange:()=>oc,unescapeLeadingUnderscores:()=>wc,unmangleScopedPackageName:()=>Pj,unorderedRemoveItem:()=>nn,unorderedRemoveItemAt:()=>tn,unreachableCodeIsError:()=>ZS,unsetNodeChildren:()=>JD,unusedLabelIsError:()=>XS,unwrapInnermostStatementOfLabel:()=>Jf,unwrapParenthesizedExpression:()=>Fk,updateErrorForNoInputFiles:()=>fR,updateLanguageServiceSourceFile:()=>p8,updateMissingFilePathsWatch:()=>NV,updateResolutionField:()=>iL,updateSharedExtendedConfigFileWatcher:()=>kV,updateSourceFile:()=>nO,updateWatchingWildcardDirectories:()=>AV,usesExtensionsOnImports:()=>$T,usingSingleLineStringWriter:()=>g_,utf16EncodeAsString:()=>Oa,validateLocaleAndSetLanguage:()=>yc,valuesHelper:()=>hC,version:()=>u,versionMajorMinor:()=>l,visitArray:()=>sU,visitCommaListElements:()=>pU,visitEachChild:()=>fU,visitFunctionBody:()=>dU,visitIterationBody:()=>_U,visitLexicalEnvironment:()=>cU,visitNode:()=>iU,visitNodes:()=>oU,visitParameterList:()=>lU,walkUpBindingElementsAndPatterns:()=>dc,walkUpLexicalEnvironments:()=>dB,walkUpOuterExpressions:()=>yP,walkUpParenthesizedExpressions:()=>dg,walkUpParenthesizedTypes:()=>ug,walkUpParenthesizedTypesAndGetParentAndChild:()=>_g,whitespaceOrMapCommentRegExp:()=>bU,writeCommentRange:()=>jv,writeFile:()=>pv,writeFileEnsuringDirectories:()=>mv,zipWith:()=>x}),e.exports=c;var l="5.5",u="5.5.4",d=(e=>(e[e.LessThan=-1]="LessThan",e[e.EqualTo=0]="EqualTo",e[e.GreaterThan=1]="GreaterThan",e))(d||{}),_=[],p=new Map,f=new Set;function m(e){return e?e.length:0}function h(e,t){if(e)for(let n=0;n<e.length;n++){const r=t(e[n],n);if(r)return r}}function g(e,t){if(e)for(let n=e.length-1;n>=0;n--){const r=t(e[n],n);if(r)return r}}function y(e,t){if(void 0!==e)for(let n=0;n<e.length;n++){const r=t(e[n],n);if(void 0!==r)return r}}function v(e,t){for(const n of e){const e=t(n);if(void 0!==e)return e}}function b(e,t,n){let r=n;if(e){let n=0;for(const i of e)r=t(r,i,n),n++}return r}function x(e,t,n){const r=[];Tn.assertEqual(e.length,t.length);for(let i=0;i<e.length;i++)r.push(n(e[i],t[i],i));return r}function S(e,t){if(e.length<=1)return e;const n=[];for(let r=0,i=e.length;r<i;r++)r&&n.push(t),n.push(e[r]);return n}function T(e,t){if(e)for(let n=0;n<e.length;n++)if(!t(e[n],n))return!1;return!0}function w(e,t,n){if(void 0!==e)for(let r=n??0;r<e.length;r++){const n=e[r];if(t(n,r))return n}}function k(e,t,n){if(void 0!==e)for(let r=n??e.length-1;r>=0;r--){const n=e[r];if(t(n,r))return n}}function E(e,t,n){if(void 0===e)return-1;for(let r=n??0;r<e.length;r++)if(t(e[r],r))return r;return-1}function C(e,t,n){if(void 0===e)return-1;for(let r=n??e.length-1;r>=0;r--)if(t(e[r],r))return r;return-1}function N(e,t){for(let n=0;n<e.length;n++){const r=t(e[n],n);if(r)return r}return Tn.fail()}function A(e,t,n=Nt){if(e)for(const r of e)if(n(r,t))return!0;return!1}function I(e,t,n=Nt){return e.length===t.length&&e.every(((e,r)=>n(e,t[r])))}function D(e,t,n){for(let r=n||0;r<e.length;r++)if(A(t,e.charCodeAt(r)))return r;return-1}function P(e,t){let n=0;if(e)for(let r=0;r<e.length;r++){t(e[r],r)&&n++}return n}function M(e,t){if(e){const n=e.length;let r=0;for(;r<n&&t(e[r]);)r++;if(r<n){const i=e.slice(0,r);for(r++;r<n;){const n=e[r];t(n)&&i.push(n),r++}return i}}return e}function O(e,t){let n=0;for(let r=0;r<e.length;r++)t(e[r],r,e)&&(e[n]=e[r],n++);e.length=n}function F(e){e.length=0}function R(e,t){let n;if(e){n=[];for(let r=0;r<e.length;r++)n.push(t(e[r],r))}return n}function*L(e,t){for(const n of e)yield t(n)}function j(e,t){if(e)for(let n=0;n<e.length;n++){const r=e[n],i=t(r,n);if(r!==i){const r=e.slice(0,n);for(r.push(i),n++;n<e.length;n++)r.push(t(e[n],n));return r}}return e}function z(e){const t=[];for(const n of e)n&&(at(n)?me(t,n):t.push(n));return t}function U(e,t){let n;if(e)for(let r=0;r<e.length;r++){const i=t(e[r],r);i&&(n=at(i)?me(n,i):_e(n,i))}return n||_}function B(e,t){const n=[];if(e)for(let r=0;r<e.length;r++){const i=t(e[r],r);i&&(at(i)?me(n,i):n.push(i))}return n}function*q(e,t){for(const n of e){const e=t(n);e&&(yield*e)}}function V(e,t){let n;if(e)for(let r=0;r<e.length;r++){const i=e[r],o=t(i,r);(n||i!==o||at(o))&&(n||(n=e.slice(0,r)),at(o)?me(n,o):n.push(o))}return n||e}function K(e,t){const n=[];for(let r=0;r<e.length;r++){const i=t(e[r],r);if(void 0===i)return;n.push(i)}return n}function J(e,t){const n=[];if(e)for(let r=0;r<e.length;r++){const i=t(e[r],r);void 0!==i&&n.push(i)}return n}function*W(e,t){for(const n of e){const e=t(n);void 0!==e&&(yield e)}}function H(e,t){if(!e)return;const n=new Map;return e.forEach(((e,r)=>{const i=t(r,e);if(void 0!==i){const[e,t]=i;void 0!==e&&void 0!==t&&n.set(e,t)}})),n}function G(e,t,n){if(e.has(t))return e.get(t);const r=n();return e.set(t,r),r}function Q(e,t){return!e.has(t)&&(e.add(t),!0)}function*Y(e){yield e}function Z(e,t,n){let r;if(e){r=[];const i=e.length;let o,s,a=0,c=0;for(;a<i;){for(;c<i;){if(s=t(e[c],c),0===c)o=s;else if(s!==o)break;c++}if(a<c){const t=n(e.slice(a,c),o,a,c);t&&r.push(t),a=c}o=s,c++}}return r}function X(e,t){if(!e)return;const n=new Map;return e.forEach(((e,r)=>{const[i,o]=t(r,e);n.set(i,o)})),n}function $(e,t){if(e){if(!t)return e.length>0;for(const n of e)if(t(n))return!0}return!1}function ee(e,t,n){let r;for(let i=0;i<e.length;i++)t(e[i])?r=void 0===r?i:r:void 0!==r&&(n(r,i),r=void 0);void 0!==r&&n(r,e.length)}function te(e,t){return $(t)?$(e)?[...e,...t]:t:e}function ne(e,t){return t}function re(e){return e.map(ne)}function ie(e,t,n){return 0===e.length?[]:1===e.length?e.slice():n?function(e,t,n){const r=re(e);ye(e,r,n);let i=e[r[0]];const o=[r[0]];for(let s=1;s<r.length;s++){const n=r[s],a=e[n];t(i,a)||(o.push(n),i=a)}return o.sort(),o.map((t=>e[t]))}(e,t,n):function(e,t){const n=[];for(const r of e)he(n,r,t);return n}(e,t)}function oe(){return[]}function se(e,t,n,r,i){if(0===e.length)return e.push(t),!0;const o=Oe(e,t,gt,n);if(o<0){if(r&&!i){const n=~o;if(n>0&&r(t,e[n-1]))return!1;if(n<e.length&&r(t,e[n]))return e.splice(n,1,t),!0}return e.splice(~o,0,t),!0}return!!i&&(e.splice(o,0,t),!0)}function ae(e,t,n){return function(e,t){if(0===e.length)return _;let n=e[0];const r=[n];for(let i=1;i<e.length;i++){const o=e[i];switch(t(o,n)){case!0:case 0:continue;case-1:return Tn.fail("Array is unsorted.")}r.push(n=o)}return r}(ve(e,t),n||t||Lt)}function ce(e,t){if(e.length<2)return!0;for(let n=1,r=e.length;n<r;n++)if(1===t(e[n-1],e[n]))return!1;return!0}function le(e,t,n=Nt){if(!e||!t)return e===t;if(e.length!==t.length)return!1;for(let r=0;r<e.length;r++)if(!n(e[r],t[r],r))return!1;return!0}function ue(e){let t;if(e)for(let n=0;n<e.length;n++){const r=e[n];!t&&r||(t||(t=e.slice(0,n)),r&&t.push(r))}return t||e}function de(e,t,n){if(!t||!e||0===t.length||0===e.length)return t;const r=[];e:for(let i=0,o=0;o<t.length;o++){o>0&&Tn.assertGreaterThanOrEqual(n(t[o],t[o-1]),0);t:for(const s=i;i<e.length;i++)switch(i>s&&Tn.assertGreaterThanOrEqual(n(e[i],e[i-1]),0),n(t[o],e[i])){case-1:r.push(t[o]);continue e;case 0:continue e;case 1:continue t}}return r}function _e(e,t){return void 0===t?e:void 0===e?[t]:(e.push(t),e)}function pe(e,t){return void 0===e?t:void 0===t?e:at(e)?at(t)?te(e,t):_e(e,t):at(t)?_e(t,e):[e,t]}function fe(e,t){return t<0?e.length+t:t}function me(e,t,n,r){if(void 0===t||0===t.length)return e;if(void 0===e)return t.slice(n,r);n=void 0===n?0:fe(t,n),r=void 0===r?t.length:fe(t,r);for(let i=n;i<r&&i<t.length;i++)void 0!==t[i]&&e.push(t[i]);return e}function he(e,t,n){return!A(e,t,n)&&(e.push(t),!0)}function ge(e,t,n){return e?(he(e,t,n),e):[t]}function ye(e,t,n){t.sort(((t,r)=>n(e[t],e[r])||Pt(t,r)))}function ve(e,t){return 0===e.length?e:e.slice().sort(t)}function*be(e){for(let t=e.length-1;t>=0;t--)yield e[t]}function xe(e,t){const n=re(e);return ye(e,n,t),n.map((t=>e[t]))}function Se(e,t,n,r){for(;n<r;){if(e[n]!==t[n])return!1;n++}return!0}var Te=Array.prototype.at?(e,t)=>null==e?void 0:e.at(t):(e,t)=>{if(e&&(t=fe(e,t))<e.length)return e[t]};function we(e){return void 0===e||0===e.length?void 0:e[0]}function ke(e){if(e)for(const t of e)return t}function Ee(e){return Tn.assert(0!==e.length),e[0]}function Ce(e){for(const t of e)return t;Tn.fail("iterator is empty")}function Ne(e){return void 0===e||0===e.length?void 0:e[e.length-1]}function Ae(e){return Tn.assert(0!==e.length),e[e.length-1]}function Ie(e){return e&&1===e.length?e[0]:void 0}function De(e){return Tn.checkDefined(Ie(e))}function Pe(e){return e&&1===e.length?e[0]:e}function Me(e,t,n){const r=e.slice(0);return r[t]=n,r}function Oe(e,t,n,r,i){return Fe(e,n(t),n,r,i)}function Fe(e,t,n,r,i){if(!$(e))return-1;let o=i||0,s=e.length-1;for(;o<=s;){const i=o+(s-o>>1);switch(r(n(e[i],i),t)){case-1:o=i+1;break;case 0:return i;case 1:s=i-1}}return~o}function Re(e,t,n,r,i){if(e&&e.length>0){const o=e.length;if(o>0){let s=void 0===r||r<0?0:r;const a=void 0===i||s+i>o-1?o-1:s+i;let c;for(arguments.length<=2?(c=e[s],s++):c=n;s<=a;)c=t(c,e[s],s),s++;return c}}return n}var Le=Object.prototype.hasOwnProperty;function je(e,t){return Le.call(e,t)}function ze(e,t){return Le.call(e,t)?e[t]:void 0}function Ue(e){const t=[];for(const n in e)Le.call(e,n)&&t.push(n);return t}function Be(e){const t=[];do{const n=Object.getOwnPropertyNames(e);for(const e of n)he(t,e)}while(e=Object.getPrototypeOf(e));return t}function qe(e){const t=[];for(const n in e)Le.call(e,n)&&t.push(e[n]);return t}function Ve(e,t){const n=new Array(e);for(let r=0;r<e;r++)n[r]=t(r);return n}function Ke(e,t){const n=[];for(const r of e)n.push(t?t(r):r);return n}function Je(e,...t){for(const n of t)if(void 0!==n)for(const t in n)je(n,t)&&(e[t]=n[t]);return e}function We(e,t,n=Nt){if(e===t)return!0;if(!e||!t)return!1;for(const r in e)if(Le.call(e,r)){if(!Le.call(t,r))return!1;if(!n(e[r],t[r]))return!1}for(const r in t)if(Le.call(t,r)&&!Le.call(e,r))return!1;return!0}function He(e,t,n=gt){const r=new Map;for(const i of e){const e=t(i);void 0!==e&&r.set(e,n(i))}return r}function Ge(e,t,n=gt){const r=[];for(const i of e)r[t(i)]=n(i);return r}function Qe(e,t,n=gt){const r=nt();for(const i of e)r.add(t(i),n(i));return r}function Ye(e,t,n=gt){return Ke(Qe(e,t).values(),n)}function Ze(e,t){const n={};if(e)for(const r of e){const e=`${t(r)}`;(n[e]??(n[e]=[])).push(r)}return n}function Xe(e){const t={};for(const n in e)Le.call(e,n)&&(t[n]=e[n]);return t}function $e(e,t){const n={};for(const r in t)Le.call(t,r)&&(n[r]=t[r]);for(const r in e)Le.call(e,r)&&(n[r]=e[r]);return n}function et(e,t){for(const n in t)Le.call(t,n)&&(e[n]=t[n])}function tt(e,t){return t?t.bind(e):void 0}function nt(){const e=new Map;return e.add=rt,e.remove=it,e}function rt(e,t){let n=this.get(e);return n?n.push(t):this.set(e,n=[t]),n}function it(e,t){const n=this.get(e);n&&(nn(n,t),n.length||this.delete(e))}function ot(e){const t=(null==e?void 0:e.slice())||[];let n=0;function r(){return n===t.length}return{enqueue:function(...e){t.push(...e)},dequeue:function(){if(r())throw new Error("Queue is empty");const e=t[n];if(t[n]=void 0,n++,n>100&&n>t.length>>1){const e=t.length-n;t.copyWithin(0,n),t.length=e,n=0}return e},isEmpty:r}}function st(e,t){const n=new Map;let r=0;function*i(){for(const e of n.values())at(e)?yield*e:yield e}const o={has(r){const i=e(r);if(!n.has(i))return!1;const o=n.get(i);if(!at(o))return t(o,r);for(const e of o)if(t(e,r))return!0;return!1},add(i){const o=e(i);if(n.has(o)){const e=n.get(o);if(at(e))A(e,i,t)||(e.push(i),r++);else{const s=e;t(s,i)||(n.set(o,[s,i]),r++)}}else n.set(o,i),r++;return this},delete(i){const o=e(i);if(!n.has(o))return!1;const s=n.get(o);if(at(s)){for(let e=0;e<s.length;e++)if(t(s[e],i))return 1===s.length?n.delete(o):2===s.length?n.set(o,s[1-e]):tn(s,e),r--,!0}else{if(t(s,i))return n.delete(o),r--,!0}return!1},clear(){n.clear(),r=0},get size(){return r},forEach(e){for(const t of Ke(n.values()))if(at(t))for(const n of t)e(n,n,o);else{e(t,t,o)}},keys:()=>i(),values:()=>i(),*entries(){for(const e of i())yield[e,e]},[Symbol.iterator]:()=>i(),[Symbol.toStringTag]:n[Symbol.toStringTag]};return o}function at(e){return Array.isArray(e)}function ct(e){return at(e)?e:[e]}function lt(e){return"string"==typeof e}function ut(e){return"number"==typeof e}function dt(e,t){return void 0!==e&&t(e)?e:void 0}function _t(e,t){return void 0!==e&&t(e)?e:Tn.fail(`Invalid cast. The supplied value ${e} did not pass the test '${Tn.getFunctionName(t)}'.`)}function pt(e){}function ft(){return!1}function mt(){return!0}function ht(){}function gt(e){return e}function yt(e){return e.toLowerCase()}var vt=/[^\u0130\u0131\u00DFa-z0-9\\/:\-_. ]+/g;function bt(e){return vt.test(e)?e.replace(vt,yt):e}function xt(){throw new Error("Not implemented")}function St(e){let t;return()=>(e&&(t=e(),e=void 0),t)}function Tt(e){const t=new Map;return n=>{const r=`${typeof n}:${n}`;let i=t.get(r);return void 0!==i||t.has(r)||(i=e(n),t.set(r,i)),i}}function wt(e){const t=new WeakMap;return n=>{let r=t.get(n);return void 0!==r||t.has(n)||(r=e(n),t.set(n,r)),r}}function kt(e,t){return(...n)=>{let r=t.get(n);return void 0!==r||t.has(n)||(r=e(...n),t.set(n,r)),r}}function Et(e,t,n,r,i){if(i){const e=[];for(let t=0;t<arguments.length;t++)e[t]=arguments[t];return t=>Re(e,((e,t)=>t(e)),t)}return r?i=>r(n(t(e(i)))):n?r=>n(t(e(r))):t?n=>t(e(n)):e?t=>e(t):e=>e}var Ct=(e=>(e[e.None=0]="None",e[e.Normal=1]="Normal",e[e.Aggressive=2]="Aggressive",e[e.VeryAggressive=3]="VeryAggressive",e))(Ct||{});function Nt(e,t){return e===t}function At(e,t){return e===t||void 0!==e&&void 0!==t&&e.toUpperCase()===t.toUpperCase()}function It(e,t){return Nt(e,t)}function Dt(e,t){return e===t?0:void 0===e?-1:void 0===t?1:e<t?-1:1}function Pt(e,t){return Dt(e,t)}function Mt(e,t){return Pt(null==e?void 0:e.start,null==t?void 0:t.start)||Pt(null==e?void 0:e.length,null==t?void 0:t.length)}function Ot(e,t){return Re(e,((e,n)=>-1===t(e,n)?e:n))}function Ft(e,t){return e===t?0:void 0===e?-1:void 0===t?1:(e=e.toUpperCase())<(t=t.toUpperCase())?-1:e>t?1:0}function Rt(e,t){return e===t?0:void 0===e?-1:void 0===t?1:(e=e.toLowerCase())<(t=t.toLowerCase())?-1:e>t?1:0}function Lt(e,t){return Dt(e,t)}function jt(e){return e?Ft:Lt}var zt,Ut,Bt=(()=>function(e){const t=new Intl.Collator(e,{usage:"sort",sensitivity:"variant",numeric:!0}).compare;return(e,n)=>function(e,t,n){if(e===t)return 0;if(void 0===e)return-1;if(void 0===t)return 1;const r=n(e,t);return r<0?-1:r>0?1:0}(e,n,t)})();function qt(){return Ut}function Vt(e){Ut!==e&&(Ut=e,zt=void 0)}function Kt(e,t){return(zt||(zt=Bt(Ut)))(e,t)}function Jt(e,t,n,r){return e===t?0:void 0===e?-1:void 0===t?1:r(e[n],t[n])}function Wt(e,t){return Pt(e?1:0,t?1:0)}function Ht(e,t,n){const r=Math.max(2,Math.floor(.34*e.length));let i,o=Math.floor(.4*e.length)+1;for(const s of t){const t=n(s);if(void 0!==t&&Math.abs(t.length-e.length)<=r){if(t===e)continue;if(t.length<3&&t.toLowerCase()!==e.toLowerCase())continue;const n=Gt(e,t,o-.1);if(void 0===n)continue;Tn.assert(n<o),o=n,i=s}}return i}function Gt(e,t,n){let r=new Array(t.length+1),i=new Array(t.length+1);const o=n+.01;for(let a=0;a<=t.length;a++)r[a]=a;for(let a=1;a<=e.length;a++){const s=e.charCodeAt(a-1),c=Math.ceil(a>n?a-n:1),l=Math.floor(t.length>n+a?n+a:t.length);i[0]=a;let u=a;for(let e=1;e<c;e++)i[e]=o;for(let n=c;n<=l;n++){const o=e[a-1].toLowerCase()===t[n-1].toLowerCase()?r[n-1]+.1:r[n-1]+2,c=s===t.charCodeAt(n-1)?r[n-1]:Math.min(r[n]+1,i[n-1]+1,o);i[n]=c,u=Math.min(u,c)}for(let e=l+1;e<=t.length;e++)i[e]=o;if(u>n)return;const d=r;r=i,i=d}const s=r[t.length];return s>n?void 0:s}function Qt(e,t,n){const r=e.length-t.length;return r>=0&&(n?At(e.slice(r),t):e.indexOf(t,r)===r)}function Yt(e,t){return Qt(e,t)?e.slice(0,e.length-t.length):e}function Zt(e,t){return Qt(e,t)?e.slice(0,e.length-t.length):void 0}function Xt(e){let t=e.length;for(let n=t-1;n>0;n--){let r=e.charCodeAt(n);if(r>=48&&r<=57)do{--n,r=e.charCodeAt(n)}while(n>0&&r>=48&&r<=57);else{if(!(n>4)||110!==r&&78!==r)break;if(--n,r=e.charCodeAt(n),105!==r&&73!==r)break;if(--n,r=e.charCodeAt(n),109!==r&&77!==r)break;--n,r=e.charCodeAt(n)}if(45!==r&&46!==r)break;t=n}return t===e.length?e:e.slice(0,t)}function $t(e,t){for(let n=0;n<e.length;n++)if(e[n]===t)return en(e,n),!0;return!1}function en(e,t){for(let n=t;n<e.length-1;n++)e[n]=e[n+1];e.pop()}function tn(e,t){e[t]=e[e.length-1],e.pop()}function nn(e,t){return function(e,t){for(let n=0;n<e.length;n++)if(t(e[n]))return tn(e,n),!0;return!1}(e,(e=>e===t))}function rn(e){return e?gt:bt}function on({prefix:e,suffix:t}){return`${e}*${t}`}function sn(e,t){return Tn.assert(dn(e,t)),t.substring(e.prefix.length,t.length-e.suffix.length)}function an(e,t,n){let r,i=-1;for(const o of e){const e=t(o);dn(e,n)&&e.prefix.length>i&&(i=e.prefix.length,r=o)}return r}function cn(e,t,n){return n?At(e.slice(0,t.length),t):0===e.lastIndexOf(t,0)}function ln(e,t){return cn(e,t)?e.substr(t.length):e}function un(e,t,n=gt){return cn(n(e),n(t))?e.substring(t.length):void 0}function dn({prefix:e,suffix:t},n){return n.length>=e.length+t.length&&cn(n,e)&&Qt(n,t)}function _n(e,t){return n=>e(n)&&t(n)}function pn(...e){return(...t)=>{let n;for(const r of e)if(n=r(...t),n)return n;return n}}function fn(e){return(...t)=>!e(...t)}function mn(e){}function hn(e){return void 0===e?void 0:[e]}function gn(e,t,n,r,i,o){o=o||pt;let s=0,a=0;const c=e.length,l=t.length;let u=!1;for(;s<c&&a<l;){const c=e[s],l=t[a],d=n(c,l);-1===d?(r(c),s++,u=!0):1===d?(i(l),a++,u=!0):(o(l,c),s++,a++)}for(;s<c;)r(e[s++]),u=!0;for(;a<l;)i(t[a++]),u=!0;return u}function yn(e){const t=[];return vn(e,t,void 0,0),t}function vn(e,t,n,r){for(const i of e[r]){let o;n?(o=n.slice(),o.push(i)):o=[i],r===e.length-1?t.push(o):vn(e,t,o,r+1)}}function bn(e,t){if(e){const n=e.length;let r=0;for(;r<n&&t(e[r]);)r++;return e.slice(0,r)}}function xn(e,t){if(e){const n=e.length;let r=0;for(;r<n&&t(e[r]);)r++;return e.slice(r)}}function Sn(){return void 0!==i&&!!i.nextTick&&!i.browser&&!0}var Tn,wn=(e=>(e[e.Off=0]="Off",e[e.Error=1]="Error",e[e.Warning=2]="Warning",e[e.Info=3]="Info",e[e.Verbose=4]="Verbose",e))(wn||{});(e=>{let t=0;function n(t){return e.currentLogLevel<=t}function r(t,r){e.loggingHost&&n(t)&&e.loggingHost.log(t,r)}function i(e){r(3,e)}var s;e.currentLogLevel=2,e.isDebugging=!1,e.shouldLog=n,e.log=i,(s=i=e.log||(e.log={})).error=function(e){r(1,e)},s.warn=function(e){r(2,e)},s.log=function(e){r(3,e)},s.trace=function(e){r(4,e)};const a={};function c(e){return t>=e}function l(t,n){return!!c(t)||(a[n]={level:t,assertion:e[n]},e[n]=pt,!1)}function u(e,t){const n=new Error(e?`Debug Failure. ${e}`:"Debug Failure.");throw Error.captureStackTrace&&Error.captureStackTrace(n,t||u),n}function d(e,t,n,r){e||(t=t?`False expression: ${t}`:"False expression.",n&&(t+="\r\nVerbose Debug Information: "+("string"==typeof n?n:n())),u(t,r||d))}function _(e,t,n){null==e&&u(t,n||_)}function p(e,t,n){for(const r of e)_(r,t,n||p)}function f(e,t="Illegal value:",n){return u(`${t} ${"object"==typeof e&&je(e,"kind")&&je(e,"pos")?"SyntaxKind: "+v(e.kind):JSON.stringify(e)}`,n||f)}function m(e){}function h(e){if("function"!=typeof e)return"";if(je(e,"name"))return e.name;{const t=Function.prototype.toString.call(e),n=/^function\s+([\w$]+)\s*\(/.exec(t);return n?n[1]:""}}function g(e=0,t,n){const r=function(e){const t=y.get(e);if(t)return t;const n=[];for(const i in e){const t=e[i];"number"==typeof t&&n.push([t,i])}const r=xe(n,((e,t)=>Pt(e[0],t[0])));return y.set(e,r),r}(t);if(0===e)return r.length>0&&0===r[0][0]?r[0][1]:"0";if(n){const t=[];let n=e;for(const[i,o]of r){if(i>e)break;0!==i&&i&e&&(t.push(o),n&=~i)}if(0===n)return t.join("|")}else for(const[i,o]of r)if(i===e)return o;return e.toString()}e.getAssertionLevel=function(){return t},e.setAssertionLevel=function(n){const r=t;if(t=n,n>r)for(const t of Ue(a)){const r=a[t];void 0!==r&&e[t]!==r.assertion&&n>=r.level&&(e[t]=r,a[t]=void 0)}},e.shouldAssert=c,e.fail=u,e.failBadSyntaxKind=function e(t,n,r){return u(`${n||"Unexpected node."}\r\nNode ${v(t.kind)} was unexpected.`,r||e)},e.assert=d,e.assertEqual=function e(t,n,r,i,o){if(t!==n){u(`Expected ${t} === ${n}. ${r?i?`${r} ${i}`:r:""}`,o||e)}},e.assertLessThan=function e(t,n,r,i){t>=n&&u(`Expected ${t} < ${n}. ${r||""}`,i||e)},e.assertLessThanOrEqual=function e(t,n,r){t>n&&u(`Expected ${t} <= ${n}`,r||e)},e.assertGreaterThanOrEqual=function e(t,n,r){t<n&&u(`Expected ${t} >= ${n}`,r||e)},e.assertIsDefined=_,e.checkDefined=function e(t,n,r){return _(t,n,r||e),t},e.assertEachIsDefined=p,e.checkEachDefined=function e(t,n,r){return p(t,n,r||e),t},e.assertNever=f,e.assertEachNode=function e(t,n,r,i){l(1,"assertEachNode")&&d(void 0===n||T(t,n),r||"Unexpected node.",(()=>`Node array did not pass test '${h(n)}'.`),i||e)},e.assertNode=function e(t,n,r,i){l(1,"assertNode")&&d(void 0!==t&&(void 0===n||n(t)),r||"Unexpected node.",(()=>`Node ${v(null==t?void 0:t.kind)} did not pass test '${h(n)}'.`),i||e)},e.assertNotNode=function e(t,n,r,i){l(1,"assertNotNode")&&d(void 0===t||void 0===n||!n(t),r||"Unexpected node.",(()=>`Node ${v(t.kind)} should not have passed test '${h(n)}'.`),i||e)},e.assertOptionalNode=function e(t,n,r,i){l(1,"assertOptionalNode")&&d(void 0===n||void 0===t||n(t),r||"Unexpected node.",(()=>`Node ${v(null==t?void 0:t.kind)} did not pass test '${h(n)}'.`),i||e)},e.assertOptionalToken=function e(t,n,r,i){l(1,"assertOptionalToken")&&d(void 0===n||void 0===t||t.kind===n,r||"Unexpected node.",(()=>`Node ${v(null==t?void 0:t.kind)} was not a '${v(n)}' token.`),i||e)},e.assertMissingNode=function e(t,n,r){l(1,"assertMissingNode")&&d(void 0===t,n||"Unexpected node.",(()=>`Node ${v(t.kind)} was unexpected'.`),r||e)},e.type=m,e.getFunctionName=h,e.formatSymbol=function(e){return`{ name: ${wc(e.escapedName)}; flags: ${E(e.flags)}; declarations: ${R(e.declarations,(e=>v(e.kind)))} }`},e.formatEnum=g;const y=new Map;function v(e){return g(e,Nr,!1)}function b(e){return g(e,Ar,!0)}function S(e){return g(e,Ir,!0)}function w(e){return g(e,Li,!0)}function k(e){return g(e,zi,!0)}function E(e){return g(e,ti,!0)}function C(e){return g(e,oi,!0)}function N(e){return g(e,pi,!0)}function A(e){return g(e,si,!0)}function I(e){return g(e,Rr,!0)}e.formatSyntaxKind=v,e.formatSnippetKind=function(e){return g(e,ji,!1)},e.formatScriptKind=function(e){return g(e,Di,!1)},e.formatNodeFlags=b,e.formatNodeCheckFlags=function(e){return g(e,ii,!0)},e.formatModifierFlags=S,e.formatTransformFlags=w,e.formatEmitFlags=k,e.formatSymbolFlags=E,e.formatTypeFlags=C,e.formatSignatureFlags=N,e.formatObjectFlags=A,e.formatFlowFlags=I,e.formatRelationComparisonResult=function(e){return g(e,Pr,!0)},e.formatCheckMode=function(e){return g(e,qz,!0)},e.formatSignatureCheckMode=function(e){return g(e,Vz,!0)},e.formatTypeFacts=function(e){return g(e,Uz,!0)};let D,P,M=!1;function O(e){"__debugFlowFlags"in e||Object.defineProperties(e,{__tsDebuggerDisplay:{value(){const e=2&this.flags?"FlowStart":4&this.flags?"FlowBranchLabel":8&this.flags?"FlowLoopLabel":16&this.flags?"FlowAssignment":32&this.flags?"FlowTrueCondition":64&this.flags?"FlowFalseCondition":128&this.flags?"FlowSwitchClause":256&this.flags?"FlowArrayMutation":512&this.flags?"FlowCall":1024&this.flags?"FlowReduceLabel":1&this.flags?"FlowUnreachable":"UnknownFlow",t=-2048&this.flags;return`${e}${t?` (${I(t)})`:""}`}},__debugFlowFlags:{get(){return g(this.flags,Rr,!0)}},__debugToString:{value(){return j(this)}}})}function F(e){"__tsDebuggerDisplay"in e||Object.defineProperties(e,{__tsDebuggerDisplay:{value:e=>`NodeArray ${e=String(e).replace(/(?:,[\s\w\d_]+:[^,]+)+\]$/,"]")}`}})}e.attachFlowNodeDebugInfo=function(e){return M&&("function"==typeof Object.setPrototypeOf?(D||(D=Object.create(Object.prototype),O(D)),Object.setPrototypeOf(e,D)):O(e)),e},e.attachNodeArrayDebugInfo=function(e){M&&("function"==typeof Object.setPrototypeOf?(P||(P=Object.create(Array.prototype),F(P)),Object.setPrototypeOf(e,P)):F(e))},e.enableDebugInfo=function(){if(M)return;const e=new WeakMap,t=new WeakMap;Object.defineProperties(tS.getSymbolConstructor().prototype,{__tsDebuggerDisplay:{value(){const e=33554432&this.flags?"TransientSymbol":"Symbol",t=-33554433&this.flags;return`${e} '${Cc(this)}'${t?` (${E(t)})`:""}`}},__debugFlags:{get(){return E(this.flags)}}}),Object.defineProperties(tS.getTypeConstructor().prototype,{__tsDebuggerDisplay:{value(){const e=67359327&this.flags?`IntrinsicType ${this.intrinsicName}${this.debugIntrinsicName?` (${this.debugIntrinsicName})`:""}`:98304&this.flags?"NullableType":384&this.flags?`LiteralType ${JSON.stringify(this.value)}`:2048&this.flags?`LiteralType ${this.value.negative?"-":""}${this.value.base10Value}n`:8192&this.flags?"UniqueESSymbolType":32&this.flags?"EnumType":1048576&this.flags?"UnionType":2097152&this.flags?"IntersectionType":4194304&this.flags?"IndexType":8388608&this.flags?"IndexedAccessType":16777216&this.flags?"ConditionalType":33554432&this.flags?"SubstitutionType":262144&this.flags?"TypeParameter":524288&this.flags?3&this.objectFlags?"InterfaceType":4&this.objectFlags?"TypeReference":8&this.objectFlags?"TupleType":16&this.objectFlags?"AnonymousType":32&this.objectFlags?"MappedType":1024&this.objectFlags?"ReverseMappedType":256&this.objectFlags?"EvolvingArrayType":"ObjectType":"Type",t=524288&this.flags?-1344&this.objectFlags:0;return`${e}${this.symbol?` '${Cc(this.symbol)}'`:""}${t?` (${A(t)})`:""}`}},__debugFlags:{get(){return C(this.flags)}},__debugObjectFlags:{get(){return 524288&this.flags?A(this.objectFlags):""}},__debugTypeToString:{value(){let t=e.get(this);return void 0===t&&(t=this.checker.typeToString(this),e.set(this,t)),t}}}),Object.defineProperties(tS.getSignatureConstructor().prototype,{__debugFlags:{get(){return N(this.flags)}},__debugSignatureToString:{value(){var e;return null==(e=this.checker)?void 0:e.signatureToString(this)}}});const n=[tS.getNodeConstructor(),tS.getIdentifierConstructor(),tS.getTokenConstructor(),tS.getSourceFileConstructor()];for(const r of n)je(r.prototype,"__debugKind")||Object.defineProperties(r.prototype,{__tsDebuggerDisplay:{value(){return`${tu(this)?"GeneratedIdentifier":YC(this)?`Identifier '${kc(this)}'`:ZC(this)?`PrivateIdentifier '${kc(this)}'`:MC(this)?`StringLiteral ${JSON.stringify(this.text.length<10?this.text:this.text.slice(10)+"...")}`:DC(this)?`NumericLiteral ${this.text}`:PC(this)?`BigIntLiteral ${this.text}n`:pN(this)?"TypeParameterDeclaration":fN(this)?"ParameterDeclaration":xN(this)?"ConstructorDeclaration":SN(this)?"GetAccessorDeclaration":TN(this)?"SetAccessorDeclaration":wN(this)?"CallSignatureDeclaration":kN(this)?"ConstructSignatureDeclaration":EN(this)?"IndexSignatureDeclaration":CN(this)?"TypePredicateNode":NN(this)?"TypeReferenceNode":AN(this)?"FunctionTypeNode":IN(this)?"ConstructorTypeNode":DN(this)?"TypeQueryNode":PN(this)?"TypeLiteralNode":MN(this)?"ArrayTypeNode":ON(this)?"TupleTypeNode":RN(this)?"OptionalTypeNode":LN(this)?"RestTypeNode":jN(this)?"UnionTypeNode":zN(this)?"IntersectionTypeNode":UN(this)?"ConditionalTypeNode":BN(this)?"InferTypeNode":qN(this)?"ParenthesizedTypeNode":VN(this)?"ThisTypeNode":KN(this)?"TypeOperatorNode":JN(this)?"IndexedAccessTypeNode":WN(this)?"MappedTypeNode":HN(this)?"LiteralTypeNode":FN(this)?"NamedTupleMember":GN(this)?"ImportTypeNode":v(this.kind)}${this.flags?` (${b(this.flags)})`:""}`}},__debugKind:{get(){return v(this.kind)}},__debugNodeFlags:{get(){return b(this.flags)}},__debugModifierFlags:{get(){return S(ab(this))}},__debugTransformFlags:{get(){return w(this.transformFlags)}},__debugIsParseTreeNode:{get(){return xc(this)}},__debugEmitFlags:{get(){return k(rp(this))}},__debugGetText:{value(e){if(fy(this))return"";let n=t.get(this);if(void 0===n){const r=Sc(this),i=r&&C_(r);n=i?Z_(i,r,e):"",t.set(this,n)}return n}}});M=!0},e.formatVariance=function(e){const t=7&e;let n=0===t?"in out":3===t?"[bivariant]":2===t?"in":1===t?"out":4===t?"[independent]":"";return 8&e?n+=" (unmeasurable)":16&e&&(n+=" (unreliable)"),n};class L{__debugToString(){var e;switch(this.kind){case 3:return(null==(e=this.debugInfo)?void 0:e.call(this))||"(function mapper)";case 0:return`${this.source.__debugTypeToString()} -> ${this.target.__debugTypeToString()}`;case 1:return x(this.sources,this.targets||R(this.sources,(()=>"any")),((e,t)=>`${e.__debugTypeToString()} -> ${"string"==typeof t?t:t.__debugTypeToString()}`)).join(", ");case 2:return x(this.sources,this.targets,((e,t)=>`${e.__debugTypeToString()} -> ${t().__debugTypeToString()}`)).join(", ");case 5:case 4:return`m1: ${this.mapper1.__debugToString().split("\n").join("\n ")}\nm2: ${this.mapper2.__debugToString().split("\n").join("\n ")}`;default:return f(this)}}}function j(e){let t,n=-1;function r(e){return e.id||(e.id=n,n--),e.id}var i;let o;var s;(i=t||(t={})).lr="\u2500",i.ud="\u2502",i.dr="\u256d",i.dl="\u256e",i.ul="\u256f",i.ur="\u2570",i.udr="\u251c",i.udl="\u2524",i.dlr="\u252c",i.ulr="\u2534",i.udlr="\u256b",(s=o||(o={}))[s.None=0]="None",s[s.Up=1]="Up",s[s.Down=2]="Down",s[s.Left=4]="Left",s[s.Right=8]="Right",s[s.UpDown=3]="UpDown",s[s.LeftRight=12]="LeftRight",s[s.UpLeft=5]="UpLeft",s[s.UpRight=9]="UpRight",s[s.DownLeft=6]="DownLeft",s[s.DownRight=10]="DownRight",s[s.UpDownLeft=7]="UpDownLeft",s[s.UpDownRight=11]="UpDownRight",s[s.UpLeftRight=13]="UpLeftRight",s[s.DownLeftRight=14]="DownLeftRight",s[s.UpDownLeftRight=15]="UpDownLeftRight",s[s.NoChildren=16]="NoChildren";const a=2032,c=882,l=Object.create(null),u=[],d=[],_=g(e,new Set);for(const k of u)k.text=x(k.flowNode,k.circular),v(k);const p=function e(t){let n=0;for(const r of m(t))n=Math.max(n,e(r));return n+1}(_),f=function(e){const t=T(Array(e),0);for(const n of u)t[n.level]=Math.max(t[n.level],n.text.length);return t}(p);return function e(t,n){if(-1===t.lane){t.lane=n,t.endLane=n;const r=m(t);for(let i=0;i<r.length;i++){i>0&&n++;const o=r[i];e(o,n),o.endLane>t.endLane&&(n=o.endLane)}t.endLane=n}}(_,0),function(){const e=f.length,t=u.reduce(((e,t)=>Math.max(e,t.lane)),0)+1,n=T(Array(t),""),r=f.map((()=>Array(t))),i=f.map((()=>T(Array(t),0)));for(const s of u){r[s.level][s.lane]=s;const e=m(s);for(let n=0;n<e.length;n++){const t=e[n];let r=8;t.lane===s.lane&&(r|=4),n>0&&(r|=1),n<e.length-1&&(r|=2),i[s.level][t.lane]|=r}0===e.length&&(i[s.level][s.lane]|=16);const t=h(s);for(let n=0;n<t.length;n++){const e=t[n];let r=4;n>0&&(r|=1),n<t.length-1&&(r|=2),i[s.level-1][e.lane]|=r}}for(let s=0;s<e;s++)for(let e=0;e<t;e++){const t=s>0?i[s-1][e]:0,n=e>0?i[s][e-1]:0;let r=i[s][e];r||(8&t&&(r|=12),2&n&&(r|=3),i[s][e]=r)}for(let s=0;s<e;s++)for(let t=0;t<n.length;t++){const n=i[s][t],a=4&n?"\u2500":" ",c=r[s][t];c?(o(t,c.text),s<e-1&&(o(t," "),o(t,w(a,f[s]-c.text.length)))):s<e-1&&o(t,w(a,f[s]+1)),o(t,S(n)),o(t,8&n&&s<e-1&&!r[s+1][t]?"\u2500":" ")}return`\n${n.join("\n")}\n`;function o(e,t){n[e]+=t}}();function m(e){const t=[];for(const n of e.edges)n.source===e&&t.push(n.target);return t}function h(e){const t=[];for(const n of e.edges)n.target===e&&t.push(n.source);return t}function g(e,t){const n=r(e);let i=l[n];if(i&&t.has(e))return i.circular=!0,i={id:-1,flowNode:e,edges:[],text:"",lane:-1,endLane:-1,level:-1,circular:"circularity"},u.push(i),i;if(t.add(e),!i)if(l[n]=i={id:n,flowNode:e,edges:[],text:"",lane:-1,endLane:-1,level:-1,circular:!1},u.push(i),12&(o=e).flags&&o.antecedent)for(const r of e.antecedent)y(i,r,t);else(function(e){return!!(e.flags&a)})(e)&&y(i,e.antecedent,t);var o;return t.delete(e),i}function y(e,t,n){const r=g(t,n),i={source:e,target:r};d.push(i),e.edges.push(i),r.edges.push(i)}function v(e){if(-1!==e.level)return e.level;let t=0;for(const n of h(e))t=Math.max(t,v(n)+1);return e.level=t}function b(e){return Z_(C_(e),e,!1)}function x(e,t){let n=function(e){if(2&e)return"Start";if(4&e)return"Branch";if(8&e)return"Loop";if(16&e)return"Assignment";if(32&e)return"True";if(64&e)return"False";if(128&e)return"SwitchClause";if(256&e)return"ArrayMutation";if(512&e)return"Call";if(1024&e)return"ReduceLabel";if(1&e)return"Unreachable";throw new Error}(e.flags);if(t&&(n=`${n}#${r(e)}`),128&e.flags){const t=[],{switchStatement:r,clauseStart:i,clauseEnd:o}=e.node;for(let e=i;e<o;e++){const n=r.caseBlock.clauses[e];VI(n)?t.push("default"):t.push(b(n.expression))}n+=` (${t.join(", ")})`}else(function(e){return!!(e.flags&c)})(e)&&e.node&&(n+=` (${b(e.node)})`);return"circularity"===t?`Circular(${n})`:n}function S(e){switch(e){case 3:return"\u2502";case 12:return"\u2500";case 5:return"\u256f";case 9:return"\u2570";case 6:return"\u256e";case 10:return"\u256d";case 7:return"\u2524";case 11:return"\u251c";case 13:return"\u2534";case 14:return"\u252c";case 15:return"\u256b"}return" "}function T(e,t){if(e.fill)e.fill(t);else for(let n=0;n<e.length;n++)e[n]=t;return e}function w(e,t){if(e.repeat)return t>0?e.repeat(t):"";let n="";for(;n.length<t;)n+=e;return n}}e.DebugTypeMapper=L,e.attachDebugPrototypeIfDebug=function(t){return e.isDebugging?Object.setPrototypeOf(t,L.prototype):t},e.printControlFlowGraph=function(e){return o.log(j(e))},e.formatControlFlowGraph=j})(Tn||(Tn={}));var kn=/^(0|[1-9]\d*)(?:\.(0|[1-9]\d*)(?:\.(0|[1-9]\d*)(?:-([a-z0-9-.]+))?(?:\+([a-z0-9-.]+))?)?)?$/i,En=/^(?:0|[1-9]\d*|[a-z-][a-z0-9-]*)(?:\.(?:0|[1-9]\d*|[a-z-][a-z0-9-]*))*$/i,Cn=/^(?:0|[1-9]\d*|[a-z-][a-z0-9-]*)$/i,Nn=/^[a-z0-9-]+(?:\.[a-z0-9-]+)*$/i,An=/^[a-z0-9-]+$/i,In=/^(0|[1-9]\d*)$/,Dn=class e{constructor(e,t=0,n=0,r="",i=""){if("string"==typeof e){const o=Tn.checkDefined(Mn(e),"Invalid version");({major:e,minor:t,patch:n,prerelease:r,build:i}=o)}Tn.assert(e>=0,"Invalid argument: major"),Tn.assert(t>=0,"Invalid argument: minor"),Tn.assert(n>=0,"Invalid argument: patch");const o=r?at(r)?r:r.split("."):_,s=i?at(i)?i:i.split("."):_;Tn.assert(T(o,(e=>Cn.test(e))),"Invalid argument: prerelease"),Tn.assert(T(s,(e=>An.test(e))),"Invalid argument: build"),this.major=e,this.minor=t,this.patch=n,this.prerelease=o,this.build=s}static tryParse(t){const n=Mn(t);if(!n)return;const{major:r,minor:i,patch:o,prerelease:s,build:a}=n;return new e(r,i,o,s,a)}compareTo(e){return this===e?0:void 0===e?1:Pt(this.major,e.major)||Pt(this.minor,e.minor)||Pt(this.patch,e.patch)||function(e,t){if(e===t)return 0;if(0===e.length)return 0===t.length?0:1;if(0===t.length)return-1;const n=Math.min(e.length,t.length);for(let r=0;r<n;r++){const n=e[r],i=t[r];if(n===i)continue;const o=In.test(n),s=In.test(i);if(o||s){if(o!==s)return o?-1:1;const e=Pt(+n,+i);if(e)return e}else{const e=Lt(n,i);if(e)return e}}return Pt(e.length,t.length)}(this.prerelease,e.prerelease)}increment(t){switch(t){case"major":return new e(this.major+1,0,0);case"minor":return new e(this.major,this.minor+1,0);case"patch":return new e(this.major,this.minor,this.patch+1);default:return Tn.assertNever(t)}}with(t){const{major:n=this.major,minor:r=this.minor,patch:i=this.patch,prerelease:o=this.prerelease,build:s=this.build}=t;return new e(n,r,i,o,s)}toString(){let e=`${this.major}.${this.minor}.${this.patch}`;return $(this.prerelease)&&(e+=`-${this.prerelease.join(".")}`),$(this.build)&&(e+=`+${this.build.join(".")}`),e}};Dn.zero=new Dn(0,0,0,["0"]);var Pn=Dn;function Mn(e){const t=kn.exec(e);if(!t)return;const[,n,r="0",i="0",o="",s=""]=t;return o&&!En.test(o)||s&&!Nn.test(s)?void 0:{major:parseInt(n,10),minor:parseInt(r,10),patch:parseInt(i,10),prerelease:o,build:s}}var On=class e{constructor(e){this._alternatives=e?Tn.checkDefined(Un(e),"Invalid range spec."):_}static tryParse(t){const n=Un(t);if(n){const t=new e("");return t._alternatives=n,t}}test(e){return"string"==typeof e&&(e=new Pn(e)),function(e,t){if(0===t.length)return!0;for(const n of t)if(Wn(e,n))return!0;return!1}(e,this._alternatives)}toString(){return R(this._alternatives,Gn).join(" || ")||"*"}},Fn=/\|\|/g,Rn=/\s+/g,Ln=/^([xX*0]|[1-9]\d*)(?:\.([xX*0]|[1-9]\d*)(?:\.([xX*0]|[1-9]\d*)(?:-([a-z0-9-.]+))?(?:\+([a-z0-9-.]+))?)?)?$/i,jn=/^\s*([a-z0-9-+.*]+)\s+-\s+([a-z0-9-+.*]+)\s*$/i,zn=/^(~|\^|<|<=|>|>=|=)?\s*([a-z0-9-+.*]+)$/i;function Un(e){const t=[];for(let n of e.trim().split(Fn)){if(!n)continue;const e=[];n=n.trim();const r=jn.exec(n);if(r){if(!qn(r[1],r[2],e))return}else for(const t of n.split(Rn)){const n=zn.exec(t.trim());if(!n||!Vn(n[1],n[2],e))return}t.push(e)}return t}function Bn(e){const t=Ln.exec(e);if(!t)return;const[,n,r="*",i="*",o,s]=t;return{version:new Pn(Kn(n)?0:parseInt(n,10),Kn(n)||Kn(r)?0:parseInt(r,10),Kn(n)||Kn(r)||Kn(i)?0:parseInt(i,10),o,s),major:n,minor:r,patch:i}}function qn(e,t,n){const r=Bn(e);if(!r)return!1;const i=Bn(t);return!!i&&(Kn(r.major)||n.push(Jn(">=",r.version)),Kn(i.major)||n.push(Kn(i.minor)?Jn("<",i.version.increment("major")):Kn(i.patch)?Jn("<",i.version.increment("minor")):Jn("<=",i.version)),!0)}function Vn(e,t,n){const r=Bn(t);if(!r)return!1;const{version:i,major:o,minor:s,patch:a}=r;if(Kn(o))"<"!==e&&">"!==e||n.push(Jn("<",Pn.zero));else switch(e){case"~":n.push(Jn(">=",i)),n.push(Jn("<",i.increment(Kn(s)?"major":"minor")));break;case"^":n.push(Jn(">=",i)),n.push(Jn("<",i.increment(i.major>0||Kn(s)?"major":i.minor>0||Kn(a)?"minor":"patch")));break;case"<":case">=":n.push(Kn(s)||Kn(a)?Jn(e,i.with({prerelease:"0"})):Jn(e,i));break;case"<=":case">":n.push(Kn(s)?Jn("<="===e?"<":">=",i.increment("major").with({prerelease:"0"})):Kn(a)?Jn("<="===e?"<":">=",i.increment("minor").with({prerelease:"0"})):Jn(e,i));break;case"=":case void 0:Kn(s)||Kn(a)?(n.push(Jn(">=",i.with({prerelease:"0"}))),n.push(Jn("<",i.increment(Kn(s)?"major":"minor").with({prerelease:"0"})))):n.push(Jn("=",i));break;default:return!1}return!0}function Kn(e){return"*"===e||"x"===e||"X"===e}function Jn(e,t){return{operator:e,operand:t}}function Wn(e,t){for(const n of t)if(!Hn(e,n.operator,n.operand))return!1;return!0}function Hn(e,t,n){const r=e.compareTo(n);switch(t){case"<":return r<0;case"<=":return r<=0;case">":return r>0;case">=":return r>=0;case"=":return 0===r;default:return Tn.assertNever(t)}}function Gn(e){return R(e,Qn).join(" ")}function Qn(e){return`${e.operator}${e.operand}`}var Yn=function(){const e=function(){if(Sn())try{const{performance:e}=n(6732);if(e)return{shouldWriteNativeEvents:!1,performance:e}}catch{}if("object"==typeof performance)return{shouldWriteNativeEvents:!0,performance:performance}}();if(!e)return;const{shouldWriteNativeEvents:t,performance:r}=e,i={shouldWriteNativeEvents:t,performance:void 0,performanceTime:void 0};return"number"==typeof r.timeOrigin&&"function"==typeof r.now&&(i.performanceTime=r),i.performanceTime&&"function"==typeof r.mark&&"function"==typeof r.measure&&"function"==typeof r.clearMarks&&"function"==typeof r.clearMeasures&&(i.performance=r),i}(),Zn=null==Yn?void 0:Yn.performanceTime;function Xn(){return Yn}var $n,er=Zn?()=>Zn.now():Date.now;try{const e=i.env.TS_ETW_MODULE_PATH??"./node_modules/@microsoft/typescript-etw";$n=n(89387)(e)}catch(Mge){$n=void 0}var tr,nr,rr=(null==$n?void 0:$n.logEvent)?$n:void 0,ir={};function or(e,t,n,r){return e?sr(t,n,r):lr}function sr(e,t,n){let r=0;return{enter:function(){1==++r&&mr(t)},exit:function(){0==--r?(mr(n),hr(e,t,n)):r<0&&Tn.fail("enter/exit count does not match.")}}}a(ir,{clearMarks:()=>Sr,clearMeasures:()=>xr,createTimer:()=>sr,createTimerIf:()=>or,disable:()=>kr,enable:()=>wr,forEachMark:()=>br,forEachMeasure:()=>vr,getCount:()=>gr,getDuration:()=>yr,isEnabled:()=>Tr,mark:()=>mr,measure:()=>hr,nullTimer:()=>lr});var ar,cr,lr={enter:pt,exit:pt},ur=!1,dr=er(),_r=new Map,pr=new Map,fr=new Map;function mr(e){if(ur){const t=pr.get(e)??0;pr.set(e,t+1),_r.set(e,er()),null==nr||nr.mark(e),"function"==typeof onProfilerEvent&&onProfilerEvent(e)}}function hr(e,t,n){if(ur){const r=(void 0!==n?_r.get(n):void 0)??er(),i=(void 0!==t?_r.get(t):void 0)??dr,o=fr.get(e)||0;fr.set(e,o+(r-i)),null==nr||nr.measure(e,t,n)}}function gr(e){return pr.get(e)||0}function yr(e){return fr.get(e)||0}function vr(e){fr.forEach(((t,n)=>e(n,t)))}function br(e){_r.forEach(((t,n)=>e(n)))}function xr(e){void 0!==e?fr.delete(e):fr.clear(),null==nr||nr.clearMeasures(e)}function Sr(e){void 0!==e?(pr.delete(e),_r.delete(e)):(pr.clear(),_r.clear()),null==nr||nr.clearMarks(e)}function Tr(){return ur}function wr(e=To){var t;return ur||(ur=!0,tr||(tr=Xn()),(null==tr?void 0:tr.performance)&&(dr=tr.performance.timeOrigin,(tr.shouldWriteNativeEvents||(null==(t=null==e?void 0:e.cpuProfilingEnabled)?void 0:t.call(e))||(null==e?void 0:e.debugMode))&&(nr=tr.performance))),!0}function kr(){ur&&(_r.clear(),pr.clear(),fr.clear(),nr=void 0,ur=!1)}(e=>{let t,r,o=0,s=0;const a=[];let c;const l=[];let u;var d;e.startTracing=function(u,d,_){if(Tn.assert(!ar,"Tracing already started"),void 0===t)try{t=n(84021)}catch(Mge){throw new Error(`tracing requires having fs\n(original error: ${Mge.message||Mge})`)}r=u,a.length=0,void 0===c&&(c=Zo(d,"legend.json")),t.existsSync(d)||t.mkdirSync(d,{recursive:!0});const p="build"===r?`.${i.pid}-${++o}`:"server"===r?`.${i.pid}`:"",f=Zo(d,`trace${p}.json`),m=Zo(d,`types${p}.json`);l.push({configFilePath:_,tracePath:f,typesPath:m}),s=t.openSync(f,"w"),ar=e;const h={cat:"__metadata",ph:"M",ts:1e3*er(),pid:1,tid:1};t.writeSync(s,"[\n"+[{name:"process_name",args:{name:"tsc"},...h},{name:"thread_name",args:{name:"Main"},...h},{name:"TracingStartedInBrowser",...h,cat:"disabled-by-default-devtools.timeline"}].map((e=>JSON.stringify(e))).join(",\n"))},e.stopTracing=function(){Tn.assert(ar,"Tracing is not in progress"),Tn.assert(!!a.length==("server"!==r)),t.writeSync(s,"\n]\n"),t.closeSync(s),ar=void 0,a.length?function(e){var n,r,i,o,s,a,c,u,d,_,p,f,m,g,y,v,b,x,S;mr("beginDumpTypes");const T=l[l.length-1].typesPath,w=t.openSync(T,"w"),k=new Map;t.writeSync(w,"[");const E=e.length;for(let l=0;l<E;l++){const T=e[l],C=T.objectFlags,N=T.aliasSymbol??T.symbol;let A;if(16&C|2944&T.flags)try{A=null==(n=T.checker)?void 0:n.typeToString(T)}catch{A=void 0}let I={};if(8388608&T.flags){const e=T;I={indexedAccessObjectType:null==(r=e.objectType)?void 0:r.id,indexedAccessIndexType:null==(i=e.indexType)?void 0:i.id}}let D={};if(4&C){const e=T;D={instantiatedType:null==(o=e.target)?void 0:o.id,typeArguments:null==(s=e.resolvedTypeArguments)?void 0:s.map((e=>e.id)),referenceLocation:h(e.node)}}let P={};if(16777216&T.flags){const e=T;P={conditionalCheckType:null==(a=e.checkType)?void 0:a.id,conditionalExtendsType:null==(c=e.extendsType)?void 0:c.id,conditionalTrueType:(null==(u=e.resolvedTrueType)?void 0:u.id)??-1,conditionalFalseType:(null==(d=e.resolvedFalseType)?void 0:d.id)??-1}}let M={};if(33554432&T.flags){const e=T;M={substitutionBaseType:null==(_=e.baseType)?void 0:_.id,constraintType:null==(p=e.constraint)?void 0:p.id}}let O={};if(1024&C){const e=T;O={reverseMappedSourceType:null==(f=e.source)?void 0:f.id,reverseMappedMappedType:null==(m=e.mappedType)?void 0:m.id,reverseMappedConstraintType:null==(g=e.constraintType)?void 0:g.id}}let F,R={};if(256&C){const e=T;R={evolvingArrayElementType:e.elementType.id,evolvingArrayFinalType:null==(y=e.finalArrayType)?void 0:y.id}}const L=T.checker.getRecursionIdentity(T);L&&(F=k.get(L),F||(F=k.size,k.set(L,F)));const j={id:T.id,intrinsicName:T.intrinsicName,symbolName:(null==N?void 0:N.escapedName)&&wc(N.escapedName),recursionId:F,isTuple:!!(8&C)||void 0,unionTypes:1048576&T.flags?null==(v=T.types)?void 0:v.map((e=>e.id)):void 0,intersectionTypes:2097152&T.flags?T.types.map((e=>e.id)):void 0,aliasTypeArguments:null==(b=T.aliasTypeArguments)?void 0:b.map((e=>e.id)),keyofType:4194304&T.flags?null==(x=T.type)?void 0:x.id:void 0,...I,...D,...P,...M,...O,...R,destructuringPattern:h(T.pattern),firstDeclaration:h(null==(S=null==N?void 0:N.declarations)?void 0:S[0]),flags:Tn.formatTypeFlags(T.flags).split("|"),display:A};t.writeSync(w,JSON.stringify(j)),l<E-1&&t.writeSync(w,",\n")}t.writeSync(w,"]\n"),t.closeSync(w),mr("endDumpTypes"),hr("Dump types","beginDumpTypes","endDumpTypes")}(a):l[l.length-1].typesPath=void 0},e.recordType=function(e){"server"!==r&&a.push(e)},(d=u=e.Phase||(e.Phase={})).Parse="parse",d.Program="program",d.Bind="bind",d.Check="check",d.CheckTypes="checkTypes",d.Emit="emit",d.Session="session",e.instant=function(e,t,n){m("I",e,t,n,'"s":"g"')};const _=[];e.push=function(e,t,n,r=!1){r&&m("B",e,t,n),_.push({phase:e,name:t,args:n,time:1e3*er(),separateBeginAndEnd:r})},e.pop=function(e){Tn.assert(_.length>0),f(_.length-1,1e3*er(),e),_.length--},e.popAll=function(){const e=1e3*er();for(let t=_.length-1;t>=0;t--)f(t,e);_.length=0};const p=1e4;function f(e,t,n){const{phase:r,name:i,args:o,time:s,separateBeginAndEnd:a}=_[e];a?(Tn.assert(!n,"`results` are not supported for events with `separateBeginAndEnd`"),m("E",r,i,o,void 0,t)):p-s%p<=t-s&&m("X",r,i,{...o,results:n},'"dur":'+(t-s),s)}function m(e,n,i,o,a,c=1e3*er()){"server"===r&&"checkTypes"===n||(mr("beginTracing"),t.writeSync(s,`,\n{"pid":1,"tid":1,"ph":"${e}","cat":"${n}","ts":${c},"name":"${i}"`),a&&t.writeSync(s,`,${a}`),o&&t.writeSync(s,`,"args":${JSON.stringify(o)}`),t.writeSync(s,"}"),mr("endTracing"),hr("Tracing","beginTracing","endTracing"))}function h(e){const t=C_(e);return t?{path:t.path,start:n(ta(t,e.pos)),end:n(ta(t,e.end))}:void 0;function n(e){return{line:e.line+1,character:e.character+1}}}e.dumpLegend=function(){c&&t.writeFileSync(c,JSON.stringify(l))}})(cr||(cr={}));var Er=cr.startTracing,Cr=cr.dumpLegend,Nr=(e=>(e[e.Unknown=0]="Unknown",e[e.EndOfFileToken=1]="EndOfFileToken",e[e.SingleLineCommentTrivia=2]="SingleLineCommentTrivia",e[e.MultiLineCommentTrivia=3]="MultiLineCommentTrivia",e[e.NewLineTrivia=4]="NewLineTrivia",e[e.WhitespaceTrivia=5]="WhitespaceTrivia",e[e.ShebangTrivia=6]="ShebangTrivia",e[e.ConflictMarkerTrivia=7]="ConflictMarkerTrivia",e[e.NonTextFileMarkerTrivia=8]="NonTextFileMarkerTrivia",e[e.NumericLiteral=9]="NumericLiteral",e[e.BigIntLiteral=10]="BigIntLiteral",e[e.StringLiteral=11]="StringLiteral",e[e.JsxText=12]="JsxText",e[e.JsxTextAllWhiteSpaces=13]="JsxTextAllWhiteSpaces",e[e.RegularExpressionLiteral=14]="RegularExpressionLiteral",e[e.NoSubstitutionTemplateLiteral=15]="NoSubstitutionTemplateLiteral",e[e.TemplateHead=16]="TemplateHead",e[e.TemplateMiddle=17]="TemplateMiddle",e[e.TemplateTail=18]="TemplateTail",e[e.OpenBraceToken=19]="OpenBraceToken",e[e.CloseBraceToken=20]="CloseBraceToken",e[e.OpenParenToken=21]="OpenParenToken",e[e.CloseParenToken=22]="CloseParenToken",e[e.OpenBracketToken=23]="OpenBracketToken",e[e.CloseBracketToken=24]="CloseBracketToken",e[e.DotToken=25]="DotToken",e[e.DotDotDotToken=26]="DotDotDotToken",e[e.SemicolonToken=27]="SemicolonToken",e[e.CommaToken=28]="CommaToken",e[e.QuestionDotToken=29]="QuestionDotToken",e[e.LessThanToken=30]="LessThanToken",e[e.LessThanSlashToken=31]="LessThanSlashToken",e[e.GreaterThanToken=32]="GreaterThanToken",e[e.LessThanEqualsToken=33]="LessThanEqualsToken",e[e.GreaterThanEqualsToken=34]="GreaterThanEqualsToken",e[e.EqualsEqualsToken=35]="EqualsEqualsToken",e[e.ExclamationEqualsToken=36]="ExclamationEqualsToken",e[e.EqualsEqualsEqualsToken=37]="EqualsEqualsEqualsToken",e[e.ExclamationEqualsEqualsToken=38]="ExclamationEqualsEqualsToken",e[e.EqualsGreaterThanToken=39]="EqualsGreaterThanToken",e[e.PlusToken=40]="PlusToken",e[e.MinusToken=41]="MinusToken",e[e.AsteriskToken=42]="AsteriskToken",e[e.AsteriskAsteriskToken=43]="AsteriskAsteriskToken",e[e.SlashToken=44]="SlashToken",e[e.PercentToken=45]="PercentToken",e[e.PlusPlusToken=46]="PlusPlusToken",e[e.MinusMinusToken=47]="MinusMinusToken",e[e.LessThanLessThanToken=48]="LessThanLessThanToken",e[e.GreaterThanGreaterThanToken=49]="GreaterThanGreaterThanToken",e[e.GreaterThanGreaterThanGreaterThanToken=50]="GreaterThanGreaterThanGreaterThanToken",e[e.AmpersandToken=51]="AmpersandToken",e[e.BarToken=52]="BarToken",e[e.CaretToken=53]="CaretToken",e[e.ExclamationToken=54]="ExclamationToken",e[e.TildeToken=55]="TildeToken",e[e.AmpersandAmpersandToken=56]="AmpersandAmpersandToken",e[e.BarBarToken=57]="BarBarToken",e[e.QuestionToken=58]="QuestionToken",e[e.ColonToken=59]="ColonToken",e[e.AtToken=60]="AtToken",e[e.QuestionQuestionToken=61]="QuestionQuestionToken",e[e.BacktickToken=62]="BacktickToken",e[e.HashToken=63]="HashToken",e[e.EqualsToken=64]="EqualsToken",e[e.PlusEqualsToken=65]="PlusEqualsToken",e[e.MinusEqualsToken=66]="MinusEqualsToken",e[e.AsteriskEqualsToken=67]="AsteriskEqualsToken",e[e.AsteriskAsteriskEqualsToken=68]="AsteriskAsteriskEqualsToken",e[e.SlashEqualsToken=69]="SlashEqualsToken",e[e.PercentEqualsToken=70]="PercentEqualsToken",e[e.LessThanLessThanEqualsToken=71]="LessThanLessThanEqualsToken",e[e.GreaterThanGreaterThanEqualsToken=72]="GreaterThanGreaterThanEqualsToken",e[e.GreaterThanGreaterThanGreaterThanEqualsToken=73]="GreaterThanGreaterThanGreaterThanEqualsToken",e[e.AmpersandEqualsToken=74]="AmpersandEqualsToken",e[e.BarEqualsToken=75]="BarEqualsToken",e[e.BarBarEqualsToken=76]="BarBarEqualsToken",e[e.AmpersandAmpersandEqualsToken=77]="AmpersandAmpersandEqualsToken",e[e.QuestionQuestionEqualsToken=78]="QuestionQuestionEqualsToken",e[e.CaretEqualsToken=79]="CaretEqualsToken",e[e.Identifier=80]="Identifier",e[e.PrivateIdentifier=81]="PrivateIdentifier",e[e.JSDocCommentTextToken=82]="JSDocCommentTextToken",e[e.BreakKeyword=83]="BreakKeyword",e[e.CaseKeyword=84]="CaseKeyword",e[e.CatchKeyword=85]="CatchKeyword",e[e.ClassKeyword=86]="ClassKeyword",e[e.ConstKeyword=87]="ConstKeyword",e[e.ContinueKeyword=88]="ContinueKeyword",e[e.DebuggerKeyword=89]="DebuggerKeyword",e[e.DefaultKeyword=90]="DefaultKeyword",e[e.DeleteKeyword=91]="DeleteKeyword",e[e.DoKeyword=92]="DoKeyword",e[e.ElseKeyword=93]="ElseKeyword",e[e.EnumKeyword=94]="EnumKeyword",e[e.ExportKeyword=95]="ExportKeyword",e[e.ExtendsKeyword=96]="ExtendsKeyword",e[e.FalseKeyword=97]="FalseKeyword",e[e.FinallyKeyword=98]="FinallyKeyword",e[e.ForKeyword=99]="ForKeyword",e[e.FunctionKeyword=100]="FunctionKeyword",e[e.IfKeyword=101]="IfKeyword",e[e.ImportKeyword=102]="ImportKeyword",e[e.InKeyword=103]="InKeyword",e[e.InstanceOfKeyword=104]="InstanceOfKeyword",e[e.NewKeyword=105]="NewKeyword",e[e.NullKeyword=106]="NullKeyword",e[e.ReturnKeyword=107]="ReturnKeyword",e[e.SuperKeyword=108]="SuperKeyword",e[e.SwitchKeyword=109]="SwitchKeyword",e[e.ThisKeyword=110]="ThisKeyword",e[e.ThrowKeyword=111]="ThrowKeyword",e[e.TrueKeyword=112]="TrueKeyword",e[e.TryKeyword=113]="TryKeyword",e[e.TypeOfKeyword=114]="TypeOfKeyword",e[e.VarKeyword=115]="VarKeyword",e[e.VoidKeyword=116]="VoidKeyword",e[e.WhileKeyword=117]="WhileKeyword",e[e.WithKeyword=118]="WithKeyword",e[e.ImplementsKeyword=119]="ImplementsKeyword",e[e.InterfaceKeyword=120]="InterfaceKeyword",e[e.LetKeyword=121]="LetKeyword",e[e.PackageKeyword=122]="PackageKeyword",e[e.PrivateKeyword=123]="PrivateKeyword",e[e.ProtectedKeyword=124]="ProtectedKeyword",e[e.PublicKeyword=125]="PublicKeyword",e[e.StaticKeyword=126]="StaticKeyword",e[e.YieldKeyword=127]="YieldKeyword",e[e.AbstractKeyword=128]="AbstractKeyword",e[e.AccessorKeyword=129]="AccessorKeyword",e[e.AsKeyword=130]="AsKeyword",e[e.AssertsKeyword=131]="AssertsKeyword",e[e.AssertKeyword=132]="AssertKeyword",e[e.AnyKeyword=133]="AnyKeyword",e[e.AsyncKeyword=134]="AsyncKeyword",e[e.AwaitKeyword=135]="AwaitKeyword",e[e.BooleanKeyword=136]="BooleanKeyword",e[e.ConstructorKeyword=137]="ConstructorKeyword",e[e.DeclareKeyword=138]="DeclareKeyword",e[e.GetKeyword=139]="GetKeyword",e[e.InferKeyword=140]="InferKeyword",e[e.IntrinsicKeyword=141]="IntrinsicKeyword",e[e.IsKeyword=142]="IsKeyword",e[e.KeyOfKeyword=143]="KeyOfKeyword",e[e.ModuleKeyword=144]="ModuleKeyword",e[e.NamespaceKeyword=145]="NamespaceKeyword",e[e.NeverKeyword=146]="NeverKeyword",e[e.OutKeyword=147]="OutKeyword",e[e.ReadonlyKeyword=148]="ReadonlyKeyword",e[e.RequireKeyword=149]="RequireKeyword",e[e.NumberKeyword=150]="NumberKeyword",e[e.ObjectKeyword=151]="ObjectKeyword",e[e.SatisfiesKeyword=152]="SatisfiesKeyword",e[e.SetKeyword=153]="SetKeyword",e[e.StringKeyword=154]="StringKeyword",e[e.SymbolKeyword=155]="SymbolKeyword",e[e.TypeKeyword=156]="TypeKeyword",e[e.UndefinedKeyword=157]="UndefinedKeyword",e[e.UniqueKeyword=158]="UniqueKeyword",e[e.UnknownKeyword=159]="UnknownKeyword",e[e.UsingKeyword=160]="UsingKeyword",e[e.FromKeyword=161]="FromKeyword",e[e.GlobalKeyword=162]="GlobalKeyword",e[e.BigIntKeyword=163]="BigIntKeyword",e[e.OverrideKeyword=164]="OverrideKeyword",e[e.OfKeyword=165]="OfKeyword",e[e.QualifiedName=166]="QualifiedName",e[e.ComputedPropertyName=167]="ComputedPropertyName",e[e.TypeParameter=168]="TypeParameter",e[e.Parameter=169]="Parameter",e[e.Decorator=170]="Decorator",e[e.PropertySignature=171]="PropertySignature",e[e.PropertyDeclaration=172]="PropertyDeclaration",e[e.MethodSignature=173]="MethodSignature",e[e.MethodDeclaration=174]="MethodDeclaration",e[e.ClassStaticBlockDeclaration=175]="ClassStaticBlockDeclaration",e[e.Constructor=176]="Constructor",e[e.GetAccessor=177]="GetAccessor",e[e.SetAccessor=178]="SetAccessor",e[e.CallSignature=179]="CallSignature",e[e.ConstructSignature=180]="ConstructSignature",e[e.IndexSignature=181]="IndexSignature",e[e.TypePredicate=182]="TypePredicate",e[e.TypeReference=183]="TypeReference",e[e.FunctionType=184]="FunctionType",e[e.ConstructorType=185]="ConstructorType",e[e.TypeQuery=186]="TypeQuery",e[e.TypeLiteral=187]="TypeLiteral",e[e.ArrayType=188]="ArrayType",e[e.TupleType=189]="TupleType",e[e.OptionalType=190]="OptionalType",e[e.RestType=191]="RestType",e[e.UnionType=192]="UnionType",e[e.IntersectionType=193]="IntersectionType",e[e.ConditionalType=194]="ConditionalType",e[e.InferType=195]="InferType",e[e.ParenthesizedType=196]="ParenthesizedType",e[e.ThisType=197]="ThisType",e[e.TypeOperator=198]="TypeOperator",e[e.IndexedAccessType=199]="IndexedAccessType",e[e.MappedType=200]="MappedType",e[e.LiteralType=201]="LiteralType",e[e.NamedTupleMember=202]="NamedTupleMember",e[e.TemplateLiteralType=203]="TemplateLiteralType",e[e.TemplateLiteralTypeSpan=204]="TemplateLiteralTypeSpan",e[e.ImportType=205]="ImportType",e[e.ObjectBindingPattern=206]="ObjectBindingPattern",e[e.ArrayBindingPattern=207]="ArrayBindingPattern",e[e.BindingElement=208]="BindingElement",e[e.ArrayLiteralExpression=209]="ArrayLiteralExpression",e[e.ObjectLiteralExpression=210]="ObjectLiteralExpression",e[e.PropertyAccessExpression=211]="PropertyAccessExpression",e[e.ElementAccessExpression=212]="ElementAccessExpression",e[e.CallExpression=213]="CallExpression",e[e.NewExpression=214]="NewExpression",e[e.TaggedTemplateExpression=215]="TaggedTemplateExpression",e[e.TypeAssertionExpression=216]="TypeAssertionExpression",e[e.ParenthesizedExpression=217]="ParenthesizedExpression",e[e.FunctionExpression=218]="FunctionExpression",e[e.ArrowFunction=219]="ArrowFunction",e[e.DeleteExpression=220]="DeleteExpression",e[e.TypeOfExpression=221]="TypeOfExpression",e[e.VoidExpression=222]="VoidExpression",e[e.AwaitExpression=223]="AwaitExpression",e[e.PrefixUnaryExpression=224]="PrefixUnaryExpression",e[e.PostfixUnaryExpression=225]="PostfixUnaryExpression",e[e.BinaryExpression=226]="BinaryExpression",e[e.ConditionalExpression=227]="ConditionalExpression",e[e.TemplateExpression=228]="TemplateExpression",e[e.YieldExpression=229]="YieldExpression",e[e.SpreadElement=230]="SpreadElement",e[e.ClassExpression=231]="ClassExpression",e[e.OmittedExpression=232]="OmittedExpression",e[e.ExpressionWithTypeArguments=233]="ExpressionWithTypeArguments",e[e.AsExpression=234]="AsExpression",e[e.NonNullExpression=235]="NonNullExpression",e[e.MetaProperty=236]="MetaProperty",e[e.SyntheticExpression=237]="SyntheticExpression",e[e.SatisfiesExpression=238]="SatisfiesExpression",e[e.TemplateSpan=239]="TemplateSpan",e[e.SemicolonClassElement=240]="SemicolonClassElement",e[e.Block=241]="Block",e[e.EmptyStatement=242]="EmptyStatement",e[e.VariableStatement=243]="VariableStatement",e[e.ExpressionStatement=244]="ExpressionStatement",e[e.IfStatement=245]="IfStatement",e[e.DoStatement=246]="DoStatement",e[e.WhileStatement=247]="WhileStatement",e[e.ForStatement=248]="ForStatement",e[e.ForInStatement=249]="ForInStatement",e[e.ForOfStatement=250]="ForOfStatement",e[e.ContinueStatement=251]="ContinueStatement",e[e.BreakStatement=252]="BreakStatement",e[e.ReturnStatement=253]="ReturnStatement",e[e.WithStatement=254]="WithStatement",e[e.SwitchStatement=255]="SwitchStatement",e[e.LabeledStatement=256]="LabeledStatement",e[e.ThrowStatement=257]="ThrowStatement",e[e.TryStatement=258]="TryStatement",e[e.DebuggerStatement=259]="DebuggerStatement",e[e.VariableDeclaration=260]="VariableDeclaration",e[e.VariableDeclarationList=261]="VariableDeclarationList",e[e.FunctionDeclaration=262]="FunctionDeclaration",e[e.ClassDeclaration=263]="ClassDeclaration",e[e.InterfaceDeclaration=264]="InterfaceDeclaration",e[e.TypeAliasDeclaration=265]="TypeAliasDeclaration",e[e.EnumDeclaration=266]="EnumDeclaration",e[e.ModuleDeclaration=267]="ModuleDeclaration",e[e.ModuleBlock=268]="ModuleBlock",e[e.CaseBlock=269]="CaseBlock",e[e.NamespaceExportDeclaration=270]="NamespaceExportDeclaration",e[e.ImportEqualsDeclaration=271]="ImportEqualsDeclaration",e[e.ImportDeclaration=272]="ImportDeclaration",e[e.ImportClause=273]="ImportClause",e[e.NamespaceImport=274]="NamespaceImport",e[e.NamedImports=275]="NamedImports",e[e.ImportSpecifier=276]="ImportSpecifier",e[e.ExportAssignment=277]="ExportAssignment",e[e.ExportDeclaration=278]="ExportDeclaration",e[e.NamedExports=279]="NamedExports",e[e.NamespaceExport=280]="NamespaceExport",e[e.ExportSpecifier=281]="ExportSpecifier",e[e.MissingDeclaration=282]="MissingDeclaration",e[e.ExternalModuleReference=283]="ExternalModuleReference",e[e.JsxElement=284]="JsxElement",e[e.JsxSelfClosingElement=285]="JsxSelfClosingElement",e[e.JsxOpeningElement=286]="JsxOpeningElement",e[e.JsxClosingElement=287]="JsxClosingElement",e[e.JsxFragment=288]="JsxFragment",e[e.JsxOpeningFragment=289]="JsxOpeningFragment",e[e.JsxClosingFragment=290]="JsxClosingFragment",e[e.JsxAttribute=291]="JsxAttribute",e[e.JsxAttributes=292]="JsxAttributes",e[e.JsxSpreadAttribute=293]="JsxSpreadAttribute",e[e.JsxExpression=294]="JsxExpression",e[e.JsxNamespacedName=295]="JsxNamespacedName",e[e.CaseClause=296]="CaseClause",e[e.DefaultClause=297]="DefaultClause",e[e.HeritageClause=298]="HeritageClause",e[e.CatchClause=299]="CatchClause",e[e.ImportAttributes=300]="ImportAttributes",e[e.ImportAttribute=301]="ImportAttribute",e[e.AssertClause=300]="AssertClause",e[e.AssertEntry=301]="AssertEntry",e[e.ImportTypeAssertionContainer=302]="ImportTypeAssertionContainer",e[e.PropertyAssignment=303]="PropertyAssignment",e[e.ShorthandPropertyAssignment=304]="ShorthandPropertyAssignment",e[e.SpreadAssignment=305]="SpreadAssignment",e[e.EnumMember=306]="EnumMember",e[e.SourceFile=307]="SourceFile",e[e.Bundle=308]="Bundle",e[e.JSDocTypeExpression=309]="JSDocTypeExpression",e[e.JSDocNameReference=310]="JSDocNameReference",e[e.JSDocMemberName=311]="JSDocMemberName",e[e.JSDocAllType=312]="JSDocAllType",e[e.JSDocUnknownType=313]="JSDocUnknownType",e[e.JSDocNullableType=314]="JSDocNullableType",e[e.JSDocNonNullableType=315]="JSDocNonNullableType",e[e.JSDocOptionalType=316]="JSDocOptionalType",e[e.JSDocFunctionType=317]="JSDocFunctionType",e[e.JSDocVariadicType=318]="JSDocVariadicType",e[e.JSDocNamepathType=319]="JSDocNamepathType",e[e.JSDoc=320]="JSDoc",e[e.JSDocComment=320]="JSDocComment",e[e.JSDocText=321]="JSDocText",e[e.JSDocTypeLiteral=322]="JSDocTypeLiteral",e[e.JSDocSignature=323]="JSDocSignature",e[e.JSDocLink=324]="JSDocLink",e[e.JSDocLinkCode=325]="JSDocLinkCode",e[e.JSDocLinkPlain=326]="JSDocLinkPlain",e[e.JSDocTag=327]="JSDocTag",e[e.JSDocAugmentsTag=328]="JSDocAugmentsTag",e[e.JSDocImplementsTag=329]="JSDocImplementsTag",e[e.JSDocAuthorTag=330]="JSDocAuthorTag",e[e.JSDocDeprecatedTag=331]="JSDocDeprecatedTag",e[e.JSDocClassTag=332]="JSDocClassTag",e[e.JSDocPublicTag=333]="JSDocPublicTag",e[e.JSDocPrivateTag=334]="JSDocPrivateTag",e[e.JSDocProtectedTag=335]="JSDocProtectedTag",e[e.JSDocReadonlyTag=336]="JSDocReadonlyTag",e[e.JSDocOverrideTag=337]="JSDocOverrideTag",e[e.JSDocCallbackTag=338]="JSDocCallbackTag",e[e.JSDocOverloadTag=339]="JSDocOverloadTag",e[e.JSDocEnumTag=340]="JSDocEnumTag",e[e.JSDocParameterTag=341]="JSDocParameterTag",e[e.JSDocReturnTag=342]="JSDocReturnTag",e[e.JSDocThisTag=343]="JSDocThisTag",e[e.JSDocTypeTag=344]="JSDocTypeTag",e[e.JSDocTemplateTag=345]="JSDocTemplateTag",e[e.JSDocTypedefTag=346]="JSDocTypedefTag",e[e.JSDocSeeTag=347]="JSDocSeeTag",e[e.JSDocPropertyTag=348]="JSDocPropertyTag",e[e.JSDocThrowsTag=349]="JSDocThrowsTag",e[e.JSDocSatisfiesTag=350]="JSDocSatisfiesTag",e[e.JSDocImportTag=351]="JSDocImportTag",e[e.SyntaxList=352]="SyntaxList",e[e.NotEmittedStatement=353]="NotEmittedStatement",e[e.PartiallyEmittedExpression=354]="PartiallyEmittedExpression",e[e.CommaListExpression=355]="CommaListExpression",e[e.SyntheticReferenceExpression=356]="SyntheticReferenceExpression",e[e.Count=357]="Count",e[e.FirstAssignment=64]="FirstAssignment",e[e.LastAssignment=79]="LastAssignment",e[e.FirstCompoundAssignment=65]="FirstCompoundAssignment",e[e.LastCompoundAssignment=79]="LastCompoundAssignment",e[e.FirstReservedWord=83]="FirstReservedWord",e[e.LastReservedWord=118]="LastReservedWord",e[e.FirstKeyword=83]="FirstKeyword",e[e.LastKeyword=165]="LastKeyword",e[e.FirstFutureReservedWord=119]="FirstFutureReservedWord",e[e.LastFutureReservedWord=127]="LastFutureReservedWord",e[e.FirstTypeNode=182]="FirstTypeNode",e[e.LastTypeNode=205]="LastTypeNode",e[e.FirstPunctuation=19]="FirstPunctuation",e[e.LastPunctuation=79]="LastPunctuation",e[e.FirstToken=0]="FirstToken",e[e.LastToken=165]="LastToken",e[e.FirstTriviaToken=2]="FirstTriviaToken",e[e.LastTriviaToken=7]="LastTriviaToken",e[e.FirstLiteralToken=9]="FirstLiteralToken",e[e.LastLiteralToken=15]="LastLiteralToken",e[e.FirstTemplateToken=15]="FirstTemplateToken",e[e.LastTemplateToken=18]="LastTemplateToken",e[e.FirstBinaryOperator=30]="FirstBinaryOperator",e[e.LastBinaryOperator=79]="LastBinaryOperator",e[e.FirstStatement=243]="FirstStatement",e[e.LastStatement=259]="LastStatement",e[e.FirstNode=166]="FirstNode",e[e.FirstJSDocNode=309]="FirstJSDocNode",e[e.LastJSDocNode=351]="LastJSDocNode",e[e.FirstJSDocTagNode=327]="FirstJSDocTagNode",e[e.LastJSDocTagNode=351]="LastJSDocTagNode",e[e.FirstContextualKeyword=128]="FirstContextualKeyword",e[e.LastContextualKeyword=165]="LastContextualKeyword",e))(Nr||{}),Ar=(e=>(e[e.None=0]="None",e[e.Let=1]="Let",e[e.Const=2]="Const",e[e.Using=4]="Using",e[e.AwaitUsing=6]="AwaitUsing",e[e.NestedNamespace=8]="NestedNamespace",e[e.Synthesized=16]="Synthesized",e[e.Namespace=32]="Namespace",e[e.OptionalChain=64]="OptionalChain",e[e.ExportContext=128]="ExportContext",e[e.ContainsThis=256]="ContainsThis",e[e.HasImplicitReturn=512]="HasImplicitReturn",e[e.HasExplicitReturn=1024]="HasExplicitReturn",e[e.GlobalAugmentation=2048]="GlobalAugmentation",e[e.HasAsyncFunctions=4096]="HasAsyncFunctions",e[e.DisallowInContext=8192]="DisallowInContext",e[e.YieldContext=16384]="YieldContext",e[e.DecoratorContext=32768]="DecoratorContext",e[e.AwaitContext=65536]="AwaitContext",e[e.DisallowConditionalTypesContext=131072]="DisallowConditionalTypesContext",e[e.ThisNodeHasError=262144]="ThisNodeHasError",e[e.JavaScriptFile=524288]="JavaScriptFile",e[e.ThisNodeOrAnySubNodesHasError=1048576]="ThisNodeOrAnySubNodesHasError",e[e.HasAggregatedChildData=2097152]="HasAggregatedChildData",e[e.PossiblyContainsDynamicImport=4194304]="PossiblyContainsDynamicImport",e[e.PossiblyContainsImportMeta=8388608]="PossiblyContainsImportMeta",e[e.JSDoc=16777216]="JSDoc",e[e.Ambient=33554432]="Ambient",e[e.InWithStatement=67108864]="InWithStatement",e[e.JsonFile=134217728]="JsonFile",e[e.TypeCached=268435456]="TypeCached",e[e.Deprecated=536870912]="Deprecated",e[e.BlockScoped=7]="BlockScoped",e[e.Constant=6]="Constant",e[e.ReachabilityCheckFlags=1536]="ReachabilityCheckFlags",e[e.ReachabilityAndEmitFlags=5632]="ReachabilityAndEmitFlags",e[e.ContextFlags=101441536]="ContextFlags",e[e.TypeExcludesFlags=81920]="TypeExcludesFlags",e[e.PermanentlySetIncrementalFlags=12582912]="PermanentlySetIncrementalFlags",e[e.IdentifierHasExtendedUnicodeEscape=256]="IdentifierHasExtendedUnicodeEscape",e[e.IdentifierIsInJSDocNamespace=4096]="IdentifierIsInJSDocNamespace",e))(Ar||{}),Ir=(e=>(e[e.None=0]="None",e[e.Public=1]="Public",e[e.Private=2]="Private",e[e.Protected=4]="Protected",e[e.Readonly=8]="Readonly",e[e.Override=16]="Override",e[e.Export=32]="Export",e[e.Abstract=64]="Abstract",e[e.Ambient=128]="Ambient",e[e.Static=256]="Static",e[e.Accessor=512]="Accessor",e[e.Async=1024]="Async",e[e.Default=2048]="Default",e[e.Const=4096]="Const",e[e.In=8192]="In",e[e.Out=16384]="Out",e[e.Decorator=32768]="Decorator",e[e.Deprecated=65536]="Deprecated",e[e.JSDocPublic=8388608]="JSDocPublic",e[e.JSDocPrivate=16777216]="JSDocPrivate",e[e.JSDocProtected=33554432]="JSDocProtected",e[e.JSDocReadonly=67108864]="JSDocReadonly",e[e.JSDocOverride=134217728]="JSDocOverride",e[e.SyntacticOrJSDocModifiers=31]="SyntacticOrJSDocModifiers",e[e.SyntacticOnlyModifiers=65504]="SyntacticOnlyModifiers",e[e.SyntacticModifiers=65535]="SyntacticModifiers",e[e.JSDocCacheOnlyModifiers=260046848]="JSDocCacheOnlyModifiers",e[e.JSDocOnlyModifiers=65536]="JSDocOnlyModifiers",e[e.NonCacheOnlyModifiers=131071]="NonCacheOnlyModifiers",e[e.HasComputedJSDocModifiers=268435456]="HasComputedJSDocModifiers",e[e.HasComputedFlags=536870912]="HasComputedFlags",e[e.AccessibilityModifier=7]="AccessibilityModifier",e[e.ParameterPropertyModifier=31]="ParameterPropertyModifier",e[e.NonPublicAccessibilityModifier=6]="NonPublicAccessibilityModifier",e[e.TypeScriptModifier=28895]="TypeScriptModifier",e[e.ExportDefault=2080]="ExportDefault",e[e.All=131071]="All",e[e.Modifier=98303]="Modifier",e))(Ir||{}),Dr=(e=>(e[e.None=0]="None",e[e.IntrinsicNamedElement=1]="IntrinsicNamedElement",e[e.IntrinsicIndexedElement=2]="IntrinsicIndexedElement",e[e.IntrinsicElement=3]="IntrinsicElement",e))(Dr||{}),Pr=(e=>(e[e.None=0]="None",e[e.Succeeded=1]="Succeeded",e[e.Failed=2]="Failed",e[e.Reported=4]="Reported",e[e.ReportsUnmeasurable=8]="ReportsUnmeasurable",e[e.ReportsUnreliable=16]="ReportsUnreliable",e[e.ReportsMask=24]="ReportsMask",e))(Pr||{}),Mr=(e=>(e[e.None=0]="None",e[e.Auto=1]="Auto",e[e.Loop=2]="Loop",e[e.Unique=3]="Unique",e[e.Node=4]="Node",e[e.KindMask=7]="KindMask",e[e.ReservedInNestedScopes=8]="ReservedInNestedScopes",e[e.Optimistic=16]="Optimistic",e[e.FileLevel=32]="FileLevel",e[e.AllowNameSubstitution=64]="AllowNameSubstitution",e))(Mr||{}),Or=(e=>(e[e.None=0]="None",e[e.HasIndices=1]="HasIndices",e[e.Global=2]="Global",e[e.IgnoreCase=4]="IgnoreCase",e[e.Multiline=8]="Multiline",e[e.DotAll=16]="DotAll",e[e.Unicode=32]="Unicode",e[e.UnicodeSets=64]="UnicodeSets",e[e.Sticky=128]="Sticky",e[e.AnyUnicodeMode=96]="AnyUnicodeMode",e[e.Modifiers=28]="Modifiers",e))(Or||{}),Fr=(e=>(e[e.None=0]="None",e[e.PrecedingLineBreak=1]="PrecedingLineBreak",e[e.PrecedingJSDocComment=2]="PrecedingJSDocComment",e[e.Unterminated=4]="Unterminated",e[e.ExtendedUnicodeEscape=8]="ExtendedUnicodeEscape",e[e.Scientific=16]="Scientific",e[e.Octal=32]="Octal",e[e.HexSpecifier=64]="HexSpecifier",e[e.BinarySpecifier=128]="BinarySpecifier",e[e.OctalSpecifier=256]="OctalSpecifier",e[e.ContainsSeparator=512]="ContainsSeparator",e[e.UnicodeEscape=1024]="UnicodeEscape",e[e.ContainsInvalidEscape=2048]="ContainsInvalidEscape",e[e.HexEscape=4096]="HexEscape",e[e.ContainsLeadingZero=8192]="ContainsLeadingZero",e[e.ContainsInvalidSeparator=16384]="ContainsInvalidSeparator",e[e.BinaryOrOctalSpecifier=384]="BinaryOrOctalSpecifier",e[e.WithSpecifier=448]="WithSpecifier",e[e.StringLiteralFlags=7176]="StringLiteralFlags",e[e.NumericLiteralFlags=25584]="NumericLiteralFlags",e[e.TemplateLiteralLikeFlags=7176]="TemplateLiteralLikeFlags",e[e.IsInvalid=26656]="IsInvalid",e))(Fr||{}),Rr=(e=>(e[e.Unreachable=1]="Unreachable",e[e.Start=2]="Start",e[e.BranchLabel=4]="BranchLabel",e[e.LoopLabel=8]="LoopLabel",e[e.Assignment=16]="Assignment",e[e.TrueCondition=32]="TrueCondition",e[e.FalseCondition=64]="FalseCondition",e[e.SwitchClause=128]="SwitchClause",e[e.ArrayMutation=256]="ArrayMutation",e[e.Call=512]="Call",e[e.ReduceLabel=1024]="ReduceLabel",e[e.Referenced=2048]="Referenced",e[e.Shared=4096]="Shared",e[e.Label=12]="Label",e[e.Condition=96]="Condition",e))(Rr||{}),Lr=(e=>(e[e.ExpectError=0]="ExpectError",e[e.Ignore=1]="Ignore",e))(Lr||{}),jr=class{},zr=(e=>(e[e.RootFile=0]="RootFile",e[e.SourceFromProjectReference=1]="SourceFromProjectReference",e[e.OutputFromProjectReference=2]="OutputFromProjectReference",e[e.Import=3]="Import",e[e.ReferenceFile=4]="ReferenceFile",e[e.TypeReferenceDirective=5]="TypeReferenceDirective",e[e.LibFile=6]="LibFile",e[e.LibReferenceDirective=7]="LibReferenceDirective",e[e.AutomaticTypeDirectiveFile=8]="AutomaticTypeDirectiveFile",e))(zr||{}),Ur=(e=>(e[e.FilePreprocessingLibReferenceDiagnostic=0]="FilePreprocessingLibReferenceDiagnostic",e[e.FilePreprocessingFileExplainingDiagnostic=1]="FilePreprocessingFileExplainingDiagnostic",e[e.ResolutionDiagnostics=2]="ResolutionDiagnostics",e))(Ur||{}),Br=(e=>(e[e.Js=0]="Js",e[e.Dts=1]="Dts",e[e.BuilderSignature=2]="BuilderSignature",e))(Br||{}),qr=(e=>(e[e.Not=0]="Not",e[e.SafeModules=1]="SafeModules",e[e.Completely=2]="Completely",e))(qr||{}),Vr=(e=>(e[e.Success=0]="Success",e[e.DiagnosticsPresent_OutputsSkipped=1]="DiagnosticsPresent_OutputsSkipped",e[e.DiagnosticsPresent_OutputsGenerated=2]="DiagnosticsPresent_OutputsGenerated",e[e.InvalidProject_OutputsSkipped=3]="InvalidProject_OutputsSkipped",e[e.ProjectReferenceCycle_OutputsSkipped=4]="ProjectReferenceCycle_OutputsSkipped",e))(Vr||{}),Kr=(e=>(e[e.Ok=0]="Ok",e[e.NeedsOverride=1]="NeedsOverride",e[e.HasInvalidOverride=2]="HasInvalidOverride",e))(Kr||{}),Jr=(e=>(e[e.None=0]="None",e[e.Literal=1]="Literal",e[e.Subtype=2]="Subtype",e))(Jr||{}),Wr=(e=>(e[e.None=0]="None",e[e.NoSupertypeReduction=1]="NoSupertypeReduction",e[e.NoConstraintReduction=2]="NoConstraintReduction",e))(Wr||{}),Hr=(e=>(e[e.None=0]="None",e[e.Signature=1]="Signature",e[e.NoConstraints=2]="NoConstraints",e[e.Completions=4]="Completions",e[e.SkipBindingPatterns=8]="SkipBindingPatterns",e))(Hr||{}),Gr=(e=>(e[e.None=0]="None",e[e.NoTruncation=1]="NoTruncation",e[e.WriteArrayAsGenericType=2]="WriteArrayAsGenericType",e[e.GenerateNamesForShadowedTypeParams=4]="GenerateNamesForShadowedTypeParams",e[e.UseStructuralFallback=8]="UseStructuralFallback",e[e.ForbidIndexedAccessSymbolReferences=16]="ForbidIndexedAccessSymbolReferences",e[e.WriteTypeArgumentsOfSignature=32]="WriteTypeArgumentsOfSignature",e[e.UseFullyQualifiedType=64]="UseFullyQualifiedType",e[e.UseOnlyExternalAliasing=128]="UseOnlyExternalAliasing",e[e.SuppressAnyReturnType=256]="SuppressAnyReturnType",e[e.WriteTypeParametersInQualifiedName=512]="WriteTypeParametersInQualifiedName",e[e.MultilineObjectLiterals=1024]="MultilineObjectLiterals",e[e.WriteClassExpressionAsTypeLiteral=2048]="WriteClassExpressionAsTypeLiteral",e[e.UseTypeOfFunction=4096]="UseTypeOfFunction",e[e.OmitParameterModifiers=8192]="OmitParameterModifiers",e[e.UseAliasDefinedOutsideCurrentScope=16384]="UseAliasDefinedOutsideCurrentScope",e[e.UseSingleQuotesForStringLiteralType=268435456]="UseSingleQuotesForStringLiteralType",e[e.NoTypeReduction=536870912]="NoTypeReduction",e[e.OmitThisParameter=33554432]="OmitThisParameter",e[e.AllowThisInObjectLiteral=32768]="AllowThisInObjectLiteral",e[e.AllowQualifiedNameInPlaceOfIdentifier=65536]="AllowQualifiedNameInPlaceOfIdentifier",e[e.AllowAnonymousIdentifier=131072]="AllowAnonymousIdentifier",e[e.AllowEmptyUnionOrIntersection=262144]="AllowEmptyUnionOrIntersection",e[e.AllowEmptyTuple=524288]="AllowEmptyTuple",e[e.AllowUniqueESSymbolType=1048576]="AllowUniqueESSymbolType",e[e.AllowEmptyIndexInfoType=2097152]="AllowEmptyIndexInfoType",e[e.WriteComputedProps=1073741824]="WriteComputedProps",e[e.NoSyntacticPrinter=-2147483648]="NoSyntacticPrinter",e[e.AllowNodeModulesRelativePaths=67108864]="AllowNodeModulesRelativePaths",e[e.DoNotIncludeSymbolChain=134217728]="DoNotIncludeSymbolChain",e[e.AllowUnresolvedNames=1]="AllowUnresolvedNames",e[e.IgnoreErrors=70221824]="IgnoreErrors",e[e.InObjectTypeLiteral=4194304]="InObjectTypeLiteral",e[e.InTypeAlias=8388608]="InTypeAlias",e[e.InInitialEntityName=16777216]="InInitialEntityName",e))(Gr||{}),Qr=(e=>(e[e.None=0]="None",e[e.NoTruncation=1]="NoTruncation",e[e.WriteArrayAsGenericType=2]="WriteArrayAsGenericType",e[e.GenerateNamesForShadowedTypeParams=4]="GenerateNamesForShadowedTypeParams",e[e.UseStructuralFallback=8]="UseStructuralFallback",e[e.WriteTypeArgumentsOfSignature=32]="WriteTypeArgumentsOfSignature",e[e.UseFullyQualifiedType=64]="UseFullyQualifiedType",e[e.SuppressAnyReturnType=256]="SuppressAnyReturnType",e[e.MultilineObjectLiterals=1024]="MultilineObjectLiterals",e[e.WriteClassExpressionAsTypeLiteral=2048]="WriteClassExpressionAsTypeLiteral",e[e.UseTypeOfFunction=4096]="UseTypeOfFunction",e[e.OmitParameterModifiers=8192]="OmitParameterModifiers",e[e.UseAliasDefinedOutsideCurrentScope=16384]="UseAliasDefinedOutsideCurrentScope",e[e.UseSingleQuotesForStringLiteralType=268435456]="UseSingleQuotesForStringLiteralType",e[e.NoTypeReduction=536870912]="NoTypeReduction",e[e.OmitThisParameter=33554432]="OmitThisParameter",e[e.AllowUniqueESSymbolType=1048576]="AllowUniqueESSymbolType",e[e.AddUndefined=131072]="AddUndefined",e[e.WriteArrowStyleSignature=262144]="WriteArrowStyleSignature",e[e.InArrayType=524288]="InArrayType",e[e.InElementType=2097152]="InElementType",e[e.InFirstTypeArgument=4194304]="InFirstTypeArgument",e[e.InTypeAlias=8388608]="InTypeAlias",e[e.NodeBuilderFlagsMask=848330095]="NodeBuilderFlagsMask",e))(Qr||{}),Yr=(e=>(e[e.None=0]="None",e[e.WriteTypeParametersOrArguments=1]="WriteTypeParametersOrArguments",e[e.UseOnlyExternalAliasing=2]="UseOnlyExternalAliasing",e[e.AllowAnyNodeKind=4]="AllowAnyNodeKind",e[e.UseAliasDefinedOutsideCurrentScope=8]="UseAliasDefinedOutsideCurrentScope",e[e.WriteComputedProps=16]="WriteComputedProps",e[e.DoNotIncludeSymbolChain=32]="DoNotIncludeSymbolChain",e))(Yr||{}),Zr=(e=>(e[e.Accessible=0]="Accessible",e[e.NotAccessible=1]="NotAccessible",e[e.CannotBeNamed=2]="CannotBeNamed",e[e.NotResolved=3]="NotResolved",e))(Zr||{}),Xr=(e=>(e[e.UnionOrIntersection=0]="UnionOrIntersection",e[e.Spread=1]="Spread",e))(Xr||{}),$r=(e=>(e[e.This=0]="This",e[e.Identifier=1]="Identifier",e[e.AssertsThis=2]="AssertsThis",e[e.AssertsIdentifier=3]="AssertsIdentifier",e))($r||{}),ei=(e=>(e[e.Unknown=0]="Unknown",e[e.TypeWithConstructSignatureAndValue=1]="TypeWithConstructSignatureAndValue",e[e.VoidNullableOrNeverType=2]="VoidNullableOrNeverType",e[e.NumberLikeType=3]="NumberLikeType",e[e.BigIntLikeType=4]="BigIntLikeType",e[e.StringLikeType=5]="StringLikeType",e[e.BooleanType=6]="BooleanType",e[e.ArrayLikeType=7]="ArrayLikeType",e[e.ESSymbolType=8]="ESSymbolType",e[e.Promise=9]="Promise",e[e.TypeWithCallSignature=10]="TypeWithCallSignature",e[e.ObjectType=11]="ObjectType",e))(ei||{}),ti=(e=>(e[e.None=0]="None",e[e.FunctionScopedVariable=1]="FunctionScopedVariable",e[e.BlockScopedVariable=2]="BlockScopedVariable",e[e.Property=4]="Property",e[e.EnumMember=8]="EnumMember",e[e.Function=16]="Function",e[e.Class=32]="Class",e[e.Interface=64]="Interface",e[e.ConstEnum=128]="ConstEnum",e[e.RegularEnum=256]="RegularEnum",e[e.ValueModule=512]="ValueModule",e[e.NamespaceModule=1024]="NamespaceModule",e[e.TypeLiteral=2048]="TypeLiteral",e[e.ObjectLiteral=4096]="ObjectLiteral",e[e.Method=8192]="Method",e[e.Constructor=16384]="Constructor",e[e.GetAccessor=32768]="GetAccessor",e[e.SetAccessor=65536]="SetAccessor",e[e.Signature=131072]="Signature",e[e.TypeParameter=262144]="TypeParameter",e[e.TypeAlias=524288]="TypeAlias",e[e.ExportValue=1048576]="ExportValue",e[e.Alias=2097152]="Alias",e[e.Prototype=4194304]="Prototype",e[e.ExportStar=8388608]="ExportStar",e[e.Optional=16777216]="Optional",e[e.Transient=33554432]="Transient",e[e.Assignment=67108864]="Assignment",e[e.ModuleExports=134217728]="ModuleExports",e[e.All=-1]="All",e[e.Enum=384]="Enum",e[e.Variable=3]="Variable",e[e.Value=111551]="Value",e[e.Type=788968]="Type",e[e.Namespace=1920]="Namespace",e[e.Module=1536]="Module",e[e.Accessor=98304]="Accessor",e[e.FunctionScopedVariableExcludes=111550]="FunctionScopedVariableExcludes",e[e.BlockScopedVariableExcludes=111551]="BlockScopedVariableExcludes",e[e.ParameterExcludes=111551]="ParameterExcludes",e[e.PropertyExcludes=0]="PropertyExcludes",e[e.EnumMemberExcludes=900095]="EnumMemberExcludes",e[e.FunctionExcludes=110991]="FunctionExcludes",e[e.ClassExcludes=899503]="ClassExcludes",e[e.InterfaceExcludes=788872]="InterfaceExcludes",e[e.RegularEnumExcludes=899327]="RegularEnumExcludes",e[e.ConstEnumExcludes=899967]="ConstEnumExcludes",e[e.ValueModuleExcludes=110735]="ValueModuleExcludes",e[e.NamespaceModuleExcludes=0]="NamespaceModuleExcludes",e[e.MethodExcludes=103359]="MethodExcludes",e[e.GetAccessorExcludes=46015]="GetAccessorExcludes",e[e.SetAccessorExcludes=78783]="SetAccessorExcludes",e[e.AccessorExcludes=13247]="AccessorExcludes",e[e.TypeParameterExcludes=526824]="TypeParameterExcludes",e[e.TypeAliasExcludes=788968]="TypeAliasExcludes",e[e.AliasExcludes=2097152]="AliasExcludes",e[e.ModuleMember=2623475]="ModuleMember",e[e.ExportHasLocal=944]="ExportHasLocal",e[e.BlockScoped=418]="BlockScoped",e[e.PropertyOrAccessor=98308]="PropertyOrAccessor",e[e.ClassMember=106500]="ClassMember",e[e.ExportSupportsDefaultModifier=112]="ExportSupportsDefaultModifier",e[e.ExportDoesNotSupportDefaultModifier=-113]="ExportDoesNotSupportDefaultModifier",e[e.Classifiable=2885600]="Classifiable",e[e.LateBindingContainer=6256]="LateBindingContainer",e))(ti||{}),ni=(e=>(e[e.None=0]="None",e[e.Instantiated=1]="Instantiated",e[e.SyntheticProperty=2]="SyntheticProperty",e[e.SyntheticMethod=4]="SyntheticMethod",e[e.Readonly=8]="Readonly",e[e.ReadPartial=16]="ReadPartial",e[e.WritePartial=32]="WritePartial",e[e.HasNonUniformType=64]="HasNonUniformType",e[e.HasLiteralType=128]="HasLiteralType",e[e.ContainsPublic=256]="ContainsPublic",e[e.ContainsProtected=512]="ContainsProtected",e[e.ContainsPrivate=1024]="ContainsPrivate",e[e.ContainsStatic=2048]="ContainsStatic",e[e.Late=4096]="Late",e[e.ReverseMapped=8192]="ReverseMapped",e[e.OptionalParameter=16384]="OptionalParameter",e[e.RestParameter=32768]="RestParameter",e[e.DeferredType=65536]="DeferredType",e[e.HasNeverType=131072]="HasNeverType",e[e.Mapped=262144]="Mapped",e[e.StripOptional=524288]="StripOptional",e[e.Unresolved=1048576]="Unresolved",e[e.Synthetic=6]="Synthetic",e[e.Discriminant=192]="Discriminant",e[e.Partial=48]="Partial",e))(ni||{}),ri=(e=>(e.Call="__call",e.Constructor="__constructor",e.New="__new",e.Index="__index",e.ExportStar="__export",e.Global="__global",e.Missing="__missing",e.Type="__type",e.Object="__object",e.JSXAttributes="__jsxAttributes",e.Class="__class",e.Function="__function",e.Computed="__computed",e.Resolving="__resolving__",e.ExportEquals="export=",e.Default="default",e.This="this",e.InstantiationExpression="__instantiationExpression",e.ImportAttributes="__importAttributes",e))(ri||{}),ii=(e=>(e[e.None=0]="None",e[e.TypeChecked=1]="TypeChecked",e[e.LexicalThis=2]="LexicalThis",e[e.CaptureThis=4]="CaptureThis",e[e.CaptureNewTarget=8]="CaptureNewTarget",e[e.SuperInstance=16]="SuperInstance",e[e.SuperStatic=32]="SuperStatic",e[e.ContextChecked=64]="ContextChecked",e[e.MethodWithSuperPropertyAccessInAsync=128]="MethodWithSuperPropertyAccessInAsync",e[e.MethodWithSuperPropertyAssignmentInAsync=256]="MethodWithSuperPropertyAssignmentInAsync",e[e.CaptureArguments=512]="CaptureArguments",e[e.EnumValuesComputed=1024]="EnumValuesComputed",e[e.LexicalModuleMergesWithClass=2048]="LexicalModuleMergesWithClass",e[e.LoopWithCapturedBlockScopedBinding=4096]="LoopWithCapturedBlockScopedBinding",e[e.ContainsCapturedBlockScopeBinding=8192]="ContainsCapturedBlockScopeBinding",e[e.CapturedBlockScopedBinding=16384]="CapturedBlockScopedBinding",e[e.BlockScopedBindingInLoop=32768]="BlockScopedBindingInLoop",e[e.NeedsLoopOutParameter=65536]="NeedsLoopOutParameter",e[e.AssignmentsMarked=131072]="AssignmentsMarked",e[e.ContainsConstructorReference=262144]="ContainsConstructorReference",e[e.ConstructorReference=536870912]="ConstructorReference",e[e.ContainsClassWithPrivateIdentifiers=1048576]="ContainsClassWithPrivateIdentifiers",e[e.ContainsSuperPropertyInStaticInitializer=2097152]="ContainsSuperPropertyInStaticInitializer",e[e.InCheckIdentifier=4194304]="InCheckIdentifier",e[e.LazyFlags=539358128]="LazyFlags",e))(ii||{}),oi=(e=>(e[e.Any=1]="Any",e[e.Unknown=2]="Unknown",e[e.String=4]="String",e[e.Number=8]="Number",e[e.Boolean=16]="Boolean",e[e.Enum=32]="Enum",e[e.BigInt=64]="BigInt",e[e.StringLiteral=128]="StringLiteral",e[e.NumberLiteral=256]="NumberLiteral",e[e.BooleanLiteral=512]="BooleanLiteral",e[e.EnumLiteral=1024]="EnumLiteral",e[e.BigIntLiteral=2048]="BigIntLiteral",e[e.ESSymbol=4096]="ESSymbol",e[e.UniqueESSymbol=8192]="UniqueESSymbol",e[e.Void=16384]="Void",e[e.Undefined=32768]="Undefined",e[e.Null=65536]="Null",e[e.Never=131072]="Never",e[e.TypeParameter=262144]="TypeParameter",e[e.Object=524288]="Object",e[e.Union=1048576]="Union",e[e.Intersection=2097152]="Intersection",e[e.Index=4194304]="Index",e[e.IndexedAccess=8388608]="IndexedAccess",e[e.Conditional=16777216]="Conditional",e[e.Substitution=33554432]="Substitution",e[e.NonPrimitive=67108864]="NonPrimitive",e[e.TemplateLiteral=134217728]="TemplateLiteral",e[e.StringMapping=268435456]="StringMapping",e[e.Reserved1=536870912]="Reserved1",e[e.Reserved2=1073741824]="Reserved2",e[e.AnyOrUnknown=3]="AnyOrUnknown",e[e.Nullable=98304]="Nullable",e[e.Literal=2944]="Literal",e[e.Unit=109472]="Unit",e[e.Freshable=2976]="Freshable",e[e.StringOrNumberLiteral=384]="StringOrNumberLiteral",e[e.StringOrNumberLiteralOrUnique=8576]="StringOrNumberLiteralOrUnique",e[e.DefinitelyFalsy=117632]="DefinitelyFalsy",e[e.PossiblyFalsy=117724]="PossiblyFalsy",e[e.Intrinsic=67359327]="Intrinsic",e[e.StringLike=402653316]="StringLike",e[e.NumberLike=296]="NumberLike",e[e.BigIntLike=2112]="BigIntLike",e[e.BooleanLike=528]="BooleanLike",e[e.EnumLike=1056]="EnumLike",e[e.ESSymbolLike=12288]="ESSymbolLike",e[e.VoidLike=49152]="VoidLike",e[e.Primitive=402784252]="Primitive",e[e.DefinitelyNonNullable=470302716]="DefinitelyNonNullable",e[e.DisjointDomains=469892092]="DisjointDomains",e[e.UnionOrIntersection=3145728]="UnionOrIntersection",e[e.StructuredType=3670016]="StructuredType",e[e.TypeVariable=8650752]="TypeVariable",e[e.InstantiableNonPrimitive=58982400]="InstantiableNonPrimitive",e[e.InstantiablePrimitive=406847488]="InstantiablePrimitive",e[e.Instantiable=465829888]="Instantiable",e[e.StructuredOrInstantiable=469499904]="StructuredOrInstantiable",e[e.ObjectFlagsType=3899393]="ObjectFlagsType",e[e.Simplifiable=25165824]="Simplifiable",e[e.Singleton=67358815]="Singleton",e[e.Narrowable=536624127]="Narrowable",e[e.IncludesMask=473694207]="IncludesMask",e[e.IncludesMissingType=262144]="IncludesMissingType",e[e.IncludesNonWideningType=4194304]="IncludesNonWideningType",e[e.IncludesWildcard=8388608]="IncludesWildcard",e[e.IncludesEmptyObject=16777216]="IncludesEmptyObject",e[e.IncludesInstantiable=33554432]="IncludesInstantiable",e[e.IncludesConstrainedTypeVariable=536870912]="IncludesConstrainedTypeVariable",e[e.IncludesError=1073741824]="IncludesError",e[e.NotPrimitiveUnion=36323331]="NotPrimitiveUnion",e))(oi||{}),si=(e=>(e[e.None=0]="None",e[e.Class=1]="Class",e[e.Interface=2]="Interface",e[e.Reference=4]="Reference",e[e.Tuple=8]="Tuple",e[e.Anonymous=16]="Anonymous",e[e.Mapped=32]="Mapped",e[e.Instantiated=64]="Instantiated",e[e.ObjectLiteral=128]="ObjectLiteral",e[e.EvolvingArray=256]="EvolvingArray",e[e.ObjectLiteralPatternWithComputedProperties=512]="ObjectLiteralPatternWithComputedProperties",e[e.ReverseMapped=1024]="ReverseMapped",e[e.JsxAttributes=2048]="JsxAttributes",e[e.JSLiteral=4096]="JSLiteral",e[e.FreshLiteral=8192]="FreshLiteral",e[e.ArrayLiteral=16384]="ArrayLiteral",e[e.PrimitiveUnion=32768]="PrimitiveUnion",e[e.ContainsWideningType=65536]="ContainsWideningType",e[e.ContainsObjectOrArrayLiteral=131072]="ContainsObjectOrArrayLiteral",e[e.NonInferrableType=262144]="NonInferrableType",e[e.CouldContainTypeVariablesComputed=524288]="CouldContainTypeVariablesComputed",e[e.CouldContainTypeVariables=1048576]="CouldContainTypeVariables",e[e.ClassOrInterface=3]="ClassOrInterface",e[e.RequiresWidening=196608]="RequiresWidening",e[e.PropagatingFlags=458752]="PropagatingFlags",e[e.InstantiatedMapped=96]="InstantiatedMapped",e[e.ObjectTypeKindMask=1343]="ObjectTypeKindMask",e[e.ContainsSpread=2097152]="ContainsSpread",e[e.ObjectRestType=4194304]="ObjectRestType",e[e.InstantiationExpressionType=8388608]="InstantiationExpressionType",e[e.SingleSignatureType=134217728]="SingleSignatureType",e[e.IsClassInstanceClone=16777216]="IsClassInstanceClone",e[e.IdenticalBaseTypeCalculated=33554432]="IdenticalBaseTypeCalculated",e[e.IdenticalBaseTypeExists=67108864]="IdenticalBaseTypeExists",e[e.IsGenericTypeComputed=2097152]="IsGenericTypeComputed",e[e.IsGenericObjectType=4194304]="IsGenericObjectType",e[e.IsGenericIndexType=8388608]="IsGenericIndexType",e[e.IsGenericType=12582912]="IsGenericType",e[e.ContainsIntersections=16777216]="ContainsIntersections",e[e.IsUnknownLikeUnionComputed=33554432]="IsUnknownLikeUnionComputed",e[e.IsUnknownLikeUnion=67108864]="IsUnknownLikeUnion",e[e.IsNeverIntersectionComputed=16777216]="IsNeverIntersectionComputed",e[e.IsNeverIntersection=33554432]="IsNeverIntersection",e[e.IsConstrainedTypeVariable=67108864]="IsConstrainedTypeVariable",e))(si||{}),ai=(e=>(e[e.Invariant=0]="Invariant",e[e.Covariant=1]="Covariant",e[e.Contravariant=2]="Contravariant",e[e.Bivariant=3]="Bivariant",e[e.Independent=4]="Independent",e[e.VarianceMask=7]="VarianceMask",e[e.Unmeasurable=8]="Unmeasurable",e[e.Unreliable=16]="Unreliable",e[e.AllowsStructuralFallback=24]="AllowsStructuralFallback",e))(ai||{}),ci=(e=>(e[e.Required=1]="Required",e[e.Optional=2]="Optional",e[e.Rest=4]="Rest",e[e.Variadic=8]="Variadic",e[e.Fixed=3]="Fixed",e[e.Variable=12]="Variable",e[e.NonRequired=14]="NonRequired",e[e.NonRest=11]="NonRest",e))(ci||{}),li=(e=>(e[e.None=0]="None",e[e.IncludeUndefined=1]="IncludeUndefined",e[e.NoIndexSignatures=2]="NoIndexSignatures",e[e.Writing=4]="Writing",e[e.CacheSymbol=8]="CacheSymbol",e[e.NoTupleBoundsCheck=16]="NoTupleBoundsCheck",e[e.ExpressionPosition=32]="ExpressionPosition",e[e.ReportDeprecated=64]="ReportDeprecated",e[e.SuppressNoImplicitAnyError=128]="SuppressNoImplicitAnyError",e[e.Contextual=256]="Contextual",e[e.Persistent=1]="Persistent",e))(li||{}),ui=(e=>(e[e.None=0]="None",e[e.StringsOnly=1]="StringsOnly",e[e.NoIndexSignatures=2]="NoIndexSignatures",e[e.NoReducibleCheck=4]="NoReducibleCheck",e))(ui||{}),di=(e=>(e[e.Component=0]="Component",e[e.Function=1]="Function",e[e.Mixed=2]="Mixed",e))(di||{}),_i=(e=>(e[e.Call=0]="Call",e[e.Construct=1]="Construct",e))(_i||{}),pi=(e=>(e[e.None=0]="None",e[e.HasRestParameter=1]="HasRestParameter",e[e.HasLiteralTypes=2]="HasLiteralTypes",e[e.Abstract=4]="Abstract",e[e.IsInnerCallChain=8]="IsInnerCallChain",e[e.IsOuterCallChain=16]="IsOuterCallChain",e[e.IsUntypedSignatureInJSFile=32]="IsUntypedSignatureInJSFile",e[e.IsNonInferrable=64]="IsNonInferrable",e[e.IsSignatureCandidateForOverloadFailure=128]="IsSignatureCandidateForOverloadFailure",e[e.PropagatingFlags=167]="PropagatingFlags",e[e.CallChainFlags=24]="CallChainFlags",e))(pi||{}),fi=(e=>(e[e.String=0]="String",e[e.Number=1]="Number",e))(fi||{}),mi=(e=>(e[e.Simple=0]="Simple",e[e.Array=1]="Array",e[e.Deferred=2]="Deferred",e[e.Function=3]="Function",e[e.Composite=4]="Composite",e[e.Merged=5]="Merged",e))(mi||{}),hi=(e=>(e[e.None=0]="None",e[e.NakedTypeVariable=1]="NakedTypeVariable",e[e.SpeculativeTuple=2]="SpeculativeTuple",e[e.SubstituteSource=4]="SubstituteSource",e[e.HomomorphicMappedType=8]="HomomorphicMappedType",e[e.PartialHomomorphicMappedType=16]="PartialHomomorphicMappedType",e[e.MappedTypeConstraint=32]="MappedTypeConstraint",e[e.ContravariantConditional=64]="ContravariantConditional",e[e.ReturnType=128]="ReturnType",e[e.LiteralKeyof=256]="LiteralKeyof",e[e.NoConstraints=512]="NoConstraints",e[e.AlwaysStrict=1024]="AlwaysStrict",e[e.MaxValue=2048]="MaxValue",e[e.PriorityImpliesCombination=416]="PriorityImpliesCombination",e[e.Circularity=-1]="Circularity",e))(hi||{}),gi=(e=>(e[e.None=0]="None",e[e.NoDefault=1]="NoDefault",e[e.AnyDefault=2]="AnyDefault",e[e.SkippedGenericFunction=4]="SkippedGenericFunction",e))(gi||{}),yi=(e=>(e[e.False=0]="False",e[e.Unknown=1]="Unknown",e[e.Maybe=3]="Maybe",e[e.True=-1]="True",e))(yi||{}),vi=(e=>(e[e.None=0]="None",e[e.ExportsProperty=1]="ExportsProperty",e[e.ModuleExports=2]="ModuleExports",e[e.PrototypeProperty=3]="PrototypeProperty",e[e.ThisProperty=4]="ThisProperty",e[e.Property=5]="Property",e[e.Prototype=6]="Prototype",e[e.ObjectDefinePropertyValue=7]="ObjectDefinePropertyValue",e[e.ObjectDefinePropertyExports=8]="ObjectDefinePropertyExports",e[e.ObjectDefinePrototypeProperty=9]="ObjectDefinePrototypeProperty",e))(vi||{}),bi=(e=>(e[e.Warning=0]="Warning",e[e.Error=1]="Error",e[e.Suggestion=2]="Suggestion",e[e.Message=3]="Message",e))(bi||{});function xi(e,t=!0){const n=bi[e.category];return t?n.toLowerCase():n}var Si=(e=>(e[e.Classic=1]="Classic",e[e.NodeJs=2]="NodeJs",e[e.Node10=2]="Node10",e[e.Node16=3]="Node16",e[e.NodeNext=99]="NodeNext",e[e.Bundler=100]="Bundler",e))(Si||{}),Ti=(e=>(e[e.Legacy=1]="Legacy",e[e.Auto=2]="Auto",e[e.Force=3]="Force",e))(Ti||{}),wi=(e=>(e[e.FixedPollingInterval=0]="FixedPollingInterval",e[e.PriorityPollingInterval=1]="PriorityPollingInterval",e[e.DynamicPriorityPolling=2]="DynamicPriorityPolling",e[e.FixedChunkSizePolling=3]="FixedChunkSizePolling",e[e.UseFsEvents=4]="UseFsEvents",e[e.UseFsEventsOnParentDirectory=5]="UseFsEventsOnParentDirectory",e))(wi||{}),ki=(e=>(e[e.UseFsEvents=0]="UseFsEvents",e[e.FixedPollingInterval=1]="FixedPollingInterval",e[e.DynamicPriorityPolling=2]="DynamicPriorityPolling",e[e.FixedChunkSizePolling=3]="FixedChunkSizePolling",e))(ki||{}),Ei=(e=>(e[e.FixedInterval=0]="FixedInterval",e[e.PriorityInterval=1]="PriorityInterval",e[e.DynamicPriority=2]="DynamicPriority",e[e.FixedChunkSize=3]="FixedChunkSize",e))(Ei||{}),Ci=(e=>(e[e.None=0]="None",e[e.CommonJS=1]="CommonJS",e[e.AMD=2]="AMD",e[e.UMD=3]="UMD",e[e.System=4]="System",e[e.ES2015=5]="ES2015",e[e.ES2020=6]="ES2020",e[e.ES2022=7]="ES2022",e[e.ESNext=99]="ESNext",e[e.Node16=100]="Node16",e[e.NodeNext=199]="NodeNext",e[e.Preserve=200]="Preserve",e))(Ci||{}),Ni=(e=>(e[e.None=0]="None",e[e.Preserve=1]="Preserve",e[e.React=2]="React",e[e.ReactNative=3]="ReactNative",e[e.ReactJSX=4]="ReactJSX",e[e.ReactJSXDev=5]="ReactJSXDev",e))(Ni||{}),Ai=(e=>(e[e.Remove=0]="Remove",e[e.Preserve=1]="Preserve",e[e.Error=2]="Error",e))(Ai||{}),Ii=(e=>(e[e.CarriageReturnLineFeed=0]="CarriageReturnLineFeed",e[e.LineFeed=1]="LineFeed",e))(Ii||{}),Di=(e=>(e[e.Unknown=0]="Unknown",e[e.JS=1]="JS",e[e.JSX=2]="JSX",e[e.TS=3]="TS",e[e.TSX=4]="TSX",e[e.External=5]="External",e[e.JSON=6]="JSON",e[e.Deferred=7]="Deferred",e))(Di||{}),Pi=(e=>(e[e.ES3=0]="ES3",e[e.ES5=1]="ES5",e[e.ES2015=2]="ES2015",e[e.ES2016=3]="ES2016",e[e.ES2017=4]="ES2017",e[e.ES2018=5]="ES2018",e[e.ES2019=6]="ES2019",e[e.ES2020=7]="ES2020",e[e.ES2021=8]="ES2021",e[e.ES2022=9]="ES2022",e[e.ES2023=10]="ES2023",e[e.ESNext=99]="ESNext",e[e.JSON=100]="JSON",e[e.Latest=99]="Latest",e))(Pi||{}),Mi=(e=>(e[e.Standard=0]="Standard",e[e.JSX=1]="JSX",e))(Mi||{}),Oi=(e=>(e[e.None=0]="None",e[e.Recursive=1]="Recursive",e))(Oi||{}),Fi=(e=>(e[e.EOF=-1]="EOF",e[e.nullCharacter=0]="nullCharacter",e[e.maxAsciiCharacter=127]="maxAsciiCharacter",e[e.lineFeed=10]="lineFeed",e[e.carriageReturn=13]="carriageReturn",e[e.lineSeparator=8232]="lineSeparator",e[e.paragraphSeparator=8233]="paragraphSeparator",e[e.nextLine=133]="nextLine",e[e.space=32]="space",e[e.nonBreakingSpace=160]="nonBreakingSpace",e[e.enQuad=8192]="enQuad",e[e.emQuad=8193]="emQuad",e[e.enSpace=8194]="enSpace",e[e.emSpace=8195]="emSpace",e[e.threePerEmSpace=8196]="threePerEmSpace",e[e.fourPerEmSpace=8197]="fourPerEmSpace",e[e.sixPerEmSpace=8198]="sixPerEmSpace",e[e.figureSpace=8199]="figureSpace",e[e.punctuationSpace=8200]="punctuationSpace",e[e.thinSpace=8201]="thinSpace",e[e.hairSpace=8202]="hairSpace",e[e.zeroWidthSpace=8203]="zeroWidthSpace",e[e.narrowNoBreakSpace=8239]="narrowNoBreakSpace",e[e.ideographicSpace=12288]="ideographicSpace",e[e.mathematicalSpace=8287]="mathematicalSpace",e[e.ogham=5760]="ogham",e[e.replacementCharacter=65533]="replacementCharacter",e[e._=95]="_",e[e.$=36]="$",e[e._0=48]="_0",e[e._1=49]="_1",e[e._2=50]="_2",e[e._3=51]="_3",e[e._4=52]="_4",e[e._5=53]="_5",e[e._6=54]="_6",e[e._7=55]="_7",e[e._8=56]="_8",e[e._9=57]="_9",e[e.a=97]="a",e[e.b=98]="b",e[e.c=99]="c",e[e.d=100]="d",e[e.e=101]="e",e[e.f=102]="f",e[e.g=103]="g",e[e.h=104]="h",e[e.i=105]="i",e[e.j=106]="j",e[e.k=107]="k",e[e.l=108]="l",e[e.m=109]="m",e[e.n=110]="n",e[e.o=111]="o",e[e.p=112]="p",e[e.q=113]="q",e[e.r=114]="r",e[e.s=115]="s",e[e.t=116]="t",e[e.u=117]="u",e[e.v=118]="v",e[e.w=119]="w",e[e.x=120]="x",e[e.y=121]="y",e[e.z=122]="z",e[e.A=65]="A",e[e.B=66]="B",e[e.C=67]="C",e[e.D=68]="D",e[e.E=69]="E",e[e.F=70]="F",e[e.G=71]="G",e[e.H=72]="H",e[e.I=73]="I",e[e.J=74]="J",e[e.K=75]="K",e[e.L=76]="L",e[e.M=77]="M",e[e.N=78]="N",e[e.O=79]="O",e[e.P=80]="P",e[e.Q=81]="Q",e[e.R=82]="R",e[e.S=83]="S",e[e.T=84]="T",e[e.U=85]="U",e[e.V=86]="V",e[e.W=87]="W",e[e.X=88]="X",e[e.Y=89]="Y",e[e.Z=90]="Z",e[e.ampersand=38]="ampersand",e[e.asterisk=42]="asterisk",e[e.at=64]="at",e[e.backslash=92]="backslash",e[e.backtick=96]="backtick",e[e.bar=124]="bar",e[e.caret=94]="caret",e[e.closeBrace=125]="closeBrace",e[e.closeBracket=93]="closeBracket",e[e.closeParen=41]="closeParen",e[e.colon=58]="colon",e[e.comma=44]="comma",e[e.dot=46]="dot",e[e.doubleQuote=34]="doubleQuote",e[e.equals=61]="equals",e[e.exclamation=33]="exclamation",e[e.greaterThan=62]="greaterThan",e[e.hash=35]="hash",e[e.lessThan=60]="lessThan",e[e.minus=45]="minus",e[e.openBrace=123]="openBrace",e[e.openBracket=91]="openBracket",e[e.openParen=40]="openParen",e[e.percent=37]="percent",e[e.plus=43]="plus",e[e.question=63]="question",e[e.semicolon=59]="semicolon",e[e.singleQuote=39]="singleQuote",e[e.slash=47]="slash",e[e.tilde=126]="tilde",e[e.backspace=8]="backspace",e[e.formFeed=12]="formFeed",e[e.byteOrderMark=65279]="byteOrderMark",e[e.tab=9]="tab",e[e.verticalTab=11]="verticalTab",e))(Fi||{}),Ri=(e=>(e.Ts=".ts",e.Tsx=".tsx",e.Dts=".d.ts",e.Js=".js",e.Jsx=".jsx",e.Json=".json",e.TsBuildInfo=".tsbuildinfo",e.Mjs=".mjs",e.Mts=".mts",e.Dmts=".d.mts",e.Cjs=".cjs",e.Cts=".cts",e.Dcts=".d.cts",e))(Ri||{}),Li=(e=>(e[e.None=0]="None",e[e.ContainsTypeScript=1]="ContainsTypeScript",e[e.ContainsJsx=2]="ContainsJsx",e[e.ContainsESNext=4]="ContainsESNext",e[e.ContainsES2022=8]="ContainsES2022",e[e.ContainsES2021=16]="ContainsES2021",e[e.ContainsES2020=32]="ContainsES2020",e[e.ContainsES2019=64]="ContainsES2019",e[e.ContainsES2018=128]="ContainsES2018",e[e.ContainsES2017=256]="ContainsES2017",e[e.ContainsES2016=512]="ContainsES2016",e[e.ContainsES2015=1024]="ContainsES2015",e[e.ContainsGenerator=2048]="ContainsGenerator",e[e.ContainsDestructuringAssignment=4096]="ContainsDestructuringAssignment",e[e.ContainsTypeScriptClassSyntax=8192]="ContainsTypeScriptClassSyntax",e[e.ContainsLexicalThis=16384]="ContainsLexicalThis",e[e.ContainsRestOrSpread=32768]="ContainsRestOrSpread",e[e.ContainsObjectRestOrSpread=65536]="ContainsObjectRestOrSpread",e[e.ContainsComputedPropertyName=131072]="ContainsComputedPropertyName",e[e.ContainsBlockScopedBinding=262144]="ContainsBlockScopedBinding",e[e.ContainsBindingPattern=524288]="ContainsBindingPattern",e[e.ContainsYield=1048576]="ContainsYield",e[e.ContainsAwait=2097152]="ContainsAwait",e[e.ContainsHoistedDeclarationOrCompletion=4194304]="ContainsHoistedDeclarationOrCompletion",e[e.ContainsDynamicImport=8388608]="ContainsDynamicImport",e[e.ContainsClassFields=16777216]="ContainsClassFields",e[e.ContainsDecorators=33554432]="ContainsDecorators",e[e.ContainsPossibleTopLevelAwait=67108864]="ContainsPossibleTopLevelAwait",e[e.ContainsLexicalSuper=134217728]="ContainsLexicalSuper",e[e.ContainsUpdateExpressionForIdentifier=268435456]="ContainsUpdateExpressionForIdentifier",e[e.ContainsPrivateIdentifierInExpression=536870912]="ContainsPrivateIdentifierInExpression",e[e.HasComputedFlags=-2147483648]="HasComputedFlags",e[e.AssertTypeScript=1]="AssertTypeScript",e[e.AssertJsx=2]="AssertJsx",e[e.AssertESNext=4]="AssertESNext",e[e.AssertES2022=8]="AssertES2022",e[e.AssertES2021=16]="AssertES2021",e[e.AssertES2020=32]="AssertES2020",e[e.AssertES2019=64]="AssertES2019",e[e.AssertES2018=128]="AssertES2018",e[e.AssertES2017=256]="AssertES2017",e[e.AssertES2016=512]="AssertES2016",e[e.AssertES2015=1024]="AssertES2015",e[e.AssertGenerator=2048]="AssertGenerator",e[e.AssertDestructuringAssignment=4096]="AssertDestructuringAssignment",e[e.OuterExpressionExcludes=-2147483648]="OuterExpressionExcludes",e[e.PropertyAccessExcludes=-2147483648]="PropertyAccessExcludes",e[e.NodeExcludes=-2147483648]="NodeExcludes",e[e.ArrowFunctionExcludes=-2072174592]="ArrowFunctionExcludes",e[e.FunctionExcludes=-1937940480]="FunctionExcludes",e[e.ConstructorExcludes=-1937948672]="ConstructorExcludes",e[e.MethodOrAccessorExcludes=-2005057536]="MethodOrAccessorExcludes",e[e.PropertyExcludes=-2013249536]="PropertyExcludes",e[e.ClassExcludes=-2147344384]="ClassExcludes",e[e.ModuleExcludes=-1941676032]="ModuleExcludes",e[e.TypeExcludes=-2]="TypeExcludes",e[e.ObjectLiteralExcludes=-2147278848]="ObjectLiteralExcludes",e[e.ArrayLiteralOrCallOrNewExcludes=-2147450880]="ArrayLiteralOrCallOrNewExcludes",e[e.VariableDeclarationListExcludes=-2146893824]="VariableDeclarationListExcludes",e[e.ParameterExcludes=-2147483648]="ParameterExcludes",e[e.CatchClauseExcludes=-2147418112]="CatchClauseExcludes",e[e.BindingPatternExcludes=-2147450880]="BindingPatternExcludes",e[e.ContainsLexicalThisOrSuper=134234112]="ContainsLexicalThisOrSuper",e[e.PropertyNamePropagatingFlags=134234112]="PropertyNamePropagatingFlags",e))(Li||{}),ji=(e=>(e[e.TabStop=0]="TabStop",e[e.Placeholder=1]="Placeholder",e[e.Choice=2]="Choice",e[e.Variable=3]="Variable",e))(ji||{}),zi=(e=>(e[e.None=0]="None",e[e.SingleLine=1]="SingleLine",e[e.MultiLine=2]="MultiLine",e[e.AdviseOnEmitNode=4]="AdviseOnEmitNode",e[e.NoSubstitution=8]="NoSubstitution",e[e.CapturesThis=16]="CapturesThis",e[e.NoLeadingSourceMap=32]="NoLeadingSourceMap",e[e.NoTrailingSourceMap=64]="NoTrailingSourceMap",e[e.NoSourceMap=96]="NoSourceMap",e[e.NoNestedSourceMaps=128]="NoNestedSourceMaps",e[e.NoTokenLeadingSourceMaps=256]="NoTokenLeadingSourceMaps",e[e.NoTokenTrailingSourceMaps=512]="NoTokenTrailingSourceMaps",e[e.NoTokenSourceMaps=768]="NoTokenSourceMaps",e[e.NoLeadingComments=1024]="NoLeadingComments",e[e.NoTrailingComments=2048]="NoTrailingComments",e[e.NoComments=3072]="NoComments",e[e.NoNestedComments=4096]="NoNestedComments",e[e.HelperName=8192]="HelperName",e[e.ExportName=16384]="ExportName",e[e.LocalName=32768]="LocalName",e[e.InternalName=65536]="InternalName",e[e.Indented=131072]="Indented",e[e.NoIndentation=262144]="NoIndentation",e[e.AsyncFunctionBody=524288]="AsyncFunctionBody",e[e.ReuseTempVariableScope=1048576]="ReuseTempVariableScope",e[e.CustomPrologue=2097152]="CustomPrologue",e[e.NoHoisting=4194304]="NoHoisting",e[e.Iterator=8388608]="Iterator",e[e.NoAsciiEscaping=16777216]="NoAsciiEscaping",e))(zi||{}),Ui=(e=>(e[e.None=0]="None",e[e.TypeScriptClassWrapper=1]="TypeScriptClassWrapper",e[e.NeverApplyImportHelper=2]="NeverApplyImportHelper",e[e.IgnoreSourceNewlines=4]="IgnoreSourceNewlines",e[e.Immutable=8]="Immutable",e[e.IndirectCall=16]="IndirectCall",e[e.TransformPrivateStaticElements=32]="TransformPrivateStaticElements",e))(Ui||{}),Bi=(e=>(e[e.Classes=2]="Classes",e[e.ForOf=2]="ForOf",e[e.Generators=2]="Generators",e[e.Iteration=2]="Iteration",e[e.SpreadElements=2]="SpreadElements",e[e.RestElements=2]="RestElements",e[e.TaggedTemplates=2]="TaggedTemplates",e[e.DestructuringAssignment=2]="DestructuringAssignment",e[e.BindingPatterns=2]="BindingPatterns",e[e.ArrowFunctions=2]="ArrowFunctions",e[e.BlockScopedVariables=2]="BlockScopedVariables",e[e.ObjectAssign=2]="ObjectAssign",e[e.RegularExpressionFlagsUnicode=2]="RegularExpressionFlagsUnicode",e[e.RegularExpressionFlagsSticky=2]="RegularExpressionFlagsSticky",e[e.Exponentiation=3]="Exponentiation",e[e.AsyncFunctions=4]="AsyncFunctions",e[e.ForAwaitOf=5]="ForAwaitOf",e[e.AsyncGenerators=5]="AsyncGenerators",e[e.AsyncIteration=5]="AsyncIteration",e[e.ObjectSpreadRest=5]="ObjectSpreadRest",e[e.RegularExpressionFlagsDotAll=5]="RegularExpressionFlagsDotAll",e[e.BindinglessCatch=6]="BindinglessCatch",e[e.BigInt=7]="BigInt",e[e.NullishCoalesce=7]="NullishCoalesce",e[e.OptionalChaining=7]="OptionalChaining",e[e.LogicalAssignment=8]="LogicalAssignment",e[e.TopLevelAwait=9]="TopLevelAwait",e[e.ClassFields=9]="ClassFields",e[e.PrivateNamesAndClassStaticBlocks=9]="PrivateNamesAndClassStaticBlocks",e[e.RegularExpressionFlagsHasIndices=9]="RegularExpressionFlagsHasIndices",e[e.ShebangComments=99]="ShebangComments",e[e.UsingAndAwaitUsing=99]="UsingAndAwaitUsing",e[e.ClassAndClassElementDecorators=99]="ClassAndClassElementDecorators",e[e.RegularExpressionFlagsUnicodeSets=99]="RegularExpressionFlagsUnicodeSets",e))(Bi||{}),qi=(e=>(e[e.Extends=1]="Extends",e[e.Assign=2]="Assign",e[e.Rest=4]="Rest",e[e.Decorate=8]="Decorate",e[e.ESDecorateAndRunInitializers=8]="ESDecorateAndRunInitializers",e[e.Metadata=16]="Metadata",e[e.Param=32]="Param",e[e.Awaiter=64]="Awaiter",e[e.Generator=128]="Generator",e[e.Values=256]="Values",e[e.Read=512]="Read",e[e.SpreadArray=1024]="SpreadArray",e[e.Await=2048]="Await",e[e.AsyncGenerator=4096]="AsyncGenerator",e[e.AsyncDelegator=8192]="AsyncDelegator",e[e.AsyncValues=16384]="AsyncValues",e[e.ExportStar=32768]="ExportStar",e[e.ImportStar=65536]="ImportStar",e[e.ImportDefault=131072]="ImportDefault",e[e.MakeTemplateObject=262144]="MakeTemplateObject",e[e.ClassPrivateFieldGet=524288]="ClassPrivateFieldGet",e[e.ClassPrivateFieldSet=1048576]="ClassPrivateFieldSet",e[e.ClassPrivateFieldIn=2097152]="ClassPrivateFieldIn",e[e.SetFunctionName=4194304]="SetFunctionName",e[e.PropKey=8388608]="PropKey",e[e.AddDisposableResourceAndDisposeResources=16777216]="AddDisposableResourceAndDisposeResources",e[e.FirstEmitHelper=1]="FirstEmitHelper",e[e.LastEmitHelper=16777216]="LastEmitHelper",e[e.ForOfIncludes=256]="ForOfIncludes",e[e.ForAwaitOfIncludes=16384]="ForAwaitOfIncludes",e[e.AsyncGeneratorIncludes=6144]="AsyncGeneratorIncludes",e[e.AsyncDelegatorIncludes=26624]="AsyncDelegatorIncludes",e[e.SpreadIncludes=1536]="SpreadIncludes",e))(qi||{}),Vi=(e=>(e[e.SourceFile=0]="SourceFile",e[e.Expression=1]="Expression",e[e.IdentifierName=2]="IdentifierName",e[e.MappedTypeParameter=3]="MappedTypeParameter",e[e.Unspecified=4]="Unspecified",e[e.EmbeddedStatement=5]="EmbeddedStatement",e[e.JsxAttributeValue=6]="JsxAttributeValue",e[e.ImportTypeNodeAttributes=7]="ImportTypeNodeAttributes",e))(Vi||{}),Ki=(e=>(e[e.Parentheses=1]="Parentheses",e[e.TypeAssertions=2]="TypeAssertions",e[e.NonNullAssertions=4]="NonNullAssertions",e[e.PartiallyEmittedExpressions=8]="PartiallyEmittedExpressions",e[e.Assertions=6]="Assertions",e[e.All=15]="All",e[e.ExcludeJSDocTypeAssertion=16]="ExcludeJSDocTypeAssertion",e))(Ki||{}),Ji=(e=>(e[e.None=0]="None",e[e.InParameters=1]="InParameters",e[e.VariablesHoistedInParameters=2]="VariablesHoistedInParameters",e))(Ji||{}),Wi=(e=>(e[e.None=0]="None",e[e.SingleLine=0]="SingleLine",e[e.MultiLine=1]="MultiLine",e[e.PreserveLines=2]="PreserveLines",e[e.LinesMask=3]="LinesMask",e[e.NotDelimited=0]="NotDelimited",e[e.BarDelimited=4]="BarDelimited",e[e.AmpersandDelimited=8]="AmpersandDelimited",e[e.CommaDelimited=16]="CommaDelimited",e[e.AsteriskDelimited=32]="AsteriskDelimited",e[e.DelimitersMask=60]="DelimitersMask",e[e.AllowTrailingComma=64]="AllowTrailingComma",e[e.Indented=128]="Indented",e[e.SpaceBetweenBraces=256]="SpaceBetweenBraces",e[e.SpaceBetweenSiblings=512]="SpaceBetweenSiblings",e[e.Braces=1024]="Braces",e[e.Parenthesis=2048]="Parenthesis",e[e.AngleBrackets=4096]="AngleBrackets",e[e.SquareBrackets=8192]="SquareBrackets",e[e.BracketsMask=15360]="BracketsMask",e[e.OptionalIfUndefined=16384]="OptionalIfUndefined",e[e.OptionalIfEmpty=32768]="OptionalIfEmpty",e[e.Optional=49152]="Optional",e[e.PreferNewLine=65536]="PreferNewLine",e[e.NoTrailingNewLine=131072]="NoTrailingNewLine",e[e.NoInterveningComments=262144]="NoInterveningComments",e[e.NoSpaceIfEmpty=524288]="NoSpaceIfEmpty",e[e.SingleElement=1048576]="SingleElement",e[e.SpaceAfterList=2097152]="SpaceAfterList",e[e.Modifiers=2359808]="Modifiers",e[e.HeritageClauses=512]="HeritageClauses",e[e.SingleLineTypeLiteralMembers=768]="SingleLineTypeLiteralMembers",e[e.MultiLineTypeLiteralMembers=32897]="MultiLineTypeLiteralMembers",e[e.SingleLineTupleTypeElements=528]="SingleLineTupleTypeElements",e[e.MultiLineTupleTypeElements=657]="MultiLineTupleTypeElements",e[e.UnionTypeConstituents=516]="UnionTypeConstituents",e[e.IntersectionTypeConstituents=520]="IntersectionTypeConstituents",e[e.ObjectBindingPatternElements=525136]="ObjectBindingPatternElements",e[e.ArrayBindingPatternElements=524880]="ArrayBindingPatternElements",e[e.ObjectLiteralExpressionProperties=526226]="ObjectLiteralExpressionProperties",e[e.ImportAttributes=526226]="ImportAttributes",e[e.ImportClauseEntries=526226]="ImportClauseEntries",e[e.ArrayLiteralExpressionElements=8914]="ArrayLiteralExpressionElements",e[e.CommaListElements=528]="CommaListElements",e[e.CallExpressionArguments=2576]="CallExpressionArguments",e[e.NewExpressionArguments=18960]="NewExpressionArguments",e[e.TemplateExpressionSpans=262144]="TemplateExpressionSpans",e[e.SingleLineBlockStatements=768]="SingleLineBlockStatements",e[e.MultiLineBlockStatements=129]="MultiLineBlockStatements",e[e.VariableDeclarationList=528]="VariableDeclarationList",e[e.SingleLineFunctionBodyStatements=768]="SingleLineFunctionBodyStatements",e[e.MultiLineFunctionBodyStatements=1]="MultiLineFunctionBodyStatements",e[e.ClassHeritageClauses=0]="ClassHeritageClauses",e[e.ClassMembers=129]="ClassMembers",e[e.InterfaceMembers=129]="InterfaceMembers",e[e.EnumMembers=145]="EnumMembers",e[e.CaseBlockClauses=129]="CaseBlockClauses",e[e.NamedImportsOrExportsElements=525136]="NamedImportsOrExportsElements",e[e.JsxElementOrFragmentChildren=262144]="JsxElementOrFragmentChildren",e[e.JsxElementAttributes=262656]="JsxElementAttributes",e[e.CaseOrDefaultClauseStatements=163969]="CaseOrDefaultClauseStatements",e[e.HeritageClauseTypes=528]="HeritageClauseTypes",e[e.SourceFileStatements=131073]="SourceFileStatements",e[e.Decorators=2146305]="Decorators",e[e.TypeArguments=53776]="TypeArguments",e[e.TypeParameters=53776]="TypeParameters",e[e.Parameters=2576]="Parameters",e[e.IndexSignatureParameters=8848]="IndexSignatureParameters",e[e.JSDocComment=33]="JSDocComment",e))(Wi||{}),Hi=(e=>(e[e.None=0]="None",e[e.TripleSlashXML=1]="TripleSlashXML",e[e.SingleLine=2]="SingleLine",e[e.MultiLine=4]="MultiLine",e[e.All=7]="All",e[e.Default=7]="Default",e))(Hi||{}),Gi={reference:{args:[{name:"types",optional:!0,captureSpan:!0},{name:"lib",optional:!0,captureSpan:!0},{name:"path",optional:!0,captureSpan:!0},{name:"no-default-lib",optional:!0},{name:"resolution-mode",optional:!0},{name:"preserve",optional:!0}],kind:1},"amd-dependency":{args:[{name:"path"},{name:"name",optional:!0}],kind:1},"amd-module":{args:[{name:"name"}],kind:1},"ts-check":{kind:2},"ts-nocheck":{kind:2},jsx:{args:[{name:"factory"}],kind:4},jsxfrag:{args:[{name:"factory"}],kind:4},jsximportsource:{args:[{name:"factory"}],kind:4},jsxruntime:{args:[{name:"factory"}],kind:4}},Qi=(e=>(e[e.ParseAll=0]="ParseAll",e[e.ParseNone=1]="ParseNone",e[e.ParseForTypeErrors=2]="ParseForTypeErrors",e[e.ParseForTypeInfo=3]="ParseForTypeInfo",e))(Qi||{});function Yi(e){let t=5381;for(let n=0;n<e.length;n++)t=(t<<5)+t+e.charCodeAt(n);return t.toString()}function Zi(){Error.stackTraceLimit<100&&(Error.stackTraceLimit=100)}var Xi=(e=>(e[e.Created=0]="Created",e[e.Changed=1]="Changed",e[e.Deleted=2]="Deleted",e))(Xi||{}),$i=(e=>(e[e.High=2e3]="High",e[e.Medium=500]="Medium",e[e.Low=250]="Low",e))($i||{}),eo=new Date(0);function to(e,t){return e.getModifiedTime(t)||eo}function no(e){return{250:e.Low,500:e.Medium,2e3:e.High}}var ro={Low:32,Medium:64,High:256},io=no(ro),oo=no(ro);function so(e,t,n,r,i){let o=n;for(let a=t.length;r&&a;s(),a--){const s=t[n];if(!s)continue;if(s.isClosed){t[n]=void 0;continue}r--;const a=uo(s,to(e,s.fileName));s.isClosed?t[n]=void 0:(null==i||i(s,n,a),t[n]&&(o<n&&(t[o]=s,t[n]=void 0),o++))}return n;function s(){++n===t.length&&(o<n&&(t.length=o),n=0,o=0)}}function ao(e){const t=[],n=[],r=s(250),i=s(500),o=s(2e3);return function(n,r,i){const o={fileName:n,callback:r,unchangedPolls:0,mtime:to(e,n)};return t.push(o),d(o,i),{close:()=>{o.isClosed=!0,nn(t,o)}}};function s(e){const t=[];return t.pollingInterval=e,t.pollIndex=0,t.pollScheduled=!1,t}function a(e,t){t.pollIndex=l(t,t.pollingInterval,t.pollIndex,io[t.pollingInterval]),t.length?p(t.pollingInterval):(Tn.assert(0===t.pollIndex),t.pollScheduled=!1)}function c(e,t){l(n,250,0,n.length),a(0,t),!t.pollScheduled&&n.length&&p(250)}function l(t,r,i,o){return so(e,t,i,o,(function(e,i,o){o?(e.unchangedPolls=0,t!==n&&(t[i]=void 0,s=e,n.push(s),_(250))):e.unchangedPolls!==oo[r]?e.unchangedPolls++:t===n?(e.unchangedPolls=1,t[i]=void 0,d(e,250)):2e3!==r&&(e.unchangedPolls++,t[i]=void 0,d(e,250===r?500:2e3));var s}))}function u(e){switch(e){case 250:return r;case 500:return i;case 2e3:return o}}function d(e,t){u(t).push(e),_(t)}function _(e){u(e).pollScheduled||p(e)}function p(t){u(t).pollScheduled=e.setTimeout(250===t?c:a,t,250===t?"pollLowPollingIntervalQueue":"pollPollingIntervalQueue",u(t))}}function co(e,t,n,r){const i=nt(),o=r?new Map:void 0,s=new Map,a=rn(t);return function(t,r,c,l){const u=a(t);1===i.add(u,r).length&&o&&o.set(u,n(t)||eo);const d=Vo(u)||".",_=s.get(d)||function(t,r,c){const l=e(t,1,((e,r)=>{if(!lt(r))return;const s=es(r,t),c=a(s),l=s&&i.get(c);if(l){let t,r=1;if(o){const i=o.get(c);if("change"===e&&(t=n(s)||eo,t.getTime()===i.getTime()))return;t||(t=n(s)||eo),o.set(c,t),i===eo?r=0:t===eo&&(r=2)}for(const e of l)e(s,r,t)}}),!1,500,c);return l.referenceCount=0,s.set(r,l),l}(Vo(t)||".",d,l);return _.referenceCount++,{close:()=>{1===_.referenceCount?(_.close(),s.delete(d)):_.referenceCount--,i.remove(u,r)}}}}function lo(e,t,n,r,i){const o=rn(t)(n),s=e.get(o);return s?s.callbacks.push(r):e.set(o,{watcher:i(((t,n,r)=>{var i;return null==(i=e.get(o))?void 0:i.callbacks.slice().forEach((e=>e(t,n,r)))})),callbacks:[r]}),{close:()=>{const t=e.get(o);t&&$t(t.callbacks,r)&&!t.callbacks.length&&(e.delete(o),FV(t))}}}function uo(e,t){const n=e.mtime.getTime(),r=t.getTime();return n!==r&&(e.mtime=t,e.callback(e.fileName,_o(n,r),t),!0)}function _o(e,t){return 0===e?0:0===t?2:1}var po=["/node_modules/.","/.git","/.#"],fo=pt;function mo(e){return fo(e)}function ho(e){fo=e}function go({watchDirectory:e,useCaseSensitiveFileNames:t,getCurrentDirectory:n,getAccessibleSortedChildDirectories:r,fileSystemEntryExists:i,realpath:o,setTimeout:s,clearTimeout:a}){const c=new Map,l=nt(),u=new Map;let d;const p=jt(!t),f=rn(t);return(t,n,r,i)=>r?m(t,i,n):e(t,n,r,i);function m(t,n,r,o){const p=f(t);let m=c.get(p);m?m.refCount++:(m={watcher:e(t,(e=>{var r;x(e,n)||((null==n?void 0:n.synchronousWatchDirectory)?((null==(r=c.get(p))?void 0:r.targetWatcher)||h(t,p,e),b(t,p,n)):function(e,t,n,r){const o=c.get(t);if(o&&i(e,1))return void function(e,t,n,r){const i=u.get(t);i?i.fileNames.push(n):u.set(t,{dirName:e,options:r,fileNames:[n]});d&&(a(d),d=void 0);d=s(g,1e3,"timerToUpdateChildWatches")}(e,t,n,r);h(e,t,n),v(o),y(o)}(t,p,e,n))}),!1,n),refCount:1,childWatches:_,targetWatcher:void 0,links:void 0},c.set(p,m),b(t,p,n)),o&&(m.links??(m.links=new Set)).add(o);const S=r&&{dirName:t,callback:r};return S&&l.add(p,S),{dirName:t,close:()=>{var e;const t=Tn.checkDefined(c.get(p));S&&l.remove(p,S),o&&(null==(e=t.links)||e.delete(o)),t.refCount--,t.refCount||(c.delete(p),t.links=void 0,FV(t),v(t),t.childWatches.forEach(vx))}}}function h(e,t,n,r){var i,o;let s,a;lt(n)?s=n:a=n,l.forEach(((e,n)=>{if((!a||!0!==a.get(n))&&(n===t||cn(t,n)&&t[n.length]===ko))if(a)if(r){const e=a.get(n);e?e.push(...r):a.set(n,r.slice())}else a.set(n,!0);else e.forEach((({callback:e})=>e(s)))})),null==(o=null==(i=c.get(t))?void 0:i.links)||o.forEach((t=>{const n=n=>Zo(t,gs(e,n,f));a?h(t,f(t),a,null==r?void 0:r.map(n)):h(t,f(t),n(s))}))}function g(){var e;d=void 0,mo(`sysLog:: onTimerToUpdateChildWatches:: ${u.size}`);const t=er(),n=new Map;for(;!d&&u.size;){const t=u.entries().next();Tn.assert(!t.done);const{value:[r,{dirName:i,options:o,fileNames:s}]}=t;u.delete(r);const a=b(i,r,o);(null==(e=c.get(r))?void 0:e.targetWatcher)||h(i,r,n,a?void 0:s)}mo(`sysLog:: invokingWatchers:: Elapsed:: ${er()-t}ms:: ${u.size}`),l.forEach(((e,t)=>{const r=n.get(t);r&&e.forEach((({callback:e,dirName:t})=>{at(r)?r.forEach(e):e(t)}))}));mo(`sysLog:: Elapsed:: ${er()-t}ms:: onTimerToUpdateChildWatches:: ${u.size} ${d}`)}function y(e){if(!e)return;const t=e.childWatches;e.childWatches=_;for(const n of t)n.close(),y(c.get(f(n.dirName)))}function v(e){(null==e?void 0:e.targetWatcher)&&(e.targetWatcher.close(),e.targetWatcher=void 0)}function b(e,t,n){const s=c.get(t);if(!s)return!1;const a=ts(o(e));let l,u;return 0===p(a,e)?l=gn(i(e,1)?J(r(e),(t=>{const r=es(t,e);return x(r,n)||0!==p(r,ts(o(r)))?void 0:r})):_,s.childWatches,((e,t)=>p(e,t.dirName)),(function(e){d(m(e,n))}),vx,d):s.targetWatcher&&0===p(a,s.targetWatcher.dirName)?(l=!1,Tn.assert(s.childWatches===_)):(v(s),s.targetWatcher=m(a,n,void 0,e),s.childWatches.forEach(vx),l=!0),s.childWatches=u||_,l;function d(e){(u||(u=[])).push(e)}}function x(e,r){return $(po,(n=>function(e,n){return!!e.includes(n)||!t&&f(e).includes(n)}(e,n)))||vo(e,r,t,n)}}var yo=(e=>(e[e.File=0]="File",e[e.Directory=1]="Directory",e))(yo||{});function vo(e,t,n,r){return((null==t?void 0:t.excludeDirectories)||(null==t?void 0:t.excludeFiles))&&(RR(e,null==t?void 0:t.excludeFiles,n,r())||RR(e,null==t?void 0:t.excludeDirectories,n,r()))}function bo(e,t,n,r,i){return(o,s)=>{if("rename"===o){const o=s?ts(Zo(e,s)):e;s&&vo(o,n,r,i)||t(o)}}}function xo({pollingWatchFileWorker:e,getModifiedTime:t,setTimeout:n,clearTimeout:r,fsWatchWorker:i,fileSystemEntryExists:o,useCaseSensitiveFileNames:s,getCurrentDirectory:a,fsSupportsRecursiveFsWatch:c,getAccessibleSortedChildDirectories:l,realpath:u,tscWatchFile:d,useNonPollingWatchers:_,tscWatchDirectory:p,inodeWatching:f,fsWatchWithTimestamp:m,sysLog:h}){const g=new Map,y=new Map,v=new Map;let b,x,S,T,w=!1;return{watchFile:k,watchDirectory:function(e,t,i,d){if(c)return D(e,1,bo(e,t,d,s,a),i,500,OV(d));T||(T=go({useCaseSensitiveFileNames:s,getCurrentDirectory:a,fileSystemEntryExists:o,getAccessibleSortedChildDirectories:l,watchDirectory:A,realpath:u,setTimeout:n,clearTimeout:r}));return T(e,t,i,d)}};function k(e,n,r,i){i=function(e,t){if(e&&void 0!==e.watchFile)return e;switch(d){case"PriorityPollingInterval":return{watchFile:1};case"DynamicPriorityPolling":return{watchFile:2};case"UseFsEvents":return N(4,1,e);case"UseFsEventsWithFallbackDynamicPolling":return N(4,2,e);case"UseFsEventsOnParentDirectory":t=!0;default:return t?N(5,1,e):{watchFile:4}}}(i,_);const o=Tn.checkDefined(i.watchFile);switch(o){case 0:return I(e,n,250,void 0);case 1:return I(e,n,r,void 0);case 2:return E()(e,n,r,void 0);case 3:return C()(e,n,void 0,void 0);case 4:return D(e,0,function(e,t,n){return(r,i,o)=>{"rename"===r?(o||(o=n(e)||eo),t(e,o!==eo?0:2,o)):t(e,1,o)}}(e,n,t),!1,r,OV(i));case 5:return S||(S=co(D,s,t,m)),S(e,n,r,OV(i));default:Tn.assertNever(o)}}function E(){return b||(b=ao({getModifiedTime:t,setTimeout:n}))}function C(){return x||(x=function(e){const t=[];let n,r=0;return function(n,r){const i={fileName:n,callback:r,mtime:to(e,n)};return t.push(i),o(),{close:()=>{i.isClosed=!0,nn(t,i)}}};function i(){n=void 0,r=so(e,t,r,io[250]),o()}function o(){t.length&&!n&&(n=e.setTimeout(i,2e3,"pollQueue"))}}({getModifiedTime:t,setTimeout:n}))}function N(e,t,n){const r=null==n?void 0:n.fallbackPolling;return{watchFile:e,fallbackPolling:void 0===r?t:r}}function A(e,t,n,r){Tn.assert(!n);const i=function(e){if(e&&void 0!==e.watchDirectory)return e;switch(p){case"RecursiveDirectoryUsingFsWatchFile":return{watchDirectory:1};case"RecursiveDirectoryUsingDynamicPriorityPolling":return{watchDirectory:2};default:const t=null==e?void 0:e.fallbackPolling;return{watchDirectory:0,fallbackPolling:void 0!==t?t:void 0}}}(r),o=Tn.checkDefined(i.watchDirectory);switch(o){case 1:return I(e,(()=>t(e)),500,void 0);case 2:return E()(e,(()=>t(e)),500,void 0);case 3:return C()(e,(()=>t(e)),void 0,void 0);case 0:return D(e,1,bo(e,t,r,s,a),n,500,OV(i));default:Tn.assertNever(o)}}function I(t,n,r,i){return lo(g,s,t,n,(n=>e(t,n,r,i)))}function D(e,n,r,a,c,l){return lo(a?v:y,s,e,r,(r=>function(e,n,r,s,a,c){let l,u;f&&(l=e.substring(e.lastIndexOf(ko)),u=l.slice(ko.length));let d=o(e,n)?p():v();return{close:()=>{d&&(d.close(),d=void 0)}};function _(t){d&&(h(`sysLog:: ${e}:: Changing watcher to ${t===p?"Present":"Missing"}FileSystemEntryWatcher`),d.close(),d=t())}function p(){if(w)return h(`sysLog:: ${e}:: Defaulting to watchFile`),y();try{const t=(1!==n&&m?P:i)(e,s,f?g:r);return t.on("error",(()=>{r("rename",""),_(v)})),t}catch(Mge){return w||(w="ENOSPC"===Mge.code),h(`sysLog:: ${e}:: Changing to watchFile`),y()}}function g(n,i){let o;if(i&&Qt(i,"~")&&(o=i,i=i.slice(0,i.length-1)),"rename"!==n||i&&i!==u&&!Qt(i,l))o&&r(n,o),r(n,i);else{const s=t(e)||eo;o&&r(n,o,s),r(n,i,s),f?_(s===eo?v:p):s===eo&&_(v)}}function y(){return k(e,function(e){return(t,n,r)=>e(1===n?"change":"rename","",r)}(r),a,c)}function v(){return k(e,((n,i,o)=>{0===i&&(o||(o=t(e)||eo),o!==eo&&(r("rename","",o),_(p)))}),a,c)}}(e,n,r,a,c,l)))}function P(e,n,r){let o=t(e)||eo;return i(e,n,((n,i,s)=>{"change"===n&&(s||(s=t(e)||eo),s.getTime()===o.getTime())||(o=s||t(e)||eo,r(n,i,o))}))}}function So(e){const t=e.writeFile;e.writeFile=(n,r,i)=>mv(n,r,!!i,((n,r,i)=>t.call(e,n,r,i)),(t=>e.createDirectory(t)),(t=>e.directoryExists(t)))}var To=(()=>{let e;return Sn()&&(e=function(){const e=/^native |^\([^)]+\)$|^(internal[\\/]|[a-zA-Z0-9_\s]+(\.js)?$)/,t=n(84021),o=n(18641),a=n(82202);let c,l;try{c=n(72615)}catch{c=void 0}let u="./profile.cpuprofile";const d="darwin"===i.platform,_="linux"===i.platform||d,p=a.platform(),f="win32"!==p&&"win64"!==p&&!E(function(e){return e.replace(/\w/g,(e=>{const t=e.toUpperCase();return e===t?e.toLowerCase():t}))}(r)),m=t.realpathSync.native?"win32"===i.platform?function(e){return e.length<260?t.realpathSync.native(e):t.realpathSync(e)}:t.realpathSync.native:t.realpathSync,h=r.endsWith("sys.js")?o.join(o.dirname("/"),"__fake__.js"):r,g="win32"===i.platform||d,y=St((()=>i.cwd())),{watchFile:v,watchDirectory:b}=xo({pollingWatchFileWorker:function(e,n,r){let i;return t.watchFile(e,{persistent:!0,interval:r},o),{close:()=>t.unwatchFile(e,o)};function o(t,r){const o=0==+r.mtime||2===i;if(0==+t.mtime){if(o)return;i=2}else if(o)i=0;else{if(+t.mtime==+r.mtime)return;i=1}n(e,i,t.mtime)}},getModifiedTime:N,setTimeout:setTimeout,clearTimeout:clearTimeout,fsWatchWorker:function(e,n,r){return t.watch(e,g?{persistent:!0,recursive:!!n}:{persistent:!0},r)},useCaseSensitiveFileNames:f,getCurrentDirectory:y,fileSystemEntryExists:k,fsSupportsRecursiveFsWatch:g,getAccessibleSortedChildDirectories:e=>w(e).directories,realpath:C,tscWatchFile:i.env.TSC_WATCHFILE,useNonPollingWatchers:!!i.env.TSC_NONPOLLING_WATCHER,tscWatchDirectory:i.env.TSC_WATCHDIRECTORY,inodeWatching:_,fsWatchWithTimestamp:d,sysLog:mo}),x={args:i.argv.slice(2),newLine:a.EOL,useCaseSensitiveFileNames:f,write(e){i.stdout.write(e)},getWidthOfTerminal:()=>i.stdout.columns,writeOutputIsTTY:()=>i.stdout.isTTY,readFile:function(e,n){var r,i;null==(r=rr)||r.logStartReadFile(e);const o=function(e,n){let r;try{r=t.readFileSync(e)}catch(Mge){return}let i=r.length;if(i>=2&&254===r[0]&&255===r[1]){i&=-2;for(let e=0;e<i;e+=2){const t=r[e];r[e]=r[e+1],r[e+1]=t}return r.toString("utf16le",2)}return i>=2&&255===r[0]&&254===r[1]?r.toString("utf16le",2):i>=3&&239===r[0]&&187===r[1]&&191===r[2]?r.toString("utf8",3):r.toString("utf8")}(e);return null==(i=rr)||i.logStopReadFile(),o},writeFile:function(e,n,r){var i;let o;null==(i=rr)||i.logEvent("WriteFile: "+e),r&&(n="\ufeff"+n);try{o=t.openSync(e,"w"),t.writeSync(o,n,void 0,"utf8")}finally{void 0!==o&&t.closeSync(o)}},watchFile:v,watchDirectory:b,resolvePath:e=>o.resolve(e),fileExists:E,directoryExists:function(e){return k(e,1)},getAccessibleFileSystemEntries:w,createDirectory(e){if(!x.directoryExists(e))try{t.mkdirSync(e)}catch(Mge){if("EEXIST"!==Mge.code)throw Mge}},getExecutingFilePath:()=>h,getCurrentDirectory:y,getDirectories:function(e){return w(e).directories.slice()},getEnvironmentVariable:e=>i.env[e]||"",readDirectory:function(e,t,n,r,o){return PT(e,t,n,r,f,i.cwd(),o,w,C)},getModifiedTime:N,setModifiedTime:function(e,n){try{t.utimesSync(e,n,n)}catch(Mge){return}},deleteFile:function(e){try{return t.unlinkSync(e)}catch(Mge){return}},createHash:c?I:Yi,createSHA256Hash:c?I:void 0,getMemoryUsage:()=>(n.g.gc&&n.g.gc(),i.memoryUsage().heapUsed),getFileSize(e){try{const t=S(e);if(null==t?void 0:t.isFile())return t.size}catch{}return 0},exit(e){T((()=>i.exit(e)))},enableCPUProfiler:function(e,t){if(l)return t(),!1;const r=n(66247);if(!r||!r.Session)return t(),!1;const i=new r.Session;return i.connect(),i.post("Profiler.enable",(()=>{i.post("Profiler.start",(()=>{l=i,u=e,t()}))})),!0},disableCPUProfiler:T,cpuProfilingEnabled:()=>!!l||A(i.execArgv,"--cpu-prof")||A(i.execArgv,"--prof"),realpath:C,debugMode:!!i.env.NODE_INSPECTOR_IPC||!!i.env.VSCODE_INSPECTOR_OPTIONS||$(i.execArgv,(e=>/^--(inspect|debug)(-brk)?(=\d+)?$/i.test(e)))||!!i.recordreplay,tryEnableSourceMapsForHost(){try{n(97664).install()}catch{}},setTimeout:setTimeout,clearTimeout:clearTimeout,clearScreen:()=>{i.stdout.write("\x1bc")},setBlocking:()=>{var e;const t=null==(e=i.stdout)?void 0:e._handle;t&&t.setBlocking&&t.setBlocking(!0)},base64decode:e=>s.from(e,"base64").toString("utf8"),base64encode:e=>s.from(e).toString("base64"),require:(e,t)=>{try{const r=jL(t,e,x);return{module:n(89387)(r),modulePath:r,error:void 0}}catch(r){return{module:void 0,modulePath:void 0,error:r}}}};return x;function S(e){return t.statSync(e,{throwIfNoEntry:!1})}function T(n){if(l&&"stopping"!==l){const r=l;return l.post("Profiler.stop",((s,{profile:a})=>{var c;if(!s){try{(null==(c=S(u))?void 0:c.isDirectory())&&(u=o.join(u,`${(new Date).toISOString().replace(/:/g,"-")}+P${i.pid}.cpuprofile`))}catch{}try{t.mkdirSync(o.dirname(u),{recursive:!0})}catch{}t.writeFileSync(u,JSON.stringify(function(t){let n=0;const r=new Map,i=Qo(o.dirname(h)),s=`file://${1===qo(i)?"":"/"}${i}`;for(const o of t.nodes)if(o.callFrame.url){const t=Qo(o.callFrame.url);fs(s,t,f)?o.callFrame.url=bs(s,t,s,rn(f),!0):e.test(t)||(o.callFrame.url=(r.has(t)?r:r.set(t,`external${n}.js`)).get(t),n++)}return t}(a)))}l=void 0,r.disconnect(),n()})),l="stopping",!0}return n(),!1}function w(e){var n;null==(n=rr)||n.logEvent("ReadDir: "+(e||"."));try{const n=t.readdirSync(e||".",{withFileTypes:!0}),r=[],i=[];for(const t of n){const n="string"==typeof t?t:t.name;if("."===n||".."===n)continue;let o;if("string"==typeof t||t.isSymbolicLink()){const t=Zo(e,n);try{if(o=S(t),!o)continue}catch(Mge){continue}}else o=t;o.isFile()?r.push(n):o.isDirectory()&&i.push(n)}return r.sort(),i.sort(),{files:r,directories:i}}catch(Mge){return yw}}function k(e,t){const n=Error.stackTraceLimit;Error.stackTraceLimit=0;try{const n=S(e);if(!n)return!1;switch(t){case 0:return n.isFile();case 1:return n.isDirectory();default:return!1}}catch(Mge){return!1}finally{Error.stackTraceLimit=n}}function E(e){return k(e,0)}function C(e){try{return m(e)}catch{return e}}function N(e){var t;const n=Error.stackTraceLimit;Error.stackTraceLimit=0;try{return null==(t=S(e))?void 0:t.mtime}catch(Mge){return}finally{Error.stackTraceLimit=n}}function I(e){const t=c.createHash("sha256");return t.update(e),t.digest("hex")}}()),e&&So(e),e})();function wo(e){To=e}To&&To.getEnvironmentVariable&&(!function(e){if(!e.getEnvironmentVariable)return;const t=function(e,t){const r=n("TSC_WATCH_POLLINGINTERVAL");return!!r&&(i("Low"),i("Medium"),i("High"),!0);function i(e){t[e]=r[e]||t[e]}}(0,$i);function n(t){let n;return r("Low"),r("Medium"),r("High"),n;function r(r){const i=function(t,n){return e.getEnvironmentVariable(`${t}_${n.toUpperCase()}`)}(t,r);i&&((n||(n={}))[r]=Number(i))}}function r(e,r){const i=n(e);return(t||i)&&no(i?{...r,...i}:r)}io=r("TSC_WATCH_POLLINGCHUNKSIZE",ro)||io,oo=r("TSC_WATCH_UNCHANGEDPOLLTHRESHOLDS",ro)||oo}(To),Tn.setAssertionLevel(/^development$/i.test(To.getEnvironmentVariable("NODE_ENV"))?1:0)),To&&To.debugMode&&(Tn.isDebugging=!0);var ko="/",Eo="\\",Co="://",No=/\\/g;function Ao(e){return 47===e||92===e}function Io(e){return Bo(e)<0}function Do(e){return Bo(e)>0}function Po(e){const t=Bo(e);return t>0&&t===e.length}function Mo(e){return 0!==Bo(e)}function Oo(e){return/^\.\.?($|[\\/])/.test(e)}function Fo(e){return!Mo(e)&&!Oo(e)}function Ro(e){return Ko(e).includes(".")}function Lo(e,t){return e.length>t.length&&Qt(e,t)}function jo(e,t){for(const n of t)if(Lo(e,n))return!0;return!1}function zo(e){return e.length>0&&Ao(e.charCodeAt(e.length-1))}function Uo(e){return e>=97&&e<=122||e>=65&&e<=90}function Bo(e){if(!e)return 0;const t=e.charCodeAt(0);if(47===t||92===t){if(e.charCodeAt(1)!==t)return 1;const n=e.indexOf(47===t?ko:Eo,2);return n<0?e.length:n+1}if(Uo(t)&&58===e.charCodeAt(1)){const t=e.charCodeAt(2);if(47===t||92===t)return 3;if(2===e.length)return 2}const n=e.indexOf(Co);if(-1!==n){const t=n+Co.length,r=e.indexOf(ko,t);if(-1!==r){const i=e.slice(0,n),o=e.slice(t,r);if("file"===i&&(""===o||"localhost"===o)&&Uo(e.charCodeAt(r+1))){const t=function(e,t){const n=e.charCodeAt(t);if(58===n)return t+1;if(37===n&&51===e.charCodeAt(t+1)){const n=e.charCodeAt(t+2);if(97===n||65===n)return t+3}return-1}(e,r+2);if(-1!==t){if(47===e.charCodeAt(t))return~(t+1);if(t===e.length)return~t}}return~(r+1)}return~e.length}return 0}function qo(e){const t=Bo(e);return t<0?~t:t}function Vo(e){const t=qo(e=Qo(e));return t===e.length?e:(e=is(e)).slice(0,Math.max(t,e.lastIndexOf(ko)))}function Ko(e,t,n){if(qo(e=Qo(e))===e.length)return"";const r=(e=is(e)).slice(Math.max(qo(e),e.lastIndexOf(ko)+1)),i=void 0!==t&&void 0!==n?Wo(r,t,n):void 0;return i?r.slice(0,r.length-i.length):r}function Jo(e,t,n){if(cn(t,".")||(t="."+t),e.length>=t.length&&46===e.charCodeAt(e.length-t.length)){const r=e.slice(e.length-t.length);if(n(r,t))return r}}function Wo(e,t,n){if(t)return function(e,t,n){if("string"==typeof t)return Jo(e,t,n)||"";for(const r of t){const t=Jo(e,r,n);if(t)return t}return""}(is(e),t,n?At:It);const r=Ko(e),i=r.lastIndexOf(".");return i>=0?r.substring(i):""}function Ho(e,t=""){return function(e,t){const n=e.substring(0,t),r=e.substring(t).split(ko);return r.length&&!Ne(r)&&r.pop(),[n,...r]}(e=Zo(t,e),qo(e))}function Go(e,t){if(0===e.length)return"";return(e[0]&&os(e[0]))+e.slice(1,t).join(ko)}function Qo(e){return e.includes("\\")?e.replace(No,ko):e}function Yo(e){if(!$(e))return[];const t=[e[0]];for(let n=1;n<e.length;n++){const r=e[n];if(r&&"."!==r){if(".."===r)if(t.length>1){if(".."!==t[t.length-1]){t.pop();continue}}else if(t[0])continue;t.push(r)}}return t}function Zo(e,...t){e&&(e=Qo(e));for(let n of t)n&&(n=Qo(n),e=e&&0===qo(n)?os(e)+n:n);return e}function Xo(e,...t){return ts($(t)?Zo(e,...t):Qo(e))}function $o(e,t){return Yo(Ho(e,t))}function es(e,t){return Go($o(e,t))}function ts(e){if(e=Qo(e),!ls.test(e))return e;const t=e.replace(/\/\.\//g,"/").replace(/^\.\//,"");if(t!==e&&(e=t,!ls.test(e)))return e;const n=Go(Yo(Ho(e)));return n&&zo(e)?os(n):n}function ns(e,t){return 0===(n=$o(e,t)).length?"":n.slice(1).join(ko);var n}function rs(e,t,n){return n(Do(e)?ts(e):es(e,t))}function is(e){return zo(e)?e.substr(0,e.length-1):e}function os(e){return zo(e)?e:e+ko}function ss(e){return Mo(e)||Oo(e)?e:"./"+e}function as(e,t,n,r){const i=void 0!==n&&void 0!==r?Wo(e,n,r):Wo(e);return i?e.slice(0,e.length-i.length)+(cn(t,".")?t:"."+t):e}function cs(e,t){const n=uO(e);return n?e.slice(0,e.length-n.length)+(cn(t,".")?t:"."+t):as(e,t)}var ls=/(?:\/\/)|(?:^|\/)\.\.?(?:$|\/)/;function us(e,t,n){if(e===t)return 0;if(void 0===e)return-1;if(void 0===t)return 1;const r=e.substring(0,qo(e)),i=t.substring(0,qo(t)),o=Ft(r,i);if(0!==o)return o;const s=e.substring(r.length),a=t.substring(i.length);if(!ls.test(s)&&!ls.test(a))return n(s,a);const c=Yo(Ho(e)),l=Yo(Ho(t)),u=Math.min(c.length,l.length);for(let d=1;d<u;d++){const e=n(c[d],l[d]);if(0!==e)return e}return Pt(c.length,l.length)}function ds(e,t){return us(e,t,Lt)}function _s(e,t){return us(e,t,Ft)}function ps(e,t,n,r){return"string"==typeof n?(e=Zo(n,e),t=Zo(n,t)):"boolean"==typeof n&&(r=n),us(e,t,jt(r))}function fs(e,t,n,r){if("string"==typeof n?(e=Zo(n,e),t=Zo(n,t)):"boolean"==typeof n&&(r=n),void 0===e||void 0===t)return!1;if(e===t)return!0;const i=Yo(Ho(e)),o=Yo(Ho(t));if(o.length<i.length)return!1;const s=r?At:It;for(let a=0;a<i.length;a++){if(!(0===a?At:s)(i[a],o[a]))return!1}return!0}function ms(e,t,n){const r=n(e),i=n(t);return cn(r,i+"/")||cn(r,i+"\\")}function hs(e,t,n,r){const i=Yo(Ho(e)),o=Yo(Ho(t));let s;for(s=0;s<i.length&&s<o.length;s++){if(!(0===s?At:n)(r(i[s]),r(o[s])))break}if(0===s)return o;const a=o.slice(s),c=[];for(;s<i.length;s++)c.push("..");return["",...c,...a]}function gs(e,t,n){Tn.assert(qo(e)>0==qo(t)>0,"Paths must either both be absolute or both be relative");return Go(hs(e,t,"boolean"==typeof n&&n?At:It,"function"==typeof n?n:gt))}function ys(e,t,n){return Do(e)?bs(t,e,t,n,!1):e}function vs(e,t,n){return ss(gs(Vo(e),t,n))}function bs(e,t,n,r,i){const o=hs(Xo(n,e),Xo(n,t),It,r),s=o[0];if(i&&Do(s)){const e=s.charAt(0)===ko?"file://":"file:///";o[0]=e+s}return Go(o)}function xs(e,t){for(;;){const n=t(e);if(void 0!==n)return n;const r=Vo(e);if(r===e)return;e=r}}function Ss(e){return Qt(e,"/node_modules")}function Ts(e,t,n,r,i,o,s){return{code:e,category:t,key:n,message:r,reportsUnnecessary:i,elidedInCompatabilityPyramid:o,reportsDeprecated:s}}var ws={Unterminated_string_literal:Ts(1002,1,"Unterminated_string_literal_1002","Unterminated string literal."),Identifier_expected:Ts(1003,1,"Identifier_expected_1003","Identifier expected."),_0_expected:Ts(1005,1,"_0_expected_1005","'{0}' expected."),A_file_cannot_have_a_reference_to_itself:Ts(1006,1,"A_file_cannot_have_a_reference_to_itself_1006","A file cannot have a reference to itself."),The_parser_expected_to_find_a_1_to_match_the_0_token_here:Ts(1007,1,"The_parser_expected_to_find_a_1_to_match_the_0_token_here_1007","The parser expected to find a '{1}' to match the '{0}' token here."),Trailing_comma_not_allowed:Ts(1009,1,"Trailing_comma_not_allowed_1009","Trailing comma not allowed."),Asterisk_Slash_expected:Ts(1010,1,"Asterisk_Slash_expected_1010","'*/' expected."),An_element_access_expression_should_take_an_argument:Ts(1011,1,"An_element_access_expression_should_take_an_argument_1011","An element access expression should take an argument."),Unexpected_token:Ts(1012,1,"Unexpected_token_1012","Unexpected token."),A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma:Ts(1013,1,"A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma_1013","A rest parameter or binding pattern may not have a trailing comma."),A_rest_parameter_must_be_last_in_a_parameter_list:Ts(1014,1,"A_rest_parameter_must_be_last_in_a_parameter_list_1014","A rest parameter must be last in a parameter list."),Parameter_cannot_have_question_mark_and_initializer:Ts(1015,1,"Parameter_cannot_have_question_mark_and_initializer_1015","Parameter cannot have question mark and initializer."),A_required_parameter_cannot_follow_an_optional_parameter:Ts(1016,1,"A_required_parameter_cannot_follow_an_optional_parameter_1016","A required parameter cannot follow an optional parameter."),An_index_signature_cannot_have_a_rest_parameter:Ts(1017,1,"An_index_signature_cannot_have_a_rest_parameter_1017","An index signature cannot have a rest parameter."),An_index_signature_parameter_cannot_have_an_accessibility_modifier:Ts(1018,1,"An_index_signature_parameter_cannot_have_an_accessibility_modifier_1018","An index signature parameter cannot have an accessibility modifier."),An_index_signature_parameter_cannot_have_a_question_mark:Ts(1019,1,"An_index_signature_parameter_cannot_have_a_question_mark_1019","An index signature parameter cannot have a question mark."),An_index_signature_parameter_cannot_have_an_initializer:Ts(1020,1,"An_index_signature_parameter_cannot_have_an_initializer_1020","An index signature parameter cannot have an initializer."),An_index_signature_must_have_a_type_annotation:Ts(1021,1,"An_index_signature_must_have_a_type_annotation_1021","An index signature must have a type annotation."),An_index_signature_parameter_must_have_a_type_annotation:Ts(1022,1,"An_index_signature_parameter_must_have_a_type_annotation_1022","An index signature parameter must have a type annotation."),readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature:Ts(1024,1,"readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature_1024","'readonly' modifier can only appear on a property declaration or index signature."),An_index_signature_cannot_have_a_trailing_comma:Ts(1025,1,"An_index_signature_cannot_have_a_trailing_comma_1025","An index signature cannot have a trailing comma."),Accessibility_modifier_already_seen:Ts(1028,1,"Accessibility_modifier_already_seen_1028","Accessibility modifier already seen."),_0_modifier_must_precede_1_modifier:Ts(1029,1,"_0_modifier_must_precede_1_modifier_1029","'{0}' modifier must precede '{1}' modifier."),_0_modifier_already_seen:Ts(1030,1,"_0_modifier_already_seen_1030","'{0}' modifier already seen."),_0_modifier_cannot_appear_on_class_elements_of_this_kind:Ts(1031,1,"_0_modifier_cannot_appear_on_class_elements_of_this_kind_1031","'{0}' modifier cannot appear on class elements of this kind."),super_must_be_followed_by_an_argument_list_or_member_access:Ts(1034,1,"super_must_be_followed_by_an_argument_list_or_member_access_1034","'super' must be followed by an argument list or member access."),Only_ambient_modules_can_use_quoted_names:Ts(1035,1,"Only_ambient_modules_can_use_quoted_names_1035","Only ambient modules can use quoted names."),Statements_are_not_allowed_in_ambient_contexts:Ts(1036,1,"Statements_are_not_allowed_in_ambient_contexts_1036","Statements are not allowed in ambient contexts."),A_declare_modifier_cannot_be_used_in_an_already_ambient_context:Ts(1038,1,"A_declare_modifier_cannot_be_used_in_an_already_ambient_context_1038","A 'declare' modifier cannot be used in an already ambient context."),Initializers_are_not_allowed_in_ambient_contexts:Ts(1039,1,"Initializers_are_not_allowed_in_ambient_contexts_1039","Initializers are not allowed in ambient contexts."),_0_modifier_cannot_be_used_in_an_ambient_context:Ts(1040,1,"_0_modifier_cannot_be_used_in_an_ambient_context_1040","'{0}' modifier cannot be used in an ambient context."),_0_modifier_cannot_be_used_here:Ts(1042,1,"_0_modifier_cannot_be_used_here_1042","'{0}' modifier cannot be used here."),_0_modifier_cannot_appear_on_a_module_or_namespace_element:Ts(1044,1,"_0_modifier_cannot_appear_on_a_module_or_namespace_element_1044","'{0}' modifier cannot appear on a module or namespace element."),Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier:Ts(1046,1,"Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier_1046","Top-level declarations in .d.ts files must start with either a 'declare' or 'export' modifier."),A_rest_parameter_cannot_be_optional:Ts(1047,1,"A_rest_parameter_cannot_be_optional_1047","A rest parameter cannot be optional."),A_rest_parameter_cannot_have_an_initializer:Ts(1048,1,"A_rest_parameter_cannot_have_an_initializer_1048","A rest parameter cannot have an initializer."),A_set_accessor_must_have_exactly_one_parameter:Ts(1049,1,"A_set_accessor_must_have_exactly_one_parameter_1049","A 'set' accessor must have exactly one parameter."),A_set_accessor_cannot_have_an_optional_parameter:Ts(1051,1,"A_set_accessor_cannot_have_an_optional_parameter_1051","A 'set' accessor cannot have an optional parameter."),A_set_accessor_parameter_cannot_have_an_initializer:Ts(1052,1,"A_set_accessor_parameter_cannot_have_an_initializer_1052","A 'set' accessor parameter cannot have an initializer."),A_set_accessor_cannot_have_rest_parameter:Ts(1053,1,"A_set_accessor_cannot_have_rest_parameter_1053","A 'set' accessor cannot have rest parameter."),A_get_accessor_cannot_have_parameters:Ts(1054,1,"A_get_accessor_cannot_have_parameters_1054","A 'get' accessor cannot have parameters."),Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value:Ts(1055,1,"Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compa_1055","Type '{0}' is not a valid async function return type in ES5 because it does not refer to a Promise-compatible constructor value."),Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher:Ts(1056,1,"Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher_1056","Accessors are only available when targeting ECMAScript 5 and higher."),The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:Ts(1058,1,"The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_t_1058","The return type of an async function must either be a valid promise or must not contain a callable 'then' member."),A_promise_must_have_a_then_method:Ts(1059,1,"A_promise_must_have_a_then_method_1059","A promise must have a 'then' method."),The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback:Ts(1060,1,"The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback_1060","The first parameter of the 'then' method of a promise must be a callback."),Enum_member_must_have_initializer:Ts(1061,1,"Enum_member_must_have_initializer_1061","Enum member must have initializer."),Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method:Ts(1062,1,"Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method_1062","Type is referenced directly or indirectly in the fulfillment callback of its own 'then' method."),An_export_assignment_cannot_be_used_in_a_namespace:Ts(1063,1,"An_export_assignment_cannot_be_used_in_a_namespace_1063","An export assignment cannot be used in a namespace."),The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_write_Promise_0:Ts(1064,1,"The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_wri_1064","The return type of an async function or method must be the global Promise<T> type. Did you mean to write 'Promise<{0}>'?"),The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type:Ts(1065,1,"The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_1065","The return type of an async function or method must be the global Promise<T> type."),In_ambient_enum_declarations_member_initializer_must_be_constant_expression:Ts(1066,1,"In_ambient_enum_declarations_member_initializer_must_be_constant_expression_1066","In ambient enum declarations member initializer must be constant expression."),Unexpected_token_A_constructor_method_accessor_or_property_was_expected:Ts(1068,1,"Unexpected_token_A_constructor_method_accessor_or_property_was_expected_1068","Unexpected token. A constructor, method, accessor, or property was expected."),Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces:Ts(1069,1,"Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces_1069","Unexpected token. A type parameter name was expected without curly braces."),_0_modifier_cannot_appear_on_a_type_member:Ts(1070,1,"_0_modifier_cannot_appear_on_a_type_member_1070","'{0}' modifier cannot appear on a type member."),_0_modifier_cannot_appear_on_an_index_signature:Ts(1071,1,"_0_modifier_cannot_appear_on_an_index_signature_1071","'{0}' modifier cannot appear on an index signature."),A_0_modifier_cannot_be_used_with_an_import_declaration:Ts(1079,1,"A_0_modifier_cannot_be_used_with_an_import_declaration_1079","A '{0}' modifier cannot be used with an import declaration."),Invalid_reference_directive_syntax:Ts(1084,1,"Invalid_reference_directive_syntax_1084","Invalid 'reference' directive syntax."),_0_modifier_cannot_appear_on_a_constructor_declaration:Ts(1089,1,"_0_modifier_cannot_appear_on_a_constructor_declaration_1089","'{0}' modifier cannot appear on a constructor declaration."),_0_modifier_cannot_appear_on_a_parameter:Ts(1090,1,"_0_modifier_cannot_appear_on_a_parameter_1090","'{0}' modifier cannot appear on a parameter."),Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement:Ts(1091,1,"Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement_1091","Only a single variable declaration is allowed in a 'for...in' statement."),Type_parameters_cannot_appear_on_a_constructor_declaration:Ts(1092,1,"Type_parameters_cannot_appear_on_a_constructor_declaration_1092","Type parameters cannot appear on a constructor declaration."),Type_annotation_cannot_appear_on_a_constructor_declaration:Ts(1093,1,"Type_annotation_cannot_appear_on_a_constructor_declaration_1093","Type annotation cannot appear on a constructor declaration."),An_accessor_cannot_have_type_parameters:Ts(1094,1,"An_accessor_cannot_have_type_parameters_1094","An accessor cannot have type parameters."),A_set_accessor_cannot_have_a_return_type_annotation:Ts(1095,1,"A_set_accessor_cannot_have_a_return_type_annotation_1095","A 'set' accessor cannot have a return type annotation."),An_index_signature_must_have_exactly_one_parameter:Ts(1096,1,"An_index_signature_must_have_exactly_one_parameter_1096","An index signature must have exactly one parameter."),_0_list_cannot_be_empty:Ts(1097,1,"_0_list_cannot_be_empty_1097","'{0}' list cannot be empty."),Type_parameter_list_cannot_be_empty:Ts(1098,1,"Type_parameter_list_cannot_be_empty_1098","Type parameter list cannot be empty."),Type_argument_list_cannot_be_empty:Ts(1099,1,"Type_argument_list_cannot_be_empty_1099","Type argument list cannot be empty."),Invalid_use_of_0_in_strict_mode:Ts(1100,1,"Invalid_use_of_0_in_strict_mode_1100","Invalid use of '{0}' in strict mode."),with_statements_are_not_allowed_in_strict_mode:Ts(1101,1,"with_statements_are_not_allowed_in_strict_mode_1101","'with' statements are not allowed in strict mode."),delete_cannot_be_called_on_an_identifier_in_strict_mode:Ts(1102,1,"delete_cannot_be_called_on_an_identifier_in_strict_mode_1102","'delete' cannot be called on an identifier in strict mode."),for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:Ts(1103,1,"for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_1103","'for await' loops are only allowed within async functions and at the top levels of modules."),A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement:Ts(1104,1,"A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement_1104","A 'continue' statement can only be used within an enclosing iteration statement."),A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement:Ts(1105,1,"A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement_1105","A 'break' statement can only be used within an enclosing iteration or switch statement."),The_left_hand_side_of_a_for_of_statement_may_not_be_async:Ts(1106,1,"The_left_hand_side_of_a_for_of_statement_may_not_be_async_1106","The left-hand side of a 'for...of' statement may not be 'async'."),Jump_target_cannot_cross_function_boundary:Ts(1107,1,"Jump_target_cannot_cross_function_boundary_1107","Jump target cannot cross function boundary."),A_return_statement_can_only_be_used_within_a_function_body:Ts(1108,1,"A_return_statement_can_only_be_used_within_a_function_body_1108","A 'return' statement can only be used within a function body."),Expression_expected:Ts(1109,1,"Expression_expected_1109","Expression expected."),Type_expected:Ts(1110,1,"Type_expected_1110","Type expected."),Private_field_0_must_be_declared_in_an_enclosing_class:Ts(1111,1,"Private_field_0_must_be_declared_in_an_enclosing_class_1111","Private field '{0}' must be declared in an enclosing class."),A_default_clause_cannot_appear_more_than_once_in_a_switch_statement:Ts(1113,1,"A_default_clause_cannot_appear_more_than_once_in_a_switch_statement_1113","A 'default' clause cannot appear more than once in a 'switch' statement."),Duplicate_label_0:Ts(1114,1,"Duplicate_label_0_1114","Duplicate label '{0}'."),A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement:Ts(1115,1,"A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement_1115","A 'continue' statement can only jump to a label of an enclosing iteration statement."),A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement:Ts(1116,1,"A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement_1116","A 'break' statement can only jump to a label of an enclosing statement."),An_object_literal_cannot_have_multiple_properties_with_the_same_name:Ts(1117,1,"An_object_literal_cannot_have_multiple_properties_with_the_same_name_1117","An object literal cannot have multiple properties with the same name."),An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name:Ts(1118,1,"An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name_1118","An object literal cannot have multiple get/set accessors with the same name."),An_object_literal_cannot_have_property_and_accessor_with_the_same_name:Ts(1119,1,"An_object_literal_cannot_have_property_and_accessor_with_the_same_name_1119","An object literal cannot have property and accessor with the same name."),An_export_assignment_cannot_have_modifiers:Ts(1120,1,"An_export_assignment_cannot_have_modifiers_1120","An export assignment cannot have modifiers."),Octal_literals_are_not_allowed_Use_the_syntax_0:Ts(1121,1,"Octal_literals_are_not_allowed_Use_the_syntax_0_1121","Octal literals are not allowed. Use the syntax '{0}'."),Variable_declaration_list_cannot_be_empty:Ts(1123,1,"Variable_declaration_list_cannot_be_empty_1123","Variable declaration list cannot be empty."),Digit_expected:Ts(1124,1,"Digit_expected_1124","Digit expected."),Hexadecimal_digit_expected:Ts(1125,1,"Hexadecimal_digit_expected_1125","Hexadecimal digit expected."),Unexpected_end_of_text:Ts(1126,1,"Unexpected_end_of_text_1126","Unexpected end of text."),Invalid_character:Ts(1127,1,"Invalid_character_1127","Invalid character."),Declaration_or_statement_expected:Ts(1128,1,"Declaration_or_statement_expected_1128","Declaration or statement expected."),Statement_expected:Ts(1129,1,"Statement_expected_1129","Statement expected."),case_or_default_expected:Ts(1130,1,"case_or_default_expected_1130","'case' or 'default' expected."),Property_or_signature_expected:Ts(1131,1,"Property_or_signature_expected_1131","Property or signature expected."),Enum_member_expected:Ts(1132,1,"Enum_member_expected_1132","Enum member expected."),Variable_declaration_expected:Ts(1134,1,"Variable_declaration_expected_1134","Variable declaration expected."),Argument_expression_expected:Ts(1135,1,"Argument_expression_expected_1135","Argument expression expected."),Property_assignment_expected:Ts(1136,1,"Property_assignment_expected_1136","Property assignment expected."),Expression_or_comma_expected:Ts(1137,1,"Expression_or_comma_expected_1137","Expression or comma expected."),Parameter_declaration_expected:Ts(1138,1,"Parameter_declaration_expected_1138","Parameter declaration expected."),Type_parameter_declaration_expected:Ts(1139,1,"Type_parameter_declaration_expected_1139","Type parameter declaration expected."),Type_argument_expected:Ts(1140,1,"Type_argument_expected_1140","Type argument expected."),String_literal_expected:Ts(1141,1,"String_literal_expected_1141","String literal expected."),Line_break_not_permitted_here:Ts(1142,1,"Line_break_not_permitted_here_1142","Line break not permitted here."),or_expected:Ts(1144,1,"or_expected_1144","'{' or ';' expected."),or_JSX_element_expected:Ts(1145,1,"or_JSX_element_expected_1145","'{' or JSX element expected."),Declaration_expected:Ts(1146,1,"Declaration_expected_1146","Declaration expected."),Import_declarations_in_a_namespace_cannot_reference_a_module:Ts(1147,1,"Import_declarations_in_a_namespace_cannot_reference_a_module_1147","Import declarations in a namespace cannot reference a module."),Cannot_use_imports_exports_or_module_augmentations_when_module_is_none:Ts(1148,1,"Cannot_use_imports_exports_or_module_augmentations_when_module_is_none_1148","Cannot use imports, exports, or module augmentations when '--module' is 'none'."),File_name_0_differs_from_already_included_file_name_1_only_in_casing:Ts(1149,1,"File_name_0_differs_from_already_included_file_name_1_only_in_casing_1149","File name '{0}' differs from already included file name '{1}' only in casing."),_0_declarations_must_be_initialized:Ts(1155,1,"_0_declarations_must_be_initialized_1155","'{0}' declarations must be initialized."),_0_declarations_can_only_be_declared_inside_a_block:Ts(1156,1,"_0_declarations_can_only_be_declared_inside_a_block_1156","'{0}' declarations can only be declared inside a block."),Unterminated_template_literal:Ts(1160,1,"Unterminated_template_literal_1160","Unterminated template literal."),Unterminated_regular_expression_literal:Ts(1161,1,"Unterminated_regular_expression_literal_1161","Unterminated regular expression literal."),An_object_member_cannot_be_declared_optional:Ts(1162,1,"An_object_member_cannot_be_declared_optional_1162","An object member cannot be declared optional."),A_yield_expression_is_only_allowed_in_a_generator_body:Ts(1163,1,"A_yield_expression_is_only_allowed_in_a_generator_body_1163","A 'yield' expression is only allowed in a generator body."),Computed_property_names_are_not_allowed_in_enums:Ts(1164,1,"Computed_property_names_are_not_allowed_in_enums_1164","Computed property names are not allowed in enums."),A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:Ts(1165,1,"A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_t_1165","A computed property name in an ambient context must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_a_class_property_declaration_must_have_a_simple_literal_type_or_a_unique_symbol_type:Ts(1166,1,"A_computed_property_name_in_a_class_property_declaration_must_have_a_simple_literal_type_or_a_unique_1166","A computed property name in a class property declaration must have a simple literal type or a 'unique symbol' type."),A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:Ts(1168,1,"A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_ty_1168","A computed property name in a method overload must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:Ts(1169,1,"A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_1169","A computed property name in an interface must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:Ts(1170,1,"A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type__1170","A computed property name in a type literal must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_comma_expression_is_not_allowed_in_a_computed_property_name:Ts(1171,1,"A_comma_expression_is_not_allowed_in_a_computed_property_name_1171","A comma expression is not allowed in a computed property name."),extends_clause_already_seen:Ts(1172,1,"extends_clause_already_seen_1172","'extends' clause already seen."),extends_clause_must_precede_implements_clause:Ts(1173,1,"extends_clause_must_precede_implements_clause_1173","'extends' clause must precede 'implements' clause."),Classes_can_only_extend_a_single_class:Ts(1174,1,"Classes_can_only_extend_a_single_class_1174","Classes can only extend a single class."),implements_clause_already_seen:Ts(1175,1,"implements_clause_already_seen_1175","'implements' clause already seen."),Interface_declaration_cannot_have_implements_clause:Ts(1176,1,"Interface_declaration_cannot_have_implements_clause_1176","Interface declaration cannot have 'implements' clause."),Binary_digit_expected:Ts(1177,1,"Binary_digit_expected_1177","Binary digit expected."),Octal_digit_expected:Ts(1178,1,"Octal_digit_expected_1178","Octal digit expected."),Unexpected_token_expected:Ts(1179,1,"Unexpected_token_expected_1179","Unexpected token. '{' expected."),Property_destructuring_pattern_expected:Ts(1180,1,"Property_destructuring_pattern_expected_1180","Property destructuring pattern expected."),Array_element_destructuring_pattern_expected:Ts(1181,1,"Array_element_destructuring_pattern_expected_1181","Array element destructuring pattern expected."),A_destructuring_declaration_must_have_an_initializer:Ts(1182,1,"A_destructuring_declaration_must_have_an_initializer_1182","A destructuring declaration must have an initializer."),An_implementation_cannot_be_declared_in_ambient_contexts:Ts(1183,1,"An_implementation_cannot_be_declared_in_ambient_contexts_1183","An implementation cannot be declared in ambient contexts."),Modifiers_cannot_appear_here:Ts(1184,1,"Modifiers_cannot_appear_here_1184","Modifiers cannot appear here."),Merge_conflict_marker_encountered:Ts(1185,1,"Merge_conflict_marker_encountered_1185","Merge conflict marker encountered."),A_rest_element_cannot_have_an_initializer:Ts(1186,1,"A_rest_element_cannot_have_an_initializer_1186","A rest element cannot have an initializer."),A_parameter_property_may_not_be_declared_using_a_binding_pattern:Ts(1187,1,"A_parameter_property_may_not_be_declared_using_a_binding_pattern_1187","A parameter property may not be declared using a binding pattern."),Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement:Ts(1188,1,"Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement_1188","Only a single variable declaration is allowed in a 'for...of' statement."),The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer:Ts(1189,1,"The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer_1189","The variable declaration of a 'for...in' statement cannot have an initializer."),The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer:Ts(1190,1,"The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer_1190","The variable declaration of a 'for...of' statement cannot have an initializer."),An_import_declaration_cannot_have_modifiers:Ts(1191,1,"An_import_declaration_cannot_have_modifiers_1191","An import declaration cannot have modifiers."),Module_0_has_no_default_export:Ts(1192,1,"Module_0_has_no_default_export_1192","Module '{0}' has no default export."),An_export_declaration_cannot_have_modifiers:Ts(1193,1,"An_export_declaration_cannot_have_modifiers_1193","An export declaration cannot have modifiers."),Export_declarations_are_not_permitted_in_a_namespace:Ts(1194,1,"Export_declarations_are_not_permitted_in_a_namespace_1194","Export declarations are not permitted in a namespace."),export_Asterisk_does_not_re_export_a_default:Ts(1195,1,"export_Asterisk_does_not_re_export_a_default_1195","'export *' does not re-export a default."),Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified:Ts(1196,1,"Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified_1196","Catch clause variable type annotation must be 'any' or 'unknown' if specified."),Catch_clause_variable_cannot_have_an_initializer:Ts(1197,1,"Catch_clause_variable_cannot_have_an_initializer_1197","Catch clause variable cannot have an initializer."),An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive:Ts(1198,1,"An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive_1198","An extended Unicode escape value must be between 0x0 and 0x10FFFF inclusive."),Unterminated_Unicode_escape_sequence:Ts(1199,1,"Unterminated_Unicode_escape_sequence_1199","Unterminated Unicode escape sequence."),Line_terminator_not_permitted_before_arrow:Ts(1200,1,"Line_terminator_not_permitted_before_arrow_1200","Line terminator not permitted before arrow."),Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_ns_from_mod_import_a_from_mod_import_d_from_mod_or_another_module_format_instead:Ts(1202,1,"Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_1202","Import assignment cannot be used when targeting ECMAScript modules. Consider using 'import * as ns from \"mod\"', 'import {a} from \"mod\"', 'import d from \"mod\"', or another module format instead."),Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or_another_module_format_instead:Ts(1203,1,"Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or__1203","Export assignment cannot be used when targeting ECMAScript modules. Consider using 'export default' or another module format instead."),Re_exporting_a_type_when_0_is_enabled_requires_using_export_type:Ts(1205,1,"Re_exporting_a_type_when_0_is_enabled_requires_using_export_type_1205","Re-exporting a type when '{0}' is enabled requires using 'export type'."),Decorators_are_not_valid_here:Ts(1206,1,"Decorators_are_not_valid_here_1206","Decorators are not valid here."),Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name:Ts(1207,1,"Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name_1207","Decorators cannot be applied to multiple get/set accessors of the same name."),Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0:Ts(1209,1,"Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0_1209","Invalid optional chain from new expression. Did you mean to call '{0}()'?"),Code_contained_in_a_class_is_evaluated_in_JavaScript_s_strict_mode_which_does_not_allow_this_use_of_0_For_more_information_see_https_Colon_Slash_Slashdeveloper_mozilla_org_Slashen_US_Slashdocs_SlashWeb_SlashJavaScript_SlashReference_SlashStrict_mode:Ts(1210,1,"Code_contained_in_a_class_is_evaluated_in_JavaScript_s_strict_mode_which_does_not_allow_this_use_of__1210","Code contained in a class is evaluated in JavaScript's strict mode which does not allow this use of '{0}'. For more information, see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Strict_mode."),A_class_declaration_without_the_default_modifier_must_have_a_name:Ts(1211,1,"A_class_declaration_without_the_default_modifier_must_have_a_name_1211","A class declaration without the 'default' modifier must have a name."),Identifier_expected_0_is_a_reserved_word_in_strict_mode:Ts(1212,1,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_1212","Identifier expected. '{0}' is a reserved word in strict mode."),Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_strict_mode:Ts(1213,1,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_stric_1213","Identifier expected. '{0}' is a reserved word in strict mode. Class definitions are automatically in strict mode."),Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode:Ts(1214,1,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode_1214","Identifier expected. '{0}' is a reserved word in strict mode. Modules are automatically in strict mode."),Invalid_use_of_0_Modules_are_automatically_in_strict_mode:Ts(1215,1,"Invalid_use_of_0_Modules_are_automatically_in_strict_mode_1215","Invalid use of '{0}'. Modules are automatically in strict mode."),Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules:Ts(1216,1,"Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules_1216","Identifier expected. '__esModule' is reserved as an exported marker when transforming ECMAScript modules."),Export_assignment_is_not_supported_when_module_flag_is_system:Ts(1218,1,"Export_assignment_is_not_supported_when_module_flag_is_system_1218","Export assignment is not supported when '--module' flag is 'system'."),Generators_are_not_allowed_in_an_ambient_context:Ts(1221,1,"Generators_are_not_allowed_in_an_ambient_context_1221","Generators are not allowed in an ambient context."),An_overload_signature_cannot_be_declared_as_a_generator:Ts(1222,1,"An_overload_signature_cannot_be_declared_as_a_generator_1222","An overload signature cannot be declared as a generator."),_0_tag_already_specified:Ts(1223,1,"_0_tag_already_specified_1223","'{0}' tag already specified."),Signature_0_must_be_a_type_predicate:Ts(1224,1,"Signature_0_must_be_a_type_predicate_1224","Signature '{0}' must be a type predicate."),Cannot_find_parameter_0:Ts(1225,1,"Cannot_find_parameter_0_1225","Cannot find parameter '{0}'."),Type_predicate_0_is_not_assignable_to_1:Ts(1226,1,"Type_predicate_0_is_not_assignable_to_1_1226","Type predicate '{0}' is not assignable to '{1}'."),Parameter_0_is_not_in_the_same_position_as_parameter_1:Ts(1227,1,"Parameter_0_is_not_in_the_same_position_as_parameter_1_1227","Parameter '{0}' is not in the same position as parameter '{1}'."),A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods:Ts(1228,1,"A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods_1228","A type predicate is only allowed in return type position for functions and methods."),A_type_predicate_cannot_reference_a_rest_parameter:Ts(1229,1,"A_type_predicate_cannot_reference_a_rest_parameter_1229","A type predicate cannot reference a rest parameter."),A_type_predicate_cannot_reference_element_0_in_a_binding_pattern:Ts(1230,1,"A_type_predicate_cannot_reference_element_0_in_a_binding_pattern_1230","A type predicate cannot reference element '{0}' in a binding pattern."),An_export_assignment_must_be_at_the_top_level_of_a_file_or_module_declaration:Ts(1231,1,"An_export_assignment_must_be_at_the_top_level_of_a_file_or_module_declaration_1231","An export assignment must be at the top level of a file or module declaration."),An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module:Ts(1232,1,"An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module_1232","An import declaration can only be used at the top level of a namespace or module."),An_export_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module:Ts(1233,1,"An_export_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module_1233","An export declaration can only be used at the top level of a namespace or module."),An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file:Ts(1234,1,"An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file_1234","An ambient module declaration is only allowed at the top level in a file."),A_namespace_declaration_is_only_allowed_at_the_top_level_of_a_namespace_or_module:Ts(1235,1,"A_namespace_declaration_is_only_allowed_at_the_top_level_of_a_namespace_or_module_1235","A namespace declaration is only allowed at the top level of a namespace or module."),The_return_type_of_a_property_decorator_function_must_be_either_void_or_any:Ts(1236,1,"The_return_type_of_a_property_decorator_function_must_be_either_void_or_any_1236","The return type of a property decorator function must be either 'void' or 'any'."),The_return_type_of_a_parameter_decorator_function_must_be_either_void_or_any:Ts(1237,1,"The_return_type_of_a_parameter_decorator_function_must_be_either_void_or_any_1237","The return type of a parameter decorator function must be either 'void' or 'any'."),Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression:Ts(1238,1,"Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression_1238","Unable to resolve signature of class decorator when called as an expression."),Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression:Ts(1239,1,"Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression_1239","Unable to resolve signature of parameter decorator when called as an expression."),Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression:Ts(1240,1,"Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression_1240","Unable to resolve signature of property decorator when called as an expression."),Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression:Ts(1241,1,"Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression_1241","Unable to resolve signature of method decorator when called as an expression."),abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration:Ts(1242,1,"abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration_1242","'abstract' modifier can only appear on a class, method, or property declaration."),_0_modifier_cannot_be_used_with_1_modifier:Ts(1243,1,"_0_modifier_cannot_be_used_with_1_modifier_1243","'{0}' modifier cannot be used with '{1}' modifier."),Abstract_methods_can_only_appear_within_an_abstract_class:Ts(1244,1,"Abstract_methods_can_only_appear_within_an_abstract_class_1244","Abstract methods can only appear within an abstract class."),Method_0_cannot_have_an_implementation_because_it_is_marked_abstract:Ts(1245,1,"Method_0_cannot_have_an_implementation_because_it_is_marked_abstract_1245","Method '{0}' cannot have an implementation because it is marked abstract."),An_interface_property_cannot_have_an_initializer:Ts(1246,1,"An_interface_property_cannot_have_an_initializer_1246","An interface property cannot have an initializer."),A_type_literal_property_cannot_have_an_initializer:Ts(1247,1,"A_type_literal_property_cannot_have_an_initializer_1247","A type literal property cannot have an initializer."),A_class_member_cannot_have_the_0_keyword:Ts(1248,1,"A_class_member_cannot_have_the_0_keyword_1248","A class member cannot have the '{0}' keyword."),A_decorator_can_only_decorate_a_method_implementation_not_an_overload:Ts(1249,1,"A_decorator_can_only_decorate_a_method_implementation_not_an_overload_1249","A decorator can only decorate a method implementation, not an overload."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5:Ts(1250,1,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_1250","Function declarations are not allowed inside blocks in strict mode when targeting 'ES5'."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Class_definitions_are_automatically_in_strict_mode:Ts(1251,1,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Class_definiti_1251","Function declarations are not allowed inside blocks in strict mode when targeting 'ES5'. Class definitions are automatically in strict mode."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Modules_are_automatically_in_strict_mode:Ts(1252,1,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Modules_are_au_1252","Function declarations are not allowed inside blocks in strict mode when targeting 'ES5'. Modules are automatically in strict mode."),Abstract_properties_can_only_appear_within_an_abstract_class:Ts(1253,1,"Abstract_properties_can_only_appear_within_an_abstract_class_1253","Abstract properties can only appear within an abstract class."),A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_reference:Ts(1254,1,"A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_refere_1254","A 'const' initializer in an ambient context must be a string or numeric literal or literal enum reference."),A_definite_assignment_assertion_is_not_permitted_in_this_context:Ts(1255,1,"A_definite_assignment_assertion_is_not_permitted_in_this_context_1255","A definite assignment assertion '!' is not permitted in this context."),A_required_element_cannot_follow_an_optional_element:Ts(1257,1,"A_required_element_cannot_follow_an_optional_element_1257","A required element cannot follow an optional element."),A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration:Ts(1258,1,"A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration_1258","A default export must be at the top level of a file or module declaration."),Module_0_can_only_be_default_imported_using_the_1_flag:Ts(1259,1,"Module_0_can_only_be_default_imported_using_the_1_flag_1259","Module '{0}' can only be default-imported using the '{1}' flag"),Keywords_cannot_contain_escape_characters:Ts(1260,1,"Keywords_cannot_contain_escape_characters_1260","Keywords cannot contain escape characters."),Already_included_file_name_0_differs_from_file_name_1_only_in_casing:Ts(1261,1,"Already_included_file_name_0_differs_from_file_name_1_only_in_casing_1261","Already included file name '{0}' differs from file name '{1}' only in casing."),Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module:Ts(1262,1,"Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module_1262","Identifier expected. '{0}' is a reserved word at the top-level of a module."),Declarations_with_initializers_cannot_also_have_definite_assignment_assertions:Ts(1263,1,"Declarations_with_initializers_cannot_also_have_definite_assignment_assertions_1263","Declarations with initializers cannot also have definite assignment assertions."),Declarations_with_definite_assignment_assertions_must_also_have_type_annotations:Ts(1264,1,"Declarations_with_definite_assignment_assertions_must_also_have_type_annotations_1264","Declarations with definite assignment assertions must also have type annotations."),A_rest_element_cannot_follow_another_rest_element:Ts(1265,1,"A_rest_element_cannot_follow_another_rest_element_1265","A rest element cannot follow another rest element."),An_optional_element_cannot_follow_a_rest_element:Ts(1266,1,"An_optional_element_cannot_follow_a_rest_element_1266","An optional element cannot follow a rest element."),Property_0_cannot_have_an_initializer_because_it_is_marked_abstract:Ts(1267,1,"Property_0_cannot_have_an_initializer_because_it_is_marked_abstract_1267","Property '{0}' cannot have an initializer because it is marked abstract."),An_index_signature_parameter_type_must_be_string_number_symbol_or_a_template_literal_type:Ts(1268,1,"An_index_signature_parameter_type_must_be_string_number_symbol_or_a_template_literal_type_1268","An index signature parameter type must be 'string', 'number', 'symbol', or a template literal type."),Cannot_use_export_import_on_a_type_or_type_only_namespace_when_0_is_enabled:Ts(1269,1,"Cannot_use_export_import_on_a_type_or_type_only_namespace_when_0_is_enabled_1269","Cannot use 'export import' on a type or type-only namespace when '{0}' is enabled."),Decorator_function_return_type_0_is_not_assignable_to_type_1:Ts(1270,1,"Decorator_function_return_type_0_is_not_assignable_to_type_1_1270","Decorator function return type '{0}' is not assignable to type '{1}'."),Decorator_function_return_type_is_0_but_is_expected_to_be_void_or_any:Ts(1271,1,"Decorator_function_return_type_is_0_but_is_expected_to_be_void_or_any_1271","Decorator function return type is '{0}' but is expected to be 'void' or 'any'."),A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_when_isolatedModules_and_emitDecoratorMetadata_are_enabled:Ts(1272,1,"A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_w_1272","A type referenced in a decorated signature must be imported with 'import type' or a namespace import when 'isolatedModules' and 'emitDecoratorMetadata' are enabled."),_0_modifier_cannot_appear_on_a_type_parameter:Ts(1273,1,"_0_modifier_cannot_appear_on_a_type_parameter_1273","'{0}' modifier cannot appear on a type parameter"),_0_modifier_can_only_appear_on_a_type_parameter_of_a_class_interface_or_type_alias:Ts(1274,1,"_0_modifier_can_only_appear_on_a_type_parameter_of_a_class_interface_or_type_alias_1274","'{0}' modifier can only appear on a type parameter of a class, interface or type alias"),accessor_modifier_can_only_appear_on_a_property_declaration:Ts(1275,1,"accessor_modifier_can_only_appear_on_a_property_declaration_1275","'accessor' modifier can only appear on a property declaration."),An_accessor_property_cannot_be_declared_optional:Ts(1276,1,"An_accessor_property_cannot_be_declared_optional_1276","An 'accessor' property cannot be declared optional."),_0_modifier_can_only_appear_on_a_type_parameter_of_a_function_method_or_class:Ts(1277,1,"_0_modifier_can_only_appear_on_a_type_parameter_of_a_function_method_or_class_1277","'{0}' modifier can only appear on a type parameter of a function, method or class"),The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_0:Ts(1278,1,"The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_0_1278","The runtime will invoke the decorator with {1} arguments, but the decorator expects {0}."),The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_at_least_0:Ts(1279,1,"The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_at_least_0_1279","The runtime will invoke the decorator with {1} arguments, but the decorator expects at least {0}."),Namespaces_are_not_allowed_in_global_script_files_when_0_is_enabled_If_this_file_is_not_intended_to_be_a_global_script_set_moduleDetection_to_force_or_add_an_empty_export_statement:Ts(1280,1,"Namespaces_are_not_allowed_in_global_script_files_when_0_is_enabled_If_this_file_is_not_intended_to__1280","Namespaces are not allowed in global script files when '{0}' is enabled. If this file is not intended to be a global script, set 'moduleDetection' to 'force' or add an empty 'export {}' statement."),Cannot_access_0_from_another_file_without_qualification_when_1_is_enabled_Use_2_instead:Ts(1281,1,"Cannot_access_0_from_another_file_without_qualification_when_1_is_enabled_Use_2_instead_1281","Cannot access '{0}' from another file without qualification when '{1}' is enabled. Use '{2}' instead."),An_export_declaration_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_type:Ts(1282,1,"An_export_declaration_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers__1282","An 'export =' declaration must reference a value when 'verbatimModuleSyntax' is enabled, but '{0}' only refers to a type."),An_export_declaration_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_a_type_only_declaration:Ts(1283,1,"An_export_declaration_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolve_1283","An 'export =' declaration must reference a real value when 'verbatimModuleSyntax' is enabled, but '{0}' resolves to a type-only declaration."),An_export_default_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_type:Ts(1284,1,"An_export_default_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_1284","An 'export default' must reference a value when 'verbatimModuleSyntax' is enabled, but '{0}' only refers to a type."),An_export_default_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_a_type_only_declaration:Ts(1285,1,"An_export_default_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_1285","An 'export default' must reference a real value when 'verbatimModuleSyntax' is enabled, but '{0}' resolves to a type-only declaration."),ESM_syntax_is_not_allowed_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled:Ts(1286,1,"ESM_syntax_is_not_allowed_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled_1286","ESM syntax is not allowed in a CommonJS module when 'verbatimModuleSyntax' is enabled."),A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled:Ts(1287,1,"A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimM_1287","A top-level 'export' modifier cannot be used on value declarations in a CommonJS module when 'verbatimModuleSyntax' is enabled."),An_import_alias_cannot_resolve_to_a_type_or_type_only_declaration_when_verbatimModuleSyntax_is_enabled:Ts(1288,1,"An_import_alias_cannot_resolve_to_a_type_or_type_only_declaration_when_verbatimModuleSyntax_is_enabl_1288","An import alias cannot resolve to a type or type-only declaration when 'verbatimModuleSyntax' is enabled."),_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_import_type_where_0_is_imported:Ts(1289,1,"_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_1289","'{0}' resolves to a type-only declaration and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'import type' where '{0}' is imported."),_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_export_type_0_as_default:Ts(1290,1,"_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_1290","'{0}' resolves to a type-only declaration and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'export type { {0} as default }'."),_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_import_type_where_0_is_imported:Ts(1291,1,"_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enable_1291","'{0}' resolves to a type and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'import type' where '{0}' is imported."),_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_export_type_0_as_default:Ts(1292,1,"_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enable_1292","'{0}' resolves to a type and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'export type { {0} as default }'."),with_statements_are_not_allowed_in_an_async_function_block:Ts(1300,1,"with_statements_are_not_allowed_in_an_async_function_block_1300","'with' statements are not allowed in an async function block."),await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:Ts(1308,1,"await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_1308","'await' expressions are only allowed within async functions and at the top levels of modules."),The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level:Ts(1309,1,"The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level_1309","The current file is a CommonJS module and cannot use 'await' at the top level."),Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_part_of_a_destructuring_pattern:Ts(1312,1,"Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_1312","Did you mean to use a ':'? An '=' can only follow a property name when the containing object literal is part of a destructuring pattern."),The_body_of_an_if_statement_cannot_be_the_empty_statement:Ts(1313,1,"The_body_of_an_if_statement_cannot_be_the_empty_statement_1313","The body of an 'if' statement cannot be the empty statement."),Global_module_exports_may_only_appear_in_module_files:Ts(1314,1,"Global_module_exports_may_only_appear_in_module_files_1314","Global module exports may only appear in module files."),Global_module_exports_may_only_appear_in_declaration_files:Ts(1315,1,"Global_module_exports_may_only_appear_in_declaration_files_1315","Global module exports may only appear in declaration files."),Global_module_exports_may_only_appear_at_top_level:Ts(1316,1,"Global_module_exports_may_only_appear_at_top_level_1316","Global module exports may only appear at top level."),A_parameter_property_cannot_be_declared_using_a_rest_parameter:Ts(1317,1,"A_parameter_property_cannot_be_declared_using_a_rest_parameter_1317","A parameter property cannot be declared using a rest parameter."),An_abstract_accessor_cannot_have_an_implementation:Ts(1318,1,"An_abstract_accessor_cannot_have_an_implementation_1318","An abstract accessor cannot have an implementation."),A_default_export_can_only_be_used_in_an_ECMAScript_style_module:Ts(1319,1,"A_default_export_can_only_be_used_in_an_ECMAScript_style_module_1319","A default export can only be used in an ECMAScript-style module."),Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:Ts(1320,1,"Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member_1320","Type of 'await' operand must either be a valid promise or must not contain a callable 'then' member."),Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:Ts(1321,1,"Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_cal_1321","Type of 'yield' operand in an async generator must either be a valid promise or must not contain a callable 'then' member."),Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:Ts(1322,1,"Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_con_1322","Type of iterated elements of a 'yield*' operand must either be a valid promise or must not contain a callable 'then' member."),Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_es2022_esnext_commonjs_amd_system_umd_node16_or_nodenext:Ts(1323,1,"Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_es2022_esnext_commonjs_amd__1323","Dynamic imports are only supported when the '--module' flag is set to 'es2020', 'es2022', 'esnext', 'commonjs', 'amd', 'system', 'umd', 'node16', or 'nodenext'."),Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_or_nodenext:Ts(1324,1,"Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_or_nod_1324","Dynamic imports only support a second argument when the '--module' option is set to 'esnext', 'node16', or 'nodenext'."),Argument_of_dynamic_import_cannot_be_spread_element:Ts(1325,1,"Argument_of_dynamic_import_cannot_be_spread_element_1325","Argument of dynamic import cannot be spread element."),This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot_have_type_arguments:Ts(1326,1,"This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot__1326","This use of 'import' is invalid. 'import()' calls can be written, but they must have parentheses and cannot have type arguments."),String_literal_with_double_quotes_expected:Ts(1327,1,"String_literal_with_double_quotes_expected_1327","String literal with double quotes expected."),Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_literal:Ts(1328,1,"Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_li_1328","Property value can only be string literal, numeric literal, 'true', 'false', 'null', object literal or array literal."),_0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0:Ts(1329,1,"_0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write__1329","'{0}' accepts too few arguments to be used as a decorator here. Did you mean to call it first and write '@{0}()'?"),A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly:Ts(1330,1,"A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly_1330","A property of an interface or type literal whose type is a 'unique symbol' type must be 'readonly'."),A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly:Ts(1331,1,"A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly_1331","A property of a class whose type is a 'unique symbol' type must be both 'static' and 'readonly'."),A_variable_whose_type_is_a_unique_symbol_type_must_be_const:Ts(1332,1,"A_variable_whose_type_is_a_unique_symbol_type_must_be_const_1332","A variable whose type is a 'unique symbol' type must be 'const'."),unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name:Ts(1333,1,"unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name_1333","'unique symbol' types may not be used on a variable declaration with a binding name."),unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement:Ts(1334,1,"unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement_1334","'unique symbol' types are only allowed on variables in a variable statement."),unique_symbol_types_are_not_allowed_here:Ts(1335,1,"unique_symbol_types_are_not_allowed_here_1335","'unique symbol' types are not allowed here."),An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_object_type_instead:Ts(1337,1,"An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_o_1337","An index signature parameter type cannot be a literal type or generic type. Consider using a mapped object type instead."),infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type:Ts(1338,1,"infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type_1338","'infer' declarations are only permitted in the 'extends' clause of a conditional type."),Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here:Ts(1339,1,"Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here_1339","Module '{0}' does not refer to a value, but is used as a value here."),Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0:Ts(1340,1,"Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0_1340","Module '{0}' does not refer to a type, but is used as a type here. Did you mean 'typeof import('{0}')'?"),Class_constructor_may_not_be_an_accessor:Ts(1341,1,"Class_constructor_may_not_be_an_accessor_1341","Class constructor may not be an accessor."),The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_es2022_esnext_system_node16_or_nodenext:Ts(1343,1,"The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_es2022_esnext_system__1343","The 'import.meta' meta-property is only allowed when the '--module' option is 'es2020', 'es2022', 'esnext', 'system', 'node16', or 'nodenext'."),A_label_is_not_allowed_here:Ts(1344,1,"A_label_is_not_allowed_here_1344","'A label is not allowed here."),An_expression_of_type_void_cannot_be_tested_for_truthiness:Ts(1345,1,"An_expression_of_type_void_cannot_be_tested_for_truthiness_1345","An expression of type 'void' cannot be tested for truthiness."),This_parameter_is_not_allowed_with_use_strict_directive:Ts(1346,1,"This_parameter_is_not_allowed_with_use_strict_directive_1346","This parameter is not allowed with 'use strict' directive."),use_strict_directive_cannot_be_used_with_non_simple_parameter_list:Ts(1347,1,"use_strict_directive_cannot_be_used_with_non_simple_parameter_list_1347","'use strict' directive cannot be used with non-simple parameter list."),Non_simple_parameter_declared_here:Ts(1348,1,"Non_simple_parameter_declared_here_1348","Non-simple parameter declared here."),use_strict_directive_used_here:Ts(1349,1,"use_strict_directive_used_here_1349","'use strict' directive used here."),Print_the_final_configuration_instead_of_building:Ts(1350,3,"Print_the_final_configuration_instead_of_building_1350","Print the final configuration instead of building."),An_identifier_or_keyword_cannot_immediately_follow_a_numeric_literal:Ts(1351,1,"An_identifier_or_keyword_cannot_immediately_follow_a_numeric_literal_1351","An identifier or keyword cannot immediately follow a numeric literal."),A_bigint_literal_cannot_use_exponential_notation:Ts(1352,1,"A_bigint_literal_cannot_use_exponential_notation_1352","A bigint literal cannot use exponential notation."),A_bigint_literal_must_be_an_integer:Ts(1353,1,"A_bigint_literal_must_be_an_integer_1353","A bigint literal must be an integer."),readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types:Ts(1354,1,"readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types_1354","'readonly' type modifier is only permitted on array and tuple literal types."),A_const_assertions_can_only_be_applied_to_references_to_enum_members_or_string_number_boolean_array_or_object_literals:Ts(1355,1,"A_const_assertions_can_only_be_applied_to_references_to_enum_members_or_string_number_boolean_array__1355","A 'const' assertions can only be applied to references to enum members, or string, number, boolean, array, or object literals."),Did_you_mean_to_mark_this_function_as_async:Ts(1356,1,"Did_you_mean_to_mark_this_function_as_async_1356","Did you mean to mark this function as 'async'?"),An_enum_member_name_must_be_followed_by_a_or:Ts(1357,1,"An_enum_member_name_must_be_followed_by_a_or_1357","An enum member name must be followed by a ',', '=', or '}'."),Tagged_template_expressions_are_not_permitted_in_an_optional_chain:Ts(1358,1,"Tagged_template_expressions_are_not_permitted_in_an_optional_chain_1358","Tagged template expressions are not permitted in an optional chain."),Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here:Ts(1359,1,"Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here_1359","Identifier expected. '{0}' is a reserved word that cannot be used here."),Type_0_does_not_satisfy_the_expected_type_1:Ts(1360,1,"Type_0_does_not_satisfy_the_expected_type_1_1360","Type '{0}' does not satisfy the expected type '{1}'."),_0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type:Ts(1361,1,"_0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type_1361","'{0}' cannot be used as a value because it was imported using 'import type'."),_0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type:Ts(1362,1,"_0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type_1362","'{0}' cannot be used as a value because it was exported using 'export type'."),A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both:Ts(1363,1,"A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both_1363","A type-only import can specify a default import or named bindings, but not both."),Convert_to_type_only_export:Ts(1364,3,"Convert_to_type_only_export_1364","Convert to type-only export"),Convert_all_re_exported_types_to_type_only_exports:Ts(1365,3,"Convert_all_re_exported_types_to_type_only_exports_1365","Convert all re-exported types to type-only exports"),Split_into_two_separate_import_declarations:Ts(1366,3,"Split_into_two_separate_import_declarations_1366","Split into two separate import declarations"),Split_all_invalid_type_only_imports:Ts(1367,3,"Split_all_invalid_type_only_imports_1367","Split all invalid type-only imports"),Class_constructor_may_not_be_a_generator:Ts(1368,1,"Class_constructor_may_not_be_a_generator_1368","Class constructor may not be a generator."),Did_you_mean_0:Ts(1369,3,"Did_you_mean_0_1369","Did you mean '{0}'?"),await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module:Ts(1375,1,"await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_fi_1375","'await' expressions are only allowed at the top level of a file when that file is a module, but this file has no imports or exports. Consider adding an empty 'export {}' to make this file a module."),_0_was_imported_here:Ts(1376,3,"_0_was_imported_here_1376","'{0}' was imported here."),_0_was_exported_here:Ts(1377,3,"_0_was_exported_here_1377","'{0}' was exported here."),Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:Ts(1378,1,"Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_n_1378","Top-level 'await' expressions are only allowed when the 'module' option is set to 'es2022', 'esnext', 'system', 'node16', 'nodenext', or 'preserve', and the 'target' option is set to 'es2017' or higher."),An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type:Ts(1379,1,"An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type_1379","An import alias cannot reference a declaration that was exported using 'export type'."),An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type:Ts(1380,1,"An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type_1380","An import alias cannot reference a declaration that was imported using 'import type'."),Unexpected_token_Did_you_mean_or_rbrace:Ts(1381,1,"Unexpected_token_Did_you_mean_or_rbrace_1381","Unexpected token. Did you mean `{'}'}` or `}`?"),Unexpected_token_Did_you_mean_or_gt:Ts(1382,1,"Unexpected_token_Did_you_mean_or_gt_1382","Unexpected token. Did you mean `{'>'}` or `>`?"),Function_type_notation_must_be_parenthesized_when_used_in_a_union_type:Ts(1385,1,"Function_type_notation_must_be_parenthesized_when_used_in_a_union_type_1385","Function type notation must be parenthesized when used in a union type."),Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type:Ts(1386,1,"Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type_1386","Constructor type notation must be parenthesized when used in a union type."),Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:Ts(1387,1,"Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type_1387","Function type notation must be parenthesized when used in an intersection type."),Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:Ts(1388,1,"Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type_1388","Constructor type notation must be parenthesized when used in an intersection type."),_0_is_not_allowed_as_a_variable_declaration_name:Ts(1389,1,"_0_is_not_allowed_as_a_variable_declaration_name_1389","'{0}' is not allowed as a variable declaration name."),_0_is_not_allowed_as_a_parameter_name:Ts(1390,1,"_0_is_not_allowed_as_a_parameter_name_1390","'{0}' is not allowed as a parameter name."),An_import_alias_cannot_use_import_type:Ts(1392,1,"An_import_alias_cannot_use_import_type_1392","An import alias cannot use 'import type'"),Imported_via_0_from_file_1:Ts(1393,3,"Imported_via_0_from_file_1_1393","Imported via {0} from file '{1}'"),Imported_via_0_from_file_1_with_packageId_2:Ts(1394,3,"Imported_via_0_from_file_1_with_packageId_2_1394","Imported via {0} from file '{1}' with packageId '{2}'"),Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions:Ts(1395,3,"Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions_1395","Imported via {0} from file '{1}' to import 'importHelpers' as specified in compilerOptions"),Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions:Ts(1396,3,"Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions_1396","Imported via {0} from file '{1}' with packageId '{2}' to import 'importHelpers' as specified in compilerOptions"),Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions:Ts(1397,3,"Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions_1397","Imported via {0} from file '{1}' to import 'jsx' and 'jsxs' factory functions"),Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions:Ts(1398,3,"Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions_1398","Imported via {0} from file '{1}' with packageId '{2}' to import 'jsx' and 'jsxs' factory functions"),File_is_included_via_import_here:Ts(1399,3,"File_is_included_via_import_here_1399","File is included via import here."),Referenced_via_0_from_file_1:Ts(1400,3,"Referenced_via_0_from_file_1_1400","Referenced via '{0}' from file '{1}'"),File_is_included_via_reference_here:Ts(1401,3,"File_is_included_via_reference_here_1401","File is included via reference here."),Type_library_referenced_via_0_from_file_1:Ts(1402,3,"Type_library_referenced_via_0_from_file_1_1402","Type library referenced via '{0}' from file '{1}'"),Type_library_referenced_via_0_from_file_1_with_packageId_2:Ts(1403,3,"Type_library_referenced_via_0_from_file_1_with_packageId_2_1403","Type library referenced via '{0}' from file '{1}' with packageId '{2}'"),File_is_included_via_type_library_reference_here:Ts(1404,3,"File_is_included_via_type_library_reference_here_1404","File is included via type library reference here."),Library_referenced_via_0_from_file_1:Ts(1405,3,"Library_referenced_via_0_from_file_1_1405","Library referenced via '{0}' from file '{1}'"),File_is_included_via_library_reference_here:Ts(1406,3,"File_is_included_via_library_reference_here_1406","File is included via library reference here."),Matched_by_include_pattern_0_in_1:Ts(1407,3,"Matched_by_include_pattern_0_in_1_1407","Matched by include pattern '{0}' in '{1}'"),File_is_matched_by_include_pattern_specified_here:Ts(1408,3,"File_is_matched_by_include_pattern_specified_here_1408","File is matched by include pattern specified here."),Part_of_files_list_in_tsconfig_json:Ts(1409,3,"Part_of_files_list_in_tsconfig_json_1409","Part of 'files' list in tsconfig.json"),File_is_matched_by_files_list_specified_here:Ts(1410,3,"File_is_matched_by_files_list_specified_here_1410","File is matched by 'files' list specified here."),Output_from_referenced_project_0_included_because_1_specified:Ts(1411,3,"Output_from_referenced_project_0_included_because_1_specified_1411","Output from referenced project '{0}' included because '{1}' specified"),Output_from_referenced_project_0_included_because_module_is_specified_as_none:Ts(1412,3,"Output_from_referenced_project_0_included_because_module_is_specified_as_none_1412","Output from referenced project '{0}' included because '--module' is specified as 'none'"),File_is_output_from_referenced_project_specified_here:Ts(1413,3,"File_is_output_from_referenced_project_specified_here_1413","File is output from referenced project specified here."),Source_from_referenced_project_0_included_because_1_specified:Ts(1414,3,"Source_from_referenced_project_0_included_because_1_specified_1414","Source from referenced project '{0}' included because '{1}' specified"),Source_from_referenced_project_0_included_because_module_is_specified_as_none:Ts(1415,3,"Source_from_referenced_project_0_included_because_module_is_specified_as_none_1415","Source from referenced project '{0}' included because '--module' is specified as 'none'"),File_is_source_from_referenced_project_specified_here:Ts(1416,3,"File_is_source_from_referenced_project_specified_here_1416","File is source from referenced project specified here."),Entry_point_of_type_library_0_specified_in_compilerOptions:Ts(1417,3,"Entry_point_of_type_library_0_specified_in_compilerOptions_1417","Entry point of type library '{0}' specified in compilerOptions"),Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1:Ts(1418,3,"Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1_1418","Entry point of type library '{0}' specified in compilerOptions with packageId '{1}'"),File_is_entry_point_of_type_library_specified_here:Ts(1419,3,"File_is_entry_point_of_type_library_specified_here_1419","File is entry point of type library specified here."),Entry_point_for_implicit_type_library_0:Ts(1420,3,"Entry_point_for_implicit_type_library_0_1420","Entry point for implicit type library '{0}'"),Entry_point_for_implicit_type_library_0_with_packageId_1:Ts(1421,3,"Entry_point_for_implicit_type_library_0_with_packageId_1_1421","Entry point for implicit type library '{0}' with packageId '{1}'"),Library_0_specified_in_compilerOptions:Ts(1422,3,"Library_0_specified_in_compilerOptions_1422","Library '{0}' specified in compilerOptions"),File_is_library_specified_here:Ts(1423,3,"File_is_library_specified_here_1423","File is library specified here."),Default_library:Ts(1424,3,"Default_library_1424","Default library"),Default_library_for_target_0:Ts(1425,3,"Default_library_for_target_0_1425","Default library for target '{0}'"),File_is_default_library_for_target_specified_here:Ts(1426,3,"File_is_default_library_for_target_specified_here_1426","File is default library for target specified here."),Root_file_specified_for_compilation:Ts(1427,3,"Root_file_specified_for_compilation_1427","Root file specified for compilation"),File_is_output_of_project_reference_source_0:Ts(1428,3,"File_is_output_of_project_reference_source_0_1428","File is output of project reference source '{0}'"),File_redirects_to_file_0:Ts(1429,3,"File_redirects_to_file_0_1429","File redirects to file '{0}'"),The_file_is_in_the_program_because_Colon:Ts(1430,3,"The_file_is_in_the_program_because_Colon_1430","The file is in the program because:"),for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module:Ts(1431,1,"for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_1431","'for await' loops are only allowed at the top level of a file when that file is a module, but this file has no imports or exports. Consider adding an empty 'export {}' to make this file a module."),Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:Ts(1432,1,"Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_nod_1432","Top-level 'for await' loops are only allowed when the 'module' option is set to 'es2022', 'esnext', 'system', 'node16', 'nodenext', or 'preserve', and the 'target' option is set to 'es2017' or higher."),Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters:Ts(1433,1,"Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters_1433","Neither decorators nor modifiers may be applied to 'this' parameters."),Unexpected_keyword_or_identifier:Ts(1434,1,"Unexpected_keyword_or_identifier_1434","Unexpected keyword or identifier."),Unknown_keyword_or_identifier_Did_you_mean_0:Ts(1435,1,"Unknown_keyword_or_identifier_Did_you_mean_0_1435","Unknown keyword or identifier. Did you mean '{0}'?"),Decorators_must_precede_the_name_and_all_keywords_of_property_declarations:Ts(1436,1,"Decorators_must_precede_the_name_and_all_keywords_of_property_declarations_1436","Decorators must precede the name and all keywords of property declarations."),Namespace_must_be_given_a_name:Ts(1437,1,"Namespace_must_be_given_a_name_1437","Namespace must be given a name."),Interface_must_be_given_a_name:Ts(1438,1,"Interface_must_be_given_a_name_1438","Interface must be given a name."),Type_alias_must_be_given_a_name:Ts(1439,1,"Type_alias_must_be_given_a_name_1439","Type alias must be given a name."),Variable_declaration_not_allowed_at_this_location:Ts(1440,1,"Variable_declaration_not_allowed_at_this_location_1440","Variable declaration not allowed at this location."),Cannot_start_a_function_call_in_a_type_annotation:Ts(1441,1,"Cannot_start_a_function_call_in_a_type_annotation_1441","Cannot start a function call in a type annotation."),Expected_for_property_initializer:Ts(1442,1,"Expected_for_property_initializer_1442","Expected '=' for property initializer."),Module_declaration_names_may_only_use_or_quoted_strings:Ts(1443,1,"Module_declaration_names_may_only_use_or_quoted_strings_1443","Module declaration names may only use ' or \" quoted strings."),_0_resolves_to_a_type_only_declaration_and_must_be_re_exported_using_a_type_only_re_export_when_1_is_enabled:Ts(1448,1,"_0_resolves_to_a_type_only_declaration_and_must_be_re_exported_using_a_type_only_re_export_when_1_is_1448","'{0}' resolves to a type-only declaration and must be re-exported using a type-only re-export when '{1}' is enabled."),Preserve_unused_imported_values_in_the_JavaScript_output_that_would_otherwise_be_removed:Ts(1449,3,"Preserve_unused_imported_values_in_the_JavaScript_output_that_would_otherwise_be_removed_1449","Preserve unused imported values in the JavaScript output that would otherwise be removed."),Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_set_of_attributes_as_arguments:Ts(1450,3,"Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_set_of_attributes_as_arguments_1450","Dynamic imports can only accept a module specifier and an optional set of attributes as arguments"),Private_identifiers_are_only_allowed_in_class_bodies_and_may_only_be_used_as_part_of_a_class_member_declaration_property_access_or_on_the_left_hand_side_of_an_in_expression:Ts(1451,1,"Private_identifiers_are_only_allowed_in_class_bodies_and_may_only_be_used_as_part_of_a_class_member__1451","Private identifiers are only allowed in class bodies and may only be used as part of a class member declaration, property access, or on the left-hand-side of an 'in' expression"),resolution_mode_should_be_either_require_or_import:Ts(1453,1,"resolution_mode_should_be_either_require_or_import_1453","`resolution-mode` should be either `require` or `import`."),resolution_mode_can_only_be_set_for_type_only_imports:Ts(1454,1,"resolution_mode_can_only_be_set_for_type_only_imports_1454","`resolution-mode` can only be set for type-only imports."),resolution_mode_is_the_only_valid_key_for_type_import_assertions:Ts(1455,1,"resolution_mode_is_the_only_valid_key_for_type_import_assertions_1455","`resolution-mode` is the only valid key for type import assertions."),Type_import_assertions_should_have_exactly_one_key_resolution_mode_with_value_import_or_require:Ts(1456,1,"Type_import_assertions_should_have_exactly_one_key_resolution_mode_with_value_import_or_require_1456","Type import assertions should have exactly one key - `resolution-mode` - with value `import` or `require`."),Matched_by_default_include_pattern_Asterisk_Asterisk_Slash_Asterisk:Ts(1457,3,"Matched_by_default_include_pattern_Asterisk_Asterisk_Slash_Asterisk_1457","Matched by default include pattern '**/*'"),File_is_ECMAScript_module_because_0_has_field_type_with_value_module:Ts(1458,3,"File_is_ECMAScript_module_because_0_has_field_type_with_value_module_1458",'File is ECMAScript module because \'{0}\' has field "type" with value "module"'),File_is_CommonJS_module_because_0_has_field_type_whose_value_is_not_module:Ts(1459,3,"File_is_CommonJS_module_because_0_has_field_type_whose_value_is_not_module_1459",'File is CommonJS module because \'{0}\' has field "type" whose value is not "module"'),File_is_CommonJS_module_because_0_does_not_have_field_type:Ts(1460,3,"File_is_CommonJS_module_because_0_does_not_have_field_type_1460","File is CommonJS module because '{0}' does not have field \"type\""),File_is_CommonJS_module_because_package_json_was_not_found:Ts(1461,3,"File_is_CommonJS_module_because_package_json_was_not_found_1461","File is CommonJS module because 'package.json' was not found"),resolution_mode_is_the_only_valid_key_for_type_import_attributes:Ts(1463,1,"resolution_mode_is_the_only_valid_key_for_type_import_attributes_1463","'resolution-mode' is the only valid key for type import attributes."),Type_import_attributes_should_have_exactly_one_key_resolution_mode_with_value_import_or_require:Ts(1464,1,"Type_import_attributes_should_have_exactly_one_key_resolution_mode_with_value_import_or_require_1464","Type import attributes should have exactly one key - 'resolution-mode' - with value 'import' or 'require'."),The_import_meta_meta_property_is_not_allowed_in_files_which_will_build_into_CommonJS_output:Ts(1470,1,"The_import_meta_meta_property_is_not_allowed_in_files_which_will_build_into_CommonJS_output_1470","The 'import.meta' meta-property is not allowed in files which will build into CommonJS output."),Module_0_cannot_be_imported_using_this_construct_The_specifier_only_resolves_to_an_ES_module_which_cannot_be_imported_with_require_Use_an_ECMAScript_import_instead:Ts(1471,1,"Module_0_cannot_be_imported_using_this_construct_The_specifier_only_resolves_to_an_ES_module_which_c_1471","Module '{0}' cannot be imported using this construct. The specifier only resolves to an ES module, which cannot be imported with 'require'. Use an ECMAScript import instead."),catch_or_finally_expected:Ts(1472,1,"catch_or_finally_expected_1472","'catch' or 'finally' expected."),An_import_declaration_can_only_be_used_at_the_top_level_of_a_module:Ts(1473,1,"An_import_declaration_can_only_be_used_at_the_top_level_of_a_module_1473","An import declaration can only be used at the top level of a module."),An_export_declaration_can_only_be_used_at_the_top_level_of_a_module:Ts(1474,1,"An_export_declaration_can_only_be_used_at_the_top_level_of_a_module_1474","An export declaration can only be used at the top level of a module."),Control_what_method_is_used_to_detect_module_format_JS_files:Ts(1475,3,"Control_what_method_is_used_to_detect_module_format_JS_files_1475","Control what method is used to detect module-format JS files."),auto_Colon_Treat_files_with_imports_exports_import_meta_jsx_with_jsx_Colon_react_jsx_or_esm_format_with_module_Colon_node16_as_modules:Ts(1476,3,"auto_Colon_Treat_files_with_imports_exports_import_meta_jsx_with_jsx_Colon_react_jsx_or_esm_format_w_1476",'"auto": Treat files with imports, exports, import.meta, jsx (with jsx: react-jsx), or esm format (with module: node16+) as modules.'),An_instantiation_expression_cannot_be_followed_by_a_property_access:Ts(1477,1,"An_instantiation_expression_cannot_be_followed_by_a_property_access_1477","An instantiation expression cannot be followed by a property access."),Identifier_or_string_literal_expected:Ts(1478,1,"Identifier_or_string_literal_expected_1478","Identifier or string literal expected."),The_current_file_is_a_CommonJS_module_whose_imports_will_produce_require_calls_however_the_referenced_file_is_an_ECMAScript_module_and_cannot_be_imported_with_require_Consider_writing_a_dynamic_import_0_call_instead:Ts(1479,1,"The_current_file_is_a_CommonJS_module_whose_imports_will_produce_require_calls_however_the_reference_1479","The current file is a CommonJS module whose imports will produce 'require' calls; however, the referenced file is an ECMAScript module and cannot be imported with 'require'. Consider writing a dynamic 'import(\"{0}\")' call instead."),To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_create_a_local_package_json_file_with_type_Colon_module:Ts(1480,3,"To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_create_a_local_packag_1480",'To convert this file to an ECMAScript module, change its file extension to \'{0}\' or create a local package.json file with `{ "type": "module" }`.'),To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_add_the_field_type_Colon_module_to_1:Ts(1481,3,"To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_add_the_field_type_Co_1481","To convert this file to an ECMAScript module, change its file extension to '{0}', or add the field `\"type\": \"module\"` to '{1}'."),To_convert_this_file_to_an_ECMAScript_module_add_the_field_type_Colon_module_to_0:Ts(1482,3,"To_convert_this_file_to_an_ECMAScript_module_add_the_field_type_Colon_module_to_0_1482",'To convert this file to an ECMAScript module, add the field `"type": "module"` to \'{0}\'.'),To_convert_this_file_to_an_ECMAScript_module_create_a_local_package_json_file_with_type_Colon_module:Ts(1483,3,"To_convert_this_file_to_an_ECMAScript_module_create_a_local_package_json_file_with_type_Colon_module_1483",'To convert this file to an ECMAScript module, create a local package.json file with `{ "type": "module" }`.'),_0_is_a_type_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled:Ts(1484,1,"_0_is_a_type_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled_1484","'{0}' is a type and must be imported using a type-only import when 'verbatimModuleSyntax' is enabled."),_0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled:Ts(1485,1,"_0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_verbatimMo_1485","'{0}' resolves to a type-only declaration and must be imported using a type-only import when 'verbatimModuleSyntax' is enabled."),Decorator_used_before_export_here:Ts(1486,1,"Decorator_used_before_export_here_1486","Decorator used before 'export' here."),Octal_escape_sequences_are_not_allowed_Use_the_syntax_0:Ts(1487,1,"Octal_escape_sequences_are_not_allowed_Use_the_syntax_0_1487","Octal escape sequences are not allowed. Use the syntax '{0}'."),Escape_sequence_0_is_not_allowed:Ts(1488,1,"Escape_sequence_0_is_not_allowed_1488","Escape sequence '{0}' is not allowed."),Decimals_with_leading_zeros_are_not_allowed:Ts(1489,1,"Decimals_with_leading_zeros_are_not_allowed_1489","Decimals with leading zeros are not allowed."),File_appears_to_be_binary:Ts(1490,1,"File_appears_to_be_binary_1490","File appears to be binary."),_0_modifier_cannot_appear_on_a_using_declaration:Ts(1491,1,"_0_modifier_cannot_appear_on_a_using_declaration_1491","'{0}' modifier cannot appear on a 'using' declaration."),_0_declarations_may_not_have_binding_patterns:Ts(1492,1,"_0_declarations_may_not_have_binding_patterns_1492","'{0}' declarations may not have binding patterns."),The_left_hand_side_of_a_for_in_statement_cannot_be_a_using_declaration:Ts(1493,1,"The_left_hand_side_of_a_for_in_statement_cannot_be_a_using_declaration_1493","The left-hand side of a 'for...in' statement cannot be a 'using' declaration."),The_left_hand_side_of_a_for_in_statement_cannot_be_an_await_using_declaration:Ts(1494,1,"The_left_hand_side_of_a_for_in_statement_cannot_be_an_await_using_declaration_1494","The left-hand side of a 'for...in' statement cannot be an 'await using' declaration."),_0_modifier_cannot_appear_on_an_await_using_declaration:Ts(1495,1,"_0_modifier_cannot_appear_on_an_await_using_declaration_1495","'{0}' modifier cannot appear on an 'await using' declaration."),Identifier_string_literal_or_number_literal_expected:Ts(1496,1,"Identifier_string_literal_or_number_literal_expected_1496","Identifier, string literal, or number literal expected."),Expression_must_be_enclosed_in_parentheses_to_be_used_as_a_decorator:Ts(1497,1,"Expression_must_be_enclosed_in_parentheses_to_be_used_as_a_decorator_1497","Expression must be enclosed in parentheses to be used as a decorator."),Invalid_syntax_in_decorator:Ts(1498,1,"Invalid_syntax_in_decorator_1498","Invalid syntax in decorator."),Unknown_regular_expression_flag:Ts(1499,1,"Unknown_regular_expression_flag_1499","Unknown regular expression flag."),Duplicate_regular_expression_flag:Ts(1500,1,"Duplicate_regular_expression_flag_1500","Duplicate regular expression flag."),This_regular_expression_flag_is_only_available_when_targeting_0_or_later:Ts(1501,1,"This_regular_expression_flag_is_only_available_when_targeting_0_or_later_1501","This regular expression flag is only available when targeting '{0}' or later."),The_Unicode_u_flag_and_the_Unicode_Sets_v_flag_cannot_be_set_simultaneously:Ts(1502,1,"The_Unicode_u_flag_and_the_Unicode_Sets_v_flag_cannot_be_set_simultaneously_1502","The Unicode (u) flag and the Unicode Sets (v) flag cannot be set simultaneously."),Named_capturing_groups_are_only_available_when_targeting_ES2018_or_later:Ts(1503,1,"Named_capturing_groups_are_only_available_when_targeting_ES2018_or_later_1503","Named capturing groups are only available when targeting 'ES2018' or later."),Subpattern_flags_must_be_present_when_there_is_a_minus_sign:Ts(1504,1,"Subpattern_flags_must_be_present_when_there_is_a_minus_sign_1504","Subpattern flags must be present when there is a minus sign."),Incomplete_quantifier_Digit_expected:Ts(1505,1,"Incomplete_quantifier_Digit_expected_1505","Incomplete quantifier. Digit expected."),Numbers_out_of_order_in_quantifier:Ts(1506,1,"Numbers_out_of_order_in_quantifier_1506","Numbers out of order in quantifier."),There_is_nothing_available_for_repetition:Ts(1507,1,"There_is_nothing_available_for_repetition_1507","There is nothing available for repetition."),Unexpected_0_Did_you_mean_to_escape_it_with_backslash:Ts(1508,1,"Unexpected_0_Did_you_mean_to_escape_it_with_backslash_1508","Unexpected '{0}'. Did you mean to escape it with backslash?"),This_regular_expression_flag_cannot_be_toggled_within_a_subpattern:Ts(1509,1,"This_regular_expression_flag_cannot_be_toggled_within_a_subpattern_1509","This regular expression flag cannot be toggled within a subpattern."),k_must_be_followed_by_a_capturing_group_name_enclosed_in_angle_brackets:Ts(1510,1,"k_must_be_followed_by_a_capturing_group_name_enclosed_in_angle_brackets_1510","'\\k' must be followed by a capturing group name enclosed in angle brackets."),q_is_only_available_inside_character_class:Ts(1511,1,"q_is_only_available_inside_character_class_1511","'\\q' is only available inside character class."),c_must_be_followed_by_an_ASCII_letter:Ts(1512,1,"c_must_be_followed_by_an_ASCII_letter_1512","'\\c' must be followed by an ASCII letter."),Undetermined_character_escape:Ts(1513,1,"Undetermined_character_escape_1513","Undetermined character escape."),Expected_a_capturing_group_name:Ts(1514,1,"Expected_a_capturing_group_name_1514","Expected a capturing group name."),Named_capturing_groups_with_the_same_name_must_be_mutually_exclusive_to_each_other:Ts(1515,1,"Named_capturing_groups_with_the_same_name_must_be_mutually_exclusive_to_each_other_1515","Named capturing groups with the same name must be mutually exclusive to each other."),A_character_class_range_must_not_be_bounded_by_another_character_class:Ts(1516,1,"A_character_class_range_must_not_be_bounded_by_another_character_class_1516","A character class range must not be bounded by another character class."),Range_out_of_order_in_character_class:Ts(1517,1,"Range_out_of_order_in_character_class_1517","Range out of order in character class."),Anything_that_would_possibly_match_more_than_a_single_character_is_invalid_inside_a_negated_character_class:Ts(1518,1,"Anything_that_would_possibly_match_more_than_a_single_character_is_invalid_inside_a_negated_characte_1518","Anything that would possibly match more than a single character is invalid inside a negated character class."),Operators_must_not_be_mixed_within_a_character_class_Wrap_it_in_a_nested_class_instead:Ts(1519,1,"Operators_must_not_be_mixed_within_a_character_class_Wrap_it_in_a_nested_class_instead_1519","Operators must not be mixed within a character class. Wrap it in a nested class instead."),Expected_a_class_set_operand:Ts(1520,1,"Expected_a_class_set_operand_1520","Expected a class set operand."),q_must_be_followed_by_string_alternatives_enclosed_in_braces:Ts(1521,1,"q_must_be_followed_by_string_alternatives_enclosed_in_braces_1521","'\\q' must be followed by string alternatives enclosed in braces."),A_character_class_must_not_contain_a_reserved_double_punctuator_Did_you_mean_to_escape_it_with_backslash:Ts(1522,1,"A_character_class_must_not_contain_a_reserved_double_punctuator_Did_you_mean_to_escape_it_with_backs_1522","A character class must not contain a reserved double punctuator. Did you mean to escape it with backslash?"),Expected_a_Unicode_property_name:Ts(1523,1,"Expected_a_Unicode_property_name_1523","Expected a Unicode property name."),Unknown_Unicode_property_name:Ts(1524,1,"Unknown_Unicode_property_name_1524","Unknown Unicode property name."),Expected_a_Unicode_property_value:Ts(1525,1,"Expected_a_Unicode_property_value_1525","Expected a Unicode property value."),Unknown_Unicode_property_value:Ts(1526,1,"Unknown_Unicode_property_value_1526","Unknown Unicode property value."),Expected_a_Unicode_property_name_or_value:Ts(1527,1,"Expected_a_Unicode_property_name_or_value_1527","Expected a Unicode property name or value."),Any_Unicode_property_that_would_possibly_match_more_than_a_single_character_is_only_available_when_the_Unicode_Sets_v_flag_is_set:Ts(1528,1,"Any_Unicode_property_that_would_possibly_match_more_than_a_single_character_is_only_available_when_t_1528","Any Unicode property that would possibly match more than a single character is only available when the Unicode Sets (v) flag is set."),Unknown_Unicode_property_name_or_value:Ts(1529,1,"Unknown_Unicode_property_name_or_value_1529","Unknown Unicode property name or value."),Unicode_property_value_expressions_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v_flag_is_set:Ts(1530,1,"Unicode_property_value_expressions_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v__1530","Unicode property value expressions are only available when the Unicode (u) flag or the Unicode Sets (v) flag is set."),_0_must_be_followed_by_a_Unicode_property_value_expression_enclosed_in_braces:Ts(1531,1,"_0_must_be_followed_by_a_Unicode_property_value_expression_enclosed_in_braces_1531","'\\{0}' must be followed by a Unicode property value expression enclosed in braces."),There_is_no_capturing_group_named_0_in_this_regular_expression:Ts(1532,1,"There_is_no_capturing_group_named_0_in_this_regular_expression_1532","There is no capturing group named '{0}' in this regular expression."),This_backreference_refers_to_a_group_that_does_not_exist_There_are_only_0_capturing_groups_in_this_regular_expression:Ts(1533,1,"This_backreference_refers_to_a_group_that_does_not_exist_There_are_only_0_capturing_groups_in_this_r_1533","This backreference refers to a group that does not exist. There are only {0} capturing groups in this regular expression."),This_backreference_refers_to_a_group_that_does_not_exist_There_are_no_capturing_groups_in_this_regular_expression:Ts(1534,1,"This_backreference_refers_to_a_group_that_does_not_exist_There_are_no_capturing_groups_in_this_regul_1534","This backreference refers to a group that does not exist. There are no capturing groups in this regular expression."),This_character_cannot_be_escaped_in_a_regular_expression:Ts(1535,1,"This_character_cannot_be_escaped_in_a_regular_expression_1535","This character cannot be escaped in a regular expression."),Octal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class_If_this_was_intended_as_an_escape_sequence_use_the_syntax_0_instead:Ts(1536,1,"Octal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class_If_this_was_intended__1536","Octal escape sequences and backreferences are not allowed in a character class. If this was intended as an escape sequence, use the syntax '{0}' instead."),Decimal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class:Ts(1537,1,"Decimal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class_1537","Decimal escape sequences and backreferences are not allowed in a character class."),The_types_of_0_are_incompatible_between_these_types:Ts(2200,1,"The_types_of_0_are_incompatible_between_these_types_2200","The types of '{0}' are incompatible between these types."),The_types_returned_by_0_are_incompatible_between_these_types:Ts(2201,1,"The_types_returned_by_0_are_incompatible_between_these_types_2201","The types returned by '{0}' are incompatible between these types."),Call_signature_return_types_0_and_1_are_incompatible:Ts(2202,1,"Call_signature_return_types_0_and_1_are_incompatible_2202","Call signature return types '{0}' and '{1}' are incompatible.",void 0,!0),Construct_signature_return_types_0_and_1_are_incompatible:Ts(2203,1,"Construct_signature_return_types_0_and_1_are_incompatible_2203","Construct signature return types '{0}' and '{1}' are incompatible.",void 0,!0),Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1:Ts(2204,1,"Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1_2204","Call signatures with no arguments have incompatible return types '{0}' and '{1}'.",void 0,!0),Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1:Ts(2205,1,"Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1_2205","Construct signatures with no arguments have incompatible return types '{0}' and '{1}'.",void 0,!0),The_type_modifier_cannot_be_used_on_a_named_import_when_import_type_is_used_on_its_import_statement:Ts(2206,1,"The_type_modifier_cannot_be_used_on_a_named_import_when_import_type_is_used_on_its_import_statement_2206","The 'type' modifier cannot be used on a named import when 'import type' is used on its import statement."),The_type_modifier_cannot_be_used_on_a_named_export_when_export_type_is_used_on_its_export_statement:Ts(2207,1,"The_type_modifier_cannot_be_used_on_a_named_export_when_export_type_is_used_on_its_export_statement_2207","The 'type' modifier cannot be used on a named export when 'export type' is used on its export statement."),This_type_parameter_might_need_an_extends_0_constraint:Ts(2208,1,"This_type_parameter_might_need_an_extends_0_constraint_2208","This type parameter might need an `extends {0}` constraint."),The_project_root_is_ambiguous_but_is_required_to_resolve_export_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate:Ts(2209,1,"The_project_root_is_ambiguous_but_is_required_to_resolve_export_map_entry_0_in_file_1_Supply_the_roo_2209","The project root is ambiguous, but is required to resolve export map entry '{0}' in file '{1}'. Supply the `rootDir` compiler option to disambiguate."),The_project_root_is_ambiguous_but_is_required_to_resolve_import_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate:Ts(2210,1,"The_project_root_is_ambiguous_but_is_required_to_resolve_import_map_entry_0_in_file_1_Supply_the_roo_2210","The project root is ambiguous, but is required to resolve import map entry '{0}' in file '{1}'. Supply the `rootDir` compiler option to disambiguate."),Add_extends_constraint:Ts(2211,3,"Add_extends_constraint_2211","Add `extends` constraint."),Add_extends_constraint_to_all_type_parameters:Ts(2212,3,"Add_extends_constraint_to_all_type_parameters_2212","Add `extends` constraint to all type parameters"),Duplicate_identifier_0:Ts(2300,1,"Duplicate_identifier_0_2300","Duplicate identifier '{0}'."),Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:Ts(2301,1,"Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor_2301","Initializer of instance member variable '{0}' cannot reference identifier '{1}' declared in the constructor."),Static_members_cannot_reference_class_type_parameters:Ts(2302,1,"Static_members_cannot_reference_class_type_parameters_2302","Static members cannot reference class type parameters."),Circular_definition_of_import_alias_0:Ts(2303,1,"Circular_definition_of_import_alias_0_2303","Circular definition of import alias '{0}'."),Cannot_find_name_0:Ts(2304,1,"Cannot_find_name_0_2304","Cannot find name '{0}'."),Module_0_has_no_exported_member_1:Ts(2305,1,"Module_0_has_no_exported_member_1_2305","Module '{0}' has no exported member '{1}'."),File_0_is_not_a_module:Ts(2306,1,"File_0_is_not_a_module_2306","File '{0}' is not a module."),Cannot_find_module_0_or_its_corresponding_type_declarations:Ts(2307,1,"Cannot_find_module_0_or_its_corresponding_type_declarations_2307","Cannot find module '{0}' or its corresponding type declarations."),Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambiguity:Ts(2308,1,"Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambig_2308","Module {0} has already exported a member named '{1}'. Consider explicitly re-exporting to resolve the ambiguity."),An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements:Ts(2309,1,"An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements_2309","An export assignment cannot be used in a module with other exported elements."),Type_0_recursively_references_itself_as_a_base_type:Ts(2310,1,"Type_0_recursively_references_itself_as_a_base_type_2310","Type '{0}' recursively references itself as a base type."),Cannot_find_name_0_Did_you_mean_to_write_this_in_an_async_function:Ts(2311,1,"Cannot_find_name_0_Did_you_mean_to_write_this_in_an_async_function_2311","Cannot find name '{0}'. Did you mean to write this in an async function?"),An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_members:Ts(2312,1,"An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_me_2312","An interface can only extend an object type or intersection of object types with statically known members."),Type_parameter_0_has_a_circular_constraint:Ts(2313,1,"Type_parameter_0_has_a_circular_constraint_2313","Type parameter '{0}' has a circular constraint."),Generic_type_0_requires_1_type_argument_s:Ts(2314,1,"Generic_type_0_requires_1_type_argument_s_2314","Generic type '{0}' requires {1} type argument(s)."),Type_0_is_not_generic:Ts(2315,1,"Type_0_is_not_generic_2315","Type '{0}' is not generic."),Global_type_0_must_be_a_class_or_interface_type:Ts(2316,1,"Global_type_0_must_be_a_class_or_interface_type_2316","Global type '{0}' must be a class or interface type."),Global_type_0_must_have_1_type_parameter_s:Ts(2317,1,"Global_type_0_must_have_1_type_parameter_s_2317","Global type '{0}' must have {1} type parameter(s)."),Cannot_find_global_type_0:Ts(2318,1,"Cannot_find_global_type_0_2318","Cannot find global type '{0}'."),Named_property_0_of_types_1_and_2_are_not_identical:Ts(2319,1,"Named_property_0_of_types_1_and_2_are_not_identical_2319","Named property '{0}' of types '{1}' and '{2}' are not identical."),Interface_0_cannot_simultaneously_extend_types_1_and_2:Ts(2320,1,"Interface_0_cannot_simultaneously_extend_types_1_and_2_2320","Interface '{0}' cannot simultaneously extend types '{1}' and '{2}'."),Excessive_stack_depth_comparing_types_0_and_1:Ts(2321,1,"Excessive_stack_depth_comparing_types_0_and_1_2321","Excessive stack depth comparing types '{0}' and '{1}'."),Type_0_is_not_assignable_to_type_1:Ts(2322,1,"Type_0_is_not_assignable_to_type_1_2322","Type '{0}' is not assignable to type '{1}'."),Cannot_redeclare_exported_variable_0:Ts(2323,1,"Cannot_redeclare_exported_variable_0_2323","Cannot redeclare exported variable '{0}'."),Property_0_is_missing_in_type_1:Ts(2324,1,"Property_0_is_missing_in_type_1_2324","Property '{0}' is missing in type '{1}'."),Property_0_is_private_in_type_1_but_not_in_type_2:Ts(2325,1,"Property_0_is_private_in_type_1_but_not_in_type_2_2325","Property '{0}' is private in type '{1}' but not in type '{2}'."),Types_of_property_0_are_incompatible:Ts(2326,1,"Types_of_property_0_are_incompatible_2326","Types of property '{0}' are incompatible."),Property_0_is_optional_in_type_1_but_required_in_type_2:Ts(2327,1,"Property_0_is_optional_in_type_1_but_required_in_type_2_2327","Property '{0}' is optional in type '{1}' but required in type '{2}'."),Types_of_parameters_0_and_1_are_incompatible:Ts(2328,1,"Types_of_parameters_0_and_1_are_incompatible_2328","Types of parameters '{0}' and '{1}' are incompatible."),Index_signature_for_type_0_is_missing_in_type_1:Ts(2329,1,"Index_signature_for_type_0_is_missing_in_type_1_2329","Index signature for type '{0}' is missing in type '{1}'."),_0_and_1_index_signatures_are_incompatible:Ts(2330,1,"_0_and_1_index_signatures_are_incompatible_2330","'{0}' and '{1}' index signatures are incompatible."),this_cannot_be_referenced_in_a_module_or_namespace_body:Ts(2331,1,"this_cannot_be_referenced_in_a_module_or_namespace_body_2331","'this' cannot be referenced in a module or namespace body."),this_cannot_be_referenced_in_current_location:Ts(2332,1,"this_cannot_be_referenced_in_current_location_2332","'this' cannot be referenced in current location."),this_cannot_be_referenced_in_a_static_property_initializer:Ts(2334,1,"this_cannot_be_referenced_in_a_static_property_initializer_2334","'this' cannot be referenced in a static property initializer."),super_can_only_be_referenced_in_a_derived_class:Ts(2335,1,"super_can_only_be_referenced_in_a_derived_class_2335","'super' can only be referenced in a derived class."),super_cannot_be_referenced_in_constructor_arguments:Ts(2336,1,"super_cannot_be_referenced_in_constructor_arguments_2336","'super' cannot be referenced in constructor arguments."),Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors:Ts(2337,1,"Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors_2337","Super calls are not permitted outside constructors or in nested functions inside constructors."),super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_derived_class:Ts(2338,1,"super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_der_2338","'super' property access is permitted only in a constructor, member function, or member accessor of a derived class."),Property_0_does_not_exist_on_type_1:Ts(2339,1,"Property_0_does_not_exist_on_type_1_2339","Property '{0}' does not exist on type '{1}'."),Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword:Ts(2340,1,"Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword_2340","Only public and protected methods of the base class are accessible via the 'super' keyword."),Property_0_is_private_and_only_accessible_within_class_1:Ts(2341,1,"Property_0_is_private_and_only_accessible_within_class_1_2341","Property '{0}' is private and only accessible within class '{1}'."),This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_version_of_0:Ts(2343,1,"This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_ve_2343","This syntax requires an imported helper named '{1}' which does not exist in '{0}'. Consider upgrading your version of '{0}'."),Type_0_does_not_satisfy_the_constraint_1:Ts(2344,1,"Type_0_does_not_satisfy_the_constraint_1_2344","Type '{0}' does not satisfy the constraint '{1}'."),Argument_of_type_0_is_not_assignable_to_parameter_of_type_1:Ts(2345,1,"Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_2345","Argument of type '{0}' is not assignable to parameter of type '{1}'."),Untyped_function_calls_may_not_accept_type_arguments:Ts(2347,1,"Untyped_function_calls_may_not_accept_type_arguments_2347","Untyped function calls may not accept type arguments."),Value_of_type_0_is_not_callable_Did_you_mean_to_include_new:Ts(2348,1,"Value_of_type_0_is_not_callable_Did_you_mean_to_include_new_2348","Value of type '{0}' is not callable. Did you mean to include 'new'?"),This_expression_is_not_callable:Ts(2349,1,"This_expression_is_not_callable_2349","This expression is not callable."),Only_a_void_function_can_be_called_with_the_new_keyword:Ts(2350,1,"Only_a_void_function_can_be_called_with_the_new_keyword_2350","Only a void function can be called with the 'new' keyword."),This_expression_is_not_constructable:Ts(2351,1,"This_expression_is_not_constructable_2351","This expression is not constructable."),Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the_other_If_this_was_intentional_convert_the_expression_to_unknown_first:Ts(2352,1,"Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the__2352","Conversion of type '{0}' to type '{1}' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first."),Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1:Ts(2353,1,"Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1_2353","Object literal may only specify known properties, and '{0}' does not exist in type '{1}'."),This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found:Ts(2354,1,"This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found_2354","This syntax requires an imported helper but module '{0}' cannot be found."),A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value:Ts(2355,1,"A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value_2355","A function whose declared type is neither 'undefined', 'void', nor 'any' must return a value."),An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type:Ts(2356,1,"An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type_2356","An arithmetic operand must be of type 'any', 'number', 'bigint' or an enum type."),The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access:Ts(2357,1,"The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access_2357","The operand of an increment or decrement operator must be a variable or a property access."),The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_parameter:Ts(2358,1,"The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_paramete_2358","The left-hand side of an 'instanceof' expression must be of type 'any', an object type or a type parameter."),The_right_hand_side_of_an_instanceof_expression_must_be_either_of_type_any_a_class_function_or_other_type_assignable_to_the_Function_interface_type_or_an_object_type_with_a_Symbol_hasInstance_method:Ts(2359,1,"The_right_hand_side_of_an_instanceof_expression_must_be_either_of_type_any_a_class_function_or_other_2359","The right-hand side of an 'instanceof' expression must be either of type 'any', a class, function, or other type assignable to the 'Function' interface type, or an object type with a 'Symbol.hasInstance' method."),The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type:Ts(2362,1,"The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type_2362","The left-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type."),The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type:Ts(2363,1,"The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type_2363","The right-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type."),The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access:Ts(2364,1,"The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access_2364","The left-hand side of an assignment expression must be a variable or a property access."),Operator_0_cannot_be_applied_to_types_1_and_2:Ts(2365,1,"Operator_0_cannot_be_applied_to_types_1_and_2_2365","Operator '{0}' cannot be applied to types '{1}' and '{2}'."),Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined:Ts(2366,1,"Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined_2366","Function lacks ending return statement and return type does not include 'undefined'."),This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap:Ts(2367,1,"This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap_2367","This comparison appears to be unintentional because the types '{0}' and '{1}' have no overlap."),Type_parameter_name_cannot_be_0:Ts(2368,1,"Type_parameter_name_cannot_be_0_2368","Type parameter name cannot be '{0}'."),A_parameter_property_is_only_allowed_in_a_constructor_implementation:Ts(2369,1,"A_parameter_property_is_only_allowed_in_a_constructor_implementation_2369","A parameter property is only allowed in a constructor implementation."),A_rest_parameter_must_be_of_an_array_type:Ts(2370,1,"A_rest_parameter_must_be_of_an_array_type_2370","A rest parameter must be of an array type."),A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation:Ts(2371,1,"A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation_2371","A parameter initializer is only allowed in a function or constructor implementation."),Parameter_0_cannot_reference_itself:Ts(2372,1,"Parameter_0_cannot_reference_itself_2372","Parameter '{0}' cannot reference itself."),Parameter_0_cannot_reference_identifier_1_declared_after_it:Ts(2373,1,"Parameter_0_cannot_reference_identifier_1_declared_after_it_2373","Parameter '{0}' cannot reference identifier '{1}' declared after it."),Duplicate_index_signature_for_type_0:Ts(2374,1,"Duplicate_index_signature_for_type_0_2374","Duplicate index signature for type '{0}'."),Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties:Ts(2375,1,"Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefi_2375","Type '{0}' is not assignable to type '{1}' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the types of the target's properties."),A_super_call_must_be_the_first_statement_in_the_constructor_to_refer_to_super_or_this_when_a_derived_class_contains_initialized_properties_parameter_properties_or_private_identifiers:Ts(2376,1,"A_super_call_must_be_the_first_statement_in_the_constructor_to_refer_to_super_or_this_when_a_derived_2376","A 'super' call must be the first statement in the constructor to refer to 'super' or 'this' when a derived class contains initialized properties, parameter properties, or private identifiers."),Constructors_for_derived_classes_must_contain_a_super_call:Ts(2377,1,"Constructors_for_derived_classes_must_contain_a_super_call_2377","Constructors for derived classes must contain a 'super' call."),A_get_accessor_must_return_a_value:Ts(2378,1,"A_get_accessor_must_return_a_value_2378","A 'get' accessor must return a value."),Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties:Ts(2379,1,"Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_tr_2379","Argument of type '{0}' is not assignable to parameter of type '{1}' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the types of the target's properties."),Overload_signatures_must_all_be_exported_or_non_exported:Ts(2383,1,"Overload_signatures_must_all_be_exported_or_non_exported_2383","Overload signatures must all be exported or non-exported."),Overload_signatures_must_all_be_ambient_or_non_ambient:Ts(2384,1,"Overload_signatures_must_all_be_ambient_or_non_ambient_2384","Overload signatures must all be ambient or non-ambient."),Overload_signatures_must_all_be_public_private_or_protected:Ts(2385,1,"Overload_signatures_must_all_be_public_private_or_protected_2385","Overload signatures must all be public, private or protected."),Overload_signatures_must_all_be_optional_or_required:Ts(2386,1,"Overload_signatures_must_all_be_optional_or_required_2386","Overload signatures must all be optional or required."),Function_overload_must_be_static:Ts(2387,1,"Function_overload_must_be_static_2387","Function overload must be static."),Function_overload_must_not_be_static:Ts(2388,1,"Function_overload_must_not_be_static_2388","Function overload must not be static."),Function_implementation_name_must_be_0:Ts(2389,1,"Function_implementation_name_must_be_0_2389","Function implementation name must be '{0}'."),Constructor_implementation_is_missing:Ts(2390,1,"Constructor_implementation_is_missing_2390","Constructor implementation is missing."),Function_implementation_is_missing_or_not_immediately_following_the_declaration:Ts(2391,1,"Function_implementation_is_missing_or_not_immediately_following_the_declaration_2391","Function implementation is missing or not immediately following the declaration."),Multiple_constructor_implementations_are_not_allowed:Ts(2392,1,"Multiple_constructor_implementations_are_not_allowed_2392","Multiple constructor implementations are not allowed."),Duplicate_function_implementation:Ts(2393,1,"Duplicate_function_implementation_2393","Duplicate function implementation."),This_overload_signature_is_not_compatible_with_its_implementation_signature:Ts(2394,1,"This_overload_signature_is_not_compatible_with_its_implementation_signature_2394","This overload signature is not compatible with its implementation signature."),Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local:Ts(2395,1,"Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local_2395","Individual declarations in merged declaration '{0}' must be all exported or all local."),Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters:Ts(2396,1,"Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters_2396","Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters."),Declaration_name_conflicts_with_built_in_global_identifier_0:Ts(2397,1,"Declaration_name_conflicts_with_built_in_global_identifier_0_2397","Declaration name conflicts with built-in global identifier '{0}'."),constructor_cannot_be_used_as_a_parameter_property_name:Ts(2398,1,"constructor_cannot_be_used_as_a_parameter_property_name_2398","'constructor' cannot be used as a parameter property name."),Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference:Ts(2399,1,"Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference_2399","Duplicate identifier '_this'. Compiler uses variable declaration '_this' to capture 'this' reference."),Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference:Ts(2400,1,"Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference_2400","Expression resolves to variable declaration '_this' that compiler uses to capture 'this' reference."),A_super_call_must_be_a_root_level_statement_within_a_constructor_of_a_derived_class_that_contains_initialized_properties_parameter_properties_or_private_identifiers:Ts(2401,1,"A_super_call_must_be_a_root_level_statement_within_a_constructor_of_a_derived_class_that_contains_in_2401","A 'super' call must be a root-level statement within a constructor of a derived class that contains initialized properties, parameter properties, or private identifiers."),Expression_resolves_to_super_that_compiler_uses_to_capture_base_class_reference:Ts(2402,1,"Expression_resolves_to_super_that_compiler_uses_to_capture_base_class_reference_2402","Expression resolves to '_super' that compiler uses to capture base class reference."),Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_type_2:Ts(2403,1,"Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_t_2403","Subsequent variable declarations must have the same type. Variable '{0}' must be of type '{1}', but here has type '{2}'."),The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation:Ts(2404,1,"The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation_2404","The left-hand side of a 'for...in' statement cannot use a type annotation."),The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any:Ts(2405,1,"The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any_2405","The left-hand side of a 'for...in' statement must be of type 'string' or 'any'."),The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access:Ts(2406,1,"The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access_2406","The left-hand side of a 'for...in' statement must be a variable or a property access."),The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_here_has_type_0:Ts(2407,1,"The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_2407","The right-hand side of a 'for...in' statement must be of type 'any', an object type or a type parameter, but here has type '{0}'."),Setters_cannot_return_a_value:Ts(2408,1,"Setters_cannot_return_a_value_2408","Setters cannot return a value."),Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class:Ts(2409,1,"Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class_2409","Return type of constructor signature must be assignable to the instance type of the class."),The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any:Ts(2410,1,"The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any_2410","The 'with' statement is not supported. All symbols in a 'with' block will have type 'any'."),Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target:Ts(2412,1,"Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefi_2412","Type '{0}' is not assignable to type '{1}' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the type of the target."),Property_0_of_type_1_is_not_assignable_to_2_index_type_3:Ts(2411,1,"Property_0_of_type_1_is_not_assignable_to_2_index_type_3_2411","Property '{0}' of type '{1}' is not assignable to '{2}' index type '{3}'."),_0_index_type_1_is_not_assignable_to_2_index_type_3:Ts(2413,1,"_0_index_type_1_is_not_assignable_to_2_index_type_3_2413","'{0}' index type '{1}' is not assignable to '{2}' index type '{3}'."),Class_name_cannot_be_0:Ts(2414,1,"Class_name_cannot_be_0_2414","Class name cannot be '{0}'."),Class_0_incorrectly_extends_base_class_1:Ts(2415,1,"Class_0_incorrectly_extends_base_class_1_2415","Class '{0}' incorrectly extends base class '{1}'."),Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2:Ts(2416,1,"Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2_2416","Property '{0}' in type '{1}' is not assignable to the same property in base type '{2}'."),Class_static_side_0_incorrectly_extends_base_class_static_side_1:Ts(2417,1,"Class_static_side_0_incorrectly_extends_base_class_static_side_1_2417","Class static side '{0}' incorrectly extends base class static side '{1}'."),Type_of_computed_property_s_value_is_0_which_is_not_assignable_to_type_1:Ts(2418,1,"Type_of_computed_property_s_value_is_0_which_is_not_assignable_to_type_1_2418","Type of computed property's value is '{0}', which is not assignable to type '{1}'."),Types_of_construct_signatures_are_incompatible:Ts(2419,1,"Types_of_construct_signatures_are_incompatible_2419","Types of construct signatures are incompatible."),Class_0_incorrectly_implements_interface_1:Ts(2420,1,"Class_0_incorrectly_implements_interface_1_2420","Class '{0}' incorrectly implements interface '{1}'."),A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_members:Ts(2422,1,"A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_memb_2422","A class can only implement an object type or intersection of object types with statically known members."),Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_accessor:Ts(2423,1,"Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_access_2423","Class '{0}' defines instance member function '{1}', but extended class '{2}' defines it as instance member accessor."),Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_function:Ts(2425,1,"Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_functi_2425","Class '{0}' defines instance member property '{1}', but extended class '{2}' defines it as instance member function."),Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_function:Ts(2426,1,"Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_functi_2426","Class '{0}' defines instance member accessor '{1}', but extended class '{2}' defines it as instance member function."),Interface_name_cannot_be_0:Ts(2427,1,"Interface_name_cannot_be_0_2427","Interface name cannot be '{0}'."),All_declarations_of_0_must_have_identical_type_parameters:Ts(2428,1,"All_declarations_of_0_must_have_identical_type_parameters_2428","All declarations of '{0}' must have identical type parameters."),Interface_0_incorrectly_extends_interface_1:Ts(2430,1,"Interface_0_incorrectly_extends_interface_1_2430","Interface '{0}' incorrectly extends interface '{1}'."),Enum_name_cannot_be_0:Ts(2431,1,"Enum_name_cannot_be_0_2431","Enum name cannot be '{0}'."),In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enum_element:Ts(2432,1,"In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enu_2432","In an enum with multiple declarations, only one declaration can omit an initializer for its first enum element."),A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merged:Ts(2433,1,"A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merg_2433","A namespace declaration cannot be in a different file from a class or function with which it is merged."),A_namespace_declaration_cannot_be_located_prior_to_a_class_or_function_with_which_it_is_merged:Ts(2434,1,"A_namespace_declaration_cannot_be_located_prior_to_a_class_or_function_with_which_it_is_merged_2434","A namespace declaration cannot be located prior to a class or function with which it is merged."),Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces:Ts(2435,1,"Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces_2435","Ambient modules cannot be nested in other modules or namespaces."),Ambient_module_declaration_cannot_specify_relative_module_name:Ts(2436,1,"Ambient_module_declaration_cannot_specify_relative_module_name_2436","Ambient module declaration cannot specify relative module name."),Module_0_is_hidden_by_a_local_declaration_with_the_same_name:Ts(2437,1,"Module_0_is_hidden_by_a_local_declaration_with_the_same_name_2437","Module '{0}' is hidden by a local declaration with the same name."),Import_name_cannot_be_0:Ts(2438,1,"Import_name_cannot_be_0_2438","Import name cannot be '{0}'."),Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relative_module_name:Ts(2439,1,"Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relati_2439","Import or export declaration in an ambient module declaration cannot reference module through relative module name."),Import_declaration_conflicts_with_local_declaration_of_0:Ts(2440,1,"Import_declaration_conflicts_with_local_declaration_of_0_2440","Import declaration conflicts with local declaration of '{0}'."),Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module:Ts(2441,1,"Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_2441","Duplicate identifier '{0}'. Compiler reserves name '{1}' in top level scope of a module."),Types_have_separate_declarations_of_a_private_property_0:Ts(2442,1,"Types_have_separate_declarations_of_a_private_property_0_2442","Types have separate declarations of a private property '{0}'."),Property_0_is_protected_but_type_1_is_not_a_class_derived_from_2:Ts(2443,1,"Property_0_is_protected_but_type_1_is_not_a_class_derived_from_2_2443","Property '{0}' is protected but type '{1}' is not a class derived from '{2}'."),Property_0_is_protected_in_type_1_but_public_in_type_2:Ts(2444,1,"Property_0_is_protected_in_type_1_but_public_in_type_2_2444","Property '{0}' is protected in type '{1}' but public in type '{2}'."),Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses:Ts(2445,1,"Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses_2445","Property '{0}' is protected and only accessible within class '{1}' and its subclasses."),Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1_This_is_an_instance_of_class_2:Ts(2446,1,"Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1_This_is_an_instance_of_cl_2446","Property '{0}' is protected and only accessible through an instance of class '{1}'. This is an instance of class '{2}'."),The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead:Ts(2447,1,"The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead_2447","The '{0}' operator is not allowed for boolean types. Consider using '{1}' instead."),Block_scoped_variable_0_used_before_its_declaration:Ts(2448,1,"Block_scoped_variable_0_used_before_its_declaration_2448","Block-scoped variable '{0}' used before its declaration."),Class_0_used_before_its_declaration:Ts(2449,1,"Class_0_used_before_its_declaration_2449","Class '{0}' used before its declaration."),Enum_0_used_before_its_declaration:Ts(2450,1,"Enum_0_used_before_its_declaration_2450","Enum '{0}' used before its declaration."),Cannot_redeclare_block_scoped_variable_0:Ts(2451,1,"Cannot_redeclare_block_scoped_variable_0_2451","Cannot redeclare block-scoped variable '{0}'."),An_enum_member_cannot_have_a_numeric_name:Ts(2452,1,"An_enum_member_cannot_have_a_numeric_name_2452","An enum member cannot have a numeric name."),Variable_0_is_used_before_being_assigned:Ts(2454,1,"Variable_0_is_used_before_being_assigned_2454","Variable '{0}' is used before being assigned."),Type_alias_0_circularly_references_itself:Ts(2456,1,"Type_alias_0_circularly_references_itself_2456","Type alias '{0}' circularly references itself."),Type_alias_name_cannot_be_0:Ts(2457,1,"Type_alias_name_cannot_be_0_2457","Type alias name cannot be '{0}'."),An_AMD_module_cannot_have_multiple_name_assignments:Ts(2458,1,"An_AMD_module_cannot_have_multiple_name_assignments_2458","An AMD module cannot have multiple name assignments."),Module_0_declares_1_locally_but_it_is_not_exported:Ts(2459,1,"Module_0_declares_1_locally_but_it_is_not_exported_2459","Module '{0}' declares '{1}' locally, but it is not exported."),Module_0_declares_1_locally_but_it_is_exported_as_2:Ts(2460,1,"Module_0_declares_1_locally_but_it_is_exported_as_2_2460","Module '{0}' declares '{1}' locally, but it is exported as '{2}'."),Type_0_is_not_an_array_type:Ts(2461,1,"Type_0_is_not_an_array_type_2461","Type '{0}' is not an array type."),A_rest_element_must_be_last_in_a_destructuring_pattern:Ts(2462,1,"A_rest_element_must_be_last_in_a_destructuring_pattern_2462","A rest element must be last in a destructuring pattern."),A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature:Ts(2463,1,"A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature_2463","A binding pattern parameter cannot be optional in an implementation signature."),A_computed_property_name_must_be_of_type_string_number_symbol_or_any:Ts(2464,1,"A_computed_property_name_must_be_of_type_string_number_symbol_or_any_2464","A computed property name must be of type 'string', 'number', 'symbol', or 'any'."),this_cannot_be_referenced_in_a_computed_property_name:Ts(2465,1,"this_cannot_be_referenced_in_a_computed_property_name_2465","'this' cannot be referenced in a computed property name."),super_cannot_be_referenced_in_a_computed_property_name:Ts(2466,1,"super_cannot_be_referenced_in_a_computed_property_name_2466","'super' cannot be referenced in a computed property name."),A_computed_property_name_cannot_reference_a_type_parameter_from_its_containing_type:Ts(2467,1,"A_computed_property_name_cannot_reference_a_type_parameter_from_its_containing_type_2467","A computed property name cannot reference a type parameter from its containing type."),Cannot_find_global_value_0:Ts(2468,1,"Cannot_find_global_value_0_2468","Cannot find global value '{0}'."),The_0_operator_cannot_be_applied_to_type_symbol:Ts(2469,1,"The_0_operator_cannot_be_applied_to_type_symbol_2469","The '{0}' operator cannot be applied to type 'symbol'."),Spread_operator_in_new_expressions_is_only_available_when_targeting_ECMAScript_5_and_higher:Ts(2472,1,"Spread_operator_in_new_expressions_is_only_available_when_targeting_ECMAScript_5_and_higher_2472","Spread operator in 'new' expressions is only available when targeting ECMAScript 5 and higher."),Enum_declarations_must_all_be_const_or_non_const:Ts(2473,1,"Enum_declarations_must_all_be_const_or_non_const_2473","Enum declarations must all be const or non-const."),const_enum_member_initializers_must_be_constant_expressions:Ts(2474,1,"const_enum_member_initializers_must_be_constant_expressions_2474","const enum member initializers must be constant expressions."),const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_import_declaration_or_export_assignment_or_type_query:Ts(2475,1,"const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_im_2475","'const' enums can only be used in property or index access expressions or the right hand side of an import declaration or export assignment or type query."),A_const_enum_member_can_only_be_accessed_using_a_string_literal:Ts(2476,1,"A_const_enum_member_can_only_be_accessed_using_a_string_literal_2476","A const enum member can only be accessed using a string literal."),const_enum_member_initializer_was_evaluated_to_a_non_finite_value:Ts(2477,1,"const_enum_member_initializer_was_evaluated_to_a_non_finite_value_2477","'const' enum member initializer was evaluated to a non-finite value."),const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN:Ts(2478,1,"const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN_2478","'const' enum member initializer was evaluated to disallowed value 'NaN'."),let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations:Ts(2480,1,"let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations_2480","'let' is not allowed to be used as a name in 'let' or 'const' declarations."),Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1:Ts(2481,1,"Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1_2481","Cannot initialize outer scoped variable '{0}' in the same scope as block scoped declaration '{1}'."),The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation:Ts(2483,1,"The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation_2483","The left-hand side of a 'for...of' statement cannot use a type annotation."),Export_declaration_conflicts_with_exported_declaration_of_0:Ts(2484,1,"Export_declaration_conflicts_with_exported_declaration_of_0_2484","Export declaration conflicts with exported declaration of '{0}'."),The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access:Ts(2487,1,"The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access_2487","The left-hand side of a 'for...of' statement must be a variable or a property access."),Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator:Ts(2488,1,"Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator_2488","Type '{0}' must have a '[Symbol.iterator]()' method that returns an iterator."),An_iterator_must_have_a_next_method:Ts(2489,1,"An_iterator_must_have_a_next_method_2489","An iterator must have a 'next()' method."),The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property:Ts(2490,1,"The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property_2490","The type returned by the '{0}()' method of an iterator must have a 'value' property."),The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern:Ts(2491,1,"The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern_2491","The left-hand side of a 'for...in' statement cannot be a destructuring pattern."),Cannot_redeclare_identifier_0_in_catch_clause:Ts(2492,1,"Cannot_redeclare_identifier_0_in_catch_clause_2492","Cannot redeclare identifier '{0}' in catch clause."),Tuple_type_0_of_length_1_has_no_element_at_index_2:Ts(2493,1,"Tuple_type_0_of_length_1_has_no_element_at_index_2_2493","Tuple type '{0}' of length '{1}' has no element at index '{2}'."),Using_a_string_in_a_for_of_statement_is_only_supported_in_ECMAScript_5_and_higher:Ts(2494,1,"Using_a_string_in_a_for_of_statement_is_only_supported_in_ECMAScript_5_and_higher_2494","Using a string in a 'for...of' statement is only supported in ECMAScript 5 and higher."),Type_0_is_not_an_array_type_or_a_string_type:Ts(2495,1,"Type_0_is_not_an_array_type_or_a_string_type_2495","Type '{0}' is not an array type or a string type."),The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES5_Consider_using_a_standard_function_expression:Ts(2496,1,"The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES5_Consider_using_a_standard_func_2496","The 'arguments' object cannot be referenced in an arrow function in ES5. Consider using a standard function expression."),This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_referencing_its_default_export:Ts(2497,1,"This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_2497","This module can only be referenced with ECMAScript imports/exports by turning on the '{0}' flag and referencing its default export."),Module_0_uses_export_and_cannot_be_used_with_export_Asterisk:Ts(2498,1,"Module_0_uses_export_and_cannot_be_used_with_export_Asterisk_2498","Module '{0}' uses 'export =' and cannot be used with 'export *'."),An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments:Ts(2499,1,"An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments_2499","An interface can only extend an identifier/qualified-name with optional type arguments."),A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments:Ts(2500,1,"A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments_2500","A class can only implement an identifier/qualified-name with optional type arguments."),A_rest_element_cannot_contain_a_binding_pattern:Ts(2501,1,"A_rest_element_cannot_contain_a_binding_pattern_2501","A rest element cannot contain a binding pattern."),_0_is_referenced_directly_or_indirectly_in_its_own_type_annotation:Ts(2502,1,"_0_is_referenced_directly_or_indirectly_in_its_own_type_annotation_2502","'{0}' is referenced directly or indirectly in its own type annotation."),Cannot_find_namespace_0:Ts(2503,1,"Cannot_find_namespace_0_2503","Cannot find namespace '{0}'."),Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator:Ts(2504,1,"Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator_2504","Type '{0}' must have a '[Symbol.asyncIterator]()' method that returns an async iterator."),A_generator_cannot_have_a_void_type_annotation:Ts(2505,1,"A_generator_cannot_have_a_void_type_annotation_2505","A generator cannot have a 'void' type annotation."),_0_is_referenced_directly_or_indirectly_in_its_own_base_expression:Ts(2506,1,"_0_is_referenced_directly_or_indirectly_in_its_own_base_expression_2506","'{0}' is referenced directly or indirectly in its own base expression."),Type_0_is_not_a_constructor_function_type:Ts(2507,1,"Type_0_is_not_a_constructor_function_type_2507","Type '{0}' is not a constructor function type."),No_base_constructor_has_the_specified_number_of_type_arguments:Ts(2508,1,"No_base_constructor_has_the_specified_number_of_type_arguments_2508","No base constructor has the specified number of type arguments."),Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_known_members:Ts(2509,1,"Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_2509","Base constructor return type '{0}' is not an object type or intersection of object types with statically known members."),Base_constructors_must_all_have_the_same_return_type:Ts(2510,1,"Base_constructors_must_all_have_the_same_return_type_2510","Base constructors must all have the same return type."),Cannot_create_an_instance_of_an_abstract_class:Ts(2511,1,"Cannot_create_an_instance_of_an_abstract_class_2511","Cannot create an instance of an abstract class."),Overload_signatures_must_all_be_abstract_or_non_abstract:Ts(2512,1,"Overload_signatures_must_all_be_abstract_or_non_abstract_2512","Overload signatures must all be abstract or non-abstract."),Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression:Ts(2513,1,"Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression_2513","Abstract method '{0}' in class '{1}' cannot be accessed via super expression."),A_tuple_type_cannot_be_indexed_with_a_negative_value:Ts(2514,1,"A_tuple_type_cannot_be_indexed_with_a_negative_value_2514","A tuple type cannot be indexed with a negative value."),Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2:Ts(2515,1,"Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2_2515","Non-abstract class '{0}' does not implement inherited abstract member {1} from class '{2}'."),All_declarations_of_an_abstract_method_must_be_consecutive:Ts(2516,1,"All_declarations_of_an_abstract_method_must_be_consecutive_2516","All declarations of an abstract method must be consecutive."),Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type:Ts(2517,1,"Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type_2517","Cannot assign an abstract constructor type to a non-abstract constructor type."),A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard:Ts(2518,1,"A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard_2518","A 'this'-based type guard is not compatible with a parameter-based type guard."),An_async_iterator_must_have_a_next_method:Ts(2519,1,"An_async_iterator_must_have_a_next_method_2519","An async iterator must have a 'next()' method."),Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions:Ts(2520,1,"Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions_2520","Duplicate identifier '{0}'. Compiler uses declaration '{1}' to support async functions."),The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES5_Consider_using_a_standard_function_or_method:Ts(2522,1,"The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES5_Consider_using_a_sta_2522","The 'arguments' object cannot be referenced in an async function or method in ES5. Consider using a standard function or method."),yield_expressions_cannot_be_used_in_a_parameter_initializer:Ts(2523,1,"yield_expressions_cannot_be_used_in_a_parameter_initializer_2523","'yield' expressions cannot be used in a parameter initializer."),await_expressions_cannot_be_used_in_a_parameter_initializer:Ts(2524,1,"await_expressions_cannot_be_used_in_a_parameter_initializer_2524","'await' expressions cannot be used in a parameter initializer."),Initializer_provides_no_value_for_this_binding_element_and_the_binding_element_has_no_default_value:Ts(2525,1,"Initializer_provides_no_value_for_this_binding_element_and_the_binding_element_has_no_default_value_2525","Initializer provides no value for this binding element and the binding element has no default value."),A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface:Ts(2526,1,"A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface_2526","A 'this' type is available only in a non-static member of a class or interface."),The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary:Ts(2527,1,"The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary_2527","The inferred type of '{0}' references an inaccessible '{1}' type. A type annotation is necessary."),A_module_cannot_have_multiple_default_exports:Ts(2528,1,"A_module_cannot_have_multiple_default_exports_2528","A module cannot have multiple default exports."),Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_functions:Ts(2529,1,"Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_func_2529","Duplicate identifier '{0}'. Compiler reserves name '{1}' in top level scope of a module containing async functions."),Property_0_is_incompatible_with_index_signature:Ts(2530,1,"Property_0_is_incompatible_with_index_signature_2530","Property '{0}' is incompatible with index signature."),Object_is_possibly_null:Ts(2531,1,"Object_is_possibly_null_2531","Object is possibly 'null'."),Object_is_possibly_undefined:Ts(2532,1,"Object_is_possibly_undefined_2532","Object is possibly 'undefined'."),Object_is_possibly_null_or_undefined:Ts(2533,1,"Object_is_possibly_null_or_undefined_2533","Object is possibly 'null' or 'undefined'."),A_function_returning_never_cannot_have_a_reachable_end_point:Ts(2534,1,"A_function_returning_never_cannot_have_a_reachable_end_point_2534","A function returning 'never' cannot have a reachable end point."),Type_0_cannot_be_used_to_index_type_1:Ts(2536,1,"Type_0_cannot_be_used_to_index_type_1_2536","Type '{0}' cannot be used to index type '{1}'."),Type_0_has_no_matching_index_signature_for_type_1:Ts(2537,1,"Type_0_has_no_matching_index_signature_for_type_1_2537","Type '{0}' has no matching index signature for type '{1}'."),Type_0_cannot_be_used_as_an_index_type:Ts(2538,1,"Type_0_cannot_be_used_as_an_index_type_2538","Type '{0}' cannot be used as an index type."),Cannot_assign_to_0_because_it_is_not_a_variable:Ts(2539,1,"Cannot_assign_to_0_because_it_is_not_a_variable_2539","Cannot assign to '{0}' because it is not a variable."),Cannot_assign_to_0_because_it_is_a_read_only_property:Ts(2540,1,"Cannot_assign_to_0_because_it_is_a_read_only_property_2540","Cannot assign to '{0}' because it is a read-only property."),Index_signature_in_type_0_only_permits_reading:Ts(2542,1,"Index_signature_in_type_0_only_permits_reading_2542","Index signature in type '{0}' only permits reading."),Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_meta_property_reference:Ts(2543,1,"Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_me_2543","Duplicate identifier '_newTarget'. Compiler uses variable declaration '_newTarget' to capture 'new.target' meta-property reference."),Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta_property_reference:Ts(2544,1,"Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta__2544","Expression resolves to variable declaration '_newTarget' that compiler uses to capture 'new.target' meta-property reference."),A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any:Ts(2545,1,"A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any_2545","A mixin class must have a constructor with a single rest parameter of type 'any[]'."),The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_property:Ts(2547,1,"The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_pro_2547","The type returned by the '{0}()' method of an async iterator must be a promise for a type with a 'value' property."),Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator:Ts(2548,1,"Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator_2548","Type '{0}' is not an array type or does not have a '[Symbol.iterator]()' method that returns an iterator."),Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator:Ts(2549,1,"Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns__2549","Type '{0}' is not an array type or a string type or does not have a '[Symbol.iterator]()' method that returns an iterator."),Property_0_does_not_exist_on_type_1_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2_or_later:Ts(2550,1,"Property_0_does_not_exist_on_type_1_Do_you_need_to_change_your_target_library_Try_changing_the_lib_c_2550","Property '{0}' does not exist on type '{1}'. Do you need to change your target library? Try changing the 'lib' compiler option to '{2}' or later."),Property_0_does_not_exist_on_type_1_Did_you_mean_2:Ts(2551,1,"Property_0_does_not_exist_on_type_1_Did_you_mean_2_2551","Property '{0}' does not exist on type '{1}'. Did you mean '{2}'?"),Cannot_find_name_0_Did_you_mean_1:Ts(2552,1,"Cannot_find_name_0_Did_you_mean_1_2552","Cannot find name '{0}'. Did you mean '{1}'?"),Computed_values_are_not_permitted_in_an_enum_with_string_valued_members:Ts(2553,1,"Computed_values_are_not_permitted_in_an_enum_with_string_valued_members_2553","Computed values are not permitted in an enum with string valued members."),Expected_0_arguments_but_got_1:Ts(2554,1,"Expected_0_arguments_but_got_1_2554","Expected {0} arguments, but got {1}."),Expected_at_least_0_arguments_but_got_1:Ts(2555,1,"Expected_at_least_0_arguments_but_got_1_2555","Expected at least {0} arguments, but got {1}."),A_spread_argument_must_either_have_a_tuple_type_or_be_passed_to_a_rest_parameter:Ts(2556,1,"A_spread_argument_must_either_have_a_tuple_type_or_be_passed_to_a_rest_parameter_2556","A spread argument must either have a tuple type or be passed to a rest parameter."),Expected_0_type_arguments_but_got_1:Ts(2558,1,"Expected_0_type_arguments_but_got_1_2558","Expected {0} type arguments, but got {1}."),Type_0_has_no_properties_in_common_with_type_1:Ts(2559,1,"Type_0_has_no_properties_in_common_with_type_1_2559","Type '{0}' has no properties in common with type '{1}'."),Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it:Ts(2560,1,"Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it_2560","Value of type '{0}' has no properties in common with type '{1}'. Did you mean to call it?"),Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_write_2:Ts(2561,1,"Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_writ_2561","Object literal may only specify known properties, but '{0}' does not exist in type '{1}'. Did you mean to write '{2}'?"),Base_class_expressions_cannot_reference_class_type_parameters:Ts(2562,1,"Base_class_expressions_cannot_reference_class_type_parameters_2562","Base class expressions cannot reference class type parameters."),The_containing_function_or_module_body_is_too_large_for_control_flow_analysis:Ts(2563,1,"The_containing_function_or_module_body_is_too_large_for_control_flow_analysis_2563","The containing function or module body is too large for control flow analysis."),Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor:Ts(2564,1,"Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor_2564","Property '{0}' has no initializer and is not definitely assigned in the constructor."),Property_0_is_used_before_being_assigned:Ts(2565,1,"Property_0_is_used_before_being_assigned_2565","Property '{0}' is used before being assigned."),A_rest_element_cannot_have_a_property_name:Ts(2566,1,"A_rest_element_cannot_have_a_property_name_2566","A rest element cannot have a property name."),Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations:Ts(2567,1,"Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations_2567","Enum declarations can only merge with namespace or other enum declarations."),Property_0_may_not_exist_on_type_1_Did_you_mean_2:Ts(2568,1,"Property_0_may_not_exist_on_type_1_Did_you_mean_2_2568","Property '{0}' may not exist on type '{1}'. Did you mean '{2}'?"),Could_not_find_name_0_Did_you_mean_1:Ts(2570,1,"Could_not_find_name_0_Did_you_mean_1_2570","Could not find name '{0}'. Did you mean '{1}'?"),Object_is_of_type_unknown:Ts(2571,1,"Object_is_of_type_unknown_2571","Object is of type 'unknown'."),A_rest_element_type_must_be_an_array_type:Ts(2574,1,"A_rest_element_type_must_be_an_array_type_2574","A rest element type must be an array type."),No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments:Ts(2575,1,"No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments_2575","No overload expects {0} arguments, but overloads do exist that expect either {1} or {2} arguments."),Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead:Ts(2576,1,"Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead_2576","Property '{0}' does not exist on type '{1}'. Did you mean to access the static member '{2}' instead?"),Return_type_annotation_circularly_references_itself:Ts(2577,1,"Return_type_annotation_circularly_references_itself_2577","Return type annotation circularly references itself."),Unused_ts_expect_error_directive:Ts(2578,1,"Unused_ts_expect_error_directive_2578","Unused '@ts-expect-error' directive."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode:Ts(2580,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashno_2580","Cannot find name '{0}'. Do you need to install type definitions for node? Try `npm i --save-dev @types/node`."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery:Ts(2581,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slash_2581","Cannot find name '{0}'. Do you need to install type definitions for jQuery? Try `npm i --save-dev @types/jquery`."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha:Ts(2582,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_type_2582","Cannot find name '{0}'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha`."),Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_1_or_later:Ts(2583,1,"Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2583","Cannot find name '{0}'. Do you need to change your target library? Try changing the 'lib' compiler option to '{1}' or later."),Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_include_dom:Ts(2584,1,"Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2584","Cannot find name '{0}'. Do you need to change your target library? Try changing the 'lib' compiler option to include 'dom'."),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_es2015_or_later:Ts(2585,1,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Do_you_need_to_change_your_target_library_2585","'{0}' only refers to a type, but is being used as a value here. Do you need to change your target library? Try changing the 'lib' compiler option to es2015 or later."),Cannot_assign_to_0_because_it_is_a_constant:Ts(2588,1,"Cannot_assign_to_0_because_it_is_a_constant_2588","Cannot assign to '{0}' because it is a constant."),Type_instantiation_is_excessively_deep_and_possibly_infinite:Ts(2589,1,"Type_instantiation_is_excessively_deep_and_possibly_infinite_2589","Type instantiation is excessively deep and possibly infinite."),Expression_produces_a_union_type_that_is_too_complex_to_represent:Ts(2590,1,"Expression_produces_a_union_type_that_is_too_complex_to_represent_2590","Expression produces a union type that is too complex to represent."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode_and_then_add_node_to_the_types_field_in_your_tsconfig:Ts(2591,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashno_2591","Cannot find name '{0}'. Do you need to install type definitions for node? Try `npm i --save-dev @types/node` and then add 'node' to the types field in your tsconfig."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery_and_then_add_jquery_to_the_types_field_in_your_tsconfig:Ts(2592,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slash_2592","Cannot find name '{0}'. Do you need to install type definitions for jQuery? Try `npm i --save-dev @types/jquery` and then add 'jquery' to the types field in your tsconfig."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha_and_then_add_jest_or_mocha_to_the_types_field_in_your_tsconfig:Ts(2593,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_type_2593","Cannot find name '{0}'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig."),This_module_is_declared_with_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag:Ts(2594,1,"This_module_is_declared_with_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag_2594","This module is declared with 'export =', and can only be used with a default import when using the '{0}' flag."),_0_can_only_be_imported_by_using_a_default_import:Ts(2595,1,"_0_can_only_be_imported_by_using_a_default_import_2595","'{0}' can only be imported by using a default import."),_0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import:Ts(2596,1,"_0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import_2596","'{0}' can only be imported by turning on the 'esModuleInterop' flag and using a default import."),_0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import:Ts(2597,1,"_0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import_2597","'{0}' can only be imported by using a 'require' call or by using a default import."),_0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import:Ts(2598,1,"_0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using__2598","'{0}' can only be imported by using a 'require' call or by turning on the 'esModuleInterop' flag and using a default import."),JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist:Ts(2602,1,"JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist_2602","JSX element implicitly has type 'any' because the global type 'JSX.Element' does not exist."),Property_0_in_type_1_is_not_assignable_to_type_2:Ts(2603,1,"Property_0_in_type_1_is_not_assignable_to_type_2_2603","Property '{0}' in type '{1}' is not assignable to type '{2}'."),JSX_element_type_0_does_not_have_any_construct_or_call_signatures:Ts(2604,1,"JSX_element_type_0_does_not_have_any_construct_or_call_signatures_2604","JSX element type '{0}' does not have any construct or call signatures."),Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property:Ts(2606,1,"Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property_2606","Property '{0}' of JSX spread attribute is not assignable to target property."),JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property:Ts(2607,1,"JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property_2607","JSX element class does not support attributes because it does not have a '{0}' property."),The_global_type_JSX_0_may_not_have_more_than_one_property:Ts(2608,1,"The_global_type_JSX_0_may_not_have_more_than_one_property_2608","The global type 'JSX.{0}' may not have more than one property."),JSX_spread_child_must_be_an_array_type:Ts(2609,1,"JSX_spread_child_must_be_an_array_type_2609","JSX spread child must be an array type."),_0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property:Ts(2610,1,"_0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property_2610","'{0}' is defined as an accessor in class '{1}', but is overridden here in '{2}' as an instance property."),_0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor:Ts(2611,1,"_0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor_2611","'{0}' is defined as a property in class '{1}', but is overridden here in '{2}' as an accessor."),Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_add_a_declare_modifier_or_remove_the_redundant_declaration:Ts(2612,1,"Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_2612","Property '{0}' will overwrite the base property in '{1}'. If this is intentional, add an initializer. Otherwise, add a 'declare' modifier or remove the redundant declaration."),Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead:Ts(2613,1,"Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead_2613","Module '{0}' has no default export. Did you mean to use 'import { {1} } from {0}' instead?"),Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead:Ts(2614,1,"Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead_2614","Module '{0}' has no exported member '{1}'. Did you mean to use 'import {1} from {0}' instead?"),Type_of_property_0_circularly_references_itself_in_mapped_type_1:Ts(2615,1,"Type_of_property_0_circularly_references_itself_in_mapped_type_1_2615","Type of property '{0}' circularly references itself in mapped type '{1}'."),_0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import:Ts(2616,1,"_0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import_2616","'{0}' can only be imported by using 'import {1} = require({2})' or a default import."),_0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import:Ts(2617,1,"_0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_us_2617","'{0}' can only be imported by using 'import {1} = require({2})' or by turning on the 'esModuleInterop' flag and using a default import."),Source_has_0_element_s_but_target_requires_1:Ts(2618,1,"Source_has_0_element_s_but_target_requires_1_2618","Source has {0} element(s) but target requires {1}."),Source_has_0_element_s_but_target_allows_only_1:Ts(2619,1,"Source_has_0_element_s_but_target_allows_only_1_2619","Source has {0} element(s) but target allows only {1}."),Target_requires_0_element_s_but_source_may_have_fewer:Ts(2620,1,"Target_requires_0_element_s_but_source_may_have_fewer_2620","Target requires {0} element(s) but source may have fewer."),Target_allows_only_0_element_s_but_source_may_have_more:Ts(2621,1,"Target_allows_only_0_element_s_but_source_may_have_more_2621","Target allows only {0} element(s) but source may have more."),Source_provides_no_match_for_required_element_at_position_0_in_target:Ts(2623,1,"Source_provides_no_match_for_required_element_at_position_0_in_target_2623","Source provides no match for required element at position {0} in target."),Source_provides_no_match_for_variadic_element_at_position_0_in_target:Ts(2624,1,"Source_provides_no_match_for_variadic_element_at_position_0_in_target_2624","Source provides no match for variadic element at position {0} in target."),Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target:Ts(2625,1,"Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target_2625","Variadic element at position {0} in source does not match element at position {1} in target."),Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target:Ts(2626,1,"Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target_2626","Type at position {0} in source is not compatible with type at position {1} in target."),Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target:Ts(2627,1,"Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target_2627","Type at positions {0} through {1} in source is not compatible with type at position {2} in target."),Cannot_assign_to_0_because_it_is_an_enum:Ts(2628,1,"Cannot_assign_to_0_because_it_is_an_enum_2628","Cannot assign to '{0}' because it is an enum."),Cannot_assign_to_0_because_it_is_a_class:Ts(2629,1,"Cannot_assign_to_0_because_it_is_a_class_2629","Cannot assign to '{0}' because it is a class."),Cannot_assign_to_0_because_it_is_a_function:Ts(2630,1,"Cannot_assign_to_0_because_it_is_a_function_2630","Cannot assign to '{0}' because it is a function."),Cannot_assign_to_0_because_it_is_a_namespace:Ts(2631,1,"Cannot_assign_to_0_because_it_is_a_namespace_2631","Cannot assign to '{0}' because it is a namespace."),Cannot_assign_to_0_because_it_is_an_import:Ts(2632,1,"Cannot_assign_to_0_because_it_is_an_import_2632","Cannot assign to '{0}' because it is an import."),JSX_property_access_expressions_cannot_include_JSX_namespace_names:Ts(2633,1,"JSX_property_access_expressions_cannot_include_JSX_namespace_names_2633","JSX property access expressions cannot include JSX namespace names"),_0_index_signatures_are_incompatible:Ts(2634,1,"_0_index_signatures_are_incompatible_2634","'{0}' index signatures are incompatible."),Type_0_has_no_signatures_for_which_the_type_argument_list_is_applicable:Ts(2635,1,"Type_0_has_no_signatures_for_which_the_type_argument_list_is_applicable_2635","Type '{0}' has no signatures for which the type argument list is applicable."),Type_0_is_not_assignable_to_type_1_as_implied_by_variance_annotation:Ts(2636,1,"Type_0_is_not_assignable_to_type_1_as_implied_by_variance_annotation_2636","Type '{0}' is not assignable to type '{1}' as implied by variance annotation."),Variance_annotations_are_only_supported_in_type_aliases_for_object_function_constructor_and_mapped_types:Ts(2637,1,"Variance_annotations_are_only_supported_in_type_aliases_for_object_function_constructor_and_mapped_t_2637","Variance annotations are only supported in type aliases for object, function, constructor, and mapped types."),Type_0_may_represent_a_primitive_value_which_is_not_permitted_as_the_right_operand_of_the_in_operator:Ts(2638,1,"Type_0_may_represent_a_primitive_value_which_is_not_permitted_as_the_right_operand_of_the_in_operato_2638","Type '{0}' may represent a primitive value, which is not permitted as the right operand of the 'in' operator."),React_components_cannot_include_JSX_namespace_names:Ts(2639,1,"React_components_cannot_include_JSX_namespace_names_2639","React components cannot include JSX namespace names"),Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity:Ts(2649,1,"Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity_2649","Cannot augment module '{0}' with value exports because it resolves to a non-module entity."),Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_and_2_more:Ts(2650,1,"Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_and__2650","Non-abstract class expression is missing implementations for the following members of '{0}': {1} and {2} more."),A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_members_defined_in_other_enums:Ts(2651,1,"A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_memb_2651","A member initializer in a enum declaration cannot reference members declared after it, including members defined in other enums."),Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_default_0_declaration_instead:Ts(2652,1,"Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_d_2652","Merged declaration '{0}' cannot include a default export declaration. Consider adding a separate 'export default {0}' declaration instead."),Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1:Ts(2653,1,"Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1_2653","Non-abstract class expression does not implement inherited abstract member '{0}' from class '{1}'."),Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2:Ts(2654,1,"Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_2654","Non-abstract class '{0}' is missing implementations for the following members of '{1}': {2}."),Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_and_3_more:Ts(2655,1,"Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_and_3_more_2655","Non-abstract class '{0}' is missing implementations for the following members of '{1}': {2} and {3} more."),Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1:Ts(2656,1,"Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_2656","Non-abstract class expression is missing implementations for the following members of '{0}': {1}."),JSX_expressions_must_have_one_parent_element:Ts(2657,1,"JSX_expressions_must_have_one_parent_element_2657","JSX expressions must have one parent element."),Type_0_provides_no_match_for_the_signature_1:Ts(2658,1,"Type_0_provides_no_match_for_the_signature_1_2658","Type '{0}' provides no match for the signature '{1}'."),super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_higher:Ts(2659,1,"super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_highe_2659","'super' is only allowed in members of object literal expressions when option 'target' is 'ES2015' or higher."),super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions:Ts(2660,1,"super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions_2660","'super' can only be referenced in members of derived classes or object literal expressions."),Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module:Ts(2661,1,"Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module_2661","Cannot export '{0}'. Only local declarations can be exported from a module."),Cannot_find_name_0_Did_you_mean_the_static_member_1_0:Ts(2662,1,"Cannot_find_name_0_Did_you_mean_the_static_member_1_0_2662","Cannot find name '{0}'. Did you mean the static member '{1}.{0}'?"),Cannot_find_name_0_Did_you_mean_the_instance_member_this_0:Ts(2663,1,"Cannot_find_name_0_Did_you_mean_the_instance_member_this_0_2663","Cannot find name '{0}'. Did you mean the instance member 'this.{0}'?"),Invalid_module_name_in_augmentation_module_0_cannot_be_found:Ts(2664,1,"Invalid_module_name_in_augmentation_module_0_cannot_be_found_2664","Invalid module name in augmentation, module '{0}' cannot be found."),Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augmented:Ts(2665,1,"Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augm_2665","Invalid module name in augmentation. Module '{0}' resolves to an untyped module at '{1}', which cannot be augmented."),Exports_and_export_assignments_are_not_permitted_in_module_augmentations:Ts(2666,1,"Exports_and_export_assignments_are_not_permitted_in_module_augmentations_2666","Exports and export assignments are not permitted in module augmentations."),Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_module:Ts(2667,1,"Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_mod_2667","Imports are not permitted in module augmentations. Consider moving them to the enclosing external module."),export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always_visible:Ts(2668,1,"export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always__2668","'export' modifier cannot be applied to ambient modules and module augmentations since they are always visible."),Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations:Ts(2669,1,"Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_2669","Augmentations for the global scope can only be directly nested in external modules or ambient module declarations."),Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambient_context:Ts(2670,1,"Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambien_2670","Augmentations for the global scope should have 'declare' modifier unless they appear in already ambient context."),Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity:Ts(2671,1,"Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity_2671","Cannot augment module '{0}' because it resolves to a non-module entity."),Cannot_assign_a_0_constructor_type_to_a_1_constructor_type:Ts(2672,1,"Cannot_assign_a_0_constructor_type_to_a_1_constructor_type_2672","Cannot assign a '{0}' constructor type to a '{1}' constructor type."),Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration:Ts(2673,1,"Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration_2673","Constructor of class '{0}' is private and only accessible within the class declaration."),Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration:Ts(2674,1,"Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration_2674","Constructor of class '{0}' is protected and only accessible within the class declaration."),Cannot_extend_a_class_0_Class_constructor_is_marked_as_private:Ts(2675,1,"Cannot_extend_a_class_0_Class_constructor_is_marked_as_private_2675","Cannot extend a class '{0}'. Class constructor is marked as private."),Accessors_must_both_be_abstract_or_non_abstract:Ts(2676,1,"Accessors_must_both_be_abstract_or_non_abstract_2676","Accessors must both be abstract or non-abstract."),A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type:Ts(2677,1,"A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type_2677","A type predicate's type must be assignable to its parameter's type."),Type_0_is_not_comparable_to_type_1:Ts(2678,1,"Type_0_is_not_comparable_to_type_1_2678","Type '{0}' is not comparable to type '{1}'."),A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void:Ts(2679,1,"A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void_2679","A function that is called with the 'new' keyword cannot have a 'this' type that is 'void'."),A_0_parameter_must_be_the_first_parameter:Ts(2680,1,"A_0_parameter_must_be_the_first_parameter_2680","A '{0}' parameter must be the first parameter."),A_constructor_cannot_have_a_this_parameter:Ts(2681,1,"A_constructor_cannot_have_a_this_parameter_2681","A constructor cannot have a 'this' parameter."),this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation:Ts(2683,1,"this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_2683","'this' implicitly has type 'any' because it does not have a type annotation."),The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1:Ts(2684,1,"The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1_2684","The 'this' context of type '{0}' is not assignable to method's 'this' of type '{1}'."),The_this_types_of_each_signature_are_incompatible:Ts(2685,1,"The_this_types_of_each_signature_are_incompatible_2685","The 'this' types of each signature are incompatible."),_0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead:Ts(2686,1,"_0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead_2686","'{0}' refers to a UMD global, but the current file is a module. Consider adding an import instead."),All_declarations_of_0_must_have_identical_modifiers:Ts(2687,1,"All_declarations_of_0_must_have_identical_modifiers_2687","All declarations of '{0}' must have identical modifiers."),Cannot_find_type_definition_file_for_0:Ts(2688,1,"Cannot_find_type_definition_file_for_0_2688","Cannot find type definition file for '{0}'."),Cannot_extend_an_interface_0_Did_you_mean_implements:Ts(2689,1,"Cannot_extend_an_interface_0_Did_you_mean_implements_2689","Cannot extend an interface '{0}'. Did you mean 'implements'?"),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0:Ts(2690,1,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0_2690","'{0}' only refers to a type, but is being used as a value here. Did you mean to use '{1} in {0}'?"),_0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible:Ts(2692,1,"_0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible_2692","'{0}' is a primitive, but '{1}' is a wrapper object. Prefer using '{0}' when possible."),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here:Ts(2693,1,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_2693","'{0}' only refers to a type, but is being used as a value here."),Namespace_0_has_no_exported_member_1:Ts(2694,1,"Namespace_0_has_no_exported_member_1_2694","Namespace '{0}' has no exported member '{1}'."),Left_side_of_comma_operator_is_unused_and_has_no_side_effects:Ts(2695,1,"Left_side_of_comma_operator_is_unused_and_has_no_side_effects_2695","Left side of comma operator is unused and has no side effects.",!0),The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead:Ts(2696,1,"The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead_2696","The 'Object' type is assignable to very few other types. Did you mean to use the 'any' type instead?"),An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:Ts(2697,1,"An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_in_2697","An async function or method must return a 'Promise'. Make sure you have a declaration for 'Promise' or include 'ES2015' in your '--lib' option."),Spread_types_may_only_be_created_from_object_types:Ts(2698,1,"Spread_types_may_only_be_created_from_object_types_2698","Spread types may only be created from object types."),Static_property_0_conflicts_with_built_in_property_Function_0_of_constructor_function_1:Ts(2699,1,"Static_property_0_conflicts_with_built_in_property_Function_0_of_constructor_function_1_2699","Static property '{0}' conflicts with built-in property 'Function.{0}' of constructor function '{1}'."),Rest_types_may_only_be_created_from_object_types:Ts(2700,1,"Rest_types_may_only_be_created_from_object_types_2700","Rest types may only be created from object types."),The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access:Ts(2701,1,"The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access_2701","The target of an object rest assignment must be a variable or a property access."),_0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here:Ts(2702,1,"_0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here_2702","'{0}' only refers to a type, but is being used as a namespace here."),The_operand_of_a_delete_operator_must_be_a_property_reference:Ts(2703,1,"The_operand_of_a_delete_operator_must_be_a_property_reference_2703","The operand of a 'delete' operator must be a property reference."),The_operand_of_a_delete_operator_cannot_be_a_read_only_property:Ts(2704,1,"The_operand_of_a_delete_operator_cannot_be_a_read_only_property_2704","The operand of a 'delete' operator cannot be a read-only property."),An_async_function_or_method_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:Ts(2705,1,"An_async_function_or_method_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_2705","An async function or method in ES5 requires the 'Promise' constructor. Make sure you have a declaration for the 'Promise' constructor or include 'ES2015' in your '--lib' option."),Required_type_parameters_may_not_follow_optional_type_parameters:Ts(2706,1,"Required_type_parameters_may_not_follow_optional_type_parameters_2706","Required type parameters may not follow optional type parameters."),Generic_type_0_requires_between_1_and_2_type_arguments:Ts(2707,1,"Generic_type_0_requires_between_1_and_2_type_arguments_2707","Generic type '{0}' requires between {1} and {2} type arguments."),Cannot_use_namespace_0_as_a_value:Ts(2708,1,"Cannot_use_namespace_0_as_a_value_2708","Cannot use namespace '{0}' as a value."),Cannot_use_namespace_0_as_a_type:Ts(2709,1,"Cannot_use_namespace_0_as_a_type_2709","Cannot use namespace '{0}' as a type."),_0_are_specified_twice_The_attribute_named_0_will_be_overwritten:Ts(2710,1,"_0_are_specified_twice_The_attribute_named_0_will_be_overwritten_2710","'{0}' are specified twice. The attribute named '{0}' will be overwritten."),A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:Ts(2711,1,"A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES20_2711","A dynamic import call returns a 'Promise'. Make sure you have a declaration for 'Promise' or include 'ES2015' in your '--lib' option."),A_dynamic_import_call_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:Ts(2712,1,"A_dynamic_import_call_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_t_2712","A dynamic import call in ES5 requires the 'Promise' constructor. Make sure you have a declaration for the 'Promise' constructor or include 'ES2015' in your '--lib' option."),Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1:Ts(2713,1,"Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_p_2713","Cannot access '{0}.{1}' because '{0}' is a type, but not a namespace. Did you mean to retrieve the type of the property '{1}' in '{0}' with '{0}[\"{1}\"]'?"),The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context:Ts(2714,1,"The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context_2714","The expression of an export assignment must be an identifier or qualified name in an ambient context."),Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor:Ts(2715,1,"Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor_2715","Abstract property '{0}' in class '{1}' cannot be accessed in the constructor."),Type_parameter_0_has_a_circular_default:Ts(2716,1,"Type_parameter_0_has_a_circular_default_2716","Type parameter '{0}' has a circular default."),Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_type_2:Ts(2717,1,"Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_t_2717","Subsequent property declarations must have the same type. Property '{0}' must be of type '{1}', but here has type '{2}'."),Duplicate_property_0:Ts(2718,1,"Duplicate_property_0_2718","Duplicate property '{0}'."),Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated:Ts(2719,1,"Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated_2719","Type '{0}' is not assignable to type '{1}'. Two different types with this name exist, but they are unrelated."),Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass:Ts(2720,1,"Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclas_2720","Class '{0}' incorrectly implements class '{1}'. Did you mean to extend '{1}' and inherit its members as a subclass?"),Cannot_invoke_an_object_which_is_possibly_null:Ts(2721,1,"Cannot_invoke_an_object_which_is_possibly_null_2721","Cannot invoke an object which is possibly 'null'."),Cannot_invoke_an_object_which_is_possibly_undefined:Ts(2722,1,"Cannot_invoke_an_object_which_is_possibly_undefined_2722","Cannot invoke an object which is possibly 'undefined'."),Cannot_invoke_an_object_which_is_possibly_null_or_undefined:Ts(2723,1,"Cannot_invoke_an_object_which_is_possibly_null_or_undefined_2723","Cannot invoke an object which is possibly 'null' or 'undefined'."),_0_has_no_exported_member_named_1_Did_you_mean_2:Ts(2724,1,"_0_has_no_exported_member_named_1_Did_you_mean_2_2724","'{0}' has no exported member named '{1}'. Did you mean '{2}'?"),Class_name_cannot_be_Object_when_targeting_ES5_with_module_0:Ts(2725,1,"Class_name_cannot_be_Object_when_targeting_ES5_with_module_0_2725","Class name cannot be 'Object' when targeting ES5 with module {0}."),Cannot_find_lib_definition_for_0:Ts(2726,1,"Cannot_find_lib_definition_for_0_2726","Cannot find lib definition for '{0}'."),Cannot_find_lib_definition_for_0_Did_you_mean_1:Ts(2727,1,"Cannot_find_lib_definition_for_0_Did_you_mean_1_2727","Cannot find lib definition for '{0}'. Did you mean '{1}'?"),_0_is_declared_here:Ts(2728,3,"_0_is_declared_here_2728","'{0}' is declared here."),Property_0_is_used_before_its_initialization:Ts(2729,1,"Property_0_is_used_before_its_initialization_2729","Property '{0}' is used before its initialization."),An_arrow_function_cannot_have_a_this_parameter:Ts(2730,1,"An_arrow_function_cannot_have_a_this_parameter_2730","An arrow function cannot have a 'this' parameter."),Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_in_String:Ts(2731,1,"Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_i_2731","Implicit conversion of a 'symbol' to a 'string' will fail at runtime. Consider wrapping this expression in 'String(...)'."),Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension:Ts(2732,1,"Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension_2732","Cannot find module '{0}'. Consider using '--resolveJsonModule' to import module with '.json' extension."),Property_0_was_also_declared_here:Ts(2733,1,"Property_0_was_also_declared_here_2733","Property '{0}' was also declared here."),Are_you_missing_a_semicolon:Ts(2734,1,"Are_you_missing_a_semicolon_2734","Are you missing a semicolon?"),Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1:Ts(2735,1,"Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1_2735","Did you mean for '{0}' to be constrained to type 'new (...args: any[]) => {1}'?"),Operator_0_cannot_be_applied_to_type_1:Ts(2736,1,"Operator_0_cannot_be_applied_to_type_1_2736","Operator '{0}' cannot be applied to type '{1}'."),BigInt_literals_are_not_available_when_targeting_lower_than_ES2020:Ts(2737,1,"BigInt_literals_are_not_available_when_targeting_lower_than_ES2020_2737","BigInt literals are not available when targeting lower than ES2020."),An_outer_value_of_this_is_shadowed_by_this_container:Ts(2738,3,"An_outer_value_of_this_is_shadowed_by_this_container_2738","An outer value of 'this' is shadowed by this container."),Type_0_is_missing_the_following_properties_from_type_1_Colon_2:Ts(2739,1,"Type_0_is_missing_the_following_properties_from_type_1_Colon_2_2739","Type '{0}' is missing the following properties from type '{1}': {2}"),Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more:Ts(2740,1,"Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more_2740","Type '{0}' is missing the following properties from type '{1}': {2}, and {3} more."),Property_0_is_missing_in_type_1_but_required_in_type_2:Ts(2741,1,"Property_0_is_missing_in_type_1_but_required_in_type_2_2741","Property '{0}' is missing in type '{1}' but required in type '{2}'."),The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_annotation_is_necessary:Ts(2742,1,"The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_a_2742","The inferred type of '{0}' cannot be named without a reference to '{1}'. This is likely not portable. A type annotation is necessary."),No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments:Ts(2743,1,"No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments_2743","No overload expects {0} type arguments, but overloads do exist that expect either {1} or {2} type arguments."),Type_parameter_defaults_can_only_reference_previously_declared_type_parameters:Ts(2744,1,"Type_parameter_defaults_can_only_reference_previously_declared_type_parameters_2744","Type parameter defaults can only reference previously declared type parameters."),This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_provided:Ts(2745,1,"This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_pr_2745","This JSX tag's '{0}' prop expects type '{1}' which requires multiple children, but only a single child was provided."),This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided:Ts(2746,1,"This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided_2746","This JSX tag's '{0}' prop expects a single child of type '{1}', but multiple children were provided."),_0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_type_of_1_is_2:Ts(2747,1,"_0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_t_2747","'{0}' components don't accept text as child elements. Text in JSX has the type 'string', but the expected type of '{1}' is '{2}'."),Cannot_access_ambient_const_enums_when_0_is_enabled:Ts(2748,1,"Cannot_access_ambient_const_enums_when_0_is_enabled_2748","Cannot access ambient const enums when '{0}' is enabled."),_0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0:Ts(2749,1,"_0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0_2749","'{0}' refers to a value, but is being used as a type here. Did you mean 'typeof {0}'?"),The_implementation_signature_is_declared_here:Ts(2750,1,"The_implementation_signature_is_declared_here_2750","The implementation signature is declared here."),Circularity_originates_in_type_at_this_location:Ts(2751,1,"Circularity_originates_in_type_at_this_location_2751","Circularity originates in type at this location."),The_first_export_default_is_here:Ts(2752,1,"The_first_export_default_is_here_2752","The first export default is here."),Another_export_default_is_here:Ts(2753,1,"Another_export_default_is_here_2753","Another export default is here."),super_may_not_use_type_arguments:Ts(2754,1,"super_may_not_use_type_arguments_2754","'super' may not use type arguments."),No_constituent_of_type_0_is_callable:Ts(2755,1,"No_constituent_of_type_0_is_callable_2755","No constituent of type '{0}' is callable."),Not_all_constituents_of_type_0_are_callable:Ts(2756,1,"Not_all_constituents_of_type_0_are_callable_2756","Not all constituents of type '{0}' are callable."),Type_0_has_no_call_signatures:Ts(2757,1,"Type_0_has_no_call_signatures_2757","Type '{0}' has no call signatures."),Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_other:Ts(2758,1,"Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_2758","Each member of the union type '{0}' has signatures, but none of those signatures are compatible with each other."),No_constituent_of_type_0_is_constructable:Ts(2759,1,"No_constituent_of_type_0_is_constructable_2759","No constituent of type '{0}' is constructable."),Not_all_constituents_of_type_0_are_constructable:Ts(2760,1,"Not_all_constituents_of_type_0_are_constructable_2760","Not all constituents of type '{0}' are constructable."),Type_0_has_no_construct_signatures:Ts(2761,1,"Type_0_has_no_construct_signatures_2761","Type '{0}' has no construct signatures."),Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_with_each_other:Ts(2762,1,"Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_2762","Each member of the union type '{0}' has construct signatures, but none of those signatures are compatible with each other."),Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_send_0:Ts(2763,1,"Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_s_2763","Cannot iterate value because the 'next' method of its iterator expects type '{1}', but for-of will always send '{0}'."),Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_always_send_0:Ts(2764,1,"Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_al_2764","Cannot iterate value because the 'next' method of its iterator expects type '{1}', but array spread will always send '{0}'."),Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring_will_always_send_0:Ts(2765,1,"Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring__2765","Cannot iterate value because the 'next' method of its iterator expects type '{1}', but array destructuring will always send '{0}'."),Cannot_delegate_iteration_to_value_because_the_next_method_of_its_iterator_expects_type_1_but_the_containing_generator_will_always_send_0:Ts(2766,1,"Cannot_delegate_iteration_to_value_because_the_next_method_of_its_iterator_expects_type_1_but_the_co_2766","Cannot delegate iteration to value because the 'next' method of its iterator expects type '{1}', but the containing generator will always send '{0}'."),The_0_property_of_an_iterator_must_be_a_method:Ts(2767,1,"The_0_property_of_an_iterator_must_be_a_method_2767","The '{0}' property of an iterator must be a method."),The_0_property_of_an_async_iterator_must_be_a_method:Ts(2768,1,"The_0_property_of_an_async_iterator_must_be_a_method_2768","The '{0}' property of an async iterator must be a method."),No_overload_matches_this_call:Ts(2769,1,"No_overload_matches_this_call_2769","No overload matches this call."),The_last_overload_gave_the_following_error:Ts(2770,1,"The_last_overload_gave_the_following_error_2770","The last overload gave the following error."),The_last_overload_is_declared_here:Ts(2771,1,"The_last_overload_is_declared_here_2771","The last overload is declared here."),Overload_0_of_1_2_gave_the_following_error:Ts(2772,1,"Overload_0_of_1_2_gave_the_following_error_2772","Overload {0} of {1}, '{2}', gave the following error."),Did_you_forget_to_use_await:Ts(2773,1,"Did_you_forget_to_use_await_2773","Did you forget to use 'await'?"),This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_instead:Ts(2774,1,"This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_2774","This condition will always return true since this function is always defined. Did you mean to call it instead?"),Assertions_require_every_name_in_the_call_target_to_be_declared_with_an_explicit_type_annotation:Ts(2775,1,"Assertions_require_every_name_in_the_call_target_to_be_declared_with_an_explicit_type_annotation_2775","Assertions require every name in the call target to be declared with an explicit type annotation."),Assertions_require_the_call_target_to_be_an_identifier_or_qualified_name:Ts(2776,1,"Assertions_require_the_call_target_to_be_an_identifier_or_qualified_name_2776","Assertions require the call target to be an identifier or qualified name."),The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access:Ts(2777,1,"The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access_2777","The operand of an increment or decrement operator may not be an optional property access."),The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access:Ts(2778,1,"The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access_2778","The target of an object rest assignment may not be an optional property access."),The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access:Ts(2779,1,"The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access_2779","The left-hand side of an assignment expression may not be an optional property access."),The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access:Ts(2780,1,"The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access_2780","The left-hand side of a 'for...in' statement may not be an optional property access."),The_left_hand_side_of_a_for_of_statement_may_not_be_an_optional_property_access:Ts(2781,1,"The_left_hand_side_of_a_for_of_statement_may_not_be_an_optional_property_access_2781","The left-hand side of a 'for...of' statement may not be an optional property access."),_0_needs_an_explicit_type_annotation:Ts(2782,3,"_0_needs_an_explicit_type_annotation_2782","'{0}' needs an explicit type annotation."),_0_is_specified_more_than_once_so_this_usage_will_be_overwritten:Ts(2783,1,"_0_is_specified_more_than_once_so_this_usage_will_be_overwritten_2783","'{0}' is specified more than once, so this usage will be overwritten."),get_and_set_accessors_cannot_declare_this_parameters:Ts(2784,1,"get_and_set_accessors_cannot_declare_this_parameters_2784","'get' and 'set' accessors cannot declare 'this' parameters."),This_spread_always_overwrites_this_property:Ts(2785,1,"This_spread_always_overwrites_this_property_2785","This spread always overwrites this property."),_0_cannot_be_used_as_a_JSX_component:Ts(2786,1,"_0_cannot_be_used_as_a_JSX_component_2786","'{0}' cannot be used as a JSX component."),Its_return_type_0_is_not_a_valid_JSX_element:Ts(2787,1,"Its_return_type_0_is_not_a_valid_JSX_element_2787","Its return type '{0}' is not a valid JSX element."),Its_instance_type_0_is_not_a_valid_JSX_element:Ts(2788,1,"Its_instance_type_0_is_not_a_valid_JSX_element_2788","Its instance type '{0}' is not a valid JSX element."),Its_element_type_0_is_not_a_valid_JSX_element:Ts(2789,1,"Its_element_type_0_is_not_a_valid_JSX_element_2789","Its element type '{0}' is not a valid JSX element."),The_operand_of_a_delete_operator_must_be_optional:Ts(2790,1,"The_operand_of_a_delete_operator_must_be_optional_2790","The operand of a 'delete' operator must be optional."),Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_later:Ts(2791,1,"Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_lat_2791","Exponentiation cannot be performed on 'bigint' values unless the 'target' option is set to 'es2016' or later."),Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_nodenext_or_to_add_aliases_to_the_paths_option:Ts(2792,1,"Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_nodenext_or_to_add_aliases_t_2792","Cannot find module '{0}'. Did you mean to set the 'moduleResolution' option to 'nodenext', or to add aliases to the 'paths' option?"),The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_are_not_externally_visible:Ts(2793,1,"The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_2793","The call would have succeeded against this implementation, but implementation signatures of overloads are not externally visible."),Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise:Ts(2794,1,"Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise_2794","Expected {0} arguments, but got {1}. Did you forget to include 'void' in your type argument to 'Promise'?"),The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types:Ts(2795,1,"The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types_2795","The 'intrinsic' keyword can only be used to declare compiler provided intrinsic types."),It_is_likely_that_you_are_missing_a_comma_to_separate_these_two_template_expressions_They_form_a_tagged_template_expression_which_cannot_be_invoked:Ts(2796,1,"It_is_likely_that_you_are_missing_a_comma_to_separate_these_two_template_expressions_They_form_a_tag_2796","It is likely that you are missing a comma to separate these two template expressions. They form a tagged template expression which cannot be invoked."),A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_be_declared_abstract:Ts(2797,1,"A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_2797","A mixin class that extends from a type variable containing an abstract construct signature must also be declared 'abstract'."),The_declaration_was_marked_as_deprecated_here:Ts(2798,1,"The_declaration_was_marked_as_deprecated_here_2798","The declaration was marked as deprecated here."),Type_produces_a_tuple_type_that_is_too_large_to_represent:Ts(2799,1,"Type_produces_a_tuple_type_that_is_too_large_to_represent_2799","Type produces a tuple type that is too large to represent."),Expression_produces_a_tuple_type_that_is_too_large_to_represent:Ts(2800,1,"Expression_produces_a_tuple_type_that_is_too_large_to_represent_2800","Expression produces a tuple type that is too large to represent."),This_condition_will_always_return_true_since_this_0_is_always_defined:Ts(2801,1,"This_condition_will_always_return_true_since_this_0_is_always_defined_2801","This condition will always return true since this '{0}' is always defined."),Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher:Ts(2802,1,"Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es201_2802","Type '{0}' can only be iterated through when using the '--downlevelIteration' flag or with a '--target' of 'es2015' or higher."),Cannot_assign_to_private_method_0_Private_methods_are_not_writable:Ts(2803,1,"Cannot_assign_to_private_method_0_Private_methods_are_not_writable_2803","Cannot assign to private method '{0}'. Private methods are not writable."),Duplicate_identifier_0_Static_and_instance_elements_cannot_share_the_same_private_name:Ts(2804,1,"Duplicate_identifier_0_Static_and_instance_elements_cannot_share_the_same_private_name_2804","Duplicate identifier '{0}'. Static and instance elements cannot share the same private name."),Private_accessor_was_defined_without_a_getter:Ts(2806,1,"Private_accessor_was_defined_without_a_getter_2806","Private accessor was defined without a getter."),This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_one_in_0_Consider_upgrading_your_version_of_0:Ts(2807,1,"This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_o_2807","This syntax requires an imported helper named '{1}' with {2} parameters, which is not compatible with the one in '{0}'. Consider upgrading your version of '{0}'."),A_get_accessor_must_be_at_least_as_accessible_as_the_setter:Ts(2808,1,"A_get_accessor_must_be_at_least_as_accessible_as_the_setter_2808","A get accessor must be at least as accessible as the setter"),Declaration_or_statement_expected_This_follows_a_block_of_statements_so_if_you_intended_to_write_a_destructuring_assignment_you_might_need_to_wrap_the_whole_assignment_in_parentheses:Ts(2809,1,"Declaration_or_statement_expected_This_follows_a_block_of_statements_so_if_you_intended_to_write_a_d_2809","Declaration or statement expected. This '=' follows a block of statements, so if you intended to write a destructuring assignment, you might need to wrap the whole assignment in parentheses."),Expected_1_argument_but_got_0_new_Promise_needs_a_JSDoc_hint_to_produce_a_resolve_that_can_be_called_without_arguments:Ts(2810,1,"Expected_1_argument_but_got_0_new_Promise_needs_a_JSDoc_hint_to_produce_a_resolve_that_can_be_called_2810","Expected 1 argument, but got 0. 'new Promise()' needs a JSDoc hint to produce a 'resolve' that can be called without arguments."),Initializer_for_property_0:Ts(2811,1,"Initializer_for_property_0_2811","Initializer for property '{0}'"),Property_0_does_not_exist_on_type_1_Try_changing_the_lib_compiler_option_to_include_dom:Ts(2812,1,"Property_0_does_not_exist_on_type_1_Try_changing_the_lib_compiler_option_to_include_dom_2812","Property '{0}' does not exist on type '{1}'. Try changing the 'lib' compiler option to include 'dom'."),Class_declaration_cannot_implement_overload_list_for_0:Ts(2813,1,"Class_declaration_cannot_implement_overload_list_for_0_2813","Class declaration cannot implement overload list for '{0}'."),Function_with_bodies_can_only_merge_with_classes_that_are_ambient:Ts(2814,1,"Function_with_bodies_can_only_merge_with_classes_that_are_ambient_2814","Function with bodies can only merge with classes that are ambient."),arguments_cannot_be_referenced_in_property_initializers:Ts(2815,1,"arguments_cannot_be_referenced_in_property_initializers_2815","'arguments' cannot be referenced in property initializers."),Cannot_use_this_in_a_static_property_initializer_of_a_decorated_class:Ts(2816,1,"Cannot_use_this_in_a_static_property_initializer_of_a_decorated_class_2816","Cannot use 'this' in a static property initializer of a decorated class."),Property_0_has_no_initializer_and_is_not_definitely_assigned_in_a_class_static_block:Ts(2817,1,"Property_0_has_no_initializer_and_is_not_definitely_assigned_in_a_class_static_block_2817","Property '{0}' has no initializer and is not definitely assigned in a class static block."),Duplicate_identifier_0_Compiler_reserves_name_1_when_emitting_super_references_in_static_initializers:Ts(2818,1,"Duplicate_identifier_0_Compiler_reserves_name_1_when_emitting_super_references_in_static_initializer_2818","Duplicate identifier '{0}'. Compiler reserves name '{1}' when emitting 'super' references in static initializers."),Namespace_name_cannot_be_0:Ts(2819,1,"Namespace_name_cannot_be_0_2819","Namespace name cannot be '{0}'."),Type_0_is_not_assignable_to_type_1_Did_you_mean_2:Ts(2820,1,"Type_0_is_not_assignable_to_type_1_Did_you_mean_2_2820","Type '{0}' is not assignable to type '{1}'. Did you mean '{2}'?"),Import_assertions_are_only_supported_when_the_module_option_is_set_to_esnext_nodenext_or_preserve:Ts(2821,1,"Import_assertions_are_only_supported_when_the_module_option_is_set_to_esnext_nodenext_or_preserve_2821","Import assertions are only supported when the '--module' option is set to 'esnext', 'nodenext', or 'preserve'."),Import_assertions_cannot_be_used_with_type_only_imports_or_exports:Ts(2822,1,"Import_assertions_cannot_be_used_with_type_only_imports_or_exports_2822","Import assertions cannot be used with type-only imports or exports."),Import_attributes_are_only_supported_when_the_module_option_is_set_to_esnext_nodenext_or_preserve:Ts(2823,1,"Import_attributes_are_only_supported_when_the_module_option_is_set_to_esnext_nodenext_or_preserve_2823","Import attributes are only supported when the '--module' option is set to 'esnext', 'nodenext', or 'preserve'."),Cannot_find_namespace_0_Did_you_mean_1:Ts(2833,1,"Cannot_find_namespace_0_Did_you_mean_1_2833","Cannot find namespace '{0}'. Did you mean '{1}'?"),Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_node16_or_nodenext_Consider_adding_an_extension_to_the_import_path:Ts(2834,1,"Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_n_2834","Relative import paths need explicit file extensions in ECMAScript imports when '--moduleResolution' is 'node16' or 'nodenext'. Consider adding an extension to the import path."),Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_node16_or_nodenext_Did_you_mean_0:Ts(2835,1,"Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_n_2835","Relative import paths need explicit file extensions in ECMAScript imports when '--moduleResolution' is 'node16' or 'nodenext'. Did you mean '{0}'?"),Import_assertions_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls:Ts(2836,1,"Import_assertions_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls_2836","Import assertions are not allowed on statements that compile to CommonJS 'require' calls."),Import_assertion_values_must_be_string_literal_expressions:Ts(2837,1,"Import_assertion_values_must_be_string_literal_expressions_2837","Import assertion values must be string literal expressions."),All_declarations_of_0_must_have_identical_constraints:Ts(2838,1,"All_declarations_of_0_must_have_identical_constraints_2838","All declarations of '{0}' must have identical constraints."),This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value:Ts(2839,1,"This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value_2839","This condition will always return '{0}' since JavaScript compares objects by reference, not value."),An_interface_cannot_extend_a_primitive_type_like_0_It_can_only_extend_other_named_object_types:Ts(2840,1,"An_interface_cannot_extend_a_primitive_type_like_0_It_can_only_extend_other_named_object_types_2840","An interface cannot extend a primitive type like '{0}'. It can only extend other named object types."),_0_is_an_unused_renaming_of_1_Did_you_intend_to_use_it_as_a_type_annotation:Ts(2842,1,"_0_is_an_unused_renaming_of_1_Did_you_intend_to_use_it_as_a_type_annotation_2842","'{0}' is an unused renaming of '{1}'. Did you intend to use it as a type annotation?"),We_can_only_write_a_type_for_0_by_adding_a_type_for_the_entire_parameter_here:Ts(2843,1,"We_can_only_write_a_type_for_0_by_adding_a_type_for_the_entire_parameter_here_2843","We can only write a type for '{0}' by adding a type for the entire parameter here."),Type_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:Ts(2844,1,"Type_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor_2844","Type of instance member variable '{0}' cannot reference identifier '{1}' declared in the constructor."),This_condition_will_always_return_0:Ts(2845,1,"This_condition_will_always_return_0_2845","This condition will always return '{0}'."),A_declaration_file_cannot_be_imported_without_import_type_Did_you_mean_to_import_an_implementation_file_0_instead:Ts(2846,1,"A_declaration_file_cannot_be_imported_without_import_type_Did_you_mean_to_import_an_implementation_f_2846","A declaration file cannot be imported without 'import type'. Did you mean to import an implementation file '{0}' instead?"),The_right_hand_side_of_an_instanceof_expression_must_not_be_an_instantiation_expression:Ts(2848,1,"The_right_hand_side_of_an_instanceof_expression_must_not_be_an_instantiation_expression_2848","The right-hand side of an 'instanceof' expression must not be an instantiation expression."),Target_signature_provides_too_few_arguments_Expected_0_or_more_but_got_1:Ts(2849,1,"Target_signature_provides_too_few_arguments_Expected_0_or_more_but_got_1_2849","Target signature provides too few arguments. Expected {0} or more, but got {1}."),The_initializer_of_a_using_declaration_must_be_either_an_object_with_a_Symbol_dispose_method_or_be_null_or_undefined:Ts(2850,1,"The_initializer_of_a_using_declaration_must_be_either_an_object_with_a_Symbol_dispose_method_or_be_n_2850","The initializer of a 'using' declaration must be either an object with a '[Symbol.dispose]()' method, or be 'null' or 'undefined'."),The_initializer_of_an_await_using_declaration_must_be_either_an_object_with_a_Symbol_asyncDispose_or_Symbol_dispose_method_or_be_null_or_undefined:Ts(2851,1,"The_initializer_of_an_await_using_declaration_must_be_either_an_object_with_a_Symbol_asyncDispose_or_2851","The initializer of an 'await using' declaration must be either an object with a '[Symbol.asyncDispose]()' or '[Symbol.dispose]()' method, or be 'null' or 'undefined'."),await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:Ts(2852,1,"await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_2852","'await using' statements are only allowed within async functions and at the top levels of modules."),await_using_statements_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module:Ts(2853,1,"await_using_statements_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_th_2853","'await using' statements are only allowed at the top level of a file when that file is a module, but this file has no imports or exports. Consider adding an empty 'export {}' to make this file a module."),Top_level_await_using_statements_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:Ts(2854,1,"Top_level_await_using_statements_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_sys_2854","Top-level 'await using' statements are only allowed when the 'module' option is set to 'es2022', 'esnext', 'system', 'node16', 'nodenext', or 'preserve', and the 'target' option is set to 'es2017' or higher."),Class_field_0_defined_by_the_parent_class_is_not_accessible_in_the_child_class_via_super:Ts(2855,1,"Class_field_0_defined_by_the_parent_class_is_not_accessible_in_the_child_class_via_super_2855","Class field '{0}' defined by the parent class is not accessible in the child class via super."),Import_attributes_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls:Ts(2856,1,"Import_attributes_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls_2856","Import attributes are not allowed on statements that compile to CommonJS 'require' calls."),Import_attributes_cannot_be_used_with_type_only_imports_or_exports:Ts(2857,1,"Import_attributes_cannot_be_used_with_type_only_imports_or_exports_2857","Import attributes cannot be used with type-only imports or exports."),Import_attribute_values_must_be_string_literal_expressions:Ts(2858,1,"Import_attribute_values_must_be_string_literal_expressions_2858","Import attribute values must be string literal expressions."),Excessive_complexity_comparing_types_0_and_1:Ts(2859,1,"Excessive_complexity_comparing_types_0_and_1_2859","Excessive complexity comparing types '{0}' and '{1}'."),The_left_hand_side_of_an_instanceof_expression_must_be_assignable_to_the_first_argument_of_the_right_hand_side_s_Symbol_hasInstance_method:Ts(2860,1,"The_left_hand_side_of_an_instanceof_expression_must_be_assignable_to_the_first_argument_of_the_right_2860","The left-hand side of an 'instanceof' expression must be assignable to the first argument of the right-hand side's '[Symbol.hasInstance]' method."),An_object_s_Symbol_hasInstance_method_must_return_a_boolean_value_for_it_to_be_used_on_the_right_hand_side_of_an_instanceof_expression:Ts(2861,1,"An_object_s_Symbol_hasInstance_method_must_return_a_boolean_value_for_it_to_be_used_on_the_right_han_2861","An object's '[Symbol.hasInstance]' method must return a boolean value for it to be used on the right-hand side of an 'instanceof' expression."),Type_0_is_generic_and_can_only_be_indexed_for_reading:Ts(2862,1,"Type_0_is_generic_and_can_only_be_indexed_for_reading_2862","Type '{0}' is generic and can only be indexed for reading."),A_class_cannot_extend_a_primitive_type_like_0_Classes_can_only_extend_constructable_values:Ts(2863,1,"A_class_cannot_extend_a_primitive_type_like_0_Classes_can_only_extend_constructable_values_2863","A class cannot extend a primitive type like '{0}'. Classes can only extend constructable values."),A_class_cannot_implement_a_primitive_type_like_0_It_can_only_implement_other_named_object_types:Ts(2864,1,"A_class_cannot_implement_a_primitive_type_like_0_It_can_only_implement_other_named_object_types_2864","A class cannot implement a primitive type like '{0}'. It can only implement other named object types."),Import_0_conflicts_with_local_value_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled:Ts(2865,1,"Import_0_conflicts_with_local_value_so_must_be_declared_with_a_type_only_import_when_isolatedModules_2865","Import '{0}' conflicts with local value, so must be declared with a type-only import when 'isolatedModules' is enabled."),Import_0_conflicts_with_global_value_used_in_this_file_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled:Ts(2866,1,"Import_0_conflicts_with_global_value_used_in_this_file_so_must_be_declared_with_a_type_only_import_w_2866","Import '{0}' conflicts with global value used in this file, so must be declared with a type-only import when 'isolatedModules' is enabled."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun:Ts(2867,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun_2867","Cannot find name '{0}'. Do you need to install type definitions for Bun? Try `npm i --save-dev @types/bun`."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun_and_then_add_bun_to_the_types_field_in_your_tsconfig:Ts(2868,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun_2868","Cannot find name '{0}'. Do you need to install type definitions for Bun? Try `npm i --save-dev @types/bun` and then add 'bun' to the types field in your tsconfig."),Import_declaration_0_is_using_private_name_1:Ts(4e3,1,"Import_declaration_0_is_using_private_name_1_4000","Import declaration '{0}' is using private name '{1}'."),Type_parameter_0_of_exported_class_has_or_is_using_private_name_1:Ts(4002,1,"Type_parameter_0_of_exported_class_has_or_is_using_private_name_1_4002","Type parameter '{0}' of exported class has or is using private name '{1}'."),Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1:Ts(4004,1,"Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1_4004","Type parameter '{0}' of exported interface has or is using private name '{1}'."),Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1:Ts(4006,1,"Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1_4006","Type parameter '{0}' of constructor signature from exported interface has or is using private name '{1}'."),Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1:Ts(4008,1,"Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1_4008","Type parameter '{0}' of call signature from exported interface has or is using private name '{1}'."),Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:Ts(4010,1,"Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1_4010","Type parameter '{0}' of public static method from exported class has or is using private name '{1}'."),Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:Ts(4012,1,"Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1_4012","Type parameter '{0}' of public method from exported class has or is using private name '{1}'."),Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1:Ts(4014,1,"Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1_4014","Type parameter '{0}' of method from exported interface has or is using private name '{1}'."),Type_parameter_0_of_exported_function_has_or_is_using_private_name_1:Ts(4016,1,"Type_parameter_0_of_exported_function_has_or_is_using_private_name_1_4016","Type parameter '{0}' of exported function has or is using private name '{1}'."),Implements_clause_of_exported_class_0_has_or_is_using_private_name_1:Ts(4019,1,"Implements_clause_of_exported_class_0_has_or_is_using_private_name_1_4019","Implements clause of exported class '{0}' has or is using private name '{1}'."),extends_clause_of_exported_class_0_has_or_is_using_private_name_1:Ts(4020,1,"extends_clause_of_exported_class_0_has_or_is_using_private_name_1_4020","'extends' clause of exported class '{0}' has or is using private name '{1}'."),extends_clause_of_exported_class_has_or_is_using_private_name_0:Ts(4021,1,"extends_clause_of_exported_class_has_or_is_using_private_name_0_4021","'extends' clause of exported class has or is using private name '{0}'."),extends_clause_of_exported_interface_0_has_or_is_using_private_name_1:Ts(4022,1,"extends_clause_of_exported_interface_0_has_or_is_using_private_name_1_4022","'extends' clause of exported interface '{0}' has or is using private name '{1}'."),Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Ts(4023,1,"Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4023","Exported variable '{0}' has or is using name '{1}' from external module {2} but cannot be named."),Exported_variable_0_has_or_is_using_name_1_from_private_module_2:Ts(4024,1,"Exported_variable_0_has_or_is_using_name_1_from_private_module_2_4024","Exported variable '{0}' has or is using name '{1}' from private module '{2}'."),Exported_variable_0_has_or_is_using_private_name_1:Ts(4025,1,"Exported_variable_0_has_or_is_using_private_name_1_4025","Exported variable '{0}' has or is using private name '{1}'."),Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Ts(4026,1,"Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot__4026","Public static property '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Ts(4027,1,"Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4027","Public static property '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_static_property_0_of_exported_class_has_or_is_using_private_name_1:Ts(4028,1,"Public_static_property_0_of_exported_class_has_or_is_using_private_name_1_4028","Public static property '{0}' of exported class has or is using private name '{1}'."),Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Ts(4029,1,"Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_name_4029","Public property '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Ts(4030,1,"Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4030","Public property '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_property_0_of_exported_class_has_or_is_using_private_name_1:Ts(4031,1,"Public_property_0_of_exported_class_has_or_is_using_private_name_1_4031","Public property '{0}' of exported class has or is using private name '{1}'."),Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:Ts(4032,1,"Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2_4032","Property '{0}' of exported interface has or is using name '{1}' from private module '{2}'."),Property_0_of_exported_interface_has_or_is_using_private_name_1:Ts(4033,1,"Property_0_of_exported_interface_has_or_is_using_private_name_1_4033","Property '{0}' of exported interface has or is using private name '{1}'."),Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:Ts(4034,1,"Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_mod_4034","Parameter type of public static setter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1:Ts(4035,1,"Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1_4035","Parameter type of public static setter '{0}' from exported class has or is using private name '{1}'."),Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:Ts(4036,1,"Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2_4036","Parameter type of public setter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1:Ts(4037,1,"Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1_4037","Parameter type of public setter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Ts(4038,1,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_modul_4038","Return type of public static getter '{0}' from exported class has or is using name '{1}' from external module {2} but cannot be named."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:Ts(4039,1,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_4039","Return type of public static getter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1:Ts(4040,1,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1_4040","Return type of public static getter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Ts(4041,1,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_4041","Return type of public getter '{0}' from exported class has or is using name '{1}' from external module {2} but cannot be named."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:Ts(4042,1,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2_4042","Return type of public getter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1:Ts(4043,1,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1_4043","Return type of public getter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:Ts(4044,1,"Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_mod_4044","Return type of constructor signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0:Ts(4045,1,"Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0_4045","Return type of constructor signature from exported interface has or is using private name '{0}'."),Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:Ts(4046,1,"Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4046","Return type of call signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0:Ts(4047,1,"Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0_4047","Return type of call signature from exported interface has or is using private name '{0}'."),Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:Ts(4048,1,"Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4048","Return type of index signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0:Ts(4049,1,"Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0_4049","Return type of index signature from exported interface has or is using private name '{0}'."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:Ts(4050,1,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module__4050","Return type of public static method from exported class has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:Ts(4051,1,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1_4051","Return type of public static method from exported class has or is using name '{0}' from private module '{1}'."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0:Ts(4052,1,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0_4052","Return type of public static method from exported class has or is using private name '{0}'."),Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:Ts(4053,1,"Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_c_4053","Return type of public method from exported class has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:Ts(4054,1,"Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1_4054","Return type of public method from exported class has or is using name '{0}' from private module '{1}'."),Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0:Ts(4055,1,"Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0_4055","Return type of public method from exported class has or is using private name '{0}'."),Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1:Ts(4056,1,"Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4056","Return type of method from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0:Ts(4057,1,"Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0_4057","Return type of method from exported interface has or is using private name '{0}'."),Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:Ts(4058,1,"Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named_4058","Return type of exported function has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1:Ts(4059,1,"Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1_4059","Return type of exported function has or is using name '{0}' from private module '{1}'."),Return_type_of_exported_function_has_or_is_using_private_name_0:Ts(4060,1,"Return_type_of_exported_function_has_or_is_using_private_name_0_4060","Return type of exported function has or is using private name '{0}'."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Ts(4061,1,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_can_4061","Parameter '{0}' of constructor from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2:Ts(4062,1,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2_4062","Parameter '{0}' of constructor from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1:Ts(4063,1,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1_4063","Parameter '{0}' of constructor from exported class has or is using private name '{1}'."),Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:Ts(4064,1,"Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_mod_4064","Parameter '{0}' of constructor signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1:Ts(4065,1,"Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1_4065","Parameter '{0}' of constructor signature from exported interface has or is using private name '{1}'."),Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:Ts(4066,1,"Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4066","Parameter '{0}' of call signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1:Ts(4067,1,"Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1_4067","Parameter '{0}' of call signature from exported interface has or is using private name '{1}'."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Ts(4068,1,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module__4068","Parameter '{0}' of public static method from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:Ts(4069,1,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2_4069","Parameter '{0}' of public static method from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:Ts(4070,1,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1_4070","Parameter '{0}' of public static method from exported class has or is using private name '{1}'."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Ts(4071,1,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_c_4071","Parameter '{0}' of public method from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:Ts(4072,1,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2_4072","Parameter '{0}' of public method from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:Ts(4073,1,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1_4073","Parameter '{0}' of public method from exported class has or is using private name '{1}'."),Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2:Ts(4074,1,"Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4074","Parameter '{0}' of method from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1:Ts(4075,1,"Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1_4075","Parameter '{0}' of method from exported interface has or is using private name '{1}'."),Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Ts(4076,1,"Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4076","Parameter '{0}' of exported function has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2:Ts(4077,1,"Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2_4077","Parameter '{0}' of exported function has or is using name '{1}' from private module '{2}'."),Parameter_0_of_exported_function_has_or_is_using_private_name_1:Ts(4078,1,"Parameter_0_of_exported_function_has_or_is_using_private_name_1_4078","Parameter '{0}' of exported function has or is using private name '{1}'."),Exported_type_alias_0_has_or_is_using_private_name_1:Ts(4081,1,"Exported_type_alias_0_has_or_is_using_private_name_1_4081","Exported type alias '{0}' has or is using private name '{1}'."),Default_export_of_the_module_has_or_is_using_private_name_0:Ts(4082,1,"Default_export_of_the_module_has_or_is_using_private_name_0_4082","Default export of the module has or is using private name '{0}'."),Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1:Ts(4083,1,"Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1_4083","Type parameter '{0}' of exported type alias has or is using private name '{1}'."),Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2:Ts(4084,1,"Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2_4084","Exported type alias '{0}' has or is using private name '{1}' from module {2}."),Extends_clause_for_inferred_type_0_has_or_is_using_private_name_1:Ts(4085,1,"Extends_clause_for_inferred_type_0_has_or_is_using_private_name_1_4085","Extends clause for inferred type '{0}' has or is using private name '{1}'."),Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:Ts(4091,1,"Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4091","Parameter '{0}' of index signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1:Ts(4092,1,"Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1_4092","Parameter '{0}' of index signature from exported interface has or is using private name '{1}'."),Property_0_of_exported_class_expression_may_not_be_private_or_protected:Ts(4094,1,"Property_0_of_exported_class_expression_may_not_be_private_or_protected_4094","Property '{0}' of exported class expression may not be private or protected."),Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Ts(4095,1,"Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_4095","Public static method '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Ts(4096,1,"Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4096","Public static method '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_static_method_0_of_exported_class_has_or_is_using_private_name_1:Ts(4097,1,"Public_static_method_0_of_exported_class_has_or_is_using_private_name_1_4097","Public static method '{0}' of exported class has or is using private name '{1}'."),Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Ts(4098,1,"Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4098","Public method '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:Ts(4099,1,"Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4099","Public method '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_method_0_of_exported_class_has_or_is_using_private_name_1:Ts(4100,1,"Public_method_0_of_exported_class_has_or_is_using_private_name_1_4100","Public method '{0}' of exported class has or is using private name '{1}'."),Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:Ts(4101,1,"Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2_4101","Method '{0}' of exported interface has or is using name '{1}' from private module '{2}'."),Method_0_of_exported_interface_has_or_is_using_private_name_1:Ts(4102,1,"Method_0_of_exported_interface_has_or_is_using_private_name_1_4102","Method '{0}' of exported interface has or is using private name '{1}'."),Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1:Ts(4103,1,"Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1_4103","Type parameter '{0}' of exported mapped object type is using private name '{1}'."),The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1:Ts(4104,1,"The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1_4104","The type '{0}' is 'readonly' and cannot be assigned to the mutable type '{1}'."),Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter:Ts(4105,1,"Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter_4105","Private or protected member '{0}' cannot be accessed on a type parameter."),Parameter_0_of_accessor_has_or_is_using_private_name_1:Ts(4106,1,"Parameter_0_of_accessor_has_or_is_using_private_name_1_4106","Parameter '{0}' of accessor has or is using private name '{1}'."),Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2:Ts(4107,1,"Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2_4107","Parameter '{0}' of accessor has or is using name '{1}' from private module '{2}'."),Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:Ts(4108,1,"Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4108","Parameter '{0}' of accessor has or is using name '{1}' from external module '{2}' but cannot be named."),Type_arguments_for_0_circularly_reference_themselves:Ts(4109,1,"Type_arguments_for_0_circularly_reference_themselves_4109","Type arguments for '{0}' circularly reference themselves."),Tuple_type_arguments_circularly_reference_themselves:Ts(4110,1,"Tuple_type_arguments_circularly_reference_themselves_4110","Tuple type arguments circularly reference themselves."),Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0:Ts(4111,1,"Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0_4111","Property '{0}' comes from an index signature, so it must be accessed with ['{0}']."),This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class:Ts(4112,1,"This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another__4112","This member cannot have an 'override' modifier because its containing class '{0}' does not extend another class."),This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0:Ts(4113,1,"This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_4113","This member cannot have an 'override' modifier because it is not declared in the base class '{0}'."),This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0:Ts(4114,1,"This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0_4114","This member must have an 'override' modifier because it overrides a member in the base class '{0}'."),This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0:Ts(4115,1,"This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0_4115","This parameter property must have an 'override' modifier because it overrides a member in base class '{0}'."),This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0:Ts(4116,1,"This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared__4116","This member must have an 'override' modifier because it overrides an abstract method that is declared in the base class '{0}'."),This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1:Ts(4117,1,"This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you__4117","This member cannot have an 'override' modifier because it is not declared in the base class '{0}'. Did you mean '{1}'?"),The_type_of_this_node_cannot_be_serialized_because_its_property_0_cannot_be_serialized:Ts(4118,1,"The_type_of_this_node_cannot_be_serialized_because_its_property_0_cannot_be_serialized_4118","The type of this node cannot be serialized because its property '{0}' cannot be serialized."),This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0:Ts(4119,1,"This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_4119","This member must have a JSDoc comment with an '@override' tag because it overrides a member in the base class '{0}'."),This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0:Ts(4120,1,"This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_4120","This parameter property must have a JSDoc comment with an '@override' tag because it overrides a member in the base class '{0}'."),This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class:Ts(4121,1,"This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_4121","This member cannot have a JSDoc comment with an '@override' tag because its containing class '{0}' does not extend another class."),This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0:Ts(4122,1,"This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base__4122","This member cannot have a JSDoc comment with an '@override' tag because it is not declared in the base class '{0}'."),This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1:Ts(4123,1,"This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base__4123","This member cannot have a JSDoc comment with an 'override' tag because it is not declared in the base class '{0}'. Did you mean '{1}'?"),Compiler_option_0_of_value_1_is_unstable_Use_nightly_TypeScript_to_silence_this_error_Try_updating_with_npm_install_D_typescript_next:Ts(4124,1,"Compiler_option_0_of_value_1_is_unstable_Use_nightly_TypeScript_to_silence_this_error_Try_updating_w_4124","Compiler option '{0}' of value '{1}' is unstable. Use nightly TypeScript to silence this error. Try updating with 'npm install -D typescript@next'."),Each_declaration_of_0_1_differs_in_its_value_where_2_was_expected_but_3_was_given:Ts(4125,1,"Each_declaration_of_0_1_differs_in_its_value_where_2_was_expected_but_3_was_given_4125","Each declaration of '{0}.{1}' differs in its value, where '{2}' was expected but '{3}' was given."),One_value_of_0_1_is_the_string_2_and_the_other_is_assumed_to_be_an_unknown_numeric_value:Ts(4126,1,"One_value_of_0_1_is_the_string_2_and_the_other_is_assumed_to_be_an_unknown_numeric_value_4126","One value of '{0}.{1}' is the string '{2}', and the other is assumed to be an unknown numeric value."),The_current_host_does_not_support_the_0_option:Ts(5001,1,"The_current_host_does_not_support_the_0_option_5001","The current host does not support the '{0}' option."),Cannot_find_the_common_subdirectory_path_for_the_input_files:Ts(5009,1,"Cannot_find_the_common_subdirectory_path_for_the_input_files_5009","Cannot find the common subdirectory path for the input files."),File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0:Ts(5010,1,"File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0_5010","File specification cannot end in a recursive directory wildcard ('**'): '{0}'."),Cannot_read_file_0_Colon_1:Ts(5012,1,"Cannot_read_file_0_Colon_1_5012","Cannot read file '{0}': {1}."),Failed_to_parse_file_0_Colon_1:Ts(5014,1,"Failed_to_parse_file_0_Colon_1_5014","Failed to parse file '{0}': {1}."),Unknown_compiler_option_0:Ts(5023,1,"Unknown_compiler_option_0_5023","Unknown compiler option '{0}'."),Compiler_option_0_requires_a_value_of_type_1:Ts(5024,1,"Compiler_option_0_requires_a_value_of_type_1_5024","Compiler option '{0}' requires a value of type {1}."),Unknown_compiler_option_0_Did_you_mean_1:Ts(5025,1,"Unknown_compiler_option_0_Did_you_mean_1_5025","Unknown compiler option '{0}'. Did you mean '{1}'?"),Could_not_write_file_0_Colon_1:Ts(5033,1,"Could_not_write_file_0_Colon_1_5033","Could not write file '{0}': {1}."),Option_project_cannot_be_mixed_with_source_files_on_a_command_line:Ts(5042,1,"Option_project_cannot_be_mixed_with_source_files_on_a_command_line_5042","Option 'project' cannot be mixed with source files on a command line."),Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES2015_or_higher:Ts(5047,1,"Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES_5047","Option 'isolatedModules' can only be used when either option '--module' is provided or option 'target' is 'ES2015' or higher."),Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided:Ts(5051,1,"Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided_5051","Option '{0} can only be used when either option '--inlineSourceMap' or option '--sourceMap' is provided."),Option_0_cannot_be_specified_without_specifying_option_1:Ts(5052,1,"Option_0_cannot_be_specified_without_specifying_option_1_5052","Option '{0}' cannot be specified without specifying option '{1}'."),Option_0_cannot_be_specified_with_option_1:Ts(5053,1,"Option_0_cannot_be_specified_with_option_1_5053","Option '{0}' cannot be specified with option '{1}'."),A_tsconfig_json_file_is_already_defined_at_Colon_0:Ts(5054,1,"A_tsconfig_json_file_is_already_defined_at_Colon_0_5054","A 'tsconfig.json' file is already defined at: '{0}'."),Cannot_write_file_0_because_it_would_overwrite_input_file:Ts(5055,1,"Cannot_write_file_0_because_it_would_overwrite_input_file_5055","Cannot write file '{0}' because it would overwrite input file."),Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files:Ts(5056,1,"Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files_5056","Cannot write file '{0}' because it would be overwritten by multiple input files."),Cannot_find_a_tsconfig_json_file_at_the_specified_directory_Colon_0:Ts(5057,1,"Cannot_find_a_tsconfig_json_file_at_the_specified_directory_Colon_0_5057","Cannot find a tsconfig.json file at the specified directory: '{0}'."),The_specified_path_does_not_exist_Colon_0:Ts(5058,1,"The_specified_path_does_not_exist_Colon_0_5058","The specified path does not exist: '{0}'."),Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier:Ts(5059,1,"Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier_5059","Invalid value for '--reactNamespace'. '{0}' is not a valid identifier."),Pattern_0_can_have_at_most_one_Asterisk_character:Ts(5061,1,"Pattern_0_can_have_at_most_one_Asterisk_character_5061","Pattern '{0}' can have at most one '*' character."),Substitution_0_in_pattern_1_can_have_at_most_one_Asterisk_character:Ts(5062,1,"Substitution_0_in_pattern_1_can_have_at_most_one_Asterisk_character_5062","Substitution '{0}' in pattern '{1}' can have at most one '*' character."),Substitutions_for_pattern_0_should_be_an_array:Ts(5063,1,"Substitutions_for_pattern_0_should_be_an_array_5063","Substitutions for pattern '{0}' should be an array."),Substitution_0_for_pattern_1_has_incorrect_type_expected_string_got_2:Ts(5064,1,"Substitution_0_for_pattern_1_has_incorrect_type_expected_string_got_2_5064","Substitution '{0}' for pattern '{1}' has incorrect type, expected 'string', got '{2}'."),File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0:Ts(5065,1,"File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildca_5065","File specification cannot contain a parent directory ('..') that appears after a recursive directory wildcard ('**'): '{0}'."),Substitutions_for_pattern_0_shouldn_t_be_an_empty_array:Ts(5066,1,"Substitutions_for_pattern_0_shouldn_t_be_an_empty_array_5066","Substitutions for pattern '{0}' shouldn't be an empty array."),Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name:Ts(5067,1,"Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name_5067","Invalid value for 'jsxFactory'. '{0}' is not a valid identifier or qualified-name."),Adding_a_tsconfig_json_file_will_help_organize_projects_that_contain_both_TypeScript_and_JavaScript_files_Learn_more_at_https_Colon_Slash_Slashaka_ms_Slashtsconfig:Ts(5068,1,"Adding_a_tsconfig_json_file_will_help_organize_projects_that_contain_both_TypeScript_and_JavaScript__5068","Adding a tsconfig.json file will help organize projects that contain both TypeScript and JavaScript files. Learn more at https://aka.ms/tsconfig."),Option_0_cannot_be_specified_without_specifying_option_1_or_option_2:Ts(5069,1,"Option_0_cannot_be_specified_without_specifying_option_1_or_option_2_5069","Option '{0}' cannot be specified without specifying option '{1}' or option '{2}'."),Option_resolveJsonModule_cannot_be_specified_when_moduleResolution_is_set_to_classic:Ts(5070,1,"Option_resolveJsonModule_cannot_be_specified_when_moduleResolution_is_set_to_classic_5070","Option '--resolveJsonModule' cannot be specified when 'moduleResolution' is set to 'classic'."),Option_resolveJsonModule_cannot_be_specified_when_module_is_set_to_none_system_or_umd:Ts(5071,1,"Option_resolveJsonModule_cannot_be_specified_when_module_is_set_to_none_system_or_umd_5071","Option '--resolveJsonModule' cannot be specified when 'module' is set to 'none', 'system', or 'umd'."),Unknown_build_option_0:Ts(5072,1,"Unknown_build_option_0_5072","Unknown build option '{0}'."),Build_option_0_requires_a_value_of_type_1:Ts(5073,1,"Build_option_0_requires_a_value_of_type_1_5073","Build option '{0}' requires a value of type {1}."),Option_incremental_can_only_be_specified_using_tsconfig_emitting_to_single_file_or_when_option_tsBuildInfoFile_is_specified:Ts(5074,1,"Option_incremental_can_only_be_specified_using_tsconfig_emitting_to_single_file_or_when_option_tsBui_5074","Option '--incremental' can only be specified using tsconfig, emitting to single file or when option '--tsBuildInfoFile' is specified."),_0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_constraint_2:Ts(5075,1,"_0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_5075","'{0}' is assignable to the constraint of type '{1}', but '{1}' could be instantiated with a different subtype of constraint '{2}'."),_0_and_1_operations_cannot_be_mixed_without_parentheses:Ts(5076,1,"_0_and_1_operations_cannot_be_mixed_without_parentheses_5076","'{0}' and '{1}' operations cannot be mixed without parentheses."),Unknown_build_option_0_Did_you_mean_1:Ts(5077,1,"Unknown_build_option_0_Did_you_mean_1_5077","Unknown build option '{0}'. Did you mean '{1}'?"),Unknown_watch_option_0:Ts(5078,1,"Unknown_watch_option_0_5078","Unknown watch option '{0}'."),Unknown_watch_option_0_Did_you_mean_1:Ts(5079,1,"Unknown_watch_option_0_Did_you_mean_1_5079","Unknown watch option '{0}'. Did you mean '{1}'?"),Watch_option_0_requires_a_value_of_type_1:Ts(5080,1,"Watch_option_0_requires_a_value_of_type_1_5080","Watch option '{0}' requires a value of type {1}."),Cannot_find_a_tsconfig_json_file_at_the_current_directory_Colon_0:Ts(5081,1,"Cannot_find_a_tsconfig_json_file_at_the_current_directory_Colon_0_5081","Cannot find a tsconfig.json file at the current directory: {0}."),_0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1:Ts(5082,1,"_0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1_5082","'{0}' could be instantiated with an arbitrary type which could be unrelated to '{1}'."),Cannot_read_file_0:Ts(5083,1,"Cannot_read_file_0_5083","Cannot read file '{0}'."),A_tuple_member_cannot_be_both_optional_and_rest:Ts(5085,1,"A_tuple_member_cannot_be_both_optional_and_rest_5085","A tuple member cannot be both optional and rest."),A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_colon_rather_than_after_the_type:Ts(5086,1,"A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_c_5086","A labeled tuple element is declared as optional with a question mark after the name and before the colon, rather than after the type."),A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type:Ts(5087,1,"A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type_5087","A labeled tuple element is declared as rest with a '...' before the name, rather than before the type."),The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialized_A_type_annotation_is_necessary:Ts(5088,1,"The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialize_5088","The inferred type of '{0}' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary."),Option_0_cannot_be_specified_when_option_jsx_is_1:Ts(5089,1,"Option_0_cannot_be_specified_when_option_jsx_is_1_5089","Option '{0}' cannot be specified when option 'jsx' is '{1}'."),Non_relative_paths_are_not_allowed_when_baseUrl_is_not_set_Did_you_forget_a_leading_Slash:Ts(5090,1,"Non_relative_paths_are_not_allowed_when_baseUrl_is_not_set_Did_you_forget_a_leading_Slash_5090","Non-relative paths are not allowed when 'baseUrl' is not set. Did you forget a leading './'?"),Option_preserveConstEnums_cannot_be_disabled_when_0_is_enabled:Ts(5091,1,"Option_preserveConstEnums_cannot_be_disabled_when_0_is_enabled_5091","Option 'preserveConstEnums' cannot be disabled when '{0}' is enabled."),The_root_value_of_a_0_file_must_be_an_object:Ts(5092,1,"The_root_value_of_a_0_file_must_be_an_object_5092","The root value of a '{0}' file must be an object."),Compiler_option_0_may_only_be_used_with_build:Ts(5093,1,"Compiler_option_0_may_only_be_used_with_build_5093","Compiler option '--{0}' may only be used with '--build'."),Compiler_option_0_may_not_be_used_with_build:Ts(5094,1,"Compiler_option_0_may_not_be_used_with_build_5094","Compiler option '--{0}' may not be used with '--build'."),Option_0_can_only_be_used_when_module_is_set_to_preserve_or_to_es2015_or_later:Ts(5095,1,"Option_0_can_only_be_used_when_module_is_set_to_preserve_or_to_es2015_or_later_5095","Option '{0}' can only be used when 'module' is set to 'preserve' or to 'es2015' or later."),Option_allowImportingTsExtensions_can_only_be_used_when_either_noEmit_or_emitDeclarationOnly_is_set:Ts(5096,1,"Option_allowImportingTsExtensions_can_only_be_used_when_either_noEmit_or_emitDeclarationOnly_is_set_5096","Option 'allowImportingTsExtensions' can only be used when either 'noEmit' or 'emitDeclarationOnly' is set."),An_import_path_can_only_end_with_a_0_extension_when_allowImportingTsExtensions_is_enabled:Ts(5097,1,"An_import_path_can_only_end_with_a_0_extension_when_allowImportingTsExtensions_is_enabled_5097","An import path can only end with a '{0}' extension when 'allowImportingTsExtensions' is enabled."),Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler:Ts(5098,1,"Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler_5098","Option '{0}' can only be used when 'moduleResolution' is set to 'node16', 'nodenext', or 'bundler'."),Option_0_is_deprecated_and_will_stop_functioning_in_TypeScript_1_Specify_compilerOption_ignoreDeprecations_Colon_2_to_silence_this_error:Ts(5101,1,"Option_0_is_deprecated_and_will_stop_functioning_in_TypeScript_1_Specify_compilerOption_ignoreDeprec_5101","Option '{0}' is deprecated and will stop functioning in TypeScript {1}. Specify compilerOption '\"ignoreDeprecations\": \"{2}\"' to silence this error."),Option_0_has_been_removed_Please_remove_it_from_your_configuration:Ts(5102,1,"Option_0_has_been_removed_Please_remove_it_from_your_configuration_5102","Option '{0}' has been removed. Please remove it from your configuration."),Invalid_value_for_ignoreDeprecations:Ts(5103,1,"Invalid_value_for_ignoreDeprecations_5103","Invalid value for '--ignoreDeprecations'."),Option_0_is_redundant_and_cannot_be_specified_with_option_1:Ts(5104,1,"Option_0_is_redundant_and_cannot_be_specified_with_option_1_5104","Option '{0}' is redundant and cannot be specified with option '{1}'."),Option_verbatimModuleSyntax_cannot_be_used_when_module_is_set_to_UMD_AMD_or_System:Ts(5105,1,"Option_verbatimModuleSyntax_cannot_be_used_when_module_is_set_to_UMD_AMD_or_System_5105","Option 'verbatimModuleSyntax' cannot be used when 'module' is set to 'UMD', 'AMD', or 'System'."),Use_0_instead:Ts(5106,3,"Use_0_instead_5106","Use '{0}' instead."),Option_0_1_is_deprecated_and_will_stop_functioning_in_TypeScript_2_Specify_compilerOption_ignoreDeprecations_Colon_3_to_silence_this_error:Ts(5107,1,"Option_0_1_is_deprecated_and_will_stop_functioning_in_TypeScript_2_Specify_compilerOption_ignoreDepr_5107","Option '{0}={1}' is deprecated and will stop functioning in TypeScript {2}. Specify compilerOption '\"ignoreDeprecations\": \"{3}\"' to silence this error."),Option_0_1_has_been_removed_Please_remove_it_from_your_configuration:Ts(5108,1,"Option_0_1_has_been_removed_Please_remove_it_from_your_configuration_5108","Option '{0}={1}' has been removed. Please remove it from your configuration."),Option_moduleResolution_must_be_set_to_0_or_left_unspecified_when_option_module_is_set_to_1:Ts(5109,1,"Option_moduleResolution_must_be_set_to_0_or_left_unspecified_when_option_module_is_set_to_1_5109","Option 'moduleResolution' must be set to '{0}' (or left unspecified) when option 'module' is set to '{1}'."),Option_module_must_be_set_to_0_when_option_moduleResolution_is_set_to_1:Ts(5110,1,"Option_module_must_be_set_to_0_when_option_moduleResolution_is_set_to_1_5110","Option 'module' must be set to '{0}' when option 'moduleResolution' is set to '{1}'."),Generates_a_sourcemap_for_each_corresponding_d_ts_file:Ts(6e3,3,"Generates_a_sourcemap_for_each_corresponding_d_ts_file_6000","Generates a sourcemap for each corresponding '.d.ts' file."),Concatenate_and_emit_output_to_single_file:Ts(6001,3,"Concatenate_and_emit_output_to_single_file_6001","Concatenate and emit output to single file."),Generates_corresponding_d_ts_file:Ts(6002,3,"Generates_corresponding_d_ts_file_6002","Generates corresponding '.d.ts' file."),Specify_the_location_where_debugger_should_locate_TypeScript_files_instead_of_source_locations:Ts(6004,3,"Specify_the_location_where_debugger_should_locate_TypeScript_files_instead_of_source_locations_6004","Specify the location where debugger should locate TypeScript files instead of source locations."),Watch_input_files:Ts(6005,3,"Watch_input_files_6005","Watch input files."),Redirect_output_structure_to_the_directory:Ts(6006,3,"Redirect_output_structure_to_the_directory_6006","Redirect output structure to the directory."),Do_not_erase_const_enum_declarations_in_generated_code:Ts(6007,3,"Do_not_erase_const_enum_declarations_in_generated_code_6007","Do not erase const enum declarations in generated code."),Do_not_emit_outputs_if_any_errors_were_reported:Ts(6008,3,"Do_not_emit_outputs_if_any_errors_were_reported_6008","Do not emit outputs if any errors were reported."),Do_not_emit_comments_to_output:Ts(6009,3,"Do_not_emit_comments_to_output_6009","Do not emit comments to output."),Do_not_emit_outputs:Ts(6010,3,"Do_not_emit_outputs_6010","Do not emit outputs."),Allow_default_imports_from_modules_with_no_default_export_This_does_not_affect_code_emit_just_typechecking:Ts(6011,3,"Allow_default_imports_from_modules_with_no_default_export_This_does_not_affect_code_emit_just_typech_6011","Allow default imports from modules with no default export. This does not affect code emit, just typechecking."),Skip_type_checking_of_declaration_files:Ts(6012,3,"Skip_type_checking_of_declaration_files_6012","Skip type checking of declaration files."),Do_not_resolve_the_real_path_of_symlinks:Ts(6013,3,"Do_not_resolve_the_real_path_of_symlinks_6013","Do not resolve the real path of symlinks."),Only_emit_d_ts_declaration_files:Ts(6014,3,"Only_emit_d_ts_declaration_files_6014","Only emit '.d.ts' declaration files."),Specify_ECMAScript_target_version:Ts(6015,3,"Specify_ECMAScript_target_version_6015","Specify ECMAScript target version."),Specify_module_code_generation:Ts(6016,3,"Specify_module_code_generation_6016","Specify module code generation."),Print_this_message:Ts(6017,3,"Print_this_message_6017","Print this message."),Print_the_compiler_s_version:Ts(6019,3,"Print_the_compiler_s_version_6019","Print the compiler's version."),Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json:Ts(6020,3,"Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json_6020","Compile the project given the path to its configuration file, or to a folder with a 'tsconfig.json'."),Syntax_Colon_0:Ts(6023,3,"Syntax_Colon_0_6023","Syntax: {0}"),options:Ts(6024,3,"options_6024","options"),file:Ts(6025,3,"file_6025","file"),Examples_Colon_0:Ts(6026,3,"Examples_Colon_0_6026","Examples: {0}"),Options_Colon:Ts(6027,3,"Options_Colon_6027","Options:"),Version_0:Ts(6029,3,"Version_0_6029","Version {0}"),Insert_command_line_options_and_files_from_a_file:Ts(6030,3,"Insert_command_line_options_and_files_from_a_file_6030","Insert command line options and files from a file."),Starting_compilation_in_watch_mode:Ts(6031,3,"Starting_compilation_in_watch_mode_6031","Starting compilation in watch mode..."),File_change_detected_Starting_incremental_compilation:Ts(6032,3,"File_change_detected_Starting_incremental_compilation_6032","File change detected. Starting incremental compilation..."),KIND:Ts(6034,3,"KIND_6034","KIND"),FILE:Ts(6035,3,"FILE_6035","FILE"),VERSION:Ts(6036,3,"VERSION_6036","VERSION"),LOCATION:Ts(6037,3,"LOCATION_6037","LOCATION"),DIRECTORY:Ts(6038,3,"DIRECTORY_6038","DIRECTORY"),STRATEGY:Ts(6039,3,"STRATEGY_6039","STRATEGY"),FILE_OR_DIRECTORY:Ts(6040,3,"FILE_OR_DIRECTORY_6040","FILE OR DIRECTORY"),Errors_Files:Ts(6041,3,"Errors_Files_6041","Errors Files"),Generates_corresponding_map_file:Ts(6043,3,"Generates_corresponding_map_file_6043","Generates corresponding '.map' file."),Compiler_option_0_expects_an_argument:Ts(6044,1,"Compiler_option_0_expects_an_argument_6044","Compiler option '{0}' expects an argument."),Unterminated_quoted_string_in_response_file_0:Ts(6045,1,"Unterminated_quoted_string_in_response_file_0_6045","Unterminated quoted string in response file '{0}'."),Argument_for_0_option_must_be_Colon_1:Ts(6046,1,"Argument_for_0_option_must_be_Colon_1_6046","Argument for '{0}' option must be: {1}."),Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1:Ts(6048,1,"Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1_6048","Locale must be of the form <language> or <language>-<territory>. For example '{0}' or '{1}'."),Unable_to_open_file_0:Ts(6050,1,"Unable_to_open_file_0_6050","Unable to open file '{0}'."),Corrupted_locale_file_0:Ts(6051,1,"Corrupted_locale_file_0_6051","Corrupted locale file {0}."),Raise_error_on_expressions_and_declarations_with_an_implied_any_type:Ts(6052,3,"Raise_error_on_expressions_and_declarations_with_an_implied_any_type_6052","Raise error on expressions and declarations with an implied 'any' type."),File_0_not_found:Ts(6053,1,"File_0_not_found_6053","File '{0}' not found."),File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1:Ts(6054,1,"File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1_6054","File '{0}' has an unsupported extension. The only supported extensions are {1}."),Suppress_noImplicitAny_errors_for_indexing_objects_lacking_index_signatures:Ts(6055,3,"Suppress_noImplicitAny_errors_for_indexing_objects_lacking_index_signatures_6055","Suppress noImplicitAny errors for indexing objects lacking index signatures."),Do_not_emit_declarations_for_code_that_has_an_internal_annotation:Ts(6056,3,"Do_not_emit_declarations_for_code_that_has_an_internal_annotation_6056","Do not emit declarations for code that has an '@internal' annotation."),Specify_the_root_directory_of_input_files_Use_to_control_the_output_directory_structure_with_outDir:Ts(6058,3,"Specify_the_root_directory_of_input_files_Use_to_control_the_output_directory_structure_with_outDir_6058","Specify the root directory of input files. Use to control the output directory structure with --outDir."),File_0_is_not_under_rootDir_1_rootDir_is_expected_to_contain_all_source_files:Ts(6059,1,"File_0_is_not_under_rootDir_1_rootDir_is_expected_to_contain_all_source_files_6059","File '{0}' is not under 'rootDir' '{1}'. 'rootDir' is expected to contain all source files."),Specify_the_end_of_line_sequence_to_be_used_when_emitting_files_Colon_CRLF_dos_or_LF_unix:Ts(6060,3,"Specify_the_end_of_line_sequence_to_be_used_when_emitting_files_Colon_CRLF_dos_or_LF_unix_6060","Specify the end of line sequence to be used when emitting files: 'CRLF' (dos) or 'LF' (unix)."),NEWLINE:Ts(6061,3,"NEWLINE_6061","NEWLINE"),Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line:Ts(6064,1,"Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line_6064","Option '{0}' can only be specified in 'tsconfig.json' file or set to 'null' on command line."),Enables_experimental_support_for_ES7_decorators:Ts(6065,3,"Enables_experimental_support_for_ES7_decorators_6065","Enables experimental support for ES7 decorators."),Enables_experimental_support_for_emitting_type_metadata_for_decorators:Ts(6066,3,"Enables_experimental_support_for_emitting_type_metadata_for_decorators_6066","Enables experimental support for emitting type metadata for decorators."),Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file:Ts(6070,3,"Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file_6070","Initializes a TypeScript project and creates a tsconfig.json file."),Successfully_created_a_tsconfig_json_file:Ts(6071,3,"Successfully_created_a_tsconfig_json_file_6071","Successfully created a tsconfig.json file."),Suppress_excess_property_checks_for_object_literals:Ts(6072,3,"Suppress_excess_property_checks_for_object_literals_6072","Suppress excess property checks for object literals."),Stylize_errors_and_messages_using_color_and_context_experimental:Ts(6073,3,"Stylize_errors_and_messages_using_color_and_context_experimental_6073","Stylize errors and messages using color and context (experimental)."),Do_not_report_errors_on_unused_labels:Ts(6074,3,"Do_not_report_errors_on_unused_labels_6074","Do not report errors on unused labels."),Report_error_when_not_all_code_paths_in_function_return_a_value:Ts(6075,3,"Report_error_when_not_all_code_paths_in_function_return_a_value_6075","Report error when not all code paths in function return a value."),Report_errors_for_fallthrough_cases_in_switch_statement:Ts(6076,3,"Report_errors_for_fallthrough_cases_in_switch_statement_6076","Report errors for fallthrough cases in switch statement."),Do_not_report_errors_on_unreachable_code:Ts(6077,3,"Do_not_report_errors_on_unreachable_code_6077","Do not report errors on unreachable code."),Disallow_inconsistently_cased_references_to_the_same_file:Ts(6078,3,"Disallow_inconsistently_cased_references_to_the_same_file_6078","Disallow inconsistently-cased references to the same file."),Specify_library_files_to_be_included_in_the_compilation:Ts(6079,3,"Specify_library_files_to_be_included_in_the_compilation_6079","Specify library files to be included in the compilation."),Specify_JSX_code_generation:Ts(6080,3,"Specify_JSX_code_generation_6080","Specify JSX code generation."),Only_amd_and_system_modules_are_supported_alongside_0:Ts(6082,1,"Only_amd_and_system_modules_are_supported_alongside_0_6082","Only 'amd' and 'system' modules are supported alongside --{0}."),Base_directory_to_resolve_non_absolute_module_names:Ts(6083,3,"Base_directory_to_resolve_non_absolute_module_names_6083","Base directory to resolve non-absolute module names."),Deprecated_Use_jsxFactory_instead_Specify_the_object_invoked_for_createElement_when_targeting_react_JSX_emit:Ts(6084,3,"Deprecated_Use_jsxFactory_instead_Specify_the_object_invoked_for_createElement_when_targeting_react__6084","[Deprecated] Use '--jsxFactory' instead. Specify the object invoked for createElement when targeting 'react' JSX emit"),Enable_tracing_of_the_name_resolution_process:Ts(6085,3,"Enable_tracing_of_the_name_resolution_process_6085","Enable tracing of the name resolution process."),Resolving_module_0_from_1:Ts(6086,3,"Resolving_module_0_from_1_6086","======== Resolving module '{0}' from '{1}'. ========"),Explicitly_specified_module_resolution_kind_Colon_0:Ts(6087,3,"Explicitly_specified_module_resolution_kind_Colon_0_6087","Explicitly specified module resolution kind: '{0}'."),Module_resolution_kind_is_not_specified_using_0:Ts(6088,3,"Module_resolution_kind_is_not_specified_using_0_6088","Module resolution kind is not specified, using '{0}'."),Module_name_0_was_successfully_resolved_to_1:Ts(6089,3,"Module_name_0_was_successfully_resolved_to_1_6089","======== Module name '{0}' was successfully resolved to '{1}'. ========"),Module_name_0_was_not_resolved:Ts(6090,3,"Module_name_0_was_not_resolved_6090","======== Module name '{0}' was not resolved. ========"),paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0:Ts(6091,3,"paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0_6091","'paths' option is specified, looking for a pattern to match module name '{0}'."),Module_name_0_matched_pattern_1:Ts(6092,3,"Module_name_0_matched_pattern_1_6092","Module name '{0}', matched pattern '{1}'."),Trying_substitution_0_candidate_module_location_Colon_1:Ts(6093,3,"Trying_substitution_0_candidate_module_location_Colon_1_6093","Trying substitution '{0}', candidate module location: '{1}'."),Resolving_module_name_0_relative_to_base_url_1_2:Ts(6094,3,"Resolving_module_name_0_relative_to_base_url_1_2_6094","Resolving module name '{0}' relative to base url '{1}' - '{2}'."),Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_types_Colon_1:Ts(6095,3,"Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_types_Colon_1_6095","Loading module as file / folder, candidate module location '{0}', target file types: {1}."),File_0_does_not_exist:Ts(6096,3,"File_0_does_not_exist_6096","File '{0}' does not exist."),File_0_exists_use_it_as_a_name_resolution_result:Ts(6097,3,"File_0_exists_use_it_as_a_name_resolution_result_6097","File '{0}' exists - use it as a name resolution result."),Loading_module_0_from_node_modules_folder_target_file_types_Colon_1:Ts(6098,3,"Loading_module_0_from_node_modules_folder_target_file_types_Colon_1_6098","Loading module '{0}' from 'node_modules' folder, target file types: {1}."),Found_package_json_at_0:Ts(6099,3,"Found_package_json_at_0_6099","Found 'package.json' at '{0}'."),package_json_does_not_have_a_0_field:Ts(6100,3,"package_json_does_not_have_a_0_field_6100","'package.json' does not have a '{0}' field."),package_json_has_0_field_1_that_references_2:Ts(6101,3,"package_json_has_0_field_1_that_references_2_6101","'package.json' has '{0}' field '{1}' that references '{2}'."),Allow_javascript_files_to_be_compiled:Ts(6102,3,"Allow_javascript_files_to_be_compiled_6102","Allow javascript files to be compiled."),Checking_if_0_is_the_longest_matching_prefix_for_1_2:Ts(6104,3,"Checking_if_0_is_the_longest_matching_prefix_for_1_2_6104","Checking if '{0}' is the longest matching prefix for '{1}' - '{2}'."),Expected_type_of_0_field_in_package_json_to_be_1_got_2:Ts(6105,3,"Expected_type_of_0_field_in_package_json_to_be_1_got_2_6105","Expected type of '{0}' field in 'package.json' to be '{1}', got '{2}'."),baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1:Ts(6106,3,"baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1_6106","'baseUrl' option is set to '{0}', using this value to resolve non-relative module name '{1}'."),rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0:Ts(6107,3,"rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0_6107","'rootDirs' option is set, using it to resolve relative module name '{0}'."),Longest_matching_prefix_for_0_is_1:Ts(6108,3,"Longest_matching_prefix_for_0_is_1_6108","Longest matching prefix for '{0}' is '{1}'."),Loading_0_from_the_root_dir_1_candidate_location_2:Ts(6109,3,"Loading_0_from_the_root_dir_1_candidate_location_2_6109","Loading '{0}' from the root dir '{1}', candidate location '{2}'."),Trying_other_entries_in_rootDirs:Ts(6110,3,"Trying_other_entries_in_rootDirs_6110","Trying other entries in 'rootDirs'."),Module_resolution_using_rootDirs_has_failed:Ts(6111,3,"Module_resolution_using_rootDirs_has_failed_6111","Module resolution using 'rootDirs' has failed."),Do_not_emit_use_strict_directives_in_module_output:Ts(6112,3,"Do_not_emit_use_strict_directives_in_module_output_6112","Do not emit 'use strict' directives in module output."),Enable_strict_null_checks:Ts(6113,3,"Enable_strict_null_checks_6113","Enable strict null checks."),Unknown_option_excludes_Did_you_mean_exclude:Ts(6114,1,"Unknown_option_excludes_Did_you_mean_exclude_6114","Unknown option 'excludes'. Did you mean 'exclude'?"),Raise_error_on_this_expressions_with_an_implied_any_type:Ts(6115,3,"Raise_error_on_this_expressions_with_an_implied_any_type_6115","Raise error on 'this' expressions with an implied 'any' type."),Resolving_type_reference_directive_0_containing_file_1_root_directory_2:Ts(6116,3,"Resolving_type_reference_directive_0_containing_file_1_root_directory_2_6116","======== Resolving type reference directive '{0}', containing file '{1}', root directory '{2}'. ========"),Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2:Ts(6119,3,"Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2_6119","======== Type reference directive '{0}' was successfully resolved to '{1}', primary: {2}. ========"),Type_reference_directive_0_was_not_resolved:Ts(6120,3,"Type_reference_directive_0_was_not_resolved_6120","======== Type reference directive '{0}' was not resolved. ========"),Resolving_with_primary_search_path_0:Ts(6121,3,"Resolving_with_primary_search_path_0_6121","Resolving with primary search path '{0}'."),Root_directory_cannot_be_determined_skipping_primary_search_paths:Ts(6122,3,"Root_directory_cannot_be_determined_skipping_primary_search_paths_6122","Root directory cannot be determined, skipping primary search paths."),Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set:Ts(6123,3,"Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set_6123","======== Resolving type reference directive '{0}', containing file '{1}', root directory not set. ========"),Type_declaration_files_to_be_included_in_compilation:Ts(6124,3,"Type_declaration_files_to_be_included_in_compilation_6124","Type declaration files to be included in compilation."),Looking_up_in_node_modules_folder_initial_location_0:Ts(6125,3,"Looking_up_in_node_modules_folder_initial_location_0_6125","Looking up in 'node_modules' folder, initial location '{0}'."),Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_modules_folder:Ts(6126,3,"Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_mod_6126","Containing file is not specified and root directory cannot be determined, skipping lookup in 'node_modules' folder."),Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1:Ts(6127,3,"Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1_6127","======== Resolving type reference directive '{0}', containing file not set, root directory '{1}'. ========"),Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set:Ts(6128,3,"Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set_6128","======== Resolving type reference directive '{0}', containing file not set, root directory not set. ========"),Resolving_real_path_for_0_result_1:Ts(6130,3,"Resolving_real_path_for_0_result_1_6130","Resolving real path for '{0}', result '{1}'."),Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system:Ts(6131,1,"Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system_6131","Cannot compile modules using option '{0}' unless the '--module' flag is 'amd' or 'system'."),File_name_0_has_a_1_extension_stripping_it:Ts(6132,3,"File_name_0_has_a_1_extension_stripping_it_6132","File name '{0}' has a '{1}' extension - stripping it."),_0_is_declared_but_its_value_is_never_read:Ts(6133,1,"_0_is_declared_but_its_value_is_never_read_6133","'{0}' is declared but its value is never read.",!0),Report_errors_on_unused_locals:Ts(6134,3,"Report_errors_on_unused_locals_6134","Report errors on unused locals."),Report_errors_on_unused_parameters:Ts(6135,3,"Report_errors_on_unused_parameters_6135","Report errors on unused parameters."),The_maximum_dependency_depth_to_search_under_node_modules_and_load_JavaScript_files:Ts(6136,3,"The_maximum_dependency_depth_to_search_under_node_modules_and_load_JavaScript_files_6136","The maximum dependency depth to search under node_modules and load JavaScript files."),Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1:Ts(6137,1,"Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1_6137","Cannot import type declaration files. Consider importing '{0}' instead of '{1}'."),Property_0_is_declared_but_its_value_is_never_read:Ts(6138,1,"Property_0_is_declared_but_its_value_is_never_read_6138","Property '{0}' is declared but its value is never read.",!0),Import_emit_helpers_from_tslib:Ts(6139,3,"Import_emit_helpers_from_tslib_6139","Import emit helpers from 'tslib'."),Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using_cache_location_2:Ts(6140,1,"Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using__6140","Auto discovery for typings is enabled in project '{0}'. Running extra resolution pass for module '{1}' using cache location '{2}'."),Parse_in_strict_mode_and_emit_use_strict_for_each_source_file:Ts(6141,3,"Parse_in_strict_mode_and_emit_use_strict_for_each_source_file_6141",'Parse in strict mode and emit "use strict" for each source file.'),Module_0_was_resolved_to_1_but_jsx_is_not_set:Ts(6142,1,"Module_0_was_resolved_to_1_but_jsx_is_not_set_6142","Module '{0}' was resolved to '{1}', but '--jsx' is not set."),Module_0_was_resolved_as_locally_declared_ambient_module_in_file_1:Ts(6144,3,"Module_0_was_resolved_as_locally_declared_ambient_module_in_file_1_6144","Module '{0}' was resolved as locally declared ambient module in file '{1}'."),Module_0_was_resolved_as_ambient_module_declared_in_1_since_this_file_was_not_modified:Ts(6145,3,"Module_0_was_resolved_as_ambient_module_declared_in_1_since_this_file_was_not_modified_6145","Module '{0}' was resolved as ambient module declared in '{1}' since this file was not modified."),Specify_the_JSX_factory_function_to_use_when_targeting_react_JSX_emit_e_g_React_createElement_or_h:Ts(6146,3,"Specify_the_JSX_factory_function_to_use_when_targeting_react_JSX_emit_e_g_React_createElement_or_h_6146","Specify the JSX factory function to use when targeting 'react' JSX emit, e.g. 'React.createElement' or 'h'."),Resolution_for_module_0_was_found_in_cache_from_location_1:Ts(6147,3,"Resolution_for_module_0_was_found_in_cache_from_location_1_6147","Resolution for module '{0}' was found in cache from location '{1}'."),Directory_0_does_not_exist_skipping_all_lookups_in_it:Ts(6148,3,"Directory_0_does_not_exist_skipping_all_lookups_in_it_6148","Directory '{0}' does not exist, skipping all lookups in it."),Show_diagnostic_information:Ts(6149,3,"Show_diagnostic_information_6149","Show diagnostic information."),Show_verbose_diagnostic_information:Ts(6150,3,"Show_verbose_diagnostic_information_6150","Show verbose diagnostic information."),Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file:Ts(6151,3,"Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file_6151","Emit a single file with source maps instead of having a separate file."),Emit_the_source_alongside_the_sourcemaps_within_a_single_file_requires_inlineSourceMap_or_sourceMap_to_be_set:Ts(6152,3,"Emit_the_source_alongside_the_sourcemaps_within_a_single_file_requires_inlineSourceMap_or_sourceMap__6152","Emit the source alongside the sourcemaps within a single file; requires '--inlineSourceMap' or '--sourceMap' to be set."),Transpile_each_file_as_a_separate_module_similar_to_ts_transpileModule:Ts(6153,3,"Transpile_each_file_as_a_separate_module_similar_to_ts_transpileModule_6153","Transpile each file as a separate module (similar to 'ts.transpileModule')."),Print_names_of_generated_files_part_of_the_compilation:Ts(6154,3,"Print_names_of_generated_files_part_of_the_compilation_6154","Print names of generated files part of the compilation."),Print_names_of_files_part_of_the_compilation:Ts(6155,3,"Print_names_of_files_part_of_the_compilation_6155","Print names of files part of the compilation."),The_locale_used_when_displaying_messages_to_the_user_e_g_en_us:Ts(6156,3,"The_locale_used_when_displaying_messages_to_the_user_e_g_en_us_6156","The locale used when displaying messages to the user (e.g. 'en-us')"),Do_not_generate_custom_helper_functions_like_extends_in_compiled_output:Ts(6157,3,"Do_not_generate_custom_helper_functions_like_extends_in_compiled_output_6157","Do not generate custom helper functions like '__extends' in compiled output."),Do_not_include_the_default_library_file_lib_d_ts:Ts(6158,3,"Do_not_include_the_default_library_file_lib_d_ts_6158","Do not include the default library file (lib.d.ts)."),Do_not_add_triple_slash_references_or_imported_modules_to_the_list_of_compiled_files:Ts(6159,3,"Do_not_add_triple_slash_references_or_imported_modules_to_the_list_of_compiled_files_6159","Do not add triple-slash references or imported modules to the list of compiled files."),Deprecated_Use_skipLibCheck_instead_Skip_type_checking_of_default_library_declaration_files:Ts(6160,3,"Deprecated_Use_skipLibCheck_instead_Skip_type_checking_of_default_library_declaration_files_6160","[Deprecated] Use '--skipLibCheck' instead. Skip type checking of default library declaration files."),List_of_folders_to_include_type_definitions_from:Ts(6161,3,"List_of_folders_to_include_type_definitions_from_6161","List of folders to include type definitions from."),Disable_size_limitations_on_JavaScript_projects:Ts(6162,3,"Disable_size_limitations_on_JavaScript_projects_6162","Disable size limitations on JavaScript projects."),The_character_set_of_the_input_files:Ts(6163,3,"The_character_set_of_the_input_files_6163","The character set of the input files."),Skipping_module_0_that_looks_like_an_absolute_URI_target_file_types_Colon_1:Ts(6164,3,"Skipping_module_0_that_looks_like_an_absolute_URI_target_file_types_Colon_1_6164","Skipping module '{0}' that looks like an absolute URI, target file types: {1}."),Do_not_truncate_error_messages:Ts(6165,3,"Do_not_truncate_error_messages_6165","Do not truncate error messages."),Output_directory_for_generated_declaration_files:Ts(6166,3,"Output_directory_for_generated_declaration_files_6166","Output directory for generated declaration files."),A_series_of_entries_which_re_map_imports_to_lookup_locations_relative_to_the_baseUrl:Ts(6167,3,"A_series_of_entries_which_re_map_imports_to_lookup_locations_relative_to_the_baseUrl_6167","A series of entries which re-map imports to lookup locations relative to the 'baseUrl'."),List_of_root_folders_whose_combined_content_represents_the_structure_of_the_project_at_runtime:Ts(6168,3,"List_of_root_folders_whose_combined_content_represents_the_structure_of_the_project_at_runtime_6168","List of root folders whose combined content represents the structure of the project at runtime."),Show_all_compiler_options:Ts(6169,3,"Show_all_compiler_options_6169","Show all compiler options."),Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file:Ts(6170,3,"Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file_6170","[Deprecated] Use '--outFile' instead. Concatenate and emit output to single file"),Command_line_Options:Ts(6171,3,"Command_line_Options_6171","Command-line Options"),Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5:Ts(6179,3,"Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5_6179","Provide full support for iterables in 'for-of', spread, and destructuring when targeting 'ES5'."),Enable_all_strict_type_checking_options:Ts(6180,3,"Enable_all_strict_type_checking_options_6180","Enable all strict type-checking options."),Scoped_package_detected_looking_in_0:Ts(6182,3,"Scoped_package_detected_looking_in_0_6182","Scoped package detected, looking in '{0}'"),Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2:Ts(6183,3,"Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_6183","Reusing resolution of module '{0}' from '{1}' of old program, it was successfully resolved to '{2}'."),Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:Ts(6184,3,"Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package__6184","Reusing resolution of module '{0}' from '{1}' of old program, it was successfully resolved to '{2}' with Package ID '{3}'."),Enable_strict_checking_of_function_types:Ts(6186,3,"Enable_strict_checking_of_function_types_6186","Enable strict checking of function types."),Enable_strict_checking_of_property_initialization_in_classes:Ts(6187,3,"Enable_strict_checking_of_property_initialization_in_classes_6187","Enable strict checking of property initialization in classes."),Numeric_separators_are_not_allowed_here:Ts(6188,1,"Numeric_separators_are_not_allowed_here_6188","Numeric separators are not allowed here."),Multiple_consecutive_numeric_separators_are_not_permitted:Ts(6189,1,"Multiple_consecutive_numeric_separators_are_not_permitted_6189","Multiple consecutive numeric separators are not permitted."),Whether_to_keep_outdated_console_output_in_watch_mode_instead_of_clearing_the_screen:Ts(6191,3,"Whether_to_keep_outdated_console_output_in_watch_mode_instead_of_clearing_the_screen_6191","Whether to keep outdated console output in watch mode instead of clearing the screen."),All_imports_in_import_declaration_are_unused:Ts(6192,1,"All_imports_in_import_declaration_are_unused_6192","All imports in import declaration are unused.",!0),Found_1_error_Watching_for_file_changes:Ts(6193,3,"Found_1_error_Watching_for_file_changes_6193","Found 1 error. Watching for file changes."),Found_0_errors_Watching_for_file_changes:Ts(6194,3,"Found_0_errors_Watching_for_file_changes_6194","Found {0} errors. Watching for file changes."),Resolve_keyof_to_string_valued_property_names_only_no_numbers_or_symbols:Ts(6195,3,"Resolve_keyof_to_string_valued_property_names_only_no_numbers_or_symbols_6195","Resolve 'keyof' to string valued property names only (no numbers or symbols)."),_0_is_declared_but_never_used:Ts(6196,1,"_0_is_declared_but_never_used_6196","'{0}' is declared but never used.",!0),Include_modules_imported_with_json_extension:Ts(6197,3,"Include_modules_imported_with_json_extension_6197","Include modules imported with '.json' extension"),All_destructured_elements_are_unused:Ts(6198,1,"All_destructured_elements_are_unused_6198","All destructured elements are unused.",!0),All_variables_are_unused:Ts(6199,1,"All_variables_are_unused_6199","All variables are unused.",!0),Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0:Ts(6200,1,"Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0_6200","Definitions of the following identifiers conflict with those in another file: {0}"),Conflicts_are_in_this_file:Ts(6201,3,"Conflicts_are_in_this_file_6201","Conflicts are in this file."),Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0:Ts(6202,1,"Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0_6202","Project references may not form a circular graph. Cycle detected: {0}"),_0_was_also_declared_here:Ts(6203,3,"_0_was_also_declared_here_6203","'{0}' was also declared here."),and_here:Ts(6204,3,"and_here_6204","and here."),All_type_parameters_are_unused:Ts(6205,1,"All_type_parameters_are_unused_6205","All type parameters are unused."),package_json_has_a_typesVersions_field_with_version_specific_path_mappings:Ts(6206,3,"package_json_has_a_typesVersions_field_with_version_specific_path_mappings_6206","'package.json' has a 'typesVersions' field with version-specific path mappings."),package_json_does_not_have_a_typesVersions_entry_that_matches_version_0:Ts(6207,3,"package_json_does_not_have_a_typesVersions_entry_that_matches_version_0_6207","'package.json' does not have a 'typesVersions' entry that matches version '{0}'."),package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2:Ts(6208,3,"package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_ma_6208","'package.json' has a 'typesVersions' entry '{0}' that matches compiler version '{1}', looking for a pattern to match module name '{2}'."),package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range:Ts(6209,3,"package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range_6209","'package.json' has a 'typesVersions' entry '{0}' that is not a valid semver range."),An_argument_for_0_was_not_provided:Ts(6210,3,"An_argument_for_0_was_not_provided_6210","An argument for '{0}' was not provided."),An_argument_matching_this_binding_pattern_was_not_provided:Ts(6211,3,"An_argument_matching_this_binding_pattern_was_not_provided_6211","An argument matching this binding pattern was not provided."),Did_you_mean_to_call_this_expression:Ts(6212,3,"Did_you_mean_to_call_this_expression_6212","Did you mean to call this expression?"),Did_you_mean_to_use_new_with_this_expression:Ts(6213,3,"Did_you_mean_to_use_new_with_this_expression_6213","Did you mean to use 'new' with this expression?"),Enable_strict_bind_call_and_apply_methods_on_functions:Ts(6214,3,"Enable_strict_bind_call_and_apply_methods_on_functions_6214","Enable strict 'bind', 'call', and 'apply' methods on functions."),Using_compiler_options_of_project_reference_redirect_0:Ts(6215,3,"Using_compiler_options_of_project_reference_redirect_0_6215","Using compiler options of project reference redirect '{0}'."),Found_1_error:Ts(6216,3,"Found_1_error_6216","Found 1 error."),Found_0_errors:Ts(6217,3,"Found_0_errors_6217","Found {0} errors."),Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2:Ts(6218,3,"Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2_6218","======== Module name '{0}' was successfully resolved to '{1}' with Package ID '{2}'. ========"),Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3:Ts(6219,3,"Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3_6219","======== Type reference directive '{0}' was successfully resolved to '{1}' with Package ID '{2}', primary: {3}. ========"),package_json_had_a_falsy_0_field:Ts(6220,3,"package_json_had_a_falsy_0_field_6220","'package.json' had a falsy '{0}' field."),Disable_use_of_source_files_instead_of_declaration_files_from_referenced_projects:Ts(6221,3,"Disable_use_of_source_files_instead_of_declaration_files_from_referenced_projects_6221","Disable use of source files instead of declaration files from referenced projects."),Emit_class_fields_with_Define_instead_of_Set:Ts(6222,3,"Emit_class_fields_with_Define_instead_of_Set_6222","Emit class fields with Define instead of Set."),Generates_a_CPU_profile:Ts(6223,3,"Generates_a_CPU_profile_6223","Generates a CPU profile."),Disable_solution_searching_for_this_project:Ts(6224,3,"Disable_solution_searching_for_this_project_6224","Disable solution searching for this project."),Specify_strategy_for_watching_file_Colon_FixedPollingInterval_default_PriorityPollingInterval_DynamicPriorityPolling_FixedChunkSizePolling_UseFsEvents_UseFsEventsOnParentDirectory:Ts(6225,3,"Specify_strategy_for_watching_file_Colon_FixedPollingInterval_default_PriorityPollingInterval_Dynami_6225","Specify strategy for watching file: 'FixedPollingInterval' (default), 'PriorityPollingInterval', 'DynamicPriorityPolling', 'FixedChunkSizePolling', 'UseFsEvents', 'UseFsEventsOnParentDirectory'."),Specify_strategy_for_watching_directory_on_platforms_that_don_t_support_recursive_watching_natively_Colon_UseFsEvents_default_FixedPollingInterval_DynamicPriorityPolling_FixedChunkSizePolling:Ts(6226,3,"Specify_strategy_for_watching_directory_on_platforms_that_don_t_support_recursive_watching_natively__6226","Specify strategy for watching directory on platforms that don't support recursive watching natively: 'UseFsEvents' (default), 'FixedPollingInterval', 'DynamicPriorityPolling', 'FixedChunkSizePolling'."),Specify_strategy_for_creating_a_polling_watch_when_it_fails_to_create_using_file_system_events_Colon_FixedInterval_default_PriorityInterval_DynamicPriority_FixedChunkSize:Ts(6227,3,"Specify_strategy_for_creating_a_polling_watch_when_it_fails_to_create_using_file_system_events_Colon_6227","Specify strategy for creating a polling watch when it fails to create using file system events: 'FixedInterval' (default), 'PriorityInterval', 'DynamicPriority', 'FixedChunkSize'."),Tag_0_expects_at_least_1_arguments_but_the_JSX_factory_2_provides_at_most_3:Ts(6229,1,"Tag_0_expects_at_least_1_arguments_but_the_JSX_factory_2_provides_at_most_3_6229","Tag '{0}' expects at least '{1}' arguments, but the JSX factory '{2}' provides at most '{3}'."),Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line:Ts(6230,1,"Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line_6230","Option '{0}' can only be specified in 'tsconfig.json' file or set to 'false' or 'null' on command line."),Could_not_resolve_the_path_0_with_the_extensions_Colon_1:Ts(6231,1,"Could_not_resolve_the_path_0_with_the_extensions_Colon_1_6231","Could not resolve the path '{0}' with the extensions: {1}."),Declaration_augments_declaration_in_another_file_This_cannot_be_serialized:Ts(6232,1,"Declaration_augments_declaration_in_another_file_This_cannot_be_serialized_6232","Declaration augments declaration in another file. This cannot be serialized."),This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_file:Ts(6233,1,"This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_fil_6233","This is the declaration being augmented. Consider moving the augmenting declaration into the same file."),This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without:Ts(6234,1,"This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without_6234","This expression is not callable because it is a 'get' accessor. Did you mean to use it without '()'?"),Disable_loading_referenced_projects:Ts(6235,3,"Disable_loading_referenced_projects_6235","Disable loading referenced projects."),Arguments_for_the_rest_parameter_0_were_not_provided:Ts(6236,1,"Arguments_for_the_rest_parameter_0_were_not_provided_6236","Arguments for the rest parameter '{0}' were not provided."),Generates_an_event_trace_and_a_list_of_types:Ts(6237,3,"Generates_an_event_trace_and_a_list_of_types_6237","Generates an event trace and a list of types."),Specify_the_module_specifier_to_be_used_to_import_the_jsx_and_jsxs_factory_functions_from_eg_react:Ts(6238,1,"Specify_the_module_specifier_to_be_used_to_import_the_jsx_and_jsxs_factory_functions_from_eg_react_6238","Specify the module specifier to be used to import the 'jsx' and 'jsxs' factory functions from. eg, react"),File_0_exists_according_to_earlier_cached_lookups:Ts(6239,3,"File_0_exists_according_to_earlier_cached_lookups_6239","File '{0}' exists according to earlier cached lookups."),File_0_does_not_exist_according_to_earlier_cached_lookups:Ts(6240,3,"File_0_does_not_exist_according_to_earlier_cached_lookups_6240","File '{0}' does not exist according to earlier cached lookups."),Resolution_for_type_reference_directive_0_was_found_in_cache_from_location_1:Ts(6241,3,"Resolution_for_type_reference_directive_0_was_found_in_cache_from_location_1_6241","Resolution for type reference directive '{0}' was found in cache from location '{1}'."),Resolving_type_reference_directive_0_containing_file_1:Ts(6242,3,"Resolving_type_reference_directive_0_containing_file_1_6242","======== Resolving type reference directive '{0}', containing file '{1}'. ========"),Interpret_optional_property_types_as_written_rather_than_adding_undefined:Ts(6243,3,"Interpret_optional_property_types_as_written_rather_than_adding_undefined_6243","Interpret optional property types as written, rather than adding 'undefined'."),Modules:Ts(6244,3,"Modules_6244","Modules"),File_Management:Ts(6245,3,"File_Management_6245","File Management"),Emit:Ts(6246,3,"Emit_6246","Emit"),JavaScript_Support:Ts(6247,3,"JavaScript_Support_6247","JavaScript Support"),Type_Checking:Ts(6248,3,"Type_Checking_6248","Type Checking"),Editor_Support:Ts(6249,3,"Editor_Support_6249","Editor Support"),Watch_and_Build_Modes:Ts(6250,3,"Watch_and_Build_Modes_6250","Watch and Build Modes"),Compiler_Diagnostics:Ts(6251,3,"Compiler_Diagnostics_6251","Compiler Diagnostics"),Interop_Constraints:Ts(6252,3,"Interop_Constraints_6252","Interop Constraints"),Backwards_Compatibility:Ts(6253,3,"Backwards_Compatibility_6253","Backwards Compatibility"),Language_and_Environment:Ts(6254,3,"Language_and_Environment_6254","Language and Environment"),Projects:Ts(6255,3,"Projects_6255","Projects"),Output_Formatting:Ts(6256,3,"Output_Formatting_6256","Output Formatting"),Completeness:Ts(6257,3,"Completeness_6257","Completeness"),_0_should_be_set_inside_the_compilerOptions_object_of_the_config_json_file:Ts(6258,1,"_0_should_be_set_inside_the_compilerOptions_object_of_the_config_json_file_6258","'{0}' should be set inside the 'compilerOptions' object of the config json file"),Found_1_error_in_0:Ts(6259,3,"Found_1_error_in_0_6259","Found 1 error in {0}"),Found_0_errors_in_the_same_file_starting_at_Colon_1:Ts(6260,3,"Found_0_errors_in_the_same_file_starting_at_Colon_1_6260","Found {0} errors in the same file, starting at: {1}"),Found_0_errors_in_1_files:Ts(6261,3,"Found_0_errors_in_1_files_6261","Found {0} errors in {1} files."),File_name_0_has_a_1_extension_looking_up_2_instead:Ts(6262,3,"File_name_0_has_a_1_extension_looking_up_2_instead_6262","File name '{0}' has a '{1}' extension - looking up '{2}' instead."),Module_0_was_resolved_to_1_but_allowArbitraryExtensions_is_not_set:Ts(6263,1,"Module_0_was_resolved_to_1_but_allowArbitraryExtensions_is_not_set_6263","Module '{0}' was resolved to '{1}', but '--allowArbitraryExtensions' is not set."),Enable_importing_files_with_any_extension_provided_a_declaration_file_is_present:Ts(6264,3,"Enable_importing_files_with_any_extension_provided_a_declaration_file_is_present_6264","Enable importing files with any extension, provided a declaration file is present."),Resolving_type_reference_directive_for_program_that_specifies_custom_typeRoots_skipping_lookup_in_node_modules_folder:Ts(6265,3,"Resolving_type_reference_directive_for_program_that_specifies_custom_typeRoots_skipping_lookup_in_no_6265","Resolving type reference directive for program that specifies custom typeRoots, skipping lookup in 'node_modules' folder."),Option_0_can_only_be_specified_on_command_line:Ts(6266,1,"Option_0_can_only_be_specified_on_command_line_6266","Option '{0}' can only be specified on command line."),Directory_0_has_no_containing_package_json_scope_Imports_will_not_resolve:Ts(6270,3,"Directory_0_has_no_containing_package_json_scope_Imports_will_not_resolve_6270","Directory '{0}' has no containing package.json scope. Imports will not resolve."),Import_specifier_0_does_not_exist_in_package_json_scope_at_path_1:Ts(6271,3,"Import_specifier_0_does_not_exist_in_package_json_scope_at_path_1_6271","Import specifier '{0}' does not exist in package.json scope at path '{1}'."),Invalid_import_specifier_0_has_no_possible_resolutions:Ts(6272,3,"Invalid_import_specifier_0_has_no_possible_resolutions_6272","Invalid import specifier '{0}' has no possible resolutions."),package_json_scope_0_has_no_imports_defined:Ts(6273,3,"package_json_scope_0_has_no_imports_defined_6273","package.json scope '{0}' has no imports defined."),package_json_scope_0_explicitly_maps_specifier_1_to_null:Ts(6274,3,"package_json_scope_0_explicitly_maps_specifier_1_to_null_6274","package.json scope '{0}' explicitly maps specifier '{1}' to null."),package_json_scope_0_has_invalid_type_for_target_of_specifier_1:Ts(6275,3,"package_json_scope_0_has_invalid_type_for_target_of_specifier_1_6275","package.json scope '{0}' has invalid type for target of specifier '{1}'"),Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1:Ts(6276,3,"Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1_6276","Export specifier '{0}' does not exist in package.json scope at path '{1}'."),Resolution_of_non_relative_name_failed_trying_with_modern_Node_resolution_features_disabled_to_see_if_npm_library_needs_configuration_update:Ts(6277,3,"Resolution_of_non_relative_name_failed_trying_with_modern_Node_resolution_features_disabled_to_see_i_6277","Resolution of non-relative name failed; trying with modern Node resolution features disabled to see if npm library needs configuration update."),There_are_types_at_0_but_this_result_could_not_be_resolved_when_respecting_package_json_exports_The_1_library_may_need_to_update_its_package_json_or_typings:Ts(6278,3,"There_are_types_at_0_but_this_result_could_not_be_resolved_when_respecting_package_json_exports_The__6278","There are types at '{0}', but this result could not be resolved when respecting package.json \"exports\". The '{1}' library may need to update its package.json or typings."),Resolution_of_non_relative_name_failed_trying_with_moduleResolution_bundler_to_see_if_project_may_need_configuration_update:Ts(6279,3,"Resolution_of_non_relative_name_failed_trying_with_moduleResolution_bundler_to_see_if_project_may_ne_6279","Resolution of non-relative name failed; trying with '--moduleResolution bundler' to see if project may need configuration update."),There_are_types_at_0_but_this_result_could_not_be_resolved_under_your_current_moduleResolution_setting_Consider_updating_to_node16_nodenext_or_bundler:Ts(6280,3,"There_are_types_at_0_but_this_result_could_not_be_resolved_under_your_current_moduleResolution_setti_6280","There are types at '{0}', but this result could not be resolved under your current 'moduleResolution' setting. Consider updating to 'node16', 'nodenext', or 'bundler'."),package_json_has_a_peerDependencies_field:Ts(6281,3,"package_json_has_a_peerDependencies_field_6281","'package.json' has a 'peerDependencies' field."),Found_peerDependency_0_with_1_version:Ts(6282,3,"Found_peerDependency_0_with_1_version_6282","Found peerDependency '{0}' with '{1}' version."),Failed_to_find_peerDependency_0:Ts(6283,3,"Failed_to_find_peerDependency_0_6283","Failed to find peerDependency '{0}'."),Enable_project_compilation:Ts(6302,3,"Enable_project_compilation_6302","Enable project compilation"),Composite_projects_may_not_disable_declaration_emit:Ts(6304,1,"Composite_projects_may_not_disable_declaration_emit_6304","Composite projects may not disable declaration emit."),Output_file_0_has_not_been_built_from_source_file_1:Ts(6305,1,"Output_file_0_has_not_been_built_from_source_file_1_6305","Output file '{0}' has not been built from source file '{1}'."),Referenced_project_0_must_have_setting_composite_Colon_true:Ts(6306,1,"Referenced_project_0_must_have_setting_composite_Colon_true_6306","Referenced project '{0}' must have setting \"composite\": true."),File_0_is_not_listed_within_the_file_list_of_project_1_Projects_must_list_all_files_or_use_an_include_pattern:Ts(6307,1,"File_0_is_not_listed_within_the_file_list_of_project_1_Projects_must_list_all_files_or_use_an_includ_6307","File '{0}' is not listed within the file list of project '{1}'. Projects must list all files or use an 'include' pattern."),Referenced_project_0_may_not_disable_emit:Ts(6310,1,"Referenced_project_0_may_not_disable_emit_6310","Referenced project '{0}' may not disable emit."),Project_0_is_out_of_date_because_output_1_is_older_than_input_2:Ts(6350,3,"Project_0_is_out_of_date_because_output_1_is_older_than_input_2_6350","Project '{0}' is out of date because output '{1}' is older than input '{2}'"),Project_0_is_up_to_date_because_newest_input_1_is_older_than_output_2:Ts(6351,3,"Project_0_is_up_to_date_because_newest_input_1_is_older_than_output_2_6351","Project '{0}' is up to date because newest input '{1}' is older than output '{2}'"),Project_0_is_out_of_date_because_output_file_1_does_not_exist:Ts(6352,3,"Project_0_is_out_of_date_because_output_file_1_does_not_exist_6352","Project '{0}' is out of date because output file '{1}' does not exist"),Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date:Ts(6353,3,"Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date_6353","Project '{0}' is out of date because its dependency '{1}' is out of date"),Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies:Ts(6354,3,"Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies_6354","Project '{0}' is up to date with .d.ts files from its dependencies"),Projects_in_this_build_Colon_0:Ts(6355,3,"Projects_in_this_build_Colon_0_6355","Projects in this build: {0}"),A_non_dry_build_would_delete_the_following_files_Colon_0:Ts(6356,3,"A_non_dry_build_would_delete_the_following_files_Colon_0_6356","A non-dry build would delete the following files: {0}"),A_non_dry_build_would_build_project_0:Ts(6357,3,"A_non_dry_build_would_build_project_0_6357","A non-dry build would build project '{0}'"),Building_project_0:Ts(6358,3,"Building_project_0_6358","Building project '{0}'..."),Updating_output_timestamps_of_project_0:Ts(6359,3,"Updating_output_timestamps_of_project_0_6359","Updating output timestamps of project '{0}'..."),Project_0_is_up_to_date:Ts(6361,3,"Project_0_is_up_to_date_6361","Project '{0}' is up to date"),Skipping_build_of_project_0_because_its_dependency_1_has_errors:Ts(6362,3,"Skipping_build_of_project_0_because_its_dependency_1_has_errors_6362","Skipping build of project '{0}' because its dependency '{1}' has errors"),Project_0_can_t_be_built_because_its_dependency_1_has_errors:Ts(6363,3,"Project_0_can_t_be_built_because_its_dependency_1_has_errors_6363","Project '{0}' can't be built because its dependency '{1}' has errors"),Build_one_or_more_projects_and_their_dependencies_if_out_of_date:Ts(6364,3,"Build_one_or_more_projects_and_their_dependencies_if_out_of_date_6364","Build one or more projects and their dependencies, if out of date"),Delete_the_outputs_of_all_projects:Ts(6365,3,"Delete_the_outputs_of_all_projects_6365","Delete the outputs of all projects."),Show_what_would_be_built_or_deleted_if_specified_with_clean:Ts(6367,3,"Show_what_would_be_built_or_deleted_if_specified_with_clean_6367","Show what would be built (or deleted, if specified with '--clean')"),Option_build_must_be_the_first_command_line_argument:Ts(6369,1,"Option_build_must_be_the_first_command_line_argument_6369","Option '--build' must be the first command line argument."),Options_0_and_1_cannot_be_combined:Ts(6370,1,"Options_0_and_1_cannot_be_combined_6370","Options '{0}' and '{1}' cannot be combined."),Updating_unchanged_output_timestamps_of_project_0:Ts(6371,3,"Updating_unchanged_output_timestamps_of_project_0_6371","Updating unchanged output timestamps of project '{0}'..."),A_non_dry_build_would_update_timestamps_for_output_of_project_0:Ts(6374,3,"A_non_dry_build_would_update_timestamps_for_output_of_project_0_6374","A non-dry build would update timestamps for output of project '{0}'"),Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1:Ts(6377,1,"Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1_6377","Cannot write file '{0}' because it will overwrite '.tsbuildinfo' file generated by referenced project '{1}'"),Composite_projects_may_not_disable_incremental_compilation:Ts(6379,1,"Composite_projects_may_not_disable_incremental_compilation_6379","Composite projects may not disable incremental compilation."),Specify_file_to_store_incremental_compilation_information:Ts(6380,3,"Specify_file_to_store_incremental_compilation_information_6380","Specify file to store incremental compilation information"),Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_current_version_2:Ts(6381,3,"Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_curren_6381","Project '{0}' is out of date because output for it was generated with version '{1}' that differs with current version '{2}'"),Skipping_build_of_project_0_because_its_dependency_1_was_not_built:Ts(6382,3,"Skipping_build_of_project_0_because_its_dependency_1_was_not_built_6382","Skipping build of project '{0}' because its dependency '{1}' was not built"),Project_0_can_t_be_built_because_its_dependency_1_was_not_built:Ts(6383,3,"Project_0_can_t_be_built_because_its_dependency_1_was_not_built_6383","Project '{0}' can't be built because its dependency '{1}' was not built"),Have_recompiles_in_incremental_and_watch_assume_that_changes_within_a_file_will_only_affect_files_directly_depending_on_it:Ts(6384,3,"Have_recompiles_in_incremental_and_watch_assume_that_changes_within_a_file_will_only_affect_files_di_6384","Have recompiles in '--incremental' and '--watch' assume that changes within a file will only affect files directly depending on it."),_0_is_deprecated:Ts(6385,2,"_0_is_deprecated_6385","'{0}' is deprecated.",void 0,void 0,!0),Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_native_implementation_of_the_Web_Performance_API_could_not_be_found:Ts(6386,3,"Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_nativ_6386","Performance timings for '--diagnostics' or '--extendedDiagnostics' are not available in this session. A native implementation of the Web Performance API could not be found."),The_signature_0_of_1_is_deprecated:Ts(6387,2,"The_signature_0_of_1_is_deprecated_6387","The signature '{0}' of '{1}' is deprecated.",void 0,void 0,!0),Project_0_is_being_forcibly_rebuilt:Ts(6388,3,"Project_0_is_being_forcibly_rebuilt_6388","Project '{0}' is being forcibly rebuilt"),Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved:Ts(6389,3,"Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved_6389","Reusing resolution of module '{0}' from '{1}' of old program, it was not resolved."),Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2:Ts(6390,3,"Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved__6390","Reusing resolution of type reference directive '{0}' from '{1}' of old program, it was successfully resolved to '{2}'."),Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:Ts(6391,3,"Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved__6391","Reusing resolution of type reference directive '{0}' from '{1}' of old program, it was successfully resolved to '{2}' with Package ID '{3}'."),Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_not_resolved:Ts(6392,3,"Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_not_resolved_6392","Reusing resolution of type reference directive '{0}' from '{1}' of old program, it was not resolved."),Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3:Ts(6393,3,"Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_6393","Reusing resolution of module '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}'."),Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3_with_Package_ID_4:Ts(6394,3,"Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_6394","Reusing resolution of module '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}' with Package ID '{4}'."),Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_not_resolved:Ts(6395,3,"Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_not_resolved_6395","Reusing resolution of module '{0}' from '{1}' found in cache from location '{2}', it was not resolved."),Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3:Ts(6396,3,"Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_succes_6396","Reusing resolution of type reference directive '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}'."),Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3_with_Package_ID_4:Ts(6397,3,"Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_succes_6397","Reusing resolution of type reference directive '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}' with Package ID '{4}'."),Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_not_resolved:Ts(6398,3,"Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_not_re_6398","Reusing resolution of type reference directive '{0}' from '{1}' found in cache from location '{2}', it was not resolved."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_some_of_the_changes_were_not_emitted:Ts(6399,3,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_some_of_the_changes_were_not_emitte_6399","Project '{0}' is out of date because buildinfo file '{1}' indicates that some of the changes were not emitted"),Project_0_is_up_to_date_but_needs_to_update_timestamps_of_output_files_that_are_older_than_input_files:Ts(6400,3,"Project_0_is_up_to_date_but_needs_to_update_timestamps_of_output_files_that_are_older_than_input_fil_6400","Project '{0}' is up to date but needs to update timestamps of output files that are older than input files"),Project_0_is_out_of_date_because_there_was_error_reading_file_1:Ts(6401,3,"Project_0_is_out_of_date_because_there_was_error_reading_file_1_6401","Project '{0}' is out of date because there was error reading file '{1}'"),Resolving_in_0_mode_with_conditions_1:Ts(6402,3,"Resolving_in_0_mode_with_conditions_1_6402","Resolving in {0} mode with conditions {1}."),Matched_0_condition_1:Ts(6403,3,"Matched_0_condition_1_6403","Matched '{0}' condition '{1}'."),Using_0_subpath_1_with_target_2:Ts(6404,3,"Using_0_subpath_1_with_target_2_6404","Using '{0}' subpath '{1}' with target '{2}'."),Saw_non_matching_condition_0:Ts(6405,3,"Saw_non_matching_condition_0_6405","Saw non-matching condition '{0}'."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_there_is_change_in_compilerOptions:Ts(6406,3,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_there_is_change_in_compilerOptions_6406","Project '{0}' is out of date because buildinfo file '{1}' indicates there is change in compilerOptions"),Allow_imports_to_include_TypeScript_file_extensions_Requires_moduleResolution_bundler_and_either_noEmit_or_emitDeclarationOnly_to_be_set:Ts(6407,3,"Allow_imports_to_include_TypeScript_file_extensions_Requires_moduleResolution_bundler_and_either_noE_6407","Allow imports to include TypeScript file extensions. Requires '--moduleResolution bundler' and either '--noEmit' or '--emitDeclarationOnly' to be set."),Use_the_package_json_exports_field_when_resolving_package_imports:Ts(6408,3,"Use_the_package_json_exports_field_when_resolving_package_imports_6408","Use the package.json 'exports' field when resolving package imports."),Use_the_package_json_imports_field_when_resolving_imports:Ts(6409,3,"Use_the_package_json_imports_field_when_resolving_imports_6409","Use the package.json 'imports' field when resolving imports."),Conditions_to_set_in_addition_to_the_resolver_specific_defaults_when_resolving_imports:Ts(6410,3,"Conditions_to_set_in_addition_to_the_resolver_specific_defaults_when_resolving_imports_6410","Conditions to set in addition to the resolver-specific defaults when resolving imports."),true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false:Ts(6411,3,"true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false_6411","`true` when 'moduleResolution' is 'node16', 'nodenext', or 'bundler'; otherwise `false`."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_file_2_was_root_file_of_compilation_but_not_any_more:Ts(6412,3,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_file_2_was_root_file_of_compilation_6412","Project '{0}' is out of date because buildinfo file '{1}' indicates that file '{2}' was root file of compilation but not any more."),Entering_conditional_exports:Ts(6413,3,"Entering_conditional_exports_6413","Entering conditional exports."),Resolved_under_condition_0:Ts(6414,3,"Resolved_under_condition_0_6414","Resolved under condition '{0}'."),Failed_to_resolve_under_condition_0:Ts(6415,3,"Failed_to_resolve_under_condition_0_6415","Failed to resolve under condition '{0}'."),Exiting_conditional_exports:Ts(6416,3,"Exiting_conditional_exports_6416","Exiting conditional exports."),Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0:Ts(6417,3,"Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0_6417","Searching all ancestor node_modules directories for preferred extensions: {0}."),Searching_all_ancestor_node_modules_directories_for_fallback_extensions_Colon_0:Ts(6418,3,"Searching_all_ancestor_node_modules_directories_for_fallback_extensions_Colon_0_6418","Searching all ancestor node_modules directories for fallback extensions: {0}."),The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1:Ts(6500,3,"The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1_6500","The expected type comes from property '{0}' which is declared here on type '{1}'"),The_expected_type_comes_from_this_index_signature:Ts(6501,3,"The_expected_type_comes_from_this_index_signature_6501","The expected type comes from this index signature."),The_expected_type_comes_from_the_return_type_of_this_signature:Ts(6502,3,"The_expected_type_comes_from_the_return_type_of_this_signature_6502","The expected type comes from the return type of this signature."),Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing:Ts(6503,3,"Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing_6503","Print names of files that are part of the compilation and then stop processing."),File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option:Ts(6504,1,"File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option_6504","File '{0}' is a JavaScript file. Did you mean to enable the 'allowJs' option?"),Print_names_of_files_and_the_reason_they_are_part_of_the_compilation:Ts(6505,3,"Print_names_of_files_and_the_reason_they_are_part_of_the_compilation_6505","Print names of files and the reason they are part of the compilation."),Consider_adding_a_declare_modifier_to_this_class:Ts(6506,3,"Consider_adding_a_declare_modifier_to_this_class_6506","Consider adding a 'declare' modifier to this class."),Allow_JavaScript_files_to_be_a_part_of_your_program_Use_the_checkJS_option_to_get_errors_from_these_files:Ts(6600,3,"Allow_JavaScript_files_to_be_a_part_of_your_program_Use_the_checkJS_option_to_get_errors_from_these__6600","Allow JavaScript files to be a part of your program. Use the 'checkJS' option to get errors from these files."),Allow_import_x_from_y_when_a_module_doesn_t_have_a_default_export:Ts(6601,3,"Allow_import_x_from_y_when_a_module_doesn_t_have_a_default_export_6601","Allow 'import x from y' when a module doesn't have a default export."),Allow_accessing_UMD_globals_from_modules:Ts(6602,3,"Allow_accessing_UMD_globals_from_modules_6602","Allow accessing UMD globals from modules."),Disable_error_reporting_for_unreachable_code:Ts(6603,3,"Disable_error_reporting_for_unreachable_code_6603","Disable error reporting for unreachable code."),Disable_error_reporting_for_unused_labels:Ts(6604,3,"Disable_error_reporting_for_unused_labels_6604","Disable error reporting for unused labels."),Ensure_use_strict_is_always_emitted:Ts(6605,3,"Ensure_use_strict_is_always_emitted_6605","Ensure 'use strict' is always emitted."),Have_recompiles_in_projects_that_use_incremental_and_watch_mode_assume_that_changes_within_a_file_will_only_affect_files_directly_depending_on_it:Ts(6606,3,"Have_recompiles_in_projects_that_use_incremental_and_watch_mode_assume_that_changes_within_a_file_wi_6606","Have recompiles in projects that use 'incremental' and 'watch' mode assume that changes within a file will only affect files directly depending on it."),Specify_the_base_directory_to_resolve_non_relative_module_names:Ts(6607,3,"Specify_the_base_directory_to_resolve_non_relative_module_names_6607","Specify the base directory to resolve non-relative module names."),No_longer_supported_In_early_versions_manually_set_the_text_encoding_for_reading_files:Ts(6608,3,"No_longer_supported_In_early_versions_manually_set_the_text_encoding_for_reading_files_6608","No longer supported. In early versions, manually set the text encoding for reading files."),Enable_error_reporting_in_type_checked_JavaScript_files:Ts(6609,3,"Enable_error_reporting_in_type_checked_JavaScript_files_6609","Enable error reporting in type-checked JavaScript files."),Enable_constraints_that_allow_a_TypeScript_project_to_be_used_with_project_references:Ts(6611,3,"Enable_constraints_that_allow_a_TypeScript_project_to_be_used_with_project_references_6611","Enable constraints that allow a TypeScript project to be used with project references."),Generate_d_ts_files_from_TypeScript_and_JavaScript_files_in_your_project:Ts(6612,3,"Generate_d_ts_files_from_TypeScript_and_JavaScript_files_in_your_project_6612","Generate .d.ts files from TypeScript and JavaScript files in your project."),Specify_the_output_directory_for_generated_declaration_files:Ts(6613,3,"Specify_the_output_directory_for_generated_declaration_files_6613","Specify the output directory for generated declaration files."),Create_sourcemaps_for_d_ts_files:Ts(6614,3,"Create_sourcemaps_for_d_ts_files_6614","Create sourcemaps for d.ts files."),Output_compiler_performance_information_after_building:Ts(6615,3,"Output_compiler_performance_information_after_building_6615","Output compiler performance information after building."),Disables_inference_for_type_acquisition_by_looking_at_filenames_in_a_project:Ts(6616,3,"Disables_inference_for_type_acquisition_by_looking_at_filenames_in_a_project_6616","Disables inference for type acquisition by looking at filenames in a project."),Reduce_the_number_of_projects_loaded_automatically_by_TypeScript:Ts(6617,3,"Reduce_the_number_of_projects_loaded_automatically_by_TypeScript_6617","Reduce the number of projects loaded automatically by TypeScript."),Remove_the_20mb_cap_on_total_source_code_size_for_JavaScript_files_in_the_TypeScript_language_server:Ts(6618,3,"Remove_the_20mb_cap_on_total_source_code_size_for_JavaScript_files_in_the_TypeScript_language_server_6618","Remove the 20mb cap on total source code size for JavaScript files in the TypeScript language server."),Opt_a_project_out_of_multi_project_reference_checking_when_editing:Ts(6619,3,"Opt_a_project_out_of_multi_project_reference_checking_when_editing_6619","Opt a project out of multi-project reference checking when editing."),Disable_preferring_source_files_instead_of_declaration_files_when_referencing_composite_projects:Ts(6620,3,"Disable_preferring_source_files_instead_of_declaration_files_when_referencing_composite_projects_6620","Disable preferring source files instead of declaration files when referencing composite projects."),Emit_more_compliant_but_verbose_and_less_performant_JavaScript_for_iteration:Ts(6621,3,"Emit_more_compliant_but_verbose_and_less_performant_JavaScript_for_iteration_6621","Emit more compliant, but verbose and less performant JavaScript for iteration."),Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files:Ts(6622,3,"Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files_6622","Emit a UTF-8 Byte Order Mark (BOM) in the beginning of output files."),Only_output_d_ts_files_and_not_JavaScript_files:Ts(6623,3,"Only_output_d_ts_files_and_not_JavaScript_files_6623","Only output d.ts files and not JavaScript files."),Emit_design_type_metadata_for_decorated_declarations_in_source_files:Ts(6624,3,"Emit_design_type_metadata_for_decorated_declarations_in_source_files_6624","Emit design-type metadata for decorated declarations in source files."),Disable_the_type_acquisition_for_JavaScript_projects:Ts(6625,3,"Disable_the_type_acquisition_for_JavaScript_projects_6625","Disable the type acquisition for JavaScript projects"),Emit_additional_JavaScript_to_ease_support_for_importing_CommonJS_modules_This_enables_allowSyntheticDefaultImports_for_type_compatibility:Ts(6626,3,"Emit_additional_JavaScript_to_ease_support_for_importing_CommonJS_modules_This_enables_allowSyntheti_6626","Emit additional JavaScript to ease support for importing CommonJS modules. This enables 'allowSyntheticDefaultImports' for type compatibility."),Filters_results_from_the_include_option:Ts(6627,3,"Filters_results_from_the_include_option_6627","Filters results from the `include` option."),Remove_a_list_of_directories_from_the_watch_process:Ts(6628,3,"Remove_a_list_of_directories_from_the_watch_process_6628","Remove a list of directories from the watch process."),Remove_a_list_of_files_from_the_watch_mode_s_processing:Ts(6629,3,"Remove_a_list_of_files_from_the_watch_mode_s_processing_6629","Remove a list of files from the watch mode's processing."),Enable_experimental_support_for_legacy_experimental_decorators:Ts(6630,3,"Enable_experimental_support_for_legacy_experimental_decorators_6630","Enable experimental support for legacy experimental decorators."),Print_files_read_during_the_compilation_including_why_it_was_included:Ts(6631,3,"Print_files_read_during_the_compilation_including_why_it_was_included_6631","Print files read during the compilation including why it was included."),Output_more_detailed_compiler_performance_information_after_building:Ts(6632,3,"Output_more_detailed_compiler_performance_information_after_building_6632","Output more detailed compiler performance information after building."),Specify_one_or_more_path_or_node_module_references_to_base_configuration_files_from_which_settings_are_inherited:Ts(6633,3,"Specify_one_or_more_path_or_node_module_references_to_base_configuration_files_from_which_settings_a_6633","Specify one or more path or node module references to base configuration files from which settings are inherited."),Specify_what_approach_the_watcher_should_use_if_the_system_runs_out_of_native_file_watchers:Ts(6634,3,"Specify_what_approach_the_watcher_should_use_if_the_system_runs_out_of_native_file_watchers_6634","Specify what approach the watcher should use if the system runs out of native file watchers."),Include_a_list_of_files_This_does_not_support_glob_patterns_as_opposed_to_include:Ts(6635,3,"Include_a_list_of_files_This_does_not_support_glob_patterns_as_opposed_to_include_6635","Include a list of files. This does not support glob patterns, as opposed to `include`."),Build_all_projects_including_those_that_appear_to_be_up_to_date:Ts(6636,3,"Build_all_projects_including_those_that_appear_to_be_up_to_date_6636","Build all projects, including those that appear to be up to date."),Ensure_that_casing_is_correct_in_imports:Ts(6637,3,"Ensure_that_casing_is_correct_in_imports_6637","Ensure that casing is correct in imports."),Emit_a_v8_CPU_profile_of_the_compiler_run_for_debugging:Ts(6638,3,"Emit_a_v8_CPU_profile_of_the_compiler_run_for_debugging_6638","Emit a v8 CPU profile of the compiler run for debugging."),Allow_importing_helper_functions_from_tslib_once_per_project_instead_of_including_them_per_file:Ts(6639,3,"Allow_importing_helper_functions_from_tslib_once_per_project_instead_of_including_them_per_file_6639","Allow importing helper functions from tslib once per project, instead of including them per-file."),Specify_a_list_of_glob_patterns_that_match_files_to_be_included_in_compilation:Ts(6641,3,"Specify_a_list_of_glob_patterns_that_match_files_to_be_included_in_compilation_6641","Specify a list of glob patterns that match files to be included in compilation."),Save_tsbuildinfo_files_to_allow_for_incremental_compilation_of_projects:Ts(6642,3,"Save_tsbuildinfo_files_to_allow_for_incremental_compilation_of_projects_6642","Save .tsbuildinfo files to allow for incremental compilation of projects."),Include_sourcemap_files_inside_the_emitted_JavaScript:Ts(6643,3,"Include_sourcemap_files_inside_the_emitted_JavaScript_6643","Include sourcemap files inside the emitted JavaScript."),Include_source_code_in_the_sourcemaps_inside_the_emitted_JavaScript:Ts(6644,3,"Include_source_code_in_the_sourcemaps_inside_the_emitted_JavaScript_6644","Include source code in the sourcemaps inside the emitted JavaScript."),Ensure_that_each_file_can_be_safely_transpiled_without_relying_on_other_imports:Ts(6645,3,"Ensure_that_each_file_can_be_safely_transpiled_without_relying_on_other_imports_6645","Ensure that each file can be safely transpiled without relying on other imports."),Specify_what_JSX_code_is_generated:Ts(6646,3,"Specify_what_JSX_code_is_generated_6646","Specify what JSX code is generated."),Specify_the_JSX_factory_function_used_when_targeting_React_JSX_emit_e_g_React_createElement_or_h:Ts(6647,3,"Specify_the_JSX_factory_function_used_when_targeting_React_JSX_emit_e_g_React_createElement_or_h_6647","Specify the JSX factory function used when targeting React JSX emit, e.g. 'React.createElement' or 'h'."),Specify_the_JSX_Fragment_reference_used_for_fragments_when_targeting_React_JSX_emit_e_g_React_Fragment_or_Fragment:Ts(6648,3,"Specify_the_JSX_Fragment_reference_used_for_fragments_when_targeting_React_JSX_emit_e_g_React_Fragme_6648","Specify the JSX Fragment reference used for fragments when targeting React JSX emit e.g. 'React.Fragment' or 'Fragment'."),Specify_module_specifier_used_to_import_the_JSX_factory_functions_when_using_jsx_Colon_react_jsx_Asterisk:Ts(6649,3,"Specify_module_specifier_used_to_import_the_JSX_factory_functions_when_using_jsx_Colon_react_jsx_Ast_6649","Specify module specifier used to import the JSX factory functions when using 'jsx: react-jsx*'."),Make_keyof_only_return_strings_instead_of_string_numbers_or_symbols_Legacy_option:Ts(6650,3,"Make_keyof_only_return_strings_instead_of_string_numbers_or_symbols_Legacy_option_6650","Make keyof only return strings instead of string, numbers or symbols. Legacy option."),Specify_a_set_of_bundled_library_declaration_files_that_describe_the_target_runtime_environment:Ts(6651,3,"Specify_a_set_of_bundled_library_declaration_files_that_describe_the_target_runtime_environment_6651","Specify a set of bundled library declaration files that describe the target runtime environment."),Print_the_names_of_emitted_files_after_a_compilation:Ts(6652,3,"Print_the_names_of_emitted_files_after_a_compilation_6652","Print the names of emitted files after a compilation."),Print_all_of_the_files_read_during_the_compilation:Ts(6653,3,"Print_all_of_the_files_read_during_the_compilation_6653","Print all of the files read during the compilation."),Set_the_language_of_the_messaging_from_TypeScript_This_does_not_affect_emit:Ts(6654,3,"Set_the_language_of_the_messaging_from_TypeScript_This_does_not_affect_emit_6654","Set the language of the messaging from TypeScript. This does not affect emit."),Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations:Ts(6655,3,"Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations_6655","Specify the location where debugger should locate map files instead of generated locations."),Specify_the_maximum_folder_depth_used_for_checking_JavaScript_files_from_node_modules_Only_applicable_with_allowJs:Ts(6656,3,"Specify_the_maximum_folder_depth_used_for_checking_JavaScript_files_from_node_modules_Only_applicabl_6656","Specify the maximum folder depth used for checking JavaScript files from 'node_modules'. Only applicable with 'allowJs'."),Specify_what_module_code_is_generated:Ts(6657,3,"Specify_what_module_code_is_generated_6657","Specify what module code is generated."),Specify_how_TypeScript_looks_up_a_file_from_a_given_module_specifier:Ts(6658,3,"Specify_how_TypeScript_looks_up_a_file_from_a_given_module_specifier_6658","Specify how TypeScript looks up a file from a given module specifier."),Set_the_newline_character_for_emitting_files:Ts(6659,3,"Set_the_newline_character_for_emitting_files_6659","Set the newline character for emitting files."),Disable_emitting_files_from_a_compilation:Ts(6660,3,"Disable_emitting_files_from_a_compilation_6660","Disable emitting files from a compilation."),Disable_generating_custom_helper_functions_like_extends_in_compiled_output:Ts(6661,3,"Disable_generating_custom_helper_functions_like_extends_in_compiled_output_6661","Disable generating custom helper functions like '__extends' in compiled output."),Disable_emitting_files_if_any_type_checking_errors_are_reported:Ts(6662,3,"Disable_emitting_files_if_any_type_checking_errors_are_reported_6662","Disable emitting files if any type checking errors are reported."),Disable_truncating_types_in_error_messages:Ts(6663,3,"Disable_truncating_types_in_error_messages_6663","Disable truncating types in error messages."),Enable_error_reporting_for_fallthrough_cases_in_switch_statements:Ts(6664,3,"Enable_error_reporting_for_fallthrough_cases_in_switch_statements_6664","Enable error reporting for fallthrough cases in switch statements."),Enable_error_reporting_for_expressions_and_declarations_with_an_implied_any_type:Ts(6665,3,"Enable_error_reporting_for_expressions_and_declarations_with_an_implied_any_type_6665","Enable error reporting for expressions and declarations with an implied 'any' type."),Ensure_overriding_members_in_derived_classes_are_marked_with_an_override_modifier:Ts(6666,3,"Ensure_overriding_members_in_derived_classes_are_marked_with_an_override_modifier_6666","Ensure overriding members in derived classes are marked with an override modifier."),Enable_error_reporting_for_codepaths_that_do_not_explicitly_return_in_a_function:Ts(6667,3,"Enable_error_reporting_for_codepaths_that_do_not_explicitly_return_in_a_function_6667","Enable error reporting for codepaths that do not explicitly return in a function."),Enable_error_reporting_when_this_is_given_the_type_any:Ts(6668,3,"Enable_error_reporting_when_this_is_given_the_type_any_6668","Enable error reporting when 'this' is given the type 'any'."),Disable_adding_use_strict_directives_in_emitted_JavaScript_files:Ts(6669,3,"Disable_adding_use_strict_directives_in_emitted_JavaScript_files_6669","Disable adding 'use strict' directives in emitted JavaScript files."),Disable_including_any_library_files_including_the_default_lib_d_ts:Ts(6670,3,"Disable_including_any_library_files_including_the_default_lib_d_ts_6670","Disable including any library files, including the default lib.d.ts."),Enforces_using_indexed_accessors_for_keys_declared_using_an_indexed_type:Ts(6671,3,"Enforces_using_indexed_accessors_for_keys_declared_using_an_indexed_type_6671","Enforces using indexed accessors for keys declared using an indexed type."),Disallow_import_s_require_s_or_reference_s_from_expanding_the_number_of_files_TypeScript_should_add_to_a_project:Ts(6672,3,"Disallow_import_s_require_s_or_reference_s_from_expanding_the_number_of_files_TypeScript_should_add__6672","Disallow 'import's, 'require's or '<reference>'s from expanding the number of files TypeScript should add to a project."),Disable_strict_checking_of_generic_signatures_in_function_types:Ts(6673,3,"Disable_strict_checking_of_generic_signatures_in_function_types_6673","Disable strict checking of generic signatures in function types."),Add_undefined_to_a_type_when_accessed_using_an_index:Ts(6674,3,"Add_undefined_to_a_type_when_accessed_using_an_index_6674","Add 'undefined' to a type when accessed using an index."),Enable_error_reporting_when_local_variables_aren_t_read:Ts(6675,3,"Enable_error_reporting_when_local_variables_aren_t_read_6675","Enable error reporting when local variables aren't read."),Raise_an_error_when_a_function_parameter_isn_t_read:Ts(6676,3,"Raise_an_error_when_a_function_parameter_isn_t_read_6676","Raise an error when a function parameter isn't read."),Deprecated_setting_Use_outFile_instead:Ts(6677,3,"Deprecated_setting_Use_outFile_instead_6677","Deprecated setting. Use 'outFile' instead."),Specify_an_output_folder_for_all_emitted_files:Ts(6678,3,"Specify_an_output_folder_for_all_emitted_files_6678","Specify an output folder for all emitted files."),Specify_a_file_that_bundles_all_outputs_into_one_JavaScript_file_If_declaration_is_true_also_designates_a_file_that_bundles_all_d_ts_output:Ts(6679,3,"Specify_a_file_that_bundles_all_outputs_into_one_JavaScript_file_If_declaration_is_true_also_designa_6679","Specify a file that bundles all outputs into one JavaScript file. If 'declaration' is true, also designates a file that bundles all .d.ts output."),Specify_a_set_of_entries_that_re_map_imports_to_additional_lookup_locations:Ts(6680,3,"Specify_a_set_of_entries_that_re_map_imports_to_additional_lookup_locations_6680","Specify a set of entries that re-map imports to additional lookup locations."),Specify_a_list_of_language_service_plugins_to_include:Ts(6681,3,"Specify_a_list_of_language_service_plugins_to_include_6681","Specify a list of language service plugins to include."),Disable_erasing_const_enum_declarations_in_generated_code:Ts(6682,3,"Disable_erasing_const_enum_declarations_in_generated_code_6682","Disable erasing 'const enum' declarations in generated code."),Disable_resolving_symlinks_to_their_realpath_This_correlates_to_the_same_flag_in_node:Ts(6683,3,"Disable_resolving_symlinks_to_their_realpath_This_correlates_to_the_same_flag_in_node_6683","Disable resolving symlinks to their realpath. This correlates to the same flag in node."),Disable_wiping_the_console_in_watch_mode:Ts(6684,3,"Disable_wiping_the_console_in_watch_mode_6684","Disable wiping the console in watch mode."),Enable_color_and_formatting_in_TypeScript_s_output_to_make_compiler_errors_easier_to_read:Ts(6685,3,"Enable_color_and_formatting_in_TypeScript_s_output_to_make_compiler_errors_easier_to_read_6685","Enable color and formatting in TypeScript's output to make compiler errors easier to read."),Specify_the_object_invoked_for_createElement_This_only_applies_when_targeting_react_JSX_emit:Ts(6686,3,"Specify_the_object_invoked_for_createElement_This_only_applies_when_targeting_react_JSX_emit_6686","Specify the object invoked for 'createElement'. This only applies when targeting 'react' JSX emit."),Specify_an_array_of_objects_that_specify_paths_for_projects_Used_in_project_references:Ts(6687,3,"Specify_an_array_of_objects_that_specify_paths_for_projects_Used_in_project_references_6687","Specify an array of objects that specify paths for projects. Used in project references."),Disable_emitting_comments:Ts(6688,3,"Disable_emitting_comments_6688","Disable emitting comments."),Enable_importing_json_files:Ts(6689,3,"Enable_importing_json_files_6689","Enable importing .json files."),Specify_the_root_folder_within_your_source_files:Ts(6690,3,"Specify_the_root_folder_within_your_source_files_6690","Specify the root folder within your source files."),Allow_multiple_folders_to_be_treated_as_one_when_resolving_modules:Ts(6691,3,"Allow_multiple_folders_to_be_treated_as_one_when_resolving_modules_6691","Allow multiple folders to be treated as one when resolving modules."),Skip_type_checking_d_ts_files_that_are_included_with_TypeScript:Ts(6692,3,"Skip_type_checking_d_ts_files_that_are_included_with_TypeScript_6692","Skip type checking .d.ts files that are included with TypeScript."),Skip_type_checking_all_d_ts_files:Ts(6693,3,"Skip_type_checking_all_d_ts_files_6693","Skip type checking all .d.ts files."),Create_source_map_files_for_emitted_JavaScript_files:Ts(6694,3,"Create_source_map_files_for_emitted_JavaScript_files_6694","Create source map files for emitted JavaScript files."),Specify_the_root_path_for_debuggers_to_find_the_reference_source_code:Ts(6695,3,"Specify_the_root_path_for_debuggers_to_find_the_reference_source_code_6695","Specify the root path for debuggers to find the reference source code."),Check_that_the_arguments_for_bind_call_and_apply_methods_match_the_original_function:Ts(6697,3,"Check_that_the_arguments_for_bind_call_and_apply_methods_match_the_original_function_6697","Check that the arguments for 'bind', 'call', and 'apply' methods match the original function."),When_assigning_functions_check_to_ensure_parameters_and_the_return_values_are_subtype_compatible:Ts(6698,3,"When_assigning_functions_check_to_ensure_parameters_and_the_return_values_are_subtype_compatible_6698","When assigning functions, check to ensure parameters and the return values are subtype-compatible."),When_type_checking_take_into_account_null_and_undefined:Ts(6699,3,"When_type_checking_take_into_account_null_and_undefined_6699","When type checking, take into account 'null' and 'undefined'."),Check_for_class_properties_that_are_declared_but_not_set_in_the_constructor:Ts(6700,3,"Check_for_class_properties_that_are_declared_but_not_set_in_the_constructor_6700","Check for class properties that are declared but not set in the constructor."),Disable_emitting_declarations_that_have_internal_in_their_JSDoc_comments:Ts(6701,3,"Disable_emitting_declarations_that_have_internal_in_their_JSDoc_comments_6701","Disable emitting declarations that have '@internal' in their JSDoc comments."),Disable_reporting_of_excess_property_errors_during_the_creation_of_object_literals:Ts(6702,3,"Disable_reporting_of_excess_property_errors_during_the_creation_of_object_literals_6702","Disable reporting of excess property errors during the creation of object literals."),Suppress_noImplicitAny_errors_when_indexing_objects_that_lack_index_signatures:Ts(6703,3,"Suppress_noImplicitAny_errors_when_indexing_objects_that_lack_index_signatures_6703","Suppress 'noImplicitAny' errors when indexing objects that lack index signatures."),Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_support_recursive_watching_natively:Ts(6704,3,"Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_supp_6704","Synchronously call callbacks and update the state of directory watchers on platforms that don`t support recursive watching natively."),Set_the_JavaScript_language_version_for_emitted_JavaScript_and_include_compatible_library_declarations:Ts(6705,3,"Set_the_JavaScript_language_version_for_emitted_JavaScript_and_include_compatible_library_declaratio_6705","Set the JavaScript language version for emitted JavaScript and include compatible library declarations."),Log_paths_used_during_the_moduleResolution_process:Ts(6706,3,"Log_paths_used_during_the_moduleResolution_process_6706","Log paths used during the 'moduleResolution' process."),Specify_the_path_to_tsbuildinfo_incremental_compilation_file:Ts(6707,3,"Specify_the_path_to_tsbuildinfo_incremental_compilation_file_6707","Specify the path to .tsbuildinfo incremental compilation file."),Specify_options_for_automatic_acquisition_of_declaration_files:Ts(6709,3,"Specify_options_for_automatic_acquisition_of_declaration_files_6709","Specify options for automatic acquisition of declaration files."),Specify_multiple_folders_that_act_like_Slashnode_modules_Slash_types:Ts(6710,3,"Specify_multiple_folders_that_act_like_Slashnode_modules_Slash_types_6710","Specify multiple folders that act like './node_modules/@types'."),Specify_type_package_names_to_be_included_without_being_referenced_in_a_source_file:Ts(6711,3,"Specify_type_package_names_to_be_included_without_being_referenced_in_a_source_file_6711","Specify type package names to be included without being referenced in a source file."),Emit_ECMAScript_standard_compliant_class_fields:Ts(6712,3,"Emit_ECMAScript_standard_compliant_class_fields_6712","Emit ECMAScript-standard-compliant class fields."),Enable_verbose_logging:Ts(6713,3,"Enable_verbose_logging_6713","Enable verbose logging."),Specify_how_directories_are_watched_on_systems_that_lack_recursive_file_watching_functionality:Ts(6714,3,"Specify_how_directories_are_watched_on_systems_that_lack_recursive_file_watching_functionality_6714","Specify how directories are watched on systems that lack recursive file-watching functionality."),Specify_how_the_TypeScript_watch_mode_works:Ts(6715,3,"Specify_how_the_TypeScript_watch_mode_works_6715","Specify how the TypeScript watch mode works."),Require_undeclared_properties_from_index_signatures_to_use_element_accesses:Ts(6717,3,"Require_undeclared_properties_from_index_signatures_to_use_element_accesses_6717","Require undeclared properties from index signatures to use element accesses."),Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types:Ts(6718,3,"Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types_6718","Specify emit/checking behavior for imports that are only used for types."),Require_sufficient_annotation_on_exports_so_other_tools_can_trivially_generate_declaration_files:Ts(6719,3,"Require_sufficient_annotation_on_exports_so_other_tools_can_trivially_generate_declaration_files_6719","Require sufficient annotation on exports so other tools can trivially generate declaration files."),Default_catch_clause_variables_as_unknown_instead_of_any:Ts(6803,3,"Default_catch_clause_variables_as_unknown_instead_of_any_6803","Default catch clause variables as 'unknown' instead of 'any'."),Do_not_transform_or_elide_any_imports_or_exports_not_marked_as_type_only_ensuring_they_are_written_in_the_output_file_s_format_based_on_the_module_setting:Ts(6804,3,"Do_not_transform_or_elide_any_imports_or_exports_not_marked_as_type_only_ensuring_they_are_written_i_6804","Do not transform or elide any imports or exports not marked as type-only, ensuring they are written in the output file's format based on the 'module' setting."),Disable_full_type_checking_only_critical_parse_and_emit_errors_will_be_reported:Ts(6805,3,"Disable_full_type_checking_only_critical_parse_and_emit_errors_will_be_reported_6805","Disable full type checking (only critical parse and emit errors will be reported)."),one_of_Colon:Ts(6900,3,"one_of_Colon_6900","one of:"),one_or_more_Colon:Ts(6901,3,"one_or_more_Colon_6901","one or more:"),type_Colon:Ts(6902,3,"type_Colon_6902","type:"),default_Colon:Ts(6903,3,"default_Colon_6903","default:"),module_system_or_esModuleInterop:Ts(6904,3,"module_system_or_esModuleInterop_6904",'module === "system" or esModuleInterop'),false_unless_strict_is_set:Ts(6905,3,"false_unless_strict_is_set_6905","`false`, unless `strict` is set"),false_unless_composite_is_set:Ts(6906,3,"false_unless_composite_is_set_6906","`false`, unless `composite` is set"),node_modules_bower_components_jspm_packages_plus_the_value_of_outDir_if_one_is_specified:Ts(6907,3,"node_modules_bower_components_jspm_packages_plus_the_value_of_outDir_if_one_is_specified_6907",'`["node_modules", "bower_components", "jspm_packages"]`, plus the value of `outDir` if one is specified.'),if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk:Ts(6908,3,"if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk_6908",'`[]` if `files` is specified, otherwise `["**/*"]`'),true_if_composite_false_otherwise:Ts(6909,3,"true_if_composite_false_otherwise_6909","`true` if `composite`, `false` otherwise"),module_AMD_or_UMD_or_System_or_ES6_then_Classic_Otherwise_Node:Ts(69010,3,"module_AMD_or_UMD_or_System_or_ES6_then_Classic_Otherwise_Node_69010","module === `AMD` or `UMD` or `System` or `ES6`, then `Classic`, Otherwise `Node`"),Computed_from_the_list_of_input_files:Ts(6911,3,"Computed_from_the_list_of_input_files_6911","Computed from the list of input files"),Platform_specific:Ts(6912,3,"Platform_specific_6912","Platform specific"),You_can_learn_about_all_of_the_compiler_options_at_0:Ts(6913,3,"You_can_learn_about_all_of_the_compiler_options_at_0_6913","You can learn about all of the compiler options at {0}"),Including_watch_w_will_start_watching_the_current_project_for_the_file_changes_Once_set_you_can_config_watch_mode_with_Colon:Ts(6914,3,"Including_watch_w_will_start_watching_the_current_project_for_the_file_changes_Once_set_you_can_conf_6914","Including --watch, -w will start watching the current project for the file changes. Once set, you can config watch mode with:"),Using_build_b_will_make_tsc_behave_more_like_a_build_orchestrator_than_a_compiler_This_is_used_to_trigger_building_composite_projects_which_you_can_learn_more_about_at_0:Ts(6915,3,"Using_build_b_will_make_tsc_behave_more_like_a_build_orchestrator_than_a_compiler_This_is_used_to_tr_6915","Using --build, -b will make tsc behave more like a build orchestrator than a compiler. This is used to trigger building composite projects which you can learn more about at {0}"),COMMON_COMMANDS:Ts(6916,3,"COMMON_COMMANDS_6916","COMMON COMMANDS"),ALL_COMPILER_OPTIONS:Ts(6917,3,"ALL_COMPILER_OPTIONS_6917","ALL COMPILER OPTIONS"),WATCH_OPTIONS:Ts(6918,3,"WATCH_OPTIONS_6918","WATCH OPTIONS"),BUILD_OPTIONS:Ts(6919,3,"BUILD_OPTIONS_6919","BUILD OPTIONS"),COMMON_COMPILER_OPTIONS:Ts(6920,3,"COMMON_COMPILER_OPTIONS_6920","COMMON COMPILER OPTIONS"),COMMAND_LINE_FLAGS:Ts(6921,3,"COMMAND_LINE_FLAGS_6921","COMMAND LINE FLAGS"),tsc_Colon_The_TypeScript_Compiler:Ts(6922,3,"tsc_Colon_The_TypeScript_Compiler_6922","tsc: The TypeScript Compiler"),Compiles_the_current_project_tsconfig_json_in_the_working_directory:Ts(6923,3,"Compiles_the_current_project_tsconfig_json_in_the_working_directory_6923","Compiles the current project (tsconfig.json in the working directory.)"),Ignoring_tsconfig_json_compiles_the_specified_files_with_default_compiler_options:Ts(6924,3,"Ignoring_tsconfig_json_compiles_the_specified_files_with_default_compiler_options_6924","Ignoring tsconfig.json, compiles the specified files with default compiler options."),Build_a_composite_project_in_the_working_directory:Ts(6925,3,"Build_a_composite_project_in_the_working_directory_6925","Build a composite project in the working directory."),Creates_a_tsconfig_json_with_the_recommended_settings_in_the_working_directory:Ts(6926,3,"Creates_a_tsconfig_json_with_the_recommended_settings_in_the_working_directory_6926","Creates a tsconfig.json with the recommended settings in the working directory."),Compiles_the_TypeScript_project_located_at_the_specified_path:Ts(6927,3,"Compiles_the_TypeScript_project_located_at_the_specified_path_6927","Compiles the TypeScript project located at the specified path."),An_expanded_version_of_this_information_showing_all_possible_compiler_options:Ts(6928,3,"An_expanded_version_of_this_information_showing_all_possible_compiler_options_6928","An expanded version of this information, showing all possible compiler options"),Compiles_the_current_project_with_additional_settings:Ts(6929,3,"Compiles_the_current_project_with_additional_settings_6929","Compiles the current project, with additional settings."),true_for_ES2022_and_above_including_ESNext:Ts(6930,3,"true_for_ES2022_and_above_including_ESNext_6930","`true` for ES2022 and above, including ESNext."),List_of_file_name_suffixes_to_search_when_resolving_a_module:Ts(6931,1,"List_of_file_name_suffixes_to_search_when_resolving_a_module_6931","List of file name suffixes to search when resolving a module."),Variable_0_implicitly_has_an_1_type:Ts(7005,1,"Variable_0_implicitly_has_an_1_type_7005","Variable '{0}' implicitly has an '{1}' type."),Parameter_0_implicitly_has_an_1_type:Ts(7006,1,"Parameter_0_implicitly_has_an_1_type_7006","Parameter '{0}' implicitly has an '{1}' type."),Member_0_implicitly_has_an_1_type:Ts(7008,1,"Member_0_implicitly_has_an_1_type_7008","Member '{0}' implicitly has an '{1}' type."),new_expression_whose_target_lacks_a_construct_signature_implicitly_has_an_any_type:Ts(7009,1,"new_expression_whose_target_lacks_a_construct_signature_implicitly_has_an_any_type_7009","'new' expression, whose target lacks a construct signature, implicitly has an 'any' type."),_0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type:Ts(7010,1,"_0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type_7010","'{0}', which lacks return-type annotation, implicitly has an '{1}' return type."),Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type:Ts(7011,1,"Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type_7011","Function expression, which lacks return-type annotation, implicitly has an '{0}' return type."),This_overload_implicitly_returns_the_type_0_because_it_lacks_a_return_type_annotation:Ts(7012,1,"This_overload_implicitly_returns_the_type_0_because_it_lacks_a_return_type_annotation_7012","This overload implicitly returns the type '{0}' because it lacks a return type annotation."),Construct_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type:Ts(7013,1,"Construct_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type_7013","Construct signature, which lacks return-type annotation, implicitly has an 'any' return type."),Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type:Ts(7014,1,"Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type_7014","Function type, which lacks return-type annotation, implicitly has an '{0}' return type."),Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number:Ts(7015,1,"Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number_7015","Element implicitly has an 'any' type because index expression is not of type 'number'."),Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type:Ts(7016,1,"Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type_7016","Could not find a declaration file for module '{0}'. '{1}' implicitly has an 'any' type."),Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature:Ts(7017,1,"Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_7017","Element implicitly has an 'any' type because type '{0}' has no index signature."),Object_literal_s_property_0_implicitly_has_an_1_type:Ts(7018,1,"Object_literal_s_property_0_implicitly_has_an_1_type_7018","Object literal's property '{0}' implicitly has an '{1}' type."),Rest_parameter_0_implicitly_has_an_any_type:Ts(7019,1,"Rest_parameter_0_implicitly_has_an_any_type_7019","Rest parameter '{0}' implicitly has an 'any[]' type."),Call_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type:Ts(7020,1,"Call_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type_7020","Call signature, which lacks return-type annotation, implicitly has an 'any' return type."),_0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or_indirectly_in_its_own_initializer:Ts(7022,1,"_0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or__7022","'{0}' implicitly has type 'any' because it does not have a type annotation and is referenced directly or indirectly in its own initializer."),_0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions:Ts(7023,1,"_0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_reference_7023","'{0}' implicitly has return type 'any' because it does not have a return type annotation and is referenced directly or indirectly in one of its return expressions."),Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions:Ts(7024,1,"Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_ref_7024","Function implicitly has return type 'any' because it does not have a return type annotation and is referenced directly or indirectly in one of its return expressions."),Generator_implicitly_has_yield_type_0_because_it_does_not_yield_any_values_Consider_supplying_a_return_type_annotation:Ts(7025,1,"Generator_implicitly_has_yield_type_0_because_it_does_not_yield_any_values_Consider_supplying_a_retu_7025","Generator implicitly has yield type '{0}' because it does not yield any values. Consider supplying a return type annotation."),JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists:Ts(7026,1,"JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists_7026","JSX element implicitly has type 'any' because no interface 'JSX.{0}' exists."),Unreachable_code_detected:Ts(7027,1,"Unreachable_code_detected_7027","Unreachable code detected.",!0),Unused_label:Ts(7028,1,"Unused_label_7028","Unused label.",!0),Fallthrough_case_in_switch:Ts(7029,1,"Fallthrough_case_in_switch_7029","Fallthrough case in switch."),Not_all_code_paths_return_a_value:Ts(7030,1,"Not_all_code_paths_return_a_value_7030","Not all code paths return a value."),Binding_element_0_implicitly_has_an_1_type:Ts(7031,1,"Binding_element_0_implicitly_has_an_1_type_7031","Binding element '{0}' implicitly has an '{1}' type."),Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation:Ts(7032,1,"Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation_7032","Property '{0}' implicitly has type 'any', because its set accessor lacks a parameter type annotation."),Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation:Ts(7033,1,"Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation_7033","Property '{0}' implicitly has type 'any', because its get accessor lacks a return type annotation."),Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined:Ts(7034,1,"Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined_7034","Variable '{0}' implicitly has type '{1}' in some locations where its type cannot be determined."),Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare_module_0:Ts(7035,1,"Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare__7035","Try `npm i --save-dev @types/{1}` if it exists or add a new declaration (.d.ts) file containing `declare module '{0}';`"),Dynamic_import_s_specifier_must_be_of_type_string_but_here_has_type_0:Ts(7036,1,"Dynamic_import_s_specifier_must_be_of_type_string_but_here_has_type_0_7036","Dynamic import's specifier must be of type 'string', but here has type '{0}'."),Enables_emit_interoperability_between_CommonJS_and_ES_Modules_via_creation_of_namespace_objects_for_all_imports_Implies_allowSyntheticDefaultImports:Ts(7037,3,"Enables_emit_interoperability_between_CommonJS_and_ES_Modules_via_creation_of_namespace_objects_for__7037","Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'."),Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cause_a_failure_at_runtime_Consider_using_a_default_import_or_import_require_here_instead:Ts(7038,3,"Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cau_7038","Type originates at this import. A namespace-style import cannot be called or constructed, and will cause a failure at runtime. Consider using a default import or import require here instead."),Mapped_object_type_implicitly_has_an_any_template_type:Ts(7039,1,"Mapped_object_type_implicitly_has_an_any_template_type_7039","Mapped object type implicitly has an 'any' template type."),If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_Slash_Slashgithub_com_SlashDefinitelyTyped_SlashDefinitelyTyped_Slashtree_Slashmaster_Slashtypes_Slash_1:Ts(7040,1,"If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_S_7040","If the '{0}' package actually exposes this module, consider sending a pull request to amend 'https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/{1}'"),The_containing_arrow_function_captures_the_global_value_of_this:Ts(7041,1,"The_containing_arrow_function_captures_the_global_value_of_this_7041","The containing arrow function captures the global value of 'this'."),Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used:Ts(7042,1,"Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used_7042","Module '{0}' was resolved to '{1}', but '--resolveJsonModule' is not used."),Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:Ts(7043,2,"Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7043","Variable '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:Ts(7044,2,"Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7044","Parameter '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:Ts(7045,2,"Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7045","Member '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage:Ts(7046,2,"Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage_7046","Variable '{0}' implicitly has type '{1}' in some locations, but a better type may be inferred from usage."),Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage:Ts(7047,2,"Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage_7047","Rest parameter '{0}' implicitly has an 'any[]' type, but a better type may be inferred from usage."),Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage:Ts(7048,2,"Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage_7048","Property '{0}' implicitly has type 'any', but a better type for its get accessor may be inferred from usage."),Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage:Ts(7049,2,"Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage_7049","Property '{0}' implicitly has type 'any', but a better type for its set accessor may be inferred from usage."),_0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage:Ts(7050,2,"_0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage_7050","'{0}' implicitly has an '{1}' return type, but a better type may be inferred from usage."),Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1:Ts(7051,1,"Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1_7051","Parameter has a name but no type. Did you mean '{0}: {1}'?"),Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1:Ts(7052,1,"Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1_7052","Element implicitly has an 'any' type because type '{0}' has no index signature. Did you mean to call '{1}'?"),Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1:Ts(7053,1,"Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1_7053","Element implicitly has an 'any' type because expression of type '{0}' can't be used to index type '{1}'."),No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1:Ts(7054,1,"No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1_7054","No index signature with a parameter of type '{0}' was found on type '{1}'."),_0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type:Ts(7055,1,"_0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type_7055","'{0}', which lacks return-type annotation, implicitly has an '{1}' yield type."),The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_type_annotation_is_needed:Ts(7056,1,"The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_ty_7056","The inferred type of this node exceeds the maximum length the compiler will serialize. An explicit type annotation is needed."),yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_type_annotation:Ts(7057,1,"yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_t_7057","'yield' expression implicitly results in an 'any' type because its containing generator lacks a return-type annotation."),If_the_0_package_actually_exposes_this_module_try_adding_a_new_declaration_d_ts_file_containing_declare_module_1:Ts(7058,1,"If_the_0_package_actually_exposes_this_module_try_adding_a_new_declaration_d_ts_file_containing_decl_7058","If the '{0}' package actually exposes this module, try adding a new declaration (.d.ts) file containing `declare module '{1}';`"),This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Use_an_as_expression_instead:Ts(7059,1,"This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Use_an_as_expression_instead_7059","This syntax is reserved in files with the .mts or .cts extension. Use an `as` expression instead."),This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Add_a_trailing_comma_or_explicit_constraint:Ts(7060,1,"This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Add_a_trailing_comma_or_explicit_cons_7060","This syntax is reserved in files with the .mts or .cts extension. Add a trailing comma or explicit constraint."),A_mapped_type_may_not_declare_properties_or_methods:Ts(7061,1,"A_mapped_type_may_not_declare_properties_or_methods_7061","A mapped type may not declare properties or methods."),You_cannot_rename_this_element:Ts(8e3,1,"You_cannot_rename_this_element_8000","You cannot rename this element."),You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library:Ts(8001,1,"You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library_8001","You cannot rename elements that are defined in the standard TypeScript library."),import_can_only_be_used_in_TypeScript_files:Ts(8002,1,"import_can_only_be_used_in_TypeScript_files_8002","'import ... =' can only be used in TypeScript files."),export_can_only_be_used_in_TypeScript_files:Ts(8003,1,"export_can_only_be_used_in_TypeScript_files_8003","'export =' can only be used in TypeScript files."),Type_parameter_declarations_can_only_be_used_in_TypeScript_files:Ts(8004,1,"Type_parameter_declarations_can_only_be_used_in_TypeScript_files_8004","Type parameter declarations can only be used in TypeScript files."),implements_clauses_can_only_be_used_in_TypeScript_files:Ts(8005,1,"implements_clauses_can_only_be_used_in_TypeScript_files_8005","'implements' clauses can only be used in TypeScript files."),_0_declarations_can_only_be_used_in_TypeScript_files:Ts(8006,1,"_0_declarations_can_only_be_used_in_TypeScript_files_8006","'{0}' declarations can only be used in TypeScript files."),Type_aliases_can_only_be_used_in_TypeScript_files:Ts(8008,1,"Type_aliases_can_only_be_used_in_TypeScript_files_8008","Type aliases can only be used in TypeScript files."),The_0_modifier_can_only_be_used_in_TypeScript_files:Ts(8009,1,"The_0_modifier_can_only_be_used_in_TypeScript_files_8009","The '{0}' modifier can only be used in TypeScript files."),Type_annotations_can_only_be_used_in_TypeScript_files:Ts(8010,1,"Type_annotations_can_only_be_used_in_TypeScript_files_8010","Type annotations can only be used in TypeScript files."),Type_arguments_can_only_be_used_in_TypeScript_files:Ts(8011,1,"Type_arguments_can_only_be_used_in_TypeScript_files_8011","Type arguments can only be used in TypeScript files."),Parameter_modifiers_can_only_be_used_in_TypeScript_files:Ts(8012,1,"Parameter_modifiers_can_only_be_used_in_TypeScript_files_8012","Parameter modifiers can only be used in TypeScript files."),Non_null_assertions_can_only_be_used_in_TypeScript_files:Ts(8013,1,"Non_null_assertions_can_only_be_used_in_TypeScript_files_8013","Non-null assertions can only be used in TypeScript files."),Type_assertion_expressions_can_only_be_used_in_TypeScript_files:Ts(8016,1,"Type_assertion_expressions_can_only_be_used_in_TypeScript_files_8016","Type assertion expressions can only be used in TypeScript files."),Signature_declarations_can_only_be_used_in_TypeScript_files:Ts(8017,1,"Signature_declarations_can_only_be_used_in_TypeScript_files_8017","Signature declarations can only be used in TypeScript files."),Report_errors_in_js_files:Ts(8019,3,"Report_errors_in_js_files_8019","Report errors in .js files."),JSDoc_types_can_only_be_used_inside_documentation_comments:Ts(8020,1,"JSDoc_types_can_only_be_used_inside_documentation_comments_8020","JSDoc types can only be used inside documentation comments."),JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags:Ts(8021,1,"JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags_8021","JSDoc '@typedef' tag should either have a type annotation or be followed by '@property' or '@member' tags."),JSDoc_0_is_not_attached_to_a_class:Ts(8022,1,"JSDoc_0_is_not_attached_to_a_class_8022","JSDoc '@{0}' is not attached to a class."),JSDoc_0_1_does_not_match_the_extends_2_clause:Ts(8023,1,"JSDoc_0_1_does_not_match_the_extends_2_clause_8023","JSDoc '@{0} {1}' does not match the 'extends {2}' clause."),JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name:Ts(8024,1,"JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_8024","JSDoc '@param' tag has name '{0}', but there is no parameter with that name."),Class_declarations_cannot_have_more_than_one_augments_or_extends_tag:Ts(8025,1,"Class_declarations_cannot_have_more_than_one_augments_or_extends_tag_8025","Class declarations cannot have more than one '@augments' or '@extends' tag."),Expected_0_type_arguments_provide_these_with_an_extends_tag:Ts(8026,1,"Expected_0_type_arguments_provide_these_with_an_extends_tag_8026","Expected {0} type arguments; provide these with an '@extends' tag."),Expected_0_1_type_arguments_provide_these_with_an_extends_tag:Ts(8027,1,"Expected_0_1_type_arguments_provide_these_with_an_extends_tag_8027","Expected {0}-{1} type arguments; provide these with an '@extends' tag."),JSDoc_may_only_appear_in_the_last_parameter_of_a_signature:Ts(8028,1,"JSDoc_may_only_appear_in_the_last_parameter_of_a_signature_8028","JSDoc '...' may only appear in the last parameter of a signature."),JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_had_an_array_type:Ts(8029,1,"JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_h_8029","JSDoc '@param' tag has name '{0}', but there is no parameter with that name. It would match 'arguments' if it had an array type."),The_type_of_a_function_declaration_must_match_the_function_s_signature:Ts(8030,1,"The_type_of_a_function_declaration_must_match_the_function_s_signature_8030","The type of a function declaration must match the function's signature."),You_cannot_rename_a_module_via_a_global_import:Ts(8031,1,"You_cannot_rename_a_module_via_a_global_import_8031","You cannot rename a module via a global import."),Qualified_name_0_is_not_allowed_without_a_leading_param_object_1:Ts(8032,1,"Qualified_name_0_is_not_allowed_without_a_leading_param_object_1_8032","Qualified name '{0}' is not allowed without a leading '@param {object} {1}'."),A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags:Ts(8033,1,"A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags_8033","A JSDoc '@typedef' comment may not contain multiple '@type' tags."),The_tag_was_first_specified_here:Ts(8034,1,"The_tag_was_first_specified_here_8034","The tag was first specified here."),You_cannot_rename_elements_that_are_defined_in_a_node_modules_folder:Ts(8035,1,"You_cannot_rename_elements_that_are_defined_in_a_node_modules_folder_8035","You cannot rename elements that are defined in a 'node_modules' folder."),You_cannot_rename_elements_that_are_defined_in_another_node_modules_folder:Ts(8036,1,"You_cannot_rename_elements_that_are_defined_in_another_node_modules_folder_8036","You cannot rename elements that are defined in another 'node_modules' folder."),Type_satisfaction_expressions_can_only_be_used_in_TypeScript_files:Ts(8037,1,"Type_satisfaction_expressions_can_only_be_used_in_TypeScript_files_8037","Type satisfaction expressions can only be used in TypeScript files."),Decorators_may_not_appear_after_export_or_export_default_if_they_also_appear_before_export:Ts(8038,1,"Decorators_may_not_appear_after_export_or_export_default_if_they_also_appear_before_export_8038","Decorators may not appear after 'export' or 'export default' if they also appear before 'export'."),A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag:Ts(8039,1,"A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag_8039","A JSDoc '@template' tag may not follow a '@typedef', '@callback', or '@overload' tag"),Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_declaration_emit:Ts(9005,1,"Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_9005","Declaration emit for this file requires using private name '{0}'. An explicit type annotation may unblock declaration emit."),Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotation_may_unblock_declaration_emit:Ts(9006,1,"Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotati_9006","Declaration emit for this file requires using private name '{0}' from module '{1}'. An explicit type annotation may unblock declaration emit."),Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations:Ts(9007,1,"Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations_9007","Function must have an explicit return type annotation with --isolatedDeclarations."),Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations:Ts(9008,1,"Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations_9008","Method must have an explicit return type annotation with --isolatedDeclarations."),At_least_one_accessor_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations:Ts(9009,1,"At_least_one_accessor_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations_9009","At least one accessor must have an explicit return type annotation with --isolatedDeclarations."),Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations:Ts(9010,1,"Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9010","Variable must have an explicit type annotation with --isolatedDeclarations."),Parameter_must_have_an_explicit_type_annotation_with_isolatedDeclarations:Ts(9011,1,"Parameter_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9011","Parameter must have an explicit type annotation with --isolatedDeclarations."),Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations:Ts(9012,1,"Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations_9012","Property must have an explicit type annotation with --isolatedDeclarations."),Expression_type_can_t_be_inferred_with_isolatedDeclarations:Ts(9013,1,"Expression_type_can_t_be_inferred_with_isolatedDeclarations_9013","Expression type can't be inferred with --isolatedDeclarations."),Computed_properties_must_be_number_or_string_literals_variables_or_dotted_expressions_with_isolatedDeclarations:Ts(9014,1,"Computed_properties_must_be_number_or_string_literals_variables_or_dotted_expressions_with_isolatedD_9014","Computed properties must be number or string literals, variables or dotted expressions with --isolatedDeclarations."),Objects_that_contain_spread_assignments_can_t_be_inferred_with_isolatedDeclarations:Ts(9015,1,"Objects_that_contain_spread_assignments_can_t_be_inferred_with_isolatedDeclarations_9015","Objects that contain spread assignments can't be inferred with --isolatedDeclarations."),Objects_that_contain_shorthand_properties_can_t_be_inferred_with_isolatedDeclarations:Ts(9016,1,"Objects_that_contain_shorthand_properties_can_t_be_inferred_with_isolatedDeclarations_9016","Objects that contain shorthand properties can't be inferred with --isolatedDeclarations."),Only_const_arrays_can_be_inferred_with_isolatedDeclarations:Ts(9017,1,"Only_const_arrays_can_be_inferred_with_isolatedDeclarations_9017","Only const arrays can be inferred with --isolatedDeclarations."),Arrays_with_spread_elements_can_t_inferred_with_isolatedDeclarations:Ts(9018,1,"Arrays_with_spread_elements_can_t_inferred_with_isolatedDeclarations_9018","Arrays with spread elements can't inferred with --isolatedDeclarations."),Binding_elements_can_t_be_exported_directly_with_isolatedDeclarations:Ts(9019,1,"Binding_elements_can_t_be_exported_directly_with_isolatedDeclarations_9019","Binding elements can't be exported directly with --isolatedDeclarations."),Enum_member_initializers_must_be_computable_without_references_to_external_symbols_with_isolatedDeclarations:Ts(9020,1,"Enum_member_initializers_must_be_computable_without_references_to_external_symbols_with_isolatedDecl_9020","Enum member initializers must be computable without references to external symbols with --isolatedDeclarations."),Extends_clause_can_t_contain_an_expression_with_isolatedDeclarations:Ts(9021,1,"Extends_clause_can_t_contain_an_expression_with_isolatedDeclarations_9021","Extends clause can't contain an expression with --isolatedDeclarations."),Inference_from_class_expressions_is_not_supported_with_isolatedDeclarations:Ts(9022,1,"Inference_from_class_expressions_is_not_supported_with_isolatedDeclarations_9022","Inference from class expressions is not supported with --isolatedDeclarations."),Assigning_properties_to_functions_without_declaring_them_is_not_supported_with_isolatedDeclarations_Add_an_explicit_declaration_for_the_properties_assigned_to_this_function:Ts(9023,1,"Assigning_properties_to_functions_without_declaring_them_is_not_supported_with_isolatedDeclarations__9023","Assigning properties to functions without declaring them is not supported with --isolatedDeclarations. Add an explicit declaration for the properties assigned to this function."),Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_it_s_type_This_is_not_supported_with_isolatedDeclarations:Ts(9025,1,"Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_it_s_type_This_is_not_su_9025","Declaration emit for this parameter requires implicitly adding undefined to it's type. This is not supported with --isolatedDeclarations."),Declaration_emit_for_this_file_requires_preserving_this_import_for_augmentations_This_is_not_supported_with_isolatedDeclarations:Ts(9026,1,"Declaration_emit_for_this_file_requires_preserving_this_import_for_augmentations_This_is_not_support_9026","Declaration emit for this file requires preserving this import for augmentations. This is not supported with --isolatedDeclarations."),Add_a_type_annotation_to_the_variable_0:Ts(9027,1,"Add_a_type_annotation_to_the_variable_0_9027","Add a type annotation to the variable {0}."),Add_a_type_annotation_to_the_parameter_0:Ts(9028,1,"Add_a_type_annotation_to_the_parameter_0_9028","Add a type annotation to the parameter {0}."),Add_a_type_annotation_to_the_property_0:Ts(9029,1,"Add_a_type_annotation_to_the_property_0_9029","Add a type annotation to the property {0}."),Add_a_return_type_to_the_function_expression:Ts(9030,1,"Add_a_return_type_to_the_function_expression_9030","Add a return type to the function expression."),Add_a_return_type_to_the_function_declaration:Ts(9031,1,"Add_a_return_type_to_the_function_declaration_9031","Add a return type to the function declaration."),Add_a_return_type_to_the_get_accessor_declaration:Ts(9032,1,"Add_a_return_type_to_the_get_accessor_declaration_9032","Add a return type to the get accessor declaration."),Add_a_type_to_parameter_of_the_set_accessor_declaration:Ts(9033,1,"Add_a_type_to_parameter_of_the_set_accessor_declaration_9033","Add a type to parameter of the set accessor declaration."),Add_a_return_type_to_the_method:Ts(9034,1,"Add_a_return_type_to_the_method_9034","Add a return type to the method"),Add_satisfies_and_a_type_assertion_to_this_expression_satisfies_T_as_T_to_make_the_type_explicit:Ts(9035,1,"Add_satisfies_and_a_type_assertion_to_this_expression_satisfies_T_as_T_to_make_the_type_explicit_9035","Add satisfies and a type assertion to this expression (satisfies T as T) to make the type explicit."),Move_the_expression_in_default_export_to_a_variable_and_add_a_type_annotation_to_it:Ts(9036,1,"Move_the_expression_in_default_export_to_a_variable_and_add_a_type_annotation_to_it_9036","Move the expression in default export to a variable and add a type annotation to it."),Default_exports_can_t_be_inferred_with_isolatedDeclarations:Ts(9037,1,"Default_exports_can_t_be_inferred_with_isolatedDeclarations_9037","Default exports can't be inferred with --isolatedDeclarations."),Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations:Ts(9038,1,"Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations_9038","Computed property names on class or object literals cannot be inferred with --isolatedDeclarations."),Type_containing_private_name_0_can_t_be_used_with_isolatedDeclarations:Ts(9039,1,"Type_containing_private_name_0_can_t_be_used_with_isolatedDeclarations_9039","Type containing private name '{0}' can't be used with --isolatedDeclarations."),JSX_attributes_must_only_be_assigned_a_non_empty_expression:Ts(17e3,1,"JSX_attributes_must_only_be_assigned_a_non_empty_expression_17000","JSX attributes must only be assigned a non-empty 'expression'."),JSX_elements_cannot_have_multiple_attributes_with_the_same_name:Ts(17001,1,"JSX_elements_cannot_have_multiple_attributes_with_the_same_name_17001","JSX elements cannot have multiple attributes with the same name."),Expected_corresponding_JSX_closing_tag_for_0:Ts(17002,1,"Expected_corresponding_JSX_closing_tag_for_0_17002","Expected corresponding JSX closing tag for '{0}'."),Cannot_use_JSX_unless_the_jsx_flag_is_provided:Ts(17004,1,"Cannot_use_JSX_unless_the_jsx_flag_is_provided_17004","Cannot use JSX unless the '--jsx' flag is provided."),A_constructor_cannot_contain_a_super_call_when_its_class_extends_null:Ts(17005,1,"A_constructor_cannot_contain_a_super_call_when_its_class_extends_null_17005","A constructor cannot contain a 'super' call when its class extends 'null'."),An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses:Ts(17006,1,"An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_ex_17006","An unary expression with the '{0}' operator is not allowed in the left-hand side of an exponentiation expression. Consider enclosing the expression in parentheses."),A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses:Ts(17007,1,"A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Con_17007","A type assertion expression is not allowed in the left-hand side of an exponentiation expression. Consider enclosing the expression in parentheses."),JSX_element_0_has_no_corresponding_closing_tag:Ts(17008,1,"JSX_element_0_has_no_corresponding_closing_tag_17008","JSX element '{0}' has no corresponding closing tag."),super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class:Ts(17009,1,"super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class_17009","'super' must be called before accessing 'this' in the constructor of a derived class."),Unknown_type_acquisition_option_0:Ts(17010,1,"Unknown_type_acquisition_option_0_17010","Unknown type acquisition option '{0}'."),super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class:Ts(17011,1,"super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class_17011","'super' must be called before accessing a property of 'super' in the constructor of a derived class."),_0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2:Ts(17012,1,"_0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2_17012","'{0}' is not a valid meta-property for keyword '{1}'. Did you mean '{2}'?"),Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constructor:Ts(17013,1,"Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constru_17013","Meta-property '{0}' is only allowed in the body of a function declaration, function expression, or constructor."),JSX_fragment_has_no_corresponding_closing_tag:Ts(17014,1,"JSX_fragment_has_no_corresponding_closing_tag_17014","JSX fragment has no corresponding closing tag."),Expected_corresponding_closing_tag_for_JSX_fragment:Ts(17015,1,"Expected_corresponding_closing_tag_for_JSX_fragment_17015","Expected corresponding closing tag for JSX fragment."),The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_compiler_option:Ts(17016,1,"The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_com_17016","The 'jsxFragmentFactory' compiler option must be provided to use JSX fragments with the 'jsxFactory' compiler option."),An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments:Ts(17017,1,"An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments_17017","An @jsxFrag pragma is required when using an @jsx pragma with JSX fragments."),Unknown_type_acquisition_option_0_Did_you_mean_1:Ts(17018,1,"Unknown_type_acquisition_option_0_Did_you_mean_1_17018","Unknown type acquisition option '{0}'. Did you mean '{1}'?"),_0_at_the_end_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1:Ts(17019,1,"_0_at_the_end_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1_17019","'{0}' at the end of a type is not valid TypeScript syntax. Did you mean to write '{1}'?"),_0_at_the_start_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1:Ts(17020,1,"_0_at_the_start_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1_17020","'{0}' at the start of a type is not valid TypeScript syntax. Did you mean to write '{1}'?"),Unicode_escape_sequence_cannot_appear_here:Ts(17021,1,"Unicode_escape_sequence_cannot_appear_here_17021","Unicode escape sequence cannot appear here."),Circularity_detected_while_resolving_configuration_Colon_0:Ts(18e3,1,"Circularity_detected_while_resolving_configuration_Colon_0_18000","Circularity detected while resolving configuration: {0}"),The_files_list_in_config_file_0_is_empty:Ts(18002,1,"The_files_list_in_config_file_0_is_empty_18002","The 'files' list in config file '{0}' is empty."),No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2:Ts(18003,1,"No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2_18003","No inputs were found in config file '{0}'. Specified 'include' paths were '{1}' and 'exclude' paths were '{2}'."),File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module:Ts(80001,2,"File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module_80001","File is a CommonJS module; it may be converted to an ES module."),This_constructor_function_may_be_converted_to_a_class_declaration:Ts(80002,2,"This_constructor_function_may_be_converted_to_a_class_declaration_80002","This constructor function may be converted to a class declaration."),Import_may_be_converted_to_a_default_import:Ts(80003,2,"Import_may_be_converted_to_a_default_import_80003","Import may be converted to a default import."),JSDoc_types_may_be_moved_to_TypeScript_types:Ts(80004,2,"JSDoc_types_may_be_moved_to_TypeScript_types_80004","JSDoc types may be moved to TypeScript types."),require_call_may_be_converted_to_an_import:Ts(80005,2,"require_call_may_be_converted_to_an_import_80005","'require' call may be converted to an import."),This_may_be_converted_to_an_async_function:Ts(80006,2,"This_may_be_converted_to_an_async_function_80006","This may be converted to an async function."),await_has_no_effect_on_the_type_of_this_expression:Ts(80007,2,"await_has_no_effect_on_the_type_of_this_expression_80007","'await' has no effect on the type of this expression."),Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accurately_as_integers:Ts(80008,2,"Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accur_80008","Numeric literals with absolute values equal to 2^53 or greater are too large to be represented accurately as integers."),JSDoc_typedef_may_be_converted_to_TypeScript_type:Ts(80009,2,"JSDoc_typedef_may_be_converted_to_TypeScript_type_80009","JSDoc typedef may be converted to TypeScript type."),JSDoc_typedefs_may_be_converted_to_TypeScript_types:Ts(80010,2,"JSDoc_typedefs_may_be_converted_to_TypeScript_types_80010","JSDoc typedefs may be converted to TypeScript types."),Add_missing_super_call:Ts(90001,3,"Add_missing_super_call_90001","Add missing 'super()' call"),Make_super_call_the_first_statement_in_the_constructor:Ts(90002,3,"Make_super_call_the_first_statement_in_the_constructor_90002","Make 'super()' call the first statement in the constructor"),Change_extends_to_implements:Ts(90003,3,"Change_extends_to_implements_90003","Change 'extends' to 'implements'"),Remove_unused_declaration_for_Colon_0:Ts(90004,3,"Remove_unused_declaration_for_Colon_0_90004","Remove unused declaration for: '{0}'"),Remove_import_from_0:Ts(90005,3,"Remove_import_from_0_90005","Remove import from '{0}'"),Implement_interface_0:Ts(90006,3,"Implement_interface_0_90006","Implement interface '{0}'"),Implement_inherited_abstract_class:Ts(90007,3,"Implement_inherited_abstract_class_90007","Implement inherited abstract class"),Add_0_to_unresolved_variable:Ts(90008,3,"Add_0_to_unresolved_variable_90008","Add '{0}.' to unresolved variable"),Remove_variable_statement:Ts(90010,3,"Remove_variable_statement_90010","Remove variable statement"),Remove_template_tag:Ts(90011,3,"Remove_template_tag_90011","Remove template tag"),Remove_type_parameters:Ts(90012,3,"Remove_type_parameters_90012","Remove type parameters"),Import_0_from_1:Ts(90013,3,"Import_0_from_1_90013","Import '{0}' from \"{1}\""),Change_0_to_1:Ts(90014,3,"Change_0_to_1_90014","Change '{0}' to '{1}'"),Declare_property_0:Ts(90016,3,"Declare_property_0_90016","Declare property '{0}'"),Add_index_signature_for_property_0:Ts(90017,3,"Add_index_signature_for_property_0_90017","Add index signature for property '{0}'"),Disable_checking_for_this_file:Ts(90018,3,"Disable_checking_for_this_file_90018","Disable checking for this file"),Ignore_this_error_message:Ts(90019,3,"Ignore_this_error_message_90019","Ignore this error message"),Initialize_property_0_in_the_constructor:Ts(90020,3,"Initialize_property_0_in_the_constructor_90020","Initialize property '{0}' in the constructor"),Initialize_static_property_0:Ts(90021,3,"Initialize_static_property_0_90021","Initialize static property '{0}'"),Change_spelling_to_0:Ts(90022,3,"Change_spelling_to_0_90022","Change spelling to '{0}'"),Declare_method_0:Ts(90023,3,"Declare_method_0_90023","Declare method '{0}'"),Declare_static_method_0:Ts(90024,3,"Declare_static_method_0_90024","Declare static method '{0}'"),Prefix_0_with_an_underscore:Ts(90025,3,"Prefix_0_with_an_underscore_90025","Prefix '{0}' with an underscore"),Rewrite_as_the_indexed_access_type_0:Ts(90026,3,"Rewrite_as_the_indexed_access_type_0_90026","Rewrite as the indexed access type '{0}'"),Declare_static_property_0:Ts(90027,3,"Declare_static_property_0_90027","Declare static property '{0}'"),Call_decorator_expression:Ts(90028,3,"Call_decorator_expression_90028","Call decorator expression"),Add_async_modifier_to_containing_function:Ts(90029,3,"Add_async_modifier_to_containing_function_90029","Add async modifier to containing function"),Replace_infer_0_with_unknown:Ts(90030,3,"Replace_infer_0_with_unknown_90030","Replace 'infer {0}' with 'unknown'"),Replace_all_unused_infer_with_unknown:Ts(90031,3,"Replace_all_unused_infer_with_unknown_90031","Replace all unused 'infer' with 'unknown'"),Add_parameter_name:Ts(90034,3,"Add_parameter_name_90034","Add parameter name"),Declare_private_property_0:Ts(90035,3,"Declare_private_property_0_90035","Declare private property '{0}'"),Replace_0_with_Promise_1:Ts(90036,3,"Replace_0_with_Promise_1_90036","Replace '{0}' with 'Promise<{1}>'"),Fix_all_incorrect_return_type_of_an_async_functions:Ts(90037,3,"Fix_all_incorrect_return_type_of_an_async_functions_90037","Fix all incorrect return type of an async functions"),Declare_private_method_0:Ts(90038,3,"Declare_private_method_0_90038","Declare private method '{0}'"),Remove_unused_destructuring_declaration:Ts(90039,3,"Remove_unused_destructuring_declaration_90039","Remove unused destructuring declaration"),Remove_unused_declarations_for_Colon_0:Ts(90041,3,"Remove_unused_declarations_for_Colon_0_90041","Remove unused declarations for: '{0}'"),Declare_a_private_field_named_0:Ts(90053,3,"Declare_a_private_field_named_0_90053","Declare a private field named '{0}'."),Includes_imports_of_types_referenced_by_0:Ts(90054,3,"Includes_imports_of_types_referenced_by_0_90054","Includes imports of types referenced by '{0}'"),Remove_type_from_import_declaration_from_0:Ts(90055,3,"Remove_type_from_import_declaration_from_0_90055","Remove 'type' from import declaration from \"{0}\""),Remove_type_from_import_of_0_from_1:Ts(90056,3,"Remove_type_from_import_of_0_from_1_90056","Remove 'type' from import of '{0}' from \"{1}\""),Add_import_from_0:Ts(90057,3,"Add_import_from_0_90057",'Add import from "{0}"'),Update_import_from_0:Ts(90058,3,"Update_import_from_0_90058",'Update import from "{0}"'),Export_0_from_module_1:Ts(90059,3,"Export_0_from_module_1_90059","Export '{0}' from module '{1}'"),Export_all_referenced_locals:Ts(90060,3,"Export_all_referenced_locals_90060","Export all referenced locals"),Update_modifiers_of_0:Ts(90061,3,"Update_modifiers_of_0_90061","Update modifiers of '{0}'"),Add_annotation_of_type_0:Ts(90062,3,"Add_annotation_of_type_0_90062","Add annotation of type '{0}'"),Add_return_type_0:Ts(90063,3,"Add_return_type_0_90063","Add return type '{0}'"),Extract_base_class_to_variable:Ts(90064,3,"Extract_base_class_to_variable_90064","Extract base class to variable"),Extract_default_export_to_variable:Ts(90065,3,"Extract_default_export_to_variable_90065","Extract default export to variable"),Extract_binding_expressions_to_variable:Ts(90066,3,"Extract_binding_expressions_to_variable_90066","Extract binding expressions to variable"),Add_all_missing_type_annotations:Ts(90067,3,"Add_all_missing_type_annotations_90067","Add all missing type annotations"),Add_satisfies_and_an_inline_type_assertion_with_0:Ts(90068,3,"Add_satisfies_and_an_inline_type_assertion_with_0_90068","Add satisfies and an inline type assertion with '{0}'"),Extract_to_variable_and_replace_with_0_as_typeof_0:Ts(90069,3,"Extract_to_variable_and_replace_with_0_as_typeof_0_90069","Extract to variable and replace with '{0} as typeof {0}'"),Mark_array_literal_as_const:Ts(90070,3,"Mark_array_literal_as_const_90070","Mark array literal as const"),Annotate_types_of_properties_expando_function_in_a_namespace:Ts(90071,3,"Annotate_types_of_properties_expando_function_in_a_namespace_90071","Annotate types of properties expando function in a namespace"),Convert_function_to_an_ES2015_class:Ts(95001,3,"Convert_function_to_an_ES2015_class_95001","Convert function to an ES2015 class"),Convert_0_to_1_in_0:Ts(95003,3,"Convert_0_to_1_in_0_95003","Convert '{0}' to '{1} in {0}'"),Extract_to_0_in_1:Ts(95004,3,"Extract_to_0_in_1_95004","Extract to {0} in {1}"),Extract_function:Ts(95005,3,"Extract_function_95005","Extract function"),Extract_constant:Ts(95006,3,"Extract_constant_95006","Extract constant"),Extract_to_0_in_enclosing_scope:Ts(95007,3,"Extract_to_0_in_enclosing_scope_95007","Extract to {0} in enclosing scope"),Extract_to_0_in_1_scope:Ts(95008,3,"Extract_to_0_in_1_scope_95008","Extract to {0} in {1} scope"),Annotate_with_type_from_JSDoc:Ts(95009,3,"Annotate_with_type_from_JSDoc_95009","Annotate with type from JSDoc"),Infer_type_of_0_from_usage:Ts(95011,3,"Infer_type_of_0_from_usage_95011","Infer type of '{0}' from usage"),Infer_parameter_types_from_usage:Ts(95012,3,"Infer_parameter_types_from_usage_95012","Infer parameter types from usage"),Convert_to_default_import:Ts(95013,3,"Convert_to_default_import_95013","Convert to default import"),Install_0:Ts(95014,3,"Install_0_95014","Install '{0}'"),Replace_import_with_0:Ts(95015,3,"Replace_import_with_0_95015","Replace import with '{0}'."),Use_synthetic_default_member:Ts(95016,3,"Use_synthetic_default_member_95016","Use synthetic 'default' member."),Convert_to_ES_module:Ts(95017,3,"Convert_to_ES_module_95017","Convert to ES module"),Add_undefined_type_to_property_0:Ts(95018,3,"Add_undefined_type_to_property_0_95018","Add 'undefined' type to property '{0}'"),Add_initializer_to_property_0:Ts(95019,3,"Add_initializer_to_property_0_95019","Add initializer to property '{0}'"),Add_definite_assignment_assertion_to_property_0:Ts(95020,3,"Add_definite_assignment_assertion_to_property_0_95020","Add definite assignment assertion to property '{0}'"),Convert_all_type_literals_to_mapped_type:Ts(95021,3,"Convert_all_type_literals_to_mapped_type_95021","Convert all type literals to mapped type"),Add_all_missing_members:Ts(95022,3,"Add_all_missing_members_95022","Add all missing members"),Infer_all_types_from_usage:Ts(95023,3,"Infer_all_types_from_usage_95023","Infer all types from usage"),Delete_all_unused_declarations:Ts(95024,3,"Delete_all_unused_declarations_95024","Delete all unused declarations"),Prefix_all_unused_declarations_with_where_possible:Ts(95025,3,"Prefix_all_unused_declarations_with_where_possible_95025","Prefix all unused declarations with '_' where possible"),Fix_all_detected_spelling_errors:Ts(95026,3,"Fix_all_detected_spelling_errors_95026","Fix all detected spelling errors"),Add_initializers_to_all_uninitialized_properties:Ts(95027,3,"Add_initializers_to_all_uninitialized_properties_95027","Add initializers to all uninitialized properties"),Add_definite_assignment_assertions_to_all_uninitialized_properties:Ts(95028,3,"Add_definite_assignment_assertions_to_all_uninitialized_properties_95028","Add definite assignment assertions to all uninitialized properties"),Add_undefined_type_to_all_uninitialized_properties:Ts(95029,3,"Add_undefined_type_to_all_uninitialized_properties_95029","Add undefined type to all uninitialized properties"),Change_all_jsdoc_style_types_to_TypeScript:Ts(95030,3,"Change_all_jsdoc_style_types_to_TypeScript_95030","Change all jsdoc-style types to TypeScript"),Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types:Ts(95031,3,"Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types_95031","Change all jsdoc-style types to TypeScript (and add '| undefined' to nullable types)"),Implement_all_unimplemented_interfaces:Ts(95032,3,"Implement_all_unimplemented_interfaces_95032","Implement all unimplemented interfaces"),Install_all_missing_types_packages:Ts(95033,3,"Install_all_missing_types_packages_95033","Install all missing types packages"),Rewrite_all_as_indexed_access_types:Ts(95034,3,"Rewrite_all_as_indexed_access_types_95034","Rewrite all as indexed access types"),Convert_all_to_default_imports:Ts(95035,3,"Convert_all_to_default_imports_95035","Convert all to default imports"),Make_all_super_calls_the_first_statement_in_their_constructor:Ts(95036,3,"Make_all_super_calls_the_first_statement_in_their_constructor_95036","Make all 'super()' calls the first statement in their constructor"),Add_qualifier_to_all_unresolved_variables_matching_a_member_name:Ts(95037,3,"Add_qualifier_to_all_unresolved_variables_matching_a_member_name_95037","Add qualifier to all unresolved variables matching a member name"),Change_all_extended_interfaces_to_implements:Ts(95038,3,"Change_all_extended_interfaces_to_implements_95038","Change all extended interfaces to 'implements'"),Add_all_missing_super_calls:Ts(95039,3,"Add_all_missing_super_calls_95039","Add all missing super calls"),Implement_all_inherited_abstract_classes:Ts(95040,3,"Implement_all_inherited_abstract_classes_95040","Implement all inherited abstract classes"),Add_all_missing_async_modifiers:Ts(95041,3,"Add_all_missing_async_modifiers_95041","Add all missing 'async' modifiers"),Add_ts_ignore_to_all_error_messages:Ts(95042,3,"Add_ts_ignore_to_all_error_messages_95042","Add '@ts-ignore' to all error messages"),Annotate_everything_with_types_from_JSDoc:Ts(95043,3,"Annotate_everything_with_types_from_JSDoc_95043","Annotate everything with types from JSDoc"),Add_to_all_uncalled_decorators:Ts(95044,3,"Add_to_all_uncalled_decorators_95044","Add '()' to all uncalled decorators"),Convert_all_constructor_functions_to_classes:Ts(95045,3,"Convert_all_constructor_functions_to_classes_95045","Convert all constructor functions to classes"),Generate_get_and_set_accessors:Ts(95046,3,"Generate_get_and_set_accessors_95046","Generate 'get' and 'set' accessors"),Convert_require_to_import:Ts(95047,3,"Convert_require_to_import_95047","Convert 'require' to 'import'"),Convert_all_require_to_import:Ts(95048,3,"Convert_all_require_to_import_95048","Convert all 'require' to 'import'"),Move_to_a_new_file:Ts(95049,3,"Move_to_a_new_file_95049","Move to a new file"),Remove_unreachable_code:Ts(95050,3,"Remove_unreachable_code_95050","Remove unreachable code"),Remove_all_unreachable_code:Ts(95051,3,"Remove_all_unreachable_code_95051","Remove all unreachable code"),Add_missing_typeof:Ts(95052,3,"Add_missing_typeof_95052","Add missing 'typeof'"),Remove_unused_label:Ts(95053,3,"Remove_unused_label_95053","Remove unused label"),Remove_all_unused_labels:Ts(95054,3,"Remove_all_unused_labels_95054","Remove all unused labels"),Convert_0_to_mapped_object_type:Ts(95055,3,"Convert_0_to_mapped_object_type_95055","Convert '{0}' to mapped object type"),Convert_namespace_import_to_named_imports:Ts(95056,3,"Convert_namespace_import_to_named_imports_95056","Convert namespace import to named imports"),Convert_named_imports_to_namespace_import:Ts(95057,3,"Convert_named_imports_to_namespace_import_95057","Convert named imports to namespace import"),Add_or_remove_braces_in_an_arrow_function:Ts(95058,3,"Add_or_remove_braces_in_an_arrow_function_95058","Add or remove braces in an arrow function"),Add_braces_to_arrow_function:Ts(95059,3,"Add_braces_to_arrow_function_95059","Add braces to arrow function"),Remove_braces_from_arrow_function:Ts(95060,3,"Remove_braces_from_arrow_function_95060","Remove braces from arrow function"),Convert_default_export_to_named_export:Ts(95061,3,"Convert_default_export_to_named_export_95061","Convert default export to named export"),Convert_named_export_to_default_export:Ts(95062,3,"Convert_named_export_to_default_export_95062","Convert named export to default export"),Add_missing_enum_member_0:Ts(95063,3,"Add_missing_enum_member_0_95063","Add missing enum member '{0}'"),Add_all_missing_imports:Ts(95064,3,"Add_all_missing_imports_95064","Add all missing imports"),Convert_to_async_function:Ts(95065,3,"Convert_to_async_function_95065","Convert to async function"),Convert_all_to_async_functions:Ts(95066,3,"Convert_all_to_async_functions_95066","Convert all to async functions"),Add_missing_call_parentheses:Ts(95067,3,"Add_missing_call_parentheses_95067","Add missing call parentheses"),Add_all_missing_call_parentheses:Ts(95068,3,"Add_all_missing_call_parentheses_95068","Add all missing call parentheses"),Add_unknown_conversion_for_non_overlapping_types:Ts(95069,3,"Add_unknown_conversion_for_non_overlapping_types_95069","Add 'unknown' conversion for non-overlapping types"),Add_unknown_to_all_conversions_of_non_overlapping_types:Ts(95070,3,"Add_unknown_to_all_conversions_of_non_overlapping_types_95070","Add 'unknown' to all conversions of non-overlapping types"),Add_missing_new_operator_to_call:Ts(95071,3,"Add_missing_new_operator_to_call_95071","Add missing 'new' operator to call"),Add_missing_new_operator_to_all_calls:Ts(95072,3,"Add_missing_new_operator_to_all_calls_95072","Add missing 'new' operator to all calls"),Add_names_to_all_parameters_without_names:Ts(95073,3,"Add_names_to_all_parameters_without_names_95073","Add names to all parameters without names"),Enable_the_experimentalDecorators_option_in_your_configuration_file:Ts(95074,3,"Enable_the_experimentalDecorators_option_in_your_configuration_file_95074","Enable the 'experimentalDecorators' option in your configuration file"),Convert_parameters_to_destructured_object:Ts(95075,3,"Convert_parameters_to_destructured_object_95075","Convert parameters to destructured object"),Extract_type:Ts(95077,3,"Extract_type_95077","Extract type"),Extract_to_type_alias:Ts(95078,3,"Extract_to_type_alias_95078","Extract to type alias"),Extract_to_typedef:Ts(95079,3,"Extract_to_typedef_95079","Extract to typedef"),Infer_this_type_of_0_from_usage:Ts(95080,3,"Infer_this_type_of_0_from_usage_95080","Infer 'this' type of '{0}' from usage"),Add_const_to_unresolved_variable:Ts(95081,3,"Add_const_to_unresolved_variable_95081","Add 'const' to unresolved variable"),Add_const_to_all_unresolved_variables:Ts(95082,3,"Add_const_to_all_unresolved_variables_95082","Add 'const' to all unresolved variables"),Add_await:Ts(95083,3,"Add_await_95083","Add 'await'"),Add_await_to_initializer_for_0:Ts(95084,3,"Add_await_to_initializer_for_0_95084","Add 'await' to initializer for '{0}'"),Fix_all_expressions_possibly_missing_await:Ts(95085,3,"Fix_all_expressions_possibly_missing_await_95085","Fix all expressions possibly missing 'await'"),Remove_unnecessary_await:Ts(95086,3,"Remove_unnecessary_await_95086","Remove unnecessary 'await'"),Remove_all_unnecessary_uses_of_await:Ts(95087,3,"Remove_all_unnecessary_uses_of_await_95087","Remove all unnecessary uses of 'await'"),Enable_the_jsx_flag_in_your_configuration_file:Ts(95088,3,"Enable_the_jsx_flag_in_your_configuration_file_95088","Enable the '--jsx' flag in your configuration file"),Add_await_to_initializers:Ts(95089,3,"Add_await_to_initializers_95089","Add 'await' to initializers"),Extract_to_interface:Ts(95090,3,"Extract_to_interface_95090","Extract to interface"),Convert_to_a_bigint_numeric_literal:Ts(95091,3,"Convert_to_a_bigint_numeric_literal_95091","Convert to a bigint numeric literal"),Convert_all_to_bigint_numeric_literals:Ts(95092,3,"Convert_all_to_bigint_numeric_literals_95092","Convert all to bigint numeric literals"),Convert_const_to_let:Ts(95093,3,"Convert_const_to_let_95093","Convert 'const' to 'let'"),Prefix_with_declare:Ts(95094,3,"Prefix_with_declare_95094","Prefix with 'declare'"),Prefix_all_incorrect_property_declarations_with_declare:Ts(95095,3,"Prefix_all_incorrect_property_declarations_with_declare_95095","Prefix all incorrect property declarations with 'declare'"),Convert_to_template_string:Ts(95096,3,"Convert_to_template_string_95096","Convert to template string"),Add_export_to_make_this_file_into_a_module:Ts(95097,3,"Add_export_to_make_this_file_into_a_module_95097","Add 'export {}' to make this file into a module"),Set_the_target_option_in_your_configuration_file_to_0:Ts(95098,3,"Set_the_target_option_in_your_configuration_file_to_0_95098","Set the 'target' option in your configuration file to '{0}'"),Set_the_module_option_in_your_configuration_file_to_0:Ts(95099,3,"Set_the_module_option_in_your_configuration_file_to_0_95099","Set the 'module' option in your configuration file to '{0}'"),Convert_invalid_character_to_its_html_entity_code:Ts(95100,3,"Convert_invalid_character_to_its_html_entity_code_95100","Convert invalid character to its html entity code"),Convert_all_invalid_characters_to_HTML_entity_code:Ts(95101,3,"Convert_all_invalid_characters_to_HTML_entity_code_95101","Convert all invalid characters to HTML entity code"),Convert_all_const_to_let:Ts(95102,3,"Convert_all_const_to_let_95102","Convert all 'const' to 'let'"),Convert_function_expression_0_to_arrow_function:Ts(95105,3,"Convert_function_expression_0_to_arrow_function_95105","Convert function expression '{0}' to arrow function"),Convert_function_declaration_0_to_arrow_function:Ts(95106,3,"Convert_function_declaration_0_to_arrow_function_95106","Convert function declaration '{0}' to arrow function"),Fix_all_implicit_this_errors:Ts(95107,3,"Fix_all_implicit_this_errors_95107","Fix all implicit-'this' errors"),Wrap_invalid_character_in_an_expression_container:Ts(95108,3,"Wrap_invalid_character_in_an_expression_container_95108","Wrap invalid character in an expression container"),Wrap_all_invalid_characters_in_an_expression_container:Ts(95109,3,"Wrap_all_invalid_characters_in_an_expression_container_95109","Wrap all invalid characters in an expression container"),Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_to_read_more_about_this_file:Ts(95110,3,"Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_to_read_more_about_this_file_95110","Visit https://aka.ms/tsconfig to read more about this file"),Add_a_return_statement:Ts(95111,3,"Add_a_return_statement_95111","Add a return statement"),Remove_braces_from_arrow_function_body:Ts(95112,3,"Remove_braces_from_arrow_function_body_95112","Remove braces from arrow function body"),Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal:Ts(95113,3,"Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal_95113","Wrap the following body with parentheses which should be an object literal"),Add_all_missing_return_statement:Ts(95114,3,"Add_all_missing_return_statement_95114","Add all missing return statement"),Remove_braces_from_all_arrow_function_bodies_with_relevant_issues:Ts(95115,3,"Remove_braces_from_all_arrow_function_bodies_with_relevant_issues_95115","Remove braces from all arrow function bodies with relevant issues"),Wrap_all_object_literal_with_parentheses:Ts(95116,3,"Wrap_all_object_literal_with_parentheses_95116","Wrap all object literal with parentheses"),Move_labeled_tuple_element_modifiers_to_labels:Ts(95117,3,"Move_labeled_tuple_element_modifiers_to_labels_95117","Move labeled tuple element modifiers to labels"),Convert_overload_list_to_single_signature:Ts(95118,3,"Convert_overload_list_to_single_signature_95118","Convert overload list to single signature"),Generate_get_and_set_accessors_for_all_overriding_properties:Ts(95119,3,"Generate_get_and_set_accessors_for_all_overriding_properties_95119","Generate 'get' and 'set' accessors for all overriding properties"),Wrap_in_JSX_fragment:Ts(95120,3,"Wrap_in_JSX_fragment_95120","Wrap in JSX fragment"),Wrap_all_unparented_JSX_in_JSX_fragment:Ts(95121,3,"Wrap_all_unparented_JSX_in_JSX_fragment_95121","Wrap all unparented JSX in JSX fragment"),Convert_arrow_function_or_function_expression:Ts(95122,3,"Convert_arrow_function_or_function_expression_95122","Convert arrow function or function expression"),Convert_to_anonymous_function:Ts(95123,3,"Convert_to_anonymous_function_95123","Convert to anonymous function"),Convert_to_named_function:Ts(95124,3,"Convert_to_named_function_95124","Convert to named function"),Convert_to_arrow_function:Ts(95125,3,"Convert_to_arrow_function_95125","Convert to arrow function"),Remove_parentheses:Ts(95126,3,"Remove_parentheses_95126","Remove parentheses"),Could_not_find_a_containing_arrow_function:Ts(95127,3,"Could_not_find_a_containing_arrow_function_95127","Could not find a containing arrow function"),Containing_function_is_not_an_arrow_function:Ts(95128,3,"Containing_function_is_not_an_arrow_function_95128","Containing function is not an arrow function"),Could_not_find_export_statement:Ts(95129,3,"Could_not_find_export_statement_95129","Could not find export statement"),This_file_already_has_a_default_export:Ts(95130,3,"This_file_already_has_a_default_export_95130","This file already has a default export"),Could_not_find_import_clause:Ts(95131,3,"Could_not_find_import_clause_95131","Could not find import clause"),Could_not_find_namespace_import_or_named_imports:Ts(95132,3,"Could_not_find_namespace_import_or_named_imports_95132","Could not find namespace import or named imports"),Selection_is_not_a_valid_type_node:Ts(95133,3,"Selection_is_not_a_valid_type_node_95133","Selection is not a valid type node"),No_type_could_be_extracted_from_this_type_node:Ts(95134,3,"No_type_could_be_extracted_from_this_type_node_95134","No type could be extracted from this type node"),Could_not_find_property_for_which_to_generate_accessor:Ts(95135,3,"Could_not_find_property_for_which_to_generate_accessor_95135","Could not find property for which to generate accessor"),Name_is_not_valid:Ts(95136,3,"Name_is_not_valid_95136","Name is not valid"),Can_only_convert_property_with_modifier:Ts(95137,3,"Can_only_convert_property_with_modifier_95137","Can only convert property with modifier"),Switch_each_misused_0_to_1:Ts(95138,3,"Switch_each_misused_0_to_1_95138","Switch each misused '{0}' to '{1}'"),Convert_to_optional_chain_expression:Ts(95139,3,"Convert_to_optional_chain_expression_95139","Convert to optional chain expression"),Could_not_find_convertible_access_expression:Ts(95140,3,"Could_not_find_convertible_access_expression_95140","Could not find convertible access expression"),Could_not_find_matching_access_expressions:Ts(95141,3,"Could_not_find_matching_access_expressions_95141","Could not find matching access expressions"),Can_only_convert_logical_AND_access_chains:Ts(95142,3,"Can_only_convert_logical_AND_access_chains_95142","Can only convert logical AND access chains"),Add_void_to_Promise_resolved_without_a_value:Ts(95143,3,"Add_void_to_Promise_resolved_without_a_value_95143","Add 'void' to Promise resolved without a value"),Add_void_to_all_Promises_resolved_without_a_value:Ts(95144,3,"Add_void_to_all_Promises_resolved_without_a_value_95144","Add 'void' to all Promises resolved without a value"),Use_element_access_for_0:Ts(95145,3,"Use_element_access_for_0_95145","Use element access for '{0}'"),Use_element_access_for_all_undeclared_properties:Ts(95146,3,"Use_element_access_for_all_undeclared_properties_95146","Use element access for all undeclared properties."),Delete_all_unused_imports:Ts(95147,3,"Delete_all_unused_imports_95147","Delete all unused imports"),Infer_function_return_type:Ts(95148,3,"Infer_function_return_type_95148","Infer function return type"),Return_type_must_be_inferred_from_a_function:Ts(95149,3,"Return_type_must_be_inferred_from_a_function_95149","Return type must be inferred from a function"),Could_not_determine_function_return_type:Ts(95150,3,"Could_not_determine_function_return_type_95150","Could not determine function return type"),Could_not_convert_to_arrow_function:Ts(95151,3,"Could_not_convert_to_arrow_function_95151","Could not convert to arrow function"),Could_not_convert_to_named_function:Ts(95152,3,"Could_not_convert_to_named_function_95152","Could not convert to named function"),Could_not_convert_to_anonymous_function:Ts(95153,3,"Could_not_convert_to_anonymous_function_95153","Could not convert to anonymous function"),Can_only_convert_string_concatenations_and_string_literals:Ts(95154,3,"Can_only_convert_string_concatenations_and_string_literals_95154","Can only convert string concatenations and string literals"),Selection_is_not_a_valid_statement_or_statements:Ts(95155,3,"Selection_is_not_a_valid_statement_or_statements_95155","Selection is not a valid statement or statements"),Add_missing_function_declaration_0:Ts(95156,3,"Add_missing_function_declaration_0_95156","Add missing function declaration '{0}'"),Add_all_missing_function_declarations:Ts(95157,3,"Add_all_missing_function_declarations_95157","Add all missing function declarations"),Method_not_implemented:Ts(95158,3,"Method_not_implemented_95158","Method not implemented."),Function_not_implemented:Ts(95159,3,"Function_not_implemented_95159","Function not implemented."),Add_override_modifier:Ts(95160,3,"Add_override_modifier_95160","Add 'override' modifier"),Remove_override_modifier:Ts(95161,3,"Remove_override_modifier_95161","Remove 'override' modifier"),Add_all_missing_override_modifiers:Ts(95162,3,"Add_all_missing_override_modifiers_95162","Add all missing 'override' modifiers"),Remove_all_unnecessary_override_modifiers:Ts(95163,3,"Remove_all_unnecessary_override_modifiers_95163","Remove all unnecessary 'override' modifiers"),Can_only_convert_named_export:Ts(95164,3,"Can_only_convert_named_export_95164","Can only convert named export"),Add_missing_properties:Ts(95165,3,"Add_missing_properties_95165","Add missing properties"),Add_all_missing_properties:Ts(95166,3,"Add_all_missing_properties_95166","Add all missing properties"),Add_missing_attributes:Ts(95167,3,"Add_missing_attributes_95167","Add missing attributes"),Add_all_missing_attributes:Ts(95168,3,"Add_all_missing_attributes_95168","Add all missing attributes"),Add_undefined_to_optional_property_type:Ts(95169,3,"Add_undefined_to_optional_property_type_95169","Add 'undefined' to optional property type"),Convert_named_imports_to_default_import:Ts(95170,3,"Convert_named_imports_to_default_import_95170","Convert named imports to default import"),Delete_unused_param_tag_0:Ts(95171,3,"Delete_unused_param_tag_0_95171","Delete unused '@param' tag '{0}'"),Delete_all_unused_param_tags:Ts(95172,3,"Delete_all_unused_param_tags_95172","Delete all unused '@param' tags"),Rename_param_tag_name_0_to_1:Ts(95173,3,"Rename_param_tag_name_0_to_1_95173","Rename '@param' tag name '{0}' to '{1}'"),Use_0:Ts(95174,3,"Use_0_95174","Use `{0}`."),Use_Number_isNaN_in_all_conditions:Ts(95175,3,"Use_Number_isNaN_in_all_conditions_95175","Use `Number.isNaN` in all conditions."),Convert_typedef_to_TypeScript_type:Ts(95176,3,"Convert_typedef_to_TypeScript_type_95176","Convert typedef to TypeScript type."),Convert_all_typedef_to_TypeScript_types:Ts(95177,3,"Convert_all_typedef_to_TypeScript_types_95177","Convert all typedef to TypeScript types."),Move_to_file:Ts(95178,3,"Move_to_file_95178","Move to file"),Cannot_move_to_file_selected_file_is_invalid:Ts(95179,3,"Cannot_move_to_file_selected_file_is_invalid_95179","Cannot move to file, selected file is invalid"),Use_import_type:Ts(95180,3,"Use_import_type_95180","Use 'import type'"),Use_type_0:Ts(95181,3,"Use_type_0_95181","Use 'type {0}'"),Fix_all_with_type_only_imports:Ts(95182,3,"Fix_all_with_type_only_imports_95182","Fix all with type-only imports"),Cannot_move_statements_to_the_selected_file:Ts(95183,3,"Cannot_move_statements_to_the_selected_file_95183","Cannot move statements to the selected file"),Inline_variable:Ts(95184,3,"Inline_variable_95184","Inline variable"),Could_not_find_variable_to_inline:Ts(95185,3,"Could_not_find_variable_to_inline_95185","Could not find variable to inline."),Variables_with_multiple_declarations_cannot_be_inlined:Ts(95186,3,"Variables_with_multiple_declarations_cannot_be_inlined_95186","Variables with multiple declarations cannot be inlined."),Add_missing_comma_for_object_member_completion_0:Ts(95187,3,"Add_missing_comma_for_object_member_completion_0_95187","Add missing comma for object member completion '{0}'."),Add_missing_parameter_to_0:Ts(95188,3,"Add_missing_parameter_to_0_95188","Add missing parameter to '{0}'"),Add_missing_parameters_to_0:Ts(95189,3,"Add_missing_parameters_to_0_95189","Add missing parameters to '{0}'"),Add_all_missing_parameters:Ts(95190,3,"Add_all_missing_parameters_95190","Add all missing parameters"),Add_optional_parameter_to_0:Ts(95191,3,"Add_optional_parameter_to_0_95191","Add optional parameter to '{0}'"),Add_optional_parameters_to_0:Ts(95192,3,"Add_optional_parameters_to_0_95192","Add optional parameters to '{0}'"),Add_all_optional_parameters:Ts(95193,3,"Add_all_optional_parameters_95193","Add all optional parameters"),Wrap_in_parentheses:Ts(95194,3,"Wrap_in_parentheses_95194","Wrap in parentheses"),Wrap_all_invalid_decorator_expressions_in_parentheses:Ts(95195,3,"Wrap_all_invalid_decorator_expressions_in_parentheses_95195","Wrap all invalid decorator expressions in parentheses"),No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer:Ts(18004,1,"No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer_18004","No value exists in scope for the shorthand property '{0}'. Either declare one or provide an initializer."),Classes_may_not_have_a_field_named_constructor:Ts(18006,1,"Classes_may_not_have_a_field_named_constructor_18006","Classes may not have a field named 'constructor'."),JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array:Ts(18007,1,"JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array_18007","JSX expressions may not use the comma operator. Did you mean to write an array?"),Private_identifiers_cannot_be_used_as_parameters:Ts(18009,1,"Private_identifiers_cannot_be_used_as_parameters_18009","Private identifiers cannot be used as parameters."),An_accessibility_modifier_cannot_be_used_with_a_private_identifier:Ts(18010,1,"An_accessibility_modifier_cannot_be_used_with_a_private_identifier_18010","An accessibility modifier cannot be used with a private identifier."),The_operand_of_a_delete_operator_cannot_be_a_private_identifier:Ts(18011,1,"The_operand_of_a_delete_operator_cannot_be_a_private_identifier_18011","The operand of a 'delete' operator cannot be a private identifier."),constructor_is_a_reserved_word:Ts(18012,1,"constructor_is_a_reserved_word_18012","'#constructor' is a reserved word."),Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier:Ts(18013,1,"Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier_18013","Property '{0}' is not accessible outside class '{1}' because it has a private identifier."),The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_private_identifier_with_the_same_spelling:Ts(18014,1,"The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_priv_18014","The property '{0}' cannot be accessed on type '{1}' within this class because it is shadowed by another private identifier with the same spelling."),Property_0_in_type_1_refers_to_a_different_member_that_cannot_be_accessed_from_within_type_2:Ts(18015,1,"Property_0_in_type_1_refers_to_a_different_member_that_cannot_be_accessed_from_within_type_2_18015","Property '{0}' in type '{1}' refers to a different member that cannot be accessed from within type '{2}'."),Private_identifiers_are_not_allowed_outside_class_bodies:Ts(18016,1,"Private_identifiers_are_not_allowed_outside_class_bodies_18016","Private identifiers are not allowed outside class bodies."),The_shadowing_declaration_of_0_is_defined_here:Ts(18017,1,"The_shadowing_declaration_of_0_is_defined_here_18017","The shadowing declaration of '{0}' is defined here"),The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here:Ts(18018,1,"The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here_18018","The declaration of '{0}' that you probably intended to use is defined here"),_0_modifier_cannot_be_used_with_a_private_identifier:Ts(18019,1,"_0_modifier_cannot_be_used_with_a_private_identifier_18019","'{0}' modifier cannot be used with a private identifier."),An_enum_member_cannot_be_named_with_a_private_identifier:Ts(18024,1,"An_enum_member_cannot_be_named_with_a_private_identifier_18024","An enum member cannot be named with a private identifier."),can_only_be_used_at_the_start_of_a_file:Ts(18026,1,"can_only_be_used_at_the_start_of_a_file_18026","'#!' can only be used at the start of a file."),Compiler_reserves_name_0_when_emitting_private_identifier_downlevel:Ts(18027,1,"Compiler_reserves_name_0_when_emitting_private_identifier_downlevel_18027","Compiler reserves name '{0}' when emitting private identifier downlevel."),Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher:Ts(18028,1,"Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher_18028","Private identifiers are only available when targeting ECMAScript 2015 and higher."),Private_identifiers_are_not_allowed_in_variable_declarations:Ts(18029,1,"Private_identifiers_are_not_allowed_in_variable_declarations_18029","Private identifiers are not allowed in variable declarations."),An_optional_chain_cannot_contain_private_identifiers:Ts(18030,1,"An_optional_chain_cannot_contain_private_identifiers_18030","An optional chain cannot contain private identifiers."),The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituents:Ts(18031,1,"The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituent_18031","The intersection '{0}' was reduced to 'never' because property '{1}' has conflicting types in some constituents."),The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_private_in_some:Ts(18032,1,"The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_pr_18032","The intersection '{0}' was reduced to 'never' because property '{1}' exists in multiple constituents and is private in some."),Type_0_is_not_assignable_to_type_1_as_required_for_computed_enum_member_values:Ts(18033,1,"Type_0_is_not_assignable_to_type_1_as_required_for_computed_enum_member_values_18033","Type '{0}' is not assignable to type '{1}' as required for computed enum member values."),Specify_the_JSX_fragment_factory_function_to_use_when_targeting_react_JSX_emit_with_jsxFactory_compiler_option_is_specified_e_g_Fragment:Ts(18034,3,"Specify_the_JSX_fragment_factory_function_to_use_when_targeting_react_JSX_emit_with_jsxFactory_compi_18034","Specify the JSX fragment factory function to use when targeting 'react' JSX emit with 'jsxFactory' compiler option is specified, e.g. 'Fragment'."),Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name:Ts(18035,1,"Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name_18035","Invalid value for 'jsxFragmentFactory'. '{0}' is not a valid identifier or qualified-name."),Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_decorator:Ts(18036,1,"Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_dec_18036","Class decorators can't be used with static private identifier. Consider removing the experimental decorator."),await_expression_cannot_be_used_inside_a_class_static_block:Ts(18037,1,"await_expression_cannot_be_used_inside_a_class_static_block_18037","'await' expression cannot be used inside a class static block."),for_await_loops_cannot_be_used_inside_a_class_static_block:Ts(18038,1,"for_await_loops_cannot_be_used_inside_a_class_static_block_18038","'for await' loops cannot be used inside a class static block."),Invalid_use_of_0_It_cannot_be_used_inside_a_class_static_block:Ts(18039,1,"Invalid_use_of_0_It_cannot_be_used_inside_a_class_static_block_18039","Invalid use of '{0}'. It cannot be used inside a class static block."),A_return_statement_cannot_be_used_inside_a_class_static_block:Ts(18041,1,"A_return_statement_cannot_be_used_inside_a_class_static_block_18041","A 'return' statement cannot be used inside a class static block."),_0_is_a_type_and_cannot_be_imported_in_JavaScript_files_Use_1_in_a_JSDoc_type_annotation:Ts(18042,1,"_0_is_a_type_and_cannot_be_imported_in_JavaScript_files_Use_1_in_a_JSDoc_type_annotation_18042","'{0}' is a type and cannot be imported in JavaScript files. Use '{1}' in a JSDoc type annotation."),Types_cannot_appear_in_export_declarations_in_JavaScript_files:Ts(18043,1,"Types_cannot_appear_in_export_declarations_in_JavaScript_files_18043","Types cannot appear in export declarations in JavaScript files."),_0_is_automatically_exported_here:Ts(18044,3,"_0_is_automatically_exported_here_18044","'{0}' is automatically exported here."),Properties_with_the_accessor_modifier_are_only_available_when_targeting_ECMAScript_2015_and_higher:Ts(18045,1,"Properties_with_the_accessor_modifier_are_only_available_when_targeting_ECMAScript_2015_and_higher_18045","Properties with the 'accessor' modifier are only available when targeting ECMAScript 2015 and higher."),_0_is_of_type_unknown:Ts(18046,1,"_0_is_of_type_unknown_18046","'{0}' is of type 'unknown'."),_0_is_possibly_null:Ts(18047,1,"_0_is_possibly_null_18047","'{0}' is possibly 'null'."),_0_is_possibly_undefined:Ts(18048,1,"_0_is_possibly_undefined_18048","'{0}' is possibly 'undefined'."),_0_is_possibly_null_or_undefined:Ts(18049,1,"_0_is_possibly_null_or_undefined_18049","'{0}' is possibly 'null' or 'undefined'."),The_value_0_cannot_be_used_here:Ts(18050,1,"The_value_0_cannot_be_used_here_18050","The value '{0}' cannot be used here."),Compiler_option_0_cannot_be_given_an_empty_string:Ts(18051,1,"Compiler_option_0_cannot_be_given_an_empty_string_18051","Compiler option '{0}' cannot be given an empty string."),Its_type_0_is_not_a_valid_JSX_element_type:Ts(18053,1,"Its_type_0_is_not_a_valid_JSX_element_type_18053","Its type '{0}' is not a valid JSX element type."),await_using_statements_cannot_be_used_inside_a_class_static_block:Ts(18054,1,"await_using_statements_cannot_be_used_inside_a_class_static_block_18054","'await using' statements cannot be used inside a class static block."),_0_has_a_string_type_but_must_have_syntactically_recognizable_string_syntax_when_isolatedModules_is_enabled:Ts(18055,1,"_0_has_a_string_type_but_must_have_syntactically_recognizable_string_syntax_when_isolatedModules_is__18055","'{0}' has a string type, but must have syntactically recognizable string syntax when 'isolatedModules' is enabled."),Enum_member_following_a_non_literal_numeric_member_must_have_an_initializer_when_isolatedModules_is_enabled:Ts(18056,1,"Enum_member_following_a_non_literal_numeric_member_must_have_an_initializer_when_isolatedModules_is__18056","Enum member following a non-literal numeric member must have an initializer when 'isolatedModules' is enabled.")};function ks(e){return e>=80}function Es(e){return 32===e||ks(e)}var Cs={abstract:128,accessor:129,any:133,as:130,asserts:131,assert:132,bigint:163,boolean:136,break:83,case:84,catch:85,class:86,continue:88,const:87,constructor:137,debugger:89,declare:138,default:90,delete:91,do:92,else:93,enum:94,export:95,extends:96,false:97,finally:98,for:99,from:161,function:100,get:139,if:101,implements:119,import:102,in:103,infer:140,instanceof:104,interface:120,intrinsic:141,is:142,keyof:143,let:121,module:144,namespace:145,never:146,new:105,null:106,number:150,object:151,package:122,private:123,protected:124,public:125,override:164,out:147,readonly:148,require:149,global:162,return:107,satisfies:152,set:153,static:126,string:154,super:108,switch:109,symbol:155,this:110,throw:111,true:112,try:113,type:156,typeof:114,undefined:157,unique:158,unknown:159,using:160,var:115,void:116,while:117,with:118,yield:127,async:134,await:135,of:165},Ns=new Map(Object.entries(Cs)),As=new Map(Object.entries({...Cs,"{":19,"}":20,"(":21,")":22,"[":23,"]":24,".":25,"...":26,";":27,",":28,"<":30,">":32,"<=":33,">=":34,"==":35,"!=":36,"===":37,"!==":38,"=>":39,"+":40,"-":41,"**":43,"*":42,"/":44,"%":45,"++":46,"--":47,"<<":48,"</":31,">>":49,">>>":50,"&":51,"|":52,"^":53,"!":54,"~":55,"&&":56,"||":57,"?":58,"??":61,"?.":29,":":59,"=":64,"+=":65,"-=":66,"*=":67,"**=":68,"/=":69,"%=":70,"<<=":71,">>=":72,">>>=":73,"&=":74,"|=":75,"^=":79,"||=":76,"&&=":77,"??=":78,"@":60,"#":63,"`":62})),Is=new Map(Object.entries({d:1,g:2,i:4,m:8,s:16,u:32,v:64,y:128})),Ds=new Map([[1,9],[16,5],[32,2],[64,99],[128,2]]),Ps=[170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,880,884,886,887,890,893,902,902,904,906,908,908,910,929,931,1013,1015,1153,1162,1319,1329,1366,1369,1369,1377,1415,1488,1514,1520,1522,1568,1610,1646,1647,1649,1747,1749,1749,1765,1766,1774,1775,1786,1788,1791,1791,1808,1808,1810,1839,1869,1957,1969,1969,1994,2026,2036,2037,2042,2042,2048,2069,2074,2074,2084,2084,2088,2088,2112,2136,2208,2208,2210,2220,2308,2361,2365,2365,2384,2384,2392,2401,2417,2423,2425,2431,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2493,2493,2510,2510,2524,2525,2527,2529,2544,2545,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2785,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2877,2877,2908,2909,2911,2913,2929,2929,2947,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3024,3024,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3133,3133,3160,3161,3168,3169,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3261,3261,3294,3294,3296,3297,3313,3314,3333,3340,3342,3344,3346,3386,3389,3389,3406,3406,3424,3425,3450,3455,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3585,3632,3634,3635,3648,3654,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3760,3762,3763,3773,3773,3776,3780,3782,3782,3804,3807,3840,3840,3904,3911,3913,3948,3976,3980,4096,4138,4159,4159,4176,4181,4186,4189,4193,4193,4197,4198,4206,4208,4213,4225,4238,4238,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4992,5007,5024,5108,5121,5740,5743,5759,5761,5786,5792,5866,5870,5872,5888,5900,5902,5905,5920,5937,5952,5969,5984,5996,5998,6e3,6016,6067,6103,6103,6108,6108,6176,6263,6272,6312,6314,6314,6320,6389,6400,6428,6480,6509,6512,6516,6528,6571,6593,6599,6656,6678,6688,6740,6823,6823,6917,6963,6981,6987,7043,7072,7086,7087,7098,7141,7168,7203,7245,7247,7258,7293,7401,7404,7406,7409,7413,7414,7424,7615,7680,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8305,8305,8319,8319,8336,8348,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11502,11506,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11648,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11823,11823,12293,12295,12321,12329,12337,12341,12344,12348,12353,12438,12445,12447,12449,12538,12540,12543,12549,12589,12593,12686,12704,12730,12784,12799,13312,19893,19968,40908,40960,42124,42192,42237,42240,42508,42512,42527,42538,42539,42560,42606,42623,42647,42656,42735,42775,42783,42786,42888,42891,42894,42896,42899,42912,42922,43e3,43009,43011,43013,43015,43018,43020,43042,43072,43123,43138,43187,43250,43255,43259,43259,43274,43301,43312,43334,43360,43388,43396,43442,43471,43471,43520,43560,43584,43586,43588,43595,43616,43638,43642,43642,43648,43695,43697,43697,43701,43702,43705,43709,43712,43712,43714,43714,43739,43741,43744,43754,43762,43764,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43968,44002,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64285,64287,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65140,65142,65276,65313,65338,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500],Ms=[170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,768,884,886,887,890,893,902,902,904,906,908,908,910,929,931,1013,1015,1153,1155,1159,1162,1319,1329,1366,1369,1369,1377,1415,1425,1469,1471,1471,1473,1474,1476,1477,1479,1479,1488,1514,1520,1522,1552,1562,1568,1641,1646,1747,1749,1756,1759,1768,1770,1788,1791,1791,1808,1866,1869,1969,1984,2037,2042,2042,2048,2093,2112,2139,2208,2208,2210,2220,2276,2302,2304,2403,2406,2415,2417,2423,2425,2431,2433,2435,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2492,2500,2503,2504,2507,2510,2519,2519,2524,2525,2527,2531,2534,2545,2561,2563,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2620,2620,2622,2626,2631,2632,2635,2637,2641,2641,2649,2652,2654,2654,2662,2677,2689,2691,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2748,2757,2759,2761,2763,2765,2768,2768,2784,2787,2790,2799,2817,2819,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2876,2884,2887,2888,2891,2893,2902,2903,2908,2909,2911,2915,2918,2927,2929,2929,2946,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3006,3010,3014,3016,3018,3021,3024,3024,3031,3031,3046,3055,3073,3075,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3133,3140,3142,3144,3146,3149,3157,3158,3160,3161,3168,3171,3174,3183,3202,3203,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3260,3268,3270,3272,3274,3277,3285,3286,3294,3294,3296,3299,3302,3311,3313,3314,3330,3331,3333,3340,3342,3344,3346,3386,3389,3396,3398,3400,3402,3406,3415,3415,3424,3427,3430,3439,3450,3455,3458,3459,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3530,3530,3535,3540,3542,3542,3544,3551,3570,3571,3585,3642,3648,3662,3664,3673,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3769,3771,3773,3776,3780,3782,3782,3784,3789,3792,3801,3804,3807,3840,3840,3864,3865,3872,3881,3893,3893,3895,3895,3897,3897,3902,3911,3913,3948,3953,3972,3974,3991,3993,4028,4038,4038,4096,4169,4176,4253,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4957,4959,4992,5007,5024,5108,5121,5740,5743,5759,5761,5786,5792,5866,5870,5872,5888,5900,5902,5908,5920,5940,5952,5971,5984,5996,5998,6e3,6002,6003,6016,6099,6103,6103,6108,6109,6112,6121,6155,6157,6160,6169,6176,6263,6272,6314,6320,6389,6400,6428,6432,6443,6448,6459,6470,6509,6512,6516,6528,6571,6576,6601,6608,6617,6656,6683,6688,6750,6752,6780,6783,6793,6800,6809,6823,6823,6912,6987,6992,7001,7019,7027,7040,7155,7168,7223,7232,7241,7245,7293,7376,7378,7380,7414,7424,7654,7676,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8204,8205,8255,8256,8276,8276,8305,8305,8319,8319,8336,8348,8400,8412,8417,8417,8421,8432,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11647,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11744,11775,11823,11823,12293,12295,12321,12335,12337,12341,12344,12348,12353,12438,12441,12442,12445,12447,12449,12538,12540,12543,12549,12589,12593,12686,12704,12730,12784,12799,13312,19893,19968,40908,40960,42124,42192,42237,42240,42508,42512,42539,42560,42607,42612,42621,42623,42647,42655,42737,42775,42783,42786,42888,42891,42894,42896,42899,42912,42922,43e3,43047,43072,43123,43136,43204,43216,43225,43232,43255,43259,43259,43264,43309,43312,43347,43360,43388,43392,43456,43471,43481,43520,43574,43584,43597,43600,43609,43616,43638,43642,43643,43648,43714,43739,43741,43744,43759,43762,43766,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43968,44010,44012,44013,44016,44025,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65024,65039,65056,65062,65075,65076,65101,65103,65136,65140,65142,65276,65296,65305,65313,65338,65343,65343,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500],Os=[65,90,97,122,170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,880,884,886,887,890,893,895,895,902,902,904,906,908,908,910,929,931,1013,1015,1153,1162,1327,1329,1366,1369,1369,1376,1416,1488,1514,1519,1522,1568,1610,1646,1647,1649,1747,1749,1749,1765,1766,1774,1775,1786,1788,1791,1791,1808,1808,1810,1839,1869,1957,1969,1969,1994,2026,2036,2037,2042,2042,2048,2069,2074,2074,2084,2084,2088,2088,2112,2136,2144,2154,2160,2183,2185,2190,2208,2249,2308,2361,2365,2365,2384,2384,2392,2401,2417,2432,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2493,2493,2510,2510,2524,2525,2527,2529,2544,2545,2556,2556,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2785,2809,2809,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2877,2877,2908,2909,2911,2913,2929,2929,2947,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3024,3024,3077,3084,3086,3088,3090,3112,3114,3129,3133,3133,3160,3162,3165,3165,3168,3169,3200,3200,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3261,3261,3293,3294,3296,3297,3313,3314,3332,3340,3342,3344,3346,3386,3389,3389,3406,3406,3412,3414,3423,3425,3450,3455,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3585,3632,3634,3635,3648,3654,3713,3714,3716,3716,3718,3722,3724,3747,3749,3749,3751,3760,3762,3763,3773,3773,3776,3780,3782,3782,3804,3807,3840,3840,3904,3911,3913,3948,3976,3980,4096,4138,4159,4159,4176,4181,4186,4189,4193,4193,4197,4198,4206,4208,4213,4225,4238,4238,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4992,5007,5024,5109,5112,5117,5121,5740,5743,5759,5761,5786,5792,5866,5870,5880,5888,5905,5919,5937,5952,5969,5984,5996,5998,6e3,6016,6067,6103,6103,6108,6108,6176,6264,6272,6312,6314,6314,6320,6389,6400,6430,6480,6509,6512,6516,6528,6571,6576,6601,6656,6678,6688,6740,6823,6823,6917,6963,6981,6988,7043,7072,7086,7087,7098,7141,7168,7203,7245,7247,7258,7293,7296,7304,7312,7354,7357,7359,7401,7404,7406,7411,7413,7414,7418,7418,7424,7615,7680,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8305,8305,8319,8319,8336,8348,8450,8450,8455,8455,8458,8467,8469,8469,8472,8477,8484,8484,8486,8486,8488,8488,8490,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11492,11499,11502,11506,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11648,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,12293,12295,12321,12329,12337,12341,12344,12348,12353,12438,12443,12447,12449,12538,12540,12543,12549,12591,12593,12686,12704,12735,12784,12799,13312,19903,19968,42124,42192,42237,42240,42508,42512,42527,42538,42539,42560,42606,42623,42653,42656,42735,42775,42783,42786,42888,42891,42954,42960,42961,42963,42963,42965,42969,42994,43009,43011,43013,43015,43018,43020,43042,43072,43123,43138,43187,43250,43255,43259,43259,43261,43262,43274,43301,43312,43334,43360,43388,43396,43442,43471,43471,43488,43492,43494,43503,43514,43518,43520,43560,43584,43586,43588,43595,43616,43638,43642,43642,43646,43695,43697,43697,43701,43702,43705,43709,43712,43712,43714,43714,43739,43741,43744,43754,43762,43764,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43824,43866,43868,43881,43888,44002,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64285,64287,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65140,65142,65276,65313,65338,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500,65536,65547,65549,65574,65576,65594,65596,65597,65599,65613,65616,65629,65664,65786,65856,65908,66176,66204,66208,66256,66304,66335,66349,66378,66384,66421,66432,66461,66464,66499,66504,66511,66513,66517,66560,66717,66736,66771,66776,66811,66816,66855,66864,66915,66928,66938,66940,66954,66956,66962,66964,66965,66967,66977,66979,66993,66995,67001,67003,67004,67072,67382,67392,67413,67424,67431,67456,67461,67463,67504,67506,67514,67584,67589,67592,67592,67594,67637,67639,67640,67644,67644,67647,67669,67680,67702,67712,67742,67808,67826,67828,67829,67840,67861,67872,67897,67968,68023,68030,68031,68096,68096,68112,68115,68117,68119,68121,68149,68192,68220,68224,68252,68288,68295,68297,68324,68352,68405,68416,68437,68448,68466,68480,68497,68608,68680,68736,68786,68800,68850,68864,68899,69248,69289,69296,69297,69376,69404,69415,69415,69424,69445,69488,69505,69552,69572,69600,69622,69635,69687,69745,69746,69749,69749,69763,69807,69840,69864,69891,69926,69956,69956,69959,69959,69968,70002,70006,70006,70019,70066,70081,70084,70106,70106,70108,70108,70144,70161,70163,70187,70207,70208,70272,70278,70280,70280,70282,70285,70287,70301,70303,70312,70320,70366,70405,70412,70415,70416,70419,70440,70442,70448,70450,70451,70453,70457,70461,70461,70480,70480,70493,70497,70656,70708,70727,70730,70751,70753,70784,70831,70852,70853,70855,70855,71040,71086,71128,71131,71168,71215,71236,71236,71296,71338,71352,71352,71424,71450,71488,71494,71680,71723,71840,71903,71935,71942,71945,71945,71948,71955,71957,71958,71960,71983,71999,71999,72001,72001,72096,72103,72106,72144,72161,72161,72163,72163,72192,72192,72203,72242,72250,72250,72272,72272,72284,72329,72349,72349,72368,72440,72704,72712,72714,72750,72768,72768,72818,72847,72960,72966,72968,72969,72971,73008,73030,73030,73056,73061,73063,73064,73066,73097,73112,73112,73440,73458,73474,73474,73476,73488,73490,73523,73648,73648,73728,74649,74752,74862,74880,75075,77712,77808,77824,78895,78913,78918,82944,83526,92160,92728,92736,92766,92784,92862,92880,92909,92928,92975,92992,92995,93027,93047,93053,93071,93760,93823,93952,94026,94032,94032,94099,94111,94176,94177,94179,94179,94208,100343,100352,101589,101632,101640,110576,110579,110581,110587,110589,110590,110592,110882,110898,110898,110928,110930,110933,110933,110948,110951,110960,111355,113664,113770,113776,113788,113792,113800,113808,113817,119808,119892,119894,119964,119966,119967,119970,119970,119973,119974,119977,119980,119982,119993,119995,119995,119997,120003,120005,120069,120071,120074,120077,120084,120086,120092,120094,120121,120123,120126,120128,120132,120134,120134,120138,120144,120146,120485,120488,120512,120514,120538,120540,120570,120572,120596,120598,120628,120630,120654,120656,120686,120688,120712,120714,120744,120746,120770,120772,120779,122624,122654,122661,122666,122928,122989,123136,123180,123191,123197,123214,123214,123536,123565,123584,123627,124112,124139,124896,124902,124904,124907,124909,124910,124912,124926,124928,125124,125184,125251,125259,125259,126464,126467,126469,126495,126497,126498,126500,126500,126503,126503,126505,126514,126516,126519,126521,126521,126523,126523,126530,126530,126535,126535,126537,126537,126539,126539,126541,126543,126545,126546,126548,126548,126551,126551,126553,126553,126555,126555,126557,126557,126559,126559,126561,126562,126564,126564,126567,126570,126572,126578,126580,126583,126585,126588,126590,126590,126592,126601,126603,126619,126625,126627,126629,126633,126635,126651,131072,173791,173824,177977,177984,178205,178208,183969,183984,191456,191472,192093,194560,195101,196608,201546,201552,205743],Fs=[48,57,65,90,95,95,97,122,170,170,181,181,183,183,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,768,884,886,887,890,893,895,895,902,906,908,908,910,929,931,1013,1015,1153,1155,1159,1162,1327,1329,1366,1369,1369,1376,1416,1425,1469,1471,1471,1473,1474,1476,1477,1479,1479,1488,1514,1519,1522,1552,1562,1568,1641,1646,1747,1749,1756,1759,1768,1770,1788,1791,1791,1808,1866,1869,1969,1984,2037,2042,2042,2045,2045,2048,2093,2112,2139,2144,2154,2160,2183,2185,2190,2200,2273,2275,2403,2406,2415,2417,2435,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2492,2500,2503,2504,2507,2510,2519,2519,2524,2525,2527,2531,2534,2545,2556,2556,2558,2558,2561,2563,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2620,2620,2622,2626,2631,2632,2635,2637,2641,2641,2649,2652,2654,2654,2662,2677,2689,2691,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2748,2757,2759,2761,2763,2765,2768,2768,2784,2787,2790,2799,2809,2815,2817,2819,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2876,2884,2887,2888,2891,2893,2901,2903,2908,2909,2911,2915,2918,2927,2929,2929,2946,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3006,3010,3014,3016,3018,3021,3024,3024,3031,3031,3046,3055,3072,3084,3086,3088,3090,3112,3114,3129,3132,3140,3142,3144,3146,3149,3157,3158,3160,3162,3165,3165,3168,3171,3174,3183,3200,3203,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3260,3268,3270,3272,3274,3277,3285,3286,3293,3294,3296,3299,3302,3311,3313,3315,3328,3340,3342,3344,3346,3396,3398,3400,3402,3406,3412,3415,3423,3427,3430,3439,3450,3455,3457,3459,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3530,3530,3535,3540,3542,3542,3544,3551,3558,3567,3570,3571,3585,3642,3648,3662,3664,3673,3713,3714,3716,3716,3718,3722,3724,3747,3749,3749,3751,3773,3776,3780,3782,3782,3784,3790,3792,3801,3804,3807,3840,3840,3864,3865,3872,3881,3893,3893,3895,3895,3897,3897,3902,3911,3913,3948,3953,3972,3974,3991,3993,4028,4038,4038,4096,4169,4176,4253,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4957,4959,4969,4977,4992,5007,5024,5109,5112,5117,5121,5740,5743,5759,5761,5786,5792,5866,5870,5880,5888,5909,5919,5940,5952,5971,5984,5996,5998,6e3,6002,6003,6016,6099,6103,6103,6108,6109,6112,6121,6155,6157,6159,6169,6176,6264,6272,6314,6320,6389,6400,6430,6432,6443,6448,6459,6470,6509,6512,6516,6528,6571,6576,6601,6608,6618,6656,6683,6688,6750,6752,6780,6783,6793,6800,6809,6823,6823,6832,6845,6847,6862,6912,6988,6992,7001,7019,7027,7040,7155,7168,7223,7232,7241,7245,7293,7296,7304,7312,7354,7357,7359,7376,7378,7380,7418,7424,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8204,8205,8255,8256,8276,8276,8305,8305,8319,8319,8336,8348,8400,8412,8417,8417,8421,8432,8450,8450,8455,8455,8458,8467,8469,8469,8472,8477,8484,8484,8486,8486,8488,8488,8490,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11492,11499,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11647,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11744,11775,12293,12295,12321,12335,12337,12341,12344,12348,12353,12438,12441,12447,12449,12543,12549,12591,12593,12686,12704,12735,12784,12799,13312,19903,19968,42124,42192,42237,42240,42508,42512,42539,42560,42607,42612,42621,42623,42737,42775,42783,42786,42888,42891,42954,42960,42961,42963,42963,42965,42969,42994,43047,43052,43052,43072,43123,43136,43205,43216,43225,43232,43255,43259,43259,43261,43309,43312,43347,43360,43388,43392,43456,43471,43481,43488,43518,43520,43574,43584,43597,43600,43609,43616,43638,43642,43714,43739,43741,43744,43759,43762,43766,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43824,43866,43868,43881,43888,44010,44012,44013,44016,44025,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65024,65039,65056,65071,65075,65076,65101,65103,65136,65140,65142,65276,65296,65305,65313,65338,65343,65343,65345,65370,65381,65470,65474,65479,65482,65487,65490,65495,65498,65500,65536,65547,65549,65574,65576,65594,65596,65597,65599,65613,65616,65629,65664,65786,65856,65908,66045,66045,66176,66204,66208,66256,66272,66272,66304,66335,66349,66378,66384,66426,66432,66461,66464,66499,66504,66511,66513,66517,66560,66717,66720,66729,66736,66771,66776,66811,66816,66855,66864,66915,66928,66938,66940,66954,66956,66962,66964,66965,66967,66977,66979,66993,66995,67001,67003,67004,67072,67382,67392,67413,67424,67431,67456,67461,67463,67504,67506,67514,67584,67589,67592,67592,67594,67637,67639,67640,67644,67644,67647,67669,67680,67702,67712,67742,67808,67826,67828,67829,67840,67861,67872,67897,67968,68023,68030,68031,68096,68099,68101,68102,68108,68115,68117,68119,68121,68149,68152,68154,68159,68159,68192,68220,68224,68252,68288,68295,68297,68326,68352,68405,68416,68437,68448,68466,68480,68497,68608,68680,68736,68786,68800,68850,68864,68903,68912,68921,69248,69289,69291,69292,69296,69297,69373,69404,69415,69415,69424,69456,69488,69509,69552,69572,69600,69622,69632,69702,69734,69749,69759,69818,69826,69826,69840,69864,69872,69881,69888,69940,69942,69951,69956,69959,69968,70003,70006,70006,70016,70084,70089,70092,70094,70106,70108,70108,70144,70161,70163,70199,70206,70209,70272,70278,70280,70280,70282,70285,70287,70301,70303,70312,70320,70378,70384,70393,70400,70403,70405,70412,70415,70416,70419,70440,70442,70448,70450,70451,70453,70457,70459,70468,70471,70472,70475,70477,70480,70480,70487,70487,70493,70499,70502,70508,70512,70516,70656,70730,70736,70745,70750,70753,70784,70853,70855,70855,70864,70873,71040,71093,71096,71104,71128,71133,71168,71232,71236,71236,71248,71257,71296,71352,71360,71369,71424,71450,71453,71467,71472,71481,71488,71494,71680,71738,71840,71913,71935,71942,71945,71945,71948,71955,71957,71958,71960,71989,71991,71992,71995,72003,72016,72025,72096,72103,72106,72151,72154,72161,72163,72164,72192,72254,72263,72263,72272,72345,72349,72349,72368,72440,72704,72712,72714,72758,72760,72768,72784,72793,72818,72847,72850,72871,72873,72886,72960,72966,72968,72969,72971,73014,73018,73018,73020,73021,73023,73031,73040,73049,73056,73061,73063,73064,73066,73102,73104,73105,73107,73112,73120,73129,73440,73462,73472,73488,73490,73530,73534,73538,73552,73561,73648,73648,73728,74649,74752,74862,74880,75075,77712,77808,77824,78895,78912,78933,82944,83526,92160,92728,92736,92766,92768,92777,92784,92862,92864,92873,92880,92909,92912,92916,92928,92982,92992,92995,93008,93017,93027,93047,93053,93071,93760,93823,93952,94026,94031,94087,94095,94111,94176,94177,94179,94180,94192,94193,94208,100343,100352,101589,101632,101640,110576,110579,110581,110587,110589,110590,110592,110882,110898,110898,110928,110930,110933,110933,110948,110951,110960,111355,113664,113770,113776,113788,113792,113800,113808,113817,113821,113822,118528,118573,118576,118598,119141,119145,119149,119154,119163,119170,119173,119179,119210,119213,119362,119364,119808,119892,119894,119964,119966,119967,119970,119970,119973,119974,119977,119980,119982,119993,119995,119995,119997,120003,120005,120069,120071,120074,120077,120084,120086,120092,120094,120121,120123,120126,120128,120132,120134,120134,120138,120144,120146,120485,120488,120512,120514,120538,120540,120570,120572,120596,120598,120628,120630,120654,120656,120686,120688,120712,120714,120744,120746,120770,120772,120779,120782,120831,121344,121398,121403,121452,121461,121461,121476,121476,121499,121503,121505,121519,122624,122654,122661,122666,122880,122886,122888,122904,122907,122913,122915,122916,122918,122922,122928,122989,123023,123023,123136,123180,123184,123197,123200,123209,123214,123214,123536,123566,123584,123641,124112,124153,124896,124902,124904,124907,124909,124910,124912,124926,124928,125124,125136,125142,125184,125259,125264,125273,126464,126467,126469,126495,126497,126498,126500,126500,126503,126503,126505,126514,126516,126519,126521,126521,126523,126523,126530,126530,126535,126535,126537,126537,126539,126539,126541,126543,126545,126546,126548,126548,126551,126551,126553,126553,126555,126555,126557,126557,126559,126559,126561,126562,126564,126564,126567,126570,126572,126578,126580,126583,126585,126588,126590,126590,126592,126601,126603,126619,126625,126627,126629,126633,126635,126651,130032,130041,131072,173791,173824,177977,177984,178205,178208,183969,183984,191456,191472,192093,194560,195101,196608,201546,201552,205743,917760,917999],Rs=/^\/\/\/?\s*@(ts-expect-error|ts-ignore)/,Ls=/^(?:\/|\*)*\s*@(ts-expect-error|ts-ignore)/,js=/@(?:see|link)/i;function zs(e,t){if(e<t[0])return!1;let n,r=0,i=t.length;for(;r+1<i;){if(n=r+(i-r)/2,n-=n%2,t[n]<=e&&e<=t[n+1])return!0;e<t[n]?i=n:r=n+2}return!1}function Us(e,t){return zs(e,t>=2?Os:Ps)}function Bs(e){const t=[];return e.forEach(((e,n)=>{t[e]=n})),t}var qs=Bs(As);function Vs(e){return qs[e]}function Ks(e){return As.get(e)}var Js=Bs(Is);function Ws(e){return Js[e]}function Hs(e){return Is.get(e)}function Gs(e){const t=[];let n=0,r=0;for(;n<e.length;){const i=e.charCodeAt(n);switch(n++,i){case 13:10===e.charCodeAt(n)&&n++;case 10:t.push(r),r=n;break;default:i>127&&ia(i)&&(t.push(r),r=n)}}return t.push(r),t}function Qs(e,t,n,r){return e.getPositionOfLineAndCharacter?e.getPositionOfLineAndCharacter(t,n,r):Ys(Zs(e),t,n,e.text,r)}function Ys(e,t,n,r,i){(t<0||t>=e.length)&&(i?t=t<0?0:t>=e.length?e.length-1:t:Tn.fail(`Bad line number. Line: ${t}, lineStarts.length: ${e.length} , line map is correct? ${void 0!==r?I(e,Gs(r)):"unknown"}`));const o=e[t]+n;return i?o>e[t+1]?e[t+1]:"string"==typeof r&&o>r.length?r.length:o:(t<e.length-1?Tn.assert(o<e[t+1]):void 0!==r&&Tn.assert(o<=r.length),o)}function Zs(e){return e.lineMap||(e.lineMap=Gs(e.text))}function Xs(e,t){const n=$s(e,t);return{line:n,character:t-e[n]}}function $s(e,t,n){let r=Oe(e,t,gt,Pt,n);return r<0&&(r=~r-1,Tn.assert(-1!==r,"position cannot precede the beginning of the file")),r}function ea(e,t,n){if(t===n)return 0;const r=Zs(e),i=Math.min(t,n),o=i===n,s=o?t:n,a=$s(r,i),c=$s(r,s,a);return o?a-c:c-a}function ta(e,t){return Xs(Zs(e),t)}function na(e){return ra(e)||ia(e)}function ra(e){return 32===e||9===e||11===e||12===e||160===e||133===e||5760===e||e>=8192&&e<=8203||8239===e||8287===e||12288===e||65279===e}function ia(e){return 10===e||13===e||8232===e||8233===e}function oa(e){return e>=48&&e<=57}function sa(e){return oa(e)||e>=65&&e<=70||e>=97&&e<=102}function aa(e){return e>=65&&e<=90||e>=97&&e<=122}function ca(e){return aa(e)||oa(e)||95===e}function la(e){return e>=48&&e<=55}function ua(e,t){const n=e.charCodeAt(t);switch(n){case 13:case 10:case 9:case 11:case 12:case 32:case 47:case 60:case 124:case 61:case 62:return!0;case 35:return 0===t;default:return n>127}}function da(e,t,n,r,i){if(dw(t))return t;let o=!1;for(;;){const s=e.charCodeAt(t);switch(s){case 13:10===e.charCodeAt(t+1)&&t++;case 10:if(t++,n)return t;o=!!i;continue;case 9:case 11:case 12:case 32:t++;continue;case 47:if(r)break;if(47===e.charCodeAt(t+1)){for(t+=2;t<e.length&&!ia(e.charCodeAt(t));)t++;o=!1;continue}if(42===e.charCodeAt(t+1)){for(t+=2;t<e.length;){if(42===e.charCodeAt(t)&&47===e.charCodeAt(t+1)){t+=2;break}t++}o=!1;continue}break;case 60:case 124:case 61:case 62:if(pa(e,t)){t=fa(e,t),o=!1;continue}break;case 35:if(0===t&&ha(e,t)){t=ga(e,t),o=!1;continue}break;case 42:if(o){t++,o=!1;continue}break;default:if(s>127&&na(s)){t++;continue}}return t}}var _a=7;function pa(e,t){if(Tn.assert(t>=0),0===t||ia(e.charCodeAt(t-1))){const n=e.charCodeAt(t);if(t+_a<e.length){for(let r=0;r<_a;r++)if(e.charCodeAt(t+r)!==n)return!1;return 61===n||32===e.charCodeAt(t+_a)}}return!1}function fa(e,t,n){n&&n(ws.Merge_conflict_marker_encountered,t,_a);const r=e.charCodeAt(t),i=e.length;if(60===r||62===r)for(;t<i&&!ia(e.charCodeAt(t));)t++;else for(Tn.assert(124===r||61===r);t<i;){const n=e.charCodeAt(t);if((61===n||62===n)&&n!==r&&pa(e,t))break;t++}return t}var ma=/^#!.*/;function ha(e,t){return Tn.assert(0===t),ma.test(e)}function ga(e,t){return t+=ma.exec(e)[0].length}function ya(e,t,n,r,i,o,s){let a,c,l,u,d=!1,_=r,p=s;if(0===n){_=!0;const e=Ea(t);e&&(n=e.length)}e:for(;n>=0&&n<t.length;){const s=t.charCodeAt(n);switch(s){case 13:10===t.charCodeAt(n+1)&&n++;case 10:if(n++,r)break e;_=!0,d&&(u=!0);continue;case 9:case 11:case 12:case 32:n++;continue;case 47:const f=t.charCodeAt(n+1);let m=!1;if(47===f||42===f){const r=47===f?2:3,s=n;if(n+=2,47===f)for(;n<t.length;){if(ia(t.charCodeAt(n))){m=!0;break}n++}else for(;n<t.length;){if(42===t.charCodeAt(n)&&47===t.charCodeAt(n+1)){n+=2;break}n++}if(_){if(d&&(p=i(a,c,l,u,o,p),!e&&p))return p;a=s,c=n,l=r,u=m,d=!0}continue}break e;default:if(s>127&&na(s)){d&&ia(s)&&(u=!0),n++;continue}break e}}return d&&(p=i(a,c,l,u,o,p)),p}function va(e,t,n,r){return ya(!1,e,t,!1,n,r)}function ba(e,t,n,r){return ya(!1,e,t,!0,n,r)}function xa(e,t,n,r,i){return ya(!0,e,t,!1,n,r,i)}function Sa(e,t,n,r,i){return ya(!0,e,t,!0,n,r,i)}function Ta(e,t,n,r,i,o=[]){return o.push({kind:n,pos:e,end:t,hasTrailingNewLine:r}),o}function wa(e,t){return xa(e,t,Ta,void 0,void 0)}function ka(e,t){return Sa(e,t,Ta,void 0,void 0)}function Ea(e){const t=ma.exec(e);if(t)return t[0]}function Ca(e,t){return aa(e)||36===e||95===e||e>127&&Us(e,t)}function Na(e,t,n){return ca(e)||36===e||1===n&&(45===e||58===e)||e>127&&function(e,t){return zs(e,t>=2?Fs:Ms)}(e,t)}function Aa(e,t,n){let r=Da(e,0);if(!Ca(r,t))return!1;for(let i=Pa(r);i<e.length;i+=Pa(r))if(!Na(r=Da(e,i),t,n))return!1;return!0}function Ia(e,t,n=0,r,i,o,s){var a,c,l,u,d,_,p,f,m=r,g=0,y=!1,v=0,b=0;X(m,o,s);var x={getTokenFullStart:()=>l,getStartPos:()=>l,getTokenEnd:()=>a,getTextPos:()=>a,getToken:()=>d,getTokenStart:()=>u,getTokenPos:()=>u,getTokenText:()=>m.substring(u,a),getTokenValue:()=>_,hasUnicodeEscape:()=>!!(1024&p),hasExtendedUnicodeEscape:()=>!!(8&p),hasPrecedingLineBreak:()=>!!(1&p),hasPrecedingJSDocComment:()=>!!(2&p),isIdentifier:()=>80===d||d>118,isReservedWord:()=>d>=83&&d<=118,isUnterminated:()=>!!(4&p),getCommentDirectives:()=>f,getNumericLiteralFlags:()=>25584&p,getTokenFlags:()=>p,reScanGreaterToken:function(){if(32===d){if(62===T(a))return 62===T(a+1)?61===T(a+2)?(a+=3,d=73):(a+=2,d=50):61===T(a+1)?(a+=2,d=72):(a++,d=49);if(61===T(a))return a++,d=34}return d},reScanAsteriskEqualsToken:function(){return Tn.assert(67===d,"'reScanAsteriskEqualsToken' should only be called on a '*='"),a=u+1,d=64},reScanSlashToken:function(t){if(44===d||69===d){const n=u+1;a=n;let r=!1,i=!1,s=!1;for(;;){const e=w(a);if(-1===e||ia(e)){p|=4;break}if(r)r=!1;else{if(47===e&&!s)break;91===e?s=!0:92===e?r=!0:93===e?s=!1:s||40!==e||63!==w(a+1)||60!==w(a+2)||61===w(a+3)||33===w(a+3)||(i=!0)}a++}const l=a;if(4&p){a=n,r=!1;let e=0,t=!1,i=0;for(;a<l;){const n=T(a);if(r)r=!1;else if(92===n)r=!0;else if(91===n)e++;else if(93===n&&e)e--;else if(!e)if(123===n)t=!0;else if(125===n&&t)t=!1;else if(!t)if(40===n)i++;else if(41===n&&i)i--;else if(41===n||93===n||125===n)break;a++}for(;na(w(a-1))||59===w(a-1);)a--;k(ws.Unterminated_regular_expression_literal,u,a-u)}else{a++;let r=0;for(;;){const n=w(a);if(-1===n||!Na(n,e))break;if(t){const e=Hs(String.fromCharCode(n));void 0===e?k(ws.Unknown_regular_expression_flag,a,1):r&e?k(ws.Duplicate_regular_expression_flag,a,1):96&~(r|e)?(r|=e,J(e,a)):k(ws.The_Unicode_u_flag_and_the_Unicode_Sets_v_flag_cannot_be_set_simultaneously,a,1)}a++}t&&Z(n,l-n,(()=>{!function(t,n,r){var i,s,l,d,p=!!(64&t),f=!!(96&t),g=f||!n,y=!1,v=0,b=[];function x(e){for(;;){if(b.push(d),d=void 0,E(e),d=b.pop(),124!==w(a))return;a++}}function E(t){let n=!1;for(;;){const r=a,i=w(a);switch(i){case-1:return;case 94:case 36:a++,n=!1;break;case 92:switch(w(++a)){case 98:case 66:a++,n=!1;break;default:N(),n=!0}break;case 40:if(63===w(++a))switch(w(++a)){case 61:case 33:a++,n=!g;break;case 60:const t=a;switch(w(++a)){case 61:case 33:a++,n=!1;break;default:P(!1),H(62),e<5&&k(ws.Named_capturing_groups_are_only_available_when_targeting_ES2018_or_later,t,a-t),v++,n=!0}break;default:const r=a,i=C(0);45===w(a)&&(a++,C(i),a===r+1&&k(ws.Subpattern_flags_must_be_present_when_there_is_a_minus_sign,r,a-r)),H(58),n=!0}else v++,n=!0;x(!0),H(41);break;case 123:const o=++a;A();const s=_;if(!g&&!s){n=!0;break}if(44===w(a)){a++,A();const e=_;if(s)e&&Number.parseInt(s)>Number.parseInt(e)&&(g||125===w(a))&&k(ws.Numbers_out_of_order_in_quantifier,o,a-o);else{if(!e&&125!==w(a)){k(ws.Unexpected_0_Did_you_mean_to_escape_it_with_backslash,r,1,String.fromCharCode(i)),n=!0;break}k(ws.Incomplete_quantifier_Digit_expected,o,0)}}else if(!s){g&&k(ws.Unexpected_0_Did_you_mean_to_escape_it_with_backslash,r,1,String.fromCharCode(i)),n=!0;break}if(125!==w(a)){if(!g){n=!0;break}k(ws._0_expected,a,0,String.fromCharCode(125)),a--}case 42:case 43:case 63:63===w(++a)&&a++,n||k(ws.There_is_nothing_available_for_repetition,r,a-r),n=!1;break;case 46:a++,n=!0;break;case 91:a++,p?R():F(),H(93),n=!0;break;case 41:if(t)return;case 93:case 125:(g||41===i)&&k(ws.Unexpected_0_Did_you_mean_to_escape_it_with_backslash,a,1,String.fromCharCode(i)),a++,n=!0;break;case 47:case 124:return;default:W(),n=!0}}}function C(t){for(;;){const n=w(a);if(-1===n||!Na(n,e))break;const r=Hs(String.fromCharCode(n));void 0===r?k(ws.Unknown_regular_expression_flag,a,1):t&r?k(ws.Duplicate_regular_expression_flag,a,1):28&r?(t|=r,J(r,a)):k(ws.This_regular_expression_flag_cannot_be_toggled_within_a_subpattern,a,1),a++}return t}function N(){switch(Tn.assertEqual(T(a-1),92),w(a)){case 107:60===w(++a)?(a++,P(!0),H(62)):(g||r)&&k(ws.k_must_be_followed_by_a_capturing_group_name_enclosed_in_angle_brackets,a-2,2);break;case 113:if(p){a++,k(ws.q_is_only_available_inside_character_class,a-2,2);break}default:Tn.assert(q()||I()||D(!0))}}function I(){Tn.assertEqual(T(a-1),92);const e=w(a);if(e>=49&&e<=57){const e=a;return A(),l=_e(l,{pos:e,end:a,value:+_}),!0}return!1}function D(e){Tn.assertEqual(T(a-1),92);let t=w(a);switch(t){case-1:return k(ws.Undetermined_character_escape,a-1,1),"\\";case 99:if(t=w(++a),aa(t))return a++,String.fromCharCode(31&t);if(g)k(ws.c_must_be_followed_by_an_ASCII_letter,a-2,2);else if(e)return a--,"\\";return String.fromCharCode(t);case 94:case 36:case 47:case 92:case 46:case 42:case 43:case 63:case 40:case 41:case 91:case 93:case 123:case 125:case 124:return a++,String.fromCharCode(t);default:return a--,O(4|(n?8:0)|(f?16:0)|(e?32:0))}}function P(t){var n;Tn.assertEqual(T(a-1),60),u=a,K((n=a)>=0&&n<c?S(n):-1,e),a===u?k(ws.Expected_a_capturing_group_name):t?s=_e(s,{pos:u,end:a,name:_}):(null==d?void 0:d.has(_))||b.some((e=>null==e?void 0:e.has(_)))?k(ws.Named_capturing_groups_with_the_same_name_must_be_mutually_exclusive_to_each_other,u,a-u):(d??(d=new Set),d.add(_),i??(i=new Set),i.add(_))}function M(e){return 93===e||-1===e||a>=c}function F(){for(Tn.assertEqual(T(a-1),91),94===w(a)&&a++;;){if(M(w(a)))return;const e=a,t=B();if(45===w(a)){if(M(w(++a)))return;!t&&g&&k(ws.A_character_class_range_must_not_be_bounded_by_another_character_class,e,a-1-e);const n=a,r=B();if(!r&&g){k(ws.A_character_class_range_must_not_be_bounded_by_another_character_class,n,a-n);continue}if(!t)continue;const i=Da(t,0),o=Da(r,0);t.length===Pa(i)&&r.length===Pa(o)&&i>o&&k(ws.Range_out_of_order_in_character_class,e,a-e)}}}function R(){Tn.assertEqual(T(a-1),91);let e=!1;94===w(a)&&(a++,e=!0);let t=!1,n=w(a);if(M(n))return;let r,i=a;switch(m.slice(a,a+2)){case"--":case"&&":k(ws.Expected_a_class_set_operand),y=!1;break;default:r=j()}switch(w(a)){case 45:if(45===w(a+1))return e&&y&&k(ws.Anything_that_would_possibly_match_more_than_a_single_character_is_invalid_inside_a_negated_character_class,i,a-i),t=y,L(3),void(y=!e&&t);break;case 38:if(38===w(a+1))return L(2),e&&y&&k(ws.Anything_that_would_possibly_match_more_than_a_single_character_is_invalid_inside_a_negated_character_class,i,a-i),t=y,void(y=!e&&t);k(ws.Unexpected_0_Did_you_mean_to_escape_it_with_backslash,a,1,String.fromCharCode(n));break;default:e&&y&&k(ws.Anything_that_would_possibly_match_more_than_a_single_character_is_invalid_inside_a_negated_character_class,i,a-i),t=y}for(;n=w(a),-1!==n;){switch(n){case 45:if(n=w(++a),M(n))return void(y=!e&&t);if(45===n){a++,k(ws.Operators_must_not_be_mixed_within_a_character_class_Wrap_it_in_a_nested_class_instead,a-2,2),i=a-2,r=m.slice(i,a);continue}{r||k(ws.A_character_class_range_must_not_be_bounded_by_another_character_class,i,a-1-i);const n=a,o=j();if(e&&y&&k(ws.Anything_that_would_possibly_match_more_than_a_single_character_is_invalid_inside_a_negated_character_class,n,a-n),t||(t=y),!o){k(ws.A_character_class_range_must_not_be_bounded_by_another_character_class,n,a-n);break}if(!r)break;const s=Da(r,0),c=Da(o,0);r.length===Pa(s)&&o.length===Pa(c)&&s>c&&k(ws.Range_out_of_order_in_character_class,i,a-i)}break;case 38:i=a,38===w(++a)?(a++,k(ws.Operators_must_not_be_mixed_within_a_character_class_Wrap_it_in_a_nested_class_instead,a-2,2),38===w(a)&&(k(ws.Unexpected_0_Did_you_mean_to_escape_it_with_backslash,a,1,String.fromCharCode(n)),a++)):k(ws.Unexpected_0_Did_you_mean_to_escape_it_with_backslash,a-1,1,String.fromCharCode(n)),r=m.slice(i,a);continue}if(M(w(a)))break;switch(i=a,m.slice(a,a+2)){case"--":case"&&":k(ws.Operators_must_not_be_mixed_within_a_character_class_Wrap_it_in_a_nested_class_instead,a,2),a+=2,r=m.slice(i,a);break;default:r=j()}}y=!e&&t}function L(e){let t=y;for(;;){let n=w(a);if(M(n))break;switch(n){case 45:45===w(++a)?(a++,3!==e&&k(ws.Operators_must_not_be_mixed_within_a_character_class_Wrap_it_in_a_nested_class_instead,a-2,2)):k(ws.Operators_must_not_be_mixed_within_a_character_class_Wrap_it_in_a_nested_class_instead,a-1,1);break;case 38:38===w(++a)?(a++,2!==e&&k(ws.Operators_must_not_be_mixed_within_a_character_class_Wrap_it_in_a_nested_class_instead,a-2,2),38===w(a)&&(k(ws.Unexpected_0_Did_you_mean_to_escape_it_with_backslash,a,1,String.fromCharCode(n)),a++)):k(ws.Unexpected_0_Did_you_mean_to_escape_it_with_backslash,a-1,1,String.fromCharCode(n));break;default:switch(e){case 3:k(ws._0_expected,a,0,"--");break;case 2:k(ws._0_expected,a,0,"&&")}}if(n=w(a),M(n)){k(ws.Expected_a_class_set_operand);break}j(),t&&(t=y)}y=t}function j(){switch(y=!1,w(a)){case-1:return"";case 91:return a++,R(),H(93),"";case 92:if(a++,q())return"";if(113===w(a))return 123===w(++a)?(a++,z(),H(125),""):(k(ws.q_must_be_followed_by_string_alternatives_enclosed_in_braces,a-2,2),"q");a--;default:return U()}}function z(){Tn.assertEqual(T(a-1),123);let e=0;for(;;){switch(w(a)){case-1:return;case 125:return void(1!==e&&(y=!0));case 124:1!==e&&(y=!0),a++,o=a,e=0;break;default:U(),e++}}}function U(){const e=w(a);if(-1===e)return"";if(92===e){const e=w(++a);switch(e){case 98:return a++,"\b";case 38:case 45:case 33:case 35:case 37:case 44:case 58:case 59:case 60:case 61:case 62:case 64:case 96:case 126:return a++,String.fromCharCode(e);default:return D(!1)}}else if(e===w(a+1))switch(e){case 38:case 33:case 35:case 37:case 42:case 43:case 44:case 46:case 58:case 59:case 60:case 61:case 62:case 63:case 64:case 96:case 126:return k(ws.A_character_class_must_not_contain_a_reserved_double_punctuator_Did_you_mean_to_escape_it_with_backslash,a,2),a+=2,m.substring(a-2,a)}switch(e){case 47:case 40:case 41:case 91:case 93:case 123:case 125:case 45:case 124:return k(ws.Unexpected_0_Did_you_mean_to_escape_it_with_backslash,a,1,String.fromCharCode(e)),a++,String.fromCharCode(e)}return W()}function B(){if(92!==w(a))return W();{const e=w(++a);switch(e){case 98:return a++,"\b";case 45:return a++,String.fromCharCode(e);default:return q()?"":D(!1)}}}function q(){Tn.assertEqual(T(a-1),92);let e=!1;const t=a-1,n=w(a);switch(n){case 100:case 68:case 115:case 83:case 119:case 87:return a++,!0;case 80:e=!0;case 112:if(123===w(++a)){const n=++a,r=V();if(61===w(a)){const e=Fa.get(r);if(a===n)k(ws.Expected_a_Unicode_property_name);else if(void 0===e){k(ws.Unknown_Unicode_property_name,n,a-n);const e=Ht(r,Fa.keys(),gt);e&&k(ws.Did_you_mean_0,n,a-n,e)}const t=++a,i=V();if(a===t)k(ws.Expected_a_Unicode_property_value);else if(void 0!==e&&!ja[e].has(i)){k(ws.Unknown_Unicode_property_value,t,a-t);const n=Ht(i,ja[e],gt);n&&k(ws.Did_you_mean_0,t,a-t,n)}}else if(a===n)k(ws.Expected_a_Unicode_property_name_or_value);else if(La.has(r))p?e?k(ws.Anything_that_would_possibly_match_more_than_a_single_character_is_invalid_inside_a_negated_character_class,n,a-n):y=!0:k(ws.Any_Unicode_property_that_would_possibly_match_more_than_a_single_character_is_only_available_when_the_Unicode_Sets_v_flag_is_set,n,a-n);else if(!ja.General_Category.has(r)&&!Ra.has(r)){k(ws.Unknown_Unicode_property_name_or_value,n,a-n);const e=Ht(r,[...ja.General_Category,...Ra,...La],gt);e&&k(ws.Did_you_mean_0,n,a-n,e)}H(125),f||k(ws.Unicode_property_value_expressions_are_only_available_when_the_Unicode_u_flag_or_the_Unicode_Sets_v_flag_is_set,t,a-t)}else{if(!g)return a--,!1;k(ws._0_must_be_followed_by_a_Unicode_property_value_expression_enclosed_in_braces,a-2,2,String.fromCharCode(n))}return!0}return!1}function V(){let e="";for(;;){const t=w(a);if(-1===t||!ca(t))break;e+=String.fromCharCode(t),a++}return e}function W(){const e=f?Pa(w(a)):1;return a+=e,e>0?m.substring(a-e,a):""}function H(e){w(a)===e?a++:k(ws._0_expected,a,0,String.fromCharCode(e))}x(!1),h(s,(e=>{(null==i?void 0:i.has(e.name))||k(ws.There_is_no_capturing_group_named_0_in_this_regular_expression,e.pos,e.end-e.pos,e.name)})),h(l,(e=>{e.value>v&&(v?k(ws.This_backreference_refers_to_a_group_that_does_not_exist_There_are_only_0_capturing_groups_in_this_regular_expression,e.pos,e.end-e.pos,v):k(ws.This_backreference_refers_to_a_group_that_does_not_exist_There_are_no_capturing_groups_in_this_regular_expression,e.pos,e.end-e.pos))}))}(r,!0,i)}))}_=m.substring(u,a),d=14}return d},reScanTemplateToken:function(e){return a=u,d=M(!e)},reScanTemplateHeadOrNoSubstitutionTemplate:function(){return a=u,d=M(!0)},scanJsxIdentifier:function(){if(ks(d)){for(;a<c;){if(45===T(a)){_+="-",a++;continue}const e=a;if(_+=j(),a===e)break}return z()}return d},scanJsxAttributeValue:G,reScanJsxAttributeValue:function(){return a=u=l,G()},reScanJsxToken:function(e=!0){return a=u=l,d=H(e)},reScanLessThanToken:function(){if(48===d)return a=u+1,d=30;return d},reScanHashToken:function(){if(81===d)return a=u+1,d=63;return d},reScanQuestionToken:function(){return Tn.assert(61===d,"'reScanQuestionToken' should only be called on a '??'"),a=u+1,d=58},reScanInvalidIdentifier:function(){Tn.assert(0===d,"'reScanInvalidIdentifier' should only be called when the current token is 'SyntaxKind.Unknown'."),a=u=l,p=0;const e=S(a),t=K(e,99);if(t)return d=t;return a+=Pa(e),d},scanJsxToken:H,scanJsDocToken:Q,scanJSDocCommentTextToken:function(e){if(l=u=a,p=0,a>=c)return d=1;for(let t=T(a);a<c&&!ia(t)&&96!==t;t=S(++a))if(!e){if(123===t)break;if(64===t&&a-1>=0&&ra(T(a-1))&&!(a+1<c&&na(T(a+1))))break}if(a===u)return Q();return _=m.substring(u,a),d=82},scan:q,getText:function(){return m},clearCommentDirectives:function(){f=void 0},setText:X,setScriptTarget:function(t){e=t},setLanguageVariant:function(e){n=e},setScriptKind:function(e){v=e},setJSDocParsingMode:function(e){b=e},setOnError:function(e){i=e},resetTokenState:$,setTextPos:$,setSkipJsDocLeadingAsterisks:function(e){g+=e?1:-1},hasLeadingAsterisks:function(){return y},tryScan:function(e){return Y(e,!1)},lookAhead:function(e){return Y(e,!0)},scanRange:Z};return Tn.isDebugging&&Object.defineProperty(x,"__debugShowCurrentPositionInText",{get:()=>{const e=x.getText();return e.slice(0,x.getTokenFullStart())+"\u2551"+e.slice(x.getTokenFullStart())}}),x;function S(e){return Da(m,e)}function T(e){return m.charCodeAt(e)}function w(e){return e>=0&&e<c?T(e):-1}function k(e,t=a,n,r){if(i){const o=a;a=t,i(e,n||0,r),a=o}}function E(){let e=a,t=!1,n=!1,r="";for(;;){const i=T(a);if(95!==i){if(!oa(i))break;t=!0,n=!1,a++}else p|=512,t?(t=!1,n=!0,r+=m.substring(e,a)):(p|=16384,k(n?ws.Multiple_consecutive_numeric_separators_are_not_permitted:ws.Numeric_separators_are_not_allowed_here,a,1)),e=++a}return 95===T(a-1)&&(p|=16384,k(ws.Numeric_separators_are_not_allowed_here,a-1,1)),r+m.substring(e,a)}function C(){let e,t,n,r=a;if(48===T(a))if(95===T(++a))p|=16896,k(ws.Numeric_separators_are_not_allowed_here,a,1),a--,e=E();else if(A()){if(_){_=""+parseInt(_,8),p|=32;const e=41===d,t=(e?"-":"")+"0o"+(+_).toString(8);return e&&r--,k(ws.Octal_literals_are_not_allowed_Use_the_syntax_0,r,a-r,t),9}e="0"}else p|=8192,e=""+ +_;else e=E();46===T(a)&&(a++,t=E());let i,o=a;if(69===T(a)||101===T(a)){a++,p|=16,43!==T(a)&&45!==T(a)||a++;const e=a,t=E();t?(n=m.substring(o,e)+t,o=a):k(ws.Digit_expected)}if(512&p?(i=e,t&&(i+="."+t),n&&(i+=n)):i=m.substring(r,o),8192&p)return k(ws.Decimals_with_leading_zeros_are_not_allowed,r,o-r),_=""+ +i,9;if(void 0!==t||16&p)return N(r,void 0===t&&!!(16&p)),_=""+ +i,9;{_=i;const e=B();return N(r),e}}function N(t,n){if(!Ca(S(a),e))return;const r=a,{length:i}=j();1===i&&"n"===m[r]?k(n?ws.A_bigint_literal_cannot_use_exponential_notation:ws.A_bigint_literal_must_be_an_integer,t,r-t+1):(k(ws.An_identifier_or_keyword_cannot_immediately_follow_a_numeric_literal,r,i),a=r)}function A(){const e=a;let t=!0;for(;oa(w(a));)la(T(a))||(t=!1),a++;return _=m.substring(e,a),t}function I(e,t){return D(e,!0,t)}function D(e,t,n){let r=[],i=!1,o=!1;for(;r.length<e||t;){let e=T(a);if(n&&95===e)p|=512,i?(i=!1,o=!0):k(o?ws.Multiple_consecutive_numeric_separators_are_not_permitted:ws.Numeric_separators_are_not_allowed_here,a,1),a++;else{if(i=n,e>=65&&e<=70)e+=32;else if(!(e>=48&&e<=57||e>=97&&e<=102))break;r.push(e),a++,o=!1}}return r.length<e&&(r=[]),95===T(a-1)&&k(ws.Numeric_separators_are_not_allowed_here,a-1,1),String.fromCharCode(...r)}function P(e=!1){const t=T(a);let n="",r=++a;for(;;){if(a>=c){n+=m.substring(r,a),p|=4,k(ws.Unterminated_string_literal);break}const i=T(a);if(i===t){n+=m.substring(r,a),a++;break}if(92!==i||e){if((10===i||13===i)&&!e){n+=m.substring(r,a),p|=4,k(ws.Unterminated_string_literal);break}a++}else n+=m.substring(r,a),n+=O(3),r=a}return n}function M(e){const t=96===T(a);let n,r=++a,i="";for(;;){if(a>=c){i+=m.substring(r,a),p|=4,k(ws.Unterminated_template_literal),n=t?15:18;break}const o=T(a);if(96===o){i+=m.substring(r,a),a++,n=t?15:18;break}if(36===o&&a+1<c&&123===T(a+1)){i+=m.substring(r,a),a+=2,n=t?16:17;break}92!==o?13!==o?a++:(i+=m.substring(r,a),++a<c&&10===T(a)&&a++,i+="\n",r=a):(i+=m.substring(r,a),i+=O(1|(e?2:0)),r=a)}return Tn.assert(void 0!==n),_=i,n}function O(t){const n=a;if(++a>=c)return k(ws.Unexpected_end_of_text),"";const r=T(a);switch(a++,r){case 48:if(a>=c||!oa(T(a)))return"\0";case 49:case 50:case 51:a<c&&la(T(a))&&a++;case 52:case 53:case 54:case 55:if(a<c&&la(T(a))&&a++,p|=2048,6&t){const e=parseInt(m.substring(n+1,a),8);return k(4&t&&!(32&t)&&48!==r?ws.Octal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class_If_this_was_intended_as_an_escape_sequence_use_the_syntax_0_instead:ws.Octal_escape_sequences_are_not_allowed_Use_the_syntax_0,n,a-n,"\\x"+e.toString(16).padStart(2,"0")),String.fromCharCode(e)}return m.substring(n,a);case 56:case 57:return p|=2048,6&t?(4&t&&!(32&t)?k(ws.Decimal_escape_sequences_and_backreferences_are_not_allowed_in_a_character_class,n,a-n):k(ws.Escape_sequence_0_is_not_allowed,n,a-n,m.substring(n,a)),String.fromCharCode(r)):m.substring(n,a);case 98:return"\b";case 116:return"\t";case 110:return"\n";case 118:return"\v";case 102:return"\f";case 114:return"\r";case 39:return"'";case 34:return'"';case 117:if(17&t&&a<c&&123===T(a))return a-=2,F(!!(6&t));for(;a<n+6;a++)if(!(a<c&&sa(T(a))))return p|=2048,6&t&&k(ws.Hexadecimal_digit_expected),m.substring(n,a);p|=1024;const i=parseInt(m.substring(n+2,a),16),o=String.fromCharCode(i);if(16&t&&i>=55296&&i<=56319&&a+6<c&&"\\u"===m.substring(a,a+2)&&123!==T(a+2)){const e=a;let t=a+2;for(;t<e+6;t++)if(!sa(T(a)))return o;const n=parseInt(m.substring(e+2,t),16);if(n>=56320&&n<=57343)return a=t,o+String.fromCharCode(n)}return o;case 120:for(;a<n+4;a++)if(!(a<c&&sa(T(a))))return p|=2048,6&t&&k(ws.Hexadecimal_digit_expected),m.substring(n,a);return p|=4096,String.fromCharCode(parseInt(m.substring(n+2,a),16));case 13:a<c&&10===T(a)&&a++;case 10:case 8232:case 8233:return"";default:return(16&t||4&t&&!(8&t)&&Na(r,e))&&k(ws.This_character_cannot_be_escaped_in_a_regular_expression,a-2,2),String.fromCharCode(r)}}function F(e){const t=a,n=a+=3,r=I(1,!1),i=r?parseInt(r,16):-1;let o=!1;return i<0?(e&&k(ws.Hexadecimal_digit_expected),o=!0):i>1114111&&(e&&k(ws.An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive,n,a-n),o=!0),a>=c?(e&&k(ws.Unexpected_end_of_text),o=!0):125===T(a)?a++:(e&&k(ws.Unterminated_Unicode_escape_sequence),o=!0),o?(p|=2048,m.substring(t,a)):(p|=8,Oa(i))}function R(){if(a+5<c&&117===T(a+1)){const e=a;a+=2;const t=function(e,t){const n=D(e,!1,t);return n?parseInt(n,16):-1}(4,!1);return a=e,t}return-1}function L(){if(117===S(a+1)&&123===S(a+2)){const e=a;a+=3;const t=I(1,!1),n=t?parseInt(t,16):-1;return a=e,n}return-1}function j(){let t="",n=a;for(;a<c;){let r=S(a);if(Na(r,e))a+=Pa(r);else{if(92!==r)break;if(r=L(),r>=0&&Na(r,e)){t+=F(!0),n=a;continue}if(r=R(),!(r>=0&&Na(r,e)))break;p|=1024,t+=m.substring(n,a),t+=Oa(r),n=a+=6}}return t+=m.substring(n,a),t}function z(){const e=_.length;if(e>=2&&e<=12){const e=_.charCodeAt(0);if(e>=97&&e<=122){const e=Ns.get(_);if(void 0!==e)return d=e}}return d=80}function U(e){let t="",n=!1,r=!1;for(;;){const i=T(a);if(95!==i){if(n=!0,!oa(i)||i-48>=e)break;t+=m[a],a++,r=!1}else p|=512,n?(n=!1,r=!0):k(r?ws.Multiple_consecutive_numeric_separators_are_not_permitted:ws.Numeric_separators_are_not_allowed_here,a,1),a++}return 95===T(a-1)&&k(ws.Numeric_separators_are_not_allowed_here,a-1,1),t}function B(){if(110===T(a))return _+="n",384&p&&(_=Nw(_)+"n"),a++,10;{const e=128&p?parseInt(_.slice(2),2):256&p?parseInt(_.slice(2),8):+_;return _=""+e,9}}function q(){for(l=a,p=0,y=!1;;){if(u=a,a>=c)return d=1;const r=S(a);if(0===a&&35===r&&ha(m,a)){if(a=ga(m,a),t)continue;return d=6}switch(r){case 10:case 13:if(p|=1,t){a++;continue}return 13===r&&a+1<c&&10===T(a+1)?a+=2:a++,d=4;case 9:case 11:case 12:case 32:case 160:case 5760:case 8192:case 8193:case 8194:case 8195:case 8196:case 8197:case 8198:case 8199:case 8200:case 8201:case 8202:case 8203:case 8239:case 8287:case 12288:case 65279:if(t){a++;continue}for(;a<c&&ra(T(a));)a++;return d=5;case 33:return 61===T(a+1)?61===T(a+2)?(a+=3,d=38):(a+=2,d=36):(a++,d=54);case 34:case 39:return _=P(),d=11;case 96:return d=M(!1);case 37:return 61===T(a+1)?(a+=2,d=70):(a++,d=45);case 38:return 38===T(a+1)?61===T(a+2)?(a+=3,d=77):(a+=2,d=56):61===T(a+1)?(a+=2,d=74):(a++,d=51);case 40:return a++,d=21;case 41:return a++,d=22;case 42:if(61===T(a+1))return a+=2,d=67;if(42===T(a+1))return 61===T(a+2)?(a+=3,d=68):(a+=2,d=43);if(a++,g&&!y&&1&p){y=!0;continue}return d=42;case 43:return 43===T(a+1)?(a+=2,d=46):61===T(a+1)?(a+=2,d=65):(a++,d=40);case 44:return a++,d=28;case 45:return 45===T(a+1)?(a+=2,d=47):61===T(a+1)?(a+=2,d=66):(a++,d=41);case 46:return oa(T(a+1))?(C(),d=9):46===T(a+1)&&46===T(a+2)?(a+=3,d=26):(a++,d=25);case 47:if(47===T(a+1)){for(a+=2;a<c&&!ia(T(a));)a++;if(f=W(f,m.slice(u,a),Rs,u),t)continue;return d=2}if(42===T(a+1)){const e=42===T(a+=2)&&47!==T(a+1);let n=!1,r=u;for(;a<c;){const e=T(a);if(42===e&&47===T(a+1)){a+=2,n=!0;break}a++,ia(e)&&(r=a,p|=1)}if(e&&V()&&(p|=2),f=W(f,m.slice(r,a),Ls,r),n||k(ws.Asterisk_Slash_expected),t)continue;return n||(p|=4),d=3}return 61===T(a+1)?(a+=2,d=69):(a++,d=44);case 48:if(a+2<c&&(88===T(a+1)||120===T(a+1)))return a+=2,(_=I(1,!0))||(k(ws.Hexadecimal_digit_expected),_="0"),_="0x"+_,p|=64,d=B();if(a+2<c&&(66===T(a+1)||98===T(a+1)))return a+=2,(_=U(2))||(k(ws.Binary_digit_expected),_="0"),_="0b"+_,p|=128,d=B();if(a+2<c&&(79===T(a+1)||111===T(a+1)))return a+=2,(_=U(8))||(k(ws.Octal_digit_expected),_="0"),_="0o"+_,p|=256,d=B();case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return d=C();case 58:return a++,d=59;case 59:return a++,d=27;case 60:if(pa(m,a)){if(a=fa(m,a,k),t)continue;return d=7}return 60===T(a+1)?61===T(a+2)?(a+=3,d=71):(a+=2,d=48):61===T(a+1)?(a+=2,d=33):1===n&&47===T(a+1)&&42!==T(a+2)?(a+=2,d=31):(a++,d=30);case 61:if(pa(m,a)){if(a=fa(m,a,k),t)continue;return d=7}return 61===T(a+1)?61===T(a+2)?(a+=3,d=37):(a+=2,d=35):62===T(a+1)?(a+=2,d=39):(a++,d=64);case 62:if(pa(m,a)){if(a=fa(m,a,k),t)continue;return d=7}return a++,d=32;case 63:return 46!==T(a+1)||oa(T(a+2))?63===T(a+1)?61===T(a+2)?(a+=3,d=78):(a+=2,d=61):(a++,d=58):(a+=2,d=29);case 91:return a++,d=23;case 93:return a++,d=24;case 94:return 61===T(a+1)?(a+=2,d=79):(a++,d=53);case 123:return a++,d=19;case 124:if(pa(m,a)){if(a=fa(m,a,k),t)continue;return d=7}return 124===T(a+1)?61===T(a+2)?(a+=3,d=76):(a+=2,d=57):61===T(a+1)?(a+=2,d=75):(a++,d=52);case 125:return a++,d=20;case 126:return a++,d=55;case 64:return a++,d=60;case 92:const i=L();if(i>=0&&Ca(i,e))return _=F(!0)+j(),d=z();const o=R();return o>=0&&Ca(o,e)?(a+=6,p|=1024,_=String.fromCharCode(o)+j(),d=z()):(k(ws.Invalid_character),a++,d=0);case 35:if(0!==a&&"!"===m[a+1])return k(ws.can_only_be_used_at_the_start_of_a_file,a,2),a++,d=0;const s=S(a+1);if(92===s){a++;const t=L();if(t>=0&&Ca(t,e))return _="#"+F(!0)+j(),d=81;const n=R();if(n>=0&&Ca(n,e))return a+=6,p|=1024,_="#"+String.fromCharCode(n)+j(),d=81;a--}return Ca(s,e)?(a++,K(s,e)):(_="#",k(ws.Invalid_character,a++,Pa(r))),d=81;case 65533:return k(ws.File_appears_to_be_binary,0,0),a=c,d=8;default:const l=K(r,e);if(l)return d=l;if(ra(r)){a+=Pa(r);continue}if(ia(r)){p|=1,a+=Pa(r);continue}const h=Pa(r);return k(ws.Invalid_character,a,h),a+=h,d=0}}}function V(){switch(b){case 0:return!0;case 1:return!1}return 3!==v&&4!==v||3!==b&&js.test(m.slice(l,a))}function K(e,t){let n=e;if(Ca(n,t)){for(a+=Pa(n);a<c&&Na(n=S(a),t);)a+=Pa(n);return _=m.substring(u,a),92===n&&(_+=j()),z()}}function J(t,n){const r=Ds.get(t);r&&e<r&&k(ws.This_regular_expression_flag_is_only_available_when_targeting_0_or_later,n,1,tT(r))}function W(e,t,n,r){const i=function(e,t){const n=t.exec(e);if(!n)return;switch(n[1]){case"ts-expect-error":return 0;case"ts-ignore":return 1}return}(t.trimStart(),n);return void 0===i?e:_e(e,{range:{pos:r,end:a},type:i})}function H(e=!0){if(l=u=a,a>=c)return d=1;let t=T(a);if(60===t)return 47===T(a+1)?(a+=2,d=31):(a++,d=30);if(123===t)return a++,d=19;let n=0;for(;a<c&&(t=T(a),123!==t);){if(60===t){if(pa(m,a))return a=fa(m,a,k),d=7;break}if(62===t&&k(ws.Unexpected_token_Did_you_mean_or_gt,a,1),125===t&&k(ws.Unexpected_token_Did_you_mean_or_rbrace,a,1),ia(t)&&0===n)n=-1;else{if(!e&&ia(t)&&n>0)break;na(t)||(n=a)}a++}return _=m.substring(l,a),-1===n?13:12}function G(){switch(l=a,T(a)){case 34:case 39:return _=P(!0),d=11;default:return q()}}function Q(){if(l=u=a,p=0,a>=c)return d=1;const t=S(a);switch(a+=Pa(t),t){case 9:case 11:case 12:case 32:for(;a<c&&ra(T(a));)a++;return d=5;case 64:return d=60;case 13:10===T(a)&&a++;case 10:return p|=1,d=4;case 42:return d=42;case 123:return d=19;case 125:return d=20;case 91:return d=23;case 93:return d=24;case 40:return d=21;case 41:return d=22;case 60:return d=30;case 62:return d=32;case 61:return d=64;case 44:return d=28;case 46:return d=25;case 96:return d=62;case 35:return d=63;case 92:a--;const t=L();if(t>=0&&Ca(t,e))return _=F(!0)+j(),d=z();const n=R();return n>=0&&Ca(n,e)?(a+=6,p|=1024,_=String.fromCharCode(n)+j(),d=z()):(a++,d=0)}if(Ca(t,e)){let n=t;for(;a<c&&Na(n=S(a),e)||45===n;)a+=Pa(n);return _=m.substring(u,a),92===n&&(_+=j()),d=z()}return d=0}function Y(e,t){const n=a,r=l,i=u,o=d,s=_,c=p,f=e();return f&&!t||(a=n,l=r,u=i,d=o,_=s,p=c),f}function Z(e,t,n){const r=c,i=a,o=l,s=u,h=d,g=_,y=p,v=f;X(m,e,t);const b=n();return c=r,a=i,l=o,u=s,d=h,_=g,p=y,f=v,b}function X(e,t,n){m=e||"",c=void 0===n?m.length:t+n,$(t||0)}function $(e){Tn.assert(e>=0),a=e,l=e,u=e,d=0,_=void 0,p=0}}function Da(e,t){return e.codePointAt(t)}function Pa(e){return e>=65536?2:-1===e?0:1}var Ma=String.fromCodePoint?e=>String.fromCodePoint(e):function(e){if(Tn.assert(0<=e&&e<=1114111),e<=65535)return String.fromCharCode(e);const t=Math.floor((e-65536)/1024)+55296,n=(e-65536)%1024+56320;return String.fromCharCode(t,n)};function Oa(e){return Ma(e)}var Fa=new Map(Object.entries({General_Category:"General_Category",gc:"General_Category",Script:"Script",sc:"Script",Script_Extensions:"Script_Extensions",scx:"Script_Extensions"})),Ra=new Set(["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","EComp","Emoji_Modifier","EMod","Emoji_Modifier_Base","EBase","Emoji_Presentation","EPres","Extended_Pictographic","ExtPict","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"]),La=new Set(["Basic_Emoji","Emoji_Keycap_Sequence","RGI_Emoji_Modifier_Sequence","RGI_Emoji_Flag_Sequence","RGI_Emoji_Tag_Sequence","RGI_Emoji_ZWJ_Sequence","RGI_Emoji"]),ja={General_Category:new Set(["C","Other","Cc","Control","cntrl","Cf","Format","Cn","Unassigned","Co","Private_Use","Cs","Surrogate","L","Letter","LC","Cased_Letter","Ll","Lowercase_Letter","Lm","Modifier_Letter","Lo","Other_Letter","Lt","Titlecase_Letter","Lu","Uppercase_Letter","M","Mark","Combining_Mark","Mc","Spacing_Mark","Me","Enclosing_Mark","Mn","Nonspacing_Mark","N","Number","Nd","Decimal_Number","digit","Nl","Letter_Number","No","Other_Number","P","Punctuation","punct","Pc","Connector_Punctuation","Pd","Dash_Punctuation","Pe","Close_Punctuation","Pf","Final_Punctuation","Pi","Initial_Punctuation","Po","Other_Punctuation","Ps","Open_Punctuation","S","Symbol","Sc","Currency_Symbol","Sk","Modifier_Symbol","Sm","Math_Symbol","So","Other_Symbol","Z","Separator","Zl","Line_Separator","Zp","Paragraph_Separator","Zs","Space_Separator"]),Script:new Set(["Adlm","Adlam","Aghb","Caucasian_Albanian","Ahom","Arab","Arabic","Armi","Imperial_Aramaic","Armn","Armenian","Avst","Avestan","Bali","Balinese","Bamu","Bamum","Bass","Bassa_Vah","Batk","Batak","Beng","Bengali","Bhks","Bhaiksuki","Bopo","Bopomofo","Brah","Brahmi","Brai","Braille","Bugi","Buginese","Buhd","Buhid","Cakm","Chakma","Cans","Canadian_Aboriginal","Cari","Carian","Cham","Cher","Cherokee","Chrs","Chorasmian","Copt","Coptic","Qaac","Cpmn","Cypro_Minoan","Cprt","Cypriot","Cyrl","Cyrillic","Deva","Devanagari","Diak","Dives_Akuru","Dogr","Dogra","Dsrt","Deseret","Dupl","Duployan","Egyp","Egyptian_Hieroglyphs","Elba","Elbasan","Elym","Elymaic","Ethi","Ethiopic","Geor","Georgian","Glag","Glagolitic","Gong","Gunjala_Gondi","Gonm","Masaram_Gondi","Goth","Gothic","Gran","Grantha","Grek","Greek","Gujr","Gujarati","Guru","Gurmukhi","Hang","Hangul","Hani","Han","Hano","Hanunoo","Hatr","Hatran","Hebr","Hebrew","Hira","Hiragana","Hluw","Anatolian_Hieroglyphs","Hmng","Pahawh_Hmong","Hmnp","Nyiakeng_Puachue_Hmong","Hrkt","Katakana_Or_Hiragana","Hung","Old_Hungarian","Ital","Old_Italic","Java","Javanese","Kali","Kayah_Li","Kana","Katakana","Kawi","Khar","Kharoshthi","Khmr","Khmer","Khoj","Khojki","Kits","Khitan_Small_Script","Knda","Kannada","Kthi","Kaithi","Lana","Tai_Tham","Laoo","Lao","Latn","Latin","Lepc","Lepcha","Limb","Limbu","Lina","Linear_A","Linb","Linear_B","Lisu","Lyci","Lycian","Lydi","Lydian","Mahj","Mahajani","Maka","Makasar","Mand","Mandaic","Mani","Manichaean","Marc","Marchen","Medf","Medefaidrin","Mend","Mende_Kikakui","Merc","Meroitic_Cursive","Mero","Meroitic_Hieroglyphs","Mlym","Malayalam","Modi","Mong","Mongolian","Mroo","Mro","Mtei","Meetei_Mayek","Mult","Multani","Mymr","Myanmar","Nagm","Nag_Mundari","Nand","Nandinagari","Narb","Old_North_Arabian","Nbat","Nabataean","Newa","Nkoo","Nko","Nshu","Nushu","Ogam","Ogham","Olck","Ol_Chiki","Orkh","Old_Turkic","Orya","Oriya","Osge","Osage","Osma","Osmanya","Ougr","Old_Uyghur","Palm","Palmyrene","Pauc","Pau_Cin_Hau","Perm","Old_Permic","Phag","Phags_Pa","Phli","Inscriptional_Pahlavi","Phlp","Psalter_Pahlavi","Phnx","Phoenician","Plrd","Miao","Prti","Inscriptional_Parthian","Rjng","Rejang","Rohg","Hanifi_Rohingya","Runr","Runic","Samr","Samaritan","Sarb","Old_South_Arabian","Saur","Saurashtra","Sgnw","SignWriting","Shaw","Shavian","Shrd","Sharada","Sidd","Siddham","Sind","Khudawadi","Sinh","Sinhala","Sogd","Sogdian","Sogo","Old_Sogdian","Sora","Sora_Sompeng","Soyo","Soyombo","Sund","Sundanese","Sylo","Syloti_Nagri","Syrc","Syriac","Tagb","Tagbanwa","Takr","Takri","Tale","Tai_Le","Talu","New_Tai_Lue","Taml","Tamil","Tang","Tangut","Tavt","Tai_Viet","Telu","Telugu","Tfng","Tifinagh","Tglg","Tagalog","Thaa","Thaana","Thai","Tibt","Tibetan","Tirh","Tirhuta","Tnsa","Tangsa","Toto","Ugar","Ugaritic","Vaii","Vai","Vith","Vithkuqi","Wara","Warang_Citi","Wcho","Wancho","Xpeo","Old_Persian","Xsux","Cuneiform","Yezi","Yezidi","Yiii","Yi","Zanb","Zanabazar_Square","Zinh","Inherited","Qaai","Zyyy","Common","Zzzz","Unknown"]),Script_Extensions:void 0};function za(e){return Oo(e)||Do(e)}function Ua(e){return ae(e,bS,wS)}function Ba(e){switch(MS(e)){case 99:return"lib.esnext.full.d.ts";case 10:return"lib.es2023.full.d.ts";case 9:return"lib.es2022.full.d.ts";case 8:return"lib.es2021.full.d.ts";case 7:return"lib.es2020.full.d.ts";case 6:return"lib.es2019.full.d.ts";case 5:return"lib.es2018.full.d.ts";case 4:return"lib.es2017.full.d.ts";case 3:return"lib.es2016.full.d.ts";case 2:return"lib.es6.d.ts";default:return"lib.d.ts"}}function qa(e){return e.start+e.length}function Va(e){return 0===e.length}function Ka(e,t){return t>=e.start&&t<qa(e)}function Ja(e,t){return t>=e.pos&&t<=e.end}function Wa(e,t){return t.start>=e.start&&qa(t)<=qa(e)}function Ha(e,t){return void 0!==Ga(e,t)}function Ga(e,t){const n=$a(e,t);return n&&0===n.length?void 0:n}function Qa(e,t){return Za(e.start,e.length,t.start,t.length)}function Ya(e,t,n){return Za(e.start,e.length,t,n)}function Za(e,t,n,r){return n<=e+t&&n+r>=e}function Xa(e,t){return t<=qa(e)&&t>=e.start}function $a(e,t){const n=Math.max(e.start,t.start),r=Math.min(qa(e),qa(t));return n<=r?tc(n,r):void 0}function ec(e,t){if(e<0)throw new Error("start < 0");if(t<0)throw new Error("length < 0");return{start:e,length:t}}function tc(e,t){return ec(e,t-e)}function nc(e){return ec(e.span.start,e.newLength)}function rc(e){return Va(e.span)&&0===e.newLength}function ic(e,t){if(t<0)throw new Error("newLength < 0");return{span:e,newLength:t}}ja.Script_Extensions=ja.Script;var oc=ic(ec(0,0),0);function sc(e){if(0===e.length)return oc;if(1===e.length)return e[0];const t=e[0];let n=t.span.start,r=qa(t.span),i=n+t.newLength;for(let o=1;o<e.length;o++){const t=e[o],s=n,a=r,c=i,l=t.span.start,u=qa(t.span),d=l+t.newLength;n=Math.min(s,l),r=Math.max(a,a+(u-c)),i=Math.max(d,d+(c-u))}return ic(tc(n,r),i-n)}function ac(e){if(e&&168===e.kind)for(let t=e;t;t=t.parent)if(pu(t)||xu(t)||264===t.kind)return t}function cc(e,t){return fN(e)&&Kv(e,31)&&176===t.kind}function lc(e){return!!Mu(e)&&T(e.elements,uc)}function uc(e){return!!TA(e)||lc(e.name)}function dc(e){let t=e.parent;for(;$N(t.parent);)t=t.parent.parent;return t.parent}function _c(e,t){$N(e)&&(e=dc(e));let n=t(e);return 260===e.kind&&(e=e.parent),e&&261===e.kind&&(n|=t(e),e=e.parent),e&&243===e.kind&&(n|=t(e)),n}function pc(e){return _c(e,nb)}function fc(e){return _c(e,rb)}function mc(e){return _c(e,hc)}function hc(e){return e.flags}var gc=["cs","de","es","fr","it","ja","ko","pl","pt-br","ru","tr","zh-cn","zh-tw"];function yc(e,t,n){const r=e.toLowerCase(),i=/^([a-z]+)([_-]([a-z]+))?$/.exec(r);if(!i)return void(n&&n.push(mS(ws.Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1,"en","ja-jp")));const o=i[1],s=i[3];function a(e,n,r){let i=Zo(Vo(ts(t.getExecutingFilePath())),e);if(n&&(i=i+"-"+n),i=t.resolvePath(Zo(i,"diagnosticMessages.generated.json")),!t.fileExists(i))return!1;let o="";try{o=t.readFile(i)}catch(Mge){return r&&r.push(mS(ws.Unable_to_open_file_0,i)),!1}try{sS(JSON.parse(o))}catch{return r&&r.push(mS(ws.Corrupted_locale_file_0,i)),!1}return!0}A(gc,r)&&!a(o,s,n)&&a(o,void 0,n),Vt(e)}function vc(e,t){if(e)for(;void 0!==e.original;)e=e.original;return e&&t?t(e)?e:void 0:e}function bc(e,t){for(;e;){const n=t(e);if("quit"===n)return;if(n)return e;e=e.parent}}function xc(e){return!(16&e.flags)}function Sc(e,t){if(void 0===e||xc(e))return e;for(e=e.original;e;){if(xc(e))return!t||t(e)?e:void 0;e=e.original}}function Tc(e){return e.length>=2&&95===e.charCodeAt(0)&&95===e.charCodeAt(1)?"_"+e:e}function wc(e){const t=e;return t.length>=3&&95===t.charCodeAt(0)&&95===t.charCodeAt(1)&&95===t.charCodeAt(2)?t.substr(1):t}function kc(e){return wc(e.escapedText)}function Ec(e){const t=Ks(e.escapedText);return t?dt(t,Og):void 0}function Cc(e){return e.valueDeclaration&&iu(e.valueDeclaration)?kc(e.valueDeclaration.name):wc(e.escapedName)}function Nc(e){const t=e.parent.parent;if(t){if(Sd(t))return Ac(t);switch(t.kind){case 243:if(t.declarationList&&t.declarationList.declarations[0])return Ac(t.declarationList.declarations[0]);break;case 244:let e=t.expression;switch(226===e.kind&&64===e.operatorToken.kind&&(e=e.left),e.kind){case 211:return e.name;case 212:const t=e.argumentExpression;if(YC(t))return t}break;case 217:return Ac(t.expression);case 256:if(Sd(t.statement)||td(t.statement))return Ac(t.statement)}}}function Ac(e){const t=Oc(e);return t&&YC(t)?t:void 0}function Ic(e,t){return!(!Pc(e)||!YC(e.name)||kc(e.name)!==kc(t))||!(!FA(e)||!$(e.declarationList.declarations,(e=>Ic(e,t))))}function Dc(e){return e.name||Nc(e)}function Pc(e){return!!e.name}function Mc(e){switch(e.kind){case 80:return e;case 348:case 341:{const{name:t}=e;if(166===t.kind)return t.right;break}case 213:case 226:{const t=e;switch(dh(t)){case 1:case 4:case 5:case 3:return vh(t.left);case 7:case 8:case 9:return t.arguments[1];default:return}}case 346:return Dc(e);case 340:return Nc(e);case 277:{const{expression:t}=e;return YC(t)?t:void 0}case 212:const t=e;if(hh(t))return t.argumentExpression}return e.name}function Oc(e){if(void 0!==e)return Mc(e)||(lA(e)||uA(e)||SA(e)?Fc(e):void 0)}function Fc(e){if(e.parent){if(WI(e.parent)||$N(e.parent))return e.parent.name;if(gA(e.parent)&&e===e.parent.right){if(YC(e.parent.left))return e.parent.left;if(Bx(e.parent.left))return vh(e.parent.left)}else if($A(e.parent)&&YC(e.parent.name))return e.parent.name}}function Rc(e){if(Xv(e))return M(e.modifiers,mN)}function Lc(e){if(Kv(e,98303))return M(e.modifiers,lu)}function jc(e,t){if(e.name){if(YC(e.name)){const n=e.name.escapedText;return pl(e.parent,t).filter((e=>ND(e)&&YC(e.name)&&e.name.escapedText===n))}{const n=e.parent.parameters.indexOf(e);Tn.assert(n>-1,"Parameters should always be in their parents' parameter list");const r=pl(e.parent,t).filter(ND);if(n<r.length)return[r[n]]}}return _}function zc(e){return jc(e,!1)}function Uc(e){return jc(e,!0)}function Bc(e,t){const n=e.name.escapedText;return pl(e.parent,t).filter((e=>PD(e)&&e.typeParameters.some((e=>e.name.escapedText===n))))}function qc(e){return Bc(e,!1)}function Vc(e){return Bc(e,!0)}function Kc(e){return!!hl(e,ND)}function Jc(e){return hl(e,mD)}function Wc(e){return gl(e,RD)}function Hc(e){return hl(e,gD)}function Gc(e){return hl(e,vD)}function Qc(e){return hl(e,vD,!0)}function Yc(e){return hl(e,bD)}function Zc(e){return hl(e,bD,!0)}function Xc(e){return hl(e,xD)}function $c(e){return hl(e,xD,!0)}function el(e){return hl(e,SD)}function tl(e){return hl(e,SD,!0)}function nl(e){return hl(e,TD,!0)}function rl(e){return hl(e,kD)}function il(e){return hl(e,kD,!0)}function ol(e){return hl(e,CD)}function sl(e){return hl(e,ID)}function al(e){return hl(e,AD)}function cl(e){return hl(e,PD)}function ll(e){return hl(e,LD)}function ul(e){const t=hl(e,DD);if(t&&t.typeExpression&&t.typeExpression.type)return t}function dl(e){let t=hl(e,DD);return!t&&fN(e)&&(t=w(zc(e),(e=>!!e.typeExpression))),t&&t.typeExpression&&t.typeExpression.type}function _l(e){const t=al(e);if(t&&t.typeExpression)return t.typeExpression.type;const n=ul(e);if(n&&n.typeExpression){const e=n.typeExpression.type;if(PN(e)){const t=w(e.members,wN);return t&&t.type}if(AN(e)||lD(e))return e.type}}function pl(e,t){var n;if(!Vh(e))return _;let r=null==(n=e.jsDoc)?void 0:n.jsDocCache;if(void 0===r||t){const n=Kh(e,t);Tn.assert(n.length<2||n[0]!==n[1]),r=U(n,(e=>_D(e)?e.tags:e)),t||(e.jsDoc??(e.jsDoc=[]),e.jsDoc.jsDocCache=r)}return r}function fl(e){return pl(e,!1)}function ml(e){return pl(e,!0)}function hl(e,t,n){return w(pl(e,n),t)}function gl(e,t){return fl(e).filter(t)}function yl(e,t){return fl(e).filter((e=>e.kind===t))}function vl(e){return"string"==typeof e?e:null==e?void 0:e.map((e=>321===e.kind?e.text:function(e){const t=324===e.kind?"link":325===e.kind?"linkcode":"linkplain",n=e.name?qp(e.name):"",r=e.name&&(""===e.text||e.text.startsWith("://"))?"":" ";return`{@${t} ${n}${r}${e.text}}`}(e))).join("")}function bl(e){if(fD(e)){if(wD(e.parent)){const t=$h(e.parent);if(t&&m(t.tags))return U(t.tags,(e=>PD(e)?e.typeParameters:void 0))}return _}if(Rh(e))return Tn.assert(320===e.parent.kind),U(e.parent.tags,(e=>PD(e)?e.typeParameters:void 0));if(e.typeParameters)return e.typeParameters;if(LP(e)&&e.typeParameters)return e.typeParameters;if(Um(e)){const t=Dv(e);if(t.length)return t;const n=dl(e);if(n&&AN(n)&&n.typeParameters)return n.typeParameters}return _}function xl(e){return e.constraint?e.constraint:PD(e.parent)&&e===e.parent.typeParameters[0]?e.parent.constraint:void 0}function Sl(e){return 80===e.kind||81===e.kind}function Tl(e){return 178===e.kind||177===e.kind}function wl(e){return nA(e)&&!!(64&e.flags)}function kl(e){return rA(e)&&!!(64&e.flags)}function El(e){return iA(e)&&!!(64&e.flags)}function Cl(e){const t=e.kind;return!!(64&e.flags)&&(211===t||212===t||213===t||235===t)}function Nl(e){return Cl(e)&&!CA(e)&&!!e.questionDotToken}function Al(e){return Nl(e.parent)&&e.parent.expression===e}function Il(e){return!Cl(e.parent)||Nl(e.parent)||e!==e.parent.expression}function Dl(e){return 226===e.kind&&61===e.operatorToken.kind}function Pl(e){return NN(e)&&YC(e.typeName)&&"const"===e.typeName.escapedText&&!e.typeArguments}function Ml(e){return gP(e,8)}function Ol(e){return CA(e)&&!!(64&e.flags)}function Fl(e){return 252===e.kind||251===e.kind}function Rl(e){return 280===e.kind||279===e.kind}function Ll(e){return 348===e.kind||341===e.kind}function jl(e){return zl(e.kind)}function zl(e){return e>=166}function Ul(e){return e>=0&&e<=165}function Bl(e){return Ul(e.kind)}function ql(e){return je(e,"pos")&&je(e,"end")}function Vl(e){return 9<=e&&e<=15}function Kl(e){return Vl(e.kind)}function Jl(e){switch(e.kind){case 210:case 209:case 14:case 218:case 231:return!0}return!1}function Wl(e){return 15<=e&&e<=18}function Hl(e){return Wl(e.kind)}function Gl(e){const t=e.kind;return 17===t||18===t}function Ql(e){return xI(e)||kI(e)}function Yl(e){switch(e.kind){case 276:return e.isTypeOnly||e.parent.parent.isTypeOnly;case 274:return e.parent.isTypeOnly;case 273:case 271:return e.isTypeOnly}return!1}function Zl(e){switch(e.kind){case 281:return e.isTypeOnly||e.parent.parent.isTypeOnly;case 278:return e.isTypeOnly&&!!e.moduleSpecifier&&!e.exportClause;case 280:return e.parent.isTypeOnly}return!1}function Xl(e){return Yl(e)||Zl(e)}function $l(e){return 11===e.kind||Wl(e.kind)}function eu(e){return MC(e)||YC(e)}function tu(e){var t;return YC(e)&&void 0!==(null==(t=e.emitNode)?void 0:t.autoGenerate)}function nu(e){var t;return ZC(e)&&void 0!==(null==(t=e.emitNode)?void 0:t.autoGenerate)}function ru(e){const t=e.emitNode.autoGenerate.flags;return!!(32&t)&&!!(16&t)&&!!(8&t)}function iu(e){return(gN(e)||ku(e))&&ZC(e.name)}function ou(e){return nA(e)&&ZC(e.name)}function su(e){switch(e){case 128:case 129:case 134:case 87:case 138:case 90:case 95:case 103:case 125:case 123:case 124:case 148:case 126:case 147:case 164:return!0}return!1}function au(e){return!!(31&ub(e))}function cu(e){return au(e)||126===e||164===e||129===e}function lu(e){return su(e.kind)}function uu(e){const t=e.kind;return 166===t||80===t}function du(e){const t=e.kind;return 80===t||81===t||11===t||9===t||167===t}function _u(e){const t=e.kind;return 80===t||206===t||207===t}function pu(e){return!!e&&yu(e.kind)}function fu(e){return!!e&&(yu(e.kind)||bN(e))}function mu(e){return e&&gu(e.kind)}function hu(e){return 112===e.kind||97===e.kind}function gu(e){switch(e){case 262:case 174:case 176:case 177:case 178:case 218:case 219:return!0;default:return!1}}function yu(e){switch(e){case 173:case 179:case 323:case 180:case 181:case 184:case 317:case 185:return!0;default:return gu(e)}}function vu(e){return YI(e)||aI(e)||OA(e)&&pu(e.parent)}function bu(e){const t=e.kind;return 176===t||172===t||174===t||177===t||178===t||181===t||175===t||240===t}function xu(e){return e&&(263===e.kind||231===e.kind)}function Su(e){return e&&(177===e.kind||178===e.kind)}function Tu(e){return gN(e)&&Yv(e)}function wu(e){return Um(e)&&wk(e)?!(mh(e)&&Ab(e.expression)||gh(e,!0)):e.parent&&xu(e.parent)&&gN(e)&&!Yv(e)}function ku(e){switch(e.kind){case 174:case 177:case 178:return!0;default:return!1}}function Eu(e){switch(e.kind){case 174:case 177:case 178:case 172:return!0;default:return!1}}function Cu(e){return lu(e)||mN(e)}function Nu(e){const t=e.kind;return 180===t||179===t||171===t||173===t||181===t||177===t||178===t}function Au(e){return Nu(e)||bu(e)}function Iu(e){const t=e.kind;return 303===t||304===t||305===t||174===t||177===t||178===t}function Du(e){return Ux(e.kind)}function Pu(e){switch(e.kind){case 184:case 185:return!0}return!1}function Mu(e){if(e){const t=e.kind;return 207===t||206===t}return!1}function Ou(e){const t=e.kind;return 209===t||210===t}function Fu(e){const t=e.kind;return 208===t||232===t}function Ru(e){switch(e.kind){case 260:case 169:case 208:return!0}return!1}function Lu(e){return $A(e)||fN(e)||Uu(e)||qu(e)}function ju(e){return zu(e)||Bu(e)}function zu(e){switch(e.kind){case 206:case 210:return!0}return!1}function Uu(e){switch(e.kind){case 208:case 303:case 304:case 305:return!0}return!1}function Bu(e){switch(e.kind){case 207:case 209:return!0}return!1}function qu(e){switch(e.kind){case 208:case 232:case 230:case 209:case 210:case 80:case 211:case 212:return!0}return bb(e,!0)}function Vu(e){const t=e.kind;return 211===t||166===t||205===t}function Ku(e){const t=e.kind;return 211===t||166===t}function Ju(e){return Wu(e)||Xw(e)}function Wu(e){switch(e.kind){case 286:case 285:case 213:case 214:case 215:case 170:return!0;default:return!1}}function Hu(e){return 213===e.kind||214===e.kind}function Gu(e){const t=e.kind;return 228===t||15===t}function Qu(e){return Yu(Ml(e).kind)}function Yu(e){switch(e){case 211:case 212:case 214:case 213:case 284:case 285:case 288:case 215:case 209:case 217:case 210:case 231:case 218:case 80:case 81:case 14:case 9:case 10:case 11:case 15:case 228:case 97:case 106:case 110:case 112:case 108:case 235:case 233:case 236:case 102:case 282:return!0;default:return!1}}function Zu(e){return Xu(Ml(e).kind)}function Xu(e){switch(e){case 224:case 225:case 220:case 221:case 222:case 223:case 216:return!0;default:return Yu(e)}}function $u(e){switch(e.kind){case 225:return!0;case 224:return 46===e.operator||47===e.operator;default:return!1}}function ed(e){switch(e.kind){case 106:case 112:case 97:case 224:return!0;default:return Kl(e)}}function td(e){return function(e){switch(e){case 227:case 229:case 219:case 226:case 230:case 234:case 232:case 355:case 354:case 238:return!0;default:return Xu(e)}}(Ml(e).kind)}function nd(e){const t=e.kind;return 216===t||234===t}function rd(e){return CI(e)||IA(e)}function id(e,t){switch(e.kind){case 248:case 249:case 250:case 246:case 247:return!0;case 256:return t&&id(e.statement,t)}return!1}function od(e){return SI(e)||TI(e)}function sd(e){return $(e,od)}function ad(e){return!(Mp(e)||SI(e)||Kv(e,32)||_p(e))}function cd(e){return Mp(e)||SI(e)||Kv(e,32)}function ld(e){return 249===e.kind||250===e.kind}function ud(e){return OA(e)||td(e)}function dd(e){return OA(e)}function _d(e){return eI(e)||td(e)}function pd(e){const t=e.kind;return 268===t||267===t||80===t}function fd(e){const t=e.kind;return 268===t||267===t}function md(e){const t=e.kind;return 80===t||267===t}function hd(e){const t=e.kind;return 275===t||274===t}function gd(e){return 267===e.kind||266===e.kind}function yd(e){switch(e.kind){case 219:case 226:case 208:case 213:case 179:case 263:case 231:case 175:case 176:case 185:case 180:case 212:case 266:case 306:case 277:case 278:case 281:case 262:case 218:case 184:case 177:case 80:case 273:case 271:case 276:case 181:case 264:case 338:case 340:case 317:case 341:case 348:case 323:case 346:case 322:case 291:case 292:case 293:case 200:case 174:case 173:case 267:case 202:case 280:case 270:case 274:case 214:case 15:case 9:case 210:case 169:case 211:case 303:case 172:case 171:case 178:case 304:case 307:case 305:case 11:case 265:case 187:case 168:case 260:return!0;default:return!1}}function vd(e){switch(e.kind){case 219:case 241:case 179:case 269:case 299:case 175:case 194:case 176:case 185:case 180:case 248:case 249:case 250:case 262:case 218:case 184:case 177:case 181:case 338:case 340:case 317:case 323:case 346:case 200:case 174:case 173:case 267:case 178:case 307:case 265:return!0;default:return!1}}function bd(e){return 262===e||282===e||263===e||264===e||265===e||266===e||267===e||272===e||271===e||278===e||277===e||270===e}function xd(e){return 252===e||251===e||259===e||246===e||244===e||242===e||249===e||250===e||248===e||245===e||256===e||253===e||255===e||257===e||258===e||243===e||247===e||254===e||353===e}function Sd(e){return 168===e.kind?e.parent&&345!==e.parent.kind||Um(e):219===(t=e.kind)||208===t||263===t||231===t||175===t||176===t||266===t||306===t||281===t||262===t||218===t||177===t||273===t||271===t||276===t||264===t||291===t||174===t||173===t||267===t||270===t||274===t||280===t||169===t||303===t||172===t||171===t||178===t||304===t||265===t||168===t||260===t||346===t||338===t||348===t||202===t;var t}function Td(e){return bd(e.kind)}function wd(e){return xd(e.kind)}function kd(e){const t=e.kind;return xd(t)||bd(t)||function(e){if(241!==e.kind)return!1;if(void 0!==e.parent&&(258===e.parent.kind||299===e.parent.kind))return!1;return!Wf(e)}(e)}function Ed(e){const t=e.kind;return xd(t)||bd(t)||241===t}function Cd(e){const t=e.kind;return 283===t||166===t||80===t}function Nd(e){const t=e.kind;return 110===t||80===t||211===t||295===t}function Ad(e){const t=e.kind;return 284===t||294===t||285===t||12===t||288===t}function Id(e){const t=e.kind;return 291===t||293===t}function Dd(e){const t=e.kind;return 11===t||294===t}function Pd(e){const t=e.kind;return 286===t||285===t}function Md(e){const t=e.kind;return 296===t||297===t}function Od(e){return e.kind>=309&&e.kind<=351}function Fd(e){return 320===e.kind||319===e.kind||321===e.kind||Gd(e)||Rd(e)||pD(e)||fD(e)}function Rd(e){return e.kind>=327&&e.kind<=351}function Ld(e){return 178===e.kind}function jd(e){return 177===e.kind}function zd(e){if(!Vh(e))return!1;const{jsDoc:t}=e;return!!t&&t.length>0}function Ud(e){return!!e.type}function Bd(e){return!!e.initializer}function qd(e){switch(e.kind){case 260:case 169:case 208:case 172:case 303:case 306:return!0;default:return!1}}function Vd(e){return 291===e.kind||293===e.kind||Iu(e)}function Kd(e){return 183===e.kind||233===e.kind}var Jd=1073741823;function Wd(e){let t=Jd;for(const n of e){if(!n.length)continue;let e=0;for(;e<n.length&&e<t&&na(n.charCodeAt(e));e++);if(e<t&&(t=e),0===t)return 0}return t===Jd?void 0:t}function Hd(e){return 11===e.kind||15===e.kind}function Gd(e){return 324===e.kind||325===e.kind||326===e.kind}function Qd(e){const t=Ne(e.parameters);return!!t&&Yd(t)}function Yd(e){const t=ND(e)?e.typeExpression&&e.typeExpression.type:e.type;return void 0!==e.dotDotDotToken||!!t&&318===t.kind}function Zd(e,t){return t.text.substring(e.pos,e.end).includes("@internal")}function Xd(e,t){t??(t=C_(e));const n=Sc(e);if(n&&169===n.kind){const r=n.parent.parameters.indexOf(n),i=r>0?n.parent.parameters[r-1]:void 0,o=t.text,s=i?te(ka(o,da(o,i.end+1,!1,!0)),wa(o,e.pos)):ka(o,da(o,e.pos,!1,!0));return $(s)&&Zd(Ae(s),t)}return!!h(n&&Tf(n,t),(e=>Zd(e,t)))}var $d=[],e_="tslib",t_=160,n_=1e6;function r_(e,t){const n=e.declarations;if(n)for(const r of n)if(r.kind===t)return r}function i_(e,t){return M(e.declarations||_,(e=>e.kind===t))}function o_(e){const t=new Map;if(e)for(const n of e)t.set(n.escapedName,n);return t}function s_(e){return!!(33554432&e.flags)}function a_(e){return!!(1536&e.flags)&&34===e.escapedName.charCodeAt(0)}var c_=function(){var e="";const t=t=>e+=t;return{getText:()=>e,write:t,rawWrite:t,writeKeyword:t,writeOperator:t,writePunctuation:t,writeSpace:t,writeStringLiteral:t,writeLiteral:t,writeParameter:t,writeProperty:t,writeSymbol:(e,n)=>t(e),writeTrailingSemicolon:t,writeComment:t,getTextPos:()=>e.length,getLine:()=>0,getColumn:()=>0,getIndent:()=>0,isAtStartOfLine:()=>!1,hasTrailingComment:()=>!1,hasTrailingWhitespace:()=>!!e.length&&na(e.charCodeAt(e.length-1)),writeLine:()=>e+=" ",increaseIndent:pt,decreaseIndent:pt,clear:()=>e=""}}();function l_(e,t){return e.configFilePath!==t.configFilePath||u_(e,t)}function u_(e,t){return __(e,t,FO)}function d_(e,t){return __(e,t,LO)}function __(e,t,n){return e!==t&&n.some((n=>!Cw(sT(e,n),sT(t,n))))}function p_(e,t){for(;;){const n=t(e);if("quit"===n)return;if(void 0!==n)return n;if(YI(e))return;e=e.parent}}function f_(e,t){const n=e.entries();for(const[r,i]of n){const e=t(i,r);if(e)return e}}function m_(e,t){const n=e.keys();for(const r of n){const e=t(r);if(e)return e}}function h_(e,t){e.forEach(((e,n)=>{t.set(n,e)}))}function g_(e){const t=c_.getText();try{return e(c_),c_.getText()}finally{c_.clear(),c_.writeKeyword(t)}}function y_(e){return e.end-e.pos}function v_(e,t){return e.path===t.path&&!e.prepend==!t.prepend&&!e.circular==!t.circular}function b_(e,t){return e===t||e.resolvedModule===t.resolvedModule||!!e.resolvedModule&&!!t.resolvedModule&&e.resolvedModule.isExternalLibraryImport===t.resolvedModule.isExternalLibraryImport&&e.resolvedModule.extension===t.resolvedModule.extension&&e.resolvedModule.resolvedFileName===t.resolvedModule.resolvedFileName&&e.resolvedModule.originalPath===t.resolvedModule.originalPath&&(n=e.resolvedModule.packageId,r=t.resolvedModule.packageId,n===r||!!n&&!!r&&n.name===r.name&&n.subModuleName===r.subModuleName&&n.version===r.version&&n.peerDependencies===r.peerDependencies)&&e.alternateResult===t.alternateResult;var n,r}function x_(e,t,n,r,i){var o;const s=null==(o=t.getResolvedModule(e,n,r))?void 0:o.alternateResult,a=s&&(2===FS(t.getCompilerOptions())?[ws.There_are_types_at_0_but_this_result_could_not_be_resolved_under_your_current_moduleResolution_setting_Consider_updating_to_node16_nodenext_or_bundler,[s]]:[ws.There_are_types_at_0_but_this_result_could_not_be_resolved_when_respecting_package_json_exports_The_1_library_may_need_to_update_its_package_json_or_typings,[s,s.includes(GL+"@types/")?`@types/${Ij(i)}`:i]]),c=a?gS(void 0,a[0],...a[1]):t.typesPackageExists(i)?gS(void 0,ws.If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_Slash_Slashgithub_com_SlashDefinitelyTyped_SlashDefinitelyTyped_Slashtree_Slashmaster_Slashtypes_Slash_1,i,Ij(i)):t.packageBundlesTypes(i)?gS(void 0,ws.If_the_0_package_actually_exposes_this_module_try_adding_a_new_declaration_d_ts_file_containing_declare_module_1,i,n):gS(void 0,ws.Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare_module_0,n,Ij(i));return c&&(c.repopulateInfo=()=>({moduleReference:n,mode:r,packageName:i===n?void 0:i})),c}function S_({name:e,subModuleName:t}){return t?`${e}/${t}`:e}function T_(e){return`${S_(e)}@${e.version}${e.peerDependencies??""}`}function w_(e,t){return e===t||e.resolvedTypeReferenceDirective===t.resolvedTypeReferenceDirective||!!e.resolvedTypeReferenceDirective&&!!t.resolvedTypeReferenceDirective&&e.resolvedTypeReferenceDirective.resolvedFileName===t.resolvedTypeReferenceDirective.resolvedFileName&&!!e.resolvedTypeReferenceDirective.primary==!!t.resolvedTypeReferenceDirective.primary&&e.resolvedTypeReferenceDirective.originalPath===t.resolvedTypeReferenceDirective.originalPath}function k_(e,t,n,r){Tn.assert(e.length===t.length);for(let i=0;i<e.length;i++){const o=t[i],s=n(e[i]);if(s?!o||!r(s,o):o)return!0}return!1}function E_(e){return function(e){if(!(2097152&e.flags)){(!!(262144&e.flags)||GM(e,E_))&&(e.flags|=1048576),e.flags|=2097152}}(e),!!(1048576&e.flags)}function C_(e){for(;e&&307!==e.kind;)e=e.parent;return e}function N_(e){return C_(e.valueDeclaration||xp(e))}function A_(e,t){return!(!e||1!==e.scriptKind&&2!==e.scriptKind||e.checkJsDirective||void 0!==t)}function I_(e){switch(e.kind){case 241:case 269:case 248:case 249:case 250:return!0}return!1}function D_(e,t){return Tn.assert(e>=0),Zs(t)[e]}function P_(e){const t=C_(e),n=ta(t,e.pos);return`${t.fileName}(${n.line+1},${n.character+1})`}function M_(e,t){Tn.assert(e>=0);const n=Zs(t),r=e,i=t.text;if(r+1===n.length)return i.length-1;{const e=n[r];let t=n[r+1]-1;for(Tn.assert(ia(i.charCodeAt(t)));e<=t&&ia(i.charCodeAt(t));)t--;return t}}function O_(e,t,n){return!(n&&n(t)||e.identifiers.has(t))}function F_(e){return void 0===e||e.pos===e.end&&e.pos>=0&&1!==e.kind}function R_(e){return!F_(e)}function L_(e,t){return pN(e)?t===e.expression:bN(e)?t===e.modifiers:hN(e)?t===e.initializer:gN(e)?t===e.questionToken&&Tu(e):WI(e)?t===e.modifiers||t===e.questionToken||t===e.exclamationToken||j_(e.modifiers,t,Cu):HI(e)?t===e.equalsToken||t===e.modifiers||t===e.questionToken||t===e.exclamationToken||j_(e.modifiers,t,Cu):vN(e)?t===e.exclamationToken:xN(e)?t===e.typeParameters||t===e.type||j_(e.typeParameters,t,pN):SN(e)?t===e.typeParameters||j_(e.typeParameters,t,pN):TN(e)?t===e.typeParameters||t===e.type||j_(e.typeParameters,t,pN):!!lI(e)&&(t===e.modifiers||j_(e.modifiers,t,Cu))}function j_(e,t,n){return!(!e||at(t)||!n(t))&&A(e,t)}function z_(e,t,n){if(void 0===t||0===t.length)return e;let r=0;for(;r<e.length&&n(e[r]);++r);return e.splice(r,0,...t),e}function U_(e,t,n){if(void 0===t)return e;let r=0;for(;r<e.length&&n(e[r]);++r);return e.splice(r,0,t),e}function B_(e){return yf(e)||!!(2097152&rp(e))}function q_(e,t){return z_(e,t,yf)}function V_(e,t){return z_(e,t,B_)}function K_(e,t){return U_(e,t,yf)}function J_(e,t){return U_(e,t,B_)}function W_(e,t,n){if(47===e.charCodeAt(t+1)&&t+2<n&&47===e.charCodeAt(t+2)){const r=e.substring(t,n);return!!(kf.test(r)||Nf.test(r)||Af.test(r)||Ef.test(r)||Cf.test(r)||If.test(r))}return!1}function H_(e,t){return 42===e.charCodeAt(t+1)&&33===e.charCodeAt(t+2)}function G_(e,t){const n=new Map(t.map((t=>[`${ta(e,t.range.end).line}`,t]))),r=new Map;return{getUnusedExpectations:function(){return Ke(n.entries()).filter((([e,t])=>0===t.type&&!r.get(e))).map((([e,t])=>t))},markUsed:function(e){if(!n.has(`${e}`))return!1;return r.set(`${e}`,!0),!0}}}function Q_(e,t,n){if(F_(e))return e.pos;if(Od(e)||12===e.kind)return da((t??C_(e)).text,e.pos,!1,!0);if(n&&zd(e))return Q_(e.jsDoc[0],t);if(352===e.kind){t??(t=C_(e));const r=we(VD(e,t));if(r)return Q_(r,t,n)}return da((t??C_(e)).text,e.pos,!1,!1,Vm(e))}function Y_(e,t){const n=!F_(e)&&bM(e)?k(e.modifiers,mN):void 0;return n?da((t||C_(e)).text,n.end):Q_(e,t)}function Z_(e,t,n=!1){return $_(e.text,t,n)}function X_(e){return!!(TI(e)&&e.exportClause&&vI(e.exportClause)&&"default"===e.exportClause.name.escapedText)}function $_(e,t,n=!1){if(F_(t))return"";let r=e.substring(n?t.pos:da(e,t.pos),t.end);return function(e){return!!bc(e,XI)}(t)&&(r=r.split(/\r\n|\n|\r/).map((e=>e.replace(/^\s*\*/,"").trimStart())).join("\n")),r}function ep(e,t=!1){return Z_(C_(e),e,t)}function tp(e){return e.pos}function np(e,t){return Oe(e,t,tp,Pt)}function rp(e){const t=e.emitNode;return t&&t.flags||0}function ip(e){const t=e.emitNode;return t&&t.internalFlags||0}var op=St((()=>new Map(Object.entries({Array:new Map(Object.entries({es2015:["find","findIndex","fill","copyWithin","entries","keys","values"],es2016:["includes"],es2019:["flat","flatMap"],es2022:["at"],es2023:["findLastIndex","findLast"]})),Iterator:new Map(Object.entries({es2015:_})),AsyncIterator:new Map(Object.entries({es2015:_})),Atomics:new Map(Object.entries({es2017:_})),SharedArrayBuffer:new Map(Object.entries({es2017:_})),AsyncIterable:new Map(Object.entries({es2018:_})),AsyncIterableIterator:new Map(Object.entries({es2018:_})),AsyncGenerator:new Map(Object.entries({es2018:_})),AsyncGeneratorFunction:new Map(Object.entries({es2018:_})),RegExp:new Map(Object.entries({es2015:["flags","sticky","unicode"],es2018:["dotAll"]})),Reflect:new Map(Object.entries({es2015:["apply","construct","defineProperty","deleteProperty","get","getOwnPropertyDescriptor","getPrototypeOf","has","isExtensible","ownKeys","preventExtensions","set","setPrototypeOf"]})),ArrayConstructor:new Map(Object.entries({es2015:["from","of"],esnext:["fromAsync"]})),ObjectConstructor:new Map(Object.entries({es2015:["assign","getOwnPropertySymbols","keys","is","setPrototypeOf"],es2017:["values","entries","getOwnPropertyDescriptors"],es2019:["fromEntries"],es2022:["hasOwn"]})),NumberConstructor:new Map(Object.entries({es2015:["isFinite","isInteger","isNaN","isSafeInteger","parseFloat","parseInt"]})),Math:new Map(Object.entries({es2015:["clz32","imul","sign","log10","log2","log1p","expm1","cosh","sinh","tanh","acosh","asinh","atanh","hypot","trunc","fround","cbrt"]})),Map:new Map(Object.entries({es2015:["entries","keys","values"]})),Set:new Map(Object.entries({es2015:["entries","keys","values"]})),PromiseConstructor:new Map(Object.entries({es2015:["all","race","reject","resolve"],es2020:["allSettled"],es2021:["any"]})),Symbol:new Map(Object.entries({es2015:["for","keyFor"],es2019:["description"]})),WeakMap:new Map(Object.entries({es2015:["entries","keys","values"]})),WeakSet:new Map(Object.entries({es2015:["entries","keys","values"]})),String:new Map(Object.entries({es2015:["codePointAt","includes","endsWith","normalize","repeat","startsWith","anchor","big","blink","bold","fixed","fontcolor","fontsize","italics","link","small","strike","sub","sup"],es2017:["padStart","padEnd"],es2019:["trimStart","trimEnd","trimLeft","trimRight"],es2020:["matchAll"],es2021:["replaceAll"],es2022:["at"],esnext:["isWellFormed","toWellFormed"]})),StringConstructor:new Map(Object.entries({es2015:["fromCodePoint","raw"]})),DateTimeFormat:new Map(Object.entries({es2017:["formatToParts"]})),Promise:new Map(Object.entries({es2015:_,es2018:["finally"]})),RegExpMatchArray:new Map(Object.entries({es2018:["groups"]})),RegExpExecArray:new Map(Object.entries({es2018:["groups"]})),Intl:new Map(Object.entries({es2018:["PluralRules"]})),NumberFormat:new Map(Object.entries({es2018:["formatToParts"]})),SymbolConstructor:new Map(Object.entries({es2020:["matchAll"]})),DataView:new Map(Object.entries({es2020:["setBigInt64","setBigUint64","getBigInt64","getBigUint64"]})),BigInt:new Map(Object.entries({es2020:_})),RelativeTimeFormat:new Map(Object.entries({es2020:["format","formatToParts","resolvedOptions"]})),Int8Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast"]})),Uint8Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast"]})),Uint8ClampedArray:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast"]})),Int16Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast"]})),Uint16Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast"]})),Int32Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast"]})),Uint32Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast"]})),Float32Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast"]})),Float64Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast"]})),BigInt64Array:new Map(Object.entries({es2020:_,es2022:["at"],es2023:["findLastIndex","findLast"]})),BigUint64Array:new Map(Object.entries({es2020:_,es2022:["at"],es2023:["findLastIndex","findLast"]})),Error:new Map(Object.entries({es2022:["cause"]}))})))),sp=(e=>(e[e.None=0]="None",e[e.NeverAsciiEscape=1]="NeverAsciiEscape",e[e.JsxAttributeEscape=2]="JsxAttributeEscape",e[e.TerminateUnterminatedLiterals=4]="TerminateUnterminatedLiterals",e[e.AllowNumericSeparator=8]="AllowNumericSeparator",e))(sp||{});function ap(e,t,n){if(t&&function(e,t){if(fy(e)||!e.parent||4&t&&e.isUnterminated)return!1;if(DC(e)){if(26656&e.numericLiteralFlags)return!1;if(512&e.numericLiteralFlags)return!!(8&t)}return!PC(e)}(e,n))return Z_(t,e);switch(e.kind){case 11:{const t=2&n?Vy:1&n||16777216&rp(e)?Ry:jy;return e.singleQuote?"'"+t(e.text,39)+"'":'"'+t(e.text,34)+'"'}case 15:case 16:case 17:case 18:{const t=1&n||16777216&rp(e)?Ry:jy,r=e.rawText??Cy(t(e.text,96));switch(e.kind){case 15:return"`"+r+"`";case 16:return"`"+r+"${";case 17:return"}"+r+"${";case 18:return"}"+r+"`"}break}case 9:case 10:return e.text;case 14:return 4&n&&e.isUnterminated?e.text+(92===e.text.charCodeAt(e.text.length-1)?" /":"/"):e.text}return Tn.fail(`Literal kind '${e.kind}' not accounted for.`)}function cp(e){return lt(e)?`"${Ry(e)}"`:""+e}function lp(e){return Ko(e).replace(/^(\d)/,"_$1").replace(/\W/g,"_")}function up(e){return!!(7&mc(e))||dp(e)}function dp(e){const t=_y(e);return 260===t.kind&&299===t.parent.kind}function _p(e){return sI(e)&&(11===e.name.kind||yp(e))}function pp(e){return sI(e)&&11===e.name.kind}function fp(e){return sI(e)&&MC(e.name)}function mp(e){return sI(e)||YC(e)}function hp(e){return!!(t=e.valueDeclaration)&&267===t.kind&&!t.body;var t}function gp(e){return 307===e.kind||267===e.kind||fu(e)}function yp(e){return!!(2048&e.flags)}function vp(e){return _p(e)&&bp(e)}function bp(e){switch(e.parent.kind){case 307:return tO(e.parent);case 268:return _p(e.parent.parent)&&YI(e.parent.parent.parent)&&!tO(e.parent.parent.parent)}return!1}function xp(e){var t;return null==(t=e.declarations)?void 0:t.find((e=>!(vp(e)||sI(e)&&yp(e))))}function Sp(e,t){return tO(e)||(1===(n=OS(t))||100===n||199===n)&&!!e.commonJsModuleIndicator;var n}function Tp(e,t){switch(e.scriptKind){case 1:case 3:case 2:case 4:break;default:return!1}return!e.isDeclarationFile&&(!!eT(t,"alwaysStrict")||(!!dP(e.statements)||!(!tO(e)&&!LS(t))))}function wp(e){return!!(33554432&e.flags)||Kv(e,128)}function kp(e,t){switch(e.kind){case 307:case 269:case 299:case 267:case 248:case 249:case 250:case 176:case 174:case 177:case 178:case 262:case 218:case 219:case 172:case 175:return!0;case 241:return!fu(t)}return!1}function Ep(e){switch(Tn.type(e),e.kind){case 338:case 346:case 323:return!0;default:return Cp(e)}}function Cp(e){switch(Tn.type(e),e.kind){case 179:case 180:case 173:case 181:case 184:case 185:case 317:case 263:case 231:case 264:case 265:case 345:case 262:case 174:case 176:case 177:case 178:case 218:case 219:return!0;default:return!1}}function Np(e){switch(e.kind){case 272:case 271:return!0;default:return!1}}function Ap(e){return Np(e)||Hm(e)}function Ip(e){return Np(e)||Ym(e)}function Dp(e){switch(e.kind){case 272:case 271:case 243:case 263:case 262:case 267:case 265:case 264:case 266:return!0;default:return!1}}function Pp(e){return Mp(e)||sI(e)||GN(e)||mf(e)}function Mp(e){return Np(e)||TI(e)}function Op(e){return bc(e.parent,(e=>!!(1&Xj(e))))}function Fp(e){return bc(e.parent,(e=>kp(e,e.parent)))}function Rp(e,t){let n=Fp(e);for(;n;)t(n),n=Fp(n)}function Lp(e){return e&&0!==y_(e)?ep(e):"(Missing)"}function jp(e){return e.declaration?Lp(e.declaration.parameters[0].name):void 0}function zp(e){return 167===e.kind&&!Hg(e.expression)}function Up(e){var t;switch(e.kind){case 80:case 81:return(null==(t=e.emitNode)?void 0:t.autoGenerate)?void 0:e.escapedText;case 11:case 9:case 15:return Tc(e.text);case 167:return Hg(e.expression)?Tc(e.expression.text):void 0;case 295:return vk(e);default:return Tn.assertNever(e)}}function Bp(e){return Tn.checkDefined(Up(e))}function qp(e){switch(e.kind){case 110:return"this";case 81:case 80:return 0===y_(e)?kc(e):ep(e);case 166:return qp(e.left)+"."+qp(e.right);case 211:return YC(e.name)||ZC(e.name)?qp(e.expression)+"."+qp(e.name):Tn.assertNever(e.name);case 311:return qp(e.left)+"#"+qp(e.right);case 295:return qp(e.namespace)+":"+qp(e.name);default:return Tn.assertNever(e)}}function Vp(e,t,...n){return Jp(C_(e),e,t,...n)}function Kp(e,t,n,...r){const i=da(e.text,t.pos);return pS(e,i,t.end-i,n,...r)}function Jp(e,t,n,...r){const i=nf(e,t);return pS(e,i.start,i.length,n,...r)}function Wp(e,t,n,r){const i=nf(e,t);return Qp(e,i.start,i.length,n,r)}function Hp(e,t,n,r){const i=da(e.text,t.pos);return Qp(e,i,t.end-i,n,r)}function Gp(e,t,n){Tn.assertGreaterThanOrEqual(t,0),Tn.assertGreaterThanOrEqual(n,0),Tn.assertLessThanOrEqual(t,e.length),Tn.assertLessThanOrEqual(t+n,e.length)}function Qp(e,t,n,r,i){return Gp(e.text,t,n),{file:e,start:t,length:n,code:r.code,category:r.category,messageText:r.next?r:r.messageText,relatedInformation:i,canonicalHead:r.canonicalHead}}function Yp(e,t,n){return{file:e,start:0,length:0,code:t.code,category:t.category,messageText:t.next?t:t.messageText,relatedInformation:n}}function Zp(e){return"string"==typeof e.messageText?{code:e.code,category:e.category,messageText:e.messageText,next:e.next}:e.messageText}function Xp(e,t,n){return{file:e,start:t.pos,length:t.end-t.pos,code:n.code,category:n.category,messageText:n.message}}function $p(e,...t){return{code:e.code,messageText:fS(e,...t)}}function ef(e,t){const n=Ia(e.languageVersion,!0,e.languageVariant,e.text,void 0,t);n.scan();return tc(n.getTokenStart(),n.getTokenEnd())}function tf(e,t){const n=Ia(e.languageVersion,!0,e.languageVariant,e.text,void 0,t);return n.scan(),n.getToken()}function nf(e,t){let n=t;switch(t.kind){case 307:{const t=da(e.text,0,!1);return t===e.text.length?ec(0,0):ef(e,t)}case 260:case 208:case 263:case 231:case 264:case 267:case 266:case 306:case 262:case 218:case 174:case 177:case 178:case 265:case 172:case 171:case 274:n=t.name;break;case 219:return function(e,t){const n=da(e.text,t.pos);if(t.body&&241===t.body.kind){const{line:r}=ta(e,t.body.pos),{line:i}=ta(e,t.body.end);if(r<i)return ec(n,M_(r,e)-n+1)}return tc(n,t.end)}(e,t);case 296:case 297:return tc(da(e.text,t.pos),t.statements.length>0?t.statements[0].pos:t.end);case 253:case 229:return ef(e,da(e.text,t.pos));case 238:return ef(e,da(e.text,t.expression.end));case 350:return ef(e,da(e.text,t.tagName.pos));case 176:{const n=t,r=da(e.text,n.pos),i=Ia(e.languageVersion,!0,e.languageVariant,e.text,void 0,r);let o=i.scan();for(;137!==o&&1!==o;)o=i.scan();return tc(r,i.getTokenEnd())}}if(void 0===n)return ef(e,t.pos);Tn.assert(!_D(n));const r=F_(n),i=r||OC(t)?n.pos:da(e.text,n.pos);return r?(Tn.assert(i===n.pos,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809"),Tn.assert(i===n.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809")):(Tn.assert(i>=n.pos,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809"),Tn.assert(i<=n.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809")),tc(i,n.end)}function rf(e){return 307===e.kind&&!of(e)}function of(e){return void 0!==(e.externalModuleIndicator||e.commonJsModuleIndicator)}function sf(e){return 6===e.scriptKind}function af(e){return!!(4096&pc(e))}function cf(e){return!(!(8&pc(e))||cc(e,e.parent))}function lf(e){return 6==(7&mc(e))}function uf(e){return 4==(7&mc(e))}function df(e){return 2==(7&mc(e))}function _f(e){const t=7&mc(e);return 2===t||4===t||6===t}function pf(e){return 1==(7&mc(e))}function ff(e){return 213===e.kind&&108===e.expression.kind}function mf(e){return 213===e.kind&&102===e.expression.kind}function hf(e){return NA(e)&&102===e.keywordToken&&"meta"===e.name.escapedText}function gf(e){return GN(e)&&HN(e.argument)&&MC(e.argument.literal)}function yf(e){return 244===e.kind&&11===e.expression.kind}function vf(e){return!!(2097152&rp(e))}function bf(e){return vf(e)&&tI(e)}function xf(e){return YC(e.name)&&!e.initializer}function Sf(e){return vf(e)&&FA(e)&&T(e.declarationList.declarations,xf)}function Tf(e,t){return 12!==e.kind?wa(t.text,e.pos):void 0}function wf(e,t){return M(169===e.kind||168===e.kind||218===e.kind||219===e.kind||217===e.kind||260===e.kind||281===e.kind?te(ka(t,e.pos),wa(t,e.pos)):wa(t,e.pos),(n=>n.end<=e.end&&42===t.charCodeAt(n.pos+1)&&42===t.charCodeAt(n.pos+2)&&47!==t.charCodeAt(n.pos+3)))}var kf=/^(\/\/\/\s*<reference\s+path\s*=\s*)(('[^']*')|("[^"]*")).*?\/>/,Ef=/^(\/\/\/\s*<reference\s+types\s*=\s*)(('[^']*')|("[^"]*")).*?\/>/,Cf=/^(\/\/\/\s*<reference\s+lib\s*=\s*)(('[^']*')|("[^"]*")).*?\/>/,Nf=/^(\/\/\/\s*<amd-dependency\s+path\s*=\s*)(('[^']*')|("[^"]*")).*?\/>/,Af=/^\/\/\/\s*<amd-module\s+.*?\/>/,If=/^(\/\/\/\s*<reference\s+no-default-lib\s*=\s*)(('[^']*')|("[^"]*"))\s*\/>/;function Df(e){if(182<=e.kind&&e.kind<=205)return!0;switch(e.kind){case 133:case 159:case 150:case 163:case 154:case 136:case 155:case 151:case 157:case 106:case 146:return!0;case 116:return 222!==e.parent.kind;case 233:return Pf(e);case 168:return 200===e.parent.kind||195===e.parent.kind;case 80:(166===e.parent.kind&&e.parent.right===e||211===e.parent.kind&&e.parent.name===e)&&(e=e.parent),Tn.assert(80===e.kind||166===e.kind||211===e.kind,"'node' was expected to be a qualified name, identifier or property access in 'isPartOfTypeNode'.");case 166:case 211:case 110:{const{parent:t}=e;if(186===t.kind)return!1;if(205===t.kind)return!t.isTypeOf;if(182<=t.kind&&t.kind<=205)return!0;switch(t.kind){case 233:return Pf(t);case 168:case 345:return e===t.constraint;case 172:case 171:case 169:case 260:case 262:case 218:case 219:case 176:case 174:case 173:case 177:case 178:case 179:case 180:case 181:case 216:return e===t.type;case 213:case 214:case 215:return A(t.typeArguments,e)}}}return!1}function Pf(e){return RD(e.parent)||mD(e.parent)||KI(e.parent)&&!Tb(e)}function Mf(e,t){for(;e;){if(e.kind===t)return!0;e=e.parent}return!1}function Of(e,t){return function e(n){switch(n.kind){case 253:return t(n);case 269:case 241:case 245:case 246:case 247:case 248:case 249:case 250:case 254:case 255:case 296:case 297:case 256:case 258:case 299:return GM(n,e)}}(e)}function Ff(e,t){return function e(n){switch(n.kind){case 229:t(n);const r=n.expression;return void(r&&e(r));case 266:case 264:case 267:case 265:return;default:if(pu(n)){if(n.name&&167===n.name.kind)return void e(n.name.expression)}else Df(n)||GM(n,e)}}(e)}function Rf(e){return e&&188===e.kind?e.elementType:e&&183===e.kind?Ie(e.typeArguments):void 0}function Lf(e){switch(e.kind){case 264:case 263:case 231:case 187:return e.members;case 210:return e.properties}}function jf(e){if(e)switch(e.kind){case 208:case 306:case 169:case 303:case 172:case 171:case 304:case 260:return!0}return!1}function zf(e){return jf(e)||Su(e)}function Uf(e){return 261===e.parent.kind&&243===e.parent.parent.kind}function Bf(e){return!!Um(e)&&(tA(e.parent)&&gA(e.parent.parent)&&2===dh(e.parent.parent)||qf(e.parent))}function qf(e){return!!Um(e)&&(gA(e)&&1===dh(e))}function Vf(e){return($A(e)?df(e)&&YC(e.name)&&Uf(e):gN(e)?Zv(e)&&Wv(e):hN(e)&&Zv(e))||qf(e)}function Kf(e){switch(e.kind){case 174:case 173:case 176:case 177:case 178:case 262:case 218:return!0}return!1}function Jf(e,t){for(;;){if(t&&t(e),256!==e.statement.kind)return e.statement;e=e.statement}}function Wf(e){return e&&241===e.kind&&pu(e.parent)}function Hf(e){return e&&174===e.kind&&210===e.parent.kind}function Gf(e){return!(174!==e.kind&&177!==e.kind&&178!==e.kind||210!==e.parent.kind&&231!==e.parent.kind)}function Qf(e){return e&&1===e.kind}function Yf(e){return e&&0===e.kind}function Zf(e,t,n,r){return h(null==e?void 0:e.properties,(e=>{if(!WI(e))return;const i=Up(e.name);return t===i||r&&r===i?n(e):void 0}))}function Xf(e,t,n){return Zf(e,t,(e=>eA(e.initializer)?w(e.initializer.elements,(e=>MC(e)&&e.text===n)):void 0))}function $f(e){if(e&&e.statements.length){return dt(e.statements[0].expression,tA)}}function em(e,t,n){return tm(e,t,(e=>eA(e.initializer)?w(e.initializer.elements,(e=>MC(e)&&e.text===n)):void 0))}function tm(e,t,n){return Zf($f(e),t,n)}function nm(e){return bc(e.parent,pu)}function rm(e){return bc(e.parent,mu)}function im(e){return bc(e.parent,xu)}function om(e){return bc(e.parent,(e=>xu(e)||pu(e)?"quit":bN(e)))}function sm(e){return bc(e.parent,fu)}function am(e){const t=bc(e.parent,(e=>xu(e)?"quit":mN(e)));return t&&xu(t.parent)?im(t.parent):im(t??e)}function cm(e,t,n){for(Tn.assert(307!==e.kind);;){if(!(e=e.parent))return Tn.fail();switch(e.kind){case 167:if(n&&xu(e.parent.parent))return e;e=e.parent.parent;break;case 170:169===e.parent.kind&&bu(e.parent.parent)?e=e.parent.parent:bu(e.parent)&&(e=e.parent);break;case 219:if(!t)continue;case 262:case 218:case 267:case 175:case 172:case 171:case 174:case 173:case 176:case 177:case 178:case 179:case 180:case 181:case 266:case 307:return e}}}function lm(e){switch(e.kind){case 219:case 262:case 218:case 172:return!0;case 241:switch(e.parent.kind){case 176:case 174:case 177:case 178:return!0;default:return!1}default:return!1}}function um(e){YC(e)&&(nI(e.parent)||tI(e.parent))&&e.parent.name===e&&(e=e.parent);return YI(cm(e,!0,!1))}function dm(e){const t=cm(e,!1,!1);if(t)switch(t.kind){case 176:case 262:case 218:return t}}function _m(e,t){for(;;){if(!(e=e.parent))return;switch(e.kind){case 167:e=e.parent;break;case 262:case 218:case 219:if(!t)continue;case 172:case 171:case 174:case 173:case 176:case 177:case 178:case 175:return e;case 170:169===e.parent.kind&&bu(e.parent.parent)?e=e.parent.parent:bu(e.parent)&&(e=e.parent)}}}function pm(e){if(218===e.kind||219===e.kind){let t=e,n=e.parent;for(;217===n.kind;)t=n,n=n.parent;if(213===n.kind&&n.expression===t)return n}}function fm(e){return 108===e.kind||mm(e)}function mm(e){const t=e.kind;return(211===t||212===t)&&108===e.expression.kind}function hm(e){const t=e.kind;return(211===t||212===t)&&110===e.expression.kind}function gm(e){var t;return!!e&&$A(e)&&110===(null==(t=e.initializer)?void 0:t.kind)}function ym(e){return!!e&&(HI(e)||WI(e))&&gA(e.parent.parent)&&64===e.parent.parent.operatorToken.kind&&110===e.parent.parent.right.kind}function vm(e){switch(e.kind){case 183:return e.typeName;case 233:return wb(e.expression)?e.expression:void 0;case 80:case 166:return e}}function bm(e){switch(e.kind){case 215:return e.tag;case 286:case 285:return e.tagName;case 226:return e.right;default:return e.expression}}function xm(e,t,n,r){if(e&&Pc(t)&&ZC(t.name))return!1;switch(t.kind){case 263:return!0;case 231:return!e;case 172:return void 0!==n&&(e?nI(n):xu(n)&&!Gv(t)&&!Qv(t));case 177:case 178:case 174:return void 0!==t.body&&void 0!==n&&(e?nI(n):xu(n));case 169:return!!e&&(void 0!==n&&void 0!==n.body&&(176===n.kind||174===n.kind||178===n.kind)&&xv(n)!==t&&void 0!==r&&263===r.kind)}return!1}function Sm(e,t,n,r){return Xv(t)&&xm(e,t,n,r)}function Tm(e,t,n,r){return Sm(e,t,n,r)||wm(e,t,n)}function wm(e,t,n){switch(t.kind){case 263:return $(t.members,(r=>Tm(e,r,t,n)));case 231:return!e&&$(t.members,(r=>Tm(e,r,t,n)));case 174:case 178:case 176:return $(t.parameters,(r=>Sm(e,r,t,n)));default:return!1}}function km(e,t){if(Sm(e,t))return!0;const n=yv(t);return!!n&&wm(e,n,t)}function Em(e,t,n){let r;if(Su(t)){const{firstAccessor:e,secondAccessor:i,setAccessor:o}=Cv(n.members,t),s=Xv(e)?e:i&&Xv(i)?i:void 0;if(!s||t!==s)return!1;r=null==o?void 0:o.parameters}else vN(t)&&(r=t.parameters);if(Sm(e,t,n))return!0;if(r)for(const i of r)if(!Sv(i)&&Sm(e,i,t,n))return!0;return!1}function Cm(e){if(e.textSourceNode){switch(e.textSourceNode.kind){case 11:return Cm(e.textSourceNode);case 15:return""===e.text}return!1}return""===e.text}function Nm(e){const{parent:t}=e;return(286===t.kind||285===t.kind||287===t.kind)&&t.tagName===e}function Am(e){switch(e.kind){case 108:case 106:case 112:case 97:case 14:case 209:case 210:case 211:case 212:case 213:case 214:case 215:case 234:case 216:case 238:case 235:case 217:case 218:case 231:case 219:case 222:case 220:case 221:case 224:case 225:case 226:case 227:case 230:case 228:case 232:case 284:case 285:case 288:case 229:case 223:case 236:return!0;case 233:return!KI(e.parent)&&!mD(e.parent);case 166:for(;166===e.parent.kind;)e=e.parent;return 186===e.parent.kind||Gd(e.parent)||$I(e.parent)||eD(e.parent)||Nm(e);case 311:for(;eD(e.parent);)e=e.parent;return 186===e.parent.kind||Gd(e.parent)||$I(e.parent)||eD(e.parent)||Nm(e);case 81:return gA(e.parent)&&e.parent.left===e&&103===e.parent.operatorToken.kind;case 80:if(186===e.parent.kind||Gd(e.parent)||$I(e.parent)||eD(e.parent)||Nm(e))return!0;case 9:case 10:case 11:case 15:case 110:return Im(e);default:return!1}}function Im(e){const{parent:t}=e;switch(t.kind){case 260:case 169:case 172:case 171:case 306:case 303:case 208:return t.initializer===e;case 244:case 245:case 246:case 247:case 253:case 254:case 255:case 296:case 257:return t.expression===e;case 248:const n=t;return n.initializer===e&&261!==n.initializer.kind||n.condition===e||n.incrementor===e;case 249:case 250:const r=t;return r.initializer===e&&261!==r.initializer.kind||r.expression===e;case 216:case 234:case 239:case 167:case 238:return e===t.expression;case 170:case 294:case 293:case 305:return!0;case 233:return t.expression===e&&!Df(t);case 304:return t.objectAssignmentInitializer===e;default:return Am(t)}}function Dm(e){for(;166===e.kind||80===e.kind;)e=e.parent;return 186===e.kind}function Pm(e){return vI(e)&&!!e.parent.moduleSpecifier}function Mm(e){return 271===e.kind&&283===e.moduleReference.kind}function Om(e){return Tn.assert(Mm(e)),e.moduleReference.expression}function Fm(e){return Hm(e)&&Kx(e.initializer).arguments[0]}function Rm(e){return 271===e.kind&&283!==e.moduleReference.kind}function Lm(e){return 307===(null==e?void 0:e.kind)}function jm(e){return Um(e)}function zm(e){return!Um(e)}function Um(e){return!!e&&!!(524288&e.flags)}function Bm(e){return!!e&&!!(134217728&e.flags)}function qm(e){return!sf(e)}function Vm(e){return!!e&&!!(16777216&e.flags)}function Km(e){return NN(e)&&YC(e.typeName)&&"Object"===e.typeName.escapedText&&e.typeArguments&&2===e.typeArguments.length&&(154===e.typeArguments[0].kind||150===e.typeArguments[0].kind)}function Jm(e,t){if(213!==e.kind)return!1;const{expression:n,arguments:r}=e;if(80!==n.kind||"require"!==n.escapedText)return!1;if(1!==r.length)return!1;const i=r[0];return!t||Hd(i)}function Wm(e){return Qm(e,!1)}function Hm(e){return Qm(e,!0)}function Gm(e){return $N(e)&&Hm(e.parent.parent)}function Qm(e,t){return $A(e)&&!!e.initializer&&Jm(t?Kx(e.initializer):e.initializer,!0)}function Ym(e){return FA(e)&&e.declarationList.declarations.length>0&&T(e.declarationList.declarations,(e=>Wm(e)))}function Zm(e){return 39===e||34===e}function Xm(e,t){return 34===Z_(t,e).charCodeAt(0)}function $m(e){return gA(e)||Bx(e)||YC(e)||iA(e)}function eh(e){return Um(e)&&e.initializer&&gA(e.initializer)&&(57===e.initializer.operatorToken.kind||61===e.initializer.operatorToken.kind)&&e.name&&wb(e.name)&&sh(e.name,e.initializer.left)?e.initializer.right:e.initializer}function th(e){const t=eh(e);return t&&rh(t,Ab(e.name))}function nh(e){if(e&&e.parent&&gA(e.parent)&&64===e.parent.operatorToken.kind){const t=Ab(e.parent.left);return rh(e.parent.right,t)||function(e,t,n){const r=gA(t)&&(57===t.operatorToken.kind||61===t.operatorToken.kind)&&rh(t.right,n);if(r&&sh(e,t.left))return r}(e.parent.left,e.parent.right,t)}if(e&&iA(e)&&_h(e)){const t=function(e,t){return h(e.properties,(e=>WI(e)&&YC(e.name)&&"value"===e.name.escapedText&&e.initializer&&rh(e.initializer,t)))}(e.arguments[2],"prototype"===e.arguments[1].text);if(t)return t}}function rh(e,t){if(iA(e)){const t=fg(e.expression);return 218===t.kind||219===t.kind?e:void 0}return 218===e.kind||231===e.kind||219===e.kind||tA(e)&&(0===e.properties.length||t)?e:void 0}function ih(e){const t=$A(e.parent)?e.parent.name:gA(e.parent)&&64===e.parent.operatorToken.kind?e.parent.left:void 0;return t&&rh(e.right,Ab(t))&&wb(t)&&sh(t,e.left)}function oh(e){if(gA(e.parent)){const t=57!==e.parent.operatorToken.kind&&61!==e.parent.operatorToken.kind||!gA(e.parent.parent)?e.parent:e.parent.parent;if(64===t.operatorToken.kind&&YC(t.left))return t.left}else if($A(e.parent))return e.parent.name}function sh(e,t){return Xg(e)&&Xg(t)?$g(e)===$g(t):Sl(e)&&ph(t)&&(110===t.expression.kind||YC(t.expression)&&("window"===t.expression.escapedText||"self"===t.expression.escapedText||"global"===t.expression.escapedText))?sh(e,yh(t)):!(!ph(e)||!ph(t))&&(bh(e)===bh(t)&&sh(e.expression,t.expression))}function ah(e){for(;bb(e,!0);)e=e.right;return e}function ch(e){return YC(e)&&"exports"===e.escapedText}function lh(e){return YC(e)&&"module"===e.escapedText}function uh(e){return(nA(e)||fh(e))&&lh(e.expression)&&"exports"===bh(e)}function dh(e){const t=function(e){if(iA(e)){if(!_h(e))return 0;const t=e.arguments[0];return ch(t)||uh(t)?8:mh(t)&&"prototype"===bh(t)?9:7}if(64!==e.operatorToken.kind||!Bx(e.left)||(t=ah(e),pA(t)&&DC(t.expression)&&"0"===t.expression.text))return 0;var t;if(gh(e.left.expression,!0)&&"prototype"===bh(e.left)&&tA(Sh(e)))return 6;return xh(e.left)}(e);return 5===t||Um(e)?t:0}function _h(e){return 3===m(e.arguments)&&nA(e.expression)&&YC(e.expression.expression)&&"Object"===kc(e.expression.expression)&&"defineProperty"===kc(e.expression.name)&&Hg(e.arguments[1])&&gh(e.arguments[0],!0)}function ph(e){return nA(e)||fh(e)}function fh(e){return rA(e)&&Hg(e.argumentExpression)}function mh(e,t){return nA(e)&&(!t&&110===e.expression.kind||YC(e.name)&&gh(e.expression,!0))||hh(e,t)}function hh(e,t){return fh(e)&&(!t&&110===e.expression.kind||wb(e.expression)||mh(e.expression,!0))}function gh(e,t){return wb(e)||mh(e,t)}function yh(e){return nA(e)?e.name:e.argumentExpression}function vh(e){if(nA(e))return e.name;const t=fg(e.argumentExpression);return DC(t)||Hd(t)?t:e}function bh(e){const t=vh(e);if(t){if(YC(t))return t.escapedText;if(Hd(t)||DC(t))return Tc(t.text)}}function xh(e){if(110===e.expression.kind)return 4;if(uh(e))return 2;if(gh(e.expression,!0)){if(Ab(e.expression))return 3;let t=e;for(;!YC(t.expression);)t=t.expression;const n=t.expression;if(("exports"===n.escapedText||"module"===n.escapedText&&"exports"===bh(t))&&mh(e))return 1;if(gh(e,!0)||rA(e)&&Yg(e))return 5}return 0}function Sh(e){for(;gA(e.right);)e=e.right;return e.right}function Th(e){return gA(e)&&3===dh(e)}function wh(e){return Um(e)&&e.parent&&244===e.parent.kind&&(!rA(e)||fh(e))&&!!ul(e.parent)}function kh(e,t){const{valueDeclaration:n}=e;(!n||(!(33554432&t.flags)||Um(t)||33554432&n.flags)&&$m(n)&&!$m(t)||n.kind!==t.kind&&mp(n))&&(e.valueDeclaration=t)}function Eh(e){if(!e||!e.valueDeclaration)return!1;const t=e.valueDeclaration;return 262===t.kind||$A(t)&&t.initializer&&pu(t.initializer)}function Ch(e){var t,n;switch(e.kind){case 260:case 208:return null==(t=bc(e.initializer,(e=>Jm(e,!0))))?void 0:t.arguments[0];case 272:case 278:case 351:return dt(e.moduleSpecifier,Hd);case 271:return dt(null==(n=dt(e.moduleReference,AI))?void 0:n.expression,Hd);case 273:case 280:return dt(e.parent.moduleSpecifier,Hd);case 274:case 281:return dt(e.parent.parent.moduleSpecifier,Hd);case 276:return dt(e.parent.parent.parent.moduleSpecifier,Hd);case 205:return gf(e)?e.argument.literal:void 0;default:Tn.assertNever(e)}}function Nh(e){return Ah(e)||Tn.failBadSyntaxKind(e.parent)}function Ah(e){switch(e.parent.kind){case 272:case 278:case 351:return e.parent;case 283:return e.parent.parent;case 213:return mf(e.parent)||Jm(e.parent,!1)?e.parent:void 0;case 201:return Tn.assert(MC(e)),dt(e.parent.parent,GN);default:return}}function Ih(e){switch(e.kind){case 272:case 278:case 351:return e.moduleSpecifier;case 271:return 283===e.moduleReference.kind?e.moduleReference.expression:void 0;case 205:return gf(e)?e.argument.literal:void 0;case 213:return e.arguments[0];case 267:return 11===e.name.kind?e.name:void 0;default:return Tn.assertNever(e)}}function Dh(e){switch(e.kind){case 272:return e.importClause&&dt(e.importClause.namedBindings,yI);case 271:return e;case 278:return e.exportClause&&dt(e.exportClause,vI);default:return Tn.assertNever(e)}}function Ph(e){return!(272!==e.kind&&351!==e.kind||!e.importClause||!e.importClause.name)}function Mh(e,t){if(e.name){const n=t(e);if(n)return n}if(e.namedBindings){const n=yI(e.namedBindings)?t(e.namedBindings):h(e.namedBindings.elements,t);if(n)return n}}function Oh(e){if(e)switch(e.kind){case 169:case 174:case 173:case 304:case 303:case 172:case 171:return void 0!==e.questionToken}return!1}function Fh(e){const t=lD(e)?we(e.parameters):void 0,n=dt(t&&t.name,YC);return!!n&&"new"===n.escapedText}function Rh(e){return 346===e.kind||338===e.kind||340===e.kind}function Lh(e){return Rh(e)||iI(e)}function jh(e){return LA(e)&&gA(e.expression)&&0!==dh(e.expression)&&gA(e.expression.right)&&(57===e.expression.right.operatorToken.kind||61===e.expression.right.operatorToken.kind)?e.expression.right.right:void 0}function zh(e){switch(e.kind){case 243:const t=Uh(e);return t&&t.initializer;case 172:case 303:return e.initializer}}function Uh(e){return FA(e)?we(e.declarationList.declarations):void 0}function Bh(e){return sI(e)&&e.body&&267===e.body.kind?e.body:void 0}function qh(e){if(e.kind>=243&&e.kind<=259)return!0;switch(e.kind){case 80:case 110:case 108:case 166:case 236:case 212:case 211:case 208:case 218:case 219:case 174:case 177:case 178:return!0;default:return!1}}function Vh(e){switch(e.kind){case 219:case 226:case 241:case 252:case 179:case 296:case 263:case 231:case 175:case 176:case 185:case 180:case 251:case 259:case 246:case 212:case 242:case 1:case 266:case 306:case 277:case 278:case 281:case 244:case 249:case 250:case 248:case 262:case 218:case 184:case 177:case 80:case 245:case 272:case 271:case 181:case 264:case 317:case 323:case 256:case 174:case 173:case 267:case 202:case 270:case 210:case 169:case 217:case 211:case 303:case 172:case 171:case 253:case 240:case 178:case 304:case 305:case 255:case 257:case 258:case 265:case 168:case 260:case 243:case 247:case 254:return!0;default:return!1}}function Kh(e,t){let n;jf(e)&&Bd(e)&&zd(e.initializer)&&(n=me(n,Jh(e,e.initializer.jsDoc)));let r=e;for(;r&&r.parent;){if(zd(r)&&(n=me(n,Jh(e,r.jsDoc))),169===r.kind){n=me(n,(t?Uc:zc)(r));break}if(168===r.kind){n=me(n,(t?Vc:qc)(r));break}r=Wh(r)}return n||_}function Jh(e,t){const n=Ae(t);return U(t,(t=>{if(t===n){const n=M(t.tags,(t=>function(e,t){return!((DD(t)||LD(t))&&t.parent&&_D(t.parent)&&cA(t.parent.parent)&&t.parent.parent!==e)}(e,t)));return t.tags===n?[t]:n}return M(t.tags,wD)}))}function Wh(e){const t=e.parent;return 303===t.kind||277===t.kind||172===t.kind||244===t.kind&&211===e.kind||253===t.kind||Bh(t)||bb(e)?t:t.parent&&(Uh(t.parent)===e||bb(t))?t.parent:t.parent&&t.parent.parent&&(Uh(t.parent.parent)||zh(t.parent.parent)===e||jh(t.parent.parent))?t.parent.parent:void 0}function Hh(e){if(e.symbol)return e.symbol;if(!YC(e.name))return;const t=e.name.escapedText,n=Yh(e);if(!n)return;const r=w(n.parameters,(e=>80===e.name.kind&&e.name.escapedText===t));return r&&r.symbol}function Gh(e){if(_D(e.parent)&&e.parent.tags){const t=w(e.parent.tags,Rh);if(t)return t}return Yh(e)}function Qh(e){return gl(e,wD)}function Yh(e){const t=Zh(e);if(t)return hN(t)&&t.type&&pu(t.type)?t.type:pu(t)?t:void 0}function Zh(e){const t=Xh(e);if(t)return jh(t)||function(e){return LA(e)&&gA(e.expression)&&64===e.expression.operatorToken.kind?ah(e.expression):void 0}(t)||zh(t)||Uh(t)||Bh(t)||t}function Xh(e){const t=$h(e);if(!t)return;const n=t.parent;return n&&n.jsDoc&&t===Ne(n.jsDoc)?n:void 0}function $h(e){return bc(e.parent,_D)}function eg(e){const t=e.name.escapedText,{typeParameters:n}=e.parent.parent.parent;return n&&w(n,(e=>e.name.escapedText===t))}function tg(e){return!!e.typeArguments}var ng=(e=>(e[e.None=0]="None",e[e.Definite=1]="Definite",e[e.Compound=2]="Compound",e))(ng||{});function rg(e){let t=e.parent;for(;;){switch(t.kind){case 226:const n=t;return gb(n.operatorToken.kind)&&n.left===e?n:void 0;case 224:case 225:const r=t,i=r.operator;return 46===i||47===i?r:void 0;case 249:case 250:const o=t;return o.initializer===e?o:void 0;case 217:case 209:case 230:case 235:e=t;break;case 305:e=t.parent;break;case 304:if(t.name!==e)return;e=t.parent;break;case 303:if(t.name===e)return;e=t.parent;break;default:return}t=e.parent}}function ig(e){const t=rg(e);if(!t)return 0;switch(t.kind){case 226:const e=t.operatorToken.kind;return 64===e||pb(e)?1:2;case 224:case 225:return 2;case 249:case 250:return 1}}function og(e){return!!rg(e)}function sg(e){const t=rg(e);return!!t&&bb(t,!0)&&function(e){const t=fg(e.right);return 226===t.kind&&WP(t.operatorToken.kind)}(t)}function ag(e){switch(e.kind){case 241:case 243:case 254:case 245:case 255:case 269:case 296:case 297:case 256:case 248:case 249:case 250:case 246:case 247:case 258:case 299:return!0}return!1}function cg(e){return lA(e)||uA(e)||ku(e)||tI(e)||xN(e)}function lg(e,t){for(;e&&e.kind===t;)e=e.parent;return e}function ug(e){return lg(e,196)}function dg(e){return lg(e,217)}function _g(e){let t;for(;e&&196===e.kind;)t=e,e=e.parent;return[t,e]}function pg(e){for(;qN(e);)e=e.type;return e}function fg(e,t){return gP(e,t?17:1)}function mg(e){return(211===e.kind||212===e.kind)&&((e=dg(e.parent))&&220===e.kind)}function hg(e,t){for(;e;){if(e===t)return!0;e=e.parent}return!1}function gg(e){return!YI(e)&&!Mu(e)&&Sd(e.parent)&&e.parent.name===e}function yg(e){const t=e.parent;switch(e.kind){case 11:case 15:case 9:if(_N(t))return t.parent;case 80:if(Sd(t))return t.name===e?t:void 0;if(dN(t)){const e=t.parent;return ND(e)&&e.name===t?e:void 0}{const n=t.parent;return gA(n)&&0!==dh(n)&&(n.left.symbol||n.symbol)&&Oc(n)===e?n:void 0}case 81:return Sd(t)&&t.name===e?t:void 0;default:return}}function vg(e){return Hg(e)&&167===e.parent.kind&&Sd(e.parent.parent)}function bg(e){const t=e.parent;switch(t.kind){case 172:case 171:case 174:case 173:case 177:case 178:case 306:case 303:case 211:return t.name===e;case 166:return t.right===e;case 208:case 276:return t.propertyName===e;case 281:case 291:case 285:case 286:case 287:return!0}return!1}function xg(e){return!!(271===e.kind||270===e.kind||273===e.kind&&e.name||274===e.kind||280===e.kind||276===e.kind||281===e.kind||277===e.kind&&wg(e))||Um(e)&&(gA(e)&&2===dh(e)&&wg(e)||nA(e)&&gA(e.parent)&&e.parent.left===e&&64===e.parent.operatorToken.kind&&Tg(e.parent.right))}function Sg(e){switch(e.parent.kind){case 273:case 276:case 274:case 281:case 277:case 271:case 280:return e.parent;case 166:do{e=e.parent}while(166===e.parent.kind);return Sg(e)}}function Tg(e){return wb(e)||SA(e)}function wg(e){return Tg(kg(e))}function kg(e){return SI(e)?e.expression:e.right}function Eg(e){return 304===e.kind?e.name:303===e.kind?e.initializer:e.parent.right}function Cg(e){const t=Ng(e);if(t&&Um(e)){const t=Jc(e);if(t)return t.class}return t}function Ng(e){const t=Pg(e.heritageClauses,96);return t&&t.types.length>0?t.types[0]:void 0}function Ag(e){if(Um(e))return Wc(e).map((e=>e.class));{const t=Pg(e.heritageClauses,119);return null==t?void 0:t.types}}function Ig(e){return rI(e)?Dg(e)||_:xu(e)&&te(hn(Cg(e)),Ag(e))||_}function Dg(e){const t=Pg(e.heritageClauses,96);return t?t.types:void 0}function Pg(e,t){if(e)for(const n of e)if(n.token===t)return n}function Mg(e,t){for(;e;){if(e.kind===t)return e;e=e.parent}}function Og(e){return 83<=e&&e<=165}function Fg(e){return 19<=e&&e<=79}function Rg(e){return Og(e)||Fg(e)}function Lg(e){return 128<=e&&e<=165}function jg(e){return Og(e)&&!Lg(e)}function zg(e){return 119<=e&&e<=127}function Ug(e){const t=Ks(e);return void 0!==t&&jg(t)}function Bg(e){const t=Ks(e);return void 0!==t&&Og(t)}function qg(e){const t=Ec(e);return!!t&&!Lg(t)}function Vg(e){return 2<=e&&e<=7}var Kg=(e=>(e[e.Normal=0]="Normal",e[e.Generator=1]="Generator",e[e.Async=2]="Async",e[e.Invalid=4]="Invalid",e[e.AsyncGenerator=3]="AsyncGenerator",e))(Kg||{});function Jg(e){if(!e)return 4;let t=0;switch(e.kind){case 262:case 218:case 174:e.asteriskToken&&(t|=1);case 219:Kv(e,1024)&&(t|=2)}return e.body||(t|=4),t}function Wg(e){switch(e.kind){case 262:case 218:case 219:case 174:return void 0!==e.body&&void 0===e.asteriskToken&&Kv(e,1024)}return!1}function Hg(e){return Hd(e)||DC(e)}function Gg(e){return mA(e)&&(40===e.operator||41===e.operator)&&DC(e.operand)}function Qg(e){const t=Oc(e);return!!t&&Yg(t)}function Yg(e){if(167!==e.kind&&212!==e.kind)return!1;const t=rA(e)?fg(e.argumentExpression):e.expression;return!Hg(t)&&!Gg(t)}function Zg(e){switch(e.kind){case 80:case 81:return e.escapedText;case 11:case 15:case 9:return Tc(e.text);case 167:const t=e.expression;return Hg(t)?Tc(t.text):Gg(t)?41===t.operator?Vs(t.operator)+t.operand.text:t.operand.text:void 0;case 295:return vk(e);default:return Tn.assertNever(e)}}function Xg(e){switch(e.kind){case 80:case 11:case 15:case 9:return!0;default:return!1}}function $g(e){return Sl(e)?kc(e):BI(e)?bk(e):e.text}function ey(e){return Sl(e)?e.escapedText:BI(e)?vk(e):Tc(e.text)}function ty(e){return`__@${Qz(e)}@${e.escapedName}`}function ny(e,t){return`__#${Qz(e)}@${t}`}function ry(e){return cn(e.escapedName,"__@")}function iy(e){return cn(e.escapedName,"__#")}function oy(e){return 80===e.kind&&"Symbol"===e.escapedText}function sy(e){return YC(e)?"__proto__"===kc(e):MC(e)&&"__proto__"===e.text}function ay(e,t){switch((e=gP(e)).kind){case 231:if(LB(e))return!1;break;case 218:if(e.name)return!1;break;case 219:break;default:return!1}return"function"!=typeof t||t(e)}function cy(e){switch(e.kind){case 303:return!sy(e.name);case 304:return!!e.objectAssignmentInitializer;case 260:return YC(e.name)&&!!e.initializer;case 169:case 208:return YC(e.name)&&!!e.initializer&&!e.dotDotDotToken;case 172:return!!e.initializer;case 226:switch(e.operatorToken.kind){case 64:case 77:case 76:case 78:return YC(e.left)}break;case 277:return!0}return!1}function ly(e,t){if(!cy(e))return!1;switch(e.kind){case 303:case 260:case 169:case 208:case 172:return ay(e.initializer,t);case 304:return ay(e.objectAssignmentInitializer,t);case 226:return ay(e.right,t);case 277:return ay(e.expression,t)}}function uy(e){return"push"===e.escapedText||"unshift"===e.escapedText}function dy(e){return 169===_y(e).kind}function _y(e){for(;208===e.kind;)e=e.parent.parent;return e}function py(e){const t=e.kind;return 176===t||218===t||262===t||219===t||174===t||177===t||178===t||267===t||307===t}function fy(e){return dw(e.pos)||dw(e.end)}function my(e){return Sc(e,YI)||e}var hy=(e=>(e[e.Left=0]="Left",e[e.Right=1]="Right",e))(hy||{});function gy(e){const t=by(e),n=214===e.kind&&void 0!==e.arguments;return yy(e.kind,t,n)}function yy(e,t,n){switch(e){case 214:return n?0:1;case 224:case 221:case 222:case 220:case 223:case 227:case 229:return 1;case 226:switch(t){case 43:case 64:case 65:case 66:case 68:case 67:case 69:case 70:case 71:case 72:case 73:case 74:case 79:case 75:case 76:case 77:case 78:return 1}}return 0}function vy(e){const t=by(e),n=214===e.kind&&void 0!==e.arguments;return Sy(e.kind,t,n)}function by(e){return 226===e.kind?e.operatorToken.kind:224===e.kind||225===e.kind?e.operator:e.kind}var xy=(e=>(e[e.Comma=0]="Comma",e[e.Spread=1]="Spread",e[e.Yield=2]="Yield",e[e.Assignment=3]="Assignment",e[e.Conditional=4]="Conditional",e[e.Coalesce=4]="Coalesce",e[e.LogicalOR=5]="LogicalOR",e[e.LogicalAND=6]="LogicalAND",e[e.BitwiseOR=7]="BitwiseOR",e[e.BitwiseXOR=8]="BitwiseXOR",e[e.BitwiseAND=9]="BitwiseAND",e[e.Equality=10]="Equality",e[e.Relational=11]="Relational",e[e.Shift=12]="Shift",e[e.Additive=13]="Additive",e[e.Multiplicative=14]="Multiplicative",e[e.Exponentiation=15]="Exponentiation",e[e.Unary=16]="Unary",e[e.Update=17]="Update",e[e.LeftHandSide=18]="LeftHandSide",e[e.Member=19]="Member",e[e.Primary=20]="Primary",e[e.Highest=20]="Highest",e[e.Lowest=0]="Lowest",e[e.Invalid=-1]="Invalid",e))(xy||{});function Sy(e,t,n){switch(e){case 355:return 0;case 230:return 1;case 229:return 2;case 227:return 4;case 226:switch(t){case 28:return 0;case 64:case 65:case 66:case 68:case 67:case 69:case 70:case 71:case 72:case 73:case 74:case 79:case 75:case 76:case 77:case 78:return 3;default:return Ty(t)}case 216:case 235:case 224:case 221:case 222:case 220:case 223:return 16;case 225:return 17;case 213:return 18;case 214:return n?19:18;case 215:case 211:case 212:case 236:return 19;case 234:case 238:return 11;case 110:case 108:case 80:case 81:case 106:case 112:case 97:case 9:case 10:case 11:case 209:case 210:case 218:case 219:case 231:case 14:case 15:case 228:case 217:case 232:case 284:case 285:case 288:return 20;default:return-1}}function Ty(e){switch(e){case 61:return 4;case 57:return 5;case 56:return 6;case 52:return 7;case 53:return 8;case 51:return 9;case 35:case 36:case 37:case 38:return 10;case 30:case 32:case 33:case 34:case 104:case 103:case 130:case 152:return 11;case 48:case 49:case 50:return 12;case 40:case 41:return 13;case 42:case 44:case 45:return 14;case 43:return 15}return-1}function wy(e){return M(e,(e=>{switch(e.kind){case 294:return!!e.expression;case 12:return!e.containsOnlyTriviaWhiteSpaces;default:return!0}}))}function ky(){let e=[];const t=[],n=new Map;let r=!1;return{add:function(i){let o;i.file?(o=n.get(i.file.fileName),o||(o=[],n.set(i.file.fileName,o),se(t,i.file.fileName,Lt))):(r&&(r=!1,e=e.slice()),o=e);se(o,i,xS,wS)},lookup:function(t){let r;r=t.file?n.get(t.file.fileName):e;if(!r)return;const i=Oe(r,t,gt,xS);if(i>=0)return r[i];if(~i>0&&wS(t,r[~i-1]))return r[~i-1];return},getGlobalDiagnostics:function(){return r=!0,e},getDiagnostics:function(r){if(r)return n.get(r)||[];const i=B(t,(e=>n.get(e)));if(!e.length)return i;return i.unshift(...e),i}}}var Ey=/\$\{/g;function Cy(e){return e.replace(Ey,"\\${")}function Ny(e){return!!(2048&(e.templateFlags||0))}function Ay(e){return e&&!!(RC(e)?Ny(e):Ny(e.head)||$(e.templateSpans,(e=>Ny(e.literal))))}var Iy=/[\\"\u0000-\u001f\t\v\f\b\r\n\u2028\u2029\u0085]/g,Dy=/[\\'\u0000-\u001f\t\v\f\b\r\n\u2028\u2029\u0085]/g,Py=/\r\n|[\\`\u0000-\u001f\t\v\f\b\r\u2028\u2029\u0085]/g,My=new Map(Object.entries({"\t":"\\t","\v":"\\v","\f":"\\f","\b":"\\b","\r":"\\r","\n":"\\n","\\":"\\\\",'"':'\\"',"'":"\\'","`":"\\`","\u2028":"\\u2028","\u2029":"\\u2029","\x85":"\\u0085","\r\n":"\\r\\n"}));function Oy(e){return"\\u"+("0000"+e.toString(16).toUpperCase()).slice(-4)}function Fy(e,t,n){if(0===e.charCodeAt(0)){const r=n.charCodeAt(t+e.length);return r>=48&&r<=57?"\\x00":"\\0"}return My.get(e)||Oy(e.charCodeAt(0))}function Ry(e,t){const n=96===t?Py:39===t?Dy:Iy;return e.replace(n,Fy)}var Ly=/[^\u0000-\u007F]/g;function jy(e,t){return e=Ry(e,t),Ly.test(e)?e.replace(Ly,(e=>Oy(e.charCodeAt(0)))):e}var zy=/["\u0000-\u001f\u2028\u2029\u0085]/g,Uy=/['\u0000-\u001f\u2028\u2029\u0085]/g,By=new Map(Object.entries({'"':""","'":"'"}));function qy(e){return 0===e.charCodeAt(0)?"�":By.get(e)||"&#x"+e.charCodeAt(0).toString(16).toUpperCase()+";"}function Vy(e,t){const n=39===t?Uy:zy;return e.replace(n,qy)}function Ky(e){const t=e.length;return t>=2&&e.charCodeAt(0)===e.charCodeAt(t-1)&&(39===(n=e.charCodeAt(0))||34===n||96===n)?e.substring(1,t-1):e;var n}function Jy(e){const t=e.charCodeAt(0);return t>=97&&t<=122||e.includes("-")}var Wy=[""," "];function Hy(e){const t=Wy[1];for(let n=Wy.length;n<=e;n++)Wy.push(Wy[n-1]+t);return Wy[e]}function Gy(){return Wy[1].length}function Qy(e){var t,n,r,i,o,s=!1;function a(e){const n=Gs(e);n.length>1?(i=i+n.length-1,o=t.length-e.length+Ae(n),r=o-t.length==0):r=!1}function c(e){e&&e.length&&(r&&(e=Hy(n)+e,r=!1),t+=e,a(e))}function l(e){e&&(s=!1),c(e)}function u(){t="",n=0,r=!0,i=0,o=0,s=!1}return u(),{write:l,rawWrite:function(e){void 0!==e&&(t+=e,a(e),s=!1)},writeLiteral:function(e){e&&e.length&&l(e)},writeLine:function(n){r&&!n||(i++,o=(t+=e).length,r=!0,s=!1)},increaseIndent:()=>{n++},decreaseIndent:()=>{n--},getIndent:()=>n,getTextPos:()=>t.length,getLine:()=>i,getColumn:()=>r?n*Gy():t.length-o,getText:()=>t,isAtStartOfLine:()=>r,hasTrailingComment:()=>s,hasTrailingWhitespace:()=>!!t.length&&na(t.charCodeAt(t.length-1)),clear:u,writeKeyword:l,writeOperator:l,writeParameter:l,writeProperty:l,writePunctuation:l,writeSpace:l,writeStringLiteral:l,writeSymbol:(e,t)=>l(e),writeTrailingSemicolon:l,writeComment:function(e){e&&(s=!0),c(e)}}}function Yy(e){let t=!1;function n(){t&&(e.writeTrailingSemicolon(";"),t=!1)}return{...e,writeTrailingSemicolon(){t=!0},writeLiteral(t){n(),e.writeLiteral(t)},writeStringLiteral(t){n(),e.writeStringLiteral(t)},writeSymbol(t,r){n(),e.writeSymbol(t,r)},writePunctuation(t){n(),e.writePunctuation(t)},writeKeyword(t){n(),e.writeKeyword(t)},writeOperator(t){n(),e.writeOperator(t)},writeParameter(t){n(),e.writeParameter(t)},writeSpace(t){n(),e.writeSpace(t)},writeProperty(t){n(),e.writeProperty(t)},writeComment(t){n(),e.writeComment(t)},writeLine(){n(),e.writeLine()},increaseIndent(){n(),e.increaseIndent()},decreaseIndent(){n(),e.decreaseIndent()}}}function Zy(e){return!!e.useCaseSensitiveFileNames&&e.useCaseSensitiveFileNames()}function Xy(e){return rn(Zy(e))}function $y(e,t,n){return t.moduleName||nv(e,t.fileName,n&&n.fileName)}function ev(e,t){return e.getCanonicalFileName(es(t,e.getCurrentDirectory()))}function tv(e,t,n){const r=t.getExternalModuleFileFromDeclaration(n);if(!r||r.isDeclarationFile)return;const i=Ih(n);return!i||!Hd(i)||Oo(i.text)||ev(e,r.path).includes(ev(e,os(e.getCommonSourceDirectory())))?$y(e,r):void 0}function nv(e,t,n){const r=t=>e.getCanonicalFileName(t),i=rs(n?Vo(n):e.getCommonSourceDirectory(),e.getCurrentDirectory(),r),o=ow(bs(i,es(t,e.getCurrentDirectory()),i,r,!1));return n?ss(o):o}function rv(e,t,n){const r=t.getCompilerOptions();let i;return i=r.outDir?ow(dv(e,t,r.outDir)):ow(e),i+n}function iv(e,t){return ov(e,t.getCompilerOptions(),t)}function ov(e,t,n){const r=t.declarationDir||t.outDir,i=r?_v(e,r,n.getCurrentDirectory(),n.getCommonSourceDirectory(),(e=>n.getCanonicalFileName(e))):e,o=sv(i);return ow(i)+o}function sv(e){return jo(e,[".mjs",".mts"])?".d.mts":jo(e,[".cjs",".cts"])?".d.cts":jo(e,[".json"])?".d.json.ts":".d.ts"}function av(e){return jo(e,[".d.mts",".mjs",".mts"])?[".mts",".mjs"]:jo(e,[".d.cts",".cjs",".cts"])?[".cts",".cjs"]:jo(e,[".d.json.ts"])?[".json"]:[".tsx",".ts",".jsx",".js"]}function cv(e,t){var n;if(e.paths)return e.baseUrl??Tn.checkDefined(e.pathsBasePath||(null==(n=t.getCurrentDirectory)?void 0:n.call(t)),"Encountered 'paths' without a 'baseUrl', config file, or host 'getCurrentDirectory'.")}function lv(e,t,n){const r=e.getCompilerOptions();if(r.outFile){const t=OS(r),i=r.emitDeclarationOnly||2===t||4===t;return M(e.getSourceFiles(),(t=>(i||!tO(t))&&uv(t,e,n)))}return M(void 0===t?e.getSourceFiles():[t],(t=>uv(t,e,n)))}function uv(e,t,n){const r=t.getCompilerOptions();if(r.noEmitForJsFiles&&jm(e))return!1;if(e.isDeclarationFile)return!1;if(t.isSourceFileFromExternalLibrary(e))return!1;if(n)return!0;if(t.isSourceOfProjectReferenceRedirect(e.fileName))return!1;if(!sf(e))return!0;if(t.getResolvedProjectReferenceToRedirect(e.fileName))return!1;if(r.outFile)return!0;if(!r.outDir)return!1;if(r.rootDir||r.composite&&r.configFilePath){const n=es(iV(r,(()=>[]),t.getCurrentDirectory(),t.getCanonicalFileName),t.getCurrentDirectory()),i=_v(e.fileName,r.outDir,t.getCurrentDirectory(),n,t.getCanonicalFileName);if(0===ps(e.fileName,i,t.getCurrentDirectory(),!t.useCaseSensitiveFileNames()))return!1}return!0}function dv(e,t,n){return _v(e,n,t.getCurrentDirectory(),t.getCommonSourceDirectory(),(e=>t.getCanonicalFileName(e)))}function _v(e,t,n,r,i){let o=es(e,n);return o=0===i(o).indexOf(i(r))?o.substring(r.length):o,Zo(t,o)}function pv(e,t,n,r,i,o,s){e.writeFile(n,r,i,(e=>{t.add(mS(ws.Could_not_write_file_0_Colon_1,n,e))}),o,s)}function fv(e,t,n){if(e.length>qo(e)&&!n(e)){fv(Vo(e),t,n),t(e)}}function mv(e,t,n,r,i,o){try{r(e,t,n)}catch{fv(Vo(ts(e)),i,o),r(e,t,n)}}function hv(e,t){return $s(Zs(e),t)}function gv(e,t){return $s(e,t)}function yv(e){return w(e.members,(e=>xN(e)&&R_(e.body)))}function vv(e){if(e&&e.parameters.length>0){const t=2===e.parameters.length&&Sv(e.parameters[0]);return e.parameters[t?1:0]}}function bv(e){const t=vv(e);return t&&t.type}function xv(e){if(e.parameters.length&&!fD(e)){const t=e.parameters[0];if(Sv(t))return t}}function Sv(e){return Tv(e.name)}function Tv(e){return!!e&&80===e.kind&&Ev(e)}function wv(e){return!!bc(e,(e=>186===e.kind||80!==e.kind&&166!==e.kind&&"quit"))}function kv(e){if(!Tv(e))return!1;for(;dN(e.parent)&&e.parent.left===e;)e=e.parent;return 186===e.parent.kind}function Ev(e){return"this"===e.escapedText}function Cv(e,t){let n,r,i,o;return Qg(t)?(n=t,177===t.kind?i=t:178===t.kind?o=t:Tn.fail("Accessor has wrong kind")):h(e,(e=>{if(Su(e)&&Jv(e)===Jv(t)){Zg(e.name)===Zg(t.name)&&(n?r||(r=e):n=e,177!==e.kind||i||(i=e),178!==e.kind||o||(o=e))}})),{firstAccessor:n,secondAccessor:r,getAccessor:i,setAccessor:o}}function Nv(e){if(!Um(e)&&tI(e))return;if(iI(e))return;const t=e.type;return t||!Um(e)?t:Ll(e)?e.typeExpression&&e.typeExpression.type:dl(e)}function Av(e){return e.type}function Iv(e){return fD(e)?e.type&&e.type.typeExpression&&e.type.typeExpression.type:e.type||(Um(e)?_l(e):void 0)}function Dv(e){return U(fl(e),(e=>function(e){return PD(e)&&!(320===e.parent.kind&&(e.parent.tags.some(Rh)||e.parent.tags.some(wD)))}(e)?e.typeParameters:void 0))}function Pv(e){const t=vv(e);return t&&Nv(t)}function Mv(e,t,n,r){Ov(e,t,n.pos,r)}function Ov(e,t,n,r){r&&r.length&&n!==r[0].pos&&gv(e,n)!==gv(e,r[0].pos)&&t.writeLine()}function Fv(e,t,n,r){n!==r&&gv(e,n)!==gv(e,r)&&t.writeLine()}function Rv(e,t,n,r,i,o,s,a){if(r&&r.length>0){i&&n.writeSpace(" ");let c=!1;for(const i of r)c&&(n.writeSpace(" "),c=!1),a(e,t,n,i.pos,i.end,s),i.hasTrailingNewLine?n.writeLine():c=!0;c&&o&&n.writeSpace(" ")}}function Lv(e,t,n,r,i,o,s){let a,c;if(s?0===i.pos&&(a=M(wa(e,i.pos),(function(t){return H_(e,t.pos)}))):a=wa(e,i.pos),a){const s=[];let l;for(const e of a){if(l){const n=gv(t,l.end);if(gv(t,e.pos)>=n+2)break}s.push(e),l=e}if(s.length){const l=gv(t,Ae(s).end);gv(t,da(e,i.pos))>=l+2&&(Mv(t,n,i,a),Rv(e,t,n,s,!1,!0,o,r),c={nodePos:i.pos,detachedCommentEndPos:Ae(s).end})}}return c}function jv(e,t,n,r,i,o){if(42===e.charCodeAt(r+1)){const s=Xs(t,r),a=t.length;let c;for(let l=r,u=s.line;l<i;u++){const d=u+1===a?e.length+1:t[u+1];if(l!==r){void 0===c&&(c=Uv(e,t[s.line],r));const i=n.getIndent()*Gy()-c+Uv(e,l,d);if(i>0){let e=i%Gy();const t=Hy((i-e)/Gy());for(n.rawWrite(t);e;)n.rawWrite(" "),e--}else n.rawWrite("")}zv(e,i,n,o,l,d),l=d}}else n.writeComment(e.substring(r,i))}function zv(e,t,n,r,i,o){const s=Math.min(t,o-1),a=e.substring(i,s).trim();a?(n.writeComment(a),s!==t&&n.writeLine()):n.rawWrite(r)}function Uv(e,t,n){let r=0;for(;t<n&&ra(e.charCodeAt(t));t++)9===e.charCodeAt(t)?r+=Gy()-r%Gy():r++;return r}function Bv(e){return 0!==nb(e)}function qv(e){return 0!==ib(e)}function Vv(e,t){return!!$v(e,t)}function Kv(e,t){return!!eb(e,t)}function Jv(e){return bu(e)&&Wv(e)||bN(e)}function Wv(e){return Kv(e,256)}function Hv(e){return Vv(e,16)}function Gv(e){return Kv(e,64)}function Qv(e){return Kv(e,128)}function Yv(e){return Kv(e,512)}function Zv(e){return Vv(e,8)}function Xv(e){return Kv(e,32768)}function $v(e,t){return nb(e)&t}function eb(e,t){return ib(e)&t}function tb(e,t,n){return e.kind>=0&&e.kind<=165?0:(536870912&e.modifierFlagsCache||(e.modifierFlagsCache=536870912|cb(e)),n||t&&Um(e)?(268435456&e.modifierFlagsCache||!e.parent||(e.modifierFlagsCache|=268435456|ob(e)),sb(e.modifierFlagsCache)):65535&e.modifierFlagsCache)}function nb(e){return tb(e,!0)}function rb(e){return tb(e,!0,!0)}function ib(e){return tb(e,!1)}function ob(e){let t=0;return e.parent&&!fN(e)&&(Um(e)&&(Qc(e)&&(t|=8388608),Zc(e)&&(t|=16777216),$c(e)&&(t|=33554432),tl(e)&&(t|=67108864),nl(e)&&(t|=134217728)),il(e)&&(t|=65536)),t}function sb(e){return 131071&e|(260046848&e)>>>23}function ab(e){return cb(e)|function(e){return sb(ob(e))}(e)}function cb(e){let t=bM(e)?lb(e.modifiers):0;return(8&e.flags||80===e.kind&&4096&e.flags)&&(t|=32),t}function lb(e){let t=0;if(e)for(const n of e)t|=ub(n.kind);return t}function ub(e){switch(e){case 126:return 256;case 125:return 1;case 124:return 4;case 123:return 2;case 128:return 64;case 129:return 512;case 95:return 32;case 138:return 128;case 87:return 4096;case 90:return 2048;case 134:return 1024;case 148:return 8;case 164:return 16;case 103:return 8192;case 147:return 16384;case 170:return 32768}return 0}function db(e){return 57===e||56===e}function _b(e){return db(e)||54===e}function pb(e){return 76===e||77===e||78===e}function fb(e){return gA(e)&&pb(e.operatorToken.kind)}function mb(e){return db(e)||61===e}function hb(e){return gA(e)&&mb(e.operatorToken.kind)}function gb(e){return e>=64&&e<=79}function yb(e){const t=vb(e);return t&&!t.isImplements?t.class:void 0}function vb(e){if(wA(e)){if(KI(e.parent)&&xu(e.parent.parent))return{class:e.parent.parent,isImplements:119===e.parent.token};if(mD(e.parent)){const t=Zh(e.parent);if(t&&xu(t))return{class:t,isImplements:!1}}}}function bb(e,t){return gA(e)&&(t?64===e.operatorToken.kind:gb(e.operatorToken.kind))&&Qu(e.left)}function xb(e){return bb(e.parent)&&e.parent.left===e}function Sb(e){if(bb(e,!0)){const t=e.left.kind;return 210===t||209===t}return!1}function Tb(e){return void 0!==yb(e)}function wb(e){return 80===e.kind||Cb(e)}function kb(e){switch(e.kind){case 80:return e;case 166:do{e=e.left}while(80!==e.kind);return e;case 211:do{e=e.expression}while(80!==e.kind);return e}}function Eb(e){return 80===e.kind||110===e.kind||108===e.kind||236===e.kind||211===e.kind&&Eb(e.expression)||217===e.kind&&Eb(e.expression)}function Cb(e){return nA(e)&&YC(e.name)&&wb(e.expression)}function Nb(e){if(nA(e)){const t=Nb(e.expression);if(void 0!==t)return t+"."+qp(e.name)}else if(rA(e)){const t=Nb(e.expression);if(void 0!==t&&du(e.argumentExpression))return t+"."+Zg(e.argumentExpression)}else{if(YC(e))return wc(e.escapedText);if(BI(e))return bk(e)}}function Ab(e){return mh(e)&&"prototype"===bh(e)}function Ib(e){return 166===e.parent.kind&&e.parent.right===e||211===e.parent.kind&&e.parent.name===e||236===e.parent.kind&&e.parent.name===e}function Db(e){return!!e.parent&&(nA(e.parent)&&e.parent.name===e||rA(e.parent)&&e.parent.argumentExpression===e)}function Pb(e){return dN(e.parent)&&e.parent.right===e||nA(e.parent)&&e.parent.name===e||eD(e.parent)&&e.parent.right===e}function Mb(e){return gA(e)&&104===e.operatorToken.kind}function Ob(e){return Mb(e.parent)&&e===e.parent.right}function Fb(e){return 210===e.kind&&0===e.properties.length}function Rb(e){return 209===e.kind&&0===e.elements.length}function Lb(e){if(function(e){return e&&m(e.declarations)>0&&Kv(e.declarations[0],2048)}(e)&&e.declarations)for(const t of e.declarations)if(t.localSymbol)return t.localSymbol}function jb(e){return w(UT,(t=>Lo(e,t)))}var zb="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";function Ub(e){let t="";const n=function(e){const t=[],n=e.length;for(let r=0;r<n;r++){const n=e.charCodeAt(r);n<128?t.push(n):n<2048?(t.push(n>>6|192),t.push(63&n|128)):n<65536?(t.push(n>>12|224),t.push(n>>6&63|128),t.push(63&n|128)):n<131072?(t.push(n>>18|240),t.push(n>>12&63|128),t.push(n>>6&63|128),t.push(63&n|128)):Tn.assert(!1,"Unexpected code point")}return t}(e);let r=0;const i=n.length;let o,s,a,c;for(;r<i;)o=n[r]>>2,s=(3&n[r])<<4|n[r+1]>>4,a=(15&n[r+1])<<2|n[r+2]>>6,c=63&n[r+2],r+1>=i?a=c=64:r+2>=i&&(c=64),t+=zb.charAt(o)+zb.charAt(s)+zb.charAt(a)+zb.charAt(c),r+=3;return t}function Bb(e,t){return e&&e.base64encode?e.base64encode(t):Ub(t)}function qb(e,t){if(e&&e.base64decode)return e.base64decode(t);const n=t.length,r=[];let i=0;for(;i<n&&t.charCodeAt(i)!==zb.charCodeAt(64);){const e=zb.indexOf(t[i]),n=zb.indexOf(t[i+1]),o=zb.indexOf(t[i+2]),s=zb.indexOf(t[i+3]),a=(63&e)<<2|n>>4&3,c=(15&n)<<4|o>>2&15,l=(3&o)<<6|63&s;0===c&&0!==o?r.push(a):0===l&&0!==s?r.push(a,c):r.push(a,c,l),i+=4}return function(e){let t="",n=0;const r=e.length;for(;n<r;){const r=e[n];if(r<128)t+=String.fromCharCode(r),n++;else if(192&~r)t+=String.fromCharCode(r),n++;else{let i=63&r;n++;let o=e[n];for(;128==(192&o);)i=i<<6|63&o,n++,o=e[n];t+=String.fromCharCode(i)}}return t}(r)}function Vb(e,t){const n=lt(t)?t:t.readFile(e);if(!n)return;const r=mF(e,n);return r.error?void 0:r.config}function Kb(e,t){return Vb(e,t)||{}}function Jb(e){try{return JSON.parse(e)}catch{return}}function Wb(e,t){return!t.directoryExists||t.directoryExists(e)}var Hb="\r\n",Gb="\n";function Qb(e){switch(e.newLine){case 0:return Hb;case 1:case void 0:return Gb}}function Yb(e,t=e){return Tn.assert(t>=e||-1===t),{pos:e,end:t}}function Zb(e,t){return Yb(e.pos,t)}function Xb(e,t){return Yb(t,e.end)}function $b(e){const t=bM(e)?k(e.modifiers,mN):void 0;return t&&!dw(t.end)?Xb(e,t.end):e}function ex(e){if(gN(e)||vN(e))return Xb(e,e.name.pos);const t=bM(e)?Ne(e.modifiers):void 0;return t&&!dw(t.end)?Xb(e,t.end):$b(e)}function tx(e){return e.pos===e.end}function nx(e,t){return Yb(e,e+Vs(t).length)}function rx(e,t){return sx(e,e,t)}function ix(e,t,n){return dx(_x(e,n,!1),_x(t,n,!1),n)}function ox(e,t,n){return dx(e.end,t.end,n)}function sx(e,t,n){return dx(_x(e,n,!1),t.end,n)}function ax(e,t,n){return dx(e.end,_x(t,n,!1),n)}function cx(e,t,n,r){const i=_x(t,n,r);return ea(n,e.end,i)}function lx(e,t,n){return ea(n,e.end,t.end)}function ux(e,t){return!dx(e.pos,e.end,t)}function dx(e,t,n){return 0===ea(n,e,t)}function _x(e,t,n){return dw(e.pos)?-1:da(t.text,e.pos,!1,n)}function px(e,t,n,r){const i=da(n.text,e,!1,r),o=function(e,t=0,n){for(;e-- >t;)if(!na(n.text.charCodeAt(e)))return e}(i,t,n);return ea(n,o??t,i)}function fx(e,t,n,r){const i=da(n.text,e,!1,r);return ea(n,e,Math.min(t,i))}function mx(e){const t=Sc(e);if(t)switch(t.parent.kind){case 266:case 267:return t===t.parent.name}return!1}function hx(e){return M(e.declarations,gx)}function gx(e){return $A(e)&&void 0!==e.initializer}function yx(e){return e.watch&&je(e,"watch")}function vx(e){e.close()}function bx(e){return 33554432&e.flags?e.links.checkFlags:0}function xx(e,t=!1){if(e.valueDeclaration){const n=pc(t&&e.declarations&&w(e.declarations,TN)||32768&e.flags&&w(e.declarations,SN)||e.valueDeclaration);return e.parent&&32&e.parent.flags?n:-8&n}if(6&bx(e)){const t=e.links.checkFlags;return(1024&t?2:256&t?1:4)|(2048&t?256:0)}return 4194304&e.flags?257:0}function Sx(e,t){return 2097152&e.flags?t.getAliasedSymbol(e):e}function Tx(e){return e.exportSymbol?e.exportSymbol.flags|e.flags:e.flags}function wx(e){return 1===Ex(e)}function kx(e){return 0!==Ex(e)}function Ex(e){const{parent:t}=e;switch(null==t?void 0:t.kind){case 217:case 209:return Ex(t);case 225:case 224:const{operator:n}=t;return 46===n||47===n?2:0;case 226:const{left:r,operatorToken:i}=t;return r===e&&gb(i.kind)?64===i.kind?1:2:0;case 211:return t.name!==e?0:Ex(t);case 303:{const n=Ex(t.parent);return e===t.name?function(e){switch(e){case 0:return 1;case 1:return 0;case 2:return 2;default:return Tn.assertNever(e)}}(n):n}case 304:return e===t.objectAssignmentInitializer?0:Ex(t.parent);default:return 0}}function Cx(e,t){if(!e||!t||Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if("object"==typeof e[n]){if(!Cx(e[n],t[n]))return!1}else if("function"!=typeof e[n]&&e[n]!==t[n])return!1;return!0}function Nx(e,t){e.forEach(t),e.clear()}function Ax(e,t,n){const{onDeleteValue:r,onExistingValue:i}=n;e.forEach(((n,o)=>{var s;(null==t?void 0:t.has(o))?i&&i(n,null==(s=t.get)?void 0:s.call(t,o),o):(e.delete(o),r(n,o))}))}function Ix(e,t,n){Ax(e,t,n);const{createNewValue:r}=n;null==t||t.forEach(((t,n)=>{e.has(n)||e.set(n,r(n,t))}))}function Dx(e){if(32&e.flags){const t=Px(e);return!!t&&Kv(t,64)}return!1}function Px(e){var t;return null==(t=e.declarations)?void 0:t.find(xu)}function Mx(e){return 3899393&e.flags?e.objectFlags:0}function Ox(e,t){return!!xs(e,(e=>!!t(e)||void 0))}function Fx(e){return!!e&&!!e.declarations&&!!e.declarations[0]&&lI(e.declarations[0])}function Rx({moduleSpecifier:e}){return MC(e)?e.text:ep(e)}function Lx(e){let t;return GM(e,(e=>{R_(e)&&(t=e)}),(e=>{for(let n=e.length-1;n>=0;n--)if(R_(e[n])){t=e[n];break}})),t}function jx(e,t,n=!0){return!e.has(t)&&(e.set(t,n),!0)}function zx(e){return xu(e)||rI(e)||PN(e)}function Ux(e){return e>=182&&e<=205||133===e||159===e||150===e||163===e||151===e||136===e||154===e||155===e||116===e||157===e||146===e||141===e||233===e||312===e||313===e||314===e||315===e||316===e||317===e||318===e}function Bx(e){return 211===e.kind||212===e.kind}function qx(e){return 211===e.kind?e.name:(Tn.assert(212===e.kind),e.argumentExpression)}function Vx(e){return 275===e.kind||279===e.kind}function Kx(e){for(;Bx(e);)e=e.expression;return e}function Jx(e,t){if(Bx(e.parent)&&Db(e))return function e(n){if(211===n.kind){const e=t(n.name);if(void 0!==e)return e}else if(212===n.kind){if(!YC(n.argumentExpression)&&!Hd(n.argumentExpression))return;{const e=t(n.argumentExpression);if(void 0!==e)return e}}if(Bx(n.expression))return e(n.expression);if(YC(n.expression))return t(n.expression);return}(e.parent)}function Wx(e,t){for(;;){switch(e.kind){case 225:e=e.operand;continue;case 226:e=e.left;continue;case 227:e=e.condition;continue;case 215:e=e.tag;continue;case 213:if(t)return e;case 234:case 212:case 211:case 235:case 354:case 238:e=e.expression;continue}return e}}function Hx(e,t){this.flags=e,this.escapedName=t,this.declarations=void 0,this.valueDeclaration=void 0,this.id=0,this.mergeId=0,this.parent=void 0,this.members=void 0,this.exports=void 0,this.exportSymbol=void 0,this.constEnumOnlyModule=void 0,this.isReferenced=void 0,this.lastAssignmentPos=void 0,this.links=void 0}function Gx(e,t){this.flags=t,(Tn.isDebugging||ar)&&(this.checker=e)}function Qx(e,t){this.flags=t,Tn.isDebugging&&(this.checker=e)}function Yx(e,t,n){this.pos=t,this.end=n,this.kind=e,this.id=0,this.flags=0,this.modifierFlagsCache=0,this.transformFlags=0,this.parent=void 0,this.original=void 0,this.emitNode=void 0}function Zx(e,t,n){this.pos=t,this.end=n,this.kind=e,this.id=0,this.flags=0,this.transformFlags=0,this.parent=void 0,this.emitNode=void 0}function Xx(e,t,n){this.pos=t,this.end=n,this.kind=e,this.id=0,this.flags=0,this.transformFlags=0,this.parent=void 0,this.original=void 0,this.emitNode=void 0}function $x(e,t,n){this.fileName=e,this.text=t,this.skipTrivia=n||(e=>e)}var eS,tS={getNodeConstructor:()=>Yx,getTokenConstructor:()=>Zx,getIdentifierConstructor:()=>Xx,getPrivateIdentifierConstructor:()=>Yx,getSourceFileConstructor:()=>Yx,getSymbolConstructor:()=>Hx,getTypeConstructor:()=>Gx,getSignatureConstructor:()=>Qx,getSourceMapSourceConstructor:()=>$x},nS=[];function rS(e){nS.push(e),e(tS)}function iS(e){Object.assign(tS,e),h(nS,(e=>e(tS)))}function oS(e,t){return e.replace(/{(\d+)}/g,((e,n)=>""+Tn.checkDefined(t[+n])))}function sS(e){eS=e}function aS(e){!eS&&e&&(eS=e())}function cS(e){return eS&&eS[e.key]||e.message}function lS(e,t,n,r,i,...o){n+r>t.length&&(r=t.length-n),Gp(t,n,r);let s=cS(i);return $(o)&&(s=oS(s,o)),{file:void 0,start:n,length:r,messageText:s,category:i.category,code:i.code,reportsUnnecessary:i.reportsUnnecessary,fileName:e}}function uS(e){return void 0===e.file&&void 0!==e.start&&void 0!==e.length&&"string"==typeof e.fileName}function dS(e,t){const n=t.fileName||"",r=t.text.length;Tn.assertEqual(e.fileName,n),Tn.assertLessThanOrEqual(e.start,r),Tn.assertLessThanOrEqual(e.start+e.length,r);const i={file:t,start:e.start,length:e.length,messageText:e.messageText,category:e.category,code:e.code,reportsUnnecessary:e.reportsUnnecessary};if(e.relatedInformation){i.relatedInformation=[];for(const o of e.relatedInformation)uS(o)&&o.fileName===n?(Tn.assertLessThanOrEqual(o.start,r),Tn.assertLessThanOrEqual(o.start+o.length,r),i.relatedInformation.push(dS(o,t))):i.relatedInformation.push(o)}return i}function _S(e,t){const n=[];for(const r of e)n.push(dS(r,t));return n}function pS(e,t,n,r,...i){Gp(e.text,t,n);let o=cS(r);return $(i)&&(o=oS(o,i)),{file:e,start:t,length:n,messageText:o,category:r.category,code:r.code,reportsUnnecessary:r.reportsUnnecessary,reportsDeprecated:r.reportsDeprecated}}function fS(e,...t){let n=cS(e);return $(t)&&(n=oS(n,t)),n}function mS(e,...t){let n=cS(e);return $(t)&&(n=oS(n,t)),{file:void 0,start:void 0,length:void 0,messageText:n,category:e.category,code:e.code,reportsUnnecessary:e.reportsUnnecessary,reportsDeprecated:e.reportsDeprecated}}function hS(e,t){return{file:void 0,start:void 0,length:void 0,code:e.code,category:e.category,messageText:e.next?e:e.messageText,relatedInformation:t}}function gS(e,t,...n){let r=cS(t);return $(n)&&(r=oS(r,n)),{messageText:r,category:t.category,code:t.code,next:void 0===e||Array.isArray(e)?e:[e]}}function yS(e,t){let n=e;for(;n.next;)n=n.next[0];n.next=[t]}function vS(e){return e.file?e.file.path:void 0}function bS(e,t){return xS(e,t)||function(e,t){if(!e.relatedInformation&&!t.relatedInformation)return 0;if(e.relatedInformation&&t.relatedInformation)return Pt(t.relatedInformation.length,e.relatedInformation.length)||h(e.relatedInformation,((e,n)=>bS(e,t.relatedInformation[n])))||0;return e.relatedInformation?-1:1}(e,t)||0}function xS(e,t){const n=kS(e),r=kS(t);return Lt(vS(e),vS(t))||Pt(e.start,t.start)||Pt(e.length,t.length)||Pt(n,r)||function(e,t){let n=ES(e),r=ES(t);"string"!=typeof n&&(n=n.messageText);"string"!=typeof r&&(r=r.messageText);const i="string"!=typeof e.messageText?e.messageText.next:void 0,o="string"!=typeof t.messageText?t.messageText.next:void 0;let s=Lt(n,r);if(s)return s;if(s=function(e,t){if(void 0===e&&void 0===t)return 0;if(void 0===e)return 1;if(void 0===t)return-1;return SS(e,t)||TS(e,t)}(i,o),s)return s;if(e.canonicalHead&&!t.canonicalHead)return-1;if(t.canonicalHead&&!e.canonicalHead)return 1;return 0}(e,t)||0}function SS(e,t){if(void 0===e&&void 0===t)return 0;if(void 0===e)return 1;if(void 0===t)return-1;let n=Pt(t.length,e.length);if(n)return n;for(let r=0;r<t.length;r++)if(n=SS(e[r].next,t[r].next),n)return n;return 0}function TS(e,t){let n;for(let r=0;r<t.length;r++){if(n=Lt(e[r].messageText,t[r].messageText),n)return n;if(void 0!==e[r].next&&(n=TS(e[r].next,t[r].next),n))return n}return 0}function wS(e,t){const n=kS(e),r=kS(t),i=ES(e),o=ES(t);return 0===Lt(vS(e),vS(t))&&0===Pt(e.start,t.start)&&0===Pt(e.length,t.length)&&0===Pt(n,r)&&function(e,t){const n="string"==typeof e?e:e.messageText,r="string"==typeof t?t:t.messageText;return 0===Lt(n,r)}(i,o)}function kS(e){var t;return(null==(t=e.canonicalHead)?void 0:t.code)||e.code}function ES(e){var t;return(null==(t=e.canonicalHead)?void 0:t.messageText)||e.messageText}function CS(e){return 4===e||2===e||1===e||6===e?1:0}function NS(e){if(2&e.transformFlags)return Pd(e)||OI(e)?e:GM(e,NS)}function AS(e){return e.isDeclarationFile?void 0:NS(e)}function IS(e){return!(99!==e.impliedNodeFormat&&!jo(e.fileName,[".cjs",".cts",".mjs",".mts"])||e.isDeclarationFile)||void 0}function DS(e){switch(RS(e)){case 3:return e=>{e.externalModuleIndicator=CM(e)||!e.isDeclarationFile||void 0};case 1:return e=>{e.externalModuleIndicator=CM(e)};case 2:const t=[CM];4!==e.jsx&&5!==e.jsx||t.push(AS),t.push(IS);const n=pn(...t);return e=>{e.externalModuleIndicator=n(e)}}}var PS={target:{dependencies:["module"],computeValue:e=>(0===e.target?void 0:e.target)??((100===e.module?9:199===e.module&&99)||1)},module:{dependencies:["target"],computeValue:e=>"number"==typeof e.module?e.module:PS.target.computeValue(e)>=2?5:1},moduleResolution:{dependencies:["module","target"],computeValue:e=>{let t=e.moduleResolution;if(void 0===t)switch(PS.module.computeValue(e)){case 1:t=2;break;case 100:t=3;break;case 199:t=99;break;case 200:t=100;break;default:t=1}return t}},moduleDetection:{dependencies:["module","target"],computeValue:e=>e.moduleDetection||(100===PS.module.computeValue(e)||199===PS.module.computeValue(e)?3:2)},isolatedModules:{dependencies:["verbatimModuleSyntax"],computeValue:e=>!(!e.isolatedModules&&!e.verbatimModuleSyntax)},esModuleInterop:{dependencies:["module","target"],computeValue:e=>{if(void 0!==e.esModuleInterop)return e.esModuleInterop;switch(PS.module.computeValue(e)){case 100:case 199:case 200:return!0}return!1}},allowSyntheticDefaultImports:{dependencies:["module","target","moduleResolution"],computeValue:e=>void 0!==e.allowSyntheticDefaultImports?e.allowSyntheticDefaultImports:PS.esModuleInterop.computeValue(e)||4===PS.module.computeValue(e)||100===PS.moduleResolution.computeValue(e)},resolvePackageJsonExports:{dependencies:["moduleResolution"],computeValue:e=>{const t=PS.moduleResolution.computeValue(e);if(!$S(t))return!1;if(void 0!==e.resolvePackageJsonExports)return e.resolvePackageJsonExports;switch(t){case 3:case 99:case 100:return!0}return!1}},resolvePackageJsonImports:{dependencies:["moduleResolution","resolvePackageJsonExports"],computeValue:e=>{const t=PS.moduleResolution.computeValue(e);if(!$S(t))return!1;if(void 0!==e.resolvePackageJsonExports)return e.resolvePackageJsonExports;switch(t){case 3:case 99:case 100:return!0}return!1}},resolveJsonModule:{dependencies:["moduleResolution","module","target"],computeValue:e=>void 0!==e.resolveJsonModule?e.resolveJsonModule:100===PS.moduleResolution.computeValue(e)},declaration:{dependencies:["composite"],computeValue:e=>!(!e.declaration&&!e.composite)},preserveConstEnums:{dependencies:["isolatedModules","verbatimModuleSyntax"],computeValue:e=>!(!e.preserveConstEnums&&!PS.isolatedModules.computeValue(e))},incremental:{dependencies:["composite"],computeValue:e=>!(!e.incremental&&!e.composite)},declarationMap:{dependencies:["declaration","composite"],computeValue:e=>!(!e.declarationMap||!PS.declaration.computeValue(e))},allowJs:{dependencies:["checkJs"],computeValue:e=>void 0===e.allowJs?!!e.checkJs:e.allowJs},useDefineForClassFields:{dependencies:["target","module"],computeValue:e=>void 0===e.useDefineForClassFields?PS.target.computeValue(e)>=9:e.useDefineForClassFields},noImplicitAny:{dependencies:["strict"],computeValue:e=>eT(e,"noImplicitAny")},noImplicitThis:{dependencies:["strict"],computeValue:e=>eT(e,"noImplicitThis")},strictNullChecks:{dependencies:["strict"],computeValue:e=>eT(e,"strictNullChecks")},strictFunctionTypes:{dependencies:["strict"],computeValue:e=>eT(e,"strictFunctionTypes")},strictBindCallApply:{dependencies:["strict"],computeValue:e=>eT(e,"strictBindCallApply")},strictPropertyInitialization:{dependencies:["strict"],computeValue:e=>eT(e,"strictPropertyInitialization")},alwaysStrict:{dependencies:["strict"],computeValue:e=>eT(e,"alwaysStrict")},useUnknownInCatchVariables:{dependencies:["strict"],computeValue:e=>eT(e,"useUnknownInCatchVariables")}},MS=PS.target.computeValue,OS=PS.module.computeValue,FS=PS.moduleResolution.computeValue,RS=PS.moduleDetection.computeValue,LS=PS.isolatedModules.computeValue,jS=PS.esModuleInterop.computeValue,zS=PS.allowSyntheticDefaultImports.computeValue,US=PS.resolvePackageJsonExports.computeValue,BS=PS.resolvePackageJsonImports.computeValue,qS=PS.resolveJsonModule.computeValue,VS=PS.declaration.computeValue,KS=PS.preserveConstEnums.computeValue,JS=PS.incremental.computeValue,WS=PS.declarationMap.computeValue,HS=PS.allowJs.computeValue,GS=PS.useDefineForClassFields.computeValue;function QS(e){return e>=5&&e<=99}function YS(e){switch(OS(e)){case 0:case 4:case 3:return!1}return!0}function ZS(e){return!1===e.allowUnreachableCode}function XS(e){return!1===e.allowUnusedLabels}function $S(e){return e>=3&&e<=99||100===e}function eT(e,t){return void 0===e[t]?!!e.strict:!!e[t]}function tT(e){return f_(NO.type,((t,n)=>t===e?n:void 0))}function nT(e){return!1!==e.useDefineForClassFields&&MS(e)>=9}function rT(e,t){return __(t,e,PO)}function iT(e,t){return __(t,e,MO)}function oT(e,t){return __(t,e,OO)}function sT(e,t){return t.strictFlag?eT(e,t.name):t.allowJsFlag?HS(e):e[t.name]}function aT(e){const t=e.jsx;return 2===t||4===t||5===t}function cT(e,t){const n=null==t?void 0:t.pragmas.get("jsximportsource"),r=at(n)?n[n.length-1]:n;return 4===e.jsx||5===e.jsx||e.jsxImportSource||r?(null==r?void 0:r.arguments.factory)||e.jsxImportSource||"react":void 0}function lT(e,t){return e?`${e}/${5===t.jsx?"jsx-dev-runtime":"jsx-runtime"}`:void 0}function uT(e){let t=!1;for(let n=0;n<e.length;n++)if(42===e.charCodeAt(n)){if(t)return!1;t=!0}return!0}function dT(e,t){let n,r,i,o=!1;return{getSymlinkedFiles:()=>i,getSymlinkedDirectories:()=>n,getSymlinkedDirectoriesByRealpath:()=>r,setSymlinkedFile:(e,t)=>(i||(i=new Map)).set(e,t),setSymlinkedDirectory:(i,o)=>{let s=rs(i,e,t);Hw(s)||(s=os(s),!1===o||(null==n?void 0:n.has(s))||(r||(r=nt())).add(o.realPath,i),(n||(n=new Map)).set(s,o))},setSymlinksFromResolutions(e,t,n){Tn.assert(!o),o=!0,e((e=>s(this,e.resolvedModule))),t((e=>s(this,e.resolvedTypeReferenceDirective))),n.forEach((e=>s(this,e.resolvedTypeReferenceDirective)))},hasProcessedResolutions:()=>o,setSymlinksFromResolution(e){s(this,e)},hasAnySymlinks:function(){return!!(null==i?void 0:i.size)||!!n&&!!f_(n,(e=>!!e))}};function s(n,r){if(!r||!r.originalPath||!r.resolvedFileName)return;const{resolvedFileName:i,originalPath:o}=r;n.setSymlinkedFile(rs(o,e,t),i);const[s,a]=function(e,t,n,r){const i=Ho(es(e,n)),o=Ho(es(t,n));let s=!1;for(;i.length>=2&&o.length>=2&&!_T(i[i.length-2],r)&&!_T(o[o.length-2],r)&&r(i[i.length-1])===r(o[o.length-1]);)i.pop(),o.pop(),s=!0;return s?[Go(i),Go(o)]:void 0}(i,o,e,t)||_;s&&a&&n.setSymlinkedDirectory(a,{real:os(s),realPath:os(rs(s,e,t))})}}function _T(e,t){return void 0!==e&&("node_modules"===t(e)||cn(e,"@"))}function pT(e,t,n){const r=un(e,t,n);return void 0===r?void 0:function(e){return Ao(e.charCodeAt(0))?e.slice(1):void 0}(r)}var fT=/[^\w\s/]/g;function mT(e){return e.replace(fT,hT)}function hT(e){return"\\"+e}var gT=[42,63],yT=["node_modules","bower_components","jspm_packages"],vT=`(?!(${yT.join("|")})(/|$))`,bT={singleAsteriskRegexFragment:"([^./]|(\\.(?!min\\.js$))?)*",doubleAsteriskRegexFragment:`(/${vT}[^/.][^/]*)*?`,replaceWildcardCharacter:e=>AT(e,bT.singleAsteriskRegexFragment)},xT={singleAsteriskRegexFragment:"[^/]*",doubleAsteriskRegexFragment:`(/${vT}[^/.][^/]*)*?`,replaceWildcardCharacter:e=>AT(e,xT.singleAsteriskRegexFragment)},ST={singleAsteriskRegexFragment:"[^/]*",doubleAsteriskRegexFragment:"(/.+?)?",replaceWildcardCharacter:e=>AT(e,ST.singleAsteriskRegexFragment)},TT={files:bT,directories:xT,exclude:ST};function wT(e,t,n){const r=kT(e,t,n);if(!r||!r.length)return;return`^(${r.map((e=>`(${e})`)).join("|")})${"exclude"===n?"($|/)":"$"}`}function kT(e,t,n){if(void 0!==e&&0!==e.length)return U(e,(e=>e&&NT(e,t,n,TT[n])))}function ET(e){return!/[.*?]/.test(e)}function CT(e,t,n){const r=e&&NT(e,t,n,TT[n]);return r&&`^(${r})${"exclude"===n?"($|/)":"$"}`}function NT(e,t,n,{singleAsteriskRegexFragment:r,doubleAsteriskRegexFragment:i,replaceWildcardCharacter:o}=TT[n]){let s="",a=!1;const c=$o(e,t),l=Ae(c);if("exclude"!==n&&"**"===l)return;c[0]=is(c[0]),ET(l)&&c.push("**","*");let u=0;for(let d of c){if("**"===d)s+=i;else if("directories"===n&&(s+="(",u++),a&&(s+=ko),"exclude"!==n){let e="";42===d.charCodeAt(0)?(e+="([^./]"+r+")?",d=d.substr(1)):63===d.charCodeAt(0)&&(e+="[^./]",d=d.substr(1)),e+=d.replace(fT,o),e!==d&&(s+=vT),s+=e}else s+=d.replace(fT,o);a=!0}for(;u>0;)s+=")?",u--;return s}function AT(e,t){return"*"===e?t:"?"===e?"[^/]":"\\"+e}function IT(e,t,n,r,i){e=ts(e);const o=Zo(i=ts(i),e);return{includeFilePatterns:R(kT(n,o,"files"),(e=>`^${e}$`)),includeFilePattern:wT(n,o,"files"),includeDirectoryPattern:wT(n,o,"directories"),excludePattern:wT(t,o,"exclude"),basePaths:MT(e,n,r)}}function DT(e,t){return new RegExp(e,t?"":"i")}function PT(e,t,n,r,i,o,s,a,c){e=ts(e),o=ts(o);const l=IT(e,n,r,i,o),u=l.includeFilePatterns&&l.includeFilePatterns.map((e=>DT(e,i))),d=l.includeDirectoryPattern&&DT(l.includeDirectoryPattern,i),_=l.excludePattern&&DT(l.excludePattern,i),p=u?u.map((()=>[])):[[]],f=new Map,m=rn(i);for(const g of l.basePaths)h(g,Zo(o,g),s);return z(p);function h(e,n,r){const i=m(c(n));if(f.has(i))return;f.set(i,!0);const{files:o,directories:s}=a(e);for(const a of ve(o,Lt)){const r=Zo(e,a),i=Zo(n,a);if((!t||jo(r,t))&&(!_||!_.test(i)))if(u){const e=E(u,(e=>e.test(i)));-1!==e&&p[e].push(r)}else p[0].push(r)}if(void 0===r||0!=--r)for(const t of ve(s,Lt)){const i=Zo(e,t),o=Zo(n,t);d&&!d.test(o)||_&&_.test(o)||h(i,o,r)}}}function MT(e,t,n){const r=[e];if(t){const i=[];for(const n of t){const t=Do(n)?n:ts(Zo(e,n));i.push(OT(t))}i.sort(jt(!n));for(const t of i)T(r,(r=>!fs(r,t,e,!n)))&&r.push(t)}return r}function OT(e){const t=D(e,gT);return t<0?Ro(e)?is(Vo(e)):e:e.substring(0,e.lastIndexOf(ko,t))}function FT(e,t){return t||RT(e)||3}function RT(e){switch(e.substr(e.lastIndexOf(".")).toLowerCase()){case".js":case".cjs":case".mjs":return 1;case".jsx":return 2;case".ts":case".cts":case".mts":return 3;case".tsx":return 4;case".json":return 6;default:return 0}}var LT=[[".ts",".tsx",".d.ts"],[".cts",".d.cts"],[".mts",".d.mts"]],jT=z(LT),zT=[...LT,[".json"]],UT=[".d.ts",".d.cts",".d.mts",".cts",".mts",".ts",".tsx"],BT=[[".js",".jsx"],[".mjs"],[".cjs"]],qT=z(BT),VT=[[".ts",".tsx",".d.ts",".js",".jsx"],[".cts",".d.cts",".cjs"],[".mts",".d.mts",".mjs"]],KT=[...VT,[".json"]],JT=[".d.ts",".d.cts",".d.mts"],WT=[".ts",".cts",".mts",".tsx"],HT=[".mts",".d.mts",".mjs",".cts",".d.cts",".cjs"];function GT(e,t){const n=e&&HS(e);if(!t||0===t.length)return n?VT:LT;const r=n?VT:LT,i=z(r);return[...r,...J(t,(e=>{return 7===e.scriptKind||n&&(1===(t=e.scriptKind)||2===t)&&!i.includes(e.extension)?[e.extension]:void 0;var t}))]}function QT(e,t){return e&&qS(e)?t===VT?KT:t===LT?zT:[...t,[".json"]]:t}function YT(e){return $(qT,(t=>Lo(e,t)))}function ZT(e){return $(jT,(t=>Lo(e,t)))}var XT=(e=>(e[e.Minimal=0]="Minimal",e[e.Index=1]="Index",e[e.JsExtension=2]="JsExtension",e[e.TsExtension=3]="TsExtension",e))(XT||{});function $T({imports:e},t=pn(YT,ZT)){return y(e,(({text:e})=>Oo(e)&&!jo(e,HT)?t(e):void 0))||!1}function ew(e,t,n,r){const i=FS(n),o=3<=i&&i<=99;return"js"===e||99===t&&o?Rj(n)&&2!==s()?3:2:"minimal"===e?0:"index"===e?1:Rj(n)?s():r&&$T(r)?2:0;function s(){let e=!1;const i=(null==r?void 0:r.imports.length)?r.imports:r&&jm(r)?function(e){let t,n=0;for(const r of e.statements){if(n>3)break;Ym(r)?t=te(t,r.declarationList.declarations.map((e=>e.initializer))):LA(r)&&Jm(r.expression,!0)?t=_e(t,r.expression):n++}return t||_}(r).map((e=>e.arguments[0])):_;for(const s of i)if(Oo(s.text)){if(o&&1===t&&99===lK(r,s,n))continue;if(jo(s.text,HT))continue;if(ZT(s.text))return 3;YT(s.text)&&(e=!0)}return e?2:0}}function tw(e,t,n){if(!e)return!1;const r=GT(t,n);for(const i of z(QT(t,r)))if(Lo(e,i))return!0;return!1}function nw(e){const t=e.match(/\//g);return t?t.length:0}function rw(e,t){return Pt(nw(e),nw(t))}var iw=[".d.ts",".d.mts",".d.cts",".mjs",".mts",".cjs",".cts",".ts",".js",".tsx",".jsx",".json"];function ow(e){for(const t of iw){const n=sw(e,t);if(void 0!==n)return n}return e}function sw(e,t){return Lo(e,t)?aw(e,t):void 0}function aw(e,t){return e.substring(0,e.length-t.length)}function cw(e,t){return as(e,t,iw,!1)}function lw(e){const t=e.indexOf("*");return-1===t?e:-1!==e.indexOf("*",t+1)?void 0:{prefix:e.substr(0,t),suffix:e.substr(t+1)}}function uw(e){return J(Ue(e),(e=>lw(e)))}function dw(e){return!(e>=0)}function _w(e){return".ts"===e||".tsx"===e||".d.ts"===e||".cts"===e||".mts"===e||".d.mts"===e||".d.cts"===e||cn(e,".d.")&&Qt(e,".ts")}function pw(e){return _w(e)||".json"===e}function fw(e){const t=hw(e);return void 0!==t?t:Tn.fail(`File ${e} has unknown extension.`)}function mw(e){return void 0!==hw(e)}function hw(e){return w(iw,(t=>Lo(e,t)))}function gw(e,t){return e.checkJsDirective?e.checkJsDirective.enabled:t.checkJs}var yw={files:_,directories:_};function vw(e,t){const n=[];for(const r of e){if(r===t)return t;lt(r)||n.push(r)}return an(n,(e=>e),t)}function bw(e,t){const n=e.indexOf(t);return Tn.assert(-1!==n),e.slice(n)}function xw(e,...t){return t.length?(e.relatedInformation||(e.relatedInformation=[]),Tn.assert(e.relatedInformation!==_,"Diagnostic had empty array singleton for related info, but is still being constructed!"),e.relatedInformation.push(...t),e):e}function Sw(e,t){Tn.assert(0!==e.length);let n=t(e[0]),r=n;for(let i=1;i<e.length;i++){const o=t(e[i]);o<n?n=o:o>r&&(r=o)}return{min:n,max:r}}function Tw(e){return{pos:Q_(e),end:e.end}}function ww(e,t){return{pos:t.pos-1,end:Math.min(e.text.length,da(e.text,t.end)+1)}}function kw(e,t,n){return t.skipLibCheck&&e.isDeclarationFile||t.skipDefaultLibCheck&&e.hasNoDefaultLib||t.noCheck||n.isSourceOfProjectReferenceRedirect(e.fileName)||!Ew(e,t)}function Ew(e,t){if(e.checkJsDirective&&!1===e.checkJsDirective.enabled)return!1;if(3===e.scriptKind||4===e.scriptKind||5===e.scriptKind)return!0;const n=(1===e.scriptKind||2===e.scriptKind)&&gw(e,t);return A_(e,t.checkJs)||n||7===e.scriptKind}function Cw(e,t){return e===t||"object"==typeof e&&null!==e&&"object"==typeof t&&null!==t&&We(e,t,Cw)}function Nw(e){let t;switch(e.charCodeAt(1)){case 98:case 66:t=1;break;case 111:case 79:t=3;break;case 120:case 88:t=4;break;default:const n=e.length-1;let r=0;for(;48===e.charCodeAt(r);)r++;return e.slice(r,n)||"0"}const n=e.length-1,r=(n-2)*t,i=new Uint16Array((r>>>4)+(15&r?1:0));for(let c=n-1,l=0;c>=2;c--,l+=t){const t=l>>>4,n=e.charCodeAt(c),r=(n<=57?n-48:10+n-(n<=70?65:97))<<(15&l);i[t]|=r;const o=r>>>16;o&&(i[t+1]|=o)}let o="",s=i.length-1,a=!0;for(;a;){let e=0;a=!1;for(let t=s;t>=0;t--){const n=e<<16|i[t],r=n/10|0;i[t]=r,e=n-10*r,r&&!a&&(s=t,a=!0)}o=e+o}return o}function Aw({negative:e,base10Value:t}){return(e&&"0"!==t?"-":"")+t}function Iw(e){if(Pw(e,!1))return Dw(e)}function Dw(e){const t=e.startsWith("-");return{negative:t,base10Value:Nw(`${t?e.slice(1):e}n`)}}function Pw(e,t){if(""===e)return!1;const n=Ia(99,!1);let r=!0;n.setOnError((()=>r=!1)),n.setText(e+"n");let i=n.scan();const o=41===i;o&&(i=n.scan());const s=n.getTokenFlags();return r&&10===i&&n.getTokenEnd()===e.length+1&&!(512&s)&&(!t||e===Aw({negative:o,base10Value:Nw(n.getTokenValue())}))}function Mw(e){return!!(33554432&e.flags)||Dm(e)||function(e){if(80!==e.kind)return!1;const t=bc(e.parent,(e=>{switch(e.kind){case 298:return!0;case 211:case 233:return!1;default:return"quit"}}));return 119===(null==t?void 0:t.token)||264===(null==t?void 0:t.parent.kind)}(e)||function(e){for(;80===e.kind||211===e.kind;)e=e.parent;if(167!==e.kind)return!1;if(Kv(e.parent,64))return!0;const t=e.parent.parent.kind;return 264===t||187===t}(e)||!(Am(e)||function(e){return YC(e)&&HI(e.parent)&&e.parent.name===e}(e))}function Ow(e){return NN(e)&&YC(e.typeName)}function Fw(e,t=Nt){if(e.length<2)return!0;const n=e[0];for(let r=1,i=e.length;r<i;r++){if(!t(n,e[r]))return!1}return!0}function Rw(e,t){return e.pos=t,e}function Lw(e,t){return e.end=t,e}function jw(e,t,n){return Lw(Rw(e,t),n)}function zw(e,t,n){return jw(e,t,t+n)}function Uw(e,t){return e&&(e.flags=t),e}function Bw(e,t){return e&&t&&(e.parent=t),e}function qw(e,t){if(e)for(const n of e)Bw(n,t);return e}function Vw(e,t){return e?(QM(e,Od(e)?n:function(e,t){return n(e,t)||function(e){if(zd(e))for(const t of e.jsDoc)n(t,e),QM(t,n)}(e)}),e):e;function n(e,n){if(t&&e.parent===n)return"skip";Bw(e,n)}}function Kw(e){return!TA(e)}function Jw(e){return eA(e)&&T(e.elements,Kw)}function Ww(e){for(Tn.assertIsDefined(e.parent);;){const t=e.parent;if(cA(t))e=t;else{if(LA(t)||pA(t)||BA(t)&&(t.initializer===e||t.incrementor===e))return!0;if(DA(t)){if(e!==Ae(t.elements))return!0;e=t}else{if(!gA(t)||28!==t.operatorToken.kind)return!1;if(e===t.left)return!0;e=t}}}}function Hw(e){return $(po,(t=>e.includes(t)))}function Gw(e){if(!e.parent)return;switch(e.kind){case 168:const{parent:t}=e;return 195===t.kind?void 0:t.typeParameters;case 169:return e.parent.parameters;case 204:case 239:return e.parent.templateSpans;case 170:{const{parent:t}=e;return xM(t)?t.modifiers:void 0}case 298:return e.parent.heritageClauses}const{parent:t}=e;if(Rd(e))return pD(e.parent)?void 0:e.parent.tags;switch(t.kind){case 187:case 264:return Nu(e)?t.members:void 0;case 192:case 193:return t.types;case 189:case 209:case 355:case 275:case 279:return t.elements;case 210:case 292:return t.properties;case 213:case 214:return Du(e)?t.typeArguments:t.expression===e?void 0:t.arguments;case 284:case 288:return Ad(e)?t.children:void 0;case 286:case 285:return Du(e)?t.typeArguments:void 0;case 241:case 296:case 297:case 268:case 307:return t.statements;case 269:return t.clauses;case 263:case 231:return bu(e)?t.members:void 0;case 266:return QI(e)?t.members:void 0}}function Qw(e){if(!e.typeParameters){if($(e.parameters,(e=>!Nv(e))))return!0;if(219!==e.kind){const t=we(e.parameters);if(!t||!Sv(t))return!0}}return!1}function Yw(e){return"Infinity"===e||"-Infinity"===e||"NaN"===e}function Zw(e){return 260===e.kind&&299===e.parent.kind}function Xw(e){return 218===e.kind||219===e.kind}function $w(e){return e.replace(/\$/gm,(()=>"\\$"))}function ek(e){return(+e).toString()===e}function tk(e,t,n,r,i){const o=i&&"new"===e;return!o&&Aa(e,t)?oE.createIdentifier(e):!r&&!o&&ek(e)&&+e>=0?oE.createNumericLiteral(+e):oE.createStringLiteral(e,!!n)}function nk(e){return!!(262144&e.flags&&e.isThisType)}function rk(e){let t,n=0,r=0,i=0,o=0;var s;(s=t||(t={}))[s.BeforeNodeModules=0]="BeforeNodeModules",s[s.NodeModules=1]="NodeModules",s[s.Scope=2]="Scope",s[s.PackageContent=3]="PackageContent";let a=0,c=0,l=0;for(;c>=0;)switch(a=c,c=e.indexOf("/",a+1),l){case 0:e.indexOf(GL,a)===a&&(n=a,r=c,l=1);break;case 1:case 2:1===l&&"@"===e.charAt(a+1)?l=2:(i=c,l=3);break;case 3:l=e.indexOf(GL,a)===a?1:3}return o=a,l>1?{topLevelNodeModulesIndex:n,topLevelPackageNameIndex:r,packageRootIndex:i,fileNameIndex:o}:void 0}function ik(e){var t;return 341===e.kind?null==(t=e.typeExpression)?void 0:t.type:e.type}function ok(e){switch(e.kind){case 168:case 263:case 264:case 265:case 266:case 346:case 338:case 340:return!0;case 273:return e.isTypeOnly;case 276:case 281:return e.parent.parent.isTypeOnly;default:return!1}}function sk(e){return oI(e)||FA(e)||tI(e)||nI(e)||rI(e)||ok(e)||sI(e)&&!vp(e)&&!yp(e)}function ak(e){if(!Ll(e))return!1;const{isBracketed:t,typeExpression:n}=e;return t||!!n&&316===n.type.kind}function ck(e,t){if(0===e.length)return!1;const n=e.charCodeAt(0);return 35===n?e.length>1&&Ca(e.charCodeAt(1),t):Ca(n,t)}function lk(e){var t;return 0===(null==(t=LE(e))?void 0:t.kind)}function uk(e){return Um(e)&&(e.type&&316===e.type.kind||zc(e).some(ak))}function dk(e){switch(e.kind){case 172:case 171:return!!e.questionToken;case 169:return!!e.questionToken||uk(e);case 348:case 341:return ak(e);default:return!1}}function _k(e){const t=e.kind;return(211===t||212===t)&&CA(e.expression)}function pk(e){return Um(e)&&cA(e)&&zd(e)&&!!ll(e)}function fk(e){return Tn.checkDefined(mk(e))}function mk(e){const t=ll(e);return t&&t.typeExpression&&t.typeExpression.type}function hk(e){return YC(e)?e.escapedText:vk(e)}function gk(e){return YC(e)?kc(e):bk(e)}function yk(e){const t=e.kind;return 80===t||295===t}function vk(e){return`${e.namespace.escapedText}:${kc(e.name)}`}function bk(e){return`${kc(e.namespace)}:${kc(e.name)}`}function xk(e){return YC(e)?kc(e):bk(e)}function Sk(e){return!!(8576&e.flags)}function Tk(e){return 8192&e.flags?e.escapedName:384&e.flags?Tc(""+e.value):Tn.fail()}function wk(e){return!!e&&(nA(e)||rA(e)||gA(e))}function kk(e){return void 0!==e&&!!dK(e.attributes)}var Ek=String.prototype.replace;function Ck(e,t){return Ek.call(e,"*",t)}function Nk(e){return YC(e.name)?e.name.escapedText:Tc(e.name.text)}function Ak(e,t=!1,n=!1,r=!1){return{value:e,isSyntacticallyString:t,resolvedOtherFiles:n,hasExternalReferences:r}}function Ik({evaluateElementAccessExpression:e,evaluateEntityNameExpression:t}){function n(r,i){let o=!1,s=!1,a=!1;switch((r=fg(r)).kind){case 224:const c=n(r.operand,i);if(s=c.resolvedOtherFiles,a=c.hasExternalReferences,"number"==typeof c.value)switch(r.operator){case 40:return Ak(c.value,o,s,a);case 41:return Ak(-c.value,o,s,a);case 55:return Ak(~c.value,o,s,a)}break;case 226:{const e=n(r.left,i),t=n(r.right,i);if(o=(e.isSyntacticallyString||t.isSyntacticallyString)&&40===r.operatorToken.kind,s=e.resolvedOtherFiles||t.resolvedOtherFiles,a=e.hasExternalReferences||t.hasExternalReferences,"number"==typeof e.value&&"number"==typeof t.value)switch(r.operatorToken.kind){case 52:return Ak(e.value|t.value,o,s,a);case 51:return Ak(e.value&t.value,o,s,a);case 49:return Ak(e.value>>t.value,o,s,a);case 50:return Ak(e.value>>>t.value,o,s,a);case 48:return Ak(e.value<<t.value,o,s,a);case 53:return Ak(e.value^t.value,o,s,a);case 42:return Ak(e.value*t.value,o,s,a);case 44:return Ak(e.value/t.value,o,s,a);case 40:return Ak(e.value+t.value,o,s,a);case 41:return Ak(e.value-t.value,o,s,a);case 45:return Ak(e.value%t.value,o,s,a);case 43:return Ak(e.value**t.value,o,s,a)}else if(!("string"!=typeof e.value&&"number"!=typeof e.value||"string"!=typeof t.value&&"number"!=typeof t.value||40!==r.operatorToken.kind))return Ak(""+e.value+t.value,o,s,a);break}case 11:case 15:return Ak(r.text,!0);case 228:return function(e,t){let r=e.head.text,i=!1,o=!1;for(const s of e.templateSpans){const e=n(s.expression,t);if(void 0===e.value)return Ak(void 0,!0);r+=e.value,r+=s.literal.text,i||(i=e.resolvedOtherFiles),o||(o=e.hasExternalReferences)}return Ak(r,!0,i,o)}(r,i);case 9:return Ak(+r.text);case 80:return t(r,i);case 211:if(wb(r))return t(r,i);break;case 212:return e(r,i)}return Ak(void 0,o,s,a)}return n}function Dk(e){return nd(e)&&Pl(e.type)||DD(e)&&Pl(e.typeExpression)}function Pk(e){const t=e.members;for(const n of t)if(176===n.kind&&R_(n.body))return n}function Mk({compilerOptions:e,requireSymbol:t,argumentsSymbol:n,error:r,getSymbolOfDeclaration:i,globals:o,lookup:s,setRequiresScopeChangeCache:a=ht,getRequiresScopeChangeCache:c=ht,onPropertyWithInvalidInitializer:l=ft,onFailedToResolveSymbol:u=ht,onSuccessfullyResolvedSymbol:d=ht}){var _=e.verbatimModuleSyntax?"verbatimModuleSyntax":"isolatedModules",p=nT(e),f=o_();return function(a,c,p,h,b,x){var S,T,w;const k=a;let E,C,N,A,I,D,P=!1;const M=lt(c)?c:c.escapedText;e:for(;a;){if("const"===M&&Dk(a))return;if(gd(a)&&C&&a.name===C&&(C=a,a=a.parent),vd(a)&&a.locals&&!rf(a)&&(E=s(a.locals,M,p))){let e=!0;if(pu(a)&&C&&C!==a.body?(p&E.flags&788968&&320!==C.kind&&(e=!!(262144&E.flags)&&(!!(16&C.flags)||C===a.type||169===C.kind||341===C.kind||342===C.kind||168===C.kind)),p&E.flags&3&&(m(E,a,C)?e=!1:1&E.flags&&(e=169===C.kind||!!(16&C.flags)||C===a.type&&!!bc(E.valueDeclaration,fN)))):194===a.kind&&(e=C===a.trueType),e)break e;E=void 0}switch(P=P||g(a,C),a.kind){case 307:if(!of(a))break;case 267:const t=(null==(S=i(a))?void 0:S.exports)||f;if(307===a.kind||sI(a)&&33554432&a.flags&&!yp(a)){if(E=t.get("default")){const e=Lb(E);if(e&&E.flags&p&&e.escapedName===M)break e;E=void 0}const e=t.get(M);if(e&&2097152===e.flags&&(r_(e,281)||r_(e,280)))break}if("default"!==M&&(E=s(t,M,2623475&p))){if(!YI(a)||!a.commonJsModuleIndicator||(null==(T=E.declarations)?void 0:T.some(Rh)))break e;E=void 0}break;case 266:if(E=s((null==(w=i(a))?void 0:w.exports)||f,M,8&p)){!h||!LS(e)||33554432&a.flags||C_(a)===C_(E.valueDeclaration)||r(k,ws.Cannot_access_0_from_another_file_without_qualification_when_1_is_enabled_Use_2_instead,wc(M),_,`${wc(i(a).escapedName)}.${wc(M)}`);break e}break;case 172:if(!Jv(a)){const e=Pk(a.parent);e&&e.locals&&s(e.locals,M,111551&p)&&(Tn.assertNode(a,gN),A=a)}break;case 263:case 231:case 264:if(E=s(i(a).members||f,M,788968&p)){if(!v(E,a)){E=void 0;break}if(C&&Jv(C))return void(h&&r(k,ws.Static_members_cannot_reference_class_type_parameters));break e}if(SA(a)&&32&p){const e=a.name;if(e&&M===e.escapedText){E=a.symbol;break e}}break;case 233:if(C===a.expression&&96===a.parent.token){const e=a.parent.parent;if(xu(e)&&(E=s(i(e).members,M,788968&p)))return void(h&&r(k,ws.Base_class_expressions_cannot_reference_class_type_parameters))}break;case 167:if(D=a.parent.parent,(xu(D)||264===D.kind)&&(E=s(i(D).members,M,788968&p)))return void(h&&r(k,ws.A_computed_property_name_cannot_reference_a_type_parameter_from_its_containing_type));break;case 219:if(MS(e)>=2)break;case 174:case 176:case 177:case 178:case 262:if(3&p&&"arguments"===M){E=n;break e}break;case 218:if(3&p&&"arguments"===M){E=n;break e}if(16&p){const e=a.name;if(e&&M===e.escapedText){E=a.symbol;break e}}break;case 170:a.parent&&169===a.parent.kind&&(a=a.parent),a.parent&&(bu(a.parent)||263===a.parent.kind)&&(a=a.parent);break;case 346:case 338:case 340:case 351:const o=$h(a);o&&(a=o.parent);break;case 169:C&&(C===a.initializer||C===a.name&&Mu(C))&&(I||(I=a));break;case 208:C&&(C===a.initializer||C===a.name&&Mu(C))&&dy(a)&&!I&&(I=a);break;case 195:if(262144&p){const e=a.typeParameter.name;if(e&&M===e.escapedText){E=a.typeParameter.symbol;break e}}break;case 281:C&&C===a.propertyName&&a.parent.parent.moduleSpecifier&&(a=a.parent.parent.parent)}y(a,C)&&(N=a),C=a,a=PD(a)?Gh(a)||a.parent:(ND(a)||AD(a))&&Yh(a)||a.parent}!b||!E||N&&E===N.symbol||(E.isReferenced|=p);if(!E){if(C&&(Tn.assertNode(C,YI),C.commonJsModuleIndicator&&"exports"===M&&p&C.symbol.flags))return C.symbol;x||(E=s(o,M,p))}if(!E&&k&&Um(k)&&k.parent&&Jm(k.parent,!1))return t;if(h){if(A&&l(k,M,A,E))return;E?d(k,E,p,C,I,P):u(k,c,p,h)}return E};function m(t,n,r){const i=MS(e),o=n;if(fN(r)&&o.body&&t.valueDeclaration&&t.valueDeclaration.pos>=o.body.pos&&t.valueDeclaration.end<=o.body.end&&i>=2){let e=c(o);return void 0===e&&(e=h(o.parameters,(function(e){return s(e.name)||!!e.initializer&&s(e.initializer)}))||!1,a(o,e)),!e}return!1;function s(e){switch(e.kind){case 219:case 218:case 262:case 176:return!1;case 174:case 177:case 178:case 303:return s(e.name);case 172:return Wv(e)?!p:s(e.name);default:return Dl(e)||Cl(e)?i<7:$N(e)&&e.dotDotDotToken&&ZN(e.parent)?i<4:!Du(e)&&(GM(e,s)||!1)}}}function g(e,t){return 219!==e.kind&&218!==e.kind?DN(e)||(mu(e)||172===e.kind&&!Jv(e))&&(!t||t!==e.name):(!t||t!==e.name)&&(!(!e.asteriskToken&&!Kv(e,1024))||!pm(e))}function y(e,t){switch(e.kind){case 169:return!!t&&t===e.name;case 262:case 263:case 264:case 266:case 265:case 267:return!0;default:return!1}}function v(e,t){if(e.declarations)for(const n of e.declarations)if(168===n.kind){if((PD(n.parent)?Xh(n.parent):n.parent)===t)return!(PD(n.parent)&&w(n.parent.parent.tags,Rh))}return!1}}function Ok(e,t=!0){switch(Tn.type(e),e.kind){case 112:case 97:case 9:case 11:case 15:return!0;case 10:return t;case 224:return 41===e.operator?DC(e.operand)||t&&PC(e.operand):40===e.operator&&DC(e.operand);default:return!1}}function Fk(e){for(;217===e.kind;)e=e.expression;return e}function Rk(e){switch(Tn.type(e),e.kind){case 169:case 171:case 172:case 208:case 211:case 212:case 226:case 260:case 277:case 303:return!0;default:return!1}}function Lk(){let e,t,n,r,i;return{createBaseSourceFileNode:function(e){return new(i||(i=tS.getSourceFileConstructor()))(e,-1,-1)},createBaseIdentifierNode:function(e){return new(n||(n=tS.getIdentifierConstructor()))(e,-1,-1)},createBasePrivateIdentifierNode:function(e){return new(r||(r=tS.getPrivateIdentifierConstructor()))(e,-1,-1)},createBaseTokenNode:function(e){return new(t||(t=tS.getTokenConstructor()))(e,-1,-1)},createBaseNode:function(t){return new(e||(e=tS.getNodeConstructor()))(t,-1,-1)}}}function jk(e){let t,n;return{getParenthesizeLeftSideOfBinaryForOperator:function(e){t||(t=new Map);let n=t.get(e);n||(n=t=>o(e,t),t.set(e,n));return n},getParenthesizeRightSideOfBinaryForOperator:function(e){n||(n=new Map);let t=n.get(e);t||(t=t=>s(e,void 0,t),n.set(e,t));return t},parenthesizeLeftSideOfBinary:o,parenthesizeRightSideOfBinary:s,parenthesizeExpressionOfComputedPropertyName:function(t){return pP(t)?e.createParenthesizedExpression(t):t},parenthesizeConditionOfConditionalExpression:function(t){const n=Sy(227,58),r=Ml(t);if(1!==Pt(vy(r),n))return e.createParenthesizedExpression(t);return t},parenthesizeBranchOfConditionalExpression:function(t){return pP(Ml(t))?e.createParenthesizedExpression(t):t},parenthesizeExpressionOfExportDefault:function(t){const n=Ml(t);let r=pP(n);if(!r)switch(Wx(n,!1).kind){case 231:case 218:r=!0}return r?e.createParenthesizedExpression(t):t},parenthesizeExpressionOfNew:function(t){const n=Wx(t,!0);switch(n.kind){case 213:return e.createParenthesizedExpression(t);case 214:return n.arguments?t:e.createParenthesizedExpression(t)}return a(t)},parenthesizeLeftSideOfAccess:a,parenthesizeOperandOfPostfixUnary:function(t){return Qu(t)?t:vM(e.createParenthesizedExpression(t),t)},parenthesizeOperandOfPrefixUnary:function(t){return Zu(t)?t:vM(e.createParenthesizedExpression(t),t)},parenthesizeExpressionsOfCommaDelimitedList:function(t){const n=j(t,c);return vM(e.createNodeArray(n,t.hasTrailingComma),t)},parenthesizeExpressionForDisallowedComma:c,parenthesizeExpressionOfExpressionStatement:function(t){const n=Ml(t);if(iA(n)){const r=n.expression,i=Ml(r).kind;if(218===i||219===i){const i=e.updateCallExpression(n,vM(e.createParenthesizedExpression(r),r),n.typeArguments,n.arguments);return e.restoreOuterExpressions(t,i,8)}}const r=Wx(n,!1).kind;if(210===r||218===r)return vM(e.createParenthesizedExpression(t),t);return t},parenthesizeConciseBodyOfArrowFunction:function(t){if(!OA(t)&&(pP(t)||210===Wx(t,!1).kind))return vM(e.createParenthesizedExpression(t),t);return t},parenthesizeCheckTypeOfConditionalType:l,parenthesizeExtendsTypeOfConditionalType:function(t){if(194===t.kind)return e.createParenthesizedType(t);return t},parenthesizeConstituentTypesOfUnionType:function(t){return e.createNodeArray(j(t,u))},parenthesizeConstituentTypeOfUnionType:u,parenthesizeConstituentTypesOfIntersectionType:function(t){return e.createNodeArray(j(t,d))},parenthesizeConstituentTypeOfIntersectionType:d,parenthesizeOperandOfTypeOperator:_,parenthesizeOperandOfReadonlyTypeOperator:function(t){if(198===t.kind)return e.createParenthesizedType(t);return _(t)},parenthesizeNonArrayTypeOfPostfixType:p,parenthesizeElementTypesOfTupleType:function(t){return e.createNodeArray(j(t,f))},parenthesizeElementTypeOfTupleType:f,parenthesizeTypeOfOptionalType:function(t){return m(t)?e.createParenthesizedType(t):p(t)},parenthesizeTypeArguments:function(t){if($(t))return e.createNodeArray(j(t,g))},parenthesizeLeadingTypeArgument:h};function r(e){if(Vl((e=Ml(e)).kind))return e.kind;if(226===e.kind&&40===e.operatorToken.kind){if(void 0!==e.cachedLiteralKind)return e.cachedLiteralKind;const t=r(e.left),n=Vl(t)&&t===r(e.right)?t:0;return e.cachedLiteralKind=n,n}return 0}function i(t,n,i,o){return 217===Ml(n).kind?n:function(e,t,n,i){const o=Sy(226,e),s=yy(226,e),a=Ml(t);if(!n&&219===t.kind&&o>3)return!0;switch(Pt(vy(a),o)){case-1:return!(!n&&1===s&&229===t.kind);case 1:return!1;case 0:if(n)return 1===s;if(gA(a)&&a.operatorToken.kind===e){if(function(e){return 42===e||52===e||51===e||53===e||28===e}(e))return!1;if(40===e){const e=i?r(i):0;if(Vl(e)&&e===r(a))return!1}}return 0===gy(a)}}(t,n,i,o)?e.createParenthesizedExpression(n):n}function o(e,t){return i(e,t,!0)}function s(e,t,n){return i(e,n,!1,t)}function a(t,n){const r=Ml(t);return!Qu(r)||214===r.kind&&!r.arguments||!n&&Cl(r)?vM(e.createParenthesizedExpression(t),t):t}function c(t){return vy(Ml(t))>Sy(226,28)?t:vM(e.createParenthesizedExpression(t),t)}function l(t){switch(t.kind){case 184:case 185:case 194:return e.createParenthesizedType(t)}return t}function u(t){switch(t.kind){case 192:case 193:return e.createParenthesizedType(t)}return l(t)}function d(t){switch(t.kind){case 192:case 193:return e.createParenthesizedType(t)}return u(t)}function _(t){return 193===t.kind?e.createParenthesizedType(t):d(t)}function p(t){switch(t.kind){case 195:case 198:case 186:return e.createParenthesizedType(t)}return _(t)}function f(t){return m(t)?e.createParenthesizedType(t):t}function m(e){return sD(e)?e.postfix:FN(e)||AN(e)||IN(e)||KN(e)?m(e.type):UN(e)?m(e.falseType):jN(e)||zN(e)?m(Ae(e.types)):!!BN(e)&&(!!e.typeParameter.constraint&&m(e.typeParameter.constraint))}function h(t){return Pu(t)&&t.typeParameters?e.createParenthesizedType(t):t}function g(e,t){return 0===t?h(e):e}}var zk={getParenthesizeLeftSideOfBinaryForOperator:e=>gt,getParenthesizeRightSideOfBinaryForOperator:e=>gt,parenthesizeLeftSideOfBinary:(e,t)=>t,parenthesizeRightSideOfBinary:(e,t,n)=>n,parenthesizeExpressionOfComputedPropertyName:gt,parenthesizeConditionOfConditionalExpression:gt,parenthesizeBranchOfConditionalExpression:gt,parenthesizeExpressionOfExportDefault:gt,parenthesizeExpressionOfNew:e=>_t(e,Qu),parenthesizeLeftSideOfAccess:e=>_t(e,Qu),parenthesizeOperandOfPostfixUnary:e=>_t(e,Qu),parenthesizeOperandOfPrefixUnary:e=>_t(e,Zu),parenthesizeExpressionsOfCommaDelimitedList:e=>_t(e,ql),parenthesizeExpressionForDisallowedComma:gt,parenthesizeExpressionOfExpressionStatement:gt,parenthesizeConciseBodyOfArrowFunction:gt,parenthesizeCheckTypeOfConditionalType:gt,parenthesizeExtendsTypeOfConditionalType:gt,parenthesizeConstituentTypesOfUnionType:e=>_t(e,ql),parenthesizeConstituentTypeOfUnionType:gt,parenthesizeConstituentTypesOfIntersectionType:e=>_t(e,ql),parenthesizeConstituentTypeOfIntersectionType:gt,parenthesizeOperandOfTypeOperator:gt,parenthesizeOperandOfReadonlyTypeOperator:gt,parenthesizeNonArrayTypeOfPostfixType:gt,parenthesizeElementTypesOfTupleType:e=>_t(e,ql),parenthesizeElementTypeOfTupleType:gt,parenthesizeTypeOfOptionalType:gt,parenthesizeTypeArguments:e=>e&&_t(e,ql),parenthesizeLeadingTypeArgument:gt};function Uk(e){return{convertToFunctionBlock:function(t,n){if(OA(t))return t;const r=e.createReturnStatement(t);vM(r,t);const i=e.createBlock([r],n);return vM(i,t),i},convertToFunctionExpression:function(t){var n;if(!t.body)return Tn.fail("Cannot convert a FunctionDeclaration without a body");const r=e.createFunctionExpression(null==(n=Lc(t))?void 0:n.filter((e=>!XC(e)&&!$C(e))),t.asteriskToken,t.name,t.typeParameters,t.parameters,t.type,t.body);aE(r,t),vM(r,t),vE(t)&&bE(r,!0);return r},convertToClassExpression:function(t){var n;const r=e.createClassExpression(null==(n=t.modifiers)?void 0:n.filter((e=>!XC(e)&&!$C(e))),t.name,t.typeParameters,t.heritageClauses,t.members);aE(r,t),vM(r,t),vE(t)&&bE(r,!0);return r},convertToArrayAssignmentElement:t,convertToObjectAssignmentElement:n,convertToAssignmentPattern:r,convertToObjectAssignmentPattern:i,convertToArrayAssignmentPattern:o,convertToAssignmentElementTarget:s};function t(t){if($N(t)){if(t.dotDotDotToken)return Tn.assertNode(t.name,YC),aE(vM(e.createSpreadElement(t.name),t),t);const n=s(t.name);return t.initializer?aE(vM(e.createAssignment(n,t.initializer),t),t):n}return _t(t,td)}function n(t){if($N(t)){if(t.dotDotDotToken)return Tn.assertNode(t.name,YC),aE(vM(e.createSpreadAssignment(t.name),t),t);if(t.propertyName){const n=s(t.name);return aE(vM(e.createPropertyAssignment(t.propertyName,t.initializer?e.createAssignment(n,t.initializer):n),t),t)}return Tn.assertNode(t.name,YC),aE(vM(e.createShorthandPropertyAssignment(t.name,t.initializer),t),t)}return _t(t,Iu)}function r(e){switch(e.kind){case 207:case 209:return o(e);case 206:case 210:return i(e)}}function i(t){return ZN(t)?aE(vM(e.createObjectLiteralExpression(R(t.elements,n)),t),t):_t(t,tA)}function o(n){return XN(n)?aE(vM(e.createArrayLiteralExpression(R(n.elements,t)),n),n):_t(n,eA)}function s(e){return Mu(e)?r(e):_t(e,td)}}var Bk,qk={convertToFunctionBlock:xt,convertToFunctionExpression:xt,convertToClassExpression:xt,convertToArrayAssignmentElement:xt,convertToObjectAssignmentElement:xt,convertToAssignmentPattern:xt,convertToObjectAssignmentPattern:xt,convertToArrayAssignmentPattern:xt,convertToAssignmentElementTarget:xt},Vk=0,Kk=(e=>(e[e.None=0]="None",e[e.NoParenthesizerRules=1]="NoParenthesizerRules",e[e.NoNodeConverters=2]="NoNodeConverters",e[e.NoIndentationOnFreshPropertyAccess=4]="NoIndentationOnFreshPropertyAccess",e[e.NoOriginalNode=8]="NoOriginalNode",e))(Kk||{}),Jk=[];function Wk(e){Jk.push(e)}function Hk(e,t){const n=8&e?gt:aE,r=St((()=>1&e?zk:jk(v))),i=St((()=>2&e?qk:Uk(v))),o=Tt((e=>(t,n)=>Ot(t,e,n))),s=Tt((e=>t=>Pt(e,t))),a=Tt((e=>t=>Mt(t,e))),c=Tt((e=>()=>function(e){return x(e)}(e))),l=Tt((e=>t=>dr(e,t))),u=Tt((e=>(t,n)=>function(e,t,n){return t.type!==n?Pi(dr(e,n),t):t}(e,t,n))),d=Tt((e=>(t,n)=>ur(e,t,n))),p=Tt((e=>(t,n)=>function(e,t,n){return t.type!==n?Pi(ur(e,n,t.postfix),t):t}(e,t,n))),f=Tt((e=>(t,n)=>Mr(e,t,n))),m=Tt((e=>(t,n,r)=>function(e,t,n=hr(t),r){return t.tagName!==n||t.comment!==r?Pi(Mr(e,n,r),t):t}(e,t,n,r))),g=Tt((e=>(t,n,r)=>Or(e,t,n,r))),y=Tt((e=>(t,n,r,i)=>function(e,t,n=hr(t),r,i){return t.tagName!==n||t.typeExpression!==r||t.comment!==i?Pi(Or(e,n,r,i),t):t}(e,t,n,r,i))),v={get parenthesizer(){return r()},get converters(){return i()},baseFactory:t,flags:e,createNodeArray:b,createNumericLiteral:k,createBigIntLiteral:E,createStringLiteral:N,createStringLiteralFromNode:function(e){const t=C($g(e),void 0);return t.textSourceNode=e,t},createRegularExpressionLiteral:A,createLiteralLikeNode:function(e,t){switch(e){case 9:return k(t,0);case 10:return E(t);case 11:return N(t,void 0);case 12:return Jr(t,!1);case 13:return Jr(t,!0);case 14:return A(t);case 15:return Bt(e,t,void 0,0)}},createIdentifier:P,createTempVariable:M,createLoopVariable:function(e){let t=2;e&&(t|=8);return D("",t,void 0,void 0)},createUniqueName:function(e,t=0,n,r){return Tn.assert(!(7&t),"Argument out of range: flags"),Tn.assert(32!=(48&t),"GeneratedIdentifierFlags.FileLevel cannot be set without also setting GeneratedIdentifierFlags.Optimistic"),D(e,3|t,n,r)},getGeneratedNameForNode:O,createPrivateIdentifier:function(e){cn(e,"#")||Tn.fail("First character of private identifier must be #: "+e);return F(Tc(e))},createUniquePrivateName:function(e,t,n){e&&!cn(e,"#")&&Tn.fail("First character of private identifier must be #: "+e);return R(e??"",8|(e?3:1),t,n)},getGeneratedPrivateNameForNode:function(e,t,n){const r=Sl(e)?dM(!0,t,e,n,kc):`#generated@${Gz(e)}`,i=R(r,4|(t||n?16:0),t,n);return i.original=e,i},createToken:j,createSuper:function(){return j(108)},createThis:z,createNull:U,createTrue:B,createFalse:q,createModifier:K,createModifiersFromModifierFlags:J,createQualifiedName:W,updateQualifiedName:function(e,t,n){return e.left!==t||e.right!==n?Pi(W(t,n),e):e},createComputedPropertyName:H,updateComputedPropertyName:function(e,t){return e.expression!==t?Pi(H(t),e):e},createTypeParameterDeclaration:G,updateTypeParameterDeclaration:Q,createParameterDeclaration:Y,updateParameterDeclaration:Z,createDecorator:X,updateDecorator:function(e,t){return e.expression!==t?Pi(X(t),e):e},createPropertySignature:ee,updatePropertySignature:te,createPropertyDeclaration:ne,updatePropertyDeclaration:re,createMethodSignature:ie,updateMethodSignature:oe,createMethodDeclaration:se,updateMethodDeclaration:ae,createConstructorDeclaration:le,updateConstructorDeclaration:ue,createGetAccessorDeclaration:de,updateGetAccessorDeclaration:pe,createSetAccessorDeclaration:fe,updateSetAccessorDeclaration:me,createCallSignature:he,updateCallSignature:function(e,t,n,r){return e.typeParameters!==t||e.parameters!==n||e.type!==r?w(he(t,n,r),e):e},createConstructSignature:ge,updateConstructSignature:function(e,t,n,r){return e.typeParameters!==t||e.parameters!==n||e.type!==r?w(ge(t,n,r),e):e},createIndexSignature:ye,updateIndexSignature:ve,createClassStaticBlockDeclaration:ce,updateClassStaticBlockDeclaration:function(e,t){return e.body!==t?function(e,t){e!==t&&(e.modifiers=t.modifiers);return Pi(e,t)}(ce(t),e):e},createTemplateLiteralTypeSpan:be,updateTemplateLiteralTypeSpan:function(e,t,n){return e.type!==t||e.literal!==n?Pi(be(t,n),e):e},createKeywordTypeNode:function(e){return j(e)},createTypePredicateNode:xe,updateTypePredicateNode:function(e,t,n,r){return e.assertsModifier!==t||e.parameterName!==n||e.type!==r?Pi(xe(t,n,r),e):e},createTypeReferenceNode:Se,updateTypeReferenceNode:function(e,t,n){return e.typeName!==t||e.typeArguments!==n?Pi(Se(t,n),e):e},createFunctionTypeNode:Te,updateFunctionTypeNode:function(e,t,n,r){return e.typeParameters!==t||e.parameters!==n||e.type!==r?function(e,t){e!==t&&(e.modifiers=t.modifiers);return w(e,t)}(Te(t,n,r),e):e},createConstructorTypeNode:we,updateConstructorTypeNode:function(...e){return 5===e.length?Ee(...e):4===e.length?function(e,t,n,r){return Ee(e,e.modifiers,t,n,r)}(...e):Tn.fail("Incorrect number of arguments specified.")},createTypeQueryNode:Ce,updateTypeQueryNode:function(e,t,n){return e.exprName!==t||e.typeArguments!==n?Pi(Ce(t,n),e):e},createTypeLiteralNode:Ae,updateTypeLiteralNode:function(e,t){return e.members!==t?Pi(Ae(t),e):e},createArrayTypeNode:De,updateArrayTypeNode:function(e,t){return e.elementType!==t?Pi(De(t),e):e},createTupleTypeNode:Pe,updateTupleTypeNode:function(e,t){return e.elements!==t?Pi(Pe(t),e):e},createNamedTupleMember:Me,updateNamedTupleMember:function(e,t,n,r,i){return e.dotDotDotToken!==t||e.name!==n||e.questionToken!==r||e.type!==i?Pi(Me(t,n,r,i),e):e},createOptionalTypeNode:Oe,updateOptionalTypeNode:function(e,t){return e.type!==t?Pi(Oe(t),e):e},createRestTypeNode:Fe,updateRestTypeNode:function(e,t){return e.type!==t?Pi(Fe(t),e):e},createUnionTypeNode:function(e){return Le(192,e,r().parenthesizeConstituentTypesOfUnionType)},updateUnionTypeNode:function(e,t){return ze(e,t,r().parenthesizeConstituentTypesOfUnionType)},createIntersectionTypeNode:function(e){return Le(193,e,r().parenthesizeConstituentTypesOfIntersectionType)},updateIntersectionTypeNode:function(e,t){return ze(e,t,r().parenthesizeConstituentTypesOfIntersectionType)},createConditionalTypeNode:Ue,updateConditionalTypeNode:function(e,t,n,r,i){return e.checkType!==t||e.extendsType!==n||e.trueType!==r||e.falseType!==i?Pi(Ue(t,n,r,i),e):e},createInferTypeNode:Be,updateInferTypeNode:function(e,t){return e.typeParameter!==t?Pi(Be(t),e):e},createImportTypeNode:Ve,updateImportTypeNode:function(e,t,n,r,i,o=e.isTypeOf){return e.argument!==t||e.attributes!==n||e.qualifier!==r||e.typeArguments!==i||e.isTypeOf!==o?Pi(Ve(t,n,r,i,o),e):e},createParenthesizedType:Ke,updateParenthesizedType:function(e,t){return e.type!==t?Pi(Ke(t),e):e},createThisTypeNode:function(){const e=x(197);return e.transformFlags=1,e},createTypeOperatorNode:Je,updateTypeOperatorNode:function(e,t){return e.type!==t?Pi(Je(e.operator,t),e):e},createIndexedAccessTypeNode:We,updateIndexedAccessTypeNode:function(e,t,n){return e.objectType!==t||e.indexType!==n?Pi(We(t,n),e):e},createMappedTypeNode:He,updateMappedTypeNode:function(e,t,n,r,i,o,s){return e.readonlyToken!==t||e.typeParameter!==n||e.nameType!==r||e.questionToken!==i||e.type!==o||e.members!==s?Pi(He(t,n,r,i,o,s),e):e},createLiteralTypeNode:Ge,updateLiteralTypeNode:function(e,t){return e.literal!==t?Pi(Ge(t),e):e},createTemplateLiteralType:qe,updateTemplateLiteralType:function(e,t,n){return e.head!==t||e.templateSpans!==n?Pi(qe(t,n),e):e},createObjectBindingPattern:Qe,updateObjectBindingPattern:function(e,t){return e.elements!==t?Pi(Qe(t),e):e},createArrayBindingPattern:Ye,updateArrayBindingPattern:function(e,t){return e.elements!==t?Pi(Ye(t),e):e},createBindingElement:Ze,updateBindingElement:function(e,t,n,r,i){return e.propertyName!==n||e.dotDotDotToken!==t||e.name!==r||e.initializer!==i?Pi(Ze(t,n,r,i),e):e},createArrayLiteralExpression:Xe,updateArrayLiteralExpression:function(e,t){return e.elements!==t?Pi(Xe(t,e.multiLine),e):e},createObjectLiteralExpression:$e,updateObjectLiteralExpression:function(e,t){return e.properties!==t?Pi($e(t,e.multiLine),e):e},createPropertyAccessExpression:4&e?(e,t)=>dE(tt(e,t),262144):tt,updatePropertyAccessExpression:function(e,t,n){if(wl(e))return rt(e,t,e.questionDotToken,_t(n,YC));return e.expression!==t||e.name!==n?Pi(tt(t,n),e):e},createPropertyAccessChain:4&e?(e,t,n)=>dE(nt(e,t,n),262144):nt,updatePropertyAccessChain:rt,createElementAccessExpression:ot,updateElementAccessExpression:function(e,t,n){if(kl(e))return ct(e,t,e.questionDotToken,n);return e.expression!==t||e.argumentExpression!==n?Pi(ot(t,n),e):e},createElementAccessChain:st,updateElementAccessChain:ct,createCallExpression:ut,updateCallExpression:function(e,t,n,r){if(El(e))return pt(e,t,e.questionDotToken,n,r);return e.expression!==t||e.typeArguments!==n||e.arguments!==r?Pi(ut(t,n,r),e):e},createCallChain:dt,updateCallChain:pt,createNewExpression:ft,updateNewExpression:function(e,t,n,r){return e.expression!==t||e.typeArguments!==n||e.arguments!==r?Pi(ft(t,n,r),e):e},createTaggedTemplateExpression:ht,updateTaggedTemplateExpression:function(e,t,n,r){return e.tag!==t||e.typeArguments!==n||e.template!==r?Pi(ht(t,n,r),e):e},createTypeAssertion:yt,updateTypeAssertion:vt,createParenthesizedExpression:bt,updateParenthesizedExpression:xt,createFunctionExpression:wt,updateFunctionExpression:kt,createArrowFunction:Et,updateArrowFunction:Ct,createDeleteExpression:Nt,updateDeleteExpression:function(e,t){return e.expression!==t?Pi(Nt(t),e):e},createTypeOfExpression:At,updateTypeOfExpression:function(e,t){return e.expression!==t?Pi(At(t),e):e},createVoidExpression:It,updateVoidExpression:function(e,t){return e.expression!==t?Pi(It(t),e):e},createAwaitExpression:Dt,updateAwaitExpression:function(e,t){return e.expression!==t?Pi(Dt(t),e):e},createPrefixUnaryExpression:Pt,updatePrefixUnaryExpression:function(e,t){return e.operand!==t?Pi(Pt(e.operator,t),e):e},createPostfixUnaryExpression:Mt,updatePostfixUnaryExpression:function(e,t){return e.operand!==t?Pi(Mt(t,e.operator),e):e},createBinaryExpression:Ot,updateBinaryExpression:function(e,t,n,r){return e.left!==t||e.operatorToken!==n||e.right!==r?Pi(Ot(t,n,r),e):e},createConditionalExpression:Rt,updateConditionalExpression:function(e,t,n,r,i,o){return e.condition!==t||e.questionToken!==n||e.whenTrue!==r||e.colonToken!==i||e.whenFalse!==o?Pi(Rt(t,n,r,i,o),e):e},createTemplateExpression:Lt,updateTemplateExpression:function(e,t,n){return e.head!==t||e.templateSpans!==n?Pi(Lt(t,n),e):e},createTemplateHead:function(e,t,n){return Bt(16,e=jt(16,e,t,n),t,n)},createTemplateMiddle:function(e,t,n){return Bt(17,e=jt(16,e,t,n),t,n)},createTemplateTail:function(e,t,n){return Bt(18,e=jt(16,e,t,n),t,n)},createNoSubstitutionTemplateLiteral:function(e,t,n){return Ut(15,e=jt(16,e,t,n),t,n)},createTemplateLiteralLikeNode:Bt,createYieldExpression:qt,updateYieldExpression:function(e,t,n){return e.expression!==n||e.asteriskToken!==t?Pi(qt(t,n),e):e},createSpreadElement:Vt,updateSpreadElement:function(e,t){return e.expression!==t?Pi(Vt(t),e):e},createClassExpression:Kt,updateClassExpression:Jt,createOmittedExpression:function(){return x(232)},createExpressionWithTypeArguments:Wt,updateExpressionWithTypeArguments:function(e,t,n){return e.expression!==t||e.typeArguments!==n?Pi(Wt(t,n),e):e},createAsExpression:Ht,updateAsExpression:Gt,createNonNullExpression:Qt,updateNonNullExpression:Yt,createSatisfiesExpression:Zt,updateSatisfiesExpression:Xt,createNonNullChain:$t,updateNonNullChain:en,createMetaProperty:tn,updateMetaProperty:function(e,t){return e.name!==t?Pi(tn(e.keywordToken,t),e):e},createTemplateSpan:nn,updateTemplateSpan:function(e,t,n){return e.expression!==t||e.literal!==n?Pi(nn(t,n),e):e},createSemicolonClassElement:function(){const e=x(240);return e.transformFlags|=1024,e},createBlock:rn,updateBlock:function(e,t){return e.statements!==t?Pi(rn(t,e.multiLine),e):e},createVariableStatement:on,updateVariableStatement:sn,createEmptyStatement:an,createExpressionStatement:ln,updateExpressionStatement:function(e,t){return e.expression!==t?Pi(ln(t),e):e},createIfStatement:un,updateIfStatement:function(e,t,n,r){return e.expression!==t||e.thenStatement!==n||e.elseStatement!==r?Pi(un(t,n,r),e):e},createDoStatement:dn,updateDoStatement:function(e,t,n){return e.statement!==t||e.expression!==n?Pi(dn(t,n),e):e},createWhileStatement:_n,updateWhileStatement:function(e,t,n){return e.expression!==t||e.statement!==n?Pi(_n(t,n),e):e},createForStatement:pn,updateForStatement:function(e,t,n,r,i){return e.initializer!==t||e.condition!==n||e.incrementor!==r||e.statement!==i?Pi(pn(t,n,r,i),e):e},createForInStatement:fn,updateForInStatement:function(e,t,n,r){return e.initializer!==t||e.expression!==n||e.statement!==r?Pi(fn(t,n,r),e):e},createForOfStatement:mn,updateForOfStatement:function(e,t,n,r,i){return e.awaitModifier!==t||e.initializer!==n||e.expression!==r||e.statement!==i?Pi(mn(t,n,r,i),e):e},createContinueStatement:hn,updateContinueStatement:function(e,t){return e.label!==t?Pi(hn(t),e):e},createBreakStatement:gn,updateBreakStatement:function(e,t){return e.label!==t?Pi(gn(t),e):e},createReturnStatement:yn,updateReturnStatement:function(e,t){return e.expression!==t?Pi(yn(t),e):e},createWithStatement:vn,updateWithStatement:function(e,t,n){return e.expression!==t||e.statement!==n?Pi(vn(t,n),e):e},createSwitchStatement:bn,updateSwitchStatement:function(e,t,n){return e.expression!==t||e.caseBlock!==n?Pi(bn(t,n),e):e},createLabeledStatement:xn,updateLabeledStatement:Sn,createThrowStatement:wn,updateThrowStatement:function(e,t){return e.expression!==t?Pi(wn(t),e):e},createTryStatement:kn,updateTryStatement:function(e,t,n,r){return e.tryBlock!==t||e.catchClause!==n||e.finallyBlock!==r?Pi(kn(t,n,r),e):e},createDebuggerStatement:function(){const e=x(259);return e.jsDoc=void 0,e.flowNode=void 0,e},createVariableDeclaration:En,updateVariableDeclaration:function(e,t,n,r,i){return e.name!==t||e.type!==r||e.exclamationToken!==n||e.initializer!==i?Pi(En(t,n,r,i),e):e},createVariableDeclarationList:Cn,updateVariableDeclarationList:function(e,t){return e.declarations!==t?Pi(Cn(t,e.flags),e):e},createFunctionDeclaration:Nn,updateFunctionDeclaration:An,createClassDeclaration:In,updateClassDeclaration:Dn,createInterfaceDeclaration:Pn,updateInterfaceDeclaration:Mn,createTypeAliasDeclaration:On,updateTypeAliasDeclaration:Fn,createEnumDeclaration:Rn,updateEnumDeclaration:Ln,createModuleDeclaration:jn,updateModuleDeclaration:zn,createModuleBlock:Un,updateModuleBlock:function(e,t){return e.statements!==t?Pi(Un(t),e):e},createCaseBlock:Bn,updateCaseBlock:function(e,t){return e.clauses!==t?Pi(Bn(t),e):e},createNamespaceExportDeclaration:qn,updateNamespaceExportDeclaration:function(e,t){return e.name!==t?function(e,t){e!==t&&(e.modifiers=t.modifiers);return Pi(e,t)}(qn(t),e):e},createImportEqualsDeclaration:Vn,updateImportEqualsDeclaration:Kn,createImportDeclaration:Jn,updateImportDeclaration:Wn,createImportClause:Hn,updateImportClause:function(e,t,n,r){return e.isTypeOnly!==t||e.name!==n||e.namedBindings!==r?Pi(Hn(t,n,r),e):e},createAssertClause:Gn,updateAssertClause:function(e,t,n){return e.elements!==t||e.multiLine!==n?Pi(Gn(t,n),e):e},createAssertEntry:Qn,updateAssertEntry:function(e,t,n){return e.name!==t||e.value!==n?Pi(Qn(t,n),e):e},createImportTypeAssertionContainer:Yn,updateImportTypeAssertionContainer:function(e,t,n){return e.assertClause!==t||e.multiLine!==n?Pi(Yn(t,n),e):e},createImportAttributes:Zn,updateImportAttributes:function(e,t,n){return e.elements!==t||e.multiLine!==n?Pi(Zn(t,n,e.token),e):e},createImportAttribute:Xn,updateImportAttribute:function(e,t,n){return e.name!==t||e.value!==n?Pi(Xn(t,n),e):e},createNamespaceImport:$n,updateNamespaceImport:function(e,t){return e.name!==t?Pi($n(t),e):e},createNamespaceExport:er,updateNamespaceExport:function(e,t){return e.name!==t?Pi(er(t),e):e},createNamedImports:tr,updateNamedImports:function(e,t){return e.elements!==t?Pi(tr(t),e):e},createImportSpecifier:nr,updateImportSpecifier:function(e,t,n,r){return e.isTypeOnly!==t||e.propertyName!==n||e.name!==r?Pi(nr(t,n,r),e):e},createExportAssignment:rr,updateExportAssignment:ir,createExportDeclaration:or,updateExportDeclaration:sr,createNamedExports:ar,updateNamedExports:function(e,t){return e.elements!==t?Pi(ar(t),e):e},createExportSpecifier:cr,updateExportSpecifier:function(e,t,n,r){return e.isTypeOnly!==t||e.propertyName!==n||e.name!==r?Pi(cr(t,n,r),e):e},createMissingDeclaration:function(){const e=S(282);return e.jsDoc=void 0,e},createExternalModuleReference:lr,updateExternalModuleReference:function(e,t){return e.expression!==t?Pi(lr(t),e):e},get createJSDocAllType(){return c(312)},get createJSDocUnknownType(){return c(313)},get createJSDocNonNullableType(){return d(315)},get updateJSDocNonNullableType(){return p(315)},get createJSDocNullableType(){return d(314)},get updateJSDocNullableType(){return p(314)},get createJSDocOptionalType(){return l(316)},get updateJSDocOptionalType(){return u(316)},get createJSDocVariadicType(){return l(318)},get updateJSDocVariadicType(){return u(318)},get createJSDocNamepathType(){return l(319)},get updateJSDocNamepathType(){return u(319)},createJSDocFunctionType:_r,updateJSDocFunctionType:function(e,t,n){return e.parameters!==t||e.type!==n?Pi(_r(t,n),e):e},createJSDocTypeLiteral:pr,updateJSDocTypeLiteral:function(e,t,n){return e.jsDocPropertyTags!==t||e.isArrayType!==n?Pi(pr(t,n),e):e},createJSDocTypeExpression:fr,updateJSDocTypeExpression:function(e,t){return e.type!==t?Pi(fr(t),e):e},createJSDocSignature:mr,updateJSDocSignature:function(e,t,n,r){return e.typeParameters!==t||e.parameters!==n||e.type!==r?Pi(mr(t,n,r),e):e},createJSDocTemplateTag:vr,updateJSDocTemplateTag:function(e,t=hr(e),n,r,i){return e.tagName!==t||e.constraint!==n||e.typeParameters!==r||e.comment!==i?Pi(vr(t,n,r,i),e):e},createJSDocTypedefTag:br,updateJSDocTypedefTag:function(e,t=hr(e),n,r,i){return e.tagName!==t||e.typeExpression!==n||e.fullName!==r||e.comment!==i?Pi(br(t,n,r,i),e):e},createJSDocParameterTag:xr,updateJSDocParameterTag:function(e,t=hr(e),n,r,i,o,s){return e.tagName!==t||e.name!==n||e.isBracketed!==r||e.typeExpression!==i||e.isNameFirst!==o||e.comment!==s?Pi(xr(t,n,r,i,o,s),e):e},createJSDocPropertyTag:Sr,updateJSDocPropertyTag:function(e,t=hr(e),n,r,i,o,s){return e.tagName!==t||e.name!==n||e.isBracketed!==r||e.typeExpression!==i||e.isNameFirst!==o||e.comment!==s?Pi(Sr(t,n,r,i,o,s),e):e},createJSDocCallbackTag:Tr,updateJSDocCallbackTag:function(e,t=hr(e),n,r,i){return e.tagName!==t||e.typeExpression!==n||e.fullName!==r||e.comment!==i?Pi(Tr(t,n,r,i),e):e},createJSDocOverloadTag:wr,updateJSDocOverloadTag:function(e,t=hr(e),n,r){return e.tagName!==t||e.typeExpression!==n||e.comment!==r?Pi(wr(t,n,r),e):e},createJSDocAugmentsTag:kr,updateJSDocAugmentsTag:function(e,t=hr(e),n,r){return e.tagName!==t||e.class!==n||e.comment!==r?Pi(kr(t,n,r),e):e},createJSDocImplementsTag:Er,updateJSDocImplementsTag:function(e,t=hr(e),n,r){return e.tagName!==t||e.class!==n||e.comment!==r?Pi(Er(t,n,r),e):e},createJSDocSeeTag:Cr,updateJSDocSeeTag:function(e,t,n,r){return e.tagName!==t||e.name!==n||e.comment!==r?Pi(Cr(t,n,r),e):e},createJSDocImportTag:Lr,updateJSDocImportTag:function(e,t,n,r,i,o){return e.tagName!==t||e.comment!==o||e.importClause!==n||e.moduleSpecifier!==r||e.attributes!==i?Pi(Lr(t,n,r,i,o),e):e},createJSDocNameReference:Nr,updateJSDocNameReference:function(e,t){return e.name!==t?Pi(Nr(t),e):e},createJSDocMemberName:Ar,updateJSDocMemberName:function(e,t,n){return e.left!==t||e.right!==n?Pi(Ar(t,n),e):e},createJSDocLink:Ir,updateJSDocLink:function(e,t,n){return e.name!==t?Pi(Ir(t,n),e):e},createJSDocLinkCode:Dr,updateJSDocLinkCode:function(e,t,n){return e.name!==t?Pi(Dr(t,n),e):e},createJSDocLinkPlain:Pr,updateJSDocLinkPlain:function(e,t,n){return e.name!==t?Pi(Pr(t,n),e):e},get createJSDocTypeTag(){return g(344)},get updateJSDocTypeTag(){return y(344)},get createJSDocReturnTag(){return g(342)},get updateJSDocReturnTag(){return y(342)},get createJSDocThisTag(){return g(343)},get updateJSDocThisTag(){return y(343)},get createJSDocAuthorTag(){return f(330)},get updateJSDocAuthorTag(){return m(330)},get createJSDocClassTag(){return f(332)},get updateJSDocClassTag(){return m(332)},get createJSDocPublicTag(){return f(333)},get updateJSDocPublicTag(){return m(333)},get createJSDocPrivateTag(){return f(334)},get updateJSDocPrivateTag(){return m(334)},get createJSDocProtectedTag(){return f(335)},get updateJSDocProtectedTag(){return m(335)},get createJSDocReadonlyTag(){return f(336)},get updateJSDocReadonlyTag(){return m(336)},get createJSDocOverrideTag(){return f(337)},get updateJSDocOverrideTag(){return m(337)},get createJSDocDeprecatedTag(){return f(331)},get updateJSDocDeprecatedTag(){return m(331)},get createJSDocThrowsTag(){return g(349)},get updateJSDocThrowsTag(){return y(349)},get createJSDocSatisfiesTag(){return g(350)},get updateJSDocSatisfiesTag(){return y(350)},createJSDocEnumTag:Rr,updateJSDocEnumTag:function(e,t=hr(e),n,r){return e.tagName!==t||e.typeExpression!==n||e.comment!==r?Pi(Rr(t,n,r),e):e},createJSDocUnknownTag:Fr,updateJSDocUnknownTag:function(e,t,n){return e.tagName!==t||e.comment!==n?Pi(Fr(t,n),e):e},createJSDocText:jr,updateJSDocText:function(e,t){return e.text!==t?Pi(jr(t),e):e},createJSDocComment:zr,updateJSDocComment:function(e,t,n){return e.comment!==t||e.tags!==n?Pi(zr(t,n),e):e},createJsxElement:Ur,updateJsxElement:function(e,t,n,r){return e.openingElement!==t||e.children!==n||e.closingElement!==r?Pi(Ur(t,n,r),e):e},createJsxSelfClosingElement:Br,updateJsxSelfClosingElement:function(e,t,n,r){return e.tagName!==t||e.typeArguments!==n||e.attributes!==r?Pi(Br(t,n,r),e):e},createJsxOpeningElement:qr,updateJsxOpeningElement:function(e,t,n,r){return e.tagName!==t||e.typeArguments!==n||e.attributes!==r?Pi(qr(t,n,r),e):e},createJsxClosingElement:Vr,updateJsxClosingElement:function(e,t){return e.tagName!==t?Pi(Vr(t),e):e},createJsxFragment:Kr,createJsxText:Jr,updateJsxText:function(e,t,n){return e.text!==t||e.containsOnlyTriviaWhiteSpaces!==n?Pi(Jr(t,n),e):e},createJsxOpeningFragment:function(){const e=x(289);return e.transformFlags|=2,e},createJsxJsxClosingFragment:function(){const e=x(290);return e.transformFlags|=2,e},updateJsxFragment:function(e,t,n,r){return e.openingFragment!==t||e.children!==n||e.closingFragment!==r?Pi(Kr(t,n,r),e):e},createJsxAttribute:Wr,updateJsxAttribute:function(e,t,n){return e.name!==t||e.initializer!==n?Pi(Wr(t,n),e):e},createJsxAttributes:Hr,updateJsxAttributes:function(e,t){return e.properties!==t?Pi(Hr(t),e):e},createJsxSpreadAttribute:Gr,updateJsxSpreadAttribute:function(e,t){return e.expression!==t?Pi(Gr(t),e):e},createJsxExpression:Qr,updateJsxExpression:function(e,t){return e.expression!==t?Pi(Qr(e.dotDotDotToken,t),e):e},createJsxNamespacedName:Yr,updateJsxNamespacedName:function(e,t,n){return e.namespace!==t||e.name!==n?Pi(Yr(t,n),e):e},createCaseClause:Zr,updateCaseClause:function(e,t,n){return e.expression!==t||e.statements!==n?Pi(Zr(t,n),e):e},createDefaultClause:Xr,updateDefaultClause:function(e,t){return e.statements!==t?Pi(Xr(t),e):e},createHeritageClause:$r,updateHeritageClause:function(e,t){return e.types!==t?Pi($r(e.token,t),e):e},createCatchClause:ei,updateCatchClause:function(e,t,n){return e.variableDeclaration!==t||e.block!==n?Pi(ei(t,n),e):e},createPropertyAssignment:ti,updatePropertyAssignment:ni,createShorthandPropertyAssignment:ri,updateShorthandPropertyAssignment:function(e,t,n){return e.name!==t||e.objectAssignmentInitializer!==n?function(e,t){e!==t&&(e.modifiers=t.modifiers,e.questionToken=t.questionToken,e.exclamationToken=t.exclamationToken,e.equalsToken=t.equalsToken);return Pi(e,t)}(ri(t,n),e):e},createSpreadAssignment:ii,updateSpreadAssignment:function(e,t){return e.expression!==t?Pi(ii(t),e):e},createEnumMember:oi,updateEnumMember:function(e,t,n){return e.name!==t||e.initializer!==n?Pi(oi(t,n),e):e},createSourceFile:function(e,n,r){const i=t.createBaseSourceFileNode(307);return i.statements=b(e),i.endOfFileToken=n,i.flags|=r,i.text="",i.fileName="",i.path="",i.resolvedPath="",i.originalFileName="",i.languageVersion=1,i.languageVariant=0,i.scriptKind=0,i.isDeclarationFile=!1,i.hasNoDefaultLib=!1,i.transformFlags|=$k(i.statements)|Xk(i.endOfFileToken),i.locals=void 0,i.nextContainer=void 0,i.endFlowNode=void 0,i.nodeCount=0,i.identifierCount=0,i.symbolCount=0,i.parseDiagnostics=void 0,i.bindDiagnostics=void 0,i.bindSuggestionDiagnostics=void 0,i.lineMap=void 0,i.externalModuleIndicator=void 0,i.setExternalModuleIndicator=void 0,i.pragmas=void 0,i.checkJsDirective=void 0,i.referencedFiles=void 0,i.typeReferenceDirectives=void 0,i.libReferenceDirectives=void 0,i.amdDependencies=void 0,i.commentDirectives=void 0,i.identifiers=void 0,i.packageJsonLocations=void 0,i.packageJsonScope=void 0,i.imports=void 0,i.moduleAugmentations=void 0,i.ambientModuleNames=void 0,i.classifiableNames=void 0,i.impliedNodeFormat=void 0,i},updateSourceFile:function(e,t,n=e.isDeclarationFile,r=e.referencedFiles,i=e.typeReferenceDirectives,o=e.hasNoDefaultLib,s=e.libReferenceDirectives){return e.statements!==t||e.isDeclarationFile!==n||e.referencedFiles!==r||e.typeReferenceDirectives!==i||e.hasNoDefaultLib!==o||e.libReferenceDirectives!==s?Pi(function(e,t,n,r,i,o,s){const a=ai(e);return a.statements=b(t),a.isDeclarationFile=n,a.referencedFiles=r,a.typeReferenceDirectives=i,a.hasNoDefaultLib=o,a.libReferenceDirectives=s,a.transformFlags=$k(a.statements)|Xk(a.endOfFileToken),a}(e,t,n,r,i,o,s),e):e},createRedirectedSourceFile:si,createBundle:ci,updateBundle:function(e,t){return e.sourceFiles!==t?Pi(ci(t),e):e},createSyntheticExpression:function(e,t=!1,n){const r=x(237);return r.type=e,r.isSpread=t,r.tupleNameSource=n,r},createSyntaxList:function(e){const t=x(352);return t._children=e,t},createNotEmittedStatement:function(e){const t=x(353);return t.original=e,vM(t,e),t},createPartiallyEmittedExpression:li,updatePartiallyEmittedExpression:ui,createCommaListExpression:_i,updateCommaListExpression:function(e,t){return e.elements!==t?Pi(_i(t),e):e},createSyntheticReferenceExpression:pi,updateSyntheticReferenceExpression:function(e,t,n){return e.expression!==t||e.thisArg!==n?Pi(pi(t,n),e):e},cloneNode:fi,get createComma(){return o(28)},get createAssignment(){return o(64)},get createLogicalOr(){return o(57)},get createLogicalAnd(){return o(56)},get createBitwiseOr(){return o(52)},get createBitwiseXor(){return o(53)},get createBitwiseAnd(){return o(51)},get createStrictEquality(){return o(37)},get createStrictInequality(){return o(38)},get createEquality(){return o(35)},get createInequality(){return o(36)},get createLessThan(){return o(30)},get createLessThanEquals(){return o(33)},get createGreaterThan(){return o(32)},get createGreaterThanEquals(){return o(34)},get createLeftShift(){return o(48)},get createRightShift(){return o(49)},get createUnsignedRightShift(){return o(50)},get createAdd(){return o(40)},get createSubtract(){return o(41)},get createMultiply(){return o(42)},get createDivide(){return o(44)},get createModulo(){return o(45)},get createExponent(){return o(43)},get createPrefixPlus(){return s(40)},get createPrefixMinus(){return s(41)},get createPrefixIncrement(){return s(46)},get createPrefixDecrement(){return s(47)},get createBitwiseNot(){return s(55)},get createLogicalNot(){return s(54)},get createPostfixIncrement(){return a(46)},get createPostfixDecrement(){return a(47)},createImmediatelyInvokedFunctionExpression:function(e,t,n){return ut(wt(void 0,void 0,void 0,void 0,t?[t]:[],void 0,rn(e,!0)),void 0,n?[n]:[])},createImmediatelyInvokedArrowFunction:function(e,t,n){return ut(Et(void 0,void 0,t?[t]:[],void 0,void 0,rn(e,!0)),void 0,n?[n]:[])},createVoidZero:mi,createExportDefault:function(e){return rr(void 0,!1,e)},createExternalModuleExport:function(e){return or(void 0,!1,ar([cr(!1,void 0,e)]))},createTypeCheck:function(e,t){return"null"===t?v.createStrictEquality(e,U()):"undefined"===t?v.createStrictEquality(e,mi()):v.createStrictEquality(At(e),N(t))},createIsNotTypeCheck:function(e,t){return"null"===t?v.createStrictInequality(e,U()):"undefined"===t?v.createStrictInequality(e,mi()):v.createStrictInequality(At(e),N(t))},createMethodCall:hi,createGlobalMethodCall:gi,createFunctionBindCall:function(e,t,n){return hi(e,"bind",[t,...n])},createFunctionCallCall:function(e,t,n){return hi(e,"call",[t,...n])},createFunctionApplyCall:function(e,t,n){return hi(e,"apply",[t,n])},createArraySliceCall:function(e,t){return hi(e,"slice",void 0===t?[]:[Ai(t)])},createArrayConcatCall:function(e,t){return hi(e,"concat",t)},createObjectDefinePropertyCall:function(e,t,n){return gi("Object","defineProperty",[e,Ai(t),n])},createObjectGetOwnPropertyDescriptorCall:function(e,t){return gi("Object","getOwnPropertyDescriptor",[e,Ai(t)])},createReflectGetCall:function(e,t,n){return gi("Reflect","get",n?[e,t,n]:[e,t])},createReflectSetCall:function(e,t,n,r){return gi("Reflect","set",r?[e,t,n,r]:[e,t,n])},createPropertyDescriptor:function(e,t){const n=[];yi(n,"enumerable",Ai(e.enumerable)),yi(n,"configurable",Ai(e.configurable));let r=yi(n,"writable",Ai(e.writable));r=yi(n,"value",e.value)||r;let i=yi(n,"get",e.get);return i=yi(n,"set",e.set)||i,Tn.assert(!(r&&i),"A PropertyDescriptor may not be both an accessor descriptor and a data descriptor."),$e(n,!t)},createCallBinding:function(e,t,n,i=!1){const o=gP(e,15);let s,a;mm(o)?(s=z(),a=o):cN(o)?(s=z(),a=void 0!==n&&n<2?vM(P("_super"),o):o):8192&rp(o)?(s=mi(),a=r().parenthesizeLeftSideOfAccess(o,!1)):nA(o)?vi(o.expression,i)?(s=M(t),a=tt(vM(v.createAssignment(s,o.expression),o.expression),o.name),vM(a,o)):(s=o.expression,a=o):rA(o)?vi(o.expression,i)?(s=M(t),a=ot(vM(v.createAssignment(s,o.expression),o.expression),o.argumentExpression),vM(a,o)):(s=o.expression,a=o):(s=mi(),a=r().parenthesizeLeftSideOfAccess(e,!1));return{target:a,thisArg:s}},createAssignmentTargetWrapper:function(e,t){return tt(bt($e([fe(void 0,"value",[Y(void 0,void 0,e,void 0,void 0,void 0)],rn([ln(t)]))])),"value")},inlineExpressions:function(e){return e.length>10?_i(e):Re(e,v.createComma)},getInternalName:function(e,t,n){return bi(e,t,n,98304)},getLocalName:function(e,t,n,r){return bi(e,t,n,32768,r)},getExportName:xi,getDeclarationName:function(e,t,n){return bi(e,t,n)},getNamespaceMemberName:Si,getExternalModuleOrNamespaceExportName:function(e,t,n,r){if(e&&Kv(t,32))return Si(e,bi(t),n,r);return xi(t,n,r)},restoreOuterExpressions:function e(t,n,r=15){if(t&&hP(t,r)&&(i=t,!(cA(i)&&fy(i)&&fy(mE(i))&&fy(xE(i)))||$(TE(i))||$(EE(i))))return function(e,t){switch(e.kind){case 217:return xt(e,t);case 216:return vt(e,e.type,t);case 234:return Gt(e,t,e.type);case 238:return Xt(e,t,e.type);case 235:return Yt(e,t);case 354:return ui(e,t)}}(t,e(t.expression,n));var i;return n},restoreEnclosingLabel:function e(t,n,r){if(!n)return t;const i=Sn(n,n.label,QA(n.statement)?e(t,n.statement):t);r&&r(n);return i},createUseStrictPrologue:Ti,copyPrologue:function(e,t,n,r){const i=wi(e,t,0,n);return ki(e,t,i,r)},copyStandardPrologue:wi,copyCustomPrologue:ki,ensureUseStrict:function(e){if(!uP(e))return vM(b([Ti(),...e]),e);return e},liftToBlock:function(e){return Tn.assert(T(e,Ed),"Cannot lift nodes to a Block."),Ie(e)||rn(e)},mergeLexicalEnvironment:function(e,t){if(!$(t))return e;const n=Ei(e,yf,0),r=Ei(e,bf,n),i=Ei(e,Sf,r),o=Ei(t,yf,0),s=Ei(t,bf,o),a=Ei(t,Sf,s),c=Ei(t,vf,a);Tn.assert(c===t.length,"Expected declarations to be valid standard or custom prologues");const l=ql(e)?e.slice():e;c>a&&l.splice(i,0,...t.slice(a,c));a>s&&l.splice(r,0,...t.slice(s,a));s>o&&l.splice(n,0,...t.slice(o,s));if(o>0)if(0===n)l.splice(0,0,...t.slice(0,o));else{const r=new Map;for(let t=0;t<n;t++){const n=e[t];r.set(n.expression.text,!0)}for(let e=o-1;e>=0;e--){const n=t[e];r.has(n.expression.text)||l.unshift(n)}}if(ql(e))return vM(b(l,e.hasTrailingComma),e);return e},replaceModifiers:function(e,t){let n;n="number"==typeof t?J(t):t;return pN(e)?Q(e,n,e.name,e.constraint,e.default):fN(e)?Z(e,n,e.dotDotDotToken,e.name,e.questionToken,e.type,e.initializer):IN(e)?Ee(e,n,e.typeParameters,e.parameters,e.type):hN(e)?te(e,n,e.name,e.questionToken,e.type):gN(e)?re(e,n,e.name,e.questionToken??e.exclamationToken,e.type,e.initializer):yN(e)?oe(e,n,e.name,e.questionToken,e.typeParameters,e.parameters,e.type):vN(e)?ae(e,n,e.asteriskToken,e.name,e.questionToken,e.typeParameters,e.parameters,e.type,e.body):xN(e)?ue(e,n,e.parameters,e.body):SN(e)?pe(e,n,e.name,e.parameters,e.type,e.body):TN(e)?me(e,n,e.name,e.parameters,e.body):EN(e)?ve(e,n,e.parameters,e.type):lA(e)?kt(e,n,e.asteriskToken,e.name,e.typeParameters,e.parameters,e.type,e.body):uA(e)?Ct(e,n,e.typeParameters,e.parameters,e.type,e.equalsGreaterThanToken,e.body):SA(e)?Jt(e,n,e.name,e.typeParameters,e.heritageClauses,e.members):FA(e)?sn(e,n,e.declarationList):tI(e)?An(e,n,e.asteriskToken,e.name,e.typeParameters,e.parameters,e.type,e.body):nI(e)?Dn(e,n,e.name,e.typeParameters,e.heritageClauses,e.members):rI(e)?Mn(e,n,e.name,e.typeParameters,e.heritageClauses,e.members):iI(e)?Fn(e,n,e.name,e.typeParameters,e.type):oI(e)?Ln(e,n,e.name,e.members):sI(e)?zn(e,n,e.name,e.body):uI(e)?Kn(e,n,e.isTypeOnly,e.name,e.moduleReference):dI(e)?Wn(e,n,e.importClause,e.moduleSpecifier,e.attributes):SI(e)?ir(e,n,e.expression):TI(e)?sr(e,n,e.isTypeOnly,e.exportClause,e.moduleSpecifier,e.attributes):Tn.assertNever(e)},replaceDecoratorsAndModifiers:function(e,t){return fN(e)?Z(e,t,e.dotDotDotToken,e.name,e.questionToken,e.type,e.initializer):gN(e)?re(e,t,e.name,e.questionToken??e.exclamationToken,e.type,e.initializer):vN(e)?ae(e,t,e.asteriskToken,e.name,e.questionToken,e.typeParameters,e.parameters,e.type,e.body):SN(e)?pe(e,t,e.name,e.parameters,e.type,e.body):TN(e)?me(e,t,e.name,e.parameters,e.body):SA(e)?Jt(e,t,e.name,e.typeParameters,e.heritageClauses,e.members):nI(e)?Dn(e,t,e.name,e.typeParameters,e.heritageClauses,e.members):Tn.assertNever(e)},replacePropertyName:function(e,t){switch(e.kind){case 177:return pe(e,e.modifiers,t,e.parameters,e.type,e.body);case 178:return me(e,e.modifiers,t,e.parameters,e.body);case 174:return ae(e,e.modifiers,e.asteriskToken,t,e.questionToken,e.typeParameters,e.parameters,e.type,e.body);case 173:return oe(e,e.modifiers,t,e.questionToken,e.typeParameters,e.parameters,e.type);case 172:return re(e,e.modifiers,t,e.questionToken??e.exclamationToken,e.type,e.initializer);case 171:return te(e,e.modifiers,t,e.questionToken,e.type);case 303:return ni(e,t,e.initializer)}}};return h(Jk,(e=>e(v))),v;function b(e,t){if(void 0===e||e===_)e=[];else if(ql(e)){if(void 0===t||e.hasTrailingComma===t)return void 0===e.transformFlags&&eE(e),Tn.attachNodeArrayDebugInfo(e),e;const n=e.slice();return n.pos=e.pos,n.end=e.end,n.hasTrailingComma=t,n.transformFlags=e.transformFlags,Tn.attachNodeArrayDebugInfo(n),n}const n=e.length,r=n>=1&&n<=4?e.slice():e;return r.pos=-1,r.end=-1,r.hasTrailingComma=!!t,r.transformFlags=0,eE(r),Tn.attachNodeArrayDebugInfo(r),r}function x(e){return t.createBaseNode(e)}function S(e){const t=x(e);return t.symbol=void 0,t.localSymbol=void 0,t}function w(e,t){return e!==t&&(e.typeArguments=t.typeArguments),Pi(e,t)}function k(e,t=0){const n="number"==typeof e?e+"":e;Tn.assert(45!==n.charCodeAt(0),"Negative numbers should be created in combination with createPrefixUnaryExpression");const r=S(9);return r.text=n,r.numericLiteralFlags=t,384&t&&(r.transformFlags|=1024),r}function E(e){const t=L(10);return t.text="string"==typeof e?e:Aw(e)+"n",t.transformFlags|=32,t}function C(e,t){const n=S(11);return n.text=e,n.singleQuote=t,n}function N(e,t,n){const r=C(e,t);return r.hasExtendedUnicodeEscape=n,n&&(r.transformFlags|=1024),r}function A(e){const t=L(14);return t.text=e,t}function I(e){const n=t.createBaseIdentifierNode(80);return n.escapedText=e,n.jsDoc=void 0,n.flowNode=void 0,n.symbol=void 0,n}function D(e,t,n,r){const i=I(Tc(e));return KE(i,{flags:t,id:Vk,prefix:n,suffix:r}),Vk++,i}function P(e,t,n){void 0===t&&e&&(t=Ks(e)),80===t&&(t=void 0);const r=I(Tc(e));return n&&(r.flags|=256),"await"===r.escapedText&&(r.transformFlags|=67108864),256&r.flags&&(r.transformFlags|=1024),r}function M(e,t,n,r){let i=1;t&&(i|=8);const o=D("",i,n,r);return e&&e(o),o}function O(e,t=0,n,r){Tn.assert(!(7&t),"Argument out of range: flags");(n||r)&&(t|=16);const i=D(e?Sl(e)?dM(!1,n,e,r,kc):`generated@${Gz(e)}`:"",4|t,n,r);return i.original=e,i}function F(e){const n=t.createBasePrivateIdentifierNode(81);return n.escapedText=e,n.transformFlags|=16777216,n}function R(e,t,n,r){const i=F(Tc(e));return KE(i,{flags:t,id:Vk,prefix:n,suffix:r}),Vk++,i}function L(e){return t.createBaseTokenNode(e)}function j(e){Tn.assert(e>=0&&e<=165,"Invalid token"),Tn.assert(e<=15||e>=18,"Invalid token. Use 'createTemplateLiteralLikeNode' to create template literals."),Tn.assert(e<=9||e>=15,"Invalid token. Use 'createLiteralLikeNode' to create literals."),Tn.assert(80!==e,"Invalid token. Use 'createIdentifier' to create identifiers");const t=L(e);let n=0;switch(e){case 134:n=384;break;case 160:n=4;break;case 125:case 123:case 124:case 148:case 128:case 138:case 87:case 133:case 150:case 163:case 146:case 151:case 103:case 147:case 164:case 154:case 136:case 155:case 116:case 159:case 157:n=1;break;case 108:n=134218752,t.flowNode=void 0;break;case 126:n=1024;break;case 129:n=16777216;break;case 110:n=16384,t.flowNode=void 0}return n&&(t.transformFlags|=n),t}function z(){return j(110)}function U(){return j(106)}function B(){return j(112)}function q(){return j(97)}function K(e){return j(e)}function J(e){const t=[];return 32&e&&t.push(K(95)),128&e&&t.push(K(138)),2048&e&&t.push(K(90)),4096&e&&t.push(K(87)),1&e&&t.push(K(125)),2&e&&t.push(K(123)),4&e&&t.push(K(124)),64&e&&t.push(K(128)),256&e&&t.push(K(126)),16&e&&t.push(K(164)),8&e&&t.push(K(148)),512&e&&t.push(K(129)),1024&e&&t.push(K(134)),8192&e&&t.push(K(103)),16384&e&&t.push(K(147)),t.length?t:void 0}function W(e,t){const n=x(166);return n.left=e,n.right=Ni(t),n.transformFlags|=Xk(n.left)|Zk(n.right),n.flowNode=void 0,n}function H(e){const t=x(167);return t.expression=r().parenthesizeExpressionOfComputedPropertyName(e),t.transformFlags|=132096|Xk(t.expression),t}function G(e,t,n,r){const i=S(168);return i.modifiers=Ci(e),i.name=Ni(t),i.constraint=n,i.default=r,i.transformFlags=1,i.expression=void 0,i.jsDoc=void 0,i}function Q(e,t,n,r,i){return e.modifiers!==t||e.name!==n||e.constraint!==r||e.default!==i?Pi(G(t,n,r,i),e):e}function Y(e,t,n,r,i,o){const s=S(169);return s.modifiers=Ci(e),s.dotDotDotToken=t,s.name=Ni(n),s.questionToken=r,s.type=i,s.initializer=Ii(o),Tv(s.name)?s.transformFlags=1:s.transformFlags=$k(s.modifiers)|Xk(s.dotDotDotToken)|Yk(s.name)|Xk(s.questionToken)|Xk(s.initializer)|(s.questionToken??s.type?1:0)|(s.dotDotDotToken??s.initializer?1024:0)|(31&lb(s.modifiers)?8192:0),s.jsDoc=void 0,s}function Z(e,t,n,r,i,o,s){return e.modifiers!==t||e.dotDotDotToken!==n||e.name!==r||e.questionToken!==i||e.type!==o||e.initializer!==s?Pi(Y(t,n,r,i,o,s),e):e}function X(e){const t=x(170);return t.expression=r().parenthesizeLeftSideOfAccess(e,!1),t.transformFlags|=33562625|Xk(t.expression),t}function ee(e,t,n,r){const i=S(171);return i.modifiers=Ci(e),i.name=Ni(t),i.type=r,i.questionToken=n,i.transformFlags=1,i.initializer=void 0,i.jsDoc=void 0,i}function te(e,t,n,r,i){return e.modifiers!==t||e.name!==n||e.questionToken!==r||e.type!==i?function(e,t){e!==t&&(e.initializer=t.initializer);return Pi(e,t)}(ee(t,n,r,i),e):e}function ne(e,t,n,r,i){const o=S(172);o.modifiers=Ci(e),o.name=Ni(t),o.questionToken=n&&WC(n)?n:void 0,o.exclamationToken=n&&JC(n)?n:void 0,o.type=r,o.initializer=Ii(i);const s=33554432&o.flags||128&lb(o.modifiers);return o.transformFlags=$k(o.modifiers)|Yk(o.name)|Xk(o.initializer)|(s||o.questionToken||o.exclamationToken||o.type?1:0)|(_N(o.name)||256&lb(o.modifiers)&&o.initializer?8192:0)|16777216,o.jsDoc=void 0,o}function re(e,t,n,r,i,o){return e.modifiers!==t||e.name!==n||e.questionToken!==(void 0!==r&&WC(r)?r:void 0)||e.exclamationToken!==(void 0!==r&&JC(r)?r:void 0)||e.type!==i||e.initializer!==o?Pi(ne(t,n,r,i,o),e):e}function ie(e,t,n,r,i,o){const s=S(173);return s.modifiers=Ci(e),s.name=Ni(t),s.questionToken=n,s.typeParameters=Ci(r),s.parameters=Ci(i),s.type=o,s.transformFlags=1,s.jsDoc=void 0,s.locals=void 0,s.nextContainer=void 0,s.typeArguments=void 0,s}function oe(e,t,n,r,i,o,s){return e.modifiers!==t||e.name!==n||e.questionToken!==r||e.typeParameters!==i||e.parameters!==o||e.type!==s?w(ie(t,n,r,i,o,s),e):e}function se(e,t,n,r,i,o,s,a){const c=S(174);if(c.modifiers=Ci(e),c.asteriskToken=t,c.name=Ni(n),c.questionToken=r,c.exclamationToken=void 0,c.typeParameters=Ci(i),c.parameters=b(o),c.type=s,c.body=a,c.body){const e=1024&lb(c.modifiers),t=!!c.asteriskToken,n=e&&t;c.transformFlags=$k(c.modifiers)|Xk(c.asteriskToken)|Yk(c.name)|Xk(c.questionToken)|$k(c.typeParameters)|$k(c.parameters)|Xk(c.type)|-67108865&Xk(c.body)|(n?128:e?256:t?2048:0)|(c.questionToken||c.typeParameters||c.type?1:0)|1024}else c.transformFlags=1;return c.typeArguments=void 0,c.jsDoc=void 0,c.locals=void 0,c.nextContainer=void 0,c.flowNode=void 0,c.endFlowNode=void 0,c.returnFlowNode=void 0,c}function ae(e,t,n,r,i,o,s,a,c){return e.modifiers!==t||e.asteriskToken!==n||e.name!==r||e.questionToken!==i||e.typeParameters!==o||e.parameters!==s||e.type!==a||e.body!==c?function(e,t){e!==t&&(e.exclamationToken=t.exclamationToken);return Pi(e,t)}(se(t,n,r,i,o,s,a,c),e):e}function ce(e){const t=S(175);return t.body=e,t.transformFlags=16777216|Xk(e),t.modifiers=void 0,t.jsDoc=void 0,t.locals=void 0,t.nextContainer=void 0,t.endFlowNode=void 0,t.returnFlowNode=void 0,t}function le(e,t,n){const r=S(176);return r.modifiers=Ci(e),r.parameters=b(t),r.body=n,r.transformFlags=$k(r.modifiers)|$k(r.parameters)|-67108865&Xk(r.body)|1024,r.typeParameters=void 0,r.type=void 0,r.typeArguments=void 0,r.jsDoc=void 0,r.locals=void 0,r.nextContainer=void 0,r.endFlowNode=void 0,r.returnFlowNode=void 0,r}function ue(e,t,n,r){return e.modifiers!==t||e.parameters!==n||e.body!==r?function(e,t){e!==t&&(e.typeParameters=t.typeParameters,e.type=t.type);return w(e,t)}(le(t,n,r),e):e}function de(e,t,n,r,i){const o=S(177);return o.modifiers=Ci(e),o.name=Ni(t),o.parameters=b(n),o.type=r,o.body=i,o.body?o.transformFlags=$k(o.modifiers)|Yk(o.name)|$k(o.parameters)|Xk(o.type)|-67108865&Xk(o.body)|(o.type?1:0):o.transformFlags=1,o.typeArguments=void 0,o.typeParameters=void 0,o.jsDoc=void 0,o.locals=void 0,o.nextContainer=void 0,o.flowNode=void 0,o.endFlowNode=void 0,o.returnFlowNode=void 0,o}function pe(e,t,n,r,i,o){return e.modifiers!==t||e.name!==n||e.parameters!==r||e.type!==i||e.body!==o?function(e,t){e!==t&&(e.typeParameters=t.typeParameters);return w(e,t)}(de(t,n,r,i,o),e):e}function fe(e,t,n,r){const i=S(178);return i.modifiers=Ci(e),i.name=Ni(t),i.parameters=b(n),i.body=r,i.body?i.transformFlags=$k(i.modifiers)|Yk(i.name)|$k(i.parameters)|-67108865&Xk(i.body)|(i.type?1:0):i.transformFlags=1,i.typeArguments=void 0,i.typeParameters=void 0,i.type=void 0,i.jsDoc=void 0,i.locals=void 0,i.nextContainer=void 0,i.flowNode=void 0,i.endFlowNode=void 0,i.returnFlowNode=void 0,i}function me(e,t,n,r,i){return e.modifiers!==t||e.name!==n||e.parameters!==r||e.body!==i?function(e,t){e!==t&&(e.typeParameters=t.typeParameters,e.type=t.type);return w(e,t)}(fe(t,n,r,i),e):e}function he(e,t,n){const r=S(179);return r.typeParameters=Ci(e),r.parameters=Ci(t),r.type=n,r.transformFlags=1,r.jsDoc=void 0,r.locals=void 0,r.nextContainer=void 0,r.typeArguments=void 0,r}function ge(e,t,n){const r=S(180);return r.typeParameters=Ci(e),r.parameters=Ci(t),r.type=n,r.transformFlags=1,r.jsDoc=void 0,r.locals=void 0,r.nextContainer=void 0,r.typeArguments=void 0,r}function ye(e,t,n){const r=S(181);return r.modifiers=Ci(e),r.parameters=Ci(t),r.type=n,r.transformFlags=1,r.jsDoc=void 0,r.locals=void 0,r.nextContainer=void 0,r.typeArguments=void 0,r}function ve(e,t,n,r){return e.parameters!==n||e.type!==r||e.modifiers!==t?w(ye(t,n,r),e):e}function be(e,t){const n=x(204);return n.type=e,n.literal=t,n.transformFlags=1,n}function xe(e,t,n){const r=x(182);return r.assertsModifier=e,r.parameterName=Ni(t),r.type=n,r.transformFlags=1,r}function Se(e,t){const n=x(183);return n.typeName=Ni(e),n.typeArguments=t&&r().parenthesizeTypeArguments(b(t)),n.transformFlags=1,n}function Te(e,t,n){const r=S(184);return r.typeParameters=Ci(e),r.parameters=Ci(t),r.type=n,r.transformFlags=1,r.modifiers=void 0,r.jsDoc=void 0,r.locals=void 0,r.nextContainer=void 0,r.typeArguments=void 0,r}function we(...e){return 4===e.length?ke(...e):3===e.length?function(e,t,n){return ke(void 0,e,t,n)}(...e):Tn.fail("Incorrect number of arguments specified.")}function ke(e,t,n,r){const i=S(185);return i.modifiers=Ci(e),i.typeParameters=Ci(t),i.parameters=Ci(n),i.type=r,i.transformFlags=1,i.jsDoc=void 0,i.locals=void 0,i.nextContainer=void 0,i.typeArguments=void 0,i}function Ee(e,t,n,r,i){return e.modifiers!==t||e.typeParameters!==n||e.parameters!==r||e.type!==i?w(we(t,n,r,i),e):e}function Ce(e,t){const n=x(186);return n.exprName=e,n.typeArguments=t&&r().parenthesizeTypeArguments(t),n.transformFlags=1,n}function Ae(e){const t=S(187);return t.members=b(e),t.transformFlags=1,t}function De(e){const t=x(188);return t.elementType=r().parenthesizeNonArrayTypeOfPostfixType(e),t.transformFlags=1,t}function Pe(e){const t=x(189);return t.elements=b(r().parenthesizeElementTypesOfTupleType(e)),t.transformFlags=1,t}function Me(e,t,n,r){const i=S(202);return i.dotDotDotToken=e,i.name=t,i.questionToken=n,i.type=r,i.transformFlags=1,i.jsDoc=void 0,i}function Oe(e){const t=x(190);return t.type=r().parenthesizeTypeOfOptionalType(e),t.transformFlags=1,t}function Fe(e){const t=x(191);return t.type=e,t.transformFlags=1,t}function Le(e,t,n){const r=x(e);return r.types=v.createNodeArray(n(t)),r.transformFlags=1,r}function ze(e,t,n){return e.types!==t?Pi(Le(e.kind,t,n),e):e}function Ue(e,t,n,i){const o=x(194);return o.checkType=r().parenthesizeCheckTypeOfConditionalType(e),o.extendsType=r().parenthesizeExtendsTypeOfConditionalType(t),o.trueType=n,o.falseType=i,o.transformFlags=1,o.locals=void 0,o.nextContainer=void 0,o}function Be(e){const t=x(195);return t.typeParameter=e,t.transformFlags=1,t}function qe(e,t){const n=x(203);return n.head=e,n.templateSpans=b(t),n.transformFlags=1,n}function Ve(e,t,n,i,o=!1){const s=x(205);return s.argument=e,s.attributes=t,s.assertions&&s.assertions.assertClause&&s.attributes&&(s.assertions.assertClause=s.attributes),s.qualifier=n,s.typeArguments=i&&r().parenthesizeTypeArguments(i),s.isTypeOf=o,s.transformFlags=1,s}function Ke(e){const t=x(196);return t.type=e,t.transformFlags=1,t}function Je(e,t){const n=x(198);return n.operator=e,n.type=148===e?r().parenthesizeOperandOfReadonlyTypeOperator(t):r().parenthesizeOperandOfTypeOperator(t),n.transformFlags=1,n}function We(e,t){const n=x(199);return n.objectType=r().parenthesizeNonArrayTypeOfPostfixType(e),n.indexType=t,n.transformFlags=1,n}function He(e,t,n,r,i,o){const s=S(200);return s.readonlyToken=e,s.typeParameter=t,s.nameType=n,s.questionToken=r,s.type=i,s.members=o&&b(o),s.transformFlags=1,s.locals=void 0,s.nextContainer=void 0,s}function Ge(e){const t=x(201);return t.literal=e,t.transformFlags=1,t}function Qe(e){const t=x(206);return t.elements=b(e),t.transformFlags|=525312|$k(t.elements),32768&t.transformFlags&&(t.transformFlags|=65664),t}function Ye(e){const t=x(207);return t.elements=b(e),t.transformFlags|=525312|$k(t.elements),t}function Ze(e,t,n,r){const i=S(208);return i.dotDotDotToken=e,i.propertyName=Ni(t),i.name=Ni(n),i.initializer=Ii(r),i.transformFlags|=Xk(i.dotDotDotToken)|Yk(i.propertyName)|Yk(i.name)|Xk(i.initializer)|(i.dotDotDotToken?32768:0)|1024,i.flowNode=void 0,i}function Xe(e,t){const n=x(209),i=e&&Ne(e),o=b(e,!(!i||!TA(i))||void 0);return n.elements=r().parenthesizeExpressionsOfCommaDelimitedList(o),n.multiLine=t,n.transformFlags|=$k(n.elements),n}function $e(e,t){const n=S(210);return n.properties=b(e),n.multiLine=t,n.transformFlags|=$k(n.properties),n.jsDoc=void 0,n}function et(e,t,n){const r=S(211);return r.expression=e,r.questionDotToken=t,r.name=n,r.transformFlags=Xk(r.expression)|Xk(r.questionDotToken)|(YC(r.name)?Zk(r.name):536870912|Xk(r.name)),r.jsDoc=void 0,r.flowNode=void 0,r}function tt(e,t){const n=et(r().parenthesizeLeftSideOfAccess(e,!1),void 0,Ni(t));return cN(e)&&(n.transformFlags|=384),n}function nt(e,t,n){const i=et(r().parenthesizeLeftSideOfAccess(e,!0),t,Ni(n));return i.flags|=64,i.transformFlags|=32,i}function rt(e,t,n,r){return Tn.assert(!!(64&e.flags),"Cannot update a PropertyAccessExpression using updatePropertyAccessChain. Use updatePropertyAccess instead."),e.expression!==t||e.questionDotToken!==n||e.name!==r?Pi(nt(t,n,r),e):e}function it(e,t,n){const r=S(212);return r.expression=e,r.questionDotToken=t,r.argumentExpression=n,r.transformFlags|=Xk(r.expression)|Xk(r.questionDotToken)|Xk(r.argumentExpression),r.jsDoc=void 0,r.flowNode=void 0,r}function ot(e,t){const n=it(r().parenthesizeLeftSideOfAccess(e,!1),void 0,Ai(t));return cN(e)&&(n.transformFlags|=384),n}function st(e,t,n){const i=it(r().parenthesizeLeftSideOfAccess(e,!0),t,Ai(n));return i.flags|=64,i.transformFlags|=32,i}function ct(e,t,n,r){return Tn.assert(!!(64&e.flags),"Cannot update a ElementAccessExpression using updateElementAccessChain. Use updateElementAccess instead."),e.expression!==t||e.questionDotToken!==n||e.argumentExpression!==r?Pi(st(t,n,r),e):e}function lt(e,t,n,r){const i=S(213);return i.expression=e,i.questionDotToken=t,i.typeArguments=n,i.arguments=r,i.transformFlags|=Xk(i.expression)|Xk(i.questionDotToken)|$k(i.typeArguments)|$k(i.arguments),i.typeArguments&&(i.transformFlags|=1),mm(i.expression)&&(i.transformFlags|=16384),i}function ut(e,t,n){const i=lt(r().parenthesizeLeftSideOfAccess(e,!1),void 0,Ci(t),r().parenthesizeExpressionsOfCommaDelimitedList(b(n)));return lN(i.expression)&&(i.transformFlags|=8388608),i}function dt(e,t,n,i){const o=lt(r().parenthesizeLeftSideOfAccess(e,!0),t,Ci(n),r().parenthesizeExpressionsOfCommaDelimitedList(b(i)));return o.flags|=64,o.transformFlags|=32,o}function pt(e,t,n,r,i){return Tn.assert(!!(64&e.flags),"Cannot update a CallExpression using updateCallChain. Use updateCall instead."),e.expression!==t||e.questionDotToken!==n||e.typeArguments!==r||e.arguments!==i?Pi(dt(t,n,r,i),e):e}function ft(e,t,n){const i=S(214);return i.expression=r().parenthesizeExpressionOfNew(e),i.typeArguments=Ci(t),i.arguments=n?r().parenthesizeExpressionsOfCommaDelimitedList(n):void 0,i.transformFlags|=Xk(i.expression)|$k(i.typeArguments)|$k(i.arguments)|32,i.typeArguments&&(i.transformFlags|=1),i}function ht(e,t,n){const i=x(215);return i.tag=r().parenthesizeLeftSideOfAccess(e,!1),i.typeArguments=Ci(t),i.template=n,i.transformFlags|=Xk(i.tag)|$k(i.typeArguments)|Xk(i.template)|1024,i.typeArguments&&(i.transformFlags|=1),Ay(i.template)&&(i.transformFlags|=128),i}function yt(e,t){const n=x(216);return n.expression=r().parenthesizeOperandOfPrefixUnary(t),n.type=e,n.transformFlags|=Xk(n.expression)|Xk(n.type)|1,n}function vt(e,t,n){return e.type!==t||e.expression!==n?Pi(yt(t,n),e):e}function bt(e){const t=x(217);return t.expression=e,t.transformFlags=Xk(t.expression),t.jsDoc=void 0,t}function xt(e,t){return e.expression!==t?Pi(bt(t),e):e}function wt(e,t,n,r,i,o,s){const a=S(218);a.modifiers=Ci(e),a.asteriskToken=t,a.name=Ni(n),a.typeParameters=Ci(r),a.parameters=b(i),a.type=o,a.body=s;const c=1024&lb(a.modifiers),l=!!a.asteriskToken,u=c&&l;return a.transformFlags=$k(a.modifiers)|Xk(a.asteriskToken)|Yk(a.name)|$k(a.typeParameters)|$k(a.parameters)|Xk(a.type)|-67108865&Xk(a.body)|(u?128:c?256:l?2048:0)|(a.typeParameters||a.type?1:0)|4194304,a.typeArguments=void 0,a.jsDoc=void 0,a.locals=void 0,a.nextContainer=void 0,a.flowNode=void 0,a.endFlowNode=void 0,a.returnFlowNode=void 0,a}function kt(e,t,n,r,i,o,s,a){return e.name!==r||e.modifiers!==t||e.asteriskToken!==n||e.typeParameters!==i||e.parameters!==o||e.type!==s||e.body!==a?w(wt(t,n,r,i,o,s,a),e):e}function Et(e,t,n,i,o,s){const a=S(219);a.modifiers=Ci(e),a.typeParameters=Ci(t),a.parameters=b(n),a.type=i,a.equalsGreaterThanToken=o??j(39),a.body=r().parenthesizeConciseBodyOfArrowFunction(s);const c=1024&lb(a.modifiers);return a.transformFlags=$k(a.modifiers)|$k(a.typeParameters)|$k(a.parameters)|Xk(a.type)|Xk(a.equalsGreaterThanToken)|-67108865&Xk(a.body)|(a.typeParameters||a.type?1:0)|(c?16640:0)|1024,a.typeArguments=void 0,a.jsDoc=void 0,a.locals=void 0,a.nextContainer=void 0,a.flowNode=void 0,a.endFlowNode=void 0,a.returnFlowNode=void 0,a}function Ct(e,t,n,r,i,o,s){return e.modifiers!==t||e.typeParameters!==n||e.parameters!==r||e.type!==i||e.equalsGreaterThanToken!==o||e.body!==s?w(Et(t,n,r,i,o,s),e):e}function Nt(e){const t=x(220);return t.expression=r().parenthesizeOperandOfPrefixUnary(e),t.transformFlags|=Xk(t.expression),t}function At(e){const t=x(221);return t.expression=r().parenthesizeOperandOfPrefixUnary(e),t.transformFlags|=Xk(t.expression),t}function It(e){const t=x(222);return t.expression=r().parenthesizeOperandOfPrefixUnary(e),t.transformFlags|=Xk(t.expression),t}function Dt(e){const t=x(223);return t.expression=r().parenthesizeOperandOfPrefixUnary(e),t.transformFlags|=2097536|Xk(t.expression),t}function Pt(e,t){const n=x(224);return n.operator=e,n.operand=r().parenthesizeOperandOfPrefixUnary(t),n.transformFlags|=Xk(n.operand),46!==e&&47!==e||!YC(n.operand)||tu(n.operand)||aP(n.operand)||(n.transformFlags|=268435456),n}function Mt(e,t){const n=x(225);return n.operator=t,n.operand=r().parenthesizeOperandOfPostfixUnary(e),n.transformFlags|=Xk(n.operand),!YC(n.operand)||tu(n.operand)||aP(n.operand)||(n.transformFlags|=268435456),n}function Ot(e,t,n){const i=S(226),o="number"==typeof(s=t)?j(s):s;var s;const a=o.kind;return i.left=r().parenthesizeLeftSideOfBinary(a,e),i.operatorToken=o,i.right=r().parenthesizeRightSideOfBinary(a,i.left,n),i.transformFlags|=Xk(i.left)|Xk(i.operatorToken)|Xk(i.right),61===a?i.transformFlags|=32:64===a?tA(i.left)?i.transformFlags|=5248|Ft(i.left):eA(i.left)&&(i.transformFlags|=5120|Ft(i.left)):43===a||68===a?i.transformFlags|=512:pb(a)&&(i.transformFlags|=16),103===a&&ZC(i.left)&&(i.transformFlags|=536870912),i.jsDoc=void 0,i}function Ft(e){return yM(e)?65536:0}function Rt(e,t,n,i,o){const s=x(227);return s.condition=r().parenthesizeConditionOfConditionalExpression(e),s.questionToken=t??j(58),s.whenTrue=r().parenthesizeBranchOfConditionalExpression(n),s.colonToken=i??j(59),s.whenFalse=r().parenthesizeBranchOfConditionalExpression(o),s.transformFlags|=Xk(s.condition)|Xk(s.questionToken)|Xk(s.whenTrue)|Xk(s.colonToken)|Xk(s.whenFalse),s}function Lt(e,t){const n=x(228);return n.head=e,n.templateSpans=b(t),n.transformFlags|=Xk(n.head)|$k(n.templateSpans)|1024,n}function jt(e,t,n,r=0){let i;if(Tn.assert(!(-7177&r),"Unsupported template flags."),void 0!==n&&n!==t&&(i=function(e,t){Bk||(Bk=Ia(99,!1,0));switch(e){case 15:Bk.setText("`"+t+"`");break;case 16:Bk.setText("`"+t+"${");break;case 17:Bk.setText("}"+t+"${");break;case 18:Bk.setText("}"+t+"`")}let n,r=Bk.scan();20===r&&(r=Bk.reScanTemplateToken(!1));if(Bk.isUnterminated())return Bk.setText(void 0),Qk;switch(r){case 15:case 16:case 17:case 18:n=Bk.getTokenValue()}if(void 0===n||1!==Bk.scan())return Bk.setText(void 0),Qk;return Bk.setText(void 0),n}(e,n),"object"==typeof i))return Tn.fail("Invalid raw text");if(void 0===t){if(void 0===i)return Tn.fail("Arguments 'text' and 'rawText' may not both be undefined.");t=i}else void 0!==i&&Tn.assert(t===i,"Expected argument 'text' to be the normalized (i.e. 'cooked') version of argument 'rawText'.");return t}function zt(e){let t=1024;return e&&(t|=128),t}function Ut(e,t,n,r){const i=S(e);return i.text=t,i.rawText=n,i.templateFlags=7176&r,i.transformFlags=zt(i.templateFlags),i}function Bt(e,t,n,r){return 15===e?Ut(e,t,n,r):function(e,t,n,r){const i=L(e);return i.text=t,i.rawText=n,i.templateFlags=7176&r,i.transformFlags=zt(i.templateFlags),i}(e,t,n,r)}function qt(e,t){Tn.assert(!e||!!t,"A `YieldExpression` with an asteriskToken must have an expression.");const n=x(229);return n.expression=t&&r().parenthesizeExpressionForDisallowedComma(t),n.asteriskToken=e,n.transformFlags|=1049728|(Xk(n.expression)|Xk(n.asteriskToken)),n}function Vt(e){const t=x(230);return t.expression=r().parenthesizeExpressionForDisallowedComma(e),t.transformFlags|=33792|Xk(t.expression),t}function Kt(e,t,n,r,i){const o=S(231);return o.modifiers=Ci(e),o.name=Ni(t),o.typeParameters=Ci(n),o.heritageClauses=Ci(r),o.members=b(i),o.transformFlags|=$k(o.modifiers)|Yk(o.name)|$k(o.typeParameters)|$k(o.heritageClauses)|$k(o.members)|(o.typeParameters?1:0)|1024,o.jsDoc=void 0,o}function Jt(e,t,n,r,i,o){return e.modifiers!==t||e.name!==n||e.typeParameters!==r||e.heritageClauses!==i||e.members!==o?Pi(Kt(t,n,r,i,o),e):e}function Wt(e,t){const n=x(233);return n.expression=r().parenthesizeLeftSideOfAccess(e,!1),n.typeArguments=t&&r().parenthesizeTypeArguments(t),n.transformFlags|=Xk(n.expression)|$k(n.typeArguments)|1024,n}function Ht(e,t){const n=x(234);return n.expression=e,n.type=t,n.transformFlags|=Xk(n.expression)|Xk(n.type)|1,n}function Gt(e,t,n){return e.expression!==t||e.type!==n?Pi(Ht(t,n),e):e}function Qt(e){const t=x(235);return t.expression=r().parenthesizeLeftSideOfAccess(e,!1),t.transformFlags|=1|Xk(t.expression),t}function Yt(e,t){return Ol(e)?en(e,t):e.expression!==t?Pi(Qt(t),e):e}function Zt(e,t){const n=x(238);return n.expression=e,n.type=t,n.transformFlags|=Xk(n.expression)|Xk(n.type)|1,n}function Xt(e,t,n){return e.expression!==t||e.type!==n?Pi(Zt(t,n),e):e}function $t(e){const t=x(235);return t.flags|=64,t.expression=r().parenthesizeLeftSideOfAccess(e,!0),t.transformFlags|=1|Xk(t.expression),t}function en(e,t){return Tn.assert(!!(64&e.flags),"Cannot update a NonNullExpression using updateNonNullChain. Use updateNonNullExpression instead."),e.expression!==t?Pi($t(t),e):e}function tn(e,t){const n=x(236);switch(n.keywordToken=e,n.name=t,n.transformFlags|=Xk(n.name),e){case 105:n.transformFlags|=1024;break;case 102:n.transformFlags|=32;break;default:return Tn.assertNever(e)}return n.flowNode=void 0,n}function nn(e,t){const n=x(239);return n.expression=e,n.literal=t,n.transformFlags|=Xk(n.expression)|Xk(n.literal)|1024,n}function rn(e,t){const n=x(241);return n.statements=b(e),n.multiLine=t,n.transformFlags|=$k(n.statements),n.jsDoc=void 0,n.locals=void 0,n.nextContainer=void 0,n}function on(e,t){const n=x(243);return n.modifiers=Ci(e),n.declarationList=at(t)?Cn(t):t,n.transformFlags|=$k(n.modifiers)|Xk(n.declarationList),128&lb(n.modifiers)&&(n.transformFlags=1),n.jsDoc=void 0,n.flowNode=void 0,n}function sn(e,t,n){return e.modifiers!==t||e.declarationList!==n?Pi(on(t,n),e):e}function an(){const e=x(242);return e.jsDoc=void 0,e}function ln(e){const t=x(244);return t.expression=r().parenthesizeExpressionOfExpressionStatement(e),t.transformFlags|=Xk(t.expression),t.jsDoc=void 0,t.flowNode=void 0,t}function un(e,t,n){const r=x(245);return r.expression=e,r.thenStatement=Di(t),r.elseStatement=Di(n),r.transformFlags|=Xk(r.expression)|Xk(r.thenStatement)|Xk(r.elseStatement),r.jsDoc=void 0,r.flowNode=void 0,r}function dn(e,t){const n=x(246);return n.statement=Di(e),n.expression=t,n.transformFlags|=Xk(n.statement)|Xk(n.expression),n.jsDoc=void 0,n.flowNode=void 0,n}function _n(e,t){const n=x(247);return n.expression=e,n.statement=Di(t),n.transformFlags|=Xk(n.expression)|Xk(n.statement),n.jsDoc=void 0,n.flowNode=void 0,n}function pn(e,t,n,r){const i=x(248);return i.initializer=e,i.condition=t,i.incrementor=n,i.statement=Di(r),i.transformFlags|=Xk(i.initializer)|Xk(i.condition)|Xk(i.incrementor)|Xk(i.statement),i.jsDoc=void 0,i.locals=void 0,i.nextContainer=void 0,i.flowNode=void 0,i}function fn(e,t,n){const r=x(249);return r.initializer=e,r.expression=t,r.statement=Di(n),r.transformFlags|=Xk(r.initializer)|Xk(r.expression)|Xk(r.statement),r.jsDoc=void 0,r.locals=void 0,r.nextContainer=void 0,r.flowNode=void 0,r}function mn(e,t,n,i){const o=x(250);return o.awaitModifier=e,o.initializer=t,o.expression=r().parenthesizeExpressionForDisallowedComma(n),o.statement=Di(i),o.transformFlags|=Xk(o.awaitModifier)|Xk(o.initializer)|Xk(o.expression)|Xk(o.statement)|1024,e&&(o.transformFlags|=128),o.jsDoc=void 0,o.locals=void 0,o.nextContainer=void 0,o.flowNode=void 0,o}function hn(e){const t=x(251);return t.label=Ni(e),t.transformFlags|=4194304|Xk(t.label),t.jsDoc=void 0,t.flowNode=void 0,t}function gn(e){const t=x(252);return t.label=Ni(e),t.transformFlags|=4194304|Xk(t.label),t.jsDoc=void 0,t.flowNode=void 0,t}function yn(e){const t=x(253);return t.expression=e,t.transformFlags|=4194432|Xk(t.expression),t.jsDoc=void 0,t.flowNode=void 0,t}function vn(e,t){const n=x(254);return n.expression=e,n.statement=Di(t),n.transformFlags|=Xk(n.expression)|Xk(n.statement),n.jsDoc=void 0,n.flowNode=void 0,n}function bn(e,t){const n=x(255);return n.expression=r().parenthesizeExpressionForDisallowedComma(e),n.caseBlock=t,n.transformFlags|=Xk(n.expression)|Xk(n.caseBlock),n.jsDoc=void 0,n.flowNode=void 0,n.possiblyExhaustive=!1,n}function xn(e,t){const n=x(256);return n.label=Ni(e),n.statement=Di(t),n.transformFlags|=Xk(n.label)|Xk(n.statement),n.jsDoc=void 0,n.flowNode=void 0,n}function Sn(e,t,n){return e.label!==t||e.statement!==n?Pi(xn(t,n),e):e}function wn(e){const t=x(257);return t.expression=e,t.transformFlags|=Xk(t.expression),t.jsDoc=void 0,t.flowNode=void 0,t}function kn(e,t,n){const r=x(258);return r.tryBlock=e,r.catchClause=t,r.finallyBlock=n,r.transformFlags|=Xk(r.tryBlock)|Xk(r.catchClause)|Xk(r.finallyBlock),r.jsDoc=void 0,r.flowNode=void 0,r}function En(e,t,n,r){const i=S(260);return i.name=Ni(e),i.exclamationToken=t,i.type=n,i.initializer=Ii(r),i.transformFlags|=Yk(i.name)|Xk(i.initializer)|(i.exclamationToken??i.type?1:0),i.jsDoc=void 0,i}function Cn(e,t=0){const n=x(261);return n.flags|=7&t,n.declarations=b(e),n.transformFlags|=4194304|$k(n.declarations),7&t&&(n.transformFlags|=263168),4&t&&(n.transformFlags|=4),n}function Nn(e,t,n,r,i,o,s){const a=S(262);if(a.modifiers=Ci(e),a.asteriskToken=t,a.name=Ni(n),a.typeParameters=Ci(r),a.parameters=b(i),a.type=o,a.body=s,!a.body||128&lb(a.modifiers))a.transformFlags=1;else{const e=1024&lb(a.modifiers),t=!!a.asteriskToken,n=e&&t;a.transformFlags=$k(a.modifiers)|Xk(a.asteriskToken)|Yk(a.name)|$k(a.typeParameters)|$k(a.parameters)|Xk(a.type)|-67108865&Xk(a.body)|(n?128:e?256:t?2048:0)|(a.typeParameters||a.type?1:0)|4194304}return a.typeArguments=void 0,a.jsDoc=void 0,a.locals=void 0,a.nextContainer=void 0,a.endFlowNode=void 0,a.returnFlowNode=void 0,a}function An(e,t,n,r,i,o,s,a){return e.modifiers!==t||e.asteriskToken!==n||e.name!==r||e.typeParameters!==i||e.parameters!==o||e.type!==s||e.body!==a?function(e,t){e!==t&&e.modifiers===t.modifiers&&(e.modifiers=t.modifiers);return w(e,t)}(Nn(t,n,r,i,o,s,a),e):e}function In(e,t,n,r,i){const o=S(263);return o.modifiers=Ci(e),o.name=Ni(t),o.typeParameters=Ci(n),o.heritageClauses=Ci(r),o.members=b(i),128&lb(o.modifiers)?o.transformFlags=1:(o.transformFlags|=$k(o.modifiers)|Yk(o.name)|$k(o.typeParameters)|$k(o.heritageClauses)|$k(o.members)|(o.typeParameters?1:0)|1024,8192&o.transformFlags&&(o.transformFlags|=1)),o.jsDoc=void 0,o}function Dn(e,t,n,r,i,o){return e.modifiers!==t||e.name!==n||e.typeParameters!==r||e.heritageClauses!==i||e.members!==o?Pi(In(t,n,r,i,o),e):e}function Pn(e,t,n,r,i){const o=S(264);return o.modifiers=Ci(e),o.name=Ni(t),o.typeParameters=Ci(n),o.heritageClauses=Ci(r),o.members=b(i),o.transformFlags=1,o.jsDoc=void 0,o}function Mn(e,t,n,r,i,o){return e.modifiers!==t||e.name!==n||e.typeParameters!==r||e.heritageClauses!==i||e.members!==o?Pi(Pn(t,n,r,i,o),e):e}function On(e,t,n,r){const i=S(265);return i.modifiers=Ci(e),i.name=Ni(t),i.typeParameters=Ci(n),i.type=r,i.transformFlags=1,i.jsDoc=void 0,i.locals=void 0,i.nextContainer=void 0,i}function Fn(e,t,n,r,i){return e.modifiers!==t||e.name!==n||e.typeParameters!==r||e.type!==i?Pi(On(t,n,r,i),e):e}function Rn(e,t,n){const r=S(266);return r.modifiers=Ci(e),r.name=Ni(t),r.members=b(n),r.transformFlags|=$k(r.modifiers)|Xk(r.name)|$k(r.members)|1,r.transformFlags&=-67108865,r.jsDoc=void 0,r}function Ln(e,t,n,r){return e.modifiers!==t||e.name!==n||e.members!==r?Pi(Rn(t,n,r),e):e}function jn(e,t,n,r=0){const i=S(267);return i.modifiers=Ci(e),i.flags|=2088&r,i.name=t,i.body=n,128&lb(i.modifiers)?i.transformFlags=1:i.transformFlags|=$k(i.modifiers)|Xk(i.name)|Xk(i.body)|1,i.transformFlags&=-67108865,i.jsDoc=void 0,i.locals=void 0,i.nextContainer=void 0,i}function zn(e,t,n,r){return e.modifiers!==t||e.name!==n||e.body!==r?Pi(jn(t,n,r,e.flags),e):e}function Un(e){const t=x(268);return t.statements=b(e),t.transformFlags|=$k(t.statements),t.jsDoc=void 0,t}function Bn(e){const t=x(269);return t.clauses=b(e),t.transformFlags|=$k(t.clauses),t.locals=void 0,t.nextContainer=void 0,t}function qn(e){const t=S(270);return t.name=Ni(e),t.transformFlags|=1|Zk(t.name),t.modifiers=void 0,t.jsDoc=void 0,t}function Vn(e,t,n,r){const i=S(271);return i.modifiers=Ci(e),i.name=Ni(n),i.isTypeOnly=t,i.moduleReference=r,i.transformFlags|=$k(i.modifiers)|Zk(i.name)|Xk(i.moduleReference),AI(i.moduleReference)||(i.transformFlags|=1),i.transformFlags&=-67108865,i.jsDoc=void 0,i}function Kn(e,t,n,r,i){return e.modifiers!==t||e.isTypeOnly!==n||e.name!==r||e.moduleReference!==i?Pi(Vn(t,n,r,i),e):e}function Jn(e,t,n,r){const i=x(272);return i.modifiers=Ci(e),i.importClause=t,i.moduleSpecifier=n,i.attributes=i.assertClause=r,i.transformFlags|=Xk(i.importClause)|Xk(i.moduleSpecifier),i.transformFlags&=-67108865,i.jsDoc=void 0,i}function Wn(e,t,n,r,i){return e.modifiers!==t||e.importClause!==n||e.moduleSpecifier!==r||e.attributes!==i?Pi(Jn(t,n,r,i),e):e}function Hn(e,t,n){const r=S(273);return r.isTypeOnly=e,r.name=t,r.namedBindings=n,r.transformFlags|=Xk(r.name)|Xk(r.namedBindings),e&&(r.transformFlags|=1),r.transformFlags&=-67108865,r}function Gn(e,t){const n=x(300);return n.elements=b(e),n.multiLine=t,n.token=132,n.transformFlags|=4,n}function Qn(e,t){const n=x(301);return n.name=e,n.value=t,n.transformFlags|=4,n}function Yn(e,t){const n=x(302);return n.assertClause=e,n.multiLine=t,n}function Zn(e,t,n){const r=x(300);return r.token=n??118,r.elements=b(e),r.multiLine=t,r.transformFlags|=4,r}function Xn(e,t){const n=x(301);return n.name=e,n.value=t,n.transformFlags|=4,n}function $n(e){const t=S(274);return t.name=e,t.transformFlags|=Xk(t.name),t.transformFlags&=-67108865,t}function er(e){const t=S(280);return t.name=e,t.transformFlags|=32|Xk(t.name),t.transformFlags&=-67108865,t}function tr(e){const t=x(275);return t.elements=b(e),t.transformFlags|=$k(t.elements),t.transformFlags&=-67108865,t}function nr(e,t,n){const r=S(276);return r.isTypeOnly=e,r.propertyName=t,r.name=n,r.transformFlags|=Xk(r.propertyName)|Xk(r.name),r.transformFlags&=-67108865,r}function rr(e,t,n){const i=S(277);return i.modifiers=Ci(e),i.isExportEquals=t,i.expression=t?r().parenthesizeRightSideOfBinary(64,void 0,n):r().parenthesizeExpressionOfExportDefault(n),i.transformFlags|=$k(i.modifiers)|Xk(i.expression),i.transformFlags&=-67108865,i.jsDoc=void 0,i}function ir(e,t,n){return e.modifiers!==t||e.expression!==n?Pi(rr(t,e.isExportEquals,n),e):e}function or(e,t,n,r,i){const o=S(278);return o.modifiers=Ci(e),o.isTypeOnly=t,o.exportClause=n,o.moduleSpecifier=r,o.attributes=o.assertClause=i,o.transformFlags|=$k(o.modifiers)|Xk(o.exportClause)|Xk(o.moduleSpecifier),o.transformFlags&=-67108865,o.jsDoc=void 0,o}function sr(e,t,n,r,i,o){return e.modifiers!==t||e.isTypeOnly!==n||e.exportClause!==r||e.moduleSpecifier!==i||e.attributes!==o?function(e,t){e!==t&&e.modifiers===t.modifiers&&(e.modifiers=t.modifiers);return Pi(e,t)}(or(t,n,r,i,o),e):e}function ar(e){const t=x(279);return t.elements=b(e),t.transformFlags|=$k(t.elements),t.transformFlags&=-67108865,t}function cr(e,t,n){const r=x(281);return r.isTypeOnly=e,r.propertyName=Ni(t),r.name=Ni(n),r.transformFlags|=Xk(r.propertyName)|Xk(r.name),r.transformFlags&=-67108865,r.jsDoc=void 0,r}function lr(e){const t=x(283);return t.expression=e,t.transformFlags|=Xk(t.expression),t.transformFlags&=-67108865,t}function ur(e,t,n=!1){const i=dr(e,n?t&&r().parenthesizeNonArrayTypeOfPostfixType(t):t);return i.postfix=n,i}function dr(e,t){const n=x(e);return n.type=t,n}function _r(e,t){const n=S(317);return n.parameters=Ci(e),n.type=t,n.transformFlags=$k(n.parameters)|(n.type?1:0),n.jsDoc=void 0,n.locals=void 0,n.nextContainer=void 0,n.typeArguments=void 0,n}function pr(e,t=!1){const n=S(322);return n.jsDocPropertyTags=Ci(e),n.isArrayType=t,n}function fr(e){const t=x(309);return t.type=e,t}function mr(e,t,n){const r=S(323);return r.typeParameters=Ci(e),r.parameters=b(t),r.type=n,r.jsDoc=void 0,r.locals=void 0,r.nextContainer=void 0,r}function hr(e){const t=Gk(e.kind);return e.tagName.escapedText===Tc(t)?e.tagName:P(t)}function gr(e,t,n){const r=x(e);return r.tagName=t,r.comment=n,r}function yr(e,t,n){const r=S(e);return r.tagName=t,r.comment=n,r}function vr(e,t,n,r){const i=gr(345,e??P("template"),r);return i.constraint=t,i.typeParameters=b(n),i}function br(e,t,n,r){const i=yr(346,e??P("typedef"),r);return i.typeExpression=t,i.fullName=n,i.name=FP(n),i.locals=void 0,i.nextContainer=void 0,i}function xr(e,t,n,r,i,o){const s=yr(341,e??P("param"),o);return s.typeExpression=r,s.name=t,s.isNameFirst=!!i,s.isBracketed=n,s}function Sr(e,t,n,r,i,o){const s=yr(348,e??P("prop"),o);return s.typeExpression=r,s.name=t,s.isNameFirst=!!i,s.isBracketed=n,s}function Tr(e,t,n,r){const i=yr(338,e??P("callback"),r);return i.typeExpression=t,i.fullName=n,i.name=FP(n),i.locals=void 0,i.nextContainer=void 0,i}function wr(e,t,n){const r=gr(339,e??P("overload"),n);return r.typeExpression=t,r}function kr(e,t,n){const r=gr(328,e??P("augments"),n);return r.class=t,r}function Er(e,t,n){const r=gr(329,e??P("implements"),n);return r.class=t,r}function Cr(e,t,n){const r=gr(347,e??P("see"),n);return r.name=t,r}function Nr(e){const t=x(310);return t.name=e,t}function Ar(e,t){const n=x(311);return n.left=e,n.right=t,n.transformFlags|=Xk(n.left)|Xk(n.right),n}function Ir(e,t){const n=x(324);return n.name=e,n.text=t,n}function Dr(e,t){const n=x(325);return n.name=e,n.text=t,n}function Pr(e,t){const n=x(326);return n.name=e,n.text=t,n}function Mr(e,t,n){return gr(e,t??P(Gk(e)),n)}function Or(e,t,n,r){const i=gr(e,t??P(Gk(e)),r);return i.typeExpression=n,i}function Fr(e,t){return gr(327,e,t)}function Rr(e,t,n){const r=yr(340,e??P(Gk(340)),n);return r.typeExpression=t,r.locals=void 0,r.nextContainer=void 0,r}function Lr(e,t,n,r,i){const o=gr(351,e??P("import"),i);return o.importClause=t,o.moduleSpecifier=n,o.attributes=r,o.comment=i,o}function jr(e){const t=x(321);return t.text=e,t}function zr(e,t){const n=x(320);return n.comment=e,n.tags=Ci(t),n}function Ur(e,t,n){const r=x(284);return r.openingElement=e,r.children=b(t),r.closingElement=n,r.transformFlags|=Xk(r.openingElement)|$k(r.children)|Xk(r.closingElement)|2,r}function Br(e,t,n){const r=x(285);return r.tagName=e,r.typeArguments=Ci(t),r.attributes=n,r.transformFlags|=Xk(r.tagName)|$k(r.typeArguments)|Xk(r.attributes)|2,r.typeArguments&&(r.transformFlags|=1),r}function qr(e,t,n){const r=x(286);return r.tagName=e,r.typeArguments=Ci(t),r.attributes=n,r.transformFlags|=Xk(r.tagName)|$k(r.typeArguments)|Xk(r.attributes)|2,t&&(r.transformFlags|=1),r}function Vr(e){const t=x(287);return t.tagName=e,t.transformFlags|=2|Xk(t.tagName),t}function Kr(e,t,n){const r=x(288);return r.openingFragment=e,r.children=b(t),r.closingFragment=n,r.transformFlags|=Xk(r.openingFragment)|$k(r.children)|Xk(r.closingFragment)|2,r}function Jr(e,t){const n=x(12);return n.text=e,n.containsOnlyTriviaWhiteSpaces=!!t,n.transformFlags|=2,n}function Wr(e,t){const n=S(291);return n.name=e,n.initializer=t,n.transformFlags|=Xk(n.name)|Xk(n.initializer)|2,n}function Hr(e){const t=S(292);return t.properties=b(e),t.transformFlags|=2|$k(t.properties),t}function Gr(e){const t=x(293);return t.expression=e,t.transformFlags|=2|Xk(t.expression),t}function Qr(e,t){const n=x(294);return n.dotDotDotToken=e,n.expression=t,n.transformFlags|=Xk(n.dotDotDotToken)|Xk(n.expression)|2,n}function Yr(e,t){const n=x(295);return n.namespace=e,n.name=t,n.transformFlags|=Xk(n.namespace)|Xk(n.name)|2,n}function Zr(e,t){const n=x(296);return n.expression=r().parenthesizeExpressionForDisallowedComma(e),n.statements=b(t),n.transformFlags|=Xk(n.expression)|$k(n.statements),n.jsDoc=void 0,n}function Xr(e){const t=x(297);return t.statements=b(e),t.transformFlags=$k(t.statements),t}function $r(e,t){const n=x(298);switch(n.token=e,n.types=b(t),n.transformFlags|=$k(n.types),e){case 96:n.transformFlags|=1024;break;case 119:n.transformFlags|=1;break;default:return Tn.assertNever(e)}return n}function ei(e,t){const n=x(299);return n.variableDeclaration=function(e){if("string"==typeof e||e&&!$A(e))return En(e,void 0,void 0,void 0);return e}(e),n.block=t,n.transformFlags|=Xk(n.variableDeclaration)|Xk(n.block)|(e?0:64),n.locals=void 0,n.nextContainer=void 0,n}function ti(e,t){const n=S(303);return n.name=Ni(e),n.initializer=r().parenthesizeExpressionForDisallowedComma(t),n.transformFlags|=Yk(n.name)|Xk(n.initializer),n.modifiers=void 0,n.questionToken=void 0,n.exclamationToken=void 0,n.jsDoc=void 0,n}function ni(e,t,n){return e.name!==t||e.initializer!==n?function(e,t){e!==t&&(e.modifiers=t.modifiers,e.questionToken=t.questionToken,e.exclamationToken=t.exclamationToken);return Pi(e,t)}(ti(t,n),e):e}function ri(e,t){const n=S(304);return n.name=Ni(e),n.objectAssignmentInitializer=t&&r().parenthesizeExpressionForDisallowedComma(t),n.transformFlags|=Zk(n.name)|Xk(n.objectAssignmentInitializer)|1024,n.equalsToken=void 0,n.modifiers=void 0,n.questionToken=void 0,n.exclamationToken=void 0,n.jsDoc=void 0,n}function ii(e){const t=S(305);return t.expression=r().parenthesizeExpressionForDisallowedComma(e),t.transformFlags|=65664|Xk(t.expression),t.jsDoc=void 0,t}function oi(e,t){const n=S(306);return n.name=Ni(e),n.initializer=t&&r().parenthesizeExpressionForDisallowedComma(t),n.transformFlags|=Xk(n.name)|Xk(n.initializer)|1,n.jsDoc=void 0,n}function si(e){const t=Object.create(e.redirectTarget);return Object.defineProperties(t,{id:{get(){return this.redirectInfo.redirectTarget.id},set(e){this.redirectInfo.redirectTarget.id=e}},symbol:{get(){return this.redirectInfo.redirectTarget.symbol},set(e){this.redirectInfo.redirectTarget.symbol=e}}}),t.redirectInfo=e,t}function ai(e){const r=e.redirectInfo?function(e){const t=si(e.redirectInfo);return t.flags|=-17&e.flags,t.fileName=e.fileName,t.path=e.path,t.resolvedPath=e.resolvedPath,t.originalFileName=e.originalFileName,t.packageJsonLocations=e.packageJsonLocations,t.packageJsonScope=e.packageJsonScope,t.emitNode=void 0,t}(e):function(e){const n=t.createBaseSourceFileNode(307);n.flags|=-17&e.flags;for(const t in e)!je(n,t)&&je(e,t)&&("emitNode"!==t?n[t]=e[t]:n.emitNode=void 0);return n}(e);return n(r,e),r}function ci(e){const t=x(308);return t.sourceFiles=e,t.syntheticFileReferences=void 0,t.syntheticTypeReferences=void 0,t.syntheticLibReferences=void 0,t.hasNoDefaultLib=void 0,t}function li(e,t){const n=x(354);return n.expression=e,n.original=t,n.transformFlags|=1|Xk(n.expression),vM(n,t),n}function ui(e,t){return e.expression!==t?Pi(li(t,e.original),e):e}function di(e){if(fy(e)&&!xc(e)&&!e.original&&!e.emitNode&&!e.id){if(DA(e))return e.elements;if(gA(e)&&BC(e.operatorToken))return[e.left,e.right]}return e}function _i(e){const t=x(355);return t.elements=b(V(e,di)),t.transformFlags|=$k(t.elements),t}function pi(e,t){const n=x(356);return n.expression=e,n.thisArg=t,n.transformFlags|=Xk(n.expression)|Xk(n.thisArg),n}function fi(e){if(void 0===e)return e;if(YI(e))return ai(e);if(tu(e))return function(e){const t=I(e.escapedText);return t.flags|=-17&e.flags,t.transformFlags=e.transformFlags,n(t,e),KE(t,{...e.emitNode.autoGenerate}),t}(e);if(YC(e))return function(e){const t=I(e.escapedText);t.flags|=-17&e.flags,t.jsDoc=e.jsDoc,t.flowNode=e.flowNode,t.symbol=e.symbol,t.transformFlags=e.transformFlags,n(t,e);const r=VE(e);return r&&qE(t,r),t}(e);if(nu(e))return function(e){const t=F(e.escapedText);return t.flags|=-17&e.flags,t.transformFlags=e.transformFlags,n(t,e),KE(t,{...e.emitNode.autoGenerate}),t}(e);if(ZC(e))return function(e){const t=F(e.escapedText);return t.flags|=-17&e.flags,t.transformFlags=e.transformFlags,n(t,e),t}(e);const r=zl(e.kind)?t.createBaseNode(e.kind):t.createBaseTokenNode(e.kind);r.flags|=-17&e.flags,r.transformFlags=e.transformFlags,n(r,e);for(const t in e)!je(r,t)&&je(e,t)&&(r[t]=e[t]);return r}function mi(){return It(k("0"))}function hi(e,t,n){return El(e)?dt(nt(e,void 0,t),void 0,void 0,n):ut(tt(e,t),void 0,n)}function gi(e,t,n){return hi(P(e),t,n)}function yi(e,t,n){return!!n&&(e.push(ti(t,n)),!0)}function vi(e,t){const n=fg(e);switch(n.kind){case 80:return t;case 110:case 9:case 10:case 11:return!1;case 209:return 0!==n.elements.length;case 210:return n.properties.length>0;default:return!0}}function bi(e,t,n,r=0,i){const o=i?e&&Mc(e):Oc(e);if(o&&YC(o)&&!tu(o)){const e=Bw(vM(fi(o),o),o.parent);return r|=rp(o),n||(r|=96),t||(r|=3072),r&&dE(e,r),e}return O(e)}function xi(e,t,n){return bi(e,t,n,16384)}function Si(e,t,n,r){const i=tt(e,fy(t)?t:fi(t));vM(i,t);let o=0;return r||(o|=96),n||(o|=3072),o&&dE(i,o),i}function Ti(){return bP(ln(N("use strict")))}function wi(e,t,n=0,r){Tn.assert(0===t.length,"Prologue directives should be at the first statement in the target statements array");let i=!1;const o=e.length;for(;n<o;){const r=e[n];if(!yf(r))break;MC((s=r).expression)&&"use strict"===s.expression.text&&(i=!0),t.push(r),n++}var s;return r&&!i&&t.push(Ti()),n}function ki(e,t,n,r,i=mt){const o=e.length;for(;void 0!==n&&n<o;){const o=e[n];if(!(2097152&rp(o)&&i(o)))break;_e(t,r?iU(o,r,kd):o),n++}return n}function Ei(e,t,n){let r=n;for(;r<e.length&&t(e[r]);)r++;return r}function Ci(e){return e?b(e):void 0}function Ni(e){return"string"==typeof e?P(e):e}function Ai(e){return"string"==typeof e?N(e):"number"==typeof e?k(e):"boolean"==typeof e?e?B():q():e}function Ii(e){return e&&r().parenthesizeExpressionForDisallowedComma(e)}function Di(e){return e&&CI(e)?vM(n(an(),e),e):e}function Pi(e,t){return e!==t&&(n(e,t),vM(e,t)),e}}function Gk(e){switch(e){case 344:return"type";case 342:return"returns";case 343:return"this";case 340:return"enum";case 330:return"author";case 332:return"class";case 333:return"public";case 334:return"private";case 335:return"protected";case 336:return"readonly";case 337:return"override";case 345:return"template";case 346:return"typedef";case 341:return"param";case 348:return"prop";case 338:return"callback";case 339:return"overload";case 328:return"augments";case 329:return"implements";case 351:return"import";default:return Tn.fail(`Unsupported kind: ${Tn.formatSyntaxKind(e)}`)}}var Qk={};function Yk(e){return e&&YC(e)?Zk(e):Xk(e)}function Zk(e){return-67108865&Xk(e)}function Xk(e){if(!e)return 0;const t=e.transformFlags&~tE(e.kind);return Pc(e)&&du(e.name)?(n=e.name,t|134234112&n.transformFlags):t;var n}function $k(e){return e?e.transformFlags:0}function eE(e){let t=0;for(const n of e)t|=Xk(n);e.transformFlags=t}function tE(e){if(e>=182&&e<=205)return-2;switch(e){case 213:case 214:case 209:case 206:case 207:return-2147450880;case 267:return-1941676032;case 169:case 216:case 238:case 234:case 354:case 217:case 108:case 211:case 212:default:return-2147483648;case 219:return-2072174592;case 218:case 262:return-1937940480;case 261:return-2146893824;case 263:case 231:return-2147344384;case 176:return-1937948672;case 172:return-2013249536;case 174:case 177:case 178:return-2005057536;case 133:case 150:case 163:case 146:case 154:case 151:case 136:case 155:case 116:case 168:case 171:case 173:case 179:case 180:case 181:case 264:case 265:return-2;case 210:return-2147278848;case 299:return-2147418112}}var nE=Lk();function rE(e){return e.flags|=16,e}var iE,oE=Hk(4,{createBaseSourceFileNode:e=>rE(nE.createBaseSourceFileNode(e)),createBaseIdentifierNode:e=>rE(nE.createBaseIdentifierNode(e)),createBasePrivateIdentifierNode:e=>rE(nE.createBasePrivateIdentifierNode(e)),createBaseTokenNode:e=>rE(nE.createBaseTokenNode(e)),createBaseNode:e=>rE(nE.createBaseNode(e))});function sE(e,t,n){return new(iE||(iE=tS.getSourceMapSourceConstructor()))(e,t,n)}function aE(e,t){if(e.original!==t&&(e.original=t,t)){const n=t.emitNode;n&&(e.emitNode=function(e,t){const{flags:n,internalFlags:r,leadingComments:i,trailingComments:o,commentRange:s,sourceMapRange:a,tokenSourceMapRanges:c,constantValue:l,helpers:u,startsOnNewLine:d,snippetElement:_,classThis:p,assignedName:f}=e;t||(t={});n&&(t.flags=n);r&&(t.internalFlags=-9&r);i&&(t.leadingComments=me(i.slice(),t.leadingComments));o&&(t.trailingComments=me(o.slice(),t.trailingComments));s&&(t.commentRange=s);a&&(t.sourceMapRange=a);c&&(t.tokenSourceMapRanges=function(e,t){t||(t=[]);for(const n in e)t[n]=e[n];return t}(c,t.tokenSourceMapRanges));void 0!==l&&(t.constantValue=l);if(u)for(const m of u)t.helpers=ge(t.helpers,m);void 0!==d&&(t.startsOnNewLine=d);void 0!==_&&(t.snippetElement=_);p&&(t.classThis=p);f&&(t.assignedName=f);return t}(n,e.emitNode))}return e}function cE(e){if(e.emitNode)Tn.assert(!(8&e.emitNode.internalFlags),"Invalid attempt to mutate an immutable node.");else{if(xc(e)){if(307===e.kind)return e.emitNode={annotatedNodes:[e]};cE(C_(Sc(C_(e)))??Tn.fail("Could not determine parsed source file.")).annotatedNodes.push(e)}e.emitNode={}}return e.emitNode}function lE(e){var t,n;const r=null==(n=null==(t=C_(Sc(e)))?void 0:t.emitNode)?void 0:n.annotatedNodes;if(r)for(const i of r)i.emitNode=void 0}function uE(e){const t=cE(e);return t.flags|=3072,t.leadingComments=void 0,t.trailingComments=void 0,e}function dE(e,t){return cE(e).flags=t,e}function _E(e,t){const n=cE(e);return n.flags=n.flags|t,e}function pE(e,t){return cE(e).internalFlags=t,e}function fE(e,t){const n=cE(e);return n.internalFlags=n.internalFlags|t,e}function mE(e){var t;return(null==(t=e.emitNode)?void 0:t.sourceMapRange)??e}function hE(e,t){return cE(e).sourceMapRange=t,e}function gE(e,t){var n,r;return null==(r=null==(n=e.emitNode)?void 0:n.tokenSourceMapRanges)?void 0:r[t]}function yE(e,t,n){const r=cE(e);return(r.tokenSourceMapRanges??(r.tokenSourceMapRanges=[]))[t]=n,e}function vE(e){var t;return null==(t=e.emitNode)?void 0:t.startsOnNewLine}function bE(e,t){return cE(e).startsOnNewLine=t,e}function xE(e){var t;return(null==(t=e.emitNode)?void 0:t.commentRange)??e}function SE(e,t){return cE(e).commentRange=t,e}function TE(e){var t;return null==(t=e.emitNode)?void 0:t.leadingComments}function wE(e,t){return cE(e).leadingComments=t,e}function kE(e,t,n,r){return wE(e,_e(TE(e),{kind:t,pos:-1,end:-1,hasTrailingNewLine:r,text:n}))}function EE(e){var t;return null==(t=e.emitNode)?void 0:t.trailingComments}function CE(e,t){return cE(e).trailingComments=t,e}function NE(e,t,n,r){return CE(e,_e(EE(e),{kind:t,pos:-1,end:-1,hasTrailingNewLine:r,text:n}))}function AE(e,t){wE(e,TE(t)),CE(e,EE(t));const n=cE(t);return n.leadingComments=void 0,n.trailingComments=void 0,e}function IE(e){var t;return null==(t=e.emitNode)?void 0:t.constantValue}function DE(e,t){return cE(e).constantValue=t,e}function PE(e,t){const n=cE(e);return n.helpers=_e(n.helpers,t),e}function ME(e,t){if($(t)){const n=cE(e);for(const e of t)n.helpers=ge(n.helpers,e)}return e}function OE(e,t){var n;const r=null==(n=e.emitNode)?void 0:n.helpers;return!!r&&$t(r,t)}function FE(e){var t;return null==(t=e.emitNode)?void 0:t.helpers}function RE(e,t,n){const r=e.emitNode,i=r&&r.helpers;if(!$(i))return;const o=cE(t);let s=0;for(let a=0;a<i.length;a++){const e=i[a];n(e)?(s++,o.helpers=ge(o.helpers,e)):s>0&&(i[a-s]=e)}s>0&&(i.length-=s)}function LE(e){var t;return null==(t=e.emitNode)?void 0:t.snippetElement}function jE(e,t){return cE(e).snippetElement=t,e}function zE(e){return cE(e).internalFlags|=4,e}function UE(e,t){return cE(e).typeNode=t,e}function BE(e){var t;return null==(t=e.emitNode)?void 0:t.typeNode}function qE(e,t){return cE(e).identifierTypeArguments=t,e}function VE(e){var t;return null==(t=e.emitNode)?void 0:t.identifierTypeArguments}function KE(e,t){return cE(e).autoGenerate=t,e}function JE(e){var t;return null==(t=e.emitNode)?void 0:t.autoGenerate}function WE(e,t){return cE(e).generatedImportReference=t,e}function HE(e){var t;return null==(t=e.emitNode)?void 0:t.generatedImportReference}var GE=(e=>(e.Field="f",e.Method="m",e.Accessor="a",e))(GE||{});function QE(e){const t=e.factory,n=St((()=>pE(t.createTrue(),8))),r=St((()=>pE(t.createFalse(),8)));return{getUnscopedHelperName:i,createDecorateHelper:function(n,r,o,s){e.requestEmitHelper(XE);const a=[];a.push(t.createArrayLiteralExpression(n,!0)),a.push(r),o&&(a.push(o),s&&a.push(s));return t.createCallExpression(i("__decorate"),void 0,a)},createMetadataHelper:function(n,r){return e.requestEmitHelper($E),t.createCallExpression(i("__metadata"),void 0,[t.createStringLiteral(n),r])},createParamHelper:function(n,r,o){return e.requestEmitHelper(eC),vM(t.createCallExpression(i("__param"),void 0,[t.createNumericLiteral(r+""),n]),o)},createESDecorateHelper:function(n,r,o,a,c,l){return e.requestEmitHelper(tC),t.createCallExpression(i("__esDecorate"),void 0,[n??t.createNull(),r??t.createNull(),o,s(a),c,l])},createRunInitializersHelper:function(n,r,o){return e.requestEmitHelper(nC),t.createCallExpression(i("__runInitializers"),void 0,o?[n,r,o]:[n,r])},createAssignHelper:function(n){if(MS(e.getCompilerOptions())>=2)return t.createCallExpression(t.createPropertyAccessExpression(t.createIdentifier("Object"),"assign"),void 0,n);return e.requestEmitHelper(rC),t.createCallExpression(i("__assign"),void 0,n)},createAwaitHelper:function(n){return e.requestEmitHelper(iC),t.createCallExpression(i("__await"),void 0,[n])},createAsyncGeneratorHelper:function(n,r){return e.requestEmitHelper(iC),e.requestEmitHelper(oC),(n.emitNode||(n.emitNode={})).flags|=1572864,t.createCallExpression(i("__asyncGenerator"),void 0,[r?t.createThis():t.createVoidZero(),t.createIdentifier("arguments"),n])},createAsyncDelegatorHelper:function(n){return e.requestEmitHelper(iC),e.requestEmitHelper(sC),t.createCallExpression(i("__asyncDelegator"),void 0,[n])},createAsyncValuesHelper:function(n){return e.requestEmitHelper(aC),t.createCallExpression(i("__asyncValues"),void 0,[n])},createRestHelper:function(n,r,o,s){e.requestEmitHelper(cC);const a=[];let c=0;for(let e=0;e<r.length-1;e++){const n=DP(r[e]);if(n)if(_N(n)){Tn.assertIsDefined(o,"Encountered computed property name but 'computedTempVariables' argument was not provided.");const e=o[c];c++,a.push(t.createConditionalExpression(t.createTypeCheck(e,"symbol"),void 0,e,void 0,t.createAdd(e,t.createStringLiteral(""))))}else a.push(t.createStringLiteralFromNode(n))}return t.createCallExpression(i("__rest"),void 0,[n,vM(t.createArrayLiteralExpression(a),s)])},createAwaiterHelper:function(n,r,o,s,a){e.requestEmitHelper(lC);const c=t.createFunctionExpression(void 0,t.createToken(42),void 0,void 0,s??[],void 0,a);return(c.emitNode||(c.emitNode={})).flags|=1572864,t.createCallExpression(i("__awaiter"),void 0,[n?t.createThis():t.createVoidZero(),r??t.createVoidZero(),o?nP(t,o):t.createVoidZero(),c])},createExtendsHelper:function(n){return e.requestEmitHelper(uC),t.createCallExpression(i("__extends"),void 0,[n,t.createUniqueName("_super",48)])},createTemplateObjectHelper:function(n,r){return e.requestEmitHelper(dC),t.createCallExpression(i("__makeTemplateObject"),void 0,[n,r])},createSpreadArrayHelper:function(o,s,a){return e.requestEmitHelper(pC),t.createCallExpression(i("__spreadArray"),void 0,[o,s,a?n():r()])},createPropKeyHelper:function(n){return e.requestEmitHelper(fC),t.createCallExpression(i("__propKey"),void 0,[n])},createSetFunctionNameHelper:function(t,n,r){return e.requestEmitHelper(mC),e.factory.createCallExpression(i("__setFunctionName"),void 0,r?[t,n,e.factory.createStringLiteral(r)]:[t,n])},createValuesHelper:function(n){return e.requestEmitHelper(hC),t.createCallExpression(i("__values"),void 0,[n])},createReadHelper:function(n,r){return e.requestEmitHelper(_C),t.createCallExpression(i("__read"),void 0,void 0!==r?[n,t.createNumericLiteral(r+"")]:[n])},createGeneratorHelper:function(n){return e.requestEmitHelper(gC),t.createCallExpression(i("__generator"),void 0,[t.createThis(),n])},createImportStarHelper:function(n){return e.requestEmitHelper(bC),t.createCallExpression(i("__importStar"),void 0,[n])},createImportStarCallbackHelper:function(){return e.requestEmitHelper(bC),i("__importStar")},createImportDefaultHelper:function(n){return e.requestEmitHelper(xC),t.createCallExpression(i("__importDefault"),void 0,[n])},createExportStarHelper:function(n,r=t.createIdentifier("exports")){return e.requestEmitHelper(SC),e.requestEmitHelper(yC),t.createCallExpression(i("__exportStar"),void 0,[n,r])},createClassPrivateFieldGetHelper:function(n,r,o,s){let a;e.requestEmitHelper(TC),a=s?[n,r,t.createStringLiteral(o),s]:[n,r,t.createStringLiteral(o)];return t.createCallExpression(i("__classPrivateFieldGet"),void 0,a)},createClassPrivateFieldSetHelper:function(n,r,o,s,a){let c;e.requestEmitHelper(wC),c=a?[n,r,o,t.createStringLiteral(s),a]:[n,r,o,t.createStringLiteral(s)];return t.createCallExpression(i("__classPrivateFieldSet"),void 0,c)},createClassPrivateFieldInHelper:function(n,r){return e.requestEmitHelper(kC),t.createCallExpression(i("__classPrivateFieldIn"),void 0,[n,r])},createAddDisposableResourceHelper:function(n,r,o){return e.requestEmitHelper(EC),t.createCallExpression(i("__addDisposableResource"),void 0,[n,r,o?t.createTrue():t.createFalse()])},createDisposeResourcesHelper:function(n){return e.requestEmitHelper(CC),t.createCallExpression(i("__disposeResources"),void 0,[n])}};function i(e){return dE(t.createIdentifier(e),8196)}function o(e,n){const r=[];return r.push(function(e){const n=e.computed?e.name:YC(e.name)?t.createStringLiteralFromNode(e.name):e.name;return t.createPropertyAssignment("has",t.createArrowFunction(void 0,void 0,[t.createParameterDeclaration(void 0,void 0,t.createIdentifier("obj"))],void 0,void 0,t.createBinaryExpression(n,103,t.createIdentifier("obj"))))}(e)),n.get&&r.push(function(e){const n=e.computed?t.createElementAccessExpression(t.createIdentifier("obj"),e.name):t.createPropertyAccessExpression(t.createIdentifier("obj"),e.name);return t.createPropertyAssignment("get",t.createArrowFunction(void 0,void 0,[t.createParameterDeclaration(void 0,void 0,t.createIdentifier("obj"))],void 0,void 0,n))}(e)),n.set&&r.push(function(e){const n=e.computed?t.createElementAccessExpression(t.createIdentifier("obj"),e.name):t.createPropertyAccessExpression(t.createIdentifier("obj"),e.name);return t.createPropertyAssignment("set",t.createArrowFunction(void 0,void 0,[t.createParameterDeclaration(void 0,void 0,t.createIdentifier("obj")),t.createParameterDeclaration(void 0,void 0,t.createIdentifier("value"))],void 0,void 0,t.createBlock([t.createExpressionStatement(t.createAssignment(n,t.createIdentifier("value")))])))}(e)),t.createObjectLiteralExpression(r)}function s(e){return"class"===e.kind?function(e){const n=[t.createPropertyAssignment(t.createIdentifier("kind"),t.createStringLiteral("class")),t.createPropertyAssignment(t.createIdentifier("name"),e.name),t.createPropertyAssignment(t.createIdentifier("metadata"),e.metadata)];return t.createObjectLiteralExpression(n)}(e):function(e){const n=[t.createPropertyAssignment(t.createIdentifier("kind"),t.createStringLiteral(e.kind)),t.createPropertyAssignment(t.createIdentifier("name"),e.name.computed?e.name.name:t.createStringLiteralFromNode(e.name.name)),t.createPropertyAssignment(t.createIdentifier("static"),e.static?t.createTrue():t.createFalse()),t.createPropertyAssignment(t.createIdentifier("private"),e.private?t.createTrue():t.createFalse()),t.createPropertyAssignment(t.createIdentifier("access"),o(e.name,e.access)),t.createPropertyAssignment(t.createIdentifier("metadata"),e.metadata)];return t.createObjectLiteralExpression(n)}(e)}}function YE(e,t){return e===t||e.priority===t.priority?0:void 0===e.priority?1:void 0===t.priority?-1:Pt(e.priority,t.priority)}function ZE(e,...t){return n=>{let r="";for(let i=0;i<t.length;i++)r+=e[i],r+=n(t[i]);return r+=e[e.length-1],r}}var XE={name:"typescript:decorate",importName:"__decorate",scoped:!1,priority:2,text:'\n var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n };'},$E={name:"typescript:metadata",importName:"__metadata",scoped:!1,priority:3,text:'\n var __metadata = (this && this.__metadata) || function (k, v) {\n if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);\n };'},eC={name:"typescript:param",importName:"__param",scoped:!1,priority:4,text:"\n var __param = (this && this.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n };"},tC={name:"typescript:esDecorate",importName:"__esDecorate",scoped:!1,priority:2,text:'\n var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\n function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }\n var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";\n var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\n var _, done = false;\n for (var i = decorators.length - 1; i >= 0; i--) {\n var context = {};\n for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\n context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };\n var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\n if (kind === "accessor") {\n if (result === void 0) continue;\n if (result === null || typeof result !== "object") throw new TypeError("Object expected");\n if (_ = accept(result.get)) descriptor.get = _;\n if (_ = accept(result.set)) descriptor.set = _;\n if (_ = accept(result.init)) initializers.unshift(_);\n }\n else if (_ = accept(result)) {\n if (kind === "field") initializers.unshift(_);\n else descriptor[key] = _;\n }\n }\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\n done = true;\n };'},nC={name:"typescript:runInitializers",importName:"__runInitializers",scoped:!1,priority:2,text:"\n var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {\n var useValue = arguments.length > 2;\n for (var i = 0; i < initializers.length; i++) {\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\n }\n return useValue ? value : void 0;\n };"},rC={name:"typescript:assign",importName:"__assign",scoped:!1,priority:1,text:"\n var __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n };"},iC={name:"typescript:await",importName:"__await",scoped:!1,text:"\n var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }"},oC={name:"typescript:asyncGenerator",importName:"__asyncGenerator",scoped:!1,dependencies:[iC],text:'\n var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _arguments, generator) {\n if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\n return i = {}, verb("next"), verb("throw"), verb("return", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\n function fulfill(value) { resume("next", value); }\n function reject(value) { resume("throw", value); }\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\n };'},sC={name:"typescript:asyncDelegator",importName:"__asyncDelegator",scoped:!1,dependencies:[iC],text:'\n var __asyncDelegator = (this && this.__asyncDelegator) || function (o) {\n var i, p;\n return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\n };'},aC={name:"typescript:asyncValues",importName:"__asyncValues",scoped:!1,text:'\n var __asyncValues = (this && this.__asyncValues) || function (o) {\n if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");\n var m = o[Symbol.asyncIterator], i;\n return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\n };'},cC={name:"typescript:rest",importName:"__rest",scoped:!1,text:'\n var __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === "function")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n };'},lC={name:"typescript:awaiter",importName:"__awaiter",scoped:!1,priority:5,text:'\n var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n };'},uC={name:"typescript:extends",importName:"__extends",scoped:!1,priority:0,text:'\n var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n\n return function (d, b) {\n if (typeof b !== "function" && b !== null)\n throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n })();'},dC={name:"typescript:makeTemplateObject",importName:"__makeTemplateObject",scoped:!1,priority:0,text:'\n var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {\n if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }\n return cooked;\n };'},_C={name:"typescript:read",importName:"__read",scoped:!1,text:'\n var __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === "function" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i["return"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n };'},pC={name:"typescript:spreadArray",importName:"__spreadArray",scoped:!1,text:"\n var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n };"},fC={name:"typescript:propKey",importName:"__propKey",scoped:!1,text:'\n var __propKey = (this && this.__propKey) || function (x) {\n return typeof x === "symbol" ? x : "".concat(x);\n };'},mC={name:"typescript:setFunctionName",importName:"__setFunctionName",scoped:!1,text:'\n var __setFunctionName = (this && this.__setFunctionName) || function (f, name, prefix) {\n if (typeof name === "symbol") name = name.description ? "[".concat(name.description, "]") : "";\n return Object.defineProperty(f, "name", { configurable: true, value: prefix ? "".concat(prefix, " ", name) : name });\n };'},hC={name:"typescript:values",importName:"__values",scoped:!1,text:'\n var __values = (this && this.__values) || function(o) {\n var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === "number") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");\n };'},gC={name:"typescript:generator",importName:"__generator",scoped:!1,priority:6,text:'\n var __generator = (this && this.__generator) || function (thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError("Generator is already executing.");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\n if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n };'},yC={name:"typescript:commonjscreatebinding",importName:"__createBinding",scoped:!1,priority:1,text:'\n var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n }) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n }));'},vC={name:"typescript:commonjscreatevalue",importName:"__setModuleDefault",scoped:!1,priority:1,text:'\n var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, "default", { enumerable: true, value: v });\n }) : function(o, v) {\n o["default"] = v;\n });'},bC={name:"typescript:commonjsimportstar",importName:"__importStar",scoped:!1,dependencies:[yC,vC],priority:2,text:'\n var __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n };'},xC={name:"typescript:commonjsimportdefault",importName:"__importDefault",scoped:!1,text:'\n var __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { "default": mod };\n };'},SC={name:"typescript:export-star",importName:"__exportStar",scoped:!1,dependencies:[yC],priority:2,text:'\n var __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n };'},TC={name:"typescript:classPrivateFieldGet",importName:"__classPrivateFieldGet",scoped:!1,text:'\n var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {\n if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");\n if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");\n return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);\n };'},wC={name:"typescript:classPrivateFieldSet",importName:"__classPrivateFieldSet",scoped:!1,text:'\n var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {\n if (kind === "m") throw new TypeError("Private method is not writable");\n if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");\n if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");\n return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\n };'},kC={name:"typescript:classPrivateFieldIn",importName:"__classPrivateFieldIn",scoped:!1,text:'\n var __classPrivateFieldIn = (this && this.__classPrivateFieldIn) || function(state, receiver) {\n if (receiver === null || (typeof receiver !== "object" && typeof receiver !== "function")) throw new TypeError("Cannot use \'in\' operator on non-object");\n return typeof state === "function" ? receiver === state : state.has(receiver);\n };'},EC={name:"typescript:addDisposableResource",importName:"__addDisposableResource",scoped:!1,text:'\n var __addDisposableResource = (this && this.__addDisposableResource) || function (env, value, async) {\n if (value !== null && value !== void 0) {\n if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected.");\n var dispose, inner;\n if (async) {\n if (!Symbol.asyncDispose) throw new TypeError("Symbol.asyncDispose is not defined.");\n dispose = value[Symbol.asyncDispose];\n }\n if (dispose === void 0) {\n if (!Symbol.dispose) throw new TypeError("Symbol.dispose is not defined.");\n dispose = value[Symbol.dispose];\n if (async) inner = dispose;\n }\n if (typeof dispose !== "function") throw new TypeError("Object not disposable.");\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\n env.stack.push({ value: value, dispose: dispose, async: async });\n }\n else if (async) {\n env.stack.push({ async: true });\n }\n return value;\n };'},CC={name:"typescript:disposeResources",importName:"__disposeResources",scoped:!1,text:'\n var __disposeResources = (this && this.__disposeResources) || (function (SuppressedError) {\n return function (env) {\n function fail(e) {\n env.error = env.hasError ? new SuppressedError(e, env.error, "An error was suppressed during disposal.") : e;\n env.hasError = true;\n }\n function next() {\n while (env.stack.length) {\n var rec = env.stack.pop();\n try {\n var result = rec.dispose && rec.dispose.call(rec.value);\n if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\n }\n catch (e) {\n fail(e);\n }\n }\n if (env.hasError) throw env.error;\n }\n return next();\n };\n })(typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {\n var e = new Error(message);\n return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;\n });'},NC={name:"typescript:async-super",scoped:!0,text:ZE` + const ${"_superIndex"} = name => super[name];`},AC={name:"typescript:advanced-async-super",scoped:!0,text:ZE` + const ${"_superIndex"} = (function (geti, seti) { + const cache = Object.create(null); + return name => cache[name] || (cache[name] = { get value() { return geti(name); }, set value(v) { seti(name, v); } }); + })(name => super[name], (name, value) => super[name] = value);`};function IC(e,t){return iA(e)&&YC(e.expression)&&!!(8192&rp(e.expression))&&e.expression.escapedText===t}function DC(e){return 9===e.kind}function PC(e){return 10===e.kind}function MC(e){return 11===e.kind}function OC(e){return 12===e.kind}function FC(e){return 14===e.kind}function RC(e){return 15===e.kind}function LC(e){return 16===e.kind}function jC(e){return 17===e.kind}function zC(e){return 18===e.kind}function UC(e){return 26===e.kind}function BC(e){return 28===e.kind}function qC(e){return 40===e.kind}function VC(e){return 41===e.kind}function KC(e){return 42===e.kind}function JC(e){return 54===e.kind}function WC(e){return 58===e.kind}function HC(e){return 59===e.kind}function GC(e){return 29===e.kind}function QC(e){return 39===e.kind}function YC(e){return 80===e.kind}function ZC(e){return 81===e.kind}function XC(e){return 95===e.kind}function $C(e){return 90===e.kind}function eN(e){return 134===e.kind}function tN(e){return 131===e.kind}function nN(e){return 135===e.kind}function rN(e){return 148===e.kind}function iN(e){return 126===e.kind}function oN(e){return 128===e.kind}function sN(e){return 164===e.kind}function aN(e){return 129===e.kind}function cN(e){return 108===e.kind}function lN(e){return 102===e.kind}function uN(e){return 84===e.kind}function dN(e){return 166===e.kind}function _N(e){return 167===e.kind}function pN(e){return 168===e.kind}function fN(e){return 169===e.kind}function mN(e){return 170===e.kind}function hN(e){return 171===e.kind}function gN(e){return 172===e.kind}function yN(e){return 173===e.kind}function vN(e){return 174===e.kind}function bN(e){return 175===e.kind}function xN(e){return 176===e.kind}function SN(e){return 177===e.kind}function TN(e){return 178===e.kind}function wN(e){return 179===e.kind}function kN(e){return 180===e.kind}function EN(e){return 181===e.kind}function CN(e){return 182===e.kind}function NN(e){return 183===e.kind}function AN(e){return 184===e.kind}function IN(e){return 185===e.kind}function DN(e){return 186===e.kind}function PN(e){return 187===e.kind}function MN(e){return 188===e.kind}function ON(e){return 189===e.kind}function FN(e){return 202===e.kind}function RN(e){return 190===e.kind}function LN(e){return 191===e.kind}function jN(e){return 192===e.kind}function zN(e){return 193===e.kind}function UN(e){return 194===e.kind}function BN(e){return 195===e.kind}function qN(e){return 196===e.kind}function VN(e){return 197===e.kind}function KN(e){return 198===e.kind}function JN(e){return 199===e.kind}function WN(e){return 200===e.kind}function HN(e){return 201===e.kind}function GN(e){return 205===e.kind}function QN(e){return 204===e.kind}function YN(e){return 203===e.kind}function ZN(e){return 206===e.kind}function XN(e){return 207===e.kind}function $N(e){return 208===e.kind}function eA(e){return 209===e.kind}function tA(e){return 210===e.kind}function nA(e){return 211===e.kind}function rA(e){return 212===e.kind}function iA(e){return 213===e.kind}function oA(e){return 214===e.kind}function sA(e){return 215===e.kind}function aA(e){return 216===e.kind}function cA(e){return 217===e.kind}function lA(e){return 218===e.kind}function uA(e){return 219===e.kind}function dA(e){return 220===e.kind}function _A(e){return 221===e.kind}function pA(e){return 222===e.kind}function fA(e){return 223===e.kind}function mA(e){return 224===e.kind}function hA(e){return 225===e.kind}function gA(e){return 226===e.kind}function yA(e){return 227===e.kind}function vA(e){return 228===e.kind}function bA(e){return 229===e.kind}function xA(e){return 230===e.kind}function SA(e){return 231===e.kind}function TA(e){return 232===e.kind}function wA(e){return 233===e.kind}function kA(e){return 234===e.kind}function EA(e){return 238===e.kind}function CA(e){return 235===e.kind}function NA(e){return 236===e.kind}function AA(e){return 237===e.kind}function IA(e){return 354===e.kind}function DA(e){return 355===e.kind}function PA(e){return 239===e.kind}function MA(e){return 240===e.kind}function OA(e){return 241===e.kind}function FA(e){return 243===e.kind}function RA(e){return 242===e.kind}function LA(e){return 244===e.kind}function jA(e){return 245===e.kind}function zA(e){return 246===e.kind}function UA(e){return 247===e.kind}function BA(e){return 248===e.kind}function qA(e){return 249===e.kind}function VA(e){return 250===e.kind}function KA(e){return 251===e.kind}function JA(e){return 252===e.kind}function WA(e){return 253===e.kind}function HA(e){return 254===e.kind}function GA(e){return 255===e.kind}function QA(e){return 256===e.kind}function YA(e){return 257===e.kind}function ZA(e){return 258===e.kind}function XA(e){return 259===e.kind}function $A(e){return 260===e.kind}function eI(e){return 261===e.kind}function tI(e){return 262===e.kind}function nI(e){return 263===e.kind}function rI(e){return 264===e.kind}function iI(e){return 265===e.kind}function oI(e){return 266===e.kind}function sI(e){return 267===e.kind}function aI(e){return 268===e.kind}function cI(e){return 269===e.kind}function lI(e){return 270===e.kind}function uI(e){return 271===e.kind}function dI(e){return 272===e.kind}function _I(e){return 273===e.kind}function pI(e){return 302===e.kind}function fI(e){return 300===e.kind}function mI(e){return 301===e.kind}function hI(e){return 300===e.kind}function gI(e){return 301===e.kind}function yI(e){return 274===e.kind}function vI(e){return 280===e.kind}function bI(e){return 275===e.kind}function xI(e){return 276===e.kind}function SI(e){return 277===e.kind}function TI(e){return 278===e.kind}function wI(e){return 279===e.kind}function kI(e){return 281===e.kind}function EI(e){return 282===e.kind}function CI(e){return 353===e.kind}function NI(e){return 356===e.kind}function AI(e){return 283===e.kind}function II(e){return 284===e.kind}function DI(e){return 285===e.kind}function PI(e){return 286===e.kind}function MI(e){return 287===e.kind}function OI(e){return 288===e.kind}function FI(e){return 289===e.kind}function RI(e){return 290===e.kind}function LI(e){return 291===e.kind}function jI(e){return 292===e.kind}function zI(e){return 293===e.kind}function UI(e){return 294===e.kind}function BI(e){return 295===e.kind}function qI(e){return 296===e.kind}function VI(e){return 297===e.kind}function KI(e){return 298===e.kind}function JI(e){return 299===e.kind}function WI(e){return 303===e.kind}function HI(e){return 304===e.kind}function GI(e){return 305===e.kind}function QI(e){return 306===e.kind}function YI(e){return 307===e.kind}function ZI(e){return 308===e.kind}function XI(e){return 309===e.kind}function $I(e){return 310===e.kind}function eD(e){return 311===e.kind}function tD(e){return 324===e.kind}function nD(e){return 325===e.kind}function rD(e){return 326===e.kind}function iD(e){return 312===e.kind}function oD(e){return 313===e.kind}function sD(e){return 314===e.kind}function aD(e){return 315===e.kind}function cD(e){return 316===e.kind}function lD(e){return 317===e.kind}function uD(e){return 318===e.kind}function dD(e){return 319===e.kind}function _D(e){return 320===e.kind}function pD(e){return 322===e.kind}function fD(e){return 323===e.kind}function mD(e){return 328===e.kind}function hD(e){return 330===e.kind}function gD(e){return 332===e.kind}function yD(e){return 338===e.kind}function vD(e){return 333===e.kind}function bD(e){return 334===e.kind}function xD(e){return 335===e.kind}function SD(e){return 336===e.kind}function TD(e){return 337===e.kind}function wD(e){return 339===e.kind}function kD(e){return 331===e.kind}function ED(e){return 347===e.kind}function CD(e){return 340===e.kind}function ND(e){return 341===e.kind}function AD(e){return 342===e.kind}function ID(e){return 343===e.kind}function DD(e){return 344===e.kind}function PD(e){return 345===e.kind}function MD(e){return 346===e.kind}function OD(e){return 327===e.kind}function FD(e){return 348===e.kind}function RD(e){return 329===e.kind}function LD(e){return 350===e.kind}function jD(e){return 349===e.kind}function zD(e){return 351===e.kind}function UD(e){return 352===e.kind}var BD,qD=new WeakMap;function VD(e,t){var n;const r=e.kind;return zl(r)?352===r?e._children:null==(n=qD.get(t))?void 0:n.get(e):_}function KD(e,t,n){352===e.kind&&Tn.fail("Should not need to re-set the children of a SyntaxList.");let r=qD.get(t);return void 0===r&&(r=new WeakMap,qD.set(t,r)),r.set(e,n),n}function JD(e,t){var n;352===e.kind&&Tn.fail("Did not expect to unset the children of a SyntaxList."),null==(n=qD.get(t))||n.delete(e)}function WD(e,t){const n=qD.get(e);void 0!==n&&(qD.delete(e),qD.set(t,n))}function HD(e){return e.createExportDeclaration(void 0,!1,e.createNamedExports([]),void 0)}function GD(e,t,n,r){if(_N(n))return vM(e.createElementAccessExpression(t,n.expression),r);{const r=vM(Sl(n)?e.createPropertyAccessExpression(t,n):e.createElementAccessExpression(t,n),n);return _E(r,128),r}}function QD(e,t){const n=TM.createIdentifier(e||"React");return Bw(n,Sc(t)),n}function YD(e,t,n){if(dN(t)){const r=YD(e,t.left,n),i=e.createIdentifier(kc(t.right));return i.escapedText=t.right.escapedText,e.createPropertyAccessExpression(r,i)}return QD(kc(t),n)}function ZD(e,t,n,r){return t?YD(e,t,r):e.createPropertyAccessExpression(QD(n,r),"createElement")}function XD(e,t,n,r,i,o){const s=[n];if(r&&s.push(r),i&&i.length>0)if(r||s.push(e.createNull()),i.length>1)for(const a of i)bP(a),s.push(a);else s.push(i[0]);return vM(e.createCallExpression(t,void 0,s),o)}function $D(e,t,n,r,i,o,s){const a=function(e,t,n,r){return t?YD(e,t,r):e.createPropertyAccessExpression(QD(n,r),"Fragment")}(e,n,r,o),c=[a,e.createNull()];if(i&&i.length>0)if(i.length>1)for(const l of i)bP(l),c.push(l);else c.push(i[0]);return vM(e.createCallExpression(ZD(e,t,r,o),void 0,c),s)}function eP(e,t,n){if(eI(t)){const r=Ee(t.declarations),i=e.updateVariableDeclaration(r,r.name,void 0,void 0,n);return vM(e.createVariableStatement(void 0,e.updateVariableDeclarationList(t,[i])),t)}{const r=vM(e.createAssignment(t,n),t);return vM(e.createExpressionStatement(r),t)}}function tP(e,t,n){return OA(t)?e.updateBlock(t,vM(e.createNodeArray([n,...t.statements]),t.statements)):e.createBlock(e.createNodeArray([t,n]),!0)}function nP(e,t){if(dN(t)){const n=nP(e,t.left),r=Bw(vM(e.cloneNode(t.right),t.right),t.right.parent);return vM(e.createPropertyAccessExpression(n,r),t)}return Bw(vM(e.cloneNode(t),t),t.parent)}function rP(e,t){return YC(t)?e.createStringLiteralFromNode(t):_N(t)?Bw(vM(e.cloneNode(t.expression),t.expression),t.expression.parent):Bw(vM(e.cloneNode(t),t),t.parent)}function iP(e,t,n,r){switch(n.name&&ZC(n.name)&&Tn.failBadSyntaxKind(n.name,"Private identifiers are not allowed in object literals."),n.kind){case 177:case 178:return function(e,t,n,r,i){const{firstAccessor:o,getAccessor:s,setAccessor:a}=Cv(t,n);if(n===o)return vM(e.createObjectDefinePropertyCall(r,rP(e,n.name),e.createPropertyDescriptor({enumerable:e.createFalse(),configurable:!0,get:s&&vM(aE(e.createFunctionExpression(Lc(s),void 0,void 0,void 0,s.parameters,void 0,s.body),s),s),set:a&&vM(aE(e.createFunctionExpression(Lc(a),void 0,void 0,void 0,a.parameters,void 0,a.body),a),a)},!i)),o)}(e,t.properties,n,r,!!t.multiLine);case 303:return function(e,t,n){return aE(vM(e.createAssignment(GD(e,n,t.name,t.name),t.initializer),t),t)}(e,n,r);case 304:return function(e,t,n){return aE(vM(e.createAssignment(GD(e,n,t.name,t.name),e.cloneNode(t.name)),t),t)}(e,n,r);case 174:return function(e,t,n){return aE(vM(e.createAssignment(GD(e,n,t.name,t.name),aE(vM(e.createFunctionExpression(Lc(t),t.asteriskToken,void 0,void 0,t.parameters,void 0,t.body),t),t)),t),t)}(e,n,r)}}function oP(e,t,n,r,i){const o=t.operator;Tn.assert(46===o||47===o,"Expected 'node' to be a pre- or post-increment or pre- or post-decrement expression");const s=e.createTempVariable(r);vM(n=e.createAssignment(s,n),t.operand);let a=mA(t)?e.createPrefixUnaryExpression(o,s):e.createPostfixUnaryExpression(s,o);return vM(a,t),i&&(a=e.createAssignment(i,a),vM(a,t)),vM(n=e.createComma(n,a),t),hA(t)&&vM(n=e.createComma(n,s),t),n}function sP(e){return!!(65536&rp(e))}function aP(e){return!!(32768&rp(e))}function cP(e){return!!(16384&rp(e))}function lP(e){return MC(e.expression)&&"use strict"===e.expression.text}function uP(e){for(const t of e){if(!yf(t))break;if(lP(t))return t}}function dP(e){const t=we(e);return void 0!==t&&yf(t)&&lP(t)}function _P(e){return 226===e.kind&&28===e.operatorToken.kind}function pP(e){return _P(e)||DA(e)}function fP(e){return cA(e)&&Um(e)&&!!ul(e)}function mP(e){const t=dl(e);return Tn.assertIsDefined(t),t}function hP(e,t=15){switch(e.kind){case 217:return!(16&t&&fP(e))&&!!(1&t);case 216:case 234:case 233:case 238:return!!(2&t);case 235:return!!(4&t);case 354:return!!(8&t)}return!1}function gP(e,t=15){for(;hP(e,t);)e=e.expression;return e}function yP(e,t=15){let n=e.parent;for(;hP(n,t);)n=n.parent,Tn.assert(n);return n}function vP(e){return gP(e,6)}function bP(e){return bE(e,!0)}function xP(e){const t=vc(e,YI),n=t&&t.emitNode;return n&&n.externalHelpersModuleName}function SP(e){const t=vc(e,YI),n=t&&t.emitNode;return!(!n||!n.externalHelpersModuleName&&!n.externalHelpers)}function TP(e,t,n,r,i,o,s){if(r.importHelpers&&Sp(n,r)){let a;const c=OS(r);if(c>=5&&c<=99||99===n.impliedNodeFormat){const r=FE(n);if(r){const i=[];for(const e of r)if(!e.scoped){const t=e.importName;t&&he(i,t)}if($(i)){i.sort(Lt),a=e.createNamedImports(R(i,(r=>O_(n,r)?e.createImportSpecifier(!1,void 0,e.createIdentifier(r)):e.createImportSpecifier(!1,e.createIdentifier(r),t.getUnscopedHelperName(r)))));cE(vc(n,YI)).externalHelpers=!0}}}else{const t=wP(e,n,r,i,o||s);t&&(a=e.createNamespaceImport(t))}if(a){const t=e.createImportDeclaration(void 0,e.createImportClause(!1,void 0,a),e.createStringLiteral(e_),void 0);return fE(t,2),t}}}function wP(e,t,n,r,i){if(n.importHelpers&&Sp(t,n)){const o=xP(t);if(o)return o;const s=OS(n);let a=(r||jS(n)&&i)&&4!==s&&(s<5||1===t.impliedNodeFormat);if(!a){const e=FE(t);if(e)for(const t of e)if(!t.scoped){a=!0;break}}if(a){const n=cE(vc(t,YI));return n.externalHelpersModuleName||(n.externalHelpersModuleName=e.createUniqueName(e_))}}}function kP(e,t,n){const r=Dh(t);if(r&&!Ph(t)&&!X_(t)){const t=r.name;return tu(t)?t:e.createIdentifier(Z_(n,t)||kc(t))}return 272===t.kind&&t.importClause||278===t.kind&&t.moduleSpecifier?e.getGeneratedNameForNode(t):void 0}function EP(e,t,n,r,i,o){const s=Ih(t);if(s&&MC(s))return function(e,t,n,r,i){return CP(n,r.getExternalModuleFileFromDeclaration(e),t,i)}(t,r,e,i,o)||function(e,t,n){const r=n.renamedDependencies&&n.renamedDependencies.get(t.text);return r?e.createStringLiteral(r):void 0}(e,s,n)||e.cloneNode(s)}function CP(e,t,n,r){if(t)return t.moduleName?e.createStringLiteral(t.moduleName):!t.isDeclarationFile&&r.outFile?e.createStringLiteral(nv(n,t.fileName)):void 0}function NP(e){if(Ru(e))return e.initializer;if(WI(e)){const t=e.initializer;return bb(t,!0)?t.right:void 0}return HI(e)?e.objectAssignmentInitializer:bb(e,!0)?e.right:xA(e)?NP(e.expression):void 0}function AP(e){if(Ru(e))return e.name;if(!Iu(e))return bb(e,!0)?AP(e.left):xA(e)?AP(e.expression):e;switch(e.kind){case 303:return AP(e.initializer);case 304:return e.name;case 305:return AP(e.expression)}}function IP(e){switch(e.kind){case 169:case 208:return e.dotDotDotToken;case 230:case 305:return e}}function DP(e){const t=PP(e);return Tn.assert(!!t||GI(e),"Invalid property name for binding element."),t}function PP(e){switch(e.kind){case 208:if(e.propertyName){const t=e.propertyName;return ZC(t)?Tn.failBadSyntaxKind(t):_N(t)&&MP(t.expression)?t.expression:t}break;case 303:if(e.name){const t=e.name;return ZC(t)?Tn.failBadSyntaxKind(t):_N(t)&&MP(t.expression)?t.expression:t}break;case 305:return e.name&&ZC(e.name)?Tn.failBadSyntaxKind(e.name):e.name}const t=AP(e);if(t&&du(t))return t}function MP(e){const t=e.kind;return 11===t||9===t}function OP(e){switch(e.kind){case 206:case 207:case 209:return e.elements;case 210:return e.properties}}function FP(e){if(e){let t=e;for(;;){if(YC(t)||!t.body)return YC(t)?t:t.name;t=t.body}}}function RP(e){const t=e.kind;return 176===t||178===t}function LP(e){const t=e.kind;return 176===t||177===t||178===t}function jP(e){const t=e.kind;return 303===t||304===t||262===t||176===t||181===t||175===t||282===t||243===t||264===t||265===t||266===t||267===t||271===t||272===t||270===t||278===t||277===t}function zP(e){const t=e.kind;return 175===t||303===t||304===t||282===t||270===t}function UP(e){return WC(e)||JC(e)}function BP(e){return YC(e)||VN(e)}function qP(e){return rN(e)||qC(e)||VC(e)}function VP(e){return WC(e)||qC(e)||VC(e)}function KP(e){return YC(e)||MC(e)}function JP(e){const t=e.kind;return 106===t||112===t||97===t||Kl(e)||mA(e)}function WP(e){return function(e){return 48===e||49===e||50===e}(e)||function(e){return function(e){return 40===e||41===e}(e)||function(e){return function(e){return 43===e}(e)||function(e){return 42===e||44===e||45===e}(e)}(e)}(e)}function HP(e){return function(e){return 35===e||37===e||36===e||38===e}(e)||function(e){return function(e){return 30===e||33===e||32===e||34===e||104===e||103===e}(e)||WP(e)}(e)}function GP(e){return function(e){return 56===e||57===e}(e)||function(e){return function(e){return 51===e||52===e||53===e}(e)||HP(e)}(e)}function QP(e){return function(e){return 61===e||GP(e)||gb(e)}(e)||28===e}function YP(e){return QP(e.kind)}(e=>{function t(e,n,r,i,o,s,c){const l=n>0?o[n-1]:void 0;return Tn.assertEqual(r[n],t),o[n]=e.onEnter(i[n],l,c),r[n]=a(e,t),n}function n(e,t,r,i,o,s,u){Tn.assertEqual(r[t],n),Tn.assertIsDefined(e.onLeft),r[t]=a(e,n);const d=e.onLeft(i[t].left,o[t],i[t]);return d?(l(t,i,d),c(t,r,i,o,d)):t}function r(e,t,n,i,o,s,c){return Tn.assertEqual(n[t],r),Tn.assertIsDefined(e.onOperator),n[t]=a(e,r),e.onOperator(i[t].operatorToken,o[t],i[t]),t}function i(e,t,n,r,o,s,u){Tn.assertEqual(n[t],i),Tn.assertIsDefined(e.onRight),n[t]=a(e,i);const d=e.onRight(r[t].right,o[t],r[t]);return d?(l(t,r,d),c(t,n,r,o,d)):t}function o(e,t,n,r,i,s,c){Tn.assertEqual(n[t],o),n[t]=a(e,o);const l=e.onExit(r[t],i[t]);if(t>0){if(t--,e.foldState){const r=n[t]===o?"right":"left";i[t]=e.foldState(i[t],l,r)}}else s.value=l;return t}function s(e,t,n,r,i,o,a){return Tn.assertEqual(n[t],s),t}function a(e,a){switch(a){case t:if(e.onLeft)return n;case n:if(e.onOperator)return r;case r:if(e.onRight)return i;case i:return o;case o:case s:return s;default:Tn.fail("Invalid state")}}function c(e,n,r,i,o){return n[++e]=t,r[e]=o,i[e]=void 0,e}function l(e,t,n){if(Tn.shouldAssert(2))for(;e>=0;)Tn.assert(t[e]!==n,"Circular traversal detected."),e--}e.enter=t,e.left=n,e.operator=r,e.right=i,e.exit=o,e.done=s,e.nextState=a})(BD||(BD={}));var ZP,XP,$P,eM,tM,nM=class{constructor(e,t,n,r,i,o){this.onEnter=e,this.onLeft=t,this.onOperator=n,this.onRight=r,this.onExit=i,this.foldState=o}};function rM(e,t,n,r,i,o){const s=new nM(e,t,n,r,i,o);return function(e,t){const n={value:void 0},r=[BD.enter],i=[e],o=[void 0];let a=0;for(;r[a]!==BD.done;)a=r[a](s,a,r,i,o,n,t);return Tn.assertEqual(a,0),n.value}}function iM(e){return 95===e||90===e}function oM(e){return iM(e.kind)}function sM(e){const t=e.kind;return su(t)&&!iM(t)}function aM(e,t){if(void 0!==t)return 0===t.length?t:vM(e.createNodeArray([],t.hasTrailingComma),t)}function cM(e){var t;const n=e.emitNode.autoGenerate;if(4&n.flags){const r=n.id;let i=e,o=i.original;for(;o;){i=o;const e=null==(t=i.emitNode)?void 0:t.autoGenerate;if(Sl(i)&&(void 0===e||4&e.flags&&e.id!==r))break;o=i.original}return i}return e}function lM(e,t){return"object"==typeof e?dM(!1,e.prefix,e.node,e.suffix,t):"string"==typeof e?e.length>0&&35===e.charCodeAt(0)?e.slice(1):e:""}function uM(e,t){return"string"==typeof e?e:function(e,t){return nu(e)?t(e).slice(1):tu(e)?t(e):ZC(e)?e.escapedText.slice(1):kc(e)}(e,Tn.checkDefined(t))}function dM(e,t,n,r,i){return t=lM(t,i),r=lM(r,i),`${e?"#":""}${t}${n=uM(n,i)}${r}`}function _M(e,t,n,r){return e.updatePropertyDeclaration(t,n,e.getGeneratedPrivateNameForNode(t.name,void 0,"_accessor_storage"),void 0,void 0,r)}function pM(e,t,n,r,i=e.createThis()){return e.createGetAccessorDeclaration(n,r,[],void 0,e.createBlock([e.createReturnStatement(e.createPropertyAccessExpression(i,e.getGeneratedPrivateNameForNode(t.name,void 0,"_accessor_storage")))]))}function fM(e,t,n,r,i=e.createThis()){return e.createSetAccessorDeclaration(n,r,[e.createParameterDeclaration(void 0,void 0,"value")],e.createBlock([e.createExpressionStatement(e.createAssignment(e.createPropertyAccessExpression(i,e.getGeneratedPrivateNameForNode(t.name,void 0,"_accessor_storage")),e.createIdentifier("value")))]))}function mM(e){let t=e.expression;for(;;)if(t=gP(t),DA(t))t=Ae(t.elements);else{if(!_P(t)){if(bb(t,!0)&&tu(t.left))return t;break}t=t.right}}function hM(e,t){if(function(e){return cA(e)&&fy(e)&&!e.emitNode}(e))hM(e.expression,t);else if(_P(e))hM(e.left,t),hM(e.right,t);else if(DA(e))for(const n of e.elements)hM(n,t);else t.push(e)}function gM(e){const t=[];return hM(e,t),t}function yM(e){if(65536&e.transformFlags)return!0;if(128&e.transformFlags)for(const t of OP(e)){const e=AP(t);if(e&&Ou(e)){if(65536&e.transformFlags)return!0;if(128&e.transformFlags&&yM(e))return!0}}return!1}function vM(e,t){return t?jw(e,t.pos,t.end):e}function bM(e){const t=e.kind;return 168===t||169===t||171===t||172===t||173===t||174===t||176===t||177===t||178===t||181===t||185===t||218===t||219===t||231===t||243===t||262===t||263===t||264===t||265===t||266===t||267===t||271===t||272===t||277===t||278===t}function xM(e){const t=e.kind;return 169===t||172===t||174===t||177===t||178===t||231===t||263===t}var SM={createBaseSourceFileNode:e=>new(tM||(tM=tS.getSourceFileConstructor()))(e,-1,-1),createBaseIdentifierNode:e=>new($P||($P=tS.getIdentifierConstructor()))(e,-1,-1),createBasePrivateIdentifierNode:e=>new(eM||(eM=tS.getPrivateIdentifierConstructor()))(e,-1,-1),createBaseTokenNode:e=>new(XP||(XP=tS.getTokenConstructor()))(e,-1,-1),createBaseNode:e=>new(ZP||(ZP=tS.getNodeConstructor()))(e,-1,-1)},TM=Hk(1,SM);function wM(e,t){return t&&e(t)}function kM(e,t,n){if(n){if(t)return t(n);for(const t of n){const n=e(t);if(n)return n}}}function EM(e,t){return 42===e.charCodeAt(t+1)&&42===e.charCodeAt(t+2)&&47!==e.charCodeAt(t+3)}function CM(e){return h(e.statements,NM)||function(e){return 8388608&e.flags?AM(e):void 0}(e)}function NM(e){return bM(e)&&function(e,t){return $(e.modifiers,(e=>e.kind===t))}(e,95)||uI(e)&&AI(e.moduleReference)||dI(e)||SI(e)||TI(e)?e:void 0}function AM(e){return function(e){return NA(e)&&102===e.keywordToken&&"meta"===e.name.escapedText}(e)?e:GM(e,AM)}var IM,DM={166:function(e,t,n){return wM(t,e.left)||wM(t,e.right)},168:function(e,t,n){return kM(t,n,e.modifiers)||wM(t,e.name)||wM(t,e.constraint)||wM(t,e.default)||wM(t,e.expression)},304:function(e,t,n){return kM(t,n,e.modifiers)||wM(t,e.name)||wM(t,e.questionToken)||wM(t,e.exclamationToken)||wM(t,e.equalsToken)||wM(t,e.objectAssignmentInitializer)},305:function(e,t,n){return wM(t,e.expression)},169:function(e,t,n){return kM(t,n,e.modifiers)||wM(t,e.dotDotDotToken)||wM(t,e.name)||wM(t,e.questionToken)||wM(t,e.type)||wM(t,e.initializer)},172:function(e,t,n){return kM(t,n,e.modifiers)||wM(t,e.name)||wM(t,e.questionToken)||wM(t,e.exclamationToken)||wM(t,e.type)||wM(t,e.initializer)},171:function(e,t,n){return kM(t,n,e.modifiers)||wM(t,e.name)||wM(t,e.questionToken)||wM(t,e.type)||wM(t,e.initializer)},303:function(e,t,n){return kM(t,n,e.modifiers)||wM(t,e.name)||wM(t,e.questionToken)||wM(t,e.exclamationToken)||wM(t,e.initializer)},260:function(e,t,n){return wM(t,e.name)||wM(t,e.exclamationToken)||wM(t,e.type)||wM(t,e.initializer)},208:function(e,t,n){return wM(t,e.dotDotDotToken)||wM(t,e.propertyName)||wM(t,e.name)||wM(t,e.initializer)},181:function(e,t,n){return kM(t,n,e.modifiers)||kM(t,n,e.typeParameters)||kM(t,n,e.parameters)||wM(t,e.type)},185:function(e,t,n){return kM(t,n,e.modifiers)||kM(t,n,e.typeParameters)||kM(t,n,e.parameters)||wM(t,e.type)},184:function(e,t,n){return kM(t,n,e.modifiers)||kM(t,n,e.typeParameters)||kM(t,n,e.parameters)||wM(t,e.type)},179:PM,180:PM,174:function(e,t,n){return kM(t,n,e.modifiers)||wM(t,e.asteriskToken)||wM(t,e.name)||wM(t,e.questionToken)||wM(t,e.exclamationToken)||kM(t,n,e.typeParameters)||kM(t,n,e.parameters)||wM(t,e.type)||wM(t,e.body)},173:function(e,t,n){return kM(t,n,e.modifiers)||wM(t,e.name)||wM(t,e.questionToken)||kM(t,n,e.typeParameters)||kM(t,n,e.parameters)||wM(t,e.type)},176:function(e,t,n){return kM(t,n,e.modifiers)||wM(t,e.name)||kM(t,n,e.typeParameters)||kM(t,n,e.parameters)||wM(t,e.type)||wM(t,e.body)},177:function(e,t,n){return kM(t,n,e.modifiers)||wM(t,e.name)||kM(t,n,e.typeParameters)||kM(t,n,e.parameters)||wM(t,e.type)||wM(t,e.body)},178:function(e,t,n){return kM(t,n,e.modifiers)||wM(t,e.name)||kM(t,n,e.typeParameters)||kM(t,n,e.parameters)||wM(t,e.type)||wM(t,e.body)},262:function(e,t,n){return kM(t,n,e.modifiers)||wM(t,e.asteriskToken)||wM(t,e.name)||kM(t,n,e.typeParameters)||kM(t,n,e.parameters)||wM(t,e.type)||wM(t,e.body)},218:function(e,t,n){return kM(t,n,e.modifiers)||wM(t,e.asteriskToken)||wM(t,e.name)||kM(t,n,e.typeParameters)||kM(t,n,e.parameters)||wM(t,e.type)||wM(t,e.body)},219:function(e,t,n){return kM(t,n,e.modifiers)||kM(t,n,e.typeParameters)||kM(t,n,e.parameters)||wM(t,e.type)||wM(t,e.equalsGreaterThanToken)||wM(t,e.body)},175:function(e,t,n){return kM(t,n,e.modifiers)||wM(t,e.body)},183:function(e,t,n){return wM(t,e.typeName)||kM(t,n,e.typeArguments)},182:function(e,t,n){return wM(t,e.assertsModifier)||wM(t,e.parameterName)||wM(t,e.type)},186:function(e,t,n){return wM(t,e.exprName)||kM(t,n,e.typeArguments)},187:function(e,t,n){return kM(t,n,e.members)},188:function(e,t,n){return wM(t,e.elementType)},189:function(e,t,n){return kM(t,n,e.elements)},192:MM,193:MM,194:function(e,t,n){return wM(t,e.checkType)||wM(t,e.extendsType)||wM(t,e.trueType)||wM(t,e.falseType)},195:function(e,t,n){return wM(t,e.typeParameter)},205:function(e,t,n){return wM(t,e.argument)||wM(t,e.attributes)||wM(t,e.qualifier)||kM(t,n,e.typeArguments)},302:function(e,t,n){return wM(t,e.assertClause)},196:OM,198:OM,199:function(e,t,n){return wM(t,e.objectType)||wM(t,e.indexType)},200:function(e,t,n){return wM(t,e.readonlyToken)||wM(t,e.typeParameter)||wM(t,e.nameType)||wM(t,e.questionToken)||wM(t,e.type)||kM(t,n,e.members)},201:function(e,t,n){return wM(t,e.literal)},202:function(e,t,n){return wM(t,e.dotDotDotToken)||wM(t,e.name)||wM(t,e.questionToken)||wM(t,e.type)},206:FM,207:FM,209:function(e,t,n){return kM(t,n,e.elements)},210:function(e,t,n){return kM(t,n,e.properties)},211:function(e,t,n){return wM(t,e.expression)||wM(t,e.questionDotToken)||wM(t,e.name)},212:function(e,t,n){return wM(t,e.expression)||wM(t,e.questionDotToken)||wM(t,e.argumentExpression)},213:RM,214:RM,215:function(e,t,n){return wM(t,e.tag)||wM(t,e.questionDotToken)||kM(t,n,e.typeArguments)||wM(t,e.template)},216:function(e,t,n){return wM(t,e.type)||wM(t,e.expression)},217:function(e,t,n){return wM(t,e.expression)},220:function(e,t,n){return wM(t,e.expression)},221:function(e,t,n){return wM(t,e.expression)},222:function(e,t,n){return wM(t,e.expression)},224:function(e,t,n){return wM(t,e.operand)},229:function(e,t,n){return wM(t,e.asteriskToken)||wM(t,e.expression)},223:function(e,t,n){return wM(t,e.expression)},225:function(e,t,n){return wM(t,e.operand)},226:function(e,t,n){return wM(t,e.left)||wM(t,e.operatorToken)||wM(t,e.right)},234:function(e,t,n){return wM(t,e.expression)||wM(t,e.type)},235:function(e,t,n){return wM(t,e.expression)},238:function(e,t,n){return wM(t,e.expression)||wM(t,e.type)},236:function(e,t,n){return wM(t,e.name)},227:function(e,t,n){return wM(t,e.condition)||wM(t,e.questionToken)||wM(t,e.whenTrue)||wM(t,e.colonToken)||wM(t,e.whenFalse)},230:function(e,t,n){return wM(t,e.expression)},241:LM,268:LM,307:function(e,t,n){return kM(t,n,e.statements)||wM(t,e.endOfFileToken)},243:function(e,t,n){return kM(t,n,e.modifiers)||wM(t,e.declarationList)},261:function(e,t,n){return kM(t,n,e.declarations)},244:function(e,t,n){return wM(t,e.expression)},245:function(e,t,n){return wM(t,e.expression)||wM(t,e.thenStatement)||wM(t,e.elseStatement)},246:function(e,t,n){return wM(t,e.statement)||wM(t,e.expression)},247:function(e,t,n){return wM(t,e.expression)||wM(t,e.statement)},248:function(e,t,n){return wM(t,e.initializer)||wM(t,e.condition)||wM(t,e.incrementor)||wM(t,e.statement)},249:function(e,t,n){return wM(t,e.initializer)||wM(t,e.expression)||wM(t,e.statement)},250:function(e,t,n){return wM(t,e.awaitModifier)||wM(t,e.initializer)||wM(t,e.expression)||wM(t,e.statement)},251:jM,252:jM,253:function(e,t,n){return wM(t,e.expression)},254:function(e,t,n){return wM(t,e.expression)||wM(t,e.statement)},255:function(e,t,n){return wM(t,e.expression)||wM(t,e.caseBlock)},269:function(e,t,n){return kM(t,n,e.clauses)},296:function(e,t,n){return wM(t,e.expression)||kM(t,n,e.statements)},297:function(e,t,n){return kM(t,n,e.statements)},256:function(e,t,n){return wM(t,e.label)||wM(t,e.statement)},257:function(e,t,n){return wM(t,e.expression)},258:function(e,t,n){return wM(t,e.tryBlock)||wM(t,e.catchClause)||wM(t,e.finallyBlock)},299:function(e,t,n){return wM(t,e.variableDeclaration)||wM(t,e.block)},170:function(e,t,n){return wM(t,e.expression)},263:zM,231:zM,264:function(e,t,n){return kM(t,n,e.modifiers)||wM(t,e.name)||kM(t,n,e.typeParameters)||kM(t,n,e.heritageClauses)||kM(t,n,e.members)},265:function(e,t,n){return kM(t,n,e.modifiers)||wM(t,e.name)||kM(t,n,e.typeParameters)||wM(t,e.type)},266:function(e,t,n){return kM(t,n,e.modifiers)||wM(t,e.name)||kM(t,n,e.members)},306:function(e,t,n){return wM(t,e.name)||wM(t,e.initializer)},267:function(e,t,n){return kM(t,n,e.modifiers)||wM(t,e.name)||wM(t,e.body)},271:function(e,t,n){return kM(t,n,e.modifiers)||wM(t,e.name)||wM(t,e.moduleReference)},272:function(e,t,n){return kM(t,n,e.modifiers)||wM(t,e.importClause)||wM(t,e.moduleSpecifier)||wM(t,e.attributes)},273:function(e,t,n){return wM(t,e.name)||wM(t,e.namedBindings)},300:function(e,t,n){return kM(t,n,e.elements)},301:function(e,t,n){return wM(t,e.name)||wM(t,e.value)},270:function(e,t,n){return kM(t,n,e.modifiers)||wM(t,e.name)},274:function(e,t,n){return wM(t,e.name)},280:function(e,t,n){return wM(t,e.name)},275:UM,279:UM,278:function(e,t,n){return kM(t,n,e.modifiers)||wM(t,e.exportClause)||wM(t,e.moduleSpecifier)||wM(t,e.attributes)},276:BM,281:BM,277:function(e,t,n){return kM(t,n,e.modifiers)||wM(t,e.expression)},228:function(e,t,n){return wM(t,e.head)||kM(t,n,e.templateSpans)},239:function(e,t,n){return wM(t,e.expression)||wM(t,e.literal)},203:function(e,t,n){return wM(t,e.head)||kM(t,n,e.templateSpans)},204:function(e,t,n){return wM(t,e.type)||wM(t,e.literal)},167:function(e,t,n){return wM(t,e.expression)},298:function(e,t,n){return kM(t,n,e.types)},233:function(e,t,n){return wM(t,e.expression)||kM(t,n,e.typeArguments)},283:function(e,t,n){return wM(t,e.expression)},282:function(e,t,n){return kM(t,n,e.modifiers)},355:function(e,t,n){return kM(t,n,e.elements)},284:function(e,t,n){return wM(t,e.openingElement)||kM(t,n,e.children)||wM(t,e.closingElement)},288:function(e,t,n){return wM(t,e.openingFragment)||kM(t,n,e.children)||wM(t,e.closingFragment)},285:qM,286:qM,292:function(e,t,n){return kM(t,n,e.properties)},291:function(e,t,n){return wM(t,e.name)||wM(t,e.initializer)},293:function(e,t,n){return wM(t,e.expression)},294:function(e,t,n){return wM(t,e.dotDotDotToken)||wM(t,e.expression)},287:function(e,t,n){return wM(t,e.tagName)},295:function(e,t,n){return wM(t,e.namespace)||wM(t,e.name)},190:VM,191:VM,309:VM,315:VM,314:VM,316:VM,318:VM,317:function(e,t,n){return kM(t,n,e.parameters)||wM(t,e.type)},320:function(e,t,n){return("string"==typeof e.comment?void 0:kM(t,n,e.comment))||kM(t,n,e.tags)},347:function(e,t,n){return wM(t,e.tagName)||wM(t,e.name)||("string"==typeof e.comment?void 0:kM(t,n,e.comment))},310:function(e,t,n){return wM(t,e.name)},311:function(e,t,n){return wM(t,e.left)||wM(t,e.right)},341:KM,348:KM,330:function(e,t,n){return wM(t,e.tagName)||("string"==typeof e.comment?void 0:kM(t,n,e.comment))},329:function(e,t,n){return wM(t,e.tagName)||wM(t,e.class)||("string"==typeof e.comment?void 0:kM(t,n,e.comment))},328:function(e,t,n){return wM(t,e.tagName)||wM(t,e.class)||("string"==typeof e.comment?void 0:kM(t,n,e.comment))},345:function(e,t,n){return wM(t,e.tagName)||wM(t,e.constraint)||kM(t,n,e.typeParameters)||("string"==typeof e.comment?void 0:kM(t,n,e.comment))},346:function(e,t,n){return wM(t,e.tagName)||(e.typeExpression&&309===e.typeExpression.kind?wM(t,e.typeExpression)||wM(t,e.fullName)||("string"==typeof e.comment?void 0:kM(t,n,e.comment)):wM(t,e.fullName)||wM(t,e.typeExpression)||("string"==typeof e.comment?void 0:kM(t,n,e.comment)))},338:function(e,t,n){return wM(t,e.tagName)||wM(t,e.fullName)||wM(t,e.typeExpression)||("string"==typeof e.comment?void 0:kM(t,n,e.comment))},342:JM,344:JM,343:JM,340:JM,350:JM,349:JM,339:JM,323:function(e,t,n){return h(e.typeParameters,t)||h(e.parameters,t)||wM(t,e.type)},324:WM,325:WM,326:WM,322:function(e,t,n){return h(e.jsDocPropertyTags,t)},327:HM,332:HM,333:HM,334:HM,335:HM,336:HM,331:HM,337:HM,351:function(e,t,n){return wM(t,e.tagName)||wM(t,e.importClause)||wM(t,e.moduleSpecifier)||wM(t,e.attributes)||("string"==typeof e.comment?void 0:kM(t,n,e.comment))},354:function(e,t,n){return wM(t,e.expression)}};function PM(e,t,n){return kM(t,n,e.typeParameters)||kM(t,n,e.parameters)||wM(t,e.type)}function MM(e,t,n){return kM(t,n,e.types)}function OM(e,t,n){return wM(t,e.type)}function FM(e,t,n){return kM(t,n,e.elements)}function RM(e,t,n){return wM(t,e.expression)||wM(t,e.questionDotToken)||kM(t,n,e.typeArguments)||kM(t,n,e.arguments)}function LM(e,t,n){return kM(t,n,e.statements)}function jM(e,t,n){return wM(t,e.label)}function zM(e,t,n){return kM(t,n,e.modifiers)||wM(t,e.name)||kM(t,n,e.typeParameters)||kM(t,n,e.heritageClauses)||kM(t,n,e.members)}function UM(e,t,n){return kM(t,n,e.elements)}function BM(e,t,n){return wM(t,e.propertyName)||wM(t,e.name)}function qM(e,t,n){return wM(t,e.tagName)||kM(t,n,e.typeArguments)||wM(t,e.attributes)}function VM(e,t,n){return wM(t,e.type)}function KM(e,t,n){return wM(t,e.tagName)||(e.isNameFirst?wM(t,e.name)||wM(t,e.typeExpression):wM(t,e.typeExpression)||wM(t,e.name))||("string"==typeof e.comment?void 0:kM(t,n,e.comment))}function JM(e,t,n){return wM(t,e.tagName)||wM(t,e.typeExpression)||("string"==typeof e.comment?void 0:kM(t,n,e.comment))}function WM(e,t,n){return wM(t,e.name)}function HM(e,t,n){return wM(t,e.tagName)||("string"==typeof e.comment?void 0:kM(t,n,e.comment))}function GM(e,t,n){if(void 0===e||e.kind<=165)return;const r=DM[e.kind];return void 0===r?void 0:r(e,t,n)}function QM(e,t,n){const r=YM(e),i=[];for(;i.length<r.length;)i.push(e);for(;0!==r.length;){const e=r.pop(),o=i.pop();if(at(e)){if(n){const t=n(e,o);if(t){if("skip"===t)continue;return t}}for(let t=e.length-1;t>=0;--t)r.push(e[t]),i.push(o)}else{const n=t(e,o);if(n){if("skip"===n)continue;return n}if(e.kind>=166)for(const t of YM(e))r.push(t),i.push(e)}}}function YM(e){const t=[];return GM(e,n,n),t;function n(e){t.unshift(e)}}function ZM(e){e.externalModuleIndicator=CM(e)}function XM(e,t,n,r=!1,i){var o,s,a,c;let l;null==(o=ar)||o.push(ar.Phase.Parse,"createSourceFile",{path:e},!0),mr("beforeParse"),null==(s=rr)||s.logStartParseSourceFile(e);const{languageVersion:u,setExternalModuleIndicator:d,impliedNodeFormat:_,jsDocParsingMode:p}="object"==typeof n?n:{languageVersion:n};if(100===u)l=IM.parseSourceFile(e,t,u,void 0,r,6,pt,p);else{const n=void 0===_?d:e=>(e.impliedNodeFormat=_,(d||ZM)(e));l=IM.parseSourceFile(e,t,u,void 0,r,i,n,p)}return null==(a=rr)||a.logStopParseSourceFile(),mr("afterParse"),hr("Parse","beforeParse","afterParse"),null==(c=ar)||c.pop(),l}function $M(e,t){return IM.parseIsolatedEntityName(e,t)}function eO(e,t){return IM.parseJsonText(e,t)}function tO(e){return void 0!==e.externalModuleIndicator}function nO(e,t,n,r=!1){const i=sO.updateSourceFile(e,t,n,r);return i.flags|=12582912&e.flags,i}function rO(e,t,n){const r=IM.JSDocParser.parseIsolatedJSDocComment(e,t,n);return r&&r.jsDoc&&IM.fixupParentReferences(r.jsDoc),r}function iO(e,t,n){return IM.JSDocParser.parseJSDocTypeExpressionForTests(e,t,n)}(e=>{var t,n,r,i,o,s=Ia(99,!0),a=40960;function c(e){return x++,e}var l,u,d,f,m,h,g,y,v,b,x,S,T,w,k,C,N=Hk(11,{createBaseSourceFileNode:e=>c(new o(e,0,0)),createBaseIdentifierNode:e=>c(new r(e,0,0)),createBasePrivateIdentifierNode:e=>c(new i(e,0,0)),createBaseTokenNode:e=>c(new n(e,0,0)),createBaseNode:e=>c(new t(e,0,0))}),{createNodeArray:A,createNumericLiteral:I,createStringLiteral:D,createLiteralLikeNode:P,createIdentifier:M,createPrivateIdentifier:O,createToken:F,createArrayLiteralExpression:R,createObjectLiteralExpression:L,createPropertyAccessExpression:j,createPropertyAccessChain:z,createElementAccessExpression:U,createElementAccessChain:B,createCallExpression:q,createCallChain:V,createNewExpression:K,createParenthesizedExpression:W,createBlock:H,createVariableStatement:G,createExpressionStatement:Q,createIfStatement:Y,createWhileStatement:Z,createForStatement:X,createForOfStatement:ee,createVariableDeclaration:ne,createVariableDeclarationList:re}=N,ie=!0,oe=!1;function se(e,t,n=2,r,i=!1){ae(e,t,n,r,6,0),u=C,Je();const o=Ue();let s,a;if(1===qe())s=St([],o,o),a=yt();else{let e;for(;1!==qe();){let t;switch(qe()){case 23:t=li();break;case 112:case 97:case 106:t=yt();break;case 41:t=tt((()=>9===Je()&&59!==Je()))?jr():di();break;case 9:case 11:if(tt((()=>59!==Je()))){t=gn();break}default:t=di()}e&&at(e)?e.push(t):e?e=[e,t]:(e=t,1!==qe()&&Fe(ws.Unexpected_token))}const t=at(e)?Tt(R(e),o):Tn.checkDefined(e),n=Q(t);Tt(n,o),s=St([n],o),a=ht(1,ws.Unexpected_token)}const c=pe(e,2,6,!1,s,a,u,pt);i&&de(c),c.nodeCount=x,c.identifierCount=T,c.identifiers=S,c.parseDiagnostics=_S(g,c),y&&(c.jsDocDiagnostics=_S(y,c));const l=c;return ce(),l}function ae(e,a,c,_,p,y){switch(t=tS.getNodeConstructor(),n=tS.getTokenConstructor(),r=tS.getIdentifierConstructor(),i=tS.getPrivateIdentifierConstructor(),o=tS.getSourceFileConstructor(),l=ts(e),d=a,f=c,v=_,m=p,h=CS(p),g=[],w=0,S=new Map,T=0,x=0,u=0,ie=!0,m){case 1:case 2:C=524288;break;case 6:C=134742016;break;default:C=0}oe=!1,s.setText(d),s.setOnError(ze),s.setScriptTarget(f),s.setLanguageVariant(h),s.setScriptKind(m),s.setJSDocParsingMode(y)}function ce(){s.clearCommentDirectives(),s.setText(""),s.setOnError(void 0),s.setScriptKind(0),s.setJSDocParsingMode(0),d=void 0,f=void 0,v=void 0,m=void 0,h=void 0,u=0,g=void 0,y=void 0,w=0,S=void 0,k=void 0,ie=!0}e.parseSourceFile=function(e,t,n,r,i=!1,o,a,c=0){var f;if(6===(o=FT(e,o))){const o=se(e,t,n,r,i);return RF(o,null==(f=o.statements[0])?void 0:f.expression,o.parseDiagnostics,!1,void 0),o.referencedFiles=_,o.typeReferenceDirectives=_,o.libReferenceDirectives=_,o.amdDependencies=_,o.hasNoDefaultLib=!1,o.pragmas=p,o}ae(e,t,n,r,o,c);const m=function(e,t,n,r,i){const o=lO(l);o&&(C|=33554432);u=C,Je();const a=Xt(0,Oi);Tn.assert(1===qe());const c=Be(),_=ue(yt(),c),p=pe(l,e,n,o,a,_,u,r);dO(p,d),_O(p,f),p.commentDirectives=s.getCommentDirectives(),p.nodeCount=x,p.identifierCount=T,p.identifiers=S,p.parseDiagnostics=_S(g,p),p.jsDocParsingMode=i,y&&(p.jsDocDiagnostics=_S(y,p));t&&de(p);return p;function f(e,t,n){g.push(lS(l,d,e,t,n))}}(n,i,o,a||ZM,c);return ce(),m},e.parseIsolatedEntityName=function(e,t){ae("",e,t,void 0,1,0),Je();const n=ln(!0),r=1===qe()&&!g.length;return ce(),r?n:void 0},e.parseJsonText=se;let le=!1;function ue(e,t){if(!t)return e;Tn.assert(!e.jsDoc);const n=J(wf(e,d),(t=>zo.parseJSDocComment(e,t.pos,t.end-t.pos)));return n.length&&(e.jsDoc=n),le&&(le=!1,e.flags|=536870912),e}function de(e){Vw(e,!0)}function pe(e,t,n,r,i,o,a,c){let l=N.createSourceFile(i,o,a);if(zw(l,0,d.length),u(l),!r&&tO(l)&&67108864&l.transformFlags){const e=l;l=function(e){const t=v,n=sO.createSyntaxCursor(e);v={currentNode:function(e){const t=n.currentNode(e);return ie&&t&&c(t)&&cO(t),t}};const r=[],i=g;g=[];let o=0,a=l(e.statements,0);for(;-1!==a;){const t=e.statements[o],n=e.statements[a];me(r,e.statements,o,a),o=u(e.statements,a);const c=E(i,(e=>e.start>=t.pos)),d=c>=0?E(i,(e=>e.start>=n.pos),c):-1;c>=0&&me(g,i,c,d>=0?d:void 0),et((()=>{const t=C;for(C|=65536,s.resetTokenState(n.pos),Je();1!==qe();){const t=s.getTokenFullStart(),n=$t(0,Oi);if(r.push(n),t===s.getTokenFullStart()&&Je(),o>=0){const t=e.statements[o];if(n.end===t.pos)break;n.end>t.pos&&(o=u(e.statements,o+1))}}C=t}),2),a=o>=0?l(e.statements,o):-1}if(o>=0){const t=e.statements[o];me(r,e.statements,o);const n=E(i,(e=>e.start>=t.pos));n>=0&&me(g,i,n)}return v=t,N.updateSourceFile(e,vM(A(r),e.statements));function c(e){return!(65536&e.flags||!(67108864&e.transformFlags))}function l(e,t){for(let n=t;n<e.length;n++)if(c(e[n]))return n;return-1}function u(e,t){for(let n=t;n<e.length;n++)if(!c(e[n]))return n;return-1}}(l),e!==l&&u(l)}return l;function u(i){i.text=d,i.bindDiagnostics=[],i.bindSuggestionDiagnostics=void 0,i.languageVersion=t,i.fileName=e,i.languageVariant=CS(n),i.isDeclarationFile=r,i.scriptKind=n,c(i),i.setExternalModuleIndicator=c}}function fe(e,t){e?C|=t:C&=~t}function he(e){fe(e,8192)}function ge(e){fe(e,16384)}function ye(e){fe(e,32768)}function ve(e){fe(e,65536)}function be(e,t){const n=e&C;if(n){fe(!1,n);const e=t();return fe(!0,n),e}return t()}function xe(e,t){const n=e&~C;if(n){fe(!0,n);const e=t();return fe(!1,n),e}return t()}function Se(e){return be(8192,e)}function Te(e){return be(131072,e)}function ke(e){return xe(131072,e)}function Ee(e){return xe(65536,e)}function Ce(e){return be(65536,e)}function Ae(e){return!!(C&e)}function Ie(){return Ae(16384)}function De(){return Ae(8192)}function Pe(){return Ae(131072)}function Me(){return Ae(32768)}function Oe(){return Ae(65536)}function Fe(e,...t){return Le(s.getTokenStart(),s.getTokenEnd(),e,...t)}function Re(e,t,n,...r){const i=Ne(g);let o;return i&&e===i.start||(o=lS(l,d,e,t,n,...r),g.push(o)),oe=!0,o}function Le(e,t,n,...r){return Re(e,t-e,n,...r)}function je(e,t,...n){Le(e.pos,e.end,t,...n)}function ze(e,t,n){Re(s.getTokenEnd(),t,e,n)}function Ue(){return s.getTokenFullStart()}function Be(){return s.hasPrecedingJSDocComment()}function qe(){return b}function Ve(){return b=s.scan()}function Ke(e){return Je(),e()}function Je(){return Og(b)&&(s.hasUnicodeEscape()||s.hasExtendedUnicodeEscape())&&Le(s.getTokenStart(),s.getTokenEnd(),ws.Keywords_cannot_contain_escape_characters),Ve()}function We(){return b=s.scanJsDocToken()}function He(e){return b=s.scanJSDocCommentTextToken(e)}function Ge(){return b=s.reScanGreaterToken()}function Qe(e){return b=s.reScanTemplateToken(e)}function Ye(){return b=s.reScanLessThanToken()}function Ze(){return b=s.reScanHashToken()}function Xe(){return b=s.scanJsxIdentifier()}function $e(){return b=s.scanJsxToken()}function et(e,t){const n=b,r=g.length,i=oe,o=C,a=0!==t?s.lookAhead(e):s.tryScan(e);return Tn.assert(o===C),a&&0===t||(b=n,2!==t&&(g.length=r),oe=i),a}function tt(e){return et(e,1)}function nt(e){return et(e,0)}function rt(){return 80===qe()||qe()>118}function it(){return 80===qe()||(127!==qe()||!Ie())&&((135!==qe()||!Oe())&&qe()>118)}function ot(e,t,n=!0){return qe()===e?(n&&Je(),!0):(t?Fe(t):Fe(ws._0_expected,Vs(e)),!1)}e.fixupParentReferences=de;const st=Object.keys(Cs).filter((e=>e.length>2));function ct(e){if(sA(e))return void Le(da(d,e.template.pos),e.template.end,ws.Module_declaration_names_may_only_use_or_quoted_strings);const t=YC(e)?kc(e):void 0;if(!t||!Aa(t,f))return void Fe(ws._0_expected,Vs(27));const n=da(d,e.pos);switch(t){case"const":case"let":case"var":return void Le(n,e.end,ws.Variable_declaration_not_allowed_at_this_location);case"declare":return;case"interface":return void lt(ws.Interface_name_cannot_be_0,ws.Interface_must_be_given_a_name,19);case"is":return void Le(n,s.getTokenStart(),ws.A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods);case"module":case"namespace":return void lt(ws.Namespace_name_cannot_be_0,ws.Namespace_must_be_given_a_name,19);case"type":return void lt(ws.Type_alias_name_cannot_be_0,ws.Type_alias_must_be_given_a_name,64)}const r=Ht(t,st,gt)??function(e){for(const t of st)if(e.length>t.length+2&&cn(e,t))return`${t} ${e.slice(t.length)}`;return}(t);r?Le(n,e.end,ws.Unknown_keyword_or_identifier_Did_you_mean_0,r):0!==qe()&&Le(n,e.end,ws.Unexpected_keyword_or_identifier)}function lt(e,t,n){qe()===n?Fe(t):Fe(e,s.getTokenValue())}function ut(e){return qe()===e?(We(),!0):(Tn.assert(Rg(e)),Fe(ws._0_expected,Vs(e)),!1)}function dt(e,t,n,r){if(qe()===t)return void Je();const i=Fe(ws._0_expected,Vs(t));n&&i&&xw(i,lS(l,d,r,1,ws.The_parser_expected_to_find_a_1_to_match_the_0_token_here,Vs(e),Vs(t)))}function _t(e){return qe()===e&&(Je(),!0)}function ft(e){if(qe()===e)return yt()}function mt(e){if(qe()===e)return function(){const e=Ue(),t=qe();return We(),Tt(F(t),e)}()}function ht(e,t,n){return ft(e)||wt(e,!1,t||ws._0_expected,n||Vs(e))}function yt(){const e=Ue(),t=qe();return Je(),Tt(F(t),e)}function vt(){return 27===qe()||(20===qe()||1===qe()||s.hasPrecedingLineBreak())}function bt(){return!!vt()&&(27===qe()&&Je(),!0)}function xt(){return bt()||ot(27)}function St(e,t,n,r){const i=A(e,r);return jw(i,t,n??s.getTokenFullStart()),i}function Tt(e,t,n){return jw(e,t,n??s.getTokenFullStart()),C&&(e.flags|=C),oe&&(oe=!1,e.flags|=262144),e}function wt(e,t,n,...r){t?Re(s.getTokenFullStart(),0,n,...r):n&&Fe(n,...r);const i=Ue();return Tt(80===e?M("",void 0):Wl(e)?N.createTemplateLiteralLikeNode(e,"","",void 0):9===e?I("",void 0):11===e?D("",void 0):282===e?N.createMissingDeclaration():F(e),i)}function kt(e){let t=S.get(e);return void 0===t&&S.set(e,t=e),t}function Et(e,t,n){if(e){T++;const e=s.hasLeadingAsterisks()?s.getTokenStart():Ue(),t=qe(),n=kt(s.getTokenValue()),r=s.hasExtendedUnicodeEscape();return Ve(),Tt(M(n,t,r),e)}if(81===qe())return Fe(n||ws.Private_identifiers_are_not_allowed_outside_class_bodies),Et(!0);if(0===qe()&&s.tryScan((()=>80===s.reScanInvalidIdentifier())))return Et(!0);T++;const r=1===qe(),i=s.isReservedWord(),o=s.getTokenText(),a=i?ws.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here:ws.Identifier_expected;return wt(80,r,t||a,o)}function Ct(e){return Et(rt(),void 0,e)}function Nt(e,t){return Et(it(),e,t)}function At(e){return Et(ks(qe()),e)}function It(){return(s.hasUnicodeEscape()||s.hasExtendedUnicodeEscape())&&Fe(ws.Unicode_escape_sequence_cannot_appear_here),Et(ks(qe()))}function Dt(){return ks(qe())||11===qe()||9===qe()}function Pt(e){if(11===qe()||9===qe()){const e=gn();return e.text=kt(e.text),e}return e&&23===qe()?function(){const e=Ue();ot(23);const t=Se(wr);return ot(24),Tt(N.createComputedPropertyName(t),e)}():81===qe()?Ot():At()}function Mt(){return Pt(!0)}function Ot(){const e=Ue(),t=O(kt(s.getTokenValue()));return Je(),Tt(t,e)}function Ft(e){return qe()===e&&nt(Lt)}function Rt(){return Je(),!s.hasPrecedingLineBreak()&&Ut()}function Lt(){switch(qe()){case 87:return 94===Je();case 95:return Je(),90===qe()?tt(Bt):156===qe()?tt(zt):jt();case 90:return Bt();case 126:case 139:case 153:return Je(),Ut();default:return Rt()}}function jt(){return 60===qe()||42!==qe()&&130!==qe()&&19!==qe()&&Ut()}function zt(){return Je(),jt()}function Ut(){return 23===qe()||19===qe()||42===qe()||26===qe()||Dt()}function Bt(){return Je(),86===qe()||100===qe()||120===qe()||60===qe()||128===qe()&&tt(Si)||134===qe()&&tt(Ti)}function qt(e,t){if(en(e))return!0;switch(e){case 0:case 1:case 3:return!(27===qe()&&t)&&Ci();case 2:return 84===qe()||90===qe();case 4:return tt(Bn);case 5:return tt(ro)||27===qe()&&!t;case 6:return 23===qe()||Dt();case 12:switch(qe()){case 23:case 42:case 26:case 25:return!0;default:return Dt()}case 18:return Dt();case 9:return 23===qe()||26===qe()||Dt();case 24:return ks(qe())||11===qe();case 7:return 19===qe()?tt(Vt):t?it()&&!Gt():Sr()&&!Gt();case 8:return Ki();case 10:return 28===qe()||26===qe()||Ki();case 19:return 103===qe()||87===qe()||it();case 15:switch(qe()){case 28:case 25:return!0}case 11:return 26===qe()||Tr();case 16:return In(!1);case 17:return In(!0);case 20:case 21:return 28===qe()||sr();case 22:return yo();case 23:return(161!==qe()||!tt(ji))&&ks(qe());case 13:return ks(qe())||19===qe();case 14:case 25:return!0;case 26:return Tn.fail("ParsingContext.Count used as a context");default:Tn.assertNever(e,"Non-exhaustive case in 'isListElement'.")}}function Vt(){if(Tn.assert(19===qe()),20===Je()){const e=Je();return 28===e||19===e||96===e||119===e}return!0}function Kt(){return Je(),it()}function Jt(){return Je(),ks(qe())}function Wt(){return Je(),Es(qe())}function Gt(){return(119===qe()||96===qe())&&tt(Qt)}function Qt(){return Je(),Tr()}function Yt(){return Je(),sr()}function Zt(e){if(1===qe())return!0;switch(e){case 1:case 2:case 4:case 5:case 6:case 12:case 9:case 23:case 24:return 20===qe();case 3:return 20===qe()||84===qe()||90===qe();case 7:return 19===qe()||96===qe()||119===qe();case 8:return function(){if(vt())return!0;if(Mr(qe()))return!0;if(39===qe())return!0;return!1}();case 19:return 32===qe()||21===qe()||19===qe()||96===qe()||119===qe();case 11:return 22===qe()||27===qe();case 15:case 21:case 10:return 24===qe();case 17:case 16:case 18:return 22===qe()||24===qe();case 20:return 28!==qe();case 22:return 19===qe()||20===qe();case 13:return 32===qe()||44===qe();case 14:return 30===qe()&&tt(ko);default:return!1}}function Xt(e,t){const n=w;w|=1<<e;const r=[],i=Ue();for(;!Zt(e);)if(qt(e,!1))r.push($t(e,t));else if(nn(e))break;return w=n,St(r,i)}function $t(e,t){const n=en(e);return n?tn(n):t()}function en(e,t){var n;if(!v||!function(e){switch(e){case 5:case 2:case 0:case 1:case 3:case 6:case 4:case 8:case 17:case 16:return!0}return!1}(e)||oe)return;const r=v.currentNode(t??s.getTokenFullStart());if(F_(r)||function(e){return aO.has(e)}(r)||E_(r))return;return(101441536&r.flags)===C&&function(e,t){switch(t){case 5:return function(e){if(e)switch(e.kind){case 176:case 181:case 177:case 178:case 172:case 240:return!0;case 174:const t=e;return!(80===t.name.kind&&"constructor"===t.name.escapedText)}return!1}(e);case 2:return function(e){if(e)switch(e.kind){case 296:case 297:return!0}return!1}(e);case 0:case 1:case 3:return function(e){if(e)switch(e.kind){case 262:case 243:case 241:case 245:case 244:case 257:case 253:case 255:case 252:case 251:case 249:case 250:case 248:case 247:case 254:case 242:case 258:case 256:case 246:case 259:case 272:case 271:case 278:case 277:case 267:case 263:case 264:case 266:case 265:return!0}return!1}(e);case 6:return function(e){return 306===e.kind}(e);case 4:return function(e){if(e)switch(e.kind){case 180:case 173:case 181:case 171:case 179:return!0}return!1}(e);case 8:return function(e){if(260!==e.kind)return!1;const t=e;return void 0===t.initializer}(e);case 17:case 16:return function(e){if(169!==e.kind)return!1;const t=e;return void 0===t.initializer}(e)}return!1}(r,e)?(Vh(r)&&(null==(n=r.jsDoc)?void 0:n.jsDocCache)&&(r.jsDoc.jsDocCache=void 0),r):void 0}function tn(e){return s.resetTokenState(e.end),Je(),e}function nn(e){return function(e){switch(e){case 0:return 90===qe()?Fe(ws._0_expected,Vs(95)):Fe(ws.Declaration_or_statement_expected);case 1:return Fe(ws.Declaration_or_statement_expected);case 2:return Fe(ws.case_or_default_expected);case 3:return Fe(ws.Statement_expected);case 18:case 4:return Fe(ws.Property_or_signature_expected);case 5:return Fe(ws.Unexpected_token_A_constructor_method_accessor_or_property_was_expected);case 6:return Fe(ws.Enum_member_expected);case 7:return Fe(ws.Expression_expected);case 8:return Og(qe())?Fe(ws._0_is_not_allowed_as_a_variable_declaration_name,Vs(qe())):Fe(ws.Variable_declaration_expected);case 9:return Fe(ws.Property_destructuring_pattern_expected);case 10:return Fe(ws.Array_element_destructuring_pattern_expected);case 11:return Fe(ws.Argument_expression_expected);case 12:return Fe(ws.Property_assignment_expected);case 15:return Fe(ws.Expression_or_comma_expected);case 17:return Fe(ws.Parameter_declaration_expected);case 16:return Og(qe())?Fe(ws._0_is_not_allowed_as_a_parameter_name,Vs(qe())):Fe(ws.Parameter_declaration_expected);case 19:return Fe(ws.Type_parameter_declaration_expected);case 20:return Fe(ws.Type_argument_expected);case 21:return Fe(ws.Type_expected);case 22:return Fe(ws.Unexpected_token_expected);case 23:return 161===qe()?Fe(ws._0_expected,"}"):Fe(ws.Identifier_expected);case 13:case 14:case 25:return Fe(ws.Identifier_expected);case 24:return Fe(ws.Identifier_or_string_literal_expected);case 26:return Tn.fail("ParsingContext.Count used as a context");default:Tn.assertNever(e)}}(e),!!function(){Tn.assert(w,"Missing parsing context");for(let e=0;e<26;e++)if(w&1<<e&&(qt(e,!0)||Zt(e)))return!0;return!1}()||(Je(),!1)}function rn(e,t,n){const r=w;w|=1<<e;const i=[],o=Ue();let a=-1;for(;;)if(qt(e,!1)){const o=s.getTokenFullStart(),c=$t(e,t);if(!c)return void(w=r);if(i.push(c),a=s.getTokenStart(),_t(28))continue;if(a=-1,Zt(e))break;ot(28,on(e)),n&&27===qe()&&!s.hasPrecedingLineBreak()&&Je(),o===s.getTokenFullStart()&&Je()}else{if(Zt(e))break;if(nn(e))break}return w=r,St(i,o,void 0,a>=0)}function on(e){return 6===e?ws.An_enum_member_name_must_be_followed_by_a_or:void 0}function sn(){const e=St([],Ue());return e.isMissingList=!0,e}function an(e,t,n,r){if(ot(n)){const n=rn(e,t);return ot(r),n}return sn()}function ln(e,t){const n=Ue();let r=e?At(t):Nt(t);for(;_t(25)&&30!==qe();)r=Tt(N.createQualifiedName(r,dn(e,!1,!0)),n);return r}function un(e,t){return Tt(N.createQualifiedName(e,t),e.pos)}function dn(e,t,n){if(s.hasPrecedingLineBreak()&&ks(qe())){if(tt(xi))return wt(80,!0,ws.Identifier_expected)}if(81===qe()){const e=Ot();return t?e:wt(80,!0,ws.Identifier_expected)}return e?n?At():It():Nt()}function _n(e){const t=Ue();return Tt(N.createTemplateExpression(yn(e),function(e){const t=Ue(),n=[];let r;do{r=hn(e),n.push(r)}while(17===r.literal.kind);return St(n,t)}(e)),t)}function pn(){const e=Ue();return Tt(N.createTemplateLiteralType(yn(!1),function(){const e=Ue(),t=[];let n;do{n=fn(),t.push(n)}while(17===n.literal.kind);return St(t,e)}()),e)}function fn(){const e=Ue();return Tt(N.createTemplateLiteralTypeSpan(br(),mn(!1)),e)}function mn(e){return 20===qe()?(Qe(e),function(){const e=vn(qe());return Tn.assert(17===e.kind||18===e.kind,"Template fragment has wrong token kind"),e}()):ht(18,ws._0_expected,Vs(20))}function hn(e){const t=Ue();return Tt(N.createTemplateSpan(Se(wr),mn(e)),t)}function gn(){return vn(qe())}function yn(e){!e&&26656&s.getTokenFlags()&&Qe(!1);const t=vn(qe());return Tn.assert(16===t.kind,"Template head has wrong token kind"),t}function vn(e){const t=Ue(),n=Wl(e)?N.createTemplateLiteralLikeNode(e,s.getTokenValue(),function(e){const t=15===e||18===e,n=s.getTokenText();return n.substring(1,n.length-(s.isUnterminated()?0:t?1:2))}(e),7176&s.getTokenFlags()):9===e?I(s.getTokenValue(),s.getNumericLiteralFlags()):11===e?D(s.getTokenValue(),void 0,s.hasExtendedUnicodeEscape()):Vl(e)?P(e,s.getTokenValue()):Tn.fail();return s.hasExtendedUnicodeEscape()&&(n.hasExtendedUnicodeEscape=!0),s.isUnterminated()&&(n.isUnterminated=!0),Je(),Tt(n,t)}function bn(){return ln(!0,ws.Type_expected)}function xn(){if(!s.hasPrecedingLineBreak()&&30===Ye())return an(20,br,30,32)}function Sn(){const e=Ue();return Tt(N.createTypeReferenceNode(bn(),xn()),e)}function wn(e){switch(e.kind){case 183:return F_(e.typeName);case 184:case 185:{const{parameters:t,type:n}=e;return!!t.isMissingList||wn(n)}case 196:return wn(e.type);default:return!1}}function kn(){const e=Ue();return Je(),Tt(N.createThisTypeNode(),e)}function En(){const e=Ue();let t;return 110!==qe()&&105!==qe()||(t=At(),ot(59)),Tt(N.createParameterDeclaration(void 0,void 0,t,void 0,Cn(),void 0),e)}function Cn(){s.setSkipJsDocLeadingAsterisks(!0);const e=Ue();if(_t(144)){const t=N.createJSDocNamepathType(void 0);e:for(;;)switch(qe()){case 20:case 1:case 28:case 5:break e;default:We()}return s.setSkipJsDocLeadingAsterisks(!1),Tt(t,e)}const t=_t(26);let n=yr();return s.setSkipJsDocLeadingAsterisks(!1),t&&(n=Tt(N.createJSDocVariadicType(n),e)),64===qe()?(Je(),Tt(N.createJSDocOptionalType(n),e)):n}function Nn(){const e=Ue(),t=co(!1,!0),n=Nt();let r,i;_t(96)&&(sr()||!Tr()?r=br():i=zr());const o=_t(64)?br():void 0,s=N.createTypeParameterDeclaration(t,n,r,o);return s.expression=i,Tt(s,e)}function An(){if(30===qe())return an(19,Nn,30,32)}function In(e){return 26===qe()||Ki()||su(qe())||60===qe()||sr(!e)}function Dn(e){return Pn(e)}function Pn(e,t=!0){const n=Ue(),r=Be(),i=e?Ee((()=>co(!0))):Ce((()=>co(!0)));if(110===qe()){const e=N.createParameterDeclaration(i,void 0,Et(!0),void 0,xr(),void 0),t=we(i);return t&&je(t,ws.Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters),ue(Tt(e,n),r)}const o=ie;ie=!1;const s=ft(26);if(!t&&!rt()&&23!==qe()&&19!==qe())return;const a=ue(Tt(N.createParameterDeclaration(i,s,function(e){const t=Ji(ws.Private_identifiers_cannot_be_used_as_parameters);return 0===y_(t)&&!$(e)&&su(qe())&&Je(),t}(i),ft(58),xr(),kr()),n),r);return ie=o,a}function Mn(e,t){if(function(e,t){if(39===e)return ot(e),!0;if(_t(59))return!0;if(t&&39===qe())return Fe(ws._0_expected,Vs(59)),Je(),!0;return!1}(e,t))return Te(yr)}function On(e,t){const n=Ie(),r=Oe();ge(!!(1&e)),ve(!!(2&e));const i=32&e?rn(17,En):rn(16,(()=>t?Dn(r):Pn(r,!1)));return ge(n),ve(r),i}function Fn(e){if(!ot(21))return sn();const t=On(e,!0);return ot(22),t}function Rn(){_t(28)||xt()}function Ln(e){const t=Ue(),n=Be();180===e&&ot(105);const r=An(),i=Fn(4),o=Mn(59,!0);Rn();return ue(Tt(179===e?N.createCallSignature(r,i,o):N.createConstructSignature(r,i,o),t),n)}function jn(){return 23===qe()&&tt(zn)}function zn(){if(Je(),26===qe()||24===qe())return!0;if(su(qe())){if(Je(),it())return!0}else{if(!it())return!1;Je()}return 59===qe()||28===qe()||58===qe()&&(Je(),59===qe()||28===qe()||24===qe())}function Un(e,t,n){const r=an(16,(()=>Dn(!1)),23,24),i=xr();Rn();return ue(Tt(N.createIndexSignature(n,r,i),e),t)}function Bn(){if(21===qe()||30===qe()||139===qe()||153===qe())return!0;let e=!1;for(;su(qe());)e=!0,Je();return 23===qe()||(Dt()&&(e=!0,Je()),!!e&&(21===qe()||30===qe()||58===qe()||59===qe()||28===qe()||vt()))}function qn(){if(21===qe()||30===qe())return Ln(179);if(105===qe()&&tt(Vn))return Ln(180);const e=Ue(),t=Be(),n=co(!1);return Ft(139)?no(e,t,n,177,4):Ft(153)?no(e,t,n,178,4):jn()?Un(e,t,n):function(e,t,n){const r=Mt(),i=ft(58);let o;if(21===qe()||30===qe()){const e=An(),t=Fn(4),s=Mn(59,!0);o=N.createMethodSignature(n,r,i,e,t,s)}else{const e=xr();o=N.createPropertySignature(n,r,i,e),64===qe()&&(o.initializer=kr())}return Rn(),ue(Tt(o,e),t)}(e,t,n)}function Vn(){return Je(),21===qe()||30===qe()}function Kn(){return 25===Je()}function Jn(){switch(Je()){case 21:case 30:case 25:return!0}return!1}function Wn(){let e;return ot(19)?(e=Xt(4,qn),ot(20)):e=sn(),e}function Hn(){return Je(),40===qe()||41===qe()?148===Je():(148===qe()&&Je(),23===qe()&&Kt()&&103===Je())}function Gn(){const e=Ue();let t;ot(19),148!==qe()&&40!==qe()&&41!==qe()||(t=yt(),148!==t.kind&&ot(148)),ot(23);const n=function(){const e=Ue(),t=At();ot(103);const n=br();return Tt(N.createTypeParameterDeclaration(void 0,t,n,void 0),e)}(),r=_t(130)?br():void 0;let i;ot(24),58!==qe()&&40!==qe()&&41!==qe()||(i=yt(),58!==i.kind&&ot(58));const o=xr();xt();const s=Xt(4,qn);return ot(20),Tt(N.createMappedTypeNode(t,n,r,i,o,s),e)}function Qn(){const e=Ue();if(_t(26))return Tt(N.createRestTypeNode(br()),e);const t=br();if(sD(t)&&t.pos===t.type.pos){const e=N.createOptionalTypeNode(t.type);return vM(e,t),e.flags=t.flags,e}return t}function Yn(){return 59===Je()||58===qe()&&59===Je()}function Zn(){return 26===qe()?ks(Je())&&Yn():ks(qe())&&Yn()}function Xn(){if(tt(Zn)){const e=Ue(),t=Be(),n=ft(26),r=At(),i=ft(58);ot(59);const o=Qn();return ue(Tt(N.createNamedTupleMember(n,r,i,o),e),t)}return Qn()}function $n(){const e=Ue(),t=Be(),n=function(){let e;if(128===qe()){const t=Ue();Je(),e=St([Tt(F(128),t)],t)}return e}(),r=_t(105);Tn.assert(!n||r,"Per isStartOfFunctionOrConstructorType, a function type cannot have modifiers.");const i=An(),o=Fn(4),s=Mn(39,!1);return ue(Tt(r?N.createConstructorTypeNode(n,i,o,s):N.createFunctionTypeNode(i,o,s),e),t)}function er(){const e=yt();return 25===qe()?void 0:e}function tr(e){const t=Ue();e&&Je();let n=112===qe()||97===qe()||106===qe()?yt():vn(qe());return e&&(n=Tt(N.createPrefixUnaryExpression(41,n),t)),Tt(N.createLiteralTypeNode(n),t)}function nr(){return Je(),102===qe()}function rr(){u|=4194304;const e=Ue(),t=_t(114);ot(102),ot(21);const n=br();let r;if(_t(28)){const e=s.getTokenStart();ot(19);const t=qe();if(118===t||132===t?Je():Fe(ws._0_expected,Vs(118)),ot(59),r=Ao(t,!0),!ot(20)){const t=Ne(g);t&&t.code===ws._0_expected.code&&xw(t,lS(l,d,e,1,ws.The_parser_expected_to_find_a_1_to_match_the_0_token_here,"{","}"))}}ot(22);const i=_t(25)?bn():void 0,o=xn();return Tt(N.createImportTypeNode(n,r,i,o,t),e)}function ir(){return Je(),9===qe()||10===qe()}function or(){switch(qe()){case 133:case 159:case 154:case 150:case 163:case 155:case 136:case 157:case 146:case 151:return nt(er)||Sn();case 67:s.reScanAsteriskEqualsToken();case 42:return function(){const e=Ue();return Je(),Tt(N.createJSDocAllType(),e)}();case 61:s.reScanQuestionToken();case 58:return function(){const e=Ue();return Je(),28===qe()||20===qe()||22===qe()||32===qe()||64===qe()||52===qe()?Tt(N.createJSDocUnknownType(),e):Tt(N.createJSDocNullableType(br(),!1),e)}();case 100:return function(){const e=Ue(),t=Be();if(nt(To)){const n=Fn(36),r=Mn(59,!1);return ue(Tt(N.createJSDocFunctionType(n,r),e),t)}return Tt(N.createTypeReferenceNode(At(),void 0),e)}();case 54:return function(){const e=Ue();return Je(),Tt(N.createJSDocNonNullableType(or(),!1),e)}();case 15:case 11:case 9:case 10:case 112:case 97:case 106:return tr();case 41:return tt(ir)?tr(!0):Sn();case 116:return yt();case 110:{const t=kn();return 142!==qe()||s.hasPrecedingLineBreak()?t:(e=t,Je(),Tt(N.createTypePredicateNode(void 0,e,br()),e.pos))}case 114:return tt(nr)?rr():function(){const e=Ue();ot(114);const t=ln(!0),n=s.hasPrecedingLineBreak()?void 0:go();return Tt(N.createTypeQueryNode(t,n),e)}();case 19:return tt(Hn)?Gn():function(){const e=Ue();return Tt(N.createTypeLiteralNode(Wn()),e)}();case 23:return function(){const e=Ue();return Tt(N.createTupleTypeNode(an(21,Xn,23,24)),e)}();case 21:return function(){const e=Ue();ot(21);const t=br();return ot(22),Tt(N.createParenthesizedType(t),e)}();case 102:return rr();case 131:return tt(xi)?function(){const e=Ue(),t=ht(131),n=110===qe()?kn():Nt(),r=_t(142)?br():void 0;return Tt(N.createTypePredicateNode(t,n,r),e)}():Sn();case 16:return pn();default:return Sn()}var e}function sr(e){switch(qe()){case 133:case 159:case 154:case 150:case 163:case 136:case 148:case 155:case 158:case 116:case 157:case 106:case 110:case 114:case 146:case 19:case 23:case 30:case 52:case 51:case 105:case 11:case 9:case 10:case 112:case 97:case 151:case 42:case 58:case 54:case 26:case 140:case 102:case 131:case 15:case 16:return!0;case 100:return!e;case 41:return!e&&tt(ir);case 21:return!e&&tt(ar);default:return it()}}function ar(){return Je(),22===qe()||In(!1)||sr()}function cr(){const e=Ue();let t=or();for(;!s.hasPrecedingLineBreak();)switch(qe()){case 54:Je(),t=Tt(N.createJSDocNonNullableType(t,!0),e);break;case 58:if(tt(Yt))return t;Je(),t=Tt(N.createJSDocNullableType(t,!0),e);break;case 23:if(ot(23),sr()){const n=br();ot(24),t=Tt(N.createIndexedAccessTypeNode(t,n),e)}else ot(24),t=Tt(N.createArrayTypeNode(t),e);break;default:return t}return t}function lr(){if(_t(96)){const e=ke(br);if(Pe()||58!==qe())return e}}function ur(){const e=Ue();return ot(140),Tt(N.createInferTypeNode(function(){const e=Ue(),t=Nt(),n=nt(lr);return Tt(N.createTypeParameterDeclaration(void 0,t,n),e)}()),e)}function dr(){const e=qe();switch(e){case 143:case 158:case 148:return function(e){const t=Ue();return ot(e),Tt(N.createTypeOperatorNode(e,dr()),t)}(e);case 140:return ur()}return Te(cr)}function _r(e){if(hr()){const t=$n();let n;return n=AN(t)?e?ws.Function_type_notation_must_be_parenthesized_when_used_in_a_union_type:ws.Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:e?ws.Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type:ws.Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type,je(t,n),t}}function pr(e,t,n){const r=Ue(),i=52===e,o=_t(e);let s=o&&_r(i)||t();if(qe()===e||o){const o=[s];for(;_t(e);)o.push(_r(i)||t());s=Tt(n(St(o,r)),r)}return s}function fr(){return pr(51,dr,N.createIntersectionTypeNode)}function mr(){return Je(),105===qe()}function hr(){return 30===qe()||(!(21!==qe()||!tt(gr))||(105===qe()||128===qe()&&tt(mr)))}function gr(){if(Je(),22===qe()||26===qe())return!0;if(function(){if(su(qe())&&co(!1),it()||110===qe())return Je(),!0;if(23===qe()||19===qe()){const e=g.length;return Ji(),e===g.length}return!1}()){if(59===qe()||28===qe()||58===qe()||64===qe())return!0;if(22===qe()&&(Je(),39===qe()))return!0}return!1}function yr(){const e=Ue(),t=it()&&nt(vr),n=br();return t?Tt(N.createTypePredicateNode(void 0,t,n),e):n}function vr(){const e=Nt();if(142===qe()&&!s.hasPrecedingLineBreak())return Je(),e}function br(){if(81920&C)return be(81920,br);if(hr())return $n();const e=Ue(),t=pr(52,fr,N.createUnionTypeNode);if(!Pe()&&!s.hasPrecedingLineBreak()&&_t(96)){const n=ke(br);ot(58);const r=Te(br);ot(59);const i=Te(br);return Tt(N.createConditionalTypeNode(t,n,r,i),e)}return t}function xr(){return _t(59)?br():void 0}function Sr(){switch(qe()){case 110:case 108:case 106:case 112:case 97:case 9:case 10:case 11:case 15:case 16:case 21:case 23:case 19:case 100:case 86:case 105:case 44:case 69:case 80:return!0;case 102:return tt(Jn);default:return it()}}function Tr(){if(Sr())return!0;switch(qe()){case 40:case 41:case 55:case 54:case 91:case 114:case 116:case 46:case 47:case 30:case 135:case 127:case 81:case 60:return!0;default:return!!Fr()||it()}}function wr(){const e=Me();e&&ye(!1);const t=Ue();let n,r=Er(!0);for(;n=ft(28);)r=Rr(r,n,Er(!0),t);return e&&ye(!0),r}function kr(){return _t(64)?Er(!0):void 0}function Er(e){if(function(){if(127===qe())return!!Ie()||tt(wi);return!1}())return function(){const e=Ue();return Je(),s.hasPrecedingLineBreak()||42!==qe()&&!Tr()?Tt(N.createYieldExpression(void 0,void 0),e):Tt(N.createYieldExpression(ft(42),Er(!0)),e)}();const t=function(e){const t=function(){if(21===qe()||30===qe()||134===qe())return tt(Nr);if(39===qe())return 1;return 0}();if(0===t)return;return 1===t?Ir(!0,!0):nt((()=>function(e){const t=s.getTokenStart();if(null==k?void 0:k.has(t))return;const n=Ir(!1,e);n||(k||(k=new Set)).add(t);return n}(e)))}(e)||function(e){if(134===qe()&&1===tt(Ar)){const t=Ue(),n=Be(),r=lo();return Cr(t,Pr(0),e,n,r)}return}(e);if(t)return t;const n=Ue(),r=Be(),i=Pr(0);return 80===i.kind&&39===qe()?Cr(n,i,e,r,void 0):Qu(i)&&gb(Ge())?Rr(i,yt(),Er(e),n):function(e,t,n){const r=ft(58);if(!r)return e;let i;return Tt(N.createConditionalExpression(e,r,be(a,(()=>Er(!1))),i=ht(59),R_(i)?Er(n):wt(80,!1,ws._0_expected,Vs(59))),t)}(i,n,e)}function Cr(e,t,n,r,i){Tn.assert(39===qe(),"parseSimpleArrowFunctionExpression should only have been called if we had a =>");const o=N.createParameterDeclaration(void 0,void 0,t,void 0,void 0,void 0);Tt(o,t.pos);const s=St([o],o.pos,o.end),a=ht(39),c=Dr(!!i,n);return ue(Tt(N.createArrowFunction(i,void 0,s,void 0,a,c),e),r)}function Nr(){if(134===qe()){if(Je(),s.hasPrecedingLineBreak())return 0;if(21!==qe()&&30!==qe())return 0}const e=qe(),t=Je();if(21===e){if(22===t){switch(Je()){case 39:case 59:case 19:return 1;default:return 0}}if(23===t||19===t)return 2;if(26===t)return 1;if(su(t)&&134!==t&&tt(Kt))return 130===Je()?0:1;if(!it()&&110!==t)return 0;switch(Je()){case 59:return 1;case 58:return Je(),59===qe()||28===qe()||64===qe()||22===qe()?1:0;case 28:case 64:case 22:return 2}return 0}if(Tn.assert(30===e),!it()&&87!==qe())return 0;if(1===h){return tt((()=>{_t(87);const e=Je();if(96===e){switch(Je()){case 64:case 32:case 44:return!1;default:return!0}}else if(28===e||64===e)return!0;return!1}))?1:0}return 2}function Ar(){if(134===qe()){if(Je(),s.hasPrecedingLineBreak()||39===qe())return 0;const e=Pr(0);if(!s.hasPrecedingLineBreak()&&80===e.kind&&39===qe())return 1}return 0}function Ir(e,t){const n=Ue(),r=Be(),i=lo(),o=$(i,eN)?2:0,s=An();let a;if(ot(21)){if(e)a=On(o,e);else{const t=On(o,e);if(!t)return;a=t}if(!ot(22)&&!e)return}else{if(!e)return;a=sn()}const c=59===qe(),l=Mn(59,!1);if(l&&!e&&wn(l))return;let u=l;for(;196===(null==u?void 0:u.kind);)u=u.type;const d=u&&lD(u);if(!e&&39!==qe()&&(d||19!==qe()))return;const _=qe(),p=ht(39),f=39===_||19===_?Dr($(i,eN),t):Nt();if(!t&&c&&59!==qe())return;return ue(Tt(N.createArrowFunction(i,s,a,l,p,f),n),r)}function Dr(e,t){if(19===qe())return mi(e?2:0);if(27!==qe()&&100!==qe()&&86!==qe()&&Ci()&&(19===qe()||100===qe()||86===qe()||60===qe()||!Tr()))return mi(16|(e?2:0));const n=ie;ie=!1;const r=e?Ee((()=>Er(t))):Ce((()=>Er(t)));return ie=n,r}function Pr(e){const t=Ue();return Or(e,zr(),t)}function Mr(e){return 103===e||165===e}function Or(e,t,n){for(;;){Ge();const o=Ty(qe());if(!(43===qe()?o>=e:o>e))break;if(103===qe()&&De())break;if(130===qe()||152===qe()){if(s.hasPrecedingLineBreak())break;{const e=qe();Je(),t=152===e?(r=t,i=br(),Tt(N.createSatisfiesExpression(r,i),r.pos)):Lr(t,br())}}else t=Rr(t,yt(),Pr(o),n)}var r,i;return t}function Fr(){return(!De()||103!==qe())&&Ty(qe())>0}function Rr(e,t,n,r){return Tt(N.createBinaryExpression(e,t,n),r)}function Lr(e,t){return Tt(N.createAsExpression(e,t),e.pos)}function jr(){const e=Ue();return Tt(N.createPrefixUnaryExpression(qe(),Ke(Ur)),e)}function zr(){if(function(){switch(qe()){case 40:case 41:case 55:case 54:case 91:case 114:case 116:case 135:return!1;case 30:if(1!==h)return!1;default:return!0}}()){const e=Ue(),t=Br();return 43===qe()?Or(Ty(qe()),t,e):t}const e=qe(),t=Ur();if(43===qe()){const n=da(d,t.pos),{end:r}=t;216===t.kind?Le(n,r,ws.A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses):(Tn.assert(Rg(e)),Le(n,r,ws.An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses,Vs(e)))}return t}function Ur(){switch(qe()){case 40:case 41:case 55:case 54:return jr();case 91:return function(){const e=Ue();return Tt(N.createDeleteExpression(Ke(Ur)),e)}();case 114:return function(){const e=Ue();return Tt(N.createTypeOfExpression(Ke(Ur)),e)}();case 116:return function(){const e=Ue();return Tt(N.createVoidExpression(Ke(Ur)),e)}();case 30:return 1===h?Kr(!0,void 0,void 0,!0):function(){Tn.assert(1!==h,"Type assertions should never be parsed in JSX; they should be parsed as comparisons or JSX elements/fragments.");const e=Ue();ot(30);const t=br();ot(32);const n=Ur();return Tt(N.createTypeAssertion(t,n),e)}();case 135:if(135===qe()&&(Oe()||tt(wi)))return function(){const e=Ue();return Tt(N.createAwaitExpression(Ke(Ur)),e)}();default:return Br()}}function Br(){if(46===qe()||47===qe()){const e=Ue();return Tt(N.createPrefixUnaryExpression(qe(),Ke(qr)),e)}if(1===h&&30===qe()&&tt(Wt))return Kr(!0);const e=qr();if(Tn.assert(Qu(e)),(46===qe()||47===qe())&&!s.hasPrecedingLineBreak()){const t=qe();return Je(),Tt(N.createPostfixUnaryExpression(e,t),e.pos)}return e}function qr(){const e=Ue();let t;return 102===qe()?tt(Vn)?(u|=4194304,t=yt()):tt(Kn)?(Je(),Je(),t=Tt(N.createMetaProperty(102,At()),e),u|=8388608):t=Vr():t=108===qe()?function(){const e=Ue();let t=yt();if(30===qe()){const e=Ue(),n=nt(oi);void 0!==n&&(Le(e,Ue(),ws.super_may_not_use_type_arguments),ti()||(t=N.createExpressionWithTypeArguments(t,n)))}if(21===qe()||25===qe()||23===qe())return t;return ht(25,ws.super_must_be_followed_by_an_argument_list_or_member_access),Tt(j(t,dn(!0,!0,!0)),e)}():Vr(),ri(e,t)}function Vr(){return ei(Ue(),si(),!0)}function Kr(e,t,n,r=!1){const i=Ue(),o=function(e){const t=Ue();if(ot(30),32===qe())return $e(),Tt(N.createJsxOpeningFragment(),t);const n=Hr(),r=524288&C?void 0:go(),i=function(){const e=Ue();return Tt(N.createJsxAttributes(Xt(13,Qr)),e)}();let o;32===qe()?($e(),o=N.createJsxOpeningElement(n,r,i)):(ot(44),ot(32,void 0,!1)&&(e?Je():$e()),o=N.createJsxSelfClosingElement(n,r,i));return Tt(o,t)}(e);let s;if(286===o.kind){let t,r=Wr(o);const a=r[r.length-1];if(284===(null==a?void 0:a.kind)&&!vO(a.openingElement.tagName,a.closingElement.tagName)&&vO(o.tagName,a.closingElement.tagName)){const e=a.children.end,n=Tt(N.createJsxElement(a.openingElement,a.children,Tt(N.createJsxClosingElement(Tt(M(""),e,e)),e,e)),a.openingElement.pos,e);r=St([...r.slice(0,r.length-1),n],r.pos,e),t=a.closingElement}else t=function(e,t){const n=Ue();ot(31);const r=Hr();ot(32,void 0,!1)&&(t||!vO(e.tagName,r)?Je():$e());return Tt(N.createJsxClosingElement(r),n)}(o,e),vO(o.tagName,t.tagName)||(n&&PI(n)&&vO(t.tagName,n.tagName)?je(o.tagName,ws.JSX_element_0_has_no_corresponding_closing_tag,$_(d,o.tagName)):je(t.tagName,ws.Expected_corresponding_JSX_closing_tag_for_0,$_(d,o.tagName)));s=Tt(N.createJsxElement(o,r,t),i)}else 289===o.kind?s=Tt(N.createJsxFragment(o,Wr(o),function(e){const t=Ue();ot(31),ot(32,ws.Expected_corresponding_closing_tag_for_JSX_fragment,!1)&&(e?Je():$e());return Tt(N.createJsxJsxClosingFragment(),t)}(e)),i):(Tn.assert(285===o.kind),s=o);if(!r&&e&&30===qe()){const e=void 0===t?s.pos:t,n=nt((()=>Kr(!0,e)));if(n){const t=wt(28,!1);return zw(t,n.pos,0),Le(da(d,e),n.end,ws.JSX_expressions_must_have_one_parent_element),Tt(N.createBinaryExpression(s,t,n),i)}}return s}function Jr(e,t){switch(t){case 1:if(FI(e))je(e,ws.JSX_fragment_has_no_corresponding_closing_tag);else{const t=e.tagName;Le(Math.min(da(d,t.pos),t.end),t.end,ws.JSX_element_0_has_no_corresponding_closing_tag,$_(d,e.tagName))}return;case 31:case 7:return;case 12:case 13:return function(){const e=Ue(),t=N.createJsxText(s.getTokenValue(),13===b);return b=s.scanJsxToken(),Tt(t,e)}();case 19:return Gr(!1);case 30:return Kr(!1,void 0,e);default:return Tn.assertNever(t)}}function Wr(e){const t=[],n=Ue(),r=w;for(w|=16384;;){const n=Jr(e,b=s.reScanJsxToken());if(!n)break;if(t.push(n),PI(e)&&284===(null==n?void 0:n.kind)&&!vO(n.openingElement.tagName,n.closingElement.tagName)&&vO(e.tagName,n.closingElement.tagName))break}return w=r,St(t,n)}function Hr(){const e=Ue(),t=function(){const e=Ue();Xe();const t=110===qe(),n=It();if(_t(59))return Xe(),Tt(N.createJsxNamespacedName(n,It()),e);return t?Tt(N.createToken(110),e):n}();if(BI(t))return t;let n=t;for(;_t(25);)n=Tt(j(n,dn(!0,!1,!1)),e);return n}function Gr(e){const t=Ue();if(!ot(19))return;let n,r;return 20!==qe()&&(e||(n=ft(26)),r=wr()),e?ot(20):ot(20,void 0,!1)&&$e(),Tt(N.createJsxExpression(n,r),t)}function Qr(){if(19===qe())return function(){const e=Ue();ot(19),ot(26);const t=wr();return ot(20),Tt(N.createJsxSpreadAttribute(t),e)}();const e=Ue();return Tt(N.createJsxAttribute(function(){const e=Ue();Xe();const t=It();if(_t(59))return Xe(),Tt(N.createJsxNamespacedName(t,It()),e);return t}(),function(){if(64===qe()){if(11===(b=s.scanJsxAttributeValue()))return gn();if(19===qe())return Gr(!0);if(30===qe())return Kr(!0);Fe(ws.or_JSX_element_expected)}return}()),e)}function Yr(){return Je(),ks(qe())||23===qe()||ti()}function Zr(e){if(64&e.flags)return!0;if(CA(e)){let t=e.expression;for(;CA(t)&&!(64&t.flags);)t=t.expression;if(64&t.flags){for(;CA(e);)e.flags|=64,e=e.expression;return!0}}return!1}function Xr(e,t,n){const r=dn(!0,!0,!0),i=n||Zr(t),o=i?z(t,n,r):j(t,r);if(i&&ZC(o.name)&&je(o.name,ws.An_optional_chain_cannot_contain_private_identifiers),wA(t)&&t.typeArguments){Le(t.typeArguments.pos-1,da(d,t.typeArguments.end)+1,ws.An_instantiation_expression_cannot_be_followed_by_a_property_access)}return Tt(o,e)}function $r(e,t,n){let r;if(24===qe())r=wt(80,!0,ws.An_element_access_expression_should_take_an_argument);else{const e=Se(wr);Hg(e)&&(e.text=kt(e.text)),r=e}ot(24);return Tt(n||Zr(t)?B(t,n,r):U(t,r),e)}function ei(e,t,n){for(;;){let r,i=!1;if(n&&29===qe()&&tt(Yr)?(r=ht(29),i=ks(qe())):i=_t(25),i)t=Xr(e,t,r);else if(!r&&Me()||!_t(23)){if(!ti()){if(!r){if(54===qe()&&!s.hasPrecedingLineBreak()){Je(),t=Tt(N.createNonNullExpression(t),e);continue}const n=nt(oi);if(n){t=Tt(N.createExpressionWithTypeArguments(t,n),e);continue}}return t}t=r||233!==t.kind?ni(e,t,r,void 0):ni(e,t.expression,r,t.typeArguments)}else t=$r(e,t,r)}}function ti(){return 15===qe()||16===qe()}function ni(e,t,n,r){const i=N.createTaggedTemplateExpression(t,r,15===qe()?(Qe(!0),gn()):_n(!0));return(n||64&t.flags)&&(i.flags|=64),i.questionDotToken=n,Tt(i,e)}function ri(e,t){for(;;){let n;t=ei(e,t,!0);const r=ft(29);if(r&&(n=nt(oi),ti()))t=ni(e,t,r,n);else{if(!n&&21!==qe()){if(r){const n=wt(80,!1,ws.Identifier_expected);t=Tt(z(t,r,n),e)}break}{r||233!==t.kind||(n=t.typeArguments,t=t.expression);const i=ii();t=Tt(r||Zr(t)?V(t,r,n,i):q(t,n,i),e)}}}return t}function ii(){ot(21);const e=rn(11,ci);return ot(22),e}function oi(){if(524288&C)return;if(30!==Ye())return;Je();const e=rn(20,br);return 32===Ge()?(Je(),e&&function(){switch(qe()){case 21:case 15:case 16:return!0;case 30:case 32:case 40:case 41:return!1}return s.hasPrecedingLineBreak()||Fr()||!Tr()}()?e:void 0):void 0}function si(){switch(qe()){case 15:26656&s.getTokenFlags()&&Qe(!1);case 9:case 10:case 11:return gn();case 110:case 108:case 106:case 112:case 97:return yt();case 21:return function(){const e=Ue(),t=Be();ot(21);const n=Se(wr);return ot(22),ue(Tt(W(n),e),t)}();case 23:return li();case 19:return di();case 134:if(!tt(Ti))break;return _i();case 60:return function(){const e=Ue(),t=Be(),n=co(!0);if(86===qe())return po(e,t,n,231);const r=wt(282,!0,ws.Expression_expected);return Rw(r,e),r.modifiers=n,r}();case 86:return po(Ue(),Be(),void 0,231);case 100:return _i();case 105:return function(){const e=Ue();if(ot(105),_t(25)){const t=At();return Tt(N.createMetaProperty(105,t),e)}let t,n=ei(Ue(),si(),!1);233===n.kind&&(t=n.typeArguments,n=n.expression);29===qe()&&Fe(ws.Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0,$_(d,n));const r=21===qe()?ii():void 0;return Tt(K(n,t,r),e)}();case 44:case 69:if(14===(b=s.reScanSlashToken()))return gn();break;case 16:return _n(!1);case 81:return Ot()}return Nt(ws.Expression_expected)}function ai(){return 26===qe()?function(){const e=Ue();ot(26);const t=Er(!0);return Tt(N.createSpreadElement(t),e)}():28===qe()?Tt(N.createOmittedExpression(),Ue()):Er(!0)}function ci(){return be(a,ai)}function li(){const e=Ue(),t=s.getTokenStart(),n=ot(23),r=s.hasPrecedingLineBreak(),i=rn(15,ai);return dt(23,24,n,t),Tt(R(i,r),e)}function ui(){const e=Ue(),t=Be();if(ft(26)){const n=Er(!0);return ue(Tt(N.createSpreadAssignment(n),e),t)}const n=co(!0);if(Ft(139))return no(e,t,n,177,0);if(Ft(153))return no(e,t,n,178,0);const r=ft(42),i=it(),o=Mt(),s=ft(58),a=ft(54);if(r||21===qe()||30===qe())return $i(e,t,n,r,o,s,a);let c;if(i&&59!==qe()){const e=ft(64),t=e?Se((()=>Er(!0))):void 0;c=N.createShorthandPropertyAssignment(o,t),c.equalsToken=e}else{ot(59);const e=Se((()=>Er(!0)));c=N.createPropertyAssignment(o,e)}return c.modifiers=n,c.questionToken=s,c.exclamationToken=a,ue(Tt(c,e),t)}function di(){const e=Ue(),t=s.getTokenStart(),n=ot(19),r=s.hasPrecedingLineBreak(),i=rn(12,ui,!0);return dt(19,20,n,t),Tt(L(i,r),e)}function _i(){const e=Me();ye(!1);const t=Ue(),n=Be(),r=co(!1);ot(100);const i=ft(42),o=i?1:0,s=$(r,eN)?2:0,a=o&&s?xe(81920,pi):o?function(e){return xe(16384,e)}(pi):s?Ee(pi):pi();const c=An(),l=Fn(o|s),u=Mn(59,!1),d=mi(o|s);ye(e);return ue(Tt(N.createFunctionExpression(r,i,a,c,l,u,d),t),n)}function pi(){return rt()?Ct():void 0}function fi(e,t){const n=Ue(),r=Be(),i=s.getTokenStart(),o=ot(19,t);if(o||e){const e=s.hasPrecedingLineBreak(),t=Xt(1,Oi);dt(19,20,o,i);const a=ue(Tt(H(t,e),n),r);return 64===qe()&&(Fe(ws.Declaration_or_statement_expected_This_follows_a_block_of_statements_so_if_you_intended_to_write_a_destructuring_assignment_you_might_need_to_wrap_the_whole_assignment_in_parentheses),Je()),a}{const e=sn();return ue(Tt(H(e,void 0),n),r)}}function mi(e,t){const n=Ie();ge(!!(1&e));const r=Oe();ve(!!(2&e));const i=ie;ie=!1;const o=Me();o&&ye(!1);const s=fi(!!(16&e),t);return o&&ye(!0),ie=i,ge(n),ve(r),s}function hi(){const e=Ue(),t=Be();ot(99);const n=ft(135);let r;let i;if(ot(21),27!==qe()&&(r=115===qe()||121===qe()||87===qe()||160===qe()&&tt(Ai)||135===qe()&&tt(Pi)?Gi(!0):xe(8192,wr)),n?ot(165):_t(165)){const e=Se((()=>Er(!0)));ot(22),i=ee(n,r,e,Oi())}else if(_t(103)){const e=Se(wr);ot(22),i=N.createForInStatement(r,e,Oi())}else{ot(27);const e=27!==qe()&&22!==qe()?Se(wr):void 0;ot(27);const t=22!==qe()?Se(wr):void 0;ot(22),i=X(r,e,t,Oi())}return ue(Tt(i,e),t)}function gi(e){const t=Ue(),n=Be();ot(252===e?83:88);const r=vt()?void 0:Nt();xt();return ue(Tt(252===e?N.createBreakStatement(r):N.createContinueStatement(r),t),n)}function yi(){return 84===qe()?function(){const e=Ue(),t=Be();ot(84);const n=Se(wr);ot(59);const r=Xt(3,Oi);return ue(Tt(N.createCaseClause(n,r),e),t)}():function(){const e=Ue();ot(90),ot(59);const t=Xt(3,Oi);return Tt(N.createDefaultClause(t),e)}()}function vi(){const e=Ue(),t=Be();ot(109),ot(21);const n=Se(wr);ot(22);const r=function(){const e=Ue();ot(19);const t=Xt(2,yi);return ot(20),Tt(N.createCaseBlock(t),e)}();return ue(Tt(N.createSwitchStatement(n,r),e),t)}function bi(){const e=Ue(),t=Be();ot(113);const n=fi(!1),r=85===qe()?function(){const e=Ue();let t;ot(85),_t(21)?(t=Hi(),ot(22)):t=void 0;const n=fi(!1);return Tt(N.createCatchClause(t,n),e)}():void 0;let i;return r&&98!==qe()||(ot(98,ws.catch_or_finally_expected),i=fi(!1)),ue(Tt(N.createTryStatement(n,r,i),e),t)}function xi(){return Je(),ks(qe())&&!s.hasPrecedingLineBreak()}function Si(){return Je(),86===qe()&&!s.hasPrecedingLineBreak()}function Ti(){return Je(),100===qe()&&!s.hasPrecedingLineBreak()}function wi(){return Je(),(ks(qe())||9===qe()||10===qe()||11===qe())&&!s.hasPrecedingLineBreak()}function ki(){for(;;)switch(qe()){case 115:case 121:case 87:case 100:case 86:case 94:return!0;case 160:return Di();case 135:return Mi();case 120:case 156:return Je(),!s.hasPrecedingLineBreak()&&it();case 144:case 145:return Ui();case 128:case 129:case 134:case 138:case 123:case 124:case 125:case 148:const e=qe();if(Je(),s.hasPrecedingLineBreak())return!1;if(138===e&&156===qe())return!0;continue;case 162:return Je(),19===qe()||80===qe()||95===qe();case 102:return Je(),11===qe()||42===qe()||19===qe()||ks(qe());case 95:let t=Je();if(156===t&&(t=tt(Je)),64===t||42===t||19===t||90===t||130===t||60===t)return!0;continue;case 126:Je();continue;default:return!1}}function Ei(){return tt(ki)}function Ci(){switch(qe()){case 60:case 27:case 19:case 115:case 121:case 160:case 100:case 86:case 94:case 101:case 92:case 117:case 99:case 88:case 83:case 107:case 118:case 109:case 111:case 113:case 89:case 85:case 98:case 134:case 138:case 120:case 144:case 145:case 156:case 162:return!0;case 102:return Ei()||tt(Jn);case 87:case 95:return Ei();case 129:case 125:case 123:case 124:case 126:case 148:return Ei()||!tt(xi);default:return Tr()}}function Ni(){return Je(),rt()||19===qe()||23===qe()}function Ai(){return Ii(!0)}function Ii(e){return Je(),(!e||165!==qe())&&((rt()||19===qe())&&!s.hasPrecedingLineBreak())}function Di(){return tt(Ii)}function Pi(e){return 160===Je()&&Ii(e)}function Mi(){return tt(Pi)}function Oi(){switch(qe()){case 27:return function(){const e=Ue(),t=Be();return ot(27),ue(Tt(N.createEmptyStatement(),e),t)}();case 19:return fi(!1);case 115:return Yi(Ue(),Be(),void 0);case 121:if(tt(Ni))return Yi(Ue(),Be(),void 0);break;case 135:if(Mi())return Yi(Ue(),Be(),void 0);break;case 160:if(Di())return Yi(Ue(),Be(),void 0);break;case 100:return Zi(Ue(),Be(),void 0);case 86:return _o(Ue(),Be(),void 0);case 101:return function(){const e=Ue(),t=Be();ot(101);const n=s.getTokenStart(),r=ot(21),i=Se(wr);dt(21,22,r,n);const o=Oi(),a=_t(93)?Oi():void 0;return ue(Tt(Y(i,o,a),e),t)}();case 92:return function(){const e=Ue(),t=Be();ot(92);const n=Oi();ot(117);const r=s.getTokenStart(),i=ot(21),o=Se(wr);return dt(21,22,i,r),_t(27),ue(Tt(N.createDoStatement(n,o),e),t)}();case 117:return function(){const e=Ue(),t=Be();ot(117);const n=s.getTokenStart(),r=ot(21),i=Se(wr);dt(21,22,r,n);const o=Oi();return ue(Tt(Z(i,o),e),t)}();case 99:return hi();case 88:return gi(251);case 83:return gi(252);case 107:return function(){const e=Ue(),t=Be();ot(107);const n=vt()?void 0:Se(wr);return xt(),ue(Tt(N.createReturnStatement(n),e),t)}();case 118:return function(){const e=Ue(),t=Be();ot(118);const n=s.getTokenStart(),r=ot(21),i=Se(wr);dt(21,22,r,n);const o=xe(67108864,Oi);return ue(Tt(N.createWithStatement(i,o),e),t)}();case 109:return vi();case 111:return function(){const e=Ue(),t=Be();ot(111);let n=s.hasPrecedingLineBreak()?void 0:Se(wr);return void 0===n&&(T++,n=Tt(M(""),Ue())),bt()||ct(n),ue(Tt(N.createThrowStatement(n),e),t)}();case 113:case 85:case 98:return bi();case 89:return function(){const e=Ue(),t=Be();return ot(89),xt(),ue(Tt(N.createDebuggerStatement(),e),t)}();case 60:return Ri();case 134:case 120:case 156:case 144:case 145:case 138:case 87:case 94:case 95:case 102:case 123:case 124:case 125:case 128:case 129:case 126:case 148:case 162:if(Ei())return Ri()}return function(){const e=Ue();let t,n=Be();const r=21===qe(),i=Se(wr);return YC(i)&&_t(59)?t=N.createLabeledStatement(i,Oi()):(bt()||ct(i),t=Q(i),r&&(n=!1)),ue(Tt(t,e),n)}()}function Fi(e){return 138===e.kind}function Ri(){const e=Ue(),t=Be(),n=co(!0);if($(n,Fi)){const r=function(e){return xe(33554432,(()=>{const t=en(w,e);if(t)return tn(t)}))}(e);if(r)return r;for(const e of n)e.flags|=33554432;return xe(33554432,(()=>Li(e,t,n)))}return Li(e,t,n)}function Li(e,t,n){switch(qe()){case 115:case 121:case 87:case 160:case 135:return Yi(e,t,n);case 100:return Zi(e,t,n);case 86:return _o(e,t,n);case 120:return function(e,t,n){ot(120);const r=Nt(),i=An(),o=fo(),s=Wn();return ue(Tt(N.createInterfaceDeclaration(n,r,i,o,s),e),t)}(e,t,n);case 156:return function(e,t,n){ot(156),s.hasPrecedingLineBreak()&&Fe(ws.Line_break_not_permitted_here);const r=Nt(),i=An();ot(64);const o=141===qe()&&nt(er)||br();xt();return ue(Tt(N.createTypeAliasDeclaration(n,r,i,o),e),t)}(e,t,n);case 94:return function(e,t,n){ot(94);const r=Nt();let i;ot(19)?(i=be(81920,(()=>rn(6,vo))),ot(20)):i=sn();return ue(Tt(N.createEnumDeclaration(n,r,i),e),t)}(e,t,n);case 162:case 144:case 145:return function(e,t,n){let r=0;if(162===qe())return So(e,t,n);if(_t(145))r|=32;else if(ot(144),11===qe())return So(e,t,n);return xo(e,t,n,r)}(e,t,n);case 102:return function(e,t,n){ot(102);const r=s.getTokenFullStart();let i;it()&&(i=Nt());let o=!1;"type"===(null==i?void 0:i.escapedText)&&(161!==qe()||it()&&tt(zi))&&(it()||42===qe()||19===qe())&&(o=!0,i=it()?Nt():void 0);if(i&&28!==qe()&&161!==qe())return function(e,t,n,r,i){ot(64);const o=149===qe()&&tt(To)?function(){const e=Ue();ot(149),ot(21);const t=Io();return ot(22),Tt(N.createExternalModuleReference(t),e)}():ln(!1);xt();const s=N.createImportEqualsDeclaration(n,i,r,o),a=ue(Tt(s,e),t);return a}(e,t,n,i,o);const a=Eo(i,r,o),c=Io(),l=Co();xt();return ue(Tt(N.createImportDeclaration(n,a,c,l),e),t)}(e,t,n);case 95:switch(Je(),qe()){case 90:case 64:return function(e,t,n){const r=Oe();let i;ve(!0),_t(64)?i=!0:ot(90);const o=Er(!0);xt(),ve(r);return ue(Tt(N.createExportAssignment(n,i,o),e),t)}(e,t,n);case 130:return function(e,t,n){ot(130),ot(145);const r=Nt();xt();const i=N.createNamespaceExportDeclaration(r);return i.modifiers=n,ue(Tt(i,e),t)}(e,t,n);default:return function(e,t,n){const r=Oe();let i,o,a;ve(!0);const c=_t(156),l=Ue();_t(42)?(_t(130)&&(i=function(e){return Tt(N.createNamespaceExport(At()),e)}(l)),ot(161),o=Io()):(i=Do(279),(161===qe()||11===qe()&&!s.hasPrecedingLineBreak())&&(ot(161),o=Io()));const u=qe();!o||118!==u&&132!==u||s.hasPrecedingLineBreak()||(a=Ao(u));xt(),ve(r);return ue(Tt(N.createExportDeclaration(n,c,i,o,a),e),t)}(e,t,n)}default:if(n){const t=wt(282,!0,ws.Declaration_expected);return Rw(t,e),t.modifiers=n,t}return}}function ji(){return 11===Je()}function zi(){return Je(),161===qe()||64===qe()}function Ui(){return Je(),!s.hasPrecedingLineBreak()&&(it()||11===qe())}function Bi(e,t){if(19!==qe()){if(4&e)return void Rn();if(vt())return void xt()}return mi(e,t)}function qi(){const e=Ue();if(28===qe())return Tt(N.createOmittedExpression(),e);const t=ft(26),n=Ji(),r=kr();return Tt(N.createBindingElement(t,void 0,n,r),e)}function Vi(){const e=Ue(),t=ft(26),n=rt();let r,i=Mt();n&&59!==qe()?(r=i,i=void 0):(ot(59),r=Ji());const o=kr();return Tt(N.createBindingElement(t,i,r,o),e)}function Ki(){return 19===qe()||23===qe()||81===qe()||rt()}function Ji(e){return 23===qe()?function(){const e=Ue();ot(23);const t=Se((()=>rn(10,qi)));return ot(24),Tt(N.createArrayBindingPattern(t),e)}():19===qe()?function(){const e=Ue();ot(19);const t=Se((()=>rn(9,Vi)));return ot(20),Tt(N.createObjectBindingPattern(t),e)}():Ct(e)}function Wi(){return Hi(!0)}function Hi(e){const t=Ue(),n=Be(),r=Ji(ws.Private_identifiers_are_not_allowed_in_variable_declarations);let i;e&&80===r.kind&&54===qe()&&!s.hasPrecedingLineBreak()&&(i=yt());const o=xr(),a=Mr(qe())?void 0:kr();return ue(Tt(ne(r,i,o,a),t),n)}function Gi(e){const t=Ue();let n,r=0;switch(qe()){case 115:break;case 121:r|=1;break;case 87:r|=2;break;case 160:r|=4;break;case 135:Tn.assert(Mi()),r|=6,Je();break;default:Tn.fail()}if(Je(),165===qe()&&tt(Qi))n=sn();else{const t=De();he(e),n=rn(8,e?Hi:Wi),he(t)}return Tt(re(n,r),t)}function Qi(){return Kt()&&22===Je()}function Yi(e,t,n){const r=Gi(!1);xt();return ue(Tt(G(n,r),e),t)}function Zi(e,t,n){const r=Oe(),i=lb(n);ot(100);const o=ft(42),s=2048&i?pi():Ct(),a=o?1:0,c=1024&i?2:0,l=An();32&i&&ve(!0);const u=Fn(a|c),d=Mn(59,!1),_=Bi(a|c,ws.or_expected);ve(r);return ue(Tt(N.createFunctionDeclaration(n,o,s,l,u,d,_),e),t)}function Xi(e,t,n){return nt((()=>{if(137===qe()?ot(137):11===qe()&&21===tt(Je)?nt((()=>{const e=gn();return"constructor"===e.text?e:void 0})):void 0){const r=An(),i=Fn(0),o=Mn(59,!1),s=Bi(0,ws.or_expected),a=N.createConstructorDeclaration(n,i,s);return a.typeParameters=r,a.type=o,ue(Tt(a,e),t)}}))}function $i(e,t,n,r,i,o,s,a){const c=r?1:0,l=$(n,eN)?2:0,u=An(),d=Fn(c|l),_=Mn(59,!1),p=Bi(c|l,a),f=N.createMethodDeclaration(n,r,i,o,u,d,_,p);return f.exclamationToken=s,ue(Tt(f,e),t)}function eo(e,t,n,r,i){const o=i||s.hasPrecedingLineBreak()?void 0:ft(54),a=xr(),c=be(90112,kr);!function(e,t,n){if(60!==qe()||s.hasPrecedingLineBreak())return 21===qe()?(Fe(ws.Cannot_start_a_function_call_in_a_type_annotation),void Je()):void(!t||vt()?bt()||(n?Fe(ws._0_expected,Vs(27)):ct(e)):n?Fe(ws._0_expected,Vs(27)):Fe(ws.Expected_for_property_initializer));Fe(ws.Decorators_must_precede_the_name_and_all_keywords_of_property_declarations)}(r,a,c);return ue(Tt(N.createPropertyDeclaration(n,r,i||o,a,c),e),t)}function to(e,t,n){const r=ft(42),i=Mt(),o=ft(58);return r||21===qe()||30===qe()?$i(e,t,n,r,i,o,void 0,ws.or_expected):eo(e,t,n,i,o)}function no(e,t,n,r,i){const o=Mt(),s=An(),a=Fn(0),c=Mn(59,!1),l=Bi(i),u=177===r?N.createGetAccessorDeclaration(n,o,a,c,l):N.createSetAccessorDeclaration(n,o,a,l);return u.typeParameters=s,TN(u)&&(u.type=c),ue(Tt(u,e),t)}function ro(){let e;if(60===qe())return!0;for(;su(qe());){if(e=qe(),cu(e))return!0;Je()}if(42===qe())return!0;if(Dt()&&(e=qe(),Je()),23===qe())return!0;if(void 0!==e){if(!Og(e)||153===e||139===e)return!0;switch(qe()){case 21:case 30:case 54:case 59:case 64:case 58:return!0;default:return vt()}}return!1}function io(e,t,n){ht(126);const r=function(){const e=Ie(),t=Oe();ge(!1),ve(!0);const n=fi(!1);return ge(e),ve(t),n}(),i=ue(Tt(N.createClassStaticBlockDeclaration(r),e),t);return i.modifiers=n,i}function oo(){if(Oe()&&135===qe()){const e=Ue(),t=Nt(ws.Expression_expected);Je();return ri(e,ei(e,t,!0))}return qr()}function so(){const e=Ue();if(!_t(60))return;const t=xe(32768,oo);return Tt(N.createDecorator(t),e)}function ao(e,t,n){const r=Ue(),i=qe();if(87===qe()&&t){if(!nt(Rt))return}else{if(n&&126===qe()&&tt(wo))return;if(e&&126===qe())return;if(!su(qe())||!nt(Lt))return}return Tt(F(i),r)}function co(e,t,n){const r=Ue();let i,o,s,a=!1,c=!1,l=!1;if(e&&60===qe())for(;o=so();)i=_e(i,o);for(;s=ao(a,t,n);)126===s.kind&&(a=!0),i=_e(i,s),c=!0;if(c&&e&&60===qe())for(;o=so();)i=_e(i,o),l=!0;if(l)for(;s=ao(a,t,n);)126===s.kind&&(a=!0),i=_e(i,s);return i&&St(i,r)}function lo(){let e;if(134===qe()){const t=Ue();Je();e=St([Tt(F(134),t)],t)}return e}function uo(){const e=Ue(),t=Be();if(27===qe())return Je(),ue(Tt(N.createSemicolonClassElement(),e),t);const n=co(!0,!0,!0);if(126===qe()&&tt(wo))return io(e,t,n);if(Ft(139))return no(e,t,n,177,0);if(Ft(153))return no(e,t,n,178,0);if(137===qe()||11===qe()){const r=Xi(e,t,n);if(r)return r}if(jn())return Un(e,t,n);if(ks(qe())||11===qe()||9===qe()||42===qe()||23===qe()){if($(n,Fi)){for(const e of n)e.flags|=33554432;return xe(33554432,(()=>to(e,t,n)))}return to(e,t,n)}if(n){const r=wt(80,!0,ws.Declaration_expected);return eo(e,t,n,r,void 0)}return Tn.fail("Should not have attempted to parse class member declaration.")}function _o(e,t,n){return po(e,t,n,263)}function po(e,t,n,r){const i=Oe();ot(86);const o=!rt()||119===qe()&&tt(Jt)?void 0:Et(rt()),s=An();$(n,XC)&&ve(!0);const a=fo();let c;ot(19)?(c=Xt(5,uo),ot(20)):c=sn(),ve(i);return ue(Tt(263===r?N.createClassDeclaration(n,o,s,a,c):N.createClassExpression(n,o,s,a,c),e),t)}function fo(){if(yo())return Xt(22,mo)}function mo(){const e=Ue(),t=qe();Tn.assert(96===t||119===t),Je();const n=rn(7,ho);return Tt(N.createHeritageClause(t,n),e)}function ho(){const e=Ue(),t=qr();if(233===t.kind)return t;const n=go();return Tt(N.createExpressionWithTypeArguments(t,n),e)}function go(){return 30===qe()?an(20,br,30,32):void 0}function yo(){return 96===qe()||119===qe()}function vo(){const e=Ue(),t=Be(),n=Mt(),r=Se(kr);return ue(Tt(N.createEnumMember(n,r),e),t)}function bo(){const e=Ue();let t;return ot(19)?(t=Xt(1,Oi),ot(20)):t=sn(),Tt(N.createModuleBlock(t),e)}function xo(e,t,n,r){const i=32&r,o=8&r?At():Nt(),s=_t(25)?xo(Ue(),!1,void 0,8|i):bo();return ue(Tt(N.createModuleDeclaration(n,o,s,r),e),t)}function So(e,t,n){let r,i,o=0;162===qe()?(r=Nt(),o|=2048):(r=gn(),r.text=kt(r.text)),19===qe()?i=bo():xt();return ue(Tt(N.createModuleDeclaration(n,r,i,o),e),t)}function To(){return 21===Je()}function wo(){return 19===Je()}function ko(){return 44===Je()}function Eo(e,t,n,r=!1){let i;return(e||42===qe()||19===qe())&&(i=function(e,t,n,r){let i;e&&!_t(28)||(r&&s.setSkipJsDocLeadingAsterisks(!0),i=42===qe()?function(){const e=Ue();ot(42),ot(130);const t=Nt();return Tt(N.createNamespaceImport(t),e)}():Do(275),r&&s.setSkipJsDocLeadingAsterisks(!1));return Tt(N.createImportClause(n,e,i),t)}(e,t,n,r),ot(161)),i}function Co(){const e=qe();if((118===e||132===e)&&!s.hasPrecedingLineBreak())return Ao(e)}function No(){const e=Ue(),t=ks(qe())?At():vn(11);ot(59);const n=Er(!0);return Tt(N.createImportAttribute(t,n),e)}function Ao(e,t){const n=Ue();t||ot(e);const r=s.getTokenStart();if(ot(19)){const t=s.hasPrecedingLineBreak(),i=rn(24,No,!0);if(!ot(20)){const e=Ne(g);e&&e.code===ws._0_expected.code&&xw(e,lS(l,d,r,1,ws.The_parser_expected_to_find_a_1_to_match_the_0_token_here,"{","}"))}return Tt(N.createImportAttributes(i,t,e),n)}{const t=St([],Ue(),void 0,!1);return Tt(N.createImportAttributes(t,!1,e),n)}}function Io(){if(11===qe()){const e=gn();return e.text=kt(e.text),e}return wr()}function Do(e){const t=Ue();return Tt(275===e?N.createNamedImports(an(23,Mo,19,20)):N.createNamedExports(an(23,Po,19,20)),t)}function Po(){const e=Be();return ue(Oo(281),e)}function Mo(){return Oo(276)}function Oo(e){const t=Ue();let n,r=Og(qe())&&!it(),i=s.getTokenStart(),o=s.getTokenEnd(),a=!1,c=!0,l=At();if("type"===l.escapedText)if(130===qe()){const e=At();if(130===qe()){const t=At();ks(qe())?(a=!0,n=e,l=u(),c=!1):(n=l,l=t,c=!1)}else ks(qe())?(n=l,c=!1,l=u()):(a=!0,l=e)}else ks(qe())&&(a=!0,l=u());c&&130===qe()&&(n=l,ot(130),l=u()),276===e&&r&&Le(i,o,ws.Identifier_expected);return Tt(276===e?N.createImportSpecifier(a,n,l):N.createExportSpecifier(a,n,l),t);function u(){return r=Og(qe())&&!it(),i=s.getTokenStart(),o=s.getTokenEnd(),At()}}let Fo;var Ro;let Lo;var jo;let zo;(Ro=Fo||(Fo={}))[Ro.SourceElements=0]="SourceElements",Ro[Ro.BlockStatements=1]="BlockStatements",Ro[Ro.SwitchClauses=2]="SwitchClauses",Ro[Ro.SwitchClauseStatements=3]="SwitchClauseStatements",Ro[Ro.TypeMembers=4]="TypeMembers",Ro[Ro.ClassMembers=5]="ClassMembers",Ro[Ro.EnumMembers=6]="EnumMembers",Ro[Ro.HeritageClauseElement=7]="HeritageClauseElement",Ro[Ro.VariableDeclarations=8]="VariableDeclarations",Ro[Ro.ObjectBindingElements=9]="ObjectBindingElements",Ro[Ro.ArrayBindingElements=10]="ArrayBindingElements",Ro[Ro.ArgumentExpressions=11]="ArgumentExpressions",Ro[Ro.ObjectLiteralMembers=12]="ObjectLiteralMembers",Ro[Ro.JsxAttributes=13]="JsxAttributes",Ro[Ro.JsxChildren=14]="JsxChildren",Ro[Ro.ArrayLiteralMembers=15]="ArrayLiteralMembers",Ro[Ro.Parameters=16]="Parameters",Ro[Ro.JSDocParameters=17]="JSDocParameters",Ro[Ro.RestProperties=18]="RestProperties",Ro[Ro.TypeParameters=19]="TypeParameters",Ro[Ro.TypeArguments=20]="TypeArguments",Ro[Ro.TupleElementTypes=21]="TupleElementTypes",Ro[Ro.HeritageClauses=22]="HeritageClauses",Ro[Ro.ImportOrExportSpecifiers=23]="ImportOrExportSpecifiers",Ro[Ro.ImportAttributes=24]="ImportAttributes",Ro[Ro.JSDocComment=25]="JSDocComment",Ro[Ro.Count=26]="Count",(jo=Lo||(Lo={}))[jo.False=0]="False",jo[jo.True=1]="True",jo[jo.Unknown=2]="Unknown",(e=>{function t(e){const t=Ue(),n=(e?_t:ot)(19),r=xe(16777216,Cn);e&&!n||ut(20);const i=N.createJSDocTypeExpression(r);return de(i),Tt(i,t)}function n(){const e=Ue(),t=_t(19),n=Ue();let r=ln(!1);for(;81===qe();)Ze(),We(),r=Tt(N.createJSDocMemberName(r,Nt()),n);t&&ut(20);const i=N.createJSDocNameReference(r);return de(i),Tt(i,e)}let r;var i;let o;var a;function c(e=0,r){const i=d,o=void 0===r?i.length:e+r;if(r=o-e,Tn.assert(e>=0),Tn.assert(e<=o),Tn.assert(o<=i.length),!EM(i,e))return;let a,c,u,_,p,f=[];const m=[],h=w;w|=1<<25;const g=s.scanRange(e+3,r-5,(function(){let t,n=1,r=e-(i.lastIndexOf("\n",e)+1)+4;function l(e){t||(t=r),f.push(e),r+=e.length}We();for(;Z(5););Z(4)&&(n=0,r=0);e:for(;;){switch(qe()){case 60:v(f),p||(p=Ue()),P(k(r)),n=0,t=void 0;break;case 4:f.push(s.getTokenText()),n=0,r=0;break;case 42:const i=s.getTokenText();1===n?(n=2,l(i)):(Tn.assert(0===n),n=1,r+=i.length);break;case 5:Tn.assert(2!==n,"whitespace shouldn't come from the scanner while saving top-level comment text");const o=s.getTokenText();void 0!==t&&r+o.length>t&&f.push(o.slice(t-r)),r+=o.length;break;case 1:break e;case 82:n=2,l(s.getTokenValue());break;case 19:n=2;const a=s.getTokenFullStart(),c=A(s.getTokenEnd()-1);if(c){_||y(f),m.push(Tt(N.createJSDocText(f.join("")),_??e,a)),m.push(c),f=[],_=s.getTokenEnd();break}default:n=2,l(s.getTokenText())}2===n?He(!1):We()}const d=f.join("").trimEnd();m.length&&d.length&&m.push(Tt(N.createJSDocText(d),_??e,p));m.length&&a&&Tn.assertIsDefined(p,"having parsed tags implies that the end of the comment span should be set");const h=a&&St(a,c,u);return Tt(N.createJSDocComment(m.length?St(m,e,p):d.length?d:void 0,h),e,o)}));return w=h,g;function y(e){for(;e.length&&("\n"===e[0]||"\r"===e[0]);)e.shift()}function v(e){for(;e.length;){const t=e[e.length-1].trimEnd();if(""!==t){if(t.length<e[e.length-1].length){e[e.length-1]=t;break}break}e.pop()}}function b(){for(;;){if(We(),1===qe())return!0;if(5!==qe()&&4!==qe())return!1}}function x(){if(5!==qe()&&4!==qe()||!tt(b))for(;5===qe()||4===qe();)We()}function S(){if((5===qe()||4===qe())&&tt(b))return"";let e=s.hasPrecedingLineBreak(),t=!1,n="";for(;e&&42===qe()||5===qe()||4===qe();)n+=s.getTokenText(),4===qe()?(e=!0,t=!0,n=""):42===qe()&&(e=!1),We();return t?n:""}function k(e){Tn.assert(60===qe());const r=s.getTokenStart();We();const i=X(void 0),o=S();let c;switch(i.escapedText){case"author":c=function(e,t,n,r){const i=Ue(),o=function(){const e=[];let t=!1,n=s.getToken();for(;1!==n&&4!==n;){if(30===n)t=!0;else{if(60===n&&!t)break;if(32===n&&t){e.push(s.getTokenText()),s.resetTokenState(s.getTokenEnd());break}}e.push(s.getTokenText()),n=We()}return N.createJSDocText(e.join(""))}();let a=s.getTokenFullStart();const c=E(e,a,n,r);c||(a=s.getTokenFullStart());const l="string"!=typeof c?St(te([Tt(o,i,a)],c),i):o.text+c;return Tt(N.createJSDocAuthorTag(t,l),e)}(r,i,e,o);break;case"implements":c=function(e,t,n,r){const i=U();return Tt(N.createJSDocImplementsTag(t,i,E(e,Ue(),n,r)),e)}(r,i,e,o);break;case"augments":case"extends":c=function(e,t,n,r){const i=U();return Tt(N.createJSDocAugmentsTag(t,i,E(e,Ue(),n,r)),e)}(r,i,e,o);break;case"class":case"constructor":c=B(r,N.createJSDocClassTag,i,e,o);break;case"public":c=B(r,N.createJSDocPublicTag,i,e,o);break;case"private":c=B(r,N.createJSDocPrivateTag,i,e,o);break;case"protected":c=B(r,N.createJSDocProtectedTag,i,e,o);break;case"readonly":c=B(r,N.createJSDocReadonlyTag,i,e,o);break;case"override":c=B(r,N.createJSDocOverrideTag,i,e,o);break;case"deprecated":le=!0,c=B(r,N.createJSDocDeprecatedTag,i,e,o);break;case"this":c=q(r,i,e,o);break;case"enum":c=function(e,n,r,i){const o=t(!0);return x(),Tt(N.createJSDocEnumTag(n,o,E(e,Ue(),r,i)),e)}(r,i,e,o);break;case"arg":case"argument":case"param":return L(r,i,2,e);case"return":case"returns":c=function(e,t,n,r){$(a,AD)&&Le(t.pos,s.getTokenStart(),ws._0_tag_already_specified,wc(t.escapedText));const i=O();return Tt(N.createJSDocReturnTag(t,i,E(e,Ue(),n,r)),e)}(r,i,e,o);break;case"template":c=Y(r,i,e,o);break;case"type":c=z(r,i,e,o);break;case"typedef":c=function(e,t,n,r){let i=O();S();const o=V();x();let s,a=C(n);if(!i||R(i.type)){let t,r,o,a=!1;for(;(t=nt((()=>W(n))))&&345!==t.kind;)if(a=!0,344===t.kind){if(r){const e=Fe(ws.A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags);e&&xw(e,lS(l,d,0,0,ws.The_tag_was_first_specified_here));break}r=t}else o=_e(o,t);if(a){const t=i&&188===i.type.kind,n=N.createJSDocTypeLiteral(o,t);i=r&&r.typeExpression&&!R(r.typeExpression.type)?r.typeExpression:Tt(n,e),s=i.end}}s=s||void 0!==a?Ue():(o??i??t).end,a||(a=E(e,s,n,r));const c=N.createJSDocTypedefTag(t,i,o,a);return Tt(c,e,s)}(r,i,e,o);break;case"callback":c=function(e,t,n,r){const i=V();x();let o=C(n);const s=K(e,n);o||(o=E(e,Ue(),n,r));const a=void 0!==o?Ue():s.end;return Tt(N.createJSDocCallbackTag(t,s,i,o),e,a)}(r,i,e,o);break;case"overload":c=function(e,t,n,r){x();let i=C(n);const o=K(e,n);i||(i=E(e,Ue(),n,r));const s=void 0!==i?Ue():o.end;return Tt(N.createJSDocOverloadTag(t,o,i),e,s)}(r,i,e,o);break;case"satisfies":c=function(e,n,r,i){const o=t(!1),s=void 0!==r&&void 0!==i?E(e,Ue(),r,i):void 0;return Tt(N.createJSDocSatisfiesTag(n,o,s),e)}(r,i,e,o);break;case"see":c=function(e,t,r,i){const o=23===qe()||tt((()=>60===We()&&ks(We())&&D(s.getTokenValue())))?void 0:n(),a=void 0!==r&&void 0!==i?E(e,Ue(),r,i):void 0;return Tt(N.createJSDocSeeTag(t,o,a),e)}(r,i,e,o);break;case"exception":case"throws":c=function(e,t,n,r){const i=O(),o=E(e,Ue(),n,r);return Tt(N.createJSDocThrowsTag(t,i,o),e)}(r,i,e,o);break;case"import":c=function(e,t,n,r){const i=s.getTokenFullStart();let o;it()&&(o=Nt());const a=Eo(o,i,!0,!0),c=Io(),l=Co(),u=void 0!==n&&void 0!==r?E(e,Ue(),n,r):void 0;return Tt(N.createJSDocImportTag(t,a,c,l,u),e)}(r,i,e,o);break;default:c=function(e,t,n,r){return Tt(N.createJSDocUnknownTag(t,E(e,Ue(),n,r)),e)}(r,i,e,o)}return c}function E(e,t,n,r){return r||(n+=t-e),C(n,r.slice(n))}function C(e,t){const n=Ue();let r=[];const i=[];let o,a,c=0;function l(t){a||(a=e),r.push(t),e+=t.length}void 0!==t&&(""!==t&&l(t),c=1);let u=qe();e:for(;;){switch(u){case 4:c=0,r.push(s.getTokenText()),e=0;break;case 60:s.resetTokenState(s.getTokenEnd()-1);break e;case 1:break e;case 5:Tn.assert(2!==c&&3!==c,"whitespace shouldn't come from the scanner while saving comment text");const t=s.getTokenText();void 0!==a&&e+t.length>a&&(r.push(t.slice(a-e)),c=2),e+=t.length;break;case 19:c=2;const u=s.getTokenFullStart(),d=A(s.getTokenEnd()-1);d?(i.push(Tt(N.createJSDocText(r.join("")),o??n,u)),i.push(d),r=[],o=s.getTokenEnd()):l(s.getTokenText());break;case 62:c=3===c?2:3,l(s.getTokenText());break;case 82:3!==c&&(c=2),l(s.getTokenValue());break;case 42:if(0===c){c=1,e+=1;break}default:3!==c&&(c=2),l(s.getTokenText())}u=2===c||3===c?He(3===c):We()}y(r);const d=r.join("").trimEnd();return i.length?(d.length&&i.push(Tt(N.createJSDocText(d),o??n)),St(i,n,s.getTokenEnd())):d.length?d:void 0}function A(e){const t=nt(I);if(!t)return;We(),x();const n=function(){if(ks(qe())){const e=Ue();let t=At();for(;_t(25);)t=Tt(N.createQualifiedName(t,81===qe()?wt(80,!1):At()),e);for(;81===qe();)Ze(),We(),t=Tt(N.createJSDocMemberName(t,Nt()),e);return t}return}(),r=[];for(;20!==qe()&&4!==qe()&&1!==qe();)r.push(s.getTokenText()),We();return Tt(("link"===t?N.createJSDocLink:"linkcode"===t?N.createJSDocLinkCode:N.createJSDocLinkPlain)(n,r.join("")),e,s.getTokenEnd())}function I(){if(S(),19===qe()&&60===We()&&ks(We())){const e=s.getTokenValue();if(D(e))return e}}function D(e){return"link"===e||"linkcode"===e||"linkplain"===e}function P(e){e&&(a?a.push(e):(a=[e],c=e.pos),u=e.end)}function O(){return S(),19===qe()?t():void 0}function F(){const e=Z(23);e&&x();const t=Z(62),n=function(){let e=X();_t(23)&&ot(24);for(;_t(25);){const t=X();_t(23)&&ot(24),e=un(e,t)}return e}();var r;return t&&(mt(r=62)||(Tn.assert(Rg(r)),wt(r,!1,ws._0_expected,Vs(r)))),e&&(x(),ft(64)&&wr(),ot(24)),{name:n,isBracketed:e}}function R(e){switch(e.kind){case 151:return!0;case 188:return R(e.elementType);default:return NN(e)&&YC(e.typeName)&&"Object"===e.typeName.escapedText&&!e.typeArguments}}function L(e,t,n,r){let i=O(),o=!i;S();const{name:s,isBracketed:a}=F(),c=S();o&&!tt(I)&&(i=O());const l=E(e,Ue(),r,c),u=function(e,t,n,r){if(e&&R(e.type)){const i=Ue();let o,s;for(;o=nt((()=>H(n,r,t)));)341===o.kind||348===o.kind?s=_e(s,o):345===o.kind&&je(o.tagName,ws.A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag);if(s){const t=Tt(N.createJSDocTypeLiteral(s,188===e.type.kind),i);return Tt(N.createJSDocTypeExpression(t),i)}}}(i,s,n,r);u&&(i=u,o=!0);return Tt(1===n?N.createJSDocPropertyTag(t,s,a,i,o,l):N.createJSDocParameterTag(t,s,a,i,o,l),e)}function z(e,n,r,i){$(a,DD)&&Le(n.pos,s.getTokenStart(),ws._0_tag_already_specified,wc(n.escapedText));const o=t(!0),c=void 0!==r&&void 0!==i?E(e,Ue(),r,i):void 0;return Tt(N.createJSDocTypeTag(n,o,c),e)}function U(){const e=_t(19),t=Ue(),n=function(){const e=Ue();let t=X();for(;_t(25);){const n=X();t=Tt(j(t,n),e)}return t}();s.setSkipJsDocLeadingAsterisks(!0);const r=go();s.setSkipJsDocLeadingAsterisks(!1);const i=Tt(N.createExpressionWithTypeArguments(n,r),t);return e&&ot(20),i}function B(e,t,n,r,i){return Tt(t(n,E(e,Ue(),r,i)),e)}function q(e,n,r,i){const o=t(!0);return x(),Tt(N.createJSDocThisTag(n,o,E(e,Ue(),r,i)),e)}function V(e){const t=s.getTokenStart();if(!ks(qe()))return;const n=X();if(_t(25)){const r=V(!0);return Tt(N.createModuleDeclaration(void 0,n,r,e?8:void 0),t)}return e&&(n.flags|=4096),n}function K(e,t){const n=function(e){const t=Ue();let n,r;for(;n=nt((()=>H(4,e)));){if(345===n.kind){je(n.tagName,ws.A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag);break}r=_e(r,n)}return St(r||[],t)}(t),r=nt((()=>{if(Z(60)){const e=k(t);if(e&&342===e.kind)return e}}));return Tt(N.createJSDocSignature(void 0,n,r),e)}function J(e,t){for(;!YC(e)||!YC(t);){if(YC(e)||YC(t)||e.right.escapedText!==t.right.escapedText)return!1;e=e.left,t=t.left}return e.escapedText===t.escapedText}function W(e){return H(1,e)}function H(e,t,n){let r=!0,i=!1;for(;;)switch(We()){case 60:if(r){const r=G(e,t);return!(r&&(341===r.kind||348===r.kind)&&n&&(YC(r.name)||!J(n,r.name.left)))&&r}i=!1;break;case 4:r=!0,i=!1;break;case 42:i&&(r=!1),i=!0;break;case 80:r=!1;break;case 1:return!1}}function G(e,t){Tn.assert(60===qe());const n=s.getTokenFullStart();We();const r=X(),i=S();let o;switch(r.escapedText){case"type":return 1===e&&z(n,r);case"prop":case"property":o=1;break;case"arg":case"argument":case"param":o=6;break;case"template":return Y(n,r,t,i);case"this":return q(n,r,t,i);default:return!1}return!!(e&o)&&L(n,r,e,t)}function Q(){const e=Ue(),t=Z(23);t&&x();const n=co(!1,!0),r=X(ws.Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces);let i;if(t&&(x(),ot(64),i=xe(16777216,Cn),ot(24)),!F_(r))return Tt(N.createTypeParameterDeclaration(n,r,void 0,i),e)}function Y(e,n,r,i){const o=19===qe()?t():void 0,s=function(){const e=Ue(),t=[];do{x();const e=Q();void 0!==e&&t.push(e),S()}while(Z(28));return St(t,e)}();return Tt(N.createJSDocTemplateTag(n,o,s,E(e,Ue(),r,i)),e)}function Z(e){return qe()===e&&(We(),!0)}function X(e){if(!ks(qe()))return wt(80,!e,e||ws.Identifier_expected);T++;const t=s.getTokenStart(),n=s.getTokenEnd(),r=qe(),i=kt(s.getTokenValue()),o=Tt(M(i,r),t,n);return We(),o}}e.parseJSDocTypeExpressionForTests=function(e,n,r){ae("file.js",e,99,void 0,1,0),s.setText(e,n,r),b=s.scan();const i=t(),o=pe("file.js",99,1,!1,[],F(1),0,pt),a=_S(g,o);return y&&(o.jsDocDiagnostics=_S(y,o)),ce(),i?{jsDocTypeExpression:i,diagnostics:a}:void 0},e.parseJSDocTypeExpression=t,e.parseJSDocNameReference=n,e.parseIsolatedJSDocComment=function(e,t,n){ae("",e,99,void 0,1,0);const r=xe(16777216,(()=>c(t,n))),i=_S(g,{languageVariant:0,text:e});return ce(),r?{jsDoc:r,diagnostics:i}:void 0},e.parseJSDocComment=function(e,t,n){const r=b,i=g.length,o=oe,s=xe(16777216,(()=>c(t,n)));return Bw(s,e),524288&C&&(y||(y=[]),me(y,g,i)),b=r,g.length=i,oe=o,s},(i=r||(r={}))[i.BeginningOfLine=0]="BeginningOfLine",i[i.SawAsterisk=1]="SawAsterisk",i[i.SavingComments=2]="SavingComments",i[i.SavingBackticks=3]="SavingBackticks",(a=o||(o={}))[a.Property=1]="Property",a[a.Parameter=2]="Parameter",a[a.CallbackParameter=4]="CallbackParameter"})(zo=e.JSDocParser||(e.JSDocParser={}))})(IM||(IM={}));var oO=new WeakSet;var sO,aO=new WeakSet;function cO(e){aO.add(e)}function lO(e){return void 0!==uO(e)}function uO(e){const t=Wo(e,JT,!1);if(t)return t;if(Lo(e,".ts")){const t=Ko(e).lastIndexOf(".d.");if(t>=0)return e.substring(t)}}function dO(e,t){const n=[];for(const r of wa(t,0)||_){gO(n,r,t.substring(r.pos,r.end))}e.pragmas=new Map;for(const r of n)if(e.pragmas.has(r.name)){const t=e.pragmas.get(r.name);t instanceof Array?t.push(r.args):e.pragmas.set(r.name,[t,r.args])}else e.pragmas.set(r.name,r.args)}function _O(e,t){e.checkJsDirective=void 0,e.referencedFiles=[],e.typeReferenceDirectives=[],e.libReferenceDirectives=[],e.amdDependencies=[],e.hasNoDefaultLib=!1,e.pragmas.forEach(((n,r)=>{switch(r){case"reference":{const r=e.referencedFiles,i=e.typeReferenceDirectives,o=e.libReferenceDirectives;h(ct(n),(n=>{const{types:s,lib:a,path:c,"resolution-mode":l,preserve:u}=n.arguments,d="true"===u||void 0;if("true"===n.arguments["no-default-lib"])e.hasNoDefaultLib=!0;else if(s){const e=function(e,t,n,r){if(e)return"import"===e?99:"require"===e?1:void r(t,n-t,ws.resolution_mode_should_be_either_require_or_import)}(l,s.pos,s.end,t);i.push({pos:s.pos,end:s.end,fileName:s.value,...e?{resolutionMode:e}:{},...d?{preserve:d}:{}})}else a?o.push({pos:a.pos,end:a.end,fileName:a.value,...d?{preserve:d}:{}}):c?r.push({pos:c.pos,end:c.end,fileName:c.value,...d?{preserve:d}:{}}):t(n.range.pos,n.range.end-n.range.pos,ws.Invalid_reference_directive_syntax)}));break}case"amd-dependency":e.amdDependencies=R(ct(n),(e=>({name:e.arguments.name,path:e.arguments.path})));break;case"amd-module":if(n instanceof Array)for(const r of n)e.moduleName&&t(r.range.pos,r.range.end-r.range.pos,ws.An_AMD_module_cannot_have_multiple_name_assignments),e.moduleName=r.arguments.name;else e.moduleName=n.arguments.name;break;case"ts-nocheck":case"ts-check":h(ct(n),(t=>{(!e.checkJsDirective||t.range.pos>e.checkJsDirective.pos)&&(e.checkJsDirective={enabled:"ts-check"===r,end:t.range.end,pos:t.range.pos})}));break;case"jsx":case"jsxfrag":case"jsximportsource":case"jsxruntime":return;default:Tn.fail("Unhandled pragma kind")}}))}(e=>{function t(e,t,r,o,s,a,c){return void(r?u(e):l(e));function l(e){let r="";if(c&&n(e)&&(r=s.substring(e.pos,e.end)),JD(e,t),jw(e,e.pos+o,e.end+o),c&&n(e)&&Tn.assert(r===a.substring(e.pos,e.end)),GM(e,l,u),zd(e))for(const t of e.jsDoc)l(t);i(e,c)}function u(e){jw(e,e.pos+o,e.end+o);for(const t of e)l(t)}}function n(e){switch(e.kind){case 11:case 9:case 80:return!0}return!1}function r(e,t,n,r,i){Tn.assert(e.end>=t,"Adjusting an element that was entirely before the change range"),Tn.assert(e.pos<=n,"Adjusting an element that was entirely after the change range"),Tn.assert(e.pos<=e.end);const o=Math.min(e.pos,r),s=e.end>=n?e.end+i:Math.min(e.end,r);if(Tn.assert(o<=s),e.parent){const t=e.parent;Tn.assertGreaterThanOrEqual(o,t.pos),Tn.assertLessThanOrEqual(s,t.end)}jw(e,o,s)}function i(e,t){if(t){let t=e.pos;const n=e=>{Tn.assert(e.pos>=t),t=e.end};if(zd(e))for(const r of e.jsDoc)n(r);GM(e,n),Tn.assert(t<=e.end)}}function o(e,t){let n,r=e;if(GM(e,(function e(i){if(F_(i))return;if(!(i.pos<=t))return Tn.assert(i.pos>t),!0;if(i.pos>=r.pos&&(r=i),t<i.end)return GM(i,e),!0;Tn.assert(i.end<=t),n=i})),n){const e=function(e){for(;;){const t=Lx(e);if(!t)return e;e=t}}(n);e.pos>r.pos&&(r=e)}return r}function s(e,t,n,r){const i=e.text;if(n&&(Tn.assert(i.length-n.span.length+n.newLength===t.length),r||Tn.shouldAssert(3))){const e=i.substr(0,n.span.start),r=t.substr(0,n.span.start);Tn.assert(e===r);const o=i.substring(qa(n.span),i.length),s=t.substring(qa(nc(n)),t.length);Tn.assert(o===s)}}function a(e){let t=e.statements,n=0;Tn.assert(n<t.length);let r=t[n],i=-1;return{currentNode:o=>(o!==i&&(r&&r.end===o&&n<t.length-1&&(n++,r=t[n]),r&&r.pos===o||function(i){return t=void 0,n=-1,r=void 0,void GM(e,o,s);function o(e){return i>=e.pos&&i<e.end&&(GM(e,o,s),!0)}function s(e){if(i>=e.pos&&i<e.end)for(let a=0;a<e.length;a++){const c=e[a];if(c){if(c.pos===i)return t=e,n=a,r=c,!0;if(c.pos<i&&i<c.end)return GM(c,o,s),!0}}return!1}}(o)),i=o,Tn.assert(!r||r.pos===o),r)}}let c;var l;e.updateSourceFile=function(e,n,c,l){if(s(e,n,c,l=l||Tn.shouldAssert(2)),rc(c))return e;if(0===e.statements.length)return IM.parseSourceFile(e.fileName,n,e.languageVersion,void 0,!0,e.scriptKind,e.setExternalModuleIndicator,e.jsDocParsingMode);!function(e){oO.has(e)&&Tn.fail("Source file has already been incrementally parsed"),oO.add(e)}(e),IM.fixupParentReferences(e);const u=e.text,d=a(e),_=function(e,t){const n=1;let r=t.span.start;for(let a=0;r>0&&a<=n;a++){const t=o(e,r);Tn.assert(t.pos<=r);const n=t.pos;r=Math.max(0,n-1)}const i=tc(r,qa(t.span)),s=t.newLength+(t.span.start-r);return ic(i,s)}(e,c);s(e,n,_,l),Tn.assert(_.span.start<=c.span.start),Tn.assert(qa(_.span)===qa(c.span)),Tn.assert(qa(nc(_))===qa(nc(c)));const p=nc(_).length-_.span.length;!function(e,n,o,s,a,c,l,u){return void d(e);function d(p){if(Tn.assert(p.pos<=p.end),p.pos>o)return void t(p,e,!1,a,c,l,u);const f=p.end;if(f>=n){if(cO(p),JD(p,e),r(p,n,o,s,a),GM(p,d,_),zd(p))for(const e of p.jsDoc)d(e);i(p,u)}else Tn.assert(f<n)}function _(i){if(Tn.assert(i.pos<=i.end),i.pos>o)return void t(i,e,!0,a,c,l,u);const _=i.end;if(_>=n){cO(i),r(i,n,o,s,a);for(const e of i)d(e)}else Tn.assert(_<n)}}(e,_.span.start,qa(_.span),qa(nc(_)),p,u,n,l);const f=IM.parseSourceFile(e.fileName,n,e.languageVersion,d,!0,e.scriptKind,e.setExternalModuleIndicator,e.jsDocParsingMode);return f.commentDirectives=function(e,t,n,r,i,o,s,a){if(!e)return t;let c,l=!1;for(const d of e){const{range:e,type:t}=d;if(e.end<n)c=_e(c,d);else if(e.pos>r){u();const n={range:{pos:e.pos+i,end:e.end+i},type:t};c=_e(c,n),a&&Tn.assert(o.substring(e.pos,e.end)===s.substring(n.range.pos,n.range.end))}}return u(),c;function u(){l||(l=!0,c?t&&c.push(...t):c=t)}}(e.commentDirectives,f.commentDirectives,_.span.start,qa(_.span),p,u,n,l),f.impliedNodeFormat=e.impliedNodeFormat,WD(e,f),f},e.createSyntaxCursor=a,(l=c||(c={}))[l.Value=-1]="Value"})(sO||(sO={}));var pO=new Map;function fO(e){if(pO.has(e))return pO.get(e);const t=new RegExp(`(\\s${e}\\s*=\\s*)(?:(?:'([^']*)')|(?:"([^"]*)"))`,"im");return pO.set(e,t),t}var mO=/^\/\/\/\s*<(\S+)\s.*?\/>/im,hO=/^\/\/\/?\s*@([^\s:]+)(.*)\s*$/im;function gO(e,t,n){const r=2===t.kind&&mO.exec(n);if(r){const i=r[1].toLowerCase(),o=Gi[i];if(!(o&&1&o.kind))return;if(o.args){const r={};for(const e of o.args){const i=fO(e.name).exec(n);if(!i&&!e.optional)return;if(i){const n=i[2]||i[3];if(e.captureSpan){const o=t.pos+i.index+i[1].length+1;r[e.name]={value:n,pos:o,end:o+n.length}}else r[e.name]=n}}e.push({name:i,args:{arguments:r,range:t}})}else e.push({name:i,args:{arguments:{},range:t}});return}const i=2===t.kind&&hO.exec(n);if(i)return yO(e,t,2,i);if(3===t.kind){const r=/@(\S+)(\s+.*)?$/gim;let i;for(;i=r.exec(n);)yO(e,t,4,i)}}function yO(e,t,n,r){if(!r)return;const i=r[1].toLowerCase(),o=Gi[i];if(!(o&&o.kind&n))return;const s=function(e,t){if(!t)return{};if(!e.args)return{};const n=t.trim().split(/\s+/),r={};for(let i=0;i<e.args.length;i++){const t=e.args[i];if(!n[i]&&!t.optional)return"fail";if(t.captureSpan)return Tn.fail("Capture spans not yet implemented for non-xml pragmas");r[t.name]=n[i]}return r}(o,r[2]);"fail"!==s&&e.push({name:i,args:{arguments:s,range:t}})}function vO(e,t){return e.kind===t.kind&&(80===e.kind?e.escapedText===t.escapedText:110===e.kind||(295===e.kind?e.namespace.escapedText===t.namespace.escapedText&&e.name.escapedText===t.name.escapedText:e.name.escapedText===t.name.escapedText&&vO(e.expression,t.expression)))}var bO={name:"compileOnSave",type:"boolean",defaultValueDescription:!1},xO=new Map(Object.entries({preserve:1,"react-native":3,react:2,"react-jsx":4,"react-jsxdev":5})),SO=new Map(L(xO.entries(),(([e,t])=>[""+t,e]))),TO=[["es5","lib.es5.d.ts"],["es6","lib.es2015.d.ts"],["es2015","lib.es2015.d.ts"],["es7","lib.es2016.d.ts"],["es2016","lib.es2016.d.ts"],["es2017","lib.es2017.d.ts"],["es2018","lib.es2018.d.ts"],["es2019","lib.es2019.d.ts"],["es2020","lib.es2020.d.ts"],["es2021","lib.es2021.d.ts"],["es2022","lib.es2022.d.ts"],["es2023","lib.es2023.d.ts"],["esnext","lib.esnext.d.ts"],["dom","lib.dom.d.ts"],["dom.iterable","lib.dom.iterable.d.ts"],["dom.asynciterable","lib.dom.asynciterable.d.ts"],["webworker","lib.webworker.d.ts"],["webworker.importscripts","lib.webworker.importscripts.d.ts"],["webworker.iterable","lib.webworker.iterable.d.ts"],["webworker.asynciterable","lib.webworker.asynciterable.d.ts"],["scripthost","lib.scripthost.d.ts"],["es2015.core","lib.es2015.core.d.ts"],["es2015.collection","lib.es2015.collection.d.ts"],["es2015.generator","lib.es2015.generator.d.ts"],["es2015.iterable","lib.es2015.iterable.d.ts"],["es2015.promise","lib.es2015.promise.d.ts"],["es2015.proxy","lib.es2015.proxy.d.ts"],["es2015.reflect","lib.es2015.reflect.d.ts"],["es2015.symbol","lib.es2015.symbol.d.ts"],["es2015.symbol.wellknown","lib.es2015.symbol.wellknown.d.ts"],["es2016.array.include","lib.es2016.array.include.d.ts"],["es2016.intl","lib.es2016.intl.d.ts"],["es2017.date","lib.es2017.date.d.ts"],["es2017.object","lib.es2017.object.d.ts"],["es2017.sharedmemory","lib.es2017.sharedmemory.d.ts"],["es2017.string","lib.es2017.string.d.ts"],["es2017.intl","lib.es2017.intl.d.ts"],["es2017.typedarrays","lib.es2017.typedarrays.d.ts"],["es2018.asyncgenerator","lib.es2018.asyncgenerator.d.ts"],["es2018.asynciterable","lib.es2018.asynciterable.d.ts"],["es2018.intl","lib.es2018.intl.d.ts"],["es2018.promise","lib.es2018.promise.d.ts"],["es2018.regexp","lib.es2018.regexp.d.ts"],["es2019.array","lib.es2019.array.d.ts"],["es2019.object","lib.es2019.object.d.ts"],["es2019.string","lib.es2019.string.d.ts"],["es2019.symbol","lib.es2019.symbol.d.ts"],["es2019.intl","lib.es2019.intl.d.ts"],["es2020.bigint","lib.es2020.bigint.d.ts"],["es2020.date","lib.es2020.date.d.ts"],["es2020.promise","lib.es2020.promise.d.ts"],["es2020.sharedmemory","lib.es2020.sharedmemory.d.ts"],["es2020.string","lib.es2020.string.d.ts"],["es2020.symbol.wellknown","lib.es2020.symbol.wellknown.d.ts"],["es2020.intl","lib.es2020.intl.d.ts"],["es2020.number","lib.es2020.number.d.ts"],["es2021.promise","lib.es2021.promise.d.ts"],["es2021.string","lib.es2021.string.d.ts"],["es2021.weakref","lib.es2021.weakref.d.ts"],["es2021.intl","lib.es2021.intl.d.ts"],["es2022.array","lib.es2022.array.d.ts"],["es2022.error","lib.es2022.error.d.ts"],["es2022.intl","lib.es2022.intl.d.ts"],["es2022.object","lib.es2022.object.d.ts"],["es2022.sharedmemory","lib.es2022.sharedmemory.d.ts"],["es2022.string","lib.es2022.string.d.ts"],["es2022.regexp","lib.es2022.regexp.d.ts"],["es2023.array","lib.es2023.array.d.ts"],["es2023.collection","lib.es2023.collection.d.ts"],["es2023.intl","lib.es2023.intl.d.ts"],["esnext.array","lib.es2023.array.d.ts"],["esnext.collection","lib.esnext.collection.d.ts"],["esnext.symbol","lib.es2019.symbol.d.ts"],["esnext.asynciterable","lib.es2018.asynciterable.d.ts"],["esnext.intl","lib.esnext.intl.d.ts"],["esnext.disposable","lib.esnext.disposable.d.ts"],["esnext.bigint","lib.es2020.bigint.d.ts"],["esnext.string","lib.es2022.string.d.ts"],["esnext.promise","lib.esnext.promise.d.ts"],["esnext.weakref","lib.es2021.weakref.d.ts"],["esnext.decorators","lib.esnext.decorators.d.ts"],["esnext.object","lib.esnext.object.d.ts"],["esnext.array","lib.esnext.array.d.ts"],["esnext.regexp","lib.esnext.regexp.d.ts"],["esnext.string","lib.esnext.string.d.ts"],["decorators","lib.decorators.d.ts"],["decorators.legacy","lib.decorators.legacy.d.ts"]],wO=TO.map((e=>e[0])),kO=new Map(TO),EO=[{name:"watchFile",type:new Map(Object.entries({fixedpollinginterval:0,prioritypollinginterval:1,dynamicprioritypolling:2,fixedchunksizepolling:3,usefsevents:4,usefseventsonparentdirectory:5})),category:ws.Watch_and_Build_Modes,description:ws.Specify_how_the_TypeScript_watch_mode_works,defaultValueDescription:4},{name:"watchDirectory",type:new Map(Object.entries({usefsevents:0,fixedpollinginterval:1,dynamicprioritypolling:2,fixedchunksizepolling:3})),category:ws.Watch_and_Build_Modes,description:ws.Specify_how_directories_are_watched_on_systems_that_lack_recursive_file_watching_functionality,defaultValueDescription:0},{name:"fallbackPolling",type:new Map(Object.entries({fixedinterval:0,priorityinterval:1,dynamicpriority:2,fixedchunksize:3})),category:ws.Watch_and_Build_Modes,description:ws.Specify_what_approach_the_watcher_should_use_if_the_system_runs_out_of_native_file_watchers,defaultValueDescription:1},{name:"synchronousWatchDirectory",type:"boolean",category:ws.Watch_and_Build_Modes,description:ws.Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_support_recursive_watching_natively,defaultValueDescription:!1},{name:"excludeDirectories",type:"list",element:{name:"excludeDirectory",type:"string",isFilePath:!0,extraValidation:zR},allowConfigDirTemplateSubstitution:!0,category:ws.Watch_and_Build_Modes,description:ws.Remove_a_list_of_directories_from_the_watch_process},{name:"excludeFiles",type:"list",element:{name:"excludeFile",type:"string",isFilePath:!0,extraValidation:zR},allowConfigDirTemplateSubstitution:!0,category:ws.Watch_and_Build_Modes,description:ws.Remove_a_list_of_files_from_the_watch_mode_s_processing}],CO=[{name:"help",shortName:"h",type:"boolean",showInSimplifiedHelpView:!0,isCommandLineOnly:!0,category:ws.Command_line_Options,description:ws.Print_this_message,defaultValueDescription:!1},{name:"help",shortName:"?",type:"boolean",isCommandLineOnly:!0,category:ws.Command_line_Options,defaultValueDescription:!1},{name:"watch",shortName:"w",type:"boolean",showInSimplifiedHelpView:!0,isCommandLineOnly:!0,category:ws.Command_line_Options,description:ws.Watch_input_files,defaultValueDescription:!1},{name:"preserveWatchOutput",type:"boolean",showInSimplifiedHelpView:!1,category:ws.Output_Formatting,description:ws.Disable_wiping_the_console_in_watch_mode,defaultValueDescription:!1},{name:"listFiles",type:"boolean",category:ws.Compiler_Diagnostics,description:ws.Print_all_of_the_files_read_during_the_compilation,defaultValueDescription:!1},{name:"explainFiles",type:"boolean",category:ws.Compiler_Diagnostics,description:ws.Print_files_read_during_the_compilation_including_why_it_was_included,defaultValueDescription:!1},{name:"listEmittedFiles",type:"boolean",category:ws.Compiler_Diagnostics,description:ws.Print_the_names_of_emitted_files_after_a_compilation,defaultValueDescription:!1},{name:"pretty",type:"boolean",showInSimplifiedHelpView:!0,category:ws.Output_Formatting,description:ws.Enable_color_and_formatting_in_TypeScript_s_output_to_make_compiler_errors_easier_to_read,defaultValueDescription:!0},{name:"traceResolution",type:"boolean",category:ws.Compiler_Diagnostics,description:ws.Log_paths_used_during_the_moduleResolution_process,defaultValueDescription:!1},{name:"diagnostics",type:"boolean",category:ws.Compiler_Diagnostics,description:ws.Output_compiler_performance_information_after_building,defaultValueDescription:!1},{name:"extendedDiagnostics",type:"boolean",category:ws.Compiler_Diagnostics,description:ws.Output_more_detailed_compiler_performance_information_after_building,defaultValueDescription:!1},{name:"generateCpuProfile",type:"string",isFilePath:!0,paramType:ws.FILE_OR_DIRECTORY,category:ws.Compiler_Diagnostics,description:ws.Emit_a_v8_CPU_profile_of_the_compiler_run_for_debugging,defaultValueDescription:"profile.cpuprofile"},{name:"generateTrace",type:"string",isFilePath:!0,isCommandLineOnly:!0,paramType:ws.DIRECTORY,category:ws.Compiler_Diagnostics,description:ws.Generates_an_event_trace_and_a_list_of_types},{name:"incremental",shortName:"i",type:"boolean",category:ws.Projects,description:ws.Save_tsbuildinfo_files_to_allow_for_incremental_compilation_of_projects,transpileOptionValue:void 0,defaultValueDescription:ws.false_unless_composite_is_set},{name:"declaration",shortName:"d",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:ws.Emit,transpileOptionValue:void 0,description:ws.Generate_d_ts_files_from_TypeScript_and_JavaScript_files_in_your_project,defaultValueDescription:ws.false_unless_composite_is_set},{name:"declarationMap",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:ws.Emit,defaultValueDescription:!1,description:ws.Create_sourcemaps_for_d_ts_files},{name:"emitDeclarationOnly",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:ws.Emit,description:ws.Only_output_d_ts_files_and_not_JavaScript_files,transpileOptionValue:void 0,defaultValueDescription:!1},{name:"sourceMap",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:ws.Emit,defaultValueDescription:!1,description:ws.Create_source_map_files_for_emitted_JavaScript_files},{name:"inlineSourceMap",type:"boolean",affectsBuildInfo:!0,category:ws.Emit,description:ws.Include_sourcemap_files_inside_the_emitted_JavaScript,defaultValueDescription:!1},{name:"assumeChangesOnlyAffectDirectDependencies",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,category:ws.Watch_and_Build_Modes,description:ws.Have_recompiles_in_projects_that_use_incremental_and_watch_mode_assume_that_changes_within_a_file_will_only_affect_files_directly_depending_on_it,defaultValueDescription:!1},{name:"locale",type:"string",category:ws.Command_line_Options,isCommandLineOnly:!0,description:ws.Set_the_language_of_the_messaging_from_TypeScript_This_does_not_affect_emit,defaultValueDescription:ws.Platform_specific}],NO={name:"target",shortName:"t",type:new Map(Object.entries({es3:0,es5:1,es6:2,es2015:2,es2016:3,es2017:4,es2018:5,es2019:6,es2020:7,es2021:8,es2022:9,es2023:10,esnext:99})),affectsSourceFile:!0,affectsModuleResolution:!0,affectsEmit:!0,affectsBuildInfo:!0,deprecatedKeys:new Set(["es3"]),paramType:ws.VERSION,showInSimplifiedHelpView:!0,category:ws.Language_and_Environment,description:ws.Set_the_JavaScript_language_version_for_emitted_JavaScript_and_include_compatible_library_declarations,defaultValueDescription:1},AO={name:"module",shortName:"m",type:new Map(Object.entries({none:0,commonjs:1,amd:2,system:4,umd:3,es6:5,es2015:5,es2020:6,es2022:7,esnext:99,node16:100,nodenext:199,preserve:200})),affectsSourceFile:!0,affectsModuleResolution:!0,affectsEmit:!0,affectsBuildInfo:!0,paramType:ws.KIND,showInSimplifiedHelpView:!0,category:ws.Modules,description:ws.Specify_what_module_code_is_generated,defaultValueDescription:void 0},IO=[{name:"all",type:"boolean",showInSimplifiedHelpView:!0,category:ws.Command_line_Options,description:ws.Show_all_compiler_options,defaultValueDescription:!1},{name:"version",shortName:"v",type:"boolean",showInSimplifiedHelpView:!0,category:ws.Command_line_Options,description:ws.Print_the_compiler_s_version,defaultValueDescription:!1},{name:"init",type:"boolean",showInSimplifiedHelpView:!0,category:ws.Command_line_Options,description:ws.Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file,defaultValueDescription:!1},{name:"project",shortName:"p",type:"string",isFilePath:!0,showInSimplifiedHelpView:!0,category:ws.Command_line_Options,paramType:ws.FILE_OR_DIRECTORY,description:ws.Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json},{name:"build",type:"boolean",shortName:"b",showInSimplifiedHelpView:!0,category:ws.Command_line_Options,description:ws.Build_one_or_more_projects_and_their_dependencies_if_out_of_date,defaultValueDescription:!1},{name:"showConfig",type:"boolean",showInSimplifiedHelpView:!0,category:ws.Command_line_Options,isCommandLineOnly:!0,description:ws.Print_the_final_configuration_instead_of_building,defaultValueDescription:!1},{name:"listFilesOnly",type:"boolean",category:ws.Command_line_Options,isCommandLineOnly:!0,description:ws.Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing,defaultValueDescription:!1},NO,AO,{name:"lib",type:"list",element:{name:"lib",type:kO,defaultValueDescription:void 0},affectsProgramStructure:!0,showInSimplifiedHelpView:!0,category:ws.Language_and_Environment,description:ws.Specify_a_set_of_bundled_library_declaration_files_that_describe_the_target_runtime_environment,transpileOptionValue:void 0},{name:"allowJs",type:"boolean",allowJsFlag:!0,affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:ws.JavaScript_Support,description:ws.Allow_JavaScript_files_to_be_a_part_of_your_program_Use_the_checkJS_option_to_get_errors_from_these_files,defaultValueDescription:!1},{name:"checkJs",type:"boolean",affectsModuleResolution:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:ws.JavaScript_Support,description:ws.Enable_error_reporting_in_type_checked_JavaScript_files,defaultValueDescription:!1},{name:"jsx",type:xO,affectsSourceFile:!0,affectsEmit:!0,affectsBuildInfo:!0,affectsModuleResolution:!0,affectsSemanticDiagnostics:!0,paramType:ws.KIND,showInSimplifiedHelpView:!0,category:ws.Language_and_Environment,description:ws.Specify_what_JSX_code_is_generated,defaultValueDescription:void 0},{name:"outFile",type:"string",affectsEmit:!0,affectsBuildInfo:!0,affectsDeclarationPath:!0,isFilePath:!0,paramType:ws.FILE,showInSimplifiedHelpView:!0,category:ws.Emit,description:ws.Specify_a_file_that_bundles_all_outputs_into_one_JavaScript_file_If_declaration_is_true_also_designates_a_file_that_bundles_all_d_ts_output,transpileOptionValue:void 0},{name:"outDir",type:"string",affectsEmit:!0,affectsBuildInfo:!0,affectsDeclarationPath:!0,isFilePath:!0,paramType:ws.DIRECTORY,showInSimplifiedHelpView:!0,category:ws.Emit,description:ws.Specify_an_output_folder_for_all_emitted_files},{name:"rootDir",type:"string",affectsEmit:!0,affectsBuildInfo:!0,affectsDeclarationPath:!0,isFilePath:!0,paramType:ws.LOCATION,category:ws.Modules,description:ws.Specify_the_root_folder_within_your_source_files,defaultValueDescription:ws.Computed_from_the_list_of_input_files},{name:"composite",type:"boolean",affectsBuildInfo:!0,isTSConfigOnly:!0,category:ws.Projects,transpileOptionValue:void 0,defaultValueDescription:!1,description:ws.Enable_constraints_that_allow_a_TypeScript_project_to_be_used_with_project_references},{name:"tsBuildInfoFile",type:"string",affectsEmit:!0,affectsBuildInfo:!0,isFilePath:!0,paramType:ws.FILE,category:ws.Projects,transpileOptionValue:void 0,defaultValueDescription:".tsbuildinfo",description:ws.Specify_the_path_to_tsbuildinfo_incremental_compilation_file},{name:"removeComments",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:ws.Emit,defaultValueDescription:!1,description:ws.Disable_emitting_comments},{name:"noCheck",type:"boolean",showInSimplifiedHelpView:!1,category:ws.Compiler_Diagnostics,description:ws.Disable_full_type_checking_only_critical_parse_and_emit_errors_will_be_reported,transpileOptionValue:!0,defaultValueDescription:!1,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,extraValidation:()=>[ws.Unknown_compiler_option_0,"noCheck"]},{name:"noEmit",type:"boolean",showInSimplifiedHelpView:!0,category:ws.Emit,description:ws.Disable_emitting_files_from_a_compilation,transpileOptionValue:void 0,defaultValueDescription:!1},{name:"importHelpers",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,affectsSourceFile:!0,category:ws.Emit,description:ws.Allow_importing_helper_functions_from_tslib_once_per_project_instead_of_including_them_per_file,defaultValueDescription:!1},{name:"importsNotUsedAsValues",type:new Map(Object.entries({remove:0,preserve:1,error:2})),affectsEmit:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:ws.Backwards_Compatibility,description:ws.Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types,defaultValueDescription:0},{name:"downlevelIteration",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:ws.Emit,description:ws.Emit_more_compliant_but_verbose_and_less_performant_JavaScript_for_iteration,defaultValueDescription:!1},{name:"isolatedModules",type:"boolean",category:ws.Interop_Constraints,description:ws.Ensure_that_each_file_can_be_safely_transpiled_without_relying_on_other_imports,transpileOptionValue:!0,defaultValueDescription:!1},{name:"verbatimModuleSyntax",type:"boolean",affectsEmit:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:ws.Interop_Constraints,description:ws.Do_not_transform_or_elide_any_imports_or_exports_not_marked_as_type_only_ensuring_they_are_written_in_the_output_file_s_format_based_on_the_module_setting,defaultValueDescription:!1},{name:"isolatedDeclarations",type:"boolean",category:ws.Interop_Constraints,description:ws.Require_sufficient_annotation_on_exports_so_other_tools_can_trivially_generate_declaration_files,defaultValueDescription:!1,affectsBuildInfo:!0,affectsSemanticDiagnostics:!0},{name:"strict",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:ws.Type_Checking,description:ws.Enable_all_strict_type_checking_options,defaultValueDescription:!1},{name:"noImplicitAny",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:ws.Type_Checking,description:ws.Enable_error_reporting_for_expressions_and_declarations_with_an_implied_any_type,defaultValueDescription:ws.false_unless_strict_is_set},{name:"strictNullChecks",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:ws.Type_Checking,description:ws.When_type_checking_take_into_account_null_and_undefined,defaultValueDescription:ws.false_unless_strict_is_set},{name:"strictFunctionTypes",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:ws.Type_Checking,description:ws.When_assigning_functions_check_to_ensure_parameters_and_the_return_values_are_subtype_compatible,defaultValueDescription:ws.false_unless_strict_is_set},{name:"strictBindCallApply",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:ws.Type_Checking,description:ws.Check_that_the_arguments_for_bind_call_and_apply_methods_match_the_original_function,defaultValueDescription:ws.false_unless_strict_is_set},{name:"strictPropertyInitialization",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:ws.Type_Checking,description:ws.Check_for_class_properties_that_are_declared_but_not_set_in_the_constructor,defaultValueDescription:ws.false_unless_strict_is_set},{name:"noImplicitThis",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:ws.Type_Checking,description:ws.Enable_error_reporting_when_this_is_given_the_type_any,defaultValueDescription:ws.false_unless_strict_is_set},{name:"useUnknownInCatchVariables",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:ws.Type_Checking,description:ws.Default_catch_clause_variables_as_unknown_instead_of_any,defaultValueDescription:ws.false_unless_strict_is_set},{name:"alwaysStrict",type:"boolean",affectsSourceFile:!0,affectsEmit:!0,affectsBuildInfo:!0,strictFlag:!0,category:ws.Type_Checking,description:ws.Ensure_use_strict_is_always_emitted,defaultValueDescription:ws.false_unless_strict_is_set},{name:"noUnusedLocals",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:ws.Type_Checking,description:ws.Enable_error_reporting_when_local_variables_aren_t_read,defaultValueDescription:!1},{name:"noUnusedParameters",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:ws.Type_Checking,description:ws.Raise_an_error_when_a_function_parameter_isn_t_read,defaultValueDescription:!1},{name:"exactOptionalPropertyTypes",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:ws.Type_Checking,description:ws.Interpret_optional_property_types_as_written_rather_than_adding_undefined,defaultValueDescription:!1},{name:"noImplicitReturns",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:ws.Type_Checking,description:ws.Enable_error_reporting_for_codepaths_that_do_not_explicitly_return_in_a_function,defaultValueDescription:!1},{name:"noFallthroughCasesInSwitch",type:"boolean",affectsBindDiagnostics:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:ws.Type_Checking,description:ws.Enable_error_reporting_for_fallthrough_cases_in_switch_statements,defaultValueDescription:!1},{name:"noUncheckedIndexedAccess",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:ws.Type_Checking,description:ws.Add_undefined_to_a_type_when_accessed_using_an_index,defaultValueDescription:!1},{name:"noImplicitOverride",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:ws.Type_Checking,description:ws.Ensure_overriding_members_in_derived_classes_are_marked_with_an_override_modifier,defaultValueDescription:!1},{name:"noPropertyAccessFromIndexSignature",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,showInSimplifiedHelpView:!1,category:ws.Type_Checking,description:ws.Enforces_using_indexed_accessors_for_keys_declared_using_an_indexed_type,defaultValueDescription:!1},{name:"moduleResolution",type:new Map(Object.entries({node10:2,node:2,classic:1,node16:3,nodenext:99,bundler:100})),deprecatedKeys:new Set(["node"]),affectsSourceFile:!0,affectsModuleResolution:!0,paramType:ws.STRATEGY,category:ws.Modules,description:ws.Specify_how_TypeScript_looks_up_a_file_from_a_given_module_specifier,defaultValueDescription:ws.module_AMD_or_UMD_or_System_or_ES6_then_Classic_Otherwise_Node},{name:"baseUrl",type:"string",affectsModuleResolution:!0,isFilePath:!0,category:ws.Modules,description:ws.Specify_the_base_directory_to_resolve_non_relative_module_names},{name:"paths",type:"object",affectsModuleResolution:!0,allowConfigDirTemplateSubstitution:!0,isTSConfigOnly:!0,category:ws.Modules,description:ws.Specify_a_set_of_entries_that_re_map_imports_to_additional_lookup_locations,transpileOptionValue:void 0},{name:"rootDirs",type:"list",isTSConfigOnly:!0,element:{name:"rootDirs",type:"string",isFilePath:!0},affectsModuleResolution:!0,allowConfigDirTemplateSubstitution:!0,category:ws.Modules,description:ws.Allow_multiple_folders_to_be_treated_as_one_when_resolving_modules,transpileOptionValue:void 0,defaultValueDescription:ws.Computed_from_the_list_of_input_files},{name:"typeRoots",type:"list",element:{name:"typeRoots",type:"string",isFilePath:!0},affectsModuleResolution:!0,allowConfigDirTemplateSubstitution:!0,category:ws.Modules,description:ws.Specify_multiple_folders_that_act_like_Slashnode_modules_Slash_types},{name:"types",type:"list",element:{name:"types",type:"string"},affectsProgramStructure:!0,showInSimplifiedHelpView:!0,category:ws.Modules,description:ws.Specify_type_package_names_to_be_included_without_being_referenced_in_a_source_file,transpileOptionValue:void 0},{name:"allowSyntheticDefaultImports",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:ws.Interop_Constraints,description:ws.Allow_import_x_from_y_when_a_module_doesn_t_have_a_default_export,defaultValueDescription:ws.module_system_or_esModuleInterop},{name:"esModuleInterop",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:ws.Interop_Constraints,description:ws.Emit_additional_JavaScript_to_ease_support_for_importing_CommonJS_modules_This_enables_allowSyntheticDefaultImports_for_type_compatibility,defaultValueDescription:!1},{name:"preserveSymlinks",type:"boolean",category:ws.Interop_Constraints,description:ws.Disable_resolving_symlinks_to_their_realpath_This_correlates_to_the_same_flag_in_node,defaultValueDescription:!1},{name:"allowUmdGlobalAccess",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:ws.Modules,description:ws.Allow_accessing_UMD_globals_from_modules,defaultValueDescription:!1},{name:"moduleSuffixes",type:"list",element:{name:"suffix",type:"string"},listPreserveFalsyValues:!0,affectsModuleResolution:!0,category:ws.Modules,description:ws.List_of_file_name_suffixes_to_search_when_resolving_a_module},{name:"allowImportingTsExtensions",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:ws.Modules,description:ws.Allow_imports_to_include_TypeScript_file_extensions_Requires_moduleResolution_bundler_and_either_noEmit_or_emitDeclarationOnly_to_be_set,defaultValueDescription:!1,transpileOptionValue:void 0},{name:"resolvePackageJsonExports",type:"boolean",affectsModuleResolution:!0,category:ws.Modules,description:ws.Use_the_package_json_exports_field_when_resolving_package_imports,defaultValueDescription:ws.true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false},{name:"resolvePackageJsonImports",type:"boolean",affectsModuleResolution:!0,category:ws.Modules,description:ws.Use_the_package_json_imports_field_when_resolving_imports,defaultValueDescription:ws.true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false},{name:"customConditions",type:"list",element:{name:"condition",type:"string"},affectsModuleResolution:!0,category:ws.Modules,description:ws.Conditions_to_set_in_addition_to_the_resolver_specific_defaults_when_resolving_imports},{name:"sourceRoot",type:"string",affectsEmit:!0,affectsBuildInfo:!0,paramType:ws.LOCATION,category:ws.Emit,description:ws.Specify_the_root_path_for_debuggers_to_find_the_reference_source_code},{name:"mapRoot",type:"string",affectsEmit:!0,affectsBuildInfo:!0,paramType:ws.LOCATION,category:ws.Emit,description:ws.Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations},{name:"inlineSources",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:ws.Emit,description:ws.Include_source_code_in_the_sourcemaps_inside_the_emitted_JavaScript,defaultValueDescription:!1},{name:"experimentalDecorators",type:"boolean",affectsEmit:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:ws.Language_and_Environment,description:ws.Enable_experimental_support_for_legacy_experimental_decorators,defaultValueDescription:!1},{name:"emitDecoratorMetadata",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,category:ws.Language_and_Environment,description:ws.Emit_design_type_metadata_for_decorated_declarations_in_source_files,defaultValueDescription:!1},{name:"jsxFactory",type:"string",category:ws.Language_and_Environment,description:ws.Specify_the_JSX_factory_function_used_when_targeting_React_JSX_emit_e_g_React_createElement_or_h,defaultValueDescription:"`React.createElement`"},{name:"jsxFragmentFactory",type:"string",category:ws.Language_and_Environment,description:ws.Specify_the_JSX_Fragment_reference_used_for_fragments_when_targeting_React_JSX_emit_e_g_React_Fragment_or_Fragment,defaultValueDescription:"React.Fragment"},{name:"jsxImportSource",type:"string",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,affectsModuleResolution:!0,affectsSourceFile:!0,category:ws.Language_and_Environment,description:ws.Specify_module_specifier_used_to_import_the_JSX_factory_functions_when_using_jsx_Colon_react_jsx_Asterisk,defaultValueDescription:"react"},{name:"resolveJsonModule",type:"boolean",affectsModuleResolution:!0,category:ws.Modules,description:ws.Enable_importing_json_files,defaultValueDescription:!1},{name:"allowArbitraryExtensions",type:"boolean",affectsProgramStructure:!0,category:ws.Modules,description:ws.Enable_importing_files_with_any_extension_provided_a_declaration_file_is_present,defaultValueDescription:!1},{name:"out",type:"string",affectsEmit:!0,affectsBuildInfo:!0,affectsDeclarationPath:!0,isFilePath:!1,category:ws.Backwards_Compatibility,paramType:ws.FILE,transpileOptionValue:void 0,description:ws.Deprecated_setting_Use_outFile_instead},{name:"reactNamespace",type:"string",affectsEmit:!0,affectsBuildInfo:!0,category:ws.Language_and_Environment,description:ws.Specify_the_object_invoked_for_createElement_This_only_applies_when_targeting_react_JSX_emit,defaultValueDescription:"`React`"},{name:"skipDefaultLibCheck",type:"boolean",affectsBuildInfo:!0,category:ws.Completeness,description:ws.Skip_type_checking_d_ts_files_that_are_included_with_TypeScript,defaultValueDescription:!1},{name:"charset",type:"string",category:ws.Backwards_Compatibility,description:ws.No_longer_supported_In_early_versions_manually_set_the_text_encoding_for_reading_files,defaultValueDescription:"utf8"},{name:"emitBOM",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:ws.Emit,description:ws.Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files,defaultValueDescription:!1},{name:"newLine",type:new Map(Object.entries({crlf:0,lf:1})),affectsEmit:!0,affectsBuildInfo:!0,paramType:ws.NEWLINE,category:ws.Emit,description:ws.Set_the_newline_character_for_emitting_files,defaultValueDescription:"lf"},{name:"noErrorTruncation",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:ws.Output_Formatting,description:ws.Disable_truncating_types_in_error_messages,defaultValueDescription:!1},{name:"noLib",type:"boolean",category:ws.Language_and_Environment,affectsProgramStructure:!0,description:ws.Disable_including_any_library_files_including_the_default_lib_d_ts,transpileOptionValue:!0,defaultValueDescription:!1},{name:"noResolve",type:"boolean",affectsModuleResolution:!0,category:ws.Modules,description:ws.Disallow_import_s_require_s_or_reference_s_from_expanding_the_number_of_files_TypeScript_should_add_to_a_project,transpileOptionValue:!0,defaultValueDescription:!1},{name:"stripInternal",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:ws.Emit,description:ws.Disable_emitting_declarations_that_have_internal_in_their_JSDoc_comments,defaultValueDescription:!1},{name:"disableSizeLimit",type:"boolean",affectsProgramStructure:!0,category:ws.Editor_Support,description:ws.Remove_the_20mb_cap_on_total_source_code_size_for_JavaScript_files_in_the_TypeScript_language_server,defaultValueDescription:!1},{name:"disableSourceOfProjectReferenceRedirect",type:"boolean",isTSConfigOnly:!0,category:ws.Projects,description:ws.Disable_preferring_source_files_instead_of_declaration_files_when_referencing_composite_projects,defaultValueDescription:!1},{name:"disableSolutionSearching",type:"boolean",isTSConfigOnly:!0,category:ws.Projects,description:ws.Opt_a_project_out_of_multi_project_reference_checking_when_editing,defaultValueDescription:!1},{name:"disableReferencedProjectLoad",type:"boolean",isTSConfigOnly:!0,category:ws.Projects,description:ws.Reduce_the_number_of_projects_loaded_automatically_by_TypeScript,defaultValueDescription:!1},{name:"noImplicitUseStrict",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:ws.Backwards_Compatibility,description:ws.Disable_adding_use_strict_directives_in_emitted_JavaScript_files,defaultValueDescription:!1},{name:"noEmitHelpers",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:ws.Emit,description:ws.Disable_generating_custom_helper_functions_like_extends_in_compiled_output,defaultValueDescription:!1},{name:"noEmitOnError",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:ws.Emit,transpileOptionValue:void 0,description:ws.Disable_emitting_files_if_any_type_checking_errors_are_reported,defaultValueDescription:!1},{name:"preserveConstEnums",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:ws.Emit,description:ws.Disable_erasing_const_enum_declarations_in_generated_code,defaultValueDescription:!1},{name:"declarationDir",type:"string",affectsEmit:!0,affectsBuildInfo:!0,affectsDeclarationPath:!0,isFilePath:!0,paramType:ws.DIRECTORY,category:ws.Emit,transpileOptionValue:void 0,description:ws.Specify_the_output_directory_for_generated_declaration_files},{name:"skipLibCheck",type:"boolean",affectsBuildInfo:!0,category:ws.Completeness,description:ws.Skip_type_checking_all_d_ts_files,defaultValueDescription:!1},{name:"allowUnusedLabels",type:"boolean",affectsBindDiagnostics:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:ws.Type_Checking,description:ws.Disable_error_reporting_for_unused_labels,defaultValueDescription:void 0},{name:"allowUnreachableCode",type:"boolean",affectsBindDiagnostics:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:ws.Type_Checking,description:ws.Disable_error_reporting_for_unreachable_code,defaultValueDescription:void 0},{name:"suppressExcessPropertyErrors",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:ws.Backwards_Compatibility,description:ws.Disable_reporting_of_excess_property_errors_during_the_creation_of_object_literals,defaultValueDescription:!1},{name:"suppressImplicitAnyIndexErrors",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:ws.Backwards_Compatibility,description:ws.Suppress_noImplicitAny_errors_when_indexing_objects_that_lack_index_signatures,defaultValueDescription:!1},{name:"forceConsistentCasingInFileNames",type:"boolean",affectsModuleResolution:!0,category:ws.Interop_Constraints,description:ws.Ensure_that_casing_is_correct_in_imports,defaultValueDescription:!0},{name:"maxNodeModuleJsDepth",type:"number",affectsModuleResolution:!0,category:ws.JavaScript_Support,description:ws.Specify_the_maximum_folder_depth_used_for_checking_JavaScript_files_from_node_modules_Only_applicable_with_allowJs,defaultValueDescription:0},{name:"noStrictGenericChecks",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:ws.Backwards_Compatibility,description:ws.Disable_strict_checking_of_generic_signatures_in_function_types,defaultValueDescription:!1},{name:"useDefineForClassFields",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,category:ws.Language_and_Environment,description:ws.Emit_ECMAScript_standard_compliant_class_fields,defaultValueDescription:ws.true_for_ES2022_and_above_including_ESNext},{name:"preserveValueImports",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:ws.Backwards_Compatibility,description:ws.Preserve_unused_imported_values_in_the_JavaScript_output_that_would_otherwise_be_removed,defaultValueDescription:!1},{name:"keyofStringsOnly",type:"boolean",category:ws.Backwards_Compatibility,description:ws.Make_keyof_only_return_strings_instead_of_string_numbers_or_symbols_Legacy_option,defaultValueDescription:!1},{name:"plugins",type:"list",isTSConfigOnly:!0,element:{name:"plugin",type:"object"},description:ws.Specify_a_list_of_language_service_plugins_to_include,category:ws.Editor_Support},{name:"moduleDetection",type:new Map(Object.entries({auto:2,legacy:1,force:3})),affectsSourceFile:!0,affectsModuleResolution:!0,description:ws.Control_what_method_is_used_to_detect_module_format_JS_files,category:ws.Language_and_Environment,defaultValueDescription:ws.auto_Colon_Treat_files_with_imports_exports_import_meta_jsx_with_jsx_Colon_react_jsx_or_esm_format_with_module_Colon_node16_as_modules},{name:"ignoreDeprecations",type:"string",defaultValueDescription:void 0}],DO=[...CO,...IO],PO=DO.filter((e=>!!e.affectsSemanticDiagnostics)),MO=DO.filter((e=>!!e.affectsEmit)),OO=DO.filter((e=>!!e.affectsDeclarationPath)),FO=DO.filter((e=>!!e.affectsModuleResolution)),RO=DO.filter((e=>!!e.affectsSourceFile||!!e.affectsBindDiagnostics)),LO=DO.filter((e=>!!e.affectsProgramStructure)),jO=DO.filter((e=>je(e,"transpileOptionValue"))),zO=DO.filter((e=>e.allowConfigDirTemplateSubstitution||!e.isCommandLineOnly&&e.isFilePath)),UO=EO.filter((e=>e.allowConfigDirTemplateSubstitution||!e.isCommandLineOnly&&e.isFilePath)),BO=DO.filter((function(e){return!lt(e.type)}));var qO,VO=[{name:"verbose",shortName:"v",category:ws.Command_line_Options,description:ws.Enable_verbose_logging,type:"boolean",defaultValueDescription:!1},{name:"dry",shortName:"d",category:ws.Command_line_Options,description:ws.Show_what_would_be_built_or_deleted_if_specified_with_clean,type:"boolean",defaultValueDescription:!1},{name:"force",shortName:"f",category:ws.Command_line_Options,description:ws.Build_all_projects_including_those_that_appear_to_be_up_to_date,type:"boolean",defaultValueDescription:!1},{name:"clean",category:ws.Command_line_Options,description:ws.Delete_the_outputs_of_all_projects,type:"boolean",defaultValueDescription:!1}],KO=[...CO,...VO],JO=[{name:"enable",type:"boolean",defaultValueDescription:!1},{name:"include",type:"list",element:{name:"include",type:"string"}},{name:"exclude",type:"list",element:{name:"exclude",type:"string"}},{name:"disableFilenameBasedTypeAcquisition",type:"boolean",defaultValueDescription:!1}];function WO(e){const t=new Map,n=new Map;return h(e,(e=>{t.set(e.name.toLowerCase(),e),e.shortName&&n.set(e.shortName,e.name)})),{optionsNameMap:t,shortOptionNames:n}}function HO(){return qO||(qO=WO(DO))}var GO={diagnostic:ws.Compiler_option_0_may_only_be_used_with_build,getOptionsNameMap:lF},QO={module:1,target:3,strict:!0,esModuleInterop:!0,forceConsistentCasingInFileNames:!0,skipLibCheck:!0};function YO(e){return ZO(e,mS)}function ZO(e,t){const n=Ke(e.type.keys()),r=(e.deprecatedKeys?n.filter((t=>!e.deprecatedKeys.has(t))):n).map((e=>`'${e}'`)).join(", ");return t(ws.Argument_for_0_option_must_be_Colon_1,`--${e.name}`,r)}function XO(e,t,n){return NR(e,(t??"").trim(),n)}function $O(e,t="",n){if(cn(t=t.trim(),"-"))return;if("listOrElement"===e.type&&!t.includes(","))return CR(e,t,n);if(""===t)return[];const r=t.split(",");switch(e.element.type){case"number":return J(r,(t=>CR(e.element,parseInt(t),n)));case"string":return J(r,(t=>CR(e.element,t||"",n)));case"boolean":case"object":return Tn.fail(`List of ${e.element.type} is not yet supported.`);default:return J(r,(t=>XO(e.element,t,n)))}}function eF(e){return e.name}function tF(e,t,n,r,i){var o;if(null==(o=t.alternateMode)?void 0:o.getOptionsNameMap().optionsNameMap.has(e.toLowerCase()))return kR(i,r,t.alternateMode.diagnostic,e);const s=Ht(e,t.optionDeclarations,eF);return s?kR(i,r,t.unknownDidYouMeanDiagnostic,n||e,s.name):kR(i,r,t.unknownOptionDiagnostic,n||e)}function nF(e,t,n){const r={};let i;const o=[],s=[];return a(t),{options:r,watchOptions:i,fileNames:o,errors:s};function a(t){let n=0;for(;n<t.length;){const a=t[n];if(n++,64===a.charCodeAt(0))c(a.slice(1));else if(45===a.charCodeAt(0)){const o=a.slice(45===a.charCodeAt(1)?2:1),c=cF(e.getOptionsNameMap,o,!0);if(c)n=rF(t,n,e,c,r,s);else{const r=cF(kF.getOptionsNameMap,o,!0);r?n=rF(t,n,kF,r,i||(i={}),s):s.push(tF(o,e,a))}}else o.push(a)}}function c(e){const t=gF(e,n||(e=>To.readFile(e)));if(!lt(t))return void s.push(t);const r=[];let i=0;for(;;){for(;i<t.length&&t.charCodeAt(i)<=32;)i++;if(i>=t.length)break;const n=i;if(34===t.charCodeAt(n)){for(i++;i<t.length&&34!==t.charCodeAt(i);)i++;i<t.length?(r.push(t.substring(n+1,i)),i++):s.push(mS(ws.Unterminated_quoted_string_in_response_file_0,e))}else{for(;t.charCodeAt(i)>32;)i++;r.push(t.substring(n,i))}}a(r)}}function rF(e,t,n,r,i,o){if(r.isTSConfigOnly){const n=e[t];"null"===n?(i[r.name]=void 0,t++):"boolean"===r.type?"false"===n?(i[r.name]=CR(r,!1,o),t++):("true"===n&&t++,o.push(mS(ws.Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line,r.name))):(o.push(mS(ws.Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line,r.name)),n&&!cn(n,"-")&&t++)}else if(e[t]||"boolean"===r.type||o.push(mS(n.optionTypeMismatchDiagnostic,r.name,LF(r))),"null"!==e[t])switch(r.type){case"number":i[r.name]=CR(r,parseInt(e[t]),o),t++;break;case"boolean":const n=e[t];i[r.name]=CR(r,"false"!==n,o),"false"!==n&&"true"!==n||t++;break;case"string":i[r.name]=CR(r,e[t]||"",o),t++;break;case"list":const s=$O(r,e[t],o);i[r.name]=s||[],s&&t++;break;case"listOrElement":Tn.fail("listOrElement not supported here");break;default:i[r.name]=XO(r,e[t],o),t++}else i[r.name]=void 0,t++;return t}var iF,oF={alternateMode:GO,getOptionsNameMap:HO,optionDeclarations:DO,unknownOptionDiagnostic:ws.Unknown_compiler_option_0,unknownDidYouMeanDiagnostic:ws.Unknown_compiler_option_0_Did_you_mean_1,optionTypeMismatchDiagnostic:ws.Compiler_option_0_expects_an_argument};function sF(e,t){return nF(oF,e,t)}function aF(e,t){return cF(HO,e,t)}function cF(e,t,n=!1){t=t.toLowerCase();const{optionsNameMap:r,shortOptionNames:i}=e();if(n){const e=i.get(t);void 0!==e&&(t=e)}return r.get(t)}function lF(){return iF||(iF=WO(KO))}var uF={alternateMode:{diagnostic:ws.Compiler_option_0_may_not_be_used_with_build,getOptionsNameMap:HO},getOptionsNameMap:lF,optionDeclarations:KO,unknownOptionDiagnostic:ws.Unknown_build_option_0,unknownDidYouMeanDiagnostic:ws.Unknown_build_option_0_Did_you_mean_1,optionTypeMismatchDiagnostic:ws.Build_option_0_requires_a_value_of_type_1};function dF(e){const{options:t,watchOptions:n,fileNames:r,errors:i}=nF(uF,e),o=t;return 0===r.length&&r.push("."),o.clean&&o.force&&i.push(mS(ws.Options_0_and_1_cannot_be_combined,"clean","force")),o.clean&&o.verbose&&i.push(mS(ws.Options_0_and_1_cannot_be_combined,"clean","verbose")),o.clean&&o.watch&&i.push(mS(ws.Options_0_and_1_cannot_be_combined,"clean","watch")),o.watch&&o.dry&&i.push(mS(ws.Options_0_and_1_cannot_be_combined,"watch","dry")),{buildOptions:o,watchOptions:n,projects:r,errors:i}}function _F(e,...t){return _t(mS(e,...t).messageText,lt)}function pF(e,t,n,r,i,o){const s=gF(e,(e=>n.readFile(e)));if(!lt(s))return void n.onUnRecoverableConfigFileDiagnostic(s);const a=eO(e,s),c=n.getCurrentDirectory();return a.path=rs(e,c,rn(n.useCaseSensitiveFileNames)),a.resolvedPath=a.path,a.originalFileName=a.fileName,XF(a,n,es(Vo(e),c),t,es(e,c),void 0,o,r,i)}function fF(e,t){const n=gF(e,t);return lt(n)?mF(e,n):{config:{},error:n}}function mF(e,t){const n=eO(e,t);return{config:OF(n,n.parseDiagnostics,void 0),error:n.parseDiagnostics.length?n.parseDiagnostics[0]:void 0}}function hF(e,t){const n=gF(e,t);return lt(n)?eO(e,n):{fileName:e,parseDiagnostics:[n]}}function gF(e,t){let n;try{n=t(e)}catch(Mge){return mS(ws.Cannot_read_file_0_Colon_1,e,Mge.message)}return void 0===n?mS(ws.Cannot_read_file_0,e):n}function yF(e){return He(e,eF)}var vF,bF={optionDeclarations:JO,unknownOptionDiagnostic:ws.Unknown_type_acquisition_option_0,unknownDidYouMeanDiagnostic:ws.Unknown_type_acquisition_option_0_Did_you_mean_1};function xF(){return vF||(vF=WO(EO))}var SF,TF,wF,kF={getOptionsNameMap:xF,optionDeclarations:EO,unknownOptionDiagnostic:ws.Unknown_watch_option_0,unknownDidYouMeanDiagnostic:ws.Unknown_watch_option_0_Did_you_mean_1,optionTypeMismatchDiagnostic:ws.Watch_option_0_requires_a_value_of_type_1};function EF(){return SF||(SF=yF(DO))}function CF(){return TF||(TF=yF(EO))}function NF(){return wF||(wF=yF(JO))}var AF,IF={name:"extends",type:"listOrElement",element:{name:"extends",type:"string"},category:ws.File_Management,disallowNullOrUndefined:!0},DF={name:"compilerOptions",type:"object",elementOptions:EF(),extraKeyDiagnostics:oF},PF={name:"watchOptions",type:"object",elementOptions:CF(),extraKeyDiagnostics:kF},MF={name:"typeAcquisition",type:"object",elementOptions:NF(),extraKeyDiagnostics:bF};function OF(e,t,n){var r;const i=null==(r=e.statements[0])?void 0:r.expression;if(i&&210!==i.kind){if(t.push(Jp(e,i,ws.The_root_value_of_a_0_file_must_be_an_object,"jsconfig.json"===Ko(e.fileName)?"jsconfig.json":"tsconfig.json")),eA(i)){const r=w(i.elements,tA);if(r)return RF(e,r,t,!0,n)}return{}}return RF(e,i,t,!0,n)}function FF(e,t){var n;return RF(e,null==(n=e.statements[0])?void 0:n.expression,t,!0,void 0)}function RF(e,t,n,r,i){return t?o(t,null==i?void 0:i.rootOptions):r?{}:void 0;function o(t,a){switch(t.kind){case 112:return!0;case 97:return!1;case 106:return null;case 11:return s(t)||n.push(Jp(e,t,ws.String_literal_with_double_quotes_expected)),t.text;case 9:return Number(t.text);case 224:if(41!==t.operator||9!==t.operand.kind)break;return-Number(t.operand.text);case 210:return function(t,a){var c;const l=r?{}:void 0;for(const u of t.properties){if(303!==u.kind){n.push(Jp(e,u,ws.Property_assignment_expected));continue}u.questionToken&&n.push(Jp(e,u.questionToken,ws.The_0_modifier_can_only_be_used_in_TypeScript_files,"?")),s(u.name)||n.push(Jp(e,u.name,ws.String_literal_with_double_quotes_expected));const t=zp(u.name)?void 0:Bp(u.name),d=t&&wc(t),_=d?null==(c=null==a?void 0:a.elementOptions)?void 0:c.get(d):void 0,p=o(u.initializer,_);void 0!==d&&(r&&(l[d]=p),null==i||i.onPropertySet(d,p,u,a,_))}return l}(t,a);case 209:return function(e,t){if(r)return M(e.map((e=>o(e,t))),(e=>void 0!==e));e.forEach((e=>o(e,t)))}(t.elements,a&&a.element)}a?n.push(Jp(e,t,ws.Compiler_option_0_requires_a_value_of_type_1,a.name,LF(a))):n.push(Jp(e,t,ws.Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_literal))}function s(t){return MC(t)&&Xm(t,e)}}function LF(e){return"listOrElement"===e.type?`${LF(e.element)} or Array`:"list"===e.type?"Array":lt(e.type)?e.type:"string"}function jF(e,t){if(e){if(eR(t))return!e.disallowNullOrUndefined;if("list"===e.type)return at(t);if("listOrElement"===e.type)return at(t)||jF(e.element,t);return typeof t===(lt(e.type)?e.type:"string")}return!1}function zF(e,t,n){var r,i,o;const s=rn(n.useCaseSensitiveFileNames),a=R(M(e.fileNames,(null==(i=null==(r=e.options.configFile)?void 0:r.configFileSpecs)?void 0:i.validatedIncludeSpecs)?function(e,t,n,r){if(!t)return mt;const i=IT(e,n,t,r.useCaseSensitiveFileNames,r.getCurrentDirectory()),o=i.excludePattern&&DT(i.excludePattern,r.useCaseSensitiveFileNames),s=i.includeFilePattern&&DT(i.includeFilePattern,r.useCaseSensitiveFileNames);if(s)return o?e=>!(s.test(e)&&!o.test(e)):e=>!s.test(e);if(o)return e=>o.test(e);return mt}(t,e.options.configFile.configFileSpecs.validatedIncludeSpecs,e.options.configFile.configFileSpecs.validatedExcludeSpecs,n):mt),(e=>vs(es(t,n.getCurrentDirectory()),es(e,n.getCurrentDirectory()),s))),c={configFilePath:es(t,n.getCurrentDirectory()),useCaseSensitiveFileNames:n.useCaseSensitiveFileNames},l=KF(e.options,c),u=e.watchOptions&&JF(e.watchOptions,xF());const d={compilerOptions:{...UF(l),showConfig:void 0,configFile:void 0,configFilePath:void 0,help:void 0,init:void 0,listFiles:void 0,listEmittedFiles:void 0,project:void 0,build:void 0,version:void 0},watchOptions:u&&UF(u),references:R(e.projectReferences,(e=>({...e,path:e.originalPath?e.originalPath:"",originalPath:void 0}))),files:m(a)?a:void 0,...(null==(o=e.options.configFile)?void 0:o.configFileSpecs)?{include:BF(e.options.configFile.configFileSpecs.validatedIncludeSpecs),exclude:e.options.configFile.configFileSpecs.validatedExcludeSpecs}:{},compileOnSave:!!e.compileOnSave||void 0},_=new Set(l.keys()),p={};for(const f in PS)if(!_.has(f)&&$(PS[f].dependencies,(e=>_.has(e)))){PS[f].computeValue(e.options)!==PS[f].computeValue({})&&(p[f]=PS[f].computeValue(e.options))}return Je(d.compilerOptions,UF(KF(p,c))),d}function UF(e){return{...Ke(e.entries()).reduce(((e,t)=>({...e,[t[0]]:t[1]})),{})}}function BF(e){if(m(e)){if(1!==m(e))return e;if(e[0]!==nR)return e}}function qF(e){switch(e.type){case"string":case"number":case"boolean":case"object":return;case"list":case"listOrElement":return qF(e.element);default:return e.type}}function VF(e,t){return f_(t,((t,n)=>{if(t===e)return n}))}function KF(e,t){return JF(e,HO(),t)}function JF(e,{optionsNameMap:t},n){const r=new Map,i=n&&rn(n.useCaseSensitiveFileNames);for(const o in e)if(je(e,o)){if(t.has(o)&&(t.get(o).category===ws.Command_line_Options||t.get(o).category===ws.Output_Formatting))continue;const s=e[o],a=t.get(o.toLowerCase());if(a){Tn.assert("listOrElement"!==a.type);const e=qF(a);e?"list"===a.type?r.set(o,s.map((t=>VF(t,e)))):r.set(o,VF(s,e)):n&&a.isFilePath?r.set(o,vs(n.configFilePath,es(s,Vo(n.configFilePath)),i)):n&&"list"===a.type&&a.element.isFilePath?r.set(o,s.map((e=>vs(n.configFilePath,es(e,Vo(n.configFilePath)),i)))):r.set(o,s)}}return r}function WF(e,t){const n=HF(e);return function(){const e=[],r=(i=2,Array(i+1).join(" "));var i;return IO.forEach((t=>{if(!n.has(t.name))return;const i=n.get(t.name),o=HR(t);i!==o?e.push(`${r}${t.name}: ${i}`):je(QO,t.name)&&e.push(`${r}${t.name}: ${o}`)})),e.join(t)+t}()}function HF(e){return KF($e(e,QO))}function GF(e,t,n){const r=HF(e);return function(){const e=new Map;e.set(ws.Projects,[]),e.set(ws.Language_and_Environment,[]),e.set(ws.Modules,[]),e.set(ws.JavaScript_Support,[]),e.set(ws.Emit,[]),e.set(ws.Interop_Constraints,[]),e.set(ws.Type_Checking,[]),e.set(ws.Completeness,[]);for(const t of DO)if(o(t)){let n=e.get(t.category);n||e.set(t.category,n=[]),n.push(t)}let s=0,a=0;const c=[];e.forEach(((e,t)=>{0!==c.length&&c.push({value:""}),c.push({value:`/* ${cS(t)} */`});for(const n of e){let e;e=r.has(n.name)?`"${n.name}": ${JSON.stringify(r.get(n.name))}${(a+=1)===r.size?"":","}`:`// "${n.name}": ${JSON.stringify(HR(n))},`,c.push({value:e,description:`/* ${n.description&&cS(n.description)||n.name} */`}),s=Math.max(e.length,s)}}));const l=i(2),u=[];u.push("{"),u.push(`${l}"compilerOptions": {`),u.push(`${l}${l}/* ${cS(ws.Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_to_read_more_about_this_file)} */`),u.push("");for(const t of c){const{value:e,description:n=""}=t;u.push(e&&`${l}${l}${e}${n&&i(s-e.length+2)+n}`)}if(t.length){u.push(`${l}},`),u.push(`${l}"files": [`);for(let e=0;e<t.length;e++)u.push(`${l}${l}${JSON.stringify(t[e])}${e===t.length-1?"":","}`);u.push(`${l}]`)}else u.push(`${l}}`);return u.push("}"),u.join(n)+n}();function i(e){return Array(e+1).join(" ")}function o({category:e,name:t,isCommandLineOnly:n}){const i=[ws.Command_line_Options,ws.Editor_Support,ws.Compiler_Diagnostics,ws.Backwards_Compatibility,ws.Watch_and_Build_Modes,ws.Output_Formatting];return!n&&void 0!==e&&(!i.includes(e)||r.has(t))}}function QF(e,t){const n={},r=HO().optionsNameMap;for(const i in e)je(e,i)&&(n[i]=YF(r.get(i.toLowerCase()),e[i],t));return n.configFilePath&&(n.configFilePath=t(n.configFilePath)),n}function YF(e,t,n){if(e&&!eR(t)){if("list"===e.type){const r=t;if(e.element.isFilePath&&r.length)return r.map(n)}else if(e.isFilePath)return n(t);Tn.assert("listOrElement"!==e.type)}return t}function ZF(e,t,n,r,i,o,s,a,c){return rR(e,void 0,t,n,r,c,i,o,s,a)}function XF(e,t,n,r,i,o,s,a,c){var l,u;null==(l=ar)||l.push(ar.Phase.Parse,"parseJsonSourceFileConfigFileContent",{path:e.fileName});const d=rR(void 0,e,t,n,r,c,i,o,s,a);return null==(u=ar)||u.pop(),d}function $F(e,t){t&&Object.defineProperty(e,"configFile",{enumerable:!1,writable:!1,value:t})}function eR(e){return null==e}function tR(e,t){return Vo(es(e,t))}var nR="**/*";function rR(e,t,n,r,i={},o,s,a=[],c=[],l){Tn.assert(void 0===e&&void 0!==t||void 0!==e&&void 0===t);const u=[],d=mR(e,t,n,r,s,a,u,l),{raw:_}=d,p=oR($e(i,d.options||{}),zO,r),f=iR(o&&d.watchOptions?$e(o,d.watchOptions):d.watchOptions||o,r);p.configFilePath=s&&Qo(s);const m=ts(s?tR(s,r):r),h=function(){const e=v("references",(e=>"object"==typeof e),"object"),n=g(y("files"));if(n){const r="no-prop"===e||at(e)&&0===e.length,i=je(_,"extends");if(0===n.length&&r&&!i)if(t){const e=s||"tsconfig.json",n=ws.The_files_list_in_config_file_0_is_empty,r=tm(t,"files",(e=>e.initializer)),i=kR(t,r,n,e);u.push(i)}else b(ws.The_files_list_in_config_file_0_is_empty,s||"tsconfig.json")}let r=g(y("include"));const i=y("exclude");let o,a,c,l,d=!1,f=g(i);if("no-prop"===i){const e=p.outDir,t=p.declarationDir;(e||t)&&(f=M([e,t],(e=>!!e)))}void 0===n&&void 0===r&&(r=[nR],d=!0);r&&(o=jR(r,u,!0,t,"include"),c=lR(o,m)||o);f&&(a=jR(f,u,!1,t,"exclude"),l=lR(a,m)||a);const h=M(n,lt),x=lR(h,m)||h;return{filesSpecs:n,includeSpecs:r,excludeSpecs:f,validatedFilesSpec:x,validatedIncludeSpecs:c,validatedExcludeSpecs:l,validatedFilesSpecBeforeSubstitution:h,validatedIncludeSpecsBeforeSubstitution:o,validatedExcludeSpecsBeforeSubstitution:a,pathPatterns:void 0,isDefaultIncludeSpec:d}}();return t&&(t.configFileSpecs=h),$F(p,t),{options:p,watchOptions:f,fileNames:function(e){const t=MR(h,e,p,n,c);_R(t,pR(_),a)&&u.push(dR(h,s));return t}(m),projectReferences:function(e){let t;const n=v("references",(e=>"object"==typeof e),"object");if(at(n))for(const r of n)"string"!=typeof r.path?b(ws.Compiler_option_0_requires_a_value_of_type_1,"reference.path","string"):(t||(t=[])).push({path:es(r.path,e),originalPath:r.path,prepend:r.prepend,circular:r.circular});return t}(m),typeAcquisition:d.typeAcquisition||SR(),raw:_,errors:u,wildcardDirectories:UR(h,m,n.useCaseSensitiveFileNames),compileOnSave:!!_.compileOnSave};function g(e){return at(e)?e:void 0}function y(e){return v(e,lt,"string")}function v(e,n,r){if(je(_,e)&&!eR(_[e])){if(at(_[e])){const i=_[e];return t||T(i,n)||u.push(mS(ws.Compiler_option_0_requires_a_value_of_type_1,e,r)),i}return b(ws.Compiler_option_0_requires_a_value_of_type_1,e,"Array"),"not-array"}return"no-prop"}function b(e,...n){t||u.push(mS(e,...n))}}function iR(e,t){return oR(e,UO,t)}function oR(e,t,n){if(!e)return e;let r;for(const o of t)if(void 0!==e[o.name]){const t=e[o.name];switch(o.type){case"string":Tn.assert(o.isFilePath),aR(t)&&i(o,cR(t,n));break;case"list":Tn.assert(o.element.isFilePath);const e=lR(t,n);e&&i(o,e);break;case"object":Tn.assert("paths"===o.name);const r=uR(t,n);r&&i(o,r);break;default:Tn.fail("option type not supported")}}return r||e;function i(t,n){(r??(r=Je({},e)))[t.name]=n}}var sR="${configDir}";function aR(e){return lt(e)&&cn(e,sR,!0)}function cR(e,t){return es(e.replace(sR,"./"),t)}function lR(e,t){if(!e)return e;let n;return e.forEach(((r,i)=>{aR(r)&&((n??(n=e.slice()))[i]=cR(r,t))})),n}function uR(e,t){let n;return Ue(e).forEach((r=>{if(!at(e[r]))return;const i=lR(e[r],t);i&&((n??(n=Je({},e)))[r]=i)})),n}function dR({includeSpecs:e,excludeSpecs:t},n){return mS(ws.No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2,n||"tsconfig.json",JSON.stringify(e||[]),JSON.stringify(t||[]))}function _R(e,t,n){return 0===e.length&&t&&(!n||0===n.length)}function pR(e){return!je(e,"files")&&!je(e,"references")}function fR(e,t,n,r,i){const o=r.length;return _R(e,i)?r.push(dR(n,t)):O(r,(e=>!function(e){return e.code===ws.No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2.code}(e))),o!==r.length}function mR(e,t,n,r,i,o,s,a){var c;const l=es(i||"",r=Qo(r));if(o.includes(l))return s.push(mS(ws.Circularity_detected_while_resolving_configuration_Colon_0,[...o,l].join(" -> "))),{raw:e||FF(t,s)};const u=e?function(e,t,n,r,i){je(e,"excludes")&&i.push(mS(ws.Unknown_option_excludes_Did_you_mean_exclude));const o=xR(e.compilerOptions,n,i,r),s=TR(e.typeAcquisition,n,i,r),a=function(e,t,n){return wR(CF(),e,t,void 0,kF,n)}(e.watchOptions,n,i);e.compileOnSave=function(e,t,n){if(!je(e,bO.name))return!1;const r=ER(bO,e.compileOnSave,t,n);return"boolean"==typeof r&&r}(e,n,i);const c=e.extends||""===e.extends?hR(e.extends,t,n,r,i):void 0;return{raw:e,options:o,watchOptions:a,typeAcquisition:s,extendedConfigPath:c}}(e,n,r,i,s):function(e,t,n,r,i){const o=bR(r);let s,a,c,l;const u=(void 0===AF&&(AF={name:void 0,type:"object",elementOptions:yF([DF,PF,MF,IF,{name:"references",type:"list",element:{name:"references",type:"object"},category:ws.Projects},{name:"files",type:"list",element:{name:"files",type:"string"},category:ws.File_Management},{name:"include",type:"list",element:{name:"include",type:"string"},category:ws.File_Management,defaultValueDescription:ws.if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk},{name:"exclude",type:"list",element:{name:"exclude",type:"string"},category:ws.File_Management,defaultValueDescription:ws.node_modules_bower_components_jspm_packages_plus_the_value_of_outDir_if_one_is_specified},bO])}),AF),d=OF(e,i,{rootOptions:u,onPropertySet:_});s||(s=SR(r));l&&d&&void 0===d.compilerOptions&&i.push(Jp(e,l[0],ws._0_should_be_set_inside_the_compilerOptions_object_of_the_config_json_file,Bp(l[0])));return{raw:d,options:o,watchOptions:a,typeAcquisition:s,extendedConfigPath:c};function _(d,_,p,f,m){if(m&&m!==IF&&(_=ER(m,_,n,i,p,p.initializer,e)),null==f?void 0:f.name)if(m){let e;f===DF?e=o:f===PF?e=a??(a={}):f===MF?e=s??(s=SR(r)):Tn.fail("Unknown option"),e[m.name]=_}else d&&(null==f?void 0:f.extraKeyDiagnostics)&&(f.elementOptions?i.push(tF(d,f.extraKeyDiagnostics,void 0,p.name,e)):i.push(Jp(e,p.name,f.extraKeyDiagnostics.unknownOptionDiagnostic,d)));else f===u&&(m===IF?c=hR(_,t,n,r,i,p,p.initializer,e):m||("excludes"===d&&i.push(Jp(e,p.name,ws.Unknown_option_excludes_Did_you_mean_exclude)),w(IO,(e=>e.name===d))&&(l=_e(l,p.name))))}}(t,n,r,i,s);if((null==(c=u.options)?void 0:c.paths)&&(u.options.pathsBasePath=r),u.extendedConfigPath){o=o.concat([l]);const e={options:{}};lt(u.extendedConfigPath)?d(e,u.extendedConfigPath):u.extendedConfigPath.forEach((t=>d(e,t))),e.include&&(u.raw.include=e.include),e.exclude&&(u.raw.exclude=e.exclude),e.files&&(u.raw.files=e.files),void 0===u.raw.compileOnSave&&e.compileOnSave&&(u.raw.compileOnSave=e.compileOnSave),t&&e.extendedSourceFiles&&(t.extendedSourceFiles=Ke(e.extendedSourceFiles.keys())),u.options=Je(e.options,u.options),u.watchOptions=u.watchOptions&&e.watchOptions?Je(e.watchOptions,u.watchOptions):u.watchOptions||e.watchOptions}return u;function d(e,i){const c=function(e,t,n,r,i,o,s){const a=n.useCaseSensitiveFileNames?t:bt(t);let c,l,u;o&&(c=o.get(a))?({extendedResult:l,extendedConfig:u}=c):(l=hF(t,(e=>n.readFile(e))),l.parseDiagnostics.length||(u=mR(void 0,l,n,Vo(t),Ko(t),r,i,o)),o&&o.set(a,{extendedResult:l,extendedConfig:u}));if(e&&((s.extendedSourceFiles??(s.extendedSourceFiles=new Set)).add(l.fileName),l.extendedSourceFiles))for(const d of l.extendedSourceFiles)s.extendedSourceFiles.add(d);if(l.parseDiagnostics.length)return void i.push(...l.parseDiagnostics);return u}(t,i,n,o,s,a,e);if(c&&c.options){const t=c.raw;let o;const s=s=>{u.raw[s]||t[s]&&(e[s]=R(t[s],(e=>aR(e)||Do(e)?e:Zo(o||(o=ys(Vo(i),r,rn(n.useCaseSensitiveFileNames))),e))))};s("include"),s("exclude"),s("files"),void 0!==t.compileOnSave&&(e.compileOnSave=t.compileOnSave),Je(e.options,c.options),e.watchOptions=e.watchOptions&&c.watchOptions?Je({},e.watchOptions,c.watchOptions):e.watchOptions||c.watchOptions}}}function hR(e,t,n,r,i,o,s,a){let c;const l=r?tR(r,n):n;if(lt(e))c=gR(e,t,l,i,s,a);else if(at(e)){c=[];for(let r=0;r<e.length;r++){const u=e[r];lt(u)?c=_e(c,gR(u,t,l,i,null==s?void 0:s.elements[r],a)):ER(IF.element,e,n,i,o,null==s?void 0:s.elements[r],a)}}else ER(IF,e,n,i,o,s,a);return c}function gR(e,t,n,r,i,o){if(Do(e=Qo(e))||cn(e,"./")||cn(e,"../")){let s=es(e,n);return t.fileExists(s)||Qt(s,".json")||(s=`${s}.json`,t.fileExists(s))?s:void r.push(kR(o,i,ws.File_0_not_found,e))}const s=VL(e,Zo(n,"tsconfig.json"),t);if(s.resolvedModule)return s.resolvedModule.resolvedFileName;""===e?r.push(kR(o,i,ws.Compiler_option_0_cannot_be_given_an_empty_string,"extends")):r.push(kR(o,i,ws.File_0_not_found,e))}function yR(e,t,n){const r=[];return{options:xR(e,t,r,n),errors:r}}function vR(e,t,n){const r=[];return{options:TR(e,t,r,n),errors:r}}function bR(e){return e&&"jsconfig.json"===Ko(e)?{allowJs:!0,maxNodeModuleJsDepth:2,allowSyntheticDefaultImports:!0,skipLibCheck:!0,noEmit:!0}:{}}function xR(e,t,n,r){const i=bR(r);return wR(EF(),e,t,i,oF,n),r&&(i.configFilePath=Qo(r)),i}function SR(e){return{enable:!!e&&"jsconfig.json"===Ko(e),include:[],exclude:[]}}function TR(e,t,n,r){const i=SR(r);return wR(NF(),e,t,i,bF,n),i}function wR(e,t,n,r,i,o){if(t){for(const s in t){const a=e.get(s);a?(r||(r={}))[a.name]=ER(a,t[s],n,o):o.push(tF(s,i))}return r}}function kR(e,t,n,...r){return e&&t?Jp(e,t,n,...r):mS(n,...r)}function ER(e,t,n,r,i,o,s){if(e.isCommandLineOnly)r.push(kR(s,null==i?void 0:i.name,ws.Option_0_can_only_be_specified_on_command_line,e.name));else{if(jF(e,t)){const a=e.type;if("list"===a&&at(t))return AR(e,t,n,r,i,o,s);if("listOrElement"===a)return at(t)?AR(e,t,n,r,i,o,s):ER(e.element,t,n,r,i,o,s);if(!lt(e.type))return NR(e,t,r,o,s);const c=CR(e,t,r,o,s);return eR(c)?c:function(e,t,n){e.isFilePath&&""===(n=aR(n=Qo(n))?n:es(n,t))&&(n=".");return n}(e,n,c)}r.push(kR(s,o,ws.Compiler_option_0_requires_a_value_of_type_1,e.name,LF(e)))}}function CR(e,t,n,r,i){var o;if(eR(t))return;const s=null==(o=e.extraValidation)?void 0:o.call(e,t);if(!s)return t;n.push(kR(i,r,...s))}function NR(e,t,n,r,i){if(eR(t))return;const o=t.toLowerCase(),s=e.type.get(o);if(void 0!==s)return CR(e,s,n,r,i);n.push(ZO(e,((e,...t)=>kR(i,r,e,...t))))}function AR(e,t,n,r,i,o,s){return M(R(t,((t,a)=>ER(e.element,t,n,r,i,null==o?void 0:o.elements[a],s))),(t=>!!e.listPreserveFalsyValues||!!t))}var IR,DR=/(^|\/)\*\*\/?$/,PR=/^[^*?]*(?=\/[^/]*[*?])/;function MR(e,t,n,r,i=_){t=ts(t);const o=rn(r.useCaseSensitiveFileNames),s=new Map,a=new Map,c=new Map,{validatedFilesSpec:l,validatedIncludeSpecs:u,validatedExcludeSpecs:d}=e,p=GT(n,i),f=QT(n,p);if(l)for(const _ of l){const e=es(_,t);s.set(o(e),e)}let m;if(u&&u.length>0)for(const y of r.readDirectory(t,z(f),d,u,void 0)){if(Lo(y,".json")){if(!m){const e=R(kT(u.filter((e=>Qt(e,".json"))),t,"files"),(e=>`^${e}$`));m=e?e.map((e=>DT(e,r.useCaseSensitiveFileNames))):_}if(-1!==E(m,(e=>e.test(y)))){const e=o(y);s.has(e)||c.has(e)||c.set(e,y)}continue}if(VR(y,s,a,p,o))continue;KR(y,a,p,o);const e=o(y);s.has(e)||a.has(e)||a.set(e,y)}const h=Ke(s.values()),g=Ke(a.values());return h.concat(g,Ke(c.values()))}function OR(e,t,n,r,i){const{validatedFilesSpec:o,validatedIncludeSpecs:s,validatedExcludeSpecs:a}=t;if(!m(s)||!m(a))return!1;n=ts(n);const c=rn(r);if(o)for(const l of o)if(c(es(l,n))===e)return!1;return LR(e,a,r,i,n)}function FR(e){const t=cn(e,"**/")?0:e.indexOf("/**/");if(-1===t)return!1;return(Qt(e,"/..")?e.length:e.lastIndexOf("/../"))>t}function RR(e,t,n,r){return LR(e,M(t,(e=>!FR(e))),n,r)}function LR(e,t,n,r,i){const o=wT(t,Zo(ts(r),i),"exclude"),s=o&&DT(o,n);return!!s&&(!!s.test(e)||!Ro(e)&&s.test(os(e)))}function jR(e,t,n,r,i){return e.filter((e=>{if(!lt(e))return!1;const o=zR(e,n);return void 0!==o&&t.push(function(e,t){const n=em(r,i,t);return kR(r,n,e,t)}(...o)),void 0===o}))}function zR(e,t){return Tn.assert("string"==typeof e),t&&DR.test(e)?[ws.File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0,e]:FR(e)?[ws.File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0,e]:void 0}function UR({validatedIncludeSpecs:e,validatedExcludeSpecs:t},n,r){const i=wT(t,n,"exclude"),o=i&&new RegExp(i,r?"":"i"),s={},a=new Map;if(void 0!==e){const t=[];for(const i of e){const e=ts(Zo(n,i));if(o&&o.test(e))continue;const c=qR(e,r);if(c){const{key:e,path:n,flags:r}=c,i=a.get(e),o=void 0!==i?s[i]:void 0;(void 0===o||o<r)&&(s[void 0!==i?i:n]=r,void 0===i&&a.set(e,n),1===r&&t.push(e))}}for(const e in s)if(je(s,e))for(const i of t){const t=BR(e,r);t!==i&&fs(i,t,n,!r)&&delete s[e]}}return s}function BR(e,t){return t?e:bt(e)}function qR(e,t){const n=PR.exec(e);if(n){const r=e.indexOf("?"),i=e.indexOf("*"),o=e.lastIndexOf(ko);return{key:BR(n[0],t),path:n[0],flags:-1!==r&&r<o||-1!==i&&i<o?1:0}}if(ET(e.substring(e.lastIndexOf(ko)+1))){const n=is(e);return{key:BR(n,t),path:n,flags:1}}}function VR(e,t,n,r,i){const o=h(r,(t=>jo(e,t)?t:void 0));if(!o)return!1;for(const s of o){if(Lo(e,s)&&(".ts"!==s||!Lo(e,".d.ts")))return!1;const r=i(cw(e,s));if(t.has(r)||n.has(r)){if(".d.ts"===s&&(Lo(e,".js")||Lo(e,".jsx")))continue;return!0}}return!1}function KR(e,t,n,r){const i=h(n,(t=>jo(e,t)?t:void 0));if(i)for(let o=i.length-1;o>=0;o--){const n=i[o];if(Lo(e,n))return;const s=r(cw(e,n));t.delete(s)}}function JR(e){const t={};for(const n in e)if(je(e,n)){const r=aF(n);void 0!==r&&(t[n]=WR(e[n],r))}return t}function WR(e,t){if(void 0===e)return e;switch(t.type){case"object":case"string":return"";case"number":return"number"==typeof e?e:"";case"boolean":return"boolean"==typeof e?e:"";case"listOrElement":if(!at(e))return WR(e,t.element);case"list":const n=t.element;return at(e)?J(e,(e=>WR(e,n))):"";default:return f_(t.type,((t,n)=>{if(t===e)return n}))}}function HR(e){switch(e.type){case"number":return 1;case"boolean":return!0;case"string":const t=e.defaultValueDescription;return e.isFilePath?`./${t&&"string"==typeof t?t:""}`:"";case"list":return[];case"listOrElement":return HR(e.element);case"object":return{};default:const n=ke(e.type.keys());return void 0!==n?n:Tn.fail("Expected 'option.type' to have entries.")}}function GR(e,t,...n){e.trace(fS(t,...n))}function QR(e,t){return!!e.traceResolution&&void 0!==t.trace}function YR(e,t,n){let r;if(t&&e){const i=e.contents.packageJsonContent;"string"==typeof i.name&&"string"==typeof i.version&&(r={name:i.name,subModuleName:t.path.slice(e.packageDirectory.length+ko.length),version:i.version,peerDependencies:dj(e,n)})}return t&&{path:t.path,extension:t.ext,packageId:r,resolvedUsingTsExtension:t.resolvedUsingTsExtension}}function ZR(e){return YR(void 0,e,void 0)}function XR(e){if(e)return Tn.assert(void 0===e.packageId),{path:e.path,ext:e.extension,resolvedUsingTsExtension:e.resolvedUsingTsExtension}}function $R(e){const t=[];return 1&e&&t.push("TypeScript"),2&e&&t.push("JavaScript"),4&e&&t.push("Declaration"),8&e&&t.push("JSON"),t.join(", ")}function eL(e){if(e)return Tn.assert(_w(e.extension)),{fileName:e.path,packageId:e.packageId}}function tL(e,t,n,r,i,o,s,a,c){if(!s.resultFromCache&&!s.compilerOptions.preserveSymlinks&&t&&n&&!t.originalPath&&!za(e)){const{resolvedFileName:e,originalPath:n}=_L(t.path,s.host,s.traceEnabled);n&&(t={...t,path:e,originalPath:n})}return nL(t,n,r,i,o,s.resultFromCache,a,c)}function nL(e,t,n,r,i,o,s,a){return o?(null==s?void 0:s.isReadonly)?{...o,failedLookupLocations:oL(o.failedLookupLocations,n),affectingLocations:oL(o.affectingLocations,r),resolutionDiagnostics:oL(o.resolutionDiagnostics,i)}:(o.failedLookupLocations=iL(o.failedLookupLocations,n),o.affectingLocations=iL(o.affectingLocations,r),o.resolutionDiagnostics=iL(o.resolutionDiagnostics,i),o):{resolvedModule:e&&{resolvedFileName:e.path,originalPath:!0===e.originalPath?void 0:e.originalPath,extension:e.extension,isExternalLibraryImport:t,packageId:e.packageId,resolvedUsingTsExtension:!!e.resolvedUsingTsExtension},failedLookupLocations:rL(n),affectingLocations:rL(r),resolutionDiagnostics:rL(i),alternateResult:a}}function rL(e){return e.length?e:void 0}function iL(e,t){return(null==t?void 0:t.length)?(null==e?void 0:e.length)?(e.push(...t),e):t:e}function oL(e,t){return(null==e?void 0:e.length)?t.length?[...e,...t]:e.slice():rL(t)}function sL(e,t,n,r){if(!je(e,t))return void(r.traceEnabled&&GR(r.host,ws.package_json_does_not_have_a_0_field,t));const i=e[t];if(typeof i===n&&null!==i)return i;r.traceEnabled&&GR(r.host,ws.Expected_type_of_0_field_in_package_json_to_be_1_got_2,t,n,null===i?"null":typeof i)}function aL(e,t,n,r){const i=sL(e,t,"string",r);if(void 0===i)return;if(!i)return void(r.traceEnabled&&GR(r.host,ws.package_json_had_a_falsy_0_field,t));const o=ts(Zo(n,i));return r.traceEnabled&&GR(r.host,ws.package_json_has_0_field_1_that_references_2,t,i,o),o}function cL(e,t){const n=function(e,t){const n=sL(e,"typesVersions","object",t);if(void 0!==n)return t.traceEnabled&&GR(t.host,ws.package_json_has_a_typesVersions_field_with_version_specific_path_mappings),n}(e,t);if(void 0===n)return;if(t.traceEnabled)for(const s in n)je(n,s)&&!On.tryParse(s)&&GR(t.host,ws.package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range,s);const r=lL(n);if(!r)return void(t.traceEnabled&&GR(t.host,ws.package_json_does_not_have_a_typesVersions_entry_that_matches_version_0,l));const{version:i,paths:o}=r;if("object"==typeof o)return r;t.traceEnabled&&GR(t.host,ws.Expected_type_of_0_field_in_package_json_to_be_1_got_2,`typesVersions['${i}']`,"object",typeof o)}function lL(e){IR||(IR=new Pn(u));for(const t in e){if(!je(e,t))continue;const n=On.tryParse(t);if(void 0!==n&&n.test(IR))return{version:t,paths:e[t]}}}function uL(e,t){if(e.typeRoots)return e.typeRoots;let n;return e.configFilePath?n=Vo(e.configFilePath):t.getCurrentDirectory&&(n=t.getCurrentDirectory()),void 0!==n?function(e){let t;return xs(ts(e),(e=>{const n=Zo(e,dL);(t??(t=[])).push(n)})),t}(n):void 0}var dL=Zo("node_modules","@types");function _L(e,t,n){const r=WL(e,t,n),i=function(e,t,n){return 0===ps(e,t,!("function"==typeof n.useCaseSensitiveFileNames?n.useCaseSensitiveFileNames():n.useCaseSensitiveFileNames))}(e,r,t);return{resolvedFileName:i?e:r,originalPath:i?void 0:e}}function pL(e,t,n){return Zo(e,Qt(e,"/node_modules/@types")||Qt(e,"/node_modules/@types/")?Nj(t,n):t)}function fL(e,t,n,r,i,o,s){Tn.assert("string"==typeof e,"Non-string value passed to `ts.resolveTypeReferenceDirective`, likely by a wrapping package working with an outdated `resolveTypeReferenceDirectives` signature. This is probably not a problem in TS itself.");const a=QR(n,r);i&&(n=i.commandLine.options);const c=t?Vo(t):void 0;let l=c?null==o?void 0:o.getFromDirectoryCache(e,s,c,i):void 0;if(l||!c||za(e)||(l=null==o?void 0:o.getFromNonRelativeNameCache(e,s,c,i)),l)return a&&(GR(r,ws.Resolving_type_reference_directive_0_containing_file_1,e,t),i&&GR(r,ws.Using_compiler_options_of_project_reference_redirect_0,i.sourceFile.fileName),GR(r,ws.Resolution_for_type_reference_directive_0_was_found_in_cache_from_location_1,e,c),S(l)),l;const u=uL(n,r);a&&(void 0===t?void 0===u?GR(r,ws.Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set,e):GR(r,ws.Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1,e,u):void 0===u?GR(r,ws.Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set,e,t):GR(r,ws.Resolving_type_reference_directive_0_containing_file_1_root_directory_2,e,t,u),i&&GR(r,ws.Using_compiler_options_of_project_reference_redirect_0,i.sourceFile.fileName));const d=[],_=[];let p=mL(n);void 0!==s&&(p|=30);const f=FS(n);99===s&&3<=f&&f<=99&&(p|=32);const m=8&p?hL(n,s):[],h=[],g={compilerOptions:n,host:r,traceEnabled:a,failedLookupLocations:d,affectingLocations:_,packageJsonInfoCache:o,features:p,conditions:m,requestContainingDirectory:c,reportDiagnostic:e=>{h.push(e)},isConfigLookup:!1,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1};let v,b=function(){if(u&&u.length)return a&&GR(r,ws.Resolving_with_primary_search_path_0,u.join(", ")),y(u,(t=>{const i=pL(t,e,g),o=Wb(t,r);if(!o&&a&&GR(r,ws.Directory_0_does_not_exist_skipping_all_lookups_in_it,t),n.typeRoots){const e=$L(4,i,!o,g);if(e){const t=YL(e.path);return eL(YR(t?_j(t,!1,g):void 0,e,g))}}return eL(oj(4,i,!o,g))}));a&&GR(r,ws.Root_directory_cannot_be_determined_skipping_primary_search_paths)}(),x=!0;if(b||(b=function(){const i=t&&Vo(t);if(void 0!==i){let o;if(n.typeRoots&&Qt(t,SK))a&&GR(r,ws.Resolving_type_reference_directive_for_program_that_specifies_custom_typeRoots_skipping_lookup_in_node_modules_folder);else if(a&&GR(r,ws.Looking_up_in_node_modules_folder_initial_location_0,i),za(e)){const{path:t}=JL(i,e);o=HL(4,t,!1,g,!0)}else{const t=Sj(4,e,i,g,void 0,void 0);o=t&&t.value}return eL(o)}a&&GR(r,ws.Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_modules_folder)}(),x=!1),b){const{fileName:e,packageId:t}=b;let i,o=e;n.preserveSymlinks||({resolvedFileName:o,originalPath:i}=_L(e,r,a)),v={primary:x,resolvedFileName:o,originalPath:i,packageId:t,isExternalLibraryImport:QL(e)}}return l={resolvedTypeReferenceDirective:v,failedLookupLocations:rL(d),affectingLocations:rL(_),resolutionDiagnostics:rL(h)},c&&o&&!o.isReadonly&&(o.getOrCreateCacheForDirectory(c,i).set(e,s,l),za(e)||o.getOrCreateCacheForNonRelativeName(e,s,i).set(c,l)),a&&S(l),l;function S(t){var n;(null==(n=t.resolvedTypeReferenceDirective)?void 0:n.resolvedFileName)?t.resolvedTypeReferenceDirective.packageId?GR(r,ws.Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3,e,t.resolvedTypeReferenceDirective.resolvedFileName,T_(t.resolvedTypeReferenceDirective.packageId),t.resolvedTypeReferenceDirective.primary):GR(r,ws.Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2,e,t.resolvedTypeReferenceDirective.resolvedFileName,t.resolvedTypeReferenceDirective.primary):GR(r,ws.Type_reference_directive_0_was_not_resolved,e)}}function mL(e){let t=0;switch(FS(e)){case 3:case 99:case 100:t=30}return e.resolvePackageJsonExports?t|=8:!1===e.resolvePackageJsonExports&&(t&=-9),e.resolvePackageJsonImports?t|=2:!1===e.resolvePackageJsonImports&&(t&=-3),t}function hL(e,t){const n=FS(e);if(void 0===t)if(100===n)t=99;else if(2===n)return[];const r=99===t?["import"]:["require"];return e.noDtsResolution||r.push("types"),100!==n&&r.push("node"),te(r,e.customConditions)}function gL(e,t,n,r,i){const o=cj(null==i?void 0:i.getPackageJsonInfoCache(),r,n);return xs(t,(t=>{if("node_modules"!==Ko(t)){const n=Zo(t,"node_modules");return _j(Zo(n,e),!1,o)}}))}function yL(e,t){if(e.types)return e.types;const n=[];if(t.directoryExists&&t.getDirectories){const r=uL(e,t);if(r)for(const e of r)if(t.directoryExists(e))for(const r of t.getDirectories(e)){const i=ts(r),o=Zo(e,i,"package.json");if(!(t.fileExists(o)&&null===Kb(o,t).typings)){const e=Ko(i);46!==e.charCodeAt(0)&&n.push(e)}}}return n}function vL(e){return!!(null==e?void 0:e.contents)}function bL(e){return!!e&&!e.contents}function xL(e){var t;if(null===e||"object"!=typeof e)return""+e;if(at(e))return`[${null==(t=e.map((e=>xL(e))))?void 0:t.join(",")}]`;let n="{";for(const r in e)je(e,r)&&(n+=`${r}: ${xL(e[r])}`);return n+"}"}function SL(e,t){return t.map((t=>xL(sT(e,t)))).join("|")+`|${e.pathsBasePath}`}function TL(e,t){const n=new Map,r=new Map;let i=new Map;return e&&n.set(e,i),{getMapOfCacheRedirects:function(e){return e?o(e.commandLine.options,!1):i},getOrCreateMapOfCacheRedirects:function(e){return e?o(e.commandLine.options,!0):i},update:function(t){e!==t&&(e?i=o(t,!0):n.set(t,i),e=t)},clear:function(){const o=e&&t.get(e);i.clear(),n.clear(),t.clear(),r.clear(),e&&(o&&t.set(e,o),n.set(e,i))},getOwnMap:()=>i};function o(t,o){let a=n.get(t);if(a)return a;const c=s(t);if(a=r.get(c),!a){if(e){const t=s(e);t===c?a=i:r.has(t)||r.set(t,i)}o&&(a??(a=new Map)),a&&r.set(c,a)}return a&&n.set(t,a),a}function s(e){let n=t.get(e);return n||t.set(e,n=SL(e,FO)),n}}function wL(e,t,n,r){const i=e.getOrCreateMapOfCacheRedirects(t);let o=i.get(n);return o||(o=r(),i.set(n,o)),o}function kL(e,t){return void 0===t?e:`${t}|${e}`}function EL(){const e=new Map,t=new Map,n={get:(t,n)=>e.get(r(t,n)),set:(t,i,o)=>(e.set(r(t,i),o),n),delete:(t,i)=>(e.delete(r(t,i)),n),has:(t,n)=>e.has(r(t,n)),forEach:n=>e.forEach(((e,r)=>{const[i,o]=t.get(r);return n(e,i,o)})),size:()=>e.size};return n;function r(e,n){const r=kL(e,n);return t.set(r,[e,n]),r}}function CL(e){return e.resolvedModule&&(e.resolvedModule.originalPath||e.resolvedModule.resolvedFileName)}function NL(e){return e.resolvedTypeReferenceDirective&&(e.resolvedTypeReferenceDirective.originalPath||e.resolvedTypeReferenceDirective.resolvedFileName)}function AL(e,t,n,r,i){const o=TL(n,i);return{getFromNonRelativeNameCache:function(e,t,n,r){var i,s;return Tn.assert(!za(e)),null==(s=null==(i=o.getMapOfCacheRedirects(r))?void 0:i.get(kL(e,t)))?void 0:s.get(n)},getOrCreateCacheForNonRelativeName:function(e,t,n){return Tn.assert(!za(e)),wL(o,n,kL(e,t),s)},clear:function(){o.clear()},update:function(e){o.update(e)}};function s(){const n=new Map;return{get:function(r){return n.get(rs(r,e,t))},set:function(i,o){const s=rs(i,e,t);if(n.has(s))return;n.set(s,o);const a=r(o),c=a&&function(n,r){const i=rs(Vo(r),e,t);let o=0;const s=Math.min(n.length,i.length);for(;o<s&&n.charCodeAt(o)===i.charCodeAt(o);)o++;if(o===n.length&&(i.length===o||i[o]===ko))return n;const a=qo(n);if(o<a)return;const c=n.lastIndexOf(ko,o-1);if(-1===c)return;return n.substr(0,Math.max(c,a))}(s,a);let l=s;for(;l!==c;){const e=Vo(l);if(e===l||n.has(e))break;n.set(e,o),l=e}}}}}function IL(e,t,n,r,i,o){o??(o=new Map);const s=function(e,t,n,r){const i=TL(n,r);return{getFromDirectoryCache:function(n,r,o,s){var a,c;const l=rs(o,e,t);return null==(c=null==(a=i.getMapOfCacheRedirects(s))?void 0:a.get(l))?void 0:c.get(n,r)},getOrCreateCacheForDirectory:function(n,r){const o=rs(n,e,t);return wL(i,r,o,(()=>EL()))},clear:function(){i.clear()},update:function(e){i.update(e)},directoryToModuleNameMap:i}}(e,t,n,o),a=AL(e,t,n,i,o);return r??(r=function(e,t){let n;return{getPackageJsonInfo:function(r){return null==n?void 0:n.get(rs(r,e,t))},setPackageJsonInfo:function(r,i){(n||(n=new Map)).set(rs(r,e,t),i)},clear:function(){n=void 0},getInternalMap:function(){return n}}}(e,t)),{...r,...s,...a,clear:function(){c(),r.clear()},update:function(e){s.update(e),a.update(e)},getPackageJsonInfoCache:()=>r,clearAllExceptPackageJsonInfoCache:c,optionsToRedirectsKey:o};function c(){s.clear(),a.clear()}}function DL(e,t,n,r,i){const o=IL(e,t,n,r,CL,i);return o.getOrCreateCacheForModuleName=(e,t,n)=>o.getOrCreateCacheForNonRelativeName(e,t,n),o}function PL(e,t,n,r,i){return IL(e,t,n,r,NL,i)}function ML(e){return{moduleResolution:2,traceResolution:e.traceResolution}}function OL(e,t,n,r,i){return RL(e,t,ML(n),r,i)}function FL(e,t,n,r){const i=Vo(t);return n.getFromDirectoryCache(e,r,i,void 0)}function RL(e,t,n,r,i,o,s){var a,c,l;const u=QR(n,r);o&&(n=o.commandLine.options),u&&(GR(r,ws.Resolving_module_0_from_1,e,t),o&&GR(r,ws.Using_compiler_options_of_project_reference_redirect_0,o.sourceFile.fileName));const d=Vo(t);let _=null==i?void 0:i.getFromDirectoryCache(e,s,d,o);if(_)u&&GR(r,ws.Resolution_for_module_0_was_found_in_cache_from_location_1,e,d);else{let p=n.moduleResolution;switch(void 0===p?(p=FS(n),u&&GR(r,ws.Module_resolution_kind_is_not_specified_using_0,Si[p])):u&&GR(r,ws.Explicitly_specified_module_resolution_kind_Colon_0,Si[p]),null==(a=rr)||a.logStartResolveModule(e),p){case 3:case 99:_=function(e,t,n,r,i,o,s){return UL(30,e,t,n,r,i,o,s)}(e,t,n,r,i,o,s);break;case 2:_=qL(e,t,n,r,i,o,s?hL(n,s):void 0);break;case 1:_=Oj(e,t,n,r,i,o);break;case 100:_=BL(e,t,n,r,i,o,s?hL(n,s):void 0);break;default:return Tn.fail(`Unexpected moduleResolution: ${p}`)}_&&_.resolvedModule&&(null==(c=rr)||c.logInfoEvent(`Module "${e}" resolved to "${_.resolvedModule.resolvedFileName}"`)),null==(l=rr)||l.logStopResolveModule(_&&_.resolvedModule?""+_.resolvedModule.resolvedFileName:"null"),i&&!i.isReadonly&&(i.getOrCreateCacheForDirectory(d,o).set(e,s,_),za(e)||i.getOrCreateCacheForNonRelativeName(e,s,o).set(d,_))}return u&&(_.resolvedModule?_.resolvedModule.packageId?GR(r,ws.Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2,e,_.resolvedModule.resolvedFileName,T_(_.resolvedModule.packageId)):GR(r,ws.Module_name_0_was_successfully_resolved_to_1,e,_.resolvedModule.resolvedFileName):GR(r,ws.Module_name_0_was_not_resolved,e)),_}function LL(e,t,n,r,i){const o=function(e,t,n,r){var i;const{baseUrl:o,paths:s,configFile:a}=r.compilerOptions;if(s&&!Oo(t)){r.traceEnabled&&(o&&GR(r.host,ws.baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1,o,t),GR(r.host,ws.paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0,t));return Ej(e,t,cv(r.compilerOptions,r.host),s,(null==a?void 0:a.configFileSpecs)?(i=a.configFileSpecs).pathPatterns||(i.pathPatterns=uw(s)):void 0,n,!1,r)}}(e,t,r,i);return o?o.value:za(t)?function(e,t,n,r,i){if(!i.compilerOptions.rootDirs)return;i.traceEnabled&&GR(i.host,ws.rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0,t);const o=ts(Zo(n,t));let s,a;for(const c of i.compilerOptions.rootDirs){let e=ts(c);Qt(e,ko)||(e+=ko);const t=cn(o,e)&&(void 0===a||a.length<e.length);i.traceEnabled&&GR(i.host,ws.Checking_if_0_is_the_longest_matching_prefix_for_1_2,e,o,t),t&&(a=e,s=c)}if(a){i.traceEnabled&&GR(i.host,ws.Longest_matching_prefix_for_0_is_1,o,a);const t=o.substr(a.length);i.traceEnabled&&GR(i.host,ws.Loading_0_from_the_root_dir_1_candidate_location_2,t,a,o);const c=r(e,o,!Wb(n,i.host),i);if(c)return c;i.traceEnabled&&GR(i.host,ws.Trying_other_entries_in_rootDirs);for(const n of i.compilerOptions.rootDirs){if(n===s)continue;const o=Zo(ts(n),t);i.traceEnabled&&GR(i.host,ws.Loading_0_from_the_root_dir_1_candidate_location_2,t,n,o);const a=r(e,o,!Wb(Vo(o),i.host),i);if(a)return a}i.traceEnabled&&GR(i.host,ws.Module_resolution_using_rootDirs_has_failed)}return}(e,t,n,r,i):function(e,t,n,r){const{baseUrl:i}=r.compilerOptions;if(!i)return;r.traceEnabled&&GR(r.host,ws.baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1,i,t);const o=ts(Zo(i,t));r.traceEnabled&&GR(r.host,ws.Resolving_module_name_0_relative_to_base_url_1_2,t,i,o);return n(e,o,!Wb(Vo(o),r.host),r)}(e,t,r,i)}function jL(e,t,n){const{resolvedModule:r,failedLookupLocations:i}=function(e,t,n){return KL(0,e,t,{moduleResolution:2,allowJs:!0},n,void 0,2,!1,void 0,void 0)}(e,t,n);if(!r)throw new Error(`Could not resolve JS module '${e}' starting at '${t}'. Looked in: ${null==i?void 0:i.join(", ")}`);return r.resolvedFileName}var zL=(e=>(e[e.None=0]="None",e[e.Imports=2]="Imports",e[e.SelfName=4]="SelfName",e[e.Exports=8]="Exports",e[e.ExportsPatternTrailers=16]="ExportsPatternTrailers",e[e.AllFeatures=30]="AllFeatures",e[e.Node16Default=30]="Node16Default",e[e.NodeNextDefault=30]="NodeNextDefault",e[e.BundlerDefault=30]="BundlerDefault",e[e.EsmMode=32]="EsmMode",e))(zL||{});function UL(e,t,n,r,i,o,s,a,c){const l=Vo(n),u=99===a?32:0;let d=r.noDtsResolution?3:7;return qS(r)&&(d|=8),KL(e|u,t,l,r,i,o,d,!1,s,c)}function BL(e,t,n,r,i,o,s){const a=Vo(t);let c=n.noDtsResolution?3:7;return qS(n)&&(c|=8),KL(mL(n),e,a,n,r,i,c,!1,o,s)}function qL(e,t,n,r,i,o,s,a){let c;return a?c=8:n.noDtsResolution?(c=3,qS(n)&&(c|=8)):c=qS(n)?15:7,KL(s?30:0,e,Vo(t),n,r,i,c,!!a,o,s)}function VL(e,t,n){return KL(30,e,Vo(t),{moduleResolution:99},n,void 0,8,!0,void 0,void 0)}function KL(e,t,n,r,i,o,s,a,c,l){var u,d,p,f,h;const g=QR(r,i),y=[],v=[],b=FS(r);l??(l=hL(r,100===b||2===b?void 0:32&e?99:1));const x=[],S={compilerOptions:r,host:i,traceEnabled:g,failedLookupLocations:y,affectingLocations:v,packageJsonInfoCache:o,features:e,conditions:l??_,requestContainingDirectory:n,reportDiagnostic:e=>{x.push(e)},isConfigLookup:a,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1};let w,k;if(g&&$S(b)&&GR(i,ws.Resolving_in_0_mode_with_conditions_1,32&e?"ESM":"CJS",S.conditions.map((e=>`'${e}'`)).join(", ")),2===b){const e=5&s,t=-6&s;w=e&&E(e,S)||t&&E(t,S)||void 0}else w=E(s,S);if(S.resolvedPackageDirectory&&!a&&!za(t)){const t=(null==w?void 0:w.value)&&5&s&&!fj(5,w.value.resolved.extension);if((null==(u=null==w?void 0:w.value)?void 0:u.isExternalLibraryImport)&&t&&8&e&&(null==l?void 0:l.includes("import"))){zj(S,ws.Resolution_of_non_relative_name_failed_trying_with_modern_Node_resolution_features_disabled_to_see_if_npm_library_needs_configuration_update);const e=E(5&s,{...S,features:-9&S.features,reportDiagnostic:pt});(null==(d=null==e?void 0:e.value)?void 0:d.isExternalLibraryImport)&&(k=e.value.resolved.path)}else if((!(null==w?void 0:w.value)||t)&&2===b){zj(S,ws.Resolution_of_non_relative_name_failed_trying_with_moduleResolution_bundler_to_see_if_project_may_need_configuration_update);const e={...S.compilerOptions,moduleResolution:100},t=E(5&s,{...S,compilerOptions:e,features:30,conditions:hL(e),reportDiagnostic:pt});(null==(p=null==t?void 0:t.value)?void 0:p.isExternalLibraryImport)&&(k=t.value.resolved.path)}}return tL(t,null==(f=null==w?void 0:w.value)?void 0:f.resolved,null==(h=null==w?void 0:w.value)?void 0:h.isExternalLibraryImport,y,v,x,S,o,k);function E(r,s){const a=LL(r,t,n,((e,t,n,r)=>HL(e,t,n,r,!0)),s);if(a)return jj({resolved:a,isExternalLibraryImport:QL(a.path)});if(za(t)){const{path:e,parts:i}=JL(n,t),o=HL(r,e,!1,s,!0);return o&&jj({resolved:o,isExternalLibraryImport:A(i,"node_modules")})}{let a;if(2&e&&cn(t,"#")&&(a=function(e,t,n,r,i,o){var s,a;if("#"===t||cn(t,"#/"))return r.traceEnabled&&GR(r.host,ws.Invalid_import_specifier_0_has_no_possible_resolutions,t),jj(void 0);const c=es(Zo(n,"dummy"),null==(a=(s=r.host).getCurrentDirectory)?void 0:a.call(s)),l=lj(c,r);if(!l)return r.traceEnabled&&GR(r.host,ws.Directory_0_has_no_containing_package_json_scope_Imports_will_not_resolve,c),jj(void 0);if(!l.contents.packageJsonContent.imports)return r.traceEnabled&&GR(r.host,ws.package_json_scope_0_has_no_imports_defined,l.packageDirectory),jj(void 0);const u=vj(e,r,i,o,t,l.contents.packageJsonContent.imports,l,!0);if(u)return u;r.traceEnabled&&GR(r.host,ws.Import_specifier_0_does_not_exist_in_package_json_scope_at_path_1,t,l.packageDirectory);return jj(void 0)}(r,t,n,s,o,c)),!a&&4&e&&(a=function(e,t,n,r,i,o){var s,a;const c=es(Zo(n,"dummy"),null==(a=(s=r.host).getCurrentDirectory)?void 0:a.call(s)),l=lj(c,r);if(!l||!l.contents.packageJsonContent.exports)return;if("string"!=typeof l.contents.packageJsonContent.name)return;const u=Ho(t),d=Ho(l.contents.packageJsonContent.name);if(!T(d,((e,t)=>u[t]===e)))return;const _=u.slice(d.length),p=m(_)?`.${ko}${_.join(ko)}`:".";if(HS(r.compilerOptions)&&!QL(n))return gj(l,e,p,r,i,o);const f=5&e,h=-6&e;return gj(l,f,p,r,i,o)||gj(l,h,p,r,i,o)}(r,t,n,s,o,c)),!a){if(t.includes(":"))return void(g&&GR(i,ws.Skipping_module_0_that_looks_like_an_absolute_URI_target_file_types_Colon_1,t,$R(r)));g&&GR(i,ws.Loading_module_0_from_node_modules_folder_target_file_types_Colon_1,t,$R(r)),a=Sj(r,t,n,s,o,c)}return 4&r&&(a??(a=Fj(t,s))),a&&{value:a.value&&{resolved:a.value,isExternalLibraryImport:!0}}}}}function JL(e,t){const n=Zo(e,t),r=Ho(n),i=Ne(r);return{path:"."===i||".."===i?os(ts(n)):ts(n),parts:r}}function WL(e,t,n){if(!t.realpath)return e;const r=ts(t.realpath(e));return n&&GR(t,ws.Resolving_real_path_for_0_result_1,e,r),r}function HL(e,t,n,r,i){if(r.traceEnabled&&GR(r.host,ws.Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_types_Colon_1,t,$R(e)),!zo(t)){if(!n){const e=Vo(t);Wb(e,r.host)||(r.traceEnabled&&GR(r.host,ws.Directory_0_does_not_exist_skipping_all_lookups_in_it,e),n=!0)}const o=$L(e,t,n,r);if(o){const e=i?YL(o.path):void 0;return YR(e?_j(e,!1,r):void 0,o,r)}}if(!n){Wb(t,r.host)||(r.traceEnabled&&GR(r.host,ws.Directory_0_does_not_exist_skipping_all_lookups_in_it,t),n=!0)}if(!(32&r.features))return oj(e,t,n,r,i)}var GL="/node_modules/";function QL(e){return e.includes(GL)}function YL(e,t){const n=ts(e),r=n.lastIndexOf(GL);if(-1===r)return;const i=r+GL.length;let o=ZL(n,i,t);return 64===n.charCodeAt(i)&&(o=ZL(n,o,t)),n.slice(0,o)}function ZL(e,t,n){const r=e.indexOf(ko,t+1);return-1===r?n?e.length:t:r}function XL(e,t,n,r){return ZR($L(e,t,n,r))}function $L(e,t,n,r){const i=ej(e,t,n,r);if(i)return i;if(!(32&r.features)){const i=nj(t,e,"",n,r);if(i)return i}}function ej(e,t,n,r){if(!Ko(t).includes("."))return;let i=ow(t);i===t&&(i=t.substring(0,t.lastIndexOf(".")));const o=t.substring(i.length);return r.traceEnabled&&GR(r.host,ws.File_name_0_has_a_1_extension_stripping_it,t,o),nj(i,e,o,n,r)}function tj(e,t,n,r){if(1&e&&jo(t,WT)||4&e&&jo(t,JT)){return void 0!==rj(t,n,r)?{path:t,ext:jb(t),resolvedUsingTsExtension:void 0}:void 0}if(r.isConfigLookup&&8===e&&Lo(t,".json")){return void 0!==rj(t,n,r)?{path:t,ext:".json",resolvedUsingTsExtension:void 0}:void 0}return ej(e,t,n,r)}function nj(e,t,n,r,i){if(!r){const t=Vo(e);t&&(r=!Wb(t,i.host))}switch(n){case".mjs":case".mts":case".d.mts":return 1&t&&o(".mts",".mts"===n||".d.mts"===n)||4&t&&o(".d.mts",".mts"===n||".d.mts"===n)||2&t&&o(".mjs")||void 0;case".cjs":case".cts":case".d.cts":return 1&t&&o(".cts",".cts"===n||".d.cts"===n)||4&t&&o(".d.cts",".cts"===n||".d.cts"===n)||2&t&&o(".cjs")||void 0;case".json":return 4&t&&o(".d.json.ts")||8&t&&o(".json")||void 0;case".tsx":case".jsx":return 1&t&&(o(".tsx",".tsx"===n)||o(".ts",".tsx"===n))||4&t&&o(".d.ts",".tsx"===n)||2&t&&(o(".jsx")||o(".js"))||void 0;case".ts":case".d.ts":case".js":case"":return 1&t&&(o(".ts",".ts"===n||".d.ts"===n)||o(".tsx",".ts"===n||".d.ts"===n))||4&t&&o(".d.ts",".ts"===n||".d.ts"===n)||2&t&&(o(".js")||o(".jsx"))||i.isConfigLookup&&o(".json")||void 0;default:return 4&t&&!lO(e+n)&&o(`.d${n}.ts`)||void 0}function o(t,n){const o=rj(e+t,r,i);return void 0===o?void 0:{path:o,ext:t,resolvedUsingTsExtension:!i.candidateIsFromPackageJsonField&&n}}}function rj(e,t,n){var r;if(!(null==(r=n.compilerOptions.moduleSuffixes)?void 0:r.length))return ij(e,t,n);const i=hw(e)??"",o=i?aw(e,i):e;return h(n.compilerOptions.moduleSuffixes,(e=>ij(o+e+i,t,n)))}function ij(e,t,n){var r;if(!t){if(n.host.fileExists(e))return n.traceEnabled&&GR(n.host,ws.File_0_exists_use_it_as_a_name_resolution_result,e),e;n.traceEnabled&&GR(n.host,ws.File_0_does_not_exist,e)}null==(r=n.failedLookupLocations)||r.push(e)}function oj(e,t,n,r,i=!0){const o=i?_j(t,n,r):void 0;return YR(o,pj(e,t,n,r,o&&o.contents.packageJsonContent,o&&uj(o,r)),r)}function sj(e,t,n,r,i){if(!i&&void 0!==e.contents.resolvedEntrypoints)return e.contents.resolvedEntrypoints;let o;const s=5|(i?2:0),a=mL(t),c=cj(null==r?void 0:r.getPackageJsonInfoCache(),n,t);c.conditions=hL(t),c.requestContainingDirectory=e.packageDirectory;const l=pj(s,e.packageDirectory,!1,c,e.contents.packageJsonContent,uj(e,c));if(o=_e(o,null==l?void 0:l.path),8&a&&e.contents.packageJsonContent.exports){const r=ie([hL(t,99),hL(t,1)],le);for(const t of r){const r={...c,failedLookupLocations:[],conditions:t,host:n},i=aj(e,e.contents.packageJsonContent.exports,r,s);if(i)for(const e of i)o=ge(o,e.path)}}return e.contents.resolvedEntrypoints=o||!1}function aj(e,t,n,r){let i;if(at(t))for(const s of t)o(s);else if("object"==typeof t&&null!==t&&hj(t))for(const s in t)o(t[s]);else o(t);return i;function o(t){var s,a;if("string"==typeof t&&cn(t,"./"))if(t.includes("*")&&n.host.readDirectory){if(t.indexOf("*")!==t.lastIndexOf("*"))return!1;n.host.readDirectory(e.packageDirectory,function(e){const t=[];return 1&e&&t.push(...WT),2&e&&t.push(...qT),4&e&&t.push(...JT),8&e&&t.push(".json"),t}(r),void 0,[cs(Ck(t,"**/*"),".*")]).forEach((e=>{i=ge(i,{path:e,ext:Wo(e),resolvedUsingTsExtension:void 0})}))}else{const o=Ho(t).slice(2);if(o.includes("..")||o.includes(".")||o.includes("node_modules"))return!1;const c=es(Zo(e.packageDirectory,t),null==(a=(s=n.host).getCurrentDirectory)?void 0:a.call(s)),l=tj(r,c,!1,n);if(l)return i=ge(i,l,((e,t)=>e.path===t.path)),!0}else if(Array.isArray(t))for(const e of t){if(o(e))return!0}else if("object"==typeof t&&null!==t)return h(Ue(t),(e=>{if("default"===e||A(n.conditions,e)||xj(n.conditions,e))return o(t[e]),!0}))}}function cj(e,t,n){return{host:t,compilerOptions:n,traceEnabled:QR(n,t),failedLookupLocations:void 0,affectingLocations:void 0,packageJsonInfoCache:e,features:0,conditions:_,requestContainingDirectory:void 0,reportDiagnostic:pt,isConfigLookup:!1,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1}}function lj(e,t){const n=Ho(e);for(n.pop();n.length>0;){const e=_j(Go(n),!1,t);if(e)return e;n.pop()}}function uj(e,t){return void 0===e.contents.versionPaths&&(e.contents.versionPaths=cL(e.contents.packageJsonContent,t)||!1),e.contents.versionPaths||void 0}function dj(e,t){return void 0===e.contents.peerDependencies&&(e.contents.peerDependencies=function(e,t){const n=sL(e.contents.packageJsonContent,"peerDependencies","object",t);if(void 0===n)return;t.traceEnabled&&GR(t.host,ws.package_json_has_a_peerDependencies_field);const r=WL(e.packageDirectory,t.host,t.traceEnabled),i=r.substring(0,r.lastIndexOf("node_modules")+12)+ko;let o="";for(const s in n)if(je(n,s)){const e=_j(i+s,!1,t);if(e){const n=e.contents.packageJsonContent.version;o+=`+${s}@${n}`,t.traceEnabled&&GR(t.host,ws.Found_peerDependency_0_with_1_version,s,n)}else t.traceEnabled&&GR(t.host,ws.Failed_to_find_peerDependency_0,s)}return o}(e,t)||!1),e.contents.peerDependencies||void 0}function _j(e,t,n){var r,i,o,s,a,c;const{host:l,traceEnabled:u}=n,d=Zo(e,"package.json");if(t)return void(null==(r=n.failedLookupLocations)||r.push(d));const _=null==(i=n.packageJsonInfoCache)?void 0:i.getPackageJsonInfo(d);if(void 0!==_)return vL(_)?(u&&GR(l,ws.File_0_exists_according_to_earlier_cached_lookups,d),null==(o=n.affectingLocations)||o.push(d),_.packageDirectory===e?_:{packageDirectory:e,contents:_.contents}):(_.directoryExists&&u&&GR(l,ws.File_0_does_not_exist_according_to_earlier_cached_lookups,d),void(null==(s=n.failedLookupLocations)||s.push(d)));const p=Wb(e,l);if(p&&l.fileExists(d)){const t=Kb(d,l);u&&GR(l,ws.Found_package_json_at_0,d);const r={packageDirectory:e,contents:{packageJsonContent:t,versionPaths:void 0,resolvedEntrypoints:void 0,peerDependencies:void 0}};return n.packageJsonInfoCache&&!n.packageJsonInfoCache.isReadonly&&n.packageJsonInfoCache.setPackageJsonInfo(d,r),null==(a=n.affectingLocations)||a.push(d),r}p&&u&&GR(l,ws.File_0_does_not_exist,d),n.packageJsonInfoCache&&!n.packageJsonInfoCache.isReadonly&&n.packageJsonInfoCache.setPackageJsonInfo(d,{packageDirectory:e,directoryExists:p}),null==(c=n.failedLookupLocations)||c.push(d)}function pj(e,t,n,r,i,o){let s;i&&(s=r.isConfigLookup?function(e,t,n){return aL(e,"tsconfig",t,n)}(i,t,r):4&e&&function(e,t,n){return aL(e,"typings",t,n)||aL(e,"types",t,n)}(i,t,r)||7&e&&function(e,t,n){return aL(e,"main",t,n)}(i,t,r)||void 0);const a=(e,t,n,r)=>{const o=tj(e,t,n,r);if(o)return ZR(o);const s=4===e?5:e,a=r.features,c=r.candidateIsFromPackageJsonField;r.candidateIsFromPackageJsonField=!0,"module"!==(null==i?void 0:i.type)&&(r.features&=-33);const l=HL(s,t,n,r,!1);return r.features=a,r.candidateIsFromPackageJsonField=c,l},c=s?!Wb(Vo(s),r.host):void 0,l=n||!Wb(t,r.host),d=Zo(t,r.isConfigLookup?"tsconfig":"index");if(o&&(!s||fs(t,s))){const n=gs(t,s||d,!1);r.traceEnabled&&GR(r.host,ws.package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2,o.version,u,n);const i=Ej(e,n,t,o.paths,void 0,a,c||l,r);if(i)return XR(i.value)}const _=s&&XR(a(e,s,c,r));return _||(32&r.features?void 0:$L(e,d,l,r))}function fj(e,t){return 2&e&&(".js"===t||".jsx"===t||".mjs"===t||".cjs"===t)||1&e&&(".ts"===t||".tsx"===t||".mts"===t||".cts"===t)||4&e&&(".d.ts"===t||".d.mts"===t||".d.cts"===t)||8&e&&".json"===t||!1}function mj(e){let t=e.indexOf(ko);return"@"===e[0]&&(t=e.indexOf(ko,t+1)),-1===t?{packageName:e,rest:""}:{packageName:e.slice(0,t),rest:e.slice(t+1)}}function hj(e){return T(Ue(e),(e=>cn(e,".")))}function gj(e,t,n,r,i,o){if(e.contents.packageJsonContent.exports){if("."===n){let s;if("string"==typeof e.contents.packageJsonContent.exports||Array.isArray(e.contents.packageJsonContent.exports)||"object"==typeof e.contents.packageJsonContent.exports&&!$(Ue(e.contents.packageJsonContent.exports),(e=>cn(e,".")))?s=e.contents.packageJsonContent.exports:je(e.contents.packageJsonContent.exports,".")&&(s=e.contents.packageJsonContent.exports["."]),s){return bj(t,r,i,o,n,e,!1)(s,"",!1,".")}}else if(hj(e.contents.packageJsonContent.exports)){if("object"!=typeof e.contents.packageJsonContent.exports)return r.traceEnabled&&GR(r.host,ws.Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1,n,e.packageDirectory),jj(void 0);const s=vj(t,r,i,o,n,e.contents.packageJsonContent.exports,e,!1);if(s)return s}return r.traceEnabled&&GR(r.host,ws.Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1,n,e.packageDirectory),jj(void 0)}}function yj(e,t){const n=e.indexOf("*"),r=t.indexOf("*"),i=-1===n?e.length:n+1,o=-1===r?t.length:r+1;return i>o?-1:o>i||-1===n?1:-1===r||e.length>t.length?-1:t.length>e.length?1:0}function vj(e,t,n,r,i,o,s,a){const c=bj(e,t,n,r,i,s,a);if(!Qt(i,ko)&&!i.includes("*")&&je(o,i)){return c(o[i],"",!1,i)}const l=ve(M(Ue(o),(e=>function(e){const t=e.indexOf("*");return-1!==t&&t===e.lastIndexOf("*")}(e)||Qt(e,"/"))),yj);for(const d of l){if(16&t.features&&u(d,i)){const e=o[d],t=d.indexOf("*");return c(e,i.substring(d.substring(0,t).length,i.length-(d.length-1-t)),!0,d)}if(Qt(d,"*")&&cn(i,d.substring(0,d.length-1))){return c(o[d],i.substring(d.length-1),!0,d)}if(cn(i,d)){return c(o[d],i.substring(d.length),!1,d)}}function u(e,t){if(Qt(e,"*"))return!1;const n=e.indexOf("*");return-1!==n&&(cn(t,e.substring(0,n))&&Qt(t,e.substring(n+1)))}}function bj(e,t,n,r,i,o,s){return function a(c,l,u,d){if("string"==typeof c){if(!u&&l.length>0&&!Qt(c,"/"))return t.traceEnabled&&GR(t.host,ws.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,o.packageDirectory,i),jj(void 0);if(!cn(c,"./")){if(s&&!cn(c,"../")&&!cn(c,"/")&&!Do(c)){const i=u?c.replace(/\*/g,l):c+l;zj(t,ws.Using_0_subpath_1_with_target_2,"imports",d,i),zj(t,ws.Resolving_module_0_from_1,i,o.packageDirectory+"/");const s=KL(t.features,i,o.packageDirectory+"/",t.compilerOptions,t.host,n,e,!1,r,t.conditions);return jj(s.resolvedModule?{path:s.resolvedModule.resolvedFileName,extension:s.resolvedModule.extension,packageId:s.resolvedModule.packageId,originalPath:s.resolvedModule.originalPath,resolvedUsingTsExtension:s.resolvedModule.resolvedUsingTsExtension}:void 0)}return t.traceEnabled&&GR(t.host,ws.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,o.packageDirectory,i),jj(void 0)}const a=(Oo(c)?Ho(c).slice(1):Ho(c)).slice(1);if(a.includes("..")||a.includes(".")||a.includes("node_modules"))return t.traceEnabled&&GR(t.host,ws.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,o.packageDirectory,i),jj(void 0);const f=Zo(o.packageDirectory,c),m=Ho(l);if(m.includes("..")||m.includes(".")||m.includes("node_modules"))return t.traceEnabled&&GR(t.host,ws.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,o.packageDirectory,i),jj(void 0);t.traceEnabled&&GR(t.host,ws.Using_0_subpath_1_with_target_2,s?"imports":"exports",d,u?c.replace(/\*/g,l):c+l);const h=_(u?f.replace(/\*/g,l):f+l),g=function(n,r,i,s){var a,c,l,u;if(!t.isConfigLookup&&(t.compilerOptions.declarationDir||t.compilerOptions.outDir)&&!n.includes("/node_modules/")&&(!t.compilerOptions.configFile||fs(o.packageDirectory,_(t.compilerOptions.configFile.fileName),!Uj(t)))){const p=Xy({useCaseSensitiveFileNames:()=>Uj(t)}),f=[];if(t.compilerOptions.rootDir||t.compilerOptions.composite&&t.compilerOptions.configFilePath){const e=_(iV(t.compilerOptions,(()=>[]),(null==(c=(a=t.host).getCurrentDirectory)?void 0:c.call(a))||"",p));f.push(e)}else if(t.requestContainingDirectory){const e=_(Zo(t.requestContainingDirectory,"index.ts")),n=_(iV(t.compilerOptions,(()=>[e,_(i)]),(null==(u=(l=t.host).getCurrentDirectory)?void 0:u.call(l))||"",p));f.push(n);let r=os(n);for(;r&&r.length>1;){const e=Ho(r);e.pop();const t=Go(e);f.unshift(t),r=os(t)}}f.length>1&&t.reportDiagnostic(mS(s?ws.The_project_root_is_ambiguous_but_is_required_to_resolve_import_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate:ws.The_project_root_is_ambiguous_but_is_required_to_resolve_export_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate,""===r?".":r,i));for(const r of f){const i=d(r);for(const s of i)if(fs(s,n,!Uj(t))){const i=Zo(r,n.slice(s.length+1)),a=[".mjs",".cjs",".js",".json",".d.mts",".d.cts",".d.ts"];for(const n of a)if(Lo(i,n)){const r=av(i);for(const s of r){if(!fj(e,s))continue;const r=as(i,s,n,!Uj(t));if(t.host.fileExists(r))return jj(YR(o,tj(e,r,!1,t),t))}}}}}return;function d(e){var n,r;const i=t.compilerOptions.configFile?(null==(r=(n=t.host).getCurrentDirectory)?void 0:r.call(n))||"":e,o=[];return t.compilerOptions.declarationDir&&o.push(_(p(i,t.compilerOptions.declarationDir))),t.compilerOptions.outDir&&t.compilerOptions.outDir!==t.compilerOptions.declarationDir&&o.push(_(p(i,t.compilerOptions.outDir))),o}}(h,l,Zo(o.packageDirectory,"package.json"),s);return g||jj(YR(o,tj(e,h,!1,t),t))}if("object"==typeof c&&null!==c){if(!Array.isArray(c)){zj(t,ws.Entering_conditional_exports);for(const e of Ue(c))if("default"===e||t.conditions.includes(e)||xj(t.conditions,e)){zj(t,ws.Matched_0_condition_1,s?"imports":"exports",e);const n=c[e],r=a(n,l,u,d);if(r)return zj(t,ws.Resolved_under_condition_0,e),zj(t,ws.Exiting_conditional_exports),r;zj(t,ws.Failed_to_resolve_under_condition_0,e)}else zj(t,ws.Saw_non_matching_condition_0,e);return void zj(t,ws.Exiting_conditional_exports)}if(!m(c))return t.traceEnabled&&GR(t.host,ws.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,o.packageDirectory,i),jj(void 0);for(const e of c){const t=a(e,l,u,d);if(t)return t}}else if(null===c)return t.traceEnabled&&GR(t.host,ws.package_json_scope_0_explicitly_maps_specifier_1_to_null,o.packageDirectory,i),jj(void 0);t.traceEnabled&&GR(t.host,ws.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,o.packageDirectory,i);return jj(void 0);function _(e){var n,r;return void 0===e?e:es(e,null==(r=(n=t.host).getCurrentDirectory)?void 0:r.call(n))}function p(e,t){return os(Zo(e,t))}}}function xj(e,t){if(!e.includes("types"))return!1;if(!cn(t,"types@"))return!1;const n=On.tryParse(t.substring(6));return!!n&&n.test(u)}function Sj(e,t,n,r,i,o){return Tj(e,t,n,r,!1,i,o)}function Tj(e,t,n,r,i,o,s){const a=0===r.features?void 0:32&r.features?99:1,c=5&e,l=-6&e;if(c){zj(r,ws.Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0,$R(c));const e=u(c);if(e)return e}if(l&&!i)return zj(r,ws.Searching_all_ancestor_node_modules_directories_for_fallback_extensions_Colon_0,$R(l)),u(l);function u(e){return xs(Qo(n),(n=>{if("node_modules"!==Ko(n)){const c=Mj(o,t,a,n,s,r);return c||jj(wj(e,t,n,r,i,o,s))}}))}}function wj(e,t,n,r,i,o,s){const a=Zo(n,"node_modules"),c=Wb(a,r.host);if(!c&&r.traceEnabled&&GR(r.host,ws.Directory_0_does_not_exist_skipping_all_lookups_in_it,a),!i){const n=kj(e,t,a,c,r,o,s);if(n)return n}if(4&e){const e=Zo(a,"@types");let n=c;return c&&!Wb(e,r.host)&&(r.traceEnabled&&GR(r.host,ws.Directory_0_does_not_exist_skipping_all_lookups_in_it,e),n=!1),kj(4,Nj(t,r),e,n,r,o,s)}}function kj(e,t,n,r,i,o,s){var a,c;const l=ts(Zo(n,t)),{packageName:d,rest:p}=mj(t),f=Zo(n,d);let m,h=_j(l,!r,i);if(""!==p&&h&&(!(8&i.features)||!je((null==(a=m=_j(f,!r,i))?void 0:a.contents.packageJsonContent)??_,"exports"))){const t=$L(e,l,!r,i);if(t)return ZR(t);const n=pj(e,l,!r,i,h.contents.packageJsonContent,uj(h,i));return YR(h,n,i)}const g=(e,t,n,r)=>{let i=(p||!(32&r.features))&&$L(e,t,n,r)||pj(e,t,n,r,h&&h.contents.packageJsonContent,h&&uj(h,r));return!i&&h&&(void 0===h.contents.packageJsonContent.exports||null===h.contents.packageJsonContent.exports)&&32&r.features&&(i=$L(e,Zo(t,"index.js"),n,r)),YR(h,i,r)};if(""!==p&&(h=m??_j(f,!r,i)),h&&(i.resolvedPackageDirectory=!0),h&&h.contents.packageJsonContent.exports&&8&i.features)return null==(c=gj(h,e,Zo(".",p),i,o,s))?void 0:c.value;const y=""!==p&&h?uj(h,i):void 0;if(y){i.traceEnabled&&GR(i.host,ws.package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2,y.version,u,p);const t=r&&Wb(f,i.host),n=Ej(e,p,f,y.paths,void 0,g,!t,i);if(n)return n.value}return g(e,l,!r,i)}function Ej(e,t,n,r,i,o,s,a){i||(i=uw(r));const c=vw(i,t);if(c){const i=lt(c)?void 0:sn(c,t),l=lt(c)?c:on(c);a.traceEnabled&&GR(a.host,ws.Module_name_0_matched_pattern_1,t,l);return{value:h(r[l],(t=>{const r=i?Ck(t,i):t,c=ts(Zo(n,r));a.traceEnabled&&GR(a.host,ws.Trying_substitution_0_candidate_module_location_Colon_1,t,r);const l=hw(t);if(void 0!==l){const e=rj(c,s,a);if(void 0!==e)return ZR({path:e,ext:l,resolvedUsingTsExtension:void 0})}return o(e,c,s||!Wb(Vo(c),a.host),a)}))}}}var Cj="__";function Nj(e,t){const n=Ij(e);return t.traceEnabled&&n!==e&&GR(t.host,ws.Scoped_package_detected_looking_in_0,n),n}function Aj(e){return`@types/${Ij(e)}`}function Ij(e){if(cn(e,"@")){const t=e.replace(ko,Cj);if(t!==e)return t.slice(1)}return e}function Dj(e){const t=ln(e,"@types/");return t!==e?Pj(t):e}function Pj(e){return e.includes(Cj)?"@"+e.replace(Cj,ko):e}function Mj(e,t,n,r,i,o){const s=e&&e.getFromNonRelativeNameCache(t,n,r,i);if(s)return o.traceEnabled&&GR(o.host,ws.Resolution_for_module_0_was_found_in_cache_from_location_1,t,r),o.resultFromCache=s,{value:s.resolvedModule&&{path:s.resolvedModule.resolvedFileName,originalPath:s.resolvedModule.originalPath||!0,extension:s.resolvedModule.extension,packageId:s.resolvedModule.packageId,resolvedUsingTsExtension:s.resolvedModule.resolvedUsingTsExtension}}}function Oj(e,t,n,r,i,o){const s=QR(n,r),a=[],c=[],l=Vo(t),u=[],d={compilerOptions:n,host:r,traceEnabled:s,failedLookupLocations:a,affectingLocations:c,packageJsonInfoCache:i,features:0,conditions:[],requestContainingDirectory:l,reportDiagnostic:e=>{u.push(e)},isConfigLookup:!1,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1},_=p(5)||p(2|(n.resolveJsonModule?8:0));return tL(e,_&&_.value,(null==_?void 0:_.value)&&QL(_.value.path),a,c,u,d,i);function p(t){const n=LL(t,e,l,XL,d);if(n)return{value:n};if(za(e)){const n=ts(Zo(l,e));return jj(XL(t,n,!1,d))}{const n=xs(l,(n=>{const r=Mj(i,e,void 0,n,o,d);if(r)return r;const s=ts(Zo(n,e));return jj(XL(t,s,!1,d))}));if(n)return n;if(5&t){let n=function(e,t,n){return Tj(4,e,t,n,!0,void 0,void 0)}(e,l,d);return 4&t&&(n??(n=Fj(e,d))),n}}}}function Fj(e,t){if(t.compilerOptions.typeRoots)for(const n of t.compilerOptions.typeRoots){const r=pL(n,e,t),i=Wb(n,t.host);!i&&t.traceEnabled&&GR(t.host,ws.Directory_0_does_not_exist_skipping_all_lookups_in_it,n);const o=$L(4,r,!i,t);if(o){const e=YL(o.path);return jj(YR(e?_j(e,!1,t):void 0,o,t))}const s=oj(4,r,!i,t);if(s)return jj(s)}}function Rj(e,t){return!!e.allowImportingTsExtensions||t&&lO(t)}function Lj(e,t,n,r,i,o){const s=QR(n,r);s&&GR(r,ws.Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using_cache_location_2,t,e,i);const a=[],c=[],l=[],u={compilerOptions:n,host:r,traceEnabled:s,failedLookupLocations:a,affectingLocations:c,packageJsonInfoCache:o,features:0,conditions:[],requestContainingDirectory:void 0,reportDiagnostic:e=>{l.push(e)},isConfigLookup:!1,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1};return nL(wj(4,e,i,u,!1,void 0,void 0),!0,a,c,l,u.resultFromCache,void 0)}function jj(e){return void 0!==e?{value:e}:void 0}function zj(e,t,...n){e.traceEnabled&&GR(e.host,t,...n)}function Uj(e){return!e.host.useCaseSensitiveFileNames||("boolean"==typeof e.host.useCaseSensitiveFileNames?e.host.useCaseSensitiveFileNames:e.host.useCaseSensitiveFileNames())}var Bj=(e=>(e[e.NonInstantiated=0]="NonInstantiated",e[e.Instantiated=1]="Instantiated",e[e.ConstEnumOnly=2]="ConstEnumOnly",e))(Bj||{});function qj(e,t){return e.body&&!e.body.parent&&(Bw(e.body,e),Vw(e.body,!1)),e.body?Vj(e.body,t):1}function Vj(e,t=new Map){const n=Gz(e);if(t.has(n))return t.get(n)||0;t.set(n,void 0);const r=function(e,t){switch(e.kind){case 264:case 265:return 0;case 266:if(af(e))return 2;break;case 272:case 271:if(!Kv(e,32))return 0;break;case 278:const n=e;if(!n.moduleSpecifier&&n.exportClause&&279===n.exportClause.kind){let e=0;for(const r of n.exportClause.elements){const n=Kj(r,t);if(n>e&&(e=n),1===e)return e}return e}break;case 268:{let n=0;return GM(e,(e=>{const r=Vj(e,t);switch(r){case 0:return;case 2:return void(n=2);case 1:return n=1,!0;default:Tn.assertNever(r)}})),n}case 267:return qj(e,t);case 80:if(4096&e.flags)return 0}return 1}(e,t);return t.set(n,r),r}function Kj(e,t){const n=e.propertyName||e.name;let r=e.parent;for(;r;){if(OA(r)||aI(r)||YI(r)){const e=r.statements;let i;for(const o of e)if(Ic(o,n)){o.parent||(Bw(o,r),Vw(o,!1));const e=Vj(o,t);if((void 0===i||e>i)&&(i=e),1===i)return i;271===o.kind&&(i=1)}if(void 0!==i)return i}r=r.parent}return 1}var Jj=(e=>(e[e.None=0]="None",e[e.IsContainer=1]="IsContainer",e[e.IsBlockScopedContainer=2]="IsBlockScopedContainer",e[e.IsControlFlowContainer=4]="IsControlFlowContainer",e[e.IsFunctionLike=8]="IsFunctionLike",e[e.IsFunctionExpression=16]="IsFunctionExpression",e[e.HasLocals=32]="HasLocals",e[e.IsInterface=64]="IsInterface",e[e.IsObjectLiteralOrClassExpressionMethodOrAccessor=128]="IsObjectLiteralOrClassExpressionMethodOrAccessor",e))(Jj||{});function Wj(e,t,n){return Tn.attachFlowNodeDebugInfo({flags:e,id:0,node:t,antecedent:n})}var Hj=Qj();function Gj(e,t){var n,r;mr("beforeBind"),null==(n=rr)||n.logStartBindFile(""+e.fileName),Hj(e,t),null==(r=rr)||r.logStopBindFile(),mr("afterBind"),hr("Bind","beforeBind","afterBind")}function Qj(){var e,t,n,r,i,o,s,a,c,l,u,d,_,p,f,g,y,v,b,x,S,w,k,E,C,N,I=!1,D=0,P=Wj(1,void 0,void 0),M=Wj(1,void 0,void 0),O=function(){return rM((function(e,t){if(t){t.stackIndex++,Bw(e,r);const n=E;Ke(e);const i=r;r=e,t.skip=!1,t.inStrictModeStack[t.stackIndex]=n,t.parentStack[t.stackIndex]=i}else t={stackIndex:0,skip:!1,inStrictModeStack:[void 0],parentStack:[void 0]};const n=e.operatorToken.kind;if(mb(n)||pb(n)){if(de(e)){const t=Z(),n=d,r=w;w=!1,Se(e,t,t),d=w?le(t):n,w||(w=r)}else Se(e,g,y);t.skip=!0}return t}),(function(t,n,r){if(!n.skip){const n=e(t);return 28===r.operatorToken.kind&&ve(t),n}}),(function(e,t,n){t.skip||Ue(e)}),(function(t,n,r){if(!n.skip){const n=e(t);return 28===r.operatorToken.kind&&ve(t),n}}),(function(e,t){if(!t.skip){const t=e.operatorToken.kind;if(gb(t)&&!og(e)&&(xe(e.left),64===t&&212===e.left.kind)){Y(e.left.expression)&&(d=ae(256,d,e))}}const n=t.inStrictModeStack[t.stackIndex],i=t.parentStack[t.stackIndex];void 0!==n&&(E=n);void 0!==i&&(r=i);t.skip=!1,t.stackIndex--}),void 0);function e(e){if(e&&gA(e)&&!Sb(e))return e;Ue(e)}}();return function(m,h){var b,T;e=m,n=MS(t=h),E=function(e,t){return!(!eT(t,"alwaysStrict")||e.isDeclarationFile)||!!e.externalModuleIndicator}(e,h),N=new Set,D=0,C=tS.getSymbolConstructor(),Tn.attachFlowNodeDebugInfo(P),Tn.attachFlowNodeDebugInfo(M),e.locals||(null==(b=ar)||b.push(ar.Phase.Bind,"bindSourceFile",{path:e.path},!0),Ue(e),null==(T=ar)||T.pop(),e.symbolCount=D,e.classifiableNames=N,function(){if(!c)return;const t=i,n=a,o=s,l=r,u=d;for(const a of c){const t=a.parent.parent;i=Op(t)||e,s=Fp(t)||e,d=Wj(2,void 0,void 0),r=a,Ue(a.typeExpression);const n=Oc(a);if((CD(a)||!a.fullName)&&n&&Cb(n.parent)){const t=nt(n.parent);if(t){et(e.symbol,n.parent,t,!!bc(n,(e=>nA(e)&&"prototype"===e.name.escapedText)),!1);const r=i;switch(xh(n.parent)){case 1:case 2:i=of(e)?e:void 0;break;case 4:i=n.parent.expression;break;case 3:i=n.parent.expression.name;break;case 5:i=Zj(e,n.parent.expression)?e:nA(n.parent.expression)?n.parent.expression.name:n.parent.expression;break;case 0:return Tn.fail("Shouldn't have detected typedef or enum on non-assignment declaration")}i&&B(a,524288,788968),i=r}}else CD(a)||!a.fullName||80===a.fullName.kind?(r=a.parent,Me(a,524288,788968)):Ue(a.fullName)}i=t,a=n,s=o,r=l,d=u}(),function(){if(void 0===u)return;const t=i,n=a,o=s,c=r,l=d;for(const a of u){const t=Xh(a),n=t?Op(t):void 0,o=t?Fp(t):void 0;i=n||e,s=o||e,d=Wj(2,void 0,void 0),r=a,Ue(a.importClause)}i=t,a=n,s=o,r=c,d=l}());e=void 0,t=void 0,n=void 0,r=void 0,i=void 0,o=void 0,s=void 0,a=void 0,c=void 0,u=void 0,l=!1,d=void 0,_=void 0,p=void 0,f=void 0,g=void 0,y=void 0,v=void 0,x=void 0,S=!1,w=!1,I=!1,k=0};function F(t,n,...r){return Jp(C_(t)||e,t,n,...r)}function R(e,t){return D++,new C(e,t)}function L(e,t,n){e.flags|=n,t.symbol=e,e.declarations=ge(e.declarations,t),1955&n&&!e.exports&&(e.exports=o_()),6240&n&&!e.members&&(e.members=o_()),e.constEnumOnlyModule&&304&e.flags&&(e.constEnumOnlyModule=!1),111551&n&&kh(e,t)}function j(e){if(277===e.kind)return e.isExportEquals?"export=":"default";const t=Oc(e);if(t){if(_p(e)){const n=$g(t);return yp(e)?"__global":`"${n}"`}if(167===t.kind){const e=t.expression;if(Hg(e))return Tc(e.text);if(Gg(e))return Vs(e.operator)+e.operand.text;Tn.fail("Only computed properties with literal names have declaration names")}if(ZC(t)){const n=im(e);if(!n)return;return ny(n.symbol,t.escapedText)}return BI(t)?vk(t):Xg(t)?ey(t):void 0}switch(e.kind){case 176:return"__constructor";case 184:case 179:case 323:return"__call";case 185:case 180:return"__new";case 181:return"__index";case 278:return"__export";case 307:return"export=";case 226:if(2===dh(e))return"export=";Tn.fail("Unknown binary declaration kind");break;case 317:return Fh(e)?"__new":"__call";case 169:Tn.assert(317===e.parent.kind,"Impossible parameter parent kind",(()=>`parent is: ${Tn.formatSyntaxKind(e.parent.kind)}, expected JSDocFunctionType`));return"arg"+e.parent.parameters.indexOf(e)}}function z(e){return Pc(e)?Lp(e.name):wc(Tn.checkDefined(j(e)))}function U(t,n,r,i,o,s,a){Tn.assert(a||!Qg(r));const c=Kv(r,2048)||kI(r)&&"default"===r.name.escapedText,l=a?"__computed":c&&n?"default":j(r);let u;if(void 0===l)u=R(0,"__missing");else if(u=t.get(l),2885600&i&&N.add(l),u){if(s&&!u.isReplaceableByMethod)return u;if(u.flags&o)if(u.isReplaceableByMethod)t.set(l,u=R(0,l));else if(!(3&i&&67108864&u.flags)){Pc(r)&&Bw(r.name,r);let t=2&u.flags?ws.Cannot_redeclare_block_scoped_variable_0:ws.Duplicate_identifier_0,n=!0;(384&u.flags||384&i)&&(t=ws.Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations,n=!1);let o=!1;m(u.declarations)&&(c||u.declarations&&u.declarations.length&&277===r.kind&&!r.isExportEquals)&&(t=ws.A_module_cannot_have_multiple_default_exports,n=!1,o=!0);const s=[];iI(r)&&F_(r.type)&&Kv(r,32)&&2887656&u.flags&&s.push(F(r,ws.Did_you_mean_0,`export type { ${wc(r.name.escapedText)} }`));const a=Oc(r)||r;h(u.declarations,((r,i)=>{const c=Oc(r)||r,l=n?F(c,t,z(r)):F(c,t);e.bindDiagnostics.push(o?xw(l,F(a,0===i?ws.Another_export_default_is_here:ws.and_here)):l),o&&s.push(F(c,ws.The_first_export_default_is_here))}));const d=n?F(a,t,z(r)):F(a,t);e.bindDiagnostics.push(xw(d,...s)),u=R(0,l)}}else t.set(l,u=R(0,l)),s&&(u.isReplaceableByMethod=!0);return L(u,r,i),u.parent?Tn.assert(u.parent===n,"Existing symbol parent should match new one"):u.parent=n,u}function B(e,t,n){const r=!!(32&pc(e))||function(e){e.parent&&sI(e)&&(e=e.parent);if(!Rh(e))return!1;if(!CD(e)&&e.fullName)return!0;const t=Oc(e);return!!t&&(!(!Cb(t.parent)||!nt(t.parent))||!!(Sd(t.parent)&&32&pc(t.parent)))}(e);if(2097152&t)return 281===e.kind||271===e.kind&&r?U(i.symbol.exports,i.symbol,e,t,n):(Tn.assertNode(i,vd),U(i.locals,void 0,e,t,n));if(Rh(e)&&Tn.assert(Um(e)),!_p(e)&&(r||128&i.flags)){if(!vd(i)||!i.locals||Kv(e,2048)&&!j(e))return U(i.symbol.exports,i.symbol,e,t,n);const r=111551&t?1048576:0,o=U(i.locals,void 0,e,r,n);return o.exportSymbol=U(i.symbol.exports,i.symbol,e,t,n),e.localSymbol=o,o}return Tn.assertNode(i,vd),U(i.locals,void 0,e,t,n)}function q(e){V(e,(e=>262===e.kind?Ue(e):void 0)),V(e,(e=>262!==e.kind?Ue(e):void 0))}function V(e,t=Ue){void 0!==e&&h(e,t)}function K(e){GM(e,Ue,V)}function J(e){const n=I;if(I=!1,function(e){if(!(1&d.flags))return!1;if(d===P){const n=wd(e)&&242!==e.kind||263===e.kind||267===e.kind&&function(e){const n=qj(e);return 1===n||2===n&&KS(t)}(e);if(n&&(d=M,!t.allowUnreachableCode)){const n=ZS(t)&&!(33554432&e.flags)&&(!FA(e)||!!(7&mc(e.declarationList))||e.declarationList.declarations.some((e=>!!e.initializer)));!function(e,t){if(kd(e)&&Yj(e)&&OA(e.parent)){const{statements:n}=e.parent,r=bw(n,e);ee(r,Yj,((e,n)=>t(r[e],r[n-1])))}else t(e,e)}(e,((e,t)=>ze(n,e,t,ws.Unreachable_code_detected)))}}return!0}(e))return K(e),Be(e),void(I=n);switch(e.kind>=243&&e.kind<=259&&(!t.allowUnreachableCode||253===e.kind)&&(e.flowNode=d),e.kind){case 247:!function(e){const t=he(e,X()),n=Z(),r=Z();ie(t,d),d=t,fe(e.expression,n,r),d=le(n),me(e.statement,r,t),ie(t,d),d=le(r)}(e);break;case 246:!function(e){const t=X(),n=he(e,Z()),r=Z();ie(t,d),d=t,me(e.statement,r,n),ie(n,d),d=le(n),fe(e.expression,t,r),d=le(r)}(e);break;case 248:!function(e){const t=he(e,X()),n=Z(),r=Z();Ue(e.initializer),ie(t,d),d=t,fe(e.condition,n,r),d=le(n),me(e.statement,r,t),Ue(e.incrementor),ie(t,d),d=le(r)}(e);break;case 249:case 250:!function(e){const t=he(e,X()),n=Z();Ue(e.expression),ie(t,d),d=t,250===e.kind&&Ue(e.awaitModifier);ie(n,d),Ue(e.initializer),261!==e.initializer.kind&&xe(e.initializer);me(e.statement,n,t),ie(t,d),d=le(n)}(e);break;case 245:!function(e){const t=Z(),n=Z(),r=Z();fe(e.expression,t,n),d=le(t),Ue(e.thenStatement),ie(r,d),d=le(n),Ue(e.elseStatement),ie(r,d),d=le(r)}(e);break;case 253:case 257:!function(e){Ue(e.expression),253===e.kind&&(S=!0,f&&ie(f,d));d=P,w=!0}(e);break;case 252:case 251:!function(e){if(Ue(e.label),e.label){const t=function(e){for(let t=x;t;t=t.next)if(t.name===e)return t;return}(e.label.escapedText);t&&(t.referenced=!0,ye(e,t.breakTarget,t.continueTarget))}else ye(e,_,p)}(e);break;case 258:!function(e){const t=f,n=v,r=Z(),i=Z();let o=Z();e.finallyBlock&&(f=i);ie(o,d),v=o,Ue(e.tryBlock),ie(r,d),e.catchClause&&(d=le(o),o=Z(),ie(o,d),v=o,Ue(e.catchClause),ie(r,d));if(f=t,v=n,e.finallyBlock){const t=Z();t.antecedent=te(te(r.antecedent,o.antecedent),i.antecedent),d=t,Ue(e.finallyBlock),1&d.flags?d=P:(f&&i.antecedent&&ie(f,ne(t,i.antecedent,d)),v&&o.antecedent&&ie(v,ne(t,o.antecedent,d)),d=r.antecedent?ne(t,r.antecedent,d):P)}else d=le(r)}(e);break;case 255:!function(e){const t=Z();Ue(e.expression);const n=_,r=b;_=t,b=d,Ue(e.caseBlock),ie(t,d);const i=h(e.caseBlock.clauses,(e=>297===e.kind));e.possiblyExhaustive=!i&&!t.antecedent,i||ie(t,se(b,e,0,0));_=n,b=r,d=le(t)}(e);break;case 269:!function(e){const n=e.clauses,r=112===e.parent.expression.kind||W(e.parent.expression);let i=P;for(let o=0;o<n.length;o++){const s=o;for(;!n[o].statements.length&&o+1<n.length;)i===P&&(d=b),Ue(n[o]),o++;const a=Z();ie(a,r?se(b,e.parent,s,o+1):b),ie(a,i),d=le(a);const c=n[o];Ue(c),i=d,1&d.flags||o===n.length-1||!t.noFallthroughCasesInSwitch||(c.fallthroughFlowNode=d)}}(e);break;case 296:!function(e){const t=d;d=b,Ue(e.expression),d=t,V(e.statements)}(e);break;case 244:!function(e){Ue(e.expression),ve(e.expression)}(e);break;case 256:!function(e){const n=Z();x={next:x,name:e.label.escapedText,breakTarget:n,continueTarget:void 0,referenced:!1},Ue(e.label),Ue(e.statement),x.referenced||t.allowUnusedLabels||function(e,t,n){ze(e,t,t,n)}(XS(t),e.label,ws.Unused_label);x=x.next,ie(n,d),d=le(n)}(e);break;case 224:!function(e){if(54===e.operator){const t=g;g=y,y=t,K(e),y=g,g=t}else K(e),46!==e.operator&&47!==e.operator||xe(e.operand)}(e);break;case 225:!function(e){K(e),(46===e.operator||47===e.operator)&&xe(e.operand)}(e);break;case 226:if(Sb(e))return I=n,void function(e){I?(I=!1,Ue(e.operatorToken),Ue(e.right),I=!0,Ue(e.left)):(I=!0,Ue(e.left),I=!1,Ue(e.operatorToken),Ue(e.right));xe(e.left)}(e);O(e);break;case 220:!function(e){K(e),211===e.expression.kind&&xe(e.expression)}(e);break;case 227:!function(e){const t=Z(),n=Z(),r=Z(),i=d,o=w;w=!1,fe(e.condition,t,n),d=le(t),Ue(e.questionToken),Ue(e.whenTrue),ie(r,d),d=le(n),Ue(e.colonToken),Ue(e.whenFalse),ie(r,d),d=w?le(r):i,w||(w=o)}(e);break;case 260:!function(e){K(e),(e.initializer||ld(e.parent.parent))&&Te(e)}(e);break;case 211:case 212:!function(e){Cl(e)?Ce(e):K(e)}(e);break;case 213:!function(e){if(Cl(e))Ce(e);else{const t=fg(e.expression);218===t.kind||219===t.kind?(V(e.typeArguments),V(e.arguments),Ue(e.expression)):(K(e),108===e.expression.kind&&(d=ce(d,e)))}if(211===e.expression.kind){const t=e.expression;YC(t.name)&&Y(t.expression)&&uy(t.name)&&(d=ae(256,d,e))}}(e);break;case 235:!function(e){Cl(e)?Ce(e):K(e)}(e);break;case 346:case 338:case 340:!function(e){Ue(e.tagName),340!==e.kind&&e.fullName&&(Bw(e.fullName,e),Vw(e.fullName,!1));"string"!=typeof e.comment&&V(e.comment)}(e);break;case 351:!function(e){Ue(e.tagName),"string"!=typeof e.comment&&V(e.comment)}(e);break;case 307:q(e.statements),Ue(e.endOfFileToken);break;case 241:case 268:q(e.statements);break;case 208:!function(e){Ue(e.dotDotDotToken),Ue(e.propertyName),we(e.initializer),Ue(e.name)}(e);break;case 169:!function(e){V(e.modifiers),Ue(e.dotDotDotToken),Ue(e.questionToken),Ue(e.type),we(e.initializer),Ue(e.name)}(e);break;case 210:case 209:case 303:case 230:I=n;default:K(e)}Be(e),I=n}function W(e){switch(e.kind){case 80:case 110:return!0;case 211:case 212:return G(e);case 213:return function(e){if(e.arguments)for(const t of e.arguments)if(G(t))return!0;if(211===e.expression.kind&&G(e.expression.expression))return!0;return!1}(e);case 217:if(fP(e))return!1;case 235:return W(e.expression);case 226:return function(e){switch(e.operatorToken.kind){case 64:case 76:case 77:case 78:return G(e.left);case 35:case 36:case 37:case 38:return Y(e.left)||Y(e.right)||Q(e.right,e.left)||Q(e.left,e.right)||hu(e.right)&&W(e.left)||hu(e.left)&&W(e.right);case 104:return Y(e.left);case 103:case 28:return W(e.right)}return!1}(e);case 224:return 54===e.operator&&W(e.operand);case 221:return W(e.expression)}return!1}function H(e){switch(e.kind){case 80:case 110:case 108:case 236:return!0;case 211:case 217:case 235:return H(e.expression);case 212:return(Hg(e.argumentExpression)||wb(e.argumentExpression))&&H(e.expression);case 226:return 28===e.operatorToken.kind&&H(e.right)||gb(e.operatorToken.kind)&&Qu(e.left)}return!1}function G(e){return H(e)||Cl(e)&&G(e.expression)}function Q(e,t){return _A(e)&&Y(e.expression)&&Hd(t)}function Y(e){switch(e.kind){case 217:return Y(e.expression);case 226:switch(e.operatorToken.kind){case 64:return Y(e.left);case 28:return Y(e.right)}}return G(e)}function Z(){return Wj(4,void 0,void 0)}function X(){return Wj(8,void 0,void 0)}function ne(e,t,n){return Wj(1024,{target:e,antecedents:t},n)}function re(e){e.flags|=2048&e.flags?4096:2048}function ie(e,t){1&t.flags||A(e.antecedent,t)||((e.antecedent||(e.antecedent=[])).push(t),re(t))}function oe(e,t,n){return 1&t.flags?t:n?!(112===n.kind&&64&e||97===n.kind&&32&e)||Al(n)||Dl(n.parent)?W(n)?(re(t),Wj(e,n,t)):t:P:32&e?t:P}function se(e,t,n,r){return re(e),Wj(128,{switchStatement:t,clauseStart:n,clauseEnd:r},e)}function ae(e,t,n){re(t),w=!0;const r=Wj(e,n,t);return v&&ie(v,r),r}function ce(e,t){return re(e),w=!0,Wj(512,t,e)}function le(e){const t=e.antecedent;return t?1===t.length?t[0]:e:P}function ue(e){for(;;)if(217===e.kind)e=e.expression;else{if(224!==e.kind||54!==e.operator)return hb(e);e=e.operand}}function de(e){for(;cA(e.parent)||mA(e.parent)&&54===e.parent.operator;)e=e.parent;return!(function(e){const t=e.parent;switch(t.kind){case 245:case 247:case 246:return t.expression===e;case 248:case 227:return t.condition===e}return!1}(e)||ue(e.parent)||Cl(e.parent)&&e.parent.expression===e)}function pe(e,t,n,r){const i=g,o=y;g=n,y=r,e(t),g=i,y=o}function fe(e,t,n){pe(Ue,e,t,n),e&&(function(e){return fb(fg(e))}(e)||ue(e)||Cl(e)&&Il(e))||(ie(t,oe(32,d,e)),ie(n,oe(64,d,e)))}function me(e,t,n){const r=_,i=p;_=t,p=n,Ue(e),_=r,p=i}function he(e,t){let n=x;for(;n&&256===e.parent.kind;)n.continueTarget=t,n=n.next,e=e.parent;return t}function ye(e,t,n){const r=252===e.kind?t:n;r&&(ie(r,d),d=P,w=!0)}function ve(e){if(213===e.kind){const t=e;108!==t.expression.kind&&Eb(t.expression)&&(d=ce(d,t))}}function be(e){226===e.kind&&64===e.operatorToken.kind?xe(e.left):xe(e)}function xe(e){if(H(e))d=ae(16,d,e);else if(209===e.kind)for(const t of e.elements)230===t.kind?xe(t.expression):be(t);else if(210===e.kind)for(const t of e.properties)303===t.kind?be(t.initializer):304===t.kind?xe(t.name):305===t.kind&&xe(t.expression)}function Se(e,t,n){const r=Z();56===e.operatorToken.kind||77===e.operatorToken.kind?fe(e.left,r,n):fe(e.left,t,r),d=le(r),Ue(e.operatorToken),pb(e.operatorToken.kind)?(pe(Ue,e.right,t,n),xe(e.left),ie(t,oe(32,d,e)),ie(n,oe(64,d,e))):fe(e.right,t,n)}function Te(e){const t=TA(e)?void 0:e.name;if(Mu(t))for(const n of t.elements)Te(n);else d=ae(16,d,e)}function we(e){if(!e)return;const t=d;if(Ue(e),t===P||t===d)return;const n=Z();ie(n,t),ie(n,d),d=le(n)}function ke(e){switch(e.kind){case 211:Ue(e.questionDotToken),Ue(e.name);break;case 212:Ue(e.questionDotToken),Ue(e.argumentExpression);break;case 213:Ue(e.questionDotToken),V(e.typeArguments),V(e.arguments)}}function Ee(e,t,n){const r=Nl(e)?Z():void 0;!function(e,t,n){pe(Ue,e,t,n),Cl(e)&&!Il(e)||(ie(t,oe(32,d,e)),ie(n,oe(64,d,e)))}(e.expression,r||t,n),r&&(d=le(r)),pe(ke,e,t,n),Il(e)&&(ie(t,oe(32,d,e)),ie(n,oe(64,d,e)))}function Ce(e){if(de(e)){const t=Z(),n=d,r=w;Ee(e,t,t),d=w?le(t):n,w||(w=r)}else Ee(e,g,y)}function Ne(e){a&&(a.nextContainer=e),a=e}function Ae(t,n,r){switch(i.kind){case 267:return B(t,n,r);case 307:return function(t,n,r){return tO(e)?B(t,n,r):U(e.locals,void 0,t,n,r)}(t,n,r);case 231:case 263:return function(e,t,n){return Jv(e)?U(i.symbol.exports,i.symbol,e,t,n):U(i.symbol.members,i.symbol,e,t,n)}(t,n,r);case 266:return U(i.symbol.exports,i.symbol,t,n,r);case 187:case 322:case 210:case 264:case 292:return U(i.symbol.members,i.symbol,t,n,r);case 184:case 185:case 179:case 180:case 323:case 181:case 174:case 173:case 176:case 177:case 178:case 262:case 218:case 219:case 317:case 175:case 265:case 200:return i.locals&&Tn.assertNode(i,vd),U(i.locals,void 0,t,n,r)}}function Ie(e){33554432&e.flags&&!function(e){const t=YI(e)?e:dt(e.body,aI);return!!t&&t.statements.some((e=>TI(e)||SI(e)))}(e)?e.flags|=128:e.flags&=-129}function De(e){const t=qj(e),n=0!==t;return Ae(e,n?512:1024,n?110735:0),t}function Pe(e,t,n){const r=R(t,n);return 106508&t&&(r.parent=i.symbol),L(r,e,t),r}function Me(e,t,n){switch(s.kind){case 267:B(e,t,n);break;case 307:if(of(i)){B(e,t,n);break}default:Tn.assertNode(s,vd),s.locals||(s.locals=o_(),Ne(s)),U(s.locals,void 0,e,t,n)}}function Oe(t){if(!(e.parseDiagnostics.length||33554432&t.flags||16777216&t.flags||bg(t))){const n=Ec(t);if(void 0===n)return;E&&n>=119&&n<=127?e.bindDiagnostics.push(F(t,function(t){if(im(t))return ws.Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_strict_mode;if(e.externalModuleIndicator)return ws.Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode;return ws.Identifier_expected_0_is_a_reserved_word_in_strict_mode}(t),Lp(t))):135===n?tO(e)&&um(t)?e.bindDiagnostics.push(F(t,ws.Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module,Lp(t))):65536&t.flags&&e.bindDiagnostics.push(F(t,ws.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here,Lp(t))):127===n&&16384&t.flags&&e.bindDiagnostics.push(F(t,ws.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here,Lp(t)))}}function Fe(t,n){if(n&&80===n.kind){const i=n;if(YC(r=i)&&("eval"===r.escapedText||"arguments"===r.escapedText)){const r=nf(e,n);e.bindDiagnostics.push(pS(e,r.start,r.length,function(t){if(im(t))return ws.Code_contained_in_a_class_is_evaluated_in_JavaScript_s_strict_mode_which_does_not_allow_this_use_of_0_For_more_information_see_https_Colon_Slash_Slashdeveloper_mozilla_org_Slashen_US_Slashdocs_SlashWeb_SlashJavaScript_SlashReference_SlashStrict_mode;if(e.externalModuleIndicator)return ws.Invalid_use_of_0_Modules_are_automatically_in_strict_mode;return ws.Invalid_use_of_0_in_strict_mode}(t),kc(i)))}}var r}function Re(e){!E||33554432&e.flags||Fe(e,e.name)}function Le(t){if(n<2&&307!==s.kind&&267!==s.kind&&!fu(s)){const n=nf(e,t);e.bindDiagnostics.push(pS(e,n.start,n.length,function(t){return im(t)?ws.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Class_definitions_are_automatically_in_strict_mode:e.externalModuleIndicator?ws.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5_Modules_are_automatically_in_strict_mode:ws.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES5}(t)))}}function je(t,n,...r){const i=ef(e,t.pos);e.bindDiagnostics.push(pS(e,i.start,i.length,n,...r))}function ze(t,n,r,i){!function(t,n,r){const i=pS(e,n.pos,n.end-n.pos,r);t?e.bindDiagnostics.push(i):e.bindSuggestionDiagnostics=_e(e.bindSuggestionDiagnostics,{...i,category:2})}(t,{pos:Q_(n,e),end:r.end},i)}function Ue(t){if(!t)return;Bw(t,r),ar&&(t.tracingPath=e.path);const n=E;if(Ke(t),t.kind>165){const e=r;r=t;const n=Xj(t);0===n?J(t):function(e,t){const n=i,r=o,a=s;if(1&t?(219!==e.kind&&(o=i),i=s=e,32&t&&(i.locals=o_(),Ne(i))):2&t&&(s=e,32&t&&(s.locals=void 0)),4&t){const n=d,r=_,i=p,o=f,s=v,a=x,c=S,l=16&t&&!Kv(e,1024)&&!e.asteriskToken&&!!pm(e)||175===e.kind;l||(d=Wj(2,void 0,void 0),144&t&&(d.node=e)),f=l||176===e.kind||Um(e)&&(262===e.kind||218===e.kind)?Z():void 0,v=void 0,_=void 0,p=void 0,x=void 0,S=!1,J(e),e.flags&=-5633,!(1&d.flags)&&8&t&&R_(e.body)&&(e.flags|=512,S&&(e.flags|=1024),e.endFlowNode=d),307===e.kind&&(e.flags|=k,e.endFlowNode=d),f&&(ie(f,d),d=le(f),(176===e.kind||175===e.kind||Um(e)&&(262===e.kind||218===e.kind))&&(e.returnFlowNode=d)),l||(d=n),_=r,p=i,f=o,v=s,x=a,S=c}else 64&t?(l=!1,J(e),Tn.assertNotNode(e,YC),e.flags=l?256|e.flags:-257&e.flags):J(e);i=n,o=r,s=a}(t,n),r=e}else{const e=r;1===t.kind&&(r=t),Be(t),r=e}E=n}function Be(e){if(zd(e))if(Um(e))for(const t of e.jsDoc)Ue(t);else for(const t of e.jsDoc)Bw(t,e),Vw(t,!1)}function qe(e){if(!E)for(const t of e){if(!yf(t))return;if(Ve(t))return void(E=!0)}}function Ve(t){const n=Z_(e,t.expression);return'"use strict"'===n||"'use strict'"===n}function Ke(n){switch(n.kind){case 80:if(4096&n.flags){let e=n.parent;for(;e&&!Rh(e);)e=e.parent;Me(e,524288,788968);break}case 110:return d&&(td(n)||304===r.kind)&&(n.flowNode=d),Oe(n);case 166:d&&Dm(n)&&(n.flowNode=d);break;case 236:case 108:n.flowNode=d;break;case 81:return function(t){"#constructor"===t.escapedText&&(e.parseDiagnostics.length||e.bindDiagnostics.push(F(t,ws.constructor_is_a_reserved_word,Lp(t))))}(n);case 211:case 212:const o=n;d&&H(o)&&(o.flowNode=d),wh(o)&&function(e){110===e.expression.kind?Qe(e):mh(e)&&307===e.parent.parent.kind&&(Ab(e.expression)?Xe(e,e.parent):$e(e))}(o),Um(o)&&e.commonJsModuleIndicator&&uh(o)&&!$j(s,"module")&&U(e.locals,void 0,o.expression,134217729,111550);break;case 226:switch(dh(n)){case 1:He(n);break;case 2:!function(t){if(!We(t))return;const n=ah(t.right);if(Fb(n)||i===e&&Zj(e,n))return;if(tA(n)&&T(n.properties,HI))return void h(n.properties,Ge);const r=wg(t)?2097152:1049092,o=U(e.symbol.exports,e.symbol,t,67108864|r,0);kh(o,t)}(n);break;case 3:Xe(n.left,n);break;case 6:!function(e){Bw(e.left,e),Bw(e.right,e),rt(e.left.expression,e.left,!1,!0)}(n);break;case 4:Qe(n);break;case 5:const t=n.left.expression;if(Um(n)&&YC(t)){const e=$j(s,t.escapedText);if(gm(null==e?void 0:e.valueDeclaration)){Qe(n);break}}!function(t){var n;const r=it(t.left.expression,s)||it(t.left.expression,i);if(!Um(t)&&!Eh(r))return;const o=Kx(t.left);if(YC(o)&&2097152&(null==(n=$j(i,o.escapedText))?void 0:n.flags))return;if(Bw(t.left,t),Bw(t.right,t),YC(t.left.expression)&&i===e&&Zj(e,t.left.expression))He(t);else if(Qg(t)){Pe(t,67108868,"__computed");Ze(t,et(r,t.left.expression,nt(t.left),!1,!1))}else $e(_t(t.left,gh))}(n);break;case 0:break;default:Tn.fail("Unknown binary expression special property assignment kind")}return function(e){E&&Qu(e.left)&&gb(e.operatorToken.kind)&&Fe(e,e.left)}(n);case 299:return function(e){E&&e.variableDeclaration&&Fe(e,e.variableDeclaration.name)}(n);case 220:return function(t){if(E&&80===t.expression.kind){const n=nf(e,t.expression);e.bindDiagnostics.push(pS(e,n.start,n.length,ws.delete_cannot_be_called_on_an_identifier_in_strict_mode))}}(n);case 225:return function(e){E&&Fe(e,e.operand)}(n);case 224:return function(e){E&&(46!==e.operator&&47!==e.operator||Fe(e,e.operand))}(n);case 254:return function(e){E&&je(e,ws.with_statements_are_not_allowed_in_strict_mode)}(n);case 256:return function(e){E&&MS(t)>=2&&(Td(e.statement)||FA(e.statement))&&je(e.label,ws.A_label_is_not_allowed_here)}(n);case 197:return void(l=!0);case 182:break;case 168:return function(e){if(PD(e.parent)){const t=Gh(e.parent);t?(Tn.assertNode(t,vd),t.locals??(t.locals=o_()),U(t.locals,void 0,e,262144,526824)):Ae(e,262144,526824)}else if(195===e.parent.kind){const t=function(e){const t=bc(e,(e=>e.parent&&UN(e.parent)&&e.parent.extendsType===e));return t&&t.parent}(e.parent);t?(Tn.assertNode(t,vd),t.locals??(t.locals=o_()),U(t.locals,void 0,e,262144,526824)):Pe(e,262144,j(e))}else Ae(e,262144,526824)}(n);case 169:return at(n);case 260:return st(n);case 208:return n.flowNode=d,st(n);case 172:case 171:return function(e){const t=Tu(e),n=t?13247:0;return ct(e,(t?98304:4)|(e.questionToken?16777216:0),n)}(n);case 303:case 304:return ct(n,4,0);case 306:return ct(n,8,900095);case 179:case 180:case 181:return Ae(n,131072,0);case 174:case 173:return ct(n,8192|(n.questionToken?16777216:0),Hf(n)?0:103359);case 262:return function(t){e.isDeclarationFile||33554432&t.flags||Wg(t)&&(k|=4096);Re(t),E?(Le(t),Me(t,16,110991)):Ae(t,16,110991)}(n);case 176:return Ae(n,16384,0);case 177:return ct(n,32768,46015);case 178:return ct(n,65536,78783);case 184:case 317:case 323:case 185:return function(e){const t=R(131072,j(e));L(t,e,131072);const n=R(2048,"__type");L(n,e,2048),n.members=o_(),n.members.set(t.escapedName,t)}(n);case 187:case 322:case 200:return function(e){return Pe(e,2048,"__type")}(n);case 332:return function(e){K(e);const t=Yh(e);t&&174!==t.kind&&L(t.symbol,t,32)}(n);case 210:return function(e){return Pe(e,4096,"__object")}(n);case 218:case 219:return function(t){e.isDeclarationFile||33554432&t.flags||Wg(t)&&(k|=4096);d&&(t.flowNode=d);Re(t);const n=t.name?t.name.escapedText:"__function";return Pe(t,16,n)}(n);case 213:switch(dh(n)){case 7:return function(e){let t=it(e.arguments[0]);const n=307===e.parent.parent.kind;t=et(t,e.arguments[0],n,!1,!1),tt(e,t,!1)}(n);case 8:return function(e){if(!We(e))return;const t=ot(e.arguments[0],void 0,((e,t)=>(t&&L(t,e,67110400),t)));if(t){const n=1048580;U(t.exports,t,e,n,0)}}(n);case 9:return function(e){const t=it(e.arguments[0].expression);t&&t.valueDeclaration&&L(t,t.valueDeclaration,32);tt(e,t,!0)}(n);case 0:break;default:return Tn.fail("Unknown call expression assignment declaration kind")}Um(n)&&function(t){!e.commonJsModuleIndicator&&Jm(t,!1)&&We(t)}(n);break;case 231:case 263:return E=!0,function(t){if(263===t.kind)Me(t,32,899503);else{Pe(t,32,t.name?t.name.escapedText:"__class"),t.name&&N.add(t.name.escapedText)}const{symbol:n}=t,r=R(4194308,"prototype"),i=n.exports.get(r.escapedName);i&&(t.name&&Bw(t.name,t),e.bindDiagnostics.push(F(i.declarations[0],ws.Duplicate_identifier_0,Cc(r))));n.exports.set(r.escapedName,r),r.parent=n}(n);case 264:return Me(n,64,788872);case 265:return Me(n,524288,788968);case 266:return function(e){return af(e)?Me(e,128,899967):Me(e,256,899327)}(n);case 267:return function(t){if(Ie(t),_p(t))if(Kv(t,32)&&je(t,ws.export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always_visible),bp(t))De(t);else{let n;if(11===t.name.kind){const{text:e}=t.name;n=lw(e),void 0===n&&je(t.name,ws.Pattern_0_can_have_at_most_one_Asterisk_character,e)}const r=Ae(t,512,110735);e.patternAmbientModules=_e(e.patternAmbientModules,n&&!lt(n)?{pattern:n,symbol:r}:void 0)}else{const e=De(t);if(0!==e){const{symbol:n}=t;n.constEnumOnlyModule=!(304&n.flags)&&2===e&&!1!==n.constEnumOnlyModule}}}(n);case 292:return function(e){return Pe(e,4096,"__jsxAttributes")}(n);case 291:return function(e,t,n){return Ae(e,t,n)}(n,4,0);case 271:case 274:case 276:case 281:return Ae(n,2097152,2097152);case 270:return function(t){$(t.modifiers)&&e.bindDiagnostics.push(F(t,ws.Modifiers_cannot_appear_here));const n=YI(t.parent)?tO(t.parent)?t.parent.isDeclarationFile?void 0:ws.Global_module_exports_may_only_appear_in_declaration_files:ws.Global_module_exports_may_only_appear_in_module_files:ws.Global_module_exports_may_only_appear_at_top_level;n?e.bindDiagnostics.push(F(t,n)):(e.symbol.globalExports=e.symbol.globalExports||o_(),U(e.symbol.globalExports,e.symbol,t,2097152,2097152))}(n);case 273:return function(e){e.name&&Ae(e,2097152,2097152)}(n);case 278:return function(e){i.symbol&&i.symbol.exports?e.exportClause?vI(e.exportClause)&&(Bw(e.exportClause,e),U(i.symbol.exports,i.symbol,e.exportClause,2097152,2097152)):U(i.symbol.exports,i.symbol,e,8388608,0):Pe(e,8388608,j(e))}(n);case 277:return function(e){if(i.symbol&&i.symbol.exports){const t=wg(e)?2097152:4,n=U(i.symbol.exports,i.symbol,e,t,-1);e.isExportEquals&&kh(n,e)}else Pe(e,111551,j(e))}(n);case 307:return qe(n.statements),function(){if(Ie(e),tO(e))Je();else if(sf(e)){Je();const t=e.symbol;U(e.symbol.exports,e.symbol,e,4,-1),e.symbol=t}}();case 241:if(!fu(n.parent))return;case 268:return qe(n.statements);case 341:if(323===n.parent.kind)return at(n);if(322!==n.parent.kind)break;case 348:const a=n;return Ae(a,a.isBracketed||a.typeExpression&&316===a.typeExpression.type.kind?16777220:4,0);case 346:case 338:case 340:return(c||(c=[])).push(n);case 339:return Ue(n.typeExpression);case 351:return(u||(u=[])).push(n)}}function Je(){Pe(e,512,`"${ow(e.fileName)}"`)}function We(t){return(!e.externalModuleIndicator||!0===e.externalModuleIndicator)&&(e.commonJsModuleIndicator||(e.commonJsModuleIndicator=t,e.externalModuleIndicator||Je()),!0)}function He(e){if(!We(e))return;const t=ot(e.left.expression,void 0,((e,t)=>(t&&L(t,e,67110400),t)));if(t){const n=Tg(e.right)&&(ch(e.left.expression)||uh(e.left.expression))?2097152:1048580;Bw(e.left,e),U(t.exports,t,e.left,n,0)}}function Ge(t){U(e.symbol.exports,e.symbol,t,69206016,0)}function Qe(e){Tn.assert(Um(e));if(gA(e)&&nA(e.left)&&ZC(e.left.name)||nA(e)&&ZC(e.name))return;const t=cm(e,!1,!1);switch(t.kind){case 262:case 218:let n=t.symbol;if(gA(t.parent)&&64===t.parent.operatorToken.kind){const e=t.parent.left;mh(e)&&Ab(e.expression)&&(n=it(e.expression.expression,o))}n&&n.valueDeclaration&&(n.members=n.members||o_(),Qg(e)?Ye(e,n,n.members):U(n.members,n,e,67108868,0),L(n,n.valueDeclaration,32));break;case 176:case 172:case 174:case 177:case 178:case 175:const r=t.parent,i=Jv(t)?r.symbol.exports:r.symbol.members;Qg(e)?Ye(e,r.symbol,i):U(i,r.symbol,e,67108868,0,!0);break;case 307:if(Qg(e))break;t.commonJsModuleIndicator?U(t.symbol.exports,t.symbol,e,1048580,0):Ae(e,1,111550);break;case 267:break;default:Tn.failBadSyntaxKind(t)}}function Ye(e,t,n){U(n,t,e,4,0,!0,!0),Ze(e,t)}function Ze(e,t){t&&(t.assignmentDeclarationMembers||(t.assignmentDeclarationMembers=new Map)).set(Gz(e),e)}function Xe(e,t){const n=e.expression,r=n.expression;Bw(r,n),Bw(n,e),Bw(e,t),rt(r,e,!0,!0)}function $e(e){Tn.assert(!YC(e)),Bw(e.expression,e),rt(e.expression,e,!1,!1)}function et(t,n,r,i,o){if(2097152&(null==t?void 0:t.flags))return t;if(r&&!i){const r=67110400,i=110735;t=ot(n,t,((t,n,o)=>{if(n)return L(n,t,r),n;return U(o?o.exports:e.jsGlobalAugmentations||(e.jsGlobalAugmentations=o_()),o,t,r,i)}))}return o&&t&&t.valueDeclaration&&L(t,t.valueDeclaration,32),t}function tt(e,t,n){if(!t||!function(e){if(1072&e.flags)return!0;const t=e.valueDeclaration;if(t&&iA(t))return!!nh(t);let n=t?$A(t)?t.initializer:gA(t)?t.right:nA(t)&&gA(t.parent)?t.parent.right:void 0:void 0;if(n=n&&ah(n),n){const e=Ab($A(t)?t.name:gA(t)?t.left:t);return!!rh(!gA(n)||57!==n.operatorToken.kind&&61!==n.operatorToken.kind?n:n.right,e)}return!1}(t))return;const r=n?t.members||(t.members=o_()):t.exports||(t.exports=o_());let i=0,o=0;mu(nh(e))?(i=8192,o=103359):iA(e)&&_h(e)&&($(e.arguments[2].properties,(e=>{const t=Oc(e);return!!t&&YC(t)&&"set"===kc(t)}))&&(i|=65540,o|=78783),$(e.arguments[2].properties,(e=>{const t=Oc(e);return!!t&&YC(t)&&"get"===kc(t)}))&&(i|=32772,o|=46015)),0===i&&(i=4,o=0),U(r,t,e,67108864|i,-67108865&o)}function nt(e){return gA(e.parent)?307===function(e){for(;gA(e.parent);)e=e.parent;return e.parent}(e.parent).parent.kind:307===e.parent.parent.kind}function rt(e,t,n,r){let o=it(e,s)||it(e,i);const a=nt(t);o=et(o,t.expression,a,n,r),tt(t,o,n)}function it(e,t=i){if(YC(e))return $j(t,e.escapedText);{const t=it(e.expression);return t&&t.exports&&t.exports.get(bh(e))}}function ot(t,n,r){if(Zj(e,t))return e.symbol;if(YC(t))return r(t,it(t),n);{const e=ot(t.expression,n,r),i=yh(t);return ZC(i)&&Tn.fail("unexpected PrivateIdentifier"),r(i,e&&e.exports&&e.exports.get(bh(t)),e)}}function st(e){if(E&&Fe(e,e.name),!Mu(e.name)){const t=260===e.kind?e:e.parent.parent;!Um(e)||!Hm(t)||ul(e)||32&pc(e)?up(e)?Me(e,2,111551):dy(e)?Ae(e,1,111551):Ae(e,1,111550):Ae(e,2097152,2097152)}}function at(e){if((341!==e.kind||323===i.kind)&&(!E||33554432&e.flags||Fe(e,e.name),Mu(e.name)?Pe(e,1,"__"+e.parent.parameters.indexOf(e)):Ae(e,1,111551),cc(e,e.parent))){const t=e.parent.parent;U(t.symbol.members,t.symbol,e,4|(e.questionToken?16777216:0),0)}}function ct(t,n,r){return e.isDeclarationFile||33554432&t.flags||!Wg(t)||(k|=4096),d&&Gf(t)&&(t.flowNode=d),Qg(t)?Pe(t,n,"__computed"):Ae(t,n,r)}}function Yj(e){return!(tI(e)||function(e){switch(e.kind){case 264:case 265:return!0;case 267:return 1!==qj(e);case 266:return Kv(e,4096);default:return!1}}(e)||oI(e)||FA(e)&&!(7&mc(e))&&e.declarationList.declarations.some((e=>!e.initializer)))}function Zj(e,t){let n=0;const r=ot();for(r.enqueue(t);!r.isEmpty()&&n<100;){if(n++,ch(t=r.dequeue())||uh(t))return!0;if(YC(t)){const n=$j(e,t.escapedText);if(n&&n.valueDeclaration&&$A(n.valueDeclaration)&&n.valueDeclaration.initializer){const e=n.valueDeclaration.initializer;r.enqueue(e),bb(e,!0)&&(r.enqueue(e.left),r.enqueue(e.right))}}}return!1}function Xj(e){switch(e.kind){case 231:case 263:case 266:case 210:case 187:case 322:case 292:return 1;case 264:return 65;case 267:case 265:case 200:case 181:return 33;case 307:return 37;case 177:case 178:case 174:if(Gf(e))return 173;case 176:case 262:case 173:case 179:case 323:case 317:case 184:case 180:case 185:case 175:return 45;case 218:case 219:return 61;case 268:return 4;case 172:return e.initializer?4:0;case 299:case 248:case 249:case 250:case 269:return 34;case 241:return pu(e.parent)||bN(e.parent)?0:34}return 0}function $j(e,t){var n,r,i,o;const s=null==(r=null==(n=dt(e,vd))?void 0:n.locals)?void 0:r.get(t);return s?s.exportSymbol??s:YI(e)&&e.jsGlobalAugmentations&&e.jsGlobalAugmentations.has(t)?e.jsGlobalAugmentations.get(t):yd(e)?null==(o=null==(i=e.symbol)?void 0:i.exports)?void 0:o.get(t):void 0}function ez(e,t,n,r,i,o,s,a,c,l){return function(u=(()=>!0)){const d=[],_=[];return{walkType:e=>{try{return p(e),{visitedTypes:qe(d),visitedSymbols:qe(_)}}finally{F(d),F(_)}},walkSymbol:e=>{try{return g(e),{visitedTypes:qe(d),visitedSymbols:qe(_)}}finally{F(d),F(_)}}};function p(e){if(!e)return;if(d[e.id])return;d[e.id]=e;if(!g(e.symbol)){if(524288&e.flags){const n=e,i=n.objectFlags;4&i&&function(e){p(e.target),h(l(e),p)}(e),32&i&&function(e){p(e.typeParameter),p(e.constraintType),p(e.templateType),p(e.modifiersType)}(e),3&i&&(m(t=e),h(t.typeParameters,p),h(r(t),p),p(t.thisType)),24&i&&m(n)}var t;262144&e.flags&&function(e){p(a(e))}(e),3145728&e.flags&&function(e){h(e.types,p)}(e),4194304&e.flags&&function(e){p(e.type)}(e),8388608&e.flags&&function(e){p(e.objectType),p(e.indexType),p(e.constraint)}(e)}}function f(r){const i=t(r);i&&p(i.type),h(r.typeParameters,p);for(const e of r.parameters)g(e);p(e(r)),p(n(r))}function m(e){const t=i(e);for(const n of t.indexInfos)p(n.keyType),p(n.type);for(const n of t.callSignatures)f(n);for(const n of t.constructSignatures)f(n);for(const n of t.properties)g(n)}function g(e){if(!e)return!1;const t=Qz(e);if(_[t])return!1;if(_[t]=e,!u(e))return!0;return p(o(e)),e.exports&&e.exports.forEach(g),h(e.declarations,(e=>{if(e.type&&186===e.type.kind){const t=e.type;g(s(c(t.exprName)))}})),!1}}}var tz={};a(tz,{RelativePreference:()=>nz,countPathComponents:()=>mz,forEachFileNameOfModule:()=>yz,getLocalModuleSpecifierBetweenFileNames:()=>_z,getModuleSpecifier:()=>oz,getModuleSpecifierPreferences:()=>rz,getModuleSpecifiers:()=>uz,getModuleSpecifiersWithCacheInfo:()=>dz,getNodeModulesPackageName:()=>sz,tryGetJSExtensionForFile:()=>Az,tryGetModuleSpecifiersFromCache:()=>cz,tryGetRealFileNameForNonJsDeclarationFileName:()=>Cz,updateModuleSpecifier:()=>iz});var nz=(e=>(e[e.Relative=0]="Relative",e[e.NonRelative=1]="NonRelative",e[e.Shortest=2]="Shortest",e[e.ExternalNonRelative=3]="ExternalNonRelative",e))(nz||{});function rz({importModuleSpecifierPreference:e,importModuleSpecifierEnding:t},n,r,i){const o=s();return{relativePreference:void 0!==i?za(i)?0:1:"relative"===e?0:"non-relative"===e?1:"project-relative"===e?3:2,getAllowedEndingsInPreferredOrder:e=>{const t=e!==r.impliedNodeFormat?s(e):o;if(99===(e??r.impliedNodeFormat))return Rj(n,r.fileName)?[3,2]:[2];if(1===FS(n))return 2===t?[2,1]:[1,2];const i=Rj(n,r.fileName);switch(t){case 2:return i?[2,3,0,1]:[2,0,1];case 3:return[3,0,2,1];case 1:return i?[1,0,3,2]:[1,0,2];case 0:return i?[0,1,3,2]:[0,1,2];default:Tn.assertNever(t)}}};function s(e){if(void 0!==i){if(YT(i))return 2;if(Qt(i,"/index"))return 1}return ew(t,e??r.impliedNodeFormat,n,Lm(r)?r:void 0)}}function iz(e,t,n,r,i,o,s={}){const a=az(e,t,n,r,i,rz({},e,t,o),{},s);if(a!==o)return a}function oz(e,t,n,r,i,o={}){return az(e,t,n,r,i,rz({},e,t),{},o)}function sz(e,t,n,r,i,o={}){const s=pz(t.fileName,r);return y(vz(s,n,r,i,e,o),(n=>wz(n,s,t,r,e,i,!0,o.overrideImportMode)))}function az(e,t,n,r,i,o,s,a={}){const c=pz(n,i);return y(vz(c,r,i,s,e,a),(n=>wz(n,c,t,i,e,s,void 0,a.overrideImportMode)))||fz(r,c,e,i,a.overrideImportMode||t.impliedNodeFormat,o)}function cz(e,t,n,r,i={}){const o=lz(e,t,n,r,i);return o[1]&&{kind:o[0],moduleSpecifiers:o[1],computedWithoutCache:!1}}function lz(e,t,n,r,i={}){var o;const s=N_(e);if(!s)return _;const a=null==(o=n.getModuleSpecifierCache)?void 0:o.call(n),c=null==a?void 0:a.get(t.path,s.path,r,i);return[null==c?void 0:c.kind,null==c?void 0:c.moduleSpecifiers,s,null==c?void 0:c.modulePaths,a]}function uz(e,t,n,r,i,o,s={}){return dz(e,t,n,r,i,o,s,!1).moduleSpecifiers}function dz(e,t,n,r,i,o,s={},a){let c=!1;const l=function(e,t){var n;const r=null==(n=e.declarations)?void 0:n.find((e=>fp(e)&&(!vp(e)||!za($g(e.name)))));if(r)return r.name.text;const i=J(e.declarations,(e=>{var n,r,i,o;if(!sI(e))return;const s=l(e);if(!((null==(n=null==s?void 0:s.parent)?void 0:n.parent)&&aI(s.parent)&&_p(s.parent.parent)&&YI(s.parent.parent.parent)))return;const a=null==(o=null==(i=null==(r=s.parent.parent.symbol.exports)?void 0:r.get("export="))?void 0:i.valueDeclaration)?void 0:o.expression;if(!a)return;const c=t.getSymbolAtLocation(a);if(!c)return;if((2097152&(null==c?void 0:c.flags)?t.getAliasedSymbol(c):c)===e.symbol)return s.parent.parent;function l(e){for(;8&e.flags;)e=e.parent;return e}})),o=i[0];if(o)return o.name.text}(e,t);if(l)return{kind:"ambient",moduleSpecifiers:[l],computedWithoutCache:c};let[u,d,p,f,m]=lz(e,r,i,o,s);if(d)return{kind:u,moduleSpecifiers:d,computedWithoutCache:c};if(!p)return{kind:void 0,moduleSpecifiers:_,computedWithoutCache:c};c=!0,f||(f=xz(pz(r.fileName,i),p.originalFileName,i,n,s));const g=function(e,t,n,r,i,o={},s){const a=pz(n.fileName,r),c=rz(i,t,n),l=Lm(n)&&h(e,(e=>h(r.getFileIncludeReasons().get(rs(e.path,r.getCurrentDirectory(),a.getCanonicalFileName)),(e=>{if(3!==e.kind||e.file!==n.path)return;if(n.impliedNodeFormat&&n.impliedNodeFormat!==aK(n,e.index,t))return;const r=VK(n,e.index).text;return 1===c.relativePreference&&Oo(r)?void 0:r}))));if(l)return{kind:void 0,moduleSpecifiers:[l],computedWithoutCache:!0};const u=$(e,(e=>e.isInNodeModules));let d,_,p,f;for(const m of e){const e=m.isInNodeModules?wz(m,a,n,r,t,i,void 0,o.overrideImportMode):void 0;if(d=_e(d,e),e&&m.isRedirect)return{kind:"node_modules",moduleSpecifiers:d,computedWithoutCache:!0};if(!e){const e=fz(m.path,a,t,r,o.overrideImportMode||n.impliedNodeFormat,c,m.isRedirect);if(!e)continue;m.isRedirect?p=_e(p,e):Fo(e)?QL(e)?f=_e(f,e):_=_e(_,e):(s||!u||m.isInNodeModules)&&(f=_e(f,e))}}return(null==_?void 0:_.length)?{kind:"paths",moduleSpecifiers:_,computedWithoutCache:!0}:(null==p?void 0:p.length)?{kind:"redirect",moduleSpecifiers:p,computedWithoutCache:!0}:(null==d?void 0:d.length)?{kind:"node_modules",moduleSpecifiers:d,computedWithoutCache:!0}:{kind:"relative",moduleSpecifiers:Tn.checkDefined(f),computedWithoutCache:!0}}(f,n,r,i,o,s,a);return null==m||m.set(r.path,p.path,o,s,g.kind,f,g.moduleSpecifiers),g}function _z(e,t,n,r,i={}){return fz(t,pz(e.fileName,r),n,r,i.overrideImportMode??e.impliedNodeFormat,rz({},n,e))}function pz(e,t){e=es(e,t.getCurrentDirectory());const n=rn(!t.useCaseSensitiveFileNames||t.useCaseSensitiveFileNames()),r=Vo(e);return{getCanonicalFileName:n,importingSourceFileName:e,sourceDirectory:r,canonicalSourceDirectory:n(r)}}function fz(e,t,n,r,i,{getAllowedEndingsInPreferredOrder:o,relativePreference:s},a){const{baseUrl:c,paths:l,rootDirs:u}=n;if(a&&!l)return;const{sourceDirectory:d,canonicalSourceDirectory:_,getCanonicalFileName:p}=t,f=o(i),m=u&&function(e,t,n,r,i,o){const s=kz(t,e,r);if(void 0===s)return;const a=kz(n,e,r),c=U(a,(e=>R(s,(t=>ss(gs(e,t,r)))))),l=Ot(c,rw);if(!l)return;return Ez(l,i,o)}(u,e,d,p,f,n)||Ez(ss(gs(d,e,p)),f,n);if(!c&&!l&&!BS(n)||0===s)return a?void 0:m;const g=Iz(e,es(cv(n,r)||c,r.getCurrentDirectory()),p);if(!g)return a?void 0:m;const y=a?void 0:function(e,t,n,r,i){var o,s,a;if(!r.readFile||!BS(n))return;const c=gz(r,t);if(!c)return;const l=Zo(c,"package.json"),u=null==(s=null==(o=r.getPackageJsonInfoCache)?void 0:o.call(r))?void 0:s.getPackageJsonInfo(l);if(bL(u)||!r.fileExists(l))return;const d=(null==u?void 0:u.contents.packageJsonContent)||Jb(r.readFile(l)),_=null==d?void 0:d.imports;if(!_)return;const p=hL(n,i);return null==(a=h(Ue(_),(t=>{if(!cn(t,"#")||"#"===t||cn(t,"#/"))return;const i=Qt(t,"/")?1:t.includes("*")?2:0;return Tz(n,r,e,c,t,_[t],p,i,!0)})))?void 0:a.moduleFileToTry}(e,d,n,r,i),v=a||void 0===y?l&&Sz(g,l,f,r,n):void 0;if(a)return v;const b=y??(void 0===v&&void 0!==c?Ez(g,f,n):v);if(!b)return m;if(1===s&&!Oo(b))return b;if(3===s&&!Oo(b)){const i=n.configFilePath?rs(Vo(n.configFilePath),r.getCurrentDirectory(),t.getCanonicalFileName):t.getCanonicalFileName(r.getCurrentDirectory()),o=rs(e,i,p),s=cn(_,i),a=cn(o,i);if(s&&!a||!s&&a)return b;return function(e,t,n){return e===t||void 0!==e&&void 0!==t&&0===ps(e,t,n)}(gz(r,Vo(o)),gz(r,d),!Zy(r))?m:b}return Dz(b)||mz(m)<mz(b)?m:b}function mz(e){let t=0;for(let n=cn(e,"./")?2:0;n<e.length;n++)47===e.charCodeAt(n)&&t++;return t}function hz(e,t){return Wt(t.isRedirect,e.isRedirect)||rw(e.path,t.path)}function gz(e,t){return e.getNearestAncestorDirectoryWithPackageJson?e.getNearestAncestorDirectoryWithPackageJson(t):xs(t,(t=>e.fileExists(Zo(t,"package.json"))?t:void 0))}function yz(e,t,n,r,i){var o;const s=Xy(n),a=n.getCurrentDirectory(),c=n.isSourceOfProjectReferenceRedirect(t)?n.getProjectReferenceRedirect(t):void 0,l=rs(t,a,s),u=n.redirectTargetsMap.get(l)||_,d=[...c?[c]:_,t,...u].map((e=>es(e,a)));let p=!T(d,Hw);if(!r){const e=h(d,(e=>!(p&&Hw(e))&&i(e,c===e)));if(e)return e}const f=null==(o=n.getSymlinkCache)?void 0:o.call(n).getSymlinkedDirectoriesByRealpath(),m=es(t,a);return f&&xs(Vo(m),(t=>{const n=f.get(os(rs(t,a,s)));if(n)return!ms(e,t,s)&&h(d,(e=>{if(!ms(e,t,s))return;const r=gs(t,e,s);for(const t of n){const n=Xo(t,r),o=i(n,e===c);if(p=!0,o)return o}}))}))||(r?h(d,(e=>p&&Hw(e)?void 0:i(e,e===c))):void 0)}function vz(e,t,n,r,i,o={}){var s;const a=rs(e.importingSourceFileName,n.getCurrentDirectory(),Xy(n)),c=rs(t,n.getCurrentDirectory(),Xy(n)),l=null==(s=n.getModuleSpecifierCache)?void 0:s.call(n);if(l){const e=l.get(a,c,r,o);if(null==e?void 0:e.modulePaths)return e.modulePaths}const u=xz(e,t,n,i,o);return l&&l.setModulePaths(a,c,r,o,u),u}var bz=["dependencies","peerDependencies","optionalDependencies"];function xz(e,t,n,r,i){var o,s;const a=null==(o=n.getModuleResolutionCache)?void 0:o.call(n),c=null==(s=n.getSymlinkCache)?void 0:s.call(n);if(a&&c&&n.readFile&&!QL(e.importingSourceFileName)){Tn.type(n);const t=cj(a.getPackageJsonInfoCache(),n,{}),o=lj(e.importingSourceFileName,t);if(o){const e=function(e){let t;for(const n of bz){const r=e[n];r&&"object"==typeof r&&(t=te(t,Ue(r)))}return t}(o.contents.packageJsonContent);for(const t of e||_){const e=RL(t,Zo(o.packageDirectory,"package.json"),r,n,a,void 0,i.overrideImportMode);c.setSymlinksFromResolution(e.resolvedModule)}}}const l=new Map;let u=!1;yz(e.importingSourceFileName,t,n,!0,((t,n)=>{const r=QL(t);l.set(t,{path:e.getCanonicalFileName(t),isRedirect:n,isInNodeModules:r}),u=u||r}));const d=[];for(let _=e.canonicalSourceDirectory;0!==l.size;){const e=os(_);let t;l.forEach((({path:n,isRedirect:r,isInNodeModules:i},o)=>{cn(n,e)&&((t||(t=[])).push({path:o,isRedirect:r,isInNodeModules:i}),l.delete(o))})),t&&(t.length>1&&t.sort(hz),d.push(...t));const n=Vo(_);if(n===_)break;_=n}if(l.size){const e=Ke(l.entries(),(([e,{isRedirect:t,isInNodeModules:n}])=>({path:e,isRedirect:t,isInNodeModules:n})));e.length>1&&e.sort(hz),d.push(...e)}return d}function Sz(e,t,n,r,i){for(const s in t)for(const r of t[s]){const t=ts(r),a=t.indexOf("*"),c=n.map((t=>({ending:t,value:Ez(e,[t],i)})));if(hw(t)&&c.push({ending:void 0,value:e}),-1!==a){const e=t.substring(0,a),n=t.substring(a+1);for(const{ending:t,value:r}of c)if(r.length>=e.length+n.length&&cn(r,e)&&Qt(r,n)&&o({ending:t,value:r})){const t=r.substring(e.length,r.length-n.length);if(!Oo(t))return Ck(s,t)}}else if($(c,(e=>0!==e.ending&&t===e.value))||$(c,(e=>0===e.ending&&t===e.value&&o(e))))return s}function o({ending:t,value:n}){return 0!==t||n===Ez(e,[t],i,r)}}function Tz(e,t,n,r,i,o,s,a,c){if("string"==typeof o){const s=!Zy(t),l=()=>t.getCommonSourceDirectory(),u=c&&eV(n,e,s,l),d=c&&Xq(n,e,s,l),_=es(Zo(r,o),void 0),p=ZT(n)?ow(n)+Az(n,e):void 0;switch(a){case 0:if(p&&0===ps(p,_,s)||0===ps(n,_,s)||u&&0===ps(u,_,s)||d&&0===ps(d,_,s))return{moduleFileToTry:i};break;case 1:if(p&&fs(_,p,s)){const e=gs(_,p,!1);return{moduleFileToTry:es(Zo(Zo(i,o),e),void 0)}}if(fs(_,n,s)){const e=gs(_,n,!1);return{moduleFileToTry:es(Zo(Zo(i,o),e),void 0)}}if(u&&fs(_,u,s)){const e=gs(_,u,!1);return{moduleFileToTry:Zo(i,e)}}if(d&&fs(_,d,s)){const e=gs(_,d,!1);return{moduleFileToTry:Zo(i,e)}}break;case 2:const e=_.indexOf("*"),t=_.slice(0,e),r=_.slice(e+1);if(p&&cn(p,t,s)&&Qt(p,r,s)){const e=p.slice(t.length,p.length-r.length);return{moduleFileToTry:Ck(i,e)}}if(cn(n,t,s)&&Qt(n,r,s)){const e=n.slice(t.length,n.length-r.length);return{moduleFileToTry:Ck(i,e)}}if(u&&cn(u,t,s)&&Qt(u,r,s)){const e=u.slice(t.length,u.length-r.length);return{moduleFileToTry:Ck(i,e)}}if(d&&cn(d,t,s)&&Qt(d,r,s)){const e=d.slice(t.length,d.length-r.length);return{moduleFileToTry:Ck(i,e)}}}}else{if(Array.isArray(o))return h(o,(o=>Tz(e,t,n,r,i,o,s,a,c)));if("object"==typeof o&&null!==o)for(const l of Ue(o))if("default"===l||s.indexOf(l)>=0||xj(s,l)){const u=o[l],d=Tz(e,t,n,r,i,u,s,a,c);if(d)return d}}}function wz({path:e,isRedirect:t},{getCanonicalFileName:n,canonicalSourceDirectory:r},i,o,s,a,c,l){if(!o.fileExists||!o.readFile)return;const u=rk(e);if(!u)return;const d=rz(a,s,i).getAllowedEndingsInPreferredOrder();let _=e,p=!1;if(!c){let t,n=u.packageRootIndex;for(;;){const{moduleFileToTry:r,packageRootPath:i,blockedByExports:a,verbatimFromExports:c}=v(n);if(1!==FS(s)){if(a)return;if(c)return r}if(i){_=i,p=!0;break}if(t||(t=r),n=e.indexOf(ko,n+1),-1===n){_=Ez(t,d,s,o);break}}}if(t&&!p)return;const f=o.getGlobalTypingsCacheLocation&&o.getGlobalTypingsCacheLocation(),m=n(_.substring(0,u.topLevelNodeModulesIndex));if(!(cn(r,m)||f&&cn(n(f),m)))return;const g=_.substring(u.topLevelPackageNameIndex+1),y=Dj(g);return 1===FS(s)&&y===g?void 0:y;function v(t){var r,a;const c=e.substring(0,t),_=Zo(c,"package.json");let p=e,f=!1;const m=null==(a=null==(r=o.getPackageJsonInfoCache)?void 0:r.call(o))?void 0:a.getPackageJsonInfo(_);if(vL(m)||void 0===m&&o.fileExists(_)){const t=(null==m?void 0:m.contents.packageJsonContent)||Jb(o.readFile(_)),r=l||i.impliedNodeFormat;if(US(s)){const n=Dj(c.substring(u.topLevelPackageNameIndex+1)),i=hL(s,r),a=(null==t?void 0:t.exports)?function(e,t,n,r,i,o,s){return"object"==typeof o&&null!==o&&!Array.isArray(o)&&hj(o)?h(Ue(o),(a=>{const c=es(Zo(i,a),void 0),l=Qt(a,"/")?1:a.includes("*")?2:0;return Tz(e,t,n,r,c,o[a],s,l,!1)})):Tz(e,t,n,r,i,o,s,0,!1)}(s,o,e,c,n,t.exports,i):void 0;if(a)return{...a,verbatimFromExports:!0};if(null==t?void 0:t.exports)return{moduleFileToTry:e,blockedByExports:!0}}const a=(null==t?void 0:t.typesVersions)?lL(t.typesVersions):void 0;if(a){const t=Sz(e.slice(c.length+1),a.paths,d,o,s);void 0===t?f=!0:p=Zo(c,t)}const g=(null==t?void 0:t.typings)||(null==t?void 0:t.types)||(null==t?void 0:t.main)||"index.js";if(lt(g)&&(!f||!vw(uw(a.paths),g))){const e=rs(g,c,n),r=n(p);if(ow(e)===ow(r))return{packageRootPath:c,moduleFileToTry:p};if("module"!==(null==t?void 0:t.type)&&!jo(r,HT)&&cn(r,e)&&Vo(r)===is(e)&&"index"===ow(Ko(r)))return{packageRootPath:c,moduleFileToTry:p}}}else{const e=n(p.substring(u.packageRootIndex+1));if("index.d.ts"===e||"index.js"===e||"index.ts"===e||"index.tsx"===e)return{moduleFileToTry:p,packageRootPath:c}}return{moduleFileToTry:p}}}function kz(e,t,n){return J(t,(t=>{const r=Iz(e,t,n);return void 0!==r&&Dz(r)?void 0:r}))}function Ez(e,t,n,r){if(jo(e,[".json",".mjs",".cjs"]))return e;const i=ow(e);if(e===i)return e;const o=t.indexOf(2),s=t.indexOf(3);if(jo(e,[".mts",".cts"])&&-1!==s&&s<o)return e;if(jo(e,[".d.mts",".mts",".d.cts",".cts"]))return i+Nz(e,n);if(!jo(e,[".d.ts"])&&jo(e,[".ts"])&&e.includes(".d."))return Cz(e);switch(t[0]){case 0:const s=Yt(i,"/index");return r&&s!==i&&function(e,t){if(!e.fileExists)return;const n=z(GT({allowJs:!0},[{extension:"node",isMixedContent:!1},{extension:"json",isMixedContent:!1,scriptKind:6}]));for(const r of n){const n=t+r;if(e.fileExists(n))return n}}(r,s)?i:s;case 1:return i;case 2:return i+Nz(e,n);case 3:if(lO(e)){const r=t.findIndex((e=>0===e||1===e));return-1!==r&&r<o?i:i+Nz(e,n)}return e;default:return Tn.assertNever(t[0])}}function Cz(e){const t=Ko(e);if(!Qt(e,".ts")||!t.includes(".d.")||jo(t,[".d.ts"]))return;const n=aw(e,".ts"),r=n.substring(n.lastIndexOf("."));return n.substring(0,n.indexOf(".d."))+r}function Nz(e,t){return Az(e,t)??Tn.fail(`Extension ${fw(e)} is unsupported:: FileName:: ${e}`)}function Az(e,t){const n=hw(e);switch(n){case".ts":case".d.ts":return".js";case".tsx":return 1===t.jsx?".jsx":".js";case".js":case".jsx":case".json":return n;case".d.mts":case".mts":case".mjs":return".mjs";case".d.cts":case".cts":case".cjs":return".cjs";default:return}}function Iz(e,t,n){const r=bs(t,e,t,n,!1);return Do(r)?void 0:r}function Dz(e){return cn(e,"..")}var Pz,Mz,Oz=/^".+"$/,Fz="(anonymous)",Rz=1,Lz=1,jz=1,zz=1,Uz=(e=>(e[e.None=0]="None",e[e.TypeofEQString=1]="TypeofEQString",e[e.TypeofEQNumber=2]="TypeofEQNumber",e[e.TypeofEQBigInt=4]="TypeofEQBigInt",e[e.TypeofEQBoolean=8]="TypeofEQBoolean",e[e.TypeofEQSymbol=16]="TypeofEQSymbol",e[e.TypeofEQObject=32]="TypeofEQObject",e[e.TypeofEQFunction=64]="TypeofEQFunction",e[e.TypeofEQHostObject=128]="TypeofEQHostObject",e[e.TypeofNEString=256]="TypeofNEString",e[e.TypeofNENumber=512]="TypeofNENumber",e[e.TypeofNEBigInt=1024]="TypeofNEBigInt",e[e.TypeofNEBoolean=2048]="TypeofNEBoolean",e[e.TypeofNESymbol=4096]="TypeofNESymbol",e[e.TypeofNEObject=8192]="TypeofNEObject",e[e.TypeofNEFunction=16384]="TypeofNEFunction",e[e.TypeofNEHostObject=32768]="TypeofNEHostObject",e[e.EQUndefined=65536]="EQUndefined",e[e.EQNull=131072]="EQNull",e[e.EQUndefinedOrNull=262144]="EQUndefinedOrNull",e[e.NEUndefined=524288]="NEUndefined",e[e.NENull=1048576]="NENull",e[e.NEUndefinedOrNull=2097152]="NEUndefinedOrNull",e[e.Truthy=4194304]="Truthy",e[e.Falsy=8388608]="Falsy",e[e.IsUndefined=16777216]="IsUndefined",e[e.IsNull=33554432]="IsNull",e[e.IsUndefinedOrNull=50331648]="IsUndefinedOrNull",e[e.All=134217727]="All",e[e.BaseStringStrictFacts=3735041]="BaseStringStrictFacts",e[e.BaseStringFacts=12582401]="BaseStringFacts",e[e.StringStrictFacts=16317953]="StringStrictFacts",e[e.StringFacts=16776705]="StringFacts",e[e.EmptyStringStrictFacts=12123649]="EmptyStringStrictFacts",e[e.EmptyStringFacts=12582401]="EmptyStringFacts",e[e.NonEmptyStringStrictFacts=7929345]="NonEmptyStringStrictFacts",e[e.NonEmptyStringFacts=16776705]="NonEmptyStringFacts",e[e.BaseNumberStrictFacts=3734786]="BaseNumberStrictFacts",e[e.BaseNumberFacts=12582146]="BaseNumberFacts",e[e.NumberStrictFacts=16317698]="NumberStrictFacts",e[e.NumberFacts=16776450]="NumberFacts",e[e.ZeroNumberStrictFacts=12123394]="ZeroNumberStrictFacts",e[e.ZeroNumberFacts=12582146]="ZeroNumberFacts",e[e.NonZeroNumberStrictFacts=7929090]="NonZeroNumberStrictFacts",e[e.NonZeroNumberFacts=16776450]="NonZeroNumberFacts",e[e.BaseBigIntStrictFacts=3734276]="BaseBigIntStrictFacts",e[e.BaseBigIntFacts=12581636]="BaseBigIntFacts",e[e.BigIntStrictFacts=16317188]="BigIntStrictFacts",e[e.BigIntFacts=16775940]="BigIntFacts",e[e.ZeroBigIntStrictFacts=12122884]="ZeroBigIntStrictFacts",e[e.ZeroBigIntFacts=12581636]="ZeroBigIntFacts",e[e.NonZeroBigIntStrictFacts=7928580]="NonZeroBigIntStrictFacts",e[e.NonZeroBigIntFacts=16775940]="NonZeroBigIntFacts",e[e.BaseBooleanStrictFacts=3733256]="BaseBooleanStrictFacts",e[e.BaseBooleanFacts=12580616]="BaseBooleanFacts",e[e.BooleanStrictFacts=16316168]="BooleanStrictFacts",e[e.BooleanFacts=16774920]="BooleanFacts",e[e.FalseStrictFacts=12121864]="FalseStrictFacts",e[e.FalseFacts=12580616]="FalseFacts",e[e.TrueStrictFacts=7927560]="TrueStrictFacts",e[e.TrueFacts=16774920]="TrueFacts",e[e.SymbolStrictFacts=7925520]="SymbolStrictFacts",e[e.SymbolFacts=16772880]="SymbolFacts",e[e.ObjectStrictFacts=7888800]="ObjectStrictFacts",e[e.ObjectFacts=16736160]="ObjectFacts",e[e.FunctionStrictFacts=7880640]="FunctionStrictFacts",e[e.FunctionFacts=16728e3]="FunctionFacts",e[e.VoidFacts=9830144]="VoidFacts",e[e.UndefinedFacts=26607360]="UndefinedFacts",e[e.NullFacts=42917664]="NullFacts",e[e.EmptyObjectStrictFacts=83427327]="EmptyObjectStrictFacts",e[e.EmptyObjectFacts=83886079]="EmptyObjectFacts",e[e.UnknownFacts=83886079]="UnknownFacts",e[e.AllTypeofNE=556800]="AllTypeofNE",e[e.OrFactsMask=8256]="OrFactsMask",e[e.AndFactsMask=134209471]="AndFactsMask",e))(Uz||{}),Bz=new Map(Object.entries({string:256,number:512,bigint:1024,boolean:2048,symbol:4096,undefined:524288,object:8192,function:16384})),qz=(e=>(e[e.Normal=0]="Normal",e[e.Contextual=1]="Contextual",e[e.Inferential=2]="Inferential",e[e.SkipContextSensitive=4]="SkipContextSensitive",e[e.SkipGenericFunctions=8]="SkipGenericFunctions",e[e.IsForSignatureHelp=16]="IsForSignatureHelp",e[e.RestBindingElement=32]="RestBindingElement",e[e.TypeOnly=64]="TypeOnly",e))(qz||{}),Vz=(e=>(e[e.None=0]="None",e[e.BivariantCallback=1]="BivariantCallback",e[e.StrictCallback=2]="StrictCallback",e[e.IgnoreReturnTypes=4]="IgnoreReturnTypes",e[e.StrictArity=8]="StrictArity",e[e.StrictTopSignature=16]="StrictTopSignature",e[e.Callback=3]="Callback",e))(Vz||{}),Kz=_n(Xz,(function(e){return!Su(e)})),Jz=new Map(Object.entries({Uppercase:0,Lowercase:1,Capitalize:2,Uncapitalize:3,NoInfer:4})),Wz=class{};function Hz(){this.flags=0}function Gz(e){return e.id||(e.id=Lz,Lz++),e.id}function Qz(e){return e.id||(e.id=Rz,Rz++),e.id}function Yz(e,t){const n=qj(e);return 1===n||t&&2===n}function Zz(e){var t,n,r,i,o=[],s=e=>{o.push(e)},a=tS.getSymbolConstructor(),c=tS.getTypeConstructor(),l=tS.getSignatureConstructor(),u=0,d=0,p=0,f=0,g=0,v=0,b=!1,x=o_(),S=[1],N=e.getCompilerOptions(),D=MS(N),O=OS(N),L=!!N.experimentalDecorators,B=GS(N),q=nT(N),V=zS(N),K=eT(N,"strictNullChecks"),W=eT(N,"strictFunctionTypes"),H=eT(N,"strictBindCallApply"),Y=eT(N,"strictPropertyInitialization"),Z=eT(N,"noImplicitAny"),X=eT(N,"noImplicitThis"),ee=eT(N,"useUnknownInCatchVariables"),ne=N.exactOptionalPropertyTypes,oe=function(){const e=rM((function(e,t,r){t?(t.stackIndex++,t.skip=!1,n(t,void 0),i(t,void 0)):t={checkMode:r,skip:!1,stackIndex:0,typeStack:[void 0,void 0]};if(Um(e)&&nh(e))return t.skip=!0,i(t,qR(e.right,r)),t;!function(e){const{left:t,operatorToken:n,right:r}=e;61===n.kind&&(!gA(t)||57!==t.operatorToken.kind&&56!==t.operatorToken.kind||VB(t,ws._0_and_1_operations_cannot_be_mixed_without_parentheses,Vs(t.operatorToken.kind),Vs(n.kind)),!gA(r)||57!==r.operatorToken.kind&&56!==r.operatorToken.kind||VB(r,ws._0_and_1_operations_cannot_be_mixed_without_parentheses,Vs(r.operatorToken.kind),Vs(n.kind)))}(e);if(64===e.operatorToken.kind&&(210===e.left.kind||209===e.left.kind))return t.skip=!0,i(t,mR(e.left,qR(e.right,r),r,110===e.right.kind)),t;return t}),(function(e,n,r){if(!n.skip)return t(n,e)}),(function(e,t,o){if(!t.skip){const s=r(t);Tn.assertIsDefined(s),n(t,s),i(t,void 0);const a=e.kind;if(mb(a)){let e=o.parent;for(;217===e.kind||hb(e);)e=e.parent;(56===a||jA(e))&&dj(o.left,s,jA(e)?e.thenStatement:void 0),_j(s,o.left)}}}),(function(e,n,r){if(!n.skip)return t(n,e)}),(function(e,t){let o;if(t.skip)o=r(t);else{const n=function(e){return e.typeStack[e.stackIndex]}(t);Tn.assertIsDefined(n);const i=r(t);Tn.assertIsDefined(i),o=yR(e.left,e.operatorToken,e.right,n,i,t.checkMode,e)}return t.skip=!1,n(t,void 0),i(t,void 0),t.stackIndex--,o}),(function(e,t,n){return i(e,t),e}));return(t,n)=>{const r=e(t,n);return Tn.assertIsDefined(r),r};function t(e,t){if(gA(t))return t;i(e,qR(t,e.checkMode))}function n(e,t){e.typeStack[e.stackIndex]=t}function r(e){return e.typeStack[e.stackIndex+1]}function i(e,t){e.typeStack[e.stackIndex+1]=t}}(),se={getReferencedExportContainer:IU,getReferencedImportDeclaration:DU,getReferencedDeclarationWithCollidingName:MU,isDeclarationWithCollidingName:OU,isValueAliasDeclaration:e=>{const t=Sc(e);return!t||!De||FU(t)},hasGlobalName:iB,isReferencedAliasDeclaration:(e,t)=>{const n=Sc(e);return!n||!De||zU(n,t)},hasNodeCheckFlag:(e,t)=>{const n=Sc(e);return!!n&&JU(n,t)},isTopLevelValueImportEqualsWithEntityName:RU,isDeclarationVisible:uc,isImplementationOfOverload:UU,requiresAddingImplicitUndefined:BU,isExpandoFunctionDeclaration:qU,getPropertiesOfContainerFunction:VU,createTypeOfDeclaration:XU,createReturnTypeOfSignatureDeclaration:nB,createTypeOfExpression:rB,createLiteralConstValue:uB,isSymbolAccessible:La,isEntityNameVisible:Ga,getConstantValue:e=>{const t=Sc(e,HU);return t?GU(t):void 0},getEnumMemberValue:e=>{const t=Sc(e,QI);return t?WU(t):void 0},collectLinkedAliases:_c,markLinkedReferences:e=>{const t=Sc(e);return t&&KA(t,0)},getReferencedValueDeclaration:aB,getReferencedValueDeclarations:cB,getTypeReferenceSerializationKind:YU,isOptionalParameter:Mf,isArgumentsLocalBinding:AU,getExternalModuleFileFromDeclaration:e=>{const t=Sc(e,Pp);return t&&fB(t)},isLiteralConstDeclaration:lB,isLateBound:e=>{const t=Sc(e,Sd),n=t&&sa(t);return!!(n&&4096&bx(n))},getJsxFactoryEntity:dB,getJsxFragmentFactoryEntity:_B,isBindingCapturedByNode:(e,t)=>{const n=Sc(e),r=Sc(t);return!!n&&!!r&&($A(r)||$N(r))&&function(e,t){const n=Qo(e);return!!n&&A(n.capturedBlockScopeBindings,sa(t))}(n,r)},getDeclarationStatementsForSourceFile:(e,t,n)=>{const r=Sc(e);Tn.assert(r&&307===r.kind,"Non-sourcefile node passed into getDeclarationsForSourceFile");const i=sa(e);return i?(Ws(i),i.exports?ae.symbolTableToDeclarationStatements(i.exports,e,t,n):[]):e.locals?ae.symbolTableToDeclarationStatements(e.locals,e,t,n):[]},isImportRequiredByAugmentation:function(e){const t=C_(e);if(!t.symbol)return!1;const n=fB(e);if(!n)return!1;if(n===t)return!1;const r=ea(t.symbol);for(const i of Ke(r.values()))if(i.mergeId){const e=oa(i);if(e.declarations)for(const t of e.declarations)if(C_(t)===n)return!0}return!1},isDefinitelyReferenceToGlobalSymbolObject:ho},ae=function(){return{typeToTypeNode:(e,t,n,r)=>c(t,n,r,(t=>u(e,t))),typePredicateToTypePredicateNode:(e,t,n,r)=>c(t,n,r,(t=>I(e,t))),expressionOrTypeToTypeNode:(e,t,n,r,i,s)=>c(r,i,s,(r=>o(r,e,t,n))),serializeTypeForDeclaration:(e,t,n,r,i,o)=>c(r,i,o,(r=>de(r,e,t,n))),serializeReturnTypeForSignature:(e,t,n,r)=>c(t,n,r,(t=>pe(t,e))),indexInfoToIndexSignatureDeclaration:(e,t,n,r)=>c(t,n,r,(t=>b(e,t,void 0))),signatureToSignatureDeclaration:(e,t,n,r,i)=>c(n,r,i,(n=>x(e,t,n))),symbolToEntityName:(e,t,n,r,i)=>c(n,r,i,(n=>ee(e,n,t,!1))),symbolToExpression:(e,t,n,r,i)=>c(n,r,i,(n=>ne(e,n,t))),symbolToTypeParameterDeclarations:(e,t,n,r)=>c(t,n,r,(t=>K(e,t))),symbolToParameterDeclaration:(e,t,n,r)=>c(t,n,r,(t=>F(e,t))),typeParameterToDeclaration:(e,t,n,r)=>c(t,n,r,(t=>C(e,t))),symbolTableToDeclarationStatements:(e,t,i,o)=>c(t,i,o,(t=>function(e,t){var i;const o=Te(oE.createPropertyDeclaration,174,!0),s=Te(((e,t,n,r)=>oE.createPropertySignature(e,t,n,r)),173,!1),c=t.enclosingDeclaration;let l=[];const d=new Set,p=[],f=t;t={...f,usedSymbolNames:new Set(f.usedSymbolNames),remappedSymbolNames:new Map,remappedSymbolReferences:new Map(null==(i=f.remappedSymbolReferences)?void 0:i.entries()),tracker:void 0};const g={...f.tracker.inner,trackSymbol:(e,n,r)=>{var i,o;if(null==(i=t.remappedSymbolNames)?void 0:i.has(Qz(e)))return!1;if(0===La(e,n,r,!1).accessibility){const n=q(e,t,r);if(!(4&e.flags)){const e=n[0],t=C_(f.enclosingDeclaration);$(e.declarations,(e=>C_(e)===t))&&H(e)}}else if(null==(o=f.tracker.inner)?void 0:o.trackSymbol)return f.tracker.inner.trackSymbol(e,n,r);return!1}};t.tracker=new rU(t,g,f.tracker.moduleResolverHost),f_(e,((e,t)=>{Pe(e,wc(t))}));let v=!t.bundled;const S=e.get("export=");S&&e.size>1&&2098688&S.flags&&(e=o_()).set("export=",S);return B(e),F(l);function k(e){return!!e&&80===e.kind}function N(e){return FA(e)?M(R(e.declarationList.declarations,Oc),k):M([Oc(e)],k)}function A(e){const t=w(e,SI),n=E(e,sI);let r=-1!==n?e[n]:void 0;if(r&&t&&t.isExportEquals&&YC(t.expression)&&YC(r.name)&&kc(r.name)===kc(t.expression)&&r.body&&aI(r.body)){const i=M(e,(e=>!!(32&nb(e)))),o=r.name;let s=r.body;if(m(i)&&(r=oE.updateModuleDeclaration(r,r.modifiers,r.name,s=oE.updateModuleBlock(s,oE.createNodeArray([...r.body.statements,oE.createExportDeclaration(void 0,!1,oE.createNamedExports(R(U(i,(e=>N(e))),(e=>oE.createExportSpecifier(!1,void 0,e)))),void 0)]))),e=[...e.slice(0,n),r,...e.slice(n+1)]),!w(e,(e=>e!==r&&Ic(e,o)))){l=[];const n=!$(s.statements,(e=>Kv(e,32)||SI(e)||TI(e)));h(s.statements,(e=>{Y(e,n?32:0)})),e=[...M(e,(e=>e!==r&&e!==t)),...l]}}return e}function I(e){const t=M(e,(e=>TI(e)&&!e.moduleSpecifier&&!!e.exportClause&&wI(e.exportClause)));if(m(t)>1){e=[...M(e,(e=>!TI(e)||!!e.moduleSpecifier||!e.exportClause)),oE.createExportDeclaration(void 0,!1,oE.createNamedExports(U(t,(e=>_t(e.exportClause,wI).elements))),void 0)]}const n=M(e,(e=>TI(e)&&!!e.moduleSpecifier&&!!e.exportClause&&wI(e.exportClause)));if(m(n)>1){const t=Ye(n,(e=>MC(e.moduleSpecifier)?">"+e.moduleSpecifier.text:">"));if(t.length!==n.length)for(const n of t)n.length>1&&(e=[...M(e,(e=>!n.includes(e))),oE.createExportDeclaration(void 0,!1,oE.createNamedExports(U(n,(e=>_t(e.exportClause,wI).elements))),n[0].moduleSpecifier)])}return e}function P(e){const t=E(e,(e=>TI(e)&&!e.moduleSpecifier&&!e.attributes&&!!e.exportClause&&wI(e.exportClause)));if(t>=0){const n=e[t],r=J(n.exportClause.elements,(t=>{if(!t.propertyName){const n=M(re(e),(n=>Ic(e[n],t.name)));if(m(n)&&T(n,(t=>sk(e[t])))){for(const t of n)e[t]=j(e[t]);return}}return t}));m(r)?e[t]=oE.updateExportDeclaration(n,n.modifiers,n.isTypeOnly,oE.updateNamedExports(n.exportClause,r),n.moduleSpecifier,n.attributes):en(e,t)}return e}function F(e){return e=P(e=I(e=A(e))),c&&(YI(c)&&of(c)||sI(c))&&(!$(e,cd)||!sd(e)&&$(e,ad))&&e.push(HD(oE)),e}function j(e){const t=-129&nb(e)|32;return oE.replaceModifiers(e,t)}function z(e){const t=-33&nb(e);return oE.replaceModifiers(e,t)}function B(e,t,n){t||p.push(new Map),e.forEach((e=>{K(e,!1,!!n)})),t||(p[p.length-1].forEach((e=>{K(e,!0,!!n)})),p.pop())}function K(e,n,r){Q_($l(e));const i=oa(e);if(d.has(Qz(i)))return;d.add(Qz(i));if(!n||m(e.declarations)&&$(e.declarations,(e=>!!bc(e,(e=>e===c))))){const i=ae(t);W(e,n,r),i()}}function W(e,n,i,o=e.escapedName){var s,a,c,l,u,d;const _=wc(o),p="default"===o;if(n&&!(131072&t.flags)&&Ug(_)&&!p)return void(t.encounteredError=!0);let f=p&&!!(-113&e.flags||16&e.flags&&m(Q_($l(e))))&&!(2097152&e.flags),h=!f&&!n&&Ug(_)&&!p;(f||h)&&(n=!0);const g=(n?0:32)|(p&&!f?2048:0),y=1536&e.flags&&7&e.flags&&"export="!==o,v=y&&Se($l(e),e);if((8208&e.flags||v)&&ue($l(e),e,Pe(e,_),g),524288&e.flags&&Z(e,_,g),98311&e.flags&&"export="!==o&&!(4194304&e.flags)&&!(32&e.flags)&&!(8192&e.flags)&&!v)if(i){xe(e)&&(h=!1,f=!1)}else{const p=$l(e),m=Pe(e,_);if(p.symbol&&p.symbol!==e&&16&p.symbol.flags&&$(p.symbol.declarations,Xw)&&((null==(s=p.symbol.members)?void 0:s.size)||(null==(a=p.symbol.exports)?void 0:a.size)))t.remappedSymbolReferences||(t.remappedSymbolReferences=new Map),t.remappedSymbolReferences.set(Qz(p.symbol),e),W(p.symbol,n,i,o),t.remappedSymbolReferences.delete(Qz(p.symbol));else if(16&e.flags||!Se(p,e)){const i=2&e.flags?AA(e)?2:1:(null==(c=e.parent)?void 0:c.valueDeclaration)&&YI(null==(l=e.parent)?void 0:l.valueDeclaration)?2:void 0,o=!f&&4&e.flags?Ie(m,e):m;let s=e.declarations&&w(e.declarations,(e=>$A(e)));s&&eI(s.parent)&&1===s.parent.declarations.length&&(s=s.parent.parent);const a=null==(u=e.declarations)?void 0:u.find(nA);if(a&&gA(a.parent)&&YC(a.parent.right)&&(null==(d=p.symbol)?void 0:d.valueDeclaration)&&YI(p.symbol.valueDeclaration)){const e=m===a.parent.right.escapedText?void 0:a.parent.right;Y(oE.createExportDeclaration(void 0,!1,oE.createNamedExports([oE.createExportSpecifier(!1,e,m)])),0),t.tracker.trackSymbol(p.symbol,t.enclosingDeclaration,111551)}else{Y(r(t,oE.createVariableStatement(void 0,oE.createVariableDeclarationList([oE.createVariableDeclaration(o,void 0,de(t,void 0,p,e))],i)),s),o!==m?-33&g:g),o===m||n||(Y(oE.createExportDeclaration(void 0,!1,oE.createNamedExports([oE.createExportSpecifier(!1,o,m)])),0),h=!1,f=!1)}}else ue(p,e,m,g)}if(384&e.flags&&ce(e,_,g),32&e.flags&&(4&e.flags&&e.valueDeclaration&&gA(e.valueDeclaration.parent)&&SA(e.valueDeclaration.parent.right)?ve(e,Pe(e,_),g):ge(e,Pe(e,_),g)),(1536&e.flags&&(!y||ie(e))||v)&&oe(e,_,g),64&e.flags&&!(32&e.flags)&&X(e,_,g),2097152&e.flags&&ve(e,Pe(e,_),g),4&e.flags&&"export="===e.escapedName&&xe(e),8388608&e.flags&&e.declarations)for(const r of e.declarations){const e=Bs(r,r.moduleSpecifier);e&&Y(oE.createExportDeclaration(void 0,r.isTypeOnly,void 0,oE.createStringLiteral(G(e,t))),0)}f?Y(oE.createExportAssignment(void 0,!1,oE.createIdentifier(Pe(e,_))),0):h&&Y(oE.createExportDeclaration(void 0,!1,oE.createNamedExports([oE.createExportSpecifier(!1,Pe(e,_),_)])),0)}function H(e){if($(e.declarations,dy))return;Tn.assertIsDefined(p[p.length-1]),Ie(wc(e.escapedName),e);const t=!!(2097152&e.flags)&&!$(e.declarations,(e=>!!bc(e,TI)||vI(e)||uI(e)&&!AI(e.moduleReference)));p[t?0:p.length-1].set(Qz(e),e)}function Q(e){return YI(e)&&(of(e)||sf(e))||_p(e)&&!yp(e)}function Y(e,n){if(bM(e)){let r=0;const i=t.enclosingDeclaration&&(Rh(t.enclosingDeclaration)?C_(t.enclosingDeclaration):t.enclosingDeclaration);32&n&&i&&(Q(i)||sI(i))&&sk(e)&&(r|=32),!v||32&r||i&&33554432&i.flags||!(oI(e)||FA(e)||tI(e)||nI(e)||sI(e))||(r|=128),2048&n&&(nI(e)||rI(e)||tI(e))&&(r|=2048),r&&(e=oE.replaceModifiers(e,r|nb(e)))}l.push(e)}function Z(e,n,r){var i;const o=zu(e),s=R(Go(e).typeParameters,(e=>C(e,t))),c=null==(i=e.declarations)?void 0:i.find(Rh),l=vl(c?c.comment||c.parent.comment:void 0),d=t.flags;t.flags|=8388608;const _=t.enclosingDeclaration;t.enclosingDeclaration=c;const p=c&&c.typeExpression&&XI(c.typeExpression)&&a(t,c.typeExpression.type,o,void 0)||u(o,t);Y(wE(oE.createTypeAliasDeclaration(void 0,Pe(e,n),s,p),l?[{kind:3,text:"*\n * "+l.replace(/\n/g,"\n * ")+"\n ",pos:-1,end:-1,hasTrailingNewLine:!0}]:[]),r),t.flags=d,t.enclosingDeclaration=_}function X(e,n,r){const i=ju(e),o=R(gu(e),(e=>C(e,t))),s=Fu(i),a=m(s)?Mv(s):void 0,c=U(Q_(i),(e=>we(e,a))),l=ke(0,i,a,179),u=ke(1,i,a,180),d=Ee(i,a),_=m(s)?[oE.createHeritageClause(96,J(s,(e=>Ne(e,111551))))]:void 0;Y(oE.createInterfaceDeclaration(void 0,Pe(e,n),o,_,[...d,...u,...l,...c]),r)}function te(e){let t=Ke($s(e).values());const n=oa(e);if(n!==e){const e=new Set(t);for(const t of $s(n).values())111551&Ms(Ds(t))||e.add(t);t=Ke(e)}return M(t,(e=>me(e)&&Aa(e.escapedName,99)))}function ie(e){return T(te(e),(e=>!(111551&Ms(Ds(e)))))}function oe(e,n,r){const i=Qe(te(e),(t=>t.parent&&t.parent===e?"real":"merged")),o=i.get("real")||_,s=i.get("merged")||_;if(m(o)){pe(o,Pe(e,n),r,!!(67108880&e.flags))}if(m(s)){const r=C_(t.enclosingDeclaration),i=Pe(e,n),o=oE.createModuleBlock([oE.createExportDeclaration(void 0,!1,oE.createNamedExports(J(M(s,(e=>"export="!==e.escapedName)),(n=>{var i,o;const s=wc(n.escapedName),a=Pe(n,s),c=n.declarations&&us(n);if(r&&(c?r!==C_(c):!$(n.declarations,(e=>C_(e)===r))))return void(null==(o=null==(i=t.tracker)?void 0:i.reportNonlocalAugmentation)||o.call(i,r,e,n));const l=c&&As(c,!0);H(l||n);const u=l?Pe(l,wc(l.escapedName)):a;return oE.createExportSpecifier(!1,s===u?void 0:u,s)}))))]);Y(oE.createModuleDeclaration(void 0,oE.createIdentifier(i),o,32),0)}}function ce(e,t,n){Y(oE.createEnumDeclaration(oE.createModifiersFromModifierFlags(uR(e)?4096:0),Pe(e,t),R(M(Q_($l(e)),(e=>!!(8&e.flags))),(e=>{const t=e.declarations&&e.declarations[0]&&QI(e.declarations[0])?GU(e.declarations[0]):void 0;return oE.createEnumMember(wc(e.escapedName),void 0===t?void 0:"string"==typeof t?oE.createStringLiteral(t):oE.createNumericLiteral(t))}))),n)}function ue(e,n,i,o){const s=pf(e,0);for(const a of s){const e=x(a,262,t,{name:oE.createIdentifier(i)});Y(r(t,e,_e(a)),o)}if(!(1536&n.flags&&n.exports&&n.exports.size)){pe(M(Q_(e),me),i,o,!0)}}function _e(e){if(e.declaration&&e.declaration.parent){if(gA(e.declaration.parent)&&5===dh(e.declaration.parent))return e.declaration.parent;if($A(e.declaration.parent)&&e.declaration.parent.parent)return e.declaration.parent.parent}return e.declaration}function pe(e,n,r,i){if(m(e)){const o=Qe(e,(e=>!m(e.declarations)||$(e.declarations,(e=>C_(e)===C_(t.enclosingDeclaration)))?"local":"remote")).get("local")||_;let s=TM.createModuleDeclaration(void 0,oE.createIdentifier(n),oE.createModuleBlock([]),32);Bw(s,c),s.locals=o_(e),s.symbol=e[0].parent;const a=l;l=[];const u=v;v=!1;const d={...t,enclosingDeclaration:s},p=t;t=d,B(o_(o),i,!0),t=p,v=u;const f=l;l=a;const h=R(f,(e=>SI(e)&&!e.isExportEquals&&YC(e.expression)?oE.createExportDeclaration(void 0,!1,oE.createNamedExports([oE.createExportSpecifier(!1,e.expression,oE.createIdentifier("default"))])):e)),g=T(h,(e=>Kv(e,32)))?R(h,z):h;s=oE.updateModuleDeclaration(s,s.modifiers,s.name,oE.createModuleBlock(g)),Y(s,r)}}function me(e){return!!(2887656&e.flags)||!(4194304&e.flags||"prototype"===e.escapedName||e.valueDeclaration&&Jv(e.valueDeclaration)&&xu(e.valueDeclaration.parent))}function he(e){const r=J(e,(e=>{const r=t.enclosingDeclaration;t.enclosingDeclaration=e;let i=e.expression;if(wb(i)){if(YC(i)&&""===kc(i))return o(void 0);let e;if(({introducesError:e,node:i}=fe(i,t)),e)return o(void 0)}return o(oE.createExpressionWithTypeArguments(i,R(e.typeArguments,(e=>a(t,e,n(t,e))||u(n(t,e),t)))));function o(e){return t.enclosingDeclaration=r,e}}));if(r.length===e.length)return r}function ge(e,n,i){var s,a;const c=null==(s=e.declarations)?void 0:s.find(xu),l=t.enclosingDeclaration;t.enclosingDeclaration=c||l;const u=R(gu(e),(e=>C(e,t))),d=Cd(ju(e)),p=Fu(d),f=c&&Ag(c),g=f&&he(f)||J(function(e){let t=_;if(e.symbol.declarations)for(const n of e.symbol.declarations){const e=Ag(n);if(e)for(const n of e){const e=zx(n);Mc(e)||(t===_?t=[e]:t.push(e))}}return t}(d),Ae),y=$l(e),v=!!(null==(a=y.symbol)?void 0:a.valueDeclaration)&&xu(y.symbol.valueDeclaration),b=v?Au(y):St,x=[...m(p)?[oE.createHeritageClause(96,R(p,(e=>Ce(e,b,n))))]:[],...m(g)?[oE.createHeritageClause(119,g)]:[]],S=function(e,t,n){if(!m(t))return n;const r=new Map;h(n,(e=>{r.set(e.escapedName,e)}));for(const i of t){const t=Q_(Cd(i,e.thisType));for(const e of t){const t=r.get(e.escapedName);t&&e.parent===t.parent&&r.delete(e.escapedName)}}return Ke(r.values())}(d,p,Q_(d)),T=M(S,(e=>{const t=e.valueDeclaration;return!(!t||Pc(t)&&ZC(t.name))})),w=$(S,(e=>{const t=e.valueDeclaration;return!!t&&Pc(t)&&ZC(t.name)}))?[oE.createPropertyDeclaration(void 0,oE.createPrivateIdentifier("#private"),void 0,void 0,void 0)]:_,k=U(T,(e=>o(e,!1,p[0]))),E=U(M(Q_(y),(e=>!(4194304&e.flags||"prototype"===e.escapedName||me(e)))),(e=>o(e,!0,b))),N=!v&&!!e.valueDeclaration&&Um(e.valueDeclaration)&&!$(pf(y,1))?[oE.createConstructorDeclaration(oE.createModifiersFromModifierFlags(2),[],void 0)]:ke(1,y,b,176),A=Ee(d,p[0]);t.enclosingDeclaration=l,Y(r(t,oE.createClassDeclaration(void 0,n,u,x,[...A,...E,...N,...k,...w]),e.declarations&&M(e.declarations,(e=>nI(e)||SA(e)))[0]),i)}function ye(e){return y(e,(e=>{if(xI(e)||kI(e))return kc(e.propertyName||e.name);if(gA(e)||SI(e)){const t=SI(e)?e.expression:e.right;if(nA(t))return kc(t.name)}if(ds(e)){const t=Oc(e);if(t&&YC(t))return kc(t)}}))}function ve(e,n,r){var i,o,s,a,c,l;const u=us(e);if(!u)return Tn.fail();const d=oa(As(u,!0));if(!d)return;let _=hp(d)&&ye(e.declarations)||wc(d.escapedName);"export="===_&&V&&(_="default");const p=Pe(d,_);switch(H(d),u.kind){case 208:if(260===(null==(o=null==(i=u.parent)?void 0:i.parent)?void 0:o.kind)){const e=G(d.parent||d,t),{propertyName:r}=u;Y(oE.createImportDeclaration(void 0,oE.createImportClause(!1,void 0,oE.createNamedImports([oE.createImportSpecifier(!1,r&&YC(r)?oE.createIdentifier(kc(r)):void 0,oE.createIdentifier(n))])),oE.createStringLiteral(e),void 0),0);break}Tn.failBadSyntaxKind((null==(s=u.parent)?void 0:s.parent)||u,"Unhandled binding element grandparent kind in declaration serialization");break;case 304:226===(null==(c=null==(a=u.parent)?void 0:a.parent)?void 0:c.kind)&&be(wc(e.escapedName),p);break;case 260:if(nA(u.initializer)){const e=u.initializer,i=oE.createUniqueName(n),o=G(d.parent||d,t);Y(oE.createImportEqualsDeclaration(void 0,!1,i,oE.createExternalModuleReference(oE.createStringLiteral(o))),0),Y(oE.createImportEqualsDeclaration(void 0,!1,oE.createIdentifier(n),oE.createQualifiedName(i,e.name)),r);break}case 271:if("export="===d.escapedName&&$(d.declarations,(e=>YI(e)&&sf(e)))){xe(e);break}const f=!(512&d.flags||$A(u));Y(oE.createImportEqualsDeclaration(void 0,!1,oE.createIdentifier(n),f?ee(d,t,-1,!1):oE.createExternalModuleReference(oE.createStringLiteral(G(d,t)))),f?r:0);break;case 270:Y(oE.createNamespaceExportDeclaration(kc(u.name)),0);break;case 273:{const e=G(d.parent||d,t),r=t.bundled?oE.createStringLiteral(e):u.parent.moduleSpecifier,i=dI(u.parent)?u.parent.attributes:void 0,o=zD(u.parent);Y(oE.createImportDeclaration(void 0,oE.createImportClause(o,oE.createIdentifier(n),void 0),r,i),0);break}case 274:{const e=G(d.parent||d,t),r=t.bundled?oE.createStringLiteral(e):u.parent.parent.moduleSpecifier,i=zD(u.parent.parent);Y(oE.createImportDeclaration(void 0,oE.createImportClause(i,void 0,oE.createNamespaceImport(oE.createIdentifier(n))),r,u.parent.attributes),0);break}case 280:Y(oE.createExportDeclaration(void 0,!1,oE.createNamespaceExport(oE.createIdentifier(n)),oE.createStringLiteral(G(d,t))),0);break;case 276:{const e=G(d.parent||d,t),r=t.bundled?oE.createStringLiteral(e):u.parent.parent.parent.moduleSpecifier,i=zD(u.parent.parent.parent);Y(oE.createImportDeclaration(void 0,oE.createImportClause(i,void 0,oE.createNamedImports([oE.createImportSpecifier(!1,n!==_?oE.createIdentifier(_):void 0,oE.createIdentifier(n))])),r,u.parent.parent.parent.attributes),0);break}case 281:const m=u.parent.parent.moduleSpecifier;m&&"default"===(null==(l=u.propertyName)?void 0:l.escapedText)&&(_="default"),be(wc(e.escapedName),m?_:p,m&&Hd(m)?oE.createStringLiteral(m.text):void 0);break;case 277:xe(e);break;case 226:case 211:case 212:"default"===e.escapedName||"export="===e.escapedName?xe(e):be(n,p);break;default:return Tn.failBadSyntaxKind(u,"Unhandled alias declaration kind in symbol serializer!")}}function be(e,t,n){Y(oE.createExportDeclaration(void 0,!1,oE.createNamedExports([oE.createExportSpecifier(!1,e!==t?t:void 0,e)]),n),0)}function xe(e){var n;if(4194304&e.flags)return!1;const r=wc(e.escapedName),i="export="===r,o=i||"default"===r,s=e.declarations&&us(e),a=s&&As(s,!0);if(a&&m(a.declarations)&&$(a.declarations,(e=>C_(e)===C_(c)))){const n=s&&(SI(s)||gA(s)?kg(s):Eg(s)),u=n&&wb(n)?function(e){switch(e.kind){case 80:return e;case 166:do{e=e.left}while(80!==e.kind);return e;case 211:do{if(uh(e.expression)&&!ZC(e.name))return e.name;e=e.expression}while(80!==e.kind);return e}}(n):void 0,d=u&&zs(u,-1,!0,!0,c);(d||a)&&H(d||a);const _=t.tracker.disableTrackSymbol;if(t.tracker.disableTrackSymbol=!0,o)l.push(oE.createExportAssignment(void 0,i,ne(a,t,-1)));else if(u===n&&u)be(r,kc(u));else if(n&&SA(n))be(r,Pe(a,Cc(a)));else{const n=Ie(r,e);Y(oE.createImportEqualsDeclaration(void 0,!1,oE.createIdentifier(n),ee(a,t,-1,!1)),0),be(r,n)}return t.tracker.disableTrackSymbol=_,!0}{const s=Ie(r,e),c=eE($l(oa(e)));if(Se(c,e))ue(c,e,s,o?0:32);else{const i=267!==(null==(n=t.enclosingDeclaration)?void 0:n.kind)||98304&e.flags&&!(65536&e.flags)?2:1;Y(oE.createVariableStatement(void 0,oE.createVariableDeclarationList([oE.createVariableDeclaration(s,void 0,de(t,void 0,c,e))],i)),a&&4&a.flags&&"export="===a.escapedName?128:r===s?32:0)}return o?(l.push(oE.createExportAssignment(void 0,i,oE.createIdentifier(s))),!0):r!==s&&(be(r,s),!0)}}function Se(e,n){var r;const i=C_(t.enclosingDeclaration);return 48&Mx(e)&&!$(null==(r=e.symbol)?void 0:r.declarations,Du)&&!m(Sf(e))&&!nc(e)&&!(!m(M(Q_(e),me))&&!m(pf(e,0)))&&!m(pf(e,1))&&!le(n,c)&&!(e.symbol&&$(e.symbol.declarations,(e=>C_(e)!==i)))&&!$(Q_(e),(e=>md(e.escapedName)))&&!$(Q_(e),(e=>$(e.declarations,(e=>C_(e)!==i))))&&T(Q_(e),(e=>!!Aa(Cc(e),D)&&(!(98304&e.flags)||eu(e)===Zl(e))))}function Te(e,n,i){return function(o,s,a){var c,l,u,d,_;const p=xx(o),f=!!(2&p);if(s&&2887656&o.flags)return[];if(4194304&o.flags||"constructor"===o.escapedName||a&&df(a,o.escapedName)&&$F(df(a,o.escapedName))===$F(o)&&(16777216&o.flags)==(16777216&df(a,o.escapedName).flags)&&DS($l(o),Nc(a,o.escapedName)))return[];const m=-1025&p|(s?256:0),g=se(o,t),y=null==(c=o.declarations)?void 0:c.find(pn(gN,Su,$A,hN,gA,nA));if(98304&o.flags&&i){const e=[];if(65536&o.flags){const n=o.declarations&&h(o.declarations,(e=>178===e.kind?e:iA(e)&&_h(e)?h(e.arguments[2].properties,(e=>{const t=Oc(e);if(t&&YC(t)&&"set"===kc(t))return e})):void 0));Tn.assert(!!n);const i=mu(n)?Xf(n).parameters[0]:void 0;e.push(r(t,oE.createSetAccessorDeclaration(oE.createModifiersFromModifierFlags(m),g,[oE.createParameterDeclaration(void 0,void 0,i?L(i,O(i),t):"value",void 0,f?void 0:de(t,void 0,Zl(o),o))],void 0),(null==(l=o.declarations)?void 0:l.find(Ld))||y))}if(32768&o.flags){const n=2&p;e.push(r(t,oE.createGetAccessorDeclaration(oE.createModifiersFromModifierFlags(m),g,[],n?void 0:de(t,void 0,$l(o),o),void 0),(null==(u=o.declarations)?void 0:u.find(jd))||y))}return e}if(98311&o.flags)return r(t,e(oE.createModifiersFromModifierFlags(($F(o)?8:0)|m),g,16777216&o.flags?oE.createToken(58):void 0,f?void 0:de(t,void 0,Zl(o),o),void 0),(null==(d=o.declarations)?void 0:d.find(pn(gN,$A)))||y);if(8208&o.flags){const i=pf($l(o),0);if(2&m)return r(t,e(oE.createModifiersFromModifierFlags(($F(o)?8:0)|m),g,16777216&o.flags?oE.createToken(58):void 0,void 0,void 0),(null==(_=o.declarations)?void 0:_.find(mu))||i[0]&&i[0].declaration||o.declarations&&o.declarations[0]);const s=[];for(const e of i){const i=x(e,n,t,{name:g,questionToken:16777216&o.flags?oE.createToken(58):void 0,modifiers:m?oE.createModifiersFromModifierFlags(m):void 0}),a=e.declaration&&Th(e.declaration.parent)?e.declaration.parent:e.declaration;s.push(r(t,i,a))}return s}return Tn.fail(`Unhandled class member kind! ${o.__debugFlags||o.flags}`)}}function we(e,t){return s(e,!1,t)}function ke(e,n,i,o){const s=pf(n,e);if(1===e){if(!i&&T(s,(e=>0===m(e.parameters))))return[];if(i){const e=pf(i,1);if(!m(e)&&T(s,(e=>0===m(e.parameters))))return[];if(e.length===s.length){let t=!1;for(let n=0;n<e.length;n++)if(!nw(s[n],e[n],!1,!1,!0,PS)){t=!0;break}if(!t)return[]}}let e=0;for(const t of s)t.declaration&&(e|=$v(t.declaration,6));if(e)return[r(t,oE.createConstructorDeclaration(oE.createModifiersFromModifierFlags(e),[],void 0),s[0].declaration)]}const a=[];for(const c of s){const e=x(c,o,t);a.push(r(t,e,c.declaration))}return a}function Ee(e,n){const r=[];for(const i of Sf(e)){if(n){const e=Tf(n,i.keyType);if(e&&DS(i.type,e.type))continue}r.push(b(i,t,void 0))}return r}function Ce(e,n,r){const i=Ne(e,111551);if(i)return i;const o=Ie(`${r}_base`);return Y(oE.createVariableStatement(void 0,oE.createVariableDeclarationList([oE.createVariableDeclaration(o,void 0,u(n,t))],2)),0),oE.createExpressionWithTypeArguments(oE.createIdentifier(o),void 0)}function Ne(e,n){let r,i;if(e.target&&Fa(e.target.symbol,c,n)?(r=R(rg(e),(e=>u(e,t))),i=ne(e.target.symbol,t,788968)):e.symbol&&Fa(e.symbol,c,n)&&(i=ne(e.symbol,t,788968)),i)return oE.createExpressionWithTypeArguments(i,r)}function Ae(e){const n=Ne(e,788968);return n||(e.symbol?oE.createExpressionWithTypeArguments(ne(e.symbol,t,788968),void 0):void 0)}function Ie(e,n){var r,i;const o=n?Qz(n):void 0;if(o&&t.remappedSymbolNames.has(o))return t.remappedSymbolNames.get(o);n&&(e=De(n,e));let s=0;const a=e;for(;null==(r=t.usedSymbolNames)?void 0:r.has(e);)s++,e=`${a}_${s}`;return null==(i=t.usedSymbolNames)||i.add(e),o&&t.remappedSymbolNames.set(o,e),e}function De(e,n){if("default"===n||"__class"===n||"__function"===n){const r=t.flags;t.flags|=16777216;const i=lc(e,t);t.flags=r,n=i.length>0&&Zm(i.charCodeAt(0))?Ky(i):i}return"default"===n?n="_default":"export="===n&&(n="_exports"),n=Aa(n,D)&&!Ug(n)?n:"_"+n.replace(/[^a-zA-Z0-9]/g,"_")}function Pe(e,n){const r=Qz(e);return t.remappedSymbolNames.has(r)?t.remappedSymbolNames.get(r):(n=De(e,n),t.remappedSymbolNames.set(r,n),n)}}(e,t))),symbolToNode:(e,t,n,r,i)=>c(n,r,i,(n=>function(e,t,n){if(1073741824&t.flags){if(e.valueDeclaration){const t=Oc(e.valueDeclaration);if(t&&_N(t))return t}const r=Go(e).nameType;if(r&&9216&r.flags)return t.enclosingDeclaration=r.symbol.valueDeclaration,oE.createComputedPropertyName(ne(r.symbol,t,n))}return ne(e,t,n)}(e,n,t)))};function n(e,t,n){const r=function(e){return zx(e)}(t);if(!e.mapper)return r;const i=SS(r,e.mapper);return n&&i!==r?void 0:i}function r(e,t,n){return fy(t)&&16&t.flags&&e.enclosingFile&&e.enclosingFile===C_(vc(t))||(t=oE.cloneNode(t)),t===n?t:n?e.enclosingFile&&e.enclosingFile===C_(vc(n))?vM(aE(t,n),n):aE(t,n):t}function o(e,t,n,r){const i=e.flags;!t||-2147483648&e.flags||ce.serializeTypeOfExpression(t,e,r),e.flags|=-2147483648;const o=function(e,t,n,r){if(t){const i=nd(t)?t.type:fP(t)?mP(t):void 0;if(i&&!Pl(i)){const o=s(e,i,n,t.parent,r);if(o)return o}}r&&(n=Lk(n));return u(n,e)}(e,t,n,r);return e.flags=i,o}function s(e,t,r,i,o){const s=r;o&&(r=Lk(r,!fN(i)));const c=a(e,t,r,i);if(c)return o&&ST(r)&&!qC(n(e,t),(e=>!!(32768&e.flags)))?oE.createUnionTypeNode([c,oE.createKeywordTypeNode(157)]):c;if(o&&s!==r){const n=a(e,t,s,i);if(n)return oE.createUnionTypeNode([n,oE.createKeywordTypeNode(157)])}}function a(e,i,o,s=e.enclosingDeclaration,a=n(e,i,!0)){if(a&&function(e,t,n){if(n===t)return!0;if(e&&(fN(e)||hN(e)||gN(e))&&e.questionToken)return vC(t,524288)===n;return!1}(s,o,a)&&ue(i,o)){const o=function(e,i){t&&t.throwIfCancellationRequested&&t.throwIfCancellationRequested();let o=!1;const{finalizeBoundary:s,startRecoveryScope:a}=d(),c=iU(i,l,Du);if(!s())return;return e.approximateLength+=i.end-i.pos,c;function l(t){if(o)return t;const i=a(),s=function(e){return pu(e)||fD(e)||WN(e)}(t)?_(t):void 0,c=v(t);return null==s||s(),o?Du(t)&&!CN(t)?(i(),function(e,t){const r=n(e,t);return u(r,e)}(e,t)):t:c?r(e,c,t):void 0}function d(){let t,n;const r=e.tracker,i=e.trackedSymbols;e.trackedSymbols=void 0;const s=e.encounteredError;return e.tracker=new rU(e,{...r.inner,reportCyclicStructureError(){a((()=>r.reportCyclicStructureError()))},reportInaccessibleThisError(){a((()=>r.reportInaccessibleThisError()))},reportInaccessibleUniqueSymbolError(){a((()=>r.reportInaccessibleUniqueSymbolError()))},reportLikelyUnsafeImportRequiredError(e){a((()=>r.reportLikelyUnsafeImportRequiredError(e)))},reportNonSerializableProperty(e){a((()=>r.reportNonSerializableProperty(e)))},trackSymbol:(e,n,r)=>((t??(t=[])).push([e,n,r]),!1),moduleResolverHost:e.tracker.moduleResolverHost},e.tracker.moduleResolverHost),{startRecoveryScope:c,finalizeBoundary:l};function a(e){o=!0,(n??(n=[])).push(e)}function c(){const e=(null==t?void 0:t.length)??0,r=(null==n?void 0:n.length)??0;return()=>{o=!1,t&&(t.length=e),n&&(n.length=r)}}function l(){return e.tracker=r,e.trackedSymbols=i,e.encounteredError=s,null==n||n.forEach((e=>e())),!o&&(null==t||t.forEach((([t,n,r])=>e.tracker.trackSymbol(t,n,r))),!0)}}function _(t){return S(e,t,function(e){return pu(e)||fD(e)?Xf(e).parameters:void 0}(t),function(e){return pu(e)||fD(e)?Xf(e).typeParameters:UN(e)?sx(e):[Yu(sa(e.typeParameter))]}(t))}function p(e){const t=pg(e);switch(t.kind){case 183:return y(t);case 186:return g(t);case 199:return f(t);case 198:const e=t;if(143===e.operator)return h(e)}return iU(e,l,Du)}function f(e){const t=p(e.objectType);if(void 0!==t)return oE.updateIndexedAccessTypeNode(e,t,iU(e.indexType,l,Du))}function h(e){Tn.assertEqual(e.operator,143);const t=p(e.type);if(void 0!==t)return oE.updateTypeOperatorNode(e,t)}function g(t){const{introducesError:n,node:i}=fe(t.exprName,e);if(!n)return oE.updateTypeQueryNode(t,i,oU(t.typeArguments,l,Du));const o=me(e,t.exprName,!0);return o?r(e,o,t.exprName):void 0}function y(t){if(he(e,t)){const{introducesError:n,node:i}=fe(t.typeName,e),o=oU(t.typeArguments,l,Du);if(!n){const n=oE.updateTypeReferenceNode(t,i,o);return r(e,n,t)}{const n=me(e,t.typeName,!1,o);if(n)return r(e,n,t.typeName)}}}function v(t){if(XI(t))return iU(t.type,l,Du);if(iD(t)||319===t.kind)return oE.createKeywordTypeNode(133);if(oD(t))return oE.createKeywordTypeNode(159);if(sD(t))return oE.createUnionTypeNode([iU(t.type,l,Du),oE.createLiteralTypeNode(oE.createNull())]);if(cD(t))return oE.createUnionTypeNode([iU(t.type,l,Du),oE.createKeywordTypeNode(157)]);if(aD(t))return iU(t.type,l);if(uD(t))return oE.createArrayTypeNode(iU(t.type,l,Du));if(pD(t))return oE.createTypeLiteralNode(R(t.jsDocPropertyTags,(r=>{const i=iU(YC(r.name)?r.name:r.name.right,l,YC),o=Nc(n(e,t),i.escapedText),s=o&&r.typeExpression&&n(e,r.typeExpression.type)!==o?u(o,e):void 0;return oE.createPropertySignature(void 0,i,r.isBracketed||r.typeExpression&&cD(r.typeExpression.type)?oE.createToken(58):void 0,s||r.typeExpression&&iU(r.typeExpression.type,l,Du)||oE.createKeywordTypeNode(133))})));if(NN(t)&&YC(t.typeName)&&""===t.typeName.escapedText)return aE(oE.createKeywordTypeNode(133),t);if((wA(t)||NN(t))&&Km(t))return oE.createTypeLiteralNode([oE.createIndexSignature(void 0,[oE.createParameterDeclaration(void 0,void 0,"x",void 0,iU(t.typeArguments[0],l,Du))],iU(t.typeArguments[1],l,Du))]);if(lD(t)){if(Fh(t)){let n;return oE.createConstructorTypeNode(void 0,oU(t.typeParameters,l,pN),J(t.parameters,((t,i)=>t.name&&YC(t.name)&&"new"===t.name.escapedText?void(n=t.type):oE.createParameterDeclaration(void 0,a(t),r(e,oE.createIdentifier(c(t,i)),t),oE.cloneNode(t.questionToken),iU(t.type,l,Du),void 0))),iU(n||t.type,l,Du)||oE.createKeywordTypeNode(133))}return oE.createFunctionTypeNode(oU(t.typeParameters,l,pN),R(t.parameters,((t,n)=>oE.createParameterDeclaration(void 0,a(t),r(e,oE.createIdentifier(c(t,n)),t),oE.cloneNode(t.questionToken),iU(t.type,l,Du),void 0))),iU(t.type,l,Du)||oE.createKeywordTypeNode(133))}if(VN(t))return he(e,t)||(o=!0),t;if(pN(t))return oE.updateTypeParameterDeclaration(t,oU(t.modifiers,l,lu),r(e,X(Zu(sa(t)),e),t),iU(t.constraint,l,Du),iU(t.default,l,Du));if(JN(t)){const e=f(t);return e||(o=!0,t)}if(NN(t)){const e=y(t);return e||(o=!0,t)}if(gf(t)){const i=Qo(t).resolvedSymbol;return!Vm(t)||!i||(t.isTypeOf||788968&i.flags)&&m(t.typeArguments)>=Wf(gu(i))?oE.updateImportTypeNode(t,oE.updateLiteralTypeNode(t.argument,d(t,t.argument.literal)),iU(t.attributes,l,hI),iU(t.qualifier,l,uu),oU(t.typeArguments,l,Du),t.isTypeOf):r(e,u(n(e,t),e),t)}if(Pc(t)&&167===t.name.kind&&!fd(t.name)){if(!Qg(t))return i(t,l);if(!(1&e.flags&&wb(t.name.expression)&&1&lP(t.name).flags))return}if(pu(t)&&!t.type||gN(t)&&!t.type&&!t.initializer||hN(t)&&!t.type&&!t.initializer||fN(t)&&!t.type&&!t.initializer){let n=i(t,l);return n===t&&(n=r(e,oE.cloneNode(t),t)),n.type=oE.createKeywordTypeNode(133),fN(t)&&(n.modifiers=void 0),n}if(DN(t)){const e=g(t);return e||(o=!0,t)}if(_N(t)&&wb(t.expression)){const{node:n,introducesError:r}=fe(t.expression,e);if(r){const n=u(eE(wU(t.expression)),e);let r;if(HN(n))r=n.literal;else{const i=yz(t.expression),o="string"==typeof i.value?oE.createStringLiteral(i.value,void 0):"number"==typeof i.value?oE.createNumericLiteral(i.value,0):void 0;if(!o)return GN(n)&&z(t.expression,e.enclosingDeclaration,e),t;r=o}return 11===r.kind&&Aa(r.text,MS(N))?oE.createIdentifier(r.text):9!==r.kind||r.text.startsWith("-")?oE.updateComputedPropertyName(t,r):r}return oE.updateComputedPropertyName(t,n)}if(CN(t)){let n;if(YC(t.parameterName)){const{node:r,introducesError:i}=fe(t.parameterName,e);o=o||i,n=r}else n=oE.cloneNode(t.parameterName);return oE.updateTypePredicateNode(t,oE.cloneNode(t.assertsModifier),n,iU(t.type,l,Du))}if(ON(t)||PN(t)||WN(t)){const n=i(t,l),o=r(e,n===t?oE.cloneNode(t):n,t);return dE(o,rp(o)|(1024&e.flags&&PN(t)?0:1)),o}if(MC(t)&&268435456&e.flags&&!t.singleQuote){const e=oE.cloneNode(t);return e.singleQuote=!0,e}if(UN(t)){const e=iU(t.checkType,l,Du),n=_(t),r=iU(t.extendsType,l,Du),i=iU(t.trueType,l,Du);n();const o=iU(t.falseType,l,Du);return oE.updateConditionalTypeNode(t,e,r,i,o)}if(KN(t))if(158===t.operator&&155===t.type.kind){if(!he(e,t))return o=!0,t}else if(143===t.operator){const e=h(t);return e||(o=!0,t)}return i(t,l);function i(t,n){return fU(t,n,void 0,!e.enclosingFile||e.enclosingFile!==C_(t)?s:void 0)}function s(e,t,n,r,i){let o=oU(e,t,n,r,i);return o&&(-1===o.pos&&-1===o.end||(o===e&&(o=oE.createNodeArray(e.slice(),e.hasTrailingComma)),jw(o,-1,-1))),o}function a(e){return e.dotDotDotToken||(e.type&&uD(e.type)?oE.createToken(26):void 0)}function c(e,t){return e.name&&YC(e.name)&&"this"===e.name.escapedText?"this":a(e)?"args":`arg${t}`}function d(n,r){if(e.bundled||e.enclosingFile!==C_(r)){let i=r.text;const o=Qo(t).resolvedSymbol,s=n.isTypeOf?111551:788968,a=o&&0===La(o,e.enclosingDeclaration,s,!1).accessibility&&B(o,e,s,!0)[0];if(a&&a_(a))i=G(a,e);else{const t=fB(n);t&&(i=G(t.symbol,e))}if(i.includes("/node_modules/")&&(e.encounteredError=!0,e.tracker.reportLikelyUnsafeImportRequiredError&&e.tracker.reportLikelyUnsafeImportRequiredError(i)),i!==r.text)return aE(oE.createStringLiteral(i),r)}return iU(r,l,MC)}}}(e,i);if(o)return o}}function c(t,n,r,i){const o=(null==r?void 0:r.trackSymbol)?r.moduleResolverHost:134217728&n?function(e){return{getCommonSourceDirectory:e.getCommonSourceDirectory?()=>e.getCommonSourceDirectory():()=>"",getCurrentDirectory:()=>e.getCurrentDirectory(),getSymlinkCache:tt(e,e.getSymlinkCache),getPackageJsonInfoCache:()=>{var t;return null==(t=e.getPackageJsonInfoCache)?void 0:t.call(e)},useCaseSensitiveFileNames:tt(e,e.useCaseSensitiveFileNames),redirectTargetsMap:e.redirectTargetsMap,getProjectReferenceRedirect:t=>e.getProjectReferenceRedirect(t),isSourceOfProjectReferenceRedirect:t=>e.isSourceOfProjectReferenceRedirect(t),fileExists:t=>e.fileExists(t),getFileIncludeReasons:()=>e.getFileIncludeReasons(),readFile:e.readFile?t=>e.readFile(t):void 0}}(e):void 0,s={enclosingDeclaration:t,enclosingFile:t&&C_(t),flags:n||0,tracker:void 0,encounteredError:!1,reportedDiagnostic:!1,visitedTypes:void 0,symbolDepth:void 0,inferTypeParameters:void 0,approximateLength:0,trackedSymbols:void 0,bundled:!!N.outFile&&!!t&&of(C_(t)),truncating:!1,usedSymbolNames:void 0,remappedSymbolNames:void 0,remappedSymbolReferences:void 0,reverseMappedStack:void 0,mustCreateTypeParameterSymbolList:!0,typeParameterSymbolList:void 0,mustCreateTypeParametersNamesLookups:!0,typeParameterNames:void 0,typeParameterNamesByText:void 0,typeParameterNamesByTextNextNameCount:void 0,mapper:void 0};s.tracker=new rU(s,r,o);const a=i(s);return s.truncating&&1&s.flags&&s.tracker.reportTruncationError(),s.encounteredError?void 0:a}function l(e){return e.truncating?e.truncating:e.truncating=e.approximateLength>(1&e.flags?n_:t_)}function u(e,o){const s=o.flags,c=function(e,o){var s,c;t&&t.throwIfCancellationRequested&&t.throwIfCancellationRequested();const p=8388608&o.flags;if(o.flags&=-8388609,!e)return 262144&o.flags?(o.approximateLength+=3,oE.createKeywordTypeNode(133)):void(o.encounteredError=!0);536870912&o.flags||(e=Jp(e));if(1&e.flags)return e.aliasSymbol?oE.createTypeReferenceNode(Q(e.aliasSymbol),v(e.aliasTypeArguments,o)):e===Ct?kE(oE.createKeywordTypeNode(133),3,"unresolved"):(o.approximateLength+=3,oE.createKeywordTypeNode(e===It?141:133));if(2&e.flags)return oE.createKeywordTypeNode(159);if(4&e.flags)return o.approximateLength+=6,oE.createKeywordTypeNode(154);if(8&e.flags)return o.approximateLength+=6,oE.createKeywordTypeNode(150);if(64&e.flags)return o.approximateLength+=6,oE.createKeywordTypeNode(163);if(16&e.flags&&!e.aliasSymbol)return o.approximateLength+=7,oE.createKeywordTypeNode(136);if(1056&e.flags){if(8&e.symbol.flags){const t=ca(e.symbol),n=Y(t,o,788968);if(Zu(t)===e)return n;const r=Cc(e.symbol);return Aa(r,1)?L(n,oE.createTypeReferenceNode(r,void 0)):GN(n)?(n.isTypeOf=!0,oE.createIndexedAccessTypeNode(n,oE.createLiteralTypeNode(oE.createStringLiteral(r)))):NN(n)?oE.createIndexedAccessTypeNode(oE.createTypeQueryNode(n.typeName),oE.createLiteralTypeNode(oE.createStringLiteral(r))):Tn.fail("Unhandled type node kind returned from `symbolToTypeNode`.")}return Y(e.symbol,o,788968)}if(128&e.flags)return o.approximateLength+=e.value.length+2,oE.createLiteralTypeNode(dE(oE.createStringLiteral(e.value,!!(268435456&o.flags)),16777216));if(256&e.flags){const t=e.value;return o.approximateLength+=(""+t).length,oE.createLiteralTypeNode(t<0?oE.createPrefixUnaryExpression(41,oE.createNumericLiteral(-t)):oE.createNumericLiteral(t))}if(2048&e.flags)return o.approximateLength+=Aw(e.value).length+1,oE.createLiteralTypeNode(oE.createBigIntLiteral(e.value));if(512&e.flags)return o.approximateLength+=e.intrinsicName.length,oE.createLiteralTypeNode("true"===e.intrinsicName?oE.createTrue():oE.createFalse());if(8192&e.flags){if(!(1048576&o.flags)){if(Oa(e.symbol,o.enclosingDeclaration))return o.approximateLength+=6,Y(e.symbol,o,111551);o.tracker.reportInaccessibleUniqueSymbolError&&o.tracker.reportInaccessibleUniqueSymbolError()}return o.approximateLength+=13,oE.createTypeOperatorNode(158,oE.createKeywordTypeNode(155))}if(16384&e.flags)return o.approximateLength+=4,oE.createKeywordTypeNode(116);if(32768&e.flags)return o.approximateLength+=9,oE.createKeywordTypeNode(157);if(65536&e.flags)return o.approximateLength+=4,oE.createLiteralTypeNode(oE.createNull());if(131072&e.flags)return o.approximateLength+=5,oE.createKeywordTypeNode(146);if(4096&e.flags)return o.approximateLength+=6,oE.createKeywordTypeNode(155);if(67108864&e.flags)return o.approximateLength+=6,oE.createKeywordTypeNode(151);if(nk(e))return 4194304&o.flags&&(o.encounteredError||32768&o.flags||(o.encounteredError=!0),null==(c=(s=o.tracker).reportInaccessibleThisError)||c.call(s)),o.approximateLength+=4,oE.createThisTypeNode();if(!p&&e.aliasSymbol&&(16384&o.flags||(g=e.aliasSymbol,y=o.enclosingDeclaration,0===ja(g,y,788968,!1,!0).accessibility))){const t=v(e.aliasTypeArguments,o);return!Ta(e.aliasSymbol.escapedName)||32&e.aliasSymbol.flags?1===m(t)&&e.aliasSymbol===Yn.symbol?oE.createArrayTypeNode(t[0]):Y(e.aliasSymbol,o,788968,t):oE.createTypeReferenceNode(oE.createIdentifier(""),t)}var g,y;const S=Mx(e);if(4&S)return Tn.assert(!!(524288&e.flags)),e.node?D(e,F):F(e);if(262144&e.flags||3&S){if(262144&e.flags&&A(o.inferTypeParameters,e)){let t;o.approximateLength+=Cc(e.symbol).length+6;const n=Z_(e);if(n){const r=Ph(e,!0);r&&DS(n,r)||(o.approximateLength+=9,t=n&&u(n,o))}return oE.createInferTypeNode(k(e,o,t))}if(4&o.flags&&262144&e.flags){const t=X(e,o);return o.approximateLength+=kc(t).length,oE.createTypeReferenceNode(oE.createIdentifier(kc(t)),void 0)}if(e.symbol)return Y(e.symbol,o,788968);const t=(e===Un||e===Bn)&&i&&i.symbol?(e===Bn?"sub-":"super-")+Cc(i.symbol):"?";return oE.createTypeReferenceNode(oE.createIdentifier(t),void 0)}1048576&e.flags&&e.origin&&(e=e.origin);if(3145728&e.flags){const t=1048576&e.flags?function(e){const t=[];let n=0;for(let r=0;r<e.length;r++){const i=e[r];if(n|=i.flags,!(98304&i.flags)){if(1568&i.flags){const n=512&i.flags?Yt:Uu(i);if(1048576&n.flags){const i=n.types.length;if(r+i<=e.length&&Ex(e[r+i-1])===Ex(n.types[i-1])){t.push(n),r+=i-1;continue}}}t.push(i)}}65536&n&&t.push(jt);32768&n&&t.push(Mt);return t||e}(e.types):e.types;if(1===m(t))return u(t[0],o);const n=v(t,o,!0);return n&&n.length>0?1048576&e.flags?oE.createUnionTypeNode(n):oE.createIntersectionTypeNode(n):void(o.encounteredError||262144&o.flags||(o.encounteredError=!0))}if(48&S)return Tn.assert(!!(524288&e.flags)),I(e);if(4194304&e.flags){const t=e.type;o.approximateLength+=6;const n=u(t,o);return oE.createTypeOperatorNode(143,n)}if(134217728&e.flags){const t=e.texts,n=e.types,r=oE.createTemplateHead(t[0]),i=oE.createNodeArray(R(n,((e,r)=>oE.createTemplateLiteralTypeSpan(u(e,o),(r<n.length-1?oE.createTemplateMiddle:oE.createTemplateTail)(t[r+1])))));return o.approximateLength+=2,oE.createTemplateLiteralType(r,i)}if(268435456&e.flags){const t=u(e.type,o);return Y(e.symbol,o,788968,[t])}if(8388608&e.flags){const t=u(e.objectType,o),n=u(e.indexType,o);return o.approximateLength+=2,oE.createIndexedAccessTypeNode(t,n)}if(16777216&e.flags)return D(e,(e=>T(e)));if(33554432&e.flags){const t=u(e.baseType,o),n=Lg(e)&&ly("NoInfer",!1);return n?Y(n,o,788968,[t]):t}return Tn.fail("Should be unreachable.");function T(e){const t=u(e.checkType,o);if(o.approximateLength+=15,4&o.flags&&e.root.isDistributive&&!(262144&e.checkType.flags)){const r=Sa(Po(262144,"T")),i=X(r,o),s=oE.createTypeReferenceNode(i);o.approximateLength+=37;const a=rS(e.root.checkType,r,e.mapper),c=o.inferTypeParameters;o.inferTypeParameters=e.root.inferTypeParameters;const l=u(SS(e.root.extendsType,a),o);o.inferTypeParameters=c;const d=w(SS(n(o,e.root.node.trueType),a)),_=w(SS(n(o,e.root.node.falseType),a));return oE.createConditionalTypeNode(t,oE.createInferTypeNode(oE.createTypeParameterDeclaration(void 0,oE.cloneNode(s.typeName))),oE.createConditionalTypeNode(oE.createTypeReferenceNode(oE.cloneNode(i)),u(e.checkType,o),oE.createConditionalTypeNode(s,l,d,_),oE.createKeywordTypeNode(146)),oE.createKeywordTypeNode(146))}const r=o.inferTypeParameters;o.inferTypeParameters=e.root.inferTypeParameters;const i=u(e.extendsType,o);o.inferTypeParameters=r;const s=w(ix(e)),a=w(ox(e));return oE.createConditionalTypeNode(t,i,s,a)}function w(e){var t,n,r;return 1048576&e.flags?(null==(t=o.visitedTypes)?void 0:t.has(ov(e)))?(131072&o.flags||(o.encounteredError=!0,null==(r=null==(n=o.tracker)?void 0:n.reportCyclicStructureError)||r.call(n)),d(o)):D(e,(e=>u(e,o))):u(e,o)}function E(e){return!!dS(e)}function C(e){return!!e.target&&E(e.target)&&!E(e)}function N(e){var t;Tn.assert(!!(524288&e.flags));const r=e.declaration.readonlyToken?oE.createToken(e.declaration.readonlyToken.kind):void 0,i=e.declaration.questionToken?oE.createToken(e.declaration.questionToken.kind):void 0;let s,a;const c=!j_(e)&&!(2&z_(e).flags)&&4&o.flags&&!(262144&P_(e).flags&&4194304&(null==(t=Z_(P_(e)))?void 0:t.flags));if(j_(e)){if(C(e)&&4&o.flags){const e=X(Sa(Po(262144,"T")),o);a=oE.createTypeReferenceNode(e)}s=oE.createTypeOperatorNode(143,a||u(z_(e),o))}else if(c){const e=X(Sa(Po(262144,"T")),o);a=oE.createTypeReferenceNode(e),s=a}else s=u(P_(e),o);const l=k(D_(e),o,s),d=e.declaration.nameType?u(M_(e),o):void 0,_=u(Vk(O_(e),!!(4&U_(e))),o),p=oE.createMappedTypeNode(r,l,d,i,_,void 0);o.approximateLength+=10;const f=dE(p,1);if(C(e)&&4&o.flags){const t=SS(Z_(n(o,e.declaration.typeParameter.constraint.type))||Dt,e.mapper);return oE.createConditionalTypeNode(u(z_(e),o),oE.createInferTypeNode(oE.createTypeParameterDeclaration(void 0,oE.cloneNode(a.typeName),2&t.flags?void 0:u(t,o))),f,oE.createKeywordTypeNode(146))}return c?oE.createConditionalTypeNode(u(P_(e),o),oE.createInferTypeNode(oE.createTypeParameterDeclaration(void 0,oE.cloneNode(a.typeName),oE.createTypeOperatorNode(143,u(z_(e),o)))),f,oE.createKeywordTypeNode(146)):f}function I(e){var t,n;const r=e.id,i=e.symbol;if(i){if(!!(8388608&Mx(e))){const n=e.node;if(DN(n)){const t=a(o,n,e);if(t)return t}return(null==(t=o.visitedTypes)?void 0:t.has(r))?d(o):D(e,O)}const c=nc(e)?788968:111551;if(zO(i.valueDeclaration))return Y(i,o,c);if(32&i.flags&&!Bl(i)&&(!(i.valueDeclaration&&xu(i.valueDeclaration)&&2048&o.flags)||nI(i.valueDeclaration)&&0===La(i,o.enclosingDeclaration,c,!1).accessibility)||896&i.flags||s())return Y(i,o,c);if(null==(n=o.visitedTypes)?void 0:n.has(r)){const t=function(e){if(e.symbol&&2048&e.symbol.flags&&e.symbol.declarations){const t=ug(e.symbol.declarations[0].parent);if(iI(t))return sa(t)}return}(e);return t?Y(t,o,788968):d(o)}return D(e,O)}return O(e);function s(){var e;const t=!!(8192&i.flags)&&$(i.declarations,(e=>Jv(e))),n=!!(16&i.flags)&&(i.parent||h(i.declarations,(e=>307===e.parent.kind||268===e.parent.kind)));if(t||n)return(!!(4096&o.flags)||(null==(e=o.visitedTypes)?void 0:e.has(r)))&&(!(8&o.flags)||Oa(i,o.enclosingDeclaration))}}function D(e,t){var n,i,s;const a=e.id,c=16&Mx(e)&&e.symbol&&32&e.symbol.flags,l=4&Mx(e)&&e.node?"N"+Gz(e.node):16777216&e.flags?"N"+Gz(e.root.node):e.symbol?(c?"+":"")+Qz(e.symbol):void 0;o.visitedTypes||(o.visitedTypes=new Set),l&&!o.symbolDepth&&(o.symbolDepth=new Map);const u=o.enclosingDeclaration&&Qo(o.enclosingDeclaration),_=`${ov(e)}|${o.flags}`;u&&(u.serializedTypes||(u.serializedTypes=new Map));const p=null==(n=null==u?void 0:u.serializedTypes)?void 0:n.get(_);if(p)return null==(i=p.trackedSymbols)||i.forEach((([e,t,n])=>o.tracker.trackSymbol(e,t,n))),p.truncating&&(o.truncating=!0),o.approximateLength+=p.addedLength,v(p.node);let f;if(l){if(f=o.symbolDepth.get(l)||0,f>10)return d(o);o.symbolDepth.set(l,f+1)}o.visitedTypes.add(a);const m=o.trackedSymbols;o.trackedSymbols=void 0;const h=o.approximateLength,g=t(e),y=o.approximateLength-h;return o.reportedDiagnostic||o.encounteredError||null==(s=null==u?void 0:u.serializedTypes)||s.set(_,{node:g,truncating:o.truncating,addedLength:y,trackedSymbols:o.trackedSymbols}),o.visitedTypes.delete(a),l&&o.symbolDepth.set(l,f),o.trackedSymbols=m,g;function v(e){return fy(e)||Sc(e)!==e?r(o,oE.cloneNode(fU(e,v,void 0,b,v)),e):e}function b(e,t,n,r,i){return e&&0===e.length?vM(oE.createNodeArray(void 0,e.hasTrailingComma),e):oU(e,t,n,r,i)}}function O(e){if(V_(e)||e.containsError)return N(e);const t=J_(e);if(!t.properties.length&&!t.indexInfos.length){if(!t.callSignatures.length&&!t.constructSignatures.length)return o.approximateLength+=2,dE(oE.createTypeLiteralNode(void 0),1);if(1===t.callSignatures.length&&!t.constructSignatures.length){return x(t.callSignatures[0],184,o)}if(1===t.constructSignatures.length&&!t.callSignatures.length){return x(t.constructSignatures[0],185,o)}}const n=M(t.constructSignatures,(e=>!!(4&e.flags)));if($(n)){const e=R(n,(e=>fh(e)));return t.callSignatures.length+(t.constructSignatures.length-n.length)+t.indexInfos.length+(2048&o.flags?P(t.properties,(e=>!(4194304&e.flags))):m(t.properties))&&e.push(function(e){if(0===e.constructSignatures.length)return e;if(e.objectTypeWithoutAbstractConstructSignatures)return e.objectTypeWithoutAbstractConstructSignatures;const t=M(e.constructSignatures,(e=>!(4&e.flags)));if(e.constructSignatures===t)return e;const n=Ca(e.symbol,e.members,e.callSignatures,$(t)?t:_,e.indexInfos);return e.objectTypeWithoutAbstractConstructSignatures=n,n.objectTypeWithoutAbstractConstructSignatures=n,n}(t)),u(Mv(e),o)}const r=o.flags;o.flags|=4194304;const i=U(t);o.flags=r;const s=oE.createTypeLiteralNode(i);return o.approximateLength+=2,dE(s,1024&o.flags?0:1),s}function F(e){let t=rg(e);if(e.target===Yn||e.target===Zn){if(2&o.flags){const n=u(t[0],o);return oE.createTypeReferenceNode(e.target===Yn?"Array":"ReadonlyArray",[n])}const n=u(t[0],o),r=oE.createArrayTypeNode(n);return e.target===Yn?r:oE.createTypeOperatorNode(148,r)}if(!(8&e.target.objectFlags)){if(2048&o.flags&&e.symbol.valueDeclaration&&xu(e.symbol.valueDeclaration)&&!Oa(e.symbol,o.enclosingDeclaration))return I(e);{const n=e.target.outerTypeParameters;let r,i,s=0;if(n){const e=n.length;for(;s<e;){const i=s,a=jh(n[s]);do{s++}while(s<e&&jh(n[s])===a);if(!Se(n,t,i,s)){const e=v(t.slice(i,s),o),n=o.flags;o.flags|=16;const c=Y(a,o,788968,e);o.flags=n,r=r?L(r,c):c}}}if(t.length>0){const n=(e.target.typeParameters||_).length;i=v(t.slice(s,n),o)}const a=o.flags;o.flags|=16;const c=Y(e.symbol,o,788968,i);return o.flags=a,r?L(r,c):c}}if(t=j(t,((t,n)=>Vk(t,!!(2&e.target.elementFlags[n])))),t.length>0){const n=ag(e),r=v(t.slice(0,n),o);if(r){const{labeledElementDeclarations:t}=e.target;for(let i=0;i<r.length;i++){const n=e.target.elementFlags[i],o=null==t?void 0:t[i];r[i]=o?oE.createNamedTupleMember(12&n?oE.createToken(26):void 0,oE.createIdentifier(wc(cF(o))),2&n?oE.createToken(58):void 0,4&n?oE.createArrayTypeNode(r[i]):r[i]):12&n?oE.createRestTypeNode(4&n?oE.createArrayTypeNode(r[i]):r[i]):2&n?oE.createOptionalTypeNode(r[i]):r[i]}const n=dE(oE.createTupleTypeNode(r),1);return e.target.readonly?oE.createTypeOperatorNode(148,n):n}}if(o.encounteredError||524288&o.flags){const t=dE(oE.createTupleTypeNode([]),1);return e.target.readonly?oE.createTypeOperatorNode(148,t):t}o.encounteredError=!0}function L(e,t){if(GN(e)){let n=e.typeArguments,r=e.qualifier;r&&(YC(r)?n!==VE(r)&&(r=qE(oE.cloneNode(r),n)):n!==VE(r.right)&&(r=oE.updateQualifiedName(r,r.left,qE(oE.cloneNode(r.right),n)))),n=t.typeArguments;const i=z(t);for(const e of i)r=r?oE.createQualifiedName(r,e):e;return oE.updateImportTypeNode(e,e.argument,e.attributes,r,n,e.isTypeOf)}{let n=e.typeArguments,r=e.typeName;YC(r)?n!==VE(r)&&(r=qE(oE.cloneNode(r),n)):n!==VE(r.right)&&(r=oE.updateQualifiedName(r,r.left,qE(oE.cloneNode(r.right),n))),n=t.typeArguments;const i=z(t);for(const e of i)r=oE.createQualifiedName(r,e);return oE.updateTypeReferenceNode(e,r,n)}}function z(e){let t=e.typeName;const n=[];for(;!YC(t);)n.unshift(t.right),t=t.left;return n.unshift(t),n}function U(e){if(l(o))return[oE.createPropertySignature(void 0,"...",void 0,void 0)];const t=[];for(const i of e.callSignatures)t.push(x(i,179,o));for(const i of e.constructSignatures)4&i.flags||t.push(x(i,180,o));for(const i of e.indexInfos)t.push(b(i,o,1024&e.objectFlags?d(o):void 0));const n=e.properties;if(!n)return t;let r=0;for(const i of n){if(r++,2048&o.flags){if(4194304&i.flags)continue;6&xx(i)&&o.tracker.reportPrivateInBaseOfClassExpression&&o.tracker.reportPrivateInBaseOfClassExpression(wc(i.escapedName))}if(l(o)&&r+2<n.length-1){t.push(oE.createPropertySignature(void 0,`... ${n.length-r} more ...`,void 0,void 0)),f(n[n.length-1],o,t);break}f(i,o,t)}return t.length?t:void 0}}(e,o);return o.flags=s,c}function d(e){return e.approximateLength+=3,1&e.flags?oE.createKeywordTypeNode(133):oE.createTypeReferenceNode(oE.createIdentifier("..."),void 0)}function p(e,t){var n;return!!(8192&bx(e))&&(A(t.reverseMappedStack,e)||(null==(n=t.reverseMappedStack)?void 0:n[0])&&!(16&Mx(Ae(t.reverseMappedStack).links.propertyType))||function(){var n;if(((null==(n=t.reverseMappedStack)?void 0:n.length)??0)<3)return!1;for(let r=0;r<3;r++){if(t.reverseMappedStack[t.reverseMappedStack.length-1-r].links.mappedType.symbol!==e.links.mappedType.symbol)return!1}return!0}())}function f(e,t,n){var r;const i=!!(8192&bx(e)),o=p(e,t)?St:eu(e),s=t.enclosingDeclaration;if(t.enclosingDeclaration=void 0,t.tracker.canTrackSymbol&&md(e.escapedName))if(e.declarations){const n=Ee(e.declarations);if(hd(n))if(gA(n)){const e=Oc(n);e&&rA(e)&&Cb(e.argumentExpression)&&z(e.argumentExpression,s,t)}else z(n.name.expression,s,t)}else t.tracker.reportNonSerializableProperty(Qa(e));t.enclosingDeclaration=e.valueDeclaration||(null==(r=e.declarations)?void 0:r[0])||s;const a=se(e,t);if(t.enclosingDeclaration=s,t.approximateLength+=Cc(e).length+1,98304&e.flags){const r=Zl(e);if(o!==r&&!Mc(o)&&!Mc(r)){const r=r_(e,177),i=Xf(r);n.push(g(t,x(i,177,t,{name:a}),r));const o=r_(e,178),s=Xf(o);return void n.push(g(t,x(s,178,t,{name:a}),o))}}const c=16777216&e.flags?oE.createToken(58):void 0;if(8208&e.flags&&!W_(o).length&&!$F(e)){const e=pf(KC(o,(e=>!(32768&e.flags))),0);for(const r of e){const e=x(r,173,t,{name:a,questionToken:c});n.push(f(e))}if(e.length||!c)return}let l;p(e,t)?l=d(t):(i&&(t.reverseMappedStack||(t.reverseMappedStack=[]),t.reverseMappedStack.push(e)),l=o?de(t,void 0,o,e):oE.createKeywordTypeNode(133),i&&t.reverseMappedStack.pop());const u=$F(e)?[oE.createToken(148)]:void 0;u&&(t.approximateLength+=9);const _=oE.createPropertySignature(u,a,c,l);function f(n){var r;const i=null==(r=e.declarations)?void 0:r.find((e=>348===e.kind));if(i){const e=vl(i.comment);e&&wE(n,[{kind:3,text:"*\n * "+e.replace(/\n/g,"\n * ")+"\n ",pos:-1,end:-1,hasTrailingNewLine:!0}])}else e.valueDeclaration&&g(t,n,e.valueDeclaration);return n}n.push(f(_))}function g(e,t,n){return e.enclosingFile&&e.enclosingFile===C_(n)?SE(t,n):t}function v(e,t,n){if($(e)){if(l(t)){if(!n)return[oE.createTypeReferenceNode("...",void 0)];if(e.length>2)return[u(e[0],t),oE.createTypeReferenceNode(`... ${e.length-2} more ...`,void 0),u(e[e.length-1],t)]}const r=!(64&t.flags)?nt():void 0,i=[];let o=0;for(const n of e){if(o++,l(t)&&o+2<e.length-1){i.push(oE.createTypeReferenceNode(`... ${e.length-o} more ...`,void 0));const n=u(e[e.length-1],t);n&&i.push(n);break}t.approximateLength+=2;const s=u(n,t);s&&(i.push(s),r&&Ow(s)&&r.add(s.typeName.escapedText,[n,i.length-1]))}if(r){const e=t.flags;t.flags|=64,r.forEach((e=>{if(!Fw(e,(([e],[t])=>function(e,t){return e===t||!!e.symbol&&e.symbol===t.symbol||!!e.aliasSymbol&&e.aliasSymbol===t.aliasSymbol}(e,t))))for(const[n,r]of e)i[r]=u(n,t)})),t.flags=e}return i}}function b(e,t,n){const r=jp(e)||"x",i=u(e.keyType,t),o=oE.createParameterDeclaration(void 0,void 0,r,void 0,i,void 0);return n||(n=u(e.type||St,t)),e.type||2097152&t.flags||(t.encounteredError=!0),t.approximateLength+=r.length+4,oE.createIndexSignature(e.isReadonly?[oE.createToken(148)]:void 0,[o],n)}function x(e,t,r,i){var o;let s,a;const c=Rd(e,!0)[0],l=S(r,e.declaration,c,e.typeParameters,e.parameters,e.mapper);r.approximateLength+=3,32&r.flags&&e.target&&e.mapper&&e.target.typeParameters?a=e.target.typeParameters.map((t=>u(SS(t,e.mapper),r))):s=e.typeParameters&&e.typeParameters.map((e=>C(e,r)));const d=r.flags;r.flags&=-257;const _=($(c,(e=>e!==c[c.length-1]&&!!(32768&bx(e))))?e.parameters:c).map((e=>F(e,r,176===t))),p=33554432&r.flags?void 0:function(e,t){if(e.thisParameter)return F(e.thisParameter,t);if(e.declaration&&Um(e.declaration)){const r=sl(e.declaration);if(r&&r.typeExpression)return oE.createParameterDeclaration(void 0,void 0,"this",void 0,u(n(t,r.typeExpression),t))}}(e,r);p&&_.unshift(p),r.flags=d;const f=pe(r,e);let m=null==i?void 0:i.modifiers;if(185===t&&4&e.flags){const e=lb(m);m=oE.createModifiersFromModifierFlags(64|e)}const h=179===t?oE.createCallSignature(s,_,f):180===t?oE.createConstructSignature(s,_,f):173===t?oE.createMethodSignature(m,(null==i?void 0:i.name)??oE.createIdentifier(""),null==i?void 0:i.questionToken,s,_,f):174===t?oE.createMethodDeclaration(m,void 0,(null==i?void 0:i.name)??oE.createIdentifier(""),void 0,s,_,f,void 0):176===t?oE.createConstructorDeclaration(m,_,void 0):177===t?oE.createGetAccessorDeclaration(m,(null==i?void 0:i.name)??oE.createIdentifier(""),_,f,void 0):178===t?oE.createSetAccessorDeclaration(m,(null==i?void 0:i.name)??oE.createIdentifier(""),_,void 0):181===t?oE.createIndexSignature(m,_,f):317===t?oE.createJSDocFunctionType(_,f):184===t?oE.createFunctionTypeNode(s,_,f??oE.createTypeReferenceNode(oE.createIdentifier(""))):185===t?oE.createConstructorTypeNode(m,s,_,f??oE.createTypeReferenceNode(oE.createIdentifier(""))):262===t?oE.createFunctionDeclaration(m,void 0,(null==i?void 0:i.name)?_t(i.name,YC):oE.createIdentifier(""),s,_,f,void 0):218===t?oE.createFunctionExpression(m,void 0,(null==i?void 0:i.name)?_t(i.name,YC):oE.createIdentifier(""),s,_,f,oE.createBlock([])):219===t?oE.createArrowFunction(m,s,_,f,void 0,oE.createBlock([])):Tn.assertNever(t);if(a&&(h.typeArguments=oE.createNodeArray(a)),323===(null==(o=e.declaration)?void 0:o.kind)&&339===e.declaration.parent.kind){kE(h,3,ep(e.declaration.parent.parent,!0).slice(2,-2).split(/\r\n|\n|\r/).map((e=>e.replace(/^\s+/," "))).join("\n"),!0)}return null==l||l(),h}function S(e,t,n,r,i,o){const s=ae(e);let a,c;const l=e.enclosingDeclaration,u=e.mapper;if(o&&(e.mapper=o),e.enclosingDeclaration&&t){let t=function(t,n){let r;Tn.assert(e.enclosingDeclaration),Qo(e.enclosingDeclaration).fakeScopeForSignatureDeclaration===t?r=e.enclosingDeclaration:e.enclosingDeclaration.parent&&Qo(e.enclosingDeclaration.parent).fakeScopeForSignatureDeclaration===t&&(r=e.enclosingDeclaration.parent),Tn.assertOptionalNode(r,OA);const i=(null==r?void 0:r.locals)??o_();let o,s;if(n(((e,t)=>{if(r){const t=i.get(e);t?s=_e(s,{name:e,oldSymbol:t}):o=_e(o,e)}i.set(e,t)})),r)return function(){h(o,(e=>i.delete(e))),h(s,(e=>i.set(e.name,e.oldSymbol)))};{const n=oE.createBlock(_);Qo(n).fakeScopeForSignatureDeclaration=t,n.locals=i,Bw(n,e.enclosingDeclaration),e.enclosingDeclaration=n}};a=$(n)?t("params",(e=>{if(n)for(let t=0;t<n.length;t++){const r=n[t],o=null==i?void 0:i[t];i&&o!==r?(e(r.escapedName,gt),o&&e(o.escapedName,gt)):h(r.declarations,(t=>{return fN(t)&&Mu(t.name)?(n(t.name),!0):void 0;function n(t){h(t.elements,(t=>{switch(t.kind){case 232:return;case 208:return function(t){if(Mu(t.name))return n(t.name);const r=sa(t);e(r.escapedName,r)}(t);default:return Tn.assertNever(t)}}))}}))||e(r.escapedName,r)}})):void 0,4&e.flags&&$(r)&&(c=t("typeParams",(t=>{for(const n of r??_){t(X(n,e).escapedText,n.symbol)}})))}return()=>{null==a||a(),null==c||c(),s(),e.enclosingDeclaration=l,e.mapper=u}}function k(e,t,n){const r=t.flags;t.flags&=-513;const i=oE.createModifiersFromModifierFlags(VT(e)),o=X(e,t),s=Tp(e),a=s&&u(s,t);return t.flags=r,oE.createTypeParameterDeclaration(i,o,n,a)}function C(e,t,n=Z_(e)){const r=n&&function(e,t,n){return t&&a(n,t,e)||u(e,n)}(n,Ah(e),t);return k(e,t,r)}function I(e,t){const n=2===e.kind||3===e.kind?oE.createToken(131):void 0,r=1===e.kind||3===e.kind?dE(oE.createIdentifier(e.parameterName),16777216):oE.createThisTypeNode(),i=e.type&&u(e.type,t);return oE.createTypePredicateNode(n,r,i)}function O(e){const t=r_(e,169);return t||(s_(e)?void 0:r_(e,341))}function F(e,t,n){const r=O(e),i=de(t,r,$l(e),e),o=!(8192&t.flags)&&n&&r&&bM(r)?R(Lc(r),oE.cloneNode):void 0,s=r&&Yd(r)||32768&bx(e)?oE.createToken(26):void 0,a=L(e,r,t),c=r&&Mf(r)||16384&bx(e)?oE.createToken(58):void 0,l=oE.createParameterDeclaration(o,s,a,c,i,void 0);return t.approximateLength+=Cc(e).length+3,l}function L(e,t,n){return t&&t.name?80===t.name.kind?dE(oE.cloneNode(t.name),16777216):166===t.name.kind?dE(oE.cloneNode(t.name.right),16777216):function e(t){n.tracker.canTrackSymbol&&_N(t)&&fd(t)&&z(t.expression,n.enclosingDeclaration,n);let r=fU(t,e,void 0,void 0,e);return $N(r)&&(r=oE.updateBindingElement(r,r.dotDotDotToken,r.propertyName,r.name,void 0)),fy(r)||(r=oE.cloneNode(r)),dE(r,16777217)}(t.name):Cc(e)}function z(e,t,n){if(!n.tracker.canTrackSymbol)return;const r=kb(e),i=Le(r,r.escapedText,1160127,void 0,!0);i&&n.tracker.trackSymbol(i,t,111551)}function B(e,t,n,r){return t.tracker.trackSymbol(e,t.enclosingDeclaration,n),q(e,t,n,r)}function q(e,t,n,r){let i;return 262144&e.flags||!(t.enclosingDeclaration||64&t.flags)||134217728&t.flags?i=[e]:(i=Tn.checkDefined(function e(n,i,o){let s,a=Pa(n,t.enclosingDeclaration,i,!!(128&t.flags));if(!a||Ma(a[0],t.enclosingDeclaration,1===a.length?i:Da(i))){const r=ua(a?a[0]:n,t.enclosingDeclaration,i);if(m(r)){s=r.map((e=>$(e.declarations,Va)?G(e,t):void 0));const o=r.map(((e,t)=>t));o.sort(c);const l=o.map((e=>r[e]));for(const t of l){const r=e(t,Da(i),!1);if(r){if(t.exports&&t.exports.get("export=")&&fa(t.exports.get("export="),n)){a=r;break}a=r.concat(a||[pa(t,n)||n]);break}}}}if(a)return a;if(o||!(6144&n.flags)){if(!o&&!r&&h(n.declarations,Va))return;return[n]}function c(e,t){const n=s[e],r=s[t];if(n&&r){const e=Oo(r);return Oo(n)===e?mz(n)-mz(r):e?-1:1}return 0}}(e,n,!0)),Tn.assert(i&&i.length>0)),i}function K(e,t){let n;return 524384&lz(e).flags&&(n=oE.createNodeArray(R(gu(e),(e=>C(e,t))))),n}function W(e,t,n){var r;Tn.assert(e&&0<=t&&t<e.length);const i=e[t],o=Qz(i);if(null==(r=n.typeParameterSymbolList)?void 0:r.has(o))return;let s;if(n.mustCreateTypeParameterSymbolList&&(n.mustCreateTypeParameterSymbolList=!1,n.typeParameterSymbolList=new Set(n.typeParameterSymbolList)),n.typeParameterSymbolList.add(o),512&n.flags&&t<e.length-1){const r=i,o=e[t+1];if(1&bx(o)){const e=function(e){return te(_u(e),gu(e))}(2097152&r.flags?Ps(r):r);s=v(R(e,(e=>Qx(e,o.links.mapper))),n)}else s=K(i,n)}return s}function H(e){return JN(e.objectType)?H(e.objectType):e}function G(e,t,n){let r=r_(e,307);if(!r){const t=y(e.declarations,(t=>_a(t,e)));t&&(r=r_(t,307))}if(r&&void 0!==r.moduleName)return r.moduleName;if(!r&&Oz.test(e.escapedName))return e.escapedName.substring(1,e.escapedName.length-1);if(!t.enclosingFile||!t.tracker.moduleResolverHost)return Oz.test(e.escapedName)?e.escapedName.substring(1,e.escapedName.length-1):C_(xp(e)).fileName;const i=t.enclosingFile,o=n||(null==i?void 0:i.impliedNodeFormat),s=kL(i.path,o),a=Go(e);let c=a.specifierCache&&a.specifierCache.get(s);if(!c){const r=!!N.outFile,{moduleResolverHost:l}=t.tracker,u=r?{...N,baseUrl:l.getCommonSourceDirectory()}:N;c=Ee(uz(e,ze,u,i,l,{importModuleSpecifierPreference:r?"non-relative":"project-relative",importModuleSpecifierEnding:r?"minimal":99===o?"js":void 0},{overrideImportMode:n})),a.specifierCache??(a.specifierCache=new Map),a.specifierCache.set(s,c)}return c}function Q(e){const t=oE.createIdentifier(wc(e.escapedName));return e.parent?oE.createQualifiedName(Q(e.parent),t):t}function Y(e,t,n,r){const i=B(e,t,n,!(16384&t.flags)),o=111551===n;if($(i[0].declarations,Va)){const e=i.length>1?a(i,i.length-1,1):void 0,n=r||W(i,0,t),s=C_(vc(t.enclosingDeclaration)),c=N_(i[0]);let l,u;if(3!==FS(N)&&99!==FS(N)||99===(null==c?void 0:c.impliedNodeFormat)&&c.impliedNodeFormat!==(null==s?void 0:s.impliedNodeFormat)&&(l=G(i[0],t,99),u=oE.createImportAttributes(oE.createNodeArray([oE.createImportAttribute(oE.createStringLiteral("resolution-mode"),oE.createStringLiteral("import"))]))),l||(l=G(i[0],t)),!(67108864&t.flags)&&1!==FS(N)&&l.includes("/node_modules/")){const e=l;if(3===FS(N)||99===FS(N)){const n=99===(null==s?void 0:s.impliedNodeFormat)?1:99;l=G(i[0],t,n),l.includes("/node_modules/")?l=e:u=oE.createImportAttributes(oE.createNodeArray([oE.createImportAttribute(oE.createStringLiteral("resolution-mode"),oE.createStringLiteral(99===n?"import":"require"))]))}u||(t.encounteredError=!0,t.tracker.reportLikelyUnsafeImportRequiredError&&t.tracker.reportLikelyUnsafeImportRequiredError(e))}const d=oE.createLiteralTypeNode(oE.createStringLiteral(l));if(t.approximateLength+=l.length+10,!e||uu(e)){if(e){qE(YC(e)?e:e.right,void 0)}return oE.createImportTypeNode(d,u,e,n,o)}{const t=H(e),r=t.objectType.typeName;return oE.createIndexedAccessTypeNode(oE.createImportTypeNode(d,u,r,n,o),t.indexType)}}const s=a(i,i.length-1,0);if(JN(s))return s;if(o)return oE.createTypeQueryNode(s);{const e=YC(s)?s:s.right,t=VE(e);return qE(e,void 0),oE.createTypeReferenceNode(s,t)}function a(e,n,i){const o=n===e.length-1?r:W(e,n,t),s=e[n],c=e[n-1];let l;if(0===n)t.flags|=16777216,l=lc(s,t),t.approximateLength+=(l?l.length:0)+1,t.flags^=16777216;else if(c&&$s(c)){f_($s(c),((e,t)=>{if(fa(e,s)&&!md(t)&&"export="!==t)return l=wc(t),!0}))}if(void 0===l){const r=y(s.declarations,Oc);if(r&&_N(r)&&uu(r.expression)){const t=a(e,n-1,i);return uu(t)?oE.createIndexedAccessTypeNode(oE.createParenthesizedType(oE.createTypeQueryNode(t)),oE.createTypeQueryNode(r.expression)):t}l=lc(s,t)}if(t.approximateLength+=l.length+1,!(16&t.flags)&&c&&wd(c)&&wd(c).get(s.escapedName)&&fa(wd(c).get(s.escapedName),s)){const t=a(e,n-1,i);return JN(t)?oE.createIndexedAccessTypeNode(t,oE.createLiteralTypeNode(oE.createStringLiteral(l))):oE.createIndexedAccessTypeNode(oE.createTypeReferenceNode(t,o),oE.createLiteralTypeNode(oE.createStringLiteral(l)))}const u=dE(oE.createIdentifier(l),16777216);if(o&&qE(u,oE.createNodeArray(o)),u.symbol=s,n>i){const t=a(e,n-1,i);return uu(t)?oE.createQualifiedName(t,u):Tn.fail("Impossible construct - an export of an indexed access cannot be reachable")}return u}}function Z(e,t,n){const r=Le(t.enclosingDeclaration,e,788968,void 0,!1);return!!(r&&262144&r.flags)&&r!==n.symbol}function X(e,t){var n,i,o,s;if(4&t.flags&&t.typeParameterNames){const n=t.typeParameterNames.get(ov(e));if(n)return n}let a=ee(e.symbol,t,788968,!0);if(!(80&a.kind))return oE.createIdentifier("(Missing type parameter)");const c=null==(i=null==(n=e.symbol)?void 0:n.declarations)?void 0:i[0];if(c&&pN(c)&&(a=r(t,a,c.name)),4&t.flags){const n=a.escapedText;let r=(null==(o=t.typeParameterNamesByTextNextNameCount)?void 0:o.get(n))||0,i=n;for(;(null==(s=t.typeParameterNamesByText)?void 0:s.has(i))||Z(i,t,e);)r++,i=`${n}_${r}`;if(i!==n){const e=VE(a);a=oE.createIdentifier(i),qE(a,e)}t.mustCreateTypeParametersNamesLookups&&(t.mustCreateTypeParametersNamesLookups=!1,t.typeParameterNames=new Map(t.typeParameterNames),t.typeParameterNamesByTextNextNameCount=new Map(t.typeParameterNamesByTextNextNameCount),t.typeParameterNamesByText=new Set(t.typeParameterNamesByText)),t.typeParameterNamesByTextNextNameCount.set(n,r),t.typeParameterNames.set(ov(e),a),t.typeParameterNamesByText.add(i)}return a}function ee(e,t,n,r){const i=B(e,t,n);return!r||1===i.length||t.encounteredError||65536&t.flags||(t.encounteredError=!0),function e(n,r){const i=W(n,r,t),o=n[r];0===r&&(t.flags|=16777216);const s=lc(o,t);0===r&&(t.flags^=16777216);const a=dE(oE.createIdentifier(s),16777216);i&&qE(a,oE.createNodeArray(i));return a.symbol=o,r>0?oE.createQualifiedName(e(n,r-1),a):a}(i,i.length-1)}function ne(e,t,n){const r=B(e,t,n);return function e(n,r){const i=W(n,r,t),o=n[r];0===r&&(t.flags|=16777216);let s=lc(o,t);0===r&&(t.flags^=16777216);let a=s.charCodeAt(0);if(Zm(a)&&$(o.declarations,Va))return oE.createStringLiteral(G(o,t));if(0===r||ck(s,D)){const t=dE(oE.createIdentifier(s),16777216);return i&&qE(t,oE.createNodeArray(i)),t.symbol=o,r>0?oE.createPropertyAccessExpression(e(n,r-1),t):t}{let t;if(91===a&&(s=s.substring(1,s.length-1),a=s.charCodeAt(0)),!Zm(a)||8&o.flags?""+ +s===s&&(t=oE.createNumericLiteral(+s)):t=oE.createStringLiteral(Ky(s).replace(/\\./g,(e=>e.substring(1))),39===a),!t){const e=dE(oE.createIdentifier(s),16777216);i&&qE(e,oE.createNodeArray(i)),e.symbol=o,t=e}return oE.createElementAccessExpression(e(n,r-1),t)}}(r,r.length-1)}function ie(e){const t=Oc(e);if(!t)return!1;if(_N(t)){return!!(402653316&qR(t.expression).flags)}if(rA(t)){return!!(402653316&qR(t.argumentExpression).flags)}return MC(t)}function oe(e){const t=Oc(e);return!!(t&&MC(t)&&(t.singleQuote||!fy(t)&&cn(ep(t,!1),"'")))}function se(e,t){const n=!!m(e.declarations)&&T(e.declarations,ie),r=!!m(e.declarations)&&T(e.declarations,oe),i=!!(8192&e.flags),o=function(e,t,n,r,i){const o=Go(e).nameType;if(o){if(384&o.flags){const e=""+o.value;return Aa(e,MS(N))||!r&&ek(e)?ek(e)&&cn(e,"-")?oE.createComputedPropertyName(oE.createPrefixUnaryExpression(41,oE.createNumericLiteral(-e))):tk(e,MS(N),n,r,i):oE.createStringLiteral(e,!!n)}if(8192&o.flags)return oE.createComputedPropertyName(ne(o.symbol,t,111551))}}(e,t,r,n,i);if(o)return o;return tk(wc(e.escapedName),MS(N),r,n,i)}function ae(e){const t=e.mustCreateTypeParameterSymbolList,n=e.mustCreateTypeParametersNamesLookups;e.mustCreateTypeParameterSymbolList=!0,e.mustCreateTypeParametersNamesLookups=!0;const r=e.typeParameterNames,i=e.typeParameterNamesByText,o=e.typeParameterNamesByTextNextNameCount,s=e.typeParameterSymbolList;return()=>{e.typeParameterNames=r,e.typeParameterNamesByText=i,e.typeParameterNamesByTextNextNameCount=o,e.typeParameterSymbolList=s,e.mustCreateTypeParameterSymbolList=t,e.mustCreateTypeParametersNamesLookups=n}}function le(e,t){return e.declarations&&w(e.declarations,(e=>!(!pB(e)||t&&!bc(e,(e=>e===t)))))}function ue(e,t){if(!(4&Mx(t)))return!0;if(!NN(e))return!0;ty(e);const n=Qo(e).resolvedSymbol,r=n&&Zu(n);return!r||r!==t.target||m(e.typeArguments)>=Wf(t.target.typeParameters)}function de(e,t,n,r){var i,a;const c=t&&(fN(t)||ND(t))&&BU(t),l=e.enclosingDeclaration,u=e.flags;if(!t||!Rk(t)||-2147483648&e.flags||ce.serializeTypeOfDeclaration(t,e),e.flags|=-2147483648,l&&(!Mc(n)||1&e.flags)){const o=t&&pB(t)?t:le(r);if(o&&!mu(o)&&!SN(o)){const t=pB(o),a=c||!!(4&r.flags&&16777216&r.flags&&dk(o)&&(null==(i=r.links)?void 0:i.mappedType)&&ST(n)),l=!CN(t)&&s(e,t,n,o,a);if(l)return e.flags=u,l}}8192&n.flags&&n.symbol===r&&(!e.enclosingDeclaration||$(r.declarations,(t=>C_(t)===C_(e.enclosingDeclaration))))&&(e.flags|=1048576);const d=t??r.valueDeclaration??(null==(a=r.declarations)?void 0:a[0]),_=d&&function(e){return pu(e)||SI(e)||jf(e)}(d)?eB(d):void 0,p=o(e,_,n,c);return e.flags=u,p}function pe(e,t){const n=256&e.flags,r=e.flags;let i;n&&(e.flags&=-257);const a=wm(t);return!a||n&&Dc(a)?n||(i=oE.createKeywordTypeNode(133)):(!t.declaration||-2147483648&e.flags||ce.serializeReturnTypeForSignature(t.declaration,e),e.flags|=-2147483648,i=function(e,t){const n=Sm(t),r=wm(t);if(e.enclosingDeclaration&&(!Mc(r)||1&e.flags)&&t.declaration&&!fy(t.declaration)){const n=function(e){const t=Iv(e);if(t)return t;if(177===e.kind){const t=$U(e).setAccessor;if(t){const e=vv(t);if(e)return Nv(e)}}return}(t.declaration);if(n){const t=s(e,n,r,e.enclosingDeclaration);if(t)return t}}if(n)return I(n,e);const i=t.declaration&&eB(t.declaration);return o(e,i,r)}(e,t)),e.flags=r,i}function fe(e,t){let n=!1;const i=kb(e);if(Um(e)&&(ch(i)||uh(i.parent)||dN(i.parent)&&lh(i.parent.left)&&ch(i.parent.right)))return n=!0,{introducesError:n,node:e};const o=Ha(e);let s;if(Tv(i))return s=sa(cm(i,!1,!1)),0!==La(s,i,o,!1).accessibility&&(n=!0,t.tracker.reportInaccessibleThisError()),{introducesError:n,node:a(e)};if(s=zs(i,o,!0,!0),t.enclosingDeclaration&&!(s&&262144&s.flags)){s=ma(s);const r=zs(i,o,!0,!0,t.enclosingDeclaration);if(r===gt||void 0===r&&void 0!==s||r&&s&&!fa(ma(r),s))return r!==gt&&t.tracker.reportInferenceFallback(e),n=!0,{introducesError:n,node:e,sym:s}}return s?(1&s.flags&&s.valueDeclaration&&(dy(s.valueDeclaration)||ND(s.valueDeclaration))||(262144&s.flags||gg(e)||0===La(s,t.enclosingDeclaration,o,!1).accessibility?t.tracker.trackSymbol(s,t.enclosingDeclaration,o):(t.tracker.reportInferenceFallback(e),n=!0)),{introducesError:n,node:a(e)}):{introducesError:n,node:e};function a(e){if(e===i){const n=Zu(s),i=262144&s.flags?X(n,t):oE.cloneNode(e);return i.symbol=s,r(t,dE(i,16777216),e)}const n=fU(e,(e=>a(e)),void 0);return n!==e&&r(t,n,e),n}}function me(e,t,n,r){const i=n?111551:788968,o=zs(t,i,!0);if(!o)return;const s=2097152&o.flags?Ps(o):o;return 0===La(o,e.enclosingDeclaration,i,!1).accessibility?Y(s,e,i,r):void 0}function he(e,t){if(Um(t)&&gf(t)){cx(t);const e=Qo(t).resolvedSymbol;return!e||!!((t.isTypeOf||788968&e.flags)&&m(t.typeArguments)>=Wf(gu(e)))}if(VN(t)){if(void 0===e.mapper)return!0;return!!n(e,t,!0)}if(NN(t)){if(Pl(t))return!1;const n=ty(t),r=Qo(t).resolvedSymbol;if(!r)return!1;if(262144&r.flags){const t=Zu(r);if(e.mapper&&Qx(t,e.mapper)!==t)return!1}if(Vm(t))return ue(t,n)&&!Gg(t)&&788968&r.flags}if(KN(t)&&158===t.operator&&155===t.type.kind){const n=e.enclosingDeclaration&&function(e){for(;Qo(e).fakeScopeForSignatureDeclaration;)e=e.parent;return e}(e.enclosingDeclaration);return!!bc(t,(e=>e===n))}return!0}}(),ce=LG(N,{isEntityNameVisible:Ga,isExpandoFunctionDeclaration:qU,getAllAccessorDeclarations:$U,requiresAddingImplicitUndefined:BU,isUndefinedIdentifierExpression:e=>(Tn.assert(Am(e)),xU(e)===pe),isDefinitelyReferenceToGlobalSymbolObject:ho}),le=Ik({evaluateElementAccessExpression:function(e,t){const n=e.expression;if(wb(n)&&Hd(e.argumentExpression)){const r=zs(n,111551,!0);if(r&&384&r.flags){const n=Tc(e.argumentExpression.text),i=r.exports.get(n);if(i)return Tn.assert(C_(i.valueDeclaration)===C_(r.valueDeclaration)),t?vz(e,i,t):WU(i.valueDeclaration)}}return Ak(void 0)},evaluateEntityNameExpression:yz}),ue=o_(),pe=Po(4,"undefined");pe.declarations=[];var fe=Po(1536,"globalThis",8);fe.exports=ue,fe.declarations=[],ue.set(fe.escapedName,fe);var ye,ve,be,xe=Po(4,"arguments"),Te=Po(4,"require"),Ie=N.verbatimModuleSyntax?"verbatimModuleSyntax":"isolatedModules",De=!N.verbatimModuleSyntax,Pe=0,Fe=0,Le=Mk({compilerOptions:N,requireSymbol:Te,argumentsSymbol:xe,globals:ue,getSymbolOfDeclaration:sa,error:wo,getRequiresScopeChangeCache:$o,setRequiresScopeChangeCache:ts,lookup:Yo,onPropertyWithInvalidInitializer:function(e,t,n,r){if(!q)return e&&!r&&is(e,t,t)||wo(e,e&&n.type&&Ja(n.type,e.pos)?ws.Type_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:ws.Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor,Lp(n.name),rs(t)),!0;return!1},onFailedToResolveSymbol:function(e,t,n,r){const i=lt(t)?t:t.escapedText;s((()=>{if(!(e&&(324===e.parent.kind||is(e,i,t)||os(e)||function(e,t,n){const r=1920|(Um(e)?111551:0);if(n===r){const n=Ds(Le(e,t,788968&~r,void 0,!1)),i=e.parent;if(n){if(dN(i)){Tn.assert(i.left===e,"Should only be resolving left side of qualified name as a namespace");const r=i.right.escapedText;if(df(Zu(n),r))return wo(i,ws.Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1,wc(t),wc(r)),!0}return wo(e,ws._0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here,wc(t)),!0}}return!1}(e,i,n)||function(e,t){if(as(t)&&281===e.parent.kind)return wo(e,ws.Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module,t),!0;return!1}(e,i)||function(e,t,n){if(111127&n){if(Ds(Le(e,t,1024,void 0,!1)))return wo(e,ws.Cannot_use_namespace_0_as_a_value,wc(t)),!0}else if(788544&n){if(Ds(Le(e,t,1536,void 0,!1)))return wo(e,ws.Cannot_use_namespace_0_as_a_type,wc(t)),!0}return!1}(e,i,n)||function(e,t,n){if(111551&n){if(as(t)){const n=e.parent.parent;if(n&&n.parent&&KI(n)){const r=n.token,i=n.parent.kind;264===i&&96===r?wo(e,ws.An_interface_cannot_extend_a_primitive_type_like_0_It_can_only_extend_other_named_object_types,wc(t)):263===i&&96===r?wo(e,ws.A_class_cannot_extend_a_primitive_type_like_0_Classes_can_only_extend_constructable_values,wc(t)):263===i&&119===r&&wo(e,ws.A_class_cannot_implement_a_primitive_type_like_0_It_can_only_implement_other_named_object_types,wc(t))}else wo(e,ws._0_only_refers_to_a_type_but_is_being_used_as_a_value_here,wc(t));return!0}const n=Ds(Le(e,t,788544,void 0,!1)),r=n&&Ms(n);if(n&&void 0!==r&&!(111551&r)){const r=wc(t);return!function(e){switch(e){case"Promise":case"Symbol":case"Map":case"WeakMap":case"Set":case"WeakSet":return!0}return!1}(t)?!function(e,t){const n=bc(e.parent,(e=>!_N(e)&&!hN(e)&&(PN(e)||"quit")));if(n&&1===n.members.length){const e=Zu(t);return!!(1048576&e.flags)&&cR(e,384,!0)}return!1}(e,n)?wo(e,ws._0_only_refers_to_a_type_but_is_being_used_as_a_value_here,r):wo(e,ws._0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0,r,"K"===r?"P":"K"):wo(e,ws._0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_es2015_or_later,r),!0}}return!1}(e,i,n)||function(e,t,n){if(788584&n){const n=Ds(Le(e,t,111127,void 0,!1));if(n&&!(1920&n.flags))return wo(e,ws._0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0,wc(t)),!0}return!1}(e,i,n)))){let o,s;if(t&&(s=function(e){const t=rs(e),n=op().get(t);return n&&Ce(n.keys())}(t),s&&wo(e,r,rs(t),s)),!s&&Li<ji){o=DM(e,i,n);if((null==o?void 0:o.valueDeclaration)&&_p(o.valueDeclaration)&&yp(o.valueDeclaration)&&(o=void 0),o){const i=Qa(o),s=gM(e,o,!1),a=1920===n||t&&"string"!=typeof t&&fy(t)?ws.Cannot_find_namespace_0_Did_you_mean_1:s?ws.Could_not_find_name_0_Did_you_mean_1:ws.Cannot_find_name_0_Did_you_mean_1,c=To(e,a,rs(t),i);c.canonicalHead=$p(r,rs(t)),ko(!s,c),o.valueDeclaration&&xw(c,Vp(o.valueDeclaration,ws._0_is_declared_here,i))}}o||s||!t||wo(e,r,rs(t)),Li++}}))},onSuccessfullyResolvedSymbol:function(e,t,n,r,i,o){s((()=>{var s;const a=t.escapedName,c=r&&YI(r)&&of(r);if(e&&(2&n||(32&n||384&n)&&!(111551&~n))){const n=ma(t);(2&n.flags||32&n.flags||384&n.flags)&&function(e,t){var n;if(Tn.assert(!!(2&e.flags||32&e.flags||384&e.flags)),67108881&e.flags&&32&e.flags)return;const r=null==(n=e.declarations)?void 0:n.find((e=>up(e)||xu(e)||266===e.kind));if(void 0===r)return Tn.fail("checkResolvedBlockScopedVariable could not find block-scoped declaration");if(!(33554432&r.flags||Xo(r,t))){let n;const i=Lp(Oc(r));2&e.flags?n=wo(t,ws.Block_scoped_variable_0_used_before_its_declaration,i):32&e.flags?n=wo(t,ws.Class_0_used_before_its_declaration,i):256&e.flags?n=wo(t,ws.Enum_0_used_before_its_declaration,i):(Tn.assert(!!(128&e.flags)),LS(N)&&(n=wo(t,ws.Enum_0_used_before_its_declaration,i))),n&&xw(n,Vp(r,ws._0_is_declared_here,i))}}(n,e)}if(c&&!(111551&~n)&&!(16777216&e.flags)){const n=oa(t);m(n.declarations)&&T(n.declarations,(e=>lI(e)||YI(e)&&!!e.symbol.globalExports))&&Eo(!N.allowUmdGlobalAccess,e,ws._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead,wc(a))}if(i&&!o&&!(111551&~n)){const r=oa(Ed(t)),o=_y(i);r===sa(i)?wo(e,ws.Parameter_0_cannot_reference_itself,Lp(i.name)):r.valueDeclaration&&r.valueDeclaration.pos>i.pos&&o.parent.locals&&Yo(o.parent.locals,r.escapedName,n)===r&&wo(e,ws.Parameter_0_cannot_reference_identifier_1_declared_after_it,Lp(i.name),Lp(e))}if(e&&111551&n&&2097152&t.flags&&!(111551&t.flags)&&!Mw(e)){const n=Rs(t,111551);if(n){const t=281===n.kind||278===n.kind||280===n.kind?ws._0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type:ws._0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type,r=wc(a);ns(wo(e,t,r),n,r)}}if(N.isolatedModules&&t&&c&&!(111551&~n)){const e=Yo(ue,a,n)===t&&YI(r)&&r.locals&&Yo(r.locals,a,-111552);if(e){const t=null==(s=e.declarations)?void 0:s.find((e=>276===e.kind||273===e.kind||274===e.kind||271===e.kind));t&&!Yl(t)&&wo(t,ws.Import_0_conflicts_with_global_value_used_in_this_file_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled,wc(a))}}}))}}),je=Mk({compilerOptions:N,requireSymbol:Te,argumentsSymbol:xe,globals:ue,getSymbolOfDeclaration:sa,error:wo,getRequiresScopeChangeCache:$o,setRequiresScopeChangeCache:ts,lookup:function(e,t,n){const r=Yo(e,t,n);if(r)return r;let i;if(e===ue){i=J(["string","number","boolean","object","bigint","symbol"],(t=>e.has(t.charAt(0).toUpperCase()+t.slice(1))?Po(524288,t):void 0)).concat(Ke(e.values()))}else i=Ke(e.values());return MM(wc(t),i,n)}});const ze={getNodeCount:()=>Re(e.getSourceFiles(),((e,t)=>e+t.nodeCount),0),getIdentifierCount:()=>Re(e.getSourceFiles(),((e,t)=>e+t.identifierCount),0),getSymbolCount:()=>Re(e.getSourceFiles(),((e,t)=>e+t.symbolCount),d),getTypeCount:()=>u,getInstantiationCount:()=>p,getRelationCacheSizes:()=>({assignable:uo.size,identity:po.size,subtype:co.size,strictSubtype:lo.size}),isUndefinedSymbol:e=>e===pe,isArgumentsSymbol:e=>e===xe,isUnknownSymbol:e=>e===gt,getMergedSymbol:oa,symbolIsValue:ha,getDiagnostics:uU,getGlobalDiagnostics:function(){return dU(),oo.getGlobalDiagnostics()},getRecursionIdentity:ew,getUnmatchedProperties:EE,getTypeOfSymbolAtLocation:(e,t)=>{const n=Sc(t);return n?function(e,t){if(e=ma(e),(80===t.kind||81===t.kind)&&(Ib(t)&&(t=t.parent),Am(t)&&(!og(t)||kx(t)))){const n=Uk(kx(t)&&211===t.kind?cM(t,void 0,!0):zR(t));if(ma(Qo(t).resolvedSymbol)===e)return n}if(gg(t)&&Ld(t.parent)&&Rl(t.parent))return Ul(t.parent.symbol);return Db(t)&&kx(t.parent)?Zl(e):eu(e)}(e,n):Et},getTypeOfSymbol:$l,getSymbolsOfParameterPropertyDeclaration:(e,t)=>{const n=Sc(e,fN);return void 0===n?Tn.fail("Cannot get symbols of a synthetic parameter that cannot be resolved to a parse-tree node."):(Tn.assert(cc(n,n.parent)),function(e,t){const n=e.parent,r=e.parent.parent,i=Yo(n.locals,t,111551),o=Yo(wd(r.symbol),t,111551);if(i&&o)return[i,o];return Tn.fail("There should exist two symbols, one as property declaration and one as parameter declaration")}(n,Tc(t)))},getDeclaredTypeOfSymbol:Zu,getPropertiesOfType:Q_,getPropertyOfType:(e,t)=>df(e,Tc(t)),getPrivateIdentifierPropertyOfType:(e,t,n)=>{const r=Sc(n);if(!r)return;const i=dM(Tc(t),r);return i?fM(e,i):void 0},getTypeOfPropertyOfType:(e,t)=>Nc(e,Tc(t)),getIndexInfoOfType:(e,t)=>Tf(e,0===t?Ut:Bt),getIndexInfosOfType:Sf,getIndexInfosOfIndexSymbol:Eh,getSignaturesOfType:pf,getIndexTypeOfType:(e,t)=>wf(e,0===t?Ut:Bt),getIndexType:e=>sb(e),getBaseTypes:Fu,getBaseTypeOfLiteralType:qw,getWidenedType:eE,getWidenedLiteralType:Kw,getTypeFromTypeNode:e=>{const t=Sc(e,Du);return t?zx(t):Et},getParameterType:pF,getParameterIdentifierInfoAtPosition:function(e,t){var n;if(317===(null==(n=e.declaration)?void 0:n.kind))return;const r=e.parameters.length-(tU(e)?1:0);if(t<r){const n=e.parameters[t],r=uF(n);return r?{parameter:r,parameterName:n.escapedName,isRestParameter:!1}:void 0}const i=e.parameters[r]||gt,o=uF(i);if(!o)return;const s=$l(i);if($w(s)){const e=s.target.labeledElementDeclarations,n=null==e?void 0:e[t-r],i=!!(null==n?void 0:n.dotDotDotToken);return n?(Tn.assert(YC(n.name)),{parameter:n.name,parameterName:n.name.escapedText,isRestParameter:i}):void 0}if(t===r)return{parameter:o,parameterName:i.escapedName,isRestParameter:!0};return},getPromisedTypeOfPromise:mL,getAwaitedType:e=>SL(e),getReturnTypeOfSignature:wm,isNullableType:eM,getNullableType:Fk,getNonNullableType:jk,getNonOptionalType:Uk,getTypeArguments:rg,typeToTypeNode:ae.typeToTypeNode,indexInfoToIndexSignatureDeclaration:ae.indexInfoToIndexSignatureDeclaration,signatureToSignatureDeclaration:ae.signatureToSignatureDeclaration,symbolToEntityName:ae.symbolToEntityName,symbolToExpression:ae.symbolToExpression,symbolToNode:ae.symbolToNode,symbolToTypeParameterDeclarations:ae.symbolToTypeParameterDeclarations,symbolToParameterDeclaration:ae.symbolToParameterDeclaration,typeParameterToDeclaration:ae.typeParameterToDeclaration,getSymbolsInScope:(e,t)=>{const n=Sc(e);return n?function(e,t){if(67108864&e.flags)return[];const n=o_();let r=!1;return i(),n.delete("this"),Af(n);function i(){for(;e;){switch(vd(e)&&e.locals&&!rf(e)&&s(e.locals,t),e.kind){case 307:if(!tO(e))break;case 267:a(sa(e).exports,2623475&t);break;case 266:s(sa(e).exports,8&t);break;case 231:e.name&&o(e.symbol,t);case 263:case 264:r||s(wd(sa(e)),788968&t);break;case 218:e.name&&o(e.symbol,t)}Kf(e)&&o(xe,t),r=Jv(e),e=e.parent}s(ue,t)}function o(e,t){if(Tx(e)&t){const t=e.escapedName;n.has(t)||n.set(t,e)}}function s(e,t){t&&e.forEach((e=>{o(e,t)}))}function a(e,t){t&&e.forEach((e=>{r_(e,281)||r_(e,280)||"default"===e.escapedName||o(e,t)}))}}(n,t):[]},getSymbolAtLocation:e=>{const t=Sc(e);return t?xU(t,!0):void 0},getIndexInfosAtLocation:e=>{const t=Sc(e);return t?function(e){if(YC(e)&&nA(e.parent)&&e.parent.name===e){const t=eb(e),n=zR(e.parent.expression);return U(1048576&n.flags?n.types:[n],(e=>M(Sf(e),(e=>bf(t,e.keyType)))))}return}(t):void 0},getShorthandAssignmentValueSymbol:e=>{const t=Sc(e);return t?function(e){if(e&&304===e.kind)return zs(e.name,2208703);return}(t):void 0},getExportSpecifierLocalTargetSymbol:e=>{const t=Sc(e,kI);return t?function(e){return kI(e)?e.parent.parent.moduleSpecifier?Ts(e.parent.parent,e):zs(e.propertyName||e.name,2998271):zs(e,2998271)}(t):void 0},getExportSymbolOfSymbol:e=>oa(e.exportSymbol||e),getTypeAtLocation:e=>{const t=Sc(e);return t?SU(t):Et},getTypeOfAssignmentPattern:e=>{const t=Sc(e,Ou);return t&&TU(t)||Et},getPropertySymbolOfDestructuringAssignment:e=>{const t=Sc(e,YC);return t?function(e){const t=TU(_t(e.parent.parent,Ou));return t&&df(t,e.escapedText)}(t):void 0},signatureToString:(e,t,n,r)=>Ya(e,Sc(t),n,r),typeToString:(e,t,n)=>Za(e,Sc(t),n),symbolToString:(e,t,n,r)=>Qa(e,Sc(t),n,r),typePredicateToString:(e,t,n)=>rc(e,Sc(t),n),writeSignature:(e,t,n,r,i)=>Ya(e,Sc(t),n,r,i),writeType:(e,t,n,r)=>Za(e,Sc(t),n,r),writeSymbol:(e,t,n,r,i)=>Qa(e,Sc(t),n,r,i),writeTypePredicate:(e,t,n,r)=>rc(e,Sc(t),n,r),getAugmentedPropertiesOfType:CU,getRootSymbols:function e(t){const n=function(e){if(6&bx(e))return J(Go(e).containingType.types,(t=>df(t,e.escapedName)));if(33554432&e.flags){const{links:{leftSpread:t,rightSpread:n,syntheticOrigin:r}}=e;return t?[t,n]:r?[r]:hn(function(e){let t,n=e;for(;n=Go(n).target;)t=n;return t}(e))}return}(t);return n?U(n,e):[t]},getSymbolOfExpando:BO,getContextualType:(e,t)=>{const n=Sc(e,td);if(n)return 4&t?Be(n,(()=>JD(n,t))):JD(n,t)},getContextualTypeForObjectLiteralElement:e=>{const t=Sc(e,Iu);return t?DD(t,void 0):void 0},getContextualTypeForArgumentAtIndex:(e,t)=>{const n=Sc(e,Wu);return n&&SD(n,t)},getContextualTypeForJsxAttribute:e=>{const t=Sc(e,Id);return t&&jD(t,void 0)},isContextSensitive:CS,getTypeOfPropertyOfContextualType:CD,getFullyQualifiedName:js,getResolvedSignature:(e,t,n)=>qe(e,t,n,0),getCandidateSignaturesForStringLiteralCompletions:function(e,t){const n=new Set,r=[];Be(t,(()=>qe(e,r,void 0,0)));for(const i of r)n.add(i);r.length=0,Ue(t,(()=>qe(e,r,void 0,0)));for(const i of r)n.add(i);return Ke(n)},getResolvedSignatureForSignatureHelp:(e,t,n)=>Ue(e,(()=>qe(e,t,n,16))),getExpandedParameters:Rd,hasEffectiveRestParameter:vF,containsArgumentsReference:em,getConstantValue:e=>{const t=Sc(e,HU);return t?GU(t):void 0},isValidPropertyAccess:(e,t)=>{const n=Sc(e,Vu);return!!n&&function(e,t){switch(e.kind){case 211:return LM(e,108===e.expression.kind,t,eE(qR(e.expression)));case 166:return LM(e,!1,t,eE(qR(e.left)));case 205:return LM(e,!1,t,zx(e))}}(n,Tc(t))},isValidPropertyAccessForCompletions:(e,t,n)=>{const r=Sc(e,nA);return!!r&&RM(r,t,n)},getSignatureFromDeclaration:e=>{const t=Sc(e,pu);return t?Xf(t):void 0},isImplementationOfOverload:e=>{const t=Sc(e,pu);return t?UU(t):void 0},getImmediateAliasedSymbol:vP,getAliasedSymbol:Ps,getEmitResolver:function(e,t,n){n||uU(e,t);return se},requiresAddingImplicitUndefined:BU,getExportsOfModule:Ys,getExportsAndPropertiesOfModule:function(e){const t=Ys(e),n=Ws(e);if(n!==e){const e=$l(n);Xs(e)&&me(t,Q_(e))}return t},forEachExportAndPropertyOfModule:function(e,t){ea(e).forEach(((e,n)=>{Ta(n)||t(e,n)}));const n=Ws(e);if(n!==e){const e=$l(n);Xs(e)&&function(e,t){e=Ap(e),3670016&e.flags&&J_(e).members.forEach(((e,n)=>{ka(e,n)&&t(e,n)}))}(e,((e,n)=>{t(e,n)}))}},getSymbolWalker:ez((function(e){return zm(e)||St}),Sm,wm,Fu,J_,$l,XE,Z_,kb,rg),getAmbientModules:function(){Vn||(Vn=[],ue.forEach(((e,t)=>{Oz.test(t)&&Vn.push(e)})));return Vn},getJsxIntrinsicTagNamesAt:function(e){const t=NP(Pz.IntrinsicElements,e);return t?Q_(t):_},isOptionalParameter:e=>{const t=Sc(e,fN);return!!t&&Mf(t)},tryGetMemberInModuleExports:(e,t)=>Zs(Tc(e),t),tryGetMemberInModuleExportsAndProperties:(e,t)=>function(e,t){const n=Zs(e,t);if(n)return n;const r=Ws(t);if(r===t)return;const i=$l(r);return Xs(i)?df(i,e):void 0}(Tc(e),t),tryFindAmbientModule:e=>If(e,!0),tryFindAmbientModuleWithoutAugmentations:e=>If(e,!1),getApparentType:Np,getUnionType:fv,isTypeAssignableTo:WS,createAnonymousType:Ca,createSignature:Ad,createSymbol:Po,createIndexInfo:vh,getAnyType:()=>St,getStringType:()=>Ut,getStringLiteralType:Nx,getNumberType:()=>Bt,getNumberLiteralType:Ax,getBigIntType:()=>qt,createPromiseType:zF,createArrayType:jy,getElementTypeOfArrayType:uw,getBooleanType:()=>Yt,getFalseType:e=>e?Vt:Kt,getTrueType:e=>e?Jt:Wt,getVoidType:()=>Xt,getUndefinedType:()=>Mt,getNullType:()=>jt,getESSymbolType:()=>Zt,getNeverType:()=>$t,getOptionalType:()=>Lt,getPromiseType:()=>Ey(!1),getPromiseLikeType:()=>Cy(!1),getAsyncIterableType:()=>{const e=Ay(!1);if(e!==Pn)return e},isSymbolAccessible:La,isArrayType:ow,isTupleType:$w,isArrayLikeType:dw,isEmptyAnonymousObjectType:bT,isTypeInvalidDueToUnionDiscriminant:function(e,t){return t.properties.some((t=>{const n=t.name&&(BI(t.name)?Nx(gk(t.name)):eb(t.name)),r=n&&Sk(n)?Tk(n):void 0,i=void 0===r?void 0:Nc(e,r);return!!i&&zw(i)&&!WS(SU(t),i)}))},getExactOptionalProperties:function(e){return Q_(e).filter((e=>Kk($l(e))))},getAllPossiblePropertiesOfTypes:function(e){const t=fv(e);if(!(1048576&t.flags))return CU(t);const n=o_();for(const r of e)for(const{escapedName:e}of CU(r))if(!n.has(e)){const r=Ip(t,e);r&&n.set(e,r)}return Ke(n.values())},getSuggestedSymbolForNonexistentProperty:NM,getSuggestedSymbolForNonexistentJSXAttribute:AM,getSuggestedSymbolForNonexistentSymbol:(e,t,n)=>DM(e,Tc(t),n),getSuggestedSymbolForNonexistentModule:PM,getSuggestedSymbolForNonexistentClassMember:CM,getBaseConstraintOfType:cp,getDefaultFromTypeParameter:e=>e&&262144&e.flags?Tp(e):void 0,resolveName:(e,t,n,r)=>Le(t,Tc(e),n,void 0,!1,r),getJsxNamespace:e=>wc(vo(e)),getJsxFragmentFactory:e=>{const t=_B(e);return t&&wc(kb(t).escapedText)},getAccessibleSymbolChain:Pa,getTypePredicateOfSignature:Sm,resolveExternalModuleName:e=>{const t=Sc(e,td);return t&&Bs(t,t,!0)},resolveExternalModuleSymbol:Ws,tryGetThisTypeAt:(e,t,n)=>{const r=Sc(e);return r&&qI(r,t,n)},getTypeArgumentConstraint:e=>{const t=Sc(e,Du);return t&&function(e){const t=dt(e.parent,Kd);if(!t)return;const n=iL(t);if(!n)return;const r=Z_(n[t.typeArguments.indexOf(e)]);return r&&SS(r,Gx(n,nL(t,n)))}(t)},getSuggestionDiagnostics:(n,r)=>{const i=Sc(n,YI)||Tn.fail("Could not determine parsed source file.");if(kw(i,N,e))return _;let o;try{return t=r,_U(i),Tn.assert(!!(1&Qo(i).flags)),o=me(o,so.getDiagnostics(i.fileName)),LL(lU(i),((e,t,n)=>{E_(e)||cU(t,!!(33554432&e.flags))||(o||(o=[])).push({...n,category:2})})),o||_}finally{t=void 0}},runWithCancellationToken:(e,n)=>{try{return t=e,n(ze)}finally{t=void 0}},getLocalTypeParametersOfClassOrInterfaceOrTypeAlias:gu,isDeclarationVisible:uc,isPropertyAccessible:jM,getTypeOnlyAliasDeclaration:Rs,getMemberOverrideModifierStatus:function(e,t,n){if(!t.name)return 0;const r=sa(e),i=Zu(r),o=Cd(i),s=$l(r),a=Cg(e)&&Fu(i),c=(null==a?void 0:a.length)?Cd(Ee(a),i.thisType):void 0,l=Au(i),u=t.parent?Hv(t):Kv(t,16);return az(e,s,l,c,i,o,u,Gv(t),Jv(t),!1,Cc(n))},isTypeParameterPossiblyReferenced:uS,typeHasCallOrConstructSignatures:NU,getSymbolFlags:Ms};function Ue(e,t){if(e=bc(e,Ju)){const n=[],r=[];for(;e;){const t=Qo(e);if(n.push([t,t.resolvedSignature]),t.resolvedSignature=void 0,Xw(e)){const t=Go(sa(e)),n=t.type;r.push([t,n]),t.type=void 0}e=bc(e.parent,Ju)}const i=t();for(const[e,t]of n)e.resolvedSignature=t;for(const[e,t]of r)e.type=t;return i}return t()}function Be(e,t){const n=bc(e,Wu);if(n){let t=e;do{Qo(t).skipDirectInference=!0,t=t.parent}while(t&&t!==n)}b=!0;const r=Ue(e,t);if(b=!1,n){let t=e;do{Qo(t).skipDirectInference=void 0,t=t.parent}while(t&&t!==n)}return r}function qe(e,t,n,r){const i=Sc(e,Wu);ye=n;const o=i?jO(i,t,r):void 0;return ye=void 0,o}var Je=new Map,We=new Map,He=new Map,Ge=new Map,Ze=new Map,Xe=new Map,$e=new Map,et=new Map,rt=new Map,it=new Map,ot=new Map,st=new Map,ct=new Map,ut=new Map,pt=new Map,ft=[],mt=new Map,ht=new Set,gt=Po(4,"unknown"),yt=Po(0,"__resolving__"),vt=new Map,bt=new Map,xt=new Set,St=ba(1,"any"),Tt=ba(1,"any",262144,"auto"),wt=ba(1,"any",void 0,"wildcard"),kt=ba(1,"any",void 0,"blocked string"),Et=ba(1,"error"),Ct=ba(1,"unresolved"),At=ba(1,"any",65536,"non-inferrable"),It=ba(1,"intrinsic"),Dt=ba(2,"unknown"),Mt=ba(32768,"undefined"),Ot=K?Mt:ba(32768,"undefined",65536,"widening"),Ft=ba(32768,"undefined",void 0,"missing"),Rt=ne?Ft:Mt,Lt=ba(32768,"undefined",void 0,"optional"),jt=ba(65536,"null"),zt=K?jt:ba(65536,"null",65536,"widening"),Ut=ba(4,"string"),Bt=ba(8,"number"),qt=ba(64,"bigint"),Vt=ba(512,"false",void 0,"fresh"),Kt=ba(512,"false"),Jt=ba(512,"true",void 0,"fresh"),Wt=ba(512,"true");Jt.regularType=Wt,Jt.freshType=Jt,Wt.regularType=Wt,Wt.freshType=Jt,Vt.regularType=Kt,Vt.freshType=Vt,Kt.regularType=Kt,Kt.freshType=Vt;var Gt,Yt=fv([Kt,Wt]),Zt=ba(4096,"symbol"),Xt=ba(16384,"void"),$t=ba(131072,"never"),tn=ba(131072,"never",262144,"silent"),nn=ba(131072,"never",void 0,"implicit"),rn=ba(131072,"never",void 0,"unreachable"),on=ba(67108864,"object"),sn=fv([Ut,Bt]),un=fv([Ut,Bt,Zt]),dn=fv([Bt,qt]),mn=fv([Ut,Bt,Yt,qt,jt,Mt]),gn=cb(["",""],[Bt]),vn=Zx((e=>{return 262144&e.flags?!(t=e).constraint&&!Ah(t)||t.constraint===On?t:t.restrictiveInstantiation||(t.restrictiveInstantiation=Sa(t.symbol),t.restrictiveInstantiation.constraint=On,t.restrictiveInstantiation):e;var t}),(()=>"(restrictive mapper)")),bn=Zx((e=>262144&e.flags?wt:e),(()=>"(permissive mapper)")),xn=ba(131072,"never",void 0,"unique literal"),Sn=Zx((e=>262144&e.flags?xn:e),(()=>"(unique literal mapper)")),wn=Zx((e=>(!Gt||e!==Ln&&e!==jn&&e!==zn||Gt(!0),e)),(()=>"(unmeasurable reporter)")),kn=Zx((e=>(!Gt||e!==Ln&&e!==jn&&e!==zn||Gt(!1),e)),(()=>"(unreliable reporter)")),En=Ca(void 0,x,_,_,_),Cn=Ca(void 0,x,_,_,_);Cn.objectFlags|=2048;var Nn=Po(2048,"__type");Nn.members=o_();var An=Ca(Nn,x,_,_,_),In=Ca(void 0,x,_,_,_),Dn=K?fv([Mt,jt,In]):Dt,Pn=Ca(void 0,x,_,_,_);Pn.instantiations=new Map;var Mn=Ca(void 0,x,_,_,_);Mn.objectFlags|=262144;var On=Ca(void 0,x,_,_,_),Fn=Ca(void 0,x,_,_,_),Rn=Ca(void 0,x,_,_,_),Ln=Sa(),jn=Sa();jn.constraint=Ln;var zn=Sa(),Un=Sa(),Bn=Sa();Bn.constraint=Un;var qn,Vn,Kn,Jn,Wn,Hn,Gn,Qn,Yn,Zn,Xn,$n,er,tr,nr,rr,ir,or,sr,cr,lr,ur,dr,_r,pr,fr,gr,yr,vr,br,xr,Sr,Tr,wr,kr,Er,Cr,Nr,Ar,Ir,Dr,Pr,Mr,Or,Fr,Rr,Lr,jr,zr,Ur,Br,qr,Vr,Kr,Jr,Wr,Hr,Gr,Qr,Yr,Zr,Xr,$r,ei=Jf(1,"<<unresolved>>",0,St),ti=Ad(void 0,void 0,void 0,_,St,void 0,0,0),ni=Ad(void 0,void 0,void 0,_,Et,void 0,0,0),ri=Ad(void 0,void 0,void 0,_,St,void 0,0,0),ii=Ad(void 0,void 0,void 0,_,tn,void 0,0,0),oi=vh(Bt,Ut,!0),si=new Map,ai={get yieldType(){return Tn.fail("Not supported")},get returnType(){return Tn.fail("Not supported")},get nextType(){return Tn.fail("Not supported")}},ci=vj(St,St,St),li=vj(St,St,Dt),ui=vj($t,St,Mt),di={iterableCacheKey:"iterationTypesOfAsyncIterable",iteratorCacheKey:"iterationTypesOfAsyncIterator",iteratorSymbolName:"asyncIterator",getGlobalIteratorType:function(e){return kr||(kr=gy("AsyncIterator",3,e))||Pn},getGlobalIterableType:Ay,getGlobalIterableIteratorType:function(e){return Er||(Er=gy("AsyncIterableIterator",1,e))||Pn},getGlobalGeneratorType:function(e){return Cr||(Cr=gy("AsyncGenerator",3,e))||Pn},resolveIterationType:(e,t)=>SL(e,t,ws.Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member),mustHaveANextMethodDiagnostic:ws.An_async_iterator_must_have_a_next_method,mustBeAMethodDiagnostic:ws.The_0_property_of_an_async_iterator_must_be_a_method,mustHaveAValueDiagnostic:ws.The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_property},_i={iterableCacheKey:"iterationTypesOfIterable",iteratorCacheKey:"iterationTypesOfIterator",iteratorSymbolName:"iterator",getGlobalIteratorType:function(e){return vr||(vr=gy("Iterator",3,e))||Pn},getGlobalIterableType:Iy,getGlobalIterableIteratorType:function(e){return br||(br=gy("IterableIterator",1,e))||Pn},getGlobalGeneratorType:function(e){return xr||(xr=gy("Generator",3,e))||Pn},resolveIterationType:(e,t)=>e,mustHaveANextMethodDiagnostic:ws.An_iterator_must_have_a_next_method,mustBeAMethodDiagnostic:ws.The_0_property_of_an_iterator_must_be_a_method,mustHaveAValueDiagnostic:ws.The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property},pi=new Map,fi=new Map,mi=new Map,hi=0,gi=0,yi=0,vi=!1,bi=0,xi=[],Si=[],Ti=[],wi=0,ki=[],Ei=[],Ni=0,Ai=Nx(""),Ii=Ax(0),Di=Ix({negative:!1,base10Value:"0"}),Pi=[],Mi=[],Oi=[],Fi=0,Ri=!1,Li=0,ji=10,zi=[],Ui=[],Bi=[],qi=[],Vi=[],Ki=[],Ji=[],Wi=[],Hi=[],Gi=[],Qi=[],Yi=[],Zi=[],Xi=[],$i=[],eo=[],to=[],no=[],ro=[],io=0,oo=ky(),so=ky(),ao=fv(Ke(Bz.keys(),Nx)),co=new Map,lo=new Map,uo=new Map,_o=new Map,po=new Map,fo=new Map,mo=[[".mts",".mjs"],[".ts",".js"],[".cts",".cjs"],[".mjs",".mjs"],[".js",".js"],[".cjs",".cjs"],[".tsx",1===N.jsx?".jsx":".js"],[".jsx",".jsx"],[".json",".json"]];return function(){for(const n of e.getSourceFiles())Gj(n,N);let t;qn=new Map;for(const n of e.getSourceFiles())if(!n.redirectInfo){if(!of(n)){const e=n.locals.get("globalThis");if(null==e?void 0:e.declarations)for(const t of e.declarations)oo.add(Vp(t,ws.Declaration_name_conflicts_with_built_in_global_identifier_0,"globalThis"));Wo(ue,n.locals)}if(n.jsGlobalAugmentations&&Wo(ue,n.jsGlobalAugmentations),n.patternAmbientModules&&n.patternAmbientModules.length&&(Kn=te(Kn,n.patternAmbientModules)),n.moduleAugmentations.length&&(t||(t=[])).push(n.moduleAugmentations),n.symbol&&n.symbol.globalExports){n.symbol.globalExports.forEach(((e,t)=>{ue.has(t)||ue.set(t,e)}))}}if(t)for(const e of t)for(const t of e)yp(t.parent)&&Ho(t);(function(){const e=pe.escapedName,t=ue.get(e);t?h(t.declarations,(t=>{ok(t)||oo.add(Vp(t,ws.Declaration_name_conflicts_with_built_in_global_identifier_0,wc(e)))})):ue.set(e,pe)})(),Go(pe).type=Ot,Go(xe).type=gy("IArguments",0,!0),Go(gt).type=Et,Go(fe).type=xa(16,fe),Yn=gy("Array",1,!0),Wn=gy("Object",0,!0),Hn=gy("Function",0,!0),Gn=H&&gy("CallableFunction",0,!0)||Hn,Qn=H&&gy("NewableFunction",0,!0)||Hn,Xn=gy("String",0,!0),$n=gy("Number",0,!0),er=gy("Boolean",0,!0),tr=gy("RegExp",0,!0),rr=jy(St),(ir=jy(Tt))===En&&(ir=Ca(void 0,x,_,_,_));if(Zn=Py("ReadonlyArray",1)||Yn,or=Zn?Oy(Zn,[St]):rr,nr=Py("ThisType",1),t)for(const e of t)for(const t of e)yp(t.parent)||Ho(t);qn.forEach((({firstFile:e,secondFile:t,conflictingSymbols:n})=>{if(n.size<8)n.forEach((({isBlockScoped:e,firstFileLocations:t,secondFileLocations:n},r)=>{const i=e?ws.Cannot_redeclare_block_scoped_variable_0:ws.Duplicate_identifier_0;for(const o of t)Jo(o,i,r,n);for(const o of n)Jo(o,i,r,t)}));else{const r=Ke(n.keys()).join(", ");oo.add(xw(Vp(e,ws.Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0,r),Vp(t,ws.Conflicts_are_in_this_file))),oo.add(xw(Vp(t,ws.Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0,r),Vp(e,ws.Conflicts_are_in_this_file)))}})),qn=void 0}(),ze;function ho(e){return!!nA(e)&&(!!YC(e.name)&&(!(!nA(e.expression)&&!YC(e.expression))&&(YC(e.expression)?"Symbol"===kc(e.expression)&&XE(e.expression)===(hy("Symbol",1160127,void 0)||gt):!!YC(e.expression.expression)&&("Symbol"===kc(e.expression.name)&&"globalThis"===kc(e.expression.expression)&&XE(e.expression.expression)===fe))))}function go(e){return e?pt.get(e):void 0}function yo(e,t){return e&&pt.set(e,t),t}function vo(e){if(e){const t=C_(e);if(t)if(FI(e)){if(t.localJsxFragmentNamespace)return t.localJsxFragmentNamespace;const n=t.pragmas.get("jsxfrag");if(n){const e=at(n)?n[0]:n;if(t.localJsxFragmentFactory=$M(e.arguments.factory,D),iU(t.localJsxFragmentFactory,xo,uu),t.localJsxFragmentFactory)return t.localJsxFragmentNamespace=kb(t.localJsxFragmentFactory).escapedText}const r=_B(e);if(r)return t.localJsxFragmentFactory=r,t.localJsxFragmentNamespace=kb(r).escapedText}else{const e=bo(t);if(e)return t.localJsxNamespace=e}}return Xr||(Xr="React",N.jsxFactory?(iU($r=$M(N.jsxFactory,D),xo),$r&&(Xr=kb($r).escapedText)):N.reactNamespace&&(Xr=Tc(N.reactNamespace))),$r||($r=oE.createQualifiedName(oE.createIdentifier(wc(Xr)),"createElement")),Xr}function bo(e){if(e.localJsxNamespace)return e.localJsxNamespace;const t=e.pragmas.get("jsx");if(t){const n=at(t)?t[0]:t;if(e.localJsxFactory=$M(n.arguments.factory,D),iU(e.localJsxFactory,xo,uu),e.localJsxFactory)return e.localJsxNamespace=kb(e.localJsxFactory).escapedText}}function xo(e){return jw(e,-1,-1),fU(e,xo,void 0)}function So(e,t,n,...r){const i=wo(t,n,...r);return i.skippedOn=e,i}function To(e,t,...n){return e?Vp(e,t,...n):mS(t,...n)}function wo(e,t,...n){const r=To(e,t,...n);return oo.add(r),r}function ko(e,t){e?oo.add(t):so.add({...t,category:2})}function Eo(e,t,n,...r){if(t.pos<0||t.end<0){if(!e)return;const i=C_(t);ko(e,"message"in n?pS(i,0,0,n,...r):Yp(i,n))}else ko(e,"message"in n?Vp(t,n,...r):Wp(C_(t),t,n))}function Co(e,t,n,...r){const i=wo(e,n,...r);if(t){xw(i,Vp(e,ws.Did_you_forget_to_use_await))}return i}function No(e,t){const n=Array.isArray(e)?h(e,rl):rl(e);return n&&xw(t,Vp(n,ws.The_declaration_was_marked_as_deprecated_here)),so.add(t),t}function Ao(e){const t=ca(e);return t&&m(e.declarations)>1?64&t.flags?$(e.declarations,Io):T(e.declarations,Io):!!e.valueDeclaration&&Io(e.valueDeclaration)||m(e.declarations)&&T(e.declarations,Io)}function Io(e){return!!(536870912&ZB(e))}function Do(e,t,n){return No(t,Vp(e,ws._0_is_deprecated,n))}function Po(e,t,n){d++;const r=new a(33554432|e,t);return r.links=new Wz,r.links.checkFlags=n||0,r}function Mo(e,t){const n=Po(1,e);return n.links.type=t,n}function Fo(e,t){const n=Po(4,e);return n.links.type=t,n}function zo(e){let t=0;return 2&e&&(t|=111551),1&e&&(t|=111550),4&e&&(t|=0),8&e&&(t|=900095),16&e&&(t|=110991),32&e&&(t|=899503),64&e&&(t|=788872),256&e&&(t|=899327),128&e&&(t|=899967),512&e&&(t|=110735),8192&e&&(t|=103359),32768&e&&(t|=46015),65536&e&&(t|=78783),262144&e&&(t|=526824),524288&e&&(t|=788968),2097152&e&&(t|=2097152),t}function Uo(e,t){t.mergeId||(t.mergeId=jz,jz++),zi[t.mergeId]=e}function Bo(e){const t=Po(e.flags,e.escapedName);return t.declarations=e.declarations?e.declarations.slice():[],t.parent=e.parent,e.valueDeclaration&&(t.valueDeclaration=e.valueDeclaration),e.constEnumOnlyModule&&(t.constEnumOnlyModule=!0),e.members&&(t.members=new Map(e.members)),e.exports&&(t.exports=new Map(e.exports)),Uo(t,e),t}function qo(e,t,n=!1){if(!(e.flags&zo(t.flags))||67108864&(t.flags|e.flags)){if(t===e)return e;if(!(33554432&e.flags)){const n=Ds(e);if(n===gt)return t;if(n.flags&zo(t.flags)&&!(67108864&(t.flags|n.flags)))return r(e,t),t;e=Bo(n)}512&t.flags&&512&e.flags&&e.constEnumOnlyModule&&!t.constEnumOnlyModule&&(e.constEnumOnlyModule=!1),e.flags|=t.flags,t.valueDeclaration&&kh(e,t.valueDeclaration),me(e.declarations,t.declarations),t.members&&(e.members||(e.members=o_()),Wo(e.members,t.members,n)),t.exports&&(e.exports||(e.exports=o_()),Wo(e.exports,t.exports,n)),n||Uo(e,t)}else 1024&e.flags?e!==fe&&wo(t.declarations&&Oc(t.declarations[0]),ws.Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity,Qa(e)):r(e,t);return e;function r(e,t){const n=!!(384&e.flags||384&t.flags),r=!!(2&e.flags||2&t.flags),o=n?ws.Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations:r?ws.Cannot_redeclare_block_scoped_variable_0:ws.Duplicate_identifier_0,s=t.declarations&&C_(t.declarations[0]),a=e.declarations&&C_(e.declarations[0]),c=A_(s,N.checkJs),l=A_(a,N.checkJs),u=Qa(t);if(s&&a&&qn&&!n&&s!==a){const n=-1===ps(s.path,a.path)?s:a,o=n===s?a:s,d=G(qn,`${n.path}|${o.path}`,(()=>({firstFile:n,secondFile:o,conflictingSymbols:new Map}))),_=G(d.conflictingSymbols,u,(()=>({isBlockScoped:r,firstFileLocations:[],secondFileLocations:[]})));c||i(_.firstFileLocations,t),l||i(_.secondFileLocations,e)}else c||Ko(t,o,u,e),l||Ko(e,o,u,t)}function i(e,t){if(t.declarations)for(const n of t.declarations)he(e,n)}}function Ko(e,t,n,r){h(e.declarations,(e=>{Jo(e,t,n,r.declarations)}))}function Jo(e,t,n,r){const i=(rh(e,!1)?oh(e):Oc(e))||e,o=function(e,t,...n){const r=e?Vp(e,t,...n):mS(t,...n);return oo.lookup(r)||(oo.add(r),r)}(i,t,n);for(const s of r||_){const e=(rh(s,!1)?oh(s):Oc(s))||s;if(e===i)continue;o.relatedInformation=o.relatedInformation||[];const t=Vp(e,ws._0_was_also_declared_here,n),r=Vp(e,ws.and_here);m(o.relatedInformation)>=5||$(o.relatedInformation,(e=>0===bS(e,r)||0===bS(e,t)))||xw(o,m(o.relatedInformation)?r:t)}}function Wo(e,t,n=!1){t.forEach(((t,r)=>{const i=e.get(r);e.set(r,i?qo(i,t,n):oa(t))}))}function Ho(e){var t,n,r;const i=e.parent;if((null==(t=i.symbol.declarations)?void 0:t[0])===i)if(yp(i))Wo(ue,i.symbol.exports);else{let t=qs(e,e,33554432&e.parent.parent.flags?void 0:ws.Invalid_module_name_in_augmentation_module_0_cannot_be_found,!0);if(!t)return;if(t=Ws(t),1920&t.flags)if($(Kn,(e=>t===e.symbol))){const n=qo(i.symbol,t,!0);Jn||(Jn=new Map),Jn.set(e.text,n)}else{if((null==(n=t.exports)?void 0:n.get("__export"))&&(null==(r=i.symbol.exports)?void 0:r.size)){const e=Td(t,"resolvedExports");for(const[n,r]of Ke(i.symbol.exports.entries()))e.has(n)&&!t.exports.has(n)&&qo(e.get(n),r)}qo(t,i.symbol)}else wo(e,ws.Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity,e.text)}else Tn.assert(i.symbol.declarations.length>1)}function Go(e){if(33554432&e.flags)return e.links;const t=Qz(e);return Ui[t]??(Ui[t]=new Wz)}function Qo(e){const t=Gz(e);return Bi[t]||(Bi[t]=new Hz)}function Yo(e,t,n){if(n){const r=oa(e.get(t));if(r){if(r.flags&n)return r;if(2097152&r.flags){if(Ms(r)&n)return r}}}}function Xo(t,n){const r=C_(t),i=C_(n),o=Fp(t);if(r!==i){if(O&&(r.externalModuleIndicator||i.externalModuleIndicator)||!N.outFile||wv(n)||33554432&t.flags)return!0;if(s(n,t))return!0;const o=e.getSourceFiles();return o.indexOf(r)<=o.indexOf(i)}if(16777216&n.flags||wv(n)||$E(n))return!0;if(t.pos<=n.pos&&(!gN(t)||!hm(n.parent)||t.initializer||t.exclamationToken)){if(208===t.kind){const e=Mg(n,208);return e?bc(e,$N)!==bc(t,$N)||t.pos<e.pos:Xo(Mg(t,260),n)}if(260===t.kind)return!function(e,t){switch(e.parent.parent.kind){case 243:case 248:case 250:if(cs(t,e,o))return!0}const n=e.parent.parent;return ld(n)&&cs(t,n.expression,o)}(t,n);if(xu(t)){const e=bc(n,(e=>e===t?"quit":_N(e)?e.parent.parent===t:!L&&mN(e)&&(e.parent===t||vN(e.parent)&&e.parent.parent===t||Tl(e.parent)&&e.parent.parent===t||gN(e.parent)&&e.parent.parent===t||fN(e.parent)&&e.parent.parent.parent===t)));return!e||!(L||!mN(e))&&!!bc(n,(t=>t===e?"quit":pu(t)&&!pm(t)))}return gN(t)?!a(t,n,!1):!cc(t,t.parent)||!(q&&im(t)===im(n)&&s(n,t))}return!!(281===n.parent.kind||277===n.parent.kind&&n.parent.isExportEquals)||(!(277!==n.kind||!n.isExportEquals)||!!s(n,t)&&(!q||!im(t)||!gN(t)&&!cc(t,t.parent)||!a(t,n,!0)));function s(e,t){return!!bc(e,(n=>{if(n===o)return"quit";if(pu(n))return!0;if(bN(n))return t.pos<e.pos;const r=dt(n.parent,gN);if(r){if(r.initializer===n)if(Jv(n.parent)){if(174===t.kind)return!0;if(gN(t)&&im(e)===im(t)){const e=t.name;if(YC(e)||ZC(e)){if(function(e,t,n,r,i){for(const o of n)if(o.pos>=r&&o.pos<=i){const n=oE.createPropertyAccessExpression(oE.createThis(),e);Bw(n.expression,n),Bw(n,o),n.flowNode=o.returnFlowNode;if(!xT(aA(n,t,Lk(t))))return!0}return!1}(e,$l(sa(t)),M(t.parent.members,bN),t.parent.pos,n.pos))return!0}}}else{if(!(172===t.kind&&!Jv(t))||im(e)!==im(t))return!0}}return!1}))}function a(e,t,n){if(t.end>e.end)return!1;return void 0===bc(t,(t=>{if(t===e)return"quit";switch(t.kind){case 219:return!0;case 172:return!n||!(gN(e)&&t.parent===e.parent||cc(e,e.parent)&&t.parent===e.parent.parent)||"quit";case 241:switch(t.parent.kind){case 177:case 174:case 178:return!0;default:return!1}default:return!1}}))}}function $o(e){return Qo(e).declarationRequiresScopeChange}function ts(e,t){Qo(e).declarationRequiresScopeChange=t}function ns(e,t,n){return t?xw(e,Vp(t,281===t.kind||278===t.kind||280===t.kind?ws._0_was_exported_here:ws._0_was_imported_here,n)):e}function rs(e){return lt(e)?wc(e):Lp(e)}function is(e,t,n){if(!YC(e)||e.escapedText!==t||pU(e)||wv(e))return!1;const r=cm(e,!1,!1);let i=r;for(;i;){if(xu(i.parent)){const o=sa(i.parent);if(!o)break;if(df($l(o),t))return wo(e,ws.Cannot_find_name_0_Did_you_mean_the_static_member_1_0,rs(n),Qa(o)),!0;if(i===r&&!Jv(i)){if(df(Zu(o).thisType,t))return wo(e,ws.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0,rs(n)),!0}}i=i.parent}return!1}function os(e){const t=ss(e);return!(!t||!zs(t,64,!0))&&(wo(e,ws.Cannot_extend_an_interface_0_Did_you_mean_implements,ep(t)),!0)}function ss(e){switch(e.kind){case 80:case 211:return e.parent?ss(e.parent):void 0;case 233:if(wb(e.expression))return e.expression;default:return}}function as(e){return"any"===e||"string"===e||"number"===e||"boolean"===e||"never"===e||"unknown"===e}function cs(e,t,n){return!!t&&!!bc(e,(e=>e===t||!!(e===n||pu(e)&&(!pm(e)||3&Jg(e)))&&"quit"))}function ls(e){switch(e.kind){case 271:return e;case 273:return e.parent;case 274:return e.parent.parent;case 276:return e.parent.parent.parent;default:return}}function us(e){return e.declarations&&k(e.declarations,ds)}function ds(e){return 271===e.kind||270===e.kind||273===e.kind&&!!e.name||274===e.kind||280===e.kind||276===e.kind||281===e.kind||277===e.kind&&wg(e)||gA(e)&&2===dh(e)&&wg(e)||Bx(e)&&gA(e.parent)&&e.parent.left===e&&64===e.parent.operatorToken.kind&&_s(e.parent.right)||304===e.kind||303===e.kind&&_s(e.initializer)||260===e.kind&&Hm(e)||208===e.kind&&Hm(e.parent.parent)}function _s(e){return Tg(e)||lA(e)&&zO(e)}function fs(e,t){const n=Es(e);if(n){const e=Kx(n.expression).arguments[0];return YC(n.name)?Ds(df(rm(e),n.name.escapedText)):void 0}if($A(e)||283===e.moduleReference.kind){const t=Bs(e,Fm(e)||Om(e)),n=Ws(t);return Os(e,t,n,!1),n}const r=Ls(e.moduleReference,t);return function(e,t){if(Os(e,void 0,t,!1)&&!e.isTypeOnly){const t=Rs(sa(e)),n=281===t.kind||278===t.kind,r=n?ws.An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type:ws.An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type,i=n?ws._0_was_exported_here:ws._0_was_imported_here,o=278===t.kind?"*":wc(t.name.escapedText);xw(wo(e.moduleReference,r),Vp(t,i,o))}}(e,r),r}function ms(e,t,n,r){const i=e.exports.get("export="),o=i?df($l(i),t,!0):e.exports.get(t),s=Ds(o,r);return Os(n,o,s,!1),s}function hs(e){return SI(e)&&!e.isExportEquals||Kv(e,2048)||kI(e)||vI(e)}function gs(t){return Hd(t)?e.getModeForUsageLocation(C_(t),t):void 0}function ys(e,t){return 99===e&&1===t}function vs(e){return 99===gs(e)&&Qt(e.text,".json")}function bs(e,t,n,r){const i=e&&gs(r);if(e&&void 0!==i&&100<=O&&O<=199){const t=ys(i,e.impliedNodeFormat);if(99===i||t)return t}if(!V)return!1;if(!e||e.isDeclarationFile){const e=ms(t,"default",void 0,!0);return(!e||!$(e.declarations,hs))&&!ms(t,Tc("__esModule"),void 0,n)}return jm(e)?"object"!=typeof e.externalModuleIndicator&&!ms(t,Tc("__esModule"),void 0,n):Qs(t)}function xs(e,t,n){var r;let i;i=hp(e)?e:ms(e,"default",t,n);const o=null==(r=e.declarations)?void 0:r.find(YI),s=Ss(t);if(!s)return i;const a=vs(s),c=bs(o,e,n,s);if(i||c||a){if(c||a){const r=Ws(e,n)||Ds(e,n);return Os(t,e,r,!1),r}}else if(Qs(e)&&!V){const n=O>=5?"allowSyntheticDefaultImports":"esModuleInterop",r=e.exports.get("export=").valueDeclaration,i=wo(t.name,ws.Module_0_can_only_be_default_imported_using_the_1_flag,Qa(e),n);r&&xw(i,Vp(r,ws.This_module_is_declared_with_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag,n))}else _I(t)?function(e,t){var n,r,i;if(null==(n=e.exports)?void 0:n.has(t.symbol.escapedName))wo(t.name,ws.Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead,Qa(e),Qa(t.symbol));else{const n=wo(t.name,ws.Module_0_has_no_default_export,Qa(e)),o=null==(r=e.exports)?void 0:r.get("__export");if(o){const e=null==(i=o.declarations)?void 0:i.find((e=>{var t,n;return!!(TI(e)&&e.moduleSpecifier&&(null==(n=null==(t=Bs(e,e.moduleSpecifier))?void 0:t.exports)?void 0:n.has("default")))}));e&&xw(n,Vp(e,ws.export_Asterisk_does_not_re_export_a_default))}}}(e,t):ks(e,e,t,Ql(t)&&t.propertyName||t.name);return Os(t,i,void 0,!1),i}function Ss(e){switch(e.kind){case 273:return e.parent.moduleSpecifier;case 271:return AI(e.moduleReference)?e.moduleReference.expression:void 0;case 274:case 281:return e.parent.parent.moduleSpecifier;case 276:return e.parent.parent.parent.moduleSpecifier;default:return Tn.assertNever(e)}}function Ts(e,t,n=!1){var r;const i=Fm(e)||e.moduleSpecifier,o=Bs(e,i),s=!nA(t)&&t.propertyName||t.name;if(!YC(s))return;const a=Hs(o,i,!1,"default"===s.escapedText&&V);if(a&&s.escapedText){if(hp(o))return o;let c;c=o&&o.exports&&o.exports.get("export=")?df($l(a),s.escapedText,!0):function(e,t){if(3&e.flags){const n=e.valueDeclaration.type;if(n)return Ds(df(zx(n),t))}}(a,s.escapedText),c=Ds(c,n);let l=function(e,t,n,r){var i;if(1536&e.flags){const o=$s(e).get(t.escapedText),s=Ds(o,r);return Os(n,o,s,!1,null==(i=Go(e).typeOnlyExportStarMap)?void 0:i.get(t.escapedText),t.escapedText),s}}(a,s,t,n);if(void 0===l&&"default"===s.escapedText){const e=null==(r=o.declarations)?void 0:r.find(YI);(vs(i)||bs(e,o,n,i))&&(l=Ws(o,n)||Ds(o,n))}const u=l&&c&&l!==c?function(e,t){if(e===gt&&t===gt)return gt;if(790504&e.flags)return e;const n=Po(e.flags|t.flags,e.escapedName);return Tn.assert(e.declarations||t.declarations),n.declarations=ie(te(e.declarations,t.declarations),Nt),n.parent=e.parent||t.parent,e.valueDeclaration&&(n.valueDeclaration=e.valueDeclaration),t.members&&(n.members=new Map(t.members)),e.exports&&(n.exports=new Map(e.exports)),n}(c,l):l||c;return u||ks(o,a,e,s),u}}function ks(e,t,n,r){var i;const o=js(e,n),s=Lp(r),a=PM(r,t);if(void 0!==a){const e=Qa(a),t=wo(r,ws._0_has_no_exported_member_named_1_Did_you_mean_2,o,s,e);a.valueDeclaration&&xw(t,Vp(a.valueDeclaration,ws._0_is_declared_here,e))}else(null==(i=e.exports)?void 0:i.has("default"))?wo(r,ws.Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead,o,s):function(e,t,n,r,i){var o,s;const a=null==(s=null==(o=dt(r.valueDeclaration,vd))?void 0:o.locals)?void 0:s.get(t.escapedText),c=r.exports;if(a){const r=null==c?void 0:c.get("export=");if(r)fa(r,a)?function(e,t,n,r){if(O>=5){wo(t,jS(N)?ws._0_can_only_be_imported_by_using_a_default_import:ws._0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import,n)}else if(Um(e)){wo(t,jS(N)?ws._0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import:ws._0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import,n)}else{wo(t,jS(N)?ws._0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import:ws._0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import,n,n,r)}}(e,t,n,i):wo(t,ws.Module_0_has_no_exported_member_1,i,n);else{const e=c?w(Af(c),(e=>!!fa(e,a))):void 0,r=e?wo(t,ws.Module_0_declares_1_locally_but_it_is_exported_as_2,i,n,Qa(e)):wo(t,ws.Module_0_declares_1_locally_but_it_is_not_exported,i,n);a.declarations&&xw(r,...R(a.declarations,((e,t)=>Vp(e,0===t?ws._0_is_declared_here:ws.and_here,n))))}}else wo(t,ws.Module_0_has_no_exported_member_1,i,n)}(n,r,s,e,o)}function Es(e){if($A(e)&&e.initializer&&nA(e.initializer))return e.initializer}function Cs(e,t,n){if("default"===kc(e.propertyName||e.name)){const t=Ss(e),r=t&&Bs(e,t);if(r)return xs(r,e,!!n)}const r=e.parent.parent.moduleSpecifier?Ts(e.parent.parent,e,n):zs(e.propertyName||e.name,t,!1,n);return Os(e,void 0,r,!1),r}function Ns(e,t){if(SA(e))return TR(e).symbol;if(!uu(e)&&!wb(e))return;const n=zs(e,901119,!0,t);return n||(TR(e),Qo(e).resolvedSymbol)}function As(e,t=!1){switch(e.kind){case 271:case 260:return fs(e,t);case 273:return function(e,t){const n=Bs(e,e.parent.moduleSpecifier);if(n)return xs(n,e,t)}(e,t);case 274:return function(e,t){const n=e.parent.parent.moduleSpecifier,r=Bs(e,n),i=Hs(r,n,t,!1);return Os(e,r,i,!1),i}(e,t);case 280:return function(e,t){const n=e.parent.moduleSpecifier,r=n&&Bs(e,n),i=n&&Hs(r,n,t,!1);return Os(e,r,i,!1),i}(e,t);case 276:case 208:return function(e,t){if(xI(e)&&"default"===kc(e.propertyName||e.name)){const n=Ss(e),r=n&&Bs(e,n);if(r)return xs(r,e,t)}const n=$N(e)?_y(e):e.parent.parent.parent,r=Es(n),i=Ts(n,r||e,t),o=e.propertyName||e.name;return r&&i&&YC(o)?Ds(df($l(i),o.escapedText),t):(Os(e,void 0,i,!1),i)}(e,t);case 281:return Cs(e,901119,t);case 277:case 226:return function(e,t){const n=Ns(SI(e)?e.expression:e.right,t);return Os(e,void 0,n,!1),n}(e,t);case 270:return function(e,t){if(yd(e.parent)){const n=Ws(e.parent.symbol,t);return Os(e,void 0,n,!1),n}}(e,t);case 304:return zs(e.name,901119,!0,t);case 303:return Ns(e.initializer,t);case 212:case 211:return function(e,t){if(gA(e.parent)&&e.parent.left===e&&64===e.parent.operatorToken.kind)return Ns(e.parent.right,t)}(e,t);default:return Tn.fail()}}function Is(e,t=901119){return!!e&&(2097152==(e.flags&(2097152|t))||!!(2097152&e.flags&&67108864&e.flags))}function Ds(e,t){return!t&&Is(e)?Ps(e):e}function Ps(e){Tn.assert(!!(2097152&e.flags),"Should only get Alias here.");const t=Go(e);if(t.aliasTarget)t.aliasTarget===yt&&(t.aliasTarget=gt);else{t.aliasTarget=yt;const n=us(e);if(!n)return Tn.fail();const r=As(n);t.aliasTarget===yt?t.aliasTarget=r||gt:wo(n,ws.Circular_definition_of_import_alias_0,Qa(e))}return t.aliasTarget}function Ms(e,t,n){const r=t&&Rs(e),i=r&&TI(r),o=r&&(i?Bs(r.moduleSpecifier,r.moduleSpecifier,!0):Ps(r.symbol)),s=i&&o?ea(o):void 0;let a,c=n?0:e.flags;for(;2097152&e.flags;){const t=ma(Ps(e));if(!i&&t===o||(null==s?void 0:s.get(t.escapedName))===t)break;if(t===gt)return-1;if(t===e||(null==a?void 0:a.has(t)))break;2097152&t.flags&&(a?a.add(t):a=new Set([e,t])),c|=t.flags,e=t}return c}function Os(e,t,n,r,i,o){if(!e||nA(e))return!1;const s=sa(e);if(Xl(e)){return Go(s).typeOnlyDeclaration=e,!0}if(i){const e=Go(s);return e.typeOnlyDeclaration=i,s.escapedName!==o&&(e.typeOnlyExportStarName=o),!0}const a=Go(s);return Fs(a,t,r)||Fs(a,n,r)}function Fs(e,t,n){var r;if(t&&(void 0===e.typeOnlyDeclaration||n&&!1===e.typeOnlyDeclaration)){const n=(null==(r=t.exports)?void 0:r.get("export="))??t,i=n.declarations&&w(n.declarations,Xl);e.typeOnlyDeclaration=i??Go(n).typeOnlyDeclaration??!1}return!!e.typeOnlyDeclaration}function Rs(e,t){var n;if(!(2097152&e.flags))return;const r=Go(e);if(void 0===r.typeOnlyDeclaration){r.typeOnlyDeclaration=!1;const t=Ds(e);Os(null==(n=e.declarations)?void 0:n[0],us(e)&&vP(e),t,!0)}if(void 0===t)return r.typeOnlyDeclaration||void 0;if(r.typeOnlyDeclaration){return Ms(278===r.typeOnlyDeclaration.kind?Ds(ea(r.typeOnlyDeclaration.symbol.parent).get(r.typeOnlyExportStarName||e.escapedName)):Ps(r.typeOnlyDeclaration.symbol))&t?r.typeOnlyDeclaration:void 0}}function Ls(e,t){return 80===e.kind&&Ib(e)&&(e=e.parent),80===e.kind||166===e.parent.kind?zs(e,1920,!1,t):(Tn.assert(271===e.parent.kind),zs(e,901119,!1,t))}function js(e,t){return e.parent?js(e.parent,t)+"."+Qa(e):Qa(e,t,void 0,36)}function zs(e,t,n,r,i){if(F_(e))return;const o=1920|(Um(e)?111551&t:0);let s;if(80===e.kind){const r=t===o||fy(e)?ws.Cannot_find_namespace_0:ZE(kb(e)),a=Um(e)&&!fy(e)?function(e,t){if(Kg(e.parent)){const n=function(e){if(bc(e,(e=>Od(e)||16777216&e.flags?Rh(e):"quit")))return;const t=Xh(e);if(t&&LA(t)&&Th(t.expression)){const e=sa(t.expression.left);if(e)return Us(e)}if(t&&lA(t)&&Th(t.parent)&&LA(t.parent.parent)){const e=sa(t.parent.left);if(e)return Us(e)}if(t&&(Hf(t)||WI(t))&&gA(t.parent.parent)&&6===dh(t.parent.parent)){const e=sa(t.parent.parent.left);if(e)return Us(e)}const n=Zh(e);if(n&&pu(n)){const e=sa(n);return e&&e.valueDeclaration}}(e.parent);if(n)return Le(n,e,t,void 0,!0)}}(e,t):void 0;if(s=oa(Le(i||e,e,t,n||a?void 0:r,!0,!1)),!s)return oa(a)}else if(166===e.kind||211===e.kind){const r=166===e.kind?e.left:e.expression,a=166===e.kind?e.right:e.name;let c=zs(r,o,n,!1,i);if(!c||F_(a))return;if(c===gt)return c;if(c.valueDeclaration&&Um(c.valueDeclaration)&&100!==FS(N)&&$A(c.valueDeclaration)&&c.valueDeclaration.initializer&&QO(c.valueDeclaration.initializer)){const e=c.valueDeclaration.initializer.arguments[0],t=Bs(e,e);if(t){const e=Ws(t);e&&(c=e)}}if(s=oa(Yo($s(c),a.escapedText,t)),!s&&2097152&c.flags&&(s=oa(Yo($s(Ps(c)),a.escapedText,t))),!s){if(!n){const n=js(c),r=Lp(a),i=PM(a,c);if(i)return void wo(a,ws._0_has_no_exported_member_named_1_Did_you_mean_2,n,r,Qa(i));const o=dN(e)&&function(e){for(;dN(e.parent);)e=e.parent;return e}(e),s=Wn&&788968&t&&o&&!_A(o.parent)&&function(e){let t=kb(e),n=Le(t,t,111551,void 0,!0);if(n){for(;dN(t.parent);){if(n=df($l(n),t.parent.right.escapedText),!n)return;t=t.parent}return n}}(o);if(s)return void wo(o,ws._0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0,qp(o));if(1920&t&&dN(e.parent)){const t=oa(Yo($s(c),a.escapedText,788968));if(t)return void wo(e.parent.right,ws.Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1,Qa(t),wc(e.parent.right.escapedText))}wo(a,ws.Namespace_0_has_no_exported_member_1,n,r)}return}}else Tn.assertNever(e,"Unknown entity name kind.");return!fy(e)&&uu(e)&&(2097152&s.flags||277===e.parent.kind)&&Os(Sg(e),s,void 0,!0),s.flags&t||r?s:Ps(s)}function Us(e){const t=e.parent.valueDeclaration;if(!t)return;return($m(t)?nh(t):qd(t)?th(t):void 0)||t}function Bs(e,t,n){const r=1===FS(N)?ws.Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_nodenext_or_to_add_aliases_to_the_paths_option:ws.Cannot_find_module_0_or_its_corresponding_type_declarations;return qs(e,t,n?void 0:r)}function qs(e,t,n,r=!1){return Hd(t)?Ks(e,t.text,n,t,r):void 0}function Ks(t,n,r,i,o=!1){var s,a,c,l,u,d,_,p,f,m,h;if(cn(n,"@types/")){wo(i,ws.Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1,ln(n,"@types/"),n)}const g=If(n,!0);if(g)return g;const y=C_(t),v=Hd(t)?t:(null==(s=sI(t)?t:t.parent&&sI(t.parent)&&t.parent.name===t?t.parent:void 0)?void 0:s.name)||(null==(a=gf(t)?t:void 0)?void 0:a.argument.literal)||(Um(t)&&zD(t)?t.moduleSpecifier:void 0)||($A(t)&&t.initializer&&Jm(t.initializer,!0)?t.initializer.arguments[0]:void 0)||(null==(c=bc(t,mf))?void 0:c.arguments[0])||(null==(l=bc(t,dI))?void 0:l.moduleSpecifier)||(null==(u=bc(t,Mm))?void 0:u.moduleReference.expression)||(null==(d=bc(t,TI))?void 0:d.moduleSpecifier),b=v&&Hd(v)?e.getModeForUsageLocation(y,v):y.impliedNodeFormat,x=FS(N),S=null==(_=e.getResolvedModule(y,n,b))?void 0:_.resolvedModule,T=S&&BK(N,S,y),w=S&&(!T||T===ws.Module_0_was_resolved_to_1_but_jsx_is_not_set)&&e.getSourceFile(S.resolvedFileName);if(w){if(T&&wo(i,T,n,S.resolvedFileName),S.resolvedUsingTsExtension&&lO(n)){const e=(null==(p=bc(t,dI))?void 0:p.importClause)||bc(t,pn(uI,TI));(e&&!e.isTypeOnly||bc(t,mf))&&wo(i,ws.A_declaration_file_cannot_be_imported_without_import_type_Did_you_mean_to_import_an_implementation_file_0_instead,function(e){const t=aw(n,e);if(QS(O)||99===b){const r=lO(n)&&Rj(N);return t+(".mts"===e||".d.mts"===e?r?".mts":".mjs":".cts"===e||".d.mts"===e?r?".cts":".cjs":r?".ts":".js")}return t}(Tn.checkDefined(jb(n))))}else if(S.resolvedUsingTsExtension&&!Rj(N,y.fileName)){const e=(null==(f=bc(t,dI))?void 0:f.importClause)||bc(t,pn(uI,TI));if(!(null==e?void 0:e.isTypeOnly)&&!bc(t,GN)){const e=Tn.checkDefined(jb(n));wo(i,ws.An_import_path_can_only_end_with_a_0_extension_when_allowImportingTsExtensions_is_enabled,e)}}if(w.symbol){if(S.isExternalLibraryImport&&!pw(S.extension)&&Js(!1,i,y,b,S,n),3===x||99===x){const e=1===y.impliedNodeFormat&&!bc(t,mf)||!!bc(t,uI),r=bc(t,(e=>GN(e)||TI(e)||dI(e)||zD(e)));if(e&&99===w.impliedNodeFormat&&!kk(r))if(bc(t,uI))wo(i,ws.Module_0_cannot_be_imported_using_this_construct_The_specifier_only_resolves_to_an_ES_module_which_cannot_be_imported_with_require_Use_an_ECMAScript_import_instead,n);else{let e;const t=hw(y.fileName);if(".ts"===t||".js"===t||".tsx"===t||".jsx"===t){const n=y.packageJsonScope,r=".ts"===t?".mts":".js"===t?".mjs":void 0;e=n&&!n.contents.packageJsonContent.type?r?gS(void 0,ws.To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_add_the_field_type_Colon_module_to_1,r,Zo(n.packageDirectory,"package.json")):gS(void 0,ws.To_convert_this_file_to_an_ECMAScript_module_add_the_field_type_Colon_module_to_0,Zo(n.packageDirectory,"package.json")):r?gS(void 0,ws.To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_create_a_local_package_json_file_with_type_Colon_module,r):gS(void 0,ws.To_convert_this_file_to_an_ECMAScript_module_create_a_local_package_json_file_with_type_Colon_module)}oo.add(Wp(C_(i),i,gS(e,ws.The_current_file_is_a_CommonJS_module_whose_imports_will_produce_require_calls_however_the_referenced_file_is_an_ECMAScript_module_and_cannot_be_imported_with_require_Consider_writing_a_dynamic_import_0_call_instead,n)))}}return oa(w.symbol)}r&&wo(i,ws.File_0_is_not_a_module,w.fileName)}else{if(Kn){const e=an(Kn,(e=>e.pattern),n);if(e){const t=Jn&&Jn.get(n);return oa(t?t:e.symbol)}}if((!S||pw(S.extension)||void 0!==T)&&T!==ws.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type){if(r){if(S){const t=e.getProjectReferenceRedirect(S.resolvedFileName);if(t)return void wo(i,ws.Output_file_0_has_not_been_built_from_source_file_1,t,S.resolvedFileName)}if(T)wo(i,T,n,S.resolvedFileName);else{const t=Oo(n)&&!Ro(n),o=3===x||99===x;if(!qS(N)&&Lo(n,".json")&&1!==x&&YS(N))wo(i,ws.Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension,n);else if(99===b&&o&&t){const t=es(n,Vo(y.path)),r=null==(m=mo.find((([n,r])=>e.fileExists(t+n))))?void 0:m[1];r?wo(i,ws.Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_node16_or_nodenext_Did_you_mean_0,n+r):wo(i,ws.Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_node16_or_nodenext_Consider_adding_an_extension_to_the_import_path)}else if(null==(h=e.getResolvedModule(y,n,b))?void 0:h.alternateResult){Eo(!0,i,gS(x_(y,e,n,b,n),r,n))}else wo(i,r,n)}}return}if(o){wo(i,ws.Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augmented,n,S.resolvedFileName)}else Js(Z&&!!r,i,y,b,S,n)}}function Js(t,n,r,i,{packageId:o,resolvedFileName:s},a){let c;!za(a)&&o&&(c=x_(r,e,a,i,o.name)),Eo(t,n,gS(c,ws.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type,a,s))}function Ws(e,t){if(null==e?void 0:e.exports){const n=function(e,t){if(!e||e===gt||e===t||1===t.exports.size||2097152&e.flags)return e;const n=Go(e);if(n.cjsExportMerged)return n.cjsExportMerged;const r=33554432&e.flags?e:Bo(e);r.flags=512|r.flags,void 0===r.exports&&(r.exports=o_());t.exports.forEach(((e,t)=>{"export="!==t&&r.exports.set(t,r.exports.has(t)?qo(r.exports.get(t),e):e)})),r===e&&(Go(r).resolvedExports=void 0,Go(r).resolvedMembers=void 0);return Go(r).cjsExportMerged=r,n.cjsExportMerged=r}(oa(Ds(e.exports.get("export="),t)),oa(e));return oa(n)||e}}function Hs(e,t,n,r){var i;const o=Ws(e,n);if(!n&&o){if(!(r||1539&o.flags||r_(o,307))){const e=O>=5?"allowSyntheticDefaultImports":"esModuleInterop";return wo(t,ws.This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_referencing_its_default_export,e),o}const n=t.parent;if(dI(n)&&Dh(n)||mf(n)){const t=mf(n)?n.arguments[0]:n.moduleSpecifier,r=$l(o),s=HO(r,o,e,t);if(s)return Gs(o,s,n);const a=null==(i=null==e?void 0:e.declarations)?void 0:i.find(YI),c=a&&ys(gs(t),a.impliedNodeFormat);if(jS(N)||c){let i=_f(r,0);if(i&&i.length||(i=_f(r,1)),i&&i.length||df(r,"default",!0)||c){return Gs(o,3670016&r.flags?GO(r,o,e,t):WO(o,o.parent),n)}}}}return o}function Gs(e,t,n){const r=Po(e.flags,e.escapedName);r.declarations=e.declarations?e.declarations.slice():[],r.parent=e.parent,r.links.target=e,r.links.originatingImport=n,e.valueDeclaration&&(r.valueDeclaration=e.valueDeclaration),e.constEnumOnlyModule&&(r.constEnumOnlyModule=!0),e.members&&(r.members=new Map(e.members)),e.exports&&(r.exports=new Map(e.exports));const i=J_(t);return r.links.type=Ca(r,i.members,_,_,i.indexInfos),r}function Qs(e){return void 0!==e.exports.get("export=")}function Ys(e){return Af(ea(e))}function Zs(e,t){const n=ea(t);if(n)return n.get(e)}function Xs(e){return!(402784252&e.flags||1&Mx(e)||ow(e)||$w(e))}function $s(e){return 6256&e.flags?Td(e,"resolvedExports"):1536&e.flags?ea(e):e.exports||x}function ea(e){const t=Go(e);if(!t.resolvedExports){const{exports:n,typeOnlyExportStarMap:r}=ra(e);t.resolvedExports=n,t.typeOnlyExportStarMap=r}return t.resolvedExports}function na(e,t,n,r){t&&t.forEach(((t,i)=>{if("default"===i)return;const o=e.get(i);if(o){if(n&&r&&o&&Ds(o)!==Ds(t)){const e=n.get(i);e.exportsWithDuplicate?e.exportsWithDuplicate.push(r):e.exportsWithDuplicate=[r]}}else e.set(i,t),n&&r&&n.set(i,{specifierText:ep(r.moduleSpecifier)})}))}function ra(e){const t=[];let n;const r=new Set,i=function e(i,o,s){!s&&(null==i?void 0:i.exports)&&i.exports.forEach(((e,t)=>r.add(t)));if(!(i&&i.exports&&he(t,i)))return;const a=new Map(i.exports),c=i.exports.get("__export");if(c){const t=o_(),n=new Map;if(c.declarations)for(const r of c.declarations){const i=Bs(r,r.moduleSpecifier);na(t,e(i,r,s||r.isTypeOnly),n,r)}n.forEach((({exportsWithDuplicate:e},t)=>{if("export="!==t&&e&&e.length&&!a.has(t))for(const r of e)oo.add(Vp(r,ws.Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambiguity,n.get(t).specifierText,wc(t)))})),na(a,t)}(null==o?void 0:o.isTypeOnly)&&(n??(n=new Map),a.forEach(((e,t)=>n.set(t,o))));return a}(e=Ws(e))||x;return n&&r.forEach((e=>n.delete(e))),{exports:i,typeOnlyExportStarMap:n}}function oa(e){let t;return e&&e.mergeId&&(t=zi[e.mergeId])?t:e}function sa(e){return oa(e.symbol&&Ed(e.symbol))}function aa(e){return yd(e)?sa(e):void 0}function ca(e){return oa(e.parent&&Ed(e.parent))}function la(e){var t,n;return(219===(null==(t=e.valueDeclaration)?void 0:t.kind)||218===(null==(n=e.valueDeclaration)?void 0:n.kind))&&aa(e.valueDeclaration.parent)||e}function ua(t,n,r){const i=ca(t);if(i&&!(262144&t.flags))return l(i);const o=J(t.declarations,(e=>{if(!_p(e)&&e.parent){if(Va(e.parent))return sa(e.parent);if(aI(e.parent)&&e.parent.parent&&Ws(sa(e.parent.parent))===t)return sa(e.parent.parent)}if(SA(e)&&gA(e.parent)&&64===e.parent.operatorToken.kind&&Bx(e.parent.left)&&wb(e.parent.left.expression))return uh(e.parent.left)||ch(e.parent.left.expression)?sa(C_(e)):(TR(e.parent.left.expression),Qo(e.parent.left.expression).resolvedSymbol)}));if(!m(o))return;const s=J(o,(e=>pa(e,t)?e:void 0));let a=[],c=[];for(const e of s){const[t,...n]=l(e);a=_e(a,t),c=me(c,n)}return te(a,c);function l(i){const o=J(i.declarations,u),s=n&&function(t,n){const r=C_(n),i=Gz(r),o=Go(t);let s;if(o.extendedContainersByFile&&(s=o.extendedContainersByFile.get(i)))return s;if(r&&r.imports){for(const e of r.imports){if(fy(e))continue;const r=Bs(n,e,!0);r&&(pa(r,t)&&(s=_e(s,r)))}if(m(s))return(o.extendedContainersByFile||(o.extendedContainersByFile=new Map)).set(i,s),s}if(o.extendedContainers)return o.extendedContainers;const a=e.getSourceFiles();for(const e of a){if(!tO(e))continue;const n=sa(e);pa(n,t)&&(s=_e(s,n))}return o.extendedContainers=s||_}(t,n),a=function(e,t){const n=!!m(e.declarations)&&Ee(e.declarations);if(111551&t&&n&&n.parent&&$A(n.parent)&&(tA(n)&&n===n.parent.initializer||PN(n)&&n===n.parent.type))return sa(n.parent)}(i,r);if(n&&i.flags&Da(r)&&Pa(i,n,1920,!1))return _e(te(te([i],o),s),a);const c=!(i.flags&Da(r))&&788968&i.flags&&524288&Zu(i).flags&&111551===r?Na(n,(e=>f_(e,(e=>{if(e.flags&Da(r)&&$l(e)===Zu(i))return e})))):void 0;let l=c?[c,...o,i]:[...o,i];return l=_e(l,a),l=me(l,s),l}function u(e){return i&&_a(e,i)}}function _a(e,t){const n=Ua(e),r=n&&n.exports&&n.exports.get("export=");return r&&fa(r,t)?n:void 0}function pa(e,t){if(e===ca(t))return t;const n=e.exports&&e.exports.get("export=");if(n&&fa(n,t))return e;const r=$s(e),i=r.get(t.escapedName);return i&&fa(i,t)?i:f_(r,(e=>{if(fa(e,t))return e}))}function fa(e,t){if(oa(Ds(oa(e)))===oa(Ds(oa(t))))return e}function ma(e){return oa(e&&!!(1048576&e.flags)&&e.exportSymbol||e)}function ha(e,t){return!!(111551&e.flags||2097152&e.flags&&111551&Ms(e,!t))}function ga(e){var t;const n=new c(ze,e);return u++,n.id=u,null==(t=ar)||t.recordType(n),n}function ya(e,t){const n=ga(e);return n.symbol=t,n}function va(e){return new c(ze,e)}function ba(e,t,n=0,r){!function(e,t){const n=`${e},${t??""}`;xt.has(n)&&Tn.fail(`Duplicate intrinsic type name ${e}${t?` (${t})`:""}; you may need to pass a name to createIntrinsicType.`);xt.add(n)}(t,r);const i=ga(e);return i.intrinsicName=t,i.debugIntrinsicName=r,i.objectFlags=52953088|n,i}function xa(e,t){const n=ya(524288,t);return n.objectFlags=e,n.members=void 0,n.properties=void 0,n.callSignatures=void 0,n.constructSignatures=void 0,n.indexInfos=void 0,n}function Sa(e){return ya(262144,e)}function Ta(e){return 95===e.charCodeAt(0)&&95===e.charCodeAt(1)&&95!==e.charCodeAt(2)&&64!==e.charCodeAt(2)&&35!==e.charCodeAt(2)}function wa(e){let t;return e.forEach(((e,n)=>{ka(e,n)&&(t||(t=[])).push(e)})),t||_}function ka(e,t){return!Ta(t)&&ha(e)}function Ea(e,t,n,r,i){const o=e;return o.members=t,o.properties=_,o.callSignatures=n,o.constructSignatures=r,o.indexInfos=i,t!==x&&(o.properties=wa(t)),o}function Ca(e,t,n,r,i){return Ea(xa(16,e),t,n,r,i)}function Na(e,t){let n;for(let r=e;r;r=r.parent){if(vd(r)&&r.locals&&!rf(r)&&(n=t(r.locals,void 0,!0,r)))return n;switch(r.kind){case 307:if(!of(r))break;case 267:const e=sa(r);if(n=t((null==e?void 0:e.exports)||x,void 0,!0,r))return n;break;case 263:case 231:case 264:let i;if((sa(r).members||x).forEach(((e,t)=>{788968&e.flags&&(i||(i=o_())).set(t,e)})),i&&(n=t(i,void 0,!1,r)))return n}}return t(ue,void 0,!0)}function Da(e){return 111551===e?111551:1920}function Pa(e,t,n,r,i=new Map){if(!e||function(e){if(e.declarations&&e.declarations.length){for(const t of e.declarations)switch(t.kind){case 172:case 174:case 177:case 178:continue;default:return!1}return!0}return!1}(e))return;const o=Go(e),s=o.accessibleChainCache||(o.accessibleChainCache=new Map),a=Na(t,((e,t,n,r)=>r)),c=`${r?0:1}|${a&&Gz(a)}|${n}`;if(s.has(c))return s.get(c);const l=Qz(e);let u=i.get(l);u||i.set(l,u=[]);const d=Na(t,_);return s.set(c,d),d;function _(n,i,o){if(!he(u,n))return;const s=function(n,i,o){if(f(n.get(e.escapedName),void 0,i))return[e];const s=f_(n,(n=>{if(2097152&n.flags&&"export="!==n.escapedName&&"default"!==n.escapedName&&!(Fx(n)&&t&&tO(C_(t)))&&(!r||$(n.declarations,Mm))&&(!o||!$(n.declarations,Pm))&&(i||!r_(n,281))){const e=m(n,Ps(n),i);if(e)return e}if(n.escapedName===e.escapedName&&n.exportSymbol&&f(oa(n.exportSymbol),void 0,i))return[e]}));return s||(n===ue?m(fe,fe,i):void 0)}(n,i,o);return u.pop(),s}function p(e,n){return!Ma(e,t,n)||!!Pa(e.parent,t,Da(n),r,i)}function f(t,r,i){return(e===(r||t)||oa(e)===oa(r||t))&&!$(t.declarations,Va)&&(i||p(oa(t),n))}function m(e,t,r){if(f(e,t,r))return[e];const i=$s(t),o=i&&_(i,!0);return o&&p(e,Da(n))?[e].concat(o):void 0}}function Ma(e,t,n){let r=!1;return Na(t,(t=>{let i=oa(t.get(e.escapedName));if(!i)return!1;if(i===e)return!0;const o=2097152&i.flags&&!r_(i,281);i=o?Ps(i):i;return!!((o?Ms(i):i.flags)&n)&&(r=!0,!0)})),r}function Oa(e,t){return 0===ja(e,t,111551,!1,!0).accessibility}function Fa(e,t,n){return 0===ja(e,t,n,!1,!1).accessibility}function Ra(e,t,n,r,i,o){if(!m(e))return;let s,a=!1;for(const c of e){const e=Pa(c,t,r,!1);if(e){s=c;const t=Wa(e[0],i);if(t)return t}if(o&&$(c.declarations,Va)){if(i){a=!0;continue}return{accessibility:0}}const l=Ra(ua(c,t,r),t,n,n===c?Da(r):r,i,o);if(l)return l}return a?{accessibility:0}:s?{accessibility:1,errorSymbolName:Qa(n,t,r),errorModuleName:s!==n?Qa(s,t,1920):void 0}:void 0}function La(e,t,n,r){return ja(e,t,n,r,!0)}function ja(e,t,n,r,i){if(e&&t){const o=Ra([e],t,e,n,r,i);if(o)return o;const s=h(e.declarations,Ua);if(s){if(s!==Ua(t))return{accessibility:2,errorSymbolName:Qa(e,t,n),errorModuleName:Qa(s),errorNode:Um(t)?t:void 0}}return{accessibility:1,errorSymbolName:Qa(e,t,n)}}return{accessibility:0}}function Ua(e){const t=bc(e,Ba);return t&&sa(t)}function Ba(e){return _p(e)||307===e.kind&&of(e)}function Va(e){return pp(e)||307===e.kind&&of(e)}function Wa(e,t){let n;if(T(M(e.declarations,(e=>80!==e.kind)),(function(t){var n,i;if(!uc(t)){const o=ls(t);if(o&&!Kv(o,32)&&uc(o.parent))return r(t,o);if($A(t)&&FA(t.parent.parent)&&!Kv(t.parent.parent,32)&&uc(t.parent.parent.parent))return r(t,t.parent.parent);if(Dp(t)&&!Kv(t,32)&&uc(t.parent))return r(t,t);if($N(t)){if(2097152&e.flags&&Um(t)&&(null==(n=t.parent)?void 0:n.parent)&&$A(t.parent.parent)&&(null==(i=t.parent.parent.parent)?void 0:i.parent)&&FA(t.parent.parent.parent.parent)&&!Kv(t.parent.parent.parent.parent,32)&&t.parent.parent.parent.parent.parent&&uc(t.parent.parent.parent.parent.parent))return r(t,t.parent.parent.parent.parent);if(2&e.flags){const e=bc(t,FA);return!!Kv(e,32)||!!uc(e.parent)&&r(t,e)}}return!1}return!0})))return{accessibility:0,aliasesToMakeVisible:n};function r(e,r){return t&&(Qo(e).isVisible=!0,n=ge(n,r)),!0}}function Ha(e){let t;return t=186===e.parent.kind||233===e.parent.kind&&!Df(e.parent)||167===e.parent.kind||182===e.parent.kind&&e.parent.parameterName===e?1160127:166===e.kind||211===e.kind||271===e.parent.kind||166===e.parent.kind&&e.parent.left===e||211===e.parent.kind&&e.parent.expression===e||212===e.parent.kind&&e.parent.expression===e?1920:788968,t}function Ga(e,t,n=!0){const r=Ha(e),i=kb(e),o=Le(t,i.escapedText,r,void 0,!1);return o&&262144&o.flags&&788968&r||!o&&Tv(i)&&0===La(sa(cm(i,!1,!1)),i,r,!1).accessibility?{accessibility:0}:o?Wa(o,n)||{accessibility:1,errorSymbolName:ep(i),errorNode:i}:{accessibility:3,errorSymbolName:ep(i),errorNode:i}}function Qa(e,t,n,r=4,i){let o=70221824;2&r&&(o|=128),1&r&&(o|=512),8&r&&(o|=16384),32&r&&(o|=134217728),16&r&&(o|=1073741824);const s=4&r?ae.symbolToNode:ae.symbolToEntityName;return i?a(i).getText():g_(a);function a(r){const i=s(e,n,t,o),a=307===(null==t?void 0:t.kind)?gV():hV(),c=t&&C_(t);return a.writeNode(4,i,c,r),r}}function Ya(e,t,n=0,r,i){return i?o(i).getText():g_(o);function o(i){let o;o=262144&n?1===r?185:184:1===r?180:179;const s=ae.signatureToSignatureDeclaration(e,o,t,70222336|tc(n)),a=yV(),c=t&&C_(t);return a.writeNode(4,s,c,Yy(i)),i}}function Za(e,t,n=1064960,r=Qy("")){const i=N.noErrorTruncation||1&n,o=ae.typeToTypeNode(e,t,70221824|tc(n)|(i?1:0));if(void 0===o)return Tn.fail("should always get typenode");const s=e!==Ct?hV():mV(),a=t&&C_(t);s.writeNode(4,o,a,r);const c=r.getText(),l=i?2*n_:2*t_;return l&&c&&c.length>=l?c.substr(0,l-3)+"...":c}function Xa(e,t){let n=ec(e.symbol)?Za(e,e.symbol.valueDeclaration):Za(e),r=ec(t.symbol)?Za(t,t.symbol.valueDeclaration):Za(t);return n===r&&(n=$a(e),r=$a(t)),[n,r]}function $a(e){return Za(e,void 0,64)}function ec(e){return e&&!!e.valueDeclaration&&td(e.valueDeclaration)&&!CS(e.valueDeclaration)}function tc(e=0){return 848330095&e}function nc(e){return!!(e.symbol&&32&e.symbol.flags&&(e===ju(e.symbol)||524288&e.flags&&16777216&Mx(e)))}function rc(e,t,n=16384,r){return r?i(r).getText():g_(i);function i(r){const i=70222336|tc(n),o=ae.typePredicateToTypePredicateNode(e,t,i),s=hV(),a=t&&C_(t);return s.writeNode(4,o,a,r),r}}function ic(e){return 2===e?"private":4===e?"protected":"public"}function oc(e){return e&&e.parent&&268===e.parent.kind&&vp(e.parent.parent)}function sc(e){return 307===e.kind||_p(e)}function ac(e,t){const n=Go(e).nameType;if(n){if(384&n.flags){const e=""+n.value;return Aa(e,MS(N))||ek(e)?ek(e)&&cn(e,"-")?`[${e}]`:e:`"${Ry(e,34)}"`}if(8192&n.flags)return`[${lc(n.symbol,t)}]`}}function lc(e,t){var n;if((null==(n=null==t?void 0:t.remappedSymbolReferences)?void 0:n.has(Qz(e)))&&(e=t.remappedSymbolReferences.get(Qz(e))),t&&"default"===e.escapedName&&!(16384&t.flags)&&(!(16777216&t.flags)||!e.declarations||t.enclosingDeclaration&&bc(e.declarations[0],sc)!==bc(t.enclosingDeclaration,sc)))return"default";if(e.declarations&&e.declarations.length){let n=y(e.declarations,(e=>Oc(e)?e:void 0));const r=n&&Oc(n);if(n&&r){if(iA(n)&&_h(n))return Cc(e);if(_N(r)&&!(4096&bx(e))){const n=Go(e).nameType;if(n&&384&n.flags){const n=ac(e,t);if(void 0!==n)return n}}return Lp(r)}if(n||(n=e.declarations[0]),n.parent&&260===n.parent.kind)return Lp(n.parent.name);switch(n.kind){case 231:case 218:case 219:return!t||t.encounteredError||131072&t.flags||(t.encounteredError=!0),231===n.kind?"(Anonymous class)":"(Anonymous function)"}}const r=ac(e,t);return void 0!==r?r:Cc(e)}function uc(e){if(e){const t=Qo(e);return void 0===t.isVisible&&(t.isVisible=!!function(){switch(e.kind){case 338:case 346:case 340:return!!(e.parent&&e.parent.parent&&e.parent.parent.parent&&YI(e.parent.parent.parent));case 208:return uc(e.parent.parent);case 260:if(Mu(e.name)&&!e.name.elements.length)return!1;case 267:case 263:case 264:case 265:case 262:case 266:case 271:if(vp(e))return!0;const t=xc(e);return 32&YB(e)||271!==e.kind&&307!==t.kind&&33554432&t.flags?uc(t):rf(t);case 172:case 171:case 177:case 178:case 174:case 173:if(Vv(e,6))return!1;case 176:case 180:case 179:case 181:case 169:case 268:case 184:case 185:case 187:case 183:case 188:case 189:case 192:case 193:case 196:case 202:return uc(e.parent);case 273:case 274:case 276:return!1;case 168:case 307:case 270:return!0;default:return!1}}()),t.isVisible}return!1}function _c(e,t){let n,r,i;return e.parent&&277===e.parent.kind?n=Le(e,e,2998271,void 0,!1):281===e.parent.kind&&(n=Cs(e.parent,2998271)),n&&(i=new Set,i.add(Qz(n)),function e(n){h(n,(n=>{const o=ls(n)||n;if(t?Qo(n).isVisible=!0:(r=r||[],he(r,o)),Rm(n)){const t=kb(n.moduleReference),r=Le(n,t.escapedText,901119,void 0,!1);r&&i&&Q(i,Qz(r))&&e(r.declarations)}}))}(n.declarations)),r}function fc(e,t){const n=hc(e,t);if(n>=0){const{length:e}=Pi;for(let t=n;t<e;t++)Mi[t]=!1;return!1}return Pi.push(e),Mi.push(!0),Oi.push(t),!0}function hc(e,t){for(let n=Pi.length-1;n>=Fi;n--){if(gc(Pi[n],Oi[n]))return-1;if(Pi[n]===e&&Oi[n]===t)return n}return-1}function gc(e,t){switch(t){case 0:return!!Go(e).type;case 2:return!!Go(e).declaredType;case 1:return!!e.resolvedBaseConstructorType;case 3:return!!e.resolvedReturnType;case 4:return!!e.immediateBaseConstraint;case 5:return!!e.resolvedTypeArguments;case 6:return!!e.baseTypesResolved;case 7:return!!Go(e).writeType;case 8:return void 0!==Qo(e).parameterInitializerContainsUndefined}return Tn.assertNever(t)}function yc(){return Pi.pop(),Oi.pop(),Mi.pop()}function xc(e){return bc(_y(e),(e=>{switch(e.kind){case 260:case 261:case 276:case 275:case 274:case 273:return!1;default:return!0}})).parent}function Nc(e,t){const n=df(e,t);return n?$l(n):void 0}function Ac(e,t){var n;let r;return Nc(e,t)||(r=null==(n=Cf(e,t))?void 0:n.type)&&Xc(r,!0,!0)}function Dc(e){return e&&!!(1&e.flags)}function Mc(e){return e===Et||!!(1&e.flags&&e.aliasSymbol)}function Fc(e,t){if(0!==t)return $c(e,!1,t);const n=sa(e);return n&&Go(n).type||$c(e,!1,t)}function jc(e,t,n){if(131072&(e=KC(e,(e=>!(98304&e.flags)))).flags)return En;if(1048576&e.flags)return HC(e,(e=>jc(e,t,n)));let r=fv(R(t,eb));const i=[],o=[];for(const c of Q_(e)){const e=tb(c,8576);WS(e,r)||6&xx(c)||!gx(c)?o.push(e):i.push(c)}if(qb(e)||Vb(r)){if(o.length&&(r=fv([r,...o])),131072&r.flags)return e;const t=(Rr||(Rr=my("Omit",2,!0)||gt),Rr===gt?void 0:Rr);return t?yg(t,[e,r]):Et}const s=o_();for(const c of i)s.set(c.escapedName,yx(c,!1));const a=Ca(n,s,_,_,Sf(e));return a.objectFlags|=4194304,a}function Uc(e){return!!(465829888&e.flags)&&sR(cp(e)||Dt,32768)}function Bc(e){return vC(qC(e,Uc)?HC(e,(e=>465829888&e.flags?lp(e):e)):e,524288)}function qc(e,t){const n=Vc(e);return n?aA(n,t):t}function Vc(e){const t=function(e){const t=e.parent.parent;switch(t.kind){case 208:case 303:return Vc(t);case 209:return Vc(e.parent);case 260:return t.initializer;case 226:return t.right}}(e);if(t&&qh(t)&&t.flowNode){const n=Jc(e);if(n){const r=vM(TM.createStringLiteral(n),e),i=Qu(t)?t:TM.createParenthesizedExpression(t),o=vM(TM.createElementAccessExpression(i,r),e);return Bw(r,o),Bw(o,e),i!==t&&Bw(i,o),o.flowNode=t.flowNode,o}}}function Jc(e){const t=e.parent;return 208===e.kind&&206===t.kind?Wc(e.propertyName||e.name):303===e.kind||304===e.kind?Wc(e.name):""+t.elements.indexOf(e)}function Wc(e){const t=eb(e);return 384&t.flags?""+t.value:void 0}function Gc(e){const t=e.dotDotDotToken?32:0,n=Fc(e.parent.parent,t);return n&&Qc(e,n,!1)}function Qc(e,t,n){if(Dc(t))return t;const r=e.parent;let i;if(K&&33554432&e.flags&&dy(e)?t=jk(t):K&&r.parent.initializer&&!gC(PC(r.parent.initializer),65536)&&(t=vC(t,524288)),206===r.kind)if(e.dotDotDotToken){if(2&(t=Jp(t)).flags||!xP(t))return wo(e,ws.Rest_types_may_only_be_created_from_object_types),Et;const n=[];for(const e of r.elements)e.dotDotDotToken||n.push(e.propertyName||e.name);i=jc(t,n,e.symbol)}else{const n=e.propertyName||e.name;i=qc(e,Qb(t,eb(n),32,n))}else{const o=hj(65|(e.dotDotDotToken?0:128),t,Mt,r),s=r.elements.indexOf(e);if(e.dotDotDotToken){const e=HC(t,(e=>58982400&e.flags?lp(e):e));i=VC(e,$w)?HC(e,(e=>ev(e,s))):jy(o)}else if(dw(t)){i=qc(e,Zb(t,Ax(s),32|(n||oP(e)?16:0),e.name)||Et)}else i=o}return e.initializer?Nv(dc(e))?K&&!gC(kR(e,0),16777216)?Bc(i):i:ER(e,fv([Bc(i),kR(e,0)],2)):i}function Yc(e){const t=dl(e);if(t)return zx(t)}function Zc(e){const t=fg(e,!0);return 209===t.kind&&0===t.elements.length}function Xc(e,t=!1,n=!0){return K&&n?Lk(e,t):e}function $c(e,t,n){if($A(e)&&249===e.parent.parent.kind){const t=sb(tM(qR(e.parent.parent.expression,n)));return 4456448&t.flags?ab(t):Ut}if($A(e)&&250===e.parent.parent.kind){return mj(e.parent.parent)||St}if(Mu(e.parent))return Gc(e);const r=gN(e)&&!Yv(e)||hN(e)||FD(e),i=t&&dk(e),o=Ol(e);if(dp(e))return o?Dc(o)||o===Dt?o:Et:ee?Dt:St;if(o)return Xc(o,r,i);if((Z||Um(e))&&$A(e)&&!Mu(e.name)&&!(32&YB(e))&&!(33554432&e.flags)){if(!(6&ZB(e))&&(!e.initializer||function(e){const t=fg(e,!0);return 106===t.kind||80===t.kind&&XE(t)===pe}(e.initializer)))return Tt;if(e.initializer&&Zc(e.initializer))return ir}if(fN(e)){if(!e.symbol)return;const t=e.parent;if(178===t.kind&&bd(t)){const n=r_(sa(e.parent),177);if(n){const r=Xf(n),i=DB(t);return i&&e===i?(Tn.assert(!i.type),$l(r.thisParameter)):wm(r)}}const n=function(e,t){const n=$f(e);if(!n)return;const r=e.parameters.indexOf(t);return t.dotDotDotToken?mF(n,r):pF(n,r)}(t,e);if(n)return n;const r="this"===e.symbol.escapedName?dD(t):_D(e);if(r)return Xc(r,!1,i)}if(qd(e)&&e.initializer){if(Um(e)&&!fN(e)){const t=ll(e,sa(e),th(e));if(t)return t}return Xc(ER(e,kR(e,n)),r,i)}if(gN(e)&&(Z||Um(e))){if(Wv(e)){const t=M(e.parent.members,bN),n=t.length?function(e,t){const n=cn(e.escapedName,"__#")?oE.createPrivateIdentifier(e.escapedName.split("@")[1]):wc(e.escapedName);for(const r of t){const t=oE.createPropertyAccessExpression(oE.createThis(),n);Bw(t.expression,t),Bw(t,r),t.flowNode=r.returnFlowNode;const i=al(t,e);if(!Z||i!==Tt&&i!==ir||wo(e.valueDeclaration,ws.Member_0_implicitly_has_an_1_type,Qa(e),Za(i)),!VC(i,eM))return rj(i)}}(e.symbol,t):128&nb(e)?QT(e.symbol):void 0;return n&&Xc(n,!0,i)}{const t=Pk(e.parent),n=t?il(e.symbol,t):128&nb(e)?QT(e.symbol):void 0;return n&&Xc(n,!0,i)}}return LI(e)?Jt:Mu(e.name)?yl(e.name,!1,!0):void 0}function el(e){if(e.valueDeclaration&&gA(e.valueDeclaration)){const t=Go(e);return void 0===t.isConstructorDeclaredProperty&&(t.isConstructorDeclaredProperty=!1,t.isConstructorDeclaredProperty=!!nl(e)&&T(e.declarations,(t=>gA(t)&&kD(t)&&(212!==t.left.kind||Hg(t.left.argumentExpression))&&!_l(void 0,t,e,t)))),t.isConstructorDeclaredProperty}return!1}function tl(e){const t=e.valueDeclaration;return t&&gN(t)&&!Nv(t)&&!t.initializer&&(Z||Um(t))}function nl(e){if(e.declarations)for(const t of e.declarations){const e=cm(t,!1,!1);if(e&&(176===e.kind||zO(e)))return e}}function il(e,t){const n=cn(e.escapedName,"__#")?oE.createPrivateIdentifier(e.escapedName.split("@")[1]):wc(e.escapedName),r=oE.createPropertyAccessExpression(oE.createThis(),n);Bw(r.expression,r),Bw(r,t),r.flowNode=t.returnFlowNode;const i=al(r,e);return!Z||i!==Tt&&i!==ir||wo(e.valueDeclaration,ws.Member_0_implicitly_has_an_1_type,Qa(e),Za(i)),VC(i,eM)?void 0:rj(i)}function al(e,t){const n=(null==t?void 0:t.valueDeclaration)&&(!tl(t)||128&nb(t.valueDeclaration))&&QT(t)||Mt;return aA(e,Tt,n)}function cl(e,t){const n=nh(e.valueDeclaration);if(n){const t=Um(n)?ul(n):void 0;if(t&&t.typeExpression)return zx(t.typeExpression);return e.valueDeclaration&&ll(e.valueDeclaration,e,n)||Kw(TR(n))}let r,i=!1,o=!1;if(el(e)&&(r=il(e,nl(e))),!r){let n;if(e.declarations){let s;for(const r of e.declarations){const a=gA(r)||iA(r)?r:Bx(r)?gA(r.parent)?r.parent:r:void 0;if(!a)continue;const c=Bx(a)?xh(a):dh(a);(4===c||gA(a)&&kD(a,c))&&(ml(a)?i=!0:o=!0),iA(a)||(s=_l(s,a,e,r)),s||(n||(n=[])).push(gA(a)||iA(a)?pl(e,t,a,c):$t)}r=s}if(!r){if(!m(n))return Et;let t=i&&e.declarations?function(e,t){return Tn.assert(e.length===t.length),e.filter(((e,n)=>{const r=t[n],i=gA(r)?r:gA(r.parent)?r.parent:void 0;return i&&ml(i)}))}(n,e.declarations):void 0;if(o){const n=QT(e);n&&((t||(t=[])).push(n),i=!0)}r=fv($(t,(e=>!!(-98305&e.flags)))?t:n)}}const s=eE(Xc(r,!1,o&&!i));return e.valueDeclaration&&Um(e.valueDeclaration)&&KC(s,(e=>!!(-98305&e.flags)))===$t?(rE(e.valueDeclaration,St),St):s}function ll(e,t,n){var r,i;if(!Um(e)||!n||!tA(n)||n.properties.length)return;const o=o_();for(;gA(e)||nA(e);){const t=aa(e);(null==(r=null==t?void 0:t.exports)?void 0:r.size)&&Wo(o,t.exports),e=gA(e)?e.parent:e.parent.parent}const s=aa(e);(null==(i=null==s?void 0:s.exports)?void 0:i.size)&&Wo(o,s.exports);const a=Ca(t,o,_,_,_);return a.objectFlags|=4096,a}function _l(e,t,n,r){var i;const o=Nv(t.parent);if(o){const t=eE(zx(o));if(!e)return t;Mc(e)||Mc(t)||DS(e,t)||oj(void 0,e,r,t)}if(null==(i=n.parent)?void 0:i.valueDeclaration){const e=la(n.parent);if(e.valueDeclaration){const t=Nv(e.valueDeclaration);if(t){const e=df(zx(t),n.escapedName);if(e)return eu(e)}}}return e}function pl(e,t,n,r){if(iA(n)){if(t)return $l(t);const e=TR(n.arguments[2]),r=Nc(e,"value");if(r)return r;const i=Nc(e,"get");if(i){const e=nO(i);if(e)return wm(e)}const o=Nc(e,"set");if(o){const e=nO(o);if(e)return SF(e)}return St}if(function(e,t){return nA(e)&&110===e.expression.kind&&QM(t,(t=>tC(e,t)))}(n.left,n.right))return St;const i=1===r&&(nA(n.left)||rA(n.left))&&(uh(n.left.expression)||YC(n.left.expression)&&ch(n.left.expression)),o=t?$l(t):i?Ex(TR(n.right)):Kw(TR(n.right));if(524288&o.flags&&2===r&&"export="===e.escapedName){const n=J_(o),r=o_();h_(n.members,r);const i=r.size;t&&!t.exports&&(t.exports=o_()),(t||e).exports.forEach(((e,t)=>{var n;const i=r.get(t);if(!i||i===e||2097152&e.flags)r.set(t,e);else if(111551&e.flags&&111551&i.flags){if(e.valueDeclaration&&i.valueDeclaration&&C_(e.valueDeclaration)!==C_(i.valueDeclaration)){const t=wc(e.escapedName),r=(null==(n=dt(i.valueDeclaration,Pc))?void 0:n.name)||i.valueDeclaration;xw(wo(e.valueDeclaration,ws.Duplicate_identifier_0,t),Vp(r,ws._0_was_also_declared_here,t)),xw(wo(r,ws.Duplicate_identifier_0,t),Vp(e.valueDeclaration,ws._0_was_also_declared_here,t))}const o=Po(e.flags|i.flags,t);o.links.type=fv([$l(e),$l(i)]),o.valueDeclaration=i.valueDeclaration,o.declarations=te(i.declarations,e.declarations),r.set(t,o)}else r.set(t,qo(e,i))}));const s=Ca(i!==r.size?void 0:n.symbol,r,n.callSignatures,n.constructSignatures,n.indexInfos);if(i===r.size&&(o.aliasSymbol&&(s.aliasSymbol=o.aliasSymbol,s.aliasTypeArguments=o.aliasTypeArguments),4&Mx(o))){s.aliasSymbol=o.symbol;const e=rg(o);s.aliasTypeArguments=m(e)?e:void 0}return s.objectFlags|=Kh([o])|20608&Mx(o),s.symbol&&32&s.symbol.flags&&o===ju(s.symbol)&&(s.objectFlags|=16777216),s}return yw(o)?(rE(n,rr),rr):o}function ml(e){const t=cm(e,!1,!1);return 176===t.kind||262===t.kind||218===t.kind&&!Th(t.parent)}function hl(e,t,n){if(e.initializer){return Xc(ER(e,kR(e,n?0:1,Mu(e.name)?yl(e.name,!0,!1):Dt)))}return Mu(e.name)?yl(e.name,t,n):(n&&!Ml(e)&&rE(e,St),t?At:St)}function yl(e,t=!1,n=!1){return 206===e.kind?function(e,t,n){const r=o_();let i,o=131200;h(e.elements,(e=>{const s=e.propertyName||e.name;if(e.dotDotDotToken)return void(i=vh(Ut,St,!1));const a=eb(s);if(!Sk(a))return void(o|=512);const c=Tk(a),l=Po(4|(e.initializer?16777216:0),c);l.links.type=hl(e,t,n),l.links.bindingElement=e,r.set(l.escapedName,l)}));const s=Ca(void 0,r,_,_,i?[i]:_);return s.objectFlags|=o,t&&(s.pattern=e,s.objectFlags|=131072),s}(e,t,n):function(e,t,n){const r=e.elements,i=Ne(r),o=i&&208===i.kind&&i.dotDotDotToken?i:void 0;if(0===r.length||1===r.length&&o)return D>=2?Ly(St):rr;const s=R(r,(e=>TA(e)?St:hl(e,t,n))),a=C(r,(e=>!(e===o||TA(e)||oP(e))),r.length-1)+1;let c=Gy(s,R(r,((e,t)=>e===o?4:t>=a?2:1)));return t&&(c=tg(c),c.pattern=e,c.objectFlags|=131072),c}(e,t,n)}function Sl(e,t){return Dl($c(e,!0,0),e,t)}function wl(e){const t=Qo(e);if(!t.resolvedType){const n=Po(4096,"__importAttributes"),r=o_();h(e.elements,(e=>{const t=Po(4,Nk(e));t.parent=n,t.links.type=function(e){return Ex(TR(e.value))}(e),t.links.target=t,r.set(t.escapedName,t)}));const i=Ca(n,r,_,_,_);i.objectFlags|=262272,t.resolvedType=i}return t.resolvedType}function kl(e){const t=aa(e),n=(r=!1,lr||(lr=ly("SymbolConstructor",r)));var r;return n&&t&&t===n}function Dl(e,t,n){return e?(4096&e.flags&&kl(t.parent)&&(e=Ox(t)),n&&iE(t,e),8192&e.flags&&($N(t)||!t.type)&&e.symbol!==sa(t)&&(e=Zt),eE(e)):(e=fN(t)&&t.dotDotDotToken?rr:St,n&&(Ml(t)||rE(t,e)),e)}function Ml(e){const t=_y(e);return uL(169===t.kind?t.parent:t)}function Ol(e){const t=Nv(e);if(t)return zx(t)}function Fl(e,t){const n=Go(e);if(!n.type){const r=function(e,t){if(4194304&e.flags)return function(e){const t=Zu(ca(e));return t.typeParameters?Wh(t,R(t.typeParameters,(e=>St))):t}(e);if(e===Te)return St;if(134217728&e.flags&&e.valueDeclaration){const t=sa(C_(e.valueDeclaration)),n=Po(t.flags,"exports");n.declarations=t.declarations?t.declarations.slice():[],n.parent=e,n.links.target=t,t.valueDeclaration&&(n.valueDeclaration=t.valueDeclaration),t.members&&(n.members=new Map(t.members)),t.exports&&(n.exports=new Map(t.exports));const r=o_();return r.set("exports",n),Ca(e,r,_,_,_)}Tn.assertIsDefined(e.valueDeclaration);const n=e.valueDeclaration;if(YI(n)&&sf(n))return n.statements.length?eE(Kw(qR(n.statements[0].expression))):En;if(Su(n))return zl(e);if(!fc(e,0))return 512&e.flags&&!(67108864&e.flags)?ql(e):$N(n)&&1===t?Et:Hl(e);let r;if(277===n.kind)r=Dl(Ol(n)||TR(n.expression),n);else if(gA(n)||Um(n)&&(iA(n)||(nA(n)||hh(n))&&gA(n.parent)))r=cl(e);else if(nA(n)||rA(n)||YC(n)||Hd(n)||DC(n)||nI(n)||tI(n)||vN(n)&&!Hf(n)||yN(n)||YI(n)){if(9136&e.flags)return ql(e);r=gA(n.parent)?cl(e):Ol(n)||St}else if(WI(n))r=Ol(n)||IR(n);else if(LI(n))r=Ol(n)||wP(n);else if(HI(n))r=Ol(n)||AR(n.name,0);else if(Hf(n))r=Ol(n)||DR(n,0);else if(fN(n)||gN(n)||hN(n)||$A(n)||$N(n)||Ll(n))r=Sl(n,!0);else if(oI(n))r=ql(e);else{if(!QI(n))return Tn.fail("Unhandled declaration kind! "+Tn.formatSyntaxKind(n.kind)+" for "+Tn.formatSymbol(e));r=Vl(e)}if(!yc())return 512&e.flags&&!(67108864&e.flags)?ql(e):$N(n)&&1===t?r:Hl(e);return r}(e,t);return n.type||function(e){let t=e.valueDeclaration;return!!t&&($N(t)&&(t=dc(t)),!!fN(t)&&AS(t.parent))}(e)||t||(n.type=r),r}return n.type}function Rl(e){if(e)switch(e.kind){case 177:return Iv(e);case 178:return Pv(e);case 172:Tn.assert(Yv(e));return Nv(e)}}function jl(e){const t=Rl(e);return t&&zx(t)}function zl(e){const t=Go(e);if(!t.type){if(!fc(e,0))return Et;const n=r_(e,177),r=r_(e,178),i=dt(r_(e,172),Tu);let o=n&&Um(n)&&Yc(n)||jl(n)||jl(r)||jl(i)||n&&n.body&&qF(n)||i&&i.initializer&&Sl(i,!0);o||(r&&!uL(r)?Eo(Z,r,ws.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation,Qa(e)):n&&!uL(n)?Eo(Z,n,ws.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation,Qa(e)):i&&!uL(i)&&Eo(Z,i,ws.Member_0_implicitly_has_an_1_type,Qa(e),"any"),o=St),yc()||(Rl(n)?wo(n,ws._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,Qa(e)):Rl(r)||Rl(i)?wo(r,ws._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,Qa(e)):n&&Z&&wo(n,ws._0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions,Qa(e)),o=St),t.type??(t.type=o)}return t.type}function Ul(e){const t=Go(e);if(!t.writeType){if(!fc(e,7))return Et;const n=r_(e,178)??dt(r_(e,172),Tu);let r=jl(n);yc()||(Rl(n)&&wo(n,ws._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,Qa(e)),r=St),t.writeType??(t.writeType=r||zl(e))}return t.writeType}function Bl(e){const t=Au(ju(e));return 8650752&t.flags?t:2097152&t.flags?w(t.types,(e=>!!(8650752&e.flags))):void 0}function ql(e){let t=Go(e);const n=t;if(!t.type){const r=e.valueDeclaration&&BO(e.valueDeclaration,!1);if(r){const n=UO(e,r);n&&(e=n,t=n.links)}n.type=t.type=function(e){const t=e.valueDeclaration;if(1536&e.flags&&hp(e))return St;if(t&&(226===t.kind||Bx(t)&&226===t.parent.kind))return cl(e);if(512&e.flags&&t&&YI(t)&&t.commonJsModuleIndicator){const t=Ws(e);if(t!==e){if(!fc(e,0))return Et;const n=oa(e.exports.get("export=")),r=cl(n,n===t?void 0:t);return yc()?r:Hl(e)}}const n=xa(16,e);if(32&e.flags){const t=Bl(e);return t?Mv([n,t]):n}return K&&16777216&e.flags?Lk(n,!0):n}(e)}return t.type}function Vl(e){const t=Go(e);return t.type||(t.type=Gu(e))}function Wl(e){const t=Go(e);if(!t.type){if(!fc(e,0))return Et;const n=Ps(e),r=e.declarations&&As(us(e),!0),i=y(null==r?void 0:r.declarations,(e=>SI(e)?Ol(e):void 0));if(t.type??(t.type=(null==r?void 0:r.declarations)&&Lz(r.declarations)&&e.declarations.length?function(e){const t=C_(e.declarations[0]),n=wc(e.escapedName),r=e.declarations.every((e=>Um(e)&&Bx(e)&&uh(e.expression))),i=r?oE.createPropertyAccessExpression(oE.createPropertyAccessExpression(oE.createIdentifier("module"),oE.createIdentifier("exports")),n):oE.createPropertyAccessExpression(oE.createIdentifier("exports"),n);return r&&Bw(i.expression.expression,i.expression),Bw(i.expression,i),Bw(i,t),i.flowNode=t.endFlowNode,aA(i,Tt,Mt)}(r):Lz(e.declarations)?Tt:i||(111551&Ms(n)?$l(n):Et)),!yc())return Hl(r??e),t.type??(t.type=Et)}return t.type}function Hl(e){const t=e.valueDeclaration;if(t){if(Nv(t))return wo(e.valueDeclaration,ws._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,Qa(e)),Et;Z&&(169!==t.kind||t.initializer)&&wo(e.valueDeclaration,ws._0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or_indirectly_in_its_own_initializer,Qa(e))}else if(2097152&e.flags){const t=us(e);t&&wo(t,ws.Circular_definition_of_import_alias_0,Qa(e))}return St}function Gl(e){const t=Go(e);return t.type||(Tn.assertIsDefined(t.deferralParent),Tn.assertIsDefined(t.deferralConstituents),t.type=1048576&t.deferralParent.flags?fv(t.deferralConstituents):Mv(t.deferralConstituents)),t.type}function Zl(e){const t=bx(e);return 4&e.flags?2&t?65536&t?function(e){const t=Go(e);return!t.writeType&&t.deferralWriteConstituents&&(Tn.assertIsDefined(t.deferralParent),Tn.assertIsDefined(t.deferralConstituents),t.writeType=1048576&t.deferralParent.flags?fv(t.deferralWriteConstituents):Mv(t.deferralWriteConstituents)),t.writeType}(e)||Gl(e):e.links.writeType||e.links.type:Vk($l(e),!!(16777216&e.flags)):98304&e.flags?1&t?function(e){const t=Go(e);return t.writeType||(t.writeType=SS(Zl(t.target),t.mapper))}(e):Ul(e):$l(e)}function $l(e,t){const n=bx(e);return 65536&n?Gl(e):1&n?function(e){const t=Go(e);return t.type||(t.type=SS($l(t.target),t.mapper))}(e):262144&n?function(e){var t;if(!e.links.type){const n=e.links.mappedType;if(!fc(e,0))return n.containsError=!0,Et;const i=SS(O_(n.target||n),iS(n.mapper,D_(n),e.links.keyType));let o=K&&16777216&e.flags&&!sR(i,49152)?Lk(i,!0):524288&e.links.checkFlags?Jk(i):i;yc()||(wo(r,ws.Type_of_property_0_circularly_references_itself_in_mapped_type_1,Qa(e),Za(n)),o=Et),(t=e.links).type??(t.type=o)}return e.links.type}(e):8192&n?function(e){const t=Go(e);t.type||(t.type=TE(e.links.propertyType,e.links.mappedType,e.links.constraintType)||Dt);return t.type}(e):7&e.flags?Fl(e,t):9136&e.flags?ql(e):8&e.flags?Vl(e):98304&e.flags?zl(e):2097152&e.flags?Wl(e):Et}function eu(e){return Vk($l(e),!!(16777216&e.flags))}function nu(e,t){return void 0!==e&&void 0!==t&&!!(4&Mx(e))&&e.target===t}function ru(e){return 4&Mx(e)?e.target:e}function su(e,t){return function e(n){if(7&Mx(n)){const r=ru(n);return r===t||$(Fu(r),e)}if(2097152&n.flags)return $(n.types,e);return!1}(e)}function au(e,t){for(const n of t)e=ge(e,Yu(sa(n)));return e}function cu(e,t){for(;;){if((e=e.parent)&&gA(e)){const t=dh(e);if(6===t||3===t){const t=sa(e.left);t&&t.parent&&!bc(t.parent.valueDeclaration,(t=>e===t))&&(e=t.parent.valueDeclaration)}}if(!e)return;switch(e.kind){case 263:case 231:case 264:case 179:case 180:case 173:case 184:case 185:case 317:case 262:case 174:case 218:case 219:case 265:case 345:case 346:case 340:case 338:case 200:case 194:{const n=cu(e,t);if(200===e.kind)return _e(n,Yu(sa(e.typeParameter)));if(194===e.kind)return te(n,sx(e));const r=au(n,bl(e)),i=t&&(263===e.kind||231===e.kind||264===e.kind||zO(e))&&ju(sa(e)).thisType;return i?_e(r,i):r}case 341:const n=Hh(e);n&&(e=n.valueDeclaration);break;case 320:{const n=cu(e,t);return e.tags?au(n,U(e.tags,(e=>PD(e)?e.typeParameters:void 0))):n}}}}function _u(e){var t;const n=32&e.flags||16&e.flags?e.valueDeclaration:null==(t=e.declarations)?void 0:t.find((e=>{if(264===e.kind)return!0;if(260!==e.kind)return!1;const t=e.initializer;return!!t&&(218===t.kind||219===t.kind)}));return Tn.assert(!!n,"Class was missing valueDeclaration -OR- non-class had no interface declarations"),cu(n)}function gu(e){if(!e.declarations)return;let t;for(const n of e.declarations)if(264===n.kind||263===n.kind||231===n.kind||zO(n)||Lh(n)){t=au(t,bl(n))}return t}function yu(e){const t=pf(e,1);if(1===t.length){const e=t[0];if(!e.typeParameters&&1===e.parameters.length&&tU(e)){const t=aF(e.parameters[0]);return Dc(t)||uw(t)===St}}return!1}function ku(e){if(pf(e,1).length>0)return!0;if(8650752&e.flags){const t=cp(e);return!!t&&yu(t)}return!1}function Eu(e){const t=Px(e.symbol);return t&&Cg(t)}function Cu(e,t,n){const r=m(t),i=Um(n);return M(pf(e,1),(e=>(i||r>=Wf(e.typeParameters))&&r<=m(e.typeParameters)))}function Nu(e,t,n){const r=Cu(e,t,n),i=R(t,zx);return j(r,(e=>$(e.typeParameters)?qm(e,i,Um(n)):e))}function Au(e){if(!e.resolvedBaseConstructorType){const t=Px(e.symbol),n=t&&Cg(t),r=Eu(e);if(!r)return e.resolvedBaseConstructorType=Mt;if(!fc(e,1))return Et;const i=qR(r.expression);if(n&&r!==n&&(Tn.assert(!n.typeArguments),qR(n.expression)),2621440&i.flags&&J_(i),!yc())return wo(e.symbol.valueDeclaration,ws._0_is_referenced_directly_or_indirectly_in_its_own_base_expression,Qa(e.symbol)),e.resolvedBaseConstructorType??(e.resolvedBaseConstructorType=Et);if(!(1&i.flags||i===zt||ku(i))){const t=wo(r.expression,ws.Type_0_is_not_a_constructor_function_type,Za(i));if(262144&i.flags){const e=Mh(i);let n=Dt;if(e){const t=pf(e,1);t[0]&&(n=wm(t[0]))}i.symbol.declarations&&xw(t,Vp(i.symbol.declarations[0],ws.Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1,Qa(i.symbol),Za(n)))}return e.resolvedBaseConstructorType??(e.resolvedBaseConstructorType=Et)}e.resolvedBaseConstructorType??(e.resolvedBaseConstructorType=i)}return e.resolvedBaseConstructorType}function Pu(e,t){wo(e,ws.Type_0_recursively_references_itself_as_a_base_type,Za(t,void 0,2))}function Fu(e){if(!e.baseTypesResolved){if(fc(e,6)&&(8&e.objectFlags?e.resolvedBaseTypes=[Ru(e)]:96&e.symbol.flags?(32&e.symbol.flags&&function(e){e.resolvedBaseTypes=$d;const t=Np(Au(e));if(!(2621441&t.flags))return e.resolvedBaseTypes=_;const n=Eu(e);let r;const i=t.symbol?Zu(t.symbol):void 0;if(t.symbol&&32&t.symbol.flags&&function(e){const t=e.outerTypeParameters;if(t){const n=t.length-1,r=rg(e);return t[n].symbol!==r[n].symbol}return!0}(i))r=lg(n,t.symbol);else if(1&t.flags)r=t;else{const i=Nu(t,n.typeArguments,n);if(!i.length)return wo(n.expression,ws.No_base_constructor_has_the_specified_number_of_type_arguments),e.resolvedBaseTypes=_;r=wm(i[0])}if(Mc(r))return e.resolvedBaseTypes=_;const o=Jp(r);if(!Lu(o)){const t=gS(uf(void 0,r),ws.Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_known_members,Za(o));return oo.add(Wp(C_(n.expression),n.expression,t)),e.resolvedBaseTypes=_}if(e===o||su(o,e))return wo(e.symbol.valueDeclaration,ws.Type_0_recursively_references_itself_as_a_base_type,Za(e,void 0,2)),e.resolvedBaseTypes=_;e.resolvedBaseTypes===$d&&(e.members=void 0);e.resolvedBaseTypes=[o]}(e),64&e.symbol.flags&&function(e){if(e.resolvedBaseTypes=e.resolvedBaseTypes||_,e.symbol.declarations)for(const t of e.symbol.declarations)if(264===t.kind&&Dg(t))for(const n of Dg(t)){const r=Jp(zx(n));Mc(r)||(Lu(r)?e===r||su(r,e)?Pu(t,e):e.resolvedBaseTypes===_?e.resolvedBaseTypes=[r]:e.resolvedBaseTypes.push(r):wo(n,ws.An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_members))}}(e)):Tn.fail("type must be class or interface"),!yc()&&e.symbol.declarations))for(const t of e.symbol.declarations)263!==t.kind&&264!==t.kind||Pu(t,e);e.baseTypesResolved=!0}return e.resolvedBaseTypes}function Ru(e){return jy(fv(j(e.typeParameters,((t,n)=>8&e.elementFlags[n]?Qb(t,Bt):t))||_),e.readonly)}function Lu(e){if(262144&e.flags){const t=cp(e);if(t)return Lu(t)}return!!(67633153&e.flags&&!V_(e)||2097152&e.flags&&T(e.types,Lu))}function ju(e){let t=Go(e);const n=t;if(!t.declaredType){const r=32&e.flags?1:2,i=UO(e,e.valueDeclaration&&function(e){var t;const n=e&&BO(e,!0),r=null==(t=null==n?void 0:n.exports)?void 0:t.get("prototype"),i=(null==r?void 0:r.valueDeclaration)&&function(e){if(!e.parent)return!1;let t=e.parent;for(;t&&211===t.kind;)t=t.parent;if(t&&gA(t)&&Ab(t.left)&&64===t.operatorToken.kind){const e=Sh(t);return tA(e)&&e}}(r.valueDeclaration);return i?sa(i):void 0}(e.valueDeclaration));i&&(e=i,t=i.links);const o=n.declaredType=t.declaredType=xa(r,e),s=_u(e),a=gu(e);(s||a||1===r||!function(e){if(!e.declarations)return!0;for(const t of e.declarations)if(264===t.kind){if(256&t.flags)return!1;const e=Dg(t);if(e)for(const t of e)if(wb(t.expression)){const e=zs(t.expression,788968,!0);if(!e||!(64&e.flags)||ju(e).thisType)return!1}}return!0}(e))&&(o.objectFlags|=4,o.typeParameters=te(s,a),o.outerTypeParameters=s,o.localTypeParameters=a,o.instantiations=new Map,o.instantiations.set(zh(o.typeParameters),o),o.target=o,o.resolvedTypeArguments=o.typeParameters,o.thisType=Sa(e),o.thisType.isThisType=!0,o.thisType.constraint=o)}return t.declaredType}function zu(e){var t;const n=Go(e);if(!n.declaredType){if(!fc(e,2))return Et;const r=Tn.checkDefined(null==(t=e.declarations)?void 0:t.find(Lh),"Type alias symbol with no valid declaration found"),i=Rh(r)?r.typeExpression:r.type;let o=i?zx(i):Et;if(yc()){const t=gu(e);t&&(n.typeParameters=t,n.instantiations=new Map,n.instantiations.set(zh(t),o))}else o=Et,340===r.kind?wo(r.typeExpression.type,ws.Type_alias_0_circularly_references_itself,Qa(e)):wo(Pc(r)&&r.name||r,ws.Type_alias_0_circularly_references_itself,Qa(e));n.declaredType??(n.declaredType=o)}return n.declaredType}function Uu(e){return 1056&e.flags&&8&e.symbol.flags?Zu(ca(e.symbol)):e}function Bu(e){const t=Go(e);if(!t.declaredType){const n=[];if(e.declarations)for(const t of e.declarations)if(266===t.kind)for(const r of t.members)if(bd(r)){const t=sa(r),i=WU(r).value,o=Sx(void 0!==i?Dx(i,Qz(e),t):qu(t));Go(t).declaredType=o,n.push(Ex(o))}const r=n.length?fv(n,1,e,void 0):qu(e);1048576&r.flags&&(r.flags|=1024,r.symbol=e),t.declaredType=r}return t.declaredType}function qu(e){const t=ya(32,e),n=ya(32,e);return t.regularType=t,t.freshType=n,n.regularType=t,n.freshType=n,t}function Gu(e){const t=Go(e);if(!t.declaredType){const n=Bu(ca(e));t.declaredType||(t.declaredType=n)}return t.declaredType}function Yu(e){const t=Go(e);return t.declaredType||(t.declaredType=Sa(e))}function Zu(e){return Xu(e)||Et}function Xu(e){return 96&e.flags?ju(e):524288&e.flags?zu(e):262144&e.flags?Yu(e):384&e.flags?Bu(e):8&e.flags?Gu(e):2097152&e.flags?function(e){const t=Go(e);return t.declaredType||(t.declaredType=Zu(Ps(e)))}(e):void 0}function $u(e){switch(e.kind){case 133:case 159:case 154:case 150:case 163:case 136:case 155:case 151:case 116:case 157:case 146:case 201:return!0;case 188:return $u(e.elementType);case 183:return!e.typeArguments||e.typeArguments.every($u)}return!1}function ed(e){const t=xl(e);return!t||$u(t)}function rd(e){const t=Nv(e);return t?$u(t):!Bd(e)}function od(e){if(e.declarations&&1===e.declarations.length){const t=e.declarations[0];if(t)switch(t.kind){case 172:case 171:return rd(t);case 174:case 173:case 176:case 177:case 178:return function(e){const t=Iv(e),n=bl(e);return(176===e.kind||!!t&&$u(t))&&e.parameters.every(rd)&&n.every(ed)}(t)}}return!1}function ud(e,t,n){const r=o_();for(const i of e)r.set(i.escapedName,n&&od(i)?i:aS(i,t));return r}function dd(e,t){for(const n of t){if(_d(n))continue;const t=e.get(n.escapedName);(!t||t.valueDeclaration&&gA(t.valueDeclaration)&&!el(t)&&!om(t.valueDeclaration))&&(e.set(n.escapedName,n),e.set(n.escapedName,n))}}function _d(e){return!!e.valueDeclaration&&iu(e.valueDeclaration)&&Jv(e.valueDeclaration)}function pd(e){if(!e.declaredProperties){const t=e.symbol,n=wd(t);e.declaredProperties=wa(n),e.declaredCallSignatures=_,e.declaredConstructSignatures=_,e.declaredIndexInfos=_,e.declaredCallSignatures=tm(n.get("__call")),e.declaredConstructSignatures=tm(n.get("__new")),e.declaredIndexInfos=wh(t)}return e}function fd(e){if(!_N(e)&&!rA(e))return!1;const t=_N(e)?e.expression:e.argumentExpression;return wb(t)&&Sk(_N(e)?lP(e):TR(t))}function md(e){return 95===e.charCodeAt(0)&&95===e.charCodeAt(1)&&64===e.charCodeAt(2)}function hd(e){const t=Oc(e);return!!t&&fd(t)}function bd(e){return!Qg(e)||hd(e)}function xd(e,t,n,r){Tn.assert(!!r.symbol,"The member is expected to have a symbol.");const i=Qo(r);if(!i.resolvedSymbol){i.resolvedSymbol=r.symbol;const o=gA(r)?r.left:r.name,s=rA(o)?TR(o.argumentExpression):lP(o);if(Sk(s)){const a=Tk(s),c=r.symbol.flags;let l=n.get(a);l||n.set(a,l=Po(0,a,4096));const u=t&&t.get(a);if(!(32&e.flags)&&l.flags&zo(c)){const e=u?te(u.declarations,l.declarations):l.declarations,t=!(8192&s.flags)&&wc(a)||Lp(o);h(e,(e=>wo(Oc(e)||e,ws.Property_0_was_also_declared_here,t))),wo(o||r,ws.Duplicate_property_0,t),l=Po(0,a,4096)}return l.links.nameType=s,function(e,t,n){Tn.assert(!!(4096&bx(e)),"Expected a late-bound symbol."),e.flags|=n,Go(t.symbol).lateSymbol=e,e.declarations?t.symbol.isReplaceableByMethod||e.declarations.push(t):e.declarations=[t],111551&n&&(e.valueDeclaration&&e.valueDeclaration.kind===t.kind||(e.valueDeclaration=t))}(l,r,c),l.parent?Tn.assert(l.parent===e,"Existing symbol parent should match new one"):l.parent=e,i.resolvedSymbol=l}}return i.resolvedSymbol}function Td(e,t){const n=Go(e);if(!n[t]){const r="resolvedExports"===t,i=r?1536&e.flags?ra(e).exports:e.exports:e.members;n[t]=i||x;const o=o_();for(const t of e.declarations||_){const n=Lf(t);if(n)for(const t of n)r===Wv(t)&&hd(t)&&xd(e,i,o,t)}const s=la(e).assignmentDeclarationMembers;if(s){const t=Ke(s.values());for(const n of t){const t=dh(n);r===!(3===t||gA(n)&&kD(n,t)||9===t||6===t)&&hd(n)&&xd(e,i,o,n)}}let a=function(e,t){if(!(null==e?void 0:e.size))return t;if(!(null==t?void 0:t.size))return e;const n=o_();return Wo(n,e),Wo(n,t),n}(i,o);if(33554432&e.flags&&n.cjsExportMerged&&e.declarations)for(const n of e.declarations){const e=Go(n.symbol)[t];a?e&&e.forEach(((e,t)=>{const n=a.get(t);if(n){if(n===e)return;a.set(t,qo(n,e))}else a.set(t,e)})):a=e}n[t]=a||x}return n[t]}function wd(e){return 6256&e.flags?Td(e,"resolvedMembers"):e.members||x}function Ed(e){if(106500&e.flags&&"__computed"===e.escapedName){const t=Go(e);if(!t.lateSymbol&&$(e.declarations,hd)){const t=oa(e.parent);$(e.declarations,Wv)?$s(t):wd(t)}return t.lateSymbol||(t.lateSymbol=e)}return e}function Cd(e,t,n){if(4&Mx(e)){const n=e.target,r=rg(e);return m(n.typeParameters)===m(r)?Wh(n,te(r,[t||n.thisType])):e}if(2097152&e.flags){const r=j(e.types,(e=>Cd(e,t,n)));return r!==e.types?Mv(r):e}return n?Np(e):e}function Nd(e,t,n,r){let i,o,s,a,c;Se(n,r,0,n.length)?(o=t.symbol?wd(t.symbol):o_(t.declaredProperties),s=t.declaredCallSignatures,a=t.declaredConstructSignatures,c=t.declaredIndexInfos):(i=Gx(n,r),o=ud(t.declaredProperties,i,1===n.length),s=Wx(t.declaredCallSignatures,i),a=Wx(t.declaredConstructSignatures,i),c=Hx(t.declaredIndexInfos,i));const l=Fu(t);if(l.length){if(t.symbol&&o===wd(t.symbol)){const e=o_(t.declaredProperties),n=mh(t.symbol);n&&e.set("__index",n),o=e}Ea(e,o,s,a,c);const n=Ne(r);for(const e of l){const t=n?Cd(SS(e,i),n):e;dd(o,Q_(t)),s=te(s,pf(t,0)),a=te(a,pf(t,1));const r=t!==St?Sf(t):[vh(Ut,St,!1)];c=te(c,M(r,(e=>!yf(c,e.keyType))))}}Ea(e,o,s,a,c)}function Ad(e,t,n,r,i,o,s,a){const c=new l(ze,a);return c.declaration=e,c.typeParameters=t,c.parameters=r,c.thisParameter=n,c.resolvedReturnType=i,c.resolvedTypePredicate=o,c.minArgumentCount=s,c.resolvedMinArgumentCount=void 0,c.target=void 0,c.mapper=void 0,c.compositeSignatures=void 0,c.compositeKind=void 0,c}function Dd(e){const t=Ad(e.declaration,e.typeParameters,e.thisParameter,e.parameters,void 0,void 0,e.minArgumentCount,167&e.flags);return t.target=e.target,t.mapper=e.mapper,t.compositeSignatures=e.compositeSignatures,t.compositeKind=e.compositeKind,t}function Md(e,t){const n=Dd(e);return n.compositeSignatures=t,n.compositeKind=1048576,n.target=void 0,n.mapper=void 0,n}function Fd(e,t){if((24&e.flags)===t)return e;e.optionalCallSignatureCache||(e.optionalCallSignatureCache={});const n=8===t?"inner":"outer";return e.optionalCallSignatureCache[n]||(e.optionalCallSignatureCache[n]=function(e,t){Tn.assert(8===t||16===t,"An optional call signature can either be for an inner call chain or an outer call chain, but not both.");const n=Dd(e);return n.flags|=t,n}(e,t))}function Rd(e,t){if(tU(e)){const r=e.parameters.length-1,i=e.parameters[r].escapedName,o=$l(e.parameters[r]);if($w(o))return[n(o,r,i)];if(!t&&1048576&o.flags&&T(o.types,$w))return R(o.types,(e=>n(e,r,i)))}return[e.parameters];function n(t,n,r){const i=rg(t),o=function(e,t){const n=new Map;return R(e.target.labeledElementDeclarations,((e,r)=>{const i=cF(e,r,t),o=n.get(i);return void 0===o?(n.set(i,1),i):(n.set(i,o+1),`${i}_${o}`)}))}(t,r),s=R(i,((r,i)=>{const s=o&&o[i]?o[i]:lF(e,n+i,t),a=t.target.elementFlags[i],c=Po(1,s,12&a?32768:2&a?16384:0);return c.links.type=4&a?jy(r):r,c}));return te(e.parameters.slice(0,n),s)}}function Vd(e,t,n,r,i){for(const o of e)if(nw(o,t,n,r,i,n?US:PS))return o}function Jd(e,t,n){if(t.typeParameters){if(n>0)return;for(let n=1;n<e.length;n++)if(!Vd(e[n],t,!1,!1,!1))return;return[t]}let r;for(let i=0;i<e.length;i++){const o=i===n?t:Vd(e[i],t,!1,!1,!0)||Vd(e[i],t,!0,!1,!0);if(!o)return;r=ge(r,o)}return r}function Wd(e){let t,n;for(let r=0;r<e.length;r++){if(0===e[r].length)return _;e[r].length>1&&(n=void 0===n?r:-1);for(const n of e[r])if(!t||!Vd(t,n,!1,!1,!0)){const i=Jd(e,n,r);if(i){let e=n;if(i.length>1){let t=n.thisParameter;const r=h(i,(e=>e.thisParameter));if(r){t=Hk(r,Mv(J(i,(e=>e.thisParameter&&$l(e.thisParameter)))))}e=Md(n,i),e.thisParameter=t}(t||(t=[])).push(e)}}}if(!m(t)&&-1!==n){const r=e[void 0!==n?n:0];let i=r.slice();for(const t of e)if(t!==r){const e=t[0];if(Tn.assert(!!e,"getUnionSignatures bails early on empty signature lists and should not have empty lists on second pass"),i=e.typeParameters&&$(i,(t=>!!t.typeParameters&&!Zd(e.typeParameters,t.typeParameters)))?void 0:R(i,(t=>Xd(t,e))),!i)break}t=i}return t||_}function Zd(e,t){if(m(e)!==m(t))return!1;if(!e||!t)return!0;const n=Gx(t,e);for(let r=0;r<e.length;r++){const i=e[r],o=t[r];if(i!==o&&!DS(Mh(i)||Dt,SS(Mh(o)||Dt,n)))return!1}return!0}function Xd(e,t){const n=e.typeParameters||t.typeParameters;let r;e.typeParameters&&t.typeParameters&&(r=Gx(t.typeParameters,e.typeParameters));const i=e.declaration,o=function(e,t,n){const r=gF(e),i=gF(t),o=r>=i?e:t,s=o===e?t:e,a=o===e?r:i,c=vF(e)||vF(t),l=c&&!vF(o),u=new Array(a+(l?1:0));for(let d=0;d<a;d++){let _=fF(o,d);o===t&&(_=SS(_,n));let p=fF(s,d)||Dt;s===t&&(p=SS(p,n));const f=Mv([_,p]),m=c&&!l&&d===a-1,h=d>=yF(o)&&d>=yF(s),g=d>=r?void 0:lF(e,d),y=d>=i?void 0:lF(t,d),v=Po(1|(h&&!m?16777216:0),(g===y?g:g?y?void 0:g:y)||`arg${d}`,m?32768:h?16384:0);v.links.type=m?jy(f):f,u[d]=v}if(l){const e=Po(1,"args",32768);e.links.type=jy(pF(s,a)),s===t&&(e.links.type=SS(e.links.type,n)),u[a]=e}return u}(e,t,r),s=function(e,t,n){return e&&t?Hk(e,Mv([$l(e),SS($l(t),n)])):e||t}(e.thisParameter,t.thisParameter,r),a=Ad(i,n,s,o,void 0,void 0,Math.max(e.minArgumentCount,t.minArgumentCount),167&(e.flags|t.flags));return a.compositeKind=1048576,a.compositeSignatures=te(2097152!==e.compositeKind&&e.compositeSignatures||[e],[t]),r?a.mapper=2097152!==e.compositeKind&&e.mapper&&e.compositeSignatures?nS(e.mapper,r):r:2097152!==e.compositeKind&&e.mapper&&e.compositeSignatures&&(a.mapper=e.mapper),a}function c_(e){const t=Sf(e[0]);if(t){const n=[];for(const r of t){const t=r.keyType;T(e,(e=>!!Tf(e,t)))&&n.push(vh(t,fv(R(e,(e=>wf(e,t)))),$(e,(e=>Tf(e,t).isReadonly))))}return n}return _}function l_(e,t){return e?t?Mv([e,t]):e:t}function u_(e){const t=P(e,(e=>pf(e,1).length>0)),n=R(e,yu);if(t>0&&t===P(n,(e=>e))){const e=n.indexOf(!0);n[e]=!1}return n}function d_(e,t,n,r){const i=[];for(let o=0;o<t.length;o++)o===r?i.push(e):n[o]&&i.push(wm(pf(t[o],1)[0]));return Mv(i)}function __(e,t){for(const n of t)e&&!T(e,(e=>!nw(e,n,!1,!1,!1,PS)))||(e=_e(e,n));return e}function p_(e,t,n){if(e)for(let r=0;r<e.length;r++){const i=e[r];if(i.keyType===t.keyType)return e[r]=vh(i.keyType,n?fv([i.type,t.type]):Mv([i.type,t.type]),n?i.isReadonly||t.isReadonly:i.isReadonly&&t.isReadonly),e}return _e(e,t)}function y_(e){if(e.target){Ea(e,x,_,_,_);return void Ea(e,ud(W_(e.target),e.mapper,!1),Wx(pf(e.target,0),e.mapper),Wx(pf(e.target,1),e.mapper),Hx(Sf(e.target),e.mapper))}const t=oa(e.symbol);if(2048&t.flags){Ea(e,x,_,_,_);const n=wd(t),r=tm(n.get("__call")),i=tm(n.get("__new"));return void Ea(e,n,r,i,wh(t))}let n,r,i=$s(t);if(t===fe){const e=new Map;i.forEach((t=>{var n;418&t.flags||512&t.flags&&(null==(n=t.declarations)?void 0:n.length)&&T(t.declarations,_p)||e.set(t.escapedName,t)})),i=e}if(Ea(e,i,_,_,_),32&t.flags){const e=Au(ju(t));11272192&e.flags?(i=o_(function(e){const t=wa(e),n=yh(e);return n?te(t,[n]):t}(i)),dd(i,Q_(e))):e===St&&(r=vh(Ut,St,!1))}const o=yh(i);if(o?n=Eh(o):(r&&(n=_e(n,r)),384&t.flags&&(32&Zu(t).flags||$(e.properties,(e=>!!(296&$l(e).flags))))&&(n=_e(n,oi))),Ea(e,i,_,_,n||_),8208&t.flags&&(e.callSignatures=tm(t)),32&t.flags){const n=ju(t);let r=t.members?tm(t.members.get("__constructor")):_;16&t.flags&&(r=me(r.slice(),J(e.callSignatures,(e=>zO(e.declaration)?Ad(e.declaration,e.typeParameters,e.thisParameter,e.parameters,n,void 0,e.minArgumentCount,167&e.flags):void 0)))),r.length||(r=function(e){const t=pf(Au(e),1),n=Px(e.symbol),r=!!n&&Kv(n,64);if(0===t.length)return[Ad(void 0,e.localTypeParameters,void 0,_,e,void 0,0,r?4:0)];const i=Eu(e),o=Um(i),s=iy(i),a=m(s),c=[];for(const l of t){const t=Wf(l.typeParameters),n=m(l.typeParameters);if(o||a>=t&&a<=n){const i=n?Qm(l,Zf(s,l.typeParameters,t,o)):Dd(l);i.typeParameters=e.localTypeParameters,i.resolvedReturnType=e,i.flags=r?4|i.flags:-5&i.flags,c.push(i)}}return c}(n)),e.constructSignatures=r}}function v_(e,t,n){return SS(e,Gx([t.indexType,t.objectType],[Ax(0),Gy([n])]))}function b_(e){const t=Tf(e.source,Ut),n=U_(e.mappedType),r=!(1&n),i=4&n?0:16777216,o=t?[vh(Ut,TE(t.type,e.mappedType,e.constraintType)||Dt,r&&t.isReadonly)]:_,s=o_(),a=function(e){const t=P_(e.mappedType);if(!(1048576&t.flags||2097152&t.flags))return;const n=1048576&t.flags?t.origin:t;if(!(n&&2097152&n.flags))return;const r=Mv(n.types.filter((t=>t!==e.constraintType)));return r!==$t?r:void 0}(e);for(const c of Q_(e.source)){if(a){if(!WS(tb(c,8576),a))continue}const t=8192|(r&&$F(c)?8:0),n=Po(4|c.flags&i,c.escapedName,t);if(n.declarations=c.declarations,n.links.nameType=Go(c).nameType,n.links.propertyType=$l(c),8388608&e.constraintType.type.flags&&262144&e.constraintType.type.objectType.flags&&262144&e.constraintType.type.indexType.flags){const t=e.constraintType.type.objectType,r=v_(e.mappedType,e.constraintType.type,t);n.links.mappedType=r,n.links.constraintType=sb(t)}else n.links.mappedType=e.mappedType,n.links.constraintType=e.constraintType;s.set(c.escapedName,n)}Ea(e,s,_,_,o)}function S_(e){if(4194304&e.flags){const t=Np(e.type);return rk(t)?tv(t):sb(t)}if(16777216&e.flags){if(e.root.isDistributive){const t=e.checkType,n=S_(t);if(n!==t)return xS(e,rS(e.root.checkType,n,e.mapper),!1)}return e}if(1048576&e.flags)return HC(e,S_,!0);if(2097152&e.flags){const t=e.types;return 2===t.length&&76&t[0].flags&&t[1]===An?e:Mv(j(e.types,S_))}return e}function T_(e){return 4096&bx(e)}function w_(e,t,n,r){for(const i of Q_(e))r(tb(i,t));if(1&e.flags)r(Ut);else for(const i of Sf(e))(!n||134217732&i.keyType.flags)&&r(i.keyType)}function k_(e){const t=o_();let n;Ea(e,x,_,_,_);const r=D_(e),i=P_(e),o=e.target||e,s=M_(o),a=2!==K_(o),c=O_(o),l=Np(z_(e)),u=U_(e);function d(i){BC(s?SS(s,iS(e.mapper,r,i)):i,(o=>function(i,o){if(Sk(o)){const n=Tk(o),r=t.get(n);if(r)r.links.nameType=fv([r.links.nameType,o]),r.links.keyType=fv([r.links.keyType,i]);else{const r=Sk(i)?df(l,Tk(i)):void 0,s=!!(4&u||!(8&u)&&r&&16777216&r.flags),c=!!(1&u||!(2&u)&&r&&$F(r)),d=K&&!s&&r&&16777216&r.flags,_=Po(4|(s?16777216:0),n,262144|(r?T_(r):0)|(c?8:0)|(d?524288:0));_.links.mappedType=e,_.links.nameType=o,_.links.keyType=i,r&&(_.links.syntheticOrigin=r,_.declarations=a?r.declarations:void 0),t.set(n,_)}}else if(Nh(o)||33&o.flags){const t=5&o.flags?Ut:40&o.flags?Bt:o,s=SS(c,iS(e.mapper,r,i)),a=Ef(l,o),d=vh(t,s,!!(1&u||!(2&u)&&(null==a?void 0:a.isReadonly)));n=p_(n,d,!0)}}(i,o)))}j_(e)?w_(l,8576,!1,d):BC(S_(i),d),Ea(e,t,_,_,n||_)}function D_(e){return e.typeParameter||(e.typeParameter=Yu(sa(e.declaration.typeParameter)))}function P_(e){return e.constraintType||(e.constraintType=Z_(D_(e))||Et)}function M_(e){return e.declaration.nameType?e.nameType||(e.nameType=SS(zx(e.declaration.nameType),e.mapper)):void 0}function O_(e){return e.templateType||(e.templateType=e.declaration.type?SS(Xc(zx(e.declaration.type),!0,!!(4&U_(e))),e.mapper):Et)}function L_(e){return xl(e.declaration.typeParameter)}function j_(e){const t=L_(e);return 198===t.kind&&143===t.operator}function z_(e){if(!e.modifiersType)if(j_(e))e.modifiersType=SS(zx(L_(e).type),e.mapper);else{const t=P_($b(e.declaration)),n=t&&262144&t.flags?Z_(t):t;e.modifiersType=n&&4194304&n.flags?SS(n.type,e.mapper):Dt}return e.modifiersType}function U_(e){const t=e.declaration;return(t.readonlyToken?41===t.readonlyToken.kind?2:1:0)|(t.questionToken?41===t.questionToken.kind?8:4:0)}function B_(e){const t=U_(e);return 8&t?-1:4&t?1:0}function q_(e){if(32&Mx(e))return B_(e)||q_(z_(e));if(2097152&e.flags){const t=q_(e.types[0]);return T(e.types,((e,n)=>0===n||q_(e)===t))?t:0}return 0}function V_(e){if(32&Mx(e)){const t=P_(e);if(Vb(t))return!0;const n=M_(e);if(n&&Vb(SS(n,Yx(D_(e),t))))return!0}return!1}function K_(e){const t=M_(e);return t?WS(t,D_(e))?1:2:0}function J_(e){return e.members||(524288&e.flags?4&e.objectFlags?function(e){const t=pd(e.target),n=te(t.typeParameters,[t.thisType]),r=rg(e);Nd(e,t,n,r.length===n.length?r:te(r,[e]))}(e):3&e.objectFlags?function(e){Nd(e,pd(e),_,_)}(e):1024&e.objectFlags?b_(e):16&e.objectFlags?y_(e):32&e.objectFlags?k_(e):Tn.fail("Unhandled object type "+Tn.formatObjectFlags(e.objectFlags)):1048576&e.flags?function(e){const t=Wd(R(e.types,(e=>e===Hn?[ni]:pf(e,0)))),n=Wd(R(e.types,(e=>pf(e,1)))),r=c_(e.types);Ea(e,x,t,n,r)}(e):2097152&e.flags?function(e){let t,n,r;const i=e.types,o=u_(i),s=P(o,(e=>e));for(let a=0;a<i.length;a++){const c=e.types[a];if(!o[a]){let e=pf(c,1);e.length&&s>0&&(e=R(e,(e=>{const t=Dd(e);return t.resolvedReturnType=d_(wm(e),i,o,a),t}))),n=__(n,e)}t=__(t,pf(c,0)),r=Re(Sf(c),((e,t)=>p_(e,t,!1)),r)}Ea(e,x,t||_,n||_,r||_)}(e):Tn.fail("Unhandled type "+Tn.formatTypeFlags(e.flags))),e}function W_(e){return 524288&e.flags?J_(e).properties:_}function H_(e,t){if(524288&e.flags){const n=J_(e).members.get(t);if(n&&ha(n))return n}}function G_(e){if(!e.resolvedProperties){const t=o_();for(const n of e.types){for(const r of Q_(n))if(!t.has(r.escapedName)){const n=Up(e,r.escapedName,!!(2097152&e.flags));n&&t.set(r.escapedName,n)}if(1048576&e.flags&&0===Sf(n).length)break}e.resolvedProperties=wa(t)}return e.resolvedProperties}function Q_(e){return 3145728&(e=Ap(e)).flags?G_(e):W_(e)}function Y_(e){return 262144&e.flags?Z_(e):8388608&e.flags?function(e){return fp(e)?function(e){if(Cp(e))return Gb(e.objectType,e.indexType);const t=$_(e.indexType);if(t&&t!==e.indexType){const n=Zb(e.objectType,t,e.accessFlags);if(n)return n}const n=$_(e.objectType);if(n&&n!==e.objectType)return Zb(n,e.indexType,e.accessFlags);return}(e):void 0}(e):16777216&e.flags?ap(e):cp(e)}function Z_(e){return fp(e)?Mh(e):void 0}function X_(e,t=0){var n;return t<5&&!(!e||!(262144&e.flags&&$(null==(n=e.symbol)?void 0:n.declarations,(e=>Kv(e,4096)))||3145728&e.flags&&$(e.types,(e=>X_(e,t)))||8388608&e.flags&&X_(e.objectType,t+1)||16777216&e.flags&&X_(ap(e),t+1)||33554432&e.flags&&X_(e.baseType,t)||32&Mx(e)&&function(e,t){const n=dS(e);return!!n&&X_(n,t)}(e,t)||rk(e)&&E(iv(e),((n,r)=>!!(8&e.target.elementFlags[r])&&X_(n,t)))>=0))}function $_(e){const t=Jb(e,!1);return t!==e?t:Y_(e)}function tp(e){if(!e.resolvedDefaultConstraint){const t=function(e){return e.resolvedInferredTrueType||(e.resolvedInferredTrueType=e.combinedMapper?SS(zx(e.root.node.trueType),e.combinedMapper):ix(e))}(e),n=ox(e);e.resolvedDefaultConstraint=Dc(t)?n:Dc(n)?t:fv([t,n])}return e.resolvedDefaultConstraint}function ip(e){if(void 0!==e.resolvedConstraintOfDistributive)return e.resolvedConstraintOfDistributive||void 0;if(e.root.isDistributive&&e.restrictiveInstantiation!==e){const t=Jb(e.checkType,!1),n=t===e.checkType?Y_(t):t;if(n&&n!==e.checkType){const t=xS(e,rS(e.root.checkType,n,e.mapper),!0);if(!(131072&t.flags))return e.resolvedConstraintOfDistributive=t,t}}e.resolvedConstraintOfDistributive=!1}function sp(e){return ip(e)||tp(e)}function ap(e){return fp(e)?sp(e):void 0}function cp(e){if(464781312&e.flags||rk(e)){const t=mp(e);return t!==On&&t!==Fn?t:void 0}return 4194304&e.flags?un:void 0}function lp(e){return cp(e)||e}function fp(e){return mp(e)!==Fn}function mp(e){if(e.resolvedBaseConstraint)return e.resolvedBaseConstraint;const t=[];return e.resolvedBaseConstraint=n(e);function n(e){if(!e.immediateBaseConstraint){if(!fc(e,4))return Fn;let n;const o=ew(e);if((t.length<10||t.length<50&&!A(t,o))&&(t.push(o),n=function(e){if(262144&e.flags){const t=Mh(e);return e.isThisType||!t?t:i(t)}if(3145728&e.flags){const t=e.types,n=[];let r=!1;for(const e of t){const t=i(e);t?(t!==e&&(r=!0),n.push(t)):r=!0}return r?1048576&e.flags&&n.length===t.length?fv(n):2097152&e.flags&&n.length?Mv(n):void 0:e}if(4194304&e.flags)return un;if(134217728&e.flags){const t=e.types,n=J(t,i);return n.length===t.length?cb(e.texts,n):Ut}if(268435456&e.flags){const t=i(e.type);return t&&t!==e.type?_b(e.symbol,t):Ut}if(8388608&e.flags){if(Cp(e))return i(Gb(e.objectType,e.indexType));const t=i(e.objectType),n=i(e.indexType),r=t&&n&&Zb(t,n,e.accessFlags);return r&&i(r)}if(16777216&e.flags){const t=sp(e);return t&&i(t)}if(33554432&e.flags)return i(Bg(e));if(rk(e)){return Gy(R(iv(e),((t,n)=>{const r=262144&t.flags&&8&e.target.elementFlags[n]&&i(t)||t;return r!==t&&VC(r,(e=>cw(e)&&!rk(e)))?r:t})),e.target.elementFlags,e.target.readonly,e.target.labeledElementDeclarations)}return e}(Jb(e,!1)),t.pop()),!yc()){if(262144&e.flags){const t=Ah(e);if(t){const n=wo(t,ws.Type_parameter_0_has_a_circular_constraint,Za(e));!r||hg(t,r)||hg(r,t)||xw(n,Vp(r,ws.Circularity_originates_in_type_at_this_location))}}n=Fn}e.immediateBaseConstraint??(e.immediateBaseConstraint=n||On)}return e.immediateBaseConstraint}function i(e){const t=n(e);return t!==On&&t!==Fn?t:void 0}}function bp(e){if(e.default)e.default===Rn&&(e.default=Fn);else if(e.target){const t=bp(e.target);e.default=t?SS(t,e.mapper):On}else{e.default=Rn;const t=e.symbol&&h(e.symbol.declarations,(e=>pN(e)&&e.default)),n=t?zx(t):On;e.default===Rn&&(e.default=n)}return e.default}function Tp(e){const t=bp(e);return t!==On&&t!==Fn?t:void 0}function wp(e){return!(!e.symbol||!h(e.symbol.declarations,(e=>pN(e)&&e.default)))}function kp(e){return e.resolvedApparentType||(e.resolvedApparentType=function(e){const t=e.target??e,n=dS(t);if(n&&!t.declaration.nameType){const r=z_(e),i=V_(r)?kp(r):cp(r);if(i&&VC(i,(e=>cw(e)||Ep(e))))return SS(t,rS(n,i,e.mapper))}return e}(e))}function Ep(e){return!!(2097152&e.flags)&&T(e.types,cw)}function Cp(e){let t;return!(!(8388608&e.flags&&32&Mx(t=e.objectType)&&!V_(t)&&Vb(e.indexType))||8&U_(t)||t.declaration.nameType)}function Np(e){const t=465829888&e.flags?cp(e)||Dt:e,n=Mx(t);return 32&n?kp(t):4&n&&t!==e?Cd(t,e):2097152&t.flags?function(e,t){if(e===t)return e.resolvedApparentType||(e.resolvedApparentType=Cd(e,t,!0));const n=`I${ov(e)},${ov(t)}`;return go(n)??yo(n,Cd(e,t,!0))}(t,e):402653316&t.flags?Xn:296&t.flags?$n:2112&t.flags?jr||(jr=gy("BigInt",0,!1))||En:528&t.flags?er:12288&t.flags?Ty():67108864&t.flags?En:4194304&t.flags?un:2&t.flags&&!K?En:t}function Ap(e){return Jp(Np(Jp(e)))}function Ip(e,t,n){var r,i,o;let s,a,c;const l=1048576&e.flags;let u,d=4,_=l?0:8,p=!1;for(const w of e.types){const e=Np(w);if(!(Mc(e)||131072&e.flags)){const r=df(e,t,n),i=r?xx(r):0;if(r){if(106500&r.flags&&(u??(u=l?0:16777216),l?u|=16777216&r.flags:u&=r.flags),s){if(r!==s){if((lz(r)||r)===(lz(s)||s)&&-1===tw(s,r,((e,t)=>e===t?-1:0)))p=!!s.parent&&!!m(gu(s.parent));else{a||(a=new Map,a.set(Qz(s),s));const e=Qz(r);a.has(e)||a.set(e,r)}}}else s=r;l&&$F(r)?_|=8:l||$F(r)||(_&=-9),_|=(6&i?0:256)|(4&i?512:0)|(2&i?1024:0)|(256&i?2048:0),QP(r)||(d=2)}else if(l){const n=!md(t)&&Cf(e,t);n?(_|=32|(n.isReadonly?8:0),c=_e(c,$w(e)?lk(e)||Mt:n.type)):!BE(e)||2097152&Mx(e)?_|=16:(_|=32,c=_e(c,Mt))}}}if(!s||l&&(a||48&_)&&1536&_&&(!a||!function(e){let t;for(const n of e){if(!n.declarations)return;if(t){if(t.forEach((e=>{A(n.declarations,e)||t.delete(e)})),0===t.size)return}else t=new Set(n.declarations)}return t}(a.values())))return;if(!(a||16&_||c)){if(p){const t=null==(r=dt(s,s_))?void 0:r.links,n=Hk(s,null==t?void 0:t.type);return n.parent=null==(o=null==(i=s.valueDeclaration)?void 0:i.symbol)?void 0:o.parent,n.links.containingType=e,n.links.mapper=null==t?void 0:t.mapper,n.links.writeType=Zl(s),n}return s}const f=a?Ke(a.values()):[s];let h,g,y;const v=[];let b,x,S=!1;for(const m of f){x?m.valueDeclaration&&m.valueDeclaration!==x&&(S=!0):x=m.valueDeclaration,h=me(h,m.declarations);const e=$l(m);g||(g=e,y=Go(m).nameType);const t=Zl(m);(b||t!==e)&&(b=_e(b||v.slice(),t)),e!==g&&(_|=64),(zw(e)||zb(e))&&(_|=128),131072&e.flags&&e!==xn&&(_|=131072),v.push(e)}me(v,c);const T=Po(4|(u??0),t,d|_);return T.links.containingType=e,!S&&x&&(T.valueDeclaration=x,x.symbol.parent&&(T.parent=x.symbol.parent)),T.declarations=h,T.links.nameType=y,v.length>2?(T.links.checkFlags|=65536,T.links.deferralParent=e,T.links.deferralConstituents=v,T.links.deferralWriteConstituents=b):(T.links.type=l?fv(v):Mv(v),b&&(T.links.writeType=l?fv(b):Mv(b))),T}function Mp(e,t,n){var r,i,o;let s=n?null==(r=e.propertyCacheWithoutObjectFunctionPropertyAugment)?void 0:r.get(t):null==(i=e.propertyCache)?void 0:i.get(t);if(!s&&(s=Ip(e,t,n),s)){if((n?e.propertyCacheWithoutObjectFunctionPropertyAugment||(e.propertyCacheWithoutObjectFunctionPropertyAugment=o_()):e.propertyCache||(e.propertyCache=o_())).set(t,s),n&&!(48&bx(s))&&!(null==(o=e.propertyCache)?void 0:o.get(t))){(e.propertyCache||(e.propertyCache=o_())).set(t,s)}}return s}function Up(e,t,n){const r=Mp(e,t,n);return!r||16&bx(r)?void 0:r}function Jp(e){return 1048576&e.flags&&16777216&e.objectFlags?e.resolvedReducedType||(e.resolvedReducedType=function(e){const t=j(e.types,Jp);if(t===e.types)return e;const n=fv(t);1048576&n.flags&&(n.resolvedReducedType=n);return n}(e)):2097152&e.flags?(16777216&e.objectFlags||(e.objectFlags|=16777216|($(G_(e),Gp)?33554432:0)),33554432&e.objectFlags?$t:e):e}function Gp(e){return Qp(e)||Xp(e)}function Qp(e){return!(16777216&e.flags||192!=(131264&bx(e))||!(131072&$l(e).flags))}function Xp(e){return!e.valueDeclaration&&!!(1024&bx(e))}function lf(e){return!!(1048576&e.flags&&16777216&e.objectFlags&&$(e.types,lf)||2097152&e.flags&&function(e){const t=e.uniqueLiteralFilledInstantiation||(e.uniqueLiteralFilledInstantiation=SS(e,Sn));return Jp(t)!==t}(e))}function uf(e,t){if(2097152&t.flags&&33554432&Mx(t)){const n=w(G_(t),Qp);if(n)return gS(e,ws.The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituents,Za(t,void 0,536870912),Qa(n));const r=w(G_(t),Xp);if(r)return gS(e,ws.The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_private_in_some,Za(t,void 0,536870912),Qa(r))}return e}function df(e,t,n,r){var i,o;if(524288&(e=Ap(e)).flags){const s=J_(e),a=s.members.get(t);if(a&&!r&&512&(null==(i=e.symbol)?void 0:i.flags)&&(null==(o=Go(e.symbol).typeOnlyExportStarMap)?void 0:o.has(t)))return;if(a&&ha(a,r))return a;if(n)return;const c=s===Mn?Hn:s.callSignatures.length?Gn:s.constructSignatures.length?Qn:void 0;if(c){const e=H_(c,t);if(e)return e}return H_(Wn,t)}if(2097152&e.flags){const r=Up(e,t,!0);return r||(n?void 0:Up(e,t,n))}if(1048576&e.flags)return Up(e,t,n)}function _f(e,t){if(3670016&e.flags){const n=J_(e);return 0===t?n.callSignatures:n.constructSignatures}return _}function pf(e,t){const n=_f(Ap(e),t);if(0===t&&!m(n)&&1048576&e.flags){if(e.arrayFallbackSignatures)return e.arrayFallbackSignatures;let r;if(VC(e,(e=>{var t;return!!(null==(t=e.symbol)?void 0:t.parent)&&function(e){if(!e||!Yn.symbol||!Zn.symbol)return!1;return!!fa(e,Yn.symbol)||!!fa(e,Zn.symbol)}(e.symbol.parent)&&(r?r===e.symbol.escapedName:(r=e.symbol.escapedName,!0))}))){const n=jy(HC(e,(e=>Qx((hf(e.symbol.parent)?Zn:Yn).typeParameters[0],e.mapper))),qC(e,(e=>hf(e.symbol.parent))));return e.arrayFallbackSignatures=pf(Nc(n,r),t)}e.arrayFallbackSignatures=n}return n}function hf(e){return!(!e||!Zn.symbol)&&!!fa(e,Zn.symbol)}function yf(e,t){return w(e,(e=>e.keyType===t))}function vf(e,t){let n,r,i;for(const o of e)o.keyType===Ut?n=o:bf(t,o.keyType)&&(r?(i||(i=[r])).push(o):r=o);return i?vh(Dt,Mv(R(i,(e=>e.type))),Re(i,((e,t)=>e&&t.isReadonly),!0)):r||(n&&bf(t,Ut)?n:void 0)}function bf(e,t){return WS(e,t)||t===Ut&&WS(e,Bt)||t===Bt&&(e===gn||!!(128&e.flags)&&ek(e.value))}function xf(e){if(3670016&e.flags){return J_(e).indexInfos}return _}function Sf(e){return xf(Ap(e))}function Tf(e,t){return yf(Sf(e),t)}function wf(e,t){var n;return null==(n=Tf(e,t))?void 0:n.type}function kf(e,t){return Sf(e).filter((e=>bf(t,e.keyType)))}function Ef(e,t){return vf(Sf(e),t)}function Cf(e,t){return Ef(e,md(t)?Zt:Nx(wc(t)))}function Nf(e){var t;let n;for(const r of bl(e))n=ge(n,Yu(r.symbol));return(null==n?void 0:n.length)?n:tI(e)?null==(t=$f(e))?void 0:t.typeParameters:void 0}function Af(e){const t=[];return e.forEach(((e,n)=>{Ta(n)||t.push(e)})),t}function If(e,t){if(za(e))return;const n=Yo(ue,'"'+e+'"',512);return n&&t?oa(n):n}function Pf(e){return Oh(e)||ak(e)||fN(e)&&uk(e)}function Mf(e){if(Pf(e))return!0;if(!fN(e))return!1;if(e.initializer){const t=Xf(e.parent),n=e.parent.parameters.indexOf(e);return Tn.assert(n>=0),n>=yF(t,3)}const t=pm(e.parent);return!!t&&(!e.type&&!e.dotDotDotToken&&e.parent.parameters.indexOf(e)>=gO(t).length)}function Jf(e,t,n,r){return{kind:e,parameterName:t,parameterIndex:n,type:r}}function Wf(e){let t=0;if(e)for(let n=0;n<e.length;n++)wp(e[n])||(t=n+1);return t}function Zf(e,t,n,r){const i=m(t);if(!i)return[];const o=m(e);if(r||o>=n&&o<=i){const n=e?e.slice():[];for(let e=o;e<i;e++)n[e]=Et;const s=QE(r);for(let e=o;e<i;e++){let i=Tp(t[e]);r&&i&&(DS(i,Dt)||DS(i,En))&&(i=St),n[e]=i?SS(i,Gx(t,n)):s}return n.length=t.length,n}return e&&e.slice()}function Xf(e){const t=Qo(e);if(!t.resolvedSignature){const n=[];let r,i=0,o=0,s=Um(e)?sl(e):void 0,a=!1;const c=pm(e),l=Fh(e);!c&&Um(e)&&cg(e)&&!Kc(e)&&!dl(e)&&(i|=32);for(let t=l?1:0;t<e.parameters.length;t++){const l=e.parameters[t];if(Um(l)&&ID(l)){s=l;continue}let u=l.symbol;const d=ND(l)?l.typeExpression&&l.typeExpression.type:l.type;if(u&&4&u.flags&&!Mu(l.name)){u=Le(l,u.escapedName,111551,void 0,!1)}0===t&&"this"===u.escapedName?(a=!0,r=l.symbol):n.push(u),d&&201===d.kind&&(i|=2);Pf(l)||fN(l)&&l.initializer||Yd(l)||c&&n.length>c.arguments.length&&!d||(o=n.length)}if((177===e.kind||178===e.kind)&&bd(e)&&(!a||!r)){const t=177===e.kind?178:177,n=r_(sa(e),t);n&&(r=function(e){const t=DB(e);return t&&t.symbol}(n))}s&&s.typeExpression&&(r=Hk(Po(1,"this"),zx(s.typeExpression)));const u=fD(e)?Zh(e):e,d=u&&xN(u)?ju(oa(u.parent.symbol)):void 0,_=d?d.localTypeParameters:Nf(e);(Qd(e)||Um(e)&&function(e,t){if(fD(e)||!em(e))return!1;const n=Ne(e.parameters),r=n?zc(n):fl(e).filter(ND),i=y(r,(e=>e.typeExpression&&uD(e.typeExpression.type)?e.typeExpression.type:void 0)),o=Po(3,"args",32768);i?o.links.type=jy(zx(i.type)):(o.links.checkFlags|=65536,o.links.deferralParent=$t,o.links.deferralConstituents=[rr],o.links.deferralWriteConstituents=[rr]);i&&t.pop();return t.push(o),!0}(e,n))&&(i|=1),(IN(e)&&Kv(e,64)||xN(e)&&Kv(e.parent,64))&&(i|=4),t.resolvedSignature=Ad(e,_,r,n,void 0,void 0,o,i)}return t.resolvedSignature}function $f(e){if(!Um(e)||!mu(e))return;const t=ul(e);return(null==t?void 0:t.typeExpression)&&nO(zx(t.typeExpression))}function em(e){const t=Qo(e);return void 0===t.containsArgumentsReference&&(512&t.flags?t.containsArgumentsReference=!0:t.containsArgumentsReference=function e(t){if(!t)return!1;switch(t.kind){case 80:return t.escapedText===xe.escapedName&&sB(t)===xe;case 172:case 174:case 177:case 178:return 167===t.name.kind&&e(t.name);case 211:case 212:return e(t.expression);case 303:return e(t.initializer);default:return!py(t)&&!Df(t)&&!!GM(t,e)}}(e.body)),t.containsArgumentsReference}function tm(e){if(!e||!e.declarations)return _;const t=[];for(let n=0;n<e.declarations.length;n++){const r=e.declarations[n];if(pu(r)){if(n>0&&r.body){const t=e.declarations[n-1];if(r.parent===t.parent&&r.kind===t.kind&&r.pos===t.end)continue}if(Um(r)&&r.jsDoc){const e=Qh(r);if(m(e)){for(const n of e){const e=n.typeExpression;void 0!==e.type||xN(r)||rE(e,St),t.push(Xf(e))}continue}}t.push(!Xw(r)&&!Hf(r)&&$f(r)||Xf(r))}}return t}function rm(e){const t=Bs(e,e);if(t){const e=Ws(t);if(e)return $l(e)}return St}function fm(e){if(e.thisParameter)return $l(e.thisParameter)}function Sm(e){if(!e.resolvedTypePredicate){if(e.target){const r=Sm(e.target);e.resolvedTypePredicate=r?(t=r,n=e.mapper,Jf(t.kind,t.parameterName,t.parameterIndex,SS(t.type,n))):ei}else if(e.compositeSignatures)e.resolvedTypePredicate=function(e,t){let n;const r=[];for(const o of e){const e=Sm(o);if(e){if(0!==e.kind&&1!==e.kind||n&&!hv(n,e))return;n=e,r.push(e.type)}else{const e=2097152!==t?wm(o):void 0;if(e!==Vt&&e!==Kt)return}}if(!n)return;const i=Tm(r,t);return Jf(n.kind,n.parameterName,n.parameterIndex,i)}(e.compositeSignatures,e.compositeKind)||ei;else{const t=e.declaration&&Iv(e.declaration);let n;if(!t){const t=$f(e.declaration);t&&e!==t&&(n=Sm(t))}if(t||n)e.resolvedTypePredicate=t&&CN(t)?function(e,t){const n=e.parameterName,r=e.type&&zx(e.type);return 197===n.kind?Jf(e.assertsModifier?2:0,void 0,void 0,r):Jf(e.assertsModifier?3:1,n.escapedText,E(t.parameters,(e=>e.escapedName===n.escapedText)),r)}(t,e):n||ei;else if(e.declaration&&mu(e.declaration)&&(!e.resolvedReturnType||16&e.resolvedReturnType.flags)&&gF(e)>0){const{declaration:t}=e;e.resolvedTypePredicate=ei,e.resolvedTypePredicate=function(e){switch(e.kind){case 176:case 177:case 178:return}if(0!==Jg(e))return;let t;if(e.body&&241!==e.body.kind)t=e.body;else{if(Of(e.body,(e=>{if(t||!e.expression)return!0;t=e.expression}))||!t||HF(e))return}return function(e,t){t=fg(t,!0);return 16&TR(t).flags?h(e.parameters,((n,r)=>{const i=$l(n.symbol);if(!i||16&i.flags||!YC(n.name)||pA(n.symbol)||Yd(n))return;const o=function(e,t,n,r){const i=t.flowNode||253===t.parent.kind&&t.parent.flowNode||Wj(2,void 0,void 0),o=Wj(32,t,i),s=aA(n.name,r,r,e,o);if(s===r)return;const a=Wj(64,t,i),c=aA(n.name,r,s,e,a);return 131072&c.flags?s:void 0}(e,t,n,i);return o?Jf(1,wc(n.name.escapedText),r,o):void 0})):void 0}(e,t)}(t)||ei}else e.resolvedTypePredicate=ei}Tn.assert(!!e.resolvedTypePredicate)}var t,n;return e.resolvedTypePredicate===ei?void 0:e.resolvedTypePredicate}function Tm(e,t,n){return 2097152!==t?fv(e,n):Mv(e)}function wm(e){if(!e.resolvedReturnType){if(!fc(e,3))return Et;let t=e.target?SS(wm(e.target),e.mapper):e.compositeSignatures?SS(Tm(R(e.compositeSignatures,wm),e.compositeKind,2),e.mapper):Cm(e.declaration)||(F_(e.declaration.body)?St:qF(e.declaration));if(8&e.flags?t=zk(t):16&e.flags&&(t=Lk(t)),!yc()){if(e.declaration){const t=Iv(e.declaration);if(t)wo(t,ws.Return_type_annotation_circularly_references_itself);else if(Z){const t=e.declaration,n=Oc(t);n?wo(n,ws._0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions,Lp(n)):wo(t,ws.Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions)}}t=St}e.resolvedReturnType??(e.resolvedReturnType=t)}return e.resolvedReturnType}function Cm(e){if(176===e.kind)return ju(oa(e.parent.symbol));const t=Iv(e);if(fD(e)){const n=$h(e);if(n&&xN(n.parent)&&!t)return ju(oa(n.parent.parent.symbol))}if(Fh(e))return zx(e.parameters[0].type);if(t)return zx(t);if(177===e.kind&&bd(e)){const t=Um(e)&&Yc(e);if(t)return t;const n=jl(r_(sa(e),178));if(n)return n}return function(e){const t=$f(e);return t&&wm(t)}(e)}function Lm(e){return e.compositeSignatures&&$(e.compositeSignatures,Lm)||!e.resolvedReturnType&&hc(e,3)>=0}function zm(e){if(tU(e)){const t=$l(e.parameters[e.parameters.length-1]),n=$w(t)?lk(t):t;return n&&wf(n,Bt)}}function qm(e,t,n,r){const i=Wm(e,Zf(t,e.typeParameters,Wf(e.typeParameters),n));if(r){const e=rO(wm(i));if(e){const t=Dd(e);t.typeParameters=r;const n=Dd(i);return n.resolvedReturnType=fh(t),n}}return i}function Wm(e,t){const n=e.instantiations||(e.instantiations=new Map),r=zh(t);let i=n.get(r);return i||n.set(r,i=Qm(e,t)),i}function Qm(e,t){return sS(e,function(e,t){return Gx(j(e.typeParameters,(e=>e.mapper?SS(e,e.mapper):e)),t)}(e,t),!0)}function Ym(e){return e.typeParameters?e.erasedSignatureCache||(e.erasedSignatureCache=function(e){return sS(e,eS(e.typeParameters),!0)}(e)):e}function Xm(e){return e.typeParameters?e.canonicalSignatureCache||(e.canonicalSignatureCache=function(e){return qm(e,R(e.typeParameters,(e=>e.target&&!Z_(e.target)?e.target:e)),Um(e.declaration))}(e)):e}function ah(e){return e.typeParameters?e.implementationSignatureCache||(e.implementationSignatureCache=function(e){return e.typeParameters?sS(e,Gx([],[])):e}(e)):e}function ph(e){const t=e.typeParameters;if(t){if(e.baseSignatureCache)return e.baseSignatureCache;const n=eS(t),r=Gx(t,R(t,(e=>Z_(e)||Dt)));let i=R(t,(e=>SS(e,r)||Dt));for(let e=0;e<t.length-1;e++)i=Jx(i,r);return i=Jx(i,n),e.baseSignatureCache=sS(e,Gx(t,i),!0)}return e}function fh(e,t){var n;if(!e.isolatedSignatureType){const r=null==(n=e.declaration)?void 0:n.kind,i=void 0===r||176===r||180===r||185===r,o=xa(134217744,Po(16,"__function"));e.declaration&&!fy(e.declaration)&&(o.symbol.declarations=[e.declaration],o.symbol.valueDeclaration=e.declaration),t||(t=e.declaration&&cu(e.declaration,!0)),o.outerTypeParameters=t,o.members=x,o.properties=_,o.callSignatures=i?_:[e],o.constructSignatures=i?[e]:_,o.indexInfos=_,e.isolatedSignatureType=o}return e.isolatedSignatureType}function mh(e){return e.members?yh(e.members):void 0}function yh(e){return e.get("__index")}function vh(e,t,n,r){return{keyType:e,type:t,isReadonly:n,declaration:r}}function wh(e){const t=mh(e);return t?Eh(t):_}function Eh(e){if(e.declarations){const t=[];for(const n of e.declarations)if(1===n.parameters.length){const e=n.parameters[0];e.type&&BC(zx(e.type),(e=>{Nh(e)&&!yf(t,e)&&t.push(vh(e,n.type?zx(n.type):St,Vv(n,8),n))}))}return t}return _}function Nh(e){return!!(4108&e.flags)||zb(e)||!!(2097152&e.flags)&&!Bb(e)&&$(e.types,Nh)}function Ah(e){return J(M(e.symbol&&e.symbol.declarations,pN),xl)[0]}function Ph(e,t){var n;let r;if(null==(n=e.symbol)?void 0:n.declarations)for(const i of e.symbol.declarations)if(195===i.parent.kind){const[n=i.parent,o]=_g(i.parent.parent);if(183!==o.kind||t){if(169===o.kind&&o.dotDotDotToken||191===o.kind||202===o.kind&&o.dotDotDotToken)r=_e(r,jy(Dt));else if(204===o.kind)r=_e(r,Ut);else if(168===o.kind&&200===o.parent.kind)r=_e(r,un);else if(200===o.kind&&o.type&&fg(o.type)===i.parent&&194===o.parent.kind&&o.parent.extendsType===o&&200===o.parent.checkType.kind&&o.parent.checkType.type){const e=o.parent.checkType;r=_e(r,SS(zx(e.type),Yx(Yu(sa(e.typeParameter)),e.typeParameter.constraint?zx(e.typeParameter.constraint):un)))}}else{const t=o,i=iL(t);if(i){const o=t.typeArguments.indexOf(n);if(o<i.length){const n=Z_(i[o]);if(n){const o=SS(n,Xx(i,i.map(((e,n)=>()=>tL(t,i,n)))));o!==e&&(r=_e(r,o))}}}}}return r&&Mv(r)}function Mh(e){if(!e.constraint)if(e.target){const t=Z_(e.target);e.constraint=t?SS(t,e.mapper):On}else{const t=Ah(e);if(t){let n=zx(t);1&n.flags&&!Mc(n)&&(n=200===t.parent.parent.kind?un:Dt),e.constraint=n}else e.constraint=Ph(e)||On}return e.constraint===On?void 0:e.constraint}function jh(e){const t=r_(e.symbol,168),n=PD(t.parent)?Gh(t.parent):t.parent;return n&&aa(n)}function zh(e){let t="";if(e){const n=e.length;let r=0;for(;r<n;){const i=e[r].id;let o=1;for(;r+o<n&&e[r+o].id===i+o;)o++;t.length&&(t+=","),t+=i,o>1&&(t+=":"+o),r+=o}}return t}function Bh(e,t){return e?`@${Qz(e)}`+(t?`:${zh(t)}`:""):""}function Kh(e,t){let n=0;for(const r of e)void 0!==t&&r.flags&t||(n|=Mx(r));return 458752&n}function Jh(e,t){return $(t)&&e===Pn?Dt:Wh(e,t)}function Wh(e,t){const n=zh(t);let r=e.instantiations.get(n);return r||(r=xa(4,e.symbol),e.instantiations.set(n,r),r.objectFlags|=t?Kh(t):0,r.target=e,r.resolvedTypeArguments=t),r}function tg(e){const t=ya(e.flags,e.symbol);return t.objectFlags=e.objectFlags,t.target=e.target,t.resolvedTypeArguments=e.resolvedTypeArguments,t}function ng(e,t,n,r,i){if(!r){const e=_x(r=dx(t));i=n?Jx(e,n):e}const o=xa(4,e.symbol);return o.target=e,o.node=t,o.mapper=n,o.aliasSymbol=r,o.aliasTypeArguments=i,o}function rg(e){var t,n;if(!e.resolvedTypeArguments){if(!fc(e,5))return(null==(t=e.target.localTypeParameters)?void 0:t.map((()=>Et)))||_;const i=e.node,o=i?183===i.kind?te(e.target.outerTypeParameters,nL(i,e.target.localTypeParameters)):188===i.kind?[zx(i.elementType)]:R(i.elements,zx):_;yc()?e.resolvedTypeArguments??(e.resolvedTypeArguments=e.mapper?Jx(o,e.mapper):o):(e.resolvedTypeArguments??(e.resolvedTypeArguments=(null==(n=e.target.localTypeParameters)?void 0:n.map((()=>Et)))||_),wo(e.node||r,e.target.symbol?ws.Type_arguments_for_0_circularly_reference_themselves:ws.Tuple_type_arguments_circularly_reference_themselves,e.target.symbol&&Qa(e.target.symbol)))}return e.resolvedTypeArguments}function ag(e){return m(e.target.typeParameters)}function lg(e,t){const n=Zu(oa(t)),r=n.localTypeParameters;if(r){const t=m(e.typeArguments),i=Wf(r),o=Um(e);if(!(!Z&&o)&&(t<i||t>r.length)){const t=o&&wA(e)&&!mD(e.parent);if(wo(e,i===r.length?t?ws.Expected_0_type_arguments_provide_these_with_an_extends_tag:ws.Generic_type_0_requires_1_type_argument_s:t?ws.Expected_0_1_type_arguments_provide_these_with_an_extends_tag:ws.Generic_type_0_requires_between_1_and_2_type_arguments,Za(n,void 0,2),i,r.length),!o)return Et}if(183===e.kind&&Vy(e,m(e.typeArguments)!==r.length))return ng(n,e,void 0);return Wh(n,te(n.outerTypeParameters,Zf(iy(e),r,i,o)))}return Wg(e,t)?n:Et}function yg(e,t,n,r){const i=Zu(e);if(i===It){const n=Jz.get(e.escapedName);if(void 0!==n&&t&&1===t.length)return 4===n?Fg(t[0]):_b(e,t[0])}const o=Go(e),s=o.typeParameters,a=zh(t)+Bh(n,r);let c=o.instantiations.get(a);return c||o.instantiations.set(a,c=TS(i,Gx(s,Zf(t,s,Wf(s),Um(e.valueDeclaration))),n,r)),c}function bg(e){var t;const n=null==(t=e.declarations)?void 0:t.find(Lh);return!(!n||!nm(n))}function xg(e){return e.parent?`${xg(e.parent)}.${e.escapedName}`:e.escapedName}function Ig(e){const t=(166===e.kind?e.right:211===e.kind?e.name:e).escapedText;if(t){const n=166===e.kind?Ig(e.left):211===e.kind?Ig(e.expression):void 0,r=n?`${xg(n)}.${t}`:t;let i=vt.get(r);return i||(vt.set(r,i=Po(524288,t,1048576)),i.parent=n,i.links.declaredType=Ct),i}return gt}function Pg(e,t,n){const r=function(e){switch(e.kind){case 183:return e.typeName;case 233:const t=e.expression;if(wb(t))return t}}(e);if(!r)return gt;const i=zs(r,t,n);return i&&i!==gt?i:n?gt:Ig(r)}function Og(e,t){if(t===gt)return Et;if(96&(t=function(e){const t=e.valueDeclaration;if(!t||!Um(t)||524288&e.flags||rh(t,!1))return;const n=$A(t)?th(t):nh(t);if(n){const t=aa(n);if(t)return UO(t,e)}}(t)||t).flags)return lg(e,t);if(524288&t.flags)return function(e,t){if(1048576&bx(t)){const n=iy(e),r=Bh(t,n);let i=bt.get(r);return i||(i=ba(1,"error",void 0,`alias ${r}`),i.aliasSymbol=t,i.aliasTypeArguments=n,bt.set(r,i)),i}const n=Zu(t),r=Go(t).typeParameters;if(r){const n=m(e.typeArguments),i=Wf(r);if(n<i||n>r.length)return wo(e,i===r.length?ws.Generic_type_0_requires_1_type_argument_s:ws.Generic_type_0_requires_between_1_and_2_type_arguments,Qa(t),i,r.length),Et;const o=dx(e);let s,a=!o||!bg(t)&&bg(o)?void 0:o;if(a)s=_x(a);else if(Kd(e)){const t=Pg(e,2097152,!0);if(t&&t!==gt){const n=Ps(t);n&&524288&n.flags&&(a=n,s=iy(e)||(r?[]:void 0))}}return yg(t,iy(e),a,s)}return Wg(e,t)?n:Et}(e,t);const n=Xu(t);if(n)return Wg(e,t)?Ex(n):Et;if(111551&t.flags&&Kg(e)){const n=function(e,t){const n=Qo(e);if(!n.resolvedJSDocType){const r=$l(t);let i=r;if(t.valueDeclaration){const n=205===e.kind&&e.qualifier;r.symbol&&r.symbol!==t&&n&&(i=Og(e,r.symbol))}n.resolvedJSDocType=i}return n.resolvedJSDocType}(e,t);return n||(Pg(e,788968),$l(t))}return Et}function Fg(e){return Rg(e)?zg(e,Dt):e}function Rg(e){return!!(3145728&e.flags&&$(e.types,Rg)||33554432&e.flags&&!Lg(e)&&Rg(e.baseType)||524288&e.flags&&!bT(e)||432275456&e.flags&&!zb(e))}function Lg(e){return!!(33554432&e.flags&&2&e.constraint.flags)}function jg(e,t){return 3&t.flags||t===e||1&e.flags?e:zg(e,t)}function zg(e,t){const n=`${ov(e)}>${ov(t)}`,r=st.get(n);if(r)return r;const i=ga(33554432);return i.baseType=e,i.constraint=t,st.set(n,i),i}function Bg(e){return Lg(e)?e.baseType:Mv([e.constraint,e.baseType])}function qg(e){return 189===e.kind&&1===e.elements.length}function Vg(e,t,n){return qg(t)&&qg(n)?Vg(e,t.elements[0],n.elements[0]):ex(zx(t))===ex(e)?zx(n):void 0}function Kg(e){return!!(16777216&e.flags)&&(183===e.kind||205===e.kind)}function Wg(e,t){return!e.typeArguments||(wo(e,ws.Type_0_is_not_generic,t?Qa(t):e.typeName?Lp(e.typeName):Fz),!1)}function Gg(e){if(YC(e.typeName)){const t=e.typeArguments;switch(e.typeName.escapedText){case"String":return Wg(e),Ut;case"Number":return Wg(e),Bt;case"Boolean":return Wg(e),Yt;case"Void":return Wg(e),Xt;case"Undefined":return Wg(e),Mt;case"Null":return Wg(e),jt;case"Function":case"function":return Wg(e),Hn;case"array":return t&&t.length||Z?void 0:rr;case"promise":return t&&t.length||Z?void 0:zF(St);case"Object":if(t&&2===t.length){if(Km(e)){const e=zx(t[0]),n=zx(t[1]),r=e===Ut||e===Bt?[vh(e,n,!1)]:_;return Ca(void 0,x,_,_,r)}return St}return Wg(e),Z?void 0:St}}}function ty(e){const t=Qo(e);if(!t.resolvedType){if(Pl(e)&&nd(e.parent))return t.resolvedSymbol=gt,t.resolvedType=TR(e.parent.expression);let n,r;const i=788968;Kg(e)&&(r=Gg(e),r||(n=Pg(e,i,!0),n===gt?n=Pg(e,111551|i):Pg(e,i),r=Og(e,n))),r||(n=Pg(e,i),r=Og(e,n)),t.resolvedSymbol=n,t.resolvedType=r}return t.resolvedType}function iy(e){return R(e.typeArguments,zx)}function oy(e){const t=Qo(e);if(!t.resolvedType){const n=tF(e);t.resolvedType=Ex(eE(n))}return t.resolvedType}function sy(e,t){function n(e){const t=e.declarations;if(t)for(const n of t)switch(n.kind){case 263:case 264:case 266:return n}}if(!e)return t?Pn:En;const r=Zu(e);return 524288&r.flags?m(r.typeParameters)!==t?(wo(n(e),ws.Global_type_0_must_have_1_type_parameter_s,Cc(e),t),t?Pn:En):r:(wo(n(e),ws.Global_type_0_must_be_a_class_or_interface_type,Cc(e)),t?Pn:En)}function ay(e,t){return hy(e,111551,t?ws.Cannot_find_global_value_0:void 0)}function ly(e,t){return hy(e,788968,t?ws.Cannot_find_global_type_0:void 0)}function my(e,t,n){const r=hy(e,788968,n?ws.Cannot_find_global_type_0:void 0);if(!r||(Zu(r),m(Go(r).typeParameters)===t))return r;wo(r.declarations&&w(r.declarations,iI),ws.Global_type_0_must_have_1_type_parameter_s,Cc(r),t)}function hy(e,t,n){return Le(void 0,e,t,n,!1,!1)}function gy(e,t,n){const r=ly(e,n);return r||n?sy(r,t):void 0}function yy(){return Ar||(Ar=gy("ImportMeta",0,!0)||En)}function vy(){if(!Ir){const e=Po(0,"ImportMetaExpression"),t=yy(),n=Po(4,"meta",8);n.parent=e,n.links.type=t;const r=o_([n]);e.members=r,Ir=Ca(e,r,_,_,_)}return Ir}function by(e){return Dr||(Dr=gy("ImportCallOptions",0,e))||En}function xy(e){return Pr||(Pr=gy("ImportAttributes",0,e))||En}function Sy(e){return cr||(cr=ay("Symbol",e))}function Ty(){return ur||(ur=gy("Symbol",0,!1))||En}function Ey(e){return _r||(_r=gy("Promise",1,e))||Pn}function Cy(e){return pr||(pr=gy("PromiseLike",1,e))||Pn}function Ny(e){return fr||(fr=ay("Promise",e))}function Ay(e){return wr||(wr=gy("AsyncIterable",1,e))||Pn}function Iy(e){return yr||(yr=gy("Iterable",1,e))||Pn}function Dy(e){return Mr||(Mr=gy("Disposable",0,e))||En}function Py(e,t=0){const n=hy(e,788968,void 0);return n&&sy(n,t)}function My(e){return Lr||(Lr=my("Awaited",1,e)||(e?gt:void 0)),Lr===gt?void 0:Lr}function Oy(e,t){return e!==Pn?Wh(e,t):En}function Fy(e){return Oy(dr||(dr=gy("TypedPropertyDescriptor",1,!0)||Pn),[e])}function Ly(e){return Oy(Iy(!0),[e])}function jy(e,t){return Oy(t?Zn:Yn,[e])}function zy(e){switch(e.kind){case 190:return 2;case 191:return Uy(e);case 202:return e.questionToken?2:e.dotDotDotToken?Uy(e):1;default:return 1}}function Uy(e){return jx(e.type)?4:8}function By(e){const t=function(e){return KN(e)&&148===e.operator}(e.parent);if(jx(e))return t?Zn:Yn;return Zy(R(e.elements,zy),t,R(e.elements,qy))}function qy(e){return FN(e)||fN(e)?e:void 0}function Vy(e,t){return!!dx(e)||Wy(e)&&(188===e.kind?Hy(e.elementType):189===e.kind?$(e.elements,Hy):t||$(e.typeArguments,Hy))}function Wy(e){const t=e.parent;switch(t.kind){case 196:case 202:case 183:case 192:case 193:case 199:case 194:case 198:case 188:case 189:return Wy(t);case 265:return!0}return!1}function Hy(e){switch(e.kind){case 183:return Kg(e)||!!(524288&Pg(e,788968).flags);case 186:return!0;case 198:return 158!==e.operator&&Hy(e.type);case 196:case 190:case 202:case 316:case 314:case 315:case 309:return Hy(e.type);case 191:return 188!==e.type.kind||Hy(e.type.elementType);case 192:case 193:return $(e.types,Hy);case 199:return Hy(e.objectType)||Hy(e.indexType);case 194:return Hy(e.checkType)||Hy(e.extendsType)||Hy(e.trueType)||Hy(e.falseType)}return!1}function Gy(e,t,n=!1,r=[]){const i=Zy(t||R(e,(e=>1)),n,r);return i===Pn?En:e.length?Xy(i,e):i}function Zy(e,t,n){if(1===e.length&&4&e[0])return t?Zn:Yn;const r=R(e,(e=>1&e?"#":2&e?"?":4&e?".":"*")).join()+(t?"R":"")+($(n,(e=>!!e))?","+R(n,(e=>e?Gz(e):"_")).join(","):"");let i=Je.get(r);return i||Je.set(r,i=function(e,t,n){const r=e.length,i=P(e,(e=>!!(9&e)));let o;const s=[];let a=0;if(r){o=new Array(r);for(let i=0;i<r;i++){const r=o[i]=Sa(),c=e[i];if(a|=c,!(12&a)){const e=Po(4|(2&c?16777216:0),""+i,t?8:0);e.links.tupleLabelDeclaration=null==n?void 0:n[i],e.links.type=r,s.push(e)}}}const c=s.length,l=Po(4,"length",t?8:0);if(12&a)l.links.type=Bt;else{const e=[];for(let t=i;t<=r;t++)e.push(Ax(t));l.links.type=fv(e)}s.push(l);const u=xa(12);return u.typeParameters=o,u.outerTypeParameters=void 0,u.localTypeParameters=o,u.instantiations=new Map,u.instantiations.set(zh(u.typeParameters),u),u.target=u,u.resolvedTypeArguments=u.typeParameters,u.thisType=Sa(),u.thisType.isThisType=!0,u.thisType.constraint=u,u.declaredProperties=s,u.declaredCallSignatures=_,u.declaredConstructSignatures=_,u.declaredIndexInfos=_,u.elementFlags=e,u.minLength=i,u.fixedLength=c,u.hasRestElement=!!(12&a),u.combinedFlags=a,u.readonly=t,u.labeledElementDeclarations=n,u}(e,t,n)),i}function Xy(e,t){return 8&e.objectFlags?$y(e,t):Wh(e,t)}function $y(e,t){var n,i,o,s;if(!(14&e.combinedFlags))return Wh(e,t);if(8&e.combinedFlags){const n=E(t,((t,n)=>!!(8&e.elementFlags[n]&&1179648&t.flags)));if(n>=0)return Fv(R(t,((t,n)=>8&e.elementFlags[n]?t:Dt)))?HC(t[n],(r=>$y(e,Me(t,n,r)))):Et}const a=[],c=[],l=[];let u=-1,d=-1,_=-1;for(let m=0;m<t.length;m++){const c=t[m],l=e.elementFlags[m];if(8&l)if(1&c.flags)f(c,4,null==(n=e.labeledElementDeclarations)?void 0:n[m]);else if(58982400&c.flags||V_(c))f(c,8,null==(i=e.labeledElementDeclarations)?void 0:i[m]);else if($w(c)){const e=iv(c);if(e.length+a.length>=1e4)return wo(r,Df(r)?ws.Type_produces_a_tuple_type_that_is_too_large_to_represent:ws.Expression_produces_a_tuple_type_that_is_too_large_to_represent),Et;h(e,((e,t)=>{var n;return f(e,c.target.elementFlags[t],null==(n=c.target.labeledElementDeclarations)?void 0:n[t])}))}else f(dw(c)&&wf(c,Bt)||Et,4,null==(o=e.labeledElementDeclarations)?void 0:o[m]);else f(c,l,null==(s=e.labeledElementDeclarations)?void 0:s[m])}for(let r=0;r<u;r++)2&c[r]&&(c[r]=1);d>=0&&d<_&&(a[d]=fv(j(a.slice(d,_+1),((e,t)=>8&c[d+t]?Qb(e,Bt):e))),a.splice(d+1,_-d),c.splice(d+1,_-d),l.splice(d+1,_-d));const p=Zy(c,e.readonly,l);return p===Pn?En:c.length?Wh(p,a):p;function f(e,t,n){1&t&&(u=c.length),4&t&&d<0&&(d=c.length),6&t&&(_=c.length),a.push(2&t?Xc(e,!0):e),c.push(t),l.push(n)}}function ev(e,t,n=0){const r=e.target,i=ag(e)-n;return t>r.fixedLength?function(e){const t=lk(e);return t&&jy(t)}(e)||Gy(_):Gy(rg(e).slice(t,i),r.elementFlags.slice(t,i),!1,r.labeledElementDeclarations&&r.labeledElementDeclarations.slice(t,i))}function tv(e){return fv(_e(Ve(e.target.fixedLength,(e=>Nx(""+e))),sb(e.target.readonly?Zn:Yn)))}function nv(e,t){return e.elementFlags.length-C(e.elementFlags,(e=>!(e&t)))-1}function rv(e){return e.fixedLength+nv(e,3)}function iv(e){const t=rg(e),n=ag(e);return t.length===n?t:t.slice(0,n)}function ov(e){return e.id}function sv(e,t){return Oe(e,t,ov,Pt)>=0}function av(e,t){const n=Oe(e,t,ov,Pt);return n<0&&(e.splice(~n,0,t),!0)}function cv(e,t,n){const r=n.flags;if(!(131072&r))if(t|=473694207&r,465829888&r&&(t|=33554432),2097152&r&&67108864&Mx(n)&&(t|=536870912),n===wt&&(t|=8388608),Mc(n)&&(t|=1073741824),!K&&98304&r)65536&Mx(n)||(t|=4194304);else{const t=e.length,r=t&&n.id>e[t-1].id?~t:Oe(e,n,ov,Pt);r<0&&e.splice(~r,0,n)}return t}function lv(e,t,n){let r;for(const i of n)i!==r&&(t=1048576&i.flags?lv(e,t|(dv(i)?1048576:0),i.types):cv(e,t,i),r=i);return t}function uv(e,t){return 134217728&t.flags?RE(e,t):ME(e,t)}function dv(e){return!!(1048576&e.flags&&(e.aliasSymbol||e.origin))}function _v(e,t){for(const n of t)if(1048576&n.flags){const t=n.origin;n.aliasSymbol||t&&!(1048576&t.flags)?he(e,n):t&&1048576&t.flags&&_v(e,t.types)}}function pv(e,t){const n=va(e);return n.types=t,n}function fv(e,t=1,n,r,i){if(0===e.length)return $t;if(1===e.length)return e[0];if(2===e.length&&!i&&(1048576&e[0].flags||1048576&e[1].flags)){const i=0===t?"N":2===t?"S":"L",o=e[0].id<e[1].id?0:1,s=e[o].id+i+e[1-o].id+Bh(n,r);let a=He.get(s);return a||(a=mv(e,t,n,r,void 0),He.set(s,a)),a}return mv(e,t,n,r,i)}function mv(e,t,n,i,o){let s=[];const a=lv(s,0,e);if(0!==t){if(3&a)return 1&a?8388608&a?wt:1073741824&a?Et:St:Dt;if(32768&a&&s.length>=2&&s[0]===Mt&&s[1]===Ft&&en(s,1),(402664352&a||16384&a&&32768&a)&&function(e,t,n){let r=e.length;for(;r>0;){r--;const i=e[r],o=i.flags;(402653312&o&&4&t||256&o&&8&t||2048&o&&64&t||8192&o&&4096&t||n&&32768&o&&16384&t||Cx(i)&&sv(e,i.regularType))&&en(e,r)}}(s,a,!!(2&t)),128&a&&402653184&a&&function(e){const t=M(e,zb);if(t.length){let n=e.length;for(;n>0;){n--;const r=e[n];128&r.flags&&$(t,(e=>uv(r,e)))&&en(e,n)}}}(s),536870912&a&&function(e){const t=[];for(const n of e)if(2097152&n.flags&&67108864&Mx(n)){const e=8650752&n.types[0].flags?0:1;he(t,n.types[e])}for(const n of t){const t=[];for(const r of e)if(2097152&r.flags&&67108864&Mx(r)){const e=8650752&r.types[0].flags?0:1;r.types[e]===n&&av(t,r.types[1-e])}if(VC(cp(n),(e=>sv(t,e)))){let r=e.length;for(;r>0;){r--;const i=e[r];if(2097152&i.flags&&67108864&Mx(i)){const o=8650752&i.types[0].flags?0:1;i.types[o]===n&&sv(t,i.types[1-o])&&en(e,r)}}av(e,n)}}}(s),2===t&&(s=function(e,t){var n;if(e.length<2)return e;const i=zh(e),o=ct.get(i);if(o)return o;const s=t&&$(e,(e=>!!(524288&e.flags)&&!V_(e)&&yT(J_(e)))),a=e.length;let c=a,l=0;for(;c>0;){c--;const t=e[c];if(s||469499904&t.flags){if(262144&t.flags&&1048576&lp(t).flags){ET(t,fv(R(e,(e=>e===t?$t:e))),lo)&&en(e,c);continue}const i=61603840&t.flags?w(Q_(t),(e=>Rw($l(e)))):void 0,o=i&&Ex($l(i));for(const s of e)if(t!==s){if(1e5===l&&l/(a-c)*a>1e6)return null==(n=ar)||n.instant(ar.Phase.CheckTypes,"removeSubtypes_DepthLimit",{typeIds:e.map((e=>e.id))}),void wo(r,ws.Expression_produces_a_union_type_that_is_too_complex_to_represent);if(l++,i&&61603840&s.flags){const e=Nc(s,i.escapedName);if(e&&Rw(e)&&Ex(e)!==o)continue}if(ET(t,s,lo)&&(!(1&Mx(ru(t)))||!(1&Mx(ru(s)))||HS(t,s))){en(e,c);break}}}}return ct.set(i,e),e}(s,!!(524288&a)),!s))return Et;if(0===s.length)return 65536&a?4194304&a?jt:zt:32768&a?4194304&a?Mt:Ot:$t}if(!o&&1048576&a){const t=[];_v(t,e);const r=[];for(const e of s)$(t,(t=>sv(t.types,e)))||r.push(e);if(!n&&1===t.length&&0===r.length)return t[0];if(Re(t,((e,t)=>e+t.types.length),0)+r.length===s.length){for(const e of t)av(r,e);o=pv(1048576,r)}}return gv(s,(36323331&a?0:32768)|(2097152&a?16777216:0),n,i,o)}function hv(e,t){return e.kind===t.kind&&e.parameterIndex===t.parameterIndex}function gv(e,t,n,r,i){if(0===e.length)return $t;if(1===e.length)return e[0];const o=(i?1048576&i.flags?`|${zh(i.types)}`:2097152&i.flags?`&${zh(i.types)}`:`#${i.type.id}|${zh(e)}`:zh(e))+Bh(n,r);let s=We.get(o);return s||(s=ga(1048576),s.objectFlags=t|Kh(e,98304),s.types=e,s.origin=i,s.aliasSymbol=n,s.aliasTypeArguments=r,2===e.length&&512&e[0].flags&&512&e[1].flags&&(s.flags|=16,s.intrinsicName="boolean"),We.set(o,s)),s}function bv(e,t,n){const r=n.flags;return 2097152&r?Ev(e,t,n.types):(bT(n)?16777216&t||(t|=16777216,e.set(n.id.toString(),n)):(3&r?(n===wt&&(t|=8388608),Mc(n)&&(t|=1073741824)):!K&&98304&r||(n===Ft&&(t|=262144,n=Mt),e.has(n.id.toString())||(109472&n.flags&&109472&t&&(t|=67108864),e.set(n.id.toString(),n))),t|=473694207&r),t)}function Ev(e,t,n){for(const r of n)t=bv(e,t,Ex(r));return t}function Cv(e,t){for(const n of e)if(!sv(n.types,t)){const e=128&t.flags?Ut:288&t.flags?Bt:2048&t.flags?qt:8192&t.flags?Zt:void 0;if(!e||!sv(n.types,e))return!1}return!0}function Av(e,t){for(let n=0;n<e.length;n++)e[n]=KC(e[n],(e=>!(e.flags&t)))}function Mv(e,t=0,n,r){const i=new Map,o=Ev(i,0,e),s=Ke(i.values());let a=0;if(131072&o)return A(s,tn)?tn:$t;if(K&&98304&o&&84410368&o||67108864&o&&402783228&o||402653316&o&&67238776&o||296&o&&469891796&o||2112&o&&469889980&o||12288&o&&469879804&o||49152&o&&469842940&o)return $t;if(402653184&o&&128&o&&function(e){let t=e.length;const n=M(e,(e=>!!(128&e.flags)));for(;t>0;){t--;const r=e[t];if(402653184&r.flags)for(const i of n){if(BS(i,r)){en(e,t);break}if(zb(r))return!0}}return!1}(s))return $t;if(1&o)return 8388608&o?wt:1073741824&o?Et:St;if(!K&&98304&o)return 16777216&o?$t:32768&o?Mt:jt;if((4&o&&402653312&o||8&o&&256&o||64&o&&2048&o||4096&o&&8192&o||16384&o&&32768&o||16777216&o&&470302716&o)&&(1&t||function(e,t){let n=e.length;for(;n>0;){n--;const r=e[n];(4&r.flags&&402653312&t||8&r.flags&&256&t||64&r.flags&&2048&t||4096&r.flags&&8192&t||16384&r.flags&&32768&t||bT(r)&&470302716&t)&&en(e,n)}}(s,o)),262144&o&&(s[s.indexOf(Mt)]=Ft),0===s.length)return Dt;if(1===s.length)return s[0];if(2===s.length&&!(2&t)){const e=8650752&s[0].flags?0:1,t=s[e],n=s[1-e];if(8650752&t.flags&&(469893116&n.flags&&!Ub(n)||16777216&o)){const e=cp(t);if(e&&VC(e,(e=>!!(469893116&e.flags)||bT(e)))){if(JS(e,n))return t;if(!(1048576&e.flags&&qC(e,(e=>JS(e,n)))||JS(n,e)))return $t;a=67108864}}}const c=zh(s)+(2&t?"*":Bh(n,r));let l=Ge.get(c);if(!l){if(1048576&o)if(function(e){let t;const n=E(e,(e=>!!(32768&Mx(e))));if(n<0)return!1;let r=n+1;for(;r<e.length;){const i=e[r];32768&Mx(i)?((t||(t=[e[n]])).push(i),en(e,r)):r++}if(!t)return!1;const i=[],o=[];for(const s of t)for(const e of s.types)av(i,e)&&Cv(t,e)&&av(o,e);return e[n]=gv(o,32768),!0}(s))l=Mv(s,t,n,r);else if(T(s,(e=>!!(1048576&e.flags&&32768&e.types[0].flags)))){const e=$(s,Kk)?Ft:Mt;Av(s,32768),l=fv([Mv(s,t),e],1,n,r)}else if(T(s,(e=>!!(1048576&e.flags&&(65536&e.types[0].flags||65536&e.types[1].flags)))))Av(s,65536),l=fv([Mv(s,t),jt],1,n,r);else if(s.length>=4){const e=Math.floor(s.length/2);l=Mv([Mv(s.slice(0,e),t),Mv(s.slice(e),t)],t,n,r)}else{if(!Fv(s))return Et;const e=function(e,t){const n=Ov(e),r=[];for(let i=0;i<n;i++){const n=e.slice();let o=i;for(let t=e.length-1;t>=0;t--)if(1048576&e[t].flags){const r=e[t].types,i=r.length;n[t]=r[o%i],o=Math.floor(o/i)}const s=Mv(n,t);131072&s.flags||r.push(s)}return r}(s,t);l=fv(e,1,n,r,$(e,(e=>!!(2097152&e.flags)))&&Lv(e)>Lv(s)?pv(2097152,s):void 0)}else l=function(e,t,n,r){const i=ga(2097152);return i.objectFlags=t|Kh(e,98304),i.types=e,i.aliasSymbol=n,i.aliasTypeArguments=r,i}(s,a,n,r);Ge.set(c,l)}return l}function Ov(e){return Re(e,((e,t)=>1048576&t.flags?e*t.types.length:131072&t.flags?0:e),1)}function Fv(e){var t;const n=Ov(e);return!(n>=1e5)||(null==(t=ar)||t.instant(ar.Phase.CheckTypes,"checkCrossProductUnion_DepthLimit",{typeIds:e.map((e=>e.id)),size:n}),wo(r,ws.Expression_produces_a_union_type_that_is_too_complex_to_represent),!1)}function Rv(e){return 3145728&e.flags&&!e.aliasSymbol?1048576&e.flags&&e.origin?Rv(e.origin):Lv(e.types):1}function Lv(e){return Re(e,((e,t)=>e+Rv(t)),0)}function jv(e,t){const n=ga(4194304);return n.type=e,n.indexFlags=t,n}function zv(e,t){return 1&t?e.resolvedStringIndexType||(e.resolvedStringIndexType=jv(e,1)):e.resolvedIndexType||(e.resolvedIndexType=jv(e,0))}function Uv(e,t){const n=D_(e),r=P_(e),i=M_(e.target||e);if(!(i||2&t))return r;const o=[];if(Vb(r)){if(j_(e))return zv(e,t);BC(r,a)}else if(j_(e)){w_(Np(z_(e)),8576,!!(1&t),a)}else BC(S_(r),a);const s=2&t?KC(fv(o),(e=>!(5&e.flags))):fv(o);return 1048576&s.flags&&1048576&r.flags&&zh(s.types)===zh(r.types)?r:s;function a(t){const r=i?SS(i,iS(e.mapper,n,t)):t;o.push(r===Ut?sn:r)}}function eb(e){if(ZC(e))return $t;if(DC(e))return Ex(qR(e));if(_N(e))return Ex(lP(e));const t=Zg(e);return void 0!==t?Nx(wc(t)):td(e)?Ex(qR(e)):$t}function tb(e,t,n){if(n||!(6&xx(e))){let n=Go(Ed(e)).nameType;if(!n){const t=Oc(e.valueDeclaration);n="default"===e.escapedName?Nx("default"):t&&eb(t)||(ry(e)?void 0:Nx(Cc(e)))}if(n&&n.flags&t)return n}return $t}function rb(e,t){return!!(e.flags&t||2097152&e.flags&&$(e.types,(e=>rb(e,t))))}function ib(e,t,n){const r=n&&(7&Mx(e)||e.aliasSymbol)?function(e){const t=va(4194304);return t.type=e,t}(e):void 0;return fv(te(R(Q_(e),(e=>tb(e,t))),R(Sf(e),(e=>e!==oi&&rb(e.keyType,t)?e.keyType===Ut&&8&t?sn:e.keyType:$t))),1,void 0,void 0,r)}function ob(e,t=0){return!!(58982400&e.flags||rk(e)||V_(e)&&(!function(e){const t=D_(e);return function e(n){return!!(470810623&n.flags)||(16777216&n.flags?n.root.isDistributive&&n.checkType===t:137363456&n.flags?T(n.types,e):8388608&n.flags?e(n.objectType)&&e(n.indexType):33554432&n.flags?e(n.baseType)&&e(n.constraint):!!(268435456&n.flags)&&e(n.type))}(M_(e)||t)}(e)||2===K_(e))||1048576&e.flags&&!(4&t)&&lf(e)||2097152&e.flags&&sR(e,465829888)&&$(e.types,bT))}function sb(e,t=0){return Lg(e=Jp(e))?Fg(sb(e.baseType,t)):ob(e,t)?zv(e,t):1048576&e.flags?Mv(R(e.types,(e=>sb(e,t)))):2097152&e.flags?fv(R(e.types,(e=>sb(e,t)))):32&Mx(e)?Uv(e,t):e===wt?wt:2&e.flags?$t:131073&e.flags?un:ib(e,(2&t?128:402653316)|(1&t?0:12584),0===t)}function ab(e){const t=(Fr||(Fr=my("Extract",2,!0)||gt),Fr===gt?void 0:Fr);return t?yg(t,[e,Ut]):Ut}function cb(e,t){const n=E(t,(e=>!!(1179648&e.flags)));if(n>=0)return Fv(t)?HC(t[n],(r=>cb(e,Me(t,n,r)))):Et;if(A(t,wt))return wt;const r=[],i=[];let o=e[0];if(!function e(t,n){for(let s=0;s<n.length;s++){const a=n[s];if(101248&a.flags)o+=db(a)||"",o+=t[s+1];else if(134217728&a.flags){if(o+=a.texts[0],!e(a.texts,a.types))return!1;o+=t[s+1]}else{if(!Vb(a)&&!Lb(a))return!1;r.push(a),i.push(o),o=t[s+1]}}return!0}(e,t))return Ut;if(0===r.length)return Nx(o);if(i.push(o),T(i,(e=>""===e))){if(T(r,(e=>!!(4&e.flags))))return Ut;if(1===r.length&&zb(r[0]))return r[0]}const s=`${zh(r)}|${R(i,(e=>e.length)).join(",")}|${i.join("")}`;let a=it.get(s);return a||it.set(s,a=function(e,t){const n=ga(134217728);return n.texts=e,n.types=t,n}(i,r)),a}function db(e){return 128&e.flags?e.value:256&e.flags?""+e.value:2048&e.flags?Aw(e.value):98816&e.flags?e.intrinsicName:void 0}function _b(e,t){return 1179648&t.flags?HC(t,(t=>_b(e,t))):128&t.flags?Nx(pb(e,t.value)):134217728&t.flags?cb(...function(e,t,n){switch(Jz.get(e.escapedName)){case 0:return[t.map((e=>e.toUpperCase())),n.map((t=>_b(e,t)))];case 1:return[t.map((e=>e.toLowerCase())),n.map((t=>_b(e,t)))];case 2:return[""===t[0]?t:[t[0].charAt(0).toUpperCase()+t[0].slice(1),...t.slice(1)],""===t[0]?[_b(e,n[0]),...n.slice(1)]:n];case 3:return[""===t[0]?t:[t[0].charAt(0).toLowerCase()+t[0].slice(1),...t.slice(1)],""===t[0]?[_b(e,n[0]),...n.slice(1)]:n]}return[t,n]}(e,t.texts,t.types)):268435456&t.flags&&e===t.symbol?t:268435461&t.flags||Vb(t)?fb(e,t):Lb(t)?fb(e,cb(["",""],[t])):t}function pb(e,t){switch(Jz.get(e.escapedName)){case 0:return t.toUpperCase();case 1:return t.toLowerCase();case 2:return t.charAt(0).toUpperCase()+t.slice(1);case 3:return t.charAt(0).toLowerCase()+t.slice(1)}return t}function fb(e,t){const n=`${Qz(e)},${ov(t)}`;let r=ot.get(n);return r||ot.set(n,r=function(e,t){const n=ya(268435456,e);return n.type=t,n}(e,t)),r}function yb(e){if(Z)return!1;if(4096&Mx(e))return!0;if(1048576&e.flags)return T(e.types,yb);if(2097152&e.flags)return $(e.types,yb);if(465829888&e.flags){const t=mp(e);return t!==e&&yb(t)}return!1}function xb(e,t){return Sk(e)?Tk(e):t&&du(t)?Zg(t):void 0}function Sb(e,t){if(8208&t.flags){const n=bc(e.parent,(e=>!Bx(e)))||e.parent;return Wu(n)?Hu(n)&&YC(e)&&_C(n,e):T(t.declarations,(e=>!pu(e)||Io(e)))}return!0}function Fb(e,t,n,r,i,o){const s=i&&212===i.kind?i:void 0,a=i&&ZC(i)?void 0:xb(n,i);if(void 0!==a){if(256&o)return CD(t,a)||St;const e=df(t,a);if(e){if(64&o&&i&&e.declarations&&Ao(e)&&Sb(i,e)){Do((null==s?void 0:s.argumentExpression)??(JN(i)?i.indexType:i),e.declarations,a)}if(s){if(OM(e,s,FM(s.expression,t.symbol)),eR(s,e,ig(s)))return void wo(s.argumentExpression,ws.Cannot_assign_to_0_because_it_is_a_read_only_property,Qa(e));if(8&o&&(Qo(i).resolvedSymbol=e),mM(s,e))return Tt}const n=4&o?Zl(e):$l(e);return s&&1!==ig(s)?aA(s,n):i&&JN(i)&&Kk(n)?fv([n,Mt]):n}if(VC(t,$w)&&ek(a)){const e=+a;if(i&&VC(t,(e=>!e.target.hasRestElement))&&!(16&o)){const n=Rb(i);if($w(t)){if(e<0)return wo(n,ws.A_tuple_type_cannot_be_indexed_with_a_negative_value),Mt;wo(n,ws.Tuple_type_0_of_length_1_has_no_element_at_index_2,Za(t),ag(t),wc(a))}else wo(n,ws.Property_0_does_not_exist_on_type_1,wc(a),Za(t))}if(e>=0)return c(Tf(t,Bt)),yk(t,e,1&o?Ft:void 0)}}if(!(98304&n.flags)&&aR(n,402665900)){if(131073&t.flags)return t;const l=Ef(t,n)||Tf(t,Ut);if(l){if(2&o&&l.keyType!==Bt)return void(s&&(4&o?wo(s,ws.Type_0_is_generic_and_can_only_be_indexed_for_reading,Za(e)):wo(s,ws.Type_0_cannot_be_used_to_index_type_1,Za(n),Za(e))));if(i&&l.keyType===Ut&&!aR(n,12)){return wo(Rb(i),ws.Type_0_cannot_be_used_as_an_index_type,Za(n)),1&o?fv([l.type,Ft]):l.type}return c(l),1&o&&!(t.symbol&&384&t.symbol.flags&&n.symbol&&1024&n.flags&&ca(n.symbol)===t.symbol)?fv([l.type,Ft]):l.type}if(131072&n.flags)return $t;if(yb(t))return St;if(s&&!lR(t)){if(BE(t)){if(Z&&384&n.flags)return oo.add(Vp(s,ws.Property_0_does_not_exist_on_type_1,n.value,Za(t))),Mt;if(12&n.flags){return fv(_e(R(t.properties,(e=>$l(e))),Mt))}}if(t.symbol===fe&&void 0!==a&&fe.exports.has(a)&&418&fe.exports.get(a).flags)wo(s,ws.Property_0_does_not_exist_on_type_1,wc(a),Za(t));else if(Z&&!(128&o))if(void 0!==a&&EM(a,t)){const e=Za(t);wo(s,ws.Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead,a,e,e+"["+ep(s.argumentExpression)+"]")}else if(wf(t,Bt))wo(s.argumentExpression,ws.Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number);else{let e;if(void 0!==a&&(e=IM(a,t)))void 0!==e&&wo(s.argumentExpression,ws.Property_0_does_not_exist_on_type_1_Did_you_mean_2,a,Za(t),e);else{const e=function(e,t,n){function r(t){const r=H_(e,t);if(r){const e=nO($l(r));return!!e&&yF(e)>=1&&WS(n,pF(e,0))}return!1}const i=og(t)?"set":"get";if(!r(i))return;let o=Nb(t.expression);void 0===o?o=i:o+="."+i;return o}(t,s,n);if(void 0!==e)wo(s,ws.Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1,Za(t),e);else{let e;if(1024&n.flags)e=gS(void 0,ws.Property_0_does_not_exist_on_type_1,"["+Za(n)+"]",Za(t));else if(8192&n.flags){const r=js(n.symbol,s);e=gS(void 0,ws.Property_0_does_not_exist_on_type_1,"["+r+"]",Za(t))}else 128&n.flags||256&n.flags?e=gS(void 0,ws.Property_0_does_not_exist_on_type_1,n.value,Za(t)):12&n.flags&&(e=gS(void 0,ws.No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1,Za(n),Za(t)));e=gS(e,ws.Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1,Za(r),Za(t)),oo.add(Wp(C_(s),s,e))}}}return}}if(yb(t))return St;if(i){const e=Rb(i);384&n.flags?wo(e,ws.Property_0_does_not_exist_on_type_1,""+n.value,Za(t)):12&n.flags?wo(e,ws.Type_0_has_no_matching_index_signature_for_type_1,Za(t),Za(n)):wo(e,ws.Type_0_cannot_be_used_as_an_index_type,Za(n))}return Dc(n)?n:void 0;function c(e){e&&e.isReadonly&&s&&(og(s)||mg(s))&&wo(s,ws.Index_signature_in_type_0_only_permits_reading,Za(t))}}function Rb(e){return 212===e.kind?e.argumentExpression:199===e.kind?e.indexType:167===e.kind?e.expression:e}function Lb(e){if(2097152&e.flags){let t=!1;for(const n of e.types)if(101248&n.flags||Lb(n))t=!0;else if(!(524288&n.flags))return!1;return t}return!!(77&e.flags)||zb(e)}function zb(e){return!!(134217728&e.flags)&&T(e.types,Lb)||!!(268435456&e.flags)&&Lb(e.type)}function Ub(e){return!!(402653184&e.flags)&&!zb(e)}function Bb(e){return!!Kb(e)}function qb(e){return!!(4194304&Kb(e))}function Vb(e){return!!(8388608&Kb(e))}function Kb(e){return 3145728&e.flags?(2097152&e.objectFlags||(e.objectFlags|=2097152|Re(e.types,((e,t)=>e|Kb(t)),0)),12582912&e.objectFlags):33554432&e.flags?(2097152&e.objectFlags||(e.objectFlags|=2097152|Kb(e.baseType)|Kb(e.constraint)),12582912&e.objectFlags):(58982400&e.flags||V_(e)||rk(e)?4194304:0)|(63176704&e.flags||Ub(e)?8388608:0)}function Jb(e,t){return 8388608&e.flags?function(e,t){const n=t?"simplifiedForWriting":"simplifiedForReading";if(e[n])return e[n]===Fn?e:e[n];e[n]=Fn;const r=Jb(e.objectType,t),i=Jb(e.indexType,t),o=function(e,t,n){if(1048576&t.flags){const r=R(t.types,(t=>Jb(Qb(e,t),n)));return n?Mv(r):fv(r)}}(r,i,t);if(o)return e[n]=o;if(!(465829888&i.flags)){const o=Wb(r,i,t);if(o)return e[n]=o}if(rk(r)&&296&i.flags){const o=bk(r,8&i.flags?0:r.target.fixedLength,0,t);if(o)return e[n]=o}if(V_(r)&&2!==K_(r))return e[n]=HC(Gb(r,e.indexType),(e=>Jb(e,t)));return e[n]=e}(e,t):16777216&e.flags?function(e,t){const n=e.checkType,r=e.extendsType,i=ix(e),o=ox(e);if(131072&o.flags&&ex(i)===ex(n)){if(1&n.flags||WS(kS(n),kS(r)))return Jb(i,t);if(Hb(n,r))return $t}else if(131072&i.flags&&ex(o)===ex(n)){if(!(1&n.flags)&&WS(kS(n),kS(r)))return $t;if(1&n.flags||Hb(n,r))return Jb(o,t)}return e}(e,t):e}function Wb(e,t,n){if(1048576&e.flags||2097152&e.flags&&!ob(e)){const r=R(e.types,(e=>Jb(Qb(e,t),n)));return 2097152&e.flags||n?Mv(r):fv(r)}}function Hb(e,t){return!!(131072&fv([l_(e,t),$t]).flags)}function Gb(e,t){const n=Gx([D_(e)],[t]),r=nS(e.mapper,n),i=SS(O_(e.target||e),r),o=B_(e)>0||(Bb(e)?q_(z_(e))>0:function(e,t){const n=cp(t);return!!n&&$(Q_(e),(e=>!!(16777216&e.flags)&&WS(tb(e,8576),n)))}(e,t));return Xc(i,!0,o)}function Qb(e,t,n=0,r,i,o){return Zb(e,t,n,r,i,o)||(r?Et:Dt)}function Yb(e,t){return VC(e,(e=>{if(384&e.flags){const n=Tk(e);if(ek(n)){const e=+n;return e>=0&&e<t}}return!1}))}function Zb(e,t,n=0,r,i,o){if(e===wt||t===wt)return wt;if(!TT(e=Jp(e))||98304&t.flags||!aR(t,12)||(t=Ut),N.noUncheckedIndexedAccess&&32&n&&(n|=1),Vb(t)||(r&&199!==r.kind?rk(e)&&!Yb(t,rv(e.target)):qb(e)&&(!$w(e)||!Yb(t,rv(e.target)))||lf(e))){if(3&e.flags)return e;const r=1&n,s=e.id+","+t.id+","+r+Bh(i,o);let a=rt.get(s);return a||rt.set(s,a=function(e,t,n,r,i){const o=ga(8388608);return o.objectType=e,o.indexType=t,o.accessFlags=n,o.aliasSymbol=r,o.aliasTypeArguments=i,o}(e,t,r,i,o)),a}const s=Ap(e);if(1048576&t.flags&&!(16&t.flags)){const a=[];let c=!1;for(const i of t.types){const o=Fb(e,s,i,t,r,n|(c?128:0));if(o)a.push(o);else{if(!r)return;c=!0}}if(c)return;return 4&n?Mv(a,0,i,o):fv(a,1,i,o)}return Fb(e,s,t,t,r,72|n)}function Xb(e){const t=Qo(e);if(!t.resolvedType){const n=zx(e.objectType),r=zx(e.indexType),i=dx(e);t.resolvedType=Qb(n,r,0,e,i,_x(i))}return t.resolvedType}function $b(e){const t=Qo(e);if(!t.resolvedType){const n=xa(32,e.symbol);n.declaration=e,n.aliasSymbol=dx(e),n.aliasTypeArguments=_x(n.aliasSymbol),t.resolvedType=n,P_(n)}return t.resolvedType}function ex(e){return 33554432&e.flags?ex(e.baseType):8388608&e.flags&&(33554432&e.objectType.flags||33554432&e.indexType.flags)?Qb(ex(e.objectType),ex(e.indexType)):e}function tx(e){return ON(e)&&m(e.elements)>0&&!$(e.elements,(e=>RN(e)||LN(e)||FN(e)&&!(!e.questionToken&&!e.dotDotDotToken)))}function nx(e,t){return Bb(e)||t&&$w(e)&&$(iv(e),Bb)}function rx(e,t,n,i,o){let s,a,c=0;for(;;){if(1e3===c)return wo(r,ws.Type_instantiation_is_excessively_deep_and_possibly_infinite),Et;const u=SS(ex(e.checkType),t),d=SS(e.extendsType,t);if(u===Et||d===Et)return Et;if(u===wt||d===wt)return wt;const _=pg(e.node.checkType),p=pg(e.node.extendsType),f=tx(_)&&tx(p)&&m(_.elements)===m(p.elements),h=nx(u,f);let g;if(e.inferTypeParameters){const n=lE(e.inferTypeParameters,void 0,0);t&&(n.nonFixingMapper=nS(n.nonFixingMapper,t)),h||jE(n.inferences,u,d,1536),g=t?nS(n.mapper,t):n.mapper}const y=g?SS(e.extendsType,g):d;if(!h&&!nx(y,f)){if(!(3&y.flags)&&(1&u.flags||!WS(wS(u),wS(y)))){(1&u.flags||n&&!(131072&y.flags)&&qC(wS(y),(e=>WS(e,wS(u)))))&&(a||(a=[])).push(SS(zx(e.node.trueType),g||t));const r=zx(e.node.falseType);if(16777216&r.flags){const n=r.root;if(n.node.parent===e.node&&(!n.isDistributive||n.checkType===e.checkType)){e=n;continue}if(l(r,t))continue}s=SS(r,t);break}if(3&y.flags||WS(kS(u),kS(y))){const n=zx(e.node.trueType),r=g||t;if(l(n,r))continue;s=SS(n,r);break}}s=ga(16777216),s.root=e,s.checkType=SS(e.checkType,t),s.extendsType=SS(e.extendsType,t),s.mapper=t,s.combinedMapper=g,s.aliasSymbol=i||e.aliasSymbol,s.aliasTypeArguments=i?o:Jx(e.aliasTypeArguments,t);break}return a?fv(_e(a,s)):s;function l(n,r){if(16777216&n.flags&&r){const s=n.root;if(s.outerTypeParameters){const a=nS(n.mapper,r),l=R(s.outerTypeParameters,(e=>Qx(e,a))),u=Gx(s.outerTypeParameters,l),d=s.isDistributive?Qx(s.checkType,u):void 0;if(!(d&&d!==s.checkType&&1179648&d.flags))return e=s,t=u,i=void 0,o=void 0,s.aliasSymbol&&c++,!0}}return!1}}function ix(e){return e.resolvedTrueType||(e.resolvedTrueType=SS(zx(e.root.node.trueType),e.mapper))}function ox(e){return e.resolvedFalseType||(e.resolvedFalseType=SS(zx(e.root.node.falseType),e.mapper))}function sx(e){let t;return e.locals&&e.locals.forEach((e=>{262144&e.flags&&(t=_e(t,Zu(e)))})),t}function ax(e){return YC(e)?[e]:_e(ax(e.left),e.right)}function cx(e){var t;const n=Qo(e);if(!n.resolvedType){if(!gf(e))return wo(e.argument,ws.String_literal_expected),n.resolvedSymbol=gt,n.resolvedType=Et;const r=e.isTypeOf?111551:16777216&e.flags?900095:788968,i=Bs(e,e.argument.literal);if(!i)return n.resolvedSymbol=gt,n.resolvedType=Et;const o=!!(null==(t=i.exports)?void 0:t.get("export=")),s=Ws(i,!1);if(F_(e.qualifier))if(s.flags&r)n.resolvedType=lx(e,n,s,r);else{wo(e,111551===r?ws.Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here:ws.Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0,e.argument.literal.text),n.resolvedSymbol=gt,n.resolvedType=Et}else{const t=ax(e.qualifier);let i,a=s;for(;i=t.shift();){const s=t.length?1920:r,c=oa(Ds(a)),l=e.isTypeOf||Um(e)&&o?df($l(c),i.escapedText,!1,!0):void 0,u=(e.isTypeOf?void 0:Yo($s(c),i.escapedText,s))??l;if(!u)return wo(i,ws.Namespace_0_has_no_exported_member_1,js(a),Lp(i)),n.resolvedType=Et;Qo(i).resolvedSymbol=u,Qo(i.parent).resolvedSymbol=u,a=u}n.resolvedType=lx(e,n,a,r)}}return n.resolvedType}function lx(e,t,n,r){const i=Ds(n);return t.resolvedSymbol=i,111551===r?nF($l(n),e):Og(e,i)}function ux(e){const t=Qo(e);if(!t.resolvedType){const n=dx(e);if(0!==wd(e.symbol).size||n){let r=xa(16,e.symbol);r.aliasSymbol=n,r.aliasTypeArguments=_x(n),pD(e)&&e.isArrayType&&(r=jy(r)),t.resolvedType=r}else t.resolvedType=An}return t.resolvedType}function dx(e){let t=e.parent;for(;qN(t)||XI(t)||KN(t)&&148===t.operator;)t=t.parent;return Lh(t)?sa(t):void 0}function _x(e){return e?gu(e):void 0}function px(e){return!!(524288&e.flags)&&!V_(e)}function fx(e){return vT(e)||!!(474058748&e.flags)}function mx(e,t){if(!(1048576&e.flags))return e;if(T(e.types,fx))return w(e.types,vT)||En;const n=w(e.types,(e=>!fx(e)));if(!n)return e;return w(e.types,(e=>e!==n&&!fx(e)))?e:function(e){const n=o_();for(const i of Q_(e))if(6&xx(i));else if(gx(i)){const e=65536&i.flags&&!(32768&i.flags),r=Po(16777220,i.escapedName,T_(i)|(t?8:0));r.links.type=e?Mt:Xc($l(i),!0),r.declarations=i.declarations,r.links.nameType=Go(i).nameType,r.links.syntheticOrigin=i,n.set(i.escapedName,r)}const r=Ca(e.symbol,n,_,_,Sf(e));return r.objectFlags|=131200,r}(n)}function hx(e,t,n,r,i){if(1&e.flags||1&t.flags)return St;if(2&e.flags||2&t.flags)return Dt;if(131072&e.flags)return t;if(131072&t.flags)return e;if(1048576&(e=mx(e,i)).flags)return Fv([e,t])?HC(e,(e=>hx(e,t,n,r,i))):Et;if(1048576&(t=mx(t,i)).flags)return Fv([e,t])?HC(t,(t=>hx(e,t,n,r,i))):Et;if(473960444&t.flags)return e;if(qb(e)||qb(t)){if(vT(e))return t;if(2097152&e.flags){const o=e.types,s=o[o.length-1];if(px(s)&&px(t))return Mv(te(o.slice(0,o.length-1),[hx(s,t,n,r,i)]))}return Mv([e,t])}const o=o_(),s=new Set,a=e===En?Sf(t):c_([e,t]);for(const l of Q_(t))6&xx(l)?s.add(l.escapedName):gx(l)&&o.set(l.escapedName,yx(l,i));for(const l of Q_(e))if(!s.has(l.escapedName)&&gx(l))if(o.has(l.escapedName)){const e=o.get(l.escapedName),t=$l(e);if(16777216&e.flags){const n=te(l.declarations,e.declarations),r=Po(4|16777216&l.flags,l.escapedName),i=$l(l),s=Jk(i),a=Jk(t);r.links.type=s===a?i:fv([i,a],2),r.links.leftSpread=l,r.links.rightSpread=e,r.declarations=n,r.links.nameType=Go(l).nameType,o.set(l.escapedName,r)}}else o.set(l.escapedName,yx(l,i));const c=Ca(n,o,_,_,j(a,(e=>function(e,t){return e.isReadonly!==t?vh(e.keyType,e.type,t,e.declaration):e}(e,i))));return c.objectFlags|=2228352|r,c}function gx(e){var t;return!($(e.declarations,iu)||106496&e.flags&&(null==(t=e.declarations)?void 0:t.some((e=>xu(e.parent)))))}function yx(e,t){const n=65536&e.flags&&!(32768&e.flags);if(!n&&t===$F(e))return e;const r=Po(4|16777216&e.flags,e.escapedName,T_(e)|(t?8:0));return r.links.type=n?Mt:$l(e),r.declarations=e.declarations,r.links.nameType=Go(e).nameType,r.links.syntheticOrigin=e,r}function vx(e,t,n,r){const i=ya(e,n);return i.value=t,i.regularType=r||i,i}function Sx(e){if(2976&e.flags){if(!e.freshType){const t=vx(e.flags,e.value,e.symbol,e);t.freshType=t,e.freshType=t}return e.freshType}return e}function Ex(e){return 2976&e.flags?e.regularType:1048576&e.flags?e.regularType||(e.regularType=HC(e,Ex)):e}function Cx(e){return!!(2976&e.flags)&&e.freshType===e}function Nx(e){let t;return Ze.get(e)||(Ze.set(e,t=vx(128,e)),t)}function Ax(e){let t;return Xe.get(e)||(Xe.set(e,t=vx(256,e)),t)}function Ix(e){let t;const n=Aw(e);return $e.get(n)||($e.set(n,t=vx(2048,e)),t)}function Dx(e,t,n){let r;const i=`${t}${"string"==typeof e?"@":"#"}${e}`,o=1024|("string"==typeof e?128:256);return et.get(i)||(et.set(i,r=vx(o,e,n)),r)}function Ox(e){if(Um(e)&&XI(e)){const t=Xh(e);t&&(e=Uh(t)||t)}if(Vf(e)){const t=qf(e)?aa(e.left):aa(e);if(t){const e=Go(t);return e.uniqueESSymbolType||(e.uniqueESSymbolType=function(e){const t=ya(8192,e);return t.escapedName=`__@${t.symbol.escapedName}@${Qz(t.symbol)}`,t}(t))}}return Zt}function Rx(e){const t=Qo(e);return t.resolvedType||(t.resolvedType=function(e){const t=cm(e,!1,!1),n=t&&t.parent;if(n&&(xu(n)||264===n.kind)&&!Jv(t)&&(!xN(t)||hg(e,t.body)))return ju(sa(n)).thisType;if(n&&tA(n)&&gA(n.parent)&&6===dh(n.parent))return ju(aa(n.parent.left).parent).thisType;const r=16777216&e.flags?Yh(e):void 0;return r&&lA(r)&&gA(r.parent)&&3===dh(r.parent)?ju(aa(r.parent.left).parent).thisType:zO(t)&&hg(e,t.body)?ju(sa(t)).thisType:(wo(e,ws.A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface),Et)}(e)),t.resolvedType}function Lx(e){return zx(jx(e.type)||e.type)}function jx(e){switch(e.kind){case 196:return jx(e.type);case 189:if(1===e.elements.length&&(191===(e=e.elements[0]).kind||202===e.kind&&e.dotDotDotToken))return jx(e.type);break;case 188:return e.elementType}}function zx(e){return function(e,t){let n,r=!0;for(;t&&!kd(t)&&320!==t.kind;){const i=t.parent;if(169===i.kind&&(r=!r),(r||8650752&e.flags)&&194===i.kind&&t===i.trueType){const t=Vg(e,i.checkType,i.extendsType);t&&(n=_e(n,t))}else if(262144&e.flags&&200===i.kind&&!i.nameType&&t===i.type){const t=zx(i);if(D_(t)===ex(e)){const e=dS(t);if(e){const t=Z_(e);t&&VC(t,cw)&&(n=_e(n,fv([Bt,gn])))}}}t=i}return n?jg(e,Mv(n)):e}(qx(e),e)}function qx(e){switch(e.kind){case 133:case 312:case 313:return St;case 159:return Dt;case 154:return Ut;case 150:return Bt;case 163:return qt;case 136:return Yt;case 155:return Zt;case 116:return Xt;case 157:return Mt;case 106:return jt;case 146:return $t;case 151:return 524288&e.flags&&!Z?St:on;case 141:return It;case 197:case 110:return Rx(e);case 201:return function(e){if(106===e.literal.kind)return jt;const t=Qo(e);return t.resolvedType||(t.resolvedType=Ex(qR(e.literal))),t.resolvedType}(e);case 183:case 233:return ty(e);case 182:return e.assertsModifier?Xt:Yt;case 186:return oy(e);case 188:case 189:return function(e){const t=Qo(e);if(!t.resolvedType){const n=By(e);if(n===Pn)t.resolvedType=En;else if(189===e.kind&&$(e.elements,(e=>!!(8&zy(e))))||!Vy(e)){const r=188===e.kind?[zx(e.elementType)]:R(e.elements,zx);t.resolvedType=Xy(n,r)}else t.resolvedType=189===e.kind&&0===e.elements.length?n:ng(n,e,void 0)}return t.resolvedType}(e);case 190:return function(e){return Xc(zx(e.type),!0)}(e);case 192:return function(e){const t=Qo(e);if(!t.resolvedType){const n=dx(e);t.resolvedType=fv(R(e.types,zx),1,n,_x(n))}return t.resolvedType}(e);case 193:return function(e){const t=Qo(e);if(!t.resolvedType){const n=dx(e),r=R(e.types,zx),i=2===r.length?r.indexOf(An):-1,o=i>=0?r[1-i]:Dt,s=!!(76&o.flags||134217728&o.flags&&zb(o));t.resolvedType=Mv(r,s?1:0,n,_x(n))}return t.resolvedType}(e);case 314:return function(e){const t=zx(e.type);return K?Fk(t,65536):t}(e);case 316:return Xc(zx(e.type));case 202:return function(e){const t=Qo(e);return t.resolvedType||(t.resolvedType=e.dotDotDotToken?Lx(e):Xc(zx(e.type),!0,!!e.questionToken))}(e);case 196:case 315:case 309:return zx(e.type);case 191:return Lx(e);case 318:return function(e){const t=zx(e.type),{parent:n}=e,r=e.parent.parent;if(XI(e.parent)&&ND(r)){const e=Yh(r),n=yD(r.parent.parent);if(e||n){const i=Ne(n?r.parent.parent.typeExpression.parameters:e.parameters),o=Hh(r);if(!i||o&&i.symbol===o&&Yd(i))return jy(t)}}if(fN(n)&&lD(n.parent))return jy(t);return Xc(t)}(e);case 184:case 185:case 187:case 322:case 317:case 323:return ux(e);case 198:return function(e){const t=Qo(e);if(!t.resolvedType)switch(e.operator){case 143:t.resolvedType=sb(zx(e.type));break;case 158:t.resolvedType=155===e.type.kind?Ox(ug(e.parent)):Et;break;case 148:t.resolvedType=zx(e.type);break;default:Tn.assertNever(e.operator)}return t.resolvedType}(e);case 199:return Xb(e);case 200:return $b(e);case 194:return function(e){const t=Qo(e);if(!t.resolvedType){const n=zx(e.checkType),r=dx(e),i=_x(r),o=cu(e,!0),s=i?o:M(o,(t=>uS(t,e))),a={node:e,checkType:n,extendsType:zx(e.extendsType),isDistributive:!!(262144&n.flags),inferTypeParameters:sx(e),outerTypeParameters:s,instantiations:void 0,aliasSymbol:r,aliasTypeArguments:i};t.resolvedType=rx(a,void 0,!1),s&&(a.instantiations=new Map,a.instantiations.set(zh(s),t.resolvedType))}return t.resolvedType}(e);case 195:return function(e){const t=Qo(e);return t.resolvedType||(t.resolvedType=Yu(sa(e.typeParameter))),t.resolvedType}(e);case 203:return function(e){const t=Qo(e);return t.resolvedType||(t.resolvedType=cb([e.head.text,...R(e.templateSpans,(e=>e.literal.text))],R(e.templateSpans,(e=>zx(e.type))))),t.resolvedType}(e);case 205:return cx(e);case 80:case 166:case 211:const t=xU(e);return t?Zu(t):Et;default:return Et}}function Vx(e,t,n){if(e&&e.length)for(let r=0;r<e.length;r++){const i=e[r],o=n(i,t);if(i!==o){const i=0===r?[]:e.slice(0,r);for(i.push(o),r++;r<e.length;r++)i.push(n(e[r],t));return i}}return e}function Jx(e,t){return Vx(e,t,SS)}function Wx(e,t){return Vx(e,t,sS)}function Hx(e,t){return Vx(e,t,ES)}function Gx(e,t){return 1===e.length?Yx(e[0],t?t[0]:St):function(e,t){return Tn.attachDebugPrototypeIfDebug({kind:1,sources:e,targets:t})}(e,t)}function Qx(e,t){switch(t.kind){case 0:return e===t.source?t.target:e;case 1:{const n=t.sources,r=t.targets;for(let t=0;t<n.length;t++)if(e===n[t])return r?r[t]:St;return e}case 2:{const n=t.sources,r=t.targets;for(let t=0;t<n.length;t++)if(e===n[t])return r[t]();return e}case 3:return t.func(e);case 4:case 5:const n=Qx(e,t.mapper1);return n!==e&&4===t.kind?SS(n,t.mapper2):Qx(n,t.mapper2)}}function Yx(e,t){return Tn.attachDebugPrototypeIfDebug({kind:0,source:e,target:t})}function Zx(e,t){return Tn.attachDebugPrototypeIfDebug({kind:3,func:e,debugInfo:Tn.isDebugging?t:void 0})}function Xx(e,t){return Tn.attachDebugPrototypeIfDebug({kind:2,sources:e,targets:t})}function $x(e,t,n){return Tn.attachDebugPrototypeIfDebug({kind:e,mapper1:t,mapper2:n})}function eS(e){return Gx(e,void 0)}function nS(e,t){return e?$x(4,e,t):t}function rS(e,t,n){return n?$x(5,Yx(e,t),n):Yx(e,t)}function iS(e,t,n){return e?$x(5,e,Yx(t,n)):Yx(t,n)}function oS(e){const t=Sa(e.symbol);return t.target=e,t}function sS(e,t,n){let r;if(e.typeParameters&&!n){r=R(e.typeParameters,oS),t=nS(Gx(e.typeParameters,r),t);for(const e of r)e.mapper=t}const i=Ad(e.declaration,r,e.thisParameter&&aS(e.thisParameter,t),Vx(e.parameters,t,aS),void 0,void 0,e.minArgumentCount,167&e.flags);return i.target=e,i.mapper=t,i}function aS(e,t){const n=Go(e);if(n.type&&!gE(n.type)){if(!(65536&e.flags))return e;if(n.writeType&&!gE(n.writeType))return e}1&bx(e)&&(e=n.target,t=nS(n.mapper,t));const r=Po(e.flags,e.escapedName,1|53256&bx(e));return r.declarations=e.declarations,r.parent=e.parent,r.links.target=e,r.links.mapper=t,e.valueDeclaration&&(r.valueDeclaration=e.valueDeclaration),n.nameType&&(r.links.nameType=n.nameType),r}function cS(e,t,n,r){const i=4&e.objectFlags||8388608&e.objectFlags?e.node:e.symbol.declarations[0],o=Qo(i),s=4&e.objectFlags?o.resolvedType:64&e.objectFlags?e.target:e;let a=134217728&e.objectFlags?e.outerTypeParameters:o.outerTypeParameters;if(!a){let t=cu(i,!0);if(zO(i)){t=me(t,Nf(i))}a=t||_;const n=8388612&e.objectFlags?[i]:e.symbol.declarations;a=(8388612&s.objectFlags||8192&s.symbol.flags||2048&s.symbol.flags)&&!s.aliasTypeArguments?M(a,(e=>$(n,(t=>uS(e,t))))):a,o.outerTypeParameters=a}if(a.length){const i=nS(e.mapper,t),o=R(a,(e=>Qx(e,i))),c=n||e.aliasSymbol,l=n?r:Jx(e.aliasTypeArguments,t),u=(134217728&e.objectFlags?"S":"")+zh(o)+Bh(c,l);s.instantiations||(s.instantiations=new Map,s.instantiations.set(zh(a)+Bh(s.aliasSymbol,s.aliasTypeArguments),s));let d=s.instantiations.get(u);if(!d){if(134217728&e.objectFlags)return d=vS(e,t),s.instantiations.set(u,d),d;const n=Gx(a,o);d=4&s.objectFlags?ng(e.target,e.node,n,c,l):32&s.objectFlags?function(e,t,n,r){const i=dS(e);if(i){const e=SS(i,t);if(i!==e)return GC(Jp(e),o,n,r)}return SS(P_(e),t)===wt?wt:vS(e,t,n,r);function o(n){if(61603843&n.flags&&n!==wt&&!Mc(n)){if(!e.declaration.nameType){let r;if(ow(n)||1&n.flags&&hc(i,4)<0&&(r=Z_(i))&&VC(r,cw))return function(e,t,n){const r=hS(t,Bt,!0,n);return Mc(r)?Et:jy(r,_S(sw(e),U_(t)))}(n,e,rS(i,n,t));if($w(n))return function(e,t,n,r){const i=e.target.elementFlags,o=e.target.fixedLength,s=o?rS(n,e,r):r,a=R(iv(e),((e,a)=>{const c=i[a];return a<o?hS(t,Nx(""+a),!!(2&c),s):8&c?SS(t,rS(n,e,r)):uw(SS(t,rS(n,jy(e),r)))??Dt})),c=U_(t),l=4&c?R(i,(e=>1&e?2:e)):8&c?R(i,(e=>2&e?1:e)):i,u=_S(e.target.readonly,U_(t));return A(a,Et)?Et:Gy(a,l,u,e.target.labeledElementDeclarations)}(n,e,i,t);if(Ep(n))return Mv(R(n.types,o))}return vS(e,rS(i,n,t))}return n}}(s,n,c,l):vS(s,n,c,l),s.instantiations.set(u,d);const r=Mx(d);if(3899393&d.flags&&!(524288&r)){const e=$(o,gE);524288&Mx(d)||(d.objectFlags|=52&r?524288|(e?1048576:0):e?0:524288)}}return d}return e}function uS(e,t){if(e.symbol&&e.symbol.declarations&&1===e.symbol.declarations.length){const r=e.symbol.declarations[0].parent;for(let e=t;e!==r;e=e.parent)if(!e||241===e.kind||194===e.kind&&GM(e.extendsType,n))return!0;return n(t)}return!0;function n(t){switch(t.kind){case 197:return!!e.isThisType;case 80:return!e.isThisType&&Df(t)&&function(e){return!(183===e.parent.kind&&e.parent.typeArguments&&e===e.parent.typeName||205===e.parent.kind&&e.parent.typeArguments&&e===e.parent.qualifier)}(t)&&qx(t)===e;case 186:const r=kb(t.exprName);if(!Tv(r)){const i=XE(r),o=e.symbol.declarations[0],s=168===o.kind?o.parent:e.isThisType?o:void 0;if(i.declarations&&s)return $(i.declarations,(e=>hg(e,s)))||$(t.typeArguments,n)}return!0;case 174:case 173:return!t.type&&!!t.body||$(t.typeParameters,n)||$(t.parameters,n)||!!t.type&&n(t.type)}return!!GM(t,n)}}function dS(e){const t=P_(e);if(4194304&t.flags){const e=ex(t.type);if(262144&e.flags)return e}}function _S(e,t){return!!(1&t)||!(2&t)&&e}function hS(e,t,n,r){const i=iS(r,D_(e),t),o=SS(O_(e.target||e),i),s=U_(e);return K&&4&s&&!sR(o,49152)?Lk(o,!0):K&&8&s&&n?vC(o,524288):o}function vS(e,t,n,r){Tn.assert(e.symbol,"anonymous type must have symbol to be instantiated");const i=xa(-1572865&e.objectFlags|64,e.symbol);if(32&e.objectFlags){i.declaration=e.declaration;const n=D_(e),r=oS(n);i.typeParameter=r,t=nS(Yx(n,r),t),r.mapper=t}return 8388608&e.objectFlags&&(i.node=e.node),134217728&e.objectFlags&&(i.outerTypeParameters=e.outerTypeParameters),i.target=e,i.mapper=t,i.aliasSymbol=n||e.aliasSymbol,i.aliasTypeArguments=n?r:Jx(e.aliasTypeArguments,t),i.objectFlags|=i.aliasTypeArguments?Kh(i.aliasTypeArguments):0,i}function xS(e,t,n,r,i){const o=e.root;if(o.outerTypeParameters){const e=R(o.outerTypeParameters,(e=>Qx(e,t))),s=(n?"C":"")+zh(e)+Bh(r,i);let a=o.instantiations.get(s);if(!a){const t=Gx(o.outerTypeParameters,e),c=o.checkType,l=o.isDistributive?Jp(Qx(c,t)):void 0;a=l&&c!==l&&1179648&l.flags?GC(l,(e=>rx(o,rS(c,e,t),n)),r,i):rx(o,t,n,r,i),o.instantiations.set(s,a)}return a}return e}function SS(e,t){return e&&t?TS(e,t,void 0,void 0):e}function TS(e,t,n,i){var o;if(!gE(e))return e;if(100===g||f>=5e6)return null==(o=ar)||o.instant(ar.Phase.CheckTypes,"instantiateType_DepthLimit",{typeId:e.id,instantiationDepth:g,instantiationCount:f}),wo(r,ws.Type_instantiation_is_excessively_deep_and_possibly_infinite),Et;p++,f++,g++;const s=function(e,t,n,r){const i=e.flags;if(262144&i)return Qx(e,t);if(524288&i){const i=e.objectFlags;if(52&i){if(4&i&&!e.node){const n=e.resolvedTypeArguments,r=Jx(n,t);return r!==n?Xy(e.target,r):e}return 1024&i?function(e,t){const n=SS(e.mappedType,t);if(!(32&Mx(n)))return e;const r=SS(e.constraintType,t);if(!(4194304&r.flags))return e;const i=bE(SS(e.source,t),n,r);if(i)return i;return e}(e,t):cS(e,t,n,r)}return e}if(3145728&i){const o=1048576&e.flags?e.origin:void 0,s=o&&3145728&o.flags?o.types:e.types,a=Jx(s,t);if(a===s&&n===e.aliasSymbol)return e;const c=n||e.aliasSymbol,l=n?r:Jx(e.aliasTypeArguments,t);return 2097152&i||o&&2097152&o.flags?Mv(a,0,c,l):fv(a,1,c,l)}if(4194304&i)return sb(SS(e.type,t));if(134217728&i)return cb(e.texts,Jx(e.types,t));if(268435456&i)return _b(e.symbol,SS(e.type,t));if(8388608&i){const i=n||e.aliasSymbol,o=n?r:Jx(e.aliasTypeArguments,t);return Qb(SS(e.objectType,t),SS(e.indexType,t),e.accessFlags,void 0,i,o)}if(16777216&i)return xS(e,nS(e.mapper,t),!1,n,r);if(33554432&i){const n=SS(e.baseType,t);if(Lg(e))return Fg(n);const r=SS(e.constraint,t);return 8650752&n.flags&&Bb(r)?jg(n,r):3&r.flags||WS(kS(n),kS(r))?n:8650752&n.flags?jg(n,r):Mv([r,n])}return e}(e,t,n,i);return g--,s}function wS(e){return 402915327&e.flags?e:e.permissiveInstantiation||(e.permissiveInstantiation=SS(e,bn))}function kS(e){return 402915327&e.flags?e:(e.restrictiveInstantiation||(e.restrictiveInstantiation=SS(e,vn),e.restrictiveInstantiation.restrictiveInstantiation=e.restrictiveInstantiation),e.restrictiveInstantiation)}function ES(e,t){return vh(e.keyType,SS(e.type,t),e.isReadonly,e.declaration)}function CS(e){switch(Tn.assert(174!==e.kind||Hf(e)),e.kind){case 218:case 219:case 174:case 262:return NS(e);case 210:return $(e.properties,CS);case 209:return $(e.elements,CS);case 227:return CS(e.whenTrue)||CS(e.whenFalse);case 226:return(57===e.operatorToken.kind||61===e.operatorToken.kind)&&(CS(e.left)||CS(e.right));case 303:return CS(e.initializer);case 217:return CS(e.expression);case 292:return $(e.properties,CS)||PI(e.parent)&&$(e.parent.parent.children,CS);case 291:{const{initializer:t}=e;return!!t&&CS(t)}case 294:{const{expression:t}=e;return!!t&&CS(t)}}return!1}function NS(e){return Qw(e)||function(e){if(e.typeParameters||Iv(e)||!e.body)return!1;if(241!==e.body.kind)return CS(e.body);return!!Of(e.body,(e=>!!e.expression&&CS(e.expression)))}(e)}function AS(e){return(Xw(e)||Hf(e))&&NS(e)}function IS(e){if(524288&e.flags){const t=J_(e);if(t.constructSignatures.length||t.callSignatures.length){const n=xa(16,e.symbol);return n.members=t.members,n.properties=t.properties,n.callSignatures=_,n.constructSignatures=_,n.indexInfos=_,n}}else if(2097152&e.flags)return Mv(R(e.types,IS));return e}function DS(e,t){return ET(e,t,po)}function PS(e,t){return ET(e,t,po)?-1:0}function RS(e,t){return ET(e,t,uo)?-1:0}function US(e,t){return ET(e,t,co)?-1:0}function BS(e,t){return ET(e,t,co)}function JS(e,t){return ET(e,t,lo)}function WS(e,t){return ET(e,t,uo)}function HS(e,t){return 1048576&e.flags?T(e.types,(e=>HS(e,t))):1048576&t.flags?$(t.types,(t=>HS(e,t))):2097152&e.flags?$(e.types,(e=>HS(e,t))):58982400&e.flags?HS(cp(e)||Dt,t):bT(t)?!!(67633152&e.flags):t===Wn?!!(67633152&e.flags)&&!bT(e):t===Hn?!!(524288&e.flags)&&mC(e):su(e,ru(t))||ow(t)&&!sw(t)&&HS(e,Zn)}function ZS(e,t){return ET(e,t,_o)}function XS(e,t){return ZS(e,t)||ZS(t,e)}function $S(e,t,n,r,i,o){return DT(e,t,uo,n,r,i,o)}function tT(e,t,n,r,i,o){return rT(e,t,uo,n,r,i,o,void 0)}function rT(e,t,n,r,i,o,s,a){return!!ET(e,t,n)||(!r||!oT(i,e,t,n,o,s,a))&&DT(e,t,n,r,o,s,a)}function iT(e){return!!(16777216&e.flags||2097152&e.flags&&$(e.types,iT))}function oT(e,t,n,r,i,o,s){if(!e||iT(n))return!1;if(!DT(t,n,r,void 0)&&function(e,t,n,r,i,o,s){const a=pf(t,0),c=pf(t,1);for(const l of[c,a])if($(l,(e=>{const t=wm(e);return!(131073&t.flags)&&DT(t,n,r,void 0)}))){const r=s||{};$S(t,n,e,i,o,r);return xw(r.errors[r.errors.length-1],Vp(e,l===c?ws.Did_you_mean_to_use_new_with_this_expression:ws.Did_you_mean_to_call_this_expression)),!0}return!1}(e,t,n,r,i,o,s))return!0;switch(e.kind){case 234:if(!Dk(e))break;case 294:case 217:return oT(e.expression,t,n,r,i,o,s);case 226:switch(e.operatorToken.kind){case 64:case 28:return oT(e.right,t,n,r,i,o,s)}break;case 210:return function(e,t,n,r,i,o){return!(402915324&n.flags)&&dT(function*(e){if(!m(e.properties))return;for(const t of e.properties){if(GI(t))continue;const e=tb(sa(t),8576);if(e&&!(131072&e.flags))switch(t.kind){case 178:case 177:case 174:case 304:yield{errorNode:t.name,innerExpression:void 0,nameType:e};break;case 303:yield{errorNode:t.name,innerExpression:t.initializer,nameType:e,errorMessage:zp(t.name)?ws.Type_of_computed_property_s_value_is_0_which_is_not_assignable_to_type_1:void 0};break;default:Tn.assertNever(t)}}}(e),t,n,r,i,o)}(e,t,n,r,o,s);case 209:return function(e,t,n,r,i,o){if(402915324&n.flags)return!1;if(vw(t))return dT(pT(e,n),t,n,r,i,o);GD(e,n,!1);const s=sP(e,1,!0);if(QD(),vw(s))return dT(pT(e,n),s,n,r,i,o);return!1}(e,t,n,r,o,s);case 292:return function(e,t,n,r,i,o){let s,a=dT(function*(e){if(!m(e.properties))return;for(const t of e.properties)zI(t)||SP(gk(t.name))||(yield{errorNode:t.name,innerExpression:t.initializer,nameType:Nx(gk(t.name))})}(e),t,n,r,i,o);if(PI(e.parent)&&II(e.parent.parent)){const s=e.parent.parent,l=MP(DP(e)),u=void 0===l?"children":wc(l),d=Nx(u),_=Qb(n,d),p=wy(s.children);if(!m(p))return a;const f=m(p)>1;let h,g;if(Iy(!1)!==Pn){const e=Ly(St);h=KC(_,(t=>WS(t,e))),g=KC(_,(t=>!WS(t,e)))}else h=KC(_,bw),g=KC(_,(e=>!bw(e)));if(f){if(h!==$t){const e=Gy(kP(s,0)),t=function*(e,t){if(!m(e.children))return;let n=0;for(let r=0;r<e.children.length;r++){const i=_T(e.children[r],Ax(r-n),t);i?yield i:n++}}(s,c);a=function(e,t,n,r,i,o){const s=KC(n,bw),a=KC(n,(e=>!bw(e))),c=a!==$t?yj(13,0,a,void 0):void 0;let l=!1;for(let u=e.next();!u.done;u=e.next()){const{errorNode:e,innerExpression:n,nameType:a,errorMessage:d}=u.value;let _=c;const p=s!==$t?sT(t,s,a):void 0;if(!p||8388608&p.flags||(_=c?fv([c,p]):p),!_)continue;let f=Zb(t,a);if(!f)continue;const m=xb(a,void 0);if(!DT(f,_,r,void 0)){if(l=!0,!(n&&oT(n,f,_,r,void 0,i,o))){const a=o||{},c=n?uT(n,f):f;if(ne&&OT(c,_)){const t=Vp(e,ws.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target,Za(c),Za(_));oo.add(t),a.errors=[t]}else{const n=!!(m&&16777216&(df(s,m)||gt).flags),o=!!(m&&16777216&(df(t,m)||gt).flags);_=Vk(_,n),f=Vk(f,n&&o);DT(c,_,r,e,d,i,a)&&c!==f&&DT(f,_,r,e,d,i,a)}}}}return l}(t,e,h,r,i,o)||a}else if(!ET(Qb(t,d),_,r)){a=!0;const e=wo(s.openingElement.tagName,ws.This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided,u,Za(_));o&&o.skipLogging&&(o.errors||(o.errors=[])).push(e)}}else if(g!==$t){const e=_T(p[0],d,c);e&&(a=dT(function*(){yield e}(),t,n,r,i,o)||a)}else if(!ET(Qb(t,d),_,r)){a=!0;const e=wo(s.openingElement.tagName,ws.This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_provided,u,Za(_));o&&o.skipLogging&&(o.errors||(o.errors=[])).push(e)}}return a;function c(){if(!s){const t=ep(e.parent.tagName),r=MP(DP(e)),i=void 0===r?"children":wc(r),o=Qb(n,Nx(i)),a=ws._0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_type_of_1_is_2;s={...a,key:"!!ALREADY FORMATTED!!",message:fS(a,t,i,Za(o))}}return s}}(e,t,n,r,o,s);case 219:return function(e,t,n,r,i,o){if(OA(e.body))return!1;if($(e.parameters,Ud))return!1;const s=nO(t);if(!s)return!1;const a=pf(n,0);if(!m(a))return!1;const c=e.body,l=wm(s),u=fv(R(a,wm));if(!DT(l,u,r,void 0)){const t=c&&oT(c,l,u,r,void 0,i,o);if(t)return t;const s=o||{};if(DT(l,u,r,c,void 0,i,s),s.errors)return n.symbol&&m(n.symbol.declarations)&&xw(s.errors[s.errors.length-1],Vp(n.symbol.declarations[0],ws.The_expected_type_comes_from_the_return_type_of_this_signature)),2&Jg(e)||Nc(l,"then")||!DT(zF(l),u,r,void 0)||xw(s.errors[s.errors.length-1],Vp(e,ws.Did_you_mean_to_mark_this_function_as_async)),!0}return!1}(e,t,n,r,o,s)}return!1}function sT(e,t,n){const r=Zb(t,n);if(r)return r;if(1048576&t.flags){const r=FT(e,t);if(r)return Zb(r,n)}}function uT(e,t){GD(e,t,!1);const n=AR(e,1);return QD(),n}function dT(e,t,n,r,i,o){let s=!1;for(const a of e){const{errorNode:e,innerExpression:c,nameType:l,errorMessage:u}=a;let d=sT(t,n,l);if(!d||8388608&d.flags)continue;let _=Zb(t,l);if(!_)continue;const p=xb(l,void 0);if(!DT(_,d,r,void 0)){if(s=!0,!(c&&oT(c,_,d,r,void 0,i,o))){const s=o||{},a=c?uT(c,_):_;if(ne&&OT(a,d)){const t=Vp(e,ws.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target,Za(a),Za(d));oo.add(t),s.errors=[t]}else{const o=!!(p&&16777216&(df(n,p)||gt).flags),c=!!(p&&16777216&(df(t,p)||gt).flags);d=Vk(d,o),_=Vk(_,o&&c);DT(a,d,r,e,u,i,s)&&a!==_&&DT(_,d,r,e,u,i,s)}if(s.errors){const e=s.errors[s.errors.length-1],t=Sk(l)?Tk(l):void 0,r=void 0!==t?df(n,t):void 0;let i=!1;if(!r){const t=Ef(n,l);t&&t.declaration&&!C_(t.declaration).hasNoDefaultLib&&(i=!0,xw(e,Vp(t.declaration,ws.The_expected_type_comes_from_this_index_signature)))}if(!i&&(r&&m(r.declarations)||n.symbol&&m(n.symbol.declarations))){const i=r&&m(r.declarations)?r.declarations[0]:n.symbol.declarations[0];C_(i).hasNoDefaultLib||xw(e,Vp(i,ws.The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1,!t||8192&l.flags?Za(l):wc(t),Za(n)))}}}}}return s}function _T(e,t,n){switch(e.kind){case 294:return{errorNode:e,innerExpression:e.expression,nameType:t};case 12:if(e.containsOnlyTriviaWhiteSpaces)break;return{errorNode:e,innerExpression:void 0,nameType:t,errorMessage:n()};case 284:case 285:case 288:return{errorNode:e,innerExpression:e,nameType:t};default:return Tn.assertNever(e,"Found invalid jsx child")}}function*pT(e,t){const n=m(e.elements);if(n)for(let r=0;r<n;r++){if(vw(t)&&!df(t,""+r))continue;const n=e.elements[r];if(TA(n))continue;const i=Ax(r),o=pO(n);yield{errorNode:o,innerExpression:o,nameType:i}}}function fT(e,t,n,r,i){return DT(e,t,_o,n,r,i)}function mT(e){if(!e.typeParameters&&(!e.thisParameter||Dc(aF(e.thisParameter)))&&1===e.parameters.length&&tU(e)){const t=aF(e.parameters[0]);return!!(131073&(ow(t)?rg(t)[0]:t).flags&&3&wm(e).flags)}return!1}function hT(e,t,n,r,i,o,s,a){if(e===t)return-1;if(!(16&n&&mT(e))&&mT(t))return-1;if(16&n&&mT(e)&&!mT(t))return 0;const c=gF(t);if(!vF(t)&&(8&n?vF(e)||gF(e)>c:yF(e)>c))return!r||8&n||i(ws.Target_signature_provides_too_few_arguments_Expected_0_or_more_but_got_1,yF(e),c),0;e.typeParameters&&e.typeParameters!==t.typeParameters&&(e=oO(e,t=Xm(t),void 0,s));const l=gF(e),u=xF(e),d=xF(t);(u||d)&&SS(u||d,a);const _=t.declaration?t.declaration.kind:0,p=!(3&n)&&W&&174!==_&&173!==_&&176!==_;let f=-1;const m=fm(e);if(m&&m!==Xt){const e=fm(t);if(e){const t=!p&&s(m,e,!1)||s(e,m,r);if(!t)return r&&i(ws.The_this_types_of_each_signature_are_incompatible),0;f&=t}}const h=u||d?Math.min(l,c):Math.max(l,c),g=u||d?h-1:-1;for(let y=0;y<h;y++){const c=y===g?hF(e,y):fF(e,y),l=y===g?hF(t,y):fF(t,y);if(c&&l&&(c!==l||8&n)){const u=3&n||eO(e,y)?void 0:nO(jk(c)),d=3&n||eO(t,y)?void 0:nO(jk(l));let _=u&&d&&!Sm(u)&&!Sm(d)&&hC(c,50331648)===hC(l,50331648)?hT(d,u,8&n|(p?2:1),r,i,o,s,a):!(3&n)&&!p&&s(c,l,!1)||s(l,c,r);if(_&&8&n&&y>=yF(e)&&y<yF(t)&&s(c,l,!1)&&(_=0),!_)return r&&i(ws.Types_of_parameters_0_and_1_are_incompatible,wc(lF(e,y)),wc(lF(t,y))),0;f&=_}}if(!(4&n)){const a=Lm(t)?St:t.declaration&&zO(t.declaration)?ju(oa(t.declaration.symbol)):wm(t);if(a===Xt||a===St)return f;const c=Lm(e)?St:e.declaration&&zO(e.declaration)?ju(oa(e.declaration.symbol)):wm(e),l=Sm(t);if(l){const t=Sm(e);if(t)f&=function(e,t,n,r,i){if(e.kind!==t.kind)return n&&(r(ws.A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard),r(ws.Type_predicate_0_is_not_assignable_to_1,rc(e),rc(t))),0;if((1===e.kind||3===e.kind)&&e.parameterIndex!==t.parameterIndex)return n&&(r(ws.Parameter_0_is_not_in_the_same_position_as_parameter_1,e.parameterName,t.parameterName),r(ws.Type_predicate_0_is_not_assignable_to_1,rc(e),rc(t))),0;const o=e.type===t.type?-1:e.type&&t.type?i(e.type,t.type,n):0;0===o&&n&&r(ws.Type_predicate_0_is_not_assignable_to_1,rc(e),rc(t));return o}(t,l,r,i,s);else if(Qf(l)||Yf(l))return r&&i(ws.Signature_0_must_be_a_type_predicate,Ya(e)),0}else f&=1&n&&s(a,c,!1)||s(c,a,r),!f&&r&&o&&o(c,a)}return f}function gT(e,t){const n=Ym(e),r=Ym(t),i=wm(n),o=wm(r);return!(o!==Xt&&!ET(o,i,uo)&&!ET(i,o,uo))&&0!==hT(n,r,!0?4:0,!1,void 0,void 0,RS,void 0)}function yT(e){return e!==Mn&&0===e.properties.length&&0===e.callSignatures.length&&0===e.constructSignatures.length&&0===e.indexInfos.length}function vT(e){return 524288&e.flags?!V_(e)&&yT(J_(e)):!!(67108864&e.flags)||(1048576&e.flags?$(e.types,vT):!!(2097152&e.flags)&&T(e.types,vT))}function bT(e){return!!(16&Mx(e)&&(e.members&&yT(e)||e.symbol&&2048&e.symbol.flags&&0===wd(e.symbol).size))}function xT(e){return!!(32768&(1048576&e.flags?e.types[0]:e).flags)}function ST(e){const t=1048576&e.flags?e.types[0]:e;return!!(32768&t.flags)&&t!==Ft}function TT(e){return 524288&e.flags&&!V_(e)&&0===Q_(e).length&&1===Sf(e).length&&!!Tf(e,Ut)||3145728&e.flags&&T(e.types,TT)||!1}function wT(e,t,n){const r=8&e.flags?ca(e):e,i=8&t.flags?ca(t):t;if(r===i)return!0;if(!(r.escapedName===i.escapedName&&256&r.flags&&256&i.flags))return!1;const o=Qz(r)+","+Qz(i),s=fo.get(o);if(void 0!==s&&(4&s||!(2&s)||!n))return!!(1&s);const a=$l(i);for(const c of Q_($l(r)))if(8&c.flags){const e=df(a,c.escapedName);if(!(e&&8&e.flags))return n?(n(ws.Property_0_is_missing_in_type_1,Cc(c),Za(Zu(i),void 0,64)),fo.set(o,6)):fo.set(o,2),!1;const t=WU(r_(c,306)).value,r=WU(r_(e,306)).value;if(t!==r){const s="string"==typeof t,a="string"==typeof r;if(void 0!==t&&void 0!==r){if(n){const c=s?`"${Ry(t)}"`:t,l=a?`"${Ry(r)}"`:r;n(ws.Each_declaration_of_0_1_differs_in_its_value_where_2_was_expected_but_3_was_given,Cc(i),Cc(e),l,c),fo.set(o,6)}else fo.set(o,2);return!1}if(s||a){if(n){const s=t??r;Tn.assert("string"==typeof s);const a=`"${Ry(s)}"`;n(ws.One_value_of_0_1_is_the_string_2_and_the_other_is_assumed_to_be_an_unknown_numeric_value,Cc(i),Cc(e),a),fo.set(o,6)}else fo.set(o,2);return!1}}}return fo.set(o,1),!0}function kT(e,t,n,r){const i=e.flags,o=t.flags;if(1&o||131072&i||e===wt)return!0;if(2&o&&!(n===lo&&1&i))return!0;if(131072&o)return!1;if(402653316&i&&4&o)return!0;if(128&i&&1024&i&&128&o&&!(1024&o)&&e.value===t.value)return!0;if(296&i&&8&o)return!0;if(256&i&&1024&i&&256&o&&!(1024&o)&&e.value===t.value)return!0;if(2112&i&&64&o)return!0;if(528&i&&16&o)return!0;if(12288&i&&4096&o)return!0;if(32&i&&32&o&&e.symbol.escapedName===t.symbol.escapedName&&wT(e.symbol,t.symbol,r))return!0;if(1024&i&&1024&o){if(1048576&i&&1048576&o&&wT(e.symbol,t.symbol,r))return!0;if(2944&i&&2944&o&&e.value===t.value&&wT(e.symbol,t.symbol,r))return!0}if(32768&i&&(!K&&!(3145728&o)||49152&o))return!0;if(65536&i&&(!K&&!(3145728&o)||65536&o))return!0;if(524288&i&&67108864&o&&(n!==lo||!bT(e)||8192&Mx(e)))return!0;if(n===uo||n===_o){if(1&i)return!0;if(8&i&&(32&o||256&o&&1024&o))return!0;if(256&i&&!(1024&i)&&(32&o||256&o&&1024&o&&e.value===t.value))return!0;if(function(e){if(K&&1048576&e.flags){if(!(33554432&e.objectFlags)){const t=e.types;e.objectFlags|=33554432|(t.length>=3&&32768&t[0].flags&&65536&t[1].flags&&$(t,bT)?67108864:0)}return!!(67108864&e.objectFlags)}return!1}(t))return!0}return!1}function ET(e,t,n){if(Cx(e)&&(e=e.regularType),Cx(t)&&(t=t.regularType),e===t)return!0;if(n!==po){if(n===_o&&!(131072&t.flags)&&kT(t,e,n)||kT(e,t,n))return!0}else if(!(61865984&(e.flags|t.flags))){if(e.flags!==t.flags)return!1;if(67358815&e.flags)return!0}if(524288&e.flags&&524288&t.flags){const r=n.get(WT(e,t,0,n,!1));if(void 0!==r)return!!(1&r)}return!!(469499904&e.flags||469499904&t.flags)&&DT(e,t,n,void 0)}function CT(e,t){return 2048&Mx(e)&&SP(t.escapedName)}function NT(e,t){for(;;){const n=Cx(e)?e.regularType:rk(e)?IT(e,t):4&Mx(e)?e.node?Wh(e.target,rg(e)):fw(e)||e:3145728&e.flags?AT(e,t):33554432&e.flags?t?e.baseType:Bg(e):25165824&e.flags?Jb(e,t):e;if(n===e)return n;e=n}}function AT(e,t){const n=Jp(e);if(n!==e)return n;if(2097152&e.flags&&function(e){let t=!1,n=!1;for(const r of e.types)if(t||(t=!!(465829888&r.flags)),n||(n=!!(98304&r.flags)||bT(r)),t&&n)return!0;return!1}(e)){const n=j(e.types,(e=>NT(e,t)));if(n!==e.types)return Mv(n)}return e}function IT(e,t){const n=iv(e),r=j(n,(e=>25165824&e.flags?Jb(e,t):e));return n!==r?$y(e.target,r):e}function DT(e,t,n,i,o,s,a){var c;let l,u,d,p,f,h,g,y,v=0,b=0,x=0,S=0,T=!1,w=0,k=0,C=16e6-n.size>>3;Tn.assert(n!==po||!i,"no error reporting in identity checking");const I=V(e,t,3,!!i,o);if(y&&O(),T){const o=WT(e,t,0,n,!1);n.set(o,6),null==(c=ar)||c.instant(ar.Phase.CheckTypes,"checkTypeRelatedTo_DepthLimit",{sourceId:e.id,targetId:t.id,depth:b,targetDepth:x});const s=C<=0?ws.Excessive_complexity_comparing_types_0_and_1:ws.Excessive_stack_depth_comparing_types_0_and_1,l=wo(i||r,s,Za(e),Za(t));a&&(a.errors||(a.errors=[])).push(l)}else if(l){if(s){const e=s();e&&(yS(e,l),l=e)}let r;if(o&&i&&!I&&e.symbol){const i=Go(e.symbol);if(i.originatingImport&&!mf(i.originatingImport)){if(DT($l(i.target),t,n,void 0)){r=_e(r,Vp(i.originatingImport,ws.Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cause_a_failure_at_runtime_Consider_using_a_default_import_or_import_require_here_instead))}}}const c=Wp(C_(i),i,l,r);u&&xw(c,...u),a&&(a.errors||(a.errors=[])).push(c),a&&a.skipLogging||oo.add(c)}return i&&a&&a.skipLogging&&0===I&&Tn.assert(!!a.errors,"missed opportunity to interact with error."),0!==I;function D(e){l=e.errorInfo,g=e.lastSkippedInfo,y=e.incompatibleStack,w=e.overrideNextErrorInfo,k=e.skipParentCounter,u=e.relatedInfo}function P(){return{errorInfo:l,lastSkippedInfo:g,incompatibleStack:null==y?void 0:y.slice(),overrideNextErrorInfo:w,skipParentCounter:k,relatedInfo:null==u?void 0:u.slice()}}function M(e,...t){w++,g=void 0,(y||(y=[])).push([e,...t])}function O(){const e=y||[];y=void 0;const t=g;if(g=void 0,1===e.length)return F(...e[0]),void(t&&U(void 0,...t));let n="";const r=[];for(;e.length;){const[t,...i]=e.pop();switch(t.code){case ws.Types_of_property_0_are_incompatible.code:{0===n.indexOf("new ")&&(n=`(${n})`);const e=""+i[0];n=0===n.length?`${e}`:Aa(e,MS(N))?`${n}.${e}`:"["===e[0]&&"]"===e[e.length-1]?`${n}${e}`:`${n}[${e}]`;break}case ws.Call_signature_return_types_0_and_1_are_incompatible.code:case ws.Construct_signature_return_types_0_and_1_are_incompatible.code:case ws.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code:case ws.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code:if(0===n.length){let e=t;t.code===ws.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code?e=ws.Call_signature_return_types_0_and_1_are_incompatible:t.code===ws.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code&&(e=ws.Construct_signature_return_types_0_and_1_are_incompatible),r.unshift([e,i[0],i[1]])}else{n=`${t.code===ws.Construct_signature_return_types_0_and_1_are_incompatible.code||t.code===ws.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code?"new ":""}${n}(${t.code===ws.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code||t.code===ws.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code?"":"..."})`}break;case ws.Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target.code:r.unshift([ws.Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target,i[0],i[1]]);break;case ws.Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target.code:r.unshift([ws.Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target,i[0],i[1],i[2]]);break;default:return Tn.fail(`Unhandled Diagnostic: ${t.code}`)}}n?F(")"===n[n.length-1]?ws.The_types_returned_by_0_are_incompatible_between_these_types:ws.The_types_of_0_are_incompatible_between_these_types,n):r.shift();for(const[i,...o]of r){const e=i.elidedInCompatabilityPyramid;i.elidedInCompatabilityPyramid=!1,F(i,...o),i.elidedInCompatabilityPyramid=e}t&&U(void 0,...t)}function F(e,...t){Tn.assert(!!i),y&&O(),e.elidedInCompatabilityPyramid||(0===k?l=gS(l,e,...t):k--)}function L(e,...t){F(e,...t),k++}function z(e){Tn.assert(!!l),u?u.push(e):u=[e]}function U(e,t,r){y&&O();const[i,o]=Xa(t,r);let s=t,a=i;zw(t)&&!PT(r)&&(s=qw(t),Tn.assert(!WS(s,r),"generalized source shouldn't be assignable"),a=$a(s));if(262144&(8388608&r.flags&&!(8388608&t.flags)?r.objectType.flags:r.flags)&&r!==Un&&r!==Bn){const e=cp(r);let n;e&&(WS(s,e)||(n=WS(t,e)))?F(ws._0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_constraint_2,n?i:a,o,Za(e)):(l=void 0,F(ws._0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1,o,a))}if(e)e===ws.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1&&ne&&MT(t,r).length&&(e=ws.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties);else if(n===_o)e=ws.Type_0_is_not_comparable_to_type_1;else if(i===o)e=ws.Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated;else if(ne&&MT(t,r).length)e=ws.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties;else{if(128&t.flags&&1048576&r.flags){const e=function(e,t){const n=t.types.filter((e=>!!(128&e.flags)));return Ht(e.value,n,(e=>e.value))}(t,r);if(e)return void F(ws.Type_0_is_not_assignable_to_type_1_Did_you_mean_2,a,o,Za(e))}e=ws.Type_0_is_not_assignable_to_type_1}F(e,a,o)}function B(e,t,n){return $w(e)?e.target.readonly&&lw(t)?(n&&F(ws.The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1,Za(e),Za(t)),!1):cw(t):sw(e)&&lw(t)?(n&&F(ws.The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1,Za(e),Za(t)),!1):!$w(t)||ow(e)}function q(e,t,n){return V(e,t,3,n)}function V(e,t,r=3,o=!1,s,a=0){if(e===t)return-1;if(524288&e.flags&&402784252&t.flags)return n===_o&&!(131072&t.flags)&&kT(t,e,n)||kT(e,t,n,o?F:void 0)?-1:(o&&J(e,t,e,t,s),0);const c=NT(e,!1);let l=NT(t,!0);if(c===l)return-1;if(n===po)return c.flags!==l.flags?0:67358815&c.flags?-1:(W(c,l),te(c,l,!1,0,r));if(262144&c.flags&&Y_(c)===l)return-1;if(470302716&c.flags&&1048576&l.flags){const e=l.types,t=2===e.length&&98304&e[0].flags?e[1]:3===e.length&&98304&e[0].flags&&98304&e[1].flags?e[2]:void 0;if(t&&!(98304&t.flags)&&(l=NT(t,!0),c===l))return-1}if(n===_o&&!(131072&l.flags)&&kT(l,c,n)||kT(c,l,n,o?F:void 0))return-1;if(469499904&c.flags||469499904&l.flags){if(!(2&a)&&BE(c)&&8192&Mx(c)&&function(e,t,r){var o;if(!WP(t)||!Z&&4096&Mx(t))return!1;const s=!!(2048&Mx(e));if((n===uo||n===_o)&&(UC(Wn,t)||!s&&vT(t)))return!1;let a,c=t;1048576&t.flags&&(c=GB(e,t,V)||function(e){if(sR(e,67108864)){const t=KC(e,(e=>!(402784252&e.flags)));if(!(131072&t.flags))return t}return e}(t),a=1048576&c.flags?c.types:[c]);for(const n of Q_(e))if(G(n,e.symbol)&&!CT(e,n)){if(!JP(c,n.escapedName,s)){if(r){const t=KC(c,WP);if(!i)return Tn.fail();if(jI(i)||Pd(i)||Pd(i.parent)){n.valueDeclaration&&LI(n.valueDeclaration)&&C_(i)===C_(n.valueDeclaration.name)&&(i=n.valueDeclaration.name);const e=Qa(n),r=AM(e,t),o=r?Qa(r):void 0;o?F(ws.Property_0_does_not_exist_on_type_1_Did_you_mean_2,e,Za(t),o):F(ws.Property_0_does_not_exist_on_type_1,e,Za(t))}else{const r=(null==(o=e.symbol)?void 0:o.declarations)&&we(e.symbol.declarations);let s;if(n.valueDeclaration&&bc(n.valueDeclaration,(e=>e===r))&&C_(r)===C_(i)){const e=n.valueDeclaration;Tn.assertNode(e,Iu);const r=e.name;i=r,YC(r)&&(s=IM(r,t))}void 0!==s?L(ws.Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_write_2,Qa(n),Za(t),s):L(ws.Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1,Qa(n),Za(t))}}return!0}if(a&&!V($l(n),H(a,n.escapedName),3,r))return r&&M(ws.Types_of_property_0_are_incompatible,Qa(n)),!0}return!1}(c,l,o))return o&&U(s,c,t.aliasSymbol?t:l),0;const u=(n!==_o||Rw(c))&&!(2&a)&&405405692&c.flags&&c!==Wn&&2621440&l.flags&<(l)&&(Q_(c).length>0||NU(c)),d=!!(2048&Mx(c));if(u&&!function(e,t,n){for(const r of Q_(e))if(JP(t,r.escapedName,n))return!0;return!1}(c,l,d)){if(o){const n=Za(e.aliasSymbol?e:c),r=Za(t.aliasSymbol?t:l),i=pf(c,0),o=pf(c,1);i.length>0&&V(wm(i[0]),l,1,!1)||o.length>0&&V(wm(o[0]),l,1,!1)?F(ws.Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it,n,r):F(ws.Type_0_has_no_properties_in_common_with_type_1,n,r)}return 0}W(c,l);const _=1048576&c.flags&&c.types.length<4&&!(1048576&l.flags)||1048576&l.flags&&l.types.length<4&&!(469499904&c.flags)?Q(c,l,o,a):te(c,l,o,a,r);if(_)return _}return o&&J(e,t,c,l,s),0}function J(e,t,n,r,o){var s,a;const c=!!fw(e),u=!!fw(t);n=e.aliasSymbol||c?e:n,r=t.aliasSymbol||u?t:r;let d=w>0;if(d&&w--,524288&n.flags&&524288&r.flags){const e=l;B(n,r,!0),l!==e&&(d=!!l)}if(524288&n.flags&&402784252&r.flags)!function(e,t){const n=ec(e.symbol)?Za(e,e.symbol.valueDeclaration):Za(e),r=ec(t.symbol)?Za(t,t.symbol.valueDeclaration):Za(t);(Xn===e&&Ut===t||$n===e&&Bt===t||er===e&&Yt===t||Ty()===e&&Zt===t)&&F(ws._0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible,r,n)}(n,r);else if(n.symbol&&524288&n.flags&&Wn===n)F(ws.The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead);else if(2048&Mx(n)&&2097152&r.flags){const e=r.types,t=NP(Pz.IntrinsicAttributes,i),n=NP(Pz.IntrinsicClassAttributes,i);if(!Mc(t)&&!Mc(n)&&(A(e,t)||A(e,n)))return}else l=uf(l,t);if(!o&&d){const e=P();let t;return U(o,n,r),l&&l!==e.errorInfo&&(t={code:l.code,messageText:l.messageText}),D(e),t&&l&&(l.canonicalHead=t),void(g=[n,r])}if(U(o,n,r),262144&n.flags&&(null==(a=null==(s=n.symbol)?void 0:s.declarations)?void 0:a[0])&&!Y_(n)){const e=oS(n);if(e.constraint=SS(r,Yx(n,e)),fp(e)){const e=Za(r,n.symbol.declarations[0]);z(Vp(n.symbol.declarations[0],ws.This_type_parameter_might_need_an_extends_0_constraint,e))}}}function W(e,t){if(ar&&3145728&e.flags&&3145728&t.flags){const n=e,r=t;if(n.objectFlags&r.objectFlags&32768)return;const o=n.types.length,s=r.types.length;o*s>1e6&&ar.instant(ar.Phase.CheckTypes,"traceUnionsOrIntersectionsTooLarge_DepthLimit",{sourceId:e.id,sourceSize:o,targetId:t.id,targetSize:s,pos:null==i?void 0:i.pos,end:null==i?void 0:i.end})}}function H(e,t){return fv(Re(e,((e,n)=>{var r;const i=3145728&(n=Np(n)).flags?Up(n,t):H_(n,t);return _e(e,i&&$l(i)||(null==(r=Cf(n,t))?void 0:r.type)||Mt)}),void 0)||_)}function G(e,t){return e.valueDeclaration&&t.valueDeclaration&&e.valueDeclaration.parent===t.valueDeclaration}function Q(e,t,r,i){if(1048576&e.flags){if(1048576&t.flags){const n=e.origin;if(n&&2097152&n.flags&&t.aliasSymbol&&A(n.types,t))return-1;const r=t.origin;if(r&&1048576&r.flags&&e.aliasSymbol&&A(r.types,e))return-1}return n===_o?ee(e,t,r&&!(402784252&e.flags),i):function(e,t,n,r){let i=-1;const o=e.types,s=function(e,t){if(1048576&e.flags&&1048576&t.flags&&!(32768&e.types[0].flags)&&32768&t.types[0].flags)return QC(t,-32769);return t}(e,t);for(let a=0;a<o.length;a++){const e=o[a];if(1048576&s.flags&&o.length>=s.types.length&&o.length%s.types.length==0){const t=V(e,s.types[a%s.types.length],3,!1,void 0,r);if(t){i&=t;continue}}const c=V(e,t,1,n,void 0,r);if(!c)return 0;i&=c}return i}(e,t,r&&!(402784252&e.flags),i)}if(1048576&t.flags)return X(Gk(e),t,r&&!(402784252&e.flags)&&!(402784252&t.flags),i);if(2097152&t.flags)return function(e,t,n,r){let i=-1;const o=t.types;for(const s of o){const t=V(e,s,2,n,void 0,r);if(!t)return 0;i&=t}return i}(e,t,r,2);if(n===_o&&402784252&t.flags){const n=j(e.types,(e=>465829888&e.flags?cp(e)||Dt:e));if(n!==e.types){if(131072&(e=Mv(n)).flags)return 0;if(!(2097152&e.flags))return V(e,t,1,!1)||V(t,e,1,!1)}}return ee(e,t,!1,1)}function Y(e,t){let n=-1;const r=e.types;for(const i of r){const e=X(i,t,!1,0);if(!e)return 0;n&=e}return n}function X(e,t,r,i){const o=t.types;if(1048576&t.flags){if(sv(o,e))return-1;if(n!==_o&&32768&Mx(t)&&!(1024&e.flags)&&(2688&e.flags||(n===co||n===lo)&&256&e.flags)){const t=e===e.regularType?e.freshType:e.regularType,n=128&e.flags?Ut:256&e.flags?Bt:2048&e.flags?qt:void 0;return n&&sv(o,n)||t&&sv(o,t)?-1:0}const r=uC(t,e);if(r){const t=V(e,r,2,!1,void 0,i);if(t)return t}}for(const n of o){const t=V(e,n,2,!1,void 0,i);if(t)return t}if(r){const n=FT(e,t,V);n&&V(e,n,2,!0,void 0,i)}return 0}function ee(e,t,n,r){const i=e.types;if(1048576&e.flags&&sv(i,t))return-1;const o=i.length;for(let s=0;s<o;s++){const e=V(i[s],t,1,n&&s===o-1,void 0,r);if(e)return e}return 0}function te(e,t,r,i,o){var s,a,c;if(T)return 0;const u=WT(e,t,i,n,!1),m=n.get(u);if(void 0!==m&&(!(r&&2&m)||4&m)){if(Gt){const t=24&m;8&t&&SS(e,kn),16&t&&SS(e,wn)}return 1&m?-1:0}if(C<=0)return T=!0,0;if(d){if(p.has(u))return 3;const r=u.startsWith("*")?WT(e,t,i,n,!0):void 0;if(r&&p.has(r))return 3;if(100===b||100===x)return T=!0,0}else d=[],p=new Set,f=[],h=[];const g=v;d[v]=u,p.add(u),v++;const y=S;let w;1&o&&(f[b]=e,b++,1&S||!ZT(e,f,b)||(S|=1)),2&o&&(h[x]=t,x++,2&S||!ZT(t,h,x)||(S|=2));let k,E=0;return Gt&&(w=Gt,Gt=e=>(E|=e?16:8,w(e))),3===S?(null==(s=ar)||s.instant(ar.Phase.CheckTypes,"recursiveTypeRelatedTo_DepthLimit",{sourceId:e.id,sourceIdStack:f.map((e=>e.id)),targetId:t.id,targetIdStack:h.map((e=>e.id)),depth:b,targetDepth:x}),k=3):(null==(a=ar)||a.push(ar.Phase.CheckTypes,"structuredTypeRelatedTo",{sourceId:e.id,targetId:t.id}),k=function(e,t,r,i){const o=P();let s=function(e,t,r,i,o){let s,a,c=!1,u=e.flags;const d=t.flags;if(n===po){if(3145728&u){let n=Y(e,t);return n&&(n&=Y(t,e)),n}if(4194304&u)return V(e.type,t.type,3,!1);if(8388608&u&&(s=V(e.objectType,t.objectType,3,!1))&&(s&=V(e.indexType,t.indexType,3,!1)))return s;if(16777216&u&&e.root.isDistributive===t.root.isDistributive&&(s=V(e.checkType,t.checkType,3,!1))&&(s&=V(e.extendsType,t.extendsType,3,!1))&&(s&=V(ix(e),ix(t),3,!1))&&(s&=V(ox(e),ox(t),3,!1)))return s;if(33554432&u&&(s=V(e.baseType,t.baseType,3,!1))&&(s&=V(e.constraint,t.constraint,3,!1)))return s;if(!(524288&u))return 0}else if(3145728&u||3145728&d){if(s=Q(e,t,r,i))return s;if(!(465829888&u||524288&u&&1048576&d||2097152&u&&467402752&d))return 0}if(17301504&u&&e.aliasSymbol&&e.aliasTypeArguments&&e.aliasSymbol===t.aliasSymbol&&!qT(e)&&!qT(t)){const n=zT(e.aliasSymbol);if(n===_)return 1;const r=Go(e.aliasSymbol).typeParameters,o=Wf(r),s=y(Zf(e.aliasTypeArguments,r,o,Um(e.aliasSymbol.valueDeclaration)),Zf(t.aliasTypeArguments,r,o,Um(e.aliasSymbol.valueDeclaration)),n,i);if(void 0!==s)return s}if(ik(e)&&!e.target.readonly&&(s=V(rg(e)[0],t,1))||ik(t)&&(t.target.readonly||lw(cp(e)||e))&&(s=V(e,rg(t)[0],2)))return s;if(262144&d){if(32&Mx(e)&&!e.declaration.nameType&&V(sb(t),P_(e),3)&&!(4&U_(e))){const n=O_(e),i=Qb(t,D_(e));if(s=V(n,i,3,r))return s}if(n===_o&&262144&u){let n=Z_(e);if(n)for(;n&&qC(n,(e=>!!(262144&e.flags)));){if(s=V(n,t,1,!1))return s;n=Z_(n)}return 0}}else if(4194304&d){const n=t.type;if(4194304&u&&(s=V(n,e.type,3,!1)))return s;if($w(n)){if(s=V(e,tv(n),2,r))return s}else{const i=$_(n);if(i){if(-1===V(e,sb(i,4|t.indexFlags),2,r))return-1}else if(V_(n)){const t=M_(n),i=P_(n);let o;if(t&&j_(n)){o=fv([re(t,n),t])}else o=t||i;if(-1===V(e,o,2,r))return-1}}}else if(8388608&d){if(8388608&u){if((s=V(e.objectType,t.objectType,3,r))&&(s&=V(e.indexType,t.indexType,3,r)),s)return s;r&&(a=l)}if(n===uo||n===_o){const n=t.objectType,c=t.indexType,u=cp(n)||n,d=cp(c)||c;if(!qb(u)&&!Vb(d)){const t=Zb(u,d,4|(u!==n?2:0));if(t){if(r&&a&&D(o),s=V(e,t,2,r,void 0,i))return s;r&&a&&l&&(l=g([a])<=g([l])?a:l)}}}r&&(a=void 0)}else if(V_(t)&&n!==po){const n=!!t.declaration.nameType,i=O_(t),c=U_(t);if(!(8&c)){if(!n&&8388608&i.flags&&i.objectType===e&&i.indexType===D_(t))return-1;if(!V_(e)){const i=n?M_(t):P_(t),u=sb(e,2),d=4&c,_=d?l_(i,u):void 0;if(d?!(131072&_.flags):V(i,u,3)){const o=O_(t),a=D_(t),c=QC(o,-98305);if(!n&&8388608&c.flags&&c.indexType===a){if(s=V(e,c.objectType,2,r))return s}else{const t=Qb(e,n?_||i:_?Mv([_,a]):a);if(s=V(t,o,3,r))return s}}a=l,D(o)}}}else if(16777216&d){if(ZT(t,h,x,10))return 3;const n=t;if(!(n.root.inferTypeParameters||(p=n.root,p.isDistributive&&(uS(p.checkType,p.node.trueType)||uS(p.checkType,p.node.falseType)))||16777216&e.flags&&e.root===n.root)){const t=!WS(wS(n.checkType),wS(n.extendsType)),r=!t&&WS(kS(n.checkType),kS(n.extendsType));if((s=t?-1:V(e,ix(n),2,!1,void 0,i))&&(s&=r?-1:V(e,ox(n),2,!1,void 0,i),s))return s}}else if(134217728&d){if(134217728&u){if(n===_o)return function(e,t){const n=e.texts[0],r=t.texts[0],i=e.texts[e.texts.length-1],o=t.texts[t.texts.length-1],s=Math.min(n.length,r.length),a=Math.min(i.length,o.length);return n.slice(0,s)!==r.slice(0,s)||i.slice(i.length-a)!==o.slice(o.length-a)}(e,t)?0:-1;SS(e,wn)}if(RE(e,t))return-1}else if(268435456&t.flags&&!(268435456&e.flags)&&ME(e,t))return-1;var p;if(8650752&u){if(!(8388608&u&&8388608&d)){const n=Y_(e)||Dt;if(s=V(n,t,1,!1,void 0,i))return s;if(s=V(Cd(n,e),t,1,r&&n!==Dt&&!(d&u&262144),void 0,i))return s;if(Cp(e)){const n=Y_(e.indexType);if(n&&(s=V(Qb(e.objectType,n),t,1,r)))return s}}}else if(4194304&u){const n=ob(e.type,e.indexFlags)&&32&Mx(e.type);if(s=V(un,t,1,r&&!n))return s;if(n){const n=e.type,i=M_(n),o=i&&j_(n)?re(i,n):i||P_(n);if(s=V(o,t,1,r))return s}}else if(134217728&u&&!(524288&d)){if(!(134217728&d)){const n=cp(e);if(n&&n!==e&&(s=V(n,t,1,r)))return s}}else if(268435456&u)if(268435456&d){if(e.symbol!==t.symbol)return 0;if(s=V(e.type,t.type,3,r))return s}else{const n=cp(e);if(n&&(s=V(n,t,1,r)))return s}else if(16777216&u){if(ZT(e,f,b,10))return 3;if(16777216&d){const n=e.root.inferTypeParameters;let i,o=e.extendsType;if(n){const e=lE(n,void 0,0,q);jE(e.inferences,t.extendsType,o,1536),o=SS(o,e.mapper),i=e.mapper}if(DS(o,t.extendsType)&&(V(e.checkType,t.checkType,3)||V(t.checkType,e.checkType,3))&&((s=V(SS(ix(e),i),ix(t),3,r))&&(s&=V(ox(e),ox(t),3,r)),s))return s}const n=tp(e);if(n&&(s=V(n,t,1,r)))return s;const i=16777216&d||!fp(e)?void 0:ip(e);if(i&&(D(o),s=V(i,t,1,r)))return s}else{if(n!==co&&n!==lo&&(32&Mx(m=t)&&4&U_(m))&&vT(e))return-1;if(V_(t))return V_(e)&&(s=function(e,t,r){const i=n===_o||(n===po?U_(e)===U_(t):q_(e)<=q_(t));if(i){let n;if(n=V(P_(t),SS(P_(e),q_(e)<0?kn:wn),3,r)){const i=Gx([D_(e)],[D_(t)]);if(SS(M_(e),i)===SS(M_(t),i))return n&V(SS(O_(e),i),O_(t),3,r)}}return 0}(e,t,r))?s:0;const p=!!(402784252&u);if(n!==po)u=(e=Np(e)).flags;else if(V_(e))return 0;if(4&Mx(e)&&4&Mx(t)&&e.target===t.target&&!$w(e)&&!qT(e)&&!qT(t)){if(yw(e))return-1;const n=jT(e.target);if(n===_)return 1;const r=y(rg(e),rg(t),n,i);if(void 0!==r)return r}else{if(sw(t)?VC(e,cw):ow(t)&&VC(e,(e=>$w(e)&&!e.target.readonly)))return n!==po?V(wf(e,Bt)||St,wf(t,Bt)||St,3,r):0;if(rk(e)&&$w(t)&&!rk(t)){const n=lp(e);if(n!==e)return V(n,t,1,r)}else if((n===co||n===lo)&&vT(t)&&8192&Mx(t)&&!vT(e))return 0}if(2621440&u&&524288&d){const n=r&&l===o.errorInfo&&!p;if(s=se(e,t,n,void 0,!1,i),s&&(s&=ae(e,t,0,n,i),s&&(s&=ae(e,t,1,n,i),s&&(s&=pe(e,t,p,n,i)))),c&&s)l=a||l||o.errorInfo;else if(s)return s}if(2621440&u&&1048576&d){const r=QC(t,36175872);if(1048576&r.flags){const t=function(e,t){var r;const i=Q_(e),o=aC(i,t);if(!o)return 0;let s=1;for(const n of o)if(s*=WC(eu(n)),s>25)return null==(r=ar)||r.instant(ar.Phase.CheckTypes,"typeRelatedToDiscriminatedType_DepthLimit",{sourceId:e.id,targetId:t.id,numCombinations:s}),0;const a=new Array(o.length),c=new Set;for(let n=0;n<o.length;n++){const e=o[n],t=eu(e);a[n]=1048576&t.flags?t.types:[t],c.add(e.escapedName)}const l=yn(a),u=[];for(const _ of l){let r=!1;e:for(const i of t.types){for(let r=0;r<o.length;r++){const s=o[r],a=df(i,s.escapedName);if(!a)continue e;if(s===a)continue;if(!oe(e,t,s,a,(e=>_[r]),!1,0,K||n===_o))continue e}he(u,i,Nt),r=!0}if(!r)return 0}let d=-1;for(const n of u)if(d&=se(e,n,!1,c,!1,0),d&&(d&=ae(e,n,0,!1,0),d&&(d&=ae(e,n,1,!1,0),!d||$w(e)&&$w(n)||(d&=pe(e,n,!1,!1,0)))),!d)return d;return d}(e,r);if(t)return t}}}var m;return 0;function g(e){return e?Re(e,((e,t)=>e+1+g(t.next)),0):0}function y(e,t,i,u){if(s=function(e=_,t=_,r=_,i,o){if(e.length!==t.length&&n===po)return 0;const s=e.length<=t.length?e.length:t.length;let a=-1;for(let c=0;c<s;c++){const s=c<r.length?r[c]:1,l=7&s;if(4!==l){const r=e[c],u=t[c];let d=-1;if(8&s?d=n===po?V(r,u,3,!1):PS(r,u):1===l?d=V(r,u,3,i,void 0,o):2===l?d=V(u,r,3,i,void 0,o):3===l?(d=V(u,r,3,!1),d||(d=V(r,u,3,i,void 0,o))):(d=V(r,u,3,i,void 0,o),d&&(d&=V(u,r,3,i,void 0,o))),!d)return 0;a&=d}}return a}(e,t,i,r,u))return s;if($(i,(e=>!!(24&e))))return a=void 0,void D(o);const d=t&&function(e,t){for(let n=0;n<t.length;n++)if(1==(7&t[n])&&16384&e[n].flags)return!0;return!1}(t,i);if(c=!d,i!==_&&!d){if(c&&(!r||!$(i,(e=>!(7&e)))))return 0;a=l,D(o)}}}(e,t,r,i,o);if(n!==po){if(!s&&(2097152&e.flags||262144&e.flags&&1048576&t.flags)){const n=function(e,t){let n,r=!1;for(const i of e)if(465829888&i.flags){let e=Y_(i);for(;e&&21233664&e.flags;)e=Y_(e);e&&(n=_e(n,e),t&&(n=_e(n,i)))}else(469892092&i.flags||bT(i))&&(r=!0);if(n&&(t||r)){if(r)for(const t of e)(469892092&t.flags||bT(t))&&(n=_e(n,t));return NT(Mv(n,2),!1)}}(2097152&e.flags?e.types:[e],!!(1048576&t.flags));n&&VC(n,(t=>t!==e))&&(s=V(n,t,1,!1,void 0,i))}s&&!(2&i)&&2097152&t.flags&&!qb(t)&&2621440&e.flags?(s&=se(e,t,r,void 0,!1,0),s&&BE(e)&&8192&Mx(e)&&(s&=pe(e,t,!1,r,0))):s&&px(t)&&!cw(t)&&2097152&e.flags&&3670016&Np(e).flags&&!$(e.types,(e=>e===t||!!(262144&Mx(e))))&&(s&=se(e,t,r,void 0,!0,i))}s&&D(o);return s}(e,t,r,i),null==(c=ar)||c.pop()),Gt&&(Gt=w),1&o&&b--,2&o&&x--,S=y,k?(-1===k||0===b&&0===x)&&N(-1===k||3===k):(n.set(u,2|(r?4:0)|E),C--,N(!1)),k;function N(e){for(let t=g;t<v;t++)p.delete(d[t]),e&&(n.set(d[t],1|E),C--);v=g}}function re(e,t){const n=Np(z_(t)),r=[];return w_(n,8576,!1,(n=>{r.push(SS(e,iS(t.mapper,D_(t),n)))})),fv(r)}function ie(e,t){if(!t||0===e.length)return e;let n;for(let r=0;r<e.length;r++)t.has(e[r].escapedName)?n||(n=e.slice(0,r)):n&&n.push(e[r]);return n||e}function oe(e,t,r,i,o,s,a,c){const l=xx(r),u=xx(i);if(2&l||2&u){if(r.valueDeclaration!==i.valueDeclaration)return s&&(2&l&&2&u?F(ws.Types_have_separate_declarations_of_a_private_property_0,Qa(i)):F(ws.Property_0_is_private_in_type_1_but_not_in_type_2,Qa(i),Za(2&l?e:t),Za(2&l?t:e))),0}else if(4&u){if(!function(e,t){return!HT(t,(t=>{return!!(4&xx(t))&&(n=e,r=GT(t),!HT(n,(e=>{const t=GT(e);return!!t&&su(t,r)})));var n,r}))}(r,i))return s&&F(ws.Property_0_is_protected_but_type_1_is_not_a_class_derived_from_2,Qa(i),Za(GT(r)||e),Za(GT(i)||t)),0}else if(4&l)return s&&F(ws.Property_0_is_protected_in_type_1_but_public_in_type_2,Qa(i),Za(e),Za(t)),0;if(n===lo&&$F(r)&&!$F(i))return 0;const d=function(e,t,n,r,i){const o=K&&!!(48&bx(t)),s=Xc(eu(t),!1,o);return V(n(e),s,3,r,void 0,i)}(r,i,o,s,a);return d?!c&&16777216&r.flags&&106500&i.flags&&!(16777216&i.flags)?(s&&F(ws.Property_0_is_optional_in_type_1_but_required_in_type_2,Qa(i),Za(e),Za(t)),0):d:(s&&M(ws.Types_of_property_0_are_incompatible,Qa(i)),0)}function se(e,t,r,i,s,a){if(n===po)return function(e,t,n){if(!(524288&e.flags&&524288&t.flags))return 0;const r=ie(W_(e),n),i=ie(W_(t),n);if(r.length!==i.length)return 0;let o=-1;for(const s of r){const e=H_(t,s.escapedName);if(!e)return 0;const n=tw(s,e,V);if(!n)return 0;o&=n}return o}(e,t,i);let c=-1;if($w(t)){if(cw(e)){if(!t.target.readonly&&(sw(e)||$w(e)&&e.target.readonly))return 0;const n=ag(e),o=ag(t),s=$w(e)?4&e.target.combinedFlags:4,l=4&t.target.combinedFlags,u=$w(e)?e.target.minLength:0,d=t.target.minLength;if(!s&&n<d)return r&&F(ws.Source_has_0_element_s_but_target_requires_1,n,d),0;if(!l&&o<u)return r&&F(ws.Source_has_0_element_s_but_target_allows_only_1,u,o),0;if(!l&&(s||o<n))return r&&(u<d?F(ws.Target_requires_0_element_s_but_source_may_have_fewer,d):F(ws.Target_allows_only_0_element_s_but_source_may_have_more,o)),0;const _=rg(e),p=rg(t),f=function(e,t){const n=E(e.elementFlags,(e=>!(e&t)));return n>=0?n:e.elementFlags.length}(t.target,11),m=nv(t.target,11),h=t.target.hasRestElement;let g=!!i;for(let y=0;y<n;y++){const s=$w(e)?e.target.elementFlags[y]:4,l=n-1-y,u=h&&y>=f?o-1-Math.min(l,m):y,d=t.target.elementFlags[u];if(8&d&&!(8&s))return r&&F(ws.Source_provides_no_match_for_variadic_element_at_position_0_in_target,u),0;if(8&s&&!(12&d))return r&&F(ws.Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target,y,u),0;if(1&d&&!(1&s))return r&&F(ws.Source_provides_no_match_for_required_element_at_position_0_in_target,u),0;if(g&&((12&s||12&d)&&(g=!1),g&&(null==i?void 0:i.has(""+y))))continue;const v=Vk(_[y],!!(s&d&2)),b=p[u],x=V(v,8&s&&4&d?jy(b):Vk(b,!!(2&d)),3,r,void 0,a);if(!x)return r&&(o>1||n>1)&&(h&&y>=f&&l>=m&&f!==n-m-1?M(ws.Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target,f,n-m-1,u):M(ws.Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target,y,u)),0;c&=x}return c}if(12&t.target.combinedFlags)return 0}const u=!(n!==co&&n!==lo||BE(e)||yw(e)||$w(e)),d=CE(e,t,u,!1);if(d)return r&&function(e,t){const n=_f(e,0),r=_f(e,1),i=W_(e);if((n.length||r.length)&&!i.length)return!!(pf(t,0).length&&n.length||pf(t,1).length&&r.length);return!0}(e,t)&&function(e,t,n,r){let i=!1;if(n.valueDeclaration&&Pc(n.valueDeclaration)&&ZC(n.valueDeclaration.name)&&e.symbol&&32&e.symbol.flags){const r=n.valueDeclaration.name.escapedText,i=ny(e.symbol,r);if(i&&df(e,i)){const n=oE.getDeclarationName(e.symbol.valueDeclaration),i=oE.getDeclarationName(t.symbol.valueDeclaration);return void F(ws.Property_0_in_type_1_refers_to_a_different_member_that_cannot_be_accessed_from_within_type_2,rs(r),rs(""===n.escapedText?Fz:n),rs(""===i.escapedText?Fz:i))}}const s=Ke(EE(e,t,r,!1));if((!o||o.code!==ws.Class_0_incorrectly_implements_interface_1.code&&o.code!==ws.Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass.code)&&(i=!0),1===s.length){const r=Qa(n,void 0,0,20);F(ws.Property_0_is_missing_in_type_1_but_required_in_type_2,r,...Xa(e,t)),m(n.declarations)&&z(Vp(n.declarations[0],ws._0_is_declared_here,r)),i&&l&&w++}else B(e,t,!1)&&(s.length>5?F(ws.Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more,Za(e),Za(t),R(s.slice(0,4),(e=>Qa(e))).join(", "),s.length-4):F(ws.Type_0_is_missing_the_following_properties_from_type_1_Colon_2,Za(e),Za(t),R(s,(e=>Qa(e))).join(", ")),i&&l&&w++)}(e,t,d,u),0;if(BE(t))for(const n of ie(Q_(e),i))if(!H_(t,n.escapedName)){if(!(32768&$l(n).flags))return r&&F(ws.Property_0_does_not_exist_on_type_1,Qa(n),Za(t)),0}const _=Q_(t),p=$w(e)&&$w(t);for(const o of ie(_,i)){const i=o.escapedName;if(!(4194304&o.flags)&&(!p||ek(i)||"length"===i)&&(!s||16777216&o.flags)){const s=df(e,i);if(s&&s!==o){const i=oe(e,t,s,o,eu,r,a,n===_o);if(!i)return 0;c&=i}}}return c}function ae(e,t,r,i,o){var s,a;if(n===po)return function(e,t,n){const r=pf(e,n),i=pf(t,n);if(r.length!==i.length)return 0;let o=-1;for(let s=0;s<r.length;s++){const e=nw(r[s],i[s],!1,!1,!1,V);if(!e)return 0;o&=e}return o}(e,t,r);if(t===Mn||e===Mn)return-1;const c=e.symbol&&zO(e.symbol.valueDeclaration),l=t.symbol&&zO(t.symbol.valueDeclaration),u=pf(e,c&&1===r?0:r),d=pf(t,l&&1===r?0:r);if(1===r&&u.length&&d.length){const e=!!(4&u[0].flags),t=!!(4&d[0].flags);if(e&&!t)return i&&F(ws.Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type),0;if(!function(e,t,n){if(!e.declaration||!t.declaration)return!0;const r=$v(e.declaration,6),i=$v(t.declaration,6);if(2===i)return!0;if(4===i&&2!==r)return!0;if(4!==i&&!r)return!0;n&&F(ws.Cannot_assign_a_0_constructor_type_to_a_1_constructor_type,ic(r),ic(i));return!1}(u[0],d[0],i))return 0}let _=-1;const p=1===r?le:ce,f=Mx(e),m=Mx(t);if(64&f&&64&m&&e.symbol===t.symbol||4&f&&4&m&&e.target===t.target){Tn.assertEqual(u.length,d.length);for(let e=0;e<d.length;e++){const t=ue(u[e],d[e],!0,i,o,p(u[e],d[e]));if(!t)return 0;_&=t}}else if(1===u.length&&1===d.length){const e=n===_o,t=Ee(u),c=Ee(d);if(_=ue(t,c,e,i,o,p(t,c)),!_&&i&&1===r&&f&m&&(176===(null==(s=c.declaration)?void 0:s.kind)||176===(null==(a=t.declaration)?void 0:a.kind))){const e=e=>Ya(e,void 0,262144,r);return F(ws.Type_0_is_not_assignable_to_type_1,e(t),e(c)),F(ws.Types_of_construct_signatures_are_incompatible),_}}else e:for(const n of d){const t=P();let s=i;for(const e of u){const r=ue(e,n,!0,s,o,p(e,n));if(r){_&=r,D(t);continue e}s=!1}return s&&F(ws.Type_0_provides_no_match_for_the_signature_1,Za(e),Ya(n,void 0,void 0,r)),0}return _}function ce(e,t){return 0===e.parameters.length&&0===t.parameters.length?(e,t)=>M(ws.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1,Za(e),Za(t)):(e,t)=>M(ws.Call_signature_return_types_0_and_1_are_incompatible,Za(e),Za(t))}function le(e,t){return 0===e.parameters.length&&0===t.parameters.length?(e,t)=>M(ws.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1,Za(e),Za(t)):(e,t)=>M(ws.Construct_signature_return_types_0_and_1_are_incompatible,Za(e),Za(t))}function ue(e,t,r,i,o,s){const a=n===co?16:n===lo?24:0;return hT(r?Ym(e):e,r?Ym(t):t,a,i,F,s,(function(e,t,n){return V(e,t,3,n,void 0,o)}),wn)}function de(e,t,n,r){const i=V(e.type,t.type,3,n,void 0,r);return!i&&n&&(e.keyType===t.keyType?F(ws._0_index_signatures_are_incompatible,Za(e.keyType)):F(ws._0_and_1_index_signatures_are_incompatible,Za(e.keyType),Za(t.keyType))),i}function pe(e,t,r,i,o){if(n===po)return function(e,t){const n=Sf(e),r=Sf(t);if(n.length!==r.length)return 0;for(const i of r){const t=Tf(e,i.keyType);if(!t||!V(t.type,i.type,3)||t.isReadonly!==i.isReadonly)return 0}return-1}(e,t);const s=Sf(t),a=$(s,(e=>e.keyType===Ut));let c=-1;for(const l of s){const t=n!==lo&&!r&&a&&1&l.type.flags?-1:V_(e)&&a?V(O_(e),l.type,3,i):fe(e,l,i,o);if(!t)return 0;c&=t}return c}function fe(e,t,r,i){const o=Ef(e,t.keyType);return o?de(o,t,r,i):1&i||!(n!==lo||8192&Mx(e))||!Wk(e)?(r&&F(ws.Index_signature_for_type_0_is_missing_in_type_1,Za(t.keyType),Za(e)),0):function(e,t,n,r){let i=-1;const o=t.keyType,s=2097152&e.flags?G_(e):W_(e);for(const a of s)if(!CT(e,a)&&bf(tb(a,8576),o)){const e=eu(a),s=V(ne||32768&e.flags||o===Bt||!(16777216&a.flags)?e:vC(e,524288),t.type,3,n,void 0,r);if(!s)return n&&F(ws.Property_0_is_incompatible_with_index_signature,Qa(a)),0;i&=s}for(const a of Sf(e))if(bf(a.keyType,o)){const e=de(a,t,n,r);if(!e)return 0;i&=e}return i}(e,t,r,i)}}function PT(e){if(16&e.flags)return!1;if(3145728&e.flags)return!!h(e.types,PT);if(465829888&e.flags){const t=Y_(e);if(t&&t!==e)return PT(t)}return Rw(e)||!!(134217728&e.flags)||!!(268435456&e.flags)}function MT(e,t){return $w(e)&&$w(t)?_:Q_(t).filter((t=>OT(Nc(e,t.escapedName),$l(t))))}function OT(e,t){return!!e&&!!t&&sR(e,32768)&&!!Kk(t)}function FT(e,t,n=RS){return GB(e,t,n)||function(e,t){const n=Mx(e);if(20&n&&1048576&t.flags)return w(t.types,(t=>{if(524288&t.flags){const r=n&Mx(t);if(4&r)return e.target===t.target;if(16&r)return!!e.aliasSymbol&&e.aliasSymbol===t.aliasSymbol}return!1}))}(e,t)||function(e,t){if(128&Mx(e)&&qC(t,dw))return w(t.types,(e=>!dw(e)))}(e,t)||function(e,t){let n=0;const r=pf(e,n).length>0||(n=1,pf(e,n).length>0);if(r)return w(t.types,(e=>pf(e,n).length>0))}(e,t)||function(e,t){let n;if(!(406978556&e.flags)){let r=0;for(const i of t.types)if(!(406978556&i.flags)){const t=Mv([sb(e),sb(i)]);if(4194304&t.flags)return i;if(Rw(t)||1048576&t.flags){const e=1048576&t.flags?P(t.types,Rw):1;e>=r&&(n=i,r=e)}}}return n}(e,t)}function RT(e,t,n){const r=e.types,i=r.map((e=>402784252&e.flags?0:-1));for(const[s,a]of t){let e=!1;for(let t=0;t<r.length;t++)if(i[t]){const o=Ac(r[t],a);o&&n(s(),o)?e=!0:i[t]=3}for(let t=0;t<r.length;t++)3===i[t]&&(i[t]=e?0:-1)}const o=A(i,0)?fv(r.filter(((e,t)=>i[t])),0):e;return 131072&o.flags?e:o}function LT(e){if(524288&e.flags){const t=J_(e);return 0===t.callSignatures.length&&0===t.constructSignatures.length&&0===t.indexInfos.length&&t.properties.length>0&&T(t.properties,(e=>!!(16777216&e.flags)))}return 33554432&e.flags?LT(e.baseType):!!(2097152&e.flags)&&T(e.types,LT)}function jT(e){return e===Yn||e===Zn||8&e.objectFlags?S:UT(e.symbol,e.typeParameters)}function zT(e){return UT(e,Go(e).typeParameters)}function UT(e,t=_){var n,r;const i=Go(e);if(!i.variances){null==(n=ar)||n.push(ar.Phase.CheckTypes,"getVariancesWorker",{arity:t.length,id:ov(Zu(e))});const o=Ri,s=Fi;Ri||(Ri=!0,Fi=Pi.length),i.variances=_;const a=[];for(const n of t){const t=VT(n);let r=16384&t?8192&t?0:1:8192&t?2:void 0;if(void 0===r){let t=!1,i=!1;const o=Gt;Gt=e=>e?i=!0:t=!0;const s=BT(e,n,Ln),a=BT(e,n,jn);r=(WS(a,s)?1:0)|(WS(s,a)?2:0),3===r&&WS(BT(e,n,zn),s)&&(r=4),Gt=o,(t||i)&&(t&&(r|=8),i&&(r|=16))}a.push(r)}o||(Ri=!1,Fi=s),i.variances=a,null==(r=ar)||r.pop({variances:a.map(Tn.formatVariance)})}return i.variances}function BT(e,t,n){const r=Yx(t,n),i=Zu(e);if(Mc(i))return i;const o=524288&e.flags?yg(e,Jx(Go(e).typeParameters,r)):Wh(i,Jx(i.typeParameters,r));return ht.add(ov(o)),o}function qT(e){return ht.has(ov(e))}function VT(e){var t;return 28672&Re(null==(t=e.symbol)?void 0:t.declarations,((e,t)=>e|nb(t)),0)}function KT(e){return 262144&e.flags&&!Z_(e)}function JT(e){return function(e){return!!(4&Mx(e))&&!e.node}(e)&&$(rg(e),(e=>!!(262144&e.flags)||JT(e)))}function WT(e,t,n,r,i){if(r===po&&e.id>t.id){const n=e;e=t,t=n}const o=n?":"+n:"";return JT(e)&&JT(t)?function(e,t,n,r){const i=[];let o="";const s=c(e,0),a=c(t,0);return`${o}${s},${a}${n}`;function c(e,t=0){let n=""+e.target.id;for(const s of rg(e)){if(262144&s.flags){if(r||KT(s)){let e=i.indexOf(s);e<0&&(e=i.length,i.push(s)),n+="="+e;continue}o="*"}else if(t<4&&JT(s)){n+="<"+c(s,t+1)+">";continue}n+="-"+s.id}return n}}(e,t,o,i):`${e.id},${t.id}${o}`}function HT(e,t){if(!(6&bx(e)))return t(e);for(const n of e.links.containingType.types){const r=df(n,e.escapedName),i=r&&HT(r,t);if(i)return i}}function GT(e){return e.parent&&32&e.parent.flags?Zu(ca(e)):void 0}function QT(e){const t=GT(e),n=t&&Fu(t)[0];return n&&Nc(n,e.escapedName)}function YT(e,t,n){return HT(t,(t=>!!(4&xx(t,n))&&!su(e,GT(t))))?void 0:e}function ZT(e,t,n,r=3){if(n>=r){if(96&~Mx(e)||(e=XT(e)),2097152&e.flags)return $(e.types,(e=>ZT(e,t,n,r)));const i=ew(e);let o=0,s=0;for(let e=0;e<n;e++){const n=t[e];if($T(n,i)){if(n.id>=s&&(o++,o>=r))return!0;s=n.id}}}return!1}function XT(e){let t;for(;!(96&~Mx(e))&&(t=z_(e))&&(t.symbol||2097152&t.flags&&$(t.types,(e=>!!e.symbol)));)e=t;return e}function $T(e,t){return 96&~Mx(e)||(e=XT(e)),2097152&e.flags?$(e.types,(e=>$T(e,t))):ew(e)===t}function ew(e){if(524288&e.flags&&!KE(e)){if(4&Mx(e)&&e.node)return e.node;if(e.symbol&&!(16&Mx(e)&&32&e.symbol.flags))return e.symbol;if($w(e))return e.target}if(262144&e.flags)return e.symbol;if(8388608&e.flags){do{e=e.objectType}while(8388608&e.flags);return e}return 16777216&e.flags?e.root:e}function tw(e,t,n){if(e===t)return-1;const r=6&xx(e);if(r!==(6&xx(t)))return 0;if(r){if(lz(e)!==lz(t))return 0}else if((16777216&e.flags)!=(16777216&t.flags))return 0;return $F(e)!==$F(t)?0:n($l(e),$l(t))}function nw(e,t,n,r,i,o){if(e===t)return-1;if(!function(e,t,n){const r=gF(e),i=gF(t),o=yF(e),s=yF(t),a=vF(e),c=vF(t);return r===i&&o===s&&a===c||!!(n&&o<=s)}(e,t,n))return 0;if(m(e.typeParameters)!==m(t.typeParameters))return 0;if(t.typeParameters){const n=Gx(e.typeParameters,t.typeParameters);for(let r=0;r<t.typeParameters.length;r++){const i=e.typeParameters[r],s=t.typeParameters[r];if(!(i===s||o(SS(Mh(i),n)||Dt,Mh(s)||Dt)&&o(SS(Tp(i),n)||Dt,Tp(s)||Dt)))return 0}e=sS(e,n,!0)}let s=-1;if(!r){const n=fm(e);if(n){const e=fm(t);if(e){const t=o(n,e);if(!t)return 0;s&=t}}}const a=gF(t);for(let c=0;c<a;c++){const n=pF(e,c),r=o(pF(t,c),n);if(!r)return 0;s&=r}if(!i){const n=Sm(e),r=Sm(t);s&=n||r?function(e,t,n){return e&&t&&hv(e,t)?e.type===t.type?-1:e.type&&t.type?n(e.type,t.type):0:0}(n,r,o):o(wm(e),wm(t))}return s}function rw(e){return Re(e,((e,t)=>e|(1048576&t.flags?rw(t.types):t.flags)),0)}function iw(e){if(1===e.length)return e[0];const t=K?j(e,(e=>KC(e,(e=>!(98304&e.flags))))):e,n=function(e){let t;for(const n of e)if(!(131072&n.flags)){const e=qw(n);if(t??(t=e),e===n||e!==t)return!1}return!0}(t)?fv(t):Re(t,((e,t)=>BS(e,t)?t:e));return t===e?n:Fk(n,98304&rw(e))}function ow(e){return!!(4&Mx(e))&&(e.target===Yn||e.target===Zn)}function sw(e){return!!(4&Mx(e))&&e.target===Zn}function cw(e){return ow(e)||$w(e)}function lw(e){return ow(e)&&!sw(e)||$w(e)&&!e.target.readonly}function uw(e){return ow(e)?rg(e)[0]:void 0}function dw(e){return ow(e)||!(98304&e.flags)&&WS(e,or)}function _w(e){return lw(e)||!(98305&e.flags)&&WS(e,rr)}function fw(e){if(!(4&Mx(e)&&3&Mx(e.target)))return;if(33554432&Mx(e))return 67108864&Mx(e)?e.cachedEquivalentBaseType:void 0;e.objectFlags|=33554432;const t=e.target;if(1&Mx(t)){const e=Eu(t);if(e&&80!==e.expression.kind&&211!==e.expression.kind)return}const n=Fu(t);if(1!==n.length)return;if(wd(e.symbol).size)return;let r=m(t.typeParameters)?SS(n[0],Gx(t.typeParameters,rg(e).slice(0,t.typeParameters.length))):n[0];return m(rg(e))>m(t.typeParameters)&&(r=Cd(r,Ae(rg(e)))),e.objectFlags|=67108864,e.cachedEquivalentBaseType=r}function mw(e){return K?e===nn:e===Ot}function yw(e){const t=uw(e);return!!t&&mw(t)}function vw(e){let t;return $w(e)||!!df(e,"0")||dw(e)&&!!(t=Nc(e,"length"))&&VC(t,(e=>!!(256&e.flags)))}function bw(e){return dw(e)||vw(e)}function Cw(e,t){const n=Nc(e,""+t);return n||(VC(e,$w)?yk(e,t,N.noUncheckedIndexedAccess?Mt:void 0):void 0)}function Iw(e){return!(240544&e.flags)}function Rw(e){return!!(109472&e.flags)}function Lw(e){const t=lp(e);return 2097152&t.flags?$(t.types,Rw):Rw(t)}function zw(e){return!!(16&e.flags)||(1048576&e.flags?!!(1024&e.flags)||T(e.types,Rw):Rw(e))}function qw(e){return 1056&e.flags?Uu(e):402653312&e.flags?Ut:256&e.flags?Bt:2048&e.flags?qt:512&e.flags?Yt:1048576&e.flags?function(e){const t=`B${ov(e)}`;return go(t)??yo(t,HC(e,qw))}(e):e}function Vw(e){return 402653312&e.flags?Ut:288&e.flags?Bt:2048&e.flags?qt:512&e.flags?Yt:1048576&e.flags?HC(e,Vw):e}function Kw(e){return 1056&e.flags&&Cx(e)?Uu(e):128&e.flags&&Cx(e)?Ut:256&e.flags&&Cx(e)?Bt:2048&e.flags&&Cx(e)?qt:512&e.flags&&Cx(e)?Yt:1048576&e.flags?HC(e,Kw):e}function Jw(e){return 8192&e.flags?Zt:1048576&e.flags?HC(e,Jw):e}function Hw(e,t){return CR(e,t)||(e=Jw(Kw(e))),Ex(e)}function Gw(e,t,n,r){if(e&&Rw(e)){e=Hw(e,t?Bj(n,t,r):void 0)}return e}function $w(e){return!!(4&Mx(e)&&8&e.target.objectFlags)}function rk(e){return $w(e)&&!!(8&e.target.combinedFlags)}function ik(e){return rk(e)&&1===e.target.elementFlags.length}function lk(e){return bk(e,e.target.fixedLength)}function yk(e,t,n){return HC(e,(e=>{const r=e,i=lk(r);return i?n&&t>=rv(r.target)?fv([i,n]):i:Mt}))}function bk(e,t,n=0,r=!1,i=!1){const o=ag(e)-n;if(t<o){const n=rg(e),s=[];for(let r=t;r<o;r++){const t=n[r];s.push(8&e.target.elementFlags[r]?Qb(t,Bt):t)}return r?Mv(s):fv(s,i?0:1)}}function Ek({value:e}){return"0"===e.base10Value}function Ck(e){return KC(e,(e=>gC(e,4194304)))}function Ok(e){return 4&e.flags?Ai:8&e.flags?Ii:64&e.flags?Di:e===Kt||e===Vt||114691&e.flags||128&e.flags&&""===e.value||256&e.flags&&0===e.value||2048&e.flags&&Ek(e)?e:$t}function Fk(e,t){const n=t&~e.flags&98304;return 0===n?e:fv(32768===n?[e,Mt]:65536===n?[e,jt]:[e,Mt,jt])}function Lk(e,t=!1){Tn.assert(K);const n=t?Rt:Mt;return e===n||1048576&e.flags&&e.types[0]===n?e:fv([e,n])}function jk(e){return K?bC(e,2097152):e}function zk(e){return K?fv([e,Lt]):e}function Uk(e){return K?JC(e,Lt):e}function Bk(e,t,n){return n?Il(t)?Lk(e):zk(e):e}function qk(e,t){return Al(t)?jk(e):Cl(t)?Uk(e):e}function Vk(e,t){return ne&&t?JC(e,Ft):e}function Kk(e){return e===Ft||!!(1048576&e.flags)&&e.types[0]===Ft}function Jk(e){return ne?JC(e,Ft):vC(e,524288)}function Wk(e){const t=Mx(e);return 2097152&e.flags?T(e.types,Wk):!(!(e.symbol&&7040&e.symbol.flags)||32&e.symbol.flags||NU(e))||!!(4194304&t)||!!(1024&t&&Wk(e.source))}function Hk(e,t){const n=Po(e.flags,e.escapedName,8&bx(e));n.declarations=e.declarations,n.parent=e.parent,n.links.type=t,n.links.target=e,e.valueDeclaration&&(n.valueDeclaration=e.valueDeclaration);const r=Go(e).nameType;return r&&(n.links.nameType=r),n}function Gk(e){if(!(BE(e)&&8192&Mx(e)))return e;const t=e.regularType;if(t)return t;const n=e,r=function(e,t){const n=o_();for(const r of W_(e)){const e=$l(r),i=t(e);n.set(r.escapedName,i===e?r:Hk(r,i))}return n}(e,Gk),i=Ca(n.symbol,r,n.callSignatures,n.constructSignatures,n.indexInfos);return i.flags=n.flags,i.objectFlags|=-8193&n.objectFlags,e.regularType=i,i}function Qk(e,t,n){return{parent:e,propertyName:t,siblings:n,resolvedProperties:void 0}}function Yk(e){if(!e.siblings){const t=[];for(const n of Yk(e.parent))if(BE(n)){const r=H_(n,e.propertyName);r&&BC($l(r),(e=>{t.push(e)}))}e.siblings=t}return e.siblings}function Zk(e){if(!e.resolvedProperties){const t=new Map;for(const n of Yk(e))if(BE(n)&&!(2097152&Mx(n)))for(const e of Q_(n))t.set(e.escapedName,e);e.resolvedProperties=Ke(t.values())}return e.resolvedProperties}function Xk(e,t){if(!(4&e.flags))return e;const n=$l(e),r=tE(n,t&&Qk(t,e.escapedName,void 0));return r===n?e:Hk(e,r)}function $k(e){const t=mt.get(e.escapedName);if(t)return t;const n=Hk(e,Rt);return n.flags|=16777216,mt.set(e.escapedName,n),n}function eE(e){return tE(e,void 0)}function tE(e,t){if(196608&Mx(e)){if(void 0===t&&e.widened)return e.widened;let n;if(98305&e.flags)n=St;else if(BE(e))n=function(e,t){const n=o_();for(const i of W_(e))n.set(i.escapedName,Xk(i,t));if(t)for(const i of Zk(t))n.has(i.escapedName)||n.set(i.escapedName,$k(i));const r=Ca(e.symbol,n,_,_,j(Sf(e),(e=>vh(e.keyType,eE(e.type),e.isReadonly))));return r.objectFlags|=266240&Mx(e),r}(e,t);else if(1048576&e.flags){const r=t||Qk(void 0,void 0,e.types),i=j(e.types,(e=>98304&e.flags?e:tE(e,r)));n=fv(i,$(i,vT)?2:1)}else 2097152&e.flags?n=Mv(j(e.types,eE)):cw(e)&&(n=Wh(e.target,j(rg(e),eE)));return n&&void 0===t&&(e.widened=n),n||e}return e}function nE(e){let t=!1;if(65536&Mx(e)){if(1048576&e.flags)if($(e.types,vT))t=!0;else for(const n of e.types)nE(n)&&(t=!0);if(cw(e))for(const n of rg(e))nE(n)&&(t=!0);if(BE(e))for(const n of W_(e)){const e=$l(n);65536&Mx(e)&&(nE(e)||wo(n.valueDeclaration,ws.Object_literal_s_property_0_implicitly_has_an_1_type,Qa(n),Za(eE(e))),t=!0)}}return t}function rE(e,t,n){const r=Za(eE(t));if(Um(e)&&!gw(C_(e),N))return;let i;switch(e.kind){case 226:case 172:case 171:i=Z?ws.Member_0_implicitly_has_an_1_type:ws.Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage;break;case 169:const t=e;if(YC(t.name)){const n=Ec(t.name);if((wN(t.parent)||yN(t.parent)||AN(t.parent))&&t.parent.parameters.includes(t)&&(Le(t,t.name.escapedText,788968,void 0,!0)||n&&Ux(n))){const n="arg"+t.parent.parameters.indexOf(t),r=Lp(t.name)+(t.dotDotDotToken?"[]":"");return void Eo(Z,e,ws.Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1,n,r)}}i=e.dotDotDotToken?Z?ws.Rest_parameter_0_implicitly_has_an_any_type:ws.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage:Z?ws.Parameter_0_implicitly_has_an_1_type:ws.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage;break;case 208:if(i=ws.Binding_element_0_implicitly_has_an_1_type,!Z)return;break;case 317:return void wo(e,ws.Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type,r);case 323:return void(Z&&wD(e.parent)&&wo(e.parent.tagName,ws.This_overload_implicitly_returns_the_type_0_because_it_lacks_a_return_type_annotation,r));case 262:case 174:case 173:case 177:case 178:case 218:case 219:if(Z&&!e.name)return void wo(e,3===n?ws.Generator_implicitly_has_yield_type_0_because_it_does_not_yield_any_values_Consider_supplying_a_return_type_annotation:ws.Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type,r);i=Z?3===n?ws._0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type:ws._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type:ws._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage;break;case 200:return void(Z&&wo(e,ws.Mapped_object_type_implicitly_has_an_any_template_type));default:i=Z?ws.Variable_0_implicitly_has_an_1_type:ws.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage}Eo(Z,e,i,Lp(Oc(e)),r)}function iE(e,t,n){s((()=>{!(Z&&65536&Mx(t))||n&&nP(e)||nE(t)||rE(e,t,n)}))}function sE(e,t,n){const r=gF(e),i=gF(t),o=bF(e),s=bF(t),a=s?i-1:i,c=o?a:Math.min(r,a),l=fm(e);if(l){const e=fm(t);e&&n(l,e)}for(let u=0;u<c;u++)n(pF(e,u),pF(t,u));s&&n(mF(e,c,X_(s)&&!qC(s,_w)),s)}function cE(e,t,n){const r=Sm(t);if(r){const t=Sm(e);if(t&&hv(t,r)&&t.type&&r.type)return void n(t.type,r.type)}const i=wm(t);gE(i)&&n(wm(e),i)}function lE(e,t,n,r){return uE(e.map(fE),t,n,r||RS)}function uE(e,t,n,r){const i={inferences:e,signature:t,flags:n,compareTypes:r,mapper:kn,nonFixingMapper:kn};return i.mapper=function(e){return Xx(R(e.inferences,(e=>e.typeParameter)),R(e.inferences,((t,n)=>()=>(t.isFixed||(!function(e){if(e.intraExpressionInferenceSites){for(const{node:t,type:n}of e.intraExpressionInferenceSites){const r=174===t.kind?AD(t,2):JD(t,2);r&&jE(e.inferences,n,r)}e.intraExpressionInferenceSites=void 0}}(e),_E(e.inferences),t.isFixed=!0),GE(e,n)))))}(i),i.nonFixingMapper=function(e){return Xx(R(e.inferences,(e=>e.typeParameter)),R(e.inferences,((t,n)=>()=>GE(e,n))))}(i),i}function _E(e){for(const t of e)t.isFixed||(t.inferredType=void 0)}function pE(e,t,n){(e.intraExpressionInferenceSites??(e.intraExpressionInferenceSites=[])).push({node:t,type:n})}function fE(e){return{typeParameter:e,candidates:void 0,contraCandidates:void 0,inferredType:void 0,priority:void 0,topLevel:!0,isFixed:!1,impliedArity:void 0}}function mE(e){return{typeParameter:e.typeParameter,candidates:e.candidates&&e.candidates.slice(),contraCandidates:e.contraCandidates&&e.contraCandidates.slice(),inferredType:e.inferredType,priority:e.priority,topLevel:e.topLevel,isFixed:e.isFixed,impliedArity:e.impliedArity}}function hE(e){return e&&e.mapper}function gE(e){const t=Mx(e);if(524288&t)return!!(1048576&t);const n=!!(465829888&e.flags||524288&e.flags&&!yE(e)&&(4&t&&(e.node||$(rg(e),gE))||134217728&t&&m(e.outerTypeParameters)||16&t&&e.symbol&&14384&e.symbol.flags&&e.symbol.declarations||12583968&t)||3145728&e.flags&&!(1024&e.flags)&&!yE(e)&&$(e.types,gE));return 3899393&e.flags&&(e.objectFlags|=524288|(n?1048576:0)),n}function yE(e){if(e.aliasSymbol&&!e.aliasTypeArguments){const t=r_(e.aliasSymbol,265);return!(!t||!bc(t.parent,(e=>307===e.kind||267!==e.kind&&"quit")))}return!1}function vE(e,t,n=0){return!!(e===t||3145728&e.flags&&$(e.types,(e=>vE(e,t,n)))||n<3&&16777216&e.flags&&(vE(ix(e),t,n+1)||vE(ox(e),t,n+1)))}function bE(e,t,n){const r=e.id+","+t.id+","+n.id;if(fi.has(r))return fi.get(r);const i=function(e,t,n){if(!(Tf(e,Ut)||0!==Q_(e).length&&xE(e)))return;if(ow(e)){const r=TE(rg(e)[0],t,n);if(!r)return;return jy(r,sw(e))}if($w(e)){const r=R(iv(e),(e=>TE(e,t,n)));if(!T(r,(e=>!!e)))return;return Gy(r,4&U_(t)?j(e.target.elementFlags,(e=>2&e?1:e)):e.target.elementFlags,e.target.readonly,e.target.labeledElementDeclarations)}const r=xa(1040,void 0);return r.source=e,r.mappedType=t,r.constraintType=n,r}(e,t,n);return fi.set(r,i),i}function xE(e){return!(262144&Mx(e))||BE(e)&&$(Q_(e),(e=>xE($l(e))))||$w(e)&&$(iv(e),xE)}function TE(e,t,n){const r=e.id+","+t.id+","+n.id;if(pi.has(r))return pi.get(r)||Dt;no.push(e),ro.push(t);const i=io;let o;return ZT(e,no,no.length,2)&&(io|=1),ZT(t,ro,ro.length,2)&&(io|=2),3!==io&&(o=function(e,t,n){const r=Qb(n.type,D_(t)),i=O_(t),o=fE(r);return jE([o],e,i),NE(o)||Dt}(e,t,n)),no.pop(),ro.pop(),io=i,pi.set(r,o),o}function*EE(e,t,n,r){const i=Q_(t);for(const o of i)if(!_d(o)&&(n||!(16777216&o.flags||48&bx(o)))){const t=df(e,o.escapedName);if(t){if(r){const e=$l(o);if(109472&e.flags){const n=$l(t);1&n.flags||Ex(n)===Ex(e)||(yield o)}}}else yield o}}function CE(e,t,n,r){return ke(EE(e,t,n,r))}function NE(e){return e.candidates?fv(e.candidates,2):e.contraCandidates?Mv(e.contraCandidates):void 0}function AE(e){return!!Qo(e).skipDirectInference}function IE(e){return!(!e.symbol||!$(e.symbol.declarations,AE))}function DE(e,t){if(""===e)return!1;const n=+e;return isFinite(n)&&(!t||""+n===e)}function PE(e){return Ix(Dw(e))}function ME(e,t){if(1&t.flags)return!0;if(134217732&t.flags)return WS(e,t);if(268435456&t.flags){const n=[];for(;268435456&t.flags;)n.unshift(t.symbol),t=t.type;return Re(n,((e,t)=>_b(t,e)),e)===e&&ME(e,t)}return!1}function OE(e,t){if(2097152&t.flags)return T(t.types,(t=>t===An||OE(e,t)));if(4&t.flags||WS(e,t))return!0;if(128&e.flags){const n=e.value;return!!(8&t.flags&&DE(n,!1)||64&t.flags&&Pw(n,!1)||98816&t.flags&&n===t.intrinsicName||268435456&t.flags&&ME(Nx(n),t)||134217728&t.flags&&RE(e,t))}if(134217728&e.flags){const n=e.texts;return 2===n.length&&""===n[0]&&""===n[1]&&WS(e.types[0],t)}return!1}function FE(e,t){return 128&e.flags?LE([e.value],_,t):134217728&e.flags?I(e.texts,t.texts)?R(e.types,((e,n)=>{return WS(lp(e),lp(t.types[n]))?e:402653317&(r=e).flags?r:cb(["",""],[r]);var r})):LE(e.texts,e.types,t):void 0}function RE(e,t){const n=FE(e,t);return!!n&&T(n,((e,n)=>OE(e,t.types[n])))}function LE(e,t,n){const r=e.length-1,i=e[0],o=e[r],s=n.texts,a=s.length-1,c=s[0],l=s[a];if(0===r&&i.length<c.length+l.length||!i.startsWith(c)||!o.endsWith(l))return;const u=o.slice(0,o.length-l.length),d=[];let _=0,p=c.length;for(let h=1;h<a;h++){const t=s[h];if(t.length>0){let n=_,r=p;for(;r=f(n).indexOf(t,r),!(r>=0);){if(n++,n===e.length)return;r=0}m(n,r),p+=t.length}else if(p<f(_).length)m(_,p+1);else{if(!(_<r))return;m(_+1,0)}}return m(r,f(r).length),d;function f(t){return t<r?e[t]:u}function m(n,r){const i=n===_?Nx(f(n).slice(p,r)):cb([e[_].slice(p),...e.slice(_+1,n),f(n).slice(0,r)],t.slice(_,n));d.push(i),_=n,p=r}}function jE(e,t,n,r=0,i=!1){let o,s,a,c,l=!1,u=2048,d=0;function p(t,s){if(gE(s)&&!Lg(s)){if(t===wt||t===kt){const e=o;return o=t,p(s,s),void(o=e)}if(t.aliasSymbol&&t.aliasSymbol===s.aliasSymbol){if(t.aliasTypeArguments){const e=Go(t.aliasSymbol).typeParameters,n=Wf(e);g(Zf(t.aliasTypeArguments,e,n,Um(t.aliasSymbol.valueDeclaration)),Zf(s.aliasTypeArguments,e,n,Um(t.aliasSymbol.valueDeclaration)),zT(t.aliasSymbol))}}else if(t===s&&3145728&t.flags)for(const e of t.types)p(e,e);else{if(1048576&s.flags){const[e,n]=h(1048576&t.flags?t.types:[t],s.types,zE),[r,i]=h(e,n,UE);if(0===i.length)return;if(s=fv(i),0===r.length)return void f(t,s,1);t=fv(r)}else if(2097152&s.flags&&!T(s.types,px)&&!(1048576&t.flags)){const[e,n]=h(2097152&t.flags?t.types:[t],s.types,DS);if(0===e.length||0===n.length)return;t=Mv(e),s=Mv(n)}if(41943040&s.flags){if(Lg(s))return;s=ex(s)}if(8650752&s.flags){if(IE(t))return;const d=b(s);if(d){if(262144&Mx(t)||t===At)return;if(!d.isFixed){const u=o||t;if(u===kt)return;if((void 0===d.priority||r<d.priority)&&(d.candidates=void 0,d.contraCandidates=void 0,d.topLevel=!0,d.priority=r),r===d.priority){if(a=d.typeParameter,$w(c=u)&&Cw(c,0)===Qb(a,Ax(0))&&!Nc(c,"1"))return;i&&!l?A(d.contraCandidates,u)||(d.contraCandidates=_e(d.contraCandidates,u),_E(e)):A(d.candidates,u)||(d.candidates=_e(d.candidates,u),_E(e))}!(128&r)&&262144&s.flags&&d.topLevel&&!vE(n,s)&&(d.topLevel=!1,_E(e))}return void(u=Math.min(u,r))}const _=Jb(s,!1);if(_!==s)p(t,_);else if(8388608&s.flags){const e=Jb(s.indexType,!1);if(465829888&e.flags){const n=Wb(Jb(s.objectType,!1),e,!1);n&&n!==s&&p(t,n)}}}var a,c;if(!(4&Mx(t)&&4&Mx(s)&&(t.target===s.target||ow(t)&&ow(s)))||t.node&&s.node)if(4194304&t.flags&&4194304&s.flags)y(t.type,s.type);else if((zw(t)||4&t.flags)&&4194304&s.flags){const e=function(e){const t=o_();BC(e,(e=>{if(!(128&e.flags))return;const n=Tc(e.value),r=Po(4,n);r.links.type=St,e.symbol&&(r.declarations=e.symbol.declarations,r.valueDeclaration=e.symbol.valueDeclaration),t.set(n,r)}));const n=4&e.flags?[vh(Ut,En,!1)]:_;return Ca(void 0,t,_,_,n)}(t);!function(e,t,n){const i=r;r|=n,y(e,t),r=i}(e,s.type,256)}else if(8388608&t.flags&&8388608&s.flags)p(t.objectType,s.objectType),p(t.indexType,s.indexType);else if(268435456&t.flags&&268435456&s.flags)t.symbol===s.symbol&&p(t.type,s.type);else if(33554432&t.flags)p(t.baseType,s),f(Bg(t),s,4);else if(16777216&s.flags)m(t,s,k);else if(3145728&s.flags)x(t,s.types,s.flags);else if(1048576&t.flags){const e=t.types;for(const t of e)p(t,s)}else if(134217728&s.flags)!function(e,t){const n=FE(e,t),r=t.types;if(n||T(t.texts,(e=>0===e.length)))for(let i=0;i<r.length;i++){const e=n?n[i]:$t,t=r[i];if(128&e.flags&&8650752&t.flags){const n=b(t),r=n?cp(n.typeParameter):void 0;if(r&&!Dc(r)){const n=1048576&r.flags?r.types:[r];let i=Re(n,((e,t)=>e|t.flags),0);if(!(4&i)){const r=e.value;296&i&&!DE(r,!0)&&(i&=-297),2112&i&&!Pw(r,!0)&&(i&=-2113);const o=Re(n,((t,n)=>n.flags&i?4&t.flags?t:4&n.flags?e:134217728&t.flags?t:134217728&n.flags&&RE(e,n)?e:268435456&t.flags?t:268435456&n.flags&&r===pb(n.symbol,r)?e:128&t.flags?t:128&n.flags&&n.value===r?n:8&t.flags?t:8&n.flags?Ax(+r):32&t.flags?t:32&n.flags?Ax(+r):256&t.flags?t:256&n.flags&&n.value===+r?n:64&t.flags?t:64&n.flags?PE(r):2048&t.flags?t:2048&n.flags&&Aw(n.value)===r?n:16&t.flags?t:16&n.flags?"true"===r?Jt:"false"===r?Vt:Yt:512&t.flags?t:512&n.flags&&n.intrinsicName===r?n:32768&t.flags?t:32768&n.flags&&n.intrinsicName===r?n:65536&t.flags?t:65536&n.flags&&n.intrinsicName===r?n:t:t),$t);if(!(131072&o.flags)){p(o,t);continue}}}}p(e,t)}}(t,s);else{if(V_(t=Jp(t))&&V_(s)&&m(t,s,E),!(512&r&&467927040&t.flags)){const e=Np(t);if(e!==t&&!(2621440&e.flags))return p(e,s);t=e}2621440&t.flags&&m(t,s,C)}else g(rg(t),rg(s),jT(t.target))}}}function f(e,t,n){const i=r;r|=n,p(e,t),r=i}function m(e,t,n){const r=e.id+","+t.id,i=s&&s.get(r);if(void 0!==i)return void(u=Math.min(u,i));(s||(s=new Map)).set(r,-1);const o=u;u=2048;const l=d;(a??(a=[])).push(e),(c??(c=[])).push(t),ZT(e,a,a.length,2)&&(d|=1),ZT(t,c,c.length,2)&&(d|=2),3!==d?n(e,t):u=-1,c.pop(),a.pop(),d=l,s.set(r,u),u=Math.min(u,o)}function h(e,t,n){let r,i;for(const o of t)for(const t of e)n(t,o)&&(p(t,o),r=ge(r,t),i=ge(i,o));return[r?M(e,(e=>!A(r,e))):e,i?M(t,(e=>!A(i,e))):t]}function g(e,t,n){const r=e.length<t.length?e.length:t.length;for(let i=0;i<r;i++)i<n.length&&2==(7&n[i])?y(e[i],t[i]):p(e[i],t[i])}function y(e,t){i=!i,p(e,t),i=!i}function v(e,t){W||1024&r?y(e,t):p(e,t)}function b(t){if(8650752&t.flags)for(const n of e)if(t===n.typeParameter)return n}function x(e,t,n){let i=0;if(1048576&n){let n;const o=1048576&e.flags?e.types:[e],s=new Array(o.length);let a=!1;for(const e of t)if(b(e))n=e,i++;else for(let t=0;t<o.length;t++){const n=u;u=2048,p(o[t],e),u===r&&(s[t]=!0),a=a||-1===u,u=Math.min(u,n)}if(0===i){const n=function(e){let t;for(const n of e){const e=2097152&n.flags&&w(n.types,(e=>!!b(e)));if(!e||t&&e!==t)return;t=e}return t}(t);return void(n&&f(e,n,1))}if(1===i&&!a){const e=U(o,((e,t)=>s[t]?void 0:e));if(e.length)return void p(fv(e),n)}}else for(const r of t)b(r)?i++:p(e,r);if(2097152&n?1===i:i>0)for(const r of t)b(r)&&f(e,r,1)}function S(e,t,n){if(1048576&n.flags||2097152&n.flags){let r=!1;for(const i of n.types)r=S(e,t,i)||r;return r}if(4194304&n.flags){const r=b(n.type);if(r&&!r.isFixed&&!IE(e)){const i=bE(e,t,n);i&&f(i,r.typeParameter,262144&Mx(e)?16:8)}return!0}if(262144&n.flags){f(sb(e,e.pattern?2:0),n,32);const r=Y_(n);if(r&&S(e,t,r))return!0;return p(fv(te(R(Q_(e),$l),R(Sf(e),(e=>e!==oi?e.type:$t)))),O_(t)),!0}return!1}function k(e,t){if(16777216&e.flags)p(e.checkType,t.checkType),p(e.extendsType,t.extendsType),p(ix(e),ix(t)),p(ox(e),ox(t));else{!function(e,t,n,i){const o=r;r|=i,x(e,t,n),r=o}(e,[ix(t),ox(t)],t.flags,i?64:0)}}function E(e,t){p(P_(e),P_(t)),p(O_(e),O_(t));const n=M_(e),r=M_(t);n&&r&&p(n,r)}function C(e,t){var n,r;if(4&Mx(e)&&4&Mx(t)&&(e.target===t.target||ow(e)&&ow(t)))g(rg(e),rg(t),jT(e.target));else{if(V_(e)&&V_(t)&&E(e,t),32&Mx(t)&&!t.declaration.nameType){if(S(e,t,P_(t)))return}if(!function(e,t){return $w(e)&&$w(t)?function(e,t){return!(8&t.target.combinedFlags)&&t.target.minLength>e.target.minLength||!t.target.hasRestElement&&(e.target.hasRestElement||t.target.fixedLength<e.target.fixedLength)}(e,t):!!CE(e,t,!1,!0)&&!!CE(t,e,!1,!1)}(e,t)){if(cw(e)){if($w(t)){const s=ag(e),a=ag(t),c=rg(t),l=t.target.elementFlags;if($w(e)&&(o=t,ag(i=e)===ag(o)&&T(i.target.elementFlags,((e,t)=>(12&e)==(12&o.target.elementFlags[t]))))){for(let t=0;t<a;t++)p(rg(e)[t],c[t]);return}const u=$w(e)?Math.min(e.target.fixedLength,t.target.fixedLength):0,d=Math.min($w(e)?nv(e.target,3):0,t.target.hasRestElement?nv(t.target,3):0);for(let t=0;t<u;t++)p(rg(e)[t],c[t]);if(!$w(e)||s-u-d==1&&4&e.target.elementFlags[u]){const t=rg(e)[u];for(let e=u;e<a-d;e++)p(8&l[e]?jy(t):t,c[e])}else{const i=a-u-d;if(2===i){if(l[u]&l[u+1]&8){const t=b(c[u]);t&&void 0!==t.impliedArity&&(p(ev(e,u,d+s-t.impliedArity),c[u]),p(ev(e,u+t.impliedArity,d),c[u+1]))}else if(8&l[u]&&4&l[u+1]){const t=null==(n=b(c[u]))?void 0:n.typeParameter,r=t&&cp(t);if(r&&$w(r)&&!r.target.hasRestElement){const t=r.target.fixedLength;p(ev(e,u,s-(u+t)),c[u]),p(bk(e,u+t,d),c[u+1])}}else if(4&l[u]&&8&l[u+1]){const n=null==(r=b(c[u+1]))?void 0:r.typeParameter,i=n&&cp(n);if(i&&$w(i)&&!i.target.hasRestElement){const n=i.target.fixedLength,r=s-nv(t.target,3),o=r-n,a=Gy(rg(e).slice(o,r),e.target.elementFlags.slice(o,r),!1,e.target.labeledElementDeclarations&&e.target.labeledElementDeclarations.slice(o,r));p(bk(e,u,d+n),c[u]),p(a,c[u+1])}}}else if(1===i&&8&l[u]){const n=2&t.target.elementFlags[a-1];f(ev(e,u,d),c[u],n?2:0)}else if(1===i&&4&l[u]){const t=bk(e,u,d);t&&p(t,c[u])}}for(let t=0;t<d;t++)p(rg(e)[s-t-1],c[a-t-1]);return}if(ow(t))return void D(e,t)}!function(e,t){const n=W_(t);for(const r of n){const t=df(e,r.escapedName);t&&!$(t.declarations,AE)&&p(Vk($l(t),!!(16777216&t.flags)),Vk($l(r),!!(16777216&r.flags)))}}(e,t),N(e,t,0),N(e,t,1),D(e,t)}var i,o}}function N(e,t,n){const r=pf(e,n),i=r.length;if(i>0){const e=pf(t,n),o=e.length;for(let t=0;t<o;t++){I(ph(r[Math.max(i-o+t,0)]),Ym(e[t]))}}}function I(e,t){if(!(64&e.flags)){const n=l,r=t.declaration?t.declaration.kind:0;l=l||174===r||173===r||176===r,sE(e,t,v),l=n}cE(e,t,p)}function D(e,t){const n=Mx(e)&Mx(t)&32?8:0,r=Sf(t);if(Wk(e))for(const i of r){const t=[];for(const n of Q_(e))if(bf(tb(n,8576),i.keyType)){const e=$l(n);t.push(16777216&n.flags?Jk(e):e)}for(const n of Sf(e))bf(n.keyType,i.keyType)&&t.push(n.type);t.length&&f(fv(t),i.type,n)}for(const i of r){const t=Ef(e,i.keyType);t&&f(t.type,i.type,n)}}p(t,n)}function zE(e,t){return t===Ft?e===t:DS(e,t)||!!(4&t.flags&&128&e.flags||8&t.flags&&256&e.flags)}function UE(e,t){return!!(524288&e.flags&&524288&t.flags&&e.symbol&&e.symbol===t.symbol||e.aliasSymbol&&e.aliasTypeArguments&&e.aliasSymbol===t.aliasSymbol)}function BE(e){return!!(128&Mx(e))}function KE(e){return!!(16512&Mx(e))}function JE(e){return 416&e.priority?Mv(e.contraCandidates):Re(e.contraCandidates,((e,t)=>BS(t,e)?t:e))}function WE(e,t){const n=function(e){if(e.length>1){const t=M(e,KE);if(t.length){const n=fv(t,2);return te(M(e,(e=>!KE(e))),[n])}}return e}(e.candidates),r=function(e){const t=Z_(e);return!!t&&sR(16777216&t.flags?tp(t):t,406978556)}(e.typeParameter)||X_(e.typeParameter),i=!r&&e.topLevel&&(e.isFixed||!function(e,t){const n=Sm(e);return n?!!n.type&&vE(n.type,t):vE(wm(e),t)}(t,e.typeParameter)),o=r?j(n,Ex):i?j(n,Kw):n;return eE(416&e.priority?fv(o,2):iw(o))}function GE(e,t){const n=e.inferences[t];if(!n.inferredType){let o,s;if(e.signature){const a=n.candidates?WE(n,e.signature):void 0,c=n.contraCandidates?JE(n):void 0;if(a||c){const t=a&&(!c||!(131072&a.flags)&&$(n.contraCandidates,(e=>BS(a,e)))&&T(e.inferences,(e=>e!==n&&Z_(e.typeParameter)!==n.typeParameter||T(e.candidates,(e=>BS(e,a))))));o=t?a:c,s=t?c:a}else if(1&e.flags)o=tn;else{const s=Tp(n.typeParameter);s&&(o=SS(s,(r=function(e,t){const n=e.inferences.slice(t);return Gx(R(n,(e=>e.typeParameter)),R(n,(()=>Dt)))}(e,t),i=e.nonFixingMapper,r?$x(5,r,i):i)))}}else o=NE(n);n.inferredType=o||QE(!!(2&e.flags));const a=Z_(n.typeParameter);if(a){const t=SS(a,e.nonFixingMapper);o&&e.compareTypes(o,Cd(t,o))||(n.inferredType=s&&e.compareTypes(s,Cd(t,s))?s:t)}}var r,i;return n.inferredType}function QE(e){return e?St:Dt}function YE(e){const t=[];for(let n=0;n<e.inferences.length;n++)t.push(GE(e,n));return t}function ZE(e){switch(e.escapedText){case"document":case"console":return ws.Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_include_dom;case"$":return N.types?ws.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery_and_then_add_jquery_to_the_types_field_in_your_tsconfig:ws.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery;case"describe":case"suite":case"it":case"test":return N.types?ws.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha_and_then_add_jest_or_mocha_to_the_types_field_in_your_tsconfig:ws.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha;case"process":case"require":case"Buffer":case"module":return N.types?ws.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode_and_then_add_node_to_the_types_field_in_your_tsconfig:ws.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode;case"Bun":return N.types?ws.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun_and_then_add_bun_to_the_types_field_in_your_tsconfig:ws.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun;case"Map":case"Set":case"Promise":case"Symbol":case"WeakMap":case"WeakSet":case"Iterator":case"AsyncIterator":case"SharedArrayBuffer":case"Atomics":case"AsyncIterable":case"AsyncIterableIterator":case"AsyncGenerator":case"AsyncGeneratorFunction":case"BigInt":case"Reflect":case"BigInt64Array":case"BigUint64Array":return ws.Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_1_or_later;case"await":if(iA(e.parent))return ws.Cannot_find_name_0_Did_you_mean_to_write_this_in_an_async_function;default:return 304===e.parent.kind?ws.No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer:ws.Cannot_find_name_0}}function XE(e){const t=Qo(e);return t.resolvedSymbol||(t.resolvedSymbol=!F_(e)&&Le(e,e,1160127,ZE(e),!wx(e),!1)||gt),t.resolvedSymbol}function $E(e){return!!(33554432&e.flags||bc(e,(e=>rI(e)||iI(e)||PN(e))))}function eC(e,t,n,r){switch(e.kind){case 80:if(!kv(e)){const i=XE(e);return i!==gt?`${r?Gz(r):"-1"}|${ov(t)}|${ov(n)}|${Qz(i)}`:void 0}case 110:return`0|${r?Gz(r):"-1"}|${ov(t)}|${ov(n)}`;case 235:case 217:return eC(e.expression,t,n,r);case 166:const i=eC(e.left,t,n,r);return i&&`${i}.${e.right.escapedText}`;case 211:case 212:const o=nC(e);if(void 0!==o){const i=eC(e.expression,t,n,r);return i&&`${i}.${o}`}if(rA(e)&&YC(e.argumentExpression)){const i=XE(e.argumentExpression);if(AA(i)||IA(i)&&!pA(i)){const o=eC(e.expression,t,n,r);return o&&`${o}.@${Qz(i)}`}}break;case 206:case 207:case 262:case 218:case 219:case 174:return`${Gz(e)}#${ov(t)}`}}function tC(e,t){switch(t.kind){case 217:case 235:return tC(e,t.expression);case 226:return bb(t)&&tC(e,t.left)||gA(t)&&28===t.operatorToken.kind&&tC(e,t.right)}switch(e.kind){case 236:return 236===t.kind&&e.keywordToken===t.keywordToken&&e.name.escapedText===t.name.escapedText;case 80:case 81:return kv(e)?110===t.kind:80===t.kind&&XE(e)===XE(t)||($A(t)||$N(t))&&ma(XE(e))===sa(t);case 110:return 110===t.kind;case 108:return 108===t.kind;case 235:case 217:return tC(e.expression,t);case 211:case 212:const n=nC(e);if(void 0!==n){const r=Bx(t)?nC(t):void 0;if(void 0!==r)return r===n&&tC(e.expression,t.expression)}if(rA(e)&&rA(t)&&YC(e.argumentExpression)&&YC(t.argumentExpression)){const n=XE(e.argumentExpression);if(n===XE(t.argumentExpression)&&(AA(n)||IA(n)&&!pA(n)))return tC(e.expression,t.expression)}break;case 166:return Bx(t)&&e.right.escapedText===nC(t)&&tC(e.left,t.expression);case 226:return gA(e)&&28===e.operatorToken.kind&&tC(e.right,t)}return!1}function nC(e){if(nA(e))return e.name.escapedText;if(rA(e))return Hg((t=e).argumentExpression)?Tc(t.argumentExpression.text):wb(t.argumentExpression)?function(e){const t=zs(e,111551,!0);if(!t||!(AA(t)||8&t.flags))return;const n=t.valueDeclaration;if(void 0===n)return;const r=Ol(n);if(r){const e=rC(r);if(void 0!==e)return e}if(qd(n)&&Xo(n,e)){const e=eh(n);if(e){const t=Mu(n.parent)?Gc(n):zR(e);return t&&rC(t)}if(QI(n))return Bp(n.name)}}(t.argumentExpression):void 0;var t;if($N(e)){const t=Jc(e);return t?Tc(t):void 0}return fN(e)?""+e.parent.parameters.indexOf(e):void 0}function rC(e){return 8192&e.flags?e.escapedName:384&e.flags?Tc(""+e.value):void 0}function iC(e,t){for(;Bx(e);)if(tC(e=e.expression,t))return!0;return!1}function oC(e,t){for(;Cl(e);)if(tC(e=e.expression,t))return!0;return!1}function sC(e,t){if(e&&1048576&e.flags){const n=Mp(e,t);if(n&&2&bx(n))return void 0===n.links.isDiscriminantProperty&&(n.links.isDiscriminantProperty=!(192&~n.links.checkFlags||Bb($l(n)))),!!n.links.isDiscriminantProperty}return!1}function aC(e,t){let n;for(const r of e)if(sC(t,r.escapedName)){if(n){n.push(r);continue}n=[r]}return n}function cC(e){const t=e.types;if(!(t.length<10||32768&Mx(e)||P(t,(e=>!!(59506688&e.flags)))<10)){if(void 0===e.keyPropertyName){const n=h(t,(e=>59506688&e.flags?h(Q_(e),(e=>Rw($l(e))?e.escapedName:void 0)):void 0)),r=n&&function(e,t){const n=new Map;let r=0;for(const i of e)if(61603840&i.flags){const e=Nc(i,t);if(e){if(!zw(e))return;let t=!1;BC(e,(e=>{const r=ov(Ex(e)),o=n.get(r);o?o!==Dt&&(n.set(r,Dt),t=!0):n.set(r,i)})),t||r++}}return r>=10&&2*r>=e.length?n:void 0}(t,n);e.keyPropertyName=r?n:"",e.constituentMap=r}return e.keyPropertyName.length?e.keyPropertyName:void 0}}function lC(e,t){var n;const r=null==(n=e.constituentMap)?void 0:n.get(ov(Ex(t)));return r!==Dt?r:void 0}function uC(e,t){const n=cC(e),r=n&&Nc(t,n);return r&&lC(e,r)}function dC(e,t){return tC(e,t)||iC(e,t)}function _C(e,t){if(e.arguments)for(const n of e.arguments)if(dC(t,n)||oC(n,t))return!0;return!(211!==e.expression.kind||!dC(t,e.expression.expression))}function pC(e){return e.id<=0&&(e.id=zz,zz++),e.id}function fC(e,t){if(e===t)return e;if(131072&t.flags)return t;const n=`A${ov(e)},${ov(t)}`;return go(n)??yo(n,function(e,t){const n=KC(e,(e=>function(e,t){if(!(1048576&e.flags))return WS(e,t);for(const n of e.types)if(WS(n,t))return!0;return!1}(t,e))),r=512&t.flags&&Cx(t)?HC(n,Sx):n;return WS(t,r)?r:e}(e,t))}function mC(e){const t=J_(e);return!!(t.callSignatures.length||t.constructSignatures.length||t.members.get("bind")&&BS(e,Hn))}function hC(e,t){return yC(e,t)&t}function gC(e,t){return 0!==hC(e,t)}function yC(e,t){467927040&e.flags&&(e=cp(e)||Dt);const n=e.flags;if(268435460&n)return K?16317953:16776705;if(134217856&n){const t=128&n&&""===e.value;return K?t?12123649:7929345:t?12582401:16776705}if(40&n)return K?16317698:16776450;if(256&n){const t=0===e.value;return K?t?12123394:7929090:t?12582146:16776450}if(64&n)return K?16317188:16775940;if(2048&n){const t=Ek(e);return K?t?12122884:7928580:t?12581636:16775940}if(16&n)return K?16316168:16774920;if(528&n)return K?e===Vt||e===Kt?12121864:7927560:e===Vt||e===Kt?12580616:16774920;if(524288&n){return t&(K?83427327:83886079)?16&Mx(e)&&vT(e)?K?83427327:83886079:mC(e)?K?7880640:16728e3:K?7888800:16736160:0}return 16384&n?9830144:32768&n?26607360:65536&n?42917664:12288&n?K?7925520:16772880:67108864&n?K?7888800:16736160:131072&n?0:1048576&n?Re(e.types,((e,n)=>e|yC(n,t)),0):2097152&n?function(e,t){const n=sR(e,402784252);let r=0,i=134217727;for(const o of e.types)if(!(n&&524288&o.flags)){const e=yC(o,t);r|=e,i&=e}return 8256&r|134209471&i}(e,t):83886079}function vC(e,t){return KC(e,(e=>gC(e,t)))}function bC(e,t){const n=SC(vC(K&&2&e.flags?Dn:e,t));if(K)switch(t){case 524288:return xC(n,65536,131072,33554432,jt);case 1048576:return xC(n,131072,65536,16777216,Mt);case 2097152:case 4194304:return HC(n,(e=>gC(e,262144)?function(e){return sr||(sr=hy("NonNullable",524288,void 0)||gt),sr!==gt?yg(sr,[e]):Mv([e,En])}(e):e))}return n}function xC(e,t,n,r,i){const o=hC(e,50528256);if(!(o&t))return e;const s=fv([En,i]);return HC(e,(e=>gC(e,t)?Mv([e,o&r||!gC(e,n)?En:s]):e))}function SC(e){return e===Dn?Dt:e}function TC(e,t){return t?fv([Bc(e),zR(t)]):e}function wC(e,t){var n;const r=eb(t);if(!Sk(r))return Et;const i=Tk(r);return Nc(e,i)||EC(null==(n=Cf(e,i))?void 0:n.type)||Et}function kC(e,t){return VC(e,vw)&&Cw(e,t)||EC(hj(65,e,Mt,void 0))||Et}function EC(e){return e&&N.noUncheckedIndexedAccess?fv([e,Ft]):e}function CC(e){return jy(hj(65,e,Mt,void 0)||Et)}function NC(e){return 226===e.parent.kind&&e.parent.left===e||250===e.parent.kind&&e.parent.initializer===e}function AC(e){return wC(IC(e.parent),e.name)}function IC(e){const{parent:t}=e;switch(t.kind){case 249:return Ut;case 250:return mj(t)||Et;case 226:return function(e){return 209===e.parent.kind&&NC(e.parent)||303===e.parent.kind&&NC(e.parent.parent)?TC(IC(e),e.right):zR(e.right)}(t);case 220:return Mt;case 209:return function(e,t){return kC(IC(e),e.elements.indexOf(t))}(t,e);case 230:return function(e){return CC(IC(e.parent))}(t);case 303:return AC(t);case 304:return function(e){return TC(AC(e),e.objectAssignmentInitializer)}(t)}return Et}function PC(e){return Qo(e).resolvedType||zR(e)}function OC(e){return 260===e.kind?function(e){return e.initializer?PC(e.initializer):249===e.parent.parent.kind?Ut:250===e.parent.parent.kind&&mj(e.parent.parent)||Et}(e):function(e){const t=e.parent,n=OC(t.parent);return TC(206===t.kind?wC(n,e.propertyName||e.name):e.dotDotDotToken?CC(n):kC(n,t.elements.indexOf(e)),e.initializer)}(e)}function FC(e){switch(e.kind){case 217:return FC(e.expression);case 226:switch(e.operatorToken.kind){case 64:case 76:case 77:case 78:return FC(e.left);case 28:return FC(e.right)}}return e}function RC(e){const{parent:t}=e;return 217===t.kind||226===t.kind&&64===t.operatorToken.kind&&t.left===e||226===t.kind&&28===t.operatorToken.kind&&t.right===e?RC(t):e}function LC(e){return 296===e.kind?Ex(zR(e.expression)):$t}function jC(e){const t=Qo(e);if(!t.switchTypes){t.switchTypes=[];for(const n of e.caseBlock.clauses)t.switchTypes.push(LC(n))}return t.switchTypes}function zC(e){if($(e.caseBlock.clauses,(e=>296===e.kind&&!Hd(e.expression))))return;const t=[];for(const n of e.caseBlock.clauses){const e=296===n.kind?n.expression.text:void 0;t.push(e&&!A(t,e)?e:void 0)}return t}function UC(e,t){return!!(e===t||131072&e.flags||1048576&t.flags&&function(e,t){if(1048576&e.flags){for(const n of e.types)if(!sv(t.types,n))return!1;return!0}if(1056&e.flags&&Uu(e)===t)return!0;return sv(t.types,e)}(e,t))}function BC(e,t){return 1048576&e.flags?h(e.types,t):t(e)}function qC(e,t){return 1048576&e.flags?$(e.types,t):t(e)}function VC(e,t){return 1048576&e.flags?T(e.types,t):t(e)}function KC(e,t){if(1048576&e.flags){const n=e.types,r=M(n,t);if(r===n)return e;const i=e.origin;let o;if(i&&1048576&i.flags){const e=i.types,s=M(e,(e=>!!(1048576&e.flags)||t(e)));if(e.length-s.length==n.length-r.length){if(1===s.length)return s[0];o=pv(1048576,s)}}return gv(r,16809984&e.objectFlags,void 0,void 0,o)}return 131072&e.flags||t(e)?e:$t}function JC(e,t){return KC(e,(e=>e!==t))}function WC(e){return 1048576&e.flags?e.types.length:1}function HC(e,t,n){if(131072&e.flags)return e;if(!(1048576&e.flags))return t(e);const r=e.origin,i=r&&1048576&r.flags?r.types:e.types;let o,s=!1;for(const a of i){const e=1048576&a.flags?HC(a,t,n):t(a);s||(s=a!==e),e&&(o?o.push(e):o=[e])}return s?o&&fv(o,n?0:1):e}function GC(e,t,n,r){return 1048576&e.flags&&n?fv(R(e.types,t),1,n,r):HC(e,t)}function QC(e,t){return KC(e,(e=>!!(e.flags&t)))}function XC(e,t){return sR(e,134217804)&&sR(t,402655616)?HC(e,(e=>4&e.flags?QC(t,402653316):zb(e)&&!sR(t,402653188)?QC(t,128):8&e.flags?QC(t,264):64&e.flags?QC(t,2112):e)):e}function $C(e){return 0===e.flags}function eN(e){return 0===e.flags?e.type:e}function tN(e,t){return t?{flags:0,type:131072&e.flags?tn:e}:e}function nN(e){return ft[e.id]||(ft[e.id]=function(e){const t=xa(256);return t.elementType=e,t}(e))}function rN(e,t){const n=Gk(qw(BR(t)));return UC(n,e.elementType)?e:nN(fv([e.elementType,n]))}function iN(e){return e.finalArrayType||(e.finalArrayType=131072&(t=e.elementType).flags?ir:jy(1048576&t.flags?fv(t.types,2):t));var t}function oN(e){return 256&Mx(e)?iN(e):e}function sN(e){return 256&Mx(e)?e.elementType:$t}function aN(e){const t=RC(e),n=t.parent,r=nA(n)&&("length"===n.name.escapedText||213===n.parent.kind&&YC(n.name)&&uy(n.name)),i=212===n.kind&&n.expression===t&&226===n.parent.kind&&64===n.parent.operatorToken.kind&&n.parent.left===n&&!og(n.parent)&&aR(zR(n.argumentExpression),296);return r||i}function cN(e,t){if(8752&(e=Ds(e)).flags)return $l(e);if(7&e.flags){if(262144&bx(e)){const t=e.links.syntheticOrigin;if(t&&cN(t))return $l(e)}const r=e.valueDeclaration;if(r){if(($A(n=r)||gN(n)||hN(n)||fN(n))&&(Nv(n)||Um(n)&&Bd(n)&&n.initializer&&Xw(n.initializer)&&Iv(n.initializer)))return $l(e);if($A(r)&&250===r.parent.parent.kind){const e=r.parent.parent,t=uN(e.expression,void 0);if(t){return hj(e.awaitModifier?15:13,t,Mt,void 0)}}t&&xw(t,Vp(r,ws._0_needs_an_explicit_type_annotation,Qa(e)))}}var n}function uN(e,t){if(!(67108864&e.flags))switch(e.kind){case 80:return cN(ma(XE(e)),t);case 110:return function(e){const t=cm(e,!1,!1);if(pu(t)){const e=Xf(t);if(e.thisParameter)return cN(e.thisParameter)}if(xu(t.parent)){const e=sa(t.parent);return Jv(t)?$l(e):Zu(e).thisType}}(e);case 108:return VI(e);case 211:{const n=uN(e.expression,t);if(n){const r=e.name;let i;if(ZC(r)){if(!n.symbol)return;i=df(n,ny(n.symbol,r.escapedText))}else i=df(n,r.escapedText);return i&&cN(i,t)}return}case 217:return uN(e.expression,t)}}function EN(e){const t=Qo(e);let n=t.effectsSignature;if(void 0===n){let r;if(gA(e)){r=dR($P(e.right))}else 244===e.parent.kind?r=uN(e.expression,void 0):108!==e.expression.kind&&(r=Cl(e)?sM(qk(qR(e.expression),e.expression),e.expression):$P(e.expression));const i=pf(r&&Np(r)||Dt,0),o=1!==i.length||i[0].typeParameters?$(i,MN)?jO(e):void 0:i[0];n=t.effectsSignature=o&&MN(o)?o:ni}return n===ni?void 0:n}function MN(e){return!!(Sm(e)||e.declaration&&131072&(Cm(e.declaration)||Dt).flags)}function jN(e){const t=BN(e,!1);return Qr=e,Yr=t,t}function zN(e){const t=fg(e,!0);return 97===t.kind||226===t.kind&&(56===t.operatorToken.kind&&(zN(t.left)||zN(t.right))||57===t.operatorToken.kind&&zN(t.left)&&zN(t.right))}function BN(e,t){for(;;){if(e===Qr)return Yr;const n=e.flags;if(4096&n){if(!t){const t=pC(e),n=Gi[t];return void 0!==n?n:Gi[t]=BN(e,!0)}t=!1}if(368&n)e=e.antecedent;else if(512&n){const t=EN(e.node);if(t){const n=Sm(t);if(n&&3===n.kind&&!n.type){const t=e.node.arguments[n.parameterIndex];if(t&&zN(t))return!1}if(131072&wm(t).flags)return!1}e=e.antecedent}else{if(4&n)return $(e.antecedent,(e=>BN(e,!1)));if(8&n){const t=e.antecedent;if(void 0===t||0===t.length)return!1;e=t[0]}else{if(!(128&n)){if(1024&n){Qr=void 0;const t=e.node.target,n=t.antecedent;t.antecedent=e.node.antecedents;const r=BN(e.antecedent,!1);return t.antecedent=n,r}return!(1&n)}{const t=e.node;if(t.clauseStart===t.clauseEnd&&WF(t.switchStatement))return!1;e=e.antecedent}}}}}function QN(e,t){for(;;){const n=e.flags;if(4096&n){if(!t){const t=pC(e),n=Qi[t];return void 0!==n?n:Qi[t]=QN(e,!0)}t=!1}if(496&n)e=e.antecedent;else if(512&n){if(108===e.node.expression.kind)return!0;e=e.antecedent}else{if(4&n)return T(e.antecedent,(e=>QN(e,!1)));if(!(8&n)){if(1024&n){const t=e.node.target,n=t.antecedent;t.antecedent=e.node.antecedents;const r=QN(e.antecedent,!1);return t.antecedent=n,r}return!!(1&n)}e=e.antecedent[0]}}}function YN(e){switch(e.kind){case 110:return!0;case 80:if(!kv(e)){const t=XE(e);return AA(t)||IA(t)&&!pA(t)||!!t.valueDeclaration&&lA(t.valueDeclaration)}break;case 211:case 212:return YN(e.expression)&&$F(Qo(e).resolvedSymbol||gt);case 206:case 207:const t=_y(e.parent);return fN(t)||Zw(t)?!yA(t):$A(t)&&XB(t)}return!1}function aA(e,t,n=t,r,i=(t=>null==(t=dt(e,qh))?void 0:t.flowNode)()){let o,s=!1,a=0;if(vi)return Et;if(!i)return t;bi++;const c=yi,l=eN(_(i));yi=c;const u=256&Mx(l)&&aN(e)?ir:oN(l);return u===rn||e.parent&&235===e.parent.kind&&!(131072&u.flags)&&131072&vC(u,2097152).flags?t:u;function d(){return s?o:(s=!0,o=eC(e,t,n,r))}function _(i){var o;if(2e3===a)return null==(o=ar)||o.instant(ar.Phase.CheckTypes,"getTypeAtFlowNode_DepthLimit",{flowId:i.id}),vi=!0,function(e){const t=bc(e,vu),n=C_(e),r=ef(n,t.statements.pos);oo.add(pS(n,r.start,r.length,ws.The_containing_function_or_module_body_is_too_large_for_control_flow_analysis))}(e),Et;let s;for(a++;;){const o=i.flags;if(4096&o){for(let e=c;e<yi;e++)if(Wi[e]===i)return a--,Hi[e];s=i}let l;if(16&o){if(l=f(i),!l){i=i.antecedent;continue}}else if(512&o){if(l=h(i),!l){i=i.antecedent;continue}}else if(96&o)l=y(i);else if(128&o)l=b(i);else if(12&o){if(1===i.antecedent.length){i=i.antecedent[0];continue}l=4&o?x(i):S(i)}else if(256&o){if(l=g(i),!l){i=i.antecedent;continue}}else if(1024&o){const e=i.node.target,t=e.antecedent;e.antecedent=i.node.antecedents,l=_(i.antecedent),e.antecedent=t}else if(2&o){const t=i.node;if(t&&t!==r&&211!==e.kind&&212!==e.kind&&(110!==e.kind||219===t.kind)){i=t.flowNode;continue}l=n}else l=rj(t);return s&&(Wi[yi]=s,Hi[yi]=l,yi++),a--,l}}function p(t){const n=t.node;return zA(260===n.kind||208===n.kind?OC(n):IC(n),e)}function f(n){const r=n.node;if(tC(e,r)){if(!jN(n))return rn;if(2===ig(r)){const e=_(n.antecedent);return tN(qw(eN(e)),$C(e))}if(t===Tt||t===ir){if(function(e){return 260===e.kind&&e.initializer&&Zc(e.initializer)||208!==e.kind&&226===e.parent.kind&&Zc(e.parent.right)}(r))return nN($t);const e=Kw(p(n));return WS(e,t)?e:rr}const e=sg(r)?qw(t):t;return 1048576&e.flags?fC(e,p(n)):e}if(iC(e,r)){if(!jN(n))return rn;if($A(r)&&(Um(r)||XB(r))){const e=th(r);if(e&&(218===e.kind||219===e.kind))return _(n.antecedent)}return t}if($A(r)&&249===r.parent.parent.kind&&(tC(e,r.parent.parent.expression)||oC(r.parent.parent.expression,e)))return tM(oN(eN(_(n.antecedent))))}function m(e,t){const n=fg(t,!0);if(97===n.kind)return rn;if(226===n.kind){if(56===n.operatorToken.kind)return m(m(e,n.left),n.right);if(57===n.operatorToken.kind)return fv([m(e,n.left),m(e,n.right)])}return $(e,n,!0)}function h(e){const t=EN(e.node);if(t){const n=Sm(t);if(n&&(2===n.kind||3===n.kind)){const t=_(e.antecedent),r=oN(eN(t)),i=n.type?X(r,n,e.node,!0):3===n.kind&&n.parameterIndex>=0&&n.parameterIndex<e.node.arguments.length?m(r,e.node.arguments[n.parameterIndex]):r;return i===r?t:tN(i,$C(t))}if(131072&wm(t).flags)return rn}}function g(n){if(t===Tt||t===ir){const t=n.node,r=213===t.kind?t.expression.expression:t.left.expression;if(tC(e,FC(r))){const e=_(n.antecedent),r=eN(e);if(256&Mx(r)){let n=r;if(213===t.kind)for(const e of t.arguments)n=rN(n,e);else{aR(BR(t.left.argumentExpression),296)&&(n=rN(n,t.right))}return n===r?e:tN(n,$C(e))}return e}}}function y(e){const t=_(e.antecedent),n=eN(t);if(131072&n.flags)return t;const r=!!(32&e.flags),i=oN(n),o=$(i,e.node,r);return o===i?t:tN(o,$C(t))}function b(t){const n=fg(t.node.switchStatement.expression),r=_(t.antecedent);let i=eN(r);if(tC(e,n))i=J(i,t.node);else if(221===n.kind&&tC(e,n.expression))i=function(e,{switchStatement:t,clauseStart:n,clauseEnd:r}){const i=zC(t);if(!i)return e;const o=E(t.caseBlock.clauses,(e=>297===e.kind));if(n===r||o>=n&&o<r){const t=JF(n,r,i);return KC(e,(e=>hC(e,t)===t))}return fv(R(i.slice(n,r),(t=>t?W(e,t):$t)))}(i,t.node);else if(112===n.kind)i=function(e,{switchStatement:t,clauseStart:n,clauseEnd:r}){const i=E(t.caseBlock.clauses,(e=>297===e.kind)),o=n===r||i>=n&&i<r;for(let s=0;s<n;s++){const n=t.caseBlock.clauses[s];296===n.kind&&(e=$(e,n.expression,!1))}if(o){for(let n=r;n<t.caseBlock.clauses.length;n++){const r=t.caseBlock.clauses[n];296===r.kind&&(e=$(e,r.expression,!1))}return e}return fv(R(t.caseBlock.clauses.slice(n,r),(t=>296===t.kind?$(e,t.expression,!0):$t)))}(i,t.node);else{K&&(oC(n,e)?i=V(i,t.node,(e=>!(163840&e.flags))):221===n.kind&&oC(n.expression,e)&&(i=V(i,t.node,(e=>!(131072&e.flags||128&e.flags&&"undefined"===e.value)))));const r=C(n,i);r&&(i=function(e,t,n){if(n.clauseStart<n.clauseEnd&&1048576&e.flags&&cC(e)===nC(t)){const t=fv(R(jC(n.switchStatement).slice(n.clauseStart,n.clauseEnd),(t=>lC(e,t)||Dt)));if(t!==Dt)return t}return N(e,t,(e=>J(e,n)))}(i,r,t.node))}return tN(i,$C(r))}function x(e){const r=[];let i,o=!1,s=!1;for(const a of e.antecedent){if(!i&&128&a.flags&&a.node.clauseStart===a.node.clauseEnd){i=a;continue}const e=_(a),c=eN(e);if(c===t&&t===n)return c;he(r,c),UC(c,n)||(o=!0),$C(e)&&(s=!0)}if(i){const e=_(i),a=eN(e);if(!(131072&a.flags||A(r,a)||WF(i.node.switchStatement))){if(a===t&&t===n)return a;r.push(a),UC(a,n)||(o=!0),$C(e)&&(s=!0)}}return tN(k(r,o?2:1),s)}function S(e){const r=pC(e),i=qi[r]||(qi[r]=new Map),o=d();if(!o)return t;const s=i.get(o);if(s)return s;for(let t=hi;t<gi;t++)if(Vi[t]===e&&Ki[t]===o&&Ji[t].length)return tN(k(Ji[t],1),!0);const a=[];let c,l=!1;for(const d of e.antecedent){let r;if(c){Vi[gi]=e,Ki[gi]=o,Ji[gi]=a,gi++;const t=Zr;Zr=void 0,r=_(d),Zr=t,gi--;const n=i.get(o);if(n)return n}else r=c=_(d);const s=eN(r);if(he(a,s),UC(s,n)||(l=!0),s===t)break}const u=k(a,l?2:1);return $C(c)?tN(u,!0):(i.set(o,u),u)}function k(e,n){if(function(e){let t=!1;for(const n of e)if(!(131072&n.flags)){if(!(256&Mx(n)))return!1;t=!0}return t}(e))return nN(fv(R(e,sN)));const r=SC(fv(j(e,oN),n));return r!==t&&r.flags&t.flags&1048576&&I(r.types,t.types)?t:r}function C(n,r){if(1048576&t.flags||1048576&r.flags){const i=function(t){if(Mu(e)||Xw(e)||Hf(e)){if(YC(t)){const n=XE(t).valueDeclaration;if(n&&($N(n)||fN(n))&&e===n.parent&&!n.initializer&&!n.dotDotDotToken)return n}}else if(Bx(t)){if(tC(e,t.expression))return t}else if(YC(t)){const n=XE(t);if(AA(n)){const t=n.valueDeclaration;if($A(t)&&!t.type&&t.initializer&&Bx(t.initializer)&&tC(e,t.initializer.expression))return t.initializer;if($N(t)&&!t.initializer){const n=t.parent.parent;if($A(n)&&!n.type&&n.initializer&&(YC(n.initializer)||Bx(n.initializer))&&tC(e,n.initializer))return t}}}}(n);if(i){const e=nC(i);if(e){if(sC(1048576&t.flags&&UC(r,t)?t:r,e))return i}}}}function N(e,t,n){const r=nC(t);if(void 0===r)return e;const i=Cl(t),o=K&&(i||_k(t))&&sR(e,98304);let s=Nc(o?vC(e,2097152):e,r);if(!s)return e;s=o&&i?Lk(s):s;const a=n(s);return KC(e,(e=>{const t=Ac(e,r)||Dt;return!(131072&t.flags)&&!(131072&a.flags)&&XS(a,t)}))}function D(e,t,n,r,i){if((37===n||38===n)&&1048576&e.flags){const o=cC(e);if(o&&o===nC(t)){const t=lC(e,zR(r));if(t)return n===(i?37:38)?t:Rw(Nc(t,o)||Dt)?JC(e,t):e}}return N(e,t,(e=>U(e,n,r,i)))}function P(t,n,r){if(tC(e,n))return bC(t,r?4194304:8388608);K&&r&&oC(n,e)&&(t=bC(t,2097152));const i=C(n,t);return i?N(t,i,(e=>vC(e,r?4194304:8388608))):t}function M(e,t,n){const r=df(e,t);return r?!!(16777216&r.flags||48&bx(r))||n:!!Cf(e,t)||!n}function O(e,t,n){const r=Tk(t);if(qC(e,(e=>M(e,r,!0))))return KC(e,(e=>M(e,r,n)));if(n){const n=(Ur||(Ur=my("Record",2,!0)||gt),Ur===gt?void 0:Ur);if(n)return Mv([e,yg(n,[t,Dt])])}return e}function F(e,t,n,r,i){return $(e,t,i=i!==(112===n.kind)!=(38!==r&&36!==r))}function L(t,n,r){switch(n.operatorToken.kind){case 64:case 76:case 77:case 78:return P($(t,n.right,r),n.left,r);case 35:case 36:case 37:case 38:const i=n.operatorToken.kind,o=FC(n.left),s=FC(n.right);if(221===o.kind&&Hd(s))return B(t,o,i,s,r);if(221===s.kind&&Hd(o))return B(t,s,i,o,r);if(tC(e,o))return U(t,i,s,r);if(tC(e,s))return U(t,i,o,r);K&&(oC(o,e)?t=z(t,i,s,r):oC(s,e)&&(t=z(t,i,o,r)));const a=C(o,t);if(a)return D(t,a,i,s,r);const c=C(s,t);if(c)return D(t,c,i,o,r);if(G(o))return Q(t,i,s,r);if(G(s))return Q(t,i,o,r);if(hu(s)&&!Bx(o))return F(t,o,s,i,r);if(hu(o)&&!Bx(s))return F(t,s,o,i,r);break;case 104:return function(t,n,r){const i=FC(n.left);if(!tC(e,i))return r&&K&&oC(i,e)?bC(t,2097152):t;const o=n.right,s=zR(o);if(!HS(s,Wn))return t;const a=EN(n),c=a&&Sm(a);if(c&&1===c.kind&&0===c.parameterIndex)return Z(t,c.type,r,!0);if(!HS(s,Hn))return t;const l=HC(s,Y);if(Dc(t)&&(l===Wn||l===Hn)||!r&&(!(524288&l.flags)||bT(l)))return t;return Z(t,l,r,!0)}(t,n,r);case 103:if(ZC(n.left))return function(t,n,r){const i=FC(n.right);if(!tC(e,i))return t;Tn.assertNode(n.left,ZC);const o=pM(n.left);if(void 0===o)return t;const s=o.parent,a=Wv(Tn.checkDefined(o.valueDeclaration,"should always have a declaration"))?$l(s):Zu(s);return Z(t,a,r,!0)}(t,n,r);const l=FC(n.right);if(Kk(t)&&Bx(e)&&tC(e.expression,l)){const i=zR(n.left);if(Sk(i)&&nC(e)===Tk(i))return vC(t,r?524288:65536)}if(tC(e,l)){const e=zR(n.left);if(Sk(e))return O(t,e,r)}break;case 28:return $(t,n.right,r);case 56:return r?$($(t,n.left,!0),n.right,!0):fv([$(t,n.left,!1),$(t,n.right,!1)]);case 57:return r?fv([$(t,n.left,!0),$(t,n.right,!0)]):$($(t,n.left,!1),n.right,!1)}return t}function z(e,t,n,r){const i=35===t||37===t,o=35===t||36===t?98304:32768,s=zR(n);return i!==r&&VC(s,(e=>!!(e.flags&o)))||i===r&&VC(s,(e=>!(e.flags&(3|o))))?bC(e,2097152):e}function U(e,t,n,r){if(1&e.flags)return e;36!==t&&38!==t||(r=!r);const i=zR(n),o=35===t||36===t;if(98304&i.flags){if(!K)return e;return bC(e,o?r?262144:2097152:65536&i.flags?r?131072:1048576:r?65536:524288)}if(r){if(!o&&(2&e.flags||qC(e,bT))){if(469893116&i.flags||bT(i))return i;if(524288&i.flags)return on}return XC(KC(e,(e=>{return XS(e,i)||o&&(t=i,!!(524&e.flags)&&!!(28&t.flags));var t})),i)}return Rw(i)?KC(e,(e=>!(Lw(e)&&XS(e,i)))):e}function B(t,n,r,i,o){36!==r&&38!==r||(o=!o);const s=FC(n.expression);if(!tC(e,s)){K&&oC(s,e)&&o===("undefined"!==i.text)&&(t=bC(t,2097152));const n=C(s,t);return n?N(t,n,(e=>q(e,i,o))):t}return q(t,i,o)}function q(e,t,n){return n?W(e,t.text):bC(e,Bz.get(t.text)||32768)}function V(e,{switchStatement:t,clauseStart:n,clauseEnd:r},i){return n!==r&&T(jC(t).slice(n,r),i)?vC(e,2097152):e}function J(e,{switchStatement:t,clauseStart:n,clauseEnd:r}){const i=jC(t);if(!i.length)return e;const o=i.slice(n,r),s=n===r||A(o,$t);if(2&e.flags&&!s){let t;for(let n=0;n<o.length;n+=1){const r=o[n];if(469893116&r.flags)void 0!==t&&t.push(r);else{if(!(524288&r.flags))return e;void 0===t&&(t=o.slice(0,n)),t.push(on)}}return fv(void 0===t?o:t)}const a=fv(o),c=131072&a.flags?$t:XC(KC(e,(e=>XS(a,e))),a);if(!s)return c;const l=KC(e,(e=>!(Lw(e)&&A(i,32768&e.flags?Mt:Ex(function(e){return 2097152&e.flags&&w(e.types,Rw)||e}(e))))));return 131072&c.flags?l:fv([c,l])}function W(e,t){switch(t){case"string":return H(e,Ut,1);case"number":return H(e,Bt,2);case"bigint":return H(e,qt,4);case"boolean":return H(e,Yt,8);case"symbol":return H(e,Zt,16);case"object":return 1&e.flags?e:fv([H(e,on,32),H(e,jt,131072)]);case"function":return 1&e.flags?e:H(e,Hn,64);case"undefined":return H(e,Mt,65536)}return H(e,on,128)}function H(e,t,n){return HC(e,(e=>ET(e,t,lo)?gC(e,n)?e:$t:BS(t,e)?t:gC(e,n)?Mv([e,t]):$t))}function G(t){return(nA(t)&&"constructor"===kc(t.name)||rA(t)&&Hd(t.argumentExpression)&&"constructor"===t.argumentExpression.text)&&tC(e,t.expression)}function Q(e,t,n,r){if(r?35!==t&&37!==t:36!==t&&38!==t)return e;const i=zR(n);if(!QU(i)&&!ku(i))return e;const o=df(i,"prototype");if(!o)return e;const s=$l(o),a=Dc(s)?void 0:s;return a&&a!==Wn&&a!==Hn?Dc(e)?a:KC(e,(e=>function(e,t){if(524288&e.flags&&1&Mx(e)||524288&t.flags&&1&Mx(t))return e.symbol===t.symbol;return BS(e,t)}(e,a))):e}function Y(e){const t=Nc(e,"prototype");if(t&&!Dc(t))return t;const n=pf(e,1);return n.length?fv(R(n,(e=>wm(Ym(e))))):En}function Z(e,t,n,r){const i=1048576&e.flags?`N${ov(e)},${ov(t)},${(n?1:0)|(r?2:0)}`:void 0;return go(i)??yo(i,function(e,t,n,r){if(!n){if(e===t)return $t;if(r)return KC(e,(e=>!HS(e,t)));const n=Z(e,t,!0,!1);return KC(e,(e=>!UC(e,n)))}if(3&e.flags)return t;if(e===t)return t;const i=r?HS:BS,o=1048576&e.flags?cC(e):void 0,s=HC(t,(t=>{const n=o&&Nc(t,o),s=HC(n&&lC(e,n)||e,r?e=>HS(e,t)?e:HS(t,e)?t:$t:e=>JS(e,t)?e:JS(t,e)?t:BS(e,t)?e:BS(t,e)?t:$t);return 131072&s.flags?HC(e,(e=>sR(e,465829888)&&i(t,cp(e)||Dt)?Mv([e,t]):$t)):s}));return 131072&s.flags?BS(t,e)?t:WS(e,t)?e:WS(t,e)?t:Mv([e,t]):s}(e,t,n,r))}function X(t,n,r,i){if(n.type&&(!Dc(t)||n.type!==Wn&&n.type!==Hn)){const o=function(e,t){if(1===e.kind||3===e.kind)return t.arguments[e.parameterIndex];const n=fg(t.expression);return Bx(n)?fg(n.expression):void 0}(n,r);if(o){if(tC(e,o))return Z(t,n.type,i,!1);K&&oC(o,e)&&(i&&!gC(n.type,65536)||!i&&VC(n.type,eM))&&(t=bC(t,2097152));const r=C(o,t);if(r)return N(t,r,(e=>Z(e,n.type,i,!1)))}}return t}function $(t,n,r){if(Al(n)||gA(n.parent)&&(61===n.parent.operatorToken.kind||78===n.parent.operatorToken.kind)&&n.parent.left===n)return function(t,n,r){if(tC(e,n))return bC(t,r?2097152:262144);const i=C(n,t);if(i)return N(t,i,(e=>vC(e,r?2097152:262144)));return t}(t,n,r);switch(n.kind){case 80:if(!tC(e,n)&&v<5){const i=XE(n);if(AA(i)){const n=i.valueDeclaration;if(n&&$A(n)&&!n.type&&n.initializer&&YN(e)){v++;const e=$(t,n.initializer,r);return v--,e}}}case 110:case 108:case 211:case 212:return P(t,n,r);case 213:return function(t,n,r){if(_C(n,e)){const e=r||!El(n)?EN(n):void 0,i=e&&Sm(e);if(i&&(0===i.kind||1===i.kind))return X(t,i,n,r)}if(Kk(t)&&Bx(e)&&nA(n.expression)){const i=n.expression;if(tC(e.expression,FC(i.expression))&&YC(i.name)&&"hasOwnProperty"===i.name.escapedText&&1===n.arguments.length){const i=n.arguments[0];if(Hd(i)&&nC(e)===Tc(i.text))return vC(t,r?524288:65536)}}return t}(t,n,r);case 217:case 235:return $(t,n.expression,r);case 226:return L(t,n,r);case 224:if(54===n.operator)return $(t,n.operand,!r)}return t}}function dA(e){return bc(e.parent,(e=>pu(e)&&!pm(e)||268===e.kind||307===e.kind||172===e.kind))}function pA(e){return!hA(e,void 0)}function hA(e,t){const n=bc(e.valueDeclaration,bA);if(!n)return!1;const r=Qo(n);return 131072&r.flags||(r.flags|=131072,bc(n.parent,(e=>bA(e)&&!!(131072&Qo(e).flags)))||kA(n)),!e.lastAssignmentPos||t&&e.lastAssignmentPos<t.pos}function yA(e){return Tn.assert($A(e)||fN(e)),vA(e.name)}function vA(e){return 80===e.kind?pA(sa(e.parent)):$(e.elements,(e=>232!==e.kind&&vA(e.name)))}function bA(e){return mu(e)||YI(e)}function kA(e){switch(e.kind){case 80:if(og(e)){const t=XE(e);if(IA(t)&&t.lastAssignmentPos!==Number.MAX_VALUE){const n=bc(e,bA),r=bc(t.valueDeclaration,bA);t.lastAssignmentPos=n===r?function(e,t){let n=e.pos;for(;e&&e.pos>t.pos;){switch(e.kind){case 243:case 244:case 245:case 246:case 247:case 248:case 249:case 250:case 254:case 255:case 258:case 263:n=e.end}e=e.parent}return n}(e,t.valueDeclaration):Number.MAX_VALUE}}return;case 281:const t=e.parent.parent;if(!e.isTypeOnly&&!t.isTypeOnly&&!t.moduleSpecifier){const t=zs(e.propertyName||e.name,111551,!0,!0);t&&IA(t)&&(t.lastAssignmentPos=Number.MAX_VALUE)}return;case 264:case 265:case 266:return}Du(e)||GM(e,kA)}function AA(e){return 3&e.flags&&!!(6&GP(e))}function IA(e){const t=e.valueDeclaration&&_y(e.valueDeclaration);return!!t&&(fN(t)||$A(t)&&(JI(t.parent)||function(e){return!!(1&e.parent.flags)&&!(32&pc(e)||243===e.parent.parent.kind&&rf(e.parent.parent.parent))}(t)))}function DA(e,t){const n=K&&169===t.kind&&t.initializer&&gC(e,16777216)&&!function(e){const t=Qo(e);if(void 0===t.parameterInitializerContainsUndefined){if(!fc(e,8))return Hl(e.symbol),!0;const n=!!gC(kR(e,0),16777216);if(!yc())return Hl(e.symbol),!0;t.parameterInitializerContainsUndefined??(t.parameterInitializerContainsUndefined=n)}return t.parameterInitializerContainsUndefined}(t);return n?vC(e,524288):e}function MA(e){return 2097152&e.flags?$(e.types,MA):!!(465829888&e.flags&&1146880&lp(e).flags)}function RA(e){return 2097152&e.flags?$(e.types,RA):!(!(465829888&e.flags)||sR(lp(e),98304))}function zA(e,t,n){Lg(e)&&(e=e.baseType);const r=!(n&&2&n)&&qC(e,MA)&&(function(e,t){const n=t.parent;return 211===n.kind||166===n.kind||213===n.kind&&n.expression===t||214===n.kind&&n.expression===t||212===n.kind&&n.expression===t&&!(qC(e,RA)&&Vb(zR(n.argumentExpression)))}(e,t)||function(e,t){const n=(YC(e)||nA(e)||rA(e))&&!((PI(e.parent)||DI(e.parent))&&e.parent.tagName===e)&&JD(e,t&&32&t?8:void 0);return n&&!Bb(n)}(t,n));return r?HC(e,lp):e}function UA(e){return!!bc(e,(e=>{const t=e.parent;return void 0===t?"quit":SI(t)?t.expression===e&&wb(e):!!kI(t)&&(t.name===e||t.propertyName===e)}))}function KA(e,t,n,r){if(De&&(!(33554432&e.flags)||hN(e)||gN(e)))switch(t){case 1:return JA(e);case 2:return WA(e,n,r);case 3:return HA(e);case 4:return GA(e);case 5:return QA(e);case 6:return YA(e);case 7:return ZA(e);case 8:return XA(e);case 0:if(YC(e)&&(Am(e)||HI(e.parent)||uI(e.parent)&&e.parent.moduleReference===e)&&EI(e)){if(Ku(e.parent)){if((nA(e.parent)?e.parent.expression:e.parent.left)!==e)return}return void JA(e)}if(Ku(e)){let t=e;for(;Ku(t);){if(Df(t))return;t=t.parent}return WA(e)}if(SI(e))return HA(e);if(Pd(e)||FI(e))return GA(e);if(uI(e))return Rm(e)||wz(e)?YA(e):void 0;if(kI(e))return ZA(e);if((mu(e)||yN(e))&&QA(e),!N.emitDecoratorMetadata)return;if(!(xM(e)&&Xv(e)&&e.modifiers&&xm(L,e,e.parent,e.parent.parent)))return;return XA(e);default:Tn.assertNever(t,`Unhandled reference hint: ${t}`)}}function JA(e){const t=XE(e);t&&t!==xe&&t!==gt&&!kv(e)&&cI(t,e)}function WA(e,t,n){const r=nA(e)?e.expression:e.left;if(Tv(r)||!YC(r))return;const i=XE(r);if(!i||i===gt)return;if(LS(N)||KS(N)&&UA(e))return void cI(i,e);const o=n||TR(r);if(Dc(o)||o===tn)return void cI(i,e);let s=t;if(!s&&!n){const t=nA(e)?e.name:e.right,n=ZC(t)&&dM(t.escapedText,t),r=Np(0!==ig(e)||uM(e)?eE(o):o);s=ZC(t)?n&&fM(r,n)||void 0:df(r,t.escapedText)}s&&(jU(s)||8&s.flags&&306===e.parent.kind)||cI(i,e)}function HA(e){if(YC(e.expression)){const t=e.expression,n=ma(zs(t,-1,!0,!0,e));n&&cI(n,t)}}function GA(e){if(!IP(e)){const t=oo&&2===N.jsx?ws.Cannot_find_name_0:void 0,n=vo(e),r=Pd(e)?e.tagName:e;let i;if(FI(e)&&"null"===n||(i=Le(r,n,111551,t,!0)),i&&(i.isReferenced=-1,De&&2097152&i.flags&&!Rs(i)&&pI(i)),FI(e)){const n=bo(C_(e));n&&Le(r,n,111551,t,!0)}}}function QA(e){if(D<2&&2&Jg(e)){const n=Iv(e);mI((t=n)&&vm(t),!1)}var t}function YA(e){Kv(e,32)&&fI(e)}function ZA(e){if(e.parent.parent.moduleSpecifier||e.isTypeOnly||e.parent.parent.isTypeOnly);else{const t=e.propertyName||e.name,n=Le(t,t.escapedText,2998271,void 0,!0);if(n&&(n===pe||n===fe||n.declarations&&rf(xc(n.declarations[0]))));else{const t=n&&(2097152&n.flags?Ps(n):n);(!t||111551&Ms(t))&&(fI(e),JA(e.propertyName||e.name))}}}function XA(e){if(N.emitDecoratorMetadata){const t=w(e.modifiers,mN);if(!t)return;switch(mB(t,16),e.kind){case 263:const t=yv(e);if(t)for(const e of t.parameters)gI(PL(e));break;case 177:case 178:const n=177===e.kind?178:177,r=r_(sa(e),n);gI(Rl(e)||r&&Rl(r));break;case 174:for(const o of e.parameters)gI(PL(o));gI(Iv(e));break;case 172:gI(Nv(e));break;case 169:gI(PL(e));const i=e.parent;for(const e of i.parameters)gI(PL(e));gI(Iv(i))}}}function cI(e,t){if(De&&Is(e,111551)&&!wv(t)){const n=Ps(e);1160127&Ms(e,!0)&&(LS(N)||KS(N)&&UA(t)||!jU(ma(n)))&&pI(e)}}function pI(e){Tn.assert(De);const t=Go(e);if(!t.referenced){t.referenced=!0;const n=us(e);if(!n)return Tn.fail();if(Rm(n)&&111551&Ms(Ds(e))){JA(kb(n.moduleReference))}}}function fI(e){const t=sa(e),n=Ps(t);if(n){(n===gt||111551&Ms(t,!0)&&!jU(n))&&pI(t)}}function mI(e,t){if(!e)return;const n=kb(e),r=2097152|(80===e.kind?788968:1920),i=Le(n,n.escapedText,r,void 0,!0);if(i&&2097152&i.flags)if(De&&ha(i)&&!jU(Ps(i))&&!Rs(i))pI(i);else if(t&&LS(N)&&OS(N)>=5&&!ha(i)&&!$(i.declarations,Xl)){const t=wo(e,ws.A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_when_isolatedModules_and_emitDecoratorMetadata_are_enabled),r=w(i.declarations||_,ds);r&&xw(t,Vp(r,ws._0_was_imported_here,kc(n)))}}function gI(e){const t=IL(e);t&&uu(t)&&mI(t,!0)}function yI(e,t){if(kv(e))return;if(t===xe){if(SM(e))return void wo(e,ws.arguments_cannot_be_referenced_in_property_initializers);let t=nm(e);if(t)for(D<2&&(219===t.kind?wo(e,ws.The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES5_Consider_using_a_standard_function_expression):Kv(t,1024)&&wo(e,ws.The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES5_Consider_using_a_standard_function_or_method)),Qo(t).flags|=512;t&&uA(t);)t=nm(t),t&&(Qo(t).flags|=512);return}const n=ma(t),r=Ez(n,e);Ao(r)&&Sb(e,r)&&r.declarations&&Do(e,r.declarations,e.escapedText);const i=n.valueDeclaration;if(i&&32&n.flags&&xu(i)&&i.name!==e){let t=cm(e,!1,!1);for(;307!==t.kind&&t.parent!==i;)t=cm(t,!1,!1);307!==t.kind&&(Qo(i).flags|=262144,Qo(t).flags|=262144,Qo(e).flags|=536870912)}!function(e,t){if(D>=2||!(34&t.flags)||!t.valueDeclaration||YI(t.valueDeclaration)||299===t.valueDeclaration.parent.kind)return;const n=Fp(t.valueDeclaration),r=function(e,t){return!!bc(e,(e=>e===t?"quit":pu(e)||e.parent&&gN(e.parent)&&!Wv(e.parent)&&e.parent.initializer===e))}(e,n),i=CI(n);if(i){if(r){let r=!0;if(BA(n)){const i=Mg(t.valueDeclaration,261);if(i&&i.parent===n){const i=function(e,t){return bc(e,(e=>e===t?"quit":e===t.initializer||e===t.condition||e===t.incrementor||e===t.statement))}(e.parent,n);if(i){const e=Qo(i);e.flags|=8192;he(e.capturedBlockScopeBindings||(e.capturedBlockScopeBindings=[]),t),i===n.initializer&&(r=!1)}}}r&&(Qo(i).flags|=4096)}if(BA(n)){const r=Mg(t.valueDeclaration,261);r&&r.parent===n&&function(e,t){let n=e;for(;217===n.parent.kind;)n=n.parent;let r=!1;if(og(n))r=!0;else if(224===n.parent.kind||225===n.parent.kind){const e=n.parent;r=46===e.operator||47===e.operator}if(!r)return!1;return!!bc(n,(e=>e===t?"quit":e===t.statement))}(e,n)&&(Qo(t.valueDeclaration).flags|=65536)}Qo(t.valueDeclaration).flags|=32768}r&&(Qo(t.valueDeclaration).flags|=16384)}(e,t)}function bI(e,t){if(kv(e))return UI(e);const n=XE(e);if(n===gt)return Et;if(yI(e,n),n===xe)return SM(e)?Et:$l(n);EI(e)&&KA(e,1);const r=ma(n);let i=r.valueDeclaration,o=function(e,t,n){var r;const i=$l(e,n),o=e.valueDeclaration;if(o){if($N(o)&&!o.initializer&&!o.dotDotDotToken&&o.parent.elements.length>=2){const e=o.parent.parent,n=_y(e);if(260===n.kind&&6&ZB(n)||169===n.kind){const r=Qo(e);if(!(4194304&r.flags)){r.flags|=4194304;const i=Fc(e,0),s=i&&HC(i,lp);if(r.flags&=-4194305,s&&1048576&s.flags&&(169!==n.kind||!yA(n))){const e=aA(o.parent,s,s,void 0,t.flowNode);return 131072&e.flags?$t:Qc(o,e,!0)}}}}if(fN(o)&&!o.type&&!o.initializer&&!o.dotDotDotToken){const e=o.parent;if(e.parameters.length>=2&&AS(e)){const n=rP(e);if(n&&1===n.parameters.length&&tU(n)){const i=Ap(SS($l(n.parameters[0]),null==(r=ZD(e))?void 0:r.nonFixingMapper));if(1048576&i.flags&&VC(i,$w)&&!$(e.parameters,yA))return Qb(aA(e,i,i,void 0,t.flowNode),Ax(e.parameters.indexOf(o)-(xv(e)?1:0)))}}}}return i}(r,e,t);const s=ig(e);if(s){if(!(3&r.flags||Um(e)&&512&r.flags)){return wo(e,384&r.flags?ws.Cannot_assign_to_0_because_it_is_an_enum:32&r.flags?ws.Cannot_assign_to_0_because_it_is_a_class:1536&r.flags?ws.Cannot_assign_to_0_because_it_is_a_namespace:16&r.flags?ws.Cannot_assign_to_0_because_it_is_a_function:2097152&r.flags?ws.Cannot_assign_to_0_because_it_is_an_import:ws.Cannot_assign_to_0_because_it_is_not_a_variable,Qa(n)),Et}if($F(r))return 3&r.flags?wo(e,ws.Cannot_assign_to_0_because_it_is_a_constant,Qa(n)):wo(e,ws.Cannot_assign_to_0_because_it_is_a_read_only_property,Qa(n)),Et}const a=2097152&r.flags;if(3&r.flags){if(1===s)return sg(e)?qw(o):o}else{if(!a)return o;i=us(n)}if(!i)return o;o=zA(o,e,t);const c=169===_y(i).kind,l=dA(i);let u=dA(e);const d=u!==l,_=e.parent&&e.parent.parent&&GI(e.parent)&&NC(e.parent.parent),p=134217728&n.flags,f=o===Tt||o===ir,m=f&&235===e.parent.kind;for(;u!==l&&(218===u.kind||219===u.kind||Gf(u))&&(AA(r)&&o!==ir||IA(r)&&hA(r,e));)u=dA(u);const h=c||a||d||_||p||function(e,t){if($N(t)){const n=bc(e,$N);return n&&_y(n)===_y(t)}}(e,i)||o!==Tt&&o!==ir&&(!K||!!(16387&o.flags)||wv(e)||$E(e)||281===e.parent.kind)||235===e.parent.kind||260===i.kind&&i.exclamationToken||33554432&i.flags,g=m?Mt:h?c?DA(o,i):o:f?Mt:Lk(o),y=m?jk(aA(e,o,g,u)):aA(e,o,g,u);if(aN(e)||o!==Tt&&o!==ir){if(!h&&!xT(o)&&xT(y))return wo(e,ws.Variable_0_is_used_before_being_assigned,Qa(n)),o}else if(y===Tt||y===ir)return Z&&(wo(Oc(i),ws.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined,Qa(n),Za(y)),wo(e,ws.Variable_0_implicitly_has_an_1_type,Qa(n),Za(y))),rj(y);return s?qw(y):y}function EI(e){var t;const n=e.parent;if(n){if(nA(n)&&n.expression===e)return!1;if(kI(n)&&n.isTypeOnly)return!1;const r=null==(t=n.parent)?void 0:t.parent;if(r&&TI(r)&&r.isTypeOnly)return!1}return!0}function CI(e){return bc(e,(e=>!e||py(e)?"quit":id(e,!1)))}function NI(e,t){if(Qo(e).flags|=2,172===t.kind||176===t.kind){Qo(t.parent).flags|=4}else Qo(t).flags|=4}function MI(e){return ff(e)?e:pu(e)?void 0:GM(e,MI)}function OI(e){return Au(Zu(sa(e)))===zt}function RI(e,t,n){const r=t.parent;Ng(r)&&!OI(r)&&qh(e)&&e.flowNode&&!QN(e.flowNode,!1)&&wo(e,n)}function UI(e){const t=wv(e);let n=cm(e,!0,!0),r=!1,i=!1;for(176===n.kind&&RI(e,n,ws.super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class);219===n.kind&&(n=cm(n,!1,!i),r=!0),167===n.kind;)n=cm(n,!r,!1),i=!0;if(function(e,t){gN(t)&&Wv(t)&&L&&t.initializer&&Ja(t.initializer,e.pos)&&Xv(t.parent)&&wo(e,ws.Cannot_use_this_in_a_static_property_initializer_of_a_decorated_class)}(e,n),i)wo(e,ws.this_cannot_be_referenced_in_a_computed_property_name);else switch(n.kind){case 267:wo(e,ws.this_cannot_be_referenced_in_a_module_or_namespace_body);break;case 266:wo(e,ws.this_cannot_be_referenced_in_current_location)}!t&&r&&D<2&&NI(e,n);const o=qI(e,!0,n);if(X){const t=$l(fe);if(o===t&&r)wo(e,ws.The_containing_arrow_function_captures_the_global_value_of_this);else if(!o){const r=wo(e,ws.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation);if(!YI(n)){const e=qI(n);e&&e!==t&&xw(r,Vp(n,ws.An_outer_value_of_this_is_shadowed_by_this_container))}}}return o||St}function qI(e,t=!0,n=cm(e,!1,!1)){const r=Um(e);if(pu(n)&&(!gD(e)||xv(n))){let t=fm(Xf(n))||r&&function(e){const t=sl(e);if(t&&t.typeExpression)return zx(t.typeExpression);const n=$f(e);if(n)return fm(n)}(n);if(!t){const e=function(e){if(218===e.kind&&gA(e.parent)&&3===dh(e.parent))return e.parent.left.expression.expression;if(174===e.kind&&210===e.parent.kind&&gA(e.parent.parent)&&6===dh(e.parent.parent))return e.parent.parent.left.expression;if(218===e.kind&&303===e.parent.kind&&210===e.parent.parent.kind&&gA(e.parent.parent.parent)&&6===dh(e.parent.parent.parent))return e.parent.parent.parent.left.expression;if(218===e.kind&&WI(e.parent)&&YC(e.parent.name)&&("value"===e.parent.name.escapedText||"get"===e.parent.name.escapedText||"set"===e.parent.name.escapedText)&&tA(e.parent.parent)&&iA(e.parent.parent.parent)&&e.parent.parent.parent.arguments[2]===e.parent.parent&&9===dh(e.parent.parent.parent))return e.parent.parent.parent.arguments[0].expression;if(vN(e)&&YC(e.name)&&("value"===e.name.escapedText||"get"===e.name.escapedText||"set"===e.name.escapedText)&&tA(e.parent)&&iA(e.parent.parent)&&e.parent.parent.arguments[2]===e.parent&&9===dh(e.parent.parent))return e.parent.parent.arguments[0].expression}(n);if(r&&e){const n=qR(e).symbol;n&&n.members&&16&n.flags&&(t=Zu(n).thisType)}else zO(n)&&(t=Zu(oa(n.symbol)).thisType);t||(t=dD(n))}if(t)return aA(e,t)}if(xu(n.parent)){const t=sa(n.parent);return aA(e,Jv(n)?$l(t):Zu(t).thisType)}if(YI(n)){if(n.commonJsModuleIndicator){const e=sa(n);return e&&$l(e)}if(n.externalModuleIndicator)return Mt;if(t)return $l(fe)}}function VI(e){const t=213===e.parent.kind&&e.parent.expression===e,n=_m(e,!0);let r=n,i=!1,o=!1;if(!t){for(;r&&219===r.kind;)Kv(r,1024)&&(o=!0),r=_m(r,!0),i=D<2;r&&Kv(r,1024)&&(o=!0)}let s=0;if(!r||!function(e){if(t)return 176===e.kind;if(xu(e.parent)||210===e.parent.kind)return Jv(e)?174===e.kind||173===e.kind||177===e.kind||178===e.kind||172===e.kind||175===e.kind:174===e.kind||173===e.kind||177===e.kind||178===e.kind||172===e.kind||171===e.kind||176===e.kind;return!1}(r)){const n=bc(e,(e=>e===r?"quit":167===e.kind));return n&&167===n.kind?wo(e,ws.super_cannot_be_referenced_in_a_computed_property_name):t?wo(e,ws.Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors):r&&r.parent&&(xu(r.parent)||210===r.parent.kind)?wo(e,ws.super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_derived_class):wo(e,ws.super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions),Et}if(t||176!==n.kind||RI(e,r,ws.super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class),Jv(r)||t?(s=32,!t&&D>=2&&D<=8&&(gN(r)||bN(r))&&Rp(e.parent,(e=>{YI(e)&&!of(e)||(Qo(e).flags|=2097152)}))):s=16,Qo(e).flags|=s,174===r.kind&&o&&(mm(e.parent)&&og(e.parent)?Qo(r).flags|=256:Qo(r).flags|=128),i&&NI(e.parent,r),210===r.parent.kind)return D<2?(wo(e,ws.super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_higher),Et):St;const a=r.parent;if(!Ng(a))return wo(e,ws.super_can_only_be_referenced_in_a_derived_class),Et;if(OI(a))return t?Et:zt;const c=Zu(sa(a)),l=c&&Fu(c)[0];return l?176===r.kind&&function(e,t){return!!bc(e,(e=>mu(e)?"quit":169===e.kind&&e.parent===t))}(e,r)?(wo(e,ws.super_cannot_be_referenced_in_constructor_arguments),Et):32===s?Au(c):Cd(l,c.thisType):Et}function ZI(e){return 174!==e.kind&&177!==e.kind&&178!==e.kind||210!==e.parent.kind?218===e.kind&&303===e.parent.kind?e.parent.parent:void 0:e.parent}function tD(e){return 4&Mx(e)&&e.target===nr?rg(e)[0]:void 0}function nD(e){return HC(e,(e=>2097152&e.flags?h(e.types,tD):tD(e)))}function rD(e,t){let n=e,r=t;for(;r;){const e=nD(r);if(e)return e;if(303!==n.parent.kind)break;n=n.parent.parent,r=qD(n,void 0)}}function dD(e){if(219===e.kind)return;if(AS(e)){const t=rP(e);if(t){const e=t.thisParameter;if(e)return $l(e)}}const t=Um(e);if(X||t){const n=ZI(e);if(n){const e=qD(n,void 0),t=rD(n,e);return t?SS(t,hE(ZD(n))):eE(e?jk(e):TR(n))}const r=dg(e.parent);if(bb(r)){const e=r.left;if(Bx(e)){const{expression:n}=e;if(t&&YC(n)){const e=C_(r);if(e.commonJsModuleIndicator&&XE(n)===e.symbol)return}return eE(TR(n))}}}}function _D(e){const t=e.parent;if(!AS(t))return;const n=pm(t);if(n&&n.arguments){const r=gO(n),i=t.parameters.indexOf(e);if(e.dotDotDotToken)return uO(r,i,r.length,St,void 0,0);const o=Qo(n),s=o.resolvedSignature;o.resolvedSignature=ti;const a=i<r.length?Kw(qR(r[i])):e.initializer?void 0:Ot;return o.resolvedSignature=s,a}const r=rP(t);if(r){const n=t.parameters.indexOf(e)-(xv(t)?1:0);return e.dotDotDotToken&&Ne(t.parameters)===e?mF(r,n):fF(r,n)}}function hD(e,t){const n=Nv(e)||(Um(e)?mk(e):void 0);if(n)return zx(n);switch(e.kind){case 169:return _D(e);case 208:return function(e,t){const n=e.parent.parent,r=e.propertyName||e.name,i=hD(n,t)||208!==n.kind&&n.initializer&&kR(n,e.dotDotDotToken?32:0);if(!i||Mu(r)||zp(r))return;if(207===n.name.kind){const t=np(e.parent.elements,e);if(t<0)return;return OD(i,t)}const o=eb(r);if(Sk(o)){return Nc(i,Tk(o))}}(e,t);case 172:if(Jv(e))return function(e,t){const n=td(e.parent)&&JD(e.parent,t);return n?CD(n,sa(e).escapedName):void 0}(e,t)}}function gD(e){let t=!1;for(;e.parent&&!pu(e.parent);){if(fN(e.parent)&&(t||e.parent.initializer===e))return!0;$N(e.parent)&&e.parent.initializer===e&&(t=!0),e=e.parent}return!1}function vD(e,t){const n=!!(2&Jg(t)),r=bD(t,void 0);if(r)return Bj(e,r,n)||void 0}function bD(e,t){const n=Cm(e);if(n)return n;const r=nP(e);if(r&&!Lm(r)){const t=wm(r),n=Jg(e);return 1&n?KC(t,(e=>!!(58998787&e.flags)||HR(e,n,void 0))):2&n?KC(t,(e=>!!(58998787&e.flags)||!!fL(e))):t}const i=pm(e);return i?JD(i,t):void 0}function xD(e,t){const n=gO(e).indexOf(t);return-1===n?void 0:SD(e,n)}function SD(e,t){if(mf(e))return 0===t?Ut:1===t?by(!1):St;const n=Qo(e).resolvedSignature===ri?ri:jO(e);if(Pd(e)&&0===t)return XD(n,e);const r=n.parameters.length-1;return tU(n)&&t>=r?Qb($l(n.parameters[r]),Ax(t-r),256):pF(n,t)}function TD(e,t){const n=e.parent,{left:r,operatorToken:i,right:o}=n;switch(i.kind){case 64:case 77:case 76:case 78:return e===o?function(e){var t,n;const r=dh(e);switch(r){case 0:case 4:const i=function(e){if(yd(e)&&e.symbol)return e.symbol;if(YC(e))return XE(e);if(nA(e)){const n=zR(e.expression);return ZC(e.name)?t(n,e.name):df(n,e.name.escapedText)}if(rA(e)){const t=TR(e.argumentExpression);if(!Sk(t))return;return df(zR(e.expression),Tk(t))}return;function t(e,t){const n=dM(t.escapedText,t);return n&&fM(e,n)}}(e.left),o=i&&i.valueDeclaration;if(o&&(gN(o)||hN(o))){const t=Nv(o);return t&&SS(zx(t),Go(i).mapper)||(gN(o)?o.initializer&&zR(e.left):void 0)}return 0===r?zR(e.left):ED(e);case 5:if(kD(e,r))return ED(e);if(yd(e.left)&&e.left.symbol){const t=e.left.symbol.valueDeclaration;if(!t)return;const n=_t(e.left,Bx),r=Nv(t);if(r)return zx(r);if(YC(n.expression)){const e=n.expression,t=Le(e,e.escapedText,111551,void 0,!0);if(t){const e=t.valueDeclaration&&Nv(t.valueDeclaration);if(e){const t=bh(n);if(void 0!==t)return CD(zx(e),t)}return}}return Um(t)||t===e.left?void 0:zR(e.left)}return zR(e.left);case 1:case 6:case 3:case 2:let s;2!==r&&(s=yd(e.left)?null==(t=e.left.symbol)?void 0:t.valueDeclaration:void 0),s||(s=null==(n=e.symbol)?void 0:n.valueDeclaration);const a=s&&Nv(s);return a?zx(a):void 0;case 7:case 8:case 9:return Tn.fail("Does not apply");default:return Tn.assertNever(r)}}(n):void 0;case 57:case 61:const i=JD(n,t);return e===o&&(i&&i.pattern||!i&&!ih(n))?zR(r):i;case 56:case 28:return e===o?JD(n,t):void 0;default:return}}function kD(e,t=dh(e)){if(4===t)return!0;if(!Um(e)||5!==t||!YC(e.left.expression))return!1;const n=e.left.expression.escapedText,r=Le(e.left,n,111551,void 0,!0,!0);return gm(null==r?void 0:r.valueDeclaration)}function ED(e){if(!e.symbol)return zR(e.left);if(e.symbol.valueDeclaration){const t=Nv(e.symbol.valueDeclaration);if(t){const e=zx(t);if(e)return e}}const t=_t(e.left,Bx);if(!Hf(cm(t.expression,!1,!1)))return;const n=UI(t.expression),r=bh(t);return void 0!==r&&CD(n,r)||void 0}function CD(e,t,n){return HC(e,(e=>{var r,i;if(V_(e)&&!e.declaration.nameType){const r=P_(e),i=cp(r)||r,o=n||Nx(wc(t));if(WS(o,i))return Gb(e,o)}else if(3670016&e.flags){const o=df(e,t);if(o)return 262144&bx(i=o)&&!i.links.type&&hc(i,0)>=0?void 0:Vk($l(o),!!(16777216&o.flags));if($w(e)&&ek(t)&&+t>=0){const t=bk(e,e.target.fixedLength,0,!1,!0);if(t)return t}return null==(r=vf(xf(e),n||Nx(wc(t))))?void 0:r.type}}),!0)}function AD(e,t){if(Tn.assert(Hf(e)),!(67108864&e.flags))return DD(e,t)}function DD(e,t){const n=e.parent,r=WI(e)&&hD(e,t);if(r)return r;const i=qD(n,t);if(i){if(bd(e)){const t=sa(e);return CD(i,t.escapedName,Go(t).nameType)}if(Qg(e)){const t=Oc(e);if(t&&_N(t)){const e=qR(t.expression),n=Sk(e)&&CD(i,Tk(e));if(n)return n}}if(e.name){const t=eb(e.name);return HC(i,(e=>{var n;return null==(n=vf(xf(e),t))?void 0:n.type}),!0)}}}function OD(e,t,n,r,i){return e&&HC(e,(e=>{if($w(e)){if((void 0===r||t<r)&&t<e.target.fixedLength)return Vk(rg(e)[t],!!e.target.elementFlags[t]);const o=void 0!==n&&(void 0===i||t>i)?n-t:0,s=o>0&&e.target.hasRestElement?nv(e.target,3):0;return o>0&&o<=s?rg(e)[ag(e)-o]:bk(e,void 0===r?e.target.fixedLength:Math.min(e.target.fixedLength,r),void 0===n||void 0===i?s:Math.min(s,n-i),!1,!0)}return(!r||t<r)&&CD(e,""+t)||gj(1,e,Mt,void 0,!1)}),!0)}function RD(e,t){const n=e.parent;return Id(n)?JD(e,t):II(n)?function(e,t,n){const r=qD(e.openingElement.attributes,n),i=MP(DP(e));if(!r||Dc(r)||!i||""===i)return;const o=wy(e.children),s=o.indexOf(t),a=CD(r,i);return a&&(1===o.length?a:HC(a,(e=>dw(e)?Qb(e,Ax(s)):e),!0))}(n,e,t):void 0}function jD(e,t){if(LI(e)){const n=qD(e.parent,t);if(!n||Dc(n))return;return CD(n,hk(e.name))}return JD(e.parent,t)}function UD(e){switch(e.kind){case 11:case 9:case 10:case 15:case 228:case 112:case 97:case 106:case 80:case 157:return!0;case 211:case 217:return UD(e.expression);case 294:return!e.expression||UD(e.expression)}return!1}function BD(e,t){const n=`D${Gz(e)},${ov(t)}`;return go(n)??yo(n,function(e,t){const n=cC(e),r=n&&w(t.properties,(e=>e.symbol&&303===e.kind&&e.symbol.escapedName===n&&UD(e.initializer))),i=r&&BR(r.initializer);return i&&lC(e,i)}(t,e)??RT(t,te(R(M(e.properties,(e=>!!e.symbol&&(303===e.kind?UD(e.initializer)&&sC(t,e.symbol.escapedName):304===e.kind&&sC(t,e.symbol.escapedName)))),(e=>[()=>BR(303===e.kind?e.initializer:e.name),e.symbol.escapedName])),R(M(Q_(t),(n=>{var r;return!!(16777216&n.flags)&&!!(null==(r=null==e?void 0:e.symbol)?void 0:r.members)&&!e.symbol.members.has(n.escapedName)&&sC(t,n.escapedName)})),(e=>[()=>Mt,e.escapedName]))),WS))}function qD(e,t){const n=VD(Hf(e)?AD(e,t):JD(e,t),e,t);if(n&&!(t&&2&t&&8650752&n.flags)){const t=HC(n,(e=>32&Mx(e)?e:Np(e)),!0);return 1048576&t.flags&&tA(e)?BD(e,t):1048576&t.flags&&jI(e)?function(e,t){const n=`D${Gz(e)},${ov(t)}`,r=go(n);if(r)return r;const i=MP(DP(e));return yo(n,RT(t,te(R(M(e.properties,(e=>!!e.symbol&&291===e.kind&&sC(t,e.symbol.escapedName)&&(!e.initializer||UD(e.initializer)))),(e=>[e.initializer?()=>BR(e.initializer):()=>Jt,e.symbol.escapedName])),R(M(Q_(t),(n=>{var r;if(!(16777216&n.flags&&(null==(r=null==e?void 0:e.symbol)?void 0:r.members)))return!1;const o=e.parent.parent;return(n.escapedName!==i||!II(o)||!wy(o.children).length)&&!e.symbol.members.has(n.escapedName)&&sC(t,n.escapedName)})),(e=>[()=>Mt,e.escapedName]))),WS))}(e,t):t}}function VD(e,t,n){if(e&&sR(e,465829888)){const r=ZD(t);if(r&&1&n&&$(r.inferences,FR))return KD(e,r.nonFixingMapper);if(null==r?void 0:r.returnMapper){const t=KD(e,r.returnMapper);return 1048576&t.flags&&sv(t.types,Kt)&&sv(t.types,Wt)?KC(t,(e=>e!==Kt&&e!==Wt)):t}}return e}function KD(e,t){return 465829888&e.flags?SS(e,t):1048576&e.flags?fv(R(e.types,(e=>KD(e,t))),0):2097152&e.flags?Mv(R(e.types,(e=>KD(e,t)))):e}function JD(e,t){var n;if(67108864&e.flags)return;const r=YD(e,!t);if(r>=0)return Si[r];const{parent:i}=e;switch(i.kind){case 260:case 169:case 172:case 171:case 208:return function(e,t){const n=e.parent;if(Bd(n)&&e===n.initializer){const e=hD(n,t);if(e)return e;if(!(8&t)&&Mu(n.name)&&n.name.elements.length>0)return yl(n.name,!0,!1)}}(e,t);case 219:case 253:return function(e,t){const n=nm(e);if(n){let e=bD(n,t);if(e){const t=Jg(n);if(1&t){const n=!!(2&t);1048576&e.flags&&(e=KC(e,(e=>!!Bj(1,e,n))));const r=Bj(1,e,!!(2&t));if(!r)return;e=r}if(2&t){const t=HC(e,TL);return t&&fv([t,UF(t)])}return e}}}(e,t);case 229:return function(e,t){const n=nm(e);if(n){const r=Jg(n);let i=bD(n,t);if(i){const n=!!(2&r);if(!e.asteriskToken&&1048576&i.flags&&(i=KC(i,(e=>!!Bj(1,e,n)))),e.asteriskToken){const r=Vj(i,n),o=(null==r?void 0:r.yieldType)??tn,s=JD(e,t)??tn,a=(null==r?void 0:r.nextType)??Dt,c=VF(o,s,a,!1);return n?fv([c,VF(o,s,a,!0)]):c}return Bj(0,i,n)}}}(i,t);case 223:return function(e,t){const n=JD(e,t);if(n){const e=TL(n);return e&&fv([e,UF(e)])}}(i,t);case 213:case 214:return xD(i,e);case 170:return function(e){const t=jF(e);return t?fh(t):void 0}(i);case 216:case 234:return Pl(i.type)?JD(i,t):zx(i.type);case 226:return TD(e,t);case 303:case 304:return DD(i,t);case 305:return JD(i.parent,t);case 209:{const r=i,o=qD(r,t),s=np(r.elements,e),a=(n=Qo(r)).spreadIndices??(n.spreadIndices=function(e){let t,n;for(let r=0;r<e.length;r++)xA(e[r])&&(t??(t=r),n=r);return{first:t,last:n}}(r.elements));return OD(o,s,r.elements.length,a.first,a.last)}case 227:return function(e,t){const n=e.parent;return e===n.whenTrue||e===n.whenFalse?JD(n,t):void 0}(e,t);case 239:return Tn.assert(228===i.parent.kind),function(e,t){if(215===e.parent.kind)return xD(e.parent,t)}(i.parent,e);case 217:if(Um(i)){if(pk(i))return zx(fk(i));const e=ul(i);if(e&&!Pl(e.typeExpression.type))return zx(e.typeExpression.type)}return JD(i,t);case 235:return JD(i,t);case 238:return zx(i.type);case 277:return Ol(i);case 294:return RD(i,t);case 291:case 293:return jD(i,t);case 286:case 285:return function(e,t){if(PI(e)&&4!==t){const n=YD(e.parent,!t);if(n>=0)return Si[n]}return SD(e,0)}(i,t);case 301:return function(e){return CD(xy(!1),Nk(e))}(i)}}function WD(e){GD(e,JD(e,void 0),!0)}function GD(e,t,n){xi[wi]=e,Si[wi]=t,Ti[wi]=n,wi++}function QD(){wi--}function YD(e,t){for(let n=wi-1;n>=0;n--)if(e===xi[n]&&(t||!Ti[n]))return n;return-1}function ZD(e){for(let t=Ni-1;t>=0;t--)if(hg(e,ki[t]))return Ei[t]}function XD(e,t){return 0!==_O(t)?function(e,t){let n=TF(e,Dt);n=$D(t,DP(t),n);const r=NP(Pz.IntrinsicAttributes,t);Mc(r)||(n=l_(r,n));return n}(e,t):function(e,t){const n=DP(t),r=(i=n,PP(Pz.ElementAttributesPropertyNameContainer,i));var i;let o=void 0===r?TF(e,Dt):""===r?wm(e):function(e,t){if(e.compositeSignatures){const n=[];for(const r of e.compositeSignatures){const e=wm(r);if(Dc(e))return e;const i=Nc(e,t);if(!i)return;n.push(i)}return Mv(n)}const n=wm(e);return Dc(n)?n:Nc(n,t)}(e,r);if(!o)return r&&m(t.attributes.properties)&&wo(t,ws.JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property,wc(r)),Dt;if(o=$D(t,n,o),Dc(o))return o;{let n=o;const r=NP(Pz.IntrinsicClassAttributes,t);if(!Mc(r)){const i=gu(r.symbol),o=wm(e);let s;if(i){s=SS(r,Gx(i,Zf([o],i,Wf(i),Um(t))))}else s=r;n=l_(s,n)}const i=NP(Pz.IntrinsicAttributes,t);return Mc(i)||(n=l_(i,n)),n}}(e,t)}function $D(e,t,n){const r=(i=t)&&Yo(i.exports,Pz.LibraryManagedAttributes,788968);var i;if(r){const t=function(e){if(TP(e.tagName))return fh(FO(e,RP(e)));const t=TR(e.tagName);if(128&t.flags){const n=FP(t,e);return n?fh(FO(e,n)):Et}return t}(e),i=VP(r,Um(e),t,n);if(i)return i}return n}function eP(e){return eT(N,"noImplicitAny")?Re(e,((e,t)=>e!==t&&e?Zd(e.typeParameters,t.typeParameters)?function(e,t){const n=e.typeParameters||t.typeParameters;let r;e.typeParameters&&t.typeParameters&&(r=Gx(t.typeParameters,e.typeParameters));const i=e.declaration,o=function(e,t,n){const r=gF(e),i=gF(t),o=r>=i?e:t,s=o===e?t:e,a=o===e?r:i,c=vF(e)||vF(t),l=c&&!vF(o),u=new Array(a+(l?1:0));for(let d=0;d<a;d++){let _=fF(o,d);o===t&&(_=SS(_,n));let p=fF(s,d)||Dt;s===t&&(p=SS(p,n));const f=fv([_,p]),m=c&&!l&&d===a-1,h=d>=yF(o)&&d>=yF(s),g=d>=r?void 0:lF(e,d),y=d>=i?void 0:lF(t,d),v=Po(1|(h&&!m?16777216:0),(g===y?g:g?y?void 0:g:y)||`arg${d}`);v.links.type=m?jy(f):f,u[d]=v}if(l){const e=Po(1,"args");e.links.type=jy(pF(s,a)),s===t&&(e.links.type=SS(e.links.type,n)),u[a]=e}return u}(e,t,r),s=function(e,t,n){if(!e||!t)return e||t;const r=fv([$l(e),SS($l(t),n)]);return Hk(e,r)}(e.thisParameter,t.thisParameter,r),a=Math.max(e.minArgumentCount,t.minArgumentCount),c=Ad(i,n,s,o,void 0,void 0,a,167&(e.flags|t.flags));c.compositeKind=2097152,c.compositeSignatures=te(2097152===e.compositeKind&&e.compositeSignatures||[e],[t]),r&&(c.mapper=2097152===e.compositeKind&&e.mapper&&e.compositeSignatures?nS(e.mapper,r):r);return c}(e,t):void 0:e)):void 0}function tP(e,t){const n=M(pf(e,0),(e=>!function(e,t){let n=0;for(;n<t.parameters.length;n++){const e=t.parameters[n];if(e.initializer||e.questionToken||e.dotDotDotToken||uk(e))break}t.parameters.length&&Sv(t.parameters[0])&&n--;return!vF(e)&&gF(e)<n}(e,t)));return 1===n.length?n[0]:eP(n)}function nP(e){return Xw(e)||Hf(e)?rP(e):void 0}function rP(e){Tn.assert(174!==e.kind||Hf(e));const t=$f(e);if(t)return t;const n=qD(e,1);if(!n)return;if(!(1048576&n.flags))return tP(n,e);let r;const i=n.types;for(const o of i){const t=tP(o,e);if(t)if(r){if(!nw(r[0],t,!1,!0,!0,PS))return;r.push(t)}else r=[t]}return r?1===r.length?r[0]:Md(r[0],r):void 0}function iP(e){const t=Qo(e);return 1&t.flags||(t.flags|=1,s((()=>function(e){const t=C_(e);if(!UB(t)&&!e.isUnterminated){let r;n??(n=Ia(99,!0)),n.setScriptTarget(t.languageVersion),n.setLanguageVariant(t.languageVariant),n.setOnError(((e,i,o)=>{const s=n.getTokenEnd();if(3===e.category&&r&&s===r.start&&i===r.length){const n=lS(t.fileName,t.text,s,i,e,o);xw(r,n)}else r&&s===r.start||(r=pS(t,s,i,e,o),oo.add(r))})),n.setText(t.text,e.pos,e.end-e.pos);try{return n.scan(),Tn.assert(14===n.reScanSlashToken(!0),"Expected scanner to rescan RegularExpressionLiteral"),!!r}finally{n.setText(""),n.setOnError(void 0)}}return!1}(e)))),tr}function oP(e){return 208===e.kind&&!!e.initializer||226===e.kind&&64===e.operatorToken.kind}function sP(e,t,n){const r=e.elements,i=r.length,o=[],s=[];WD(e);const a=og(e),c=NR(e),l=qD(e,void 0),u=function(e){const t=dg(e.parent);return xA(t)&&Hu(t.parent)}(e)||!!l&&qC(l,(e=>vw(e)||V_(e)&&!e.nameType&&!!dS(e.target||e)));let d=!1;for(let _=0;_<i;_++){const i=r[_];if(230===i.kind){D<2&&mB(i,N.downlevelIteration?1536:1024);const e=qR(i.expression,t,n);if(dw(e))o.push(e),s.push(8);else if(a){const t=wf(e,Bt)||gj(65,e,Mt,void 0,!1)||Dt;o.push(t),s.push(4)}else o.push(hj(33,e,Mt,i.expression)),s.push(4)}else if(ne&&232===i.kind)d=!0,o.push(Rt),s.push(2);else{const r=AR(i,t,n);if(o.push(Xc(r,!0,d)),s.push(d?2:1),u&&t&&2&t&&!(4&t)&&CS(i)){const t=ZD(e);Tn.assert(t),pE(t,i,r)}}}return QD(),a?Gy(o,s):aP(n||c||u?Gy(o,s,c&&!(l&&qC(l,_w))):jy(o.length?fv(j(o,((e,t)=>8&s[t]?Zb(e,Bt)||St:e)),2):K?nn:Ot,c))}function aP(e){if(!(4&Mx(e)))return e;let t=e.literalType;return t||(t=e.literalType=tg(e),t.objectFlags|=147456),t}function cP(e){switch(e.kind){case 167:return function(e){return aR(lP(e),296)}(e);case 80:return ek(e.escapedText);case 9:case 11:return ek(e.text);default:return!1}}function lP(e){const t=Qo(e.expression);if(!t.resolvedType){if((PN(e.parent.parent)||xu(e.parent.parent)||rI(e.parent.parent))&&gA(e.expression)&&103===e.expression.operatorToken.kind&&177!==e.parent.kind&&178!==e.parent.kind)return t.resolvedType=Et;if(t.resolvedType=qR(e.expression),gN(e.parent)&&!Wv(e.parent)&&SA(e.parent.parent)){const t=CI(Fp(e.parent.parent));t&&(Qo(t).flags|=4096,Qo(e).flags|=32768,Qo(e.parent.parent).flags|=32768)}(98304&t.resolvedType.flags||!aR(t.resolvedType,402665900)&&!WS(t.resolvedType,un))&&wo(e,ws.A_computed_property_name_must_be_of_type_string_number_symbol_or_any)}return t.resolvedType}function dP(e){var t;const n=null==(t=e.declarations)?void 0:t[0];return ek(e.escapedName)||n&&Pc(n)&&cP(n.name)}function _P(e){var t;const n=null==(t=e.declarations)?void 0:t[0];return ry(e)||n&&Pc(n)&&_N(n.name)&&aR(lP(n.name),4096)}function hP(e,t,n,r){const i=[];for(let o=t;o<n.length;o++){const e=n[o];(r===Ut&&!_P(e)||r===Bt&&dP(e)||r===Zt&&_P(e))&&i.push($l(n[o]))}return vh(r,i.length?fv(i,2):Mt,NR(e))}function vP(e){Tn.assert(!!(2097152&e.flags),"Should only get Alias here.");const t=Go(e);if(!t.immediateTarget){const n=us(e);if(!n)return Tn.fail();t.immediateTarget=As(n,!0)}return t.immediateTarget}function bP(e,t=0){var n;const r=og(e);!function(e,t){const n=new Map;for(const r of e.properties){if(305===r.kind){if(t){const e=fg(r.expression);if(eA(e)||tA(e))return VB(r.expression,ws.A_rest_element_cannot_contain_a_binding_pattern)}continue}const e=r.name;if(167===e.kind&&EB(e),304===r.kind&&!t&&r.objectAssignmentInitializer&&VB(r.equalsToken,ws.Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_part_of_a_destructuring_pattern),81===e.kind&&VB(e,ws.Private_identifiers_are_not_allowed_outside_class_bodies),bM(r)&&r.modifiers)for(const t of r.modifiers)!lu(t)||134===t.kind&&174===r.kind||VB(t,ws._0_modifier_cannot_be_used_here,ep(t));else if(zP(r)&&r.modifiers)for(const t of r.modifiers)lu(t)&&VB(t,ws._0_modifier_cannot_be_used_here,ep(t));let i;switch(r.kind){case 304:case 303:AB(r.exclamationToken,ws.A_definite_assignment_assertion_is_not_permitted_in_this_context),NB(r.questionToken,ws.An_object_member_cannot_be_declared_optional),9===e.kind&&WB(e),i=4;break;case 174:i=8;break;case 177:i=1;break;case 178:i=2;break;default:Tn.assertNever(r,"Unexpected syntax kind:"+r.kind)}if(!t){const t=QB(e);if(void 0===t)continue;const r=n.get(t);if(r)if(8&i&&8&r)VB(e,ws.Duplicate_identifier_0,ep(e));else if(4&i&&4&r)VB(e,ws.An_object_literal_cannot_have_multiple_properties_with_the_same_name,ep(e));else{if(!(3&i&&3&r))return VB(e,ws.An_object_literal_cannot_have_property_and_accessor_with_the_same_name);if(3===r||i===r)return VB(e,ws.An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name);n.set(t,i|r)}else n.set(t,i)}}}(e,r);const i=K?o_():void 0;let o=o_(),s=[],a=En;WD(e);const c=qD(e,void 0),l=c&&c.pattern&&(206===c.pattern.kind||210===c.pattern.kind),u=NR(e),d=u?8:0,p=Um(e)&&!Bm(e),f=p?ol(e):void 0,m=!c&&p&&!f;let h=8192,g=!1,y=!1,v=!1,b=!1;for(const _ of e.properties)_.name&&_N(_.name)&&lP(_.name);let x=0;for(const _ of e.properties){let n=sa(_);const m=_.name&&167===_.name.kind?lP(_.name):void 0;if(303===_.kind||304===_.kind||Hf(_)){let o=303===_.kind?IR(_,t):304===_.kind?AR(!r&&_.objectAssignmentInitializer?_.objectAssignmentInitializer:_.name,t):DR(_,t);if(p){const e=Yc(_);e?($S(o,e,_),o=e):f&&f.typeExpression&&$S(o,zx(f.typeExpression),_)}h|=458752&Mx(o);const s=m&&Sk(m)?m:void 0,a=s?Po(4|n.flags,Tk(s),4096|d):Po(4|n.flags,n.escapedName,d);if(s&&(a.links.nameType=s),r){(303===_.kind&&oP(_.initializer)||304===_.kind&&_.objectAssignmentInitializer)&&(a.flags|=16777216)}else if(l&&!(512&Mx(c))){const e=df(c,n.escapedName);e?a.flags|=16777216&e.flags:Tf(c,Ut)||wo(_.name,ws.Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1,Qa(n),Za(c))}if(a.declarations=n.declarations,a.parent=n.parent,n.valueDeclaration&&(a.valueDeclaration=n.valueDeclaration),a.links.type=o,a.links.target=n,n=a,null==i||i.set(a.escapedName,a),c&&2&t&&!(4&t)&&(303===_.kind||174===_.kind)&&CS(_)){const t=ZD(e);Tn.assert(t);pE(t,303===_.kind?_.initializer:_,o)}}else{if(305===_.kind){D<2&&mB(_,2),s.length>0&&(a=hx(a,S(),e.symbol,h,u),s=[],o=o_(),y=!1,v=!1,b=!1);const n=Jp(qR(_.expression,2&t));if(xP(n)){const t=mx(n,u);if(i&&EP(t,i,_),x=s.length,Mc(a))continue;a=hx(a,t,e.symbol,h,u)}else wo(_,ws.Spread_types_may_only_be_created_from_object_types),a=Et;continue}Tn.assert(177===_.kind||178===_.kind),Zz(_)}!m||8576&m.flags?o.set(n.escapedName,n):WS(m,un)&&(WS(m,Bt)?v=!0:WS(m,Zt)?b=!0:y=!0,r&&(g=!0)),s.push(n)}if(QD(),l){const t=bc(c.pattern.parent,(e=>260===e.kind||226===e.kind||169===e.kind));if(305!==bc(e,(e=>e===t||305===e.kind)).kind)for(const e of Q_(c))o.get(e.escapedName)||df(a,e.escapedName)||(16777216&e.flags||wo(e.valueDeclaration||(null==(n=dt(e,s_))?void 0:n.links.bindingElement),ws.Initializer_provides_no_value_for_this_binding_element_and_the_binding_element_has_no_default_value),o.set(e.escapedName,e),s.push(e))}return Mc(a)?Et:a!==En?(s.length>0&&(a=hx(a,S(),e.symbol,h,u),s=[],o=o_(),y=!1,v=!1),HC(a,(e=>e===En?S():e))):S();function S(){const t=[];y&&t.push(hP(e,x,s,Ut)),v&&t.push(hP(e,x,s,Bt)),b&&t.push(hP(e,x,s,Zt));const n=Ca(e.symbol,o,_,_,t);return n.objectFlags|=131200|h,m&&(n.objectFlags|=4096),g&&(n.objectFlags|=512),r&&(n.pattern=e),n}}function xP(e){const t=Ck(HC(e,lp));return!!(126615553&t.flags||3145728&t.flags&&T(t.types,xP))}function SP(e){return e.includes("-")}function TP(e){return YC(e)&&Jy(e.escapedText)||BI(e)}function wP(e,t){return e.initializer?AR(e.initializer,t):Jt}function kP(e,t){const n=[];for(const r of e.children)if(12===r.kind)r.containsOnlyTriviaWhiteSpaces||n.push(Ut);else{if(294===r.kind&&!r.expression)continue;n.push(AR(r,t))}return n}function EP(e,t,n){for(const r of Q_(e))if(!(16777216&r.flags)){const e=t.get(r.escapedName);if(e){xw(wo(e.valueDeclaration,ws._0_is_specified_more_than_once_so_this_usage_will_be_overwritten,wc(e.escapedName)),Vp(n,ws.This_spread_always_overwrites_this_property))}}}function CP(e,t){return function(e,t=0){const n=e.attributes,r=JD(n,0),i=K?o_():void 0;let o,s=o_(),a=Cn,c=!1,l=!1,u=2048;const d=MP(DP(e));for(const _ of n.properties){const e=_.symbol;if(LI(_)){const o=wP(_,t);u|=458752&Mx(o);const a=Po(4|e.flags,e.escapedName);if(a.declarations=e.declarations,a.parent=e.parent,e.valueDeclaration&&(a.valueDeclaration=e.valueDeclaration),a.links.type=o,a.links.target=e,s.set(a.escapedName,a),null==i||i.set(a.escapedName,a),hk(_.name)===d&&(l=!0),r){const t=df(r,e.escapedName);t&&t.declarations&&Ao(t)&&YC(_.name)&&Do(_.name,t.declarations,_.name.escapedText)}if(r&&2&t&&!(4&t)&&CS(_)){const e=ZD(n);Tn.assert(e),pE(e,_.initializer.expression,o)}}else{Tn.assert(293===_.kind),s.size>0&&(a=hx(a,f(),n.symbol,u,!1),s=o_());const e=Jp(qR(_.expression,2&t));Dc(e)&&(c=!0),xP(e)?(a=hx(a,e,n.symbol,u,!1),i&&EP(e,i,_)):(wo(_.expression,ws.Spread_types_may_only_be_created_from_object_types),o=o?Mv([o,e]):e)}}c||s.size>0&&(a=hx(a,f(),n.symbol,u,!1));const p=284===e.parent.kind?e.parent:void 0;if(p&&p.openingElement===e&&wy(p.children).length>0){const r=kP(p,t);if(!c&&d&&""!==d){l&&wo(n,ws._0_are_specified_twice_The_attribute_named_0_will_be_overwritten,wc(d));const t=qD(e.attributes,void 0),i=t&&CD(t,d),o=Po(4,d);o.links.type=1===r.length?r[0]:i&&qC(i,vw)?Gy(r):jy(fv(r)),o.valueDeclaration=oE.createPropertySignature(void 0,wc(d),void 0,void 0),Bw(o.valueDeclaration,n),o.valueDeclaration.symbol=o;const s=o_();s.set(d,o),a=hx(a,Ca(n.symbol,s,_,_,_),n.symbol,u,!1)}}return c?St:o&&a!==Cn?Mv([o,a]):o||(a===Cn?f():a);function f(){u|=8192;const e=Ca(n.symbol,s,_,_,_);return e.objectFlags|=131200|u,e}}(e.parent,t)}function NP(e,t){const n=DP(t),r=n&&$s(n),i=r&&Yo(r,e,788968);return i?Zu(i):Et}function AP(e){const t=Qo(e);if(!t.resolvedSymbol){const n=NP(Pz.IntrinsicElements,e);if(Mc(n))return Z&&wo(e,ws.JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists,wc(Pz.IntrinsicElements)),t.resolvedSymbol=gt;{if(!YC(e.tagName)&&!BI(e.tagName))return Tn.fail();const r=BI(e.tagName)?vk(e.tagName):e.tagName.escapedText,i=df(n,r);if(i)return t.jsxFlags|=1,t.resolvedSymbol=i;const o=vU(n,Nx(wc(r)));return o?(t.jsxFlags|=2,t.resolvedSymbol=o):Ac(n,r)?(t.jsxFlags|=2,t.resolvedSymbol=n.symbol):(wo(e,ws.Property_0_does_not_exist_on_type_1,xk(e.tagName),"JSX."+Pz.IntrinsicElements),t.resolvedSymbol=gt)}}return t.resolvedSymbol}function IP(e){const t=e&&C_(e),n=t&&Qo(t);if(n&&!1===n.jsxImplicitImportContainer)return;if(n&&n.jsxImplicitImportContainer)return n.jsxImplicitImportContainer;const r=lT(cT(N,t),N);if(!r)return;const i=1===FS(N)?ws.Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_nodenext_or_to_add_aliases_to_the_paths_option:ws.Cannot_find_module_0_or_its_corresponding_type_declarations,o=function(e,t){const n=N.importHelpers?1:0,r=null==e?void 0:e.imports[n];r&&Tn.assert(fy(r)&&r.text===t,`Expected sourceFile.imports[${n}] to be the synthesized JSX runtime import`);return r}(t,r),s=Ks(o||e,r,i,e),a=s&&s!==gt?oa(Ds(s)):void 0;return n&&(n.jsxImplicitImportContainer=a||!1),a}function DP(e){const t=e&&Qo(e);if(t&&t.jsxNamespace)return t.jsxNamespace;if(!t||!1!==t.jsxNamespace){let n=IP(e);if(!n||n===gt){const t=vo(e);n=Le(e,t,1920,void 0,!1)}if(n){const e=Ds(Yo($s(Ds(n)),Pz.JSX,1920));if(e&&e!==gt)return t&&(t.jsxNamespace=e),e}t&&(t.jsxNamespace=!1)}const n=Ds(hy(Pz.JSX,1920,void 0));return n!==gt?n:void 0}function PP(e,t){const n=t&&Yo(t.exports,e,788968),r=n&&Zu(n),i=r&&Q_(r);if(i){if(0===i.length)return"";if(1===i.length)return i[0].escapedName;i.length>1&&n.declarations&&wo(n.declarations[0],ws.The_global_type_JSX_0_may_not_have_more_than_one_property,wc(e))}}function MP(e){return PP(Pz.ElementChildrenAttributeNameContainer,e)}function OP(e,t){if(4&e.flags)return[ti];if(128&e.flags){const n=FP(e,t);if(n){return[FO(t,n)]}return wo(t,ws.Property_0_does_not_exist_on_type_1,e.value,"JSX."+Pz.IntrinsicElements),_}const n=Np(e);let r=pf(n,1);return 0===r.length&&(r=pf(n,0)),0===r.length&&1048576&n.flags&&(r=Wd(R(n.types,(e=>OP(e,t))))),r}function FP(e,t){const n=NP(Pz.IntrinsicElements,t);if(!Mc(n)){const t=df(n,Tc(e.value));if(t)return $l(t);const r=wf(n,Ut);return r||void 0}return St}function RP(e){var t;Tn.assert(TP(e.tagName));const n=Qo(e);if(!n.resolvedJsxElementAttributesType){const r=AP(e);if(1&n.jsxFlags)return n.resolvedJsxElementAttributesType=$l(r)||Et;if(2&n.jsxFlags){const r=BI(e.tagName)?vk(e.tagName):e.tagName.escapedText;return n.resolvedJsxElementAttributesType=(null==(t=Cf(NP(Pz.IntrinsicElements,e),r))?void 0:t.type)||Et}return n.resolvedJsxElementAttributesType=Et}return n.resolvedJsxElementAttributesType}function LP(e){const t=NP(Pz.ElementClass,e);if(!Mc(t))return t}function UP(e){return NP(Pz.Element,e)}function BP(e){const t=UP(e);if(t)return fv([t,jt])}function qP(e){const t=DP(e);if(!t)return;const n=(r=t)&&Yo(r.exports,Pz.ElementType,788968);var r;if(!n)return;const i=VP(n,Um(e));return i&&!Mc(i)?i:void 0}function VP(e,t,...n){const r=Zu(e);if(524288&e.flags){const i=Go(e).typeParameters;if(m(i)>=n.length){const o=Zf(n,i,n.length,t);return 0===m(o)?r:yg(e,o)}}if(m(r.typeParameters)>=n.length){return Wh(r,Zf(n,r.typeParameters,n.length,t))}}function KP(e){const t=Pd(e);var n;if(t&&function(e){(function(e){if(nA(e)&&BI(e.expression))return VB(e.expression,ws.JSX_property_access_expressions_cannot_include_JSX_namespace_names);if(BI(e)&&aT(N)&&!Jy(e.namespace.escapedText))VB(e,ws.React_components_cannot_include_JSX_namespace_names)})(e.tagName),TB(e,e.typeArguments);const t=new Map;for(const n of e.attributes.properties){if(293===n.kind)continue;const{name:e,initializer:r}=n,i=hk(e);if(t.get(i))return VB(e,ws.JSX_elements_cannot_have_multiple_attributes_with_the_same_name);if(t.set(i,!0),r&&294===r.kind&&!r.expression)return VB(r,ws.JSX_attributes_must_only_be_assigned_a_non_empty_expression)}}(e),n=e,0===(N.jsx||0)&&wo(n,ws.Cannot_use_JSX_unless_the_jsx_flag_is_provided),void 0===UP(n)&&Z&&wo(n,ws.JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist),GA(e),t){const t=e,n=jO(t);qO(n,e);const r=qP(t);if(void 0!==r){const e=t.tagName;DT(TP(e)?Nx(xk(e)):qR(e),r,uo,e,ws.Its_type_0_is_not_a_valid_JSX_element_type,(()=>{const t=ep(e);return gS(void 0,ws._0_cannot_be_used_as_a_JSX_component,t)}))}else!function(e,t,n){if(1===e){const e=BP(n);e&&DT(t,e,uo,n.tagName,ws.Its_return_type_0_is_not_a_valid_JSX_element,r)}else if(0===e){const e=LP(n);e&&DT(t,e,uo,n.tagName,ws.Its_instance_type_0_is_not_a_valid_JSX_element,r)}else{const e=BP(n),i=LP(n);if(!e||!i)return;DT(t,fv([e,i]),uo,n.tagName,ws.Its_element_type_0_is_not_a_valid_JSX_element,r)}function r(){const e=ep(n.tagName);return gS(void 0,ws._0_cannot_be_used_as_a_JSX_component,e)}}(_O(t),wm(n),t)}}function JP(e,t,n){if(524288&e.flags&&(H_(e,t)||Cf(e,t)||md(t)&&Tf(e,Ut)||n&&SP(t)))return!0;if(33554432&e.flags)return JP(e.baseType,t,n);if(3145728&e.flags&&WP(e))for(const r of e.types)if(JP(r,t,n))return!0;return!1}function WP(e){return!!(524288&e.flags&&!(512&Mx(e))||67108864&e.flags||33554432&e.flags&&WP(e.baseType)||1048576&e.flags&&$(e.types,WP)||2097152&e.flags&&T(e.types,WP))}function HP(e,t){if(function(e){if(e.expression&&pP(e.expression))VB(e.expression,ws.JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array)}(e),e.expression){const n=qR(e.expression,t);return e.dotDotDotToken&&n!==St&&!ow(n)&&wo(e,ws.JSX_spread_child_must_be_an_array_type),n}return Et}function GP(e){return e.valueDeclaration?ZB(e.valueDeclaration):0}function QP(e){if(8192&e.flags||4&bx(e))return!0;if(Um(e.valueDeclaration)){const t=e.valueDeclaration.parent;return t&&gA(t)&&3===dh(t)}}function YP(e,t,n,r,i,o=!0){return ZP(e,t,n,r,i,o?166===e.kind?e.right:205===e.kind?e:208===e.kind&&e.propertyName?e.propertyName:e.name:void 0)}function ZP(e,t,n,r,i,o){var s;const a=xx(i,n);if(t){if(D<2&&XP(i))return o&&wo(o,ws.Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword),!1;if(64&a)return o&&wo(o,ws.Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression,Qa(i),Za(GT(i))),!1;if(!(256&a)&&(null==(s=i.declarations)?void 0:s.some(wu)))return o&&wo(o,ws.Class_field_0_defined_by_the_parent_class_is_not_accessible_in_the_child_class_via_super,Qa(i)),!1}if(64&a&&XP(i)&&(hm(e)||ym(e)||ZN(e.parent)&&gm(e.parent.parent))){const t=Px(ca(i));if(t&&bc(e,(e=>!!(xN(e)&&R_(e.body)||gN(e))||!(!xu(e)&&!mu(e))&&"quit")))return o&&wo(o,ws.Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor,Qa(i),$g(t.name)),!1}if(!(6&a))return!0;if(2&a){return!!hU(e,Px(ca(i)))||(o&&wo(o,ws.Property_0_is_private_and_only_accessible_within_class_1,Qa(i),Za(GT(i))),!1)}if(t)return!0;let c=mU(e,(e=>YT(Zu(sa(e)),i,n)));return!c&&(c=function(e){const t=function(e){const t=cm(e,!1,!1);return t&&pu(t)?xv(t):void 0}(e);let n=(null==t?void 0:t.type)&&zx(t.type);n&&262144&n.flags&&(n=Z_(n));if(n&&7&Mx(n))return ru(n);return}(e),c=c&&YT(c,i,n),256&a||!c)?(o&&wo(o,ws.Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses,Qa(i),Za(GT(i)||r)),!1):!!(256&a)||(262144&r.flags&&(r=r.isThisType?Z_(r):cp(r)),!(!r||!su(r,c))||(o&&wo(o,ws.Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1_This_is_an_instance_of_class_2,Qa(i),Za(c),Za(r)),!1))}function XP(e){return!!HT(e,(e=>!(8192&e.flags)))}function $P(e){return sM(qR(e),e)}function eM(e){return gC(e,50331648)}function tM(e){return eM(e)?jk(e):e}function nM(e,t){const n=wb(e)?qp(e):void 0;if(106!==e.kind)if(void 0!==n&&n.length<100){if(YC(e)&&"undefined"===n)return void wo(e,ws.The_value_0_cannot_be_used_here,"undefined");wo(e,16777216&t?33554432&t?ws._0_is_possibly_null_or_undefined:ws._0_is_possibly_undefined:ws._0_is_possibly_null,n)}else wo(e,16777216&t?33554432&t?ws.Object_is_possibly_null_or_undefined:ws.Object_is_possibly_undefined:ws.Object_is_possibly_null);else wo(e,ws.The_value_0_cannot_be_used_here,"null")}function iM(e,t){wo(e,16777216&t?33554432&t?ws.Cannot_invoke_an_object_which_is_possibly_null_or_undefined:ws.Cannot_invoke_an_object_which_is_possibly_undefined:ws.Cannot_invoke_an_object_which_is_possibly_null)}function oM(e,t,n){if(K&&2&e.flags){if(wb(t)){const e=qp(t);if(e.length<100)return wo(t,ws._0_is_of_type_unknown,e),Et}return wo(t,ws.Object_is_of_type_unknown),Et}const r=hC(e,50331648);if(50331648&r){n(t,r);const i=jk(e);return 229376&i.flags?Et:i}return e}function sM(e,t){return oM(e,t,nM)}function aM(e,t){const n=sM(e,t);if(16384&n.flags){if(wb(t)){const e=qp(t);if(YC(t)&&"undefined"===e)return wo(t,ws.The_value_0_cannot_be_used_here,e),n;if(e.length<100)return wo(t,ws._0_is_possibly_undefined,e),n}wo(t,ws.Object_is_possibly_undefined)}return n}function cM(e,t,n){return 64&e.flags?function(e,t){const n=qR(e.expression),r=qk(n,e.expression);return Bk(hM(e,e.expression,sM(r,e.expression),e.name,t),e,r!==n)}(e,t):hM(e,e.expression,$P(e.expression),e.name,t,n)}function lM(e,t){const n=Dm(e)&&Tv(e.left)?sM(UI(e.left),e.left):$P(e.left);return hM(e,e.left,n,e.right,t)}function uM(e){for(;217===e.parent.kind;)e=e.parent;return Hu(e.parent)&&e.parent.expression===e}function dM(e,t){for(let n=am(t);n;n=im(n)){const{symbol:t}=n,r=ny(t,e),i=t.members&&t.members.get(r)||t.exports&&t.exports.get(r);if(i)return i}}function _M(e){!function(e){if(!im(e))return VB(e,ws.Private_identifiers_are_not_allowed_outside_class_bodies);if(!qA(e.parent)){if(!Am(e))return VB(e,ws.Private_identifiers_are_only_allowed_in_class_bodies_and_may_only_be_used_as_part_of_a_class_member_declaration_property_access_or_on_the_left_hand_side_of_an_in_expression);const t=gA(e.parent)&&103===e.parent.operatorToken.kind;if(!pM(e)&&!t)return VB(e,ws.Cannot_find_name_0,kc(e))}}(e);const t=pM(e);return t&&OM(t,void 0,!1),St}function pM(e){if(!Am(e))return;const t=Qo(e);return void 0===t.resolvedSymbol&&(t.resolvedSymbol=dM(e.escapedText,e)),t.resolvedSymbol}function fM(e,t){return df(e,t.escapedName)}function mM(e,t){return(el(t)||hm(e)&&tl(t))&&cm(e,!0,!1)===nl(t)}function hM(e,t,n,r,i,o){const s=Qo(t).resolvedSymbol,a=ig(e),c=Np(0!==a||uM(e)?eE(n):n),l=Dc(c)||c===tn;let u,d;if(ZC(r)){(D<9||D<99||!B)&&(0!==a&&mB(e,1048576),1!==a&&mB(e,524288));const t=dM(r.escapedText,r);if(a&&t&&t.valueDeclaration&&vN(t.valueDeclaration)&&VB(r,ws.Cannot_assign_to_private_method_0_Private_methods_are_not_writable,kc(r)),l){if(t)return Mc(c)?Et:c;if(void 0===am(r))return VB(r,ws.Private_identifiers_are_not_allowed_outside_class_bodies),St}if(u=t&&fM(n,t),void 0===u){if(function(e,t,n){let r;const i=Q_(e);i&&h(i,(e=>{const n=e.valueDeclaration;if(n&&Pc(n)&&ZC(n.name)&&n.name.escapedText===t.escapedText)return r=e,!0}));const o=rs(t);if(r){const i=Tn.checkDefined(r.valueDeclaration),s=Tn.checkDefined(im(i));if(null==n?void 0:n.valueDeclaration){const r=n.valueDeclaration,a=im(r);if(Tn.assert(!!a),bc(a,(e=>s===e)))return xw(wo(t,ws.The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_private_identifier_with_the_same_spelling,o,Za(e)),Vp(r,ws.The_shadowing_declaration_of_0_is_defined_here,o),Vp(i,ws.The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here,o)),!0}return wo(t,ws.Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier,o,rs(s.name||Fz)),!0}return!1}(n,r,t))return Et;const e=am(r);e&&A_(C_(e),N.checkJs)&&VB(r,ws.Private_field_0_must_be_declared_in_an_enclosing_class,kc(r))}else{65536&u.flags&&!(32768&u.flags)&&1!==a&&wo(e,ws.Private_accessor_was_defined_without_a_getter)}}else{if(l)return YC(t)&&s&&KA(e,2,void 0,n),Mc(c)?Et:c;u=df(c,r.escapedText,lR(c),166===e.kind)}if(KA(e,2,u,n),u){const n=Ez(u,r);if(Ao(n)&&Sb(e,n)&&n.declarations&&Do(r,n.declarations,r.escapedText),function(e,t,n){const{valueDeclaration:r}=e;if(!r||C_(t).isDeclarationFile)return;let i;const o=kc(n);!SM(t)||function(e){return gN(e)&&!Yv(e)&&e.questionToken}(r)||Bx(t)&&Bx(t.expression)||Xo(r,n)||vN(r)&&256&YB(r)||!B&&function(e){if(!(32&e.parent.flags))return!1;let t=$l(e.parent);for(;;){if(t=t.symbol&&wM(t),!t)return!1;const n=df(t,e.escapedName);if(n&&n.valueDeclaration)return!0}}(e)?263!==r.kind||183===t.parent.kind||33554432&r.flags||Xo(r,n)||(i=wo(n,ws.Class_0_used_before_its_declaration,o)):i=wo(n,ws.Property_0_is_used_before_its_initialization,o);i&&xw(i,Vp(r,ws._0_is_declared_here,o))}(u,e,r),OM(u,e,FM(t,s)),Qo(e).resolvedSymbol=u,YP(e,108===t.kind,kx(e),c,u),eR(e,u,a))return wo(r,ws.Cannot_assign_to_0_because_it_is_a_read_only_property,kc(r)),Et;d=mM(e,u)?Tt:o||wx(e)?Zl(u):$l(u)}else{const t=ZC(r)||0!==a&&qb(n)&&!nk(n)?void 0:Cf(c,r.escapedText);if(!t||!t.type){const t=gM(e,n.symbol,!0);return!t&&yb(n)?St:n.symbol===fe?(fe.exports.has(r.escapedText)&&418&fe.exports.get(r.escapedText).flags?wo(r,ws.Property_0_does_not_exist_on_type_1,wc(r.escapedText),Za(n)):Z&&wo(r,ws.Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature,Za(n)),St):(r.escapedText&&!os(e)&&kM(r,nk(n)?c:n,t),Et)}t.isReadonly&&(og(e)||mg(e))&&wo(e,ws.Index_signature_in_type_0_only_permits_reading,Za(c)),d=t.type,N.noUncheckedIndexedAccess&&1!==ig(e)&&(d=fv([d,Ft])),N.noPropertyAccessFromIndexSignature&&nA(e)&&wo(r,ws.Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0,wc(r.escapedText)),t.declaration&&Io(t.declaration)&&Do(r,[t.declaration],r.escapedText)}return yM(e,u,d,r,i)}function gM(e,t,n){var r;const i=C_(e);if(i&&void 0===N.checkJs&&void 0===i.checkJsDirective&&(1===i.scriptKind||2===i.scriptKind)){const o=h(null==t?void 0:t.declarations,C_),s=!(null==t?void 0:t.valueDeclaration)||!xu(t.valueDeclaration)||(null==(r=t.valueDeclaration.heritageClauses)?void 0:r.length)||km(!1,t.valueDeclaration);return!(i!==o&&o&&rf(o)||n&&t&&32&t.flags&&s||e&&n&&nA(e)&&110===e.expression.kind&&s)}return!1}function yM(e,t,n,r,i){const o=ig(e);if(1===o)return Vk(n,!!(t&&16777216&t.flags));if(t&&!(98311&t.flags)&&!(8192&t.flags&&1048576&n.flags)&&!Lz(t.declarations))return n;if(n===Tt)return al(e,t);n=zA(n,e,i);let s=!1;if(K&&Y&&Bx(e)&&110===e.expression.kind){const n=t&&t.valueDeclaration;if(n&&_z(n)&&!Jv(n)){const t=dA(e);176!==t.kind||t.parent!==n.parent||33554432&n.flags||(s=!0)}}else K&&t&&t.valueDeclaration&&nA(t.valueDeclaration)&&xh(t.valueDeclaration)&&dA(e)===dA(t.valueDeclaration)&&(s=!0);const a=aA(e,n,s?Lk(n):n);return s&&!xT(n)&&xT(a)?(wo(r,ws.Property_0_is_used_before_being_assigned,Qa(t)),n):o?qw(a):a}function SM(e){return!!bc(e,(e=>{switch(e.kind){case 172:return!0;case 303:case 174:case 177:case 178:case 305:case 167:case 239:case 294:case 291:case 292:case 293:case 286:case 233:case 298:return!1;case 219:case 244:return!(!OA(e.parent)||!bN(e.parent.parent))||"quit";default:return!Am(e)&&"quit"}}))}function wM(e){const t=Fu(e);if(0!==t.length)return Mv(t)}function kM(e,t,n){let r,i;if(!ZC(e)&&1048576&t.flags&&!(402784252&t.flags))for(const s of t.types)if(!df(s,e.escapedText)&&!Cf(s,e.escapedText)){r=gS(r,ws.Property_0_does_not_exist_on_type_1,Lp(e),Za(s));break}if(EM(e.escapedText,t)){const n=Lp(e),i=Za(t);r=gS(r,ws.Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead,n,i,i+"."+n)}else{const o=mL(t);if(o&&df(o,e.escapedText))r=gS(r,ws.Property_0_does_not_exist_on_type_1,Lp(e),Za(t)),i=Vp(e,ws.Did_you_forget_to_use_await);else{const o=Lp(e),s=Za(t),a=function(e,t){const n=Np(t).symbol;if(!n)return;const r=Cc(n),i=op().get(r);if(i)for(const[o,s]of i)if(A(s,e))return o}(o,t);if(void 0!==a)r=gS(r,ws.Property_0_does_not_exist_on_type_1_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2_or_later,o,s,a);else{const a=NM(e,t);if(void 0!==a){const e=Cc(a);r=gS(r,n?ws.Property_0_may_not_exist_on_type_1_Did_you_mean_2:ws.Property_0_does_not_exist_on_type_1_Did_you_mean_2,o,s,e),i=a.valueDeclaration&&Vp(a.valueDeclaration,ws._0_is_declared_here,e)}else{const e=function(e){return N.lib&&!N.lib.includes("dom")&&(t=e,n=e=>e.symbol&&/^(EventTarget|Node|((HTML[a-zA-Z]*)?Element))$/.test(wc(e.symbol.escapedName)),3145728&t.flags?T(t.types,n):n(t))&&vT(e);var t,n}(t)?ws.Property_0_does_not_exist_on_type_1_Try_changing_the_lib_compiler_option_to_include_dom:ws.Property_0_does_not_exist_on_type_1;r=gS(uf(r,t),e,o,s)}}}}const o=Wp(C_(e),e,r);i&&xw(o,i),ko(!n||r.code!==ws.Property_0_may_not_exist_on_type_1_Did_you_mean_2.code,o)}function EM(e,t){const n=t.symbol&&df($l(t.symbol),e);return void 0!==n&&!!n.valueDeclaration&&Jv(n.valueDeclaration)}function CM(e,t){return MM(e,Q_(t),106500)}function NM(e,t){let n=Q_(t);if("string"!=typeof e){const r=e.parent;nA(r)&&(n=M(n,(e=>RM(r,t,e)))),e=kc(e)}return MM(e,n,111551)}function AM(e,t){const n=lt(e)?e:kc(e),r=Q_(t);return("for"===n?w(r,(e=>"htmlFor"===Cc(e))):"class"===n?w(r,(e=>"className"===Cc(e))):void 0)??MM(n,r,111551)}function IM(e,t){const n=NM(e,t);return n&&Cc(n)}function DM(e,t,n){Tn.assert(void 0!==t,"outername should always be defined");return je(e,t,n,void 0,!1,!1)}function PM(e,t){return t.exports&&MM(kc(e),Ys(t),2623475)}function MM(e,t,n){return Ht(e,t,(function(e){const t=Cc(e);if(cn(t,'"'))return;if(e.flags&n)return t;if(2097152&e.flags){const r=function(e){if(Go(e).aliasTarget!==yt)return Ps(e)}(e);if(r&&r.flags&n)return t}return}))}function OM(e,t,n){const r=e&&106500&e.flags&&e.valueDeclaration;if(!r)return;const i=Vv(r,2),o=e.valueDeclaration&&Pc(e.valueDeclaration)&&ZC(e.valueDeclaration.name);if((i||o)&&(!t||!wx(t)||65536&e.flags)){if(n){const n=bc(t,mu);if(n&&n.symbol===e)return}(1&bx(e)?Go(e).target:e).isReferenced=-1}}function FM(e,t){return 110===e.kind||!!t&&wb(e)&&t===XE(kb(e))}function RM(e,t,n){return jM(e,211===e.kind&&108===e.expression.kind,!1,t,n)}function LM(e,t,n,r){if(Dc(r))return!0;const i=df(r,n);return!!i&&jM(e,t,!1,r,i)}function jM(e,t,n,r,i){if(Dc(r))return!0;if(i.valueDeclaration&&iu(i.valueDeclaration)){const t=im(i.valueDeclaration);return!Cl(e)&&!!bc(e,(e=>e===t))}return ZP(e,t,n,r,i)}function zM(e){const t=e.initializer;if(261===t.kind){const e=t.declarations[0];if(e&&!Mu(e.name))return sa(e)}else if(80===t.kind)return XE(t)}function UM(e,t){return 64&e.flags?function(e,t){const n=qR(e.expression),r=qk(n,e.expression);return Bk(BM(e,sM(r,e.expression),t),e,r!==n)}(e,t):BM(e,$P(e.expression),t)}function BM(e,t,n){const r=0!==ig(e)||uM(e)?eE(t):t,i=e.argumentExpression,o=qR(i);if(Mc(r)||r===tn)return r;if(lR(r)&&!Hd(i))return wo(i,ws.A_const_enum_member_can_only_be_accessed_using_a_string_literal),Et;const s=function(e){const t=fg(e);if(80===t.kind){const r=XE(t);if(3&r.flags){let t=e,i=e.parent;for(;i;){if(249===i.kind&&t===i.statement&&zM(i)===r&&1===Sf(n=zR(i.expression)).length&&Tf(n,Bt))return!0;t=i,i=i.parent}}}var n;return!1}(i)?Bt:o,a=ig(e);let c;0===a?c=32:(c=4|(qb(r)&&!nk(r)?2:0),2===a&&(c|=32));const l=Zb(r,s,c,e)||Et;return aL(yM(e,Qo(e).resolvedSymbol,l,i,n),e)}function qM(e){return Hu(e)||sA(e)||Pd(e)}function VM(e){return qM(e)&&h(e.typeArguments,Uz),215===e.kind?qR(e.template):Pd(e)?qR(e.attributes):gA(e)?qR(e.left):Hu(e)&&h(e.arguments,(e=>{qR(e)})),ti}function KM(e){return VM(e),ni}function JM(e){return!!e&&(230===e.kind||237===e.kind&&e.isSpread)}function WM(e){return E(e,JM)}function HM(e){return!!(16384&e.flags)}function YM(e){return!!(49155&e.flags)}function ZM(e,t,n,r=!1){let i,o=!1,s=gF(n),a=yF(n);if(215===e.kind)if(i=t.length,228===e.template.kind){const t=Ae(e.template.templateSpans);o=F_(t.literal)||!!t.literal.isUnterminated}else{const t=e.template;Tn.assert(15===t.kind),o=!!t.isUnterminated}else if(170===e.kind)i=yO(e,n);else if(226===e.kind)i=1;else if(Pd(e)){if(o=e.attributes.end===e.end,o)return!0;i=0===a?t.length:1,s=0===t.length?s:1,a=Math.min(a,1)}else{if(!e.arguments)return Tn.assert(214===e.kind),0===yF(n);{i=r?t.length+1:t.length,o=e.arguments.end===e.end;const s=WM(t);if(s>=0)return s>=yF(n)&&(vF(n)||s<gF(n))}}if(!vF(n)&&i>s)return!1;if(o||i>=a)return!0;for(let c=i;c<a;c++){if(131072&KC(pF(n,c),Um(e)&&!K?YM:HM).flags)return!1}return!0}function XM(e,t){const n=m(e.typeParameters),r=Wf(e.typeParameters);return!$(t)||t.length>=r&&t.length<=n}function eO(e,t){let n;return!!(e.target&&(n=fF(e.target,t))&&Bb(n))}function nO(e){return iO(e,0,!1)}function rO(e){return iO(e,0,!1)||iO(e,1,!1)}function iO(e,t,n){if(524288&e.flags){const r=J_(e);if(n||0===r.properties.length&&0===r.indexInfos.length){if(0===t&&1===r.callSignatures.length&&0===r.constructSignatures.length)return r.callSignatures[0];if(1===t&&1===r.constructSignatures.length&&0===r.callSignatures.length)return r.constructSignatures[0]}}}function oO(e,t,n,r){const i=lE(e.typeParameters,e,0,r),o=bF(t),s=n&&(o&&262144&o.flags?n.nonFixingMapper:n.mapper);return sE(s?sS(t,s):t,e,((e,t)=>{jE(i.inferences,e,t)})),n||cE(t,e,((e,t)=>{jE(i.inferences,e,t,128)})),qm(e,YE(i),Um(t.declaration))}function sO(e){if(!e)return Xt;const t=qR(e);return Ob(e)?t:Nl(e.parent)?jk(t):Cl(e.parent)?Uk(t):t}function aO(e,t,n,r,i){if(Pd(e))return function(e,t,n,r){const i=XD(t,e),o=SR(e.attributes,i,r,n);return jE(r.inferences,o,i),YE(r)}(e,t,r,i);if(170!==e.kind&&226!==e.kind){const n=T(t.typeParameters,(e=>!!Tp(e))),r=JD(e,n?8:0);if(r){const o=wm(t);if(gE(o)){const s=ZD(e);if(!(!n&&JD(e,8)!==r)){const e=hE(function(e,t=0){return e&&uE(R(e.inferences,mE),e.signature,e.flags|t,e.compareTypes)}(s,1)),t=SS(r,e),n=nO(t),a=n&&n.typeParameters?fh(Wm(n,n.typeParameters)):t;jE(i.inferences,a,o,128)}const a=lE(t.typeParameters,t,i.flags),c=SS(r,s&&s.returnMapper);jE(a.inferences,c,o),i.returnMapper=$(a.inferences,OR)?hE(function(e){const t=M(e.inferences,OR);return t.length?uE(R(t,mE),e.signature,e.flags,e.compareTypes):void 0}(a)):void 0}}}const o=xF(t),s=o?Math.min(gF(t)-1,n.length):n.length;if(o&&262144&o.flags){const e=w(i.inferences,(e=>e.typeParameter===o));e&&(e.impliedArity=E(n,JM,s)<0?n.length-s:void 0)}const a=fm(t);if(a&&gE(a)){const t=mO(e);jE(i.inferences,sO(t),a)}for(let c=0;c<s;c++){const e=n[c];if(232!==e.kind){const n=pF(t,c);if(gE(n)){const t=SR(e,n,i,r);jE(i.inferences,t,n)}}}if(o&&gE(o)){const e=uO(n,s,n.length,o,i,r);jE(i.inferences,e,o)}return YE(i)}function cO(e){return 1048576&e.flags?HC(e,cO):1&e.flags||lw(cp(e)||e)?e:$w(e)?Gy(iv(e),e.target.elementFlags,!1,e.target.labeledElementDeclarations):Gy([e],[8])}function uO(e,t,n,r,i,o){const s=X_(r);if(t>=n-1){const t=e[n-1];if(JM(t)){const e=237===t.kind?t.type:SR(t.expression,r,i,o);return dw(e)?cO(e):jy(hj(33,e,Mt,230===t.kind?t.expression:t),s)}}const a=[],c=[],l=[];for(let u=t;u<n;u++){const d=e[u];if(JM(d)){const e=237===d.kind?d.type:qR(d.expression);dw(e)?(a.push(e),c.push(8)):(a.push(hj(33,e,Mt,230===d.kind?d.expression:d)),c.push(4))}else{const e=$w(r)?OD(r,u-t,n-t)||Dt:Qb(r,Ax(u-t),256),l=SR(d,e,i,o),_=s||sR(e,406978556);a.push(_?Ex(l):Kw(l)),c.push(1)}237===d.kind&&d.tupleNameSource?l.push(d.tupleNameSource):l.push(void 0)}return Gy(a,c,s&&!qC(r,_w),l)}function dO(e,t,n,r){const i=Um(e.declaration),o=e.typeParameters,s=Zf(R(t,zx),o,Wf(o),i);let a;for(let c=0;c<t.length;c++){Tn.assert(void 0!==o[c],"Should not call checkTypeArguments with too many type arguments");const e=Z_(o[c]);if(e){const i=n&&r?()=>gS(void 0,ws.Type_0_does_not_satisfy_the_constraint_1):void 0,l=r||ws.Type_0_does_not_satisfy_the_constraint_1;a||(a=Gx(o,s));const u=s[c];if(!$S(u,Cd(SS(e,a),u),n?t[c]:void 0,l,i))return}}return s}function _O(e){if(TP(e.tagName))return 2;const t=Np(qR(e.tagName));return m(pf(t,1))?0:m(pf(t,0))?1:2}function pO(e){return EA(e=fg(e))?fg(e.expression):e}function fO(e,t,n,r,i,o,s,a){const c={errors:void 0,skipLogging:!0};if(Pd(e))return function(e,t,n,r,i,o,s){const a=XD(t,e),c=SR(e.attributes,a,void 0,r),l=4&r?Gk(c):c;return function(){var t;if(IP(e))return!0;const n=!PI(e)&&!DI(e)||TP(e.tagName)||BI(e.tagName)?void 0:qR(e.tagName);if(!n)return!0;const r=pf(n,0);if(!m(r))return!0;const o=dB(e);if(!o)return!0;const a=zs(o,111551,!0,!1,e);if(!a)return!0;const c=pf($l(a),0);if(!m(c))return!0;let l=!1,u=0;for(const e of c){const t=pf(pF(e,0),0);if(m(t))for(const e of t){if(l=!0,vF(e))return!0;const t=gF(e);t>u&&(u=t)}}if(!l)return!0;let d=1/0;for(const e of r){const t=yF(e);t<d&&(d=t)}if(d<=u)return!0;if(i){const n=Vp(e.tagName,ws.Tag_0_expects_at_least_1_arguments_but_the_JSX_factory_2_provides_at_most_3,qp(e.tagName),d,qp(o),u),r=null==(t=xU(e.tagName))?void 0:t.valueDeclaration;r&&xw(n,Vp(r,ws._0_is_declared_here,qp(e.tagName))),s&&s.skipLogging&&(s.errors||(s.errors=[])).push(n),s.skipLogging||oo.add(n)}return!1}()&&rT(l,a,n,i?e.tagName:void 0,e.attributes,void 0,o,s)}(e,n,r,i,o,s,c)?void 0:(Tn.assert(!o||!!c.errors,"jsx should have errors when reporting errors"),c.errors||_);const l=fm(n);if(l&&l!==Xt&&!(oA(e)||iA(e)&&mm(e.expression))){const t=mO(e),n=sO(t),i=o?t||e:void 0,a=ws.The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1;if(!DT(n,l,r,i,a,s,c))return Tn.assert(!o||!!c.errors,"this parameter should have errors when reporting errors"),c.errors||_}const u=ws.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1,d=xF(n),p=d?Math.min(gF(n)-1,t.length):t.length;for(let m=0;m<p;m++){const e=t[m];if(232!==e.kind){const t=pF(n,m),l=SR(e,t,void 0,i),d=4&i?Gk(l):l,p=a?SS(d,a.nonFixingMapper):d,h=pO(e);if(!rT(p,t,r,o?h:void 0,h,u,s,c))return Tn.assert(!o||!!c.errors,"parameter should have errors when reporting errors"),f(e,p,t),c.errors||_}}if(d){const n=uO(t,p,t.length,d,void 0,i),s=t.length-p,a=o?0===s?e:1===s?pO(t[p]):jw(hO(e,n),t[p].pos,t[t.length-1].end):void 0;if(!DT(n,d,r,a,u,void 0,c))return Tn.assert(!o||!!c.errors,"rest parameter should have errors when reporting errors"),f(a,n,d),c.errors||_}return;function f(e,t,n){if(e&&o&&c.errors&&c.errors.length){if(fL(n))return;const i=fL(t);i&&ET(i,n,r)&&xw(c.errors[0],Vp(e,ws.Did_you_forget_to_use_await))}}}function mO(e){if(226===e.kind)return e.right;const t=213===e.kind?e.expression:215===e.kind?e.tag:170!==e.kind||L?void 0:e.expression;if(t){const e=gP(t);if(Bx(e))return e.expression}}function hO(e,t,n,r){const i=TM.createSyntheticExpression(t,n,r);return vM(i,e),Bw(i,e),i}function gO(e){if(215===e.kind){const t=e.template,n=[hO(t,Nr||(Nr=gy("TemplateStringsArray",0,!0)||En))];return 228===t.kind&&h(t.templateSpans,(e=>{n.push(e.expression)})),n}if(170===e.kind)return function(e){const t=e.expression,n=jF(e);if(n){const e=[];for(const r of n.parameters){const n=$l(r);e.push(hO(t,n))}return e}return Tn.fail()}(e);if(226===e.kind)return[e.left];if(Pd(e))return e.attributes.properties.length>0||PI(e)&&e.parent.children.length>0?[e.attributes]:_;const t=e.arguments||_,n=WM(t);if(n>=0){const e=t.slice(0,n);for(let r=n;r<t.length;r++){const n=t[r],i=230===n.kind&&(gi?qR(n.expression):TR(n.expression));i&&$w(i)?h(iv(i),((t,r)=>{var o;const s=i.target.elementFlags[r],a=hO(n,4&s?jy(t):t,!!(12&s),null==(o=i.target.labeledElementDeclarations)?void 0:o[r]);e.push(a)})):e.push(n)}return e}return t}function yO(e,t){return N.experimentalDecorators?function(e,t){switch(e.parent.kind){case 263:case 231:return 1;case 172:return Yv(e.parent)?3:2;case 174:case 177:case 178:return t.parameters.length<=2?2:3;case 169:return 3;default:return Tn.fail()}}(e,t):Math.min(Math.max(gF(t),1),2)}function vO(e){const t=C_(e),{start:n,length:r}=nf(t,nA(e.expression)?e.expression.name:e.expression);return{start:n,length:r,sourceFile:t}}function bO(e,t,...n){if(iA(e)){const{sourceFile:r,start:i,length:o}=vO(e);return"message"in t?pS(r,i,o,t,...n):Yp(r,t)}return"message"in t?Vp(e,t,...n):Wp(C_(e),e,t)}function xO(e,t,n,r){var i;const o=WM(n);if(o>-1)return Vp(n[o],ws.A_spread_argument_must_either_have_a_tuple_type_or_be_passed_to_a_rest_parameter);let s,a=Number.POSITIVE_INFINITY,c=Number.NEGATIVE_INFINITY,l=Number.NEGATIVE_INFINITY,u=Number.POSITIVE_INFINITY;for(const m of t){const e=yF(m),t=gF(m);e<a&&(a=e,s=m),c=Math.max(c,t),e<n.length&&e>l&&(l=e),n.length<t&&t<u&&(u=t)}const d=$(t,vF),_=d?a:a<c?a+"-"+c:a,p=!d&&1===_&&0===n.length&&function(e){if(!iA(e)||!YC(e.expression))return!1;const t=Le(e.expression,e.expression.escapedText,111551,void 0,!1),n=null==t?void 0:t.valueDeclaration;if(!(n&&fN(n)&&Xw(n.parent)&&oA(n.parent.parent)&&YC(n.parent.parent.expression)))return!1;const r=Ny(!1);return!!r&&xU(n.parent.parent.expression,!0)===r}(e);if(p&&Um(e))return bO(e,ws.Expected_1_argument_but_got_0_new_Promise_needs_a_JSDoc_hint_to_produce_a_resolve_that_can_be_called_without_arguments);const f=mN(e)?d?ws.The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_at_least_0:ws.The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_0:d?ws.Expected_at_least_0_arguments_but_got_1:p?ws.Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise:ws.Expected_0_arguments_but_got_1;if(a<n.length&&n.length<c){if(r){let t=gS(void 0,ws.No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments,n.length,l,u);return t=gS(t,r),bO(e,t)}return bO(e,ws.No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments,n.length,l,u)}if(n.length<a){let t;if(r){let i=gS(void 0,f,_,n.length);i=gS(i,r),t=bO(e,i)}else t=bO(e,f,_,n.length);const o=null==(i=null==s?void 0:s.declaration)?void 0:i.parameters[s.thisParameter?n.length+1:n.length];if(o){return xw(t,Vp(o,...Mu(o.name)?[ws.An_argument_matching_this_binding_pattern_was_not_provided]:Yd(o)?[ws.Arguments_for_the_rest_parameter_0_were_not_provided,kc(kb(o.name))]:[ws.An_argument_for_0_was_not_provided,o.name?kc(kb(o.name)):n.length]))}return t}{const t=oE.createNodeArray(n.slice(c)),i=Ee(t).pos;let o=Ae(t).end;if(o===i&&o++,jw(t,i,o),r){let i=gS(void 0,f,_,n.length);return i=gS(i,r),Hp(C_(e),t,i)}return Kp(C_(e),t,f,_,n.length)}}function SO(e,t,n,r,i,o){const s=215===e.kind,a=170===e.kind,c=Pd(e),l=226===e.kind,u=!b&&!n;let d;a||l||ff(e)||(d=e.typeArguments,(s||c||108!==e.expression.kind)&&h(d,Uz));const p=n||[];!function(e,t,n){let r,i,o,s,a=0,c=-1;Tn.assert(!t.length);for(const l of e){const e=l.declaration&&sa(l.declaration),u=l.declaration&&l.declaration.parent;i&&e!==i?(o=a=t.length,r=u):r&&u===r?o+=1:(r=u,o=a),i=e,nU(l)?(c++,s=c,a++):s=o,t.splice(s,0,n?Fd(l,n):l)}}(t,p,i),Tn.assert(p.length,"Revert #54442 and add a testcase with whatever triggered this");const f=gO(e),g=1===p.length&&!p[0].typeParameters;let y,v,x,S,k=a||g||!$(f,CS)?0:4;const E=!!(16&r)&&213===e.kind&&e.arguments.hasTrailingComma;if(p.length>1&&(S=A(p,co,g,E)),S||(S=A(p,uo,g,E)),S)return S;if(S=function(e,t,n,r,i){return Tn.assert(t.length>0),Zz(e),r||1===t.length||t.some((e=>!!e.typeParameters))?function(e,t,n,r){const i=function(e,t){let n=-1,r=-1;for(let i=0;i<e.length;i++){const o=e[i],s=gF(o);if(vF(o)||s>=t)return i;s>r&&(r=s,n=i)}return n}(t,void 0===ye?n.length:ye),o=t[i],{typeParameters:s}=o;if(!s)return o;const a=qM(e)?e.typeArguments:void 0,c=a?Qm(o,function(e,t,n){const r=e.map(SU);for(;r.length>t.length;)r.pop();for(;r.length<t.length;)r.push(Tp(t[r.length])||Z_(t[r.length])||QE(n));return r}(a,s,Um(e))):function(e,t,n,r,i){const o=lE(t,n,Um(e)?2:0),s=aO(e,n,r,12|i,o);return Qm(n,s)}(e,s,o,n,r);return t[i]=c,c}(e,t,n,i):function(e){const t=J(e,(e=>e.thisParameter));let n;t.length&&(n=wO(t,t.map(aF)));const{min:r,max:i}=Sw(e,TO),o=[];for(let c=0;c<i;c++){const t=J(e,(e=>tU(e)?c<e.parameters.length-1?e.parameters[c]:Ae(e.parameters):c<e.parameters.length?e.parameters[c]:void 0));Tn.assert(0!==t.length),o.push(wO(t,J(e,(e=>fF(e,c)))))}const s=J(e,(e=>tU(e)?Ae(e.parameters):void 0));let a=128;if(0!==s.length){const t=jy(fv(J(e,zm),2));o.push(kO(s,t)),a|=1}e.some(nU)&&(a|=2);return Ad(e[0].declaration,void 0,n,o,Mv(e.map(wm)),void 0,r,a)}(t)}(e,p,f,!!n,r),Qo(e).resolvedSignature=S,u)if(!o&&l&&(o=ws.The_left_hand_side_of_an_instanceof_expression_must_be_assignable_to_the_first_argument_of_the_right_hand_side_s_Symbol_hasInstance_method),y)if(1===y.length||y.length>3){const t=y[y.length-1];let n;y.length>3&&(n=gS(n,ws.The_last_overload_gave_the_following_error),n=gS(n,ws.No_overload_matches_this_call)),o&&(n=gS(n,o));const r=fO(e,f,t,uo,0,!0,(()=>n),void 0);if(r)for(const e of r)t.declaration&&y.length>3&&xw(e,Vp(t.declaration,ws.The_last_overload_is_declared_here)),N(t,e),oo.add(e);else Tn.fail("No error for last overload signature")}else{const t=[];let n=0,r=Number.MAX_VALUE,i=0,s=0;for(const o of y){const a=fO(e,f,o,uo,0,!0,(()=>gS(void 0,ws.Overload_0_of_1_2_gave_the_following_error,s+1,p.length,Ya(o))),void 0);a?(a.length<=r&&(r=a.length,i=s),n=Math.max(n,a.length),t.push(a)):Tn.fail("No error for 3 or fewer overload signatures"),s++}const a=n>1?t[i]:z(t);Tn.assert(a.length>0,"No errors reported for 3 or fewer overload signatures");let c=gS(R(a,Zp),ws.No_overload_matches_this_call);o&&(c=gS(c,o));const l=[...U(a,(e=>e.relatedInformation))];let u;if(T(a,(e=>e.start===a[0].start&&e.length===a[0].length&&e.file===a[0].file))){const{file:e,start:t,length:n}=a[0];u={file:e,start:t,length:n,code:c.code,category:c.category,messageText:c,relatedInformation:l}}else u=Wp(C_(e),Hu(C=e)?nA(C.expression)?C.expression.name:C.expression:sA(C)?nA(C.tag)?C.tag.name:C.tag:Pd(C)?C.tagName:C,c,l);N(y[0],u),oo.add(u)}else if(v)oo.add(xO(e,[v],f,o));else if(x)dO(x,e.typeArguments,!0,o);else{const n=M(t,(e=>XM(e,d)));0===n.length?oo.add(function(e,t,n,r){const i=n.length;if(1===t.length){const o=t[0],s=Wf(o.typeParameters),a=m(o.typeParameters);if(r){let t=gS(void 0,ws.Expected_0_type_arguments_but_got_1,s<a?s+"-"+a:s,i);return t=gS(t,r),Hp(C_(e),n,t)}return Kp(C_(e),n,ws.Expected_0_type_arguments_but_got_1,s<a?s+"-"+a:s,i)}let o=-1/0,s=1/0;for(const a of t){const e=Wf(a.typeParameters),t=m(a.typeParameters);e>i?s=Math.min(s,e):t<i&&(o=Math.max(o,t))}if(o!==-1/0&&s!==1/0){if(r){let t=gS(void 0,ws.No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments,i,o,s);return t=gS(t,r),Hp(C_(e),n,t)}return Kp(C_(e),n,ws.No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments,i,o,s)}if(r){let t=gS(void 0,ws.Expected_0_type_arguments_but_got_1,o===-1/0?s:o,i);return t=gS(t,r),Hp(C_(e),n,t)}return Kp(C_(e),n,ws.Expected_0_type_arguments_but_got_1,o===-1/0?s:o,i)}(e,t,d,o)):oo.add(xO(e,n,f,o))}var C;return S;function N(e,t){var n,r;const i=y,o=v,s=x,a=(null==(r=null==(n=e.declaration)?void 0:n.symbol)?void 0:r.declarations)||_,c=a.length>1?w(a,(e=>mu(e)&&R_(e.body))):void 0;if(c){const e=Xf(c),n=!e.typeParameters;A([e],uo,n)&&xw(t,Vp(c,ws.The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_are_not_externally_visible))}y=i,v=o,x=s}function A(t,n,r,i=!1){var o,s;if(y=void 0,v=void 0,x=void 0,r){const r=t[0];if($(d)||!ZM(e,f,r,i))return;return fO(e,f,r,n,0,!1,void 0,void 0)?void(y=[r]):r}for(let a=0;a<t.length;a++){let r,c,l=t[a];if(XM(l,d)&&ZM(e,f,l,i)){if(l.typeParameters){const t=(null==(s=null==(o=l.typeParameters[0].symbol.declarations)?void 0:o[0])?void 0:s.parent)||(l.declaration&&xN(l.declaration)?l.declaration.parent:l.declaration);let n;if(t&&bc(e,(e=>e===t))&&(l=ah(l)),$(d)){if(n=dO(l,d,!1),!n){x=l;continue}}else c=lE(l.typeParameters,l,Um(e)?2:0),n=Jx(aO(e,l,f,8|k,c),c.nonFixingMapper),k|=4&c.flags?8:0;if(r=qm(l,n,Um(l.declaration),c&&c.inferredTypeParameters),xF(l)&&!ZM(e,f,r,i)){v=r;continue}}else r=l;if(!fO(e,f,r,n,k,!1,void 0,c)){if(k){if(k=0,c){if(r=qm(l,Jx(aO(e,l,f,k,c),c.mapper),Um(l.declaration),c.inferredTypeParameters),xF(l)&&!ZM(e,f,r,i)){v=r;continue}}if(fO(e,f,r,n,k,!1,void 0,c)){(y||(y=[])).push(r);continue}}return t[a]=r,r}(y||(y=[])).push(r)}}}}function TO(e){const t=e.parameters.length;return tU(e)?t-1:t}function wO(e,t){return kO(e,fv(t,2))}function kO(e,t){return Hk(Ee(e),t)}function EO(e){return!(!e.typeParameters||!QU(wm(e)))}function CO(e,t,n,r){return Dc(e)||Dc(t)&&!!(262144&e.flags)||!n&&!r&&!(1048576&t.flags)&&!(131072&Jp(t).flags)&&WS(e,Hn)}function NO(e,t,n){let r=$P(e.expression);if(r===tn)return ii;if(r=Np(r),Mc(r))return KM(e);if(Dc(r))return e.typeArguments&&wo(e,ws.Untyped_function_calls_may_not_accept_type_arguments),VM(e);const i=pf(r,1);if(i.length){if(!function(e,t){if(!t||!t.declaration)return!0;const n=t.declaration,r=$v(n,6);if(!r||176!==n.kind)return!0;const i=Px(n.parent.symbol),o=Zu(n.parent.symbol);if(!hU(e,i)){const t=im(e);if(t&&4&r){const e=SU(t);if(IO(n.parent.symbol,e))return!0}return 2&r&&wo(e,ws.Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration,Za(o)),4&r&&wo(e,ws.Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration,Za(o)),!1}return!0}(e,i[0]))return KM(e);if(AO(i,(e=>!!(4&e.flags))))return wo(e,ws.Cannot_create_an_instance_of_an_abstract_class),KM(e);const o=r.symbol&&Px(r.symbol);return o&&Kv(o,64)?(wo(e,ws.Cannot_create_an_instance_of_an_abstract_class),KM(e)):SO(e,i,t,n,0)}const o=pf(r,0);if(o.length){const r=SO(e,o,t,n,0);return Z||(r.declaration&&!zO(r.declaration)&&wm(r)!==Xt&&wo(e,ws.Only_a_void_function_can_be_called_with_the_new_keyword),fm(r)===Xt&&wo(e,ws.A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void)),r}return PO(e.expression,r,1),KM(e)}function AO(e,t){return at(e)?$(e,(e=>AO(e,t))):1048576===e.compositeKind?$(e.compositeSignatures,t):t(e)}function IO(e,t){const n=Fu(t);if(!m(n))return!1;const r=n[0];if(2097152&r.flags){const t=u_(r.types);let n=0;for(const i of r.types){if(!t[n]&&3&Mx(i)){if(i.symbol===e)return!0;if(IO(e,i))return!0}n++}return!1}return r.symbol===e||IO(e,r)}function DO(e,t,n){let r;const i=0===n,o=SL(t),s=o&&pf(o,n).length>0;if(1048576&t.flags){const e=t.types;let o=!1;for(const s of e){if(0!==pf(s,n).length){if(o=!0,r)break}else if(r||(r=gS(r,i?ws.Type_0_has_no_call_signatures:ws.Type_0_has_no_construct_signatures,Za(s)),r=gS(r,i?ws.Not_all_constituents_of_type_0_are_callable:ws.Not_all_constituents_of_type_0_are_constructable,Za(t))),o)break}o||(r=gS(void 0,i?ws.No_constituent_of_type_0_is_callable:ws.No_constituent_of_type_0_is_constructable,Za(t))),r||(r=gS(r,i?ws.Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_other:ws.Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_with_each_other,Za(t)))}else r=gS(r,i?ws.Type_0_has_no_call_signatures:ws.Type_0_has_no_construct_signatures,Za(t));let a=i?ws.This_expression_is_not_callable:ws.This_expression_is_not_constructable;if(iA(e.parent)&&0===e.parent.arguments.length){const{resolvedSymbol:t}=Qo(e);t&&32768&t.flags&&(a=ws.This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without)}return{messageChain:gS(r,a),relatedMessage:s?ws.Did_you_forget_to_use_await:void 0}}function PO(e,t,n,r){const{messageChain:i,relatedMessage:o}=DO(e,t,n),s=Wp(C_(e),e,i);if(o&&xw(s,Vp(e,o)),iA(e.parent)){const{start:t,length:n}=vO(e.parent);s.start=t,s.length=n}oo.add(s),MO(t,n,r?xw(s,r):s)}function MO(e,t,n){if(!e.symbol)return;const r=Go(e.symbol).originatingImport;if(r&&!mf(r)){const i=pf($l(Go(e.symbol).target),t);if(!i||!i.length)return;xw(n,Vp(r,ws.Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cause_a_failure_at_runtime_Consider_using_a_default_import_or_import_require_here_instead))}}function OO(e,t,n){const r=qR(e.expression),i=Np(r);if(Mc(i))return KM(e);const o=pf(i,0),s=pf(i,1).length;if(CO(r,i,o.length,s))return VM(e);if(a=e,(c=o).length&&T(c,(e=>0===e.minArgumentCount&&!tU(e)&&e.parameters.length<yO(a,e)))&&!cA(e.expression)){const t=ep(e.expression,!1);return wo(e,ws._0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0,t),KM(e)}var a,c;const l=function(e){switch(e.parent.kind){case 263:case 231:return ws.Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression;case 169:return ws.Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression;case 172:return ws.Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression;case 174:case 177:case 178:return ws.Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression;default:return Tn.fail()}}(e);if(!o.length){const t=DO(e.expression,i,0),n=gS(t.messageChain,l),r=Wp(C_(e.expression),e.expression,n);return t.relatedMessage&&xw(r,Vp(e.expression,t.relatedMessage)),oo.add(r),MO(i,0,r),KM(e)}return SO(e,o,t,n,0,l)}function FO(e,t){const n=DP(e),r=n&&$s(n),i=r&&Yo(r,Pz.Element,788968),o=i&&ae.symbolToEntityName(i,788968,e),s=oE.createFunctionTypeNode(void 0,[oE.createParameterDeclaration(void 0,void 0,"props",void 0,ae.typeToTypeNode(t,e))],o?oE.createTypeReferenceNode(o,void 0):oE.createKeywordTypeNode(133)),a=Po(1,"props");return a.links.type=t,Ad(s,void 0,void 0,[a],i?Zu(i):Et,void 0,1,0)}function RO(e,t,n){if(TP(e.tagName)){const t=RP(e),n=FO(e,t);return tT(SR(e.attributes,XD(n,e),void 0,0),t,e.tagName,e.attributes),m(e.typeArguments)&&(h(e.typeArguments,Uz),oo.add(Kp(C_(e),e.typeArguments,ws.Expected_0_type_arguments_but_got_1,0,m(e.typeArguments)))),n}const r=qR(e.tagName),i=Np(r);if(Mc(i))return KM(e);const o=OP(r,e);return CO(r,i,o.length,0)?VM(e):0===o.length?(wo(e.tagName,ws.JSX_element_type_0_does_not_have_any_construct_or_call_signatures,ep(e.tagName)),KM(e)):SO(e,o,t,n,0)}function LO(e,t,n){switch(e.kind){case 213:return function(e,t,n){if(108===e.expression.kind){const r=VI(e.expression);if(Dc(r)){for(const t of e.arguments)qR(t);return ti}if(!Mc(r)){const i=Cg(im(e));if(i)return SO(e,Nu(r,i.typeArguments,i),t,n,0)}return VM(e)}let r,i=qR(e.expression);if(El(e)){const t=qk(i,e.expression);r=t===i?0:Il(e)?16:8,i=t}else r=0;if(i=oM(i,e.expression,iM),i===tn)return ii;const o=Np(i);if(Mc(o))return KM(e);const s=pf(o,0),a=pf(o,1).length;if(CO(i,o,s.length,a))return!Mc(i)&&e.typeArguments&&wo(e,ws.Untyped_function_calls_may_not_accept_type_arguments),VM(e);if(!s.length){if(a)wo(e,ws.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new,Za(i));else{let t;if(1===e.arguments.length){const n=C_(e).text;ia(n.charCodeAt(da(n,e.expression.end,!0)-1))&&(t=Vp(e.expression,ws.Are_you_missing_a_semicolon))}PO(e.expression,o,0,t)}return KM(e)}return 8&n&&!e.typeArguments&&s.some(EO)?(MR(e,n),ri):s.some((e=>Um(e.declaration)&&!!Hc(e.declaration)))?(wo(e,ws.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new,Za(i)),KM(e)):SO(e,s,t,n,r)}(e,t,n);case 214:return NO(e,t,n);case 215:return function(e,t,n){const r=qR(e.tag),i=Np(r);if(Mc(i))return KM(e);const o=pf(i,0),s=pf(i,1).length;if(CO(r,i,o.length,s))return VM(e);if(!o.length){if(eA(e.parent)){const t=Vp(e.tag,ws.It_is_likely_that_you_are_missing_a_comma_to_separate_these_two_template_expressions_They_form_a_tagged_template_expression_which_cannot_be_invoked);return oo.add(t),KM(e)}return PO(e.tag,i,0),KM(e)}return SO(e,o,t,n,0)}(e,t,n);case 170:return OO(e,t,n);case 286:case 285:return RO(e,t,n);case 226:return function(e,t,n){const r=qR(e.right);if(!Dc(r)){const i=dR(r);if(i){const r=Np(i);if(Mc(r))return KM(e);const o=pf(r,0),s=pf(r,1);if(CO(i,r,o.length,s.length))return VM(e);if(o.length)return SO(e,o,t,n,0)}else if(!NU(r)&&!BS(r,Hn))return wo(e.right,ws.The_right_hand_side_of_an_instanceof_expression_must_be_either_of_type_any_a_class_function_or_other_type_assignable_to_the_Function_interface_type_or_an_object_type_with_a_Symbol_hasInstance_method),KM(e)}return ti}(e,t,n)}Tn.assertNever(e,"Branch in 'resolveSignature' should be unreachable.")}function jO(e,t,n){const r=Qo(e),i=r.resolvedSignature;if(i&&i!==ri&&!t)return i;const o=Fi;i||(Fi=Pi.length),r.resolvedSignature=ri;let s=LO(e,t,n||0);return Fi=o,s!==ri&&(r.resolvedSignature!==ri&&(s=r.resolvedSignature),r.resolvedSignature=hi===gi?s:i),s}function zO(e){var t;if(!e||!Um(e))return!1;const n=tI(e)||lA(e)?e:($A(e)||WI(e))&&e.initializer&&lA(e.initializer)?e.initializer:void 0;if(n){if(Hc(e))return!0;if(WI(dg(n.parent)))return!1;const r=sa(n);return!!(null==(t=null==r?void 0:r.members)?void 0:t.size)}return!1}function UO(e,t){var n,r;if(t){const i=Go(t);if(!i.inferredClassSymbol||!i.inferredClassSymbol.has(Qz(e))){const o=s_(e)?e:Bo(e);return o.exports=o.exports||o_(),o.members=o.members||o_(),o.flags|=32&t.flags,(null==(n=t.exports)?void 0:n.size)&&Wo(o.exports,t.exports),(null==(r=t.members)?void 0:r.size)&&Wo(o.members,t.members),(i.inferredClassSymbol||(i.inferredClassSymbol=new Map)).set(Qz(o),o),o}return i.inferredClassSymbol.get(Qz(e))}}function BO(e,t){if(!e.parent)return;let n,r;if($A(e.parent)&&e.parent.initializer===e){if(!(Um(e)||XB(e.parent)&&mu(e)))return;n=e.parent.name,r=e.parent}else if(gA(e.parent)){const i=e.parent,o=e.parent.operatorToken.kind;if(64!==o||!t&&i.right!==e){if(!(57!==o&&61!==o||($A(i.parent)&&i.parent.initializer===i?(n=i.parent.name,r=i.parent):gA(i.parent)&&64===i.parent.operatorToken.kind&&(t||i.parent.right===i)&&(n=i.parent.left,r=n),n&&gh(n)&&sh(n,i.left))))return}else n=i.left,r=n}else t&&tI(e)&&(n=e.name,r=e);return r&&n&&(t||rh(e,Ab(n)))?aa(r):void 0}function qO(e,t){var n,r,i,o;if(!(128&e.flags)&&(e.declaration&&536870912&e.declaration.flags)){const s=VO(t),a=Nb(bm(t));n=s,r=e.declaration,i=a,o=Ya(e),No(r,i?Vp(n,ws.The_signature_0_of_1_is_deprecated,o,i):Vp(n,ws._0_is_deprecated,o))}}function VO(e){switch((e=fg(e)).kind){case 213:case 170:case 214:return VO(e.expression);case 215:return VO(e.tag);case 286:case 285:return VO(e.tagName);case 212:return e.argumentExpression;case 211:return e.name;case 183:const t=e;return dN(t.typeName)?t.typeName.right:t;default:return e}}function KO(e){if(!iA(e))return!1;let t=e.expression;if(nA(t)&&"for"===t.name.escapedText&&(t=t.expression),!YC(t)||"Symbol"!==t.escapedText)return!1;const n=Sy(!1);return!!n&&n===Le(t,"Symbol",111551,void 0,!1)}function JO(e){if(function(e){if(N.verbatimModuleSyntax&&1===O)return VB(e,ws.ESM_syntax_is_not_allowed_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled);if(5===O)return VB(e,ws.Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_es2022_esnext_commonjs_amd_system_umd_node16_or_nodenext);if(e.typeArguments)return VB(e,ws.This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot_have_type_arguments);const t=e.arguments;if(99!==O&&199!==O&&100!==O&&(vB(t),t.length>1)){return VB(t[1],ws.Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_or_nodenext)}if(0===t.length||t.length>2)return VB(e,ws.Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_set_of_attributes_as_arguments);const n=w(t,xA);if(n)return VB(n,ws.Argument_of_dynamic_import_cannot_be_spread_element)}(e),0===e.arguments.length)return BF(e,St);const t=e.arguments[0],n=TR(t),r=e.arguments.length>1?TR(e.arguments[1]):void 0;for(let o=2;o<e.arguments.length;++o)TR(e.arguments[o]);if((32768&n.flags||65536&n.flags||!WS(n,Ut))&&wo(t,ws.Dynamic_import_s_specifier_must_be_of_type_string_but_here_has_type_0,Za(n)),r){const t=by(!0);t!==En&&$S(r,Fk(t,32768),e.arguments[1])}const i=Bs(e,t);if(i){const n=Hs(i,t,!0,!1);if(n)return BF(e,HO($l(n),n,i,t)||GO($l(n),n,i,t))}return BF(e,St)}function WO(e,t,n){const r=o_(),i=Po(2097152,"default");return i.parent=t,i.links.nameType=Nx("default"),i.links.aliasTarget=Ds(e),r.set("default",i),Ca(n,r,_,_,_)}function HO(e,t,n,r){if(vs(r)&&e&&!Mc(e)){const r=e;if(!r.defaultOnlyType){const e=WO(t,n);r.defaultOnlyType=e}return r.defaultOnlyType}}function GO(e,t,n,r){var i;if(V&&e&&!Mc(e)){const o=e;if(!o.syntheticType){if(bs(null==(i=n.declarations)?void 0:i.find(YI),n,!1,r)){const r=Po(2048,"__type"),i=WO(t,n,r);r.links.type=i,o.syntheticType=xP(e)?hx(e,i,r,0,!1):i}else o.syntheticType=e}return o.syntheticType}return e}function QO(e){if(!Jm(e,!0))return!1;if(!YC(e.expression))return Tn.fail();const t=Le(e.expression,e.expression.escapedText,111551,void 0,!0);if(t===Te)return!0;if(2097152&t.flags)return!1;const n=16&t.flags?262:3&t.flags?260:0;if(0!==n){const e=r_(t,n);return!!e&&!!(33554432&e.flags)}return!1}function YO(e){(function(e){if(e.questionDotToken||64&e.flags)return VB(e.template,ws.Tagged_template_expressions_are_not_permitted_in_an_optional_chain);return!1})(e)||TB(e,e.typeArguments),D<2&&mB(e,262144);const t=jO(e);return qO(t,e),wm(t)}function ZO(e){switch(e.kind){case 11:case 15:case 9:case 10:case 112:case 97:case 209:case 210:case 228:return!0;case 217:return ZO(e.expression);case 224:const t=e.operator,n=e.operand;return 41===t&&(9===n.kind||10===n.kind)||40===t&&9===n.kind;case 211:case 212:const r=fg(e.expression),i=wb(r)?zs(r,111551,!0):void 0;return!!(i&&384&i.flags)}return!1}function XO(e,t){const{type:n,expression:r}=$O(e),i=qR(r,t);if(Pl(n))return ZO(r)||wo(r,ws.A_const_assertions_can_only_be_applied_to_references_to_enum_members_or_string_number_boolean_array_or_object_literals),Ex(i);return Qo(e).assertionExpressionType=i,Uz(n),Zz(e),zx(n)}function $O(e){let t,n;switch(e.kind){case 234:case 216:t=e.type,n=e.expression;break;case 217:t=mP(e),n=e.expression}return{type:t,expression:n}}function eF(e){return 64&e.flags?function(e){const t=qR(e.expression),n=qk(t,e.expression);return Bk(jk(n),e,n!==t)}(e):jk(qR(e.expression))}function tF(e){if(kB(e),h(e.typeArguments,Uz),233===e.kind){const t=dg(e.parent);226===t.kind&&104===t.operatorToken.kind&&hg(e,t.right)&&wo(e,ws.The_right_hand_side_of_an_instanceof_expression_must_not_be_an_instantiation_expression)}return nF(233===e.kind?qR(e.expression):Tv(e.exprName)?UI(e.exprName):qR(e.exprName),e)}function nF(e,t){const n=t.typeArguments;if(e===tn||Mc(e)||!$(n))return e;let r,i=!1;const o=function e(n){let o=!1,s=!1;const c=l(n);i||(i=s),o&&!s&&(r??(r=n));return c;function l(n){if(524288&n.flags){const e=J_(n),r=a(e.callSignatures),i=a(e.constructSignatures);if(o||(o=0!==e.callSignatures.length||0!==e.constructSignatures.length),s||(s=0!==r.length||0!==i.length),r!==e.callSignatures||i!==e.constructSignatures){const n=Ca(Po(0,"__instantiationExpression"),e.members,r,i,e.indexInfos);return n.objectFlags|=8388608,n.node=t,n}}else if(58982400&n.flags){const e=cp(n);if(e){const t=l(e);if(t!==e)return t}}else{if(1048576&n.flags)return HC(n,e);if(2097152&n.flags)return Mv(j(n.types,l))}return n}}(e),s=i?r:e;return s&&oo.add(Kp(C_(t),n,ws.Type_0_has_no_signatures_for_which_the_type_argument_list_is_applicable,Za(s))),o;function a(e){return j(M(e,(e=>!!e.typeParameters&&XM(e,n))),(e=>{const t=dO(e,n,!0);return t?qm(e,t,Um(e.declaration)):e}))}}function rF(e,t,n){const r=qR(e,n),i=zx(t);if(Mc(i))return i;return tT(r,i,bc(t.parent,(e=>238===e.kind||350===e.kind)),e,ws.Type_0_does_not_satisfy_the_expected_type_1),r}function iF(e){return function(e){const t=e.name.escapedText;switch(e.keywordToken){case 105:if("target"!==t)return VB(e.name,ws._0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2,wc(e.name.escapedText),Vs(e.keywordToken),"target");break;case 102:if("meta"!==t)VB(e.name,ws._0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2,wc(e.name.escapedText),Vs(e.keywordToken),"meta")}}(e),105===e.keywordToken?sF(e):102===e.keywordToken?function(e){100===O||199===O?99!==C_(e).impliedNodeFormat&&wo(e,ws.The_import_meta_meta_property_is_not_allowed_in_files_which_will_build_into_CommonJS_output):O<6&&4!==O&&wo(e,ws.The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_es2022_esnext_system_node16_or_nodenext);const t=C_(e);return Tn.assert(!!(8388608&t.flags),"Containing file is missing import meta node flag."),"meta"===e.name.escapedText?yy():Et}(e):Tn.assertNever(e.keywordToken)}function oF(e){switch(e.keywordToken){case 102:return vy();case 105:const t=sF(e);return Mc(t)?Et:function(e){const t=Po(0,"NewTargetExpression"),n=Po(4,"target",8);n.parent=t,n.links.type=e;const r=o_([n]);return t.members=r,Ca(t,r,_,_,_)}(t);default:Tn.assertNever(e.keywordToken)}}function sF(e){const t=dm(e);if(t){if(176===t.kind){return $l(sa(t.parent))}return $l(sa(t))}return wo(e,ws.Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constructor,"new.target"),Et}function aF(e){const t=e.valueDeclaration;return Xc($l(e),!1,!!t&&(Bd(t)||dk(t)))}function cF(e,t,n="arg"){return e?(Tn.assert(YC(e.name)),e.name.escapedText):`${n}_${t}`}function lF(e,t,n){const r=e.parameters.length-(tU(e)?1:0);if(t<r)return e.parameters[t].escapedName;const i=e.parameters[r]||gt,o=n||$l(i);if($w(o)){const e=o.target.labeledElementDeclarations,n=t-r;return cF(null==e?void 0:e[n],n,i.escapedName)}return i.escapedName}function uF(e){return e.valueDeclaration&&fN(e.valueDeclaration)&&YC(e.valueDeclaration.name)&&e.valueDeclaration.name}function dF(e){return 202===e.kind||fN(e)&&e.name&&YC(e.name)}function _F(e,t){const n=e.parameters.length-(tU(e)?1:0);if(t<n){const n=e.parameters[t].valueDeclaration;return n&&dF(n)?n:void 0}const r=e.parameters[n]||gt,i=$l(r);if($w(i)){const e=i.target.labeledElementDeclarations;return e&&e[t-n]}return r.valueDeclaration&&dF(r.valueDeclaration)?r.valueDeclaration:void 0}function pF(e,t){return fF(e,t)||St}function fF(e,t){const n=e.parameters.length-(tU(e)?1:0);if(t<n)return aF(e.parameters[t]);if(tU(e)){const r=$l(e.parameters[n]),i=t-n;if(!$w(r)||r.target.hasRestElement||i<r.target.fixedLength)return Qb(r,Ax(i))}}function mF(e,t,n){const r=gF(e),i=yF(e),o=bF(e);if(o&&t>=r-1)return t===r-1?o:jy(Qb(o,Bt));const s=[],a=[],c=[];for(let l=t;l<r;l++)!o||l<r-1?(s.push(pF(e,l)),a.push(l<i?1:2)):(s.push(o),a.push(8)),c.push(_F(e,l));return Gy(s,a,n,c)}function hF(e,t){const n=mF(e,t),r=n&&uw(n);return r&&Dc(r)?St:n}function gF(e){const t=e.parameters.length;if(tU(e)){const n=$l(e.parameters[t-1]);if($w(n))return t+n.target.fixedLength-(n.target.hasRestElement?0:1)}return t}function yF(e,t){const n=1&t,r=2&t;if(r||void 0===e.resolvedMinArgumentCount){let t;if(tU(e)){const n=$l(e.parameters[e.parameters.length-1]);if($w(n)){const r=E(n.target.elementFlags,(e=>!(1&e))),i=r<0?n.target.fixedLength:r;i>0&&(t=e.parameters.length-1+i)}}if(void 0===t){if(!n&&32&e.flags)return 0;t=e.minArgumentCount}if(r)return t;for(let n=t-1;n>=0;n--){if(131072&KC(pF(e,n),HM).flags)break;t=n}e.resolvedMinArgumentCount=t}return e.resolvedMinArgumentCount}function vF(e){if(tU(e)){const t=$l(e.parameters[e.parameters.length-1]);return!$w(t)||t.target.hasRestElement}return!1}function bF(e){if(tU(e)){const t=$l(e.parameters[e.parameters.length-1]);if(!$w(t))return Dc(t)?rr:t;if(t.target.hasRestElement)return ev(t,t.target.fixedLength)}}function xF(e){const t=bF(e);return!t||ow(t)||Dc(t)?void 0:t}function SF(e){return TF(e,$t)}function TF(e,t){return e.parameters.length>0?pF(e,0):t}function wF(e,t,n){const r=e.parameters.length-(tU(e)?1:0);for(let i=0;i<r;i++){const r=e.parameters[i].valueDeclaration,o=Nv(r);if(o){const e=Xc(zx(o),!1,dk(r)),s=pF(t,i);jE(n.inferences,e,s)}}}function kF(e,t){const n=Go(e);if(n.type)t&&Tn.assertEqual(n.type,t,"Parameter symbol already has a cached type which differs from newly assigned type");else{const r=e.valueDeclaration;n.type=Xc(t||(r?Sl(r,!0):$l(e)),!1,!!r&&!r.initializer&&dk(r)),r&&80!==r.name.kind&&(n.type===Dt&&(n.type=yl(r.name)),EF(r.name,n.type))}}function EF(e,t){for(const n of e.elements)if(!TA(n)){const e=Qc(n,t,!1);80===n.name.kind?Go(sa(n)).type=e:EF(n.name,e)}}function CF(e){return Jh((t=!0,Br??(Br=gy("ClassDecoratorContext",1,t))??Pn),[e]);var t}function NF(e,t){return Jh((n=!0,qr??(qr=gy("ClassMethodDecoratorContext",2,n))??Pn),[e,t]);var n}function AF(e,t){return Jh((n=!0,Vr??(Vr=gy("ClassGetterDecoratorContext",2,n))??Pn),[e,t]);var n}function IF(e,t){return Jh((n=!0,Kr??(Kr=gy("ClassSetterDecoratorContext",2,n))??Pn),[e,t]);var n}function DF(e,t){return Jh((n=!0,Jr??(Jr=gy("ClassAccessorDecoratorContext",2,n))??Pn),[e,t]);var n}function PF(e,t){return Jh((n=!0,Gr??(Gr=gy("ClassFieldDecoratorContext",2,n))??Pn),[e,t]);var n}function MF(e,t,n){const r=Wv(e),i=ZC(e.name),o=i?Nx(kc(e.name)):eb(e.name),s=vN(e)?NF(t,n):SN(e)?AF(t,n):TN(e)?IF(t,n):Tu(e)?DF(t,n):gN(e)?PF(t,n):Tn.failBadSyntaxKind(e),a=function(e,t,n){const r=`${t?"p":"P"}${n?"s":"S"}${e.id}`;let i=ut.get(r);if(!i){const o=o_();o.set("name",Fo("name",e)),o.set("private",Fo("private",t?Jt:Vt)),o.set("static",Fo("static",n?Jt:Vt)),i=Ca(void 0,o,_,_,_),ut.set(r,i)}return i}(o,i,r);return Mv([s,a])}function OF(e,t){return Jh((n=!0,Wr??(Wr=gy("ClassAccessorDecoratorTarget",2,n))??Pn),[e,t]);var n}function FF(e,t){return Jh((n=!0,Hr??(Hr=gy("ClassAccessorDecoratorResult",2,n))??Pn),[e,t]);var n}function RF(e,t,n){return EL(void 0,void 0,[Mo("target",e),Mo("context",t)],fv([n,Xt]))}function LF(e){const{parent:t}=e,n=Qo(t);if(!n.decoratorSignature)switch(n.decoratorSignature=ti,t.kind){case 263:case 231:{const e=$l(sa(t)),r=CF(e);n.decoratorSignature=RF(e,r,e);break}case 174:case 177:case 178:{const e=t;if(!xu(e.parent))break;const r=vN(e)?fh(Xf(e)):SU(e),i=Wv(e)?$l(sa(e.parent)):ju(sa(e.parent)),o=SN(e)?NL(r):TN(e)?AL(r):r,s=MF(e,i,r),a=SN(e)?NL(r):TN(e)?AL(r):r;n.decoratorSignature=RF(o,s,a);break}case 172:{const e=t;if(!xu(e.parent))break;const r=SU(e),i=Wv(e)?$l(sa(e.parent)):ju(sa(e.parent)),o=Yv(e)?OF(i,r):Mt,s=MF(e,i,r),a=Yv(e)?FF(i,r):function(e,t){return CL(void 0,Mo("this",e),[Mo("value",t)],t,void 0,1)}(i,r);n.decoratorSignature=RF(o,s,a);break}}return n.decoratorSignature===ti?void 0:n.decoratorSignature}function jF(e){return L?function(e){const{parent:t}=e,n=Qo(t);if(!n.decoratorSignature)switch(n.decoratorSignature=ti,t.kind){case 263:case 231:{const e=$l(sa(t)),r=Mo("target",e);n.decoratorSignature=EL(void 0,void 0,[r],fv([e,Xt]));break}case 169:{const e=t;if(!xN(e.parent)&&!(vN(e.parent)||TN(e.parent)&&xu(e.parent.parent)))break;if(xv(e.parent)===e)break;const r=xv(e.parent)?e.parent.parameters.indexOf(e)-1:e.parent.parameters.indexOf(e);Tn.assert(r>=0);const i=xN(e.parent)?$l(sa(e.parent.parent)):kU(e.parent),o=xN(e.parent)?Mt:EU(e.parent),s=Ax(r),a=Mo("target",i),c=Mo("propertyKey",o),l=Mo("parameterIndex",s);n.decoratorSignature=EL(void 0,void 0,[a,c,l],Xt);break}case 174:case 177:case 178:case 172:{const e=t;if(!xu(e.parent))break;const r=Mo("target",kU(e)),i=Mo("propertyKey",EU(e)),o=gN(e)?Xt:Fy(SU(e));if(!gN(t)||Yv(t)){const t=Mo("descriptor",Fy(SU(e)));n.decoratorSignature=EL(void 0,void 0,[r,i,t],fv([o,Xt]))}else n.decoratorSignature=EL(void 0,void 0,[r,i],fv([o,Xt]));break}}return n.decoratorSignature===ti?void 0:n.decoratorSignature}(e):LF(e)}function zF(e){const t=Ey(!0);return t!==Pn?Wh(t,[e=TL(vL(e))||Dt]):Dt}function UF(e){const t=Cy(!0);return t!==Pn?Wh(t,[e=TL(vL(e))||Dt]):Dt}function BF(e,t){const n=zF(t);return n===Dt?(wo(e,mf(e)?ws.A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:ws.An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option),Et):(Ny(!0)||wo(e,mf(e)?ws.A_dynamic_import_call_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:ws.An_async_function_or_method_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option),n)}function qF(e,t){if(!e.body)return Et;const n=Jg(e),r=!!(2&n),i=!!(1&n);let o,s,a,c=Xt;if(241!==e.body.kind)o=TR(e.body,t&&-9&t),r&&(o=vL(hL(o,!1,e,ws.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member)));else if(i){const n=GF(e,t);n?n.length>0&&(o=fv(n,2)):c=$t;const{yieldTypes:r,nextTypes:i}=function(e,t){const n=[],r=[],i=!!(2&Jg(e));return Ff(e.body,(e=>{const o=e.expression?qR(e.expression,t):Ot;let s;if(he(n,KF(e,o,St,i)),e.asteriskToken){const t=Tj(o,i?19:17,e.expression);s=t&&t.nextType}else s=JD(e,void 0);s&&he(r,s)})),{yieldTypes:n,nextTypes:r}}(e,t);s=$(r)?fv(r,2):void 0,a=$(i)?Mv(i):void 0}else{const r=GF(e,t);if(!r)return 2&n?BF(e,$t):$t;if(0===r.length){const t=bD(e,void 0),r=t&&32768&(Jj(t,n)||Xt).flags?Mt:Xt;return 2&n?BF(e,r):r}o=fv(r,2)}if(o||s||a){if(s&&iE(e,s,3),o&&iE(e,o,1),a&&iE(e,a,2),o&&Rw(o)||s&&Rw(s)||a&&Rw(a)){const t=nP(e),n=t?t===Xf(e)?i?void 0:o:VD(wm(t),e,void 0):void 0;i?(s=Gw(s,n,0,r),o=Gw(o,n,1,r),a=Gw(a,n,2,r)):o=function(e,t,n){e&&Rw(e)&&(e=Hw(e,t?n?mL(t):t:void 0));return e}(o,n,r)}s&&(s=eE(s)),o&&(o=eE(o)),a&&(a=eE(a))}return i?VF(s||$t,o||c,a||vD(2,e)||Dt,r):r?zF(o||c):o||c}function VF(e,t,n,r){const i=r?di:_i,o=i.getGlobalGeneratorType(!1);if(e=i.resolveIterationType(e,void 0)||Dt,t=i.resolveIterationType(t,void 0)||Dt,n=i.resolveIterationType(n,void 0)||Dt,o===Pn){const r=i.getGlobalIterableIteratorType(!1),o=r!==Pn?Cj(r,i):void 0,s=o?o.returnType:St,a=o?o.nextType:Mt;return WS(t,s)&&WS(a,n)?r!==Pn?Oy(r,[e]):(i.getGlobalIterableIteratorType(!0),En):(i.getGlobalGeneratorType(!0),En)}return Oy(o,[e,t,n])}function KF(e,t,n,r){const i=e.expression||e,o=e.asteriskToken?hj(r?19:17,t,n,i):t;return r?SL(o,i,e.asteriskToken?ws.Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:ws.Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member):o}function JF(e,t,n){let r=0;for(let i=0;i<n.length;i++){const o=i<e||i>=t?n[i]:void 0;r|=void 0!==o?Bz.get(o)||32768:0}return r}function WF(e){const t=Qo(e);if(void 0===t.isExhaustive){t.isExhaustive=0;const n=function(e){if(221===e.expression.kind){const t=zC(e);if(!t)return!1;const n=lp(TR(e.expression.expression)),r=JF(0,0,t);return 3&n.flags?!(556800&~r):!qC(n,(e=>hC(e,r)===r))}const t=TR(e.expression);if(!zw(t))return!1;const n=jC(e);if(!n.length||$(n,Iw))return!1;return r=HC(t,Ex),i=n,1048576&r.flags?!h(r.types,(e=>!A(i,e))):A(i,r);var r,i}(e);0===t.isExhaustive&&(t.isExhaustive=n)}else 0===t.isExhaustive&&(t.isExhaustive=!1);return t.isExhaustive}function HF(e){return e.endFlowNode&&jN(e.endFlowNode)}function GF(e,t){const n=Jg(e),r=[];let i=HF(e),o=!1;if(Of(e.body,(s=>{let a=s.expression;if(a){if(a=fg(a,!0),2&n&&223===a.kind&&(a=fg(a.expression,!0)),213===a.kind&&80===a.expression.kind&&TR(a.expression).symbol===oa(e.symbol)&&(!Xw(e.symbol.valueDeclaration)||YN(a.expression)))return void(o=!0);let i=TR(a,t&&-9&t);2&n&&(i=vL(hL(i,!1,e,ws.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member))),131072&i.flags&&(o=!0),he(r,i)}else i=!0})),0!==r.length||i||!o&&!function(e){switch(e.kind){case 218:case 219:return!0;case 174:return 210===e.parent.kind;default:return!1}}(e))return!(K&&r.length&&i)||zO(e)&&r.some((t=>t.symbol===e.symbol))||he(r,Mt),r}function QF(e,t){return void s((function(){const n=Jg(e),r=t&&Jj(t,n);if(r&&(sR(r,16384)||32769&r.flags))return;if(173===e.kind||F_(e.body)||241!==e.body.kind||!HF(e))return;const i=1024&e.flags,o=Iv(e)||e;if(r&&131072&r.flags)wo(o,ws.A_function_returning_never_cannot_have_a_reachable_end_point);else if(r&&!i)wo(o,ws.A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value);else if(r&&K&&!WS(Mt,r))wo(o,ws.Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined);else if(N.noImplicitReturns){if(!r){if(!i)return;const t=wm(Xf(e));if(Hj(e,t))return}wo(o,ws.Not_all_code_paths_return_a_value)}}))}function YF(e,t){if(Tn.assert(174!==e.kind||Hf(e)),Zz(e),lA(e)&&nj(e,e.name),t&&4&t&&CS(e)){if(!Iv(e)&&!Qw(e)){const n=rP(e);if(n&&gE(wm(n))){const n=Qo(e);if(n.contextFreeType)return n.contextFreeType;const r=qF(e,t),i=Ad(void 0,void 0,void 0,_,r,void 0,0,64),o=Ca(e.symbol,x,[i],_,_);return o.objectFlags|=262144,n.contextFreeType=o}}return Mn}return SB(e)||218!==e.kind||CB(e),function(e,t){const n=Qo(e);if(!(64&n.flags)){const r=rP(e);if(!(64&n.flags)){n.flags|=64;const i=we(pf($l(sa(e)),0));if(!i)return;if(CS(e))if(r){const n=ZD(e);let o;if(t&&2&t){wF(i,r,n);const e=bF(r);e&&262144&e.flags&&(o=sS(r,n.nonFixingMapper))}o||(o=n?sS(r,n.mapper):r),function(e,t){if(t.typeParameters){if(e.typeParameters)return;e.typeParameters=t.typeParameters}if(t.thisParameter){const n=e.thisParameter;(!n||n.valueDeclaration&&!n.valueDeclaration.type)&&(n||(e.thisParameter=Hk(t.thisParameter,void 0)),kF(e.thisParameter,$l(t.thisParameter)))}const n=e.parameters.length-(tU(e)?1:0);for(let r=0;r<n;r++){const n=e.parameters[r],i=n.valueDeclaration;if(!Nv(i)){let e=fF(t,r);if(e&&i.initializer){let t=kR(i,0);!WS(t,e)&&WS(e,t=ER(i,t))&&(e=t)}kF(n,e)}}if(tU(e)){const r=Ae(e.parameters);(r.valueDeclaration?!Nv(r.valueDeclaration):65536&bx(r))&&kF(r,mF(t,n))}}(i,o)}else!function(e){e.thisParameter&&kF(e.thisParameter);for(const t of e.parameters)kF(t)}(i);else if(r&&!e.typeParameters&&r.parameters.length>e.parameters.length){const n=ZD(e);t&&2&t&&wF(i,r,n)}if(r&&!Cm(e)&&!i.resolvedReturnType){const n=qF(e,t);i.resolvedReturnType||(i.resolvedReturnType=n)}WR(e)}}}(e,t),$l(sa(e))}function ZF(e,t,n,r=!1){if(!WS(t,dn)){const i=r&&fL(t);return Co(e,!!i&&WS(i,dn),n),!1}return!0}function XF(e){if(!iA(e))return!1;if(!_h(e))return!1;const t=TR(e.arguments[2]);if(Nc(t,"value")){const e=df(t,"writable"),n=e&&$l(e);if(!n||n===Vt||n===Kt)return!0;if(e&&e.valueDeclaration&&WI(e.valueDeclaration)){const t=qR(e.valueDeclaration.initializer);if(t===Vt||t===Kt)return!0}return!1}return!df(t,"set")}function $F(e){return!!(8&bx(e)||4&e.flags&&8&xx(e)||3&e.flags&&6&GP(e)||98304&e.flags&&!(65536&e.flags)||8&e.flags||$(e.declarations,XF))}function eR(e,t,n){var r,i;if(0===n)return!1;if($F(t)){if(4&t.flags&&Bx(e)&&110===e.expression.kind){const n=nm(e);if(!n||176!==n.kind&&!zO(n))return!0;if(t.valueDeclaration){const e=gA(t.valueDeclaration),o=n.parent===t.valueDeclaration.parent,s=n===t.valueDeclaration.parent,a=e&&(null==(r=t.parent)?void 0:r.valueDeclaration)===n.parent,c=e&&(null==(i=t.parent)?void 0:i.valueDeclaration)===n;return!(o||s||a||c)}}return!0}if(Bx(e)){const t=fg(e.expression);if(80===t.kind){const e=Qo(t).resolvedSymbol;if(2097152&e.flags){const t=us(e);return!!t&&274===t.kind}}}return!1}function tR(e,t,n){const r=gP(e,7);return 80===r.kind||Bx(r)?!(64&r.flags)||(wo(e,n),!1):(wo(e,t),!1)}function nR(e){qR(e.expression);const t=fg(e.expression);if(!Bx(t))return wo(t,ws.The_operand_of_a_delete_operator_must_be_a_property_reference),Yt;nA(t)&&ZC(t.name)&&wo(t,ws.The_operand_of_a_delete_operator_cannot_be_a_private_identifier);const n=ma(Qo(t).resolvedSymbol);return n&&($F(n)?wo(t,ws.The_operand_of_a_delete_operator_cannot_be_a_read_only_property):function(e,t){const n=$l(t);!K||131075&n.flags||(ne?16777216&t.flags:gC(n,16777216))||wo(e,ws.The_operand_of_a_delete_operator_must_be_optional)}(t,n)),Yt}function rR(e){let t=!1;const n=sm(e);if(n&&bN(n)){wo(e,fA(e)?ws.await_expression_cannot_be_used_inside_a_class_static_block:ws.await_using_statements_cannot_be_used_inside_a_class_static_block),t=!0}else if(!(65536&e.flags))if(um(e)){const n=C_(e);if(!UB(n)){let r;if(!Sp(n,N)){r??(r=ef(n,e.pos));const i=fA(e)?ws.await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module:ws.await_using_statements_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module,o=pS(n,r.start,r.length,i);oo.add(o),t=!0}switch(O){case 100:case 199:if(1===n.impliedNodeFormat){r??(r=ef(n,e.pos)),oo.add(pS(n,r.start,r.length,ws.The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level)),t=!0;break}case 7:case 99:case 200:case 4:if(D>=4)break;default:r??(r=ef(n,e.pos));const i=fA(e)?ws.Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:ws.Top_level_await_using_statements_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher;oo.add(pS(n,r.start,r.length,i)),t=!0}}}else{const r=C_(e);if(!UB(r)){const i=ef(r,e.pos),o=fA(e)?ws.await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:ws.await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules,s=pS(r,i.start,i.length,o);if(n&&176!==n.kind&&!(2&Jg(n))){xw(s,Vp(n,ws.Did_you_mean_to_mark_this_function_as_async))}oo.add(s),t=!0}}return fA(e)&&gD(e)&&(wo(e,ws.await_expressions_cannot_be_used_in_a_parameter_initializer),t=!0),t}function iR(e){return sR(e,2112)?aR(e,3)||sR(e,296)?dn:qt:Bt}function oR(e,t){if(sR(e,t))return!0;const n=lp(e);return!!n&&sR(n,t)}function sR(e,t){if(e.flags&t)return!0;if(3145728&e.flags){const n=e.types;for(const e of n)if(sR(e,t))return!0}return!1}function aR(e,t,n){return!!(e.flags&t)||!(n&&114691&e.flags)&&(!!(296&t)&&WS(e,Bt)||!!(2112&t)&&WS(e,qt)||!!(402653316&t)&&WS(e,Ut)||!!(528&t)&&WS(e,Yt)||!!(16384&t)&&WS(e,Xt)||!!(131072&t)&&WS(e,$t)||!!(65536&t)&&WS(e,jt)||!!(32768&t)&&WS(e,Mt)||!!(4096&t)&&WS(e,Zt)||!!(67108864&t)&&WS(e,on))}function cR(e,t,n){return 1048576&e.flags?T(e.types,(e=>cR(e,t,n))):aR(e,t,n)}function lR(e){return!!(16&Mx(e))&&!!e.symbol&&uR(e.symbol)}function uR(e){return!!(128&e.flags)}function dR(e){const t=Aj("hasInstance");if(cR(e,67108864)){const n=df(e,t);if(n){const e=$l(n);if(e&&0!==pf(e,0).length)return e}}}function _R(e,t,n,r){if(n===tn||r===tn)return tn;if(ZC(e)){if((D<9||D<99||!B)&&mB(e,2097152),!Qo(e).resolvedSymbol&&im(e)){kM(e,r,gM(e,r.symbol,!0))}}else $S(sM(n,e),un,e);return $S(sM(r,t),on,t)&&qC(r,(e=>e===In||!!(2097152&e.flags)&&bT(lp(e))))&&wo(t,ws.Type_0_may_represent_a_primitive_value_which_is_not_permitted_as_the_right_operand_of_the_in_operator,Za(r)),Yt}function pR(e,t,n,r,i=!1){const o=e.properties,s=o[n];if(303===s.kind||304===s.kind){const e=s.name,n=eb(e);if(Sk(n)){const e=df(t,Tk(n));e&&(OM(e,s,i),YP(s,!1,!0,t,e))}const r=qc(s,Qb(t,n,32,e));return mR(304===s.kind?s:s.initializer,r)}if(305===s.kind){if(!(n<o.length-1)){D<5&&mB(s,4);const e=[];if(r)for(const t of r)GI(t)||e.push(t.name);const n=jc(t,e,t.symbol);return vB(r,ws.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma),mR(s.expression,n)}wo(s,ws.A_rest_element_must_be_last_in_a_destructuring_pattern)}else wo(s,ws.Property_assignment_expected)}function fR(e,t,n,r,i){const o=e.elements,s=o[n];if(232!==s.kind){if(230!==s.kind){const e=Ax(n);if(dw(t)){const n=Zb(t,e,32|(oP(s)?16:0),hO(s,e))||Et;return mR(s,qc(s,oP(s)?vC(n,524288):n),i)}return mR(s,r,i)}if(n<o.length-1)wo(s,ws.A_rest_element_must_be_last_in_a_destructuring_pattern);else{const o=s.expression;if(226!==o.kind||64!==o.operatorToken.kind){vB(e.elements,ws.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma);return mR(o,VC(t,$w)?HC(t,(e=>ev(e,n))):jy(r),i)}wo(o.operatorToken,ws.A_rest_element_cannot_have_an_initializer)}}}function mR(e,t,n,r){let i;if(304===e.kind){const r=e;r.objectAssignmentInitializer&&(K&&!gC(qR(r.objectAssignmentInitializer),16777216)&&(t=vC(t,524288)),function(e,t,n,r,i){const o=t.kind;if(64===o&&(210===e.kind||209===e.kind))return mR(e,qR(n,r),r,110===n.kind);let s;s=mb(o)?pj(e,r):qR(e,r);const a=qR(n,r);yR(e,t,n,s,a,r,i)}(r.name,r.equalsToken,r.objectAssignmentInitializer,n)),i=e.name}else i=e;return 226===i.kind&&64===i.operatorToken.kind&&(oe(i,n),i=i.left,K&&(t=vC(t,524288))),210===i.kind?function(e,t,n){const r=e.properties;if(K&&0===r.length)return sM(t,e);for(let i=0;i<r.length;i++)pR(e,t,i,r,n);return t}(i,t,r):209===i.kind?function(e,t,n){const r=e.elements;D<2&&N.downlevelIteration&&mB(e,512);const i=hj(193,t,Mt,e)||Et;let o=N.noUncheckedIndexedAccess?void 0:i;for(let s=0;s<r.length;s++){let r=i;230===e.elements[s].kind&&(r=o=o??(hj(65,t,Mt,e)||Et)),fR(e,t,s,r,n)}return t}(i,t,n):function(e,t,n){const r=qR(e,n),i=305===e.parent.kind?ws.The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access:ws.The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access,o=305===e.parent.kind?ws.The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access:ws.The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access;tR(e,i,o)&&tT(t,r,e,e);ou(e)&&mB(e.parent,1048576);return t}(i,t,n)}function hR(e){switch((e=fg(e)).kind){case 80:case 11:case 14:case 215:case 228:case 15:case 9:case 10:case 112:case 97:case 106:case 157:case 218:case 231:case 219:case 209:case 210:case 221:case 235:case 285:case 284:return!0;case 227:return hR(e.whenTrue)&&hR(e.whenFalse);case 226:return!gb(e.operatorToken.kind)&&(hR(e.left)&&hR(e.right));case 224:case 225:switch(e.operator){case 54:case 40:case 41:case 55:return!0}return!1;default:return!1}}function gR(e,t){return!!(98304&t.flags)||ZS(e,t)}function yR(e,t,n,r,i,o,a){const c=t.kind;switch(c){case 42:case 43:case 67:case 68:case 44:case 69:case 45:case 70:case 41:case 66:case 48:case 71:case 49:case 72:case 50:case 73:case 52:case 75:case 53:case 79:case 51:case 74:if(r===tn||i===tn)return tn;let s;if(r=sM(r,e),i=sM(i,n),528&r.flags&&528&i.flags&&void 0!==(s=function(e){switch(e){case 52:case 75:return 57;case 53:case 79:return 38;case 51:case 74:return 56;default:return}}(t.kind)))return wo(a||t,ws.The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead,Vs(t.kind),Vs(s)),Bt;{const t=ZF(e,r,ws.The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type,!0),o=ZF(n,i,ws.The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type,!0);let s;if(aR(r,3)&&aR(i,3)||!sR(r,2112)&&!sR(i,2112))s=Bt;else if(d(r,i)){switch(c){case 50:case 73:m();break;case 43:case 68:D<3&&wo(a,ws.Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_later)}s=qt}else m(d),s=Et;return t&&o&&p(s),s}case 40:case 65:if(r===tn||i===tn)return tn;let g;if(aR(r,402653316)||aR(i,402653316)||(r=sM(r,e),i=sM(i,n)),aR(r,296,!0)&&aR(i,296,!0)?g=Bt:aR(r,2112,!0)&&aR(i,2112,!0)?g=qt:aR(r,402653316,!0)||aR(i,402653316,!0)?g=Ut:(Dc(r)||Dc(i))&&(g=Mc(r)||Mc(i)?Et:St),g&&!_(c))return g;if(!g){const e=402655727;return m(((t,n)=>aR(t,e)&&aR(n,e))),St}return 65===c&&p(g),g;case 30:case 32:case 33:case 34:return _(c)&&(r=Vw(sM(r,e)),i=Vw(sM(i,n)),f(((e,t)=>{if(Dc(e)||Dc(t))return!0;const n=WS(e,dn),r=WS(t,dn);return n&&r||!n&&!r&&XS(e,t)}))),Yt;case 35:case 36:case 37:case 38:if(!(o&&64&o)){if((Jl(e)||Jl(n))&&(!Um(e)||37===c||38===c)){const e=35===c||37===c;wo(a,ws.This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value,e?"false":"true")}!function(e,t,n,r){const i=h(fg(n)),o=h(fg(r));if(i||o){const s=wo(e,ws.This_condition_will_always_return_0,Vs(37===t||35===t?97:112));if(i&&o)return;const a=38===t||36===t?Vs(54):"",c=i?r:n,l=fg(c);xw(s,Vp(c,ws.Did_you_mean_0,`${a}Number.isNaN(${wb(l)?qp(l):"..."})`))}}(a,c,e,n),f(((e,t)=>gR(e,t)||gR(t,e)))}return Yt;case 104:return function(e,t,n,r,i){if(n===tn||r===tn)return tn;!Dc(n)&&cR(n,402784252)&&wo(e,ws.The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_parameter),Tn.assert(Mb(e.parent));const o=jO(e.parent,void 0,i);return o===ri?tn:($S(wm(o),Yt,t,ws.An_object_s_Symbol_hasInstance_method_must_return_a_boolean_value_for_it_to_be_used_on_the_right_hand_side_of_an_instanceof_expression),Yt)}(e,n,r,i,o);case 103:return _R(e,n,r,i);case 56:case 77:{const e=gC(r,4194304)?fv([(u=K?r:qw(i),HC(u,Ok)),i]):r;return 77===c&&p(i),e}case 57:case 76:{const e=gC(r,8388608)?fv([jk(Ck(r)),i],2):r;return 76===c&&p(i),e}case 61:case 78:{const e=gC(r,262144)?fv([jk(r),i],2):r;return 78===c&&p(i),e}case 64:const y=gA(e.parent)?dh(e.parent):0;return function(e,t){if(2===e)for(const n of W_(t)){const e=$l(n);if(e.symbol&&32&e.symbol.flags){const e=n.escapedName,t=Le(n.valueDeclaration,e,788968,void 0,!1);(null==t?void 0:t.declarations)&&t.declarations.some(MD)&&(Ko(t,ws.Duplicate_identifier_0,wc(e),n),Ko(n,ws.Duplicate_identifier_0,wc(e),t))}}}(y,i),function(t){var r;switch(t){case 2:return!0;case 1:case 5:case 6:case 3:case 4:const t=aa(e),i=nh(n);return!!i&&tA(i)&&!!(null==(r=null==t?void 0:t.exports)?void 0:r.size);default:return!1}}(y)?(524288&i.flags&&(2===y||6===y||vT(i)||mC(i)||1&Mx(i))||p(i),r):(p(i),i);case 28:if(!N.allowUnreachableCode&&hR(e)&&!(217===(l=e.parent).parent.kind&&DC(l.left)&&"0"===l.left.text&&(iA(l.parent.parent)&&l.parent.parent.expression===l.parent||215===l.parent.parent.kind)&&(Bx(l.right)||YC(l.right)&&"eval"===l.right.escapedText))){const t=C_(e),n=da(t.text,e.pos);t.parseDiagnostics.some((e=>e.code===ws.JSX_expressions_must_have_one_parent_element.code&&Ka(e,n)))||wo(e,ws.Left_side_of_comma_operator_is_unused_and_has_no_side_effects)}return i;default:return Tn.fail()}var l,u;function d(e,t){return aR(e,2112)&&aR(t,2112)}function _(t){const o=oR(r,12288)?e:oR(i,12288)?n:void 0;return!o||(wo(o,ws.The_0_operator_cannot_be_applied_to_type_symbol,Vs(t)),!1)}function p(i){gb(c)&&s((function(){let o=r;ZU(t.kind)&&211===e.kind&&(o=cM(e,void 0,!0));if(tR(e,ws.The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access,ws.The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access)){let t;if(ne&&nA(e)&&sR(i,32768)){const n=Nc(zR(e.expression),e.name.escapedText);OT(i,n)&&(t=ws.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target)}tT(i,o,e,n,t)}}))}function f(e){return!e(r,i)&&(m(e),!0)}function m(e){let n=!1;const o=a||t;if(e){const t=TL(r),o=TL(i);n=!(t===r&&o===i)&&!(!t||!o)&&e(t,o)}let s=r,c=i;!n&&e&&([s,c]=function(e,t,n){let r=e,i=t;const o=qw(e),s=qw(t);n(o,s)||(r=o,i=s);return[r,i]}(r,i,e));const[l,u]=Xa(s,c);(function(e,n,r,i){switch(t.kind){case 37:case 35:case 38:case 36:return Co(e,n,ws.This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap,r,i);default:return}})(o,n,l,u)||Co(o,n,ws.Operator_0_cannot_be_applied_to_types_1_and_2,Vs(t.kind),l,u)}function h(e){if(YC(e)&&"NaN"===e.escapedText){const t=zr||(zr=ay("NaN",!1));return!!t&&t===XE(e)}return!1}}function vR(e){const t=e.parent;return cA(t)&&vR(t)||rA(t)&&t.argumentExpression===e}function bR(e){const t=[e.head.text],n=[];for(const i of e.templateSpans){const e=qR(i.expression);oR(e,12288)&&wo(i.expression,ws.Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_in_String),t.push(i.literal.text),n.push(WS(e,mn)?e:Ut)}const r=215!==e.parent.kind&&le(e).value;return r?Sx(Nx(r)):NR(e)||vR(e)||qC(JD(e,void 0)||Dt,xR)?cb(t,n):Ut}function xR(e){return!!(134217856&e.flags||58982400&e.flags&&sR(cp(e)||Dt,402653316))}function SR(e,t,n,r){const i=function(e){return jI(e)&&!DI(e.parent)?e.parent.parent:e}(e);GD(i,t,!1),function(e,t){ki[Ni]=e,Ei[Ni]=t,Ni++}(i,n);const o=qR(e,1|r|(n?2:0));n&&n.intraExpressionInferenceSites&&(n.intraExpressionInferenceSites=void 0);const s=sR(o,2944)&&CR(o,VD(t,e,void 0))?Ex(o):o;return Ni--,QD(),s}function TR(e,t){if(t)return qR(e,t);const n=Qo(e);if(!n.resolvedType){const r=hi,i=Zr;hi=gi,Zr=void 0,n.resolvedType=qR(e,t),Zr=i,hi=r}return n.resolvedType}function wR(e){return 216===(e=fg(e,!0)).kind||234===e.kind||fP(e)}function kR(e,t,n){const r=eh(e);if(Um(e)){const n=mk(e);if(n)return rF(r,n,t)}const i=UR(r)||(n?SR(r,n,void 0,t||0):TR(r,t));return fN(e)&&207===e.name.kind&&$w(i)&&!i.target.hasRestElement&&ag(i)<e.name.elements.length?function(e,t){const n=t.elements,r=iv(e).slice(),i=e.target.elementFlags.slice();for(let o=ag(e);o<n.length;o++){const e=n[o];(o<n.length-1||208!==e.kind||!e.dotDotDotToken)&&(r.push(!TA(e)&&oP(e)?hl(e,!1,!1):St),i.push(2),TA(e)||oP(e)||rE(e,St))}return Gy(r,i,e.target.readonly)}(i,e.name):i}function ER(e,t){const n=6&ZB(e)||cf(e)?t:Kw(t);if(Um(e)){if(mw(n))return rE(e,St),St;if(yw(n))return rE(e,rr),rr}return n}function CR(e,t){if(t){if(3145728&t.flags){return $(t.types,(t=>CR(e,t)))}if(58982400&t.flags){const n=cp(t)||Dt;return sR(n,4)&&sR(e,128)||sR(n,8)&&sR(e,256)||sR(n,64)&&sR(e,2048)||sR(n,4096)&&sR(e,8192)||CR(e,n)}return!!(406847616&t.flags&&sR(e,128)||256&t.flags&&sR(e,256)||2048&t.flags&&sR(e,2048)||512&t.flags&&sR(e,512)||8192&t.flags&&sR(e,8192))}return!1}function NR(e){const t=e.parent;return nd(t)&&Pl(t.type)||fP(t)&&Pl(mP(t))||ZO(e)&&X_(JD(e,0))||(cA(t)||eA(t)||xA(t))&&NR(t)||(WI(t)||HI(t)||PA(t))&&NR(t.parent)}function AR(e,t,n){const r=qR(e,t,n);return NR(e)||Bf(e)?Ex(r):wR(e)?r:Hw(r,VD(JD(e,void 0),e,void 0))}function IR(e,t){return 167===e.name.kind&&lP(e.name),AR(e.initializer,t)}function DR(e,t){MB(e),167===e.name.kind&&lP(e.name);return PR(e,YF(e,t),t)}function PR(e,t,n){if(n&&10&n){const r=iO(t,0,!0),i=iO(t,1,!0),o=r||i;if(o&&o.typeParameters){const t=qD(e,2);if(t){const i=iO(jk(t),r?0:1,!1);if(i&&!i.typeParameters){if(8&n)return MR(e,n),Mn;const t=ZD(e),r=t.signature&&wm(t.signature),s=r&&rO(r);if(s&&!s.typeParameters&&!T(t.inferences,OR)){const e=function(e,t){const n=[];let r,i;for(const o of t){const t=o.symbol.escapedName;if(RR(e.inferredTypeParameters,t)||RR(n,t)){const s=Sa(Po(262144,LR(te(e.inferredTypeParameters,n),t)));s.target=o,r=_e(r,o),i=_e(i,s),n.push(s)}else n.push(o)}if(i){const e=Gx(r,i);for(const t of i)t.mapper=e}return n}(t,o.typeParameters),n=Wm(o,e),r=R(t.inferences,(e=>fE(e.typeParameter)));if(sE(n,i,((e,t)=>{jE(r,e,t,0,!0)})),$(r,OR)&&(cE(n,i,((e,t)=>{jE(r,e,t)})),!function(e,t){for(let n=0;n<e.length;n++)if(OR(e[n])&&OR(t[n]))return!0;return!1}(t.inferences,r)))return function(e,t){for(let n=0;n<e.length;n++)!OR(e[n])&&OR(t[n])&&(e[n]=t[n])}(t.inferences,r),t.inferredTypeParameters=te(t.inferredTypeParameters,e),fh(n)}return fh(oO(o,i,t),U(Ei,(e=>e&&R(e.inferences,(e=>e.typeParameter)))).slice())}}}}return t}function MR(e,t){if(2&t){ZD(e).flags|=4}}function OR(e){return!(!e.candidates&&!e.contraCandidates)}function FR(e){return!!(e.candidates||e.contraCandidates||wp(e.typeParameter))}function RR(e,t){return $(e,(e=>e.symbol.escapedName===t))}function LR(e,t){let n=t.length;for(;n>1&&t.charCodeAt(n-1)>=48&&t.charCodeAt(n-1)<=57;)n--;const r=t.slice(0,n);for(let i=1;;i++){const t=r+i;if(!RR(e,t))return t}}function jR(e){const t=nO(e);if(t&&!t.typeParameters)return wm(t)}function zR(e){const t=UR(e);if(t)return t;if(268435456&e.flags&&Zr){const t=Zr[Gz(e)];if(t)return t}const n=bi,r=qR(e,64);if(bi!==n){(Zr||(Zr=[]))[Gz(e)]=r,Uw(e,268435456|e.flags)}return r}function UR(e){let t=fg(e,!0);if(fP(t)){const e=mP(t);if(!Pl(e))return zx(e)}if(t=fg(e),fA(t)){const e=UR(t.expression);return e?SL(e):void 0}return!iA(t)||108===t.expression.kind||Jm(t,!0)||KO(t)?nd(t)&&!Pl(t.type)?zx(t.type):Kl(e)||hu(e)?qR(e):void 0:El(t)?function(e){const t=qR(e.expression),n=qk(t,e.expression),r=jR(t);return r&&Bk(r,e,n!==t)}(t):jR($P(t.expression))}function BR(e){const t=Qo(e);if(t.contextFreeType)return t.contextFreeType;GD(e,St,!1);const n=t.contextFreeType=qR(e,4);return QD(),n}function qR(n,i,o){var a,c;null==(a=ar)||a.push(ar.Phase.Check,"checkExpression",{kind:n.kind,pos:n.pos,end:n.end,path:n.tracingPath});const l=r;r=n,f=0;const u=function(e,n,r){const i=e.kind;if(t)switch(i){case 231:case 218:case 219:t.throwIfCancellationRequested()}switch(i){case 80:return bI(e,n);case 81:return _M(e);case 110:return UI(e);case 108:return VI(e);case 106:return zt;case 15:case 11:return AE(e)?kt:Sx(Nx(e.text));case 9:return WB(e),Sx(Ax(+e.text));case 10:return function(e){const t=HN(e.parent)||mA(e.parent)&&HN(e.parent.parent);if(!t&&D<7&&VB(e,ws.BigInt_literals_are_not_available_when_targeting_lower_than_ES2020))return!0}(e),Sx(Ix({negative:!1,base10Value:Nw(e.text)}));case 112:return Jt;case 97:return Vt;case 228:return bR(e);case 14:return iP(e);case 209:return sP(e,n,r);case 210:return bP(e,n);case 211:return cM(e,n);case 166:return lM(e,n);case 212:return UM(e,n);case 213:if(102===e.expression.kind)return JO(e);case 214:return function(e,t){var n,r,i;TB(e,e.typeArguments);const o=jO(e,void 0,t);if(o===ri)return tn;if(qO(o,e),108===e.expression.kind)return Xt;if(214===e.kind){const t=o.declaration;if(t&&176!==t.kind&&180!==t.kind&&185!==t.kind&&(!fD(t)||176!==(null==(r=null==(n=$h(t))?void 0:n.parent)?void 0:r.kind))&&!Fh(t)&&!zO(t))return Z&&wo(e,ws.new_expression_whose_target_lacks_a_construct_signature_implicitly_has_an_any_type),St}if(Um(e)&&QO(e))return rm(e.arguments[0]);const s=wm(o);if(12288&s.flags&&KO(e))return Ox(dg(e.parent));if(213===e.kind&&!e.questionDotToken&&244===e.parent.kind&&16384&s.flags&&Sm(o))if(Eb(e.expression)){if(!EN(e)){const t=wo(e.expression,ws.Assertions_require_every_name_in_the_call_target_to_be_declared_with_an_explicit_type_annotation);uN(e.expression,t)}}else wo(e.expression,ws.Assertions_require_the_call_target_to_be_an_identifier_or_qualified_name);if(Um(e)){const t=BO(e,!1);if(null==(i=null==t?void 0:t.exports)?void 0:i.size){const e=Ca(t,t.exports,_,_,_);return e.objectFlags|=4096,Mv([s,e])}}return s}(e,n);case 215:return YO(e);case 217:return function(e,t){if(zd(e)){if(pk(e))return rF(e.expression,fk(e),t);if(fP(e))return XO(e,t)}return qR(e.expression,t)}(e,n);case 231:return function(e){return oz(e),Zz(e),function(e){if(e.name)return;const t=yP(e);if(!cy(t))return;let n;n=!L&&D<99&&km(!1,e)?we(Rc(e))??e:iz(e);n&&(mB(n,4194304),(WI(t)||gN(t)||$N(t))&&_N(t.name)&&mB(n,8388608))}(e),$l(sa(e))}(e);case 218:case 219:return YF(e,n);case 221:return function(e){return qR(e.expression),ao}(e);case 216:case 234:return function(e,t){if(216===e.kind){const t=C_(e);t&&jo(t.fileName,[".cts",".mts"])&&VB(e,ws.This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Use_an_as_expression_instead)}return XO(e,t)}(e,n);case 235:return eF(e);case 233:return tF(e);case 238:return function(e){return Uz(e.type),rF(e.expression,e.type)}(e);case 236:return iF(e);case 220:return nR(e);case 222:return function(e){return Zz(e),Ot}(e);case 223:return function(e){s((()=>rR(e)));const t=qR(e.expression),n=hL(t,!0,e,ws.Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member);return n!==t||Mc(n)||3&t.flags||ko(!1,Vp(e,ws.await_has_no_effect_on_the_type_of_this_expression)),n}(e);case 224:return function(e){const t=qR(e.operand);if(t===tn)return tn;switch(e.operand.kind){case 9:switch(e.operator){case 41:return Sx(Ax(-e.operand.text));case 40:return Sx(Ax(+e.operand.text))}break;case 10:if(41===e.operator)return Sx(Ix({negative:!0,base10Value:Nw(e.operand.text)}))}switch(e.operator){case 40:case 41:case 55:return sM(t,e.operand),oR(t,12288)&&wo(e.operand,ws.The_0_operator_cannot_be_applied_to_type_symbol,Vs(e.operator)),40===e.operator?(oR(t,2112)&&wo(e.operand,ws.Operator_0_cannot_be_applied_to_type_1,Vs(e.operator),Za(qw(t))),Bt):iR(t);case 54:_j(t,e.operand);const n=hC(t,12582912);return 4194304===n?Vt:8388608===n?Jt:Yt;case 46:case 47:return ZF(e.operand,sM(t,e.operand),ws.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type)&&tR(e.operand,ws.The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access,ws.The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access),iR(t)}return Et}(e);case 225:return function(e){const t=qR(e.operand);return t===tn?tn:(ZF(e.operand,sM(t,e.operand),ws.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type)&&tR(e.operand,ws.The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access,ws.The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access),iR(t))}(e);case 226:return oe(e,n);case 227:return function(e,t){const n=pj(e.condition,t);return dj(e.condition,n,e.whenTrue),fv([qR(e.whenTrue,t),qR(e.whenFalse,t)],2)}(e,n);case 230:return function(e,t){return D<2&&mB(e,N.downlevelIteration?1536:1024),hj(33,qR(e.expression,t),Mt,e.expression)}(e,n);case 232:return Ot;case 229:return function(e){s((function(){16384&e.flags||BB(e,ws.A_yield_expression_is_only_allowed_in_a_generator_body),gD(e)&&wo(e,ws.yield_expressions_cannot_be_used_in_a_parameter_initializer)}));const t=nm(e);if(!t)return St;const n=Jg(t);if(!(1&n))return St;const r=!!(2&n);e.asteriskToken&&(r&&D<5&&mB(e,26624),!r&&D<2&&N.downlevelIteration&&mB(e,256));let i=Cm(t);i&&1048576&i.flags&&(i=KC(i,(e=>HR(e,n,void 0))));const o=i&&Vj(i,r),a=o&&o.yieldType||St,c=o&&o.nextType||St,l=r?SL(c)||St:c,u=e.expression?qR(e.expression):Ot,d=KF(e,u,l,r);if(i&&d&&tT(d,a,e.expression||e,e.expression),e.asteriskToken)return yj(r?19:17,1,u,e.expression)||St;if(i)return Bj(2,i,r)||St;let _=vD(2,t);return _||(_=St,s((()=>{if(Z&&!Ww(e)){const t=JD(e,void 0);t&&!Dc(t)||wo(e,ws.yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_type_annotation)}}))),_}(e);case 237:return function(e){return e.isSpread?Qb(e.type,Bt):e.type}(e);case 294:return HP(e,n);case 284:case 285:return function(e,t){return Zz(e),UP(e)||St}(e);case 288:return function(e){KP(e.openingFragment);const t=C_(e);return!aT(N)||!N.jsxFactory&&!t.pragmas.has("jsx")||N.jsxFragmentFactory||t.pragmas.has("jsxfrag")||wo(e,N.jsxFactory?ws.The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_compiler_option:ws.An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments),kP(e),UP(e)||St}(e);case 292:return CP(e,n);case 286:Tn.fail("Shouldn't ever directly check a JsxOpeningElement")}return Et}(n,i,o),d=PR(n,u,i);return lR(d)&&function(t,n){const r=211===t.parent.kind&&t.parent.expression===t||212===t.parent.kind&&t.parent.expression===t||(80===t.kind||166===t.kind)&&gU(t)||186===t.parent.kind&&t.parent.exprName===t||281===t.parent.kind;r||wo(t,ws.const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_import_declaration_or_export_assignment_or_type_query);if(LS(N)){Tn.assert(!!(128&n.symbol.flags));const r=n.symbol.valueDeclaration,i=e.getRedirectReferenceForResolutionFromSourceOfProject(C_(r).resolvedPath);!(33554432&r.flags)||Mw(t)||i&&KS(i.commandLine.options)||wo(t,ws.Cannot_access_ambient_const_enums_when_0_is_enabled,Ie)}}(n,d),r=l,null==(c=ar)||c.pop(),d}function VR(e){gB(e),e.expression&&BB(e.expression,ws.Type_expected),Uz(e.constraint),Uz(e.default);const t=Yu(sa(e));cp(t),function(e){return bp(e)!==Fn}(t)||wo(e.default,ws.Type_parameter_0_has_a_circular_default,Za(t));const n=Z_(t),r=Tp(t);n&&r&&$S(r,Cd(SS(n,Yx(t,r)),r),e.default,ws.Type_0_does_not_satisfy_the_constraint_1),Zz(e),s((()=>$j(e.name,ws.Type_parameter_name_cannot_be_0)))}function KR(e){gB(e),ij(e);const t=nm(e);Kv(e,31)&&(176===t.kind&&R_(t.body)||wo(e,ws.A_parameter_property_is_only_allowed_in_a_constructor_implementation),176===t.kind&&YC(e.name)&&"constructor"===e.name.escapedText&&wo(e.name,ws.constructor_cannot_be_used_as_a_parameter_property_name)),!e.initializer&&dk(e)&&Mu(e.name)&&t.body&&wo(e,ws.A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature),e.name&&YC(e.name)&&("this"===e.name.escapedText||"new"===e.name.escapedText)&&(0!==t.parameters.indexOf(e)&&wo(e,ws.A_0_parameter_must_be_the_first_parameter,e.name.escapedText),176!==t.kind&&180!==t.kind&&185!==t.kind||wo(e,ws.A_constructor_cannot_have_a_this_parameter),219===t.kind&&wo(e,ws.An_arrow_function_cannot_have_a_this_parameter),177!==t.kind&&178!==t.kind||wo(e,ws.get_and_set_accessors_cannot_declare_this_parameters)),!e.dotDotDotToken||Mu(e.name)||WS(Jp($l(e.symbol)),or)||wo(e,ws.A_rest_parameter_must_be_of_an_array_type)}function JR(e,t,n){for(const r of e.elements){if(TA(r))continue;const e=r.name;if(80===e.kind&&e.escapedText===n)return wo(t,ws.A_type_predicate_cannot_reference_element_0_in_a_binding_pattern,n),!0;if((207===e.kind||206===e.kind)&&JR(e,t,n))return!0}}function WR(e){181===e.kind?function(e){gB(e)||function(e){const t=e.parameters[0];if(1!==e.parameters.length)return VB(t?t.name:e,ws.An_index_signature_must_have_exactly_one_parameter);if(vB(e.parameters,ws.An_index_signature_cannot_have_a_trailing_comma),t.dotDotDotToken)return VB(t.dotDotDotToken,ws.An_index_signature_cannot_have_a_rest_parameter);if(Bv(t))return VB(t.name,ws.An_index_signature_parameter_cannot_have_an_accessibility_modifier);if(t.questionToken)return VB(t.questionToken,ws.An_index_signature_parameter_cannot_have_a_question_mark);if(t.initializer)return VB(t.name,ws.An_index_signature_parameter_cannot_have_an_initializer);if(!t.type)return VB(t.name,ws.An_index_signature_parameter_must_have_a_type_annotation);const n=zx(t.type);if(qC(n,(e=>!!(8576&e.flags)))||Bb(n))return VB(t.name,ws.An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_object_type_instead);if(!VC(n,Nh))return VB(t.name,ws.An_index_signature_parameter_type_must_be_string_number_symbol_or_a_template_literal_type);if(!e.type)return VB(e,ws.An_index_signature_must_have_a_type_annotation)}(e)}(e):184!==e.kind&&262!==e.kind&&185!==e.kind&&179!==e.kind&&176!==e.kind&&180!==e.kind||SB(e);const t=Jg(e);4&t||(!(3&~t)&&D<5&&mB(e,6144),2==(3&t)&&D<4&&mB(e,64),3&t&&D<2&&mB(e,128)),tz(bl(e)),function(e){const t=M(fl(e),ND);if(!m(t))return;const n=Um(e),r=new Set,i=new Set;h(e.parameters,(({name:e},t)=>{YC(e)&&r.add(e.escapedText),Mu(e)&&i.add(t)}));const o=em(e);if(o){const e=t.length-1,o=t[e];n&&o&&YC(o.name)&&o.typeExpression&&o.typeExpression.type&&!r.has(o.name.escapedText)&&!i.has(e)&&!ow(zx(o.typeExpression.type))&&wo(o.name,ws.JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_had_an_array_type,kc(o.name))}else h(t,(({name:e,isNameFirst:t},o)=>{i.has(o)||YC(e)&&r.has(e.escapedText)||(dN(e)?n&&wo(e,ws.Qualified_name_0_is_not_allowed_without_a_leading_param_object_1,qp(e),qp(e.left)):t||Eo(n,e,ws.JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name,kc(e)))}))}(e),h(e.parameters,KR),e.type&&Uz(e.type),s((function(){!function(e){if(D>=2||!Qd(e)||33554432&e.flags||F_(e.body))return;h(e.parameters,(e=>{e.name&&!Mu(e.name)&&e.name.escapedText===xe.escapedName&&So("noEmit",e,ws.Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters)}))}(e);let t=Iv(e),n=t;if(Um(e)){const r=ul(e);if(r&&r.typeExpression&&NN(r.typeExpression.type)){const e=nO(zx(r.typeExpression));e&&e.declaration&&(t=Iv(e.declaration),n=r.typeExpression.type)}}if(Z&&!t)switch(e.kind){case 180:wo(e,ws.Construct_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type);break;case 179:wo(e,ws.Call_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type)}if(t&&n){const r=Jg(e);if(1==(5&r)){const e=zx(t);e===Xt?wo(n,ws.A_generator_cannot_have_a_void_type_annotation):HR(e,r,n)}else 2==(3&r)&&function(e,t,n){const r=zx(t);if(D>=2){if(Mc(r))return;const e=Ey(!0);if(e!==Pn&&!nu(r,e))return void o(ws.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_write_Promise_0,t,n,Za(TL(r)||Xt))}else{if(KA(e,5),Mc(r))return;const s=vm(t);if(void 0===s)return void o(ws.Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value,t,n,Za(r));const a=zs(s,111551,!0),c=a?$l(a):Et;if(Mc(c))return void(80===s.kind&&"Promise"===s.escapedText&&ru(r)===Ey(!1)?wo(n,ws.An_async_function_or_method_in_ES5_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option):o(ws.Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value,t,n,qp(s)));const l=(i=!0,gr||(gr=gy("PromiseConstructorLike",0,i))||En);if(l===En)return void o(ws.Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value,t,n,qp(s));const u=ws.Type_0_is_not_a_valid_async_function_return_type_in_ES5_because_it_does_not_refer_to_a_Promise_compatible_constructor_value;if(!$S(c,l,n,u,(()=>t===n?void 0:gS(void 0,ws.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type))))return;const d=s&&kb(s),_=Yo(e.locals,d.escapedText,111551);if(_)return void wo(_.valueDeclaration,ws.Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions,kc(d),qp(s))}var i;function o(e,t,n,r){if(t===n)wo(n,e,r);else{xw(wo(n,ws.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type),Vp(t,e,r))}}hL(r,!1,e,ws.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member)}(e,t,n)}181!==e.kind&&317!==e.kind&&RL(e)}))}function HR(e,t,n){const r=Bj(0,e,!!(2&t))||St;return $S(VF(r,Bj(1,e,!!(2&t))||r,Bj(2,e,!!(2&t))||Dt,!!(2&t)),e,n)}function GR(e){const t=new Map;for(const n of e.members)if(171===n.kind){let e;const r=n.name;switch(r.kind){case 11:case 9:e=r.text;break;case 80:e=kc(r);break;default:continue}t.get(e)?(wo(Oc(n.symbol.valueDeclaration),ws.Duplicate_identifier_0,e),wo(n.name,ws.Duplicate_identifier_0,e)):t.set(e,!0)}}function QR(e){if(264===e.kind){const t=sa(e);if(t.declarations&&t.declarations.length>0&&t.declarations[0]!==e)return}const t=mh(sa(e));if(null==t?void 0:t.declarations){const e=new Map;for(const n of t.declarations)1===n.parameters.length&&n.parameters[0].type&&BC(zx(n.parameters[0].type),(t=>{const r=e.get(ov(t));r?r.declarations.push(n):e.set(ov(t),{type:t,declarations:[n]})}));e.forEach((e=>{if(e.declarations.length>1)for(const t of e.declarations)wo(t,ws.Duplicate_index_signature_for_type_0,Za(e.type))}))}}function YR(e){gB(e)||function(e){if(_N(e.name)&&gA(e.name.expression)&&103===e.name.expression.operatorToken.kind)return VB(e.parent.members[0],ws.A_mapped_type_may_not_declare_properties_or_methods);if(xu(e.parent)){if(MC(e.name)&&"constructor"===e.name.text)return VB(e.name,ws.Classes_may_not_have_a_field_named_constructor);if(PB(e.name,ws.A_computed_property_name_in_a_class_property_declaration_must_have_a_simple_literal_type_or_a_unique_symbol_type))return!0;if(D<2&&ZC(e.name))return VB(e.name,ws.Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher);if(D<2&&Tu(e))return VB(e.name,ws.Properties_with_the_accessor_modifier_are_only_available_when_targeting_ECMAScript_2015_and_higher);if(Tu(e)&&NB(e.questionToken,ws.An_accessor_property_cannot_be_declared_optional))return!0}else if(264===e.parent.kind){if(PB(e.name,ws.A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type))return!0;if(Tn.assertNode(e,hN),e.initializer)return VB(e.initializer,ws.An_interface_property_cannot_have_an_initializer)}else if(PN(e.parent)){if(PB(e.name,ws.A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type))return!0;if(Tn.assertNode(e,hN),e.initializer)return VB(e.initializer,ws.A_type_literal_property_cannot_have_an_initializer)}33554432&e.flags&&FB(e);if(gN(e)&&e.exclamationToken&&(!xu(e.parent)||!e.type||e.initializer||33554432&e.flags||Jv(e)||Gv(e))){const t=e.initializer?ws.Declarations_with_initializers_cannot_also_have_definite_assignment_assertions:e.type?ws.A_definite_assignment_assertion_is_not_permitted_in_this_context:ws.Declarations_with_definite_assignment_assertions_must_also_have_type_annotations;return VB(e.exclamationToken,t)}}(e)||EB(e.name),ij(e),ZR(e),Kv(e,64)&&172===e.kind&&e.initializer&&wo(e,ws.Property_0_cannot_have_an_initializer_because_it_is_marked_abstract,Lp(e.name))}function ZR(e){if(ZC(e.name)&&(D<9||D<99||!B)){for(let t=Fp(e);t;t=Fp(t))Qo(t).flags|=1048576;if(SA(e.parent)){const t=CI(e.parent);t&&(Qo(e.name).flags|=32768,Qo(t).flags|=4096)}}}function XR(e){WR(e),function(e){const t=Um(e)?Dv(e):void 0,n=e.typeParameters||t&&we(t);if(n){const t=n.pos===n.end?n.pos:da(C_(e).text,n.pos);return qB(e,t,n.end-t,ws.Type_parameters_cannot_appear_on_a_constructor_declaration)}}(e)||function(e){const t=e.type||Iv(e);if(t)VB(t,ws.Type_annotation_cannot_appear_on_a_constructor_declaration)}(e),Uz(e.body);const t=sa(e),n=r_(t,e.kind);function r(e){return!!iu(e)||172===e.kind&&!Jv(e)&&!!e.initializer}e===n&&_L(t),F_(e.body)||s((function(){const t=e.parent;if(Ng(t)){NI(e.parent,t);const n=OI(t),i=MI(e.body);if(i){n&&wo(i,ws.A_constructor_cannot_contain_a_super_call_when_its_class_extends_null);if(!q&&($(e.parent.members,r)||$(e.parameters,(e=>Kv(e,31)))))if(function(e,t){const n=dg(e.parent);return LA(n)&&n.parent===t}(i,e.body)){let t;for(const n of e.body.statements){if(LA(n)&&ff(gP(n.expression))){t=n;break}if($R(n))break}void 0===t&&wo(e,ws.A_super_call_must_be_the_first_statement_in_the_constructor_to_refer_to_super_or_this_when_a_derived_class_contains_initialized_properties_parameter_properties_or_private_identifiers)}else wo(i,ws.A_super_call_must_be_a_root_level_statement_within_a_constructor_of_a_derived_class_that_contains_initialized_properties_parameter_properties_or_private_identifiers)}else n||wo(e,ws.Constructors_for_derived_classes_must_contain_a_super_call)}}))}function $R(e){return 108===e.kind||110===e.kind||!lm(e)&&!!GM(e,$R)}function eL(e){YC(e.name)&&"constructor"===kc(e.name)&&xu(e.parent)&&wo(e.name,ws.Class_constructor_may_not_be_an_accessor),s((function(){SB(e)||function(e){if(!(33554432&e.flags)&&187!==e.parent.kind&&264!==e.parent.kind){if(D<2&&ZC(e.name))return VB(e.name,ws.Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher);if(void 0===e.body&&!Kv(e,64))return qB(e,e.end-1,1,ws._0_expected,"{")}if(e.body){if(Kv(e,64))return VB(e,ws.An_abstract_accessor_cannot_have_an_implementation);if(187===e.parent.kind||264===e.parent.kind)return VB(e.body,ws.An_implementation_cannot_be_declared_in_ambient_contexts)}if(e.typeParameters)return VB(e.name,ws.An_accessor_cannot_have_type_parameters);if(!function(e){return DB(e)||e.parameters.length===(177===e.kind?0:1)}(e))return VB(e.name,177===e.kind?ws.A_get_accessor_cannot_have_parameters:ws.A_set_accessor_must_have_exactly_one_parameter);if(178===e.kind){if(e.type)return VB(e.name,ws.A_set_accessor_cannot_have_a_return_type_annotation);const t=Tn.checkDefined(vv(e),"Return value does not match parameter count assertion.");if(t.dotDotDotToken)return VB(t.dotDotDotToken,ws.A_set_accessor_cannot_have_rest_parameter);if(t.questionToken)return VB(t.questionToken,ws.A_set_accessor_cannot_have_an_optional_parameter);if(t.initializer)return VB(e.name,ws.A_set_accessor_parameter_cannot_have_an_initializer)}return!1}(e)||EB(e.name);ML(e),WR(e),177===e.kind&&!(33554432&e.flags)&&R_(e.body)&&512&e.flags&&(1024&e.flags||wo(e.name,ws.A_get_accessor_must_return_a_value));167===e.name.kind&&lP(e.name);if(bd(e)){const t=sa(e),n=r_(t,177),r=r_(t,178);if(n&&r&&!(1&KU(n))){Qo(n).flags|=1;const e=nb(n),t=nb(r);(64&e)!=(64&t)&&(wo(n.name,ws.Accessors_must_both_be_abstract_or_non_abstract),wo(r.name,ws.Accessors_must_both_be_abstract_or_non_abstract)),(4&e&&!(6&t)||2&e&&!(2&t))&&(wo(n.name,ws.A_get_accessor_must_be_at_least_as_accessible_as_the_setter),wo(r.name,ws.A_get_accessor_must_be_at_least_as_accessible_as_the_setter))}}const t=zl(sa(e));177===e.kind&&QF(e,t)})),Uz(e.body),ZR(e)}function tL(e,t,n){return e.typeArguments&&n<e.typeArguments.length?zx(e.typeArguments[n]):nL(e,t)[n]}function nL(e,t){return Zf(R(e.typeArguments,zx),t,Wf(t),Um(e))}function rL(e,t){let n,r,i=!0;for(let o=0;o<t.length;o++){const s=Z_(t[o]);s&&(n||(n=nL(e,t),r=Gx(t,n)),i=i&&$S(n[o],SS(s,r),e.typeArguments[o],ws.Type_0_does_not_satisfy_the_constraint_1))}return i}function iL(e){const t=zx(e);if(!Mc(t)){const n=Qo(e).resolvedSymbol;if(n)return function(e,t){if(!Mc(e))return 524288&t.flags&&Go(t).typeParameters||(4&Mx(e)?e.target.localTypeParameters:void 0)}(t,n)}}function oL(e){if(TB(e,e.typeArguments),183===e.kind&&!Um(e)&&!Vm(e)&&e.typeArguments&&e.typeName.end!==e.typeArguments.pos){const t=C_(e);25===tf(t,e.typeName.end)&&qB(e,da(t.text,e.typeName.end),1,ws.JSDoc_types_can_only_be_used_inside_documentation_comments)}h(e.typeArguments,Uz),sL(e)}function sL(e){if(!Mc(zx(e))){e.typeArguments&&s((()=>{const t=iL(e);t&&rL(e,t)}));const t=Qo(e).resolvedSymbol;t&&$(t.declarations,(e=>ok(e)&&!!(536870912&e.flags)))&&Do(VO(e),t.declarations,t.escapedName)}}function aL(e,t){if(!(8388608&e.flags))return e;const n=e.objectType,r=e.indexType,i=V_(n)&&2===K_(n)?Uv(n,0):sb(n,0),o=!!Tf(n,Bt);if(VC(r,(e=>WS(e,i)||o&&bf(e,Bt))))return 212===t.kind&&og(t)&&32&Mx(n)&&1&U_(n)&&wo(t,ws.Index_signature_in_type_0_only_permits_reading,Za(n)),e;if(qb(n)){const e=xb(r,t);if(e){const r=BC(Np(n),(t=>df(t,e)));if(r&&6&xx(r))return wo(t,ws.Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter,wc(e)),Et}}return wo(t,ws.Type_0_cannot_be_used_to_index_type_1,Za(r),Za(n)),Et}function cL(e){!function(e){var t;if(null==(t=e.members)?void 0:t.length)VB(e.members[0],ws.A_mapped_type_may_not_declare_properties_or_methods)}(e),Uz(e.typeParameter),Uz(e.nameType),Uz(e.type),e.type||rE(e,St);const t=$b(e),n=M_(t);if(n)$S(n,un,e.nameType);else{$S(P_(t),un,xl(e.typeParameter))}}function lL(e){!function(e){if(158===e.operator){if(155!==e.type.kind)return VB(e.type,ws._0_expected,Vs(155));let t=ug(e.parent);if(Um(t)&&XI(t)){const e=Xh(t);e&&(t=Uh(e)||e)}switch(t.kind){case 260:const n=t;if(80!==n.name.kind)return VB(e,ws.unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name);if(!Uf(n))return VB(e,ws.unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement);if(!(2&n.parent.flags))return VB(t.name,ws.A_variable_whose_type_is_a_unique_symbol_type_must_be_const);break;case 172:if(!Jv(t)||!Zv(t))return VB(t.name,ws.A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly);break;case 171:if(!Kv(t,8))return VB(t.name,ws.A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly);break;default:VB(e,ws.unique_symbol_types_are_not_allowed_here)}}else if(148===e.operator&&188!==e.type.kind&&189!==e.type.kind)BB(e,ws.readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types,Vs(155))}(e),Uz(e.type)}function uL(e){return(Vv(e,2)||iu(e))&&!!(33554432&e.flags)}function dL(e,t){let n=YB(e);if(264!==e.parent.kind&&263!==e.parent.kind&&231!==e.parent.kind&&33554432&e.flags){const t=Op(e);!(t&&128&t.flags)||128&n||aI(e.parent)&&sI(e.parent.parent)&&yp(e.parent.parent)||(n|=32),n|=128}return n&t}function _L(e){s((()=>function(e){function t(e,t){return void 0!==t&&t.parent===e[0].parent?t:e[0]}function n(e,n,r,i,o){if(0!==(i^o)){const i=dL(t(e,n),r);h(e,(e=>{const t=dL(e,r)^i;32&t?wo(Oc(e),ws.Overload_signatures_must_all_be_exported_or_non_exported):128&t?wo(Oc(e),ws.Overload_signatures_must_all_be_ambient_or_non_ambient):6&t?wo(Oc(e)||e,ws.Overload_signatures_must_all_be_public_private_or_protected):64&t&&wo(Oc(e),ws.Overload_signatures_must_all_be_abstract_or_non_abstract)}))}}function r(e,n,r,i){if(r!==i){const r=Oh(t(e,n));h(e,(e=>{Oh(e)!==r&&wo(Oc(e),ws.Overload_signatures_must_all_be_optional_or_required)}))}}const i=230;let o,s,a,c=0,l=i,u=!1,d=!0,_=!1;const p=e.declarations,f=!!(16384&e.flags);function g(e){if(e.name&&F_(e.name))return;let t=!1;const n=GM(e.parent,(n=>{if(t)return n;t=n===e}));if(n&&n.pos===e.end&&n.kind===e.kind){const t=n.name||n,r=n.name;if(e.name&&r&&(ZC(e.name)&&ZC(r)&&e.name.escapedText===r.escapedText||_N(e.name)&&_N(r)&&DS(lP(e.name),lP(r))||Xg(e.name)&&Xg(r)&&ey(e.name)===ey(r))){if((174===e.kind||173===e.kind)&&Jv(e)!==Jv(n)){wo(t,Jv(e)?ws.Function_overload_must_be_static:ws.Function_overload_must_not_be_static)}return}if(R_(n.body))return void wo(t,ws.Function_implementation_name_must_be_0,Lp(e.name))}const r=e.name||e;f?wo(r,ws.Constructor_implementation_is_missing):Kv(e,64)?wo(r,ws.All_declarations_of_an_abstract_method_must_be_consecutive):wo(r,ws.Function_implementation_is_missing_or_not_immediately_following_the_declaration)}let y=!1,v=!1,b=!1;const x=[];if(p)for(const h of p){const e=h,t=33554432&e.flags,n=e.parent&&(264===e.parent.kind||187===e.parent.kind)||t;if(n&&(a=void 0),263!==e.kind&&231!==e.kind||t||(b=!0),262===e.kind||174===e.kind||173===e.kind||176===e.kind){x.push(e);const t=dL(e,i);c|=t,l&=t,u=u||Oh(e),d=d&&Oh(e);const r=R_(e.body);r&&o?f?v=!0:y=!0:(null==a?void 0:a.parent)===e.parent&&a.end!==e.pos&&g(a),r?o||(o=e):_=!0,a=e,n||(s=e)}Um(h)&&pu(h)&&h.jsDoc&&(_=m(Qh(h))>0)}v&&h(x,(e=>{wo(e,ws.Multiple_constructor_implementations_are_not_allowed)}));y&&h(x,(e=>{wo(Oc(e)||e,ws.Duplicate_function_implementation)}));if(b&&!f&&16&e.flags&&p){const t=M(p,(e=>263===e.kind)).map((e=>Vp(e,ws.Consider_adding_a_declare_modifier_to_this_class)));h(p,(n=>{const r=263===n.kind?ws.Class_declaration_cannot_implement_overload_list_for_0:262===n.kind?ws.Function_with_bodies_can_only_merge_with_classes_that_are_ambient:void 0;r&&xw(wo(Oc(n)||n,r,Cc(e)),...t)}))}!s||s.body||Kv(s,64)||s.questionToken||g(s);if(_&&(p&&(n(p,o,i,c,l),r(p,o,u,d)),o)){const t=tm(e),n=Xf(o);for(const e of t)if(!gT(n,e)){xw(wo(e.declaration&&fD(e.declaration)?e.declaration.parent.tagName:e.declaration,ws.This_overload_signature_is_not_compatible_with_its_implementation_signature),Vp(o,ws.The_implementation_signature_is_declared_here));break}}}(e)))}function pL(e){s((()=>function(e){let t=e.localSymbol;if(!t&&(t=sa(e),!t.exportSymbol))return;if(r_(t,e.kind)!==e)return;let n=0,r=0,i=0;for(const c of t.declarations){const e=a(c),t=dL(c,2080);32&t?2048&t?i|=e:n|=e:r|=e}const o=n&r,s=i&(n|r);if(o||s)for(const c of t.declarations){const e=a(c),t=Oc(c);e&s?wo(t,ws.Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_default_0_declaration_instead,Lp(t)):e&o&&wo(t,ws.Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local,Lp(t))}function a(e){let t=e;switch(t.kind){case 264:case 265:case 346:case 338:case 340:return 2;case 267:return _p(t)||0!==qj(t)?5:4;case 263:case 266:case 306:return 3;case 307:return 7;case 277:case 226:const e=t,n=SI(e)?e.expression:e.right;if(!wb(n))return 1;t=n;case 271:case 274:case 273:let r=0;return h(Ps(sa(t)).declarations,(e=>{r|=a(e)})),r;case 260:case 208:case 262:case 276:case 80:return 1;case 173:case 171:return 2;default:return Tn.failBadSyntaxKind(t)}}}(e)))}function fL(e,t,n,...r){const i=mL(e,t);return i&&SL(i,t,n,...r)}function mL(e,t,n){if(Dc(e))return;const r=e;if(r.promisedTypeOfPromise)return r.promisedTypeOfPromise;if(nu(e,Ey(!1)))return r.promisedTypeOfPromise=rg(e)[0];if(cR(lp(e),402915324))return;const i=Nc(e,"then");if(Dc(i))return;const o=i?pf(i,0):_;if(0===o.length)return void(t&&wo(t,ws.A_promise_must_have_a_then_method));let s,a;for(const u of o){const t=fm(u);t&&t!==Xt&&!ET(e,t,co)?s=t:a=_e(a,u)}if(!a)return Tn.assertIsDefined(s),n&&(n.value=s),void(t&&wo(t,ws.The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1,Za(e),Za(s)));const c=vC(fv(R(a,SF)),2097152);if(Dc(c))return;const l=pf(c,0);if(0!==l.length)return r.promisedTypeOfPromise=fv(R(l,SF),2);t&&wo(t,ws.The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback)}function hL(e,t,n,r,...i){return(t?SL(e,n,r,...i):TL(e,n,r,...i))||Et}function gL(e){if(cR(lp(e),402915324))return!1;const t=Nc(e,"then");return!!t&&pf(vC(t,2097152),0).length>0}function yL(e){var t;if(16777216&e.flags){const n=My(!1);return!!n&&e.aliasSymbol===n&&1===(null==(t=e.aliasTypeArguments)?void 0:t.length)}return!1}function vL(e){return 1048576&e.flags?HC(e,vL):yL(e)?e.aliasTypeArguments[0]:e}function bL(e){if(Dc(e)||yL(e))return!1;if(qb(e)){const t=cp(e);if(t?3&t.flags||vT(t)||qC(t,gL):sR(e,8650752))return!0}return!1}function xL(e){return bL(e)?function(e){const t=My(!0);if(t)return yg(t,[vL(e)])}(e)??e:(Tn.assert(yL(e)||void 0===mL(e),"type provided should not be a non-generic 'promise'-like."),e)}function SL(e,t,n,...r){const i=TL(e,t,n,...r);return i&&xL(i)}function TL(e,t,n,...r){if(Dc(e))return e;if(yL(e))return e;const i=e;if(i.awaitedTypeOfType)return i.awaitedTypeOfType;if(1048576&e.flags){if(to.lastIndexOf(e.id)>=0)return void(t&&wo(t,ws.Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method));const o=t?e=>TL(e,t,n,...r):TL;to.push(e.id);const s=HC(e,o);return to.pop(),i.awaitedTypeOfType=s}if(bL(e))return i.awaitedTypeOfType=e;const o={value:void 0},s=mL(e,void 0,o);if(s){if(e.id===s.id||to.lastIndexOf(s.id)>=0)return void(t&&wo(t,ws.Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method));to.push(e.id);const o=TL(s,t,n,...r);if(to.pop(),!o)return;return i.awaitedTypeOfType=o}if(!gL(e))return i.awaitedTypeOfType=e;if(t){let i;Tn.assertIsDefined(n),o.value&&(i=gS(i,ws.The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1,Za(e),Za(o.value))),i=gS(i,n,...r),oo.add(Wp(C_(t),t,i))}}function wL(e){!function(e){if(!UB(C_(e))){let t=e.expression;if(cA(t))return!1;let n,r=!0;for(;;)if(wA(t)||CA(t))t=t.expression;else if(iA(t))r||(n=t),t.questionDotToken&&(n=t.questionDotToken),t=t.expression,r=!1;else{if(!nA(t)){YC(t)||(n=t);break}t.questionDotToken&&(n=t.questionDotToken),t=t.expression,r=!1}if(n)return xw(wo(e.expression,ws.Expression_must_be_enclosed_in_parentheses_to_be_used_as_a_decorator),Vp(n,ws.Invalid_syntax_in_decorator)),!0}}(e);const t=jO(e);qO(t,e);const n=wm(t);if(1&n.flags)return;const r=jF(e);if(!(null==r?void 0:r.resolvedReturnType))return;let i;const o=r.resolvedReturnType;switch(e.parent.kind){case 263:case 231:i=ws.Decorator_function_return_type_0_is_not_assignable_to_type_1;break;case 172:if(!L){i=ws.Decorator_function_return_type_0_is_not_assignable_to_type_1;break}case 169:i=ws.Decorator_function_return_type_is_0_but_is_expected_to_be_void_or_any;break;case 174:case 177:case 178:i=ws.Decorator_function_return_type_0_is_not_assignable_to_type_1;break;default:return Tn.failBadSyntaxKind(e.parent)}$S(n,o,e.expression,i)}function EL(e,t,n,r,i,o=n.length,s=0){return Ad(oE.createFunctionTypeNode(void 0,_,oE.createKeywordTypeNode(133)),e,t,n,r,i,o,s)}function CL(e,t,n,r,i,o,s){return fh(EL(e,t,n,r,i,o,s))}function NL(e){return CL(void 0,void 0,_,e)}function AL(e){return CL(void 0,void 0,[Mo("value",e)],Xt)}function IL(e){if(e)switch(e.kind){case 193:case 192:return DL(e.types);case 194:return DL([e.trueType,e.falseType]);case 196:case 202:return IL(e.type);case 183:return e.typeName}}function DL(e){let t;for(let n of e){for(;196===n.kind||202===n.kind;)n=n.type;if(146===n.kind)continue;if(!K&&(201===n.kind&&106===n.literal.kind||157===n.kind))continue;const e=IL(n);if(!e)return;if(t){if(!YC(t)||!YC(e)||t.escapedText!==e.escapedText)return}else t=e}return t}function PL(e){const t=Nv(e);return Yd(e)?Rf(t):t}function ML(e){if(!(xM(e)&&Xv(e)&&e.modifiers&&xm(L,e,e.parent,e.parent.parent)))return;const t=w(e.modifiers,mN);if(t){if(L)mB(t,8),169===e.kind&&mB(t,32);else if(D<99)if(mB(t,8),nI(e))if(e.name){iz(e)&&mB(t,4194304)}else mB(t,4194304);else SA(e)||(ZC(e.name)&&(vN(e)||Su(e)||Tu(e))&&mB(t,4194304),_N(e.name)&&mB(t,8388608));KA(e,8);for(const t of e.modifiers)mN(t)&&wL(t)}}function OL(e){switch(e.kind){case 80:return e;case 211:return e.name;default:return}}function FL(e){var t;ML(e),WR(e);const n=Jg(e);if(e.name&&167===e.name.kind&&lP(e.name),bd(e)){const n=sa(e),r=e.localSymbol||n,i=null==(t=r.declarations)?void 0:t.find((t=>t.kind===e.kind&&!(524288&t.flags)));e===i&&_L(r),n.parent&&_L(n)}const r=173===e.kind?void 0:e.body;if(Uz(r),QF(e,Cm(e)),s((function(){Iv(e)||(F_(r)&&!uL(e)&&rE(e,St),1&n&&R_(r)&&wm(Xf(e)))})),Um(e)){const t=ul(e);t&&t.typeExpression&&!tP(zx(t.typeExpression),e)&&wo(t.typeExpression.type,ws.The_type_of_a_function_declaration_must_match_the_function_s_signature)}}function RL(e){s((function(){const t=C_(e);let n=mi.get(t.path);n||(n=[],mi.set(t.path,n));n.push(e)}))}function LL(e,t){for(const n of e)switch(n.kind){case 263:case 231:UL(n,t),qL(n,t);break;case 307:case 267:case 241:case 269:case 248:case 249:case 250:HL(n,t);break;case 176:case 218:case 262:case 219:case 174:case 177:case 178:n.body&&HL(n,t),qL(n,t);break;case 173:case 179:case 180:case 184:case 185:case 265:case 264:qL(n,t);break;case 195:BL(n,t);break;default:Tn.assertNever(n,"Node should not have been registered for unused identifiers check")}}function jL(e,t,n){n(e,0,Vp(Oc(e)||e,ok(e)?ws._0_is_declared_but_never_used:ws._0_is_declared_but_its_value_is_never_read,t))}function zL(e){return YC(e)&&95===kc(e).charCodeAt(0)}function UL(e,t){for(const n of e.members)switch(n.kind){case 174:case 172:case 177:case 178:if(178===n.kind&&32768&n.symbol.flags)break;const e=sa(n);e.isReferenced||!(Vv(n,2)||Pc(n)&&ZC(n.name))||33554432&n.flags||t(n,0,Vp(n.name,ws._0_is_declared_but_its_value_is_never_read,Qa(e)));break;case 176:for(const r of n.parameters)!r.symbol.isReferenced&&Kv(r,2)&&t(r,0,Vp(r.name,ws.Property_0_is_declared_but_its_value_is_never_read,Cc(r.symbol)));break;case 181:case 240:case 175:break;default:Tn.fail("Unexpected class member")}}function BL(e,t){const{typeParameter:n}=e;VL(n)&&t(e,1,Vp(e,ws._0_is_declared_but_its_value_is_never_read,kc(n.name)))}function qL(e,t){const n=sa(e).declarations;if(!n||Ae(n)!==e)return;const r=bl(e),i=new Set;for(const o of r){if(!VL(o))continue;const e=kc(o.name),{parent:n}=o;if(195!==n.kind&&n.typeParameters.every(VL)){if(Q(i,n)){const r=C_(n),i=PD(n)?Tw(n):ww(r,n.typeParameters),s=1===n.typeParameters.length?[ws._0_is_declared_but_its_value_is_never_read,e]:[ws.All_type_parameters_are_unused];t(o,1,pS(r,i.pos,i.end-i.pos,...s))}}else t(o,1,Vp(o,ws._0_is_declared_but_its_value_is_never_read,e))}}function VL(e){return!(262144&oa(e.symbol).isReferenced||zL(e.name))}function KL(e,t,n,r){const i=String(r(t)),o=e.get(i);o?o[1].push(n):e.set(i,[t,[n]])}function JL(e){return dt(_y(e),fN)}function WL(e){return $N(e)?ZN(e.parent)?!(!e.propertyName||!zL(e.name)):zL(e.name):_p(e)||($A(e)&&ld(e.parent.parent)||QL(e))&&zL(e.name)}function HL(e,t){const n=new Map,r=new Map,i=new Map;e.locals.forEach((e=>{var o;if(!(262144&e.flags?!(3&e.flags)||3&e.isReferenced:e.isReferenced||e.exportSymbol)&&e.declarations)for(const s of e.declarations)if(!WL(s))if(QL(s))KL(n,273===(o=s).kind?o:274===o.kind?o.parent:o.parent.parent,s,Gz);else if($N(s)&&ZN(s.parent)){s!==Ae(s.parent.elements)&&Ae(s.parent.elements).dotDotDotToken||KL(r,s.parent,s,Gz)}else if($A(s)){const e=7&ZB(s),t=Oc(s);(4===e||6===e)&&t&&zL(t)||KL(i,s.parent,s,Gz)}else{const n=e.valueDeclaration&&JL(e.valueDeclaration),i=e.valueDeclaration&&Oc(e.valueDeclaration);n&&i?cc(n,n.parent)||Sv(n)||zL(i)||($N(s)&&XN(s.parent)?KL(r,s.parent,s,Gz):t(n,1,Vp(i,ws._0_is_declared_but_its_value_is_never_read,Cc(e)))):jL(s,Cc(e),t)}})),n.forEach((([e,n])=>{const r=e.parent;if((e.name?1:0)+(e.namedBindings?274===e.namedBindings.kind?1:e.namedBindings.elements.length:0)===n.length)t(r,0,1===n.length?Vp(r,ws._0_is_declared_but_its_value_is_never_read,kc(Ee(n).name)):Vp(r,ws.All_imports_in_import_declaration_are_unused));else for(const i of n)jL(i,kc(i.name),t)})),r.forEach((([e,n])=>{const r=JL(e.parent)?1:0;if(e.elements.length===n.length)1===n.length&&260===e.parent.kind&&261===e.parent.parent.kind?KL(i,e.parent.parent,e.parent,Gz):t(e,r,1===n.length?Vp(e,ws._0_is_declared_but_its_value_is_never_read,GL(Ee(n).name)):Vp(e,ws.All_destructured_elements_are_unused));else for(const i of n)t(i,r,Vp(i,ws._0_is_declared_but_its_value_is_never_read,GL(i.name)))})),i.forEach((([e,n])=>{if(e.declarations.length===n.length)t(e,0,1===n.length?Vp(Ee(n).name,ws._0_is_declared_but_its_value_is_never_read,GL(Ee(n).name)):Vp(243===e.parent.kind?e.parent:e,ws.All_variables_are_unused));else for(const r of n)t(r,0,Vp(r,ws._0_is_declared_but_its_value_is_never_read,GL(r.name)))}))}function GL(e){switch(e.kind){case 80:return kc(e);case 207:case 206:return GL(_t(Ee(e.elements),$N).name);default:return Tn.assertNever(e)}}function QL(e){return 273===e.kind||276===e.kind||274===e.kind}function YL(e){if(241===e.kind&&JB(e),vu(e)){const t=vi;h(e.statements,Uz),vi=t}else h(e.statements,Uz);e.locals&&RL(e)}function ZL(e,t,n){if((null==t?void 0:t.escapedText)!==n)return!1;if(172===e.kind||171===e.kind||174===e.kind||173===e.kind||177===e.kind||178===e.kind||303===e.kind)return!1;if(33554432&e.flags)return!1;if((_I(e)||uI(e)||xI(e))&&Xl(e))return!1;const r=_y(e);return!fN(r)||!F_(r.parent.body)}function XL(e){bc(e,(t=>{if(4&KU(t)){return 80!==e.kind?wo(Oc(e),ws.Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference):wo(e,ws.Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference),!0}return!1}))}function $L(e){bc(e,(t=>{if(8&KU(t)){return 80!==e.kind?wo(Oc(e),ws.Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_meta_property_reference):wo(e,ws.Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta_property_reference),!0}return!1}))}function ej(e){1048576&KU(Fp(e))&&(Tn.assert(Pc(e)&&YC(e.name)&&"string"==typeof e.name.escapedText,"The target of a WeakMap/WeakSet collision check should be an identifier"),So("noEmit",e,ws.Compiler_reserves_name_0_when_emitting_private_identifier_downlevel,e.name.escapedText))}function tj(e){let t=!1;if(SA(e)){for(const n of e.members)if(2097152&KU(n)){t=!0;break}}else if(lA(e))2097152&KU(e)&&(t=!0);else{const n=Fp(e);n&&2097152&KU(n)&&(t=!0)}t&&(Tn.assert(Pc(e)&&YC(e.name),"The target of a Reflect collision check should be an identifier"),So("noEmit",e,ws.Duplicate_identifier_0_Compiler_reserves_name_1_when_emitting_super_references_in_static_initializers,Lp(e.name),"Reflect"))}function nj(e,t){t&&(function(e,t){if(O>=5&&!(O>=100&&1===C_(e).impliedNodeFormat))return;if(!t||!ZL(e,t,"require")&&!ZL(e,t,"exports"))return;if(sI(e)&&1!==qj(e))return;const n=xc(e);307===n.kind&&of(n)&&So("noEmit",t,ws.Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module,Lp(t),Lp(t))}(e,t),function(e,t){if(!t||D>=4||!ZL(e,t,"Promise"))return;if(sI(e)&&1!==qj(e))return;const n=xc(e);307===n.kind&&of(n)&&4096&n.flags&&So("noEmit",t,ws.Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_functions,Lp(t),Lp(t))}(e,t),function(e,t){D<=8&&(ZL(e,t,"WeakMap")||ZL(e,t,"WeakSet"))&&Xi.push(e)}(e,t),function(e,t){t&&D>=2&&D<=8&&ZL(e,t,"Reflect")&&$i.push(e)}(e,t),xu(e)?($j(t,ws.Class_name_cannot_be_0),33554432&e.flags||function(e){D>=1&&"Object"===e.escapedText&&(O<5||1===C_(e).impliedNodeFormat)&&wo(e,ws.Class_name_cannot_be_Object_when_targeting_ES5_with_module_0,Ci[O])}(t)):oI(e)&&$j(t,ws.Enum_name_cannot_be_0))}function rj(e){return e===Tt?St:e===ir?rr:e}function ij(e){var t;if(ML(e),$N(e)||Uz(e.type),!e.name)return;if(167===e.name.kind&&(lP(e.name),qd(e)&&e.initializer&&TR(e.initializer)),$N(e)){if(e.propertyName&&YC(e.name)&&dy(e)&&F_(nm(e).body))return void eo.push(e);ZN(e.parent)&&e.dotDotDotToken&&D<5&&mB(e,4),e.propertyName&&167===e.propertyName.kind&&lP(e.propertyName);const t=e.parent.parent,n=Fc(t,e.dotDotDotToken?32:0),r=e.propertyName||e.name;if(n&&!Mu(r)){const i=eb(r);if(Sk(i)){const r=df(n,Tk(i));r&&(OM(r,void 0,!1),YP(e,!!t.initializer&&108===t.initializer.kind,!1,n,r))}}}if(Mu(e.name)&&(207===e.name.kind&&D<2&&N.downlevelIteration&&mB(e,512),h(e.name.elements,Uz)),e.initializer&&dy(e)&&F_(nm(e).body))return void wo(e,ws.A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation);if(Mu(e.name)){if($E(e))return;const t=qd(e)&&e.initializer&&249!==e.parent.parent.kind,n=!$(e.name.elements,fn(TA));if(t||n){const r=Sl(e);if(t){const t=TR(e.initializer);K&&n?aM(t,e):tT(t,Sl(e),e,e.initializer)}n&&(XN(e.name)?hj(65,r,Mt,e):K&&aM(r,e))}return}const n=sa(e);if(2097152&n.flags&&(Hm(e)||Gm(e)))return void kz(e);const r=rj($l(n));if(e===n.valueDeclaration){const o=qd(e)&&eh(e);if(o){if(!(Um(e)&&tA(o)&&(0===o.properties.length||Ab(e.name))&&!!(null==(t=n.exports)?void 0:t.size))&&249!==e.parent.parent.kind){const t=TR(o);tT(t,r,e,o,void 0);const n=7&ZB(e);if(6===n){const e=(i=!0,Or||(Or=gy("AsyncDisposable",0,i))||En),n=Dy(!0);if(e!==En&&n!==En){$S(t,fv([e,n,jt,Mt]),o,ws.The_initializer_of_an_await_using_declaration_must_be_either_an_object_with_a_Symbol_asyncDispose_or_Symbol_dispose_method_or_be_null_or_undefined)}}else if(4===n){const e=Dy(!0);if(e!==En){$S(t,fv([e,jt,Mt]),o,ws.The_initializer_of_a_using_declaration_must_be_either_an_object_with_a_Symbol_dispose_method_or_be_null_or_undefined)}}}}n.declarations&&n.declarations.length>1&&$(n.declarations,(t=>t!==e&&jf(t)&&!sj(t,e)))&&wo(e.name,ws.All_declarations_of_0_must_have_identical_modifiers,Lp(e.name))}else{const t=rj(Sl(e));Mc(r)||Mc(t)||DS(r,t)||67108864&n.flags||oj(n.valueDeclaration,r,e,t),qd(e)&&e.initializer&&tT(TR(e.initializer),t,e,e.initializer,void 0),n.valueDeclaration&&!sj(e,n.valueDeclaration)&&wo(e.name,ws.All_declarations_of_0_must_have_identical_modifiers,Lp(e.name))}var i;172!==e.kind&&171!==e.kind&&(pL(e),260!==e.kind&&208!==e.kind||function(e){if(7&ZB(e)||dy(e))return;const t=sa(e);if(1&t.flags){if(!YC(e.name))return Tn.fail();const n=Le(e,e.name.escapedText,3,void 0,!1);if(n&&n!==t&&2&n.flags&&7&GP(n)){const t=Mg(n.valueDeclaration,261),r=243===t.parent.kind&&t.parent.parent?t.parent.parent:void 0;if(!r||!(241===r.kind&&pu(r.parent)||268===r.kind||267===r.kind||307===r.kind)){const t=Qa(n);wo(e,ws.Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1,t,t)}}}}(e),nj(e,e.name))}function oj(e,t,n,r){const i=Oc(n),o=172===n.kind||171===n.kind?ws.Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_type_2:ws.Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_type_2,s=Lp(i),a=wo(i,o,s,Za(t),Za(r));e&&xw(a,Vp(e,ws._0_was_also_declared_here,s))}function sj(e,t){if(169===e.kind&&260===t.kind||260===e.kind&&169===t.kind)return!0;if(Oh(e)!==Oh(t))return!1;return $v(e,1358)===$v(t,1358)}function aj(e){var t,n;null==(t=ar)||t.push(ar.Phase.Check,"checkVariableDeclaration",{kind:e.kind,pos:e.pos,end:e.end,path:e.tracingPath}),function(e){const t=ZB(e),n=7&t;if(Mu(e.name))switch(n){case 6:return VB(e,ws._0_declarations_may_not_have_binding_patterns,"await using");case 4:return VB(e,ws._0_declarations_may_not_have_binding_patterns,"using")}if(249!==e.parent.parent.kind&&250!==e.parent.parent.kind)if(33554432&t)FB(e);else if(!e.initializer){if(Mu(e.name)&&!Mu(e.parent))return VB(e,ws.A_destructuring_declaration_must_have_an_initializer);switch(n){case 6:return VB(e,ws._0_declarations_must_be_initialized,"await using");case 4:return VB(e,ws._0_declarations_must_be_initialized,"using");case 2:return VB(e,ws._0_declarations_must_be_initialized,"const")}}if(e.exclamationToken&&(243!==e.parent.parent.kind||!e.type||e.initializer||33554432&t)){const t=e.initializer?ws.Declarations_with_initializers_cannot_also_have_definite_assignment_assertions:e.type?ws.A_definite_assignment_assertion_is_not_permitted_in_this_context:ws.Declarations_with_definite_assignment_assertions_must_also_have_type_annotations;return VB(e.exclamationToken,t)}!(O<5||1===C_(e).impliedNodeFormat)||4===O||33554432&e.parent.parent.flags||!Kv(e.parent.parent,32)||RB(e.name);!!n&&LB(e.name)}(e),ij(e),null==(n=ar)||n.pop()}function cj(e){return function(e){if(e.dotDotDotToken){const t=e.parent.elements;if(e!==Ae(t))return VB(e,ws.A_rest_element_must_be_last_in_a_destructuring_pattern);if(vB(t,ws.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma),e.propertyName)return VB(e.name,ws.A_rest_element_cannot_have_a_property_name)}if(e.dotDotDotToken&&e.initializer)qB(e,e.initializer.pos-1,1,ws.A_rest_element_cannot_have_an_initializer)}(e),ij(e)}function lj(e){const t=7&mc(e);(4===t||6===t)&&D<99&&mB(e,16777216),h(e.declarations,Uz)}function uj(e){gB(e)||jB(e.declarationList)||function(e){if(!zB(e.parent)){const t=7&ZB(e.declarationList);if(t){const n=1===t?"let":2===t?"const":4===t?"using":6===t?"await using":Tn.fail("Unknown BlockScope flag");VB(e,ws._0_declarations_can_only_be_declared_inside_a_block,n)}}}(e),lj(e.declarationList)}function dj(e,t,n){function r(e,t){for(i(e=fg(e),t);gA(e)&&(57===e.operatorToken.kind||61===e.operatorToken.kind);)i(e=fg(e.left),t)}function i(e,n){const i=hb(e)?fg(e.right):e;if(uh(i))return;if(hb(i))return void r(i,n);const o=i===e?t:pj(i);if(1024&o.flags&&nA(i)&&384&(Qo(i.expression).resolvedSymbol??gt).flags)return void wo(i,ws.This_condition_will_always_return_0,o.value?"true":"false");const s=nA(i)&&wR(i.expression);if(!gC(o,4194304)||s)return;const a=pf(o,0),c=!!fL(o);if(0===a.length&&!c)return;const l=YC(i)?i:nA(i)?i.name:void 0,u=l&&xU(l);if(!u&&!c)return;const d=u&&gA(e.parent)&&function(e,t){for(;gA(e)&&56===e.operatorToken.kind;){if(GM(e.right,(function e(n){if(YC(n)){const e=xU(n);if(e&&e===t)return!0}return GM(n,e)})))return!0;e=e.parent}return!1}(e.parent,u)||u&&n&&function(e,t,n,r){return!!GM(t,(function t(i){if(YC(i)){const t=xU(i);if(t&&t===r){if(YC(e)||YC(n)&&gA(n.parent))return!0;let t=n.parent,r=i.parent;for(;t&&r;){if(YC(t)&&YC(r)||110===t.kind&&110===r.kind)return xU(t)===xU(r);if(nA(t)&&nA(r)){if(xU(t.name)!==xU(r.name))return!1;r=r.expression,t=t.expression}else{if(!iA(t)||!iA(r))return!1;r=r.expression,t=t.expression}}}}return GM(i,t)}))}(e,n,l,u);d||(c?Co(i,!0,ws.This_condition_will_always_return_true_since_this_0_is_always_defined,$a(o)):wo(i,ws.This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_instead))}K&&r(e,n)}function _j(e,t){return 16384&e.flags&&wo(t,ws.An_expression_of_type_void_cannot_be_tested_for_truthiness),e}function pj(e,t){return _j(qR(e,t),e)}function fj(e){IB(e);const t=tM(qR(e.expression));if(261===e.initializer.kind){const t=e.initializer.declarations[0];t&&Mu(t.name)&&wo(t.name,ws.The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern),lj(e.initializer)}else{const n=e.initializer,r=qR(n);209===n.kind||210===n.kind?wo(n,ws.The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern):WS(function(e){const t=ab(sb(e));return 131072&t.flags?Ut:t}(t),r)?tR(n,ws.The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access,ws.The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access):wo(n,ws.The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any)}t!==$t&&aR(t,126091264)||wo(e.expression,ws.The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_here_has_type_0,Za(t)),Uz(e.statement),e.locals&&RL(e)}function mj(e){return hj(e.awaitModifier?15:13,$P(e.expression),Mt,e.expression)}function hj(e,t,n,r){return Dc(t)?t:gj(e,t,n,r,!0)||St}function gj(e,t,n,r,i){const o=!!(2&e);if(t===$t)return void(r&&Dj(r,t,o));const s=D>=2,a=!s&&N.downlevelIteration,c=N.noUncheckedIndexedAccess&&!!(128&e);if(s||a||o){const o=Tj(t,e,s?r:void 0);if(i&&o){const t=8&e?ws.Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_send_0:32&e?ws.Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_always_send_0:64&e?ws.Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring_will_always_send_0:16&e?ws.Cannot_delegate_iteration_to_value_because_the_next_method_of_its_iterator_expects_type_1_but_the_containing_generator_will_always_send_0:void 0;t&&$S(n,o.nextType,r,t)}if(o||s)return c?EC(o&&o.yieldType):o&&o.yieldType}let l=t,u=!1;if(4&e){if(1048576&l.flags){const e=t.types,n=M(e,(e=>!(402653316&e.flags)));n!==e&&(l=fv(n,2))}else 402653316&l.flags&&(l=$t);if(u=l!==t,u&&131072&l.flags)return c?EC(Ut):Ut}if(!dw(l)){if(r){const n=!!(4&e)&&!u,[i,o]=function(n,r){var i;if(r)return n?[ws.Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator,!0]:[ws.Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator,!0];if(yj(e,0,t,void 0))return[ws.Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher,!1];if(function(e){switch(e){case"Float32Array":case"Float64Array":case"Int16Array":case"Int32Array":case"Int8Array":case"NodeList":case"Uint16Array":case"Uint32Array":case"Uint8Array":case"Uint8ClampedArray":return!0}return!1}(null==(i=t.symbol)?void 0:i.escapedName))return[ws.Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher,!0];return n?[ws.Type_0_is_not_an_array_type_or_a_string_type,!0]:[ws.Type_0_is_not_an_array_type,!0]}(n,a);Co(r,o&&!!fL(l),i,Za(l))}return u?c?EC(Ut):Ut:void 0}const d=wf(l,Bt);return u&&d?402653316&d.flags&&!N.noUncheckedIndexedAccess?Ut:fv(c?[d,Ut,Mt]:[d,Ut],2):128&e?EC(d):d}function yj(e,t,n,r){if(Dc(n))return;const i=Tj(n,e,r);return i&&i[eU(t)]}function vj(e=$t,t=$t,n=Dt){if(67359327&e.flags&&180227&t.flags&&180227&n.flags){const r=zh([e,t,n]);let i=si.get(r);return i||(i={yieldType:e,returnType:t,nextType:n},si.set(r,i)),i}return{yieldType:e,returnType:t,nextType:n}}function bj(e){let t,n,r;for(const i of e)if(void 0!==i&&i!==ai){if(i===ci)return ci;t=_e(t,i.yieldType),n=_e(n,i.returnType),r=_e(r,i.nextType)}return t||n||r?vj(t&&fv(t),n&&fv(n),r&&Mv(r)):ai}function xj(e,t){return e[t]}function Sj(e,t,n){return e[t]=n}function Tj(e,t,n){var r,i;if(Dc(e))return ci;if(!(1048576&e.flags)){const i=n?{errors:void 0}:void 0,o=kj(e,t,n,i);if(o===ai){if(n){const r=Dj(n,e,!!(2&t));(null==i?void 0:i.errors)&&xw(r,...i.errors)}return}if(null==(r=null==i?void 0:i.errors)?void 0:r.length)for(const e of i.errors)oo.add(e);return o}const o=2&t?"iterationTypesOfAsyncIterable":"iterationTypesOfIterable",s=xj(e,o);if(s)return s===ai?void 0:s;let a;for(const l of e.types){const r=n?{errors:void 0}:void 0,s=kj(l,t,n,r);if(s===ai){if(n){const i=Dj(n,e,!!(2&t));(null==r?void 0:r.errors)&&xw(i,...r.errors)}return void Sj(e,o,ai)}if(null==(i=null==r?void 0:r.errors)?void 0:i.length)for(const e of r.errors)oo.add(e);a=_e(a,s)}const c=a?bj(a):ai;return Sj(e,o,c),c===ai?void 0:c}function wj(e,t){if(e===ai)return ai;if(e===ci)return ci;const{yieldType:n,returnType:r,nextType:i}=e;return t&&My(!0),vj(SL(n,t)||St,SL(r,t)||St,i)}function kj(e,t,n,r){if(Dc(e))return ci;let i=!1;if(2&t){const r=Ej(e,di)||Nj(e,di);if(r){if(r!==ai||!n)return 8&t?wj(r,n):r;i=!0}}if(1&t){let r=Ej(e,_i)||Nj(e,_i);if(r)if(r===ai&&n)i=!0;else{if(!(2&t))return r;if(r!==ai)return r=wj(r,n),i?r:Sj(e,"iterationTypesOfAsyncIterable",r)}}if(2&t){const t=Ij(e,di,n,r,i);if(t!==ai)return t}if(1&t){let o=Ij(e,_i,n,r,i);if(o!==ai)return 2&t?(o=wj(o,n),i?o:Sj(e,"iterationTypesOfAsyncIterable",o)):o}return ai}function Ej(e,t){return xj(e,t.iterableCacheKey)}function Cj(e,t){const n=Ej(e,t)||Ij(e,t,void 0,void 0,!1);return n===ai?ui:n}function Nj(e,t){let n;if(nu(e,n=t.getGlobalIterableType(!1))||nu(e,n=t.getGlobalIterableIteratorType(!1))){const[r]=rg(e),{returnType:i,nextType:o}=Cj(n,t);return Sj(e,t.iterableCacheKey,vj(t.resolveIterationType(r,void 0)||r,t.resolveIterationType(i,void 0)||i,o))}if(nu(e,t.getGlobalGeneratorType(!1))){const[n,r,i]=rg(e);return Sj(e,t.iterableCacheKey,vj(t.resolveIterationType(n,void 0)||n,t.resolveIterationType(r,void 0)||r,i))}}function Aj(e){const t=Sy(!1),n=t&&Nc($l(t),Tc(e));return n&&Sk(n)?Tk(n):`__@${e}`}function Ij(e,t,n,r,i){const o=df(e,Aj(t.iteratorSymbolName)),s=!o||16777216&o.flags?void 0:$l(o);if(Dc(s))return i?ci:Sj(e,t.iterableCacheKey,ci);const a=s?pf(s,0):void 0;if(!$(a))return i?ai:Sj(e,t.iterableCacheKey,ai);const c=Pj(Mv(R(a,wm)),t,n,r,i)??ai;return i?c:Sj(e,t.iterableCacheKey,c)}function Dj(e,t,n){const r=n?ws.Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator:ws.Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator;return Co(e,!!fL(t)||!n&&VA(e.parent)&&e.parent.expression===e&&Ay(!1)!==Pn&&WS(t,Ay(!1)),r,Za(t))}function Pj(e,t,n,r,i){if(Dc(e))return ci;let o=Mj(e,t)||function(e,t){const n=t.getGlobalIterableIteratorType(!1);if(nu(e,n)){const[r]=rg(e),i=Mj(n,t)||Uj(n,t,void 0,void 0,!1),{returnType:o,nextType:s}=i===ai?ui:i;return Sj(e,t.iteratorCacheKey,vj(r,o,s))}if(nu(e,t.getGlobalIteratorType(!1))||nu(e,t.getGlobalGeneratorType(!1))){const[n,r,i]=rg(e);return Sj(e,t.iteratorCacheKey,vj(n,r,i))}}(e,t);return o===ai&&n&&(o=void 0,i=!0),o??(o=Uj(e,t,n,r,i)),o===ai?void 0:o}function Mj(e,t){return xj(e,t.iteratorCacheKey)}function Oj(e,t){const n=Nc(e,"done")||Vt;return WS(0===t?Vt:Jt,n)}function Fj(e){return Oj(e,0)}function Lj(e){return Oj(e,1)}function jj(e){if(Dc(e))return ci;const t=xj(e,"iterationTypesOfIteratorResult");if(t)return t;if(nu(e,(n=!1,Sr||(Sr=gy("IteratorYieldResult",1,n))||Pn))){return Sj(e,"iterationTypesOfIteratorResult",vj(rg(e)[0],void 0,void 0))}var n;if(nu(e,function(e){return Tr||(Tr=gy("IteratorReturnResult",1,e))||Pn}(!1))){return Sj(e,"iterationTypesOfIteratorResult",vj(void 0,rg(e)[0],void 0))}const r=KC(e,Fj),i=r!==$t?Nc(r,"value"):void 0,o=KC(e,Lj),s=o!==$t?Nc(o,"value"):void 0;return Sj(e,"iterationTypesOfIteratorResult",i||s?vj(i,s||Xt,void 0):ai)}function zj(e,t,n,r,i){var o,s,a,c;const l=df(e,n);if(!l&&"next"!==n)return;const u=!l||"next"===n&&16777216&l.flags?void 0:"next"===n?$l(l):vC($l(l),2097152);if(Dc(u))return"next"===n?ci:li;const d=u?pf(u,0):_;if(0===d.length){if(r){const e="next"===n?t.mustHaveANextMethodDiagnostic:t.mustBeAMethodDiagnostic;i?(i.errors??(i.errors=[]),i.errors.push(Vp(r,e,n))):wo(r,e,n)}return"next"===n?ai:void 0}if((null==u?void 0:u.symbol)&&1===d.length){const e=t.getGlobalGeneratorType(!1),r=t.getGlobalIteratorType(!1),i=(null==(s=null==(o=e.symbol)?void 0:o.members)?void 0:s.get(n))===u.symbol,l=!i&&(null==(c=null==(a=r.symbol)?void 0:a.members)?void 0:c.get(n))===u.symbol;if(i||l){const t=i?e:r,{mapper:o}=u;return vj(Qx(t.typeParameters[0],o),Qx(t.typeParameters[1],o),"next"===n?Qx(t.typeParameters[2],o):void 0)}}let p,f,m,h,g;for(const _ of d)"throw"!==n&&$(_.parameters)&&(p=_e(p,pF(_,0))),f=_e(f,wm(_));if("throw"!==n){const e=p?fv(p):Dt;if("next"===n)h=e;else if("return"===n){m=_e(m,t.resolveIterationType(e,r)||St)}}const y=f?Mv(f):$t,v=jj(t.resolveIterationType(y,r)||St);return v===ai?(r&&(i?(i.errors??(i.errors=[]),i.errors.push(Vp(r,t.mustHaveAValueDiagnostic,n))):wo(r,t.mustHaveAValueDiagnostic,n)),g=St,m=_e(m,St)):(g=v.yieldType,m=_e(m,v.returnType)),vj(g,fv(m),h)}function Uj(e,t,n,r,i){const o=bj([zj(e,t,"next",n,r),zj(e,t,"return",n,r),zj(e,t,"throw",n,r)]);return i?o:Sj(e,t.iteratorCacheKey,o)}function Bj(e,t,n){if(Dc(t))return;const r=Vj(t,n);return r&&r[eU(e)]}function Vj(e,t){if(Dc(e))return ci;const n=t?di:_i;return Tj(e,t?2:1,void 0)||function(e,t,n,r){return Pj(e,t,n,r,!1)}(e,n,void 0,void 0)}function Kj(e){JB(e)||function(e){let t=e;for(;t;){if(fu(t))return VB(e,ws.Jump_target_cannot_cross_function_boundary);switch(t.kind){case 256:if(e.label&&t.label.escapedText===e.label.escapedText){return!!(251===e.kind&&!id(t.statement,!0))&&VB(e,ws.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement)}break;case 255:if(252===e.kind&&!e.label)return!1;break;default:if(id(t,!1)&&!e.label)return!1}t=t.parent}if(e.label){return VB(e,252===e.kind?ws.A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement:ws.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement)}VB(e,252===e.kind?ws.A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement:ws.A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement)}(e)}function Jj(e,t){const n=!!(2&t);if(!!(1&t)){const t=Bj(1,e,n);return t?n?TL(vL(t)):t:Et}return n?TL(e)||Et:e}function Hj(e,t){const n=Jj(t,Jg(e));return!(!n||!(sR(n,16384)||32769&n.flags))}function Qj(e){JB(e)||YC(e.expression)&&!e.expression.escapedText&&function(e,t,...n){const r=C_(e);if(!UB(r)){const i=ef(r,e.pos);return oo.add(pS(r,qa(i),0,t,...n)),!0}}(e,ws.Line_break_not_permitted_here),e.expression&&qR(e.expression)}function Yj(e,t,n){const r=Sf(e);if(0===r.length)return;for(const o of W_(e))n&&4194304&o.flags||Zj(e,o,tb(o,8576,!0),eu(o));const i=t.valueDeclaration;if(i&&xu(i))for(const o of i.members)if(!Jv(o)&&!bd(o)){const t=sa(o);Zj(e,t,zR(o.name.expression),eu(t))}if(r.length>1)for(const o of r)Xj(e,o)}function Zj(e,t,n,r){const i=t.valueDeclaration,o=Oc(i);if(o&&ZC(o))return;const s=kf(e,n),a=2&Mx(e)?r_(e.symbol,264):void 0,c=i&&226===i.kind||o&&167===o.kind?i:void 0,l=ca(t)===e.symbol?i:void 0;for(const u of s){const n=u.declaration&&ca(sa(u.declaration))===e.symbol?u.declaration:void 0,i=l||n||(a&&!$(Fu(e),(e=>!!H_(e,t.escapedName)&&!!wf(e,u.keyType)))?a:void 0);if(i&&!WS(r,u.type)){const e=To(i,ws.Property_0_of_type_1_is_not_assignable_to_2_index_type_3,Qa(t),Za(r),Za(u.keyType),Za(u.type));c&&i!==c&&xw(e,Vp(c,ws._0_is_declared_here,Qa(t))),oo.add(e)}}}function Xj(e,t){const n=t.declaration,r=kf(e,t.keyType),i=2&Mx(e)?r_(e.symbol,264):void 0,o=n&&ca(sa(n))===e.symbol?n:void 0;for(const s of r){if(s===t)continue;const n=s.declaration&&ca(sa(s.declaration))===e.symbol?s.declaration:void 0,r=o||n||(i&&!$(Fu(e),(e=>!!Tf(e,t.keyType)&&!!wf(e,s.keyType)))?i:void 0);r&&!WS(t.type,s.type)&&wo(r,ws._0_index_type_1_is_not_assignable_to_2_index_type_3,Za(t.keyType),Za(t.type),Za(s.keyType),Za(s.type))}}function $j(e,t){switch(e.escapedText){case"any":case"unknown":case"never":case"number":case"bigint":case"boolean":case"string":case"symbol":case"void":case"object":case"undefined":wo(e,t,e.escapedText)}}function tz(e){let t=!1;if(e)for(let r=0;r<e.length;r++){const t=e[r];VR(t),s(n(t,r))}function n(n,r){return()=>{n.default?(t=!0,function(e,t,n){function r(e){if(183===e.kind){const r=ty(e);if(262144&r.flags)for(let i=n;i<t.length;i++)r.symbol===sa(t[i])&&wo(e,ws.Type_parameter_defaults_can_only_reference_previously_declared_type_parameters)}GM(e,r)}r(e)}(n.default,e,r)):t&&wo(n,ws.Required_type_parameters_may_not_follow_optional_type_parameters);for(let t=0;t<r;t++)e[t].symbol===n.symbol&&wo(n.name,ws.Duplicate_identifier_0,Lp(n.name))}}}function nz(e){if(e.declarations&&1===e.declarations.length)return;const t=Go(e);if(!t.typeParametersChecked){t.typeParametersChecked=!0;const n=function(e){return M(e.declarations,(e=>263===e.kind||264===e.kind))}(e);if(!n||n.length<=1)return;if(!rz(n,Zu(e).localTypeParameters,bl)){const t=Qa(e);for(const e of n)wo(e.name,ws.All_declarations_of_0_must_have_identical_type_parameters,t)}}}function rz(e,t,n){const r=m(t),i=Wf(t);for(const o of e){const e=n(o),s=e.length;if(s<i||s>r)return!1;for(let n=0;n<s;n++){const r=e[n],i=t[n];if(r.name.escapedText!==i.symbol.escapedName)return!1;const o=xl(r),s=o&&zx(o),a=Z_(i);if(s&&a&&!DS(s,a))return!1;const c=r.default&&zx(r.default),l=Tp(i);if(c&&l&&!DS(c,l))return!1}}return!0}function iz(e){const t=!L&&D<99&&km(!1,e),n=D<9||D<99,r=!q;if(t||n)for(const i of e.members){if(t&&Em(!1,i,e))return we(Rc(e))??e;if(n){if(bN(i))return i;if(Jv(i)&&(iu(i)||r&&oB(i)))return i}}}function oz(e){!function(e){const t=C_(e);(function(e){let t=!1,n=!1;if(!gB(e)&&e.heritageClauses)for(const r of e.heritageClauses){if(96===r.token){if(t)return BB(r,ws.extends_clause_already_seen);if(n)return BB(r,ws.extends_clause_must_precede_implements_clause);if(r.types.length>1)return BB(r.types[1],ws.Classes_can_only_extend_a_single_class);t=!0}else{if(Tn.assert(119===r.token),n)return BB(r,ws.implements_clause_already_seen);n=!0}wB(r)}})(e)||bB(e.typeParameters,t)}(e),ML(e),nj(e,e.name),tz(bl(e)),pL(e);const t=sa(e),n=Zu(t),r=Cd(n),i=$l(t);nz(t),_L(t),function(e){const t=new Map,n=new Map,r=new Map;for(const o of e.members)if(176===o.kind)for(const e of o.parameters)cc(e,o)&&!Mu(e.name)&&i(t,e.name,e.name.escapedText,3);else{const e=Jv(o),s=o.name;if(!s)continue;const a=ZC(s),c=a&&e?16:0,l=a?r:e?n:t,u=s&&QB(s);if(u)switch(o.kind){case 177:i(l,s,u,1|c);break;case 178:i(l,s,u,2|c);break;case 172:i(l,s,u,3|c);break;case 174:i(l,s,u,8|c)}}function i(e,t,n,r){const i=e.get(n);if(i)if((16&i)!=(16&r))wo(t,ws.Duplicate_identifier_0_Static_and_instance_elements_cannot_share_the_same_private_name,ep(t));else{const o=!!(8&i),s=!!(8&r);o||s?o!==s&&wo(t,ws.Duplicate_identifier_0,ep(t)):i&r&-17?wo(t,ws.Duplicate_identifier_0,ep(t)):e.set(n,i|r)}else e.set(n,r)}}(e);!!(33554432&e.flags)||function(e){for(const t of e.members){const n=t.name;if(Jv(t)&&n){const t=QB(n);switch(t){case"name":case"length":case"caller":case"arguments":if(B)break;case"prototype":wo(n,ws.Static_property_0_conflicts_with_built_in_property_Function_0_of_constructor_function_1,t,lc(sa(e)))}}}}(e);const o=Cg(e);if(o){h(o.typeArguments,Uz),D<2&&mB(o.parent,1);const t=Ng(e);t&&t!==o&&qR(t.expression);const a=Fu(n);a.length&&s((()=>{const t=a[0],s=Au(n),c=Np(s);if(function(e,t){const n=pf(e,1);if(n.length){const r=n[0].declaration;if(r&&Vv(r,2)){hU(t,Px(e.symbol))||wo(t,ws.Cannot_extend_a_class_0_Class_constructor_is_marked_as_private,js(e.symbol))}}}(c,o),Uz(o.expression),$(o.typeArguments)){h(o.typeArguments,Uz);for(const e of Cu(c,o.typeArguments,o))if(!rL(o,e.typeParameters))break}const l=Cd(t,n.thisType);if($S(r,l,void 0)?$S(i,IS(c),e.name||e,ws.Class_static_side_0_incorrectly_extends_base_class_static_side_1):cz(e,r,l,ws.Class_0_incorrectly_extends_base_class_1),8650752&s.flags)if(yu(i)){pf(s,1).some((e=>4&e.flags))&&!Kv(e,64)&&wo(e.name||e,ws.A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_be_declared_abstract)}else wo(e.name||e,ws.A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any);if(!(c.symbol&&32&c.symbol.flags||8650752&s.flags)){h(Nu(c,o.typeArguments,o),(e=>!zO(e.declaration)&&!DS(wm(e),t)))&&wo(o.expression,ws.Base_constructors_must_all_have_the_same_return_type)}!function(e,t){var n,r,i,o,s;const a=Q_(t),c=new Map;e:for(const l of a){const a=lz(l);if(4194304&a.flags)continue;const u=H_(e,a.escapedName);if(!u)continue;const d=lz(u),_=xx(a);if(Tn.assert(!!d,"derived should point to something, even if it is the base class' declaration."),d===a){const r=Px(e.symbol);if(64&_&&(!r||!Kv(r,64))){for(const n of Fu(e)){if(n===t)continue;const e=H_(n,a.escapedName),r=e&&lz(e);if(r&&r!==a)continue e}const i=Za(t),o=Za(e),s=Qa(l),u=_e(null==(n=c.get(r))?void 0:n.missedProperties,s);c.set(r,{baseTypeName:i,typeName:o,missedProperties:u})}}else{const n=xx(d);if(2&_||2&n)continue;let c;const l=98308&a.flags,u=98308&d.flags;if(l&&u){if((6&bx(a)?null==(r=a.declarations)?void 0:r.some((e=>dz(e,_))):null==(i=a.declarations)?void 0:i.every((e=>dz(e,_))))||262144&bx(a)||d.valueDeclaration&&gA(d.valueDeclaration))continue;const c=4!==l&&4===u;if(c||4===l&&4!==u){const n=c?ws._0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property:ws._0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor;wo(Oc(d.valueDeclaration)||d.valueDeclaration,n,Qa(a),Za(t),Za(e))}else if(B){const r=null==(o=d.declarations)?void 0:o.find((e=>172===e.kind&&!e.initializer));if(r&&!(33554432&d.flags)&&!(64&_)&&!(64&n)&&!(null==(s=d.declarations)?void 0:s.some((e=>!!(33554432&e.flags))))){const n=Pk(Px(e.symbol)),i=r.name;if(r.exclamationToken||!n||!YC(i)||!K||!pz(i,e,n)){const e=ws.Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_add_a_declare_modifier_or_remove_the_redundant_declaration;wo(Oc(d.valueDeclaration)||d.valueDeclaration,e,Qa(a),Za(t))}}}continue}if(QP(a)){if(QP(d)||4&d.flags)continue;Tn.assert(!!(98304&d.flags)),c=ws.Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_accessor}else c=98304&a.flags?ws.Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_function:ws.Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_function;wo(Oc(d.valueDeclaration)||d.valueDeclaration,c,Za(t),Qa(a),Za(e))}}for(const[l,u]of c)if(1===m(u.missedProperties))SA(l)?wo(l,ws.Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1,Ee(u.missedProperties),u.baseTypeName):wo(l,ws.Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2,u.typeName,Ee(u.missedProperties),u.baseTypeName);else if(m(u.missedProperties)>5){const e=R(u.missedProperties.slice(0,4),(e=>`'${e}'`)).join(", "),t=m(u.missedProperties)-4;SA(l)?wo(l,ws.Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_and_2_more,u.baseTypeName,e,t):wo(l,ws.Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_and_3_more,u.typeName,u.baseTypeName,e,t)}else{const e=R(u.missedProperties,(e=>`'${e}'`)).join(", ");SA(l)?wo(l,ws.Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1,u.baseTypeName,e):wo(l,ws.Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2,u.typeName,u.baseTypeName,e)}}(n,t)}))}!function(e,t,n,r){const i=Cg(e),o=i&&Fu(t),s=(null==o?void 0:o.length)?Cd(Ee(o),t.thisType):void 0,a=Au(t);for(const c of e.members)Qv(c)||(xN(c)&&h(c.parameters,(i=>{cc(i,c)&&sz(e,r,a,s,t,n,i,!0)})),sz(e,r,a,s,t,n,c,!1))}(e,n,r,i);const a=Ag(e);if(a)for(const l of a)wb(l.expression)&&!Cl(l.expression)||wo(l.expression,ws.A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments),oL(l),s(c(l));function c(t){return()=>{const i=Jp(zx(t));if(!Mc(i))if(Lu(i)){const t=i.symbol&&32&i.symbol.flags?ws.Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass:ws.Class_0_incorrectly_implements_interface_1,o=Cd(i,n.thisType);$S(r,o,void 0)||cz(e,r,o,t)}else wo(t,ws.A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_members)}}s((()=>{Yj(n,t),Yj(i,t,!0),QR(e),function(e){if(!K||!Y||33554432&e.flags)return;const t=Pk(e);for(const n of e.members)if(!(128&nb(n))&&!Jv(n)&&_z(n)){const e=n.name;if(YC(e)||ZC(e)||_N(e)){const r=$l(sa(n));3&r.flags||xT(r)||t&&pz(e,r,t)||wo(n.name,ws.Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor,Lp(e))}}}(e)}))}function sz(e,t,n,r,i,o,s,a,c=!0){const l=s.name&&xU(s.name)||xU(s);return l?az(e,t,n,r,i,o,Hv(s),Gv(s),Jv(s),a,Cc(l),c?s:void 0):0}function az(e,t,n,r,i,o,s,a,c,l,u,d){const _=Um(e),p=!!(33554432&e.flags);if(r&&(s||N.noImplicitOverride)){const e=Tc(u),i=c?n:r,f=df(c?t:o,e),m=df(i,e),h=Za(r);if(f&&!m&&s){if(d){const e=CM(u,i);e?wo(d,_?ws.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1:ws.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1,h,Qa(e)):wo(d,_?ws.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0:ws.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0,h)}return 2}if(f&&(null==m?void 0:m.declarations)&&N.noImplicitOverride&&!p){const e=$(m.declarations,Gv);if(s)return 0;if(!e){if(d){wo(d,l?_?ws.This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0:ws.This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0:_?ws.This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0:ws.This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0,h)}return 1}if(a&&e)return d&&wo(d,ws.This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0,h),1}}else if(s){if(d){const e=Za(i);wo(d,_?ws.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class:ws.This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class,e)}return 2}return 0}function cz(e,t,n,r){let i=!1;for(const o of e.members){if(Jv(o))continue;const e=o.name&&xU(o.name)||xU(o);if(e){const r=df(t,e.escapedName),s=df(n,e.escapedName);if(r&&s){const a=()=>gS(void 0,ws.Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2,Qa(e),Za(t),Za(n));$S($l(r),$l(s),o.name||o,void 0,a)||(i=!0)}}}i||$S(t,n,e.name||e,r)}function lz(e){return 1&bx(e)?e.links.target:e}function dz(e,t){return 64&t&&(!gN(e)||!e.initializer)||rI(e.parent)}function _z(e){return 172===e.kind&&!Gv(e)&&!e.exclamationToken&&!e.initializer}function pz(e,t,n){const r=_N(e)?oE.createElementAccessExpression(oE.createThis(),e.expression):oE.createPropertyAccessExpression(oE.createThis(),e);Bw(r.expression,r),Bw(r,n),r.flowNode=n.returnFlowNode;return!xT(aA(r,t,Lk(t)))}function fz(e){gB(e)||function(e){let t=!1;if(e.heritageClauses)for(const n of e.heritageClauses){if(96!==n.token)return Tn.assert(119===n.token),BB(n,ws.Interface_declaration_cannot_have_implements_clause);if(t)return BB(n,ws.extends_clause_already_seen);t=!0,wB(n)}}(e),tz(e.typeParameters),s((()=>{$j(e.name,ws.Interface_name_cannot_be_0),pL(e);const t=sa(e);nz(t);const n=r_(t,264);if(e===n){const n=Zu(t),r=Cd(n);if(function(e,t){const n=Fu(e);if(n.length<2)return!0;const r=new Map;h(pd(e).declaredProperties,(t=>{r.set(t.escapedName,{prop:t,containingType:e})}));let i=!0;for(const o of n){const n=Q_(Cd(o,e.thisType));for(const s of n){const n=r.get(s.escapedName);if(n){if(n.containingType!==e&&0===tw(n.prop,s,PS)){i=!1;const r=Za(n.containingType),a=Za(o);let c=gS(void 0,ws.Named_property_0_of_types_1_and_2_are_not_identical,Qa(s),r,a);c=gS(c,ws.Interface_0_cannot_simultaneously_extend_types_1_and_2,Za(e),r,a),oo.add(Wp(C_(t),t,c))}}else r.set(s.escapedName,{prop:s,containingType:o})}}return i}(n,e.name)){for(const t of Fu(n))$S(r,Cd(t,n.thisType),e.name,ws.Interface_0_incorrectly_extends_interface_1);Yj(n,t)}}GR(e)})),h(Dg(e),(e=>{wb(e.expression)&&!Cl(e.expression)||wo(e.expression,ws.An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments),oL(e)})),h(e.members,Uz),s((()=>{QR(e),RL(e)}))}function hz(e){const t=Qo(e);if(!(1024&t.flags)){t.flags|=1024;let n,r=0;for(const t of e.members){const e=gz(t,r,n);Qo(t).enumMemberValue=e,r="number"==typeof e.value?e.value+1:void 0,n=t}}}function gz(e,t,n){if(zp(e.name))wo(e.name,ws.Computed_property_names_are_not_allowed_in_enums);else{const t=Bp(e.name);ek(t)&&!Yw(t)&&wo(e.name,ws.An_enum_member_cannot_have_a_numeric_name)}if(e.initializer)return function(e){const t=af(e.parent),n=e.initializer,r=le(n,e);void 0!==r.value?t&&"number"==typeof r.value&&!isFinite(r.value)?wo(n,isNaN(r.value)?ws.const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN:ws.const_enum_member_initializer_was_evaluated_to_a_non_finite_value):LS(N)&&"string"==typeof r.value&&!r.isSyntacticallyString&&wo(n,ws._0_has_a_string_type_but_must_have_syntactically_recognizable_string_syntax_when_isolatedModules_is_enabled,`${kc(e.parent.name)}.${Bp(e.name)}`):t?wo(n,ws.const_enum_member_initializers_must_be_constant_expressions):33554432&e.parent.flags?wo(n,ws.In_ambient_enum_declarations_member_initializer_must_be_constant_expression):$S(qR(n),Bt,n,ws.Type_0_is_not_assignable_to_type_1_as_required_for_computed_enum_member_values);return r}(e);if(33554432&e.parent.flags&&!af(e.parent))return Ak(void 0);if(void 0===t)return wo(e.name,ws.Enum_member_must_have_initializer),Ak(void 0);if(LS(N)&&(null==n?void 0:n.initializer)){const t=WU(n);("number"!=typeof t.value||t.resolvedOtherFiles)&&wo(e.name,ws.Enum_member_following_a_non_literal_numeric_member_must_have_an_initializer_when_isolatedModules_is_enabled)}return Ak(t)}function yz(e,t){const n=zs(e,111551,!0);if(!n)return Ak(void 0);if(80===e.kind){const t=e;if(Yw(t.escapedText)&&n===hy(t.escapedText,111551,void 0))return Ak(+t.escapedText,!1)}if(8&n.flags)return t?vz(e,n,t):WU(n.valueDeclaration);if(AA(n)){const e=n.valueDeclaration;if(e&&$A(e)&&!e.type&&e.initializer&&(!t||e!==t&&Xo(e,t))){const n=le(e.initializer,e);return t&&C_(t)!==C_(e)?Ak(n.value,!1,!0,!0):Ak(n.value,n.isSyntacticallyString,n.resolvedOtherFiles,!0)}}return Ak(void 0)}function vz(e,t,n){const r=t.valueDeclaration;if(!r||r===n)return wo(e,ws.Property_0_is_used_before_being_assigned,Qa(t)),Ak(void 0);if(!Xo(r,n))return wo(e,ws.A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_members_defined_in_other_enums),Ak(0);const i=WU(r);return n.parent!==r.parent?Ak(i.value,i.isSyntacticallyString,i.resolvedOtherFiles,!0):i}function bz(e){s((()=>function(e){gB(e),nj(e,e.name),pL(e),e.members.forEach(xz),hz(e);const t=sa(e),n=r_(t,e.kind);if(e===n){if(t.declarations&&t.declarations.length>1){const n=af(e);h(t.declarations,(e=>{oI(e)&&af(e)!==n&&wo(Oc(e),ws.Enum_declarations_must_all_be_const_or_non_const)}))}let n=!1;h(t.declarations,(e=>{if(266!==e.kind)return!1;const t=e;if(!t.members.length)return!1;const r=t.members[0];r.initializer||(n?wo(r.name,ws.In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enum_element):n=!0)}))}}(e)))}function xz(e){ZC(e.name)&&wo(e,ws.An_enum_member_cannot_be_named_with_a_private_identifier),e.initializer&&qR(e.initializer)}function Sz(e){e.body&&(Uz(e.body),yp(e)||RL(e)),s((function(){var t,n;const r=yp(e),i=33554432&e.flags;r&&!i&&wo(e.name,ws.Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambient_context);const o=_p(e),s=o?ws.An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file:ws.A_namespace_declaration_is_only_allowed_at_the_top_level_of_a_namespace_or_module;if(Dz(e,s))return;gB(e)||i||11!==e.name.kind||VB(e.name,ws.Only_ambient_modules_can_use_quoted_names);YC(e.name)&&nj(e,e.name);pL(e);const a=sa(e);if(512&a.flags&&!i&&Yz(e,KS(N))){if(LS(N)&&!C_(e).externalModuleIndicator&&wo(e.name,ws.Namespaces_are_not_allowed_in_global_script_files_when_0_is_enabled_If_this_file_is_not_intended_to_be_a_global_script_set_moduleDetection_to_force_or_add_an_empty_export_statement,Ie),(null==(t=a.declarations)?void 0:t.length)>1){const t=function(e){const t=e.declarations;if(t)for(const n of t)if((263===n.kind||262===n.kind&&R_(n.body))&&!(33554432&n.flags))return n}(a);t&&(C_(e)!==C_(t)?wo(e.name,ws.A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merged):e.pos<t.pos&&wo(e.name,ws.A_namespace_declaration_cannot_be_located_prior_to_a_class_or_function_with_which_it_is_merged));const n=r_(a,263);n&&function(e,t){const n=Fp(e),r=Fp(t);return rf(n)?rf(r):!rf(r)&&n===r}(e,n)&&(Qo(e).flags|=2048)}if(N.verbatimModuleSyntax&&307===e.parent.kind&&(1===O||1===e.parent.impliedNodeFormat)){const t=null==(n=e.modifiers)?void 0:n.find((e=>95===e.kind));t&&wo(t,ws.A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled)}}if(o)if(vp(e)){if((r||33554432&sa(e).flags)&&e.body)for(const t of e.body.statements)Tz(t,r)}else rf(e.parent)?r?wo(e.name,ws.Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations):za($g(e.name))&&wo(e.name,ws.Ambient_module_declaration_cannot_specify_relative_module_name):wo(e.name,r?ws.Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations:ws.Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces)}))}function Tz(e,t){switch(e.kind){case 243:for(const r of e.declarationList.declarations)Tz(r,t);break;case 277:case 278:BB(e,ws.Exports_and_export_assignments_are_not_permitted_in_module_augmentations);break;case 271:case 272:BB(e,ws.Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_module);break;case 208:case 260:const n=e.name;if(Mu(n)){for(const e of n.elements)Tz(e,t);break}case 263:case 266:case 262:case 264:case 267:case 265:if(t)return}}function wz(e){const t=Ih(e);if(!t||F_(t))return!1;if(!MC(t))return wo(t,ws.String_literal_expected),!1;const n=268===e.parent.kind&&_p(e.parent.parent);if(307!==e.parent.kind&&!n)return wo(t,278===e.kind?ws.Export_declarations_are_not_permitted_in_a_namespace:ws.Import_declarations_in_a_namespace_cannot_reference_a_module),!1;if(n&&za(t.text)&&!oc(e))return wo(e,ws.Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relative_module_name),!1;if(!uI(e)&&e.attributes){const t=118===e.attributes.token?ws.Import_attribute_values_must_be_string_literal_expressions:ws.Import_assertion_values_must_be_string_literal_expressions;let n=!1;for(const r of e.attributes.elements)MC(r.value)||(n=!0,wo(r.value,t));return!n}return!0}function kz(e){var t,n,r,i;let o=sa(e);const s=Ps(o);if(s!==gt){if(o=oa(o.exportSymbol||o),Um(e)&&!(111551&s.flags)&&!Xl(e)){const a=Ql(e)?e.propertyName||e.name:Pc(e)?e.name:e;if(Tn.assert(280!==e.kind),281===e.kind){const i=wo(a,ws.Types_cannot_appear_in_export_declarations_in_JavaScript_files),o=null==(n=null==(t=C_(e).symbol)?void 0:t.exports)?void 0:n.get((e.propertyName||e.name).escapedText);if(o===s){const e=null==(r=o.declarations)?void 0:r.find(Od);e&&xw(i,Vp(e,ws._0_is_automatically_exported_here,wc(o.escapedName)))}}else{Tn.assert(260!==e.kind);const t=bc(e,pn(dI,uI)),n=(t&&(null==(i=Ch(t))?void 0:i.text))??"...",r=wc(YC(a)?a.escapedText:o.escapedName);wo(a,ws._0_is_a_type_and_cannot_be_imported_in_JavaScript_files_Use_1_in_a_JSDoc_type_annotation,r,`import("${n}").${r}`)}return}const a=Ms(s);if(a&((1160127&o.flags?111551:0)|(788968&o.flags?788968:0)|(1920&o.flags?1920:0))){wo(e,281===e.kind?ws.Export_declaration_conflicts_with_exported_declaration_of_0:ws.Import_declaration_conflicts_with_local_declaration_of_0,Qa(o))}else if(281!==e.kind){N.isolatedModules&&!bc(e,Xl)&&1160127&o.flags&&wo(e,ws.Import_0_conflicts_with_local_value_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled,Qa(o),Ie)}if(LS(N)&&!Xl(e)&&!(33554432&e.flags)){const t=Rs(o),n=!(111551&a);if(n||t)switch(e.kind){case 273:case 276:case 271:if(N.verbatimModuleSyntax){Tn.assertIsDefined(e.name,"An ImportClause with a symbol should have a name");const r=N.verbatimModuleSyntax&&Rm(e)?ws.An_import_alias_cannot_resolve_to_a_type_or_type_only_declaration_when_verbatimModuleSyntax_is_enabled:n?ws._0_is_a_type_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled:ws._0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled,i=kc(276===e.kind&&e.propertyName||e.name);ns(wo(e,r,i),n?void 0:t,i)}n&&271===e.kind&&Vv(e,32)&&wo(e,ws.Cannot_use_export_import_on_a_type_or_type_only_namespace_when_0_is_enabled,Ie);break;case 281:if(N.verbatimModuleSyntax||C_(t)!==C_(e)){const r=kc(e.propertyName||e.name);ns(n?wo(e,ws.Re_exporting_a_type_when_0_is_enabled_requires_using_export_type,Ie):wo(e,ws._0_resolves_to_a_type_only_declaration_and_must_be_re_exported_using_a_type_only_re_export_when_1_is_enabled,r,Ie),n?void 0:t,r);break}}!N.verbatimModuleSyntax||271===e.kind||Um(e)||1!==O&&1!==C_(e).impliedNodeFormat||wo(e,ws.ESM_syntax_is_not_allowed_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled)}if(xI(e)){const t=Ez(o,e);Ao(t)&&t.declarations&&Do(e,t.declarations,t.escapedName)}}}function Ez(e,t){if(!(2097152&e.flags)||Ao(e)||!us(e))return e;const n=Ps(e);if(n===gt)return n;for(;2097152&e.flags;){const r=vP(e);if(!r)break;if(r===n)break;if(r.declarations&&m(r.declarations)){if(Ao(r)){Do(t,r.declarations,r.escapedName);break}if(e===n)break;e=r}}return n}function Cz(e){nj(e,e.name),kz(e),276===e.kind&&"default"===kc(e.propertyName||e.name)&&jS(N)&&4!==O&&(O<5||1===C_(e).impliedNodeFormat)&&mB(e,131072)}function Nz(e){var t;const n=e.attributes;if(n){const r=xy(!0);r!==En&&$S(wl(n),Fk(r,32768),n);const i=cK(e),o=dK(n,i?VB:void 0),s=118===e.attributes.token;if(i&&o)return;if(99!==(199===O&&e.moduleSpecifier&&gs(e.moduleSpecifier))&&99!==O&&200!==O){return VB(n,s?199===O?ws.Import_attributes_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls:ws.Import_attributes_are_only_supported_when_the_module_option_is_set_to_esnext_nodenext_or_preserve:199===O?ws.Import_assertions_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls:ws.Import_assertions_are_only_supported_when_the_module_option_is_set_to_esnext_nodenext_or_preserve)}if(zD(e)||(dI(e)?null==(t=e.importClause)?void 0:t.isTypeOnly:e.isTypeOnly))return VB(n,s?ws.Import_attributes_cannot_be_used_with_type_only_imports_or_exports:ws.Import_assertions_cannot_be_used_with_type_only_imports_or_exports);if(o)return VB(n,ws.resolution_mode_can_only_be_set_for_type_only_imports)}}function Az(e){if(!Dz(e,Um(e)?ws.An_import_declaration_can_only_be_used_at_the_top_level_of_a_module:ws.An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module)){if(!gB(e)&&e.modifiers&&BB(e,ws.An_import_declaration_cannot_have_modifiers),wz(e)){const t=e.importClause;if(t&&!function(e){var t;if(e.isTypeOnly&&e.name&&e.namedBindings)return VB(e,ws.A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both);if(e.isTypeOnly&&275===(null==(t=e.namedBindings)?void 0:t.kind))return HB(e.namedBindings);return!1}(t)&&(t.name&&Cz(t),t.namedBindings))if(274===t.namedBindings.kind)Cz(t.namedBindings),4!==O&&(O<5||1===C_(e).impliedNodeFormat)&&jS(N)&&mB(e,65536);else{Bs(e,e.moduleSpecifier)&&h(t.namedBindings.elements,Cz)}}Nz(e)}}function Iz(e){if(!Dz(e,Um(e)?ws.An_export_declaration_can_only_be_used_at_the_top_level_of_a_module:ws.An_export_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module)){if(!gB(e)&&qv(e)&&BB(e,ws.An_export_declaration_cannot_have_modifiers),function(e){var t;if(e.isTypeOnly&&279===(null==(t=e.exportClause)?void 0:t.kind))return HB(e.exportClause)}(e),!e.moduleSpecifier||wz(e))if(e.exportClause&&!vI(e.exportClause)){h(e.exportClause.elements,Mz);const t=268===e.parent.kind&&_p(e.parent.parent),n=!t&&268===e.parent.kind&&!e.moduleSpecifier&&33554432&e.flags;307===e.parent.kind||t||n||wo(e,ws.Export_declarations_are_not_permitted_in_a_namespace)}else{const t=Bs(e,e.moduleSpecifier);t&&Qs(t)?wo(e.moduleSpecifier,ws.Module_0_uses_export_and_cannot_be_used_with_export_Asterisk,Qa(t)):e.exportClause&&kz(e.exportClause),4!==O&&(O<5||1===C_(e).impliedNodeFormat)&&(e.exportClause?jS(N)&&mB(e,65536):mB(e,32768))}Nz(e)}}function Dz(e,t){const n=307===e.parent.kind||268===e.parent.kind||267===e.parent.kind;return n||BB(e,t),!n}function Mz(e){if(kz(e),VS(N)&&_c(e.propertyName||e.name,!0),e.parent.parent.moduleSpecifier)jS(N)&&4!==O&&(O<5||1===C_(e).impliedNodeFormat)&&"default"===kc(e.propertyName||e.name)&&mB(e,131072);else{const t=e.propertyName||e.name,n=Le(t,t.escapedText,2998271,void 0,!0);n&&(n===pe||n===fe||n.declarations&&rf(xc(n.declarations[0])))?wo(t,ws.Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module,kc(t)):KA(e,7)}}function Rz(e){const t=sa(e),n=Go(t);if(!n.exportsChecked){const e=t.exports.get("export=");if(e&&function(e){return f_(e.exports,((e,t)=>"export="!==t))}(t)){const t=us(e)||e.valueDeclaration;!t||oc(t)||Um(t)||wo(t,ws.An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements)}const r=ea(t);r&&r.forEach((({declarations:e,flags:t},n)=>{if("__export"===n)return;if(1920&t)return;const r=P(e,_n(Kz,fn(rI)));if(!(524288&t&&r<=2)&&r>1&&!Lz(e))for(const i of e)Xz(i)&&oo.add(Vp(i,ws.Cannot_redeclare_exported_variable_0,wc(n)))})),n.exportsChecked=!0}}function Lz(e){return e&&e.length>1&&e.every((e=>Um(e)&&Bx(e)&&(ch(e.expression)||uh(e.expression))))}function Uz(e){if(e){const n=r;r=e,f=0,function(e){Vh(e)&&h(e.jsDoc,(({comment:t,tags:n})=>{qz(t),h(n,(t=>{qz(t.comment),Um(e)&&Uz(t)}))}));const n=e.kind;if(t)switch(n){case 267:case 263:case 264:case 262:t.throwIfCancellationRequested()}n>=243&&n<=259&&qh(e)&&e.flowNode&&!jN(e.flowNode)&&Eo(!1===N.allowUnreachableCode,e,ws.Unreachable_code_detected);switch(n){case 168:return VR(e);case 169:return KR(e);case 172:return YR(e);case 171:return function(e){return ZC(e.name)&&wo(e,ws.Private_identifiers_are_not_allowed_outside_class_bodies),YR(e)}(e);case 185:case 184:case 179:case 180:case 181:return WR(e);case 174:case 173:return function(e){MB(e)||EB(e.name),vN(e)&&e.asteriskToken&&YC(e.name)&&"constructor"===kc(e.name)&&wo(e.name,ws.Class_constructor_may_not_be_a_generator),FL(e),Kv(e,64)&&174===e.kind&&e.body&&wo(e,ws.Method_0_cannot_have_an_implementation_because_it_is_marked_abstract,Lp(e.name)),ZC(e.name)&&!im(e)&&wo(e,ws.Private_identifiers_are_not_allowed_outside_class_bodies),ZR(e)}(e);case 175:return function(e){gB(e),GM(e,Uz)}(e);case 176:return XR(e);case 177:case 178:return eL(e);case 183:return oL(e);case 182:return function(e){const t=function(e){switch(e.parent.kind){case 219:case 179:case 262:case 218:case 184:case 174:case 173:const t=e.parent;if(e===t.type)return t}}(e);if(!t)return void wo(e,ws.A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods);const n=Xf(t),r=Sm(n);if(!r)return;Uz(e.type);const{parameterName:i}=e;if(0===r.kind||2===r.kind)Rx(i);else if(r.parameterIndex>=0){if(tU(n)&&r.parameterIndex===n.parameters.length-1)wo(i,ws.A_type_predicate_cannot_reference_a_rest_parameter);else if(r.type){const t=()=>gS(void 0,ws.A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type);$S(r.type,$l(n.parameters[r.parameterIndex]),e.type,void 0,t)}}else if(i){let n=!1;for(const{name:e}of t.parameters)if(Mu(e)&&JR(e,i,r.parameterName)){n=!0;break}n||wo(e.parameterName,ws.Cannot_find_parameter_0,r.parameterName)}}(e);case 186:return function(e){oy(e)}(e);case 187:return function(e){h(e.members,Uz),s((function(){const t=ux(e);Yj(t,t.symbol),QR(e),GR(e)}))}(e);case 188:return function(e){Uz(e.elementType)}(e);case 189:return function(e){let t=!1,n=!1;for(const r of e.elements){let e=zy(r);if(8&e){const t=zx(r.type);if(!dw(t)){wo(r,ws.A_rest_element_type_must_be_an_array_type);break}(ow(t)||$w(t)&&4&t.target.combinedFlags)&&(e|=4)}if(4&e){if(n){VB(r,ws.A_rest_element_cannot_follow_another_rest_element);break}n=!0}else if(2&e){if(n){VB(r,ws.An_optional_element_cannot_follow_a_rest_element);break}t=!0}else if(1&e&&t){VB(r,ws.A_required_element_cannot_follow_an_optional_element);break}}h(e.elements,Uz),zx(e)}(e);case 192:case 193:return function(e){h(e.types,Uz),zx(e)}(e);case 196:case 190:case 191:return Uz(e.type);case 197:return function(e){Rx(e)}(e);case 198:return lL(e);case 194:return function(e){GM(e,Uz)}(e);case 195:return function(e){bc(e,(e=>e.parent&&194===e.parent.kind&&e.parent.extendsType===e))||VB(e,ws.infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type),Uz(e.typeParameter);const t=sa(e.typeParameter);if(t.declarations&&t.declarations.length>1){const e=Go(t);if(!e.typeParametersChecked){e.typeParametersChecked=!0;const n=Yu(t),r=i_(t,168);if(!rz(r,[n],(e=>[e]))){const e=Qa(t);for(const t of r)wo(t.name,ws.All_declarations_of_0_must_have_identical_constraints,e)}}}RL(e)}(e);case 203:return function(e){for(const t of e.templateSpans)Uz(t.type),$S(zx(t.type),mn,t.type);zx(e)}(e);case 205:return function(e){Uz(e.argument),e.attributes&&dK(e.attributes,VB),sL(e)}(e);case 202:return function(e){e.dotDotDotToken&&e.questionToken&&VB(e,ws.A_tuple_member_cannot_be_both_optional_and_rest),190===e.type.kind&&VB(e.type,ws.A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_colon_rather_than_after_the_type),191===e.type.kind&&VB(e.type,ws.A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type),Uz(e.type),zx(e)}(e);case 328:return function(e){const t=Zh(e);if(!t||!nI(t)&&!SA(t))return void wo(t,ws.JSDoc_0_is_not_attached_to_a_class,kc(e.tagName));const n=fl(t).filter(mD);Tn.assert(n.length>0),n.length>1&&wo(n[1],ws.Class_declarations_cannot_have_more_than_one_augments_or_extends_tag);const r=OL(e.class.expression),i=Ng(t);if(i){const t=OL(i.expression);t&&r.escapedText!==t.escapedText&&wo(r,ws.JSDoc_0_1_does_not_match_the_extends_2_clause,kc(e.tagName),kc(r),kc(t))}}(e);case 329:return function(e){const t=Zh(e);t&&(nI(t)||SA(t))||wo(t,ws.JSDoc_0_is_not_attached_to_a_class,kc(e.tagName))}(e);case 346:case 338:case 340:return function(e){e.typeExpression||wo(e.name,ws.JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags),e.name&&$j(e.name,ws.Type_alias_name_cannot_be_0),Uz(e.typeExpression),tz(bl(e))}(e);case 345:return function(e){Uz(e.constraint);for(const t of e.typeParameters)Uz(t)}(e);case 344:return function(e){Uz(e.typeExpression)}(e);case 324:case 325:case 326:return function(e){e.name&&bU(e.name,!0)}(e);case 341:case 348:return function(e){Uz(e.typeExpression)}(e);case 317:!function(e){s((function(){e.type||Fh(e)||rE(e,St)})),WR(e)}(e);case 315:case 314:case 312:case 313:case 322:return Vz(e),void GM(e,Uz);case 318:return void function(e){Vz(e),Uz(e.type);const{parent:t}=e;if(fN(t)&&lD(t.parent))return void(Ae(t.parent.parameters)!==t&&wo(e,ws.A_rest_parameter_must_be_last_in_a_parameter_list));XI(t)||wo(e,ws.JSDoc_may_only_appear_in_the_last_parameter_of_a_signature);const n=e.parent.parent;if(!ND(n))return void wo(e,ws.JSDoc_may_only_appear_in_the_last_parameter_of_a_signature);const r=Hh(n);if(!r)return;const i=Yh(n);i&&Ae(i.parameters).symbol===r||wo(e,ws.A_rest_parameter_must_be_last_in_a_parameter_list)}(e);case 309:return Uz(e.type);case 333:case 335:case 334:return function(e){const t=Xh(e);t&&iu(t)&&wo(e,ws.An_accessibility_modifier_cannot_be_used_with_a_private_identifier)}(e);case 350:return function(e){Uz(e.typeExpression);const t=Zh(e);if(t){const e=gl(t,LD);if(m(e)>1)for(let t=1;t<m(e);t++){const n=e[t].tagName;wo(n,ws._0_tag_already_specified,kc(n))}}}(e);case 343:return function(e){const t=Zh(e);t&&uA(t)&&wo(e.tagName,ws.An_arrow_function_cannot_have_a_this_parameter)}(e);case 351:return function(e){Nz(e)}(e);case 199:return function(e){Uz(e.objectType),Uz(e.indexType),aL(Xb(e),e)}(e);case 200:return cL(e);case 262:return function(e){s((function(){FL(e),CB(e),nj(e,e.name)}))}(e);case 241:case 268:return YL(e);case 243:return uj(e);case 244:return function(e){JB(e),qR(e.expression)}(e);case 245:return function(e){JB(e);const t=pj(e.expression);dj(e.expression,t,e.thenStatement),Uz(e.thenStatement),242===e.thenStatement.kind&&wo(e.thenStatement,ws.The_body_of_an_if_statement_cannot_be_the_empty_statement),Uz(e.elseStatement)}(e);case 246:return function(e){JB(e),Uz(e.statement),pj(e.expression)}(e);case 247:return function(e){JB(e),pj(e.expression),Uz(e.statement)}(e);case 248:return function(e){JB(e)||e.initializer&&261===e.initializer.kind&&jB(e.initializer),e.initializer&&(261===e.initializer.kind?lj(e.initializer):qR(e.initializer)),e.condition&&pj(e.condition),e.incrementor&&qR(e.incrementor),Uz(e.statement),e.locals&&RL(e)}(e);case 249:return fj(e);case 250:return function(e){IB(e);const t=sm(e);e.awaitModifier?t&&bN(t)?VB(e.awaitModifier,ws.for_await_loops_cannot_be_used_inside_a_class_static_block):2==(6&Jg(t))&&D<5&&mB(e,16384):N.downlevelIteration&&D<2&&mB(e,256);if(261===e.initializer.kind)lj(e.initializer);else{const t=e.initializer,n=mj(e);if(209===t.kind||210===t.kind)mR(t,n||Et);else{const r=qR(t);tR(t,ws.The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access,ws.The_left_hand_side_of_a_for_of_statement_may_not_be_an_optional_property_access),n&&tT(n,r,t,e.expression)}}Uz(e.statement),e.locals&&RL(e)}(e);case 251:case 252:return Kj(e);case 253:return function(e){if(JB(e))return;const t=sm(e);if(t&&bN(t))return void BB(e,ws.A_return_statement_cannot_be_used_inside_a_class_static_block);if(!t)return void BB(e,ws.A_return_statement_can_only_be_used_within_a_function_body);const n=wm(Xf(t)),r=Jg(t);if(K||e.expression||131072&n.flags){const i=e.expression?TR(e.expression):Mt;if(178===t.kind)e.expression&&wo(e,ws.Setters_cannot_return_a_value);else if(176===t.kind)e.expression&&!tT(i,n,e,e.expression)&&wo(e,ws.Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class);else if(Cm(t)){const t=Jj(n,r)??n,o=2&r?hL(i,!1,e,ws.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member):i;t&&tT(o,t,e,e.expression)}}else 176!==t.kind&&N.noImplicitReturns&&!Hj(t,n)&&wo(e,ws.Not_all_code_paths_return_a_value)}(e);case 254:return function(e){JB(e)||65536&e.flags&&BB(e,ws.with_statements_are_not_allowed_in_an_async_function_block),qR(e.expression);const t=C_(e);if(!UB(t)){const n=ef(t,e.pos).start;qB(t,n,e.statement.pos-n,ws.The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any)}}(e);case 255:return function(e){let t;JB(e);let n=!1;const r=qR(e.expression);h(e.caseBlock.clauses,(e=>{var i;297!==e.kind||n||(void 0===t?t=e:(VB(e,ws.A_default_clause_cannot_appear_more_than_once_in_a_switch_statement),n=!0)),296===e.kind&&s((i=e,()=>{const e=qR(i.expression);gR(r,e)||fT(e,r,i.expression,void 0)})),h(e.statements,Uz),N.noFallthroughCasesInSwitch&&e.fallthroughFlowNode&&jN(e.fallthroughFlowNode)&&wo(e,ws.Fallthrough_case_in_switch)})),e.caseBlock.locals&&RL(e.caseBlock)}(e);case 256:return function(e){JB(e)||bc(e.parent,(t=>pu(t)?"quit":256===t.kind&&t.label.escapedText===e.label.escapedText&&(VB(e.label,ws.Duplicate_label_0,ep(e.label)),!0))),Uz(e.statement)}(e);case 257:return Qj(e);case 258:return function(e){JB(e),YL(e.tryBlock);const t=e.catchClause;if(t){if(t.variableDeclaration){const e=t.variableDeclaration;ij(e);const n=Nv(e);if(n){const e=zx(n);!e||3&e.flags||BB(n,ws.Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified)}else if(e.initializer)BB(e.initializer,ws.Catch_clause_variable_cannot_have_an_initializer);else{const e=t.block.locals;e&&m_(t.locals,(t=>{const n=e.get(t);(null==n?void 0:n.valueDeclaration)&&2&n.flags&&VB(n.valueDeclaration,ws.Cannot_redeclare_identifier_0_in_catch_clause,wc(t))}))}}YL(t.block)}e.finallyBlock&&YL(e.finallyBlock)}(e);case 260:return aj(e);case 208:return cj(e);case 263:return function(e){const t=w(e.modifiers,mN);L&&t&&$(e.members,(e=>Wv(e)&&iu(e)))&&VB(t,ws.Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_decorator),e.name||Kv(e,2048)||BB(e,ws.A_class_declaration_without_the_default_modifier_must_have_a_name),oz(e),h(e.members,Uz),RL(e)}(e);case 264:return fz(e);case 265:return function(e){gB(e),$j(e.name,ws.Type_alias_name_cannot_be_0),pL(e),tz(e.typeParameters),141===e.type.kind?Jz.has(e.name.escapedText)&&1===m(e.typeParameters)||wo(e.type,ws.The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types):(Uz(e.type),RL(e))}(e);case 266:return bz(e);case 267:return Sz(e);case 272:return Az(e);case 271:return function(e){if(!Dz(e,Um(e)?ws.An_import_declaration_can_only_be_used_at_the_top_level_of_a_module:ws.An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module)&&(gB(e),Rm(e)||wz(e)))if(Cz(e),KA(e,6),283!==e.moduleReference.kind){const t=Ps(sa(e));if(t!==gt){const n=Ms(t);if(111551&n){const t=kb(e.moduleReference);1920&zs(t,112575).flags||wo(t,ws.Module_0_is_hidden_by_a_local_declaration_with_the_same_name,Lp(t))}788968&n&&$j(e.name,ws.Import_name_cannot_be_0)}e.isTypeOnly&&VB(e,ws.An_import_alias_cannot_use_import_type)}else!(O>=5&&200!==O&&void 0===C_(e).impliedNodeFormat)||e.isTypeOnly||33554432&e.flags||VB(e,ws.Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_ns_from_mod_import_a_from_mod_import_d_from_mod_or_another_module_format_instead)}(e);case 278:return Iz(e);case 277:return function(e){if(Dz(e,e.isExportEquals?ws.An_export_assignment_must_be_at_the_top_level_of_a_file_or_module_declaration:ws.A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration))return;const t=307===e.parent.kind?e.parent:e.parent.parent;if(267===t.kind&&!_p(t))return void(e.isExportEquals?wo(e,ws.An_export_assignment_cannot_be_used_in_a_namespace):wo(e,ws.A_default_export_can_only_be_used_in_an_ECMAScript_style_module));!gB(e)&&Bv(e)&&BB(e,ws.An_export_assignment_cannot_have_modifiers);const n=Nv(e);n&&$S(TR(e.expression),zx(n),e.expression);const r=!e.isExportEquals&&!(33554432&e.flags)&&N.verbatimModuleSyntax&&(1===O||1===C_(e).impliedNodeFormat);if(80===e.expression.kind){const t=e.expression,n=ma(zs(t,-1,!0,!0,e));if(n){KA(e,3);const i=Rs(n,111551);if(111551&Ms(n)?(TR(t),r||33554432&e.flags||!N.verbatimModuleSyntax||!i||wo(t,e.isExportEquals?ws.An_export_declaration_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_a_type_only_declaration:ws.An_export_default_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_a_type_only_declaration,kc(t))):r||33554432&e.flags||!N.verbatimModuleSyntax||wo(t,e.isExportEquals?ws.An_export_declaration_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_type:ws.An_export_default_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_type,kc(t)),!r&&!(33554432&e.flags)&&LS(N)&&!(111551&n.flags)){const r=Ms(n,!1,!0);!(2097152&n.flags&&788968&r)||111551&r||i&&C_(i)===C_(e)?i&&C_(i)!==C_(e)&&ns(wo(t,e.isExportEquals?ws._0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_import_type_where_0_is_imported:ws._0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_export_type_0_as_default,kc(t),Ie),i,kc(t)):wo(t,e.isExportEquals?ws._0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_import_type_where_0_is_imported:ws._0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_export_type_0_as_default,kc(t),Ie)}}else TR(t);VS(N)&&_c(t,!0)}else TR(e.expression);r&&wo(e,ws.ESM_syntax_is_not_allowed_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled),Rz(t),33554432&e.flags&&!wb(e.expression)&&VB(e.expression,ws.The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context),e.isExportEquals&&(O>=5&&200!==O&&(33554432&e.flags&&99===C_(e).impliedNodeFormat||!(33554432&e.flags)&&1!==C_(e).impliedNodeFormat)?VB(e,ws.Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or_another_module_format_instead):4!==O||33554432&e.flags||VB(e,ws.Export_assignment_is_not_supported_when_module_flag_is_system))}(e);case 242:case 259:return void JB(e);case 282:(function(e){ML(e)})(e)}}(e),r=n}}function qz(e){at(e)&&h(e,(e=>{Gd(e)&&Uz(e)}))}function Vz(e){if(!Um(e))if(aD(e)||sD(e)){const t=Vs(aD(e)?54:58),n=e.postfix?ws._0_at_the_end_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1:ws._0_at_the_start_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1,r=zx(e.type);VB(e,n,t,Za(sD(e)&&r!==$t&&r!==Xt?fv(_e([r,Mt],e.postfix?void 0:jt)):r))}else VB(e,ws.JSDoc_types_can_only_be_used_inside_documentation_comments)}function Zz(e){const t=Qo(C_(e));1&t.flags?Tn.assert(!t.deferredNodes,"A type-checked file should have no deferred nodes."):(t.deferredNodes||(t.deferredNodes=new Set),t.deferredNodes.add(e))}function sU(e){var t,n;null==(t=ar)||t.push(ar.Phase.Check,"checkDeferredNode",{kind:e.kind,pos:e.pos,end:e.end,path:e.tracingPath});const o=r;switch(r=e,f=0,e.kind){case 213:case 214:case 215:case 170:case 286:VM(e);break;case 218:case 219:case 174:case 173:!function(e){Tn.assert(174!==e.kind||Hf(e));const t=Jg(e),n=Cm(e);if(QF(e,n),e.body)if(Iv(e)||wm(Xf(e)),241===e.body.kind)Uz(e.body);else{const r=qR(e.body),i=n&&Jj(n,t);if(i){const n=pO(e.body);tT(2==(3&t)?hL(r,!1,n,ws.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member):r,i,n,n)}}}(e);break;case 177:case 178:eL(e);break;case 231:!function(e){h(e.members,Uz),RL(e)}(e);break;case 168:!function(e){var t,n;if(rI(e.parent)||xu(e.parent)||iI(e.parent)){const r=Yu(sa(e)),o=24576&VT(r);if(o){const s=sa(e.parent);if(!iI(e.parent)||52&Mx(Zu(s))){if(8192===o||16384===o){null==(t=ar)||t.push(ar.Phase.CheckTypes,"checkTypeParameterDeferred",{parent:ov(Zu(s)),id:ov(r)});const a=BT(s,r,16384===o?Bn:Un),c=BT(s,r,16384===o?Un:Bn),l=r;i=r,$S(a,c,e,ws.Type_0_is_not_assignable_to_type_1_as_implied_by_variance_annotation),i=l,null==(n=ar)||n.pop()}}else wo(e,ws.Variance_annotations_are_only_supported_in_type_aliases_for_object_function_constructor_and_mapped_types)}}}(e);break;case 285:!function(e){KP(e)}(e);break;case 284:!function(e){KP(e.openingElement),TP(e.closingElement.tagName)?AP(e.closingElement):qR(e.closingElement.tagName),kP(e)}(e);break;case 216:case 234:case 217:!function(e){const{type:t}=$O(e),n=cA(e)?t:e,r=Qo(e);Tn.assertIsDefined(r.assertionExpressionType);const i=Gk(qw(r.assertionExpressionType)),o=zx(t);Mc(o)||s((()=>{const e=eE(i);ZS(o,e)||fT(i,o,n,ws.Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the_other_If_this_was_intentional_convert_the_expression_to_unknown_first)}))}(e);break;case 222:qR(e.expression);break;case 226:Mb(e)&&VM(e)}r=o,null==(n=ar)||n.pop()}function aU(t){var n,r;null==(n=ar)||n.push(ar.Phase.Check,"checkSourceFile",{path:t.path},!0),mr("beforeCheck"),function(t){const n=Qo(t);if(!(1&n.flags)){if(kw(t,N,e))return;!function(e){!!(33554432&e.flags)&&function(e){for(const t of e.statements)if((Sd(t)||243===t.kind)&&KB(t))return!0}(e)}(t),F(Yi),F(Zi),F(Xi),F($i),F(eo),h(t.statements,Uz),Uz(t.endOfFileToken),function(e){const t=Qo(e);t.deferredNodes&&t.deferredNodes.forEach(sU),t.deferredNodes=void 0}(t),of(t)&&RL(t),s((()=>{t.isDeclarationFile||!N.noUnusedLocals&&!N.noUnusedParameters||LL(lU(t),((e,t,n)=>{!E_(e)&&cU(t,!!(33554432&e.flags))&&oo.add(n)})),t.isDeclarationFile||function(){var e;for(const t of eo)if(!(null==(e=sa(t))?void 0:e.isReferenced)){const e=dc(t);Tn.assert(dy(e),"Only parameter declaration should be checked here");const n=Vp(t.name,ws._0_is_an_unused_renaming_of_1_Did_you_intend_to_use_it_as_a_type_annotation,Lp(t.name),Lp(t.propertyName));e.type||xw(n,pS(C_(e),e.end,1,ws.We_can_only_write_a_type_for_0_by_adding_a_type_for_the_entire_parameter_here,Lp(t.propertyName))),oo.add(n)}}()})),of(t)&&Rz(t),Yi.length&&(h(Yi,XL),F(Yi)),Zi.length&&(h(Zi,$L),F(Zi)),Xi.length&&(h(Xi,ej),F(Xi)),$i.length&&(h($i,tj),F($i)),n.flags|=1}}(t),mr("afterCheck"),hr("Check","beforeCheck","afterCheck"),null==(r=ar)||r.pop()}function cU(e,t){if(t)return!1;switch(e){case 0:return!!N.noUnusedLocals;case 1:return!!N.noUnusedParameters;default:return Tn.assertNever(e)}}function lU(e){return mi.get(e.path)||_}function uU(n,r){try{return t=r,function(t){if(t){dU();const e=oo.getGlobalDiagnostics(),n=e.length;_U(t);const r=oo.getDiagnostics(t.fileName),i=oo.getGlobalDiagnostics();if(i!==e){return te(de(e,i,bS),r)}return 0===n&&i.length>0?te(i,r):r}return h(e.getSourceFiles(),_U),oo.getDiagnostics()}(n)}finally{t=void 0}}function dU(){for(const e of o)e();o=[]}function _U(e){dU();const t=s;s=e=>e(),aU(e),s=t}function pU(e){for(;166===e.parent.kind;)e=e.parent;return 183===e.parent.kind}function mU(e,t){let n,r=im(e);for(;r&&!(n=t(r));)r=im(r);return n}function hU(e,t){return!!mU(e,(e=>e===t))}function gU(e){return void 0!==function(e){for(;166===e.parent.kind;)e=e.parent;return 271===e.parent.kind?e.parent.moduleReference===e?e.parent:void 0:277===e.parent.kind&&e.parent.expression===e?e.parent:void 0}(e)}function yU(e){if(gg(e))return aa(e.parent);if(Um(e)&&211===e.parent.kind&&e.parent===e.parent.parent.left&&!ZC(e)&&!eD(e)&&!function(e){if(110===e.expression.kind){const t=cm(e,!1,!1);if(pu(t)){const e=ZI(t);if(e){const t=rD(e,qD(e,void 0));return t&&!Dc(t)}}}}(e.parent)){const t=function(e){switch(dh(e.parent.parent)){case 1:case 3:return aa(e.parent);case 5:if(nA(e.parent)&&Kx(e.parent)===e)return;case 4:case 2:return sa(e.parent.parent)}}(e);if(t)return t}if(277===e.parent.kind&&wb(e)){const t=zs(e,2998271,!0);if(t&&t!==gt)return t}else if(uu(e)&&gU(e)){const t=Mg(e,271);return Tn.assert(void 0!==t),Ls(e,!0)}if(uu(e)){const t=function(e){let t=e.parent;for(;dN(t);)e=t,t=t.parent;if(t&&205===t.kind&&t.qualifier===e)return t}(e);if(t){zx(t);const n=Qo(e).resolvedSymbol;return n===gt?void 0:n}}for(;Pb(e);)e=e.parent;if(function(e){for(;211===e.parent.kind;)e=e.parent;return 233===e.parent.kind}(e)){let t=0;233===e.parent.kind?(t=Df(e)?788968:111551,Tb(e.parent)&&(t|=111551)):t=1920,t|=2097152;const n=wb(e)?zs(e,t,!0):void 0;if(n)return n}if(341===e.parent.kind)return Hh(e.parent);if(168===e.parent.kind&&345===e.parent.parent.kind){Tn.assert(!Um(e));const t=eg(e.parent);return t&&t.symbol}if(Am(e)){if(F_(e))return;const t=bc(e,pn(Gd,$I,eD)),n=t?901119:111551;if(80===e.kind){if(Nm(e)&&TP(e)){const t=AP(e.parent);return t===gt?void 0:t}const r=zs(e,n,!0,!0,Yh(e));if(!r&&t){const t=bc(e,pn(xu,rI));if(t)return bU(e,!0,sa(t))}if(r&&t){const t=Xh(e);if(t&&QI(t)&&t===r.valueDeclaration)return zs(e,n,!0,!0,C_(t))||r}return r}if(ZC(e))return pM(e);if(211===e.kind||166===e.kind){const n=Qo(e);return n.resolvedSymbol?n.resolvedSymbol:(211===e.kind?(cM(e,0),n.resolvedSymbol||(n.resolvedSymbol=vU(TR(e.expression),eb(e.name)))):lM(e,0),!n.resolvedSymbol&&t&&dN(e)?bU(e):n.resolvedSymbol)}if(eD(e))return bU(e)}else if(pU(e)){const t=zs(e,183===e.parent.kind?788968:1920,!1,!0);return t&&t!==gt?t:Ig(e)}return 182===e.parent.kind?zs(e,1):void 0}function vU(e,t){const n=kf(e,t);if(n.length&&e.members){const t=yh(J_(e).members);if(n===Sf(e))return t;if(t){const r=Go(t),i=R(J(n,(e=>e.declaration)),Gz).join(",");if(r.filteredIndexSymbolCache||(r.filteredIndexSymbolCache=new Map),r.filteredIndexSymbolCache.has(i))return r.filteredIndexSymbolCache.get(i);{const t=Po(131072,"__index");return t.declarations=J(n,(e=>e.declaration)),t.parent=e.aliasSymbol?e.aliasSymbol:e.symbol?e.symbol:xU(t.declarations[0].parent),r.filteredIndexSymbolCache.set(i,t),t}}}}function bU(e,t,n){if(uu(e)){const r=901119;let i=zs(e,r,t,!0,Yh(e));if(!i&&YC(e)&&n&&(i=oa(Yo($s(n),e.escapedText,r))),i)return i}const r=YC(e)?n:bU(e.left,t,n),i=YC(e)?e.escapedText:e.right.escapedText;if(r){const e=111551&r.flags&&df($l(r),"prototype");return df(e?$l(e):Zu(r),i)}}function xU(e,t){if(YI(e))return tO(e)?oa(e.symbol):void 0;const{parent:n}=e,r=n.parent;if(!(67108864&e.flags)){if($z(e)){const t=sa(n);return Ql(e.parent)&&e.parent.propertyName===e?vP(t):t}if(vg(e))return sa(n.parent);if(80===e.kind){if(gU(e))return yU(e);if(208===n.kind&&206===r.kind&&e===n.propertyName){const t=df(SU(r),e.escapedText);if(t)return t}else if(NA(n)&&n.name===e)return 105===n.keywordToken&&"target"===kc(e)?sF(n).symbol:102===n.keywordToken&&"meta"===kc(e)?vy().members.get("meta"):void 0}switch(e.kind){case 80:case 81:case 211:case 166:if(!kv(e))return yU(e);case 110:const i=cm(e,!1,!1);if(pu(i)){const e=Xf(i);if(e.thisParameter)return e.thisParameter}if(Im(e))return qR(e).symbol;case 197:return Rx(e).symbol;case 108:return qR(e).symbol;case 137:const o=e.parent;return o&&176===o.kind?o.parent.symbol:void 0;case 11:case 15:if(Mm(e.parent.parent)&&Om(e.parent.parent)===e||(272===e.parent.kind||278===e.parent.kind)&&e.parent.moduleSpecifier===e||Um(e)&&zD(e.parent)&&e.parent.moduleSpecifier===e||Um(e)&&Jm(e.parent,!1)||mf(e.parent)||HN(e.parent)&&gf(e.parent.parent)&&e.parent.parent.argument===e.parent)return Bs(e,e,t);if(iA(n)&&_h(n)&&n.arguments[1]===e)return sa(n);case 9:const s=rA(n)?n.argumentExpression===e?zR(n.expression):void 0:HN(n)&&JN(r)?zx(r.objectType):void 0;return s&&df(s,Tc(e.text));case 90:case 100:case 39:case 86:return aa(e.parent);case 205:return gf(e)?xU(e.argument.literal,t):void 0;case 95:return SI(e.parent)?Tn.checkDefined(e.parent.symbol):void 0;case 102:case 105:return NA(e.parent)?oF(e.parent).symbol:void 0;case 104:if(gA(e.parent)){const t=zR(e.parent.right),n=dR(t);return(null==n?void 0:n.symbol)??t.symbol}return;case 236:return qR(e).symbol;case 295:if(Nm(e)&&TP(e)){const t=AP(e.parent);return t===gt?void 0:t}default:return}}}function SU(e){if(YI(e)&&!tO(e))return Et;if(67108864&e.flags)return Et;const t=vb(e),n=t&&ju(sa(t.class));if(Df(e)){const t=zx(e);return n?Cd(t,n.thisType):t}if(Am(e))return wU(e);if(n&&!t.isImplements){const e=we(Fu(n));return e?Cd(e,n.thisType):Et}if(ok(e)){return Zu(sa(e))}if(80===(r=e).kind&&ok(r.parent)&&Oc(r.parent)===r){const t=xU(e);return t?Zu(t):Et}var r;if($N(e))return $c(e,!0,0)||Et;if(Sd(e)){const t=sa(e);return t?$l(t):Et}if($z(e)){const t=xU(e);return t?$l(t):Et}if(Mu(e))return $c(e.parent,!0,0)||Et;if(gU(e)){const t=xU(e);if(t){const e=Zu(t);return Mc(e)?$l(t):e}}return NA(e.parent)&&e.parent.keywordToken===e.kind?oF(e.parent):hI(e)?xy(!1):Et}function TU(e){if(Tn.assert(210===e.kind||209===e.kind),250===e.parent.kind){return mR(e,mj(e.parent)||Et)}if(226===e.parent.kind){return mR(e,zR(e.parent.right)||Et)}if(303===e.parent.kind){const t=_t(e.parent.parent,tA);return pR(t,TU(t)||Et,np(t.properties,e.parent))}const t=_t(e.parent,eA),n=TU(t)||Et,r=hj(65,n,Mt,e.parent)||Et;return fR(t,n,t.elements.indexOf(e),r)}function wU(e){return Ib(e)&&(e=e.parent),Ex(zR(e))}function kU(e){const t=aa(e.parent);return Jv(e)?$l(t):Zu(t)}function EU(e){const t=e.name;switch(t.kind){case 80:return Nx(kc(t));case 9:case 11:return Nx(t.text);case 167:const e=lP(t);return aR(e,12288)?e:Ut;default:return Tn.fail("Unsupported property name.")}}function CU(e){const t=o_(Q_(e=Np(e))),n=pf(e,0).length?Gn:pf(e,1).length?Qn:void 0;return n&&h(Q_(n),(e=>{t.has(e.escapedName)||t.set(e.escapedName,e)})),wa(t)}function NU(e){return 0!==pf(e,0).length||0!==pf(e,1).length}function AU(e){if(tu(e))return!1;const t=Sc(e,YC);if(!t)return!1;const n=t.parent;if(!n)return!1;return!((nA(n)||WI(n))&&n.name===t)&&sB(t)===xe}function IU(e,t){var n;const r=Sc(e,YC);if(r){let e=sB(r,function(e){return gd(e.parent)&&e===e.parent.name}(r));if(e){if(1048576&e.flags){const n=oa(e.exportSymbol);if(!t&&944&n.flags&&!(3&n.flags))return;e=n}const i=ca(e);if(i){if(512&i.flags&&307===(null==(n=i.valueDeclaration)?void 0:n.kind)){const e=i.valueDeclaration;return e!==C_(r)?void 0:e}return bc(r.parent,(e=>gd(e)&&sa(e)===i))}}}}function DU(e){const t=HE(e);if(t)return t;const n=Sc(e,YC);if(n){const e=function(e){const t=Qo(e).resolvedSymbol;if(t&&t!==gt)return t;return Le(e,e.escapedText,3257279,void 0,!0,void 0)}(n);if(Is(e,111551)&&!Rs(e,111551))return us(e)}}function PU(e){if(418&e.flags&&e.valueDeclaration&&!YI(e.valueDeclaration)){const t=Go(e);if(void 0===t.isDeclarationWithCollidingName){const n=Fp(e.valueDeclaration);if(I_(n)||function(e){return e.valueDeclaration&&$N(e.valueDeclaration)&&299===dc(e.valueDeclaration).parent.kind}(e))if(Le(n.parent,e.escapedName,111551,void 0,!1))t.isDeclarationWithCollidingName=!0;else if(JU(e.valueDeclaration,16384)){const r=JU(e.valueDeclaration,32768),i=id(n,!1),o=241===n.kind&&id(n.parent,!1);t.isDeclarationWithCollidingName=!(gp(n)||r&&(i||o))}else t.isDeclarationWithCollidingName=!1}return t.isDeclarationWithCollidingName}return!1}function MU(e){if(!tu(e)){const t=Sc(e,YC);if(t){const e=sB(t);if(e&&PU(e))return e.valueDeclaration}}}function OU(e){const t=Sc(e,Sd);if(t){const e=sa(t);if(e)return PU(e)}return!1}function FU(e){switch(Tn.assert(De),e.kind){case 271:return LU(sa(e));case 273:case 274:case 276:case 281:const t=sa(e);return!!t&&LU(t,!0);case 278:const n=e.exportClause;return!!n&&(vI(n)||$(n.elements,FU));case 277:return!e.expression||80!==e.expression.kind||LU(sa(e),!0)}return!1}function RU(e){const t=Sc(e,uI);if(void 0===t||307!==t.parent.kind||!Rm(t))return!1;return LU(sa(t))&&t.moduleReference&&!F_(t.moduleReference)}function LU(e,t){if(!e)return!1;const n=C_(e.valueDeclaration);Ws(n&&sa(n));const r=ma(Ps(e));return r===gt?!t||!Rs(e):!!(111551&Ms(e,t,!0))&&(KS(N)||!jU(r))}function jU(e){return uR(e)||!!e.constEnumOnlyModule}function zU(e,t){if(Tn.assert(De),ds(e)){const t=sa(e),n=t&&Go(t);if(null==n?void 0:n.referenced)return!0;const r=Go(t).aliasTarget;if(r&&32&nb(e)&&111551&Ms(r)&&(KS(N)||!jU(r)))return!0}return!!t&&!!GM(e,(e=>zU(e,t)))}function UU(e){if(R_(e.body)){if(jd(e)||Ld(e))return!1;const t=tm(sa(e));return t.length>1||1===t.length&&t[0].declaration!==e}return!1}function BU(e){return(function(e){return!(!K||Mf(e)||ND(e)||!e.initializer||Kv(e,31))}(e)||function(e){return K&&Mf(e)&&(ND(e)||!e.initializer)&&Kv(e,31)}(e))&&!function(e){const t=pB(e);return!!t&&xT(zx(t))}(e)}function qU(e){const t=Sc(e,(e=>tI(e)||$A(e)));if(!t)return!1;let n;if($A(t)){if(t.type||!Um(t)&&!XB(t))return!1;const e=th(t);if(!e||!yd(e))return!1;n=sa(e)}else n=sa(t);return!!(n&&16&n.flags|3)&&!!f_($s(n),(e=>111551&e.flags&&wk(e.valueDeclaration)))}function VU(e){const t=Sc(e,tI);if(!t)return _;const n=sa(t);return n&&Q_($l(n))||_}function KU(e){var t;const n=e.id||0;return n<0||n>=Bi.length?0:(null==(t=Bi[n])?void 0:t.flags)||0}function JU(e,t){return function(e,t){if(!N.noCheck&&Ew(C_(e),N))return;const n=Qo(e);if(n.calculatedFlags&t)return;switch(t){case 16:case 32:return s(e);case 128:case 256:case 2097152:return o(e);case 512:case 8192:case 65536:case 262144:return c(e);case 536870912:return u(e);case 4096:case 32768:case 16384:return _(e);default:return Tn.assertNever(t,`Unhandled node check flag calculation: ${Tn.formatNodeCheckFlags(t)}`)}function r(e,t){const n=t(e,e.parent);if("skip"!==n)return n||QM(e,t)}function i(e){const n=Qo(e);if(n.calculatedFlags&t)return"skip";n.calculatedFlags|=2097536,s(e)}function o(e){r(e,i)}function s(e){Qo(e).calculatedFlags|=48,108===e.kind&&VI(e)}function a(e){const n=Qo(e);if(n.calculatedFlags&t)return"skip";n.calculatedFlags|=336384,u(e)}function c(e){r(e,a)}function l(e){return Am(e)||HI(e.parent)&&(e.parent.objectAssignmentInitializer??e.parent.name)===e}function u(e){if(Qo(e).calculatedFlags|=536920064,YC(e)&&l(e)&&(!nA(e.parent)||e.parent.name!==e)){const t=XE(e);t&&t!==gt&&yI(e,t)}}function d(e){const n=Qo(e);if(n.calculatedFlags&t)return"skip";n.calculatedFlags|=53248,p(e)}function _(e){r(Fp(gg(e)?e.parent:e),d)}function p(e){u(e),_N(e)&&lP(e),ZC(e)&&bu(e.parent)&&ZR(e.parent)}}(e,t),!!(KU(e)&t)}function WU(e){return hz(e.parent),Qo(e).enumMemberValue??Ak(void 0)}function HU(e){switch(e.kind){case 306:case 211:case 212:return!0}return!1}function GU(e){if(306===e.kind)return WU(e).value;Qo(e).resolvedSymbol||TR(e);const t=Qo(e).resolvedSymbol||(wb(e)?zs(e,111551,!0):void 0);if(t&&8&t.flags){const e=t.valueDeclaration;if(af(e.parent))return WU(e).value}}function QU(e){return!!(524288&e.flags)&&pf(e,0).length>0}function YU(e,t){var n;const r=Sc(e,uu);if(!r)return 0;if(t&&!(t=Sc(t)))return 0;let i=!1;if(dN(r)){const e=zs(kb(r),111551,!0,!0,t);i=!!(null==(n=null==e?void 0:e.declarations)?void 0:n.every(Xl))}const o=zs(r,111551,!0,!0,t),s=o&&2097152&o.flags?Ps(o):o;i||(i=!(!o||!Rs(o,111551)));const a=zs(r,788968,!0,!0,t),c=a&&2097152&a.flags?Ps(a):a;if(o||i||(i=!(!a||!Rs(a,788968))),s&&s===c){const e=Ny(!1);if(e&&s===e)return 9;const t=$l(s);if(t&&ku(t))return i?10:1}if(!c)return i?11:0;const l=Zu(c);return Mc(l)?i?11:0:3&l.flags?11:aR(l,245760)?2:aR(l,528)?6:aR(l,296)?3:aR(l,2112)?4:aR(l,402653316)?5:$w(l)?7:aR(l,12288)?8:QU(l)?10:ow(l)?7:11}function XU(e,t,n,r){const i=Sc(e,zf);if(!i)return oE.createToken(133);const o=sa(i),s=!o||133120&o.flags?Et:Kw($l(o));return ae.serializeTypeForDeclaration(i,s,o,t,1024|n,r)}function $U(e){const t=178===(e=Sc(e,Tl)).kind?177:178,n=r_(sa(e),t);return{firstAccessor:n&&n.pos<e.pos?n:e,secondAccessor:n&&n.pos<e.pos?e:n,setAccessor:178===e.kind?e:n,getAccessor:177===e.kind?e:n}}function eB(e){return pu(e)&&!Ld(e)?tB(e):SI(e)?e.expression:e.initializer?e.initializer:fN(e)&&Ld(e.parent)?tB($U(e.parent).getAccessor):void 0}function tB(e){let t;if(e&&!F_(e.body)){if(3&Jg(e))return;const n=e.body;n&&OA(n)?Of(n,(e=>{if(t)return t=void 0,!0;t=e.expression})):t=n}return t}function nB(e,t,n,r){const i=Sc(e,pu);return i?ae.serializeReturnTypeForSignature(Xf(i),t,1024|n,r):oE.createToken(133)}function rB(e,t,n,r){const i=Sc(e,td);if(!i)return oE.createToken(133);const o=eE(wU(i));return ae.expressionOrTypeToTypeNode(i,o,void 0,t,1024|n,r)}function iB(e){return ue.has(Tc(e))}function sB(e,t){const n=Qo(e).resolvedSymbol;if(n)return n;let r=e;if(t){const t=e.parent;Sd(t)&&e===t.name&&(r=xc(t))}return Le(r,e.escapedText,3257279,void 0,!0)}function aB(e){if(!tu(e)){const t=Sc(e,YC);if(t){const e=sB(t);if(e)return ma(e).valueDeclaration}}}function cB(e){if(!tu(e)){const t=Sc(e,YC);if(t){const e=sB(t);if(e)return M(ma(e).declarations,(e=>{switch(e.kind){case 260:case 169:case 208:case 172:case 303:case 304:case 306:case 210:case 262:case 218:case 219:case 263:case 231:case 266:case 174:case 177:case 178:case 267:return!0}return!1}))}}}function lB(e){return!!(cf(e)||$A(e)&&XB(e))&&Cx($l(sa(e)))}function uB(e,t){return function(e,t,n){const r=1056&e.flags?ae.symbolToExpression(e.symbol,111551,t,void 0,n):e===Jt?oE.createTrue():e===Vt&&oE.createFalse();if(r)return r;const i=e.value;return"object"==typeof i?oE.createBigIntLiteral(i):"string"==typeof i?oE.createStringLiteral(i):i<0?oE.createPrefixUnaryExpression(41,oE.createNumericLiteral(-i)):oE.createNumericLiteral(i)}($l(sa(e)),e,t)}function dB(e){return e?(vo(e),C_(e).localJsxFactory||$r):$r}function _B(e){if(e){const t=C_(e);if(t){if(t.localJsxFragmentFactory)return t.localJsxFragmentFactory;const e=t.pragmas.get("jsxfrag"),n=at(e)?e[0]:e;if(n)return t.localJsxFragmentFactory=$M(n.arguments.factory,D),t.localJsxFragmentFactory}}if(N.jsxFragmentFactory)return $M(N.jsxFragmentFactory,D)}function pB(e){const t=Nv(e);if(t)return t;if(169===e.kind&&178===e.parent.kind){const t=$U(e.parent).getAccessor;if(t)return Iv(t)}}function fB(e){const t=267===e.kind?dt(e.name,MC):Ih(e),n=qs(t,t,void 0);if(n)return r_(n,307)}function mB(e,t){if(N.importHelpers){const n=C_(e);if(Sp(n,N)&&!(33554432&e.flags)){const r=function(e,t){const n=Qo(e);n.externalHelpersModule||(n.externalHelpersModule=Ks(function(e){Tn.assert(N.importHelpers,"Expected importHelpers to be enabled");const t=e.imports[0];return Tn.assert(t&&fy(t)&&"tslib"===t.text,"Expected sourceFile.imports[0] to be the synthesized tslib import"),t}(e),e_,ws.This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found,t)||gt);return n.externalHelpersModule}(n,e);if(r!==gt){const n=Go(r);if(n.requestedExternalEmitHelpers??(n.requestedExternalEmitHelpers=0),(n.requestedExternalEmitHelpers&t)!==t){const i=t&~n.requestedExternalEmitHelpers;for(let t=1;t<=16777216;t<<=1)if(i&t)for(const n of hB(t)){const i=Ds(Yo(ea(r),Tc(n),111551));i?524288&t?$(tm(i),(e=>gF(e)>3))||wo(e,ws.This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_one_in_0_Consider_upgrading_your_version_of_0,e_,n,4):1048576&t?$(tm(i),(e=>gF(e)>4))||wo(e,ws.This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_one_in_0_Consider_upgrading_your_version_of_0,e_,n,5):1024&t&&($(tm(i),(e=>gF(e)>2))||wo(e,ws.This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_one_in_0_Consider_upgrading_your_version_of_0,e_,n,3)):wo(e,ws.This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_version_of_0,e_,n)}}n.requestedExternalEmitHelpers|=t}}}}function hB(e){switch(e){case 1:return["__extends"];case 2:return["__assign"];case 4:return["__rest"];case 8:return L?["__decorate"]:["__esDecorate","__runInitializers"];case 16:return["__metadata"];case 32:return["__param"];case 64:return["__awaiter"];case 128:return["__generator"];case 256:return["__values"];case 512:return["__read"];case 1024:return["__spreadArray"];case 2048:return["__await"];case 4096:return["__asyncGenerator"];case 8192:return["__asyncDelegator"];case 16384:return["__asyncValues"];case 32768:return["__exportStar"];case 65536:return["__importStar"];case 131072:return["__importDefault"];case 262144:return["__makeTemplateObject"];case 524288:return["__classPrivateFieldGet"];case 1048576:return["__classPrivateFieldSet"];case 2097152:return["__classPrivateFieldIn"];case 4194304:return["__setFunctionName"];case 8388608:return["__propKey"];case 16777216:return["__addDisposableResource","__disposeResources"];default:return Tn.fail("Unrecognized helper")}}function gB(e){var t;const n=function(e){const t=function(e){return jP(e)?w(e.modifiers,mN):void 0}(e);return t&&BB(t,ws.Decorators_are_not_valid_here)}(e)||function(e){if(!e.modifiers)return!1;const t=function(e){switch(e.kind){case 177:case 178:case 176:case 172:case 171:case 174:case 173:case 181:case 267:case 272:case 271:case 278:case 277:case 218:case 219:case 169:case 168:return;case 175:case 303:case 304:case 270:case 282:return w(e.modifiers,lu);default:if(268===e.parent.kind||307===e.parent.kind)return;switch(e.kind){case 262:return yB(e,134);case 263:case 185:return yB(e,128);case 231:case 264:case 265:return w(e.modifiers,lu);case 243:return 4&e.declarationList.flags?yB(e,135):w(e.modifiers,lu);case 266:return yB(e,87);default:Tn.assertNever(e)}}}(e);return t&&BB(t,ws.Modifiers_cannot_appear_here)}(e);if(void 0!==n)return n;if(fN(e)&&Sv(e))return BB(e,ws.Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters);const r=FA(e)?7&e.declarationList.flags:0;let i,o,s,a,c,l=0,u=!1,d=!1;for(const _ of e.modifiers)if(mN(_)){if(!xm(L,e,e.parent,e.parent.parent))return 174!==e.kind||R_(e.body)?BB(e,ws.Decorators_are_not_valid_here):BB(e,ws.A_decorator_can_only_decorate_a_method_implementation_not_an_overload);if(L&&(177===e.kind||178===e.kind)){const t=$U(e);if(Xv(t.firstAccessor)&&e===t.secondAccessor)return BB(e,ws.Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name)}if(-34849&l)return VB(_,ws.Decorators_are_not_valid_here);if(d&&98303&l){Tn.assertIsDefined(c);return!UB(C_(_))&&(xw(wo(_,ws.Decorators_may_not_appear_after_export_or_export_default_if_they_also_appear_before_export),Vp(c,ws.Decorator_used_before_export_here)),!0)}l|=32768,98303&l?32&l&&(u=!0):d=!0,c??(c=_)}else{if(148!==_.kind){if(171===e.kind||173===e.kind)return VB(_,ws._0_modifier_cannot_appear_on_a_type_member,Vs(_.kind));if(181===e.kind&&(126!==_.kind||!xu(e.parent)))return VB(_,ws._0_modifier_cannot_appear_on_an_index_signature,Vs(_.kind))}if(103!==_.kind&&147!==_.kind&&87!==_.kind&&168===e.kind)return VB(_,ws._0_modifier_cannot_appear_on_a_type_parameter,Vs(_.kind));switch(_.kind){case 87:{if(266!==e.kind&&168!==e.kind)return VB(e,ws.A_class_member_cannot_have_the_0_keyword,Vs(87));const t=PD(e.parent)&&Zh(e.parent)||e.parent;if(168===e.kind&&!(mu(t)||xu(t)||AN(t)||IN(t)||wN(t)||kN(t)||yN(t)))return VB(_,ws._0_modifier_can_only_appear_on_a_type_parameter_of_a_function_method_or_class,Vs(_.kind));break}case 164:if(16&l)return VB(_,ws._0_modifier_already_seen,"override");if(128&l)return VB(_,ws._0_modifier_cannot_be_used_with_1_modifier,"override","declare");if(8&l)return VB(_,ws._0_modifier_must_precede_1_modifier,"override","readonly");if(512&l)return VB(_,ws._0_modifier_must_precede_1_modifier,"override","accessor");if(1024&l)return VB(_,ws._0_modifier_must_precede_1_modifier,"override","async");l|=16,a=_;break;case 125:case 124:case 123:const n=ic(ub(_.kind));if(7&l)return VB(_,ws.Accessibility_modifier_already_seen);if(16&l)return VB(_,ws._0_modifier_must_precede_1_modifier,n,"override");if(256&l)return VB(_,ws._0_modifier_must_precede_1_modifier,n,"static");if(512&l)return VB(_,ws._0_modifier_must_precede_1_modifier,n,"accessor");if(8&l)return VB(_,ws._0_modifier_must_precede_1_modifier,n,"readonly");if(1024&l)return VB(_,ws._0_modifier_must_precede_1_modifier,n,"async");if(268===e.parent.kind||307===e.parent.kind)return VB(_,ws._0_modifier_cannot_appear_on_a_module_or_namespace_element,n);if(64&l)return 123===_.kind?VB(_,ws._0_modifier_cannot_be_used_with_1_modifier,n,"abstract"):VB(_,ws._0_modifier_must_precede_1_modifier,n,"abstract");if(iu(e))return VB(_,ws.An_accessibility_modifier_cannot_be_used_with_a_private_identifier);l|=ub(_.kind);break;case 126:if(256&l)return VB(_,ws._0_modifier_already_seen,"static");if(8&l)return VB(_,ws._0_modifier_must_precede_1_modifier,"static","readonly");if(1024&l)return VB(_,ws._0_modifier_must_precede_1_modifier,"static","async");if(512&l)return VB(_,ws._0_modifier_must_precede_1_modifier,"static","accessor");if(268===e.parent.kind||307===e.parent.kind)return VB(_,ws._0_modifier_cannot_appear_on_a_module_or_namespace_element,"static");if(169===e.kind)return VB(_,ws._0_modifier_cannot_appear_on_a_parameter,"static");if(64&l)return VB(_,ws._0_modifier_cannot_be_used_with_1_modifier,"static","abstract");if(16&l)return VB(_,ws._0_modifier_must_precede_1_modifier,"static","override");l|=256,i=_;break;case 129:if(512&l)return VB(_,ws._0_modifier_already_seen,"accessor");if(8&l)return VB(_,ws._0_modifier_cannot_be_used_with_1_modifier,"accessor","readonly");if(128&l)return VB(_,ws._0_modifier_cannot_be_used_with_1_modifier,"accessor","declare");if(172!==e.kind)return VB(_,ws.accessor_modifier_can_only_appear_on_a_property_declaration);l|=512;break;case 148:if(8&l)return VB(_,ws._0_modifier_already_seen,"readonly");if(172!==e.kind&&171!==e.kind&&181!==e.kind&&169!==e.kind)return VB(_,ws.readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature);if(512&l)return VB(_,ws._0_modifier_cannot_be_used_with_1_modifier,"readonly","accessor");l|=8;break;case 95:if(N.verbatimModuleSyntax&&!(33554432&e.flags)&&265!==e.kind&&264!==e.kind&&267!==e.kind&&307===e.parent.kind&&(1===O||1===C_(e).impliedNodeFormat))return VB(_,ws.A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled);if(32&l)return VB(_,ws._0_modifier_already_seen,"export");if(128&l)return VB(_,ws._0_modifier_must_precede_1_modifier,"export","declare");if(64&l)return VB(_,ws._0_modifier_must_precede_1_modifier,"export","abstract");if(1024&l)return VB(_,ws._0_modifier_must_precede_1_modifier,"export","async");if(xu(e.parent))return VB(_,ws._0_modifier_cannot_appear_on_class_elements_of_this_kind,"export");if(169===e.kind)return VB(_,ws._0_modifier_cannot_appear_on_a_parameter,"export");if(4===r)return VB(_,ws._0_modifier_cannot_appear_on_a_using_declaration,"export");if(6===r)return VB(_,ws._0_modifier_cannot_appear_on_an_await_using_declaration,"export");l|=32;break;case 90:const d=307===e.parent.kind?e.parent:e.parent.parent;if(267===d.kind&&!_p(d))return VB(_,ws.A_default_export_can_only_be_used_in_an_ECMAScript_style_module);if(4===r)return VB(_,ws._0_modifier_cannot_appear_on_a_using_declaration,"default");if(6===r)return VB(_,ws._0_modifier_cannot_appear_on_an_await_using_declaration,"default");if(!(32&l))return VB(_,ws._0_modifier_must_precede_1_modifier,"export","default");if(u)return VB(c,ws.Decorators_are_not_valid_here);l|=2048;break;case 138:if(128&l)return VB(_,ws._0_modifier_already_seen,"declare");if(1024&l)return VB(_,ws._0_modifier_cannot_be_used_in_an_ambient_context,"async");if(16&l)return VB(_,ws._0_modifier_cannot_be_used_in_an_ambient_context,"override");if(xu(e.parent)&&!gN(e))return VB(_,ws._0_modifier_cannot_appear_on_class_elements_of_this_kind,"declare");if(169===e.kind)return VB(_,ws._0_modifier_cannot_appear_on_a_parameter,"declare");if(4===r)return VB(_,ws._0_modifier_cannot_appear_on_a_using_declaration,"declare");if(6===r)return VB(_,ws._0_modifier_cannot_appear_on_an_await_using_declaration,"declare");if(33554432&e.parent.flags&&268===e.parent.kind)return VB(_,ws.A_declare_modifier_cannot_be_used_in_an_already_ambient_context);if(iu(e))return VB(_,ws._0_modifier_cannot_be_used_with_a_private_identifier,"declare");if(512&l)return VB(_,ws._0_modifier_cannot_be_used_with_1_modifier,"declare","accessor");l|=128,o=_;break;case 128:if(64&l)return VB(_,ws._0_modifier_already_seen,"abstract");if(263!==e.kind&&185!==e.kind){if(174!==e.kind&&172!==e.kind&&177!==e.kind&&178!==e.kind)return VB(_,ws.abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration);if(263!==e.parent.kind||!Kv(e.parent,64)){return VB(_,172===e.kind?ws.Abstract_properties_can_only_appear_within_an_abstract_class:ws.Abstract_methods_can_only_appear_within_an_abstract_class)}if(256&l)return VB(_,ws._0_modifier_cannot_be_used_with_1_modifier,"static","abstract");if(2&l)return VB(_,ws._0_modifier_cannot_be_used_with_1_modifier,"private","abstract");if(1024&l&&s)return VB(s,ws._0_modifier_cannot_be_used_with_1_modifier,"async","abstract");if(16&l)return VB(_,ws._0_modifier_must_precede_1_modifier,"abstract","override");if(512&l)return VB(_,ws._0_modifier_must_precede_1_modifier,"abstract","accessor")}if(Pc(e)&&81===e.name.kind)return VB(_,ws._0_modifier_cannot_be_used_with_a_private_identifier,"abstract");l|=64;break;case 134:if(1024&l)return VB(_,ws._0_modifier_already_seen,"async");if(128&l||33554432&e.parent.flags)return VB(_,ws._0_modifier_cannot_be_used_in_an_ambient_context,"async");if(169===e.kind)return VB(_,ws._0_modifier_cannot_appear_on_a_parameter,"async");if(64&l)return VB(_,ws._0_modifier_cannot_be_used_with_1_modifier,"async","abstract");l|=1024,s=_;break;case 103:case 147:{const n=103===_.kind?8192:16384,r=103===_.kind?"in":"out",i=PD(e.parent)&&(Zh(e.parent)||w(null==(t=$h(e.parent))?void 0:t.tags,MD))||e.parent;if(168!==e.kind||i&&!(rI(i)||xu(i)||iI(i)||MD(i)))return VB(_,ws._0_modifier_can_only_appear_on_a_type_parameter_of_a_class_interface_or_type_alias,r);if(l&n)return VB(_,ws._0_modifier_already_seen,r);if(8192&n&&16384&l)return VB(_,ws._0_modifier_must_precede_1_modifier,"in","out");l|=n;break}}}return 176===e.kind?256&l?VB(i,ws._0_modifier_cannot_appear_on_a_constructor_declaration,"static"):16&l?VB(a,ws._0_modifier_cannot_appear_on_a_constructor_declaration,"override"):!!(1024&l)&&VB(s,ws._0_modifier_cannot_appear_on_a_constructor_declaration,"async"):(272===e.kind||271===e.kind)&&128&l?VB(o,ws.A_0_modifier_cannot_be_used_with_an_import_declaration,"declare"):169===e.kind&&31&l&&Mu(e.name)?VB(e,ws.A_parameter_property_may_not_be_declared_using_a_binding_pattern):169===e.kind&&31&l&&e.dotDotDotToken?VB(e,ws.A_parameter_property_cannot_be_declared_using_a_rest_parameter):!!(1024&l)&&function(e,t){switch(e.kind){case 174:case 262:case 218:case 219:return!1}return VB(t,ws._0_modifier_cannot_be_used_here,"async")}(e,s)}function yB(e,t){const n=w(e.modifiers,lu);return n&&n.kind!==t?n:void 0}function vB(e,t=ws.Trailing_comma_not_allowed){return!(!e||!e.hasTrailingComma)&&qB(e[0],e.end-1,1,t)}function bB(e,t){if(e&&0===e.length){const n=e.pos-1;return qB(t,n,da(t.text,e.end)+1-n,ws.Type_parameter_list_cannot_be_empty)}return!1}function xB(e){if(D>=3){const t=e.body&&OA(e.body)&&uP(e.body.statements);if(t){const n=M(e.parameters,(e=>!!e.initializer||Mu(e.name)||Yd(e)));if(m(n)){h(n,(e=>{xw(wo(e,ws.This_parameter_is_not_allowed_with_use_strict_directive),Vp(t,ws.use_strict_directive_used_here))}));const e=n.map(((e,t)=>Vp(e,0===t?ws.Non_simple_parameter_declared_here:ws.and_here)));return xw(wo(t,ws.use_strict_directive_cannot_be_used_with_non_simple_parameter_list),...e),!0}}}return!1}function SB(e){const t=C_(e);return gB(e)||bB(e.typeParameters,t)||function(e){let t=!1;const n=e.length;for(let r=0;r<n;r++){const i=e[r];if(i.dotDotDotToken){if(r!==n-1)return VB(i.dotDotDotToken,ws.A_rest_parameter_must_be_last_in_a_parameter_list);if(33554432&i.flags||vB(e,ws.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma),i.questionToken)return VB(i.questionToken,ws.A_rest_parameter_cannot_be_optional);if(i.initializer)return VB(i.name,ws.A_rest_parameter_cannot_have_an_initializer)}else if(Pf(i)){if(t=!0,i.questionToken&&i.initializer)return VB(i.name,ws.Parameter_cannot_have_question_mark_and_initializer)}else if(t&&!i.initializer)return VB(i.name,ws.A_required_parameter_cannot_follow_an_optional_parameter)}}(e.parameters)||function(e,t){if(!uA(e))return!1;e.typeParameters&&!(m(e.typeParameters)>1||e.typeParameters.hasTrailingComma||e.typeParameters[0].constraint)&&t&&jo(t.fileName,[".mts",".cts"])&&VB(e.typeParameters[0],ws.This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Add_a_trailing_comma_or_explicit_constraint);const{equalsGreaterThanToken:n}=e,r=ta(t,n.pos).line,i=ta(t,n.end).line;return r!==i&&VB(n,ws.Line_terminator_not_permitted_before_arrow)}(e,t)||mu(e)&&xB(e)}function TB(e,t){return vB(t)||function(e,t){if(t&&0===t.length){const n=C_(e),r=t.pos-1;return qB(n,r,da(n.text,t.end)+1-r,ws.Type_argument_list_cannot_be_empty)}return!1}(e,t)}function wB(e){const t=e.types;if(vB(t))return!0;if(t&&0===t.length){const n=Vs(e.token);return qB(e,t.pos,0,ws._0_list_cannot_be_empty,n)}return $(t,kB)}function kB(e){return wA(e)&&lN(e.expression)&&e.typeArguments?VB(e,ws.This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot_have_type_arguments):TB(e,e.typeArguments)}function EB(e){if(167!==e.kind)return!1;const t=e;return 226===t.expression.kind&&28===t.expression.operatorToken.kind&&VB(t.expression,ws.A_comma_expression_is_not_allowed_in_a_computed_property_name)}function CB(e){if(e.asteriskToken){if(Tn.assert(262===e.kind||218===e.kind||174===e.kind),33554432&e.flags)return VB(e.asteriskToken,ws.Generators_are_not_allowed_in_an_ambient_context);if(!e.body)return VB(e.asteriskToken,ws.An_overload_signature_cannot_be_declared_as_a_generator)}}function NB(e,t){return!!e&&VB(e,t)}function AB(e,t){return!!e&&VB(e,t)}function IB(e){if(JB(e))return!0;if(250===e.kind&&e.awaitModifier&&!(65536&e.flags)){const t=C_(e);if(um(e)){if(!UB(t))switch(Sp(t,N)||oo.add(Vp(e.awaitModifier,ws.for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module)),O){case 100:case 199:if(1===t.impliedNodeFormat){oo.add(Vp(e.awaitModifier,ws.The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level));break}case 7:case 99:case 4:if(D>=4)break;default:oo.add(Vp(e.awaitModifier,ws.Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher))}}else if(!UB(t)){const t=Vp(e.awaitModifier,ws.for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules),n=nm(e);if(n&&176!==n.kind){Tn.assert(!(2&Jg(n)),"Enclosing function should never be an async function.");xw(t,Vp(n,ws.Did_you_mean_to_mark_this_function_as_async))}return oo.add(t),!0}}if(VA(e)&&!(65536&e.flags)&&YC(e.initializer)&&"async"===e.initializer.escapedText)return VB(e.initializer,ws.The_left_hand_side_of_a_for_of_statement_may_not_be_async),!1;if(261===e.initializer.kind){const t=e.initializer;if(!jB(t)){const n=t.declarations;if(!n.length)return!1;if(n.length>1){const n=249===e.kind?ws.Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement:ws.Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement;return BB(t.declarations[1],n)}const r=n[0];if(r.initializer){const t=249===e.kind?ws.The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer:ws.The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer;return VB(r.name,t)}if(r.type){return VB(r,249===e.kind?ws.The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation:ws.The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation)}}}return!1}function DB(e){if(e.parameters.length===(177===e.kind?1:2))return xv(e)}function PB(e,t){if(function(e){return Yg(e)&&!fd(e)}(e))return VB(e,t)}function MB(e){if(SB(e))return!0;if(174===e.kind){if(210===e.parent.kind){if(e.modifiers&&(1!==e.modifiers.length||134!==Ee(e.modifiers).kind))return BB(e,ws.Modifiers_cannot_appear_here);if(NB(e.questionToken,ws.An_object_member_cannot_be_declared_optional))return!0;if(AB(e.exclamationToken,ws.A_definite_assignment_assertion_is_not_permitted_in_this_context))return!0;if(void 0===e.body)return qB(e,e.end-1,1,ws._0_expected,"{")}if(CB(e))return!0}if(xu(e.parent)){if(D<2&&ZC(e.name))return VB(e.name,ws.Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher);if(33554432&e.flags)return PB(e.name,ws.A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type);if(174===e.kind&&!e.body)return PB(e.name,ws.A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type)}else{if(264===e.parent.kind)return PB(e.name,ws.A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type);if(187===e.parent.kind)return PB(e.name,ws.A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type)}}function OB(e){return Hg(e)||224===e.kind&&41===e.operator&&9===e.operand.kind}function FB(e){const t=e.initializer;if(t){const r=!(OB(t)||function(e){if((nA(e)||rA(e)&&OB(e.argumentExpression))&&wb(e.expression))return!!(1056&TR(e).flags)}(t)||112===t.kind||97===t.kind||(n=t,10===n.kind||224===n.kind&&41===n.operator&&10===n.operand.kind));if(!(cf(e)||$A(e)&&XB(e))||e.type)return VB(t,ws.Initializers_are_not_allowed_in_ambient_contexts);if(r)return VB(t,ws.A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_reference)}var n}function RB(e){if(80===e.kind){if("__esModule"===kc(e))return function(e,t,n,...r){if(!UB(C_(t)))return So(e,t,n,...r),!0;return!1}("noEmit",e,ws.Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules)}else{const t=e.elements;for(const e of t)if(!TA(e))return RB(e.name)}return!1}function LB(e){if(80===e.kind){if("let"===e.escapedText)return VB(e,ws.let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations)}else{const t=e.elements;for(const e of t)TA(e)||LB(e.name)}return!1}function jB(e){const t=e.declarations;if(vB(e.declarations))return!0;if(!e.declarations.length)return qB(e,t.pos,t.end-t.pos,ws.Variable_declaration_list_cannot_be_empty);const n=7&e.flags;return 4!==n&&6!==n||!qA(e.parent)?6===n&&rR(e):VB(e,4===n?ws.The_left_hand_side_of_a_for_in_statement_cannot_be_a_using_declaration:ws.The_left_hand_side_of_a_for_in_statement_cannot_be_an_await_using_declaration)}function zB(e){switch(e.kind){case 245:case 246:case 247:case 254:case 248:case 249:case 250:return!1;case 256:return zB(e.parent)}return!0}function UB(e){return e.parseDiagnostics.length>0}function BB(e,t,...n){const r=C_(e);if(!UB(r)){const i=ef(r,e.pos);return oo.add(pS(r,i.start,i.length,t,...n)),!0}return!1}function qB(e,t,n,r,...i){const o=C_(e);return!UB(o)&&(oo.add(pS(o,t,n,r,...i)),!0)}function VB(e,t,...n){return!UB(C_(e))&&(oo.add(Vp(e,t,...n)),!0)}function KB(e){return 264!==e.kind&&265!==e.kind&&272!==e.kind&&271!==e.kind&&278!==e.kind&&277!==e.kind&&270!==e.kind&&!Kv(e,2208)&&BB(e,ws.Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier)}function JB(e){if(33554432&e.flags){if(!Qo(e).hasReportedStatementInAmbientContext&&(pu(e.parent)||Su(e.parent)))return Qo(e).hasReportedStatementInAmbientContext=BB(e,ws.An_implementation_cannot_be_declared_in_ambient_contexts);if(241===e.parent.kind||268===e.parent.kind||307===e.parent.kind){const t=Qo(e.parent);if(!t.hasReportedStatementInAmbientContext)return t.hasReportedStatementInAmbientContext=BB(e,ws.Statements_are_not_allowed_in_ambient_contexts)}}return!1}function WB(e){const t=ep(e).includes("."),n=16&e.numericLiteralFlags;if(t||n)return;+e.text<=2**53-1||ko(!1,Vp(e,ws.Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accurately_as_integers))}function HB(e){return!!h(e.elements,(e=>{if(e.isTypeOnly)return BB(e,276===e.kind?ws.The_type_modifier_cannot_be_used_on_a_named_import_when_import_type_is_used_on_its_import_statement:ws.The_type_modifier_cannot_be_used_on_a_named_export_when_export_type_is_used_on_its_export_statement)}))}function GB(e,t,n){if(1048576&t.flags&&2621440&e.flags){const r=uC(t,e);if(r)return r;const i=Q_(e);if(i){const e=aC(i,t);if(e){const r=RT(t,R(e,(e=>[()=>$l(e),e.escapedName])),n);if(r!==t)return r}}}}function QB(e){const t=Zg(e);return t||(_N(e)?rC(zR(e.expression)):void 0)}function YB(e){return be===e?Fe:(be=e,Fe=pc(e))}function ZB(e){return ve===e?Pe:(ve=e,Pe=mc(e))}function XB(e){const t=7&ZB(e);return 2===t||4===t||6===t}}function Xz(e){return 262!==e.kind&&174!==e.kind||!!e.body}function $z(e){switch(e.parent.kind){case 276:case 281:return YC(e);default:return gg(e)}}function eU(e){switch(e){case 0:return"yieldType";case 1:return"returnType";case 2:return"nextType"}}function tU(e){return!!(1&e.flags)}function nU(e){return!!(2&e.flags)}(Mz=Pz||(Pz={})).JSX="JSX",Mz.IntrinsicElements="IntrinsicElements",Mz.ElementClass="ElementClass",Mz.ElementAttributesPropertyNameContainer="ElementAttributesProperty",Mz.ElementChildrenAttributeNameContainer="ElementChildrenAttribute",Mz.Element="Element",Mz.ElementType="ElementType",Mz.IntrinsicAttributes="IntrinsicAttributes",Mz.IntrinsicClassAttributes="IntrinsicClassAttributes",Mz.LibraryManagedAttributes="LibraryManagedAttributes";var rU=class e{constructor(t,n,r){var i;for(this.moduleResolverHost=void 0,this.inner=void 0,this.disableTrackSymbol=!1;n instanceof e;)n=n.inner;this.inner=n,this.moduleResolverHost=r,this.context=t,this.canTrackSymbol=!!(null==(i=this.inner)?void 0:i.trackSymbol)}trackSymbol(e,t,n){var r,i;if((null==(r=this.inner)?void 0:r.trackSymbol)&&!this.disableTrackSymbol){if(this.inner.trackSymbol(e,t,n))return this.onDiagnosticReported(),!0;262144&e.flags||((i=this.context).trackedSymbols??(i.trackedSymbols=[])).push([e,t,n])}return!1}reportInaccessibleThisError(){var e;(null==(e=this.inner)?void 0:e.reportInaccessibleThisError)&&(this.onDiagnosticReported(),this.inner.reportInaccessibleThisError())}reportPrivateInBaseOfClassExpression(e){var t;(null==(t=this.inner)?void 0:t.reportPrivateInBaseOfClassExpression)&&(this.onDiagnosticReported(),this.inner.reportPrivateInBaseOfClassExpression(e))}reportInaccessibleUniqueSymbolError(){var e;(null==(e=this.inner)?void 0:e.reportInaccessibleUniqueSymbolError)&&(this.onDiagnosticReported(),this.inner.reportInaccessibleUniqueSymbolError())}reportCyclicStructureError(){var e;(null==(e=this.inner)?void 0:e.reportCyclicStructureError)&&(this.onDiagnosticReported(),this.inner.reportCyclicStructureError())}reportLikelyUnsafeImportRequiredError(e){var t;(null==(t=this.inner)?void 0:t.reportLikelyUnsafeImportRequiredError)&&(this.onDiagnosticReported(),this.inner.reportLikelyUnsafeImportRequiredError(e))}reportTruncationError(){var e;(null==(e=this.inner)?void 0:e.reportTruncationError)&&(this.onDiagnosticReported(),this.inner.reportTruncationError())}reportNonlocalAugmentation(e,t,n){var r;(null==(r=this.inner)?void 0:r.reportNonlocalAugmentation)&&(this.onDiagnosticReported(),this.inner.reportNonlocalAugmentation(e,t,n))}reportNonSerializableProperty(e){var t;(null==(t=this.inner)?void 0:t.reportNonSerializableProperty)&&(this.onDiagnosticReported(),this.inner.reportNonSerializableProperty(e))}onDiagnosticReported(){this.context.reportedDiagnostic=!0}reportInferenceFallback(e){var t;(null==(t=this.inner)?void 0:t.reportInferenceFallback)&&this.inner.reportInferenceFallback(e)}};function iU(e,t,n,r){if(void 0===e)return e;const i=t(e);let o;return void 0!==i?(o=at(i)?(r||hU)(i):i,Tn.assertNode(o,n),o):void 0}function oU(e,t,n,r,i){if(void 0===e)return e;const o=e.length;let s;(void 0===r||r<0)&&(r=0),(void 0===i||i>o-r)&&(i=o-r);let a=-1,c=-1;r>0||i<o?s=e.hasTrailingComma&&r+i===o:(a=e.pos,c=e.end,s=e.hasTrailingComma);const l=aU(e,t,n,r,i);if(l!==e){const e=oE.createNodeArray(l,s);return jw(e,a,c),e}return e}function sU(e,t,n,r,i){if(void 0===e)return e;const o=e.length;return(void 0===r||r<0)&&(r=0),(void 0===i||i>o-r)&&(i=o-r),aU(e,t,n,r,i)}function aU(e,t,n,r,i){let o;const s=e.length;(r>0||i<s)&&(o=[]);for(let a=0;a<i;a++){const i=e[a+r],s=void 0!==i?t?t(i):i:void 0;if((void 0!==o||void 0===s||s!==i)&&(void 0===o&&(o=e.slice(0,a),Tn.assertEachNode(o,n)),s))if(at(s))for(const e of s)Tn.assertNode(e,n),o.push(e);else Tn.assertNode(s,n),o.push(s)}return o||(Tn.assertEachNode(e,n),e)}function cU(e,t,n,r,i,o=oU){return n.startLexicalEnvironment(),e=o(e,t,kd,r),i&&(e=n.factory.ensureUseStrict(e)),oE.mergeLexicalEnvironment(e,n.endLexicalEnvironment())}function lU(e,t,n,r=oU){let i;return n.startLexicalEnvironment(),e&&(n.setLexicalEnvironmentFlags(1,!0),i=r(e,t,fN),2&n.getLexicalEnvironmentFlags()&&MS(n.getCompilerOptions())>=2&&(i=function(e,t){let n;for(let r=0;r<e.length;r++){const i=e[r],o=uU(i,t);(n||o!==i)&&(n||(n=e.slice(0,r)),n[r]=o)}if(n)return vM(t.factory.createNodeArray(n,e.hasTrailingComma),e);return e}(i,n)),n.setLexicalEnvironmentFlags(1,!1)),n.suspendLexicalEnvironment(),i}function uU(e,t){return e.dotDotDotToken?e:Mu(e.name)?function(e,t){const{factory:n}=t;return t.addInitializationStatement(n.createVariableStatement(void 0,n.createVariableDeclarationList([n.createVariableDeclaration(e.name,void 0,e.type,e.initializer?n.createConditionalExpression(n.createStrictEquality(n.getGeneratedNameForNode(e),n.createVoidZero()),void 0,e.initializer,void 0,n.getGeneratedNameForNode(e)):n.getGeneratedNameForNode(e))]))),n.updateParameterDeclaration(e,e.modifiers,e.dotDotDotToken,n.getGeneratedNameForNode(e),e.questionToken,e.type,void 0)}(e,t):e.initializer?function(e,t,n,r){const i=r.factory;return r.addInitializationStatement(i.createIfStatement(i.createTypeCheck(i.cloneNode(t),"undefined"),dE(vM(i.createBlock([i.createExpressionStatement(dE(vM(i.createAssignment(dE(i.cloneNode(t),96),dE(n,3168|rp(n))),e),3072))]),e),3905))),i.updateParameterDeclaration(e,e.modifiers,e.dotDotDotToken,e.name,e.questionToken,e.type,void 0)}(e,e.name,e.initializer,t):e}function dU(e,t,n,r=iU){n.resumeLexicalEnvironment();const i=r(e,t,ud),o=n.endLexicalEnvironment();if($(o)){if(!i)return n.factory.createBlock(o);const e=n.factory.converters.convertToFunctionBlock(i),t=oE.mergeLexicalEnvironment(e.statements,o);return n.factory.updateBlock(e,t)}return i}function _U(e,t,n,r=iU){n.startBlockScope();const i=r(e,t,kd,n.factory.liftToBlock);Tn.assert(i);const o=n.endBlockScope();return $(o)?OA(i)?(o.push(...i.statements),n.factory.updateBlock(i,o)):(o.push(i),n.factory.createBlock(o)):i}function pU(e,t,n=t){if(n===t||e.length<=1)return oU(e,t,td);let r=0;const i=e.length;return oU(e,(e=>{const o=r<i-1;return r++,o?n(e):t(e)}),td)}function fU(e,t,n=Bq,r=oU,i,o=iU){if(void 0===e)return;const s=mU[e.kind];return void 0===s?e:s(e,t,n,r,o,i)}var mU={166:function(e,t,n,r,i,o){return n.factory.updateQualifiedName(e,Tn.checkDefined(i(e.left,t,uu)),Tn.checkDefined(i(e.right,t,YC)))},167:function(e,t,n,r,i,o){return n.factory.updateComputedPropertyName(e,Tn.checkDefined(i(e.expression,t,td)))},168:function(e,t,n,r,i,o){return n.factory.updateTypeParameterDeclaration(e,r(e.modifiers,t,lu),Tn.checkDefined(i(e.name,t,YC)),i(e.constraint,t,Du),i(e.default,t,Du))},169:function(e,t,n,r,i,o){return n.factory.updateParameterDeclaration(e,r(e.modifiers,t,Cu),o?i(e.dotDotDotToken,o,UC):e.dotDotDotToken,Tn.checkDefined(i(e.name,t,_u)),o?i(e.questionToken,o,WC):e.questionToken,i(e.type,t,Du),i(e.initializer,t,td))},170:function(e,t,n,r,i,o){return n.factory.updateDecorator(e,Tn.checkDefined(i(e.expression,t,td)))},171:function(e,t,n,r,i,o){return n.factory.updatePropertySignature(e,r(e.modifiers,t,lu),Tn.checkDefined(i(e.name,t,du)),o?i(e.questionToken,o,WC):e.questionToken,i(e.type,t,Du))},172:function(e,t,n,r,i,o){return n.factory.updatePropertyDeclaration(e,r(e.modifiers,t,Cu),Tn.checkDefined(i(e.name,t,du)),o?i(e.questionToken??e.exclamationToken,o,UP):e.questionToken??e.exclamationToken,i(e.type,t,Du),i(e.initializer,t,td))},173:function(e,t,n,r,i,o){return n.factory.updateMethodSignature(e,r(e.modifiers,t,lu),Tn.checkDefined(i(e.name,t,du)),o?i(e.questionToken,o,WC):e.questionToken,r(e.typeParameters,t,pN),r(e.parameters,t,fN),i(e.type,t,Du))},174:function(e,t,n,r,i,o){return n.factory.updateMethodDeclaration(e,r(e.modifiers,t,Cu),o?i(e.asteriskToken,o,KC):e.asteriskToken,Tn.checkDefined(i(e.name,t,du)),o?i(e.questionToken,o,WC):e.questionToken,r(e.typeParameters,t,pN),lU(e.parameters,t,n,r),i(e.type,t,Du),dU(e.body,t,n,i))},176:function(e,t,n,r,i,o){return n.factory.updateConstructorDeclaration(e,r(e.modifiers,t,Cu),lU(e.parameters,t,n,r),dU(e.body,t,n,i))},177:function(e,t,n,r,i,o){return n.factory.updateGetAccessorDeclaration(e,r(e.modifiers,t,Cu),Tn.checkDefined(i(e.name,t,du)),lU(e.parameters,t,n,r),i(e.type,t,Du),dU(e.body,t,n,i))},178:function(e,t,n,r,i,o){return n.factory.updateSetAccessorDeclaration(e,r(e.modifiers,t,Cu),Tn.checkDefined(i(e.name,t,du)),lU(e.parameters,t,n,r),dU(e.body,t,n,i))},175:function(e,t,n,r,i,o){return n.startLexicalEnvironment(),n.suspendLexicalEnvironment(),n.factory.updateClassStaticBlockDeclaration(e,dU(e.body,t,n,i))},179:function(e,t,n,r,i,o){return n.factory.updateCallSignature(e,r(e.typeParameters,t,pN),r(e.parameters,t,fN),i(e.type,t,Du))},180:function(e,t,n,r,i,o){return n.factory.updateConstructSignature(e,r(e.typeParameters,t,pN),r(e.parameters,t,fN),i(e.type,t,Du))},181:function(e,t,n,r,i,o){return n.factory.updateIndexSignature(e,r(e.modifiers,t,Cu),r(e.parameters,t,fN),Tn.checkDefined(i(e.type,t,Du)))},182:function(e,t,n,r,i,o){return n.factory.updateTypePredicateNode(e,i(e.assertsModifier,t,tN),Tn.checkDefined(i(e.parameterName,t,BP)),i(e.type,t,Du))},183:function(e,t,n,r,i,o){return n.factory.updateTypeReferenceNode(e,Tn.checkDefined(i(e.typeName,t,uu)),r(e.typeArguments,t,Du))},184:function(e,t,n,r,i,o){return n.factory.updateFunctionTypeNode(e,r(e.typeParameters,t,pN),r(e.parameters,t,fN),Tn.checkDefined(i(e.type,t,Du)))},185:function(e,t,n,r,i,o){return n.factory.updateConstructorTypeNode(e,r(e.modifiers,t,lu),r(e.typeParameters,t,pN),r(e.parameters,t,fN),Tn.checkDefined(i(e.type,t,Du)))},186:function(e,t,n,r,i,o){return n.factory.updateTypeQueryNode(e,Tn.checkDefined(i(e.exprName,t,uu)),r(e.typeArguments,t,Du))},187:function(e,t,n,r,i,o){return n.factory.updateTypeLiteralNode(e,r(e.members,t,Nu))},188:function(e,t,n,r,i,o){return n.factory.updateArrayTypeNode(e,Tn.checkDefined(i(e.elementType,t,Du)))},189:function(e,t,n,r,i,o){return n.factory.updateTupleTypeNode(e,r(e.elements,t,Du))},190:function(e,t,n,r,i,o){return n.factory.updateOptionalTypeNode(e,Tn.checkDefined(i(e.type,t,Du)))},191:function(e,t,n,r,i,o){return n.factory.updateRestTypeNode(e,Tn.checkDefined(i(e.type,t,Du)))},192:function(e,t,n,r,i,o){return n.factory.updateUnionTypeNode(e,r(e.types,t,Du))},193:function(e,t,n,r,i,o){return n.factory.updateIntersectionTypeNode(e,r(e.types,t,Du))},194:function(e,t,n,r,i,o){return n.factory.updateConditionalTypeNode(e,Tn.checkDefined(i(e.checkType,t,Du)),Tn.checkDefined(i(e.extendsType,t,Du)),Tn.checkDefined(i(e.trueType,t,Du)),Tn.checkDefined(i(e.falseType,t,Du)))},195:function(e,t,n,r,i,o){return n.factory.updateInferTypeNode(e,Tn.checkDefined(i(e.typeParameter,t,pN)))},205:function(e,t,n,r,i,o){return n.factory.updateImportTypeNode(e,Tn.checkDefined(i(e.argument,t,Du)),i(e.attributes,t,hI),i(e.qualifier,t,uu),r(e.typeArguments,t,Du),e.isTypeOf)},302:function(e,t,n,r,i,o){return n.factory.updateImportTypeAssertionContainer(e,Tn.checkDefined(i(e.assertClause,t,fI)),e.multiLine)},202:function(e,t,n,r,i,o){return n.factory.updateNamedTupleMember(e,o?i(e.dotDotDotToken,o,UC):e.dotDotDotToken,Tn.checkDefined(i(e.name,t,YC)),o?i(e.questionToken,o,WC):e.questionToken,Tn.checkDefined(i(e.type,t,Du)))},196:function(e,t,n,r,i,o){return n.factory.updateParenthesizedType(e,Tn.checkDefined(i(e.type,t,Du)))},198:function(e,t,n,r,i,o){return n.factory.updateTypeOperatorNode(e,Tn.checkDefined(i(e.type,t,Du)))},199:function(e,t,n,r,i,o){return n.factory.updateIndexedAccessTypeNode(e,Tn.checkDefined(i(e.objectType,t,Du)),Tn.checkDefined(i(e.indexType,t,Du)))},200:function(e,t,n,r,i,o){return n.factory.updateMappedTypeNode(e,o?i(e.readonlyToken,o,qP):e.readonlyToken,Tn.checkDefined(i(e.typeParameter,t,pN)),i(e.nameType,t,Du),o?i(e.questionToken,o,VP):e.questionToken,i(e.type,t,Du),r(e.members,t,Nu))},201:function(e,t,n,r,i,o){return n.factory.updateLiteralTypeNode(e,Tn.checkDefined(i(e.literal,t,ed)))},203:function(e,t,n,r,i,o){return n.factory.updateTemplateLiteralType(e,Tn.checkDefined(i(e.head,t,LC)),r(e.templateSpans,t,QN))},204:function(e,t,n,r,i,o){return n.factory.updateTemplateLiteralTypeSpan(e,Tn.checkDefined(i(e.type,t,Du)),Tn.checkDefined(i(e.literal,t,Gl)))},206:function(e,t,n,r,i,o){return n.factory.updateObjectBindingPattern(e,r(e.elements,t,$N))},207:function(e,t,n,r,i,o){return n.factory.updateArrayBindingPattern(e,r(e.elements,t,Fu))},208:function(e,t,n,r,i,o){return n.factory.updateBindingElement(e,o?i(e.dotDotDotToken,o,UC):e.dotDotDotToken,i(e.propertyName,t,du),Tn.checkDefined(i(e.name,t,_u)),i(e.initializer,t,td))},209:function(e,t,n,r,i,o){return n.factory.updateArrayLiteralExpression(e,r(e.elements,t,td))},210:function(e,t,n,r,i,o){return n.factory.updateObjectLiteralExpression(e,r(e.properties,t,Iu))},211:function(e,t,n,r,i,o){return wl(e)?n.factory.updatePropertyAccessChain(e,Tn.checkDefined(i(e.expression,t,td)),o?i(e.questionDotToken,o,GC):e.questionDotToken,Tn.checkDefined(i(e.name,t,Sl))):n.factory.updatePropertyAccessExpression(e,Tn.checkDefined(i(e.expression,t,td)),Tn.checkDefined(i(e.name,t,Sl)))},212:function(e,t,n,r,i,o){return kl(e)?n.factory.updateElementAccessChain(e,Tn.checkDefined(i(e.expression,t,td)),o?i(e.questionDotToken,o,GC):e.questionDotToken,Tn.checkDefined(i(e.argumentExpression,t,td))):n.factory.updateElementAccessExpression(e,Tn.checkDefined(i(e.expression,t,td)),Tn.checkDefined(i(e.argumentExpression,t,td)))},213:function(e,t,n,r,i,o){return El(e)?n.factory.updateCallChain(e,Tn.checkDefined(i(e.expression,t,td)),o?i(e.questionDotToken,o,GC):e.questionDotToken,r(e.typeArguments,t,Du),r(e.arguments,t,td)):n.factory.updateCallExpression(e,Tn.checkDefined(i(e.expression,t,td)),r(e.typeArguments,t,Du),r(e.arguments,t,td))},214:function(e,t,n,r,i,o){return n.factory.updateNewExpression(e,Tn.checkDefined(i(e.expression,t,td)),r(e.typeArguments,t,Du),r(e.arguments,t,td))},215:function(e,t,n,r,i,o){return n.factory.updateTaggedTemplateExpression(e,Tn.checkDefined(i(e.tag,t,td)),r(e.typeArguments,t,Du),Tn.checkDefined(i(e.template,t,Gu)))},216:function(e,t,n,r,i,o){return n.factory.updateTypeAssertion(e,Tn.checkDefined(i(e.type,t,Du)),Tn.checkDefined(i(e.expression,t,td)))},217:function(e,t,n,r,i,o){return n.factory.updateParenthesizedExpression(e,Tn.checkDefined(i(e.expression,t,td)))},218:function(e,t,n,r,i,o){return n.factory.updateFunctionExpression(e,r(e.modifiers,t,lu),o?i(e.asteriskToken,o,KC):e.asteriskToken,i(e.name,t,YC),r(e.typeParameters,t,pN),lU(e.parameters,t,n,r),i(e.type,t,Du),dU(e.body,t,n,i))},219:function(e,t,n,r,i,o){return n.factory.updateArrowFunction(e,r(e.modifiers,t,lu),r(e.typeParameters,t,pN),lU(e.parameters,t,n,r),i(e.type,t,Du),o?Tn.checkDefined(i(e.equalsGreaterThanToken,o,QC)):e.equalsGreaterThanToken,dU(e.body,t,n,i))},220:function(e,t,n,r,i,o){return n.factory.updateDeleteExpression(e,Tn.checkDefined(i(e.expression,t,td)))},221:function(e,t,n,r,i,o){return n.factory.updateTypeOfExpression(e,Tn.checkDefined(i(e.expression,t,td)))},222:function(e,t,n,r,i,o){return n.factory.updateVoidExpression(e,Tn.checkDefined(i(e.expression,t,td)))},223:function(e,t,n,r,i,o){return n.factory.updateAwaitExpression(e,Tn.checkDefined(i(e.expression,t,td)))},224:function(e,t,n,r,i,o){return n.factory.updatePrefixUnaryExpression(e,Tn.checkDefined(i(e.operand,t,td)))},225:function(e,t,n,r,i,o){return n.factory.updatePostfixUnaryExpression(e,Tn.checkDefined(i(e.operand,t,td)))},226:function(e,t,n,r,i,o){return n.factory.updateBinaryExpression(e,Tn.checkDefined(i(e.left,t,td)),o?Tn.checkDefined(i(e.operatorToken,o,YP)):e.operatorToken,Tn.checkDefined(i(e.right,t,td)))},227:function(e,t,n,r,i,o){return n.factory.updateConditionalExpression(e,Tn.checkDefined(i(e.condition,t,td)),o?Tn.checkDefined(i(e.questionToken,o,WC)):e.questionToken,Tn.checkDefined(i(e.whenTrue,t,td)),o?Tn.checkDefined(i(e.colonToken,o,HC)):e.colonToken,Tn.checkDefined(i(e.whenFalse,t,td)))},228:function(e,t,n,r,i,o){return n.factory.updateTemplateExpression(e,Tn.checkDefined(i(e.head,t,LC)),r(e.templateSpans,t,PA))},229:function(e,t,n,r,i,o){return n.factory.updateYieldExpression(e,o?i(e.asteriskToken,o,KC):e.asteriskToken,i(e.expression,t,td))},230:function(e,t,n,r,i,o){return n.factory.updateSpreadElement(e,Tn.checkDefined(i(e.expression,t,td)))},231:function(e,t,n,r,i,o){return n.factory.updateClassExpression(e,r(e.modifiers,t,Cu),i(e.name,t,YC),r(e.typeParameters,t,pN),r(e.heritageClauses,t,KI),r(e.members,t,bu))},233:function(e,t,n,r,i,o){return n.factory.updateExpressionWithTypeArguments(e,Tn.checkDefined(i(e.expression,t,td)),r(e.typeArguments,t,Du))},234:function(e,t,n,r,i,o){return n.factory.updateAsExpression(e,Tn.checkDefined(i(e.expression,t,td)),Tn.checkDefined(i(e.type,t,Du)))},238:function(e,t,n,r,i,o){return n.factory.updateSatisfiesExpression(e,Tn.checkDefined(i(e.expression,t,td)),Tn.checkDefined(i(e.type,t,Du)))},235:function(e,t,n,r,i,o){return Cl(e)?n.factory.updateNonNullChain(e,Tn.checkDefined(i(e.expression,t,td))):n.factory.updateNonNullExpression(e,Tn.checkDefined(i(e.expression,t,td)))},236:function(e,t,n,r,i,o){return n.factory.updateMetaProperty(e,Tn.checkDefined(i(e.name,t,YC)))},239:function(e,t,n,r,i,o){return n.factory.updateTemplateSpan(e,Tn.checkDefined(i(e.expression,t,td)),Tn.checkDefined(i(e.literal,t,Gl)))},241:function(e,t,n,r,i,o){return n.factory.updateBlock(e,r(e.statements,t,kd))},243:function(e,t,n,r,i,o){return n.factory.updateVariableStatement(e,r(e.modifiers,t,Cu),Tn.checkDefined(i(e.declarationList,t,eI)))},244:function(e,t,n,r,i,o){return n.factory.updateExpressionStatement(e,Tn.checkDefined(i(e.expression,t,td)))},245:function(e,t,n,r,i,o){return n.factory.updateIfStatement(e,Tn.checkDefined(i(e.expression,t,td)),Tn.checkDefined(i(e.thenStatement,t,kd,n.factory.liftToBlock)),i(e.elseStatement,t,kd,n.factory.liftToBlock))},246:function(e,t,n,r,i,o){return n.factory.updateDoStatement(e,_U(e.statement,t,n,i),Tn.checkDefined(i(e.expression,t,td)))},247:function(e,t,n,r,i,o){return n.factory.updateWhileStatement(e,Tn.checkDefined(i(e.expression,t,td)),_U(e.statement,t,n,i))},248:function(e,t,n,r,i,o){return n.factory.updateForStatement(e,i(e.initializer,t,_d),i(e.condition,t,td),i(e.incrementor,t,td),_U(e.statement,t,n,i))},249:function(e,t,n,r,i,o){return n.factory.updateForInStatement(e,Tn.checkDefined(i(e.initializer,t,_d)),Tn.checkDefined(i(e.expression,t,td)),_U(e.statement,t,n,i))},250:function(e,t,n,r,i,o){return n.factory.updateForOfStatement(e,o?i(e.awaitModifier,o,nN):e.awaitModifier,Tn.checkDefined(i(e.initializer,t,_d)),Tn.checkDefined(i(e.expression,t,td)),_U(e.statement,t,n,i))},251:function(e,t,n,r,i,o){return n.factory.updateContinueStatement(e,i(e.label,t,YC))},252:function(e,t,n,r,i,o){return n.factory.updateBreakStatement(e,i(e.label,t,YC))},253:function(e,t,n,r,i,o){return n.factory.updateReturnStatement(e,i(e.expression,t,td))},254:function(e,t,n,r,i,o){return n.factory.updateWithStatement(e,Tn.checkDefined(i(e.expression,t,td)),Tn.checkDefined(i(e.statement,t,kd,n.factory.liftToBlock)))},255:function(e,t,n,r,i,o){return n.factory.updateSwitchStatement(e,Tn.checkDefined(i(e.expression,t,td)),Tn.checkDefined(i(e.caseBlock,t,cI)))},256:function(e,t,n,r,i,o){return n.factory.updateLabeledStatement(e,Tn.checkDefined(i(e.label,t,YC)),Tn.checkDefined(i(e.statement,t,kd,n.factory.liftToBlock)))},257:function(e,t,n,r,i,o){return n.factory.updateThrowStatement(e,Tn.checkDefined(i(e.expression,t,td)))},258:function(e,t,n,r,i,o){return n.factory.updateTryStatement(e,Tn.checkDefined(i(e.tryBlock,t,OA)),i(e.catchClause,t,JI),i(e.finallyBlock,t,OA))},260:function(e,t,n,r,i,o){return n.factory.updateVariableDeclaration(e,Tn.checkDefined(i(e.name,t,_u)),o?i(e.exclamationToken,o,JC):e.exclamationToken,i(e.type,t,Du),i(e.initializer,t,td))},261:function(e,t,n,r,i,o){return n.factory.updateVariableDeclarationList(e,r(e.declarations,t,$A))},262:function(e,t,n,r,i,o){return n.factory.updateFunctionDeclaration(e,r(e.modifiers,t,lu),o?i(e.asteriskToken,o,KC):e.asteriskToken,i(e.name,t,YC),r(e.typeParameters,t,pN),lU(e.parameters,t,n,r),i(e.type,t,Du),dU(e.body,t,n,i))},263:function(e,t,n,r,i,o){return n.factory.updateClassDeclaration(e,r(e.modifiers,t,Cu),i(e.name,t,YC),r(e.typeParameters,t,pN),r(e.heritageClauses,t,KI),r(e.members,t,bu))},264:function(e,t,n,r,i,o){return n.factory.updateInterfaceDeclaration(e,r(e.modifiers,t,Cu),Tn.checkDefined(i(e.name,t,YC)),r(e.typeParameters,t,pN),r(e.heritageClauses,t,KI),r(e.members,t,Nu))},265:function(e,t,n,r,i,o){return n.factory.updateTypeAliasDeclaration(e,r(e.modifiers,t,Cu),Tn.checkDefined(i(e.name,t,YC)),r(e.typeParameters,t,pN),Tn.checkDefined(i(e.type,t,Du)))},266:function(e,t,n,r,i,o){return n.factory.updateEnumDeclaration(e,r(e.modifiers,t,Cu),Tn.checkDefined(i(e.name,t,YC)),r(e.members,t,QI))},267:function(e,t,n,r,i,o){return n.factory.updateModuleDeclaration(e,r(e.modifiers,t,Cu),Tn.checkDefined(i(e.name,t,KP)),i(e.body,t,pd))},268:function(e,t,n,r,i,o){return n.factory.updateModuleBlock(e,r(e.statements,t,kd))},269:function(e,t,n,r,i,o){return n.factory.updateCaseBlock(e,r(e.clauses,t,Md))},270:function(e,t,n,r,i,o){return n.factory.updateNamespaceExportDeclaration(e,Tn.checkDefined(i(e.name,t,YC)))},271:function(e,t,n,r,i,o){return n.factory.updateImportEqualsDeclaration(e,r(e.modifiers,t,Cu),e.isTypeOnly,Tn.checkDefined(i(e.name,t,YC)),Tn.checkDefined(i(e.moduleReference,t,Cd)))},272:function(e,t,n,r,i,o){return n.factory.updateImportDeclaration(e,r(e.modifiers,t,Cu),i(e.importClause,t,_I),Tn.checkDefined(i(e.moduleSpecifier,t,td)),i(e.attributes,t,hI))},300:function(e,t,n,r,i,o){return n.factory.updateImportAttributes(e,r(e.elements,t,gI),e.multiLine)},301:function(e,t,n,r,i,o){return n.factory.updateImportAttribute(e,Tn.checkDefined(i(e.name,t,eu)),Tn.checkDefined(i(e.value,t,td)))},273:function(e,t,n,r,i,o){return n.factory.updateImportClause(e,e.isTypeOnly,i(e.name,t,YC),i(e.namedBindings,t,hd))},274:function(e,t,n,r,i,o){return n.factory.updateNamespaceImport(e,Tn.checkDefined(i(e.name,t,YC)))},280:function(e,t,n,r,i,o){return n.factory.updateNamespaceExport(e,Tn.checkDefined(i(e.name,t,YC)))},275:function(e,t,n,r,i,o){return n.factory.updateNamedImports(e,r(e.elements,t,xI))},276:function(e,t,n,r,i,o){return n.factory.updateImportSpecifier(e,e.isTypeOnly,i(e.propertyName,t,YC),Tn.checkDefined(i(e.name,t,YC)))},277:function(e,t,n,r,i,o){return n.factory.updateExportAssignment(e,r(e.modifiers,t,Cu),Tn.checkDefined(i(e.expression,t,td)))},278:function(e,t,n,r,i,o){return n.factory.updateExportDeclaration(e,r(e.modifiers,t,Cu),e.isTypeOnly,i(e.exportClause,t,Rl),i(e.moduleSpecifier,t,td),i(e.attributes,t,hI))},279:function(e,t,n,r,i,o){return n.factory.updateNamedExports(e,r(e.elements,t,kI))},281:function(e,t,n,r,i,o){return n.factory.updateExportSpecifier(e,e.isTypeOnly,i(e.propertyName,t,YC),Tn.checkDefined(i(e.name,t,YC)))},283:function(e,t,n,r,i,o){return n.factory.updateExternalModuleReference(e,Tn.checkDefined(i(e.expression,t,td)))},284:function(e,t,n,r,i,o){return n.factory.updateJsxElement(e,Tn.checkDefined(i(e.openingElement,t,PI)),r(e.children,t,Ad),Tn.checkDefined(i(e.closingElement,t,MI)))},285:function(e,t,n,r,i,o){return n.factory.updateJsxSelfClosingElement(e,Tn.checkDefined(i(e.tagName,t,Nd)),r(e.typeArguments,t,Du),Tn.checkDefined(i(e.attributes,t,jI)))},286:function(e,t,n,r,i,o){return n.factory.updateJsxOpeningElement(e,Tn.checkDefined(i(e.tagName,t,Nd)),r(e.typeArguments,t,Du),Tn.checkDefined(i(e.attributes,t,jI)))},287:function(e,t,n,r,i,o){return n.factory.updateJsxClosingElement(e,Tn.checkDefined(i(e.tagName,t,Nd)))},295:function(e,t,n,r,i,o){return n.factory.updateJsxNamespacedName(e,Tn.checkDefined(i(e.namespace,t,YC)),Tn.checkDefined(i(e.name,t,YC)))},288:function(e,t,n,r,i,o){return n.factory.updateJsxFragment(e,Tn.checkDefined(i(e.openingFragment,t,FI)),r(e.children,t,Ad),Tn.checkDefined(i(e.closingFragment,t,RI)))},291:function(e,t,n,r,i,o){return n.factory.updateJsxAttribute(e,Tn.checkDefined(i(e.name,t,yk)),i(e.initializer,t,Dd))},292:function(e,t,n,r,i,o){return n.factory.updateJsxAttributes(e,r(e.properties,t,Id))},293:function(e,t,n,r,i,o){return n.factory.updateJsxSpreadAttribute(e,Tn.checkDefined(i(e.expression,t,td)))},294:function(e,t,n,r,i,o){return n.factory.updateJsxExpression(e,i(e.expression,t,td))},296:function(e,t,n,r,i,o){return n.factory.updateCaseClause(e,Tn.checkDefined(i(e.expression,t,td)),r(e.statements,t,kd))},297:function(e,t,n,r,i,o){return n.factory.updateDefaultClause(e,r(e.statements,t,kd))},298:function(e,t,n,r,i,o){return n.factory.updateHeritageClause(e,r(e.types,t,wA))},299:function(e,t,n,r,i,o){return n.factory.updateCatchClause(e,i(e.variableDeclaration,t,$A),Tn.checkDefined(i(e.block,t,OA)))},303:function(e,t,n,r,i,o){return n.factory.updatePropertyAssignment(e,Tn.checkDefined(i(e.name,t,du)),Tn.checkDefined(i(e.initializer,t,td)))},304:function(e,t,n,r,i,o){return n.factory.updateShorthandPropertyAssignment(e,Tn.checkDefined(i(e.name,t,YC)),i(e.objectAssignmentInitializer,t,td))},305:function(e,t,n,r,i,o){return n.factory.updateSpreadAssignment(e,Tn.checkDefined(i(e.expression,t,td)))},306:function(e,t,n,r,i,o){return n.factory.updateEnumMember(e,Tn.checkDefined(i(e.name,t,du)),i(e.initializer,t,td))},307:function(e,t,n,r,i,o){return n.factory.updateSourceFile(e,cU(e.statements,t,n))},354:function(e,t,n,r,i,o){return n.factory.updatePartiallyEmittedExpression(e,Tn.checkDefined(i(e.expression,t,td)))},355:function(e,t,n,r,i,o){return n.factory.updateCommaListExpression(e,r(e.elements,t,td))}};function hU(e){return Tn.assert(e.length<=1,"Too many nodes written to output."),Ie(e)}function gU(e,t,n,r,i){var o,s,{enter:a,exit:c}=i.extendedDiagnostics?sr("Source Map","beforeSourcemap","afterSourcemap"):lr,l=[],u=[],d=new Map,_=[],p=[],f="",m=0,h=0,g=0,y=0,v=0,b=0,x=!1,S=0,T=0,w=0,k=0,E=0,C=0,N=!1,A=!1,I=!1;return{getSources:()=>l,addSource:D,setSourceContent:P,addName:M,addMapping:O,appendSourceMap:function(e,t,n,r,i,o){Tn.assert(e>=S,"generatedLine cannot backtrack"),Tn.assert(t>=0,"generatedCharacter cannot be negative"),a();const s=[];let l;const u=EU(n.mappings);for(const a of u){if(o&&(a.generatedLine>o.line||a.generatedLine===o.line&&a.generatedCharacter>o.character))break;if(i&&(a.generatedLine<i.line||i.line===a.generatedLine&&a.generatedCharacter<i.character))continue;let c,u,d,_;if(void 0!==a.sourceIndex){if(c=s[a.sourceIndex],void 0===c){const e=n.sources[a.sourceIndex],t=n.sourceRoot?Zo(n.sourceRoot,e):e,i=Zo(Vo(r),t);s[a.sourceIndex]=c=D(i),n.sourcesContent&&"string"==typeof n.sourcesContent[a.sourceIndex]&&P(c,n.sourcesContent[a.sourceIndex])}u=a.sourceLine,d=a.sourceCharacter,n.names&&void 0!==a.nameIndex&&(l||(l=[]),_=l[a.nameIndex],void 0===_&&(l[a.nameIndex]=_=M(n.names[a.nameIndex])))}const p=a.generatedLine-(i?i.line:0),f=p+e,m=i&&i.line===a.generatedLine?a.generatedCharacter-i.character:a.generatedCharacter;O(f,0===p?m+t:m,c,u,d,_)}c()},toJSON:j,toString:()=>JSON.stringify(j())};function D(t){a();const n=bs(r,t,e.getCurrentDirectory(),e.getCanonicalFileName,!0);let i=d.get(n);return void 0===i&&(i=u.length,u.push(n),l.push(t),d.set(n,i)),c(),i}function P(e,t){if(a(),null!==t){for(o||(o=[]);o.length<e;)o.push(null);o[e]=t}c()}function M(e){a(),s||(s=new Map);let t=s.get(e);return void 0===t&&(t=_.length,_.push(e),s.set(e,t)),c(),t}function O(e,t,n,r,i,o){Tn.assert(e>=S,"generatedLine cannot backtrack"),Tn.assert(t>=0,"generatedCharacter cannot be negative"),Tn.assert(void 0===n||n>=0,"sourceIndex cannot be negative"),Tn.assert(void 0===r||r>=0,"sourceLine cannot be negative"),Tn.assert(void 0===i||i>=0,"sourceCharacter cannot be negative"),a(),(function(e,t){return!N||S!==e||T!==t}(e,t)||function(e,t,n){return void 0!==e&&void 0!==t&&void 0!==n&&w===e&&(k>t||k===t&&E>n)}(n,r,i))&&(R(),S=e,T=t,A=!1,I=!1,N=!0),void 0!==n&&void 0!==r&&void 0!==i&&(w=n,k=r,E=i,A=!0,void 0!==o&&(C=o,I=!0)),c()}function F(e){p.push(e),p.length>=1024&&L()}function R(){if(N&&(!x||m!==S||h!==T||g!==w||y!==k||v!==E||b!==C)){if(a(),m<S){do{F(59),m++}while(m<S);h=0}else Tn.assertEqual(m,S,"generatedLine cannot backtrack"),x&&F(44);z(T-h),h=T,A&&(z(w-g),g=w,z(k-y),y=k,z(E-v),v=E,I&&(z(C-b),b=C)),x=!0,c()}}function L(){p.length>0&&(f+=String.fromCharCode.apply(void 0,p),p.length=0)}function j(){return R(),L(),{version:3,file:t,sourceRoot:n,sources:u,names:_,mappings:f,sourcesContent:o}}function z(e){e<0?e=1+(-e<<1):e<<=1;do{let n=31&e;(e>>=5)>0&&(n|=32),F((t=n)>=0&&t<26?65+t:t>=26&&t<52?97+t-26:t>=52&&t<62?48+t-52:62===t?43:63===t?47:Tn.fail(`${t}: not a base64 value`))}while(e>0);var t}}var yU=/\/\/[@#] source[M]appingURL=(.+)\r?\n?$/,vU=/^\/\/[@#] source[M]appingURL=(.+)\r?\n?$/,bU=/^\s*(\/\/[@#] .*)?$/;function xU(e,t){return{getLineCount:()=>t.length,getLineText:n=>e.substring(t[n],t[n+1])}}function SU(e){for(let t=e.getLineCount()-1;t>=0;t--){const n=e.getLineText(t),r=vU.exec(n);if(r)return r[1].trimEnd();if(!n.match(bU))break}}function TU(e){return"string"==typeof e||null===e}function wU(e){return null!==e&&"object"==typeof e&&3===e.version&&"string"==typeof e.file&&"string"==typeof e.mappings&&at(e.sources)&&T(e.sources,lt)&&(void 0===e.sourceRoot||null===e.sourceRoot||"string"==typeof e.sourceRoot)&&(void 0===e.sourcesContent||null===e.sourcesContent||at(e.sourcesContent)&&T(e.sourcesContent,TU))&&(void 0===e.names||null===e.names||at(e.names)&&T(e.names,lt))}function kU(e){try{const t=JSON.parse(e);if(wU(t))return t}catch{}}function EU(e){let t,n=!1,r=0,i=0,o=0,s=0,a=0,c=0,l=0;return{get pos(){return r},get error(){return t},get state(){return u(!0,!0)},next(){for(;!n&&r<e.length;){const t=e.charCodeAt(r);if(59===t){i++,o=0,r++;continue}if(44===t){r++;continue}let _=!1,g=!1;if(o+=h(),f())return d();if(o<0)return p("Invalid generatedCharacter found");if(!m()){if(_=!0,s+=h(),f())return d();if(s<0)return p("Invalid sourceIndex found");if(m())return p("Unsupported Format: No entries after sourceIndex");if(a+=h(),f())return d();if(a<0)return p("Invalid sourceLine found");if(m())return p("Unsupported Format: No entries after sourceLine");if(c+=h(),f())return d();if(c<0)return p("Invalid sourceCharacter found");if(!m()){if(g=!0,l+=h(),f())return d();if(l<0)return p("Invalid nameIndex found");if(!m())return p("Unsupported Error Format: Entries after nameIndex")}}return{value:u(_,g),done:n}}return d()},[Symbol.iterator](){return this}};function u(e,t){return{generatedLine:i,generatedCharacter:o,sourceIndex:e?s:void 0,sourceLine:e?a:void 0,sourceCharacter:e?c:void 0,nameIndex:t?l:void 0}}function d(){return n=!0,{value:void 0,done:!0}}function _(e){void 0===t&&(t=e)}function p(e){return _(e),d()}function f(){return void 0!==t}function m(){return r===e.length||44===e.charCodeAt(r)||59===e.charCodeAt(r)}function h(){let t=!0,n=0,i=0;for(;t;r++){if(r>=e.length)return _("Error in decoding base64VLQFormatDecode, past the mapping string"),-1;const s=(o=e.charCodeAt(r))>=65&&o<=90?o-65:o>=97&&o<=122?o-97+26:o>=48&&o<=57?o-48+52:43===o?62:47===o?63:-1;if(-1===s)return _("Invalid character in VLQ"),-1;t=!!(32&s),i|=(31&s)<<n,n+=5}var o;return 1&i?(i>>=1,i=-i):i>>=1,i}}function CU(e,t){return e===t||e.generatedLine===t.generatedLine&&e.generatedCharacter===t.generatedCharacter&&e.sourceIndex===t.sourceIndex&&e.sourceLine===t.sourceLine&&e.sourceCharacter===t.sourceCharacter&&e.nameIndex===t.nameIndex}function NU(e){return void 0!==e.sourceIndex&&void 0!==e.sourceLine&&void 0!==e.sourceCharacter}function AU(e){return void 0!==e.sourceIndex&&void 0!==e.sourcePosition}function IU(e,t){return e.generatedPosition===t.generatedPosition&&e.sourceIndex===t.sourceIndex&&e.sourcePosition===t.sourcePosition}function DU(e,t){return Tn.assert(e.sourceIndex===t.sourceIndex),Pt(e.sourcePosition,t.sourcePosition)}function PU(e,t){return Pt(e.generatedPosition,t.generatedPosition)}function MU(e){return e.sourcePosition}function OU(e){return e.generatedPosition}function FU(e,t,n){const r=Vo(n),i=t.sourceRoot?es(t.sourceRoot,r):r,o=es(t.file,r),s=e.getSourceFileLike(o),a=t.sources.map((e=>es(e,i))),c=new Map(a.map(((t,n)=>[e.getCanonicalFileName(t),n])));let l,u,d;return{getSourcePosition:function(e){const t=function(){if(void 0===u){const e=[];for(const t of f())e.push(t);u=ae(e,PU,IU)}return u}();if(!$(t))return e;let n=Fe(t,e.pos,OU,Pt);n<0&&(n=~n);const r=t[n];if(void 0===r||!AU(r))return e;return{fileName:a[r.sourceIndex],pos:r.sourcePosition}},getGeneratedPosition:function(t){const n=c.get(e.getCanonicalFileName(t.fileName));if(void 0===n)return t;const r=function(e){if(void 0===d){const e=[];for(const t of f()){if(!AU(t))continue;let n=e[t.sourceIndex];n||(e[t.sourceIndex]=n=[]),n.push(t)}d=e.map((e=>ae(e,DU,IU)))}return d[e]}(n);if(!$(r))return t;let i=Fe(r,t.pos,MU,Pt);i<0&&(i=~i);const s=r[i];if(void 0===s||s.sourceIndex!==n)return t;return{fileName:o,pos:s.generatedPosition}}};function p(n){const r=void 0!==s?Qs(s,n.generatedLine,n.generatedCharacter,!0):-1;let i,o;if(NU(n)){const r=e.getSourceFileLike(a[n.sourceIndex]);i=t.sources[n.sourceIndex],o=void 0!==r?Qs(r,n.sourceLine,n.sourceCharacter,!0):-1}return{generatedPosition:r,source:i,sourceIndex:n.sourceIndex,sourcePosition:o,nameIndex:n.nameIndex}}function f(){if(void 0===l){const n=EU(t.mappings),r=Ke(n,p);void 0!==n.error?(e.log&&e.log(`Encountered error while decoding sourcemap: ${n.error}`),l=_):l=r}return l}}var RU={getSourcePosition:gt,getGeneratedPosition:gt};function LU(e){return(e=vc(e))?Gz(e):0}function jU(e){return!!e&&(!(!bI(e)&&!wI(e))&&$(e.elements,zU))}function zU(e){return void 0!==e.propertyName?"default"===e.propertyName.escapedText:"default"===e.name.escapedText}function UU(e,t){return function(n){return 307===n.kind?t(n):function(n){return e.factory.createBundle(R(n.sourceFiles,t))}(n)}}function BU(e){return!!Dh(e)}function qU(e){if(Dh(e))return!0;const t=e.importClause&&e.importClause.namedBindings;if(!t)return!1;if(!bI(t))return!1;let n=0;for(const r of t.elements)zU(r)&&n++;return n>0&&n!==t.elements.length||!!(t.elements.length-n)&&Ph(e)}function VU(e){return!qU(e)&&(Ph(e)||!!e.importClause&&bI(e.importClause.namedBindings)&&jU(e.importClause.namedBindings))}function KU(e,t){const n=e.getEmitResolver(),r=e.getCompilerOptions(),i=[],o=new GU,s=[],a=new Map,c=new Set;let l,u,d=!1,_=!1,p=!1,f=!1;for(const y of t.statements)switch(y.kind){case 272:i.push(y),!p&&qU(y)&&(p=!0),!f&&VU(y)&&(f=!0);break;case 271:283===y.moduleReference.kind&&i.push(y);break;case 278:if(y.moduleSpecifier)if(y.exportClause)if(i.push(y),wI(y.exportClause))h(y),f||(f=jU(y.exportClause));else{const e=y.exportClause.name;a.get(kc(e))||(WU(s,LU(y),e),a.set(kc(e),!0),l=_e(l,e)),p=!0}else i.push(y),_=!0;else h(y);break;case 277:y.isExportEquals&&!u&&(u=y);break;case 243:if(Kv(y,32))for(const e of y.declarationList.declarations)l=JU(e,a,l,s);break;case 262:Kv(y,32)&&g(y,void 0,Kv(y,2048));break;case 263:if(Kv(y,32))if(Kv(y,2048))d||(WU(s,LU(y),e.factory.getDeclarationName(y)),d=!0);else{const e=y.name;e&&!a.get(kc(e))&&(WU(s,LU(y),e),a.set(kc(e),!0),l=_e(l,e))}}const m=TP(e.factory,e.getEmitHelperFactory(),t,r,_,p,f);return m&&i.unshift(m),{externalImports:i,exportSpecifiers:o,exportEquals:u,hasExportStarsToExportValues:_,exportedBindings:s,exportedNames:l,exportedFunctions:c,externalHelpersImportDeclaration:m};function h(e){for(const t of _t(e.exportClause,wI).elements)if(!a.get(kc(t.name))){const r=t.propertyName||t.name;e.moduleSpecifier||o.add(r,t);const i=n.getReferencedImportDeclaration(r)||n.getReferencedValueDeclaration(r);if(i){if(262===i.kind){g(i,t.name,"default"===t.name.escapedText);continue}WU(s,LU(i),t.name)}a.set(kc(t.name),!0),l=_e(l,t.name)}}function g(t,n,r){c.add(t),r?d||(WU(s,LU(t),n??e.factory.getDeclarationName(t)),d=!0):(n??(n=t.name),a.get(kc(n))||(WU(s,LU(t),n),a.set(kc(n),!0)))}}function JU(e,t,n,r){if(Mu(e.name))for(const i of e.name.elements)TA(i)||(n=JU(i,t,n,r));else if(!tu(e.name)){const i=kc(e.name);t.get(i)||(t.set(i,!0),n=_e(n,e.name),aP(e.name)&&WU(r,LU(e),e.name))}return n}function WU(e,t,n){let r=e[t];return r?r.push(n):e[t]=r=[n],r}var HU=class e{constructor(){this._map=new Map}get size(){return this._map.size}has(t){return this._map.has(e.toKey(t))}get(t){return this._map.get(e.toKey(t))}set(t,n){return this._map.set(e.toKey(t),n),this}delete(t){var n;return(null==(n=this._map)?void 0:n.delete(e.toKey(t)))??!1}clear(){this._map.clear()}values(){return this._map.values()}static toKey(t){if(nu(t)||tu(t)){const n=t.emitNode.autoGenerate;if(4==(7&n.flags)){const r=cM(t),i=Sl(r)&&r!==t?e.toKey(r):`(generated@${Gz(r)})`;return dM(!1,n.prefix,i,n.suffix,e.toKey)}{const t=`(auto@${n.id})`;return dM(!1,n.prefix,t,n.suffix,e.toKey)}}return ZC(t)?kc(t).slice(1):kc(t)}},GU=class extends HU{add(e,t){let n=this.get(e);return n?n.push(t):this.set(e,n=[t]),n}remove(e,t){const n=this.get(e);n&&(nn(n,t),n.length||this.delete(e))}};function QU(e){return Hd(e)||9===e.kind||Og(e.kind)||YC(e)}function YU(e){return!YC(e)&&QU(e)}function ZU(e){return e>=65&&e<=79}function XU(e){switch(e){case 65:return 40;case 66:return 41;case 67:return 42;case 68:return 43;case 69:return 44;case 70:return 45;case 71:return 48;case 72:return 49;case 73:return 50;case 74:return 51;case 75:return 52;case 79:return 53;case 76:return 57;case 77:return 56;case 78:return 61}}function $U(e){if(!LA(e))return;const t=fg(e.expression);return ff(t)?t:void 0}function eB(e,t,n){for(let r=t;r<e.length;r+=1){const t=e[r];if($U(t))return n.unshift(r),!0;if(ZA(t)&&eB(t.tryBlock.statements,0,n))return n.unshift(r),!0}return!1}function tB(e,t){const n=[];return eB(e,t,n),n}function nB(e,t,n){return M(e.members,(e=>function(e,t,n){return gN(e)&&(!!e.initializer||!t)&&Wv(e)===n}(e,t,n)))}function rB(e){return gN(t=e)&&Wv(t)||bN(e);var t}function iB(e){return M(e.members,rB)}function oB(e){return 172===e.kind&&void 0!==e.initializer}function sB(e){return!Jv(e)&&(ku(e)||Tu(e))&&ZC(e.name)}function aB(e){let t;if(e){const n=e.parameters,r=n.length>0&&Sv(n[0]),i=r?1:0,o=r?n.length-1:n.length;for(let e=0;e<o;e++){const r=n[e+i];(t||Xv(r))&&(t||(t=new Array(o)),t[e]=Rc(r))}}return t}function cB(e){const t=Rc(e),n=aB(yv(e));if($(t)||$(n))return{decorators:t,parameters:n}}function lB(e,t,n){switch(e.kind){case 177:case 178:return n?function(e,t){if(!e.body)return;const{firstAccessor:n,secondAccessor:r,getAccessor:i,setAccessor:o}=Cv(t.members,e),s=Xv(n)?n:r&&Xv(r)?r:void 0;if(!s||e!==s)return;const a=Rc(s),c=aB(o);if(!$(a)&&!$(c))return;return{decorators:a,parameters:c,getDecorators:i&&Rc(i),setDecorators:o&&Rc(o)}}(e,t):uB(e);case 174:return uB(e);case 172:return function(e){const t=Rc(e);if(!$(t))return;return{decorators:t}}(e);default:return}}function uB(e){if(!e.body)return;const t=Rc(e),n=aB(e);return $(t)||$(n)?{decorators:t,parameters:n}:void 0}function dB(e,t){for(;e;){const n=t(e);if(void 0!==n)return n;e=e.previous}}function _B(e){return{data:e}}function pB(e,t){var n,r;return nu(t)?null==(n=null==e?void 0:e.generatedIdentifiers)?void 0:n.get(cM(t)):null==(r=null==e?void 0:e.identifiers)?void 0:r.get(t.escapedText)}function fB(e,t,n){nu(t)?(e.generatedIdentifiers??(e.generatedIdentifiers=new Map),e.generatedIdentifiers.set(cM(t),n)):(e.identifiers??(e.identifiers=new Map),e.identifiers.set(t.escapedText,n))}function mB(e,t){return dB(e,(e=>pB(e.privateEnv,t)))}function hB(e){return!e.initializer&&YC(e.name)}function gB(e){return T(e,hB)}var yB=(e=>(e[e.All=0]="All",e[e.ObjectRest=1]="ObjectRest",e))(yB||{});function vB(e,t,n,r,i,o){let s,a,c=e;if(Sb(e))for(s=e.right;Rb(e.left)||Fb(e.left);){if(!Sb(s))return Tn.checkDefined(iU(s,t,td));c=e=s,s=e.right}const l={context:n,level:r,downlevelIteration:!!n.getCompilerOptions().downlevelIteration,hoistTempVariables:!0,emitExpression:u,emitBindingOrAssignment:function(e,r,i,s){Tn.assertNode(e,o?YC:td);const a=o?o(e,r,i):vM(n.factory.createAssignment(Tn.checkDefined(iU(e,t,td)),r),i);a.original=s,u(a)},createArrayBindingOrAssignmentPattern:e=>function(e,t){return Tn.assertEachNode(t,qu),e.createArrayLiteralExpression(R(t,e.converters.convertToArrayAssignmentElement))}(n.factory,e),createObjectBindingOrAssignmentPattern:e=>function(e,t){return Tn.assertEachNode(t,Uu),e.createObjectLiteralExpression(R(t,e.converters.convertToObjectAssignmentElement))}(n.factory,e),createArrayBindingOrAssignmentElement:CB,visitor:t};if(s&&(s=iU(s,t,td),Tn.assert(s),YC(s)&&bB(e,s.escapedText)||xB(e)?s=EB(l,s,!1,c):i?s=EB(l,s,!0,c):fy(e)&&(c=s)),TB(l,e,s,c,Sb(e)),s&&i){if(!$(a))return s;a.push(s)}return n.factory.inlineExpressions(a)||n.factory.createOmittedExpression();function u(e){a=_e(a,e)}}function bB(e,t){const n=AP(e);return ju(n)?function(e,t){const n=OP(e);for(const r of n)if(bB(r,t))return!0;return!1}(n,t):!!YC(n)&&n.escapedText===t}function xB(e){const t=PP(e);if(t&&_N(t)&&!Kl(t.expression))return!0;const n=AP(e);return!!n&&ju(n)&&!!h(OP(n),xB)}function SB(e,t,n,r,i,o=!1,s){let a;const c=[],l=[],u={context:n,level:r,downlevelIteration:!!n.getCompilerOptions().downlevelIteration,hoistTempVariables:o,emitExpression:function(e){a=_e(a,e)},emitBindingOrAssignment:d,createArrayBindingOrAssignmentPattern:e=>function(e,t){return Tn.assertEachNode(t,Fu),e.createArrayBindingPattern(t)}(n.factory,e),createObjectBindingOrAssignmentPattern:e=>function(e,t){return Tn.assertEachNode(t,$N),e.createObjectBindingPattern(t)}(n.factory,e),createArrayBindingOrAssignmentElement:e=>function(e,t){return e.createBindingElement(void 0,void 0,t)}(n.factory,e),visitor:t};if($A(e)){let t=NP(e);t&&(YC(t)&&bB(e,t.escapedText)||xB(e))&&(t=EB(u,Tn.checkDefined(iU(t,u.visitor,td)),!1,t),e=n.factory.updateVariableDeclaration(e,e.name,void 0,void 0,t))}if(TB(u,e,i,e,s),a){const e=n.factory.createTempVariable(void 0);if(o){const t=n.factory.inlineExpressions(a);a=void 0,d(e,t,void 0,void 0)}else{n.hoistVariableDeclaration(e);const t=Ae(c);t.pendingExpressions=_e(t.pendingExpressions,n.factory.createAssignment(e,t.value)),me(t.pendingExpressions,a),t.value=e}}for(const{pendingExpressions:_,name:p,value:f,location:m,original:h}of c){const e=n.factory.createVariableDeclaration(p,void 0,void 0,_?n.factory.inlineExpressions(_e(_,f)):f);e.original=h,vM(e,m),l.push(e)}return l;function d(e,t,r,i){Tn.assertNode(e,_u),a&&(t=n.factory.inlineExpressions(_e(a,t)),a=void 0),c.push({pendingExpressions:a,name:e,value:t,location:r,original:i})}}function TB(e,t,n,r,i){const o=AP(t);if(!i){const i=iU(NP(t),e.visitor,td);i?n?(n=function(e,t,n,r){return t=EB(e,t,!0,r),e.context.factory.createConditionalExpression(e.context.factory.createTypeCheck(t,"undefined"),void 0,n,void 0,t)}(e,n,i,r),!YU(i)&&ju(o)&&(n=EB(e,n,!0,r))):n=i:n||(n=e.context.factory.createVoidZero())}zu(o)?function(e,t,n,r,i){const o=OP(n),s=o.length;if(1!==s){r=EB(e,r,!Ru(t)||0!==s,i)}let a,c;for(let l=0;l<s;l++){const t=o[l];if(IP(t)){if(l===s-1){a&&(e.emitBindingOrAssignment(e.createObjectBindingOrAssignmentPattern(a),r,i,n),a=void 0);const s=e.context.getEmitHelperFactory().createRestHelper(r,o,c,n);TB(e,t,s,t)}}else{const o=DP(t);if(!(e.level>=1)||98304&t.transformFlags||98304&AP(t).transformFlags||_N(o)){a&&(e.emitBindingOrAssignment(e.createObjectBindingOrAssignmentPattern(a),r,i,n),a=void 0);const s=kB(e,r,o);_N(o)&&(c=_e(c,s.argumentExpression)),TB(e,t,s,t)}else a=_e(a,iU(t,e.visitor,Lu))}}a&&e.emitBindingOrAssignment(e.createObjectBindingOrAssignmentPattern(a),r,i,n)}(e,t,o,n,r):Bu(o)?function(e,t,n,r,i){const o=OP(n),s=o.length;if(e.level<1&&e.downlevelIteration)r=EB(e,vM(e.context.getEmitHelperFactory().createReadHelper(r,s>0&&IP(o[s-1])?void 0:s),i),!1,i);else if(1!==s&&(e.level<1||0===s)||T(o,TA)){r=EB(e,r,!Ru(t)||0!==s,i)}let a,c;for(let l=0;l<s;l++){const t=o[l];if(e.level>=1)if(65536&t.transformFlags||e.hasTransformedPriorElement&&!wB(t)){e.hasTransformedPriorElement=!0;const n=e.context.factory.createTempVariable(void 0);e.hoistTempVariables&&e.context.hoistVariableDeclaration(n),c=_e(c,[n,t]),a=_e(a,e.createArrayBindingOrAssignmentElement(n))}else a=_e(a,t);else{if(TA(t))continue;if(IP(t)){if(l===s-1){const n=e.context.factory.createArraySliceCall(r,l);TB(e,t,n,t)}}else{const n=e.context.factory.createElementAccessExpression(r,l);TB(e,t,n,t)}}}a&&e.emitBindingOrAssignment(e.createArrayBindingOrAssignmentPattern(a),r,i,n);if(c)for(const[l,u]of c)TB(e,u,l,u)}(e,t,o,n,r):e.emitBindingOrAssignment(o,n,r,t)}function wB(e){const t=AP(e);if(!t||TA(t))return!0;const n=PP(e);if(n&&!Xg(n))return!1;const r=NP(e);return!(r&&!YU(r))&&(ju(t)?T(OP(t),wB):YC(t))}function kB(e,t,n){const{factory:r}=e.context;if(_N(n)){const r=EB(e,Tn.checkDefined(iU(n.expression,e.visitor,td)),!1,n);return e.context.factory.createElementAccessExpression(t,r)}if(Hg(n)){const i=r.cloneNode(n);return e.context.factory.createElementAccessExpression(t,i)}{const r=e.context.factory.createIdentifier(kc(n));return e.context.factory.createPropertyAccessExpression(t,r)}}function EB(e,t,n,r){if(YC(t)&&n)return t;{const n=e.context.factory.createTempVariable(void 0);return e.hoistTempVariables?(e.context.hoistVariableDeclaration(n),e.emitExpression(vM(e.context.factory.createAssignment(n,t),r))):e.emitBindingOrAssignment(n,t,r,void 0),n}}function CB(e){return e}function NB(e,t,n=e.createThis()){const r=e.createAssignment(t,n),i=e.createExpressionStatement(r),o=e.createBlock([i],!1),s=e.createClassStaticBlockDeclaration(o);return cE(s).classThis=t,s}function AB(e){var t;if(!bN(e)||1!==e.body.statements.length)return!1;const n=e.body.statements[0];return LA(n)&&bb(n.expression,!0)&&YC(n.expression.left)&&(null==(t=e.emitNode)?void 0:t.classThis)===n.expression.left&&110===n.expression.right.kind}function IB(e){var t;return!!(null==(t=e.emitNode)?void 0:t.classThis)&&$(e.members,AB)}function DB(e,t,n,r){if(IB(t))return t;const i=NB(e,n,r);t.name&&hE(i.body.statements[0],t.name);const o=e.createNodeArray([i,...t.members]);vM(o,t.members);const s=nI(t)?e.updateClassDeclaration(t,t.modifiers,t.name,t.typeParameters,t.heritageClauses,o):e.updateClassExpression(t,t.modifiers,t.name,t.typeParameters,t.heritageClauses,o);return cE(s).classThis=n,s}function PB(e,t,n){const r=vc(gP(n));return(nI(r)||tI(r))&&!r.name&&Kv(r,2048)?e.createStringLiteral("default"):e.createStringLiteralFromNode(t)}function MB(e,t,n){const{factory:r}=e;if(void 0!==n){return{assignedName:r.createStringLiteral(n),name:t}}if(Xg(t)||ZC(t)){return{assignedName:r.createStringLiteralFromNode(t),name:t}}if(Xg(t.expression)&&!YC(t.expression)){return{assignedName:r.createStringLiteralFromNode(t.expression),name:t}}const i=r.getGeneratedNameForNode(t);e.hoistVariableDeclaration(i);const o=e.getEmitHelperFactory().createPropKeyHelper(t.expression),s=r.createAssignment(i,o);return{assignedName:i,name:r.updateComputedPropertyName(t,s)}}function OB(e,t,n=e.factory.createThis()){const{factory:r}=e,i=e.getEmitHelperFactory().createSetFunctionNameHelper(n,t),o=r.createExpressionStatement(i),s=r.createBlock([o],!1),a=r.createClassStaticBlockDeclaration(s);return cE(a).assignedName=t,a}function FB(e){var t;if(!bN(e)||1!==e.body.statements.length)return!1;const n=e.body.statements[0];return LA(n)&&IC(n.expression,"___setFunctionName")&&n.expression.arguments.length>=2&&n.expression.arguments[1]===(null==(t=e.emitNode)?void 0:t.assignedName)}function RB(e){var t;return!!(null==(t=e.emitNode)?void 0:t.assignedName)&&$(e.members,FB)}function LB(e){return!!e.name||RB(e)}function jB(e,t,n,r){if(RB(t))return t;const{factory:i}=e,o=OB(e,n,r);t.name&&hE(o.body.statements[0],t.name);const s=E(t.members,AB)+1,a=t.members.slice(0,s),c=t.members.slice(s),l=i.createNodeArray([...a,o,...c]);return vM(l,t.members),cE(t=nI(t)?i.updateClassDeclaration(t,t.modifiers,t.name,t.typeParameters,t.heritageClauses,l):i.updateClassExpression(t,t.modifiers,t.name,t.typeParameters,t.heritageClauses,l)).assignedName=n,t}function zB(e,t,n,r){if(r&&MC(n)&&Cm(n))return t;const{factory:i}=e,o=gP(t),s=SA(o)?_t(jB(e,o,n),SA):e.getEmitHelperFactory().createSetFunctionNameHelper(o,n);return i.restoreOuterExpressions(t,s)}function UB(e,t,n,r){switch(t.kind){case 303:return function(e,t,n,r){const{factory:i}=e,{assignedName:o,name:s}=MB(e,t.name,r),a=zB(e,t.initializer,o,n);return i.updatePropertyAssignment(t,s,a)}(e,t,n,r);case 304:return function(e,t,n,r){const{factory:i}=e,o=void 0!==r?i.createStringLiteral(r):PB(i,t.name,t.objectAssignmentInitializer),s=zB(e,t.objectAssignmentInitializer,o,n);return i.updateShorthandPropertyAssignment(t,t.name,s)}(e,t,n,r);case 260:return function(e,t,n,r){const{factory:i}=e,o=void 0!==r?i.createStringLiteral(r):PB(i,t.name,t.initializer),s=zB(e,t.initializer,o,n);return i.updateVariableDeclaration(t,t.name,t.exclamationToken,t.type,s)}(e,t,n,r);case 169:return function(e,t,n,r){const{factory:i}=e,o=void 0!==r?i.createStringLiteral(r):PB(i,t.name,t.initializer),s=zB(e,t.initializer,o,n);return i.updateParameterDeclaration(t,t.modifiers,t.dotDotDotToken,t.name,t.questionToken,t.type,s)}(e,t,n,r);case 208:return function(e,t,n,r){const{factory:i}=e,o=void 0!==r?i.createStringLiteral(r):PB(i,t.name,t.initializer),s=zB(e,t.initializer,o,n);return i.updateBindingElement(t,t.dotDotDotToken,t.propertyName,t.name,s)}(e,t,n,r);case 172:return function(e,t,n,r){const{factory:i}=e,{assignedName:o,name:s}=MB(e,t.name,r),a=zB(e,t.initializer,o,n);return i.updatePropertyDeclaration(t,t.modifiers,s,t.questionToken??t.exclamationToken,t.type,a)}(e,t,n,r);case 226:return function(e,t,n,r){const{factory:i}=e,o=void 0!==r?i.createStringLiteral(r):PB(i,t.left,t.right),s=zB(e,t.right,o,n);return i.updateBinaryExpression(t,t.left,t.operatorToken,s)}(e,t,n,r);case 277:return function(e,t,n,r){const{factory:i}=e,o=void 0!==r?i.createStringLiteral(r):i.createStringLiteral(t.isExportEquals?"":"default"),s=zB(e,t.expression,o,n);return i.updateExportAssignment(t,t.modifiers,s)}(e,t,n,r)}}var BB=(e=>(e[e.LiftRestriction=0]="LiftRestriction",e[e.All=1]="All",e))(BB||{});function qB(e,t,n,r,i,o){const s=iU(t.tag,n,td);Tn.assert(s);const a=[void 0],c=[],l=[],u=t.template;if(0===o&&!Ay(u))return fU(t,n,e);const{factory:d}=e;if(RC(u))c.push(VB(d,u)),l.push(KB(d,u,r));else{c.push(VB(d,u.head)),l.push(KB(d,u.head,r));for(const e of u.templateSpans)c.push(VB(d,e.literal)),l.push(KB(d,e.literal,r)),a.push(Tn.checkDefined(iU(e.expression,n,td)))}const _=e.getEmitHelperFactory().createTemplateObjectHelper(d.createArrayLiteralExpression(c),d.createArrayLiteralExpression(l));if(tO(r)){const e=d.createUniqueName("templateObject");i(e),a[0]=d.createLogicalOr(e,d.createAssignment(e,_))}else a[0]=_;return d.createCallExpression(s,void 0,a)}function VB(e,t){return 26656&t.templateFlags?e.createVoidZero():e.createStringLiteral(t.text)}function KB(e,t,n){let r=t.rawText;if(void 0===r){Tn.assertIsDefined(n,"Template literal node is missing 'rawText' and does not have a source file. Possibly bad transform."),r=Z_(n,t);const e=15===t.kind||18===t.kind;r=r.substring(1,r.length-(e?1:2))}return r=r.replace(/\r\n?/g,"\n"),vM(e.createStringLiteral(r),t)}var JB=!1;function WB(e){const{factory:t,getEmitHelperFactory:n,startLexicalEnvironment:r,resumeLexicalEnvironment:i,endLexicalEnvironment:o,hoistVariableDeclaration:s}=e,a=e.getEmitResolver(),c=e.getCompilerOptions(),l=MS(c),u=OS(c),d=!!c.experimentalDecorators,_=c.emitDecoratorMetadata?QB(e):void 0,p=e.onEmitNode,f=e.onSubstituteNode;let m,h,g,y,v,b,x,S;return e.onEmitNode=function(e,t,n){const r=S,i=m;YI(t)&&(m=t);2&x&&function(e){return 267===vc(e).kind}(t)&&(S|=2);8&x&&function(e){return 266===vc(e).kind}(t)&&(S|=8);p(e,t,n),S=r,m=i},e.onSubstituteNode=function(e,n){if(n=f(e,n),1===e)return function(e){switch(e.kind){case 80:return function(e){return Ce(e)||e}(e);case 211:case 212:return function(e){return Ne(e)}(e)}return e}(n);if(HI(n))return function(e){if(2&x){const n=e.name,r=Ce(n);if(r){if(e.objectAssignmentInitializer){const i=t.createAssignment(r,e.objectAssignmentInitializer);return vM(t.createPropertyAssignment(n,i),e)}return vM(t.createPropertyAssignment(n,r),e)}}return e}(n);return n},e.enableSubstitution(211),e.enableSubstitution(212),function(e){if(308===e.kind)return function(e){return t.createBundle(e.sourceFiles.map(T))}(e);return T(e)};function T(t){if(t.isDeclarationFile)return t;m=t;const n=w(t,z);return ME(n,e.readEmitHelpers()),m=void 0,n}function w(e,t){const n=y,r=v,i=b;!function(e){switch(e.kind){case 307:case 269:case 268:case 241:y=e,v=void 0;break;case 263:case 262:if(Kv(e,128))break;e.name?ae(e):Tn.assert(263===e.kind||Kv(e,2048))}}(e);const o=t(e);return y!==n&&(v=r),y=n,b=i,o}function k(e){return w(e,E)}function E(e){return 1&e.transformFlags?j(e):e}function C(e){return w(e,N)}function N(n){switch(n.kind){case 272:case 271:case 277:case 278:return function(n){if(function(e){const t=Sc(e);if(t===e||SI(e))return!1;if(!t||t.kind!==e.kind)return!0;switch(e.kind){case 272:if(Tn.assertNode(t,dI),e.importClause!==t.importClause)return!0;if(e.attributes!==t.attributes)return!0;break;case 271:if(Tn.assertNode(t,uI),e.name!==t.name)return!0;if(e.isTypeOnly!==t.isTypeOnly)return!0;if(e.moduleReference!==t.moduleReference&&(uu(e.moduleReference)||uu(t.moduleReference)))return!0;break;case 278:if(Tn.assertNode(t,TI),e.exportClause!==t.exportClause)return!0;if(e.attributes!==t.attributes)return!0}return!1}(n))return 1&n.transformFlags?fU(n,k,e):n;switch(n.kind){case 272:return function(e){if(!e.importClause)return e;if(e.importClause.isTypeOnly)return;const n=iU(e.importClause,pe,_I);return n?t.updateImportDeclaration(e,void 0,n,e.moduleSpecifier,e.attributes):void 0}(n);case 271:return ye(n);case 277:return function(t){return c.verbatimModuleSyntax||a.isValueAliasDeclaration(t)?fU(t,k,e):void 0}(n);case 278:return function(e){if(e.isTypeOnly)return;if(!e.exportClause||vI(e.exportClause))return e;const n=!!c.verbatimModuleSyntax,r=iU(e.exportClause,(e=>function(e,n){return vI(e)?function(e){return t.updateNamespaceExport(e,Tn.checkDefined(iU(e.name,k,YC)))}(e):function(e,n){const r=oU(e.elements,ge,kI);return n||$(r)?t.updateNamedExports(e,r):void 0}(e,n)}(e,n)),Rl);return r?t.updateExportDeclaration(e,void 0,e.isTypeOnly,r,e.moduleSpecifier,e.attributes):void 0}(n);default:Tn.fail("Unhandled ellided statement")}}(n);default:return E(n)}}function A(e){return w(e,I)}function I(e){if(278!==e.kind&&272!==e.kind&&273!==e.kind&&(271!==e.kind||283!==e.moduleReference.kind))return 1&e.transformFlags||Kv(e,32)?j(e):e}function D(n){return r=>w(r,(r=>function(n,r){switch(n.kind){case 176:return function(n){if(!Y(n))return;return t.updateConstructorDeclaration(n,void 0,lU(n.parameters,k,e),function(n,r){const s=r&&M(r.parameters,(e=>cc(e,r)));if(!$(s))return dU(n,k,e);let a=[];i();const c=t.copyPrologue(n.statements,a,!1,k),l=tB(n.statements,c),u=J(s,X);l.length?Z(a,n.statements,c,l,0,u):(me(a,u),me(a,oU(n.statements,k,kd,c)));a=t.mergeLexicalEnvironment(a,o());const d=t.createBlock(vM(t.createNodeArray(a),n.statements),!0);return vM(d,n),aE(d,n),d}(n.body,n))}(n);case 172:return function(e,n){const r=33554432&e.flags||Kv(e,64);if(r&&(!d||!Xv(e)))return;let i=xu(n)?oU(e.modifiers,r?F:k,Cu):oU(e.modifiers,O,Cu);if(i=V(i,e,n),r)return t.updatePropertyDeclaration(e,te(i,t.createModifiersFromModifierFlags(128)),Tn.checkDefined(iU(e.name,k,du)),void 0,void 0,void 0);return t.updatePropertyDeclaration(e,i,Q(e),void 0,void 0,iU(e.initializer,k,td))}(n,r);case 177:return re(n,r);case 178:return ie(n,r);case 174:return ee(n,r);case 175:return fU(n,k,e);case 240:return n;case 181:return;default:return Tn.failBadSyntaxKind(n)}}(r,n)))}function P(e){return t=>w(t,(t=>function(e,t){switch(e.kind){case 303:case 304:case 305:return k(e);case 177:return re(e,t);case 178:return ie(e,t);case 174:return ee(e,t);default:return Tn.failBadSyntaxKind(e)}}(t,e)))}function O(e){return mN(e)?void 0:k(e)}function F(e){return lu(e)?void 0:k(e)}function L(e){if(!mN(e)&&!(28895&ub(e.kind)||h&&95===e.kind))return e}function j(n){if(kd(n)&&Kv(n,128))return t.createNotEmittedStatement(n);switch(n.kind){case 95:case 90:return h?void 0:n;case 125:case 123:case 124:case 128:case 164:case 87:case 138:case 148:case 103:case 147:case 188:case 189:case 190:case 191:case 187:case 182:case 168:case 133:case 159:case 136:case 154:case 150:case 146:case 116:case 155:case 185:case 184:case 186:case 183:case 192:case 193:case 194:case 196:case 197:case 198:case 199:case 200:case 201:case 181:case 270:return;case 265:case 264:return t.createNotEmittedStatement(n);case 263:return function(n){const r=function(e){let t=0;$(nB(e,!0,!0))&&(t|=1);const n=Cg(e);n&&106!==gP(n.expression).kind&&(t|=64);km(d,e)&&(t|=2);wm(d,e)&&(t|=4);ve(e)?t|=8:!function(e){return be(e)&&Kv(e,2048)}(e)?xe(e)&&(t|=16):t|=32;return t}(n),i=l<=1&&!!(7&r);if(!function(e){return Xv(e)||$(e.typeParameters)||$(e.heritageClauses,U)||$(e.members,U)}(n)&&!km(d,n)&&!ve(n))return t.updateClassDeclaration(n,oU(n.modifiers,L,lu),n.name,void 0,oU(n.heritageClauses,k,KI),oU(n.members,D(n),bu));i&&e.startLexicalEnvironment();const o=i||8&r;let s=oU(n.modifiers,o?F:k,Cu);2&r&&(s=q(s,n));const a=o&&!n.name||4&r||1&r,c=a?n.name??t.getGeneratedNameForNode(n):n.name,u=t.updateClassDeclaration(n,s,c,void 0,oU(n.heritageClauses,k,KI),B(n));let _,p=rp(n);1&r&&(p|=64);if(dE(u,p),i){const r=[u],i=nx(da(m.text,n.members.end),20),o=t.getInternalName(n),s=t.createPartiallyEmittedExpression(o);Lw(s,i.end),dE(s,3072);const a=t.createReturnStatement(s);Rw(a,i.pos),dE(a,3840),r.push(a),q_(r,e.endLexicalEnvironment());const c=t.createImmediatelyInvokedArrowFunction(r);pE(c,1);const l=t.createVariableDeclaration(t.getLocalName(n,!1,!1),void 0,void 0,c);aE(l,n);const d=t.createVariableStatement(void 0,t.createVariableDeclarationList([l],1));aE(d,n),SE(d,n),hE(d,$b(n)),bP(d),_=d}else _=u;if(o){if(8&r)return[_,Se(n)];if(32&r)return[_,t.createExportDefault(t.getLocalName(n,!1,!0))];if(16&r)return[_,t.createExternalModuleExport(t.getDeclarationName(n,!1,!0))]}return _}(n);case 231:return function(e){let n=oU(e.modifiers,F,Cu);km(d,e)&&(n=q(n,e));return t.updateClassExpression(e,n,e.name,void 0,oU(e.heritageClauses,k,KI),B(e))}(n);case 298:return function(t){if(119===t.token)return;return fU(t,k,e)}(n);case 233:return function(e){return t.updateExpressionWithTypeArguments(e,Tn.checkDefined(iU(e.expression,k,Qu)),void 0)}(n);case 210:return function(e){return t.updateObjectLiteralExpression(e,oU(e.properties,P(e),Iu))}(n);case 176:case 172:case 174:case 177:case 178:case 175:return Tn.fail("Class and object literal elements must be visited with their respective visitors");case 262:return function(n){if(!Y(n))return t.createNotEmittedStatement(n);const r=t.updateFunctionDeclaration(n,oU(n.modifiers,L,lu),n.asteriskToken,n.name,void 0,lU(n.parameters,k,e),void 0,dU(n.body,k,e)||t.createBlock([]));if(ve(n)){const e=[r];return function(e,t){e.push(Se(t))}(e,n),e}return r}(n);case 218:return function(n){if(!Y(n))return t.createOmittedExpression();const r=t.updateFunctionExpression(n,oU(n.modifiers,L,lu),n.asteriskToken,n.name,void 0,lU(n.parameters,k,e),void 0,dU(n.body,k,e)||t.createBlock([]));return r}(n);case 219:return function(n){const r=t.updateArrowFunction(n,oU(n.modifiers,L,lu),void 0,lU(n.parameters,k,e),void 0,n.equalsGreaterThanToken,dU(n.body,k,e));return r}(n);case 169:return function(e){if(Sv(e))return;const n=t.updateParameterDeclaration(e,oU(e.modifiers,(e=>mN(e)?k(e):void 0),Cu),e.dotDotDotToken,Tn.checkDefined(iU(e.name,k,_u)),void 0,void 0,iU(e.initializer,k,td));n!==e&&(SE(n,e),vM(n,ex(e)),hE(n,ex(e)),dE(n.name,64));return n}(n);case 217:return function(n){const r=gP(n.expression,-7);if(nd(r)||EA(r)){const e=iU(n.expression,k,td);return Tn.assert(e),t.createPartiallyEmittedExpression(e,n)}return fU(n,k,e)}(n);case 216:case 234:return function(e){const n=iU(e.expression,k,td);return Tn.assert(n),t.createPartiallyEmittedExpression(n,e)}(n);case 238:return function(e){const n=iU(e.expression,k,td);return Tn.assert(n),t.createPartiallyEmittedExpression(n,e)}(n);case 213:return function(e){return t.updateCallExpression(e,Tn.checkDefined(iU(e.expression,k,td)),void 0,oU(e.arguments,k,td))}(n);case 214:return function(e){return t.updateNewExpression(e,Tn.checkDefined(iU(e.expression,k,td)),void 0,oU(e.arguments,k,td))}(n);case 215:return function(e){return t.updateTaggedTemplateExpression(e,Tn.checkDefined(iU(e.tag,k,td)),void 0,Tn.checkDefined(iU(e.template,k,Gu)))}(n);case 235:return function(e){const n=iU(e.expression,k,Qu);return Tn.assert(n),t.createPartiallyEmittedExpression(n,e)}(n);case 266:return function(e){if(!function(e){return!af(e)||KS(c)}(e))return t.createNotEmittedStatement(e);const n=[];let i=4;const s=le(n,e);s&&(4===u&&y===m||(i|=1024));const a=ke(e),l=Ee(e),d=ve(e)?t.getExternalModuleOrNamespaceExportName(g,e,!1,!0):t.getDeclarationName(e,!1,!0);let _=t.createLogicalOr(d,t.createAssignment(d,t.createObjectLiteralExpression()));if(ve(e)){const n=t.getLocalName(e,!1,!0);_=t.createAssignment(n,_)}const p=t.createExpressionStatement(t.createCallExpression(t.createFunctionExpression(void 0,void 0,void 0,void 0,[t.createParameterDeclaration(void 0,void 0,a)],void 0,function(e,n){const i=g;g=n;const s=[];r();const a=R(e.members,se);return q_(s,o()),me(s,a),g=i,t.createBlock(vM(t.createNodeArray(s),e.members),!0)}(e,l)),void 0,[_]));aE(p,e),s&&(wE(p,void 0),CE(p,void 0));return vM(p,e),_E(p,i),n.push(p),n}(n);case 243:return function(n){if(ve(n)){const e=hx(n.declarationList);if(0===e.length)return;return vM(t.createExpressionStatement(t.inlineExpressions(R(e,oe))),n)}return fU(n,k,e)}(n);case 260:return function(e){const n=t.updateVariableDeclaration(e,Tn.checkDefined(iU(e.name,k,_u)),void 0,void 0,iU(e.initializer,k,td));e.type&&UE(n.name,e.type);return n}(n);case 267:return ue(n);case 271:return ye(n);case 285:return function(e){return t.updateJsxSelfClosingElement(e,Tn.checkDefined(iU(e.tagName,k,Nd)),void 0,Tn.checkDefined(iU(e.attributes,k,jI)))}(n);case 286:return function(e){return t.updateJsxOpeningElement(e,Tn.checkDefined(iU(e.tagName,k,Nd)),void 0,Tn.checkDefined(iU(e.attributes,k,jI)))}(n);default:return fU(n,k,e)}}function z(n){const r=eT(c,"alwaysStrict")&&!(tO(n)&&u>=5)&&!sf(n);return t.updateSourceFile(n,cU(n.statements,C,e,0,r))}function U(e){return!!(8192&e.transformFlags)}function B(e){const n=oU(e.members,D(e),bu);let r;const i=yv(e),o=i&&M(i.parameters,(e=>cc(e,i)));if(o)for(const s of o){const e=t.createPropertyDeclaration(void 0,s.name,void 0,void 0,void 0);aE(e,s),r=_e(r,e)}return r?(r=me(r,n),vM(t.createNodeArray(r),e.members)):n}function q(e,n){const r=K(n,n);if($(r)){const n=[];me(n,bn(e,oM)),me(n,M(e,mN)),me(n,r),me(n,M(xn(e,oM),lu)),e=vM(t.createNodeArray(n),e)}return e}function V(e,n,r){if(xu(r)&&Em(d,n,r)){const i=K(n,r);if($(i)){const n=[];me(n,M(e,mN)),me(n,i),me(n,M(e,lu)),e=vM(t.createNodeArray(n),e)}}return e}function K(e,r){if(d)return JB?function(e,r){if(_){let i;if(W(e)){i=_e(i,t.createPropertyAssignment("type",t.createArrowFunction(void 0,void 0,[],void 0,t.createToken(39),_.serializeTypeOfNode({currentLexicalScope:y,currentNameScope:r},e,r))))}if(G(e)){i=_e(i,t.createPropertyAssignment("paramTypes",t.createArrowFunction(void 0,void 0,[],void 0,t.createToken(39),_.serializeParameterTypesOfNode({currentLexicalScope:y,currentNameScope:r},e,r))))}if(H(e)){i=_e(i,t.createPropertyAssignment("returnType",t.createArrowFunction(void 0,void 0,[],void 0,t.createToken(39),_.serializeReturnTypeOfNode({currentLexicalScope:y,currentNameScope:r},e))))}if(i){const e=n().createMetadataHelper("design:typeinfo",t.createObjectLiteralExpression(i,!0));return[t.createDecorator(e)]}}}(e,r):function(e,r){if(_){let i;if(W(e)){const o=n().createMetadataHelper("design:type",_.serializeTypeOfNode({currentLexicalScope:y,currentNameScope:r},e,r));i=_e(i,t.createDecorator(o))}if(G(e)){const o=n().createMetadataHelper("design:paramtypes",_.serializeParameterTypesOfNode({currentLexicalScope:y,currentNameScope:r},e,r));i=_e(i,t.createDecorator(o))}if(H(e)){const o=n().createMetadataHelper("design:returntype",_.serializeReturnTypeOfNode({currentLexicalScope:y,currentNameScope:r},e));i=_e(i,t.createDecorator(o))}return i}}(e,r)}function W(e){const t=e.kind;return 174===t||177===t||178===t||172===t}function H(e){return 174===e.kind}function G(e){switch(e.kind){case 263:case 231:return void 0!==yv(e);case 174:case 177:case 178:return!0}return!1}function Q(e){const n=e.name;if(_N(n)&&(!Wv(e)&&b||Xv(e)&&d)){const e=iU(n.expression,k,td);Tn.assert(e);if(!YU(Ml(e))){const r=t.getGeneratedNameForNode(n);return s(r),t.updateComputedPropertyName(n,t.createAssignment(r,e))}}return Tn.checkDefined(iU(n,k,du))}function Y(e){return!F_(e.body)}function Z(e,n,r,i,o,s){const a=i[o],c=n[a];if(me(e,oU(n,k,kd,r,a-r)),ZA(c)){const n=[];Z(n,c.tryBlock.statements,0,i,o+1,s);vM(t.createNodeArray(n),c.tryBlock.statements),e.push(t.updateTryStatement(c,t.updateBlock(c.tryBlock,n),iU(c.catchClause,k,JI),iU(c.finallyBlock,k,OA)))}else me(e,oU(n,k,kd,a,1)),me(e,s);me(e,oU(n,k,kd,a+1))}function X(e){const n=e.name;if(!YC(n))return;const r=Bw(vM(t.cloneNode(n),n),n.parent);dE(r,3168);const i=Bw(vM(t.cloneNode(n),n),n.parent);return dE(i,3072),bP(uE(vM(aE(t.createExpressionStatement(t.createAssignment(vM(t.createPropertyAccessExpression(t.createThis(),r),e.name),i)),e),Xb(e,-1))))}function ee(n,r){if(!(1&n.transformFlags))return n;if(!Y(n))return;let i=xu(r)?oU(n.modifiers,k,Cu):oU(n.modifiers,O,Cu);return i=V(i,n,r),t.updateMethodDeclaration(n,i,n.asteriskToken,Q(n),void 0,void 0,lU(n.parameters,k,e),void 0,dU(n.body,k,e))}function ne(e){return!(F_(e.body)&&Kv(e,64))}function re(n,r){if(!(1&n.transformFlags))return n;if(!ne(n))return;let i=xu(r)?oU(n.modifiers,k,Cu):oU(n.modifiers,O,Cu);return i=V(i,n,r),t.updateGetAccessorDeclaration(n,i,Q(n),lU(n.parameters,k,e),void 0,dU(n.body,k,e)||t.createBlock([]))}function ie(n,r){if(!(1&n.transformFlags))return n;if(!ne(n))return;let i=xu(r)?oU(n.modifiers,k,Cu):oU(n.modifiers,O,Cu);return i=V(i,n,r),t.updateSetAccessorDeclaration(n,i,Q(n),lU(n.parameters,k,e),dU(n.body,k,e)||t.createBlock([]))}function oe(n){const r=n.name;return Mu(r)?vB(n,k,e,0,!1,Te):vM(t.createAssignment(we(r),Tn.checkDefined(iU(n.initializer,k,td))),n)}function se(n){const r=function(e,n){const r=e.name;return ZC(r)?t.createIdentifier(""):_N(r)?n&&!YU(r.expression)?t.getGeneratedNameForNode(r):r.expression:YC(r)?t.createStringLiteral(kc(r)):t.cloneNode(r)}(n,!1),i=a.getEnumMemberValue(n),o=function(n,r){return void 0!==r?"string"==typeof r?t.createStringLiteral(r):r<0?t.createPrefixUnaryExpression(41,t.createNumericLiteral(-r)):t.createNumericLiteral(r):(8&x||(x|=8,e.enableSubstitution(80)),n.initializer?Tn.checkDefined(iU(n.initializer,k,td)):t.createVoidZero())}(n,null==i?void 0:i.value),s=t.createAssignment(t.createElementAccessExpression(g,r),o),c="string"==typeof(null==i?void 0:i.value)||(null==i?void 0:i.isSyntacticallyString)?s:t.createAssignment(t.createElementAccessExpression(g,s),r);return vM(t.createExpressionStatement(vM(c,n)),n)}function ae(e){v||(v=new Map);const t=ce(e);v.has(t)||v.set(t,e)}function ce(e){return Tn.assertNode(e.name,YC),e.name.escapedText}function le(e,n){const r=t.createVariableDeclaration(t.getLocalName(n,!1,!0)),i=307===y.kind?0:1,o=t.createVariableStatement(oU(n.modifiers,L,lu),t.createVariableDeclarationList([r],i));return aE(r,n),wE(r,void 0),CE(r,void 0),aE(o,n),ae(n),!!function(e){if(v){const t=ce(e);return v.get(t)===e}return!0}(n)&&(266===n.kind?hE(o.declarationList,n):hE(o,n),SE(o,n),_E(o,2048),e.push(o),!0)}function ue(n){if(!function(e){const t=Sc(e,sI);return!t||Yz(t,KS(c))}(n))return t.createNotEmittedStatement(n);Tn.assertNode(n.name,YC,"A TypeScript namespace should have an Identifier name."),2&x||(x|=2,e.enableSubstitution(80),e.enableSubstitution(304),e.enableEmitNotification(267));const i=[];let s=4;const a=le(i,n);a&&(4===u&&y===m||(s|=1024));const l=ke(n),d=Ee(n),_=ve(n)?t.getExternalModuleOrNamespaceExportName(g,n,!1,!0):t.getDeclarationName(n,!1,!0);let p=t.createLogicalOr(_,t.createAssignment(_,t.createObjectLiteralExpression()));if(ve(n)){const e=t.getLocalName(n,!1,!0);p=t.createAssignment(e,p)}const f=t.createExpressionStatement(t.createCallExpression(t.createFunctionExpression(void 0,void 0,void 0,void 0,[t.createParameterDeclaration(void 0,void 0,l)],void 0,function(e,n){const i=g,s=h,a=v;g=n,h=e,v=void 0;const c=[];let l,u;if(r(),e.body)if(268===e.body.kind)w(e.body,(e=>me(c,oU(e.statements,A,kd)))),l=e.body.statements,u=e.body;else{const t=ue(e.body);t&&(at(t)?me(c,t):c.push(t));l=Xb(de(e).body.statements,-1)}q_(c,o()),g=i,h=s,v=a;const d=t.createBlock(vM(t.createNodeArray(c),l),!0);vM(d,u),e.body&&268===e.body.kind||dE(d,3072|rp(d));return d}(n,d)),void 0,[p]));return aE(f,n),a&&(wE(f,void 0),CE(f,void 0)),vM(f,n),_E(f,s),i.push(f),i}function de(e){if(267===e.body.kind){return de(e.body)||e.body}}function pe(e){Tn.assert(!e.isTypeOnly);const n=Ae(e)?e.name:void 0,r=iU(e.namedBindings,fe,hd);return n||r?t.updateImportClause(e,!1,n,r):void 0}function fe(e){if(274===e.kind)return Ae(e)?e:void 0;{const n=c.verbatimModuleSyntax,r=oU(e.elements,he,xI);return n||$(r)?t.updateNamedImports(e,r):void 0}}function he(e){return!e.isTypeOnly&&Ae(e)?e:void 0}function ge(e){return e.isTypeOnly||!c.verbatimModuleSyntax&&!a.isValueAliasDeclaration(e)?void 0:e}function ye(n){if(n.isTypeOnly)return;if(Mm(n)){return Ae(n)?fU(n,k,e):void 0}if(!function(e){return Ae(e)||!tO(m)&&a.isTopLevelValueImportEqualsWithEntityName(e)}(n))return;const r=nP(t,n.moduleReference);return dE(r,7168),xe(n)||!ve(n)?aE(vM(t.createVariableStatement(oU(n.modifiers,L,lu),t.createVariableDeclarationList([aE(t.createVariableDeclaration(n.name,void 0,void 0,r),n)])),n),n):aE((i=n.name,o=r,s=n,vM(t.createExpressionStatement(t.createAssignment(t.getNamespaceMemberName(g,i,!1,!0),o)),s)),n);var i,o,s}function ve(e){return void 0!==h&&Kv(e,32)}function be(e){return void 0===h&&Kv(e,32)}function xe(e){return be(e)&&!Kv(e,2048)}function Se(e){const n=t.createAssignment(t.getExternalModuleOrNamespaceExportName(g,e,!1,!0),t.getLocalName(e));hE(n,Yb(e.name?e.name.pos:e.pos,e.end));const r=t.createExpressionStatement(n);return hE(r,Yb(-1,e.end)),r}function Te(e,n,r){return vM(t.createAssignment(we(e),n),r)}function we(e){return t.getNamespaceMemberName(g,e,!1,!0)}function ke(e){const n=t.getGeneratedNameForNode(e);return hE(n,e.name),n}function Ee(e){return t.getGeneratedNameForNode(e)}function Ce(e){if(x&S&&!tu(e)&&!aP(e)){const n=a.getReferencedExportContainer(e,!1);if(n&&307!==n.kind){if(2&S&&267===n.kind||8&S&&266===n.kind)return vM(t.createPropertyAccessExpression(t.getGeneratedNameForNode(n),e),e)}}}function Ne(e){const n=function(e){if(LS(c))return;return nA(e)||rA(e)?a.getConstantValue(e):void 0}(e);if(void 0!==n){DE(e,n);const i="string"==typeof n?t.createStringLiteral(n):n<0?t.createPrefixUnaryExpression(41,t.createNumericLiteral(-n)):t.createNumericLiteral(n);if(!c.removeComments){const t=vc(e,Bx);NE(i,3,` ${r=ep(t),r.replace(/\*\//g,"*_/")} `)}return i}var r;return e}function Ae(e){return c.verbatimModuleSyntax||Um(e)||a.isReferencedAliasDeclaration(e)}}function HB(e){const{factory:t,getEmitHelperFactory:n,hoistVariableDeclaration:r,endLexicalEnvironment:i,startLexicalEnvironment:o,resumeLexicalEnvironment:s,addBlockScopedVariable:a}=e,c=e.getEmitResolver(),l=e.getCompilerOptions(),u=MS(l),d=GS(l),_=!!l.experimentalDecorators,p=!d,f=d&&u<9,m=p||f,h=u<9,g=u<99?-1:d?0:3,y=u<9,v=y&&u>=2,b=m||h||-1===g,x=e.onSubstituteNode;e.onSubstituteNode=function(e,n){if(n=x(e,n),1===e)return function(e){switch(e.kind){case 80:return function(e){return function(e){if(1&T&&c.hasNodeCheckFlag(e,536870912)){const n=c.getReferencedValueDeclaration(e);if(n){const r=k[n.id];if(r){const n=t.cloneNode(r);return hE(n,e),SE(n,e),n}}}return}(e)||e}(e);case 110:return function(e){if(2&T&&(null==N?void 0:N.data)&&!D.has(e)){const{facts:n,classConstructor:r,classThis:i}=N.data,o=F?i??r:r;if(o)return vM(aE(t.cloneNode(o),e),e);if(1&n&&_)return t.createParenthesizedExpression(t.createVoidZero())}return e}(e)}return e}(n);return n};const S=e.onEmitNode;e.onEmitNode=function(e,t,n){const r=vc(t),i=I.get(r);if(i){const o=N,s=L;return N=i,L=F,F=!(bN(r)&&32&ip(r)),S(e,t,n),F=L,L=s,void(N=o)}switch(t.kind){case 218:if(uA(r)||524288&rp(t))break;case 262:case 176:case 177:case 178:case 174:case 172:{const r=N,i=L;return N=void 0,L=F,F=!1,S(e,t,n),F=L,L=i,void(N=r)}case 167:{const r=N,i=F;return N=null==N?void 0:N.previous,F=L,S(e,t,n),F=i,void(N=r)}}S(e,t,n)};let T,k,E,C,N,A=!1;const I=new Map,D=new Set;let P,O,F=!1,L=!1;return UU(e,(function(t){if(t.isDeclarationFile)return t;if(N=void 0,A=!!(32&ip(t)),!b&&!A)return t;const n=fU(t,z,e);return ME(n,e.readEmitHelpers()),n}));function j(e){return 129===e.kind?ne()?void 0:e:dt(e,lu)}function z(n){if(!(16777216&n.transformFlags||134234112&n.transformFlags))return n;switch(n.kind){case 129:return Tn.fail("Use `modifierVisitor` instead.");case 263:return function(e){return ye(e,ve)}(n);case 231:return function(e){return ye(e,be)}(n);case 175:case 172:return Tn.fail("Use `classElementVisitor` instead.");case 303:case 260:case 169:case 208:return function(t){ly(t,de)&&(t=UB(e,t));return fU(t,z,e)}(n);case 243:return function(t){const n=C;C=[];const r=fU(t,z,e),i=$(C)?[r,...C]:r;return C=n,i}(n);case 277:return function(t){ly(t,de)&&(t=UB(e,t,!0,t.isExportEquals?"":"default"));return fU(t,z,e)}(n);case 81:return function(e){if(!h)return e;if(kd(e.parent))return e;return aE(t.createIdentifier(""),e)}(n);case 211:return function(n){if(ZC(n.name)){const e=je(n.name);if(e)return vM(aE(oe(e,n.expression),n),n)}if(v&&O&&mm(n)&&YC(n.name)&&GB(O)&&(null==N?void 0:N.data)){const{classConstructor:e,superClassReference:r,facts:i}=N.data;if(1&i)return Ae(n);if(e&&r){const i=t.createReflectGetCall(r,t.createStringLiteralFromNode(n.name),e);return aE(i,n.expression),vM(i,n.expression),i}}return fU(n,z,e)}(n);case 212:return function(n){if(v&&O&&mm(n)&&GB(O)&&(null==N?void 0:N.data)){const{classConstructor:e,superClassReference:r,facts:i}=N.data;if(1&i)return Ae(n);if(e&&r){const i=t.createReflectGetCall(r,iU(n.argumentExpression,z,td),e);return aE(i,n.expression),vM(i,n.expression),i}}return fU(n,z,e)}(n);case 224:case 225:return ae(n,!1);case 226:return pe(n,!1);case 217:return fe(n,!1);case 213:return function(n){var i;if(ou(n.expression)&&je(n.expression.name)){const{thisArg:e,target:i}=t.createCallBinding(n.expression,r,u);return El(n)?t.updateCallChain(n,t.createPropertyAccessChain(iU(i,z,td),n.questionDotToken,"call"),void 0,void 0,[iU(e,z,td),...oU(n.arguments,z,td)]):t.updateCallExpression(n,t.createPropertyAccessExpression(iU(i,z,td),"call"),void 0,[iU(e,z,td),...oU(n.arguments,z,td)])}if(v&&O&&mm(n.expression)&&GB(O)&&(null==(i=null==N?void 0:N.data)?void 0:i.classConstructor)){const e=t.createFunctionCallCall(iU(n.expression,z,td),N.data.classConstructor,oU(n.arguments,z,td));return aE(e,n),vM(e,n),e}return fU(n,z,e)}(n);case 244:return function(e){return t.updateExpressionStatement(e,iU(e.expression,B,td))}(n);case 215:return function(n){var i;if(ou(n.tag)&&je(n.tag.name)){const{thisArg:e,target:i}=t.createCallBinding(n.tag,r,u);return t.updateTaggedTemplateExpression(n,t.createCallExpression(t.createPropertyAccessExpression(iU(i,z,td),"bind"),void 0,[iU(e,z,td)]),void 0,iU(n.template,z,Gu))}if(v&&O&&mm(n.tag)&&GB(O)&&(null==(i=null==N?void 0:N.data)?void 0:i.classConstructor)){const e=t.createFunctionBindCall(iU(n.tag,z,td),N.data.classConstructor,[]);return aE(e,n),vM(e,n),t.updateTaggedTemplateExpression(n,e,void 0,iU(n.template,z,Gu))}return fU(n,z,e)}(n);case 248:return function(n){return t.updateForStatement(n,iU(n.initializer,B,_d),iU(n.condition,z,td),iU(n.incrementor,B,td),_U(n.statement,z,e))}(n);case 110:return function(e){if(y&&O&&bN(O)&&(null==N?void 0:N.data)){const{classThis:t,classConstructor:n}=N.data;return t??n??e}return e}(n);case 262:case 218:return Z(void 0,U,n);case 176:case 174:case 177:case 178:return Z(n,U,n);default:return U(n)}}function U(t){return fU(t,z,e)}function B(e){switch(e.kind){case 224:case 225:return ae(e,!0);case 226:return pe(e,!0);case 355:return function(e,n){const r=n?pU(e.elements,B):pU(e.elements,z,B);return t.updateCommaListExpression(e,r)}(e,!0);case 217:return fe(e,!0);default:return z(e)}}function q(n){switch(n.kind){case 298:return fU(n,q,e);case 233:return function(n){var i;if(4&((null==(i=null==N?void 0:N.data)?void 0:i.facts)||0)){const e=t.createTempVariable(r,!0);return Ie().superClassReference=e,t.updateExpressionWithTypeArguments(n,t.createAssignment(e,iU(n.expression,z,td)),void 0)}return fU(n,z,e)}(n);default:return z(n)}}function V(e){switch(e.kind){case 210:case 209:return Ve(e);default:return z(e)}}function K(e){switch(e.kind){case 176:return Z(e,G,e);case 177:case 178:case 174:return Z(e,Y,e);case 172:return Z(e,re,e);case 175:return Z(e,xe,e);case 167:return H(e);case 240:return e;default:return Cu(e)?j(e):z(e)}}function J(e){return 167===e.kind?H(e):z(e)}function W(e){switch(e.kind){case 172:return te(e);case 177:case 178:return K(e);default:Tn.assertMissingNode(e,"Expected node to either be a PropertyDeclaration, GetAccessorDeclaration, or SetAccessorDeclaration")}}function H(e){const n=iU(e.expression,z,td);return t.updateComputedPropertyName(e,function(e){return $(E)&&(cA(e)?(E.push(e.expression),e=t.updateParenthesizedExpression(e,t.inlineExpressions(E))):(E.push(e),e=t.inlineExpressions(E)),E=void 0),e}(n))}function G(e){return P?Te(e,P):U(e)}function Q(e){return!!h||!!(Wv(e)&&32&ip(e))}function Y(n){if(Tn.assert(!Xv(n)),!iu(n)||!Q(n))return fU(n,K,e);const r=je(n.name);if(Tn.assert(r,"Undeclared private name for property declaration."),!r.isValid)return n;const i=function(e){Tn.assert(ZC(e.name));const t=je(e.name);if(Tn.assert(t,"Undeclared private name for property declaration."),"m"===t.kind)return t.methodName;if("a"===t.kind){if(jd(e))return t.getterName;if(Ld(e))return t.setterName}}(n);i&&Pe().push(t.createAssignment(i,t.createFunctionExpression(M(n.modifiers,(e=>lu(e)&&!iN(e)&&!aN(e))),n.asteriskToken,i,void 0,lU(n.parameters,z,e),void 0,dU(n.body,z,e))))}function Z(e,t,n){if(e!==O){const r=O;O=e;const i=t(n);return O=r,i}return t(n)}function X(e){const n=xE(e),i=mE(e),o=e.name;let s=o,a=o;if(_N(o)&&!YU(o.expression)){const e=mM(o);if(e)s=t.updateComputedPropertyName(o,iU(o.expression,z,td)),a=t.updateComputedPropertyName(o,e.left);else{const e=t.createTempVariable(r);hE(e,o.expression);const n=iU(o.expression,z,td),i=t.createAssignment(e,n);hE(i,o.expression),s=t.updateComputedPropertyName(o,i),a=t.updateComputedPropertyName(o,e)}}const c=oU(e.modifiers,j,lu),l=_M(t,e,c,e.initializer);aE(l,e),dE(l,3072),hE(l,i);const u=Jv(e)?function(){const e=Ie();return e.classThis??e.classConstructor??(null==P?void 0:P.name)}()??t.createThis():t.createThis(),d=pM(t,e,c,s,u);aE(d,e),SE(d,n),hE(d,i);const _=t.createModifiersFromModifierFlags(lb(c)),p=fM(t,e,_,a,u);return aE(p,e),dE(p,3072),hE(p,i),sU([l,d,p],W,bu)}function ee(e){if(!m||Tu(e))return t.updatePropertyDeclaration(e,oU(e.modifiers,j,lu),iU(e.name,J,du),void 0,void 0,iU(e.initializer,z,td));{const n=function(e,n){if(_N(e)){const i=mM(e),o=iU(e.expression,z,td),s=Ml(o),l=YU(s);if(!(!!i||bb(s)&&tu(s.left))&&!l&&n){const n=t.getGeneratedNameForNode(e);return c.hasNodeCheckFlag(e,32768)?a(n):r(n),t.createAssignment(n,o)}return l||YC(s)?void 0:o}}(e.name,!!e.initializer||d);if(n&&Pe().push(...gM(n)),Jv(e)&&!h){const n=Ee(e,t.createThis());if(n){const r=t.createClassStaticBlockDeclaration(t.createBlock([n]));return aE(r,e),SE(r,e),SE(n,{pos:-1,end:-1}),wE(n,void 0),CE(n,void 0),r}}}}function te(n){return Tn.assert(!Xv(n),"Decorators should already have been transformed and elided."),iu(n)?function(n){if(!Q(n))return p&&!Jv(n)&&(null==N?void 0:N.data)&&16&N.data.facts?t.updatePropertyDeclaration(n,oU(n.modifiers,z,Cu),n.name,void 0,void 0,void 0):(ly(n,de)&&(n=UB(e,n)),t.updatePropertyDeclaration(n,oU(n.modifiers,j,lu),iU(n.name,J,du),void 0,void 0,iU(n.initializer,z,td)));{const e=je(n.name);if(Tn.assert(e,"Undeclared private name for property declaration."),!e.isValid)return n;if(e.isStatic&&!h){const e=Ee(n,t.createThis());if(e)return t.createClassStaticBlockDeclaration(t.createBlock([e],!0))}}}(n):ee(n)}function ne(){return-1===g||3===g&&!!(null==N?void 0:N.data)&&!!(16&N.data.facts)}function re(e){return Tu(e)&&(ne()||Wv(e)&&32&ip(e))?X(e):te(e)}function ie(e){if(O&&Wv(O)&&Su(O)&&Tu(vc(O))){const t=gP(e);110===t.kind&&D.add(t)}}function oe(e,t){return ie(t=iU(t,z,td)),se(e,t)}function se(e,t){switch(SE(t,Xb(t,-1)),e.kind){case"a":return n().createClassPrivateFieldGetHelper(t,e.brandCheckIdentifier,e.kind,e.getterName);case"m":return n().createClassPrivateFieldGetHelper(t,e.brandCheckIdentifier,e.kind,e.methodName);case"f":return n().createClassPrivateFieldGetHelper(t,e.brandCheckIdentifier,e.kind,e.isStatic?e.variableName:void 0);case"untransformed":return Tn.fail("Access helpers should not be created for untransformed private elements");default:Tn.assertNever(e,"Unknown private element type")}}function ae(n,i){if(46===n.operator||47===n.operator){const e=fg(n.operand);if(ou(e)){let o;if(o=je(e.name)){const s=iU(e.expression,z,td);ie(s);const{readExpression:a,initializeExpression:c}=ce(s);let l=oe(o,a);const u=mA(n)||i?void 0:t.createTempVariable(r);return l=oP(t,n,l,r,u),l=he(o,c||a,l,64),aE(l,n),vM(l,n),u&&(l=t.createComma(l,u),vM(l,n)),l}}else if(v&&O&&mm(e)&&GB(O)&&(null==N?void 0:N.data)){const{classConstructor:o,superClassReference:s,facts:a}=N.data;if(1&a){const r=Ae(e);return mA(n)?t.updatePrefixUnaryExpression(n,r):t.updatePostfixUnaryExpression(n,r)}if(o&&s){let a,c;if(nA(e)?YC(e.name)&&(c=a=t.createStringLiteralFromNode(e.name)):YU(e.argumentExpression)?c=a=e.argumentExpression:(c=t.createTempVariable(r),a=t.createAssignment(c,iU(e.argumentExpression,z,td))),a&&c){let l=t.createReflectGetCall(s,c,o);vM(l,e);const u=i?void 0:t.createTempVariable(r);return l=oP(t,n,l,r,u),l=t.createReflectSetCall(s,a,l,o),aE(l,n),vM(l,n),u&&(l=t.createComma(l,u),vM(l,n)),l}}}}return fU(n,z,e)}function ce(e){const n=fy(e)?e:t.cloneNode(e);if(110===e.kind&&D.has(e)&&D.add(n),YU(e))return{readExpression:n,initializeExpression:void 0};const i=t.createTempVariable(r);return{readExpression:i,initializeExpression:t.createAssignment(i,n)}}function le(e){if(N&&I.set(vc(e),N),h){if(AB(e)){const t=iU(e.body.statements[0].expression,z,td);if(bb(t,!0)&&t.left===t.right)return;return t}if(FB(e))return iU(e.body.statements[0].expression,z,td);o();let n=Z(e,(e=>oU(e,z,kd)),e.body.statements);n=t.mergeLexicalEnvironment(n,i());const r=t.createImmediatelyInvokedArrowFunction(n);return aE(fg(r.expression),e),_E(fg(r.expression),4),aE(r,e),vM(r,e),r}}function de(e){if(SA(e)&&!e.name){const t=iB(e);if($(t,FB))return!1;return(h||!!ip(e))&&$(t,(e=>bN(e)||iu(e)||m&&oB(e)))}return!1}function pe(i,o){if(Sb(i)){const e=E;E=void 0,i=t.updateBinaryExpression(i,iU(i.left,V,td),i.operatorToken,iU(i.right,z,td));const n=$(E)?t.inlineExpressions(ue([...E,i])):i;return E=e,n}if(bb(i)){ly(i,de)&&(i=UB(e,i),Tn.assertNode(i,bb));const n=gP(i.left,9);if(ou(n)){const e=je(n.name);if(e)return vM(aE(he(e,n.expression,i.right,i.operatorToken.kind),i),i)}else if(v&&O&&mm(i.left)&&GB(O)&&(null==N?void 0:N.data)){const{classConstructor:e,superClassReference:n,facts:s}=N.data;if(1&s)return t.updateBinaryExpression(i,Ae(i.left),i.operatorToken,iU(i.right,z,td));if(e&&n){let s=rA(i.left)?iU(i.left.argumentExpression,z,td):YC(i.left.name)?t.createStringLiteralFromNode(i.left.name):void 0;if(s){let a=iU(i.right,z,td);if(ZU(i.operatorToken.kind)){let o=s;YU(s)||(o=t.createTempVariable(r),s=t.createAssignment(o,s));const c=t.createReflectGetCall(n,o,e);aE(c,i.left),vM(c,i.left),a=t.createBinaryExpression(c,XU(i.operatorToken.kind),a),vM(a,i)}const c=o?void 0:t.createTempVariable(r);return c&&(a=t.createAssignment(c,a),vM(c,i)),a=t.createReflectSetCall(n,s,a,e),aE(a,i),vM(a,i),c&&(a=t.createComma(a,c),vM(a,i)),a}}}}return function(e){return ZC(e.left)&&103===e.operatorToken.kind}(i)?function(t){const r=je(t.left);if(r){const e=iU(t.right,z,td);return aE(n().createClassPrivateFieldInHelper(r.brandCheckIdentifier,e),t)}return fU(t,z,e)}(i):fU(i,z,e)}function fe(e,n){const r=n?B:z,i=iU(e.expression,r,td);return t.updateParenthesizedExpression(e,i)}function he(e,r,i,o){if(r=iU(r,z,td),i=iU(i,z,td),ie(r),ZU(o)){const{readExpression:n,initializeExpression:s}=ce(r);r=s||n,i=t.createBinaryExpression(se(e,n),XU(o),i)}switch(SE(r,Xb(r,-1)),e.kind){case"a":return n().createClassPrivateFieldSetHelper(r,e.brandCheckIdentifier,i,e.kind,e.setterName);case"m":return n().createClassPrivateFieldSetHelper(r,e.brandCheckIdentifier,i,e.kind,void 0);case"f":return n().createClassPrivateFieldSetHelper(r,e.brandCheckIdentifier,i,e.kind,e.isStatic?e.variableName:void 0);case"untransformed":return Tn.fail("Access helpers should not be created for untransformed private elements");default:Tn.assertNever(e,"Unknown private element type")}}function ge(e){return M(e.members,sB)}function ye(n,r){var i;const o=P,s=E,a=N;P=n,E=void 0,N={previous:N,data:void 0};const l=32&ip(n);if(h||l){const e=Oc(n);if(e&&YC(e))De().data.className=e;else if((null==(i=n.emitNode)?void 0:i.assignedName)&&MC(n.emitNode.assignedName))if(n.emitNode.assignedName.textSourceNode&&YC(n.emitNode.assignedName.textSourceNode))De().data.className=n.emitNode.assignedName.textSourceNode;else if(Aa(n.emitNode.assignedName.text,u)){const e=t.createIdentifier(n.emitNode.assignedName.text);De().data.className=e}}if(h){const e=ge(n);$(e)&&(De().data.weakSetName=Re("instances",e[0].name))}const d=function(e){var t;let n=0;const r=vc(e);xu(r)&&km(_,r)&&(n|=1),h&&(IB(e)||RB(e))&&(n|=2);let i=!1,o=!1,s=!1,a=!1;for(const l of e.members)Jv(l)?(l.name&&(ZC(l.name)||Tu(l))&&h?n|=2:!Tu(l)||-1!==g||e.name||(null==(t=e.emitNode)?void 0:t.classThis)||(n|=2),(gN(l)||bN(l))&&(y&&16384&l.transformFlags&&(n|=8,1&n||(n|=2)),v&&134217728&l.transformFlags&&(1&n||(n|=6)))):Gv(vc(l))||(Tu(l)?(a=!0,s||(s=iu(l))):iu(l)?(s=!0,c.hasNodeCheckFlag(l,262144)&&(n|=2)):gN(l)&&(i=!0,o||(o=!!l.initializer)));return(f&&i||p&&o||h&&s||h&&a&&-1===g)&&(n|=16),n}(n);d&&(Ie().facts=d),8&d&&(2&T||(T|=2,e.enableSubstitution(110),e.enableEmitNotification(262),e.enableEmitNotification(218),e.enableEmitNotification(176),e.enableEmitNotification(177),e.enableEmitNotification(178),e.enableEmitNotification(174),e.enableEmitNotification(172),e.enableEmitNotification(167)));const m=r(n,d);return N=null==N?void 0:N.previous,Tn.assert(N===a),P=o,E=s,m}function ve(e,n){var i,o;let s;if(2&n)if(h&&(null==(i=e.emitNode)?void 0:i.classThis))Ie().classConstructor=e.emitNode.classThis,s=t.createAssignment(e.emitNode.classThis,t.getInternalName(e));else{const n=t.createTempVariable(r,!0);Ie().classConstructor=t.cloneNode(n),s=t.createAssignment(n,t.getInternalName(e))}(null==(o=e.emitNode)?void 0:o.classThis)&&(Ie().classThis=e.emitNode.classThis);const a=c.hasNodeCheckFlag(e,262144),l=Kv(e,32),u=Kv(e,2048);let d=oU(e.modifiers,j,lu);const _=oU(e.heritageClauses,q,KI),{members:f,prologue:m}=Se(e),g=[];if(s&&Pe().unshift(s),$(E)&&g.push(t.createExpressionStatement(t.inlineExpressions(E))),p||h||32&ip(e)){const n=iB(e);$(n)&&ke(g,n,t.getInternalName(e))}g.length>0&&l&&u&&(d=oU(d,(e=>oM(e)?void 0:e),lu),g.push(t.createExportAssignment(void 0,!1,t.getLocalName(e,!1,!0))));const y=Ie().classConstructor;a&&y&&(Ne(),k[LU(e)]=y);const v=t.updateClassDeclaration(e,d,e.name,void 0,_,f);return g.unshift(v),m&&g.unshift(t.createExpressionStatement(m)),g}function be(e,n){var i,o,s;const l=!!(1&n),u=iB(e),d=c.hasNodeCheckFlag(e,262144),_=c.hasNodeCheckFlag(e,32768);let p;function f(){var n;if(h&&(null==(n=e.emitNode)?void 0:n.classThis))return Ie().classConstructor=e.emitNode.classThis;const i=t.createTempVariable(_?a:r,!0);return Ie().classConstructor=t.cloneNode(i),i}(null==(i=e.emitNode)?void 0:i.classThis)&&(Ie().classThis=e.emitNode.classThis),2&n&&(p??(p=f()));const g=oU(e.modifiers,j,lu),y=oU(e.heritageClauses,q,KI),{members:v,prologue:b}=Se(e),x=t.updateClassExpression(e,g,e.name,void 0,y,v),S=[];b&&S.push(b);if((h||32&ip(e))&&$(u,(e=>bN(e)||iu(e)||m&&oB(e)))||$(E))if(l)Tn.assertIsDefined(C,"Decorated classes transformed by TypeScript are expected to be within a variable declaration."),$(E)&&me(C,R(E,t.createExpressionStatement)),$(u)&&ke(C,u,(null==(o=e.emitNode)?void 0:o.classThis)??t.getInternalName(e)),p?S.push(t.createAssignment(p,x)):h&&(null==(s=e.emitNode)?void 0:s.classThis)?S.push(t.createAssignment(e.emitNode.classThis,x)):S.push(x);else{if(p??(p=f()),d){Ne();const n=t.cloneNode(p);n.emitNode.autoGenerate.flags&=-9,k[LU(e)]=n}S.push(t.createAssignment(p,x)),me(S,E),me(S,function(e,t){const n=[];for(const r of e){const e=bN(r)?Z(r,le,r):Z(r,(()=>Ce(r,t)),void 0);e&&(bP(e),aE(e,r),_E(e,3072&rp(r)),hE(e,ex(r)),SE(e,r),n.push(e))}return n}(u,p)),S.push(t.cloneNode(p))}else S.push(x);return S.length>1&&(_E(x,131072),S.forEach(bP)),t.inlineExpressions(S)}function xe(t){if(!h)return fU(t,z,e)}function Se(e){const n=!!(32&ip(e));if(h||A){for(const t of e.members)if(iu(t))if(Q(t))Fe(t,t.name,Me);else{fB(De(),t.name,{kind:"untransformed"})}if(h&&$(ge(e))&&function(){const{weakSetName:e}=De().data;Tn.assert(e,"weakSetName should be set in private identifier environment"),Pe().push(t.createAssignment(e,t.createNewExpression(t.createIdentifier("WeakSet"),void 0,[])))}(),ne())for(const r of e.members)if(Tu(r)){const e=t.getGeneratedPrivateNameForNode(r.name,void 0,"_accessor_storage");if(h||n&&Wv(r))Fe(r,e,Oe);else{fB(De(),e,{kind:"untransformed"})}}}let i,o,s,a=oU(e.members,K,bu);if($(a,xN)||(i=Te(void 0,e)),!h&&$(E)){let e=t.createExpressionStatement(t.inlineExpressions(E));if(134234112&e.transformFlags){const n=t.createTempVariable(r),i=t.createArrowFunction(void 0,void 0,[],void 0,void 0,t.createBlock([e]));o=t.createAssignment(n,i),e=t.createExpressionStatement(t.createCallExpression(n,void 0,[]))}const n=t.createBlock([e]);s=t.createClassStaticBlockDeclaration(n),E=void 0}if(i||s){let n;const r=w(a,AB),o=w(a,FB);n=_e(n,r),n=_e(n,o),n=_e(n,i),n=_e(n,s);n=me(n,r||o?M(a,(e=>e!==r&&e!==o)):a),a=vM(t.createNodeArray(n),e.members)}return{members:a,prologue:o}}function Te(n,r){if(n=iU(n,z,xN),!((null==N?void 0:N.data)&&16&N.data.facts))return n;const o=Cg(r),a=!(!o||106===gP(o.expression).kind),c=lU(n?n.parameters:void 0,z,e),l=function(n,r,o){const a=nB(n,!1,!1);let c=a;d||(c=M(c,(e=>!!e.initializer||ZC(e.name)||Yv(e))));const l=ge(n),u=$(c)||$(l);if(!r&&!u)return dU(void 0,z,e);s();const _=!r&&o;let p=0,f=[];const m=[],g=t.createThis();if(function(e,n,r){if(!h||!$(n))return;const{weakSetName:i}=De().data;Tn.assert(i,"weakSetName should be set in private identifier environment"),e.push(t.createExpressionStatement(function(e,t,n){return e.createCallExpression(e.createPropertyAccessExpression(n,"add"),void 0,[t])}(t,r,i)))}(m,l,g),r){const e=M(a,(e=>cc(vc(e),r))),t=M(c,(e=>!cc(vc(e),r)));ke(m,e,g),ke(m,t,g)}else ke(m,c,g);if(null==r?void 0:r.body){p=t.copyPrologue(r.body.statements,f,!1,z);const e=tB(r.body.statements,p);if(e.length)we(f,r.body.statements,p,e,0,m,r);else{for(;p<r.body.statements.length;){if(!cc(vc(r.body.statements[p]),r))break;p++}me(f,m),me(f,oU(r.body.statements,z,kd,p))}}else _&&f.push(t.createExpressionStatement(t.createCallExpression(t.createSuper(),void 0,[t.createSpreadElement(t.createIdentifier("arguments"))]))),me(f,m);if(f=t.mergeLexicalEnvironment(f,i()),0===f.length&&!r)return;const y=(null==r?void 0:r.body)&&r.body.statements.length>=f.length?r.body.multiLine??f.length>0:f.length>0;return vM(t.createBlock(vM(t.createNodeArray(f),r?r.body.statements:n.members),y),r?r.body:void 0)}(r,n,a);return l?n?(Tn.assert(c),t.updateConstructorDeclaration(n,void 0,c,l)):bP(aE(vM(t.createConstructorDeclaration(void 0,c??[],l),n||r),n)):n}function we(e,n,r,i,o,s,a){const c=i[o],l=n[c];if(me(e,oU(n,z,kd,r,c-r)),r=c+1,ZA(l)){const n=[];we(n,l.tryBlock.statements,0,i,o+1,s,a);vM(t.createNodeArray(n),l.tryBlock.statements),e.push(t.updateTryStatement(l,t.updateBlock(l.tryBlock,n),iU(l.catchClause,z,JI),iU(l.finallyBlock,z,OA)))}else{for(me(e,oU(n,z,kd,c,1));r<n.length;){if(!cc(vc(n[r]),a))break;r++}me(e,s)}me(e,oU(n,z,kd,r))}function ke(e,t,n){for(const r of t){if(Jv(r)&&!h)continue;const t=Ee(r,n);t&&e.push(t)}}function Ee(e,n){const r=bN(e)?Z(e,le,e):Ce(e,n);if(!r)return;const i=t.createExpressionStatement(r);aE(i,e),_E(i,3072&rp(e)),SE(i,e);const o=vc(e);return fN(o)?(hE(i,o),uE(i)):hE(i,ex(e)),wE(r,void 0),CE(r,void 0),Yv(o)&&_E(i,3072),i}function Ce(n,r){var i;const o=O,s=function(n,r){const i=!d;ly(n,de)&&(n=UB(e,n));const o=Yv(n)?t.getGeneratedPrivateNameForNode(n.name):_N(n.name)&&!YU(n.name.expression)?t.updateComputedPropertyName(n.name,t.getGeneratedNameForNode(n.name)):n.name;Wv(n)&&(O=n);if(ZC(o)&&Q(n)){const e=je(o);if(e)return"f"===e.kind?e.isStatic?function(e,t,n){return e.createAssignment(t,e.createObjectLiteralExpression([e.createPropertyAssignment("value",n||e.createVoidZero())]))}(t,e.variableName,iU(n.initializer,z,td)):function(e,t,n,r){return e.createCallExpression(e.createPropertyAccessExpression(r,"set"),void 0,[t,n||e.createVoidZero()])}(t,r,iU(n.initializer,z,td),e.brandCheckIdentifier):void 0;Tn.fail("Undeclared private name for property declaration.")}if((ZC(o)||Wv(n))&&!n.initializer)return;const s=vc(n);if(Kv(s,64))return;let a=iU(n.initializer,z,td);if(cc(s,s.parent)&&YC(o)){const e=t.cloneNode(o);a?(cA(a)&&_P(a.expression)&&IC(a.expression.left,"___runInitializers")&&pA(a.expression.right)&&DC(a.expression.right.expression)&&(a=a.expression.left),a=t.inlineExpressions([a,e])):a=e,dE(o,3168),hE(e,s.name),dE(e,3072)}else a??(a=t.createVoidZero());if(i||ZC(o)){const e=GD(t,r,o,o);_E(e,1024);return t.createAssignment(e,a)}{const e=_N(o)?o.expression:YC(o)?t.createStringLiteral(wc(o.escapedText)):o,n=t.createPropertyDescriptor({value:a,configurable:!0,writable:!0,enumerable:!0});return t.createObjectDefinePropertyCall(r,e,n)}}(n,r);return s&&Wv(n)&&(null==(i=null==N?void 0:N.data)?void 0:i.facts)&&(aE(s,n),_E(s,4),hE(s,mE(n.name)),I.set(vc(n),N)),O=o,s}function Ne(){1&T||(T|=1,e.enableSubstitution(80),k=[])}function Ae(e){return nA(e)?t.updatePropertyAccessExpression(e,t.createVoidZero(),e.name):t.updateElementAccessExpression(e,t.createVoidZero(),iU(e.argumentExpression,z,td))}function Ie(){return Tn.assert(N),N.data??(N.data={facts:0,classConstructor:void 0,classThis:void 0,superClassReference:void 0})}function De(){return Tn.assert(N),N.privateEnv??(N.privateEnv=_B({className:void 0,weakSetName:void 0}))}function Pe(){return E??(E=[])}function Me(e,t,n,r,i,o,s){Tu(e)?function(e,t,n,r,i,o,s){const a=Le(t,"_get"),c=Le(t,"_set"),l=i?Tn.checkDefined(n.classThis??n.classConstructor,"classConstructor should be set in private identifier environment"):Tn.checkDefined(r.data.weakSetName,"weakSetName should be set in private identifier environment");fB(r,t,{kind:"a",getterName:a,setterName:c,brandCheckIdentifier:l,isStatic:i,isValid:o})}(0,t,n,r,i,o):gN(e)?Oe(e,t,n,r,i,o,s):vN(e)?function(e,t,n,r,i,o,s){const a=Le(t),c=i?Tn.checkDefined(n.classThis??n.classConstructor,"classConstructor should be set in private identifier environment"):Tn.checkDefined(r.data.weakSetName,"weakSetName should be set in private identifier environment");fB(r,t,{kind:"m",methodName:a,brandCheckIdentifier:c,isStatic:i,isValid:o})}(0,t,n,r,i,o):SN(e)?function(e,t,n,r,i,o,s){const a=Le(t,"_get"),c=i?Tn.checkDefined(n.classThis??n.classConstructor,"classConstructor should be set in private identifier environment"):Tn.checkDefined(r.data.weakSetName,"weakSetName should be set in private identifier environment");"a"!==(null==s?void 0:s.kind)||s.isStatic!==i||s.getterName?fB(r,t,{kind:"a",getterName:a,setterName:void 0,brandCheckIdentifier:c,isStatic:i,isValid:o}):s.getterName=a}(0,t,n,r,i,o,s):TN(e)&&function(e,t,n,r,i,o,s){const a=Le(t,"_set"),c=i?Tn.checkDefined(n.classThis??n.classConstructor,"classConstructor should be set in private identifier environment"):Tn.checkDefined(r.data.weakSetName,"weakSetName should be set in private identifier environment");"a"!==(null==s?void 0:s.kind)||s.isStatic!==i||s.setterName?fB(r,t,{kind:"a",getterName:void 0,setterName:a,brandCheckIdentifier:c,isStatic:i,isValid:o}):s.setterName=a}(0,t,n,r,i,o,s)}function Oe(e,n,r,i,o,s,a){if(o){fB(i,n,{kind:"f",isStatic:!0,brandCheckIdentifier:Tn.checkDefined(r.classThis??r.classConstructor,"classConstructor should be set in private identifier environment"),variableName:Le(n),isValid:s})}else{const e=Le(n);fB(i,n,{kind:"f",isStatic:!1,brandCheckIdentifier:e,isValid:s}),Pe().push(t.createAssignment(e,t.createNewExpression(t.createIdentifier("WeakMap"),void 0,[])))}}function Fe(e,t,n){const r=Ie(),i=De(),o=pB(i,t),s=Wv(e),a=!function(e){return!nu(e)&&"#constructor"===e.escapedText}(t)&&void 0===o;n(e,t,r,i,s,a,o)}function Re(e,n,i){const{className:o}=De().data,s=o?{prefix:"_",node:o,suffix:"_"}:"_",l="object"==typeof e?t.getGeneratedNameForNode(e,24,s,i):"string"==typeof e?t.createUniqueName(e,16,s,i):t.createTempVariable(void 0,!0,s,i);return c.hasNodeCheckFlag(n,32768)?a(l):r(l),l}function Le(e,t){const n=Up(e);return Re((null==n?void 0:n.substring(1))??e,e,t)}function je(e){const t=mB(N,e);return"untransformed"===(null==t?void 0:t.kind)?void 0:t}function ze(n){if(tA(n)||eA(n))return Ve(n);if(ou(n))return function(n){const i=t.getGeneratedNameForNode(n),o=je(n.name);if(!o)return fU(n,z,e);let s=n.expression;return(hm(n)||mm(n)||!QU(n.expression))&&(s=t.createTempVariable(r,!0),Pe().push(t.createBinaryExpression(s,64,iU(n.expression,z,td)))),t.createAssignmentTargetWrapper(i,he(o,s,i,64))}(n);if(v&&O&&mm(n)&&GB(O)&&(null==N?void 0:N.data)){const{classConstructor:e,superClassReference:r,facts:i}=N.data;if(1&i)return Ae(n);if(e&&r){const i=rA(n)?iU(n.argumentExpression,z,td):YC(n.name)?t.createStringLiteralFromNode(n.name):void 0;if(i){const n=t.createTempVariable(void 0);return t.createAssignmentTargetWrapper(n,t.createReflectSetCall(r,i,n,e))}}}return fU(n,z,e)}function Ue(n){if(ly(n,de)&&(n=UB(e,n)),bb(n,!0)){const e=ze(n.left),r=iU(n.right,z,td);return t.updateBinaryExpression(n,e,n.operatorToken,r)}return ze(n)}function Be(n){if(qu(n)){if(xA(n))return function(n){if(Qu(n.expression)){const e=ze(n.expression);return t.updateSpreadElement(n,e)}return fU(n,z,e)}(n);if(!TA(n))return Ue(n)}return fU(n,z,e)}function qe(n){return Tn.assertNode(n,Uu),GI(n)?function(n){if(Qu(n.expression)){const e=ze(n.expression);return t.updateSpreadAssignment(n,e)}return fU(n,z,e)}(n):HI(n)?function(t){return ly(t,de)&&(t=UB(e,t)),fU(t,z,e)}(n):WI(n)?function(n){const r=iU(n.name,z,du);if(bb(n.initializer,!0)){const e=Ue(n.initializer);return t.updatePropertyAssignment(n,r,e)}if(Qu(n.initializer)){const e=ze(n.initializer);return t.updatePropertyAssignment(n,r,e)}return fU(n,z,e)}(n):fU(n,z,e)}function Ve(e){return eA(e)?t.updateArrayLiteralExpression(e,oU(e.elements,Be,td)):t.updateObjectLiteralExpression(e,oU(e.properties,qe,Iu))}}function GB(e){return bN(e)||function(e){return gN(e)&&Wv(e)}(e)}function QB(e){const{factory:t,hoistVariableDeclaration:n}=e,r=e.getEmitResolver(),i=e.getCompilerOptions(),o=MS(i),s=eT(i,"strictNullChecks");let a,c;return{serializeTypeNode:(e,t)=>l(e,p,t),serializeTypeOfNode:(e,t,n)=>l(e,u,t,n),serializeParameterTypesOfNode:(e,t,n)=>l(e,d,t,n),serializeReturnTypeOfNode:(e,t)=>l(e,_,t)};function l(e,t,n,r){const i=a,o=c;a=e.currentLexicalScope,c=e.currentNameScope;const s=void 0===r?t(n):t(n,r);return a=i,c=o,s}function u(e,n){switch(e.kind){case 172:case 169:return p(e.type);case 178:case 177:return p(function(e,t){const n=Cv(t.members,e);return n.setAccessor&&bv(n.setAccessor)||n.getAccessor&&Iv(n.getAccessor)}(e,n));case 263:case 231:case 174:return t.createIdentifier("Function");default:return t.createVoidZero()}}function d(e,n){const r=xu(e)?yv(e):pu(e)&&R_(e.body)?e:void 0,i=[];if(r){const e=function(e,t){if(t&&177===e.kind){const{setAccessor:n}=Cv(t.members,e);if(n)return n.parameters}return e.parameters}(r,n),t=e.length;for(let r=0;r<t;r++){const t=e[r];0===r&&YC(t.name)&&"this"===t.name.escapedText||(t.dotDotDotToken?i.push(p(Rf(t.type))):i.push(u(t,n)))}}return t.createArrayLiteralExpression(i)}function _(e){return pu(e)&&e.type?p(e.type):Wg(e)?t.createIdentifier("Promise"):t.createVoidZero()}function p(e){if(void 0===e)return t.createIdentifier("Object");switch((e=pg(e)).kind){case 116:case 157:case 146:return t.createVoidZero();case 184:case 185:return t.createIdentifier("Function");case 188:case 189:return t.createIdentifier("Array");case 182:return e.assertsModifier?t.createVoidZero():t.createIdentifier("Boolean");case 136:return t.createIdentifier("Boolean");case 203:case 154:return t.createIdentifier("String");case 151:return t.createIdentifier("Object");case 201:return f(e.literal);case 150:return t.createIdentifier("Number");case 163:return b("BigInt",7);case 155:return b("Symbol",2);case 183:return function(e){const i=r.getTypeReferenceSerializationKind(e.typeName,c??a);switch(i){case 0:if(bc(e,(e=>e.parent&&UN(e.parent)&&(e.parent.trueType===e||e.parent.falseType===e))))return t.createIdentifier("Object");const r=y(e.typeName),o=t.createTempVariable(n);return t.createConditionalExpression(t.createTypeCheck(t.createAssignment(o,r),"function"),void 0,o,void 0,t.createIdentifier("Object"));case 1:return v(e.typeName);case 2:return t.createVoidZero();case 4:return b("BigInt",7);case 6:return t.createIdentifier("Boolean");case 3:return t.createIdentifier("Number");case 5:return t.createIdentifier("String");case 7:return t.createIdentifier("Array");case 8:return b("Symbol",2);case 10:return t.createIdentifier("Function");case 9:return t.createIdentifier("Promise");case 11:return t.createIdentifier("Object");default:return Tn.assertNever(i)}}(e);case 193:return m(e.types,!0);case 192:return m(e.types,!1);case 194:return m([e.trueType,e.falseType],!1);case 198:if(148===e.operator)return p(e.type);break;case 186:case 199:case 200:case 187:case 133:case 159:case 197:case 205:case 312:case 313:case 317:case 318:case 319:break;case 314:case 315:case 316:return p(e.type);default:return Tn.failBadSyntaxKind(e)}return t.createIdentifier("Object")}function f(e){switch(e.kind){case 11:case 15:return t.createIdentifier("String");case 224:{const t=e.operand;switch(t.kind){case 9:case 10:return f(t);default:return Tn.failBadSyntaxKind(t)}}case 9:return t.createIdentifier("Number");case 10:return b("BigInt",7);case 112:case 97:return t.createIdentifier("Boolean");case 106:return t.createVoidZero();default:return Tn.failBadSyntaxKind(e)}}function m(e,n){let r;for(let i of e){if(i=pg(i),146===i.kind){if(n)return t.createVoidZero();continue}if(159===i.kind){if(!n)return t.createIdentifier("Object");continue}if(133===i.kind)return t.createIdentifier("Object");if(!s&&(HN(i)&&106===i.literal.kind||157===i.kind))continue;const e=p(i);if(YC(e)&&"Object"===e.escapedText)return e;if(r){if(!h(r,e))return t.createIdentifier("Object")}else r=e}return r??t.createVoidZero()}function h(e,t){return tu(e)?tu(t):YC(e)?YC(t)&&e.escapedText===t.escapedText:nA(e)?nA(t)&&h(e.expression,t.expression)&&h(e.name,t.name):pA(e)?pA(t)&&DC(e.expression)&&"0"===e.expression.text&&DC(t.expression)&&"0"===t.expression.text:MC(e)?MC(t)&&e.text===t.text:_A(e)?_A(t)&&h(e.expression,t.expression):cA(e)?cA(t)&&h(e.expression,t.expression):yA(e)?yA(t)&&h(e.condition,t.condition)&&h(e.whenTrue,t.whenTrue)&&h(e.whenFalse,t.whenFalse):!!gA(e)&&(gA(t)&&e.operatorToken.kind===t.operatorToken.kind&&h(e.left,t.left)&&h(e.right,t.right))}function g(e,n){return t.createLogicalAnd(t.createStrictInequality(t.createTypeOfExpression(e),t.createStringLiteral("undefined")),n)}function y(e){if(80===e.kind){const t=v(e);return g(t,t)}if(80===e.left.kind)return g(v(e.left),v(e));const r=y(e.left),i=t.createTempVariable(n);return t.createLogicalAnd(t.createLogicalAnd(r.left,t.createStrictInequality(t.createAssignment(i,r.right),t.createVoidZero())),t.createPropertyAccessExpression(i,e.right))}function v(e){switch(e.kind){case 80:const n=Bw(vM(TM.cloneNode(e),e),e.parent);return n.original=void 0,Bw(n,Sc(a)),n;case 166:return function(e){return t.createPropertyAccessExpression(v(e.left),e.right)}(e)}}function b(e,n){return o<n?function(e){return t.createConditionalExpression(t.createTypeCheck(t.createIdentifier(e),"function"),void 0,t.createIdentifier(e),void 0,t.createIdentifier("Object"))}(e):t.createIdentifier(e)}}function YB(e){const{factory:t,getEmitHelperFactory:n,hoistVariableDeclaration:r}=e,i=e.getEmitResolver(),o=e.getCompilerOptions(),s=MS(o),a=e.onSubstituteNode;let c;return e.onSubstituteNode=function(e,n){if(n=a(e,n),1===e)return function(e){if(80===e.kind)return function(e){return function(e){if(c&&i.hasNodeCheckFlag(e,536870912)){const n=i.getReferencedValueDeclaration(e);if(n){const r=c[n.id];if(r){const n=t.cloneNode(r);return hE(n,e),SE(n,e),n}}}return}(e)??e}(e);return e}(n);return n},UU(e,(function(t){const n=fU(t,u,e);return ME(n,e.readEmitHelpers()),n}));function l(e){return mN(e)?void 0:e}function u(o){if(!(33554432&o.transformFlags))return o;switch(o.kind){case 170:return;case 263:return function(o){if(!km(!0,o)&&!wm(!0,o))return fU(o,u,e);const a=km(!0,o)?function(o,a){const l=Kv(o,32),d=Kv(o,2048),_=oU(o.modifiers,(e=>oM(e)||mN(e)?void 0:e),Cu),f=ex(o),m=function(n){if(i.hasNodeCheckFlag(n,262144)){c||(e.enableSubstitution(80),c=[]);const i=t.createUniqueName(n.name&&!tu(n.name)?kc(n.name):"default");return c[LU(n)]=i,r(i),i}}(o),g=s<2?t.getInternalName(o,!1,!0):t.getLocalName(o,!1,!0),y=oU(o.heritageClauses,u,KI);let v=oU(o.members,u,bu),b=[];({members:v,decorationStatements:b}=p(o,v));const x=s>=9&&!!m&&$(v,(e=>gN(e)&&Kv(e,256)||bN(e)));x&&(v=vM(t.createNodeArray([t.createClassStaticBlockDeclaration(t.createBlock([t.createExpressionStatement(t.createAssignment(m,t.createThis()))])),...v]),v));const S=t.createClassExpression(_,a&&tu(a)?void 0:a,void 0,y,v);aE(S,o),vM(S,f);const T=m&&!x?t.createAssignment(m,S):S,w=t.createVariableDeclaration(g,void 0,void 0,T);aE(w,o);const k=t.createVariableDeclarationList([w],1),E=t.createVariableStatement(void 0,k);aE(E,o),vM(E,f),SE(E,o);const C=[E];if(me(C,b),function(e,r){const i=function(e){const r=cB(e),i=h(r);if(!i)return;const o=c&&c[LU(e)],a=s<2?t.getInternalName(e,!1,!0):t.getDeclarationName(e,!1,!0),l=n().createDecorateHelper(i,a),u=t.createAssignment(a,o?t.createAssignment(o,l):l);return dE(u,3072),hE(u,ex(e)),u}(r);i&&e.push(aE(t.createExpressionStatement(i),r))}(C,o),l)if(d){const e=t.createExportDefault(g);C.push(e)}else{const e=t.createExternalModuleExport(t.getDeclarationName(o));C.push(e)}return C}(o,o.name):function(e,n){const r=oU(e.modifiers,l,lu),i=oU(e.heritageClauses,u,KI);let o=oU(e.members,u,bu),s=[];({members:o,decorationStatements:s}=p(e,o));const a=t.updateClassDeclaration(e,r,n,void 0,i,o);return me([a],s)}(o,o.name);return Pe(a)}(o);case 231:return function(e){return t.updateClassExpression(e,oU(e.modifiers,l,lu),e.name,void 0,oU(e.heritageClauses,u,KI),oU(e.members,u,bu))}(o);case 176:return function(e){return t.updateConstructorDeclaration(e,oU(e.modifiers,l,lu),oU(e.parameters,u,fN),iU(e.body,u,OA))}(o);case 174:return function(e){return f(t.updateMethodDeclaration(e,oU(e.modifiers,l,lu),e.asteriskToken,Tn.checkDefined(iU(e.name,u,du)),void 0,void 0,oU(e.parameters,u,fN),void 0,iU(e.body,u,OA)),e)}(o);case 178:return function(e){return f(t.updateSetAccessorDeclaration(e,oU(e.modifiers,l,lu),Tn.checkDefined(iU(e.name,u,du)),oU(e.parameters,u,fN),iU(e.body,u,OA)),e)}(o);case 177:return function(e){return f(t.updateGetAccessorDeclaration(e,oU(e.modifiers,l,lu),Tn.checkDefined(iU(e.name,u,du)),oU(e.parameters,u,fN),void 0,iU(e.body,u,OA)),e)}(o);case 172:return function(e){if(33554432&e.flags||Kv(e,128))return;return f(t.updatePropertyDeclaration(e,oU(e.modifiers,l,lu),Tn.checkDefined(iU(e.name,u,du)),void 0,void 0,iU(e.initializer,u,td)),e)}(o);case 169:return function(e){const n=t.updateParameterDeclaration(e,aM(t,e.modifiers),e.dotDotDotToken,Tn.checkDefined(iU(e.name,u,_u)),void 0,void 0,iU(e.initializer,u,td));n!==e&&(SE(n,e),vM(n,ex(e)),hE(n,ex(e)),dE(n.name,64));return n}(o);default:return fU(o,u,e)}}function d(e){return!!(536870912&e.transformFlags)}function _(e){return $(e,d)}function p(e,n){let r=[];return g(r,e,!1),g(r,e,!0),function(e){for(const t of e.members){if(!xM(t))continue;const n=lB(t,e,!0);if($(null==n?void 0:n.decorators,d))return!0;if($(null==n?void 0:n.parameters,_))return!0}return!1}(e)&&(n=vM(t.createNodeArray([...n,t.createClassStaticBlockDeclaration(t.createBlock(r,!0))]),n),r=void 0),{decorationStatements:r,members:n}}function f(e,t){return e!==t&&(SE(e,t),hE(e,ex(t))),e}function m(e){return IC(e.expression,"___metadata")}function h(e){if(!e)return;const{false:t,true:n}=Ze(e.decorators,m),r=[];return me(r,R(t,v)),me(r,U(e.parameters,b)),me(r,R(n,v)),r}function g(e,n,r){me(e,R(function(e,t){const n=function(e,t){return M(e.members,(n=>{return i=t,Tm(!0,r=n,e)&&i===Jv(r);var r,i}))}(e,t);let r;for(const i of n)r=_e(r,y(e,i));return r}(n,r),(e=>t.createExpressionStatement(e))))}function y(e,r){const i=h(lB(r,e,!0));if(!i)return;const o=function(e,n){return Jv(n)?t.getDeclarationName(e):function(e){return t.createPropertyAccessExpression(t.getDeclarationName(e),"prototype")}(e)}(e,r),s=function(e,n){const r=e.name;return ZC(r)?t.createIdentifier(""):_N(r)?n&&!YU(r.expression)?t.getGeneratedNameForNode(r):r.expression:YC(r)?t.createStringLiteral(kc(r)):t.cloneNode(r)}(r,!Kv(r,128)),a=gN(r)&&!Yv(r)?t.createVoidZero():t.createNull(),c=n().createDecorateHelper(i,o,s,a);return dE(c,3072),hE(c,ex(r)),c}function v(e){return Tn.checkDefined(iU(e.expression,u,td))}function b(e,t){let r;if(e){r=[];for(const i of e){const e=n().createParamHelper(v(i),t);vM(e,i.expression),dE(e,3072),r.push(e)}}return r}}function ZB(e){const{factory:t,getEmitHelperFactory:n,startLexicalEnvironment:r,endLexicalEnvironment:i,hoistVariableDeclaration:o}=e,s=MS(e.getCompilerOptions());let a,c,l,u,d,_;return UU(e,(function(t){a=void 0,_=!1;const n=fU(t,b,e);ME(n,e.readEmitHelpers()),_&&(fE(n,32),_=!1);return n}));function p(){switch(c=void 0,l=void 0,u=void 0,null==a?void 0:a.kind){case"class":c=a.classInfo;break;case"class-element":c=a.next.classInfo,l=a.classThis,u=a.classSuper;break;case"name":const e=a.next.next.next;"class-element"===(null==e?void 0:e.kind)&&(c=e.next.classInfo,l=e.classThis,u=e.classSuper)}}function f(e){a={kind:"class",next:a,classInfo:e,savedPendingExpressions:d},d=void 0,p()}function m(){Tn.assert("class"===(null==a?void 0:a.kind),"Incorrect value for top.kind.",(()=>`Expected top.kind to be 'class' but got '${null==a?void 0:a.kind}' instead.`)),d=a.savedPendingExpressions,a=a.next,p()}function h(e){var t,n;Tn.assert("class"===(null==a?void 0:a.kind),"Incorrect value for top.kind.",(()=>`Expected top.kind to be 'class' but got '${null==a?void 0:a.kind}' instead.`)),a={kind:"class-element",next:a},(bN(e)||gN(e)&&Wv(e))&&(a.classThis=null==(t=a.next.classInfo)?void 0:t.classThis,a.classSuper=null==(n=a.next.classInfo)?void 0:n.classSuper),p()}function g(){var e;Tn.assert("class-element"===(null==a?void 0:a.kind),"Incorrect value for top.kind.",(()=>`Expected top.kind to be 'class-element' but got '${null==a?void 0:a.kind}' instead.`)),Tn.assert("class"===(null==(e=a.next)?void 0:e.kind),"Incorrect value for top.next.kind.",(()=>{var e;return`Expected top.next.kind to be 'class' but got '${null==(e=a.next)?void 0:e.kind}' instead.`})),a=a.next,p()}function y(){Tn.assert("class-element"===(null==a?void 0:a.kind),"Incorrect value for top.kind.",(()=>`Expected top.kind to be 'class-element' but got '${null==a?void 0:a.kind}' instead.`)),a={kind:"name",next:a},p()}function v(){Tn.assert("name"===(null==a?void 0:a.kind),"Incorrect value for top.kind.",(()=>`Expected top.kind to be 'name' but got '${null==a?void 0:a.kind}' instead.`)),a=a.next,p()}function b(n){if(!function(e){return!!(33554432&e.transformFlags)||!!l&&!!(16384&e.transformFlags)||!!l&&!!u&&!!(134217728&e.transformFlags)}(n))return n;switch(n.kind){case 170:return Tn.fail("Use `modifierVisitor` instead.");case 263:return function(n){if(N(n)){const r=[],i=vc(n,xu)??n,o=i.name?t.createStringLiteralFromNode(i.name):t.createStringLiteral("default"),s=Kv(n,32),a=Kv(n,2048);if(n.name||(n=jB(e,n,o)),s&&a){const e=C(n);if(n.name){const i=t.createVariableDeclaration(t.getLocalName(n),void 0,void 0,e);aE(i,n);const o=t.createVariableDeclarationList([i],1),s=t.createVariableStatement(void 0,o);r.push(s);const a=t.createExportDefault(t.getDeclarationName(n));aE(a,n),SE(a,xE(n)),hE(a,$b(n)),r.push(a)}else{const i=t.createExportDefault(e);aE(i,n),SE(i,xE(n)),hE(i,$b(n)),r.push(i)}}else{Tn.assertIsDefined(n.name,"A class declaration that is not a default export must have a name.");const e=C(n),i=s?e=>XC(e)?void 0:S(e):S,o=oU(n.modifiers,i,lu),a=t.getLocalName(n,!1,!0),c=t.createVariableDeclaration(a,void 0,void 0,e);aE(c,n);const l=t.createVariableDeclarationList([c],1),u=t.createVariableStatement(o,l);if(aE(u,n),SE(u,xE(n)),r.push(u),s){const e=t.createExternalModuleExport(a);aE(e,n),r.push(e)}}return Pe(r)}{const e=oU(n.modifiers,S,lu),r=oU(n.heritageClauses,b,KI);f(void 0);const i=oU(n.members,T,bu);return m(),t.updateClassDeclaration(n,e,n.name,void 0,r,i)}}(n);case 231:return function(e){if(N(e)){const t=C(e);return aE(t,e),t}{const n=oU(e.modifiers,S,lu),r=oU(e.heritageClauses,b,KI);f(void 0);const i=oU(e.members,T,bu);return m(),t.updateClassExpression(e,n,e.name,void 0,r,i)}}(n);case 176:case 172:case 175:return Tn.fail("Not supported outside of a class. Use 'classElementVisitor' instead.");case 169:return function(n){ly(n,M)&&(n=UB(e,n,O(n.initializer)));const r=t.updateParameterDeclaration(n,void 0,n.dotDotDotToken,iU(n.name,b,_u),void 0,void 0,iU(n.initializer,b,td));r!==n&&(SE(r,n),vM(r,ex(n)),hE(r,ex(n)),dE(r.name,64));return r}(n);case 226:return F(n,!1);case 303:case 260:case 208:return function(t){ly(t,M)&&(t=UB(e,t,O(t.initializer)));return fU(t,b,e)}(n);case 277:return function(t){ly(t,M)&&(t=UB(e,t,O(t.expression)));return fU(t,b,e)}(n);case 110:return function(e){return l??e}(n);case 248:return function(n){return t.updateForStatement(n,iU(n.initializer,w,_d),iU(n.condition,b,td),iU(n.incrementor,w,td),_U(n.statement,b,e))}(n);case 244:return function(t){return fU(t,w,e)}(n);case 355:return j(n,!1);case 217:return W(n,!1);case 354:return function(e,n){const r=n?w:b,i=iU(e.expression,r,td);return t.updatePartiallyEmittedExpression(e,i)}(n,!1);case 213:return function(n){if(mm(n.expression)&&l){const e=iU(n.expression,b,td),r=oU(n.arguments,b,td),i=t.createFunctionCallCall(e,l,r);return aE(i,n),vM(i,n),i}return fU(n,b,e)}(n);case 215:return function(n){if(mm(n.tag)&&l){const e=iU(n.tag,b,td),r=t.createFunctionBindCall(e,l,[]);aE(r,n),vM(r,n);const i=iU(n.template,b,Gu);return t.updateTaggedTemplateExpression(n,r,void 0,i)}return fU(n,b,e)}(n);case 224:case 225:return L(n,!1);case 211:return function(n){if(mm(n)&&YC(n.name)&&l&&u){const e=t.createStringLiteralFromNode(n.name),r=t.createReflectGetCall(u,e,l);return aE(r,n.expression),vM(r,n.expression),r}return fU(n,b,e)}(n);case 212:return function(n){if(mm(n)&&l&&u){const e=iU(n.argumentExpression,b,td),r=t.createReflectGetCall(u,e,l);return aE(r,n.expression),vM(r,n.expression),r}return fU(n,b,e)}(n);case 167:return U(n);case 174:case 178:case 177:case 218:case 262:{"other"===(null==a?void 0:a.kind)?(Tn.assert(!d),a.depth++):(a={kind:"other",next:a,depth:0,savedPendingExpressions:d},d=void 0,p());const t=fU(n,x,e);return Tn.assert("other"===(null==a?void 0:a.kind),"Incorrect value for top.kind.",(()=>`Expected top.kind to be 'other' but got '${null==a?void 0:a.kind}' instead.`)),a.depth>0?(Tn.assert(!d),a.depth--):(d=a.savedPendingExpressions,a=a.next,p()),t}default:return fU(n,x,e)}}function x(e){if(170!==e.kind)return b(e)}function S(e){if(170!==e.kind)return e}function T(s){switch(s.kind){case 176:return function(e){h(e);const n=oU(e.modifiers,S,lu),r=oU(e.parameters,b,fN);let i;if(e.body&&c){const n=A(c.class,c);if(n){const r=[],o=t.copyPrologue(e.body.statements,r,!1,b),s=tB(e.body.statements,o);s.length>0?I(r,e.body.statements,o,s,0,n):(me(r,n),me(r,oU(e.body.statements,b,kd))),i=t.createBlock(r,!0),aE(i,e.body),vM(i,e.body)}}return i??(i=iU(e.body,b,OA)),g(),t.updateConstructorDeclaration(e,n,r,i)}(s);case 174:return function(e){h(e);const{modifiers:n,name:r,descriptorName:i}=P(e,c,ee);if(i)return g(),D(function(e,n,r){return e=oU(e,(e=>iN(e)?e:void 0),lu),t.createGetAccessorDeclaration(e,n,[],void 0,t.createBlock([t.createReturnStatement(t.createPropertyAccessExpression(r,t.createIdentifier("value")))]))}(n,r,i),e);{const i=oU(e.parameters,b,fN),o=iU(e.body,b,OA);return g(),D(t.updateMethodDeclaration(e,n,e.asteriskToken,r,void 0,void 0,i,void 0,o),e)}}(s);case 177:return function(e){h(e);const{modifiers:n,name:r,descriptorName:i}=P(e,c,te);if(i)return g(),D(ie(n,r,i),e);{const i=oU(e.parameters,b,fN),o=iU(e.body,b,OA);return g(),D(t.updateGetAccessorDeclaration(e,n,r,i,void 0,o),e)}}(s);case 178:return function(e){h(e);const{modifiers:n,name:r,descriptorName:i}=P(e,c,ne);if(i)return g(),D(oe(n,r,i),e);{const i=oU(e.parameters,b,fN),o=iU(e.body,b,OA);return g(),D(t.updateSetAccessorDeclaration(e,n,r,i,o),e)}}(s);case 172:return function(s){ly(s,M)&&(s=UB(e,s,O(s.initializer)));h(s),Tn.assert(!wp(s),"Not yet implemented.");const{modifiers:a,name:l,initializersName:u,extraInitializersName:d,descriptorName:_,thisArg:p}=P(s,c,Yv(s)?re:void 0);r();let f=iU(s.initializer,b,td);u&&(f=n().createRunInitializersHelper(p??t.createThis(),u,f??t.createVoidZero()));Jv(s)&&c&&f&&(c.hasStaticInitializers=!0);const m=i();$(m)&&(f=t.createImmediatelyInvokedArrowFunction([...m,t.createReturnStatement(f)]));c&&(Jv(s)?(f=Q(c,!0,f),d&&(c.pendingStaticInitializers??(c.pendingStaticInitializers=[]),c.pendingStaticInitializers.push(n().createRunInitializersHelper(c.classThis??t.createThis(),d)))):(f=Q(c,!1,f),d&&(c.pendingInstanceInitializers??(c.pendingInstanceInitializers=[]),c.pendingInstanceInitializers.push(n().createRunInitializersHelper(t.createThis(),d)))));if(g(),Yv(s)&&_){const e=xE(s),n=mE(s),r=s.name;let i=r,c=r;if(_N(r)&&!YU(r.expression)){const e=mM(r);if(e)i=t.updateComputedPropertyName(r,iU(r.expression,b,td)),c=t.updateComputedPropertyName(r,e.left);else{const e=t.createTempVariable(o);hE(e,r.expression);const n=iU(r.expression,b,td),s=t.createAssignment(e,n);hE(s,r.expression),i=t.updateComputedPropertyName(r,s),c=t.updateComputedPropertyName(r,e)}}const l=oU(a,(e=>129!==e.kind?e:void 0),lu),u=_M(t,s,l,f);aE(u,s),dE(u,3072),hE(u,n),hE(u.name,s.name);const d=ie(l,i,_);aE(d,s),SE(d,e),hE(d,n);const p=oe(l,c,_);return aE(p,s),dE(p,3072),hE(p,n),[u,d,p]}return D(t.updatePropertyDeclaration(s,a,l,void 0,void 0,f),s)}(s);case 175:return function(n){let r;if(h(n),FB(n))r=fU(n,b,e);else if(AB(n)){const t=l;l=void 0,r=fU(n,b,e),l=t}else if(r=n=fU(n,b,e),c&&(c.hasStaticInitializers=!0,$(c.pendingStaticInitializers))){const e=[];for(const r of c.pendingStaticInitializers){const n=t.createExpressionStatement(r);hE(n,mE(r)),e.push(n)}const n=t.createBlock(e,!0);r=[t.createClassStaticBlockDeclaration(n),r],c.pendingStaticInitializers=void 0}return g(),r}(s);default:return b(s)}}function w(e){switch(e.kind){case 224:case 225:return L(e,!0);case 226:return F(e,!0);case 355:return j(e,!0);case 217:return W(e,!0);default:return b(e)}}function k(e,n){return t.createUniqueName(`${function(e){let t=e.name&&YC(e.name)&&!tu(e.name)?kc(e.name):e.name&&ZC(e.name)&&!tu(e.name)?kc(e.name).slice(1):e.name&&MC(e.name)&&Aa(e.name.text,99)?e.name.text:xu(e)?"class":"member";return jd(e)&&(t=`get_${t}`),Ld(e)&&(t=`set_${t}`),e.name&&ZC(e.name)&&(t=`private_${t}`),Jv(e)&&(t=`static_${t}`),"_"+t}(e)}_${n}`,24)}function E(e,n){return t.createVariableStatement(void 0,t.createVariableDeclarationList([t.createVariableDeclaration(e,void 0,void 0,n)],1))}function C(o){r(),!LB(o)&&km(!1,o)&&(o=jB(e,o,t.createStringLiteral("")));const s=t.getLocalName(o,!1,!1,!0),a=function(e){const r=t.createUniqueName("_metadata",48);let i,o,s,a,c,l=!1,u=!1,d=!1;if(Sm(!1,e)){const n=$(e.members,(e=>(iu(e)||Tu(e))&&Wv(e)));s=t.createUniqueName("_classThis",n?24:48)}for(const _ of e.members){if(ku(_)&&Tm(!1,_,e))if(Wv(_)){if(!o){o=t.createUniqueName("_staticExtraInitializers",48);const r=n().createRunInitializersHelper(s??t.createThis(),o);hE(r,e.name??$b(e)),a??(a=[]),a.push(r)}}else{if(!i){i=t.createUniqueName("_instanceExtraInitializers",48);const r=n().createRunInitializersHelper(t.createThis(),i);hE(r,e.name??$b(e)),c??(c=[]),c.push(r)}i??(i=t.createUniqueName("_instanceExtraInitializers",48))}if(bN(_)?FB(_)||(l=!0):gN(_)&&(Wv(_)?l||(l=!!_.initializer||Xv(_)):u||(u=!wp(_))),(iu(_)||Tu(_))&&Wv(_)&&(d=!0),o&&i&&l&&u&&d)break}return{class:e,classThis:s,metadataReference:r,instanceMethodExtraInitializersName:i,staticMethodExtraInitializersName:o,hasStaticInitializers:l,hasNonAmbientInstanceFields:u,hasStaticPrivateClassElements:d,pendingStaticInitializers:a,pendingInstanceInitializers:c}}(o),c=[];let l,u,p,h,g=!1;const y=Y(cB(o));y&&(a.classDecoratorsName=t.createUniqueName("_classDecorators",48),a.classDescriptorName=t.createUniqueName("_classDescriptor",48),a.classExtraInitializersName=t.createUniqueName("_classExtraInitializers",48),Tn.assertIsDefined(a.classThis),c.push(E(a.classDecoratorsName,t.createArrayLiteralExpression(y)),E(a.classDescriptorName),E(a.classExtraInitializersName,t.createArrayLiteralExpression()),E(a.classThis)),a.hasStaticPrivateClassElements&&(g=!0,_=!0));const v=Pg(o.heritageClauses,96),x=v&&we(v.types),S=x&&iU(x.expression,b,td);if(S){a.classSuper=t.createUniqueName("_classSuper",48);const e=gP(S),n=SA(e)&&!e.name||lA(e)&&!e.name||uA(e)?t.createComma(t.createNumericLiteral(0),S):S;c.push(E(a.classSuper,n));const r=t.updateExpressionWithTypeArguments(x,a.classSuper,void 0),i=t.updateHeritageClause(v,[r]);h=t.createNodeArray([i])}const w=a.classThis??t.createThis();f(a),l=_e(l,function(e,n){const r=t.createVariableDeclaration(e,void 0,void 0,t.createConditionalExpression(t.createLogicalAnd(t.createTypeCheck(t.createIdentifier("Symbol"),"function"),t.createPropertyAccessExpression(t.createIdentifier("Symbol"),"metadata")),t.createToken(58),t.createCallExpression(t.createPropertyAccessExpression(t.createIdentifier("Object"),"create"),void 0,[n?se(n):t.createNull()]),t.createToken(59),t.createVoidZero()));return t.createVariableStatement(void 0,t.createVariableDeclarationList([r],2))}(a.metadataReference,a.classSuper));let k=o.members;if(k=oU(k,(e=>xN(e)?e:T(e)),bu),k=oU(k,(e=>xN(e)?T(e):e),bu),d){let n;for(let r of d){r=iU(r,(function r(i){return 16384&i.transformFlags?110===i.kind?(n||(n=t.createUniqueName("_outerThis",16),c.unshift(E(n,t.createThis()))),n):fU(i,r,e):i}),td);l=_e(l,t.createExpressionStatement(r))}d=void 0}if(m(),$(a.pendingInstanceInitializers)&&!yv(o)){const e=A(o,a);if(e){const n=Cg(o),r=[];if(!(!n||106===gP(n.expression).kind)){const e=t.createSpreadElement(t.createIdentifier("arguments")),n=t.createCallExpression(t.createSuper(),void 0,[e]);r.push(t.createExpressionStatement(n))}me(r,e);const i=t.createBlock(r,!0);p=t.createConstructorDeclaration(void 0,[],i)}}if(a.staticMethodExtraInitializersName&&c.push(E(a.staticMethodExtraInitializersName,t.createArrayLiteralExpression())),a.instanceMethodExtraInitializersName&&c.push(E(a.instanceMethodExtraInitializersName,t.createArrayLiteralExpression())),a.memberInfos&&f_(a.memberInfos,((e,n)=>{Jv(n)&&(c.push(E(e.memberDecoratorsName)),e.memberInitializersName&&c.push(E(e.memberInitializersName,t.createArrayLiteralExpression())),e.memberExtraInitializersName&&c.push(E(e.memberExtraInitializersName,t.createArrayLiteralExpression())),e.memberDescriptorName&&c.push(E(e.memberDescriptorName)))})),a.memberInfos&&f_(a.memberInfos,((e,n)=>{Jv(n)||(c.push(E(e.memberDecoratorsName)),e.memberInitializersName&&c.push(E(e.memberInitializersName,t.createArrayLiteralExpression())),e.memberExtraInitializersName&&c.push(E(e.memberExtraInitializersName,t.createArrayLiteralExpression())),e.memberDescriptorName&&c.push(E(e.memberDescriptorName)))})),l=me(l,a.staticNonFieldDecorationStatements),l=me(l,a.nonStaticNonFieldDecorationStatements),l=me(l,a.staticFieldDecorationStatements),l=me(l,a.nonStaticFieldDecorationStatements),a.classDescriptorName&&a.classDecoratorsName&&a.classExtraInitializersName&&a.classThis){l??(l=[]);const e=t.createPropertyAssignment("value",w),r=t.createObjectLiteralExpression([e]),i=t.createAssignment(a.classDescriptorName,r),c=t.createPropertyAccessExpression(w,"name"),u=n().createESDecorateHelper(t.createNull(),i,a.classDecoratorsName,{kind:"class",name:c,metadata:a.metadataReference},t.createNull(),a.classExtraInitializersName),d=t.createExpressionStatement(u);hE(d,$b(o)),l.push(d);const _=t.createPropertyAccessExpression(a.classDescriptorName,"value"),p=t.createAssignment(a.classThis,_),f=t.createAssignment(s,p);l.push(t.createExpressionStatement(f))}if(l.push(function(e,n){const r=t.createObjectDefinePropertyCall(e,t.createPropertyAccessExpression(t.createIdentifier("Symbol"),"metadata"),t.createPropertyDescriptor({configurable:!0,writable:!0,enumerable:!0,value:n},!0));return dE(t.createIfStatement(n,t.createExpressionStatement(r)),1)}(w,a.metadataReference)),$(a.pendingStaticInitializers)){for(const e of a.pendingStaticInitializers){const n=t.createExpressionStatement(e);hE(n,mE(e)),u=_e(u,n)}a.pendingStaticInitializers=void 0}if(a.classExtraInitializersName){const e=n().createRunInitializersHelper(w,a.classExtraInitializersName),r=t.createExpressionStatement(e);hE(r,o.name??$b(o)),u=_e(u,r)}l&&u&&!a.hasStaticInitializers&&(me(l,u),u=void 0);const C=l&&t.createClassStaticBlockDeclaration(t.createBlock(l,!0));C&&g&&pE(C,32);const N=u&&t.createClassStaticBlockDeclaration(t.createBlock(u,!0));if(C||p||N){const e=[],n=k.findIndex(FB);C?(me(e,k,0,n+1),e.push(C),me(e,k,n+1)):me(e,k),p&&e.push(p),N&&e.push(N),k=vM(t.createNodeArray(e),k)}const I=i();let D;if(y){D=t.createClassExpression(void 0,void 0,void 0,h,k),a.classThis&&(D=DB(t,D,a.classThis));const e=t.createVariableDeclaration(s,void 0,void 0,D),n=t.createVariableDeclarationList([e]),r=a.classThis?t.createAssignment(s,a.classThis):s;c.push(t.createVariableStatement(void 0,n),t.createReturnStatement(r))}else D=t.createClassExpression(void 0,o.name,void 0,h,k),c.push(t.createReturnStatement(D));if(g){fE(D,32);for(const e of D.members)(iu(e)||Tu(e))&&Wv(e)&&fE(e,32)}return aE(D,o),t.createImmediatelyInvokedArrowFunction(t.mergeLexicalEnvironment(c,I))}function N(e){return km(!1,e)||wm(!1,e)}function A(e,n){if($(n.pendingInstanceInitializers)){const e=[];return e.push(t.createExpressionStatement(t.inlineExpressions(n.pendingInstanceInitializers))),n.pendingInstanceInitializers=void 0,e}}function I(e,n,r,i,o,s){const a=i[o],c=n[a];if(me(e,oU(n,b,kd,r,a-r)),ZA(c)){const n=[];I(n,c.tryBlock.statements,0,i,o+1,s);vM(t.createNodeArray(n),c.tryBlock.statements),e.push(t.updateTryStatement(c,t.updateBlock(c.tryBlock,n),iU(c.catchClause,b,JI),iU(c.finallyBlock,b,OA)))}else me(e,oU(n,b,kd,a,1)),me(e,s);me(e,oU(n,b,kd,a+1))}function D(e,t){return e!==t&&(SE(e,t),hE(e,$b(t))),e}function P(e,r,i){let s,a,c,l,u,_;if(!r){const t=oU(e.modifiers,S,lu);return y(),a=z(e.name),v(),{modifiers:t,referencedName:s,name:a,initializersName:c,descriptorName:_,thisArg:u}}const p=Y(lB(e,r.class,!1)),f=oU(e.modifiers,S,lu);if(p){const m=k(e,"decorators"),h=t.createArrayLiteralExpression(p),g=t.createAssignment(m,h),x={memberDecoratorsName:m};r.memberInfos??(r.memberInfos=new Map),r.memberInfos.set(e,x),d??(d=[]),d.push(g);const S=ku(e)||Tu(e)?Jv(e)?r.staticNonFieldDecorationStatements??(r.staticNonFieldDecorationStatements=[]):r.nonStaticNonFieldDecorationStatements??(r.nonStaticNonFieldDecorationStatements=[]):gN(e)&&!Tu(e)?Jv(e)?r.staticFieldDecorationStatements??(r.staticFieldDecorationStatements=[]):r.nonStaticFieldDecorationStatements??(r.nonStaticFieldDecorationStatements=[]):Tn.fail(),T=SN(e)?"getter":TN(e)?"setter":vN(e)?"method":Tu(e)?"accessor":gN(e)?"field":Tn.fail();let w;if(YC(e.name)||ZC(e.name))w={computed:!1,name:e.name};else if(Xg(e.name))w={computed:!0,name:t.createStringLiteralFromNode(e.name)};else{const r=e.name.expression;Xg(r)&&!YC(r)?w={computed:!0,name:t.createStringLiteralFromNode(r)}:(y(),({referencedName:s,name:a}=function(e){if(Xg(e)||ZC(e)){return{referencedName:t.createStringLiteralFromNode(e),name:iU(e,b,du)}}if(Xg(e.expression)&&!YC(e.expression)){return{referencedName:t.createStringLiteralFromNode(e.expression),name:iU(e,b,du)}}const r=t.getGeneratedNameForNode(e);o(r);const i=n().createPropKeyHelper(iU(e.expression,b,td)),s=t.createAssignment(r,i),a=t.updateComputedPropertyName(e,G(s));return{referencedName:r,name:a}}(e.name)),w={computed:!0,name:s},v())}const E={kind:T,name:w,static:Jv(e),private:ZC(e.name),access:{get:gN(e)||SN(e)||vN(e),set:gN(e)||TN(e)},metadata:r.metadataReference};if(ku(e)){const o=Jv(e)?r.staticMethodExtraInitializersName:r.instanceMethodExtraInitializersName;let s;Tn.assertIsDefined(o),iu(e)&&i&&(s=i(e,oU(f,(e=>dt(e,eN)),lu)),x.memberDescriptorName=_=k(e,"descriptor"),s=t.createAssignment(_,s));const a=n().createESDecorateHelper(t.createThis(),s??t.createNull(),m,E,t.createNull(),o),c=t.createExpressionStatement(a);hE(c,$b(e)),S.push(c)}else if(gN(e)){let o;c=x.memberInitializersName??(x.memberInitializersName=k(e,"initializers")),l=x.memberExtraInitializersName??(x.memberExtraInitializersName=k(e,"extraInitializers")),Jv(e)&&(u=r.classThis),iu(e)&&Yv(e)&&i&&(o=i(e,void 0),x.memberDescriptorName=_=k(e,"descriptor"),o=t.createAssignment(_,o));const s=n().createESDecorateHelper(Tu(e)?t.createThis():t.createNull(),o??t.createNull(),m,E,c,l),a=t.createExpressionStatement(s);hE(a,$b(e)),S.push(a)}}return void 0===a&&(y(),a=z(e.name),v()),$(f)||!vN(e)&&!gN(e)||dE(a,1024),{modifiers:f,referencedName:s,name:a,initializersName:c,extraInitializersName:l,descriptorName:_,thisArg:u}}function M(e){return SA(e)&&!e.name&&N(e)}function O(e){const t=gP(e);return SA(t)&&!t.name&&!km(!1,t)}function F(n,r){if(Sb(n)){const e=J(n.left),r=iU(n.right,b,td);return t.updateBinaryExpression(n,e,n.operatorToken,r)}if(bb(n)){if(ly(n,M))return fU(n=UB(e,n,O(n.right)),b,e);if(mm(n.left)&&l&&u){let e=rA(n.left)?iU(n.left.argumentExpression,b,td):YC(n.left.name)?t.createStringLiteralFromNode(n.left.name):void 0;if(e){let i=iU(n.right,b,td);if(ZU(n.operatorToken.kind)){let r=e;YU(e)||(r=t.createTempVariable(o),e=t.createAssignment(r,e));const s=t.createReflectGetCall(u,r,l);aE(s,n.left),vM(s,n.left),i=t.createBinaryExpression(s,XU(n.operatorToken.kind),i),vM(i,n)}const s=r?void 0:t.createTempVariable(o);return s&&(i=t.createAssignment(s,i),vM(s,n)),i=t.createReflectSetCall(u,e,i,l),aE(i,n),vM(i,n),s&&(i=t.createComma(i,s),vM(i,n)),i}}}if(28===n.operatorToken.kind){const e=iU(n.left,w,td),i=iU(n.right,r?w:b,td);return t.updateBinaryExpression(n,e,n.operatorToken,i)}return fU(n,b,e)}function L(n,r){if(46===n.operator||47===n.operator){const e=fg(n.operand);if(mm(e)&&l&&u){let i=rA(e)?iU(e.argumentExpression,b,td):YC(e.name)?t.createStringLiteralFromNode(e.name):void 0;if(i){let e=i;YU(i)||(e=t.createTempVariable(o),i=t.createAssignment(e,i));let s=t.createReflectGetCall(u,e,l);aE(s,n),vM(s,n);const a=r?void 0:t.createTempVariable(o);return s=oP(t,n,s,o,a),s=t.createReflectSetCall(u,i,s,l),aE(s,n),vM(s,n),a&&(s=t.createComma(s,a),vM(s,n)),s}}}return fU(n,b,e)}function j(e,n){const r=n?pU(e.elements,w):pU(e.elements,b,w);return t.updateCommaListExpression(e,r)}function z(e){return _N(e)?U(e):iU(e,b,du)}function U(e){let n=iU(e.expression,b,td);return YU(n)||(n=G(n)),t.updateComputedPropertyName(e,n)}function B(n){if(tA(n)||eA(n))return J(n);if(mm(n)&&l&&u){const e=rA(n)?iU(n.argumentExpression,b,td):YC(n.name)?t.createStringLiteralFromNode(n.name):void 0;if(e){const r=t.createTempVariable(void 0),i=t.createAssignmentTargetWrapper(r,t.createReflectSetCall(u,e,r,l));return aE(i,n),vM(i,n),i}}return fU(n,b,e)}function q(n){if(bb(n,!0)){ly(n,M)&&(n=UB(e,n,O(n.right)));const r=B(n.left),i=iU(n.right,b,td);return t.updateBinaryExpression(n,r,n.operatorToken,i)}return B(n)}function V(n){return Tn.assertNode(n,qu),xA(n)?function(n){if(Qu(n.expression)){const e=B(n.expression);return t.updateSpreadElement(n,e)}return fU(n,b,e)}(n):TA(n)?fU(n,b,e):q(n)}function K(n){return Tn.assertNode(n,Uu),GI(n)?function(n){if(Qu(n.expression)){const e=B(n.expression);return t.updateSpreadAssignment(n,e)}return fU(n,b,e)}(n):HI(n)?function(t){return ly(t,M)&&(t=UB(e,t,O(t.objectAssignmentInitializer))),fU(t,b,e)}(n):WI(n)?function(n){const r=iU(n.name,b,du);if(bb(n.initializer,!0)){const e=q(n.initializer);return t.updatePropertyAssignment(n,r,e)}if(Qu(n.initializer)){const e=B(n.initializer);return t.updatePropertyAssignment(n,r,e)}return fU(n,b,e)}(n):fU(n,b,e)}function J(e){if(eA(e)){const n=oU(e.elements,V,td);return t.updateArrayLiteralExpression(e,n)}{const n=oU(e.properties,K,Iu);return t.updateObjectLiteralExpression(e,n)}}function W(e,n){const r=n?w:b,i=iU(e.expression,r,td);return t.updateParenthesizedExpression(e,i)}function H(e,n){return $(e)&&(n?cA(n)?(e.push(n.expression),n=t.updateParenthesizedExpression(n,t.inlineExpressions(e))):(e.push(n),n=t.inlineExpressions(e)):n=t.inlineExpressions(e)),n}function G(e){const t=H(d,e);return Tn.assertIsDefined(t),t!==e&&(d=void 0),t}function Q(e,t,n){const r=H(t?e.pendingStaticInitializers:e.pendingInstanceInitializers,n);return r!==n&&(t?e.pendingStaticInitializers=void 0:e.pendingInstanceInitializers=void 0),r}function Y(e){if(!e)return;const t=[];return me(t,R(e.decorators,Z)),t}function Z(e){const n=iU(e.expression,b,td);dE(n,3072);if(Bx(gP(n))){const{target:e,thisArg:r}=t.createCallBinding(n,o,s,!0);return t.restoreOuterExpressions(n,t.createFunctionBindCall(e,r,[]))}return n}function X(e,r,i,o,s,a,c){const l=t.createFunctionExpression(i,o,void 0,void 0,a,void 0,c??t.createBlock([]));aE(l,e),hE(l,$b(e)),dE(l,3072);const u="get"===s||"set"===s?s:void 0,d=t.createStringLiteralFromNode(r,void 0),_=n().createSetFunctionNameHelper(l,d,u),p=t.createPropertyAssignment(t.createIdentifier(s),_);return aE(p,e),hE(p,$b(e)),dE(p,3072),p}function ee(e,n){return t.createObjectLiteralExpression([X(e,e.name,n,e.asteriskToken,"value",oU(e.parameters,b,fN),iU(e.body,b,OA))])}function te(e,n){return t.createObjectLiteralExpression([X(e,e.name,n,void 0,"get",[],iU(e.body,b,OA))])}function ne(e,n){return t.createObjectLiteralExpression([X(e,e.name,n,void 0,"set",oU(e.parameters,b,fN),iU(e.body,b,OA))])}function re(e,n){return t.createObjectLiteralExpression([X(e,e.name,n,void 0,"get",[],t.createBlock([t.createReturnStatement(t.createPropertyAccessExpression(t.createThis(),t.getGeneratedPrivateNameForNode(e.name)))])),X(e,e.name,n,void 0,"set",[t.createParameterDeclaration(void 0,void 0,"value")],t.createBlock([t.createExpressionStatement(t.createAssignment(t.createPropertyAccessExpression(t.createThis(),t.getGeneratedPrivateNameForNode(e.name)),t.createIdentifier("value")))]))])}function ie(e,n,r){return e=oU(e,(e=>iN(e)?e:void 0),lu),t.createGetAccessorDeclaration(e,n,[],void 0,t.createBlock([t.createReturnStatement(t.createFunctionCallCall(t.createPropertyAccessExpression(r,t.createIdentifier("get")),t.createThis(),[]))]))}function oe(e,n,r){return e=oU(e,(e=>iN(e)?e:void 0),lu),t.createSetAccessorDeclaration(e,n,[t.createParameterDeclaration(void 0,void 0,"value")],t.createBlock([t.createReturnStatement(t.createFunctionCallCall(t.createPropertyAccessExpression(r,t.createIdentifier("set")),t.createThis(),[t.createIdentifier("value")]))]))}function se(e){return t.createBinaryExpression(t.createElementAccessExpression(e,t.createPropertyAccessExpression(t.createIdentifier("Symbol"),"metadata")),61,t.createNull())}}function XB(e){const{factory:t,getEmitHelperFactory:n,resumeLexicalEnvironment:r,endLexicalEnvironment:i,hoistVariableDeclaration:o}=e,s=e.getEmitResolver(),a=e.getCompilerOptions(),c=MS(a);let l,u,d,_,p,f=0;const m=[];let g=0;const y=e.onEmitNode,v=e.onSubstituteNode;return e.onEmitNode=function(e,t,n){if(1&l&&function(e){const t=e.kind;return 263===t||176===t||174===t||177===t||178===t}(t)){const r=(s.hasNodeCheckFlag(t,128)?128:0)|(s.hasNodeCheckFlag(t,256)?256:0);if(r!==f){const i=f;return f=r,y(e,t,n),void(f=i)}}else if(l&&m[Gz(t)]){const r=f;return f=0,y(e,t,n),void(f=r)}y(e,t,n)},e.onSubstituteNode=function(e,n){if(n=v(e,n),1===e&&f)return function(e){switch(e.kind){case 211:return W(e);case 212:return H(e);case 213:return function(e){const n=e.expression;if(mm(n)){const r=nA(n)?W(n):H(n);return t.createCallExpression(t.createPropertyAccessExpression(r,"call"),void 0,[t.createThis(),...e.arguments])}return e}(e)}return e}(n);return n},UU(e,(function(t){if(t.isDeclarationFile)return t;b(1,!1),b(2,!Tp(t,a));const n=fU(t,k,e);return ME(n,e.readEmitHelpers()),n}));function b(e,t){g=t?g|e:g&~e}function x(e){return!!(g&e)}function S(e,t,n){const r=e&~g;if(r){b(r,!0);const e=t(n);return b(r,!1),e}return t(n)}function T(t){return fU(t,k,e)}function w(t){switch(t.kind){case 218:case 262:case 174:case 177:case 178:case 176:return t;case 169:case 208:case 260:break;case 80:if(p&&s.isArgumentsLocalBinding(t))return p}return fU(t,w,e)}function k(n){if(!(256&n.transformFlags))return p?w(n):n;switch(n.kind){case 134:return;case 223:return function(n){if(!x(1))return fU(n,k,e);return aE(vM(t.createYieldExpression(void 0,iU(n.expression,k,td)),n),n)}(n);case 174:return S(3,N,n);case 262:return S(3,D,n);case 218:return S(3,P,n);case 219:return S(1,M,n);case 211:return d&&nA(n)&&108===n.expression.kind&&d.add(n.name.escapedText),fU(n,k,e);case 212:return d&&108===n.expression.kind&&(_=!0),fU(n,k,e);case 177:return S(3,A,n);case 178:return S(3,I,n);case 176:return S(3,C,n);case 263:case 231:return S(3,T,n);default:return fU(n,k,e)}}function E(n){if(ag(n))switch(n.kind){case 243:return function(n){if(F(n.declarationList)){const e=L(n.declarationList,!1);return e?t.createExpressionStatement(e):void 0}return fU(n,k,e)}(n);case 248:return function(n){const r=n.initializer;return t.updateForStatement(n,F(r)?L(r,!1):iU(n.initializer,k,_d),iU(n.condition,k,td),iU(n.incrementor,k,td),_U(n.statement,E,e))}(n);case 249:return function(n){return t.updateForInStatement(n,F(n.initializer)?L(n.initializer,!0):Tn.checkDefined(iU(n.initializer,k,_d)),Tn.checkDefined(iU(n.expression,k,td)),_U(n.statement,E,e))}(n);case 250:return function(n){return t.updateForOfStatement(n,iU(n.awaitModifier,k,nN),F(n.initializer)?L(n.initializer,!0):Tn.checkDefined(iU(n.initializer,k,_d)),Tn.checkDefined(iU(n.expression,k,td)),_U(n.statement,E,e))}(n);case 299:return function(t){const n=new Set;let r;if(O(t.variableDeclaration,n),n.forEach(((e,t)=>{u.has(t)&&(r||(r=new Set(u)),r.delete(t))})),r){const n=u;u=r;const i=fU(t,E,e);return u=n,i}return fU(t,E,e)}(n);case 241:case 255:case 269:case 296:case 297:case 258:case 246:case 247:case 245:case 254:case 256:return fU(n,E,e);default:return Tn.assertNever(n,"Unhandled node.")}return k(n)}function C(n){const r=p;p=void 0;const i=t.updateConstructorDeclaration(n,oU(n.modifiers,k,lu),lU(n.parameters,k,e),B(n));return p=r,i}function N(n){let r;const i=Jg(n),o=p;p=void 0;const s=t.updateMethodDeclaration(n,oU(n.modifiers,k,Cu),n.asteriskToken,n.name,void 0,void 0,r=2&i?V(n):lU(n.parameters,k,e),void 0,2&i?K(n,r):B(n));return p=o,s}function A(n){const r=p;p=void 0;const i=t.updateGetAccessorDeclaration(n,oU(n.modifiers,k,Cu),n.name,lU(n.parameters,k,e),void 0,B(n));return p=r,i}function I(n){const r=p;p=void 0;const i=t.updateSetAccessorDeclaration(n,oU(n.modifiers,k,Cu),n.name,lU(n.parameters,k,e),B(n));return p=r,i}function D(n){let r;const i=p;p=void 0;const o=Jg(n),s=t.updateFunctionDeclaration(n,oU(n.modifiers,k,Cu),n.asteriskToken,n.name,void 0,r=2&o?V(n):lU(n.parameters,k,e),void 0,2&o?K(n,r):dU(n.body,k,e));return p=i,s}function P(n){let r;const i=p;p=void 0;const o=Jg(n),s=t.updateFunctionExpression(n,oU(n.modifiers,k,lu),n.asteriskToken,n.name,void 0,r=2&o?V(n):lU(n.parameters,k,e),void 0,2&o?K(n,r):dU(n.body,k,e));return p=i,s}function M(n){let r;const i=Jg(n);return t.updateArrowFunction(n,oU(n.modifiers,k,lu),void 0,r=2&i?V(n):lU(n.parameters,k,e),void 0,n.equalsGreaterThanToken,2&i?K(n,r):dU(n.body,k,e))}function O({name:e},t){if(YC(e))t.add(e.escapedText);else for(const n of e.elements)TA(n)||O(n,t)}function F(e){return!!e&&eI(e)&&!(7&e.flags)&&e.declarations.some(U)}function L(e,n){!function(e){h(e.declarations,j)}(e);const r=hx(e);return 0===r.length?n?iU(t.converters.convertToAssignmentElementTarget(e.declarations[0].name),k,td):void 0:t.inlineExpressions(R(r,z))}function j({name:e}){if(YC(e))o(e);else for(const t of e.elements)TA(t)||j(t)}function z(e){const n=hE(t.createAssignment(t.converters.convertToAssignmentElementTarget(e.name),e.initializer),e);return Tn.checkDefined(iU(n,k,td))}function U({name:e}){if(YC(e))return u.has(e.escapedText);for(const t of e.elements)if(!TA(t)&&U(t))return!0;return!1}function B(n){Tn.assertIsDefined(n.body);const r=d,i=_;d=new Set,_=!1;let o=dU(n.body,k,e);const a=vc(n,mu);if(c>=2&&(s.hasNodeCheckFlag(n,256)||s.hasNodeCheckFlag(n,128))&&!!(3&~Jg(a))){if(J(),d.size){const e=$B(t,s,n,d);m[Gz(e)]=!0;const r=o.statements.slice();q_(r,[e]),o=t.updateBlock(o,r)}_&&(s.hasNodeCheckFlag(n,256)?PE(o,AC):s.hasNodeCheckFlag(n,128)&&PE(o,NC))}return d=r,_=i,o}function q(){Tn.assert(p);const e=t.createVariableDeclaration(p,void 0,void 0,t.createIdentifier("arguments")),n=t.createVariableStatement(void 0,[e]);return bP(n),_E(n,2097152),n}function V(n){if(gB(n.parameters))return lU(n.parameters,k,e);const r=[];for(const e of n.parameters){if(e.initializer||e.dotDotDotToken){if(219===n.kind){const e=t.createParameterDeclaration(void 0,t.createToken(26),t.createUniqueName("args",8));r.push(e)}break}const i=t.createParameterDeclaration(void 0,void 0,t.getGeneratedNameForNode(e.name,8));r.push(i)}const i=t.createNodeArray(r);return vM(i,n.parameters),i}function K(o,a){const l=gB(o.parameters)?void 0:lU(o.parameters,k,e);r();const f=vc(o,pu).type,h=c<2?function(e){const t=e&&vm(e);if(t&&uu(t)){const e=s.getTypeReferenceSerializationKind(t);if(1===e||0===e)return t}return}(f):void 0,g=219===o.kind,y=p,v=s.hasNodeCheckFlag(o,512)&&!p;let b;if(v&&(p=t.createUniqueName("arguments")),l)if(g){const e=[];Tn.assert(a.length<=o.parameters.length);for(let n=0;n<o.parameters.length;n++){Tn.assert(n<a.length);const r=o.parameters[n],i=a[n];if(Tn.assertNode(i.name,YC),r.initializer||r.dotDotDotToken){Tn.assert(n===a.length-1),e.push(t.createSpreadElement(i.name));break}e.push(i.name)}b=t.createArrayLiteralExpression(e)}else b=t.createIdentifier("arguments");const S=u;u=new Set;for(const e of o.parameters)O(e,u);const T=d,w=_;g||(d=new Set,_=!1);const C=x(2);let N=OA(A=o.body)?t.updateBlock(A,oU(A.statements,E,kd,I)):t.converters.convertToFunctionBlock(Tn.checkDefined(iU(A,E,ud)));var A,I;let D;if(N=t.updateBlock(N,t.mergeLexicalEnvironment(N.statements,i())),g){if(D=n().createAwaiterHelper(C,b,h,l,N),v){const e=t.converters.convertToFunctionBlock(D);D=t.updateBlock(e,t.mergeLexicalEnvironment(e.statements,[q()]))}}else{const e=[];e.push(t.createReturnStatement(n().createAwaiterHelper(C,b,h,l,N)));const r=c>=2&&(s.hasNodeCheckFlag(o,256)||s.hasNodeCheckFlag(o,128));if(r&&(J(),d.size)){const n=$B(t,s,o,d);m[Gz(n)]=!0,q_(e,[n])}v&&q_(e,[q()]);const i=t.createBlock(e,!0);vM(i,o.body),r&&_&&(s.hasNodeCheckFlag(o,256)?PE(i,AC):s.hasNodeCheckFlag(o,128)&&PE(i,NC)),D=i}return u=S,g||(d=T,_=w,p=y),D}function J(){1&l||(l|=1,e.enableSubstitution(213),e.enableSubstitution(211),e.enableSubstitution(212),e.enableEmitNotification(263),e.enableEmitNotification(174),e.enableEmitNotification(177),e.enableEmitNotification(178),e.enableEmitNotification(176),e.enableEmitNotification(243))}function W(e){return 108===e.expression.kind?vM(t.createPropertyAccessExpression(t.createUniqueName("_super",48),e.name),e):e}function H(e){return 108===e.expression.kind?(n=e.argumentExpression,r=e,vM(256&f?t.createPropertyAccessExpression(t.createCallExpression(t.createUniqueName("_superIndex",48),void 0,[n]),"value"):t.createCallExpression(t.createUniqueName("_superIndex",48),void 0,[n]),r)):e;var n,r}}function $B(e,t,n,r){const i=t.hasNodeCheckFlag(n,256),o=[];return r.forEach(((t,n)=>{const r=wc(n),s=[];s.push(e.createPropertyAssignment("get",e.createArrowFunction(void 0,void 0,[],void 0,void 0,dE(e.createPropertyAccessExpression(dE(e.createSuper(),8),r),8)))),i&&s.push(e.createPropertyAssignment("set",e.createArrowFunction(void 0,void 0,[e.createParameterDeclaration(void 0,void 0,"v",void 0,void 0,void 0)],void 0,void 0,e.createAssignment(dE(e.createPropertyAccessExpression(dE(e.createSuper(),8),r),8),e.createIdentifier("v"))))),o.push(e.createPropertyAssignment(r,e.createObjectLiteralExpression(s)))})),e.createVariableStatement(void 0,e.createVariableDeclarationList([e.createVariableDeclaration(e.createUniqueName("_super",48),void 0,void 0,e.createCallExpression(e.createPropertyAccessExpression(e.createIdentifier("Object"),"create"),void 0,[e.createNull(),e.createObjectLiteralExpression(o,!0)]))],2))}function eq(e){const{factory:t,getEmitHelperFactory:n,resumeLexicalEnvironment:r,endLexicalEnvironment:i,hoistVariableDeclaration:o}=e,s=e.getEmitResolver(),a=e.getCompilerOptions(),c=MS(a),l=e.onEmitNode;e.onEmitNode=function(e,t,n){if(1&d&&function(e){const t=e.kind;return 263===t||176===t||174===t||177===t||178===t}(t)){const r=(s.hasNodeCheckFlag(t,128)?128:0)|(s.hasNodeCheckFlag(t,256)?256:0);if(r!==v){const i=v;return v=r,l(e,t,n),void(v=i)}}else if(d&&x[Gz(t)]){const r=v;return v=0,l(e,t,n),void(v=r)}l(e,t,n)};const u=e.onSubstituteNode;e.onSubstituteNode=function(e,n){if(n=u(e,n),1===e&&v)return function(e){switch(e.kind){case 211:return Q(e);case 212:return Y(e);case 213:return function(e){const n=e.expression;if(mm(n)){const r=nA(n)?Q(n):Y(n);return t.createCallExpression(t.createPropertyAccessExpression(r,"call"),void 0,[t.createThis(),...e.arguments])}return e}(e)}return e}(n);return n};let d,_,p,f,m,h,g,y=!1,v=0,b=0;const x=[];return UU(e,(function(n){if(n.isDeclarationFile)return n;f=n;const r=function(n){const r=S(2,Tp(n,a)?0:1);y=!1;const i=fU(n,k,e),o=te(i.statements,m&&[t.createVariableStatement(void 0,t.createVariableDeclarationList(m))]),s=t.updateSourceFile(i,vM(t.createNodeArray(o),n.statements));return T(r),s}(n);return ME(r,e.readEmitHelpers()),f=void 0,m=void 0,r}));function S(e,t){const n=b;return b=3&(b&~e|t),n}function T(e){b=e}function w(e){m=_e(m,t.createVariableDeclaration(e))}function k(e){return I(e,!1)}function E(e){return I(e,!0)}function C(e){if(134!==e.kind)return e}function N(e,t,n,r){if(function(e,t){return b!==(b&~e|t)}(n,r)){const i=S(n,r),o=e(t);return T(i),o}return e(t)}function A(t){return fU(t,k,e)}function I(r,i){if(!(128&r.transformFlags))return r;switch(r.kind){case 223:return function(r){if(2&_&&1&_)return aE(vM(t.createYieldExpression(void 0,n().createAwaitHelper(iU(r.expression,k,td))),r),r);return fU(r,k,e)}(r);case 229:return function(r){if(2&_&&1&_){if(r.asteriskToken){const e=iU(Tn.checkDefined(r.expression),k,td);return aE(vM(t.createYieldExpression(void 0,n().createAwaitHelper(t.updateYieldExpression(r,r.asteriskToken,vM(n().createAsyncDelegatorHelper(vM(n().createAsyncValuesHelper(e),e)),e)))),r),r)}return aE(vM(t.createYieldExpression(void 0,O(r.expression?iU(r.expression,k,td):t.createVoidZero())),r),r)}return fU(r,k,e)}(r);case 253:return function(n){if(2&_&&1&_)return t.updateReturnStatement(n,O(n.expression?iU(n.expression,k,td):t.createVoidZero()));return fU(n,k,e)}(r);case 256:return function(n){if(2&_){const e=Jf(n);return 250===e.kind&&e.awaitModifier?M(e,n):t.restoreEnclosingLabel(iU(e,k,kd,t.liftToBlock),n)}return fU(n,k,e)}(r);case 210:return function(r){if(65536&r.transformFlags){const e=function(e){let n;const r=[];for(const i of e)if(305===i.kind){n&&(r.push(t.createObjectLiteralExpression(n)),n=void 0);const e=i.expression;r.push(iU(e,k,td))}else n=_e(n,303===i.kind?t.createPropertyAssignment(i.name,iU(i.initializer,k,td)):iU(i,k,Iu));n&&r.push(t.createObjectLiteralExpression(n));return r}(r.properties);e.length&&210!==e[0].kind&&e.unshift(t.createObjectLiteralExpression());let i=e[0];if(e.length>1){for(let t=1;t<e.length;t++)i=n().createAssignHelper([i,e[t]]);return i}return n().createAssignHelper(e)}return fU(r,k,e)}(r);case 226:return function(n,r){if(Sb(n)&&yM(n.left))return vB(n,k,e,1,!r);if(28===n.operatorToken.kind)return t.updateBinaryExpression(n,iU(n.left,E,td),n.operatorToken,iU(n.right,r?E:k,td));return fU(n,k,e)}(r,i);case 355:return function(n,r){if(r)return fU(n,E,e);let i;for(let e=0;e<n.elements.length;e++){const t=n.elements[e],r=iU(t,e<n.elements.length-1?E:k,td);(i||r!==t)&&(i||(i=n.elements.slice(0,e)),i.push(r))}const o=i?vM(t.createNodeArray(i),n.elements):n.elements;return t.updateCommaListExpression(n,o)}(r,i);case 299:return function(n){if(n.variableDeclaration&&Mu(n.variableDeclaration.name)&&65536&n.variableDeclaration.name.transformFlags){const r=t.getGeneratedNameForNode(n.variableDeclaration.name),i=SB(t.updateVariableDeclaration(n.variableDeclaration,n.variableDeclaration.name,void 0,void 0,r),k,e,1);let o=iU(n.block,k,OA);return $(i)&&(o=t.updateBlock(o,[t.createVariableStatement(void 0,i),...o.statements])),t.updateCatchClause(n,t.updateVariableDeclaration(n.variableDeclaration,r,void 0,void 0,void 0),o)}return fU(n,k,e)}(r);case 243:return function(t){if(Kv(t,32)){const n=y;y=!0;const r=fU(t,k,e);return y=n,r}return fU(t,k,e)}(r);case 260:return function(e){if(y){const t=y;y=!1;const n=D(e,!0);return y=t,n}return D(e,!1)}(r);case 246:case 247:case 249:return N(A,r,0,2);case 250:return M(r,void 0);case 248:return N(P,r,0,2);case 222:case 244:return function(t){return fU(t,E,e)}(r);case 176:return N(j,r,2,1);case 174:return N(B,r,2,1);case 177:return N(z,r,2,1);case 178:return N(U,r,2,1);case 262:return N(q,r,2,1);case 218:return N(K,r,2,1);case 219:return N(V,r,2,0);case 169:return R(r);case 217:return function(t,n){return fU(t,n?E:k,e)}(r,i);case 215:return function(t){return qB(e,t,k,f,w,0)}(r);case 211:return h&&nA(r)&&108===r.expression.kind&&h.add(r.name.escapedText),fU(r,k,e);case 212:return h&&108===r.expression.kind&&(g=!0),fU(r,k,e);case 263:case 231:return N(A,r,2,1);default:return fU(r,k,e)}}function D(t,n){return Mu(t.name)&&65536&t.name.transformFlags?SB(t,k,e,1,void 0,n):fU(t,k,e)}function P(n){return t.updateForStatement(n,iU(n.initializer,E,_d),iU(n.condition,k,td),iU(n.incrementor,E,td),_U(n.statement,k,e))}function M(r,i){const s=S(0,2);(65536&r.initializer.transformFlags||Ou(r.initializer)&&yM(r.initializer))&&(r=function(e){const n=fg(e.initializer);if(eI(n)||Ou(n)){let r,i;const o=t.createTempVariable(void 0),s=[eP(t,n,o)];return OA(e.statement)?(me(s,e.statement.statements),r=e.statement,i=e.statement.statements):e.statement&&(_e(s,e.statement),r=e.statement,i=e.statement),t.updateForOfStatement(e,e.awaitModifier,vM(t.createVariableDeclarationList([vM(t.createVariableDeclaration(o),e.initializer)],1),e.initializer),e.expression,vM(t.createBlock(vM(t.createNodeArray(s),i),!0),r))}return e}(r));const a=r.awaitModifier?function(r,i,s){const a=iU(r.expression,k,td),c=YC(a)?t.getGeneratedNameForNode(a):t.createTempVariable(void 0),l=YC(a)?t.getGeneratedNameForNode(c):t.createTempVariable(void 0),u=t.createTempVariable(void 0),d=t.createTempVariable(o),_=t.createUniqueName("e"),p=t.getGeneratedNameForNode(_),f=t.createTempVariable(void 0),m=vM(n().createAsyncValuesHelper(a),r.expression),h=t.createCallExpression(t.createPropertyAccessExpression(c,"next"),void 0,[]),g=t.createPropertyAccessExpression(l,"done"),y=t.createPropertyAccessExpression(l,"value"),v=t.createFunctionCallCall(f,c,[]);o(_),o(f);const b=2&s?t.inlineExpressions([t.createAssignment(_,t.createVoidZero()),m]):m,x=dE(vM(t.createForStatement(dE(vM(t.createVariableDeclarationList([t.createVariableDeclaration(u,void 0,void 0,t.createTrue()),vM(t.createVariableDeclaration(c,void 0,void 0,b),r.expression),t.createVariableDeclaration(l)]),r.expression),4194304),t.inlineExpressions([t.createAssignment(l,O(h)),t.createAssignment(d,g),t.createLogicalNot(d)]),t.createAssignment(u,t.createTrue()),function(n,r,i){const s=t.createTempVariable(o),a=t.createAssignment(s,r),c=t.createExpressionStatement(a);hE(c,n.expression);const l=t.createAssignment(i,t.createFalse()),u=t.createExpressionStatement(l);hE(u,n.expression);const d=[c,u],_=eP(t,n.initializer,s);let p,f;d.push(iU(_,k,kd));const m=_U(n.statement,k,e);OA(m)?(me(d,m.statements),p=m,f=m.statements):d.push(m);return vM(t.createBlock(vM(t.createNodeArray(d),f),!0),p)}(r,y,u)),r),512);return aE(x,r),t.createTryStatement(t.createBlock([t.restoreEnclosingLabel(x,i)]),t.createCatchClause(t.createVariableDeclaration(p),dE(t.createBlock([t.createExpressionStatement(t.createAssignment(_,t.createObjectLiteralExpression([t.createPropertyAssignment("error",p)])))]),1)),t.createBlock([t.createTryStatement(t.createBlock([dE(t.createIfStatement(t.createLogicalAnd(t.createLogicalAnd(t.createLogicalNot(u),t.createLogicalNot(d)),t.createAssignment(f,t.createPropertyAccessExpression(c,"return"))),t.createExpressionStatement(O(v))),1)]),void 0,dE(t.createBlock([dE(t.createIfStatement(_,t.createThrowStatement(t.createPropertyAccessExpression(_,"error"))),1)]),1))]))}(r,i,s):t.restoreEnclosingLabel(fU(r,k,e),i);return T(s),a}function O(e){return 1&_?t.createYieldExpression(void 0,n().createAwaitHelper(e)):t.createAwaitExpression(e)}function F(e){return Tn.assertNode(e,fN),R(e)}function R(n){return(null==p?void 0:p.has(n))?t.updateParameterDeclaration(n,void 0,n.dotDotDotToken,Mu(n.name)?t.getGeneratedNameForNode(n):n.name,void 0,void 0,void 0):65536&n.transformFlags?t.updateParameterDeclaration(n,void 0,n.dotDotDotToken,t.getGeneratedNameForNode(n),void 0,void 0,iU(n.initializer,k,td)):fU(n,k,e)}function L(e){let t;for(const n of e.parameters)t?t.add(n):65536&n.transformFlags&&(t=new Set);return t}function j(n){const r=_,i=p;_=Jg(n),p=L(n);const o=t.updateConstructorDeclaration(n,n.modifiers,lU(n.parameters,F,e),H(n));return _=r,p=i,o}function z(n){const r=_,i=p;_=Jg(n),p=L(n);const o=t.updateGetAccessorDeclaration(n,n.modifiers,iU(n.name,k,du),lU(n.parameters,F,e),void 0,H(n));return _=r,p=i,o}function U(n){const r=_,i=p;_=Jg(n),p=L(n);const o=t.updateSetAccessorDeclaration(n,n.modifiers,iU(n.name,k,du),lU(n.parameters,F,e),H(n));return _=r,p=i,o}function B(n){const r=_,i=p;_=Jg(n),p=L(n);const o=t.updateMethodDeclaration(n,1&_?oU(n.modifiers,C,Cu):n.modifiers,2&_?void 0:n.asteriskToken,iU(n.name,k,du),iU(void 0,k,WC),void 0,2&_&&1&_?J(n):lU(n.parameters,F,e),void 0,2&_&&1&_?W(n):H(n));return _=r,p=i,o}function q(n){const r=_,i=p;_=Jg(n),p=L(n);const o=t.updateFunctionDeclaration(n,1&_?oU(n.modifiers,C,lu):n.modifiers,2&_?void 0:n.asteriskToken,n.name,void 0,2&_&&1&_?J(n):lU(n.parameters,F,e),void 0,2&_&&1&_?W(n):H(n));return _=r,p=i,o}function V(n){const r=_,i=p;_=Jg(n),p=L(n);const o=t.updateArrowFunction(n,n.modifiers,void 0,lU(n.parameters,F,e),void 0,n.equalsGreaterThanToken,H(n));return _=r,p=i,o}function K(n){const r=_,i=p;_=Jg(n),p=L(n);const o=t.updateFunctionExpression(n,1&_?oU(n.modifiers,C,lu):n.modifiers,2&_?void 0:n.asteriskToken,n.name,void 0,2&_&&1&_?J(n):lU(n.parameters,F,e),void 0,2&_&&1&_?W(n):H(n));return _=r,p=i,o}function J(n){if(gB(n.parameters))return lU(n.parameters,k,e);const r=[];for(const e of n.parameters){if(e.initializer||e.dotDotDotToken)break;const n=t.createParameterDeclaration(void 0,void 0,t.getGeneratedNameForNode(e.name,8));r.push(n)}const i=t.createNodeArray(r);return vM(i,n.parameters),i}function W(o){const a=gB(o.parameters)?void 0:lU(o.parameters,k,e);r();const l=h,u=g;h=new Set,g=!1;const _=[];let p=t.updateBlock(o.body,oU(o.body.statements,k,kd));p=t.updateBlock(p,t.mergeLexicalEnvironment(p.statements,G(i(),o)));const f=t.createReturnStatement(n().createAsyncGeneratorHelper(t.createFunctionExpression(void 0,t.createToken(42),o.name&&t.getGeneratedNameForNode(o.name),void 0,a??[],void 0,p),!!(1&b))),m=c>=2&&(s.hasNodeCheckFlag(o,256)||s.hasNodeCheckFlag(o,128));if(m){1&d||(d|=1,e.enableSubstitution(213),e.enableSubstitution(211),e.enableSubstitution(212),e.enableEmitNotification(263),e.enableEmitNotification(174),e.enableEmitNotification(177),e.enableEmitNotification(178),e.enableEmitNotification(176),e.enableEmitNotification(243));const n=$B(t,s,o,h);x[Gz(n)]=!0,q_(_,[n])}_.push(f);const y=t.updateBlock(o.body,_);return m&&g&&(s.hasNodeCheckFlag(o,256)?PE(y,AC):s.hasNodeCheckFlag(o,128)&&PE(y,NC)),h=l,g=u,y}function H(e){r();let n=0;const o=[],s=iU(e.body,k,ud)??t.createBlock([]);OA(s)&&(n=t.copyPrologue(s.statements,o,!1,k)),me(o,G(void 0,e));const a=i();if(n>0||$(o)||$(a)){const e=t.converters.convertToFunctionBlock(s,!0);return q_(o,a),me(o,e.statements.slice(n)),t.updateBlock(e,vM(t.createNodeArray(o),e.statements))}return s}function G(n,r){let i=!1;for(const o of r.parameters)if(i){if(Mu(o.name)){if(o.name.elements.length>0){const r=SB(o,k,e,0,t.getGeneratedNameForNode(o));if($(r)){const e=t.createVariableDeclarationList(r),i=t.createVariableStatement(void 0,e);dE(i,2097152),n=_e(n,i)}}else if(o.initializer){const e=t.getGeneratedNameForNode(o),r=iU(o.initializer,k,td),i=t.createAssignment(e,r),s=t.createExpressionStatement(i);dE(s,2097152),n=_e(n,s)}}else if(o.initializer){const e=t.cloneNode(o.name);vM(e,o.name),dE(e,96);const r=iU(o.initializer,k,td);_E(r,3168);const i=t.createAssignment(e,r);vM(i,o),dE(i,3072);const s=t.createBlock([t.createExpressionStatement(i)]);vM(s,o),dE(s,3905);const a=t.createTypeCheck(t.cloneNode(o.name),"undefined"),c=t.createIfStatement(a,s);bP(c),vM(c,o),dE(c,2101056),n=_e(n,c)}}else if(65536&o.transformFlags){i=!0;const r=SB(o,k,e,1,t.getGeneratedNameForNode(o),!1,!0);if($(r)){const e=t.createVariableDeclarationList(r),i=t.createVariableStatement(void 0,e);dE(i,2097152),n=_e(n,i)}}return n}function Q(e){return 108===e.expression.kind?vM(t.createPropertyAccessExpression(t.createUniqueName("_super",48),e.name),e):e}function Y(e){return 108===e.expression.kind?(n=e.argumentExpression,r=e,vM(256&v?t.createPropertyAccessExpression(t.createCallExpression(t.createIdentifier("_superIndex"),void 0,[n]),"value"):t.createCallExpression(t.createIdentifier("_superIndex"),void 0,[n]),r)):e;var n,r}}function tq(e){const t=e.factory;return UU(e,(function(t){if(t.isDeclarationFile)return t;return fU(t,n,e)}));function n(r){return 64&r.transformFlags?299===r.kind?function(r){if(!r.variableDeclaration)return t.updateCatchClause(r,t.createVariableDeclaration(t.createTempVariable(void 0)),iU(r.block,n,OA));return fU(r,n,e)}(r):fU(r,n,e):r}}function nq(e){const{factory:t,hoistVariableDeclaration:n}=e;return UU(e,(function(t){if(t.isDeclarationFile)return t;return fU(t,r,e)}));function r(i){if(!(32&i.transformFlags))return i;switch(i.kind){case 213:{const e=o(i,!1);return Tn.assertNotNode(e,NI),e}case 211:case 212:if(Cl(i)){const e=a(i,!1,!1);return Tn.assertNotNode(e,NI),e}return fU(i,r,e);case 226:return 61===i.operatorToken.kind?function(e){let i=iU(e.left,r,td),o=i;QU(i)||(o=t.createTempVariable(n),i=t.createAssignment(o,i));return vM(t.createConditionalExpression(c(i,o),void 0,o,void 0,iU(e.right,r,td)),e)}(i):fU(i,r,e);case 220:return function(e){return Cl(fg(e.expression))?aE(s(e.expression,!1,!0),e):t.updateDeleteExpression(e,iU(e.expression,r,td))}(i);default:return fU(i,r,e)}}function i(e,n,r){const i=s(e.expression,n,r);return NI(i)?t.createSyntheticReferenceExpression(t.updateParenthesizedExpression(e,i.expression),i.thisArg):t.updateParenthesizedExpression(e,i)}function o(n,o){if(Cl(n))return a(n,o,!1);if(cA(n.expression)&&Cl(fg(n.expression))){const e=i(n.expression,!0,!1),o=oU(n.arguments,r,td);return NI(e)?vM(t.createFunctionCallCall(e.expression,e.thisArg,o),n):t.updateCallExpression(n,e,void 0,o)}return fU(n,r,e)}function s(e,s,c){switch(e.kind){case 217:return i(e,s,c);case 211:case 212:return function(e,i,o){if(Cl(e))return a(e,i,o);let s,c=iU(e.expression,r,td);return Tn.assertNotNode(c,NI),i&&(QU(c)?s=c:(s=t.createTempVariable(n),c=t.createAssignment(s,c))),c=211===e.kind?t.updatePropertyAccessExpression(e,c,iU(e.name,r,YC)):t.updateElementAccessExpression(e,c,iU(e.argumentExpression,r,td)),s?t.createSyntheticReferenceExpression(c,s):c}(e,s,c);case 213:return o(e,s);default:return iU(e,r,td)}}function a(e,i,o){const{expression:a,chain:l}=function(e){Tn.assertNotNode(e,Ol);const t=[e];for(;!e.questionDotToken&&!sA(e);)e=_t(Ml(e.expression),Cl),Tn.assertNotNode(e,Ol),t.unshift(e);return{expression:e.expression,chain:t}}(e),u=s(Ml(a),El(l[0]),!1);let d=NI(u)?u.thisArg:void 0,_=NI(u)?u.expression:u,p=t.restoreOuterExpressions(a,_,8);QU(_)||(_=t.createTempVariable(n),p=t.createAssignment(_,p));let f,m=_;for(let s=0;s<l.length;s++){const e=l[s];switch(e.kind){case 211:case 212:s===l.length-1&&i&&(QU(m)?f=m:(f=t.createTempVariable(n),m=t.createAssignment(f,m))),m=211===e.kind?t.createPropertyAccessExpression(m,iU(e.name,r,YC)):t.createElementAccessExpression(m,iU(e.argumentExpression,r,td));break;case 213:0===s&&d?(tu(d)||(d=t.cloneNode(d),_E(d,3072)),m=t.createFunctionCallCall(m,108===d.kind?t.createThis():d,oU(e.arguments,r,td))):m=t.createCallExpression(m,void 0,oU(e.arguments,r,td))}aE(m,e)}const h=o?t.createConditionalExpression(c(p,_,!0),void 0,t.createTrue(),void 0,t.createDeleteExpression(m)):t.createConditionalExpression(c(p,_,!0),void 0,t.createVoidZero(),void 0,m);return vM(h,e),f?t.createSyntheticReferenceExpression(h,f):h}function c(e,n,r){return t.createBinaryExpression(t.createBinaryExpression(e,t.createToken(r?37:38),t.createNull()),t.createToken(r?57:56),t.createBinaryExpression(n,t.createToken(r?37:38),t.createVoidZero()))}}function rq(e){const{hoistVariableDeclaration:t,factory:n}=e;return UU(e,(function(t){if(t.isDeclarationFile)return t;return fU(t,r,e)}));function r(i){return 16&i.transformFlags?fb(i)?function(e){const i=XU(e.operatorToken.kind);let o=fg(iU(e.left,r,Qu)),s=o;const a=fg(iU(e.right,r,td));if(Bx(o)){const e=QU(o.expression),r=e?o.expression:n.createTempVariable(t),i=e?o.expression:n.createAssignment(r,o.expression);if(nA(o))s=n.createPropertyAccessExpression(r,o.name),o=n.createPropertyAccessExpression(i,o.name);else{const e=QU(o.argumentExpression),a=e?o.argumentExpression:n.createTempVariable(t);s=n.createElementAccessExpression(r,a),o=n.createElementAccessExpression(i,e?o.argumentExpression:n.createAssignment(a,o.argumentExpression))}}return n.createBinaryExpression(o,i,n.createParenthesizedExpression(n.createAssignment(s,a)))}(i):fU(i,r,e):i}}function iq(e){const{factory:t,getEmitHelperFactory:n,hoistVariableDeclaration:r,startLexicalEnvironment:i,endLexicalEnvironment:o}=e;let s,a,c,l;return UU(e,(function(t){if(t.isDeclarationFile)return t;const n=iU(t,u,YI);return ME(n,e.readEmitHelpers()),a=void 0,s=void 0,c=void 0,n}));function u(n){if(!(4&n.transformFlags))return n;switch(n.kind){case 307:return function(n){const r=lq(n.statements);if(r){i(),s=new HU,a=[];const e=oq(n.statements),c=[];me(c,sU(n.statements,u,kd,0,e));let _=e;for(;_<n.statements.length;){if(0!==cq(n.statements[_])){_>e&&me(c,oU(n.statements,u,kd,e,_-e));break}_++}Tn.assert(_<n.statements.length,"Should have encountered at least one 'using' statement.");const p=m(),f=d(n.statements,_,n.statements.length,p,c);return s.size&&_e(c,t.createExportDeclaration(void 0,!1,t.createNamedExports(Ke(s.values())))),me(c,o()),a.length&&c.push(t.createVariableStatement(t.createModifiersFromModifierFlags(32),t.createVariableDeclarationList(a,1))),me(c,h(f,p,2===r)),l&&c.push(t.createExportAssignment(void 0,!0,l)),t.updateSourceFile(n,c)}return fU(n,u,e)}(n);case 241:return function(n){const r=lq(n.statements);if(r){const e=oq(n.statements),i=m();return t.updateBlock(n,[...sU(n.statements,u,kd,0,e),...h(d(n.statements,e,n.statements.length,i,void 0),i,2===r)])}return fU(n,u,e)}(n);case 248:return function(n){if(n.initializer&&sq(n.initializer))return iU(t.createBlock([t.createVariableStatement(void 0,n.initializer),t.updateForStatement(n,void 0,n.condition,n.incrementor,n.statement)]),u,kd);return fU(n,u,e)}(n);case 250:return function(n){if(sq(n.initializer)){const e=n.initializer,r=we(e.declarations)||t.createVariableDeclaration(t.createTempVariable(void 0)),i=2===aq(e),o=t.getGeneratedNameForNode(r.name),s=t.updateVariableDeclaration(r,r.name,void 0,void 0,o),a=t.createVariableDeclarationList([s],i?6:4),c=t.createVariableStatement(void 0,a);return iU(t.updateForOfStatement(n,n.awaitModifier,t.createVariableDeclarationList([t.createVariableDeclaration(o)],2),n.expression,OA(n.statement)?t.updateBlock(n.statement,[c,...n.statement.statements]):t.createBlock([c,n.statement],!0)),u,kd)}return fU(n,u,e)}(n);case 255:return function(n){const r=function(e){let t=0;for(const n of e){const e=lq(n.statements);if(2===e)return 2;e>t&&(t=e)}return t}(n.caseBlock.clauses);if(r){const i=m();return h([t.updateSwitchStatement(n,iU(n.expression,u,td),t.updateCaseBlock(n.caseBlock,n.caseBlock.clauses.map((n=>function(n,r){if(0!==lq(n.statements))return qI(n)?t.updateCaseClause(n,iU(n.expression,u,td),d(n.statements,0,n.statements.length,r,void 0)):t.updateDefaultClause(n,d(n.statements,0,n.statements.length,r,void 0));return fU(n,u,e)}(n,i)))))],i,2===r)}return fU(n,u,e)}(n);default:return fU(n,u,e)}}function d(i,o,s,a,d){const m=[];for(let r=o;r<s;r++){const o=i[r],s=cq(o);if(s){Tn.assertNode(o,FA);const r=[];for(let i of o.declarationList.declarations){if(!YC(i.name)){r.length=0;break}ly(i)&&(i=UB(e,i));const o=iU(i.initializer,u,td)??t.createVoidZero();r.push(t.updateVariableDeclaration(i,i.name,void 0,void 0,n().createAddDisposableResourceHelper(a,o,2===s)))}if(r.length){const e=t.createVariableDeclarationList(r,2);aE(e,o.declarationList),vM(e,o.declarationList),h(t.updateVariableStatement(o,void 0,e));continue}}const c=u(o);at(c)?c.forEach(h):c&&h(c)}return m;function h(n){Tn.assertNode(n,kd),_e(m,function(n){if(!d)return n;switch(n.kind){case 272:case 271:case 278:case 262:return function(e,t){return void t.push(e)}(n,d);case 277:return function(n){return n.isExportEquals?function(e){if(l)return e;l=t.createUniqueName("_default",56),r(l);const n=t.createAssignment(l,e.expression);return t.createExpressionStatement(n)}(n):function(n){if(c)return n;c=t.createUniqueName("_default",56),f(c,!0,"default",n);let r=n.expression,i=gP(r);ly(i)&&(i=UB(e,i,!1,"default"),r=t.restoreOuterExpressions(r,i));const o=t.createAssignment(c,r);return t.createExpressionStatement(o)}(n)}(n);case 263:return function(n){if(!n.name&&c)return n;const r=Kv(n,32),i=Kv(n,2048);let o=t.converters.convertToClassExpression(n);n.name&&(f(t.getLocalName(n),r&&!i,void 0,n),o=t.createAssignment(t.getDeclarationName(n),o),ly(o)&&(o=UB(e,o,!1)),aE(o,n),hE(o,n),SE(o,n));i&&!c&&(c=t.createUniqueName("_default",56),f(c,!0,"default",n),o=t.createAssignment(c,o),ly(o)&&(o=UB(e,o,!1,"default")),aE(o,n));return t.createExpressionStatement(o)}(n);case 243:return function(e){let n;const r=Kv(e,32);for(const t of e.declarationList.declarations)p(t,r,t),t.initializer&&(n=_e(n,_(t)));if(n){const r=t.createExpressionStatement(t.inlineExpressions(n));return aE(r,e),SE(r,e),hE(r,e),r}return}(n)}return n}(n))}}function _(e){let n;Tn.assertIsDefined(e.initializer),YC(e.name)?(n=t.cloneNode(e.name),dE(n,-114689&rp(n))):n=t.converters.convertToAssignmentPattern(e.name);const r=t.createAssignment(n,e.initializer);return aE(r,e),SE(r,e),hE(r,e),r}function p(e,t,n){if(Mu(e.name))for(const r of e.name.elements)TA(r)||p(r,t,n);else f(e.name,t,void 0,n)}function f(e,n,i,o){const c=tu(e)?e:t.cloneNode(e);if(n){if(void 0===i&&!aP(c)){const e=t.createVariableDeclaration(c);return o&&aE(e,o),void a.push(e)}const e=void 0!==i?c:void 0,n=void 0!==i?i:c,r=t.createExportSpecifier(!1,e,n);o&&aE(r,o),s.set(c,r)}r(c)}function m(){return t.createUniqueName("env")}function h(e,r,i){const o=[],s=t.createObjectLiteralExpression([t.createPropertyAssignment("stack",t.createArrayLiteralExpression()),t.createPropertyAssignment("error",t.createVoidZero()),t.createPropertyAssignment("hasError",t.createFalse())]),a=t.createVariableDeclaration(r,void 0,void 0,s),c=t.createVariableDeclarationList([a],2),l=t.createVariableStatement(void 0,c);o.push(l);const u=t.createBlock(e,!0),d=t.createUniqueName("e"),_=t.createCatchClause(d,t.createBlock([t.createExpressionStatement(t.createAssignment(t.createPropertyAccessExpression(r,"error"),d)),t.createExpressionStatement(t.createAssignment(t.createPropertyAccessExpression(r,"hasError"),t.createTrue()))],!0));let p;if(i){const e=t.createUniqueName("result");p=t.createBlock([t.createVariableStatement(void 0,t.createVariableDeclarationList([t.createVariableDeclaration(e,void 0,void 0,n().createDisposeResourcesHelper(r))],2)),t.createIfStatement(e,t.createExpressionStatement(t.createAwaitExpression(e)))],!0)}else p=t.createBlock([t.createExpressionStatement(n().createDisposeResourcesHelper(r))],!0);const f=t.createTryStatement(u,_,p);return o.push(f),o}}function oq(e){for(let t=0;t<e.length;t++)if(!yf(e[t])&&!vf(e[t]))return t;return 0}function sq(e){return eI(e)&&0!==aq(e)}function aq(e){return 6==(7&e.flags)?2:4==(7&e.flags)?1:0}function cq(e){return FA(e)?aq(e.declarationList):0}function lq(e){let t=0;for(const n of e){const e=cq(n);if(2===e)return 2;e>t&&(t=e)}return t}function uq(e){const{factory:t,getEmitHelperFactory:n}=e,r=e.getCompilerOptions();let i,o;return UU(e,(function(n){if(n.isDeclarationFile)return n;i=n,o={},o.importSpecifier=cT(r,n);let s=fU(n,l,e);ME(s,e.readEmitHelpers());let a=s.statements;o.filenameDeclaration&&(a=J_(a.slice(),t.createVariableStatement(void 0,t.createVariableDeclarationList([o.filenameDeclaration],2))));if(o.utilizedImplicitRuntimeImports)for(const[e,r]of Ke(o.utilizedImplicitRuntimeImports.entries()))if(tO(n)){const n=t.createImportDeclaration(void 0,t.createImportClause(!1,void 0,t.createNamedImports(Ke(r.values()))),t.createStringLiteral(e),void 0);Vw(n,!1),a=J_(a.slice(),n)}else if(of(n)){const n=t.createVariableStatement(void 0,t.createVariableDeclarationList([t.createVariableDeclaration(t.createObjectBindingPattern(Ke(r.values(),(e=>t.createBindingElement(void 0,e.propertyName,e.name)))),void 0,void 0,t.createCallExpression(t.createIdentifier("require"),void 0,[t.createStringLiteral(e)]))],2));Vw(n,!1),a=J_(a.slice(),n)}a!==s.statements&&(s=t.updateSourceFile(s,a));return o=void 0,s}));function s(){if(o.filenameDeclaration)return o.filenameDeclaration.name;const e=t.createVariableDeclaration(t.createUniqueName("_jsxFileName",48),void 0,void 0,t.createStringLiteral(i.fileName));return o.filenameDeclaration=e,o.filenameDeclaration.name}function a(e){const t=function(e){return 5===r.jsx?"jsxDEV":e?"jsxs":"jsx"}(e);return c(t)}function c(e){var n,i;const s="createElement"===e?o.importSpecifier:lT(o.importSpecifier,r),a=null==(i=null==(n=o.utilizedImplicitRuntimeImports)?void 0:n.get(s))?void 0:i.get(e);if(a)return a.name;o.utilizedImplicitRuntimeImports||(o.utilizedImplicitRuntimeImports=new Map);let c=o.utilizedImplicitRuntimeImports.get(s);c||(c=new Map,o.utilizedImplicitRuntimeImports.set(s,c));const l=t.createUniqueName(`_${e}`,112),u=t.createImportSpecifier(!1,t.createIdentifier(e),l);return WE(l,u),c.set(e,u),l}function l(t){return 2&t.transformFlags?function(t){switch(t.kind){case 284:return f(t,!1);case 285:return h(t,!1);case 288:return g(t,!1);case 294:return D(t);default:return fU(t,l,e)}}(t):t}function u(e){switch(e.kind){case 12:return function(e){const n=function(e){let t,n=0,r=-1;for(let i=0;i<e.length;i++){const o=e.charCodeAt(i);ia(o)?(-1!==n&&-1!==r&&(t=N(t,e.substr(n,r-n+1))),n=-1):ra(o)||(r=i,-1===n&&(n=i))}return-1!==n?N(t,e.substr(n)):t}(e.text);return void 0===n?void 0:t.createStringLiteral(n)}(e);case 294:return D(e);case 284:return f(e,!0);case 285:return h(e,!0);case 288:return g(e,!0);default:return Tn.failBadSyntaxKind(e)}}function d(e){return e.properties.some((e=>WI(e)&&(YC(e.name)&&"__proto__"===kc(e.name)||MC(e.name)&&"__proto__"===e.name.text)))}function p(e){return void 0===o.importSpecifier||function(e){let t=!1;for(const n of e.attributes.properties)if(!zI(n)||tA(n.expression)&&!n.expression.properties.some(GI)){if(t&&LI(n)&&YC(n.name)&&"key"===n.name.escapedText)return!0}else t=!0;return!1}(e)}function f(e,t){return(p(e.openingElement)?x:v)(e.openingElement,e.children,t,e)}function h(e,t){return(p(e)?x:v)(e,void 0,t,e)}function g(e,t){return(void 0===o.importSpecifier?T:S)(e.openingFragment,e.children,t,e)}function y(e){const n=wy(e);if(1===m(n)&&!n[0].dotDotDotToken){const e=u(n[0]);return e&&t.createPropertyAssignment("children",e)}const r=J(e,u);return m(r)?t.createPropertyAssignment("children",t.createArrayLiteralExpression(r)):void 0}function v(e,n,r,i){const o=I(e),s=n&&n.length?y(n):void 0,a=w(e.attributes.properties,(e=>!!e.name&&YC(e.name)&&"key"===e.name.escapedText)),c=a?M(e.attributes.properties,(e=>e!==a)):e.attributes.properties;return b(o,m(c)?k(c,s):t.createObjectLiteralExpression(s?[s]:_),a,n||_,r,i)}function b(e,n,o,c,l,u){var d;const _=wy(c),p=m(_)>1||!!(null==(d=_[0])?void 0:d.dotDotDotToken),f=[e,n];if(o&&f.push(C(o.initializer)),5===r.jsx){const e=vc(i);if(e&&YI(e)){void 0===o&&f.push(t.createVoidZero()),f.push(p?t.createTrue():t.createFalse());const n=ta(e,u.pos);f.push(t.createObjectLiteralExpression([t.createPropertyAssignment("fileName",s()),t.createPropertyAssignment("lineNumber",t.createNumericLiteral(n.line+1)),t.createPropertyAssignment("columnNumber",t.createNumericLiteral(n.character+1))])),f.push(t.createThis())}}const h=vM(t.createCallExpression(a(p),void 0,f),u);return l&&bP(h),h}function x(n,s,a,l){const d=I(n),_=n.attributes.properties,p=m(_)?k(_):t.createNull(),f=void 0===o.importSpecifier?ZD(t,e.getEmitResolver().getJsxFactoryEntity(i),r.reactNamespace,n):c("createElement"),h=XD(t,f,d,p,J(s,u),l);return a&&bP(h),h}function S(e,n,r,i){let o;if(n&&n.length){const e=function(e){const n=y(e);return n&&t.createObjectLiteralExpression([n])}(n);e&&(o=e)}return b(c("Fragment"),o||t.createObjectLiteralExpression([]),void 0,n,r,i)}function T(n,o,s,a){const c=$D(t,e.getEmitResolver().getJsxFactoryEntity(i),e.getEmitResolver().getJsxFragmentFactoryEntity(i),r.reactNamespace,J(o,u),n,a);return s&&bP(c),c}function k(e,i){const o=MS(r);return o&&o>=5?t.createObjectLiteralExpression(function(e,n){const r=z(Z(e,zI,((e,n)=>z(R(e,(e=>{return n?tA((r=e).expression)&&!d(r.expression)?j(r.expression.properties,(e=>Tn.checkDefined(iU(e,l,Iu)))):t.createSpreadAssignment(Tn.checkDefined(iU(r.expression,l,td))):E(e);var r}))))));n&&r.push(n);return r}(e,i)):function(e,r){const i=[];let o=[];for(const t of e)if(zI(t)){if(tA(t.expression)&&!d(t.expression)){for(const e of t.expression.properties)GI(e)?(s(),i.push(Tn.checkDefined(iU(e.expression,l,td)))):o.push(Tn.checkDefined(iU(e,l)));continue}s(),i.push(Tn.checkDefined(iU(t.expression,l,td)))}else o.push(E(t));r&&o.push(r);s(),i.length&&!tA(i[0])&&i.unshift(t.createObjectLiteralExpression());return Ie(i)||n().createAssignHelper(i);function s(){o.length&&(i.push(t.createObjectLiteralExpression(o)),o=[])}}(e,i)}function E(e){const n=function(e){const n=e.name;if(YC(n)){const e=kc(n);return/^[A-Za-z_]\w*$/.test(e)?n:t.createStringLiteral(e)}return t.createStringLiteral(kc(n.namespace)+":"+kc(n.name))}(e),r=C(e.initializer);return t.createPropertyAssignment(n,r)}function C(e){if(void 0===e)return t.createTrue();if(11===e.kind){const n=void 0!==e.singleQuote?e.singleQuote:!Xm(e,i);return vM(t.createStringLiteral(function(e){const t=A(e);return t===e?void 0:t}(e.text)||e.text,n),e)}return 294===e.kind?void 0===e.expression?t.createTrue():Tn.checkDefined(iU(e.expression,l,td)):II(e)?f(e,!1):DI(e)?h(e,!1):OI(e)?g(e,!1):Tn.failBadSyntaxKind(e)}function N(e,t){const n=A(t);return void 0===e?n:e+" "+n}function A(e){return e.replace(/&((#((\d+)|x([\da-fA-F]+)))|(\w+));/g,((e,t,n,r,i,o,s)=>{if(i)return Oa(parseInt(i,10));if(o)return Oa(parseInt(o,16));{const t=dq.get(s);return t?Oa(t):e}}))}function I(e){if(284===e.kind)return I(e.openingElement);{const n=e.tagName;return YC(n)&&Jy(n.escapedText)?t.createStringLiteral(kc(n)):BI(n)?t.createStringLiteral(kc(n.namespace)+":"+kc(n.name)):nP(t,n)}}function D(e){const n=iU(e.expression,l,td);return e.dotDotDotToken?t.createSpreadElement(n):n}}var dq=new Map(Object.entries({quot:34,amp:38,apos:39,lt:60,gt:62,nbsp:160,iexcl:161,cent:162,pound:163,curren:164,yen:165,brvbar:166,sect:167,uml:168,copy:169,ordf:170,laquo:171,not:172,shy:173,reg:174,macr:175,deg:176,plusmn:177,sup2:178,sup3:179,acute:180,micro:181,para:182,middot:183,cedil:184,sup1:185,ordm:186,raquo:187,frac14:188,frac12:189,frac34:190,iquest:191,Agrave:192,Aacute:193,Acirc:194,Atilde:195,Auml:196,Aring:197,AElig:198,Ccedil:199,Egrave:200,Eacute:201,Ecirc:202,Euml:203,Igrave:204,Iacute:205,Icirc:206,Iuml:207,ETH:208,Ntilde:209,Ograve:210,Oacute:211,Ocirc:212,Otilde:213,Ouml:214,times:215,Oslash:216,Ugrave:217,Uacute:218,Ucirc:219,Uuml:220,Yacute:221,THORN:222,szlig:223,agrave:224,aacute:225,acirc:226,atilde:227,auml:228,aring:229,aelig:230,ccedil:231,egrave:232,eacute:233,ecirc:234,euml:235,igrave:236,iacute:237,icirc:238,iuml:239,eth:240,ntilde:241,ograve:242,oacute:243,ocirc:244,otilde:245,ouml:246,divide:247,oslash:248,ugrave:249,uacute:250,ucirc:251,uuml:252,yacute:253,thorn:254,yuml:255,OElig:338,oelig:339,Scaron:352,scaron:353,Yuml:376,fnof:402,circ:710,tilde:732,Alpha:913,Beta:914,Gamma:915,Delta:916,Epsilon:917,Zeta:918,Eta:919,Theta:920,Iota:921,Kappa:922,Lambda:923,Mu:924,Nu:925,Xi:926,Omicron:927,Pi:928,Rho:929,Sigma:931,Tau:932,Upsilon:933,Phi:934,Chi:935,Psi:936,Omega:937,alpha:945,beta:946,gamma:947,delta:948,epsilon:949,zeta:950,eta:951,theta:952,iota:953,kappa:954,lambda:955,mu:956,nu:957,xi:958,omicron:959,pi:960,rho:961,sigmaf:962,sigma:963,tau:964,upsilon:965,phi:966,chi:967,psi:968,omega:969,thetasym:977,upsih:978,piv:982,ensp:8194,emsp:8195,thinsp:8201,zwnj:8204,zwj:8205,lrm:8206,rlm:8207,ndash:8211,mdash:8212,lsquo:8216,rsquo:8217,sbquo:8218,ldquo:8220,rdquo:8221,bdquo:8222,dagger:8224,Dagger:8225,bull:8226,hellip:8230,permil:8240,prime:8242,Prime:8243,lsaquo:8249,rsaquo:8250,oline:8254,frasl:8260,euro:8364,image:8465,weierp:8472,real:8476,trade:8482,alefsym:8501,larr:8592,uarr:8593,rarr:8594,darr:8595,harr:8596,crarr:8629,lArr:8656,uArr:8657,rArr:8658,dArr:8659,hArr:8660,forall:8704,part:8706,exist:8707,empty:8709,nabla:8711,isin:8712,notin:8713,ni:8715,prod:8719,sum:8721,minus:8722,lowast:8727,radic:8730,prop:8733,infin:8734,ang:8736,and:8743,or:8744,cap:8745,cup:8746,int:8747,there4:8756,sim:8764,cong:8773,asymp:8776,ne:8800,equiv:8801,le:8804,ge:8805,sub:8834,sup:8835,nsub:8836,sube:8838,supe:8839,oplus:8853,otimes:8855,perp:8869,sdot:8901,lceil:8968,rceil:8969,lfloor:8970,rfloor:8971,lang:9001,rang:9002,loz:9674,spades:9824,clubs:9827,hearts:9829,diams:9830}));function _q(e){const{factory:t,hoistVariableDeclaration:n}=e;return UU(e,(function(t){if(t.isDeclarationFile)return t;return fU(t,r,e)}));function r(i){return 512&i.transformFlags?226===i.kind?function(i){switch(i.operatorToken.kind){case 68:return function(e){let i,o;const s=iU(e.left,r,td),a=iU(e.right,r,td);if(rA(s)){const e=t.createTempVariable(n),r=t.createTempVariable(n);i=vM(t.createElementAccessExpression(vM(t.createAssignment(e,s.expression),s.expression),vM(t.createAssignment(r,s.argumentExpression),s.argumentExpression)),s),o=vM(t.createElementAccessExpression(e,r),s)}else if(nA(s)){const e=t.createTempVariable(n);i=vM(t.createPropertyAccessExpression(vM(t.createAssignment(e,s.expression),s.expression),s.name),s),o=vM(t.createPropertyAccessExpression(e,s.name),s)}else i=s,o=s;return vM(t.createAssignment(i,vM(t.createGlobalMethodCall("Math","pow",[o,a]),e)),e)}(i);case 43:return function(e){const n=iU(e.left,r,td),i=iU(e.right,r,td);return vM(t.createGlobalMethodCall("Math","pow",[n,i]),e)}(i);default:return fU(i,r,e)}}(i):fU(i,r,e):i}}function pq(e,t){return{kind:e,expression:t}}function fq(e){const{factory:t,getEmitHelperFactory:n,startLexicalEnvironment:r,resumeLexicalEnvironment:i,endLexicalEnvironment:o,hoistVariableDeclaration:s}=e,a=e.getCompilerOptions(),c=e.getEmitResolver(),l=e.onSubstituteNode,u=e.onEmitNode;let d,_,p,f,m,h;function g(e){f=_e(f,t.createVariableDeclaration(e))}return e.onEmitNode=function(e,t,n){if(1&h&&pu(t)){const r=y(32670,16&rp(t)?81:65);return u(e,t,n),void v(r,0,0)}u(e,t,n)},e.onSubstituteNode=function(e,n){if(n=l(e,n),1===e)return function(e){switch(e.kind){case 80:return function(e){if(2&h&&!sP(e)){const n=c.getReferencedDeclarationWithCollidingName(e);if(n&&(!xu(n)||!function(e,t){let n=Sc(t);if(!n||n===e||n.end<=e.pos||n.pos>=e.end)return!1;const r=Fp(e);for(;n;){if(n===r||n===e)return!1;if(bu(n)&&n.parent===e)return!0;n=n.parent}return!1}(n,e)))return vM(t.getGeneratedNameForNode(Oc(n)),e)}return e}(e);case 110:return function(e){if(1&h&&16&p)return vM(A(),e);return e}(e)}return e}(n);if(YC(n))return function(e){if(2&h&&!sP(e)){const n=Sc(e,YC);if(n&&function(e){switch(e.parent.kind){case 208:case 263:case 266:case 260:return e.parent.name===e&&c.isDeclarationWithCollidingName(e.parent)}return!1}(n))return vM(t.getGeneratedNameForNode(n),e)}return e}(n);return n},UU(e,(function(n){if(n.isDeclarationFile)return n;d=n,_=n.text;const i=function(e){const n=y(8064,64),i=[],s=[];r();const a=t.copyPrologue(e.statements,i,!1,S);me(s,oU(e.statements,S,kd,a)),f&&s.push(t.createVariableStatement(void 0,t.createVariableDeclarationList(f)));return t.mergeLexicalEnvironment(i,o()),oe(i,e),v(n,0,0),t.updateSourceFile(e,vM(t.createNodeArray(te(i,s)),e.statements))}(n);return ME(i,e.readEmitHelpers()),d=void 0,_=void 0,f=void 0,p=0,i}));function y(e,t){const n=p;return p=32767&(p&~e|t),n}function v(e,t,n){p=-32768&(p&~t|n)|e}function b(e){return!!(8192&p)&&253===e.kind&&!e.expression}function x(e){return!!(1024&e.transformFlags)||void 0!==m||8192&p&&function(e){return 4194304&e.transformFlags&&(WA(e)||jA(e)||HA(e)||GA(e)||cI(e)||qI(e)||VI(e)||ZA(e)||JI(e)||QA(e)||id(e,!1)||OA(e))}(e)||id(e,!1)&&qe(e)||!!(1&ip(e))}function S(e){return x(e)?C(e,!1):e}function w(e){return x(e)?C(e,!0):e}function k(e){if(x(e)){const t=vc(e);if(gN(t)&&Wv(t)){const t=y(32670,16449),n=C(e,!1);return v(t,229376,0),n}return C(e,!1)}return e}function E(e){return 108===e.kind?at(e,!0):S(e)}function C(n,r){switch(n.kind){case 126:return;case 263:return function(e){const n=t.createVariableDeclaration(t.getLocalName(e,!0),void 0,void 0,D(e));aE(n,e);const r=[],i=t.createVariableStatement(void 0,t.createVariableDeclarationList([n]));if(aE(i,e),vM(i,e),bP(i),r.push(i),Kv(e,32)){const n=Kv(e,2048)?t.createExportDefault(t.getLocalName(e)):t.createExternalModuleExport(t.getLocalName(e));aE(n,i),r.push(n)}return Pe(r)}(n);case 231:return function(e){return D(e)}(n);case 169:return function(e){return e.dotDotDotToken?void 0:Mu(e.name)?aE(vM(t.createParameterDeclaration(void 0,void 0,t.getGeneratedNameForNode(e),void 0,void 0,void 0),e),e):e.initializer?aE(vM(t.createParameterDeclaration(void 0,void 0,e.name,void 0,void 0,void 0),e),e):e}(n);case 262:return function(n){const r=m;m=void 0;const i=y(32670,65),o=lU(n.parameters,S,e),s=he(n),a=32768&p?t.getLocalName(n):n.name;return v(i,229376,0),m=r,t.updateFunctionDeclaration(n,oU(n.modifiers,S,lu),n.asteriskToken,a,void 0,o,void 0,s)}(n);case 219:return function(n){16384&n.transformFlags&&!(16384&p)&&(p|=131072);const r=m;m=void 0;const i=y(15232,66),o=t.createFunctionExpression(void 0,void 0,void 0,void 0,lU(n.parameters,S,e),void 0,he(n));return vM(o,n),aE(o,n),dE(o,16),v(i,0,0),m=r,o}(n);case 218:return function(n){const r=524288&rp(n)?y(32662,69):y(32670,65),i=m;m=void 0;const o=lU(n.parameters,S,e),s=he(n),a=32768&p?t.getLocalName(n):n.name;return v(r,229376,0),m=i,t.updateFunctionExpression(n,void 0,n.asteriskToken,a,void 0,o,void 0,s)}(n);case 260:return ve(n);case 80:return I(n);case 261:return function(n){if(7&n.flags||524288&n.transformFlags){7&n.flags&&ct();const e=oU(n.declarations,1&n.flags?ye:ve,$A),r=t.createVariableDeclarationList(e);return aE(r,n),vM(r,n),SE(r,n),524288&n.transformFlags&&(Mu(n.declarations[0].name)||Mu(Ae(n.declarations).name))&&hE(r,function(e){let t=-1,n=-1;for(const r of e)t=-1===t?r.pos:-1===r.pos?t:Math.min(t,r.pos),n=Math.max(n,r.end);return Yb(t,n)}(e)),r}return fU(n,S,e)}(n);case 255:return function(t){if(void 0!==m){const n=m.allowedNonLabeledJumps;m.allowedNonLabeledJumps|=2;const r=fU(t,S,e);return m.allowedNonLabeledJumps=n,r}return fU(t,S,e)}(n);case 269:return function(t){const n=y(7104,0),r=fU(t,S,e);return v(n,0,0),r}(n);case 241:return function(t,n){if(n)return fU(t,S,e);const r=256&p?y(7104,512):y(6976,128),i=fU(t,S,e);return v(r,0,0),i}(n,!1);case 252:case 251:return function(n){if(m){const e=252===n.kind?2:4;if(!(n.label&&m.labels&&m.labels.get(kc(n.label))||!n.label&&m.allowedNonLabeledJumps&e)){let e;const r=n.label;r?252===n.kind?(e=`break-${r.escapedText}`,Qe(m,!0,kc(r),e)):(e=`continue-${r.escapedText}`,Qe(m,!1,kc(r),e)):252===n.kind?(m.nonLocalJumps|=2,e="break"):(m.nonLocalJumps|=4,e="continue");let i=t.createStringLiteral(e);if(m.loopOutParameters.length){const e=m.loopOutParameters;let n;for(let r=0;r<e.length;r++){const i=He(e[r],1);n=0===r?i:t.createBinaryExpression(n,28,i)}i=t.createBinaryExpression(n,28,i)}return t.createReturnStatement(i)}}return fU(n,S,e)}(n);case 256:return function(e){m&&!m.labels&&(m.labels=new Map);const n=Jf(e,m&&be);return id(n,!1)?function(e,t){switch(e.kind){case 246:case 247:return ke(e,t);case 248:return Ce(e,t);case 249:return De(e,t);case 250:return Me(e,t)}}(n,e):t.restoreEnclosingLabel(Tn.checkDefined(iU(n,S,kd,t.liftToBlock)),e,m&&xe)}(n);case 246:case 247:return ke(n,void 0);case 248:return Ce(n,void 0);case 249:return De(n,void 0);case 250:return Me(n,void 0);case 244:case 222:return function(t){return fU(t,w,e)}(n);case 210:return function(n){const r=n.properties;let i=-1,o=!1;for(let e=0;e<r.length;e++){const t=r[e];if(1048576&t.transformFlags&&4&p||(o=167===Tn.checkDefined(t.name).kind)){i=e;break}}if(i<0)return fU(n,S,e);const a=t.createTempVariable(s),c=[],l=t.createAssignment(a,dE(t.createObjectLiteralExpression(oU(r,S,Iu,0,i),n.multiLine),o?131072:0));n.multiLine&&bP(l);return c.push(l),function(e,t,n,r){const i=t.properties,o=i.length;for(let s=r;s<o;s++){const r=i[s];switch(r.kind){case 177:case 178:const i=Cv(t.properties,r);r===i.firstAccessor&&e.push(pe(n,i,t,!!t.multiLine));break;case 174:e.push(et(r,n,t,t.multiLine));break;case 303:e.push(Xe(r,n,t.multiLine));break;case 304:e.push($e(r,n,t.multiLine));break;default:Tn.failBadSyntaxKind(t)}}}(c,n,a,i),c.push(n.multiLine?bP(Bw(vM(t.cloneNode(a),a),a.parent)):a),t.inlineExpressions(c)}(n);case 299:return function(n){const r=y(7104,0);let i;if(Tn.assert(!!n.variableDeclaration,"Catch clause variable should always be present when downleveling ES2015."),Mu(n.variableDeclaration.name)){const r=t.createTempVariable(void 0),o=t.createVariableDeclaration(r);vM(o,n.variableDeclaration);const s=SB(n.variableDeclaration,S,e,0,r),a=t.createVariableDeclarationList(s);vM(a,n.variableDeclaration);const c=t.createVariableStatement(void 0,a);i=t.updateCatchClause(n,o,function(e,n){const r=oU(e.statements,S,kd);return t.updateBlock(e,[n,...r])}(n.block,c))}else i=fU(n,S,e);return v(r,0,0),i}(n);case 304:return function(e){return vM(t.createPropertyAssignment(e.name,I(t.cloneNode(e.name))),e)}(n);case 167:case 229:return function(t){return fU(t,S,e)}(n);case 209:return function(t){if($(t.elements,xA))return tt(t.elements,!1,!!t.multiLine,!!t.elements.hasTrailingComma);return fU(t,S,e)}(n);case 213:return function(n){if(1&ip(n))return function(e){const n=_t(_t(gP(e.expression),uA).body,OA),r=e=>FA(e)&&!!Ee(e.declarationList.declarations).initializer,i=m;m=void 0;const o=oU(n.statements,k,kd);m=i;const s=M(o,r),a=M(o,(e=>!r(e))),c=_t(Ee(s),FA).declarationList.declarations[0],l=gP(c.initializer);let u=dt(l,bb);!u&&gA(l)&&28===l.operatorToken.kind&&(u=dt(l.left,bb));const d=_t(u?gP(u.right):l,iA),_=_t(gP(d.expression),lA),p=_.body.statements;let f=0,h=-1;const g=[];if(u){const e=dt(p[f],LA);e&&(g.push(e),f++),g.push(p[f]),f++,g.push(t.createExpressionStatement(t.createAssignment(u.left,_t(c.name,YC))))}for(;!WA(Te(p,h));)h--;me(g,p,f,h),h<-1&&me(g,p,h+1);const y=dt(Te(p,h),WA);for(const t of a)WA(t)&&(null==y?void 0:y.expression)&&!YC(y.expression)?g.push(y):g.push(t);return me(g,s,1),t.restoreOuterExpressions(e.expression,t.restoreOuterExpressions(c.initializer,t.restoreOuterExpressions(u&&u.right,t.updateCallExpression(d,t.restoreOuterExpressions(d.expression,t.updateFunctionExpression(_,void 0,void 0,void 0,void 0,_.parameters,void 0,t.updateBlock(_.body,g))),void 0,d.arguments))))}(n);const r=gP(n.expression);if(108===r.kind||mm(r)||$(n.arguments,xA))return function(n,r){if(32768&n.transformFlags||108===n.expression.kind||mm(gP(n.expression))){const{target:e,thisArg:i}=t.createCallBinding(n.expression,s);let o;if(108===n.expression.kind&&dE(i,8),o=32768&n.transformFlags?t.createFunctionApplyCall(Tn.checkDefined(iU(e,E,td)),108===n.expression.kind?i:Tn.checkDefined(iU(i,S,td)),tt(n.arguments,!0,!1,!1)):vM(t.createFunctionCallCall(Tn.checkDefined(iU(e,E,td)),108===n.expression.kind?i:Tn.checkDefined(iU(i,S,td)),oU(n.arguments,S,td)),n),108===n.expression.kind){const e=t.createLogicalOr(o,Y());o=r?t.createAssignment(A(),e):e}return aE(o,n)}ff(n)&&(p|=131072);return fU(n,S,e)}(n,!0);return t.updateCallExpression(n,Tn.checkDefined(iU(n.expression,E,td)),void 0,oU(n.arguments,S,td))}(n);case 214:return function(n){if($(n.arguments,xA)){const{target:e,thisArg:r}=t.createCallBinding(t.createPropertyAccessExpression(n.expression,"bind"),s);return t.createNewExpression(t.createFunctionApplyCall(Tn.checkDefined(iU(e,S,td)),r,tt(t.createNodeArray([t.createVoidZero(),...n.arguments]),!0,!1,!1)),void 0,[])}return fU(n,S,e)}(n);case 217:return function(t,n){return fU(t,n?w:S,e)}(n,r);case 226:return ge(n,r);case 355:return function(n,r){if(r)return fU(n,w,e);let i;for(let e=0;e<n.elements.length;e++){const t=n.elements[e],r=iU(t,e<n.elements.length-1?w:S,td);(i||r!==t)&&(i||(i=n.elements.slice(0,e)),Tn.assert(r),i.push(r))}const o=i?vM(t.createNodeArray(i),n.elements):n.elements;return t.updateCommaListExpression(n,o)}(n,r);case 15:case 16:case 17:case 18:return function(e){return vM(t.createStringLiteral(e.text),e)}(n);case 11:return function(e){if(e.hasExtendedUnicodeEscape)return vM(t.createStringLiteral(e.text),e);return e}(n);case 9:return function(e){if(384&e.numericLiteralFlags)return vM(t.createNumericLiteral(e.text),e);return e}(n);case 215:return function(t){return qB(e,t,S,d,g,1)}(n);case 228:return function(e){let n=t.createStringLiteral(e.head.text);for(const r of e.templateSpans){const e=[Tn.checkDefined(iU(r.expression,S,td))];r.literal.text.length>0&&e.push(t.createStringLiteral(r.literal.text)),n=t.createCallExpression(t.createPropertyAccessExpression(n,"concat"),void 0,e)}return vM(n,e)}(n);case 230:return function(e){return iU(e.expression,S,td)}(n);case 108:return at(n,!1);case 110:return function(e){p|=65536,2&p&&!(16384&p)&&(p|=131072);if(m)return 2&p?(m.containsLexicalThis=!0,e):m.thisName||(m.thisName=t.createUniqueName("this"));return e}(n);case 236:return function(e){if(105===e.keywordToken&&"target"===e.name.escapedText)return p|=32768,t.createUniqueName("_newTarget",48);return e}(n);case 174:return function(e){Tn.assert(!_N(e.name));const n=fe(e,Xb(e,-1),void 0,void 0);return dE(n,1024|rp(n)),vM(t.createPropertyAssignment(e.name,n),e)}(n);case 177:case 178:return function(n){Tn.assert(!_N(n.name));const r=m;m=void 0;const i=y(32670,65);let o;const s=lU(n.parameters,S,e),a=he(n);o=177===n.kind?t.updateGetAccessorDeclaration(n,n.modifiers,n.name,s,n.type,a):t.updateSetAccessorDeclaration(n,n.modifiers,n.name,s,a);return v(i,229376,0),m=r,o}(n);case 243:return function(n){const r=y(0,Kv(n,32)?32:0);let i;if(!m||7&n.declarationList.flags||function(e){return 1===e.declarationList.declarations.length&&!!e.declarationList.declarations[0].initializer&&!!(1&ip(e.declarationList.declarations[0].initializer))}(n))i=fU(n,S,e);else{let r;for(const i of n.declarationList.declarations)if(Ke(m,i),i.initializer){let n;Mu(i.name)?n=vB(i,S,e,0):(n=t.createBinaryExpression(i.name,64,Tn.checkDefined(iU(i.initializer,S,td))),vM(n,i)),r=_e(r,n)}i=r?vM(t.createExpressionStatement(t.inlineExpressions(r)),n):void 0}return v(r,0,0),i}(n);case 253:return function(n){if(m)return m.nonLocalJumps|=8,b(n)&&(n=N(n)),t.createReturnStatement(t.createObjectLiteralExpression([t.createPropertyAssignment(t.createIdentifier("value"),n.expression?Tn.checkDefined(iU(n.expression,S,td)):t.createVoidZero())]));if(b(n))return N(n);return fU(n,S,e)}(n);default:return fU(n,S,e)}}function N(e){return aE(t.createReturnStatement(A()),e)}function A(){return t.createUniqueName("_this",48)}function I(e){return m&&c.isArgumentsLocalBinding(e)?m.argumentsName||(m.argumentsName=t.createUniqueName("arguments")):256&e.flags?aE(vM(t.createIdentifier(wc(e.escapedText)),e),e):e}function D(s){s.name&&ct();const a=Ng(s),c=t.createFunctionExpression(void 0,void 0,void 0,void 0,a?[t.createParameterDeclaration(void 0,void 0,st())]:[],void 0,function(s,a){const c=[],l=t.getInternalName(s),u=qg(l)?t.getGeneratedNameForNode(l):l;r(),function(e,r,i){i&&e.push(vM(t.createExpressionStatement(n().createExtendsHelper(t.getInternalName(r))),i))}(c,s,a),function(n,r,s,a){const c=m;m=void 0;const l=y(32662,73),u=yv(r),d=function(e,t){if(!e||!t)return!1;if($(e.parameters))return!1;const n=we(e.body.statements);if(!n||!fy(n)||244!==n.kind)return!1;const r=n.expression;if(!fy(r)||213!==r.kind)return!1;const i=r.expression;if(!fy(i)||108!==i.kind)return!1;const o=Ie(r.arguments);if(!o||!fy(o)||230!==o.kind)return!1;const s=o.expression;return YC(s)&&"arguments"===s.escapedText}(u,void 0!==a),_=t.createFunctionDeclaration(void 0,void 0,s,void 0,function(t,n){return lU(t&&!n?t.parameters:void 0,S,e)||[]}(u,d),void 0,function(e,n,r,s){const a=!!r&&106!==gP(r.expression).kind;if(!e)return function(e,n){const r=[];i(),t.mergeLexicalEnvironment(r,o()),n&&r.push(t.createReturnStatement(t.createLogicalOr(t.createLogicalAnd(t.createStrictInequality(st(),t.createNull()),t.createFunctionApplyCall(st(),Y(),t.createIdentifier("arguments"))),Y())));const s=t.createNodeArray(r);vM(s,e.members);const a=t.createBlock(s,!0);return vM(a,e),dE(a,3072),a}(n,a);const c=[],l=[];i();const u=t.copyStandardPrologue(e.body.statements,c,0);(s||O(e.body))&&(p|=8192);me(l,oU(e.body.statements,S,kd,u));const d=a||8192&p;ee(c,e),ie(c,e,s),ae(c,e),d?se(c,e,Y()):oe(c,e);t.mergeLexicalEnvironment(c,o()),d&&!Q(e.body)&&l.push(t.createReturnStatement(A()));const _=t.createBlock(vM(t.createNodeArray([...c,...l]),e.body.statements),!0);return vM(_,e.body),function(e,n,r){const i=e;e=function(e){for(let n=0;n<e.statements.length-1;n++){const r=e.statements[n];if(!j(r))continue;const i=r.declarationList.declarations[0];if(110!==i.initializer.kind)continue;const o=n;let s=n+1;for(;s<e.statements.length;){const t=e.statements[s];if(LA(t)&&W(gP(t.expression)))break;if(!P(t))return e;s++}const a=e.statements[s];let c=a.expression;U(c)&&(c=c.right);const l=t.updateVariableDeclaration(i,i.name,void 0,void 0,c),u=t.updateVariableDeclarationList(r.declarationList,[l]),d=t.createVariableStatement(r.modifiers,u);aE(d,a),vM(d,a);const _=t.createNodeArray([...e.statements.slice(0,o),...e.statements.slice(o+1,s),d,...e.statements.slice(s+1)]);return vM(_,e.statements),t.updateBlock(e,_)}return e}(e),e=function(e,n){for(const t of n.statements)if(134217728&t.transformFlags&&!$U(t))return e;const r=!(16384&n.transformFlags||65536&p||131072&p);for(let i=e.statements.length-1;i>0;i--){const n=e.statements[i];if(WA(n)&&n.expression&&F(n.expression)){const n=e.statements[i-1];let o;if(LA(n)&&J(gP(n.expression)))o=n.expression;else if(r&&j(n)){const e=n.declarationList.declarations[0];W(gP(e.initializer))&&(o=t.createAssignment(A(),e.initializer))}if(!o)break;const s=t.createReturnStatement(o);aE(s,n),vM(s,n);const a=t.createNodeArray([...e.statements.slice(0,i-1),s,...e.statements.slice(i+1)]);return vM(a,e.statements),t.updateBlock(e,a)}}return e}(e,n),e!==i&&(e=function(e,n){if(16384&n.transformFlags||65536&p||131072&p)return e;for(const t of n.statements)if(134217728&t.transformFlags&&!$U(t))return e;return t.updateBlock(e,oU(e.statements,H,kd))}(e,n));r&&(e=function(e){return t.updateBlock(e,oU(e.statements,G,kd))}(e));return e}(_,e.body,s)}(u,r,a,d));vM(_,u||r),a&&dE(_,16);n.push(_),v(l,229376,0),m=c}(c,s,u,a),function(e,t){for(const n of t.members)switch(n.kind){case 240:e.push(ce(n));break;case 174:e.push(ue(lt(t,n),n,t));break;case 177:case 178:const r=Cv(t.members,n);n===r.firstAccessor&&e.push(de(lt(t,n),r,t));break;case 176:case 175:break;default:Tn.failBadSyntaxKind(n,d&&d.fileName)}}(c,s);const f=nx(da(_,s.members.end),20),h=t.createPartiallyEmittedExpression(u);Lw(h,f.end),dE(h,3072);const g=t.createReturnStatement(h);Rw(g,f.pos),dE(g,3840),c.push(g),q_(c,o());const b=t.createBlock(vM(t.createNodeArray(c),s.members),!0);return dE(b,3072),b}(s,a));dE(c,131072&rp(s)|1048576);const l=t.createPartiallyEmittedExpression(c);Lw(l,s.end),dE(l,3072);const u=t.createPartiallyEmittedExpression(l);Lw(u,da(_,s.pos)),dE(u,3072);const f=t.createParenthesizedExpression(t.createCallExpression(u,void 0,a?[Tn.checkDefined(iU(a.expression,S,td))]:[]));return kE(f,3,"* @class "),f}function P(e){return FA(e)&&T(e.declarationList.declarations,(e=>YC(e.name)&&!e.initializer))}function O(e){if(ff(e))return!0;if(!(134217728&e.transformFlags))return!1;switch(e.kind){case 219:case 218:case 262:case 176:case 175:return!1;case 177:case 178:case 174:case 172:{const t=e;return!!_N(t.name)&&!!GM(t.name,O)}}return!!GM(e,O)}function F(e){return tu(e)&&"_this"===kc(e)}function L(e){return tu(e)&&"_super"===kc(e)}function j(e){return FA(e)&&1===e.declarationList.declarations.length&&function(e){return $A(e)&&F(e.name)&&!!e.initializer}(e.declarationList.declarations[0])}function U(e){return bb(e,!0)&&F(e.left)}function B(e){return iA(e)&&nA(e.expression)&&L(e.expression.expression)&&YC(e.expression.name)&&("call"===kc(e.expression.name)||"apply"===kc(e.expression.name))&&e.arguments.length>=1&&110===e.arguments[0].kind}function q(e){return gA(e)&&57===e.operatorToken.kind&&110===e.right.kind&&B(e.left)}function V(e){return gA(e)&&56===e.operatorToken.kind&&gA(e.left)&&38===e.left.operatorToken.kind&&L(e.left.left)&&106===e.left.right.kind&&B(e.right)&&"apply"===kc(e.right.expression.name)}function K(e){return gA(e)&&57===e.operatorToken.kind&&110===e.right.kind&&V(e.left)}function J(e){return U(e)&&q(e.right)}function W(e){return B(e)||q(e)||J(e)||V(e)||K(e)||function(e){return U(e)&&K(e.right)}(e)}function H(e){if(j(e)){if(110===e.declarationList.declarations[0].initializer.kind)return}else if(U(e))return t.createPartiallyEmittedExpression(e.right,e);switch(e.kind){case 219:case 218:case 262:case 176:case 175:return e;case 177:case 178:case 174:case 172:{const n=e;return _N(n.name)?t.replacePropertyName(n,fU(n.name,H,void 0)):e}}return fU(e,H,void 0)}function G(e){if(B(e)&&2===e.arguments.length&&YC(e.arguments[1])&&"arguments"===kc(e.arguments[1]))return t.createLogicalAnd(t.createStrictInequality(st(),t.createNull()),e);switch(e.kind){case 219:case 218:case 262:case 176:case 175:return e;case 177:case 178:case 174:case 172:{const n=e;return _N(n.name)?t.replacePropertyName(n,fU(n.name,G,void 0)):e}}return fU(e,G,void 0)}function Q(e){if(253===e.kind)return!0;if(245===e.kind){const t=e;if(t.elseStatement)return Q(t.thenStatement)&&Q(t.elseStatement)}else if(241===e.kind){const t=Ne(e.statements);if(t&&Q(t))return!0}return!1}function Y(){return dE(t.createThis(),8)}function X(e){return void 0!==e.initializer||Mu(e.name)}function ee(e,t){if(!$(t.parameters,X))return!1;let n=!1;for(const r of t.parameters){const{name:t,initializer:i,dotDotDotToken:o}=r;o||(Mu(t)?n=ne(e,r,t,i)||n:i&&(re(e,r,t,i),n=!0))}return n}function ne(n,r,i,o){return i.elements.length>0?(J_(n,dE(t.createVariableStatement(void 0,t.createVariableDeclarationList(SB(r,S,e,0,t.getGeneratedNameForNode(r)))),2097152)),!0):!!o&&(J_(n,dE(t.createExpressionStatement(t.createAssignment(t.getGeneratedNameForNode(r),Tn.checkDefined(iU(o,S,td)))),2097152)),!0)}function re(e,n,r,i){i=Tn.checkDefined(iU(i,S,td));const o=t.createIfStatement(t.createTypeCheck(t.cloneNode(r),"undefined"),dE(vM(t.createBlock([t.createExpressionStatement(dE(vM(t.createAssignment(dE(Bw(vM(t.cloneNode(r),r),r.parent),96),dE(i,3168|rp(i))),n),3072))]),n),3905));bP(o),vM(o,n),dE(o,2101056),J_(e,o)}function ie(n,r,i){const o=[],s=Ne(r.parameters);if(!function(e,t){return!(!e||!e.dotDotDotToken||t)}(s,i))return!1;const a=80===s.name.kind?Bw(vM(t.cloneNode(s.name),s.name),s.name.parent):t.createTempVariable(void 0);dE(a,96);const c=80===s.name.kind?t.cloneNode(s.name):a,l=r.parameters.length-1,u=t.createLoopVariable();o.push(dE(vM(t.createVariableStatement(void 0,t.createVariableDeclarationList([t.createVariableDeclaration(a,void 0,void 0,t.createArrayLiteralExpression([]))])),s),2097152));const d=t.createForStatement(vM(t.createVariableDeclarationList([t.createVariableDeclaration(u,void 0,void 0,t.createNumericLiteral(l))]),s),vM(t.createLessThan(u,t.createPropertyAccessExpression(t.createIdentifier("arguments"),"length")),s),vM(t.createPostfixIncrement(u),s),t.createBlock([bP(vM(t.createExpressionStatement(t.createAssignment(t.createElementAccessExpression(c,0===l?u:t.createSubtract(u,t.createNumericLiteral(l))),t.createElementAccessExpression(t.createIdentifier("arguments"),u))),s))]));return dE(d,2097152),bP(d),o.push(d),80!==s.name.kind&&o.push(dE(vM(t.createVariableStatement(void 0,t.createVariableDeclarationList(SB(s,S,e,0,c))),s),2097152)),V_(n,o),!0}function oe(e,n){return!!(131072&p&&219!==n.kind)&&(se(e,n,t.createThis()),!0)}function se(n,r,i){1&h||(h|=1,e.enableSubstitution(110),e.enableEmitNotification(176),e.enableEmitNotification(174),e.enableEmitNotification(177),e.enableEmitNotification(178),e.enableEmitNotification(219),e.enableEmitNotification(218),e.enableEmitNotification(262));const o=t.createVariableStatement(void 0,t.createVariableDeclarationList([t.createVariableDeclaration(A(),void 0,void 0,i)]));dE(o,2100224),hE(o,r),J_(n,o)}function ae(e,n){if(32768&p){let r;switch(n.kind){case 219:return e;case 174:case 177:case 178:r=t.createVoidZero();break;case 176:r=t.createPropertyAccessExpression(dE(t.createThis(),8),"constructor");break;case 262:case 218:r=t.createConditionalExpression(t.createLogicalAnd(dE(t.createThis(),8),t.createBinaryExpression(dE(t.createThis(),8),104,t.getLocalName(n))),void 0,t.createPropertyAccessExpression(dE(t.createThis(),8),"constructor"),void 0,t.createVoidZero());break;default:return Tn.failBadSyntaxKind(n)}const i=t.createVariableStatement(void 0,t.createVariableDeclarationList([t.createVariableDeclaration(t.createUniqueName("_newTarget",48),void 0,void 0,r)]));dE(i,2100224),J_(e,i)}return e}function ce(e){return vM(t.createEmptyStatement(),e)}function ue(n,r,i){const o=xE(r),s=mE(r),a=fe(r,r,void 0,i),c=iU(r.name,S,du);let l;if(Tn.assert(c),!ZC(c)&&GS(e.getCompilerOptions())){const e=_N(c)?c.expression:YC(c)?t.createStringLiteral(wc(c.escapedText)):c;l=t.createObjectDefinePropertyCall(n,e,t.createPropertyDescriptor({value:a,enumerable:!1,writable:!0,configurable:!0}))}else{const e=GD(t,n,c,r.name);l=t.createAssignment(e,a)}dE(a,3072),hE(a,s);const u=vM(t.createExpressionStatement(l),r);return aE(u,r),SE(u,o),dE(u,96),u}function de(e,n,r){const i=t.createExpressionStatement(pe(e,n,r,!1));return dE(i,3072),hE(i,mE(n.firstAccessor)),i}function pe(e,{firstAccessor:n,getAccessor:r,setAccessor:i},o,s){const a=Bw(vM(t.cloneNode(e),e),e.parent);dE(a,3136),hE(a,n.name);const c=iU(n.name,S,du);if(Tn.assert(c),ZC(c))return Tn.failBadSyntaxKind(c,"Encountered unhandled private identifier while transforming ES2015.");const l=rP(t,c);dE(l,3104),hE(l,n.name);const u=[];if(r){const e=fe(r,void 0,void 0,o);hE(e,mE(r)),dE(e,1024);const n=t.createPropertyAssignment("get",e);SE(n,xE(r)),u.push(n)}if(i){const e=fe(i,void 0,void 0,o);hE(e,mE(i)),dE(e,1024);const n=t.createPropertyAssignment("set",e);SE(n,xE(i)),u.push(n)}u.push(t.createPropertyAssignment("enumerable",r||i?t.createFalse():t.createTrue()),t.createPropertyAssignment("configurable",t.createTrue()));const d=t.createCallExpression(t.createPropertyAccessExpression(t.createIdentifier("Object"),"defineProperty"),void 0,[a,l,t.createObjectLiteralExpression(u,!0)]);return s&&bP(d),d}function fe(n,r,i,o){const s=m;m=void 0;const a=o&&xu(o)&&!Jv(n)?y(32670,73):y(32670,65),c=lU(n.parameters,S,e),l=he(n);return 32768&p&&!i&&(262===n.kind||218===n.kind)&&(i=t.getGeneratedNameForNode(n)),v(a,229376,0),m=s,aE(vM(t.createFunctionExpression(void 0,n.asteriskToken,i,void 0,c,void 0,l),r),n)}function he(e){let n,r,s=!1,a=!1;const c=[],l=[],u=e.body;let _;if(i(),OA(u)&&(_=t.copyStandardPrologue(u.statements,c,0,!1),_=t.copyCustomPrologue(u.statements,l,_,S,bf),_=t.copyCustomPrologue(u.statements,l,_,S,Sf)),s=ee(l,e)||s,s=ie(l,e,!1)||s,OA(u))_=t.copyCustomPrologue(u.statements,l,_,S),n=u.statements,me(l,oU(u.statements,S,kd,_)),!s&&u.multiLine&&(s=!0);else{Tn.assert(219===e.kind),n=Zb(u,-1);const i=e.equalsGreaterThanToken;fy(i)||fy(u)||(ax(i,u,d)?a=!0:s=!0);const o=iU(u,S,td),c=t.createReturnStatement(o);vM(c,u),AE(c,u),dE(c,2880),l.push(c),r=u}if(t.mergeLexicalEnvironment(c,o()),ae(c,e),oe(c,e),$(c)&&(s=!0),l.unshift(...c),OA(u)&&le(l,u.statements))return u;const p=t.createBlock(vM(t.createNodeArray(l),n),s);return vM(p,e.body),!s&&a&&dE(p,1),r&&yE(p,20,r),aE(p,e.body),p}function ge(n,r){return Sb(n)?vB(n,S,e,0,!r):28===n.operatorToken.kind?t.updateBinaryExpression(n,Tn.checkDefined(iU(n.left,w,td)),n.operatorToken,Tn.checkDefined(iU(n.right,r?w:S,td))):fU(n,S,e)}function ye(n){return Mu(n.name)?ve(n):!n.initializer&&function(e){const t=c.hasNodeCheckFlag(e,16384),n=c.hasNodeCheckFlag(e,32768);return!(64&p||t&&n&&512&p)&&!(4096&p)&&(!c.isDeclarationWithCollidingName(e)||n&&!t&&!(6144&p))}(n)?t.updateVariableDeclaration(n,n.name,void 0,void 0,t.createVoidZero()):fU(n,S,e)}function ve(t){const n=y(32,0);let r;return r=Mu(t.name)?SB(t,S,e,0,void 0,!!(32&n)):fU(t,S,e),v(n,0,0),r}function be(e){m.labels.set(kc(e.label),!0)}function xe(e){m.labels.set(kc(e.label),!1)}function Se(n,i,s,a,c){const l=y(n,i),u=function(n,i,s,a){if(!qe(n)){let r;m&&(r=m.allowedNonLabeledJumps,m.allowedNonLabeledJumps=6);const o=a?a(n,i,void 0,s):t.restoreEnclosingLabel(BA(n)?function(e){return t.updateForStatement(e,iU(e.initializer,w,_d),iU(e.condition,S,td),iU(e.incrementor,w,td),Tn.checkDefined(iU(e.statement,S,kd,t.liftToBlock)))}(n):fU(n,S,e),i,m&&xe);return m&&(m.allowedNonLabeledJumps=r),o}const c=function(e){let t;switch(e.kind){case 248:case 249:case 250:const n=e.initializer;n&&261===n.kind&&(t=n)}const n=[],r=[];if(t&&7&mc(t)){const i=ze(e)||Ue(e)||Be(e);for(const o of t.declarations)Ze(e,o,n,r,i)}const i={loopParameters:n,loopOutParameters:r};m&&(m.argumentsName&&(i.argumentsName=m.argumentsName),m.thisName&&(i.thisName=m.thisName),m.hoistedLocalVariables&&(i.hoistedLocalVariables=m.hoistedLocalVariables));return i}(n),l=[],u=m;m=c;const d=ze(n)?function(e,n){const r=t.createUniqueName("_loop_init"),i=!!(1048576&e.initializer.transformFlags);let o=0;n.containsLexicalThis&&(o|=16);i&&4&p&&(o|=524288);const s=[];s.push(t.createVariableStatement(void 0,e.initializer)),Ge(n.loopOutParameters,2,1,s);const a=t.createVariableStatement(void 0,dE(t.createVariableDeclarationList([t.createVariableDeclaration(r,void 0,void 0,dE(t.createFunctionExpression(void 0,i?t.createToken(42):void 0,void 0,void 0,void 0,void 0,Tn.checkDefined(iU(t.createBlock(s,!0),S,OA))),o))]),4194304)),c=t.createVariableDeclarationList(R(n.loopOutParameters,We));return{functionName:r,containsYield:i,functionDeclaration:a,part:c}}(n,c):void 0,_=Ve(n)?function(e,n,i){const s=t.createUniqueName("_loop");r();const a=iU(e.statement,S,kd,t.liftToBlock),c=o(),l=[];(Ue(e)||Be(e))&&(n.conditionVariable=t.createUniqueName("inc"),e.incrementor?l.push(t.createIfStatement(n.conditionVariable,t.createExpressionStatement(Tn.checkDefined(iU(e.incrementor,S,td))),t.createExpressionStatement(t.createAssignment(n.conditionVariable,t.createTrue())))):l.push(t.createIfStatement(t.createLogicalNot(n.conditionVariable),t.createExpressionStatement(t.createAssignment(n.conditionVariable,t.createTrue())))),Ue(e)&&l.push(t.createIfStatement(t.createPrefixUnaryExpression(54,Tn.checkDefined(iU(e.condition,S,td))),Tn.checkDefined(iU(t.createBreakStatement(),S,kd)))));Tn.assert(a),OA(a)?me(l,a.statements):l.push(a);Ge(n.loopOutParameters,1,1,l),q_(l,c);const u=t.createBlock(l,!0);OA(a)&&aE(u,a);const d=!!(1048576&e.statement.transformFlags);let _=1048576;n.containsLexicalThis&&(_|=16);d&&4&p&&(_|=524288);const f=t.createVariableStatement(void 0,dE(t.createVariableDeclarationList([t.createVariableDeclaration(s,void 0,void 0,dE(t.createFunctionExpression(void 0,d?t.createToken(42):void 0,void 0,void 0,n.loopParameters,void 0,u),_))]),4194304)),m=function(e,n,r,i){const o=[],s=!(-5&n.nonLocalJumps||n.labeledNonLocalBreaks||n.labeledNonLocalContinues),a=t.createCallExpression(e,void 0,R(n.loopParameters,(e=>e.name))),c=i?t.createYieldExpression(t.createToken(42),dE(a,8388608)):a;if(s)o.push(t.createExpressionStatement(c)),Ge(n.loopOutParameters,1,0,o);else{const e=t.createUniqueName("state"),i=t.createVariableStatement(void 0,t.createVariableDeclarationList([t.createVariableDeclaration(e,void 0,void 0,c)]));if(o.push(i),Ge(n.loopOutParameters,1,0,o),8&n.nonLocalJumps){let n;r?(r.nonLocalJumps|=8,n=t.createReturnStatement(e)):n=t.createReturnStatement(t.createPropertyAccessExpression(e,"value")),o.push(t.createIfStatement(t.createTypeCheck(e,"object"),n))}if(2&n.nonLocalJumps&&o.push(t.createIfStatement(t.createStrictEquality(e,t.createStringLiteral("break")),t.createBreakStatement())),n.labeledNonLocalBreaks||n.labeledNonLocalContinues){const i=[];Ye(n.labeledNonLocalBreaks,!0,e,r,i),Ye(n.labeledNonLocalContinues,!1,e,r,i),o.push(t.createSwitchStatement(e,t.createCaseBlock(i)))}}return o}(s,n,i,d);return{functionName:s,containsYield:d,functionDeclaration:f,part:m}}(n,c,u):void 0;m=u,d&&l.push(d.functionDeclaration);_&&l.push(_.functionDeclaration);(function(e,n,r){let i;n.argumentsName&&(r?r.argumentsName=n.argumentsName:(i||(i=[])).push(t.createVariableDeclaration(n.argumentsName,void 0,void 0,t.createIdentifier("arguments"))));n.thisName&&(r?r.thisName=n.thisName:(i||(i=[])).push(t.createVariableDeclaration(n.thisName,void 0,void 0,t.createIdentifier("this"))));if(n.hoistedLocalVariables)if(r)r.hoistedLocalVariables=n.hoistedLocalVariables;else{i||(i=[]);for(const e of n.hoistedLocalVariables)i.push(t.createVariableDeclaration(e))}if(n.loopOutParameters.length){i||(i=[]);for(const e of n.loopOutParameters)i.push(t.createVariableDeclaration(e.outParamName))}n.conditionVariable&&(i||(i=[]),i.push(t.createVariableDeclaration(n.conditionVariable,void 0,void 0,t.createFalse())));i&&e.push(t.createVariableStatement(void 0,t.createVariableDeclarationList(i)))})(l,c,u),d&&l.push(function(e,n){const r=t.createCallExpression(e,void 0,[]),i=n?t.createYieldExpression(t.createToken(42),dE(r,8388608)):r;return t.createExpressionStatement(i)}(d.functionName,d.containsYield));let f;if(_)if(a)f=a(n,i,_.part,s);else{const e=Je(n,d,t.createBlock(_.part,!0));f=t.restoreEnclosingLabel(e,i,m&&xe)}else{const e=Je(n,d,Tn.checkDefined(iU(n.statement,S,kd,t.liftToBlock)));f=t.restoreEnclosingLabel(e,i,m&&xe)}return l.push(f),l}(s,a,l,c);return v(l,0,0),u}function ke(e,t){return Se(0,1280,e,t)}function Ce(e,t){return Se(5056,3328,e,t)}function De(e,t){return Se(3008,5376,e,t)}function Me(e,t){return Se(3008,5376,e,t,a.downlevelIteration?Le:Re)}function Oe(n,r,i){const o=[],s=n.initializer;if(eI(s)){7&n.initializer.flags&&ct();const i=we(s.declarations);if(i&&Mu(i.name)){const s=SB(i,S,e,0,r),a=vM(t.createVariableDeclarationList(s),n.initializer);aE(a,n.initializer),hE(a,Yb(s[0].pos,Ae(s).end)),o.push(t.createVariableStatement(void 0,a))}else o.push(vM(t.createVariableStatement(void 0,aE(vM(t.createVariableDeclarationList([t.createVariableDeclaration(i?i.name:t.createTempVariable(void 0),void 0,void 0,r)]),Xb(s,-1)),s)),Zb(s,-1)))}else{const e=t.createAssignment(s,r);Sb(e)?o.push(t.createExpressionStatement(ge(e,!0))):(Lw(e,s.end),o.push(vM(t.createExpressionStatement(Tn.checkDefined(iU(e,S,td))),Zb(s,-1))))}if(i)return Fe(me(o,i));{const e=iU(n.statement,S,kd,t.liftToBlock);return Tn.assert(e),OA(e)?t.updateBlock(e,vM(t.createNodeArray(te(o,e.statements)),e.statements)):(o.push(e),Fe(o))}}function Fe(e){return dE(t.createBlock(t.createNodeArray(e),!0),864)}function Re(e,n,r){const i=iU(e.expression,S,td);Tn.assert(i);const o=t.createLoopVariable(),s=YC(i)?t.getGeneratedNameForNode(i):t.createTempVariable(void 0);dE(i,96|rp(i));const a=vM(t.createForStatement(dE(vM(t.createVariableDeclarationList([vM(t.createVariableDeclaration(o,void 0,void 0,t.createNumericLiteral(0)),Xb(e.expression,-1)),vM(t.createVariableDeclaration(s,void 0,void 0,i),e.expression)]),e.expression),4194304),vM(t.createLessThan(o,t.createPropertyAccessExpression(s,"length")),e.expression),vM(t.createPostfixIncrement(o),e.expression),Oe(e,t.createElementAccessExpression(s,o),r)),e);return dE(a,512),vM(a,e),t.restoreEnclosingLabel(a,n,m&&xe)}function Le(e,r,i,o){const a=iU(e.expression,S,td);Tn.assert(a);const c=YC(a)?t.getGeneratedNameForNode(a):t.createTempVariable(void 0),l=YC(a)?t.getGeneratedNameForNode(c):t.createTempVariable(void 0),u=t.createUniqueName("e"),d=t.getGeneratedNameForNode(u),_=t.createTempVariable(void 0),p=vM(n().createValuesHelper(a),e.expression),f=t.createCallExpression(t.createPropertyAccessExpression(c,"next"),void 0,[]);s(u),s(_);const h=1024&o?t.inlineExpressions([t.createAssignment(u,t.createVoidZero()),p]):p,g=dE(vM(t.createForStatement(dE(vM(t.createVariableDeclarationList([vM(t.createVariableDeclaration(c,void 0,void 0,h),e.expression),t.createVariableDeclaration(l,void 0,void 0,f)]),e.expression),4194304),t.createLogicalNot(t.createPropertyAccessExpression(l,"done")),t.createAssignment(l,f),Oe(e,t.createPropertyAccessExpression(l,"value"),i)),e),512);return t.createTryStatement(t.createBlock([t.restoreEnclosingLabel(g,r,m&&xe)]),t.createCatchClause(t.createVariableDeclaration(d),dE(t.createBlock([t.createExpressionStatement(t.createAssignment(u,t.createObjectLiteralExpression([t.createPropertyAssignment("error",d)])))]),1)),t.createBlock([t.createTryStatement(t.createBlock([dE(t.createIfStatement(t.createLogicalAnd(t.createLogicalAnd(l,t.createLogicalNot(t.createPropertyAccessExpression(l,"done"))),t.createAssignment(_,t.createPropertyAccessExpression(c,"return"))),t.createExpressionStatement(t.createFunctionCallCall(_,c,[]))),1)]),void 0,dE(t.createBlock([dE(t.createIfStatement(u,t.createThrowStatement(t.createPropertyAccessExpression(u,"error"))),1)]),1))]))}function je(e){return c.hasNodeCheckFlag(e,8192)}function ze(e){return BA(e)&&!!e.initializer&&je(e.initializer)}function Ue(e){return BA(e)&&!!e.condition&&je(e.condition)}function Be(e){return BA(e)&&!!e.incrementor&&je(e.incrementor)}function qe(e){return Ve(e)||ze(e)}function Ve(e){return c.hasNodeCheckFlag(e,4096)}function Ke(e,t){e.hoistedLocalVariables||(e.hoistedLocalVariables=[]),function t(n){if(80===n.kind)e.hoistedLocalVariables.push(n);else for(const e of n.elements)TA(e)||t(e.name)}(t.name)}function Je(e,n,r){switch(e.kind){case 248:return function(e,n,r){const i=e.condition&&je(e.condition),o=i||e.incrementor&&je(e.incrementor);return t.updateForStatement(e,iU(n?n.part:e.initializer,w,_d),iU(i?void 0:e.condition,S,td),iU(o?void 0:e.incrementor,w,td),r)}(e,n,r);case 249:return function(e,n){return t.updateForInStatement(e,Tn.checkDefined(iU(e.initializer,S,_d)),Tn.checkDefined(iU(e.expression,S,td)),n)}(e,r);case 250:return function(e,n){return t.updateForOfStatement(e,void 0,Tn.checkDefined(iU(e.initializer,S,_d)),Tn.checkDefined(iU(e.expression,S,td)),n)}(e,r);case 246:return function(e,n){return t.updateDoStatement(e,n,Tn.checkDefined(iU(e.expression,S,td)))}(e,r);case 247:return function(e,n){return t.updateWhileStatement(e,Tn.checkDefined(iU(e.expression,S,td)),n)}(e,r);default:return Tn.failBadSyntaxKind(e,"IterationStatement expected")}}function We(e){return t.createVariableDeclaration(e.originalName,void 0,void 0,e.outParamName)}function He(e,n){const r=0===n?e.outParamName:e.originalName,i=0===n?e.originalName:e.outParamName;return t.createBinaryExpression(i,64,r)}function Ge(e,n,r,i){for(const o of e)o.flags&n&&i.push(t.createExpressionStatement(He(o,r)))}function Qe(e,t,n,r){t?(e.labeledNonLocalBreaks||(e.labeledNonLocalBreaks=new Map),e.labeledNonLocalBreaks.set(n,r)):(e.labeledNonLocalContinues||(e.labeledNonLocalContinues=new Map),e.labeledNonLocalContinues.set(n,r))}function Ye(e,n,r,i,o){e&&e.forEach(((e,s)=>{const a=[];if(!i||i.labels&&i.labels.get(s)){const e=t.createIdentifier(s);a.push(n?t.createBreakStatement(e):t.createContinueStatement(e))}else Qe(i,n,s,e),a.push(t.createReturnStatement(r));o.push(t.createCaseClause(t.createStringLiteral(e),a))}))}function Ze(e,n,r,i,o){const s=n.name;if(Mu(s))for(const t of s.elements)TA(t)||Ze(e,t,r,i,o);else{r.push(t.createParameterDeclaration(void 0,void 0,s));const a=c.hasNodeCheckFlag(n,65536);if(a||o){const r=t.createUniqueName("out_"+kc(s));let o=0;a&&(o|=1),BA(e)&&(e.initializer&&c.isBindingCapturedByNode(e.initializer,n)&&(o|=2),(e.condition&&c.isBindingCapturedByNode(e.condition,n)||e.incrementor&&c.isBindingCapturedByNode(e.incrementor,n))&&(o|=1)),i.push({flags:o,originalName:s,outParamName:r})}}}function Xe(e,n,r){const i=t.createAssignment(GD(t,n,Tn.checkDefined(iU(e.name,S,du))),Tn.checkDefined(iU(e.initializer,S,td)));return vM(i,e),r&&bP(i),i}function $e(e,n,r){const i=t.createAssignment(GD(t,n,Tn.checkDefined(iU(e.name,S,du))),t.cloneNode(e.name));return vM(i,e),r&&bP(i),i}function et(e,n,r,i){const o=t.createAssignment(GD(t,n,Tn.checkDefined(iU(e.name,S,du))),fe(e,e,void 0,r));return vM(o,e),i&&bP(o),o}function tt(e,r,i,o){const s=e.length,c=z(Z(e,nt,((e,t,n,r)=>t(e,i,o&&r===s))));if(1===c.length){const e=c[0];if(r&&!a.downlevelIteration||Jw(e.expression)||IC(e.expression,"___spreadArray"))return e.expression}const l=n(),u=0!==c[0].kind;let d=u?t.createArrayLiteralExpression():c[0].expression;for(let t=u?0:1;t<c.length;t++){const e=c[t];d=l.createSpreadArrayHelper(d,e.expression,1===e.kind&&!r)}return d}function nt(e){return xA(e)?rt:ot}function rt(e){return R(e,it)}function it(e){Tn.assertNode(e,xA);let t=iU(e.expression,S,td);Tn.assert(t);const r=IC(t,"___read");let i=r||Jw(t)?2:1;return!a.downlevelIteration||1!==i||eA(t)||r||(t=n().createReadHelper(t,void 0),i=2),pq(i,t)}function ot(e,n,r){return pq(0,t.createArrayLiteralExpression(oU(t.createNodeArray(e,r),S,td),n))}function st(){return t.createUniqueName("_super",48)}function at(e,n){const r=8&p&&!n?t.createPropertyAccessExpression(aE(st(),e),"prototype"):st();return aE(r,e),SE(r,e),hE(r,e),r}function ct(){2&h||(h|=2,e.enableSubstitution(80))}function lt(e,n){return Jv(n)?t.getInternalName(e):t.createPropertyAccessExpression(t.getInternalName(e),"prototype")}}function mq(e){const{factory:t,getEmitHelperFactory:n,resumeLexicalEnvironment:r,endLexicalEnvironment:i,hoistFunctionDeclaration:o,hoistVariableDeclaration:s}=e,a=e.getCompilerOptions(),c=MS(a),l=e.getEmitResolver(),u=e.onSubstituteNode;let d,_,p,f,m,g,y,v,b,x;e.onSubstituteNode=function(e,n){if(n=u(e,n),1===e)return function(e){if(YC(e))return function(e){if(!tu(e)&&d&&d.has(kc(e))){const n=vc(e);if(YC(n)&&n.parent){const r=l.getReferencedValueDeclaration(n);if(r){const n=_[LU(r)];if(n){const r=Bw(vM(t.cloneNode(n),n),n.parent);return hE(r,e),SE(r,e),r}}}}return e}(e);return e}(n);return n};let S,T,w,k,E,C,N,A,I,D,P,M,O=1,F=0,L=0;return UU(e,(function(t){if(t.isDeclarationFile||!(2048&t.transformFlags))return t;const n=fU(t,j,e);return ME(n,e.readEmitHelpers()),n}));function j(t){const n=t.transformFlags;return f?function(t){switch(t.kind){case 246:case 247:return function(t){return f?(se(),t=fU(t,j,e),ce(),t):fU(t,j,e)}(t);case 255:return function(t){f&&ne({kind:2,isScript:!0,breakLabel:-1});t=fU(t,j,e),f&&le();return t}(t);case 256:return function(t){f&&ne({kind:4,isScript:!0,labelText:kc(t.label),breakLabel:-1});t=fU(t,j,e),f&&ue();return t}(t);default:return z(t)}}(t):p?z(t):mu(t)&&t.asteriskToken?function(e){switch(e.kind){case 262:return U(e);case 218:return B(e);default:return Tn.failBadSyntaxKind(e)}}(t):2048&n?fU(t,j,e):t}function z(r){switch(r.kind){case 262:return U(r);case 218:return B(r);case 177:case 178:return function(t){const n=p,r=f;return p=!1,f=!1,t=fU(t,j,e),p=n,f=r,t}(r);case 243:return function(e){if(1048576&e.transformFlags)return void G(e.declarationList);{if(2097152&rp(e))return e;for(const t of e.declarationList.declarations)s(t.name);const n=hx(e.declarationList);if(0===n.length)return;return hE(t.createExpressionStatement(t.inlineExpressions(R(n,Q))),e)}}(r);case 248:return function(n){f&&se();const r=n.initializer;if(r&&eI(r)){for(const e of r.declarations)s(e.name);const i=hx(r);n=t.updateForStatement(n,i.length>0?t.inlineExpressions(R(i,Q)):void 0,iU(n.condition,j,td),iU(n.incrementor,j,td),_U(n.statement,j,e))}else n=fU(n,j,e);f&&ce();return n}(r);case 249:return function(n){f&&se();const r=n.initializer;if(eI(r)){for(const e of r.declarations)s(e.name);n=t.updateForInStatement(n,r.declarations[0].name,Tn.checkDefined(iU(n.expression,j,td)),Tn.checkDefined(iU(n.statement,j,kd,t.liftToBlock)))}else n=fU(n,j,e);f&&ce();return n}(r);case 252:return function(t){if(f){const e=me(t.label&&kc(t.label));if(e>0)return ve(e,t)}return fU(t,j,e)}(r);case 251:return function(t){if(f){const e=he(t.label&&kc(t.label));if(e>0)return ve(e,t)}return fU(t,j,e)}(r);case 253:return function(e){return n=iU(e.expression,j,td),r=e,vM(t.createReturnStatement(t.createArrayLiteralExpression(n?[ye(2),n]:[ye(2)])),r);var n,r}(r);default:return 1048576&r.transformFlags?function(r){switch(r.kind){case 226:return function(n){const r=gy(n);switch(r){case 0:return function(n){if(Y(n.right))return _b(n.operatorToken.kind)?function(e){const t=ee(),n=$();Se(n,Tn.checkDefined(iU(e.left,j,td)),e.left),56===e.operatorToken.kind?ke(t,n,e.left):we(t,n,e.left);return Se(n,Tn.checkDefined(iU(e.right,j,td)),e.right),te(t),n}(n):28===n.operatorToken.kind?V(n):t.updateBinaryExpression(n,X(Tn.checkDefined(iU(n.left,j,td))),n.operatorToken,Tn.checkDefined(iU(n.right,j,td)));return fU(n,j,e)}(n);case 1:return function(n){const{left:r,right:i}=n;if(Y(i)){let e;switch(r.kind){case 211:e=t.updatePropertyAccessExpression(r,X(Tn.checkDefined(iU(r.expression,j,Qu))),r.name);break;case 212:e=t.updateElementAccessExpression(r,X(Tn.checkDefined(iU(r.expression,j,Qu))),X(Tn.checkDefined(iU(r.argumentExpression,j,td))));break;default:e=Tn.checkDefined(iU(r,j,td))}const o=n.operatorToken.kind;return ZU(o)?vM(t.createAssignment(e,vM(t.createBinaryExpression(X(e),XU(o),Tn.checkDefined(iU(i,j,td))),n)),n):t.updateBinaryExpression(n,e,n.operatorToken,Tn.checkDefined(iU(i,j,td)))}return fU(n,j,e)}(n);default:return Tn.assertNever(r)}}(r);case 355:return function(e){let n=[];for(const r of e.elements)gA(r)&&28===r.operatorToken.kind?n.push(V(r)):(Y(r)&&n.length>0&&(Ee(1,[t.createExpressionStatement(t.inlineExpressions(n))]),n=[]),n.push(Tn.checkDefined(iU(r,j,td))));return t.inlineExpressions(n)}(r);case 227:return function(t){if(Y(t.whenTrue)||Y(t.whenFalse)){const e=ee(),n=ee(),r=$();return ke(e,Tn.checkDefined(iU(t.condition,j,td)),t.condition),Se(r,Tn.checkDefined(iU(t.whenTrue,j,td)),t.whenTrue),Te(n),te(e),Se(r,Tn.checkDefined(iU(t.whenFalse,j,td)),t.whenFalse),te(n),r}return fU(t,j,e)}(r);case 229:return function(e){const r=ee(),i=iU(e.expression,j,td);if(e.asteriskToken){!function(e,t){Ee(7,[e],t)}(8388608&rp(e.expression)?i:vM(n().createValuesHelper(i),e),e)}else!function(e,t){Ee(6,[e],t)}(i,e);return te(r),function(e){return vM(t.createCallExpression(t.createPropertyAccessExpression(k,"sent"),void 0,[]),e)}(e)}(r);case 209:return function(e){return K(e.elements,void 0,void 0,e.multiLine)}(r);case 210:return function(e){const n=e.properties,r=e.multiLine,i=Z(n),o=$();Se(o,t.createObjectLiteralExpression(oU(n,j,Iu,0,i),r));const s=Re(n,a,[],i);return s.push(r?bP(Bw(vM(t.cloneNode(o),o),o.parent)):o),t.inlineExpressions(s);function a(n,i){Y(i)&&n.length>0&&(xe(t.createExpressionStatement(t.inlineExpressions(n))),n=[]);const s=iU(iP(t,e,i,o),j,td);return s&&(r&&bP(s),n.push(s)),n}}(r);case 212:return function(n){if(Y(n.argumentExpression))return t.updateElementAccessExpression(n,X(Tn.checkDefined(iU(n.expression,j,Qu))),Tn.checkDefined(iU(n.argumentExpression,j,td)));return fU(n,j,e)}(r);case 213:return function(n){if(!mf(n)&&h(n.arguments,Y)){const{target:e,thisArg:r}=t.createCallBinding(n.expression,s,c,!0);return aE(vM(t.createFunctionApplyCall(X(Tn.checkDefined(iU(e,j,Qu))),r,K(n.arguments)),n),n)}return fU(n,j,e)}(r);case 214:return function(n){if(h(n.arguments,Y)){const{target:e,thisArg:r}=t.createCallBinding(t.createPropertyAccessExpression(n.expression,"bind"),s);return aE(vM(t.createNewExpression(t.createFunctionApplyCall(X(Tn.checkDefined(iU(e,j,td))),r,K(n.arguments,t.createVoidZero())),void 0,[]),n),n)}return fU(n,j,e)}(r);default:return fU(r,j,e)}}(r):4196352&r.transformFlags?fU(r,j,e):r}}function U(n){if(n.asteriskToken)n=aE(vM(t.createFunctionDeclaration(n.modifiers,void 0,n.name,void 0,lU(n.parameters,j,e),void 0,q(n.body)),n),n);else{const t=p,r=f;p=!1,f=!1,n=fU(n,j,e),p=t,f=r}return p?void o(n):n}function B(n){if(n.asteriskToken)n=aE(vM(t.createFunctionExpression(void 0,void 0,n.name,void 0,lU(n.parameters,j,e),void 0,q(n.body)),n),n);else{const t=p,r=f;p=!1,f=!1,n=fU(n,j,e),p=t,f=r}return n}function q(e){const o=[],s=p,a=f,c=m,l=g,u=y,d=v,_=b,h=x,R=O,z=S,U=T,B=w,q=k;p=!0,f=!1,m=void 0,g=void 0,y=void 0,v=void 0,b=void 0,x=void 0,O=1,S=void 0,T=void 0,w=void 0,k=t.createTempVariable(void 0),r();const V=t.copyPrologue(e.statements,o,!1,j);J(e.statements,V);const K=function(){F=0,L=0,E=void 0,C=!1,N=!1,A=void 0,I=void 0,D=void 0,P=void 0,M=void 0;const e=function(){if(S){for(let e=0;e<S.length;e++)De(e);Ce(S.length)}else Ce(0);if(A){const e=t.createPropertyAccessExpression(k,"label");return[bP(t.createSwitchStatement(e,t.createCaseBlock(A)))]}if(I)return I;return[]}();return n().createGeneratorHelper(dE(t.createFunctionExpression(void 0,void 0,void 0,void 0,[t.createParameterDeclaration(void 0,void 0,k)],void 0,t.createBlock(e,e.length>0)),1048576))}();return q_(o,i()),o.push(t.createReturnStatement(K)),p=s,f=a,m=c,g=l,y=u,v=d,b=_,x=h,O=R,S=z,T=U,w=B,k=q,vM(t.createBlock(o,e.multiLine),e)}function V(e){let n=[];return r(e.left),r(e.right),t.inlineExpressions(n);function r(e){gA(e)&&28===e.operatorToken.kind?(r(e.left),r(e.right)):(Y(e)&&n.length>0&&(Ee(1,[t.createExpressionStatement(t.inlineExpressions(n))]),n=[]),n.push(Tn.checkDefined(iU(e,j,td))))}}function K(e,n,r,i){const o=Z(e);let s;if(o>0){s=$();const r=oU(e,j,td,0,o);Se(s,t.createArrayLiteralExpression(n?[n,...r]:r)),n=void 0}const a=Re(e,(function(e,r){if(Y(r)&&e.length>0){const r=void 0!==s;s||(s=$()),Se(s,r?t.createArrayConcatCall(s,[t.createArrayLiteralExpression(e,i)]):t.createArrayLiteralExpression(n?[n,...e]:e,i)),n=void 0,e=[]}return e.push(Tn.checkDefined(iU(r,j,td))),e}),[],o);return s?t.createArrayConcatCall(s,[t.createArrayLiteralExpression(a,i)]):vM(t.createArrayLiteralExpression(n?[n,...a]:a,i),r)}function J(e,t=0){const n=e.length;for(let r=t;r<n;r++)H(e[r])}function W(e){OA(e)?J(e.statements):H(e)}function H(n){const r=f;f||(f=Y(n)),function(n){switch(n.kind){case 241:return function(e){Y(e)?J(e.statements):xe(iU(e,j,kd))}(n);case 244:return function(e){xe(iU(e,j,kd))}(n);case 245:return function(e){if(Y(e))if(Y(e.thenStatement)||Y(e.elseStatement)){const t=ee(),n=e.elseStatement?ee():void 0;ke(e.elseStatement?n:t,Tn.checkDefined(iU(e.expression,j,td)),e.expression),W(e.thenStatement),e.elseStatement&&(Te(t),te(n),W(e.elseStatement)),te(t)}else xe(iU(e,j,kd));else xe(iU(e,j,kd))}(n);case 246:return function(e){if(Y(e)){const t=ee(),n=ee();ae(t),te(n),W(e.statement),te(t),we(n,Tn.checkDefined(iU(e.expression,j,td))),ce()}else xe(iU(e,j,kd))}(n);case 247:return function(e){if(Y(e)){const t=ee(),n=ae(t);te(t),ke(n,Tn.checkDefined(iU(e.expression,j,td))),W(e.statement),Te(t),ce()}else xe(iU(e,j,kd))}(n);case 248:return function(e){if(Y(e)){const n=ee(),r=ee(),i=ae(r);if(e.initializer){const n=e.initializer;eI(n)?G(n):xe(vM(t.createExpressionStatement(Tn.checkDefined(iU(n,j,td))),n))}te(n),e.condition&&ke(i,Tn.checkDefined(iU(e.condition,j,td))),W(e.statement),te(r),e.incrementor&&xe(vM(t.createExpressionStatement(Tn.checkDefined(iU(e.incrementor,j,td))),e.incrementor)),Te(n),ce()}else xe(iU(e,j,kd))}(n);case 249:return function(e){if(Y(e)){const n=$(),r=$(),i=$(),o=t.createLoopVariable(),a=e.initializer;s(o),Se(n,Tn.checkDefined(iU(e.expression,j,td))),Se(r,t.createArrayLiteralExpression()),xe(t.createForInStatement(i,n,t.createExpressionStatement(t.createCallExpression(t.createPropertyAccessExpression(r,"push"),void 0,[i])))),Se(o,t.createNumericLiteral(0));const c=ee(),l=ee(),u=ae(l);let d;if(te(c),ke(u,t.createLessThan(o,t.createPropertyAccessExpression(r,"length"))),Se(i,t.createElementAccessExpression(r,o)),ke(l,t.createBinaryExpression(i,103,n)),eI(a)){for(const e of a.declarations)s(e.name);d=t.cloneNode(a.declarations[0].name)}else d=Tn.checkDefined(iU(a,j,td)),Tn.assert(Qu(d));Se(d,i),W(e.statement),te(l),xe(t.createExpressionStatement(t.createPostfixIncrement(o))),Te(c),ce()}else xe(iU(e,j,kd))}(n);case 251:return function(e){const t=he(e.label?kc(e.label):void 0);t>0?Te(t,e):xe(e)}(n);case 252:return function(e){const t=me(e.label?kc(e.label):void 0);t>0?Te(t,e):xe(e)}(n);case 253:return function(e){t=iU(e.expression,j,td),n=e,Ee(8,[t],n);var t,n}(n);case 254:return function(e){Y(e)?(function(e){const t=ee(),n=ee();te(t),ne({kind:1,expression:e,startLabel:t,endLabel:n})}(X(Tn.checkDefined(iU(e.expression,j,td)))),W(e.statement),function(){Tn.assert(1===oe());te(re().endLabel)}()):xe(iU(e,j,kd))}(n);case 255:return function(e){if(Y(e.caseBlock)){const n=e.caseBlock,r=n.clauses.length,i=function(){const e=ee();return ne({kind:2,isScript:!1,breakLabel:e}),e}(),o=X(Tn.checkDefined(iU(e.expression,j,td))),s=[];let a=-1;for(let e=0;e<r;e++){const t=n.clauses[e];s.push(ee()),297===t.kind&&-1===a&&(a=e)}let c=0,l=[];for(;c<r;){let e=0;for(let i=c;i<r;i++){const r=n.clauses[i];if(296===r.kind){if(Y(r.expression)&&l.length>0)break;l.push(t.createCaseClause(Tn.checkDefined(iU(r.expression,j,td)),[ve(s[i],r.expression)]))}else e++}l.length&&(xe(t.createSwitchStatement(o,t.createCaseBlock(l))),c+=l.length,l=[]),e>0&&(c+=e,e=0)}Te(a>=0?s[a]:i);for(let e=0;e<r;e++)te(s[e]),J(n.clauses[e].statements);le()}else xe(iU(e,j,kd))}(n);case 256:return function(e){Y(e)?(!function(e){const t=ee();ne({kind:4,isScript:!1,labelText:e,breakLabel:t})}(kc(e.label)),W(e.statement),ue()):xe(iU(e,j,kd))}(n);case 257:return function(e){n=Tn.checkDefined(iU(e.expression??t.createVoidZero(),j,td)),r=e,Ee(9,[n],r);var n,r}(n);case 258:return function(n){Y(n)?(function(){const e=ee(),t=ee();te(e),ne({kind:0,state:0,startLabel:e,endLabel:t}),be()}(),W(n.tryBlock),n.catchClause&&(!function(n){let r;if(Tn.assert(0===oe()),tu(n.name))r=n.name,s(n.name);else{const t=kc(n.name);r=$(t),d||(d=new Map,_=[],e.enableSubstitution(80)),d.set(t,!0),_[LU(n)]=r}const i=ie();Tn.assert(i.state<1);Te(i.endLabel);const o=ee();te(o),i.state=1,i.catchVariable=r,i.catchLabel=o,Se(r,t.createCallExpression(t.createPropertyAccessExpression(k,"sent"),void 0,[])),be()}(n.catchClause.variableDeclaration),W(n.catchClause.block)),n.finallyBlock&&(!function(){Tn.assert(0===oe());const e=ie();Tn.assert(e.state<2);Te(e.endLabel);const t=ee();te(t),e.state=2,e.finallyLabel=t}(),W(n.finallyBlock)),function(){Tn.assert(0===oe());const e=re();e.state<2?Te(e.endLabel):Ee(10);te(e.endLabel),be(),e.state=3}()):xe(fU(n,j,e))}(n);default:xe(iU(n,j,kd))}}(n),f=r}function G(e){for(const a of e.declarations){const e=t.cloneNode(a.name);SE(e,a.name),s(e)}const n=hx(e),r=n.length;let i=0,o=[];for(;i<r;){for(let e=i;e<r;e++){const t=n[e];if(Y(t.initializer)&&o.length>0)break;o.push(Q(t))}o.length&&(xe(t.createExpressionStatement(t.inlineExpressions(o))),i+=o.length,o=[])}}function Q(e){return hE(t.createAssignment(hE(t.cloneNode(e.name),e.name),Tn.checkDefined(iU(e.initializer,j,td))),e)}function Y(e){return!!e&&!!(1048576&e.transformFlags)}function Z(e){const t=e.length;for(let n=0;n<t;n++)if(Y(e[n]))return n;return-1}function X(e){if(tu(e)||8192&rp(e))return e;const n=t.createTempVariable(s);return Se(n,e,e),n}function $(e){const n=e?t.createUniqueName(e):t.createTempVariable(void 0);return s(n),n}function ee(){b||(b=[]);const e=O;return O++,b[e]=-1,e}function te(e){Tn.assert(void 0!==b,"No labels were defined."),b[e]=S?S.length:0}function ne(e){m||(m=[],y=[],g=[],v=[]);const t=y.length;return y[t]=0,g[t]=S?S.length:0,m[t]=e,v.push(e),t}function re(){const e=ie();if(void 0===e)return Tn.fail("beginBlock was never called.");const t=y.length;return y[t]=1,g[t]=S?S.length:0,m[t]=e,v.pop(),e}function ie(){return Ne(v)}function oe(){const e=ie();return e&&e.kind}function se(){ne({kind:3,isScript:!0,breakLabel:-1,continueLabel:-1})}function ae(e){const t=ee();return ne({kind:3,isScript:!1,breakLabel:t,continueLabel:e}),t}function ce(){Tn.assert(3===oe());const e=re(),t=e.breakLabel;e.isScript||te(t)}function le(){Tn.assert(2===oe());const e=re(),t=e.breakLabel;e.isScript||te(t)}function ue(){Tn.assert(4===oe());const e=re();e.isScript||te(e.breakLabel)}function de(e){return 2===e.kind||3===e.kind}function _e(e){return 4===e.kind}function pe(e){return 3===e.kind}function fe(e,t){for(let n=t;n>=0;n--){const t=v[n];if(!_e(t))break;if(t.labelText===e)return!0}return!1}function me(e){if(v)if(e)for(let t=v.length-1;t>=0;t--){const n=v[t];if(_e(n)&&n.labelText===e)return n.breakLabel;if(de(n)&&fe(e,t-1))return n.breakLabel}else for(let t=v.length-1;t>=0;t--){const e=v[t];if(de(e))return e.breakLabel}return 0}function he(e){if(v)if(e)for(let t=v.length-1;t>=0;t--){const n=v[t];if(pe(n)&&fe(e,t-1))return n.continueLabel}else for(let t=v.length-1;t>=0;t--){const e=v[t];if(pe(e))return e.continueLabel}return 0}function ge(e){if(void 0!==e&&e>0){void 0===x&&(x=[]);const n=t.createNumericLiteral(Number.MAX_SAFE_INTEGER);return void 0===x[e]?x[e]=[n]:x[e].push(n),n}return t.createOmittedExpression()}function ye(e){const n=t.createNumericLiteral(e);return NE(n,3,function(e){switch(e){case 2:return"return";case 3:return"break";case 4:return"yield";case 5:return"yield*";case 7:return"endfinally";default:return}}(e)),n}function ve(e,n){return Tn.assertLessThan(0,e,"Invalid label"),vM(t.createReturnStatement(t.createArrayLiteralExpression([ye(3),ge(e)])),n)}function be(){Ee(0)}function xe(e){e?Ee(1,[e]):be()}function Se(e,t,n){Ee(2,[e,t],n)}function Te(e,t){Ee(3,[e],t)}function we(e,t,n){Ee(4,[e,t],n)}function ke(e,t,n){Ee(5,[e,t],n)}function Ee(e,t,n){void 0===S&&(S=[],T=[],w=[]),void 0===b&&te(ee());const r=S.length;S[r]=e,T[r]=t,w[r]=n}function Ce(e){(function(e){if(!N)return!0;if(!b||!x)return!1;for(let t=0;t<b.length;t++)if(b[t]===e&&x[t])return!0;return!1})(e)&&(Ie(e),M=void 0,Me(void 0,void 0)),I&&A&&Ae(!1),function(){if(void 0!==x&&void 0!==E)for(let e=0;e<E.length;e++){const t=E[e];if(void 0!==t)for(const n of t){const t=x[n];if(void 0!==t)for(const n of t)n.text=String(e)}}}()}function Ae(e){if(A||(A=[]),I){if(M)for(let e=M.length-1;e>=0;e--){const n=M[e];I=[t.createWithStatement(n.expression,t.createBlock(I))]}if(P){const{startLabel:e,catchLabel:n,finallyLabel:r,endLabel:i}=P;I.unshift(t.createExpressionStatement(t.createCallExpression(t.createPropertyAccessExpression(t.createPropertyAccessExpression(k,"trys"),"push"),void 0,[t.createArrayLiteralExpression([ge(e),ge(n),ge(r),ge(i)])]))),P=void 0}e&&I.push(t.createExpressionStatement(t.createAssignment(t.createPropertyAccessExpression(k,"label"),t.createNumericLiteral(L+1))))}A.push(t.createCaseClause(t.createNumericLiteral(L),I||[])),I=void 0}function Ie(e){if(b)for(let t=0;t<b.length;t++)b[t]===e&&(I&&(Ae(!C),C=!1,N=!1,L++),void 0===E&&(E=[]),void 0===E[L]?E[L]=[t]:E[L].push(t))}function De(e){if(Ie(e),function(e){if(m)for(;F<y.length&&g[F]<=e;F++){const e=m[F],t=y[F];switch(e.kind){case 0:0===t?(D||(D=[]),I||(I=[]),D.push(P),P=e):1===t&&(P=D.pop());break;case 1:0===t?(M||(M=[]),M.push(e)):1===t&&M.pop()}}}(e),C)return;C=!1,N=!1;const n=S[e];if(0===n)return;if(10===n)return C=!0,void Pe(t.createReturnStatement(t.createArrayLiteralExpression([ye(7)])));const r=T[e];if(1===n)return Pe(r[0]);const i=w[e];switch(n){case 2:return o=r[0],s=r[1],a=i,void Pe(vM(t.createExpressionStatement(t.createAssignment(o,s)),a));case 3:return function(e,n){C=!0,Pe(dE(vM(t.createReturnStatement(t.createArrayLiteralExpression([ye(3),ge(e)])),n),768))}(r[0],i);case 4:return function(e,n,r){Pe(dE(t.createIfStatement(n,dE(vM(t.createReturnStatement(t.createArrayLiteralExpression([ye(3),ge(e)])),r),768)),1))}(r[0],r[1],i);case 5:return function(e,n,r){Pe(dE(t.createIfStatement(t.createLogicalNot(n),dE(vM(t.createReturnStatement(t.createArrayLiteralExpression([ye(3),ge(e)])),r),768)),1))}(r[0],r[1],i);case 6:return function(e,n){C=!0,Pe(dE(vM(t.createReturnStatement(t.createArrayLiteralExpression(e?[ye(4),e]:[ye(4)])),n),768))}(r[0],i);case 7:return function(e,n){C=!0,Pe(dE(vM(t.createReturnStatement(t.createArrayLiteralExpression([ye(5),e])),n),768))}(r[0],i);case 8:return Me(r[0],i);case 9:return function(e,n){C=!0,N=!0,Pe(vM(t.createThrowStatement(e),n))}(r[0],i)}var o,s,a}function Pe(e){e&&(I?I.push(e):I=[e])}function Me(e,n){C=!0,N=!0,Pe(dE(vM(t.createReturnStatement(t.createArrayLiteralExpression(e?[ye(2),e]:[ye(2)])),n),768))}}function hq(e){const{factory:t,getEmitHelperFactory:n,startLexicalEnvironment:r,endLexicalEnvironment:i,hoistVariableDeclaration:o}=e,s=e.getCompilerOptions(),a=e.getEmitResolver(),c=e.getEmitHost(),l=MS(s),u=OS(s),d=e.onSubstituteNode,p=e.onEmitNode;e.onSubstituteNode=function(e,n){if((n=d(e,n)).id&&y[n.id])return n;if(1===e)return function(e){switch(e.kind){case 80:return Z(e);case 213:return function(e){if(YC(e.expression)){const n=Z(e.expression);if(y[Gz(n)]=!0,!(YC(n)||8192&rp(e.expression)))return fE(t.updateCallExpression(e,n,void 0,e.arguments),16)}return e}(e);case 215:return function(e){if(YC(e.tag)){const n=Z(e.tag);if(y[Gz(n)]=!0,!(YC(n)||8192&rp(e.tag)))return fE(t.updateTaggedTemplateExpression(e,n,void 0,e.template),16)}return e}(e);case 226:return function(e){if(gb(e.operatorToken.kind)&&YC(e.left)&&(!tu(e.left)||ru(e.left))&&!aP(e.left)){const t=X(e.left);if(t){let n=e;for(const r of t)y[Gz(n)]=!0,n=Q(r,n,e);return n}}return e}(e)}return e}(n);if(HI(n))return function(e){const n=e.name,r=Z(n);if(r!==n){if(e.objectAssignmentInitializer){const i=t.createAssignment(r,e.objectAssignmentInitializer);return vM(t.createPropertyAssignment(n,i),e)}return vM(t.createPropertyAssignment(n,r),e)}return e}(n);return n},e.onEmitNode=function(e,t,n){307===t.kind?(h=t,g=f[LU(h)],p(e,t,n),h=void 0,g=void 0):p(e,t,n)},e.enableSubstitution(213),e.enableSubstitution(215),e.enableSubstitution(80),e.enableSubstitution(226),e.enableSubstitution(304),e.enableEmitNotification(307);const f=[];let h,g;const y=[];let v;return UU(e,(function(t){if(t.isDeclarationFile||!(Sp(t,s)||8388608&t.transformFlags||sf(t)&&YS(s)&&s.outFile))return t;h=t,g=KU(e,t),f[LU(t)]=g;const n=function(e){switch(e){case 2:return S;case 3:return T;default:return x}}(u)(t);return h=void 0,g=void 0,v=!1,n}));function b(){return!(YT(h.fileName)&&h.commonJsModuleIndicator&&(!h.externalModuleIndicator||!0===h.externalModuleIndicator))&&!(g.exportEquals||!tO(h))}function x(n){r();const o=[],a=eT(s,"alwaysStrict")||tO(h),c=t.copyPrologue(n.statements,o,a&&!sf(n),N);if(b()&&_e(o,H()),$(g.exportedNames)){const e=50;for(let n=0;n<g.exportedNames.length;n+=e)_e(o,t.createExpressionStatement(Re(g.exportedNames.slice(n,n+e),((e,n)=>t.createAssignment(t.createPropertyAccessExpression(t.createIdentifier("exports"),t.createIdentifier(kc(n))),e)),t.createVoidZero())))}for(const e of g.exportedFunctions)V(o,e);_e(o,iU(g.externalHelpersImportDeclaration,N,kd)),me(o,oU(n.statements,N,kd,c)),C(o,!1),q_(o,i());const l=t.updateSourceFile(n,vM(t.createNodeArray(o),n.statements));return ME(l,e.readEmitHelpers()),l}function S(n){const r=t.createIdentifier("define"),i=CP(t,n,c,s),o=sf(n)&&n,{aliasedModuleNames:a,unaliasedModuleNames:l,importAliasNames:u}=w(n,!0),d=t.updateSourceFile(n,vM(t.createNodeArray([t.createExpressionStatement(t.createCallExpression(r,void 0,[...i?[i]:[],t.createArrayLiteralExpression(o?_:[t.createStringLiteral("require"),t.createStringLiteral("exports"),...a,...l]),o?o.statements.length?o.statements[0].expression:t.createObjectLiteralExpression():t.createFunctionExpression(void 0,void 0,void 0,void 0,[t.createParameterDeclaration(void 0,void 0,"require"),t.createParameterDeclaration(void 0,void 0,"exports"),...u],void 0,E(n))]))]),n.statements));return ME(d,e.readEmitHelpers()),d}function T(n){const{aliasedModuleNames:r,unaliasedModuleNames:i,importAliasNames:o}=w(n,!1),a=CP(t,n,c,s),l=t.createFunctionExpression(void 0,void 0,void 0,void 0,[t.createParameterDeclaration(void 0,void 0,"factory")],void 0,vM(t.createBlock([t.createIfStatement(t.createLogicalAnd(t.createTypeCheck(t.createIdentifier("module"),"object"),t.createTypeCheck(t.createPropertyAccessExpression(t.createIdentifier("module"),"exports"),"object")),t.createBlock([t.createVariableStatement(void 0,[t.createVariableDeclaration("v",void 0,void 0,t.createCallExpression(t.createIdentifier("factory"),void 0,[t.createIdentifier("require"),t.createIdentifier("exports")]))]),dE(t.createIfStatement(t.createStrictInequality(t.createIdentifier("v"),t.createIdentifier("undefined")),t.createExpressionStatement(t.createAssignment(t.createPropertyAccessExpression(t.createIdentifier("module"),"exports"),t.createIdentifier("v")))),1)]),t.createIfStatement(t.createLogicalAnd(t.createTypeCheck(t.createIdentifier("define"),"function"),t.createPropertyAccessExpression(t.createIdentifier("define"),"amd")),t.createBlock([t.createExpressionStatement(t.createCallExpression(t.createIdentifier("define"),void 0,[...a?[a]:[],t.createArrayLiteralExpression([t.createStringLiteral("require"),t.createStringLiteral("exports"),...r,...i]),t.createIdentifier("factory")]))])))],!0),void 0)),u=t.updateSourceFile(n,vM(t.createNodeArray([t.createExpressionStatement(t.createCallExpression(l,void 0,[t.createFunctionExpression(void 0,void 0,void 0,void 0,[t.createParameterDeclaration(void 0,void 0,"require"),t.createParameterDeclaration(void 0,void 0,"exports"),...o],void 0,E(n))]))]),n.statements));return ME(u,e.readEmitHelpers()),u}function w(e,n){const r=[],i=[],o=[];for(const s of e.amdDependencies)s.name?(r.push(t.createStringLiteral(s.path)),o.push(t.createParameterDeclaration(void 0,void 0,s.name))):i.push(t.createStringLiteral(s.path));for(const l of g.externalImports){const e=EP(t,l,h,c,a,s),u=kP(t,l,h);e&&(n&&u?(dE(u,8),r.push(e),o.push(t.createParameterDeclaration(void 0,void 0,u))):i.push(e))}return{aliasedModuleNames:r,unaliasedModuleNames:i,importAliasNames:o}}function k(e){if(uI(e)||TI(e)||!EP(t,e,h,c,a,s))return;const n=kP(t,e,h),r=L(e,n);return r!==n?t.createExpressionStatement(t.createAssignment(n,r)):void 0}function E(e){r();const n=[],o=t.copyPrologue(e.statements,n,!0,N);b()&&_e(n,H()),$(g.exportedNames)&&_e(n,t.createExpressionStatement(Re(g.exportedNames,((e,n)=>t.createAssignment(t.createPropertyAccessExpression(t.createIdentifier("exports"),t.createIdentifier(kc(n))),e)),t.createVoidZero())));for(const t of g.exportedFunctions)V(n,t);_e(n,iU(g.externalHelpersImportDeclaration,N,kd)),2===u&&me(n,J(g.externalImports,k)),me(n,oU(e.statements,N,kd,o)),C(n,!0),q_(n,i());const s=t.createBlock(n,!0);return v&&PE(s,gq),s}function C(e,n){if(g.exportEquals){const r=iU(g.exportEquals.expression,D,td);if(r)if(n){const n=t.createReturnStatement(r);vM(n,g.exportEquals),dE(n,3840),e.push(n)}else{const n=t.createExpressionStatement(t.createAssignment(t.createPropertyAccessExpression(t.createIdentifier("module"),"exports"),r));vM(n,g.exportEquals),dE(n,3072),e.push(n)}}}function N(e){switch(e.kind){case 272:return function(e){let n;const r=Dh(e);if(2!==u){if(!e.importClause)return aE(vM(t.createExpressionStatement(j(e)),e),e);{const i=[];r&&!Ph(e)?i.push(t.createVariableDeclaration(t.cloneNode(r.name),void 0,void 0,L(e,j(e)))):(i.push(t.createVariableDeclaration(t.getGeneratedNameForNode(e),void 0,void 0,L(e,j(e)))),r&&Ph(e)&&i.push(t.createVariableDeclaration(t.cloneNode(r.name),void 0,void 0,t.getGeneratedNameForNode(e)))),n=_e(n,aE(vM(t.createVariableStatement(void 0,t.createVariableDeclarationList(i,l>=2?2:0)),e),e))}}else r&&Ph(e)&&(n=_e(n,t.createVariableStatement(void 0,t.createVariableDeclarationList([aE(vM(t.createVariableDeclaration(t.cloneNode(r.name),void 0,void 0,t.getGeneratedNameForNode(e)),e),e)],l>=2?2:0))));return n=function(e,t){if(g.exportEquals)return e;const n=t.importClause;if(!n)return e;const r=new HU;n.name&&(e=K(e,r,n));const i=n.namedBindings;if(i)switch(i.kind){case 274:e=K(e,r,i);break;case 275:for(const t of i.elements)e=K(e,r,t,!0)}return e}(n,e),Pe(n)}(e);case 271:return function(e){let n;Tn.assert(Mm(e),"import= for internal module references should be handled in an earlier transformer."),2!==u?n=Kv(e,32)?_e(n,aE(vM(t.createExpressionStatement(Q(e.name,j(e))),e),e)):_e(n,aE(vM(t.createVariableStatement(void 0,t.createVariableDeclarationList([t.createVariableDeclaration(t.cloneNode(e.name),void 0,void 0,j(e))],l>=2?2:0)),e),e)):Kv(e,32)&&(n=_e(n,aE(vM(t.createExpressionStatement(Q(t.getExportName(e),t.getLocalName(e))),e),e)));return n=function(e,t){if(g.exportEquals)return e;return K(e,new HU,t)}(n,e),Pe(n)}(e);case 278:return function(e){if(!e.moduleSpecifier)return;const r=t.getGeneratedNameForNode(e);if(e.exportClause&&wI(e.exportClause)){const i=[];2!==u&&i.push(aE(vM(t.createVariableStatement(void 0,t.createVariableDeclarationList([t.createVariableDeclaration(r,void 0,void 0,j(e))])),e),e));for(const o of e.exportClause.elements){const a=!(!jS(s)||2&ip(e)||"default"!==kc(o.propertyName||o.name)),c=t.createPropertyAccessExpression(a?n().createImportDefaultHelper(r):r,o.propertyName||o.name);i.push(aE(vM(t.createExpressionStatement(Q(t.getExportName(o),c,void 0,!0)),o),o))}return Pe(i)}if(e.exportClause){const i=[];return i.push(aE(vM(t.createExpressionStatement(Q(t.cloneNode(e.exportClause.name),function(e,t){if(!jS(s)||2&ip(e))return t;if(BU(e))return n().createImportStarHelper(t);return t}(e,2!==u?j(e):X_(e)?r:t.createIdentifier(kc(e.exportClause.name))))),e),e)),Pe(i)}return aE(vM(t.createExpressionStatement(n().createExportStarHelper(2!==u?j(e):r)),e),e)}(e);case 277:return function(e){if(e.isExportEquals)return;return G(t.createIdentifier("default"),iU(e.expression,D,td),e,!0)}(e);default:return A(e)}}function A(n){switch(n.kind){case 243:return function(n){let r,i,o;if(Kv(n,32)){let e,s=!1;for(const r of n.declarationList.declarations)if(YC(r.name)&&aP(r.name))if(e||(e=oU(n.modifiers,Y,lu)),r.initializer){i=_e(i,t.updateVariableDeclaration(r,r.name,void 0,void 0,Q(r.name,iU(r.initializer,D,td))))}else i=_e(i,r);else if(r.initializer)if(!Mu(r.name)&&(uA(r.initializer)||lA(r.initializer)||SA(r.initializer))){const e=t.createAssignment(vM(t.createPropertyAccessExpression(t.createIdentifier("exports"),r.name),r.name),t.createIdentifier($g(r.name)));i=_e(i,t.createVariableDeclaration(r.name,r.exclamationToken,r.type,iU(r.initializer,D,td))),o=_e(o,e),s=!0}else o=_e(o,U(r));if(i&&(r=_e(r,t.updateVariableStatement(n,e,t.updateVariableDeclarationList(n.declarationList,i)))),o){const e=aE(vM(t.createExpressionStatement(t.inlineExpressions(o)),n),n);s&&uE(e),r=_e(r,e)}}else r=_e(r,fU(n,D,e));return r=function(e,t){return B(e,t.declarationList,!1)}(r,n),Pe(r)}(n);case 262:return function(n){let r;r=Kv(n,32)?_e(r,aE(vM(t.createFunctionDeclaration(oU(n.modifiers,Y,lu),n.asteriskToken,t.getDeclarationName(n,!0,!0),void 0,oU(n.parameters,D,fN),void 0,fU(n.body,D,e)),n),n)):_e(r,fU(n,D,e));return Pe(r)}(n);case 263:return function(n){let r;r=Kv(n,32)?_e(r,aE(vM(t.createClassDeclaration(oU(n.modifiers,Y,Cu),t.getDeclarationName(n,!0,!0),void 0,oU(n.heritageClauses,D,KI),oU(n.members,D,bu)),n),n)):_e(r,fU(n,D,e));return r=V(r,n),Pe(r)}(n);case 248:return O(n,!0);case 249:return function(n){if(eI(n.initializer)&&!(7&n.initializer.flags)){const r=B(void 0,n.initializer,!0);if($(r)){const i=iU(n.initializer,P,_d),o=iU(n.expression,D,td),s=_U(n.statement,A,e),a=OA(s)?t.updateBlock(s,[...r,...s.statements]):t.createBlock([...r,s],!0);return t.updateForInStatement(n,i,o,a)}}return t.updateForInStatement(n,iU(n.initializer,P,_d),iU(n.expression,D,td),_U(n.statement,A,e))}(n);case 250:return function(n){if(eI(n.initializer)&&!(7&n.initializer.flags)){const r=B(void 0,n.initializer,!0),i=iU(n.initializer,P,_d),o=iU(n.expression,D,td);let s=_U(n.statement,A,e);return $(r)&&(s=OA(s)?t.updateBlock(s,[...r,...s.statements]):t.createBlock([...r,s],!0)),t.updateForOfStatement(n,n.awaitModifier,i,o,s)}return t.updateForOfStatement(n,n.awaitModifier,iU(n.initializer,P,_d),iU(n.expression,D,td),_U(n.statement,A,e))}(n);case 246:return function(n){return t.updateDoStatement(n,_U(n.statement,A,e),iU(n.expression,D,td))}(n);case 247:return function(n){return t.updateWhileStatement(n,iU(n.expression,D,td),_U(n.statement,A,e))}(n);case 256:return function(e){return t.updateLabeledStatement(e,e.label,Tn.checkDefined(iU(e.statement,A,kd,t.liftToBlock)))}(n);case 254:return function(e){return t.updateWithStatement(e,iU(e.expression,D,td),Tn.checkDefined(iU(e.statement,A,kd,t.liftToBlock)))}(n);case 245:return function(e){return t.updateIfStatement(e,iU(e.expression,D,td),Tn.checkDefined(iU(e.thenStatement,A,kd,t.liftToBlock)),iU(e.elseStatement,A,kd,t.liftToBlock))}(n);case 255:return function(e){return t.updateSwitchStatement(e,iU(e.expression,D,td),Tn.checkDefined(iU(e.caseBlock,A,cI)))}(n);case 269:return function(e){return t.updateCaseBlock(e,oU(e.clauses,A,Md))}(n);case 296:return function(e){return t.updateCaseClause(e,iU(e.expression,D,td),oU(e.statements,A,kd))}(n);case 297:case 258:return function(t){return fU(t,A,e)}(n);case 299:return function(e){return t.updateCatchClause(e,e.variableDeclaration,Tn.checkDefined(iU(e.block,A,OA)))}(n);case 241:return function(t){return t=fU(t,A,e),t}(n);default:return D(n)}}function I(n,r){if(!(276828160&n.transformFlags))return n;switch(n.kind){case 248:return O(n,!1);case 244:return function(e){return t.updateExpressionStatement(e,iU(e.expression,P,td))}(n);case 217:return function(e,n){return t.updateParenthesizedExpression(e,iU(e.expression,n?P:D,td))}(n,r);case 354:return function(e,n){return t.updatePartiallyEmittedExpression(e,iU(e.expression,n?P:D,td))}(n,r);case 213:if(mf(n)&&void 0===h.impliedNodeFormat)return function(n){if(0===u&&l>=7)return fU(n,D,e);const r=EP(t,n,h,c,a,s),i=iU(we(n.arguments),D,td),d=!r||i&&MC(i)&&i.text===r.text?i:r,_=!!(16384&n.transformFlags);switch(s.module){case 2:return F(d,_);case 3:return function(e,n){if(v=!0,QU(e)){const r=tu(e)?e:MC(e)?t.createStringLiteralFromNode(e):dE(vM(t.cloneNode(e),e),3072);return t.createConditionalExpression(t.createIdentifier("__syncRequire"),void 0,R(e),void 0,F(r,n))}{const r=t.createTempVariable(o);return t.createComma(t.createAssignment(r,e),t.createConditionalExpression(t.createIdentifier("__syncRequire"),void 0,R(r,!0),void 0,F(r,n)))}}(d??t.createVoidZero(),_);default:return R(d)}}(n);break;case 226:if(Sb(n))return function(t,n){if(M(t.left))return vB(t,D,e,0,!n,z);return fU(t,D,e)}(n,r);break;case 224:case 225:return function(n,r){if((46===n.operator||47===n.operator)&&YC(n.operand)&&!tu(n.operand)&&!aP(n.operand)&&!mx(n.operand)){const e=X(n.operand);if(e){let i,s=iU(n.operand,D,td);mA(n)?s=t.updatePrefixUnaryExpression(n,s):(s=t.updatePostfixUnaryExpression(n,s),r||(i=t.createTempVariable(o),s=t.createAssignment(i,s),vM(s,n)),s=t.createComma(s,t.cloneNode(n.operand)),vM(s,n));for(const t of e)y[Gz(s)]=!0,s=Q(t,s),vM(s,n);return i&&(y[Gz(s)]=!0,s=t.createComma(s,i),vM(s,n)),s}}return fU(n,D,e)}(n,r)}return fU(n,D,e)}function D(e){return I(e,!1)}function P(e){return I(e,!0)}function M(e){if(tA(e))for(const t of e.properties)switch(t.kind){case 303:if(M(t.initializer))return!0;break;case 304:if(M(t.name))return!0;break;case 305:if(M(t.expression))return!0;break;case 174:case 177:case 178:return!1;default:Tn.assertNever(t,"Unhandled object member kind")}else if(eA(e)){for(const t of e.elements)if(xA(t)){if(M(t.expression))return!0}else if(M(t))return!0}else if(YC(e))return m(X(e))>(cP(e)?1:0);return!1}function O(n,r){if(r&&n.initializer&&eI(n.initializer)&&!(7&n.initializer.flags)){const i=B(void 0,n.initializer,!1);if(i){const o=[],s=iU(n.initializer,P,eI),a=t.createVariableStatement(void 0,s);o.push(a),me(o,i);const c=iU(n.condition,D,td),l=iU(n.incrementor,P,td),u=_U(n.statement,r?A:D,e);return o.push(t.updateForStatement(n,void 0,c,l,u)),o}}return t.updateForStatement(n,iU(n.initializer,P,_d),iU(n.condition,D,td),iU(n.incrementor,P,td),_U(n.statement,r?A:D,e))}function F(e,r){const i=t.createUniqueName("resolve"),o=t.createUniqueName("reject"),a=[t.createParameterDeclaration(void 0,void 0,i),t.createParameterDeclaration(void 0,void 0,o)],c=t.createBlock([t.createExpressionStatement(t.createCallExpression(t.createIdentifier("require"),void 0,[t.createArrayLiteralExpression([e||t.createOmittedExpression()]),i,o]))]);let u;l>=2?u=t.createArrowFunction(void 0,void 0,a,void 0,void 0,c):(u=t.createFunctionExpression(void 0,void 0,void 0,void 0,a,void 0,c),r&&dE(u,16));const d=t.createNewExpression(t.createIdentifier("Promise"),void 0,[u]);return jS(s)?t.createCallExpression(t.createPropertyAccessExpression(d,t.createIdentifier("then")),void 0,[n().createImportStarCallbackHelper()]):d}function R(e,r){const i=e&&!YU(e)&&!r,o=t.createCallExpression(t.createPropertyAccessExpression(t.createIdentifier("Promise"),"resolve"),void 0,i?l>=2?[t.createTemplateExpression(t.createTemplateHead(""),[t.createTemplateSpan(e,t.createTemplateTail(""))])]:[t.createCallExpression(t.createPropertyAccessExpression(t.createStringLiteral(""),"concat"),void 0,[e])]:[]);let a=t.createCallExpression(t.createIdentifier("require"),void 0,i?[t.createIdentifier("s")]:e?[e]:[]);jS(s)&&(a=n().createImportStarHelper(a));const c=i?[t.createParameterDeclaration(void 0,void 0,"s")]:[];let u;u=l>=2?t.createArrowFunction(void 0,void 0,c,void 0,void 0,a):t.createFunctionExpression(void 0,void 0,void 0,void 0,c,void 0,t.createBlock([t.createReturnStatement(a)]));return t.createCallExpression(t.createPropertyAccessExpression(o,"then"),void 0,[u])}function L(e,t){return!jS(s)||2&ip(e)?t:qU(e)?n().createImportStarHelper(t):VU(e)?n().createImportDefaultHelper(t):t}function j(e){const n=EP(t,e,h,c,a,s),r=[];return n&&r.push(n),t.createCallExpression(t.createIdentifier("require"),void 0,r)}function z(e,n,r){const i=X(e);if(i){let o=cP(e)?n:t.createAssignment(e,n);for(const e of i)dE(o,8),o=Q(e,o,r);return o}return t.createAssignment(e,n)}function U(n){return Mu(n.name)?vB(iU(n,D,gx),D,e,0,!1,z):t.createAssignment(vM(t.createPropertyAccessExpression(t.createIdentifier("exports"),n.name),n.name),n.initializer?iU(n.initializer,D,td):t.createVoidZero())}function B(e,t,n){if(g.exportEquals)return e;for(const r of t.declarations)e=q(e,r,n);return e}function q(e,t,n){if(g.exportEquals)return e;if(Mu(t.name))for(const r of t.name.elements)TA(r)||(e=q(e,r,n));else tu(t.name)||$A(t)&&!t.initializer&&!n||(e=K(e,new HU,t));return e}function V(e,n){if(g.exportEquals)return e;const r=new HU;if(Kv(n,32)){e=W(e,r,Kv(n,2048)?t.createIdentifier("default"):t.getDeclarationName(n),t.getLocalName(n),n)}return n.name&&(e=K(e,r,n)),e}function K(e,n,r,i){const o=t.getDeclarationName(r),s=g.exportSpecifiers.get(o);if(s)for(const t of s)e=W(e,n,t.name,o,t.name,void 0,i);return e}function W(e,t,n,r,i,o,s){return t.has(n)||(t.set(n,!0),e=_e(e,G(n,r,i,o,s))),e}function H(){const e=t.createExpressionStatement(t.createCallExpression(t.createPropertyAccessExpression(t.createIdentifier("Object"),"defineProperty"),void 0,[t.createIdentifier("exports"),t.createStringLiteral("__esModule"),t.createObjectLiteralExpression([t.createPropertyAssignment("value",t.createTrue())])]));return dE(e,2097152),e}function G(e,n,r,i,o){const s=vM(t.createExpressionStatement(Q(e,n,void 0,o)),r);return bP(s),i||dE(s,3072),s}function Q(e,n,r,i){return vM(i?t.createCallExpression(t.createPropertyAccessExpression(t.createIdentifier("Object"),"defineProperty"),void 0,[t.createIdentifier("exports"),t.createStringLiteralFromNode(e),t.createObjectLiteralExpression([t.createPropertyAssignment("enumerable",t.createTrue()),t.createPropertyAssignment("get",t.createFunctionExpression(void 0,void 0,void 0,void 0,[],void 0,t.createBlock([t.createReturnStatement(n)])))])]):t.createAssignment(t.createPropertyAccessExpression(t.createIdentifier("exports"),t.cloneNode(e)),n),r)}function Y(e){switch(e.kind){case 95:case 90:return}return e}function Z(e){var n,r;if(8192&rp(e)){const n=xP(h);return n?t.createPropertyAccessExpression(n,e):e}if((!tu(e)||64&e.emitNode.autoGenerate.flags)&&!aP(e)){const i=a.getReferencedExportContainer(e,cP(e));if(i&&307===i.kind)return vM(t.createPropertyAccessExpression(t.createIdentifier("exports"),t.cloneNode(e)),e);const o=a.getReferencedImportDeclaration(e);if(o){if(_I(o))return vM(t.createPropertyAccessExpression(t.getGeneratedNameForNode(o.parent),t.createIdentifier("default")),e);if(xI(o)){const i=o.propertyName||o.name;return vM(t.createPropertyAccessExpression(t.getGeneratedNameForNode((null==(r=null==(n=o.parent)?void 0:n.parent)?void 0:r.parent)||o),t.cloneNode(i)),e)}}}return e}function X(e){if(tu(e)){if(ru(e)){const t=null==g?void 0:g.exportSpecifiers.get(e);if(t){const e=[];for(const n of t)e.push(n.name);return e}}}else{const t=a.getReferencedImportDeclaration(e);if(t)return null==g?void 0:g.exportedBindings[LU(t)];const n=new Set,r=a.getReferencedValueDeclarations(e);if(r){for(const e of r){const t=null==g?void 0:g.exportedBindings[LU(e)];if(t)for(const e of t)n.add(e)}if(n.size)return Ke(n)}}}}var gq={name:"typescript:dynamicimport-sync-require",scoped:!0,text:'\n var __syncRequire = typeof module === "object" && typeof module.exports === "object";'};function yq(e){const{factory:t,startLexicalEnvironment:n,endLexicalEnvironment:r,hoistVariableDeclaration:i}=e,o=e.getCompilerOptions(),s=e.getEmitResolver(),a=e.getEmitHost(),c=e.onSubstituteNode,l=e.onEmitNode;e.onSubstituteNode=function(e,n){if(function(e){return x&&e.id&&x[e.id]}(n=c(e,n)))return n;if(1===e)return function(e){switch(e.kind){case 80:return function(e){var n,r;if(8192&rp(e)){const n=xP(f);return n?t.createPropertyAccessExpression(n,e):e}if(!tu(e)&&!aP(e)){const i=s.getReferencedImportDeclaration(e);if(i){if(_I(i))return vM(t.createPropertyAccessExpression(t.getGeneratedNameForNode(i.parent),t.createIdentifier("default")),e);if(xI(i))return vM(t.createPropertyAccessExpression(t.getGeneratedNameForNode((null==(r=null==(n=i.parent)?void 0:n.parent)?void 0:r.parent)||i),t.cloneNode(i.propertyName||i.name)),e)}}return e}(e);case 226:return function(e){if(gb(e.operatorToken.kind)&&YC(e.left)&&(!tu(e.left)||ru(e.left))&&!aP(e.left)){const t=H(e.left);if(t){let n=e;for(const e of t)n=j(e,G(n));return n}}return e}(e);case 236:return function(e){if(hf(e))return t.createPropertyAccessExpression(y,t.createIdentifier("meta"));return e}(e)}return e}(n);if(4===e)return function(e){if(304===e.kind)return function(e){var n,r;const i=e.name;if(!tu(i)&&!aP(i)){const o=s.getReferencedImportDeclaration(i);if(o){if(_I(o))return vM(t.createPropertyAssignment(t.cloneNode(i),t.createPropertyAccessExpression(t.getGeneratedNameForNode(o.parent),t.createIdentifier("default"))),e);if(xI(o))return vM(t.createPropertyAssignment(t.cloneNode(i),t.createPropertyAccessExpression(t.getGeneratedNameForNode((null==(r=null==(n=o.parent)?void 0:n.parent)?void 0:r.parent)||o),t.cloneNode(o.propertyName||o.name))),e)}}return e}(e);return e}(n);return n},e.onEmitNode=function(e,t,n){if(307===t.kind){const r=LU(t);f=t,m=u[r],g=d[r],x=_[r],y=p[r],x&&delete _[r],l(e,t,n),f=void 0,m=void 0,g=void 0,y=void 0,x=void 0}else l(e,t,n)},e.enableSubstitution(80),e.enableSubstitution(304),e.enableSubstitution(226),e.enableSubstitution(236),e.enableEmitNotification(307);const u=[],d=[],_=[],p=[];let f,m,g,y,v,b,x;return UU(e,(function(i){if(i.isDeclarationFile||!(Sp(i,o)||8388608&i.transformFlags))return i;const c=LU(i);f=i,b=i,m=u[c]=KU(e,i),g=t.createUniqueName("exports"),d[c]=g,y=p[c]=t.createUniqueName("context");const l=function(e){const n=new Map,r=[];for(const i of e){const e=EP(t,i,f,a,s,o);if(e){const t=e.text,o=n.get(t);void 0!==o?r[o].externalImports.push(i):(n.set(t,r.length),r.push({name:e,externalImports:[i]}))}}return r}(m.externalImports),h=function(e,i){const s=[];n();const a=eT(o,"alwaysStrict")||tO(f),c=t.copyPrologue(e.statements,s,a,w);s.push(t.createVariableStatement(void 0,t.createVariableDeclarationList([t.createVariableDeclaration("__moduleName",void 0,void 0,t.createLogicalAnd(y,t.createPropertyAccessExpression(y,"id")))]))),iU(m.externalHelpersImportDeclaration,w,kd);const l=oU(e.statements,w,kd,c);me(s,v),q_(s,r());const u=function(e){if(!m.hasExportStarsToExportValues)return;if(!$(m.exportedNames)&&0===m.exportedFunctions.size&&0===m.exportSpecifiers.size){let t=!1;for(const e of m.externalImports)if(278===e.kind&&e.exportClause){t=!0;break}if(!t){const t=S(void 0);return e.push(t),t.name}}const n=[];if(m.exportedNames)for(const o of m.exportedNames)"default"!==o.escapedText&&n.push(t.createPropertyAssignment(t.createStringLiteralFromNode(o),t.createTrue()));for(const o of m.exportedFunctions)Kv(o,2048)||(Tn.assert(!!o.name),n.push(t.createPropertyAssignment(t.createStringLiteralFromNode(o.name),t.createTrue())));const r=t.createUniqueName("exportedNames");e.push(t.createVariableStatement(void 0,t.createVariableDeclarationList([t.createVariableDeclaration(r,void 0,void 0,t.createObjectLiteralExpression(n,!0))])));const i=S(r);return e.push(i),i.name}(s),d=2097152&e.transformFlags?t.createModifiersFromModifierFlags(1024):void 0,_=t.createObjectLiteralExpression([t.createPropertyAssignment("setters",T(u,i)),t.createPropertyAssignment("execute",t.createFunctionExpression(d,void 0,void 0,void 0,[],void 0,t.createBlock(l,!0)))],!0);return s.push(t.createReturnStatement(_)),t.createBlock(s,!0)}(i,l),k=t.createFunctionExpression(void 0,void 0,void 0,void 0,[t.createParameterDeclaration(void 0,void 0,g),t.createParameterDeclaration(void 0,void 0,y)],void 0,h),E=CP(t,i,a,o),C=t.createArrayLiteralExpression(R(l,(e=>e.name))),N=dE(t.updateSourceFile(i,vM(t.createNodeArray([t.createExpressionStatement(t.createCallExpression(t.createPropertyAccessExpression(t.createIdentifier("System"),"register"),void 0,E?[E,C,k]:[C,k]))]),i.statements)),2048);o.outFile||RE(N,h,(e=>!e.scoped));x&&(_[c]=x,x=void 0);return f=void 0,m=void 0,g=void 0,y=void 0,v=void 0,b=void 0,N}));function S(e){const n=t.createUniqueName("exportStar"),r=t.createIdentifier("m"),i=t.createIdentifier("n"),o=t.createIdentifier("exports");let s=t.createStrictInequality(i,t.createStringLiteral("default"));return e&&(s=t.createLogicalAnd(s,t.createLogicalNot(t.createCallExpression(t.createPropertyAccessExpression(e,"hasOwnProperty"),void 0,[i])))),t.createFunctionDeclaration(void 0,void 0,n,void 0,[t.createParameterDeclaration(void 0,void 0,r)],void 0,t.createBlock([t.createVariableStatement(void 0,t.createVariableDeclarationList([t.createVariableDeclaration(o,void 0,void 0,t.createObjectLiteralExpression([]))])),t.createForInStatement(t.createVariableDeclarationList([t.createVariableDeclaration(i)]),r,t.createBlock([dE(t.createIfStatement(s,t.createExpressionStatement(t.createAssignment(t.createElementAccessExpression(o,i),t.createElementAccessExpression(r,i)))),1)])),t.createExpressionStatement(t.createCallExpression(g,void 0,[o]))],!0))}function T(e,n){const r=[];for(const i of n){const n=h(i.externalImports,(e=>kP(t,e,f))),o=n?t.getGeneratedNameForNode(n):t.createUniqueName(""),s=[];for(const r of i.externalImports){const n=kP(t,r,f);switch(r.kind){case 272:if(!r.importClause)break;case 271:Tn.assert(void 0!==n),s.push(t.createExpressionStatement(t.createAssignment(n,o))),Kv(r,32)&&s.push(t.createExpressionStatement(t.createCallExpression(g,void 0,[t.createStringLiteral(kc(n)),o])));break;case 278:if(Tn.assert(void 0!==n),r.exportClause)if(wI(r.exportClause)){const e=[];for(const n of r.exportClause.elements)e.push(t.createPropertyAssignment(t.createStringLiteral(kc(n.name)),t.createElementAccessExpression(o,t.createStringLiteral(kc(n.propertyName||n.name)))));s.push(t.createExpressionStatement(t.createCallExpression(g,void 0,[t.createObjectLiteralExpression(e,!0)])))}else s.push(t.createExpressionStatement(t.createCallExpression(g,void 0,[t.createStringLiteral(kc(r.exportClause.name)),o])));else s.push(t.createExpressionStatement(t.createCallExpression(e,void 0,[o])))}}r.push(t.createFunctionExpression(void 0,void 0,void 0,void 0,[t.createParameterDeclaration(void 0,void 0,o)],void 0,t.createBlock(s,!0)))}return t.createArrayLiteralExpression(r,!0)}function w(e){switch(e.kind){case 272:return function(e){let n;e.importClause&&i(kP(t,e,f));return Pe(function(e,t){if(m.exportEquals)return e;const n=t.importClause;if(!n)return e;n.name&&(e=O(e,n));const r=n.namedBindings;if(r)switch(r.kind){case 274:e=O(e,r);break;case 275:for(const t of r.elements)e=O(e,t)}return e}(n,e))}(e);case 271:return function(e){let n;return Tn.assert(Mm(e),"import= for internal module references should be handled in an earlier transformer."),i(kP(t,e,f)),Pe(function(e,t){if(m.exportEquals)return e;return O(e,t)}(n,e))}(e);case 278:return function(e){return void Tn.assertIsDefined(e)}(e);case 277:return function(e){if(e.isExportEquals)return;const n=iU(e.expression,V,td);return L(t.createIdentifier("default"),n,!0)}(e);default:return z(e)}}function k(e){if(!C(e.declarationList))return iU(e,V,kd);let n;if(uf(e.declarationList)||lf(e.declarationList)){const r=oU(e.modifiers,W,Cu),i=[];for(const n of e.declarationList.declarations)i.push(t.updateVariableDeclaration(n,t.getGeneratedNameForNode(n.name),void 0,void 0,N(n,!1)));const o=t.updateVariableDeclarationList(e.declarationList,i);n=_e(n,t.updateVariableStatement(e,r,o))}else{let r;const i=Kv(e,32);for(const t of e.declarationList.declarations)t.initializer?r=_e(r,N(t,i)):E(t);r&&(n=_e(n,vM(t.createExpressionStatement(t.inlineExpressions(r)),e)))}return n=function(e,t,n){if(m.exportEquals)return e;for(const r of t.declarationList.declarations)(r.initializer||n)&&(e=P(e,r,n));return e}(n,e,!1),Pe(n)}function E(e){if(Mu(e.name))for(const t of e.name.elements)TA(t)||E(t);else i(t.cloneNode(e.name))}function C(e){return!(4194304&rp(e)||307!==b.kind&&7&vc(e).flags)}function N(t,n){const r=n?A:I;return Mu(t.name)?vB(t,V,e,0,!1,r):t.initializer?r(t.name,iU(t.initializer,V,td)):t.name}function A(e,t,n){return D(e,t,n,!0)}function I(e,t,n){return D(e,t,n,!1)}function D(e,n,r,o){return i(t.cloneNode(e)),o?j(e,G(vM(t.createAssignment(e,n),r))):G(vM(t.createAssignment(e,n),r))}function P(e,n,r){if(m.exportEquals)return e;if(Mu(n.name))for(const t of n.name.elements)TA(t)||(e=P(e,t,r));else if(!tu(n.name)){let i;r&&(e=F(e,n.name,t.getLocalName(n)),i=kc(n.name)),e=O(e,n,i)}return e}function M(e,n){if(m.exportEquals)return e;let r;if(Kv(n,32)){const i=Kv(n,2048)?t.createStringLiteral("default"):n.name;e=F(e,i,t.getLocalName(n)),r=$g(i)}return n.name&&(e=O(e,n,r)),e}function O(e,n,r){if(m.exportEquals)return e;const i=t.getDeclarationName(n),o=m.exportSpecifiers.get(i);if(o)for(const t of o)t.name.escapedText!==r&&(e=F(e,t.name,i));return e}function F(e,t,n,r){return e=_e(e,L(t,n,r))}function L(e,n,r){const i=t.createExpressionStatement(j(e,n));return bP(i),r||dE(i,3072),i}function j(e,n){const r=YC(e)?t.createStringLiteralFromNode(e):e;return dE(n,3072|rp(n)),SE(t.createCallExpression(g,void 0,[r,n]),n)}function z(n){switch(n.kind){case 243:return k(n);case 262:return function(n){v=Kv(n,32)?_e(v,t.updateFunctionDeclaration(n,oU(n.modifiers,W,Cu),n.asteriskToken,t.getDeclarationName(n,!0,!0),void 0,oU(n.parameters,V,fN),void 0,iU(n.body,V,OA))):_e(v,fU(n,V,e)),v=M(v,n)}(n);case 263:return function(e){let n;const r=t.getLocalName(e);return i(r),n=_e(n,vM(t.createExpressionStatement(t.createAssignment(r,vM(t.createClassExpression(oU(e.modifiers,W,Cu),e.name,void 0,oU(e.heritageClauses,V,KI),oU(e.members,V,bu)),e))),e)),n=M(n,e),Pe(n)}(n);case 248:return U(n,!0);case 249:return function(n){const r=b;return b=n,n=t.updateForInStatement(n,B(n.initializer),iU(n.expression,V,td),_U(n.statement,z,e)),b=r,n}(n);case 250:return function(n){const r=b;return b=n,n=t.updateForOfStatement(n,n.awaitModifier,B(n.initializer),iU(n.expression,V,td),_U(n.statement,z,e)),b=r,n}(n);case 246:return function(n){return t.updateDoStatement(n,_U(n.statement,z,e),iU(n.expression,V,td))}(n);case 247:return function(n){return t.updateWhileStatement(n,iU(n.expression,V,td),_U(n.statement,z,e))}(n);case 256:return function(e){return t.updateLabeledStatement(e,e.label,Tn.checkDefined(iU(e.statement,z,kd,t.liftToBlock)))}(n);case 254:return function(e){return t.updateWithStatement(e,iU(e.expression,V,td),Tn.checkDefined(iU(e.statement,z,kd,t.liftToBlock)))}(n);case 245:return function(e){return t.updateIfStatement(e,iU(e.expression,V,td),Tn.checkDefined(iU(e.thenStatement,z,kd,t.liftToBlock)),iU(e.elseStatement,z,kd,t.liftToBlock))}(n);case 255:return function(e){return t.updateSwitchStatement(e,iU(e.expression,V,td),Tn.checkDefined(iU(e.caseBlock,z,cI)))}(n);case 269:return function(e){const n=b;return b=e,e=t.updateCaseBlock(e,oU(e.clauses,z,Md)),b=n,e}(n);case 296:return function(e){return t.updateCaseClause(e,iU(e.expression,V,td),oU(e.statements,z,kd))}(n);case 297:case 258:return function(t){return fU(t,z,e)}(n);case 299:return function(e){const n=b;return b=e,e=t.updateCatchClause(e,e.variableDeclaration,Tn.checkDefined(iU(e.block,z,OA))),b=n,e}(n);case 241:return function(t){const n=b;return b=t,t=fU(t,z,e),b=n,t}(n);default:return V(n)}}function U(n,r){const i=b;return b=n,n=t.updateForStatement(n,iU(n.initializer,r?B:K,_d),iU(n.condition,V,td),iU(n.incrementor,K,td),_U(n.statement,r?z:V,e)),b=i,n}function B(e){if(function(e){return eI(e)&&C(e)}(e)){let n;for(const t of e.declarations)n=_e(n,N(t,!1)),t.initializer||E(t);return n?t.inlineExpressions(n):t.createOmittedExpression()}return iU(e,K,_d)}function q(n,r){if(!(276828160&n.transformFlags))return n;switch(n.kind){case 248:return U(n,!1);case 244:return function(e){return t.updateExpressionStatement(e,iU(e.expression,K,td))}(n);case 217:return function(e,n){return t.updateParenthesizedExpression(e,iU(e.expression,n?K:V,td))}(n,r);case 354:return function(e,n){return t.updatePartiallyEmittedExpression(e,iU(e.expression,n?K:V,td))}(n,r);case 226:if(Sb(n))return function(t,n){if(J(t.left))return vB(t,V,e,0,!n);return fU(t,V,e)}(n,r);break;case 213:if(mf(n))return function(e){const n=EP(t,e,f,a,s,o),r=iU(we(e.arguments),V,td),i=!n||r&&MC(r)&&r.text===n.text?r:n;return t.createCallExpression(t.createPropertyAccessExpression(y,t.createIdentifier("import")),void 0,i?[i]:[])}(n);break;case 224:case 225:return function(n,r){if((46===n.operator||47===n.operator)&&YC(n.operand)&&!tu(n.operand)&&!aP(n.operand)&&!mx(n.operand)){const e=H(n.operand);if(e){let o,s=iU(n.operand,V,td);mA(n)?s=t.updatePrefixUnaryExpression(n,s):(s=t.updatePostfixUnaryExpression(n,s),r||(o=t.createTempVariable(i),s=t.createAssignment(o,s),vM(s,n)),s=t.createComma(s,t.cloneNode(n.operand)),vM(s,n));for(const t of e)s=j(t,G(s));return o&&(s=t.createComma(s,o),vM(s,n)),s}}return fU(n,V,e)}(n,r)}return fU(n,V,e)}function V(e){return q(e,!1)}function K(e){return q(e,!0)}function J(e){if(bb(e,!0))return J(e.left);if(xA(e))return J(e.expression);if(tA(e))return $(e.properties,J);if(eA(e))return $(e.elements,J);if(HI(e))return J(e.name);if(WI(e))return J(e.initializer);if(YC(e)){const t=s.getReferencedExportContainer(e);return void 0!==t&&307===t.kind}return!1}function W(e){switch(e.kind){case 95:case 90:return}return e}function H(e){let n;const r=function(e){if(!tu(e)){const t=s.getReferencedImportDeclaration(e);if(t)return t;const n=s.getReferencedValueDeclaration(e);if(n&&(null==m?void 0:m.exportedBindings[LU(n)]))return n;const r=s.getReferencedValueDeclarations(e);if(r)for(const e of r)if(e!==n&&(null==m?void 0:m.exportedBindings[LU(e)]))return e;return n}}(e);if(r){const i=s.getReferencedExportContainer(e,!1);i&&307===i.kind&&(n=_e(n,t.getDeclarationName(r))),n=me(n,null==m?void 0:m.exportedBindings[LU(r)])}else if(tu(e)&&ru(e)){const t=null==m?void 0:m.exportSpecifiers.get(e);if(t){const e=[];for(const n of t)e.push(n.name);return e}}return n}function G(e){return void 0===x&&(x=[]),x[Gz(e)]=!0,e}}function vq(e){const{factory:t,getEmitHelperFactory:n}=e,r=e.getEmitHost(),i=e.getEmitResolver(),o=e.getCompilerOptions(),s=MS(o),a=e.onEmitNode,c=e.onSubstituteNode;let l,u,d;return e.onEmitNode=function(e,t,n){YI(t)?((tO(t)||LS(o))&&o.importHelpers&&(l=new Map),a(e,t,n),l=void 0):a(e,t,n)},e.onSubstituteNode=function(e,n){if(n=c(e,n),l&&YC(n)&&8192&rp(n))return function(e){const n=kc(e);let r=l.get(n);r||l.set(n,r=t.createUniqueName(n,48));return r}(n);return n},e.enableEmitNotification(307),e.enableSubstitution(80),UU(e,(function(r){if(r.isDeclarationFile)return r;if(tO(r)||LS(o)){u=r,d=void 0;let i=function(r){const i=TP(t,n(),r,o);if(i){const e=[],n=t.copyPrologue(r.statements,e);return _e(e,i),me(e,oU(r.statements,_,kd,n)),t.updateSourceFile(r,vM(t.createNodeArray(e),r.statements))}return fU(r,_,e)}(r);return u=void 0,d&&(i=t.updateSourceFile(i,vM(t.createNodeArray(V_(i.statements.slice(),d)),i.statements))),!tO(r)||200===OS(o)||$(i.statements,cd)?i:t.updateSourceFile(i,vM(t.createNodeArray([...i.statements,HD(t)]),i.statements))}return r}));function _(e){switch(e.kind){case 271:return OS(o)>=100?function(e){let n;return Tn.assert(Mm(e),"import= for internal module references should be handled in an earlier transformer."),n=_e(n,aE(vM(t.createVariableStatement(void 0,t.createVariableDeclarationList([t.createVariableDeclaration(t.cloneNode(e.name),void 0,void 0,p(e))],s>=2?2:0)),e),e)),n=function(e,n){Kv(n,32)&&(e=_e(e,t.createExportDeclaration(void 0,n.isTypeOnly,t.createNamedExports([t.createExportSpecifier(!1,void 0,kc(n.name))]))));return e}(n,e),Pe(n)}(e):void 0;case 277:return function(e){if(e.isExportEquals){if(200===OS(o)){return aE(t.createExpressionStatement(t.createAssignment(t.createPropertyAccessExpression(t.createIdentifier("module"),"exports"),e.expression)),e)}return}return e}(e);case 278:return function(e){if(void 0!==o.module&&o.module>5)return e;if(!e.exportClause||!vI(e.exportClause)||!e.moduleSpecifier)return e;const n=e.exportClause.name,r=t.getGeneratedNameForNode(n),i=t.createImportDeclaration(void 0,t.createImportClause(!1,void 0,t.createNamespaceImport(r)),e.moduleSpecifier,e.attributes);aE(i,e.exportClause);const s=X_(e)?t.createExportDefault(r):t.createExportDeclaration(void 0,!1,t.createNamedExports([t.createExportSpecifier(!1,r,n)]));return aE(s,e),[i,s]}(e)}return e}function p(e){const n=EP(t,e,Tn.checkDefined(u),r,i,o),a=[];if(n&&a.push(n),200===OS(o))return t.createCallExpression(t.createIdentifier("require"),void 0,a);if(!d){const e=t.createUniqueName("_createRequire",48),n=t.createImportDeclaration(void 0,t.createImportClause(!1,void 0,t.createNamedImports([t.createImportSpecifier(!1,t.createIdentifier("createRequire"),e)])),t.createStringLiteral("module"),void 0),r=t.createUniqueName("__require",48),i=t.createVariableStatement(void 0,t.createVariableDeclarationList([t.createVariableDeclaration(r,void 0,void 0,t.createCallExpression(t.cloneNode(e),void 0,[t.createPropertyAccessExpression(t.createMetaProperty(102,t.createIdentifier("meta")),t.createIdentifier("url"))]))],s>=2?2:0));d=[n,i]}const c=d[1].declarationList.declarations[0].name;return Tn.assertNode(c,YC),t.createCallExpression(t.cloneNode(c),void 0,a)}}function bq(e){const t=e.onSubstituteNode,n=e.onEmitNode,r=vq(e),i=e.onSubstituteNode,o=e.onEmitNode;e.onSubstituteNode=t,e.onEmitNode=n;const s=hq(e),a=e.onSubstituteNode,c=e.onEmitNode;let l;return e.onSubstituteNode=function(e,n){return YI(n)?(l=n,t(e,n)):l?99===l.impliedNodeFormat?i(e,n):a(e,n):t(e,n)},e.onEmitNode=function(e,t,r){YI(t)&&(l=t);if(!l)return n(e,t,r);if(99===l.impliedNodeFormat)return o(e,t,r);return c(e,t,r)},e.enableSubstitution(307),e.enableEmitNotification(307),function(t){return 307===t.kind?u(t):function(t){return e.factory.createBundle(R(t.sourceFiles,u))}(t)};function u(e){if(e.isDeclarationFile)return e;l=e;const t=(99===e.impliedNodeFormat?r:s)(e);return l=void 0,Tn.assert(YI(t)),t}}function xq(e){return $A(e)||gN(e)||hN(e)||$N(e)||Ld(e)||jd(e)||kN(e)||wN(e)||vN(e)||yN(e)||tI(e)||fN(e)||pN(e)||wA(e)||uI(e)||iI(e)||xN(e)||EN(e)||nA(e)||rA(e)||gA(e)||Rh(e)}function Sq(e){return Ld(e)||jd(e)?function(t){const n=function(t){return Jv(e)?t.errorModuleName?2===t.accessibility?ws.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:ws.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:ws.Public_static_property_0_of_exported_class_has_or_is_using_private_name_1:263===e.parent.kind?t.errorModuleName?2===t.accessibility?ws.Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:ws.Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:ws.Public_property_0_of_exported_class_has_or_is_using_private_name_1:t.errorModuleName?ws.Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:ws.Property_0_of_exported_interface_has_or_is_using_private_name_1}(t);return void 0!==n?{diagnosticMessage:n,errorNode:e,typeName:e.name}:void 0}:yN(e)||vN(e)?function(t){const n=function(t){return Jv(e)?t.errorModuleName?2===t.accessibility?ws.Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:ws.Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:ws.Public_static_method_0_of_exported_class_has_or_is_using_private_name_1:263===e.parent.kind?t.errorModuleName?2===t.accessibility?ws.Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:ws.Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:ws.Public_method_0_of_exported_class_has_or_is_using_private_name_1:t.errorModuleName?ws.Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:ws.Method_0_of_exported_interface_has_or_is_using_private_name_1}(t);return void 0!==n?{diagnosticMessage:n,errorNode:e,typeName:e.name}:void 0}:Tq(e)}function Tq(e){return $A(e)||gN(e)||hN(e)||nA(e)||rA(e)||gA(e)||$N(e)||xN(e)?t:Ld(e)||jd(e)?function(t){let n;n=178===e.kind?Jv(e)?t.errorModuleName?ws.Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:ws.Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1:t.errorModuleName?ws.Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:ws.Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1:Jv(e)?t.errorModuleName?2===t.accessibility?ws.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:ws.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:ws.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1:t.errorModuleName?2===t.accessibility?ws.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:ws.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:ws.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1;return{diagnosticMessage:n,errorNode:e.name,typeName:e.name}}:kN(e)||wN(e)||vN(e)||yN(e)||tI(e)||EN(e)?function(t){let n;switch(e.kind){case 180:n=t.errorModuleName?ws.Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:ws.Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0;break;case 179:n=t.errorModuleName?ws.Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:ws.Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0;break;case 181:n=t.errorModuleName?ws.Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:ws.Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0;break;case 174:case 173:n=Jv(e)?t.errorModuleName?2===t.accessibility?ws.Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:ws.Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:ws.Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0:263===e.parent.kind?t.errorModuleName?2===t.accessibility?ws.Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:ws.Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:ws.Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0:t.errorModuleName?ws.Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1:ws.Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0;break;case 262:n=t.errorModuleName?2===t.accessibility?ws.Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:ws.Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1:ws.Return_type_of_exported_function_has_or_is_using_private_name_0;break;default:return Tn.fail("This is unknown kind for signature: "+e.kind)}return{diagnosticMessage:n,errorNode:e.name||e}}:fN(e)?cc(e,e.parent)&&Kv(e.parent,2)?t:function(t){const n=function(t){switch(e.parent.kind){case 176:return t.errorModuleName?2===t.accessibility?ws.Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:ws.Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2:ws.Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1;case 180:case 185:return t.errorModuleName?ws.Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:ws.Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1;case 179:return t.errorModuleName?ws.Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:ws.Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1;case 181:return t.errorModuleName?ws.Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:ws.Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1;case 174:case 173:return Jv(e.parent)?t.errorModuleName?2===t.accessibility?ws.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:ws.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:ws.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:263===e.parent.parent.kind?t.errorModuleName?2===t.accessibility?ws.Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:ws.Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:ws.Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:t.errorModuleName?ws.Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2:ws.Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1;case 262:case 184:return t.errorModuleName?2===t.accessibility?ws.Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:ws.Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2:ws.Parameter_0_of_exported_function_has_or_is_using_private_name_1;case 178:case 177:return t.errorModuleName?2===t.accessibility?ws.Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:ws.Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2:ws.Parameter_0_of_accessor_has_or_is_using_private_name_1;default:return Tn.fail(`Unknown parent for parameter: ${Tn.formatSyntaxKind(e.parent.kind)}`)}}(t);return void 0!==n?{diagnosticMessage:n,errorNode:e,typeName:e.name}:void 0}:pN(e)?function(){let t;switch(e.parent.kind){case 263:t=ws.Type_parameter_0_of_exported_class_has_or_is_using_private_name_1;break;case 264:t=ws.Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1;break;case 200:t=ws.Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1;break;case 185:case 180:t=ws.Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1;break;case 179:t=ws.Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1;break;case 174:case 173:t=Jv(e.parent)?ws.Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:263===e.parent.parent.kind?ws.Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:ws.Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1;break;case 184:case 262:t=ws.Type_parameter_0_of_exported_function_has_or_is_using_private_name_1;break;case 195:t=ws.Extends_clause_for_inferred_type_0_has_or_is_using_private_name_1;break;case 265:t=ws.Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1;break;default:return Tn.fail("This is unknown parent for type parameter: "+e.parent.kind)}return{diagnosticMessage:t,errorNode:e,typeName:e.name}}:wA(e)?function(){let t;t=nI(e.parent.parent)?KI(e.parent)&&119===e.parent.token?ws.Implements_clause_of_exported_class_0_has_or_is_using_private_name_1:e.parent.parent.name?ws.extends_clause_of_exported_class_0_has_or_is_using_private_name_1:ws.extends_clause_of_exported_class_has_or_is_using_private_name_0:ws.extends_clause_of_exported_interface_0_has_or_is_using_private_name_1;return{diagnosticMessage:t,errorNode:e,typeName:Oc(e.parent.parent)}}:uI(e)?function(){return{diagnosticMessage:ws.Import_declaration_0_is_using_private_name_1,errorNode:e,typeName:e.name}}:iI(e)||Rh(e)?function(t){return{diagnosticMessage:t.errorModuleName?ws.Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2:ws.Exported_type_alias_0_has_or_is_using_private_name_1,errorNode:Rh(e)?Tn.checkDefined(e.typeExpression):e.type,typeName:Rh(e)?Oc(e):e.name}}:Tn.assertNever(e,`Attempted to set a declaration diagnostic context for unhandled node kind: ${Tn.formatSyntaxKind(e.kind)}`);function t(t){const n=function(t){return 260===e.kind||208===e.kind?t.errorModuleName?2===t.accessibility?ws.Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:ws.Exported_variable_0_has_or_is_using_name_1_from_private_module_2:ws.Exported_variable_0_has_or_is_using_private_name_1:172===e.kind||211===e.kind||212===e.kind||226===e.kind||171===e.kind||169===e.kind&&Kv(e.parent,2)?Jv(e)?t.errorModuleName?2===t.accessibility?ws.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:ws.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:ws.Public_static_property_0_of_exported_class_has_or_is_using_private_name_1:263===e.parent.kind||169===e.kind?t.errorModuleName?2===t.accessibility?ws.Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:ws.Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:ws.Public_property_0_of_exported_class_has_or_is_using_private_name_1:t.errorModuleName?ws.Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:ws.Property_0_of_exported_interface_has_or_is_using_private_name_1:void 0}(t);return void 0!==n?{diagnosticMessage:n,errorNode:e,typeName:e.name}:void 0}}function wq(e){const t={219:ws.Add_a_return_type_to_the_function_expression,218:ws.Add_a_return_type_to_the_function_expression,174:ws.Add_a_return_type_to_the_method,177:ws.Add_a_return_type_to_the_get_accessor_declaration,178:ws.Add_a_type_to_parameter_of_the_set_accessor_declaration,262:ws.Add_a_return_type_to_the_function_declaration,180:ws.Add_a_return_type_to_the_function_declaration,169:ws.Add_a_type_annotation_to_the_parameter_0,260:ws.Add_a_type_annotation_to_the_variable_0,172:ws.Add_a_type_annotation_to_the_property_0,171:ws.Add_a_type_annotation_to_the_property_0,277:ws.Move_the_expression_in_default_export_to_a_variable_and_add_a_type_annotation_to_it},n={218:ws.Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,262:ws.Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,219:ws.Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,174:ws.Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,180:ws.Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,177:ws.At_least_one_accessor_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,178:ws.At_least_one_accessor_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations,169:ws.Parameter_must_have_an_explicit_type_annotation_with_isolatedDeclarations,260:ws.Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations,172:ws.Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations,171:ws.Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations,167:ws.Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations,305:ws.Objects_that_contain_spread_assignments_can_t_be_inferred_with_isolatedDeclarations,304:ws.Objects_that_contain_shorthand_properties_can_t_be_inferred_with_isolatedDeclarations,209:ws.Only_const_arrays_can_be_inferred_with_isolatedDeclarations,277:ws.Default_exports_can_t_be_inferred_with_isolatedDeclarations,230:ws.Arrays_with_spread_elements_can_t_inferred_with_isolatedDeclarations};return function(r){if(bc(r,KI))return Vp(r,ws.Extends_clause_can_t_contain_an_expression_with_isolatedDeclarations);if((Df(r)||DN(r.parent))&&(uu(r)||wb(r)))return function(e){const t=Vp(e,ws.Type_containing_private_name_0_can_t_be_used_with_isolatedDeclarations,ep(e,!1));return o(e,t),t}(r);switch(Tn.type(r),r.kind){case 177:case 178:return i(r);case 167:case 304:case 305:return function(e){const t=Vp(e,n[e.kind]);return o(e,t),t}(r);case 209:case 230:return function(e){const t=Vp(e,n[e.kind]);return o(e,t),t}(r);case 174:case 180:case 218:case 219:case 262:return function(e){const r=Vp(e,n[e.kind]);return o(e,r),xw(r,Vp(e,t[e.kind])),r}(r);case 208:return function(e){return Vp(e,ws.Binding_elements_can_t_be_exported_directly_with_isolatedDeclarations)}(r);case 172:case 260:return function(e){const r=Vp(e,n[e.kind]),i=ep(e.name,!1);return xw(r,Vp(e,t[e.kind],i)),r}(r);case 169:return function(r){if(Ld(r.parent))return i(r.parent);const o=e.requiresAddingImplicitUndefined(r);if(!o&&r.initializer)return s(r.initializer);const a=o?ws.Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_it_s_type_This_is_not_supported_with_isolatedDeclarations:n[r.kind],c=Vp(r,a),l=ep(r.name,!1);return xw(c,Vp(r,t[r.kind],l)),c}(r);case 303:return s(r.initializer);case 231:return function(e){return s(e,ws.Inference_from_class_expressions_is_not_supported_with_isolatedDeclarations)}(r);default:return s(r)}};function r(e){const t=bc(e,(e=>SI(e)||kd(e)||$A(e)||gN(e)||fN(e)));if(t)return SI(t)?t:WA(t)?bc(t,(e=>mu(e)&&!xN(e))):kd(t)?void 0:t}function i(e){const{getAccessor:r,setAccessor:i}=Cv(e.symbol.declarations,e),o=Vp((Ld(e)?e.parameters[0]:e)??e,n[e.kind]);return i&&xw(o,Vp(i,t[i.kind])),r&&xw(o,Vp(r,t[r.kind])),o}function o(e,n){const i=r(e);if(i){const e=SI(i)||!i.name?"":ep(i.name,!1);xw(n,Vp(i,t[i.kind],e))}return n}function s(e,i){const o=r(e);let s;if(o){const r=SI(o)||!o.name?"":ep(o.name,!1);o===bc(e.parent,(e=>SI(e)||(kd(e)?"quit":!cA(e)&&!aA(e)&&!kA(e))))?(s=Vp(e,i??n[o.kind]),xw(s,Vp(o,t[o.kind],r))):(s=Vp(e,i??ws.Expression_type_can_t_be_inferred_with_isolatedDeclarations),xw(s,Vp(o,t[o.kind],r)),xw(s,Vp(e,ws.Add_satisfies_and_a_type_assertion_to_this_expression_satisfies_T_as_T_to_make_the_type_explicit)))}else s=Vp(e,i??ws.Expression_type_can_t_be_inferred_with_isolatedDeclarations);return s}}function kq(e,t,n){const r=e.getCompilerOptions(),i=M(lv(e,n),qm);return Uq(t,e,oE,r,n?A(i,n)?[n]:_:i,[Cq],!1).diagnostics}var Eq=531469;function Cq(e){const t=()=>Tn.fail("Diagnostic emitted without context");let n,r,i,o,s=t,a=!0,c=!1,l=!1,u=!1,d=!1;const{factory:p}=e,f=e.getEmitHost(),g={trackSymbol:function(e,t,n){if(262144&e.flags)return!1;return P(w.isSymbolAccessible(e,t,n,!0))},reportInaccessibleThisError:function(){(y||v)&&e.addDiagnostic(Vp(y||v,ws.The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary,O(),"this"))},reportInaccessibleUniqueSymbolError:function(){(y||v)&&e.addDiagnostic(Vp(y||v,ws.The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary,O(),"unique symbol"))},reportCyclicStructureError:function(){(y||v)&&e.addDiagnostic(Vp(y||v,ws.The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialized_A_type_annotation_is_necessary,O()))},reportPrivateInBaseOfClassExpression:function(t){(y||v)&&e.addDiagnostic(Vp(y||v,ws.Property_0_of_exported_class_expression_may_not_be_private_or_protected,t))},reportLikelyUnsafeImportRequiredError:function(t){(y||v)&&e.addDiagnostic(Vp(y||v,ws.The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_annotation_is_necessary,O(),t))},reportTruncationError:function(){(y||v)&&e.addDiagnostic(Vp(y||v,ws.The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_type_annotation_is_needed))},moduleResolverHost:f,reportNonlocalAugmentation:function(t,n,r){var i;const o=null==(i=n.declarations)?void 0:i.find((e=>C_(e)===t)),s=M(r.declarations,(e=>C_(e)!==t));if(o&&s)for(const a of s)e.addDiagnostic(xw(Vp(a,ws.Declaration_augments_declaration_in_another_file_This_cannot_be_serialized),Vp(o,ws.This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_file)))},reportNonSerializableProperty:function(t){(y||v)&&e.addDiagnostic(Vp(y||v,ws.The_type_of_this_node_cannot_be_serialized_because_its_property_0_cannot_be_serialized,t))},reportInferenceFallback:D};let y,v,b,x,S,T;const w=e.getEmitResolver(),k=e.getCompilerOptions(),E=wq(w),{stripInternal:C,isolatedDeclarations:N}=k;return function(_){if(307===_.kind&&_.isDeclarationFile)return _;if(308===_.kind){c=!0,x=[],S=[],T=[];let m=!1;const h=p.createBundle(R(_.sourceFiles,(c=>{if(c.isDeclarationFile)return;if(m=m||c.hasNoDefaultLib,b=c,n=c,r=void 0,o=!1,i=new Map,s=t,u=!1,d=!1,g(c),of(c)||sf(c)){l=!1,a=!1;const t=jm(c)?p.createNodeArray(F(c)):oU(c.statements,oe,kd);return p.updateSourceFile(c,[p.createModuleDeclaration([p.createModifier(138)],p.createStringLiteral($y(e.getEmitHost(),c)),p.createModuleBlock(vM(p.createNodeArray(re(t)),c.statements)))],!0,[],[],!1,[])}a=!0;const _=jm(c)?p.createNodeArray(F(c)):oU(c.statements,oe,kd);return p.updateSourceFile(c,re(_),!0,[],[],!1,[])}))),y=Vo(Qo(Hq(_,f,!0).declarationFilePath));return h.syntheticFileReferences=k(y),h.syntheticTypeReferences=v(),h.syntheticLibReferences=w(),h.hasNoDefaultLib=m,h}let m;if(a=!0,u=!1,d=!1,n=_,b=_,s=t,c=!1,l=!1,o=!1,r=void 0,i=new Map,x=[],S=[],T=[],g(b),jm(b))m=p.createNodeArray(F(_));else{const e=oU(_.statements,oe,kd);m=vM(p.createNodeArray(re(e)),_.statements),tO(_)&&(!l||u&&!d)&&(m=vM(p.createNodeArray([...m,HD(p)]),m))}const h=Vo(Qo(Hq(_,f,!0).declarationFilePath));return p.updateSourceFile(_,m,!0,k(h),v(),_.hasNoDefaultLib,w());function g(e){x=te(x,R(e.referencedFiles,(t=>[e,t]))),S=te(S,e.typeReferenceDirectives),T=te(T,e.libReferenceDirectives)}function y(e){const t={...e};return t.pos=-1,t.end=-1,t}function v(){return J(S,(e=>{if(e.preserve)return y(e)}))}function w(){return J(T,(e=>{if(e.preserve)return y(e)}))}function k(e){return J(x,(([t,n])=>{if(!n.preserve)return;const r=f.getSourceFileFromReference(t,n);if(!r)return;let i;if(r.isDeclarationFile)i=r.fileName;else{if(c&&A(_.sourceFiles,r))return;const e=Hq(r,f,!0);i=e.declarationFilePath||e.jsFilePath||r.fileName}if(!i)return;const o=bs(e,i,f.getCurrentDirectory(),f.getCanonicalFileName,!1),s=y(n);return s.fileName=o,s}))}};function I(t){w.getPropertiesOfContainerFunction(t).forEach((t=>{if(wk(t.valueDeclaration)){const n=gA(t.valueDeclaration)?t.valueDeclaration.left:t.valueDeclaration;e.addDiagnostic(Vp(n,ws.Assigning_properties_to_functions_without_declaring_them_is_not_supported_with_isolatedDeclarations_Add_an_explicit_declaration_for_the_properties_assigned_to_this_function))}}))}function D(t){N&&!jm(b)&&C_(t)===b&&($A(t)&&w.isExpandoFunctionDeclaration(t)?I(t):e.addDiagnostic(E(t)))}function P(t){if(0===t.accessibility){if(t.aliasesToMakeVisible)if(r)for(const e of t.aliasesToMakeVisible)he(r,e);else r=t.aliasesToMakeVisible}else if(3!==t.accessibility){const n=s(t);if(n)return n.typeName?e.addDiagnostic(Vp(t.errorNode||n.errorNode,n.diagnosticMessage,ep(n.typeName),t.errorSymbolName,t.errorModuleName)):e.addDiagnostic(Vp(t.errorNode||n.errorNode,n.diagnosticMessage,t.errorSymbolName,t.errorModuleName)),!0}return!1}function O(){return y?Lp(y):v&&Oc(v)?Lp(Oc(v)):v&&SI(v)?v.isExportEquals?"export=":"default":"(Missing)"}function F(e){const t=s;s=t=>t.errorNode&&xq(t.errorNode)?Tq(t.errorNode)(t):{diagnosticMessage:t.errorModuleName?ws.Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotation_may_unblock_declaration_emit:ws.Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_declaration_emit,errorNode:t.errorNode||e};const n=w.getDeclarationStatementsForSourceFile(e,Eq,g);return s=t,n}function L(e){return 80===e.kind?e:207===e.kind?p.updateArrayBindingPattern(e,oU(e.elements,t,Fu)):p.updateObjectBindingPattern(e,oU(e.elements,t,$N));function t(e){return 232===e.kind?e:(e.propertyName&&_N(e.propertyName)&&wb(e.propertyName.expression)&&Z(e.propertyName.expression,n),p.updateBindingElement(e,e.dotDotDotToken,e.propertyName,L(e.name),void 0))}}function j(e,t,n){let r;o||(r=s,s=Tq(e));const i=p.updateParameterDeclaration(e,function(e,t,n,r){return e.createModifiersFromModifierFlags(Nq(t,n,r))}(p,e,t),e.dotDotDotToken,L(e.name),w.isOptionalParameter(e)?e.questionToken||p.createToken(58):void 0,V(e,n||e.type,!0),q(e));return o||(s=r),i}function B(e){return Iq(e)&&!!e.initializer&&w.isLiteralConstDeclaration(Sc(e))}function q(e){if(B(e)){return Ok(Fk(e.initializer))||D(e),w.createLiteralConstValue(Sc(e,Iq),g)}}function V(e,t,r){if(!r&&Vv(e,2))return;if(B(e))return;const i=169===e.kind&&w.requiresAddingImplicitUndefined(e);if(t&&!i)return iU(t,ie,Du);let a,c;switch(y=e.name,o||(a=s,s=Tq(e)),e.kind){case 169:case 171:case 172:case 208:case 260:c=w.createTypeOfDeclaration(e,n,Eq,g);break;case 262:case 180:case 173:case 174:case 177:case 179:c=w.createReturnTypeOfSignatureDeclaration(e,n,Eq,g);break;default:Tn.assertNever(e)}return y=void 0,o||(s=a),c??p.createKeywordTypeNode(133)}function K(e){switch((e=Sc(e)).kind){case 262:case 267:case 264:case 263:case 265:case 266:return!w.isDeclarationVisible(e);case 260:return!W(e);case 271:case 272:case 278:case 277:return!1;case 175:return!0}return!1}function W(e){return!TA(e)&&(Mu(e.name)?$(e.name.elements,W):w.isDeclarationVisible(e))}function H(e,t,n){if(Vv(e,2))return p.createNodeArray();const r=R(t,(e=>j(e,n)));return r?p.createNodeArray(r,t.hasTrailingComma):p.createNodeArray()}function G(e,t){let n;if(!t){const t=xv(e);t&&(n=[j(t)])}if(TN(e)){let r;if(!t){const t=vv(e);if(t){r=j(t,void 0,me(e,Cv(tA(e.parent)?e.parent.properties:e.parent.members,e)))}}r||(r=p.createParameterDeclaration(void 0,void 0,"value")),n=_e(n,r)}return p.createNodeArray(n||_)}function Q(e,t){return Vv(e,2)?void 0:oU(t,ie,pN)}function Y(e){return YI(e)||iI(e)||sI(e)||nI(e)||rI(e)||pu(e)||EN(e)||WN(e)}function Z(e,t){P(w.isEntityNameVisible(e,t))}function X(e,t){return zd(e)&&zd(t)&&(e.jsDoc=t.jsDoc),SE(e,xE(t))}function ee(t,n){if(n){if(l=l||267!==t.kind&&205!==t.kind,Hd(n)&&c){const n=tv(e.getEmitHost(),w,t);if(n)return p.createStringLiteral(n)}return n}}function ne(e){const t=dK(e);return e&&void 0!==t?e:void 0}function re(e){for(;m(r);){const e=r.shift();if(!Dp(e))return Tn.fail(`Late replaced statement was found which is not handled by the declaration transformer!: ${Tn.formatSyntaxKind(e.kind)}`);const t=a;a=e.parent&&YI(e.parent)&&!(tO(e.parent)&&c);const n=ce(e);a=t,i.set(LU(e),n)}return oU(e,(function(e){if(Dp(e)){const t=LU(e);if(i.has(t)){const n=i.get(t);return i.delete(t),n&&((at(n)?$(n,ad):ad(n))&&(u=!0),YI(e.parent)&&(at(n)?$(n,cd):cd(n))&&(l=!0)),n}}return e}),kd)}function ie(t){if(de(t))return;if(Sd(t)){if(K(t))return;if(Qg(t))if(N){if(!w.isDefinitelyReferenceToGlobalSymbolObject(t.name.expression)){if(nI(t.parent)||tA(t.parent))return void e.addDiagnostic(Vp(t,ws.Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations));if((rI(t.parent)||PN(t.parent))&&!wb(t.name.expression))return void e.addDiagnostic(Vp(t,ws.Computed_properties_must_be_number_or_string_literals_variables_or_dotted_expressions_with_isolatedDeclarations))}}else if(!w.isLateBound(Sc(t))||!wb(t.name.expression))return}if(pu(t)&&w.isImplementationOfOverload(t))return;if(MA(t))return;let r;Y(t)&&(r=n,n=t);const i=s,a=xq(t),c=o;let l=(187===t.kind||200===t.kind)&&265!==t.parent.kind;if((vN(t)||yN(t))&&Vv(t,2)){if(t.symbol&&t.symbol.declarations&&t.symbol.declarations[0]!==t)return;return d(p.createPropertyDeclaration(fe(t),t.name,void 0,void 0,void 0))}if(a&&!o&&(s=Tq(t)),DN(t)&&Z(t.exprName,n),l&&(o=!0),function(e){switch(e.kind){case 180:case 176:case 174:case 177:case 178:case 172:case 171:case 173:case 179:case 181:case 260:case 168:case 233:case 183:case 194:case 184:case 185:case 205:return!0}return!1}(t))switch(t.kind){case 233:{(uu(t.expression)||wb(t.expression))&&Z(t.expression,n);const r=fU(t,ie,e);return d(p.updateExpressionWithTypeArguments(r,r.expression,r.typeArguments))}case 183:{Z(t.typeName,n);const r=fU(t,ie,e);return d(p.updateTypeReferenceNode(r,r.typeName,r.typeArguments))}case 180:return d(p.updateConstructSignature(t,Q(t,t.typeParameters),H(t,t.parameters),V(t,t.type)));case 176:return d(p.createConstructorDeclaration(fe(t),H(t,t.parameters,0),void 0));case 174:if(ZC(t.name))return d(void 0);return d(p.createMethodDeclaration(fe(t),void 0,t.name,t.questionToken,Q(t,t.typeParameters),H(t,t.parameters),V(t,t.type),void 0));case 177:{if(ZC(t.name))return d(void 0);const e=me(t,Cv(tA(t.parent)?t.parent.properties:t.parent.members,t));return d(p.updateGetAccessorDeclaration(t,fe(t),t.name,G(t,Vv(t,2)),V(t,e),void 0))}case 178:return ZC(t.name)?d(void 0):d(p.updateSetAccessorDeclaration(t,fe(t),t.name,G(t,Vv(t,2)),void 0));case 172:return ZC(t.name)?d(void 0):d(p.updatePropertyDeclaration(t,fe(t),t.name,t.questionToken,V(t,t.type),q(t)));case 171:return ZC(t.name)?d(void 0):d(p.updatePropertySignature(t,fe(t),t.name,t.questionToken,V(t,t.type)));case 173:return ZC(t.name)?d(void 0):d(p.updateMethodSignature(t,fe(t),t.name,t.questionToken,Q(t,t.typeParameters),H(t,t.parameters),V(t,t.type)));case 179:return d(p.updateCallSignature(t,Q(t,t.typeParameters),H(t,t.parameters),V(t,t.type)));case 181:return d(p.updateIndexSignature(t,fe(t),H(t,t.parameters),iU(t.type,ie,Du)||p.createKeywordTypeNode(133)));case 260:return Mu(t.name)?le(t.name):(l=!0,o=!0,d(p.updateVariableDeclaration(t,t.name,void 0,V(t,t.type),q(t))));case 168:return 174===(u=t).parent.kind&&Vv(u.parent,2)&&(t.default||t.constraint)?d(p.updateTypeParameterDeclaration(t,t.modifiers,t.name,void 0,void 0)):d(fU(t,ie,e));case 194:{const e=iU(t.checkType,ie,Du),r=iU(t.extendsType,ie,Du),i=n;n=t.trueType;const o=iU(t.trueType,ie,Du);n=i;const s=iU(t.falseType,ie,Du);return Tn.assert(e),Tn.assert(r),Tn.assert(o),Tn.assert(s),d(p.updateConditionalTypeNode(t,e,r,o,s))}case 184:return d(p.updateFunctionTypeNode(t,oU(t.typeParameters,ie,pN),H(t,t.parameters),Tn.checkDefined(iU(t.type,ie,Du))));case 185:return d(p.updateConstructorTypeNode(t,fe(t),oU(t.typeParameters,ie,pN),H(t,t.parameters),Tn.checkDefined(iU(t.type,ie,Du))));case 205:return gf(t)?d(p.updateImportTypeNode(t,p.updateLiteralTypeNode(t.argument,ee(t,t.argument.literal)),t.attributes,t.qualifier,oU(t.typeArguments,ie,Du),t.isTypeOf)):d(t);default:Tn.assertNever(t,`Attempted to process unhandled node kind: ${Tn.formatSyntaxKind(t.kind)}`)}var u;return ON(t)&&ta(b,t.pos).line===ta(b,t.end).line&&dE(t,1),d(fU(t,ie,e));function d(e){return e&&a&&Qg(t)&&function(e){let t;o||(t=s,s=Sq(e));y=e.name,Tn.assert(Qg(e));const r=e;Z(r.name.expression,n),o||(s=t);y=void 0}(t),Y(t)&&(n=r),a&&!o&&(s=i),l&&(o=c),e===t?e:e&&aE(X(e,t),t)}}function oe(e){if(!function(e){switch(e.kind){case 262:case 267:case 271:case 264:case 263:case 265:case 266:case 243:case 272:case 278:case 277:return!0}return!1}(e))return;if(de(e))return;switch(e.kind){case 278:return YI(e.parent)&&(l=!0),d=!0,p.updateExportDeclaration(e,e.modifiers,e.isTypeOnly,e.exportClause,ee(e,e.moduleSpecifier),ne(e.attributes));case 277:if(YI(e.parent)&&(l=!0),d=!0,80===e.expression.kind)return e;{const t=p.createUniqueName("_default",16);s=()=>({diagnosticMessage:ws.Default_export_of_the_module_has_or_is_using_private_name_0,errorNode:e}),v=e;const n=p.createVariableDeclaration(t,void 0,w.createTypeOfExpression(e.expression,e,Eq,g),void 0);v=void 0;const r=p.createVariableStatement(a?[p.createModifier(138)]:[],p.createVariableDeclarationList([n],2));return X(r,e),uE(e),[r,p.updateExportAssignment(e,e.modifiers,t)]}}const t=ce(e);return i.set(LU(e),t),e}function se(e){if(uI(e)||Vv(e,2048)||!bM(e))return e;const t=p.createModifiersFromModifierFlags(131039&nb(e));return p.replaceModifiers(e,t)}function ae(e,t,n,r){const i=p.updateModuleDeclaration(e,t,n,r);if(_p(i)||32&i.flags)return i;const o=p.createModuleDeclaration(i.modifiers,i.name,i.body,32|i.flags);return aE(o,i),vM(o,i),o}function ce(t){if(r)for(;$t(r,t););if(de(t))return;switch(t.kind){case 271:return function(e){if(w.isDeclarationVisible(e)){if(283===e.moduleReference.kind){const t=Om(e);return p.updateImportEqualsDeclaration(e,e.modifiers,e.isTypeOnly,e.name,p.updateExternalModuleReference(e.moduleReference,ee(e,t)))}{const t=s;return s=Tq(e),Z(e.moduleReference,n),s=t,e}}}(t);case 272:return function(t){if(!t.importClause)return p.updateImportDeclaration(t,t.modifiers,t.importClause,ee(t,t.moduleSpecifier),ne(t.attributes));const n=t.importClause&&t.importClause.name&&w.isDeclarationVisible(t.importClause)?t.importClause.name:void 0;if(!t.importClause.namedBindings)return n&&p.updateImportDeclaration(t,t.modifiers,p.updateImportClause(t.importClause,t.importClause.isTypeOnly,n,void 0),ee(t,t.moduleSpecifier),ne(t.attributes));if(274===t.importClause.namedBindings.kind){const e=w.isDeclarationVisible(t.importClause.namedBindings)?t.importClause.namedBindings:void 0;return n||e?p.updateImportDeclaration(t,t.modifiers,p.updateImportClause(t.importClause,t.importClause.isTypeOnly,n,e),ee(t,t.moduleSpecifier),ne(t.attributes)):void 0}const r=J(t.importClause.namedBindings.elements,(e=>w.isDeclarationVisible(e)?e:void 0));return r&&r.length||n?p.updateImportDeclaration(t,t.modifiers,p.updateImportClause(t.importClause,t.importClause.isTypeOnly,n,r&&r.length?p.updateNamedImports(t.importClause.namedBindings,r):void 0),ee(t,t.moduleSpecifier),ne(t.attributes)):w.isImportRequiredByAugmentation(t)?(N&&e.addDiagnostic(Vp(t,ws.Declaration_emit_for_this_file_requires_preserving_this_import_for_augmentations_This_is_not_supported_with_isolatedDeclarations)),p.updateImportDeclaration(t,t.modifiers,void 0,ee(t,t.moduleSpecifier),ne(t.attributes))):void 0}(t)}if(Sd(t)&&K(t))return;if(zD(t))return;if(pu(t)&&w.isImplementationOfOverload(t))return;let o;Y(t)&&(o=n,n=t);const c=xq(t),_=s;c&&(s=Tq(t));const f=a;switch(t.kind){case 265:{a=!1;const e=b(p.updateTypeAliasDeclaration(t,fe(t),t.name,oU(t.typeParameters,ie,pN),Tn.checkDefined(iU(t.type,ie,Du))));return a=f,e}case 264:return b(p.updateInterfaceDeclaration(t,fe(t),t.name,Q(t,t.typeParameters),ge(t.heritageClauses),oU(t.members,ie,Nu)));case 262:{const e=b(p.updateFunctionDeclaration(t,fe(t),void 0,t.name,Q(t,t.typeParameters),H(t,t.parameters),V(t,t.type),void 0));if(e&&w.isExpandoFunctionDeclaration(t)&&function(e){var t;if(e.body)return!0;const n=null==(t=e.symbol.declarations)?void 0:t.filter((e=>tI(e)&&!e.body));return!n||n.indexOf(e)===n.length-1}(t)){const r=w.getPropertiesOfContainerFunction(t);N&&I(t);const i=TM.createModuleDeclaration(void 0,e.name||p.createIdentifier("_default"),p.createModuleBlock([]),32);Bw(i,n),i.locals=o_(r),i.symbol=r[0].parent;const o=[];let a=J(r,(e=>{if(!wk(e.valueDeclaration))return;const t=wc(e.escapedName);if(!Aa(t,99))return;s=Tq(e.valueDeclaration);const n=w.createTypeOfDeclaration(e.valueDeclaration,i,-2147483648|Eq,g);s=_;const r=Ug(t),a=r?p.getGeneratedNameForNode(e.valueDeclaration):p.createIdentifier(t);r&&o.push([a,t]);const c=p.createVariableDeclaration(a,void 0,n,void 0);return p.createVariableStatement(r?void 0:[p.createToken(95)],p.createVariableDeclarationList([c]))}));o.length?a.push(p.createExportDeclaration(void 0,!1,p.createNamedExports(R(o,(([e,t])=>p.createExportSpecifier(!1,e,t)))))):a=J(a,(e=>p.replaceModifiers(e,0)));const c=p.createModuleDeclaration(fe(t),t.name,p.createModuleBlock(a),32);if(!Vv(e,2048))return[e,c];const u=p.createModifiersFromModifierFlags(-2081&nb(e)|128),f=p.updateFunctionDeclaration(e,u,void 0,e.name,e.typeParameters,e.parameters,e.type,void 0),m=p.updateModuleDeclaration(c,u,c.name,c.body),h=p.createExportAssignment(void 0,!1,c.name);return YI(t.parent)&&(l=!0),d=!0,[f,m,h]}return e}case 267:{a=!1;const e=t.body;if(e&&268===e.kind){const n=u,r=d;d=!1,u=!1;let i=re(oU(e.statements,oe,kd));33554432&t.flags&&(u=!1),yp(t)||function(e){return $(e,pe)}(i)||d||(i=u?p.createNodeArray([...i,HD(p)]):oU(i,se,kd));const o=p.updateModuleBlock(e,i);a=f,u=n,d=r;const s=fe(t);return b(ae(t,s,vp(t)?ee(t,t.name):t.name,o))}{a=f;const n=fe(t);a=!1,iU(e,oe);const r=LU(e),o=i.get(r);return i.delete(r),b(ae(t,n,t.name,o))}}case 263:{y=t.name,v=t;const e=p.createNodeArray(fe(t)),n=Q(t,t.typeParameters),r=yv(t);let i;if(r){const e=s;i=ue(U(r.parameters,(e=>{if(Kv(e,31)&&!de(e))return s=Tq(e),80===e.name.kind?X(p.createPropertyDeclaration(fe(e),e.name,e.questionToken,V(e,e.type),q(e)),e):function t(n){let r;for(const i of n.elements)TA(i)||(Mu(i.name)&&(r=te(r,t(i.name))),r=r||[],r.push(p.createPropertyDeclaration(fe(e),i.name,void 0,V(i,void 0),void 0)));return r}(e.name)}))),s=e}const o=te(te($(t.members,(e=>!!e.name&&ZC(e.name)))?[p.createPropertyDeclaration(void 0,p.createPrivateIdentifier("#private"),void 0,void 0,void 0)]:void 0,i),oU(t.members,ie,bu)),c=p.createNodeArray(o),l=Cg(t);if(l&&!wb(l.expression)&&106!==l.expression.kind){const r=t.name?wc(t.name.escapedText):"default",i=p.createUniqueName(`${r}_base`,16);s=()=>({diagnosticMessage:ws.extends_clause_of_exported_class_0_has_or_is_using_private_name_1,errorNode:l,typeName:t.name});const o=p.createVariableDeclaration(i,void 0,w.createTypeOfExpression(l.expression,t,Eq,g),void 0),u=p.createVariableStatement(a?[p.createModifier(138)]:[],p.createVariableDeclarationList([o],2)),d=p.createNodeArray(R(t.heritageClauses,(e=>{if(96===e.token){const t=s;s=Tq(e.types[0]);const n=p.updateHeritageClause(e,R(e.types,(e=>p.updateExpressionWithTypeArguments(e,i,oU(e.typeArguments,ie,Du)))));return s=t,n}return p.updateHeritageClause(e,oU(p.createNodeArray(M(e.types,(e=>wb(e.expression)||106===e.expression.kind))),ie,wA))})));return[u,b(p.updateClassDeclaration(t,e,t.name,n,d,c))]}{const r=ge(t.heritageClauses);return b(p.updateClassDeclaration(t,e,t.name,n,r,c))}}case 243:return b(function(e){if(!h(e.declarationList.declarations,W))return;const t=oU(e.declarationList.declarations,ie,$A);if(!m(t))return;const n=p.createNodeArray(fe(e));let r;uf(e.declarationList)||lf(e.declarationList)?(r=p.createVariableDeclarationList(t,2),aE(r,e.declarationList),vM(r,e.declarationList),SE(r,e.declarationList)):r=p.updateVariableDeclarationList(e.declarationList,t);return p.updateVariableStatement(e,n,r)}(t));case 266:return b(p.updateEnumDeclaration(t,p.createNodeArray(fe(t)),t.name,p.createNodeArray(J(t.members,(t=>{if(de(t))return;const n=w.getEnumMemberValue(t),r=null==n?void 0:n.value;N&&t.initializer&&(null==n?void 0:n.hasExternalReferences)&&!_N(t.name)&&e.addDiagnostic(Vp(t,ws.Enum_member_initializers_must_be_computable_without_references_to_external_symbols_with_isolatedDeclarations));const i=void 0===r?void 0:"string"==typeof r?p.createStringLiteral(r):r<0?p.createPrefixUnaryExpression(41,p.createNumericLiteral(-r)):p.createNumericLiteral(r);return X(p.updateEnumMember(t,t.name,i),t)})))))}return Tn.assertNever(t,`Unhandled top-level node in declaration emit: ${Tn.formatSyntaxKind(t.kind)}`);function b(e){return Y(t)&&(n=o),c&&(s=_),267===t.kind&&(a=f),e===t?e:(v=void 0,y=void 0,e&&aE(X(e,t),t))}}function le(e){return z(J(e.elements,(e=>function(e){if(232===e.kind)return;if(e.name){if(!W(e))return;return Mu(e.name)?le(e.name):p.createVariableDeclaration(e.name,void 0,V(e,void 0),void 0)}}(e))))}function de(e){return!!C&&!!e&&Xd(e,b)}function pe(e){return SI(e)||TI(e)}function fe(e){const t=nb(e),n=function(e){let t=130030,n=a&&!function(e){if(264===e.kind)return!0;return!1}(e)?128:0;const r=307===e.parent.kind;(!r||c&&r&&tO(e.parent))&&(t^=128,n=0);return Nq(e,t,n)}(e);return t===n?sU(e.modifiers,(e=>dt(e,lu)),lu):p.createModifiersFromModifierFlags(n)}function me(e,t){let n=Aq(e);return n||e===t.firstAccessor||(n=Aq(t.firstAccessor),s=Tq(t.firstAccessor)),!n&&t.secondAccessor&&e!==t.secondAccessor&&(n=Aq(t.secondAccessor),s=Tq(t.secondAccessor)),n}function ge(e){return p.createNodeArray(M(R(e,(e=>p.updateHeritageClause(e,oU(p.createNodeArray(M(e.types,(t=>wb(t.expression)||96===e.token&&106===t.expression.kind))),ie,wA)))),(e=>e.types&&!!e.types.length)))}}function Nq(e,t=131070,n=0){let r=nb(e)&t|n;return 2048&r&&!(32&r)&&(r^=32),2048&r&&128&r&&(r^=128),r}function Aq(e){if(e)return 177===e.kind?e.type:e.parameters.length>0?e.parameters[0].type:void 0}function Iq(e){switch(e.kind){case 172:case 171:return!Vv(e,2);case 169:case 260:return!0}return!1}var Dq={scriptTransformers:_,declarationTransformers:_};function Pq(e,t,n){return{scriptTransformers:Mq(e,t,n),declarationTransformers:Oq(t)}}function Mq(e,t,n){if(n)return _;const r=MS(e),i=OS(e),o=GS(e),s=[];return me(s,t&&R(t.before,Rq)),s.push(WB),e.experimentalDecorators&&s.push(YB),aT(e)&&s.push(uq),r<99&&s.push(iq),e.experimentalDecorators||!(r<99)&&o||s.push(ZB),s.push(HB),r<8&&s.push(rq),r<7&&s.push(nq),r<6&&s.push(tq),r<5&&s.push(eq),r<4&&s.push(XB),r<3&&s.push(_q),r<2&&(s.push(fq),s.push(mq)),s.push(function(e){switch(e){case 99:case 7:case 6:case 5:case 200:return vq;case 4:return yq;case 100:case 199:return bq;default:return hq}}(i)),me(s,t&&R(t.after,Rq)),s}function Oq(e){const t=[];return t.push(Cq),me(t,e&&R(e.afterDeclarations,Lq)),t}function Fq(e,t){return n=>{const r=e(n);return"function"==typeof r?t(n,r):function(e){return t=>ZI(t)?e.transformBundle(t):e.transformSourceFile(t)}(r)}}function Rq(e){return Fq(e,UU)}function Lq(e){return Fq(e,((e,t)=>t))}function jq(e,t){return t}function zq(e,t,n){n(e,t)}function Uq(e,t,n,r,i,o,s){var a,c;const l=new Array(357);let u,d,_,p,f,m=0,h=[],g=[],y=[],v=[],b=0,x=!1,S=[],T=0,w=jq,k=zq,E=0;const C=[],N={factory:n,getCompilerOptions:()=>r,getEmitResolver:()=>e,getEmitHost:()=>t,getEmitHelperFactory:St((()=>QE(N))),startLexicalEnvironment:function(){Tn.assert(E>0,"Cannot modify the lexical environment during initialization."),Tn.assert(E<2,"Cannot modify the lexical environment after transformation has completed."),Tn.assert(!x,"Lexical environment is suspended."),h[b]=u,g[b]=d,y[b]=_,v[b]=m,b++,u=void 0,d=void 0,_=void 0,m=0},suspendLexicalEnvironment:function(){Tn.assert(E>0,"Cannot modify the lexical environment during initialization."),Tn.assert(E<2,"Cannot modify the lexical environment after transformation has completed."),Tn.assert(!x,"Lexical environment is already suspended."),x=!0},resumeLexicalEnvironment:function(){Tn.assert(E>0,"Cannot modify the lexical environment during initialization."),Tn.assert(E<2,"Cannot modify the lexical environment after transformation has completed."),Tn.assert(x,"Lexical environment is not suspended."),x=!1},endLexicalEnvironment:function(){let e;if(Tn.assert(E>0,"Cannot modify the lexical environment during initialization."),Tn.assert(E<2,"Cannot modify the lexical environment after transformation has completed."),Tn.assert(!x,"Lexical environment is suspended."),u||d||_){if(d&&(e=[...d]),u){const t=n.createVariableStatement(void 0,n.createVariableDeclarationList(u));dE(t,2097152),e?e.push(t):e=[t]}_&&(e=e?[...e,..._]:[..._])}b--,u=h[b],d=g[b],_=y[b],m=v[b],0===b&&(h=[],g=[],y=[],v=[]);return e},setLexicalEnvironmentFlags:function(e,t){m=t?m|e:m&~e},getLexicalEnvironmentFlags:function(){return m},hoistVariableDeclaration:function(e){Tn.assert(E>0,"Cannot modify the lexical environment during initialization."),Tn.assert(E<2,"Cannot modify the lexical environment after transformation has completed.");const t=dE(n.createVariableDeclaration(e),128);u?u.push(t):u=[t];1&m&&(m|=2)},hoistFunctionDeclaration:function(e){Tn.assert(E>0,"Cannot modify the lexical environment during initialization."),Tn.assert(E<2,"Cannot modify the lexical environment after transformation has completed."),dE(e,2097152),d?d.push(e):d=[e]},addInitializationStatement:function(e){Tn.assert(E>0,"Cannot modify the lexical environment during initialization."),Tn.assert(E<2,"Cannot modify the lexical environment after transformation has completed."),dE(e,2097152),_?_.push(e):_=[e]},startBlockScope:function(){Tn.assert(E>0,"Cannot start a block scope during initialization."),Tn.assert(E<2,"Cannot start a block scope after transformation has completed."),S[T]=p,T++,p=void 0},endBlockScope:function(){Tn.assert(E>0,"Cannot end a block scope during initialization."),Tn.assert(E<2,"Cannot end a block scope after transformation has completed.");const e=$(p)?[n.createVariableStatement(void 0,n.createVariableDeclarationList(p.map((e=>n.createVariableDeclaration(e))),1))]:void 0;T--,p=S[T],0===T&&(S=[]);return e},addBlockScopedVariable:function(e){Tn.assert(T>0,"Cannot add a block scoped variable outside of an iteration body."),(p||(p=[])).push(e)},requestEmitHelper:function e(t){if(Tn.assert(E>0,"Cannot modify the transformation context during initialization."),Tn.assert(E<2,"Cannot modify the transformation context after transformation has completed."),Tn.assert(!t.scoped,"Cannot request a scoped emit helper."),t.dependencies)for(const n of t.dependencies)e(n);f=_e(f,t)},readEmitHelpers:function(){Tn.assert(E>0,"Cannot modify the transformation context during initialization."),Tn.assert(E<2,"Cannot modify the transformation context after transformation has completed.");const e=f;return f=void 0,e},enableSubstitution:function(e){Tn.assert(E<2,"Cannot modify the transformation context after transformation has completed."),l[e]|=1},enableEmitNotification:function(e){Tn.assert(E<2,"Cannot modify the transformation context after transformation has completed."),l[e]|=2},isSubstitutionEnabled:M,isEmitNotificationEnabled:O,get onSubstituteNode(){return w},set onSubstituteNode(e){Tn.assert(E<1,"Cannot modify transformation hooks after initialization has completed."),Tn.assert(void 0!==e,"Value must not be 'undefined'"),w=e},get onEmitNode(){return k},set onEmitNode(e){Tn.assert(E<1,"Cannot modify transformation hooks after initialization has completed."),Tn.assert(void 0!==e,"Value must not be 'undefined'"),k=e},addDiagnostic(e){C.push(e)}};for(const F of i)lE(C_(Sc(F)));mr("beforeTransform");const A=o.map((e=>e(N))),I=e=>{for(const t of A)e=t(e);return e};E=1;const D=[];for(const F of i)null==(a=ar)||a.push(ar.Phase.Emit,"transformNodes",307===F.kind?{path:F.path}:{kind:F.kind,pos:F.pos,end:F.end}),D.push((s?I:P)(F)),null==(c=ar)||c.pop();return E=2,mr("afterTransform"),hr("transformTime","beforeTransform","afterTransform"),{transformed:D,substituteNode:function(e,t){return Tn.assert(E<3,"Cannot substitute a node after the result is disposed."),t&&M(t)&&w(e,t)||t},emitNodeWithNotification:function(e,t,n){Tn.assert(E<3,"Cannot invoke TransformationResult callbacks after the result is disposed."),t&&(O(t)?k(e,t,n):n(e,t))},isEmitNotificationEnabled:O,dispose:function(){if(E<3){for(const e of i)lE(C_(Sc(e)));u=void 0,h=void 0,d=void 0,g=void 0,w=void 0,k=void 0,f=void 0,E=3}},diagnostics:C};function P(e){return!e||YI(e)&&e.isDeclarationFile?e:I(e)}function M(e){return!(!(1&l[e.kind])||8&rp(e))}function O(e){return!!(2&l[e.kind])||!!(4&rp(e))}}var Bq={factory:oE,getCompilerOptions:()=>({}),getEmitResolver:xt,getEmitHost:xt,getEmitHelperFactory:xt,startLexicalEnvironment:pt,resumeLexicalEnvironment:pt,suspendLexicalEnvironment:pt,endLexicalEnvironment:ht,setLexicalEnvironmentFlags:pt,getLexicalEnvironmentFlags:()=>0,hoistVariableDeclaration:pt,hoistFunctionDeclaration:pt,addInitializationStatement:pt,startBlockScope:pt,endBlockScope:ht,addBlockScopedVariable:pt,requestEmitHelper:pt,readEmitHelpers:xt,enableSubstitution:pt,enableEmitNotification:pt,isSubstitutionEnabled:xt,isEmitNotificationEnabled:xt,onSubstituteNode:jq,onEmitNode:zq,addDiagnostic:pt},qq=function(){const e=[];return e[1024]=["{","}"],e[2048]=["(",")"],e[4096]=["<",">"],e[8192]=["[","]"],e}();function Vq(e){return Lo(e,".tsbuildinfo")}function Kq(e,t,n,r=!1,i,o){const s=at(n)?n:lv(e,n,r),a=e.getCompilerOptions();if(a.outFile){if(s.length){const n=oE.createBundle(s),i=t(Hq(n,e,r),n);if(i)return i}}else{if(!i)for(const n of s){const i=t(Hq(n,e,r),n);if(i)return i}if(o){const e=Jq(a);if(e)return t({buildInfoPath:e},void 0)}}}function Jq(e){const t=e.configFilePath;if(!JS(e))return;if(e.tsBuildInfoFile)return e.tsBuildInfoFile;const n=e.outFile;let r;if(n)r=ow(n);else{if(!t)return;const n=ow(t);r=e.outDir?e.rootDir?Xo(e.outDir,gs(e.rootDir,n,!0)):Zo(e.outDir,Ko(n)):n}return r+".tsbuildinfo"}function Wq(e,t){const n=e.outFile,r=e.emitDeclarationOnly?void 0:n,i=r&&Gq(r,e),o=t||VS(e)?ow(n)+".d.ts":void 0;return{jsFilePath:r,sourceMapFilePath:i,declarationFilePath:o,declarationMapPath:o&&WS(e)?o+".map":void 0,buildInfoPath:Jq(e)}}function Hq(e,t,n){const r=t.getCompilerOptions();if(308===e.kind)return Wq(r,n);{const i=rv(e.fileName,t,Qq(e.fileName,r)),o=sf(e),s=o&&0===ps(e.fileName,i,t.getCurrentDirectory(),!t.useCaseSensitiveFileNames()),a=r.emitDeclarationOnly||s?void 0:i,c=!a||sf(e)?void 0:Gq(a,r),l=n||VS(r)&&!o?iv(e.fileName,t):void 0;return{jsFilePath:a,sourceMapFilePath:c,declarationFilePath:l,declarationMapPath:l&&WS(r)?l+".map":void 0,buildInfoPath:void 0}}}function Gq(e,t){return t.sourceMap&&!t.inlineSourceMap?e+".map":void 0}function Qq(e,t){return Lo(e,".json")?".json":1===t.jsx&&jo(e,[".jsx",".tsx"])?".jsx":jo(e,[".mts",".mjs"])?".mjs":jo(e,[".cts",".cjs"])?".cjs":".js"}function Yq(e,t,n,r){return n?Xo(n,gs(r(),e,t)):e}function Zq(e,t,n,r=(()=>oV(t,n))){return Xq(e,t.options,n,r)}function Xq(e,t,n,r){return cw(Yq(e,n,t.declarationDir||t.outDir,r),sv(e))}function $q(e,t,n,r=(()=>oV(t,n))){if(t.options.emitDeclarationOnly)return;const i=Lo(e,".json"),o=eV(e,t.options,n,r);return i&&0===ps(e,o,Tn.checkDefined(t.options.configFilePath),n)?void 0:o}function eV(e,t,n,r){return cw(Yq(e,n,t.outDir,r),Qq(e,t))}function tV(){let e;return{addOutput:function(t){t&&(e||(e=[])).push(t)},getOutputs:function(){return e||_}}}function nV(e,t){const{jsFilePath:n,sourceMapFilePath:r,declarationFilePath:i,declarationMapPath:o,buildInfoPath:s}=Wq(e.options,!1);t(n),t(r),t(i),t(o),t(s)}function rV(e,t,n,r,i){if(lO(t))return;const o=$q(t,e,n,i);if(r(o),!Lo(t,".json")&&(o&&e.options.sourceMap&&r(`${o}.map`),VS(e.options))){const o=Zq(t,e,n,i);r(o),e.options.declarationMap&&r(`${o}.map`)}}function iV(e,t,n,r,i){let o;return e.rootDir?(o=es(e.rootDir,n),null==i||i(e.rootDir)):e.composite&&e.configFilePath?(o=Vo(Qo(e.configFilePath)),null==i||i(o)):o=jV(t(),n,r),o&&o[o.length-1]!==ko&&(o+=ko),o}function oV({options:e,fileNames:t},n){return iV(e,(()=>M(t,(t=>!(e.noEmitForJsFiles&&jo(t,qT)||lO(t))))),Vo(Qo(Tn.checkDefined(e.configFilePath))),rn(!n))}function sV(e,t){const{addOutput:n,getOutputs:r}=tV();if(e.options.outFile)nV(e,n);else{const r=St((()=>oV(e,t)));for(const i of e.fileNames)rV(e,i,t,n,r);n(Jq(e.options))}return r()}function aV(e,t,n){t=ts(t),Tn.assert(A(e.fileNames,t),"Expected fileName to be present in command line");const{addOutput:r,getOutputs:i}=tV();return e.options.outFile?nV(e,r):rV(e,t,n,r),i()}function cV(e,t){if(e.options.outFile){const{jsFilePath:t,declarationFilePath:n}=Wq(e.options,!1);return Tn.checkDefined(t||n,`project ${e.options.configFilePath} expected to have at least one output`)}const n=St((()=>oV(e,t)));for(const i of e.fileNames){if(lO(i))continue;const r=$q(i,e,t,n);if(r)return r;if(!Lo(i,".json")&&VS(e.options))return Zq(i,e,t,n)}const r=Jq(e.options);return r||Tn.fail(`project ${e.options.configFilePath} expected to have at least one output`)}function lV(e,t){return!!t&&!!e}function uV(e,t,n,{scriptTransformers:r,declarationTransformers:i},o,s,a){var c=t.getCompilerOptions(),l=c.sourceMap||c.inlineSourceMap||WS(c)?[]:void 0,u=c.listEmittedFiles?[]:void 0,d=ky(),_=Qb(c),p=Qy(_),{enter:f,exit:h}=sr("printTime","beforePrint","afterPrint"),g=!1;return f(),Kq(t,(function({jsFilePath:s,sourceMapFilePath:l,declarationFilePath:_,declarationMapPath:p,buildInfoPath:f},h){var b,x,S,T,w,k;null==(b=ar)||b.push(ar.Phase.Emit,"emitJsFileOrBundle",{jsFilePath:s}),function(n,i,s){if(!n||o||!i)return;if(t.isEmitBlocked(i)||c.noEmit)return void(g=!0);(YI(n)?[n]:M(n.sourceFiles,qm)).forEach((t=>{!c.noCheck&&Ew(t,c)||QM(t,(t=>!uI(t)||32&ib(t)?dI(t)?"skip":void e.markLinkedReferences(t):"skip"))}));const a=Uq(e,t,oE,c,[n],r,!1),l=vV({removeComments:c.removeComments,newLine:c.newLine,noEmitHelpers:c.noEmitHelpers,module:OS(c),target:MS(c),sourceMap:c.sourceMap,inlineSourceMap:c.inlineSourceMap,inlineSources:c.inlineSources,extendedDiagnostics:c.extendedDiagnostics},{hasGlobalName:e.hasGlobalName,onEmitNode:a.emitNodeWithNotification,isEmitNotificationEnabled:a.isEmitNotificationEnabled,substituteNode:a.substituteNode});Tn.assert(1===a.transformed.length,"Should only see one output from the transform"),v(i,s,a,l,c),a.dispose(),u&&(u.push(i),s&&u.push(s))}(h,s,l),null==(x=ar)||x.pop(),null==(S=ar)||S.push(ar.Phase.Emit,"emitDeclarationFileOrBundle",{declarationFilePath:_}),function(n,r,s){if(!n||0===o)return;if(!r)return void((o||c.emitDeclarationOnly)&&(g=!0));const l=YI(n)?[n]:n.sourceFiles,_=a?l:M(l,qm),p=c.outFile?[oE.createBundle(_)]:_;_.forEach((e=>{(o&&!VS(c)||c.noCheck||lV(o,a)||!Ew(e,c))&&y(e)}));const f=Uq(e,t,oE,c,p,i,!1);if(m(f.diagnostics))for(const e of f.diagnostics)d.add(e);const h=!!f.diagnostics&&!!f.diagnostics.length||!!t.isEmitBlocked(r)||!!c.noEmit;if(g=g||h,!h||a){Tn.assert(1===f.transformed.length,"Should only see one output from the decl transform");const t={removeComments:c.removeComments,newLine:c.newLine,noEmitHelpers:!0,module:c.module,target:c.target,sourceMap:2!==o&&c.declarationMap,inlineSourceMap:c.inlineSourceMap,extendedDiagnostics:c.extendedDiagnostics,onlyPrintJsDocStyle:!0,omitBraceSourceMapPositions:!0};v(r,s,f,vV(t,{hasGlobalName:e.hasGlobalName,onEmitNode:f.emitNodeWithNotification,isEmitNotificationEnabled:f.isEmitNotificationEnabled,substituteNode:f.substituteNode}),{sourceMap:t.sourceMap,sourceRoot:c.sourceRoot,mapRoot:c.mapRoot,extendedDiagnostics:c.extendedDiagnostics}),u&&(u.push(r),s&&u.push(s))}f.dispose()}(h,_,p),null==(T=ar)||T.pop(),null==(w=ar)||w.push(ar.Phase.Emit,"emitBuildInfo",{buildInfoPath:f}),function(e){if(!e||n||g)return;if(t.isEmitBlocked(e))return void(g=!0);const r=t.getBuildInfo()||dV(void 0);pv(t,d,e,_V(r),!1,void 0,{buildInfo:r}),null==u||u.push(e)}(f),null==(k=ar)||k.pop()}),lv(t,n,a),a,s,!n),h(),{emitSkipped:g,diagnostics:d.getDiagnostics(),emittedFiles:u,sourceMaps:l};function y(t){SI(t)?80===t.expression.kind&&e.collectLinkedAliases(t.expression,!0):kI(t)?e.collectLinkedAliases(t.propertyName||t.name,!0):GM(t,y)}function v(e,n,r,i,o){const s=r.transformed[0],a=308===s.kind?s:void 0,u=307===s.kind?s:void 0,f=a?a.sourceFiles:[u];let m,h;if(function(e,t){return(e.sourceMap||e.inlineSourceMap)&&(307!==t.kind||!Lo(t.fileName,".json"))}(o,s)&&(m=gU(t,Ko(Qo(e)),function(e){const t=Qo(e.sourceRoot||"");return t?os(t):t}(o),function(e,n,r){if(e.sourceRoot)return t.getCommonSourceDirectory();if(e.mapRoot){let n=Qo(e.mapRoot);return r&&(n=Vo(dv(r.fileName,t,n))),0===qo(n)&&(n=Zo(t.getCommonSourceDirectory(),n)),n}return Vo(ts(n))}(o,e,u),o)),a?i.writeBundle(a,p,m):i.writeFile(u,p,m),m){l&&l.push({inputSourceFileNames:m.getSources(),sourceMap:m.toJSON()});const r=function(e,n,r,i,o){if(e.inlineSourceMap){const e=n.toString();return`data:application/json;base64,${Bb(To,e)}`}const s=Ko(Qo(Tn.checkDefined(i)));if(e.mapRoot){let n=Qo(e.mapRoot);return o&&(n=Vo(dv(o.fileName,t,n))),0===qo(n)?(n=Zo(t.getCommonSourceDirectory(),n),encodeURI(bs(Vo(ts(r)),Zo(n,s),t.getCurrentDirectory(),t.getCanonicalFileName,!0))):encodeURI(Zo(n,s))}return encodeURI(s)}(o,m,e,n,u);if(r&&(p.isAtStartOfLine()||p.rawWrite(_),h=p.getTextPos(),p.writeComment(`//# sourceMappingURL=${r}`)),n){const e=m.toString();pv(t,d,n,e,!1,f)}}else p.writeLine();const g=p.getText();pv(t,d,e,g,!!c.emitBOM,f,{sourceMapUrlPos:h,diagnostics:r.diagnostics}),p.clear()}}function dV(e){return{program:e,version:u}}function _V(e){return JSON.stringify(e)}function pV(e,t){return Vb(e,t)}var fV={hasGlobalName:xt,getReferencedExportContainer:xt,getReferencedImportDeclaration:xt,getReferencedDeclarationWithCollidingName:xt,isDeclarationWithCollidingName:xt,isValueAliasDeclaration:xt,isReferencedAliasDeclaration:xt,isTopLevelValueImportEqualsWithEntityName:xt,hasNodeCheckFlag:xt,isDeclarationVisible:xt,isLateBound:e=>!1,collectLinkedAliases:xt,markLinkedReferences:xt,isImplementationOfOverload:xt,requiresAddingImplicitUndefined:xt,isExpandoFunctionDeclaration:xt,getPropertiesOfContainerFunction:xt,createTypeOfDeclaration:xt,createReturnTypeOfSignatureDeclaration:xt,createTypeOfExpression:xt,createLiteralConstValue:xt,isSymbolAccessible:xt,isEntityNameVisible:xt,getConstantValue:xt,getEnumMemberValue:xt,getReferencedValueDeclaration:xt,getReferencedValueDeclarations:xt,getTypeReferenceSerializationKind:xt,isOptionalParameter:xt,isArgumentsLocalBinding:xt,getExternalModuleFileFromDeclaration:xt,isLiteralConstDeclaration:xt,getJsxFactoryEntity:xt,getJsxFragmentFactoryEntity:xt,isBindingCapturedByNode:xt,getDeclarationStatementsForSourceFile:xt,isImportRequiredByAugmentation:xt,isDefinitelyReferenceToGlobalSymbolObject:xt},mV=St((()=>vV({}))),hV=St((()=>vV({removeComments:!0}))),gV=St((()=>vV({removeComments:!0,neverAsciiEscape:!0}))),yV=St((()=>vV({removeComments:!0,omitTrailingSemicolon:!0})));function vV(e={},t={}){var n,r,i,o,s,a,c,l,u,d,_,p,f,m,g,y,v,b,x,S,w,k,C,N,A,I,{hasGlobalName:D,onEmitNode:P=zq,isEmitNotificationEnabled:M,substituteNode:O=jq,onBeforeEmitNode:F,onAfterEmitNode:R,onBeforeEmitNodeArray:L,onAfterEmitNodeArray:j,onBeforeEmitToken:z,onAfterEmitToken:U}=t,B=!!e.extendedDiagnostics,q=!!e.omitBraceSourceMapPositions,V=Qb(e),K=OS(e),J=new Map,W=e.preserveSourceNewlines,H=function(e){v.write(e)},G=!0,Q=-1,Y=-1,Z=-1,X=-1,ee=-1,te=!1,ne=!!e.removeComments,{enter:re,exit:ie}=or(B,"commentTime","beforeComment","afterComment"),oe=oE.parenthesizer,se={select:e=>0===e?oe.parenthesizeLeadingTypeArgument:void 0},ae=function(){return rM((function(e,t){if(t){t.stackIndex++,t.preserveSourceNewlinesStack[t.stackIndex]=W,t.containerPosStack[t.stackIndex]=Z,t.containerEndStack[t.stackIndex]=X,t.declarationListContainerEndStack[t.stackIndex]=ee;const n=t.shouldEmitCommentsStack[t.stackIndex]=Me(e),r=t.shouldEmitSourceMapsStack[t.stackIndex]=Oe(e);null==F||F(e),n&&Qn(e),r&&yr(e),Ce(e)}else t={stackIndex:0,preserveSourceNewlinesStack:[void 0],containerPosStack:[-1],containerEndStack:[-1],declarationListContainerEndStack:[-1],shouldEmitCommentsStack:[!1],shouldEmitSourceMapsStack:[!1]};return t}),(function(t,n,r){return e(t,r,"left")}),(function(e,t,n){const r=28!==e.kind,i=kn(n,n.left,e),o=kn(n,e,n.right);mn(i,r),cr(e.pos),dn(e,103===e.kind?$t:en),ur(e.end,!0),mn(o,!0)}),(function(t,n,r){return e(t,r,"right")}),(function(e,t){const n=kn(e,e.left,e.operatorToken),r=kn(e,e.operatorToken,e.right);if(hn(n,r),t.stackIndex>0){const n=t.preserveSourceNewlinesStack[t.stackIndex],r=t.containerPosStack[t.stackIndex],i=t.containerEndStack[t.stackIndex],o=t.declarationListContainerEndStack[t.stackIndex],s=t.shouldEmitCommentsStack[t.stackIndex],a=t.shouldEmitSourceMapsStack[t.stackIndex];De(n),a&&vr(e),s&&Yn(e,r,i,o),null==R||R(e),t.stackIndex--}}),void 0);function e(e,t,n){const r="left"===n?oe.getParenthesizeLeftSideOfBinaryForOperator(t.operatorToken.kind):oe.getParenthesizeRightSideOfBinaryForOperator(t.operatorToken.kind);let i=Fe(0,1,e);if(i===Ue&&(Tn.assertIsDefined(A),i=Re(1,1,e=r(_t(A,td))),A=void 0),(i===Gn||i===gr||i===je)&&gA(e))return e;I=r,i(1,e)}}();return ve(),{printNode:function(e,t,n){switch(e){case 0:Tn.assert(YI(t),"Expected a SourceFile node.");break;case 2:Tn.assert(YC(t),"Expected an Identifier node.");break;case 1:Tn.assert(td(t),"Expected an Expression node.")}switch(t.kind){case 307:return le(t);case 308:return ce(t)}return ue(e,t,n,fe()),me()},printList:function(e,t,n){return de(e,t,n,fe()),me()},printFile:le,printBundle:ce,writeNode:ue,writeList:de,writeFile:pe,writeBundle:_e};function ce(e){return _e(e,fe(),void 0),me()}function le(e){return pe(e,fe(),void 0),me()}function ue(e,t,n,r){const i=v;ye(r,void 0),he(e,t,n),ve(),v=i}function de(e,t,n,r){const i=v;ye(r,void 0),n&&ge(n),Jt(void 0,t,e),ve(),v=i}function _e(e,t,n){x=!1;const r=v;var i;ye(t,n),Dt(e),It(e),Be(e),Ct(!!(i=e).hasNoDefaultLib,i.syntheticFileReferences||[],i.syntheticTypeReferences||[],i.syntheticLibReferences||[]);for(const o of e.sourceFiles)he(0,o,o);ve(),v=r}function pe(e,t,n){x=!0;const r=v;ye(t,n),Dt(e),It(e),he(0,e,e),ve(),v=r}function fe(){return b||(b=Qy(V))}function me(){const e=b.getText();return b.clear(),e}function he(e,t,n){n&&ge(n),Pe(e,t,void 0)}function ge(e){n=e,C=void 0,N=void 0,e&&Tr(e)}function ye(t,n){t&&e.omitTrailingSemicolon&&(t=Yy(t)),S=n,G=!(v=t)||!S}function ve(){r=[],i=[],o=[],s=new Set,a=[],c=new Map,l=[],u=0,d=[],_=0,p=[],f=void 0,m=[],g=void 0,n=void 0,C=void 0,N=void 0,ye(void 0,void 0)}function be(){return C||(C=Zs(Tn.checkDefined(n)))}function Se(e,t){void 0!==e&&Pe(4,e,t)}function Te(e){void 0!==e&&Pe(2,e,void 0)}function ke(e,t){void 0!==e&&Pe(1,e,t)}function Ee(e){Pe(MC(e)?6:4,e)}function Ce(e){W&&4&ip(e)&&(W=!1)}function De(e){W=e}function Pe(e,t,n){I=n;Fe(0,e,t)(e,t),I=void 0}function Me(e){return!ne&&!YI(e)}function Oe(e){return!G&&!YI(e)&&!Bm(e)}function Fe(e,t,n){switch(e){case 0:if(P!==zq&&(!M||M(n)))return Le;case 1:if(O!==jq&&(A=O(t,n)||n)!==n)return I&&(A=I(A)),Ue;case 2:if(Me(n))return Gn;case 3:if(Oe(n))return gr;case 4:return je;default:return Tn.assertNever(e)}}function Re(e,t,n){return Fe(e+1,t,n)}function Le(e,t){const n=Re(0,e,t);P(e,t,n)}function je(e,t){if(null==F||F(t),W){const n=W;Ce(t),ze(e,t),De(n)}else ze(e,t);null==R||R(t),I=void 0}function ze(e,t,r=!0){if(r){const n=LE(t);if(n)return function(e,t,n){switch(n.kind){case 1:!function(e,t,n){sn(`\${${n.order}:`),ze(e,t,!1),sn("}")}(e,t,n);break;case 0:!function(e,t,n){Tn.assert(242===t.kind,`A tab stop cannot be attached to a node of kind ${Tn.formatSyntaxKind(t.kind)}.`),Tn.assert(5!==e,"A tab stop cannot be attached to an embedded statement."),sn(`$${n.order}`)}(e,t,n)}}(e,t,n)}if(0===e)return Et(_t(t,YI));if(2===e)return Ke(_t(t,YC));if(6===e)return Ve(_t(t,MC),!0);if(3===e)return function(e){Se(e.name),rn(),$t("in"),rn(),Se(e.constraint)}(_t(t,pN));if(7===e)return function(e){Zt("{"),rn(),$t(132===e.token?"assert":"with"),Zt(":"),rn();const t=e.elements;Jt(e,t,526226),rn(),Zt("}")}(_t(t,hI));if(5===e)return Tn.assertNode(t,RA),Xe(!0);if(4===e){switch(t.kind){case 16:case 17:case 18:return Ve(t,!1);case 80:return Ke(t);case 81:return Je(t);case 166:return function(e){(function(e){80===e.kind?ke(e):Se(e)})(e.left),Zt("."),Se(e.right)}(t);case 167:return function(e){Zt("["),ke(e.expression,oe.parenthesizeExpressionOfComputedPropertyName),Zt("]")}(t);case 168:return function(e){Ot(e,e.modifiers),Se(e.name),e.constraint&&(rn(),$t("extends"),rn(),Se(e.constraint));e.default&&(rn(),en("="),rn(),Se(e.default))}(t);case 169:return function(e){Mt(e,e.modifiers,!0),Se(e.dotDotDotToken),Pt(e.name,tn),Se(e.questionToken),e.parent&&317===e.parent.kind&&!e.name?Se(e.type):Ft(e.type);Rt(e.initializer,e.type?e.type.end:e.questionToken?e.questionToken.end:e.name?e.name.end:e.modifiers?e.modifiers.end:e.pos,e,oe.parenthesizeExpressionForDisallowedComma)}(t);case 170:return o=t,Zt("@"),void ke(o.expression,oe.parenthesizeLeftSideOfAccess);case 171:return function(e){Ot(e,e.modifiers),Pt(e.name,on),Se(e.questionToken),Ft(e.type),Xt()}(t);case 172:return function(e){Mt(e,e.modifiers,!0),Se(e.name),Se(e.questionToken),Se(e.exclamationToken),Ft(e.type),Rt(e.initializer,e.type?e.type.end:e.questionToken?e.questionToken.end:e.name.end,e),Xt()}(t);case 173:return function(e){Ot(e,e.modifiers),Se(e.name),Se(e.questionToken),at(e,ut,lt)}(t);case 174:return function(e){Mt(e,e.modifiers,!0),Se(e.asteriskToken),Se(e.name),Se(e.questionToken),at(e,ut,ct)}(t);case 175:return function(e){$t("static"),In(e),pt(e.body),Dn(e)}(t);case 176:return function(e){Mt(e,e.modifiers,!1),$t("constructor"),at(e,ut,ct)}(t);case 177:case 178:return function(e){const t=Mt(e,e.modifiers,!0),n=177===e.kind?139:153;tt(n,t,$t,e),rn(),Se(e.name),at(e,ut,ct)}(t);case 179:return function(e){at(e,ut,lt)}(t);case 180:return function(e){$t("new"),rn(),at(e,ut,lt)}(t);case 181:return function(e){Mt(e,e.modifiers,!1),t=e,n=e.parameters,Jt(t,n,8848),Ft(e.type),Xt();var t,n}(t);case 182:return function(e){e.assertsModifier&&(Se(e.assertsModifier),rn());Se(e.parameterName),e.type&&(rn(),$t("is"),rn(),Se(e.type))}(t);case 183:return function(e){Se(e.typeName),Ut(e,e.typeArguments)}(t);case 184:return function(e){at(e,We,He)}(t);case 185:return function(e){Ot(e,e.modifiers),$t("new"),rn(),at(e,We,He)}(t);case 186:return function(e){$t("typeof"),rn(),Se(e.exprName),Ut(e,e.typeArguments)}(t);case 187:return function(e){In(e),h(e.members,Fn),Zt("{");const t=1&rp(e)?768:32897;Jt(e,e.members,524288|t),Zt("}"),Dn(e)}(t);case 188:return function(e){Se(e.elementType,oe.parenthesizeNonArrayTypeOfPostfixType),Zt("["),Zt("]")}(t);case 189:return function(e){tt(23,e.pos,Zt,e);const t=1&rp(e)?528:657;Jt(e,e.elements,524288|t,oe.parenthesizeElementTypeOfTupleType),tt(24,e.elements.end,Zt,e)}(t);case 190:return function(e){Se(e.type,oe.parenthesizeTypeOfOptionalType),Zt("?")}(t);case 192:return function(e){Jt(e,e.types,516,oe.parenthesizeConstituentTypeOfUnionType)}(t);case 193:return function(e){Jt(e,e.types,520,oe.parenthesizeConstituentTypeOfIntersectionType)}(t);case 194:return function(e){Se(e.checkType,oe.parenthesizeCheckTypeOfConditionalType),rn(),$t("extends"),rn(),Se(e.extendsType,oe.parenthesizeExtendsTypeOfConditionalType),rn(),Zt("?"),rn(),Se(e.trueType),rn(),Zt(":"),rn(),Se(e.falseType)}(t);case 195:return function(e){$t("infer"),rn(),Se(e.typeParameter)}(t);case 196:return function(e){Zt("("),Se(e.type),Zt(")")}(t);case 233:return Ye(t);case 197:return void $t("this");case 198:return function(e){_n(e.operator,$t),rn();const t=148===e.operator?oe.parenthesizeOperandOfReadonlyTypeOperator:oe.parenthesizeOperandOfTypeOperator;Se(e.type,t)}(t);case 199:return function(e){Se(e.objectType,oe.parenthesizeNonArrayTypeOfPostfixType),Zt("["),Se(e.indexType),Zt("]")}(t);case 200:return function(e){const t=rp(e);Zt("{"),1&t?rn():(an(),cn());e.readonlyToken&&(Se(e.readonlyToken),148!==e.readonlyToken.kind&&$t("readonly"),rn());Zt("["),Pe(3,e.typeParameter),e.nameType&&(rn(),$t("as"),rn(),Se(e.nameType));Zt("]"),e.questionToken&&(Se(e.questionToken),58!==e.questionToken.kind&&Zt("?"));Zt(":"),rn(),Se(e.type),Xt(),1&t?rn():(an(),ln());Jt(e,e.members,2),Zt("}")}(t);case 201:return function(e){ke(e.literal)}(t);case 202:return function(e){Se(e.dotDotDotToken),Se(e.name),Se(e.questionToken),tt(59,e.name.end,Zt,e),rn(),Se(e.type)}(t);case 203:return function(e){Se(e.head),Jt(e,e.templateSpans,262144)}(t);case 204:return function(e){Se(e.type),Se(e.literal)}(t);case 205:return function(e){e.isTypeOf&&($t("typeof"),rn());$t("import"),Zt("("),Se(e.argument),e.attributes&&(Zt(","),rn(),Pe(7,e.attributes));Zt(")"),e.qualifier&&(Zt("."),Se(e.qualifier));Ut(e,e.typeArguments)}(t);case 206:return function(e){Zt("{"),Jt(e,e.elements,525136),Zt("}")}(t);case 207:return function(e){Zt("["),Jt(e,e.elements,524880),Zt("]")}(t);case 208:return function(e){Se(e.dotDotDotToken),e.propertyName&&(Se(e.propertyName),Zt(":"),rn());Se(e.name),Rt(e.initializer,e.name.end,e,oe.parenthesizeExpressionForDisallowedComma)}(t);case 239:return function(e){ke(e.expression),Se(e.literal)}(t);case 240:return void Xt();case 241:return function(e){Ze(e,!e.multiLine&&En(e))}(t);case 243:return function(e){Mt(e,e.modifiers,!1),Se(e.declarationList),Xt()}(t);case 242:return Xe(!1);case 244:return function(e){ke(e.expression,oe.parenthesizeExpressionOfExpressionStatement),n&&sf(n)&&!fy(e.expression)||Xt()}(t);case 245:return function(e){const t=tt(101,e.pos,$t,e);rn(),tt(21,t,Zt,e),ke(e.expression),tt(22,e.expression.end,Zt,e),zt(e,e.thenStatement),e.elseStatement&&(pn(e,e.thenStatement,e.elseStatement),tt(93,e.thenStatement.end,$t,e),245===e.elseStatement.kind?(rn(),Se(e.elseStatement)):zt(e,e.elseStatement))}(t);case 246:return function(e){tt(92,e.pos,$t,e),zt(e,e.statement),OA(e.statement)&&!W?rn():pn(e,e.statement,e.expression);$e(e,e.statement.end),Xt()}(t);case 247:return function(e){$e(e,e.pos),zt(e,e.statement)}(t);case 248:return function(e){const t=tt(99,e.pos,$t,e);rn();let n=tt(21,t,Zt,e);et(e.initializer),n=tt(27,e.initializer?e.initializer.end:n,Zt,e),jt(e.condition),n=tt(27,e.condition?e.condition.end:n,Zt,e),jt(e.incrementor),tt(22,e.incrementor?e.incrementor.end:n,Zt,e),zt(e,e.statement)}(t);case 249:return function(e){const t=tt(99,e.pos,$t,e);rn(),tt(21,t,Zt,e),et(e.initializer),rn(),tt(103,e.initializer.end,$t,e),rn(),ke(e.expression),tt(22,e.expression.end,Zt,e),zt(e,e.statement)}(t);case 250:return function(e){const t=tt(99,e.pos,$t,e);rn(),function(e){e&&(Se(e),rn())}(e.awaitModifier),tt(21,t,Zt,e),et(e.initializer),rn(),tt(165,e.initializer.end,$t,e),rn(),ke(e.expression),tt(22,e.expression.end,Zt,e),zt(e,e.statement)}(t);case 251:return function(e){tt(88,e.pos,$t,e),Lt(e.label),Xt()}(t);case 252:return function(e){tt(83,e.pos,$t,e),Lt(e.label),Xt()}(t);case 253:return function(e){tt(107,e.pos,$t,e),jt(e.expression&&it(e.expression),it),Xt()}(t);case 254:return function(e){const t=tt(118,e.pos,$t,e);rn(),tt(21,t,Zt,e),ke(e.expression),tt(22,e.expression.end,Zt,e),zt(e,e.statement)}(t);case 255:return function(e){const t=tt(109,e.pos,$t,e);rn(),tt(21,t,Zt,e),ke(e.expression),tt(22,e.expression.end,Zt,e),rn(),Se(e.caseBlock)}(t);case 256:return function(e){Se(e.label),tt(59,e.label.end,Zt,e),rn(),Se(e.statement)}(t);case 257:return function(e){tt(111,e.pos,$t,e),jt(it(e.expression),it),Xt()}(t);case 258:return function(e){tt(113,e.pos,$t,e),rn(),Se(e.tryBlock),e.catchClause&&(pn(e,e.tryBlock,e.catchClause),Se(e.catchClause));e.finallyBlock&&(pn(e,e.catchClause||e.tryBlock,e.finallyBlock),tt(98,(e.catchClause||e.tryBlock).end,$t,e),rn(),Se(e.finallyBlock))}(t);case 259:return function(e){un(89,e.pos,$t),Xt()}(t);case 260:return function(e){var t,n,r;Se(e.name),Se(e.exclamationToken),Ft(e.type),Rt(e.initializer,(null==(t=e.type)?void 0:t.end)??(null==(r=null==(n=e.name.emitNode)?void 0:n.typeNode)?void 0:r.end)??e.name.end,e,oe.parenthesizeExpressionForDisallowedComma)}(t);case 261:return function(e){if(lf(e))$t("await"),rn(),$t("using");else{$t(pf(e)?"let":df(e)?"const":uf(e)?"using":"var")}rn(),Jt(e,e.declarations,528)}(t);case 262:return function(e){st(e)}(t);case 263:return function(e){ht(e)}(t);case 264:return function(e){Mt(e,e.modifiers,!1),$t("interface"),rn(),Se(e.name),Bt(e,e.typeParameters),Jt(e,e.heritageClauses,512),rn(),Zt("{"),In(e),h(e.members,Fn),Jt(e,e.members,129),Dn(e),Zt("}")}(t);case 265:return function(e){Mt(e,e.modifiers,!1),$t("type"),rn(),Se(e.name),Bt(e,e.typeParameters),rn(),Zt("="),rn(),Se(e.type),Xt()}(t);case 266:return function(e){Mt(e,e.modifiers,!1),$t("enum"),rn(),Se(e.name),rn(),Zt("{"),Jt(e,e.members,145),Zt("}")}(t);case 267:return function(e){Mt(e,e.modifiers,!1),2048&~e.flags&&($t(32&e.flags?"namespace":"module"),rn());Se(e.name);let t=e.body;if(!t)return Xt();for(;t&&sI(t);)Zt("."),Se(t.name),t=t.body;rn(),Se(t)}(t);case 268:return function(e){In(e),h(e.statements,On),Ze(e,En(e)),Dn(e)}(t);case 269:return function(e){tt(19,e.pos,Zt,e),Jt(e,e.clauses,129),tt(20,e.clauses.end,Zt,e,!0)}(t);case 270:return function(e){let t=tt(95,e.pos,$t,e);rn(),t=tt(130,t,$t,e),rn(),t=tt(145,t,$t,e),rn(),Se(e.name),Xt()}(t);case 271:return function(e){Mt(e,e.modifiers,!1),tt(102,e.modifiers?e.modifiers.end:e.pos,$t,e),rn(),e.isTypeOnly&&(tt(156,e.pos,$t,e),rn());Se(e.name),rn(),tt(64,e.name.end,Zt,e),rn(),function(e){80===e.kind?ke(e):Se(e)}(e.moduleReference),Xt()}(t);case 272:return function(e){Mt(e,e.modifiers,!1),tt(102,e.modifiers?e.modifiers.end:e.pos,$t,e),rn(),e.importClause&&(Se(e.importClause),rn(),tt(161,e.importClause.end,$t,e),rn());ke(e.moduleSpecifier),e.attributes&&Lt(e.attributes);Xt()}(t);case 273:return function(e){e.isTypeOnly&&(tt(156,e.pos,$t,e),rn());Se(e.name),e.name&&e.namedBindings&&(tt(28,e.name.end,Zt,e),rn());Se(e.namedBindings)}(t);case 274:return function(e){const t=tt(42,e.pos,Zt,e);rn(),tt(130,t,$t,e),rn(),Se(e.name)}(t);case 280:return function(e){const t=tt(42,e.pos,Zt,e);rn(),tt(130,t,$t,e),rn(),Se(e.name)}(t);case 275:case 279:return function(e){gt(e)}(t);case 276:case 281:return function(e){yt(e)}(t);case 277:return function(e){const t=tt(95,e.pos,$t,e);rn(),e.isExportEquals?tt(64,t,en,e):tt(90,t,$t,e);rn(),ke(e.expression,e.isExportEquals?oe.getParenthesizeRightSideOfBinaryForOperator(64):oe.parenthesizeExpressionOfExportDefault),Xt()}(t);case 278:return function(e){Mt(e,e.modifiers,!1);let t=tt(95,e.pos,$t,e);rn(),e.isTypeOnly&&(t=tt(156,t,$t,e),rn());e.exportClause?Se(e.exportClause):t=tt(42,t,Zt,e);if(e.moduleSpecifier){rn();tt(161,e.exportClause?e.exportClause.end:t,$t,e),rn(),ke(e.moduleSpecifier)}e.attributes&&Lt(e.attributes);Xt()}(t);case 300:return function(e){tt(e.token,e.pos,$t,e),rn();const t=e.elements;Jt(e,t,526226)}(t);case 301:return function(e){Se(e.name),Zt(":"),rn();const t=e.value;if(!(1024&rp(t))){ur(xE(t).pos)}Se(t)}(t);case 282:case 319:case 330:case 331:case 333:case 334:case 335:case 336:case 353:return;case 283:return function(e){$t("require"),Zt("("),ke(e.expression),Zt(")")}(t);case 12:return function(e){v.writeLiteral(e.text)}(t);case 286:case 289:return function(e){if(Zt("<"),PI(e)){const t=xn(e.tagName,e);vt(e.tagName),Ut(e,e.typeArguments),e.attributes.properties&&e.attributes.properties.length>0&&rn(),Se(e.attributes),Sn(e.attributes,e),hn(t)}Zt(">")}(t);case 287:case 290:return function(e){Zt("</"),MI(e)&&vt(e.tagName);Zt(">")}(t);case 291:return function(e){Se(e.name),function(e,t,n,r){n&&(t(e),r(n))}("=",Zt,e.initializer,Ee)}(t);case 292:return function(e){Jt(e,e.properties,262656)}(t);case 293:return function(e){Zt("{..."),ke(e.expression),Zt("}")}(t);case 294:return function(e){var t;if(e.expression||!ne&&!fy(e)&&(r=e.pos,function(e){let t=!1;return ba((null==n?void 0:n.text)||"",e+1,(()=>t=!0)),t}(r)||function(e){let t=!1;return va((null==n?void 0:n.text)||"",e+1,(()=>t=!0)),t}(r))){const r=n&&!fy(e)&&ta(n,e.pos).line!==ta(n,e.end).line;r&&v.increaseIndent();const i=tt(19,e.pos,Zt,e);Se(e.dotDotDotToken),ke(e.expression),tt(20,(null==(t=e.expression)?void 0:t.end)||i,Zt,e),r&&v.decreaseIndent()}var r}(t);case 295:return function(e){Te(e.namespace),Zt(":"),Te(e.name)}(t);case 296:return function(e){tt(84,e.pos,$t,e),rn(),ke(e.expression,oe.parenthesizeExpressionForDisallowedComma),bt(e,e.statements,e.expression.end)}(t);case 297:return function(e){const t=tt(90,e.pos,$t,e);bt(e,e.statements,t)}(t);case 298:return function(e){rn(),_n(e.token,$t),rn(),Jt(e,e.types,528)}(t);case 299:return function(e){const t=tt(85,e.pos,$t,e);rn(),e.variableDeclaration&&(tt(21,t,Zt,e),Se(e.variableDeclaration),tt(22,e.variableDeclaration.end,Zt,e),rn());Se(e.block)}(t);case 303:return function(e){Se(e.name),Zt(":"),rn();const t=e.initializer;if(!(1024&rp(t))){ur(xE(t).pos)}ke(t,oe.parenthesizeExpressionForDisallowedComma)}(t);case 304:return function(e){Se(e.name),e.objectAssignmentInitializer&&(rn(),Zt("="),rn(),ke(e.objectAssignmentInitializer,oe.parenthesizeExpressionForDisallowedComma))}(t);case 305:return function(e){e.expression&&(tt(26,e.pos,Zt,e),ke(e.expression,oe.parenthesizeExpressionForDisallowedComma))}(t);case 306:return function(e){Se(e.name),Rt(e.initializer,e.name.end,e,oe.parenthesizeExpressionForDisallowedComma)}(t);case 307:return Et(t);case 308:return Tn.fail("Bundles should be printed using printBundle");case 309:return kt(t);case 310:return function(e){rn(),Zt("{"),Se(e.name),Zt("}")}(t);case 312:return Zt("*");case 313:return Zt("?");case 314:return function(e){Zt("?"),Se(e.type)}(t);case 315:return function(e){Zt("!"),Se(e.type)}(t);case 316:return function(e){Se(e.type),Zt("=")}(t);case 317:return function(e){$t("function"),qt(e,e.parameters),Zt(":"),Se(e.type)}(t);case 191:case 318:return function(e){Zt("..."),Se(e.type)}(t);case 320:return function(e){if(H("/**"),e.comment){const t=vl(e.comment);if(t){const e=t.split(/\r\n?|\n/g);for(const t of e)an(),rn(),Zt("*"),rn(),H(t)}}e.tags&&(1!==e.tags.length||344!==e.tags[0].kind||e.comment?Jt(e,e.tags,33):(rn(),Se(e.tags[0])));rn(),H("*/")}(t);case 322:return xt(t);case 323:return St(t);case 327:case 332:case 337:return Tt((i=t).tagName),void wt(i.comment);case 328:case 329:return function(e){Tt(e.tagName),rn(),Zt("{"),Se(e.class),Zt("}"),wt(e.comment)}(t);case 338:return function(e){Tt(e.tagName),e.name&&(rn(),Se(e.name));wt(e.comment),St(e.typeExpression)}(t);case 339:return function(e){wt(e.comment),St(e.typeExpression)}(t);case 341:case 348:return function(e){Tt(e.tagName),kt(e.typeExpression),rn(),e.isBracketed&&Zt("[");Se(e.name),e.isBracketed&&Zt("]");wt(e.comment)}(t);case 340:case 342:case 343:case 344:case 349:case 350:return function(e){Tt(e.tagName),kt(e.typeExpression),wt(e.comment)}(t);case 345:return function(e){Tt(e.tagName),kt(e.constraint),rn(),Jt(e,e.typeParameters,528),wt(e.comment)}(t);case 346:return function(e){Tt(e.tagName),e.typeExpression&&(309===e.typeExpression.kind?kt(e.typeExpression):(rn(),Zt("{"),H("Object"),e.typeExpression.isArrayType&&(Zt("["),Zt("]")),Zt("}")));e.fullName&&(rn(),Se(e.fullName));wt(e.comment),e.typeExpression&&322===e.typeExpression.kind&&xt(e.typeExpression)}(t);case 347:return function(e){Tt(e.tagName),Se(e.name),wt(e.comment)}(t);case 351:return function(e){Tt(e.tagName),rn(),e.importClause&&(Se(e.importClause),rn(),tt(161,e.importClause.end,$t,e),rn());ke(e.moduleSpecifier),e.attributes&&Lt(e.attributes);wt(e.comment)}(t)}if(td(t)&&(e=1,O!==jq)){const n=O(e,t)||t;n!==t&&(t=n,I&&(t=I(t)))}}var i,o;if(1===e)switch(t.kind){case 9:case 10:return function(e){Ve(e,!1)}(t);case 11:case 14:case 15:return Ve(t,!1);case 80:return Ke(t);case 81:return Je(t);case 209:return function(e){const t=e.elements,n=e.multiLine?65536:0;Wt(e,t,8914|n,oe.parenthesizeExpressionForDisallowedComma)}(t);case 210:return function(e){In(e),h(e.properties,Fn);const t=131072&rp(e);t&&cn();const r=e.multiLine?65536:0,i=n&&n.languageVersion>=1&&!sf(n)?64:0;Jt(e,e.properties,526226|i|r),t&&ln();Dn(e)}(t);case 211:return function(e){ke(e.expression,oe.parenthesizeLeftSideOfAccess);const t=e.questionDotToken||jw(oE.createToken(25),e.expression.end,e.name.pos),n=kn(e,e.expression,t),r=kn(e,t,e.name);mn(n,!1);const i=29!==t.kind&&function(e){if(DC(e=Ml(e))){const t=An(e,!0,!1);return!(448&e.numericLiteralFlags||t.includes(Vs(25))||t.includes(String.fromCharCode(69))||t.includes(String.fromCharCode(101)))}if(Bx(e)){const t=IE(e);return"number"==typeof t&&isFinite(t)&&t>=0&&Math.floor(t)===t}}(e.expression)&&!v.hasTrailingComment()&&!v.hasTrailingWhitespace();i&&Zt(".");e.questionDotToken?Se(t):tt(t.kind,e.expression.end,Zt,e);mn(r,!1),Se(e.name),hn(n,r)}(t);case 212:return function(e){ke(e.expression,oe.parenthesizeLeftSideOfAccess),Se(e.questionDotToken),tt(23,e.expression.end,Zt,e),ke(e.argumentExpression),tt(24,e.argumentExpression.end,Zt,e)}(t);case 213:return function(e){const t=16&ip(e);t&&(Zt("("),Qt("0"),Zt(","),rn());ke(e.expression,oe.parenthesizeLeftSideOfAccess),t&&Zt(")");Se(e.questionDotToken),Ut(e,e.typeArguments),Wt(e,e.arguments,2576,oe.parenthesizeExpressionForDisallowedComma)}(t);case 214:return function(e){tt(105,e.pos,$t,e),rn(),ke(e.expression,oe.parenthesizeExpressionOfNew),Ut(e,e.typeArguments),Wt(e,e.arguments,18960,oe.parenthesizeExpressionForDisallowedComma)}(t);case 215:return function(e){const t=16&ip(e);t&&(Zt("("),Qt("0"),Zt(","),rn());ke(e.tag,oe.parenthesizeLeftSideOfAccess),t&&Zt(")");Ut(e,e.typeArguments),rn(),ke(e.template)}(t);case 216:return function(e){Zt("<"),Se(e.type),Zt(">"),ke(e.expression,oe.parenthesizeOperandOfPrefixUnary)}(t);case 217:return function(e){const t=tt(21,e.pos,Zt,e),n=xn(e.expression,e);ke(e.expression,void 0),Sn(e.expression,e),hn(n),tt(22,e.expression?e.expression.end:t,Zt,e)}(t);case 218:return function(e){Rn(e.name),st(e)}(t);case 219:return function(e){Ot(e,e.modifiers),at(e,Ge,Qe)}(t);case 220:return function(e){tt(91,e.pos,$t,e),rn(),ke(e.expression,oe.parenthesizeOperandOfPrefixUnary)}(t);case 221:return function(e){tt(114,e.pos,$t,e),rn(),ke(e.expression,oe.parenthesizeOperandOfPrefixUnary)}(t);case 222:return function(e){tt(116,e.pos,$t,e),rn(),ke(e.expression,oe.parenthesizeOperandOfPrefixUnary)}(t);case 223:return function(e){tt(135,e.pos,$t,e),rn(),ke(e.expression,oe.parenthesizeOperandOfPrefixUnary)}(t);case 224:return function(e){_n(e.operator,en),function(e){const t=e.operand;return 224===t.kind&&(40===e.operator&&(40===t.operator||46===t.operator)||41===e.operator&&(41===t.operator||47===t.operator))}(e)&&rn();ke(e.operand,oe.parenthesizeOperandOfPrefixUnary)}(t);case 225:return function(e){ke(e.operand,oe.parenthesizeOperandOfPostfixUnary),_n(e.operator,en)}(t);case 226:return ae(t);case 227:return function(e){const t=kn(e,e.condition,e.questionToken),n=kn(e,e.questionToken,e.whenTrue),r=kn(e,e.whenTrue,e.colonToken),i=kn(e,e.colonToken,e.whenFalse);ke(e.condition,oe.parenthesizeConditionOfConditionalExpression),mn(t,!0),Se(e.questionToken),mn(n,!0),ke(e.whenTrue,oe.parenthesizeBranchOfConditionalExpression),hn(t,n),mn(r,!0),Se(e.colonToken),mn(i,!0),ke(e.whenFalse,oe.parenthesizeBranchOfConditionalExpression),hn(r,i)}(t);case 228:return function(e){Se(e.head),Jt(e,e.templateSpans,262144)}(t);case 229:return function(e){tt(127,e.pos,$t,e),Se(e.asteriskToken),jt(e.expression&&it(e.expression),ot)}(t);case 230:return function(e){tt(26,e.pos,Zt,e),ke(e.expression,oe.parenthesizeExpressionForDisallowedComma)}(t);case 231:return function(e){Rn(e.name),ht(e)}(t);case 232:case 282:case 353:return;case 234:return function(e){ke(e.expression,void 0),e.type&&(rn(),$t("as"),rn(),Se(e.type))}(t);case 235:return function(e){ke(e.expression,oe.parenthesizeLeftSideOfAccess),en("!")}(t);case 233:return Ye(t);case 238:return function(e){ke(e.expression,void 0),e.type&&(rn(),$t("satisfies"),rn(),Se(e.type))}(t);case 236:return function(e){un(e.keywordToken,e.pos,Zt),Zt("."),Se(e.name)}(t);case 237:return Tn.fail("SyntheticExpression should never be printed.");case 284:return function(e){Se(e.openingElement),Jt(e,e.children,262144),Se(e.closingElement)}(t);case 285:return function(e){Zt("<"),vt(e.tagName),Ut(e,e.typeArguments),rn(),Se(e.attributes),Zt("/>")}(t);case 288:return function(e){Se(e.openingFragment),Jt(e,e.children,262144),Se(e.closingFragment)}(t);case 352:return Tn.fail("SyntaxList should not be printed");case 354:return function(e){const t=rp(e);1024&t||e.pos===e.expression.pos||ur(e.expression.pos);ke(e.expression),2048&t||e.end===e.expression.end||cr(e.expression.end)}(t);case 355:return function(e){Wt(e,e.elements,528,void 0)}(t);case 356:return Tn.fail("SyntheticReferenceExpression should not be printed")}return Og(t.kind)?dn(t,$t):Ul(t.kind)?dn(t,Zt):void Tn.fail(`Unhandled SyntaxKind: ${Tn.formatSyntaxKind(t.kind)}.`)}function Ue(e,t){const n=Re(1,e,t);Tn.assertIsDefined(A),t=A,A=void 0,n(e,t)}function Be(t){let r=!1;const i=308===t.kind?t:void 0;if(i&&0===K)return;const o=i?i.sourceFiles.length:1;for(let s=0;s<o;s++){const o=i?i.sourceFiles[s]:t,a=YI(o)?o:n,c=e.noEmitHelpers||!!a&&SP(a),l=YI(o)&&!x,u=qe(o);if(u)for(const e of u){if(e.scoped){if(i)continue}else{if(c)continue;if(l){if(J.get(e.name))continue;J.set(e.name,!0)}}"string"==typeof e.text?fn(e.text):fn(e.text(Kn)),r=!0}}return r}function qe(e){const t=FE(e);return t&&xe(t,YE)}function Ve(t,n){const r=An(t,e.neverAsciiEscape,n);!e.sourceMap&&!e.inlineSourceMap||11!==t.kind&&!Wl(t.kind)?function(e){v.writeStringLiteral(e)}(r):Qt(r)}function Ke(e){(e.symbol?Yt:H)(Nn(e,!1),e.symbol),Jt(e,VE(e),53776)}function Je(e){H(Nn(e,!1))}function We(e){Bt(e,e.typeParameters),Vt(e,e.parameters),rn(),Zt("=>")}function He(e){rn(),Se(e.type)}function Ge(e){Bt(e,e.typeParameters),Vt(e,e.parameters),Ft(e.type),rn(),Se(e.equalsGreaterThanToken)}function Qe(e){OA(e.body)?pt(e.body):(rn(),ke(e.body,oe.parenthesizeConciseBodyOfArrowFunction))}function Ye(e){ke(e.expression,oe.parenthesizeLeftSideOfAccess),Ut(e,e.typeArguments)}function Ze(e,t){tt(19,e.pos,Zt,e);const n=t||1&rp(e)?768:129;Jt(e,e.statements,n),tt(20,e.statements.end,Zt,e,!!(1&n))}function Xe(e){e?Zt(";"):Xt()}function $e(e,t){const n=tt(117,t,$t,e);rn(),tt(21,n,Zt,e),ke(e.expression),tt(22,e.expression.end,Zt,e)}function et(e){void 0!==e&&(261===e.kind?Se(e):ke(e))}function tt(e,t,r,i,o){const s=Sc(i),a=s&&s.kind===i.kind,c=t;if(a&&n&&(t=da(n.text,t)),a&&i.pos!==c){const e=o&&n&&!dx(c,t,n);e&&cn(),cr(c),e&&ln()}if(t=q||19!==e&&20!==e?_n(e,r,t):un(e,t,r,i),a&&i.end!==t){const e=294===i.kind;ur(t,!e,e)}return t}function nt(e){return 2===e.kind||!!e.hasTrailingNewLine}function rt(e){if(!n)return!1;const t=wa(n.text,e.pos);if(t){const t=Sc(e);if(t&&cA(t.parent))return!0}return!!$(t,nt)||(!!$(TE(e),nt)||!!IA(e)&&(!(e.pos===e.expression.pos||!$(ka(n.text,e.expression.pos),nt))||rt(e.expression)))}function it(e){if(!ne&&IA(e)&&rt(e)){const t=Sc(e);if(t&&cA(t)){const n=oE.createParenthesizedExpression(e.expression);return aE(n,e),vM(n,t),n}return oE.createParenthesizedExpression(e)}return e}function ot(e){return it(oe.parenthesizeExpressionForDisallowedComma(e))}function st(e){Mt(e,e.modifiers,!1),$t("function"),Se(e.asteriskToken),rn(),Te(e.name),at(e,ut,ct)}function at(e,t,n){const r=131072&rp(e);r&&cn(),In(e),h(e.parameters,On),t(e),n(e),Dn(e),r&&ln()}function ct(e){const t=e.body;t?pt(t):Xt()}function lt(e){Xt()}function ut(e){Bt(e,e.typeParameters),qt(e,e.parameters),Ft(e.type)}function pt(e){On(e),null==F||F(e),rn(),Zt("{"),cn();const t=function(e){if(1&rp(e))return!0;if(e.multiLine)return!1;if(!fy(e)&&n&&!rx(e,n))return!1;if(gn(e,we(e.statements),2)||vn(e,Ne(e.statements),2,e.statements))return!1;let t;for(const n of e.statements){if(yn(t,n,2)>0)return!1;t=n}return!0}(e)?ft:mt;tr(e,e.statements,t),ln(),un(20,e.statements.end,Zt,e),null==R||R(e)}function ft(e){mt(e,!0)}function mt(e,t){const n=At(e.statements),r=v.getTextPos();Be(e),0===n&&r===v.getTextPos()&&t?(ln(),Jt(e,e.statements,768),cn()):Jt(e,e.statements,1,void 0,n)}function ht(e){Mt(e,e.modifiers,!0),tt(86,ex(e).pos,$t,e),e.name&&(rn(),Te(e.name));const t=131072&rp(e);t&&cn(),Bt(e,e.typeParameters),Jt(e,e.heritageClauses,0),rn(),Zt("{"),In(e),h(e.members,Fn),Jt(e,e.members,129),Dn(e),Zt("}"),t&&ln()}function gt(e){Zt("{"),Jt(e,e.elements,525136),Zt("}")}function yt(e){e.isTypeOnly&&($t("type"),rn()),e.propertyName&&(Se(e.propertyName),rn(),tt(130,e.propertyName.end,$t,e),rn()),Se(e.name)}function vt(e){80===e.kind?ke(e):Se(e)}function bt(e,t,r){let i=163969;1===t.length&&(!n||fy(e)||fy(t[0])||ix(e,t[0],n))?(un(59,r,Zt,e),rn(),i&=-130):tt(59,r,Zt,e),Jt(e,t,i)}function xt(e){Jt(e,oE.createNodeArray(e.jsDocPropertyTags),33)}function St(e){e.typeParameters&&Jt(e,oE.createNodeArray(e.typeParameters),33),e.parameters&&Jt(e,oE.createNodeArray(e.parameters),33),e.type&&(an(),rn(),Zt("*"),rn(),Se(e.type))}function Tt(e){Zt("@"),Se(e)}function wt(e){const t=vl(e);t&&(rn(),H(t))}function kt(e){e&&(rn(),Zt("{"),Se(e.type),Zt("}"))}function Et(e){an();const t=e.statements;0===t.length||!yf(t[0])||fy(t[0])?tr(e,t,Nt):Nt(e)}function Ct(e,t,r,i){if(e&&(nn('/// <reference no-default-lib="true"/>'),an()),n&&n.moduleName&&(nn(`/// <amd-module name="${n.moduleName}" />`),an()),n&&n.amdDependencies)for(const s of n.amdDependencies)s.name?nn(`/// <amd-dependency name="${s.name}" path="${s.path}" />`):nn(`/// <amd-dependency path="${s.path}" />`),an();function o(e,t){for(const n of t){const t=n.resolutionMode?`resolution-mode="${99===n.resolutionMode?"import":"require"}" `:"",r=n.preserve?'preserve="true" ':"";nn(`/// <reference ${e}="${n.fileName}" ${t}${r}/>`),an()}}o("path",t),o("types",r),o("lib",i)}function Nt(e){const t=e.statements;In(e),h(e.statements,On),Be(e);const n=E(t,(e=>!yf(e)));!function(e){e.isDeclarationFile&&Ct(e.hasNoDefaultLib,e.referencedFiles,e.typeReferenceDirectives,e.libReferenceDirectives)}(e),Jt(e,t,1,void 0,-1===n?t.length:n),Dn(e)}function At(e,t,n){let r=!!t;for(let i=0;i<e.length;i++){const o=e[i];if(!yf(o))return i;(!n||!n.has(o.expression.text))&&(r&&(r=!1,ge(t)),an(),Se(o),n&&n.add(o.expression.text))}return e.length}function It(e){if(YI(e))At(e.statements,e);else{const t=new Set;for(const n of e.sourceFiles)At(n.statements,n,t);ge(void 0)}}function Dt(e){if(YI(e)){const t=Ea(e.text);if(t)return nn(t),an(),!0}else for(const t of e.sourceFiles)if(Dt(t))return!0}function Pt(e,t){if(!e)return;const n=H;H=t,Se(e),H=n}function Mt(e,t,n){if(null==t?void 0:t.length){if(T(t,lu))return Ot(e,t);if(T(t,mN))return n?function(e,t){Jt(e,t,2146305);const n=Ne(t);return n&&!dw(n.end)?n.end:e.pos}(e,t):e.pos;let r,i;null==L||L(t);let o,s=0,a=0;for(;s<t.length;){for(;a<t.length;){if(o=t[a],i=mN(o)?"decorators":"modifiers",void 0===r)r=i;else if(i!==r)break;a++}const c={pos:-1,end:-1};0===s&&(c.pos=t.pos),a===t.length-1&&(c.end=t.end),("modifiers"===r||n)&&Gt(Se,e,t,"modifiers"===r?2359808:2146305,void 0,s,a-s,!1,c),s=a,r=i,a++}if(null==j||j(t),o&&!dw(o.end))return o.end}return e.pos}function Ot(e,t){Jt(e,t,2359808);const n=Ne(t);return n&&!dw(n.end)?n.end:e.pos}function Ft(e){e&&(Zt(":"),rn(),Se(e))}function Rt(e,t,n,r){e&&(rn(),tt(64,t,en,n),rn(),ke(e,r))}function Lt(e){e&&(rn(),Se(e))}function jt(e,t){e&&(rn(),ke(e,t))}function zt(e,t){OA(t)||1&rp(e)||W&&!gn(e,t,0)?(rn(),Se(t)):(an(),cn(),RA(t)?Pe(5,t):Se(t),ln())}function Ut(e,t){Jt(e,t,53776,se)}function Bt(e,t){if(pu(e)&&e.typeArguments)return Ut(e,e.typeArguments);Jt(e,t,53776)}function qt(e,t){Jt(e,t,2576)}function Vt(e,t){!function(e,t){const n=Ie(t);return n&&n.pos===e.pos&&uA(e)&&!e.type&&!$(e.modifiers)&&!$(e.typeParameters)&&!$(n.modifiers)&&!n.dotDotDotToken&&!n.questionToken&&!n.type&&!n.initializer&&YC(n.name)}(e,t)?qt(e,t):Jt(e,t,528)}function Kt(e){switch(60&e){case 0:break;case 16:Zt(",");break;case 4:rn(),Zt("|");break;case 32:rn(),Zt("*"),rn();break;case 8:rn(),Zt("&")}}function Jt(e,t,n,r,i,o){Ht(Se,e,t,n|(e&&2&rp(e)?65536:0),r,i,o)}function Wt(e,t,n,r,i,o){Ht(ke,e,t,n,r,i,o)}function Ht(e,t,r,i,o,s=0,a=(r?r.length-s:0)){if(void 0===r&&16384&i)return;const c=void 0===r||s>=r.length||0===a;if(c&&32768&i)return null==L||L(r),void(null==j||j(r));15360&i&&(Zt(function(e){return qq[15360&e][0]}(i)),c&&r&&ur(r.pos,!0)),null==L||L(r),c?!(1&i)||W&&(!t||n&&rx(t,n))?256&i&&!(524288&i)&&rn():an():Gt(e,t,r,i,o,s,a,r.hasTrailingComma,r),null==j||j(r),15360&i&&(c&&r&&cr(r.end),Zt(function(e){return qq[15360&e][1]}(i)))}function Gt(e,t,n,r,i,o,s,a,c){const l=!(262144&r);let u=l;const d=gn(t,n[o],r);d?(an(d),u=!1):256&r&&rn(),128&r&&cn();const _=function(e,t){return 1===e.length?bV:"object"==typeof t?xV:SV}(e,i);let p,f=!1;for(let b=0;b<s;b++){const s=n[o+b];if(32&r)an(),Kt(r);else if(p){if(60&r&&p.end!==(t?t.end:-1)){2048&rp(p)||cr(p.end)}Kt(r);const e=yn(p,s,r);if(e>0){if(131&r||(cn(),f=!0),u&&60&r&&!dw(s.pos)){ur(xE(s).pos,!!(512&r),!0)}an(e),u=!1}else p&&512&r&&rn()}if(u){ur(xE(s).pos)}else u=l;y=s.pos,_(s,e,i,b),f&&(ln(),f=!1),p=s}const m=p?rp(p):0,h=ne||!!(2048&m),g=a&&64&r&&16&r;g&&(p&&!h?tt(28,p.end,Zt,p):Zt(",")),p&&(t?t.end:-1)!==p.end&&60&r&&!h&&cr(g&&(null==c?void 0:c.end)?c.end:p.end),128&r&&ln();const v=vn(t,n[o+s-1],r,c);v?an(v):2097408&r&&rn()}function Qt(e){v.writeLiteral(e)}function Yt(e,t){v.writeSymbol(e,t)}function Zt(e){v.writePunctuation(e)}function Xt(){v.writeTrailingSemicolon(";")}function $t(e){v.writeKeyword(e)}function en(e){v.writeOperator(e)}function tn(e){v.writeParameter(e)}function nn(e){v.writeComment(e)}function rn(){v.writeSpace(" ")}function on(e){v.writeProperty(e)}function sn(e){v.nonEscapingWrite?v.nonEscapingWrite(e):v.write(e)}function an(e=1){for(let t=0;t<e;t++)v.writeLine(t>0)}function cn(){v.increaseIndent()}function ln(){v.decreaseIndent()}function un(e,t,n,r){return G?_n(e,n,t):function(e,t,n,r,i){if(G||e&&Bm(e))return i(t,n,r);const o=e&&e.emitNode,s=o&&o.flags||0,a=o&&o.tokenSourceMapRanges&&o.tokenSourceMapRanges[t],c=a&&a.source||w;r=br(c,a?a.pos:r),!(256&s)&&r>=0&&Sr(c,r);r=i(t,n,r),a&&(r=a.end);!(512&s)&&r>=0&&Sr(c,r);return r}(r,e,n,t,_n)}function dn(e,t){z&&z(e),t(Vs(e.kind)),U&&U(e)}function _n(e,t,n){const r=Vs(e);return t(r),n<0?n:n+r.length}function pn(e,t,n){if(1&rp(e))rn();else if(W){const r=kn(e,t,n);r?an(r):rn()}else an()}function fn(e){const t=e.split(/\r\n?|\n/g),n=Wd(t);for(const r of t){const e=n?r.slice(n):r;e.length&&(an(),H(e))}}function mn(e,t){e?(cn(),an(e)):t&&rn()}function hn(e,t){e&&ln(),t&&ln()}function gn(e,t,r){if(2&r||W){if(65536&r)return 1;if(void 0===t)return!e||n&&rx(e,n)?0:1;if(t.pos===y)return 0;if(12===t.kind)return 0;if(n&&e&&!dw(e.pos)&&!fy(t)&&(!t.parent||vc(t.parent)===vc(e)))return W?bn((r=>px(t.pos,e.pos,n,r))):ix(e,t,n)?0:1;if(wn(t,r))return 1}return 1&r?1:0}function yn(e,t,r){if(2&r||W){if(void 0===e||void 0===t)return 0;if(12===t.kind)return 0;if(n&&!fy(e)&&!fy(t))return W&&function(e,t){if(t.pos<e.end)return!1;e=vc(e),t=vc(t);const n=e.parent;if(!n||n!==t.parent)return!1;const r=Gw(e),i=null==r?void 0:r.indexOf(e);return void 0!==i&&i>-1&&r.indexOf(t)===i+1}(e,t)?bn((r=>cx(e,t,n,r))):!W&&(o=t,(i=vc(i=e)).parent&&i.parent===vc(o).parent)?ax(e,t,n)?0:1:65536&r?1:0;if(wn(e,r)||wn(t,r))return 1}else if(vE(t))return 1;var i,o;return 1&r?1:0}function vn(e,t,r,i){if(2&r||W){if(65536&r)return 1;if(void 0===t)return!e||n&&rx(e,n)?0:1;if(n&&e&&!dw(e.pos)&&!fy(t)&&(!t.parent||t.parent===e)){if(W){const r=i&&!dw(i.end)?i.end:t.end;return bn((t=>fx(r,e.end,n,t)))}return ox(e,t,n)?0:1}if(wn(t,r))return 1}return 1&r&&!(131072&r)?1:0}function bn(e){Tn.assert(!!W);const t=e(!0);return 0===t?e(!1):t}function xn(e,t){const n=W&&gn(t,e,0);return n&&mn(n,!1),!!n}function Sn(e,t){const n=W&&vn(t,e,0,void 0);n&&an(n)}function wn(e,t){if(fy(e)){const n=vE(e);return void 0===n?!!(65536&t):n}return!!(65536&t)}function kn(e,t,r){return 262144&rp(e)?0:(e=Cn(e),t=Cn(t),vE(r=Cn(r))?1:!n||fy(e)||fy(t)||fy(r)?0:W?bn((e=>cx(t,r,n,e))):ax(t,r,n)?0:1)}function En(e){return 0===e.statements.length&&(!n||ax(e,e,n))}function Cn(e){for(;217===e.kind&&fy(e);)e=e.expression;return e}function Nn(e,t){if(tu(e)||nu(e))return Ln(e);if(MC(e)&&e.textSourceNode)return Nn(e.textSourceNode,t);const r=n,i=!!r&&!!e.parent&&!fy(e);if(Sl(e)){if(!i||C_(e)!==vc(r))return kc(e)}else if(BI(e)){if(!i||C_(e)!==vc(r))return bk(e)}else if(Tn.assertNode(e,Kl),!i)return e.text;return Z_(r,e,t)}function An(t,r,i){if(11===t.kind&&t.textSourceNode){const e=t.textSourceNode;if(YC(e)||ZC(e)||DC(e)||BI(e)){const n=DC(e)?e.text:Nn(e);return i?`"${Vy(n)}"`:r||16777216&rp(t)?`"${Ry(n)}"`:`"${jy(n)}"`}return An(e,r,i)}const o=(r?1:0)|(i?2:0)|(e.terminateUnterminatedLiterals?4:0)|(e.target&&e.target>=8?8:0);return ap(t,n,o)}function In(e){l.push(u),u=0,m.push(g),e&&1048576&rp(e)||(d.push(_),_=0,a.push(c),c=void 0,p.push(f))}function Dn(e){u=l.pop(),g=m.pop(),e&&1048576&rp(e)||(_=d.pop(),c=a.pop(),f=p.pop())}function Pn(e){f&&f!==Ne(p)||(f=new Set),f.add(e)}function Mn(e){g&&g!==Ne(m)||(g=new Set),g.add(e)}function On(e){if(e)switch(e.kind){case 241:case 296:case 297:h(e.statements,On);break;case 256:case 254:case 246:case 247:On(e.statement);break;case 245:On(e.thenStatement),On(e.elseStatement);break;case 248:case 250:case 249:On(e.initializer),On(e.statement);break;case 255:On(e.caseBlock);break;case 269:h(e.clauses,On);break;case 258:On(e.tryBlock),On(e.catchClause),On(e.finallyBlock);break;case 299:On(e.variableDeclaration),On(e.block);break;case 243:On(e.declarationList);break;case 261:h(e.declarations,On);break;case 260:case 169:case 208:case 263:case 274:case 280:Rn(e.name);break;case 262:Rn(e.name),1048576&rp(e)&&(h(e.parameters,On),On(e.body));break;case 206:case 207:case 275:h(e.elements,On);break;case 272:On(e.importClause);break;case 273:Rn(e.name),On(e.namedBindings);break;case 276:Rn(e.propertyName||e.name)}}function Fn(e){if(e)switch(e.kind){case 303:case 304:case 172:case 171:case 174:case 173:case 177:case 178:Rn(e.name)}}function Rn(e){e&&(tu(e)||nu(e)?Ln(e):Mu(e)&&On(e))}function Ln(e){const t=e.emitNode.autoGenerate;if(4==(7&t.flags))return jn(cM(e),ZC(e),t.flags,t.prefix,t.suffix);{const n=t.id;return o[n]||(o[n]=function(e){const t=e.emitNode.autoGenerate,n=lM(t.prefix,Ln),r=lM(t.suffix);switch(7&t.flags){case 1:return qn(0,!!(8&t.flags),ZC(e),n,r);case 2:return Tn.assertNode(e,YC),qn(268435456,!!(8&t.flags),!1,n,r);case 3:return Vn(kc(e),32&t.flags?Un:zn,!!(16&t.flags),!!(8&t.flags),ZC(e),n,r)}return Tn.fail(`Unsupported GeneratedIdentifierKind: ${Tn.formatEnum(7&t.flags,Mr,!0)}.`)}(e))}}function jn(e,t,n,o,s){const a=Gz(e),c=t?i:r;return c[a]||(c[a]=Hn(e,t,n??0,lM(o,Ln),lM(s)))}function zn(e,t){return Un(e,t)&&!function(e,t){let n,r;t?(n=g,r=m):(n=f,r=p);if(null==n?void 0:n.has(e))return!0;for(let i=r.length-1;i>=0;i--)if(n!==r[i]&&(n=r[i],null==n?void 0:n.has(e)))return!0;return!1}(e,t)&&!s.has(e)}function Un(e,t){return!n||O_(n,e,D)}function Bn(e,t){switch(e){case"":_=t;break;case"#":u=t;break;default:c??(c=new Map),c.set(e,t)}}function qn(e,t,n,r,i){r.length>0&&35===r.charCodeAt(0)&&(r=r.slice(1));const o=dM(n,r,"",i);let s=function(e){switch(e){case"":return _;case"#":return u;default:return(null==c?void 0:c.get(e))??0}}(o);if(e&&!(s&e)){const a=dM(n,r,268435456===e?"_i":"_n",i);if(zn(a,n))return s|=e,n?Mn(a):t&&Pn(a),Bn(o,s),a}for(;;){const e=268435455&s;if(s++,8!==e&&13!==e){const a=dM(n,r,e<26?"_"+String.fromCharCode(97+e):"_"+(e-26),i);if(zn(a,n))return n?Mn(a):t&&Pn(a),Bn(o,s),a}}}function Vn(e,t=zn,n,r,i,o,a){if(e.length>0&&35===e.charCodeAt(0)&&(e=e.slice(1)),o.length>0&&35===o.charCodeAt(0)&&(o=o.slice(1)),n){const n=dM(i,o,e,a);if(t(n,i))return i?Mn(n):r?Pn(n):s.add(n),n}95!==e.charCodeAt(e.length-1)&&(e+="_");let c=1;for(;;){const n=dM(i,o,e+c,a);if(t(n,i))return i?Mn(n):r?Pn(n):s.add(n),n;c++}}function Kn(e){return Vn(e,Un,!0,!1,!1,"","")}function Jn(e){const t=Nn(e.name);return function(e,t){for(let n=t;n&&hg(n,t);n=n.nextContainer)if(vd(n)&&n.locals){const t=n.locals.get(Tc(e));if(t&&3257279&t.flags)return!1}return!0}(t,dt(e,vd))?t:Vn(t,zn,!1,!1,!1,"","")}function Wn(){return Vn("default",zn,!1,!1,!1,"","")}function Hn(e,t,n,r,i){switch(e.kind){case 80:case 81:return Vn(Nn(e),zn,!!(16&n),!!(8&n),t,r,i);case 267:case 266:return Tn.assert(!r&&!i&&!t),Jn(e);case 272:case 278:return Tn.assert(!r&&!i&&!t),function(e){const t=Ih(e);return Vn(MC(t)?lp(t.text):"module",zn,!1,!1,!1,"","")}(e);case 262:case 263:{Tn.assert(!r&&!i&&!t);const o=e.name;return o&&!tu(o)?Hn(o,!1,n,r,i):Wn()}case 277:return Tn.assert(!r&&!i&&!t),Wn();case 231:return Tn.assert(!r&&!i&&!t),Vn("class",zn,!1,!1,!1,"","");case 174:case 177:case 178:return function(e,t,n,r){return YC(e.name)?jn(e.name,t):qn(0,!1,t,n,r)}(e,t,r,i);case 167:return qn(0,!0,t,r,i);default:return qn(0,!1,t,r,i)}}function Gn(e,t){const n=Re(2,e,t),r=Z,i=X,o=ee;Qn(t),n(e,t),Yn(t,r,i,o)}function Qn(e){const t=rp(e),n=xE(e);!function(e,t,n,r){re(),te=!1;const i=n<0||!!(1024&t)||12===e.kind,o=r<0||!!(2048&t)||12===e.kind;(n>0||r>0)&&n!==r&&(i||nr(n,353!==e.kind),(!i||n>=0&&1024&t)&&(Z=n),(!o||r>=0&&2048&t)&&(X=r,261===e.kind&&(ee=r)));h(TE(e),Xn),ie()}(e,t,n.pos,n.end),4096&t&&(ne=!0)}function Yn(e,t,n,r){const i=rp(e),o=xE(e);4096&i&&(ne=!1),Zn(e,i,o.pos,o.end,t,n,r);const s=BE(e);s&&Zn(e,i,s.pos,s.end,t,n,r)}function Zn(e,t,n,r,i,o,s){re();const a=r<0||!!(2048&t)||12===e.kind;h(EE(e),$n),(n>0||r>0)&&n!==r&&(Z=i,X=o,ee=s,a||353===e.kind||function(e){fr(e,lr)}(r)),ie()}function Xn(e){(e.hasLeadingNewline||2===e.kind)&&v.writeLine(),er(e),e.hasTrailingNewLine||2===e.kind?v.writeLine():v.writeSpace(" ")}function $n(e){v.isAtStartOfLine()||v.writeSpace(" "),er(e),e.hasTrailingNewLine&&v.writeLine()}function er(e){const t=function(e){return 3===e.kind?`/*${e.text}*/`:`//${e.text}`}(e);jv(t,3===e.kind?Gs(t):void 0,v,0,t.length,V)}function tr(e,t,r){re();const{pos:i,end:o}=t,s=rp(e),a=ne||o<0||!!(2048&s);i<0||!!(1024&s)||function(e){const t=n&&Lv(n.text,be(),v,mr,e,V,ne);t&&(N?N.push(t):N=[t])}(t),ie(),4096&s&&!ne?(ne=!0,r(e),ne=!1):r(e),re(),a||(nr(t.end,!0),te&&!v.isAtStartOfLine()&&v.writeLine()),ie()}function nr(e,t){te=!1,t?0===e&&(null==n?void 0:n.isDeclarationFile)?pr(e,ir):pr(e,ar):0===e&&pr(e,rr)}function rr(e,t,n,r,i){hr(e,t)&&ar(e,t,n,r,i)}function ir(e,t,n,r,i){hr(e,t)||ar(e,t,n,r,i)}function sr(t,n){return!e.onlyPrintJsDocStyle||(EM(t,n)||H_(t,n))}function ar(e,t,r,i,o){n&&sr(n.text,e)&&(te||(Fv(be(),v,o,e),te=!0),xr(e),jv(n.text,be(),v,e,t,V),xr(t),i?v.writeLine():3===r&&v.writeSpace(" "))}function cr(e){ne||-1===e||nr(e,!0)}function lr(e,t,r,i){n&&sr(n.text,e)&&(v.isAtStartOfLine()||v.writeSpace(" "),xr(e),jv(n.text,be(),v,e,t,V),xr(t),i&&v.writeLine())}function ur(e,t,n){ne||(re(),fr(e,t?lr:n?dr:_r),ie())}function dr(e,t,r){n&&(xr(e),jv(n.text,be(),v,e,t,V),xr(t),2===r&&v.writeLine())}function _r(e,t,r,i){n&&(xr(e),jv(n.text,be(),v,e,t,V),xr(t),i?v.writeLine():v.writeSpace(" "))}function pr(e,t){!n||-1!==Z&&e===Z||(function(e){return void 0!==N&&Ae(N).nodePos===e}(e)?function(e){if(!n)return;const t=Ae(N).detachedCommentEndPos;N.length-1?N.pop():N=void 0;va(n.text,t,e,t)}(t):va(n.text,e,t,e))}function fr(e,t){n&&(-1===X||e!==X&&e!==ee)&&ba(n.text,e,t)}function mr(e,t,r,i,o,s){n&&sr(n.text,i)&&(xr(i),jv(e,t,r,i,o,s),xr(o))}function hr(e,t){return!!n&&W_(n.text,e,t)}function gr(e,t){const n=Re(3,e,t);yr(t),n(e,t),vr(t)}function yr(e){const t=rp(e),n=mE(e),r=n.source||w;353!==e.kind&&!(32&t)&&n.pos>=0&&Sr(n.source||w,br(r,n.pos)),128&t&&(G=!0)}function vr(e){const t=rp(e),n=mE(e);128&t&&(G=!1),353!==e.kind&&!(64&t)&&n.end>=0&&Sr(n.source||w,n.end)}function br(e,t){return e.skipTrivia?e.skipTrivia(t):da(e.text,t)}function xr(e){if(G||dw(e)||wr(w))return;const{line:t,character:n}=ta(w,e);S.addMapping(v.getLine(),v.getColumn(),Q,t,n,void 0)}function Sr(e,t){if(e!==w){const n=w,r=Q;Tr(e),xr(t),function(e,t){w=e,Q=t}(n,r)}else xr(t)}function Tr(t){G||(w=t,t!==k?wr(t)||(Q=S.addSource(t.fileName),e.inlineSources&&S.setSourceContent(Q,t.text),k=t,Y=Q):Q=Y)}function wr(e){return Lo(e.fileName,".json")}}function bV(e,t,n,r){t(e)}function xV(e,t,n,r){t(e,n.select(r))}function SV(e,t,n,r){t(e,n)}function TV(e,t,n){if(!e.getDirectories||!e.readDirectory)return;const r=new Map,i=rn(n);return{useCaseSensitiveFileNames:n,fileExists:function(t){const n=a(o(t));return n&&u(n.sortedAndCanonicalizedFiles,i(c(t)))||e.fileExists(t)},readFile:(t,n)=>e.readFile(t,n),directoryExists:e.directoryExists&&function(t){const n=o(t);return r.has(os(n))||e.directoryExists(t)},getDirectories:function(t){const n=o(t),r=l(t,n);if(r)return r.directories.slice();return e.getDirectories(t)},readDirectory:function(r,i,s,a,u){const p=o(r),f=l(r,p);let m;if(void 0!==f)return PT(r,i,s,a,n,t,u,(function(e){const t=o(e);if(t===p)return f||h(e,t);const n=l(e,t);return void 0!==n?n||h(e,t):yw}),d);return e.readDirectory(r,i,s,a,u);function h(t,n){if(m&&n===p)return m;const r={files:R(e.readDirectory(t,void 0,void 0,["*.*"]),c)||_,directories:e.getDirectories(t)||_};return n===p&&(m=r),r}},createDirectory:e.createDirectory&&function(t){const n=a(o(t));if(n){const e=c(t),r=i(e);se(n.sortedAndCanonicalizedDirectories,r,Lt)&&n.directories.push(e)}e.createDirectory(t)},writeFile:e.writeFile&&function(t,n,r){const i=a(o(t));i&&p(i,c(t),!0);return e.writeFile(t,n,r)},addOrDeleteFileOrDirectory:function(t,n){if(void 0!==s(n))return void f();const r=a(n);if(!r)return;if(!e.directoryExists)return void f();const o=c(t),l={fileExists:e.fileExists(t),directoryExists:e.directoryExists(t)};l.directoryExists||u(r.sortedAndCanonicalizedDirectories,i(o))?f():p(r,o,l.fileExists);return l},addOrDeleteFile:function(e,t,n){if(1===n)return;const r=a(t);r&&p(r,c(e),0===n)},clearCache:f,realpath:e.realpath&&d};function o(e){return rs(e,t,i)}function s(e){return r.get(os(e))}function a(e){const t=s(Vo(e));return t?(t.sortedAndCanonicalizedFiles||(t.sortedAndCanonicalizedFiles=t.files.map(i).sort(),t.sortedAndCanonicalizedDirectories=t.directories.map(i).sort()),t):t}function c(e){return Ko(ts(e))}function l(t,n){const i=s(n=os(n));if(i)return i;try{return function(t,n){var i;if(!e.realpath||os(o(e.realpath(t)))===n){const i={files:R(e.readDirectory(t,void 0,void 0,["*.*"]),c)||[],directories:e.getDirectories(t)||[]};return r.set(os(n),i),i}if(null==(i=e.directoryExists)?void 0:i.call(e,t))return r.set(n,!1),!1}(t,n)}catch(a){return void Tn.assert(!r.has(os(n)))}}function u(e,t){return Oe(e,t,gt,Lt)>=0}function d(t){return e.realpath?e.realpath(t):t}function p(e,t,n){const r=e.sortedAndCanonicalizedFiles,o=i(t);if(n)se(r,o,Lt)&&e.files.push(t);else{const t=Oe(r,o,gt,Lt);if(t>=0){r.splice(t,1);const n=e.files.findIndex((e=>i(e)===o));e.files.splice(n,1)}}}function f(){r.clear()}}var wV=(e=>(e[e.Update=0]="Update",e[e.RootNamesAndUpdate=1]="RootNamesAndUpdate",e[e.Full=2]="Full",e))(wV||{});function kV(e,t,n,r,i){var o;const s=He((null==(o=null==t?void 0:t.configFile)?void 0:o.extendedSourceFiles)||_,i);n.forEach(((t,n)=>{s.has(n)||(t.projects.delete(e),t.close())})),s.forEach(((t,i)=>{const o=n.get(i);o?o.projects.add(e):n.set(i,{projects:new Set([e]),watcher:r(t,i),close:()=>{const e=n.get(i);e&&0===e.projects.size&&(e.watcher.close(),n.delete(i))}})}))}function EV(e,t){t.forEach((t=>{t.projects.delete(e)&&t.close()}))}function CV(e,t,n){e.delete(t)&&e.forEach((({extendedResult:r},i)=>{var o;(null==(o=r.extendedSourceFiles)?void 0:o.some((e=>n(e)===t)))&&CV(e,i,n)}))}function NV(e,t,n){Ix(t,e.getMissingFilePaths(),{createNewValue:n,onDeleteValue:vx})}function AV(e,t,n){function r(e,t){return{watcher:n(e,t),flags:t}}t?Ix(e,new Map(Object.entries(t)),{createNewValue:r,onDeleteValue:FV,onExistingValue:function(t,n,i){if(t.flags===n)return;t.watcher.close(),e.set(i,r(i,n))}}):Nx(e,FV)}function IV({watchedDirPath:e,fileOrDirectory:t,fileOrDirectoryPath:n,configFileName:r,options:i,program:o,extraFileExtensions:s,currentDirectory:a,useCaseSensitiveFileNames:c,writeLog:l,toPath:u,getScriptKind:d}){const _=DJ(n);if(!_)return l(`Project: ${r} Detected ignored path: ${t}`),!0;if((n=_)===e)return!1;if(Ro(n)&&!tw(t,i,s)&&!function(){if(!d)return!1;switch(d(t)){case 3:case 4:case 7:case 5:return!0;case 1:case 2:return HS(i);case 6:return qS(i);case 0:return!1}}())return l(`Project: ${r} Detected file add/remove of non supported extension: ${t}`),!0;if(OR(t,i.configFile.configFileSpecs,es(Vo(r),a),c,a))return l(`Project: ${r} Detected excluded file: ${t}`),!0;if(!o)return!1;if(i.outFile||i.outDir)return!1;if(lO(n)){if(i.declarationDir)return!1}else if(!jo(n,qT))return!1;const p=ow(n),f=at(o)?void 0:function(e){return!!e.getState}(o)?o.getProgramOrUndefined():o,m=f||at(o)?void 0:o;return!(!h(p+".ts")&&!h(p+".tsx"))&&(l(`Project: ${r} Detected output file: ${t}`),!0);function h(e){return f?!!f.getSourceFileByPath(e):m?m.getState().fileInfos.has(e):!!w(o,(t=>u(t)===e))}}function DV(e,t){return!!e&&e.isEmittedFile(t)}var PV=(e=>(e[e.None=0]="None",e[e.TriggerOnly=1]="TriggerOnly",e[e.Verbose=2]="Verbose",e))(PV||{});function MV(e,t,n,r){ho(2===t?n:pt);const i={watchFile:(t,n,r,i)=>e.watchFile(t,n,r,i),watchDirectory:(t,n,r,i)=>e.watchDirectory(t,n,!!(1&r),i)},o=0!==t?{watchFile:l("watchFile"),watchDirectory:l("watchDirectory")}:void 0,s=2===t?{watchFile:function(e,t,i,s,a,c){n(`FileWatcher:: Added:: ${u(e,i,s,a,c,r)}`);const l=o.watchFile(e,t,i,s,a,c);return{close:()=>{n(`FileWatcher:: Close:: ${u(e,i,s,a,c,r)}`),l.close()}}},watchDirectory:function(e,t,i,s,a,c){const l=`DirectoryWatcher:: Added:: ${u(e,i,s,a,c,r)}`;n(l);const d=er(),_=o.watchDirectory(e,t,i,s,a,c),p=er()-d;return n(`Elapsed:: ${p}ms ${l}`),{close:()=>{const t=`DirectoryWatcher:: Close:: ${u(e,i,s,a,c,r)}`;n(t);const o=er();_.close();const l=er()-o;n(`Elapsed:: ${l}ms ${t}`)}}}}:o||i,a=2===t?function(e,t,i,o,s){return n(`ExcludeWatcher:: Added:: ${u(e,t,i,o,s,r)}`),{close:()=>n(`ExcludeWatcher:: Close:: ${u(e,t,i,o,s,r)}`)}}:gW;return{watchFile:c("watchFile"),watchDirectory:c("watchDirectory")};function c(t){return(n,r,i,o,c,l)=>{var u;return RR(n,"watchFile"===t?null==o?void 0:o.excludeFiles:null==o?void 0:o.excludeDirectories,"boolean"==typeof e.useCaseSensitiveFileNames?e.useCaseSensitiveFileNames:e.useCaseSensitiveFileNames(),(null==(u=e.getCurrentDirectory)?void 0:u.call(e))||"")?a(n,i,o,c,l):s[t].call(void 0,n,r,i,o,c,l)}}function l(e){return(t,o,s,a,c,l)=>i[e].call(void 0,t,((...i)=>{const d=`${"watchFile"===e?"FileWatcher":"DirectoryWatcher"}:: Triggered with ${i[0]} ${void 0!==i[1]?i[1]:""}:: ${u(t,s,a,c,l,r)}`;n(d);const _=er();o.call(void 0,...i);const p=er()-_;n(`Elapsed:: ${p}ms ${d}`)}),s,a,c,l)}function u(e,t,n,r,i,o){return`WatchInfo: ${e} ${t} ${JSON.stringify(n)} ${o?o(r,i):void 0===i?r:`${r} ${i}`}`}}function OV(e){const t=null==e?void 0:e.fallbackPolling;return{watchFile:void 0!==t?t:1}}function FV(e){e.watcher.close()}function RV(e,t,n="tsconfig.json"){return xs(e,(e=>{const r=Zo(e,n);return t(r)?r:void 0}))}function LV(e,t){const n=Vo(t);return ts(Do(e)?e:Zo(n,e))}function jV(e,t,n){let r;return h(e,(e=>{const i=$o(e,t);if(i.pop(),!r)return void(r=i);const o=Math.min(r.length,i.length);for(let t=0;t<o;t++)if(n(r[t])!==n(i[t])){if(0===t)return!0;r.length=t;break}i.length<r.length&&(r.length=i.length)}))?"":r?Go(r):t}function zV(e,t){return qV(e,t)}function UV(e,t){return(n,r,i)=>{let o;try{mr("beforeIORead"),o=e(n),mr("afterIORead"),hr("I/O Read","beforeIORead","afterIORead")}catch(Mge){i&&i(Mge.message),o=""}return void 0!==o?XM(n,o,r,t):void 0}}function BV(e,t,n){return(r,i,o,s)=>{try{mr("beforeIOWrite"),mv(r,i,o,e,t,n),mr("afterIOWrite"),hr("I/O Write","beforeIOWrite","afterIOWrite")}catch(Mge){s&&s(Mge.message)}}}function qV(e,t,n=To){const r=new Map,i=rn(n.useCaseSensitiveFileNames);function o(){return Vo(ts(n.getExecutingFilePath()))}const s=Qb(e),a=n.realpath&&(e=>n.realpath(e)),c={getSourceFile:UV((e=>c.readFile(e)),t),getDefaultLibLocation:o,getDefaultLibFileName:e=>Zo(o(),Ba(e)),writeFile:BV(((e,t,r)=>n.writeFile(e,t,r)),(e=>(c.createDirectory||n.createDirectory)(e)),(e=>{return t=e,!!r.has(t)||!!(c.directoryExists||n.directoryExists)(t)&&(r.set(t,!0),!0);var t})),getCurrentDirectory:St((()=>n.getCurrentDirectory())),useCaseSensitiveFileNames:()=>n.useCaseSensitiveFileNames,getCanonicalFileName:i,getNewLine:()=>s,fileExists:e=>n.fileExists(e),readFile:e=>n.readFile(e),trace:e=>n.write(e+s),directoryExists:e=>n.directoryExists(e),getEnvironmentVariable:e=>n.getEnvironmentVariable?n.getEnvironmentVariable(e):"",getDirectories:e=>n.getDirectories(e),realpath:a,readDirectory:(e,t,r,i,o)=>n.readDirectory(e,t,r,i,o),createDirectory:e=>n.createDirectory(e),createHash:tt(n,n.createHash)};return c}function VV(e,t,n){const r=e.readFile,i=e.fileExists,o=e.directoryExists,s=e.createDirectory,a=e.writeFile,c=new Map,l=new Map,u=new Map,d=new Map,_=(t,n)=>{const i=r.call(e,n);return c.set(t,void 0!==i&&i),i};e.readFile=n=>{const i=t(n),o=c.get(i);return void 0!==o?!1!==o?o:void 0:Lo(n,".json")||Vq(n)?_(i,n):r.call(e,n)};const p=n?(e,r,i,o)=>{const s=t(e),a="object"==typeof r?r.impliedNodeFormat:void 0,c=d.get(a),l=null==c?void 0:c.get(s);if(l)return l;const u=n(e,r,i,o);return u&&(lO(e)||Lo(e,".json"))&&d.set(a,(c||new Map).set(s,u)),u}:void 0;return e.fileExists=n=>{const r=t(n),o=l.get(r);if(void 0!==o)return o;const s=i.call(e,n);return l.set(r,!!s),s},a&&(e.writeFile=(n,r,...i)=>{const o=t(n);l.delete(o);const s=c.get(o);void 0!==s&&s!==r?(c.delete(o),d.forEach((e=>e.delete(o)))):p&&d.forEach((e=>{const t=e.get(o);t&&t.text!==r&&e.delete(o)})),a.call(e,n,r,...i)}),o&&(e.directoryExists=n=>{const r=t(n),i=u.get(r);if(void 0!==i)return i;const s=o.call(e,n);return u.set(r,!!s),s},s&&(e.createDirectory=n=>{const r=t(n);u.delete(r),s.call(e,n)})),{originalReadFile:r,originalFileExists:i,originalDirectoryExists:o,originalCreateDirectory:s,originalWriteFile:a,getSourceFileWithCache:p,readFileWithCache:e=>{const n=t(e),r=c.get(n);return void 0!==r?!1!==r?r:void 0:_(n,e)}}}function KV(e,t,n){let r;return r=me(r,e.getConfigFileParsingDiagnostics()),r=me(r,e.getOptionsDiagnostics(n)),r=me(r,e.getSyntacticDiagnostics(t,n)),r=me(r,e.getGlobalDiagnostics(n)),r=me(r,e.getSemanticDiagnostics(t,n)),VS(e.getCompilerOptions())&&(r=me(r,e.getDeclarationDiagnostics(t,n))),Ua(r||_)}function JV(e,t){let n="";for(const r of e)n+=WV(r,t);return n}function WV(e,t){const n=`${xi(e)} TS${e.code}: ${oK(e.messageText,t.getNewLine())}${t.getNewLine()}`;if(e.file){const{line:r,character:i}=ta(e.file,e.start);return`${ys(e.file.fileName,t.getCurrentDirectory(),(e=>t.getCanonicalFileName(e)))}(${r+1},${i+1}): `+n}return n}var HV=(e=>(e.Grey="\x1b[90m",e.Red="\x1b[91m",e.Yellow="\x1b[93m",e.Blue="\x1b[94m",e.Cyan="\x1b[96m",e))(HV||{}),GV="\x1b[7m",QV=" ",YV="\x1b[0m",ZV="...",XV=" ",$V=" ";function eK(e){switch(e){case 1:return"\x1b[91m";case 0:return"\x1b[93m";case 2:return Tn.fail("Should never get an Info diagnostic on the command line.");case 3:return"\x1b[94m"}}function tK(e,t){return t+e+YV}function nK(e,t,n,r,i,o){const{line:s,character:a}=ta(e,t),{line:c,character:l}=ta(e,t+n),u=ta(e,e.text.length).line,d=c-s>=4;let _=(c+1+"").length;d&&(_=Math.max(ZV.length,_));let p="";for(let f=s;f<=c;f++){p+=o.getNewLine(),d&&s+1<f&&f<c-1&&(p+=r+tK(ZV.padStart(_),GV)+QV+o.getNewLine(),f=c-1);const t=Qs(e,f,0),n=f<u?Qs(e,f+1,0):e.text.length;let m=e.text.slice(t,n);if(m=m.trimEnd(),m=m.replace(/\t/g," "),p+=r+tK((f+1+"").padStart(_),GV)+QV,p+=m+o.getNewLine(),p+=r+tK("".padStart(_),GV)+QV,p+=i,f===s){const e=f===c?l:void 0;p+=m.slice(0,a).replace(/\S/g," "),p+=m.slice(a,e).replace(/./g,"~")}else p+=f===c?m.slice(0,l).replace(/./g,"~"):m.replace(/./g,"~");p+=YV}return p}function rK(e,t,n,r=tK){const{line:i,character:o}=ta(e,t);let s="";return s+=r(n?ys(e.fileName,n.getCurrentDirectory(),(e=>n.getCanonicalFileName(e))):e.fileName,"\x1b[96m"),s+=":",s+=r(`${i+1}`,"\x1b[93m"),s+=":",s+=r(`${o+1}`,"\x1b[93m"),s}function iK(e,t){let n="";for(const r of e){if(r.file){const{file:e,start:i}=r;n+=rK(e,i,t),n+=" - "}if(n+=tK(xi(r),eK(r.category)),n+=tK(` TS${r.code}: `,"\x1b[90m"),n+=oK(r.messageText,t.getNewLine()),r.file&&r.code!==ws.File_appears_to_be_binary.code&&(n+=t.getNewLine(),n+=nK(r.file,r.start,r.length,"",eK(r.category),t)),r.relatedInformation){n+=t.getNewLine();for(const{file:e,start:i,length:o,messageText:s}of r.relatedInformation)e&&(n+=t.getNewLine(),n+=XV+rK(e,i,t),n+=nK(e,i,o,$V,"\x1b[96m",t)),n+=t.getNewLine(),n+=$V+oK(s,t.getNewLine())}n+=t.getNewLine()}return n}function oK(e,t,n=0){if(lt(e))return e;if(void 0===e)return"";let r="";if(n){r+=t;for(let e=0;e<n;e++)r+=" "}if(r+=e.messageText,n++,e.next)for(const i of e.next)r+=oK(i,t,n);return r}function sK(e,t){return(lt(e)?t:e.resolutionMode)||t}function aK(e,t,n){return uK(e,VK(e,t),n)}function cK(e){var t;return TI(e)?e.isTypeOnly:!!(null==(t=e.importClause)?void 0:t.isTypeOnly)}function lK(e,t,n){return uK(e,t,n)}function uK(e,t,n){var r;if(dI(t.parent)||TI(t.parent)||zD(t.parent)){if(cK(t.parent)){const e=dK(t.parent.attributes);if(e)return e}}if(t.parent.parent&&GN(t.parent.parent)){const e=dK(t.parent.parent.attributes);if(e)return e}if(n&&200===OS(n))return t.parent.parent&&uI(t.parent.parent)||Jm(t.parent,!1)?1:99;if(void 0===e.impliedNodeFormat)return;if(99!==e.impliedNodeFormat)return mf(dg(t.parent))?99:1;const i=null==(r=dg(t.parent))?void 0:r.parent;return i&&uI(i)?1:99}function dK(e,t){if(!e)return;if(1!==m(e.elements))return void(null==t||t(e,118===e.token?ws.Type_import_attributes_should_have_exactly_one_key_resolution_mode_with_value_import_or_require:ws.Type_import_assertions_should_have_exactly_one_key_resolution_mode_with_value_import_or_require));const n=e.elements[0];if(Hd(n.name))if("resolution-mode"===n.name.text){if(Hd(n.value)){if("import"===n.value.text||"require"===n.value.text)return"import"===n.value.text?99:1;null==t||t(n.value,ws.resolution_mode_should_be_either_require_or_import)}}else null==t||t(n.name,118===e.token?ws.resolution_mode_is_the_only_valid_key_for_type_import_attributes:ws.resolution_mode_is_the_only_valid_key_for_type_import_assertions)}var _K={resolvedModule:void 0,resolvedTypeReferenceDirective:void 0};function pK(e){return e.text}var fK={getName:pK,getMode:(e,t,n)=>lK(t,e,n)};function mK(e,t,n,r,i){return{nameAndMode:fK,resolve:(o,s)=>RL(o,e,n,r,i,t,s)}}function hK(e){return lt(e)?e:e.fileName}var gK={getName:hK,getMode:(e,t)=>sK(e,null==t?void 0:t.impliedNodeFormat)};function yK(e,t,n,r,i){return{nameAndMode:gK,resolve:(o,s)=>fL(o,e,n,r,t,i,s)}}function vK(e,t,n,r,i,o,s,a){if(0===e.length)return _;const c=[],l=new Map,u=a(t,n,r,o,s);for(const d of e){const e=u.nameAndMode.getName(d),t=u.nameAndMode.getMode(d,i,(null==n?void 0:n.commandLine.options)||r),o=kL(e,t);let s=l.get(o);s||l.set(o,s=u.resolve(e,t)),c.push(s)}return c}function bK(e,t){return xK(void 0,e,((e,n)=>e&&t(e,n)))}function xK(e,t,n,r){let i;return function e(t,o,s){if(r){const e=r(t,s);if(e)return e}return h(o,((t,r)=>{if(t&&(null==i?void 0:i.has(t.sourceFile.path)))return;const o=n(t,s,r);return o||!t?o:((i||(i=new Set)).add(t.sourceFile.path),e(t.commandLine.projectReferences,t.references,t))}))}(e,t,void 0)}var SK="__inferred type names__.ts";function TK(e,t,n){return Zo(e.configFilePath?Vo(e.configFilePath):t,`__lib_node_modules_lookup_${n}__.ts`)}function wK(e){const t=e.split(".");let n=t[1],r=2;for(;t[r]&&"d"!==t[r];)n+=(2===r?"/":"-")+t[r],r++;return"@typescript/lib-"+n}function kK(e){return bt(e.fileName)}function EK(e){const t=kK(e);return kO.get(t)}function CK(e){switch(null==e?void 0:e.kind){case 3:case 4:case 5:case 7:return!0;default:return!1}}function NK(e){return void 0!==e.pos}function AK(e,t){var n,r,i,o;const s=Tn.checkDefined(e.getSourceFileByPath(t.file)),{kind:a,index:c}=t;let l,u,d;switch(a){case 3:const t=VK(s,c);if(d=null==(r=null==(n=e.getResolvedModuleFromModuleSpecifier(t,s))?void 0:n.resolvedModule)?void 0:r.packageId,-1===t.pos)return{file:s,packageId:d,text:t.text};l=da(s.text,t.pos),u=t.end;break;case 4:({pos:l,end:u}=s.referencedFiles[c]);break;case 5:({pos:l,end:u}=s.typeReferenceDirectives[c]),d=null==(o=null==(i=e.getResolvedTypeReferenceDirectiveFromTypeReferenceDirective(s.typeReferenceDirectives[c],s))?void 0:i.resolvedTypeReferenceDirective)?void 0:o.packageId;break;case 7:({pos:l,end:u}=s.libReferenceDirectives[c]);break;default:return Tn.assertNever(a)}return{file:s,pos:l,end:u,packageId:d}}function IK(e,t,n,r,i,o,s,a,c,l){if(!e||(null==a?void 0:a()))return!1;if(!le(e.getRootFileNames(),t))return!1;let u;if(!le(e.getProjectReferences(),l,(function(t,n,r){return v_(t,n)&&p(e.getResolvedProjectReferences()[r],t)})))return!1;if(e.getSourceFiles().some((function(e){return!function(e){return e.version===r(e.resolvedPath,e.fileName)}(e)||o(e.path)})))return!1;const d=e.getMissingFilePaths();if(d&&f_(d,i))return!1;const _=e.getCompilerOptions();return!!Cx(_,n)&&((!e.resolvedLibReferences||!f_(e.resolvedLibReferences,((e,t)=>s(t))))&&(!_.configFile||!n.configFile||_.configFile.text===n.configFile.text));function p(e,t){if(e){if(A(u,e))return!0;const n=UK(t),r=c(n);return!!r&&(e.commandLine.options.configFile===r.options.configFile&&(!!le(e.commandLine.fileNames,r.fileNames)&&((u||(u=[])).push(e),!h(e.references,((t,n)=>!p(t,e.commandLine.projectReferences[n]))))))}const n=UK(t);return!c(n)}}function DK(e){return e.options.configFile?[...e.options.configFile.parseDiagnostics,...e.errors]:e.errors}function PK(e,t,n,r){const i=MK(e,t,n,r);return"object"==typeof i?i.impliedNodeFormat:i}function MK(e,t,n,r){switch(FS(r)){case 3:case 99:return jo(e,[".d.mts",".mts",".mjs"])?99:jo(e,[".d.cts",".cts",".cjs"])?1:jo(e,[".d.ts",".ts",".tsx",".js",".jsx"])?function(){const i=cj(t,n,r),o=[];i.failedLookupLocations=o,i.affectingLocations=o;const s=lj(e,i);return{impliedNodeFormat:"module"===(null==s?void 0:s.contents.packageJsonContent.type)?99:1,packageJsonLocations:o,packageJsonScope:s}}():void 0;default:return}}var OK=new Set([ws.Cannot_redeclare_block_scoped_variable_0.code,ws.A_module_cannot_have_multiple_default_exports.code,ws.Another_export_default_is_here.code,ws.The_first_export_default_is_here.code,ws.Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module.code,ws.Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode.code,ws.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here.code,ws.constructor_is_a_reserved_word.code,ws.delete_cannot_be_called_on_an_identifier_in_strict_mode.code,ws.Code_contained_in_a_class_is_evaluated_in_JavaScript_s_strict_mode_which_does_not_allow_this_use_of_0_For_more_information_see_https_Colon_Slash_Slashdeveloper_mozilla_org_Slashen_US_Slashdocs_SlashWeb_SlashJavaScript_SlashReference_SlashStrict_mode.code,ws.Invalid_use_of_0_Modules_are_automatically_in_strict_mode.code,ws.Invalid_use_of_0_in_strict_mode.code,ws.A_label_is_not_allowed_here.code,ws.with_statements_are_not_allowed_in_strict_mode.code,ws.A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement.code,ws.A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement.code,ws.A_class_declaration_without_the_default_modifier_must_have_a_name.code,ws.A_class_member_cannot_have_the_0_keyword.code,ws.A_comma_expression_is_not_allowed_in_a_computed_property_name.code,ws.A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement.code,ws.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement.code,ws.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement.code,ws.A_default_clause_cannot_appear_more_than_once_in_a_switch_statement.code,ws.A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration.code,ws.A_definite_assignment_assertion_is_not_permitted_in_this_context.code,ws.A_destructuring_declaration_must_have_an_initializer.code,ws.A_get_accessor_cannot_have_parameters.code,ws.A_rest_element_cannot_contain_a_binding_pattern.code,ws.A_rest_element_cannot_have_a_property_name.code,ws.A_rest_element_cannot_have_an_initializer.code,ws.A_rest_element_must_be_last_in_a_destructuring_pattern.code,ws.A_rest_parameter_cannot_have_an_initializer.code,ws.A_rest_parameter_must_be_last_in_a_parameter_list.code,ws.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma.code,ws.A_return_statement_cannot_be_used_inside_a_class_static_block.code,ws.A_set_accessor_cannot_have_rest_parameter.code,ws.A_set_accessor_must_have_exactly_one_parameter.code,ws.An_export_declaration_can_only_be_used_at_the_top_level_of_a_module.code,ws.An_export_declaration_cannot_have_modifiers.code,ws.An_import_declaration_can_only_be_used_at_the_top_level_of_a_module.code,ws.An_import_declaration_cannot_have_modifiers.code,ws.An_object_member_cannot_be_declared_optional.code,ws.Argument_of_dynamic_import_cannot_be_spread_element.code,ws.Cannot_assign_to_private_method_0_Private_methods_are_not_writable.code,ws.Cannot_redeclare_identifier_0_in_catch_clause.code,ws.Catch_clause_variable_cannot_have_an_initializer.code,ws.Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_decorator.code,ws.Classes_can_only_extend_a_single_class.code,ws.Classes_may_not_have_a_field_named_constructor.code,ws.Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_part_of_a_destructuring_pattern.code,ws.Duplicate_label_0.code,ws.Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_set_of_attributes_as_arguments.code,ws.for_await_loops_cannot_be_used_inside_a_class_static_block.code,ws.JSX_attributes_must_only_be_assigned_a_non_empty_expression.code,ws.JSX_elements_cannot_have_multiple_attributes_with_the_same_name.code,ws.JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array.code,ws.JSX_property_access_expressions_cannot_include_JSX_namespace_names.code,ws.Jump_target_cannot_cross_function_boundary.code,ws.Line_terminator_not_permitted_before_arrow.code,ws.Modifiers_cannot_appear_here.code,ws.Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement.code,ws.Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement.code,ws.Private_identifiers_are_not_allowed_outside_class_bodies.code,ws.Private_identifiers_are_only_allowed_in_class_bodies_and_may_only_be_used_as_part_of_a_class_member_declaration_property_access_or_on_the_left_hand_side_of_an_in_expression.code,ws.Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier.code,ws.Tagged_template_expressions_are_not_permitted_in_an_optional_chain.code,ws.The_left_hand_side_of_a_for_of_statement_may_not_be_async.code,ws.The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer.code,ws.The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer.code,ws.Trailing_comma_not_allowed.code,ws.Variable_declaration_list_cannot_be_empty.code,ws._0_and_1_operations_cannot_be_mixed_without_parentheses.code,ws._0_expected.code,ws._0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2.code,ws._0_list_cannot_be_empty.code,ws._0_modifier_already_seen.code,ws._0_modifier_cannot_appear_on_a_constructor_declaration.code,ws._0_modifier_cannot_appear_on_a_module_or_namespace_element.code,ws._0_modifier_cannot_appear_on_a_parameter.code,ws._0_modifier_cannot_appear_on_class_elements_of_this_kind.code,ws._0_modifier_cannot_be_used_here.code,ws._0_modifier_must_precede_1_modifier.code,ws._0_declarations_can_only_be_declared_inside_a_block.code,ws._0_declarations_must_be_initialized.code,ws.extends_clause_already_seen.code,ws.let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations.code,ws.Class_constructor_may_not_be_a_generator.code,ws.Class_constructor_may_not_be_an_accessor.code,ws.await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules.code,ws.await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules.code,ws.Private_field_0_must_be_declared_in_an_enclosing_class.code,ws.This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value.code]);function FK(e,t,n,r,i){var o,s,a,c,u,d,p,f,m,g,y,b,x,S,T,k;const C=at(e)?function(e,t,n,r,i,o){return{rootNames:e,options:t,host:n,oldProgram:r,configFileParsingDiagnostics:i,typeScriptVersion:o}}(e,t,n,r,i):e,{rootNames:N,options:I,configFileParsingDiagnostics:D,projectReferences:P,typeScriptVersion:O}=C;let{oldProgram:F}=C;for(const l of BO)if(je(I,l.name)&&"string"==typeof I[l.name])throw new Error(`${l.name} is a string value; tsconfig JSON must be parsed with parseJsonSourceFileConfigFileContent or getParsedCommandLineOfConfigFile before passing to createProgram`);const R=St((()=>Qn("ignoreDeprecations",ws.Invalid_value_for_ignoreDeprecations)));let L,j,B,q,V,K,W;const H=new Map;let G,Q,Y,Z=nt();const X={},ee={};let ne,re,ie,oe,se,ae,ce,ue,de,pe;const fe="number"==typeof I.maxNodeModuleJsDepth?I.maxNodeModuleJsDepth:0;let me=0;const he=new Map,ge=new Map;null==(o=ar)||o.push(ar.Phase.Program,"createProgram",{configFilePath:I.configFilePath,rootDir:I.rootDir},!0),mr("beforeProgram");const ye=C.host||zV(I),ve=zK(ye);let be=I.noLib;const Se=St((()=>ye.getDefaultLibFileName(I))),Te=ye.getDefaultLibLocation?ye.getDefaultLibLocation():Vo(Se()),we=ky();let ke=[];const Ee=ye.getCurrentDirectory(),Ce=GT(I),Ne=QT(I,Ce),Ae=new Map;let Ie,De,Pe,Me;const Oe=ye.hasInvalidatedResolutions||ft;let Fe;if(ye.resolveModuleNameLiterals?(Me=ye.resolveModuleNameLiterals.bind(ye),Pe=null==(s=ye.getModuleResolutionCache)?void 0:s.call(ye)):ye.resolveModuleNames?(Me=(e,t,n,r,i,o)=>ye.resolveModuleNames(e.map(pK),t,null==o?void 0:o.map(pK),n,r,i).map((e=>e?void 0!==e.extension?{resolvedModule:e}:{resolvedModule:{...e,extension:fw(e.resolvedFileName)}}:_K)),Pe=null==(a=ye.getModuleResolutionCache)?void 0:a.call(ye)):(Pe=DL(Ee,Rn,I),Me=(e,t,n,r,i)=>vK(e,t,n,r,i,ye,Pe,mK)),ye.resolveTypeReferenceDirectiveReferences)Fe=ye.resolveTypeReferenceDirectiveReferences.bind(ye);else if(ye.resolveTypeReferenceDirectives)Fe=(e,t,n,r,i)=>ye.resolveTypeReferenceDirectives(e.map(hK),t,n,r,null==i?void 0:i.impliedNodeFormat).map((e=>({resolvedTypeReferenceDirective:e})));else{const e=PL(Ee,Rn,void 0,null==Pe?void 0:Pe.getPackageJsonInfoCache(),null==Pe?void 0:Pe.optionsToRedirectsKey);Fe=(t,n,r,i,o)=>vK(t,n,r,i,o,ye,e,yK)}const Re=ye.hasInvalidatedLibResolutions||ft;let Le;if(ye.resolveLibrary)Le=ye.resolveLibrary.bind(ye);else{const e=DL(Ee,Rn,I,null==Pe?void 0:Pe.getPackageJsonInfoCache());Le=(t,n,r)=>OL(t,n,r,ye,e)}const ze=new Map;let Ue=new Map,Be=nt(),qe=!1;const Ve=new Map;let Ke=new Map;const Je=ye.useCaseSensitiveFileNames()?new Map:void 0;let We,He,Ge,Qe;const Ye=!!(null==(c=ye.useSourceOfProjectReferenceRedirect)?void 0:c.call(ye))&&!I.disableSourceOfProjectReferenceRedirect,{onProgramCreateComplete:Ze,fileExists:Xe,directoryExists:$e}=function(e){let t;const n=e.compilerHost.fileExists,r=e.compilerHost.directoryExists,i=e.compilerHost.getDirectories,o=e.compilerHost.realpath;if(!e.useSourceOfProjectReferenceRedirect)return{onProgramCreateComplete:pt,fileExists:c};let s;e.compilerHost.fileExists=c,r&&(s=e.compilerHost.directoryExists=n=>r.call(e.compilerHost,n)?(d(n),!0):!!e.getResolvedProjectReferences()&&(t||(t=new Set,e.forEachResolvedProjectReference((n=>{const r=n.commandLine.options.outFile;if(r)t.add(Vo(e.toPath(r)));else{const r=n.commandLine.options.declarationDir||n.commandLine.options.outDir;r&&t.add(e.toPath(r))}}))),_(n,!1)));i&&(e.compilerHost.getDirectories=t=>!e.getResolvedProjectReferences()||r&&r.call(e.compilerHost,t)?i.call(e.compilerHost,t):[]);o&&(e.compilerHost.realpath=t=>{var n;return(null==(n=e.getSymlinkCache().getSymlinkedFiles())?void 0:n.get(e.toPath(t)))||o.call(e.compilerHost,t)});return{onProgramCreateComplete:a,fileExists:c,directoryExists:s};function a(){e.compilerHost.fileExists=n,e.compilerHost.directoryExists=r,e.compilerHost.getDirectories=i}function c(t){return!!n.call(e.compilerHost,t)||!!e.getResolvedProjectReferences()&&(!!lO(t)&&_(t,!0))}function l(t){const r=e.getSourceOfProjectReferenceRedirect(e.toPath(t));return void 0!==r?!lt(r)||n.call(e.compilerHost,r):void 0}function u(n){const r=e.toPath(n),i=`${r}${ko}`;return m_(t,(e=>r===e||cn(e,i)||cn(r,`${e}/`)))}function d(t){var n;if(!e.getResolvedProjectReferences()||Hw(t))return;if(!o||!t.includes(GL))return;const r=e.getSymlinkCache(),i=os(e.toPath(t));if(null==(n=r.getSymlinkedDirectories())?void 0:n.has(i))return;const s=ts(o.call(e.compilerHost,t));let a;s!==t&&(a=os(e.toPath(s)))!==i?r.setSymlinkedDirectory(t,{real:os(s),realPath:a}):r.setSymlinkedDirectory(i,!1)}function _(t,n){var r;const i=n?e=>l(e):e=>u(e),o=i(t);if(void 0!==o)return o;const s=e.getSymlinkCache(),a=s.getSymlinkedDirectories();if(!a)return!1;const c=e.toPath(t);return!!c.includes(GL)&&(!(!n||!(null==(r=s.getSymlinkedFiles())?void 0:r.has(c)))||(v(a.entries(),(([r,o])=>{if(!o||!cn(c,r))return;const a=i(c.replace(r,o.realPath));if(n&&a){const n=es(t,e.compilerHost.getCurrentDirectory());s.setSymlinkedFile(c,`${o.real}${n.replace(new RegExp(r,"i"),"")}`)}return a}))||!1))}}({compilerHost:ye,getSymlinkCache:ir,useSourceOfProjectReferenceRedirect:Ye,toPath:Nt,getResolvedProjectReferences:Lt,getSourceOfProjectReferenceRedirect:En,forEachResolvedProjectReference:kn}),et=ye.readFile.bind(ye);null==(u=ar)||u.push(ar.Phase.Program,"shouldProgramCreateNewSourceFiles",{hasOldProgram:!!F});const rt=function(e,t){return!!e&&__(e.getCompilerOptions(),t,RO)}(F,I);let it;if(null==(d=ar)||d.pop(),null==(p=ar)||p.push(ar.Phase.Program,"tryReuseStructureFromOldProgram",{}),it=function(){var e;if(!F)return 0;const t=F.getCompilerOptions();if(l_(t,I))return 0;if(!le(F.getRootFileNames(),N))return 0;if(xK(F.getProjectReferences(),F.getResolvedProjectReferences(),((e,t,n)=>{const r=jn((t?t.commandLine.projectReferences:P)[n]);return e?!r||r.sourceFile!==e.sourceFile||!le(e.commandLine.fileNames,r.commandLine.fileNames):void 0!==r}),((e,t)=>!le(e,t?Nn(t.sourceFile.path).commandLine.projectReferences:P,v_))))return 0;P&&(We=P.map(jn));const n=[],r=[];if(it=2,f_(F.getMissingFilePaths(),(e=>ye.fileExists(e))))return 0;const i=F.getSourceFiles();let o;s=o||(o={}),s[s.Exists=0]="Exists",s[s.Modified=1]="Modified";var s;const a=new Map;for(const c of i){const t=hn(c.fileName,Pe,ye,I);let i,o=ye.getSourceFileByPath?ye.getSourceFileByPath(c.fileName,c.resolvedPath,t,void 0,rt):ye.getSourceFile(c.fileName,t,void 0,rt);if(!o)return 0;if(o.packageJsonLocations=(null==(e=t.packageJsonLocations)?void 0:e.length)?t.packageJsonLocations:void 0,o.packageJsonScope=t.packageJsonScope,Tn.assert(!o.redirectInfo,"Host should not return a redirect source file from `getSourceFile`"),c.redirectInfo){if(o!==c.redirectInfo.unredirected)return 0;i=!1,o=c}else if(F.redirectTargetsMap.has(c.path)){if(o!==c)return 0;i=!1}else i=o!==c;o.path=c.path,o.originalFileName=c.originalFileName,o.resolvedPath=c.resolvedPath,o.fileName=c.fileName;const s=F.sourceFileToPackageName.get(c.path);if(void 0!==s){const e=a.get(s),t=i?1:0;if(void 0!==e&&1===t||1===e)return 0;a.set(s,t)}if(i)c.impliedNodeFormat!==o.impliedNodeFormat?it=1:le(c.libReferenceDirectives,o.libReferenceDirectives,on)?c.hasNoDefaultLib!==o.hasNoDefaultLib?it=1:le(c.referencedFiles,o.referencedFiles,on)?(un(o),le(c.imports,o.imports,sn)&&le(c.moduleAugmentations,o.moduleAugmentations,sn)?(12582912&c.flags)!=(12582912&o.flags)?it=1:le(c.typeReferenceDirectives,o.typeReferenceDirectives,on)||(it=1):it=1):it=1:it=1,r.push(o);else if(Oe(c.path))it=1,r.push(o);else for(const e of c.ambientModuleNames)H.set(e,c.fileName);n.push(o)}if(2!==it)return it;for(const c of r){const e=qK(c),t=Mt(e,c);(ce??(ce=new Map)).set(c.path,t);k_(e,t,(e=>F.getResolvedModule(c,e.text,or(c,e))),b_)&&(it=1);const n=c.typeReferenceDirectives,r=Ot(n,c);(de??(de=new Map)).set(c.path,r);k_(n,r,(e=>F.getResolvedTypeReferenceDirective(c,hK(e),sK(e,c.impliedNodeFormat))),w_)&&(it=1)}if(2!==it)return it;if(d_(t,I))return 1;if(F.resolvedLibReferences&&f_(F.resolvedLibReferences,((e,t)=>On(t).actual!==e.actual)))return 1;if(ye.hasChangedAutomaticTypeDirectiveNames){if(ye.hasChangedAutomaticTypeDirectiveNames())return 1}else if(re=yL(I,ye),!le(F.getAutomaticTypeDirectiveNames(),re))return 1;Ke=F.getMissingFilePaths(),Tn.assert(n.length===F.getSourceFiles().length);for(const c of n)Ve.set(c.path,c);return F.getFilesByNameMap().forEach(((e,t)=>{e?e.path!==t?Ve.set(t,Ve.get(e.path)):F.isSourceFileFromExternalLibrary(e)&&ge.set(e.path,!0):Ve.set(t,e)})),B=n,Z=F.getFileIncludeReasons(),ne=F.getFileProcessingDiagnostics(),re=F.getAutomaticTypeDirectiveNames(),ie=F.getAutomaticTypeDirectiveResolutions(),Ue=F.sourceFileToPackageName,Be=F.redirectTargetsMap,qe=F.usesUriStyleNodeCoreModules,ae=F.resolvedModules,ue=F.resolvedTypeReferenceDirectiveNames,oe=F.resolvedLibReferences,pe=F.getCurrentPackagesMap(),2}(),null==(f=ar)||f.pop(),2!==it){if(L=[],j=[],P&&(We||(We=P.map(jn)),N.length&&(null==We||We.forEach(((e,t)=>{if(!e)return;const n=e.commandLine.options.outFile;if(Ye){if(n||0===OS(e.commandLine.options))for(const r of e.commandLine.fileNames)pn(r,{kind:1,index:t})}else if(n)pn(cw(n,".d.ts"),{kind:2,index:t});else if(0===OS(e.commandLine.options)){const n=St((()=>oV(e.commandLine,!ye.useCaseSensitiveFileNames())));for(const r of e.commandLine.fileNames)lO(r)||Lo(r,".json")||pn(Zq(r,e.commandLine,!ye.useCaseSensitiveFileNames(),n),{kind:2,index:t})}})))),null==(m=ar)||m.push(ar.Phase.Program,"processRootFiles",{count:N.length}),h(N,((e,t)=>rn(e,!1,!1,{kind:0,index:t}))),null==(g=ar)||g.pop(),re??(re=N.length?yL(I,ye):_),ie=EL(),re.length){null==(y=ar)||y.push(ar.Phase.Program,"processTypeReferences",{count:re.length});const e=Zo(I.configFilePath?Vo(I.configFilePath):Ee,SK),t=Ot(re,e);for(let n=0;n<re.length;n++)ie.set(re[n],void 0,t[n]),Dn(re[n],void 0,t[n],{kind:8,typeReference:re[n],packageId:null==(x=null==(b=t[n])?void 0:b.resolvedTypeReferenceDirective)?void 0:x.packageId});null==(S=ar)||S.pop()}if(N.length&&!be){const e=Se();!I.lib&&e?rn(e,!0,!1,{kind:6}):h(I.lib,((e,t)=>{rn(Mn(e),!0,!1,{kind:6,index:t})}))}B=xe(L,(function(e,t){return Pt(Ct(e),Ct(t))})).concat(j),L=void 0,j=void 0,G=void 0}if(F&&ye.onReleaseOldSourceFile){const e=F.getSourceFiles();for(const t of e){const e=qt(t.resolvedPath);(rt||!e||e.impliedNodeFormat!==t.impliedNodeFormat||t.resolvedPath===t.path&&e.resolvedPath!==t.path)&&ye.onReleaseOldSourceFile(t,F.getCompilerOptions(),!!qt(t.path))}ye.getParsedCommandLine||F.forEachResolvedProjectReference((e=>{Nn(e.sourceFile.path)||ye.onReleaseOldSourceFile(e.sourceFile,F.getCompilerOptions(),!1)}))}F&&ye.onReleaseParsedCommandLine&&xK(F.getProjectReferences(),F.getResolvedProjectReferences(),((e,t,n)=>{const r=UK((null==t?void 0:t.commandLine.projectReferences[n])||F.getProjectReferences()[n]);(null==He?void 0:He.has(Nt(r)))||ye.onReleaseParsedCommandLine(r,e,F.getCompilerOptions())})),F=void 0,se=void 0,ce=void 0,de=void 0;const ot={getRootFileNames:()=>N,getSourceFile:Bt,getSourceFileByPath:qt,getSourceFiles:()=>B,getMissingFilePaths:()=>Ke,getModuleResolutionCache:()=>Pe,getFilesByNameMap:()=>Ve,getCompilerOptions:()=>I,getSyntacticDiagnostics:function(e,t){return Vt(e,Jt,t)},getOptionsDiagnostics:function(){return Ua(te(st().getGlobalDiagnostics(),function(){if(!I.configFile)return _;let e=st().getDiagnostics(I.configFile.fileName);return kn((t=>{e=te(e,st().getDiagnostics(t.sourceFile.fileName))})),e}()))},getGlobalDiagnostics:function(){return N.length?Ua(zt().getGlobalDiagnostics().slice()):_},getSemanticDiagnostics:function(e,t){return Vt(e,Gt,t)},getCachedSemanticDiagnostics:function(e){var t;return e?null==(t=X.perFile)?void 0:t.get(e.path):X.allDiagnostics},getSuggestionDiagnostics:function(e,t){return Wt((()=>zt().getSuggestionDiagnostics(e,t)))},getDeclarationDiagnostics:function(e,t){const n=ot.getCompilerOptions();return!e||n.outFile?$t(e,t):Vt(e,nn,t)},getBindAndCheckDiagnostics:function(e,t){return Qt(e,t)},getProgramDiagnostics:Kt,getTypeChecker:zt,getClassifiableNames:function(){var e;if(!W){zt(),W=new Set;for(const t of B)null==(e=t.classifiableNames)||e.forEach((e=>W.add(e)))}return W},getCommonSourceDirectory:Dt,emit:function(e,t,n,r,i,o){var s,a;null==(s=ar)||s.push(ar.Phase.Emit,"emit",{path:null==e?void 0:e.path},!0);const c=Wt((()=>function(e,t,n,r,i,o,s){if(!s){const i=LK(e,t,n,r);if(i)return i}const a=zt(),c=a.getEmitResolver(I.outFile?void 0:t,r,lV(i,s));mr("beforeEmit");const l=a.runWithCancellationToken(r,(()=>uV(c,Ft(n),t,Pq(I,o,i),i,!1,s)));return mr("afterEmit"),hr("Emit","beforeEmit","afterEmit"),l}(ot,e,t,n,r,i,o)));return null==(a=ar)||a.pop(),c},getCurrentDirectory:()=>Ee,getNodeCount:()=>zt().getNodeCount(),getIdentifierCount:()=>zt().getIdentifierCount(),getSymbolCount:()=>zt().getSymbolCount(),getTypeCount:()=>zt().getTypeCount(),getInstantiationCount:()=>zt().getInstantiationCount(),getRelationCacheSizes:()=>zt().getRelationCacheSizes(),getFileProcessingDiagnostics:()=>ne,getAutomaticTypeDirectiveNames:()=>re,getAutomaticTypeDirectiveResolutions:()=>ie,isSourceFileFromExternalLibrary:jt,isSourceFileDefaultLibrary:function(e){if(!e.isDeclarationFile)return!1;if(e.hasNoDefaultLib)return!0;if(!I.noLib)return!1;const t=ye.useCaseSensitiveFileNames()?It:At;return I.lib?$(I.lib,(n=>t(e.fileName,oe.get(n).actual))):t(e.fileName,Se())},getModeForUsageLocation:or,getModeForResolutionAtIndex:function(e,t){return or(e,VK(e,t))},getSourceFileFromReference:function(e,t){return dn(LV(t.fileName,e.fileName),Bt)},getLibFileFromReference:function(e){var t;const n=EK(e),r=n&&(null==(t=null==oe?void 0:oe.get(n))?void 0:t.actual);return void 0!==r?Bt(r):void 0},sourceFileToPackageName:Ue,redirectTargetsMap:Be,usesUriStyleNodeCoreModules:qe,resolvedModules:ae,resolvedTypeReferenceDirectiveNames:ue,resolvedLibReferences:oe,getResolvedModule:ct,getResolvedModuleFromModuleSpecifier:function(e,t){return t??(t=C_(e)),Tn.assertIsDefined(t,"`moduleSpecifier` must have a `SourceFile` ancestor. Use `program.getResolvedModule` instead to provide the containing file and resolution mode."),ct(t,e.text,or(t,e))},getResolvedTypeReferenceDirective:ut,getResolvedTypeReferenceDirectiveFromTypeReferenceDirective:function(e,t){return ut(t,e.fileName,e.resolutionMode||t.impliedNodeFormat)},forEachResolvedModule:_t,forEachResolvedTypeReferenceDirective:mt,getCurrentPackagesMap:()=>pe,typesPackageExists:function(e){return yt().has(Aj(e))},packageBundlesTypes:function(e){return!!yt().get(e)},isEmittedFile:function(e){if(I.noEmit)return!1;const t=Nt(e);if(qt(t))return!1;const n=I.outFile;if(n)return rr(t,n)||rr(t,ow(n)+".d.ts");if(I.declarationDir&&fs(I.declarationDir,t,Ee,!ye.useCaseSensitiveFileNames()))return!0;if(I.outDir)return fs(I.outDir,t,Ee,!ye.useCaseSensitiveFileNames());if(jo(t,qT)||lO(t)){const e=ow(t);return!!qt(e+".ts")||!!qt(e+".tsx")}return!1},getConfigFileParsingDiagnostics:function(){return D||_},getProjectReferences:function(){return P},getResolvedProjectReferences:Lt,getProjectReferenceRedirect:bn,getResolvedProjectReferenceToRedirect:wn,getResolvedProjectReferenceByPath:Nn,forEachResolvedProjectReference:kn,isSourceOfProjectReferenceRedirect:Cn,getRedirectReferenceForResolutionFromSourceOfProject:Et,emitBuildInfo:function(e){var t,n;Tn.assert(!I.outFile),null==(t=ar)||t.push(ar.Phase.Emit,"emitBuildInfo",{},!0),mr("beforeEmit");const r=uV(fV,Ft(e),void 0,Dq,!1,!0);return mr("afterEmit"),hr("Emit","beforeEmit","afterEmit"),null==(n=ar)||n.pop(),r},fileExists:Xe,readFile:et,directoryExists:$e,getSymlinkCache:ir,realpath:null==(T=ye.realpath)?void 0:T.bind(ye),useCaseSensitiveFileNames:()=>ye.useCaseSensitiveFileNames(),getCanonicalFileName:Rn,getFileIncludeReasons:()=>Z,structureIsReused:it,writeFile:Rt};return Ze(),function(){I.strictPropertyInitialization&&!eT(I,"strictNullChecks")&&Gn(ws.Option_0_cannot_be_specified_without_specifying_option_1,"strictPropertyInitialization","strictNullChecks");I.exactOptionalPropertyTypes&&!eT(I,"strictNullChecks")&&Gn(ws.Option_0_cannot_be_specified_without_specifying_option_1,"exactOptionalPropertyTypes","strictNullChecks");(I.isolatedModules||I.verbatimModuleSyntax)&&I.outFile&&Gn(ws.Option_0_cannot_be_specified_with_option_1,"outFile",I.verbatimModuleSyntax?"verbatimModuleSyntax":"isolatedModules");I.isolatedDeclarations&&(HS(I)&&Gn(ws.Option_0_cannot_be_specified_with_option_1,"allowJs","isolatedDeclarations"),VS(I)||Gn(ws.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"isolatedDeclarations","declaration","composite"));I.inlineSourceMap&&(I.sourceMap&&Gn(ws.Option_0_cannot_be_specified_with_option_1,"sourceMap","inlineSourceMap"),I.mapRoot&&Gn(ws.Option_0_cannot_be_specified_with_option_1,"mapRoot","inlineSourceMap"));I.composite&&(!1===I.declaration&&Gn(ws.Composite_projects_may_not_disable_declaration_emit,"declaration"),!1===I.incremental&&Gn(ws.Composite_projects_may_not_disable_incremental_compilation,"declaration"));const e=I.outFile;I.tsBuildInfoFile?JS(I)||Gn(ws.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"tsBuildInfoFile","incremental","composite"):!I.incremental||e||I.configFilePath||we.add(mS(ws.Option_incremental_can_only_be_specified_using_tsconfig_emitting_to_single_file_or_when_option_tsBuildInfoFile_is_specified));if(function(){zn("5.0","5.5","6.0",(function(e,t,n,r,...i){if(n){const o=gS(void 0,ws.Use_0_instead,n);Zn(!t,e,void 0,gS(o,r,...i))}else Zn(!t,e,void 0,r,...i)}),(e=>{0===I.target&&e("target","ES3"),I.noImplicitUseStrict&&e("noImplicitUseStrict"),I.keyofStringsOnly&&e("keyofStringsOnly"),I.suppressExcessPropertyErrors&&e("suppressExcessPropertyErrors"),I.suppressImplicitAnyIndexErrors&&e("suppressImplicitAnyIndexErrors"),I.noStrictGenericChecks&&e("noStrictGenericChecks"),I.charset&&e("charset"),I.out&&e("out",void 0,"outFile"),I.importsNotUsedAsValues&&e("importsNotUsedAsValues",void 0,"verbatimModuleSyntax"),I.preserveValueImports&&e("preserveValueImports",void 0,"verbatimModuleSyntax")}))}(),function(){const e=I.suppressOutputPathCheck?void 0:Jq(I);xK(P,We,((t,n,r)=>{const i=(n?n.commandLine.projectReferences:P)[r],o=n&&n.sourceFile;if(function(e,t,n){function r(e,r,i,o,...s){Yn(t,n,o,...s)}zn("5.0","5.5","6.0",r,(t=>{e.prepend&&t("prepend")}))}(i,o,r),!t)return void Yn(o,r,ws.File_0_not_found,i.path);const s=t.commandLine.options;if(!s.composite||s.noEmit){(n?n.commandLine.fileNames:N).length&&(s.composite||Yn(o,r,ws.Referenced_project_0_must_have_setting_composite_Colon_true,i.path),s.noEmit&&Yn(o,r,ws.Referenced_project_0_may_not_disable_emit,i.path))}!n&&e&&e===Jq(s)&&(Yn(o,r,ws.Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1,e,i.path),Ae.set(Nt(e),!0))}))}(),I.composite){const e=new Set(N.map(Nt));for(const t of B)uv(t,ot)&&!e.has(t.path)&&qn(t,ws.File_0_is_not_listed_within_the_file_list_of_project_1_Projects_must_list_all_files_or_use_an_include_pattern,[t.fileName,I.configFilePath||""])}if(I.paths)for(const s in I.paths)if(je(I.paths,s))if(uT(s)||Kn(!0,s,ws.Pattern_0_can_have_at_most_one_Asterisk_character,s),at(I.paths[s])){const e=I.paths[s].length;0===e&&Kn(!1,s,ws.Substitutions_for_pattern_0_shouldn_t_be_an_empty_array,s);for(let t=0;t<e;t++){const e=I.paths[s][t],n=typeof e;"string"===n?(uT(e)||Vn(s,t,ws.Substitution_0_in_pattern_1_can_have_at_most_one_Asterisk_character,e,s),I.baseUrl||Oo(e)||Mo(e)||Vn(s,t,ws.Non_relative_paths_are_not_allowed_when_baseUrl_is_not_set_Did_you_forget_a_leading_Slash)):Vn(s,t,ws.Substitution_0_for_pattern_1_has_incorrect_type_expected_string_got_2,e,s,n)}}else Kn(!1,s,ws.Substitutions_for_pattern_0_should_be_an_array,s);I.sourceMap||I.inlineSourceMap||(I.inlineSources&&Gn(ws.Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided,"inlineSources"),I.sourceRoot&&Gn(ws.Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided,"sourceRoot"));!I.mapRoot||I.sourceMap||I.declarationMap||Gn(ws.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"mapRoot","sourceMap","declarationMap");I.declarationDir&&(VS(I)||Gn(ws.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"declarationDir","declaration","composite"),e&&Gn(ws.Option_0_cannot_be_specified_with_option_1,"declarationDir","outFile"));I.declarationMap&&!VS(I)&&Gn(ws.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"declarationMap","declaration","composite");I.lib&&I.noLib&&Gn(ws.Option_0_cannot_be_specified_with_option_1,"lib","noLib");const t=MS(I),n=w(B,(e=>tO(e)&&!e.isDeclarationFile));if(I.isolatedModules||I.verbatimModuleSyntax)0===I.module&&t<2&&I.isolatedModules&&Gn(ws.Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES2015_or_higher,"isolatedModules","target"),!1===I.preserveConstEnums&&Gn(ws.Option_preserveConstEnums_cannot_be_disabled_when_0_is_enabled,I.verbatimModuleSyntax?"verbatimModuleSyntax":"isolatedModules","preserveConstEnums");else if(n&&t<2&&0===I.module){const e=nf(n,"boolean"==typeof n.externalModuleIndicator?n:n.externalModuleIndicator);we.add(pS(n,e.start,e.length,ws.Cannot_use_imports_exports_or_module_augmentations_when_module_is_none))}if(e&&!I.emitDeclarationOnly)if(I.module&&2!==I.module&&4!==I.module)Gn(ws.Only_amd_and_system_modules_are_supported_alongside_0,"outFile","module");else if(void 0===I.module&&n){const e=nf(n,"boolean"==typeof n.externalModuleIndicator?n:n.externalModuleIndicator);we.add(pS(n,e.start,e.length,ws.Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system,"outFile"))}qS(I)&&(1===FS(I)?Gn(ws.Option_resolveJsonModule_cannot_be_specified_when_moduleResolution_is_set_to_classic,"resolveJsonModule"):YS(I)||Gn(ws.Option_resolveJsonModule_cannot_be_specified_when_module_is_set_to_none_system_or_umd,"resolveJsonModule","module"));if(I.outDir||I.rootDir||I.sourceRoot||I.mapRoot||VS(I)&&I.declarationDir){const e=Dt();I.outDir&&""===e&&B.some((e=>qo(e.fileName)>1))&&Gn(ws.Cannot_find_the_common_subdirectory_path_for_the_input_files,"outDir")}I.checkJs&&!HS(I)&&Gn(ws.Option_0_cannot_be_specified_without_specifying_option_1,"checkJs","allowJs");I.emitDeclarationOnly&&(VS(I)||Gn(ws.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"emitDeclarationOnly","declaration","composite"),I.noEmit&&Gn(ws.Option_0_cannot_be_specified_with_option_1,"emitDeclarationOnly","noEmit"));I.noCheck&&I.noEmit&&Gn(ws.Option_0_cannot_be_specified_with_option_1,"noCheck","noEmit");I.emitDecoratorMetadata&&!I.experimentalDecorators&&Gn(ws.Option_0_cannot_be_specified_without_specifying_option_1,"emitDecoratorMetadata","experimentalDecorators");I.jsxFactory?(I.reactNamespace&&Gn(ws.Option_0_cannot_be_specified_with_option_1,"reactNamespace","jsxFactory"),4!==I.jsx&&5!==I.jsx||Gn(ws.Option_0_cannot_be_specified_when_option_jsx_is_1,"jsxFactory",SO.get(""+I.jsx)),$M(I.jsxFactory,t)||Qn("jsxFactory",ws.Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name,I.jsxFactory)):I.reactNamespace&&!Aa(I.reactNamespace,t)&&Qn("reactNamespace",ws.Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier,I.reactNamespace);I.jsxFragmentFactory&&(I.jsxFactory||Gn(ws.Option_0_cannot_be_specified_without_specifying_option_1,"jsxFragmentFactory","jsxFactory"),4!==I.jsx&&5!==I.jsx||Gn(ws.Option_0_cannot_be_specified_when_option_jsx_is_1,"jsxFragmentFactory",SO.get(""+I.jsx)),$M(I.jsxFragmentFactory,t)||Qn("jsxFragmentFactory",ws.Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name,I.jsxFragmentFactory));I.reactNamespace&&(4!==I.jsx&&5!==I.jsx||Gn(ws.Option_0_cannot_be_specified_when_option_jsx_is_1,"reactNamespace",SO.get(""+I.jsx)));I.jsxImportSource&&2===I.jsx&&Gn(ws.Option_0_cannot_be_specified_when_option_jsx_is_1,"jsxImportSource",SO.get(""+I.jsx));const r=OS(I);I.verbatimModuleSyntax&&(2!==r&&3!==r&&4!==r||Gn(ws.Option_verbatimModuleSyntax_cannot_be_used_when_module_is_set_to_UMD_AMD_or_System,"verbatimModuleSyntax"));!I.allowImportingTsExtensions||I.noEmit||I.emitDeclarationOnly||Qn("allowImportingTsExtensions",ws.Option_allowImportingTsExtensions_can_only_be_used_when_either_noEmit_or_emitDeclarationOnly_is_set);const i=FS(I);I.resolvePackageJsonExports&&!$S(i)&&Gn(ws.Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler,"resolvePackageJsonExports");I.resolvePackageJsonImports&&!$S(i)&&Gn(ws.Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler,"resolvePackageJsonImports");I.customConditions&&!$S(i)&&Gn(ws.Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler,"customConditions");100!==i||QS(r)||200===r||Qn("moduleResolution",ws.Option_0_can_only_be_used_when_module_is_set_to_preserve_or_to_es2015_or_later,"bundler");if(Ci[r]&&100<=r&&r<=199&&!(3<=i&&i<=99)){const e=Ci[r];Qn("moduleResolution",ws.Option_moduleResolution_must_be_set_to_0_or_left_unspecified_when_option_module_is_set_to_1,e,e)}else if(Si[i]&&3<=i&&i<=99&&!(100<=r&&r<=199)){const e=Si[i];Qn("module",ws.Option_module_must_be_set_to_0_when_option_moduleResolution_is_set_to_1,e,e)}if(!I.noEmit&&!I.suppressOutputPathCheck){const e=Ft(),t=new Set;Kq(e,(e=>{I.emitDeclarationOnly||o(e.jsFilePath,t),o(e.declarationFilePath,t)}))}function o(e,t){if(e){const n=Nt(e);if(Ve.has(n)){let t;I.configFilePath||(t=gS(void 0,ws.Adding_a_tsconfig_json_file_will_help_organize_projects_that_contain_both_TypeScript_and_JavaScript_files_Learn_more_at_https_Colon_Slash_Slashaka_ms_Slashtsconfig)),t=gS(t,ws.Cannot_write_file_0_because_it_would_overwrite_input_file,e),nr(e,hS(t))}const r=ye.useCaseSensitiveFileNames()?n:bt(n);t.has(r)?nr(e,mS(ws.Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files,e)):t.add(r)}}}(),mr("afterProgram"),hr("Program","beforeProgram","afterProgram"),null==(k=ar)||k.pop(),ot;function st(){return ke&&(null==ne||ne.forEach((e=>{switch(e.kind){case 1:return we.add(Un(e.file&&qt(e.file),e.fileProcessingReason,e.diagnostic,e.args||_));case 0:return we.add(function({reason:e}){const{file:t,pos:n,end:r}=AK(ot,e),i=kK(t.libReferenceDirectives[e.index]),o=Ht(Yt(ln(i,"lib."),".d.ts"),wO,gt);return pS(t,Tn.checkDefined(n),Tn.checkDefined(r)-n,o?ws.Cannot_find_lib_definition_for_0_Did_you_mean_1:ws.Cannot_find_lib_definition_for_0,i,o)}(e));case 2:return e.diagnostics.forEach((e=>we.add(e)));default:Tn.assertNever(e)}})),ke.forEach((({file:e,diagnostic:t,args:n})=>we.add(Un(e,void 0,t,n)))),ke=void 0,Q=void 0,Y=void 0),we}function ct(e,t,n){var r;return null==(r=null==ae?void 0:ae.get(e.path))?void 0:r.get(t,n)}function ut(e,t,n){var r;return null==(r=null==ue?void 0:ue.get(e.path))?void 0:r.get(t,n)}function _t(e,t){ht(ae,e,t)}function mt(e,t){ht(ue,e,t)}function ht(e,t,n){var r;n?null==(r=null==e?void 0:e.get(n.path))||r.forEach(((e,r,i)=>t(e,r,i,n.path))):null==e||e.forEach(((e,n)=>e.forEach(((e,r,i)=>t(e,r,i,n)))))}function yt(){return pe||(pe=new Map,_t((({resolvedModule:e})=>{(null==e?void 0:e.packageId)&&pe.set(e.packageId.name,".d.ts"===e.extension||!!pe.get(e.packageId.name))})),pe)}function vt(e){var t;(null==(t=e.resolutionDiagnostics)?void 0:t.length)&&(ne??(ne=[])).push({kind:2,diagnostics:e.resolutionDiagnostics})}function xt(e,t,n,r){if(ye.resolveModuleNameLiterals||!ye.resolveModuleNames)return vt(n);if(!Pe||za(t))return;const i=Vo(es(e.originalFileName,Ee)),o=kt(e),s=Pe.getFromNonRelativeNameCache(t,r,i,o);s&&vt(s)}function Tt(e,t,n){var r,i;if(!e.length)return _;const o=es(t.originalFileName,Ee),s=kt(t);null==(r=ar)||r.push(ar.Phase.Program,"resolveModuleNamesWorker",{containingFileName:o}),mr("beforeResolveModule");const a=Me(e,o,s,I,t,n);return mr("afterResolveModule"),hr("ResolveModule","beforeResolveModule","afterResolveModule"),null==(i=ar)||i.pop(),a}function wt(e,t,n){var r,i;if(!e.length)return[];const o=lt(t)?void 0:t,s=lt(t)?t:es(t.originalFileName,Ee),a=o&&kt(o);null==(r=ar)||r.push(ar.Phase.Program,"resolveTypeReferenceDirectiveNamesWorker",{containingFileName:s}),mr("beforeResolveTypeReference");const c=Fe(e,s,a,I,o,n);return mr("afterResolveTypeReference"),hr("ResolveTypeReference","beforeResolveTypeReference","afterResolveTypeReference"),null==(i=ar)||i.pop(),c}function kt(e){const t=wn(e.originalFileName);if(t||!lO(e.originalFileName))return t;const n=Et(e.path);if(n)return n;if(!ye.realpath||!I.preserveSymlinks||!e.originalFileName.includes(GL))return;const r=Nt(ye.realpath(e.originalFileName));return r===e.path?void 0:Et(r)}function Et(e){const t=En(e);return lt(t)?wn(t):t?kn((t=>{const n=t.commandLine.options.outFile;if(n)return Nt(n)===e?t:void 0})):void 0}function Ct(e){if(fs(Te,e.fileName,!1)){const t=Ko(e.fileName);if("lib.d.ts"===t||"lib.es6.d.ts"===t)return 0;const n=Yt(ln(t,"lib."),".d.ts"),r=wO.indexOf(n);if(-1!==r)return r+1}return wO.length+2}function Nt(e){return rs(e,Ee,Rn)}function Dt(){if(void 0===V){const e=M(B,(e=>uv(e,ot)));V=iV(I,(()=>J(e,(e=>e.isDeclarationFile?void 0:e.fileName))),Ee,Rn,(t=>function(e,t){let n=!0;const r=ye.getCanonicalFileName(es(t,Ee));for(const i of e)if(!i.isDeclarationFile){0!==ye.getCanonicalFileName(es(i.fileName,Ee)).indexOf(r)&&(qn(i,ws.File_0_is_not_under_rootDir_1_rootDir_is_expected_to_contain_all_source_files,[i.fileName,t]),n=!1)}return n}(e,t)))}return V}function Mt(e,t){if(0===it&&!t.ambientModuleNames.length)return Tt(e,t,void 0);let n,r,i;const o=_K,s=F&&F.getSourceFile(t.fileName);for(let u=0;u<e.length;u++){const a=e[u];if(t===s&&!Oe(t.path)){const n=null==F?void 0:F.getResolvedModule(t,a.text,or(t,a));if(null==n?void 0:n.resolvedModule){QR(I,ye)&&GR(ye,n.resolvedModule.packageId?ws.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:ws.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2,a.text,es(t.originalFileName,Ee),n.resolvedModule.resolvedFileName,n.resolvedModule.packageId&&T_(n.resolvedModule.packageId)),(r??(r=new Array(e.length)))[u]=n,(i??(i=[])).push(a);continue}}let c=!1;A(t.ambientModuleNames,a.text)?(c=!0,QR(I,ye)&&GR(ye,ws.Module_0_was_resolved_as_locally_declared_ambient_module_in_file_1,a.text,es(t.originalFileName,Ee))):c=l(a),c?(r||(r=new Array(e.length)))[u]=o:(n??(n=[])).push(a)}const a=n&&n.length?Tt(n,t,i):_;if(!r)return Tn.assert(a.length===e.length),a;let c=0;for(let u=0;u<r.length;u++)r[u]||(r[u]=a[c],c++);return Tn.assert(c===a.length),r;function l(e){var n;const r=null==(n=null==F?void 0:F.getResolvedModule(t,e.text,or(t,e)))?void 0:n.resolvedModule,i=r&&F.getSourceFile(r.resolvedFileName);if(r&&i)return!1;const o=H.get(e.text);return!!o&&(QR(I,ye)&&GR(ye,ws.Module_0_was_resolved_as_ambient_module_declared_in_1_since_this_file_was_not_modified,e.text,o),!0)}}function Ot(e,t){var n;if(0===it)return wt(e,t,void 0);let r,i,o;const s=lt(t)?void 0:t,a=lt(t)?void 0:F&&F.getSourceFile(t.fileName),c=lt(t)?!Oe(Nt(t)):t===a&&!Oe(t.path);for(let d=0;d<e.length;d++){const a=e[d];if(c){const r=hK(a),c=sK(a,null==s?void 0:s.impliedNodeFormat),l=lt(t)?null==(n=null==F?void 0:F.getAutomaticTypeDirectiveResolutions())?void 0:n.get(r,c):null==F?void 0:F.getResolvedTypeReferenceDirective(t,r,c);if(null==l?void 0:l.resolvedTypeReferenceDirective){QR(I,ye)&&GR(ye,l.resolvedTypeReferenceDirective.packageId?ws.Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:ws.Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2,r,lt(t)?t:es(t.originalFileName,Ee),l.resolvedTypeReferenceDirective.resolvedFileName,l.resolvedTypeReferenceDirective.packageId&&T_(l.resolvedTypeReferenceDirective.packageId)),(i??(i=new Array(e.length)))[d]=l,(o??(o=[])).push(a);continue}}(r??(r=[])).push(a)}if(!r)return i||_;const l=wt(r,t,o);if(!i)return Tn.assert(l.length===e.length),l;let u=0;for(let d=0;d<i.length;d++)i[d]||(i[d]=l[u],u++);return Tn.assert(u===l.length),i}function Ft(e){return{getCanonicalFileName:Rn,getCommonSourceDirectory:ot.getCommonSourceDirectory,getCompilerOptions:ot.getCompilerOptions,getCurrentDirectory:()=>Ee,getSourceFile:ot.getSourceFile,getSourceFileByPath:ot.getSourceFileByPath,getSourceFiles:ot.getSourceFiles,isSourceFileFromExternalLibrary:jt,getResolvedProjectReferenceToRedirect:wn,getProjectReferenceRedirect:bn,isSourceOfProjectReferenceRedirect:Cn,getSymlinkCache:ir,writeFile:e||Rt,isEmitBlocked:Ut,readFile:e=>ye.readFile(e),fileExists:e=>{const t=Nt(e);return!!qt(t)||!Ke.has(t)&&ye.fileExists(e)},realpath:tt(ye,ye.realpath),useCaseSensitiveFileNames:()=>ye.useCaseSensitiveFileNames(),getBuildInfo:()=>{var e;return null==(e=ot.getBuildInfo)?void 0:e.call(ot)},getSourceFileFromReference:(e,t)=>ot.getSourceFileFromReference(e,t),redirectTargetsMap:Be,getFileIncludeReasons:ot.getFileIncludeReasons,createHash:tt(ye,ye.createHash),getModuleResolutionCache:()=>ot.getModuleResolutionCache(),trace:tt(ye,ye.trace)}}function Rt(e,t,n,r,i,o){ye.writeFile(e,t,n,r,i,o)}function Lt(){return We}function jt(e){return!!ge.get(e.path)}function zt(){return K||(K=Zz(ot))}function Ut(e){return Ae.has(Nt(e))}function Bt(e){return qt(Nt(e))}function qt(e){return Ve.get(e)||void 0}function Vt(e,t,n){return Ua(e?t(e,n):U(ot.getSourceFiles(),(e=>(n&&n.throwIfCancellationRequested(),t(e,n)))))}function Kt(e){var t;if(kw(e,I,ot))return _;const n=st().getDiagnostics(e.fileName);return(null==(t=e.commentDirectives)?void 0:t.length)?Xt(e,e.commentDirectives,n).diagnostics:n}function Jt(e){return jm(e)?(e.additionalSyntacticDiagnostics||(e.additionalSyntacticDiagnostics=function(e){return Wt((()=>{const t=[];return n(e,e),QM(e,n,r),t;function n(e,n){switch(n.kind){case 169:case 172:case 174:if(n.questionToken===e)return t.push(s(e,ws.The_0_modifier_can_only_be_used_in_TypeScript_files,"?")),"skip";case 173:case 176:case 177:case 178:case 218:case 262:case 219:case 260:if(n.type===e)return t.push(s(e,ws.Type_annotations_can_only_be_used_in_TypeScript_files)),"skip"}switch(e.kind){case 273:if(e.isTypeOnly)return t.push(s(n,ws._0_declarations_can_only_be_used_in_TypeScript_files,"import type")),"skip";break;case 278:if(e.isTypeOnly)return t.push(s(e,ws._0_declarations_can_only_be_used_in_TypeScript_files,"export type")),"skip";break;case 276:case 281:if(e.isTypeOnly)return t.push(s(e,ws._0_declarations_can_only_be_used_in_TypeScript_files,xI(e)?"import...type":"export...type")),"skip";break;case 271:return t.push(s(e,ws.import_can_only_be_used_in_TypeScript_files)),"skip";case 277:if(e.isExportEquals)return t.push(s(e,ws.export_can_only_be_used_in_TypeScript_files)),"skip";break;case 298:if(119===e.token)return t.push(s(e,ws.implements_clauses_can_only_be_used_in_TypeScript_files)),"skip";break;case 264:const r=Vs(120);return Tn.assertIsDefined(r),t.push(s(e,ws._0_declarations_can_only_be_used_in_TypeScript_files,r)),"skip";case 267:const i=32&e.flags?Vs(145):Vs(144);return Tn.assertIsDefined(i),t.push(s(e,ws._0_declarations_can_only_be_used_in_TypeScript_files,i)),"skip";case 265:return t.push(s(e,ws.Type_aliases_can_only_be_used_in_TypeScript_files)),"skip";case 176:case 174:case 262:return e.body?void 0:(t.push(s(e,ws.Signature_declarations_can_only_be_used_in_TypeScript_files)),"skip");case 266:const o=Tn.checkDefined(Vs(94));return t.push(s(e,ws._0_declarations_can_only_be_used_in_TypeScript_files,o)),"skip";case 235:return t.push(s(e,ws.Non_null_assertions_can_only_be_used_in_TypeScript_files)),"skip";case 234:return t.push(s(e.type,ws.Type_assertion_expressions_can_only_be_used_in_TypeScript_files)),"skip";case 238:return t.push(s(e.type,ws.Type_satisfaction_expressions_can_only_be_used_in_TypeScript_files)),"skip";case 216:Tn.fail()}}function r(e,n){if(jP(n)){const e=w(n.modifiers,mN);e&&t.push(s(e,ws.Decorators_are_not_valid_here))}else if(xM(n)&&n.modifiers){const e=E(n.modifiers,mN);if(e>=0)if(fN(n)&&!I.experimentalDecorators)t.push(s(n.modifiers[e],ws.Decorators_are_not_valid_here));else if(nI(n)){const r=E(n.modifiers,XC);if(r>=0){const i=E(n.modifiers,$C);if(e>r&&i>=0&&e<i)t.push(s(n.modifiers[e],ws.Decorators_are_not_valid_here));else if(r>=0&&e<r){const i=E(n.modifiers,mN,r);i>=0&&t.push(xw(s(n.modifiers[i],ws.Decorators_may_not_appear_after_export_or_export_default_if_they_also_appear_before_export),s(n.modifiers[e],ws.Decorator_used_before_export_here)))}}}}switch(n.kind){case 263:case 231:case 174:case 176:case 177:case 178:case 218:case 262:case 219:if(e===n.typeParameters)return t.push(o(e,ws.Type_parameter_declarations_can_only_be_used_in_TypeScript_files)),"skip";case 243:if(e===n.modifiers)return i(n.modifiers,243===n.kind),"skip";break;case 172:if(e===n.modifiers){for(const n of e)lu(n)&&126!==n.kind&&129!==n.kind&&t.push(s(n,ws.The_0_modifier_can_only_be_used_in_TypeScript_files,Vs(n.kind)));return"skip"}break;case 169:if(e===n.modifiers&&$(e,lu))return t.push(o(e,ws.Parameter_modifiers_can_only_be_used_in_TypeScript_files)),"skip";break;case 213:case 214:case 233:case 285:case 286:case 215:if(e===n.typeArguments)return t.push(o(e,ws.Type_arguments_can_only_be_used_in_TypeScript_files)),"skip"}}function i(e,n){for(const r of e)switch(r.kind){case 87:if(n)continue;case 125:case 123:case 124:case 148:case 138:case 128:case 164:case 103:case 147:t.push(s(r,ws.The_0_modifier_can_only_be_used_in_TypeScript_files,Vs(r.kind)))}}function o(t,n,...r){const i=t.pos;return pS(e,i,t.end-i,n,...r)}function s(t,n,...r){return Jp(e,t,n,...r)}}))}(e)),te(e.additionalSyntacticDiagnostics,e.parseDiagnostics)):e.parseDiagnostics}function Wt(e){try{return e()}catch(Mge){throw Mge instanceof jr&&(K=void 0),Mge}}function Gt(e,t){return te(jK(Qt(e,t),I),Kt(e))}function Qt(e,t){return tn(e,t,X,Zt)}function Zt(e,t){return Wt((()=>{if(kw(e,I,ot))return _;const n=zt();Tn.assert(!!e.bindDiagnostics);const r=(1===e.scriptKind||2===e.scriptKind)&&gw(e,I),i=A_(e,I.checkJs);let o=e.bindDiagnostics,s=n.getDiagnostics(e,t);return i&&(o=M(o,(e=>OK.has(e.code))),s=M(s,(e=>OK.has(e.code)))),function(e,t,...n){var r;const i=z(n);if(!t||!(null==(r=e.commentDirectives)?void 0:r.length))return i;const{diagnostics:o,directives:s}=Xt(e,e.commentDirectives,i);for(const a of s.getUnusedExpectations())o.push(Xp(e,a.range,ws.Unused_ts_expect_error_directive));return o}(e,!i,o,s,r?e.jsDocDiagnostics:void 0)}))}function Xt(e,t,n){const r=G_(e,t),i=n.filter((e=>-1===function(e,t){const{file:n,start:r}=e;if(!n)return-1;const i=Zs(n);let o=Xs(i,r).line-1;for(;o>=0;){if(t.markUsed(o))return o;const e=n.text.slice(i[o],i[o+1]).trim();if(""!==e&&!/^(\s*)\/\/(.*)$/.test(e))return-1;o--}return-1}(e,r)));return{diagnostics:i,directives:r}}function $t(e,t){return tn(e,t,ee,en)}function en(e,t){return Wt((()=>{const n=zt().getEmitResolver(e,t);return kq(Ft(pt),n,e)||_}))}function tn(e,t,n,r){var i;const o=e?null==(i=n.perFile)?void 0:i.get(e.path):n.allDiagnostics;if(o)return o;const s=r(e,t);return e?(n.perFile||(n.perFile=new Map)).set(e.path,s):n.allDiagnostics=s,s}function nn(e,t){return e.isDeclarationFile?[]:$t(e,t)}function rn(e,t,n,r){_n(ts(e),t,n,void 0,r)}function on(e,t){return e.fileName===t.fileName}function sn(e,t){return 80===e.kind?80===t.kind&&e.escapedText===t.escapedText:11===t.kind&&e.text===t.text}function an(e,t){const n=oE.createStringLiteral(e),r=oE.createImportDeclaration(void 0,void 0,n);return fE(r,2),Bw(n,r),Bw(r,t),n.flags&=-17,r.flags&=-17,n}function un(e){if(e.imports)return;const t=jm(e),n=tO(e);let r,i,o;if(t||!e.isDeclarationFile&&(LS(I)||tO(e))){I.importHelpers&&(r=[an(e_,e)]);const t=lT(cT(I,e),I);t&&(r||(r=[])).push(an(t,e))}for(const c of e.statements)s(c,!1);return(4194304&e.flags||t)&&function(e){const n=/import|require/g;for(;null!==n.exec(e.text);){const i=a(e,n.lastIndex);if(t&&Jm(i,!0))Vw(i,!1),r=_e(r,i.arguments[0]);else if(mf(i)&&i.arguments.length>=1&&Hd(i.arguments[0]))Vw(i,!1),r=_e(r,i.arguments[0]);else if(gf(i))Vw(i,!1),r=_e(r,i.argument.literal);else if(t&&zD(i)){const e=Ih(i);e&&MC(e)&&e.text&&(Vw(i,!1),r=_e(r,e))}}}(e),e.imports=r||_,e.moduleAugmentations=i||_,void(e.ambientModuleNames=o||_);function s(t,a){if(Mp(t)){const n=Ih(t);!(n&&MC(n)&&n.text)||a&&za(n.text)||(Vw(t,!1),r=_e(r,n),qe||0!==me||e.isDeclarationFile||(qe=cn(n.text,"node:")))}else if(sI(t)&&_p(t)&&(a||Kv(t,128)||e.isDeclarationFile)){t.name.parent=t;const r=$g(t.name);if(n||a&&!za(r))(i||(i=[])).push(t.name);else if(!a){e.isDeclarationFile&&(o||(o=[])).push(r);const n=t.body;if(n)for(const e of n.statements)s(e,!0)}}}function a(e,n){let r=e;const i=e=>{if(e.pos<=n&&(n<e.end||n===e.end&&1===e.kind))return e};for(;;){const e=t&&zd(r)&&h(r.jsDoc,i)||GM(r,i);if(!e)return r;r=e}}}function dn(e,t,n,r){if(Ro(e)){const i=ye.getCanonicalFileName(e);if(!I.allowNonTsExtensions&&!h(z(Ne),(e=>Lo(i,e))))return void(n&&(YT(i)?n(ws.File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option,e):n(ws.File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1,e,"'"+z(Ce).join("', '")+"'")));const o=t(e);if(n)if(o)CK(r)&&i===ye.getCanonicalFileName(qt(r.file).fileName)&&n(ws.A_file_cannot_have_a_reference_to_itself);else{const t=bn(e);t?n(ws.Output_file_0_has_not_been_built_from_source_file_1,t,e):n(ws.File_0_not_found,e)}return o}{const r=I.allowNonTsExtensions&&t(e);if(r)return r;if(n&&I.allowNonTsExtensions)return void n(ws.File_0_not_found,e);const i=h(Ce[0],(n=>t(e+n)));return n&&!i&&n(ws.Could_not_resolve_the_path_0_with_the_extensions_Colon_1,e,"'"+z(Ce).join("', '")+"'"),i}}function _n(e,t,n,r,i){dn(e,(e=>mn(e,t,n,i,r)),((e,...t)=>Bn(void 0,i,e,t)),i)}function pn(e,t){return _n(e,!1,!1,void 0,t)}function fn(e,t,n){!CK(n)&&$(Z.get(t.path),CK)?Bn(t,n,ws.Already_included_file_name_0_differs_from_file_name_1_only_in_casing,[t.fileName,e]):Bn(t,n,ws.File_name_0_differs_from_already_included_file_name_1_only_in_casing,[e,t.fileName])}function mn(e,t,n,r,i){var o,s;null==(o=ar)||o.push(ar.Phase.Program,"findSourceFile",{fileName:e,isDefaultLib:t||void 0,fileIncludeKind:zr[r.kind]});const a=function(e,t,n,r,i){var o;const s=Nt(e);if(Ye){let o=En(s);if(!o&&ye.realpath&&I.preserveSymlinks&&lO(e)&&e.includes(GL)){const t=Nt(ye.realpath(e));t!==s&&(o=En(t))}if(o){const a=lt(o)?mn(o,t,n,r,i):void 0;return a&&yn(a,s,e,void 0),a}}const a=e;if(Ve.has(s)){const n=Ve.get(s),i=gn(n||void 0,r,!0);if(n&&i&&!1!==I.forceConsistentCasingInFileNames){const t=n.fileName;Nt(t)!==Nt(e)&&(e=bn(e)||e);ns(t,Ee)!==ns(e,Ee)&&fn(e,n,r)}return n&&ge.get(n.path)&&0===me?(ge.set(n.path,!1),I.noResolve||(An(n,t),In(n)),I.noLib||Fn(n),he.set(n.path,!1),Ln(n)):n&&he.get(n.path)&&me<fe&&(he.set(n.path,!1),Ln(n)),n||void 0}let c;if(!Ye){const t=xn(e);if(t){if(t.commandLine.options.outFile)return;const n=Sn(t,e);e=n,c=Nt(n)}}const l=hn(e,Pe,ye,I),u=ye.getSourceFile(e,l,(t=>Bn(void 0,r,ws.Cannot_read_file_0_Colon_1,[e,t])),rt);if(i){const t=T_(i),n=ze.get(t);if(n){const t=function(e,t,n,r,i,o,s){var a;const c=TM.createRedirectedSourceFile({redirectTarget:e,unredirected:t});return c.fileName=n,c.path=r,c.resolvedPath=i,c.originalFileName=o,c.packageJsonLocations=(null==(a=s.packageJsonLocations)?void 0:a.length)?s.packageJsonLocations:void 0,c.packageJsonScope=s.packageJsonScope,ge.set(r,me>0),c}(n,u,e,s,Nt(e),a,l);return Be.add(n.path,e),yn(t,s,e,c),gn(t,r,!1),Ue.set(s,S_(i)),j.push(t),t}u&&(ze.set(t,u),Ue.set(s,S_(i)))}if(yn(u,s,e,c),u){if(ge.set(s,me>0),u.fileName=e,u.path=s,u.resolvedPath=Nt(e),u.originalFileName=a,u.packageJsonLocations=(null==(o=l.packageJsonLocations)?void 0:o.length)?l.packageJsonLocations:void 0,u.packageJsonScope=l.packageJsonScope,gn(u,r,!1),ye.useCaseSensitiveFileNames()){const t=bt(s),n=Je.get(t);n?fn(e,n,r):Je.set(t,u)}be=be||u.hasNoDefaultLib&&!n,I.noResolve||(An(u,t),In(u)),I.noLib||Fn(u),Ln(u),t?L.push(u):j.push(u),(G??(G=new Set)).add(u.path)}return u}(e,t,n,r,i);return null==(s=ar)||s.pop(),a}function hn(e,t,n,r){const i=MK(es(e,Ee),null==t?void 0:t.getPackageJsonInfoCache(),n,r),o=MS(r),s=DS(r);return"object"==typeof i?{...i,languageVersion:o,setExternalModuleIndicator:s,jsDocParsingMode:n.jsDocParsingMode}:{languageVersion:o,impliedNodeFormat:i,setExternalModuleIndicator:s,jsDocParsingMode:n.jsDocParsingMode}}function gn(e,t,n){return!(!e||n&&CK(t)&&(null==G?void 0:G.has(t.file)))&&(Z.add(e.path,t),!0)}function yn(e,t,n,r){r?(vn(n,r,e),vn(n,t,e||!1)):vn(n,t,e)}function vn(e,t,n){Ve.set(t,n),void 0!==n?Ke.delete(t):Ke.set(t,e)}function bn(e){const t=xn(e);return t&&Sn(t,e)}function xn(e){if(We&&We.length&&!lO(e)&&!Lo(e,".json"))return wn(e)}function Sn(e,t){const n=e.commandLine.options.outFile;return n?cw(n,".d.ts"):Zq(t,e.commandLine,!ye.useCaseSensitiveFileNames())}function wn(e){void 0===Ge&&(Ge=new Map,kn((e=>{Nt(I.configFilePath)!==e.sourceFile.path&&e.commandLine.fileNames.forEach((t=>Ge.set(Nt(t),e.sourceFile.path)))})));const t=Ge.get(Nt(e));return t&&Nn(t)}function kn(e){return bK(We,e)}function En(e){if(lO(e))return void 0===Qe&&(Qe=new Map,kn((e=>{const t=e.commandLine.options.outFile;if(t){const e=cw(t,".d.ts");Qe.set(Nt(e),!0)}else{const t=St((()=>oV(e.commandLine,!ye.useCaseSensitiveFileNames())));h(e.commandLine.fileNames,(n=>{if(!lO(n)&&!Lo(n,".json")){const r=Zq(n,e.commandLine,!ye.useCaseSensitiveFileNames(),t);Qe.set(Nt(r),n)}}))}}))),Qe.get(e)}function Cn(e){return Ye&&!!wn(e)}function Nn(e){if(He)return He.get(e)||void 0}function An(e,t){h(e.referencedFiles,((n,r)=>{_n(LV(n.fileName,e.fileName),t,!1,void 0,{kind:4,file:e.path,index:r})}))}function In(e){const t=e.typeReferenceDirectives;if(!t.length)return;const n=(null==de?void 0:de.get(e.path))||Ot(t,e),r=EL();(ue??(ue=new Map)).set(e.path,r);for(let i=0;i<t.length;i++){const t=e.typeReferenceDirectives[i],o=n[i],s=t.fileName;r.set(s,sK(t,e.impliedNodeFormat),o);Dn(s,t.resolutionMode||e.impliedNodeFormat,o,{kind:5,file:e.path,index:i})}}function Dn(e,t,n,r){var i,o;null==(i=ar)||i.push(ar.Phase.Program,"processTypeReferenceDirective",{directive:e,hasResolved:!!n.resolvedTypeReferenceDirective,refKind:r.kind,refPath:CK(r)?r.file:void 0}),function(e,t,n,r){vt(n);const{resolvedTypeReferenceDirective:i}=n;i?(i.isExternalLibraryImport&&me++,_n(i.resolvedFileName,!1,!1,i.packageId,r),i.isExternalLibraryImport&&me--):Bn(void 0,r,ws.Cannot_find_type_definition_file_for_0,[e])}(e,0,n,r),null==(o=ar)||o.pop()}function Mn(e){const t=null==oe?void 0:oe.get(e);if(t)return t.actual;const n=On(e);return(oe??(oe=new Map)).set(e,n),n.actual}function On(e){var t,n,r,i,o;const s=null==se?void 0:se.get(e);if(s)return s;if(0!==it&&F&&!Re(e)){const i=null==(t=F.resolvedLibReferences)?void 0:t.get(e);if(i){if(i.resolution&&QR(I,ye)){const t=wK(e),o=TK(I,Ee,e);GR(ye,i.resolution.resolvedModule?i.resolution.resolvedModule.packageId?ws.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:ws.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2:ws.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved,t,es(o,Ee),null==(n=i.resolution.resolvedModule)?void 0:n.resolvedFileName,(null==(r=i.resolution.resolvedModule)?void 0:r.packageId)&&T_(i.resolution.resolvedModule.packageId))}return(se??(se=new Map)).set(e,i),i}}const a=wK(e),c=TK(I,Ee,e);null==(i=ar)||i.push(ar.Phase.Program,"resolveLibrary",{resolveFrom:c}),mr("beforeResolveLibrary");const l=Le(a,c,I,e);mr("afterResolveLibrary"),hr("ResolveLibrary","beforeResolveLibrary","afterResolveLibrary"),null==(o=ar)||o.pop();const u={resolution:l,actual:l.resolvedModule?l.resolvedModule.resolvedFileName:Zo(Te,e)};return(se??(se=new Map)).set(e,u),u}function Fn(e){h(e.libReferenceDirectives,((t,n)=>{const r=EK(t);r?rn(Mn(r),!0,!0,{kind:7,file:e.path,index:n}):(ne||(ne=[])).push({kind:0,reason:{kind:7,file:e.path,index:n}})}))}function Rn(e){return ye.getCanonicalFileName(e)}function Ln(e){var t;if(un(e),e.imports.length||e.moduleAugmentations.length){const n=qK(e),r=(null==ce?void 0:ce.get(e.path))||Mt(n,e);Tn.assert(r.length===n.length);const i=(null==(t=kt(e))?void 0:t.commandLine.options)||I,o=EL();(ae??(ae=new Map)).set(e.path,o);for(let t=0;t<n.length;t++){const s=r[t].resolvedModule,a=n[t].text,c=uK(e,n[t],i);if(o.set(a,c,r[t]),xt(e,a,r[t],c),!s)continue;const l=s.isExternalLibraryImport,u=!pw(s.extension)&&!xn(s.resolvedFileName),d=l&&u&&(!s.originalPath||QL(s.resolvedFileName)),_=s.resolvedFileName;l&&me++;const p=d&&me>fe,f=_&&!BK(i,s,e)&&!i.noResolve&&t<e.imports.length&&!p&&!(u&&!HS(i))&&(Um(e.imports[t])||!(16777216&e.imports[t].flags));p?he.set(e.path,!0):f&&mn(_,!1,!1,{kind:3,file:e.path,index:t},s.packageId),l&&me--}}}function jn(e){He||(He=new Map);const t=UK(e),n=Nt(t),r=He.get(n);if(void 0!==r)return r||void 0;let i,o;if(ye.getParsedCommandLine){if(i=ye.getParsedCommandLine(t),!i)return yn(void 0,n,t,void 0),void He.set(n,!1);o=Tn.checkDefined(i.options.configFile),Tn.assert(!o.path||o.path===n),yn(o,n,t,void 0)}else{const e=es(Vo(t),Ee);if(o=ye.getSourceFile(t,100),yn(o,n,t,void 0),void 0===o)return void He.set(n,!1);i=XF(o,ve,e,void 0,t)}o.fileName=t,o.path=n,o.resolvedPath=n,o.originalFileName=t;const s={commandLine:i,sourceFile:o};return He.set(n,s),i.projectReferences&&(s.references=i.projectReferences.map(jn)),s}function zn(e,t,n,r,i){const o=new Pn(e),s=new Pn(n),a=new Pn(O||l),c=function(){const e=I.ignoreDeprecations;if(e){if("5.0"===e)return new Pn(e);R()}return Pn.zero}(),u=!(1===s.compareTo(a)),d=!u&&-1===c.compareTo(o);(u||d)&&i(((n,i,o)=>{u?void 0===i?r(n,i,o,ws.Option_0_has_been_removed_Please_remove_it_from_your_configuration,n):r(n,i,o,ws.Option_0_1_has_been_removed_Please_remove_it_from_your_configuration,n,i):void 0===i?r(n,i,o,ws.Option_0_is_deprecated_and_will_stop_functioning_in_TypeScript_1_Specify_compilerOption_ignoreDeprecations_Colon_2_to_silence_this_error,n,t,e):r(n,i,o,ws.Option_0_1_is_deprecated_and_will_stop_functioning_in_TypeScript_2_Specify_compilerOption_ignoreDeprecations_Colon_3_to_silence_this_error,n,i,t,e)}))}function Un(e,t,n,r){let i;const o=e&&Z.get(e.path);let s,a,c,l,u,d=CK(t)?t:void 0,p=e&&(null==Q?void 0:Q.get(e.path));p?(p.fileIncludeReasonDetails?(i=new Set(o),null==o||o.forEach(g)):null==o||o.forEach(h),l=p.redirectInfo):(null==o||o.forEach(h),l=e&&lW(e)),t&&h(t);const f=(null==i?void 0:i.size)!==(null==o?void 0:o.length);d&&1===(null==i?void 0:i.size)&&(i=void 0),i&&p&&(p.details&&!f?u=gS(p.details,n,...r||_):p.fileIncludeReasonDetails&&(f?s=y()?_e(p.fileIncludeReasonDetails.next.slice(0,o.length),s[0]):[...p.fileIncludeReasonDetails.next,s[0]]:y()?s=p.fileIncludeReasonDetails.next.slice(0,o.length):c=p.fileIncludeReasonDetails)),u||(c||(c=i&&gS(s,ws.The_file_is_in_the_program_because_Colon)),u=gS(l?c?[c,...l]:l:c,n,...r||_)),e&&(p?(!p.fileIncludeReasonDetails||!f&&c)&&(p.fileIncludeReasonDetails=c):(Q??(Q=new Map)).set(e.path,p={fileIncludeReasonDetails:c,redirectInfo:l}),p.details||f||(p.details=u.next));const m=d&&AK(ot,d);return m&&NK(m)?Qp(m.file,m.pos,m.end-m.pos,u,a):hS(u,a);function h(e){(null==i?void 0:i.has(e))||((i??(i=new Set)).add(e),(s??(s=[])).push(_W(ot,e)),g(e))}function g(e){!d&&CK(e)?d=e:d!==e&&(a=_e(a,function(e){let t=null==Y?void 0:Y.get(e);void 0===t&&(Y??(Y=new Map)).set(e,t=function(e){if(CK(e)){const t=AK(ot,e);let n;switch(e.kind){case 3:n=ws.File_is_included_via_import_here;break;case 4:n=ws.File_is_included_via_reference_here;break;case 5:n=ws.File_is_included_via_type_library_reference_here;break;case 7:n=ws.File_is_included_via_library_reference_here;break;default:Tn.assertNever(e)}return NK(t)?pS(t.file,t.pos,t.end-t.pos,n):void 0}if(!I.configFile)return;let t,n;switch(e.kind){case 0:if(!I.configFile.configFileSpecs)return;const i=es(N[e.index],Ee),o=uW(ot,i);if(o){t=em(I.configFile,"files",o),n=ws.File_is_matched_by_files_list_specified_here;break}const s=dW(ot,i);if(!s||!lt(s))return;t=em(I.configFile,"include",s),n=ws.File_is_matched_by_include_pattern_specified_here;break;case 1:case 2:const a=Tn.checkDefined(null==We?void 0:We[e.index]),c=xK(P,We,((e,t,n)=>e===a?{sourceFile:(null==t?void 0:t.sourceFile)||I.configFile,index:n}:void 0));if(!c)return;const{sourceFile:l,index:u}=c,d=tm(l,"references",(e=>eA(e.initializer)?e.initializer:void 0));return d&&d.elements.length>u?Jp(l,d.elements[u],2===e.kind?ws.File_is_output_from_referenced_project_specified_here:ws.File_is_source_from_referenced_project_specified_here):void 0;case 8:if(!I.types)return;t=Hn("types",e.typeReference),n=ws.File_is_entry_point_of_type_library_specified_here;break;case 6:if(void 0!==e.index){t=Hn("lib",I.lib[e.index]),n=ws.File_is_library_specified_here;break}const _=tT(MS(I));t=_?(r=_,Jn("target",(e=>MC(e.initializer)&&e.initializer.text===r?e.initializer:void 0))):void 0,n=ws.File_is_default_library_for_target_specified_here;break;default:Tn.assertNever(e)}var r;return t&&Jp(I.configFile,t,n)}(e)??!1);return t||void 0}(e)))}function y(){var e;return(null==(e=p.fileIncludeReasonDetails.next)?void 0:e.length)!==(null==o?void 0:o.length)}}function Bn(e,t,n,r){(ne||(ne=[])).push({kind:1,file:e&&e.path,fileProcessingReason:t,diagnostic:n,args:r})}function qn(e,t,n){ke.push({file:e,diagnostic:t,args:n})}function Vn(e,t,n,...r){let i=!0;Wn((o=>{tA(o.initializer)&&Zf(o.initializer,e,(e=>{const o=e.initializer;eA(o)&&o.elements.length>t&&(we.add(Jp(I.configFile,o.elements[t],n,...r)),i=!1)}))})),i&&Xn(n,...r)}function Kn(e,t,n,...r){let i=!0;Wn((o=>{tA(o.initializer)&&tr(o.initializer,e,t,void 0,n,...r)&&(i=!1)})),i&&Xn(n,...r)}function Jn(e,t){return Zf($n(),e,t)}function Wn(e){return Jn("paths",e)}function Hn(e,t){const n=$n();return n&&Xf(n,e,t)}function Gn(e,t,n,r){Zn(!0,t,n,e,t,n,r)}function Qn(e,t,...n){Zn(!1,e,void 0,t,...n)}function Yn(e,t,n,...r){const i=tm(e||I.configFile,"references",(e=>eA(e.initializer)?e.initializer:void 0));i&&i.elements.length>t?we.add(Jp(e||I.configFile,i.elements[t],n,...r)):we.add(mS(n,...r))}function Zn(e,t,n,r,...i){const o=$n();(!o||!tr(o,e,t,n,r,...i))&&Xn(r,...i)}function Xn(e,...t){const n=er();n?"messageText"in e?we.add(Wp(I.configFile,n.name,e)):we.add(Jp(I.configFile,n.name,e,...t)):"messageText"in e?we.add(hS(e)):we.add(mS(e,...t))}function $n(){if(void 0===Ie){const e=er();Ie=e&&dt(e.initializer,tA)||!1}return Ie||void 0}function er(){return void 0===De&&(De=Zf($f(I.configFile),"compilerOptions",gt)||!1),De||void 0}function tr(e,t,n,r,i,...o){let s=!1;return Zf(e,n,(e=>{"messageText"in i?we.add(Wp(I.configFile,t?e.name:e.initializer,i)):we.add(Jp(I.configFile,t?e.name:e.initializer,i,...o)),s=!0}),r),s}function nr(e,t){Ae.set(Nt(e),!0),we.add(t)}function rr(e,t){return 0===ps(e,t,Ee,!ye.useCaseSensitiveFileNames())}function ir(){return ye.getSymlinkCache?ye.getSymlinkCache():(q||(q=dT(Ee,Rn)),B&&!q.hasProcessedResolutions()&&q.setSymlinksFromResolutions(_t,mt,ie),q)}function or(e,t){var n;return uK(e,t,(null==(n=kt(e))?void 0:n.commandLine.options)||I)}}var RK={diagnostics:_,sourceMaps:void 0,emittedFiles:void 0,emitSkipped:!0};function LK(e,t,n,r){const i=e.getCompilerOptions();if(i.noEmit)return e.getSemanticDiagnostics(t,r),t||i.outFile?RK:e.emitBuildInfo(n,r);if(!i.noEmitOnError)return;let o,s=[...e.getOptionsDiagnostics(r),...e.getSyntacticDiagnostics(t,r),...e.getGlobalDiagnostics(r),...e.getSemanticDiagnostics(t,r)];if(0===s.length&&VS(e.getCompilerOptions())&&(s=e.getDeclarationDiagnostics(void 0,r)),s.length){if(!t&&!i.outFile){const t=e.emitBuildInfo(n,r);t.diagnostics&&(s=[...s,...t.diagnostics]),o=t.emittedFiles}return{diagnostics:s,sourceMaps:void 0,emittedFiles:o,emitSkipped:!0}}}function jK(e,t){return M(e,(e=>!e.skippedOn||!t[e.skippedOn]))}function zK(e,t=e){return{fileExists:e=>t.fileExists(e),readDirectory:(e,n,r,i,o)=>(Tn.assertIsDefined(t.readDirectory,"'CompilerHost.readDirectory' must be implemented to correctly process 'projectReferences'"),t.readDirectory(e,n,r,i,o)),readFile:e=>t.readFile(e),directoryExists:tt(t,t.directoryExists),getDirectories:tt(t,t.getDirectories),realpath:tt(t,t.realpath),useCaseSensitiveFileNames:e.useCaseSensitiveFileNames(),getCurrentDirectory:()=>e.getCurrentDirectory(),onUnRecoverableConfigFileDiagnostic:e.onUnRecoverableConfigFileDiagnostic||ht,trace:e.trace?t=>e.trace(t):void 0}}function UK(e){return RW(e.path)}function BK(e,{extension:t},{isDeclarationFile:n}){switch(t){case".ts":case".d.ts":case".mts":case".d.mts":case".cts":case".d.cts":return;case".tsx":return r();case".jsx":return r()||i();case".js":case".mjs":case".cjs":return i();case".json":return qS(e)?void 0:ws.Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used;default:return n||e.allowArbitraryExtensions?void 0:ws.Module_0_was_resolved_to_1_but_allowArbitraryExtensions_is_not_set}function r(){return e.jsx?void 0:ws.Module_0_was_resolved_to_1_but_jsx_is_not_set}function i(){return HS(e)||!eT(e,"noImplicitAny")?void 0:ws.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type}}function qK({imports:e,moduleAugmentations:t}){const n=e.map((e=>e));for(const r of t)11===r.kind&&n.push(r);return n}function VK({imports:e,moduleAugmentations:t},n){if(n<e.length)return e[n];let r=e.length;for(const i of t)if(11===i.kind){if(n===r)return i;r++}Tn.fail("should never ask for module name at index higher than possible module name")}function KK(e,t,n,r,i,o){const s=[],{emitSkipped:a,diagnostics:c}=e.emit(t,(function(e,t,n){s.push({name:e,writeByteOrderMark:n,text:t})}),r,n,i,o);return{outputFiles:s,emitSkipped:a,diagnostics:c}}var JK,WK=(e=>(e[e.ComputedDts=0]="ComputedDts",e[e.StoredSignatureAtEmit=1]="StoredSignatureAtEmit",e[e.UsedVersion=2]="UsedVersion",e))(WK||{});(e=>{function t(){return function(e,t,r){const i={getKeys:e=>t.get(e),getValues:t=>e.get(t),keys:()=>e.keys(),size:()=>e.size,deleteKey:i=>{(r||(r=new Set)).add(i);const o=e.get(i);return!!o&&(o.forEach((e=>n(t,e,i))),e.delete(i),!0)},set:(o,s)=>{null==r||r.delete(o);const a=e.get(o);return e.set(o,s),null==a||a.forEach((e=>{s.has(e)||n(t,e,o)})),s.forEach((e=>{(null==a?void 0:a.has(e))||function(e,t,n){let r=e.get(t);r||(r=new Set,e.set(t,r));r.add(n)}(t,e,o)})),i}};return i}(new Map,new Map,void 0)}function n(e,t,n){const r=e.get(t);return!!(null==r?void 0:r.delete(n))&&(r.size||e.delete(t),!0)}function r(e,t){const n=e.getSymbolAtLocation(t);return n&&function(e){return J(e.declarations,(e=>{var t;return null==(t=C_(e))?void 0:t.resolvedPath}))}(n)}function i(e,t,n,r){return rs(e.getProjectReferenceRedirect(t)||t,n,r)}function o(e,t,n){let o;if(t.imports&&t.imports.length>0){const n=e.getTypeChecker();for(const e of t.imports){const t=r(n,e);null==t||t.forEach(c)}}const s=Vo(t.resolvedPath);if(t.referencedFiles&&t.referencedFiles.length>0)for(const r of t.referencedFiles){c(i(e,r.fileName,s,n))}if(e.forEachResolvedTypeReferenceDirective((({resolvedTypeReferenceDirective:t})=>{if(!t)return;const r=t.resolvedFileName;c(i(e,r,s,n))}),t),t.moduleAugmentations.length){const n=e.getTypeChecker();for(const e of t.moduleAugmentations){if(!MC(e))continue;const t=n.getSymbolAtLocation(e);t&&a(t)}}for(const r of e.getTypeChecker().getAmbientModules())r.declarations&&r.declarations.length>1&&a(r);return o;function a(e){if(e.declarations)for(const n of e.declarations){const e=C_(n);e&&e!==t&&c(e.resolvedPath)}}function c(e){(o||(o=new Set)).add(e)}}function s(e,t){return t&&!t.referencedMap==!e}function a(e){return 0===e.module||e.outFile?void 0:t()}function c(e,t,n,r,i){const o=t.getSourceFileByPath(n);return o?u(e,t,o,r,i)?(e.referencedMap?g:h)(e,t,o,r,i):[o]:_}function l(e,t,n,r,i){e.emit(t,((n,o,s,a,c,l)=>{Tn.assert(lO(n),`File extension for signature expected to be dts: Got:: ${n}`),i(yJ(e,t,o,r,l),c)}),n,2,void 0,!0)}function u(e,t,n,r,i,o=e.useFileVersionAsSignature){var s;if(null==(s=e.hasCalledUpdateShapeSignature)?void 0:s.has(n.resolvedPath))return!1;const a=e.fileInfos.get(n.resolvedPath),c=a.signature;let u;return n.isDeclarationFile||o||l(t,n,r,i,(t=>{u=t,i.storeSignatureInfo&&(e.signatureInfo??(e.signatureInfo=new Map)).set(n.resolvedPath,0)})),void 0===u&&(u=n.version,i.storeSignatureInfo&&(e.signatureInfo??(e.signatureInfo=new Map)).set(n.resolvedPath,2)),(e.oldSignatures||(e.oldSignatures=new Map)).set(n.resolvedPath,c||!1),(e.hasCalledUpdateShapeSignature||(e.hasCalledUpdateShapeSignature=new Set)).add(n.resolvedPath),a.signature=u,u!==c}function d(e,t){if(!e.allFileNames){const n=t.getSourceFiles();e.allFileNames=n===_?_:n.map((e=>e.fileName))}return e.allFileNames}function p(e,t){const n=e.referencedMap.getKeys(t);return n?Ke(n.keys()):[]}function f(e){return function(e){return $(e.moduleAugmentations,(e=>yp(e.parent)))}(e)||!of(e)&&!sf(e)&&!function(e){for(const t of e.statements)if(!pp(t))return!1;return!0}(e)}function m(e,t,n){if(e.allFilesExcludingDefaultLibraryFile)return e.allFilesExcludingDefaultLibraryFile;let r;n&&i(n);for(const o of t.getSourceFiles())o!==n&&i(o);return e.allFilesExcludingDefaultLibraryFile=r||_,e.allFilesExcludingDefaultLibraryFile;function i(e){t.isSourceFileDefaultLibrary(e)||(r||(r=[])).push(e)}}function h(e,t,n){const r=t.getCompilerOptions();return r&&r.outFile?[n]:m(e,t,n)}function g(e,t,n,r,i){if(f(n))return m(e,t,n);const o=t.getCompilerOptions();if(o&&(LS(o)||o.outFile))return[n];const s=new Map;s.set(n.resolvedPath,n);const a=p(e,n.resolvedPath);for(;a.length>0;){const n=a.pop();if(!s.has(n)){const o=t.getSourceFileByPath(n);s.set(n,o),o&&u(e,t,o,r,i)&&a.push(...p(e,o.resolvedPath))}}return Ke(W(s.values(),(e=>e)))}e.createManyToManyPathMap=t,e.canReuseOldState=s,e.createReferencedMap=a,e.create=function(e,t,n){var r,i;const c=new Map,l=e.getCompilerOptions(),u=a(l),d=s(u,t);e.getTypeChecker();for(const s of e.getSourceFiles()){const n=Tn.checkDefined(s.version,"Program intended to be used with Builder should have source files with versions set"),a=d?null==(r=t.oldSignatures)?void 0:r.get(s.resolvedPath):void 0,_=void 0===a?d?null==(i=t.fileInfos.get(s.resolvedPath))?void 0:i.signature:void 0:a||void 0;if(u){const t=o(e,s,e.getCanonicalFileName);t&&u.set(s.resolvedPath,t)}c.set(s.resolvedPath,{version:n,signature:_,affectsGlobalScope:l.outFile?void 0:f(s)||void 0,impliedFormat:s.impliedNodeFormat})}return{fileInfos:c,referencedMap:u,useFileVersionAsSignature:!n&&!d}},e.releaseCache=function(e){e.allFilesExcludingDefaultLibraryFile=void 0,e.allFileNames=void 0},e.getFilesAffectedBy=function(e,t,n,r,i){var o;const s=c(e,t,n,r,i);return null==(o=e.oldSignatures)||o.clear(),s},e.getFilesAffectedByWithOldState=c,e.updateSignatureOfFile=function(e,t,n){e.fileInfos.get(n).signature=t,(e.hasCalledUpdateShapeSignature||(e.hasCalledUpdateShapeSignature=new Set)).add(n)},e.computeDtsSignature=l,e.updateShapeSignature=u,e.getAllDependencies=function(e,t,n){if(t.getCompilerOptions().outFile)return d(e,t);if(!e.referencedMap||f(n))return d(e,t);const r=new Set,i=[n.resolvedPath];for(;i.length;){const t=i.pop();if(!r.has(t)){r.add(t);const n=e.referencedMap.getValues(t);if(n)for(const e of n.keys())i.push(e)}}return Ke(W(r.keys(),(e=>{var n;return(null==(n=t.getSourceFileByPath(e))?void 0:n.fileName)??e})))},e.getReferencedByPaths=p,e.getAllFilesExcludingDefaultLibraryFile=m})(JK||(JK={}));var HK=(e=>(e[e.None=0]="None",e[e.Js=1]="Js",e[e.JsMap=2]="JsMap",e[e.JsInlineMap=4]="JsInlineMap",e[e.Dts=8]="Dts",e[e.DtsMap=16]="DtsMap",e[e.AllJs=7]="AllJs",e[e.AllDts=24]="AllDts",e[e.All=31]="All",e))(HK||{});function GK(e){let t=1;return e.sourceMap&&(t|=2),e.inlineSourceMap&&(t|=4),VS(e)&&(t|=8),e.declarationMap&&(t|=16),e.emitDeclarationOnly&&(t&=24),t}function QK(e,t){const n=t&&(ut(t)?t:GK(t)),r=ut(e)?e:GK(e);if(n===r)return 0;if(!n||!r)return r;const i=n^r;let o=0;return 7&i&&(o=7&r),24&i&&(o|=24&r),o}function YK(e,t){var n,r;const i=JK.create(e,t,!1);i.program=e;const o=e.getCompilerOptions();i.compilerOptions=o;const s=o.outFile;s?o.composite&&(null==t?void 0:t.outSignature)&&s===t.compilerOptions.outFile&&(i.outSignature=t.outSignature&&XK(o,t.compilerOptions,t.outSignature)):i.semanticDiagnosticsPerFile=new Map,i.changedFilesSet=new Set,i.latestChangedDtsFile=o.composite?null==t?void 0:t.latestChangedDtsFile:void 0;const a=JK.canReuseOldState(i.referencedMap,t),c=a?t.compilerOptions:void 0,l=a&&t.semanticDiagnosticsPerFile&&!!i.semanticDiagnosticsPerFile&&!rT(o,c),u=o.composite&&(null==t?void 0:t.emitSignatures)&&!s&&!oT(o,t.compilerOptions);a?(null==(n=t.changedFilesSet)||n.forEach((e=>i.changedFilesSet.add(e))),!s&&(null==(r=t.affectedFilesPendingEmit)?void 0:r.size)&&(i.affectedFilesPendingEmit=new Map(t.affectedFilesPendingEmit),i.seenAffectedFiles=new Set),i.programEmitPending=t.programEmitPending):i.buildInfoEmitPending=!0;const d=i.referencedMap,_=a?t.referencedMap:void 0,p=l&&!o.skipLibCheck==!c.skipLibCheck,f=p&&!o.skipDefaultLibCheck==!c.skipDefaultLibCheck;if(i.fileInfos.forEach(((n,r)=>{var s;let c,m;if(!a||!(c=t.fileInfos.get(r))||c.version!==n.version||c.impliedFormat!==n.impliedFormat||(h=m=d&&d.getValues(r),g=_&&_.getValues(r),h!==g&&(void 0===h||void 0===g||h.size!==g.size||m_(h,(e=>!g.has(e)))))||m&&m_(m,(e=>!i.fileInfos.has(e)&&t.fileInfos.has(e))))ZK(i,r);else{const n=e.getSourceFileByPath(r),o=null==(s=t.emitDiagnosticsPerFile)?void 0:s.get(r);if(o&&(i.emitDiagnosticsPerFile??(i.emitDiagnosticsPerFile=new Map)).set(r,t.hasReusableDiagnostic?nJ(o,r,e):$K(o,e)),l){if(n.isDeclarationFile&&!p)return;if(n.hasNoDefaultLib&&!f)return;const o=t.semanticDiagnosticsPerFile.get(r);o&&(i.semanticDiagnosticsPerFile.set(r,t.hasReusableDiagnostic?nJ(o,r,e):$K(o,e)),(i.semanticDiagnosticsFromOldState??(i.semanticDiagnosticsFromOldState=new Set)).add(r))}}var h,g;if(u){const e=t.emitSignatures.get(r);e&&(i.emitSignatures??(i.emitSignatures=new Map)).set(r,XK(o,t.compilerOptions,e))}})),a&&f_(t.fileInfos,((e,t)=>!i.fileInfos.has(t)&&(!(!s&&!e.affectsGlobalScope)||(i.buildInfoEmitPending=!0,!1)))))JK.getAllFilesExcludingDefaultLibraryFile(i,e,void 0).forEach((e=>ZK(i,e.resolvedPath)));else if(c){const t=iT(o,c)?GK(o):QK(o,c);0!==t&&(s?i.programEmitPending=i.programEmitPending?i.programEmitPending|t:t:(e.getSourceFiles().forEach((e=>{i.changedFilesSet.has(e.resolvedPath)||xJ(i,e.resolvedPath,t)})),Tn.assert(!i.seenAffectedFiles||!i.seenAffectedFiles.size),i.seenAffectedFiles=i.seenAffectedFiles||new Set,i.buildInfoEmitPending=!0))}return i}function ZK(e,t){e.changedFilesSet.add(t),e.buildInfoEmitPending=!0,e.programEmitPending=void 0}function XK(e,t,n){return!!e.declarationMap==!!t.declarationMap?n:lt(n)?[n]:n[0]}function $K(e,t){return e.length?j(e,(e=>{if(lt(e.messageText))return e;const n=eJ(e.messageText,e.file,t,(e=>{var t;return null==(t=e.repopulateInfo)?void 0:t.call(e)}));return n===e.messageText?e:{...e,messageText:n}})):e}function eJ(e,t,n,r){const i=r(e);if(i)return{...x_(t,n,i.moduleReference,i.mode,i.packageName||i.moduleReference),next:tJ(e.next,t,n,r)};const o=tJ(e.next,t,n,r);return o===e.next?e:{...e,next:o}}function tJ(e,t,n,r){return j(e,(e=>eJ(e,t,n,r)))}function nJ(e,t,n){if(!e.length)return _;let r;return e.map((e=>{const r=rJ(e,t,n,i);r.reportsUnnecessary=e.reportsUnnecessary,r.reportsDeprecated=e.reportDeprecated,r.source=e.source,r.skippedOn=e.skippedOn;const{relatedInformation:o}=e;return r.relatedInformation=o?o.length?o.map((e=>rJ(e,t,n,i))):[]:void 0,r}));function i(e){return r??(r=Vo(es(Jq(n.getCompilerOptions()),n.getCurrentDirectory()))),rs(e,r,n.getCanonicalFileName)}}function rJ(e,t,n,r){const{file:i}=e,o=!1!==i?n.getSourceFileByPath(i?r(i):t):void 0;return{...e,file:o,messageText:lt(e.messageText)?e.messageText:eJ(e.messageText,o,n,(e=>e.info))}}function iJ(e,t){Tn.assert(!t||!e.affectedFiles||e.affectedFiles[e.affectedFilesIndex-1]!==t||!e.semanticDiagnosticsPerFile.has(t.resolvedPath))}function oJ(e,t,n){for(var r;;){const{affectedFiles:i}=e;if(i){const o=e.seenAffectedFiles;let s=e.affectedFilesIndex;for(;s<i.length;){const r=i[s];if(!o.has(r.resolvedPath))return e.affectedFilesIndex=s,xJ(e,r.resolvedPath,GK(e.compilerOptions)),aJ(e,r,t,n),r;s++}e.changedFilesSet.delete(e.currentChangedFilePath),e.currentChangedFilePath=void 0,null==(r=e.oldSignatures)||r.clear(),e.affectedFiles=void 0}const o=e.changedFilesSet.keys().next();if(o.done)return;const s=Tn.checkDefined(e.program);if(s.getCompilerOptions().outFile)return Tn.assert(!e.semanticDiagnosticsPerFile),s;e.affectedFiles=JK.getFilesAffectedByWithOldState(e,s,o.value,t,n),e.currentChangedFilePath=o.value,e.affectedFilesIndex=0,e.seenAffectedFiles||(e.seenAffectedFiles=new Set)}}function sJ(e){if(!e.cleanedDiagnosticsOfLibFiles){e.cleanedDiagnosticsOfLibFiles=!0;const t=Tn.checkDefined(e.program),n=t.getCompilerOptions();h(t.getSourceFiles(),(r=>t.isSourceFileDefaultLibrary(r)&&!kw(r,n,t)&&lJ(e,r.resolvedPath)))}}function aJ(e,t,n,r){if(lJ(e,t.resolvedPath),e.allFilesExcludingDefaultLibraryFile===e.affectedFiles)return sJ(e),void JK.updateShapeSignature(e,Tn.checkDefined(e.program),t,n,r);e.compilerOptions.assumeChangesOnlyAffectDirectDependencies||function(e,t,n,r){var i,o;if(!e.referencedMap||!e.changedFilesSet.has(t.resolvedPath))return;if(!uJ(e,t.resolvedPath))return;if(LS(e.compilerOptions)){const i=new Map;i.set(t.resolvedPath,!0);const o=JK.getReferencedByPaths(e,t.resolvedPath);for(;o.length>0;){const t=o.pop();if(!i.has(t)){if(i.set(t,!0),dJ(e,t,!1,n,r))return;if(cJ(e,t,!1,n,r),uJ(e,t)){const n=Tn.checkDefined(e.program).getSourceFileByPath(t);o.push(...JK.getReferencedByPaths(e,n.resolvedPath))}}}}const s=new Set,a=!!(null==(i=t.symbol)?void 0:i.exports)&&!!f_(t.symbol.exports,(n=>{if(128&n.flags)return!0;const r=Sx(n,e.program.getTypeChecker());return r!==n&&(!!(128&r.flags)&&$(r.declarations,(e=>C_(e)===t)))}));null==(o=e.referencedMap.getKeys(t.resolvedPath))||o.forEach((t=>{if(dJ(e,t,a,n,r))return!0;const i=e.referencedMap.getKeys(t);return i&&m_(i,(t=>_J(e,t,a,s,n,r)))}))}(e,t,n,r)}function cJ(e,t,n,r,i){if(lJ(e,t),!e.changedFilesSet.has(t)){const o=Tn.checkDefined(e.program),s=o.getSourceFileByPath(t);s&&(JK.updateShapeSignature(e,o,s,r,i,!0),n?xJ(e,t,GK(e.compilerOptions)):VS(e.compilerOptions)&&xJ(e,t,e.compilerOptions.declarationMap?24:8))}}function lJ(e,t){return!e.semanticDiagnosticsFromOldState||(e.semanticDiagnosticsFromOldState.delete(t),e.semanticDiagnosticsPerFile.delete(t),!e.semanticDiagnosticsFromOldState.size)}function uJ(e,t){const n=Tn.checkDefined(e.oldSignatures).get(t)||void 0;return Tn.checkDefined(e.fileInfos.get(t)).signature!==n}function dJ(e,t,n,r,i){var o;return!!(null==(o=e.fileInfos.get(t))?void 0:o.affectsGlobalScope)&&(JK.getAllFilesExcludingDefaultLibraryFile(e,e.program,void 0).forEach((t=>cJ(e,t.resolvedPath,n,r,i))),sJ(e),!0)}function _J(e,t,n,r,i,o){var s;if(Q(r,t)){if(dJ(e,t,n,i,o))return!0;cJ(e,t,n,i,o),null==(s=e.referencedMap.getKeys(t))||s.forEach((t=>_J(e,t,n,r,i,o)))}}function pJ(e,t,n){return te(function(e,t,n){const r=t.resolvedPath;if(e.semanticDiagnosticsPerFile){const t=e.semanticDiagnosticsPerFile.get(r);if(t)return jK(t,e.compilerOptions)}const i=Tn.checkDefined(e.program).getBindAndCheckDiagnostics(t,n);e.semanticDiagnosticsPerFile&&e.semanticDiagnosticsPerFile.set(r,i);return jK(i,e.compilerOptions)}(e,t,n),Tn.checkDefined(e.program).getProgramDiagnostics(t))}function fJ(e){var t;return!!(null==(t=e.options)?void 0:t.outFile)}var mJ=(e=>(e[e.SemanticDiagnosticsBuilderProgram=0]="SemanticDiagnosticsBuilderProgram",e[e.EmitAndSemanticDiagnosticsBuilderProgram=1]="EmitAndSemanticDiagnosticsBuilderProgram",e))(mJ||{});function hJ(e,t,n,r,i,o){let s,a,c;return void 0===e?(Tn.assert(void 0===t),s=n,c=r,Tn.assert(!!c),a=c.getProgram()):at(e)?(c=r,a=FK({rootNames:e,options:t,host:n,oldProgram:c&&c.getProgramOrUndefined(),configFileParsingDiagnostics:i,projectReferences:o}),s=n):(a=e,s=t,c=n,i=r),{host:s,newProgram:a,oldProgram:c,configFileParsingDiagnostics:i||_}}function gJ(e,t){return void 0!==(null==t?void 0:t.sourceMapUrlPos)?e.substring(0,t.sourceMapUrlPos):e}function yJ(e,t,n,r,i){var o;let s;return n=gJ(n,i),(null==(o=null==i?void 0:i.diagnostics)?void 0:o.length)&&(n+=i.diagnostics.map((n=>`${function(n){if(n.file.resolvedPath===t.resolvedPath)return`(${n.start},${n.length})`;void 0===s&&(s=Vo(t.resolvedPath));return`${ss(gs(s,n.file.resolvedPath,e.getCanonicalFileName))}(${n.start},${n.length})`}(n)}${bi[n.category]}${n.code}: ${a(n.messageText)}`)).join("\n")),(r.createHash??Yi)(n);function a(e){return lt(e)?e:void 0===e?"":e.next?e.messageText+e.next.map(a).join("\n"):e.messageText}}function vJ(e,t,n){return(t.createHash??Yi)(gJ(e,n))}function bJ(e,{newProgram:t,host:n,oldProgram:r,configFileParsingDiagnostics:i}){let o=r&&r.getState();if(o&&t===o.program&&i===t.getConfigFileParsingDiagnostics())return t=void 0,o=void 0,r;const s=YK(t,o);t.getBuildInfo=()=>function(e){var t,n;const r=Tn.checkDefined(e.program).getCurrentDirectory(),i=Vo(es(Jq(e.compilerOptions),r)),o=e.latestChangedDtsFile?x(e.latestChangedDtsFile):void 0,s=[],a=new Map,c=new Set(e.program.getRootFileNames().map((t=>rs(t,r,e.program.getCanonicalFileName)))),l=[];if(e.compilerOptions.outFile){const t=Ke(e.fileInfos.entries(),(([e,t])=>(k(e,T(e)),t.impliedFormat?{version:t.version,impliedFormat:t.impliedFormat,signature:void 0,affectsGlobalScope:void 0}:t.version)));return dV({fileNames:s,fileInfos:t,root:l,resolvedRoot:E(),options:C(e.compilerOptions),outSignature:e.outSignature,latestChangedDtsFile:o,pendingEmit:e.programEmitPending?e.programEmitPending!==GK(e.compilerOptions)&&e.programEmitPending:void 0})}let u,d,p;const f=Ke(e.fileInfos.entries(),(([t,n])=>{var r,i;const o=T(t);k(t,o),Tn.assert(s[o-1]===S(t));const a=null==(r=e.oldSignatures)?void 0:r.get(t),c=void 0!==a?a||void 0:n.signature;if(e.compilerOptions.composite){const n=e.program.getSourceFileByPath(t);if(!sf(n)&&uv(n,e.program)){const n=null==(i=e.emitSignatures)?void 0:i.get(t);n!==c&&(p=_e(p,void 0===n?o:[o,lt(n)||n[0]!==c?n:_]))}}return n.version===c?n.affectsGlobalScope||n.impliedFormat?{version:n.version,signature:void 0,affectsGlobalScope:n.affectsGlobalScope,impliedFormat:n.impliedFormat}:n.version:void 0!==c?void 0===a?n:{version:n.version,signature:c,affectsGlobalScope:n.affectsGlobalScope,impliedFormat:n.impliedFormat}:{version:n.version,signature:!1,affectsGlobalScope:n.affectsGlobalScope,impliedFormat:n.impliedFormat}}));let m;(null==(t=e.referencedMap)?void 0:t.size())&&(m=Ke(e.referencedMap.keys()).sort(Lt).map((t=>[T(t),w(e.referencedMap.getValues(t))])));const g=function(){let t;return e.fileInfos.forEach(((n,r)=>{var i;const o=null==(i=e.semanticDiagnosticsPerFile)?void 0:i.get(r);o?o.length&&(t=_e(t,[T(r),A(o,r)])):e.changedFilesSet.has(r)||(t=_e(t,T(r)))})),t}();let y,v;if(null==(n=e.affectedFilesPendingEmit)?void 0:n.size){const t=GK(e.compilerOptions),n=new Set;for(const r of Ke(e.affectedFilesPendingEmit.keys()).sort(Lt))if(Q(n,r)){const n=e.program.getSourceFileByPath(r);if(!n||!uv(n,e.program))continue;const i=T(r),o=e.affectedFilesPendingEmit.get(r);y=_e(y,o===t?i:8===o?[i]:[i,o])}}if(e.changedFilesSet.size)for(const _ of Ke(e.changedFilesSet.keys()).sort(Lt))v=_e(v,T(_));const b=function(){var t;let n;if(!(null==(t=e.emitDiagnosticsPerFile)?void 0:t.size))return n;for(const r of Ke(e.emitDiagnosticsPerFile.keys()).sort(Lt)){const t=e.emitDiagnosticsPerFile.get(r);n=_e(n,[T(r),A(t,r)])}return n}();return dV({fileNames:s,fileInfos:f,root:l,resolvedRoot:E(),options:C(e.compilerOptions),fileIdsList:u,referencedMap:m,semanticDiagnosticsPerFile:g,emitDiagnosticsPerFile:b,affectedFilesPendingEmit:y,changeFileSet:v,emitSignatures:p,latestChangedDtsFile:o});function x(e){return S(es(e,r))}function S(t){return ss(gs(i,t,e.program.getCanonicalFileName))}function T(e){let t=a.get(e);return void 0===t&&(s.push(S(e)),a.set(e,t=s.length)),t}function w(e){const t=Ke(e.keys(),T).sort(Pt),n=t.join();let r=null==d?void 0:d.get(n);return void 0===r&&(u=_e(u,t),(d??(d=new Map)).set(n,r=u.length)),r}function k(t,n){const r=e.program.getSourceFile(t);if(!e.program.getFileIncludeReasons().get(r.path).some((e=>0===e.kind)))return;if(!l.length)return l.push(n);const i=l[l.length-1],o=at(i);if(o&&i[1]===n-1)return i[1]=n;if(o||1===l.length||i!==n-1)return l.push(n);const s=l[l.length-2];return ut(s)&&s===i-1?(l[l.length-2]=[s,n],l.length=l.length-1):l.push(n)}function E(){let t;return c.forEach((n=>{const r=e.program.getSourceFileByPath(n);r&&n!==r.resolvedPath&&(t=_e(t,[T(r.resolvedPath),T(n)]))})),t}function C(e){let t;const{optionsNameMap:n}=HO();for(const r of Ue(e).sort(Lt)){const i=n.get(r.toLowerCase());(null==i?void 0:i.affectsBuildInfo)&&((t||(t={}))[r]=N(i,e[r]))}return t}function N(e,t){if(e)if(Tn.assert("listOrElement"!==e.type),"list"===e.type){const n=t;if(e.element.isFilePath&&n.length)return n.map(x)}else if(e.isFilePath)return x(t);return t}function A(e,t){return Tn.assert(!!e.length),e.map((e=>{const n=I(e,t);n.reportsUnnecessary=e.reportsUnnecessary,n.reportDeprecated=e.reportsDeprecated,n.source=e.source,n.skippedOn=e.skippedOn;const{relatedInformation:r}=e;return n.relatedInformation=r?r.length?r.map((e=>I(e,t))):[]:void 0,n}))}function I(e,t){const{file:n}=e;return{...e,file:!!n&&(n.resolvedPath===t?void 0:S(n.resolvedPath)),messageText:lt(e.messageText)?e.messageText:D(e.messageText)}}function D(e){if(e.repopulateInfo)return{info:e.repopulateInfo(),next:P(e.next)};const t=P(e.next);return t===e.next?e:{...e,next:t}}function P(e){return e&&h(e,((t,n)=>{const r=D(t);if(t===r)return;const i=n>0?e.slice(0,n-1):[];i.push(r);for(let o=n+1;o<e.length;o++)i.push(D(e[o]));return i}))||e}}(s),t=void 0,r=void 0,o=void 0;const a=()=>s,c=CJ(a,i);return c.getState=a,c.saveEmitState=()=>function(e){const t=e.compilerOptions.outFile;return Tn.assert(!e.changedFilesSet.size||t),{affectedFilesPendingEmit:e.affectedFilesPendingEmit&&new Map(e.affectedFilesPendingEmit),seenEmittedFiles:e.seenEmittedFiles&&new Map(e.seenEmittedFiles),programEmitPending:e.programEmitPending,emitSignatures:e.emitSignatures&&new Map(e.emitSignatures),outSignature:e.outSignature,latestChangedDtsFile:e.latestChangedDtsFile,hasChangedEmitSignature:e.hasChangedEmitSignature,changedFilesSet:t?new Set(e.changedFilesSet):void 0,buildInfoEmitPending:e.buildInfoEmitPending,emitDiagnosticsPerFile:e.emitDiagnosticsPerFile&&new Map(e.emitDiagnosticsPerFile)}}(s),c.restoreEmitState=e=>function(e,t){e.affectedFilesPendingEmit=t.affectedFilesPendingEmit,e.seenEmittedFiles=t.seenEmittedFiles,e.programEmitPending=t.programEmitPending,e.emitSignatures=t.emitSignatures,e.outSignature=t.outSignature,e.latestChangedDtsFile=t.latestChangedDtsFile,e.hasChangedEmitSignature=t.hasChangedEmitSignature,e.buildInfoEmitPending=t.buildInfoEmitPending,e.emitDiagnosticsPerFile=t.emitDiagnosticsPerFile,t.changedFilesSet&&(e.changedFilesSet=t.changedFilesSet)}(s,e),c.hasChangedEmitSignature=()=>!!s.hasChangedEmitSignature,c.getAllDependencies=e=>JK.getAllDependencies(s,Tn.checkDefined(s.program),e),c.getSemanticDiagnostics=function(e,t){iJ(s,e);if(Tn.checkDefined(s.program).getCompilerOptions().outFile)return Tn.assert(!s.semanticDiagnosticsPerFile),Tn.checkDefined(s.program).getSemanticDiagnostics(e,t);if(e)return pJ(s,e,t);for(;d(t););let n;for(const r of Tn.checkDefined(s.program).getSourceFiles())n=me(n,pJ(s,r,t));return n||_},c.emit=function(t,n,r,i,o){1===e&&iJ(s,t);const a=LK(c,t,n,r);if(a)return a;if(!t){if(1===e){let e,t,s=[],a=!1,c=[];for(;t=l(n,r,i,o);)a=a||t.result.emitSkipped,e=me(e,t.result.diagnostics),c=me(c,t.result.emittedFiles),s=me(s,t.result.sourceMaps);return{emitSkipped:a,diagnostics:e||_,emittedFiles:c,sourceMaps:s}}!function(e,t){var n;if(null==(n=e.affectedFilesPendingEmit)?void 0:n.size)t?e.affectedFilesPendingEmit.forEach(((t,n)=>{const r=7&t;r?e.affectedFilesPendingEmit.set(n,r):e.affectedFilesPendingEmit.delete(n)})):e.affectedFilesPendingEmit=void 0}(s,i)}return Tn.checkDefined(s.program).emit(t,u(n,o),r,i,o)},c.releaseProgram=()=>function(e){JK.releaseCache(e),e.program=void 0}(s),0===e?c.getSemanticDiagnosticsOfNextAffectedFile=d:1===e?(c.getSemanticDiagnosticsOfNextAffectedFile=d,c.emitNextAffectedFile=l,c.emitBuildInfo=function(e,t){if(s.buildInfoEmitPending){const r=Tn.checkDefined(s.program).emitBuildInfo(e||tt(n,n.writeFile),t);return s.buildInfoEmitPending=!1,r}return RK}):xt(),c;function l(e,t,r,i){var o,a,c;let l=oJ(s,t,n);const d=GK(s.compilerOptions);let _,p=r?24&d:d;if(!l)if(s.compilerOptions.outFile){if(!s.programEmitPending)return;if(p=s.programEmitPending,r&&(p&=24),!p)return;l=s.program}else{const i=function(e,t){var n;if(null==(n=e.affectedFilesPendingEmit)?void 0:n.size)return f_(e.affectedFilesPendingEmit,((n,r)=>{var i;const o=e.program.getSourceFileByPath(r);if(!o||!uv(o,e.program))return void e.affectedFilesPendingEmit.delete(r);let s=QK(n,null==(i=e.seenEmittedFiles)?void 0:i.get(o.resolvedPath));return t&&(s&=24),s?{affectedFile:o,emitKind:s}:void 0}))}(s,r);if(!i){const r=function(e){var t;if(null==(t=e.emitDiagnosticsPerFile)?void 0:t.size)return f_(e.emitDiagnosticsPerFile,((t,n)=>{var r;const i=e.program.getSourceFileByPath(n);if(!i||!uv(i,e.program))return void e.emitDiagnosticsPerFile.delete(n);const o=(null==(r=e.seenEmittedFiles)?void 0:r.get(i.resolvedPath))||0;return 24&o?void 0:{affectedFile:i,diagnostics:t,seenKind:o}}))}(s);if(r)return(s.seenEmittedFiles??(s.seenEmittedFiles=new Map)).set(r.affectedFile.resolvedPath,24|r.seenKind),{result:{emitSkipped:!0,diagnostics:r.diagnostics},affected:r.affectedFile};if(!s.buildInfoEmitPending)return;const i=s.program,o=i.emitBuildInfo(e||tt(n,n.writeFile),t);return s.buildInfoEmitPending=!1,{result:o,affected:i}}({affectedFile:l,emitKind:p}=i)}7&p&&(_=0),24&p&&(_=void 0===_?1:void 0),l===s.program&&(s.programEmitPending=s.changedFilesSet.size?QK(d,p):s.programEmitPending?QK(s.programEmitPending,p):void 0);const f=s.program.emit(l===s.program?void 0:l,u(e,i),t,_,i);if(l!==s.program){const e=l;s.seenAffectedFiles.add(e.resolvedPath),void 0!==s.affectedFilesIndex&&s.affectedFilesIndex++,s.buildInfoEmitPending=!0;const t=(null==(o=s.seenEmittedFiles)?void 0:o.get(e.resolvedPath))||0;(s.seenEmittedFiles??(s.seenEmittedFiles=new Map)).set(e.resolvedPath,p|t);const n=QK((null==(a=s.affectedFilesPendingEmit)?void 0:a.get(e.resolvedPath))||d,p|t);n?(s.affectedFilesPendingEmit??(s.affectedFilesPendingEmit=new Map)).set(e.resolvedPath,n):null==(c=s.affectedFilesPendingEmit)||c.delete(e.resolvedPath),f.diagnostics.length&&(s.emitDiagnosticsPerFile??(s.emitDiagnosticsPerFile=new Map)).set(e.resolvedPath,f.diagnostics)}else s.changedFilesSet.clear();return{result:f,affected:l}}function u(e,t){return VS(s.compilerOptions)?(r,i,o,a,c,l)=>{var u,d,_;if(lO(r))if(s.compilerOptions.outFile){if(s.compilerOptions.composite){const e=p(s.outSignature,void 0);if(!e)return;s.outSignature=e}}else{let e;if(Tn.assert(1===(null==c?void 0:c.length)),!t){const t=c[0],r=s.fileInfos.get(t.resolvedPath);if(r.signature===t.version){const o=yJ(s.program,t,i,n,l);if((null==(u=null==l?void 0:l.diagnostics)?void 0:u.length)||(e=o),o!==t.version)if(n.storeSignatureInfo&&(s.signatureInfo??(s.signatureInfo=new Map)).set(t.resolvedPath,1),s.affectedFiles){void 0===(null==(d=s.oldSignatures)?void 0:d.get(t.resolvedPath))&&(s.oldSignatures??(s.oldSignatures=new Map)).set(t.resolvedPath,r.signature||!1),r.signature=o}else r.signature=o}}if(s.compilerOptions.composite){const t=c[0].resolvedPath;if(e=p(null==(_=s.emitSignatures)?void 0:_.get(t),e),!e)return;(s.emitSignatures??(s.emitSignatures=new Map)).set(t,e)}}function p(e,t){const o=!e||lt(e)?e:e[0];if(t??(t=vJ(i,n,l)),t===o){if(e===o)return;l?l.differsOnlyInMap=!0:l={differsOnlyInMap:!0}}else s.hasChangedEmitSignature=!0,s.latestChangedDtsFile=r;return t}e?e(r,i,o,a,c,l):n.writeFile?n.writeFile(r,i,o,a,c,l):s.program.writeFile(r,i,o,a,c,l)}:e||tt(n,n.writeFile)}function d(e,t){for(;;){const r=oJ(s,e,n);let i;if(!r)return;if(r!==s.program){const n=r;if(t&&t(n)||(i=pJ(s,n,e)),s.seenAffectedFiles.add(n.resolvedPath),s.affectedFilesIndex++,s.buildInfoEmitPending=!0,!i)continue}else i=s.program.getSemanticDiagnostics(void 0,e),s.changedFilesSet.clear(),s.programEmitPending=GK(s.compilerOptions);return{result:i,affected:r}}}}function xJ(e,t,n){var r,i;const o=(null==(r=e.affectedFilesPendingEmit)?void 0:r.get(t))||0;(e.affectedFilesPendingEmit??(e.affectedFilesPendingEmit=new Map)).set(t,o|n),null==(i=e.emitDiagnosticsPerFile)||i.delete(t)}function SJ(e){return lt(e)?{version:e,signature:e,affectsGlobalScope:void 0,impliedFormat:void 0}:lt(e.signature)?e:{version:e.version,signature:!1===e.signature?void 0:e.version,affectsGlobalScope:e.affectsGlobalScope,impliedFormat:e.impliedFormat}}function TJ(e,t){return ut(e)?t:e[1]||8}function wJ(e,t){return e||GK(t||{})}function kJ(e,t,n){var r,i,o,s;const a=e.program,c=Vo(es(t,n.getCurrentDirectory())),l=rn(n.useCaseSensitiveFileNames());let u;const d=null==(r=a.fileNames)?void 0:r.map((function(e){return rs(e,c,l)}));let p;const f=a.latestChangedDtsFile?h(a.latestChangedDtsFile):void 0;if(fJ(a)){const e=new Map;a.fileInfos.forEach(((t,n)=>{const r=g(n+1);e.set(r,lt(t)?{version:t,signature:void 0,affectsGlobalScope:void 0,impliedFormat:void 0}:t)})),u={fileInfos:e,compilerOptions:a.options?QF(a.options,h):{},latestChangedDtsFile:f,outSignature:a.outSignature,programEmitPending:void 0===a.pendingEmit?void 0:wJ(a.pendingEmit,a.options)}}else{p=null==(i=a.fileIdsList)?void 0:i.map((e=>new Set(e.map(g))));const e=new Map,t=(null==(o=a.options)?void 0:o.composite)&&!a.options.outFile?new Map:void 0;a.fileInfos.forEach(((n,r)=>{const i=g(r+1),o=SJ(n);e.set(i,o),t&&o.signature&&t.set(i,o.signature)})),null==(s=a.emitSignatures)||s.forEach((e=>{if(ut(e))t.delete(g(e));else{const n=g(e[0]);t.set(n,lt(e[1])||e[1].length?e[1]:[t.get(n)])}}));const n=new Set(R(a.changeFileSet,g)),r=a.affectedFilesPendingEmit?GK(a.options||{}):void 0;u={fileInfos:e,compilerOptions:a.options?QF(a.options,h):{},referencedMap:function(e,t){const n=JK.createReferencedMap(t);return n&&e?(e.forEach((([e,t])=>n.set(g(e),p[t-1]))),n):n}(a.referencedMap,a.options??{}),semanticDiagnosticsPerFile:function(e,t,n){const r=new Map(W(t.keys(),(e=>n.has(e)?void 0:[e,_])));return null==e||e.forEach((e=>{ut(e)?r.delete(g(e)):r.set(g(e[0]),e[1])})),r.size?r:void 0}(a.semanticDiagnosticsPerFile,e,n),emitDiagnosticsPerFile:(m=a.emitDiagnosticsPerFile,m&&He(m,(e=>g(e[0])),(e=>e[1]))),hasReusableDiagnostic:!0,affectedFilesPendingEmit:a.affectedFilesPendingEmit&&He(a.affectedFilesPendingEmit,(e=>g(ut(e)?e:e[0])),(e=>TJ(e,r))),changedFilesSet:n,latestChangedDtsFile:f,emitSignatures:(null==t?void 0:t.size)?t:void 0}}var m;return{getState:()=>u,saveEmitState:pt,restoreEmitState:pt,getProgram:xt,getProgramOrUndefined:ht,releaseProgram:pt,getCompilerOptions:()=>u.compilerOptions,getSourceFile:xt,getSourceFiles:xt,getOptionsDiagnostics:xt,getGlobalDiagnostics:xt,getConfigFileParsingDiagnostics:xt,getSyntacticDiagnostics:xt,getDeclarationDiagnostics:xt,getSemanticDiagnostics:xt,emit:xt,getAllDependencies:xt,getCurrentDirectory:xt,emitNextAffectedFile:xt,getSemanticDiagnosticsOfNextAffectedFile:xt,emitBuildInfo:xt,close:pt,hasChangedEmitSignature:ft};function h(e){return es(e,c)}function g(e){return d[e-1]}}function EJ(e,t,n){const r=Vo(es(t,n.getCurrentDirectory())),i=rn(n.useCaseSensitiveFileNames()),o=new Map;let s=0;const a=new Map,c=new Map(e.resolvedRoot);return e.fileInfos.forEach(((t,n)=>{const a=rs(e.fileNames[n],r,i),c=lt(t)?t:t.version;if(o.set(a,c),s<e.root.length){const t=e.root[s],r=n+1;at(t)?t[0]<=r&&r<=t[1]&&(l(r,a),t[1]===r&&s++):t===r&&(l(r,a),s++)}})),{fileInfos:o,roots:a};function l(t,n){const o=c.get(t);o?a.set(rs(e.fileNames[o-1],r,i),n):a.set(n,void 0)}}function CJ(e,t){return{getState:xt,saveEmitState:pt,restoreEmitState:pt,getProgram:n,getProgramOrUndefined:()=>e().program,releaseProgram:()=>e().program=void 0,getCompilerOptions:()=>e().compilerOptions,getSourceFile:e=>n().getSourceFile(e),getSourceFiles:()=>n().getSourceFiles(),getOptionsDiagnostics:e=>n().getOptionsDiagnostics(e),getGlobalDiagnostics:e=>n().getGlobalDiagnostics(e),getConfigFileParsingDiagnostics:()=>t,getSyntacticDiagnostics:(e,t)=>n().getSyntacticDiagnostics(e,t),getDeclarationDiagnostics:(e,t)=>n().getDeclarationDiagnostics(e,t),getSemanticDiagnostics:(e,t)=>n().getSemanticDiagnostics(e,t),emit:(e,t,r,i,o)=>n().emit(e,t,r,i,o),emitBuildInfo:(e,t)=>n().emitBuildInfo(e,t),getAllDependencies:xt,getCurrentDirectory:()=>n().getCurrentDirectory(),close:pt};function n(){return Tn.checkDefined(e().program)}}function NJ(e,t,n,r,i,o){return bJ(0,hJ(e,t,n,r,i,o))}function AJ(e,t,n,r,i,o){return bJ(1,hJ(e,t,n,r,i,o))}function IJ(e,t,n,r,i,o){const{newProgram:s,configFileParsingDiagnostics:a}=hJ(e,t,n,r,i,o);return CJ((()=>({program:s,compilerOptions:s.getCompilerOptions()})),a)}function DJ(e){return Qt(e,"/node_modules/.staging")?Yt(e,"/.staging"):$(po,(t=>e.includes(t)))?void 0:e}function PJ(e,t){if(t<=1)return 1;let n=1,r=0===e[0].search(/[a-zA-Z]:/);if(e[0]!==ko&&!r&&0===e[1].search(/[a-zA-Z]\$$/)){if(2===t)return 2;n=2,r=!0}return r&&!e[n].match(/^users$/i)?n:e[n].match(/^workspaces$/i)?n+1:n+2}function MJ(e,t){if(void 0===t&&(t=e.length),t<=2)return!1;return t>PJ(e,t)+1}function OJ(e){return RJ(Vo(e))}function FJ(e,t){if(t.length<t.length)return!1;for(let n=0;n<e.length;n++)if(t[n]!==e[n])return!1;return!0}function RJ(e){return MJ(Ho(e))}function LJ(e){return RJ(e)}function jJ(e,t,n,r,i,o){const s=Ho(t),a=Ho(e=Do(e)?ts(e):es(e,o())),c=PJ(s,s.length);if(s.length<=c+1)return;const l=s.indexOf("node_modules");if(-1!==l&&l+1<=c+1)return;const u=s.lastIndexOf("node_modules");return FJ(i,s)?s.length>i.length+1?UJ(a,s,Math.max(i.length+1,c+1),u):{dir:n,dirPath:r,nonRecursive:!0}:zJ(a,s,s.length-1,c,l,i,u)}function zJ(e,t,n,r,i,o,s){if(-1!==i)return UJ(e,t,i+1,s);let a=!0,c=n;for(let l=0;l<n;l++)if(t[l]!==o[l]){a=!1,c=Math.max(l+1,r+1);break}return UJ(e,t,c,s,a)}function UJ(e,t,n,r,i){let o;return-1!==r&&r+1>=n&&r+2<t.length&&(cn(t[r+1],"@")?r+3<t.length&&(o=r+3):o=r+2),{dir:Go(e,n),dirPath:Go(t,n),nonRecursive:i,packageDir:void 0!==o?Go(e,o):void 0,packageDirPath:void 0!==o?Go(t,o):void 0}}function BJ(e,t,n,r,i,o){const s=Ho(t);if(FJ(r,s))return n;const a=zJ(Ho(e=Do(e)?ts(e):es(e,i())),s,s.length,PJ(s,s.length),s.indexOf("node_modules"),r,s.lastIndexOf("node_modules"));return a&&o(a.dirPath)?a.dirPath:void 0}function qJ(e,t){const n=es(e,t());return Po(n)?n:is(n)}function VJ(e){return e.split(ko).length-(zo(e)?1:0)}function KJ(e){var t;return(null==(t=e.getCompilerHost)?void 0:t.call(e))||e}function JJ(e,t,n,r,i){return{nameAndMode:fK,resolve:(o,s)=>function(e,t,n,r,i,o,s){const a=KJ(e),c=RL(n,r,i,a,t,o,s);if(!e.getGlobalCache)return c;const l=e.getGlobalCache();if(!(void 0===l||za(n)||c.resolvedModule&&_w(c.resolvedModule.extension))){const{resolvedModule:r,failedLookupLocations:o,affectingLocations:s,resolutionDiagnostics:u}=Lj(Tn.checkDefined(e.globalCacheResolutionModuleName)(n),e.projectName,i,a,l,t);if(r)return c.resolvedModule=r,c.failedLookupLocations=iL(c.failedLookupLocations,o),c.affectingLocations=iL(c.affectingLocations,s),c.resolutionDiagnostics=iL(c.resolutionDiagnostics,u),c}return c}(r,i,o,e,n,t,s)}}function WJ(e,t,n){let r,i,o;const s=nt(),a=new Set,c=new Set,l=new Map,u=new Map;let d,p,f,m,h,g=!1,y=!1;const b=St((()=>e.getCurrentDirectory())),x=e.getCachedDirectoryStructureHost(),S=new Map,T=DL(b(),e.getCanonicalFileName,e.getCompilationSettings()),w=new Map,k=PL(b(),e.getCanonicalFileName,e.getCompilationSettings(),T.getPackageJsonInfoCache(),T.optionsToRedirectsKey),E=new Map,C=DL(b(),e.getCanonicalFileName,ML(e.getCompilationSettings()),T.getPackageJsonInfoCache()),N=new Map,A=new Map,I=qJ(t,b),D=e.toPath(I),P=Ho(D),M=new Map,O=new Map,F=new Map,R=new Map;return{rootDirForResolution:t,resolvedModuleNames:S,resolvedTypeReferenceDirectives:w,resolvedLibraries:E,resolvedFileToResolution:l,resolutionsWithFailedLookups:a,resolutionsWithOnlyAffectingLocations:c,directoryWatchesOfFailedLookups:N,fileWatchesOfAffectingLocations:A,packageDirWatchers:O,dirPathToSymlinkPackageRefCount:F,watchFailedLookupLocationsOfExternalModuleResolutions:J,getModuleResolutionCache:()=>T,startRecordingFilesWithChangedResolutions:function(){r=[]},finishRecordingFilesWithChangedResolutions:function(){const e=r;return r=void 0,e},startCachingPerDirectoryResolution:function(){T.isReadonly=void 0,k.isReadonly=void 0,C.isReadonly=void 0,T.getPackageJsonInfoCache().isReadonly=void 0,T.clearAllExceptPackageJsonInfoCache(),k.clearAllExceptPackageJsonInfoCache(),C.clearAllExceptPackageJsonInfoCache(),s.forEach(Z),s.clear(),M.clear()},finishCachingPerDirectoryResolution:function(t,n){o=void 0,y=!1,s.forEach(Z),s.clear(),t!==n&&(!function(t){E.forEach(((n,r)=>{var i;(null==(i=null==t?void 0:t.resolvedLibReferences)?void 0:i.has(r))||(ne(n,e.toPath(TK(e.getCompilationSettings(),b(),r)),L),E.delete(r))}))}(t),null==t||t.getSourceFiles().forEach((e=>{var t;const n=of(e)?(null==(t=e.packageJsonLocations)?void 0:t.length)??0:0,r=u.get(e.resolvedPath)??_;for(let i=r.length;i<n;i++)Q(e.packageJsonLocations[i],!1);if(r.length>n)for(let i=n;i<r.length;i++)A.get(r[i]).files--;n?u.set(e.resolvedPath,e.packageJsonLocations):u.delete(e.resolvedPath)})),u.forEach(((e,n)=>{const r=null==t?void 0:t.getSourceFileByPath(n);r&&r.resolvedPath===n||(e.forEach((e=>A.get(e).files--)),u.delete(n))})));N.forEach(B),A.forEach(q),O.forEach(U),g=!1,T.isReadonly=!0,k.isReadonly=!0,C.isReadonly=!0,T.getPackageJsonInfoCache().isReadonly=!0,M.clear()},resolveModuleNameLiterals:function(t,r,i,o,s,a){return V({entries:t,containingFile:r,containingSourceFile:s,redirectedReference:i,options:o,reusedNames:a,perFileCache:S,loader:JJ(r,i,o,e,T),getResolutionWithResolvedFileName:L,shouldRetryResolution:e=>!e.resolvedModule||!pw(e.resolvedModule.extension),logChanges:n,deferWatchingNonRelativeResolution:!0})},resolveTypeReferenceDirectiveReferences:function(t,n,r,i,o,s){return V({entries:t,containingFile:n,containingSourceFile:o,redirectedReference:r,options:i,reusedNames:s,perFileCache:w,loader:yK(n,r,i,KJ(e),k),getResolutionWithResolvedFileName:j,shouldRetryResolution:e=>void 0===e.resolvedTypeReferenceDirective,deferWatchingNonRelativeResolution:!1})},resolveLibrary:function(t,n,r,i){const o=KJ(e);let s=null==E?void 0:E.get(i);if(!s||s.isInvalidated){const a=s;s=OL(t,n,r,o,C);const c=e.toPath(n);J(t,s,c,L,!1),E.set(i,s),a&&ne(a,c,L)}else if(QR(r,o)){const e=L(s);GR(o,(null==e?void 0:e.resolvedFileName)?e.packageId?ws.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:ws.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2:ws.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved,t,n,null==e?void 0:e.resolvedFileName,(null==e?void 0:e.packageId)&&T_(e.packageId))}return s},resolveSingleModuleNameWithoutWatching:function(t,n){var r,i;const o=e.toPath(n),s=S.get(o),a=null==s?void 0:s.get(t,void 0);if(a&&!a.isInvalidated)return a;const c=null==(r=e.beforeResolveSingleModuleNameWithoutWatching)?void 0:r.call(e,T),l=KJ(e),u=RL(t,n,e.getCompilationSettings(),l,T);return null==(i=e.afterResolveSingleModuleNameWithoutWatching)||i.call(e,T,t,n,u,c),u},removeResolutionsFromProjectReferenceRedirects:function(t){if(!Lo(t,".json"))return;const n=e.getCurrentProgram();if(!n)return;const r=n.getResolvedProjectReferenceByPath(t);if(!r)return;r.commandLine.fileNames.forEach((t=>se(e.toPath(t))))},removeResolutionsOfFile:se,hasChangedAutomaticTypeDirectiveNames:()=>g,invalidateResolutionOfFile:function(t){se(t);const n=g;ae(l.get(t),mt)&&g&&!n&&e.onChangedAutomaticTypeDirectiveNames()},invalidateResolutionsOfFailedLookupLocations:ue,setFilesWithInvalidatedNonRelativeUnresolvedImports:function(e){Tn.assert(o===e||void 0===o),o=e},createHasInvalidatedResolutions:function(e,t){ue();const n=i;return i=void 0,{hasInvalidatedResolutions:t=>e(t)||y||!!(null==n?void 0:n.has(t))||z(t),hasInvalidatedLibResolutions:e=>{var n;return t(e)||!!(null==(n=null==E?void 0:E.get(e))?void 0:n.isInvalidated)}}},isFileWithInvalidatedNonRelativeUnresolvedImports:z,updateTypeRootsWatch:function(){const t=e.getCompilationSettings();if(t.types)return void fe();const n=uL(t,{getCurrentDirectory:b});n?Ix(R,new Set(n),{createNewValue:me,onDeleteValue:vx}):fe()},closeTypeRootsWatch:fe,clear:function(){Nx(N,FV),Nx(A,FV),M.clear(),O.clear(),F.clear(),s.clear(),fe(),S.clear(),w.clear(),l.clear(),a.clear(),c.clear(),f=void 0,m=void 0,h=void 0,p=void 0,d=void 0,y=!1,T.clear(),k.clear(),T.update(e.getCompilationSettings()),k.update(e.getCompilationSettings()),C.clear(),u.clear(),E.clear(),g=!1},onChangesAffectModuleResolution:function(){y=!0,T.clearAllExceptPackageJsonInfoCache(),k.clearAllExceptPackageJsonInfoCache(),T.update(e.getCompilationSettings()),k.update(e.getCompilationSettings())}};function L(e){return e.resolvedModule}function j(e){return e.resolvedTypeReferenceDirective}function z(e){if(!o)return!1;const t=o.get(e);return!!t&&!!t.length}function U(e,t){0===e.dirPathToWatcher.size&&O.delete(t)}function B(e,t){0===e.refCount&&(N.delete(t),e.watcher.close())}function q(e,t){var n;0!==e.files||0!==e.resolutions||(null==(n=e.symlinks)?void 0:n.size)||(A.delete(t),e.watcher.close())}function V({entries:t,containingFile:n,containingSourceFile:i,redirectedReference:o,options:s,perFileCache:a,reusedNames:c,loader:l,getResolutionWithResolvedFileName:u,deferWatchingNonRelativeResolution:d,shouldRetryResolution:_,logChanges:p}){const f=e.toPath(n),m=a.get(f)||a.set(f,EL()).get(f),h=[],g=p&&z(f),v=e.getCurrentProgram(),b=v&&v.getResolvedProjectReferenceToRedirect(n),x=b?!o||o.sourceFile.path!==b.sourceFile.path:!!o,T=EL();for(const k of t){const t=l.nameAndMode.getName(k),c=l.nameAndMode.getMode(k,i,(null==o?void 0:o.commandLine.options)||s);let v=m.get(t,c);if(!T.has(t,c)&&(y||x||!v||v.isInvalidated||g&&!za(t)&&_(v))){const n=v;v=l.resolve(t,c),e.onDiscoveredSymlink&&HJ(v)&&e.onDiscoveredSymlink(),m.set(t,c,v),v!==n&&(J(t,v,f,u,d),n&&ne(n,f,u)),p&&r&&!w(n,v)&&(r.push(f),p=!1)}else{const r=KJ(e);if(QR(s,r)&&!T.has(t,c)){const e=u(v);GR(r,a===S?(null==e?void 0:e.resolvedFileName)?e.packageId?ws.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:ws.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2:ws.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved:(null==e?void 0:e.resolvedFileName)?e.packageId?ws.Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:ws.Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2:ws.Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_not_resolved,t,n,null==e?void 0:e.resolvedFileName,(null==e?void 0:e.packageId)&&T_(e.packageId))}}Tn.assert(void 0!==v&&!v.isInvalidated),T.set(t,c,!0),h.push(v)}return null==c||c.forEach((e=>T.set(l.nameAndMode.getName(e),l.nameAndMode.getMode(e,i,(null==o?void 0:o.commandLine.options)||s),!0))),m.size()!==T.size()&&m.forEach(((e,t,n)=>{T.has(t,n)||(ne(e,f,u),m.delete(t,n))})),h;function w(e,t){if(e===t)return!0;if(!e||!t)return!1;const n=u(e),r=u(t);return n===r||!(!n||!r)&&n.resolvedFileName===r.resolvedFileName}}function K(e){return Qt(e,"/node_modules/@types")}function J(t,n,r,i,o){var a;if(n.refCount)n.refCount++,Tn.assertIsDefined(n.files);else{n.refCount=1,Tn.assert(!(null==(a=n.files)?void 0:a.size)),!o||za(t)?H(n):s.add(t,n);const r=i(n);if(r&&r.resolvedFileName){const t=e.toPath(r.resolvedFileName);let i=l.get(t);i||l.set(t,i=new Set),i.add(n)}}(n.files??(n.files=new Set)).add(r)}function W(t,n){const r=jJ(t,e.toPath(t),I,D,P,b);if(r){const{dir:e,dirPath:t,nonRecursive:i,packageDir:o,packageDirPath:s}=r;t===D?(Tn.assert(i),Tn.assert(!o),n=!0):X(e,t,o,s,i)}return n}function H(e){Tn.assert(!!e.refCount);const{failedLookupLocations:t,affectingLocations:n,alternateResult:r}=e;if(!(null==t?void 0:t.length)&&!(null==n?void 0:n.length)&&!r)return;((null==t?void 0:t.length)||r)&&a.add(e);let i=!1;if(t)for(const o of t)i=W(o,i);r&&(i=W(r,i)),i&&X(I,D,void 0,void 0,!0),G(e,!(null==t?void 0:t.length)&&!r)}function G(e,t){Tn.assert(!!e.refCount);const{affectingLocations:n}=e;if(null==n?void 0:n.length){t&&c.add(e);for(const e of n)Q(e,!0)}}function Q(t,n){const r=A.get(t);if(r)return void(n?r.resolutions++:r.files++);let i,o=t,s=!1;e.realpath&&(o=e.realpath(t),t!==o&&(s=!0,i=A.get(o)));const a=n?1:0,c=n?0:1;if(!s||!i){const t={watcher:LJ(e.toPath(o))?e.watchAffectingFileLocation(o,((t,n)=>{null==x||x.addOrDeleteFile(t,e.toPath(o),n),Y(o,T.getPackageJsonInfoCache().getInternalMap()),e.scheduleInvalidateResolutionsOfFailedLookupLocations()})):hW,resolutions:s?0:a,files:s?0:c,symlinks:void 0};A.set(o,t),s&&(i=t)}if(s){Tn.assert(!!i);const e={watcher:{close:()=>{var e;const n=A.get(o);!(null==(e=null==n?void 0:n.symlinks)?void 0:e.delete(t))||n.symlinks.size||n.resolutions||n.files||(A.delete(o),n.watcher.close())}},resolutions:a,files:c,symlinks:void 0};A.set(t,e),(i.symlinks??(i.symlinks=new Set)).add(t)}}function Y(t,n){var r;const i=A.get(t);(null==i?void 0:i.resolutions)&&(p??(p=new Set)).add(t),(null==i?void 0:i.files)&&(d??(d=new Set)).add(t),null==(r=null==i?void 0:i.symlinks)||r.forEach((e=>Y(e,n))),null==n||n.delete(e.toPath(t))}function Z(t,n){const r=e.getCurrentProgram();r&&r.getTypeChecker().tryFindAmbientModuleWithoutAugmentations(n)?t.forEach((e=>G(e,!0))):t.forEach(H)}function X(t,n,r,i,o){i&&e.realpath?function(t,n,r,i,o){Tn.assert(!o);let s=M.get(i),a=O.get(i);if(void 0===s){const t=e.realpath(r);s=t!==r&&e.toPath(t)!==i,M.set(i,s),a?a.isSymlink!==s&&(a.dirPathToWatcher.forEach((e=>{re(a.isSymlink?i:n,!1),e.watcher=l()})),a.isSymlink=s):O.set(i,a={dirPathToWatcher:new Map,isSymlink:s})}else Tn.assertIsDefined(a),Tn.assert(s===a.isSymlink);const c=a.dirPathToWatcher.get(n);function l(){return s?ee(r,i,o):ee(t,n,o)}c?c.refCount++:(a.dirPathToWatcher.set(n,{watcher:l(),refCount:1}),s&&F.set(n,(F.get(n)??0)+1))}(t,n,r,i,o):ee(t,n,o)}function ee(e,t,n){let r=N.get(t);return r?(Tn.assert(!!n==!!r.nonRecursive),r.refCount++):N.set(t,r={watcher:ie(e,t,n),refCount:1,nonRecursive:n}),r}function te(t,n,r){const i=jJ(t,e.toPath(t),I,D,P,b);if(i){const{dirPath:t,packageDirPath:o}=i;if(t===D)n=!0;else if(o&&e.realpath){const e=O.get(o),n=e.dirPathToWatcher.get(t);if(n.refCount--,0===n.refCount){if(re(e.isSymlink?o:t,r),e.dirPathToWatcher.delete(t),e.isSymlink){const e=F.get(t)-1;0===e?F.delete(t):F.set(t,e)}r&&U(e,o)}}else re(t,r)}return n}function ne(t,n,r,i){if(Tn.checkDefined(t.files).delete(n),t.refCount--,t.refCount)return;const o=r(t);if(o&&o.resolvedFileName){const n=e.toPath(o.resolvedFileName),r=l.get(n);(null==r?void 0:r.delete(t))&&!r.size&&l.delete(n)}const{failedLookupLocations:s,affectingLocations:u,alternateResult:d}=t;if(a.delete(t)){let e=!1;if(s)for(const t of s)e=te(t,e,i);d&&(e=te(d,e,i)),e&&re(D,i)}else(null==u?void 0:u.length)&&c.delete(t);if(u)for(const e of u){const t=A.get(e);t.resolutions--,i&&q(t,e)}}function re(e,t){const n=N.get(e);n.refCount--,t&&B(n,e)}function ie(t,n,r){return e.watchDirectoryOfFailedLookupLocation(t,(t=>{const r=e.toPath(t);x&&x.addOrDeleteFileOrDirectory(t,r),ce(r,n===r)}),r?0:1)}function oe(e,t,n,r){const i=e.get(t);i&&(i.forEach((e=>ne(e,t,n,r))),e.delete(t))}function se(e,t){oe(S,e,L,t),oe(w,e,j,t)}function ae(e,t){if(!e)return!1;let n=!1;return e.forEach((e=>{if(!e.isInvalidated&&t(e)){e.isInvalidated=n=!0;for(const t of Tn.checkDefined(e.files))(i??(i=new Set)).add(t),g=g||Qt(t,SK)}})),n}function ce(t,n){if(n)(h||(h=new Set)).add(t);else{const n=DJ(t);if(!n)return!1;if(t=n,e.fileIsOpen(t))return!1;const r=Vo(t);if(K(t)||Ss(t)||K(r)||Ss(r))(f||(f=new Set)).add(t),(m||(m=new Set)).add(t);else{if(DV(e.getCurrentProgram(),t))return!1;if(Lo(t,".map"))return!1;(f||(f=new Set)).add(t);const n=YL(t,!0);n&&(m||(m=new Set)).add(n)}}e.scheduleInvalidateResolutionsOfFailedLookupLocations()}function le(){const e=T.getPackageJsonInfoCache().getInternalMap();e&&(f||m||h)&&e.forEach(((t,n)=>_e(n)?e.delete(n):void 0))}function ue(){var t;if(y)return d=void 0,le(),(f||m||h||p)&&ae(E,de),f=void 0,m=void 0,h=void 0,p=void 0,!0;let n=!1;return d&&(null==(t=e.getCurrentProgram())||t.getSourceFiles().forEach((e=>{$(e.packageJsonLocations,(e=>d.has(e)))&&((i??(i=new Set)).add(e.path),n=!0)})),d=void 0),f||m||h||p?(n=ae(a,de)||n,le(),f=void 0,m=void 0,h=void 0,n=ae(c,pe)||n,p=void 0,n):n}function de(t){var n;return!!pe(t)||!!(f||m||h)&&((null==(n=t.failedLookupLocations)?void 0:n.some((t=>_e(e.toPath(t)))))||!!t.alternateResult&&_e(e.toPath(t.alternateResult)))}function _e(e){return(null==f?void 0:f.has(e))||v((null==m?void 0:m.keys())||[],(t=>!!cn(e,t)||void 0))||v((null==h?void 0:h.keys())||[],(t=>!(!(e.length>t.length&&cn(e,t))||!Po(t)&&e[t.length]!==ko)||void 0))}function pe(e){var t;return!!p&&(null==(t=e.affectingLocations)?void 0:t.some((e=>p.has(e))))}function fe(){Nx(R,vx)}function me(t){return function(t){return!!e.getCompilationSettings().typeRoots||OJ(e.toPath(t))}(t)?e.watchTypeRootsDirectory(t,(n=>{const r=e.toPath(n);x&&x.addOrDeleteFileOrDirectory(n,r),g=!0,e.onChangedAutomaticTypeDirectiveNames();const i=BJ(t,e.toPath(t),D,P,b,(e=>N.has(e)||F.has(e)));i&&ce(r,i===r)}),1):hW}}function HJ(e){var t,n;return!(!(null==(t=e.resolvedModule)?void 0:t.originalPath)&&!(null==(n=e.resolvedTypeReferenceDirective)?void 0:n.originalPath))}var GJ=To?{getCurrentDirectory:()=>To.getCurrentDirectory(),getNewLine:()=>To.newLine,getCanonicalFileName:rn(To.useCaseSensitiveFileNames)}:void 0;function QJ(e,t){const n=e===To&&GJ?GJ:{getCurrentDirectory:()=>e.getCurrentDirectory(),getNewLine:()=>e.newLine,getCanonicalFileName:rn(e.useCaseSensitiveFileNames)};if(!t)return t=>e.write(WV(t,n));const r=new Array(1);return t=>{r[0]=t,e.write(iK(r,n)+n.getNewLine()),r[0]=void 0}}function YJ(e,t,n){return!(!e.clearScreen||n.preserveWatchOutput||n.extendedDiagnostics||n.diagnostics||!A(ZJ,t.code))&&(e.clearScreen(),!0)}var ZJ=[ws.Starting_compilation_in_watch_mode.code,ws.File_change_detected_Starting_incremental_compilation.code];function XJ(e){return e.now?e.now().toLocaleTimeString("en-US",{timeZone:"UTC"}).replace("\u202f"," "):(new Date).toLocaleTimeString()}function $J(e,t){return t?(t,n,r)=>{YJ(e,t,r);let i=`[${tK(XJ(e),"\x1b[90m")}] `;i+=`${oK(t.messageText,e.newLine)}${n+n}`,e.write(i)}:(t,n,r)=>{let i="";YJ(e,t,r)||(i+=n),i+=`${XJ(e)} - `,i+=`${oK(t.messageText,e.newLine)}${function(e,t){return A(ZJ,e.code)?t+t:t}(t,n)}`,e.write(i)}}function eW(e,t,n,r,i,o){const s=i;s.onUnRecoverableConfigFileDiagnostic=e=>EW(i,o,e);const a=pF(e,t,s,n,r);return s.onUnRecoverableConfigFileDiagnostic=void 0,a}function tW(e){return P(e,(e=>1===e.category))}function nW(e){return M(e,(e=>1===e.category)).map((e=>{if(void 0!==e.file)return`${e.file.fileName}`})).map((t=>{if(void 0===t)return;const n=w(e,(e=>void 0!==e.file&&e.file.fileName===t));if(void 0!==n){const{line:e}=ta(n.file,n.start);return{fileName:t,line:e+1}}}))}function rW(e){return 1===e?ws.Found_1_error_Watching_for_file_changes:ws.Found_0_errors_Watching_for_file_changes}function iW(e,t){const n=tK(":"+e.line,"\x1b[90m");return Mo(e.fileName)&&Mo(t)?gs(t,e.fileName,!1)+n:e.fileName+n}function oW(e,t,n,r){if(0===e)return"";const i=t.filter((e=>void 0!==e)),o=i.map((e=>`${e.fileName}:${e.line}`)).filter(((e,t,n)=>n.indexOf(e)===t)),s=i[0]&&iW(i[0],r.getCurrentDirectory());let a;a=1===e?void 0!==t[0]?[ws.Found_1_error_in_0,s]:[ws.Found_1_error]:0===o.length?[ws.Found_0_errors,e]:1===o.length?[ws.Found_0_errors_in_the_same_file_starting_at_Colon_1,e,s]:[ws.Found_0_errors_in_1_files,e,o.length];const c=mS(...a),l=o.length>1?function(e,t){const n=e.filter(((e,t,n)=>t===n.findIndex((t=>(null==t?void 0:t.fileName)===(null==e?void 0:e.fileName)))));if(0===n.length)return"";const r=e=>Math.log(e)*Math.LOG10E+1,i=n.map((t=>[t,P(e,(e=>e.fileName===t.fileName))])),o=i.reduce(((e,t)=>Math.max(e,t[1]||0)),0),s=ws.Errors_Files.message,a=s.split(" ")[0].length,c=Math.max(a,r(o)),l=Math.max(r(o)-a,0);let u="";return u+=" ".repeat(l)+s+"\n",i.forEach((e=>{const[n,r]=e,i=Math.log(r)*Math.LOG10E+1|0,o=i<c?" ".repeat(c-i):"",s=iW(n,t.getCurrentDirectory());u+=`${o}${r} ${s}\n`})),u}(i,r):"";return`${n}${oK(c.messageText,n)}${n}${n}${l}`}function sW(e){return!!e.getState}function aW(e,t){const n=e.getCompilerOptions();n.explainFiles?cW(sW(e)?e.getProgram():e,t):(n.listFiles||n.listFilesOnly)&&h(e.getSourceFiles(),(e=>{t(e.fileName)}))}function cW(e,t){var n,r;const i=e.getFileIncludeReasons(),o=t=>ys(t,e.getCurrentDirectory(),e.getCanonicalFileName);for(const s of e.getSourceFiles())t(`${pW(s,o)}`),null==(n=i.get(s.path))||n.forEach((n=>t(` ${_W(e,n,o).messageText}`))),null==(r=lW(s,o))||r.forEach((e=>t(` ${e.messageText}`)))}function lW(e,t){var n;let r;if(e.path!==e.resolvedPath&&(r??(r=[])).push(gS(void 0,ws.File_is_output_of_project_reference_source_0,pW(e.originalFileName,t))),e.redirectInfo&&(r??(r=[])).push(gS(void 0,ws.File_redirects_to_file_0,pW(e.redirectInfo.redirectTarget,t))),of(e))switch(e.impliedNodeFormat){case 99:e.packageJsonScope&&(r??(r=[])).push(gS(void 0,ws.File_is_ECMAScript_module_because_0_has_field_type_with_value_module,pW(Ae(e.packageJsonLocations),t)));break;case 1:e.packageJsonScope?(r??(r=[])).push(gS(void 0,e.packageJsonScope.contents.packageJsonContent.type?ws.File_is_CommonJS_module_because_0_has_field_type_whose_value_is_not_module:ws.File_is_CommonJS_module_because_0_does_not_have_field_type,pW(Ae(e.packageJsonLocations),t))):(null==(n=e.packageJsonLocations)?void 0:n.length)&&(r??(r=[])).push(gS(void 0,ws.File_is_CommonJS_module_because_package_json_was_not_found))}return r}function uW(e,t){var n;const r=e.getCompilerOptions().configFile;if(!(null==(n=null==r?void 0:r.configFileSpecs)?void 0:n.validatedFilesSpec))return;const i=e.getCanonicalFileName(t),o=Vo(es(r.fileName,e.getCurrentDirectory())),s=E(r.configFileSpecs.validatedFilesSpec,(t=>e.getCanonicalFileName(es(t,o))===i));return-1!==s?r.configFileSpecs.validatedFilesSpecBeforeSubstitution[s]:void 0}function dW(e,t){var n,r;const i=e.getCompilerOptions().configFile;if(!(null==(n=null==i?void 0:i.configFileSpecs)?void 0:n.validatedIncludeSpecs))return;if(i.configFileSpecs.isDefaultIncludeSpec)return!0;const o=Lo(t,".json"),s=Vo(es(i.fileName,e.getCurrentDirectory())),a=e.useCaseSensitiveFileNames(),c=E(null==(r=null==i?void 0:i.configFileSpecs)?void 0:r.validatedIncludeSpecs,(e=>{if(o&&!Qt(e,".json"))return!1;const n=CT(e,s,"files");return!!n&&DT(`(${n})$`,a).test(t)}));return-1!==c?i.configFileSpecs.validatedIncludeSpecsBeforeSubstitution[c]:void 0}function _W(e,t,n){var r,i;const o=e.getCompilerOptions();if(CK(t)){const r=AK(e,t),i=NK(r)?r.file.text.substring(r.pos,r.end):`"${r.text}"`;let o;switch(Tn.assert(NK(r)||3===t.kind,"Only synthetic references are imports"),t.kind){case 3:o=NK(r)?r.packageId?ws.Imported_via_0_from_file_1_with_packageId_2:ws.Imported_via_0_from_file_1:r.text===e_?r.packageId?ws.Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions:ws.Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions:r.packageId?ws.Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions:ws.Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions;break;case 4:Tn.assert(!r.packageId),o=ws.Referenced_via_0_from_file_1;break;case 5:o=r.packageId?ws.Type_library_referenced_via_0_from_file_1_with_packageId_2:ws.Type_library_referenced_via_0_from_file_1;break;case 7:Tn.assert(!r.packageId),o=ws.Library_referenced_via_0_from_file_1;break;default:Tn.assertNever(t)}return gS(void 0,o,i,pW(r.file,n),r.packageId&&T_(r.packageId))}switch(t.kind){case 0:if(!(null==(r=o.configFile)?void 0:r.configFileSpecs))return gS(void 0,ws.Root_file_specified_for_compilation);const s=es(e.getRootFileNames()[t.index],e.getCurrentDirectory());if(uW(e,s))return gS(void 0,ws.Part_of_files_list_in_tsconfig_json);const a=dW(e,s);return lt(a)?gS(void 0,ws.Matched_by_include_pattern_0_in_1,a,pW(o.configFile,n)):gS(void 0,a?ws.Matched_by_default_include_pattern_Asterisk_Asterisk_Slash_Asterisk:ws.Root_file_specified_for_compilation);case 1:case 2:const c=2===t.kind,l=Tn.checkDefined(null==(i=e.getResolvedProjectReferences())?void 0:i[t.index]);return gS(void 0,o.outFile?c?ws.Output_from_referenced_project_0_included_because_1_specified:ws.Source_from_referenced_project_0_included_because_1_specified:c?ws.Output_from_referenced_project_0_included_because_module_is_specified_as_none:ws.Source_from_referenced_project_0_included_because_module_is_specified_as_none,pW(l.sourceFile.fileName,n),o.outFile?"--outFile":"--out");case 8:return gS(void 0,...o.types?t.packageId?[ws.Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1,t.typeReference,T_(t.packageId)]:[ws.Entry_point_of_type_library_0_specified_in_compilerOptions,t.typeReference]:t.packageId?[ws.Entry_point_for_implicit_type_library_0_with_packageId_1,t.typeReference,T_(t.packageId)]:[ws.Entry_point_for_implicit_type_library_0,t.typeReference]);case 6:{if(void 0!==t.index)return gS(void 0,ws.Library_0_specified_in_compilerOptions,o.lib[t.index]);const e=tT(MS(o));return gS(void 0,...e?[ws.Default_library_for_target_0,e]:[ws.Default_library])}default:Tn.assertNever(t)}}function pW(e,t){const n=lt(e)?e:e.fileName;return t?t(n):n}function fW(e,t,n,r,i,o,s,a){const c=!!e.getCompilerOptions().listFilesOnly,l=e.getConfigFileParsingDiagnostics().slice(),u=l.length;me(l,e.getSyntacticDiagnostics(void 0,o)),l.length===u&&(me(l,e.getOptionsDiagnostics(o)),c||(me(l,e.getGlobalDiagnostics(o)),l.length===u&&me(l,e.getSemanticDiagnostics(void 0,o))));const d=c?{emitSkipped:!0,diagnostics:_}:e.emit(void 0,i,o,s,a),{emittedFiles:p,diagnostics:f}=d;me(l,f);const m=Ua(l);if(m.forEach(t),n){const t=e.getCurrentDirectory();h(p,(e=>{const r=es(e,t);n(`TSFILE: ${r}`)})),aW(e,n)}return r&&r(tW(m),nW(m)),{emitResult:d,diagnostics:m}}function mW(e,t,n,r,i,o,s,a){const{emitResult:c,diagnostics:l}=fW(e,t,n,r,i,o,s,a);return c.emitSkipped&&l.length>0?1:l.length>0?2:0}var hW={close:pt},gW=()=>hW;function yW(e=To,t){return{onWatchStatusChange:t||$J(e),watchFile:tt(e,e.watchFile)||gW,watchDirectory:tt(e,e.watchDirectory)||gW,setTimeout:tt(e,e.setTimeout)||pt,clearTimeout:tt(e,e.clearTimeout)||pt}}var vW={ConfigFile:"Config file",ExtendedConfigFile:"Extended config file",SourceFile:"Source file",MissingFile:"Missing file",WildcardDirectory:"Wild card directory",FailedLookupLocations:"Failed Lookup Locations",AffectingFileLocation:"File location affecting resolution",TypeRoots:"Type roots",ConfigFileOfReferencedProject:"Config file of referened project",ExtendedConfigOfReferencedProject:"Extended config file of referenced project",WildcardDirectoryOfReferencedProject:"Wild card directory of referenced project",PackageJson:"package.json file",ClosedScriptInfo:"Closed Script info",ConfigFileForInferredRoot:"Config file for the inferred project root",NodeModules:"node_modules for closed script infos and package.jsons affecting module specifier cache",MissingSourceMapFile:"Missing source map file",NoopConfigFileForInferredRoot:"Noop Config file for the inferred project root",MissingGeneratedFile:"Missing generated file",NodeModulesForModuleSpecifierCache:"node_modules for module specifier cache invalidation",TypingInstallerLocationFile:"File location for typing installer",TypingInstallerLocationDirectory:"Directory location for typing installer"};function bW(e,t){const n=e.trace?t.extendedDiagnostics?2:t.diagnostics?1:0:0,r=0!==n?t=>e.trace(t):pt,i=MV(e,n,r);return i.writeLog=r,i}function xW(e,t,n=e){const r=e.useCaseSensitiveFileNames(),i={getSourceFile:UV(((t,n)=>n?e.readFile(t,n):i.readFile(t)),void 0),getDefaultLibLocation:tt(e,e.getDefaultLibLocation),getDefaultLibFileName:t=>e.getDefaultLibFileName(t),writeFile:BV(((t,n,r)=>e.writeFile(t,n,r)),(t=>e.createDirectory(t)),(t=>e.directoryExists(t))),getCurrentDirectory:St((()=>e.getCurrentDirectory())),useCaseSensitiveFileNames:()=>r,getCanonicalFileName:rn(r),getNewLine:()=>Qb(t()),fileExists:t=>e.fileExists(t),readFile:t=>e.readFile(t),trace:tt(e,e.trace),directoryExists:tt(n,n.directoryExists),getDirectories:tt(n,n.getDirectories),realpath:tt(e,e.realpath),getEnvironmentVariable:tt(e,e.getEnvironmentVariable)||(()=>""),createHash:tt(e,e.createHash),readDirectory:tt(e,e.readDirectory),storeSignatureInfo:e.storeSignatureInfo,jsDocParsingMode:e.jsDocParsingMode};return i}function SW(e,t){if(t.match(yU)){let e=t.length,n=e;for(let r=e-1;r>=0;r--){const i=t.charCodeAt(r);switch(i){case 10:r&&13===t.charCodeAt(r-1)&&r--;case 13:break;default:if(i<127||!ia(i)){n=r;continue}}const o=t.substring(n,e);if(o.match(vU)){t=t.substring(0,n);break}if(!o.match(bU))break;e=n}}return(e.createHash||Yi)(t)}function TW(e){const t=e.getSourceFile;e.getSourceFile=(...n)=>{const r=t.call(e,...n);return r&&(r.version=SW(e,r.text)),r}}function wW(e,t){const n=St((()=>Vo(ts(e.getExecutingFilePath()))));return{useCaseSensitiveFileNames:()=>e.useCaseSensitiveFileNames,getNewLine:()=>e.newLine,getCurrentDirectory:St((()=>e.getCurrentDirectory())),getDefaultLibLocation:n,getDefaultLibFileName:e=>Zo(n(),Ba(e)),fileExists:t=>e.fileExists(t),readFile:(t,n)=>e.readFile(t,n),directoryExists:t=>e.directoryExists(t),getDirectories:t=>e.getDirectories(t),readDirectory:(t,n,r,i,o)=>e.readDirectory(t,n,r,i,o),realpath:tt(e,e.realpath),getEnvironmentVariable:tt(e,e.getEnvironmentVariable),trace:t=>e.write(t+e.newLine),createDirectory:t=>e.createDirectory(t),writeFile:(t,n,r)=>e.writeFile(t,n,r),createHash:tt(e,e.createHash),createProgram:t||AJ,storeSignatureInfo:e.storeSignatureInfo,now:tt(e,e.now)}}function kW(e=To,t,n,r){const i=t=>e.write(t+e.newLine),o=wW(e,t);return et(o,yW(e,r)),o.afterProgramCreate=e=>{const t=e.getCompilerOptions(),r=Qb(t);fW(e,n,i,(e=>o.onWatchStatusChange(mS(rW(e),e),r,t,e)))},o}function EW(e,t,n){t(n),e.exit(1)}function CW({configFileName:e,optionsToExtend:t,watchOptionsToExtend:n,extraFileExtensions:r,system:i,createProgram:o,reportDiagnostic:s,reportWatchStatus:a}){const c=s||QJ(i),l=kW(i,o,c,a);return l.onUnRecoverableConfigFileDiagnostic=e=>EW(i,c,e),l.configFileName=e,l.optionsToExtend=t,l.watchOptionsToExtend=n,l.extraFileExtensions=r,l}function NW({rootFiles:e,options:t,watchOptions:n,projectReferences:r,system:i,createProgram:o,reportDiagnostic:s,reportWatchStatus:a}){const c=kW(i,o,s||QJ(i),a);return c.rootFiles=e,c.options=t,c.watchOptions=n,c.projectReferences=r,c}function AW(e){const t=e.system||To,n=e.host||(e.host=DW(e.options,t)),r=PW(e),i=mW(r,e.reportDiagnostic||QJ(t),(e=>n.trace&&n.trace(e)),e.reportErrorSummary||e.options.pretty?(e,r)=>t.write(oW(e,r,t.newLine,n)):void 0);return e.afterProgramEmitAndDiagnostics&&e.afterProgramEmitAndDiagnostics(r),i}function IW(e,t){const n=Jq(e);if(!n)return;let r;if(t.getBuildInfo)r=t.getBuildInfo(n,e.configFilePath);else{const e=t.readFile(n);if(!e)return;r=pV(n,e)}return r&&r.version===u&&r.program?kJ(r,n,t):void 0}function DW(e,t=To){const n=qV(e,void 0,t);return n.createHash=tt(t,t.createHash),n.storeSignatureInfo=t.storeSignatureInfo,TW(n),VV(n,(e=>rs(e,n.getCurrentDirectory(),n.getCanonicalFileName))),n}function PW({rootNames:e,options:t,configFileParsingDiagnostics:n,projectReferences:r,host:i,createProgram:o}){return(o=o||AJ)(e,t,i=i||DW(t),IW(t,i),n,r)}function MW(e,t,n,r,i,o,s,a){return at(e)?NW({rootFiles:e,options:t,watchOptions:a,projectReferences:s,system:n,createProgram:r,reportDiagnostic:i,reportWatchStatus:o}):CW({configFileName:e,optionsToExtend:t,watchOptionsToExtend:s,extraFileExtensions:a,system:n,createProgram:r,reportDiagnostic:i,reportWatchStatus:o})}function OW(e){let t,n,r,i,o,s,a,c,l=e.extendedConfigCache,u=!1;const d=new Map;let _,p=!1;const f=e.useCaseSensitiveFileNames(),m=e.getCurrentDirectory(),{configFileName:h,optionsToExtend:g={},watchOptionsToExtend:y,extraFileExtensions:v,createProgram:b}=e;let x,S,{rootFiles:T,options:w,watchOptions:k,projectReferences:E}=e,C=!1,N=!1;const A=void 0===h?void 0:TV(e,m,f),I=A||e,D=zK(e,I);let P=G();h&&e.configFileParsingResult&&(ae(e.configFileParsingResult),P=G()),$(ws.Starting_compilation_in_watch_mode),h&&!e.configFileParsingResult&&(P=Qb(g),Tn.assert(!T),se(),P=G()),Tn.assert(w),Tn.assert(T);const{watchFile:M,watchDirectory:O,writeLog:F}=bW(e,w),R=rn(f);let L;F(`Current directory: ${m} CaseSensitiveFileNames: ${f}`),h&&(L=M(h,(function(){Tn.assert(!!h),n=2,re()}),2e3,k,vW.ConfigFile));const j=xW(e,(()=>w),I);TW(j);const z=j.getSourceFile;j.getSourceFile=(e,...t)=>Z(e,Q(e),...t),j.getSourceFileByPath=Z,j.getNewLine=()=>P,j.fileExists=function(e){const t=Q(e);if(Y(d.get(t)))return!1;return I.fileExists(e)},j.onReleaseOldSourceFile=function(e,t,n){const r=d.get(e.resolvedPath);void 0!==r&&(Y(r)?(_||(_=[])).push(e.path):r.sourceFile===e&&(r.fileWatcher&&r.fileWatcher.close(),d.delete(e.resolvedPath),n||U.removeResolutionsOfFile(e.path)))},j.onReleaseParsedCommandLine=function(e){var t;const n=Q(e),r=null==a?void 0:a.get(n);if(!r)return;a.delete(n),r.watchedDirectories&&Nx(r.watchedDirectories,FV);null==(t=r.watcher)||t.close(),EV(n,c)},j.toPath=Q,j.getCompilationSettings=()=>w,j.useSourceOfProjectReferenceRedirect=tt(e,e.useSourceOfProjectReferenceRedirect),j.watchDirectoryOfFailedLookupLocation=(e,t,n)=>O(e,t,n,k,vW.FailedLookupLocations),j.watchAffectingFileLocation=(e,t)=>M(e,t,2e3,k,vW.AffectingFileLocation),j.watchTypeRootsDirectory=(e,t,n)=>O(e,t,n,k,vW.TypeRoots),j.getCachedDirectoryStructureHost=()=>A,j.scheduleInvalidateResolutionsOfFailedLookupLocations=function(){if(!e.setTimeout||!e.clearTimeout)return U.invalidateResolutionsOfFailedLookupLocations();const t=te();F("Scheduling invalidateFailedLookup"+(t?", Cancelled earlier one":"")),s=e.setTimeout(ne,250,"timerToInvalidateFailedLookupResolutions")},j.onInvalidatedResolution=re,j.onChangedAutomaticTypeDirectiveNames=re,j.fileIsOpen=ft,j.getCurrentProgram=W,j.writeLog=F,j.getParsedCommandLine=ce;const U=WJ(j,h?Vo(es(h,m)):m,!1);j.resolveModuleNameLiterals=tt(e,e.resolveModuleNameLiterals),j.resolveModuleNames=tt(e,e.resolveModuleNames),j.resolveModuleNameLiterals||j.resolveModuleNames||(j.resolveModuleNameLiterals=U.resolveModuleNameLiterals.bind(U)),j.resolveTypeReferenceDirectiveReferences=tt(e,e.resolveTypeReferenceDirectiveReferences),j.resolveTypeReferenceDirectives=tt(e,e.resolveTypeReferenceDirectives),j.resolveTypeReferenceDirectiveReferences||j.resolveTypeReferenceDirectives||(j.resolveTypeReferenceDirectiveReferences=U.resolveTypeReferenceDirectiveReferences.bind(U)),j.resolveLibrary=e.resolveLibrary?e.resolveLibrary.bind(e):U.resolveLibrary.bind(U),j.getModuleResolutionCache=e.resolveModuleNameLiterals||e.resolveModuleNames?tt(e,e.getModuleResolutionCache):()=>U.getModuleResolutionCache();const B=!!(e.resolveModuleNameLiterals||e.resolveTypeReferenceDirectiveReferences||e.resolveModuleNames||e.resolveTypeReferenceDirectives)?tt(e,e.hasInvalidatedResolutions)||mt:ft,q=e.resolveLibrary?tt(e,e.hasInvalidatedLibResolutions)||mt:ft;return t=IW(w,j),H(),fe(),h&&he(Q(h),w,k,vW.ExtendedConfigFile),h?{getCurrentProgram:J,getProgram:oe,close:V,getResolutionCache:K}:{getCurrentProgram:J,getProgram:oe,updateRootFileNames:function(e){Tn.assert(!h,"Cannot update root file names with config file watch mode"),T=e,re()},close:V,getResolutionCache:K};function V(){te(),U.clear(),Nx(d,(e=>{e&&e.fileWatcher&&(e.fileWatcher.close(),e.fileWatcher=void 0)})),L&&(L.close(),L=void 0),null==l||l.clear(),l=void 0,c&&(Nx(c,FV),c=void 0),i&&(Nx(i,FV),i=void 0),r&&(Nx(r,vx),r=void 0),a&&(Nx(a,(e=>{var t;null==(t=e.watcher)||t.close(),e.watcher=void 0,e.watchedDirectories&&Nx(e.watchedDirectories,FV),e.watchedDirectories=void 0})),a=void 0),t=void 0}function K(){return U}function J(){return t}function W(){return t&&t.getProgramOrUndefined()}function H(){F("Synchronizing program"),Tn.assert(w),Tn.assert(T),te();const n=J();p&&(P=G(),n&&l_(n.getCompilerOptions(),w)&&U.onChangesAffectModuleResolution());const{hasInvalidatedResolutions:i,hasInvalidatedLibResolutions:o}=U.createHasInvalidatedResolutions(B,q),{originalReadFile:s,originalFileExists:a,originalDirectoryExists:c,originalCreateDirectory:l,originalWriteFile:f,readFileWithCache:m}=VV(j,Q);return IK(W(),T,w,(e=>function(e,t){const n=d.get(e);if(!n)return;if(n.version)return n.version;const r=t(e);return void 0!==r?SW(j,r):void 0}(e,m)),(e=>j.fileExists(e)),i,o,ee,ce,E)?N&&(u&&$(ws.File_change_detected_Starting_incremental_compilation),t=b(void 0,void 0,j,t,S,E),N=!1):(u&&$(ws.File_change_detected_Starting_incremental_compilation),function(e,n){F("CreatingProgramWith::"),F(` roots: ${JSON.stringify(T)}`),F(` options: ${JSON.stringify(w)}`),E&&F(` projectReferences: ${JSON.stringify(E)}`);const i=p||!W();p=!1,N=!1,U.startCachingPerDirectoryResolution(),j.hasInvalidatedResolutions=e,j.hasInvalidatedLibResolutions=n,j.hasChangedAutomaticTypeDirectiveNames=ee;const o=W();t=b(T,w,j,t,S,E),U.finishCachingPerDirectoryResolution(t.getProgram(),o),NV(t.getProgram(),r||(r=new Map),_e),i&&U.updateTypeRootsWatch();if(_){for(const e of _)r.has(e)||d.delete(e);_=void 0}}(i,o)),u=!1,e.afterProgramCreate&&n!==t&&e.afterProgramCreate(t),j.readFile=s,j.fileExists=a,j.directoryExists=c,j.createDirectory=l,j.writeFile=f,t}function G(){return Qb(w||g)}function Q(e){return rs(e,m,R)}function Y(e){return"boolean"==typeof e}function Z(e,t,n,r,i){const o=d.get(t);if(Y(o))return;const s="object"==typeof n?n.impliedNodeFormat:void 0;if(void 0===o||i||function(e){return"boolean"==typeof e.version}(o)||o.sourceFile.impliedNodeFormat!==s){const i=z(e,n,r);if(o)i?(o.sourceFile=i,o.version=i.version,o.fileWatcher||(o.fileWatcher=le(t,e,ue,250,k,vW.SourceFile))):(o.fileWatcher&&o.fileWatcher.close(),d.set(t,!1));else if(i){const n=le(t,e,ue,250,k,vW.SourceFile);d.set(t,{sourceFile:i,version:i.version,fileWatcher:n})}else d.set(t,!1);return i}return o.sourceFile}function X(e){const t=d.get(e);void 0!==t&&(Y(t)?d.set(e,{version:!1}):t.version=!1)}function $(t){e.onWatchStatusChange&&e.onWatchStatusChange(mS(t),P,w||g)}function ee(){return U.hasChangedAutomaticTypeDirectiveNames()}function te(){return!!s&&(e.clearTimeout(s),s=void 0,!0)}function ne(){s=void 0,U.invalidateResolutionsOfFailedLookupLocations()&&re()}function re(){e.setTimeout&&e.clearTimeout&&(o&&e.clearTimeout(o),F("Scheduling update"),o=e.setTimeout(ie,250,"timerToUpdateProgram"))}function ie(){o=void 0,u=!0,oe()}function oe(){var e,t,r,i;switch(n){case 1:null==(e=rr)||e.logStartUpdateProgram("PartialConfigReload"),function(){F("Reloading new file names and options"),Tn.assert(w),Tn.assert(h),n=0,T=MR(w.configFile.configFileSpecs,es(Vo(h),m),w,D,v),fR(T,es(h,m),w.configFile.configFileSpecs,S,C)&&(N=!0);H()}();break;case 2:null==(t=rr)||t.logStartUpdateProgram("FullConfigReload"),function(){Tn.assert(h),F(`Reloading config file: ${h}`),n=0,A&&A.clearCache();se(),p=!0,H(),fe(),he(Q(h),w,k,vW.ExtendedConfigFile)}();break;default:null==(r=rr)||r.logStartUpdateProgram("SynchronizeProgram"),H()}return null==(i=rr)||i.logStopUpdateProgram("Done"),J()}function se(){Tn.assert(h),ae(pF(h,g,D,l||(l=new Map),y,v))}function ae(e){T=e.fileNames,w=e.options,k=e.watchOptions,E=e.projectReferences,x=e.wildcardDirectories,S=DK(e).slice(),C=pR(e.raw),N=!0}function ce(t){const n=Q(t);let r=null==a?void 0:a.get(n);if(r){if(!r.updateLevel)return r.parsedCommandLine;if(r.parsedCommandLine&&1===r.updateLevel&&!e.getParsedCommandLine){F("Reloading new file names and options"),Tn.assert(w);const e=MR(r.parsedCommandLine.options.configFile.configFileSpecs,es(Vo(t),m),w,D);return r.parsedCommandLine={...r.parsedCommandLine,fileNames:e},r.updateLevel=void 0,r.parsedCommandLine}}F(`Loading config file: ${t}`);const i=e.getParsedCommandLine?e.getParsedCommandLine(t):function(e){const t=D.onUnRecoverableConfigFileDiagnostic;D.onUnRecoverableConfigFileDiagnostic=pt;const n=pF(e,void 0,D,l||(l=new Map),y);return D.onUnRecoverableConfigFileDiagnostic=t,n}(t);return r?(r.parsedCommandLine=i,r.updateLevel=void 0):(a||(a=new Map)).set(n,r={parsedCommandLine:i}),function(e,t,n){var r,i,o,s;n.watcher||(n.watcher=M(e,((n,r)=>{de(e,t,r);const i=null==a?void 0:a.get(t);i&&(i.updateLevel=2),U.removeResolutionsFromProjectReferenceRedirects(t),re()}),2e3,(null==(r=n.parsedCommandLine)?void 0:r.watchOptions)||k,vW.ConfigFileOfReferencedProject)),AV(n.watchedDirectories||(n.watchedDirectories=new Map),null==(i=n.parsedCommandLine)?void 0:i.wildcardDirectories,((r,i)=>{var o;return O(r,(n=>{const i=Q(n);A&&A.addOrDeleteFileOrDirectory(n,i),X(i);const o=null==a?void 0:a.get(t);(null==o?void 0:o.parsedCommandLine)&&(IV({watchedDirPath:Q(r),fileOrDirectory:n,fileOrDirectoryPath:i,configFileName:e,options:o.parsedCommandLine.options,program:o.parsedCommandLine.fileNames,currentDirectory:m,useCaseSensitiveFileNames:f,writeLog:F,toPath:Q})||2!==o.updateLevel&&(o.updateLevel=1,re()))}),i,(null==(o=n.parsedCommandLine)?void 0:o.watchOptions)||k,vW.WildcardDirectoryOfReferencedProject)})),he(t,null==(o=n.parsedCommandLine)?void 0:o.options,(null==(s=n.parsedCommandLine)?void 0:s.watchOptions)||k,vW.ExtendedConfigOfReferencedProject)}(t,n,r),i}function le(e,t,n,r,i,o){return M(t,((t,r)=>n(t,r,e)),r,i,o)}function ue(e,t,n){de(e,n,t),2===t&&d.has(n)&&U.invalidateResolutionOfFile(n),X(n),re()}function de(e,t,n){A&&A.addOrDeleteFile(e,t,n)}function _e(e,t){return(null==a?void 0:a.has(e))?hW:le(e,t,pe,500,k,vW.MissingFile)}function pe(e,t,n){de(e,n,t),0===t&&r.has(n)&&(r.get(n).close(),r.delete(n),X(n),re())}function fe(){AV(i||(i=new Map),x,me)}function me(e,t){return O(e,(t=>{Tn.assert(h),Tn.assert(w);const r=Q(t);A&&A.addOrDeleteFileOrDirectory(t,r),X(r),IV({watchedDirPath:Q(e),fileOrDirectory:t,fileOrDirectoryPath:r,configFileName:h,extraFileExtensions:v,options:w,program:J()||T,currentDirectory:m,useCaseSensitiveFileNames:f,writeLog:F,toPath:Q})||2!==n&&(n=1,re())}),t,k,vW.WildcardDirectory)}function he(e,t,r,i){kV(e,t,c||(c=new Map),((e,t)=>M(e,((r,i)=>{var o;de(e,t,i),l&&CV(l,t,Q);const s=null==(o=c.get(t))?void 0:o.projects;(null==s?void 0:s.size)&&s.forEach((e=>{if(h&&Q(h)===e)n=2;else{const t=null==a?void 0:a.get(e);t&&(t.updateLevel=2),U.removeResolutionsFromProjectReferenceRedirects(e)}re()}))}),2e3,r,i)),Q)}}var FW=(e=>(e[e.Unbuildable=0]="Unbuildable",e[e.UpToDate=1]="UpToDate",e[e.UpToDateWithUpstreamTypes=2]="UpToDateWithUpstreamTypes",e[e.OutputMissing=3]="OutputMissing",e[e.ErrorReadingFile=4]="ErrorReadingFile",e[e.OutOfDateWithSelf=5]="OutOfDateWithSelf",e[e.OutOfDateWithUpstream=6]="OutOfDateWithUpstream",e[e.OutOfDateBuildInfo=7]="OutOfDateBuildInfo",e[e.OutOfDateOptions=8]="OutOfDateOptions",e[e.OutOfDateRoots=9]="OutOfDateRoots",e[e.UpstreamOutOfDate=10]="UpstreamOutOfDate",e[e.UpstreamBlocked=11]="UpstreamBlocked",e[e.ComputingUpstream=12]="ComputingUpstream",e[e.TsVersionOutputOfDate=13]="TsVersionOutputOfDate",e[e.UpToDateWithInputFileText=14]="UpToDateWithInputFileText",e[e.ContainerOnly=15]="ContainerOnly",e[e.ForceBuild=16]="ForceBuild",e))(FW||{});function RW(e){return Lo(e,".json")?e:Zo(e,"tsconfig.json")}var LW=new Date(-864e13),jW=new Date(864e13);function zW(e,t){return function(e,t,n){const r=e.get(t);let i;return r||(i=n(),e.set(t,i)),r||i}(e,t,(()=>new Map))}function UW(e){return e.now?e.now():new Date}function BW(e){return!!e&&!!e.buildOrder}function qW(e){return BW(e)?e.buildOrder:e}function VW(e,t){return n=>{let r=t?`[${tK(XJ(e),"\x1b[90m")}] `:`${XJ(e)} - `;r+=`${oK(n.messageText,e.newLine)}${e.newLine+e.newLine}`,e.write(r)}}function KW(e,t,n,r){const i=wW(e,t);return i.getModifiedTime=e.getModifiedTime?t=>e.getModifiedTime(t):ht,i.setModifiedTime=e.setModifiedTime?(t,n)=>e.setModifiedTime(t,n):pt,i.deleteFile=e.deleteFile?t=>e.deleteFile(t):pt,i.reportDiagnostic=n||QJ(e),i.reportSolutionBuilderStatus=r||VW(e),i.now=tt(e,e.now),i}function JW(e=To,t,n,r,i){const o=KW(e,t,n,r);return o.reportErrorSummary=i,o}function WW(e=To,t,n,r,i){const o=KW(e,t,n,r);return et(o,yW(e,i)),o}function HW(e,t,n){return KH(!1,e,t,n)}function GW(e,t,n,r){return KH(!0,e,t,n,r)}function QW(e,t,n,r,i){const o=t,s=t,a=function(e){const t={};return CO.forEach((n=>{je(e,n.name)&&(t[n.name]=e[n.name])})),t}(r),c=xW(o,(()=>m.projectCompilerOptions));let l,u,d;TW(c),c.getParsedCommandLine=e=>eH(m,e,ZW(m,e)),c.resolveModuleNameLiterals=tt(o,o.resolveModuleNameLiterals),c.resolveTypeReferenceDirectiveReferences=tt(o,o.resolveTypeReferenceDirectiveReferences),c.resolveLibrary=tt(o,o.resolveLibrary),c.resolveModuleNames=tt(o,o.resolveModuleNames),c.resolveTypeReferenceDirectives=tt(o,o.resolveTypeReferenceDirectives),c.getModuleResolutionCache=tt(o,o.getModuleResolutionCache),c.resolveModuleNameLiterals||c.resolveModuleNames||(l=DL(c.getCurrentDirectory(),c.getCanonicalFileName),c.resolveModuleNameLiterals=(e,t,n,r,i)=>vK(e,t,n,r,i,o,l,mK),c.getModuleResolutionCache=()=>l),c.resolveTypeReferenceDirectiveReferences||c.resolveTypeReferenceDirectives||(u=PL(c.getCurrentDirectory(),c.getCanonicalFileName,void 0,null==l?void 0:l.getPackageJsonInfoCache(),null==l?void 0:l.optionsToRedirectsKey),c.resolveTypeReferenceDirectiveReferences=(e,t,n,r,i)=>vK(e,t,n,r,i,o,u,yK)),c.resolveLibrary||(d=DL(c.getCurrentDirectory(),c.getCanonicalFileName,void 0,null==l?void 0:l.getPackageJsonInfoCache()),c.resolveLibrary=(e,t,n)=>OL(e,t,n,o,d)),c.getBuildInfo=(e,t)=>kH(m,e,ZW(m,t),void 0);const{watchFile:_,watchDirectory:p,writeLog:f}=bW(s,r),m={host:o,hostWithWatch:s,parseConfigFileHost:zK(o),write:tt(o,o.trace),options:r,baseCompilerOptions:a,rootNames:n,baseWatchOptions:i,resolvedConfigFilePaths:new Map,configFileCache:new Map,projectStatus:new Map,extendedConfigCache:new Map,buildInfoCache:new Map,outputTimeStamps:new Map,builderPrograms:new Map,diagnostics:new Map,projectPendingBuild:new Map,projectErrorsReported:new Map,compilerHost:c,moduleResolutionCache:l,typeReferenceDirectiveResolutionCache:u,libraryResolutionCache:d,buildOrder:void 0,readFileWithCache:e=>o.readFile(e),projectCompilerOptions:a,cache:void 0,allProjectBuildPending:!0,needsSummary:!0,watchAllProjectsPending:e,watch:e,allWatchedWildcardDirectories:new Map,allWatchedInputFiles:new Map,allWatchedConfigFiles:new Map,allWatchedExtendedConfigFiles:new Map,allWatchedPackageJsonFiles:new Map,filesWatched:new Map,lastCachedPackageJsonLookups:new Map,timerToBuildInvalidatedProject:void 0,reportFileChangeDetected:!1,watchFile:_,watchDirectory:p,writeLog:f};return m}function YW(e,t){return rs(t,e.compilerHost.getCurrentDirectory(),e.compilerHost.getCanonicalFileName)}function ZW(e,t){const{resolvedConfigFilePaths:n}=e,r=n.get(t);if(void 0!==r)return r;const i=YW(e,t);return n.set(t,i),i}function XW(e){return!!e.options}function $W(e,t){const n=e.configFileCache.get(t);return n&&XW(n)?n:void 0}function eH(e,t,n){const{configFileCache:r}=e,i=r.get(n);if(i)return XW(i)?i:void 0;let o;mr("SolutionBuilder::beforeConfigFileParsing");const{parseConfigFileHost:s,baseCompilerOptions:a,baseWatchOptions:c,extendedConfigCache:l,host:u}=e;let d;return u.getParsedCommandLine?(d=u.getParsedCommandLine(t),d||(o=mS(ws.File_0_not_found,t))):(s.onUnRecoverableConfigFileDiagnostic=e=>o=e,d=pF(t,a,s,l,c),s.onUnRecoverableConfigFileDiagnostic=pt),r.set(n,d||o),mr("SolutionBuilder::afterConfigFileParsing"),hr("SolutionBuilder::Config file parsing","SolutionBuilder::beforeConfigFileParsing","SolutionBuilder::afterConfigFileParsing"),d}function tH(e,t){return RW(Xo(e.compilerHost.getCurrentDirectory(),t))}function nH(e,t){const n=new Map,r=new Map,i=[];let o,s;for(const c of t)a(c);return s?{buildOrder:o||_,circularDiagnostics:s}:o||_;function a(t,c){const l=ZW(e,t);if(r.has(l))return;if(n.has(l))return void(c||(s||(s=[])).push(mS(ws.Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0,i.join("\r\n"))));n.set(l,!0),i.push(t);const u=eH(e,t,l);if(u&&u.projectReferences)for(const n of u.projectReferences){a(tH(e,n.path),c||n.circular)}i.pop(),r.set(l,!0),(o||(o=[])).push(t)}}function rH(e){return e.buildOrder||function(e){const t=nH(e,e.rootNames.map((t=>tH(e,t))));e.resolvedConfigFilePaths.clear();const n=new Set(qW(t).map((t=>ZW(e,t)))),r={onDeleteValue:pt};Ax(e.configFileCache,n,r),Ax(e.projectStatus,n,r),Ax(e.builderPrograms,n,r),Ax(e.diagnostics,n,r),Ax(e.projectPendingBuild,n,r),Ax(e.projectErrorsReported,n,r),Ax(e.buildInfoCache,n,r),Ax(e.outputTimeStamps,n,r),Ax(e.lastCachedPackageJsonLookups,n,r),e.watch&&(Ax(e.allWatchedConfigFiles,n,{onDeleteValue:vx}),e.allWatchedExtendedConfigFiles.forEach((e=>{e.projects.forEach((t=>{n.has(t)||e.projects.delete(t)})),e.close()})),Ax(e.allWatchedWildcardDirectories,n,{onDeleteValue:e=>e.forEach(FV)}),Ax(e.allWatchedInputFiles,n,{onDeleteValue:e=>e.forEach(vx)}),Ax(e.allWatchedPackageJsonFiles,n,{onDeleteValue:e=>e.forEach(vx)}));return e.buildOrder=t}(e)}function iH(e,t,n){const r=t&&tH(e,t),i=rH(e);if(BW(i))return i;if(r){const t=ZW(e,r);if(-1===E(i,(n=>ZW(e,n)===t)))return}const o=r?nH(e,[r]):i;return Tn.assert(!BW(o)),Tn.assert(!n||void 0!==r),Tn.assert(!n||o[o.length-1]===r),n?o.slice(0,o.length-1):o}function oH(e){e.cache&&sH(e);const{compilerHost:t,host:n}=e,r=e.readFileWithCache,i=t.getSourceFile,{originalReadFile:o,originalFileExists:s,originalDirectoryExists:a,originalCreateDirectory:c,originalWriteFile:l,getSourceFileWithCache:u,readFileWithCache:d}=VV(n,(t=>YW(e,t)),((...e)=>i.call(t,...e)));e.readFileWithCache=d,t.getSourceFile=u,e.cache={originalReadFile:o,originalFileExists:s,originalDirectoryExists:a,originalCreateDirectory:c,originalWriteFile:l,originalReadFileWithCache:r,originalGetSourceFile:i}}function sH(e){if(!e.cache)return;const{cache:t,host:n,compilerHost:r,extendedConfigCache:i,moduleResolutionCache:o,typeReferenceDirectiveResolutionCache:s,libraryResolutionCache:a}=e;n.readFile=t.originalReadFile,n.fileExists=t.originalFileExists,n.directoryExists=t.originalDirectoryExists,n.createDirectory=t.originalCreateDirectory,n.writeFile=t.originalWriteFile,r.getSourceFile=t.originalGetSourceFile,e.readFileWithCache=t.originalReadFileWithCache,i.clear(),null==o||o.clear(),null==s||s.clear(),null==a||a.clear(),e.cache=void 0}function aH(e,t){e.projectStatus.delete(t),e.diagnostics.delete(t)}function cH({projectPendingBuild:e},t,n){const r=e.get(t);(void 0===r||r<n)&&e.set(t,n)}function lH(e,t){if(!e.allProjectBuildPending)return;e.allProjectBuildPending=!1,e.options.watch&&HH(e,ws.Starting_compilation_in_watch_mode),oH(e);qW(rH(e)).forEach((t=>e.projectPendingBuild.set(ZW(e,t),0))),t&&t.throwIfCancellationRequested()}var uH=(e=>(e[e.Build=0]="Build",e[e.UpdateOutputFileStamps=1]="UpdateOutputFileStamps",e))(uH||{});function dH(e,t){return e.projectPendingBuild.delete(t),e.diagnostics.has(t)?1:0}function _H(e,t,n,r,i,o){let s,a,c=0;return{kind:0,project:t,projectPath:n,buildOrder:o,getCompilerOptions:()=>i.options,getCurrentDirectory:()=>e.compilerHost.getCurrentDirectory(),getBuilderProgram:()=>l(gt),getProgram:()=>l((e=>e.getProgramOrUndefined())),getSourceFile:e=>l((t=>t.getSourceFile(e))),getSourceFiles:()=>u((e=>e.getSourceFiles())),getOptionsDiagnostics:e=>u((t=>t.getOptionsDiagnostics(e))),getGlobalDiagnostics:e=>u((t=>t.getGlobalDiagnostics(e))),getConfigFileParsingDiagnostics:()=>u((e=>e.getConfigFileParsingDiagnostics())),getSyntacticDiagnostics:(e,t)=>u((n=>n.getSyntacticDiagnostics(e,t))),getAllDependencies:e=>u((t=>t.getAllDependencies(e))),getSemanticDiagnostics:(e,t)=>u((n=>n.getSemanticDiagnostics(e,t))),getSemanticDiagnosticsOfNextAffectedFile:(e,t)=>l((n=>n.getSemanticDiagnosticsOfNextAffectedFile&&n.getSemanticDiagnosticsOfNextAffectedFile(e,t))),emit:(n,r,i,o,s)=>n||o?l((a=>{var c,l;return a.emit(n,r,i,o,s||(null==(l=(c=e.host).getCustomTransformers)?void 0:l.call(c,t)))})):(y(2,i),4===c?g(r,i):3===c?h(r,i,s):void 0),done:function(t,r,i){return y(6,t,r,i),mr("SolutionBuilder::Projects built"),dH(e,n)}};function l(e){return y(0),s&&e(s)}function u(e){return l(e)||_}function d(){var r,o,l;if(Tn.assert(void 0===s),e.options.dry)return WH(e,ws.A_non_dry_build_would_build_project_0,t),a=1,void(c=5);if(e.options.verbose&&WH(e,ws.Building_project_0,t),0===i.fileNames.length)return QH(e,n,DK(i)),a=0,void(c=5);const{host:u,compilerHost:d}=e;if(e.projectCompilerOptions=i.options,null==(r=e.moduleResolutionCache)||r.update(i.options),null==(o=e.typeReferenceDirectiveResolutionCache)||o.update(i.options),s=u.createProgram(i.fileNames,i.options,d,function({options:e,builderPrograms:t,compilerHost:n},r,i){if(e.force)return;const o=t.get(r);return o||IW(i.options,n)}(e,n,i),DK(i),i.projectReferences),e.watch){const t=null==(l=e.moduleResolutionCache)?void 0:l.getPackageJsonInfoCache().getInternalMap();e.lastCachedPackageJsonLookups.set(n,t&&new Set(Ke(t.values(),(t=>e.host.realpath&&(vL(t)||t.directoryExists)?e.host.realpath(Zo(t.packageDirectory,"package.json")):Zo(t.packageDirectory,"package.json"))))),e.builderPrograms.set(n,s)}c++}function p(t,r,o){t.length?({buildResult:a,step:c}=yH(e,n,s,i,t,r,o)):c++}function f(e){Tn.assertIsDefined(s),p([...s.getConfigFileParsingDiagnostics(),...s.getOptionsDiagnostics(e),...s.getGlobalDiagnostics(e),...s.getSyntacticDiagnostics(void 0,e)],8,"Syntactic")}function m(e){p(Tn.checkDefined(s).getSemanticDiagnostics(void 0,e),16,"Semantic")}function h(r,o,l){var u,d,_;Tn.assertIsDefined(s),Tn.assert(3===c);const p=s.saveEmitState();let f;const m=[],{emitResult:h}=fW(s,(e=>(f||(f=[])).push(e)),void 0,void 0,((e,t,n,r,i,o)=>m.push({name:e,text:t,writeByteOrderMark:n,data:o})),o,!1,l||(null==(d=(u=e.host).getCustomTransformers)?void 0:d.call(u,t)));if(f)return s.restoreEmitState(p),({buildResult:a,step:c}=yH(e,n,s,i,f,32,"Declaration file")),{emitSkipped:!0,diagnostics:h.diagnostics};const{host:g,compilerHost:y}=e,v=(null==(_=s.hasChangedEmitSignature)?void 0:_.call(s))?0:2,b=ky(),x=new Map,S=s.getCompilerOptions(),T=JS(S);let w,k;return m.forEach((({name:t,text:i,writeByteOrderMark:o,data:s})=>{const a=YW(e,t);x.set(YW(e,t),t),(null==s?void 0:s.buildInfo)&&TH(e,s.buildInfo,n,S,v);const c=(null==s?void 0:s.differsOnlyInMap)?to(e.host,t):void 0;pv(r?{writeFile:r}:y,b,t,i,o),(null==s?void 0:s.differsOnlyInMap)?e.host.setModifiedTime(t,c):!T&&e.watch&&(w||(w=SH(e,n))).set(a,k||(k=UW(e.host)))})),function(t,r,o,l){const u=t.getDiagnostics();if(u.length)return({buildResult:a,step:c}=yH(e,n,s,i,u,64,"Emit")),u;e.write&&r.forEach((t=>hH(e,i,t)));AH(e,i,n,ws.Updating_unchanged_output_timestamps_of_project_0,r),e.diagnostics.delete(n),e.projectStatus.set(n,{type:1,oldestOutputFileName:o}),gH(e,s),c=5,a=l}(b,x,m.length?m[0].name:cV(i,!g.useCaseSensitiveFileNames()),v),h}function g(t,r){Tn.assertIsDefined(s),Tn.assert(4===c);const o=s.emitBuildInfo(((r,i,o,a,c,l)=>{(null==l?void 0:l.buildInfo)&&TH(e,l.buildInfo,n,s.getCompilerOptions(),2),t?t(r,i,o,a,c,l):e.compilerHost.writeFile(r,i,o,a,c,l)}),r);return o.diagnostics.length&&(GH(e,o.diagnostics),e.diagnostics.set(n,[...e.diagnostics.get(n),...o.diagnostics]),a&=64),o.emittedFiles&&e.write&&o.emittedFiles.forEach((t=>hH(e,i,t))),gH(e,s),c=5,o}function y(s,l,u,_){for(;c<=s&&c<6;){const s=c;switch(c){case 0:d();break;case 1:f(l);break;case 2:m(l);break;case 3:h(u,l,_);break;case 4:g(u,l);break;case 5:PH(e,t,n,r,i,o,Tn.checkDefined(a)),c++}Tn.assert(c>s)}}}function pH(e,t,n){if(!e.projectPendingBuild.size)return;if(BW(t))return;const{options:r,projectPendingBuild:i}=e;for(let o=0;o<t.length;o++){const s=t[o],a=ZW(e,s),c=e.projectPendingBuild.get(a);if(void 0===c)continue;n&&(n=!1,XH(e,t));const l=eH(e,s,a);if(!l){YH(e,a),i.delete(a);continue}2===c?(zH(e,s,a,l),UH(e,a,l),BH(e,s,a,l),qH(e,s,a,l),VH(e,s,a,l)):1===c&&(l.fileNames=MR(l.options.configFile.configFileSpecs,Vo(s),l.options,e.parseConfigFileHost),fR(l.fileNames,s,l.options.configFile.configFileSpecs,l.errors,pR(l.raw)),qH(e,s,a,l),VH(e,s,a,l));const u=NH(e,l,a);if(!r.force){if(1===u.type){$H(e,s,u),QH(e,a,DK(l)),i.delete(a),r.dry&&WH(e,ws.Project_0_is_up_to_date,s);continue}if(2===u.type||14===u.type)return QH(e,a,DK(l)),{kind:1,status:u,project:s,projectPath:a,projectIndex:o,config:l}}if(11!==u.type){if(15!==u.type)return{kind:0,status:u,project:s,projectPath:a,projectIndex:o,config:l};$H(e,s,u),QH(e,a,DK(l)),i.delete(a)}else $H(e,s,u),QH(e,a,DK(l)),i.delete(a),r.verbose&&WH(e,u.upstreamProjectBlocked?ws.Skipping_build_of_project_0_because_its_dependency_1_was_not_built:ws.Skipping_build_of_project_0_because_its_dependency_1_has_errors,s,u.upstreamProjectName)}}function fH(e,t,n){return $H(e,t.project,t.status),1!==t.kind?_H(e,t.project,t.projectPath,t.projectIndex,t.config,n):function(e,t,n,r,i){let o=!0;return{kind:1,project:t,projectPath:n,buildOrder:i,getCompilerOptions:()=>r.options,getCurrentDirectory:()=>e.compilerHost.getCurrentDirectory(),updateOutputFileStatmps:()=>{DH(e,r,n),o=!1},done:()=>(o&&DH(e,r,n),mr("SolutionBuilder::Timestamps only updates"),dH(e,n))}}(e,t.project,t.projectPath,t.config,n)}function mH(e,t,n){const r=pH(e,t,n);return r?fH(e,r,t):r}function hH({write:e},t,n){e&&t.options.listEmittedFiles&&e(`TSFILE: ${n}`)}function gH(e,t){t&&(e.write&&aW(t,e.write),e.host.afterProgramEmitAndDiagnostics&&e.host.afterProgramEmitAndDiagnostics(t),t.releaseProgram()),e.projectCompilerOptions=e.baseCompilerOptions}function yH(e,t,n,r,i,o,s){const a=n&&!n.getCompilerOptions().outFile;return QH(e,t,i),e.projectStatus.set(t,{type:0,reason:`${s} errors`}),a?{buildResult:o,step:4}:(gH(e,n),{buildResult:o,step:5})}function vH(e){return!!e.watcher}function bH(e,t){const n=YW(e,t),r=e.filesWatched.get(n);if(e.watch&&r){if(!vH(r))return r;if(r.modifiedTime)return r.modifiedTime}const i=to(e.host,t);return e.watch&&(r?r.modifiedTime=i:e.filesWatched.set(n,i)),i}function xH(e,t,n,r,i,o,s){const a=YW(e,t),c=e.filesWatched.get(a);if(c&&vH(c))c.callbacks.push(n);else{const l=e.watchFile(t,((t,n,r)=>{const i=Tn.checkDefined(e.filesWatched.get(a));Tn.assert(vH(i)),i.modifiedTime=r,i.callbacks.forEach((e=>e(t,n,r)))}),r,i,o,s);e.filesWatched.set(a,{callbacks:[n],watcher:l,modifiedTime:c})}return{close:()=>{const t=Tn.checkDefined(e.filesWatched.get(a));Tn.assert(vH(t)),1===t.callbacks.length?(e.filesWatched.delete(a),FV(t)):nn(t.callbacks,n)}}}function SH(e,t){if(!e.watch)return;let n=e.outputTimeStamps.get(t);return n||e.outputTimeStamps.set(t,n=new Map),n}function TH(e,t,n,r,i){const o=Jq(r),s=wH(e,o,n),a=UW(e.host);s?(s.buildInfo=t,s.modifiedTime=a,2&i||(s.latestChangedDtsTime=a)):e.buildInfoCache.set(n,{path:YW(e,o),buildInfo:t,modifiedTime:a,latestChangedDtsTime:2&i?void 0:a})}function wH(e,t,n){const r=YW(e,t),i=e.buildInfoCache.get(n);return(null==i?void 0:i.path)===r?i:void 0}function kH(e,t,n,r){const i=YW(e,t),o=e.buildInfoCache.get(n);if(void 0!==o&&o.path===i)return o.buildInfo||void 0;const s=e.readFileWithCache(t),a=s?pV(t,s):void 0;return e.buildInfoCache.set(n,{path:i,buildInfo:a||!1,modifiedTime:r||eo}),a}function EH(e,t,n,r){if(n<bH(e,t))return{type:5,outOfDateOutputFileName:r,newerInputFileName:t}}function CH(e,t,n){return e.buildInfoCache.get(n).path===t.path}function NH(e,t,n){if(void 0===t)return{type:0,reason:"File deleted mid-build"};const r=e.projectStatus.get(n);if(void 0!==r)return r;mr("SolutionBuilder::beforeUpToDateCheck");const i=function(e,t,n){var r,i,o,s;if(!t.fileNames.length&&!pR(t.raw))return{type:15};let a;const c=!!e.options.force;if(t.projectReferences){e.projectStatus.set(n,{type:12});for(const n of t.projectReferences){const t=UK(n),r=ZW(e,t),i=eH(e,t,r),o=NH(e,i,r);if(12!==o.type&&15!==o.type){if(0===o.type||11===o.type)return{type:11,upstreamProjectName:n.path,upstreamProjectBlocked:11===o.type};if(1!==o.type)return{type:10,upstreamProjectName:n.path};c||(a||(a=[])).push({ref:n,refStatus:o,resolvedRefPath:r,resolvedConfig:i})}}}if(c)return{type:16};const{host:l}=e,d=Jq(t.options);let p,f,m,g,y,v=jW;if(d){const a=wH(e,d,n);if(f=(null==a?void 0:a.modifiedTime)||to(l,d),f===eo)return a||e.buildInfoCache.set(n,{path:YW(e,d),buildInfo:!1,modifiedTime:f}),{type:3,missingOutputFileName:d};const c=kH(e,d,n,f);if(!c)return{type:4,fileName:d};if(c.program&&c.version!==u)return{type:13,version:c.version};if(c.program){if((null==(r=c.program.changeFileSet)?void 0:r.length)||(t.options.noEmit?null==(s=c.program.semanticDiagnosticsPerFile)?void 0:s.length:(null==(i=c.program.affectedFilesPendingEmit)?void 0:i.length)||(null==(o=c.program.emitDiagnosticsPerFile)?void 0:o.length)))return{type:7,buildInfoFile:d};if(!t.options.noEmit&&QK(t.options,c.program.options||{}))return{type:8,buildInfoFile:d};m=c.program}v=f,p=d}let b=LW,x=!1;const S=new Set;for(const u of t.fileNames){const t=bH(e,u);if(t===eo)return{type:0,reason:`${u} does not exist`};const n=m?YW(e,u):void 0;if(f&&f<t){let t,r;if(m){g||(g=EJ(m,d,l));const i=g.roots.get(n);t=g.fileInfos.get(i??n);const o=t?e.readFileWithCache(i??u):void 0;r=void 0!==o?SW(l,o):void 0,t&&t===r&&(x=!0)}if(!t||t!==r)return{type:5,outOfDateOutputFileName:d,newerInputFileName:u}}t>b&&(y=u,b=t),m&&S.add(n)}if(m){g||(g=EJ(m,d,l));const e=f_(g.roots,((e,t)=>S.has(t)?void 0:t));if(e)return{type:9,buildInfoFile:d,inputFile:e}}if(!d){const r=sV(t,!l.useCaseSensitiveFileNames()),i=SH(e,n);for(const t of r){const n=YW(e,t);let r=null==i?void 0:i.get(n);if(r||(r=to(e.host,t),null==i||i.set(n,r)),r===eo)return{type:3,missingOutputFileName:t};if(r<b)return{type:5,outOfDateOutputFileName:t,newerInputFileName:y};r<v&&(v=r,p=t)}}const T=e.buildInfoCache.get(n);let w=!1;if(a)for(const{ref:u,refStatus:_,resolvedConfig:h,resolvedRefPath:A}of a){if(_.newestInputFileTime&&_.newestInputFileTime<=v)continue;if(T&&CH(e,T,A))return{type:6,outOfDateOutputFileName:d,newerProjectName:u.path};const t=IH(e,h.options,A);if(!(t&&t<=v))return Tn.assert(void 0!==p,"Should have an oldest output filename here"),{type:6,outOfDateOutputFileName:p,newerProjectName:u.path};w=!0}const k=EH(e,t.options.configFilePath,v,p);if(k)return k;const E=h(t.options.configFile.extendedSourceFiles||_,(t=>EH(e,t,v,p)));if(E)return E;const C=e.lastCachedPackageJsonLookups.get(n),N=C&&m_(C,(t=>EH(e,t,v,p)));return N||{type:w?2:x?14:1,newestInputFileTime:b,newestInputFileName:y,oldestOutputFileName:p}}(e,t,n);return mr("SolutionBuilder::afterUpToDateCheck"),hr("SolutionBuilder::Up-to-date check","SolutionBuilder::beforeUpToDateCheck","SolutionBuilder::afterUpToDateCheck"),e.projectStatus.set(n,i),i}function AH(e,t,n,r,i){if(t.options.noEmit)return;let o;const s=Jq(t.options);if(s)return(null==i?void 0:i.has(YW(e,s)))||(e.options.verbose&&WH(e,r,t.options.configFilePath),e.host.setModifiedTime(s,o=UW(e.host)),wH(e,s,n).modifiedTime=o),void e.outputTimeStamps.delete(n);const{host:a}=e,c=sV(t,!a.useCaseSensitiveFileNames()),l=SH(e,n),u=l?new Set:void 0;if(!i||c.length!==i.size){let n=!!e.options.verbose;for(const s of c){const c=YW(e,s);(null==i?void 0:i.has(c))||(n&&(n=!1,WH(e,r,t.options.configFilePath)),a.setModifiedTime(s,o||(o=UW(e.host))),l&&(l.set(c,o),u.add(c)))}}null==l||l.forEach(((e,t)=>{(null==i?void 0:i.has(t))||u.has(t)||l.delete(t)}))}function IH(e,t,n){if(!t.composite)return;const r=Tn.checkDefined(e.buildInfoCache.get(n));if(void 0!==r.latestChangedDtsTime)return r.latestChangedDtsTime||void 0;const i=r.buildInfo&&r.buildInfo.program&&r.buildInfo.program.latestChangedDtsFile?e.host.getModifiedTime(es(r.buildInfo.program.latestChangedDtsFile,Vo(r.path))):void 0;return r.latestChangedDtsTime=i||!1,i}function DH(e,t,n){if(e.options.dry)return WH(e,ws.A_non_dry_build_would_update_timestamps_for_output_of_project_0,t.options.configFilePath);AH(e,t,n,ws.Updating_output_timestamps_of_project_0),e.projectStatus.set(n,{type:1,oldestOutputFileName:cV(t,!e.host.useCaseSensitiveFileNames())})}function PH(e,t,n,r,i,o,s){if(!(124&s)&&i.options.composite)for(let a=r+1;a<o.length;a++){const r=o[a],i=ZW(e,r);if(e.projectPendingBuild.has(i))continue;const c=eH(e,r,i);if(c&&c.projectReferences)for(const o of c.projectReferences){if(ZW(e,tH(e,o.path))!==n)continue;const r=e.projectStatus.get(i);if(r)switch(r.type){case 1:if(2&s){r.type=2;break}case 14:case 2:2&s||e.projectStatus.set(i,{type:6,outOfDateOutputFileName:r.oldestOutputFileName,newerProjectName:t});break;case 11:ZW(e,tH(e,r.upstreamProjectName))===n&&aH(e,i)}cH(e,i,0);break}}}function MH(e,t,n,r,i,o){mr("SolutionBuilder::beforeBuild");const s=function(e,t,n,r,i,o){const s=iH(e,t,o);if(!s)return 3;lH(e,n);let a=!0,c=0;for(;;){const t=mH(e,s,a);if(!t)break;a=!1,t.done(n,r,null==i?void 0:i(t.project)),e.diagnostics.has(t.projectPath)||c++}return sH(e),ZH(e,s),function(e,t){if(!e.watchAllProjectsPending)return;mr("SolutionBuilder::beforeWatcherCreation"),e.watchAllProjectsPending=!1;for(const n of qW(t)){const t=ZW(e,n),r=eH(e,n,t);zH(e,n,t,r),UH(e,t,r),r&&(BH(e,n,t,r),qH(e,n,t,r),VH(e,n,t,r))}mr("SolutionBuilder::afterWatcherCreation"),hr("SolutionBuilder::Watcher creation","SolutionBuilder::beforeWatcherCreation","SolutionBuilder::afterWatcherCreation")}(e,s),BW(s)?4:s.some((t=>e.diagnostics.has(ZW(e,t))))?c?2:1:0}(e,t,n,r,i,o);return mr("SolutionBuilder::afterBuild"),hr("SolutionBuilder::Build","SolutionBuilder::beforeBuild","SolutionBuilder::afterBuild"),s}function OH(e,t,n){mr("SolutionBuilder::beforeClean");const r=function(e,t,n){const r=iH(e,t,n);if(!r)return 3;if(BW(r))return GH(e,r.circularDiagnostics),4;const{options:i,host:o}=e,s=i.dry?[]:void 0;for(const a of r){const t=ZW(e,a),n=eH(e,a,t);if(void 0===n){YH(e,t);continue}const r=sV(n,!o.useCaseSensitiveFileNames());if(!r.length)continue;const i=new Set(n.fileNames.map((t=>YW(e,t))));for(const a of r)i.has(YW(e,a))||o.fileExists(a)&&(s?s.push(a):(o.deleteFile(a),FH(e,t,0)))}s&&WH(e,ws.A_non_dry_build_would_delete_the_following_files_Colon_0,s.map((e=>`\r\n * ${e}`)).join(""));return 0}(e,t,n);return mr("SolutionBuilder::afterClean"),hr("SolutionBuilder::Clean","SolutionBuilder::beforeClean","SolutionBuilder::afterClean"),r}function FH(e,t,n){e.host.getParsedCommandLine&&1===n&&(n=2),2===n&&(e.configFileCache.delete(t),e.buildOrder=void 0),e.needsSummary=!0,aH(e,t),cH(e,t,n),oH(e)}function RH(e,t,n){e.reportFileChangeDetected=!0,FH(e,t,n),LH(e,250,!0)}function LH(e,t,n){const{hostWithWatch:r}=e;r.setTimeout&&r.clearTimeout&&(e.timerToBuildInvalidatedProject&&r.clearTimeout(e.timerToBuildInvalidatedProject),e.timerToBuildInvalidatedProject=r.setTimeout(jH,t,"timerToBuildInvalidatedProject",e,n))}function jH(e,t,n){mr("SolutionBuilder::beforeBuild");const r=function(e,t){e.timerToBuildInvalidatedProject=void 0,e.reportFileChangeDetected&&(e.reportFileChangeDetected=!1,e.projectErrorsReported.clear(),HH(e,ws.File_change_detected_Starting_incremental_compilation));let n=0;const r=rH(e),i=mH(e,r,!1);if(i)for(i.done(),n++;e.projectPendingBuild.size;){if(e.timerToBuildInvalidatedProject)return;const i=pH(e,r,!1);if(!i)break;if(1!==i.kind&&(t||5===n))return void LH(e,100,!1);fH(e,i,r).done(),1!==i.kind&&n++}return sH(e),r}(t,n);mr("SolutionBuilder::afterBuild"),hr("SolutionBuilder::Build","SolutionBuilder::beforeBuild","SolutionBuilder::afterBuild"),r&&ZH(t,r)}function zH(e,t,n,r){e.watch&&!e.allWatchedConfigFiles.has(n)&&e.allWatchedConfigFiles.set(n,xH(e,t,(()=>RH(e,n,2)),2e3,null==r?void 0:r.watchOptions,vW.ConfigFile,t))}function UH(e,t,n){kV(t,null==n?void 0:n.options,e.allWatchedExtendedConfigFiles,((t,r)=>xH(e,t,(()=>{var t;return null==(t=e.allWatchedExtendedConfigFiles.get(r))?void 0:t.projects.forEach((t=>RH(e,t,2)))}),2e3,null==n?void 0:n.watchOptions,vW.ExtendedConfigFile)),(t=>YW(e,t)))}function BH(e,t,n,r){e.watch&&AV(zW(e.allWatchedWildcardDirectories,n),r.wildcardDirectories,((i,o)=>e.watchDirectory(i,(o=>{var s;IV({watchedDirPath:YW(e,i),fileOrDirectory:o,fileOrDirectoryPath:YW(e,o),configFileName:t,currentDirectory:e.compilerHost.getCurrentDirectory(),options:r.options,program:e.builderPrograms.get(n)||(null==(s=$W(e,n))?void 0:s.fileNames),useCaseSensitiveFileNames:e.parseConfigFileHost.useCaseSensitiveFileNames,writeLog:t=>e.writeLog(t),toPath:t=>YW(e,t)})||RH(e,n,1)}),o,null==r?void 0:r.watchOptions,vW.WildcardDirectory,t)))}function qH(e,t,n,r){e.watch&&Ix(zW(e.allWatchedInputFiles,n),new Set(r.fileNames),{createNewValue:i=>xH(e,i,(()=>RH(e,n,0)),250,null==r?void 0:r.watchOptions,vW.SourceFile,t),onDeleteValue:vx})}function VH(e,t,n,r){e.watch&&e.lastCachedPackageJsonLookups&&Ix(zW(e.allWatchedPackageJsonFiles,n),e.lastCachedPackageJsonLookups.get(n),{createNewValue:i=>xH(e,i,(()=>RH(e,n,0)),2e3,null==r?void 0:r.watchOptions,vW.PackageJson,t),onDeleteValue:vx})}function KH(e,t,n,r,i){const o=QW(e,t,n,r,i);return{build:(e,t,n,r)=>MH(o,e,t,n,r),clean:e=>OH(o,e),buildReferences:(e,t,n,r)=>MH(o,e,t,n,r,!0),cleanReferences:e=>OH(o,e,!0),getNextInvalidatedProject:e=>(lH(o,e),mH(o,rH(o),!1)),getBuildOrder:()=>rH(o),getUpToDateStatusOfProject:e=>{const t=tH(o,e),n=ZW(o,t);return NH(o,eH(o,t,n),n)},invalidateProject:(e,t)=>FH(o,e,t||0),close:()=>function(e){Nx(e.allWatchedConfigFiles,vx),Nx(e.allWatchedExtendedConfigFiles,FV),Nx(e.allWatchedWildcardDirectories,(e=>Nx(e,FV))),Nx(e.allWatchedInputFiles,(e=>Nx(e,vx))),Nx(e.allWatchedPackageJsonFiles,(e=>Nx(e,vx)))}(o)}}function JH(e,t){return ys(t,e.compilerHost.getCurrentDirectory(),e.compilerHost.getCanonicalFileName)}function WH(e,t,...n){e.host.reportSolutionBuilderStatus(mS(t,...n))}function HH(e,t,...n){var r,i;null==(i=(r=e.hostWithWatch).onWatchStatusChange)||i.call(r,mS(t,...n),e.host.getNewLine(),e.baseCompilerOptions)}function GH({host:e},t){t.forEach((t=>e.reportDiagnostic(t)))}function QH(e,t,n){GH(e,n),e.projectErrorsReported.set(t,!0),n.length&&e.diagnostics.set(t,n)}function YH(e,t){QH(e,t,[e.configFileCache.get(t)])}function ZH(e,t){if(!e.needsSummary)return;e.needsSummary=!1;const n=e.watch||!!e.host.reportErrorSummary,{diagnostics:r}=e;let i=0,o=[];BW(t)?(XH(e,t.buildOrder),GH(e,t.circularDiagnostics),n&&(i+=tW(t.circularDiagnostics)),n&&(o=[...o,...nW(t.circularDiagnostics)])):(t.forEach((t=>{const n=ZW(e,t);e.projectErrorsReported.has(n)||GH(e,r.get(n)||_)})),n&&r.forEach((e=>i+=tW(e))),n&&r.forEach((e=>[...o,...nW(e)]))),e.watch?HH(e,rW(i),i):e.host.reportErrorSummary&&e.host.reportErrorSummary(i,o)}function XH(e,t){e.options.verbose&&WH(e,ws.Projects_in_this_build_Colon_0,t.map((t=>"\r\n * "+JH(e,t))).join(""))}function $H(e,t,n){e.options.verbose&&function(e,t,n){switch(n.type){case 5:return WH(e,ws.Project_0_is_out_of_date_because_output_1_is_older_than_input_2,JH(e,t),JH(e,n.outOfDateOutputFileName),JH(e,n.newerInputFileName));case 6:return WH(e,ws.Project_0_is_out_of_date_because_output_1_is_older_than_input_2,JH(e,t),JH(e,n.outOfDateOutputFileName),JH(e,n.newerProjectName));case 3:return WH(e,ws.Project_0_is_out_of_date_because_output_file_1_does_not_exist,JH(e,t),JH(e,n.missingOutputFileName));case 4:return WH(e,ws.Project_0_is_out_of_date_because_there_was_error_reading_file_1,JH(e,t),JH(e,n.fileName));case 7:return WH(e,ws.Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_some_of_the_changes_were_not_emitted,JH(e,t),JH(e,n.buildInfoFile));case 8:return WH(e,ws.Project_0_is_out_of_date_because_buildinfo_file_1_indicates_there_is_change_in_compilerOptions,JH(e,t),JH(e,n.buildInfoFile));case 9:return WH(e,ws.Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_file_2_was_root_file_of_compilation_but_not_any_more,JH(e,t),JH(e,n.buildInfoFile),JH(e,n.inputFile));case 1:if(void 0!==n.newestInputFileTime)return WH(e,ws.Project_0_is_up_to_date_because_newest_input_1_is_older_than_output_2,JH(e,t),JH(e,n.newestInputFileName||""),JH(e,n.oldestOutputFileName||""));break;case 2:return WH(e,ws.Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies,JH(e,t));case 14:return WH(e,ws.Project_0_is_up_to_date_but_needs_to_update_timestamps_of_output_files_that_are_older_than_input_files,JH(e,t));case 10:return WH(e,ws.Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date,JH(e,t),JH(e,n.upstreamProjectName));case 11:return WH(e,n.upstreamProjectBlocked?ws.Project_0_can_t_be_built_because_its_dependency_1_was_not_built:ws.Project_0_can_t_be_built_because_its_dependency_1_has_errors,JH(e,t),JH(e,n.upstreamProjectName));case 0:return WH(e,ws.Failed_to_parse_file_0_Colon_1,JH(e,t),n.reason);case 13:return WH(e,ws.Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_current_version_2,JH(e,t),n.version,u);case 16:WH(e,ws.Project_0_is_being_forcibly_rebuilt,JH(e,t))}}(e,t,n)}var eG=(e=>(e[e.time=0]="time",e[e.count=1]="count",e[e.memory=2]="memory",e))(eG||{});function tG(e){const t=function(){const e=new Map;return e.set("Library",0),e.set("Definitions",0),e.set("TypeScript",0),e.set("JavaScript",0),e.set("JSON",0),e.set("Other",0),e}();return h(e.getSourceFiles(),(n=>{const r=function(e,t){if(e.isSourceFileDefaultLibrary(t))return"Library";if(t.isDeclarationFile)return"Definitions";const n=t.path;return jo(n,jT)?"TypeScript":jo(n,qT)?"JavaScript":Lo(n,".json")?"JSON":"Other"}(e,n),i=Zs(n).length;t.set(r,t.get(r)+i)})),t}function nG(e,t,n){return iG(e,n)?QJ(e,!0):t}function rG(e){return!!e.writeOutputIsTTY&&e.writeOutputIsTTY()&&!e.getEnvironmentVariable("NO_COLOR")}function iG(e,t){return t&&void 0!==t.pretty?t.pretty:rG(e)}function oG(e){return e.options.all?ve(DO,((e,t)=>Ft(e.name,t.name))):M(DO.slice(),(e=>!!e.showInSimplifiedHelpView))}function sG(e){e.write(_F(ws.Version_0,u)+e.newLine)}function aG(e){if(!rG(e))return{bold:e=>e,blue:e=>e,blueBackground:e=>e,brightWhite:e=>e};const t=e.getEnvironmentVariable("OS")&&e.getEnvironmentVariable("OS").toLowerCase().includes("windows"),n=e.getEnvironmentVariable("WT_SESSION"),r=e.getEnvironmentVariable("TERM_PROGRAM")&&"vscode"===e.getEnvironmentVariable("TERM_PROGRAM");const i="truecolor"===e.getEnvironmentVariable("COLORTERM")||"xterm-256color"===e.getEnvironmentVariable("TERM");function o(e){return`\x1b[97m${e}\x1b[39m`}return{bold:function(e){return`\x1b[1m${e}\x1b[22m`},blue:function(e){return!t||n||r?`\x1b[94m${e}\x1b[39m`:o(e)},brightWhite:o,blueBackground:function(e){return i?`\x1b[48;5;68m${e}\x1b[39;49m`:`\x1b[44m${e}\x1b[39;49m`}}}function cG(e){return`--${e.name}${e.shortName?`, -${e.shortName}`:""}`}function lG(e,t,n,r){var i;const o=[],s=aG(e),a=cG(t),c=function(e){if("object"===e.type)return;return{valueType:function(e){switch(Tn.assert("listOrElement"!==e.type),e.type){case"string":case"number":case"boolean":return _F(ws.type_Colon);case"list":return _F(ws.one_or_more_Colon);default:return _F(ws.one_of_Colon)}}(e),possibleValues:function e(t){let n;switch(t.type){case"string":case"number":case"boolean":n=t.type;break;case"list":case"listOrElement":n=e(t.element);break;case"object":n="";break;default:const r={};return t.type.forEach(((e,n)=>{var i;(null==(i=t.deprecatedKeys)?void 0:i.has(n))||(r[e]||(r[e]=[])).push(n)})),Object.entries(r).map((([,e])=>e.join("/"))).join(", ")}return n}(e)}}(t),l="object"==typeof t.defaultValueDescription?_F(t.defaultValueDescription):(u=t.defaultValueDescription,d="list"===t.type||"listOrElement"===t.type?t.element.type:t.type,void 0!==u&&"object"==typeof d?Ke(d.entries()).filter((([,e])=>e===u)).map((([e])=>e)).join("/"):String(u));var u,d;const _=(null==(i=e.getWidthOfTerminal)?void 0:i.call(e))??0;if(_>=80){let i="";t.description&&(i=_F(t.description)),o.push(...f(a,i,n,r,_,!0),e.newLine),p(c,t)&&(c&&o.push(...f(c.valueType,c.possibleValues,n,r,_,!1),e.newLine),l&&o.push(...f(_F(ws.default_Colon),l,n,r,_,!1),e.newLine)),o.push(e.newLine)}else{if(o.push(s.blue(a),e.newLine),t.description){const e=_F(t.description);o.push(e)}if(o.push(e.newLine),p(c,t)){if(c&&o.push(`${c.valueType} ${c.possibleValues}`),l){c&&o.push(e.newLine);const t=_F(ws.default_Colon);o.push(`${t} ${l}`)}o.push(e.newLine)}o.push(e.newLine)}return o;function p(e,t){const n=t.defaultValueDescription;return t.category!==ws.Command_line_Options&&(!A(["string"],null==e?void 0:e.possibleValues)||!A([void 0,"false","n/a"],n))}function f(e,t,n,r,i,o){const a=[];let c=!0,l=t;const u=i-r;for(;l.length>0;){let t="";c?(t=e.padStart(n),t=t.padEnd(r),t=o?s.blue(t):t):t="".padStart(r);const i=l.substr(0,u);l=l.slice(u),a.push(`${t}${i}`),c=!1}return a}}function uG(e,t){let n=0;for(const s of t){const e=cG(s).length;n=n>e?n:e}const r=n+2,i=r+2;let o=[];for(const s of t){const t=lG(e,s,r,i);o=[...o,...t]}return o[o.length-2]!==e.newLine&&o.push(e.newLine),o}function dG(e,t,n,r,i,o){let s=[];if(s.push(aG(e).bold(t)+e.newLine+e.newLine),i&&s.push(i+e.newLine+e.newLine),!r)return s=[...s,...uG(e,n)],o&&s.push(o+e.newLine+e.newLine),s;const a=new Map;for(const c of n){if(!c.category)continue;const e=_F(c.category),t=a.get(e)??[];t.push(c),a.set(e,t)}return a.forEach(((t,n)=>{s.push(`### ${n}${e.newLine}${e.newLine}`),s=[...s,...uG(e,t)]})),o&&s.push(o+e.newLine+e.newLine),s}function _G(e,t){let n=[...pG(e,`${_F(ws.tsc_Colon_The_TypeScript_Compiler)} - ${_F(ws.Version_0,u)}`)];n=[...n,...dG(e,_F(ws.BUILD_OPTIONS),t,!1,fS(ws.Using_build_b_will_make_tsc_behave_more_like_a_build_orchestrator_than_a_compiler_This_is_used_to_trigger_building_composite_projects_which_you_can_learn_more_about_at_0,"https://aka.ms/tsc-composite-builds"))];for(const r of n)e.write(r)}function pG(e,t){var n;const r=aG(e),i=[],o=(null==(n=e.getWidthOfTerminal)?void 0:n.call(e))??0,s=r.blueBackground("".padStart(5)),a=r.blueBackground(r.brightWhite("TS ".padStart(5)));if(o>=t.length+5){const n=(o>120?120:o)-5;i.push(t.padEnd(n)+s+e.newLine),i.push("".padStart(n)+a+e.newLine)}else i.push(t+e.newLine),i.push(e.newLine);return i}function fG(e,t){t.options.all?function(e,t,n,r){let i=[...pG(e,`${_F(ws.tsc_Colon_The_TypeScript_Compiler)} - ${_F(ws.Version_0,u)}`)];i=[...i,...dG(e,_F(ws.ALL_COMPILER_OPTIONS),t,!0,void 0,fS(ws.You_can_learn_about_all_of_the_compiler_options_at_0,"https://aka.ms/tsc"))],i=[...i,...dG(e,_F(ws.WATCH_OPTIONS),r,!1,_F(ws.Including_watch_w_will_start_watching_the_current_project_for_the_file_changes_Once_set_you_can_config_watch_mode_with_Colon))],i=[...i,...dG(e,_F(ws.BUILD_OPTIONS),n,!1,fS(ws.Using_build_b_will_make_tsc_behave_more_like_a_build_orchestrator_than_a_compiler_This_is_used_to_trigger_building_composite_projects_which_you_can_learn_more_about_at_0,"https://aka.ms/tsc-composite-builds"))];for(const o of i)e.write(o)}(e,oG(t),VO,EO):function(e,t){const n=aG(e);let r=[...pG(e,`${_F(ws.tsc_Colon_The_TypeScript_Compiler)} - ${_F(ws.Version_0,u)}`)];r.push(n.bold(_F(ws.COMMON_COMMANDS))+e.newLine+e.newLine),s("tsc",ws.Compiles_the_current_project_tsconfig_json_in_the_working_directory),s("tsc app.ts util.ts",ws.Ignoring_tsconfig_json_compiles_the_specified_files_with_default_compiler_options),s("tsc -b",ws.Build_a_composite_project_in_the_working_directory),s("tsc --init",ws.Creates_a_tsconfig_json_with_the_recommended_settings_in_the_working_directory),s("tsc -p ./path/to/tsconfig.json",ws.Compiles_the_TypeScript_project_located_at_the_specified_path),s("tsc --help --all",ws.An_expanded_version_of_this_information_showing_all_possible_compiler_options),s(["tsc --noEmit","tsc --target esnext"],ws.Compiles_the_current_project_with_additional_settings);const i=t.filter((e=>e.isCommandLineOnly||e.category===ws.Command_line_Options)),o=t.filter((e=>!A(i,e)));r=[...r,...dG(e,_F(ws.COMMAND_LINE_FLAGS),i,!1,void 0,void 0),...dG(e,_F(ws.COMMON_COMPILER_OPTIONS),o,!1,void 0,fS(ws.You_can_learn_about_all_of_the_compiler_options_at_0,"https://aka.ms/tsc"))];for(const a of r)e.write(a);function s(t,i){const o="string"==typeof t?[t]:t;for(const s of o)r.push(" "+n.blue(s)+e.newLine);r.push(" "+_F(i)+e.newLine+e.newLine)}}(e,oG(t))}function mG(e,t,n){let r,i=QJ(e);if(n.options.build)return i(mS(ws.Option_build_must_be_the_first_command_line_argument)),e.exit(1);if(n.options.locale&&yc(n.options.locale,e,n.errors),n.errors.length>0)return n.errors.forEach(i),e.exit(1);if(n.options.init)return function(e,t,n,r){const i=e.getCurrentDirectory(),o=ts(Zo(i,"tsconfig.json"));if(e.fileExists(o))t(mS(ws.A_tsconfig_json_file_is_already_defined_at_Colon_0,o));else{e.writeFile(o,GF(n,r,e.newLine));const t=[e.newLine,...pG(e,"Created a new tsconfig.json with:")];t.push(WF(n,e.newLine)+e.newLine+e.newLine),t.push("You can learn more at https://aka.ms/tsconfig"+e.newLine);for(const n of t)e.write(n)}}(e,i,n.options,n.fileNames),e.exit(0);if(n.options.version)return sG(e),e.exit(0);if(n.options.help||n.options.all)return fG(e,n),e.exit(0);if(n.options.watch&&n.options.listFilesOnly)return i(mS(ws.Options_0_and_1_cannot_be_combined,"watch","listFilesOnly")),e.exit(1);if(n.options.project){if(0!==n.fileNames.length)return i(mS(ws.Option_project_cannot_be_mixed_with_source_files_on_a_command_line)),e.exit(1);const t=ts(n.options.project);if(!t||e.directoryExists(t)){if(r=Zo(t,"tsconfig.json"),!e.fileExists(r))return i(mS(ws.Cannot_find_a_tsconfig_json_file_at_the_specified_directory_Colon_0,n.options.project)),e.exit(1)}else if(r=t,!e.fileExists(r))return i(mS(ws.The_specified_path_does_not_exist_Colon_0,n.options.project)),e.exit(1)}else if(0===n.fileNames.length){r=RV(ts(e.getCurrentDirectory()),(t=>e.fileExists(t)))}if(0===n.fileNames.length&&!r)return n.options.showConfig?i(mS(ws.Cannot_find_a_tsconfig_json_file_at_the_current_directory_Colon_0,ts(e.getCurrentDirectory()))):(sG(e),fG(e,n)),e.exit(1);const o=e.getCurrentDirectory(),s=QF(n.options,(e=>es(e,o)));if(r){const o=new Map,a=eW(r,s,o,n.watchOptions,e,i);if(s.showConfig)return 0!==a.errors.length?(i=nG(e,i,a.options),a.errors.forEach(i),e.exit(1)):(e.write(JSON.stringify(zF(a,r,e),null,4)+e.newLine),e.exit(0));if(i=nG(e,i,a.options),yx(a.options)){if(yG(e,i))return;return function(e,t,n,r,i,o,s){const a=CW({configFileName:r.options.configFilePath,optionsToExtend:i,watchOptionsToExtend:o,system:e,reportDiagnostic:n,reportWatchStatus:CG(e,r.options)});return EG(e,t,a),a.configFileParsingResult=r,a.extendedConfigCache=s,OW(a)}(e,t,i,a,s,n.watchOptions,o)}JS(a.options)?TG(e,t,i,a):SG(e,t,i,a)}else{if(s.showConfig)return e.write(JSON.stringify(zF(n,Zo(o,"tsconfig.json"),e),null,4)+e.newLine),e.exit(0);if(i=nG(e,i,s),yx(s)){if(yG(e,i))return;return function(e,t,n,r,i,o){const s=NW({rootFiles:r,options:i,watchOptions:o,system:e,reportDiagnostic:n,reportWatchStatus:CG(e,i)});return EG(e,t,s),OW(s)}(e,t,i,n.fileNames,s,n.watchOptions)}JS(s)?TG(e,t,i,{...n,options:s}):SG(e,t,i,{...n,options:s})}}function hG(e){if(e.length>0&&45===e[0].charCodeAt(0)){const t=e[0].slice(45===e[0].charCodeAt(1)?2:1).toLowerCase();return"build"===t||"b"===t}return!1}function gG(e,t,n){if(hG(n)){const{buildOptions:r,watchOptions:i,projects:o,errors:s}=dF(n.slice(1));if(!r.generateCpuProfile||!e.enableCPUProfiler)return bG(e,t,r,i,o,s);e.enableCPUProfiler(r.generateCpuProfile,(()=>bG(e,t,r,i,o,s)))}const r=sF(n,(t=>e.readFile(t)));if(!r.options.generateCpuProfile||!e.enableCPUProfiler)return mG(e,t,r);e.enableCPUProfiler(r.options.generateCpuProfile,(()=>mG(e,t,r)))}function yG(e,t){return(!e.watchFile||!e.watchDirectory)&&(t(mS(ws.The_current_host_does_not_support_the_0_option,"--watch")),e.exit(1),!0)}var vG=2;function bG(e,t,n,r,i,o){const s=nG(e,QJ(e),n);if(n.locale&&yc(n.locale,e,o),o.length>0)return o.forEach(s),e.exit(1);if(n.help)return sG(e),_G(e,KO),e.exit(0);if(0===i.length)return sG(e),_G(e,KO),e.exit(0);if(!e.getModifiedTime||!e.setModifiedTime||n.clean&&!e.deleteFile)return s(mS(ws.The_current_host_does_not_support_the_0_option,"--build")),e.exit(1);if(n.watch){if(yG(e,s))return;const o=WW(e,void 0,s,VW(e,iG(e,n)),CG(e,n));o.jsDocParsingMode=vG;const a=NG(e,n);wG(e,t,o,a);const c=o.onWatchStatusChange;let l=!1;o.onWatchStatusChange=(e,t,n,r)=>{null==c||c(e,t,n,r),!l||e.code!==ws.Found_0_errors_Watching_for_file_changes.code&&e.code!==ws.Found_1_error_Watching_for_file_changes.code||AG(u,a)};const u=GW(o,i,n,r);return u.build(),AG(u,a),l=!0,u}const a=JW(e,void 0,s,VW(e,iG(e,n)),xG(e,n));a.jsDocParsingMode=vG;const c=NG(e,n);wG(e,t,a,c);const l=HW(a,i,n),u=n.clean?l.clean():l.build();return AG(l,c),Cr(),e.exit(u)}function xG(e,t){return iG(e,t)?(t,n)=>e.write(oW(t,n,e.newLine,e)):void 0}function SG(e,t,n,r){const{fileNames:i,options:o,projectReferences:s}=r,a=qV(o,void 0,e);a.jsDocParsingMode=vG;const c=a.getCurrentDirectory(),l=rn(a.useCaseSensitiveFileNames());VV(a,(e=>rs(e,c,l))),PG(e,o,!1);const u=FK({rootNames:i,options:o,projectReferences:s,host:a,configFileParsingDiagnostics:DK(r)}),d=mW(u,n,(t=>e.write(t+e.newLine)),xG(e,o));return OG(e,u,void 0),t(u),e.exit(d)}function TG(e,t,n,r){const{options:i,fileNames:o,projectReferences:s}=r;PG(e,i,!1);const a=DW(i,e);a.jsDocParsingMode=vG;const c=AW({host:a,system:e,rootNames:o,options:i,configFileParsingDiagnostics:DK(r),projectReferences:s,reportDiagnostic:n,reportErrorSummary:xG(e,i),afterProgramEmitAndDiagnostics:n=>{OG(e,n.getProgram(),void 0),t(n)}});return e.exit(c)}function wG(e,t,n,r){kG(e,n,!0),n.afterProgramEmitAndDiagnostics=n=>{OG(e,n.getProgram(),r),t(n)}}function kG(e,t,n){const r=t.createProgram;t.createProgram=(t,i,o,s,a,c)=>(Tn.assert(void 0!==t||void 0===i&&!!s),void 0!==i&&PG(e,i,n),r(t,i,o,s,a,c))}function EG(e,t,n){n.jsDocParsingMode=vG,kG(e,n,!1);const r=n.afterProgramCreate;n.afterProgramCreate=n=>{r(n),OG(e,n.getProgram(),void 0),t(n)}}function CG(e,t){return $J(e,iG(e,t))}function NG(e,t){if(e===To&&t.extendedDiagnostics)return wr(),function(){let e;return{addAggregateStatistic:t,forEachAggregateStatistics:n,clear:r};function t(t){const n=null==e?void 0:e.get(t.name);n?2===n.type?n.value=Math.max(n.value,t.value):n.value+=t.value:(e??(e=new Map)).set(t.name,t)}function n(t){null==e||e.forEach(t)}function r(){e=void 0}}()}function AG(e,t){if(!t)return;if(!Tr())return void To.write(ws.Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_native_implementation_of_the_Web_Performance_API_could_not_be_found.message+"\n");const n=[];function r(e){const t=gr(e);t&&n.push({name:i(e),value:t,type:1})}function i(e){return e.replace("SolutionBuilder::","")}n.push({name:"Projects in scope",value:qW(e.getBuildOrder()).length,type:1}),r("SolutionBuilder::Projects built"),r("SolutionBuilder::Timestamps only updates"),r("SolutionBuilder::Bundles updated"),t.forEachAggregateStatistics((e=>{e.name=`Aggregate ${e.name}`,n.push(e)})),vr(((e,t)=>{MG(e)&&n.push({name:`${i(e)} time`,value:t,type:0})})),kr(),wr(),t.clear(),FG(To,n)}function IG(e,t){return e===To&&(t.diagnostics||t.extendedDiagnostics)}function DG(e,t){return e===To&&t.generateTrace}function PG(e,t,n){IG(e,t)&&wr(e),DG(e,t)&&Er(n?"build":"project",t.generateTrace,t.configFilePath)}function MG(e){return cn(e,"SolutionBuilder::")}function OG(e,t,n){var r;const i=t.getCompilerOptions();let o;if(DG(e,i)&&(null==(r=ar)||r.stopTracing()),IG(e,i)){o=[];const r=e.getMemoryUsage?e.getMemoryUsage():-1;a("Files",t.getSourceFiles().length);const l=tG(t);if(i.extendedDiagnostics)for(const[e,t]of l.entries())a("Lines of "+e,t);else a("Lines",b(l.values(),((e,t)=>e+t),0));a("Identifiers",t.getIdentifierCount()),a("Symbols",t.getSymbolCount()),a("Types",t.getTypeCount()),a("Instantiations",t.getInstantiationCount()),r>=0&&s({name:"Memory used",value:r,type:2},!0);const u=Tr(),d=u?yr("Program"):0,_=u?yr("Bind"):0,p=u?yr("Check"):0,f=u?yr("Emit"):0;if(i.extendedDiagnostics){const e=t.getRelationCacheSizes();a("Assignability cache size",e.assignable),a("Identity cache size",e.identity),a("Subtype cache size",e.subtype),a("Strict subtype cache size",e.strictSubtype),u&&vr(((e,t)=>{MG(e)||c(`${e} time`,t,!0)}))}else u&&(c("I/O read",yr("I/O Read"),!0),c("I/O write",yr("I/O Write"),!0),c("Parse time",d,!0),c("Bind time",_,!0),c("Check time",p,!0),c("Emit time",f,!0));u&&c("Total time",d+_+p+f,!1),FG(e,o),u?n?(vr((e=>{MG(e)||xr(e)})),br((e=>{MG(e)||Sr(e)}))):kr():e.write(ws.Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_native_implementation_of_the_Web_Performance_API_could_not_be_found.message+"\n")}function s(e,t){o.push(e),t&&(null==n||n.addAggregateStatistic(e))}function a(e,t){s({name:e,value:t,type:1},!0)}function c(e,t,n){s({name:e,value:t,type:0},n)}}function FG(e,t){let n=0,r=0;for(const i of t){i.name.length>n&&(n=i.name.length);const e=RG(i);e.length>r&&(r=e.length)}for(const i of t)e.write(`${i.name}:`.padEnd(n+2)+RG(i).toString().padStart(r)+e.newLine)}function RG(e){switch(e.type){case 1:return""+e.value;case 0:return(e.value/1e3).toFixed(2)+"s";case 2:return Math.round(e.value/1e3)+"K";default:Tn.assertNever(e.type)}}function LG(e,t){const n=eT(e,"strictNullChecks");return{typeFromExpression:d,serializeTypeOfDeclaration:function(e,n){switch(e.kind){case 171:return r(Nv(e));case 169:return a(e,n);case 260:return function(e,n){const i=Nv(e);if(i)return r(i);let o;e.initializer&&(t.isExpandoFunctionDeclaration(e)||(o=d(e.initializer,n,void 0,void 0,_f(e))));return o??c(e,n)}(e,n);case 172:return function(e,t){const n=Nv(e);if(n)return r(n);let i;if(e.initializer){const n=cf(e);i=d(e.initializer,t,void 0,void 0,n)}return i??c(e,t)}(e,n);case 208:return c(e,n);case 277:return i(e.expression,n,void 0,!0);case 211:case 212:case 226:return r(Nv(e))||c(e,n);case 303:return d(e.initializer,n)||c(e,n);default:Tn.assertNever(e,`Node needs to be an inferrable node, found ${Tn.formatSyntaxKind(e.kind)}`)}},serializeReturnTypeForSignature:function(e,t){switch(e.kind){case 177:return s(e,t);case 174:case 262:case 180:case 173:case 179:case 176:case 178:case 181:case 184:case 185:case 218:case 219:case 317:case 323:return y(e,t);default:Tn.assertNever(e,`Node needs to be an inferrable node, found ${Tn.formatSyntaxKind(e.kind)}`)}},serializeTypeOfExpression:i};function r(e,t){return!(void 0===e||!(!t||e&&g(e)))||void 0}function i(e,t,n,r){return d(e,t,!1,n,r)??l(e,t)}function o(e){if(e)return 177===e.kind?Iv(e):e.parameters.length>0?Nv(e.parameters[0]):void 0}function s(e,n){const i=t.getAllAccessorDeclarations(e),s=function(e,t){let n=o(e);return n||e===t.firstAccessor||(n=o(t.firstAccessor)),!n&&t.secondAccessor&&e!==t.secondAccessor&&(n=o(t.secondAccessor)),n}(e,i);return s?r(s):!!i.getAccessor&&y(i.getAccessor,n)}function a(e,n){const i=e.parent;if(178===i.kind)return s(i,n);const o=Nv(e),a=t.requiresAddingImplicitUndefined(e);let l;return o?l=r(o,a):e.initializer&&YC(e.name)&&(l=d(e.initializer,n,void 0,a)),l??c(e,n)}function c(e,t){return t.tracker.reportInferenceFallback(e),!1}function l(e,t){return t.tracker.reportInferenceFallback(e),!1}function u(e,t,n,i){return Pl(t)?d(e,n,!0,i):(i&&!g(t)&&n.tracker.reportInferenceFallback(t),r(t))}function d(e,n,i=!1,o=!1,s=!1){switch(e.kind){case 217:return fP(e)?u(e.expression,mP(e),n,o):d(e.expression,n,i,o);case 80:if(t.isUndefinedIdentifierExpression(e))return!0;break;case 106:case 9:case 15:case 11:case 10:case 112:case 97:return!0;case 219:case 218:return function(e,t){const n=r(e.type)??y(e,t),i=f(e.typeParameters),o=e.parameters.every((e=>p(e,t)));return n&&i&&o}(e,n);case 216:case 234:const a=e;return u(a.expression,a.type,n,o);case 224:const c=e;if(Ok(c)){if(10===c.operand.kind)return!0;if(9===c.operand.kind)return!0}break;case 228:if(!i&&!s)return!0;break;case 209:return function(e,t,n){if(!function(e,t,n){if(!n)return t.tracker.reportInferenceFallback(e),!1;for(const r of e.elements)if(230===r.kind)return t.tracker.reportInferenceFallback(r),!1;return!0}(e,t,n))return!1;let r=!0;for(const i of e.elements)Tn.assert(230!==i.kind),232!==i.kind&&(r=(d(i,t,n)??l(i,t))&&r);return!0}(e,n,i);case 210:return function(e,n,r){if(!function(e,n){let r=!0;for(const i of e.properties){if(262144&i.flags){r=!1;break}if(304===i.kind||305===i.kind)n.tracker.reportInferenceFallback(i),r=!1;else{if(262144&i.name.flags){r=!1;break}if(81===i.name.kind)r=!1;else if(167===i.name.kind){const e=i.name.expression;Ok(e,!1)||t.isDefinitelyReferenceToGlobalSymbolObject(e)||(n.tracker.reportInferenceFallback(i.name),r=!1)}}}return r}(e,n))return!1;let i=!0;for(const t of e.properties){Tn.assert(!HI(t)&&!GI(t));const e=t.name;switch(t.kind){case 174:i=!!m(t,e,n)&&i;break;case 303:i=!!_(t,e,n,r)&&i;break;case 178:case 177:i=!!h(t,e,n)&&i}}return i}(e,n,i);case 231:return l(e,n)}}function _(e,t,n,r){return d(e.initializer,n,r)??c(e,n)}function p(e,t){return a(e,t)}function f(e){return(null==e?void 0:e.every((e=>r(e.constraint)&&r(e.default))))??!0}function m(e,t,n){const r=y(e,n),i=f(e.typeParameters),o=e.parameters.every((e=>p(e,n)));return r&&i&&o}function h(e,n,i){const s=t.getAllAccessorDeclarations(e),a=s.getAccessor&&o(s.getAccessor),c=s.setAccessor&&o(s.setAccessor);if(void 0!==a&&void 0!==c){const t=e.parameters.every((e=>p(e,i)));return jd(e)?t&&r(a):t}if(s.firstAccessor===e){const t=a??c,n=t?r(t):function(e,t,n){return 177===e.kind?y(e,n):(n.tracker.reportInferenceFallback(e),!1)}(e,0,i);return n}return!1}function g(e){return!n||(!(!Og(e.kind)&&201!==e.kind&&184!==e.kind&&185!==e.kind&&188!==e.kind&&189!==e.kind&&187!==e.kind&&203!==e.kind&&197!==e.kind)||(196===e.kind?g(e.type):(192===e.kind||193===e.kind)&&e.types.every(g)))}function y(e,t){let n;const i=Iv(e);return i&&(n=r(i)),!n&&cg(e)&&(n=function(e,t){let n;if(e&&!F_(e.body)){if(3&Jg(e))return;const t=e.body;t&&OA(t)?Of(t,(e=>{if(n)return n=void 0,!0;n=e.expression})):n=t}if(n)return d(n,t);return}(e,t)),n??function(e,t){return t.tracker.reportInferenceFallback(e),!1}(e,t)}}var jG={};a(jG,{NameValidationResult:()=>dQ,discoverTypings:()=>lQ,isTypingUpToDate:()=>tQ,loadSafeList:()=>aQ,loadTypesMap:()=>cQ,nodeCoreModuleList:()=>iQ,nodeCoreModules:()=>oQ,nonRelativeModuleNameForTypingCache:()=>sQ,prefixedNodeCoreModuleList:()=>rQ,renderPackageNameValidationFailure:()=>mQ,validatePackageName:()=>pQ});var zG,UG,BG="action::set",qG="action::invalidate",VG="action::packageInstalled",KG="event::typesRegistry",JG="event::beginInstallTypes",WG="event::endInstallTypes",HG="event::initializationFailed",GG="action::watchTypingLocations";function QG(e){return To.args.includes(e)}function YG(e){const t=To.args.indexOf(e);return t>=0&&t<To.args.length-1?To.args[t+1]:void 0}function ZG(){const e=new Date;return`${e.getHours().toString().padStart(2,"0")}:${e.getMinutes().toString().padStart(2,"0")}:${e.getSeconds().toString().padStart(2,"0")}.${e.getMilliseconds().toString().padStart(3,"0")}`}(UG=zG||(zG={})).GlobalCacheLocation="--globalTypingsCacheLocation",UG.LogFile="--logFile",UG.EnableTelemetry="--enableTelemetry",UG.TypingSafeListLocation="--typingSafeListLocation",UG.TypesMapLocation="--typesMapLocation",UG.NpmLocation="--npmLocation",UG.ValidateDefaultNpmLocation="--validateDefaultNpmLocation";var XG="\n ";function $G(e){return XG+e.replace(/\n/g,XG)}function eQ(e){return $G(JSON.stringify(e,void 0,2))}function tQ(e,t){return new Pn(ze(t,`ts${l}`)||ze(t,"latest")).compareTo(e.version)<=0}var nQ=["assert","assert/strict","async_hooks","buffer","child_process","cluster","console","constants","crypto","dgram","diagnostics_channel","dns","dns/promises","domain","events","fs","fs/promises","http","https","http2","inspector","module","net","os","path","perf_hooks","process","punycode","querystring","readline","repl","stream","stream/promises","string_decoder","timers","timers/promises","tls","trace_events","tty","url","util","util/types","v8","vm","wasi","worker_threads","zlib"],rQ=nQ.map((e=>`node:${e}`)),iQ=[...nQ,...rQ],oQ=new Set(iQ);function sQ(e){return oQ.has(e)?"node":e}function aQ(e,t){const n=fF(t,(t=>e.readFile(t)));return new Map(Object.entries(n.config))}function cQ(e,t){var n;const r=fF(t,(t=>e.readFile(t)));if(null==(n=r.config)?void 0:n.simpleMap)return new Map(Object.entries(r.config.simpleMap))}function lQ(e,t,n,r,i,o,s,a,c,l){if(!s||!s.enable)return{cachedTypingPaths:[],newTypingNames:[],filesToWatch:[]};const u=new Map;n=J(n,(e=>{const t=ts(e);if(YT(t))return t}));const d=[];s.include&&y(s.include,"Explicitly included types");const _=s.exclude||[];if(!l.types){const e=new Set(n.map(Vo));e.add(r),e.forEach((e=>{v(e,"bower.json","bower_components",d),v(e,"package.json","node_modules",d)}))}if(s.disableFilenameBasedTypeAcquisition||function(e){const n=J(e,(e=>{if(!YT(e))return;const t=Xt(ow(bt(Ko(e))));return i.get(t)}));n.length&&y(n,"Inferred typings from file names");$(e,(e=>Lo(e,".jsx")))&&(t&&t("Inferred 'react' typings due to presence of '.jsx' extension"),g("react"))}(n),a){y(ie(a.map(sQ),It,Lt),"Inferred typings from unresolved imports")}for(const h of _){u.delete(h)&&t&&t(`Typing for ${h} is in exclude list, will be ignored.`)}o.forEach(((e,t)=>{const n=c.get(t);!1===u.get(t)&&void 0!==n&&tQ(e,n)&&u.set(t,e.typingLocation)}));const p=[],f=[];u.forEach(((e,t)=>{e?f.push(e):p.push(t)}));const m={cachedTypingPaths:f,newTypingNames:p,filesToWatch:d};return t&&t(`Finished typings discovery:${eQ(m)}`),m;function g(e){u.has(e)||u.set(e,!1)}function y(e,n){t&&t(`${n}: ${JSON.stringify(e)}`),h(e,g)}function v(n,r,i,o){const s=Zo(n,r);let a,c;e.fileExists(s)&&(o.push(s),a=fF(s,(t=>e.readFile(t))).config,c=U([a.dependencies,a.devDependencies,a.optionalDependencies,a.peerDependencies],Ue),y(c,`Typing names in '${s}' dependencies`));const l=Zo(n,i);if(o.push(l),!e.directoryExists(l))return;const d=[],_=c?c.map((e=>Zo(l,e,r))):e.readDirectory(l,[".json"],void 0,void 0,3).filter((e=>{if(Ko(e)!==r)return!1;const t=Ho(ts(e)),n="@"===t[t.length-3][0];return n&&bt(t[t.length-4])===i||!n&&bt(t[t.length-3])===i}));t&&t(`Searching for typing names in ${l}; all files: ${JSON.stringify(_)}`);for(const p of _){const n=ts(p),r=fF(n,(t=>e.readFile(t))).config;if(!r.name)continue;const i=r.types||r.typings;if(i){const o=es(i,Vo(n));e.fileExists(o)?(t&&t(` Package '${r.name}' provides its own types.`),u.set(r.name,o)):t&&t(` Package '${r.name}' provides its own types but they are missing.`)}else d.push(r.name)}y(d," Found package names")}}var uQ,dQ=(e=>(e[e.Ok=0]="Ok",e[e.EmptyName=1]="EmptyName",e[e.NameTooLong=2]="NameTooLong",e[e.NameStartsWithDot=3]="NameStartsWithDot",e[e.NameStartsWithUnderscore=4]="NameStartsWithUnderscore",e[e.NameContainsNonURISafeCharacters=5]="NameContainsNonURISafeCharacters",e))(dQ||{}),_Q=214;function pQ(e){return fQ(e,!0)}function fQ(e,t){if(!e)return 1;if(e.length>_Q)return 2;if(46===e.charCodeAt(0))return 3;if(95===e.charCodeAt(0))return 4;if(t){const t=/^@([^/]+)\/([^/]+)$/.exec(e);if(t){const e=fQ(t[1],!1);if(0!==e)return{name:t[1],isScopeName:!0,result:e};const n=fQ(t[2],!1);return 0!==n?{name:t[2],isScopeName:!1,result:n}:0}}return encodeURIComponent(e)!==e?5:0}function mQ(e,t){return"object"==typeof e?hQ(t,e.result,e.name,e.isScopeName):hQ(t,e,t,!1)}function hQ(e,t,n,r){const i=r?"Scope":"Package";switch(t){case 1:return`'${e}':: ${i} name '${n}' cannot be empty`;case 2:return`'${e}':: ${i} name '${n}' should be less than ${_Q} characters`;case 3:return`'${e}':: ${i} name '${n}' cannot start with '.'`;case 4:return`'${e}':: ${i} name '${n}' cannot start with '_'`;case 5:return`'${e}':: ${i} name '${n}' contains non URI safe characters`;case 0:return Tn.fail();default:Tn.assertNever(t)}}(e=>{class t{constructor(e){this.text=e}getText(e,t){return 0===e&&t===this.text.length?this.text:this.text.substring(e,t)}getLength(){return this.text.length}getChangeRange(){}}e.fromString=function(e){return new t(e)}})(uQ||(uQ={}));var gQ=(e=>(e[e.Dependencies=1]="Dependencies",e[e.DevDependencies=2]="DevDependencies",e[e.PeerDependencies=4]="PeerDependencies",e[e.OptionalDependencies=8]="OptionalDependencies",e[e.All=15]="All",e))(gQ||{}),yQ=(e=>(e[e.Off=0]="Off",e[e.On=1]="On",e[e.Auto=2]="Auto",e))(yQ||{}),vQ=(e=>(e[e.Semantic=0]="Semantic",e[e.PartialSemantic=1]="PartialSemantic",e[e.Syntactic=2]="Syntactic",e))(vQ||{}),bQ={},xQ=(e=>(e.Original="original",e.TwentyTwenty="2020",e))(xQ||{}),SQ=(e=>(e.All="All",e.SortAndCombine="SortAndCombine",e.RemoveUnused="RemoveUnused",e))(SQ||{}),TQ=(e=>(e[e.Invoked=1]="Invoked",e[e.TriggerCharacter=2]="TriggerCharacter",e[e.TriggerForIncompleteCompletions=3]="TriggerForIncompleteCompletions",e))(TQ||{}),wQ=(e=>(e.Type="Type",e.Parameter="Parameter",e.Enum="Enum",e))(wQ||{}),kQ=(e=>(e.none="none",e.definition="definition",e.reference="reference",e.writtenReference="writtenReference",e))(kQ||{}),EQ=(e=>(e[e.None=0]="None",e[e.Block=1]="Block",e[e.Smart=2]="Smart",e))(EQ||{}),CQ=(e=>(e.Ignore="ignore",e.Insert="insert",e.Remove="remove",e))(CQ||{});function NQ(e){return{indentSize:4,tabSize:4,newLineCharacter:e||"\n",convertTabsToSpaces:!0,indentStyle:2,insertSpaceAfterConstructor:!1,insertSpaceAfterCommaDelimiter:!0,insertSpaceAfterSemicolonInForStatements:!0,insertSpaceBeforeAndAfterBinaryOperators:!0,insertSpaceAfterKeywordsInControlFlowStatements:!0,insertSpaceAfterFunctionKeywordForAnonymousFunctions:!1,insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis:!1,insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets:!1,insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces:!0,insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces:!1,insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces:!1,insertSpaceBeforeFunctionParenthesis:!1,placeOpenBraceOnNewLineForFunctions:!1,placeOpenBraceOnNewLineForControlBlocks:!1,semicolons:"ignore",trimTrailingWhitespace:!0,indentSwitchCase:!0}}var AQ=NQ("\n"),IQ=(e=>(e[e.aliasName=0]="aliasName",e[e.className=1]="className",e[e.enumName=2]="enumName",e[e.fieldName=3]="fieldName",e[e.interfaceName=4]="interfaceName",e[e.keyword=5]="keyword",e[e.lineBreak=6]="lineBreak",e[e.numericLiteral=7]="numericLiteral",e[e.stringLiteral=8]="stringLiteral",e[e.localName=9]="localName",e[e.methodName=10]="methodName",e[e.moduleName=11]="moduleName",e[e.operator=12]="operator",e[e.parameterName=13]="parameterName",e[e.propertyName=14]="propertyName",e[e.punctuation=15]="punctuation",e[e.space=16]="space",e[e.text=17]="text",e[e.typeParameterName=18]="typeParameterName",e[e.enumMemberName=19]="enumMemberName",e[e.functionName=20]="functionName",e[e.regularExpressionLiteral=21]="regularExpressionLiteral",e[e.link=22]="link",e[e.linkName=23]="linkName",e[e.linkText=24]="linkText",e))(IQ||{}),DQ=(e=>(e[e.None=0]="None",e[e.MayIncludeAutoImports=1]="MayIncludeAutoImports",e[e.IsImportStatementCompletion=2]="IsImportStatementCompletion",e[e.IsContinuation=4]="IsContinuation",e[e.ResolvedModuleSpecifiers=8]="ResolvedModuleSpecifiers",e[e.ResolvedModuleSpecifiersBeyondLimit=16]="ResolvedModuleSpecifiersBeyondLimit",e[e.MayIncludeMethodSnippets=32]="MayIncludeMethodSnippets",e))(DQ||{}),PQ=(e=>(e.Comment="comment",e.Region="region",e.Code="code",e.Imports="imports",e))(PQ||{}),MQ=(e=>(e[e.JavaScript=0]="JavaScript",e[e.SourceMap=1]="SourceMap",e[e.Declaration=2]="Declaration",e))(MQ||{}),OQ=(e=>(e[e.None=0]="None",e[e.InMultiLineCommentTrivia=1]="InMultiLineCommentTrivia",e[e.InSingleQuoteStringLiteral=2]="InSingleQuoteStringLiteral",e[e.InDoubleQuoteStringLiteral=3]="InDoubleQuoteStringLiteral",e[e.InTemplateHeadOrNoSubstitutionTemplate=4]="InTemplateHeadOrNoSubstitutionTemplate",e[e.InTemplateMiddleOrTail=5]="InTemplateMiddleOrTail",e[e.InTemplateSubstitutionPosition=6]="InTemplateSubstitutionPosition",e))(OQ||{}),FQ=(e=>(e[e.Punctuation=0]="Punctuation",e[e.Keyword=1]="Keyword",e[e.Operator=2]="Operator",e[e.Comment=3]="Comment",e[e.Whitespace=4]="Whitespace",e[e.Identifier=5]="Identifier",e[e.NumberLiteral=6]="NumberLiteral",e[e.BigIntLiteral=7]="BigIntLiteral",e[e.StringLiteral=8]="StringLiteral",e[e.RegExpLiteral=9]="RegExpLiteral",e))(FQ||{}),RQ=(e=>(e.unknown="",e.warning="warning",e.keyword="keyword",e.scriptElement="script",e.moduleElement="module",e.classElement="class",e.localClassElement="local class",e.interfaceElement="interface",e.typeElement="type",e.enumElement="enum",e.enumMemberElement="enum member",e.variableElement="var",e.localVariableElement="local var",e.variableUsingElement="using",e.variableAwaitUsingElement="await using",e.functionElement="function",e.localFunctionElement="local function",e.memberFunctionElement="method",e.memberGetAccessorElement="getter",e.memberSetAccessorElement="setter",e.memberVariableElement="property",e.memberAccessorVariableElement="accessor",e.constructorImplementationElement="constructor",e.callSignatureElement="call",e.indexSignatureElement="index",e.constructSignatureElement="construct",e.parameterElement="parameter",e.typeParameterElement="type parameter",e.primitiveType="primitive type",e.label="label",e.alias="alias",e.constElement="const",e.letElement="let",e.directory="directory",e.externalModuleName="external module name",e.jsxAttribute="JSX attribute",e.string="string",e.link="link",e.linkName="link name",e.linkText="link text",e))(RQ||{}),LQ=(e=>(e.none="",e.publicMemberModifier="public",e.privateMemberModifier="private",e.protectedMemberModifier="protected",e.exportedModifier="export",e.ambientModifier="declare",e.staticModifier="static",e.abstractModifier="abstract",e.optionalModifier="optional",e.deprecatedModifier="deprecated",e.dtsModifier=".d.ts",e.tsModifier=".ts",e.tsxModifier=".tsx",e.jsModifier=".js",e.jsxModifier=".jsx",e.jsonModifier=".json",e.dmtsModifier=".d.mts",e.mtsModifier=".mts",e.mjsModifier=".mjs",e.dctsModifier=".d.cts",e.ctsModifier=".cts",e.cjsModifier=".cjs",e))(LQ||{}),jQ=(e=>(e.comment="comment",e.identifier="identifier",e.keyword="keyword",e.numericLiteral="number",e.bigintLiteral="bigint",e.operator="operator",e.stringLiteral="string",e.whiteSpace="whitespace",e.text="text",e.punctuation="punctuation",e.className="class name",e.enumName="enum name",e.interfaceName="interface name",e.moduleName="module name",e.typeParameterName="type parameter name",e.typeAliasName="type alias name",e.parameterName="parameter name",e.docCommentTagName="doc comment tag name",e.jsxOpenTagName="jsx open tag name",e.jsxCloseTagName="jsx close tag name",e.jsxSelfClosingTagName="jsx self closing tag name",e.jsxAttribute="jsx attribute",e.jsxText="jsx text",e.jsxAttributeStringLiteralValue="jsx attribute string literal value",e))(jQ||{}),zQ=(e=>(e[e.comment=1]="comment",e[e.identifier=2]="identifier",e[e.keyword=3]="keyword",e[e.numericLiteral=4]="numericLiteral",e[e.operator=5]="operator",e[e.stringLiteral=6]="stringLiteral",e[e.regularExpressionLiteral=7]="regularExpressionLiteral",e[e.whiteSpace=8]="whiteSpace",e[e.text=9]="text",e[e.punctuation=10]="punctuation",e[e.className=11]="className",e[e.enumName=12]="enumName",e[e.interfaceName=13]="interfaceName",e[e.moduleName=14]="moduleName",e[e.typeParameterName=15]="typeParameterName",e[e.typeAliasName=16]="typeAliasName",e[e.parameterName=17]="parameterName",e[e.docCommentTagName=18]="docCommentTagName",e[e.jsxOpenTagName=19]="jsxOpenTagName",e[e.jsxCloseTagName=20]="jsxCloseTagName",e[e.jsxSelfClosingTagName=21]="jsxSelfClosingTagName",e[e.jsxAttribute=22]="jsxAttribute",e[e.jsxText=23]="jsxText",e[e.jsxAttributeStringLiteralValue=24]="jsxAttributeStringLiteralValue",e[e.bigintLiteral=25]="bigintLiteral",e))(zQ||{}),UQ=Ia(99,!0),BQ=(e=>(e[e.None=0]="None",e[e.Value=1]="Value",e[e.Type=2]="Type",e[e.Namespace=4]="Namespace",e[e.All=7]="All",e))(BQ||{});function qQ(e){switch(e.kind){case 260:return Um(e)&&ol(e)?7:1;case 169:case 208:case 172:case 171:case 303:case 304:case 174:case 173:case 176:case 177:case 178:case 262:case 218:case 219:case 299:case 291:return 1;case 168:case 264:case 265:case 187:return 2;case 346:return void 0===e.name?3:2;case 306:case 263:return 3;case 267:return _p(e)||1===qj(e)?5:4;case 266:case 275:case 276:case 271:case 272:case 277:case 278:return 7;case 307:return 5}return 7}function VQ(e){const t=(e=JY(e)).parent;return 307===e.kind?1:SI(t)||kI(t)||AI(t)||xI(t)||_I(t)||uI(t)&&e===t.name?7:KQ(e)?function(e){const t=166===e.kind?e:dN(e.parent)&&e.parent.right===e?e.parent:void 0;return t&&271===t.parent.kind?7:4}(e):gg(e)?qQ(t):uu(e)&&bc(e,pn($I,Gd,eD))?7:function(e){Ib(e)&&(e=e.parent);switch(e.kind){case 110:return!Am(e);case 197:return!0}switch(e.parent.kind){case 183:return!0;case 205:return!e.parent.isTypeOf;case 233:return Df(e.parent)}return!1}(e)?2:function(e){return function(e){let t=e,n=!0;if(166===t.parent.kind){for(;t.parent&&166===t.parent.kind;)t=t.parent;n=t.right===e}return 183===t.parent.kind&&!n}(e)||function(e){let t=e,n=!0;if(211===t.parent.kind){for(;t.parent&&211===t.parent.kind;)t=t.parent;n=t.name===e}if(!n&&233===t.parent.kind&&298===t.parent.parent.kind){const e=t.parent.parent.parent;return 263===e.kind&&119===t.parent.parent.token||264===e.kind&&96===t.parent.parent.token}return!1}(e)}(e)?4:pN(t)?(Tn.assert(PD(t.parent)),2):HN(t)?3:1}function KQ(e){for(;166===e.parent.kind;)e=e.parent;return Rm(e.parent)&&e.parent.moduleReference===e}function JQ(e,t=!1,n=!1){return eY(e,iA,ZQ,t,n)}function WQ(e,t=!1,n=!1){return eY(e,oA,ZQ,t,n)}function HQ(e,t=!1,n=!1){return eY(e,Hu,ZQ,t,n)}function GQ(e,t=!1,n=!1){return eY(e,sA,XQ,t,n)}function QQ(e,t=!1,n=!1){return eY(e,mN,ZQ,t,n)}function YQ(e,t=!1,n=!1){return eY(e,Pd,$Q,t,n)}function ZQ(e){return e.expression}function XQ(e){return e.tag}function $Q(e){return e.tagName}function eY(e,t,n,r,i){let o=r?nY(e):tY(e);return i&&(o=gP(o)),!!o&&!!o.parent&&t(o.parent)&&n(o.parent)===o}function tY(e){return uY(e)?e.parent:e}function nY(e){return uY(e)||dY(e)?e.parent:e}function rY(e,t){for(;e;){if(256===e.kind&&e.label.escapedText===t)return e.label;e=e.parent}}function iY(e,t){return!!nA(e.expression)&&e.expression.name.text===t}function oY(e){var t;return YC(e)&&(null==(t=dt(e.parent,Fl))?void 0:t.label)===e}function sY(e){var t;return YC(e)&&(null==(t=dt(e.parent,QA))?void 0:t.label)===e}function aY(e){return sY(e)||oY(e)}function cY(e){var t;return(null==(t=dt(e.parent,Rd))?void 0:t.tagName)===e}function lY(e){var t;return(null==(t=dt(e.parent,dN))?void 0:t.right)===e}function uY(e){var t;return(null==(t=dt(e.parent,nA))?void 0:t.name)===e}function dY(e){var t;return(null==(t=dt(e.parent,rA))?void 0:t.argumentExpression)===e}function _Y(e){var t;return(null==(t=dt(e.parent,sI))?void 0:t.name)===e}function pY(e){var t;return YC(e)&&(null==(t=dt(e.parent,pu))?void 0:t.name)===e}function fY(e){switch(e.parent.kind){case 172:case 171:case 303:case 306:case 174:case 173:case 177:case 178:case 267:return Oc(e.parent)===e;case 212:return e.parent.argumentExpression===e;case 167:return!0;case 201:return 199===e.parent.parent.kind;default:return!1}}function mY(e){return Mm(e.parent.parent)&&Om(e.parent.parent)===e}function hY(e){for(Rh(e)&&(e=e.parent.parent);;){if(!(e=e.parent))return;switch(e.kind){case 307:case 174:case 173:case 262:case 218:case 177:case 178:case 263:case 264:case 266:case 267:return e}}}function gY(e){switch(e.kind){case 307:return tO(e)?"module":"script";case 267:return"module";case 263:case 231:return"class";case 264:return"interface";case 265:case 338:case 346:return"type";case 266:return"enum";case 260:return t(e);case 208:return t(_y(e));case 219:case 262:case 218:return"function";case 177:return"getter";case 178:return"setter";case 174:case 173:return"method";case 303:const{initializer:n}=e;return pu(n)?"method":"property";case 172:case 171:case 304:case 305:return"property";case 181:return"index";case 180:return"construct";case 179:return"call";case 176:case 175:return"constructor";case 168:return"type parameter";case 306:return"enum member";case 169:return Kv(e,31)?"property":"parameter";case 271:case 276:case 281:case 274:case 280:return"alias";case 226:const r=dh(e),{right:i}=e;switch(r){case 7:case 8:case 9:case 0:default:return"";case 1:case 2:const e=gY(i);return""===e?"const":e;case 3:case 5:return lA(i)?"method":"property";case 4:return"property";case 6:return"local class"}case 80:return _I(e.parent)?"alias":"";case 277:const o=gY(e.expression);return""===o?"const":o;default:return""}function t(e){return df(e)?"const":pf(e)?"let":"var"}}function yY(e){switch(e.kind){case 110:return!0;case 80:return Ev(e)&&169===e.parent.kind;default:return!1}}var vY=/^\/\/\/\s*</;function bY(e,t){return Zs(t)[t.getLineAndCharacterOfPosition(e).line]}function xY(e,t){return kY(e.pos,e.end,t)}function SY(e,t){return wY(e,t.pos)&&wY(e,t.end)}function TY(e,t){return e.pos<=t&&t<=e.end}function wY(e,t){return e.pos<t&&t<e.end}function kY(e,t,n){return e<=n.pos&&t>=n.end}function EY(e,t,n){return e.pos<=t&&e.end>=n}function CY(e,t,n){return AY(e.pos,e.end,t,n)}function NY(e,t,n,r){return AY(e.getStart(t),e.end,n,r)}function AY(e,t,n,r){return Math.max(e,n)<Math.min(t,r)}function IY(e,t,n){return Tn.assert(e.pos<=t),t<e.end||!DY(e,n)}function DY(e,t){if(void 0===e||F_(e))return!1;switch(e.kind){case 263:case 264:case 266:case 210:case 206:case 187:case 241:case 268:case 269:case 275:case 279:return PY(e,20,t);case 299:return DY(e.block,t);case 214:if(!e.arguments)return!0;case 213:case 217:case 196:return PY(e,22,t);case 184:case 185:return DY(e.type,t);case 176:case 177:case 178:case 262:case 218:case 174:case 173:case 180:case 179:case 219:return e.body?DY(e.body,t):e.type?DY(e.type,t):OY(e,22,t);case 267:return!!e.body&&DY(e.body,t);case 245:return e.elseStatement?DY(e.elseStatement,t):DY(e.thenStatement,t);case 244:return DY(e.expression,t)||OY(e,27,t);case 209:case 207:case 212:case 167:case 189:return PY(e,24,t);case 181:return e.type?DY(e.type,t):OY(e,24,t);case 296:case 297:return!1;case 248:case 249:case 250:case 247:return DY(e.statement,t);case 246:return OY(e,117,t)?PY(e,22,t):DY(e.statement,t);case 186:return DY(e.exprName,t);case 221:case 220:case 222:case 229:case 230:return DY(e.expression,t);case 215:return DY(e.template,t);case 228:return DY(Ne(e.templateSpans),t);case 239:return R_(e.literal);case 278:case 272:return R_(e.moduleSpecifier);case 224:return DY(e.operand,t);case 226:return DY(e.right,t);case 227:return DY(e.whenFalse,t);default:return!0}}function PY(e,t,n){const r=e.getChildren(n);if(r.length){const e=Ae(r);if(e.kind===t)return!0;if(27===e.kind&&1!==r.length)return r[r.length-2].kind===t}return!1}function MY(e){const t=RY(e);if(!t)return;return{listItemIndex:np(t.getChildren(),e),list:t}}function OY(e,t,n){return!!FY(e,t,n)}function FY(e,t,n){return w(e.getChildren(n),(e=>e.kind===t))}function RY(e){const t=w(e.parent.getChildren(),(t=>UD(t)&&xY(t,e)));return Tn.assert(!t||A(t.getChildren(),e)),t}function LY(e){return 90===e.kind}function jY(e){return 86===e.kind}function zY(e){return 100===e.kind}function UY(e,t){if(16777216&e.flags)return;const n=S$(e,t);if(n)return n;const r=function(e){let t;return bc(e,(e=>(Du(e)&&(t=e),!dN(e.parent)&&!Du(e.parent)&&!Nu(e.parent)))),t}(e);return r&&t.getTypeAtLocation(r)}function BY(e,t){if(!t)switch(e.kind){case 263:case 231:return function(e){if(Pc(e))return e.name;if(nI(e)){const t=e.modifiers&&w(e.modifiers,LY);if(t)return t}if(SA(e)){const t=w(e.getChildren(),jY);if(t)return t}}(e);case 262:case 218:return function(e){if(Pc(e))return e.name;if(tI(e)){const t=w(e.modifiers,LY);if(t)return t}if(lA(e)){const t=w(e.getChildren(),zY);if(t)return t}}(e);case 176:return e}if(Pc(e))return e.name}function qY(e,t){if(e.importClause){if(e.importClause.name&&e.importClause.namedBindings)return;if(e.importClause.name)return e.importClause.name;if(e.importClause.namedBindings){if(bI(e.importClause.namedBindings)){const t=Ie(e.importClause.namedBindings.elements);if(!t)return;return t.name}if(yI(e.importClause.namedBindings))return e.importClause.namedBindings.name}}if(!t)return e.moduleSpecifier}function VY(e,t){if(e.exportClause){if(wI(e.exportClause)){if(!Ie(e.exportClause.elements))return;return e.exportClause.elements[0].name}if(vI(e.exportClause))return e.exportClause.name}if(!t)return e.moduleSpecifier}function KY(e,t){const{parent:n}=e;if(lu(e)&&(t||90!==e.kind)?bM(n)&&A(n.modifiers,e):86===e.kind?nI(n)||SA(e):100===e.kind?tI(n)||lA(e):120===e.kind?rI(n):94===e.kind?oI(n):156===e.kind?iI(n):145===e.kind||144===e.kind?sI(n):102===e.kind?uI(n):139===e.kind?SN(n):153===e.kind&&TN(n)){const e=BY(n,t);if(e)return e}if((115===e.kind||87===e.kind||121===e.kind)&&eI(n)&&1===n.declarations.length){const e=n.declarations[0];if(YC(e.name))return e.name}if(156===e.kind){if(_I(n)&&n.isTypeOnly){const e=qY(n.parent,t);if(e)return e}if(TI(n)&&n.isTypeOnly){const e=VY(n,t);if(e)return e}}if(130===e.kind){if(xI(n)&&n.propertyName||kI(n)&&n.propertyName||yI(n)||vI(n))return n.name;if(TI(n)&&n.exportClause&&vI(n.exportClause))return n.exportClause.name}if(102===e.kind&&dI(n)){const e=qY(n,t);if(e)return e}if(95===e.kind){if(TI(n)){const e=VY(n,t);if(e)return e}if(SI(n))return gP(n.expression)}if(149===e.kind&&AI(n))return n.expression;if(161===e.kind&&(dI(n)||TI(n))&&n.moduleSpecifier)return n.moduleSpecifier;if((96===e.kind||119===e.kind)&&KI(n)&&n.token===e.kind){const e=function(e){if(1===e.types.length)return e.types[0].expression}(n);if(e)return e}if(96===e.kind){if(pN(n)&&n.constraint&&NN(n.constraint))return n.constraint.typeName;if(UN(n)&&NN(n.extendsType))return n.extendsType.typeName}if(140===e.kind&&BN(n))return n.typeParameter.name;if(103===e.kind&&pN(n)&&WN(n.parent))return n.name;if(143===e.kind&&KN(n)&&143===n.operator&&NN(n.type))return n.type.typeName;if(148===e.kind&&KN(n)&&148===n.operator&&MN(n.type)&&NN(n.type.elementType))return n.type.elementType.typeName;if(!t){if((105===e.kind&&oA(n)||116===e.kind&&pA(n)||114===e.kind&&_A(n)||135===e.kind&&fA(n)||127===e.kind&&bA(n)||91===e.kind&&dA(n))&&n.expression)return gP(n.expression);if((103===e.kind||104===e.kind)&&gA(n)&&n.operatorToken===e)return gP(n.right);if(130===e.kind&&kA(n)&&NN(n.type))return n.type.typeName;if(103===e.kind&&qA(n)||165===e.kind&&VA(n))return gP(n.expression)}return e}function JY(e){return KY(e,!1)}function WY(e){return KY(e,!0)}function HY(e,t){return GY(e,t,(e=>Xg(e)||Og(e.kind)||ZC(e)))}function GY(e,t,n){return YY(e,t,!1,n,!1)}function QY(e,t){return YY(e,t,!0,void 0,!1)}function YY(e,t,n,r,i){let o,s=e;for(;;){const i=s.getChildren(e),c=Fe(i,t,((e,t)=>t),((o,s)=>{const c=i[o].getEnd();if(c<t)return-1;const l=n?i[o].getFullStart():i[o].getStart(e,!0);return l>t?1:a(i[o],l,c)?i[o-1]&&a(i[o-1])?1:0:r&&l===t&&i[o-1]&&i[o-1].getEnd()===t&&a(i[o-1])?1:-1}));if(o)return o;if(!(c>=0&&i[c]))return s;s=i[c]}function a(s,a,c){if(c??(c=s.getEnd()),c<t)return!1;if(a??(a=n?s.getFullStart():s.getStart(e,!0)),a>t)return!1;if(t<c||t===c&&(1===s.kind||i))return!0;if(r&&c===t){const n=eZ(t,e,s);if(n&&r(n))return o=n,!0}return!1}}function ZY(e,t){let n=QY(e,t);for(;sZ(n);){const t=$Y(n,n.parent,e);if(!t)return;n=t}return n}function XY(e,t){const n=QY(e,t);return Bl(n)&&t>n.getStart(e)&&t<n.getEnd()?n:eZ(t,e)}function $Y(e,t,n){return function t(r){if(Bl(r)&&r.pos===e.end)return r;return y(r.getChildren(n),(r=>(r.pos<=e.pos&&r.end>e.end||r.pos===e.end)&&gZ(r,n)?t(r):void 0))}(t)}function eZ(e,t,n,r){const i=function i(o){if(tZ(o)&&1!==o.kind)return o;const s=o.getChildren(t),a=Fe(s,e,((e,t)=>t),((t,n)=>e<s[t].end?!s[t-1]||e>=s[t-1].end?0:1:-1));if(a>=0&&s[a]){const n=s[a];if(e<n.end){if(n.getStart(t,!r)>=e||!gZ(n,t)||sZ(n)){const e=rZ(s,a,t,o.kind);return e?!r&&Fd(e)&&e.getChildren(t).length?i(e):nZ(e,t):void 0}return i(n)}}Tn.assert(void 0!==n||307===o.kind||1===o.kind||Fd(o));const c=rZ(s,s.length,t,o.kind);return c&&nZ(c,t)}(n||t);return Tn.assert(!(i&&sZ(i))),i}function tZ(e){return Bl(e)&&!sZ(e)}function nZ(e,t){if(tZ(e))return e;const n=e.getChildren(t);if(0===n.length)return e;const r=rZ(n,n.length,t,e.kind);return r&&nZ(r,t)}function rZ(e,t,n,r){for(let i=t-1;i>=0;i--){if(sZ(e[i]))0!==i||12!==r&&285!==r||Tn.fail("`JsxText` tokens should not be the first child of `JsxElement | JsxSelfClosingElement`");else if(gZ(e[i],n))return e[i]}}function iZ(e,t,n=eZ(t,e)){if(n&&$l(n)){const r=n.getStart(e),i=n.getEnd();if(r<t&&t<i)return!0;if(t===i)return!!n.isUnterminated}return!1}function oZ(e,t){const n=QY(e,t);return!!n&&(12===n.kind||(30===n.kind&&12===n.parent.kind||(30===n.kind&&294===n.parent.kind||(!(!n||20!==n.kind||294!==n.parent.kind)||30===n.kind&&287===n.parent.kind))))}function sZ(e){return OC(e)&&e.containsOnlyTriviaWhiteSpaces}function aZ(e,t){const n=QY(e,t);return Wl(n.kind)&&t>n.getStart(e)}function cZ(e,t){const n=QY(e,t);return!!OC(n)||(!(19!==n.kind||!UI(n.parent)||!II(n.parent.parent))||!(30!==n.kind||!Pd(n.parent)||!II(n.parent.parent)))}function lZ(e,t){return function(n){for(;n;)if(n.kind>=285&&n.kind<=294||12===n.kind||30===n.kind||32===n.kind||80===n.kind||20===n.kind||19===n.kind||44===n.kind)n=n.parent;else{if(284!==n.kind)return!1;if(t>n.getStart(e))return!0;n=n.parent}return!1}(QY(e,t))}function uZ(e,t,n){const r=Vs(e.kind),i=Vs(t),o=e.getFullStart(),s=n.text.lastIndexOf(i,o);if(-1===s)return;if(n.text.lastIndexOf(r,o-1)<s){const e=eZ(s+1,n);if(e&&e.kind===t)return e}const a=e.kind;let c=0;for(;;){const r=eZ(e.getFullStart(),n);if(!r)return;if((e=r).kind===t){if(0===c)return e;c--}else e.kind===a&&c++}}function dZ(e,t,n){return t?e.getNonNullableType():n?e.getNonOptionalType():e}function _Z(e,t,n){const r=fZ(e,t);return void 0!==r&&(Df(r.called)||0!==pZ(r.called,r.nTypeArguments,n).length||_Z(r.called,t,n))}function pZ(e,t,n){let r=n.getTypeAtLocation(e);Cl(e.parent)&&(r=dZ(r,Nl(e.parent),!0));return(oA(e.parent)?r.getConstructSignatures():r.getCallSignatures()).filter((e=>!!e.typeParameters&&e.typeParameters.length>=t))}function fZ(e,t){if(-1===t.text.lastIndexOf("<",e?e.pos:t.text.length))return;let n=e,r=0,i=0;for(;n;){switch(n.kind){case 30:if(n=eZ(n.getFullStart(),t),n&&29===n.kind&&(n=eZ(n.getFullStart(),t)),!n||!YC(n))return;if(!r)return gg(n)?void 0:{called:n,nTypeArguments:i};r--;break;case 50:r=3;break;case 49:r=2;break;case 32:r++;break;case 20:if(n=uZ(n,19,t),!n)return;break;case 22:if(n=uZ(n,21,t),!n)return;break;case 24:if(n=uZ(n,23,t),!n)return;break;case 28:i++;break;case 39:case 80:case 11:case 9:case 10:case 112:case 97:case 114:case 96:case 143:case 25:case 52:case 58:case 59:break;default:if(Du(n))break;return}n=eZ(n.getFullStart(),t)}}function mZ(e,t,n){return C_e.getRangeOfEnclosingComment(e,t,void 0,n)}function hZ(e,t){return!!bc(QY(e,t),_D)}function gZ(e,t){return 1===e.kind?!!e.jsDoc:0!==e.getWidth(t)}function yZ(e,t=0){const n=[],r=Sd(e)?fc(e)&~t:0;return 2&r&&n.push("private"),4&r&&n.push("protected"),1&r&&n.push("public"),(256&r||bN(e))&&n.push("static"),64&r&&n.push("abstract"),32&r&&n.push("export"),65536&r&&n.push("deprecated"),33554432&e.flags&&n.push("declare"),277===e.kind&&n.push("export"),n.length>0?n.join(","):""}function vZ(e){return 183===e.kind||213===e.kind?e.typeArguments:pu(e)||263===e.kind||264===e.kind?e.typeParameters:void 0}function bZ(e){return 2===e||3===e}function xZ(e){return!(11!==e&&14!==e&&!Wl(e))}function SZ(e,t,n){return!!(4&t.flags)&&e.isEmptyAnonymousObjectType(n)}function TZ(e){if(!e.isIntersection())return!1;const{types:t,checker:n}=e;return 2===t.length&&(SZ(n,t[0],t[1])||SZ(n,t[1],t[0]))}function wZ(e,t,n){return Wl(e.kind)&&e.getStart(n)<t&&t<e.end||!!e.isUnterminated&&t===e.end}function kZ(e){switch(e){case 125:case 123:case 124:return!0}return!1}function EZ(e){const t=Xe(e);return $F(t,e&&e.configFile),t}function CZ(e){if(209===e.kind||210===e.kind){if(226===e.parent.kind&&e.parent.left===e&&64===e.parent.operatorToken.kind)return!0;if(250===e.parent.kind&&e.parent.initializer===e)return!0;if(CZ(303===e.parent.kind?e.parent.parent:e.parent))return!0}return!1}function NZ(e,t){return IZ(e,t,!0)}function AZ(e,t){return IZ(e,t,!1)}function IZ(e,t,n){const r=mZ(e,t,void 0);return!!r&&n===vY.test(e.text.substring(r.pos,r.end))}function DZ(e,t){if(e)switch(e.kind){case 11:case 15:return MZ(e,t);default:return PZ(e)}}function PZ(e,t,n){return tc(e.getStart(t),(n||e).getEnd())}function MZ(e,t){let n=e.getEnd()-1;if(e.isUnterminated){if(e.getStart()===n)return;n=Math.min(t,e.getEnd())}return tc(e.getStart()+1,n)}function OZ(e,t){return Yb(e.getStart(t),e.end)}function FZ(e){return tc(e.pos,e.end)}function RZ(e){return Yb(e.start,e.start+e.length)}function LZ(e,t,n){return jZ(ec(e,t),n)}function jZ(e,t){return{span:e,newText:t}}var zZ=[133,131,163,136,97,140,143,146,106,150,151,148,154,155,114,112,116,157,158,159];function UZ(e){return A(zZ,e)}function BZ(e){return 156===e.kind}function qZ(e){return BZ(e)||YC(e)&&"type"===e.text}function VZ(){const e=[];return t=>{const n=Gz(t);return!e[n]&&(e[n]=!0)}}function KZ(e){return e.getText(0,e.getLength())}function JZ(e,t){let n="";for(let r=0;r<t;r++)n+=e;return n}function WZ(e){return e.isTypeParameter()&&e.getConstraint()||e}function HZ(e){return 167===e.kind?Hg(e.expression)?e.expression.text:void 0:ZC(e)?kc(e):$g(e)}function GZ(e){return e.getSourceFiles().some((t=>!(t.isDeclarationFile||e.isSourceFileFromExternalLibrary(t)||!t.externalModuleIndicator&&!t.commonJsModuleIndicator)))}function QZ(e){return e.getSourceFiles().some((t=>!t.isDeclarationFile&&!e.isSourceFileFromExternalLibrary(t)&&!!t.externalModuleIndicator))}function YZ(e){return!!e.module||MS(e)>=2||!!e.noEmit}function ZZ(e,t){return{fileExists:t=>e.fileExists(t),getCurrentDirectory:()=>t.getCurrentDirectory(),readFile:tt(t,t.readFile),useCaseSensitiveFileNames:tt(t,t.useCaseSensitiveFileNames),getSymlinkCache:tt(t,t.getSymlinkCache)||e.getSymlinkCache,getModuleSpecifierCache:tt(t,t.getModuleSpecifierCache),getPackageJsonInfoCache:()=>{var t;return null==(t=e.getModuleResolutionCache())?void 0:t.getPackageJsonInfoCache()},getGlobalTypingsCacheLocation:tt(t,t.getGlobalTypingsCacheLocation),redirectTargetsMap:e.redirectTargetsMap,getProjectReferenceRedirect:t=>e.getProjectReferenceRedirect(t),isSourceOfProjectReferenceRedirect:t=>e.isSourceOfProjectReferenceRedirect(t),getNearestAncestorDirectoryWithPackageJson:tt(t,t.getNearestAncestorDirectoryWithPackageJson),getFileIncludeReasons:()=>e.getFileIncludeReasons(),getCommonSourceDirectory:()=>e.getCommonSourceDirectory()}}function XZ(e,t){return{...ZZ(e,t),getCommonSourceDirectory:()=>e.getCommonSourceDirectory()}}function $Z(e){return 2===e||e>=3&&e<=99||100===e}function eX(e,t,n,r,i){return oE.createImportDeclaration(void 0,e||t?oE.createImportClause(!!i,e,t&&t.length?oE.createNamedImports(t):void 0):void 0,"string"==typeof n?tX(n,r):n,void 0)}function tX(e,t){return oE.createStringLiteral(e,0===t)}var nX=(e=>(e[e.Single=0]="Single",e[e.Double=1]="Double",e))(nX||{});function rX(e,t){return Xm(e,t)?1:0}function iX(e,t){if(t.quotePreference&&"auto"!==t.quotePreference)return"single"===t.quotePreference?0:1;{const t=Lm(e)&&e.imports&&w(e.imports,(e=>MC(e)&&!fy(e.parent)));return t?rX(t,e):1}}function oX(e){switch(e){case 0:return"'";case 1:return'"';default:return Tn.assertNever(e)}}function sX(e){const t=aX(e);return void 0===t?void 0:wc(t)}function aX(e){return"default"!==e.escapedName?e.escapedName:y(e.declarations,(e=>{const t=Oc(e);return t&&80===t.kind?t.escapedText:void 0}))}function cX(e){return Hd(e)&&(AI(e.parent)||dI(e.parent)||zD(e.parent)||Jm(e.parent,!1)&&e.parent.arguments[0]===e||mf(e.parent)&&e.parent.arguments[0]===e)}function lX(e){return $N(e)&&ZN(e.parent)&&YC(e.name)&&!e.propertyName}function uX(e,t){const n=e.getTypeAtLocation(t.parent);return n&&e.getPropertyOfType(n,t.name.text)}function dX(e,t,n){if(e)for(;e.parent;){if(YI(e.parent)||!_X(n,e.parent,t))return e;e=e.parent}}function _X(e,t,n){return Ka(e,t.getStart(n))&&t.getEnd()<=qa(e)}function pX(e,t){return bM(e)?w(e.modifiers,(e=>e.kind===t)):void 0}function fX(e,t,n,r,i){var o;const s=243===(at(n)?n[0]:n).kind?Ym:Np,a=M(t.statements,s),{comparer:c,isSorted:l}=_ue.getOrganizeImportsStringComparerWithDetection(a,i),u=at(n)?xe(n,((e,t)=>_ue.compareImportsOrRequireStatements(e,t,c))):[n];if(null==a?void 0:a.length)if(Tn.assert(Lm(t)),a&&l)for(const d of u){const n=_ue.getImportDeclarationInsertionIndex(a,d,c);if(0===n){const n=a[0]===t.statements[0]?{leadingTriviaOption:Xde.LeadingTriviaOption.Exclude}:{};e.insertNodeBefore(t,a[0],d,!1,n)}else{const r=a[n-1];e.insertNodeAfter(t,r,d)}}else{const n=Ne(a);n?e.insertNodesAfter(t,n,u):e.insertNodesAtTopOfFile(t,u,r)}else if(Lm(t))e.insertNodesAtTopOfFile(t,u,r);else for(const d of u)e.insertStatementsInNewFile(t.fileName,[d],null==(o=vc(d))?void 0:o.getSourceFile())}function mX(e,t){return Tn.assert(e.isTypeOnly),_t(e.getChildAt(0,t),BZ)}function hX(e,t){return!!e&&!!t&&e.start===t.start&&e.length===t.length}function gX(e,t,n){return(n?It:At)(e.fileName,t.fileName)&&hX(e.textSpan,t.textSpan)}function yX(e){return(t,n)=>gX(t,n,e)}function vX(e,t){if(e)for(let n=0;n<e.length;n++)if(e.indexOf(e[n])===n){const r=t(e[n],n);if(r)return r}}function bX(e,t,n){for(let r=t;r<n;r++)if(!na(e.charCodeAt(r)))return!1;return!0}function xX(e,t,n){const r=t.tryGetSourcePosition(e);return r&&(!n||n(ts(r.fileName))?r:void 0)}function SX(e,t,n){const{fileName:r,textSpan:i}=e,o=xX({fileName:r,pos:i.start},t,n);if(!o)return;const s=xX({fileName:r,pos:i.start+i.length},t,n),a=s?s.pos-o.pos:i.length;return{fileName:o.fileName,textSpan:{start:o.pos,length:a},originalFileName:e.fileName,originalTextSpan:e.textSpan,contextSpan:TX(e,t,n),originalContextSpan:e.contextSpan}}function TX(e,t,n){const r=e.contextSpan&&xX({fileName:e.fileName,pos:e.contextSpan.start},t,n),i=e.contextSpan&&xX({fileName:e.fileName,pos:e.contextSpan.start+e.contextSpan.length},t,n);return r&&i?{start:r.pos,length:i.pos-r.pos}:void 0}function wX(e){return!!bc(e.declarations?we(e.declarations):void 0,(e=>!!fN(e)||!($N(e)||ZN(e)||XN(e))&&"quit"))}var kX=function(){const e=10*t_;let t,n,r,i;c();const o=e=>a(e,17);return{displayParts:()=>{const n=t.length&&t[t.length-1].text;return i>e&&n&&"..."!==n&&(na(n.charCodeAt(n.length-1))||t.push(CX(" ",16)),t.push(CX("...",15))),t},writeKeyword:e=>a(e,5),writeOperator:e=>a(e,12),writePunctuation:e=>a(e,15),writeTrailingSemicolon:e=>a(e,15),writeSpace:e=>a(e,16),writeStringLiteral:e=>a(e,8),writeParameter:e=>a(e,13),writeProperty:e=>a(e,14),writeLiteral:e=>a(e,8),writeSymbol:function(n,r){if(i>e)return;s(),i+=n.length,t.push(EX(n,r))},writeLine:function(){if(i>e)return;i+=1,t.push(KX()),n=!0},write:o,writeComment:o,getText:()=>"",getTextPos:()=>0,getColumn:()=>0,getLine:()=>0,isAtStartOfLine:()=>!1,hasTrailingWhitespace:()=>!1,hasTrailingComment:()=>!1,rawWrite:xt,getIndent:()=>r,increaseIndent:()=>{r++},decreaseIndent:()=>{r--},clear:c};function s(){if(!(i>e)&&n){const e=Hy(r);e&&(i+=e.length,t.push(CX(e,16))),n=!1}}function a(n,r){i>e||(s(),i+=n.length,t.push(CX(n,r)))}function c(){t=[],n=!0,r=0,i=0}}();function EX(e,t){return CX(e,function(e){const t=e.flags;if(3&t)return wX(e)?13:9;return 4&t||32768&t||65536&t?14:8&t?19:16&t?20:32&t?1:64&t?4:384&t?2:1536&t?11:8192&t?10:262144&t?18:524288&t||2097152&t?0:17}(t))}function CX(e,t){return{text:e,kind:IQ[t]}}function NX(){return CX(" ",16)}function AX(e){return CX(Vs(e),5)}function IX(e){return CX(Vs(e),15)}function DX(e){return CX(Vs(e),12)}function PX(e){return CX(e,13)}function MX(e){return CX(e,14)}function OX(e){const t=Ks(e);return void 0===t?FX(e):AX(t)}function FX(e){return CX(e,17)}function RX(e){return CX(e,0)}function LX(e){return CX(e,18)}function jX(e){return CX(e,24)}function zX(e,t){return{text:e,kind:IQ[23],target:{fileName:C_(t).fileName,textSpan:PZ(t)}}}function UX(e){return CX(e,22)}function BX(e,t){var n;const r=[UX(`{@${tD(e)?"link":nD(e)?"linkcode":"linkplain"} `)];if(e.name){const i=null==t?void 0:t.getSymbolAtLocation(e.name),o=i&&t?XX(i,t):void 0,s=function(e){let t=e.indexOf("://");if(0===t){for(;t<e.length&&124!==e.charCodeAt(t);)t++;return t}if(0===e.indexOf("()"))return 2;if("<"===e.charAt(0)){let t=0,n=0;for(;n<e.length;)if("<"===e[n]&&t++,">"===e[n]&&t--,n++,!t)return n}return 0}(e.text),a=ep(e.name)+e.text.slice(0,s),c=function(e){let t=0;if(124===e.charCodeAt(t++)){for(;t<e.length&&32===e.charCodeAt(t);)t++;return e.slice(t)}return e}(e.text.slice(s)),l=(null==o?void 0:o.valueDeclaration)||(null==(n=null==o?void 0:o.declarations)?void 0:n[0]);if(l)r.push(zX(a,l)),c&&r.push(jX(c));else{const t=0===s||124===e.text.charCodeAt(s)&&32!==a.charCodeAt(a.length-1)?" ":"";r.push(jX(a+t+c))}}else e.text&&r.push(jX(e.text));return r.push(UX("}")),r}var qX="\n";function VX(e,t){var n;return(null==t?void 0:t.newLineCharacter)||(null==(n=e.getNewLine)?void 0:n.call(e))||qX}function KX(){return CX("\n",6)}function JX(e){try{return e(kX),kX.displayParts()}finally{kX.clear()}}function WX(e,t,n,r=0){return JX((i=>{e.writeType(t,n,17408|r,i)}))}function HX(e,t,n,r,i=0){return JX((o=>{e.writeSymbol(t,n,r,8|i,o)}))}function GX(e,t,n,r=0){return r|=25632,JX((i=>{e.writeSignature(t,n,r,void 0,i)}))}function QX(e,t){const n=t.getSourceFile();return JX((t=>{yV().writeNode(4,e,n,t)}))}function YX(e){return!!e.parent&&Ql(e.parent)&&e.parent.propertyName===e}function ZX(e,t){return FT(e,t.getScriptKind&&t.getScriptKind(e))}function XX(e,t){let n=e;for(;$X(n)||s_(n)&&n.links.target;)n=s_(n)&&n.links.target?n.links.target:Sx(n,t);return n}function $X(e){return!!(2097152&e.flags)}function e$(e,t){return Qz(Sx(e,t))}function t$(e,t){for(;na(e.charCodeAt(t));)t+=1;return t}function n$(e,t){for(;t>-1&&ra(e.charCodeAt(t));)t-=1;return t+1}function r$(e,t=!0){const n=e&&o$(e);return n&&!t&&c$(n),Vw(n,!1)}function i$(e,t,n){let r=n(e);return r?aE(r,e):r=o$(e,n),r&&!t&&c$(r),r}function o$(e,t){const n=t?e=>i$(e,!0,t):r$,r=fU(e,n,void 0,t?e=>e&&a$(e,!0,t):e=>e&&s$(e),n);if(r===e){return vM(MC(e)?aE(oE.createStringLiteralFromNode(e),e):DC(e)?aE(oE.createNumericLiteral(e.text,e.numericLiteralFlags),e):oE.cloneNode(e),e)}return r.parent=void 0,r}function s$(e,t=!0){if(e){const n=oE.createNodeArray(e.map((e=>r$(e,t))),e.hasTrailingComma);return vM(n,e),n}return e}function a$(e,t,n){return oE.createNodeArray(e.map((e=>i$(e,t,n))),e.hasTrailingComma)}function c$(e){l$(e),u$(e)}function l$(e){_$(e,1024,p$)}function u$(e){_$(e,2048,Lx)}function d$(e,t){const n=e.getSourceFile();!function(e,t){const n=e.getFullStart(),r=e.getStart();for(let i=n;i<r;i++)if(10===t.charCodeAt(i))return!0;return!1}(e,n.text)?y$(e,t,n):h$(e,t,n),g$(e,t,n)}function _$(e,t,n){_E(e,t);const r=n(e);r&&_$(r,t,n)}function p$(e){return e.forEachChild((e=>e))}function f$(e,t){let n=e;for(let r=1;!O_(t,n);r++)n=`${e}_${r}`;return n}function m$(e,t,n,r){let i=0,o=-1;for(const{fileName:s,textChanges:a}of e){Tn.assert(s===t);for(const e of a){const{span:t,newText:s}=e,a=b$(s,Ry(n));if(-1!==a&&(o=t.start+i+a,!r))return o;i+=s.length-t.length}}return Tn.assert(r),Tn.assert(o>=0),o}function h$(e,t,n,r,i){va(n.text,e.pos,v$(t,n,r,i,kE))}function g$(e,t,n,r,i){ba(n.text,e.end,v$(t,n,r,i,NE))}function y$(e,t,n,r,i){ba(n.text,e.pos,v$(t,n,r,i,kE))}function v$(e,t,n,r,i){return(o,s,a,c)=>{3===a?(o+=2,s-=2):o+=2,i(e,n||a,t.text.slice(o,s),void 0!==r?r:c)}}function b$(e,t){if(cn(e,t))return 0;let n=e.indexOf(" "+t);return-1===n&&(n=e.indexOf("."+t)),-1===n&&(n=e.indexOf('"'+t)),-1===n?-1:n+1}function x$(e){return gA(e)&&28===e.operatorToken.kind||tA(e)||(kA(e)||EA(e))&&tA(e.expression)}function S$(e,t,n){const r=dg(e.parent);switch(r.kind){case 214:return t.getContextualType(r,n);case 226:{const{left:i,operatorToken:o,right:s}=r;return w$(o.kind)?t.getTypeAtLocation(e===s?i:s):t.getContextualType(e,n)}case 296:return C$(r,t);default:return t.getContextualType(e,n)}}function T$(e,t,n){const r=iX(e,t),i=JSON.stringify(n);return 0===r?`'${Ky(i).replace(/'/g,(()=>"\\'")).replace(/\\"/g,'"')}'`:i}function w$(e){switch(e){case 37:case 35:case 38:case 36:return!0;default:return!1}}function k$(e){switch(e.kind){case 11:case 15:case 228:case 215:return!0;default:return!1}}function E$(e){return!!e.getStringIndexType()||!!e.getNumberIndexType()}function C$(e,t){return t.getTypeAtLocation(e.parent.parent.expression)}var N$="anonymous function";function A$(e,t,n,r){const i=n.getTypeChecker();let o=!0;const s=()=>o=!1,a=i.typeToTypeNode(e,t,1,{trackSymbol:(e,t,n)=>(o=o&&0===i.isSymbolAccessible(e,t,n,!1).accessibility,!o),reportInaccessibleThisError:s,reportPrivateInBaseOfClassExpression:s,reportInaccessibleUniqueSymbolError:s,moduleResolverHost:XZ(n,r)});return o?a:void 0}function I$(e){return 179===e||180===e||181===e||171===e||173===e}function D$(e){return 262===e||176===e||174===e||177===e||178===e}function P$(e){return 267===e}function M$(e){return 243===e||244===e||246===e||251===e||252===e||253===e||257===e||259===e||172===e||265===e||272===e||271===e||278===e||270===e||277===e}var O$=pn(I$,D$,P$,M$);function F$(e,t,n){const r=bc(t,(t=>t.end!==e?"quit":O$(t.kind)));return!!r&&function(e,t){const n=e.getLastToken(t);if(n&&27===n.kind)return!1;if(I$(e.kind)){if(n&&28===n.kind)return!1}else if(P$(e.kind)){const n=Ae(e.getChildren(t));if(n&&aI(n))return!1}else if(D$(e.kind)){const n=Ae(e.getChildren(t));if(n&&Wf(n))return!1}else if(!M$(e.kind))return!1;if(246===e.kind)return!0;const r=$Y(e,bc(e,(e=>!e.parent)),t);return!r||20===r.kind||t.getLineAndCharacterOfPosition(e.getEnd()).line!==t.getLineAndCharacterOfPosition(r.getStart(t)).line}(r,n)}function R$(e){let t=0,n=0;return GM(e,(function r(i){if(M$(i.kind)){const r=i.getLastToken(e);27===(null==r?void 0:r.kind)?t++:n++}else if(I$(i.kind)){const r=i.getLastToken(e);if(27===(null==r?void 0:r.kind))t++;else if(r&&28!==r.kind){ta(e,r.getStart(e)).line!==ta(e,ef(e,r.end).start).line&&n++}}return t+n>=5||GM(i,r)})),0===t&&n<=1||t/n>.2}function L$(e,t){return q$(e,e.getDirectories,t)||[]}function j$(e,t,n,r,i){return q$(e,e.readDirectory,t,n,r,i)||_}function z$(e,t){return q$(e,e.fileExists,t)}function U$(e,t){return B$((()=>Wb(t,e)))||!1}function B$(e){try{return e()}catch{return}}function q$(e,t,...n){return B$((()=>t&&t.apply(e,n)))}function V$(e,t,n){const r=[];return xs(e,(e=>{if(e===n)return!0;const i=Zo(e,"package.json");z$(t,i)&&r.push(i)})),r}function K$(e,t){let n;return xs(e,(e=>"node_modules"===e||(n=RV(e,(e=>z$(t,e)),"package.json"),!!n||void 0))),n}function J$(e,t){if(!t.fileExists)return[];const n=[];return xs(Vo(e),(e=>{const r=Zo(e,"package.json");if(t.fileExists(r)){const e=W$(r,t);e&&n.push(e)}})),n}function W$(e,t){if(!t.readFile)return;const n=["dependencies","devDependencies","optionalDependencies","peerDependencies"],r=Jb(t.readFile(e)||""),i={};if(r)for(const a of n){const e=r[a];if(!e)continue;const t=new Map;for(const n in e)t.set(n,e[n]);i[a]=t}const o=[[1,i.dependencies],[2,i.devDependencies],[8,i.optionalDependencies],[4,i.peerDependencies]];return{...i,parseable:!!r,fileName:e,get:s,has:(e,t)=>!!s(e,t)};function s(e,t=15){for(const[n,r]of o)if(r&&t&n){const t=r.get(e);if(void 0!==t)return t}}}function H$(e,t,n){const r=(n.getPackageJsonsVisibleToFile&&n.getPackageJsonsVisibleToFile(e.fileName)||J$(e.fileName,n)).filter((e=>e.parseable));let i,o,s;return{allowsImportingAmbientModule:function(e,t){if(!r.length||!e.valueDeclaration)return!0;if(o){const t=o.get(e);if(void 0!==t)return t}else o=new Map;const n=Ky(e.getName());if(c(n))return o.set(e,!0),!0;const i=l(e.valueDeclaration.getSourceFile().fileName,t);if(void 0===i)return o.set(e,!0),!0;const s=a(i)||a(n);return o.set(e,s),s},allowsImportingSourceFile:function(e,t){if(!r.length)return!0;if(s){const t=s.get(e);if(void 0!==t)return t}else s=new Map;const n=l(e.fileName,t);if(!n)return s.set(e,!0),!0;const i=a(n);return s.set(e,i),i},allowsImportingSpecifier:function(e){if(!r.length||c(e))return!0;if(Oo(e)||Do(e))return!0;return a(e)}};function a(e){const t=u(e);for(const n of r)if(n.has(t)||n.has(Aj(t)))return!0;return!1}function c(t){return!!(Lm(e)&&jm(e)&&jG.nodeCoreModules.has(t)&&(void 0===i&&(i=G$(e)),i))}function l(r,i){if(!r.includes("node_modules"))return;const o=tz.getNodeModulesPackageName(n.getCompilationSettings(),e,r,i,t);return o?Oo(o)||Do(o)?void 0:u(o):void 0}function u(e){const t=Ho(Dj(e)).slice(1);return cn(t[0],"@")?`${t[0]}/${t[1]}`:t[0]}}function G$(e){return $(e.imports,(({text:e})=>jG.nodeCoreModules.has(e)))}function Q$(e){return A(Ho(e),"node_modules")}function Y$(e){return void 0!==e.file&&void 0!==e.start&&void 0!==e.length}function Z$(e,t){const n=Fe(t,PZ(e),gt,Mt);if(n>=0){const r=t[n];return Tn.assertEqual(r.file,e.getSourceFile(),"Diagnostics proided to 'findDiagnosticForNode' must be from a single SourceFile"),_t(r,Y$)}}function X$(e,t){var n;let r=Fe(t,e.start,(e=>e.start),Pt);for(r<0&&(r=~r);(null==(n=t[r-1])?void 0:n.start)===e.start;)r--;const i=[],o=qa(e);for(;;){const n=dt(t[r],Y$);if(!n||n.start>o)break;Wa(e,n)&&i.push(n),r++}return i}function $$({startPosition:e,endPosition:t}){return tc(e,void 0===t?e:t)}function e0(e,t){return bc(QY(e,t.start),(n=>n.getStart(e)<t.start||n.getEnd()>qa(t)?"quit":td(n)&&hX(t,PZ(n,e))))}function t0(e,t,n=gt){return e?at(e)?n(R(e,t)):t(e,0):void 0}function n0(e){return at(e)?Ee(e):e}function r0(e,t){if(o0(e)){const n=s0(e);if(n)return n;const r=c0(a0(e),t,!1),i=c0(a0(e),t,!0);return r===i?r:[r,i]}return e.name}function i0(e,t,n){return o0(e)?s0(e)||c0(a0(e),t,!!n):e.name}function o0(e){return!(33554432&e.flags||"export="!==e.escapedName&&"default"!==e.escapedName)}function s0(e){return y(e.declarations,(e=>{var t,n,r;return SI(e)?null==(t=dt(gP(e.expression),YC))?void 0:t.text:kI(e)&&2097152===e.symbol.flags?null==(n=dt(e.propertyName,YC))?void 0:n.text:null==(r=dt(Oc(e),YC))?void 0:r.text}))}function a0(e){var t;return Tn.checkDefined(e.parent,`Symbol parent was undefined. Flags: ${Tn.formatSymbolFlags(e.flags)}. Declarations: ${null==(t=e.declarations)?void 0:t.map((e=>{const t=Tn.formatSyntaxKind(e.kind),n=Um(e),{expression:r}=e;return(n?"[JS]":"")+t+(r?` (expression: ${Tn.formatSyntaxKind(r.kind)})`:"")})).join(", ")}.`)}function c0(e,t,n){return l0(ow(Ky(e.name)),t,n)}function l0(e,t,n){const r=Ko(Yt(e,"/index"));let i="",o=!0;const s=r.charCodeAt(0);Ca(s,t)?(i+=String.fromCharCode(s),n&&(i=i.toUpperCase())):o=!1;for(let a=1;a<r.length;a++){const e=r.charCodeAt(a),n=Na(e,t);if(n){let t=String.fromCharCode(e);o||(t=t.toUpperCase()),i+=t}o=n}return Ug(i)?`_${i}`:i||"_"}function u0(e,t,n){const r=t.length;if(r+n>e.length)return!1;for(let i=0;i<r;i++)if(t.charCodeAt(i)!==e.charCodeAt(i+n))return!1;return!0}function d0(e){return 95===e.charCodeAt(0)}function _0(e){return!p0(e)}function p0(e){const t=e.getSourceFile();return!(!t.externalModuleIndicator&&!t.commonJsModuleIndicator)&&(Um(e)||!bc(e,(e=>sI(e)&&yp(e))))}function f0(e){return!!(65536&fc(e))}function m0(e,t){return y(e.imports,(e=>{if(jG.nodeCoreModules.has(e.text))return cn(e.text,"node:")}))??t.usesUriStyleNodeCoreModules}function h0(e){return"\n"===e?1:0}function g0(e){return at(e)?oS(cS(e[0]),e.slice(1)):cS(e)}function y0({options:e},t){const n=!e.semicolons||"ignore"===e.semicolons,r="remove"===e.semicolons||n&&!R$(t);return{...e,semicolons:r?"remove":"ignore"}}function v0(e){return 2===e||3===e}function b0(e,t){return e.isSourceFileFromExternalLibrary(t)||e.isSourceFileDefaultLibrary(t)}function x0(e,t){const n=new Set,r=new Set,i=new Set;for(const s of t)if(!VI(s)){const t=fg(s.expression);if(Kl(t))switch(t.kind){case 15:case 11:n.add(t.text);break;case 9:r.add(parseInt(t.text));break;case 10:const e=Iw(Qt(t.text,"n")?t.text.slice(0,-1):t.text);e&&i.add(Aw(e))}else{const t=e.getSymbolAtLocation(s.expression);if(t&&t.valueDeclaration&&QI(t.valueDeclaration)){const n=e.getConstantValue(t.valueDeclaration);void 0!==n&&o(n)}}}return{addValue:o,hasValue:function(e){switch(typeof e){case"string":return n.has(e);case"number":return r.has(e);case"object":return i.has(Aw(e))}}};function o(e){switch(typeof e){case"string":n.add(e);break;case"number":r.add(e)}}}function S0(e,t,n,r){var i;if(!YT("string"==typeof e?e:e.fileName))return!1;const o=t.getCompilerOptions(),s=OS(o),a="string"==typeof e?PK(rs(e,n.getCurrentDirectory(),Xy(n)),null==(i=t.getPackageJsonInfoCache)?void 0:i.call(t),n,o):e.impliedNodeFormat;if(99===a)return!1;if(1===a)return!0;if(o.verbatimModuleSyntax&&1===s)return!0;if(o.verbatimModuleSyntax&&QS(s))return!1;if("object"==typeof e){if(e.commonJsModuleIndicator)return!0;if(e.externalModuleIndicator)return!1}return r}function T0(e){switch(e.kind){case 241:case 307:case 268:case 296:return!0;default:return!1}}function w0(e,t,n,r){var i;const o=MK(e,null==(i=n.getPackageJsonInfoCache)?void 0:i.call(n),r,n.getCompilerOptions());let s,a;return"object"==typeof o&&(s=o.impliedNodeFormat,a=o.packageJsonScope),{path:rs(e,n.getCurrentDirectory(),n.getCanonicalFileName),fileName:e,externalModuleIndicator:99===t||void 0,commonJsModuleIndicator:1===t||void 0,impliedNodeFormat:s,packageJsonScope:a,statements:_,imports:_}}var k0=(e=>(e[e.Named=0]="Named",e[e.Default=1]="Default",e[e.Namespace=2]="Namespace",e[e.CommonJS=3]="CommonJS",e))(k0||{}),E0=(e=>(e[e.Named=0]="Named",e[e.Default=1]="Default",e[e.ExportEquals=2]="ExportEquals",e[e.UMD=3]="UMD",e))(E0||{});function C0(e){let t=1;const n=nt(),r=new Map,i=new Map;let o;const s={isUsableByFile:e=>e===o,isEmpty:()=>!n.size,clear:()=>{n.clear(),r.clear(),o=void 0},add:(e,a,c,l,u,d,_,p)=>{let f;if(e!==o&&(s.clear(),o=e),u){const t=rk(u.fileName);if(t){const{topLevelNodeModulesIndex:n,topLevelPackageNameIndex:r,packageRootIndex:o}=t;if(f=Pj(Dj(u.fileName.substring(r+1,o))),cn(e,u.path.substring(0,n))){const e=i.get(f),t=u.fileName.substring(0,r+1);if(e){n>e.indexOf(GL)&&i.set(f,t)}else i.set(f,t)}}}const m=1===d&&Lb(a)||a,h=0===d||a_(m)?wc(c):r0(m,void 0),g="string"==typeof h?h:h[0],y="string"==typeof h?void 0:h[1],v=Ky(l.name),b=t++,x=Sx(a,p),S=33554432&a.flags?void 0:a,T=33554432&l.flags?void 0:l;S&&T||r.set(b,[a,l]),n.add(function(e,t,n,r){const i=n||"";return`${e.length} ${Qz(Sx(t,r))} ${e} ${i}`}(g,a,za(v)?void 0:v,p),{id:b,symbolTableKey:c,symbolName:g,capitalizedSymbolName:y,moduleName:v,moduleFile:u,moduleFileName:null==u?void 0:u.fileName,packageName:f,exportKind:d,targetFlags:x.flags,isFromPackageJson:_,symbol:S,moduleSymbol:T})},get:(e,t)=>{if(e!==o)return;const r=n.get(t);return null==r?void 0:r.map(a)},search:(t,r,s,c)=>{if(t===o)return f_(n,((t,n)=>{const{symbolName:o,ambientModuleName:l}=function(e){const t=e.indexOf(" "),n=e.indexOf(" ",t+1),r=parseInt(e.substring(0,t),10),i=e.substring(n+1),o=i.substring(0,r),s=i.substring(r+1),a=""===s?void 0:s;return{symbolName:o,ambientModuleName:a}}(n),u=r&&t[0].capitalizedSymbolName||o;if(s(u,t[0].targetFlags)){const r=t.map(a).filter(((n,r)=>function(t,n){if(!n||!t.moduleFileName)return!0;const r=e.getGlobalTypingsCacheLocation();if(r&&cn(t.moduleFileName,r))return!0;const o=i.get(n);return!o||cn(t.moduleFileName,o)}(n,t[r].packageName)));if(r.length){const e=c(r,u,!!l,n);if(void 0!==e)return e}}}))},releaseSymbols:()=>{r.clear()},onFileChanged:(e,t,n)=>(!c(e)||!c(t))&&(o&&o!==t.path||n&&G$(e)!==G$(t)||!le(e.moduleAugmentations,t.moduleAugmentations)||!function(e,t){if(!le(e.ambientModuleNames,t.ambientModuleNames))return!1;let n=-1,r=-1;for(const i of t.ambientModuleNames){const o=e=>fp(e)&&e.name.text===i;if(n=E(e.statements,o,n+1),r=E(t.statements,o,r+1),e.statements[n]!==t.statements[r])return!1}return!0}(e,t)?(s.clear(),!0):(o=t.path,!1))};return Tn.isDebugging&&Object.defineProperty(s,"__cache",{value:n}),s;function a(t){if(t.symbol&&t.moduleSymbol)return t;const{id:n,exportKind:i,targetFlags:o,isFromPackageJson:s,moduleFileName:a}=t,[c,l]=r.get(n)||_;if(c&&l)return{symbol:c,moduleSymbol:l,moduleFileName:a,exportKind:i,targetFlags:o,isFromPackageJson:s};const u=(s?e.getPackageJsonAutoImportProvider():e.getCurrentProgram()).getTypeChecker(),d=t.moduleSymbol||l||Tn.checkDefined(t.moduleFile?u.getMergedSymbol(t.moduleFile.symbol):u.tryFindAmbientModule(t.moduleName)),p=t.symbol||c||Tn.checkDefined(2===i?u.resolveExternalModuleSymbol(d):u.tryGetMemberInModuleExportsAndProperties(wc(t.symbolTableKey),d),`Could not find symbol '${t.symbolName}' by key '${t.symbolTableKey}' in module ${d.name}`);return r.set(n,[p,d]),{symbol:p,moduleSymbol:d,moduleFileName:a,exportKind:i,targetFlags:o,isFromPackageJson:s}}function c(e){return!(e.commonJsModuleIndicator||e.externalModuleIndicator||e.moduleAugmentations||e.ambientModuleNames)}}function N0(e,t,n,r,i,o,s){var a;if(t===n)return!1;const c=null==s?void 0:s.get(t.path,n.path,r,{});if(void 0!==(null==c?void 0:c.isBlockedByPackageJsonDependencies))return!c.isBlockedByPackageJsonDependencies;const l=Xy(o),u=null==(a=o.getGlobalTypingsCacheLocation)?void 0:a.call(o),d=!!tz.forEachFileNameOfModule(t.fileName,n.fileName,o,!1,(r=>{const i=e.getSourceFile(r);return(i===n||!i)&&function(e,t,n,r){const i=xs(t,(e=>"node_modules"===Ko(e)?e:void 0)),o=i&&Vo(n(i));return void 0===o||cn(n(e),o)||!!r&&cn(n(r),o)}(t.fileName,r,l,u)}));if(i){const e=d&&i.allowsImportingSourceFile(n,o);return null==s||s.setBlockedByPackageJsonDependencies(t.path,n.path,r,{},!e),e}return d}function A0(e,t,n,r,i){var o,s;const a=Zy(t),c=n.autoImportFileExcludePatterns&&J(n.autoImportFileExcludePatterns,(e=>{const t=NT(e,"","exclude");return t?DT(t,a):void 0}));I0(e.getTypeChecker(),e.getSourceFiles(),c,t,((t,n)=>i(t,n,e,!1)));const l=r&&(null==(o=t.getPackageJsonAutoImportProvider)?void 0:o.call(t));if(l){const n=er(),r=e.getTypeChecker();I0(l.getTypeChecker(),l.getSourceFiles(),c,t,((t,n)=>{(n&&!e.getSourceFile(n.fileName)||!n&&!r.resolveName(t.name,void 0,1536,!1))&&i(t,n,l,!0)})),null==(s=t.log)||s.call(t,"forEachExternalModuleToImportFrom autoImportProvider: "+(er()-n))}}function I0(e,t,n,r,i){var o,s;const a=null==(o=r.getSymlinkCache)?void 0:o.call(r).getSymlinkedDirectoriesByRealpath(),c=n&&(({fileName:e,path:t})=>{if(n.some((t=>t.test(e))))return!0;if((null==a?void 0:a.size)&&QL(e)){let r=Vo(e);return xs(Vo(t),(t=>{const i=a.get(os(t));if(i)return i.some((t=>n.some((n=>n.test(e.replace(r,t))))));r=Vo(r)}))??!1}return!1});for(const l of e.getAmbientModules())l.name.includes("*")||n&&(null==(s=l.declarations)?void 0:s.every((e=>c(e.getSourceFile()))))||i(l,void 0);for(const l of t)of(l)&&!(null==c?void 0:c(l))&&i(e.getMergedSymbol(l.symbol),l)}function D0(e,t,n,r,i){var o,s,a,c,l;const u=er();null==(o=t.getPackageJsonAutoImportProvider)||o.call(t);const d=(null==(s=t.getCachedExportInfoMap)?void 0:s.call(t))||C0({getCurrentProgram:()=>n,getPackageJsonAutoImportProvider:()=>{var e;return null==(e=t.getPackageJsonAutoImportProvider)?void 0:e.call(t)},getGlobalTypingsCacheLocation:()=>{var e;return null==(e=t.getGlobalTypingsCacheLocation)?void 0:e.call(t)}});if(d.isUsableByFile(e.path))return null==(a=t.log)||a.call(t,"getExportInfoMap: cache hit"),d;null==(c=t.log)||c.call(t,"getExportInfoMap: cache miss or empty; calculating new results");let _=0;try{A0(n,t,r,!0,((t,n,r,o)=>{++_%100==0&&(null==i||i.throwIfCancellationRequested());const s=new Map,a=r.getTypeChecker(),c=P0(t,a);c&&M0(c.symbol,a)&&d.add(e.path,c.symbol,1===c.exportKind?"default":"export=",t,n,c.exportKind,o,a),a.forEachExportAndPropertyOfModule(t,((r,i)=>{r!==(null==c?void 0:c.symbol)&&M0(r,a)&&jx(s,i)&&d.add(e.path,r,i,t,n,0,o,a)}))}))}catch(p){throw d.clear(),p}return null==(l=t.log)||l.call(t,`getExportInfoMap: done in ${er()-u} ms`),d}function P0(e,t){const n=t.resolveExternalModuleSymbol(e);if(n!==e)return{symbol:n,exportKind:2};const r=t.tryGetMemberInModuleExports("default",e);return r?{symbol:r,exportKind:1}:void 0}function M0(e,t){return!(t.isUndefinedSymbol(e)||t.isUnknownSymbol(e)||ry(e)||iy(e))}function O0(e,t,n,r,i){let o,s=e;const a=new Map;for(;s;){const e=s0(s);if(e){const t=i(e);if(t)return t}if("default"!==s.escapedName&&"export="!==s.escapedName){const e=i(s.name);if(e)return e}if(o=_e(o,s),!jx(a,s))break;s=2097152&s.flags?t.getImmediateAliasedSymbol(s):void 0}for(const c of o??_)if(c.parent&&a_(c.parent)){const e=i(c0(c.parent,MS(n),r));if(e)return e}}function F0(){const e=Ia(99,!1);function t(t,n,r){let i=0,o=0;const s=[],{prefix:a,pushTemplate:c}=function(e){switch(e){case 3:return{prefix:'"\\\n'};case 2:return{prefix:"'\\\n"};case 1:return{prefix:"/*\n"};case 4:return{prefix:"`\n"};case 5:return{prefix:"}\n",pushTemplate:!0};case 6:return{prefix:"",pushTemplate:!0};case 0:return{prefix:""};default:return Tn.assertNever(e)}}(n);t=a+t;const l=a.length;c&&s.push(16),e.setText(t);let u=0;const d=[];let _=0;do{i=e.scan(),Vg(i)||(p(),o=i);const n=e.getTokenEnd();if(z0(e.getTokenStart(),n,l,B0(i),d),n>=t.length){const t=j0(e,i,Ne(s));void 0!==t&&(u=t)}}while(1!==i);function p(){switch(i){case 44:case 69:L0[o]||14!==e.reScanSlashToken()||(i=14);break;case 30:80===o&&_++;break;case 32:_>0&&_--;break;case 133:case 154:case 150:case 136:case 155:_>0&&!r&&(i=80);break;case 16:s.push(i);break;case 19:s.length>0&&s.push(i);break;case 20:if(s.length>0){const t=Ne(s);16===t?(i=e.reScanTemplateToken(!1),18===i?s.pop():Tn.assertEqual(i,17,"Should have been a template middle.")):(Tn.assertEqual(t,19,"Should have been an open brace"),s.pop())}break;default:if(!Og(i))break;(25===o||Og(o)&&Og(i)&&!function(e,t){if(!kZ(e))return!0;switch(t){case 139:case 153:case 137:case 126:case 129:return!0;default:return!1}}(o,i))&&(i=80)}}return{endOfLineState:u,spans:d}}return{getClassificationsForLine:function(e,n,r){return function(e,t){const n=[],r=e.spans;let i=0;for(let s=0;s<r.length;s+=3){const e=r[s],t=r[s+1],o=r[s+2];if(i>=0){const t=e-i;t>0&&n.push({length:t,classification:4})}n.push({length:t,classification:U0(o)}),i=e+t}const o=t.length-i;o>0&&n.push({length:o,classification:4});return{entries:n,finalLexState:e.endOfLineState}}(t(e,n,r),e)},getEncodedLexicalClassifications:t}}var R0,L0=Ge([80,11,9,10,14,110,46,47,22,24,20,112,97],(e=>e),(()=>!0));function j0(e,t,n){switch(t){case 11:{if(!e.isUnterminated())return;const t=e.getTokenText(),n=t.length-1;let r=0;for(;92===t.charCodeAt(n-r);)r++;if(!(1&r))return;return 34===t.charCodeAt(0)?3:2}case 3:return e.isUnterminated()?1:void 0;default:if(Wl(t)){if(!e.isUnterminated())return;switch(t){case 18:return 5;case 15:return 4;default:return Tn.fail("Only 'NoSubstitutionTemplateLiteral's and 'TemplateTail's can be unterminated; got SyntaxKind #"+t)}}return 16===n?6:void 0}}function z0(e,t,n,r,i){if(8===r)return;0===e&&n>0&&(e+=n);const o=t-e;o>0&&i.push(e-n,o,r)}function U0(e){switch(e){case 1:return 3;case 3:return 1;case 4:return 6;case 25:return 7;case 5:return 2;case 6:return 8;case 8:return 4;case 10:return 0;case 2:case 11:case 12:case 13:case 14:case 15:case 16:case 9:case 17:return 5;default:return}}function B0(e){if(Og(e))return 3;if(function(e){switch(e){case 42:case 44:case 45:case 40:case 41:case 48:case 49:case 50:case 30:case 32:case 33:case 34:case 104:case 103:case 130:case 152:case 35:case 36:case 37:case 38:case 51:case 53:case 52:case 56:case 57:case 75:case 74:case 79:case 71:case 72:case 73:case 65:case 66:case 67:case 69:case 70:case 64:case 28:case 61:case 76:case 77:case 78:return!0;default:return!1}}(e)||function(e){switch(e){case 40:case 41:case 55:case 54:case 46:case 47:return!0;default:return!1}}(e))return 5;if(e>=19&&e<=79)return 10;switch(e){case 9:return 4;case 10:return 25;case 11:return 6;case 14:return 7;case 7:case 3:case 2:return 1;case 5:case 4:return 8;default:return Wl(e)?6:2}}function q0(e,t,n,r,i){return H0(K0(e,t,n,r,i))}function V0(e,t){switch(t){case 267:case 263:case 264:case 262:case 231:case 218:case 219:e.throwIfCancellationRequested()}}function K0(e,t,n,r,i){const o=[];return n.forEachChild((function s(a){if(a&&Ya(i,a.pos,a.getFullWidth())){if(V0(t,a.kind),YC(a)&&!F_(a)&&r.has(a.escapedText)){const t=e.getSymbolAtLocation(a),r=t&&J0(t,VQ(a),e);r&&function(e,t,n){const r=t-e;Tn.assert(r>0,`Classification had non-positive length of ${r}`),o.push(e),o.push(r),o.push(n)}(a.getStart(n),a.getEnd(),r)}a.forEachChild(s)}})),{spans:o,endOfLineState:0}}function J0(e,t,n){const r=e.getFlags();return 2885600&r?32&r?11:384&r?12:524288&r?16:1536&r?4&t||1&t&&function(e){return $(e.declarations,(e=>sI(e)&&1===qj(e)))}(e)?14:void 0:2097152&r?J0(n.getAliasedSymbol(e),t,n):2&t?64&r?13:262144&r?15:void 0:void 0:void 0}function W0(e){switch(e){case 1:return"comment";case 2:return"identifier";case 3:return"keyword";case 4:return"number";case 25:return"bigint";case 5:return"operator";case 6:return"string";case 8:return"whitespace";case 9:return"text";case 10:return"punctuation";case 11:return"class name";case 12:return"enum name";case 13:return"interface name";case 14:return"module name";case 15:return"type parameter name";case 16:return"type alias name";case 17:return"parameter name";case 18:return"doc comment tag name";case 19:return"jsx open tag name";case 20:return"jsx close tag name";case 21:return"jsx self closing tag name";case 22:return"jsx attribute";case 23:return"jsx text";case 24:return"jsx attribute string literal value";default:return}}function H0(e){Tn.assert(e.spans.length%3==0);const t=e.spans,n=[];for(let r=0;r<t.length;r+=3)n.push({textSpan:ec(t[r],t[r+1]),classificationType:W0(t[r+2])});return n}function G0(e,t,n){return H0(Q0(e,t,n))}function Q0(e,t,n){const r=n.start,i=n.length,o=Ia(99,!1,t.languageVariant,t.text),s=Ia(99,!1,t.languageVariant,t.text),a=[];return h(t),{spans:a,endOfLineState:0};function c(e,t,n){a.push(e),a.push(t),a.push(n)}function l(e,n,r,i){if(3===n){const n=rO(t.text,r,i);if(n&&n.jsDoc)return Bw(n.jsDoc,e),void function(e){var t,n,r,i,o,s,a,l;let _=e.pos;if(e.tags)for(const f of e.tags){f.pos!==_&&u(_,f.pos-_),c(f.pos,1,10),c(f.tagName.pos,f.tagName.end-f.tagName.pos,18),_=f.tagName.end;let e=f.tagName.end;switch(f.kind){case 341:const c=f;p(c),e=c.isNameFirst&&(null==(t=c.typeExpression)?void 0:t.end)||c.name.end;break;case 348:const u=f;e=u.isNameFirst&&(null==(n=u.typeExpression)?void 0:n.end)||u.name.end;break;case 345:d(f),_=f.end,e=f.typeParameters.end;break;case 346:const m=f;e=309===(null==(r=m.typeExpression)?void 0:r.kind)&&(null==(i=m.fullName)?void 0:i.end)||(null==(o=m.typeExpression)?void 0:o.end)||e;break;case 338:case 343:case 340:e=f.typeExpression.end;break;case 344:h(f.typeExpression),_=f.end,e=f.typeExpression.end;break;case 342:h(f.typeExpression),_=f.end,e=(null==(s=f.typeExpression)?void 0:s.end)||e;break;case 347:e=(null==(a=f.name)?void 0:a.end)||e;break;case 328:case 329:e=f.class.end;break;case 349:h(f.typeExpression),_=f.end,e=(null==(l=f.typeExpression)?void 0:l.end)||e}"object"==typeof f.comment?u(f.comment.pos,f.comment.end-f.comment.pos):"string"==typeof f.comment&&u(e,f.end-e)}_!==e.end&&u(_,e.end-_);return;function p(e){e.isNameFirst&&(u(_,e.name.pos-_),c(e.name.pos,e.name.end-e.name.pos,17),_=e.name.end),e.typeExpression&&(u(_,e.typeExpression.pos-_),h(e.typeExpression),_=e.typeExpression.end),e.isNameFirst||(u(_,e.name.pos-_),c(e.name.pos,e.name.end-e.name.pos,17),_=e.name.end)}}(n.jsDoc)}else if(2===n&&function(e,n){const r=/^(\/\/\/\s*)(<)(?:(\S+)((?:[^/]|\/[^>])*)(\/>)?)?/im,i=/(\s)(\S+)(\s*)(=)(\s*)('[^']+'|"[^"]+")/gim,o=t.text.substr(e,n),s=r.exec(o);if(!s)return!1;if(!s[3]||!(s[3]in Gi))return!1;let a=e;u(a,s[1].length),a+=s[1].length,c(a,s[2].length,10),a+=s[2].length,c(a,s[3].length,21),a+=s[3].length;const l=s[4];let d=a;for(;;){const e=i.exec(l);if(!e)break;const t=a+e.index+e[1].length;t>d&&(u(d,t-d),d=t),c(d,e[2].length,22),d+=e[2].length,e[3].length&&(u(d,e[3].length),d+=e[3].length),c(d,e[4].length,5),d+=e[4].length,e[5].length&&(u(d,e[5].length),d+=e[5].length),c(d,e[6].length,24),d+=e[6].length}a+=s[4].length,a>d&&u(d,a-d);s[5]&&(c(a,s[5].length,10),a+=s[5].length);const _=e+n;a<_&&u(a,_-a);return!0}(r,i))return;u(r,i)}function u(e,t){c(e,t,1)}function d(e){for(const t of e.getChildren())h(t)}function _(e,t,n){let r;for(r=t;r<n&&!ia(e.charCodeAt(r));r++);for(c(t,r-t,1),s.resetTokenState(r);s.getTokenEnd()<n;)p()}function p(){const e=s.getTokenEnd(),t=s.scan(),n=s.getTokenEnd(),r=m(t);r&&c(e,n-e,r)}function f(e){if(_D(e))return!0;if(F_(e))return!0;const n=function(e){switch(e.parent&&e.parent.kind){case 286:if(e.parent.tagName===e)return 19;break;case 287:if(e.parent.tagName===e)return 20;break;case 285:if(e.parent.tagName===e)return 21;break;case 291:if(e.parent.name===e)return 22}return}(e);if(!Bl(e)&&12!==e.kind&&void 0===n)return!1;const r=12===e.kind?e.pos:function(e){for(o.resetTokenState(e.pos);;){const n=o.getTokenEnd();if(!ua(t.text,n))return n;const r=o.scan(),i=o.getTokenEnd(),s=i-n;if(!Vg(r))return n;switch(r){case 4:case 5:continue;case 2:case 3:l(e,r,n,s),o.resetTokenState(i);continue;case 7:const a=t.text,u=a.charCodeAt(n);if(60===u||62===u){c(n,s,1);continue}Tn.assert(124===u||61===u),_(a,n,i);break;case 6:break;default:Tn.assertNever(r)}}}(e),i=e.end-r;if(Tn.assert(i>=0),i>0){const t=n||m(e.kind,e);t&&c(r,i,t)}return!0}function m(e,t){if(Og(e))return 3;if((30===e||32===e)&&t&&vZ(t.parent))return 10;if(Fg(e)){if(t){const n=t.parent;if(64===e&&(260===n.kind||172===n.kind||169===n.kind||291===n.kind))return 5;if(226===n.kind||224===n.kind||225===n.kind||227===n.kind)return 5}return 10}if(9===e)return 4;if(10===e)return 25;if(11===e)return t&&291===t.parent.kind?24:6;if(14===e)return 6;if(Wl(e))return 6;if(12===e)return 23;if(80===e){if(t){switch(t.parent.kind){case 263:return t.parent.name===t?11:void 0;case 168:return t.parent.name===t?15:void 0;case 264:return t.parent.name===t?13:void 0;case 266:return t.parent.name===t?12:void 0;case 267:return t.parent.name===t?14:void 0;case 169:return t.parent.name===t?Tv(t)?3:17:void 0}if(Pl(t.parent))return 3}return 2}}function h(n){if(n&&Za(r,i,n.pos,n.getFullWidth())){V0(e,n.kind);for(const e of n.getChildren(t))f(e)||h(e)}}}function Y0(e){return!!e.sourceFile}function Z0(e,t,n){return X0(e,t,n)}function X0(e,t="",n,r){const i=new Map,o=rn(!!e);function s(e){return"function"==typeof e.getCompilationSettings?e.getCompilationSettings():e}function a(e,t,n,r,i,o,s,a){return u(e,t,n,r,i,o,!0,s,a)}function c(e,t,n,r,i,o,a,c){return u(e,t,s(n),r,i,o,!1,a,c)}function l(e,t){const n=Y0(e)?e:e.get(Tn.checkDefined(t,"If there are more than one scriptKind's for same document the scriptKind should be provided"));return Tn.assert(void 0===t||!n||n.sourceFile.scriptKind===t,`Script kind should match provided ScriptKind:${t} and sourceFile.scriptKind: ${null==n?void 0:n.sourceFile.scriptKind}, !entry: ${!n}`),n}function u(e,t,o,a,c,u,d,_,p){var f,m,h,g;_=FT(e,_);const y=s(o),v=o===y?void 0:o,b=6===_?100:MS(y),x="object"==typeof p?p:{languageVersion:b,impliedNodeFormat:v&&PK(t,null==(g=null==(h=null==(m=null==(f=v.getCompilerHost)?void 0:f.call(v))?void 0:m.getModuleResolutionCache)?void 0:h.call(m))?void 0:g.getPackageJsonInfoCache(),v,y),setExternalModuleIndicator:DS(y),jsDocParsingMode:n};x.languageVersion=b,Tn.assertEqual(n,x.jsDocParsingMode);const S=i.size,T=e1(a,x.impliedNodeFormat),w=G(i,T,(()=>new Map));if(ar){i.size>S&&ar.instant(ar.Phase.Session,"createdDocumentRegistryBucket",{configFilePath:y.configFilePath,key:T});const e=!lO(t)&&f_(i,((e,n)=>n!==T&&e.has(t)&&n));e&&ar.instant(ar.Phase.Session,"documentRegistryBucketOverlap",{path:t,key1:e,key2:T})}const k=w.get(t);let E=k&&l(k,_);if(!E&&r){const e=r.getDocument(T,t);e&&e.scriptKind===_&&e.text===KZ(c)&&(Tn.assert(d),E={sourceFile:e,languageServiceRefCount:0},C())}if(E)E.sourceFile.version!==u&&(E.sourceFile=p8(E.sourceFile,c,u,c.getChangeRange(E.sourceFile.scriptSnapshot)),r&&r.setDocument(T,t,E.sourceFile)),d&&E.languageServiceRefCount++;else{const n=_8(e,c,x,u,!1,_);r&&r.setDocument(T,t,n),E={sourceFile:n,languageServiceRefCount:1},C()}return Tn.assert(0!==E.languageServiceRefCount),E.sourceFile;function C(){if(k)if(Y0(k)){const e=new Map;e.set(k.sourceFile.scriptKind,k),e.set(_,E),w.set(t,e)}else k.set(_,E);else w.set(t,E)}}function d(e,t,n,r){const o=Tn.checkDefined(i.get(e1(t,r))),s=o.get(e),a=l(s,n);a.languageServiceRefCount--,Tn.assert(a.languageServiceRefCount>=0),0===a.languageServiceRefCount&&(Y0(s)?o.delete(e):(s.delete(n),1===s.size&&o.set(e,v(s.values(),gt))))}return{acquireDocument:function(e,n,r,i,c,l){return a(e,rs(e,t,o),n,$0(s(n)),r,i,c,l)},acquireDocumentWithKey:a,updateDocument:function(e,n,r,i,a,l){return c(e,rs(e,t,o),n,$0(s(n)),r,i,a,l)},updateDocumentWithKey:c,releaseDocument:function(e,n,r,i){return d(rs(e,t,o),$0(n),r,i)},releaseDocumentWithKey:d,getKeyForCompilationSettings:$0,getDocumentRegistryBucketKeyWithMode:e1,reportStats:function(){const e=Ke(i.keys()).filter((e=>e&&"_"===e.charAt(0))).map((e=>{const t=i.get(e),n=[];return t.forEach(((e,t)=>{Y0(e)?n.push({name:t,scriptKind:e.sourceFile.scriptKind,refCount:e.languageServiceRefCount}):e.forEach(((e,r)=>n.push({name:t,scriptKind:r,refCount:e.languageServiceRefCount})))})),n.sort(((e,t)=>t.refCount-e.refCount)),{bucket:e,sourceFiles:n}}));return JSON.stringify(e,void 0,2)},getBuckets:()=>i}}function $0(e){return SL(e,RO)}function e1(e,t){return t?`${e}|${t}`:e}function t1(e,t,n,r,i,o,s){const a=Zy(r),c=rn(a),l=n1(t,n,c,s),u=n1(n,t,c,s);return Xde.ChangeTracker.with({host:r,formatContext:i,preferences:o},(i=>{!function(e,t,n,r,i,o,s){const{configFile:a}=e.getCompilerOptions();if(!a)return;const c=Vo(a.fileName),l=$f(a);if(!l)return;function u(e){const t=eA(e.initializer)?e.initializer.elements:[e.initializer];let n=!1;for(const r of t)n=d(r)||n;return n}function d(e){if(!MC(e))return!1;const r=r1(c,e.text),i=n(r);return void 0!==i&&(t.replaceRangeWithText(a,a1(e,a),_(i)),!0)}function _(e){return gs(c,e,!s)}c1(l,((e,n)=>{switch(n){case"files":case"include":case"exclude":{if(u(e)||"include"!==n||!eA(e.initializer))return;const l=J(e.initializer.elements,(e=>MC(e)?e.text:void 0));if(0===l.length)return;const d=IT(c,[],l,s,o);return void(DT(Tn.checkDefined(d.includeFilePattern),s).test(r)&&!DT(Tn.checkDefined(d.includeFilePattern),s).test(i)&&t.insertNodeAfter(a,Ae(e.initializer.elements),oE.createStringLiteral(_(i))))}case"compilerOptions":return void c1(e.initializer,((e,t)=>{const n=aF(t);Tn.assert("listOrElement"!==(null==n?void 0:n.type)),n&&(n.isFilePath||"list"===n.type&&n.element.isFilePath)?u(e):"paths"===t&&c1(e.initializer,(e=>{if(eA(e.initializer))for(const t of e.initializer.elements)d(t)}))}))}}))}(e,i,l,t,n,r.getCurrentDirectory(),a),function(e,t,n,r,i,o){const s=e.getSourceFiles();for(const a of s){const c=n(a.fileName),l=c??a.fileName,u=Vo(l),d=r(a.fileName),_=d||a.fileName,p=Vo(_),f=void 0!==c||void 0!==d;s1(a,t,(e=>{if(!Oo(e))return;const t=r1(p,e),r=n(t);return void 0===r?void 0:ss(gs(u,r,o))}),(t=>{const r=e.getTypeChecker().getSymbolAtLocation(t);if((null==r?void 0:r.declarations)&&r.declarations.some((e=>_p(e))))return;const o=void 0!==d?o1(t,RL(t.text,_,e.getCompilerOptions(),i),n,s):i1(r,t,a,e,i,n);return void 0!==o&&(o.updated||f&&Oo(t.text))?tz.updateModuleSpecifier(e.getCompilerOptions(),a,l,o.newFileName,ZZ(e,i),t.text):void 0}))}}(e,i,l,u,r,c)}))}function n1(e,t,n,r){const i=n(e);return e=>{const o=r&&r.tryGetSourcePosition({fileName:e,pos:0}),s=function(e){if(n(e)===i)return t;const r=pT(e,i,n);return void 0===r?void 0:t+"/"+r}(o?o.fileName:e);return o?void 0===s?void 0:function(e,t,n,r){const i=vs(e,t,r);return r1(Vo(n),i)}(o.fileName,s,e,n):s}}function r1(e,t){return ss(function(e,t){return ts(Zo(e,t))}(e,t))}function i1(e,t,n,r,i,o){if(e){const t=w(e.declarations,YI).fileName,n=o(t);return void 0===n?{newFileName:t,updated:!1}:{newFileName:n,updated:!0}}{const e=r.getModeForUsageLocation(n,t);return o1(t,i.resolveModuleNameLiterals||!i.resolveModuleNames?r.getResolvedModuleFromModuleSpecifier(t,n):i.getResolvedModuleWithFailedLookupLocationsFromCache&&i.getResolvedModuleWithFailedLookupLocationsFromCache(t.text,n.fileName,e),o,r.getSourceFiles())}}function o1(e,t,n,r){if(!t)return;if(t.resolvedModule){const e=s(t.resolvedModule.resolvedFileName);if(e)return e}const i=h(t.failedLookupLocations,(function(e){const t=n(e);return t&&w(r,(e=>e.fileName===t))?o(e):void 0}))||Oo(e.text)&&h(t.failedLookupLocations,o);return i||t.resolvedModule&&{newFileName:t.resolvedModule.resolvedFileName,updated:!1};function o(e){return Qt(e,"/package.json")?void 0:s(e)}function s(e){const t=n(e);return t&&{newFileName:t,updated:!0}}}function s1(e,t,n,r){for(const i of e.referencedFiles||_){const r=n(i.fileName);void 0!==r&&r!==e.text.slice(i.pos,i.end)&&t.replaceRangeWithText(e,i,r)}for(const i of e.imports){const n=r(i);void 0!==n&&n!==i.text&&t.replaceRangeWithText(e,a1(i,e),n)}}function a1(e,t){return Yb(e.getStart(t)+1,e.end-1)}function c1(e,t){if(tA(e))for(const n of e.properties)WI(n)&&MC(n.name)&&t(n,n.name.text)}(e=>{function t(e,t){return{fileName:t.fileName,textSpan:PZ(e,t),kind:"none"}}function n(e){return YA(e)?[e]:ZA(e)?te(e.catchClause?n(e.catchClause):e.tryBlock&&n(e.tryBlock),e.finallyBlock&&n(e.finallyBlock)):pu(e)?void 0:i(e,n)}function r(e){return Fl(e)?[e]:pu(e)?void 0:i(e,r)}function i(e,t){const n=[];return e.forEachChild((e=>{const r=t(e);void 0!==r&&n.push(...ct(r))})),n}function o(e,t){const n=s(t);return!!n&&n===e}function s(e){return bc(e,(t=>{switch(t.kind){case 255:if(251===e.kind)return!1;case 248:case 249:case 250:case 247:case 246:return!e.label||function(e,t){return!!bc(e.parent,(e=>QA(e)?e.label.escapedText===t:"quit"))}(t,e.label.escapedText);default:return pu(t)&&"quit"}}))}function a(e,t,...n){return!(!t||!A(n,t.kind))&&(e.push(t),!0)}function c(e){const t=[];if(a(t,e.getFirstToken(),99,117,92)&&246===e.kind){const n=e.getChildren();for(let e=n.length-1;e>=0&&!a(t,n[e],117);e--);}return h(r(e.statement),(n=>{o(e,n)&&a(t,n.getFirstToken(),83,88)})),t}function l(e){const t=s(e);if(t)switch(t.kind){case 248:case 249:case 250:case 246:case 247:return c(t);case 255:return u(t)}}function u(e){const t=[];return a(t,e.getFirstToken(),109),h(e.caseBlock.clauses,(n=>{a(t,n.getFirstToken(),84,90),h(r(n),(n=>{o(e,n)&&a(t,n.getFirstToken(),83)}))})),t}function d(e,t){const n=[];if(a(n,e.getFirstToken(),113),e.catchClause&&a(n,e.catchClause.getFirstToken(),85),e.finallyBlock){a(n,FY(e,98,t),98)}return n}function _(e,t){const r=function(e){let t=e;for(;t.parent;){const e=t.parent;if(Wf(e)||307===e.kind)return e;if(ZA(e)&&e.tryBlock===t&&e.catchClause)return t;t=e}}(e);if(!r)return;const i=[];return h(n(r),(e=>{i.push(FY(e,111,t))})),Wf(r)&&Of(r,(e=>{i.push(FY(e,107,t))})),i}function p(e,t){const r=nm(e);if(!r)return;const i=[];return Of(_t(r.body,OA),(e=>{i.push(FY(e,107,t))})),h(n(r.body),(e=>{i.push(FY(e,111,t))})),i}function f(e){const t=nm(e);if(!t)return;const n=[];return t.modifiers&&t.modifiers.forEach((e=>{a(n,e,134)})),GM(t,(e=>{m(e,(e=>{fA(e)&&a(n,e.getFirstToken(),135)}))})),n}function m(e,t){t(e),pu(e)||xu(e)||rI(e)||sI(e)||iI(e)||Du(e)||GM(e,(e=>m(e,t)))}e.getDocumentHighlights=function(e,n,r,i,o){const s=HY(r,i);if(s.parent&&(PI(s.parent)&&s.parent.tagName===s||MI(s.parent))){const{openingElement:e,closingElement:n}=s.parent.parent,i=[e,n].map((({tagName:e})=>t(e,r)));return[{fileName:r.fileName,highlightSpans:i}]}return function(e,t,n,r,i){const o=new Set(i.map((e=>e.fileName))),s=Ice.getReferenceEntriesForNode(e,t,n,i,r,void 0,o);if(!s)return;const a=Qe(s.map(Ice.toHighlightSpan),(e=>e.fileName),(e=>e.span)),c=rn(n.useCaseSensitiveFileNames());return Ke(W(a.entries(),(([e,t])=>{if(!o.has(e)){if(!n.redirectTargetsMap.has(rs(e,n.getCurrentDirectory(),c)))return;const t=n.getSourceFile(e);e=w(i,(e=>!!e.redirectInfo&&e.redirectInfo.redirectTarget===t)).fileName,Tn.assert(o.has(e))}return{fileName:e,highlightSpans:t}})))}(i,s,e,n,o)||function(e,n){const r=function(e,n){switch(e.kind){case 101:case 93:return jA(e.parent)?function(e,n){const r=function(e,t){const n=[];for(;jA(e.parent)&&e.parent.elseStatement===e;)e=e.parent;for(;;){const r=e.getChildren(t);a(n,r[0],101);for(let e=r.length-1;e>=0&&!a(n,r[e],93);e--);if(!e.elseStatement||!jA(e.elseStatement))break;e=e.elseStatement}return n}(e,n),i=[];for(let o=0;o<r.length;o++){if(93===r[o].kind&&o<r.length-1){const e=r[o],t=r[o+1];let s=!0;for(let r=t.getStart(n)-1;r>=e.end;r--)if(!ra(n.text.charCodeAt(r))){s=!1;break}if(s){i.push({fileName:n.fileName,textSpan:tc(e.getStart(),t.end),kind:"reference"}),o++;continue}}i.push(t(r[o],n))}return i}(e.parent,n):void 0;case 107:return o(e.parent,WA,p);case 111:return o(e.parent,YA,_);case 113:case 85:case 98:return o(85===e.kind?e.parent.parent:e.parent,ZA,d);case 109:return o(e.parent,GA,u);case 84:case 90:return VI(e.parent)||qI(e.parent)?o(e.parent.parent.parent,GA,u):void 0;case 83:case 88:return o(e.parent,Fl,l);case 99:case 117:case 92:return o(e.parent,(e=>id(e,!0)),c);case 137:return i(xN,[137]);case 139:case 153:return i(Su,[139,153]);case 135:return o(e.parent,fA,f);case 134:return s(f(e));case 127:return s(function(e){const t=nm(e);if(!t)return;const n=[];return GM(t,(e=>{m(e,(e=>{bA(e)&&a(n,e.getFirstToken(),127)}))})),n}(e));case 103:case 147:return;default:return su(e.kind)&&(Sd(e.parent)||FA(e.parent))?s((r=e.kind,J(function(e,t){const n=e.parent;switch(n.kind){case 268:case 307:case 241:case 296:case 297:return 64&t&&nI(e)?[...e.members,e]:n.statements;case 176:case 174:case 262:return[...n.parameters,...xu(n.parent)?n.parent.members:[]];case 263:case 231:case 264:case 187:const r=n.members;if(15&t){const e=w(n.members,xN);if(e)return[...r,...e.parameters]}else if(64&t)return[...r,n];return r;case 210:return;default:Tn.assertNever(n,"Invalid container kind.")}}(e.parent,ub(r)),(e=>pX(e,r))))):void 0}var r;function i(t,r){return o(e.parent,t,(e=>{var i;return J(null==(i=dt(e,yd))?void 0:i.symbol.declarations,(e=>t(e)?w(e.getChildren(n),(e=>A(r,e.kind))):void 0))}))}function o(e,t,r){return t(e)?s(r(e,n)):void 0}function s(e){return e&&e.map((e=>t(e,n)))}}(e,n);return r&&[{fileName:n.fileName,highlightSpans:r}]}(s,r)}})(R0||(R0={}));var l1=(e=>(e[e.exact=0]="exact",e[e.prefix=1]="prefix",e[e.substring=2]="substring",e[e.camelCase=3]="camelCase",e))(l1||{});function u1(e,t){return{kind:e,isCaseSensitive:t}}function d1(e){const t=new Map,n=e.trim().split(".").map((e=>{return{totalTextChunk:k1(t=e.trim()),subWordTextChunks:w1(t)};var t}));return 1===n.length&&""===n[0].totalTextChunk.text?{getMatchForLastSegmentOfPattern:()=>u1(2,!0),getFullMatch:()=>u1(2,!0),patternContainsDots:!1}:n.some((e=>!e.subWordTextChunks.length))?void 0:{getFullMatch:(e,r)=>function(e,t,n,r){const i=f1(t,Ae(n),r);if(!i)return;if(n.length-1>e.length)return;let o;for(let s=n.length-2,a=e.length-1;s>=0;s-=1,a-=1)o=m1(o,f1(e[a],n[s],r));return o}(e,r,n,t),getMatchForLastSegmentOfPattern:e=>f1(e,Ae(n),t),patternContainsDots:n.length>1}}function _1(e,t){let n=t.get(e);return n||t.set(e,n=C1(e)),n}function p1(e,t,n){const r=function(e,t){const n=e.length-t.length;for(let r=0;r<=n;r++)if(O1(t,((t,n)=>x1(e.charCodeAt(n+r))===t)))return r;return-1}(e,t.textLowerCase);if(0===r)return u1(t.text.length===e.length?0:1,cn(e,t.text));if(t.isLowerCase){if(-1===r)return;const i=_1(e,n);for(const n of i)if(g1(e,n,t.text,!0))return u1(2,g1(e,n,t.text,!1));if(t.text.length<e.length&&v1(e.charCodeAt(r)))return u1(2,!1)}else{if(e.indexOf(t.text)>0)return u1(2,!0);if(t.characterSpans.length>0){const r=_1(e,n),i=!!y1(e,r,t,!1)||!y1(e,r,t,!0)&&void 0;if(void 0!==i)return u1(3,i)}}}function f1(e,t,n){if(O1(t.totalTextChunk.text,(e=>32!==e&&42!==e))){const r=p1(e,t.totalTextChunk,n);if(r)return r}const r=t.subWordTextChunks;let i;for(const o of r)i=m1(i,p1(e,o,n));return i}function m1(e,t){return Ot([e,t],h1)}function h1(e,t){return void 0===e?1:void 0===t?-1:Pt(e.kind,t.kind)||Wt(!e.isCaseSensitive,!t.isCaseSensitive)}function g1(e,t,n,r,i={start:0,length:n.length}){return i.length<=t.length&&M1(0,i.length,(o=>function(e,t,n){return n?x1(e)===x1(t):e===t}(n.charCodeAt(i.start+o),e.charCodeAt(t.start+o),r)))}function y1(e,t,n,r){const i=n.characterSpans;let o,s,a=0,c=0;for(;;){if(c===i.length)return!0;if(a===t.length)return!1;let l=t[a],u=!1;for(;c<i.length;c++){const t=i[c];if(u&&(!v1(n.text.charCodeAt(i[c-1].start))||!v1(n.text.charCodeAt(i[c].start))))break;if(!g1(e,l,n.text,r,t))break;u=!0,o=void 0===o?a:o,s=void 0===s||s,l=ec(l.start+t.length,l.length-t.length)}u||void 0===s||(s=!1),a++}}function v1(e){if(e>=65&&e<=90)return!0;if(e<127||!Us(e,99))return!1;const t=String.fromCharCode(e);return t===t.toUpperCase()}function b1(e){if(e>=97&&e<=122)return!0;if(e<127||!Us(e,99))return!1;const t=String.fromCharCode(e);return t===t.toLowerCase()}function x1(e){return e>=65&&e<=90?e-65+97:e<127?e:String.fromCharCode(e).toLowerCase().charCodeAt(0)}function S1(e){return e>=48&&e<=57}function T1(e){return v1(e)||b1(e)||S1(e)||95===e||36===e}function w1(e){const t=[];let n=0,r=0;for(let i=0;i<e.length;i++){T1(e.charCodeAt(i))?(0===r&&(n=i),r++):r>0&&(t.push(k1(e.substr(n,r))),r=0)}return r>0&&t.push(k1(e.substr(n,r))),t}function k1(e){const t=e.toLowerCase();return{text:e,textLowerCase:t,isLowerCase:e===t,characterSpans:E1(e)}}function E1(e){return N1(e,!1)}function C1(e){return N1(e,!0)}function N1(e,t){const n=[];let r=0;for(let i=1;i<e.length;i++){const o=S1(e.charCodeAt(i-1)),s=S1(e.charCodeAt(i)),a=P1(e,t,i),c=t&&D1(e,i,r);(A1(e.charCodeAt(i-1))||A1(e.charCodeAt(i))||o!==s||a||c)&&(I1(e,r,i)||n.push(ec(r,i-r)),r=i)}return I1(e,r,e.length)||n.push(ec(r,e.length-r)),n}function A1(e){switch(e){case 33:case 34:case 35:case 37:case 38:case 39:case 40:case 41:case 42:case 44:case 45:case 46:case 47:case 58:case 59:case 63:case 64:case 91:case 92:case 93:case 95:case 123:case 125:return!0}return!1}function I1(e,t,n){return O1(e,(e=>A1(e)&&95!==e),t,n)}function D1(e,t,n){return t!==n&&t+1<e.length&&v1(e.charCodeAt(t))&&b1(e.charCodeAt(t+1))&&O1(e,v1,n,t)}function P1(e,t,n){const r=v1(e.charCodeAt(n-1));return v1(e.charCodeAt(n))&&(!t||!r)}function M1(e,t,n){for(let r=e;r<t;r++)if(!n(r))return!1;return!0}function O1(e,t,n=0,r=e.length){return M1(n,r,(n=>t(e.charCodeAt(n),n)))}function F1(e,t=!0,n=!1){const r={languageVersion:1,pragmas:void 0,checkJsDirective:void 0,referencedFiles:[],typeReferenceDirectives:[],libReferenceDirectives:[],amdDependencies:[],hasNoDefaultLib:void 0,moduleName:void 0},i=[];let o,s,a,c=0,l=!1;function u(){return s=a,a=UQ.scan(),19===a?c++:20===a&&c--,a}function d(){const e=UQ.getTokenValue(),t=UQ.getTokenStart();return{fileName:e,pos:t,end:t+e.length}}function _(){i.push(d()),p()}function p(){0===c&&(l=!0)}function f(){let e=UQ.getToken();return 138===e&&(e=u(),144===e&&(e=u(),11===e&&(o||(o=[]),o.push({ref:d(),depth:c}))),!0)}function h(){if(25===s)return!1;let e=UQ.getToken();if(102===e){if(e=u(),21===e){if(e=u(),11===e||15===e)return _(),!0}else{if(11===e)return _(),!0;if(156===e){UQ.lookAhead((()=>{const e=UQ.scan();return 161!==e&&(42===e||19===e||80===e||Og(e))}))&&(e=u())}if(80===e||Og(e))if(e=u(),161===e){if(e=u(),11===e)return _(),!0}else if(64===e){if(y(!0))return!0}else{if(28!==e)return!0;e=u()}if(19===e){for(e=u();20!==e&&1!==e;)e=u();20===e&&(e=u(),161===e&&(e=u(),11===e&&_()))}else 42===e&&(e=u(),130===e&&(e=u(),(80===e||Og(e))&&(e=u(),161===e&&(e=u(),11===e&&_()))))}return!0}return!1}function g(){let e=UQ.getToken();if(95===e){if(p(),e=u(),156===e){UQ.lookAhead((()=>{const e=UQ.scan();return 42===e||19===e}))&&(e=u())}if(19===e){for(e=u();20!==e&&1!==e;)e=u();20===e&&(e=u(),161===e&&(e=u(),11===e&&_()))}else if(42===e)e=u(),161===e&&(e=u(),11===e&&_());else if(102===e){if(e=u(),156===e){UQ.lookAhead((()=>{const e=UQ.scan();return 80===e||Og(e)}))&&(e=u())}if((80===e||Og(e))&&(e=u(),64===e&&y(!0)))return!0}return!0}return!1}function y(e,t=!1){let n=e?u():UQ.getToken();return 149===n&&(n=u(),21===n&&(n=u(),(11===n||t&&15===n)&&_()),!0)}function v(){let e=UQ.getToken();if(80===e&&"define"===UQ.getTokenValue()){if(e=u(),21!==e)return!0;if(e=u(),11===e||15===e){if(e=u(),28!==e)return!0;e=u()}if(23!==e)return!0;for(e=u();24!==e&&1!==e;)11!==e&&15!==e||_(),e=u();return!0}return!1}if(t&&function(){for(UQ.setText(e),u();1!==UQ.getToken();){if(16===UQ.getToken()){const e=[UQ.getToken()];e:for(;m(e);){const t=UQ.scan();switch(t){case 1:break e;case 102:h();break;case 16:e.push(t);break;case 19:m(e)&&e.push(t);break;case 20:m(e)&&(16===Ne(e)?18===UQ.reScanTemplateToken(!1)&&e.pop():e.pop())}}u()}f()||h()||g()||n&&(y(!1,!0)||v())||u()}UQ.setText(void 0)}(),dO(r,e),_O(r,pt),l){if(o)for(const e of o)i.push(e.ref);return{referencedFiles:r.referencedFiles,typeReferenceDirectives:r.typeReferenceDirectives,libReferenceDirectives:r.libReferenceDirectives,importedFiles:i,isLibFile:!!r.hasNoDefaultLib,ambientExternalModules:void 0}}{let e;if(o)for(const t of o)0===t.depth?(e||(e=[]),e.push(t.ref.fileName)):i.push(t.ref);return{referencedFiles:r.referencedFiles,typeReferenceDirectives:r.typeReferenceDirectives,libReferenceDirectives:r.libReferenceDirectives,importedFiles:i,isLibFile:!!r.hasNoDefaultLib,ambientExternalModules:e}}}var R1=/^data:(?:application\/json(?:;charset=[uU][tT][fF]-8);base64,([A-Za-z0-9+/=]+)$)?/;function L1(e){const t=rn(e.useCaseSensitiveFileNames()),n=e.getCurrentDirectory(),r=new Map,i=new Map;return{tryGetSourcePosition:function e(t){if(!lO(t.fileName))return;if(!a(t.fileName))return;const n=s(t.fileName).getSourcePosition(t);return n&&n!==t?e(n)||n:void 0},tryGetGeneratedPosition:function(t){if(lO(t.fileName))return;const n=a(t.fileName);if(!n)return;const r=e.getProgram();if(r.isSourceOfProjectReferenceRedirect(n.fileName))return;const i=r.getCompilerOptions().outFile,o=i?ow(i)+".d.ts":ov(t.fileName,r.getCompilerOptions(),r);if(void 0===o)return;const c=s(o,t.fileName).getGeneratedPosition(t);return c===t?void 0:c},toLineColumnOffset:function(e,t){return l(e).getLineAndCharacterOfPosition(t)},clearCache:function(){r.clear(),i.clear()},documentPositionMappers:i};function o(e){return rs(e,n,t)}function s(n,r){const s=o(n),a=i.get(s);if(a)return a;let c;if(e.getDocumentPositionMapper)c=e.getDocumentPositionMapper(n,r);else if(e.readFile){const r=l(n);c=r&&j1({getSourceFileLike:l,getCanonicalFileName:t,log:t=>e.log(t)},n,xU(r.text,Zs(r)),(t=>!e.fileExists||e.fileExists(t)?e.readFile(t):void 0))}return i.set(s,c||RU),c||RU}function a(t){const n=e.getProgram();if(!n)return;const r=o(t),i=n.getSourceFileByPath(r);return i&&i.resolvedPath===r?i:void 0}function c(t){const n=o(t),i=r.get(n);if(void 0!==i)return i||void 0;if(!e.readFile||e.fileExists&&!e.fileExists(t))return void r.set(n,!1);const s=e.readFile(t),a=!!s&&function(e,t){return{text:e,lineMap:t,getLineAndCharacterOfPosition(e){return Xs(Zs(this),e)}}}(s);return r.set(n,a),a||void 0}function l(t){return e.getSourceFileLike?e.getSourceFileLike(t):a(t)||c(t)}}function j1(e,t,n,r){let i=SU(n);if(i){const n=R1.exec(i);if(n){if(n[1]){const r=n[1];return z1(e,qb(To,r),t)}i=void 0}}const o=[];i&&o.push(i),o.push(t+".map");const s=i&&es(i,Vo(t));for(const a of o){const n=es(a,Vo(t)),i=r(n,s);if(lt(i))return z1(e,i,n);if(void 0!==i)return i||void 0}}function z1(e,t,n){const r=kU(t);if(r&&r.sources&&r.file&&r.mappings&&(!r.sourcesContent||!r.sourcesContent.some(lt)))return FU(e,r,n)}var U1=new Map;function B1(e,t,n){var r;t.getSemanticDiagnostics(e,n);const i=[],o=t.getTypeChecker();var s;!(1===e.impliedNodeFormat||jo(e.fileName,[".cts",".cjs"]))&&e.commonJsModuleIndicator&&(QZ(t)||YZ(t.getCompilerOptions()))&&function(e){return e.statements.some((e=>{switch(e.kind){case 243:return e.declarationList.declarations.some((e=>!!e.initializer&&Jm(q1(e.initializer),!0)));case 244:{const{expression:t}=e;if(!gA(t))return Jm(t,!0);const n=dh(t);return 1===n||2===n}default:return!1}}))}(e)&&i.push(Vp(gA(s=e.commonJsModuleIndicator)?s.left:s,ws.File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module));const a=jm(e);if(U1.clear(),function t(n){if(a)(function(e,t){var n,r,i,o;if(lA(e)){if($A(e.parent)&&(null==(n=e.symbol.members)?void 0:n.size))return!0;const o=t.getSymbolOfExpando(e,!1);return!(!o||!(null==(r=o.exports)?void 0:r.size)&&!(null==(i=o.members)?void 0:i.size))}if(tI(e))return!!(null==(o=e.symbol.members)?void 0:o.size);return!1})(n,o)&&i.push(Vp($A(n.parent)?n.parent.name:n,ws.This_constructor_function_may_be_converted_to_a_class_declaration));else{if(FA(n)&&n.parent===e&&2&n.declarationList.flags&&1===n.declarationList.declarations.length){const e=n.declarationList.declarations[0].initializer;e&&Jm(e,!0)&&i.push(Vp(e,ws.require_call_may_be_converted_to_an_import))}const t=G8.getJSDocTypedefNodes(n);for(const e of t)i.push(Vp(e,ws.JSDoc_typedef_may_be_converted_to_TypeScript_type));G8.parameterShouldGetTypeFromJSDoc(n)&&i.push(Vp(n.name||n,ws.JSDoc_types_may_be_moved_to_TypeScript_types))}Z1(n)&&function(e,t,n){(function(e,t){return!Wg(e)&&e.body&&OA(e.body)&&function(e,t){return!!Of(e,(e=>J1(e,t)))}(e.body,t)&&K1(e,t)})(e,t)&&!U1.has(Y1(e))&&n.push(Vp(!e.name&&$A(e.parent)&&YC(e.parent.name)?e.parent.name:e,ws.This_may_be_converted_to_an_async_function))}(n,o,i);n.forEachChild(t)}(e),zS(t.getCompilerOptions()))for(const c of e.imports){const n=V1(Nh(c));if(!n)continue;const o=null==(r=t.getResolvedModuleFromModuleSpecifier(c,e))?void 0:r.resolvedModule,s=o&&t.getSourceFile(o.resolvedFileName);s&&s.externalModuleIndicator&&!0!==s.externalModuleIndicator&&SI(s.externalModuleIndicator)&&s.externalModuleIndicator.isExportEquals&&i.push(Vp(n,ws.Import_may_be_converted_to_a_default_import))}return me(i,e.bindSuggestionDiagnostics),me(i,t.getSuggestionDiagnostics(e,n)),i.sort(((e,t)=>e.start-t.start))}function q1(e){return nA(e)?q1(e.expression):e}function V1(e){switch(e.kind){case 272:const{importClause:t,moduleSpecifier:n}=e;return t&&!t.name&&t.namedBindings&&274===t.namedBindings.kind&&MC(n)?t.namedBindings.name:void 0;case 271:return e.name;default:return}}function K1(e,t){const n=t.getSignatureFromDeclaration(e),r=n?t.getReturnTypeOfSignature(n):void 0;return!!r&&!!t.getPromisedTypeOfPromise(r)}function J1(e,t){return WA(e)&&!!e.expression&&W1(e.expression,t)}function W1(e,t){if(!H1(e)||!G1(e)||!e.arguments.every((e=>Q1(e,t))))return!1;let n=e.expression.expression;for(;H1(n)||nA(n);)if(iA(n)){if(!G1(n)||!n.arguments.every((e=>Q1(e,t))))return!1;n=n.expression.expression}else n=n.expression;return!0}function H1(e){return iA(e)&&(iY(e,"then")||iY(e,"catch")||iY(e,"finally"))}function G1(e){const t=e.expression.name.text,n="then"===t?2:"catch"===t||"finally"===t?1:0;return!(e.arguments.length>n)&&(e.arguments.length<n||(1===n||$(e.arguments,(e=>106===e.kind||YC(e)&&"undefined"===e.text))))}function Q1(e,t){switch(e.kind){case 262:case 218:if(1&Jg(e))return!1;case 219:U1.set(Y1(e),!0);case 106:return!0;case 80:case 211:{const n=t.getSymbolAtLocation(e);return!!n&&(t.isUndefinedSymbol(n)||$(Sx(n,t).declarations,(e=>pu(e)||Bd(e)&&!!e.initializer&&pu(e.initializer))))}default:return!1}}function Y1(e){return`${e.pos.toString()}:${e.end.toString()}`}function Z1(e){switch(e.kind){case 262:case 174:case 218:case 219:return!0;default:return!1}}var X1=new Set(["isolatedModules"]);function $1(e,t){return o2(e,t,!1)}function e2(e,t){return o2(e,t,!0)}var t2,n2,r2='/// <reference no-default-lib="true"/>\ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number {}\ninterface Object {}\ninterface RegExp {}\ninterface String {}\ninterface Array<T> { length: number; [n: number]: T; }\ninterface SymbolConstructor {\n (desc?: string | number): symbol;\n for(name: string): symbol;\n readonly toStringTag: symbol;\n}\ndeclare var Symbol: SymbolConstructor;\ninterface Symbol {\n readonly [Symbol.toStringTag]: string;\n}',i2="lib.d.ts";function o2(e,t,n){t2??(t2=XM(i2,r2,{languageVersion:99}));const r=[],i=t.compilerOptions?a2(t.compilerOptions,r):{},o={target:1,jsx:1};for(const p in o)je(o,p)&&void 0===i[p]&&(i[p]=o[p]);for(const p of jO)i.verbatimModuleSyntax&&X1.has(p.name)||(i[p.name]=p.transpileOptionValue);i.suppressOutputPathCheck=!0,i.allowNonTsExtensions=!0,n?(i.declaration=!0,i.emitDeclarationOnly=!0,i.isolatedDeclarations=!0):i.declaration=!1;const s=Qb(i),a={getSourceFile:e=>e===ts(c)?l:e===ts(i2)?t2:void 0,writeFile:(e,t)=>{Lo(e,".map")?(Tn.assertEqual(d,void 0,"Unexpected multiple source map outputs, file:",e),d=t):(Tn.assertEqual(u,void 0,"Unexpected multiple outputs, file:",e),u=t)},getDefaultLibFileName:()=>i2,useCaseSensitiveFileNames:()=>!1,getCanonicalFileName:e=>e,getCurrentDirectory:()=>"",getNewLine:()=>s,fileExists:e=>e===c||!!n&&e===i2,readFile:()=>"",directoryExists:()=>!0,getDirectories:()=>[]},c=t.fileName||(t.compilerOptions&&t.compilerOptions.jsx?"module.tsx":"module.ts"),l=XM(c,e,{languageVersion:MS(i),impliedNodeFormat:PK(rs(c,"",a.getCanonicalFileName),void 0,a,i),setExternalModuleIndicator:DS(i),jsDocParsingMode:t.jsDocParsingMode??0});let u,d;t.moduleName&&(l.moduleName=t.moduleName),t.renamedDependencies&&(l.renamedDependencies=new Map(Object.entries(t.renamedDependencies)));const _=FK(n?[c,i2]:[c],i,a);t.reportDiagnostics&&(me(r,_.getSyntacticDiagnostics(l)),me(r,_.getOptionsDiagnostics()));return me(r,_.emit(void 0,void 0,void 0,n,t.transformers,n).diagnostics),void 0===u?Tn.fail("Output generation failed"):{outputText:u,diagnostics:r,sourceMapText:d}}function s2(e,t,n,r,i){const o=$1(e,{compilerOptions:t,fileName:n,reportDiagnostics:!!r,moduleName:i});return me(r,o.diagnostics),o.outputText}function a2(e,t){n2=n2||M(DO,(e=>"object"==typeof e.type&&!f_(e.type,(e=>"number"!=typeof e)))),e=EZ(e);for(const n of n2){if(!je(e,n.name))continue;const r=e[n.name];lt(r)?e[n.name]=XO(n,r,t):f_(n.type,(e=>e===r))||t.push(YO(n))}return e}var c2={};function l2(e,t,n,r,i,o,s){const a=d1(r);if(!a)return _;const c=[],l=1===e.length?e[0]:void 0;for(const u of e)n.throwIfCancellationRequested(),o&&u.isDeclarationFile||u2(u,!!s,l)||u.getNamedDeclarations().forEach(((e,n)=>{d2(a,n,e,t,u.fileName,!!s,l,c)}));return c.sort(g2),(void 0===i?c:c.slice(0,i)).map(y2)}function u2(e,t,n){return e!==n&&t&&(Q$(e.path)||e.hasNoDefaultLib)}function d2(e,t,n,r,i,o,s,a){const c=e.getMatchForLastSegmentOfPattern(t);if(c)for(const l of n)if(_2(l,r,o,s))if(e.patternContainsDots){const n=e.getFullMatch(h2(l),t);n&&a.push({name:t,fileName:i,matchKind:n.kind,isCaseSensitive:n.isCaseSensitive,declaration:l})}else a.push({name:t,fileName:i,matchKind:c.kind,isCaseSensitive:c.isCaseSensitive,declaration:l})}function _2(e,t,n,r){var i;switch(e.kind){case 273:case 276:case 271:const o=t.getSymbolAtLocation(e.name),s=t.getAliasedSymbol(o);return o.escapedName!==s.escapedName&&!(null==(i=s.declarations)?void 0:i.every((e=>u2(e.getSourceFile(),n,r))));default:return!0}}function p2(e,t){const n=Oc(e);return!!n&&(m2(n,t)||167===n.kind&&f2(n.expression,t))}function f2(e,t){return m2(e,t)||nA(e)&&(t.push(e.name.text),!0)&&f2(e.expression,t)}function m2(e,t){return Xg(e)&&(t.push($g(e)),!0)}function h2(e){const t=[],n=Oc(e);if(n&&167===n.kind&&!f2(n.expression,t))return _;t.shift();let r=hY(e);for(;r;){if(!p2(r,t))return _;r=hY(r)}return t.reverse()}function g2(e,t){return Pt(e.matchKind,t.matchKind)||Kt(e.name,t.name)}function y2(e){const t=e.declaration,n=hY(t),r=n&&Oc(n);return{name:e.name,kind:gY(t),kindModifiers:yZ(t),matchKind:l1[e.matchKind],isCaseSensitive:e.isCaseSensitive,fileName:e.fileName,textSpan:PZ(t),containerName:r?r.text:"",containerKind:r?gY(n):""}}a(c2,{getNavigateToItems:()=>l2});var v2={};a(v2,{getNavigationBarItems:()=>A2,getNavigationTree:()=>I2});var b2,x2,S2,T2,w2=/\s+/g,k2=150,E2=[],C2=[],N2=[];function A2(e,t){b2=t,x2=e;try{return R(function(e){const t=[];function n(e){if(r(e)&&(t.push(e),e.children))for(const t of e.children)n(t)}return n(e),t;function r(e){if(e.children)return!0;switch(M2(e)){case 263:case 231:case 266:case 264:case 267:case 307:case 265:case 346:case 338:return!0;case 219:case 262:case 218:return t(e);default:return!1}function t(e){if(!e.node.body)return!1;switch(M2(e.parent)){case 268:case 307:case 174:case 176:return!0;default:return!1}}}}(F2(e)),i3)}finally{D2()}}function I2(e,t){b2=t,x2=e;try{return r3(F2(e))}finally{D2()}}function D2(){x2=void 0,b2=void 0,E2=[],S2=void 0,N2=[]}function P2(e){return f3(e.getText(x2))}function M2(e){return e.node.kind}function O2(e,t){e.children?e.children.push(t):e.children=[t]}function F2(e){Tn.assert(!E2.length);const t={node:e,name:void 0,additionalNodes:void 0,parent:void 0,children:void 0,indent:0};S2=t;for(const n of e.statements)W2(n);return q2(),Tn.assert(!S2&&!E2.length),t}function R2(e,t){O2(S2,L2(e,t))}function L2(e,t){return{node:e,name:t||(Sd(e)||td(e)?Oc(e):void 0),additionalNodes:void 0,parent:S2,children:void 0,indent:S2.indent+1}}function j2(e){T2||(T2=new Map),T2.set(e,!0)}function z2(e){for(let t=0;t<e;t++)q2()}function U2(e,t){const n=[];for(;!Xg(t);){const e=yh(t),r=bh(t);t=t.expression,"prototype"===r||ZC(e)||n.push(e)}n.push(t);for(let r=n.length-1;r>0;r--){B2(e,n[r])}return[n.length-1,n[0]]}function B2(e,t){const n=L2(e,t);O2(S2,n),E2.push(S2),C2.push(T2),T2=void 0,S2=n}function q2(){S2.children&&(H2(S2.children,S2),$2(S2.children)),S2=E2.pop(),T2=C2.pop()}function V2(e,t,n){B2(e,n),W2(t),q2()}function K2(e){e.initializer&&function(e){switch(e.kind){case 219:case 218:case 231:return!0;default:return!1}}(e.initializer)?(B2(e),GM(e.initializer,W2),q2()):V2(e,e.initializer)}function J2(e){const t=Oc(e);if(void 0===t)return!1;if(_N(t)){const e=t.expression;return wb(e)||DC(e)||Hg(e)}return!!t}function W2(e){if(b2.throwIfCancellationRequested(),e&&!Bl(e))switch(e.kind){case 176:const t=e;V2(t,t.body);for(const e of t.parameters)cc(e,t)&&R2(e);break;case 174:case 177:case 178:case 173:J2(e)&&V2(e,e.body);break;case 172:J2(e)&&K2(e);break;case 171:J2(e)&&R2(e);break;case 273:const n=e;n.name&&R2(n.name);const{namedBindings:r}=n;if(r)if(274===r.kind)R2(r);else for(const e of r.elements)R2(e);break;case 304:V2(e,e.name);break;case 305:const{expression:i}=e;YC(i)?R2(e,i):R2(e);break;case 208:case 303:case 260:{const t=e;Mu(t.name)?W2(t.name):K2(t);break}case 262:const o=e.name;o&&YC(o)&&j2(o.text),V2(e,e.body);break;case 219:case 218:V2(e,e.body);break;case 266:B2(e);for(const s of e.members)l3(s)||R2(s);q2();break;case 263:case 231:case 264:B2(e);for(const s of e.members)W2(s);q2();break;case 267:V2(e,c3(e).body);break;case 277:{const t=e.expression,n=tA(t)||iA(t)?t:uA(t)||lA(t)?t.body:void 0;n?(B2(e),W2(n),q2()):R2(e);break}case 281:case 271:case 181:case 179:case 180:case 265:R2(e);break;case 213:case 226:{const t=dh(e);switch(t){case 1:case 2:return void V2(e,e.right);case 6:case 3:{const n=e,r=n.left,i=3===t?r.expression:r;let o,s=0;return YC(i.expression)?(j2(i.expression.text),o=i.expression):[s,o]=U2(n,i.expression),6===t?tA(n.right)&&n.right.properties.length>0&&(B2(n,o),GM(n.right,W2),q2()):lA(n.right)||uA(n.right)?V2(e,n.right,o):(B2(n,o),V2(e,n.right,r.name),q2()),void z2(s)}case 7:case 9:{const n=e,r=7===t?n.arguments[0]:n.arguments[0].expression,i=n.arguments[1],[o,s]=U2(e,r);return B2(e,s),B2(e,vM(oE.createIdentifier(i.text),i)),W2(e.arguments[2]),q2(),q2(),void z2(o)}case 5:{const t=e,n=t.left,r=n.expression;if(YC(r)&&"prototype"!==bh(n)&&T2&&T2.has(r.text))return void(lA(t.right)||uA(t.right)?V2(e,t.right,r):mh(n)&&(B2(t,r),V2(t.left,t.right,yh(n)),q2()));break}case 4:case 0:case 8:break;default:Tn.assertNever(t)}}default:zd(e)&&h(e.jsDoc,(e=>{h(e.tags,(e=>{Rh(e)&&R2(e)}))})),GM(e,W2)}}function H2(e,t){const n=new Map;O(e,((e,r)=>{const i=e.name||Oc(e.node),o=i&&P2(i);if(!o)return!0;const s=n.get(o);if(!s)return n.set(o,e),!0;if(s instanceof Array){for(const n of s)if(Q2(n,e,r,t))return!1;return s.push(e),!0}{const i=s;return!Q2(i,e,r,t)&&(n.set(o,[i,e]),!0)}}))}var G2={5:!0,3:!0,7:!0,9:!0,0:!1,1:!1,2:!1,8:!1,6:!0,4:!1};function Q2(e,t,n,r){return!!function(e,t,n,r){function i(e){return lA(e)||tI(e)||$A(e)}const o=gA(t.node)||iA(t.node)?dh(t.node):0,s=gA(e.node)||iA(e.node)?dh(e.node):0;if(G2[o]&&G2[s]||i(e.node)&&G2[o]||i(t.node)&&G2[s]||nI(e.node)&&Y2(e.node)&&G2[o]||nI(t.node)&&G2[s]||nI(e.node)&&Y2(e.node)&&i(t.node)||nI(t.node)&&i(e.node)&&Y2(e.node)){let o=e.additionalNodes&&Ne(e.additionalNodes)||e.node;if(!nI(e.node)&&!nI(t.node)||i(e.node)||i(t.node)){const n=i(e.node)?e.node:i(t.node)?t.node:void 0;if(void 0!==n){const r=L2(vM(oE.createConstructorDeclaration(void 0,[],void 0),n));r.indent=e.indent+1,r.children=e.node===n?e.children:t.children,e.children=e.node===n?te([r],t.children||[t]):te(e.children||[{...e}],[r])}else(e.children||t.children)&&(e.children=te(e.children||[{...e}],t.children||[t]),e.children&&(H2(e.children,e),$2(e.children)));o=e.node=vM(oE.createClassDeclaration(void 0,e.name||oE.createIdentifier("__class__"),void 0,void 0,[]),e.node)}else e.children=te(e.children,t.children),e.children&&H2(e.children,e);const s=t.node;return r.children[n-1].node.end===o.end?vM(o,{pos:o.pos,end:s.end}):(e.additionalNodes||(e.additionalNodes=[]),e.additionalNodes.push(vM(oE.createClassDeclaration(void 0,e.name||oE.createIdentifier("__class__"),void 0,void 0,[]),t.node))),!0}return 0!==o}(e,t,n,r)||!!function(e,t,n){if(e.kind!==t.kind||e.parent!==t.parent&&(!Z2(e,n)||!Z2(t,n)))return!1;switch(e.kind){case 172:case 174:case 177:case 178:return Jv(e)===Jv(t);case 267:return X2(e,t)&&a3(e)===a3(t);default:return!0}}(e.node,t.node,r)&&(function(e,t){e.additionalNodes=e.additionalNodes||[],e.additionalNodes.push(t.node),t.additionalNodes&&e.additionalNodes.push(...t.additionalNodes);e.children=te(e.children,t.children),e.children&&(H2(e.children,e),$2(e.children))}(e,t),!0)}function Y2(e){return!!(16&e.flags)}function Z2(e,t){const n=aI(e.parent)?e.parent.parent:e.parent;return n===t.node||A(t.additionalNodes,n)}function X2(e,t){return e.body&&t.body?e.body.kind===t.body.kind&&(267!==e.body.kind||X2(e.body,t.body)):e.body===t.body}function $2(e){e.sort(e3)}function e3(e,t){return Kt(t3(e.node),t3(t.node))||Pt(M2(e),M2(t))}function t3(e){if(267===e.kind)return s3(e);const t=Oc(e);if(t&&du(t)){const e=Zg(t);return e&&wc(e)}switch(e.kind){case 218:case 219:case 231:return _3(e);default:return}}function n3(e,t){if(267===e.kind)return f3(s3(e));if(t){const e=YC(t)?t.text:rA(t)?`[${P2(t.argumentExpression)}]`:P2(t);if(e.length>0)return f3(e)}switch(e.kind){case 307:const t=e;return tO(t)?`"${Ry(Ko(ow(ts(t.fileName))))}"`:"<global>";case 277:return SI(e)&&e.isExportEquals?"export=":"default";case 219:case 262:case 218:case 263:case 231:return 2048&ib(e)?"default":_3(e);case 176:return"constructor";case 180:return"new()";case 179:return"()";case 181:return"[]";default:return"<unknown>"}}function r3(e){return{text:n3(e.node,e.name),kind:gY(e.node),kindModifiers:d3(e.node),spans:o3(e),nameSpan:e.name&&u3(e.name),childItems:R(e.children,r3)}}function i3(e){return{text:n3(e.node,e.name),kind:gY(e.node),kindModifiers:d3(e.node),spans:o3(e),childItems:R(e.children,(function(e){return{text:n3(e.node,e.name),kind:gY(e.node),kindModifiers:yZ(e.node),spans:o3(e),childItems:N2,indent:0,bolded:!1,grayed:!1}}))||N2,indent:e.indent,bolded:!1,grayed:!1}}function o3(e){const t=[u3(e.node)];if(e.additionalNodes)for(const n of e.additionalNodes)t.push(u3(n));return t}function s3(e){return _p(e)?ep(e.name):a3(e)}function a3(e){const t=[$g(e.name)];for(;e.body&&267===e.body.kind;)e=e.body,t.push($g(e.name));return t.join(".")}function c3(e){return e.body&&sI(e.body)?c3(e.body):e}function l3(e){return!e.name||167===e.name.kind}function u3(e){return 307===e.kind?FZ(e):PZ(e,x2)}function d3(e){return e.parent&&260===e.parent.kind&&(e=e.parent),yZ(e)}function _3(e){const{parent:t}=e;if(e.name&&y_(e.name)>0)return f3(Lp(e.name));if($A(t))return f3(Lp(t.name));if(gA(t)&&64===t.operatorToken.kind)return P2(t.left).replace(w2,"");if(WI(t))return P2(t.name);if(2048&ib(e))return"default";if(xu(e))return"<class>";if(iA(t)){let e=p3(t.expression);if(void 0!==e){if(e=f3(e),e.length>k2)return`${e} callback`;return`${e}(${f3(J(t.arguments,(e=>Hd(e)||Gu(e)?e.getText(x2):void 0)).join(", "))}) callback`}}return"<function>"}function p3(e){if(YC(e))return e.text;if(nA(e)){const t=p3(e.expression),n=e.name.text;return void 0===t?n:`${t}.${n}`}}function f3(e){return(e=e.length>k2?e.substring(0,k2)+"...":e).replace(/\\?(\r?\n|\r|\u2028|\u2029)/g,"")}var m3={};a(m3,{addExportToChanges:()=>f6,addExportsInOldFile:()=>Y3,addImportsForMovedSymbols:()=>i6,addNewFileToTsconfig:()=>H3,addOrRemoveBracesToArrowFunction:()=>K6,addTargetFileImports:()=>M6,containsJsx:()=>g6,convertArrowFunctionOrFunctionExpression:()=>t4,convertParamsToDestructuredObject:()=>d4,convertStringOrTemplateLiteral:()=>P4,convertToOptionalChainExpression:()=>H4,createNewFileName:()=>m6,deleteMovedStatements:()=>G3,deleteUnusedImports:()=>s6,deleteUnusedOldImports:()=>Q3,doChangeNamedToNamespaceOrDefault:()=>D3,extractSymbol:()=>o5,filterImport:()=>d6,forEachImportInStatement:()=>n6,generateGetAccessorAndSetAccessor:()=>w5,getApplicableRefactors:()=>y3,getEditsForRefactor:()=>v3,getExistingLocals:()=>A6,getIdentifierForNode:()=>P6,getNewStatementsAndRemoveFromOldFile:()=>W3,getStatementsToMove:()=>h6,getTopLevelDeclarationStatement:()=>p6,getUsageInfo:()=>v6,inferFunctionReturnType:()=>N5,isRefactorErrorInfo:()=>I6,isTopLevelDeclaration:()=>k6,moduleSpecifierFromImport:()=>t6,nameOfTopLevelDeclaration:()=>_6,refactorKindBeginsWith:()=>D6,registerRefactor:()=>g3,updateImportsInOtherFiles:()=>Z3});var h3=new Map;function g3(e,t){h3.set(e,t)}function y3(e,t){return Ke(q(h3.values(),(n=>{var r;return e.cancellationToken&&e.cancellationToken.isCancellationRequested()||!(null==(r=n.kinds)?void 0:r.some((t=>D6(t,e.kind))))?void 0:n.getAvailableActions(e,t)})))}function v3(e,t,n,r){const i=h3.get(t);return i&&i.getEditsForAction(e,n,r)}var b3="Convert export",x3={name:"Convert default export to named export",description:cS(ws.Convert_default_export_to_named_export),kind:"refactor.rewrite.export.named"},S3={name:"Convert named export to default export",description:cS(ws.Convert_named_export_to_default_export),kind:"refactor.rewrite.export.default"};function T3(e,t=!0){const{file:n,program:r}=e,i=$$(e),o=QY(n,i.start),s=o.parent&&32&ib(o.parent)&&t?o.parent:dX(o,n,i);if(!(s&&(YI(s.parent)||aI(s.parent)&&_p(s.parent.parent))))return{error:cS(ws.Could_not_find_export_statement)};const a=r.getTypeChecker(),c=function(e,t){if(YI(e))return e.symbol;const n=e.parent.symbol;if(n.valueDeclaration&&vp(n.valueDeclaration))return t.getMergedSymbol(n);return n}(s.parent,a),l=ib(s)||(SI(s)&&!s.isExportEquals?2080:0),u=!!(2048&l);if(!(32&l)||!u&&c.exports.has("default"))return{error:cS(ws.This_file_already_has_a_default_export)};const d=e=>YC(e)&&a.getSymbolAtLocation(e)?void 0:{error:cS(ws.Can_only_convert_named_export)};switch(s.kind){case 262:case 263:case 264:case 266:case 265:case 267:{const e=s;if(!e.name)return;return d(e.name)||{exportNode:e,exportName:e.name,wasDefault:u,exportingModuleSymbol:c}}case 243:{const e=s;if(!(2&e.declarationList.flags)||1!==e.declarationList.declarations.length)return;const t=Ee(e.declarationList.declarations);if(!t.initializer)return;return Tn.assert(!u,"Can't have a default flag here"),d(t.name)||{exportNode:e,exportName:t.name,wasDefault:u,exportingModuleSymbol:c}}case 277:{const e=s;if(e.isExportEquals)return;return d(e.expression)||{exportNode:e,exportName:e.expression,wasDefault:u,exportingModuleSymbol:c}}default:return}}function w3(e,t){return oE.createImportSpecifier(!1,e===t?void 0:oE.createIdentifier(e),oE.createIdentifier(t))}function k3(e,t){return oE.createExportSpecifier(!1,e===t?void 0:oE.createIdentifier(e),oE.createIdentifier(t))}g3(b3,{kinds:[x3.kind,S3.kind],getAvailableActions:function(e){const t=T3(e,"invoked"===e.triggerReason);if(!t)return _;if(!I6(t)){const e=t.wasDefault?x3:S3;return[{name:b3,description:e.description,actions:[e]}]}return e.preferences.provideRefactorNotApplicableReason?[{name:b3,description:cS(ws.Convert_default_export_to_named_export),actions:[{...x3,notApplicableReason:t.error},{...S3,notApplicableReason:t.error}]}]:_},getEditsForAction:function(e,t){Tn.assert(t===x3.name||t===S3.name,"Unexpected action name");const n=T3(e);Tn.assert(n&&!I6(n),"Expected applicable refactor info");const r=Xde.ChangeTracker.with(e,(t=>function(e,t,n,r,i){(function(e,{wasDefault:t,exportNode:n,exportName:r},i,o){if(t)if(SI(n)&&!n.isExportEquals){const t=n.expression,r=k3(t.text,t.text);i.replaceNode(e,n,oE.createExportDeclaration(void 0,!1,oE.createNamedExports([r])))}else i.delete(e,Tn.checkDefined(pX(n,90),"Should find a default keyword in modifier list"));else{const t=Tn.checkDefined(pX(n,95),"Should find an export keyword in modifier list");switch(n.kind){case 262:case 263:case 264:i.insertNodeAfter(e,t,oE.createToken(90));break;case 243:const s=Ee(n.declarationList.declarations);if(!Ice.Core.isSymbolReferencedInFile(r,o,e)&&!s.type){i.replaceNode(e,n,oE.createExportDefault(Tn.checkDefined(s.initializer,"Initializer was previously known to be present")));break}case 266:case 265:case 267:i.deleteModifier(e,t),i.insertNodeAfter(e,n,oE.createExportDefault(oE.createIdentifier(r.text)));break;default:Tn.fail(`Unexpected exportNode kind ${n.kind}`)}}})(e,n,r,t.getTypeChecker()),function(e,{wasDefault:t,exportName:n,exportingModuleSymbol:r},i,o){const s=e.getTypeChecker(),a=Tn.checkDefined(s.getSymbolAtLocation(n),"Export name should resolve to a symbol");Ice.Core.eachExportReference(e.getSourceFiles(),s,o,a,r,n.text,t,(e=>{if(n===e)return;const r=e.getSourceFile();t?function(e,t,n,r){const{parent:i}=t;switch(i.kind){case 211:n.replaceNode(e,t,oE.createIdentifier(r));break;case 276:case 281:{const t=i;n.replaceNode(e,t,w3(r,t.name.text));break}case 273:{const o=i;Tn.assert(o.name===t,"Import clause name should match provided ref");const s=w3(r,t.text),{namedBindings:a}=o;if(a)if(274===a.kind){n.deleteRange(e,{pos:t.getStart(e),end:a.getStart(e)});const i=MC(o.parent.moduleSpecifier)?rX(o.parent.moduleSpecifier,e):1,s=eX(void 0,[w3(r,t.text)],o.parent.moduleSpecifier,i);n.insertNodeAfter(e,o.parent,s)}else n.delete(e,t),n.insertNodeAtEndOfList(e,a.elements,s);else n.replaceNode(e,t,oE.createNamedImports([s]));break}case 205:const o=i;n.replaceNode(e,i,oE.createImportTypeNode(o.argument,o.attributes,oE.createIdentifier(r),o.typeArguments,o.isTypeOf));break;default:Tn.failBadSyntaxKind(i)}}(r,e,i,n.text):function(e,t,n){const r=t.parent;switch(r.kind){case 211:n.replaceNode(e,t,oE.createIdentifier("default"));break;case 276:{const t=oE.createIdentifier(r.name.text);1===r.parent.elements.length?n.replaceNode(e,r.parent,t):(n.delete(e,r),n.insertNodeBefore(e,r.parent,t));break}case 281:n.replaceNode(e,r,k3("default",r.name.text));break;default:Tn.assertNever(r,`Unexpected parent kind ${r.kind}`)}}(r,e,i)}))}(t,n,r,i)}(e.file,e.program,n,t,e.cancellationToken)));return{edits:r,renameFilename:void 0,renameLocation:void 0}}});var E3="Convert import",C3={0:{name:"Convert namespace import to named imports",description:cS(ws.Convert_namespace_import_to_named_imports),kind:"refactor.rewrite.import.named"},2:{name:"Convert named imports to namespace import",description:cS(ws.Convert_named_imports_to_namespace_import),kind:"refactor.rewrite.import.namespace"},1:{name:"Convert named imports to default import",description:cS(ws.Convert_named_imports_to_default_import),kind:"refactor.rewrite.import.default"}};function N3(e,t=!0){const{file:n}=e,r=$$(e),i=QY(n,r.start),o=t?bc(i,pn(dI,zD)):dX(i,n,r);if(void 0===o||!dI(o)&&!zD(o))return{error:"Selection is not an import declaration."};const s=r.start+r.length,a=$Y(o,o.parent,n);if(a&&s>a.getStart())return;const{importClause:c}=o;if(!c)return{error:cS(ws.Could_not_find_import_clause)};if(!c.namedBindings)return{error:cS(ws.Could_not_find_namespace_import_or_named_imports)};if(274===c.namedBindings.kind)return{convertTo:0,import:c.namedBindings};return A3(e.program,c)?{convertTo:1,import:c.namedBindings}:{convertTo:2,import:c.namedBindings}}function A3(e,t){return zS(e.getCompilerOptions())&&function(e,t){const n=t.resolveExternalModuleName(e);if(!n)return!1;const r=t.resolveExternalModuleSymbol(n);return n!==r}(t.parent.moduleSpecifier,e.getTypeChecker())}function I3(e){return nA(e)?e.name:e.right}function D3(e,t,n,r,i=A3(t,r.parent)){const o=t.getTypeChecker(),s=r.parent.parent,{moduleSpecifier:a}=s,c=new Set;r.elements.forEach((e=>{const t=o.getSymbolAtLocation(e.name);t&&c.add(t)}));const l=a&&MC(a)?l0(a.text,99):"module";const u=r.elements.some((function(t){return!!Ice.Core.eachSymbolReferenceInFile(t.name,o,e,(e=>{const t=o.resolveName(l,e,-1,!0);return!!t&&(!c.has(t)||kI(e.parent))}))}))?f$(l,e):l,d=new Set;for(const _ of r.elements){const t=(_.propertyName||_.name).text;Ice.Core.eachSymbolReferenceInFile(_.name,o,e,(r=>{const i=oE.createPropertyAccessExpression(oE.createIdentifier(u),t);HI(r.parent)?n.replaceNode(e,r.parent,oE.createPropertyAssignment(r.text,i)):kI(r.parent)?d.add(_):n.replaceNode(e,r,i)}))}if(n.replaceNode(e,r,i?oE.createIdentifier(u):oE.createNamespaceImport(oE.createIdentifier(u))),d.size&&dI(s)){const t=Ke(d.values(),(e=>oE.createImportSpecifier(e.isTypeOnly,e.propertyName&&oE.createIdentifier(e.propertyName.text),oE.createIdentifier(e.name.text))));n.insertNodeAfter(e,r.parent.parent,P3(s,void 0,t))}}function P3(e,t,n){return oE.createImportDeclaration(void 0,M3(t,n),e.moduleSpecifier,void 0)}function M3(e,t){return oE.createImportClause(!1,e,t&&t.length?oE.createNamedImports(t):void 0)}g3(E3,{kinds:qe(C3).map((e=>e.kind)),getAvailableActions:function(e){const t=N3(e,"invoked"===e.triggerReason);if(!t)return _;if(!I6(t)){const e=C3[t.convertTo];return[{name:E3,description:e.description,actions:[e]}]}return e.preferences.provideRefactorNotApplicableReason?qe(C3).map((e=>({name:E3,description:e.description,actions:[{...e,notApplicableReason:t.error}]}))):_},getEditsForAction:function(e,t){Tn.assert($(qe(C3),(e=>e.name===t)),"Unexpected action name");const n=N3(e);Tn.assert(n&&!I6(n),"Expected applicable refactor info");const r=Xde.ChangeTracker.with(e,(t=>function(e,t,n,r){const i=t.getTypeChecker();0===r.convertTo?function(e,t,n,r,i){let o=!1;const s=[],a=new Map;Ice.Core.eachSymbolReferenceInFile(r.name,t,e,(e=>{if(Ku(e.parent)){const r=I3(e.parent).text;t.resolveName(r,e,-1,!0)&&a.set(r,!0),Tn.assert((nA(n=e.parent)?n.expression:n.left)===e,"Parent expression should match id"),s.push(e.parent)}else o=!0;var n}));const c=new Map;for(const d of s){const t=I3(d).text;let r=c.get(t);void 0===r&&c.set(t,r=a.has(t)?f$(t,e):t),n.replaceNode(e,d,oE.createIdentifier(r))}const l=[];c.forEach(((e,t)=>{l.push(oE.createImportSpecifier(!1,e===t?void 0:oE.createIdentifier(t),oE.createIdentifier(e)))}));const u=r.parent.parent;if(o&&!i&&dI(u))n.insertNodeAfter(e,u,P3(u,void 0,l));else{const t=o?oE.createIdentifier(r.name.text):void 0;n.replaceNode(e,r.parent,M3(t,l))}}(e,i,n,r.import,zS(t.getCompilerOptions())):D3(e,t,n,r.import,1===r.convertTo)}(e.file,e.program,t,n)));return{edits:r,renameFilename:void 0,renameLocation:void 0}}});var O3="Extract type",F3={name:"Extract to type alias",description:cS(ws.Extract_to_type_alias),kind:"refactor.extract.type"},R3={name:"Extract to interface",description:cS(ws.Extract_to_interface),kind:"refactor.extract.interface"},L3={name:"Extract to typedef",description:cS(ws.Extract_to_typedef),kind:"refactor.extract.typedef"};function j3(e,t=!0){const{file:n,startPosition:r}=e,i=jm(n),o=RZ($$(e)),s=o.pos===o.end&&t,a=function(e,t,n,r){const i=[()=>QY(e,t),()=>GY(e,t,(()=>!0))];for(const o of i){const t=o(),i=NY(t,e,n.pos,n.end),s=bc(t,(t=>t.parent&&Du(t)&&!U3(n,t.parent,e)&&(r||i)));if(s)return s}return}(n,r,o,s);if(!a||!Du(a))return{info:{error:cS(ws.Selection_is_not_a_valid_type_node)},affectedTextRange:void 0};const c=e.program.getTypeChecker(),l=function(e,t){return bc(e,kd)||(t?bc(e,_D):void 0)}(a,i);if(void 0===l)return{info:{error:cS(ws.No_type_could_be_extracted_from_this_type_node)},affectedTextRange:void 0};const u=function(e,t){return bc(e,(e=>e===t?"quit":!(!jN(e.parent)&&!zN(e.parent))))??e}(a,l);if(!Du(u))return{info:{error:cS(ws.Selection_is_not_a_valid_type_node)},affectedTextRange:void 0};const d=[];(jN(u.parent)||zN(u.parent))&&o.end>a.end&&me(d,u.parent.types.filter((e=>NY(e,n,o.pos,o.end))));const p=d.length>1?d:u,{typeParameters:f,affectedTextRange:m}=function(e,t,n,r){const i=[],o=ct(t),s={pos:o[0].getStart(r),end:o[o.length-1].end};for(const c of o)if(a(c))return{typeParameters:void 0,affectedTextRange:void 0};return{typeParameters:i,affectedTextRange:s};function a(t){if(NN(t)){if(YC(t.typeName)){const o=t.typeName,a=e.resolveName(o.text,o,262144,!0);for(const e of(null==a?void 0:a.declarations)||_)if(pN(e)&&e.getSourceFile()===r){if(e.name.escapedText===o.escapedText&&U3(e,s,r))return!0;if(U3(n,e,r)&&!U3(s,e,r)){he(i,e);break}}}}else if(BN(t)){const e=bc(t,(e=>UN(e)&&U3(e.extendsType,t,r)));if(!e||!U3(s,e,r))return!0}else if(CN(t)||VN(t)){const e=bc(t.parent,pu);if(e&&e.type&&U3(e.type,t,r)&&!U3(s,e,r))return!0}else if(DN(t))if(YC(t.exprName)){const i=e.resolveName(t.exprName.text,t.exprName,111551,!1);if((null==i?void 0:i.valueDeclaration)&&U3(n,i.valueDeclaration,r)&&!U3(s,i.valueDeclaration,r))return!0}else if(Tv(t.exprName.left)&&!U3(s,t.parent,r))return!0;return r&&ON(t)&&ta(r,t.pos).line===ta(r,t.end).line&&dE(t,1),GM(t,a)}}(c,p,l,n);if(!f)return{info:{error:cS(ws.No_type_could_be_extracted_from_this_type_node)},affectedTextRange:void 0};return{info:{isJS:i,selection:p,enclosingNode:l,typeParameters:f,typeElements:z3(c,p)},affectedTextRange:m}}function z3(e,t){if(t){if(at(t)){const n=[];for(const r of t){const t=z3(e,r);if(!t)return;me(n,t)}return n}if(zN(t)){const n=[],r=new Map;for(const i of t.types){const t=z3(e,i);if(!t||!t.every((e=>e.name&&jx(r,HZ(e.name)))))return;me(n,t)}return n}return qN(t)?z3(e,t.type):PN(t)?t.members:void 0}}function U3(e,t,n){return EY(e,da(n.text,t.pos),t.end)}function B3(e){return at(e.selection)?{firstTypeNode:e.selection[0],lastTypeNode:e.selection[e.selection.length-1],newTypeNode:jN(e.selection[0].parent)?oE.createUnionTypeNode(e.selection):oE.createIntersectionTypeNode(e.selection)}:{firstTypeNode:e.selection,lastTypeNode:e.selection,newTypeNode:e.selection}}g3(O3,{kinds:[F3.kind,R3.kind,L3.kind],getAvailableActions:function(e){const{info:t,affectedTextRange:n}=j3(e,"invoked"===e.triggerReason);if(!t)return _;if(!I6(t)){return[{name:O3,description:cS(ws.Extract_type),actions:t.isJS?[L3]:_e([F3],t.typeElements&&R3)}].map((t=>({...t,actions:t.actions.map((t=>({...t,range:n?{start:{line:ta(e.file,n.pos).line,offset:ta(e.file,n.pos).character},end:{line:ta(e.file,n.end).line,offset:ta(e.file,n.end).character}}:void 0})))})))}return e.preferences.provideRefactorNotApplicableReason?[{name:O3,description:cS(ws.Extract_type),actions:[{...L3,notApplicableReason:t.error},{...F3,notApplicableReason:t.error},{...R3,notApplicableReason:t.error}]}]:_},getEditsForAction:function(e,t){const{file:n}=e,{info:r}=j3(e);Tn.assert(r&&!I6(r),"Expected to find a range to extract");const i=f$("NewType",n),o=Xde.ChangeTracker.with(e,(o=>{switch(t){case F3.name:return Tn.assert(!r.isJS,"Invalid actionName/JS combo"),function(e,t,n,r){const{enclosingNode:i,typeParameters:o}=r,{firstTypeNode:s,lastTypeNode:a,newTypeNode:c}=B3(r),l=oE.createTypeAliasDeclaration(void 0,n,o.map((e=>oE.updateTypeParameterDeclaration(e,e.modifiers,e.name,e.constraint,void 0))),c);e.insertNodeBefore(t,i,zE(l),!0),e.replaceNodeRange(t,s,a,oE.createTypeReferenceNode(n,o.map((e=>oE.createTypeReferenceNode(e.name,void 0)))),{leadingTriviaOption:Xde.LeadingTriviaOption.Exclude,trailingTriviaOption:Xde.TrailingTriviaOption.ExcludeWhitespace})}(o,n,i,r);case L3.name:return Tn.assert(r.isJS,"Invalid actionName/JS combo"),function(e,t,n,r,i){var o;ct(i.selection).forEach((e=>{dE(e,7168)}));const{enclosingNode:s,typeParameters:a}=i,{firstTypeNode:c,lastTypeNode:l,newTypeNode:u}=B3(i),d=oE.createJSDocTypedefTag(oE.createIdentifier("typedef"),oE.createJSDocTypeExpression(u),oE.createIdentifier(r)),_=[];h(a,(e=>{const t=xl(e),n=oE.createTypeParameterDeclaration(void 0,e.name),r=oE.createJSDocTemplateTag(oE.createIdentifier("template"),t&&_t(t,XI),[n]);_.push(r)}));const p=oE.createJSDocComment(void 0,oE.createNodeArray(te(_,[d])));if(_D(s)){const r=s.getStart(n),i=VX(t.host,null==(o=t.formatContext)?void 0:o.options);e.insertNodeAt(n,s.getStart(n),p,{suffix:i+i+n.text.slice(n$(n.text,r-1),r)})}else e.insertNodeBefore(n,s,p,!0);e.replaceNodeRange(n,c,l,oE.createTypeReferenceNode(r,a.map((e=>oE.createTypeReferenceNode(e.name,void 0)))))}(o,e,n,i,r);case R3.name:return Tn.assert(!r.isJS&&!!r.typeElements,"Invalid actionName/JS combo"),function(e,t,n,r){var i;const{enclosingNode:o,typeParameters:s,typeElements:a}=r,c=oE.createInterfaceDeclaration(void 0,n,s,void 0,a);vM(c,null==(i=a[0])?void 0:i.parent),e.insertNodeBefore(t,o,zE(c),!0);const{firstTypeNode:l,lastTypeNode:u}=B3(r);e.replaceNodeRange(t,l,u,oE.createTypeReferenceNode(n,s.map((e=>oE.createTypeReferenceNode(e.name,void 0)))),{leadingTriviaOption:Xde.LeadingTriviaOption.Exclude,trailingTriviaOption:Xde.TrailingTriviaOption.ExcludeWhitespace})}(o,n,i,r);default:Tn.fail("Unexpected action name")}})),s=n.fileName;return{edits:o,renameFilename:s,renameLocation:m$(o,s,i,!1)}}});var q3="Move to file",V3=cS(ws.Move_to_file),K3={name:"Move to file",description:V3,kind:"refactor.move.file"};function J3(e){return{edits:[],renameFilename:void 0,renameLocation:void 0,notApplicableReason:e}}function W3(e,t,n,r,i,o,s,a,c,l){const u=o.getTypeChecker(),d=bn(e.statements,yf),_=!S0(t.fileName,o,s,!!e.commonJsModuleIndicator),p=iX(e,a);i6(n.oldFileImportsFromTargetFile,t.fileName,l,o),Q3(e,i.all,n.unusedImportsFromOldFile,l),l.writeFixes(r,p),G3(e,i.ranges,r),Z3(r,o,s,e,n.movedSymbols,t.fileName,p),Y3(e,n.targetFileImportsFromOldFile,r,_),M6(e,n.oldImportsNeededByTargetFile,n.targetFileImportsFromOldFile,u,o,c),!Lm(t)&&d.length&&r.insertStatementsInNewFile(t.fileName,d,e),c.writeFixes(r,p);const f=function(e,t,n,r){return U(t,(t=>{if(a6(t)&&!o6(e,t,r)&&S6(t,(e=>{var t;return n.includes(Tn.checkDefined(null==(t=dt(e,yd))?void 0:t.symbol))}))){const e=function(e,t){return t?[c6(e)]:function(e){return[e,...u6(e).map(l6)]}(e)}(r$(t),r);if(e)return e}return r$(t)}))}(e,i.all,Ke(n.oldFileImportsFromTargetFile.keys()),_);Lm(t)&&t.statements.length>0?function(e,t,n,r,i){var o;const s=new Set,a=null==(o=r.symbol)?void 0:o.exports;if(a){const n=t.getTypeChecker(),o=new Map;for(const e of i.all)a6(e)&&Kv(e,32)&&S6(e,(e=>{var t;const n=y(yd(e)?null==(t=a.get(e.symbol.escapedName))?void 0:t.declarations:void 0,(e=>TI(e)?e:kI(e)?dt(e.parent.parent,TI):void 0));n&&n.moduleSpecifier&&o.set(n,(o.get(n)||new Set).add(e))}));for(const[t,i]of Ke(o))if(t.exportClause&&wI(t.exportClause)&&m(t.exportClause.elements)){const o=t.exportClause.elements,a=M(o,(e=>void 0===w(Sx(e.symbol,n).declarations,(e=>k6(e)&&i.has(e)))));if(0===m(a)){e.deleteNode(r,t),s.add(t);continue}m(a)<m(o)&&e.replaceNode(r,t,oE.updateExportDeclaration(t,t.modifiers,t.isTypeOnly,oE.updateNamedExports(t.exportClause,oE.createNodeArray(a,o.hasTrailingComma)),t.moduleSpecifier,t.attributes))}}const c=k(r.statements,(e=>TI(e)&&!!e.moduleSpecifier&&!s.has(e)));c?e.insertNodesBefore(r,c,n,!0):e.insertNodesAfter(r,r.statements[r.statements.length-1],n)}(r,o,f,t,i):Lm(t)?r.insertNodesAtEndOfFile(t,f,!1):r.insertStatementsInNewFile(t.fileName,c.hasFixes()?[4,...f]:f,e)}function H3(e,t,n,r,i){const o=e.getCompilerOptions().configFile;if(!o)return;const s=ts(Zo(n,"..",r)),a=vs(o.fileName,s,i),c=o.statements[0]&&dt(o.statements[0].expression,tA),l=c&&w(c.properties,(e=>WI(e)&&MC(e.name)&&"files"===e.name.text));l&&eA(l.initializer)&&t.insertNodeInListAfter(o,Ae(l.initializer.elements),oE.createStringLiteral(a),l.initializer.elements)}function G3(e,t,n){for(const{first:r,afterLast:i}of t)n.deleteNodeRangeExcludingEnd(e,r,i)}function Q3(e,t,n,r){for(const i of e.statements)A(t,i)||n6(i,(e=>{r6(e,(e=>{n.has(e.symbol)&&r.removeExistingImport(e)}))}))}function Y3(e,t,n,r){const i=VZ();t.forEach(((t,o)=>{if(o.declarations)for(const s of o.declarations){if(!k6(s))continue;const t=_6(s);if(!t)continue;const o=p6(s);i(o)&&f6(e,o,t,n,r)}}))}function Z3(e,t,n,r,i,o,s){const a=t.getTypeChecker();for(const c of t.getSourceFiles())if(c!==r)for(const l of c.statements)n6(l,(u=>{if(a.getSymbolAtLocation(t6(u))!==r.symbol)return;const d=e=>{const t=$N(e.parent)?uX(a,e.parent):Sx(a.getSymbolAtLocation(e),a);return!!t&&i.has(t)};s6(c,u,e,d);const _=Xo(Vo(es(r.fileName,t.getCurrentDirectory())),o);if(0===jt(!t.useCaseSensitiveFileNames())(_,c.fileName))return;const p=oz(t.getCompilerOptions(),c,c.fileName,_,ZZ(t,n)),f=d6(u,tX(p,s),d);f&&e.insertNodeAfter(c,l,f);const m=X3(u);m&&$3(e,c,a,i,p,m,u,s)}))}function X3(e){switch(e.kind){case 272:return e.importClause&&e.importClause.namedBindings&&274===e.importClause.namedBindings.kind?e.importClause.namedBindings.name:void 0;case 271:return e.name;case 260:return dt(e.name,YC);default:return Tn.assertNever(e,`Unexpected node kind ${e.kind}`)}}function $3(e,t,n,r,i,o,s,a){const c=l0(i,99);let l=!1;const u=[];if(Ice.Core.eachSymbolReferenceInFile(o,n,t,(e=>{nA(e.parent)&&(l=l||!!n.resolveName(c,e,-1,!0),r.has(n.getSymbolAtLocation(e.parent.name))&&u.push(e))})),u.length){const n=l?f$(c,t):c;for(const r of u)e.replaceNode(t,r,oE.createIdentifier(n));e.insertNodeAfter(t,s,function(e,t,n,r){const i=oE.createIdentifier(t),o=tX(n,r);switch(e.kind){case 272:return oE.createImportDeclaration(void 0,oE.createImportClause(!1,void 0,oE.createNamespaceImport(i)),o,void 0);case 271:return oE.createImportEqualsDeclaration(void 0,!1,i,oE.createExternalModuleReference(o));case 260:return oE.createVariableDeclaration(i,void 0,void 0,e6(o));default:return Tn.assertNever(e,`Unexpected node kind ${e.kind}`)}}(s,c,i,a))}}function e6(e){return oE.createCallExpression(oE.createIdentifier("require"),void 0,[e])}function t6(e){return 272===e.kind?e.moduleSpecifier:271===e.kind?e.moduleReference.expression:e.initializer.arguments[0]}function n6(e,t){if(dI(e))MC(e.moduleSpecifier)&&t(e);else if(uI(e))AI(e.moduleReference)&&Hd(e.moduleReference.expression)&&t(e);else if(FA(e))for(const n of e.declarationList.declarations)n.initializer&&Jm(n.initializer,!0)&&t(n)}function r6(e,t){var n,r,i,o,s;if(272===e.kind){if((null==(n=e.importClause)?void 0:n.name)&&t(e.importClause),274===(null==(i=null==(r=e.importClause)?void 0:r.namedBindings)?void 0:i.kind)&&t(e.importClause.namedBindings),275===(null==(s=null==(o=e.importClause)?void 0:o.namedBindings)?void 0:s.kind))for(const a of e.importClause.namedBindings.elements)t(a)}else if(271===e.kind)t(e);else if(260===e.kind)if(80===e.name.kind)t(e);else if(206===e.name.kind)for(const a of e.name.elements)YC(a.name)&&t(a)}function i6(e,t,n,r){for(const[i,o]of e){const e=i0(i,MS(r.getCompilerOptions())),s="default"===i.name&&i.parent?1:0;n.addImportForNonExistentExport(e,t,s,i.flags,o)}}function o6(e,t,n,r){var i;return n?!LA(t)&&Kv(t,32)||!!(r&&e.symbol&&(null==(i=e.symbol.exports)?void 0:i.has(r.escapedText))):!!e.symbol&&!!e.symbol.exports&&u6(t).some((t=>e.symbol.exports.has(Tc(t))))}function s6(e,t,n,r){if(272===t.kind&&t.importClause){const{name:i,namedBindings:o}=t.importClause;if((!i||r(i))&&(!o||275===o.kind&&0!==o.elements.length&&o.elements.every((e=>r(e.name)))))return n.delete(e,t)}r6(t,(t=>{t.name&&YC(t.name)&&r(t.name)&&n.delete(e,t)}))}function a6(e){return Tn.assert(YI(e.parent),"Node parent should be a SourceFile"),C6(e)||FA(e)}function c6(e){const t=bM(e)?te([oE.createModifier(95)],Lc(e)):void 0;switch(e.kind){case 262:return oE.updateFunctionDeclaration(e,t,e.asteriskToken,e.name,e.typeParameters,e.parameters,e.type,e.body);case 263:const n=xM(e)?Rc(e):void 0;return oE.updateClassDeclaration(e,te(n,t),e.name,e.typeParameters,e.heritageClauses,e.members);case 243:return oE.updateVariableStatement(e,t,e.declarationList);case 267:return oE.updateModuleDeclaration(e,t,e.name,e.body);case 266:return oE.updateEnumDeclaration(e,t,e.name,e.members);case 265:return oE.updateTypeAliasDeclaration(e,t,e.name,e.typeParameters,e.type);case 264:return oE.updateInterfaceDeclaration(e,t,e.name,e.typeParameters,e.heritageClauses,e.members);case 271:return oE.updateImportEqualsDeclaration(e,t,e.isTypeOnly,e.name,e.moduleReference);case 244:return Tn.fail();default:return Tn.assertNever(e,`Unexpected declaration kind ${e.kind}`)}}function l6(e){return oE.createExpressionStatement(oE.createBinaryExpression(oE.createPropertyAccessExpression(oE.createIdentifier("exports"),oE.createIdentifier(e)),64,oE.createIdentifier(e)))}function u6(e){switch(e.kind){case 262:case 263:return[e.name.text];case 243:return J(e.declarationList.declarations,(e=>YC(e.name)?e.name.text:void 0));case 267:case 266:case 265:case 264:case 271:return _;case 244:return Tn.fail("Can't export an ExpressionStatement");default:return Tn.assertNever(e,`Unexpected decl kind ${e.kind}`)}}function d6(e,t,n){switch(e.kind){case 272:{const r=e.importClause;if(!r)return;const i=r.name&&n(r.name)?r.name:void 0,o=r.namedBindings&&function(e,t){if(274===e.kind)return t(e.name)?e:void 0;{const n=e.elements.filter((e=>t(e.name)));return n.length?oE.createNamedImports(n):void 0}}(r.namedBindings,n);return i||o?oE.createImportDeclaration(void 0,oE.createImportClause(r.isTypeOnly,i,o),r$(t),void 0):void 0}case 271:return n(e.name)?e:void 0;case 260:{const r=function(e,t){switch(e.kind){case 80:return t(e)?e:void 0;case 207:return e;case 206:{const n=e.elements.filter((e=>e.propertyName||!YC(e.name)||t(e.name)));return n.length?oE.createObjectBindingPattern(n):void 0}}}(e.name,n);return r?function(e,t,n,r=2){return oE.createVariableStatement(void 0,oE.createVariableDeclarationList([oE.createVariableDeclaration(e,void 0,t,n)],r))}(r,e.type,e6(t),e.parent.flags):void 0}default:return Tn.assertNever(e,`Unexpected import kind ${e.kind}`)}}function _6(e){return LA(e)?dt(e.expression.left.name,YC):dt(e.name,YC)}function p6(e){switch(e.kind){case 260:return e.parent.parent;case 208:return p6(_t(e.parent.parent,(e=>$A(e)||$N(e))));default:return e}}function f6(e,t,n,r,i){if(!o6(e,t,i,n))if(i)LA(t)||r.insertExportModifier(e,t);else{const n=u6(t);0!==n.length&&r.insertNodesAfter(e,t,n.map(l6))}}function m6(e,t,n,r){const i=t.getTypeChecker();if(r){const t=v6(e,r.all,i),a=Vo(e.fileName),c=fw(e.fileName),l=Zo(a,function(e,t,n,r){let i=e;for(let o=1;;o++){const s=Zo(n,i+t);if(!r.fileExists(s))return i;i=`${e}.${o}`}}((o=t.oldFileImportsFromTargetFile,s=t.movedSymbols,m_(o,sX)||m_(s,sX)||"newFile"),c,a,n))+c;return l}var o,s;return""}function h6(e){const t=function(e){const{file:t}=e,n=RZ($$(e)),{statements:r}=t;let i=E(r,(e=>e.end>n.pos));if(-1===i)return;const o=N6(t,r[i]);o&&(i=o.start);let s=E(r,(e=>e.end>=n.end),i);-1!==s&&n.end<=r[s].getStart()&&s--;const a=N6(t,r[s]);return a&&(s=a.end),{toMove:r.slice(i,-1===s?r.length:s+1),afterLast:-1===s?void 0:r[s+1]}}(e);if(void 0===t)return;const n=[],r=[],{toMove:i,afterLast:o}=t;return ee(i,y6,((e,t)=>{for(let r=e;r<t;r++)n.push(i[r]);r.push({first:i[e],afterLast:o})})),0===n.length?void 0:{all:n,ranges:r}}function g6(e){return w(e,(e=>!!(2&e.transformFlags)))}function y6(e){return!function(e){switch(e.kind){case 272:return!0;case 271:return!Kv(e,32);case 243:return e.declarationList.declarations.every((e=>!!e.initializer&&Jm(e.initializer,!0)));default:return!1}}(e)&&!yf(e)}function v6(e,t,n,r=new Set){var i;const o=new Set,s=new Map,a=new Map,c=function(e){if(void 0===e)return;const t=n.getJsxNamespace(e),r=n.resolveName(t,e,1920,!0);return r&&$(r.declarations,T6)?r:void 0}(g6(t));c&&s.set(c,[!1,dt(null==(i=c.declarations)?void 0:i[0],(e=>xI(e)||_I(e)||yI(e)||uI(e)||$N(e)||$A(e)))]);for(const d of t)S6(d,(e=>{o.add(Tn.checkDefined(LA(e)?n.getSymbolAtLocation(e.expression.left):e.symbol,"Need a symbol here"))}));const l=new Set;for(const d of t)x6(d,n,((t,i)=>{var c;if(t.declarations&&!b6(n,t))if(r.has(Sx(t,n)))l.add(t);else for(const n of t.declarations)if(T6(n)){const e=s.get(t);s.set(t,[(void 0===e||e)&&i,dt(n,(e=>xI(e)||_I(e)||yI(e)||uI(e)||$N(e)||$A(e)))])}else k6(n)&&($A(c=n)?c.parent.parent.parent:c.parent)===e&&!o.has(t)&&a.set(t,i)}));for(const d of s.keys())l.add(d);const u=new Map;for(const d of e.statements)A(t,d)||(c&&2&d.transformFlags&&l.delete(c),x6(d,n,((e,t)=>{o.has(e)&&u.set(e,t),l.delete(e)})));return{movedSymbols:o,targetFileImportsFromOldFile:a,oldFileImportsFromTargetFile:u,oldImportsNeededByTargetFile:s,unusedImportsFromOldFile:l}}function b6(e,t){return!!e.resolveName(t.name,void 0,788968,!1)}function x6(e,t,n){e.forEachChild((function e(r){if(YC(r)&&!gg(r)){const e=t.getSymbolAtLocation(r);e&&n(e,Mw(r))}else r.forEachChild(e)}))}function S6(e,t){switch(e.kind){case 262:case 263:case 267:case 266:case 265:case 264:case 271:return t(e);case 243:return y(e.declarationList.declarations,(e=>E6(e.name,t)));case 244:{const{expression:n}=e;return gA(n)&&1===dh(n)?t(e):void 0}}}function T6(e){switch(e.kind){case 271:case 276:case 273:case 274:return!0;case 260:return w6(e);case 208:return $A(e.parent.parent)&&w6(e.parent.parent);default:return!1}}function w6(e){return YI(e.parent.parent.parent)&&!!e.initializer&&Jm(e.initializer,!0)}function k6(e){return C6(e)&&YI(e.parent)||$A(e)&&YI(e.parent.parent.parent)}function E6(e,t){switch(e.kind){case 80:return t(_t(e.parent,(e=>$A(e)||$N(e))));case 207:case 206:return y(e.elements,(e=>TA(e)?void 0:E6(e.name,t)));default:return Tn.assertNever(e,`Unexpected name kind ${e.kind}`)}}function C6(e){switch(e.kind){case 262:case 263:case 267:case 266:case 265:case 264:case 271:return!0;default:return!1}}function N6(e,t){if(mu(t)){const n=t.symbol.declarations;if(void 0===n||m(n)<=1||!A(n,t))return;const r=n[0],i=n[m(n)-1],o=J(n,(t=>C_(t)===e&&kd(t)?t:void 0)),s=E(e.statements,(e=>e.end>=i.end));return{toMove:o,start:E(e.statements,(e=>e.end>=r.end)),end:s}}}function A6(e,t,n){const r=new Set;for(const i of e.imports){const e=Nh(i);if(dI(e)&&e.importClause&&e.importClause.namedBindings&&bI(e.importClause.namedBindings))for(const t of e.importClause.namedBindings.elements){const e=n.getSymbolAtLocation(t.propertyName||t.name);e&&r.add(Sx(e,n))}if(Wm(e.parent)&&ZN(e.parent.name))for(const t of e.parent.name.elements){const e=n.getSymbolAtLocation(t.propertyName||t.name);e&&r.add(Sx(e,n))}}for(const i of t)x6(i,n,(t=>{const i=Sx(t,n);i.valueDeclaration&&C_(i.valueDeclaration).path===e.path&&r.add(i)}));return r}function I6(e){return void 0!==e.error}function D6(e,t){return!t||e.substr(0,t.length)===t}function P6(e,t,n,r){return!nA(e)||xu(t)||n.resolveName(e.name.text,e,111551,!1)||ZC(e.name)||Ec(e.name)?f$(xu(t)?"newProperty":"newLocal",r):e.name.text}function M6(e,t,n,r,i,o){t.forEach((([e,t],n)=>{var i;const s=Sx(n,r);r.isUnknownSymbol(s)?o.addVerbatimImport(Tn.checkDefined(t??bc(null==(i=n.declarations)?void 0:i[0],Ip))):o.addImportFromExportedSymbol(s,e,t)})),i6(n,e.fileName,o,i)}g3(q3,{kinds:[K3.kind],getAvailableActions:function(e,t){const n=e.file,r=h6(e);if(!t)return _;if("implicit"===e.triggerReason&&void 0!==e.endPosition){const t=bc(QY(n,e.startPosition),T0),r=bc(QY(n,e.endPosition),T0);if(t&&!YI(t)&&r&&!YI(r))return _}if(e.preferences.allowTextChangesInNewFiles&&r){const e={start:{line:ta(n,r.all[0].getStart(n)).line,offset:ta(n,r.all[0].getStart(n)).character},end:{line:ta(n,Ae(r.all).end).line,offset:ta(n,Ae(r.all).end).character}};return[{name:q3,description:V3,actions:[{...K3,range:e}]}]}return e.preferences.provideRefactorNotApplicableReason?[{name:q3,description:V3,actions:[{...K3,notApplicableReason:cS(ws.Selection_is_not_a_valid_statement_or_statements)}]}]:_},getEditsForAction:function(e,t,n){Tn.assert(t===q3,"Wrong refactor invoked");const r=Tn.checkDefined(h6(e)),{host:i,program:o}=e;Tn.assert(n,"No interactive refactor arguments available");const s=n.targetFile;if(YT(s)||ZT(s)){if(i.fileExists(s)&&void 0===o.getSourceFile(s))return J3(cS(ws.Cannot_move_statements_to_the_selected_file));const t=Xde.ChangeTracker.with(e,(t=>function(e,t,n,r,i,o,s,a){const c=r.getTypeChecker(),l=!s.fileExists(n),u=l?w0(n,t.externalModuleIndicator?99:t.commonJsModuleIndicator?1:void 0,r,s):Tn.checkDefined(r.getSourceFile(n)),d=G8.createImportAdder(t,e.program,e.preferences,e.host),_=G8.createImportAdder(u,e.program,e.preferences,e.host);W3(t,u,v6(t,i.all,c,l?void 0:A6(u,i.all,c)),o,i,r,s,a,_,d),l&&H3(r,o,t.fileName,n,Xy(s))}(e,e.file,n.targetFile,e.program,r,t,e.host,e.preferences)));return{edits:t,renameFilename:void 0,renameLocation:void 0}}return J3(cS(ws.Cannot_move_to_file_selected_file_is_invalid))}});var O6="Inline variable",F6=cS(ws.Inline_variable),R6={name:O6,description:F6,kind:"refactor.inline.variable"};function L6(e,t,n,r){var i,o;const s=r.getTypeChecker(),a=HY(e,t),c=a.parent;if(YC(a)){if(gx(c)&&Uf(c)&&YC(c.name)){if(1!==(null==(i=s.getMergedSymbol(c.symbol).declarations)?void 0:i.length))return{error:cS(ws.Variables_with_multiple_declarations_cannot_be_inlined)};if(j6(c))return;const t=z6(c,s,e);return t&&{references:t,declaration:c,replacement:c.initializer}}if(n){let t=s.resolveName(a.text,a,111551,!1);if(t=t&&s.getMergedSymbol(t),1!==(null==(o=null==t?void 0:t.declarations)?void 0:o.length))return{error:cS(ws.Variables_with_multiple_declarations_cannot_be_inlined)};const n=t.declarations[0];if(!gx(n)||!Uf(n)||!YC(n.name))return;if(j6(n))return;const r=z6(n,s,e);return r&&{references:r,declaration:n,replacement:n.initializer}}return{error:cS(ws.Could_not_find_variable_to_inline)}}}function j6(e){return $(_t(e.parent.parent,FA).modifiers,XC)}function z6(e,t,n){const r=[],i=Ice.Core.eachSymbolReferenceInFile(e.name,t,n,(t=>!(!Ice.isWriteAccessForReference(t)||HI(t.parent))||(!(!kI(t.parent)&&!SI(t.parent))||(!!DN(t.parent)||(!!Ja(e,t.pos)||void r.push(t))))));return 0===r.length||i?void 0:r}function U6(e,t){t=r$(t);const{parent:n}=e;return td(n)&&(vy(t)<vy(n)||x$(n))||pu(t)&&(Wu(n)||nA(n))||nA(n)&&(DC(t)||tA(t))?oE.createParenthesizedExpression(t):YC(e)&&HI(n)?oE.createPropertyAssignment(e,t):t}g3(O6,{kinds:[R6.kind],getAvailableActions(e){const{file:t,program:n,preferences:r,startPosition:i,triggerReason:o}=e,s=L6(t,i,"invoked"===o,n);return s?m3.isRefactorErrorInfo(s)?r.provideRefactorNotApplicableReason?[{name:O6,description:F6,actions:[{...R6,notApplicableReason:s.error}]}]:_:[{name:O6,description:F6,actions:[R6]}]:_},getEditsForAction(e,t){Tn.assert(t===O6,"Unexpected refactor invoked");const{file:n,program:r,startPosition:i}=e,o=L6(n,i,!0,r);if(!o||m3.isRefactorErrorInfo(o))return;const{references:s,declaration:a,replacement:c}=o;return{edits:Xde.ChangeTracker.with(e,(e=>{for(const t of s)e.replaceNode(n,t,U6(t,c));e.delete(n,a)}))}}});var B6="Move to a new file",q6=cS(ws.Move_to_a_new_file),V6={name:B6,description:q6,kind:"refactor.move.newFile"};g3(B6,{kinds:[V6.kind],getAvailableActions:function(e){const t=h6(e),n=e.file;if("implicit"===e.triggerReason&&void 0!==e.endPosition){const t=bc(QY(n,e.startPosition),T0),r=bc(QY(n,e.endPosition),T0);if(t&&!YI(t)&&r&&!YI(r))return _}if(e.preferences.allowTextChangesInNewFiles&&t){const n=e.file,r={start:{line:ta(n,t.all[0].getStart(n)).line,offset:ta(n,t.all[0].getStart(n)).character},end:{line:ta(n,Ae(t.all).end).line,offset:ta(n,Ae(t.all).end).character}};return[{name:B6,description:q6,actions:[{...V6,range:r}]}]}return e.preferences.provideRefactorNotApplicableReason?[{name:B6,description:q6,actions:[{...V6,notApplicableReason:cS(ws.Selection_is_not_a_valid_statement_or_statements)}]}]:_},getEditsForAction:function(e,t){Tn.assert(t===B6,"Wrong refactor invoked");const n=Tn.checkDefined(h6(e)),r=Xde.ChangeTracker.with(e,(t=>function(e,t,n,r,i,o,s){const a=t.getTypeChecker(),c=v6(e,n.all,a),l=m6(e,t,i,n),u=w0(l,e.externalModuleIndicator?99:e.commonJsModuleIndicator?1:void 0,t,i),d=G8.createImportAdder(e,o.program,o.preferences,o.host),_=G8.createImportAdder(u,o.program,o.preferences,o.host);W3(e,u,c,r,n,t,i,s,_,d),H3(t,r,e.fileName,l,Xy(i))}(e.file,e.program,n,t,e.host,e,e.preferences)));return{edits:r,renameFilename:void 0,renameLocation:void 0}}});var K6={},J6="Convert overload list to single signature",W6=cS(ws.Convert_overload_list_to_single_signature),H6={name:J6,description:W6,kind:"refactor.rewrite.function.overloadList"};function G6(e){switch(e.kind){case 173:case 174:case 179:case 176:case 180:case 262:return!0}return!1}function Q6(e,t,n){const r=bc(QY(e,t),G6);if(!r)return;if(mu(r)&&r.body&&TY(r.body,t))return;const i=n.getTypeChecker(),o=r.symbol;if(!o)return;const s=o.declarations;if(m(s)<=1)return;if(!T(s,(t=>C_(t)===e)))return;if(!G6(s[0]))return;const a=s[0].kind;if(!T(s,(e=>e.kind===a)))return;const c=s;if($(c,(e=>!!e.typeParameters||$(e.parameters,(e=>!!e.modifiers||!YC(e.name))))))return;const l=J(c,(e=>i.getSignatureFromDeclaration(e)));if(m(l)!==m(s))return;const u=i.getReturnTypeOfSignature(l[0]);return T(l,(e=>i.getReturnTypeOfSignature(e)===u))?c:void 0}g3(J6,{kinds:[H6.kind],getEditsForAction:function(e){const{file:t,startPosition:n,program:r}=e,i=Q6(t,n,r);if(!i)return;const o=r.getTypeChecker(),s=i[i.length-1];let a=s;switch(s.kind){case 173:a=oE.updateMethodSignature(s,s.modifiers,s.name,s.questionToken,s.typeParameters,c(i),s.type);break;case 174:a=oE.updateMethodDeclaration(s,s.modifiers,s.asteriskToken,s.name,s.questionToken,s.typeParameters,c(i),s.type,s.body);break;case 179:a=oE.updateCallSignature(s,s.typeParameters,c(i),s.type);break;case 176:a=oE.updateConstructorDeclaration(s,s.modifiers,c(i),s.body);break;case 180:a=oE.updateConstructSignature(s,s.typeParameters,c(i),s.type);break;case 262:a=oE.updateFunctionDeclaration(s,s.modifiers,s.asteriskToken,s.name,s.typeParameters,c(i),s.type,s.body);break;default:return Tn.failBadSyntaxKind(s,"Unhandled signature kind in overload list conversion refactoring")}if(a===s)return;return{renameFilename:void 0,renameLocation:void 0,edits:Xde.ChangeTracker.with(e,(e=>{e.replaceNodeRange(t,i[0],i[i.length-1],a)}))};function c(e){const t=e[e.length-1];return mu(t)&&t.body&&(e=e.slice(0,e.length-1)),oE.createNodeArray([oE.createParameterDeclaration(void 0,oE.createToken(26),"args",void 0,oE.createUnionTypeNode(R(e,l)))])}function l(e){const t=R(e.parameters,u);return dE(oE.createTupleTypeNode(t),$(t,(e=>!!m(TE(e))))?0:1)}function u(e){Tn.assert(YC(e.name));const t=vM(oE.createNamedTupleMember(e.dotDotDotToken,e.name,e.questionToken,e.type||oE.createKeywordTypeNode(133)),e),n=e.symbol&&e.symbol.getDocumentationComment(o);if(n){const e=a8(n);e.length&&wE(t,[{text:`*\n${e.split("\n").map((e=>` * ${e}`)).join("\n")}\n `,kind:3,pos:-1,end:-1,hasTrailingNewLine:!0,hasLeadingNewline:!0}])}return t}},getAvailableActions:function(e){const{file:t,startPosition:n,program:r}=e;return Q6(t,n,r)?[{name:J6,description:W6,actions:[H6]}]:_}});var Y6="Add or remove braces in an arrow function",Z6=cS(ws.Add_or_remove_braces_in_an_arrow_function),X6={name:"Add braces to arrow function",description:cS(ws.Add_braces_to_arrow_function),kind:"refactor.rewrite.arrow.braces.add"},$6={name:"Remove braces from arrow function",description:cS(ws.Remove_braces_from_arrow_function),kind:"refactor.rewrite.arrow.braces.remove"};function e4(e,t,n=!0,r){const i=QY(e,t),o=nm(i);if(!o)return{error:cS(ws.Could_not_find_a_containing_arrow_function)};if(!uA(o))return{error:cS(ws.Containing_function_is_not_an_arrow_function)};if(xY(o,i)&&(!xY(o.body,i)||n)){if(D6(X6.kind,r)&&td(o.body))return{func:o,addBraces:!0,expression:o.body};if(D6($6.kind,r)&&OA(o.body)&&1===o.body.statements.length){const e=Ee(o.body.statements);if(WA(e)){return{func:o,addBraces:!1,expression:e.expression&&tA(Wx(e.expression,!1))?oE.createParenthesizedExpression(e.expression):e.expression,returnStatement:e}}}}}g3(Y6,{kinds:[$6.kind],getEditsForAction:function(e,t){const{file:n,startPosition:r}=e,i=e4(n,r);Tn.assert(i&&!I6(i),"Expected applicable refactor info");const{expression:o,returnStatement:s,func:a}=i;let c;if(t===X6.name){const e=oE.createReturnStatement(o);c=oE.createBlock([e],!0),h$(o,e,n,3,!0)}else if(t===$6.name&&s){const e=o||oE.createVoidZero();c=x$(e)?oE.createParenthesizedExpression(e):e,y$(s,c,n,3,!1),h$(s,c,n,3,!1),g$(s,c,n,3,!1)}else Tn.fail("invalid action");return{renameFilename:void 0,renameLocation:void 0,edits:Xde.ChangeTracker.with(e,(e=>{e.replaceNode(n,a.body,c)}))}},getAvailableActions:function(e){const{file:t,startPosition:n,triggerReason:r}=e,i=e4(t,n,"invoked"===r);if(!i)return _;if(!I6(i))return[{name:Y6,description:Z6,actions:[i.addBraces?X6:$6]}];if(e.preferences.provideRefactorNotApplicableReason)return[{name:Y6,description:Z6,actions:[{...X6,notApplicableReason:i.error},{...$6,notApplicableReason:i.error}]}];return _}});var t4={},n4="Convert arrow function or function expression",r4=cS(ws.Convert_arrow_function_or_function_expression),i4={name:"Convert to anonymous function",description:cS(ws.Convert_to_anonymous_function),kind:"refactor.rewrite.function.anonymous"},o4={name:"Convert to named function",description:cS(ws.Convert_to_named_function),kind:"refactor.rewrite.function.named"},s4={name:"Convert to arrow function",description:cS(ws.Convert_to_arrow_function),kind:"refactor.rewrite.function.arrow"};function a4(e){let t=!1;return e.forEachChild((function e(n){yY(n)?t=!0:xu(n)||tI(n)||lA(n)||GM(n,e)})),t}function c4(e,t,n){const r=QY(e,t),i=n.getTypeChecker(),o=function(e,t,n){if(!function(e){return $A(e)||eI(e)&&1===e.declarations.length}(n))return;const r=($A(n)?n:Ee(n.declarations)).initializer;if(r&&(uA(r)||lA(r)&&!u4(e,t,r)))return r;return}(e,i,r.parent);if(o&&!a4(o.body)&&!i.containsArgumentsReference(o))return{selectedVariableDeclaration:!0,func:o};const s=nm(r);if(s&&(lA(s)||uA(s))&&!xY(s.body,r)&&!a4(s.body)&&!i.containsArgumentsReference(s)){if(lA(s)&&u4(e,i,s))return;return{selectedVariableDeclaration:!1,func:s}}}function l4(e){if(td(e)){const t=oE.createReturnStatement(e),n=e.getSourceFile();return vM(t,e),c$(t),y$(e,t,n,void 0,!0),oE.createBlock([t],!0)}return e}function u4(e,t,n){return!!n.name&&Ice.Core.isSymbolReferencedInFile(n.name,t,e)}g3(n4,{kinds:[i4.kind,o4.kind,s4.kind],getEditsForAction:function(e,t){const{file:n,startPosition:r,program:i}=e,o=c4(n,r,i);if(!o)return;const{func:s}=o,a=[];switch(t){case i4.name:a.push(...function(e,t){const{file:n}=e,r=l4(t.body),i=oE.createFunctionExpression(t.modifiers,t.asteriskToken,void 0,t.typeParameters,t.parameters,t.type,r);return Xde.ChangeTracker.with(e,(e=>e.replaceNode(n,t,i)))}(e,s));break;case o4.name:const t=function(e){const t=e.parent;if(!$A(t)||!Uf(t))return;const n=t.parent,r=n.parent;return eI(n)&&FA(r)&&YC(t.name)?{variableDeclaration:t,variableDeclarationList:n,statement:r,name:t.name}:void 0}(s);if(!t)return;a.push(...function(e,t,n){const{file:r}=e,i=l4(t.body),{variableDeclaration:o,variableDeclarationList:s,statement:a,name:c}=n;l$(a);const l=32&pc(o)|nb(t),u=oE.createModifiersFromModifierFlags(l),d=oE.createFunctionDeclaration(m(u)?u:void 0,t.asteriskToken,c,t.typeParameters,t.parameters,t.type,i);return 1===s.declarations.length?Xde.ChangeTracker.with(e,(e=>e.replaceNode(r,a,d))):Xde.ChangeTracker.with(e,(e=>{e.delete(r,o),e.insertNodeAfter(r,a,d)}))}(e,s,t));break;case s4.name:if(!lA(s))return;a.push(...function(e,t){const{file:n}=e,r=t.body.statements,i=r[0];let o;!function(e,t){return 1===e.statements.length&&WA(t)&&!!t.expression}(t.body,i)?o=t.body:(o=i.expression,c$(o),d$(i,o));const s=oE.createArrowFunction(t.modifiers,t.typeParameters,t.parameters,t.type,oE.createToken(39),o);return Xde.ChangeTracker.with(e,(e=>e.replaceNode(n,t,s)))}(e,s));break;default:return Tn.fail("invalid action")}return{renameFilename:void 0,renameLocation:void 0,edits:a}},getAvailableActions:function(e){const{file:t,startPosition:n,program:r,kind:i}=e,o=c4(t,n,r);if(!o)return _;const{selectedVariableDeclaration:s,func:a}=o,c=[],l=[];if(D6(o4.kind,i)){const e=s||uA(a)&&$A(a.parent)?void 0:cS(ws.Could_not_convert_to_named_function);e?l.push({...o4,notApplicableReason:e}):c.push(o4)}if(D6(i4.kind,i)){const e=!s&&uA(a)?void 0:cS(ws.Could_not_convert_to_anonymous_function);e?l.push({...i4,notApplicableReason:e}):c.push(i4)}if(D6(s4.kind,i)){const e=lA(a)?void 0:cS(ws.Could_not_convert_to_arrow_function);e?l.push({...s4,notApplicableReason:e}):c.push(s4)}return[{name:n4,description:r4,actions:0===c.length&&e.preferences.provideRefactorNotApplicableReason?l:c}]}});var d4={},_4="Convert parameters to destructured object",p4=1,f4=cS(ws.Convert_parameters_to_destructured_object),m4={name:_4,description:f4,kind:"refactor.rewrite.parameters.toDestructured"};function h4(e,t){const n=x8(e);if(n){const e=t.getContextualTypeForObjectLiteralElement(n),r=null==e?void 0:e.getSymbol();if(r&&!(6&bx(r)))return r}}function g4(e){const t=e.node;return xI(t.parent)||_I(t.parent)||uI(t.parent)||yI(t.parent)||kI(t.parent)||SI(t.parent)?t:void 0}function y4(e){if(Sd(e.node.parent))return e.node}function v4(e){if(e.node.parent){const t=e.node,n=t.parent;switch(n.kind){case 213:case 214:const e=dt(n,Hu);if(e&&e.expression===t)return e;break;case 211:const r=dt(n,nA);if(r&&r.parent&&r.name===t){const e=dt(r.parent,Hu);if(e&&e.expression===r)return e}break;case 212:const i=dt(n,rA);if(i&&i.parent&&i.argumentExpression===t){const e=dt(i.parent,Hu);if(e&&e.expression===i)return e}}}}function b4(e){if(e.node.parent){const t=e.node,n=t.parent;switch(n.kind){case 211:const e=dt(n,nA);if(e&&e.expression===t)return e;break;case 212:const r=dt(n,rA);if(r&&r.expression===t)return r}}}function x4(e){const t=e.node;if(2===VQ(t)||Tb(t.parent))return t}function S4(e,t,n){const r=GY(e,t),i=rm(r);if(!function(e){const t=bc(e,Od);if(t){const e=bc(t,(e=>!Od(e)));return!!e&&mu(e)}return!1}(r))return!(i&&function(e,t){var n;if(!function(e,t){return function(e){if(C4(e))return e.length-1;return e.length}(e)>=p4&&T(e,(e=>function(e,t){if(Yd(e)){const n=t.getTypeAtLocation(e);if(!t.isArrayType(n)&&!t.isTupleType(n))return!1}return!e.modifiers&&YC(e.name)}(e,t)))}(e.parameters,t))return!1;switch(e.kind){case 262:return k4(e)&&w4(e,t);case 174:if(tA(e.parent)){const r=h4(e.name,t);return 1===(null==(n=null==r?void 0:r.declarations)?void 0:n.length)&&w4(e,t)}return w4(e,t);case 176:return nI(e.parent)?k4(e.parent)&&w4(e,t):E4(e.parent.parent)&&w4(e,t);case 218:case 219:return E4(e.parent)}return!1}(i,n)&&xY(i,r))||i.body&&xY(i.body,r)?void 0:i}function T4(e){return yN(e)&&(rI(e.parent)||PN(e.parent))}function w4(e,t){return!!e.body&&!t.isImplementationOfOverload(e)}function k4(e){if(!e.name){return!!pX(e,90)}return!0}function E4(e){return $A(e)&&df(e)&&YC(e.name)&&!e.type}function C4(e){return e.length>0&&yY(e[0].name)}function N4(e){return C4(e)&&(e=oE.createNodeArray(e.slice(1),e.hasTrailingComma)),e}function A4(e,t){const n=N4(e.parameters),r=Yd(Ae(n)),i=R(r?t.slice(0,n.length-1):t,((e,t)=>{const r=D4(n[t]),i=(o=r,YC(s=e)&&$g(s)===o?oE.createShorthandPropertyAssignment(o):oE.createPropertyAssignment(o,s));var o,s;return c$(i.name),WI(i)&&c$(i.initializer),d$(e,i),i}));if(r&&t.length>=n.length){const e=t.slice(n.length-1),r=oE.createPropertyAssignment(D4(Ae(n)),oE.createArrayLiteralExpression(e));i.push(r)}return oE.createObjectLiteralExpression(i,!1)}function I4(e,t,n){const r=t.getTypeChecker(),i=N4(e.parameters),o=R(i,(function(e){const t=oE.createBindingElement(void 0,void 0,D4(e),Yd(e)&&d(e)?oE.createArrayLiteralExpression():e.initializer);c$(t),e.initializer&&t.initializer&&d$(e.initializer,t.initializer);return t})),s=oE.createObjectBindingPattern(o),a=function(e){const t=R(e,u);return _E(oE.createTypeLiteralNode(t),1)}(i);let c;T(i,d)&&(c=oE.createObjectLiteralExpression());const l=oE.createParameterDeclaration(void 0,void 0,s,void 0,a,c);if(C4(e.parameters)){const t=e.parameters[0],n=oE.createParameterDeclaration(void 0,void 0,t.name,void 0,t.type);return c$(n.name),d$(t.name,n.name),t.type&&(c$(n.type),d$(t.type,n.type)),oE.createNodeArray([n,l])}return oE.createNodeArray([l]);function u(e){let i=e.type;var o;i||!e.initializer&&!Yd(e)||(o=e,i=A$(r.getTypeAtLocation(o),o,t,n));const s=oE.createPropertySignature(void 0,D4(e),d(e)?oE.createToken(58):e.questionToken,i);return c$(s),d$(e.name,s.name),e.type&&s.type&&d$(e.type,s.type),s}function d(e){if(Yd(e)){const t=r.getTypeAtLocation(e);return!r.isTupleType(t)}return r.isOptionalParameter(e)}}function D4(e){return $g(e.name)}g3(_4,{kinds:[m4.kind],getEditsForAction:function(e,t){Tn.assert(t===_4,"Unexpected action name");const{file:n,startPosition:r,program:i,cancellationToken:o,host:s}=e,a=S4(n,r,i.getTypeChecker());if(!a||!o)return;const c=function(e,t,n){const r=function(e){switch(e.kind){case 262:if(e.name)return[e.name];return[Tn.checkDefined(pX(e,90),"Nameless function declaration should be a default export")];case 174:return[e.name];case 176:const t=Tn.checkDefined(FY(e,137,e.getSourceFile()),"Constructor declaration should have constructor keyword");if(231===e.parent.kind){return[e.parent.parent.name,t]}return[t];case 219:return[e.parent.name];case 218:return e.name?[e.name,e.parent.name]:[e.parent.name];default:return Tn.assertNever(e,`Unexpected function declaration kind ${e.kind}`)}}(e),i=xN(e)?function(e){switch(e.parent.kind){case 263:const t=e.parent;if(t.name)return[t.name];return[Tn.checkDefined(pX(t,90),"Nameless class declaration should be a default export")];case 231:const n=e.parent,r=e.parent.parent,i=n.name;return i?[i,r.name]:[r.name]}}(e):[],o=ie([...r,...i],Nt),s=t.getTypeChecker(),a=U(o,(e=>Ice.getReferenceEntriesForNode(-1,e,t,t.getSourceFiles(),n))),c=l(a);T(c.declarations,(e=>A(o,e)))||(c.valid=!1);return c;function l(t){const n={accessExpressions:[],typeUsages:[]},o={functionCalls:[],declarations:[],classReferences:n,valid:!0},a=R(r,u),c=R(i,u),l=xN(e),d=R(r,(e=>h4(e,s)));for(const r of t){if(r.kind===Ice.EntryKind.Span){o.valid=!1;continue}if(A(d,u(r.node))){if(T4(r.node.parent)){o.signature=r.node.parent;continue}const e=v4(r);if(e){o.functionCalls.push(e);continue}}const t=h4(r.node,s);if(t&&A(d,t)){const e=y4(r);if(e){o.declarations.push(e);continue}}if(A(a,u(r.node))||WQ(r.node)){if(g4(r))continue;const e=y4(r);if(e){o.declarations.push(e);continue}const t=v4(r);if(t){o.functionCalls.push(t);continue}}if(l&&A(c,u(r.node))){if(g4(r))continue;const t=y4(r);if(t){o.declarations.push(t);continue}const i=b4(r);if(i){n.accessExpressions.push(i);continue}if(nI(e.parent)){const e=x4(r);if(e){n.typeUsages.push(e);continue}}}o.valid=!1}return o}function u(e){const t=s.getSymbolAtLocation(e);return t&&XX(t,s)}}(a,i,o);if(c.valid){const t=Xde.ChangeTracker.with(e,(e=>function(e,t,n,r,i,o){const s=o.signature,a=R(I4(i,t,n),(e=>r$(e)));if(s){l(s,R(I4(s,t,n),(e=>r$(e))))}l(i,a);const c=ae(o.functionCalls,((e,t)=>Pt(e.pos,t.pos)));for(const u of c)if(u.arguments&&u.arguments.length){const e=r$(A4(i,u.arguments),!0);r.replaceNodeRange(C_(u),Ee(u.arguments),Ae(u.arguments),e,{leadingTriviaOption:Xde.LeadingTriviaOption.IncludeAll,trailingTriviaOption:Xde.TrailingTriviaOption.Include})}function l(t,n){r.replaceNodeRangeWithNodes(e,Ee(t.parameters),Ae(t.parameters),n,{joiner:", ",indentation:0,leadingTriviaOption:Xde.LeadingTriviaOption.IncludeAll,trailingTriviaOption:Xde.TrailingTriviaOption.Include})}}(n,i,s,e,a,c)));return{renameFilename:void 0,renameLocation:void 0,edits:t}}return{edits:[]}},getAvailableActions:function(e){const{file:t,startPosition:n}=e;if(jm(t))return _;return S4(t,n,e.program.getTypeChecker())?[{name:_4,description:f4,actions:[m4]}]:_}});var P4={},M4="Convert to template string",O4=cS(ws.Convert_to_template_string),F4={name:M4,description:O4,kind:"refactor.rewrite.string"};function R4(e,t){const n=QY(e,t),r=j4(n);return!z4(r).isValidConcatenation&&cA(r.parent)&&gA(r.parent.parent)?r.parent.parent:n}function L4(e,t){const n=j4(t),r=e.file,i=function({nodes:e,operators:t},n){const r=U4(t,n),i=B4(e,n,r),[o,s,a,c]=K4(0,e);if(o===e.length){const e=oE.createNoSubstitutionTemplateLiteral(s,a);return i(c,e),e}const l=[],u=oE.createTemplateHead(s,a);i(c,u);for(let d=o;d<e.length;d++){const t=W4(e[d]);r(d,t);const[n,o,s,a]=K4(d+1,e);d=n-1;const c=d===e.length-1;if(vA(t)){const e=R(t.templateSpans,((e,n)=>{J4(e);const r=n===t.templateSpans.length-1,i=e.literal.text+(r?o:""),a=V4(e.literal)+(r?s:"");return oE.createTemplateSpan(e.expression,c&&r?oE.createTemplateTail(i,a):oE.createTemplateMiddle(i,a))}));l.push(...e)}else{const e=c?oE.createTemplateTail(o,s):oE.createTemplateMiddle(o,s);i(a,e),l.push(oE.createTemplateSpan(t,e))}}return oE.createTemplateExpression(u,l)}(z4(n),r),o=ka(r.text,n.end);if(o){const t=o[o.length-1],s={pos:o[0].pos,end:t.end};return Xde.ChangeTracker.with(e,(e=>{e.deleteRange(r,s),e.replaceNode(r,n,i)}))}return Xde.ChangeTracker.with(e,(e=>e.replaceNode(r,n,i)))}function j4(e){return bc(e.parent,(e=>{switch(e.kind){case 211:case 212:return!1;case 228:case 226:return!(gA(e.parent)&&(t=e.parent,64!==t.operatorToken.kind&&65!==t.operatorToken.kind));default:return"quit"}var t}))||e}function z4(e){const t=e=>{if(!gA(e))return{nodes:[e],operators:[],validOperators:!0,hasString:MC(e)||RC(e)};const{nodes:n,operators:r,hasString:i,validOperators:o}=t(e.left);if(!(i||MC(e.right)||vA(e.right)))return{nodes:[e],operators:[],hasString:!1,validOperators:!0};const s=40===e.operatorToken.kind,a=o&&s;return n.push(e.right),r.push(e.operatorToken),{nodes:n,operators:r,hasString:!0,validOperators:a}},{nodes:n,operators:r,validOperators:i,hasString:o}=t(e);return{nodes:n,operators:r,isValidConcatenation:i&&o}}g3(M4,{kinds:[F4.kind],getEditsForAction:function(e,t){const{file:n,startPosition:r}=e,i=R4(n,r);if(t===O4)return{edits:L4(e,i)};return Tn.fail("invalid action")},getAvailableActions:function(e){const{file:t,startPosition:n}=e,r=j4(R4(t,n)),i=MC(r),o={name:M4,description:O4,actions:[]};if(i&&"invoked"!==e.triggerReason)return _;if(Am(r)&&(i||gA(r)&&z4(r).isValidConcatenation))return o.actions.push(F4),[o];if(e.preferences.provideRefactorNotApplicableReason)return o.actions.push({...F4,notApplicableReason:cS(ws.Can_only_convert_string_concatenations_and_string_literals)}),[o];return _}});var U4=(e,t)=>(n,r)=>{n<e.length&&g$(e[n],r,t,3,!1)},B4=(e,t,n)=>(r,i)=>{for(;r.length>0;){const o=r.shift();g$(e[o],i,t,3,!1),n(o,i)}};function q4(e){return e.replace(/\\.|[$`]/g,(e=>"\\"===e[0]?e:"\\"+e))}function V4(e){const t=LC(e)||jC(e)?-2:-1;return ep(e).slice(1,t)}function K4(e,t){const n=[];let r="",i="";for(;e<t.length;){const o=t[e];if(!Hd(o)){if(vA(o)){r+=o.head.text,i+=V4(o.head);break}break}r+=o.text,i+=q4(ep(o).slice(1,-1)),n.push(e),e++}return[e,r,i,n]}function J4(e){const t=e.getSourceFile();g$(e,e.expression,t,3,!1),y$(e.expression,e.expression,t,3,!1)}function W4(e){return cA(e)&&(J4(e),e=e.expression),e}var H4={},G4="Convert to optional chain expression",Q4=cS(ws.Convert_to_optional_chain_expression),Y4={name:G4,description:Q4,kind:"refactor.rewrite.expression.optionalChain"};function Z4(e){return gA(e)||yA(e)}function X4(e){return Z4(e)||function(e){return LA(e)||WA(e)||FA(e)}(e)}function $4(e,t=!0){const{file:n,program:r}=e,i=$$(e),o=0===i.length;if(o&&!t)return;const s=QY(n,i.start),a=XY(n,i.start+i.length),c=tc(s.pos,a&&a.end>=s.pos?a.getEnd():s.getEnd()),l=o?function(e){for(;e.parent;){if(X4(e)&&!X4(e.parent))return e;e=e.parent}return}(s):function(e,t){for(;e.parent;){if(X4(e)&&0!==t.length&&e.end>=t.start+t.length)return e;e=e.parent}return}(s,c),u=l&&X4(l)?function(e){if(Z4(e))return e;if(FA(e)){const t=Uh(e),n=null==t?void 0:t.initializer;return n&&Z4(n)?n:void 0}return e.expression&&Z4(e.expression)?e.expression:void 0}(l):void 0;if(!u)return{error:cS(ws.Could_not_find_convertible_access_expression)};const d=r.getTypeChecker();return yA(u)?function(e,t){const n=e.condition,r=r5(e.whenTrue);if(!r||t.isNullableType(t.getTypeAtLocation(r)))return{error:cS(ws.Could_not_find_convertible_access_expression)};if((nA(n)||YC(n))&&t5(n,r.expression))return{finalExpression:r,occurrences:[n],expression:e};if(gA(n)){const t=e5(r.expression,n);return t?{finalExpression:r,occurrences:t,expression:e}:{error:cS(ws.Could_not_find_matching_access_expressions)}}}(u,d):function(e){if(56!==e.operatorToken.kind)return{error:cS(ws.Can_only_convert_logical_AND_access_chains)};const t=r5(e.right);if(!t)return{error:cS(ws.Could_not_find_convertible_access_expression)};const n=e5(t.expression,e.left);return n?{finalExpression:t,occurrences:n,expression:e}:{error:cS(ws.Could_not_find_matching_access_expressions)}}(u)}function e5(e,t){const n=[];for(;gA(t)&&56===t.operatorToken.kind;){const r=t5(fg(e),fg(t.right));if(!r)break;n.push(r),e=r,t=t.left}const r=t5(e,t);return r&&n.push(r),n.length>0?n:void 0}function t5(e,t){if(YC(t)||nA(t)||rA(t))return function(e,t){for(;(iA(e)||nA(e)||rA(e))&&n5(e)!==n5(t);)e=e.expression;for(;nA(e)&&nA(t)||rA(e)&&rA(t);){if(n5(e)!==n5(t))return!1;e=e.expression,t=t.expression}return YC(e)&&YC(t)&&e.getText()===t.getText()}(e,t)?t:void 0}function n5(e){return YC(e)||Hg(e)?e.getText():nA(e)?n5(e.name):rA(e)?n5(e.argumentExpression):void 0}function r5(e){return gA(e=fg(e))?r5(e.left):(nA(e)||rA(e)||iA(e))&&!Cl(e)?e:void 0}function i5(e,t,n){if(nA(t)||rA(t)||iA(t)){const r=i5(e,t.expression,n),i=n.length>0?n[n.length-1]:void 0,o=(null==i?void 0:i.getText())===t.expression.getText();if(o&&n.pop(),iA(t))return o?oE.createCallChain(r,oE.createToken(29),t.typeArguments,t.arguments):oE.createCallChain(r,t.questionDotToken,t.typeArguments,t.arguments);if(nA(t))return o?oE.createPropertyAccessChain(r,oE.createToken(29),t.name):oE.createPropertyAccessChain(r,t.questionDotToken,t.name);if(rA(t))return o?oE.createElementAccessChain(r,oE.createToken(29),t.argumentExpression):oE.createElementAccessChain(r,t.questionDotToken,t.argumentExpression)}return t}g3(G4,{kinds:[Y4.kind],getEditsForAction:function(e,t){const n=$4(e);Tn.assert(n&&!I6(n),"Expected applicable refactor info");return{edits:Xde.ChangeTracker.with(e,(t=>function(e,t,n,r,i){const{finalExpression:o,occurrences:s,expression:a}=r,c=s[s.length-1],l=i5(t,o,s);l&&(nA(l)||rA(l)||iA(l))&&(gA(a)?n.replaceNodeRange(e,c,o,l):yA(a)&&n.replaceNode(e,a,oE.createBinaryExpression(l,oE.createToken(61),a.whenFalse)))}(e.file,e.program.getTypeChecker(),t,n))),renameFilename:void 0,renameLocation:void 0}},getAvailableActions:function(e){const t=$4(e,"invoked"===e.triggerReason);if(!t)return _;if(!I6(t))return[{name:G4,description:Q4,actions:[Y4]}];if(e.preferences.provideRefactorNotApplicableReason)return[{name:G4,description:Q4,actions:[{...Y4,notApplicableReason:t.error}]}];return _}});var o5={};a(o5,{Messages:()=>s5,RangeFacts:()=>_5,getRangeToExtract:()=>p5,getRefactorActionsToExtractSymbol:()=>u5,getRefactorEditsToExtractSymbol:()=>d5});var s5,a5="Extract Symbol",c5={name:"Extract Constant",description:cS(ws.Extract_constant),kind:"refactor.extract.constant"},l5={name:"Extract Function",description:cS(ws.Extract_function),kind:"refactor.extract.function"};function u5(e){const t=e.kind,n=p5(e.file,$$(e),"invoked"===e.triggerReason),r=n.targetRange;if(void 0===r){if(!n.errors||0===n.errors.length||!e.preferences.provideRefactorNotApplicableReason)return _;const r=[];return D6(l5.kind,t)&&r.push({name:a5,description:l5.description,actions:[{...l5,notApplicableReason:m(n.errors)}]}),D6(c5.kind,t)&&r.push({name:a5,description:c5.description,actions:[{...c5,notApplicableReason:m(n.errors)}]}),r}const{affectedTextRange:i,extractions:o}=function(e,t){const{scopes:n,affectedTextRange:r,readsAndWrites:{functionErrorsPerScope:i,constantErrorsPerScope:o}}=h5(e,t),s=n.map(((e,t)=>{const n=function(e){return mu(e)?"inner function":xu(e)?"method":"function"}(e),r=function(e){return xu(e)?"readonly field":"constant"}(e),s=mu(e)?function(e){switch(e.kind){case 176:return"constructor";case 218:case 262:return e.name?`function '${e.name.text}'`:N$;case 219:return"arrow function";case 174:return`method '${e.name.getText()}'`;case 177:return`'get ${e.name.getText()}'`;case 178:return`'set ${e.name.getText()}'`;default:Tn.assertNever(e,`Unexpected scope kind ${e.kind}`)}}(e):xu(e)?function(e){return 263===e.kind?e.name?`class '${e.name.text}'`:"anonymous class declaration":e.name?`class expression '${e.name.text}'`:"anonymous class expression"}(e):function(e){return 268===e.kind?`namespace '${e.parent.name.getText()}'`:e.externalModuleIndicator?0:1}(e);let a,c;return 1===s?(a=oS(cS(ws.Extract_to_0_in_1_scope),[n,"global"]),c=oS(cS(ws.Extract_to_0_in_1_scope),[r,"global"])):0===s?(a=oS(cS(ws.Extract_to_0_in_1_scope),[n,"module"]),c=oS(cS(ws.Extract_to_0_in_1_scope),[r,"module"])):(a=oS(cS(ws.Extract_to_0_in_1),[n,s]),c=oS(cS(ws.Extract_to_0_in_1),[r,s])),0!==t||xu(e)||(c=oS(cS(ws.Extract_to_0_in_enclosing_scope),[r])),{functionExtraction:{description:a,errors:i[t]},constantExtraction:{description:c,errors:o[t]}}}));return{affectedTextRange:r,extractions:s}}(r,e);if(void 0===o)return _;const s=[],a=new Map;let c;const l=[],u=new Map;let d,p=0;for(const{functionExtraction:_,constantExtraction:h}of o){if(D6(l5.kind,t)){const t=_.description;0===_.errors.length?a.has(t)||(a.set(t,!0),s.push({description:t,name:`function_scope_${p}`,kind:l5.kind,range:{start:{line:ta(e.file,i.pos).line,offset:ta(e.file,i.pos).character},end:{line:ta(e.file,i.end).line,offset:ta(e.file,i.end).character}}})):c||(c={description:t,name:`function_scope_${p}`,notApplicableReason:m(_.errors),kind:l5.kind})}if(D6(c5.kind,t)){const t=h.description;0===h.errors.length?u.has(t)||(u.set(t,!0),l.push({description:t,name:`constant_scope_${p}`,kind:c5.kind,range:{start:{line:ta(e.file,i.pos).line,offset:ta(e.file,i.pos).character},end:{line:ta(e.file,i.end).line,offset:ta(e.file,i.end).character}}})):d||(d={description:t,name:`constant_scope_${p}`,notApplicableReason:m(h.errors),kind:c5.kind})}p++}const f=[];return s.length?f.push({name:a5,description:cS(ws.Extract_function),actions:s}):e.preferences.provideRefactorNotApplicableReason&&c&&f.push({name:a5,description:cS(ws.Extract_function),actions:[c]}),l.length?f.push({name:a5,description:cS(ws.Extract_constant),actions:l}):e.preferences.provideRefactorNotApplicableReason&&d&&f.push({name:a5,description:cS(ws.Extract_constant),actions:[d]}),f.length?f:_;function m(e){let t=e[0].messageText;return"string"!=typeof t&&(t=t.messageText),t}}function d5(e,t){const n=p5(e.file,$$(e)).targetRange,r=/^function_scope_(\d+)$/.exec(t);if(r){const t=+r[1];return Tn.assert(isFinite(t),"Expected to parse a finite number from the function scope index"),function(e,t,n){const{scopes:r,readsAndWrites:{target:i,usagesPerScope:o,functionErrorsPerScope:s,exposedVariableDeclarations:a}}=h5(e,t);return Tn.assert(!s[n].length,"The extraction went missing? How?"),t.cancellationToken.throwIfCancellationRequested(),function(e,t,{usages:n,typeParameterUsages:r,substitutions:i},o,s,a){const c=a.program.getTypeChecker(),l=MS(a.program.getCompilerOptions()),u=G8.createImportAdder(a.file,a.program,a.preferences,a.host),d=t.getSourceFile(),p=f$(xu(t)?"newMethod":"newFunction",d),f=Um(t),m=oE.createIdentifier(p);let h;const g=[],y=[];let v;n.forEach(((e,n)=>{let r;if(!f){let n=c.getTypeOfSymbolAtLocation(e.symbol,e.node);n=c.getBaseTypeOfLiteralType(n),r=G8.typeToAutoImportableTypeNode(c,u,n,t,l,1)}const i=oE.createParameterDeclaration(void 0,void 0,n,void 0,r);g.push(i),2===e.usage&&(v||(v=[])).push(e),y.push(oE.createIdentifier(n))}));const b=Ke(r.values(),(e=>({type:e,declaration:g5(e,a.startPosition)}))),x=b.sort(y5),S=0===x.length?void 0:J(x,(({declaration:e})=>e)),T=void 0!==S?S.map((e=>oE.createTypeReferenceNode(e.name,void 0))):void 0;if(td(e)&&!f){const n=c.getContextualType(e);h=c.typeToTypeNode(n,t,1)}const{body:k,returnValueProperty:E}=function(e,t,n,r,i){const o=void 0!==n||t.length>0;if(OA(e)&&!o&&0===r.size)return{body:oE.createBlock(e.statements,!0),returnValueProperty:void 0};let s,a=!1;const c=oE.createNodeArray(OA(e)?e.statements.slice(0):[kd(e)?e:oE.createReturnStatement(fg(e))]);if(o||r.size){const r=oU(c,l,kd).slice();if(o&&!i&&kd(e)){const e=v5(t,n);1===e.length?r.push(oE.createReturnStatement(e[0].name)):r.push(oE.createReturnStatement(oE.createObjectLiteralExpression(e)))}return{body:oE.createBlock(r,!0),returnValueProperty:s}}return{body:oE.createBlock(c,!0),returnValueProperty:void 0};function l(e){if(!a&&WA(e)&&o){const r=v5(t,n);return e.expression&&(s||(s="__return"),r.unshift(oE.createPropertyAssignment(s,iU(e.expression,l,td)))),1===r.length?oE.createReturnStatement(r[0].name):oE.createReturnStatement(oE.createObjectLiteralExpression(r))}{const t=a;a=a||mu(e)||xu(e);const n=r.get(Gz(e).toString()),i=n?r$(n):fU(e,l,void 0);return a=t,i}}}(e,o,v,i,!!(1&s.facts));let C;c$(k);const N=!!(16&s.facts);if(xu(t)){const e=f?[]:[oE.createModifier(123)];32&s.facts&&e.push(oE.createModifier(126)),4&s.facts&&e.push(oE.createModifier(134)),C=oE.createMethodDeclaration(e.length?e:void 0,2&s.facts?oE.createToken(42):void 0,m,void 0,S,g,h,k)}else N&&g.unshift(oE.createParameterDeclaration(void 0,void 0,"this",void 0,c.typeToTypeNode(c.getTypeAtLocation(s.thisNode),t,1),void 0)),C=oE.createFunctionDeclaration(4&s.facts?[oE.createToken(134)]:void 0,2&s.facts?oE.createToken(42):void 0,m,S,g,h,k);const A=Xde.ChangeTracker.fromContext(a),I=function(e,t){return w(function(e){if(mu(e)){const t=e.body;if(OA(t))return t.statements}else{if(aI(e)||YI(e))return e.statements;if(xu(e))return e.members}return _}(t),(t=>t.pos>=e&&mu(t)&&!xN(t)))}((b5(s.range)?Ae(s.range):s.range).end,t);I?A.insertNodeBefore(a.file,I,C,!0):A.insertNodeAtEndOfScope(a.file,t,C);u.writeFixes(A);const D=[],P=function(e,t,n){const r=oE.createIdentifier(n);if(xu(e)){const n=32&t.facts?oE.createIdentifier(e.name.text):oE.createThis();return oE.createPropertyAccessExpression(n,r)}return r}(t,s,p);N&&y.unshift(oE.createIdentifier("this"));let M=oE.createCallExpression(N?oE.createPropertyAccessExpression(P,"call"):P,T,y);2&s.facts&&(M=oE.createYieldExpression(oE.createToken(42),M));4&s.facts&&(M=oE.createAwaitExpression(M));S5(e)&&(M=oE.createJsxExpression(void 0,M));if(o.length&&!v)if(Tn.assert(!E,"Expected no returnValueProperty"),Tn.assert(!(1&s.facts),"Expected RangeFacts.HasReturn flag to be unset"),1===o.length){const e=o[0];D.push(oE.createVariableStatement(void 0,oE.createVariableDeclarationList([oE.createVariableDeclaration(r$(e.name),void 0,r$(e.type),M)],e.parent.flags)))}else{const e=[],n=[];let r=o[0].parent.flags,i=!1;for(const a of o){e.push(oE.createBindingElement(void 0,void 0,r$(a.name)));const o=c.typeToTypeNode(c.getBaseTypeOfLiteralType(c.getTypeAtLocation(a)),t,1);n.push(oE.createPropertySignature(void 0,a.symbol.name,void 0,o)),i=i||void 0!==a.type,r&=a.parent.flags}const s=i?oE.createTypeLiteralNode(n):void 0;s&&dE(s,1),D.push(oE.createVariableStatement(void 0,oE.createVariableDeclarationList([oE.createVariableDeclaration(oE.createObjectBindingPattern(e),void 0,s,M)],r)))}else if(o.length||v){if(o.length)for(const t of o){let e=t.parent.flags;2&e&&(e=-3&e|1),D.push(oE.createVariableStatement(void 0,oE.createVariableDeclarationList([oE.createVariableDeclaration(t.symbol.name,void 0,L(t.type))],e)))}E&&D.push(oE.createVariableStatement(void 0,oE.createVariableDeclarationList([oE.createVariableDeclaration(E,void 0,L(h))],1)));const e=v5(o,v);E&&e.unshift(oE.createShorthandPropertyAssignment(E)),1===e.length?(Tn.assert(!E,"Shouldn't have returnValueProperty here"),D.push(oE.createExpressionStatement(oE.createAssignment(e[0].name,M))),1&s.facts&&D.push(oE.createReturnStatement())):(D.push(oE.createExpressionStatement(oE.createAssignment(oE.createObjectLiteralExpression(e),M))),E&&D.push(oE.createReturnStatement(oE.createIdentifier(E))))}else 1&s.facts?D.push(oE.createReturnStatement(M)):b5(s.range)?D.push(oE.createExpressionStatement(M)):D.push(M);b5(s.range)?A.replaceNodeRangeWithNodes(a.file,Ee(s.range),Ae(s.range),D):A.replaceNodeWithNodes(a.file,s.range,D);const O=A.getChanges(),F=(b5(s.range)?Ee(s.range):s.range).getSourceFile().fileName,R=m$(O,F,p,!1);return{renameFilename:F,renameLocation:R,edits:O};function L(e){if(void 0===e)return;const t=r$(e);let n=t;for(;qN(n);)n=n.type;return jN(n)&&w(n.types,(e=>157===e.kind))?t:oE.createUnionTypeNode([t,oE.createKeywordTypeNode(157)])}}(i,r[n],o[n],a,e,t)}(n,e,t)}const i=/^constant_scope_(\d+)$/.exec(t);if(i){const t=+i[1];return Tn.assert(isFinite(t),"Expected to parse a finite number from the constant scope index"),function(e,t,n){const{scopes:r,readsAndWrites:{target:i,usagesPerScope:o,constantErrorsPerScope:s,exposedVariableDeclarations:a}}=h5(e,t);Tn.assert(!s[n].length,"The extraction went missing? How?"),Tn.assert(0===a.length,"Extract constant accepted a range containing a variable declaration?"),t.cancellationToken.throwIfCancellationRequested();return function(e,t,{substitutions:n},r,i){const o=i.program.getTypeChecker(),s=t.getSourceFile(),a=P6(e,t,o,s),c=Um(t);let l=c||!o.isContextSensitive(e)?void 0:o.typeToTypeNode(o.getContextualType(e),t,1),u=function(e,t){return t.size?n(e):e;function n(e){const r=t.get(Gz(e).toString());return r?r$(r):fU(e,n,void 0)}}(fg(e),n);({variableType:l,initializer:u}=m(l,u)),c$(u);const d=Xde.ChangeTracker.fromContext(i);if(xu(t)){Tn.assert(!c,"Cannot extract to a JS class");const n=[];n.push(oE.createModifier(123)),32&r&&n.push(oE.createModifier(126)),n.push(oE.createModifier(148));const o=oE.createPropertyDeclaration(n,a,void 0,l,u);let s=oE.createPropertyAccessExpression(32&r?oE.createIdentifier(t.name.getText()):oE.createThis(),oE.createIdentifier(a));S5(e)&&(s=oE.createJsxExpression(void 0,s));const _=function(e,t){const n=t.members;let r;Tn.assert(n.length>0,"Found no members");let i=!0;for(const o of n){if(o.pos>e)return r||n[0];if(i&&!gN(o)){if(void 0!==r)return o;i=!1}r=o}return void 0===r?Tn.fail():r}(e.pos,t);d.insertNodeBefore(i.file,_,o,!0),d.replaceNode(i.file,e,s)}else{const n=oE.createVariableDeclaration(a,void 0,l,u),r=function(e,t){let n;for(;void 0!==e&&e!==t;){if($A(e)&&e.initializer===n&&eI(e.parent)&&e.parent.declarations.length>1)return e;n=e,e=e.parent}}(e,t);if(r){d.insertNodeBefore(i.file,r,n);const t=oE.createIdentifier(a);d.replaceNode(i.file,e,t)}else if(244===e.parent.kind&&t===bc(e,m5)){const t=oE.createVariableStatement(void 0,oE.createVariableDeclarationList([n],2));d.replaceNode(i.file,e.parent,t)}else{const r=oE.createVariableStatement(void 0,oE.createVariableDeclarationList([n],2)),o=function(e,t){let n;Tn.assert(!xu(t));for(let r=e;r!==t;r=r.parent)m5(r)&&(n=r);for(let r=(n||e).parent;;r=r.parent){if(T0(r)){let t;for(const n of r.statements){if(n.pos>e.pos)break;t=n}return!t&&qI(r)?(Tn.assert(GA(r.parent.parent),"Grandparent isn't a switch statement"),r.parent.parent):Tn.checkDefined(t,"prevStatement failed to get set")}Tn.assert(r!==t,"Didn't encounter a block-like before encountering scope")}}(e,t);if(0===o.pos?d.insertNodeAtTopOfFile(i.file,r,!1):d.insertNodeBefore(i.file,o,r,!1),244===e.parent.kind)d.delete(i.file,e.parent);else{let t=oE.createIdentifier(a);S5(e)&&(t=oE.createJsxExpression(void 0,t)),d.replaceNode(i.file,e,t)}}}const _=d.getChanges(),p=e.getSourceFile().fileName,f=m$(_,p,a,!0);return{renameFilename:p,renameLocation:f,edits:_};function m(n,r){if(void 0===n)return{variableType:n,initializer:r};if(!lA(r)&&!uA(r)||r.typeParameters)return{variableType:n,initializer:r};const i=o.getTypeAtLocation(e),s=Ie(o.getSignaturesOfType(i,0));if(!s)return{variableType:n,initializer:r};if(s.getTypeParameters())return{variableType:n,initializer:r};const a=[];let c=!1;for(const e of r.parameters)if(e.type)a.push(e);else{const n=o.getTypeAtLocation(e);n===o.getAnyType()&&(c=!0),a.push(oE.updateParameterDeclaration(e,e.modifiers,e.dotDotDotToken,e.name,e.questionToken,e.type||o.typeToTypeNode(n,t,1),e.initializer))}if(c)return{variableType:n,initializer:r};if(n=void 0,uA(r))r=oE.updateArrowFunction(r,bM(e)?Lc(e):void 0,r.typeParameters,a,r.type||o.typeToTypeNode(s.getReturnType(),t,1),r.equalsGreaterThanToken,r.body);else{if(s&&s.thisParameter){const n=we(a);if(!n||YC(n.name)&&"this"!==n.name.escapedText){const n=o.getTypeOfSymbolAtLocation(s.thisParameter,e);a.splice(0,0,oE.createParameterDeclaration(void 0,void 0,"this",void 0,o.typeToTypeNode(n,t,1)))}}r=oE.updateFunctionExpression(r,bM(e)?Lc(e):void 0,r.asteriskToken,r.name,r.typeParameters,a,r.type||o.typeToTypeNode(s.getReturnType(),t,1),r.body)}return{variableType:n,initializer:r}}}(td(i)?i:i.statements[0].expression,r[n],o[n],e.facts,t)}(n,e,t)}Tn.fail("Unrecognized action name")}g3(a5,{kinds:[c5.kind,l5.kind],getEditsForAction:d5,getAvailableActions:u5}),(e=>{function t(e){return{message:e,code:0,category:3,key:e}}e.cannotExtractRange=t("Cannot extract range."),e.cannotExtractImport=t("Cannot extract import statement."),e.cannotExtractSuper=t("Cannot extract super call."),e.cannotExtractJSDoc=t("Cannot extract JSDoc."),e.cannotExtractEmpty=t("Cannot extract empty range."),e.expressionExpected=t("expression expected."),e.uselessConstantType=t("No reason to extract constant of type."),e.statementOrExpressionExpected=t("Statement or expression expected."),e.cannotExtractRangeContainingConditionalBreakOrContinueStatements=t("Cannot extract range containing conditional break or continue statements."),e.cannotExtractRangeContainingConditionalReturnStatement=t("Cannot extract range containing conditional return statement."),e.cannotExtractRangeContainingLabeledBreakOrContinueStatementWithTargetOutsideOfTheRange=t("Cannot extract range containing labeled break or continue with target outside of the range."),e.cannotExtractRangeThatContainsWritesToReferencesLocatedOutsideOfTheTargetRangeInGenerators=t("Cannot extract range containing writes to references located outside of the target range in generators."),e.typeWillNotBeVisibleInTheNewScope=t("Type will not visible in the new scope."),e.functionWillNotBeVisibleInTheNewScope=t("Function will not visible in the new scope."),e.cannotExtractIdentifier=t("Select more than a single identifier."),e.cannotExtractExportedEntity=t("Cannot extract exported declaration"),e.cannotWriteInExpression=t("Cannot write back side-effects when extracting an expression"),e.cannotExtractReadonlyPropertyInitializerOutsideConstructor=t("Cannot move initialization of read-only class property outside of the constructor"),e.cannotExtractAmbientBlock=t("Cannot extract code from ambient contexts"),e.cannotAccessVariablesFromNestedScopes=t("Cannot access variables from nested scopes"),e.cannotExtractToJSClass=t("Cannot extract constant to a class scope in JS"),e.cannotExtractToExpressionArrowFunction=t("Cannot extract constant to an arrow function without a block"),e.cannotExtractFunctionsContainingThisToMethod=t("Cannot extract functions containing this to method")})(s5||(s5={}));var _5=(e=>(e[e.None=0]="None",e[e.HasReturn=1]="HasReturn",e[e.IsGenerator=2]="IsGenerator",e[e.IsAsyncFunction=4]="IsAsyncFunction",e[e.UsesThis=8]="UsesThis",e[e.UsesThisInFunction=16]="UsesThisInFunction",e[e.InStaticRegion=32]="InStaticRegion",e))(_5||{});function p5(e,t,n=!0){const{length:r}=t;if(0===r&&!n)return{errors:[pS(e,t.start,r,s5.cannotExtractEmpty)]};const i=0===r&&n,o=ZY(e,t.start),s=XY(e,qa(t)),a=o&&s&&n?function(e,t,n){const r=e.getStart(n);let i=t.getEnd();59===n.text.charCodeAt(i)&&i++;return{start:r,length:i-r}}(o,s,e):t,c=i?function(e){return bc(e,(e=>e.parent&&x5(e)&&!gA(e.parent)))}(o):dX(o,e,a),l=i?c:dX(s,e,a);let u,d=0;if(!c||!l)return{errors:[pS(e,t.start,r,s5.cannotExtractRange)]};if(16777216&c.flags)return{errors:[pS(e,t.start,r,s5.cannotExtractJSDoc)]};if(c.parent!==l.parent)return{errors:[pS(e,t.start,r,s5.cannotExtractRange)]};if(c!==l){if(!T0(c.parent))return{errors:[pS(e,t.start,r,s5.cannotExtractRange)]};const n=[];for(const e of c.parent.statements){if(e===c||n.length){const t=f(e);if(t)return{errors:t};n.push(e)}if(e===l)break}return n.length?{targetRange:{range:n,facts:d,thisNode:u}}:{errors:[pS(e,t.start,r,s5.cannotExtractRange)]}}if(WA(c)&&!c.expression)return{errors:[pS(e,t.start,r,s5.cannotExtractRange)]};const _=function(e){if(WA(e)){if(e.expression)return e.expression}else if(FA(e)||eI(e)){const t=FA(e)?e.declarationList.declarations:e.declarations;let n,r=0;for(const e of t)e.initializer&&(r++,n=e.initializer);if(1===r)return n}else if($A(e)&&e.initializer)return e.initializer;return e}(c),p=function(e){if(YC(LA(e)?e.expression:e))return[Vp(e,s5.cannotExtractIdentifier)];return}(_)||f(_);return p?{errors:p}:{targetRange:{range:f5(_),facts:d,thisNode:u}};function f(e){let n;var r;if((r=n||(n={}))[r.None=0]="None",r[r.Break=1]="Break",r[r.Continue=2]="Continue",r[r.Return=4]="Return",Tn.assert(e.pos<=e.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809 (1)"),Tn.assert(!dw(e.pos),"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809 (2)"),!(kd(e)||Am(e)&&x5(e)||T5(e)))return[Vp(e,s5.statementOrExpressionExpected)];if(33554432&e.flags)return[Vp(e,s5.cannotExtractAmbientBlock)];const i=im(e);let o;i&&function(e,t){let n=e;for(;n!==t;){if(172===n.kind){Jv(n)&&(d|=32);break}if(169===n.kind){176===nm(n).kind&&(d|=32);break}174===n.kind&&Jv(n)&&(d|=32),n=n.parent}}(e,i);let s,a=4;if(function e(n){if(o)return!0;if(Sd(n)){if(Kv(260===n.kind?n.parent.parent:n,32))return(o||(o=[])).push(Vp(n,s5.cannotExtractExportedEntity)),!0}switch(n.kind){case 272:return(o||(o=[])).push(Vp(n,s5.cannotExtractImport)),!0;case 277:return(o||(o=[])).push(Vp(n,s5.cannotExtractExportedEntity)),!0;case 108:if(213===n.parent.kind){const e=im(n);if(void 0===e||e.pos<t.start||e.end>=t.start+t.length)return(o||(o=[])).push(Vp(n,s5.cannotExtractSuper)),!0}else d|=8,u=n;break;case 219:GM(n,(function e(t){if(yY(t))d|=8,u=n;else{if(xu(t)||pu(t)&&!uA(t))return!1;GM(t,e)}}));case 263:case 262:YI(n.parent)&&void 0===n.parent.externalModuleIndicator&&(o||(o=[])).push(Vp(n,s5.functionWillNotBeVisibleInTheNewScope));case 231:case 218:case 174:case 176:case 177:case 178:return!1}const r=a;switch(n.kind){case 245:a&=-5;break;case 258:a=0;break;case 241:n.parent&&258===n.parent.kind&&n.parent.finallyBlock===n&&(a=4);break;case 297:case 296:a|=1;break;default:id(n,!1)&&(a|=3)}switch(n.kind){case 197:case 110:d|=8,u=n;break;case 256:{const t=n.label;(s||(s=[])).push(t.escapedText),GM(n,e),s.pop();break}case 252:case 251:{const e=n.label;e?A(s,e.escapedText)||(o||(o=[])).push(Vp(n,s5.cannotExtractRangeContainingLabeledBreakOrContinueStatementWithTargetOutsideOfTheRange)):a&(252===n.kind?1:2)||(o||(o=[])).push(Vp(n,s5.cannotExtractRangeContainingConditionalBreakOrContinueStatements));break}case 223:d|=4;break;case 229:d|=2;break;case 253:4&a?d|=1:(o||(o=[])).push(Vp(n,s5.cannotExtractRangeContainingConditionalReturnStatement));break;default:GM(n,e)}a=r}(e),8&d){const t=cm(e,!1,!1);(262===t.kind||174===t.kind&&210===t.parent.kind||218===t.kind)&&(d|=16)}return o}}function f5(e){return kd(e)?[e]:Am(e)?LA(e.parent)?[e.parent]:e:T5(e)?e:void 0}function m5(e){return uA(e)?dd(e.body):mu(e)||YI(e)||aI(e)||xu(e)}function h5(e,t){const{file:n}=t,r=function(e){let t=b5(e.range)?Ee(e.range):e.range;if(8&e.facts&&!(16&e.facts)){const e=im(t);if(e){const n=bc(t,mu);return n?[n,e]:[e]}}const n=[];for(;;)if(t=t.parent,169===t.kind&&(t=bc(t,(e=>mu(e))).parent),m5(t)&&(n.push(t),307===t.kind))return n}(e),i=function(e,t){return b5(e.range)?{pos:Ee(e.range).getStart(t),end:Ae(e.range).getEnd()}:e.range}(e,n),o=function(e,t,n,r,i,o){const s=new Map,a=[],c=[],l=[],u=[],d=[],_=new Map,p=[];let f;const m=b5(e.range)?1===e.range.length&&LA(e.range[0])?e.range[0].expression:void 0:e.range;let h;if(void 0===m){const t=e.range,n=Ee(t).getStart(),i=Ae(t).end;h=pS(r,n,i-n,s5.expressionExpected)}else 147456&i.getTypeAtLocation(m).flags&&(h=Vp(m,s5.uselessConstantType));for(const w of t){a.push({usages:new Map,typeParameterUsages:new Map,substitutions:new Map}),c.push(new Map),l.push([]);const e=[];h&&e.push(h),xu(w)&&Um(w)&&e.push(Vp(w,s5.cannotExtractToJSClass)),uA(w)&&!OA(w.body)&&e.push(Vp(w,s5.cannotExtractToExpressionArrowFunction)),u.push(e)}const g=new Map,y=b5(e.range)?oE.createBlock(e.range):e.range,v=b5(e.range)?Ee(e.range):e.range,b=x(v);if(T(y),b&&!b5(e.range)&&!LI(e.range)){S(i.getContextualType(e.range))}if(s.size>0){const e=new Map;let n=0;for(let r=v;void 0!==r&&n<t.length;r=r.parent)if(r===t[n]&&(e.forEach(((e,t)=>{a[n].typeParameterUsages.set(t,e)})),n++),Ep(r))for(const t of bl(r)){const n=i.getTypeAtLocation(t);s.has(n.id.toString())&&e.set(n.id.toString(),n)}Tn.assert(n===t.length,"Should have iterated all scopes")}if(d.length){GM(kp(t[0],t[0].parent)?t[0]:Fp(t[0]),C)}for(let w=0;w<t.length;w++){const n=a[w];if(w>0&&(n.usages.size>0||n.typeParameterUsages.size>0)){const t=b5(e.range)?e.range[0]:e.range;u[w].push(Vp(t,s5.cannotAccessVariablesFromNestedScopes))}16&e.facts&&xu(t[w])&&l[w].push(Vp(e.thisNode,s5.cannotExtractFunctionsContainingThisToMethod));let r,i=!1;if(a[w].usages.forEach((e=>{2===e.usage&&(i=!0,106500&e.symbol.flags&&e.symbol.valueDeclaration&&Vv(e.symbol.valueDeclaration,8)&&(r=e.symbol.valueDeclaration))})),Tn.assert(b5(e.range)||0===p.length,"No variable declarations expected if something was extracted"),i&&!b5(e.range)){const t=Vp(e.range,s5.cannotWriteInExpression);l[w].push(t),u[w].push(t)}else if(r&&w>0){const e=Vp(r,s5.cannotExtractReadonlyPropertyInitializerOutsideConstructor);l[w].push(e),u[w].push(e)}else if(f){const e=Vp(f,s5.cannotExtractExportedEntity);l[w].push(e),u[w].push(e)}}return{target:y,usagesPerScope:a,functionErrorsPerScope:l,constantErrorsPerScope:u,exposedVariableDeclarations:p};function x(e){return!!bc(e,(e=>Ep(e)&&0!==bl(e).length))}function S(e){const t=i.getSymbolWalker((()=>(o.throwIfCancellationRequested(),!0))),{visitedTypes:n}=t.walkType(e);for(const r of n)r.isTypeParameter()&&s.set(r.id.toString(),r)}function T(e,t=1){if(b){S(i.getTypeAtLocation(e))}if(Sd(e)&&e.symbol&&d.push(e),bb(e))T(e.left,2),T(e.right);else if($u(e))T(e.operand,2);else if(nA(e)||rA(e))GM(e,T);else if(YC(e)){if(!e.parent)return;if(dN(e.parent)&&e!==e.parent.left)return;if(nA(e.parent)&&e!==e.parent.expression)return;k(e,t,Df(e))}else GM(e,T)}function k(e,n,r){const i=E(e,n,r);if(i)for(let o=0;o<t.length;o++){const t=c[o].get(i);t&&a[o].substitutions.set(Gz(e).toString(),t)}}function E(o,s,d){const _=N(o);if(!_)return;const p=Qz(_).toString(),f=g.get(p);if(f&&f>=s)return p;if(g.set(p,s),f){for(const e of a){e.usages.get(o.text)&&e.usages.set(o.text,{usage:s,symbol:_,node:o})}return p}const m=_.getDeclarations(),h=m&&w(m,(e=>e.getSourceFile()===r));if(h&&!EY(n,h.getStart(),h.end)){if(2&e.facts&&2===s){const e=Vp(o,s5.cannotExtractRangeThatContainsWritesToReferencesLocatedOutsideOfTheTargetRangeInGenerators);for(const t of l)t.push(e);for(const t of u)t.push(e)}for(let e=0;e<t.length;e++){const n=t[e];if(i.resolveName(_.name,n,_.flags,!1)!==_&&!c[e].has(p)){const t=A(_.exportSymbol||_,n,d);if(t)c[e].set(p,t);else if(d){if(!(262144&_.flags)){const t=Vp(o,s5.typeWillNotBeVisibleInTheNewScope);l[e].push(t),u[e].push(t)}}else a[e].usages.set(o.text,{usage:s,symbol:_,node:o})}}return p}}function C(t){if(t===e.range||b5(e.range)&&e.range.includes(t))return;const n=YC(t)?N(t):i.getSymbolAtLocation(t);if(n){const e=w(d,(e=>e.symbol===n));if(e)if($A(e)){const t=e.symbol.id.toString();_.has(t)||(p.push(e),_.set(t,!0))}else f=f||e}GM(t,C)}function N(e){return e.parent&&HI(e.parent)&&e.parent.name===e?i.getShorthandAssignmentValueSymbol(e.parent):i.getSymbolAtLocation(e)}function A(e,t,n){if(!e)return;const r=e.getDeclarations();if(r&&r.some((e=>e.parent===t)))return oE.createIdentifier(e.name);const i=A(e.parent,t,n);return void 0!==i?n?oE.createQualifiedName(i,oE.createIdentifier(e.name)):oE.createPropertyAccessExpression(i,e.name):void 0}}(e,r,i,n,t.program.getTypeChecker(),t.cancellationToken);return{scopes:r,affectedTextRange:i,readsAndWrites:o}}function g5(e,t){let n;const r=e.symbol;if(r&&r.declarations)for(const i of r.declarations)(void 0===n||i.pos<n.pos)&&i.pos<t&&(n=i);return n}function y5({type:e,declaration:t},{type:n,declaration:r}){return Jt(t,r,"pos",Pt)||Lt(e.symbol?e.symbol.getName():"",n.symbol?n.symbol.getName():"")||Pt(e.id,n.id)}function v5(e,t){const n=R(e,(e=>oE.createShorthandPropertyAssignment(e.symbol.name))),r=R(t,(e=>oE.createShorthandPropertyAssignment(e.symbol.name)));return void 0===n?r:void 0===r?n:n.concat(r)}function b5(e){return at(e)}function x5(e){const{parent:t}=e;if(306===t.kind)return!1;switch(e.kind){case 11:return 272!==t.kind&&276!==t.kind;case 230:case 206:case 208:return!1;case 80:return 208!==t.kind&&276!==t.kind&&281!==t.kind}return!0}function S5(e){return T5(e)||(II(e)||DI(e)||OI(e))&&(II(e.parent)||OI(e.parent))}function T5(e){return MC(e)&&e.parent&&LI(e.parent)}var w5={},k5="Generate 'get' and 'set' accessors",E5=cS(ws.Generate_get_and_set_accessors),C5={name:k5,description:E5,kind:"refactor.rewrite.property.generateAccessors"};g3(k5,{kinds:[C5.kind],getEditsForAction:function(e,t){if(!e.endPosition)return;const n=G8.getAccessorConvertiblePropertyAtPosition(e.file,e.program,e.startPosition,e.endPosition);Tn.assert(n&&!I6(n),"Expected applicable refactor info");const r=G8.generateAccessorFromProperty(e.file,e.program,e.startPosition,e.endPosition,e,t);if(!r)return;const i=e.file.fileName,o=n.renameAccessor?n.accessorName:n.fieldName;return{renameFilename:i,renameLocation:(YC(o)?0:-1)+m$(r,i,o.text,fN(n.declaration)),edits:r}},getAvailableActions(e){if(!e.endPosition)return _;const t=G8.getAccessorConvertiblePropertyAtPosition(e.file,e.program,e.startPosition,e.endPosition,"invoked"===e.triggerReason);return t?I6(t)?e.preferences.provideRefactorNotApplicableReason?[{name:k5,description:E5,actions:[{...C5,notApplicableReason:t.error}]}]:_:[{name:k5,description:E5,actions:[C5]}]:_}});var N5={},A5="Infer function return type",I5=cS(ws.Infer_function_return_type),D5={name:A5,description:I5,kind:"refactor.rewrite.function.returnType"};function P5(e){if(Um(e.file)||!D6(D5.kind,e.kind))return;const t=bc(HY(e.file,e.startPosition),(e=>OA(e)||e.parent&&uA(e.parent)&&(39===e.kind||e.parent.body===e)?"quit":function(e){switch(e.kind){case 262:case 218:case 219:case 174:return!0;default:return!1}}(e)));if(!t||!t.body||t.type)return{error:cS(ws.Return_type_must_be_inferred_from_a_function)};const n=e.program.getTypeChecker(),r=function(e,t){if(e.isImplementationOfOverload(t)){const n=e.getTypeAtLocation(t).getCallSignatures();if(n.length>1)return e.getUnionType(J(n,(e=>e.getReturnType())))}const n=e.getSignatureFromDeclaration(t);if(n)return e.getReturnTypeOfSignature(n)}(n,t);if(!r)return{error:cS(ws.Could_not_determine_function_return_type)};const i=n.typeToTypeNode(r,t,1);return i?{declaration:t,returnTypeNode:i}:void 0}g3(A5,{kinds:[D5.kind],getEditsForAction:function(e){const t=P5(e);if(t&&!I6(t)){return{renameFilename:void 0,renameLocation:void 0,edits:Xde.ChangeTracker.with(e,(n=>function(e,t,n,r){const i=FY(n,22,e),o=uA(n)&&void 0===i,s=o?Ee(n.parameters):i;s&&(o&&(t.insertNodeBefore(e,s,oE.createToken(21)),t.insertNodeAfter(e,s,oE.createToken(22))),t.insertNodeAt(e,s.end,r,{prefix:": "}))}(e.file,n,t.declaration,t.returnTypeNode)))}}return},getAvailableActions:function(e){const t=P5(e);if(!t)return _;if(!I6(t))return[{name:A5,description:I5,actions:[D5]}];if(e.preferences.provideRefactorNotApplicableReason)return[{name:A5,description:I5,actions:[{...D5,notApplicableReason:t.error}]}];return _}});var M5=(e=>(e[e.typeOffset=8]="typeOffset",e[e.modifierMask=255]="modifierMask",e))(M5||{}),O5=(e=>(e[e.class=0]="class",e[e.enum=1]="enum",e[e.interface=2]="interface",e[e.namespace=3]="namespace",e[e.typeParameter=4]="typeParameter",e[e.type=5]="type",e[e.parameter=6]="parameter",e[e.variable=7]="variable",e[e.enumMember=8]="enumMember",e[e.property=9]="property",e[e.function=10]="function",e[e.member=11]="member",e))(O5||{}),F5=(e=>(e[e.declaration=0]="declaration",e[e.static=1]="static",e[e.async=2]="async",e[e.readonly=3]="readonly",e[e.defaultLibrary=4]="defaultLibrary",e[e.local=5]="local",e))(F5||{});function R5(e,t,n,r){const i=L5(e,t,n,r);Tn.assert(i.spans.length%3==0);const o=i.spans,s=[];for(let a=0;a<o.length;a+=3)s.push({textSpan:ec(o[a],o[a+1]),classificationType:o[a+2]});return s}function L5(e,t,n,r){return{spans:j5(e,n,r,t),endOfLineState:0}}function j5(e,t,n,r){const i=[];return e&&t&&function(e,t,n,r,i){const o=e.getTypeChecker();let s=!1;function a(c){switch(c.kind){case 267:case 263:case 264:case 262:case 231:case 218:case 219:i.throwIfCancellationRequested()}if(!c||!Ya(n,c.pos,c.getFullWidth())||0===c.getFullWidth())return;const l=s;if((II(c)||DI(c))&&(s=!0),UI(c)&&(s=!1),YC(c)&&!s&&!function(e){const t=e.parent;return t&&(_I(t)||xI(t)||yI(t))}(c)&&!Yw(c.escapedText)){let n=o.getSymbolAtLocation(c);if(n){2097152&n.flags&&(n=o.getAliasedSymbol(n));let i=function(e,t){const n=e.getFlags();if(32&n)return 0;if(384&n)return 1;if(524288&n)return 5;if(64&n){if(2&t)return 2}else if(262144&n)return 4;let r=e.valueDeclaration||e.declarations&&e.declarations[0];r&&$N(r)&&(r=z5(r));return r&&B5.get(r.kind)}(n,VQ(c));if(void 0!==i){let s=0;if(c.parent){($N(c.parent)||B5.get(c.parent.kind)===i)&&c.parent.name===c&&(s=1)}6===i&&U5(c)&&(i=9),i=function(e,t,n){if(7===n||9===n||6===n){const r=e.getTypeAtLocation(t);if(r){const e=e=>e(r)||r.isUnion()&&r.types.some(e);if(6!==n&&e((e=>e.getConstructSignatures().length>0)))return 0;if(e((e=>e.getCallSignatures().length>0))&&!e((e=>e.getProperties().length>0))||function(e){for(;U5(e);)e=e.parent;return iA(e.parent)&&e.parent.expression===e}(t))return 9===n?11:10}}return n}(o,c,i);const a=n.valueDeclaration;if(a){const r=pc(a),o=mc(a);256&r&&(s|=2),1024&r&&(s|=4),0!==i&&2!==i&&(8&r||2&o||8&n.getFlags())&&(s|=8),7!==i&&10!==i||!function(e,t){$N(e)&&(e=z5(e));if($A(e))return(!YI(e.parent.parent.parent)||JI(e.parent))&&e.getSourceFile()===t;if(tI(e))return!YI(e.parent)&&e.getSourceFile()===t;return!1}(a,t)||(s|=32),e.isSourceFileDefaultLibrary(a.getSourceFile())&&(s|=16)}else n.declarations&&n.declarations.some((t=>e.isSourceFileDefaultLibrary(t.getSourceFile())))&&(s|=16);r(c,i,s)}}}GM(c,a),s=l}a(t)}(e,t,n,((e,n,r)=>{i.push(e.getStart(t),e.getWidth(t),(n+1<<8)+r)}),r),i}function z5(e){for(;;){if(!$N(e.parent.parent))return e.parent.parent;e=e.parent.parent}}function U5(e){return dN(e.parent)&&e.parent.right===e||nA(e.parent)&&e.parent.name===e}var B5=new Map([[260,7],[169,6],[172,9],[267,3],[266,1],[306,8],[263,0],[174,11],[262,10],[218,10],[173,11],[177,9],[178,9],[171,9],[264,2],[265,5],[168,4],[303,9],[304,9]]),q5="0.8";function V5(e,t,n,r){const i=zl(e)?new K5(e,t,n):80===e?new Q5(80,t,n):81===e?new Y5(81,t,n):new G5(e,t,n);return i.parent=r,i.flags=101441536&r.flags,i}var K5=class{constructor(e,t,n){this.pos=t,this.end=n,this.kind=e,this.id=0,this.flags=0,this.modifierFlagsCache=0,this.transformFlags=0,this.parent=void 0,this.original=void 0,this.emitNode=void 0}assertHasRealPosition(e){Tn.assert(!dw(this.pos)&&!dw(this.end),e||"Node must have a real position for this operation")}getSourceFile(){return C_(this)}getStart(e,t){return this.assertHasRealPosition(),Q_(this,e,t)}getFullStart(){return this.assertHasRealPosition(),this.pos}getEnd(){return this.assertHasRealPosition(),this.end}getWidth(e){return this.assertHasRealPosition(),this.getEnd()-this.getStart(e)}getFullWidth(){return this.assertHasRealPosition(),this.end-this.pos}getLeadingTriviaWidth(e){return this.assertHasRealPosition(),this.getStart(e)-this.pos}getFullText(e){return this.assertHasRealPosition(),(e||this.getSourceFile()).text.substring(this.pos,this.end)}getText(e){return this.assertHasRealPosition(),e||(e=this.getSourceFile()),e.text.substring(this.getStart(e),this.getEnd())}getChildCount(e){return this.getChildren(e).length}getChildAt(e,t){return this.getChildren(t)[e]}getChildren(e=C_(this)){return this.assertHasRealPosition("Node without a real position cannot be scanned and thus has no token nodes - use forEachChild and collect the result if that's fine"),VD(this,e)??KD(this,e,function(e,t){const n=[];if(Fd(e))return e.forEachChild((e=>{n.push(e)})),n;UQ.setText((t||e.getSourceFile()).text);let r=e.pos;const i=t=>{J5(n,r,t.pos,e),n.push(t),r=t.end},o=t=>{J5(n,r,t.pos,e),n.push(function(e,t){const n=V5(352,e.pos,e.end,t),r=[];let i=e.pos;for(const o of e)J5(r,i,o.pos,t),r.push(o),i=o.end;return J5(r,i,e.end,t),n._children=r,n}(t,e)),r=t.end};return h(e.jsDoc,i),r=e.pos,e.forEachChild(i,o),J5(n,r,e.end,e),UQ.setText(void 0),n}(this,e))}getFirstToken(e){this.assertHasRealPosition();const t=this.getChildren(e);if(!t.length)return;const n=w(t,(e=>e.kind<309||e.kind>351));return n.kind<166?n:n.getFirstToken(e)}getLastToken(e){this.assertHasRealPosition();const t=Ne(this.getChildren(e));if(t)return t.kind<166?t:t.getLastToken(e)}forEachChild(e,t){return GM(this,e,t)}};function J5(e,t,n,r){for(UQ.resetTokenState(t);t<n;){const i=UQ.scan(),o=UQ.getTokenEnd();if(o<=n){if(80===i){if(lk(r))continue;Tn.fail(`Did not expect ${Tn.formatSyntaxKind(r.kind)} to have an Identifier in its trivia`)}e.push(V5(i,t,o,r))}if(t=o,1===i)break}}var W5=class{constructor(e,t,n){this.pos=t,this.end=n,this.kind=e,this.id=0,this.flags=0,this.transformFlags=0,this.parent=void 0,this.emitNode=void 0}getSourceFile(){return C_(this)}getStart(e,t){return Q_(this,e,t)}getFullStart(){return this.pos}getEnd(){return this.end}getWidth(e){return this.getEnd()-this.getStart(e)}getFullWidth(){return this.end-this.pos}getLeadingTriviaWidth(e){return this.getStart(e)-this.pos}getFullText(e){return(e||this.getSourceFile()).text.substring(this.pos,this.end)}getText(e){return e||(e=this.getSourceFile()),e.text.substring(this.getStart(e),this.getEnd())}getChildCount(){return this.getChildren().length}getChildAt(e){return this.getChildren()[e]}getChildren(){return 1===this.kind&&this.jsDoc||_}getFirstToken(){}getLastToken(){}forEachChild(){}},H5=class{constructor(e,t){this.flags=e,this.escapedName=t,this.declarations=void 0,this.valueDeclaration=void 0,this.id=0,this.mergeId=0,this.parent=void 0,this.members=void 0,this.exports=void 0,this.exportSymbol=void 0,this.constEnumOnlyModule=void 0,this.isReferenced=void 0,this.lastAssignmentPos=void 0,this.links=void 0}getFlags(){return this.flags}get name(){return Cc(this)}getEscapedName(){return this.escapedName}getName(){return this.name}getDeclarations(){return this.declarations}getDocumentationComment(e){if(!this.documentationComment)if(this.documentationComment=_,!this.declarations&&s_(this)&&this.links.target&&s_(this.links.target)&&this.links.target.links.tupleLabelDeclaration){const t=this.links.target.links.tupleLabelDeclaration;this.documentationComment=t8([t],e)}else this.documentationComment=t8(this.declarations,e);return this.documentationComment}getContextualDocumentationComment(e,t){if(e){if(jd(e)&&(this.contextualGetAccessorDocumentationComment||(this.contextualGetAccessorDocumentationComment=t8(M(this.declarations,jd),t)),m(this.contextualGetAccessorDocumentationComment)))return this.contextualGetAccessorDocumentationComment;if(Ld(e)&&(this.contextualSetAccessorDocumentationComment||(this.contextualSetAccessorDocumentationComment=t8(M(this.declarations,Ld),t)),m(this.contextualSetAccessorDocumentationComment)))return this.contextualSetAccessorDocumentationComment}return this.getDocumentationComment(t)}getJsDocTags(e){return void 0===this.tags&&(this.tags=_,this.tags=e8(this.declarations,e)),this.tags}getContextualJsDocTags(e,t){if(e){if(jd(e)&&(this.contextualGetAccessorTags||(this.contextualGetAccessorTags=e8(M(this.declarations,jd),t)),m(this.contextualGetAccessorTags)))return this.contextualGetAccessorTags;if(Ld(e)&&(this.contextualSetAccessorTags||(this.contextualSetAccessorTags=e8(M(this.declarations,Ld),t)),m(this.contextualSetAccessorTags)))return this.contextualSetAccessorTags}return this.getJsDocTags(t)}},G5=class extends W5{constructor(e,t,n){super(e,t,n)}},Q5=class extends W5{constructor(e,t,n){super(e,t,n)}get text(){return kc(this)}},Y5=class extends W5{constructor(e,t,n){super(e,t,n)}get text(){return kc(this)}},Z5=class{constructor(e,t){this.flags=t,this.checker=e}getFlags(){return this.flags}getSymbol(){return this.symbol}getProperties(){return this.checker.getPropertiesOfType(this)}getProperty(e){return this.checker.getPropertyOfType(this,e)}getApparentProperties(){return this.checker.getAugmentedPropertiesOfType(this)}getCallSignatures(){return this.checker.getSignaturesOfType(this,0)}getConstructSignatures(){return this.checker.getSignaturesOfType(this,1)}getStringIndexType(){return this.checker.getIndexTypeOfType(this,0)}getNumberIndexType(){return this.checker.getIndexTypeOfType(this,1)}getBaseTypes(){return this.isClassOrInterface()?this.checker.getBaseTypes(this):void 0}isNullableType(){return this.checker.isNullableType(this)}getNonNullableType(){return this.checker.getNonNullableType(this)}getNonOptionalType(){return this.checker.getNonOptionalType(this)}getConstraint(){return this.checker.getBaseConstraintOfType(this)}getDefault(){return this.checker.getDefaultFromTypeParameter(this)}isUnion(){return!!(1048576&this.flags)}isIntersection(){return!!(2097152&this.flags)}isUnionOrIntersection(){return!!(3145728&this.flags)}isLiteral(){return!!(2432&this.flags)}isStringLiteral(){return!!(128&this.flags)}isNumberLiteral(){return!!(256&this.flags)}isTypeParameter(){return!!(262144&this.flags)}isClassOrInterface(){return!!(3&Mx(this))}isClass(){return!!(1&Mx(this))}isIndexType(){return!!(4194304&this.flags)}get typeArguments(){if(4&Mx(this))return this.checker.getTypeArguments(this)}},X5=class{constructor(e,t){this.flags=t,this.checker=e}getDeclaration(){return this.declaration}getTypeParameters(){return this.typeParameters}getParameters(){return this.parameters}getReturnType(){return this.checker.getReturnTypeOfSignature(this)}getTypeParameterAtPosition(e){const t=this.checker.getParameterType(this,e);if(t.isIndexType()&&nk(t.type)){const e=t.type.getConstraint();if(e)return this.checker.getIndexType(e)}return t}getDocumentationComment(){return this.documentationComment||(this.documentationComment=t8(hn(this.declaration),this.checker))}getJsDocTags(){return this.jsDocTags||(this.jsDocTags=e8(hn(this.declaration),this.checker))}};function $5(e){return fl(e).some((e=>"inheritDoc"===e.tagName.text||"inheritdoc"===e.tagName.text))}function e8(e,t){if(!e)return _;let n=Ule.getJsDocTagsFromDeclarations(e,t);if(t&&(0===n.length||e.some($5))){const r=new Set;for(const i of e){const e=n8(t,i,(e=>{var n;if(!r.has(e))return r.add(e),177===i.kind||178===i.kind?e.getContextualJsDocTags(i,t):1===(null==(n=e.declarations)?void 0:n.length)?e.getJsDocTags(t):void 0}));e&&(n=[...e,...n])}}return n}function t8(e,t){if(!e)return _;let n=Ule.getJsDocCommentsFromDeclarations(e,t);if(t&&(0===n.length||e.some($5))){const r=new Set;for(const i of e){const e=n8(t,i,(e=>{if(!r.has(e))return r.add(e),177===i.kind||178===i.kind?e.getContextualDocumentationComment(i,t):e.getDocumentationComment(t)}));e&&(n=0===n.length?e.slice():e.concat(KX(),n))}}return n}function n8(e,t,n){var r;const i=176===(null==(r=t.parent)?void 0:r.kind)?t.parent.parent:t.parent;if(!i)return;const o=Wv(t);return y(Ig(i),(r=>{const i=e.getTypeAtLocation(r),s=o&&i.symbol?e.getTypeOfSymbol(i.symbol):i,a=e.getPropertyOfType(s,t.symbol.name);return a?n(a):void 0}))}var r8=class extends K5{constructor(e,t,n){super(e,t,n)}update(e,t){return nO(this,e,t)}getLineAndCharacterOfPosition(e){return ta(this,e)}getLineStarts(){return Zs(this)}getPositionOfLineAndCharacter(e,t,n){return Ys(Zs(this),e,t,this.text,n)}getLineEndOfPosition(e){const{line:t}=this.getLineAndCharacterOfPosition(e),n=this.getLineStarts();let r;t+1>=n.length&&(r=this.getEnd()),r||(r=n[t+1]-1);const i=this.getFullText();return"\n"===i[r]&&"\r"===i[r-1]?r-1:r}getNamedDeclarations(){return this.namedDeclarations||(this.namedDeclarations=this.computeNamedDeclarations()),this.namedDeclarations}computeNamedDeclarations(){const e=nt();return this.forEachChild((function r(i){switch(i.kind){case 262:case 218:case 174:case 173:const o=i,s=n(o);if(s){const t=function(t){let n=e.get(t);n||e.set(t,n=[]);return n}(s),n=Ne(t);n&&o.parent===n.parent&&o.symbol===n.symbol?o.body&&!n.body&&(t[t.length-1]=o):t.push(o)}GM(i,r);break;case 263:case 231:case 264:case 265:case 266:case 267:case 271:case 281:case 276:case 273:case 274:case 177:case 178:case 187:t(i),GM(i,r);break;case 169:if(!Kv(i,31))break;case 260:case 208:{const e=i;if(Mu(e.name)){GM(e.name,r);break}e.initializer&&r(e.initializer)}case 306:case 172:case 171:t(i);break;case 278:const a=i;a.exportClause&&(wI(a.exportClause)?h(a.exportClause.elements,r):r(a.exportClause.name));break;case 272:const c=i.importClause;c&&(c.name&&t(c.name),c.namedBindings&&(274===c.namedBindings.kind?t(c.namedBindings):h(c.namedBindings.elements,r)));break;case 226:0!==dh(i)&&t(i);default:GM(i,r)}})),e;function t(t){const r=n(t);r&&e.add(r,t)}function n(e){const t=Mc(e);return t&&(_N(t)&&nA(t.expression)?t.expression.name.text:du(t)?HZ(t):void 0)}}},i8=class{constructor(e,t,n){this.fileName=e,this.text=t,this.skipTrivia=n||(e=>e)}getLineAndCharacterOfPosition(e){return ta(this,e)}};function o8(e){let t=!0;for(const r in e)if(je(e,r)&&!s8(r)){t=!1;break}if(t)return e;const n={};for(const r in e)if(je(e,r)){n[s8(r)?r:r.charAt(0).toLowerCase()+r.substr(1)]=e[r]}return n}function s8(e){return!e.length||e.charAt(0)===e.charAt(0).toLowerCase()}function a8(e){return e?R(e,(e=>e.text)).join(""):""}function c8(){return{target:1,jsx:1}}function l8(){return G8.getSupportedErrorCodes()}var u8=class{constructor(e){this.host=e}getCurrentSourceFile(e){var t,n,r,i,o,s,a,c;const l=this.host.getScriptSnapshot(e);if(!l)throw new Error("Could not find file: '"+e+"'.");const u=ZX(e,this.host),d=this.host.getScriptVersion(e);let _;if(this.currentFileName!==e){_=_8(e,l,{languageVersion:99,impliedNodeFormat:PK(rs(e,this.host.getCurrentDirectory(),(null==(r=null==(n=(t=this.host).getCompilerHost)?void 0:n.call(t))?void 0:r.getCanonicalFileName)||Xy(this.host)),null==(c=null==(a=null==(s=null==(o=(i=this.host).getCompilerHost)?void 0:o.call(i))?void 0:s.getModuleResolutionCache)?void 0:a.call(s))?void 0:c.getPackageJsonInfoCache(),this.host,this.host.getCompilationSettings()),setExternalModuleIndicator:DS(this.host.getCompilationSettings()),jsDocParsingMode:0},d,!0,u)}else if(this.currentFileVersion!==d){const e=l.getChangeRange(this.currentFileScriptSnapshot);_=p8(this.currentSourceFile,l,d,e)}return _&&(this.currentFileVersion=d,this.currentFileName=e,this.currentFileScriptSnapshot=l,this.currentSourceFile=_),this.currentSourceFile}};function d8(e,t,n){e.version=n,e.scriptSnapshot=t}function _8(e,t,n,r,i,o){const s=XM(e,KZ(t),n,i,o);return d8(s,t,r),s}function p8(e,t,n,r,i){if(r&&n!==e.version){let o;const s=0!==r.span.start?e.text.substr(0,r.span.start):"",a=qa(r.span)!==e.text.length?e.text.substr(qa(r.span)):"";if(0===r.newLength)o=s&&a?s+a:s||a;else{const e=t.getText(r.span.start,r.span.start+r.newLength);o=s&&a?s+e+a:s?s+e:e+a}const c=nO(e,o,r,i);return d8(c,t,n),c.nameTable=void 0,e!==c&&e.scriptSnapshot&&(e.scriptSnapshot.dispose&&e.scriptSnapshot.dispose(),e.scriptSnapshot=void 0),c}const o={languageVersion:e.languageVersion,impliedNodeFormat:e.impliedNodeFormat,setExternalModuleIndicator:e.setExternalModuleIndicator,jsDocParsingMode:e.jsDocParsingMode};return _8(e.fileName,t,o,n,!0,e.scriptKind)}var f8={isCancellationRequested:ft,throwIfCancellationRequested:pt},m8=class{constructor(e){this.cancellationToken=e}isCancellationRequested(){return this.cancellationToken.isCancellationRequested()}throwIfCancellationRequested(){var e;if(this.isCancellationRequested())throw null==(e=ar)||e.instant(ar.Phase.Session,"cancellationThrown",{kind:"CancellationTokenObject"}),new jr}},h8=class{constructor(e,t=20){this.hostCancellationToken=e,this.throttleWaitMilliseconds=t,this.lastCancellationCheckTime=0}isCancellationRequested(){const e=er();return Math.abs(e-this.lastCancellationCheckTime)>=this.throttleWaitMilliseconds&&(this.lastCancellationCheckTime=e,this.hostCancellationToken.isCancellationRequested())}throwIfCancellationRequested(){var e;if(this.isCancellationRequested())throw null==(e=ar)||e.instant(ar.Phase.Session,"cancellationThrown",{kind:"ThrottledCancellationToken"}),new jr}},g8=["getSemanticDiagnostics","getSuggestionDiagnostics","getCompilerOptionsDiagnostics","getSemanticClassifications","getEncodedSemanticClassifications","getCodeFixesAtPosition","getCombinedCodeFix","applyCodeActionCommand","organizeImports","getEditsForFileRename","getEmitOutput","getApplicableRefactors","getEditsForRefactor","prepareCallHierarchy","provideCallHierarchyIncomingCalls","provideCallHierarchyOutgoingCalls","provideInlayHints","getSupportedCodeFixes","getPasteEdits"],y8=[...g8,"getCompletionsAtPosition","getCompletionEntryDetails","getCompletionEntrySymbol","getSignatureHelpItems","getQuickInfoAtPosition","getDefinitionAtPosition","getDefinitionAndBoundSpan","getImplementationAtPosition","getTypeDefinitionAtPosition","getReferencesAtPosition","findReferences","getDocumentHighlights","getNavigateToItems","getRenameInfo","findRenameLocations","getApplicableRefactors"];function v8(e,t=Z0(e.useCaseSensitiveFileNames&&e.useCaseSensitiveFileNames(),e.getCurrentDirectory(),e.jsDocParsingMode),n){var r;let i;i=void 0===n?0:"boolean"==typeof n?n?2:0:n;const o=new u8(e);let s,a,c=0;const l=e.getCancellationToken?new m8(e.getCancellationToken()):f8,u=e.getCurrentDirectory();function d(t){e.log&&e.log(t)}aS(null==(r=e.getLocalizedDiagnosticMessages)?void 0:r.bind(e));const p=Zy(e),f=rn(p),m=L1({useCaseSensitiveFileNames:()=>p,getCurrentDirectory:()=>u,getProgram:v,fileExists:tt(e,e.fileExists),readFile:tt(e,e.readFile),getDocumentPositionMapper:tt(e,e.getDocumentPositionMapper),getSourceFileLike:tt(e,e.getSourceFileLike),log:d});function g(e){const t=s.getSourceFile(e);if(!t){const t=new Error(`Could not find source file: '${e}'.`);throw t.ProgramFiles=s.getSourceFiles().map((e=>e.fileName)),t}return t}function y(){e.updateFromProject&&!e.updateFromProjectInProgress?e.updateFromProject():function(){var n,r,o;if(Tn.assert(2!==i),e.getProjectVersion){const t=e.getProjectVersion();if(t){if(a===t&&!(null==(n=e.hasChangedAutomaticTypeDirectiveNames)?void 0:n.call(e)))return;a=t}}const _=e.getTypeRootsVersion?e.getTypeRootsVersion():0;c!==_&&(d("TypeRoots version has changed; provide new program"),s=void 0,c=_);const h=e.getScriptFileNames().slice(),g=e.getCompilationSettings()||{target:1,jsx:1},y=e.hasInvalidatedResolutions||ft,v=tt(e,e.hasInvalidatedLibResolutions)||ft,b=tt(e,e.hasChangedAutomaticTypeDirectiveNames),x=null==(r=e.getProjectReferences)?void 0:r.call(e);let S,T={getSourceFile:M,getSourceFileByPath:O,getCancellationToken:()=>l,getCanonicalFileName:f,useCaseSensitiveFileNames:()=>p,getNewLine:()=>Qb(g),getDefaultLibFileName:t=>e.getDefaultLibFileName(t),writeFile:pt,getCurrentDirectory:()=>u,fileExists:t=>e.fileExists(t),readFile:t=>e.readFile&&e.readFile(t),getSymlinkCache:tt(e,e.getSymlinkCache),realpath:tt(e,e.realpath),directoryExists:t=>Wb(t,e),getDirectories:t=>e.getDirectories?e.getDirectories(t):[],readDirectory:(t,n,r,i,o)=>(Tn.checkDefined(e.readDirectory,"'LanguageServiceHost.readDirectory' must be implemented to correctly process 'projectReferences'"),e.readDirectory(t,n,r,i,o)),onReleaseOldSourceFile:P,onReleaseParsedCommandLine:D,hasInvalidatedResolutions:y,hasInvalidatedLibResolutions:v,hasChangedAutomaticTypeDirectiveNames:b,trace:tt(e,e.trace),resolveModuleNames:tt(e,e.resolveModuleNames),getModuleResolutionCache:tt(e,e.getModuleResolutionCache),createHash:tt(e,e.createHash),resolveTypeReferenceDirectives:tt(e,e.resolveTypeReferenceDirectives),resolveModuleNameLiterals:tt(e,e.resolveModuleNameLiterals),resolveTypeReferenceDirectiveReferences:tt(e,e.resolveTypeReferenceDirectiveReferences),resolveLibrary:tt(e,e.resolveLibrary),useSourceOfProjectReferenceRedirect:tt(e,e.useSourceOfProjectReferenceRedirect),getParsedCommandLine:A,jsDocParsingMode:e.jsDocParsingMode};const w=T.getSourceFile,{getSourceFileWithCache:k}=VV(T,(e=>rs(e,u,f)),((...e)=>w.call(T,...e)));T.getSourceFile=k,null==(o=e.setCompilerHost)||o.call(e,T);const E={useCaseSensitiveFileNames:p,fileExists:e=>T.fileExists(e),readFile:e=>T.readFile(e),directoryExists:e=>T.directoryExists(e),getDirectories:e=>T.getDirectories(e),realpath:T.realpath,readDirectory:(...e)=>T.readDirectory(...e),trace:T.trace,getCurrentDirectory:T.getCurrentDirectory,onUnRecoverableConfigFileDiagnostic:pt},C=t.getKeyForCompilationSettings(g);let N=new Set;if(IK(s,h,g,((t,n)=>e.getScriptVersion(n)),(e=>T.fileExists(e)),y,v,b,A,x))return T=void 0,S=void 0,void(N=void 0);return s=FK({rootNames:h,options:g,host:T,oldProgram:s,projectReferences:x}),T=void 0,S=void 0,N=void 0,m.clearCache(),void s.getTypeChecker();function A(t){const n=rs(t,u,f),r=null==S?void 0:S.get(n);if(void 0!==r)return r||void 0;const i=e.getParsedCommandLine?e.getParsedCommandLine(t):I(t);return(S||(S=new Map)).set(n,i||!1),i}function I(e){const t=M(e,100);if(t)return t.path=rs(e,u,f),t.resolvedPath=t.path,t.originalFileName=t.fileName,XF(t,E,es(Vo(e),u),void 0,es(e,u))}function D(t,n,r){var i;e.getParsedCommandLine?null==(i=e.onReleaseParsedCommandLine)||i.call(e,t,n,r):n&&P(n.sourceFile,r)}function P(e,n){const r=t.getKeyForCompilationSettings(n);t.releaseDocumentWithKey(e.resolvedPath,r,e.scriptKind,e.impliedNodeFormat)}function M(e,t,n,r){return O(e,rs(e,u,f),t,n,r)}function O(n,r,i,o,a){Tn.assert(T,"getOrCreateSourceFileByPath called after typical CompilerHost lifetime, check the callstack something with a reference to an old host.");const c=e.getScriptSnapshot(n);if(!c)return;const l=ZX(n,e),u=e.getScriptVersion(n);if(!a){const o=s&&s.getSourceFileByPath(r);if(o){if(l===o.scriptKind||N.has(o.resolvedPath))return t.updateDocumentWithKey(n,r,e,C,c,u,l,i);t.releaseDocumentWithKey(o.resolvedPath,t.getKeyForCompilationSettings(s.getCompilerOptions()),o.scriptKind,o.impliedNodeFormat),N.add(o.resolvedPath)}}return t.acquireDocumentWithKey(n,r,e,C,c,u,l,i)}}()}function v(){if(2!==i)return y(),s;Tn.assert(void 0===s)}function b(){if(s){const e=t.getKeyForCompilationSettings(s.getCompilerOptions());h(s.getSourceFiles(),(n=>t.releaseDocumentWithKey(n.resolvedPath,e,n.scriptKind,n.impliedNodeFormat))),s=void 0}}function x(e,t,n,r){y();const i=n&&n.use===Ice.FindReferencesUse.Rename?s.getSourceFiles().filter((e=>!s.isSourceFileDefaultLibrary(e))):s.getSourceFiles();return Ice.findReferenceOrRenameEntries(s,l,i,e,t,n,r)}const S=new Map(Object.entries({19:20,21:22,23:24,32:30}));function T(t){return Tn.assertEqual(t.type,"install package"),e.installPackage?e.installPackage({fileName:(n=t.file,rs(n,u,f)),packageName:t.packageName}):Promise.reject("Host does not implement `installPackage`");var n}function w(e,t){return{lineStarts:e.getLineStarts(),firstLine:e.getLineAndCharacterOfPosition(t.pos).line,lastLine:e.getLineAndCharacterOfPosition(t.end).line}}function k(e,t,n){const r=o.getCurrentSourceFile(e),i=[],{lineStarts:s,firstLine:a,lastLine:c}=w(r,t);let l=n||!1,u=Number.MAX_VALUE;const d=new Map,_=new RegExp(/\S/),p=lZ(r,s[a]),f=p?"{/*":"//";for(let o=a;o<=c;o++){const e=r.text.substring(s[o],r.getLineEndOfPosition(s[o])),t=_.exec(e);t&&(u=Math.min(u,t.index),d.set(o.toString(),t.index),e.substr(t.index,f.length)!==f&&(l=void 0===n||n))}for(let o=a;o<=c;o++){if(a!==c&&s[o]===t.end)continue;const n=d.get(o.toString());void 0!==n&&(p?i.push(...E(e,{pos:s[o]+u,end:r.getLineEndOfPosition(s[o])},l,p)):l?i.push({newText:f,span:{length:0,start:s[o]+u}}):r.text.substr(s[o]+n,f.length)===f&&i.push({newText:"",span:{length:f.length,start:s[o]+n}}))}return i}function E(e,t,n,r){var i;const s=o.getCurrentSourceFile(e),a=[],{text:c}=s;let l=!1,u=n||!1;const d=[];let{pos:_}=t;const p=void 0!==r?r:lZ(s,_),f=p?"{/*":"/*",m=p?"*/}":"*/",h=p?"\\{\\/\\*":"\\/\\*",g=p?"\\*\\/\\}":"\\*\\/";for(;_<=t.end;){const e=mZ(s,_+(c.substr(_,f.length)===f?f.length:0));if(e)p&&(e.pos--,e.end++),d.push(e.pos),3===e.kind&&d.push(e.end),l=!0,_=e.end+1;else{const e=c.substring(_,t.end).search(`(${h})|(${g})`);u=void 0!==n?n:u||!bX(c,_,-1===e?t.end:_+e),_=-1===e?t.end+1:_+e+m.length}}if(u||!l){2!==(null==(i=mZ(s,t.pos))?void 0:i.kind)&&se(d,t.pos,Pt),se(d,t.end,Pt);const e=d[0];c.substr(e,f.length)!==f&&a.push({newText:f,span:{length:0,start:e}});for(let t=1;t<d.length-1;t++)c.substr(d[t]-m.length,m.length)!==m&&a.push({newText:m,span:{length:0,start:d[t]}}),c.substr(d[t],f.length)!==f&&a.push({newText:f,span:{length:0,start:d[t]}});a.length%2!=0&&a.push({newText:m,span:{length:0,start:d[d.length-1]}})}else for(const o of d){const e=o-m.length>0?o-m.length:0,t=c.substr(e,m.length)===m?m.length:0;a.push({newText:"",span:{length:f.length,start:o-t}})}return a}function C({openingElement:e,closingElement:t,parent:n}){return!vO(e.tagName,t.tagName)||II(n)&&vO(e.tagName,n.openingElement.tagName)&&C(n)}function N({closingFragment:e,parent:t}){return!!(262144&e.flags)||OI(t)&&N(t)}function A(t,n,r,i,o,s){const[a,c]="number"==typeof n?[n,void 0]:[n.pos,n.end];return{file:t,startPosition:a,endPosition:c,program:v(),host:e,formatContext:C_e.getFormatContext(i,e),cancellationToken:l,preferences:r,triggerReason:o,kind:s}}S.forEach(((e,t)=>S.set(e.toString(),Number(t))));const I={dispose:function(){b(),e=void 0},cleanupSemanticCache:b,getSyntacticDiagnostics:function(e){return y(),s.getSyntacticDiagnostics(g(e),l).slice()},getSemanticDiagnostics:function(e){y();const t=g(e),n=s.getSemanticDiagnostics(t,l);if(!VS(s.getCompilerOptions()))return n.slice();const r=s.getDeclarationDiagnostics(t,l);return[...n,...r]},getSuggestionDiagnostics:function(e){return y(),B1(g(e),s,l)},getCompilerOptionsDiagnostics:function(){return y(),[...s.getOptionsDiagnostics(l),...s.getGlobalDiagnostics(l)]},getSyntacticClassifications:function(e,t){return G0(l,o.getCurrentSourceFile(e),t)},getSemanticClassifications:function(e,t,n){return y(),"2020"===(n||"original")?R5(s,l,g(e),t):q0(s.getTypeChecker(),l,g(e),s.getClassifiableNames(),t)},getEncodedSyntacticClassifications:function(e,t){return Q0(l,o.getCurrentSourceFile(e),t)},getEncodedSemanticClassifications:function(e,t,n){return y(),"original"===(n||"original")?K0(s.getTypeChecker(),l,g(e),s.getClassifiableNames(),t):L5(s,l,g(e),t)},getCompletionsAtPosition:function(t,n,r=bQ,i){const o={...r,includeCompletionsForModuleExports:r.includeCompletionsForModuleExports||r.includeExternalModuleExports,includeCompletionsWithInsertText:r.includeCompletionsWithInsertText||r.includeInsertTextCompletions};return y(),Dse.getCompletionsAtPosition(e,s,d,g(t),n,o,r.triggerCharacter,r.triggerKind,l,i&&C_e.getFormatContext(i,e),r.includeSymbol)},getCompletionEntryDetails:function(t,n,r,i,o,a=bQ,c){return y(),Dse.getCompletionEntryDetails(s,d,g(t),n,{name:r,source:o,data:c},e,i&&C_e.getFormatContext(i,e),a,l)},getCompletionEntrySymbol:function(t,n,r,i,o=bQ){return y(),Dse.getCompletionEntrySymbol(s,d,g(t),n,{name:r,source:i},e,o)},getSignatureHelpItems:function(e,t,{triggerReason:n}=bQ){y();const r=g(e);return sde.getSignatureHelpItems(s,r,t,n,l)},getQuickInfoAtPosition:function(e,t){y();const n=g(e),r=HY(n,t);if(r===n)return;const i=s.getTypeChecker(),o=function(e){if(oA(e.parent)&&e.pos===e.parent.pos)return e.parent.expression;if(FN(e.parent)&&e.pos===e.parent.pos)return e.parent;if(hf(e.parent)&&e.parent.name===e)return e.parent;if(BI(e.parent))return e.parent;return e}(r),a=function(e,t){const n=x8(e);if(n){const e=t.getContextualType(n.parent),r=e&&S8(n,t,e,!1);if(r&&1===r.length)return Ee(r)}return t.getSymbolAtLocation(e)}(o,i);if(!a||i.isUnknownSymbol(a)){const e=function(e,t,n){switch(t.kind){case 80:return!(16777216&t.flags&&!Um(t)&&(171===t.parent.kind&&t.parent.name===t||bc(t,(e=>169===e.kind))))&&(!aY(t)&&!cY(t)&&!Pl(t.parent));case 211:case 166:return!mZ(e,n);case 110:case 197:case 108:case 202:return!0;case 236:return hf(t);default:return!1}}(n,o,t)?i.getTypeAtLocation(o):void 0;return e&&{kind:"",kindModifiers:"",textSpan:PZ(o,n),displayParts:i.runWithCancellationToken(l,(t=>WX(t,e,hY(o)))),documentation:e.symbol?e.symbol.getDocumentationComment(i):void 0,tags:e.symbol?e.symbol.getJsDocTags(i):void 0}}const{symbolKind:c,displayParts:u,documentation:d,tags:_}=i.runWithCancellationToken(l,(e=>Vde.getSymbolDisplayPartsDocumentationAndSymbolKind(e,a,n,hY(o),o)));return{kind:c,kindModifiers:Vde.getSymbolModifiers(i,a),textSpan:PZ(o,n),displayParts:u,documentation:d,tags:_}},getDefinitionAtPosition:function(e,t,n,r){return y(),gle.getDefinitionAtPosition(s,g(e),t,n,r)},getDefinitionAndBoundSpan:function(e,t){return y(),gle.getDefinitionAndBoundSpan(s,g(e),t)},getImplementationAtPosition:function(e,t){return y(),Ice.getImplementationsAtPosition(s,l,s.getSourceFiles(),g(e),t)},getTypeDefinitionAtPosition:function(e,t){return y(),gle.getTypeDefinitionAtPosition(s.getTypeChecker(),g(e),t)},getReferencesAtPosition:function(e,t){return y(),x(HY(g(e),t),t,{use:Ice.FindReferencesUse.References},Ice.toReferenceEntry)},findReferences:function(e,t){return y(),Ice.findReferencedSymbols(s,l,s.getSourceFiles(),g(e),t)},getFileReferences:function(e){return y(),Ice.Core.getReferencesForFileName(e,s,s.getSourceFiles()).map(Ice.toReferenceEntry)},getDocumentHighlights:function(e,t,n){const r=ts(e);Tn.assert(n.some((e=>ts(e)===r))),y();const i=J(n,(e=>s.getSourceFile(e))),o=g(e);return R0.getDocumentHighlights(s,l,o,t,i)},getNameOrDottedNameSpan:function(e,t,n){const r=o.getCurrentSourceFile(e),i=HY(r,t);if(i===r)return;switch(i.kind){case 211:case 166:case 11:case 97:case 112:case 106:case 108:case 110:case 197:case 80:break;default:return}let s=i;for(;;)if(uY(s)||lY(s))s=s.parent;else{if(!_Y(s))break;if(267!==s.parent.parent.kind||s.parent.parent.body!==s.parent)break;s=s.parent.parent.name}return tc(s.getStart(),i.getEnd())},getBreakpointStatementAtPosition:function(e,t){const n=o.getCurrentSourceFile(e);return k8.spanInSourceFileAtLocation(n,t)},getNavigateToItems:function(e,t,n,r=!1,i=!1){return y(),l2(n?[g(n)]:s.getSourceFiles(),s.getTypeChecker(),l,e,t,r,i)},getRenameInfo:function(e,t,n){return y(),$ue.getRenameInfo(s,g(e),t,n||{})},getSmartSelectionRange:function(e,t){return Pde.getSmartSelectionRange(t,o.getCurrentSourceFile(e))},findRenameLocations:function(e,t,n,r,i){y();const o=g(e),s=WY(HY(o,t));if($ue.nodeIsEligibleForRename(s)){if(YC(s)&&(PI(s.parent)||MI(s.parent))&&Jy(s.escapedText)){const{openingElement:e,closingElement:t}=s.parent.parent;return[e,t].map((e=>{const t=PZ(e.tagName,o);return{fileName:o.fileName,textSpan:t,...Ice.toContextSpan(t,o,e.parent)}}))}{const e=iX(o,i??bQ),a="boolean"==typeof i?i:null==i?void 0:i.providePrefixAndSuffixTextForRename;return x(s,t,{findInStrings:n,findInComments:r,providePrefixAndSuffixTextForRename:a,use:Ice.FindReferencesUse.Rename},((t,n,r)=>Ice.toRenameLocation(t,n,r,a||!1,e)))}}},getNavigationBarItems:function(e){return A2(o.getCurrentSourceFile(e),l)},getNavigationTree:function(e){return I2(o.getCurrentSourceFile(e),l)},getOutliningSpans:function(e){const t=o.getCurrentSourceFile(e);return Kue.collectElements(t,l)},getTodoComments:function(e,t){y();const n=g(e);l.throwIfCancellationRequested();const r=n.text,i=[];if(t.length>0&&!n.fileName.includes("/node_modules/")){const e=function(){const e="("+/(?:^(?:\s|\*)*)/.source+"|"+/(?:\/\/+\s*)/.source+"|"+/(?:\/\*+\s*)/.source+")",n="(?:"+R(t,(e=>"("+(e.text.replace(/[-[\]/{}()*+?.\\^$|]/g,"\\$&")+")"))).join("|")+")";return new RegExp(e+"("+n+/(?:.*?)/.source+")"+/(?:$|\*\/)/.source,"gim")}();let s;for(;s=e.exec(r);){l.throwIfCancellationRequested();const e=3;Tn.assert(s.length===t.length+e);const a=s[1],c=s.index+a.length;if(!mZ(n,c))continue;let u;for(let n=0;n<t.length;n++)s[n+e]&&(u=t[n]);if(void 0===u)return Tn.fail();if((o=r.charCodeAt(c+u.text.length))>=97&&o<=122||o>=65&&o<=90||o>=48&&o<=57)continue;const d=s[2];i.push({descriptor:u,message:d,position:c})}}var o;return i},getBraceMatchingAtPosition:function(e,t){const n=o.getCurrentSourceFile(e),r=GY(n,t),i=r.getStart(n)===t?S.get(r.kind.toString()):void 0,s=i&&FY(r.parent,i,n);return s?[PZ(r,n),PZ(s,n)].sort(((e,t)=>e.start-t.start)):_},getIndentationAtPosition:function(e,t,n){let r=er();const i=o8(n),s=o.getCurrentSourceFile(e);d("getIndentationAtPosition: getCurrentSourceFile: "+(er()-r)),r=er();const a=C_e.SmartIndenter.getIndentation(t,s,i);return d("getIndentationAtPosition: computeIndentation : "+(er()-r)),a},getFormattingEditsForRange:function(t,n,r,i){const s=o.getCurrentSourceFile(t);return C_e.formatSelection(n,r,s,C_e.getFormatContext(o8(i),e))},getFormattingEditsForDocument:function(t,n){return C_e.formatDocument(o.getCurrentSourceFile(t),C_e.getFormatContext(o8(n),e))},getFormattingEditsAfterKeystroke:function(t,n,r,i){const s=o.getCurrentSourceFile(t),a=C_e.getFormatContext(o8(i),e);if(!mZ(s,n))switch(r){case"{":return C_e.formatOnOpeningCurly(n,s,a);case"}":return C_e.formatOnClosingCurly(n,s,a);case";":return C_e.formatOnSemicolon(n,s,a);case"\n":return C_e.formatOnEnter(n,s,a)}return[]},getDocCommentTemplateAtPosition:function(t,n,r,i){const s=i?C_e.getFormatContext(i,e).options:void 0;return Ule.getDocCommentTemplateAtPosition(VX(e,s),o.getCurrentSourceFile(t),n,r)},isValidBraceCompletionAtPosition:function(e,t,n){if(60===n)return!1;const r=o.getCurrentSourceFile(e);if(iZ(r,t))return!1;if(oZ(r,t))return 123===n;if(aZ(r,t))return!1;switch(n){case 39:case 34:case 96:return!mZ(r,t)}return!0},getJsxClosingTagAtPosition:function(e,t){const n=o.getCurrentSourceFile(e),r=eZ(t,n);if(!r)return;const i=32===r.kind&&PI(r.parent)?r.parent.parent:OC(r)&&II(r.parent)?r.parent:void 0;if(i&&C(i))return{newText:`</${i.openingElement.tagName.getText(n)}>`};const s=32===r.kind&&FI(r.parent)?r.parent.parent:OC(r)&&OI(r.parent)?r.parent:void 0;return s&&N(s)?{newText:"</>"}:void 0},getLinkedEditingRangeAtPosition:function(e,t){const n=o.getCurrentSourceFile(e),r=eZ(t,n);if(!r||307===r.parent.kind)return;const i="[a-zA-Z0-9:\\-\\._$]*";if(OI(r.parent.parent)){const e=r.parent.parent.openingFragment,o=r.parent.parent.closingFragment;if(E_(e)||E_(o))return;const s=e.getStart(n)+1,a=o.getStart(n)+2;if(t!==s&&t!==a)return;return{ranges:[{start:s,length:0},{start:a,length:0}],wordPattern:i}}{const e=bc(r.parent,(e=>!(!PI(e)&&!MI(e))));if(!e)return;Tn.assert(PI(e)||MI(e),"tag should be opening or closing element");const o=e.parent.openingElement,s=e.parent.closingElement,a=o.tagName.getStart(n),c=o.tagName.end,l=s.tagName.getStart(n),u=s.tagName.end;if(a===o.getStart(n)||l===s.getStart(n)||c===o.getEnd()||u===s.getEnd())return;if(!(a<=t&&t<=c||l<=t&&t<=u))return;if(o.tagName.getText(n)!==s.tagName.getText(n))return;return{ranges:[{start:a,length:c-a},{start:l,length:u-l}],wordPattern:i}}},getSpanOfEnclosingComment:function(e,t,n){const r=o.getCurrentSourceFile(e),i=C_e.getRangeOfEnclosingComment(r,t);return!i||n&&3!==i.kind?void 0:FZ(i)},getCodeFixesAtPosition:function(t,n,r,i,o,a=bQ){y();const c=g(t),u=tc(n,r),d=C_e.getFormatContext(o,e);return U(ie(i,Nt,Pt),(t=>(l.throwIfCancellationRequested(),G8.getFixes({errorCode:t,sourceFile:c,span:u,program:s,host:e,cancellationToken:l,formatContext:d,preferences:a}))))},getCombinedCodeFix:function(t,n,r,i=bQ){y(),Tn.assert("file"===t.type);const o=g(t.fileName),a=C_e.getFormatContext(r,e);return G8.getAllFixes({fixId:n,sourceFile:o,program:s,host:e,cancellationToken:l,formatContext:a,preferences:i})},applyCodeActionCommand:function(e,t){const n="string"==typeof e?t:e;return at(n)?Promise.all(n.map((e=>T(e)))):T(n)},organizeImports:function(t,n,r=bQ){y(),Tn.assert("file"===t.type);const i=g(t.fileName),o=C_e.getFormatContext(n,e),a=t.mode??(t.skipDestructiveCodeActions?"SortAndCombine":"All");return _ue.organizeImports(i,o,e,s,r,a)},getEditsForFileRename:function(t,n,r,i=bQ){return t1(v(),t,n,e,C_e.getFormatContext(r,e),i,m)},getEmitOutput:function(t,n,r){y();const i=g(t),o=e.getCustomTransformers&&e.getCustomTransformers();return KK(s,i,!!n,l,o,r)},getNonBoundSourceFile:function(e){return o.getCurrentSourceFile(e)},getProgram:v,getCurrentProgram:()=>s,getAutoImportProvider:function(){var t;return null==(t=e.getPackageJsonAutoImportProvider)?void 0:t.call(e)},updateIsDefinitionOfReferencedSymbols:function(t,n){const r=s.getTypeChecker(),i=function(){for(const i of t)for(const t of i.references){if(n.has(t)){const e=o(t);return Tn.assertIsDefined(e),r.getSymbolAtLocation(e)}const i=SX(t,m,tt(e,e.fileExists));if(i&&n.has(i)){const e=o(i);if(e)return r.getSymbolAtLocation(e)}}return}();if(!i)return!1;for(const s of t)for(const t of s.references){const r=o(t);if(Tn.assertIsDefined(r),n.has(t)||Ice.isDeclarationOfSymbol(r,i)){n.add(t),t.isDefinition=!0;const r=SX(t,m,tt(e,e.fileExists));r&&n.add(r)}else t.isDefinition=!1}return!0;function o(e){const t=s.getSourceFile(e.fileName);if(!t)return;const n=HY(t,e.textSpan.start);return Ice.Core.getAdjustedNode(n,{use:Ice.FindReferencesUse.References})}},getApplicableRefactors:function(e,t,n=bQ,r,i,o){y();const s=g(e);return m3.getApplicableRefactors(A(s,t,n,bQ,r,i),o)},getEditsForRefactor:function(e,t,n,r,i,o=bQ,s){y();const a=g(e);return m3.getEditsForRefactor(A(a,n,o,t),r,i,s)},getMoveToRefactoringFileSuggestions:function(t,n,r=bQ){y();const i=g(t),o=Tn.checkDefined(s.getSourceFiles()),a=fw(t),c=h6(A(i,n,r,bQ)),l=g6(null==c?void 0:c.all),u=J(o,(e=>{const t=fw(e.fileName);return!(null==s?void 0:s.isSourceFileFromExternalLibrary(i))&&!(i===g(e.fileName)||".ts"===a&&".d.ts"===t||".d.ts"===a&&cn(Ko(e.fileName),"lib.")&&".d.ts"===t)&&(a===t||(".tsx"===a&&".ts"===t||".jsx"===a&&".js"===t)&&!l)?e.fileName:void 0}));return{newFileName:m6(i,s,e,c),files:u}},toLineColumnOffset:function(e,t){return 0===t?{line:0,character:0}:m.toLineColumnOffset(e,t)},getSourceMapper:()=>m,clearSourceMapperCache:()=>m.clearCache(),prepareCallHierarchy:function(e,t){y();const n=C8.resolveCallHierarchyDeclaration(s,HY(g(e),t));return n&&t0(n,(e=>C8.createCallHierarchyItem(s,e)))},provideCallHierarchyIncomingCalls:function(e,t){y();const n=g(e),r=n0(C8.resolveCallHierarchyDeclaration(s,0===t?n:HY(n,t)));return r?C8.getIncomingCalls(s,r,l):[]},provideCallHierarchyOutgoingCalls:function(e,t){y();const n=g(e),r=n0(C8.resolveCallHierarchyDeclaration(s,0===t?n:HY(n,t)));return r?C8.getOutgoingCalls(s,r):[]},toggleLineComment:k,toggleMultilineComment:E,commentSelection:function(e,t){const n=o.getCurrentSourceFile(e),{firstLine:r,lastLine:i}=w(n,t);return r===i&&t.pos!==t.end?E(e,t,!0):k(e,t,!0)},uncommentSelection:function(e,t){const n=o.getCurrentSourceFile(e),r=[],{pos:i}=t;let{end:s}=t;i===s&&(s+=lZ(n,i)?2:1);for(let o=i;o<=s;o++){const t=mZ(n,o);if(t){switch(t.kind){case 2:r.push(...k(e,{end:t.end,pos:t.pos+1},!1));break;case 3:r.push(...E(e,{end:t.end,pos:t.pos+1},!1))}o=t.end+1}}return r},provideInlayHints:function(t,n,r=bQ){y();const i=g(t);return Fle.provideInlayHints(function(t,n,r){return{file:t,program:v(),host:e,span:n,preferences:r,cancellationToken:l}}(i,n,r))},getSupportedCodeFixes:l8,getPasteEdits:function(t,n){return y(),Cfe.pasteEditsProvider(g(t.targetFile),t.pastedText,t.pasteLocations,t.copiedFrom?{file:g(t.copiedFrom.file),range:t.copiedFrom.range}:void 0,e,t.preferences,C_e.getFormatContext(n,e),l)},mapCode:function(t,n,r,i,s){return sue.mapCode(o.getCurrentSourceFile(t),n,r,e,C_e.getFormatContext(i,e),s)}};switch(i){case 0:break;case 1:g8.forEach((e=>I[e]=()=>{throw new Error(`LanguageService Operation: ${e} not allowed in LanguageServiceMode.PartialSemantic`)}));break;case 2:y8.forEach((e=>I[e]=()=>{throw new Error(`LanguageService Operation: ${e} not allowed in LanguageServiceMode.Syntactic`)}));break;default:Tn.assertNever(i)}return I}function b8(e){return e.nameTable||function(e){const t=e.nameTable=new Map;e.forEachChild((function e(n){if(YC(n)&&!cY(n)&&n.escapedText||Hg(n)&&function(e){return gg(e)||283===e.parent.kind||function(e){return e&&e.parent&&212===e.parent.kind&&e.parent.argumentExpression===e}(e)||vg(e)}(n)){const e=ey(n);t.set(e,void 0===t.get(e)?n.pos:-1)}else if(ZC(n)){const e=n.escapedText;t.set(e,void 0===t.get(e)?n.pos:-1)}if(GM(n,e),zd(n))for(const t of n.jsDoc)GM(t,e)}))}(e),e.nameTable}function x8(e){const t=function(e){switch(e.kind){case 11:case 15:case 9:if(167===e.parent.kind)return Vd(e.parent.parent)?e.parent.parent:void 0;case 80:return!Vd(e.parent)||210!==e.parent.parent.kind&&292!==e.parent.parent.kind||e.parent.name!==e?void 0:e.parent}return}(e);return t&&(tA(t.parent)||jI(t.parent))?t:void 0}function S8(e,t,n,r){const i=HZ(e.name);if(!i)return _;if(!n.isUnion()){const e=n.getProperty(i);return e?[e]:_}const o=tA(e.parent)||jI(e.parent)?M(n.types,(n=>!t.isTypeInvalidDueToUnionDiscriminant(n,e.parent))):n.types,s=J(o,(e=>e.getProperty(i)));if(r&&(0===s.length||s.length===n.types.length)){const e=n.getProperty(i);if(e)return[e]}return o.length||s.length?ie(s,Nt):J(n.types,(e=>e.getProperty(i)))}function T8(e){if(To)return Zo(Vo(ts(To.getExecutingFilePath())),Ba(e));throw new Error("getDefaultLibFilePath is only supported when consumed as a node module. ")}function w8(e,t,n){const r=[];n=a2(n,r);const i=at(e)?e:[e],o=Uq(void 0,void 0,oE,n,i,t,!0);return o.diagnostics=te(o.diagnostics,r),o}iS({getNodeConstructor:()=>K5,getTokenConstructor:()=>G5,getIdentifierConstructor:()=>Q5,getPrivateIdentifierConstructor:()=>Y5,getSourceFileConstructor:()=>r8,getSymbolConstructor:()=>H5,getTypeConstructor:()=>Z5,getSignatureConstructor:()=>X5,getSourceMapSourceConstructor:()=>i8});var k8={};function E8(e,t){if(e.isDeclarationFile)return;let n=QY(e,t);const r=e.getLineAndCharacterOfPosition(t).line;if(e.getLineAndCharacterOfPosition(n.getStart(e)).line>r){const t=eZ(n.pos,e);if(!t||e.getLineAndCharacterOfPosition(t.getEnd()).line!==r)return;n=t}if(!(33554432&n.flags))return l(n);function i(t,n){const r=xM(t)?k(t.modifiers,mN):void 0;return tc(r?da(e.text,r.end):t.getStart(e),(n||t).getEnd())}function o(t,n){return i(t,$Y(n,n.parent,e))}function s(t,n){return t&&r===e.getLineAndCharacterOfPosition(t.getStart(e)).line?l(t):l(n)}function a(t){return l(eZ(t.pos,e))}function c(t){return l($Y(t,t.parent,e))}function l(t){if(t){const{parent:n}=t;switch(t.kind){case 243:return r(t.declarationList.declarations[0]);case 260:case 172:case 171:return r(t);case 169:return function e(t){if(Mu(t.name))return p(t.name);if(function(e){return!!e.initializer||void 0!==e.dotDotDotToken||Kv(e,3)}(t))return i(t);{const n=t.parent,r=n.parameters.indexOf(t);return Tn.assert(-1!==r),0!==r?e(n.parameters[r-1]):l(n.body)}}(t);case 262:case 174:case 173:case 177:case 178:case 176:case 218:case 219:return function(e){if(!e.body)return;if(u(e))return i(e);return l(e.body)}(t);case 241:if(Wf(t))return function(e){const t=e.statements.length?e.statements[0]:e.getLastToken();if(u(e.parent))return s(e.parent,t);return l(t)}(t);case 268:return d(t);case 299:return d(t.block);case 244:return i(t.expression);case 253:return i(t.getChildAt(0),t.expression);case 247:return o(t,t.expression);case 246:return l(t.statement);case 259:return i(t.getChildAt(0));case 245:return o(t,t.expression);case 256:return l(t.statement);case 252:case 251:return i(t.getChildAt(0),t.label);case 248:return function(e){if(e.initializer)return _(e);if(e.condition)return i(e.condition);if(e.incrementor)return i(e.incrementor)}(t);case 249:return o(t,t.expression);case 250:return _(t);case 255:return o(t,t.expression);case 296:case 297:return l(t.statements[0]);case 258:return d(t.tryBlock);case 257:case 277:return i(t,t.expression);case 271:return i(t,t.moduleReference);case 272:case 278:return i(t,t.moduleSpecifier);case 267:if(1!==qj(t))return;case 263:case 266:case 306:case 208:return i(t);case 254:return l(t.statement);case 170:return function(t,n,r){if(t){const i=t.indexOf(n);if(i>=0){let n=i,o=i+1;for(;n>0&&r(t[n-1]);)n--;for(;o<t.length&&r(t[o]);)o++;return tc(da(e.text,t[n].pos),t[o-1].end)}}return i(n)}(n.modifiers,t,mN);case 206:case 207:return p(t);case 264:case 265:return;case 27:case 1:return s(eZ(t.pos,e));case 28:return a(t);case 19:return function(t){switch(t.parent.kind){case 266:const n=t.parent;return s(eZ(t.pos,e,t.parent),n.members.length?n.members[0]:n.getLastToken(e));case 263:const r=t.parent;return s(eZ(t.pos,e,t.parent),r.members.length?r.members[0]:r.getLastToken(e));case 269:return s(t.parent.parent,t.parent.clauses[0])}return l(t.parent)}(t);case 20:return function(e){switch(e.parent.kind){case 268:if(1!==qj(e.parent.parent))return;case 266:case 263:return i(e);case 241:if(Wf(e.parent))return i(e);case 299:return l(Ne(e.parent.statements));case 269:const t=Ne(e.parent.clauses);return t?l(Ne(t.statements)):void 0;case 206:const n=e.parent;return l(Ne(n.elements)||n);default:if(CZ(e.parent)){const t=e.parent;return i(Ne(t.properties)||t)}return l(e.parent)}}(t);case 24:return function(e){if(207===e.parent.kind){const t=e.parent;return i(Ne(t.elements)||t)}if(CZ(e.parent)){const t=e.parent;return i(Ne(t.elements)||t)}return l(e.parent)}(t);case 21:return function(e){if(246===e.parent.kind||213===e.parent.kind||214===e.parent.kind)return a(e);if(217===e.parent.kind)return c(e);return l(e.parent)}(t);case 22:return function(e){switch(e.parent.kind){case 218:case 262:case 219:case 174:case 173:case 177:case 178:case 176:case 247:case 246:case 248:case 250:case 213:case 214:case 217:return a(e);default:return l(e.parent)}}(t);case 59:return function(e){if(pu(e.parent)||303===e.parent.kind||169===e.parent.kind)return a(e);return l(e.parent)}(t);case 32:case 30:return function(e){if(216===e.parent.kind)return c(e);return l(e.parent)}(t);case 117:return function(e){if(246===e.parent.kind)return o(e,e.parent.expression);return l(e.parent)}(t);case 93:case 85:case 98:return c(t);case 165:return function(e){if(250===e.parent.kind)return c(e);return l(e.parent)}(t);default:if(CZ(t))return f(t);if((80===t.kind||230===t.kind||303===t.kind||304===t.kind)&&CZ(n))return i(t);if(226===t.kind){const{left:e,operatorToken:n}=t;if(CZ(e))return f(e);if(64===n.kind&&CZ(t.parent))return i(t);if(28===n.kind)return l(e)}if(Am(t))switch(n.kind){case 246:return a(t);case 170:return l(t.parent);case 248:case 250:return i(t);case 226:if(28===t.parent.operatorToken.kind)return i(t);break;case 219:if(t.parent.body===t)return i(t)}switch(t.parent.kind){case 303:if(t.parent.name===t&&!CZ(t.parent.parent))return l(t.parent.initializer);break;case 216:if(t.parent.type===t)return c(t.parent.type);break;case 260:case 169:{const{initializer:e,type:n}=t.parent;if(e===t||n===t||gb(t.kind))return a(t);break}case 226:{const{left:e}=t.parent;if(CZ(e)&&t!==e)return a(t);break}default:if(pu(t.parent)&&t.parent.type===t)return a(t)}return l(t.parent)}}function n(t){return eI(t.parent)&&t.parent.declarations[0]===t?i(eZ(t.pos,e,t.parent),t):i(t)}function r(t){if(249===t.parent.parent.kind)return l(t.parent.parent);const r=t.parent;return Mu(t.name)?p(t.name):qd(t)&&t.initializer||Kv(t,32)||250===r.parent.kind?n(t):eI(t.parent)&&t.parent.declarations[0]!==t?l(eZ(t.pos,e,t.parent)):void 0}function u(e){return Kv(e,32)||263===e.parent.kind&&176!==e.kind}function d(t){switch(t.parent.kind){case 267:if(1!==qj(t.parent))return;case 247:case 245:case 249:return s(t.parent,t.statements[0]);case 248:case 250:return s(eZ(t.pos,e,t.parent),t.statements[0])}return l(t.statements[0])}function _(e){if(261!==e.initializer.kind)return l(e.initializer);{const t=e.initializer;if(t.declarations.length>0)return l(t.declarations[0])}}function p(e){const t=h(e.elements,(e=>232!==e.kind?e:void 0));return t?l(t):208===e.parent.kind?i(e.parent):n(e.parent)}function f(e){Tn.assert(207!==e.kind&&206!==e.kind);const t=h(209===e.kind?e.elements:e.properties,(e=>232!==e.kind?e:void 0));return t?l(t):i(226===e.parent.kind?e.parent:e)}}}a(k8,{spanInSourceFileAtLocation:()=>E8});var C8={};function N8(e){return gN(e)||$A(e)}function A8(e){return(lA(e)||uA(e)||SA(e))&&N8(e.parent)&&e===e.parent.initializer&&YC(e.parent.name)&&(!!(2&mc(e.parent))||gN(e.parent))}function I8(e){return YI(e)||sI(e)||tI(e)||lA(e)||nI(e)||SA(e)||bN(e)||vN(e)||yN(e)||SN(e)||TN(e)}function D8(e){return YI(e)||sI(e)&&YC(e.name)||tI(e)||nI(e)||bN(e)||vN(e)||yN(e)||SN(e)||TN(e)||function(e){return(lA(e)||SA(e))&&Pc(e)}(e)||A8(e)}function P8(e){return YI(e)?e:Pc(e)?e.name:A8(e)?e.parent.name:Tn.checkDefined(e.modifiers&&w(e.modifiers,M8))}function M8(e){return 90===e.kind}function O8(e,t){const n=P8(t);return n&&e.getSymbolAtLocation(n)}function F8(e,t){if(t.body)return t;if(xN(t))return yv(t.parent);if(tI(t)||vN(t)){const n=O8(e,t);return n&&n.valueDeclaration&&mu(n.valueDeclaration)&&n.valueDeclaration.body?n.valueDeclaration:void 0}return t}function R8(e,t){const n=O8(e,t);let r;if(n&&n.declarations){const e=re(n.declarations),t=R(n.declarations,(e=>({file:e.getSourceFile().fileName,pos:e.pos})));e.sort(((e,n)=>Lt(t[e].file,t[n].file)||t[e].pos-t[n].pos));const i=R(e,(e=>n.declarations[e]));let o;for(const n of i)D8(n)&&(o&&o.parent===n.parent&&o.end===n.pos||(r=_e(r,n)),o=n)}return r}function L8(e,t){return bN(t)?t:mu(t)?F8(e,t)??R8(e,t)??t:R8(e,t)??t}function j8(e,t){const n=e.getTypeChecker();let r=!1;for(;;){if(D8(t))return L8(n,t);if(I8(t)){const e=bc(t,D8);return e&&L8(n,e)}if(gg(t)){if(D8(t.parent))return L8(n,t.parent);if(I8(t.parent)){const e=bc(t.parent,D8);return e&&L8(n,e)}return N8(t.parent)&&t.parent.initializer&&A8(t.parent.initializer)?t.parent.initializer:void 0}if(xN(t))return D8(t.parent)?t.parent:void 0;if(126!==t.kind||!bN(t.parent)){if($A(t)&&t.initializer&&A8(t.initializer))return t.initializer;if(!r){let e=n.getSymbolAtLocation(t);if(e&&(2097152&e.flags&&(e=n.getAliasedSymbol(e)),e.valueDeclaration)){r=!0,t=e.valueDeclaration;continue}}return}t=t.parent}}function z8(e,t){const n=t.getSourceFile(),r=function(e,t){if(YI(t))return{text:t.fileName,pos:0,end:0};if((tI(t)||nI(t))&&!Pc(t)){const e=t.modifiers&&w(t.modifiers,M8);if(e)return{text:"default",pos:e.getStart(),end:e.getEnd()}}if(bN(t)){const n=da(t.getSourceFile().text,ex(t).pos),r=n+6,i=e.getTypeChecker(),o=i.getSymbolAtLocation(t.parent);return{text:(o?`${i.symbolToString(o,t.parent)} `:"")+"static {}",pos:n,end:r}}const n=A8(t)?t.parent.name:Tn.checkDefined(Oc(t),"Expected call hierarchy item to have a name");let r=YC(n)?kc(n):Hg(n)?n.text:_N(n)&&Hg(n.expression)?n.expression.text:void 0;if(void 0===r){const i=e.getTypeChecker(),o=i.getSymbolAtLocation(n);o&&(r=i.symbolToString(o,t))}if(void 0===r){const e=yV();r=g_((n=>e.writeNode(4,t,t.getSourceFile(),n)))}return{text:r,pos:n.getStart(),end:n.getEnd()}}(e,t),i=function(e){var t,n,r,i;if(A8(e))return gN(e.parent)&&xu(e.parent.parent)?SA(e.parent.parent)?null==(t=Fc(e.parent.parent))?void 0:t.getText():null==(n=e.parent.parent.name)?void 0:n.getText():aI(e.parent.parent.parent.parent)&&YC(e.parent.parent.parent.parent.parent.name)?e.parent.parent.parent.parent.parent.name.getText():void 0;switch(e.kind){case 177:case 178:case 174:return 210===e.parent.kind?null==(r=Fc(e.parent))?void 0:r.getText():null==(i=Oc(e.parent))?void 0:i.getText();case 262:case 263:case 267:if(aI(e.parent)&&YC(e.parent.parent.name))return e.parent.parent.name.getText()}}(t),o=gY(t),s=yZ(t),a=tc(da(n.text,t.getFullStart(),!1,!0),t.getEnd()),c=tc(r.pos,r.end);return{file:n.fileName,kind:o,kindModifiers:s,name:r.text,containerName:i,span:a,selectionSpan:c}}function U8(e){return void 0!==e}function B8(e){if(e.kind===Ice.EntryKind.Node){const{node:t}=e;if(HQ(t,!0,!0)||GQ(t,!0,!0)||QQ(t,!0,!0)||YQ(t,!0,!0)||uY(t)||dY(t)){const e=t.getSourceFile();return{declaration:bc(t,D8)||e,range:OZ(t,e)}}}}function q8(e){return Gz(e.declaration)}function V8(e,t,n){if(YI(t)||sI(t)||bN(t))return[];const r=P8(t),i=M(Ice.findReferenceOrRenameEntries(e,n,e.getSourceFiles(),r,0,{use:Ice.FindReferencesUse.References},B8),U8);return i?Ye(i,q8,(t=>function(e,t){return n=z8(e,t[0].declaration),r=R(t,(e=>FZ(e.range))),{from:n,fromSpans:r};var n,r}(e,t))):[]}function K8(e,t){const n=[],r=function(e,t){function n(n){const r=sA(n)?n.tag:Pd(n)?n.tagName:Bx(n)||bN(n)?n:n.expression,i=j8(e,r);if(i){const e=OZ(r,n.getSourceFile());if(at(i))for(const n of i)t.push({declaration:n,range:e});else t.push({declaration:i,range:e})}}return function e(t){if(t&&!(33554432&t.flags))if(D8(t)){if(xu(t))for(const n of t.members)n.name&&_N(n.name)&&e(n.name.expression)}else{switch(t.kind){case 80:case 271:case 272:case 278:case 264:case 265:return;case 175:return void n(t);case 216:case 234:case 238:return void e(t.expression);case 260:case 169:return e(t.name),void e(t.initializer);case 213:case 214:return n(t),e(t.expression),void h(t.arguments,e);case 215:return n(t),e(t.tag),void e(t.template);case 286:case 285:return n(t),e(t.tagName),void e(t.attributes);case 170:return n(t),void e(t.expression);case 211:case 212:n(t),GM(t,e)}Df(t)||GM(t,e)}}}(e,n);switch(t.kind){case 307:!function(e,t){h(e.statements,t)}(t,r);break;case 267:!function(e,t){!Kv(e,128)&&e.body&&aI(e.body)&&h(e.body.statements,t)}(t,r);break;case 262:case 218:case 219:case 174:case 177:case 178:!function(e,t,n){const r=F8(e,t);r&&(h(r.parameters,n),n(r.body))}(e.getTypeChecker(),t,r);break;case 263:case 231:!function(e,t){h(e.modifiers,t);const n=Ng(e);n&&t(n.expression);for(const r of e.members)bM(r)&&h(r.modifiers,t),gN(r)?t(r.initializer):xN(r)&&r.body?(h(r.parameters,t),t(r.body)):bN(r)&&t(r)}(t,r);break;case 175:!function(e,t){t(e.body)}(t,r);break;default:Tn.assertNever(t)}return n}function J8(e,t){return 33554432&t.flags||yN(t)?[]:Ye(K8(e,t),q8,(t=>function(e,t){return n=z8(e,t[0].declaration),r=R(t,(e=>FZ(e.range))),{to:n,fromSpans:r};var n,r}(e,t)))}a(C8,{createCallHierarchyItem:()=>z8,getIncomingCalls:()=>V8,getOutgoingCalls:()=>J8,resolveCallHierarchyDeclaration:()=>j8});var W8={};a(W8,{v2020:()=>H8});var H8={};a(H8,{TokenEncodingConsts:()=>M5,TokenModifier:()=>F5,TokenType:()=>O5,getEncodedSemanticClassifications:()=>L5,getSemanticClassifications:()=>R5});var G8={};a(G8,{PreserveOptionalFlags:()=>Xie,addNewNodeForMemberSymbol:()=>$ie,codeFixAll:()=>c7,createCodeFixAction:()=>$8,createCodeFixActionMaybeFixAll:()=>e7,createCodeFixActionWithoutFixAll:()=>X8,createCombinedCodeActions:()=>s7,createFileTextChanges:()=>a7,createImportAdder:()=>Iee,createImportSpecifierResolver:()=>Pee,createJsonPropertyAssignment:()=>_oe,createMissingMemberNodes:()=>Yie,createSignatureDeclarationFromCallExpression:()=>toe,createSignatureDeclarationFromSignature:()=>eoe,createStubbedBody:()=>loe,eachDiagnostic:()=>l7,findAncestorMatchingSpan:()=>goe,findJsonProperty:()=>poe,generateAccessorFromProperty:()=>yoe,getAccessorConvertiblePropertyAtPosition:()=>Soe,getAllFixes:()=>o7,getAllSupers:()=>koe,getArgumentTypesAndTypeParameters:()=>ooe,getFixes:()=>i7,getImportCompletionAction:()=>Mee,getImportKind:()=>Qee,getJSDocTypedefNodes:()=>gee,getNoopSymbolTrackerWithResolver:()=>Zie,getPromoteTypeOnlyCompletionAction:()=>Oee,getSupportedErrorCodes:()=>r7,importFixName:()=>Cee,importSymbols:()=>hoe,parameterShouldGetTypeFromJSDoc:()=>Y7,registerCodeFix:()=>n7,setJsonCompilerOptionValue:()=>doe,setJsonCompilerOptionValues:()=>uoe,tryGetAutoImportableReferenceFromTypeNode:()=>foe,typeToAutoImportableTypeNode:()=>roe});var Q8,Y8=nt(),Z8=new Map;function X8(e,t,n){return t7(e,g0(n),t,void 0,void 0)}function $8(e,t,n,r,i,o){return t7(e,g0(n),t,r,g0(i),o)}function e7(e,t,n,r,i,o){return t7(e,g0(n),t,r,i&&g0(i),o)}function t7(e,t,n,r,i,o){return{fixName:e,description:t,changes:n,fixId:r,fixAllDescription:i,commands:o?[o]:void 0}}function n7(e){for(const t of e.errorCodes)Q8=void 0,Y8.add(String(t),e);if(e.fixIds)for(const t of e.fixIds)Tn.assert(!Z8.has(t)),Z8.set(t,e)}function r7(){return Q8??(Q8=Ke(Y8.keys()))}function i7(e){const t=u7(e);return U(Y8.get(String(e.errorCode)),(n=>R(n.getCodeActions(e),function(e,t){const{errorCodes:n}=e;let r=0;for(const o of t)if(A(n,o.code)&&r++,r>1)break;const i=r<2;return({fixId:e,fixAllDescription:t,...n})=>i?n:{...n,fixId:e,fixAllDescription:t}}(n,t))))}function o7(e){return Z8.get(_t(e.fixId,lt)).getAllCodeActions(e)}function s7(e,t){return{changes:e,commands:t}}function a7(e,t){return{fileName:e,textChanges:t}}function c7(e,t,n){const r=[];return s7(Xde.ChangeTracker.with(e,(i=>l7(e,t,(e=>n(i,e,r))))),0===r.length?void 0:r)}function l7(e,t,n){for(const r of u7(e))A(t,r.code)&&n(r)}function u7({program:e,sourceFile:t,cancellationToken:n}){const r=[...e.getSemanticDiagnostics(t,n),...e.getSyntacticDiagnostics(t,n),...B1(t,e,n)];return VS(e.getCompilerOptions())&&r.push(...e.getDeclarationDiagnostics(t,n)),r}var d7="addConvertToUnknownForNonOverlappingTypes",_7=[ws.Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the_other_If_this_was_intentional_convert_the_expression_to_unknown_first.code];function p7(e,t,n){const r=kA(n)?oE.createAsExpression(n.expression,oE.createKeywordTypeNode(159)):oE.createTypeAssertion(oE.createKeywordTypeNode(159),n.expression);e.replaceNode(t,n.expression,r)}function f7(e,t){if(!Um(e))return bc(QY(e,t),(e=>kA(e)||aA(e)))}n7({errorCodes:_7,getCodeActions:function(e){const t=f7(e.sourceFile,e.span.start);if(void 0===t)return;const n=Xde.ChangeTracker.with(e,(n=>p7(n,e.sourceFile,t)));return[$8(d7,n,ws.Add_unknown_conversion_for_non_overlapping_types,d7,ws.Add_unknown_to_all_conversions_of_non_overlapping_types)]},fixIds:[d7],getAllCodeActions:e=>c7(e,_7,((e,t)=>{const n=f7(t.file,t.start);n&&p7(e,t.file,n)}))}),n7({errorCodes:[ws.await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module.code,ws.await_using_statements_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module.code,ws.for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module.code],getCodeActions:function(e){const{sourceFile:t}=e;return[X8("addEmptyExportDeclaration",Xde.ChangeTracker.with(e,(e=>{const n=oE.createExportDeclaration(void 0,!1,oE.createNamedExports([]),void 0);e.insertNodeAtEndOfScope(t,t,n)})),ws.Add_export_to_make_this_file_into_a_module)]}});var m7="addMissingAsync",h7=[ws.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,ws.Type_0_is_not_assignable_to_type_1.code,ws.Type_0_is_not_comparable_to_type_1.code];function g7(e,t,n,r){const i=n((n=>function(e,t,n,r){if(r&&r.has(Gz(n)))return;null==r||r.add(Gz(n));const i=oE.replaceModifiers(r$(n,!0),oE.createNodeArray(oE.createModifiersFromModifierFlags(1024|ib(n))));e.replaceNode(t,n,i)}(n,e.sourceFile,t,r)));return $8(m7,i,ws.Add_async_modifier_to_containing_function,m7,ws.Add_all_missing_async_modifiers)}function y7(e,t){if(!t)return;return bc(QY(e,t.start),(n=>n.getStart(e)<t.start||n.getEnd()>qa(t)?"quit":(uA(n)||vN(n)||lA(n)||tI(n))&&hX(t,PZ(n,e))))}n7({fixIds:[m7],errorCodes:h7,getCodeActions:function(e){const{sourceFile:t,errorCode:n,cancellationToken:r,program:i,span:o}=e,s=w(i.getTypeChecker().getDiagnostics(t,r),function(e,t){return({start:n,length:r,relatedInformation:i,code:o})=>ut(n)&&ut(r)&&hX({start:n,length:r},e)&&o===t&&!!i&&$(i,(e=>e.code===ws.Did_you_mean_to_mark_this_function_as_async.code))}(o,n)),a=y7(t,s&&s.relatedInformation&&w(s.relatedInformation,(e=>e.code===ws.Did_you_mean_to_mark_this_function_as_async.code)));if(!a)return;return[g7(e,a,(t=>Xde.ChangeTracker.with(e,t)))]},getAllCodeActions:e=>{const{sourceFile:t}=e,n=new Set;return c7(e,h7,((r,i)=>{const o=i.relatedInformation&&w(i.relatedInformation,(e=>e.code===ws.Did_you_mean_to_mark_this_function_as_async.code)),s=y7(t,o);if(!s)return;return g7(e,s,(e=>(e(r),[])),n)}))}});var v7="addMissingAwait",b7=ws.Property_0_does_not_exist_on_type_1.code,x7=[ws.This_expression_is_not_callable.code,ws.This_expression_is_not_constructable.code],S7=[ws.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type.code,ws.The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type.code,ws.The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type.code,ws.Operator_0_cannot_be_applied_to_type_1.code,ws.Operator_0_cannot_be_applied_to_types_1_and_2.code,ws.This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap.code,ws.This_condition_will_always_return_true_since_this_0_is_always_defined.code,ws.Type_0_is_not_an_array_type.code,ws.Type_0_is_not_an_array_type_or_a_string_type.code,ws.Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher.code,ws.Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator.code,ws.Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator.code,ws.Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator.code,ws.Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator.code,ws.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,b7,...x7];function T7(e,t,n,r,i){const o=e0(e,n);return o&&function(e,t,n,r,i){const o=i.getTypeChecker(),s=o.getDiagnostics(e,r);return $(s,(({start:e,length:r,relatedInformation:i,code:o})=>ut(e)&&ut(r)&&hX({start:e,length:r},n)&&o===t&&!!i&&$(i,(e=>e.code===ws.Did_you_forget_to_use_await.code))))}(e,t,n,r,i)&&C7(o)?o:void 0}function w7(e,t,n,r,i,o){const{sourceFile:s,program:a,cancellationToken:c}=e,l=function(e,t,n,r,i){const o=function(e,t){if(nA(e.parent)&&YC(e.parent.expression))return{identifiers:[e.parent.expression],isCompleteFix:!0};if(YC(e))return{identifiers:[e],isCompleteFix:!0};if(gA(e)){let n,r=!0;for(const i of[e.left,e.right]){const e=t.getTypeAtLocation(i);if(t.getPromisedTypeOfPromise(e)){if(!YC(i)){r=!1;continue}(n||(n=[])).push(i)}}return n&&{identifiers:n,isCompleteFix:r}}}(e,i);if(!o)return;let s,a=o.isCompleteFix;for(const c of o.identifiers){const e=i.getSymbolAtLocation(c);if(!e)continue;const o=dt(e.valueDeclaration,$A),l=o&&dt(o.name,YC),u=Mg(o,243);if(!o||!u||o.type||!o.initializer||u.getSourceFile()!==t||Kv(u,32)||!l||!C7(o.initializer)){a=!1;continue}const d=r.getSemanticDiagnostics(t,n);Ice.Core.eachSymbolReferenceInFile(l,i,t,(e=>c!==e&&!E7(e,d,t,i)))?a=!1:(s||(s=[])).push({expression:o.initializer,declarationSymbol:e})}return s&&{initializers:s,needsSecondPassForFixAll:!a}}(t,s,c,a,r);if(l){return X8("addMissingAwaitToInitializer",i((e=>{h(l.initializers,(({expression:t})=>N7(e,n,s,r,t,o))),o&&l.needsSecondPassForFixAll&&N7(e,n,s,r,t,o)})),1===l.initializers.length?[ws.Add_await_to_initializer_for_0,l.initializers[0].declarationSymbol.name]:ws.Add_await_to_initializers)}}function k7(e,t,n,r,i,o){const s=i((i=>N7(i,n,e.sourceFile,r,t,o)));return $8(v7,s,ws.Add_await,v7,ws.Fix_all_expressions_possibly_missing_await)}function E7(e,t,n,r){const i=nA(e.parent)?e.parent.name:gA(e.parent)?e.parent:e,o=w(t,(e=>e.start===i.getStart(n)&&e.start+e.length===i.getEnd()));return o&&A(S7,o.code)||1&r.getTypeAtLocation(i).flags}function C7(e){return 65536&e.flags||!!bc(e,(e=>e.parent&&uA(e.parent)&&e.parent.body===e||OA(e)&&(262===e.parent.kind||218===e.parent.kind||219===e.parent.kind||174===e.parent.kind)))}function N7(e,t,n,r,i,o){if(VA(i.parent)&&!i.parent.awaitModifier){const t=r.getTypeAtLocation(i),o=r.getAsyncIterableType();if(o&&r.isTypeAssignableTo(t,o)){const t=i.parent;return void e.replaceNode(n,t,oE.updateForOfStatement(t,oE.createToken(135),t.initializer,t.expression,t.statement))}}if(gA(i))for(const s of[i.left,i.right]){if(o&&YC(s)){const e=r.getSymbolAtLocation(s);if(e&&o.has(Qz(e)))continue}const t=r.getTypeAtLocation(s),i=r.getPromisedTypeOfPromise(t)?oE.createAwaitExpression(s):s;e.replaceNode(n,s,i)}else if(t===b7&&nA(i.parent)){if(o&&YC(i.parent.expression)){const e=r.getSymbolAtLocation(i.parent.expression);if(e&&o.has(Qz(e)))return}e.replaceNode(n,i.parent.expression,oE.createParenthesizedExpression(oE.createAwaitExpression(i.parent.expression))),A7(e,i.parent.expression,n)}else if(A(x7,t)&&Hu(i.parent)){if(o&&YC(i)){const e=r.getSymbolAtLocation(i);if(e&&o.has(Qz(e)))return}e.replaceNode(n,i,oE.createParenthesizedExpression(oE.createAwaitExpression(i))),A7(e,i,n)}else{if(o&&$A(i.parent)&&YC(i.parent.name)){const e=r.getSymbolAtLocation(i.parent.name);if(e&&!Q(o,Qz(e)))return}e.replaceNode(n,i,oE.createAwaitExpression(i))}}function A7(e,t,n){const r=eZ(t.pos,n);r&&F$(r.end,r.parent,n)&&e.insertText(n,t.getStart(n),";")}n7({fixIds:[v7],errorCodes:S7,getCodeActions:function(e){const{sourceFile:t,errorCode:n,span:r,cancellationToken:i,program:o}=e,s=T7(t,n,r,i,o);if(!s)return;const a=e.program.getTypeChecker(),c=t=>Xde.ChangeTracker.with(e,t);return ue([w7(e,s,n,a,c),k7(e,s,n,a,c)])},getAllCodeActions:e=>{const{sourceFile:t,program:n,cancellationToken:r}=e,i=e.program.getTypeChecker(),o=new Set;return c7(e,S7,((s,a)=>{const c=T7(t,a.code,a,r,n);if(!c)return;const l=e=>(e(s),[]);return w7(e,c,a.code,i,l,o)||k7(e,c,a.code,i,l,o)}))}});var I7="addMissingConst",D7=[ws.Cannot_find_name_0.code,ws.No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer.code];function P7(e,t,n,r,i){const o=QY(t,n),s=bc(o,(e=>ld(e.parent)?e.parent.initializer===e:!function(e){switch(e.kind){case 80:case 209:case 210:case 303:case 304:return!0;default:return!1}}(e)&&"quit"));if(s)return M7(e,s,t,i);const a=o.parent;if(gA(a)&&64===a.operatorToken.kind&&LA(a.parent))return M7(e,o,t,i);if(eA(a)){const n=r.getTypeChecker();if(!T(a.elements,(e=>function(e,t){const n=YC(e)?e:bb(e,!0)&&YC(e.left)?e.left:void 0;return!!n&&!t.getSymbolAtLocation(n)}(e,n))))return;return M7(e,a,t,i)}const c=bc(o,(e=>!!LA(e.parent)||!function(e){switch(e.kind){case 80:case 226:case 28:return!0;default:return!1}}(e)&&"quit"));if(c){if(!O7(c,r.getTypeChecker()))return;return M7(e,c,t,i)}}function M7(e,t,n,r){r&&!Q(r,t)||e.insertModifierBefore(n,87,t)}function O7(e,t){return!!gA(e)&&(28===e.operatorToken.kind?T([e.left,e.right],(e=>O7(e,t))):64===e.operatorToken.kind&&YC(e.left)&&!t.getSymbolAtLocation(e.left))}n7({errorCodes:D7,getCodeActions:function(e){const t=Xde.ChangeTracker.with(e,(t=>P7(t,e.sourceFile,e.span.start,e.program)));if(t.length>0)return[$8(I7,t,ws.Add_const_to_unresolved_variable,I7,ws.Add_const_to_all_unresolved_variables)]},fixIds:[I7],getAllCodeActions:e=>{const t=new Set;return c7(e,D7,((n,r)=>P7(n,r.file,r.start,e.program,t)))}});var F7="addMissingDeclareProperty",R7=[ws.Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_add_a_declare_modifier_or_remove_the_redundant_declaration.code];function L7(e,t,n,r){const i=QY(t,n);if(!YC(i))return;const o=i.parent;172!==o.kind||r&&!Q(r,o)||e.insertModifierBefore(t,138,o)}n7({errorCodes:R7,getCodeActions:function(e){const t=Xde.ChangeTracker.with(e,(t=>L7(t,e.sourceFile,e.span.start)));if(t.length>0)return[$8(F7,t,ws.Prefix_with_declare,F7,ws.Prefix_all_incorrect_property_declarations_with_declare)]},fixIds:[F7],getAllCodeActions:e=>{const t=new Set;return c7(e,R7,((e,n)=>L7(e,n.file,n.start,t)))}});var j7="addMissingInvocationForDecorator",z7=[ws._0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0.code];function U7(e,t,n){const r=bc(QY(t,n),mN);Tn.assert(!!r,"Expected position to be owned by a decorator.");const i=oE.createCallExpression(r.expression,void 0,void 0);e.replaceNode(t,r.expression,i)}n7({errorCodes:z7,getCodeActions:function(e){const t=Xde.ChangeTracker.with(e,(t=>U7(t,e.sourceFile,e.span.start)));return[$8(j7,t,ws.Call_decorator_expression,j7,ws.Add_to_all_uncalled_decorators)]},fixIds:[j7],getAllCodeActions:e=>c7(e,z7,((e,t)=>U7(e,t.file,t.start)))});var B7="addNameToNamelessParameter",q7=[ws.Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1.code];function V7(e,t,n){const r=QY(t,n),i=r.parent;if(!fN(i))return Tn.fail("Tried to add a parameter name to a non-parameter: "+Tn.formatSyntaxKind(r.kind));const o=i.parent.parameters.indexOf(i);Tn.assert(!i.type,"Tried to add a parameter name to a parameter that already had one."),Tn.assert(o>-1,"Parameter not found in parent parameter list.");let s=i.name.getEnd(),a=oE.createTypeReferenceNode(i.name,void 0),c=K7(t,i);for(;c;)a=oE.createArrayTypeNode(a),s=c.getEnd(),c=K7(t,c);const l=oE.createParameterDeclaration(i.modifiers,i.dotDotDotToken,"arg"+o,i.questionToken,i.dotDotDotToken&&!MN(a)?oE.createArrayTypeNode(a):a,i.initializer);e.replaceRange(t,Yb(i.getStart(t),s),l)}function K7(e,t){const n=$Y(t.name,t.parent,e);if(n&&23===n.kind&&XN(n.parent)&&fN(n.parent.parent))return n.parent.parent}n7({errorCodes:q7,getCodeActions:function(e){const t=Xde.ChangeTracker.with(e,(t=>V7(t,e.sourceFile,e.span.start)));return[$8(B7,t,ws.Add_parameter_name,B7,ws.Add_names_to_all_parameters_without_names)]},fixIds:[B7],getAllCodeActions:e=>c7(e,q7,((e,t)=>V7(e,t.file,t.start)))});var J7="addOptionalPropertyUndefined";function W7(e,t){var n;if(e){if(gA(e.parent)&&64===e.parent.operatorToken.kind)return{source:e.parent.right,target:e.parent.left};if($A(e.parent)&&e.parent.initializer)return{source:e.parent.initializer,target:e.parent.name};if(iA(e.parent)){const n=t.getSymbolAtLocation(e.parent.expression);if(!(null==n?void 0:n.valueDeclaration)||!yu(n.valueDeclaration.kind))return;if(!td(e))return;const r=e.parent.arguments.indexOf(e);if(-1===r)return;const i=n.valueDeclaration.parameters[r].name;if(YC(i))return{source:e,target:i}}else if(WI(e.parent)&&YC(e.parent.name)||HI(e.parent)){const r=W7(e.parent.parent,t);if(!r)return;const i=t.getPropertyOfType(t.getTypeAtLocation(r.target),e.parent.name.text),o=null==(n=null==i?void 0:i.declarations)?void 0:n[0];if(!o)return;return{source:WI(e.parent)?e.parent.initializer:e.parent.name,target:o}}}}n7({errorCodes:[ws.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target.code,ws.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties.code,ws.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties.code],getCodeActions(e){const t=e.program.getTypeChecker(),n=function(e,t,n){var r,i;const o=W7(e0(e,t),n);if(!o)return _;const{source:s,target:a}=o,c=function(e,t,n){return nA(t)&&!!n.getExactOptionalProperties(n.getTypeAtLocation(t.expression)).length&&n.getTypeAtLocation(e)===n.getUndefinedType()}(s,a,n)?n.getTypeAtLocation(a.expression):n.getTypeAtLocation(a);if(null==(i=null==(r=c.symbol)?void 0:r.declarations)?void 0:i.some((e=>C_(e).fileName.match(/\.d\.ts$/))))return _;return n.getExactOptionalProperties(c)}(e.sourceFile,e.span,t);if(!n.length)return;const r=Xde.ChangeTracker.with(e,(e=>function(e,t){for(const n of t){const t=n.valueDeclaration;if(t&&(hN(t)||gN(t))&&t.type){const n=oE.createUnionTypeNode([...192===t.type.kind?t.type.types:[t.type],oE.createTypeReferenceNode("undefined")]);e.replaceNode(t.getSourceFile(),t.type,n)}}}(e,n)));return[X8(J7,r,ws.Add_undefined_to_optional_property_type)]},fixIds:[J7]});var H7="annotateWithTypeFromJSDoc",G7=[ws.JSDoc_types_may_be_moved_to_TypeScript_types.code];function Q7(e,t){const n=QY(e,t);return dt(fN(n.parent)?n.parent.parent:n.parent,Y7)}function Y7(e){return function(e){return mu(e)||260===e.kind||171===e.kind||172===e.kind}(e)&&Z7(e)}function Z7(e){return mu(e)?e.parameters.some(Z7)||!e.type&&!!_l(e):!e.type&&!!dl(e)}function X7(e,t,n){if(mu(n)&&(_l(n)||n.parameters.some((e=>!!dl(e))))){if(!n.typeParameters){const r=Dv(n);r.length&&e.insertTypeParameters(t,n,r)}const r=uA(n)&&!FY(n,21,t);r&&e.insertNodeBefore(t,Ee(n.parameters),oE.createToken(21));for(const i of n.parameters)if(!i.type){const n=dl(i);n&&e.tryInsertTypeAnnotation(t,i,iU(n,$7,Du))}if(r&&e.insertNodeAfter(t,Ae(n.parameters),oE.createToken(22)),!n.type){const r=_l(n);r&&e.tryInsertTypeAnnotation(t,n,iU(r,$7,Du))}}else{const r=Tn.checkDefined(dl(n),"A JSDocType for this declaration should exist");Tn.assert(!n.type,"The JSDocType decl should have a type"),e.tryInsertTypeAnnotation(t,n,iU(r,$7,Du))}}function $7(e){switch(e.kind){case 312:case 313:return oE.createTypeReferenceNode("any",_);case 316:return function(e){return oE.createUnionTypeNode([iU(e.type,$7,Du),oE.createTypeReferenceNode("undefined",_)])}(e);case 315:return $7(e.type);case 314:return function(e){return oE.createUnionTypeNode([iU(e.type,$7,Du),oE.createTypeReferenceNode("null",_)])}(e);case 318:return function(e){return oE.createArrayTypeNode(iU(e.type,$7,Du))}(e);case 317:return function(e){return oE.createFunctionTypeNode(_,e.parameters.map(e9),e.type??oE.createKeywordTypeNode(133))}(e);case 183:return function(e){let t=e.typeName,n=e.typeArguments;if(YC(e.typeName)){if(Km(e))return function(e){const t=oE.createParameterDeclaration(void 0,void 0,150===e.typeArguments[0].kind?"n":"s",void 0,oE.createTypeReferenceNode(150===e.typeArguments[0].kind?"number":"string",[]),void 0),n=oE.createTypeLiteralNode([oE.createIndexSignature(void 0,[t],e.typeArguments[1])]);return dE(n,1),n}(e);let r=e.typeName.text;switch(e.typeName.text){case"String":case"Boolean":case"Object":case"Number":r=r.toLowerCase();break;case"array":case"date":case"promise":r=r[0].toUpperCase()+r.slice(1)}t=oE.createIdentifier(r),n="Array"!==r&&"Promise"!==r||e.typeArguments?oU(e.typeArguments,$7,Du):oE.createNodeArray([oE.createTypeReferenceNode("any",_)])}return oE.createTypeReferenceNode(t,n)}(e);case 322:return function(e){const t=oE.createTypeLiteralNode(R(e.jsDocPropertyTags,(e=>oE.createPropertySignature(void 0,YC(e.name)?e.name:e.name.right,ak(e)?oE.createToken(58):void 0,e.typeExpression&&iU(e.typeExpression.type,$7,Du)||oE.createKeywordTypeNode(133)))));return dE(t,1),t}(e);default:const t=fU(e,$7,void 0);return dE(t,1),t}}function e9(e){const t=e.parent.parameters.indexOf(e),n=318===e.type.kind&&t===e.parent.parameters.length-1,r=e.name||(n?"rest":"arg"+t),i=n?oE.createToken(26):e.dotDotDotToken;return oE.createParameterDeclaration(e.modifiers,i,r,e.questionToken,iU(e.type,$7,Du),e.initializer)}n7({errorCodes:G7,getCodeActions(e){const t=Q7(e.sourceFile,e.span.start);if(!t)return;const n=Xde.ChangeTracker.with(e,(n=>X7(n,e.sourceFile,t)));return[$8(H7,n,ws.Annotate_with_type_from_JSDoc,H7,ws.Annotate_everything_with_types_from_JSDoc)]},fixIds:[H7],getAllCodeActions:e=>c7(e,G7,((e,t)=>{const n=Q7(t.file,t.start);n&&X7(e,t.file,n)}))});var t9="convertFunctionToEs6Class",n9=[ws.This_constructor_function_may_be_converted_to_a_class_declaration.code];function r9(e,t,n,r,i,o){const s=r.getSymbolAtLocation(QY(t,n));if(!(s&&s.valueDeclaration&&19&s.flags))return;const a=s.valueDeclaration;if(tI(a)||lA(a))e.replaceNode(t,a,function(e){const t=c(s);e.body&&t.unshift(oE.createConstructorDeclaration(void 0,e.parameters,e.body));const n=i9(e,95);return oE.createClassDeclaration(n,e.name,void 0,void 0,t)}(a));else if($A(a)){const n=function(e){const t=e.initializer;if(!t||!lA(t)||!YC(e.name))return;const n=c(e.symbol);t.body&&n.unshift(oE.createConstructorDeclaration(void 0,t.parameters,t.body));const r=i9(e.parent.parent,95);return oE.createClassDeclaration(r,e.name,void 0,void 0,n)}(a);if(!n)return;const r=a.parent.parent;eI(a.parent)&&a.parent.declarations.length>1?(e.delete(t,a),e.insertNodeAfter(t,r,n)):e.replaceNode(t,r,n)}function c(n){const r=[];return n.exports&&n.exports.forEach((e=>{if("prototype"===e.name&&e.declarations){const t=e.declarations[0];if(1===e.declarations.length&&nA(t)&&gA(t.parent)&&64===t.parent.operatorToken.kind&&tA(t.parent.right)){s(t.parent.right.symbol,void 0,r)}}else s(e,[oE.createToken(126)],r)})),n.members&&n.members.forEach(((i,o)=>{var a,c,l,u;if("constructor"===o&&i.valueDeclaration){const r=null==(u=null==(l=null==(c=null==(a=n.exports)?void 0:a.get("prototype"))?void 0:c.declarations)?void 0:l[0])?void 0:u.parent;r&&gA(r)&&tA(r.right)&&$(r.right.properties,o9)||e.delete(t,i.valueDeclaration.parent)}else s(i,void 0,r)})),r;function s(n,r,s){if(!(8192&n.flags||4096&n.flags))return;const a=n.valueDeclaration,c=a.parent,l=c.right;if(d=l,!(Bx(u=a)?nA(u)&&o9(u)||pu(d):T(u.properties,(e=>!!(vN(e)||Tl(e)||WI(e)&&lA(e.initializer)&&e.name||o9(e))))))return;var u,d;if($(s,(e=>{const t=Oc(e);return!(!t||!YC(t)||kc(t)!==Cc(n))})))return;const _=c.parent&&244===c.parent.kind?c.parent:c;if(e.delete(t,_),l)if(Bx(a)&&(lA(l)||uA(l))){const e=iX(t,i),n=function(e,t,n){if(nA(e))return e.name;const r=e.argumentExpression;if(DC(r))return r;if(Hd(r))return Aa(r.text,MS(t))?oE.createIdentifier(r.text):RC(r)?oE.createStringLiteral(r.text,0===n):r;return}(a,o,e);n&&p(s,l,n)}else{if(!tA(l)){if(jm(t))return;if(!nA(a))return;const e=oE.createPropertyDeclaration(r,a.name,void 0,void 0,l);return h$(c.parent,e,t),void s.push(e)}h(l.properties,(e=>{(vN(e)||Tl(e))&&s.push(e),WI(e)&&lA(e.initializer)&&p(s,e.initializer,e.name),o9(e)}))}else s.push(oE.createPropertyDeclaration(r,n.name,void 0,void 0,void 0));function p(e,n,i){return lA(n)?function(e,n,i){const o=te(r,i9(n,134)),s=oE.createMethodDeclaration(o,void 0,i,void 0,void 0,n.parameters,void 0,n.body);return h$(c,s,t),void e.push(s)}(e,n,i):function(e,n,i){const o=n.body;let s;s=241===o.kind?o:oE.createBlock([oE.createReturnStatement(o)]);const a=te(r,i9(n,134)),l=oE.createMethodDeclaration(a,void 0,i,void 0,void 0,n.parameters,void 0,s);h$(c,l,t),e.push(l)}(e,n,i)}}}}function i9(e,t){return bM(e)?M(e.modifiers,(e=>e.kind===t)):void 0}function o9(e){return!!e.name&&!(!YC(e.name)||"constructor"!==e.name.text)}n7({errorCodes:n9,getCodeActions(e){const t=Xde.ChangeTracker.with(e,(t=>r9(t,e.sourceFile,e.span.start,e.program.getTypeChecker(),e.preferences,e.program.getCompilerOptions())));return[$8(t9,t,ws.Convert_function_to_an_ES2015_class,t9,ws.Convert_all_constructor_functions_to_classes)]},fixIds:[t9],getAllCodeActions:e=>c7(e,n9,((t,n)=>r9(t,n.file,n.start,e.program.getTypeChecker(),e.preferences,e.program.getCompilerOptions())))});var s9="convertToAsyncFunction",a9=[ws.This_may_be_converted_to_an_async_function.code],c9=!0;function l9(e,t,n,r){const i=QY(t,n);let o;if(o=YC(i)&&$A(i.parent)&&i.parent.initializer&&mu(i.parent.initializer)?i.parent.initializer:dt(nm(QY(t,n)),Z1),!o)return;const s=new Map,a=Um(o),c=function(e,t){if(!e.body)return new Set;const n=new Set;return GM(e.body,(function e(r){u9(r,t,"then")?(n.add(Gz(r)),h(r.arguments,e)):u9(r,t,"catch")||u9(r,t,"finally")?(n.add(Gz(r)),GM(r,e)):p9(r,t)?n.add(Gz(r)):GM(r,e)})),n}(o,r),l=function(e,t,n){const r=new Map,i=nt();return GM(e,(function e(o){if(!YC(o))return void GM(o,e);const s=t.getSymbolAtLocation(o);if(s){const e=E9(t.getTypeAtLocation(o),t),a=Qz(s).toString();if(!e||fN(o.parent)||mu(o.parent)||n.has(a)){if(o.parent&&(fN(o.parent)||$A(o.parent)||$N(o.parent))){const e=o.text,t=i.get(e);if(t&&t.some((e=>e!==s))){const t=f9(o,i);r.set(a,t.identifier),n.set(a,t),i.add(e,s)}else{const t=r$(o);n.set(a,I9(t)),i.add(e,s)}}}else{const t=we(e.parameters),r=(null==t?void 0:t.valueDeclaration)&&fN(t.valueDeclaration)&&dt(t.valueDeclaration.name,YC)||oE.createUniqueName("result",16),o=f9(r,i);n.set(a,o),i.add(r.text,s)}}})),i$(e,!0,(e=>{if($N(e)&&YC(e.name)&&ZN(e.parent)){const n=t.getSymbolAtLocation(e.name),i=n&&r.get(String(Qz(n)));if(i&&i.text!==(e.name||e.propertyName).getText())return oE.createBindingElement(e.dotDotDotToken,e.propertyName||e.name,i,e.initializer)}else if(YC(e)){const n=t.getSymbolAtLocation(e),i=n&&r.get(String(Qz(n)));if(i)return oE.createIdentifier(i.text)}}))}(o,r,s);if(!K1(l,r))return;const u=l.body&&OA(l.body)?function(e,t){const n=[];return Of(e,(e=>{J1(e,t)&&n.push(e)})),n}(l.body,r):_,d={checker:r,synthNamesMap:s,setOfExpressionsToReturn:c,isInJSFile:a};if(!u.length)return;const p=da(t.text,ex(o).pos);e.insertModifierAt(t,p,134,{suffix:" "});for(const _ of u)if(GM(_,(function n(r){if(iA(r)){const n=g9(r,r,d,!1);if(m9())return!0;e.replaceNodeWithNodes(t,_,n)}else if(!pu(r)&&(GM(r,n),m9()))return!0})),m9())return}function u9(e,t,n){if(!iA(e))return!1;const r=iY(e,n)&&t.getTypeAtLocation(e);return!(!r||!t.getPromisedTypeOfPromise(r))}function d9(e,t){return!!(4&Mx(e))&&e.target===t}function _9(e,t,n){if("finally"===e.expression.name.escapedText)return;const r=n.getTypeAtLocation(e.expression.expression);if(d9(r,n.getPromiseType())||d9(r,n.getPromiseLikeType())){if("then"!==e.expression.name.escapedText)return Te(e.typeArguments,0);if(t===Te(e.arguments,0))return Te(e.typeArguments,0);if(t===Te(e.arguments,1))return Te(e.typeArguments,1)}}function p9(e,t){return!!td(e)&&!!t.getPromisedTypeOfPromise(t.getTypeAtLocation(e))}function f9(e,t){const n=(t.get(e.text)||_).length;return I9(0===n?e:oE.createIdentifier(e.text+"_"+n))}function m9(){return!c9}function h9(){return c9=!1,_}function g9(e,t,n,r,i){if(u9(t,n.checker,"then"))return function(e,t,n,r,i,o){if(!t||y9(r,t))return x9(e,n,r,i,o);if(n&&!y9(r,n))return h9();const s=N9(t,r),a=g9(e.expression.expression,e.expression.expression,r,!0,s);if(m9())return h9();const c=w9(t,i,o,s,e,r);return m9()?h9():te(a,c)}(t,Te(t.arguments,0),Te(t.arguments,1),n,r,i);if(u9(t,n.checker,"catch"))return x9(t,Te(t.arguments,0),n,r,i);if(u9(t,n.checker,"finally"))return function(e,t,n,r,i){if(!t||y9(n,t))return g9(e,e.expression.expression,n,r,i);const o=v9(e,n,i),s=g9(e,e.expression.expression,n,!0,o);if(m9())return h9();const a=w9(t,r,void 0,void 0,e,n);if(m9())return h9();const c=oE.createBlock(s),l=oE.createBlock(a),u=oE.createTryStatement(c,void 0,l);return b9(e,n,u,o,i)}(t,Te(t.arguments,0),n,r,i);if(nA(t))return g9(e,t.expression,n,r,i);const o=n.checker.getTypeAtLocation(t);return o&&n.checker.getPromisedTypeOfPromise(o)?(Tn.assertNode(vc(t).parent,nA),function(e,t,n,r,i){if(R9(e,n)){let e=r$(t);return r&&(e=oE.createAwaitExpression(e)),[oE.createReturnStatement(e)]}return S9(i,oE.createAwaitExpression(t),void 0)}(e,t,n,r,i)):h9()}function y9({checker:e},t){if(106===t.kind)return!0;if(YC(t)&&!tu(t)&&"undefined"===kc(t)){const n=e.getSymbolAtLocation(t);return!n||e.isUndefinedSymbol(n)}return!1}function v9(e,t,n){let r;return n&&!R9(e,t)&&(F9(n)?(r=n,t.synthNamesMap.forEach(((e,r)=>{if(e.identifier.text===n.identifier.text){const e=(i=n,I9(oE.createUniqueName(i.identifier.text,16)));t.synthNamesMap.set(r,e)}var i}))):r=I9(oE.createUniqueName("result",16),n.types),O9(r)),r}function b9(e,t,n,r,i){const o=[];let s;if(r&&!R9(e,t)){s=r$(O9(r));const e=r.types,n=t.checker.getUnionType(e,2),i=t.isInJSFile?void 0:t.checker.typeToTypeNode(n,void 0,void 0),a=[oE.createVariableDeclaration(s,void 0,i)],c=oE.createVariableStatement(void 0,oE.createVariableDeclarationList(a,1));o.push(c)}return o.push(n),i&&s&&1===i.kind&&o.push(oE.createVariableStatement(void 0,oE.createVariableDeclarationList([oE.createVariableDeclaration(r$(M9(i)),void 0,void 0,s)],2))),o}function x9(e,t,n,r,i){if(!t||y9(n,t))return g9(e,e.expression.expression,n,r,i);const o=N9(t,n),s=v9(e,n,i),a=g9(e,e.expression.expression,n,!0,s);if(m9())return h9();const c=w9(t,r,s,o,e,n);if(m9())return h9();const l=oE.createBlock(a),u=oE.createCatchClause(o&&r$(P9(o)),oE.createBlock(c));return b9(e,n,oE.createTryStatement(l,u,void 0),s,i)}function S9(e,t,n){return!e||A9(e)?[oE.createExpressionStatement(t)]:F9(e)&&e.hasBeenDeclared?[oE.createExpressionStatement(oE.createAssignment(r$(D9(e)),t))]:[oE.createVariableStatement(void 0,oE.createVariableDeclarationList([oE.createVariableDeclaration(r$(P9(e)),void 0,n,t)],2))]}function T9(e,t){if(t&&e){const n=oE.createUniqueName("result",16);return[...S9(I9(n),e,t),oE.createReturnStatement(n)]}return[oE.createReturnStatement(e)]}function w9(e,t,n,r,i,o){var s;switch(e.kind){case 106:break;case 211:case 80:if(!r)break;const a=oE.createCallExpression(r$(e),void 0,F9(r)?[D9(r)]:[]);if(R9(i,o))return T9(a,_9(i,e,o.checker));const c=o.checker.getTypeAtLocation(e),l=o.checker.getSignaturesOfType(c,0);if(!l.length)return h9();const u=l[0].getReturnType(),d=S9(n,oE.createAwaitExpression(a),_9(i,e,o.checker));return n&&n.types.push(o.checker.getAwaitedType(u)||u),d;case 218:case 219:{const r=e.body,a=null==(s=E9(o.checker.getTypeAtLocation(e),o.checker))?void 0:s.getReturnType();if(OA(r)){let s=[],c=!1;for(const l of r.statements)if(WA(l))if(c=!0,J1(l,o.checker))s=s.concat(C9(o,l,t,n));else{const t=a&&l.expression?k9(o.checker,a,l.expression):l.expression;s.push(...T9(t,_9(i,e,o.checker)))}else{if(t&&Of(l,mt))return h9();s.push(l)}return R9(i,o)?s.map((e=>r$(e))):function(e,t,n,r){const i=[];for(const o of e)if(WA(o)){if(o.expression){const e=p9(o.expression,n.checker)?oE.createAwaitExpression(o.expression):o.expression;void 0===t?i.push(oE.createExpressionStatement(e)):F9(t)&&t.hasBeenDeclared?i.push(oE.createExpressionStatement(oE.createAssignment(D9(t),e))):i.push(oE.createVariableStatement(void 0,oE.createVariableDeclarationList([oE.createVariableDeclaration(P9(t),void 0,void 0,e)],2)))}}else i.push(r$(o));r||void 0===t||i.push(oE.createVariableStatement(void 0,oE.createVariableDeclarationList([oE.createVariableDeclaration(P9(t),void 0,void 0,oE.createIdentifier("undefined"))],2)));return i}(s,n,o,c)}{const s=W1(r,o.checker)?C9(o,oE.createReturnStatement(r),t,n):_;if(s.length>0)return s;if(a){const t=k9(o.checker,a,r);if(R9(i,o))return T9(t,_9(i,e,o.checker));{const e=S9(n,t,void 0);return n&&n.types.push(o.checker.getAwaitedType(a)||a),e}}return h9()}}default:return h9()}return _}function k9(e,t,n){const r=r$(n);return e.getPromisedTypeOfPromise(t)?oE.createAwaitExpression(r):r}function E9(e,t){return Ne(t.getSignaturesOfType(e,0))}function C9(e,t,n,r){let i=[];return GM(t,(function t(o){if(iA(o)){const t=g9(o,o,e,n,r);if(i=i.concat(t),i.length>0)return}else pu(o)||GM(o,t)})),i}function N9(e,t){const n=[];let r;if(mu(e)){if(e.parameters.length>0){r=function e(t){if(YC(t))return i(t);const n=U(t.elements,(t=>TA(t)?[]:[e(t.name)]));return function(e,t=_,n=[]){return{kind:1,bindingPattern:e,elements:t,types:n}}(t,n)}(e.parameters[0].name)}}else YC(e)?r=i(e):nA(e)&&YC(e.name)&&(r=i(e.name));if(r&&(!("identifier"in r)||"undefined"!==r.identifier.text))return r;function i(e){var r;const i=function(e){var n;return(null==(n=dt(e,yd))?void 0:n.symbol)??t.checker.getSymbolAtLocation(e)}((r=e).original?r.original:r);if(!i)return I9(e,n);return t.synthNamesMap.get(Qz(i).toString())||I9(e,n)}}function A9(e){return!e||(F9(e)?!e.identifier.text:T(e.elements,A9))}function I9(e,t=[]){return{kind:0,identifier:e,types:t,hasBeenDeclared:!1,hasBeenReferenced:!1}}function D9(e){return e.hasBeenReferenced=!0,e.identifier}function P9(e){return F9(e)?O9(e):M9(e)}function M9(e){for(const t of e.elements)P9(t);return e.bindingPattern}function O9(e){return e.hasBeenDeclared=!0,e.identifier}function F9(e){return 0===e.kind}function R9(e,t){return!!e.original&&t.setOfExpressionsToReturn.has(Gz(e.original))}function L9(e,t,n,r,i){var o;for(const s of e.imports){const a=null==(o=n.getResolvedModuleFromModuleSpecifier(s,e))?void 0:o.resolvedModule;if(!a||a.resolvedFileName!==t.fileName)continue;const c=Nh(s);switch(c.kind){case 271:r.replaceNode(e,c,eX(c.name,void 0,s,i));break;case 213:Jm(c,!1)&&r.replaceNode(e,c,oE.createPropertyAccessExpression(r$(c),"default"))}}}function j9(e,t){e.forEachChild((function n(r){if(nA(r)&&Zj(e,r.expression)&&YC(r.name)){const{parent:e}=r;t(r,gA(e)&&e.left===r&&64===e.operatorToken.kind)}r.forEachChild(n)}))}function z9(e,t,n,r,i,o,s,a,c){switch(t.kind){case 243:return U9(e,t,r,n,i,o,c),!1;case 244:{const{expression:i}=t;switch(i.kind){case 213:return Jm(i,!0)&&r.replaceNode(e,t,eX(void 0,void 0,i.arguments[0],c)),!1;case 226:{const{operatorToken:t}=i;return 64===t.kind&&function(e,t,n,r,i,o){const{left:s,right:a}=n;if(!nA(s))return!1;if(Zj(e,s)){if(!Zj(e,a)){const i=tA(a)?function(e,t){const n=K(e.properties,(e=>{switch(e.kind){case 177:case 178:case 304:case 305:return;case 303:return YC(e.name)?function(e,t,n){const r=[oE.createToken(95)];switch(t.kind){case 218:{const{name:n}=t;if(n&&n.text!==e)return i()}case 219:return H9(e,r,t,n);case 231:return function(e,t,n,r){return oE.createClassDeclaration(te(t,s$(n.modifiers)),e,s$(n.typeParameters),s$(n.heritageClauses),V9(n.members,r))}(e,r,t,n);default:return i()}function i(){return Y9(r,oE.createIdentifier(e),V9(t,n))}}(e.name.text,e.initializer,t):void 0;case 174:return YC(e.name)?H9(e.name.text,[oE.createToken(95)],e,t):void 0;default:Tn.assertNever(e,`Convert to ES6 got invalid prop kind ${e.kind}`)}}));return n&&[n,!1]}(a,o):Jm(a,!0)?function(e,t){const n=e.text,r=t.getSymbolAtLocation(e),i=r?r.exports:p;return i.has("export=")?[[q9(n)],!0]:i.has("default")?i.size>1?[[B9(n),q9(n)],!0]:[[q9(n)],!0]:[[B9(n)],!1]}(a.arguments[0],t):void 0;return i?(r.replaceNodeWithNodes(e,n.parent,i[0]),i[1]):(r.replaceRangeWithText(e,Yb(s.getStart(e),a.pos),"export default"),!0)}r.delete(e,n.parent)}else Zj(e,s.expression)&&function(e,t,n,r){const{text:i}=t.left.name,o=r.get(i);if(void 0!==o){const r=[Y9(void 0,o,t.right),Z9([oE.createExportSpecifier(!1,o,i)])];n.replaceNodeWithNodes(e,t.parent,r)}else!function({left:e,right:t,parent:n},r,i){const o=e.name.text;if(!(lA(t)||uA(t)||SA(t))||t.name&&t.name.text!==o)i.replaceNodeRangeWithNodes(r,e.expression,FY(e,25,r),[oE.createToken(95),oE.createToken(87)],{joiner:" ",suffix:" "});else{i.replaceRange(r,{pos:e.getStart(r),end:t.getStart(r)},oE.createToken(95),{suffix:" "}),t.name||i.insertName(r,t,o);const s=FY(n,27,r);s&&i.delete(r,s)}}(t,e,n)}(e,n,r,i);return!1}(e,n,i,r,s,a)}}}default:return!1}}function U9(e,t,n,r,i,o,s){const{declarationList:a}=t;let c=!1;const l=R(a.declarations,(t=>{const{name:n,initializer:l}=t;if(l){if(Zj(e,l))return c=!0,X9([]);if(Jm(l,!0))return c=!0,function(e,t,n,r,i,o){switch(e.kind){case 206:{const n=K(e.elements,(e=>e.dotDotDotToken||e.initializer||e.propertyName&&!YC(e.propertyName)||!YC(e.name)?void 0:Q9(e.propertyName&&e.propertyName.text,e.name.text)));if(n)return X9([eX(void 0,n,t,o)])}case 207:{const n=K9(l0(t.text,i),r);return X9([eX(oE.createIdentifier(n),void 0,t,o),Y9(void 0,r$(e),oE.createIdentifier(n))])}case 80:return function(e,t,n,r,i){const o=n.getSymbolAtLocation(e),s=new Map;let a,c=!1;for(const u of r.original.get(e.text)){if(n.getSymbolAtLocation(u)!==o||u===e)continue;const{parent:t}=u;if(nA(t)){const{name:{text:e}}=t;if("default"===e){c=!0;const e=u.getText();(a??(a=new Map)).set(t,oE.createIdentifier(e))}else{Tn.assert(t.expression===u,"Didn't expect expression === use");let n=s.get(e);void 0===n&&(n=K9(e,r),s.set(e,n)),(a??(a=new Map)).set(t,oE.createIdentifier(n))}}else c=!0}const l=0===s.size?void 0:Ke(L(s.entries(),(([e,t])=>oE.createImportSpecifier(!1,e===t?void 0:oE.createIdentifier(e),oE.createIdentifier(t)))));l||(c=!0);return X9([eX(c?r$(e):void 0,l,t,i)],a)}(e,t,n,r,o);default:return Tn.assertNever(e,`Convert to ES module got invalid name kind ${e.kind}`)}}(n,l.arguments[0],r,i,o,s);if(nA(l)&&Jm(l.expression,!0))return c=!0,function(e,t,n,r,i){switch(e.kind){case 206:case 207:{const o=K9(t,r);return X9([G9(o,t,n,i),Y9(void 0,e,oE.createIdentifier(o))])}case 80:return X9([G9(e.text,t,n,i)]);default:return Tn.assertNever(e,`Convert to ES module got invalid syntax form ${e.kind}`)}}(n,l.name.text,l.expression.arguments[0],i,s)}return X9([oE.createVariableStatement(void 0,oE.createVariableDeclarationList([t],a.flags))])}));if(c){let r;return n.replaceNodeWithNodes(e,t,U(l,(e=>e.newImports))),h(l,(e=>{e.useSitesToUnqualify&&h_(e.useSitesToUnqualify,r??(r=new Map))})),r}}function B9(e){return Z9(void 0,e)}function q9(e){return Z9([oE.createExportSpecifier(!1,void 0,"default")],e)}function V9(e,t){return t&&$(Ke(t.keys()),(t=>xY(e,t)))?at(e)?a$(e,!0,n):i$(e,!0,n):e;function n(e){if(211===e.kind){const n=t.get(e);return t.delete(e),n}}}function K9(e,t){for(;t.original.has(e)||t.additional.has(e);)e=`_${e}`;return t.additional.add(e),e}function J9(e){const t=nt();return W9(e,(e=>t.add(e.text,e))),t}function W9(e,t){YC(e)&&function(e){const{parent:t}=e;switch(t.kind){case 211:return t.name!==e;case 208:case 276:return t.propertyName!==e;default:return!0}}(e)&&t(e),e.forEachChild((e=>W9(e,t)))}function H9(e,t,n,r){return oE.createFunctionDeclaration(te(t,s$(n.modifiers)),r$(n.asteriskToken),e,s$(n.typeParameters),s$(n.parameters),r$(n.type),oE.converters.convertToFunctionBlock(V9(n.body,r)))}function G9(e,t,n,r){return"default"===t?eX(oE.createIdentifier(e),void 0,n,r):eX(void 0,[Q9(t,e)],n,r)}function Q9(e,t){return oE.createImportSpecifier(!1,void 0!==e&&e!==t?oE.createIdentifier(e):void 0,oE.createIdentifier(t))}function Y9(e,t,n){return oE.createVariableStatement(e,oE.createVariableDeclarationList([oE.createVariableDeclaration(t,void 0,void 0,n)],2))}function Z9(e,t){return oE.createExportDeclaration(void 0,!1,e&&oE.createNamedExports(e),void 0===t?void 0:oE.createStringLiteral(t))}function X9(e,t){return{newImports:e,useSitesToUnqualify:t}}n7({errorCodes:a9,getCodeActions(e){c9=!0;const t=Xde.ChangeTracker.with(e,(t=>l9(t,e.sourceFile,e.span.start,e.program.getTypeChecker())));return c9?[$8(s9,t,ws.Convert_to_async_function,s9,ws.Convert_all_to_async_functions)]:[]},fixIds:[s9],getAllCodeActions:e=>c7(e,a9,((t,n)=>l9(t,n.file,n.start,e.program.getTypeChecker())))}),n7({errorCodes:[ws.File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module.code],getCodeActions(e){const{sourceFile:t,program:n,preferences:r}=e;return[X8("convertToEsModule",Xde.ChangeTracker.with(e,(e=>{const i=function(e,t,n,r,i){const o={original:J9(e),additional:new Set},s=function(e,t,n){const r=new Map;return j9(e,(e=>{const{text:i}=e.name;r.has(i)||!qg(e.name)&&!t.resolveName(i,e,111551,!0)||r.set(i,K9(`_${i}`,n))})),r}(e,t,o);!function(e,t,n){j9(e,((r,i)=>{if(i)return;const{text:o}=r.name;n.replaceNode(e,r,oE.createIdentifier(t.get(o)||o))}))}(e,s,n);let a,c=!1;for(const l of M(e.statements,FA)){const s=U9(e,l,n,t,o,r,i);s&&h_(s,a??(a=new Map))}for(const l of M(e.statements,(e=>!FA(e)))){const u=z9(e,l,t,n,o,r,s,a,i);c=c||u}return null==a||a.forEach(((t,r)=>{n.replaceNode(e,r,t)})),c}(t,n.getTypeChecker(),e,MS(n.getCompilerOptions()),iX(t,r));if(i)for(const o of n.getSourceFiles())L9(o,t,n,e,iX(o,r))})),ws.Convert_to_ES_module)]}});var $9="correctQualifiedNameToIndexedAccessType",eee=[ws.Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1.code];function tee(e,t){const n=bc(QY(e,t),dN);return Tn.assert(!!n,"Expected position to be owned by a qualified name."),YC(n.left)?n:void 0}function nee(e,t,n){const r=n.right.text,i=oE.createIndexedAccessTypeNode(oE.createTypeReferenceNode(n.left,void 0),oE.createLiteralTypeNode(oE.createStringLiteral(r)));e.replaceNode(t,n,i)}n7({errorCodes:eee,getCodeActions(e){const t=tee(e.sourceFile,e.span.start);if(!t)return;const n=Xde.ChangeTracker.with(e,(n=>nee(n,e.sourceFile,t))),r=`${t.left.text}["${t.right.text}"]`;return[$8($9,n,[ws.Rewrite_as_the_indexed_access_type_0,r],$9,ws.Rewrite_all_as_indexed_access_types)]},fixIds:[$9],getAllCodeActions:e=>c7(e,eee,((e,t)=>{const n=tee(t.file,t.start);n&&nee(e,t.file,n)}))});var ree=[ws.Re_exporting_a_type_when_0_is_enabled_requires_using_export_type.code],iee="convertToTypeOnlyExport";function oee(e,t){return dt(QY(t,e.start).parent,kI)}function see(e,t,n){if(!t)return;const r=t.parent,i=r.parent,o=function(e,t){const n=e.parent;if(1===n.elements.length)return n.elements;const r=X$(PZ(n),t.program.getSemanticDiagnostics(t.sourceFile,t.cancellationToken));return M(n.elements,(t=>{var n;return t===e||(null==(n=Z$(t,r))?void 0:n.code)===ree[0]}))}(t,n);if(o.length===r.elements.length)e.insertModifierBefore(n.sourceFile,156,r);else{const t=oE.updateExportDeclaration(i,i.modifiers,!1,oE.updateNamedExports(r,M(r.elements,(e=>!A(o,e)))),i.moduleSpecifier,void 0),s=oE.createExportDeclaration(void 0,!0,oE.createNamedExports(o),i.moduleSpecifier,void 0);e.replaceNode(n.sourceFile,i,t,{leadingTriviaOption:Xde.LeadingTriviaOption.IncludeAll,trailingTriviaOption:Xde.TrailingTriviaOption.Exclude}),e.insertNodeAfter(n.sourceFile,i,s)}}n7({errorCodes:ree,getCodeActions:function(e){const t=Xde.ChangeTracker.with(e,(t=>see(t,oee(e.span,e.sourceFile),e)));if(t.length)return[$8(iee,t,ws.Convert_to_type_only_export,iee,ws.Convert_all_re_exported_types_to_type_only_exports)]},fixIds:[iee],getAllCodeActions:function(e){const t=new Map;return c7(e,ree,((n,r)=>{const i=oee(r,e.sourceFile);i&&jx(t,Gz(i.parent.parent))&&see(n,i,e)}))}});var aee=[ws._0_is_a_type_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled.code,ws._0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled.code],cee="convertToTypeOnlyImport";function lee(e,t){const{parent:n}=QY(e,t);return xI(n)||dI(n)&&n.importClause?n:void 0}function uee(e,t,n){if(e.parent.parent.name)return!1;const r=e.parent.elements.filter((e=>!e.isTypeOnly));if(1===r.length)return!0;const i=n.getTypeChecker();for(const o of r){if(Ice.Core.eachSymbolReferenceInFile(o.name,i,t,(e=>{const t=i.getSymbolAtLocation(e);return!!t&&i.symbolIsValue(t)||!Mw(e)})))return!1}return!0}function dee(e,t,n){var r;if(xI(n))e.replaceNode(t,n,oE.updateImportSpecifier(n,!0,n.propertyName,n.name));else{const i=n.importClause;if(i.name&&i.namedBindings)e.replaceNodeWithNodes(t,n,[oE.createImportDeclaration(s$(n.modifiers,!0),oE.createImportClause(!0,r$(i.name,!0),void 0),r$(n.moduleSpecifier,!0),r$(n.attributes,!0)),oE.createImportDeclaration(s$(n.modifiers,!0),oE.createImportClause(!0,void 0,r$(i.namedBindings,!0)),r$(n.moduleSpecifier,!0),r$(n.attributes,!0))]);else{const o=275===(null==(r=i.namedBindings)?void 0:r.kind)?oE.updateNamedImports(i.namedBindings,j(i.namedBindings.elements,(e=>oE.updateImportSpecifier(e,!1,e.propertyName,e.name)))):i.namedBindings,s=oE.updateImportDeclaration(n,n.modifiers,oE.updateImportClause(i,!0,i.name,o),n.moduleSpecifier,n.attributes);e.replaceNode(t,n,s)}}}n7({errorCodes:aee,getCodeActions:function(e){var t;const n=lee(e.sourceFile,e.span.start);if(n){const r=Xde.ChangeTracker.with(e,(t=>dee(t,e.sourceFile,n))),i=276===n.kind&&dI(n.parent.parent.parent)&&uee(n,e.sourceFile,e.program)?Xde.ChangeTracker.with(e,(t=>dee(t,e.sourceFile,n.parent.parent.parent))):void 0,o=$8(cee,r,276===n.kind?[ws.Use_type_0,(null==(t=n.propertyName)?void 0:t.text)??n.name.text]:ws.Use_import_type,cee,ws.Fix_all_with_type_only_imports);return $(i)?[X8(cee,i,ws.Use_import_type),o]:[o]}},fixIds:[cee],getAllCodeActions:function(e){const t=new Set;return c7(e,aee,((n,r)=>{const i=lee(r.file,r.start);272!==(null==i?void 0:i.kind)||t.has(i)?276===(null==i?void 0:i.kind)&&dI(i.parent.parent.parent)&&!t.has(i.parent.parent.parent)&&uee(i,r.file,e.program)?(dee(n,r.file,i.parent.parent.parent),t.add(i.parent.parent.parent)):276===(null==i?void 0:i.kind)&&dee(n,r.file,i):(dee(n,r.file,i),t.add(i))}))}});var _ee="convertTypedefToType",pee=[ws.JSDoc_typedef_may_be_converted_to_TypeScript_type.code];function fee(e,t,n,r,i=!1){if(!MD(t))return;const o=function(e){var t;const{typeExpression:n}=e;if(!n)return;const r=null==(t=e.name)?void 0:t.getText();if(!r)return;if(322===n.kind)return function(e,t){const n=hee(t);if(!$(n))return;return oE.createInterfaceDeclaration(void 0,e,void 0,void 0,n)}(r,n);if(309===n.kind)return function(e,t){const n=r$(t.type);if(!n)return;return oE.createTypeAliasDeclaration(void 0,oE.createIdentifier(e),void 0,n)}(r,n)}(t);if(!o)return;const s=t.parent,{leftSibling:a,rightSibling:c}=function(e){const t=e.parent,n=t.getChildCount()-1,r=t.getChildren().findIndex((t=>t.getStart()===e.getStart()&&t.getEnd()===e.getEnd())),i=r>0?t.getChildAt(r-1):void 0,o=r<n?t.getChildAt(r+1):void 0;return{leftSibling:i,rightSibling:o}}(t);let l=s.getStart(),u="";!a&&s.comment&&(l=mee(s,s.getStart(),t.getStart()),u=`${r} */${r}`),a&&(i&&MD(a)?(l=t.getStart(),u=""):(l=mee(s,a.getStart(),t.getStart()),u=`${r} */${r}`));let d=s.getEnd(),_="";c&&(i&&MD(c)?(d=c.getStart(),_=`${r}${r}`):(d=c.getStart(),_=`${r}/**${r} * `)),e.replaceRange(n,{pos:l,end:d},o,{prefix:u,suffix:_})}function mee(e,t,n){const r=e.getText().substring(t-e.getStart(),n-e.getStart());for(let i=r.length;i>0;i--)if(!/[*/\s]/g.test(r.substring(i-1,i)))return t+i;return n}function hee(e){const t=e.jsDocPropertyTags;if(!$(t))return;return J(t,(e=>{var t;const n=function(e){return 80===e.name.kind?e.name.text:e.name.right.text}(e),r=null==(t=e.typeExpression)?void 0:t.type,i=e.isBracketed;let o;if(r&&pD(r)){const e=hee(r);o=oE.createTypeLiteralNode(e)}else r&&(o=r$(r));if(o&&n){const e=i?oE.createToken(58):void 0;return oE.createPropertySignature(void 0,n,e,o)}}))}function gee(e){return zd(e)?U(e.jsDoc,(e=>{var t;return null==(t=e.tags)?void 0:t.filter((e=>MD(e)))})):[]}n7({fixIds:[_ee],errorCodes:pee,getCodeActions(e){const t=VX(e.host,e.formatContext.options),n=QY(e.sourceFile,e.span.start);if(!n)return;const r=Xde.ChangeTracker.with(e,(r=>fee(r,n,e.sourceFile,t)));return r.length>0?[$8(_ee,r,ws.Convert_typedef_to_TypeScript_type,_ee,ws.Convert_all_typedef_to_TypeScript_types)]:void 0},getAllCodeActions:e=>c7(e,pee,((t,n)=>{const r=VX(e.host,e.formatContext.options),i=QY(n.file,n.start);i&&fee(t,i,n.file,r,!0)}))});var yee="convertLiteralTypeToMappedType",vee=[ws._0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0.code];function bee(e,t){const n=QY(e,t);if(YC(n)){const t=_t(n.parent.parent,hN),r=n.getText(e);return{container:_t(t.parent,PN),typeNode:t.type,constraint:r,name:"K"===r?"P":"K"}}}function xee(e,t,{container:n,typeNode:r,constraint:i,name:o}){e.replaceNode(t,n,oE.createMappedTypeNode(void 0,oE.createTypeParameterDeclaration(void 0,o,oE.createTypeReferenceNode(i)),void 0,void 0,r,void 0))}n7({errorCodes:vee,getCodeActions:function(e){const{sourceFile:t,span:n}=e,r=bee(t,n.start);if(!r)return;const{name:i,constraint:o}=r,s=Xde.ChangeTracker.with(e,(e=>xee(e,t,r)));return[$8(yee,s,[ws.Convert_0_to_1_in_0,o,i],yee,ws.Convert_all_type_literals_to_mapped_type)]},fixIds:[yee],getAllCodeActions:e=>c7(e,vee,((e,t)=>{const n=bee(t.file,t.start);n&&xee(e,t.file,n)}))});var See=[ws.Class_0_incorrectly_implements_interface_1.code,ws.Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass.code],Tee="fixClassIncorrectlyImplementsInterface";function wee(e,t){return Tn.checkDefined(im(QY(e,t)),"There should be a containing class")}function kee(e){return!(e.valueDeclaration&&2&nb(e.valueDeclaration))}function Eee(e,t,n,r,i,o){const s=e.program.getTypeChecker(),a=function(e,t){const n=Cg(e);if(!n)return o_();const r=t.getTypeAtLocation(n),i=t.getPropertiesOfType(r);return o_(i.filter(kee))}(r,s),c=s.getTypeAtLocation(t),l=s.getPropertiesOfType(c).filter(_n(kee,(e=>!a.has(e.escapedName)))),u=s.getTypeAtLocation(r),d=w(r.members,(e=>xN(e)));u.getNumberIndexType()||p(c,1),u.getStringIndexType()||p(c,0);const _=Iee(n,e.program,o,e.host);function p(t,i){const o=s.getIndexInfoOfType(t,i);o&&f(n,r,s.indexInfoToIndexSignatureDeclaration(o,r,void 0,Zie(e)))}function f(e,t,n){d?i.insertNodeAfter(e,d,n):i.insertMemberAtStart(e,t,n)}Yie(r,l,n,e,o,_,(e=>f(n,r,e))),_.writeFixes(i)}n7({errorCodes:See,getCodeActions(e){const{sourceFile:t,span:n}=e,r=wee(t,n.start);return J(Ag(r),(n=>{const i=Xde.ChangeTracker.with(e,(i=>Eee(e,n,t,r,i,e.preferences)));return 0===i.length?void 0:$8(Tee,i,[ws.Implement_interface_0,n.getText(t)],Tee,ws.Implement_all_unimplemented_interfaces)}))},fixIds:[Tee],getAllCodeActions(e){const t=new Map;return c7(e,See,((n,r)=>{const i=wee(r.file,r.start);if(jx(t,Gz(i)))for(const t of Ag(i))Eee(e,t,r.file,i,n,e.preferences)}))}});var Cee="import",Nee="fixMissingImport",Aee=[ws.Cannot_find_name_0.code,ws.Cannot_find_name_0_Did_you_mean_1.code,ws.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0.code,ws.Cannot_find_name_0_Did_you_mean_the_static_member_1_0.code,ws.Cannot_find_namespace_0.code,ws._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead.code,ws._0_only_refers_to_a_type_but_is_being_used_as_a_value_here.code,ws.No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer.code,ws._0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type.code,ws.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery.code,ws.Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_1_or_later.code,ws.Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_include_dom.code,ws.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha_and_then_add_jest_or_mocha_to_the_types_field_in_your_tsconfig.code,ws.Cannot_find_name_0_Did_you_mean_to_write_this_in_an_async_function.code,ws.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery_and_then_add_jquery_to_the_types_field_in_your_tsconfig.code,ws.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha.code,ws.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode.code,ws.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode_and_then_add_node_to_the_types_field_in_your_tsconfig.code,ws.Cannot_find_namespace_0_Did_you_mean_1.code];function Iee(e,t,n,r,i){return Dee(e,t,!1,n,r,i)}function Dee(e,t,n,r,i,o){const s=t.getCompilerOptions(),a=[],c=[],l=new Map,u=new Set,d=new Set,_=new Map;return{addImportFromDiagnostic:function(e,t){const r=Kee(t,e.code,e.start,n);if(!r||!r.length)return;p(Ee(r))},addImportFromExportedSymbol:function(n,a,c){var l;const u=Tn.checkDefined(n.parent),d=i0(n,MS(s)),_=t.getTypeChecker(),f=_.getMergedSymbol(Sx(n,_)),m=Lee(e,f,d,u,!1,t,i,r,o),h=qee(e,t);let g=Fee(e,Tn.checkDefined(m),t,void 0,!!a,h,i,r);if(g){const e=(null==(l=dt(null==c?void 0:c.name,YC))?void 0:l.text)??d;c&&Yl(c)&&(3===g.kind||2===g.kind)&&1===g.addAsTypeOnly&&(g={...g,addAsTypeOnly:2}),p({fix:g,symbolName:e??d,errorIdentifierText:void 0})}},writeFixes:function(t,n){var i,o;let d,p,m;d=Lm(e)&&0===e.imports.length&&void 0!==n?n:iX(e,r);for(const r of a)nte(t,e,r);for(const r of c)rte(t,e,r,d);if(u.size){Tn.assert(Lm(e),"Cannot remove imports from a future source file");const n=new Set(J([...u],(e=>bc(e,dI)))),r=new Set(J([...u],(e=>bc(e,Wm)))),s=[...n].filter((e=>{var t,n,r;return!l.has(e.importClause)&&(!(null==(t=e.importClause)?void 0:t.name)||u.has(e.importClause))&&(!dt(null==(n=e.importClause)?void 0:n.namedBindings,yI)||u.has(e.importClause.namedBindings))&&(!dt(null==(r=e.importClause)?void 0:r.namedBindings,bI)||T(e.importClause.namedBindings.elements,(e=>u.has(e))))})),a=[...r].filter((e=>(206!==e.name.kind||!l.has(e.name))&&(206!==e.name.kind||T(e.name.elements,(e=>u.has(e)))))),c=[...n].filter((e=>{var t,n;return(null==(t=e.importClause)?void 0:t.namedBindings)&&-1===s.indexOf(e)&&!(null==(n=l.get(e.importClause))?void 0:n.namedImports)&&(274===e.importClause.namedBindings.kind||T(e.importClause.namedBindings.elements,(e=>u.has(e))))}));for(const i of[...s,...a])t.delete(e,i);for(const i of c)t.replaceNode(e,i.importClause,oE.updateImportClause(i.importClause,i.importClause.isTypeOnly,i.importClause.name,void 0));for(const d of u){const n=bc(d,dI);n&&-1===s.indexOf(n)&&-1===c.indexOf(n)?273===d.kind?t.delete(e,d.name):(Tn.assert(276===d.kind,"NamespaceImport should have been handled earlier"),(null==(i=l.get(n.importClause))?void 0:i.namedImports)?(p??(p=new Set)).add(d):t.delete(e,d)):208===d.kind?(null==(o=l.get(d.parent))?void 0:o.namedImports)?(p??(p=new Set)).add(d):t.delete(e,d):271===d.kind&&t.delete(e,d)}}l.forEach((({importClauseOrBindingPattern:n,defaultImport:i,namedImports:o})=>{tte(t,e,n,i,Ke(o.entries(),(([e,t])=>({addAsTypeOnly:t,name:e}))),p,r)})),_.forEach((({useRequire:e,defaultImport:t,namedImports:n,namespaceLikeImport:i},o)=>{const a=(e?cte:ate)(o.slice(2),d,t,n&&Ke(n.entries(),(([e,t])=>({addAsTypeOnly:t,name:e}))),i,s,r);m=pe(m,a)})),m=pe(m,f()),m&&fX(t,e,m,!0,r)},hasFixes:function(){return a.length>0||c.length>0||l.size>0||_.size>0||d.size>0||u.size>0},addImportForUnresolvedIdentifier:function(e,t,n){const r=function(e,t,n){const r=Yee(e,t,n),i=H$(e.sourceFile,e.preferences,e.host);return r&&Jee(r,e.sourceFile,e.program,i,e.host,e.preferences)}(e,t,n);if(!r||!r.length)return;p(Ee(r))},addImportForNonExistentExport:function(n,o,a,c,l){const u=t.getSourceFile(o),d=qee(e,t);if(u&&u.symbol){const{fixes:s}=zee([{exportKind:a,isFromPackageJson:!1,moduleFileName:o,moduleSymbol:u.symbol,targetFlags:c}],void 0,l,d,t,e,i,r);s.length&&p({fix:s[0],symbolName:n,errorIdentifierText:n})}else{const r=w0(o,99,t,i);p({fix:{kind:3,moduleSpecifierKind:"relative",moduleSpecifier:tz.getLocalModuleSpecifierBetweenFileNames(e,o,s,ZZ(t,i)),importKind:Qee(r,a,s),addAsTypeOnly:Uee(l,!0,void 0,c,t.getTypeChecker(),s),useRequire:d},symbolName:n,errorIdentifierText:n})}},removeExistingImport:function(e){273===e.kind&&Tn.assertIsDefined(e.name,"ImportClause should have a name if it's being removed");u.add(e)},addVerbatimImport:function(e){d.add(e)}};function p(e){var t,n;const{fix:r,symbolName:i}=e;switch(r.kind){case 0:a.push(r);break;case 1:c.push(r);break;case 2:{const{importClauseOrBindingPattern:e,importKind:n,addAsTypeOnly:s}=r;let a=l.get(e);if(a||l.set(e,a={importClauseOrBindingPattern:e,defaultImport:void 0,namedImports:new Map}),0===n){const e=null==a?void 0:a.namedImports.get(i);a.namedImports.set(i,o(e,s))}else Tn.assert(void 0===a.defaultImport||a.defaultImport.name===i,"(Add to Existing) Default import should be missing or match symbolName"),a.defaultImport={name:i,addAsTypeOnly:o(null==(t=a.defaultImport)?void 0:t.addAsTypeOnly,s)};break}case 3:{const{moduleSpecifier:e,importKind:t,useRequire:a,addAsTypeOnly:c}=r,l=function(e,t,n,r){const i=u(e,!0),o=u(e,!1),s=_.get(i),a=_.get(o),c={defaultImport:void 0,namedImports:void 0,namespaceLikeImport:void 0,useRequire:n};if(1===t&&2===r)return s||(_.set(i,c),c);if(1===r&&(s||a))return s||a;if(a)return a;return _.set(o,c),c}(e,t,a,c);switch(Tn.assert(l.useRequire===a,"(Add new) Tried to add an `import` and a `require` for the same module"),t){case 1:Tn.assert(void 0===l.defaultImport||l.defaultImport.name===i,"(Add new) Default import should be missing or match symbolName"),l.defaultImport={name:i,addAsTypeOnly:o(null==(n=l.defaultImport)?void 0:n.addAsTypeOnly,c)};break;case 0:const e=(l.namedImports||(l.namedImports=new Map)).get(i);l.namedImports.set(i,o(e,c));break;case 3:if(s.verbatimModuleSyntax){const e=(l.namedImports||(l.namedImports=new Map)).get(i);l.namedImports.set(i,o(e,c))}else Tn.assert(void 0===l.namespaceLikeImport||l.namespaceLikeImport.name===i,"Namespacelike import shoudl be missing or match symbolName"),l.namespaceLikeImport={importKind:t,name:i,addAsTypeOnly:c};break;case 2:Tn.assert(void 0===l.namespaceLikeImport||l.namespaceLikeImport.name===i,"Namespacelike import shoudl be missing or match symbolName"),l.namespaceLikeImport={importKind:t,name:i,addAsTypeOnly:c}}break}case 4:break;default:Tn.assertNever(r,`fix wasn't never - got kind ${r.kind}`)}function o(e,t){return Math.max(e??0,t)}function u(e,t){return`${t?1:0}|${e}`}}function f(){if(!d.size)return;const e=new Set(J([...d],(e=>bc(e,dI)))),t=new Set(J([...d],(e=>bc(e,Ym))));return[...J([...d],(e=>271===e.kind?r$(e,!0):void 0)),...[...e].map((e=>{var t;return d.has(e)?r$(e,!0):r$(oE.updateImportDeclaration(e,e.modifiers,e.importClause&&oE.updateImportClause(e.importClause,e.importClause.isTypeOnly,d.has(e.importClause)?e.importClause.name:void 0,d.has(e.importClause.namedBindings)?e.importClause.namedBindings:(null==(t=dt(e.importClause.namedBindings,bI))?void 0:t.elements.some((e=>d.has(e))))?oE.updateNamedImports(e.importClause.namedBindings,e.importClause.namedBindings.elements.filter((e=>d.has(e)))):void 0),e.moduleSpecifier,e.attributes),!0)})),...[...t].map((e=>d.has(e)?r$(e,!0):r$(oE.updateVariableStatement(e,e.modifiers,oE.updateVariableDeclarationList(e.declarationList,J(e.declarationList.declarations,(e=>d.has(e)?e:oE.updateVariableDeclaration(e,206===e.name.kind?oE.updateObjectBindingPattern(e.name,e.name.elements.filter((e=>d.has(e)))):e.name,e.exclamationToken,e.type,e.initializer))))),!0)))]}}function Pee(e,t,n,r){const i=H$(e,r,n),o=Bee(t.getTypeChecker(),e,t.getCompilerOptions());return{getModuleSpecifierForBestExportInfo:function(s,a,c,l){const{fixes:u,computedWithoutCacheCount:d}=zee(s,a,c,!1,t,e,n,r,o,l),_=Wee(u,e,t,i,n,r);return _&&{..._,computedWithoutCacheCount:d}}}}function Mee(e,t,n,r,i,o,s,a,c,l,u,d){let _;n?(_=D0(r,s,a,u,d).get(r.path,n),Tn.assertIsDefined(_,"Some exportInfo should match the specified exportMapKey")):(_=Fo(Ky(t.name))?[jee(e,i,t,a,s)]:Lee(r,e,i,t,o,a,s,u,d),Tn.assertIsDefined(_,"Some exportInfo should match the specified symbol / moduleSymbol"));const p=qee(r,a),f=Mw(QY(r,l)),m=Tn.checkDefined(Fee(r,_,a,l,f,p,s,u));return{moduleSpecifier:m.moduleSpecifier,codeAction:Ree($ee({host:s,formatContext:c,preferences:u},r,i,m,!1,a,u))}}function Oee(e,t,n,r,i,o){const s=n.getCompilerOptions(),a=De(Xee(e,n.getTypeChecker(),t,s)),c=Zee(e,t,a,n),l=a!==t.text;return c&&Ree($ee({host:r,formatContext:i,preferences:o},e,a,c,l,n,o))}function Fee(e,t,n,r,i,o,s,a){const c=H$(e,a,s);return Wee(zee(t,r,i,o,n,e,s,a).fixes,e,n,c,s,a)}function Ree({description:e,changes:t,commands:n}){return{description:e,changes:t,commands:n}}function Lee(e,t,n,r,i,o,s,a,c){const l=Vee(o,s);return D0(e,s,o,a,c).search(e.path,i,(e=>e===n),(e=>{if(Sx(e[0].symbol,l(e[0].isFromPackageJson))===t&&e.some((e=>e.moduleSymbol===r||e.symbol.parent===r)))return e}))}function jee(e,t,n,r,i){var o,s;const a=l(r.getTypeChecker(),!1);if(a)return a;const c=null==(s=null==(o=i.getPackageJsonAutoImportProvider)?void 0:o.call(i))?void 0:s.getTypeChecker();return Tn.checkDefined(c&&l(c,!0),"Could not find symbol in specified module for code actions");function l(r,i){const o=P0(n,r);if(o&&Sx(o.symbol,r)===e)return{symbol:o.symbol,moduleSymbol:n,moduleFileName:void 0,exportKind:o.exportKind,targetFlags:Sx(e,r).flags,isFromPackageJson:i};const s=r.tryGetMemberInModuleExportsAndProperties(t,n);return s&&Sx(s,r)===e?{symbol:s,moduleSymbol:n,moduleFileName:void 0,exportKind:0,targetFlags:Sx(e,r).flags,isFromPackageJson:i}:void 0}}function zee(e,t,n,r,i,o,s,a,c=(Lm(o)?Bee(i.getTypeChecker(),o,i.getCompilerOptions()):void 0),l){const u=i.getTypeChecker(),d=c?U(e,c.getImportsForExportInfo):_,p=void 0!==t&&function(e,t){return y(e,(({declaration:e,importKind:n})=>{var r;if(0!==n)return;const i=function(e){var t,n,r;switch(e.kind){case 260:return null==(t=dt(e.name,YC))?void 0:t.text;case 271:return e.name.text;case 351:case 272:return null==(r=dt(null==(n=e.importClause)?void 0:n.namedBindings,yI))?void 0:r.name.text;default:return Tn.assertNever(e)}}(e),o=i&&(null==(r=Ch(e))?void 0:r.text);return o?{kind:0,namespacePrefix:i,usagePosition:t,moduleSpecifierKind:void 0,moduleSpecifier:o}:void 0}))}(d,t),f=function(e,t,n,r){let i;for(const s of e){const e=o(s);if(!e)continue;const t=Yl(e.importClauseOrBindingPattern);if(4!==e.addAsTypeOnly&&t||4===e.addAsTypeOnly&&!t)return e;i??(i=e)}return i;function o({declaration:e,importKind:i,symbol:o,targetFlags:s}){if(3===i||2===i||271===e.kind)return;if(260===e.kind)return 0!==i&&1!==i||206!==e.name.kind?void 0:{kind:2,importClauseOrBindingPattern:e.name,importKind:i,moduleSpecifierKind:void 0,moduleSpecifier:e.initializer.arguments[0].text,addAsTypeOnly:4};const{importClause:a}=e;if(!a||!Hd(e.moduleSpecifier))return;const{name:c,namedBindings:l}=a;if(a.isTypeOnly&&(0!==i||!l))return;const u=Uee(t,!1,o,s,n,r);return 1===i&&(c||2===u&&l)||0===i&&274===(null==l?void 0:l.kind)?void 0:{kind:2,importClauseOrBindingPattern:a,importKind:i,moduleSpecifierKind:void 0,moduleSpecifier:e.moduleSpecifier.text,addAsTypeOnly:u}}}(d,n,u,i.getCompilerOptions());if(f)return{computedWithoutCacheCount:0,fixes:[...p?[p]:_,f]};const{fixes:m,computedWithoutCacheCount:h=0}=function(e,t,n,r,i,o,s,a,c,l){const u=y(t,(e=>function({declaration:e,importKind:t,symbol:n,targetFlags:r},i,o,s,a){var c;const l=null==(c=Ch(e))?void 0:c.text;if(l){return{kind:3,moduleSpecifierKind:void 0,moduleSpecifier:l,importKind:t,addAsTypeOnly:o?4:Uee(i,!0,n,r,s,a),useRequire:o}}}(e,o,s,n.getTypeChecker(),n.getCompilerOptions())));return u?{fixes:[u]}:function(e,t,n,r,i,o,s,a,c){const l=YT(t.fileName),u=e.getCompilerOptions(),d=ZZ(e,s),_=Vee(e,s),p=$Z(FS(u)),f=c?e=>tz.tryGetModuleSpecifiersFromCache(e.moduleSymbol,t,d,a):(e,n)=>tz.getModuleSpecifiersWithCacheInfo(e.moduleSymbol,n,u,t,d,a,void 0,!0);let m=0;const h=U(o,((e,o)=>{const s=_(e.isFromPackageJson),{computedWithoutCache:a,moduleSpecifiers:c,kind:d}=f(e,s)??{},h=!!(111551&e.targetFlags),g=Uee(r,!0,e.symbol,e.targetFlags,s,u);return m+=a?1:0,J(c,(r=>{if(p&&QL(r))return;if(!h&&l&&void 0!==n)return{kind:1,moduleSpecifierKind:d,moduleSpecifier:r,usagePosition:n,exportInfo:e,isReExport:o>0};const a=Qee(t,e.exportKind,u);let c;if(void 0!==n&&3===a&&0===e.exportKind){const t=s.resolveExternalModuleSymbol(e.moduleSymbol);let r;t!==e.moduleSymbol&&(r=O0(t,s,u,!1,gt)),r||(r=c0(e.moduleSymbol,MS(u),!1)),c={namespacePrefix:r,usagePosition:n}}return{kind:3,moduleSpecifierKind:d,moduleSpecifier:r,importKind:a,useRequire:i,addAsTypeOnly:g,exportInfo:e,isReExport:o>0,qualification:c}}))}));return{computedWithoutCacheCount:m,fixes:h}}(n,r,i,o,s,e,a,c,l)}(e,d,i,o,t,n,r,s,a,l);return{computedWithoutCacheCount:h,fixes:[...p?[p]:_,...m]}}function Uee(e,t,n,r,i,o){return e?!n||!o.verbatimModuleSyntax||111551&r&&!i.getTypeOnlyAliasDeclaration(n)?1:2:4}function Bee(e,t,n){let r;for(const i of t.imports){const t=Nh(i);if(Wm(t.parent)){const n=e.resolveExternalModuleName(i);n&&(r||(r=nt())).add(Qz(n),t.parent)}else if(272===t.kind||271===t.kind||351===t.kind){const n=e.getSymbolAtLocation(i);n&&(r||(r=nt())).add(Qz(n),t)}}return{getImportsForExportInfo:({moduleSymbol:e,exportKind:i,targetFlags:o,symbol:s})=>{const a=null==r?void 0:r.get(Qz(e));if(!a)return _;if(jm(t)&&!(111551&o)&&!T(a,zD))return _;const c=Qee(t,i,n);return a.map((e=>({declaration:e,importKind:c,symbol:s,targetFlags:o})))}}}function qee(e,t){if(!YT(e.fileName))return!1;if(e.commonJsModuleIndicator&&!e.externalModuleIndicator)return!0;if(e.externalModuleIndicator&&!e.commonJsModuleIndicator)return!1;const n=t.getCompilerOptions();if(n.configFile)return OS(n)<5;if(1===e.impliedNodeFormat)return!0;if(99===e.impliedNodeFormat)return!1;for(const r of t.getSourceFiles())if(r!==e&&jm(r)&&!t.isSourceFileFromExternalLibrary(r)){if(r.commonJsModuleIndicator&&!r.externalModuleIndicator)return!0;if(r.externalModuleIndicator&&!r.commonJsModuleIndicator)return!1}return!0}function Vee(e,t){return Tt((n=>n?t.getPackageJsonAutoImportProvider().getTypeChecker():e.getTypeChecker()))}function Kee(e,t,n,r){const i=QY(e.sourceFile,n);let o;if(t===ws._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead.code)o=function({sourceFile:e,program:t,host:n,preferences:r},i){const o=t.getTypeChecker(),s=function(e,t){const n=YC(e)?t.getSymbolAtLocation(e):void 0;if(Fx(n))return n;const{parent:r}=e;if(Pd(r)&&r.tagName===e||FI(r)){const n=t.resolveName(t.getJsxNamespace(r),Pd(r)?e:r,111551,!1);if(Fx(n))return n}return}(i,o);if(!s)return;const a=o.getAliasedSymbol(s),c=s.name,l=[{symbol:s,moduleSymbol:a,moduleFileName:void 0,exportKind:3,targetFlags:a.flags,isFromPackageJson:!1}],u=qee(e,t);return zee(l,void 0,!1,u,t,e,n,r).fixes.map((e=>{var t;return{fix:e,symbolName:c,errorIdentifierText:null==(t=dt(i,YC))?void 0:t.text}}))}(e,i);else{if(!YC(i))return;if(t===ws._0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type.code){const t=De(Xee(e.sourceFile,e.program.getTypeChecker(),i,e.program.getCompilerOptions())),n=Zee(e.sourceFile,i,t,e.program);return n&&[{fix:n,symbolName:t,errorIdentifierText:i.text}]}o=Yee(e,i,r)}const s=H$(e.sourceFile,e.preferences,e.host);return o&&Jee(o,e.sourceFile,e.program,s,e.host,e.preferences)}function Jee(e,t,n,r,i,o){const s=e=>rs(e,i.getCurrentDirectory(),Xy(i));return ve(e,((e,i)=>Wt(!!e.isJsxNamespaceFix,!!i.isJsxNamespaceFix)||Pt(e.fix.kind,i.fix.kind)||Hee(e.fix,i.fix,t,n,o,r.allowsImportingSpecifier,s)))}function Wee(e,t,n,r,i,o){if($(e))return 0===e[0].kind||2===e[0].kind?e[0]:e.reduce(((e,s)=>-1===Hee(s,e,t,n,o,r.allowsImportingSpecifier,(e=>rs(e,i.getCurrentDirectory(),Xy(i))))?s:e))}function Hee(e,t,n,r,i,o,s){return 0!==e.kind&&0!==t.kind?Wt("node_modules"!==t.moduleSpecifierKind||o(t.moduleSpecifier),"node_modules"!==e.moduleSpecifierKind||o(e.moduleSpecifier))||function(e,t,n){if("non-relative"===n.importModuleSpecifierPreference||"project-relative"===n.importModuleSpecifierPreference)return Wt("relative"===e.moduleSpecifierKind,"relative"===t.moduleSpecifierKind);return 0}(e,t,i)||function(e,t,n,r){return cn(e,"node:")&&!cn(t,"node:")?m0(n,r)?-1:1:cn(t,"node:")&&!cn(e,"node:")?m0(n,r)?1:-1:0}(e.moduleSpecifier,t.moduleSpecifier,n,r)||Wt(Gee(e,n.path,s),Gee(t,n.path,s))||rw(e.moduleSpecifier,t.moduleSpecifier):0}function Gee(e,t,n){var r;if(e.isReExport&&(null==(r=e.exportInfo)?void 0:r.moduleFileName)&&"index"===Ko(e.exportInfo.moduleFileName,[".js",".jsx",".d.ts",".ts",".tsx"],!0)){return cn(t,n(Vo(e.exportInfo.moduleFileName)))}return!1}function Qee(e,t,n,r){if(n.verbatimModuleSyntax&&(1===OS(n)||1===e.impliedNodeFormat))return 3;switch(t){case 0:return 0;case 1:return 1;case 2:return function(e,t,n){const r=zS(t),i=YT(e.fileName);if(!i&&OS(t)>=5)return r?1:2;if(i)return e.externalModuleIndicator||n?r?1:2:3;for(const o of e.statements??_)if(uI(o)&&!F_(o.moduleReference))return 3;return r?1:3}(e,n,!!r);case 3:return function(e,t,n){if(zS(t))return 1;const r=OS(t);switch(r){case 2:case 1:case 3:return YT(e.fileName)&&(e.externalModuleIndicator||n)?2:3;case 4:case 5:case 6:case 7:case 99:case 0:case 200:return 2;case 100:case 199:return 99===e.impliedNodeFormat?2:3;default:return Tn.assertNever(r,`Unexpected moduleKind ${r}`)}}(e,n,!!r);default:return Tn.assertNever(t)}}function Yee({sourceFile:e,program:t,cancellationToken:n,host:r,preferences:i},o,s){const a=t.getTypeChecker(),c=t.getCompilerOptions();return U(Xee(e,a,o,c),(a=>{if("default"===a)return;const c=Mw(o),l=qee(e,t),u=function(e,t,n,r,i,o,s,a,c){var l;const u=nt(),d=H$(i,c,a),_=null==(l=a.getModuleSpecifierCache)?void 0:l.call(a),p=Tt((e=>ZZ(e?a.getPackageJsonAutoImportProvider():o,a)));function f(e,t,n,r,o,s){const a=p(s);if(t&&N0(o,i,t,c,d,a,_)||!t&&d.allowsImportingAmbientModule(e,a)){const i=o.getTypeChecker();u.add(e$(n,i).toString(),{symbol:n,moduleSymbol:e,moduleFileName:null==t?void 0:t.fileName,exportKind:r,targetFlags:Sx(n,i).flags,isFromPackageJson:s})}}return A0(o,a,c,s,((i,o,s,a)=>{const c=s.getTypeChecker();r.throwIfCancellationRequested();const l=s.getCompilerOptions(),u=P0(i,c);u&&ute(c.getSymbolFlags(u.symbol),n)&&O0(u.symbol,c,l,t,(t=>t===e))&&f(i,o,u.symbol,u.exportKind,s,a);const d=c.tryGetMemberInModuleExportsAndProperties(e,i);d&&ute(c.getSymbolFlags(d),n)&&f(i,o,d,0,s,a)})),u}(a,Nm(o),VQ(o),n,e,t,s,r,i);return Ke(q(u.values(),(n=>zee(n,o.getStart(e),c,l,t,e,r,i).fixes)),(e=>({fix:e,symbolName:a,errorIdentifierText:o.text,isJsxNamespaceFix:a!==o.text})))}))}function Zee(e,t,n,r){const i=r.getTypeChecker(),o=i.resolveName(n,t,111551,!0);if(!o)return;const s=i.getTypeOnlyAliasDeclaration(o);return s&&C_(s)===e?{kind:4,typeOnlyAliasDeclaration:s}:void 0}function Xee(e,t,n,r){const i=n.parent;if((Pd(i)||MI(i))&&i.tagName===n&&v0(r.jsx)){const r=t.getJsxNamespace(e);if(function(e,t,n){if(Jy(t.text))return!0;const r=n.resolveName(e,t,111551,!0);return!r||$(r.declarations,Xl)&&!(111551&r.flags)}(r,n,t)){return!Jy(n.text)&&!t.resolveName(n.text,n,111551,!1)?[n.text,r]:[r]}}return[n.text]}function $ee(e,t,n,r,i,o,s){let a;const c=Xde.ChangeTracker.with(e,(e=>{a=function(e,t,n,r,i,o,s){const a=iX(t,s);switch(r.kind){case 0:return nte(e,t,r),[ws.Change_0_to_1,n,`${r.namespacePrefix}.${n}`];case 1:return rte(e,t,r,a),[ws.Change_0_to_1,n,ite(r.moduleSpecifier,a)+n];case 2:{const{importClauseOrBindingPattern:o,importKind:a,addAsTypeOnly:c,moduleSpecifier:l}=r;tte(e,t,o,1===a?{name:n,addAsTypeOnly:c}:void 0,0===a?[{name:n,addAsTypeOnly:c}]:_,void 0,s);const u=Ky(l);return i?[ws.Import_0_from_1,n,u]:[ws.Update_import_from_0,u]}case 3:{const{importKind:c,moduleSpecifier:l,addAsTypeOnly:u,useRequire:d,qualification:_}=r;return fX(e,t,(d?cte:ate)(l,a,1===c?{name:n,addAsTypeOnly:u}:void 0,0===c?[{name:n,addAsTypeOnly:u}]:void 0,2===c||3===c?{importKind:c,name:(null==_?void 0:_.namespacePrefix)||n,addAsTypeOnly:u}:void 0,o.getCompilerOptions(),s),!0,s),_&&nte(e,t,_),i?[ws.Import_0_from_1,n,l]:[ws.Add_import_from_0,l]}case 4:{const{typeOnlyAliasDeclaration:i}=r,a=function(e,t,n,r,i){const o=n.getCompilerOptions(),s=o.verbatimModuleSyntax;switch(t.kind){case 276:if(t.isTypeOnly){if(t.parent.elements.length>1){const n=oE.updateImportSpecifier(t,!1,t.propertyName,t.name),{specifierComparer:o}=_ue.getNamedImportSpecifierComparerWithDetection(t.parent.parent.parent,i,r),s=_ue.getImportSpecifierInsertionIndex(t.parent.elements,n,o);if(s!==t.parent.elements.indexOf(t))return e.delete(r,t),e.insertImportSpecifierAtIndex(r,n,t.parent,s),t}return e.deleteRange(r,{pos:Q_(t.getFirstToken()),end:Q_(t.propertyName??t.name)}),t}return Tn.assert(t.parent.parent.isTypeOnly),a(t.parent.parent),t.parent.parent;case 273:return a(t),t;case 274:return a(t.parent),t.parent;case 271:return e.deleteRange(r,t.getChildAt(1)),t;default:Tn.failBadSyntaxKind(t)}function a(a){var c;if(e.delete(r,mX(a,r)),!o.allowImportingTsExtensions){const t=Ch(a.parent),i=t&&(null==(c=n.getResolvedModuleFromModuleSpecifier(t,r))?void 0:c.resolvedModule);if(null==i?void 0:i.resolvedUsingTsExtension){const n=as(t.text,Qq(t.text,o));e.replaceNode(r,t,oE.createStringLiteral(n))}}if(s){const n=dt(a.namedBindings,bI);if(n&&n.elements.length>1){!1!==_ue.getNamedImportSpecifierComparerWithDetection(a.parent,i,r).isSorted&&276===t.kind&&0!==n.elements.indexOf(t)&&(e.delete(r,t),e.insertImportSpecifierAtIndex(r,t,n,0));for(const i of n.elements)i===t||i.isTypeOnly||e.insertModifierBefore(r,156,i)}}}}(e,i,o,t,s);return 276===a.kind?[ws.Remove_type_from_import_of_0_from_1,n,ete(a.parent.parent)]:[ws.Remove_type_from_import_declaration_from_0,ete(a)]}default:return Tn.assertNever(r,`Unexpected fix kind ${r.kind}`)}}(e,t,n,r,i,o,s)}));return $8(Cee,c,a,Nee,ws.Add_all_missing_imports)}function ete(e){var t,n;return 271===e.kind?(null==(n=dt(null==(t=dt(e.moduleReference,AI))?void 0:t.expression,Hd))?void 0:n.text)||e.moduleReference.getText():_t(e.parent.moduleSpecifier,MC).text}function tte(e,t,n,r,i,o,s){var a;if(206===n.kind){if(o&&n.elements.some((e=>o.has(e))))return void e.replaceNode(t,n,oE.createObjectBindingPattern([...n.elements.filter((e=>!o.has(e))),...r?[oE.createBindingElement(void 0,"default",r.name)]:_,...i.map((e=>oE.createBindingElement(void 0,void 0,e.name)))]));r&&u(n,r.name,"default");for(const e of i)u(n,e.name,void 0);return}const c=n.isTypeOnly&&$([r,...i],(e=>4===(null==e?void 0:e.addAsTypeOnly))),l=n.namedBindings&&(null==(a=dt(n.namedBindings,bI))?void 0:a.elements);if(r&&(Tn.assert(!n.name,"Cannot add a default import to an import clause that already has one"),e.insertNodeAt(t,n.getStart(t),oE.createIdentifier(r.name),{suffix:", "})),i.length){const{specifierComparer:r,isSorted:a}=_ue.getNamedImportSpecifierComparerWithDetection(n.parent,s,t),u=xe(i.map((e=>oE.createImportSpecifier((!n.isTypeOnly||c)&&ste(e,s),void 0,oE.createIdentifier(e.name)))),r);if(o)e.replaceNode(t,n.namedBindings,oE.updateNamedImports(n.namedBindings,xe([...l.filter((e=>!o.has(e))),...u],r)));else if((null==l?void 0:l.length)&&!1!==a){const i=c&&l?oE.updateNamedImports(n.namedBindings,j(l,(e=>oE.updateImportSpecifier(e,!0,e.propertyName,e.name)))).elements:l;for(const o of u){const s=_ue.getImportSpecifierInsertionIndex(i,o,r);e.insertImportSpecifierAtIndex(t,o,n.namedBindings,s)}}else if(null==l?void 0:l.length)for(const n of u)e.insertNodeInListAfter(t,Ae(l),n,l);else if(u.length){const r=oE.createNamedImports(u);n.namedBindings?e.replaceNode(t,n.namedBindings,r):e.insertNodeAfter(t,Tn.checkDefined(n.name,"Import clause must have either named imports or a default import"),r)}}if(c&&(e.delete(t,mX(n,t)),l))for(const d of l)e.insertModifierBefore(t,156,d);function u(n,r,i){const o=oE.createBindingElement(void 0,i,r);n.elements.length?e.insertNodeInListAfter(t,Ae(n.elements),o):e.replaceNode(t,n,oE.createObjectBindingPattern([o]))}}function nte(e,t,{namespacePrefix:n,usagePosition:r}){e.insertText(t,r,n+".")}function rte(e,t,{moduleSpecifier:n,usagePosition:r},i){e.insertText(t,r,ite(n,i))}function ite(e,t){const n=oX(t);return`import(${n}${e}${n}).`}function ote({addAsTypeOnly:e}){return 2===e}function ste(e,t){return ote(e)||!!t.preferTypeOnlyAutoImports&&4!==e.addAsTypeOnly}function ate(e,t,n,r,i,o,s){const a=tX(e,t);let c;if(void 0!==n||(null==r?void 0:r.length)){const i=(!n||ote(n))&&T(r,ote)||(o.verbatimModuleSyntax||s.preferTypeOnlyAutoImports)&&4!==(null==n?void 0:n.addAsTypeOnly)&&!$(r,(e=>4===e.addAsTypeOnly));c=pe(c,eX(n&&oE.createIdentifier(n.name),null==r?void 0:r.map((e=>oE.createImportSpecifier(!i&&ste(e,s),void 0,oE.createIdentifier(e.name)))),e,t,i))}if(i){c=pe(c,3===i.importKind?oE.createImportEqualsDeclaration(void 0,ste(i,s),oE.createIdentifier(i.name),oE.createExternalModuleReference(a)):oE.createImportDeclaration(void 0,oE.createImportClause(ste(i,s),void 0,oE.createNamespaceImport(oE.createIdentifier(i.name))),a,void 0))}return Tn.checkDefined(c)}function cte(e,t,n,r,i){const o=tX(e,t);let s;if(n||(null==r?void 0:r.length)){const e=(null==r?void 0:r.map((({name:e})=>oE.createBindingElement(void 0,void 0,e))))||[];n&&e.unshift(oE.createBindingElement(void 0,"default",n.name));s=pe(s,lte(oE.createObjectBindingPattern(e),o))}if(i){s=pe(s,lte(i.name,o))}return Tn.checkDefined(s)}function lte(e,t){return oE.createVariableStatement(void 0,oE.createVariableDeclarationList([oE.createVariableDeclaration("string"==typeof e?oE.createIdentifier(e):e,void 0,void 0,oE.createCallExpression(oE.createIdentifier("require"),void 0,[t]))],2))}function ute(e,t){return 7===t||(1&t?!!(111551&e):2&t?!!(788968&e):!!(4&t)&&!!(1920&e))}n7({errorCodes:Aee,getCodeActions(e){const{errorCode:t,preferences:n,sourceFile:r,span:i,program:o}=e,s=Kee(e,t,i.start,!0);if(s)return s.map((({fix:t,symbolName:i,errorIdentifierText:s})=>$ee(e,r,i,t,i!==s,o,n)))},fixIds:[Nee],getAllCodeActions:e=>{const{sourceFile:t,program:n,preferences:r,host:i,cancellationToken:o}=e,s=Dee(t,n,!0,r,i,o);return l7(e,Aee,(t=>s.addImportFromDiagnostic(t,e))),s7(Xde.ChangeTracker.with(e,s.writeFixes))}});var dte="addMissingConstraint",_te=[ws.Type_0_is_not_comparable_to_type_1.code,ws.Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated.code,ws.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties.code,ws.Type_0_is_not_assignable_to_type_1.code,ws.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties.code,ws.Property_0_is_incompatible_with_index_signature.code,ws.Property_0_in_type_1_is_not_assignable_to_type_2.code,ws.Type_0_does_not_satisfy_the_constraint_1.code];function pte(e,t,n){const r=w(e.getSemanticDiagnostics(t),(e=>e.start===n.start&&e.length===n.length));if(void 0===r||void 0===r.relatedInformation)return;const i=w(r.relatedInformation,(e=>e.code===ws.This_type_parameter_might_need_an_extends_0_constraint.code));if(void 0===i||void 0===i.file||void 0===i.start||void 0===i.length)return;let o=goe(i.file,ec(i.start,i.length));if(void 0!==o&&(YC(o)&&pN(o.parent)&&(o=o.parent),pN(o))){if(WN(o.parent))return;const r=QY(t,n.start),s=function(e,t){if(Du(t.parent))return e.getTypeArgumentConstraint(t.parent);const n=td(t)?e.getContextualType(t):void 0;return n||e.getTypeAtLocation(t)}(e.getTypeChecker(),r)||function(e){const[,t]=oK(e,"\n",0).match(/`extends (.*)`/)||[];return t}(i.messageText);return{constraint:s,declaration:o,token:r}}}function fte(e,t,n,r,i,o){const{declaration:s,constraint:a}=o,c=t.getTypeChecker();if(lt(a))e.insertText(i,s.name.end,` extends ${a}`);else{const o=MS(t.getCompilerOptions()),l=Zie({program:t,host:r}),u=Iee(i,t,n,r),d=roe(c,u,a,void 0,o,void 0,l);d&&(e.replaceNode(i,s,oE.updateTypeParameterDeclaration(s,void 0,s.name,d,s.default)),u.writeFixes(e))}}n7({errorCodes:_te,getCodeActions(e){const{sourceFile:t,span:n,program:r,preferences:i,host:o}=e,s=pte(r,t,n);if(void 0===s)return;const a=Xde.ChangeTracker.with(e,(e=>fte(e,r,i,o,t,s)));return[$8(dte,a,ws.Add_extends_constraint,dte,ws.Add_extends_constraint_to_all_type_parameters)]},fixIds:[dte],getAllCodeActions:e=>{const{program:t,preferences:n,host:r}=e,i=new Map;return s7(Xde.ChangeTracker.with(e,(o=>{l7(e,_te,(e=>{const s=pte(t,e.file,ec(e.start,e.length));if(s&&jx(i,Gz(s.declaration)))return fte(o,t,n,r,e.file,s)}))})))}});var mte="fixOverrideModifier",hte="fixAddOverrideModifier",gte="fixRemoveOverrideModifier",yte=[ws.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0.code,ws.This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class.code,ws.This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0.code,ws.This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0.code,ws.This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0.code,ws.This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code,ws.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class.code,ws.This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code,ws.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0.code],vte={[ws.This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0.code]:{descriptions:ws.Add_override_modifier,fixId:hte,fixAllDescriptions:ws.Add_all_missing_override_modifiers},[ws.This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code]:{descriptions:ws.Add_override_modifier,fixId:hte,fixAllDescriptions:ws.Add_all_missing_override_modifiers},[ws.This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class.code]:{descriptions:ws.Remove_override_modifier,fixId:gte,fixAllDescriptions:ws.Remove_all_unnecessary_override_modifiers},[ws.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class.code]:{descriptions:ws.Remove_override_modifier,fixId:gte,fixAllDescriptions:ws.Remove_override_modifier},[ws.This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0.code]:{descriptions:ws.Add_override_modifier,fixId:hte,fixAllDescriptions:ws.Add_all_missing_override_modifiers},[ws.This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code]:{descriptions:ws.Add_override_modifier,fixId:hte,fixAllDescriptions:ws.Add_all_missing_override_modifiers},[ws.This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0.code]:{descriptions:ws.Add_override_modifier,fixId:hte,fixAllDescriptions:ws.Remove_all_unnecessary_override_modifiers},[ws.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0.code]:{descriptions:ws.Remove_override_modifier,fixId:gte,fixAllDescriptions:ws.Remove_all_unnecessary_override_modifiers},[ws.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0.code]:{descriptions:ws.Remove_override_modifier,fixId:gte,fixAllDescriptions:ws.Remove_all_unnecessary_override_modifiers}};function bte(e,t,n,r){switch(n){case ws.This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0.code:case ws.This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code:case ws.This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0.code:case ws.This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0.code:case ws.This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code:return function(e,t,n){const r=Ste(t,n);if(jm(t))return void e.addJSDocTags(t,r,[oE.createJSDocOverrideTag(oE.createIdentifier("override"))]);const i=r.modifiers||_,o=w(i,iN),s=w(i,oN),a=w(i,(e=>kZ(e.kind))),c=k(i,mN),l=s?s.end:o?o.end:a?a.end:c?da(t.text,c.end):r.getStart(t),u=a||o||s?{prefix:" "}:{suffix:" "};e.insertModifierAt(t,l,164,u)}(e,t.sourceFile,r);case ws.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0.code:case ws.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0.code:case ws.This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class.code:case ws.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class.code:return function(e,t,n){const r=Ste(t,n);if(jm(t))return void e.filterJSDocTags(t,r,fn(TD));const i=w(r.modifiers,sN);Tn.assertIsDefined(i),e.deleteModifier(t,i)}(e,t.sourceFile,r);default:Tn.fail("Unexpected error code: "+n)}}function xte(e){switch(e.kind){case 176:case 172:case 174:case 177:case 178:return!0;case 169:return cc(e,e.parent);default:return!1}}function Ste(e,t){const n=bc(QY(e,t),(e=>xu(e)?"quit":xte(e)));return Tn.assert(n&&xte(n)),n}n7({errorCodes:yte,getCodeActions:function(e){const{errorCode:t,span:n}=e,r=vte[t];if(!r)return _;const{descriptions:i,fixId:o,fixAllDescriptions:s}=r,a=Xde.ChangeTracker.with(e,(r=>bte(r,e,t,n.start)));return[e7(mte,a,i,o,s)]},fixIds:[mte,hte,gte],getAllCodeActions:e=>c7(e,yte,((t,n)=>{const{code:r,start:i}=n,o=vte[r];o&&o.fixId===e.fixId&&bte(t,e,r,i)}))});var Tte="fixNoPropertyAccessFromIndexSignature",wte=[ws.Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0.code];function kte(e,t,n,r){const i=iX(t,r),o=oE.createStringLiteral(n.name.text,0===i);e.replaceNode(t,n,wl(n)?oE.createElementAccessChain(n.expression,n.questionDotToken,o):oE.createElementAccessExpression(n.expression,o))}function Ete(e,t){return _t(QY(e,t).parent,nA)}n7({errorCodes:wte,fixIds:[Tte],getCodeActions(e){const{sourceFile:t,span:n,preferences:r}=e,i=Ete(t,n.start),o=Xde.ChangeTracker.with(e,(t=>kte(t,e.sourceFile,i,r)));return[$8(Tte,o,[ws.Use_element_access_for_0,i.name.text],Tte,ws.Use_element_access_for_all_undeclared_properties)]},getAllCodeActions:e=>c7(e,wte,((t,n)=>kte(t,n.file,Ete(n.file,n.start),e.preferences)))});var Cte="fixImplicitThis",Nte=[ws.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code];function Ate(e,t,n,r){const i=QY(t,n);if(!yY(i))return;const o=cm(i,!1,!1);if((tI(o)||lA(o))&&!YI(cm(o,!1,!1))){const n=Tn.checkDefined(FY(o,100,t)),{name:i}=o,s=Tn.checkDefined(o.body);if(lA(o)){if(i&&Ice.Core.isSymbolReferencedInFile(i,r,t,s))return;return e.delete(t,n),i&&e.delete(t,i),e.insertText(t,s.pos," =>"),[ws.Convert_function_expression_0_to_arrow_function,i?i.text:N$]}return e.replaceNode(t,n,oE.createToken(87)),e.insertText(t,i.end," = "),e.insertText(t,s.pos," =>"),[ws.Convert_function_declaration_0_to_arrow_function,i.text]}}n7({errorCodes:Nte,getCodeActions:function(e){const{sourceFile:t,program:n,span:r}=e;let i;const o=Xde.ChangeTracker.with(e,(e=>{i=Ate(e,t,r.start,n.getTypeChecker())}));return i?[$8(Cte,o,i,Cte,ws.Fix_all_implicit_this_errors)]:_},fixIds:[Cte],getAllCodeActions:e=>c7(e,Nte,((t,n)=>{Ate(t,n.file,n.start,e.program.getTypeChecker())}))});var Ite="fixImportNonExportedMember",Dte=[ws.Module_0_declares_1_locally_but_it_is_not_exported.code];function Pte(e,t,n){var r,i;const o=QY(e,t);if(YC(o)){const t=bc(o,dI);if(void 0===t)return;const s=MC(t.moduleSpecifier)?t.moduleSpecifier:void 0;if(void 0===s)return;const a=null==(r=n.getResolvedModuleFromModuleSpecifier(s,e))?void 0:r.resolvedModule;if(void 0===a)return;const c=n.getSourceFile(a.resolvedFileName);if(void 0===c||b0(n,c))return;const l=null==(i=dt(c.symbol.valueDeclaration,vd))?void 0:i.locals;if(void 0===l)return;const u=l.get(o.escapedText);if(void 0===u)return;const d=function(e){if(void 0===e.valueDeclaration)return we(e.declarations);const t=e.valueDeclaration,n=$A(t)?dt(t.parent.parent,FA):void 0;return n&&1===m(n.declarationList.declarations)?n:t}(u);if(void 0===d)return;return{exportName:{node:o,isTypeOnly:ok(d)},node:d,moduleSourceFile:c,moduleSpecifier:s.text}}}function Mte(e,t,n,r,i){m(r)&&(i?Fte(e,t,n,i,r):Rte(e,t,n,r))}function Ote(e,t){return k(e.statements,(e=>TI(e)&&(t&&e.isTypeOnly||!e.isTypeOnly)))}function Fte(e,t,n,r,i){const o=r.exportClause&&wI(r.exportClause)?r.exportClause.elements:oE.createNodeArray([]),s=!(r.isTypeOnly||!LS(t.getCompilerOptions())&&!w(o,(e=>e.isTypeOnly)));e.replaceNode(n,r,oE.updateExportDeclaration(r,r.modifiers,r.isTypeOnly,oE.createNamedExports(oE.createNodeArray([...o,...Lte(i,s)],o.hasTrailingComma)),r.moduleSpecifier,r.attributes))}function Rte(e,t,n,r){e.insertNodeAtEndOfScope(n,n,oE.createExportDeclaration(void 0,!1,oE.createNamedExports(Lte(r,LS(t.getCompilerOptions()))),void 0,void 0))}function Lte(e,t){return oE.createNodeArray(R(e,(e=>oE.createExportSpecifier(t&&e.isTypeOnly,void 0,e.node))))}n7({errorCodes:Dte,fixIds:[Ite],getCodeActions(e){const{sourceFile:t,span:n,program:r}=e,i=Pte(t,n.start,r);if(void 0===i)return;const o=Xde.ChangeTracker.with(e,(e=>function(e,t,{exportName:n,node:r,moduleSourceFile:i}){const o=Ote(i,n.isTypeOnly);o?Fte(e,t,i,o,[n]):sk(r)?e.insertExportModifier(i,r):Rte(e,t,i,[n])}(e,r,i)));return[$8(Ite,o,[ws.Export_0_from_module_1,i.exportName.node.text,i.moduleSpecifier],Ite,ws.Export_all_referenced_locals)]},getAllCodeActions(e){const{program:t}=e;return s7(Xde.ChangeTracker.with(e,(n=>{const r=new Map;l7(e,Dte,(e=>{const i=Pte(e.file,e.start,t);if(void 0===i)return;const{exportName:o,node:s,moduleSourceFile:a}=i;if(void 0===Ote(a,o.isTypeOnly)&&sk(s))n.insertExportModifier(a,s);else{const e=r.get(a)||{typeOnlyExports:[],exports:[]};o.isTypeOnly?e.typeOnlyExports.push(o):e.exports.push(o),r.set(a,e)}})),r.forEach(((e,r)=>{const i=Ote(r,!0);i&&i.isTypeOnly?(Mte(n,t,r,e.typeOnlyExports,i),Mte(n,t,r,e.exports,Ote(r,!1))):Mte(n,t,r,[...e.exports,...e.typeOnlyExports],i)}))})))}});var jte="fixIncorrectNamedTupleSyntax";n7({errorCodes:[ws.A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_colon_rather_than_after_the_type.code,ws.A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type.code],getCodeActions:function(e){const{sourceFile:t,span:n}=e,r=function(e,t){const n=QY(e,t);return bc(n,(e=>202===e.kind))}(t,n.start),i=Xde.ChangeTracker.with(e,(e=>function(e,t,n){if(!n)return;let r=n.type,i=!1,o=!1;for(;190===r.kind||191===r.kind||196===r.kind;)190===r.kind?i=!0:191===r.kind&&(o=!0),r=r.type;const s=oE.updateNamedTupleMember(n,n.dotDotDotToken||(o?oE.createToken(26):void 0),n.name,n.questionToken||(i?oE.createToken(58):void 0),r);if(s===n)return;e.replaceNode(t,n,s)}(e,t,r)));return[$8(jte,i,ws.Move_labeled_tuple_element_modifiers_to_labels,jte,ws.Move_labeled_tuple_element_modifiers_to_labels)]},fixIds:[jte]});var zte="fixSpelling",Ute=[ws.Property_0_does_not_exist_on_type_1_Did_you_mean_2.code,ws.Property_0_may_not_exist_on_type_1_Did_you_mean_2.code,ws.Cannot_find_name_0_Did_you_mean_1.code,ws.Could_not_find_name_0_Did_you_mean_1.code,ws.Cannot_find_namespace_0_Did_you_mean_1.code,ws.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0.code,ws.Cannot_find_name_0_Did_you_mean_the_static_member_1_0.code,ws._0_has_no_exported_member_named_1_Did_you_mean_2.code,ws.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1.code,ws.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1.code,ws.No_overload_matches_this_call.code,ws.Type_0_is_not_assignable_to_type_1.code];function Bte(e,t,n,r){const i=QY(e,t),o=i.parent;if((r===ws.No_overload_matches_this_call.code||r===ws.Type_0_is_not_assignable_to_type_1.code)&&!LI(o))return;const s=n.program.getTypeChecker();let a;if(nA(o)&&o.name===i){Tn.assert(Sl(i),"Expected an identifier for spelling (property access)");let e=s.getTypeAtLocation(o.expression);64&o.flags&&(e=s.getNonNullableType(e)),a=s.getSuggestedSymbolForNonexistentProperty(i,e)}else if(gA(o)&&103===o.operatorToken.kind&&o.left===i&&ZC(i)){const e=s.getTypeAtLocation(o.right);a=s.getSuggestedSymbolForNonexistentProperty(i,e)}else if(dN(o)&&o.right===i){const e=s.getSymbolAtLocation(o.left);e&&1536&e.flags&&(a=s.getSuggestedSymbolForNonexistentModule(o.right,e))}else if(xI(o)&&o.name===i){Tn.assertNode(i,YC,"Expected an identifier for spelling (import)");const t=function(e,t,n){var r;if(!t||!Hd(t.moduleSpecifier))return;const i=null==(r=e.program.getResolvedModuleFromModuleSpecifier(t.moduleSpecifier,n))?void 0:r.resolvedModule;return i?e.program.getSourceFile(i.resolvedFileName):void 0}(n,bc(i,dI),e);t&&t.symbol&&(a=s.getSuggestedSymbolForNonexistentModule(i,t.symbol))}else if(LI(o)&&o.name===i){Tn.assertNode(i,YC,"Expected an identifier for JSX attribute");const e=bc(i,Pd),t=s.getContextualTypeForArgumentAtIndex(e,0);a=s.getSuggestedSymbolForNonexistentJSXAttribute(i,t)}else if(Hv(o)&&bu(o)&&o.name===i){const e=bc(i,xu),t=e?Cg(e):void 0,n=t?s.getTypeAtLocation(t):void 0;n&&(a=s.getSuggestedSymbolForNonexistentClassMember(ep(i),n))}else{const e=VQ(i),t=ep(i);Tn.assert(void 0!==t,"name should be defined"),a=s.getSuggestedSymbolForNonexistentSymbol(i,t,function(e){let t=0;4&e&&(t|=1920);2&e&&(t|=788968);1&e&&(t|=111551);return t}(e))}return void 0===a?void 0:{node:i,suggestedSymbol:a}}function qte(e,t,n,r,i){const o=Cc(r);if(!Aa(o,i)&&nA(n.parent)){const i=r.valueDeclaration;i&&Pc(i)&&ZC(i.name)?e.replaceNode(t,n,oE.createIdentifier(o)):e.replaceNode(t,n.parent,oE.createElementAccessExpression(n.parent.expression,oE.createStringLiteral(o)))}else e.replaceNode(t,n,oE.createIdentifier(o))}n7({errorCodes:Ute,getCodeActions(e){const{sourceFile:t,errorCode:n}=e,r=Bte(t,e.span.start,e,n);if(!r)return;const{node:i,suggestedSymbol:o}=r,s=MS(e.host.getCompilationSettings());return[$8("spelling",Xde.ChangeTracker.with(e,(e=>qte(e,t,i,o,s))),[ws.Change_spelling_to_0,Cc(o)],zte,ws.Fix_all_detected_spelling_errors)]},fixIds:[zte],getAllCodeActions:e=>c7(e,Ute,((t,n)=>{const r=Bte(n.file,n.start,e,n.code),i=MS(e.host.getCompilationSettings());r&&qte(t,e.sourceFile,r.node,r.suggestedSymbol,i)}))});var Vte="returnValueCorrect",Kte="fixAddReturnStatement",Jte="fixRemoveBracesFromArrowFunctionBody",Wte="fixWrapTheBlockWithParen",Hte=[ws.A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value.code,ws.Type_0_is_not_assignable_to_type_1.code,ws.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code];function Gte(e,t,n){const r=e.createSymbol(4,t.escapedText);r.links.type=e.getTypeAtLocation(n);const i=o_([r]);return e.createAnonymousType(void 0,i,[],[],[])}function Qte(e,t,n,r){if(!t.body||!OA(t.body)||1!==m(t.body.statements))return;const i=Ee(t.body.statements);if(LA(i)&&Yte(e,t,e.getTypeAtLocation(i.expression),n,r))return{declaration:t,kind:0,expression:i.expression,statement:i,commentSource:i.expression};if(QA(i)&&LA(i.statement)){const o=oE.createObjectLiteralExpression([oE.createPropertyAssignment(i.label,i.statement.expression)]);if(Yte(e,t,Gte(e,i.label,i.statement.expression),n,r))return uA(t)?{declaration:t,kind:1,expression:o,statement:i,commentSource:i.statement.expression}:{declaration:t,kind:0,expression:o,statement:i,commentSource:i.statement.expression}}else if(OA(i)&&1===m(i.statements)){const o=Ee(i.statements);if(QA(o)&&LA(o.statement)){const s=oE.createObjectLiteralExpression([oE.createPropertyAssignment(o.label,o.statement.expression)]);if(Yte(e,t,Gte(e,o.label,o.statement.expression),n,r))return{declaration:t,kind:0,expression:s,statement:i,commentSource:o}}}}function Yte(e,t,n,r,i){if(i){const r=e.getSignatureFromDeclaration(t);if(r){Kv(t,1024)&&(n=e.createPromiseType(n));const i=e.createSignature(t,r.typeParameters,r.thisParameter,r.parameters,n,void 0,r.minArgumentCount,r.flags);n=e.createAnonymousType(void 0,o_(),[i],[],[])}else n=e.getAnyType()}return e.isTypeAssignableTo(n,r)}function Zte(e,t,n,r){const i=QY(t,n);if(!i.parent)return;const o=bc(i.parent,mu);switch(r){case ws.A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value.code:if(!(o&&o.body&&o.type&&xY(o.type,i)))return;return Qte(e,o,e.getTypeFromTypeNode(o.type),!1);case ws.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code:if(!o||!iA(o.parent)||!o.body)return;const t=o.parent.arguments.indexOf(o);if(-1===t)return;const n=e.getContextualTypeForArgumentAtIndex(o.parent,t);if(!n)return;return Qte(e,o,n,!0);case ws.Type_0_is_not_assignable_to_type_1.code:if(!gg(i)||!jf(i.parent)&&!LI(i.parent))return;const r=function(e){switch(e.kind){case 260:case 169:case 208:case 172:case 303:return e.initializer;case 291:return e.initializer&&(UI(e.initializer)?e.initializer.expression:void 0);case 304:case 171:case 306:case 348:case 341:return}}(i.parent);if(!r||!mu(r)||!r.body)return;return Qte(e,r,e.getTypeAtLocation(i.parent),!0)}}function Xte(e,t,n,r){c$(n);const i=R$(t);e.replaceNode(t,r,oE.createReturnStatement(n),{leadingTriviaOption:Xde.LeadingTriviaOption.Exclude,trailingTriviaOption:Xde.TrailingTriviaOption.Exclude,suffix:i?";":void 0})}function $te(e,t,n,r,i,o){const s=o||x$(r)?oE.createParenthesizedExpression(r):r;c$(i),d$(i,s),e.replaceNode(t,n.body,s)}function ene(e,t,n,r){e.replaceNode(t,n.body,oE.createParenthesizedExpression(r))}function tne(e,t,n){const r=Xde.ChangeTracker.with(e,(r=>Xte(r,e.sourceFile,t,n)));return $8(Vte,r,ws.Add_a_return_statement,Kte,ws.Add_all_missing_return_statement)}function nne(e,t,n){const r=Xde.ChangeTracker.with(e,(r=>ene(r,e.sourceFile,t,n)));return $8(Vte,r,ws.Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal,Wte,ws.Wrap_all_object_literal_with_parentheses)}n7({errorCodes:Hte,fixIds:[Kte,Jte,Wte],getCodeActions:function(e){const{program:t,sourceFile:n,span:{start:r},errorCode:i}=e,o=Zte(t.getTypeChecker(),n,r,i);if(o)return 0===o.kind?_e([tne(e,o.expression,o.statement)],uA(o.declaration)?function(e,t,n,r){const i=Xde.ChangeTracker.with(e,(i=>$te(i,e.sourceFile,t,n,r,!1)));return $8(Vte,i,ws.Remove_braces_from_arrow_function_body,Jte,ws.Remove_braces_from_all_arrow_function_bodies_with_relevant_issues)}(e,o.declaration,o.expression,o.commentSource):void 0):[nne(e,o.declaration,o.expression)]},getAllCodeActions:e=>c7(e,Hte,((t,n)=>{const r=Zte(e.program.getTypeChecker(),n.file,n.start,n.code);if(r)switch(e.fixId){case Kte:Xte(t,n.file,r.expression,r.statement);break;case Jte:if(!uA(r.declaration))return;$te(t,n.file,r.declaration,r.expression,r.commentSource,!1);break;case Wte:if(!uA(r.declaration))return;ene(t,n.file,r.declaration,r.expression);break;default:Tn.fail(JSON.stringify(e.fixId))}}))});var rne="fixMissingMember",ine="fixMissingProperties",one="fixMissingAttributes",sne="fixMissingFunctionDeclaration",ane=[ws.Property_0_does_not_exist_on_type_1.code,ws.Property_0_does_not_exist_on_type_1_Did_you_mean_2.code,ws.Property_0_is_missing_in_type_1_but_required_in_type_2.code,ws.Type_0_is_missing_the_following_properties_from_type_1_Colon_2.code,ws.Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more.code,ws.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,ws.Cannot_find_name_0.code];function cne(e,t,n,r,i){var o;const s=QY(e,t),a=s.parent;if(n===ws.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code){if(19!==s.kind||!tA(a)||!iA(a.parent))return;const e=E(a.parent.arguments,(e=>e===a));if(e<0)return;const t=r.getResolvedSignature(a.parent);if(!(t&&t.declaration&&t.parameters[e]))return;const n=t.parameters[e].valueDeclaration;if(!(n&&fN(n)&&YC(n.name)))return;const i=Ke(r.getUnmatchedProperties(r.getTypeAtLocation(a),r.getParameterType(t,e),!1,!1));if(!m(i))return;return{kind:3,token:n.name,identifier:n.name.text,properties:i,parentDeclaration:a}}if(19===s.kind&&tA(a)){const e=r.getContextualType(a)||r.getTypeAtLocation(a),t=Ke(r.getUnmatchedProperties(r.getTypeAtLocation(a),e,!1,!1));if(!m(t))return;return{kind:3,token:a,identifier:"",properties:t,parentDeclaration:a}}if(!Sl(s))return;if(YC(s)&&Bd(a)&&a.initializer&&tA(a.initializer)){const e=r.getContextualType(s)||r.getTypeAtLocation(s),t=Ke(r.getUnmatchedProperties(r.getTypeAtLocation(a.initializer),e,!1,!1));if(!m(t))return;return{kind:3,token:s,identifier:s.text,properties:t,parentDeclaration:a.initializer}}if(YC(s)&&Pd(s.parent)){const e=function(e,t,n){const r=e.getContextualType(n.attributes);if(void 0===r)return _;const i=r.getProperties();if(!m(i))return _;const o=new Set;for(const s of n.attributes.properties)if(LI(s)&&o.add(hk(s.name)),zI(s)){const t=e.getTypeAtLocation(s.expression);for(const e of t.getProperties())o.add(e.escapedName)}return M(i,(e=>Aa(e.name,t,1)&&!(16777216&e.flags||48&bx(e)||o.has(e.escapedName))))}(r,MS(i.getCompilerOptions()),s.parent);if(!m(e))return;return{kind:4,token:s,attributes:e,parentDeclaration:s.parent}}if(YC(s)){const t=null==(o=r.getContextualType(s))?void 0:o.getNonNullableType();if(t&&16&Mx(t)){const n=we(r.getSignaturesOfType(t,0));if(void 0===n)return;return{kind:5,token:s,signature:n,sourceFile:e,parentDeclaration:xne(s)}}if(iA(a)&&a.expression===s)return{kind:2,token:s,call:a,sourceFile:e,modifierFlags:0,parentDeclaration:xne(s)}}if(!nA(a))return;const c=WZ(r.getTypeAtLocation(a.expression)),l=c.symbol;if(!l||!l.declarations)return;if(YC(s)&&iA(a.parent)){const t=w(l.declarations,sI),n=null==t?void 0:t.getSourceFile();if(t&&n&&!b0(i,n))return{kind:2,token:s,call:a.parent,sourceFile:e,modifierFlags:32,parentDeclaration:t};const r=w(l.declarations,YI);if(e.commonJsModuleIndicator)return;if(r&&!b0(i,r))return{kind:2,token:s,call:a.parent,sourceFile:r,modifierFlags:32,parentDeclaration:r}}const u=w(l.declarations,xu);if(!u&&ZC(s))return;const d=u||w(l.declarations,(e=>rI(e)||PN(e)));if(d&&!b0(i,d.getSourceFile())){const e=!PN(d)&&(c.target||c)!==r.getDeclaredTypeOfSymbol(l);if(e&&(ZC(s)||rI(d)))return;const t=d.getSourceFile(),n=PN(d)?0:(e?256:0)|(d0(s.text)?2:0),i=jm(t);return{kind:0,token:s,call:dt(a.parent,iA),modifierFlags:n,parentDeclaration:d,declSourceFile:t,isJSFile:i}}const p=w(l.declarations,oI);return!p||1056&c.flags||ZC(s)||b0(i,p.getSourceFile())?void 0:{kind:1,token:s,parentDeclaration:p}}function lne(e,t,n,r,i){const o=r.text;if(i){if(231===n.kind)return;const r=n.name.getText(),i=une(oE.createIdentifier(r),o);e.insertNodeAfter(t,n,i)}else if(ZC(r)){const r=oE.createPropertyDeclaration(void 0,o,void 0,void 0,void 0),i=pne(n);i?e.insertNodeAfter(t,i,r):e.insertMemberAtStart(t,n,r)}else{const r=yv(n);if(!r)return;const i=une(oE.createThis(),o);e.insertNodeAtConstructorEnd(t,r,i)}}function une(e,t){return oE.createExpressionStatement(oE.createAssignment(oE.createPropertyAccessExpression(e,t),bne()))}function dne(e,t,n){let r;if(226===n.parent.parent.kind){const i=n.parent.parent,o=n.parent===i.left?i.right:i.left,s=e.getWidenedType(e.getBaseTypeOfLiteralType(e.getTypeAtLocation(o)));r=e.typeToTypeNode(s,t,1)}else{const t=e.getContextualType(n.parent);r=t?e.typeToTypeNode(t,void 0,1):void 0}return r||oE.createKeywordTypeNode(133)}function _ne(e,t,n,r,i,o){const s=o?oE.createNodeArray(oE.createModifiersFromModifierFlags(o)):void 0,a=xu(n)?oE.createPropertyDeclaration(s,r,void 0,i,void 0):oE.createPropertySignature(void 0,r,void 0,i),c=pne(n);c?e.insertNodeAfter(t,c,a):e.insertMemberAtStart(t,n,a)}function pne(e){let t;for(const n of e.members){if(!gN(n))break;t=n}return t}function fne(e,t,n,r,i,o,s){const a=Iee(s,e.program,e.preferences,e.host),c=toe(xu(o)?174:173,e,a,n,r,i,o),l=function(e,t){if(PN(e))return;const n=bc(t,(e=>vN(e)||xN(e)));return n&&n.parent===e?n:void 0}(o,n);l?t.insertNodeAfter(s,l,c):t.insertMemberAtStart(s,o,c),a.writeFixes(t)}function mne(e,t,{token:n,parentDeclaration:r}){const i=$(r.members,(e=>{const n=t.getTypeAtLocation(e);return!!(n&&402653316&n.flags)})),o=r.getSourceFile(),s=oE.createEnumMember(n,i?oE.createStringLiteral(n.text):void 0),a=Ne(r.members);a?e.insertNodeInListAfter(o,a,s,r.members):e.insertMemberAtStart(o,r,s)}function hne(e,t,n){const r=iX(t.sourceFile,t.preferences),i=Iee(t.sourceFile,t.program,t.preferences,t.host),o=2===n.kind?toe(262,t,i,n.call,kc(n.token),n.modifierFlags,n.parentDeclaration):eoe(262,t,r,n.signature,loe(ws.Function_not_implemented.message,r),n.token,void 0,void 0,void 0,i);void 0===o&&Tn.fail("fixMissingFunctionDeclaration codefix got unexpected error."),WA(n.parentDeclaration)?e.insertNodeBefore(n.sourceFile,n.parentDeclaration,o,!0):e.insertNodeAtEndOfScope(n.sourceFile,n.parentDeclaration,o),i.writeFixes(e)}function gne(e,t,n){const r=Iee(t.sourceFile,t.program,t.preferences,t.host),i=iX(t.sourceFile,t.preferences),o=t.program.getTypeChecker(),s=n.parentDeclaration.attributes,a=$(s.properties,zI),c=R(n.attributes,(e=>{const s=vne(t,o,r,i,o.getTypeOfSymbol(e),n.parentDeclaration),a=oE.createIdentifier(e.name),c=oE.createJsxAttribute(a,oE.createJsxExpression(void 0,s));return Bw(a,c),c})),l=oE.createJsxAttributes(a?[...c,...s.properties]:[...s.properties,...c]),u={prefix:s.pos===s.end?" ":void 0};e.replaceNode(t.sourceFile,s,l,u),r.writeFixes(e)}function yne(e,t,n){const r=Iee(t.sourceFile,t.program,t.preferences,t.host),i=iX(t.sourceFile,t.preferences),o=MS(t.program.getCompilerOptions()),s=t.program.getTypeChecker(),a=R(n.properties,(e=>{const a=vne(t,s,r,i,s.getTypeOfSymbol(e),n.parentDeclaration);return oE.createPropertyAssignment(function(e,t,n,r){if(s_(e)){const t=r.symbolToNode(e,111551,void 0,1073741824);if(t&&_N(t))return t}return tk(e.name,t,0===n,!1,!1)}(e,o,i,s),a)})),c={leadingTriviaOption:Xde.LeadingTriviaOption.Exclude,trailingTriviaOption:Xde.TrailingTriviaOption.Exclude,indentation:n.indentation};e.replaceNode(t.sourceFile,n.parentDeclaration,oE.createObjectLiteralExpression([...n.parentDeclaration.properties,...a],!0),c),r.writeFixes(e)}function vne(e,t,n,r,i,o){if(3&i.flags)return bne();if(134217732&i.flags)return oE.createStringLiteral("",0===r);if(8&i.flags)return oE.createNumericLiteral(0);if(64&i.flags)return oE.createBigIntLiteral("0n");if(16&i.flags)return oE.createFalse();if(1056&i.flags){const e=i.symbol.exports?ke(i.symbol.exports.values()):i.symbol,n=t.symbolToExpression(i.symbol.parent?i.symbol.parent:i.symbol,111551,void 0,64);return void 0===e||void 0===n?oE.createNumericLiteral(0):oE.createPropertyAccessExpression(n,t.symbolToString(e))}if(256&i.flags)return oE.createNumericLiteral(i.value);if(2048&i.flags)return oE.createBigIntLiteral(i.value);if(128&i.flags)return oE.createStringLiteral(i.value,0===r);if(512&i.flags)return i===t.getFalseType()||i===t.getFalseType(!0)?oE.createFalse():oE.createTrue();if(65536&i.flags)return oE.createNull();if(1048576&i.flags){return y(i.types,(i=>vne(e,t,n,r,i,o)))??bne()}if(t.isArrayLikeType(i))return oE.createArrayLiteralExpression();if(function(e){return 524288&e.flags&&(128&Mx(e)||e.symbol&&dt(Ie(e.symbol.declarations),PN))}(i)){const s=R(t.getPropertiesOfType(i),(i=>{const s=vne(e,t,n,r,t.getTypeOfSymbol(i),o);return oE.createPropertyAssignment(i.name,s)}));return oE.createObjectLiteralExpression(s,!0)}if(16&Mx(i)){if(void 0===w(i.symbol.declarations||_,pn(AN,yN,vN)))return bne();const s=t.getSignaturesOfType(i,0);if(void 0===s)return bne();return eoe(218,e,r,s[0],loe(ws.Function_not_implemented.message,r),void 0,void 0,void 0,o,n)??bne()}if(1&Mx(i)){const e=Px(i.symbol);if(void 0===e||Gv(e))return bne();const t=yv(e);return t&&m(t.parameters)?bne():oE.createNewExpression(oE.createIdentifier(i.symbol.name),void 0,void 0)}return bne()}function bne(){return oE.createIdentifier("undefined")}function xne(e){if(bc(e,UI)){const t=bc(e.parent,WA);if(t)return t}return C_(e)}n7({errorCodes:ane,getCodeActions(e){const t=e.program.getTypeChecker(),n=cne(e.sourceFile,e.span.start,e.errorCode,t,e.program);if(n){if(3===n.kind){const t=Xde.ChangeTracker.with(e,(t=>yne(t,e,n)));return[$8(ine,t,ws.Add_missing_properties,ine,ws.Add_all_missing_properties)]}if(4===n.kind){const t=Xde.ChangeTracker.with(e,(t=>gne(t,e,n)));return[$8(one,t,ws.Add_missing_attributes,one,ws.Add_all_missing_attributes)]}if(2===n.kind||5===n.kind){const t=Xde.ChangeTracker.with(e,(t=>hne(t,e,n)));return[$8(sne,t,[ws.Add_missing_function_declaration_0,n.token.text],sne,ws.Add_all_missing_function_declarations)]}if(1===n.kind){const t=Xde.ChangeTracker.with(e,(t=>mne(t,e.program.getTypeChecker(),n)));return[$8(rne,t,[ws.Add_missing_enum_member_0,n.token.text],rne,ws.Add_all_missing_members)]}return te(function(e,t){const{parentDeclaration:n,declSourceFile:r,modifierFlags:i,token:o,call:s}=t;if(void 0===s)return;const a=o.text,c=t=>Xde.ChangeTracker.with(e,(i=>fne(e,i,s,o,t,n,r))),l=[$8(rne,c(256&i),[256&i?ws.Declare_static_method_0:ws.Declare_method_0,a],rne,ws.Add_all_missing_members)];2&i&&l.unshift(X8(rne,c(2),[ws.Declare_private_method_0,a]));return l}(e,n),function(e,t){return t.isJSFile?hn(function(e,{parentDeclaration:t,declSourceFile:n,modifierFlags:r,token:i}){if(rI(t)||PN(t))return;const o=Xde.ChangeTracker.with(e,(e=>lne(e,n,t,i,!!(256&r))));if(0===o.length)return;const s=256&r?ws.Initialize_static_property_0:ZC(i)?ws.Declare_a_private_field_named_0:ws.Initialize_property_0_in_the_constructor;return $8(rne,o,[s,i.text],rne,ws.Add_all_missing_members)}(e,t)):function(e,{parentDeclaration:t,declSourceFile:n,modifierFlags:r,token:i}){const o=i.text,s=256&r,a=dne(e.program.getTypeChecker(),t,i),c=r=>Xde.ChangeTracker.with(e,(e=>_ne(e,n,t,o,a,r))),l=[$8(rne,c(256&r),[s?ws.Declare_static_property_0:ws.Declare_property_0,o],rne,ws.Add_all_missing_members)];if(s||ZC(i))return l;2&r&&l.unshift(X8(rne,c(2),[ws.Declare_private_property_0,o]));return l.push(function(e,t,n,r,i){const o=oE.createKeywordTypeNode(154),s=oE.createParameterDeclaration(void 0,void 0,"x",void 0,o,void 0),a=oE.createIndexSignature(void 0,[s],i),c=Xde.ChangeTracker.with(e,(e=>e.insertMemberAtStart(t,n,a)));return X8(rne,c,[ws.Add_index_signature_for_property_0,r])}(e,n,t,i.text,a)),l}(e,t)}(e,n))}},fixIds:[rne,sne,ine,one],getAllCodeActions:e=>{const{program:t,fixId:n}=e,r=t.getTypeChecker(),i=new Map,o=new Map;return s7(Xde.ChangeTracker.with(e,(t=>{l7(e,ane,(s=>{const a=cne(s.file,s.start,s.code,r,e.program);if(a&&jx(i,Gz(a.parentDeclaration)+"#"+(3===a.kind?a.identifier:a.token.text)))if(n!==sne||2!==a.kind&&5!==a.kind){if(n===ine&&3===a.kind)yne(t,e,a);else if(n===one&&4===a.kind)gne(t,e,a);else if(1===a.kind&&mne(t,r,a),0===a.kind){const{parentDeclaration:e,token:t}=a,n=G(o,e,(()=>[]));n.some((e=>e.token.text===t.text))||n.push(a)}}else hne(t,e,a)})),o.forEach(((n,i)=>{const s=PN(i)?void 0:koe(i,r);for(const a of n){if(null==s?void 0:s.some((e=>{const t=o.get(e);return!!t&&t.some((({token:e})=>e.text===a.token.text))})))continue;const{parentDeclaration:n,declSourceFile:i,modifierFlags:c,token:l,call:u,isJSFile:d}=a;if(u&&!ZC(l))fne(e,t,u,l,256&c,n,i);else if(!d||rI(n)||PN(n)){const e=dne(r,n,l);_ne(t,i,n,l.text,e,256&c)}else lne(t,i,n,l,!!(256&c))}}))})))}});var Sne="addMissingNewOperator",Tne=[ws.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new.code];function wne(e,t,n){const r=_t(function(e,t){let n=QY(e,t.start);const r=qa(t);for(;n.end<r;)n=n.parent;return n}(t,n),iA),i=oE.createNewExpression(r.expression,r.typeArguments,r.arguments);e.replaceNode(t,r,i)}n7({errorCodes:Tne,getCodeActions(e){const{sourceFile:t,span:n}=e,r=Xde.ChangeTracker.with(e,(e=>wne(e,t,n)));return[$8(Sne,r,ws.Add_missing_new_operator_to_call,Sne,ws.Add_missing_new_operator_to_all_calls)]},fixIds:[Sne],getAllCodeActions:e=>c7(e,Tne,((t,n)=>wne(t,e.sourceFile,n)))});var kne="addMissingParam",Ene="addOptionalParam",Cne=[ws.Expected_0_arguments_but_got_1.code];function Nne(e,t,n){const r=bc(QY(e,n),iA);if(void 0===r||0===m(r.arguments))return;const i=t.getTypeChecker(),o=M(i.getTypeAtLocation(r.expression).symbol.declarations,Dne);if(void 0===o)return;const s=Ne(o);if(void 0===s||void 0===s.body||b0(t,s.getSourceFile()))return;const a=function(e){const t=Oc(e);if(t)return t;if($A(e.parent)&&YC(e.parent.name)||gN(e.parent)||fN(e.parent))return e.parent.name}(s);if(void 0===a)return;const c=[],l=[],u=m(s.parameters),d=m(r.arguments);if(u>d)return;const _=[s,...Mne(s,o)];for(let p=0,f=0,m=0;p<d;p++){const e=r.arguments[p],t=Bx(e)?qx(e):e,n=i.getWidenedType(i.getBaseTypeOfLiteralType(i.getTypeAtLocation(e))),o=f<u?s.parameters[f]:void 0;if(o&&i.isTypeAssignableTo(n,i.getTypeAtLocation(o))){f++;continue}const a=t&&YC(t)?t.text:"p"+m++,d=Ane(i,n,s);_e(c,{pos:p,declaration:Fne(a,d,void 0)}),Rne(_,f)||_e(l,{pos:p,declaration:Fne(a,d,oE.createToken(58))})}return{newParameters:c,newOptionalParameters:l,name:Lp(a),declarations:_}}function Ane(e,t,n){return e.typeToTypeNode(e.getWidenedType(t),n,1)??oE.createKeywordTypeNode(159)}function Ine(e,t,n,r,i,o){const s=MS(t.getCompilerOptions());h(i,(i=>{const a=C_(i),c=Iee(a,t,n,r);m(i.parameters)?e.replaceNodeRangeWithNodes(a,Ee(i.parameters),Ae(i.parameters),Pne(c,s,i,o),{joiner:", ",indentation:0,leadingTriviaOption:Xde.LeadingTriviaOption.IncludeAll,trailingTriviaOption:Xde.TrailingTriviaOption.Include}):h(Pne(c,s,i,o),((t,n)=>{0===m(i.parameters)&&0===n?e.insertNodeAt(a,i.parameters.end,t):e.insertNodeAtEndOfList(a,i.parameters,t)})),c.writeFixes(e)}))}function Dne(e){switch(e.kind){case 262:case 218:case 174:case 219:return!0;default:return!1}}function Pne(e,t,n,r){const i=R(n.parameters,(e=>oE.createParameterDeclaration(e.modifiers,e.dotDotDotToken,e.name,e.questionToken,e.type,e.initializer)));for(const{pos:o,declaration:s}of r){const n=o>0?i[o-1]:void 0;i.splice(o,0,oE.updateParameterDeclaration(s,s.modifiers,s.dotDotDotToken,s.name,n&&n.questionToken?oE.createToken(58):s.questionToken,Lne(e,s.type,t),s.initializer))}return i}function Mne(e,t){const n=[];for(const r of t)if(One(r)){if(m(r.parameters)===m(e.parameters)){n.push(r);continue}if(m(r.parameters)>m(e.parameters))return[]}return n}function One(e){return Dne(e)&&void 0===e.body}function Fne(e,t,n){return oE.createParameterDeclaration(void 0,void 0,e,n,t,void 0)}function Rne(e,t){return m(e)&&$(e,(e=>t<m(e.parameters)&&!!e.parameters[t]&&void 0===e.parameters[t].questionToken))}function Lne(e,t,n){const r=foe(t,n);return r?(hoe(e,r.symbols),r.typeNode):t}n7({errorCodes:Cne,fixIds:[kne,Ene],getCodeActions(e){const t=Nne(e.sourceFile,e.program,e.span.start);if(void 0===t)return;const{name:n,declarations:r,newParameters:i,newOptionalParameters:o}=t,s=[];return m(i)&&_e(s,$8(kne,Xde.ChangeTracker.with(e,(t=>Ine(t,e.program,e.preferences,e.host,r,i))),[m(i)>1?ws.Add_missing_parameters_to_0:ws.Add_missing_parameter_to_0,n],kne,ws.Add_all_missing_parameters)),m(o)&&_e(s,$8(Ene,Xde.ChangeTracker.with(e,(t=>Ine(t,e.program,e.preferences,e.host,r,o))),[m(o)>1?ws.Add_optional_parameters_to_0:ws.Add_optional_parameter_to_0,n],Ene,ws.Add_all_optional_parameters)),s},getAllCodeActions:e=>c7(e,Cne,((t,n)=>{const r=Nne(e.sourceFile,e.program,n.start);if(r){const{declarations:n,newParameters:i,newOptionalParameters:o}=r;e.fixId===kne&&Ine(t,e.program,e.preferences,e.host,n,i),e.fixId===Ene&&Ine(t,e.program,e.preferences,e.host,n,o)}}))});var jne="installTypesPackage",zne=ws.Cannot_find_module_0_or_its_corresponding_type_declarations.code,Une=[zne,ws.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type.code];function Bne(e,t){return{type:"install package",file:e,packageName:t}}function qne(e,t){const n=dt(QY(e,t),MC);if(!n)return;const r=n.text,{packageName:i}=mj(r);return za(i)?void 0:i}function Vne(e,t,n){var r;return n===zne?jG.nodeCoreModules.has(e)?"@types/node":void 0:(null==(r=t.isKnownTypesPackageName)?void 0:r.call(t,e))?Aj(e):void 0}n7({errorCodes:Une,getCodeActions:function(e){const{host:t,sourceFile:n,span:{start:r}}=e,i=qne(n,r);if(void 0===i)return;const o=Vne(i,t,e.errorCode);return void 0===o?[]:[$8("fixCannotFindModule",[],[ws.Install_0,o],jne,ws.Install_all_missing_types_packages,Bne(n.fileName,o))]},fixIds:[jne],getAllCodeActions:e=>c7(e,Une,((t,n,r)=>{const i=qne(n.file,n.start);if(void 0!==i)switch(e.fixId){case jne:{const t=Vne(i,e.host,n.code);t&&r.push(Bne(n.file.fileName,t));break}default:Tn.fail(`Bad fixId: ${e.fixId}`)}}))});var Kne=[ws.Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2.code,ws.Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2.code,ws.Non_abstract_class_0_is_missing_implementations_for_the_following_members_of_1_Colon_2_and_3_more.code,ws.Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1.code,ws.Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1.code,ws.Non_abstract_class_expression_is_missing_implementations_for_the_following_members_of_0_Colon_1_and_2_more.code],Jne="fixClassDoesntImplementInheritedAbstractMember";function Wne(e,t){return _t(QY(e,t).parent,xu)}function Hne(e,t,n,r,i){const o=Cg(e),s=n.program.getTypeChecker(),a=s.getTypeAtLocation(o),c=s.getPropertiesOfType(a).filter(Gne),l=Iee(t,n.program,i,n.host);Yie(e,c,t,n,i,l,(n=>r.insertMemberAtStart(t,e,n))),l.writeFixes(r)}function Gne(e){const t=ib(Ee(e.getDeclarations()));return!(2&t||!(64&t))}n7({errorCodes:Kne,getCodeActions:function(e){const{sourceFile:t,span:n}=e,r=Xde.ChangeTracker.with(e,(r=>Hne(Wne(t,n.start),t,e,r,e.preferences)));return 0===r.length?void 0:[$8(Jne,r,ws.Implement_inherited_abstract_class,Jne,ws.Implement_all_inherited_abstract_classes)]},fixIds:[Jne],getAllCodeActions:function(e){const t=new Map;return c7(e,Kne,((n,r)=>{const i=Wne(r.file,r.start);jx(t,Gz(i))&&Hne(i,e.sourceFile,e,n,e.preferences)}))}});var Qne="classSuperMustPrecedeThisAccess",Yne=[ws.super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class.code];function Zne(e,t,n,r){e.insertNodeAtConstructorStart(t,n,r),e.delete(t,r)}function Xne(e,t){const n=QY(e,t);if(110!==n.kind)return;const r=nm(n),i=$ne(r.body);return i&&!i.expression.arguments.some((e=>nA(e)&&e.expression===n))?{constructor:r,superCall:i}:void 0}function $ne(e){return LA(e)&&ff(e.expression)?e:pu(e)?void 0:GM(e,$ne)}n7({errorCodes:Yne,getCodeActions(e){const{sourceFile:t,span:n}=e,r=Xne(t,n.start);if(!r)return;const{constructor:i,superCall:o}=r,s=Xde.ChangeTracker.with(e,(e=>Zne(e,t,i,o)));return[$8(Qne,s,ws.Make_super_call_the_first_statement_in_the_constructor,Qne,ws.Make_all_super_calls_the_first_statement_in_their_constructor)]},fixIds:[Qne],getAllCodeActions(e){const{sourceFile:t}=e,n=new Map;return c7(e,Yne,((e,r)=>{const i=Xne(r.file,r.start);if(!i)return;const{constructor:o,superCall:s}=i;jx(n,Gz(o.parent))&&Zne(e,t,o,s)}))}});var ere="constructorForDerivedNeedSuperCall",tre=[ws.Constructors_for_derived_classes_must_contain_a_super_call.code];function nre(e,t){const n=QY(e,t);return Tn.assert(xN(n.parent),"token should be at the constructor declaration"),n.parent}function rre(e,t,n){const r=oE.createExpressionStatement(oE.createCallExpression(oE.createSuper(),void 0,_));e.insertNodeAtConstructorStart(t,n,r)}n7({errorCodes:tre,getCodeActions(e){const{sourceFile:t,span:n}=e,r=nre(t,n.start),i=Xde.ChangeTracker.with(e,(e=>rre(e,t,r)));return[$8(ere,i,ws.Add_missing_super_call,ere,ws.Add_all_missing_super_calls)]},fixIds:[ere],getAllCodeActions:e=>c7(e,tre,((t,n)=>rre(t,e.sourceFile,nre(n.file,n.start))))});var ire="fixEnableJsxFlag",ore=[ws.Cannot_use_JSX_unless_the_jsx_flag_is_provided.code];function sre(e,t){doe(e,t,"jsx",oE.createStringLiteral("react"))}n7({errorCodes:ore,getCodeActions:function(e){const{configFile:t}=e.program.getCompilerOptions();if(void 0===t)return;const n=Xde.ChangeTracker.with(e,(e=>sre(e,t)));return[X8(ire,n,ws.Enable_the_jsx_flag_in_your_configuration_file)]},fixIds:[ire],getAllCodeActions:e=>c7(e,ore,(t=>{const{configFile:n}=e.program.getCompilerOptions();void 0!==n&&sre(t,n)}))});var are="fixNaNEquality",cre=[ws.This_condition_will_always_return_0.code];function lre(e,t,n){const r=w(e.getSemanticDiagnostics(t),(e=>e.start===n.start&&e.length===n.length));if(void 0===r||void 0===r.relatedInformation)return;const i=w(r.relatedInformation,(e=>e.code===ws.Did_you_mean_0.code));if(void 0===i||void 0===i.file||void 0===i.start||void 0===i.length)return;const o=goe(i.file,ec(i.start,i.length));return void 0!==o&&td(o)&&gA(o.parent)?{suggestion:dre(i.messageText),expression:o.parent,arg:o}:void 0}function ure(e,t,n,r){const i=oE.createCallExpression(oE.createPropertyAccessExpression(oE.createIdentifier("Number"),oE.createIdentifier("isNaN")),void 0,[n]),o=r.operatorToken.kind;e.replaceNode(t,r,38===o||36===o?oE.createPrefixUnaryExpression(54,i):i)}function dre(e){const[,t]=oK(e,"\n",0).match(/'(.*)'/)||[];return t}n7({errorCodes:cre,getCodeActions(e){const{sourceFile:t,span:n,program:r}=e,i=lre(r,t,n);if(void 0===i)return;const{suggestion:o,expression:s,arg:a}=i,c=Xde.ChangeTracker.with(e,(e=>ure(e,t,a,s)));return[$8(are,c,[ws.Use_0,o],are,ws.Use_Number_isNaN_in_all_conditions)]},fixIds:[are],getAllCodeActions:e=>c7(e,cre,((t,n)=>{const r=lre(e.program,n.file,ec(n.start,n.length));r&&ure(t,n.file,r.arg,r.expression)}))}),n7({errorCodes:[ws.Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher.code,ws.Top_level_await_using_statements_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher.code,ws.Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher.code],getCodeActions:function(e){const t=e.program.getCompilerOptions(),{configFile:n}=t;if(void 0===n)return;const r=[],i=OS(t);if(i>=5&&i<99){const t=Xde.ChangeTracker.with(e,(e=>{doe(e,n,"module",oE.createStringLiteral("esnext"))}));r.push(X8("fixModuleOption",t,[ws.Set_the_module_option_in_your_configuration_file_to_0,"esnext"]))}const o=MS(t);if(o<4||o>99){const t=Xde.ChangeTracker.with(e,(e=>{if(!$f(n))return;const t=[["target",oE.createStringLiteral("es2017")]];1===i&&t.push(["module",oE.createStringLiteral("commonjs")]),uoe(e,n,t)}));r.push(X8("fixTargetOption",t,[ws.Set_the_target_option_in_your_configuration_file_to_0,"es2017"]))}return r.length?r:void 0}});var _re="fixPropertyAssignment",pre=[ws.Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_part_of_a_destructuring_pattern.code];function fre(e,t,n){e.replaceNode(t,n,oE.createPropertyAssignment(n.name,n.objectAssignmentInitializer))}function mre(e,t){return _t(QY(e,t).parent,HI)}n7({errorCodes:pre,fixIds:[_re],getCodeActions(e){const{sourceFile:t,span:n}=e,r=mre(t,n.start),i=Xde.ChangeTracker.with(e,(t=>fre(t,e.sourceFile,r)));return[$8(_re,i,[ws.Change_0_to_1,"=",":"],_re,[ws.Switch_each_misused_0_to_1,"=",":"])]},getAllCodeActions:e=>c7(e,pre,((e,t)=>fre(e,t.file,mre(t.file,t.start))))});var hre="extendsInterfaceBecomesImplements",gre=[ws.Cannot_extend_an_interface_0_Did_you_mean_implements.code];function yre(e,t){const n=im(QY(e,t)).heritageClauses,r=n[0].getFirstToken();return 96===r.kind?{extendsToken:r,heritageClauses:n}:void 0}function vre(e,t,n,r){if(e.replaceNode(t,n,oE.createToken(119)),2===r.length&&96===r[0].token&&119===r[1].token){const n=r[1].getFirstToken(),i=n.getFullStart();e.replaceRange(t,{pos:i,end:i},oE.createToken(28));const o=t.text;let s=n.end;for(;s<o.length&&ra(o.charCodeAt(s));)s++;e.deleteRange(t,{pos:n.getStart(),end:s})}}n7({errorCodes:gre,getCodeActions(e){const{sourceFile:t}=e,n=yre(t,e.span.start);if(!n)return;const{extendsToken:r,heritageClauses:i}=n,o=Xde.ChangeTracker.with(e,(e=>vre(e,t,r,i)));return[$8(hre,o,ws.Change_extends_to_implements,hre,ws.Change_all_extended_interfaces_to_implements)]},fixIds:[hre],getAllCodeActions:e=>c7(e,gre,((e,t)=>{const n=yre(t.file,t.start);n&&vre(e,t.file,n.extendsToken,n.heritageClauses)}))});var bre="forgottenThisPropertyAccess",xre=ws.Cannot_find_name_0_Did_you_mean_the_static_member_1_0.code,Sre=[ws.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0.code,ws.Private_identifiers_are_only_allowed_in_class_bodies_and_may_only_be_used_as_part_of_a_class_member_declaration_property_access_or_on_the_left_hand_side_of_an_in_expression.code,xre];function Tre(e,t,n){const r=QY(e,t);if(YC(r)||ZC(r))return{node:r,className:n===xre?im(r).name.text:void 0}}function wre(e,t,{node:n,className:r}){c$(n),e.replaceNode(t,n,oE.createPropertyAccessExpression(r?oE.createIdentifier(r):oE.createThis(),n))}n7({errorCodes:Sre,getCodeActions(e){const{sourceFile:t}=e,n=Tre(t,e.span.start,e.errorCode);if(!n)return;const r=Xde.ChangeTracker.with(e,(e=>wre(e,t,n)));return[$8(bre,r,[ws.Add_0_to_unresolved_variable,n.className||"this"],bre,ws.Add_qualifier_to_all_unresolved_variables_matching_a_member_name)]},fixIds:[bre],getAllCodeActions:e=>c7(e,Sre,((t,n)=>{const r=Tre(n.file,n.start,n.code);r&&wre(t,e.sourceFile,r)}))});var kre="fixInvalidJsxCharacters_expression",Ere="fixInvalidJsxCharacters_htmlEntity",Cre=[ws.Unexpected_token_Did_you_mean_or_gt.code,ws.Unexpected_token_Did_you_mean_or_rbrace.code];n7({errorCodes:Cre,fixIds:[kre,Ere],getCodeActions(e){const{sourceFile:t,preferences:n,span:r}=e,i=Xde.ChangeTracker.with(e,(e=>Are(e,n,t,r.start,!1))),o=Xde.ChangeTracker.with(e,(e=>Are(e,n,t,r.start,!0)));return[$8(kre,i,ws.Wrap_invalid_character_in_an_expression_container,kre,ws.Wrap_all_invalid_characters_in_an_expression_container),$8(Ere,o,ws.Convert_invalid_character_to_its_html_entity_code,Ere,ws.Convert_all_invalid_characters_to_HTML_entity_code)]},getAllCodeActions:e=>c7(e,Cre,((t,n)=>Are(t,e.preferences,n.file,n.start,e.fixId===Ere)))});var Nre={">":">","}":"}"};function Are(e,t,n,r,i){const o=n.getText()[r];if(!function(e){return je(Nre,e)}(o))return;const s=i?Nre[o]:`{${T$(n,t,o)}}`;e.replaceRangeWithText(n,{pos:r,end:r+1},s)}var Ire="deleteUnmatchedParameter",Dre="renameUnmatchedParameter",Pre=[ws.JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name.code];function Mre(e,t){const n=QY(e,t);if(n.parent&&ND(n.parent)&&YC(n.parent.name)){const e=n.parent,t=Xh(e),r=Yh(e);if(t&&r)return{jsDocHost:t,signature:r,name:n.parent.name,jsDocParameterTag:e}}}n7({fixIds:[Ire,Dre],errorCodes:Pre,getCodeActions:function(e){const{sourceFile:t,span:n}=e,r=[],i=Mre(t,n.start);if(i)return _e(r,function(e,{name:t,jsDocHost:n,jsDocParameterTag:r}){const i=Xde.ChangeTracker.with(e,(t=>t.filterJSDocTags(e.sourceFile,n,(e=>e!==r))));return $8(Ire,i,[ws.Delete_unused_param_tag_0,t.getText(e.sourceFile)],Ire,ws.Delete_all_unused_param_tags)}(e,i)),_e(r,function(e,{name:t,jsDocHost:n,signature:r,jsDocParameterTag:i}){if(!m(r.parameters))return;const o=e.sourceFile,s=fl(r),a=new Set;for(const d of s)ND(d)&&YC(d.name)&&a.add(d.name.escapedText);const c=y(r.parameters,(e=>YC(e.name)&&!a.has(e.name.escapedText)?e.name.getText(o):void 0));if(void 0===c)return;const l=oE.updateJSDocParameterTag(i,i.tagName,oE.createIdentifier(c),i.isBracketed,i.typeExpression,i.isNameFirst,i.comment),u=Xde.ChangeTracker.with(e,(e=>e.replaceJSDocComment(o,n,R(s,(e=>e===i?l:e)))));return X8(Dre,u,[ws.Rename_param_tag_name_0_to_1,t.getText(o),c])}(e,i)),r},getAllCodeActions:function(e){const t=new Map;return s7(Xde.ChangeTracker.with(e,(n=>{l7(e,Pre,(({file:e,start:n})=>{const r=Mre(e,n);r&&t.set(r.signature,_e(t.get(r.signature),r.jsDocParameterTag))})),t.forEach(((t,r)=>{if(e.fixId===Ire){const e=new Set(t);n.filterJSDocTags(r.getSourceFile(),r,(t=>!e.has(t)))}}))})))}});var Ore="fixUnreferenceableDecoratorMetadata";n7({errorCodes:[ws.A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_when_isolatedModules_and_emitDecoratorMetadata_are_enabled.code],getCodeActions:e=>{const t=function(e,t,n){const r=dt(QY(e,n),YC);if(!r||183!==r.parent.kind)return;const i=t.getTypeChecker().getSymbolAtLocation(r);return w((null==i?void 0:i.declarations)||_,pn(_I,xI,uI))}(e.sourceFile,e.program,e.span.start);if(!t)return;const n=Xde.ChangeTracker.with(e,(n=>276===t.kind&&function(e,t,n,r){m3.doChangeNamedToNamespaceOrDefault(t,r,e,n.parent)}(n,e.sourceFile,t,e.program))),r=Xde.ChangeTracker.with(e,(n=>function(e,t,n,r){if(271===n.kind)return void e.insertModifierBefore(t,156,n.name);const i=273===n.kind?n:n.parent.parent;if(i.name&&i.namedBindings)return;const o=r.getTypeChecker();if(Mh(i,(e=>{if(111551&Sx(e.symbol,o).flags)return!0})))return;e.insertModifierBefore(t,156,i)}(n,e.sourceFile,t,e.program)));let i;return n.length&&(i=_e(i,X8(Ore,n,ws.Convert_named_imports_to_namespace_import))),r.length&&(i=_e(i,X8(Ore,r,ws.Use_import_type))),i},fixIds:[Ore]});var Fre="unusedIdentifier",Rre="unusedIdentifier_prefix",Lre="unusedIdentifier_delete",jre="unusedIdentifier_deleteImports",zre="unusedIdentifier_infer",Ure=[ws._0_is_declared_but_its_value_is_never_read.code,ws._0_is_declared_but_never_used.code,ws.Property_0_is_declared_but_its_value_is_never_read.code,ws.All_imports_in_import_declaration_are_unused.code,ws.All_destructured_elements_are_unused.code,ws.All_variables_are_unused.code,ws.All_type_parameters_are_unused.code];function Bre(e,t,n){e.replaceNode(t,n.parent,oE.createKeywordTypeNode(159))}function qre(e,t){return $8(Fre,e,t,Lre,ws.Delete_all_unused_declarations)}function Vre(e,t,n){e.delete(t,Tn.checkDefined(_t(n.parent,Cp).typeParameters,"The type parameter to delete should exist"))}function Kre(e){return 102===e.kind||80===e.kind&&(276===e.parent.kind||273===e.parent.kind)}function Jre(e){return 102===e.kind?dt(e.parent,dI):void 0}function Wre(e,t){return eI(t.parent)&&Ee(t.parent.getChildren(e))===t}function Hre(e,t,n){e.delete(t,243===n.parent.kind?n.parent:n)}function Gre(e,t,n,r){t!==ws.Property_0_is_declared_but_its_value_is_never_read.code&&(140===r.kind&&(r=_t(r.parent,BN).typeParameter.name),YC(r)&&function(e){switch(e.parent.kind){case 169:case 168:return!0;case 260:switch(e.parent.parent.parent.kind){case 250:case 249:return!0}}return!1}(r)&&(e.replaceNode(n,r,oE.createIdentifier(`_${r.text}`)),fN(r.parent)&&zc(r.parent).forEach((t=>{YC(t.name)&&e.replaceNode(n,t.name,oE.createIdentifier(`_${t.name.text}`))}))))}function Qre(e,t,n,r,i,o,s,a){!function(e,t,n,r,i,o,s,a){const{parent:c}=e;if(fN(c))!function(e,t,n,r,i,o,s,a=!1){if(function(e,t,n,r,i,o,s){const{parent:a}=n;switch(a.kind){case 174:case 176:const c=a.parameters.indexOf(n),l=vN(a)?a.name:a,u=Ice.Core.getReferencedSymbolsForNode(a.pos,l,i,r,o);if(u)for(const e of u)for(const t of e.references)if(t.kind===Ice.EntryKind.Node){const e=cN(t.node)&&iA(t.node.parent)&&t.node.parent.arguments.length>c,r=nA(t.node.parent)&&cN(t.node.parent.expression)&&iA(t.node.parent.parent)&&t.node.parent.parent.arguments.length>c,i=(vN(t.node.parent)||yN(t.node.parent))&&t.node.parent!==n.parent&&t.node.parent.parameters.length>c;if(e||r||i)return!1}return!0;case 262:return!a.name||!function(e,t,n){return!!Ice.Core.eachSymbolReferenceInFile(n,e,t,(e=>YC(e)&&iA(e.parent)&&e.parent.arguments.includes(e)))}(e,t,a.name)||Zre(a,n,s);case 218:case 219:return Zre(a,n,s);case 178:return!1;case 177:return!0;default:return Tn.failBadSyntaxKind(a)}}(r,t,n,i,o,s,a))if(n.modifiers&&n.modifiers.length>0&&(!YC(n.name)||Ice.Core.isSymbolReferencedInFile(n.name,r,t)))for(const c of n.modifiers)lu(c)&&e.deleteModifier(t,c);else!n.initializer&&Yre(n,r,i)&&e.delete(t,n)}(t,n,c,r,i,o,s,a);else if(!(a&&YC(e)&&Ice.Core.isSymbolReferencedInFile(e,r,n))){const r=_I(c)?e:_N(c)?c.parent:c;Tn.assert(r!==n,"should not delete whole source file"),t.delete(n,r)}}(t,n,e,r,i,o,s,a),YC(t)&&Ice.Core.eachSymbolReferenceInFile(t,r,e,(t=>{var r;nA(t.parent)&&t.parent.name===t&&(t=t.parent),!a&&((gA((r=t).parent)&&r.parent.left===r||(hA(r.parent)||mA(r.parent))&&r.parent.operand===r)&&LA(r.parent.parent))&&n.delete(e,t.parent.parent)}))}function Yre(e,t,n){const r=e.parent.parameters.indexOf(e);return!Ice.Core.someSignatureUsage(e.parent,n,t,((e,t)=>!t||t.arguments.length>r))}function Zre(e,t,n){const r=e.parameters,i=r.indexOf(t);return Tn.assert(-1!==i,"The parameter should already be in the list"),n?r.slice(i+1).every((e=>YC(e.name)&&!e.symbol.isReferenced)):i===r.length-1}n7({errorCodes:Ure,getCodeActions(e){const{errorCode:t,sourceFile:n,program:r,cancellationToken:i}=e,o=r.getTypeChecker(),s=r.getSourceFiles(),a=QY(n,e.span.start);if(PD(a))return[qre(Xde.ChangeTracker.with(e,(e=>e.delete(n,a))),ws.Remove_template_tag)];if(30===a.kind){return[qre(Xde.ChangeTracker.with(e,(e=>Vre(e,n,a))),ws.Remove_type_parameters)]}const c=Jre(a);if(c){const t=Xde.ChangeTracker.with(e,(e=>e.delete(n,c)));return[$8(Fre,t,[ws.Remove_import_from_0,Rx(c)],jre,ws.Delete_all_unused_imports)]}if(Kre(a)){const t=Xde.ChangeTracker.with(e,(e=>Qre(n,a,e,o,s,r,i,!1)));if(t.length)return[$8(Fre,t,[ws.Remove_unused_declaration_for_Colon_0,a.getText(n)],jre,ws.Delete_all_unused_imports)]}if(ZN(a.parent)||XN(a.parent)){if(fN(a.parent.parent)){const t=a.parent.elements,r=[t.length>1?ws.Remove_unused_declarations_for_Colon_0:ws.Remove_unused_declaration_for_Colon_0,R(t,(e=>e.getText(n))).join(", ")];return[qre(Xde.ChangeTracker.with(e,(e=>function(e,t,n){h(n.elements,(n=>e.delete(t,n)))}(e,n,a.parent))),r)]}return[qre(Xde.ChangeTracker.with(e,(t=>function(e,t,n,{parent:r}){if($A(r)&&r.initializer&&Wu(r.initializer))if(eI(r.parent)&&m(r.parent.declarations)>1){const i=r.parent.parent,o=i.getStart(n),s=i.end;t.delete(n,r),t.insertNodeAt(n,s,r.initializer,{prefix:VX(e.host,e.formatContext.options)+n.text.slice(n$(n.text,o-1),o),suffix:R$(n)?";":""})}else t.replaceNode(n,r.parent,r.initializer);else t.delete(n,r)}(e,t,n,a.parent))),ws.Remove_unused_destructuring_declaration)]}if(Wre(n,a))return[qre(Xde.ChangeTracker.with(e,(e=>Hre(e,n,a.parent))),ws.Remove_variable_statement)];if(YC(a)&&tI(a.parent))return[qre(Xde.ChangeTracker.with(e,(e=>function(e,t,n){const r=n.symbol.declarations;if(r)for(const i of r)e.delete(t,i)}(e,n,a.parent))),[ws.Remove_unused_declaration_for_Colon_0,a.getText(n)])];const l=[];if(140===a.kind){const t=Xde.ChangeTracker.with(e,(e=>Bre(e,n,a))),r=_t(a.parent,BN).typeParameter.name.text;l.push($8(Fre,t,[ws.Replace_infer_0_with_unknown,r],zre,ws.Replace_all_unused_infer_with_unknown))}else{const t=Xde.ChangeTracker.with(e,(e=>Qre(n,a,e,o,s,r,i,!1)));if(t.length){const e=_N(a.parent)?a.parent:a;l.push(qre(t,[ws.Remove_unused_declaration_for_Colon_0,e.getText(n)]))}}const u=Xde.ChangeTracker.with(e,(e=>Gre(e,t,n,a)));return u.length&&l.push($8(Fre,u,[ws.Prefix_0_with_an_underscore,a.getText(n)],Rre,ws.Prefix_all_unused_declarations_with_where_possible)),l},fixIds:[Rre,Lre,jre,zre],getAllCodeActions:e=>{const{sourceFile:t,program:n,cancellationToken:r}=e,i=n.getTypeChecker(),o=n.getSourceFiles();return c7(e,Ure,((s,a)=>{const c=QY(t,a.start);switch(e.fixId){case Rre:Gre(s,a.code,t,c);break;case jre:{const e=Jre(c);e?s.delete(t,e):Kre(c)&&Qre(t,c,s,i,o,n,r,!0);break}case Lre:if(140===c.kind||Kre(c))break;if(PD(c))s.delete(t,c);else if(30===c.kind)Vre(s,t,c);else if(ZN(c.parent)){if(c.parent.parent.initializer)break;fN(c.parent.parent)&&!Yre(c.parent.parent,i,o)||s.delete(t,c.parent.parent)}else{if(XN(c.parent.parent)&&c.parent.parent.parent.initializer)break;Wre(t,c)?Hre(s,t,c.parent):Qre(t,c,s,i,o,n,r,!0)}break;case zre:140===c.kind&&Bre(s,t,c);break;default:Tn.fail(JSON.stringify(e.fixId))}}))}});var Xre="fixUnreachableCode",$re=[ws.Unreachable_code_detected.code];function eie(e,t,n,r,i){const o=QY(t,n),s=bc(o,kd);if(s.getStart(t)!==o.getStart(t)){const e=JSON.stringify({statementKind:Tn.formatSyntaxKind(s.kind),tokenKind:Tn.formatSyntaxKind(o.kind),errorCode:i,start:n,length:r});Tn.fail("Token and statement should start at the same point. "+e)}const a=(OA(s.parent)?s.parent:s).parent;if(!OA(s.parent)||s===Ee(s.parent.statements))switch(a.kind){case 245:if(a.elseStatement){if(OA(s.parent))break;return void e.replaceNode(t,s,oE.createBlock(_))}case 247:case 248:return void e.delete(t,a)}if(OA(s.parent)){const i=n+r,o=Tn.checkDefined(function(e,t){let n;for(const r of e){if(!t(r))break;n=r}return n}(bw(s.parent.statements,s),(e=>e.pos<i)),"Some statement should be last");e.deleteNodeRange(t,s,o)}else e.delete(t,s)}n7({errorCodes:$re,getCodeActions(e){if(e.program.getSyntacticDiagnostics(e.sourceFile,e.cancellationToken).length)return;const t=Xde.ChangeTracker.with(e,(t=>eie(t,e.sourceFile,e.span.start,e.span.length,e.errorCode)));return[$8(Xre,t,ws.Remove_unreachable_code,Xre,ws.Remove_all_unreachable_code)]},fixIds:[Xre],getAllCodeActions:e=>c7(e,$re,((e,t)=>eie(e,t.file,t.start,t.length,t.code)))});var tie="fixUnusedLabel",nie=[ws.Unused_label.code];function rie(e,t,n){const r=QY(t,n),i=_t(r.parent,QA),o=r.getStart(t),s=i.statement.getStart(t),a=dx(o,s,t)?s:da(t.text,FY(i,59,t).end,!0);e.deleteRange(t,{pos:o,end:a})}n7({errorCodes:nie,getCodeActions(e){const t=Xde.ChangeTracker.with(e,(t=>rie(t,e.sourceFile,e.span.start)));return[$8(tie,t,ws.Remove_unused_label,tie,ws.Remove_all_unused_labels)]},fixIds:[tie],getAllCodeActions:e=>c7(e,nie,((e,t)=>rie(e,t.file,t.start)))});var iie="fixJSDocTypes_plain",oie="fixJSDocTypes_nullable",sie=[ws.JSDoc_types_can_only_be_used_inside_documentation_comments.code,ws._0_at_the_end_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1.code,ws._0_at_the_start_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1.code];function aie(e,t,n,r,i){e.replaceNode(t,n,i.typeToTypeNode(r,n,void 0))}function cie(e,t,n){const r=bc(QY(e,t),lie),i=r&&r.type;return i&&{typeNode:i,type:uie(n,i)}}function lie(e){switch(e.kind){case 234:case 179:case 180:case 262:case 177:case 181:case 200:case 174:case 173:case 169:case 172:case 171:case 178:case 265:case 216:case 260:return!0;default:return!1}}function uie(e,t){if(sD(t)){const n=e.getTypeFromTypeNode(t.type);return n===e.getNeverType()||n===e.getVoidType()?n:e.getUnionType(_e([n,e.getUndefinedType()],t.postfix?void 0:e.getNullType()))}return e.getTypeFromTypeNode(t)}n7({errorCodes:sie,getCodeActions(e){const{sourceFile:t}=e,n=e.program.getTypeChecker(),r=cie(t,e.span.start,n);if(!r)return;const{typeNode:i,type:o}=r,s=i.getText(t),a=[c(o,iie,ws.Change_all_jsdoc_style_types_to_TypeScript)];return 314===i.kind&&a.push(c(o,oie,ws.Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types)),a;function c(r,o,a){return $8("jdocTypes",Xde.ChangeTracker.with(e,(e=>aie(e,t,i,r,n))),[ws.Change_0_to_1,s,n.typeToString(r)],o,a)}},fixIds:[iie,oie],getAllCodeActions(e){const{fixId:t,program:n,sourceFile:r}=e,i=n.getTypeChecker();return c7(e,sie,((e,n)=>{const o=cie(n.file,n.start,i);if(!o)return;const{typeNode:s,type:a}=o,c=314===s.kind&&t===oie?i.getNullableType(a,32768):a;aie(e,r,s,c,i)}))}});var die="fixMissingCallParentheses",_ie=[ws.This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_instead.code];function pie(e,t,n){e.replaceNodeWithText(t,n,`${n.text}()`)}function fie(e,t){const n=QY(e,t);if(nA(n.parent)){let e=n.parent;for(;nA(e.parent);)e=e.parent;return e.name}if(YC(n))return n}n7({errorCodes:_ie,fixIds:[die],getCodeActions(e){const{sourceFile:t,span:n}=e,r=fie(t,n.start);if(!r)return;const i=Xde.ChangeTracker.with(e,(t=>pie(t,e.sourceFile,r)));return[$8(die,i,ws.Add_missing_call_parentheses,die,ws.Add_all_missing_call_parentheses)]},getAllCodeActions:e=>c7(e,_ie,((e,t)=>{const n=fie(t.file,t.start);n&&pie(e,t.file,n)}))});var mie="fixMissingTypeAnnotationOnExports",hie="add-annotation",gie="add-type-assertion",yie=[ws.Function_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations.code,ws.Method_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations.code,ws.At_least_one_accessor_must_have_an_explicit_return_type_annotation_with_isolatedDeclarations.code,ws.Variable_must_have_an_explicit_type_annotation_with_isolatedDeclarations.code,ws.Parameter_must_have_an_explicit_type_annotation_with_isolatedDeclarations.code,ws.Property_must_have_an_explicit_type_annotation_with_isolatedDeclarations.code,ws.Expression_type_can_t_be_inferred_with_isolatedDeclarations.code,ws.Binding_elements_can_t_be_exported_directly_with_isolatedDeclarations.code,ws.Computed_property_names_on_class_or_object_literals_cannot_be_inferred_with_isolatedDeclarations.code,ws.Computed_properties_must_be_number_or_string_literals_variables_or_dotted_expressions_with_isolatedDeclarations.code,ws.Enum_member_initializers_must_be_computable_without_references_to_external_symbols_with_isolatedDeclarations.code,ws.Extends_clause_can_t_contain_an_expression_with_isolatedDeclarations.code,ws.Objects_that_contain_shorthand_properties_can_t_be_inferred_with_isolatedDeclarations.code,ws.Objects_that_contain_spread_assignments_can_t_be_inferred_with_isolatedDeclarations.code,ws.Arrays_with_spread_elements_can_t_inferred_with_isolatedDeclarations.code,ws.Default_exports_can_t_be_inferred_with_isolatedDeclarations.code,ws.Only_const_arrays_can_be_inferred_with_isolatedDeclarations.code,ws.Assigning_properties_to_functions_without_declaring_them_is_not_supported_with_isolatedDeclarations_Add_an_explicit_declaration_for_the_properties_assigned_to_this_function.code,ws.Declaration_emit_for_this_parameter_requires_implicitly_adding_undefined_to_it_s_type_This_is_not_supported_with_isolatedDeclarations.code,ws.Type_containing_private_name_0_can_t_be_used_with_isolatedDeclarations.code,ws.Add_satisfies_and_a_type_assertion_to_this_expression_satisfies_T_as_T_to_make_the_type_explicit.code],vie=new Set([177,174,172,262,218,219,260,169,277,263,206,207]),bie=1074273293;function xie(e,t,n,r,i){const o=Sie(n,r,i);o.result&&o.textChanges.length&&t.push($8(e,o.textChanges,o.result,mie,ws.Add_all_missing_type_annotations))}function Sie(e,t,n){const r={typeNode:void 0,mutatedTarget:!1},i=Xde.ChangeTracker.fromContext(e),o=e.sourceFile,s=e.program,a=s.getTypeChecker(),c=MS(s.getCompilerOptions()),l=Iee(e.sourceFile,e.program,e.preferences,e.host),u=new Set,d=new Set,_=vV({preserveSourceNewlines:!1}),p=n({addTypeAnnotation:function(t){e.cancellationToken.throwIfCancellationRequested();const n=QY(o,t.start),r=h(n);if(r)return tI(r)?function(e){var t;if(null==d?void 0:d.has(e))return;null==d||d.add(e);const n=a.getTypeAtLocation(e),r=a.getPropertiesOfType(n);if(!e.name||0===r.length)return;const c=[];for(const i of r)Aa(i.name,MS(s.getCompilerOptions()))&&(i.valueDeclaration&&$A(i.valueDeclaration)||c.push(oE.createVariableStatement([oE.createModifier(95)],oE.createVariableDeclarationList([oE.createVariableDeclaration(i.name,void 0,E(a.getTypeOfSymbol(i),e),void 0)]))));if(0===c.length)return;const l=[];(null==(t=e.modifiers)?void 0:t.some((e=>95===e.kind)))&&l.push(oE.createModifier(95));l.push(oE.createModifier(138));const u=oE.createModuleDeclaration(l,e.name,oE.createModuleBlock(c),101441696);return i.insertNodeAfter(o,e,u),[ws.Annotate_types_of_properties_expando_function_in_a_namespace]}(r):g(r);const c=(l=n,bc(l,(e=>vie.has(e.kind)&&(!ZN(e)&&!XN(e)||$A(e.parent)))));var l;if(c)return g(c);return},addInlineAssertion:function(t){e.cancellationToken.throwIfCancellationRequested();const n=QY(o,t.start);if(h(n))return;const r=N(n,t);if(!r||cg(r)||cg(r.parent))return;const s=td(r),c=HI(r);if(!c&&Sd(r))return;if(bc(r,Mu))return;if(bc(r,QI))return;if(s&&(bc(r,KI)||bc(r,Du)))return;if(xA(r))return;const l=bc(r,$A),u=l&&a.getTypeAtLocation(l);if(u&&8192&u.flags)return;if(!s&&!c)return;const{typeNode:d,mutatedTarget:_}=x(r,u);if(!d||_)return;c?i.insertNodeAt(o,r.end,m(r$(r.name),d),{prefix:": "}):s?i.replaceNode(o,r,function(e,t){f(e)&&(e=oE.createParenthesizedExpression(e));return oE.createAsExpression(oE.createSatisfiesExpression(e,r$(t)),t)}(r$(r),d)):Tn.assertNever(r);return[ws.Add_satisfies_and_an_inline_type_assertion_with_0,C(d)]},extractAsVariable:function(t){e.cancellationToken.throwIfCancellationRequested();const n=N(QY(o,t.start),t);if(!n||cg(n)||cg(n.parent))return;if(!td(n))return;if(eA(n))return i.replaceNode(o,n,m(n,oE.createTypeReferenceNode("const"))),[ws.Mark_array_literal_as_const];const r=bc(n,WI);if(r){if(r===n.parent&&wb(n))return;const e=oE.createUniqueName(P6(n,o,a,o),16);let t=n,s=n;if(xA(t)&&(t=dg(t.parent),s=w(t.parent)?t=t.parent:m(t,oE.createTypeReferenceNode("const"))),wb(t))return;const c=oE.createVariableStatement(void 0,oE.createVariableDeclarationList([oE.createVariableDeclaration(e,void 0,void 0,s)],2)),l=bc(n,kd);return i.insertNodeBefore(o,l,c),i.replaceNode(o,t,oE.createAsExpression(oE.cloneNode(e),oE.createTypeQueryNode(oE.cloneNode(e)))),[ws.Extract_to_variable_and_replace_with_0_as_typeof_0,C(e)]}}});return l.writeFixes(i),{result:p,textChanges:i.getChanges()};function f(e){return!(wb(e)||iA(e)||tA(e)||eA(e))}function m(e,t){return f(e)&&(e=oE.createParenthesizedExpression(e)),oE.createAsExpression(e,t)}function h(e){const t=bc(e,(e=>kd(e)?"quit":wk(e)));if(t&&wk(t)){let e=t;if(gA(e)&&(e=e.left,!wk(e)))return;const n=a.getTypeAtLocation(e.expression);if(!n)return;if($(a.getPropertiesOfType(n),(e=>e.valueDeclaration===t||e.valueDeclaration===t.parent))){const e=n.symbol.valueDeclaration;if(e){if(Xw(e)&&$A(e.parent))return e.parent;if(tI(e))return e}}}}function g(e){if(!(null==u?void 0:u.has(e)))switch(null==u||u.add(e),e.kind){case 169:case 172:case 260:return function(e){const{typeNode:t}=x(e);if(t)return e.type?i.replaceNode(C_(e),e.type,t):i.tryInsertTypeAnnotation(C_(e),e,t),[ws.Add_annotation_of_type_0,C(t)]}(e);case 219:case 218:case 262:case 174:case 177:return function(e,t){if(e.type)return;const{typeNode:n}=x(e);if(n)return i.tryInsertTypeAnnotation(t,e,n),[ws.Add_return_type_0,C(n)]}(e,o);case 277:return function(e){if(e.isExportEquals)return;const{typeNode:t}=x(e.expression);if(!t)return;const n=oE.createUniqueName("_default");return i.replaceNodeWithNodes(o,e,[oE.createVariableStatement(void 0,oE.createVariableDeclarationList([oE.createVariableDeclaration(n,void 0,t,e.expression)],2)),oE.updateExportAssignment(e,null==e?void 0:e.modifiers,n)]),[ws.Extract_default_export_to_variable]}(e);case 263:return function(e){var t,n;const r=null==(t=e.heritageClauses)?void 0:t.find((e=>96===e.token)),s=null==r?void 0:r.types[0];if(!s)return;const{typeNode:a}=x(s.expression);if(!a)return;const c=oE.createUniqueName(e.name?e.name.text+"Base":"Anonymous",16),l=oE.createVariableStatement(void 0,oE.createVariableDeclarationList([oE.createVariableDeclaration(c,void 0,a,s.expression)],2));i.insertNodeBefore(o,e,l);const u=ka(o.text,s.end),d=(null==(n=null==u?void 0:u[u.length-1])?void 0:n.end)??s.end;return i.replaceRange(o,{pos:s.getFullStart(),end:d},c,{prefix:" "}),[ws.Extract_base_class_to_variable]}(e);case 206:case 207:return function(e){var t;const n=e.parent,r=e.parent.parent.parent;if(!n.initializer)return;let s;const a=[];if(YC(n.initializer))s={expression:{kind:3,identifier:n.initializer}};else{const e=oE.createUniqueName("dest",16);s={expression:{kind:3,identifier:e}},a.push(oE.createVariableStatement(void 0,oE.createVariableDeclarationList([oE.createVariableDeclaration(e,void 0,void 0,n.initializer)],2)))}const c=[];XN(e)?y(e,c,s):v(e,c,s);const l=new Map;for(const i of c){if(i.element.propertyName&&_N(i.element.propertyName)){const e=i.element.propertyName.expression,t=oE.getGeneratedNameForNode(e),n=oE.createVariableDeclaration(t,void 0,void 0,e),r=oE.createVariableDeclarationList([n],2),o=oE.createVariableStatement(void 0,r);a.push(o),l.set(e,t)}const e=i.element.name;if(XN(e))y(e,c,i);else if(ZN(e))v(e,c,i);else{const{typeNode:n}=x(e);let o=b(i,l);if(i.element.initializer){const e=null==(t=i.element)?void 0:t.propertyName,n=oE.createUniqueName(e&&YC(e)?e.text:"temp",16);a.push(oE.createVariableStatement(void 0,oE.createVariableDeclarationList([oE.createVariableDeclaration(n,void 0,void 0,o)],2))),o=oE.createConditionalExpression(oE.createBinaryExpression(n,oE.createToken(37),oE.createIdentifier("undefined")),oE.createToken(58),i.element.initializer,oE.createToken(59),o)}const s=Kv(r,32)?[oE.createToken(95)]:void 0;a.push(oE.createVariableStatement(s,oE.createVariableDeclarationList([oE.createVariableDeclaration(e,void 0,n,o)],2)))}}r.declarationList.declarations.length>1&&a.push(oE.updateVariableStatement(r,r.modifiers,oE.updateVariableDeclarationList(r.declarationList,r.declarationList.declarations.filter((t=>t!==e.parent)))));return i.replaceNodeWithNodes(o,r,a),[ws.Extract_binding_expressions_to_variable]}(e);default:throw new Error(`Cannot find a fix for the given node ${e.kind}`)}}function y(e,t,n){for(let r=0;r<e.elements.length;++r){const i=e.elements[r];TA(i)||t.push({element:i,parent:n,expression:{kind:2,arrayIndex:r}})}}function v(e,t,n){for(const r of e.elements){let e;if(r.propertyName){if(_N(r.propertyName)){t.push({element:r,parent:n,expression:{kind:1,computed:r.propertyName.expression}});continue}e=r.propertyName.text}else e=r.name.text;t.push({element:r,parent:n,expression:{kind:0,text:e}})}}function b(e,t){const n=[e];for(;e.parent;)e=e.parent,n.push(e);let r=n[n.length-1].expression.identifier;for(let i=n.length-2;i>=0;--i){const e=n[i].expression;0===e.kind?r=oE.createPropertyAccessChain(r,void 0,oE.createIdentifier(e.text)):1===e.kind?r=oE.createElementAccessExpression(r,t.get(e.computed)):2===e.kind&&(r=oE.createElementAccessExpression(r,e.arrayIndex))}return r}function x(e,n){if(1===t)return k(e);let i=cg(e)?function(e){const t=a.getSignatureFromDeclaration(e);if(t)return a.getReturnTypeOfSignature(t)}(e):a.getTypeAtLocation(e);if(!i)return r;if(2===t){n&&(i=n);const e=a.getWidenedLiteralType(i);if(a.isTypeAssignableTo(e,i))return r;i=e}fN(e)&&a.requiresAddingImplicitUndefined(e)&&(i=a.getUnionType([a.getUndefinedType(),i],0));const s=($A(e)||gN(e)&&Kv(e,264))&&8192&i.flags?1048576:0;return{typeNode:E(i,bc(e,Sd)??o,s),mutatedTarget:!1}}function S(e){return oE.createTypeQueryNode(r$(e))}function T(e,t,n,s,a,c,l,u){const d=[],_=[];let p;const f=bc(e,kd);for(const r of s(e))a(r)?(h(),wb(r.expression)?(d.push(S(r.expression)),_.push(r)):m(r.expression)):(p??(p=[])).push(r);return 0===_.length?r:(h(),i.replaceNode(o,e,l(_)),{typeNode:u(d),mutatedTarget:!0});function m(e){const r=oE.createUniqueName(t+"_Part"+(_.length+1),16),s=n?oE.createAsExpression(e,oE.createTypeReferenceNode("const")):e,a=oE.createVariableStatement(void 0,oE.createVariableDeclarationList([oE.createVariableDeclaration(r,void 0,void 0,s)],2));i.insertNodeBefore(o,f,a),d.push(S(r)),_.push(c(r))}function h(){p&&(m(l(p)),p=void 0)}}function w(e){return nd(e)&&Pl(e.type)}function k(e){if(fN(e))return r;if(HI(e))return{typeNode:S(e.name),mutatedTarget:!1};if(wb(e))return{typeNode:S(e),mutatedTarget:!1};if(w(e))return k(e.expression);if(eA(e)){const t=bc(e,$A);return function(e,t="temp"){const n=!!bc(e,w);return n?T(e,t,n,(e=>e.elements),xA,oE.createSpreadElement,(e=>oE.createArrayLiteralExpression(e,!0)),(e=>oE.createTupleTypeNode(e.map(oE.createRestTypeNode)))):r}(e,t&&YC(t.name)?t.name.text:void 0)}if(tA(e)){const t=bc(e,$A);return function(e,t="temp"){return T(e,t,!!bc(e,w),(e=>e.properties),GI,oE.createSpreadAssignment,(e=>oE.createObjectLiteralExpression(e,!0)),oE.createIntersectionTypeNode)}(e,t&&YC(t.name)?t.name.text:void 0)}if($A(e)&&e.initializer)return k(e.initializer);if(yA(e)){const{typeNode:t,mutatedTarget:n}=k(e.whenTrue);if(!t)return r;const{typeNode:i,mutatedTarget:o}=k(e.whenFalse);return i?{typeNode:oE.createUnionTypeNode([t,i]),mutatedTarget:n||o}:r}return r}function E(e,t,n=0){let r=!1;const i=roe(a,l,e,t,c,bie|n,{moduleResolverHost:s,trackSymbol:()=>!0,reportTruncationError(){r=!0}});return r?oE.createKeywordTypeNode(133):i}function C(e){dE(e,1);const t=_.printNode(4,e,o);return t.length>t_?t.substring(0,t_-3)+"...":(dE(e,0),t)}function N(e,t){for(;e&&e.end<t.start+t.length;)e=e.parent;for(;e.parent.pos===e.pos&&e.parent.end===e.end;)e=e.parent;return YC(e)&&Bd(e.parent)&&e.parent.initializer?e.parent.initializer:e}}n7({errorCodes:yie,fixIds:[mie],getCodeActions(e){const t=[];return xie(hie,t,e,0,(t=>t.addTypeAnnotation(e.span))),xie(hie,t,e,1,(t=>t.addTypeAnnotation(e.span))),xie(hie,t,e,2,(t=>t.addTypeAnnotation(e.span))),xie(gie,t,e,0,(t=>t.addInlineAssertion(e.span))),xie(gie,t,e,1,(t=>t.addInlineAssertion(e.span))),xie(gie,t,e,2,(t=>t.addInlineAssertion(e.span))),xie("extract-expression",t,e,0,(t=>t.extractAsVariable(e.span))),t},getAllCodeActions:e=>s7(Sie(e,0,(t=>{l7(e,yie,(e=>{t.addTypeAnnotation(e)}))})).textChanges)});var Tie="fixAwaitInSyncFunction",wie=[ws.await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules.code,ws.await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules.code,ws.for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules.code,ws.Cannot_find_name_0_Did_you_mean_to_write_this_in_an_async_function.code];function kie(e,t){const n=nm(QY(e,t));if(!n)return;let r;switch(n.kind){case 174:r=n.name;break;case 262:case 218:r=FY(n,100,e);break;case 219:r=FY(n,n.typeParameters?30:21,e)||Ee(n.parameters);break;default:return}return r&&{insertBefore:r,returnType:(i=n,i.type?i.type:$A(i.parent)&&i.parent.type&&AN(i.parent.type)?i.parent.type.type:void 0)};var i}function Eie(e,t,{insertBefore:n,returnType:r}){if(r){const n=vm(r);n&&80===n.kind&&"Promise"===n.text||e.replaceNode(t,r,oE.createTypeReferenceNode("Promise",oE.createNodeArray([r])))}e.insertModifierBefore(t,134,n)}n7({errorCodes:wie,getCodeActions(e){const{sourceFile:t,span:n}=e,r=kie(t,n.start);if(!r)return;const i=Xde.ChangeTracker.with(e,(e=>Eie(e,t,r)));return[$8(Tie,i,ws.Add_async_modifier_to_containing_function,Tie,ws.Add_all_missing_async_modifiers)]},fixIds:[Tie],getAllCodeActions:function(e){const t=new Map;return c7(e,wie,((n,r)=>{const i=kie(r.file,r.start);i&&jx(t,Gz(i.insertBefore))&&Eie(n,e.sourceFile,i)}))}});var Cie=[ws._0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property.code,ws._0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor.code],Nie="fixPropertyOverrideAccessor";function Aie(e,t,n,r,i){let o,s;if(r===ws._0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property.code)o=t,s=t+n;else if(r===ws._0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor.code){const n=i.program.getTypeChecker(),r=QY(e,t).parent;Tn.assert(Su(r),"error span of fixPropertyOverrideAccessor should only be on an accessor");const a=r.parent;Tn.assert(xu(a),"erroneous accessors should only be inside classes");const c=Ie(koe(a,n));if(!c)return[];const l=wc(Bp(r.name)),u=n.getPropertyOfType(n.getTypeAtLocation(c),l);if(!u||!u.valueDeclaration)return[];o=u.valueDeclaration.pos,s=u.valueDeclaration.end,e=C_(u.valueDeclaration)}else Tn.fail("fixPropertyOverrideAccessor codefix got unexpected error code "+r);return yoe(e,i.program,o,s,i,ws.Generate_get_and_set_accessors.message)}n7({errorCodes:Cie,getCodeActions(e){const t=Aie(e.sourceFile,e.span.start,e.span.length,e.errorCode,e);if(t)return[$8(Nie,t,ws.Generate_get_and_set_accessors,Nie,ws.Generate_get_and_set_accessors_for_all_overriding_properties)]},fixIds:[Nie],getAllCodeActions:e=>c7(e,Cie,((t,n)=>{const r=Aie(n.file,n.start,n.length,n.code,e);if(r)for(const i of r)t.pushRaw(e.sourceFile,i)}))});var Iie="inferFromUsage",Die=[ws.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined.code,ws.Variable_0_implicitly_has_an_1_type.code,ws.Parameter_0_implicitly_has_an_1_type.code,ws.Rest_parameter_0_implicitly_has_an_any_type.code,ws.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation.code,ws._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type.code,ws.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation.code,ws.Member_0_implicitly_has_an_1_type.code,ws.Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage.code,ws.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code,ws.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code,ws.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage.code,ws.Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage.code,ws._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage.code,ws.Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage.code,ws.Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code,ws.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code];function Pie(e,t){switch(e){case ws.Parameter_0_implicitly_has_an_1_type.code:case ws.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return TN(nm(t))?ws.Infer_type_of_0_from_usage:ws.Infer_parameter_types_from_usage;case ws.Rest_parameter_0_implicitly_has_an_any_type.code:case ws.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage.code:return ws.Infer_parameter_types_from_usage;case ws.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code:return ws.Infer_this_type_of_0_from_usage;default:return ws.Infer_type_of_0_from_usage}}function Mie(e,t,n,r,i,o,s,a,c){if(!au(n.kind)&&80!==n.kind&&26!==n.kind&&110!==n.kind)return;const{parent:l}=n,u=Iee(t,i,c,a);switch(r=function(e){switch(e){case ws.Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage.code:return ws.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined.code;case ws.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return ws.Variable_0_implicitly_has_an_1_type.code;case ws.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return ws.Parameter_0_implicitly_has_an_1_type.code;case ws.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage.code:return ws.Rest_parameter_0_implicitly_has_an_any_type.code;case ws.Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage.code:return ws.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation.code;case ws._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage.code:return ws._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type.code;case ws.Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage.code:return ws.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation.code;case ws.Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return ws.Member_0_implicitly_has_an_1_type.code}return e}(r)){case ws.Member_0_implicitly_has_an_1_type.code:case ws.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined.code:if($A(l)&&s(l)||gN(l)||hN(l))return Oie(e,u,t,l,i,a,o),u.writeFixes(e),l;if(nA(l)){const n=A$(zie(l.name,i,o),l,i,a);if(n){const r=oE.createJSDocTypeTag(void 0,oE.createJSDocTypeExpression(n),void 0);e.addJSDocTags(t,_t(l.parent.parent,LA),[r])}return u.writeFixes(e),l}return;case ws.Variable_0_implicitly_has_an_1_type.code:{const t=i.getTypeChecker().getSymbolAtLocation(n);return t&&t.valueDeclaration&&$A(t.valueDeclaration)&&s(t.valueDeclaration)?(Oie(e,u,C_(t.valueDeclaration),t.valueDeclaration,i,a,o),u.writeFixes(e),t.valueDeclaration):void 0}}const d=nm(n);if(void 0===d)return;let _;switch(r){case ws.Parameter_0_implicitly_has_an_1_type.code:if(TN(d)){Fie(e,u,t,d,i,a,o),_=d;break}case ws.Rest_parameter_0_implicitly_has_an_any_type.code:if(s(d)){const n=_t(l,fN);!function(e,t,n,r,i,o,s,a){if(!YC(r.name))return;const c=function(e,t,n,r){const i=Uie(e,t,n,r);return i&&Bie(n,i,r).parameters(e)||e.parameters.map((e=>({declaration:e,type:YC(e.name)?zie(e.name,n,r):n.getTypeChecker().getAnyType()})))}(i,n,o,a);if(Tn.assert(i.parameters.length===c.length,"Parameter count and inference count should match"),Um(i))Lie(e,n,c,o,s);else{const r=uA(i)&&!FY(i,21,n);r&&e.insertNodeBefore(n,Ee(i.parameters),oE.createToken(21));for(const{declaration:i,type:a}of c)!i||i.type||i.initializer||Rie(e,t,n,i,a,o,s);r&&e.insertNodeAfter(n,Ae(i.parameters),oE.createToken(22))}}(e,u,t,n,d,i,a,o),_=n}break;case ws.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation.code:case ws._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type.code:SN(d)&&YC(d.name)&&(Rie(e,u,t,d,zie(d.name,i,o),i,a),_=d);break;case ws.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation.code:TN(d)&&(Fie(e,u,t,d,i,a,o),_=d);break;case ws.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code:Xde.isThisTypeAnnotatable(d)&&s(d)&&(!function(e,t,n,r,i,o){const s=Uie(n,t,r,o);if(!s||!s.length)return;const a=Bie(r,s,o).thisParameter(),c=A$(a,n,r,i);if(!c)return;Um(n)?function(e,t,n,r){e.addJSDocTags(t,n,[oE.createJSDocThisTag(void 0,oE.createJSDocTypeExpression(r))])}(e,t,n,c):e.tryInsertThisTypeAnnotation(t,n,c)}(e,t,d,i,a,o),_=d);break;default:return Tn.fail(String(r))}return u.writeFixes(e),_}function Oie(e,t,n,r,i,o,s){YC(r.name)&&Rie(e,t,n,r,zie(r.name,i,s),i,o)}function Fie(e,t,n,r,i,o,s){const a=we(r.parameters);if(a&&YC(r.name)&&YC(a.name)){let c=zie(r.name,i,s);c===i.getTypeChecker().getAnyType()&&(c=zie(a.name,i,s)),Um(r)?Lie(e,n,[{declaration:a,type:c}],i,o):Rie(e,t,n,a,c,i,o)}}function Rie(e,t,n,r,i,o,s){const a=A$(i,r,o,s);if(a)if(Um(n)&&171!==r.kind){const t=$A(r)?dt(r.parent.parent,FA):r;if(!t)return;const i=oE.createJSDocTypeExpression(a),o=SN(r)?oE.createJSDocReturnTag(void 0,i,void 0):oE.createJSDocTypeTag(void 0,i,void 0);e.addJSDocTags(n,t,[o])}else(function(e,t,n,r,i,o){const s=foe(e,o);if(s&&r.tryInsertTypeAnnotation(n,t,s.typeNode))return h(s.symbols,(e=>i.addImportFromExportedSymbol(e,!0))),!0;return!1})(a,r,n,e,t,MS(o.getCompilerOptions()))||e.tryInsertTypeAnnotation(n,r,a)}function Lie(e,t,n,r,i){const o=n.length&&n[0].declaration.parent;if(!o)return;const s=J(n,(e=>{const t=e.declaration;if(t.initializer||dl(t)||!YC(t.name))return;const n=e.type&&A$(e.type,t,r,i);if(n){return dE(oE.cloneNode(t.name),7168),{name:oE.cloneNode(t.name),param:t,isOptional:!!e.isOptional,typeNode:n}}}));if(s.length)if(uA(o)||lA(o)){const n=uA(o)&&!FY(o,21,t);n&&e.insertNodeBefore(t,Ee(o.parameters),oE.createToken(21)),h(s,(({typeNode:n,param:r})=>{const i=oE.createJSDocTypeTag(void 0,oE.createJSDocTypeExpression(n)),o=oE.createJSDocComment(void 0,[i]);e.insertNodeAt(t,r.getStart(t),o,{suffix:" "})})),n&&e.insertNodeAfter(t,Ae(o.parameters),oE.createToken(22))}else{const n=R(s,(({name:e,typeNode:t,isOptional:n})=>oE.createJSDocParameterTag(void 0,e,!!n,oE.createJSDocTypeExpression(t),!1,void 0)));e.addJSDocTags(t,o,n)}}function jie(e,t,n){return J(Ice.getReferenceEntriesForNode(-1,e,t,t.getSourceFiles(),n),(e=>e.kind!==Ice.EntryKind.Span?dt(e.node,YC):void 0))}function zie(e,t,n){return Bie(t,jie(e,t,n),n).single()}function Uie(e,t,n,r){let i;switch(e.kind){case 176:i=FY(e,137,t);break;case 219:case 218:const n=e.parent;i=($A(n)||gN(n))&&YC(n.name)?n.name:e.name;break;case 262:case 174:case 173:i=e.name}if(i)return jie(i,n,r)}function Bie(e,t,n){const r=e.getTypeChecker(),i={string:()=>r.getStringType(),number:()=>r.getNumberType(),Array:e=>r.createArrayType(e),Promise:e=>r.createPromiseType(e)},o=[r.getStringType(),r.getNumberType(),r.createArrayType(r.getAnyType()),r.createPromiseType(r.getAnyType())];return{single:function(){return d(a(t))},parameters:function(i){if(0===t.length||!i.parameters)return;const o={isNumber:void 0,isString:void 0,isNumberOrString:void 0,candidateTypes:void 0,properties:void 0,calls:void 0,constructs:void 0,numberIndex:void 0,stringIndex:void 0,candidateThisTypes:void 0,inferredTypes:void 0};for(const e of t)n.throwIfCancellationRequested(),c(e,o);const s=[...o.constructs||[],...o.calls||[]];return i.parameters.map(((t,o)=>{const c=[],l=Yd(t);let u=!1;for(const e of s)if(e.argumentTypes.length<=o)u=Um(i),c.push(r.getUndefinedType());else if(l)for(let t=o;t<e.argumentTypes.length;t++)c.push(r.getBaseTypeOfLiteralType(e.argumentTypes[t]));else c.push(r.getBaseTypeOfLiteralType(e.argumentTypes[o]));if(YC(t.name)){const i=a(jie(t.name,e,n));c.push(...l?J(i,r.getElementTypeOfArrayType):i)}const _=d(c);return{type:l?r.createArrayType(_):_,isOptional:u&&!l,declaration:t}}))},thisParameter:function(){const e={isNumber:void 0,isString:void 0,isNumberOrString:void 0,candidateTypes:void 0,properties:void 0,calls:void 0,constructs:void 0,numberIndex:void 0,stringIndex:void 0,candidateThisTypes:void 0,inferredTypes:void 0};for(const r of t)n.throwIfCancellationRequested(),c(r,e);return d(e.candidateThisTypes||_)}};function s(e){const t=new Map;for(const r of e)r.properties&&r.properties.forEach(((e,n)=>{t.has(n)||t.set(n,[]),t.get(n).push(e)}));const n=new Map;return t.forEach(((e,t)=>{n.set(t,s(e))})),{isNumber:e.some((e=>e.isNumber)),isString:e.some((e=>e.isString)),isNumberOrString:e.some((e=>e.isNumberOrString)),candidateTypes:U(e,(e=>e.candidateTypes)),properties:n,calls:U(e,(e=>e.calls)),constructs:U(e,(e=>e.constructs)),numberIndex:h(e,(e=>e.numberIndex)),stringIndex:h(e,(e=>e.stringIndex)),candidateThisTypes:U(e,(e=>e.candidateThisTypes)),inferredTypes:void 0}}function a(e){const t={isNumber:void 0,isString:void 0,isNumberOrString:void 0,candidateTypes:void 0,properties:void 0,calls:void 0,constructs:void 0,numberIndex:void 0,stringIndex:void 0,candidateThisTypes:void 0,inferredTypes:void 0};for(const r of e)n.throwIfCancellationRequested(),c(r,t);return p(t)}function c(e,t){for(;Ib(e);)e=e.parent;switch(e.parent.kind){case 244:!function(e,t){v(t,iA(e)?r.getVoidType():r.getAnyType())}(e,t);break;case 225:t.isNumber=!0;break;case 224:!function(e,t){switch(e.operator){case 46:case 47:case 41:case 55:t.isNumber=!0;break;case 40:t.isNumberOrString=!0}}(e.parent,t);break;case 226:!function(e,t,n){switch(t.operatorToken.kind){case 43:case 42:case 44:case 45:case 48:case 49:case 50:case 51:case 52:case 53:case 66:case 68:case 67:case 69:case 70:case 74:case 75:case 79:case 71:case 73:case 72:case 41:case 30:case 33:case 32:case 34:const i=r.getTypeAtLocation(t.left===e?t.right:t.left);1056&i.flags?v(n,i):n.isNumber=!0;break;case 65:case 40:const o=r.getTypeAtLocation(t.left===e?t.right:t.left);1056&o.flags?v(n,o):296&o.flags?n.isNumber=!0:402653316&o.flags?n.isString=!0:1&o.flags||(n.isNumberOrString=!0);break;case 64:case 35:case 37:case 38:case 36:case 77:case 78:case 76:v(n,r.getTypeAtLocation(t.left===e?t.right:t.left));break;case 103:e===t.left&&(n.isString=!0);break;case 57:case 61:e!==t.left||260!==e.parent.parent.kind&&!bb(e.parent.parent,!0)||v(n,r.getTypeAtLocation(t.right))}}(e,e.parent,t);break;case 296:case 297:!function(e,t){v(t,r.getTypeAtLocation(e.parent.parent.expression))}(e.parent,t);break;case 213:case 214:e.parent.expression===e?function(e,t){const n={argumentTypes:[],return_:{isNumber:void 0,isString:void 0,isNumberOrString:void 0,candidateTypes:void 0,properties:void 0,calls:void 0,constructs:void 0,numberIndex:void 0,stringIndex:void 0,candidateThisTypes:void 0,inferredTypes:void 0}};if(e.arguments)for(const i of e.arguments)n.argumentTypes.push(r.getTypeAtLocation(i));c(e,n.return_),213===e.kind?(t.calls||(t.calls=[])).push(n):(t.constructs||(t.constructs=[])).push(n)}(e.parent,t):l(e,t);break;case 211:!function(e,t){const n=Tc(e.name.text);t.properties||(t.properties=new Map);const r=t.properties.get(n)||{isNumber:void 0,isString:void 0,isNumberOrString:void 0,candidateTypes:void 0,properties:void 0,calls:void 0,constructs:void 0,numberIndex:void 0,stringIndex:void 0,candidateThisTypes:void 0,inferredTypes:void 0};c(e,r),t.properties.set(n,r)}(e.parent,t);break;case 212:!function(e,t,n){if(t===e.argumentExpression)return void(n.isNumberOrString=!0);{const t=r.getTypeAtLocation(e.argumentExpression),i={isNumber:void 0,isString:void 0,isNumberOrString:void 0,candidateTypes:void 0,properties:void 0,calls:void 0,constructs:void 0,numberIndex:void 0,stringIndex:void 0,candidateThisTypes:void 0,inferredTypes:void 0};c(e,i),296&t.flags?n.numberIndex=i:n.stringIndex=i}}(e.parent,e,t);break;case 303:case 304:!function(e,t){const n=$A(e.parent.parent)?e.parent.parent:e.parent;b(t,r.getTypeAtLocation(n))}(e.parent,t);break;case 172:!function(e,t){b(t,r.getTypeAtLocation(e.parent))}(e.parent,t);break;case 260:{const{name:n,initializer:i}=e.parent;if(e===n){i&&v(t,r.getTypeAtLocation(i));break}}default:return l(e,t)}}function l(e,t){Am(e)&&v(t,r.getContextualType(e))}function u(e){return d(p(e))}function d(e){if(!e.length)return r.getAnyType();const t=r.getUnionType([r.getStringType(),r.getNumberType()]);let n=function(e,t){const n=[];for(const r of e)for(const{high:e,low:i}of t)e(r)&&(Tn.assert(!i(r),"Priority can't have both low and high"),n.push(i));return e.filter((e=>n.every((t=>!t(e)))))}(e,[{high:e=>e===r.getStringType()||e===r.getNumberType(),low:e=>e===t},{high:e=>!(16385&e.flags),low:e=>!!(16385&e.flags)},{high:e=>!(114689&e.flags||16&Mx(e)),low:e=>!!(16&Mx(e))}]);const i=n.filter((e=>16&Mx(e)));return i.length&&(n=n.filter((e=>!(16&Mx(e)))),n.push(function(e){if(1===e.length)return e[0];const t=[],n=[],i=[],o=[];let s=!1,a=!1;const c=nt();for(const d of e){for(const t of r.getPropertiesOfType(d))c.add(t.escapedName,t.valueDeclaration?r.getTypeOfSymbolAtLocation(t,t.valueDeclaration):r.getAnyType());t.push(...r.getSignaturesOfType(d,0)),n.push(...r.getSignaturesOfType(d,1));const e=r.getIndexInfoOfType(d,0);e&&(i.push(e.type),s=s||e.isReadonly);const l=r.getIndexInfoOfType(d,1);l&&(o.push(l.type),a=a||l.isReadonly)}const l=X(c,((t,n)=>{const i=n.length<e.length?16777216:0,o=r.createSymbol(4|i,t);return o.links.type=r.getUnionType(n),[t,o]})),u=[];i.length&&u.push(r.createIndexInfo(r.getStringType(),r.getUnionType(i),s));o.length&&u.push(r.createIndexInfo(r.getNumberType(),r.getUnionType(o),a));return r.createAnonymousType(e[0].symbol,l,t,n,u)}(i))),r.getWidenedType(r.getUnionType(n.map(r.getBaseTypeOfLiteralType),2))}function p(e){var t,n,s;const a=[];e.isNumber&&a.push(r.getNumberType()),e.isString&&a.push(r.getStringType()),e.isNumberOrString&&a.push(r.getUnionType([r.getStringType(),r.getNumberType()])),e.numberIndex&&a.push(r.createArrayType(u(e.numberIndex))),((null==(t=e.properties)?void 0:t.size)||(null==(n=e.constructs)?void 0:n.length)||e.stringIndex)&&a.push(f(e));const c=(e.candidateTypes||[]).map((e=>r.getBaseTypeOfLiteralType(e))),l=(null==(s=e.calls)?void 0:s.length)?f(e):void 0;return l&&c?a.push(r.getUnionType([l,...c],2)):(l&&a.push(l),m(c)&&a.push(...c)),a.push(...function(e){if(!e.properties||!e.properties.size)return[];const t=o.filter((t=>function(e,t){return!!t.properties&&!f_(t.properties,((t,n)=>{const i=r.getTypeOfPropertyOfType(e,n);if(!i)return!0;if(t.calls){return!r.getSignaturesOfType(i,0).length||!r.isTypeAssignableTo(i,(o=t.calls,r.createAnonymousType(void 0,o_(),[y(o)],_,_)))}return!r.isTypeAssignableTo(i,u(t));var o}))}(t,e)));if(0<t.length&&t.length<3)return t.map((t=>function(e,t){if(!(4&Mx(e)&&t.properties))return e;const n=e.target,o=Ie(n.typeParameters);if(!o)return e;const s=[];return t.properties.forEach(((e,t)=>{const i=r.getTypeOfPropertyOfType(n,t);Tn.assert(!!i,"generic should have all the properties of its reference."),s.push(...g(i,u(e),o))})),i[e.symbol.escapedName](d(s))}(t,e)));return[]}(e)),a}function f(e){const t=new Map;e.properties&&e.properties.forEach(((e,n)=>{const i=r.createSymbol(4,n);i.links.type=u(e),t.set(n,i)}));const n=e.calls?[y(e.calls)]:[],i=e.constructs?[y(e.constructs)]:[],o=e.stringIndex?[r.createIndexInfo(r.getStringType(),u(e.stringIndex),!1)]:[];return r.createAnonymousType(void 0,t,n,i,o)}function g(e,t,n){if(e===n)return[t];if(3145728&e.flags)return U(e.types,(e=>g(e,t,n)));if(4&Mx(e)&&4&Mx(t)){const i=r.getTypeArguments(e),o=r.getTypeArguments(t),s=[];if(i&&o)for(let e=0;e<i.length;e++)o[e]&&s.push(...g(i[e],o[e],n));return s}const i=r.getSignaturesOfType(e,0),o=r.getSignaturesOfType(t,0);return 1===i.length&&1===o.length?function(e,t,n){var i;const o=[];for(let c=0;c<e.parameters.length;c++){const s=e.parameters[c],a=t.parameters[c],l=e.declaration&&Yd(e.declaration.parameters[c]);if(!a)break;let u=s.valueDeclaration?r.getTypeOfSymbolAtLocation(s,s.valueDeclaration):r.getAnyType();const d=l&&r.getElementTypeOfArrayType(u);d&&(u=d);const _=(null==(i=dt(a,s_))?void 0:i.links.type)||(a.valueDeclaration?r.getTypeOfSymbolAtLocation(a,a.valueDeclaration):r.getAnyType());o.push(...g(u,_,n))}const s=r.getReturnTypeOfSignature(e),a=r.getReturnTypeOfSignature(t);return o.push(...g(s,a,n)),o}(i[0],o[0],n):[]}function y(e){const t=[],n=Math.max(...e.map((e=>e.argumentTypes.length)));for(let o=0;o<n;o++){const n=r.createSymbol(1,Tc(`arg${o}`));n.links.type=d(e.map((e=>e.argumentTypes[o]||r.getUndefinedType()))),e.some((e=>void 0===e.argumentTypes[o]))&&(n.flags|=16777216),t.push(n)}const i=u(s(e.map((e=>e.return_))));return r.createSignature(void 0,void 0,void 0,t,i,void 0,n,0)}function v(e,t){!t||1&t.flags||131072&t.flags||(e.candidateTypes||(e.candidateTypes=[])).push(t)}function b(e,t){!t||1&t.flags||131072&t.flags||(e.candidateThisTypes||(e.candidateThisTypes=[])).push(t)}}n7({errorCodes:Die,getCodeActions(e){const{sourceFile:t,program:n,span:{start:r},errorCode:i,cancellationToken:o,host:s,preferences:a}=e,c=QY(t,r);let l;const u=Xde.ChangeTracker.with(e,(e=>{l=Mie(e,t,c,i,n,o,mt,s,a)})),d=l&&Oc(l);return d&&0!==u.length?[$8(Iie,u,[Pie(i,c),ep(d)],Iie,ws.Infer_all_types_from_usage)]:void 0},fixIds:[Iie],getAllCodeActions(e){const{sourceFile:t,program:n,cancellationToken:r,host:i,preferences:o}=e,s=VZ();return c7(e,Die,((e,a)=>{Mie(e,t,QY(a.file,a.start),a.code,n,r,s,i,o)}))}});var qie="fixReturnTypeInAsyncFunction",Vie=[ws.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_write_Promise_0.code];function Kie(e,t,n){if(Um(e))return;const r=bc(QY(e,n),mu),i=null==r?void 0:r.type;if(!i)return;const o=t.getTypeFromTypeNode(i),s=t.getAwaitedType(o)||t.getVoidType(),a=t.typeToTypeNode(s,i,void 0);return a?{returnTypeNode:i,returnType:o,promisedTypeNode:a,promisedType:s}:void 0}function Jie(e,t,n,r){e.replaceNode(t,n,oE.createTypeReferenceNode("Promise",[r]))}n7({errorCodes:Vie,fixIds:[qie],getCodeActions:function(e){const{sourceFile:t,program:n,span:r}=e,i=n.getTypeChecker(),o=Kie(t,n.getTypeChecker(),r.start);if(!o)return;const{returnTypeNode:s,returnType:a,promisedTypeNode:c,promisedType:l}=o,u=Xde.ChangeTracker.with(e,(e=>Jie(e,t,s,c)));return[$8(qie,u,[ws.Replace_0_with_Promise_1,i.typeToString(a),i.typeToString(l)],qie,ws.Fix_all_incorrect_return_type_of_an_async_functions)]},getAllCodeActions:e=>c7(e,Vie,((t,n)=>{const r=Kie(n.file,e.program.getTypeChecker(),n.start);r&&Jie(t,n.file,r.returnTypeNode,r.promisedTypeNode)}))});var Wie="disableJsDiagnostics",Hie="disableJsDiagnostics",Gie=J(Object.keys(ws),(e=>{const t=ws[e];return 1===t.category?t.code:void 0}));function Qie(e,t,n,r){const{line:i}=ta(t,n);r&&!Q(r,i)||e.insertCommentBeforeLine(t,i,n," @ts-ignore")}function Yie(e,t,n,r,i,o,s){const a=e.symbol.members;for(const c of t)a.has(c.escapedName)||$ie(c,e,n,r,i,o,s,void 0)}function Zie(e){return{trackSymbol:()=>!1,moduleResolverHost:XZ(e.program,e.host)}}n7({errorCodes:Gie,getCodeActions:function(e){const{sourceFile:t,program:n,span:r,host:i,formatContext:o}=e;if(!Um(t)||!gw(t,n.getCompilerOptions()))return;const s=t.checkJsDirective?"":VX(i,o.options),a=[X8(Wie,[a7(t.fileName,[jZ(t.checkJsDirective?tc(t.checkJsDirective.pos,t.checkJsDirective.end):ec(0,0),`// @ts-nocheck${s}`)])],ws.Disable_checking_for_this_file)];return Xde.isValidLocationToAddComment(t,r.start)&&a.unshift($8(Wie,Xde.ChangeTracker.with(e,(e=>Qie(e,t,r.start))),ws.Ignore_this_error_message,Hie,ws.Add_ts_ignore_to_all_error_messages)),a},fixIds:[Hie],getAllCodeActions:e=>{const t=new Set;return c7(e,Gie,((e,n)=>{Xde.isValidLocationToAddComment(n.file,n.start)&&Qie(e,n.file,n.start,t)}))}});var Xie=(e=>(e[e.Method=1]="Method",e[e.Property=2]="Property",e[e.All=3]="All",e))(Xie||{});function $ie(e,t,n,r,i,o,s,a,c=3,l=!1){const u=e.getDeclarations(),d=we(u),p=r.program.getTypeChecker(),f=MS(r.program.getCompilerOptions()),h=(null==d?void 0:d.kind)??171,g=function(e,t){if(262144&bx(e)){const t=e.links.nameType;if(t&&Sk(t))return oE.createIdentifier(wc(Tk(t)))}return r$(Oc(t),!1)}(e,d),y=d?nb(d):0;let v=256&y;v|=1&y?1:4&y?4:0,d&&Tu(d)&&(v|=512);const b=function(){let e;v&&(e=pe(e,oE.createModifiersFromModifierFlags(v)));r.program.getCompilerOptions().noImplicitOverride&&d&&Gv(d)&&(e=_e(e,oE.createToken(164)));return e&&oE.createNodeArray(e)}(),x=p.getWidenedType(p.getTypeOfSymbolAtLocation(e,t)),S=!!(16777216&e.flags),T=!!(33554432&t.flags)||l,w=iX(n,i);switch(h){case 171:case 172:let n=1;n|=0===w?268435456:0;let i=p.typeToTypeNode(x,t,n,Zie(r));if(o){const e=foe(i,f);e&&(i=e.typeNode,hoe(o,e.symbols))}s(oE.createPropertyDeclaration(b,d?E(g):e.getName(),S&&2&c?oE.createToken(58):void 0,i,void 0));break;case 177:case 178:{Tn.assertIsDefined(u);let e=p.typeToTypeNode(x,t,void 0,Zie(r));const n=Cv(u,d),i=n.secondAccessor?[n.firstAccessor,n.secondAccessor]:[n.firstAccessor];if(o){const t=foe(e,f);t&&(e=t.typeNode,hoe(o,t.symbols))}for(const t of i)if(SN(t))s(oE.createGetAccessorDeclaration(b,E(g),_,N(e),C(a,w,T)));else{Tn.assertNode(t,TN,"The counterpart to a getter should be a setter");const n=vv(t),r=n&&YC(n.name)?kc(n.name):void 0;s(oE.createSetAccessorDeclaration(b,E(g),aoe(1,[r],[N(e)],1,!1),C(a,w,T)))}break}case 173:case 174:Tn.assertIsDefined(u);const l=x.isUnion()?U(x.types,(e=>e.getCallSignatures())):x.getCallSignatures();if(!$(l))break;if(1===u.length){Tn.assert(1===l.length,"One declaration implies one signature");const e=l[0];k(w,e,b,E(g),C(a,w,T));break}for(const e of l)k(w,e,b,E(g));if(!T)if(u.length>l.length){const e=p.getSignatureFromDeclaration(u[u.length-1]);k(w,e,b,E(g),C(a,w))}else Tn.assert(u.length===l.length,"Declarations and signatures should match count"),s(function(e,t,n,r,i,o,s,a,c){let l=r[0],u=r[0].minArgumentCount,d=!1;for(const m of r)u=Math.min(m.minArgumentCount,u),tU(m)&&(d=!0),m.parameters.length>=l.parameters.length&&(!tU(m)||tU(l))&&(l=m);const _=l.parameters.length-(tU(l)?1:0),p=l.parameters.map((e=>e.name)),f=aoe(_,p,void 0,u,!1);if(d){const e=oE.createParameterDeclaration(void 0,oE.createToken(26),p[_]||"rest",_>=u?oE.createToken(58):void 0,oE.createArrayTypeNode(oE.createKeywordTypeNode(159)),void 0);f.push(e)}return function(e,t,n,r,i,o,s,a){return oE.createMethodDeclaration(e,void 0,t,n?oE.createToken(58):void 0,r,i,o,a||coe(s))}(s,i,o,void 0,f,function(e,t,n,r){if(m(e)){const i=t.getUnionType(R(e,t.getReturnTypeOfSignature));return t.typeToTypeNode(i,r,1,Zie(n))}}(r,e,t,n),a,c)}(p,r,t,l,E(g),S&&!!(1&c),b,w,a))}function k(e,n,i,a,l){const u=eoe(174,r,e,n,l,a,i,S&&!!(1&c),t,o);u&&s(u)}function E(e){return YC(e)&&"constructor"===e.escapedText?oE.createComputedPropertyName(oE.createStringLiteral(kc(e),0===w)):r$(e,!1)}function C(e,t,n){return n?void 0:r$(e,!1)||coe(t)}function N(e){return r$(e,!1)}}function eoe(e,t,n,r,i,o,s,a,c,l){const u=t.program,d=u.getTypeChecker(),_=MS(u.getCompilerOptions()),p=Um(c),f=524545|(0===n?268435456:0),m=d.signatureToSignatureDeclaration(r,e,c,f,Zie(t));if(!m)return;let h=p?void 0:m.typeParameters,g=m.parameters,y=p?void 0:r$(m.type);if(l){if(h){const e=j(h,(e=>{let t=e.constraint,n=e.default;if(t){const e=foe(t,_);e&&(t=e.typeNode,hoe(l,e.symbols))}if(n){const e=foe(n,_);e&&(n=e.typeNode,hoe(l,e.symbols))}return oE.updateTypeParameterDeclaration(e,e.modifiers,e.name,t,n)}));h!==e&&(h=vM(oE.createNodeArray(e,h.hasTrailingComma),h))}const e=j(g,(e=>{let t=p?void 0:e.type;if(t){const e=foe(t,_);e&&(t=e.typeNode,hoe(l,e.symbols))}return oE.updateParameterDeclaration(e,e.modifiers,e.dotDotDotToken,e.name,p?void 0:e.questionToken,t,e.initializer)}));if(g!==e&&(g=vM(oE.createNodeArray(e,g.hasTrailingComma),g)),y){const e=foe(y,_);e&&(y=e.typeNode,hoe(l,e.symbols))}}const v=a?oE.createToken(58):void 0,b=m.asteriskToken;return lA(m)?oE.updateFunctionExpression(m,s,m.asteriskToken,dt(o,YC),h,g,y,i??m.body):uA(m)?oE.updateArrowFunction(m,s,h,g,y,m.equalsGreaterThanToken,i??m.body):vN(m)?oE.updateMethodDeclaration(m,s,b,o??oE.createIdentifier(""),v,h,g,y,i):tI(m)?oE.updateFunctionDeclaration(m,s,m.asteriskToken,dt(o,YC),h,g,y,i??m.body):void 0}function toe(e,t,n,r,i,o,s){const a=iX(t.sourceFile,t.preferences),c=MS(t.program.getCompilerOptions()),l=Zie(t),u=t.program.getTypeChecker(),d=Um(s),{typeArguments:_,arguments:p,parent:f}=r,m=d?void 0:u.getContextualType(r),h=R(p,(e=>YC(e)?e.text:nA(e)&&YC(e.name)?e.name.text:void 0)),g=d?[]:R(p,(e=>u.getTypeAtLocation(e))),{argumentTypeNodes:y,argumentTypeParameters:v}=ooe(u,n,g,s,c,1,l),b=o?oE.createNodeArray(oE.createModifiersFromModifierFlags(o)):void 0,x=bA(f)?oE.createToken(42):void 0,S=d?void 0:function(e,t,n){const r=new Set(t.map((e=>e[0]))),i=new Map(t);if(n){const i=n.filter((n=>!t.some((t=>{var r;return e.getTypeAtLocation(n)===(null==(r=t[1])?void 0:r.argumentType)})))),o=r.size+i.length;for(let e=0;r.size<o;e+=1)r.add(noe(e))}return Ke(r.values(),(e=>{var t;return oE.createTypeParameterDeclaration(void 0,e,null==(t=i.get(e))?void 0:t.constraint)}))}(u,v,_),T=aoe(p.length,h,y,void 0,d),w=d||void 0===m?void 0:u.typeToTypeNode(m,s,void 0,l);switch(e){case 174:return oE.createMethodDeclaration(b,x,i,void 0,S,T,w,coe(a));case 173:return oE.createMethodSignature(b,i,void 0,S,T,void 0===w?oE.createKeywordTypeNode(159):w);case 262:return Tn.assert("string"==typeof i||YC(i),"Unexpected name"),oE.createFunctionDeclaration(b,x,i,S,T,w,loe(ws.Function_not_implemented.message,a));default:Tn.fail("Unexpected kind")}}function noe(e){return 84+e<=90?String.fromCharCode(84+e):`T${e}`}function roe(e,t,n,r,i,o,s){let a=e.typeToTypeNode(n,r,o,s);if(a&&GN(a)){const e=foe(a,i);e&&(hoe(t,e.symbols),a=e.typeNode)}return r$(a)}function ioe(e){return e.isUnionOrIntersection()?e.types.some(ioe):262144&e.flags}function ooe(e,t,n,r,i,o,s){const a=[],c=new Map;for(let u=0;u<n.length;u+=1){const d=n[u];if(d.isUnionOrIntersection()&&d.types.some(ioe)){const e=noe(u);a.push(oE.createTypeReferenceNode(e)),c.set(e,void 0);continue}const _=e.getBaseTypeOfLiteralType(d),p=roe(e,t,_,r,i,o,s);if(!p)continue;a.push(p);const f=soe(d),m=!d.isTypeParameter()||!d.constraint||524288&(l=d.constraint).flags&&16===l.objectFlags?void 0:roe(e,t,d.constraint,r,i,o,s);f&&c.set(f,{argumentType:d,constraint:m})}var l;return{argumentTypeNodes:a,argumentTypeParameters:Ke(c.entries())}}function soe(e){var t;if(3145728&e.flags)for(const n of e.types){const e=soe(n);if(e)return e}return 262144&e.flags?null==(t=e.getSymbol())?void 0:t.getName():void 0}function aoe(e,t,n,r,i){const o=[],s=new Map;for(let a=0;a<e;a++){const e=(null==t?void 0:t[a])||`arg${a}`,c=s.get(e);s.set(e,(c||0)+1);const l=oE.createParameterDeclaration(void 0,void 0,e+(c||""),void 0!==r&&a>=r?oE.createToken(58):void 0,i?void 0:(null==n?void 0:n[a])||oE.createKeywordTypeNode(159),void 0);o.push(l)}return o}function coe(e){return loe(ws.Method_not_implemented.message,e)}function loe(e,t){return oE.createBlock([oE.createThrowStatement(oE.createNewExpression(oE.createIdentifier("Error"),void 0,[oE.createStringLiteral(e,0===t)]))],!0)}function uoe(e,t,n){const r=$f(t);if(!r)return;const i=poe(r,"compilerOptions");if(void 0===i)return void e.insertNodeAtObjectStart(t,r,_oe("compilerOptions",oE.createObjectLiteralExpression(n.map((([e,t])=>_oe(e,t))),!0)));const o=i.initializer;if(tA(o))for(const[s,a]of n){const n=poe(o,s);void 0===n?e.insertNodeAtObjectStart(t,o,_oe(s,a)):e.replaceNode(t,n.initializer,a)}}function doe(e,t,n,r){uoe(e,t,[[n,r]])}function _oe(e,t){return oE.createPropertyAssignment(oE.createStringLiteral(e),t)}function poe(e,t){return w(e.properties,(e=>WI(e)&&!!e.name&&MC(e.name)&&e.name.text===t))}function foe(e,t){let n;const r=iU(e,(function e(r){if(gf(r)&&r.qualifier){const i=kb(r.qualifier);if(!i.symbol)return fU(r,e,void 0);const o=i0(i.symbol,t),s=o!==i.text?moe(r.qualifier,oE.createIdentifier(o)):r.qualifier;n=_e(n,i.symbol);const a=oU(r.typeArguments,e,Du);return oE.createTypeReferenceNode(s,a)}return fU(r,e,void 0)}),Du);if(n&&r)return{typeNode:r,symbols:n}}function moe(e,t){return 80===e.kind?t:oE.createQualifiedName(moe(e.left,t),e.right)}function hoe(e,t){t.forEach((t=>e.addImportFromExportedSymbol(t,!0)))}function goe(e,t){const n=qa(t);let r=QY(e,t.start);for(;r.end<n;)r=r.parent;return r}function yoe(e,t,n,r,i,o){const s=Soe(e,t,n,r);if(!s||m3.isRefactorErrorInfo(s))return;const a=Xde.ChangeTracker.fromContext(i),{isStatic:c,isReadonly:l,fieldName:u,accessorName:d,originalName:_,type:p,container:f,declaration:m}=s;let h,g;if(c$(u),c$(d),c$(m),c$(f),xu(f)){const t=nb(m);if(jm(e)){const e=oE.createModifiersFromModifierFlags(t);h=e,g=e}else h=oE.createModifiersFromModifierFlags(function(e){e&=-9,e&=-3,4&e||(e|=1);return e}(t)),g=oE.createModifiersFromModifierFlags(function(e){return e&=-2,e&=-5,e|=2,e}(t));xM(m)&&(g=te(Rc(m),g))}!function(e,t,n,r,i,o){gN(n)?function(e,t,n,r,i,o){const s=oE.updatePropertyDeclaration(n,o,i,n.questionToken||n.exclamationToken,r,n.initializer);e.replaceNode(t,n,s)}(e,t,n,r,i,o):WI(n)?function(e,t,n,r){let i=oE.updatePropertyAssignment(n,r,n.initializer);(i.modifiers||i.questionToken||i.exclamationToken)&&(i===n&&(i=oE.cloneNode(i)),i.modifiers=void 0,i.questionToken=void 0,i.exclamationToken=void 0);e.replacePropertyAssignment(t,n,i)}(e,t,n,i):e.replaceNode(t,n,oE.updateParameterDeclaration(n,o,n.dotDotDotToken,_t(i,YC),n.questionToken,n.type,n.initializer))}(a,e,m,p,u,g);const y=function(e,t,n,r,i,o){return oE.createGetAccessorDeclaration(r,t,[],n,oE.createBlock([oE.createReturnStatement(xoe(e,i,o))],!0))}(u,d,p,h,c,f);if(c$(y),Toe(a,e,y,m,f),l){const t=yv(f);t&&function(e,t,n,r,i){if(!n.body)return;n.body.forEachChild((function n(o){rA(o)&&110===o.expression.kind&&MC(o.argumentExpression)&&o.argumentExpression.text===i&&kx(o)&&e.replaceNode(t,o.argumentExpression,oE.createStringLiteral(r)),nA(o)&&110===o.expression.kind&&o.name.text===i&&kx(o)&&e.replaceNode(t,o.name,oE.createIdentifier(r)),pu(o)||xu(o)||o.forEachChild(n)}))}(a,e,t,u.text,_)}else{const t=function(e,t,n,r,i,o){return oE.createSetAccessorDeclaration(r,t,[oE.createParameterDeclaration(void 0,void 0,oE.createIdentifier("value"),void 0,n)],oE.createBlock([oE.createExpressionStatement(oE.createAssignment(xoe(e,i,o),oE.createIdentifier("value")))],!0))}(u,d,p,h,c,f);c$(t),Toe(a,e,t,m,f)}return a.getChanges()}function voe(e){return cc(e,e.parent)||gN(e)||WI(e)}function boe(e,t){return YC(t)?oE.createIdentifier(e):oE.createStringLiteral(e)}function xoe(e,t,n){const r=t?n.name:oE.createThis();return YC(e)?oE.createPropertyAccessExpression(r,e):oE.createElementAccessExpression(r,oE.createStringLiteralFromNode(e))}function Soe(e,t,n,r,i=!0){const o=n===r&&i,s=bc(QY(e,n).parent,voe);if(!s||!NY(s.name,e,n,r)&&!o)return{error:cS(ws.Could_not_find_property_for_which_to_generate_accessor)};if(!function(e){return YC(e)||MC(e)}(s.name))return{error:cS(ws.Name_is_not_valid)};if(271!=(98303&nb(s)|271))return{error:cS(ws.Can_only_convert_property_with_modifier)};const a=s.name.text,c=d0(a),l=boe(c?a:f$(`_${a}`,e),s.name),u=boe(c?f$(a.substring(1),e):a,s.name);return{isStatic:Wv(s),isReadonly:Zv(s),type:woe(s,t),container:169===s.kind?s.parent.parent:s.parent,originalName:s.name.text,declaration:s,fieldName:l,accessorName:u,renameAccessor:c}}function Toe(e,t,n,r,i){cc(r,r.parent)?e.insertMemberAtStart(t,i,n):WI(r)?e.insertNodeAfterComma(t,r,n):e.insertNodeAfter(t,r,n)}function woe(e,t){const n=Av(e);if(gN(e)&&n&&e.questionToken){const e=t.getTypeChecker(),r=e.getTypeFromTypeNode(n);if(!e.isTypeAssignableTo(e.getUndefinedType(),r)){const e=jN(n)?n.types:[n];return oE.createUnionTypeNode([...e,oE.createKeywordTypeNode(157)])}}return n}function koe(e,t){const n=[];for(;e;){const r=Ng(e),i=r&&t.getSymbolAtLocation(r.expression);if(!i)break;const o=2097152&i.flags?t.getAliasedSymbol(i):i,s=o.declarations&&w(o.declarations,xu);if(!s)break;n.push(s),e=s}return n}var Eoe="invalidImportSyntax";function Coe(e,t,n,r){const i=Xde.ChangeTracker.with(e,(e=>e.replaceNode(t,n,r)));return X8(Eoe,i,[ws.Replace_import_with_0,i[0].textChanges[0].newText])}function Noe(e,t){const n=e.program.getTypeChecker().getTypeAtLocation(t);if(!(n.symbol&&s_(n.symbol)&&n.symbol.links.originatingImport))return[];const r=[],i=n.symbol.links.originatingImport;if(mf(i)||me(r,function(e,t){const n=C_(t),r=Dh(t),i=e.program.getCompilerOptions(),o=[];return o.push(Coe(e,n,t,eX(r.name,void 0,t.moduleSpecifier,iX(n,e.preferences)))),1===OS(i)&&o.push(Coe(e,n,t,oE.createImportEqualsDeclaration(void 0,!1,r.name,oE.createExternalModuleReference(t.moduleSpecifier)))),o}(e,i)),td(t)&&(!Pc(t.parent)||t.parent.name!==t)){const n=e.sourceFile,i=Xde.ChangeTracker.with(e,(e=>e.replaceNode(n,t,oE.createPropertyAccessExpression(t,"default"),{})));r.push(X8(Eoe,i,ws.Use_synthetic_default_member))}return r}n7({errorCodes:[ws.This_expression_is_not_callable.code,ws.This_expression_is_not_constructable.code],getCodeActions:function(e){const t=e.sourceFile,n=ws.This_expression_is_not_callable.code===e.errorCode?213:214,r=bc(QY(t,e.span.start),(e=>e.kind===n));if(!r)return[];const i=r.expression;return Noe(e,i)}}),n7({errorCodes:[ws.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,ws.Type_0_does_not_satisfy_the_constraint_1.code,ws.Type_0_is_not_assignable_to_type_1.code,ws.Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated.code,ws.Type_predicate_0_is_not_assignable_to_1.code,ws.Property_0_of_type_1_is_not_assignable_to_2_index_type_3.code,ws._0_index_type_1_is_not_assignable_to_2_index_type_3.code,ws.Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2.code,ws.Property_0_in_type_1_is_not_assignable_to_type_2.code,ws.Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property.code,ws.The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1.code],getCodeActions:function(e){const t=bc(QY(e.sourceFile,e.span.start),(t=>t.getStart()===e.span.start&&t.getEnd()===e.span.start+e.span.length));if(!t)return[];return Noe(e,t)}});var Aoe="strictClassInitialization",Ioe="addMissingPropertyDefiniteAssignmentAssertions",Doe="addMissingPropertyUndefinedType",Poe="addMissingPropertyInitializer",Moe=[ws.Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor.code];function Ooe(e,t){const n=QY(e,t);if(YC(n)&&gN(n.parent)){const e=Nv(n.parent);if(e)return{type:e,prop:n.parent,isJs:Um(n.parent)}}}function Foe(e,t,n){c$(n);const r=oE.updatePropertyDeclaration(n,n.modifiers,n.name,oE.createToken(54),n.type,n.initializer);e.replaceNode(t,n,r)}function Roe(e,t,n){const r=oE.createKeywordTypeNode(157),i=jN(n.type)?n.type.types.concat(r):[n.type,r],o=oE.createUnionTypeNode(i);n.isJs?e.addJSDocTags(t,n.prop,[oE.createJSDocTypeTag(void 0,oE.createJSDocTypeExpression(o))]):e.replaceNode(t,n.type,o)}function Loe(e,t,n,r){c$(n);const i=oE.updatePropertyDeclaration(n,n.modifiers,n.name,n.questionToken,n.type,r);e.replaceNode(t,n,i)}function joe(e,t){return zoe(e,e.getTypeFromTypeNode(t.type))}function zoe(e,t){if(512&t.flags)return t===e.getFalseType()||t===e.getFalseType(!0)?oE.createFalse():oE.createTrue();if(t.isStringLiteral())return oE.createStringLiteral(t.value);if(t.isNumberLiteral())return oE.createNumericLiteral(t.value);if(2048&t.flags)return oE.createBigIntLiteral(t.value);if(t.isUnion())return y(t.types,(t=>zoe(e,t)));if(t.isClass()){const e=Px(t.symbol);if(!e||Kv(e,64))return;const n=yv(e);if(n&&n.parameters.length)return;return oE.createNewExpression(oE.createIdentifier(t.symbol.name),void 0,void 0)}return e.isArrayLikeType(t)?oE.createArrayLiteralExpression():void 0}n7({errorCodes:Moe,getCodeActions:function(e){const t=Ooe(e.sourceFile,e.span.start);if(!t)return;const n=[];return _e(n,function(e,t){const n=Xde.ChangeTracker.with(e,(n=>Roe(n,e.sourceFile,t)));return $8(Aoe,n,[ws.Add_undefined_type_to_property_0,t.prop.name.getText()],Doe,ws.Add_undefined_type_to_all_uninitialized_properties)}(e,t)),_e(n,function(e,t){if(t.isJs)return;const n=Xde.ChangeTracker.with(e,(n=>Foe(n,e.sourceFile,t.prop)));return $8(Aoe,n,[ws.Add_definite_assignment_assertion_to_property_0,t.prop.getText()],Ioe,ws.Add_definite_assignment_assertions_to_all_uninitialized_properties)}(e,t)),_e(n,function(e,t){if(t.isJs)return;const n=e.program.getTypeChecker(),r=joe(n,t.prop);if(!r)return;const i=Xde.ChangeTracker.with(e,(n=>Loe(n,e.sourceFile,t.prop,r)));return $8(Aoe,i,[ws.Add_initializer_to_property_0,t.prop.name.getText()],Poe,ws.Add_initializers_to_all_uninitialized_properties)}(e,t)),n},fixIds:[Ioe,Doe,Poe],getAllCodeActions:e=>c7(e,Moe,((t,n)=>{const r=Ooe(n.file,n.start);if(r)switch(e.fixId){case Ioe:Foe(t,n.file,r.prop);break;case Doe:Roe(t,n.file,r);break;case Poe:const i=joe(e.program.getTypeChecker(),r.prop);if(!i)return;Loe(t,n.file,r.prop,i);break;default:Tn.fail(JSON.stringify(e.fixId))}}))});var Uoe="requireInTs",Boe=[ws.require_call_may_be_converted_to_an_import.code];function qoe(e,t,n){const{allowSyntheticDefaults:r,defaultImportName:i,namedImports:o,statement:s,required:a}=n;e.replaceNode(t,s,i&&!r?oE.createImportEqualsDeclaration(void 0,!1,i,oE.createExternalModuleReference(a)):oE.createImportDeclaration(void 0,oE.createImportClause(!1,i,o),a,void 0))}function Voe(e,t,n){const{parent:r}=QY(e,n);Jm(r,!0)||Tn.failBadSyntaxKind(r);const i=_t(r.parent,$A),o=dt(i.name,YC),s=ZN(i.name)?function(e){const t=[];for(const n of e.elements){if(!YC(n.name)||n.initializer)return;t.push(oE.createImportSpecifier(!1,dt(n.propertyName,YC),n.name))}if(t.length)return oE.createNamedImports(t)}(i.name):void 0;if(o||s)return{allowSyntheticDefaults:zS(t.getCompilerOptions()),defaultImportName:o,namedImports:s,statement:_t(i.parent.parent,FA),required:Ee(r.arguments)}}n7({errorCodes:Boe,getCodeActions(e){const t=Voe(e.sourceFile,e.program,e.span.start);if(!t)return;const n=Xde.ChangeTracker.with(e,(n=>qoe(n,e.sourceFile,t)));return[$8(Uoe,n,ws.Convert_require_to_import,Uoe,ws.Convert_all_require_to_import)]},fixIds:[Uoe],getAllCodeActions:e=>c7(e,Boe,((t,n)=>{const r=Voe(n.file,e.program,n.start);r&&qoe(t,e.sourceFile,r)}))});var Koe="useDefaultImport",Joe=[ws.Import_may_be_converted_to_a_default_import.code];function Woe(e,t){const n=QY(e,t);if(!YC(n))return;const{parent:r}=n;if(uI(r)&&AI(r.moduleReference))return{importNode:r,name:n,moduleSpecifier:r.moduleReference.expression};if(yI(r)&&dI(r.parent.parent)){const e=r.parent.parent;return{importNode:e,name:n,moduleSpecifier:e.moduleSpecifier}}}function Hoe(e,t,n,r){e.replaceNode(t,n.importNode,eX(n.name,void 0,n.moduleSpecifier,iX(t,r)))}n7({errorCodes:Joe,getCodeActions(e){const{sourceFile:t,span:{start:n}}=e,r=Woe(t,n);if(!r)return;const i=Xde.ChangeTracker.with(e,(n=>Hoe(n,t,r,e.preferences)));return[$8(Koe,i,ws.Convert_to_default_import,Koe,ws.Convert_all_to_default_imports)]},fixIds:[Koe],getAllCodeActions:e=>c7(e,Joe,((t,n)=>{const r=Woe(n.file,n.start);r&&Hoe(t,n.file,r,e.preferences)}))});var Goe="useBigintLiteral",Qoe=[ws.Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accurately_as_integers.code];function Yoe(e,t,n){const r=dt(QY(t,n.start),DC);if(!r)return;const i=r.getText(t)+"n";e.replaceNode(t,r,oE.createBigIntLiteral(i))}n7({errorCodes:Qoe,getCodeActions:function(e){const t=Xde.ChangeTracker.with(e,(t=>Yoe(t,e.sourceFile,e.span)));if(t.length>0)return[$8(Goe,t,ws.Convert_to_a_bigint_numeric_literal,Goe,ws.Convert_all_to_bigint_numeric_literals)]},fixIds:[Goe],getAllCodeActions:e=>c7(e,Qoe,((e,t)=>Yoe(e,t.file,t)))});var Zoe="fixAddModuleReferTypeMissingTypeof",Xoe=[ws.Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0.code];function $oe(e,t){const n=QY(e,t);return Tn.assert(102===n.kind,"This token should be an ImportKeyword"),Tn.assert(205===n.parent.kind,"Token parent should be an ImportType"),n.parent}function ese(e,t,n){const r=oE.updateImportTypeNode(n,n.argument,n.attributes,n.qualifier,n.typeArguments,!0);e.replaceNode(t,n,r)}n7({errorCodes:Xoe,getCodeActions:function(e){const{sourceFile:t,span:n}=e,r=$oe(t,n.start),i=Xde.ChangeTracker.with(e,(e=>ese(e,t,r)));return[$8(Zoe,i,ws.Add_missing_typeof,Zoe,ws.Add_missing_typeof)]},fixIds:[Zoe],getAllCodeActions:e=>c7(e,Xoe,((t,n)=>ese(t,e.sourceFile,$oe(n.file,n.start))))});var tse="wrapJsxInFragment",nse=[ws.JSX_expressions_must_have_one_parent_element.code];function rse(e,t){let n=QY(e,t).parent.parent;if((gA(n)||(n=n.parent,gA(n)))&&F_(n.operatorToken))return n}function ise(e,t,n){const r=function(e){const t=[];let n=e;for(;;){if(gA(n)&&F_(n.operatorToken)&&28===n.operatorToken.kind){if(t.push(n.left),Ad(n.right))return t.push(n.right),t;if(gA(n.right)){n=n.right;continue}return}return}}(n);r&&e.replaceNode(t,n,oE.createJsxFragment(oE.createJsxOpeningFragment(),r,oE.createJsxJsxClosingFragment()))}n7({errorCodes:nse,getCodeActions:function(e){const{sourceFile:t,span:n}=e,r=rse(t,n.start);if(!r)return;const i=Xde.ChangeTracker.with(e,(e=>ise(e,t,r)));return[$8(tse,i,ws.Wrap_in_JSX_fragment,tse,ws.Wrap_all_unparented_JSX_in_JSX_fragment)]},fixIds:[tse],getAllCodeActions:e=>c7(e,nse,((t,n)=>{const r=rse(e.sourceFile,n.start);r&&ise(t,e.sourceFile,r)}))});var ose="wrapDecoratorInParentheses",sse=[ws.Expression_must_be_enclosed_in_parentheses_to_be_used_as_a_decorator.code];function ase(e,t,n){const r=bc(QY(t,n),mN);Tn.assert(!!r,"Expected position to be owned by a decorator.");const i=oE.createParenthesizedExpression(r.expression);e.replaceNode(t,r.expression,i)}n7({errorCodes:sse,getCodeActions:function(e){const t=Xde.ChangeTracker.with(e,(t=>ase(t,e.sourceFile,e.span.start)));return[$8(ose,t,ws.Wrap_in_parentheses,ose,ws.Wrap_all_invalid_decorator_expressions_in_parentheses)]},fixIds:[ose],getAllCodeActions:e=>c7(e,sse,((e,t)=>ase(e,t.file,t.start)))});var cse="fixConvertToMappedObjectType",lse=[ws.An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_object_type_instead.code];function use(e,t){const n=dt(QY(e,t).parent.parent,EN);if(!n)return;const r=rI(n.parent)?n.parent:dt(n.parent.parent,iI);return r?{indexSignature:n,container:r}:void 0}function dse(e,t,{indexSignature:n,container:r}){const i=(rI(r)?r.members:r.type.members).filter((e=>!EN(e))),o=Ee(n.parameters),s=oE.createTypeParameterDeclaration(void 0,_t(o.name,YC),o.type),a=oE.createMappedTypeNode(Zv(n)?oE.createModifier(148):void 0,s,void 0,n.questionToken,n.type,void 0),c=oE.createIntersectionTypeNode([...Ig(r),a,...i.length?[oE.createTypeLiteralNode(i)]:_]);var l,u;e.replaceNode(t,r,(l=r,u=c,oE.createTypeAliasDeclaration(l.modifiers,l.name,l.typeParameters,u)))}n7({errorCodes:lse,getCodeActions:function(e){const{sourceFile:t,span:n}=e,r=use(t,n.start);if(!r)return;const i=Xde.ChangeTracker.with(e,(e=>dse(e,t,r))),o=kc(r.container.name);return[$8(cse,i,[ws.Convert_0_to_mapped_object_type,o],cse,[ws.Convert_0_to_mapped_object_type,o])]},fixIds:[cse],getAllCodeActions:e=>c7(e,lse,((e,t)=>{const n=use(t.file,t.start);n&&dse(e,t.file,n)}))});var _se="removeAccidentalCallParentheses";n7({errorCodes:[ws.This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without.code],getCodeActions(e){const t=bc(QY(e.sourceFile,e.span.start),iA);if(!t)return;const n=Xde.ChangeTracker.with(e,(n=>{n.deleteRange(e.sourceFile,{pos:t.expression.end,end:t.end})}));return[X8(_se,n,ws.Remove_parentheses)]},fixIds:[_se]});var pse="removeUnnecessaryAwait",fse=[ws.await_has_no_effect_on_the_type_of_this_expression.code];function mse(e,t,n){const r=dt(QY(t,n.start),(e=>135===e.kind)),i=r&&dt(r.parent,fA);if(!i)return;let o=i;if(cA(i.parent)){if(YC(Wx(i.expression,!1))){const e=eZ(i.parent.pos,t);e&&105!==e.kind&&(o=i.parent)}}e.replaceNode(t,o,i.expression)}n7({errorCodes:fse,getCodeActions:function(e){const t=Xde.ChangeTracker.with(e,(t=>mse(t,e.sourceFile,e.span)));if(t.length>0)return[$8(pse,t,ws.Remove_unnecessary_await,pse,ws.Remove_all_unnecessary_uses_of_await)]},fixIds:[pse],getAllCodeActions:e=>c7(e,fse,((e,t)=>mse(e,t.file,t)))});var hse=[ws.A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both.code],gse="splitTypeOnlyImport";function yse(e,t){return bc(QY(e,t.start),dI)}function vse(e,t,n){if(!t)return;const r=Tn.checkDefined(t.importClause);e.replaceNode(n.sourceFile,t,oE.updateImportDeclaration(t,t.modifiers,oE.updateImportClause(r,r.isTypeOnly,r.name,void 0),t.moduleSpecifier,t.attributes)),e.insertNodeAfter(n.sourceFile,t,oE.createImportDeclaration(void 0,oE.updateImportClause(r,r.isTypeOnly,void 0,r.namedBindings),t.moduleSpecifier,t.attributes))}n7({errorCodes:hse,fixIds:[gse],getCodeActions:function(e){const t=Xde.ChangeTracker.with(e,(t=>vse(t,yse(e.sourceFile,e.span),e)));if(t.length)return[$8(gse,t,ws.Split_into_two_separate_import_declarations,gse,ws.Split_all_invalid_type_only_imports)]},getAllCodeActions:e=>c7(e,hse,((t,n)=>{vse(t,yse(e.sourceFile,n),e)}))});var bse="fixConvertConstToLet",xse=[ws.Cannot_assign_to_0_because_it_is_a_constant.code];function Sse(e,t,n){var r;const i=n.getTypeChecker().getSymbolAtLocation(QY(e,t));if(void 0===i)return;const o=dt(null==(r=null==i?void 0:i.valueDeclaration)?void 0:r.parent,eI);if(void 0===o)return;const s=FY(o,87,e);return void 0!==s?{symbol:i,token:s}:void 0}function Tse(e,t,n){e.replaceNode(t,n,oE.createToken(121))}n7({errorCodes:xse,getCodeActions:function(e){const{sourceFile:t,span:n,program:r}=e,i=Sse(t,n.start,r);if(void 0===i)return;const o=Xde.ChangeTracker.with(e,(e=>Tse(e,t,i.token)));return[e7(bse,o,ws.Convert_const_to_let,bse,ws.Convert_all_const_to_let)]},getAllCodeActions:e=>{const{program:t}=e,n=new Map;return s7(Xde.ChangeTracker.with(e,(r=>{l7(e,xse,(e=>{const i=Sse(e.file,e.start,t);if(i&&jx(n,Qz(i.symbol)))return Tse(r,e.file,i.token)}))})))},fixIds:[bse]});var wse="fixExpectedComma",kse=[ws._0_expected.code];function Ese(e,t,n){const r=QY(e,t);return 27===r.kind&&r.parent&&(tA(r.parent)||eA(r.parent))?{node:r}:void 0}function Cse(e,t,{node:n}){const r=oE.createToken(28);e.replaceNode(t,n,r)}n7({errorCodes:kse,getCodeActions(e){const{sourceFile:t}=e,n=Ese(t,e.span.start,e.errorCode);if(!n)return;const r=Xde.ChangeTracker.with(e,(e=>Cse(e,t,n)));return[$8(wse,r,[ws.Change_0_to_1,";",","],wse,[ws.Change_0_to_1,";",","])]},fixIds:[wse],getAllCodeActions:e=>c7(e,kse,((t,n)=>{const r=Ese(n.file,n.start,n.code);r&&Cse(t,e.sourceFile,r)}))});var Nse="addVoidToPromise",Ase=[ws.Expected_1_argument_but_got_0_new_Promise_needs_a_JSDoc_hint_to_produce_a_resolve_that_can_be_called_without_arguments.code,ws.Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise.code];function Ise(e,t,n,r,i){const o=QY(t,n.start);if(!YC(o)||!iA(o.parent)||o.parent.expression!==o||0!==o.parent.arguments.length)return;const s=r.getTypeChecker(),a=s.getSymbolAtLocation(o),c=null==a?void 0:a.valueDeclaration;if(!c||!fN(c)||!oA(c.parent.parent))return;if(null==i?void 0:i.has(c))return;null==i||i.add(c);const l=function(e){var t;if(!Um(e))return e.typeArguments;if(cA(e.parent)){const n=null==(t=ul(e.parent))?void 0:t.typeExpression.type;if(n&&NN(n)&&YC(n.typeName)&&"Promise"===kc(n.typeName))return n.typeArguments}}(c.parent.parent);if($(l)){const n=l[0],r=!jN(n)&&!qN(n)&&qN(oE.createUnionTypeNode([n,oE.createKeywordTypeNode(116)]).types[0]);r&&e.insertText(t,n.pos,"("),e.insertText(t,n.end,r?") | void":" | void")}else{const n=s.getResolvedSignature(o.parent),r=null==n?void 0:n.parameters[0],i=r&&s.getTypeOfSymbolAtLocation(r,c.parent.parent);Um(c)?(!i||3&i.flags)&&(e.insertText(t,c.parent.parent.end,")"),e.insertText(t,da(t.text,c.parent.parent.pos),"/** @type {Promise<void>} */(")):(!i||2&i.flags)&&e.insertText(t,c.parent.parent.expression.end,"<void>")}}n7({errorCodes:Ase,fixIds:[Nse],getCodeActions(e){const t=Xde.ChangeTracker.with(e,(t=>Ise(t,e.sourceFile,e.span,e.program)));if(t.length>0)return[$8("addVoidToPromise",t,ws.Add_void_to_Promise_resolved_without_a_value,Nse,ws.Add_void_to_all_Promises_resolved_without_a_value)]},getAllCodeActions:e=>c7(e,Ase,((t,n)=>Ise(t,n.file,n,e.program,new Set)))});var Dse={};a(Dse,{CompletionKind:()=>Sae,CompletionSource:()=>Fse,SortText:()=>Ose,StringCompletions:()=>ece,SymbolOriginInfoKind:()=>Rse,createCompletionDetails:()=>bae,createCompletionDetailsForSymbol:()=>vae,getCompletionEntriesFromSymbols:()=>mae,getCompletionEntryDetails:()=>gae,getCompletionEntrySymbol:()=>xae,getCompletionsAtPosition:()=>Kse,getPropertiesForObjectExpression:()=>Rae,moduleSpecifierResolutionCacheAttemptLimit:()=>Mse,moduleSpecifierResolutionLimit:()=>Pse});var Pse=100,Mse=1e3,Ose={LocalDeclarationPriority:"10",LocationPriority:"11",OptionalMember:"12",MemberDeclaredBySpreadAssignment:"13",SuggestedClassMembers:"14",GlobalsOrKeywords:"15",AutoImportSuggestions:"16",ClassMemberSnippets:"17",JavascriptIdentifiers:"18",Deprecated:e=>"z"+e,ObjectLiteralProperty:(e,t)=>`${e}\0${t}\0`,SortBelow:e=>e+"1"},Fse=(e=>(e.ThisProperty="ThisProperty/",e.ClassMemberSnippet="ClassMemberSnippet/",e.TypeOnlyAlias="TypeOnlyAlias/",e.ObjectLiteralMethodSnippet="ObjectLiteralMethodSnippet/",e.SwitchCases="SwitchCases/",e.ObjectLiteralMemberWithComma="ObjectLiteralMemberWithComma/",e))(Fse||{}),Rse=(e=>(e[e.ThisType=1]="ThisType",e[e.SymbolMember=2]="SymbolMember",e[e.Export=4]="Export",e[e.Promise=8]="Promise",e[e.Nullable=16]="Nullable",e[e.ResolvedExport=32]="ResolvedExport",e[e.TypeOnlyAlias=64]="TypeOnlyAlias",e[e.ObjectLiteralMethod=128]="ObjectLiteralMethod",e[e.Ignore=256]="Ignore",e[e.ComputedPropertyName=512]="ComputedPropertyName",e[e.SymbolMemberNoExport=2]="SymbolMemberNoExport",e[e.SymbolMemberExport=6]="SymbolMemberExport",e))(Rse||{});function Lse(e){return!!(e&&4&e.kind)}function jse(e){return!(!e||32!==e.kind)}function zse(e){return(Lse(e)||jse(e))&&!!e.isFromPackageJson}function Use(e){return!!(e&&64&e.kind)}function Bse(e){return!!(e&&128&e.kind)}function qse(e){return!!(e&&512&e.kind)}function Vse(e,t,n,r,i,o,s,a,c){var l,u,d;const _=er(),p=s||$S(FS(r.getCompilerOptions()));let f=!1,m=0,h=0,g=0,y=0;const v=c({tryResolve:function(e,t){if(t){const t=n.getModuleSpecifierForBestExportInfo(e,i,a);return t&&m++,t||"failed"}const r=p||o.allowIncompleteCompletions&&h<Pse,s=!r&&o.allowIncompleteCompletions&&y<Mse,c=r||s?n.getModuleSpecifierForBestExportInfo(e,i,a,s):void 0;(!r&&!s||s&&!c)&&(f=!0);h+=(null==c?void 0:c.computedWithoutCacheCount)||0,g+=e.length-((null==c?void 0:c.computedWithoutCacheCount)||0),s&&y++;return c||(p?"failed":"skipped")},skippedAny:()=>f,resolvedAny:()=>h>0,resolvedBeyondLimit:()=>h>Pse}),b=y?` (${(g/y*100).toFixed(1)}% hit rate)`:"";return null==(l=t.log)||l.call(t,`${e}: resolved ${h} module specifiers, plus ${m} ambient and ${g} from cache${b}`),null==(u=t.log)||u.call(t,`${e}: response is ${f?"incomplete":"complete"}`),null==(d=t.log)||d.call(t,`${e}: ${er()-_}`),v}function Kse(e,t,n,r,i,o,s,a,c,l,u=!1){var d;const{previousToken:_}=kae(i,r);if(s&&!iZ(r,i,_)&&!function(e,t,n,r){switch(t){case".":case"@":return!0;case'"':case"'":case"`":return!!n&&k$(n)&&r===n.getStart(e)+1;case"#":return!!n&&ZC(n)&&!!im(n);case"<":return!!n&&30===n.kind&&(!gA(n.parent)||Bae(n.parent));case"/":return!!n&&(Hd(n)?!!Ah(n):44===n.kind&&MI(n.parent));case" ":return!!n&&lN(n)&&307===n.parent.kind;default:return Tn.assertNever(t)}}(r,s,_,i))return;if(" "===s)return o.includeCompletionsForImportStatements&&o.includeCompletionsWithInsertText?{isGlobalCompletion:!0,isMemberCompletion:!1,isNewIdentifierLocation:!0,isIncomplete:!0,entries:[]}:void 0;const p=t.getCompilerOptions(),f=t.getTypeChecker(),m=o.allowIncompleteCompletions?null==(d=e.getIncompleteCompletionsCache)?void 0:d.call(e):void 0;if(m&&3===a&&_&&YC(_)){const n=function(e,t,n,r,i,o,s,a){const c=e.get();if(!c)return;const l=HY(t,a),u=n.text.toLowerCase(),d=D0(t,i,r,o,s),_=Vse("continuePreviousIncompleteResponse",i,G8.createImportSpecifierResolver(t,r,i,o),r,n.getStart(),o,!1,Mw(n),(e=>{const n=J(c.entries,(n=>{var o;if(!n.hasAction||!n.source||!n.data||Wse(n.data))return n;if(!Zae(n.name,u))return;const{origin:s}=Tn.checkDefined(Eae(n.name,n.data,r,i)),a=d.get(t.path,n.data.exportMapKey),c=a&&e.tryResolve(a,!za(Ky(s.moduleSymbol.name)));if("skipped"===c)return n;if(!c||"failed"===c)return void(null==(o=i.log)||o.call(i,`Unexpected failure resolving auto import for '${n.name}' from '${n.source}'`));const l={...s,kind:32,moduleSpecifier:c.moduleSpecifier};return n.data=uae(l),n.source=fae(l),n.sourceDisplay=[FX(l.moduleSpecifier)],n}));return e.skippedAny()||(c.isIncomplete=void 0),n}));return c.entries=_,c.flags=4|(c.flags||0),c.optionalReplacementSpan=Xse(l),c}(m,r,_,t,e,o,c,i);if(n)return n}else null==m||m.clear();const h=ece.getStringLiteralCompletions(r,i,_,p,e,t,n,o,u);if(h)return h;if(_&&Fl(_.parent)&&(83===_.kind||88===_.kind||80===_.kind))return function(e){const t=function(e){const t=[],n=new Map;let r=e;for(;r&&!pu(r);){if(QA(r)){const e=r.label.text;n.has(e)||(n.set(e,!0),t.push({name:e,kindModifiers:"",kind:"label",sortText:Ose.LocationPriority}))}r=r.parent}return t}(e);if(t.length)return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:!1,entries:t}}(_.parent);const g=wae(t,n,r,p,i,o,void 0,e,l,c);var y;if(g)switch(g.kind){case 0:const s=function(e,t,n,r,i,o,s,a,c,l){const{symbols:u,contextToken:d,completionKind:_,isInSnippetScope:p,isNewIdentifierLocation:f,location:m,propertyAccessToConvert:h,keywordFilters:g,symbolToOriginInfoMap:y,recommendedCompletion:v,isJsxInitializer:b,isTypeOnlyLocation:x,isJsxIdentifierExpected:S,isRightOfOpenTag:T,isRightOfDotOrQuestionDot:w,importStatementCompletion:k,insideJsDocTagTypeExpression:E,symbolToSortTextMap:C,hasUnresolvedAutoImports:N}=o;let A=o.literals;const I=n.getTypeChecker();if(1===CS(e.scriptKind)){const t=function(e,t){const n=bc(e,(e=>{switch(e.kind){case 287:return!0;case 44:case 32:case 80:case 211:return!1;default:return"quit"}}));if(n){const e=!!FY(n,32,t),r=n.parent.openingElement.tagName.getText(t)+(e?"":">");return{isGlobalCompletion:!1,isMemberCompletion:!0,isNewIdentifierLocation:!1,optionalReplacementSpan:PZ(n.tagName),entries:[{name:r,kind:"class",kindModifiers:void 0,sortText:Ose.LocationPriority}]}}return}(m,e);if(t)return t}const D=bc(d,qI);if(D&&(uN(d)||hg(d,D.expression))){const e=x0(I,D.parent.clauses);A=A.filter((t=>!e.hasValue(t))),u.forEach(((t,n)=>{if(t.valueDeclaration&&QI(t.valueDeclaration)){const r=I.getConstantValue(t.valueDeclaration);void 0!==r&&e.hasValue(r)&&(y[n]={kind:256})}}))}const P=[],M=$se(e,r);if(M&&!f&&(!u||0===u.length)&&0===g)return;const O=mae(u,P,void 0,d,m,c,e,t,n,MS(r),i,_,s,r,a,x,h,S,b,k,v,y,C,S,T,l);if(0!==g)for(const R of Iae(g,!E&&jm(e)))(x&&UZ(Ks(R.name))||!x&&$ae(R.name)||!O.has(R.name))&&(O.add(R.name),se(P,R,Jse,void 0,!0));for(const R of function(e,t){const n=[];if(e){const r=e.getSourceFile(),i=e.parent,o=r.getLineAndCharacterOfPosition(e.end).line,s=r.getLineAndCharacterOfPosition(t).line;(dI(i)||TI(i)&&i.moduleSpecifier)&&e===i.moduleSpecifier&&o===s&&n.push({name:Vs(132),kind:"keyword",kindModifiers:"",sortText:Ose.GlobalsOrKeywords})}return n}(d,c))O.has(R.name)||(O.add(R.name),se(P,R,Jse,void 0,!0));for(const R of A){const t=oae(e,s,R);O.add(t.name),se(P,t,Jse,void 0,!0)}M||function(e,t,n,r,i){b8(e).forEach(((e,o)=>{if(e===t)return;const s=wc(o);!n.has(s)&&Aa(s,r)&&(n.add(s),se(i,{name:s,kind:"warning",kindModifiers:"",sortText:Ose.JavascriptIdentifiers,isFromUncheckedFile:!0},Jse))}))}(e,m.pos,O,MS(r),P);let F;if(s.includeCompletionsWithInsertText&&d&&!T&&!w&&(F=bc(d,cI))){const i=eae(F,e,s,r,t,n,a);i&&P.push(i.entry)}return{flags:o.flags,isGlobalCompletion:p,isIncomplete:!(!s.allowIncompleteCompletions||!N)||void 0,isMemberCompletion:rae(_),isNewIdentifierLocation:f,optionalReplacementSpan:Xse(m),entries:P}}(r,e,t,p,n,g,o,l,i,u);return(null==s?void 0:s.isIncomplete)&&(null==m||m.set(s)),s;case 1:return Hse([...Ule.getJSDocTagNameCompletions(),...Gse(r,i,f,p,o,!0)]);case 2:return Hse([...Ule.getJSDocTagCompletions(),...Gse(r,i,f,p,o,!1)]);case 3:return Hse(Ule.getJSDocParameterNameCompletions(g.tag));case 4:return y=g.keywordCompletions,{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:g.isNewIdentifierLocation,entries:y.slice()};default:return Tn.assertNever(g)}}function Jse(e,t){var n,r;let i=Kt(e.sortText,t.sortText);return 0===i&&(i=Kt(e.name,t.name)),0===i&&(null==(n=e.data)?void 0:n.moduleSpecifier)&&(null==(r=t.data)?void 0:r.moduleSpecifier)&&(i=rw(e.data.moduleSpecifier,t.data.moduleSpecifier)),0===i?-1:i}function Wse(e){return!!(null==e?void 0:e.moduleSpecifier)}function Hse(e){return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:!1,entries:e}}function Gse(e,t,n,r,i,o){const s=QY(e,t);if(!Rd(s)&&!_D(s))return[];const a=_D(s)?s:s.parent;if(!_D(a))return[];const c=a.parent;if(!pu(c))return[];const l=jm(e),u=i.includeCompletionsWithSnippetText||void 0,d=P(a.tags,(e=>ND(e)&&e.getEnd()<=t));return J(c.parameters,(e=>{if(!zc(e).length){if(YC(e.name)){const t={tabstop:1},s=e.name.text;let a=Yse(s,e.initializer,e.dotDotDotToken,l,!1,!1,n,r,i),c=u?Yse(s,e.initializer,e.dotDotDotToken,l,!1,!0,n,r,i,t):void 0;return o&&(a=a.slice(1),c&&(c=c.slice(1))),{name:a,kind:"parameter",sortText:Ose.LocationPriority,insertText:u?c:void 0,isSnippet:u}}if(e.parent.parameters.indexOf(e)===d){const t=`param${d}`,s=Qse(t,e.name,e.initializer,e.dotDotDotToken,l,!1,n,r,i),a=u?Qse(t,e.name,e.initializer,e.dotDotDotToken,l,!0,n,r,i):void 0;let c=s.join(Qb(r)+"* "),_=null==a?void 0:a.join(Qb(r)+"* ");return o&&(c=c.slice(1),_&&(_=_.slice(1))),{name:c,kind:"parameter",sortText:Ose.LocationPriority,insertText:u?_:void 0,isSnippet:u}}}}))}function Qse(e,t,n,r,i,o,s,a,c){return i?l(e,t,n,r,{tabstop:1}):[Yse(e,n,r,i,!1,o,s,a,c,{tabstop:1})];function l(e,t,n,r,l){if(ZN(t)&&!r){const d={tabstop:l.tabstop},_=Yse(e,n,r,i,!0,o,s,a,c,d);let p=[];for(const n of t.elements){const t=u(e,n,d);if(!t){p=void 0;break}p.push(...t)}if(p)return l.tabstop=d.tabstop,[_,...p]}return[Yse(e,n,r,i,!1,o,s,a,c,l)]}function u(e,t,n){if(!t.propertyName&&YC(t.name)||YC(t.name)){const r=t.propertyName?Up(t.propertyName):t.name.text;if(!r)return;return[Yse(`${e}.${r}`,t.initializer,t.dotDotDotToken,i,!1,o,s,a,c,n)]}if(t.propertyName){const r=Up(t.propertyName);return r&&l(`${e}.${r}`,t.name,t.initializer,t.dotDotDotToken,n)}}}function Yse(e,t,n,r,i,o,s,a,c,l){if(o&&Tn.assertIsDefined(l),t&&(e=function(e,t){const n=t.getText().trim();if(n.includes("\n")||n.length>80)return`[${e}]`;return`[${e}=${n}]`}(e,t)),o&&(e=$w(e)),r){let r="*";if(i)Tn.assert(!n,"Cannot annotate a rest parameter with type 'Object'."),r="Object";else{if(t){const e=s.getTypeAtLocation(t.parent);if(!(16385&e.flags)){const n=t.getSourceFile(),i=0===iX(n,c)?268435456:0,l=s.typeToTypeNode(e,bc(t,pu),i);if(l){const e=o?lae({removeComments:!0,module:a.module,target:a.target}):vV({removeComments:!0,module:a.module,target:a.target});dE(l,1),r=e.printNode(4,l,n)}}}o&&"*"===r&&(r=`\${${l.tabstop++}:${r}}`)}return`@param {${!i&&n?"...":""}${r}} ${e} ${o?`\${${l.tabstop++}}`:""}`}return`@param ${e} ${o?`\${${l.tabstop++}}`:""}`}function Zse(e,t,n){return{kind:4,keywordCompletions:Iae(e,t),isNewIdentifierLocation:n}}function Xse(e){return 80===(null==e?void 0:e.kind)?PZ(e):void 0}function $se(e,t){return!jm(e)||!!gw(e,t)}function eae(e,t,n,r,i,o,s){const a=e.clauses,c=o.getTypeChecker(),l=c.getTypeAtLocation(e.parent.expression);if(l&&l.isUnion()&&T(l.types,(e=>e.isLiteral()))){const u=x0(c,a),d=MS(r),_=iX(t,n),p=G8.createImportAdder(t,o,n,i),f=[];for(const t of l.types)if(1024&t.flags){Tn.assert(t.symbol,"An enum member type should have a symbol"),Tn.assert(t.symbol.parent,"An enum member type should have a parent symbol (the enum symbol)");const n=t.symbol.valueDeclaration&&c.getConstantValue(t.symbol.valueDeclaration);if(void 0!==n){if(u.hasValue(n))continue;u.addValue(n)}const r=G8.typeToAutoImportableTypeNode(c,p,t,e,d);if(!r)return;const i=tae(r,d,_);if(!i)return;f.push(i)}else if(!u.hasValue(t.value))switch(typeof t.value){case"object":f.push(t.value.negative?oE.createPrefixUnaryExpression(41,oE.createBigIntLiteral({negative:!1,base10Value:t.value.base10Value})):oE.createBigIntLiteral(t.value));break;case"number":f.push(t.value<0?oE.createPrefixUnaryExpression(41,oE.createNumericLiteral(-t.value)):oE.createNumericLiteral(t.value));break;case"string":f.push(oE.createStringLiteral(t.value,0===_))}if(0===f.length)return;const m=R(f,(e=>oE.createCaseClause(e,[]))),h=VX(i,null==s?void 0:s.options),g=lae({removeComments:!0,module:r.module,target:r.target,newLine:h0(h)}),y=s?e=>g.printAndFormatNode(4,e,t,s):e=>g.printNode(4,e,t),v=R(m,((e,t)=>n.includeCompletionsWithSnippetText?`${y(e)}$${t+1}`:`${y(e)}`)).join(h);return{entry:{name:`${g.printNode(4,m[0],t)} ...`,kind:"",sortText:Ose.GlobalsOrKeywords,insertText:v,hasAction:p.hasFixes()||void 0,source:"SwitchCases/",isSnippet:!!n.includeCompletionsWithSnippetText||void 0},importAdder:p}}}function tae(e,t,n){switch(e.kind){case 183:return nae(e.typeName,t,n);case 199:const r=tae(e.objectType,t,n),i=tae(e.indexType,t,n);return r&&i&&oE.createElementAccessExpression(r,i);case 201:const o=e.literal;switch(o.kind){case 11:return oE.createStringLiteral(o.text,0===n);case 9:return oE.createNumericLiteral(o.text,o.numericLiteralFlags)}return;case 196:const s=tae(e.type,t,n);return s&&(YC(s)?s:oE.createParenthesizedExpression(s));case 186:return nae(e.exprName,t,n);case 205:Tn.fail("We should not get an import type after calling 'codefix.typeToAutoImportableTypeNode'.")}}function nae(e,t,n){if(YC(e))return e;const r=wc(e.right.escapedText);return ck(r,t)?oE.createPropertyAccessExpression(nae(e.left,t,n),r):oE.createElementAccessExpression(nae(e.left,t,n),oE.createStringLiteral(r,0===n))}function rae(e){switch(e){case 0:case 3:case 2:return!0;default:return!1}}function iae(e,t,n){return"object"==typeof n?Aw(n)+"n":lt(n)?T$(e,t,n):JSON.stringify(n)}function oae(e,t,n){return{name:iae(e,t,n),kind:"string",kindModifiers:"",sortText:Ose.LocationPriority}}function sae(e,t,n,r,i,o,s,a,c,l,u,d,_,p,f,m,h,g,y,v,b,x,S,k){var E,C;let N,A,I,D,P,M,O,F=DZ(n,o),R=fae(d);const L=c.getTypeChecker(),j=d&&function(e){return!!(16&e.kind)}(d),z=d&&function(e){return!!(2&e.kind)}(d)||u;if(d&&function(e){return!!(1&e.kind)}(d))N=u?`this${j?"?.":""}[${_ae(s,y,l)}]`:`this${j?"?.":"."}${l}`;else if((z||j)&&p){N=z?u?`[${_ae(s,y,l)}]`:`[${l}]`:l,(j||p.questionDotToken)&&(N=`?.${N}`);const e=FY(p,25,s)||FY(p,29,s);if(!e)return;const t=cn(l,p.name.text)?p.name.end:e.end;F=tc(e.getStart(s),t)}if(f&&(void 0===N&&(N=l),N=`{${N}}`,"boolean"!=typeof f&&(F=PZ(f,s))),d&&function(e){return!!(8&e.kind)}(d)&&p){void 0===N&&(N=l);const e=eZ(p.pos,s);let t="";e&&F$(e.end,e.parent,s)&&(t=";"),t+=`(await ${p.expression.getText()})`,N=u?`${t}${N}`:`${t}${j?"?.":"."}${N}`;F=tc((dt(p.parent,fA)?p.parent:p.expression).getStart(s),p.end)}if(jse(d)&&(P=[FX(d.moduleSpecifier)],m&&(({insertText:N,replacementSpan:F}=function(e,t,n,r,i,o,s){const a=t.replacementSpan,c=$w(T$(i,s,n.moduleSpecifier)),l=n.isDefaultExport?1:"export="===n.exportName?2:0,u=s.includeCompletionsWithSnippetText?"$1":"",d=G8.getImportKind(i,l,o,!0),_=t.couldBeTypeOnlyImportSpecifier,p=t.isTopLevelTypeOnly?` ${Vs(156)} `:" ",f=_?`${Vs(156)} `:"",m=r?";":"";switch(d){case 3:return{replacementSpan:a,insertText:`import${p}${$w(e)}${u} = require(${c})${m}`};case 1:return{replacementSpan:a,insertText:`import${p}${$w(e)}${u} from ${c}${m}`};case 2:return{replacementSpan:a,insertText:`import${p}* as ${$w(e)} from ${c}${m}`};case 0:return{replacementSpan:a,insertText:`import${p}{ ${f}${$w(e)}${u} } from ${c}${m}`}}}(l,m,d,h,s,g,y)),D=!!y.includeCompletionsWithSnippetText||void 0)),64===(null==d?void 0:d.kind)&&(M=!0),0===v&&r&&28!==(null==(E=eZ(r.pos,s,r))?void 0:E.kind)&&(vN(r.parent.parent)||SN(r.parent.parent)||TN(r.parent.parent)||GI(r.parent)||(null==(C=bc(r.parent,WI))?void 0:C.getLastToken(s))===r||HI(r.parent)&&ta(s,r.getEnd()).line!==ta(s,o).line)&&(R="ObjectLiteralMemberWithComma/",M=!0),y.includeCompletionsWithClassMemberSnippets&&y.includeCompletionsWithInsertText&&3===v&&function(e,t,n){if(Um(t))return!1;const r=106500;return!!(e.flags&r)&&(xu(t)||t.parent&&t.parent.parent&&bu(t.parent)&&t===t.parent.name&&t.parent.getLastToken(n)===t.parent.name&&xu(t.parent.parent)||t.parent&&UD(t)&&xu(t.parent))}(e,i,s)){let t;const n=aae(a,c,g,y,l,e,i,o,r,b);if(!n)return;({insertText:N,filterText:A,isSnippet:D,importAdder:t}=n),((null==t?void 0:t.hasFixes())||n.eraseRange)&&(M=!0,R="ClassMemberSnippet/")}if(d&&Bse(d)&&(({insertText:N,isSnippet:D,labelDetails:O}=d),y.useLabelDetailsInCompletionEntries||(l+=O.detail,O=void 0),R="ObjectLiteralMethodSnippet/",t=Ose.SortBelow(t)),x&&!S&&y.includeCompletionsWithSnippetText&&y.jsxAttributeCompletionStyle&&"none"!==y.jsxAttributeCompletionStyle&&(!LI(i.parent)||!i.parent.initializer)){let t="braces"===y.jsxAttributeCompletionStyle;const n=L.getTypeOfSymbolAtLocation(e,i);"auto"!==y.jsxAttributeCompletionStyle||528&n.flags||1048576&n.flags&&w(n.types,(e=>!!(528&e.flags)))||(402653316&n.flags||1048576&n.flags&&T(n.types,(e=>!!(402686084&e.flags||TZ(e))))?(N=`${$w(l)}=${T$(s,y,"$1")}`,D=!0):t=!0),t&&(N=`${$w(l)}={$1}`,D=!0)}if(void 0!==N&&!y.includeCompletionsWithInsertText)return;(Lse(d)||jse(d))&&(I=uae(d),M=!m);const U=bc(i,Vx);if(275===(null==U?void 0:U.kind)){const e=Ks(l);U&&e&&(135===e||jg(e))&&(N=`${l} as ${l}_`)}return{name:l,kind:Vde.getSymbolKind(L,e,i),kindModifiers:Vde.getSymbolModifiers(L,e),sortText:t,source:R,hasAction:!!M||void 0,isRecommended:pae(e,_,L)||void 0,insertText:N,filterText:A,replacementSpan:F,sourceDisplay:P,labelDetails:O,isSnippet:D,isPackageJsonImport:zse(d)||void 0,isImportStatementCompletion:!!m||void 0,data:I,...k?{symbol:e}:void 0}}function aae(e,t,n,r,i,o,s,a,c,l){const u=bc(s,xu);if(!u)return;let d,_=i;const p=i,f=t.getTypeChecker(),m=s.getSourceFile(),h=lae({removeComments:!0,module:n.module,target:n.target,omitTrailingSemicolon:!1,newLine:h0(VX(e,null==l?void 0:l.options))}),g=G8.createImportAdder(m,t,r,e);let y;if(r.includeCompletionsWithSnippetText){d=!0;const e=oE.createEmptyStatement();y=oE.createBlock([e],!0),jE(e,{kind:0,order:0})}else y=oE.createBlock([],!0);let v=0;const{modifiers:b,range:x,decorators:S}=function(e,t,n){if(!e||ta(t,n).line>ta(t,e.getEnd()).line)return{modifiers:0};let r,i,o=0;const s={pos:n,end:n};if(gN(e.parent)&&(i=function(e){if(lu(e))return e.kind;if(YC(e)){const t=Ec(e);if(t&&su(t))return t}return}(e))){e.parent.modifiers&&(o|=98303&lb(e.parent.modifiers),r=e.parent.modifiers.filter(mN)||[],s.pos=Math.min(...e.parent.modifiers.map((e=>e.getStart(t)))));const n=ub(i);o&n||(o|=n,s.pos=Math.min(s.pos,e.getStart(t))),e.parent.name!==e&&(s.end=e.parent.name.getStart(t))}return{modifiers:o,decorators:r,range:s.pos<s.end?s:void 0}}(c,m,a),T=64&b&&64&u.modifierFlagsCache;let w=[];if(G8.addNewNodeForMemberSymbol(o,u,m,{program:t,host:e},r,g,(e=>{let t=0;T&&(t|=64),bu(e)&&1===f.getMemberOverrideModifierStatus(u,e,o)&&(t|=16),w.length||(v=e.modifierFlagsCache|t),e=oE.replaceModifiers(e,v),w.push(e)}),y,G8.PreserveOptionalFlags.Property,!!T),w.length){const e=8192&o.flags;let t=17|v;t|=e?1024:136;const n=b&t;if(b&~t)return;if(4&v&&1&n&&(v&=-5),0===n||1&n||(v&=-2),v|=n,w=w.map((e=>oE.replaceModifiers(e,v))),null==S?void 0:S.length){const e=w[w.length-1];xM(e)&&(w[w.length-1]=oE.replaceDecoratorsAndModifiers(e,S.concat(Lc(e)||[])))}const r=131073;_=l?h.printAndFormatSnippetList(r,oE.createNodeArray(w),m,l):h.printSnippetList(r,oE.createNodeArray(w),m)}return{insertText:_,filterText:p,isSnippet:d,importAdder:g,eraseRange:x}}function cae(e,t,n,r,i,o,s,a){const c=s.includeCompletionsWithSnippetText||void 0;let l=t;const u=n.getSourceFile(),d=function(e,t,n,r,i,o){const s=e.getDeclarations();if(!s||!s.length)return;const a=r.getTypeChecker(),c=s[0],l=r$(Oc(c),!1),u=a.getWidenedType(a.getTypeOfSymbolAtLocation(e,t)),d=iX(n,o),_=33554432|(0===d?268435456:0);switch(c.kind){case 171:case 172:case 173:case 174:{let e=1048576&u.flags&&u.types.length<10?a.getUnionType(u.types,2):u;if(1048576&e.flags){const t=M(e.types,(e=>a.getSignaturesOfType(e,0).length>0));if(1!==t.length)return;e=t[0]}if(1!==a.getSignaturesOfType(e,0).length)return;const n=a.typeToTypeNode(e,t,_,G8.getNoopSymbolTrackerWithResolver({program:r,host:i}));if(!n||!AN(n))return;let s;if(o.includeCompletionsWithSnippetText){const e=oE.createEmptyStatement();s=oE.createBlock([e],!0),jE(e,{kind:0,order:0})}else s=oE.createBlock([],!0);const c=n.parameters.map((e=>oE.createParameterDeclaration(void 0,e.dotDotDotToken,e.name,void 0,void 0,e.initializer)));return oE.createMethodDeclaration(void 0,void 0,l,void 0,void 0,c,void 0,s)}default:return}}(e,n,u,r,i,s);if(!d)return;const _=lae({removeComments:!0,module:o.module,target:o.target,omitTrailingSemicolon:!1,newLine:h0(VX(i,null==a?void 0:a.options))});l=a?_.printAndFormatSnippetList(80,oE.createNodeArray([d],!0),u,a):_.printSnippetList(80,oE.createNodeArray([d],!0),u);const p=vV({removeComments:!0,module:o.module,target:o.target,omitTrailingSemicolon:!0}),f=oE.createMethodSignature(void 0,"",d.questionToken,d.typeParameters,d.parameters,d.type);return{isSnippet:c,insertText:l,labelDetails:{detail:p.printNode(4,f,u)}}}function lae(e){let t;const n=Xde.createWriter(Qb(e)),r=vV(e,n),i={...n,write:e=>o(e,(()=>n.write(e))),nonEscapingWrite:n.write,writeLiteral:e=>o(e,(()=>n.writeLiteral(e))),writeStringLiteral:e=>o(e,(()=>n.writeStringLiteral(e))),writeSymbol:(e,t)=>o(e,(()=>n.writeSymbol(e,t))),writeParameter:e=>o(e,(()=>n.writeParameter(e))),writeComment:e=>o(e,(()=>n.writeComment(e))),writeProperty:e=>o(e,(()=>n.writeProperty(e)))};return{printSnippetList:function(e,n,r){const i=s(e,n,r);return t?Xde.applyChanges(i,t):i},printAndFormatSnippetList:function(e,n,r,i){const o={text:s(e,n,r),getLineAndCharacterOfPosition(e){return ta(this,e)}},a=y0(i,r),c=U(n,(e=>{const t=Xde.assignPositionsToNode(e);return C_e.formatNodeGivenIndentation(t,o,r.languageVariant,0,0,{...i,options:a})})),l=t?xe(te(c,t),((e,t)=>Mt(e.span,t.span))):c;return Xde.applyChanges(o.text,l)},printNode:function(e,n,r){const i=a(e,n,r);return t?Xde.applyChanges(i,t):i},printAndFormatNode:function(e,n,r,i){const o={text:a(e,n,r),getLineAndCharacterOfPosition(e){return ta(this,e)}},s=y0(i,r),c=Xde.assignPositionsToNode(n),l=C_e.formatNodeGivenIndentation(c,o,r.languageVariant,0,0,{...i,options:s}),u=t?xe(te(l,t),((e,t)=>Mt(e.span,t.span))):l;return Xde.applyChanges(o.text,u)}};function o(e,r){const i=$w(e);if(i!==e){const e=n.getTextPos();r();const o=n.getTextPos();t=_e(t||(t=[]),{newText:i,span:{start:e,length:o-e}})}else r()}function s(e,n,o){return t=void 0,i.clear(),r.writeList(e,n,o,i),i.getText()}function a(e,n,o){return t=void 0,i.clear(),r.writeNode(e,n,o,i),i.getText()}}function uae(e){const t=e.fileName?void 0:Ky(e.moduleSymbol.name),n=!!e.isFromPackageJson||void 0;if(jse(e)){return{exportName:e.exportName,exportMapKey:e.exportMapKey,moduleSpecifier:e.moduleSpecifier,ambientModuleName:t,fileName:e.fileName,isPackageJsonImport:n}}return{exportName:e.exportName,exportMapKey:e.exportMapKey,fileName:e.fileName,ambientModuleName:e.fileName?void 0:Ky(e.moduleSymbol.name),isPackageJsonImport:!!e.isFromPackageJson||void 0}}function dae(e,t,n){const r="default"===e.exportName,i=!!e.isPackageJsonImport;if(Wse(e)){return{kind:32,exportName:e.exportName,exportMapKey:e.exportMapKey,moduleSpecifier:e.moduleSpecifier,symbolName:t,fileName:e.fileName,moduleSymbol:n,isDefaultExport:r,isFromPackageJson:i}}return{kind:4,exportName:e.exportName,exportMapKey:e.exportMapKey,symbolName:t,fileName:e.fileName,moduleSymbol:n,isDefaultExport:r,isFromPackageJson:i}}function _ae(e,t,n){return/^\d+$/.test(n)?n:T$(e,t,n)}function pae(e,t,n){return e===t||!!(1048576&e.flags)&&n.getExportSymbolOfSymbol(e)===t}function fae(e){return Lse(e)?Ky(e.moduleSymbol.name):jse(e)?e.moduleSpecifier:1===(null==e?void 0:e.kind)?"ThisProperty/":64===(null==e?void 0:e.kind)?"TypeOnlyAlias/":void 0}function mae(e,t,n,r,i,o,s,a,c,l,u,d,_,p,f,m,h,g,y,v,b,x,S,T,w,k=!1){const E=er(),C=function(e,t){if(!e)return;const n=bc(e,(e=>Wf(e)||Gae(e)||Mu(e)?"quit":(fN(e)||pN(e))&&!EN(e.parent))),r=bc(t,(e=>Wf(e)||Gae(e)||Mu(e)?"quit":$A(e)));return n||r}(r,i),N=R$(s),A=c.getTypeChecker(),I=new Map;for(let M=0;M<e.length;M++){const u=e[M],E=null==x?void 0:x[M],C=Cae(u,l,E,d,!!g);if(!C||I.get(C.name)&&(!E||!Bse(E))||1===d&&S&&!D(u,S))continue;if(!m&&Um(s)&&P(u))continue;const{name:O,needsConvertPropertyAccess:F}=C,R=(null==S?void 0:S[Qz(u)])??Ose.LocationPriority,L=sae(u,Yae(u,A)?Ose.Deprecated(R):R,n,r,i,o,s,a,c,O,F,E,b,h,y,v,N,p,_,d,f,T,w,k);if(!L)continue;const j=(!E||Use(E))&&!(void 0===u.parent&&!$(u.declarations,(e=>e.getSourceFile()===i.getSourceFile())));I.set(O,j),se(t,L,Jse,void 0,!0)}return u("getCompletionsAtPosition: getCompletionEntriesFromSymbols: "+(er()-E)),{has:e=>I.has(e),add:e=>I.set(e,!0)};function D(e,t){var n;let r=e.flags;if(!YI(i)){if(SI(i.parent))return!0;if(dt(C,$A)&&e.valueDeclaration===C)return!1;const o=e.valueDeclaration??(null==(n=e.declarations)?void 0:n[0]);if(C&&o&&(pN(C)&&pN(o)||fN(C)&&fN(o))){const e=o.pos,t=fN(C)?C.parent.parameters:BN(C.parent)?void 0:C.parent.typeParameters;if(e>=C.pos&&t&&e<t.end)return!1}const a=Sx(e,A);if(s.externalModuleIndicator&&!p.allowUmdGlobalAccess&&t[Qz(e)]===Ose.GlobalsOrKeywords&&(t[Qz(a)]===Ose.AutoImportSuggestions||t[Qz(a)]===Ose.LocationPriority))return!1;if(r|=Tx(a),KQ(i))return!!(1920&r);if(m)return Qae(e,A)}return!!(111551&r)}function P(e){var t;const n=Tx(Sx(e,A));return!(111551&n||Um(null==(t=e.declarations)?void 0:t[0])&&!(788968&n))}}function hae(e,t,n,r,i,o,s){if("SwitchCases/"===i.source)return{type:"cases"};if(i.data){const t=Eae(i.name,i.data,e,o);if(t){const{contextToken:e,previousToken:i}=kae(r,n);return{type:"symbol",symbol:t.symbol,location:HY(n,r),previousToken:i,contextToken:e,isJsxInitializer:!1,isTypeOnlyLocation:!1,origin:t.origin}}}const a=e.getCompilerOptions(),c=wae(e,t,n,a,r,{includeCompletionsForModuleExports:!0,includeCompletionsWithInsertText:!0},i,o,void 0);if(!c)return{type:"none"};if(0!==c.kind)return{type:"request",request:c};const{symbols:l,literals:u,location:d,completionKind:_,symbolToOriginInfoMap:p,contextToken:f,previousToken:m,isJsxInitializer:h,isTypeOnlyLocation:g}=c,v=w(u,(e=>iae(n,s,e)===i.name));return void 0!==v?{type:"literal",literal:v}:y(l,((e,t)=>{const n=p[t],r=Cae(e,MS(a),n,_,c.isJsxIdentifierExpected);return r&&r.name===i.name&&("ClassMemberSnippet/"===i.source&&106500&e.flags||"ObjectLiteralMethodSnippet/"===i.source&&8196&e.flags||fae(n)===i.source||"ObjectLiteralMemberWithComma/"===i.source)?{type:"symbol",symbol:e,location:d,origin:n,contextToken:f,previousToken:m,isJsxInitializer:h,isTypeOnlyLocation:g}:void 0}))||{type:"none"}}function gae(e,t,n,r,i,o,s,a,c){const l=e.getTypeChecker(),u=e.getCompilerOptions(),{name:d,source:_,data:p}=i,{previousToken:f,contextToken:m}=kae(r,n);if(iZ(n,r,f))return ece.getStringLiteralCompletionDetails(d,n,r,f,e,o,c,a);const h=hae(e,t,n,r,i,o,a);switch(h.type){case"request":{const{request:e}=h;switch(e.kind){case 1:return Ule.getJSDocTagNameCompletionDetails(d);case 2:return Ule.getJSDocTagCompletionDetails(d);case 3:return Ule.getJSDocParameterNameCompletionDetails(d);case 4:return $(e.keywordCompletions,(e=>e.name===d))?yae(d,"keyword",5):void 0;default:return Tn.assertNever(e)}}case"symbol":{const{symbol:t,location:i,contextToken:f,origin:m,previousToken:g}=h,{codeActions:y,sourceDisplay:v}=function(e,t,n,r,i,o,s,a,c,l,u,d,_,p,f,m){if((null==p?void 0:p.moduleSpecifier)&&u&&qae(n||u,c).replacementSpan)return{codeActions:void 0,sourceDisplay:[FX(p.moduleSpecifier)]};if("ClassMemberSnippet/"===f){const{importAdder:r,eraseRange:u}=aae(s,o,a,_,e,i,t,l,n,d);if((null==r?void 0:r.hasFixes())||u){return{sourceDisplay:void 0,codeActions:[{changes:Xde.ChangeTracker.with({host:s,formatContext:d,preferences:_},(e=>{r&&r.writeFixes(e),u&&e.deleteRange(c,u)})),description:(null==r?void 0:r.hasFixes())?g0([ws.Includes_imports_of_types_referenced_by_0,e]):g0([ws.Update_modifiers_of_0,e])}]}}}if(Use(r)){const e=G8.getPromoteTypeOnlyCompletionAction(c,r.declaration.name,o,s,d,_);return Tn.assertIsDefined(e,"Expected to have a code action for promoting type-only alias"),{codeActions:[e],sourceDisplay:void 0}}if("ObjectLiteralMemberWithComma/"===f&&n){const t=Xde.ChangeTracker.with({host:s,formatContext:d,preferences:_},(e=>e.insertText(c,n.end,",")));if(t)return{sourceDisplay:void 0,codeActions:[{changes:t,description:g0([ws.Add_missing_comma_for_object_member_completion_0,e])}]}}if(!r||!Lse(r)&&!jse(r))return{codeActions:void 0,sourceDisplay:void 0};const h=r.isFromPackageJson?s.getPackageJsonAutoImportProvider().getTypeChecker():o.getTypeChecker(),{moduleSymbol:g}=r,y=h.getMergedSymbol(Sx(i.exportSymbol||i,h)),v=30===(null==n?void 0:n.kind)&&Pd(n.parent),{moduleSpecifier:b,codeAction:x}=G8.getImportCompletionAction(y,g,null==p?void 0:p.exportMapKey,c,e,v,s,o,d,u&&YC(u)?u.getStart(c):l,_,m);return Tn.assert(!(null==p?void 0:p.moduleSpecifier)||b===p.moduleSpecifier),{sourceDisplay:[FX(b)],codeActions:[x]}}(d,i,f,m,t,e,o,u,n,r,g,s,a,p,_,c);return vae(t,qse(m)?m.symbolName:t.name,l,n,i,c,y,v)}case"literal":{const{literal:e}=h;return yae(iae(n,a,e),"string","string"==typeof e?8:7)}case"cases":{const t=eae(m.parent,n,a,e.getCompilerOptions(),o,e,void 0);if(null==t?void 0:t.importAdder.hasFixes()){const{entry:e,importAdder:n}=t,r=Xde.ChangeTracker.with({host:o,formatContext:s,preferences:a},n.writeFixes);return{name:e.name,kind:"",kindModifiers:"",displayParts:[],sourceDisplay:void 0,codeActions:[{changes:r,description:g0([ws.Includes_imports_of_types_referenced_by_0,d])}]}}return{name:d,kind:"",kindModifiers:"",displayParts:[],sourceDisplay:void 0}}case"none":return Aae().some((e=>e.name===d))?yae(d,"keyword",5):void 0;default:Tn.assertNever(h)}}function yae(e,t,n){return bae(e,"",t,[CX(e,n)])}function vae(e,t,n,r,i,o,s,a){const{displayParts:c,documentation:l,symbolKind:u,tags:d}=n.runWithCancellationToken(o,(t=>Vde.getSymbolDisplayPartsDocumentationAndSymbolKind(t,e,r,i,i,7)));return bae(t,Vde.getSymbolModifiers(n,e),u,c,l,d,s,a)}function bae(e,t,n,r,i,o,s,a){return{name:e,kindModifiers:t,kind:n,displayParts:r,documentation:i,tags:o,codeActions:s,source:a,sourceDisplay:a}}function xae(e,t,n,r,i,o,s){const a=hae(e,t,n,r,i,o,s);return"symbol"===a.type?a.symbol:void 0}var Sae=(e=>(e[e.ObjectPropertyDeclaration=0]="ObjectPropertyDeclaration",e[e.Global=1]="Global",e[e.PropertyAccess=2]="PropertyAccess",e[e.MemberLike=3]="MemberLike",e[e.String=4]="String",e[e.None=5]="None",e))(Sae||{});function Tae(e,t,n){const r=n.getAccessibleSymbolChain(e,t,-1,!1);return r?Ee(r):e.parent&&(function(e){var t;return!!(null==(t=e.declarations)?void 0:t.some((e=>307===e.kind)))}(e.parent)?e:Tae(e.parent,t,n))}function wae(e,t,n,r,i,o,s,a,c,l){const u=e.getTypeChecker(),d=$se(n,r);let _=er(),p=QY(n,i);t("getCompletionData: Get current token: "+(er()-_)),_=er();const f=mZ(n,i,p);t("getCompletionData: Is inside comment: "+(er()-_));let m=!1,g=!1,v=!1;if(f){if(hZ(n,i)){if(64===n.text.charCodeAt(i-1))return{kind:1};{const e=bY(i,n);if(!/[^*|\s(/)]/.test(n.text.substring(e,i)))return{kind:2}}}const e=function(e,t){return bc(e,(e=>!(!Rd(e)||!TY(e,t))||!!_D(e)&&"quit"))}(p,i);if(e){if(e.tagName.pos<=i&&i<=e.tagName.end)return{kind:1};if(zD(e))g=!0;else{const t=function(e){if(function(e){switch(e.kind){case 341:case 348:case 342:case 344:case 346:case 349:case 350:return!0;case 345:return!!e.constraint;default:return!1}}(e)){const t=PD(e)?e.constraint:e.typeExpression;return t&&309===t.kind?t:void 0}if(mD(e)||RD(e))return e.class;return}(e);if(t&&(p=QY(n,i),p&&(gg(p)||348===p.parent.kind&&p.parent.name===p)||(m=he(t))),!m&&ND(e)&&(F_(e.name)||e.name.pos<=i&&i<=e.name.end))return{kind:3,tag:e}}}if(!m&&!g)return void t("Returning an empty list because completion was inside a regular comment or plain text part of a JsDoc comment.")}_=er();const b=!m&&!g&&jm(n),x=kae(i,n),S=x.previousToken;let T=x.contextToken;t("getCompletionData: Get previous token: "+(er()-_));let k,E,C=p,N=!1,A=!1,I=!1,D=!1,P=!1,O=!1,F=HY(n,i),R=0,L=!1,j=0;if(T){const e=qae(T,n);if(e.keywordCompletion){if(e.isKeywordOnlyCompletion)return{kind:4,keywordCompletions:[(z=e.keywordCompletion,{name:Vs(z),kind:"keyword",kindModifiers:"",sortText:Ose.GlobalsOrKeywords})],isNewIdentifierLocation:e.isNewIdentifierLocation};R=function(e){if(156===e)return 8;Tn.fail("Unknown mapping from SyntaxKind to KeywordCompletionFilters")}(e.keywordCompletion)}if(e.replacementSpan&&o.includeCompletionsForImportStatements&&o.includeCompletionsWithInsertText&&(j|=2,E=e,L=e.isNewIdentifierLocation),!e.replacementSpan&&function(e){const r=er(),o=function(e){return(FC(e)||$l(e))&&(wY(e,i)||i===e.end&&(!!e.isUnterminated||FC(e)))}(e)||function(e){const t=e.parent,r=t.kind;switch(e.kind){case 28:return 260===r||261===(o=e).parent.kind&&!_Z(o,n,u)||243===r||266===r||_e(r)||264===r||207===r||265===r||xu(t)&&!!t.typeParameters&&t.typeParameters.end>=e.pos;case 25:case 23:return 207===r;case 59:return 208===r;case 21:return 299===r||_e(r);case 19:return 266===r;case 30:return 263===r||231===r||264===r||265===r||yu(r);case 126:return 172===r&&!xu(t.parent);case 26:return 169===r||!!t.parent&&207===t.parent.kind;case 125:case 123:case 124:return 169===r&&!xN(t.parent);case 130:return 276===r||281===r||274===r;case 139:case 153:return!Uae(e);case 80:if(276===r&&e===t.name&&"type"===e.text)return!1;if(bc(e.parent,$A)&&function(e,t){return n.getLineEndOfPosition(e.getEnd())<t}(e,i))return!1;break;case 86:case 94:case 120:case 100:case 115:case 102:case 121:case 87:case 140:return!0;case 156:return 276!==r;case 42:return pu(e.parent)&&!vN(e.parent)}var o;if(Mae(Fae(e))&&Uae(e))return!1;if(ue(e)&&(!YC(e)||au(Fae(e))||he(e)))return!1;switch(Fae(e)){case 128:case 86:case 87:case 138:case 94:case 100:case 120:case 121:case 123:case 124:case 125:case 126:case 115:return!0;case 134:return gN(e.parent)}const s=bc(e.parent,xu);if(s&&e===S&&de(e,i))return!1;const a=Mg(e.parent,172);if(a&&e!==S&&xu(S.parent.parent)&&i<=S.end){if(de(e,S.end))return!1;if(64!==e.kind&&(oB(a)||Ud(a)))return!0}return gg(e)&&!HI(e.parent)&&!LI(e.parent)&&!((xu(e.parent)||rI(e.parent)||pN(e.parent))&&(e!==S||i>S.end))}(e)||function(e){if(9===e.kind){const t=e.getFullText();return"."===t.charAt(t.length-1)}return!1}(e)||function(e){if(12===e.kind)return!0;if(32===e.kind&&e.parent){if(F===e.parent&&(286===F.kind||285===F.kind))return!1;if(286===e.parent.kind)return 286!==F.parent.kind;if(287===e.parent.kind||285===e.parent.kind)return!!e.parent.parent&&284===e.parent.parent.kind}return!1}(e)||PC(e);return t("getCompletionsAtPosition: isCompletionListBlocker: "+(er()-r)),o}(T))return t("Returning an empty list because completion was requested in an invalid position."),R?Zse(R,b,le()):void 0;let r=T.parent;if(25===T.kind||29===T.kind)switch(N=25===T.kind,A=29===T.kind,r.kind){case 211:k=r,C=k.expression;if(F_(Kx(k))||(iA(C)||pu(C))&&C.end===T.pos&&C.getChildCount(n)&&22!==Ae(C.getChildren(n)).kind)return;break;case 166:C=r.left;break;case 267:C=r.name;break;case 205:C=r;break;case 236:C=r.getFirstToken(n),Tn.assert(102===C.kind||105===C.kind);break;default:return}else if(!E){if(r&&211===r.kind&&(T=r,r=r.parent),p.parent===F)switch(p.kind){case 32:284!==p.parent.kind&&286!==p.parent.kind||(F=p);break;case 44:285===p.parent.kind&&(F=p)}switch(r.kind){case 287:44===T.kind&&(D=!0,F=T);break;case 226:if(!Bae(r))break;case 285:case 284:case 286:O=!0,30===T.kind&&(I=!0,F=T);break;case 294:case 293:(20===S.kind||80===S.kind&&291===S.parent.kind)&&(O=!0);break;case 291:if(r.initializer===S&&S.end<i){O=!0;break}switch(S.kind){case 64:P=!0;break;case 80:O=!0,r!==S.parent&&!r.initializer&&FY(r,64,n)&&(P=S)}}}}var z;const B=er();let q,V=5,K=!1,W=[];const H=[],G=[],Q=new Map,Y=m||g||!!E&&Xl(F.parent)||!((Z=T)&&(114===Z.kind&&(186===Z.parent.kind||_A(Z.parent))||131===Z.kind&&182===Z.parent.kind))&&(_Z(T,n,u)||Df(F)||function(e){if(e){const t=e.parent.kind;switch(e.kind){case 59:return 172===t||171===t||169===t||260===t||yu(t);case 64:return 265===t||168===t;case 130:return 234===t;case 30:return 183===t||216===t;case 96:return 168===t;case 152:return 238===t}}return!1}(T));var Z;const X=Tt((t=>ZZ(t?a.getPackageJsonAutoImportProvider():e,a)));if(N||A)!function(){V=2;const e=gf(C),t=e&&!C.isTypeOf||Df(C.parent)||_Z(T,n,u),r=KQ(C);if(uu(C)||e||nA(C)){const n=sI(C.parent);n&&(L=!0);let i=u.getSymbolAtLocation(C);if(i&&(i=Sx(i,u),1920&i.flags)){const s=u.getExportsOfModule(i);Tn.assertEachIsDefined(s,"getExportsOfModule() should all be defined");const a=t=>u.isValidPropertyAccess(e?C:C.parent,t.name),c=e=>Qae(e,u),l=n?e=>{var t;return!!(1920&e.flags)&&!(null==(t=e.declarations)?void 0:t.every((e=>e.parent===C.parent)))}:r?e=>c(e)||a(e):t||m?c:a;for(const e of s)l(e)&&W.push(e);if(!t&&!m&&i.declarations&&i.declarations.some((e=>307!==e.kind&&267!==e.kind&&266!==e.kind))){let e=u.getTypeOfSymbolAtLocation(i,C).getNonOptionalType(),t=!1;if(e.isNullableType()){const n=N&&!A&&!1!==o.includeAutomaticOptionalChainCompletions;(n||A)&&(e=e.getNonNullableType(),n&&(t=!0))}ie(e,!!(65536&C.flags),t)}return}}if(!t||wv(C)){u.tryGetThisTypeAt(C,!1);let e=u.getTypeAtLocation(C).getNonOptionalType();if(t)ie(e.getNonNullableType(),!1,!1);else{let t=!1;if(e.isNullableType()){const n=N&&!A&&!1!==o.includeAutomaticOptionalChainCompletions;(n||A)&&(e=e.getNonNullableType(),n&&(t=!0))}ie(e,!!(65536&C.flags),t)}}}();else if(I)W=u.getJsxIntrinsicTagNamesAt(F),Tn.assertEachIsDefined(W,"getJsxIntrinsicTagNames() should all be defined"),ae(),V=1,R=0;else if(D){const e=T.parent.parent.openingElement.tagName,t=u.getSymbolAtLocation(e);t&&(W=[t]),V=1,R=0}else if(!ae())return R?Zse(R,b,L):void 0;t("getCompletionData: Semantic work: "+(er()-B));const ee=S&&function(e,t,n,r){const{parent:i}=e;switch(e.kind){case 80:return S$(e,r);case 64:switch(i.kind){case 260:return r.getContextualType(i.initializer);case 226:return r.getTypeAtLocation(i.left);case 291:return r.getContextualTypeForJsxAttribute(i);default:return}case 105:return r.getContextualType(i);case 84:const o=dt(i,qI);return o?C$(o,r):void 0;case 19:return!UI(i)||II(i.parent)||OI(i.parent)?void 0:r.getContextualTypeForJsxAttribute(i.parent);default:const s=sde.getArgumentInfoForCompletions(e,t,n,r);return s?r.getContextualTypeForArgumentAtIndex(s.invocation,s.argumentIndex):w$(e.kind)&&gA(i)&&w$(i.operatorToken.kind)?r.getTypeAtLocation(i.left):r.getContextualType(e,4)||r.getContextualType(e)}}(S,i,n,u),ne=!dt(S,Hd)&&!O?J(ee&&(ee.isUnion()?ee.types:[ee]),(e=>!e.isLiteral()||1024&e.flags?void 0:e.value)):[],re=S&&ee&&function(e,t,n){return y(t&&(t.isUnion()?t.types:[t]),(t=>{const r=t&&t.symbol;return r&&424&r.flags&&!Dx(r)?Tae(r,e,n):void 0}))}(S,ee,u);return{kind:0,symbols:W,completionKind:V,isInSnippetScope:v,propertyAccessToConvert:k,isNewIdentifierLocation:L,location:F,keywordFilters:R,literals:ne,symbolToOriginInfoMap:H,recommendedCompletion:re,previousToken:S,contextToken:T,isJsxInitializer:P,insideJsDocTagTypeExpression:m,symbolToSortTextMap:G,isTypeOnlyLocation:Y,isJsxIdentifierExpected:O,isRightOfOpenTag:I,isRightOfDotOrQuestionDot:N||A,importStatementCompletion:E,hasUnresolvedAutoImports:K,flags:j};function ie(e,t,n){L=!!e.getStringIndexType(),A&&$(e.getCallSignatures())&&(L=!0);const r=205===C.kind?C:C.parent;if(d)for(const i of e.getApparentProperties())u.isValidPropertyAccessForCompletions(r,e,i)&&oe(i,!1,n);else W.push(...M(jae(e,u),(t=>u.isValidPropertyAccessForCompletions(r,e,t))));if(t&&o.includeCompletionsWithInsertText){const t=u.getPromisedTypeOfPromise(e);if(t)for(const e of t.getApparentProperties())u.isValidPropertyAccessForCompletions(r,t,e)&&oe(e,!0,n)}}function oe(t,r,s){var c;const l=y(t.declarations,(e=>dt(Oc(e),_N)));if(l){const r=se(l.expression),s=r&&u.getSymbolAtLocation(r),f=s&&Tae(s,T,u),m=f&&Qz(f);if(m&&jx(Q,m)){const t=W.length;W.push(f);const r=f.parent;if(r&&a_(r)&&u.tryGetMemberInModuleExportsAndProperties(f.name,r)===f){const s=za(Ky(r.name))?null==(c=N_(r))?void 0:c.fileName:void 0,{moduleSpecifier:l}=(q||(q=G8.createImportSpecifierResolver(n,e,a,o))).getModuleSpecifierForBestExportInfo([{exportKind:0,moduleFileName:s,isFromPackageJson:!1,moduleSymbol:r,symbol:f,targetFlags:Sx(f,u).flags}],i,Mw(F))||{};if(l){const e={kind:p(6),moduleSymbol:r,isDefaultExport:!1,symbolName:f.name,exportName:f.name,fileName:s,moduleSpecifier:l};H[t]=e}}else H[t]={kind:p(2)}}else if(o.includeCompletionsWithInsertText){if(m&&Q.has(m))return;_(t),d(t),W.push(t)}}else _(t),d(t),W.push(t);function d(e){(function(e){return!!(e.valueDeclaration&&256&nb(e.valueDeclaration)&&xu(e.valueDeclaration.parent))})(e)&&(G[Qz(e)]=Ose.LocalDeclarationPriority)}function _(e){o.includeCompletionsWithInsertText&&(r&&jx(Q,Qz(e))?H[W.length]={kind:p(8)}:s&&(H[W.length]={kind:16}))}function p(e){return s?16|e:e}}function se(e){return YC(e)?e:nA(e)?se(e.expression):void 0}function ae(){const t=function(){const e=function(e){if(!e)return;const t=e.parent;switch(e.kind){case 19:if(PN(t))return t;break;case 27:case 28:case 80:if(171===t.kind&&PN(t.parent))return t.parent}return}(T);if(!e)return 0;const t=(zN(e.parent)?e.parent:void 0)||e,n=zae(t,u);if(!n)return 0;const r=u.getTypeFromTypeNode(t),i=jae(n,u),o=jae(r,u),s=new Set;return o.forEach((e=>s.add(e.escapedName))),W=te(W,M(i,(e=>!s.has(e.escapedName)))),V=0,L=!0,1}()||function(){if(26===(null==T?void 0:T.kind))return 0;const t=W.length,s=function(e,t,n){var r;if(e){const{parent:i}=e;switch(e.kind){case 19:case 28:if(tA(i)||ZN(i))return i;break;case 42:return vN(i)?dt(i.parent,tA):void 0;case 134:return dt(i.parent,tA);case 80:if("async"===e.text&&HI(e.parent))return e.parent.parent;{if(tA(e.parent.parent)&&(GI(e.parent)||HI(e.parent)&&ta(n,e.getEnd()).line!==ta(n,t).line))return e.parent.parent;const r=bc(i,WI);if((null==r?void 0:r.getLastToken(n))===e&&tA(r.parent))return r.parent}break;default:if((null==(r=i.parent)?void 0:r.parent)&&(vN(i.parent)||SN(i.parent)||TN(i.parent))&&tA(i.parent.parent))return i.parent.parent;if(GI(i)&&tA(i.parent))return i.parent;const o=bc(i,WI);if(59!==e.kind&&(null==o?void 0:o.getLastToken(n))===e&&tA(o.parent))return o.parent}}return}(T,i,n);if(!s)return 0;let l,d;if(V=0,210===s.kind){const e=function(e,t){const n=t.getContextualType(e);if(n)return n;const r=dg(e.parent);if(gA(r)&&64===r.operatorToken.kind&&e===r.left)return t.getTypeAtLocation(r);if(td(r))return t.getContextualType(r);return}(s,u);if(void 0===e)return 67108864&s.flags?2:0;const t=u.getContextualType(s,4),n=(t||e).getStringIndexType(),r=(t||e).getNumberIndexType();if(L=!!n||!!r,l=Rae(e,t,s,u),d=s.properties,0===l.length&&!r)return 0}else{Tn.assert(206===s.kind),L=!1;const e=_y(s.parent);if(!jf(e))return Tn.fail("Root declaration is not variable-like.");let t=Bd(e)||!!Nv(e)||250===e.parent.parent.kind;if(t||169!==e.kind||(td(e.parent)?t=!!u.getContextualType(e.parent):174!==e.parent.kind&&178!==e.parent.kind||(t=td(e.parent.parent)&&!!u.getContextualType(e.parent.parent))),t){const e=u.getTypeAtLocation(s);if(!e)return 2;l=u.getPropertiesOfType(e).filter((t=>u.isPropertyAccessible(s,!1,!1,e,t))),d=s.elements}}if(l&&l.length>0){const n=function(e,t){if(0===t.length)return e;const n=new Set,r=new Set;for(const o of t){if(303!==o.kind&&304!==o.kind&&208!==o.kind&&174!==o.kind&&177!==o.kind&&178!==o.kind&&305!==o.kind)continue;if(he(o))continue;let e;if(GI(o))pe(o,n);else if($N(o)&&o.propertyName)80===o.propertyName.kind&&(e=o.propertyName.escapedText);else{const t=Oc(o);e=t&&Xg(t)?ey(t):void 0}void 0!==e&&r.add(e)}const i=e.filter((e=>!r.has(e.escapedName)));return me(n,i),i}(l,Tn.checkDefined(d));W=te(W,n),fe(),210===s.kind&&o.includeCompletionsWithObjectLiteralMethodSnippets&&o.includeCompletionsWithInsertText&&(function(e){for(let t=e;t<W.length;t++){const e=W[t],n=Qz(e),i=null==H?void 0:H[t],o=Cae(e,MS(r),i,0,!1);if(o){const e=G[n]??Ose.LocationPriority,{name:t}=o;G[n]=Ose.ObjectLiteralProperty(e,t)}}}(t),function(t,n){if(Um(F))return;t.forEach((t=>{if(!function(e){if(!(8196&e.flags))return!1;return!0}(t))return;const i=Cae(t,MS(r),void 0,0,!1);if(!i)return;const{name:s}=i,l=cae(t,s,n,e,a,r,o,c);if(!l)return;const u={kind:128,...l};j|=32,H[W.length]=u,W.push(t)}))}(n,s))}return 1}()||(E?(L=!0,ce(),1):0)||function(){if(!T)return 0;const e=19===T.kind||28===T.kind?dt(T.parent,Vx):qZ(T)?dt(T.parent.parent,Vx):void 0;if(!e)return 0;qZ(T)||(R=8);const{moduleSpecifier:t}=275===e.kind?e.parent.parent:e.parent;if(!t)return L=!0,275===e.kind?2:0;const n=u.getSymbolAtLocation(t);if(!n)return L=!0,2;V=3,L=!1;const r=u.getExportsAndPropertiesOfModule(n),i=new Set(e.elements.filter((e=>!he(e))).map((e=>(e.propertyName||e.name).escapedText))),o=r.filter((e=>"default"!==e.escapedName&&!i.has(e.escapedName)));W=te(W,o),o.length||(R=0);return 1}()||function(){if(void 0===T)return 0;const e=19===T.kind||28===T.kind?dt(T.parent,hI):59===T.kind?dt(T.parent.parent,hI):void 0;if(void 0===e)return 0;const t=new Set(e.elements.map(Nk));return W=M(u.getTypeAtLocation(e).getApparentProperties(),(e=>!t.has(e.escapedName))),1}()||function(){var e;const t=!T||19!==T.kind&&28!==T.kind?void 0:dt(T.parent,wI);if(!t)return 0;const n=bc(t,pn(YI,sI));return V=5,L=!1,null==(e=n.locals)||e.forEach(((e,t)=>{var r,i;W.push(e),(null==(i=null==(r=n.symbol)?void 0:r.exports)?void 0:i.has(t))&&(G[Qz(e)]=Ose.OptionalMember)})),1}()||(function(e){if(e){const t=e.parent;switch(e.kind){case 21:case 28:return xN(e.parent)?e.parent:void 0;default:if(ue(e))return t.parent}}}(T)?(V=5,L=!0,R=4,1):0)||function(){const e=function(e,t,n,r){switch(n.kind){case 352:return dt(n.parent,zx);case 1:const t=dt(Ne(_t(n.parent,YI).statements),zx);if(t&&!FY(t,20,e))return t;break;case 81:if(dt(n.parent,gN))return bc(n,xu);break;case 80:if(Ec(n))return;if(gN(n.parent)&&n.parent.initializer===n)return;if(Uae(n))return bc(n,zx)}if(!t)return;if(137===n.kind||YC(t)&&gN(t.parent)&&xu(n))return bc(t,xu);switch(t.kind){case 64:return;case 27:case 20:return Uae(n)&&n.parent.name===n?n.parent.parent:dt(n,zx);case 19:case 28:return dt(t.parent,zx);default:if(zx(n)){if(ta(e,t.getEnd()).line!==ta(e,r).line)return n;const i=xu(t.parent.parent)?Mae:Pae;return i(t.kind)||42===t.kind||YC(t)&&i(Ec(t)??0)?t.parent.parent:void 0}return}}(n,T,F,i);if(!e)return 0;if(V=3,L=!0,R=42===T.kind?0:xu(e)?2:3,!xu(e))return 1;const t=27===T.kind?T.parent.parent:T.parent;let r=bu(t)?nb(t):0;if(80===T.kind&&!he(T))switch(T.getText()){case"private":r|=2;break;case"static":r|=256;break;case"override":r|=16}bN(t)&&(r|=256);if(!(2&r)){const t=U(xu(e)&&16&r?hn(Cg(e)):Ig(e),(t=>{const n=u.getTypeAtLocation(t);return 256&r?(null==n?void 0:n.symbol)&&u.getPropertiesOfType(u.getTypeOfSymbolAtLocation(n.symbol,e)):n&&u.getPropertiesOfType(n)}));W=te(W,function(e,t,n){const r=new Set;for(const i of t){if(172!==i.kind&&174!==i.kind&&177!==i.kind&&178!==i.kind)continue;if(he(i))continue;if(Vv(i,2))continue;if(Jv(i)!==!!(256&n))continue;const e=Zg(i.name);e&&r.add(e)}return e.filter((e=>!(r.has(e.escapedName)||!e.declarations||2&xx(e)||e.valueDeclaration&&iu(e.valueDeclaration))))}(t,e.members,r)),h(W,((e,t)=>{const n=null==e?void 0:e.valueDeclaration;if(n&&bu(n)&&n.name&&_N(n.name)){const n={kind:512,symbolName:u.symbolToString(e)};H[t]=n}}))}return 1}()||function(){const e=function(e){if(e){const t=e.parent;switch(e.kind){case 32:case 31:case 44:case 80:case 211:case 292:case 291:case 293:if(t&&(285===t.kind||286===t.kind)){if(32===e.kind){const r=eZ(e.pos,n,void 0);if(!t.typeArguments||r&&44===r.kind)break}return t}if(291===t.kind)return t.parent.parent;break;case 11:if(t&&(291===t.kind||293===t.kind))return t.parent.parent;break;case 20:if(t&&294===t.kind&&t.parent&&291===t.parent.kind)return t.parent.parent.parent;if(t&&293===t.kind)return t.parent.parent}}return}(T),t=e&&u.getContextualType(e.attributes);if(!t)return 0;const r=e&&u.getContextualType(e.attributes,4);return W=te(W,function(e,t){const n=new Set,r=new Set;for(const o of t)he(o)||(291===o.kind?n.add(hk(o.name)):zI(o)&&pe(o,r));const i=e.filter((e=>!n.has(e.escapedName)));return me(r,i),i}(Rae(t,r,e.attributes,u),e.attributes.properties)),fe(),V=3,L=!1,1}()||(function(){R=function(e){if(e){let t;const n=bc(e.parent,(e=>xu(e)?"quit":!(!mu(e)||t!==e.body)||(t=e,!1)));return n&&n}}(T)?5:1,V=1,L=le(),S!==T&&Tn.assert(!!S,"Expected 'contextToken' to be defined when different from 'previousToken'.");const e=S!==T?S.getStart():i,t=function(e,t,n){let r=e;for(;r&&!IY(r,t,n);)r=r.parent;return r}(T,e,n)||n;v=function(e){switch(e.kind){case 307:case 228:case 294:case 241:return!0;default:return kd(e)}}(t);const r=2887656|(Y?0:111551),s=S&&!Mw(S);W=te(W,u.getSymbolsInScope(t,r)),Tn.assertEachIsDefined(W,"getSymbolsInScope() should all be defined");for(let i=0;i<W.length;i++){const e=W[i];if(u.isArgumentsSymbol(e)||$(e.declarations,(e=>e.getSourceFile()===n))||(G[Qz(e)]=Ose.GlobalsOrKeywords),s&&!(111551&e.flags)){const t=e.declarations&&w(e.declarations,Yl);if(t){const e={kind:64,declaration:t};H[i]=e}}}if(o.includeCompletionsWithInsertText&&307!==t.kind){const e=u.tryGetThisTypeAt(t,!1,xu(t.parent)?t:void 0);if(e&&!function(e,t,n){const r=n.resolveName("self",void 0,111551,!1);if(r&&n.getTypeOfSymbolAtLocation(r,t)===e)return!0;const i=n.resolveName("global",void 0,111551,!1);if(i&&n.getTypeOfSymbolAtLocation(i,t)===e)return!0;const o=n.resolveName("globalThis",void 0,111551,!1);if(o&&n.getTypeOfSymbolAtLocation(o,t)===e)return!0;return!1}(e,n,u))for(const t of jae(e,u))H[W.length]={kind:1},W.push(t),G[Qz(t)]=Ose.SuggestedClassMembers}ce(),Y&&(R=T&&nd(T.parent)?6:7)}(),1);return 1===t}function ce(){var t,r;if(!function(){var t;return!!E||!!o.includeCompletionsForModuleExports&&(!(!n.externalModuleIndicator&&!n.commonJsModuleIndicator)||!!YZ(e.getCompilerOptions())||(null==(t=e.getSymlinkCache)?void 0:t.call(e).hasAnySymlinks())||!!e.getCompilerOptions().paths||GZ(e))}())return;if(Tn.assert(!(null==s?void 0:s.data),"Should not run 'collectAutoImports' when faster path is available via `data`"),s&&!s.source)return;j|=1;const c=S===T&&E?"":S&&YC(S)?S.text.toLowerCase():"",u=null==(t=a.getModuleSpecifierCache)?void 0:t.call(a),d=D0(n,a,e,o,l),_=null==(r=a.getPackageJsonAutoImportProvider)?void 0:r.call(a),p=s?void 0:H$(n,o,a);function f(t){const r=dt(t.moduleSymbol.valueDeclaration,YI);if(!r){const r=Ky(t.moduleSymbol.name);return(!jG.nodeCoreModules.has(r)||cn(r,"node:")===m0(n,e))&&(!p||p.allowsImportingAmbientModule(t.moduleSymbol,X(t.isFromPackageJson)))}return N0(t.isFromPackageJson?_:e,n,r,o,p,X(t.isFromPackageJson),u)}Vse("collectAutoImports",a,q||(q=G8.createImportSpecifierResolver(n,e,a,o)),e,i,o,!!E,Mw(F),(e=>{d.search(n.path,I,((e,t)=>{if(!Aa(e,MS(a.getCompilationSettings())))return!1;if(!s&&Ug(e))return!1;if(!(Y||E||111551&t))return!1;if(Y&&!(790504&t))return!1;const n=e.charCodeAt(0);return(!I||!(n<65||n>90))&&(!!s||Zae(e,c))}),((t,n,r,i)=>{if(s&&!$(t,(e=>s.source===Ky(e.moduleSymbol.name))))return;if(!(t=M(t,f)).length)return;const o=e.tryResolve(t,r)||{};if("failed"===o)return;let a,c=t[0];"skipped"!==o&&({exportInfo:c=t[0],moduleSpecifier:a}=o);const l=1===c.exportKind;!function(e,t){const n=Qz(e);if(G[n]===Ose.GlobalsOrKeywords)return;H[W.length]=t,G[n]=E?Ose.LocationPriority:Ose.AutoImportSuggestions,W.push(e)}(l&&Lb(Tn.checkDefined(c.symbol))||Tn.checkDefined(c.symbol),{kind:a?32:4,moduleSpecifier:a,symbolName:n,exportMapKey:i,exportName:2===c.exportKind?"export=":Tn.checkDefined(c.symbol).name,fileName:c.moduleFileName,isDefaultExport:l,moduleSymbol:c.moduleSymbol,isFromPackageJson:c.isFromPackageJson})})),K=e.skippedAny(),j|=e.resolvedAny()?8:0,j|=e.resolvedBeyondLimit()?16:0}))}function le(){if(T){const e=T.parent.kind,t=Fae(T);switch(t){case 28:return 213===e||176===e||214===e||209===e||226===e||184===e||210===e;case 21:return 213===e||176===e||214===e||217===e||196===e;case 23:return 209===e||181===e||167===e;case 144:case 145:case 102:return!0;case 25:return 267===e;case 19:return 263===e||210===e;case 64:return 260===e||226===e;case 16:return 228===e;case 17:return 239===e;case 134:return 174===e||304===e;case 42:return 174===e}if(Mae(t))return!0}return!1}function ue(e){return!!e.parent&&fN(e.parent)&&xN(e.parent.parent)&&(au(e.kind)||gg(e))}function de(e,t){return 64!==e.kind&&(27===e.kind||!dx(e.end,t,n))}function _e(e){return yu(e)&&176!==e}function pe(e,t){const n=e.expression,r=u.getSymbolAtLocation(n),i=r&&u.getTypeOfSymbolAtLocation(r,n),o=i&&i.properties;o&&o.forEach((e=>{t.add(e.name)}))}function fe(){W.forEach((e=>{if(16777216&e.flags){const t=Qz(e);G[t]=G[t]??Ose.OptionalMember}}))}function me(e,t){if(0!==e.size)for(const n of t)e.has(n.name)&&(G[Qz(n)]=Ose.MemberDeclaredBySpreadAssignment)}function he(e){return e.getStart(n)<=i&&i<=e.getEnd()}}function kae(e,t){const n=eZ(e,t);if(n&&e<=n.end&&(Sl(n)||Og(n.kind))){return{contextToken:eZ(n.getFullStart(),t,void 0),previousToken:n}}return{contextToken:n,previousToken:n}}function Eae(e,t,n,r){const i=t.isPackageJsonImport?r.getPackageJsonAutoImportProvider():n,o=i.getTypeChecker(),s=t.ambientModuleName?o.tryFindAmbientModule(t.ambientModuleName):t.fileName?o.getMergedSymbol(Tn.checkDefined(i.getSourceFile(t.fileName)).symbol):void 0;if(!s)return;let a="export="===t.exportName?o.resolveExternalModuleSymbol(s):o.tryGetMemberInModuleExportsAndProperties(t.exportName,s);if(!a)return;return a="default"===t.exportName&&Lb(a)||a,{symbol:a,origin:dae(t,e,s)}}function Cae(e,t,n,r,i){if(function(e){return!!(e&&256&e.kind)}(n))return;const o=function(e){return Lse(e)||jse(e)||qse(e)}(n)?n.symbolName:e.name;if(void 0===o||1536&e.flags&&Zm(o.charCodeAt(0))||ry(e))return;const s={name:o,needsConvertPropertyAccess:!1};if(Aa(o,t,i?1:0)||e.valueDeclaration&&iu(e.valueDeclaration))return s;switch(r){case 3:return qse(n)?{name:n.symbolName,needsConvertPropertyAccess:!1}:void 0;case 0:return{name:JSON.stringify(o),needsConvertPropertyAccess:!1};case 2:case 1:return 32===o.charCodeAt(0)?void 0:{name:o,needsConvertPropertyAccess:!0};case 5:case 4:return s;default:Tn.assertNever(r)}}var Nae=[],Aae=St((()=>{const e=[];for(let t=83;t<=165;t++)e.push({name:Vs(t),kind:"keyword",kindModifiers:"",sortText:Ose.GlobalsOrKeywords});return e}));function Iae(e,t){if(!t)return Dae(e);const n=e+8+1;return Nae[n]||(Nae[n]=Dae(e).filter((e=>!function(e){switch(e){case 128:case 133:case 163:case 136:case 138:case 94:case 162:case 119:case 140:case 120:case 142:case 143:case 144:case 145:case 146:case 150:case 151:case 164:case 123:case 124:case 125:case 148:case 154:case 155:case 156:case 158:case 159:return!0;default:return!1}}(Ks(e.name)))))}function Dae(e){return Nae[e]||(Nae[e]=Aae().filter((t=>{const n=Ks(t.name);switch(e){case 0:return!1;case 1:return Oae(n)||138===n||144===n||156===n||145===n||128===n||UZ(n)&&157!==n;case 5:return Oae(n);case 2:return Mae(n);case 3:return Pae(n);case 4:return au(n);case 6:return UZ(n)||87===n;case 7:return UZ(n);case 8:return 156===n;default:return Tn.assertNever(e)}})))}function Pae(e){return 148===e}function Mae(e){switch(e){case 128:case 129:case 137:case 139:case 153:case 134:case 138:case 164:return!0;default:return cu(e)}}function Oae(e){return 134===e||135===e||160===e||130===e||152===e||156===e||!Lg(e)&&!Mae(e)}function Fae(e){return YC(e)?Ec(e)??0:e.kind}function Rae(e,t,n,r){const i=t&&t!==e,o=!i||3&t.flags?e:r.getUnionType([e,t]),s=function(e,t,n){return e.isUnion()?n.getAllPossiblePropertiesOfTypes(M(e.types,(e=>!(402784252&e.flags||n.isArrayLikeType(e)||n.isTypeInvalidDueToUnionDiscriminant(e,t)||n.typeHasCallOrConstructSignatures(e)||e.isClass()&&Lae(e.getApparentProperties()))))):e.getApparentProperties()}(o,n,r);return o.isClass()&&Lae(s)?[]:i?M(s,(function(e){return!m(e.declarations)||$(e.declarations,(e=>e.parent!==n))})):s}function Lae(e){return $(e,(e=>!!(6&xx(e))))}function jae(e,t){return e.isUnion()?Tn.checkEachDefined(t.getAllPossiblePropertiesOfTypes(e.types),"getAllPossiblePropertiesOfTypes() should all be defined"):Tn.checkEachDefined(e.getApparentProperties(),"getApparentProperties() should all be defined")}function zae(e,t){if(!e)return;if(Du(e)&&Kd(e.parent))return t.getTypeArgumentConstraint(e);const n=zae(e.parent,t);if(n)switch(e.kind){case 171:return t.getTypeOfPropertyOfContextualType(n,e.symbol.escapedName);case 193:case 187:case 192:return n}}function Uae(e){return e.parent&&Au(e.parent)&&zx(e.parent.parent)}function Bae({left:e}){return F_(e)}function qae(e,t){var n,r,i;let o,s=!1;const a=function(){const n=e.parent;if(uI(n)){const r=n.getLastToken(t);return YC(e)&&r!==e?(o=161,void(s=!0)):(o=156===e.kind?void 0:156,Hae(n.moduleReference)?n:void 0)}if(Jae(n,e)&&Wae(n.parent))return n;if(bI(n)||yI(n)){if(n.parent.isTypeOnly||19!==e.kind&&102!==e.kind&&28!==e.kind||(o=156),Wae(n)){if(20!==e.kind&&80!==e.kind)return n.parent.parent;s=!0,o=161}return}if(TI(n)&&42===e.kind||wI(n)&&20===e.kind)return s=!0,void(o=161);if(lN(e)&&YI(n))return o=156,e;if(lN(e)&&dI(n))return o=156,Hae(n.moduleSpecifier)?n:void 0;return}();return{isKeywordOnlyCompletion:s,keywordCompletion:o,isNewIdentifierLocation:!(!a&&156!==o),isTopLevelTypeOnly:!!(null==(r=null==(n=dt(a,dI))?void 0:n.importClause)?void 0:r.isTypeOnly)||!!(null==(i=dt(a,uI))?void 0:i.isTypeOnly),couldBeTypeOnlyImportSpecifier:!!a&&Jae(a,e),replacementSpan:Vae(a)}}function Vae(e){var t;if(!e)return;const n=bc(e,pn(dI,uI,zD))??e,r=n.getSourceFile();if(rx(n,r))return PZ(n,r);Tn.assert(102!==n.kind&&276!==n.kind);const i=272===n.kind||351===n.kind?Kae(null==(t=n.importClause)?void 0:t.namedBindings)??n.moduleSpecifier:n.moduleReference,o={pos:n.getFirstToken().getStart(),end:i.pos};return rx(o,r)?FZ(o):void 0}function Kae(e){var t;return w(null==(t=dt(e,bI))?void 0:t.elements,(t=>{var n;return!t.propertyName&&Ug(t.name.text)&&28!==(null==(n=eZ(t.name.pos,e.getSourceFile(),e))?void 0:n.kind)}))}function Jae(e,t){return xI(e)&&(e.isTypeOnly||t===e.name&&qZ(t))}function Wae(e){if(!Hae(e.parent.parent.moduleSpecifier)||e.parent.name)return!1;if(bI(e)){const t=Kae(e);return(t?e.elements.indexOf(t):e.elements.length)<2}return!0}function Hae(e){var t;return!!F_(e)||!(null==(t=dt(AI(e)?e.expression:e,Hd))?void 0:t.text)}function Gae(e){return e.parent&&uA(e.parent)&&(e.parent.body===e||39===e.kind)}function Qae(e,t,n=new Map){return r(e)||r(Sx(e.exportSymbol||e,t));function r(e){return!!(788968&e.flags)||t.isUnknownSymbol(e)||!!(1536&e.flags)&&jx(n,Qz(e))&&t.getExportsOfModule(e).some((e=>Qae(e,t,n)))}}function Yae(e,t){const n=Sx(e,t).declarations;return!!m(n)&&T(n,f0)}function Zae(e,t){if(0===t.length)return!0;let n,r=!1,i=0;const o=e.length;for(let s=0;s<o;s++){const o=e.charCodeAt(s),a=t.charCodeAt(i);if((o===a||o===Xae(a))&&(r||(r=void 0===n||97<=n&&n<=122&&65<=o&&o<=90||95===n&&95!==o),r&&i++,i===t.length))return!0;n=o}return!1}function Xae(e){return 97<=e&&e<=122?e-32:e}function $ae(e){return"abstract"===e||"async"===e||"await"===e||"declare"===e||"module"===e||"namespace"===e||"type"===e||"satisfies"===e||"as"===e}var ece={};a(ece,{getStringLiteralCompletionDetails:()=>ice,getStringLiteralCompletions:()=>rce});var tce={directory:0,script:1,"external module name":2};function nce(){const e=new Map;return{add:function(t){const n=e.get(t.name);(!n||tce[n.kind]<tce[t.kind])&&e.set(t.name,t)},has:e.has.bind(e),values:e.values.bind(e)}}function rce(e,t,n,r,i,o,s,a,c){if(NZ(e,t)){const n=function(e,t,n,r){const i=QY(e,t),o=wa(e.text,i.pos),s=o&&w(o,(e=>t>=e.pos&&t<=e.end));if(!s)return;const a=e.text.slice(s.pos,t),c=Cce.exec(a);if(!c)return;const[,l,u,d]=c,_=Vo(e.path),p="path"===u?gce(d,_,mce(n,0,e),r,!0,e.path):"types"===u?Ece(r,n,_,Sce(d),mce(n,1,e)):Tn.fail();return pce(d,s.pos+l.length,Ke(p.values()))}(e,t,r,i);return n&&oce(n)}if(iZ(e,t,n)){if(!n||!Hd(n))return;return function(e,t,n,r,i,o,s,a,c,l){if(void 0===e)return;const u=MZ(t,c);switch(e.kind){case 0:return oce(e.paths);case 1:{const d=[];return mae(e.symbols,d,t,t,n,c,n,r,i,99,o,4,a,s,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,l),{isGlobalCompletion:!1,isMemberCompletion:!0,isNewIdentifierLocation:e.hasIndexSignature,optionalReplacementSpan:u,entries:d}}case 2:{const n=15===t.kind?96:cn(ep(t),"'")?39:34,r=e.types.map((e=>({name:Ry(e.value,n),kindModifiers:"",kind:"string",sortText:Ose.LocationPriority,replacementSpan:DZ(t,c)})));return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:e.isNewIdentifier,optionalReplacementSpan:u,entries:r}}default:return Tn.assertNever(e)}}(ace(e,n,t,o,i,a),n,e,i,o,s,r,a,t,c)}}function ice(e,t,n,r,i,o,s,a){if(!r||!Hd(r))return;const c=ace(t,r,n,i,o,a);return c&&function(e,t,n,r,i,o){switch(n.kind){case 0:{const t=w(n.paths,(t=>t.name===e));return t&&bae(e,sce(t.extension),t.kind,[FX(e)])}case 1:{const s=w(n.symbols,(t=>t.name===e));return s&&vae(s,s.name,i,r,t,o)}case 2:return w(n.types,(t=>t.value===e))?bae(e,"","string",[FX(e)]):void 0;default:return Tn.assertNever(n)}}(e,r,c,t,i.getTypeChecker(),s)}function oce(e){return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:!0,entries:e.map((({name:e,kind:t,span:n,extension:r})=>({name:e,kind:t,kindModifiers:sce(r),sortText:Ose.LocationPriority,replacementSpan:n})))}}function sce(e){switch(e){case".d.ts":return".d.ts";case".js":return".js";case".json":return".json";case".jsx":return".jsx";case".ts":return".ts";case".tsx":return".tsx";case".d.mts":return".d.mts";case".mjs":return".mjs";case".mts":return".mts";case".d.cts":return".d.cts";case".cjs":return".cjs";case".cts":return".cts";case".tsbuildinfo":return Tn.fail("Extension .tsbuildinfo is unsupported.");case void 0:return"";default:return Tn.assertNever(e)}}function ace(e,t,n,r,i,o){const s=r.getTypeChecker(),a=cce(t.parent);switch(a.kind){case 201:{const c=cce(a.parent);return 205===c.kind?{kind:0,paths:fce(e,t,r,i,o)}:function e(t){switch(t.kind){case 233:case 183:{const e=bc(a,(e=>e.parent===t));return e?{kind:2,types:uce(s.getTypeArgumentConstraint(e)),isNewIdentifier:!1}:void 0}case 199:const{indexType:i,objectType:o}=t;if(!TY(i,n))return;return lce(s.getTypeFromTypeNode(o));case 192:{const n=e(cce(t.parent));if(!n)return;const i=(r=a,J(t.types,(e=>e!==r&&HN(e)&&MC(e.literal)?e.literal.text:void 0)));return 1===n.kind?{kind:1,symbols:n.symbols.filter((e=>!A(i,e.name))),hasIndexSignature:n.hasIndexSignature}:{kind:2,types:n.types.filter((e=>!A(i,e.value))),isNewIdentifier:!1}}default:return}var r}(c)}case 303:return tA(a.parent)&&a.name===t?function(e,t){const n=e.getContextualType(t);if(!n)return;const r=e.getContextualType(t,4);return{kind:1,symbols:Rae(n,r,t,e),hasIndexSignature:E$(n)}}(s,a.parent):c()||c(0);case 212:{const{expression:e,argumentExpression:n}=a;return t===fg(n)?lce(s.getTypeAtLocation(e)):void 0}case 213:case 214:case 291:if(!function(e){return iA(e.parent)&&we(e.parent.arguments)===e&&YC(e.parent.expression)&&"require"===e.parent.expression.escapedText}(t)&&!mf(a)){const r=sde.getArgumentInfoForCompletions(291===a.kind?a.parent:t,n,e,s);return r&&function(e,t,n,r){let i=!1;const o=new Map,s=Pd(e)?Tn.checkDefined(bc(t.parent,LI)):t,a=U(r.getCandidateSignaturesForStringLiteralCompletions(e,s),(t=>{if(!tU(t)&&n.argumentCount>t.parameters.length)return;let a=t.getTypeParameterAtPosition(n.argumentIndex);if(Pd(e)){const e=r.getTypeOfPropertyOfType(a,gk(s.name));e&&(a=e)}return i=i||!!(4&a.flags),uce(a,o)}));return m(a)?{kind:2,types:a,isNewIdentifier:i}:void 0}(r.invocation,t,r,s)||c(0)}case 272:case 278:case 283:case 351:return{kind:0,paths:fce(e,t,r,i,o)};case 296:const l=x0(s,a.parent.clauses),u=c();if(!u)return;return{kind:2,types:u.types.filter((e=>!l.hasValue(e.value))),isNewIdentifier:!1};default:return c()||c(0)}function c(e=4){const n=uce(S$(t,s,e));if(n.length)return{kind:2,types:n,isNewIdentifier:!1}}}function cce(e){switch(e.kind){case 196:return ug(e);case 217:return dg(e);default:return e}}function lce(e){return e&&{kind:1,symbols:M(e.getApparentProperties(),(e=>!(e.valueDeclaration&&iu(e.valueDeclaration)))),hasIndexSignature:E$(e)}}function uce(e,t=new Map){return e?(e=WZ(e)).isUnion()?U(e.types,(e=>uce(e,t))):!e.isStringLiteral()||1024&e.flags||!jx(t,e.value)?_:[e]:_}function dce(e,t,n){return{name:e,kind:t,extension:n}}function _ce(e){return dce(e,"directory",void 0)}function pce(e,t,n){const r=function(e,t){const n=Math.max(e.lastIndexOf(ko),e.lastIndexOf(Eo)),r=-1!==n?n+1:0,i=e.length-r;return 0===i||Aa(e.substr(r,i),99)?void 0:ec(t+r,i)}(e,t),i=0===e.length?void 0:ec(t,e.length);return n.map((({name:e,kind:t,extension:n})=>e.includes(ko)||e.includes(Eo)?{name:e,kind:t,extension:n,span:i}:{name:e,kind:t,extension:n,span:r}))}function fce(e,t,n,r,i){return pce(t.text,t.getStart(e)+1,function(e,t,n,r,i){const o=Qo(t.text),s=Hd(t)?n.getModeForUsageLocation(e,t):void 0,a=e.path,c=Vo(a),l=n.getCompilerOptions(),u=n.getTypeChecker(),d=mce(l,1,e,u,i,s);return function(e){if(e&&e.length>=2&&46===e.charCodeAt(0)){const t=e.length>=3&&46===e.charCodeAt(1)?2:1,n=e.charCodeAt(t);return 47===n||92===n}return!1}(o)||!l.baseUrl&&!l.paths&&(Do(o)||Io(o))?function(e,t,n,r,i,o){return n.rootDirs?function(e,t,n,r,i,o,s){const a=i.project||o.getCurrentDirectory(),c=!(o.useCaseSensitiveFileNames&&o.useCaseSensitiveFileNames()),l=function(e,t,n,r){e=e.map((e=>os(ts(Do(e)?e:Zo(t,e)))));const i=y(e,(e=>fs(e,n,t,r)?n.substr(e.length):void 0));return ie([...e.map((e=>Zo(e,i))),n].map((e=>is(e))),It,Lt)}(e,a,n,c);return ie(U(l,(e=>Ke(gce(t,e,r,o,!0,s).values()))),((e,t)=>e.name===t.name&&e.kind===t.kind&&e.extension===t.extension))}(n.rootDirs,e,t,o,n,r,i):Ke(gce(e,t,o,r,!0,i).values())}(o,c,l,r,a,d):function(e,t,n,r,i,o,s){const{baseUrl:a,paths:c}=r,l=nce(),u=FS(r);if(a){const t=ts(Zo(i.getCurrentDirectory(),a));gce(e,t,o,i,!1,void 0,l)}if(c){const t=cv(r,i);vce(l,e,t,o,i,c)}const d=Sce(e);for(const _ of function(e,t,n){const r=n.getAmbientModules().map((e=>Ky(e.name))).filter((t=>cn(t,e)&&!t.includes("*")));if(void 0!==t){const e=os(t);return r.map((t=>ln(t,e)))}return r}(e,d,s))l.add(dce(_,"external module name",void 0));if(Ece(i,r,t,d,o,l),$Z(u)){let s=!1;if(void 0===d)for(const e of function(e,t){if(!e.readFile||!e.fileExists)return _;const n=[];for(const r of V$(t,e)){const t=Kb(r,e);for(const e of Nce){const r=t[e];if(r)for(const e in r)je(r,e)&&!cn(e,"@types/")&&n.push(e)}}return n}(i,t)){const t=dce(e,"external module name",void 0);l.has(t.name)||(s=!0,l.add(t))}if(!s){let s=t=>{const n=Zo(t,"node_modules");U$(i,n)&&gce(e,n,o,i,!1,void 0,l)};if(d&&US(r)){const t=s;s=s=>{const a=Ho(e);a.shift();let c=a.shift();if(!c)return t(s);if(cn(c,"@")){const e=a.shift();if(!e)return t(s);c=Zo(c,e)}const u=Zo(s,"node_modules",c),d=Zo(u,"package.json");if(z$(i,d)){const t=Kb(d,i).exports;if(t){if("object"!=typeof t||null===t)return;const s=Ue(t),c=a.join("/")+(a.length&&zo(e)?"/":""),d=hL(r,n);return void bce(l,!0,c,u,o,i,s,(e=>hn(xce(t[e],d))),yj)}}return t(s)}}xs(t,s)}}return Ke(l.values())}(o,c,s,l,r,d,u)}(e,t,n,r,i))}function mce(e,t,n,r,i,o){return{extensionsToSearch:z(hce(e,r)),referenceKind:t,importingSourceFile:n,endingPreference:null==i?void 0:i.importModuleSpecifierEnding,resolutionMode:o}}function hce(e,t){const n=t?J(t.getAmbientModules(),(e=>{const t=e.name.slice(1,-1);if(t.startsWith("*.")&&!t.includes("/"))return t.slice(1)})):[],r=[...GT(e),n];return $Z(FS(e))?QT(e,r):r}function gce(e,t,n,r,i,o,s=nce()){var a;void 0===e&&(e=""),zo(e=Qo(e))||(e=Vo(e)),""===e&&(e="."+ko);const c=Xo(t,e=os(e)),l=zo(c)?c:Vo(c);if(!i){const e=K$(l,r);if(e){const t=Kb(e,r).typesVersions;if("object"==typeof t){const i=null==(a=lL(t))?void 0:a.paths;if(i){const t=Vo(e);if(vce(s,c.slice(os(t).length),t,n,r,i))return s}}}}const u=!(r.useCaseSensitiveFileNames&&r.useCaseSensitiveFileNames());if(!U$(r,l))return s;const d=j$(r,l,n.extensionsToSearch,void 0,["./*"]);if(d)for(let p of d){if(p=ts(p),o&&0===ps(p,o,t,u))continue;const{name:e,extension:i}=yce(Ko(p),r.getCompilationSettings(),n,!1);s.add(dce(e,"script",i))}const _=L$(r,l);if(_)for(const p of _){const e=Ko(ts(p));"@types"!==e&&s.add(_ce(e))}return s}function yce(e,t,n,r){const i=tz.tryGetRealFileNameForNonJsDeclarationFileName(e);if(i)return{name:i,extension:hw(i)};if(0===n.referenceKind)return{name:e,extension:hw(e)};let o=rz({importModuleSpecifierEnding:n.endingPreference},t,n.importingSourceFile).getAllowedEndingsInPreferredOrder(n.resolutionMode);if(r&&(o=o.filter((e=>0!==e&&1!==e))),3===o[0]){if(jo(e,WT))return{name:e,extension:hw(e)};const n=tz.tryGetJSExtensionForFile(e,t);return n?{name:cw(e,n),extension:n}:{name:e,extension:hw(e)}}if(!r&&(0===o[0]||1===o[0])&&jo(e,[".js",".jsx",".ts",".tsx",".d.ts"]))return{name:ow(e),extension:hw(e)};const s=tz.tryGetJSExtensionForFile(e,t);return s?{name:cw(e,s),extension:s}:{name:e,extension:hw(e)}}function vce(e,t,n,r,i,o){return bce(e,!1,t,n,r,i,Ue(o),(e=>o[e]),((e,t)=>{const n=lw(e),r=lw(t),i="object"==typeof n?n.prefix.length:e.length;return Pt("object"==typeof r?r.prefix.length:t.length,i)}))}function bce(e,t,n,r,i,o,s,a,c){let l,u=[];for(const d of s){if("."===d)continue;const e=d.replace(/^\.\//,""),s=a(d);if(s){const a=lw(e);if(!a)continue;const _="object"==typeof a&&dn(a,n);_&&(void 0===l||-1===c(d,l))&&(l=d,u=u.filter((e=>!e.matchedPattern))),"string"!=typeof a&&void 0!==l&&1===c(d,l)||u.push({matchedPattern:_,results:Tce(e,s,n,r,i,t&&_,o).map((({name:e,kind:t,extension:n})=>dce(e,t,n)))})}}return u.forEach((t=>t.results.forEach((t=>e.add(t))))),void 0!==l}function xce(e,t){if("string"==typeof e)return e;if(e&&"object"==typeof e&&!at(e))for(const n in e)if("default"===n||t.includes(n)||xj(t,n)){return xce(e[n],t)}}function Sce(e){return Ace(e)?zo(e)?e:Vo(e):void 0}function Tce(e,t,n,r,i,o,s){if(!Qt(e,"*"))return e.includes("*")?_:l(e,"script");const a=e.slice(0,e.length-1),c=un(n,a);if(void 0===c){return"/"===e[e.length-2]?l(a,"directory"):U(t,(e=>{var t;return null==(t=wce("",r,e,i,o,s))?void 0:t.map((({name:e,...t})=>({name:a+e,...t})))}))}return U(t,(e=>wce(c,r,e,i,o,s)));function l(e,t){return cn(e,n)?[{name:is(e),kind:t,extension:void 0}]:_}}function wce(e,t,n,r,i,o){if(!o.readDirectory)return;const s=lw(n);if(void 0===s||lt(s))return;const a=Xo(s.prefix),c=zo(s.prefix)?a:Vo(a),l=zo(s.prefix)?"":Ko(a),u=Ace(e),d=u?zo(e)?e:Vo(e):void 0,p=u?Zo(c,l+d):c,f=ts(s.suffix),m=f&&sv("_"+f),h=m?[cw(f,m),f]:[f],g=ts(Zo(t,p)),v=u?g:os(g)+l,b=f?h.map((e=>"**/*"+e)):["./*"];return[...J(j$(o,g,r.extensionsToSearch,void 0,b),(e=>{const t=(n=e,y(h,(e=>{const t=function(e,t,n){return cn(e,t)&&Qt(e,n)?e.slice(t.length,e.length-n.length):void 0}(ts(n),v,e);return void 0===t?void 0:kce(t)})));var n;if(t){if(Ace(t))return _ce(Ho(kce(t))[1]);const{name:e,extension:n}=yce(t,o.getCompilationSettings(),r,i);return dce(e,"script",n)}})),...f?_:J(L$(o,g),(e=>"node_modules"===e?void 0:_ce(e)))]}function kce(e){return e[0]===ko?e.slice(1):e}function Ece(e,t,n,r,i,o=nce()){const s=new Map,a=B$((()=>uL(t,e)))||_;for(const l of a)c(l);for(const l of V$(n,e)){c(Zo(Vo(l),"node_modules/@types"))}return o;function c(n){if(U$(e,n))for(const a of L$(e,n)){const c=Pj(a);if(!t.types||A(t.types,c))if(void 0===r)s.has(c)||(o.add(dce(c,"external module name",void 0)),s.set(c,!0));else{const t=Zo(n,a),s=pT(r,c,Xy(e));void 0!==s&&gce(s,t,i,e,!1,void 0,o)}}}}var Cce=/^(\/\/\/\s*<reference\s+(path|types)\s*=\s*(?:'|"))([^\x03"]*)$/,Nce=["dependencies","devDependencies","peerDependencies","optionalDependencies"];function Ace(e){return e.includes(ko)}var Ice={};function Dce(e,t,n,r){const i=function(e,t,n){const r=new Map;for(const i of e)n&&n.throwIfCancellationRequested(),Lce(i,((e,n)=>{const i=t.getSymbolAtLocation(n);if(i){const t=Qz(i).toString();let n=r.get(t);n||r.set(t,n=[]),n.push(e)}}));return r}(e,n,r);return(o,s,a)=>{const{directImports:c,indirectUsers:l}=function(e,t,n,{exportingModuleSymbol:r,exportKind:i},o,s){const a=VZ(),c=VZ(),l=[],u=!!r.globalExports,d=u?void 0:[];return p(r),{directImports:l,indirectUsers:_()};function _(){if(u)return e;if(r.declarations)for(const e of r.declarations)vp(e)&&t.has(e.getSourceFile().fileName)&&g(e);return d.map(C_)}function p(e){const t=y(e);if(t)for(const n of t)if(a(n))switch(s&&s.throwIfCancellationRequested(),n.kind){case 213:if(mf(n)){f(n);break}if(!u){const e=n.parent;if(2===i&&260===e.kind){const{name:t}=e;if(80===t.kind){l.push(t);break}}}break;case 80:break;case 271:h(n,n.name,Kv(n,32),!1);break;case 272:case 351:l.push(n);const e=n.importClause&&n.importClause.namedBindings;e&&274===e.kind?h(n,e.name,!1,!0):!u&&Ph(n)&&g(Bce(n));break;case 278:n.exportClause?280===n.exportClause.kind?g(Bce(n),!0):l.push(n):p(Uce(n,o));break;case 205:!u&&n.isTypeOf&&!n.qualifier&&m(n)&&g(n.getSourceFile(),!0),l.push(n);break;default:Tn.failBadSyntaxKind(n,"Unexpected import kind.")}}function f(e){g(bc(e,qce)||e.getSourceFile(),!!m(e,!0))}function m(e,t=!1){return bc(e,(e=>t&&qce(e)?"quit":bM(e)&&$(e.modifiers,XC)))}function h(e,t,n,r){if(2===i)r||l.push(e);else if(!u){const r=Bce(e);Tn.assert(307===r.kind||267===r.kind),n||function(e,t,n){const r=n.getSymbolAtLocation(t);return!!Rce(e,(e=>{if(!TI(e))return;const{exportClause:t,moduleSpecifier:i}=e;return!i&&t&&wI(t)&&t.elements.some((e=>n.getExportSpecifierLocalTargetSymbol(e)===r))}))}(r,t,o)?g(r,!0):g(r)}}function g(e,t=!1){Tn.assert(!u);if(!c(e))return;if(d.push(e),!t)return;const n=o.getMergedSymbol(e.symbol);if(!n)return;Tn.assert(!!(1536&n.flags));const r=y(n);if(r)for(const i of r)GN(i)||g(Bce(i),!0)}function y(e){return n.get(Qz(e).toString())}}(e,t,i,s,n,r);return{indirectUsers:l,...Oce(c,o,s.exportKind,n,a)}}}a(Ice,{Core:()=>Zce,DefinitionKind:()=>Kce,EntryKind:()=>Jce,ExportKind:()=>Pce,FindReferencesUse:()=>Xce,ImportExport:()=>Mce,createImportTracker:()=>Dce,findModuleReferences:()=>Fce,findReferenceOrRenameEntries:()=>nle,findReferencedSymbols:()=>$ce,getContextNode:()=>Qce,getExportInfo:()=>zce,getImplementationsAtPosition:()=>ele,getImportOrExportSymbol:()=>jce,getReferenceEntriesForNode:()=>rle,getTextSpanOfEntry:()=>fle,isContextWithStartAndEndNode:()=>Hce,isDeclarationOfSymbol:()=>hle,isWriteAccessForReference:()=>mle,nodeEntry:()=>Wce,toContextSpan:()=>Yce,toHighlightSpan:()=>_le,toReferenceEntry:()=>cle,toRenameLocation:()=>ale});var Pce=(e=>(e[e.Named=0]="Named",e[e.Default=1]="Default",e[e.ExportEquals=2]="ExportEquals",e))(Pce||{}),Mce=(e=>(e[e.Import=0]="Import",e[e.Export=1]="Export",e))(Mce||{});function Oce(e,t,n,r,i){const o=[],s=[];function a(e,t){o.push([e,t])}if(e)for(const _ of e)c(_);return{importSearches:o,singleReferences:s};function c(e){if(271===e.kind)return void(Vce(e)&&l(e.name));if(80===e.kind)return void l(e);if(205===e.kind){if(e.qualifier){const n=kb(e.qualifier);n.escapedText===Cc(t)&&s.push(n)}else 2===n&&s.push(e.argument.literal);return}if(11!==e.moduleSpecifier.kind)return;if(278===e.kind)return void(e.exportClause&&wI(e.exportClause)&&u(e.exportClause));const{name:o,namedBindings:c}=e.importClause||{name:void 0,namedBindings:void 0};if(c)switch(c.kind){case 274:l(c.name);break;case 275:0!==n&&1!==n||u(c);break;default:Tn.assertNever(c)}if(o&&(1===n||2===n)&&(!i||o.escapedText===aX(t))){a(o,r.getSymbolAtLocation(o))}}function l(e){2!==n||i&&!d(e.escapedText)||a(e,r.getSymbolAtLocation(e))}function u(e){if(e)for(const n of e.elements){const{name:e,propertyName:o}=n;if(d((o||e).escapedText))if(o)s.push(o),i&&e.escapedText!==t.escapedName||a(e,r.getSymbolAtLocation(e));else{a(e,281===n.kind&&n.propertyName?r.getExportSpecifierLocalTargetSymbol(n):r.getSymbolAtLocation(e))}}}function d(e){return e===t.escapedName||0!==n&&"default"===e}}function Fce(e,t,n){var r;const i=[],o=e.getTypeChecker();for(const s of t){const t=n.valueDeclaration;if(307===(null==t?void 0:t.kind)){for(const n of s.referencedFiles)e.getSourceFileFromReference(s,n)===t&&i.push({kind:"reference",referencingFile:s,ref:n});for(const n of s.typeReferenceDirectives){const o=null==(r=e.getResolvedTypeReferenceDirectiveFromTypeReferenceDirective(n,s))?void 0:r.resolvedTypeReferenceDirective;void 0!==o&&o.resolvedFileName===t.fileName&&i.push({kind:"reference",referencingFile:s,ref:n})}}Lce(s,((e,t)=>{o.getSymbolAtLocation(t)===n&&i.push(fy(e)?{kind:"implicit",literal:t,referencingFile:s}:{kind:"import",literal:t})}))}return i}function Rce(e,t){return h(307===e.kind?e.statements:e.body.statements,(e=>t(e)||qce(e)&&h(e.body&&e.body.statements,t)))}function Lce(e,t){if(e.externalModuleIndicator||void 0!==e.imports)for(const n of e.imports)t(Nh(n),n);else Rce(e,(e=>{switch(e.kind){case 278:case 272:{const n=e;n.moduleSpecifier&&MC(n.moduleSpecifier)&&t(n,n.moduleSpecifier);break}case 271:{const n=e;Vce(n)&&t(n,n.moduleReference.expression);break}}}))}function jce(e,t,n,r){return r?i():i()||function(){if(!function(e){const{parent:t}=e;switch(t.kind){case 271:return t.name===e&&Vce(t);case 276:return!t.propertyName;case 273:case 274:return Tn.assert(t.name===e),!0;case 208:return Um(e)&&Hm(t.parent.parent);default:return!1}}(e))return;let r=n.getImmediateAliasedSymbol(t);if(!r)return;if(r=function(e,t){if(e.declarations)for(const n of e.declarations){if(kI(n)&&!n.propertyName&&!n.parent.parent.moduleSpecifier)return t.getExportSpecifierLocalTargetSymbol(n)||e;if(nA(n)&&uh(n.expression)&&!ZC(n.name))return t.getSymbolAtLocation(n);if(HI(n)&&gA(n.parent.parent)&&2===dh(n.parent.parent))return t.getExportSpecifierLocalTargetSymbol(n.name)}return e}(r,n),"export="===r.escapedName&&(r=function(e,t){var n,r;if(2097152&e.flags)return t.getImmediateAliasedSymbol(e);const i=Tn.checkDefined(e.valueDeclaration);if(SI(i))return null==(n=dt(i.expression,yd))?void 0:n.symbol;if(gA(i))return null==(r=dt(i.right,yd))?void 0:r.symbol;if(YI(i))return i.symbol;return}(r,n),void 0===r))return;const i=aX(r);if(void 0===i||"default"===i||i===t.escapedName)return{kind:0,symbol:r}}();function i(){var i;const{parent:a}=e,c=a.parent;if(t.exportSymbol)return 211===a.kind?(null==(i=t.declarations)?void 0:i.some((e=>e===a)))&&gA(c)?u(c,!1):void 0:o(t.exportSymbol,s(a));{const i=function(e,t){const n=$A(e)?e:$N(e)?dc(e):void 0;return n?e.name!==t||JI(n.parent)?void 0:FA(n.parent.parent)?n.parent.parent:void 0:e}(a,e);if(i&&Kv(i,32)){if(uI(i)&&i.moduleReference===e){if(r)return;return{kind:0,symbol:n.getSymbolAtLocation(i.name)}}return o(t,s(i))}if(vI(a))return o(t,0);if(SI(a))return l(a);if(SI(c))return l(c);if(gA(a))return u(a,!0);if(gA(c))return u(c,!0);if(MD(a)||yD(a))return o(t,0)}function l(e){if(!e.symbol.parent)return;const n=e.isExportEquals?2:1;return{kind:1,symbol:t,exportInfo:{exportingModuleSymbol:e.symbol.parent,exportKind:n}}}function u(e,r){let i;switch(dh(e)){case 1:i=0;break;case 2:i=2;break;default:return}const s=r?n.getSymbolAtLocation(qx(_t(e.left,Bx))):t;return s&&o(s,i)}}function o(e,t){const r=zce(e,t,n);return r&&{kind:1,symbol:e,exportInfo:r}}function s(e){return Kv(e,2048)?1:0}}function zce(e,t,n){const r=e.parent;if(!r)return;const i=n.getMergedSymbol(r);return a_(i)?{exportingModuleSymbol:i,exportKind:t}:void 0}function Uce(e,t){return t.getMergedSymbol(Bce(e).symbol)}function Bce(e){if(213===e.kind||351===e.kind)return e.getSourceFile();const{parent:t}=e;return 307===t.kind?t:(Tn.assert(268===t.kind),_t(t.parent,qce))}function qce(e){return 267===e.kind&&11===e.name.kind}function Vce(e){return 283===e.moduleReference.kind&&11===e.moduleReference.expression.kind}var Kce=(e=>(e[e.Symbol=0]="Symbol",e[e.Label=1]="Label",e[e.Keyword=2]="Keyword",e[e.This=3]="This",e[e.String=4]="String",e[e.TripleSlashReference=5]="TripleSlashReference",e))(Kce||{}),Jce=(e=>(e[e.Span=0]="Span",e[e.Node=1]="Node",e[e.StringLiteral=2]="StringLiteral",e[e.SearchedLocalFoundProperty=3]="SearchedLocalFoundProperty",e[e.SearchedPropertyFoundLocal=4]="SearchedPropertyFoundLocal",e))(Jce||{});function Wce(e,t=1){return{kind:t,node:e.name||e,context:Gce(e)}}function Hce(e){return e&&void 0===e.kind}function Gce(e){if(Sd(e))return Qce(e);if(e.parent){if(!Sd(e.parent)&&!SI(e.parent)){if(Um(e)){const t=gA(e.parent)?e.parent:Bx(e.parent)&&gA(e.parent.parent)&&e.parent.parent.left===e.parent?e.parent.parent:void 0;if(t&&0!==dh(t))return Qce(t)}if(PI(e.parent)||MI(e.parent))return e.parent.parent;if(DI(e.parent)||QA(e.parent)||Fl(e.parent))return e.parent;if(Hd(e)){const t=Ah(e);if(t){const e=bc(t,(e=>Sd(e)||kd(e)||Rd(e)));return Sd(e)?Qce(e):e}}const t=bc(e,_N);return t?Qce(t.parent):void 0}return e.parent.name===e||xN(e.parent)||SI(e.parent)||(Ql(e.parent)||$N(e.parent))&&e.parent.propertyName===e||90===e.kind&&Kv(e.parent,2080)?Qce(e.parent):void 0}}function Qce(e){if(e)switch(e.kind){case 260:return eI(e.parent)&&1===e.parent.declarations.length?FA(e.parent.parent)?e.parent.parent:ld(e.parent.parent)?Qce(e.parent.parent):e.parent:e;case 208:return Qce(e.parent.parent);case 276:return e.parent.parent.parent;case 281:case 274:return e.parent.parent;case 273:case 280:return e.parent;case 226:return LA(e.parent)?e.parent:e;case 250:case 249:return{start:e.initializer,end:e.expression};case 303:case 304:return CZ(e.parent)?Qce(bc(e.parent,(e=>gA(e)||ld(e)))):e;case 255:return{start:w(e.getChildren(e.getSourceFile()),(e=>109===e.kind)),end:e.caseBlock};default:return e}}function Yce(e,t,n){if(!n)return;const r=Hce(n)?ple(n.start,t,n.end):ple(n,t);return r.start!==e.start||r.length!==e.length?{contextSpan:r}:void 0}var Zce,Xce=(e=>(e[e.Other=0]="Other",e[e.References=1]="References",e[e.Rename=2]="Rename",e))(Xce||{});function $ce(e,t,n,r,i){const o=HY(r,i),s={use:1},a=Zce.getReferencedSymbolsForNode(i,o,e,n,t,s),c=e.getTypeChecker(),l=Zce.getAdjustedNode(o,s),u=function(e){return 90===e.kind||!!yg(e)||vg(e)||137===e.kind&&xN(e.parent)}(l)?c.getSymbolAtLocation(l):void 0;return a&&a.length?J(a,(({definition:e,references:n})=>e&&{definition:c.runWithCancellationToken(t,(t=>function(e,t,n){const r=(()=>{switch(e.type){case 0:{const{symbol:r}=e,{displayParts:i,kind:o}=sle(r,t,n),s=i.map((e=>e.text)).join(""),a=r.declarations&&we(r.declarations);return{...ole(a?Oc(a)||a:n),name:s,kind:o,displayParts:i,context:Qce(a)}}case 1:{const{node:t}=e;return{...ole(t),name:t.text,kind:"label",displayParts:[CX(t.text,17)]}}case 2:{const{node:t}=e,n=Vs(t.kind);return{...ole(t),name:n,kind:"keyword",displayParts:[{text:n,kind:"keyword"}]}}case 3:{const{node:n}=e,r=t.getSymbolAtLocation(n),i=r&&Vde.getSymbolDisplayPartsDocumentationAndSymbolKind(t,r,n.getSourceFile(),hY(n),n).displayParts||[FX("this")];return{...ole(n),name:"this",kind:"var",displayParts:i}}case 4:{const{node:t}=e;return{...ole(t),name:t.text,kind:"var",displayParts:[CX(ep(t),8)]}}case 5:return{textSpan:FZ(e.reference),sourceFile:e.file,name:e.reference.fileName,kind:"string",displayParts:[CX(`"${e.reference.fileName}"`,8)]};default:return Tn.assertNever(e)}})(),{sourceFile:i,textSpan:o,name:s,kind:a,displayParts:c,context:l}=r;return{containerKind:"",containerName:"",fileName:i.fileName,kind:a,name:s,textSpan:o,displayParts:c,...Yce(o,i,l)}}(e,t,o))),references:n.map((e=>function(e,t){const n=cle(e);return t?{...n,isDefinition:0!==e.kind&&hle(e.node,t)}:n}(e,u)))})):void 0}function ele(e,t,n,r,i){const o=HY(r,i);let s;const a=tle(e,t,n,o,i);if(211===o.parent.kind||208===o.parent.kind||212===o.parent.kind||108===o.kind)s=a&&[...a];else if(a){const r=ot(a),i=new Map;for(;!r.isEmpty();){const o=r.dequeue();if(!jx(i,Gz(o.node)))continue;s=_e(s,o);const a=tle(e,t,n,o.node,o.node.pos);a&&r.enqueue(...a)}}const c=e.getTypeChecker();return R(s,(e=>function(e,t){const n=lle(e);if(0!==e.kind){const{node:r}=e;return{...n,...dle(r,t)}}return{...n,kind:"",displayParts:[]}}(e,c)))}function tle(e,t,n,r,i){if(307===r.kind)return;const o=e.getTypeChecker();if(304===r.parent.kind){const e=[];return Zce.getReferenceEntriesForShorthandPropertyAssignment(r,o,(t=>e.push(Wce(t)))),e}if(108===r.kind||mm(r.parent)){const e=o.getSymbolAtLocation(r);return e.valueDeclaration&&[Wce(e.valueDeclaration)]}return rle(i,r,e,n,t,{implementations:!0,use:1})}function nle(e,t,n,r,i,o,s){return R(ile(Zce.getReferencedSymbolsForNode(i,r,e,n,t,o)),(t=>s(t,r,e.getTypeChecker())))}function rle(e,t,n,r,i,o={},s=new Set(r.map((e=>e.fileName)))){return ile(Zce.getReferencedSymbolsForNode(e,t,n,r,i,o,s))}function ile(e){return e&&U(e,(e=>e.references))}function ole(e){const t=e.getSourceFile();return{sourceFile:t,textSpan:ple(_N(e)?e.expression:e,t)}}function sle(e,t,n){const r=Zce.getIntersectingMeaningFromDeclarations(n,e),i=e.declarations&&we(e.declarations)||n,{displayParts:o,symbolKind:s}=Vde.getSymbolDisplayPartsDocumentationAndSymbolKind(t,e,i.getSourceFile(),i,i,r);return{displayParts:o,kind:s}}function ale(e,t,n,r,i){return{...lle(e),...r&&ule(e,t,n,i)}}function cle(e){const t=lle(e);if(0===e.kind)return{...t,isWriteAccess:!1};const{kind:n,node:r}=e;return{...t,isWriteAccess:mle(r),isInString:2===n||void 0}}function lle(e){if(0===e.kind)return{textSpan:e.textSpan,fileName:e.fileName};{const t=e.node.getSourceFile(),n=ple(e.node,t);return{textSpan:n,fileName:t.fileName,...Yce(n,t,e.context)}}}function ule(e,t,n,r){if(0!==e.kind&&(YC(t)||Hd(t))){const{node:r,kind:i}=e,o=r.parent,s=t.text,a=HI(o);if(a||lX(o)&&o.name===r&&void 0===o.dotDotDotToken){const e={prefixText:s+": "},t={suffixText:": "+s};if(3===i)return e;if(4===i)return t;if(a){const n=o.parent;return tA(n)&&gA(n.parent)&&uh(n.parent.left)?e:t}return e}if(xI(o)&&!o.propertyName){return A((kI(t.parent)?n.getExportSpecifierLocalTargetSymbol(t.parent):n.getSymbolAtLocation(t)).declarations,o)?{prefixText:s+" as "}:bQ}if(kI(o)&&!o.propertyName)return t===e.node||n.getSymbolAtLocation(t)===n.getSymbolAtLocation(e.node)?{prefixText:s+" as "}:{suffixText:" as "+s}}if(0!==e.kind&&DC(e.node)&&Bx(e.node.parent)){const e=oX(r);return{prefixText:e,suffixText:e}}return bQ}function dle(e,t){const n=t.getSymbolAtLocation(Sd(e)&&e.name?e.name:e);return n?sle(n,t,e):210===e.kind?{kind:"interface",displayParts:[IX(21),FX("object literal"),IX(22)]}:231===e.kind?{kind:"local class",displayParts:[IX(21),FX("anonymous local class"),IX(22)]}:{kind:gY(e),displayParts:[]}}function _le(e){const t=lle(e);if(0===e.kind)return{fileName:t.fileName,span:{textSpan:t.textSpan,kind:"reference"}};const n=mle(e.node),r={textSpan:t.textSpan,kind:n?"writtenReference":"reference",isInString:2===e.kind||void 0,...t.contextSpan&&{contextSpan:t.contextSpan}};return{fileName:t.fileName,span:r}}function ple(e,t,n){let r=e.getStart(t),i=(n||e).getEnd();return Hd(e)&&i-r>2&&(Tn.assert(void 0===n),r+=1,i-=1),269===(null==n?void 0:n.kind)&&(i=n.getFullStart()),tc(r,i)}function fle(e){return 0===e.kind?e.textSpan:ple(e.node,e.node.getSourceFile())}function mle(e){const t=yg(e);return!!t&&function(e){if(33554432&e.flags)return!0;switch(e.kind){case 226:case 208:case 263:case 231:case 90:case 266:case 306:case 281:case 273:case 271:case 276:case 264:case 338:case 346:case 291:case 267:case 270:case 274:case 280:case 169:case 304:case 265:case 168:return!0;case 303:return!CZ(e.parent);case 262:case 218:case 176:case 174:case 177:case 178:return!!e.body;case 260:case 172:return!!e.initializer||JI(e.parent);case 173:case 171:case 348:case 341:return!1;default:return Tn.failBadSyntaxKind(e)}}(t)||90===e.kind||kx(e)}function hle(e,t){var n;if(!t)return!1;const r=yg(e)||(90===e.kind?e.parent:vg(e)||137===e.kind&&xN(e.parent)?e.parent.parent:void 0),i=r&&gA(r)?r.left:void 0;return!(!r||!(null==(n=t.declarations)?void 0:n.some((e=>e===r||e===i))))}(e=>{function t(e,t){return 1===t.use?e=JY(e):2===t.use&&(e=WY(e)),e}function n(e,t,n){let r;const i=t.get(e.path)||_;for(const o of i)if(CK(o)){const e=n.getSourceFileByPath(o.file),t=AK(n,o);NK(t)&&(r=_e(r,{kind:0,fileName:e.fileName,textSpan:FZ(t)}))}return r}function r(e,t,n){if(e.parent&&lI(e.parent)){const e=n.getAliasedSymbol(t),r=n.getMergedSymbol(e);if(e!==r)return r}}function i(e,t,n,r,i,s){const c=1536&e.flags&&e.declarations&&w(e.declarations,YI);if(!c)return;const u=e.exports.get("export="),d=a(t,e,!!u,n,s);if(!u||!s.has(c.fileName))return d;const _=t.getTypeChecker();return o(t,d,l(e=Sx(u,_),void 0,n,s,_,r,i))}function o(e,...t){let n;for(const r of t)if(r&&r.length)if(n)for(const t of r){if(!t.definition||0!==t.definition.type){n.push(t);continue}const r=t.definition.symbol,i=E(n,(e=>!!e.definition&&0===e.definition.type&&e.definition.symbol===r));if(-1===i){n.push(t);continue}const o=n[i];n[i]={definition:o.definition,references:o.references.concat(t.references).sort(((t,n)=>{const r=s(e,t),i=s(e,n);if(r!==i)return Pt(r,i);const o=fle(t),a=fle(n);return o.start!==a.start?Pt(o.start,a.start):Pt(o.length,a.length)}))}}else n=r;return n}function s(e,t){const n=0===t.kind?e.getSourceFile(t.fileName):t.node.getSourceFile();return e.getSourceFiles().indexOf(n)}function a(e,t,n,r,i){Tn.assert(!!t.valueDeclaration);const o=J(Fce(e,r,t),(e=>{if("import"===e.kind){const t=e.literal.parent;if(HN(t)){const e=_t(t.parent,GN);if(n&&!e.qualifier)return}return Wce(e.literal)}if("implicit"===e.kind){return Wce(e.literal.text!==e_&&QM(e.referencingFile,(e=>2&e.transformFlags?II(e)||DI(e)||OI(e)?e:void 0:"skip"))||e.referencingFile.statements[0]||e.referencingFile)}return{kind:0,fileName:e.referencingFile.fileName,textSpan:FZ(e.ref)}}));if(t.declarations)for(const a of t.declarations)switch(a.kind){case 307:break;case 267:i.has(a.getSourceFile().fileName)&&o.push(Wce(a.name));break;default:Tn.assert(!!(33554432&t.flags),"Expected a module symbol to be declared by a SourceFile or ModuleDeclaration.")}const s=t.exports.get("export=");if(null==s?void 0:s.declarations)for(const a of s.declarations){const e=a.getSourceFile();if(i.has(e.fileName)){const t=gA(a)&&nA(a.left)?a.left.expression:SI(a)?Tn.checkDefined(FY(a,95,e)):Oc(a)||a;o.push(Wce(t))}}return o.length?[{definition:{type:0,symbol:t},references:o}]:_}function c(e){return 148===e.kind&&KN(e.parent)&&148===e.parent.operator}function l(e,t,n,r,i,o,s){const a=t&&function(e,t,n,r){const{parent:i}=t;if(kI(i)&&r)return R(t,e,i,n);return y(e.declarations,(r=>{if(!r.parent){if(33554432&e.flags)return;Tn.fail(`Unexpected symbol at ${Tn.formatSyntaxKind(t.kind)}: ${Tn.formatSymbol(e)}`)}return PN(r.parent)&&jN(r.parent.parent)?n.getPropertyOfType(n.getTypeFromTypeNode(r.parent.parent),e.name):void 0}))}(e,t,i,!X(s))||e,c=t?G(t,a):7,l=[],d=new g(n,r,t?function(e){switch(e.kind){case 176:case 137:return 1;case 80:if(xu(e.parent))return Tn.assert(e.parent.name===e),2;default:return 0}}(t):0,i,o,c,s,l),_=X(s)&&a.declarations?w(a.declarations,kI):void 0;if(_)F(_.name,a,_,d.createSearch(t,e,void 0),d,!0,!0);else if(t&&90===t.kind&&"default"===a.escapedName&&a.parent)L(t,a,d),v(t,a,{exportingModuleSymbol:a.parent,exportKind:1},d);else{const e=d.createSearch(t,a,void 0,{allSearchSymbols:t?K(a,t,i,2===s.use,!!s.providePrefixAndSuffixTextForRename,!!s.implementations):[a]});u(a,d,e)}return l}function u(e,t,n){const r=function(e){const{declarations:t,flags:n,parent:r,valueDeclaration:i}=e;if(i&&(218===i.kind||231===i.kind))return i;if(!t)return;if(8196&n){const e=w(t,(e=>Vv(e,2)||iu(e)));return e?Mg(e,263):void 0}if(t.some(lX))return;const o=r&&!(262144&e.flags);if(o&&(!a_(r)||r.globalExports))return;let s;for(const a of t){const e=hY(a);if(s&&s!==e)return;if(!e||307===e.kind&&!of(e))return;if(s=e,lA(s)){let e;for(;e=Wh(s);)s=e}}return o?s.getSourceFile():s}(e);if(r)D(r,r.getSourceFile(),n,t,!(YI(r)&&!A(t.sourceFiles,r)));else for(const i of t.sourceFiles)t.cancellationToken.throwIfCancellationRequested(),S(i,n,t)}let d;var p;function f(e){if(!(33555968&e.flags))return;const t=e.declarations&&w(e.declarations,(e=>!YI(e)&&!sI(e)));return t&&t.symbol}e.getReferencedSymbolsForNode=function(e,s,u,d,p,f={},m=new Set(d.map((e=>e.fileName)))){var h,g;if(YI(s=t(s,f))){const t=gle.getReferenceAtPosition(s,e,u);if(!(null==t?void 0:t.file))return;const r=u.getTypeChecker().getMergedSymbol(t.file.symbol);if(r)return a(u,r,!1,d,m);const i=u.getFileIncludeReasons();if(!i)return;return[{definition:{type:5,reference:t.reference,file:s},references:n(t.file,i,u)||_}]}if(!f.implementations){const e=function(e,t,n){if(UZ(e.kind)){if(116===e.kind&&pA(e.parent))return;if(148===e.kind&&!c(e))return;return function(e,t,n,r){const i=U(e,(e=>(n.throwIfCancellationRequested(),J(k(e,Vs(t),e),(e=>{if(e.kind===t&&(!r||r(e)))return Wce(e)})))));return i.length?[{definition:{type:2,node:i[0].node},references:i}]:void 0}(t,e.kind,n,148===e.kind?c:void 0)}if(hf(e.parent)&&e.parent.name===e)return function(e,t){const n=U(e,(e=>(t.throwIfCancellationRequested(),J(k(e,"meta",e),(e=>{const t=e.parent;if(hf(t))return Wce(t)})))));return n.length?[{definition:{type:2,node:n[0].node},references:n}]:void 0}(t,n);if(iN(e)&&bN(e.parent))return[{definition:{type:2,node:e},references:[Wce(e)]}];if(oY(e)){const t=rY(e.parent,e.text);return t&&N(t.parent,t)}if(sY(e))return N(e.parent,e);if(yY(e))return function(e,t,n){let r=cm(e,!1,!1),i=256;switch(r.kind){case 174:case 173:if(Hf(r)){i&=ib(r),r=r.parent;break}case 172:case 171:case 176:case 177:case 178:i&=ib(r),r=r.parent;break;case 307:if(tO(r)||V(e))return;case 262:case 218:break;default:return}const o=U(307===r.kind?t:[r.getSourceFile()],(e=>(n.throwIfCancellationRequested(),k(e,"this",YI(r)?e:r).filter((e=>{if(!yY(e))return!1;const t=cm(e,!1,!1);if(!yd(t))return!1;switch(r.kind){case 218:case 262:return r.symbol===t.symbol;case 174:case 173:return Hf(r)&&r.symbol===t.symbol;case 231:case 263:case 210:return t.parent&&yd(t.parent)&&r.symbol===t.parent.symbol&&Jv(t)===!!i;case 307:return 307===t.kind&&!tO(t)&&!V(e)}}))))).map((e=>Wce(e))),s=y(o,(e=>fN(e.node.parent)?e.node:void 0));return[{definition:{type:3,node:s||e},references:o}]}(e,t,n);if(108===e.kind)return function(e){let t=_m(e,!1);if(!t)return;let n=256;switch(t.kind){case 172:case 171:case 174:case 173:case 176:case 177:case 178:n&=ib(t),t=t.parent;break;default:return}const r=J(k(t.getSourceFile(),"super",t),(e=>{if(108!==e.kind)return;const r=_m(e,!1);return r&&Jv(r)===!!n&&r.parent.symbol===t.symbol?Wce(e):void 0}));return[{definition:{type:0,symbol:t.symbol},references:r}]}(e);return}(s,d,p);if(e)return e}const v=u.getTypeChecker(),b=v.getSymbolAtLocation(xN(s)&&s.parent.name||s);if(!b){if(!f.implementations&&Hd(s)){if(cX(s)){const e=u.getFileIncludeReasons(),t=null==(g=null==(h=u.getResolvedModuleFromModuleSpecifier(s))?void 0:h.resolvedModule)?void 0:g.resolvedFileName,r=t?u.getSourceFile(t):void 0;if(r)return[{definition:{type:4,node:s},references:n(r,e,u)||_}]}return function(e,t,n,r){const i=UY(e,n),o=U(t,(t=>(r.throwIfCancellationRequested(),J(k(t,e.text),(r=>{if(Hd(r)&&r.text===e.text){if(!i)return RC(r)&&!rx(r,t)?void 0:Wce(r,2);{const e=UY(r,n);if(i!==n.getStringType()&&(i===e||function(e,t){if(hN(e.parent))return t.getPropertyOfType(t.getTypeAtLocation(e.parent.parent),e.text)}(r,n)))return Wce(r,2)}}})))));return[{definition:{type:4,node:e},references:o}]}(s,d,v,p)}return}if("export="===b.escapedName)return a(u,b.parent,!1,d,m);const x=i(b,u,d,p,f,m);if(x&&!(33554432&b.flags))return x;const S=r(s,b,v),T=S&&i(S,u,d,p,f,m);return o(u,x,l(b,s,d,m,v,p,f),T)},e.getAdjustedNode=t,e.getReferencesForFileName=function(e,t,r,i=new Set(r.map((e=>e.fileName)))){var o,s;const c=null==(o=t.getSourceFile(e))?void 0:o.symbol;if(c)return(null==(s=a(t,c,!1,r,i)[0])?void 0:s.references)||_;const l=t.getFileIncludeReasons(),u=t.getSourceFile(e);return u&&l&&n(u,l,t)||_},(p=d||(d={}))[p.None=0]="None",p[p.Constructor=1]="Constructor",p[p.Class=2]="Class";class g{constructor(e,t,n,r,i,o,s,a){this.sourceFiles=e,this.sourceFilesSet=t,this.specialSearchKind=n,this.checker=r,this.cancellationToken=i,this.searchMeaning=o,this.options=s,this.result=a,this.inheritsFromCache=new Map,this.markSeenContainingTypeReference=VZ(),this.markSeenReExportRHS=VZ(),this.symbolIdToReferences=[],this.sourceFileToSeenSymbols=[]}includesSourceFile(e){return this.sourceFilesSet.has(e.fileName)}getImportSearches(e,t){return this.importTracker||(this.importTracker=Dce(this.sourceFiles,this.sourceFilesSet,this.checker,this.cancellationToken)),this.importTracker(e,t,2===this.options.use)}createSearch(e,t,n,r={}){const{text:i=Ky(Cc(Lb(t)||f(t)||t)),allSearchSymbols:o=[t]}=r,s=Tc(i),a=this.options.implementations&&e?function(e,t,n){const r=uY(e)?e.parent:void 0,i=r&&n.getTypeAtLocation(r.expression),o=J(i&&(i.isUnionOrIntersection()?i.types:i.symbol===t.parent?void 0:[i]),(e=>e.symbol&&96&e.symbol.flags?e.symbol:void 0));return 0===o.length?void 0:o}(e,t,this.checker):void 0;return{symbol:t,comingFrom:n,text:i,escapedText:s,parents:a,allSearchSymbols:o,includes:e=>A(o,e)}}referenceAdder(e){const t=Qz(e);let n=this.symbolIdToReferences[t];return n||(n=this.symbolIdToReferences[t]=[],this.result.push({definition:{type:0,symbol:e},references:n})),(e,t)=>n.push(Wce(e,t))}addStringOrCommentReference(e,t){this.result.push({definition:void 0,references:[{kind:0,fileName:e,textSpan:t}]})}markSearchedSymbols(e,t){const n=Gz(e),r=this.sourceFileToSeenSymbols[n]||(this.sourceFileToSeenSymbols[n]=new Set);let i=!1;for(const o of t)i=Q(r,Qz(o))||i;return i}}function v(e,t,n,r){const{importSearches:i,singleReferences:o,indirectUsers:s}=r.getImportSearches(t,n);if(o.length){const e=r.referenceAdder(t);for(const t of o)b(t,r)&&e(t)}for(const[a,c]of i)I(a.getSourceFile(),r.createSearch(a,c,1),r);if(s.length){let i;switch(n.exportKind){case 0:i=r.createSearch(e,t,1);break;case 1:i=2===r.options.use?void 0:r.createSearch(e,t,1,{text:"default"})}if(i)for(const e of s)S(e,i,r)}}function b(e,t){return!!P(e,t)&&(2!==t.options.use||!!YC(e)&&!(Ql(e.parent)&&"default"===e.escapedText))}function x(e,t){if(e.declarations)for(const n of e.declarations){const r=n.getSourceFile();I(r,t.createSearch(n,e,0),t,t.includesSourceFile(r))}}function S(e,t,n){void 0!==b8(e).get(t.escapedText)&&I(e,t,n)}function T(e,t,n,r,i=n){const o=cc(e.parent,e.parent.parent)?Ee(t.getSymbolsOfParameterPropertyDeclaration(e.parent,e.text)):t.getSymbolAtLocation(e);if(o)for(const s of k(n,o.name,i)){if(!YC(s)||s===e||s.escapedText!==e.escapedText)continue;const n=t.getSymbolAtLocation(s);if(n===o||t.getShorthandAssignmentValueSymbol(s.parent)===o||kI(s.parent)&&R(s,n,s.parent,t)===o){const e=r(s);if(e)return e}}}function k(e,t,n=e){return J(C(e,t,n),(t=>{const n=HY(e,t);return n===e?void 0:n}))}function C(e,t,n=e){const r=[];if(!t||!t.length)return r;const i=e.text,o=i.length,s=t.length;let a=i.indexOf(t,n.pos);for(;a>=0&&!(a>n.end);){const e=a+s;0!==a&&Na(i.charCodeAt(a-1),99)||e!==o&&Na(i.charCodeAt(e),99)||r.push(a),a=i.indexOf(t,a+s+1)}return r}function N(e,t){const n=e.getSourceFile(),r=t.text,i=J(k(n,r,e),(e=>e===t||oY(e)&&rY(e,r)===t?Wce(e):void 0));return[{definition:{type:1,node:t},references:i}]}function I(e,t,n,r=!0){return n.cancellationToken.throwIfCancellationRequested(),D(e,e,t,n,r)}function D(e,t,n,r,i){if(r.markSearchedSymbols(t,n.allSearchSymbols))for(const o of C(t,n.text,e))O(t,o,n,r,i)}function P(e,t){return!!(VQ(e)&t.searchMeaning)}function O(e,t,n,r,i){const o=HY(e,t);if(!function(e,t){switch(e.kind){case 81:if(eD(e.parent))return!0;case 80:return e.text.length===t.length;case 15:case 11:{const n=e;return(fY(n)||_Y(e)||mY(e)||iA(e.parent)&&_h(e.parent)&&e.parent.arguments[1]===e)&&n.text.length===t.length}case 9:return fY(e)&&e.text.length===t.length;case 90:return 7===t.length;default:return!1}}(o,n.text))return void(!r.options.implementations&&(r.options.findInStrings&&iZ(e,t)||r.options.findInComments&&AZ(e,t))&&r.addStringOrCommentReference(e.fileName,ec(t,n.text.length)));if(!P(o,r))return;let s=r.checker.getSymbolAtLocation(o);if(!s)return;const a=o.parent;if(xI(a)&&a.propertyName===o)return;if(kI(a))return Tn.assert(80===o.kind),void F(o,s,a,n,r,i);if(Ll(a)&&a.isNameFirst&&a.typeExpression&&pD(a.typeExpression.type)&&a.typeExpression.type.jsDocPropertyTags&&m(a.typeExpression.type.jsDocPropertyTags))return void function(e,t,n,r){const i=r.referenceAdder(n.symbol);L(t,n.symbol,r),h(e,(e=>{dN(e.name)&&i(e.name.left)}))}(a.typeExpression.type.jsDocPropertyTags,o,n,r);const c=function(e,t,n,r){const{checker:i}=r;return W(t,n,i,!1,2!==r.options.use||!!r.options.providePrefixAndSuffixTextForRename,((n,r,i,o)=>(i&&H(t)!==H(i)&&(i=void 0),e.includes(i||r||n)?{symbol:!r||6&bx(n)?n:r,kind:o}:void 0)),(t=>!(e.parents&&!e.parents.some((e=>q(t.parent,e,r.inheritsFromCache,i))))))}(n,s,o,r);if(c){switch(r.specialSearchKind){case 0:i&&L(o,c,r);break;case 1:!function(e,t,n,r){WQ(e)&&L(e,n.symbol,r);const i=()=>r.referenceAdder(n.symbol);if(xu(e.parent))Tn.assert(90===e.kind||e.parent.name===e),function(e,t,n){const r=j(e);if(r&&r.declarations)for(const i of r.declarations){const e=FY(i,137,t);Tn.assert(176===i.kind&&!!e),n(e)}e.exports&&e.exports.forEach((e=>{const t=e.valueDeclaration;if(t&&174===t.kind){const e=t.body;e&&Z(e,110,(e=>{WQ(e)&&n(e)}))}}))}(n.symbol,t,i());else{const t=yb(tY(e).parent);t&&(function(e,t){const n=j(e.symbol);if(!n||!n.declarations)return;for(const r of n.declarations){Tn.assert(176===r.kind);const e=r.body;e&&Z(e,108,(e=>{JQ(e)&&t(e)}))}}(t,i()),function(e,t){if(function(e){return!!j(e.symbol)}(e))return;const n=e.symbol,r=t.createSearch(void 0,n,void 0);u(n,t,r)}(t,r))}}(o,e,n,r);break;case 2:!function(e,t,n){L(e,t.symbol,n);const r=e.parent;if(2===n.options.use||!xu(r))return;Tn.assert(r.name===e);const i=n.referenceAdder(t.symbol);for(const o of r.members)ku(o)&&Jv(o)&&o.body&&o.body.forEachChild((function e(t){110===t.kind?i(t):pu(t)||xu(t)||t.forEachChild(e)}))}(o,n,r);break;default:Tn.assertNever(r.specialSearchKind)}Um(o)&&$N(o.parent)&&Hm(o.parent.parent.parent)&&(s=o.parent.symbol,!s)||function(e,t,n,r){const i=jce(e,t,r.checker,1===n.comingFrom);if(!i)return;const{symbol:o}=i;0===i.kind?X(r.options)||x(o,r):v(e,o,i.exportInfo,r)}(o,s,n,r)}else!function({flags:e,valueDeclaration:t},n,r){const i=r.checker.getShorthandAssignmentValueSymbol(t),o=t&&Oc(t);33554432&e||!o||!n.includes(i)||L(o,i,r)}(s,n,r)}function F(e,t,n,r,i,o,s){Tn.assert(!s||!!i.options.providePrefixAndSuffixTextForRename,"If alwaysGetReferences is true, then prefix/suffix text must be enabled");const{parent:a,propertyName:c,name:l}=n,u=a.parent,d=R(e,t,n,i.checker);if(s||r.includes(d)){if(c?e===c?(u.moduleSpecifier||_(),o&&2!==i.options.use&&i.markSeenReExportRHS(l)&&L(l,Tn.checkDefined(n.symbol),i)):i.markSeenReExportRHS(e)&&_():2===i.options.use&&"default"===l.escapedText||_(),!X(i.options)||s){const t="default"===e.escapedText||"default"===n.name.escapedText?1:0,r=Tn.checkDefined(n.symbol),o=zce(r,t,i.checker);o&&v(e,r,o,i)}if(1!==r.comingFrom&&u.moduleSpecifier&&!c&&!X(i.options)){const e=i.checker.getExportSpecifierLocalTargetSymbol(n);e&&x(e,i)}}function _(){o&&L(e,d,i)}}function R(e,t,n,r){return function(e,t){const{parent:n,propertyName:r,name:i}=t;return Tn.assert(r===e||i===e),r?r===e:!n.parent.moduleSpecifier}(e,n)&&r.getExportSpecifierLocalTargetSymbol(n)||t}function L(e,t,n){const{kind:r,symbol:i}="kind"in t?t:{kind:void 0,symbol:t};if(2===n.options.use&&90===e.kind)return;const o=n.referenceAdder(i);n.options.implementations?function(e,t,n){if(gg(e)&&(r=e.parent,33554432&r.flags?!rI(r)&&!iI(r):jf(r)?Bd(r):mu(r)?r.body:xu(r)||gd(r)))return void t(e);var r;if(80!==e.kind)return;304===e.parent.kind&&Y(e,n.checker,t);const i=z(e);if(i)return void t(i);const o=bc(e,(e=>!dN(e.parent)&&!Du(e.parent)&&!Nu(e.parent))),s=o.parent;if(Ud(s)&&s.type===o&&n.markSeenContainingTypeReference(s))if(Bd(s))a(s.initializer);else if(pu(s)&&s.body){const e=s.body;241===e.kind?Of(e,(e=>{e.expression&&a(e.expression)})):a(e)}else nd(s)&&a(s.expression);function a(e){B(e)&&t(e)}}(e,o,n):o(e,r)}function j(e){return e.members&&e.members.get("__constructor")}function z(e){return YC(e)||nA(e)?z(e.parent):wA(e)?dt(e.parent.parent,pn(xu,rI)):void 0}function B(e){switch(e.kind){case 217:return B(e.expression);case 219:case 218:case 210:case 231:case 209:return!0;default:return!1}}function q(e,t,n,r){if(e===t)return!0;const i=Qz(e)+","+Qz(t),o=n.get(i);if(void 0!==o)return o;n.set(i,!1);const s=!!e.declarations&&e.declarations.some((e=>Ig(e).some((e=>{const i=r.getTypeAtLocation(e);return!!i&&!!i.symbol&&q(i.symbol,t,n,r)}))));return n.set(i,s),s}function V(e){return 80===e.kind&&169===e.parent.kind&&e.parent.name===e}function K(e,t,n,r,i,o){const s=[];return W(e,t,n,r,!(r&&i),((t,n,r)=>{r&&H(e)!==H(r)&&(r=void 0),s.push(r||n||t)}),(()=>!o)),s}function W(e,t,n,i,o,s,a){const c=x8(t);if(c){const e=n.getShorthandAssignmentValueSymbol(t.parent);if(e&&i)return s(e,void 0,void 0,3);const r=n.getContextualType(c.parent),o=r&&y(S8(c,n,r,!0),(e=>_(e,4)));if(o)return o;const a=function(e,t){return CZ(e.parent.parent)?t.getPropertySymbolOfDestructuringAssignment(e):void 0}(t,n),l=a&&s(a,void 0,void 0,4);if(l)return l;const u=e&&s(e,void 0,void 0,3);if(u)return u}const l=r(t,e,n);if(l){const e=s(l,void 0,void 0,1);if(e)return e}const u=_(e);if(u)return u;if(e.valueDeclaration&&cc(e.valueDeclaration,e.valueDeclaration.parent)){const t=n.getSymbolsOfParameterPropertyDeclaration(_t(e.valueDeclaration,fN),e.name);return Tn.assert(2===t.length&&!!(1&t[0].flags)&&!!(4&t[1].flags)),_(1&e.flags?t[1]:t[0])}const d=r_(e,281);if(!i||d&&!d.propertyName){const e=d&&n.getExportSpecifierLocalTargetSymbol(d);if(e){const t=s(e,void 0,void 0,1);if(t)return t}}if(!i){let r;return r=o?lX(t.parent)?uX(n,t.parent):void 0:p(e,n),r&&_(r,4)}Tn.assert(i);if(o){const t=p(e,n);return t&&_(t,4)}function _(e,t){return y(n.getRootSymbols(e),(r=>s(e,r,void 0,t)||(r.parent&&96&r.parent.flags&&a(r)?function(e,t,n,r){const i=new Map;return o(e);function o(e){if(96&e.flags&&jx(i,Qz(e)))return y(e.declarations,(e=>y(Ig(e),(e=>{const i=n.getTypeAtLocation(e),s=i&&i.symbol&&n.getPropertyOfType(i,t);return i&&s&&(y(n.getRootSymbols(s),r)||o(i.symbol))}))))}}(r.parent,r.name,n,(n=>s(e,r,n,t))):void 0)))}function p(e,t){const n=r_(e,208);if(n&&lX(n))return uX(t,n)}}function H(e){if(!e.valueDeclaration)return!1;return!!(256&nb(e.valueDeclaration))}function G(e,t){let n=VQ(e);const{declarations:r}=t;if(r){let e;do{e=n;for(const e of r){const t=qQ(e);t&n&&(n|=t)}}while(n!==e)}return n}function Y(e,t,n){const r=t.getSymbolAtLocation(e),i=t.getShorthandAssignmentValueSymbol(r.valueDeclaration);if(i)for(const o of i.getDeclarations())1&qQ(o)&&n(o)}function Z(e,t,n){GM(e,(e=>{e.kind===t&&n(e),Z(e,t,n)}))}function X(e){return 2===e.use&&e.providePrefixAndSuffixTextForRename}e.eachExportReference=function(e,t,n,r,i,o,s,a){const c=Dce(e,new Set(e.map((e=>e.fileName))),t,n),{importSearches:l,indirectUsers:u,singleReferences:d}=c(r,{exportKind:s?1:0,exportingModuleSymbol:i},!1);for(const[_]of l)a(_);for(const _ of d)YC(_)&&GN(_.parent)&&a(_);for(const _ of u)for(const e of k(_,s?"default":o)){const n=t.getSymbolAtLocation(e),i=$(null==n?void 0:n.declarations,(e=>!!dt(e,SI)));!YC(e)||Ql(e.parent)||n!==r&&!i||a(e)}},e.isSymbolReferencedInFile=function(e,t,n,r=n){return T(e,t,n,(()=>!0),r)||!1},e.eachSymbolReferenceInFile=T,e.getTopMostDeclarationNamesInFile=function(e,t){return M(k(t,e),(e=>!!yg(e))).reduce(((e,t)=>{const n=function(e){let t=0;for(;e;)e=hY(e),t++;return t}(t);return $(e.declarationNames)&&n!==e.depth?n<e.depth&&(e.declarationNames=[t],e.depth=n):(e.declarationNames.push(t),e.depth=n),e}),{depth:1/0,declarationNames:[]}).declarationNames},e.someSignatureUsage=function(e,t,n,r){if(!e.name||!YC(e.name))return!1;const i=Tn.checkDefined(n.getSymbolAtLocation(e.name));for(const o of t)for(const t of k(o,i.name)){if(!YC(t)||t===e.name||t.escapedText!==e.name.escapedText)continue;const o=tY(t),s=iA(o.parent)&&o.parent.expression===o?o.parent:void 0,a=n.getSymbolAtLocation(t);if(a&&n.getRootSymbols(a).some((e=>e===i))&&r(t,s))return!0}return!1},e.getIntersectingMeaningFromDeclarations=G,e.getReferenceEntriesForShorthandPropertyAssignment=Y})(Zce||(Zce={}));var gle={};function yle(e,t,n,r,i){var o;const s=ble(t,n,e),a=s&&[(c=s.reference.fileName,l=s.fileName,u=s.unverified,{fileName:l,textSpan:tc(0,0),kind:"script",name:c,containerName:void 0,containerKind:void 0,unverified:u})]||_;var c,l,u;if(null==s?void 0:s.file)return a;const d=HY(t,n);if(d===t)return;const{parent:p}=d,f=e.getTypeChecker();if(164===d.kind||YC(d)&&TD(p)&&p.tagName===d)return function(e,t){const n=bc(t,bu);if(!n||!n.name)return;const r=bc(n,xu);if(!r)return;const i=Cg(r);if(!i)return;const o=fg(i.expression),s=SA(o)?o.symbol:e.getSymbolAtLocation(o);if(!s)return;const a=wc(Bp(n.name)),c=Wv(n)?e.getPropertyOfType(e.getTypeOfSymbol(s),a):e.getPropertyOfType(e.getDeclaredTypeOfSymbol(s),a);if(!c)return;return Nle(e,c,t)}(f,d)||_;if(oY(d)){const e=rY(d.parent,d.text);return e?[Ile(f,e,"label",d.text,void 0)]:void 0}switch(d.kind){case 107:const e=bc(d.parent,(e=>bN(e)?"quit":mu(e)));return e?[Mle(f,e)]:void 0;case 90:if(!VI(d.parent))break;case 84:const n=bc(d.parent,GA);if(n)return[Dle(n,t)]}if(135===d.kind){const e=bc(d,(e=>mu(e)));return e&&$(e.modifiers,(e=>134===e.kind))?[Mle(f,e)]:void 0}if(127===d.kind){const e=bc(d,(e=>mu(e)));return e&&e.asteriskToken?[Mle(f,e)]:void 0}if(iN(d)&&bN(d.parent)){const e=d.parent.parent,{symbol:t,failedAliasResolution:n}=Cle(e,f,i),r=M(e.members,bN),o=t?f.symbolToString(t,e):"",s=d.getSourceFile();return R(r,(e=>{let{pos:t}=ex(e);return t=da(s.text,t),Ile(f,e,"constructor","static {}",o,!1,n,{start:t,length:6})}))}let{symbol:m,failedAliasResolution:g}=Cle(d,f,i),y=d;if(r&&g){const e=h([d,...(null==m?void 0:m.declarations)||_],(e=>bc(e,Ap))),t=e&&Ch(e);t&&(({symbol:m,failedAliasResolution:g}=Cle(t,f,i)),y=t)}if(!m&&cX(y)){const n=null==(o=e.getResolvedModuleFromModuleSpecifier(y,t))?void 0:o.resolvedModule;if(n)return[{name:y.text,fileName:n.resolvedFileName,containerName:void 0,containerKind:void 0,kind:"script",textSpan:ec(0,0),failedAliasResolution:g,isAmbient:lO(n.resolvedFileName),unverified:y!==d}]}if(!m)return te(a,function(e,t){return J(t.getIndexInfosAtLocation(e),(e=>e.declaration&&Mle(t,e.declaration)))}(d,f));if(r&&T(m.declarations,(e=>e.getSourceFile().fileName===t.fileName)))return;const v=function(e,t){const n=function(e){const t=bc(e,(e=>!uY(e))),n=null==t?void 0:t.parent;return n&&Wu(n)&&bm(n)===t?n:void 0}(t),r=n&&e.getResolvedSignature(n);return dt(r&&r.declaration,(e=>pu(e)&&!AN(e)))}(f,d);if(v&&(!Pd(d.parent)||!function(e){switch(e.kind){case 176:case 185:case 179:case 180:return!0;default:return!1}}(v))){const e=Mle(f,v,g);if(f.getRootSymbols(m).some((e=>function(e,t){var n;return e===t.symbol||e===t.symbol.parent||bb(t.parent)||!Wu(t.parent)&&e===(null==(n=dt(t.parent,yd))?void 0:n.symbol)}(e,v))))return[e];{const t=Nle(f,m,d,g,v)||_;return 108===d.kind?[e,...t]:[...t,e]}}if(304===d.parent.kind){const e=f.getShorthandAssignmentValueSymbol(m.valueDeclaration);return te((null==e?void 0:e.declarations)?e.declarations.map((t=>Ale(t,f,e,d,!1,g))):_,vle(f,d))}if(du(d)&&$N(p)&&ZN(p.parent)&&d===(p.propertyName||p.name)){const e=HZ(d),t=f.getTypeAtLocation(p.parent);return void 0===e?_:U(t.isUnion()?t.types:[t],(t=>{const n=t.getProperty(e);return n&&Nle(f,n,d)}))}const b=vle(f,d);return te(a,b.length?b:Nle(f,m,d,g))}function vle(e,t){const n=x8(t);if(n){const r=n&&e.getContextualType(n.parent);if(r)return U(S8(n,e,r,!1),(n=>Nle(e,n,t)))}return _}function ble(e,t,n){var r,i;const o=Ole(e.referencedFiles,t);if(o){const t=n.getSourceFileFromReference(e,o);return t&&{reference:o,fileName:t.fileName,file:t,unverified:!1}}const s=Ole(e.typeReferenceDirectives,t);if(s){const t=null==(r=n.getResolvedTypeReferenceDirectiveFromTypeReferenceDirective(s,e))?void 0:r.resolvedTypeReferenceDirective,i=t&&n.getSourceFile(t.resolvedFileName);return i&&{reference:s,fileName:i.fileName,file:i,unverified:!1}}const a=Ole(e.libReferenceDirectives,t);if(a){const e=n.getLibFileFromReference(a);return e&&{reference:a,fileName:e.fileName,file:e,unverified:!1}}if(e.imports.length||e.moduleAugmentations.length){const r=GY(e,t);let o;if(cX(r)&&za(r.text)&&(o=n.getResolvedModuleFromModuleSpecifier(r,e))){const t=null==(i=o.resolvedModule)?void 0:i.resolvedFileName,s=t||Xo(Vo(e.fileName),r.text);return{file:n.getSourceFile(s),fileName:s,reference:{pos:r.getStart(),end:r.getEnd(),fileName:r.text},unverified:!t}}}}a(gle,{createDefinitionInfo:()=>Ale,findReferenceInPosition:()=>Ole,getDefinitionAndBoundSpan:()=>Ele,getDefinitionAtPosition:()=>yle,getReferenceAtPosition:()=>ble,getTypeDefinitionAtPosition:()=>wle});var xle=new Set(["Array","ArrayLike","ReadonlyArray","Promise","PromiseLike","Iterable","IterableIterator","AsyncIterable","Set","WeakSet","ReadonlySet","Map","WeakMap","ReadonlyMap","Partial","Required","Readonly","Pick","Omit"]);function Sle(e,t){if(!t.aliasSymbol)return!1;const n=t.aliasSymbol.name;if(!xle.has(n))return!1;const r=e.resolveName(n,void 0,788968,!1);return!!r&&r===t.aliasSymbol}function Tle(e,t,n,r){var i,o;if(4&Mx(t)&&function(e,t){const n=t.symbol.name;if(!xle.has(n))return!1;const r=e.resolveName(n,void 0,788968,!1);return!!r&&r===t.target.symbol}(e,t))return kle(e.getTypeArguments(t)[0],e,n,r);if(Sle(e,t)&&t.aliasTypeArguments)return kle(t.aliasTypeArguments[0],e,n,r);if(32&Mx(t)&&t.target&&Sle(e,t.target)){const s=null==(o=null==(i=t.aliasSymbol)?void 0:i.declarations)?void 0:o[0];if(s&&iI(s)&&NN(s.type)&&s.type.typeArguments)return kle(e.getTypeAtLocation(s.type.typeArguments[0]),e,n,r)}return[]}function wle(e,t,n){const r=HY(t,n);if(r===t)return;if(hf(r.parent)&&r.parent.name===r)return kle(e.getTypeAtLocation(r.parent),e,r.parent,!1);const{symbol:i,failedAliasResolution:o}=Cle(r,e,!1);if(!i)return;const s=e.getTypeOfSymbolAtLocation(i,r),a=function(e,t,n){if(t.symbol===e||e.valueDeclaration&&t.symbol&&$A(e.valueDeclaration)&&e.valueDeclaration.initializer===t.symbol.valueDeclaration){const e=t.getCallSignatures();if(1===e.length)return n.getReturnTypeOfSignature(Ee(e))}return}(i,s,e),c=a&&kle(a,e,r,o),[l,u]=c&&0!==c.length?[a,c]:[s,kle(s,e,r,o)];return u.length?[...Tle(e,l,r,o),...u]:!(111551&i.flags)&&788968&i.flags?Nle(e,Sx(i,e),r,o):void 0}function kle(e,t,n,r){return U(!e.isUnion()||32&e.flags?[e]:e.types,(e=>e.symbol&&Nle(t,e.symbol,n,r)))}function Ele(e,t,n){const r=yle(e,t,n);if(!r||0===r.length)return;const i=Ole(t.referencedFiles,n)||Ole(t.typeReferenceDirectives,n)||Ole(t.libReferenceDirectives,n);if(i)return{definitions:r,textSpan:FZ(i)};const o=HY(t,n);return{definitions:r,textSpan:ec(o.getStart(),o.getWidth())}}function Cle(e,t,n){const r=t.getSymbolAtLocation(e);let i=!1;if((null==r?void 0:r.declarations)&&2097152&r.flags&&!n&&function(e,t){if(80!==e.kind)return!1;if(e.parent===t)return!0;if(274===t.kind)return!1;return!0}(e,r.declarations[0])){const e=t.getAliasedSymbol(r);if(e.declarations)return{symbol:e};i=!0}return{symbol:r,failedAliasResolution:i}}function Nle(e,t,n,r,i){const o=M(t.declarations,(e=>e!==i)),s=function(){if(32&t.flags&&!(19&t.flags)&&(WQ(n)||137===n.kind)){const e=w(o,xu);return e&&c(e.members,!0)}}()||(HQ(n)||pY(n)?c(o,!1):void 0);if(s)return s;const a=M(o,(e=>!function(e){if(!$m(e))return!1;const t=bc(e,(e=>!!bb(e)||!$m(e)&&"quit"));return!!t&&5===dh(t)}(e)));return R($(a)?a:o,(i=>Ale(i,e,t,n,!1,r)));function c(i,o){if(!i)return;const s=i.filter(o?xN:pu),a=s.filter((e=>!!e.body));return s.length?0!==a.length?a.map((r=>Ale(r,e,t,n))):[Ale(Ae(s),e,t,n,!1,r)]:void 0}}function Ale(e,t,n,r,i,o){const s=t.symbolToString(n),a=Vde.getSymbolKind(t,n,r),c=n.parent?t.symbolToString(n.parent,r):"";return Ile(t,e,a,s,c,i,o)}function Ile(e,t,n,r,i,o,s,a){const c=t.getSourceFile();if(!a){a=PZ(Oc(t)||t,c)}return{fileName:c.fileName,textSpan:a,kind:n,name:r,containerKind:void 0,containerName:i,...Ice.toContextSpan(a,c,Ice.getContextNode(t)),isLocal:!Ple(e,t),isAmbient:!!(33554432&t.flags),unverified:o,failedAliasResolution:s}}function Dle(e,t){const n=Ice.getContextNode(e),r=PZ(Hce(n)?n.start:n,t);return{fileName:t.fileName,textSpan:r,kind:"keyword",name:"switch",containerKind:void 0,containerName:"",...Ice.toContextSpan(r,t,n),isLocal:!0,isAmbient:!1,unverified:!1,failedAliasResolution:void 0}}function Ple(e,t){if(e.isDeclarationVisible(t))return!0;if(!t.parent)return!1;if(Bd(t.parent)&&t.parent.initializer===t)return Ple(e,t.parent);switch(t.kind){case 172:case 177:case 178:case 174:if(Vv(t,2))return!1;case 176:case 303:case 304:case 210:case 231:case 219:case 218:return Ple(e,t.parent);default:return!1}}function Mle(e,t,n){return Ale(t,e,t.symbol,t,!1,n)}function Ole(e,t){return w(e,(e=>Ja(e,t)))}var Fle={};a(Fle,{provideInlayHints:()=>zle});var Rle=e=>new RegExp(`^\\s?/\\*\\*?\\s?${e}\\s?\\*\\/\\s?$`);function Lle(e){return"literals"===e.includeInlayParameterNameHints}function jle(e){return!0===e.interactiveInlayHints}function zle(e){const{file:t,program:n,span:r,cancellationToken:i,preferences:o}=e,s=t.text,a=n.getCompilerOptions(),c=iX(t,o),l=n.getTypeChecker(),u=[];return function e(n){if(!n||0===n.getFullWidth())return;switch(n.kind){case 267:case 263:case 264:case 262:case 231:case 218:case 174:case 219:i.throwIfCancellationRequested()}if(!Ya(r,n.pos,n.getFullWidth()))return;if(Du(n)&&!wA(n))return;o.includeInlayVariableTypeHints&&$A(n)||o.includeInlayPropertyDeclarationTypeHints&&gN(n)?f(n):o.includeInlayEnumMemberValueHints&&QI(n)?function(e){if(e.initializer)return;const t=l.getConstantValue(e);void 0!==t&&(n=t.toString(),r=e.end,u.push({text:`= ${n}`,position:r,kind:"Enum",whitespaceBefore:!0}));var n,r}(n):function(e){return"literals"===e.includeInlayParameterNameHints||"all"===e.includeInlayParameterNameHints}(o)&&(iA(n)||oA(n))?function(e){const t=e.arguments;if(!t||!t.length)return;const n=[],r=l.getResolvedSignatureForSignatureHelp(e,n);if(!r||!n.length)return;let i=0;for(const s of t){const e=fg(s);if(Lle(o)&&!g(e)){i++;continue}let t=0;if(xA(e)){const n=l.getTypeAtLocation(e.expression);if(l.isTupleType(n)){const{elementFlags:e,fixedLength:r}=n.target;if(0===r)continue;const i=E(e,(e=>!(1&e)));(i<0?r:i)>0&&(t=i<0?r:i)}}const n=l.getParameterIdentifierInfoAtPosition(r,i);if(i+=t||1,n){const{parameter:t,parameterName:r,isRestParameter:i}=n;if(!(o.includeInlayParameterNameHintsWhenArgumentMatchesName||!m(e,r))&&!i)continue;const a=wc(r);if(h(e,a))continue;d(a,t,s.getStart(),i)}}}(n):(o.includeInlayFunctionParameterTypeHints&&mu(n)&&Qw(n)&&function(e){const t=l.getSignatureFromDeclaration(e);if(!t)return;for(let n=0;n<e.parameters.length&&n<t.parameters.length;++n){const r=e.parameters[n];if(!b(r))continue;if(Nv(r))continue;const i=y(t.parameters[n]);i&&_(i,r.questionToken?r.questionToken.end:r.name.end)}}(n),o.includeInlayFunctionLikeReturnTypeHints&&function(e){return uA(e)||lA(e)||tI(e)||vN(e)||SN(e)}(n)&&function(e){if(uA(e)&&!FY(e,21,t))return;if(Iv(e)||!e.body)return;const n=l.getSignatureFromDeclaration(e);if(!n)return;const r=l.getReturnTypeOfSignature(n);if(p(r))return;const i=v(r);i&&_(i,function(e){const n=FY(e,22,t);if(n)return n.end;return e.parameters.end}(e))}(n));return GM(n,e)}(t),u;function d(e,t,n,r){let i,s=`${r?"...":""}${e}`;jle(o)?(i=[x(s,t),{text:":"}],s=""):s+=":",u.push({text:s,position:n,kind:"Parameter",whitespaceAfter:!0,displayParts:i})}function _(e,t){u.push({text:"string"==typeof e?`: ${e}`:"",displayParts:"string"==typeof e?void 0:[{text:": "},...e],position:t,kind:"Type",whitespaceBefore:!0})}function p(e){return e.symbol&&1536&e.symbol.flags}function f(e){if(void 0===e.initializer&&(!gN(e)||1&l.getTypeAtLocation(e).flags)||Mu(e.name)||$A(e)&&!b(e))return;if(Nv(e))return;const t=l.getTypeAtLocation(e);if(p(t))return;const n=v(t);if(n){const t="string"==typeof n?n:n.map((e=>e.text)).join("");if(!1===o.includeInlayVariableTypeHintsWhenTypeMatchesName&&At(e.name.getText(),t))return;_(n,e.name.end)}}function m(e,t){return YC(e)?e.text===t:!!nA(e)&&e.name.text===t}function h(e,n){if(!Aa(n,MS(a),CS(t.scriptKind)))return!1;const r=wa(s,e.pos);if(!(null==r?void 0:r.length))return!1;const i=Rle(n);return $(r,(e=>i.test(s.substring(e.pos,e.end))))}function g(e){switch(e.kind){case 224:{const t=e.operand;return Kl(t)||YC(t)&&Yw(t.escapedText)}case 112:case 97:case 106:case 15:case 228:return!0;case 80:{const t=e.escapedText;return function(e){return"undefined"===e}(t)||Yw(t)}}return Kl(e)}function y(e){const t=e.valueDeclaration;if(!t||!fN(t))return;const n=l.getTypeOfSymbolAtLocation(e,t);return p(n)?void 0:v(n)}function v(e){if(!jle(o))return function(e){const n=hV();return g_((r=>{const i=l.typeToTypeNode(e,void 0,71286784);Tn.assertIsDefined(i,"should always get typenode"),n.writeNode(4,i,t,r)}))}(e);const n=l.typeToTypeNode(e,void 0,71286784);Tn.assertIsDefined(n,"should always get typenode");const r=[];return i(n),r;function i(e){var t,n;if(!e)return;const o=Vs(e.kind);if(o)r.push({text:o});else if(Kl(e))r.push({text:u(e)});else switch(e.kind){case 80:Tn.assertNode(e,YC);const o=kc(e),c=e.symbol&&e.symbol.declarations&&e.symbol.declarations.length&&Oc(e.symbol.declarations[0]);c?r.push(x(o,c)):r.push({text:o});break;case 166:Tn.assertNode(e,dN),i(e.left),r.push({text:"."}),i(e.right);break;case 182:Tn.assertNode(e,CN),e.assertsModifier&&r.push({text:"asserts "}),i(e.parameterName),e.type&&(r.push({text:" is "}),i(e.type));break;case 183:Tn.assertNode(e,NN),i(e.typeName),e.typeArguments&&(r.push({text:"<"}),a(e.typeArguments,", "),r.push({text:">"}));break;case 168:Tn.assertNode(e,pN),e.modifiers&&a(e.modifiers," "),i(e.name),e.constraint&&(r.push({text:" extends "}),i(e.constraint)),e.default&&(r.push({text:" = "}),i(e.default));break;case 169:Tn.assertNode(e,fN),e.modifiers&&a(e.modifiers," "),e.dotDotDotToken&&r.push({text:"..."}),i(e.name),e.questionToken&&r.push({text:"?"}),e.type&&(r.push({text:": "}),i(e.type));break;case 185:Tn.assertNode(e,IN),r.push({text:"new "}),s(e),r.push({text:" => "}),i(e.type);break;case 186:Tn.assertNode(e,DN),r.push({text:"typeof "}),i(e.exprName),e.typeArguments&&(r.push({text:"<"}),a(e.typeArguments,", "),r.push({text:">"}));break;case 187:Tn.assertNode(e,PN),r.push({text:"{"}),e.members.length&&(r.push({text:" "}),a(e.members,"; "),r.push({text:" "})),r.push({text:"}"});break;case 188:Tn.assertNode(e,MN),i(e.elementType),r.push({text:"[]"});break;case 189:Tn.assertNode(e,ON),r.push({text:"["}),a(e.elements,", "),r.push({text:"]"});break;case 202:Tn.assertNode(e,FN),e.dotDotDotToken&&r.push({text:"..."}),i(e.name),e.questionToken&&r.push({text:"?"}),r.push({text:": "}),i(e.type);break;case 190:Tn.assertNode(e,RN),i(e.type),r.push({text:"?"});break;case 191:Tn.assertNode(e,LN),r.push({text:"..."}),i(e.type);break;case 192:Tn.assertNode(e,jN),a(e.types," | ");break;case 193:Tn.assertNode(e,zN),a(e.types," & ");break;case 194:Tn.assertNode(e,UN),i(e.checkType),r.push({text:" extends "}),i(e.extendsType),r.push({text:" ? "}),i(e.trueType),r.push({text:" : "}),i(e.falseType);break;case 195:Tn.assertNode(e,BN),r.push({text:"infer "}),i(e.typeParameter);break;case 196:Tn.assertNode(e,qN),r.push({text:"("}),i(e.type),r.push({text:")"});break;case 198:Tn.assertNode(e,KN),r.push({text:`${Vs(e.operator)} `}),i(e.type);break;case 199:Tn.assertNode(e,JN),i(e.objectType),r.push({text:"["}),i(e.indexType),r.push({text:"]"});break;case 200:Tn.assertNode(e,WN),r.push({text:"{ "}),e.readonlyToken&&(40===e.readonlyToken.kind?r.push({text:"+"}):41===e.readonlyToken.kind&&r.push({text:"-"}),r.push({text:"readonly "})),r.push({text:"["}),i(e.typeParameter),e.nameType&&(r.push({text:" as "}),i(e.nameType)),r.push({text:"]"}),e.questionToken&&(40===e.questionToken.kind?r.push({text:"+"}):41===e.questionToken.kind&&r.push({text:"-"}),r.push({text:"?"})),r.push({text:": "}),e.type&&i(e.type),r.push({text:"; }"});break;case 201:Tn.assertNode(e,HN),i(e.literal);break;case 184:Tn.assertNode(e,AN),s(e),r.push({text:" => "}),i(e.type);break;case 205:Tn.assertNode(e,GN),e.isTypeOf&&r.push({text:"typeof "}),r.push({text:"import("}),i(e.argument),e.assertions&&(r.push({text:", { assert: "}),a(e.assertions.assertClause.elements,", "),r.push({text:" }"})),r.push({text:")"}),e.qualifier&&(r.push({text:"."}),i(e.qualifier)),e.typeArguments&&(r.push({text:"<"}),a(e.typeArguments,", "),r.push({text:">"}));break;case 171:Tn.assertNode(e,hN),(null==(t=e.modifiers)?void 0:t.length)&&(a(e.modifiers," "),r.push({text:" "})),i(e.name),e.questionToken&&r.push({text:"?"}),e.type&&(r.push({text:": "}),i(e.type));break;case 181:Tn.assertNode(e,EN),r.push({text:"["}),a(e.parameters,", "),r.push({text:"]"}),e.type&&(r.push({text:": "}),i(e.type));break;case 173:Tn.assertNode(e,yN),(null==(n=e.modifiers)?void 0:n.length)&&(a(e.modifiers," "),r.push({text:" "})),i(e.name),e.questionToken&&r.push({text:"?"}),s(e),e.type&&(r.push({text:": "}),i(e.type));break;case 179:Tn.assertNode(e,wN),s(e),e.type&&(r.push({text:": "}),i(e.type));break;case 207:Tn.assertNode(e,XN),r.push({text:"["}),a(e.elements,", "),r.push({text:"]"});break;case 206:Tn.assertNode(e,ZN),r.push({text:"{"}),e.elements.length&&(r.push({text:" "}),a(e.elements,", "),r.push({text:" "})),r.push({text:"}"});break;case 208:Tn.assertNode(e,$N),i(e.name);break;case 224:Tn.assertNode(e,mA),r.push({text:Vs(e.operator)}),i(e.operand);break;case 203:Tn.assertNode(e,YN),i(e.head),e.templateSpans.forEach(i);break;case 16:Tn.assertNode(e,LC),r.push({text:u(e)});break;case 204:Tn.assertNode(e,QN),i(e.type),i(e.literal);break;case 17:Tn.assertNode(e,jC),r.push({text:u(e)});break;case 18:Tn.assertNode(e,zC),r.push({text:u(e)});break;case 197:Tn.assertNode(e,VN),r.push({text:"this"});break;default:Tn.failBadSyntaxKind(e)}}function s(e){e.typeParameters&&(r.push({text:"<"}),a(e.typeParameters,", "),r.push({text:">"})),r.push({text:"("}),a(e.parameters,", "),r.push({text:")"})}function a(e,t){e.forEach(((e,n)=>{n>0&&r.push({text:t}),i(e)}))}function u(e){switch(e.kind){case 11:return 0===c?`'${Ry(e.text,39)}'`:`"${Ry(e.text,34)}"`;case 16:case 17:case 18:{const t=e.rawText??Cy(Ry(e.text,96));switch(e.kind){case 16:return"`"+t+"${";case 17:return"}"+t+"${";case 18:return"}"+t+"`"}}}return e.text}}function b(e){if((dy(e)||$A(e)&&df(e))&&e.initializer){const t=fg(e.initializer);return!(g(t)||oA(t)||tA(t)||nd(t))}return!0}function x(e,t){const n=t.getSourceFile();return{text:e,span:PZ(t,n),file:n.fileName}}}var Ule={};a(Ule,{getDocCommentTemplateAtPosition:()=>rue,getJSDocParameterNameCompletionDetails:()=>nue,getJSDocParameterNameCompletions:()=>tue,getJSDocTagCompletionDetails:()=>eue,getJSDocTagCompletions:()=>$le,getJSDocTagNameCompletionDetails:()=>Xle,getJSDocTagNameCompletions:()=>Zle,getJsDocCommentsFromDeclarations:()=>Kle,getJsDocTagsFromDeclarations:()=>Wle});var Ble,qle,Vle=["abstract","access","alias","argument","async","augments","author","borrows","callback","class","classdesc","constant","constructor","constructs","copyright","default","deprecated","description","emits","enum","event","example","exports","extends","external","field","file","fileoverview","fires","function","generator","global","hideconstructor","host","ignore","implements","import","inheritdoc","inner","instance","interface","kind","lends","license","link","linkcode","linkplain","listens","member","memberof","method","mixes","module","name","namespace","overload","override","package","param","private","prop","property","protected","public","readonly","requires","returns","satisfies","see","since","static","summary","template","this","throws","todo","tutorial","type","typedef","var","variation","version","virtual","yields"];function Kle(e,t){const n=[];return vX(e,(e=>{for(const r of function(e){switch(e.kind){case 341:case 348:return[e];case 338:case 346:return[e,e.parent];case 323:if(wD(e.parent))return[e.parent.parent];default:return Kh(e)}}(e)){const i=_D(r)&&r.tags&&w(r.tags,(e=>327===e.kind&&("inheritDoc"===e.tagName.escapedText||"inheritdoc"===e.tagName.escapedText)));if(void 0===r.comment&&!i||_D(r)&&346!==e.kind&&338!==e.kind&&r.tags&&r.tags.some((e=>346===e.kind||338===e.kind))&&!r.tags.some((e=>341===e.kind||342===e.kind)))continue;let o=r.comment?Qle(r.comment,t):[];i&&i.comment&&(o=o.concat(Qle(i.comment,t))),A(n,o,Jle)||n.push(o)}})),z(S(n,[KX()]))}function Jle(e,t){return I(e,t,((e,t)=>e.kind===t.kind&&e.text===t.text))}function Wle(e,t){const n=[];return vX(e,(e=>{const r=fl(e);if(!r.some((e=>346===e.kind||338===e.kind))||r.some((e=>341===e.kind||342===e.kind)))for(const i of r)n.push({name:i.tagName.text,text:Yle(i,t)}),n.push(...Hle(Gle(i),t))})),n}function Hle(e,t){return U(e,(e=>te([{name:e.tagName.text,text:Yle(e,t)}],Hle(Gle(e),t))))}function Gle(e){return Ll(e)&&e.isNameFirst&&e.typeExpression&&pD(e.typeExpression.type)?e.typeExpression.type.jsDocPropertyTags:void 0}function Qle(e,t){return"string"==typeof e?[FX(e)]:U(e,(e=>321===e.kind?[FX(e.text)]:BX(e,t)))}function Yle(e,t){const{comment:n,kind:r}=e,i=function(e){switch(e){case 341:return PX;case 348:return MX;case 345:return LX;case 346:case 338:return RX;default:return FX}}(r);switch(r){case 349:const r=e.typeExpression;return r?o(r):void 0===n?void 0:Qle(n,t);case 329:case 328:return o(e.class);case 345:const s=e,a=[];if(s.constraint&&a.push(FX(s.constraint.getText())),m(s.typeParameters)){m(a)&&a.push(NX());const e=s.typeParameters[s.typeParameters.length-1];h(s.typeParameters,(t=>{a.push(i(t.getText())),e!==t&&a.push(IX(28),NX())}))}return n&&a.push(NX(),...Qle(n,t)),a;case 344:case 350:return o(e.typeExpression);case 346:case 338:case 348:case 341:case 347:const{name:c}=e;return c?o(c):void 0===n?void 0:Qle(n,t);default:return void 0===n?void 0:Qle(n,t)}function o(e){return function(e){return n?e.match(/^https?$/)?[FX(e),...Qle(n,t)]:[i(e),NX(),...Qle(n,t)]:[FX(e)]}(e.getText())}}function Zle(){return Ble||(Ble=R(Vle,(e=>({name:e,kind:"keyword",kindModifiers:"",sortText:Dse.SortText.LocationPriority}))))}var Xle=eue;function $le(){return qle||(qle=R(Vle,(e=>({name:`@${e}`,kind:"keyword",kindModifiers:"",sortText:Dse.SortText.LocationPriority}))))}function eue(e){return{name:e,kind:"",kindModifiers:"",displayParts:[FX(e)],documentation:_,tags:void 0,codeActions:void 0}}function tue(e){if(!YC(e.name))return _;const t=e.name.text,n=e.parent,r=n.parent;return pu(r)?J(r.parameters,(r=>{if(!YC(r.name))return;const i=r.name.text;return n.tags.some((t=>t!==e&&ND(t)&&YC(t.name)&&t.name.escapedText===i))||void 0!==t&&!cn(i,t)?void 0:{name:i,kind:"parameter",kindModifiers:"",sortText:Dse.SortText.LocationPriority}})):[]}function nue(e){return{name:e,kind:"parameter",kindModifiers:"",displayParts:[FX(e)],documentation:_,tags:void 0,codeActions:void 0}}function rue(e,t,n,r){const i=QY(t,n),o=bc(i,_D);if(o&&(void 0!==o.comment||m(o.tags)))return;const s=i.getStart(t);if(!o&&s<n)return;const a=function(e,t){return p_(e,(e=>iue(e,t)))}(i,r);if(!a)return;const{commentOwner:c,parameters:l,hasReturn:u}=a,d=Ne(zd(c)&&c.jsDoc?c.jsDoc:void 0);if(c.getStart(t)<n||d&&o&&d!==o)return;const _=function(e,t){const{text:n}=e,r=bY(t,e);let i=r;for(;i<=t&&ra(n.charCodeAt(i));i++);return n.slice(r,i)}(t,n),p=YT(t.fileName),f=(l?function(e,t,n,r){return e.map((({name:e,dotDotDotToken:i},o)=>{const s=80===e.kind?e.text:"param"+o;return`${n} * @param ${t?i?"{...any} ":"{any} ":""}${s}${r}`})).join("")}(l||[],p,_,e):"")+(u?function(e,t){return`${e} * @returns${t}`}(_,e):""),h=m(fl(c))>0;if(f&&!h){const t="/**"+e+_+" * ";return{newText:t+e+f+_+" */"+(s===n?e+_:""),caretOffset:t.length}}return{newText:"/** */",caretOffset:3}}function iue(e,t){switch(e.kind){case 262:case 218:case 174:case 176:case 173:case 219:const n=e;return{commentOwner:e,parameters:n.parameters,hasReturn:oue(n,t)};case 303:return iue(e.initializer,t);case 263:case 264:case 266:case 306:case 265:return{commentOwner:e};case 171:{const n=e;return n.type&&AN(n.type)?{commentOwner:e,parameters:n.type.parameters,hasReturn:oue(n.type,t)}:{commentOwner:e}}case 243:{const n=e.declarationList.declarations,r=1===n.length&&n[0].initializer?function(e){for(;217===e.kind;)e=e.expression;switch(e.kind){case 218:case 219:return e;case 231:return w(e.members,xN)}}(n[0].initializer):void 0;return r?{commentOwner:e,parameters:r.parameters,hasReturn:oue(r,t)}:{commentOwner:e}}case 307:return"quit";case 267:return 267===e.parent.kind?void 0:{commentOwner:e};case 244:return iue(e.expression,t);case 226:{const n=e;return 0===dh(n)?"quit":pu(n.right)?{commentOwner:e,parameters:n.right.parameters,hasReturn:oue(n.right,t)}:{commentOwner:e}}case 172:const r=e.initializer;if(r&&(lA(r)||uA(r)))return{commentOwner:e,parameters:r.parameters,hasReturn:oue(r,t)}}}function oue(e,t){return!!(null==t?void 0:t.generateReturnInDocTemplate)&&(AN(e)||uA(e)&&td(e.body)||mu(e)&&e.body&&OA(e.body)&&!!Of(e.body,(e=>e)))}var sue={};function aue(e,t,n,r,i,o){return Xde.ChangeTracker.with({host:r,formatContext:i,preferences:o},(r=>{const i=t.map((t=>function(e,t){const n=[{parse:()=>XM("__mapcode_content_nodes.ts",t,e.languageVersion,!0,e.scriptKind),body:e=>e.statements},{parse:()=>XM("__mapcode_class_content_nodes.ts",`class __class {\n${t}\n}`,e.languageVersion,!0,e.scriptKind),body:e=>e.statements[0].members}],r=[];for(const{parse:o,body:s}of n){const e=o(),t=s(e);if(t.length&&0===e.parseDiagnostics.length)return t;t.length&&r.push({sourceFile:e,body:t})}const{body:i}=r.sort(((e,t)=>e.sourceFile.parseDiagnostics.length-t.sourceFile.parseDiagnostics.length))[0];return i}(e,t))),o=n&&z(n);for(const t of i)cue(e,r,t,o)}))}function cue(e,t,n,r){bu(n[0])||Nu(n[0])?function(e,t,n,r){let i;i=r&&r.length?h(r,(t=>bc(QY(e,t.start),pn(xu,rI)))):w(e.statements,pn(xu,rI));if(!i)return;const o=i.members.find((e=>n.some((t=>lue(t,e)))));if(o){const r=k(i.members,(e=>n.some((t=>lue(t,e)))));return h(n,uue),void t.replaceNodeRangeWithNodes(e,o,r,n)}h(n,uue),t.insertNodesAfter(e,i.members[i.members.length-1],n)}(e,t,n,r):function(e,t,n,r){if(!(null==r?void 0:r.length))return void t.insertNodesAtEndOfFile(e,n,!1);for(const o of r){const r=bc(QY(e,o.start),(e=>pn(OA,YI)(e)&&$(e.statements,(e=>n.some((t=>lue(t,e)))))));if(r){const i=r.statements.find((e=>n.some((t=>lue(t,e)))));if(i){const o=k(r.statements,(e=>n.some((t=>lue(t,e)))));return h(n,uue),void t.replaceNodeRangeWithNodes(e,i,o,n)}}}let i=e.statements;for(const o of r){const t=bc(QY(e,o.start),OA);if(t){i=t.statements;break}}h(n,uue),t.insertNodesAfter(e,i[i.length-1],n)}(e,t,n,r)}function lue(e,t){var n,r,i,o,s,a;return e.kind===t.kind&&(176===e.kind?e.kind===t.kind:Pc(e)&&Pc(t)?e.name.getText()===t.name.getText():jA(e)&&jA(t)||UA(e)&&UA(t)?e.expression.getText()===t.expression.getText():BA(e)&&BA(t)?(null==(n=e.initializer)?void 0:n.getText())===(null==(r=t.initializer)?void 0:r.getText())&&(null==(i=e.incrementor)?void 0:i.getText())===(null==(o=t.incrementor)?void 0:o.getText())&&(null==(s=e.condition)?void 0:s.getText())===(null==(a=t.condition)?void 0:a.getText()):ld(e)&&ld(t)?e.expression.getText()===t.expression.getText()&&e.initializer.getText()===t.initializer.getText():QA(e)&&QA(t)?e.label.getText()===t.label.getText():e.getText()===t.getText())}function uue(e){due(e),e.parent=void 0}function due(e){e.pos=-1,e.end=-1,e.forEachChild(due)}a(sue,{mapCode:()=>aue});var _ue={};function pue(e,t,n,r,i,o){const s=Xde.ChangeTracker.fromContext({host:n,formatContext:t,preferences:i}),a="SortAndCombine"===o||"All"===o,c=a,l="RemoveUnused"===o||"All"===o,u=e.statements.filter(dI),d=mue(e,u),{comparersToTest:_,typeOrdersToTest:p}=fue(i),f=_[0],h={moduleSpecifierComparer:"boolean"==typeof i.organizeImportsIgnoreCase?f:void 0,namedImportComparer:"boolean"==typeof i.organizeImportsIgnoreCase?f:void 0,typeOrder:i.organizeImportsTypeOrder};if("boolean"!=typeof i.organizeImportsIgnoreCase&&({comparer:h.moduleSpecifierComparer}=Cue(d,_)),!h.typeOrder||"boolean"!=typeof i.organizeImportsIgnoreCase){const e=Nue(u,_,p);if(e){const{namedImportComparer:t,typeOrder:n}=e;h.namedImportComparer=h.namedImportComparer??t,h.typeOrder=h.typeOrder??n}}d.forEach((e=>y(e,h))),"RemoveUnused"!==o&&function(e){const t=[],n=e.statements,r=m(n);let i=0,o=0;for(;i<r;)if(TI(n[i])){void 0===t[o]&&(t[o]=[]);const e=n[i];if(e.moduleSpecifier)t[o].push(e),i++;else{for(;i<r&&TI(n[i]);)t[o].push(n[i++]);o++}}else i++;return U(t,(t=>mue(e,t)))}(e).forEach((e=>v(e,h.namedImportComparer)));for(const m of e.statements.filter(_p)){if(!m.body)continue;if(mue(e,m.body.statements.filter(dI)).forEach((e=>y(e,h))),"RemoveUnused"!==o){v(m.body.statements.filter(TI),h.namedImportComparer)}}return s.getChanges();function g(r,i){if(0===m(r))return;dE(r[0],1024);const o=c?Ye(r,(e=>gue(e.moduleSpecifier))):[r],l=U(a?xe(o,((e,t)=>Tue(e[0].moduleSpecifier,t[0].moduleSpecifier,h.moduleSpecifierComparer??f))):o,(e=>gue(e[0].moduleSpecifier)||void 0===e[0].moduleSpecifier?i(e):e));if(0===l.length)s.deleteNodes(e,r,{leadingTriviaOption:Xde.LeadingTriviaOption.Exclude,trailingTriviaOption:Xde.TrailingTriviaOption.Include},!0);else{const i={leadingTriviaOption:Xde.LeadingTriviaOption.Exclude,trailingTriviaOption:Xde.TrailingTriviaOption.Include,suffix:VX(n,t.options)};s.replaceNodeWithNodes(e,r[0],l,i);const o=s.nodeHasTrailingComment(e,r[0],i);s.deleteNodes(e,r.slice(1),{trailingTriviaOption:Xde.TrailingTriviaOption.Include},o)}}function y(t,n){const i=n.moduleSpecifierComparer??f,o=n.namedImportComparer??f,s=Rue({organizeImportsTypeOrder:n.typeOrder??"last"},o);g(t,(t=>(l&&(t=function(e,t,n){const r=n.getTypeChecker(),i=n.getCompilerOptions(),o=r.getJsxNamespace(t),s=r.getJsxFragmentFactory(t),a=!!(2&t.transformFlags),c=[];for(const u of e){const{importClause:e,moduleSpecifier:n}=u;if(!e){c.push(u);continue}let{name:r,namedBindings:i}=e;if(r&&!l(r)&&(r=void 0),i)if(yI(i))l(i.name)||(i=void 0);else{const e=i.elements.filter((e=>l(e.name)));e.length<i.elements.length&&(i=e.length?oE.updateNamedImports(i,e):void 0)}r||i?c.push(xue(u,r,i)):kue(t,n)&&(t.isDeclarationFile?c.push(oE.createImportDeclaration(u.modifiers,void 0,n,void 0)):c.push(u))}return c;function l(e){return a&&(e.text===o||s&&e.text===s)&&v0(i.jsx)||Ice.Core.isSymbolReferencedInFile(e,r,t)}}(t,e,r)),c&&(t=vue(t,i,s,e)),a&&(t=xe(t,((e,t)=>Uue(e,t,i)))),t)))}function v(e,t){const n=Rue(i,t);g(e,(e=>bue(e,n)))}}function fue(e){return{comparersToTest:"boolean"==typeof e.organizeImportsIgnoreCase?[Oue(e,e.organizeImportsIgnoreCase)]:[Oue(e,!0),Oue(e,!1)],typeOrdersToTest:e.organizeImportsTypeOrder?[e.organizeImportsTypeOrder]:["last","inline","first"]}}function mue(e,t){const n=Ia(e.languageVersion,!1,e.languageVariant),r=[];let i=0;for(const o of t)r[i]&&hue(e,o,n)&&i++,r[i]||(r[i]=[]),r[i].push(o);return r}function hue(e,t,n){const r=t.getFullStart(),i=t.getStart();n.setText(e.text,r,i-r);let o=0;for(;n.getTokenStart()<i;){if(4===n.scan()&&(o++,o>=2))return!0}return!1}function gue(e){return void 0!==e&&Hd(e)?e.text:void 0}function yue(e){let t;const n={defaultImports:[],namespaceImports:[],namedImports:[]},r={defaultImports:[],namespaceImports:[],namedImports:[]};for(const i of e){if(void 0===i.importClause){t=t||i;continue}const e=i.importClause.isTypeOnly?n:r,{name:o,namedBindings:s}=i.importClause;o&&e.defaultImports.push(i),s&&(yI(s)?e.namespaceImports.push(i):e.namedImports.push(i))}return{importWithoutClause:t,typeOnlyImports:n,regularImports:r}}function vue(e,t,n,r){if(0===e.length)return e;const i=Ze(e,(e=>{if(e.attributes){let t=e.attributes.token+" ";for(const n of ve(e.attributes.elements,((e,t)=>Lt(e.name.text,t.name.text))))t+=n.name.text+":",t+=Hd(n.value)?`"${n.value.text}"`:n.value.getText()+" ";return t}return""})),o=[];for(const s in i){const e=i[s],{importWithoutClause:a,typeOnlyImports:c,regularImports:l}=yue(e);a&&o.push(a);for(const i of[l,c]){const e=i===c,{defaultImports:s,namespaceImports:a,namedImports:l}=i;if(!e&&1===s.length&&1===a.length&&0===l.length){const e=s[0];o.push(xue(e,e.importClause.name,a[0].importClause.namedBindings));continue}const u=xe(a,((e,n)=>t(e.importClause.namedBindings.name.text,n.importClause.namedBindings.name.text)));for(const t of u)o.push(xue(t,void 0,t.importClause.namedBindings));const d=we(s),p=we(l),f=d??p;if(!f)continue;let m;const h=[];if(1===s.length)m=s[0].importClause.name;else for(const t of s)h.push(oE.createImportSpecifier(!1,oE.createIdentifier("default"),t.importClause.name));h.push(...Eue(l));const g=oE.createNodeArray(xe(h,n),null==p?void 0:p.importClause.namedBindings.elements.hasTrailingComma),y=0===g.length?m?void 0:oE.createNamedImports(_):p?oE.updateNamedImports(p.importClause.namedBindings,g):oE.createNamedImports(g);r&&y&&(null==p?void 0:p.importClause.namedBindings)&&!rx(p.importClause.namedBindings,r)&&dE(y,2),e&&m&&y?(o.push(xue(f,m,void 0)),o.push(xue(p??f,void 0,y))):o.push(xue(f,m,y))}}return o}function bue(e,t){if(0===e.length)return e;const{exportWithoutClause:n,namedExports:r,typeOnlyExports:i}=function(e){let t;const n=[],r=[];for(const i of e)void 0===i.exportClause?t=t||i:i.isTypeOnly?r.push(i):n.push(i);return{exportWithoutClause:t,namedExports:n,typeOnlyExports:r}}(e),o=[];n&&o.push(n);for(const s of[r,i]){if(0===s.length)continue;const e=[];e.push(...U(s,(e=>e.exportClause&&wI(e.exportClause)?e.exportClause.elements:_)));const n=xe(e,t),r=s[0];o.push(oE.updateExportDeclaration(r,r.modifiers,r.isTypeOnly,r.exportClause&&(wI(r.exportClause)?oE.updateNamedExports(r.exportClause,n):oE.updateNamespaceExport(r.exportClause,r.exportClause.name)),r.moduleSpecifier,r.attributes))}return o}function xue(e,t,n){return oE.updateImportDeclaration(e,e.modifiers,oE.updateImportClause(e.importClause,e.importClause.isTypeOnly,t,n),e.moduleSpecifier,e.attributes)}function Sue(e,t,n,r){switch(null==r?void 0:r.organizeImportsTypeOrder){case"first":return Wt(t.isTypeOnly,e.isTypeOnly)||n(e.name.text,t.name.text);case"inline":return n(e.name.text,t.name.text);default:return Wt(e.isTypeOnly,t.isTypeOnly)||n(e.name.text,t.name.text)}}function Tue(e,t,n){const r=void 0===e?void 0:gue(e),i=void 0===t?void 0:gue(t);return Wt(void 0===r,void 0===i)||Wt(za(r),za(i))||n(r,i)}function wue(e){var t;switch(e.kind){case 271:return null==(t=dt(e.moduleReference,AI))?void 0:t.expression;case 272:return e.moduleSpecifier;case 243:return e.declarationList.declarations[0].initializer.arguments[0]}}function kue(e,t){const n=MC(t)&&t.text;return lt(n)&&$(e.moduleAugmentations,(e=>MC(e)&&e.text===n))}function Eue(e){return U(e,(e=>R(function(e){var t;return(null==(t=e.importClause)?void 0:t.namedBindings)&&bI(e.importClause.namedBindings)?e.importClause.namedBindings.elements:void 0}(e),(e=>e.name&&e.propertyName&&e.name.escapedText===e.propertyName.escapedText?oE.updateImportSpecifier(e,e.isTypeOnly,void 0,e.name):e))))}function Cue(e,t){const n=[];return e.forEach((e=>{n.push(e.map((e=>gue(wue(e))||"")))})),Iue(n,t)}function Nue(e,t,n){let r=!1;const i=e.filter((e=>{var t,n;const i=null==(n=dt(null==(t=e.importClause)?void 0:t.namedBindings,bI))?void 0:n.elements;return!!(null==i?void 0:i.length)&&(!r&&i.some((e=>e.isTypeOnly))&&i.some((e=>!e.isTypeOnly))&&(r=!0),!0)}));if(0===i.length)return;const o=i.map((e=>{var t,n;return null==(n=dt(null==(t=e.importClause)?void 0:t.namedBindings,bI))?void 0:n.elements})).filter((e=>void 0!==e));if(!r||0===n.length){const e=Iue(o.map((e=>e.map((e=>e.name.text)))),t);return{namedImportComparer:e.comparer,typeOrder:1===n.length?n[0]:void 0,isSorted:e.isSorted}}const s={first:1/0,last:1/0,inline:1/0},a={first:t[0],last:t[0],inline:t[0]};for(const c of t){const e={first:0,last:0,inline:0};for(const t of o)for(const r of n)e[r]=(e[r]??0)+Aue(t,((e,t)=>Sue(e,t,c,{organizeImportsTypeOrder:r})));for(const t of n){const n=t;e[n]<s[n]&&(s[n]=e[n],a[n]=c)}}e:for(const c of n){const e=c;for(const t of n){if(s[t]<s[e])continue e}return{namedImportComparer:a[e],typeOrder:e,isSorted:0===s[e]}}return{namedImportComparer:a.last,typeOrder:"last",isSorted:0===s.last}}function Aue(e,t){let n=0;for(let r=0;r<e.length-1;r++)t(e[r],e[r+1])>0&&n++;return n}function Iue(e,t){let n,r=1/0;for(const i of t){let t=0;for(const n of e){if(n.length<=1)continue;t+=Aue(n,i)}t<r&&(r=t,n=i)}return{comparer:n??t[0],isSorted:0===r}}function Due(e){var t;switch(e.kind){case 272:return e.importClause?e.importClause.isTypeOnly?1:274===(null==(t=e.importClause.namedBindings)?void 0:t.kind)?2:e.importClause.name?3:4:0;case 271:return 5;case 243:return 6}}function Pue(e){return e?Rt:Lt}function Mue(e,t){const n=function(e){let t=e.organizeImportsLocale;"auto"===t&&(t=qt());void 0===t&&(t="en");const n=Intl.Collator.supportedLocalesOf(t),r=n.length?n[0]:"en";return r}(t),r=t.organizeImportsCaseFirst??!1,i=t.organizeImportsNumericCollation??!1,o=t.organizeImportsAccentCollation??!0,s=e?o?"accent":"base":o?"variant":"case";return new Intl.Collator(n,{usage:"sort",caseFirst:r||"false",sensitivity:s,numeric:i}).compare}function Oue(e,t){return"unicode"===(e.organizeImportsCollation??"ordinal")?Mue(t,e):Pue(t)}function Fue(e,t){return Cue([e],fue(t).comparersToTest)}function Rue(e,t){const n=t??Pue(!!e.organizeImportsIgnoreCase);return(t,r)=>Sue(t,r,n,e)}function Lue(e,t,n){const{comparersToTest:r,typeOrdersToTest:i}=fue(t),o=Nue([e],r,i);let s,a=Rue(t,r[0]);if("boolean"!=typeof t.organizeImportsIgnoreCase||!t.organizeImportsTypeOrder)if(o){const{namedImportComparer:e,typeOrder:t,isSorted:n}=o;s=n,a=Rue({organizeImportsTypeOrder:t},e)}else if(n){const e=Nue(n.statements.filter(dI),r,i);if(e){const{namedImportComparer:t,typeOrder:n,isSorted:r}=e;s=r,a=Rue({organizeImportsTypeOrder:n},t)}}return{specifierComparer:a,isSorted:s}}function jue(e,t,n){const r=Oe(e,t,gt,((e,t)=>Uue(e,t,n)));return r<0?~r:r}function zue(e,t,n){const r=Oe(e,t,gt,n);return r<0?~r:r}function Uue(e,t,n){return Tue(wue(e),wue(t),n)||function(e,t){return Pt(Due(e),Due(t))}(e,t)}function Bue(e,t,n,r){const i=Pue(t);return vue(e,i,Rue({organizeImportsTypeOrder:null==r?void 0:r.organizeImportsTypeOrder},i),n)}function que(e,t,n){return bue(e,((e,r)=>Sue(e,r,Pue(t),{organizeImportsTypeOrder:(null==n?void 0:n.organizeImportsTypeOrder)??"last"})))}function Vue(e,t,n){return Tue(e,t,Pue(!!n))}a(_ue,{compareImportsOrRequireStatements:()=>Uue,compareModuleSpecifiers:()=>Vue,getDetectionLists:()=>fue,getImportDeclarationInsertionIndex:()=>jue,getImportSpecifierInsertionIndex:()=>zue,getNamedImportSpecifierComparerWithDetection:()=>Lue,getOrganizeImportsStringComparerWithDetection:()=>Fue,organizeImports:()=>pue,testCoalesceExports:()=>que,testCoalesceImports:()=>Bue});var Kue={};function Jue(e,t){const n=[];return function(e,t,n){let r=40,i=0;const o=[...e.statements,e.endOfFileToken],s=o.length;for(;i<s;){for(;i<s&&!Np(o[i]);)a(o[i]),i++;if(i===s)break;const t=i;for(;i<s&&Np(o[i]);)a(o[i]),i++;const r=i-1;r!==t&&n.push(Yue(FY(o[t],102,e).getStart(e),o[r].getEnd(),"imports"))}function a(i){var o;if(0===r)return;t.throwIfCancellationRequested(),(Sd(i)||FA(i)||WA(i)||Hu(i)||1===i.kind)&&Que(i,e,t,n),pu(i)&&gA(i.parent)&&nA(i.parent.left)&&Que(i.parent.left,e,t,n),(OA(i)||aI(i))&&Gue(i.statements.end,e,t,n),(xu(i)||rI(i))&&Gue(i.members.end,e,t,n);const s=function(e,t){switch(e.kind){case 241:if(pu(e.parent))return function(e,t,n){const r=function(e,t,n){if(ux(e.parameters,n)){const t=FY(e,21,n);if(t)return t}return FY(t,19,n)}(e,t,n),i=FY(t,20,n);return r&&i&&Zue(r,i,e,n,219!==e.kind)}(e.parent,e,t);switch(e.parent.kind){case 246:case 249:case 250:case 248:case 245:case 247:case 254:case 299:return u(e.parent);case 258:const n=e.parent;if(n.tryBlock===e)return u(e.parent);if(n.finallyBlock===e){const e=FY(n,98,t);if(e)return u(e)}default:return Xue(PZ(e,t),"code")}case 268:return u(e.parent);case 263:case 231:case 264:case 266:case 269:case 187:case 206:return u(e);case 189:return u(e,!1,!ON(e.parent),23);case 296:case 297:return d(e.statements);case 210:return l(e);case 209:return l(e,23);case 284:return o(e);case 288:return s(e);case 285:case 286:return a(e.attributes);case 228:case 15:return c(e);case 207:return u(e,!1,!$N(e.parent),23);case 219:return i(e);case 213:return r(e);case 217:return _(e);case 275:case 279:case 300:return n(e)}function n(e){if(!e.elements.length)return;const n=FY(e,19,t),r=FY(e,20,t);return n&&r&&!dx(n.pos,r.pos,t)?Zue(n,r,e,t,!1,!1):void 0}function r(e){if(!e.arguments.length)return;const n=FY(e,21,t),r=FY(e,22,t);return n&&r&&!dx(n.pos,r.pos,t)?Zue(n,r,e,t,!1,!0):void 0}function i(e){if(OA(e.body)||cA(e.body)||dx(e.body.getFullStart(),e.body.getEnd(),t))return;return Xue(tc(e.body.getFullStart(),e.body.getEnd()),"code",PZ(e))}function o(e){const n=tc(e.openingElement.getStart(t),e.closingElement.getEnd()),r=e.openingElement.tagName.getText(t);return Xue(n,"code",n,!1,"<"+r+">...</"+r+">")}function s(e){const n=tc(e.openingFragment.getStart(t),e.closingFragment.getEnd());return Xue(n,"code",n,!1,"<>...</>")}function a(e){if(0!==e.properties.length)return Yue(e.getStart(t),e.getEnd(),"code")}function c(e){if(15!==e.kind||0!==e.text.length)return Yue(e.getStart(t),e.getEnd(),"code")}function l(e,t=19){return u(e,!1,!eA(e.parent)&&!iA(e.parent),t)}function u(n,r=!1,i=!0,o=19,s=(19===o?20:24)){const a=FY(e,o,t),c=FY(e,s,t);return a&&c&&Zue(a,c,n,t,r,i)}function d(e){return e.length?Xue(FZ(e),"code"):void 0}function _(e){if(dx(e.getStart(),e.getEnd(),t))return;return Xue(tc(e.getStart(),e.getEnd()),"code",PZ(e))}}(i,e);s&&n.push(s),r--,iA(i)?(r++,a(i.expression),r--,i.arguments.forEach(a),null==(o=i.typeArguments)||o.forEach(a)):jA(i)&&i.elseStatement&&jA(i.elseStatement)?(a(i.expression),a(i.thenStatement),r++,a(i.elseStatement),r--):i.forEachChild(a),r++}}(e,t,n),function(e,t){const n=[],r=e.getLineStarts();for(const i of r){const r=e.getLineEndOfPosition(i),o=Hue(e.text.substring(i,r));if(o&&!mZ(e,i))if(o[1]){const e=n.pop();e&&(e.textSpan.length=r-e.textSpan.start,e.hintSpan.length=r-e.textSpan.start,t.push(e))}else{const t=tc(e.text.indexOf("//",i),r);n.push(Xue(t,"region",t,!1,o[2]||"#region"))}}}(e,n),n.sort(((e,t)=>e.textSpan.start-t.textSpan.start))}a(Kue,{collectElements:()=>Jue});var Wue=/^#(end)?region(?:\s+(.*))?(?:\r)?$/;function Hue(e){return cn(e=e.trimStart(),"//")?(e=e.slice(2).trim(),Wue.exec(e)):null}function Gue(e,t,n,r){const i=wa(t.text,e);if(!i)return;let o=-1,s=-1,a=0;const c=t.getFullText();for(const{kind:u,pos:d,end:_}of i)switch(n.throwIfCancellationRequested(),u){case 2:if(Hue(c.slice(d,_))){l(),a=0;break}0===a&&(o=d),s=_,a++;break;case 3:l(),r.push(Yue(d,_,"comment")),a=0;break;default:Tn.assertNever(u)}function l(){a>1&&r.push(Yue(o,s,"comment"))}l()}function Que(e,t,n,r){OC(e)||Gue(e.pos,t,n,r)}function Yue(e,t,n){return Xue(tc(e,t),n)}function Zue(e,t,n,r,i=!1,o=!0){return Xue(tc(o?e.getFullStart():e.getStart(r),t.getEnd()),"code",PZ(n,r),i)}function Xue(e,t,n=e,r=!1,i="..."){return{textSpan:e,kind:t,hintSpan:n,bannerText:i,autoCollapse:r}}var $ue={};function ede(e,t,n,r){const i=WY(HY(t,n));if(ode(i)){const n=function(e,t,n,r,i){const o=t.getSymbolAtLocation(e);if(!o){if(Hd(e)){const r=UY(e,t);if(r&&(128&r.flags||1048576&r.flags&&T(r.types,(e=>!!(128&e.flags)))))return nde(e.text,e.text,"string","",e,n)}else if(aY(e)){const t=ep(e);return nde(t,t,"label","",e,n)}return}const{declarations:s}=o;if(!s||0===s.length)return;if(s.some((e=>function(e,t){const n=t.getSourceFile();return e.isSourceFileDefaultLibrary(n)&&Lo(n.fileName,".d.ts")}(r,e))))return rde(ws.You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library);if(YC(e)&&"default"===e.escapedText&&o.parent&&1536&o.parent.flags)return;if(Hd(e)&&Ah(e))return i.allowRenameOfImportPath?function(e,t,n){if(!za(e.text))return rde(ws.You_cannot_rename_a_module_via_a_global_import);const r=n.declarations&&w(n.declarations,YI);if(!r)return;const i=Qt(e.text,"/index")||Qt(e.text,"/index.js")?void 0:Zt(ow(r.fileName),"/index"),o=void 0===i?r.fileName:i,s=void 0===i?"module":"directory",a=e.text.lastIndexOf("/")+1,c=ec(e.getStart(t)+1+a,e.text.length-a);return{canRename:!0,fileToRename:o,kind:s,displayName:o,fullDisplayName:e.text,kindModifiers:"",triggerSpan:c}}(e,n,o):void 0;const a=function(e,t,n,r){if(!r.providePrefixAndSuffixTextForRename&&2097152&t.flags){const e=t.declarations&&w(t.declarations,(e=>xI(e)));e&&!e.propertyName&&(t=n.getAliasedSymbol(t))}const{declarations:i}=t;if(!i)return;const o=tde(e.path);if(void 0===o)return $(i,(e=>Q$(e.getSourceFile().path)))?ws.You_cannot_rename_elements_that_are_defined_in_a_node_modules_folder:void 0;for(const s of i){const e=tde(s.getSourceFile().path);if(e){const t=Math.min(o.length,e.length);for(let n=0;n<=t;n++)if(0!==Lt(o[n],e[n]))return ws.You_cannot_rename_elements_that_are_defined_in_another_node_modules_folder}}return}(n,o,t,i);if(a)return rde(a);const c=Vde.getSymbolKind(t,o,e),l=YX(e)||Hg(e)&&167===e.parent.kind?Ky($g(e)):void 0,u=l||t.symbolToString(o),d=l||t.getFullyQualifiedName(o);return nde(u,d,c,Vde.getSymbolModifiers(t,o),e,n)}(i,e.getTypeChecker(),t,e,r);if(n)return n}return rde(ws.You_cannot_rename_this_element)}function tde(e){const t=Ho(e),n=t.lastIndexOf("node_modules");if(-1!==n)return t.slice(0,n+2)}function nde(e,t,n,r,i,o){return{canRename:!0,fileToRename:void 0,kind:n,displayName:e,fullDisplayName:t,kindModifiers:r,triggerSpan:ide(i,o)}}function rde(e){return{canRename:!1,localizedErrorMessage:cS(e)}}function ide(e,t){let n=e.getStart(t),r=e.getWidth(t);return Hd(e)&&(n+=1,r-=2),ec(n,r)}function ode(e){switch(e.kind){case 80:case 81:case 11:case 15:case 110:return!0;case 9:return fY(e);default:return!1}}a($ue,{getRenameInfo:()=>ede,nodeIsEligibleForRename:()=>ode});var sde={};function ade(e,t,n,r,i){const o=e.getTypeChecker(),s=XY(t,n);if(!s)return;const a=!!r&&"characterTyped"===r.kind;if(a&&(iZ(t,n,s)||mZ(t,n)))return;const c=!!r&&"invoked"===r.kind,l=function(e,t,n,r,i){for(let o=e;!YI(o)&&(i||!OA(o));o=o.parent){Tn.assert(xY(o.parent,o),"Not a subspan",(()=>`Child: ${Tn.formatSyntaxKind(o.kind)}, parent: ${Tn.formatSyntaxKind(o.parent.kind)}`));const e=_de(o,t,n,r);if(e)return e}return}(s,n,t,o,c);if(!l)return;i.throwIfCancellationRequested();const u=function({invocation:e,argumentCount:t},n,r,i,o){switch(e.kind){case 0:{if(o&&!function(e,t,n){if(!Hu(t))return!1;const r=t.getChildren(n);switch(e.kind){case 21:return A(r,e);case 28:{const t=RY(e);return!!t&&A(r,t)}case 30:return cde(e,n,t.expression);default:return!1}}(i,e.node,r))return;const s=[],a=n.getResolvedSignatureForSignatureHelp(e.node,s,t);return 0===s.length?void 0:{kind:0,candidates:s,resolvedSignature:a}}case 1:{const{called:s}=e;if(o&&!cde(i,r,YC(s)?s.parent:s))return;const a=pZ(s,t,n);if(0!==a.length)return{kind:0,candidates:a,resolvedSignature:Ee(a)};const c=n.getSymbolAtLocation(s);return c&&{kind:1,symbol:c}}case 2:return{kind:0,candidates:[e.signature],resolvedSignature:e.signature};default:return Tn.assertNever(e)}}(l,o,t,s,a);return i.throwIfCancellationRequested(),u?o.runWithCancellationToken(i,(e=>0===u.kind?kde(u.candidates,u.resolvedSignature,l,t,e):function(e,{argumentCount:t,argumentsSpan:n,invocation:r,argumentIndex:i},o,s){const a=s.getLocalTypeParametersOfClassOrInterfaceOrTypeAlias(e);if(!a)return;const c=[Ede(e,a,s,Tde(r),o)];return{items:c,applicableSpan:n,selectedItemIndex:0,argumentIndex:i,argumentCount:t}}(u.symbol,l,t,e))):jm(t)?function(e,t,n){if(2===e.invocation.kind)return;const r=Sde(e.invocation),i=nA(r)?r.name.text:void 0,o=t.getTypeChecker();return void 0===i?void 0:y(t.getSourceFiles(),(t=>y(t.getNamedDeclarations().get(i),(r=>{const i=r.symbol&&o.getTypeOfSymbolAtLocation(r.symbol,r),s=i&&i.getCallSignatures();if(s&&s.length)return o.runWithCancellationToken(n,(n=>kde(s,s[0],e,t,n,!0)))}))))}(l,e,i):void 0}function cde(e,t,n){const r=e.getFullStart();let i=e.parent;for(;i;){const e=eZ(r,t,i,!0);if(e)return xY(n,e);i=i.parent}return Tn.fail("Could not find preceding token")}function lde(e,t,n,r){const i=dde(e,t,n,r);return!i||i.isTypeParameterList||0!==i.invocation.kind?void 0:{invocation:i.invocation.node,argumentCount:i.argumentCount,argumentIndex:i.argumentIndex}}function ude(e,t,n,r){const i=function(e,t,n){if(30===e.kind||21===e.kind)return{list:xde(e.parent,e,t),argumentIndex:0};{const t=RY(e);return t&&{list:t,argumentIndex:gde(n,t,e)}}}(e,n,r);if(!i)return;const{list:o,argumentIndex:s}=i,a=function(e,t){return yde(e,t,void 0)}(r,o);0!==s&&Tn.assertLessThan(s,a);const c=function(e,t){const n=e.getFullStart(),r=da(t.text,e.getEnd(),!1);return ec(n,r-n)}(o,n);return{list:o,argumentIndex:s,argumentCount:a,argumentsSpan:c}}function dde(e,t,n,r){const{parent:i}=e;if(Hu(i)){const t=i,o=ude(e,0,n,r);if(!o)return;const{list:s,argumentIndex:a,argumentCount:c,argumentsSpan:l}=o;return{isTypeParameterList:!!i.typeArguments&&i.typeArguments.pos===s.pos,invocation:{kind:0,node:t},argumentsSpan:l,argumentIndex:a,argumentCount:c}}if(RC(e)&&sA(i))return wZ(e,t,n)?vde(i,0,n):void 0;if(LC(e)&&215===i.parent.kind){const r=i,o=r.parent;Tn.assert(228===r.kind);return vde(o,wZ(e,t,n)?0:1,n)}if(PA(i)&&sA(i.parent.parent)){const r=i,o=i.parent.parent;if(zC(e)&&!wZ(e,t,n))return;const s=function(e,t,n,r){if(Tn.assert(n>=t.getStart(),"Assumed 'position' could not occur before node."),Hl(t))return wZ(t,n,r)?0:e+2;return e+1}(r.parent.templateSpans.indexOf(r),e,t,n);return vde(o,s,n)}if(Pd(i)){const e=i.attributes.pos;return{isTypeParameterList:!1,invocation:{kind:0,node:i},argumentsSpan:ec(e,da(n.text,i.attributes.end,!1)-e),argumentIndex:0,argumentCount:1}}{const t=fZ(e,n);if(t){const{called:r,nTypeArguments:i}=t;return{isTypeParameterList:!0,invocation:{kind:1,called:r},argumentsSpan:tc(r.getStart(n),e.end),argumentIndex:i,argumentCount:i+1}}return}}function _de(e,t,n,r){return function(e,t,n,r){const i=function(e){switch(e.kind){case 21:case 28:return e;default:return bc(e.parent,(e=>!!fN(e)||!($N(e)||ZN(e)||XN(e))&&"quit"))}}(e);if(void 0===i)return;const o=function(e,t,n,r){const{parent:i}=e;switch(i.kind){case 217:case 174:case 218:case 219:const n=ude(e,0,t,r);if(!n)return;const{argumentIndex:o,argumentCount:s,argumentsSpan:a}=n,c=vN(i)?r.getContextualTypeForObjectLiteralElement(i):r.getContextualType(i);return c&&{contextualType:c,argumentIndex:o,argumentCount:s,argumentsSpan:a};case 226:{const t=pde(i),n=r.getContextualType(t),o=21===e.kind?0:fde(i)-1,s=fde(t);return n&&{contextualType:n,argumentIndex:o,argumentCount:s,argumentsSpan:PZ(i)}}default:return}}(i,n,0,r);if(void 0===o)return;const{contextualType:s,argumentIndex:a,argumentCount:c,argumentsSpan:l}=o,u=s.getNonNullableType(),d=u.symbol;if(void 0===d)return;const _=Ne(u.getCallSignatures());if(void 0===_)return;return{isTypeParameterList:!1,invocation:{kind:2,signature:_,node:e,symbol:mde(d)},argumentsSpan:l,argumentIndex:a,argumentCount:c}}(e,0,n,r)||dde(e,t,n,r)}function pde(e){return gA(e.parent)?pde(e.parent):e}function fde(e){return gA(e.left)?fde(e.left)+1:2}function mde(e){return"__type"===e.name&&y(e.declarations,(e=>{var t;return AN(e)?null==(t=dt(e.parent,yd))?void 0:t.symbol:void 0}))||e}function hde(e,t){const n=t.getTypeAtLocation(e.expression);if(t.isTupleType(n)){const{elementFlags:e,fixedLength:t}=n.target;if(0===t)return 0;const r=E(e,(e=>!(1&e)));return r<0?t:r}return 0}function gde(e,t,n){return yde(e,t,n)}function yde(e,t,n){const r=t.getChildren();let i=0,o=!1;for(const s of r){if(n&&s===n)return o||28!==s.kind||i++,i;xA(s)?(i+=hde(s,e),o=!0):28===s.kind?o?o=!1:i++:(i++,o=!0)}return n?i:r.length&&28===Ae(r).kind?i+1:i}function vde(e,t,n){const r=RC(e.template)?1:e.template.templateSpans.length+1;return 0!==t&&Tn.assertLessThan(t,r),{isTypeParameterList:!1,invocation:{kind:0,node:e},argumentsSpan:bde(e,n),argumentIndex:t,argumentCount:r}}function bde(e,t){const n=e.template,r=n.getStart();let i=n.getEnd();if(228===n.kind){0===Ae(n.templateSpans).literal.getFullWidth()&&(i=da(t.text,i,!1))}return ec(r,i-r)}function xde(e,t,n){const r=e.getChildren(n),i=r.indexOf(t);return Tn.assert(i>=0&&r.length>i+1),r[i+1]}function Sde(e){return 0===e.kind?bm(e.node):e.called}function Tde(e){return 0===e.kind?e.node:1===e.kind?e.called:e.node}a(sde,{getArgumentInfoForCompletions:()=>lde,getSignatureHelpItems:()=>ade});var wde=70246400;function kde(e,t,{isTypeParameterList:n,argumentCount:r,argumentsSpan:i,invocation:o,argumentIndex:s},a,c,l){var u;const d=Tde(o),p=2===o.kind?o.symbol:c.getSymbolAtLocation(Sde(o))||l&&(null==(u=t.declaration)?void 0:u.symbol),f=p?HX(c,p,l?a:void 0,void 0):_,m=R(e,(e=>function(e,t,n,r,i,o){const s=(n?Ade:Ide)(e,r,i,o);return R(s,(({isVariadic:n,parameters:o,prefix:s,suffix:a})=>{const c=[...t,...s],l=[...a,...Nde(e,i,r)],u=e.getDocumentationComment(r),d=e.getJsDocTags();return{isVariadic:n,prefixDisplayParts:c,suffixDisplayParts:l,separatorDisplayParts:Cde,parameters:o,documentation:u,tags:d}}))}(e,f,n,c,d,a)));0!==s&&Tn.assertLessThan(s,r);let h=0,g=0;for(let _=0;_<m.length;_++){const n=m[_];if(e[_]===t&&(h=g,n.length>1)){let e=0;for(const t of n){if(t.isVariadic||t.parameters.length>=r){h=g+e;break}e++}}g+=n.length}Tn.assert(-1!==h);const y={items:B(m,gt),applicableSpan:i,selectedItemIndex:h,argumentIndex:s,argumentCount:r},v=y.items[h];if(v.isVariadic){const e=E(v.parameters,(e=>!!e.isRest));-1<e&&e<v.parameters.length-1?y.argumentIndex=v.parameters.length:y.argumentIndex=Math.min(y.argumentIndex,v.parameters.length-1)}return y}function Ede(e,t,n,r,i){const o=HX(n,e),s=hV(),a=t.map((e=>Dde(e,n,r,i,s))),c=e.getDocumentationComment(n),l=e.getJsDocTags(n);return{isVariadic:!1,prefixDisplayParts:[...o,IX(30)],suffixDisplayParts:[IX(32)],separatorDisplayParts:Cde,parameters:a,documentation:c,tags:l}}var Cde=[IX(28),NX()];function Nde(e,t,n){return JX((r=>{r.writePunctuation(":"),r.writeSpace(" ");const i=n.getTypePredicateOfSignature(e);i?n.writeTypePredicate(i,t,void 0,r):n.writeType(n.getReturnTypeOfSignature(e),t,void 0,r)}))}function Ade(e,t,n,r){const i=(e.target||e).typeParameters,o=hV(),s=(i||_).map((e=>Dde(e,t,n,r,o))),a=e.thisParameter?[t.symbolToParameterDeclaration(e.thisParameter,n,wde)]:[];return t.getExpandedParameters(e).map((e=>{const i=oE.createNodeArray([...a,...R(e,(e=>t.symbolToParameterDeclaration(e,n,wde)))]),c=JX((e=>{o.writeList(2576,i,r,e)}));return{isVariadic:!1,parameters:s,prefix:[IX(30)],suffix:[IX(32),...c]}}))}function Ide(e,t,n,r){const i=hV(),o=JX((o=>{if(e.typeParameters&&e.typeParameters.length){const s=oE.createNodeArray(e.typeParameters.map((e=>t.typeParameterToDeclaration(e,n,wde))));i.writeList(53776,s,r,o)}})),s=t.getExpandedParameters(e),a=t.hasEffectiveRestParameter(e)?1===s.length?e=>!0:e=>{var t;return!!(e.length&&32768&(null==(t=dt(e[e.length-1],s_))?void 0:t.links.checkFlags))}:e=>!1;return s.map((e=>({isVariadic:a(e),parameters:e.map((e=>function(e,t,n,r,i){const o=JX((o=>{const s=t.symbolToParameterDeclaration(e,n,wde);i.writeNode(4,s,r,o)})),s=t.isOptionalParameter(e.valueDeclaration),a=s_(e)&&!!(32768&e.links.checkFlags);return{name:e.name,documentation:e.getDocumentationComment(t),displayParts:o,isOptional:s,isRest:a}}(e,t,n,r,i))),prefix:[...o,IX(21)],suffix:[IX(22)]})))}function Dde(e,t,n,r,i){const o=JX((o=>{const s=t.typeParameterToDeclaration(e,n,wde);i.writeNode(4,s,r,o)}));return{name:e.symbol.name,documentation:e.symbol.getDocumentationComment(t),displayParts:o,isOptional:!1,isRest:!1}}var Pde={};function Mde(e,t){var n,r;let i={textSpan:tc(t.getFullStart(),t.getEnd())},o=t;e:for(;;){const i=Rde(o);if(!i.length)break;for(let c=0;c<i.length;c++){const l=i[c-1],u=i[c],d=i[c+1];if(Q_(u,t,!0)>e)break e;const _=Ie(ka(t.text,u.end));if(_&&2===_.kind&&a(_.pos,_.end),Ode(t,e,u)){if(dd(u)&&mu(o)&&!dx(u.getStart(t),u.getEnd(),t)&&s(u.getStart(t),u.getEnd()),OA(u)||PA(u)||LC(u)||zC(u)||l&&LC(l)||eI(u)&&FA(o)||UD(u)&&eI(o)||$A(u)&&UD(o)&&1===i.length||XI(u)||fD(u)||pD(u)){o=u;break}if(PA(o)&&d&&Gl(d)){s(u.getFullStart()-2,d.getStart()+1)}const e=UD(u)&&Ude(l)&&Bde(d)&&!dx(l.getStart(),d.getStart(),t);let a=e?l.getEnd():u.getStart();const c=e?d.getStart():qde(t,u);if(zd(u)&&(null==(n=u.jsDoc)?void 0:n.length)&&s(Ee(u.jsDoc).getStart(),c),UD(u)){const e=u.getChildren()[0];e&&zd(e)&&(null==(r=e.jsDoc)?void 0:r.length)&&e.getStart()!==u.pos&&(a=Math.min(a,Ee(e.jsDoc).getStart()))}s(a,c),(MC(u)||Gu(u))&&s(a+1,c-1),o=u;break}if(c===i.length-1)break e}}return i;function s(t,n){if(t!==n){const r=tc(t,n);(!i||!hX(r,i.textSpan)&&Xa(r,e))&&(i={textSpan:r,...i&&{parent:i}})}}function a(e,n){s(e,n);let r=e;for(;47===t.text.charCodeAt(r);)r++;s(r,n)}}function Ode(e,t,n){if(Tn.assert(n.pos<=t),t<n.end)return!0;return n.getEnd()===t&&HY(e,t).pos<n.end}a(Pde,{getSmartSelectionRange:()=>Mde});var Fde=pn(dI,uI);function Rde(e){var t;if(YI(e))return Lde(e.getChildAt(0).getChildren(),Fde);if(WN(e)){const[t,...n]=e.getChildren(),r=Tn.checkDefined(n.pop());Tn.assertEqual(t.kind,19),Tn.assertEqual(r.kind,20);const i=Lde(n,(t=>t===e.readonlyToken||148===t.kind||t===e.questionToken||58===t.kind));return[t,zde(jde(Lde(i,(({kind:e})=>23===e||168===e||24===e)),(({kind:e})=>59===e))),r]}if(hN(e)){const n=Lde(e.getChildren(),(t=>t===e.name||A(e.modifiers,t))),r=320===(null==(t=n[0])?void 0:t.kind)?n[0]:void 0,i=jde(r?n.slice(1):n,(({kind:e})=>59===e));return r?[r,zde(i)]:i}if(fN(e)){const t=Lde(e.getChildren(),(t=>t===e.dotDotDotToken||t===e.name));return jde(Lde(t,(n=>n===t[0]||n===e.questionToken)),(({kind:e})=>64===e))}return $N(e)?jde(e.getChildren(),(({kind:e})=>64===e)):e.getChildren()}function Lde(e,t){const n=[];let r;for(const i of e)t(i)?(r=r||[],r.push(i)):(r&&(n.push(zde(r)),r=void 0),n.push(i));return r&&n.push(zde(r)),n}function jde(e,t,n=!0){if(e.length<2)return e;const r=E(e,t);if(-1===r)return e;const i=e.slice(0,r),o=e[r],s=Ae(e),a=n&&27===s.kind,c=e.slice(r+1,a?e.length-1:void 0),l=ue([i.length?zde(i):void 0,o,c.length?zde(c):void 0]);return a?l.concat(s):l}function zde(e){return Tn.assertGreaterThanOrEqual(e.length,1),jw(TM.createSyntaxList(e),e[0].pos,Ae(e).end)}function Ude(e){const t=e&&e.kind;return 19===t||23===t||21===t||286===t}function Bde(e){const t=e&&e.kind;return 20===t||24===t||22===t||287===t}function qde(e,t){switch(t.kind){case 341:case 338:case 348:case 346:case 343:return e.getLineEndOfPosition(t.getStart());default:return t.getEnd()}}var Vde={};a(Vde,{getSymbolDisplayPartsDocumentationAndSymbolKind:()=>Yde,getSymbolKind:()=>Jde,getSymbolModifiers:()=>Gde});var Kde=70246400;function Jde(e,t,n){const r=Wde(e,t,n);if(""!==r)return r;const i=Tx(t);return 32&i?r_(t,231)?"local class":"class":384&i?"enum":524288&i?"type":64&i?"interface":262144&i?"type parameter":8&i?"enum member":2097152&i?"alias":1536&i?"module":r}function Wde(e,t,n){const r=e.getRootSymbols(t);if(1===r.length&&8192&Ee(r).flags&&0!==e.getTypeOfSymbolAtLocation(t,n).getNonNullableType().getCallSignatures().length)return"method";if(e.isUndefinedSymbol(t))return"var";if(e.isArgumentsSymbol(t))return"local var";if(110===n.kind&&td(n)||kv(n))return"parameter";const i=Tx(t);if(3&i)return wX(t)?"parameter":t.valueDeclaration&&df(t.valueDeclaration)?"const":t.valueDeclaration&&uf(t.valueDeclaration)?"using":t.valueDeclaration&&lf(t.valueDeclaration)?"await using":h(t.declarations,pf)?"let":Zde(t)?"local var":"var";if(16&i)return Zde(t)?"local function":"function";if(32768&i)return"getter";if(65536&i)return"setter";if(8192&i)return"method";if(16384&i)return"constructor";if(131072&i)return"index";if(4&i){if(33554432&i&&6&t.links.checkFlags){const r=h(e.getRootSymbols(t),(e=>{if(98311&e.getFlags())return"property"}));if(!r){return e.getTypeOfSymbolAtLocation(t,n).getCallSignatures().length?"method":"property"}return r}return"property"}return""}function Hde(e){if(e.declarations&&e.declarations.length){const[t,...n]=e.declarations,r=yZ(t,m(n)&&f0(t)&&$(n,(e=>!f0(e)))?65536:0);if(r)return r.split(",")}return[]}function Gde(e,t){if(!t)return"";const n=new Set(Hde(t));if(2097152&t.flags){const r=e.getAliasedSymbol(t);r!==t&&h(Hde(r),(e=>{n.add(e)}))}return 16777216&t.flags&&n.add("optional"),n.size>0?Ke(n.values()).join(","):""}function Qde(e,t,n,r,i,o,s,a){var c;const l=[];let u=[],d=[];const p=Tx(t);let f=1&s?Wde(e,t,i):"",m=!1;const g=110===i.kind&&Im(i)||kv(i);let v,b,x=!1;if(110===i.kind&&!g)return{displayParts:[AX(110)],documentation:[],symbolKind:"primitive type",tags:void 0};if(""!==f||32&p||2097152&p){if("getter"===f||"setter"===f){const e=w(t.declarations,(e=>e.name===i));if(e)switch(e.kind){case 177:f="getter";break;case 178:f="setter";break;case 172:f="accessor";break;default:Tn.assertNever(e)}else f="property"}let n,s;if(o??(o=g?e.getTypeAtLocation(i):e.getTypeOfSymbolAtLocation(t,i)),i.parent&&211===i.parent.kind){const e=i.parent.name;(e===i||e&&0===e.getFullWidth())&&(i=i.parent)}if(Hu(i)?s=i:(JQ(i)||WQ(i)||i.parent&&(Pd(i.parent)||sA(i.parent))&&pu(t.valueDeclaration))&&(s=i.parent),s){n=e.getResolvedSignature(s);const i=214===s.kind||iA(s)&&108===s.expression.kind,a=i?o.getConstructSignatures():o.getCallSignatures();if(!n||A(a,n.target)||A(a,n)||(n=a.length?a[0]:void 0),n){switch(i&&32&p?(f="constructor",N(o.symbol,f)):2097152&p?(f="alias",I(f),l.push(NX()),i&&(4&n.flags&&(l.push(AX(128)),l.push(NX())),l.push(AX(105)),l.push(NX())),C(t)):N(t,f),f){case"JSX attribute":case"property":case"var":case"const":case"let":case"parameter":case"local var":l.push(IX(59)),l.push(NX()),16&Mx(o)||!o.symbol||(me(l,HX(e,o.symbol,r,void 0,5)),l.push(KX())),i&&(4&n.flags&&(l.push(AX(128)),l.push(NX())),l.push(AX(105)),l.push(NX())),D(n,a,262144);break;default:D(n,a)}m=!0,x=a.length>1}}else if(pY(i)&&!(98304&p)||137===i.kind&&176===i.parent.kind){const r=i.parent;if(t.declarations&&w(t.declarations,(e=>e===(137===i.kind?r.parent:r)))){const i=176===r.kind?o.getNonNullableType().getConstructSignatures():o.getNonNullableType().getCallSignatures();n=e.isImplementationOfOverload(r)?i[0]:e.getSignatureFromDeclaration(r),176===r.kind?(f="constructor",N(o.symbol,f)):N(179!==r.kind||2048&o.symbol.flags||4096&o.symbol.flags?t:o.symbol,f),n&&D(n,i),m=!0,x=i.length>1}}}if(32&p&&!m&&!g&&(k(),r_(t,231)?I("local class"):l.push(AX(86)),l.push(NX()),C(t),P(t,n)),64&p&&2&s&&(T(),l.push(AX(120)),l.push(NX()),C(t),P(t,n)),524288&p&&2&s&&(T(),l.push(AX(156)),l.push(NX()),C(t),P(t,n),l.push(NX()),l.push(DX(64)),l.push(NX()),me(l,WX(e,i.parent&&Pl(i.parent)?e.getTypeAtLocation(i.parent):e.getDeclaredTypeOfSymbol(t),r,8388608))),384&p&&(T(),$(t.declarations,(e=>oI(e)&&af(e)))&&(l.push(AX(87)),l.push(NX())),l.push(AX(94)),l.push(NX()),C(t)),1536&p&&!g){T();const e=r_(t,267),n=e&&e.name&&80===e.name.kind;l.push(AX(n?145:144)),l.push(NX()),C(t)}if(262144&p&&2&s)if(T(),l.push(IX(21)),l.push(FX("type parameter")),l.push(IX(22)),l.push(NX()),C(t),t.parent)E(),C(t.parent,r),P(t.parent,r);else{const r=r_(t,168);if(void 0===r)return Tn.fail();const i=r.parent;if(i)if(pu(i)){E();const t=e.getSignatureFromDeclaration(i);180===i.kind?(l.push(AX(105)),l.push(NX())):179!==i.kind&&i.name&&C(i.symbol),me(l,GX(e,t,n,32))}else iI(i)&&(E(),l.push(AX(156)),l.push(NX()),C(i.symbol),P(i.symbol,n))}if(8&p){f="enum member",N(t,"enum member");const n=null==(c=t.declarations)?void 0:c[0];if(306===(null==n?void 0:n.kind)){const t=e.getConstantValue(n);void 0!==t&&(l.push(NX()),l.push(DX(64)),l.push(NX()),l.push(CX(cp(t),"number"==typeof t?7:8)))}}if(2097152&t.flags){if(T(),!m||0===u.length&&0===d.length){const n=e.getAliasedSymbol(t);if(n!==t&&n.declarations&&n.declarations.length>0){const i=n.declarations[0],a=Oc(i);if(a&&!m){const c=pp(i)&&Kv(i,128),u="default"!==t.name&&!c,d=Qde(e,n,C_(i),r,a,o,s,u?t:n);l.push(...d.displayParts),l.push(KX()),v=d.documentation,b=d.tags}else v=n.getContextualDocumentationComment(i,e),b=n.getJsDocTags(e)}}if(t.declarations)switch(t.declarations[0].kind){case 270:l.push(AX(95)),l.push(NX()),l.push(AX(145));break;case 277:l.push(AX(95)),l.push(NX()),l.push(AX(t.declarations[0].isExportEquals?64:90));break;case 281:l.push(AX(95));break;default:l.push(AX(102))}l.push(NX()),C(t),h(t.declarations,(t=>{if(271===t.kind){const n=t;if(Mm(n))l.push(NX()),l.push(DX(64)),l.push(NX()),l.push(AX(149)),l.push(IX(21)),l.push(CX(ep(Om(n)),8)),l.push(IX(22));else{const t=e.getSymbolAtLocation(n.moduleReference);t&&(l.push(NX()),l.push(DX(64)),l.push(NX()),C(t,r))}return!0}}))}if(!m)if(""!==f){if(o)if(g?(T(),l.push(AX(110))):N(t,f),"property"===f||"accessor"===f||"getter"===f||"setter"===f||"JSX attribute"===f||3&p||"local var"===f||"index"===f||"using"===f||"await using"===f||g){if(l.push(IX(59)),l.push(NX()),o.symbol&&262144&o.symbol.flags&&"index"!==f){const t=JX((t=>{const n=e.typeParameterToDeclaration(o,r,Kde);S().writeNode(4,n,C_(Sc(r)),t)}));me(l,t)}else me(l,WX(e,o,r));if(s_(t)&&t.links.target&&s_(t.links.target)&&t.links.target.links.tupleLabelDeclaration){const e=t.links.target.links.tupleLabelDeclaration;Tn.assertNode(e.name,YC),l.push(NX()),l.push(IX(21)),l.push(FX(kc(e.name))),l.push(IX(22))}}else if(16&p||8192&p||16384&p||131072&p||98304&p||"method"===f){const e=o.getNonNullableType().getCallSignatures();e.length&&(D(e[0],e),x=e.length>1)}}else f=Jde(e,t,i);if(0!==u.length||x||(u=t.getContextualDocumentationComment(r,e)),0===u.length&&4&p&&t.parent&&t.declarations&&h(t.parent.declarations,(e=>307===e.kind)))for(const _ of t.declarations){if(!_.parent||226!==_.parent.kind)continue;const t=e.getSymbolAtLocation(_.parent.right);if(t&&(u=t.getDocumentationComment(e),d=t.getJsDocTags(e),u.length>0))break}if(0===u.length&&YC(i)&&t.valueDeclaration&&$N(t.valueDeclaration)){const n=t.valueDeclaration,r=n.parent,i=n.propertyName||n.name;if(YC(i)&&ZN(r)){const t=$g(i),n=e.getTypeAtLocation(r);u=y(n.isUnion()?n.types:[n],(n=>{const r=n.getProperty(t);return r?r.getDocumentationComment(e):void 0}))||_}}return 0!==d.length||x||(d=t.getContextualJsDocTags(r,e)),0===u.length&&v&&(u=v),0===d.length&&b&&(d=b),{displayParts:l,documentation:u,symbolKind:f,tags:0===d.length?void 0:d};function S(){return hV()}function T(){l.length&&l.push(KX()),k()}function k(){a&&(I("alias"),l.push(NX()))}function E(){l.push(NX()),l.push(AX(103)),l.push(NX())}function C(r,i){let o;a&&r===t&&(r=a),"index"===f&&(o=e.getIndexInfosOfIndexSymbol(r));let s=[];131072&r.flags&&o?(r.parent&&(s=HX(e,r.parent)),s.push(IX(23)),o.forEach(((t,n)=>{s.push(...WX(e,t.keyType)),n!==o.length-1&&(s.push(NX()),s.push(IX(52)),s.push(NX()))})),s.push(IX(24))):s=HX(e,r,i||n,void 0,7),me(l,s),16777216&t.flags&&l.push(IX(58))}function N(e,t){T(),t&&(I(t),e&&!$(e.declarations,(e=>uA(e)||(lA(e)||SA(e))&&!e.name))&&(l.push(NX()),C(e)))}function I(e){switch(e){case"var":case"function":case"let":case"const":case"constructor":case"using":case"await using":return void l.push(OX(e));default:return l.push(IX(21)),l.push(OX(e)),void l.push(IX(22))}}function D(t,n,i=0){me(l,GX(e,t,r,32|i)),n.length>1&&(l.push(NX()),l.push(IX(21)),l.push(DX(40)),l.push(CX((n.length-1).toString(),7)),l.push(NX()),l.push(FX(2===n.length?"overload":"overloads")),l.push(IX(22))),u=t.getDocumentationComment(e),d=t.getJsDocTags(),n.length>1&&0===u.length&&0===d.length&&(u=n[0].getDocumentationComment(e),d=n[0].getJsDocTags().filter((e=>"deprecated"!==e.name)))}function P(t,n){const r=JX((r=>{const i=e.symbolToTypeParameterDeclarations(t,n,Kde);S().writeList(53776,i,C_(Sc(n)),r)}));me(l,r)}}function Yde(e,t,n,r,i,o=VQ(i),s){return Qde(e,t,n,r,i,void 0,o,s)}function Zde(e){return!e.parent&&h(e.declarations,(e=>{if(218===e.kind)return!0;if(260!==e.kind&&262!==e.kind)return!1;for(let t=e.parent;!Wf(t);t=t.parent)if(307===t.kind||268===t.kind)return!1;return!0}))}var Xde={};function $de(e){const t=e.__pos;return Tn.assert("number"==typeof t),t}function e_e(e,t){Tn.assert("number"==typeof t),e.__pos=t}function t_e(e){const t=e.__end;return Tn.assert("number"==typeof t),t}function n_e(e,t){Tn.assert("number"==typeof t),e.__end=t}a(Xde,{ChangeTracker:()=>f_e,LeadingTriviaOption:()=>r_e,TrailingTriviaOption:()=>i_e,applyChanges:()=>y_e,assignPositionsToNode:()=>x_e,createWriter:()=>T_e,deleteNode:()=>k_e,isThisTypeAnnotatable:()=>__e,isValidLocationToAddComment:()=>w_e});var r_e=(e=>(e[e.Exclude=0]="Exclude",e[e.IncludeAll=1]="IncludeAll",e[e.JSDoc=2]="JSDoc",e[e.StartLine=3]="StartLine",e))(r_e||{}),i_e=(e=>(e[e.Exclude=0]="Exclude",e[e.ExcludeWhitespace=1]="ExcludeWhitespace",e[e.Include=2]="Include",e))(i_e||{});function o_e(e,t){return da(e,t,!1,!0)}var s_e={leadingTriviaOption:0,trailingTriviaOption:0};function a_e(e,t,n,r){return{pos:c_e(e,t,r),end:u_e(e,n,r)}}function c_e(e,t,n,r=!1){var i,o;const{leadingTriviaOption:s}=n;if(0===s)return t.getStart(e);if(3===s){const n=t.getStart(e),r=bY(n,e);return TY(t,r)?r:n}if(2===s){const n=wf(t,e.text);if(null==n?void 0:n.length)return bY(n[0].pos,e)}const a=t.getFullStart(),c=t.getStart(e);if(a===c)return c;const l=bY(a,e);if(bY(c,e)===l)return 1===s?a:c;if(r){const t=(null==(i=wa(e.text,a))?void 0:i[0])||(null==(o=ka(e.text,a))?void 0:o[0]);if(t)return da(e.text,t.end,!0,!0)}const u=a>0?1:0;let d=D_(hv(e,l)+u,e);return d=o_e(e.text,d),D_(hv(e,d),e)}function l_e(e,t,n){const{end:r}=t,{trailingTriviaOption:i}=n;if(2===i){const n=ka(e.text,r);if(n){const r=hv(e,t.end);for(const t of n){if(2===t.kind||hv(e,t.pos)>r)break;if(hv(e,t.end)>r)return da(e.text,t.end,!0,!0)}}}}function u_e(e,t,n){var r;const{end:i}=t,{trailingTriviaOption:o}=n;if(0===o)return i;if(1===o){const t=te(ka(e.text,i),wa(e.text,i)),n=null==(r=null==t?void 0:t[t.length-1])?void 0:r.end;return n||i}const s=l_e(e,t,n);if(s)return s;const a=da(e.text,i,!0);return a===i||2!==o&&!ia(e.text.charCodeAt(a-1))?i:a}function d_e(e,t){return!!t&&!!e.parent&&(28===t.kind||27===t.kind&&210===e.parent.kind)}function __e(e){return lA(e)||tI(e)}var p_e,f_e=class e{constructor(e,t){this.newLineCharacter=e,this.formatContext=t,this.changes=[],this.classesWithNodesInsertedAtStart=new Map,this.deletedNodes=[]}static fromContext(t){return new e(VX(t.host,t.formatContext.options),t.formatContext)}static with(t,n){const r=e.fromContext(t);return n(r),r.getChanges()}pushRaw(e,t){Tn.assertEqual(e.fileName,t.fileName);for(const n of t.textChanges)this.changes.push({kind:3,sourceFile:e,text:n.newText,range:RZ(n.span)})}deleteRange(e,t){this.changes.push({kind:0,sourceFile:e,range:t})}delete(e,t){this.deletedNodes.push({sourceFile:e,node:t})}deleteNode(e,t,n={leadingTriviaOption:1}){this.deleteRange(e,a_e(e,t,t,n))}deleteNodes(e,t,n={leadingTriviaOption:1},r){for(const i of t){const t=c_e(e,i,n,r),o=u_e(e,i,n);this.deleteRange(e,{pos:t,end:o}),r=!!l_e(e,i,n)}}deleteModifier(e,t){this.deleteRange(e,{pos:t.getStart(e),end:da(e.text,t.end,!0)})}deleteNodeRange(e,t,n,r={leadingTriviaOption:1}){const i=c_e(e,t,r),o=u_e(e,n,r);this.deleteRange(e,{pos:i,end:o})}deleteNodeRangeExcludingEnd(e,t,n,r={leadingTriviaOption:1}){const i=c_e(e,t,r),o=void 0===n?e.text.length:c_e(e,n,r);this.deleteRange(e,{pos:i,end:o})}replaceRange(e,t,n,r={}){this.changes.push({kind:1,sourceFile:e,range:t,options:r,node:n})}replaceNode(e,t,n,r=s_e){this.replaceRange(e,a_e(e,t,t,r),n,r)}replaceNodeRange(e,t,n,r,i=s_e){this.replaceRange(e,a_e(e,t,n,i),r,i)}replaceRangeWithNodes(e,t,n,r={}){this.changes.push({kind:2,sourceFile:e,range:t,options:r,nodes:n})}replaceNodeWithNodes(e,t,n,r=s_e){this.replaceRangeWithNodes(e,a_e(e,t,t,r),n,r)}replaceNodeWithText(e,t,n){this.replaceRangeWithText(e,a_e(e,t,t,s_e),n)}replaceNodeRangeWithNodes(e,t,n,r,i=s_e){this.replaceRangeWithNodes(e,a_e(e,t,n,i),r,i)}nodeHasTrailingComment(e,t,n=s_e){return!!l_e(e,t,n)}nextCommaToken(e,t){const n=$Y(t,t.parent,e);return n&&28===n.kind?n:void 0}replacePropertyAssignment(e,t,n){const r=this.nextCommaToken(e,t)?"":","+this.newLineCharacter;this.replaceNode(e,t,n,{suffix:r})}insertNodeAt(e,t,n,r={}){this.replaceRange(e,Yb(t),n,r)}insertNodesAt(e,t,n,r={}){this.replaceRangeWithNodes(e,Yb(t),n,r)}insertNodeAtTopOfFile(e,t,n){this.insertAtTopOfFile(e,t,n)}insertNodesAtTopOfFile(e,t,n){this.insertAtTopOfFile(e,t,n)}insertAtTopOfFile(e,t,n){const r=function(e){let t;for(const l of e.statements){if(!yf(l))break;t=l}let n=0;const r=e.text;if(t)return n=t.end,c(),n;const i=Ea(r);void 0!==i&&(n=i.length,c());const o=wa(r,n);if(!o)return n;let s,a;for(const l of o){if(3===l.kind){if(H_(r,l.pos)){s={range:l,pinnedOrTripleSlash:!0};continue}}else if(W_(r,l.pos,l.end)){s={range:l,pinnedOrTripleSlash:!0};continue}if(s){if(s.pinnedOrTripleSlash)break;if(e.getLineAndCharacterOfPosition(l.pos).line>=e.getLineAndCharacterOfPosition(s.range.end).line+2)break}if(e.statements.length){void 0===a&&(a=e.getLineAndCharacterOfPosition(e.statements[0].getStart()).line);if(a<e.getLineAndCharacterOfPosition(l.end).line+2)break}s={range:l,pinnedOrTripleSlash:!1}}s&&(n=s.range.end,c());return n;function c(){if(n<r.length){const e=r.charCodeAt(n);ia(e)&&(n++,n<r.length&&13===e&&10===r.charCodeAt(n)&&n++)}}}(e),i={prefix:0===r?void 0:this.newLineCharacter,suffix:(ia(e.text.charCodeAt(r))?"":this.newLineCharacter)+(n?this.newLineCharacter:"")};at(t)?this.insertNodesAt(e,r,t,i):this.insertNodeAt(e,r,t,i)}insertNodesAtEndOfFile(e,t,n){this.insertAtEndOfFile(e,t,n)}insertAtEndOfFile(e,t,n){const r=e.end+1,i={prefix:this.newLineCharacter,suffix:this.newLineCharacter+(n?this.newLineCharacter:"")};this.insertNodesAt(e,r,t,i)}insertStatementsInNewFile(e,t,n){this.newFileChanges||(this.newFileChanges=nt()),this.newFileChanges.add(e,{oldFile:n,statements:t})}insertFirstParameter(e,t,n){const r=we(t);r?this.insertNodeBefore(e,r,n):this.insertNodeAt(e,t.pos,n)}insertNodeBefore(e,t,n,r=!1,i={}){this.insertNodeAt(e,c_e(e,t,i),n,this.getOptionsForInsertNodeBefore(t,n,r))}insertNodesBefore(e,t,n,r=!1,i={}){this.insertNodesAt(e,c_e(e,t,i),n,this.getOptionsForInsertNodeBefore(t,Ee(n),r))}insertModifierAt(e,t,n,r={}){this.insertNodeAt(e,t,oE.createToken(n),r)}insertModifierBefore(e,t,n){return this.insertModifierAt(e,n.getStart(e),t,{suffix:" "})}insertCommentBeforeLine(e,t,n,r){const i=D_(t,e),o=t$(e.text,i),s=w_e(e,o),a=GY(e,s?o:n),c=e.text.slice(i,o),l=`${s?"":this.newLineCharacter}//${r}${this.newLineCharacter}${c}`;this.insertText(e,a.getStart(e),l)}insertJsdocCommentBefore(e,t,n){const r=t.getStart(e);if(t.jsDoc)for(const s of t.jsDoc)this.deleteRange(e,{pos:bY(s.getStart(e),e),end:u_e(e,s,{})});const i=n$(e.text,r-1),o=e.text.slice(i,r);this.insertNodeAt(e,r,n,{suffix:this.newLineCharacter+o})}createJSDocText(e,t){const n=U(t.jsDoc,(e=>lt(e.comment)?oE.createJSDocText(e.comment):e.comment)),r=Ie(t.jsDoc);return r&&dx(r.pos,r.end,e)&&0===m(n)?void 0:oE.createNodeArray(S(n,oE.createJSDocText("\n")))}replaceJSDocComment(e,t,n){this.insertJsdocCommentBefore(e,function(e){if(219!==e.kind)return e;const t=172===e.parent.kind?e.parent:e.parent.parent;return t.jsDoc=e.jsDoc,t}(t),oE.createJSDocComment(this.createJSDocText(e,t),oE.createNodeArray(n)))}addJSDocTags(e,t,n){const r=B(t.jsDoc,(e=>e.tags)),i=n.filter((e=>!r.some(((t,n)=>{const i=function(e,t){if(e.kind!==t.kind)return;switch(e.kind){case 341:{const n=e,r=t;return YC(n.name)&&YC(r.name)&&n.name.escapedText===r.name.escapedText?oE.createJSDocParameterTag(void 0,r.name,!1,r.typeExpression,r.isNameFirst,n.comment):void 0}case 342:return oE.createJSDocReturnTag(void 0,t.typeExpression,e.comment);case 344:return oE.createJSDocTypeTag(void 0,t.typeExpression,e.comment)}}(t,e);return i&&(r[n]=i),!!i}))));this.replaceJSDocComment(e,t,[...r,...i])}filterJSDocTags(e,t,n){this.replaceJSDocComment(e,t,M(B(t.jsDoc,(e=>e.tags)),n))}replaceRangeWithText(e,t,n){this.changes.push({kind:3,sourceFile:e,range:t,text:n})}insertText(e,t,n){this.replaceRangeWithText(e,Yb(t),n)}tryInsertTypeAnnotation(e,t,n){let r;if(pu(t)){if(r=FY(t,22,e),!r){if(!uA(t))return!1;r=Ee(t.parameters)}}else r=(260===t.kind?t.exclamationToken:t.questionToken)??t.name;return this.insertNodeAt(e,r.end,n,{prefix:": "}),!0}tryInsertThisTypeAnnotation(e,t,n){const r=FY(t,21,e).getStart(e)+1,i=t.parameters.length?", ":"";this.insertNodeAt(e,r,n,{prefix:"this: ",suffix:i})}insertTypeParameters(e,t,n){const r=(FY(t,21,e)||Ee(t.parameters)).getStart(e);this.insertNodesAt(e,r,n,{prefix:"<",suffix:">",joiner:", "})}getOptionsForInsertNodeBefore(e,t,n){return kd(e)||bu(e)?{suffix:n?this.newLineCharacter+this.newLineCharacter:this.newLineCharacter}:$A(e)?{suffix:", "}:fN(e)?fN(t)?{suffix:", "}:{}:MC(e)&&dI(e.parent)||bI(e)?{suffix:", "}:xI(e)?{suffix:","+(n?this.newLineCharacter:" ")}:Tn.failBadSyntaxKind(e)}insertNodeAtConstructorStart(e,t,n){const r=we(t.body.statements);r&&t.body.multiLine?this.insertNodeBefore(e,r,n):this.replaceConstructorBody(e,t,[n,...t.body.statements])}insertNodeAtConstructorStartAfterSuperCall(e,t,n){const r=w(t.body.statements,(e=>LA(e)&&ff(e.expression)));r&&t.body.multiLine?this.insertNodeAfter(e,r,n):this.replaceConstructorBody(e,t,[...t.body.statements,n])}insertNodeAtConstructorEnd(e,t,n){const r=Ne(t.body.statements);r&&t.body.multiLine?this.insertNodeAfter(e,r,n):this.replaceConstructorBody(e,t,[...t.body.statements,n])}replaceConstructorBody(e,t,n){this.replaceNode(e,t.body,oE.createBlock(n,!0))}insertNodeAtEndOfScope(e,t,n){const r=c_e(e,t.getLastToken(),{});this.insertNodeAt(e,r,n,{prefix:ia(e.text.charCodeAt(t.getLastToken().pos))?this.newLineCharacter:this.newLineCharacter+this.newLineCharacter,suffix:this.newLineCharacter})}insertMemberAtStart(e,t,n){this.insertNodeAtStartWorker(e,t,n)}insertNodeAtObjectStart(e,t,n){this.insertNodeAtStartWorker(e,t,n)}insertNodeAtStartWorker(e,t,n){const r=this.guessIndentationFromExistingMembers(e,t)??this.computeIndentationForNewMember(e,t);this.insertNodeAt(e,g_e(t).pos,n,this.getInsertNodeAtStartInsertOptions(e,t,r))}guessIndentationFromExistingMembers(e,t){let n,r=t;for(const i of g_e(t)){if(ix(r,i,e))return;const t=i.getStart(e),o=C_e.SmartIndenter.findFirstNonWhitespaceColumn(bY(t,e),t,e,this.formatContext.options);if(void 0===n)n=o;else if(o!==n)return;r=i}return n}computeIndentationForNewMember(e,t){const n=t.getStart(e);return C_e.SmartIndenter.findFirstNonWhitespaceColumn(bY(n,e),n,e,this.formatContext.options)+(this.formatContext.options.indentSize??4)}getInsertNodeAtStartInsertOptions(e,t,n){const r=0===g_e(t).length,i=jx(this.classesWithNodesInsertedAtStart,Gz(t),{node:t,sourceFile:e}),o=tA(t)&&(!sf(e)||!r);return{indentation:n,prefix:(tA(t)&&sf(e)&&r&&!i?",":"")+this.newLineCharacter,suffix:o?",":rI(t)&&r?";":""}}insertNodeAfterComma(e,t,n){const r=this.insertNodeAfterWorker(e,this.nextCommaToken(e,t)||t,n);this.insertNodeAt(e,r,n,this.getInsertNodeAfterOptions(e,t))}insertNodeAfter(e,t,n){const r=this.insertNodeAfterWorker(e,t,n);this.insertNodeAt(e,r,n,this.getInsertNodeAfterOptions(e,t))}insertNodeAtEndOfList(e,t,n){this.insertNodeAt(e,t.end,n,{prefix:", "})}insertNodesAfter(e,t,n){const r=this.insertNodeAfterWorker(e,t,Ee(n));this.insertNodesAt(e,r,n,this.getInsertNodeAfterOptions(e,t))}insertNodeAfterWorker(e,t,n){var r,i;i=n,((hN(r=t)||gN(r))&&Au(i)&&167===i.name.kind||wd(r)&&wd(i))&&59!==e.text.charCodeAt(t.end-1)&&this.replaceRange(e,Yb(t.end),oE.createToken(27));return u_e(e,t,{})}getInsertNodeAfterOptions(e,t){const n=this.getInsertNodeAfterOptionsWorker(t);return{...n,prefix:t.end===e.end&&kd(t)?n.prefix?`\n${n.prefix}`:"\n":n.prefix}}getInsertNodeAfterOptionsWorker(e){switch(e.kind){case 263:case 267:return{prefix:this.newLineCharacter,suffix:this.newLineCharacter};case 260:case 11:case 80:return{prefix:", "};case 303:return{suffix:","+this.newLineCharacter};case 95:return{prefix:" "};case 169:return{};default:return Tn.assert(kd(e)||Au(e)),{suffix:this.newLineCharacter}}}insertName(e,t,n){if(Tn.assert(!t.name),219===t.kind){const r=FY(t,39,e),i=FY(t,21,e);i?(this.insertNodesAt(e,i.getStart(e),[oE.createToken(100),oE.createIdentifier(n)],{joiner:" "}),k_e(this,e,r)):(this.insertText(e,Ee(t.parameters).getStart(e),`function ${n}(`),this.replaceRange(e,r,oE.createToken(22))),241!==t.body.kind&&(this.insertNodesAt(e,t.body.getStart(e),[oE.createToken(19),oE.createToken(107)],{joiner:" ",suffix:" "}),this.insertNodesAt(e,t.body.end,[oE.createToken(27),oE.createToken(20)],{joiner:" "}))}else{const r=FY(t,218===t.kind?100:86,e).end;this.insertNodeAt(e,r,oE.createIdentifier(n),{prefix:" "})}}insertExportModifier(e,t){this.insertText(e,t.getStart(e),"export ")}insertImportSpecifierAtIndex(e,t,n,r){const i=n.elements[r-1];i?this.insertNodeInListAfter(e,i,t):this.insertNodeBefore(e,n.elements[0],t,!dx(n.elements[0].getStart(),n.parent.parent.getStart(),e))}insertNodeInListAfter(e,t,n,r=C_e.SmartIndenter.getContainingList(t,e)){if(!r)return void Tn.fail("node is not a list element");const i=np(r,t);if(i<0)return;const o=t.getEnd();if(i!==r.length-1){const o=QY(e,t.end);if(o&&d_e(t,o)){const t=r[i+1],s=o_e(e.text,t.getFullStart()),a=`${Vs(o.kind)}${e.text.substring(o.end,s)}`;this.insertNodesAt(e,s,[n],{suffix:a})}}else{const s=t.getStart(e),a=bY(s,e);let c,l=!1;if(1===r.length)c=28;else{const n=eZ(t.pos,e);c=d_e(t,n)?n.kind:28;l=bY(r[i-1].getStart(e),e)!==a}if(!function(e,t){let n=t;for(;n<e.length;){const t=e.charCodeAt(n);if(!ra(t))return 47===t;n++}return!1}(e.text,t.end)&&dx(r.pos,r.end,e)||(l=!0),l){this.replaceRange(e,Yb(o),oE.createToken(c));const t=C_e.SmartIndenter.findFirstNonWhitespaceColumn(a,s,e,this.formatContext.options);let r=da(e.text,o,!0,!1);for(;r!==o&&ia(e.text.charCodeAt(r-1));)r--;this.replaceRange(e,Yb(r),n,{indentation:t,prefix:this.newLineCharacter})}else this.replaceRange(e,Yb(o),n,{prefix:`${Vs(c)} `})}}parenthesizeExpression(e,t){this.replaceRange(e,Tw(t),oE.createParenthesizedExpression(t))}finishClassesWithNodesInsertedAtStart(){this.classesWithNodesInsertedAtStart.forEach((({node:e,sourceFile:t})=>{const[n,r]=function(e,t){const n=FY(e,19,t),r=FY(e,20,t);return[null==n?void 0:n.end,null==r?void 0:r.end]}(e,t);if(void 0!==n&&void 0!==r){const i=0===g_e(e).length,o=dx(n,r,t);i&&o&&n!==r-1&&this.deleteRange(t,Yb(n,r-1)),o&&this.insertText(t,r-1,this.newLineCharacter)}}))}finishDeleteDeclarations(){const e=new Set;for(const{sourceFile:t,node:n}of this.deletedNodes)this.deletedNodes.some((e=>e.sourceFile===t&&SY(e.node,n)))||(at(n)?this.deleteRange(t,ww(t,n)):v_e.deleteDeclaration(this,e,t,n));e.forEach((t=>{const n=t.getSourceFile(),r=C_e.SmartIndenter.getContainingList(t,n);if(t!==Ae(r))return;const i=C(r,(t=>!e.has(t)),r.length-2);-1!==i&&this.deleteRange(n,{pos:r[i].end,end:m_e(n,r[i+1])})}))}getChanges(e){this.finishDeleteDeclarations(),this.finishClassesWithNodesInsertedAtStart();const t=p_e.getTextChangesFromChanges(this.changes,this.newLineCharacter,this.formatContext,e);return this.newFileChanges&&this.newFileChanges.forEach(((e,n)=>{t.push(p_e.newFileChanges(n,e,this.newLineCharacter,this.formatContext))})),t}createNewFile(e,t,n){this.insertStatementsInNewFile(t,n,e)}};function m_e(e,t){return da(e.text,c_e(e,t,{leadingTriviaOption:1}),!1,!0)}function h_e(e,t,n,r){const i=m_e(e,r);if(void 0===n||dx(u_e(e,t,{}),i,e))return i;const o=eZ(r.getStart(e),e);if(d_e(t,o)){const r=eZ(t.getStart(e),e);if(d_e(n,r)){const t=da(e.text,o.getEnd(),!0,!0);if(dx(r.getStart(e),o.getStart(e),e))return ia(e.text.charCodeAt(t-1))?t-1:t;if(ia(e.text.charCodeAt(t)))return t}}return i}function g_e(e){return tA(e)?e.properties:e.members}function y_e(e,t){for(let n=t.length-1;n>=0;n--){const{span:r,newText:i}=t[n];e=`${e.substring(0,r.start)}${i}${e.substring(qa(r))}`}return e}(e=>{function t(e,t,r,i){const o=U(t,(e=>e.statements.map((t=>4===t?"":n(t,e.oldFile,r).text)))).join(r),s=XM("any file name",o,{languageVersion:99,jsDocParsingMode:1},!0,e);return y_e(o,C_e.formatDocument(s,i))+r}function n(e,t,n){const r=T_e(n);return vV({newLine:h0(n),neverAsciiEscape:!0,preserveSourceNewlines:!0,terminateUnterminatedLiterals:!0},r).writeNode(4,e,t,r),{text:r.getText(),node:x_e(e)}}e.getTextChangesFromChanges=function(e,t,r,i){return J(Ye(e,(e=>e.sourceFile.path)),(e=>{const o=e[0].sourceFile,s=xe(e,((e,t)=>e.range.pos-t.range.pos||e.range.end-t.range.end));for(let t=0;t<s.length-1;t++)Tn.assert(s[t].range.end<=s[t+1].range.pos,"Changes overlap",(()=>`${JSON.stringify(s[t].range)} and ${JSON.stringify(s[t+1].range)}`));const a=J(s,(e=>{const s=FZ(e.range),a=1===e.kind?C_(vc(e.node))??e.sourceFile:2===e.kind?C_(vc(e.nodes[0]))??e.sourceFile:e.sourceFile,c=function(e,t,r,i,o,s){var a;if(0===e.kind)return"";if(3===e.kind)return e.text;const{options:c={},range:{pos:l}}=e,u=e=>function(e,t,r,i,{indentation:o,prefix:s,delta:a},c,l,u){const{node:d,text:_}=n(e,t,c);u&&u(d,_);const p=y0(l,t),f=void 0!==o?o:C_e.SmartIndenter.getIndentation(i,r,p,s===c||bY(i,t)===i);void 0===a&&(a=C_e.SmartIndenter.shouldIndentChildNode(p,e)&&p.indentSize||0);const m={text:_,getLineAndCharacterOfPosition(e){return ta(this,e)}},h=C_e.formatNodeGivenIndentation(d,m,t.languageVariant,f,a,{...l,options:p});return y_e(_,h)}(e,t,r,l,c,i,o,s),d=2===e.kind?e.nodes.map((e=>Yt(u(e),i))).join((null==(a=e.options)?void 0:a.joiner)||i):u(e.node),_=void 0!==c.indentation||bY(l,t)===l?d:d.replace(/^\s+/,"");return(c.prefix||"")+_+(!c.suffix||Qt(_,c.suffix)?"":c.suffix)}(e,a,o,t,r,i);if(s.length!==c.length||!u0(a.text,c,s.start))return jZ(s,c)}));return a.length>0?{fileName:o.fileName,textChanges:a}:void 0}))},e.newFileChanges=function(e,n,r,i){const o=t(RT(e),n,r,i);return{fileName:e,textChanges:[jZ(ec(0,0),o)],isNewFile:!0}},e.newFileChangesWorker=t,e.getNonformattedText=n})(p_e||(p_e={}));var v_e,b_e={...Bq,factory:Hk(1|Bq.factory.flags,Bq.factory.baseFactory)};function x_e(e){const t=fU(e,x_e,b_e,S_e,x_e),n=fy(t)?t:Object.create(t);return jw(n,$de(e),t_e(e)),n}function S_e(e,t,n,r,i){const o=oU(e,t,n,r,i);if(!o)return o;Tn.assert(e);const s=o===e?oE.createNodeArray(o.slice(0)):o;return jw(s,$de(e),t_e(e)),s}function T_e(e){let t=0;const n=Qy(e);function r(e,r){if(r||!function(e){return da(e,0)===e.length}(e)){t=n.getTextPos();let r=0;for(;na(e.charCodeAt(e.length-r-1));)r++;t-=r}}return{onBeforeEmitNode:e=>{e&&e_e(e,t)},onAfterEmitNode:e=>{e&&n_e(e,t)},onBeforeEmitNodeArray:e=>{e&&e_e(e,t)},onAfterEmitNodeArray:e=>{e&&n_e(e,t)},onBeforeEmitToken:e=>{e&&e_e(e,t)},onAfterEmitToken:e=>{e&&n_e(e,t)},write:function(e){n.write(e),r(e,!1)},writeComment:function(e){n.writeComment(e)},writeKeyword:function(e){n.writeKeyword(e),r(e,!1)},writeOperator:function(e){n.writeOperator(e),r(e,!1)},writePunctuation:function(e){n.writePunctuation(e),r(e,!1)},writeTrailingSemicolon:function(e){n.writeTrailingSemicolon(e),r(e,!1)},writeParameter:function(e){n.writeParameter(e),r(e,!1)},writeProperty:function(e){n.writeProperty(e),r(e,!1)},writeSpace:function(e){n.writeSpace(e),r(e,!1)},writeStringLiteral:function(e){n.writeStringLiteral(e),r(e,!1)},writeSymbol:function(e,t){n.writeSymbol(e,t),r(e,!1)},writeLine:function(e){n.writeLine(e)},increaseIndent:function(){n.increaseIndent()},decreaseIndent:function(){n.decreaseIndent()},getText:function(){return n.getText()},rawWrite:function(e){n.rawWrite(e),r(e,!1)},writeLiteral:function(e){n.writeLiteral(e),r(e,!0)},getTextPos:function(){return n.getTextPos()},getLine:function(){return n.getLine()},getColumn:function(){return n.getColumn()},getIndent:function(){return n.getIndent()},isAtStartOfLine:function(){return n.isAtStartOfLine()},hasTrailingComment:()=>n.hasTrailingComment(),hasTrailingWhitespace:()=>n.hasTrailingWhitespace(),clear:function(){n.clear(),t=0}}}function w_e(e,t){return!(mZ(e,t)||iZ(e,t)||aZ(e,t)||cZ(e,t))}function k_e(e,t,n,r={leadingTriviaOption:1}){const i=c_e(t,n,r),o=u_e(t,n,r);e.deleteRange(t,{pos:i,end:o})}function E_e(e,t,n,r){const i=Tn.checkDefined(C_e.SmartIndenter.getContainingList(r,n)),o=np(i,r);Tn.assert(-1!==o),1!==i.length?(Tn.assert(!t.has(r),"Deleting a node twice"),t.add(r),e.deleteRange(n,{pos:m_e(n,r),end:o===i.length-1?u_e(n,r,{}):h_e(n,r,i[o-1],i[o+1])})):k_e(e,n,r)}(e=>{function t(e,t,n){if(n.parent.name){const r=Tn.checkDefined(QY(t,n.pos-1));e.deleteRange(t,{pos:r.getStart(t),end:n.end})}else{k_e(e,t,Mg(n,272))}}e.deleteDeclaration=function(e,n,r,i){switch(i.kind){case 169:{const t=i.parent;uA(t)&&1===t.parameters.length&&!FY(t,21,r)?e.replaceNodeWithText(r,i,"()"):E_e(e,n,r,i);break}case 272:case 271:k_e(e,r,i,{leadingTriviaOption:r.imports.length&&i===Ee(r.imports).parent||i===w(r.statements,Np)?0:zd(i)?2:3});break;case 208:const o=i.parent;207===o.kind&&i!==Ae(o.elements)?k_e(e,r,i):E_e(e,n,r,i);break;case 260:!function(e,t,n,r){const{parent:i}=r;if(299===i.kind)return void e.deleteNodeRange(n,FY(i,21,n),FY(i,22,n));if(1!==i.declarations.length)return void E_e(e,t,n,r);const o=i.parent;switch(o.kind){case 250:case 249:e.replaceNode(n,r,oE.createObjectLiteralExpression());break;case 248:k_e(e,n,i);break;case 243:k_e(e,n,o,{leadingTriviaOption:zd(o)?2:3});break;default:Tn.assertNever(o)}}(e,n,r,i);break;case 168:E_e(e,n,r,i);break;case 276:const s=i.parent;1===s.elements.length?t(e,r,s):E_e(e,n,r,i);break;case 274:t(e,r,i);break;case 27:k_e(e,r,i,{trailingTriviaOption:0});break;case 100:k_e(e,r,i,{leadingTriviaOption:0});break;case 263:case 262:k_e(e,r,i,{leadingTriviaOption:zd(i)?2:3});break;default:i.parent?_I(i.parent)&&i.parent.name===i?function(e,t,n){if(n.namedBindings){const r=n.name.getStart(t),i=QY(t,n.name.end);if(i&&28===i.kind){const n=da(t.text,i.end,!1,!0);e.deleteRange(t,{pos:r,end:n})}else k_e(e,t,n.name)}else k_e(e,t,n.parent)}(e,r,i.parent):iA(i.parent)&&A(i.parent.arguments,i)?E_e(e,n,r,i):k_e(e,r,i):k_e(e,r,i)}}})(v_e||(v_e={}));var C_e={};a(C_e,{FormattingContext:()=>A_e,FormattingRequestKind:()=>N_e,RuleAction:()=>F_e,RuleFlags:()=>R_e,SmartIndenter:()=>ofe,anyContext:()=>O_e,createTextRangeWithKind:()=>dfe,formatDocument:()=>hfe,formatNodeGivenIndentation:()=>xfe,formatOnClosingCurly:()=>mfe,formatOnEnter:()=>_fe,formatOnOpeningCurly:()=>ffe,formatOnSemicolon:()=>pfe,formatSelection:()=>gfe,getAllRules:()=>L_e,getFormatContext:()=>Zpe,getFormattingScanner:()=>P_e,getIndentationString:()=>Efe,getRangeOfEnclosingComment:()=>kfe});var N_e=(e=>(e[e.FormatDocument=0]="FormatDocument",e[e.FormatSelection=1]="FormatSelection",e[e.FormatOnEnter=2]="FormatOnEnter",e[e.FormatOnSemicolon=3]="FormatOnSemicolon",e[e.FormatOnOpeningCurlyBrace=4]="FormatOnOpeningCurlyBrace",e[e.FormatOnClosingCurlyBrace=5]="FormatOnClosingCurlyBrace",e))(N_e||{}),A_e=class{constructor(e,t,n){this.sourceFile=e,this.formattingRequestKind=t,this.options=n}updateContext(e,t,n,r,i){this.currentTokenSpan=Tn.checkDefined(e),this.currentTokenParent=Tn.checkDefined(t),this.nextTokenSpan=Tn.checkDefined(n),this.nextTokenParent=Tn.checkDefined(r),this.contextNode=Tn.checkDefined(i),this.contextNodeAllOnSameLine=void 0,this.nextNodeAllOnSameLine=void 0,this.tokensAreOnSameLine=void 0,this.contextNodeBlockIsOnOneLine=void 0,this.nextNodeBlockIsOnOneLine=void 0}ContextNodeAllOnSameLine(){return void 0===this.contextNodeAllOnSameLine&&(this.contextNodeAllOnSameLine=this.NodeIsOnOneLine(this.contextNode)),this.contextNodeAllOnSameLine}NextNodeAllOnSameLine(){return void 0===this.nextNodeAllOnSameLine&&(this.nextNodeAllOnSameLine=this.NodeIsOnOneLine(this.nextTokenParent)),this.nextNodeAllOnSameLine}TokensAreOnSameLine(){if(void 0===this.tokensAreOnSameLine){const e=this.sourceFile.getLineAndCharacterOfPosition(this.currentTokenSpan.pos).line,t=this.sourceFile.getLineAndCharacterOfPosition(this.nextTokenSpan.pos).line;this.tokensAreOnSameLine=e===t}return this.tokensAreOnSameLine}ContextNodeBlockIsOnOneLine(){return void 0===this.contextNodeBlockIsOnOneLine&&(this.contextNodeBlockIsOnOneLine=this.BlockIsOnOneLine(this.contextNode)),this.contextNodeBlockIsOnOneLine}NextNodeBlockIsOnOneLine(){return void 0===this.nextNodeBlockIsOnOneLine&&(this.nextNodeBlockIsOnOneLine=this.BlockIsOnOneLine(this.nextTokenParent)),this.nextNodeBlockIsOnOneLine}NodeIsOnOneLine(e){return this.sourceFile.getLineAndCharacterOfPosition(e.getStart(this.sourceFile)).line===this.sourceFile.getLineAndCharacterOfPosition(e.getEnd()).line}BlockIsOnOneLine(e){const t=FY(e,19,this.sourceFile),n=FY(e,20,this.sourceFile);if(t&&n){return this.sourceFile.getLineAndCharacterOfPosition(t.getEnd()).line===this.sourceFile.getLineAndCharacterOfPosition(n.getStart(this.sourceFile)).line}return!1}},I_e=Ia(99,!1,0),D_e=Ia(99,!1,1);function P_e(e,t,n,r,i){const o=1===t?D_e:I_e;o.setText(e),o.resetTokenState(n);let s,a,c,l,u,d=!0;const _=i({advance:function(){u=void 0;o.getTokenFullStart()!==n?d=!!a&&4===Ae(a).kind:o.scan();s=void 0,a=void 0;let e=o.getTokenFullStart();for(;e<r;){const t=o.getToken();if(!Vg(t))break;o.scan();const n={pos:e,end:o.getTokenFullStart(),kind:t};e=o.getTokenFullStart(),s=_e(s,n)}c=o.getTokenFullStart()},readTokenInfo:function(e){Tn.assert(p());const t=function(e){switch(e.kind){case 34:case 72:case 73:case 50:case 49:return!0}return!1}(e)?1:(i=e,14===i.kind?2:function(e){return 17===e.kind||18===e.kind}(e)?3:function(e){if(e.parent)switch(e.parent.kind){case 291:case 286:case 287:case 285:return Og(e.kind)||80===e.kind}return!1}(e)?4:(n=e,OC(n)||II(n)&&12===(null==u?void 0:u.token.kind)?5:function(e){return e.parent&&LI(e.parent)&&e.parent.initializer===e}(e)?6:0));var n;var i;if(u&&t===l)return m(u,e);o.getTokenFullStart()!==c&&(Tn.assert(void 0!==u),o.resetTokenState(c),o.scan());let d=function(e,t){const n=o.getToken();switch(l=0,t){case 1:if(32===n){l=1;const t=o.reScanGreaterToken();return Tn.assert(e.kind===t),t}break;case 2:if(44===(r=n)||69===r){l=2;const t=o.reScanSlashToken();return Tn.assert(e.kind===t),t}break;case 3:if(20===n)return l=3,o.reScanTemplateToken(!1);break;case 4:return l=4,o.scanJsxIdentifier();case 5:return l=5,o.reScanJsxToken(!1);case 6:return l=6,o.reScanJsxAttributeValue();case 0:break;default:Tn.assertNever(t)}var r;return n}(e,t);const _=dfe(o.getTokenFullStart(),o.getTokenEnd(),d);a&&(a=void 0);for(;o.getTokenFullStart()<r&&(d=o.scan(),Vg(d));){const e=dfe(o.getTokenFullStart(),o.getTokenEnd(),d);if(a||(a=[]),a.push(e),4===d){o.scan();break}}return u={leadingTrivia:s,trailingTrivia:a,token:_},m(u,e)},readEOFTokenRange:function(){return Tn.assert(f()),dfe(o.getTokenFullStart(),o.getTokenEnd(),1)},isOnToken:p,isOnEOF:f,getCurrentLeadingTrivia:()=>s,lastTrailingTriviaWasNewLine:()=>d,skipToEndOf:function(e){o.resetTokenState(e.end),c=o.getTokenFullStart(),l=void 0,u=void 0,d=!1,s=void 0,a=void 0},skipToStartOf:function(e){o.resetTokenState(e.pos),c=o.getTokenFullStart(),l=void 0,u=void 0,d=!1,s=void 0,a=void 0},getTokenFullStart:()=>(null==u?void 0:u.token.pos)??o.getTokenStart(),getStartPos:()=>(null==u?void 0:u.token.pos)??o.getTokenStart()});return u=void 0,o.setText(void 0),_;function p(){const e=u?u.token.kind:o.getToken();return 1!==e&&!Vg(e)}function f(){return 1===(u?u.token.kind:o.getToken())}function m(e,t){return Bl(t)&&e.token.kind!==t.kind&&(e.token.kind=t.kind),e}}var M_e,O_e=_,F_e=(e=>(e[e.None=0]="None",e[e.StopProcessingSpaceActions=1]="StopProcessingSpaceActions",e[e.StopProcessingTokenActions=2]="StopProcessingTokenActions",e[e.InsertSpace=4]="InsertSpace",e[e.InsertNewLine=8]="InsertNewLine",e[e.DeleteSpace=16]="DeleteSpace",e[e.DeleteToken=32]="DeleteToken",e[e.InsertTrailingSemicolon=64]="InsertTrailingSemicolon",e[e.StopAction=3]="StopAction",e[e.ModifySpaceAction=28]="ModifySpaceAction",e[e.ModifyTokenAction=96]="ModifyTokenAction",e))(F_e||{}),R_e=(e=>(e[e.None=0]="None",e[e.CanDeleteNewLines=1]="CanDeleteNewLines",e))(R_e||{});function L_e(){const e=[];for(let _=0;_<=165;_++)1!==_&&e.push(_);function t(...t){return{tokens:e.filter((e=>!t.some((t=>t===e)))),isSpecific:!1}}const n={tokens:e,isSpecific:!1},r=z_e([...e,3]),i=z_e([...e,1]),o=B_e(83,165),s=B_e(30,79),a=[103,104,165,130,142,152],c=[80,...zZ],l=r,u=z_e([80,32,3,86,95,102]),d=z_e([22,3,92,113,98,93,85]);return[...[j_e("IgnoreBeforeComment",n,[2,3],O_e,1),j_e("IgnoreAfterLineComment",2,n,O_e,1),j_e("NotSpaceBeforeColon",n,59,[Tpe,Z_e,X_e],16),j_e("SpaceAfterColon",59,n,[Tpe,Z_e,Ape],4),j_e("NoSpaceBeforeQuestionMark",n,58,[Tpe,Z_e,X_e],16),j_e("SpaceAfterQuestionMarkInConditionalOperator",58,n,[Tpe,tpe],4),j_e("NoSpaceAfterQuestionMark",58,n,[Tpe,epe],16),j_e("NoSpaceBeforeDot",n,[25,29],[Tpe,Ype],16),j_e("NoSpaceAfterDot",[25,29],n,[Tpe],16),j_e("NoSpaceBetweenImportParenInImportType",102,21,[Tpe,Spe],16),j_e("NoSpaceAfterUnaryPrefixOperator",[46,47,55,54],[9,10,80,21,23,19,110,105],[Tpe,Z_e],16),j_e("NoSpaceAfterUnaryPreincrementOperator",46,[80,21,110,105],[Tpe],16),j_e("NoSpaceAfterUnaryPredecrementOperator",47,[80,21,110,105],[Tpe],16),j_e("NoSpaceBeforeUnaryPostincrementOperator",[80,22,24,105],46,[Tpe,Hpe],16),j_e("NoSpaceBeforeUnaryPostdecrementOperator",[80,22,24,105],47,[Tpe,Hpe],16),j_e("SpaceAfterPostincrementWhenFollowedByAdd",46,40,[Tpe,Y_e],4),j_e("SpaceAfterAddWhenFollowedByUnaryPlus",40,40,[Tpe,Y_e],4),j_e("SpaceAfterAddWhenFollowedByPreincrement",40,46,[Tpe,Y_e],4),j_e("SpaceAfterPostdecrementWhenFollowedBySubtract",47,41,[Tpe,Y_e],4),j_e("SpaceAfterSubtractWhenFollowedByUnaryMinus",41,41,[Tpe,Y_e],4),j_e("SpaceAfterSubtractWhenFollowedByPredecrement",41,47,[Tpe,Y_e],4),j_e("NoSpaceAfterCloseBrace",20,[28,27],[Tpe],16),j_e("NewLineBeforeCloseBraceInBlockContext",r,20,[ope],8),j_e("SpaceAfterCloseBrace",20,t(22),[Tpe,fpe],4),j_e("SpaceBetweenCloseBraceAndElse",20,93,[Tpe],4),j_e("SpaceBetweenCloseBraceAndWhile",20,117,[Tpe],4),j_e("NoSpaceBetweenEmptyBraceBrackets",19,20,[Tpe,hpe],16),j_e("SpaceAfterConditionalClosingParen",22,23,[mpe],4),j_e("NoSpaceBetweenFunctionKeywordAndStar",100,42,[dpe],16),j_e("SpaceAfterStarInGeneratorDeclaration",42,80,[dpe],4),j_e("SpaceAfterFunctionInFuncDecl",100,n,[lpe],4),j_e("NewLineAfterOpenBraceInBlockContext",19,n,[ope],8),j_e("SpaceAfterGetSetInMember",[139,153],80,[lpe],4),j_e("NoSpaceBetweenYieldKeywordAndStar",127,42,[Tpe,Jpe],16),j_e("SpaceBetweenYieldOrYieldStarAndOperand",[127,42],n,[Tpe,Jpe],4),j_e("NoSpaceBetweenReturnAndSemicolon",107,27,[Tpe],16),j_e("SpaceAfterCertainKeywords",[115,111,105,91,107,114,135],n,[Tpe],4),j_e("SpaceAfterLetConstInVariableDeclaration",[121,87],n,[Tpe,Fpe],4),j_e("NoSpaceBeforeOpenParenInFuncCall",n,21,[Tpe,gpe,ype],16),j_e("SpaceBeforeBinaryKeywordOperator",n,a,[Tpe,Y_e],4),j_e("SpaceAfterBinaryKeywordOperator",a,n,[Tpe,Y_e],4),j_e("SpaceAfterVoidOperator",116,n,[Tpe,Kpe],4),j_e("SpaceBetweenAsyncAndOpenParen",134,21,[xpe,Tpe],4),j_e("SpaceBetweenAsyncAndFunctionKeyword",134,[100,80],[Tpe],4),j_e("NoSpaceBetweenTagAndTemplateString",[80,22],[15,16],[Tpe],16),j_e("SpaceBeforeJsxAttribute",n,80,[Cpe,Tpe],4),j_e("SpaceBeforeSlashInJsxOpeningElement",n,44,[Dpe,Tpe],4),j_e("NoSpaceBeforeGreaterThanTokenInJsxOpeningElement",44,32,[Dpe,Tpe],16),j_e("NoSpaceBeforeEqualInJsxAttribute",n,64,[Npe,Tpe],16),j_e("NoSpaceAfterEqualInJsxAttribute",64,n,[Npe,Tpe],16),j_e("NoSpaceBeforeJsxNamespaceColon",80,59,[Ipe],16),j_e("NoSpaceAfterJsxNamespaceColon",59,80,[Ipe],16),j_e("NoSpaceAfterModuleImport",[144,149],21,[Tpe],16),j_e("SpaceAfterCertainTypeScriptKeywords",[128,129,86,138,90,94,95,96,139,119,102,120,144,145,123,125,124,148,153,126,156,161,143,140],n,[Tpe],4),j_e("SpaceBeforeCertainTypeScriptKeywords",n,[96,119,161],[Tpe],4),j_e("SpaceAfterModuleName",11,19,[Lpe],4),j_e("SpaceBeforeArrow",n,39,[Tpe],4),j_e("SpaceAfterArrow",39,n,[Tpe],4),j_e("NoSpaceAfterEllipsis",26,80,[Tpe],16),j_e("NoSpaceAfterOptionalParameters",58,[22,28],[Tpe,Z_e],16),j_e("NoSpaceBetweenEmptyInterfaceBraceBrackets",19,20,[Tpe,jpe],16),j_e("NoSpaceBeforeOpenAngularBracket",c,30,[Tpe,Bpe],16),j_e("NoSpaceBetweenCloseParenAndAngularBracket",22,30,[Tpe,Bpe],16),j_e("NoSpaceAfterOpenAngularBracket",30,n,[Tpe,Bpe],16),j_e("NoSpaceBeforeCloseAngularBracket",n,32,[Tpe,Bpe],16),j_e("NoSpaceAfterCloseAngularBracket",32,[21,23,32,28],[Tpe,Bpe,upe,Vpe],16),j_e("SpaceBeforeAt",[22,80],60,[Tpe],4),j_e("NoSpaceAfterAt",60,n,[Tpe],16),j_e("SpaceAfterDecorator",n,[128,80,95,90,86,126,125,123,124,139,153,23,42],[Mpe],4),j_e("NoSpaceBeforeNonNullAssertionOperator",n,54,[Tpe,Wpe],16),j_e("NoSpaceAfterNewKeywordOnConstructorSignature",105,21,[Tpe,zpe],16),j_e("SpaceLessThanAndNonJSXTypeAnnotation",30,30,[Tpe],4)],...[j_e("SpaceAfterConstructor",137,21,[V_e("insertSpaceAfterConstructor"),Tpe],4),j_e("NoSpaceAfterConstructor",137,21,[J_e("insertSpaceAfterConstructor"),Tpe],16),j_e("SpaceAfterComma",28,n,[V_e("insertSpaceAfterCommaDelimiter"),Tpe,kpe,vpe,bpe],4),j_e("NoSpaceAfterComma",28,n,[J_e("insertSpaceAfterCommaDelimiter"),Tpe,kpe],16),j_e("SpaceAfterAnonymousFunctionKeyword",[100,42],21,[V_e("insertSpaceAfterFunctionKeywordForAnonymousFunctions"),lpe],4),j_e("NoSpaceAfterAnonymousFunctionKeyword",[100,42],21,[J_e("insertSpaceAfterFunctionKeywordForAnonymousFunctions"),lpe],16),j_e("SpaceAfterKeywordInControl",o,21,[V_e("insertSpaceAfterKeywordsInControlFlowStatements"),mpe],4),j_e("NoSpaceAfterKeywordInControl",o,21,[J_e("insertSpaceAfterKeywordsInControlFlowStatements"),mpe],16),j_e("SpaceAfterOpenParen",21,n,[V_e("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),Tpe],4),j_e("SpaceBeforeCloseParen",n,22,[V_e("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),Tpe],4),j_e("SpaceBetweenOpenParens",21,21,[V_e("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),Tpe],4),j_e("NoSpaceBetweenParens",21,22,[Tpe],16),j_e("NoSpaceAfterOpenParen",21,n,[J_e("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),Tpe],16),j_e("NoSpaceBeforeCloseParen",n,22,[J_e("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),Tpe],16),j_e("SpaceAfterOpenBracket",23,n,[V_e("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),Tpe],4),j_e("SpaceBeforeCloseBracket",n,24,[V_e("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),Tpe],4),j_e("NoSpaceBetweenBrackets",23,24,[Tpe],16),j_e("NoSpaceAfterOpenBracket",23,n,[J_e("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),Tpe],16),j_e("NoSpaceBeforeCloseBracket",n,24,[J_e("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),Tpe],16),j_e("SpaceAfterOpenBrace",19,n,[H_e("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),rpe],4),j_e("SpaceBeforeCloseBrace",n,20,[H_e("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),rpe],4),j_e("NoSpaceBetweenEmptyBraceBrackets",19,20,[Tpe,hpe],16),j_e("NoSpaceAfterOpenBrace",19,n,[K_e("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),Tpe],16),j_e("NoSpaceBeforeCloseBrace",n,20,[K_e("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),Tpe],16),j_e("SpaceBetweenEmptyBraceBrackets",19,20,[V_e("insertSpaceAfterOpeningAndBeforeClosingEmptyBraces")],4),j_e("NoSpaceBetweenEmptyBraceBrackets",19,20,[K_e("insertSpaceAfterOpeningAndBeforeClosingEmptyBraces"),Tpe],16),j_e("SpaceAfterTemplateHeadAndMiddle",[16,17],n,[V_e("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),wpe],4,1),j_e("SpaceBeforeTemplateMiddleAndTail",n,[17,18],[V_e("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),Tpe],4),j_e("NoSpaceAfterTemplateHeadAndMiddle",[16,17],n,[J_e("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),wpe],16,1),j_e("NoSpaceBeforeTemplateMiddleAndTail",n,[17,18],[J_e("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),Tpe],16),j_e("SpaceAfterOpenBraceInJsxExpression",19,n,[V_e("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),Tpe,Epe],4),j_e("SpaceBeforeCloseBraceInJsxExpression",n,20,[V_e("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),Tpe,Epe],4),j_e("NoSpaceAfterOpenBraceInJsxExpression",19,n,[J_e("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),Tpe,Epe],16),j_e("NoSpaceBeforeCloseBraceInJsxExpression",n,20,[J_e("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),Tpe,Epe],16),j_e("SpaceAfterSemicolonInFor",27,n,[V_e("insertSpaceAfterSemicolonInForStatements"),Tpe,G_e],4),j_e("NoSpaceAfterSemicolonInFor",27,n,[J_e("insertSpaceAfterSemicolonInForStatements"),Tpe,G_e],16),j_e("SpaceBeforeBinaryOperator",n,s,[V_e("insertSpaceBeforeAndAfterBinaryOperators"),Tpe,Y_e],4),j_e("SpaceAfterBinaryOperator",s,n,[V_e("insertSpaceBeforeAndAfterBinaryOperators"),Tpe,Y_e],4),j_e("NoSpaceBeforeBinaryOperator",n,s,[J_e("insertSpaceBeforeAndAfterBinaryOperators"),Tpe,Y_e],16),j_e("NoSpaceAfterBinaryOperator",s,n,[J_e("insertSpaceBeforeAndAfterBinaryOperators"),Tpe,Y_e],16),j_e("SpaceBeforeOpenParenInFuncDecl",n,21,[V_e("insertSpaceBeforeFunctionParenthesis"),Tpe,lpe],4),j_e("NoSpaceBeforeOpenParenInFuncDecl",n,21,[J_e("insertSpaceBeforeFunctionParenthesis"),Tpe,lpe],16),j_e("NewLineBeforeOpenBraceInControl",d,19,[V_e("placeOpenBraceOnNewLineForControlBlocks"),mpe,ipe],8,1),j_e("NewLineBeforeOpenBraceInFunction",l,19,[V_e("placeOpenBraceOnNewLineForFunctions"),lpe,ipe],8,1),j_e("NewLineBeforeOpenBraceInTypeScriptDeclWithBlock",u,19,[V_e("placeOpenBraceOnNewLineForFunctions"),_pe,ipe],8,1),j_e("SpaceAfterTypeAssertion",32,n,[V_e("insertSpaceAfterTypeAssertion"),Tpe,qpe],4),j_e("NoSpaceAfterTypeAssertion",32,n,[J_e("insertSpaceAfterTypeAssertion"),Tpe,qpe],16),j_e("SpaceBeforeTypeAnnotation",n,[58,59],[V_e("insertSpaceBeforeTypeAnnotation"),Tpe,$_e],4),j_e("NoSpaceBeforeTypeAnnotation",n,[58,59],[J_e("insertSpaceBeforeTypeAnnotation"),Tpe,$_e],16),j_e("NoOptionalSemicolon",27,i,[q_e("semicolons","remove"),Gpe],32),j_e("OptionalSemicolon",n,i,[q_e("semicolons","insert"),Qpe],64)],...[j_e("NoSpaceBeforeSemicolon",n,27,[Tpe],16),j_e("SpaceBeforeOpenBraceInControl",d,19,[W_e("placeOpenBraceOnNewLineForControlBlocks"),mpe,Rpe,npe],4,1),j_e("SpaceBeforeOpenBraceInFunction",l,19,[W_e("placeOpenBraceOnNewLineForFunctions"),lpe,ape,Rpe,npe],4,1),j_e("SpaceBeforeOpenBraceInTypeScriptDeclWithBlock",u,19,[W_e("placeOpenBraceOnNewLineForFunctions"),_pe,Rpe,npe],4,1),j_e("NoSpaceBeforeComma",n,28,[Tpe],16),j_e("NoSpaceBeforeOpenBracket",t(134,84),23,[Tpe],16),j_e("NoSpaceAfterCloseBracket",24,n,[Tpe,Ppe],16),j_e("SpaceAfterSemicolon",27,n,[Tpe],4),j_e("SpaceBetweenForAndAwaitKeyword",99,135,[Tpe],4),j_e("SpaceBetweenDotDotDotAndTypeName",26,c,[Tpe],16),j_e("SpaceBetweenStatements",[22,92,93,84],n,[Tpe,kpe,Q_e],4),j_e("SpaceAfterTryCatchFinally",[113,85,98],19,[Tpe],4)]]}function j_e(e,t,n,r,i,o=0){return{leftTokenRange:U_e(t),rightTokenRange:U_e(n),rule:{debugName:e,context:r,action:i,flags:o}}}function z_e(e){return{tokens:e,isSpecific:!0}}function U_e(e){return"number"==typeof e?z_e([e]):at(e)?z_e(e):e}function B_e(e,t,n=[]){const r=[];for(let i=e;i<=t;i++)A(n,i)||r.push(i);return z_e(r)}function q_e(e,t){return n=>n.options&&n.options[e]===t}function V_e(e){return t=>t.options&&je(t.options,e)&&!!t.options[e]}function K_e(e){return t=>t.options&&je(t.options,e)&&!t.options[e]}function J_e(e){return t=>!t.options||!je(t.options,e)||!t.options[e]}function W_e(e){return t=>!t.options||!je(t.options,e)||!t.options[e]||t.TokensAreOnSameLine()}function H_e(e){return t=>!t.options||!je(t.options,e)||!!t.options[e]}function G_e(e){return 248===e.contextNode.kind}function Q_e(e){return!G_e(e)}function Y_e(e){switch(e.contextNode.kind){case 226:return 28!==e.contextNode.operatorToken.kind;case 227:case 194:case 234:case 281:case 276:case 182:case 192:case 193:case 238:return!0;case 208:case 265:case 271:case 277:case 260:case 169:case 306:case 172:case 171:return 64===e.currentTokenSpan.kind||64===e.nextTokenSpan.kind;case 249:case 168:return 103===e.currentTokenSpan.kind||103===e.nextTokenSpan.kind||64===e.currentTokenSpan.kind||64===e.nextTokenSpan.kind;case 250:return 165===e.currentTokenSpan.kind||165===e.nextTokenSpan.kind}return!1}function Z_e(e){return!Y_e(e)}function X_e(e){return!$_e(e)}function $_e(e){const t=e.contextNode.kind;return 172===t||171===t||169===t||260===t||yu(t)}function epe(e){return!function(e){return gN(e.contextNode)&&e.contextNode.questionToken}(e)}function tpe(e){return 227===e.contextNode.kind||194===e.contextNode.kind}function npe(e){return e.TokensAreOnSameLine()||ape(e)}function rpe(e){return 206===e.contextNode.kind||200===e.contextNode.kind||function(e){return spe(e)&&(e.ContextNodeAllOnSameLine()||e.ContextNodeBlockIsOnOneLine())}(e)}function ipe(e){return ape(e)&&!(e.NextNodeAllOnSameLine()||e.NextNodeBlockIsOnOneLine())}function ope(e){return spe(e)&&!(e.ContextNodeAllOnSameLine()||e.ContextNodeBlockIsOnOneLine())}function spe(e){return cpe(e.contextNode)}function ape(e){return cpe(e.nextTokenParent)}function cpe(e){if(ppe(e))return!0;switch(e.kind){case 241:case 269:case 210:case 268:return!0}return!1}function lpe(e){switch(e.contextNode.kind){case 262:case 174:case 173:case 177:case 178:case 179:case 218:case 176:case 219:case 264:return!0}return!1}function upe(e){return!lpe(e)}function dpe(e){return 262===e.contextNode.kind||218===e.contextNode.kind}function _pe(e){return ppe(e.contextNode)}function ppe(e){switch(e.kind){case 263:case 231:case 264:case 266:case 187:case 267:case 278:case 279:case 272:case 275:return!0}return!1}function fpe(e){switch(e.currentTokenParent.kind){case 263:case 267:case 266:case 299:case 268:case 255:return!0;case 241:{const t=e.currentTokenParent.parent;if(!t||219!==t.kind&&218!==t.kind)return!0}}return!1}function mpe(e){switch(e.contextNode.kind){case 245:case 255:case 248:case 249:case 250:case 247:case 258:case 246:case 254:case 299:return!0;default:return!1}}function hpe(e){return 210===e.contextNode.kind}function gpe(e){return function(e){return 213===e.contextNode.kind}(e)||function(e){return 214===e.contextNode.kind}(e)}function ype(e){return 28!==e.currentTokenSpan.kind}function vpe(e){return 24!==e.nextTokenSpan.kind}function bpe(e){return 22!==e.nextTokenSpan.kind}function xpe(e){return 219===e.contextNode.kind}function Spe(e){return 205===e.contextNode.kind}function Tpe(e){return e.TokensAreOnSameLine()&&12!==e.contextNode.kind}function wpe(e){return 12!==e.contextNode.kind}function kpe(e){return 284!==e.contextNode.kind&&288!==e.contextNode.kind}function Epe(e){return 294===e.contextNode.kind||293===e.contextNode.kind}function Cpe(e){return 291===e.nextTokenParent.kind||295===e.nextTokenParent.kind&&291===e.nextTokenParent.parent.kind}function Npe(e){return 291===e.contextNode.kind}function Ape(e){return 295!==e.nextTokenParent.kind}function Ipe(e){return 295===e.nextTokenParent.kind}function Dpe(e){return 285===e.contextNode.kind}function Ppe(e){return!lpe(e)&&!ape(e)}function Mpe(e){return e.TokensAreOnSameLine()&&Xv(e.contextNode)&&Ope(e.currentTokenParent)&&!Ope(e.nextTokenParent)}function Ope(e){for(;e&&td(e);)e=e.parent;return e&&170===e.kind}function Fpe(e){return 261===e.currentTokenParent.kind&&e.currentTokenParent.getStart(e.sourceFile)===e.currentTokenSpan.pos}function Rpe(e){return 2!==e.formattingRequestKind}function Lpe(e){return 267===e.contextNode.kind}function jpe(e){return 187===e.contextNode.kind}function zpe(e){return 180===e.contextNode.kind}function Upe(e,t){if(30!==e.kind&&32!==e.kind)return!1;switch(t.kind){case 183:case 216:case 265:case 263:case 231:case 264:case 262:case 218:case 219:case 174:case 173:case 179:case 180:case 213:case 214:case 233:return!0;default:return!1}}function Bpe(e){return Upe(e.currentTokenSpan,e.currentTokenParent)||Upe(e.nextTokenSpan,e.nextTokenParent)}function qpe(e){return 216===e.contextNode.kind}function Vpe(e){return!qpe(e)}function Kpe(e){return 116===e.currentTokenSpan.kind&&222===e.currentTokenParent.kind}function Jpe(e){return 229===e.contextNode.kind&&void 0!==e.contextNode.expression}function Wpe(e){return 235===e.contextNode.kind}function Hpe(e){return!function(e){switch(e.contextNode.kind){case 245:case 248:case 249:case 250:case 246:case 247:return!0;default:return!1}}(e)}function Gpe(e){let t=e.nextTokenSpan.kind,n=e.nextTokenSpan.pos;if(Vg(t)){const r=e.nextTokenParent===e.currentTokenParent?$Y(e.currentTokenParent,bc(e.currentTokenParent,(e=>!e.parent)),e.sourceFile):e.nextTokenParent.getFirstToken(e.sourceFile);if(!r)return!0;t=r.kind,n=r.getStart(e.sourceFile)}return e.sourceFile.getLineAndCharacterOfPosition(e.currentTokenSpan.pos).line===e.sourceFile.getLineAndCharacterOfPosition(n).line?20===t||1===t:240!==t&&27!==t&&(264===e.contextNode.kind||265===e.contextNode.kind?!hN(e.currentTokenParent)||!!e.currentTokenParent.type||21!==t:gN(e.currentTokenParent)?!e.currentTokenParent.initializer:248!==e.currentTokenParent.kind&&242!==e.currentTokenParent.kind&&240!==e.currentTokenParent.kind&&23!==t&&21!==t&&40!==t&&41!==t&&44!==t&&14!==t&&28!==t&&228!==t&&16!==t&&15!==t&&25!==t)}function Qpe(e){return F$(e.currentTokenSpan.end,e.currentTokenParent,e.sourceFile)}function Ype(e){return!nA(e.contextNode)||!DC(e.contextNode.expression)||e.contextNode.expression.getText().includes(".")}function Zpe(e,t){return{options:e,getRules:Xpe(),host:t}}function Xpe(){return void 0===M_e&&(M_e=function(e){const t=function(e){const t=new Array(cfe*cfe),n=new Array(t.length);for(const r of e){const e=r.leftTokenRange.isSpecific&&r.rightTokenRange.isSpecific;for(const i of r.leftTokenRange.tokens)for(const o of r.rightTokenRange.tokens){const s=efe(i,o);let a=t[s];void 0===a&&(a=t[s]=[]),ufe(a,r.rule,e,n,s)}}return t}(e);return e=>{const n=t[efe(e.currentTokenSpan.kind,e.nextTokenSpan.kind)];if(n){const t=[];let r=0;for(const i of n){const n=~$pe(r);i.action&n&&T(i.context,(t=>t(e)))&&(t.push(i),r|=i.action)}if(t.length)return t}}}(L_e())),M_e}function $pe(e){let t=0;return 1&e&&(t|=28),2&e&&(t|=96),28&e&&(t|=28),96&e&&(t|=96),t}function efe(e,t){return Tn.assert(e<=165&&t<=165,"Must compute formatting context from tokens"),e*cfe+t}var tfe,nfe,rfe,ife,ofe,sfe=5,afe=31,cfe=166,lfe=((tfe=lfe||{})[tfe.StopRulesSpecific=0]="StopRulesSpecific",tfe[tfe.StopRulesAny=1*sfe]="StopRulesAny",tfe[tfe.ContextRulesSpecific=2*sfe]="ContextRulesSpecific",tfe[tfe.ContextRulesAny=3*sfe]="ContextRulesAny",tfe[tfe.NoContextRulesSpecific=4*sfe]="NoContextRulesSpecific",tfe[tfe.NoContextRulesAny=5*sfe]="NoContextRulesAny",tfe);function ufe(e,t,n,r,i){const o=3&t.action?n?0:lfe.StopRulesAny:t.context!==O_e?n?lfe.ContextRulesSpecific:lfe.ContextRulesAny:n?lfe.NoContextRulesSpecific:lfe.NoContextRulesAny,s=r[i]||0;e.splice(function(e,t){let n=0;for(let r=0;r<=t;r+=sfe)n+=e&afe,e>>=sfe;return n}(s,o),0,t),r[i]=function(e,t){const n=1+(e>>t&afe);return Tn.assert((n&afe)===n,"Adding more rules into the sub-bucket than allowed. Maximum allowed is 32 rules."),e&~(afe<<t)|n<<t}(s,o)}function dfe(e,t,n){const r={pos:e,end:t,kind:n};return Tn.isDebugging&&Object.defineProperty(r,"__debugKind",{get:()=>Tn.formatSyntaxKind(n)}),r}function _fe(e,t,n){const r=t.getLineAndCharacterOfPosition(e).line;if(0===r)return[];let i=M_(r,t);for(;ra(t.text.charCodeAt(i));)i--;ia(t.text.charCodeAt(i))&&i--;return Tfe({pos:D_(r-1,t),end:i+1},t,n,2)}function pfe(e,t,n){return Sfe(vfe(yfe(e,27,t)),t,n,3)}function ffe(e,t,n){const r=yfe(e,19,t);if(!r)return[];return Tfe({pos:bY(vfe(r.parent).getStart(t),t),end:e},t,n,4)}function mfe(e,t,n){return Sfe(vfe(yfe(e,20,t)),t,n,5)}function hfe(e,t){return Tfe({pos:0,end:e.text.length},e,t,0)}function gfe(e,t,n,r){return Tfe({pos:bY(e,n),end:t},n,r,1)}function yfe(e,t,n){const r=eZ(e,n);return r&&r.kind===t&&e===r.getEnd()?r:void 0}function vfe(e){let t=e;for(;t&&t.parent&&t.parent.end===e.end&&!bfe(t.parent,t);)t=t.parent;return t}function bfe(e,t){switch(e.kind){case 263:case 264:return xY(e.members,t);case 267:const n=e.body;return!!n&&268===n.kind&&xY(n.statements,t);case 307:case 241:case 268:return xY(e.statements,t);case 299:return xY(e.block.statements,t)}return!1}function xfe(e,t,n,r,i,o){const s={pos:e.pos,end:e.end};return P_e(t.text,n,s.pos,s.end,(n=>wfe(s,e,r,i,n,o,1,(e=>!1),t)))}function Sfe(e,t,n,r){if(!e)return[];return Tfe({pos:bY(e.getStart(t),t),end:e.end},t,n,r)}function Tfe(e,t,n,r){const i=function(e,t){return function n(r){const i=GM(r,(n=>kY(n.getStart(t),n.end,e)&&n));if(i){const e=n(i);if(e)return e}return r}(t)}(e,t);return P_e(t.text,t.languageVariant,function(e,t,n){const r=e.getStart(n);if(r===t.pos&&e.end===t.end)return r;const i=eZ(t.pos,n);return i?i.end>=t.pos?e.pos:i.end:e.pos}(i,e,t),e.end,(o=>wfe(e,i,ofe.getIndentationForNode(i,e,t,n.options),function(e,t,n){let r,i=-1;for(;e;){const o=n.getLineAndCharacterOfPosition(e.getStart(n)).line;if(-1!==i&&o!==i)break;if(ofe.shouldIndentChildNode(t,e,r,n))return t.indentSize;i=o,r=e,e=e.parent}return 0}(i,n.options,t),o,n,r,function(e,t){if(!e.length)return i;const n=e.filter((e=>CY(t,e.start,e.start+e.length))).sort(((e,t)=>e.start-t.start));if(!n.length)return i;let r=0;return e=>{for(;;){if(r>=n.length)return!1;const t=n[r];if(e.end<=t.start)return!1;if(AY(e.pos,e.end,t.start,t.start+t.length))return!0;r++}};function i(){return!1}}(t.parseDiagnostics,e),t)))}function wfe(e,t,n,r,i,{options:o,getRules:s,host:a},c,l,u){var d;const _=new A_e(u,c,o);let p,f,m,h,y,v=-1;const b=[];if(i.advance(),i.isOnToken()){const s=u.getLineAndCharacterOfPosition(t.getStart(u)).line;let a=s;Xv(t)&&(a=u.getLineAndCharacterOfPosition(Y_(t,u)).line),function t(n,r,s,a,c,d){if(!CY(e,n.getStart(u),n.getEnd()))return;const _=S(n,s,c,d);let m=r;GM(n,(e=>{h(e,-1,n,_,s,a,!1)}),(e=>{g(e,n,s,_)}));for(;i.isOnToken()&&i.getTokenFullStart()<e.end;){const t=i.readTokenInfo(n);if(t.token.end>Math.min(n.end,e.end))break;b(t,n,_,n)}function h(r,s,a,c,l,d,_,p){if(Tn.assert(!fy(r)),F_(r)||L_(a,r))return s;const f=r.getStart(u),h=u.getLineAndCharacterOfPosition(f).line;let g=h;Xv(r)&&(g=u.getLineAndCharacterOfPosition(Y_(r,u)).line);let x=-1;if(_&&xY(e,a)&&(x=function(e,t,n,r,i){if(CY(r,e,t)||EY(r,e,t)){if(-1!==i)return i}else{const t=u.getLineAndCharacterOfPosition(e).line,r=bY(e,u),i=ofe.findFirstNonWhitespaceColumn(r,e,u,o);if(t!==n||e===i){const e=ofe.getBaseIndentation(o);return e>i?e:i}}return-1}(f,r.end,l,e,s),-1!==x&&(s=x)),!CY(e,r.pos,r.end))return r.end<e.pos&&i.skipToEndOf(r),s;if(0===r.getFullWidth())return s;for(;i.isOnToken()&&i.getTokenFullStart()<e.end;){const t=i.readTokenInfo(n);if(t.token.end>e.end)return s;if(t.token.end>f){t.token.pos>f&&i.skipToStartOf(r);break}b(t,n,c,n)}if(!i.isOnToken()||i.getTokenFullStart()>=e.end)return s;if(Bl(r)){const e=i.readTokenInfo(r);if(12!==r.kind)return Tn.assert(e.token.end===r.end,"Token end is child end"),b(e,n,c,r),s}const S=170===r.kind?h:d,T=function(e,t,n,r,i,s){const a=ofe.shouldIndentChildNode(o,e)?o.indentSize:0;return s===t?{indentation:t===y?v:i.getIndentation(),delta:Math.min(o.indentSize,i.getDelta(e)+a)}:-1===n?21===e.kind&&t===y?{indentation:v,delta:i.getDelta(e)}:ofe.childStartsOnTheSameLineWithElseInIfStatement(r,e,t,u)||ofe.childIsUnindentedBranchOfConditionalExpression(r,e,t,u)||ofe.argumentStartsOnSameLineAsPreviousArgument(r,e,t,u)?{indentation:i.getIndentation(),delta:a}:{indentation:i.getIndentation()+i.getDelta(e),delta:a}:{indentation:n,delta:a}}(r,h,x,n,c,S);return t(r,m,h,g,T.indentation,T.delta),m=n,p&&209===a.kind&&-1===s&&(s=T.indentation),s}function g(t,r,s,a){Tn.assert(ql(t)),Tn.assert(!fy(t));const c=function(e,t){switch(e.kind){case 176:case 262:case 218:case 174:case 173:case 219:case 179:case 180:case 184:case 185:case 177:case 178:if(e.typeParameters===t)return 30;if(e.parameters===t)return 21;break;case 213:case 214:if(e.typeArguments===t)return 30;if(e.arguments===t)return 21;break;case 263:case 231:case 264:case 265:if(e.typeParameters===t)return 30;break;case 183:case 215:case 186:case 233:case 205:if(e.typeArguments===t)return 30;break;case 187:return 19}return 0}(r,t);let l=a,d=s;if(!CY(e,t.pos,t.end))return void(t.end<e.pos&&i.skipToEndOf(t));if(0!==c)for(;i.isOnToken()&&i.getTokenFullStart()<e.end;){const e=i.readTokenInfo(r);if(e.token.end>t.pos)break;if(e.token.kind===c){let t;if(d=u.getLineAndCharacterOfPosition(e.token.pos).line,b(e,r,a,r),-1!==v)t=v;else{const n=bY(e.token.pos,u);t=ofe.findFirstNonWhitespaceColumn(n,e.token.pos,u,o)}l=S(r,s,t,o.indentSize)}else b(e,r,a,r)}let _=-1;for(let e=0;e<t.length;e++){_=h(t[e],_,n,l,d,d,!0,0===e)}const p=function(e){switch(e){case 21:return 22;case 30:return 32;case 19:return 20}return 0}(c);if(0!==p&&i.isOnToken()&&i.getTokenFullStart()<e.end){let e=i.readTokenInfo(r);28===e.token.kind&&(b(e,r,l,r),e=i.isOnToken()?i.readTokenInfo(r):void 0),e&&e.token.kind===p&&xY(r,e.token)&&b(e,r,l,r,!0)}}function b(t,n,r,o,s){Tn.assert(xY(n,t.token));const a=i.lastTrailingTriviaWasNewLine();let c=!1;t.leadingTrivia&&k(t.leadingTrivia,n,m,r);let d=0;const _=xY(e,t.token),h=u.getLineAndCharacterOfPosition(t.token.pos);if(_){const e=l(t.token),i=f;if(d=C(t.token,h,n,m,r),!e)if(0===d){const e=i&&u.getLineAndCharacterOfPosition(i.end).line;c=a&&h.line!==e}else c=1===d}if(t.trailingTrivia&&(p=Ae(t.trailingTrivia).end,k(t.trailingTrivia,n,m,r)),c){const e=_&&!l(t.token)?r.getIndentationForToken(h.line,t.token.kind,o,!!s):-1;let n=!0;if(t.leadingTrivia){const i=r.getIndentationForComment(t.token.kind,e,o);n=T(t.leadingTrivia,i,n,(e=>A(e.pos,i,!1)))}-1!==e&&n&&(A(t.token.pos,e,1===d),y=h.line,v=e)}i.advance(),m=n}}(t,t,s,a,n,r)}const x=i.getCurrentLeadingTrivia();if(x){const r=ofe.nodeWillIndentChild(o,t,void 0,u,!1)?n+o.indentSize:n;T(x,r,!0,(e=>{C(e,u.getLineAndCharacterOfPosition(e.pos),t,t,void 0),A(e.pos,r,!1)})),!1!==o.trimTrailingWhitespace&&function(t){let n=f?f.end:e.pos;for(const e of t)bZ(e.kind)&&(n<e.pos&&M(n,e.pos-1,f),n=e.end+1);n<e.end&&M(n,e.end,f)}(x)}if(f&&i.getTokenFullStart()>=e.end){const e=i.isOnEOF()?i.readEOFTokenRange():i.isOnToken()?i.readTokenInfo(t).token:void 0;if(e&&e.pos===p){const n=(null==(d=eZ(e.end,u,t))?void 0:d.parent)||m;N(e,u.getLineAndCharacterOfPosition(e.pos).line,n,f,h,m,n,void 0)}}return b;function S(e,t,n,r){return{getIndentationForComment:(e,t,r)=>{switch(e){case 20:case 24:case 22:return n+i(r)}return-1!==t?t:n},getIndentationForToken:(r,o,s,a)=>!a&&function(n,r,i){switch(r){case 19:case 20:case 22:case 93:case 117:case 60:return!1;case 44:case 32:switch(i.kind){case 286:case 287:case 285:return!1}break;case 23:case 24:if(200!==i.kind)return!1}return t!==n&&!(Xv(e)&&r===function(e){if(bM(e)){const t=w(e.modifiers,lu,E(e.modifiers,mN));if(t)return t.kind}switch(e.kind){case 263:return 86;case 264:return 120;case 262:return 100;case 266:return 266;case 177:return 139;case 178:return 153;case 174:if(e.asteriskToken)return 42;case 172:case 169:const t=Oc(e);if(t)return t.kind}}(e))}(r,o,s)?n+i(s):n,getIndentation:()=>n,getDelta:i,recomputeIndentation:(t,i)=>{ofe.shouldIndentChildNode(o,i,e,u)&&(n+=t?o.indentSize:-o.indentSize,r=ofe.shouldIndentChildNode(o,e)?o.indentSize:0)}};function i(t){return ofe.nodeWillIndentChild(o,e,t,u,!0)?r:0}}function T(t,n,r,i){for(const o of t){const t=xY(e,o);switch(o.kind){case 3:t&&I(o,n,!r),r=!1;break;case 2:r&&t&&i(o),r=!1;break;case 4:r=!0}}return r}function k(t,n,r,i){for(const o of t)if(bZ(o.kind)&&xY(e,o)){C(o,u.getLineAndCharacterOfPosition(o.pos),n,r,i)}}function C(t,n,r,i,o){let s=0;if(!l(t))if(f)s=N(t,n.line,r,f,h,m,i,o);else{D(u.getLineAndCharacterOfPosition(e.pos).line,n.line)}return f=t,p=t.end,m=r,h=n.line,s}function N(e,t,n,r,i,c,l,d){_.updateContext(r,c,e,n,l);const p=s(_);let f=!1!==_.options.trimTrailingWhitespace,m=0;return p?g(p,(s=>{if(m=function(e,t,n,r,i){const s=i!==n;switch(e.action){case 1:return 0;case 16:if(t.end!==r.pos)return O(t.end,r.pos-t.end),s?2:0;break;case 32:O(t.pos,t.end-t.pos);break;case 8:if(1!==e.flags&&n!==i)return 0;if(1!==i-n)return F(t.end,r.pos-t.end,VX(a,o)),s?0:1;break;case 4:if(1!==e.flags&&n!==i)return 0;if(1!==r.pos-t.end||32!==u.text.charCodeAt(t.end))return F(t.end,r.pos-t.end," "),s?2:0;break;case 64:c=t.end,(l=";")&&b.push(LZ(c,0,l))}var c,l;return 0}(s,r,i,e,t),d)switch(m){case 2:n.getStart(u)===e.pos&&d.recomputeIndentation(!1,l);break;case 1:n.getStart(u)===e.pos&&d.recomputeIndentation(!0,l);break;default:Tn.assert(0===m)}f=f&&!(16&s.action)&&1!==s.flags})):f=f&&1!==e.kind,t!==i&&f&&D(i,t,r),m}function A(e,t,n){const r=Efe(t,o);if(n)F(e,0,r);else{const n=u.getLineAndCharacterOfPosition(e),i=D_(n.line,u);(t!==function(e,t){let n=0;for(let r=0;r<t;r++)9===u.text.charCodeAt(e+r)?n+=o.tabSize-n%o.tabSize:n++;return n}(i,n.character)||function(e,t){return e!==u.text.substr(t,e.length)}(r,i))&&F(i,n.character,r)}}function I(e,t,n,r=!0){let i=u.getLineAndCharacterOfPosition(e.pos).line;const s=u.getLineAndCharacterOfPosition(e.end).line;if(i===s)return void(n||A(e.pos,t,!1));const a=[];let c=e.pos;for(let o=i;o<s;o++){const e=M_(o,u);a.push({pos:c,end:e}),c=D_(o+1,u)}if(r&&a.push({pos:c,end:e.end}),0===a.length)return;const l=D_(i,u),d=ofe.findFirstNonWhitespaceCharacterAndColumn(l,a[0].pos,u,o);let _=0;n&&(_=1,i++);const p=t-d.column;for(let f=_;f<a.length;f++,i++){const e=D_(i,u),t=0===f?d:ofe.findFirstNonWhitespaceCharacterAndColumn(a[f].pos,a[f].end,u,o),n=t.column+p;if(n>0){const r=Efe(n,o);F(e,t.character,r)}else O(e,t.character)}}function D(e,t,n){for(let r=e;r<t;r++){const e=D_(r,u),t=M_(r,u);if(n&&(bZ(n.kind)||xZ(n.kind))&&n.pos<=t&&n.end>t)continue;const i=P(e,t);-1!==i&&(Tn.assert(i===e||!ra(u.text.charCodeAt(i-1))),O(i,t+1-i))}}function P(e,t){let n=t;for(;n>=e&&ra(u.text.charCodeAt(n));)n--;return n!==t?n+1:-1}function M(e,t,n){D(u.getLineAndCharacterOfPosition(e).line,u.getLineAndCharacterOfPosition(t).line+1,n)}function O(e,t){t&&b.push(LZ(e,t,""))}function F(e,t,n){(t||n)&&b.push(LZ(e,t,n))}}function kfe(e,t,n,r=QY(e,t)){const i=bc(r,_D);i&&(r=i.parent);if(r.getStart(e)<=t&&t<r.getEnd())return;const o=te((n=null===n?void 0:void 0===n?eZ(t,e):n)&&ka(e.text,n.end),Tf(r,e));return o&&w(o,(n=>wY(n,t)||t===n.end&&(2===n.kind||t===e.getFullWidth())))}function Efe(e,t){if((!nfe||nfe.tabSize!==t.tabSize||nfe.indentSize!==t.indentSize)&&(nfe={tabSize:t.tabSize,indentSize:t.indentSize},rfe=ife=void 0),t.convertTabsToSpaces){let n;const r=Math.floor(e/t.indentSize),i=e%t.indentSize;return ife||(ife=[]),void 0===ife[r]?(n=JZ(" ",t.indentSize*r),ife[r]=n):n=ife[r],i?n+JZ(" ",i):n}{const n=Math.floor(e/t.tabSize),r=e-n*t.tabSize;let i;return rfe||(rfe=[]),void 0===rfe[n]?rfe[n]=i=JZ("\t",n):i=rfe[n],r?i+JZ(" ",r):i}}(e=>{let t;var n;function r(e){return e.baseIndentSize||0}function i(e,t,n,i,a,c,l){var f;let m=e.parent;for(;m;){let r=!0;if(n){const t=e.getStart(a);r=t<n.pos||t>n.end}const g=o(m,e,a),y=g.line===t.line||_(m,e,t.line,a);if(r){const n=null==(f=p(e,a))?void 0:f[0];let r=h(e,a,l,!!n&&u(n,a).line>g.line);if(-1!==r)return r+i;if(r=s(e,m,t,y,a,l),-1!==r)return r+i}S(l,m,e,a,c)&&!y&&(i+=l.indentSize);const v=d(m,e,t.line,a);m=(e=m).parent,t=v?a.getLineAndCharacterOfPosition(e.getStart(a)):g}return i+r(l)}function o(e,t,n){const r=p(t,n),i=r?r.pos:e.getStart(n);return n.getLineAndCharacterOfPosition(i)}function s(e,t,n,r,i,o){return(Sd(e)||wd(e))&&(307===t.kind||!r)?y(n,i,o):-1}let a;var c;function l(e,t,n,r){const i=$Y(e,t,r);if(!i)return 0;if(19===i.kind)return 1;if(20===i.kind){return n===u(i,r).line?2:0}return 0}function u(e,t){return t.getLineAndCharacterOfPosition(e.getStart(t))}function d(e,t,n,r){if(!iA(e)||!A(e.arguments,t))return!1;return ta(r,e.expression.getEnd()).line===n}function _(e,t,n,r){if(245===e.kind&&e.elseStatement===t){const t=FY(e,93,r);Tn.assert(void 0!==t);return u(t,r).line===n}return!1}function p(e,t){return e.parent&&f(e.getStart(t),e.getEnd(),e.parent,t)}function f(e,t,n,r){switch(n.kind){case 183:return i(n.typeArguments);case 210:return i(n.properties);case 209:case 275:case 279:case 206:case 207:return i(n.elements);case 187:return i(n.members);case 262:case 218:case 219:case 174:case 173:case 179:case 176:case 185:case 180:return i(n.typeParameters)||i(n.parameters);case 177:return i(n.parameters);case 263:case 231:case 264:case 265:case 345:return i(n.typeParameters);case 214:case 213:return i(n.typeArguments)||i(n.arguments);case 261:return i(n.declarations)}function i(i){return i&&EY(function(e,t,n){const r=e.getChildren(n);for(let i=1;i<r.length-1;i++)if(r[i].pos===t.pos&&r[i].end===t.end)return{pos:r[i-1].end,end:r[i+1].getStart(n)};return t}(n,i,r),e,t)?i:void 0}}function m(e,t,n){return e?y(t.getLineAndCharacterOfPosition(e.pos),t,n):-1}function h(e,t,n,r){if(e.parent&&261===e.parent.kind)return-1;const i=p(e,t);if(i){const o=i.indexOf(e);if(-1!==o){const e=g(i,o,t,n);if(-1!==e)return e}return m(i,t,n)+(r?n.indentSize:0)}return-1}function g(e,t,n,r){Tn.assert(t>=0&&t<e.length);let i=u(e[t],n);for(let o=t-1;o>=0;o--){if(28===e[o].kind)continue;if(n.getLineAndCharacterOfPosition(e[o].end).line!==i.line)return y(i,n,r);i=u(e[o],n)}return-1}function y(e,t,n){const r=t.getPositionOfLineAndCharacter(e.line,0);return b(r,r+e.character,t,n)}function v(e,t,n,r){let i=0,o=0;for(let s=e;s<t;s++){const e=n.text.charCodeAt(s);if(!ra(e))break;9===e?o+=r.tabSize+o%r.tabSize:o++,i++}return{column:o,character:i}}function b(e,t,n,r){return v(e,t,n,r).column}function x(e,t,n,r,i){const o=n?n.kind:0;switch(t.kind){case 244:case 263:case 231:case 264:case 266:case 265:case 209:case 241:case 268:case 210:case 187:case 200:case 189:case 217:case 211:case 213:case 214:case 243:case 277:case 253:case 227:case 207:case 206:case 286:case 289:case 285:case 294:case 173:case 179:case 180:case 169:case 184:case 185:case 196:case 215:case 223:case 279:case 275:case 281:case 276:case 172:case 296:case 297:return!0;case 269:return e.indentSwitchCase??!0;case 260:case 303:case 226:if(!e.indentMultiLineObjectLiteralBeginningOnBlankLine&&r&&210===o)return T(r,n);if(226===t.kind&&r&&n&&284===o){return r.getLineAndCharacterOfPosition(da(r.text,t.pos)).line!==r.getLineAndCharacterOfPosition(da(r.text,n.pos)).line}if(226!==t.kind)return!0;break;case 246:case 247:case 249:case 250:case 248:case 245:case 262:case 218:case 174:case 176:case 177:case 178:return 241!==o;case 219:return r&&217===o?T(r,n):241!==o;case 278:return 279!==o;case 272:return 273!==o||!!n.namedBindings&&275!==n.namedBindings.kind;case 284:return 287!==o;case 288:return 290!==o;case 193:case 192:case 238:if(187===o||189===o||200===o)return!1}return i}function S(e,t,n,r,i=!1){return x(e,t,n,r,!1)&&!(i&&n&&function(e,t){switch(e){case 253:case 257:case 251:case 252:return 241!==t.kind;default:return!1}}(n.kind,t))}function T(e,t){const n=da(e.text,t.pos);return e.getLineAndCharacterOfPosition(n).line===e.getLineAndCharacterOfPosition(t.end).line}(n=t||(t={}))[n.Unknown=-1]="Unknown",e.getIndentation=function(e,t,n,o=!1){if(e>t.text.length)return r(n);if(0===n.indentStyle)return 0;const s=eZ(e,t,void 0,!0),a=kfe(t,e,s||null);if(a&&3===a.kind)return function(e,t,n,r){const i=ta(e,t).line-1,o=ta(e,r.pos).line;if(Tn.assert(o>=0),i<=o)return b(D_(o,e),t,e,n);const s=D_(i,e),{column:a,character:c}=v(s,t,e,n);if(0===a)return a;const l=e.text.charCodeAt(s+c);return 42===l?a-1:a}(t,e,n,a);if(!s)return r(n);if(xZ(s.kind)&&s.getStart(t)<=e&&e<s.end)return 0;const c=t.getLineAndCharacterOfPosition(e).line,d=QY(t,e),_=19===d.kind&&210===d.parent.kind;if(1===n.indentStyle||_)return function(e,t,n){let r=t;for(;r>0;){if(!na(e.text.charCodeAt(r)))break;r--}const i=bY(r,e);return b(i,r,e,n)}(t,e,n);if(28===s.kind&&226!==s.parent.kind){const e=function(e,t,n){const r=MY(e);return r&&r.listItemIndex>0?g(r.list.getChildren(),r.listItemIndex-1,t,n):-1}(s,t,n);if(-1!==e)return e}const p=function(e,t,n){return t&&f(e,e,t,n)}(e,s.parent,t);if(p&&!xY(p,s)){const e=[218,219].includes(d.parent.kind)?0:n.indentSize;return m(p,t,n)+e}return function(e,t,n,o,s,a){let c,d=n;for(;d;){if(IY(d,t,e)&&S(a,d,c,e,!0)){const t=u(d,e),r=l(n,d,o,e);return i(d,t,void 0,0!==r?s&&2===r?a.indentSize:0:o!==t.line?a.indentSize:0,e,!0,a)}const r=h(d,e,a,!0);if(-1!==r)return r;c=d,d=d.parent}return r(a)}(t,e,s,c,o,n)},e.getIndentationForNode=function(e,t,n,r){const o=n.getLineAndCharacterOfPosition(e.getStart(n));return i(e,o,t,0,n,!1,r)},e.getBaseIndentation=r,(c=a||(a={}))[c.Unknown=0]="Unknown",c[c.OpenBrace=1]="OpenBrace",c[c.CloseBrace=2]="CloseBrace",e.isArgumentAndStartLineOverlapsExpressionBeingCalled=d,e.childStartsOnTheSameLineWithElseInIfStatement=_,e.childIsUnindentedBranchOfConditionalExpression=function(e,t,n,r){if(yA(e)&&(t===e.whenTrue||t===e.whenFalse)){const i=ta(r,e.condition.end).line;if(t===e.whenTrue)return n===i;{const t=u(e.whenTrue,r).line,o=ta(r,e.whenTrue.end).line;return i===t&&o===n}}return!1},e.argumentStartsOnSameLineAsPreviousArgument=function(e,t,n,r){if(Hu(e)){if(!e.arguments)return!1;const i=w(e.arguments,(e=>e.pos===t.pos));if(!i)return!1;const o=e.arguments.indexOf(i);if(0===o)return!1;if(n===ta(r,e.arguments[o-1].getEnd()).line)return!0}return!1},e.getContainingList=p,e.findFirstNonWhitespaceCharacterAndColumn=v,e.findFirstNonWhitespaceColumn=b,e.nodeWillIndentChild=x,e.shouldIndentChildNode=S})(ofe||(ofe={}));var Cfe={};a(Cfe,{pasteEditsProvider:()=>Afe});var Nfe="providePostPasteEdits";function Afe(e,t,n,r,i,o,s,a){const c=Xde.ChangeTracker.with({host:i,formatContext:s,preferences:o},(c=>function(e,t,n,r,i,o,s,a,c){let l;t.length!==n.length&&(l=1===t.length?t:[t.join("\n")]);const u=[];let d=e.text;for(let _=n.length-1;_>=0;_--){const{pos:e,end:r}=n[_];d=l?d.slice(0,e)+l[0]+d.slice(r):d.slice(0,e)+t[_]+d.slice(r)}Tn.checkDefined(i.runWithTemporaryFileUpdate).call(i,e.fileName,d,((n,l,d)=>{const _=G8.createImportAdder(d,n,o,i);if(null==r?void 0:r.range){Tn.assert(r.range.length===t.length),r.range.forEach((e=>{const t=r.file.statements,n=E(t,(t=>t.end>e.pos));if(-1===n)return;let i=E(t,(t=>t.end>=e.end),n);-1!==i&&e.end<=t[i].getStart()&&i--,u.push(...t.slice(n,-1===i?t.length:i+1))}));const o=v6(r.file,u,l.getTypeChecker(),A6(d,u,l.getTypeChecker()));Tn.assertIsDefined(l);const s=!S0(e.fileName,l,i,!!r.file.commonJsModuleIndicator);Y3(r.file,o.targetFileImportsFromOldFile,c,s),M6(r.file,o.oldImportsNeededByTargetFile,o.targetFileImportsFromOldFile,l.getTypeChecker(),n,_)}else{const e={sourceFile:d,program:l,cancellationToken:a,host:i,preferences:o,formatContext:s};GM(d,(function t(n){YC(n)&&!(null==l?void 0:l.getTypeChecker().resolveName(n.text,n,-1,!1))&&_.addImportForUnresolvedIdentifier(e,n,!0),n.forEachChild(t)}))}_.writeFixes(c,iX(r?r.file:e,o))})),n.forEach(((n,r)=>{c.replaceRangeWithText(e,{pos:n.pos,end:n.end},l?l[0]:t[r])}))}(e,t,n,r,i,o,s,a,c)));return{edits:c,fixId:Nfe}}var Ife={};a(Ife,{ANONYMOUS:()=>N$,AccessFlags:()=>li,AssertionLevel:()=>Ct,AssignmentDeclarationKind:()=>vi,AssignmentKind:()=>ng,Associativity:()=>hy,BreakpointResolver:()=>k8,BuilderFileEmit:()=>HK,BuilderProgramKind:()=>mJ,BuilderState:()=>JK,CallHierarchy:()=>C8,CharacterCodes:()=>Fi,CheckFlags:()=>ni,CheckMode:()=>qz,ClassificationType:()=>zQ,ClassificationTypeNames:()=>jQ,CommentDirectiveType:()=>Lr,Comparison:()=>d,CompletionInfoFlags:()=>DQ,CompletionTriggerKind:()=>TQ,Completions:()=>Dse,ContainerFlags:()=>Jj,ContextFlags:()=>Hr,Debug:()=>Tn,DiagnosticCategory:()=>bi,Diagnostics:()=>ws,DocumentHighlights:()=>R0,ElementFlags:()=>ci,EmitFlags:()=>zi,EmitHint:()=>Vi,EmitOnly:()=>Br,EndOfLineState:()=>OQ,ExitStatus:()=>Vr,ExportKind:()=>E0,Extension:()=>Ri,ExternalEmitHelpers:()=>qi,FileIncludeKind:()=>zr,FilePreprocessingDiagnosticsKind:()=>Ur,FileSystemEntryKind:()=>yo,FileWatcherEventKind:()=>Xi,FindAllReferences:()=>Ice,FlattenLevel:()=>yB,FlowFlags:()=>Rr,ForegroundColorEscapeSequences:()=>HV,FunctionFlags:()=>Kg,GeneratedIdentifierFlags:()=>Mr,GetLiteralTextFlags:()=>sp,GoToDefinition:()=>gle,HighlightSpanKind:()=>kQ,IdentifierNameMap:()=>HU,IdentifierNameMultiMap:()=>GU,ImportKind:()=>k0,ImportsNotUsedAsValues:()=>Ai,IndentStyle:()=>EQ,IndexFlags:()=>ui,IndexKind:()=>fi,InferenceFlags:()=>gi,InferencePriority:()=>hi,InlayHintKind:()=>wQ,InlayHints:()=>Fle,InternalEmitFlags:()=>Ui,InternalSymbolName:()=>ri,IntersectionFlags:()=>Wr,InvalidatedProjectKind:()=>uH,JSDocParsingMode:()=>Qi,JsDoc:()=>Ule,JsTyping:()=>jG,JsxEmit:()=>Ni,JsxFlags:()=>Dr,JsxReferenceKind:()=>di,LanguageFeatureMinimumTarget:()=>Bi,LanguageServiceMode:()=>vQ,LanguageVariant:()=>Mi,LexicalEnvironmentFlags:()=>Ji,ListFormat:()=>Wi,LogLevel:()=>wn,MapCode:()=>sue,MemberOverrideStatus:()=>Kr,ModifierFlags:()=>Ir,ModuleDetectionKind:()=>Ti,ModuleInstanceState:()=>Bj,ModuleKind:()=>Ci,ModuleResolutionKind:()=>Si,ModuleSpecifierEnding:()=>XT,NavigateTo:()=>c2,NavigationBar:()=>v2,NewLineKind:()=>Ii,NodeBuilderFlags:()=>Gr,NodeCheckFlags:()=>ii,NodeFactoryFlags:()=>Kk,NodeFlags:()=>Ar,NodeResolutionFeatures:()=>zL,ObjectFlags:()=>si,OperationCanceledException:()=>jr,OperatorPrecedence:()=>xy,OrganizeImports:()=>_ue,OrganizeImportsMode:()=>SQ,OuterExpressionKinds:()=>Ki,OutliningElementsCollector:()=>Kue,OutliningSpanKind:()=>PQ,OutputFileType:()=>MQ,PackageJsonAutoImportPreference:()=>yQ,PackageJsonDependencyGroup:()=>gQ,PatternMatchKind:()=>l1,PollingInterval:()=>$i,PollingWatchKind:()=>Ei,PragmaKindFlags:()=>Hi,PrivateIdentifierKind:()=>GE,ProcessLevel:()=>BB,ProgramUpdateLevel:()=>wV,QuotePreference:()=>nX,RegularExpressionFlags:()=>Or,RelationComparisonResult:()=>Pr,Rename:()=>$ue,ScriptElementKind:()=>RQ,ScriptElementKindModifier:()=>LQ,ScriptKind:()=>Di,ScriptSnapshot:()=>uQ,ScriptTarget:()=>Pi,SemanticClassificationFormat:()=>xQ,SemanticMeaning:()=>BQ,SemicolonPreference:()=>CQ,SignatureCheckMode:()=>Vz,SignatureFlags:()=>pi,SignatureHelp:()=>sde,SignatureInfo:()=>WK,SignatureKind:()=>_i,SmartSelectionRange:()=>Pde,SnippetKind:()=>ji,StatisticType:()=>eG,StructureIsReused:()=>qr,SymbolAccessibility:()=>Zr,SymbolDisplay:()=>Vde,SymbolDisplayPartKind:()=>IQ,SymbolFlags:()=>ti,SymbolFormatFlags:()=>Yr,SyntaxKind:()=>Nr,SyntheticSymbolKind:()=>Xr,Ternary:()=>yi,ThrottledCancellationToken:()=>h8,TokenClass:()=>FQ,TokenFlags:()=>Fr,TransformFlags:()=>Li,TypeFacts:()=>Uz,TypeFlags:()=>oi,TypeFormatFlags:()=>Qr,TypeMapKind:()=>mi,TypePredicateKind:()=>$r,TypeReferenceSerializationKind:()=>ei,UnionReduction:()=>Jr,UpToDateStatusType:()=>FW,VarianceFlags:()=>ai,Version:()=>Pn,VersionRange:()=>On,WatchDirectoryFlags:()=>Oi,WatchDirectoryKind:()=>ki,WatchFileKind:()=>wi,WatchLogLevel:()=>PV,WatchType:()=>vW,accessPrivateIdentifier:()=>mB,addDisposableResourceHelper:()=>EC,addEmitFlags:()=>_E,addEmitHelper:()=>PE,addEmitHelpers:()=>ME,addInternalEmitFlags:()=>fE,addNodeFactoryPatcher:()=>Wk,addObjectAllocatorPatcher:()=>rS,addRange:()=>me,addRelatedInfo:()=>xw,addSyntheticLeadingComment:()=>kE,addSyntheticTrailingComment:()=>NE,addToSeen:()=>jx,advancedAsyncSuperHelper:()=>AC,affectsDeclarationPathOptionDeclarations:()=>OO,affectsEmitOptionDeclarations:()=>MO,allKeysStartWithDot:()=>hj,altDirectorySeparator:()=>Eo,and:()=>_n,append:()=>_e,appendIfUnique:()=>ge,arrayFrom:()=>Ke,arrayIsEqualTo:()=>le,arrayIsHomogeneous:()=>Fw,arrayIsSorted:()=>ce,arrayOf:()=>Ve,arrayReverseIterator:()=>be,arrayToMap:()=>He,arrayToMultiMap:()=>Qe,arrayToNumericMap:()=>Ge,arraysEqual:()=>I,assertType:()=>mn,assign:()=>Je,assignHelper:()=>rC,asyncDelegator:()=>sC,asyncGeneratorHelper:()=>oC,asyncSuperHelper:()=>NC,asyncValues:()=>aC,attachFileToDiagnostics:()=>_S,awaitHelper:()=>iC,awaiterHelper:()=>lC,base64decode:()=>qb,base64encode:()=>Bb,binarySearch:()=>Oe,binarySearchKey:()=>Fe,bindSourceFile:()=>Gj,breakIntoCharacterSpans:()=>E1,breakIntoWordSpans:()=>C1,buildLinkParts:()=>BX,buildOpts:()=>KO,buildOverload:()=>Rfe,bundlerModuleNameResolver:()=>BL,canBeConvertedToAsync:()=>Z1,canHaveDecorators:()=>xM,canHaveExportModifier:()=>sk,canHaveFlowNode:()=>qh,canHaveIllegalDecorators:()=>jP,canHaveIllegalModifiers:()=>zP,canHaveIllegalType:()=>RP,canHaveIllegalTypeParameters:()=>LP,canHaveJSDoc:()=>Vh,canHaveLocals:()=>vd,canHaveModifiers:()=>bM,canHaveSymbol:()=>yd,canIncludeBindAndCheckDiagnsotics:()=>Ew,canJsonReportNoInputFiles:()=>pR,canProduceDiagnostics:()=>xq,canUsePropertyAccess:()=>ck,canWatchAffectingLocation:()=>LJ,canWatchAtTypes:()=>OJ,canWatchDirectoryOrFile:()=>MJ,cartesianProduct:()=>yn,cast:()=>_t,chainBundle:()=>UU,chainDiagnosticMessages:()=>gS,changeAnyExtension:()=>as,changeCompilerHostLikeToUseCache:()=>VV,changeExtension:()=>cw,changeFullExtension:()=>cs,changesAffectModuleResolution:()=>l_,changesAffectingProgramStructure:()=>d_,characterToRegularExpressionFlag:()=>Hs,childIsDecorated:()=>wm,classElementOrClassElementParameterIsDecorated:()=>Em,classHasClassThisAssignment:()=>IB,classHasDeclaredOrExplicitlyAssignedName:()=>LB,classHasExplicitlyAssignedName:()=>RB,classOrConstructorParameterIsDecorated:()=>km,classPrivateFieldGetHelper:()=>TC,classPrivateFieldInHelper:()=>kC,classPrivateFieldSetHelper:()=>wC,classicNameResolver:()=>Oj,classifier:()=>W8,cleanExtendedConfigCache:()=>CV,clear:()=>F,clearMap:()=>Nx,clearSharedExtendedConfigFileWatcher:()=>EV,climbPastPropertyAccess:()=>tY,climbPastPropertyOrElementAccess:()=>nY,clone:()=>Xe,cloneCompilerOptions:()=>EZ,closeFileWatcher:()=>vx,closeFileWatcherOf:()=>FV,codefix:()=>G8,collapseTextChangeRangesAcrossMultipleVersions:()=>sc,collectExternalModuleInfo:()=>KU,combine:()=>pe,combinePaths:()=>Zo,commandLineOptionOfCustomType:()=>BO,commentPragmas:()=>Gi,commonOptionsWithBuild:()=>CO,commonPackageFolders:()=>yT,compact:()=>ue,compareBooleans:()=>Wt,compareDataObjects:()=>Cx,compareDiagnostics:()=>bS,compareDiagnosticsSkipRelatedInformation:()=>xS,compareEmitHelpers:()=>YE,compareNumberOfDirectorySeparators:()=>rw,comparePaths:()=>ps,comparePathsCaseInsensitive:()=>_s,comparePathsCaseSensitive:()=>ds,comparePatternKeys:()=>yj,compareProperties:()=>Jt,compareStringsCaseInsensitive:()=>Ft,compareStringsCaseInsensitiveEslintCompatible:()=>Rt,compareStringsCaseSensitive:()=>Lt,compareStringsCaseSensitiveUI:()=>Kt,compareTextSpans:()=>Mt,compareValues:()=>Pt,compileOnSaveCommandLineOption:()=>bO,compilerOptionsAffectDeclarationPath:()=>oT,compilerOptionsAffectEmit:()=>iT,compilerOptionsAffectSemanticDiagnostics:()=>rT,compilerOptionsDidYouMeanDiagnostics:()=>oF,compilerOptionsIndicateEsModules:()=>YZ,compose:()=>Et,computeCommonSourceDirectoryOfFilenames:()=>jV,computeLineAndCharacterOfPosition:()=>Xs,computeLineOfPosition:()=>$s,computeLineStarts:()=>Gs,computePositionOfLineAndCharacter:()=>Ys,computeSignature:()=>vJ,computeSignatureWithDiagnostics:()=>yJ,computeSuggestionDiagnostics:()=>B1,computedOptions:()=>PS,concatenate:()=>te,concatenateDiagnosticMessageChains:()=>yS,configDirTemplateSubstitutionOptions:()=>zO,configDirTemplateSubstitutionWatchOptions:()=>UO,consumesNodeCoreModules:()=>G$,contains:()=>A,containsIgnoredPath:()=>Hw,containsObjectRestOrSpread:()=>yM,containsParseError:()=>E_,containsPath:()=>fs,convertCompilerOptionsForTelemetry:()=>JR,convertCompilerOptionsFromJson:()=>yR,convertJsonOption:()=>ER,convertToBase64:()=>Ub,convertToJson:()=>RF,convertToObject:()=>FF,convertToOptionsWithAbsolutePaths:()=>QF,convertToRelativePath:()=>ys,convertToTSConfig:()=>zF,convertTypeAcquisitionFromJson:()=>vR,copyComments:()=>d$,copyEntries:()=>h_,copyLeadingComments:()=>h$,copyProperties:()=>et,copyTrailingAsLeadingComments:()=>y$,copyTrailingComments:()=>g$,couldStartTrivia:()=>ua,countWhere:()=>P,createAbstractBuilder:()=>IJ,createAccessorPropertyBackingField:()=>_M,createAccessorPropertyGetRedirector:()=>pM,createAccessorPropertySetRedirector:()=>fM,createBaseNodeFactory:()=>Lk,createBinaryExpressionTrampoline:()=>rM,createBindingHelper:()=>yC,createBuildInfo:()=>dV,createBuilderProgram:()=>bJ,createBuilderProgramUsingProgramBuildInfo:()=>kJ,createBuilderStatusReporter:()=>VW,createCacheWithRedirects:()=>TL,createCacheableExportInfoMap:()=>C0,createCachedDirectoryStructureHost:()=>TV,createClassNamedEvaluationHelperBlock:()=>OB,createClassThisAssignmentBlock:()=>NB,createClassifier:()=>F0,createCommentDirectivesMap:()=>G_,createCompilerDiagnostic:()=>mS,createCompilerDiagnosticForInvalidCustomType:()=>YO,createCompilerDiagnosticFromMessageChain:()=>hS,createCompilerHost:()=>zV,createCompilerHostFromProgramHost:()=>xW,createCompilerHostWorker:()=>qV,createDetachedDiagnostic:()=>lS,createDiagnosticCollection:()=>ky,createDiagnosticForFileFromMessageChain:()=>Yp,createDiagnosticForNode:()=>Vp,createDiagnosticForNodeArray:()=>Kp,createDiagnosticForNodeArrayFromMessageChain:()=>Hp,createDiagnosticForNodeFromMessageChain:()=>Wp,createDiagnosticForNodeInSourceFile:()=>Jp,createDiagnosticForRange:()=>Xp,createDiagnosticMessageChainFromDiagnostic:()=>Zp,createDiagnosticReporter:()=>QJ,createDocumentPositionMapper:()=>FU,createDocumentRegistry:()=>Z0,createDocumentRegistryInternal:()=>X0,createEmitAndSemanticDiagnosticsBuilderProgram:()=>AJ,createEmitHelperFactory:()=>QE,createEmptyExports:()=>HD,createEvaluator:()=>Ik,createExpressionForJsxElement:()=>XD,createExpressionForJsxFragment:()=>$D,createExpressionForObjectLiteralElementLike:()=>iP,createExpressionForPropertyName:()=>rP,createExpressionFromEntityName:()=>nP,createExternalHelpersImportDeclarationIfNeeded:()=>TP,createFileDiagnostic:()=>pS,createFileDiagnosticFromMessageChain:()=>Qp,createFlowNode:()=>Wj,createForOfBindingStatement:()=>eP,createFutureSourceFile:()=>w0,createGetCanonicalFileName:()=>rn,createGetIsolatedDeclarationErrors:()=>wq,createGetSourceFile:()=>UV,createGetSymbolAccessibilityDiagnosticForNode:()=>Tq,createGetSymbolAccessibilityDiagnosticForNodeName:()=>Sq,createGetSymbolWalker:()=>ez,createIncrementalCompilerHost:()=>DW,createIncrementalProgram:()=>PW,createJsxFactoryExpression:()=>ZD,createLanguageService:()=>v8,createLanguageServiceSourceFile:()=>_8,createMemberAccessForPropertyName:()=>GD,createModeAwareCache:()=>EL,createModeAwareCacheKey:()=>kL,createModuleNotFoundChain:()=>x_,createModuleResolutionCache:()=>DL,createModuleResolutionLoader:()=>mK,createModuleResolutionLoaderUsingGlobalCache:()=>JJ,createModuleSpecifierResolutionHost:()=>ZZ,createMultiMap:()=>nt,createNameResolver:()=>Mk,createNodeConverters:()=>Uk,createNodeFactory:()=>Hk,createOptionNameMap:()=>WO,createOverload:()=>Ffe,createPackageJsonImportFilter:()=>H$,createPackageJsonInfo:()=>W$,createParenthesizerRules:()=>jk,createPatternMatcher:()=>d1,createPrinter:()=>vV,createPrinterWithDefaults:()=>mV,createPrinterWithRemoveComments:()=>hV,createPrinterWithRemoveCommentsNeverAsciiEscape:()=>gV,createPrinterWithRemoveCommentsOmitTrailingSemicolon:()=>yV,createProgram:()=>FK,createProgramHost:()=>wW,createPropertyNameNodeForIdentifierOrLiteral:()=>tk,createQueue:()=>ot,createRange:()=>Yb,createRedirectedBuilderProgram:()=>CJ,createResolutionCache:()=>WJ,createRuntimeTypeSerializer:()=>QB,createScanner:()=>Ia,createSemanticDiagnosticsBuilderProgram:()=>NJ,createSet:()=>st,createSolutionBuilder:()=>HW,createSolutionBuilderHost:()=>JW,createSolutionBuilderWithWatch:()=>GW,createSolutionBuilderWithWatchHost:()=>WW,createSortedArray:()=>oe,createSourceFile:()=>XM,createSourceMapGenerator:()=>gU,createSourceMapSource:()=>sE,createSuperAccessVariableStatement:()=>$B,createSymbolTable:()=>o_,createSymlinkCache:()=>dT,createSyntacticTypeNodeBuilder:()=>LG,createSystemWatchFunctions:()=>xo,createTextChange:()=>jZ,createTextChangeFromStartLength:()=>LZ,createTextChangeRange:()=>ic,createTextRangeFromNode:()=>OZ,createTextRangeFromSpan:()=>RZ,createTextSpan:()=>ec,createTextSpanFromBounds:()=>tc,createTextSpanFromNode:()=>PZ,createTextSpanFromRange:()=>FZ,createTextSpanFromStringLiteralLikeContent:()=>MZ,createTextWriter:()=>Qy,createTokenRange:()=>nx,createTypeChecker:()=>Zz,createTypeReferenceDirectiveResolutionCache:()=>PL,createTypeReferenceResolutionLoader:()=>yK,createWatchCompilerHost:()=>MW,createWatchCompilerHostOfConfigFile:()=>CW,createWatchCompilerHostOfFilesAndCompilerOptions:()=>NW,createWatchFactory:()=>bW,createWatchHost:()=>yW,createWatchProgram:()=>OW,createWatchStatusReporter:()=>$J,createWriteFileMeasuringIO:()=>BV,declarationNameToString:()=>Lp,decodeMappings:()=>EU,decodedTextSpanIntersectsWith:()=>Za,decorateHelper:()=>XE,deduplicate:()=>ie,defaultIncludeSpec:()=>nR,defaultInitCompilerOptions:()=>QO,defaultMaximumTruncationLength:()=>t_,diagnosticCategoryName:()=>xi,diagnosticToString:()=>g0,diagnosticsEqualityComparer:()=>wS,directoryProbablyExists:()=>Wb,directorySeparator:()=>ko,displayPart:()=>CX,displayPartsToString:()=>a8,disposeEmitNodes:()=>lE,disposeResourcesHelper:()=>CC,documentSpansEqual:()=>gX,dumpTracingLegend:()=>Cr,elementAt:()=>Te,elideNodes:()=>aM,emitComments:()=>Rv,emitDetachedComments:()=>Lv,emitFiles:()=>uV,emitFilesAndReportErrors:()=>fW,emitFilesAndReportErrorsAndGetExitStatus:()=>mW,emitModuleKindIsNonNodeESM:()=>QS,emitNewLineBeforeLeadingCommentOfPosition:()=>Fv,emitNewLineBeforeLeadingComments:()=>Mv,emitNewLineBeforeLeadingCommentsOfPosition:()=>Ov,emitResolverSkipsTypeChecking:()=>lV,emitSkippedWithNoDiagnostics:()=>RK,emptyArray:()=>_,emptyFileSystemEntries:()=>yw,emptyMap:()=>p,emptyOptions:()=>bQ,emptySet:()=>f,endsWith:()=>Qt,ensurePathIsNonModuleName:()=>ss,ensureScriptKind:()=>FT,ensureTrailingDirectorySeparator:()=>os,entityNameToString:()=>qp,enumerateInsertsAndDeletes:()=>gn,equalOwnProperties:()=>We,equateStringsCaseInsensitive:()=>At,equateStringsCaseSensitive:()=>It,equateValues:()=>Nt,esDecorateHelper:()=>tC,escapeJsxAttributeString:()=>Vy,escapeLeadingUnderscores:()=>Tc,escapeNonAsciiString:()=>jy,escapeSnippetText:()=>$w,escapeString:()=>Ry,escapeTemplateSubstitution:()=>Cy,evaluatorResult:()=>Ak,every:()=>T,executeCommandLine:()=>gG,expandPreOrPostfixIncrementOrDecrementExpression:()=>oP,explainFiles:()=>cW,explainIfFileIsRedirectAndImpliedFormat:()=>lW,exportAssignmentIsAlias:()=>wg,exportStarHelper:()=>SC,expressionResultIsUnused:()=>Ww,extend:()=>$e,extendsHelper:()=>uC,extensionFromPath:()=>fw,extensionIsTS:()=>_w,extensionsNotSupportingExtensionlessResolution:()=>HT,externalHelpersModuleNameText:()=>e_,factory:()=>oE,fileExtensionIs:()=>Lo,fileExtensionIsOneOf:()=>jo,fileIncludeReasonToDiagnostics:()=>_W,fileShouldUseJavaScriptRequire:()=>S0,filter:()=>M,filterMutate:()=>O,filterSemanticDiagnostics:()=>jK,find:()=>w,findAncestor:()=>bc,findBestPatternMatch:()=>an,findChildOfKind:()=>FY,findComputedPropertyNameCacheAssignment:()=>mM,findConfigFile:()=>RV,findConstructorDeclaration:()=>Pk,findContainingList:()=>RY,findDiagnosticForNode:()=>Z$,findFirstNonJsxWhitespaceToken:()=>ZY,findIndex:()=>E,findLast:()=>k,findLastIndex:()=>C,findListItemInfo:()=>MY,findMap:()=>N,findModifier:()=>pX,findNextToken:()=>$Y,findPackageJson:()=>K$,findPackageJsons:()=>V$,findPrecedingMatchingToken:()=>uZ,findPrecedingToken:()=>eZ,findSuperStatementIndexPath:()=>tB,findTokenOnLeftOfPosition:()=>XY,findUseStrictPrologue:()=>uP,first:()=>Ee,firstDefined:()=>y,firstDefinedIterator:()=>v,firstIterator:()=>Ce,firstOrOnly:()=>n0,firstOrUndefined:()=>we,firstOrUndefinedIterator:()=>ke,fixupCompilerOptions:()=>a2,flatMap:()=>U,flatMapIterator:()=>q,flatMapToMutable:()=>B,flatten:()=>z,flattenCommaList:()=>gM,flattenDestructuringAssignment:()=>vB,flattenDestructuringBinding:()=>SB,flattenDiagnosticMessageText:()=>oK,forEach:()=>h,forEachAncestor:()=>p_,forEachAncestorDirectory:()=>xs,forEachChild:()=>GM,forEachChildRecursively:()=>QM,forEachEmittedFile:()=>Kq,forEachEnclosingBlockScopeContainer:()=>Rp,forEachEntry:()=>f_,forEachExternalModuleToImportFrom:()=>A0,forEachImportClauseDeclaration:()=>Mh,forEachKey:()=>m_,forEachLeadingCommentRange:()=>va,forEachNameInAccessChainWalkingLeft:()=>Jx,forEachNameOfDefaultExport:()=>O0,forEachPropertyAssignment:()=>Zf,forEachResolvedProjectReference:()=>bK,forEachReturnStatement:()=>Of,forEachRight:()=>g,forEachTrailingCommentRange:()=>ba,forEachTsConfigPropArray:()=>tm,forEachUnique:()=>vX,forEachYieldExpression:()=>Ff,forSomeAncestorDirectory:()=>Ox,formatColorAndReset:()=>tK,formatDiagnostic:()=>WV,formatDiagnostics:()=>JV,formatDiagnosticsWithColorAndContext:()=>iK,formatGeneratedName:()=>dM,formatGeneratedNamePart:()=>lM,formatLocation:()=>rK,formatMessage:()=>fS,formatStringFromArgs:()=>oS,formatting:()=>C_e,fullTripleSlashAMDReferencePathRegEx:()=>Nf,fullTripleSlashReferencePathRegEx:()=>kf,generateDjb2Hash:()=>Yi,generateTSConfig:()=>GF,generatorHelper:()=>gC,getAdjustedReferenceLocation:()=>JY,getAdjustedRenameLocation:()=>WY,getAliasDeclarationFromName:()=>Sg,getAllAccessorDeclarations:()=>Cv,getAllDecoratorsOfClass:()=>cB,getAllDecoratorsOfClassElement:()=>lB,getAllJSDocTags:()=>gl,getAllJSDocTagsOfKind:()=>yl,getAllKeys:()=>Be,getAllProjectOutputs:()=>sV,getAllSuperTypeNodes:()=>Ig,getAllowJSCompilerOption:()=>HS,getAllowSyntheticDefaultImports:()=>zS,getAncestor:()=>Mg,getAnyExtensionFromPath:()=>Wo,getAreDeclarationMapsEnabled:()=>WS,getAssignedExpandoInitializer:()=>nh,getAssignedName:()=>Fc,getAssignedNameOfIdentifier:()=>PB,getAssignmentDeclarationKind:()=>dh,getAssignmentDeclarationPropertyAccessKind:()=>xh,getAssignmentTargetKind:()=>ig,getAutomaticTypeDirectiveNames:()=>yL,getBaseFileName:()=>Ko,getBinaryOperatorPrecedence:()=>Ty,getBuildInfo:()=>pV,getBuildInfoFileVersionMap:()=>EJ,getBuildInfoText:()=>_V,getBuildOrderFromAnyBuildOrder:()=>qW,getBuilderCreationParameters:()=>hJ,getBuilderFileEmit:()=>GK,getCanonicalDiagnostic:()=>$p,getCheckFlags:()=>bx,getClassExtendsHeritageElement:()=>Ng,getClassLikeDeclarationOfSymbol:()=>Px,getCombinedLocalAndExportSymbolFlags:()=>Tx,getCombinedModifierFlags:()=>pc,getCombinedNodeFlags:()=>mc,getCombinedNodeFlagsAlwaysIncludeJSDoc:()=>fc,getCommentRange:()=>xE,getCommonSourceDirectory:()=>iV,getCommonSourceDirectoryOfConfig:()=>oV,getCompilerOptionValue:()=>sT,getCompilerOptionsDiffValue:()=>WF,getConditions:()=>hL,getConfigFileParsingDiagnostics:()=>DK,getConstantValue:()=>IE,getContainerFlags:()=>Xj,getContainerNode:()=>hY,getContainingClass:()=>im,getContainingClassExcludingClassDecorators:()=>am,getContainingClassStaticBlock:()=>om,getContainingFunction:()=>nm,getContainingFunctionDeclaration:()=>rm,getContainingFunctionOrClassStaticBlock:()=>sm,getContainingNodeArray:()=>Gw,getContainingObjectLiteralElement:()=>x8,getContextualTypeFromParent:()=>S$,getContextualTypeFromParentOrAncestorTypeNode:()=>UY,getCurrentTime:()=>UW,getDeclarationDiagnostics:()=>kq,getDeclarationEmitExtensionForPath:()=>sv,getDeclarationEmitOutputFilePath:()=>iv,getDeclarationEmitOutputFilePathWorker:()=>ov,getDeclarationFileExtension:()=>uO,getDeclarationFromName:()=>yg,getDeclarationModifierFlagsFromSymbol:()=>xx,getDeclarationOfKind:()=>r_,getDeclarationsOfKind:()=>i_,getDeclaredExpandoInitializer:()=>th,getDecorators:()=>Rc,getDefaultCompilerOptions:()=>c8,getDefaultFormatCodeSettings:()=>NQ,getDefaultLibFileName:()=>Ba,getDefaultLibFilePath:()=>T8,getDefaultLikeExportInfo:()=>P0,getDefaultLikeExportNameFromDeclaration:()=>s0,getDiagnosticText:()=>_F,getDiagnosticsWithinSpan:()=>X$,getDirectoryPath:()=>Vo,getDirectoryToWatchFailedLookupLocation:()=>jJ,getDirectoryToWatchFailedLookupLocationFromTypeRoot:()=>BJ,getDocumentPositionMapper:()=>j1,getDocumentSpansEqualityComparer:()=>yX,getESModuleInterop:()=>jS,getEditsForFileRename:()=>t1,getEffectiveBaseTypeNode:()=>Cg,getEffectiveConstraintOfTypeParameter:()=>xl,getEffectiveContainerForJSDocTemplateTag:()=>Gh,getEffectiveImplementsTypeNodes:()=>Ag,getEffectiveInitializer:()=>eh,getEffectiveJSDocHost:()=>Zh,getEffectiveModifierFlags:()=>nb,getEffectiveModifierFlagsAlwaysIncludeJSDoc:()=>rb,getEffectiveModifierFlagsNoCache:()=>ab,getEffectiveReturnTypeNode:()=>Iv,getEffectiveSetAccessorTypeAnnotationNode:()=>Pv,getEffectiveTypeAnnotationNode:()=>Nv,getEffectiveTypeParameterDeclarations:()=>bl,getEffectiveTypeRoots:()=>uL,getElementOrPropertyAccessArgumentExpressionOrName:()=>vh,getElementOrPropertyAccessName:()=>bh,getElementsOfBindingOrAssignmentPattern:()=>OP,getEmitDeclarations:()=>VS,getEmitFlags:()=>rp,getEmitHelpers:()=>FE,getEmitModuleDetectionKind:()=>RS,getEmitModuleKind:()=>OS,getEmitModuleResolutionKind:()=>FS,getEmitScriptTarget:()=>MS,getEmitStandardClassFields:()=>nT,getEnclosingBlockScopeContainer:()=>Fp,getEnclosingContainer:()=>Op,getEncodedSemanticClassifications:()=>K0,getEncodedSyntacticClassifications:()=>Q0,getEndLinePosition:()=>M_,getEntityNameFromTypeNode:()=>vm,getEntrypointsFromPackageJsonInfo:()=>sj,getErrorCountForSummary:()=>tW,getErrorSpanForNode:()=>nf,getErrorSummaryText:()=>oW,getEscapedTextOfIdentifierOrLiteral:()=>ey,getEscapedTextOfJsxAttributeName:()=>hk,getEscapedTextOfJsxNamespacedName:()=>vk,getExpandoInitializer:()=>rh,getExportAssignmentExpression:()=>kg,getExportInfoMap:()=>D0,getExportNeedsImportStarHelper:()=>BU,getExpressionAssociativity:()=>gy,getExpressionPrecedence:()=>vy,getExternalHelpersModuleName:()=>xP,getExternalModuleImportEqualsDeclarationExpression:()=>Om,getExternalModuleName:()=>Ih,getExternalModuleNameFromDeclaration:()=>tv,getExternalModuleNameFromPath:()=>nv,getExternalModuleNameLiteral:()=>EP,getExternalModuleRequireArgument:()=>Fm,getFallbackOptions:()=>OV,getFileEmitOutput:()=>KK,getFileMatcherPatterns:()=>IT,getFileNamesFromConfigSpecs:()=>MR,getFileWatcherEventKind:()=>_o,getFilesInErrorForSummary:()=>nW,getFirstConstructorWithBody:()=>yv,getFirstIdentifier:()=>kb,getFirstNonSpaceCharacterPosition:()=>t$,getFirstProjectOutput:()=>cV,getFixableErrorSpanExpression:()=>e0,getFormatCodeSettingsForWriting:()=>y0,getFullWidth:()=>y_,getFunctionFlags:()=>Jg,getHeritageClause:()=>Pg,getHostSignatureFromJSDoc:()=>Yh,getIdentifierAutoGenerate:()=>JE,getIdentifierGeneratedImportReference:()=>HE,getIdentifierTypeArguments:()=>VE,getImmediatelyInvokedFunctionExpression:()=>pm,getImpliedNodeFormatForFile:()=>PK,getImpliedNodeFormatForFileWorker:()=>MK,getImportNeedsImportDefaultHelper:()=>VU,getImportNeedsImportStarHelper:()=>qU,getIndentSize:()=>Gy,getIndentString:()=>Hy,getInferredLibraryNameResolveFrom:()=>TK,getInitializedVariables:()=>hx,getInitializerOfBinaryExpression:()=>Sh,getInitializerOfBindingOrAssignmentElement:()=>NP,getInterfaceBaseTypeNodes:()=>Dg,getInternalEmitFlags:()=>ip,getInvokedExpression:()=>bm,getIsolatedModules:()=>LS,getJSDocAugmentsTag:()=>Jc,getJSDocClassTag:()=>Hc,getJSDocCommentRanges:()=>wf,getJSDocCommentsAndTags:()=>Kh,getJSDocDeprecatedTag:()=>rl,getJSDocDeprecatedTagNoCache:()=>il,getJSDocEnumTag:()=>ol,getJSDocHost:()=>Xh,getJSDocImplementsTags:()=>Wc,getJSDocOverloadTags:()=>Qh,getJSDocOverrideTagNoCache:()=>nl,getJSDocParameterTags:()=>zc,getJSDocParameterTagsNoCache:()=>Uc,getJSDocPrivateTag:()=>Yc,getJSDocPrivateTagNoCache:()=>Zc,getJSDocProtectedTag:()=>Xc,getJSDocProtectedTagNoCache:()=>$c,getJSDocPublicTag:()=>Gc,getJSDocPublicTagNoCache:()=>Qc,getJSDocReadonlyTag:()=>el,getJSDocReadonlyTagNoCache:()=>tl,getJSDocReturnTag:()=>al,getJSDocReturnType:()=>_l,getJSDocRoot:()=>$h,getJSDocSatisfiesExpressionType:()=>fk,getJSDocSatisfiesTag:()=>ll,getJSDocTags:()=>fl,getJSDocTagsNoCache:()=>ml,getJSDocTemplateTag:()=>cl,getJSDocThisTag:()=>sl,getJSDocType:()=>dl,getJSDocTypeAliasName:()=>FP,getJSDocTypeAssertionType:()=>mP,getJSDocTypeParameterDeclarations:()=>Dv,getJSDocTypeParameterTags:()=>qc,getJSDocTypeParameterTagsNoCache:()=>Vc,getJSDocTypeTag:()=>ul,getJSXImplicitImportBase:()=>cT,getJSXRuntimeImport:()=>lT,getJSXTransformEnabled:()=>aT,getKeyForCompilerOptions:()=>SL,getLanguageVariant:()=>CS,getLastChild:()=>Lx,getLeadingCommentRanges:()=>wa,getLeadingCommentRangesOfNode:()=>Tf,getLeftmostAccessExpression:()=>Kx,getLeftmostExpression:()=>Wx,getLibraryNameFromLibFileName:()=>wK,getLineAndCharacterOfPosition:()=>ta,getLineInfo:()=>xU,getLineOfLocalPosition:()=>hv,getLineOfLocalPositionFromLineMap:()=>gv,getLineStartPositionForPosition:()=>bY,getLineStarts:()=>Zs,getLinesBetweenPositionAndNextNonWhitespaceCharacter:()=>fx,getLinesBetweenPositionAndPrecedingNonWhitespaceCharacter:()=>px,getLinesBetweenPositions:()=>ea,getLinesBetweenRangeEndAndRangeStart:()=>cx,getLinesBetweenRangeEndPositions:()=>lx,getLiteralText:()=>ap,getLocalNameForExternalImport:()=>kP,getLocalSymbolForExportDefault:()=>Lb,getLocaleSpecificMessage:()=>cS,getLocaleTimeString:()=>XJ,getMappedContextSpan:()=>TX,getMappedDocumentSpan:()=>SX,getMappedLocation:()=>xX,getMatchedFileSpec:()=>uW,getMatchedIncludeSpec:()=>dW,getMeaningFromDeclaration:()=>qQ,getMeaningFromLocation:()=>VQ,getMembersOfDeclaration:()=>Lf,getModeForFileReference:()=>sK,getModeForResolutionAtIndex:()=>aK,getModeForUsageLocation:()=>lK,getModifiedTime:()=>to,getModifiers:()=>Lc,getModuleInstanceState:()=>qj,getModuleNameStringLiteralAt:()=>VK,getModuleSpecifierEndingPreference:()=>ew,getModuleSpecifierResolverHost:()=>XZ,getNameForExportedSymbol:()=>i0,getNameFromImportAttribute:()=>Nk,getNameFromIndexInfo:()=>jp,getNameFromPropertyName:()=>HZ,getNameOfAccessExpression:()=>qx,getNameOfCompilerOptionValue:()=>VF,getNameOfDeclaration:()=>Oc,getNameOfExpando:()=>oh,getNameOfJSDocTypedef:()=>Dc,getNameOfScriptTarget:()=>tT,getNameOrArgument:()=>yh,getNameTable:()=>b8,getNamesForExportedSymbol:()=>r0,getNamespaceDeclarationNode:()=>Dh,getNewLineCharacter:()=>Qb,getNewLineKind:()=>h0,getNewLineOrDefaultFromHost:()=>VX,getNewTargetContainer:()=>dm,getNextJSDocCommentLocation:()=>Wh,getNodeChildren:()=>VD,getNodeForGeneratedName:()=>cM,getNodeId:()=>Gz,getNodeKind:()=>gY,getNodeModifiers:()=>yZ,getNodeModulePathParts:()=>rk,getNonAssignedNameOfDeclaration:()=>Mc,getNonAssignmentOperatorForCompoundAssignment:()=>XU,getNonAugmentationDeclaration:()=>xp,getNonDecoratorTokenPosOfNode:()=>Y_,getNormalizedAbsolutePath:()=>es,getNormalizedAbsolutePathWithoutRoot:()=>ns,getNormalizedPathComponents:()=>$o,getObjectFlags:()=>Mx,getOperator:()=>by,getOperatorAssociativity:()=>yy,getOperatorPrecedence:()=>Sy,getOptionFromName:()=>aF,getOptionsForLibraryResolution:()=>ML,getOptionsNameMap:()=>HO,getOrCreateEmitNode:()=>cE,getOrCreateExternalHelpersModuleNameIfNeeded:()=>wP,getOrUpdate:()=>G,getOriginalNode:()=>vc,getOriginalNodeId:()=>LU,getOriginalSourceFile:()=>my,getOutputDeclarationFileName:()=>Zq,getOutputDeclarationFileNameWorker:()=>Xq,getOutputExtension:()=>Qq,getOutputFileNames:()=>aV,getOutputJSFileNameWorker:()=>eV,getOutputPathsFor:()=>Hq,getOutputPathsForBundle:()=>Wq,getOwnEmitOutputFilePath:()=>rv,getOwnKeys:()=>Ue,getOwnValues:()=>qe,getPackageJsonInfo:()=>_j,getPackageJsonTypesVersionsPaths:()=>lL,getPackageJsonsVisibleToFile:()=>J$,getPackageNameFromTypesPackageName:()=>Dj,getPackageScopeForPath:()=>lj,getParameterSymbolFromJSDoc:()=>Hh,getParameterTypeNode:()=>ik,getParentNodeInSpan:()=>dX,getParseTreeNode:()=>Sc,getParsedCommandLineOfConfigFile:()=>pF,getPathComponents:()=>Ho,getPathComponentsRelativeTo:()=>hs,getPathFromPathComponents:()=>Go,getPathUpdater:()=>n1,getPathsBasePath:()=>cv,getPatternFromSpec:()=>CT,getPendingEmitKind:()=>QK,getPositionOfLineAndCharacter:()=>Qs,getPossibleGenericSignatures:()=>pZ,getPossibleOriginalInputExtensionForExtension:()=>av,getPossibleTypeArgumentsInfo:()=>fZ,getPreEmitDiagnostics:()=>KV,getPrecedingNonSpaceCharacterPosition:()=>n$,getPrivateIdentifier:()=>pB,getProperties:()=>nB,getProperty:()=>ze,getPropertyArrayElementValue:()=>Xf,getPropertyAssignmentAliasLikeExpression:()=>Eg,getPropertyNameForPropertyNameNode:()=>Zg,getPropertyNameForUniqueESSymbol:()=>ty,getPropertyNameFromType:()=>Tk,getPropertyNameOfBindingOrAssignmentElement:()=>DP,getPropertySymbolFromBindingElement:()=>uX,getPropertySymbolsFromContextualType:()=>S8,getQuoteFromPreference:()=>oX,getQuotePreference:()=>iX,getRangesWhere:()=>ee,getRefactorContextSpan:()=>$$,getReferencedFileLocation:()=>AK,getRegexFromPattern:()=>DT,getRegularExpressionForWildcard:()=>wT,getRegularExpressionsForWildcards:()=>kT,getRelativePathFromDirectory:()=>gs,getRelativePathFromFile:()=>vs,getRelativePathToDirectoryOrUrl:()=>bs,getRenameLocation:()=>m$,getReplacementSpanForContextToken:()=>DZ,getResolutionDiagnostic:()=>BK,getResolutionModeOverride:()=>dK,getResolveJsonModule:()=>qS,getResolvePackageJsonExports:()=>US,getResolvePackageJsonImports:()=>BS,getResolvedExternalModuleName:()=>$y,getRestIndicatorOfBindingOrAssignmentElement:()=>IP,getRestParameterElementType:()=>Rf,getRightMostAssignedExpression:()=>ah,getRootDeclaration:()=>_y,getRootDirectoryOfResolutionCache:()=>qJ,getRootLength:()=>qo,getRootPathSplitLength:()=>VJ,getScriptKind:()=>ZX,getScriptKindFromFileName:()=>RT,getScriptTargetFeatures:()=>op,getSelectedEffectiveModifierFlags:()=>$v,getSelectedSyntacticModifierFlags:()=>eb,getSemanticClassifications:()=>q0,getSemanticJsxChildren:()=>wy,getSetAccessorTypeAnnotationNode:()=>bv,getSetAccessorValueParameter:()=>vv,getSetExternalModuleIndicator:()=>DS,getShebang:()=>Ea,getSingleInitializerOfVariableStatementOrPropertyDeclaration:()=>zh,getSingleVariableOfVariableStatement:()=>Uh,getSnapshotText:()=>KZ,getSnippetElement:()=>LE,getSourceFileOfModule:()=>N_,getSourceFileOfNode:()=>C_,getSourceFilePathInNewDir:()=>dv,getSourceFilePathInNewDirWorker:()=>_v,getSourceFileVersionAsHashFromText:()=>SW,getSourceFilesToEmit:()=>lv,getSourceMapRange:()=>mE,getSourceMapper:()=>L1,getSourceTextOfNodeFromSourceFile:()=>Z_,getSpanOfTokenAtPosition:()=>ef,getSpellingSuggestion:()=>Ht,getStartPositionOfLine:()=>D_,getStartPositionOfRange:()=>_x,getStartsOnNewLine:()=>vE,getStaticPropertiesAndClassStaticBlock:()=>iB,getStrictOptionValue:()=>eT,getStringComparer:()=>jt,getSubPatternFromSpec:()=>NT,getSuperCallFromStatement:()=>$U,getSuperContainer:()=>_m,getSupportedCodeFixes:()=>l8,getSupportedExtensions:()=>GT,getSupportedExtensionsWithJsonIfResolveJsonModule:()=>QT,getSwitchedType:()=>C$,getSymbolId:()=>Qz,getSymbolNameForPrivateIdentifier:()=>ny,getSymbolParentOrFail:()=>a0,getSymbolTarget:()=>XX,getSyntacticClassifications:()=>G0,getSyntacticModifierFlags:()=>ib,getSyntacticModifierFlagsNoCache:()=>cb,getSynthesizedDeepClone:()=>r$,getSynthesizedDeepCloneWithReplacements:()=>i$,getSynthesizedDeepClones:()=>s$,getSynthesizedDeepClonesWithReplacements:()=>a$,getSyntheticLeadingComments:()=>TE,getSyntheticTrailingComments:()=>EE,getTargetLabel:()=>rY,getTargetOfBindingOrAssignmentElement:()=>AP,getTemporaryModuleResolutionState:()=>cj,getTextOfConstantValue:()=>cp,getTextOfIdentifierOrLiteral:()=>$g,getTextOfJSDocComment:()=>vl,getTextOfJsxAttributeName:()=>gk,getTextOfJsxNamespacedName:()=>bk,getTextOfNode:()=>ep,getTextOfNodeFromSourceText:()=>$_,getTextOfPropertyName:()=>Bp,getThisContainer:()=>cm,getThisParameter:()=>xv,getTokenAtPosition:()=>QY,getTokenPosOfNode:()=>Q_,getTokenSourceMapRange:()=>gE,getTouchingPropertyName:()=>HY,getTouchingToken:()=>GY,getTrailingCommentRanges:()=>ka,getTrailingSemicolonDeferringWriter:()=>Yy,getTransformFlagsSubtreeExclusions:()=>tE,getTransformers:()=>Pq,getTsBuildInfoEmitOutputFilePath:()=>Jq,getTsConfigObjectLiteralExpression:()=>$f,getTsConfigPropArrayElementValue:()=>em,getTypeAnnotationNode:()=>Av,getTypeArgumentOrTypeParameterList:()=>vZ,getTypeKeywordOfTypeOnlyImport:()=>mX,getTypeNode:()=>BE,getTypeNodeIfAccessible:()=>A$,getTypeParameterFromJsDoc:()=>eg,getTypeParameterOwner:()=>ac,getTypesPackageName:()=>Aj,getUILocale:()=>qt,getUniqueName:()=>f$,getUniqueSymbolId:()=>e$,getUseDefineForClassFields:()=>GS,getWatchErrorSummaryDiagnosticMessage:()=>rW,getWatchFactory:()=>MV,group:()=>Ye,groupBy:()=>Ze,guessIndentation:()=>Wd,handleNoEmitOptions:()=>LK,handleWatchOptionsConfigDirTemplateSubstitution:()=>iR,hasAbstractModifier:()=>Gv,hasAccessorModifier:()=>Yv,hasAmbientModifier:()=>Qv,hasChangesInResolutions:()=>k_,hasChildOfKind:()=>OY,hasContextSensitiveParameters:()=>Qw,hasDecorators:()=>Xv,hasDocComment:()=>hZ,hasDynamicName:()=>Qg,hasEffectiveModifier:()=>Vv,hasEffectiveModifiers:()=>Bv,hasEffectiveReadonlyModifier:()=>Zv,hasExtension:()=>Ro,hasIndexSignature:()=>E$,hasInferredType:()=>Rk,hasInitializer:()=>Bd,hasInvalidEscape:()=>Ay,hasJSDocNodes:()=>zd,hasJSDocParameterTags:()=>Kc,hasJSFileExtension:()=>YT,hasJsonModuleEmitEnabled:()=>YS,hasOnlyExpressionInitializer:()=>qd,hasOverrideModifier:()=>Hv,hasPossibleExternalModuleReference:()=>Pp,hasProperty:()=>je,hasPropertyAccessExpressionWithName:()=>iY,hasQuestionToken:()=>Oh,hasRecordedExternalHelpers:()=>SP,hasResolutionModeOverride:()=>kk,hasRestParameter:()=>Qd,hasScopeMarker:()=>sd,hasStaticModifier:()=>Wv,hasSyntacticModifier:()=>Kv,hasSyntacticModifiers:()=>qv,hasTSFileExtension:()=>ZT,hasTabstop:()=>lk,hasTrailingDirectorySeparator:()=>zo,hasType:()=>Ud,hasTypeArguments:()=>tg,hasZeroOrOneAsteriskCharacter:()=>uT,helperString:()=>ZE,hostGetCanonicalFileName:()=>Xy,hostUsesCaseSensitiveFileNames:()=>Zy,idText:()=>kc,identifierIsThisKeyword:()=>Ev,identifierToKeywordKind:()=>Ec,identity:()=>gt,identitySourceMapConsumer:()=>RU,ignoreSourceNewlines:()=>zE,ignoredPaths:()=>po,importDefaultHelper:()=>xC,importFromModuleSpecifier:()=>Nh,importStarHelper:()=>bC,indexOfAnyCharCode:()=>D,indexOfNode:()=>np,indicesOf:()=>re,inferredTypesContainingFile:()=>SK,injectClassNamedEvaluationHelperBlockIfMissing:()=>jB,injectClassThisAssignmentIfMissing:()=>DB,insertImports:()=>fX,insertLeadingStatement:()=>tP,insertSorted:()=>se,insertStatementAfterCustomPrologue:()=>J_,insertStatementAfterStandardPrologue:()=>K_,insertStatementsAfterCustomPrologue:()=>V_,insertStatementsAfterStandardPrologue:()=>q_,intersperse:()=>S,intrinsicTagNameToString:()=>xk,introducesArgumentsExoticObject:()=>Kf,inverseJsxOptionMap:()=>SO,isAbstractConstructorSymbol:()=>Dx,isAbstractModifier:()=>oN,isAccessExpression:()=>Bx,isAccessibilityModifier:()=>kZ,isAccessor:()=>Su,isAccessorModifier:()=>aN,isAliasSymbolDeclaration:()=>xg,isAliasableExpression:()=>Tg,isAmbientModule:()=>_p,isAmbientPropertyDeclaration:()=>wp,isAnonymousFunctionDefinition:()=>ay,isAnyDirectorySeparator:()=>Ao,isAnyImportOrBareOrAccessedRequire:()=>Ap,isAnyImportOrReExport:()=>Mp,isAnyImportOrRequireStatement:()=>Ip,isAnyImportSyntax:()=>Np,isAnySupportedFileExtension:()=>mw,isApplicableVersionedTypesKey:()=>xj,isArgumentExpressionOfElementAccess:()=>dY,isArray:()=>at,isArrayBindingElement:()=>Fu,isArrayBindingOrAssignmentElement:()=>qu,isArrayBindingOrAssignmentPattern:()=>Bu,isArrayBindingPattern:()=>XN,isArrayLiteralExpression:()=>eA,isArrayLiteralOrObjectLiteralDestructuringPattern:()=>CZ,isArrayTypeNode:()=>MN,isArrowFunction:()=>uA,isAsExpression:()=>kA,isAssertClause:()=>fI,isAssertEntry:()=>mI,isAssertionExpression:()=>nd,isAssertsKeyword:()=>tN,isAssignmentDeclaration:()=>$m,isAssignmentExpression:()=>bb,isAssignmentOperator:()=>gb,isAssignmentPattern:()=>Ou,isAssignmentTarget:()=>og,isAsteriskToken:()=>KC,isAsyncFunction:()=>Wg,isAsyncModifier:()=>eN,isAutoAccessorPropertyDeclaration:()=>Tu,isAwaitExpression:()=>fA,isAwaitKeyword:()=>nN,isBigIntLiteral:()=>PC,isBinaryExpression:()=>gA,isBinaryOperatorToken:()=>YP,isBindableObjectDefinePropertyCall:()=>_h,isBindableStaticAccessExpression:()=>mh,isBindableStaticElementAccessExpression:()=>hh,isBindableStaticNameExpression:()=>gh,isBindingElement:()=>$N,isBindingElementOfBareOrAccessedRequire:()=>Gm,isBindingName:()=>_u,isBindingOrAssignmentElement:()=>Lu,isBindingOrAssignmentPattern:()=>ju,isBindingPattern:()=>Mu,isBlock:()=>OA,isBlockLike:()=>T0,isBlockOrCatchScoped:()=>up,isBlockScope:()=>kp,isBlockScopedContainerTopLevel:()=>gp,isBooleanLiteral:()=>hu,isBreakOrContinueStatement:()=>Fl,isBreakStatement:()=>JA,isBuild:()=>hG,isBuildInfoFile:()=>Vq,isBuilderProgram:()=>sW,isBundle:()=>ZI,isCallChain:()=>El,isCallExpression:()=>iA,isCallExpressionTarget:()=>JQ,isCallLikeExpression:()=>Wu,isCallLikeOrFunctionLikeExpression:()=>Ju,isCallOrNewExpression:()=>Hu,isCallOrNewExpressionTarget:()=>HQ,isCallSignatureDeclaration:()=>wN,isCallToHelper:()=>IC,isCaseBlock:()=>cI,isCaseClause:()=>qI,isCaseKeyword:()=>uN,isCaseOrDefaultClause:()=>Md,isCatchClause:()=>JI,isCatchClauseVariableDeclaration:()=>Zw,isCatchClauseVariableDeclarationOrBindingElement:()=>dp,isCheckJsEnabledForFile:()=>gw,isChildOfNodeWithKind:()=>Mf,isCircularBuildOrder:()=>BW,isClassDeclaration:()=>nI,isClassElement:()=>bu,isClassExpression:()=>SA,isClassInstanceProperty:()=>wu,isClassLike:()=>xu,isClassMemberModifier:()=>cu,isClassNamedEvaluationHelperBlock:()=>FB,isClassOrTypeElement:()=>Au,isClassStaticBlockDeclaration:()=>bN,isClassThisAssignmentBlock:()=>AB,isCollapsedRange:()=>tx,isColonToken:()=>HC,isCommaExpression:()=>_P,isCommaListExpression:()=>DA,isCommaSequence:()=>pP,isCommaToken:()=>BC,isComment:()=>bZ,isCommonJsExportPropertyAssignment:()=>qf,isCommonJsExportedExpression:()=>Bf,isCompoundAssignment:()=>ZU,isComputedNonLiteralName:()=>zp,isComputedPropertyName:()=>_N,isConciseBody:()=>ud,isConditionalExpression:()=>yA,isConditionalTypeNode:()=>UN,isConstAssertion:()=>Dk,isConstTypeReference:()=>Pl,isConstructSignatureDeclaration:()=>kN,isConstructorDeclaration:()=>xN,isConstructorTypeNode:()=>IN,isContextualKeyword:()=>Lg,isContinueStatement:()=>KA,isCustomPrologue:()=>vf,isDebuggerStatement:()=>XA,isDeclaration:()=>Sd,isDeclarationBindingElement:()=>Ru,isDeclarationFileName:()=>lO,isDeclarationName:()=>gg,isDeclarationNameOfEnumOrNamespace:()=>mx,isDeclarationReadonly:()=>cf,isDeclarationStatement:()=>Td,isDeclarationWithTypeParameterChildren:()=>Cp,isDeclarationWithTypeParameters:()=>Ep,isDecorator:()=>mN,isDecoratorTarget:()=>QQ,isDefaultClause:()=>VI,isDefaultImport:()=>Ph,isDefaultModifier:()=>$C,isDefaultedExpandoInitializer:()=>ih,isDeleteExpression:()=>dA,isDeleteTarget:()=>mg,isDeprecatedDeclaration:()=>f0,isDestructuringAssignment:()=>Sb,isDiagnosticWithLocation:()=>Y$,isDiskPathRoot:()=>Po,isDoStatement:()=>zA,isDocumentRegistryEntry:()=>Y0,isDotDotDotToken:()=>UC,isDottedName:()=>Eb,isDynamicName:()=>Yg,isESSymbolIdentifier:()=>oy,isEffectiveExternalModule:()=>Sp,isEffectiveModuleDeclaration:()=>mp,isEffectiveStrictModeSourceFile:()=>Tp,isElementAccessChain:()=>kl,isElementAccessExpression:()=>rA,isEmittedFileOfProgram:()=>DV,isEmptyArrayLiteral:()=>Rb,isEmptyBindingElement:()=>uc,isEmptyBindingPattern:()=>lc,isEmptyObjectLiteral:()=>Fb,isEmptyStatement:()=>RA,isEmptyStringLiteral:()=>Cm,isEntityName:()=>uu,isEntityNameExpression:()=>wb,isEnumConst:()=>af,isEnumDeclaration:()=>oI,isEnumMember:()=>QI,isEqualityOperatorKind:()=>w$,isEqualsGreaterThanToken:()=>QC,isExclamationToken:()=>JC,isExcludedFile:()=>OR,isExclusivelyTypeOnlyImportOrExport:()=>cK,isExpandoPropertyDeclaration:()=>wk,isExportAssignment:()=>SI,isExportDeclaration:()=>TI,isExportModifier:()=>XC,isExportName:()=>cP,isExportNamespaceAsDefaultDeclaration:()=>X_,isExportOrDefaultModifier:()=>oM,isExportSpecifier:()=>kI,isExportsIdentifier:()=>ch,isExportsOrModuleExportsOrAlias:()=>Zj,isExpression:()=>td,isExpressionNode:()=>Am,isExpressionOfExternalModuleImportEqualsDeclaration:()=>mY,isExpressionOfOptionalChainRoot:()=>Al,isExpressionStatement:()=>LA,isExpressionWithTypeArguments:()=>wA,isExpressionWithTypeArgumentsInClassExtendsClause:()=>Tb,isExternalModule:()=>tO,isExternalModuleAugmentation:()=>vp,isExternalModuleImportEqualsDeclaration:()=>Mm,isExternalModuleIndicator:()=>cd,isExternalModuleNameRelative:()=>za,isExternalModuleReference:()=>AI,isExternalModuleSymbol:()=>a_,isExternalOrCommonJsModule:()=>of,isFileLevelReservedGeneratedIdentifier:()=>ru,isFileLevelUniqueName:()=>O_,isFileProbablyExternalModule:()=>CM,isFirstDeclarationOfSymbolParameter:()=>wX,isFixablePromiseHandler:()=>W1,isForInOrOfStatement:()=>ld,isForInStatement:()=>qA,isForInitializer:()=>_d,isForOfStatement:()=>VA,isForStatement:()=>BA,isFullSourceFile:()=>Lm,isFunctionBlock:()=>Wf,isFunctionBody:()=>dd,isFunctionDeclaration:()=>tI,isFunctionExpression:()=>lA,isFunctionExpressionOrArrowFunction:()=>Xw,isFunctionLike:()=>pu,isFunctionLikeDeclaration:()=>mu,isFunctionLikeKind:()=>yu,isFunctionLikeOrClassStaticBlockDeclaration:()=>fu,isFunctionOrConstructorTypeNode:()=>Pu,isFunctionOrModuleBlock:()=>vu,isFunctionSymbol:()=>Eh,isFunctionTypeNode:()=>AN,isFutureReservedKeyword:()=>zg,isGeneratedIdentifier:()=>tu,isGeneratedPrivateIdentifier:()=>nu,isGetAccessor:()=>jd,isGetAccessorDeclaration:()=>SN,isGetOrSetAccessorDeclaration:()=>Tl,isGlobalDeclaration:()=>_0,isGlobalScopeAugmentation:()=>yp,isGlobalSourceFile:()=>rf,isGrammarError:()=>L_,isHeritageClause:()=>KI,isHoistedFunction:()=>bf,isHoistedVariableStatement:()=>Sf,isIdentifier:()=>YC,isIdentifierANonContextualKeyword:()=>qg,isIdentifierName:()=>bg,isIdentifierOrThisTypeNode:()=>BP,isIdentifierPart:()=>Na,isIdentifierStart:()=>Ca,isIdentifierText:()=>Aa,isIdentifierTypePredicate:()=>Qf,isIdentifierTypeReference:()=>Ow,isIfStatement:()=>jA,isIgnoredFileFromWildCardWatching:()=>IV,isImplicitGlob:()=>ET,isImportAttribute:()=>gI,isImportAttributeName:()=>eu,isImportAttributes:()=>hI,isImportCall:()=>mf,isImportClause:()=>_I,isImportDeclaration:()=>dI,isImportEqualsDeclaration:()=>uI,isImportKeyword:()=>lN,isImportMeta:()=>hf,isImportOrExportSpecifier:()=>Ql,isImportOrExportSpecifierName:()=>YX,isImportSpecifier:()=>xI,isImportTypeAssertionContainer:()=>pI,isImportTypeNode:()=>GN,isImportableFile:()=>N0,isInComment:()=>mZ,isInCompoundLikeAssignment:()=>sg,isInExpressionContext:()=>Im,isInJSDoc:()=>Vm,isInJSFile:()=>Um,isInJSXText:()=>cZ,isInJsonFile:()=>Bm,isInNonReferenceComment:()=>AZ,isInReferenceComment:()=>NZ,isInRightSideOfInternalImportEqualsDeclaration:()=>KQ,isInString:()=>iZ,isInTemplateString:()=>aZ,isInTopLevelContext:()=>um,isInTypeQuery:()=>wv,isIncrementalCompilation:()=>JS,isIndexSignatureDeclaration:()=>EN,isIndexedAccessTypeNode:()=>JN,isInferTypeNode:()=>BN,isInfinityOrNaNString:()=>Yw,isInitializedProperty:()=>oB,isInitializedVariable:()=>gx,isInsideJsxElement:()=>lZ,isInsideJsxElementOrAttribute:()=>oZ,isInsideNodeModules:()=>Q$,isInsideTemplateLiteral:()=>wZ,isInstanceOfExpression:()=>Mb,isInstantiatedModule:()=>Yz,isInterfaceDeclaration:()=>rI,isInternalDeclaration:()=>Xd,isInternalModuleImportEqualsDeclaration:()=>Rm,isInternalName:()=>sP,isIntersectionTypeNode:()=>zN,isIntrinsicJsxName:()=>Jy,isIterationStatement:()=>id,isJSDoc:()=>_D,isJSDocAllType:()=>iD,isJSDocAugmentsTag:()=>mD,isJSDocAuthorTag:()=>hD,isJSDocCallbackTag:()=>yD,isJSDocClassTag:()=>gD,isJSDocCommentContainingNode:()=>Fd,isJSDocConstructSignature:()=>Fh,isJSDocDeprecatedTag:()=>kD,isJSDocEnumTag:()=>CD,isJSDocFunctionType:()=>lD,isJSDocImplementsTag:()=>RD,isJSDocImportTag:()=>zD,isJSDocIndexSignature:()=>Km,isJSDocLikeText:()=>EM,isJSDocLink:()=>tD,isJSDocLinkCode:()=>nD,isJSDocLinkLike:()=>Gd,isJSDocLinkPlain:()=>rD,isJSDocMemberName:()=>eD,isJSDocNameReference:()=>$I,isJSDocNamepathType:()=>dD,isJSDocNamespaceBody:()=>md,isJSDocNode:()=>Od,isJSDocNonNullableType:()=>aD,isJSDocNullableType:()=>sD,isJSDocOptionalParameter:()=>uk,isJSDocOptionalType:()=>cD,isJSDocOverloadTag:()=>wD,isJSDocOverrideTag:()=>TD,isJSDocParameterTag:()=>ND,isJSDocPrivateTag:()=>bD,isJSDocPropertyLikeTag:()=>Ll,isJSDocPropertyTag:()=>FD,isJSDocProtectedTag:()=>xD,isJSDocPublicTag:()=>vD,isJSDocReadonlyTag:()=>SD,isJSDocReturnTag:()=>AD,isJSDocSatisfiesExpression:()=>pk,isJSDocSatisfiesTag:()=>LD,isJSDocSeeTag:()=>ED,isJSDocSignature:()=>fD,isJSDocTag:()=>Rd,isJSDocTemplateTag:()=>PD,isJSDocThisTag:()=>ID,isJSDocThrowsTag:()=>jD,isJSDocTypeAlias:()=>Rh,isJSDocTypeAssertion:()=>fP,isJSDocTypeExpression:()=>XI,isJSDocTypeLiteral:()=>pD,isJSDocTypeTag:()=>DD,isJSDocTypedefTag:()=>MD,isJSDocUnknownTag:()=>OD,isJSDocUnknownType:()=>oD,isJSDocVariadicType:()=>uD,isJSXTagName:()=>Nm,isJsonEqual:()=>Cw,isJsonSourceFile:()=>sf,isJsxAttribute:()=>LI,isJsxAttributeLike:()=>Id,isJsxAttributeName:()=>yk,isJsxAttributes:()=>jI,isJsxChild:()=>Ad,isJsxClosingElement:()=>MI,isJsxClosingFragment:()=>RI,isJsxElement:()=>II,isJsxExpression:()=>UI,isJsxFragment:()=>OI,isJsxNamespacedName:()=>BI,isJsxOpeningElement:()=>PI,isJsxOpeningFragment:()=>FI,isJsxOpeningLikeElement:()=>Pd,isJsxOpeningLikeElementTagName:()=>YQ,isJsxSelfClosingElement:()=>DI,isJsxSpreadAttribute:()=>zI,isJsxTagNameExpression:()=>Nd,isJsxText:()=>OC,isJumpStatementTarget:()=>oY,isKeyword:()=>Og,isKeywordOrPunctuation:()=>Rg,isKnownSymbol:()=>ry,isLabelName:()=>aY,isLabelOfLabeledStatement:()=>sY,isLabeledStatement:()=>QA,isLateVisibilityPaintedStatement:()=>Dp,isLeftHandSideExpression:()=>Qu,isLeftHandSideOfAssignment:()=>xb,isLet:()=>pf,isLineBreak:()=>ia,isLiteralComputedPropertyDeclarationName:()=>vg,isLiteralExpression:()=>Kl,isLiteralExpressionOfObject:()=>Jl,isLiteralImportTypeNode:()=>gf,isLiteralKind:()=>Vl,isLiteralLikeAccess:()=>ph,isLiteralLikeElementAccess:()=>fh,isLiteralNameOfPropertyDeclarationOrIndexAccess:()=>fY,isLiteralTypeLikeExpression:()=>JP,isLiteralTypeLiteral:()=>ed,isLiteralTypeNode:()=>HN,isLocalName:()=>aP,isLogicalOperator:()=>_b,isLogicalOrCoalescingAssignmentExpression:()=>fb,isLogicalOrCoalescingAssignmentOperator:()=>pb,isLogicalOrCoalescingBinaryExpression:()=>hb,isLogicalOrCoalescingBinaryOperator:()=>mb,isMappedTypeNode:()=>WN,isMemberName:()=>Sl,isMetaProperty:()=>NA,isMethodDeclaration:()=>vN,isMethodOrAccessor:()=>ku,isMethodSignature:()=>yN,isMinusToken:()=>VC,isMissingDeclaration:()=>EI,isMissingPackageJsonInfo:()=>bL,isModifier:()=>lu,isModifierKind:()=>su,isModifierLike:()=>Cu,isModuleAugmentationExternal:()=>bp,isModuleBlock:()=>aI,isModuleBody:()=>pd,isModuleDeclaration:()=>sI,isModuleExportsAccessExpression:()=>uh,isModuleIdentifier:()=>lh,isModuleName:()=>KP,isModuleOrEnumDeclaration:()=>gd,isModuleReference:()=>Cd,isModuleSpecifierLike:()=>cX,isModuleWithStringLiteralName:()=>pp,isNameOfFunctionDeclaration:()=>pY,isNameOfModuleDeclaration:()=>_Y,isNamedClassElement:()=>Eu,isNamedDeclaration:()=>Pc,isNamedEvaluation:()=>ly,isNamedEvaluationSource:()=>cy,isNamedExportBindings:()=>Rl,isNamedExports:()=>wI,isNamedImportBindings:()=>hd,isNamedImports:()=>bI,isNamedImportsOrExports:()=>Vx,isNamedTupleMember:()=>FN,isNamespaceBody:()=>fd,isNamespaceExport:()=>vI,isNamespaceExportDeclaration:()=>lI,isNamespaceImport:()=>yI,isNamespaceReexportDeclaration:()=>Pm,isNewExpression:()=>oA,isNewExpressionTarget:()=>WQ,isNoSubstitutionTemplateLiteral:()=>RC,isNode:()=>jl,isNodeArray:()=>ql,isNodeArrayMultiLine:()=>ux,isNodeDescendantOf:()=>hg,isNodeKind:()=>zl,isNodeLikeSystem:()=>Sn,isNodeModulesDirectory:()=>Ss,isNodeWithPossibleHoistedDeclaration:()=>ag,isNonContextualKeyword:()=>jg,isNonExportDefaultModifier:()=>sM,isNonGlobalAmbientModule:()=>fp,isNonGlobalDeclaration:()=>p0,isNonNullAccess:()=>_k,isNonNullChain:()=>Ol,isNonNullExpression:()=>CA,isNonStaticMethodOrAccessorWithPrivateName:()=>sB,isNotEmittedOrPartiallyEmittedNode:()=>rd,isNotEmittedStatement:()=>CI,isNullishCoalesce:()=>Dl,isNumber:()=>ut,isNumericLiteral:()=>DC,isNumericLiteralName:()=>ek,isObjectBindingElementWithoutPropertyName:()=>lX,isObjectBindingOrAssignmentElement:()=>Uu,isObjectBindingOrAssignmentPattern:()=>zu,isObjectBindingPattern:()=>ZN,isObjectLiteralElement:()=>Vd,isObjectLiteralElementLike:()=>Iu,isObjectLiteralExpression:()=>tA,isObjectLiteralMethod:()=>Hf,isObjectLiteralOrClassExpressionMethodOrAccessor:()=>Gf,isObjectTypeDeclaration:()=>zx,isOctalDigit:()=>la,isOmittedExpression:()=>TA,isOptionalChain:()=>Cl,isOptionalChainRoot:()=>Nl,isOptionalDeclaration:()=>dk,isOptionalJSDocPropertyLikeTag:()=>ak,isOptionalTypeNode:()=>RN,isOuterExpression:()=>hP,isOutermostOptionalChain:()=>Il,isOverrideModifier:()=>sN,isPackageJsonInfo:()=>vL,isPackedArrayLiteral:()=>Jw,isParameter:()=>fN,isParameterPropertyDeclaration:()=>cc,isParameterPropertyModifier:()=>au,isParenthesizedExpression:()=>cA,isParenthesizedTypeNode:()=>qN,isParseTreeNode:()=>xc,isPartOfParameterDeclaration:()=>dy,isPartOfTypeNode:()=>Df,isPartOfTypeQuery:()=>Dm,isPartiallyEmittedExpression:()=>IA,isPatternMatch:()=>dn,isPinnedComment:()=>H_,isPlainJsFile:()=>A_,isPlusToken:()=>qC,isPossiblyTypeArgumentPosition:()=>_Z,isPostfixUnaryExpression:()=>hA,isPrefixUnaryExpression:()=>mA,isPrimitiveLiteralValue:()=>Ok,isPrivateIdentifier:()=>ZC,isPrivateIdentifierClassElementDeclaration:()=>iu,isPrivateIdentifierPropertyAccessExpression:()=>ou,isPrivateIdentifierSymbol:()=>iy,isProgramBundleEmitBuildInfo:()=>fJ,isProgramUptoDate:()=>IK,isPrologueDirective:()=>yf,isPropertyAccessChain:()=>wl,isPropertyAccessEntityNameExpression:()=>Cb,isPropertyAccessExpression:()=>nA,isPropertyAccessOrQualifiedName:()=>Ku,isPropertyAccessOrQualifiedNameOrImportTypeNode:()=>Vu,isPropertyAssignment:()=>WI,isPropertyDeclaration:()=>gN,isPropertyName:()=>du,isPropertyNameLiteral:()=>Xg,isPropertySignature:()=>hN,isProtoSetter:()=>sy,isPrototypeAccess:()=>Ab,isPrototypePropertyAssignment:()=>Th,isPunctuation:()=>Fg,isPushOrUnshiftIdentifier:()=>uy,isQualifiedName:()=>dN,isQuestionDotToken:()=>GC,isQuestionOrExclamationToken:()=>UP,isQuestionOrPlusOrMinusToken:()=>VP,isQuestionToken:()=>WC,isRawSourceMap:()=>wU,isReadonlyKeyword:()=>rN,isReadonlyKeywordOrPlusOrMinusToken:()=>qP,isRecognizedTripleSlashComment:()=>W_,isReferenceFileLocation:()=>NK,isReferencedFile:()=>CK,isRegularExpressionLiteral:()=>FC,isRequireCall:()=>Jm,isRequireVariableStatement:()=>Ym,isRestParameter:()=>Yd,isRestTypeNode:()=>LN,isReturnStatement:()=>WA,isReturnStatementWithFixablePromiseHandler:()=>J1,isRightSideOfAccessExpression:()=>Db,isRightSideOfInstanceofExpression:()=>Ob,isRightSideOfPropertyAccess:()=>uY,isRightSideOfQualifiedName:()=>lY,isRightSideOfQualifiedNameOrPropertyAccess:()=>Ib,isRightSideOfQualifiedNameOrPropertyAccessOrJSDocMemberName:()=>Pb,isRootedDiskPath:()=>Do,isSameEntityName:()=>sh,isSatisfiesExpression:()=>EA,isScopeMarker:()=>od,isSemicolonClassElement:()=>MA,isSetAccessor:()=>Ld,isSetAccessorDeclaration:()=>TN,isShebangTrivia:()=>ha,isShiftOperatorOrHigher:()=>WP,isShorthandAmbientModuleSymbol:()=>hp,isShorthandPropertyAssignment:()=>HI,isSignedNumericLiteral:()=>Gg,isSimpleCopiableExpression:()=>QU,isSimpleInlineableExpression:()=>YU,isSimpleParameter:()=>hB,isSimpleParameterList:()=>gB,isSingleOrDoubleQuote:()=>Zm,isSourceFile:()=>YI,isSourceFileFromLibrary:()=>b0,isSourceFileJS:()=>jm,isSourceFileNotJS:()=>zm,isSourceFileNotJson:()=>qm,isSourceMapping:()=>NU,isSpecialPropertyDeclaration:()=>wh,isSpreadAssignment:()=>GI,isSpreadElement:()=>xA,isStatement:()=>kd,isStatementButNotDeclaration:()=>wd,isStatementOrBlock:()=>Ed,isStatementWithLocals:()=>I_,isStatic:()=>Jv,isStaticModifier:()=>iN,isString:()=>lt,isStringAKeyword:()=>Bg,isStringANonContextualKeyword:()=>Ug,isStringAndEmptyAnonymousObjectIntersection:()=>TZ,isStringDoubleQuoted:()=>Xm,isStringLiteral:()=>MC,isStringLiteralLike:()=>Hd,isStringLiteralOrJsxExpression:()=>Dd,isStringLiteralOrTemplate:()=>k$,isStringOrNumericLiteralLike:()=>Hg,isStringOrRegularExpressionOrTemplateLiteral:()=>xZ,isStringTextContainingNode:()=>$l,isSuperCall:()=>ff,isSuperKeyword:()=>cN,isSuperOrSuperProperty:()=>fm,isSuperProperty:()=>mm,isSupportedSourceFileName:()=>tw,isSwitchStatement:()=>GA,isSyntaxList:()=>UD,isSyntheticExpression:()=>AA,isSyntheticReference:()=>NI,isTagName:()=>cY,isTaggedTemplateExpression:()=>sA,isTaggedTemplateTag:()=>GQ,isTemplateExpression:()=>vA,isTemplateHead:()=>LC,isTemplateLiteral:()=>Gu,isTemplateLiteralKind:()=>Wl,isTemplateLiteralToken:()=>Hl,isTemplateLiteralTypeNode:()=>YN,isTemplateLiteralTypeSpan:()=>QN,isTemplateMiddle:()=>jC,isTemplateMiddleOrTemplateTail:()=>Gl,isTemplateSpan:()=>PA,isTemplateTail:()=>zC,isTextWhiteSpaceLike:()=>bX,isThis:()=>yY,isThisContainerOrFunctionBlock:()=>lm,isThisIdentifier:()=>Tv,isThisInTypeQuery:()=>kv,isThisInitializedDeclaration:()=>gm,isThisInitializedObjectBindingExpression:()=>ym,isThisProperty:()=>hm,isThisTypeNode:()=>VN,isThisTypeParameter:()=>nk,isThisTypePredicate:()=>Yf,isThrowStatement:()=>YA,isToken:()=>Bl,isTokenKind:()=>Ul,isTraceEnabled:()=>QR,isTransientSymbol:()=>s_,isTrivia:()=>Vg,isTryStatement:()=>ZA,isTupleTypeNode:()=>ON,isTypeAlias:()=>Lh,isTypeAliasDeclaration:()=>iI,isTypeAssertionExpression:()=>aA,isTypeDeclaration:()=>ok,isTypeElement:()=>Nu,isTypeKeyword:()=>UZ,isTypeKeywordToken:()=>BZ,isTypeKeywordTokenOrIdentifier:()=>qZ,isTypeLiteralNode:()=>PN,isTypeNode:()=>Du,isTypeNodeKind:()=>Ux,isTypeOfExpression:()=>_A,isTypeOnlyExportDeclaration:()=>Zl,isTypeOnlyImportDeclaration:()=>Yl,isTypeOnlyImportOrExportDeclaration:()=>Xl,isTypeOperatorNode:()=>KN,isTypeParameterDeclaration:()=>pN,isTypePredicateNode:()=>CN,isTypeQueryNode:()=>DN,isTypeReferenceNode:()=>NN,isTypeReferenceType:()=>Kd,isTypeUsableAsPropertyName:()=>Sk,isUMDExportSymbol:()=>Fx,isUnaryExpression:()=>Zu,isUnaryExpressionWithWrite:()=>$u,isUnicodeIdentifierStart:()=>Us,isUnionTypeNode:()=>jN,isUrl:()=>Io,isValidBigIntString:()=>Pw,isValidESSymbolDeclaration:()=>Vf,isValidTypeOnlyAliasUseSite:()=>Mw,isValueSignatureDeclaration:()=>cg,isVarAwaitUsing:()=>lf,isVarConst:()=>df,isVarConstLike:()=>_f,isVarUsing:()=>uf,isVariableDeclaration:()=>$A,isVariableDeclarationInVariableStatement:()=>Uf,isVariableDeclarationInitializedToBareOrAccessedRequire:()=>Hm,isVariableDeclarationInitializedToRequire:()=>Wm,isVariableDeclarationList:()=>eI,isVariableLike:()=>jf,isVariableLikeOrAccessor:()=>zf,isVariableStatement:()=>FA,isVoidExpression:()=>pA,isWatchSet:()=>yx,isWhileStatement:()=>UA,isWhiteSpaceLike:()=>na,isWhiteSpaceSingleLine:()=>ra,isWithStatement:()=>HA,isWriteAccess:()=>kx,isWriteOnlyAccess:()=>wx,isYieldExpression:()=>bA,jsxModeNeedsExplicitImport:()=>v0,keywordPart:()=>AX,last:()=>Ae,lastOrUndefined:()=>Ne,length:()=>m,libMap:()=>kO,libs:()=>wO,lineBreakPart:()=>KX,linkNamePart:()=>zX,linkPart:()=>UX,linkTextPart:()=>jX,listFiles:()=>aW,loadModuleFromGlobalCache:()=>Lj,loadWithModeAwareCache:()=>vK,makeIdentifierFromModuleName:()=>lp,makeImport:()=>eX,makeStringLiteral:()=>tX,mangleScopedPackageName:()=>Ij,map:()=>R,mapAllOrFail:()=>K,mapDefined:()=>J,mapDefinedEntries:()=>H,mapDefinedIterator:()=>W,mapEntries:()=>X,mapIterator:()=>L,mapOneOrMany:()=>t0,mapToDisplayParts:()=>JX,matchFiles:()=>PT,matchPatternOrExact:()=>vw,matchedText:()=>sn,matchesExclude:()=>RR,maybeBind:()=>tt,maybeSetLocalizedDiagnosticMessages:()=>aS,memoize:()=>St,memoizeCached:()=>kt,memoizeOne:()=>Tt,memoizeWeak:()=>wt,metadataHelper:()=>$E,min:()=>Ot,minAndMax:()=>Sw,missingFileModifiedTime:()=>eo,modifierToFlag:()=>ub,modifiersToFlags:()=>lb,moduleOptionDeclaration:()=>AO,moduleResolutionIsEqualTo:()=>b_,moduleResolutionNameAndModeGetter:()=>fK,moduleResolutionOptionDeclarations:()=>FO,moduleResolutionSupportsPackageJsonExportsAndImports:()=>$S,moduleResolutionUsesNodeModules:()=>$Z,moduleSpecifierToValidIdentifier:()=>l0,moduleSpecifiers:()=>tz,moduleSymbolToValidIdentifier:()=>c0,moveEmitHelpers:()=>RE,moveRangeEnd:()=>Zb,moveRangePastDecorators:()=>$b,moveRangePastModifiers:()=>ex,moveRangePos:()=>Xb,moveSyntheticComments:()=>AE,mutateMap:()=>Ix,mutateMapSkippingNewValues:()=>Ax,needsParentheses:()=>x$,needsScopeMarker:()=>ad,newCaseClauseTracker:()=>x0,newPrivateEnvironment:()=>_B,noEmitNotification:()=>zq,noEmitSubstitution:()=>jq,noTransformers:()=>Dq,noTruncationMaximumTruncationLength:()=>n_,nodeCanBeDecorated:()=>xm,nodeHasName:()=>Ic,nodeIsDecorated:()=>Sm,nodeIsMissing:()=>F_,nodeIsPresent:()=>R_,nodeIsSynthesized:()=>fy,nodeModuleNameResolver:()=>qL,nodeModulesPathPart:()=>GL,nodeNextJsonConfigResolver:()=>VL,nodeOrChildIsDecorated:()=>Tm,nodeOverlapsWithStartEnd:()=>NY,nodePosToString:()=>P_,nodeSeenTracker:()=>VZ,nodeStartsNewLexicalEnvironment:()=>py,nodeToDisplayParts:()=>QX,noop:()=>pt,noopFileWatcher:()=>hW,normalizePath:()=>ts,normalizeSlashes:()=>Qo,not:()=>fn,notImplemented:()=>xt,notImplementedResolver:()=>fV,nullNodeConverters:()=>qk,nullParenthesizerRules:()=>zk,nullTransformationContext:()=>Bq,objectAllocator:()=>tS,operatorPart:()=>DX,optionDeclarations:()=>DO,optionMapToObject:()=>UF,optionsAffectingProgramStructure:()=>LO,optionsForBuild:()=>VO,optionsForWatch:()=>EO,optionsHaveChanges:()=>__,optionsHaveModuleResolutionChanges:()=>u_,or:()=>pn,orderedRemoveItem:()=>$t,orderedRemoveItemAt:()=>en,packageIdToPackageName:()=>S_,packageIdToString:()=>T_,paramHelper:()=>eC,parameterIsThisKeyword:()=>Sv,parameterNamePart:()=>PX,parseBaseNodeFactory:()=>SM,parseBigInt:()=>Iw,parseBuildCommand:()=>dF,parseCommandLine:()=>sF,parseCommandLineWorker:()=>nF,parseConfigFileTextToJson:()=>mF,parseConfigFileWithSystem:()=>eW,parseConfigHostFromCompilerHostLike:()=>zK,parseCustomTypeOption:()=>XO,parseIsolatedEntityName:()=>$M,parseIsolatedJSDocComment:()=>rO,parseJSDocTypeExpressionForTests:()=>iO,parseJsonConfigFileContent:()=>ZF,parseJsonSourceFileConfigFileContent:()=>XF,parseJsonText:()=>eO,parseListTypeOption:()=>$O,parseNodeFactory:()=>TM,parseNodeModuleFromPath:()=>YL,parsePackageName:()=>mj,parsePseudoBigInt:()=>Nw,parseValidBigInt:()=>Dw,pasteEdits:()=>Cfe,patchWriteFileEnsuringDirectory:()=>So,pathContainsNodeModules:()=>QL,pathIsAbsolute:()=>Mo,pathIsBareSpecifier:()=>Fo,pathIsRelative:()=>Oo,patternText:()=>on,perfLogger:()=>rr,performIncrementalCompilation:()=>AW,performance:()=>ir,plainJSErrors:()=>OK,positionBelongsToNode:()=>IY,positionIsASICandidate:()=>F$,positionIsSynthesized:()=>dw,positionsAreOnSameLine:()=>dx,preProcessFile:()=>F1,probablyUsesSemicolons:()=>R$,processCommentPragmas:()=>dO,processPragmasIntoFields:()=>_O,processTaggedTemplateExpression:()=>qB,programContainsEsModules:()=>QZ,programContainsModules:()=>GZ,projectReferenceIsEqualTo:()=>v_,propKeyHelper:()=>fC,propertyNamePart:()=>MX,pseudoBigIntToString:()=>Aw,punctuationPart:()=>IX,pushIfUnique:()=>he,quote:()=>T$,quotePreferenceFromString:()=>rX,rangeContainsPosition:()=>TY,rangeContainsPositionExclusive:()=>wY,rangeContainsRange:()=>xY,rangeContainsRangeExclusive:()=>SY,rangeContainsStartEnd:()=>EY,rangeEndIsOnSameLineAsRangeStart:()=>ax,rangeEndPositionsAreOnSameLine:()=>ox,rangeEquals:()=>Se,rangeIsOnSingleLine:()=>rx,rangeOfNode:()=>Tw,rangeOfTypeParameters:()=>ww,rangeOverlapsWithStartEnd:()=>CY,rangeStartIsOnSameLineAsRangeEnd:()=>sx,rangeStartPositionsAreOnSameLine:()=>ix,readBuilderProgram:()=>IW,readConfigFile:()=>fF,readHelper:()=>_C,readJson:()=>Kb,readJsonConfigFile:()=>hF,readJsonOrUndefined:()=>Vb,reduceEachLeadingCommentRange:()=>xa,reduceEachTrailingCommentRange:()=>Sa,reduceLeft:()=>Re,reduceLeftIterator:()=>b,reducePathComponents:()=>Yo,refactor:()=>m3,regExpEscape:()=>mT,regularExpressionFlagToCharacter:()=>Ws,relativeComplement:()=>de,removeAllComments:()=>uE,removeEmitHelper:()=>OE,removeExtension:()=>aw,removeFileExtension:()=>ow,removeIgnoredPath:()=>DJ,removeMinAndVersionNumbers:()=>Xt,removeOptionality:()=>dZ,removePrefix:()=>ln,removeSuffix:()=>Yt,removeTrailingDirectorySeparator:()=>is,repeatString:()=>JZ,replaceElement:()=>Me,replaceFirstStar:()=>Ck,resolutionExtensionIsTSOrJson:()=>pw,resolveConfigFileProjectName:()=>RW,resolveJSModule:()=>jL,resolveLibrary:()=>OL,resolveModuleName:()=>RL,resolveModuleNameFromCache:()=>FL,resolvePackageNameToPackageJson:()=>gL,resolvePath:()=>Xo,resolveProjectReferencePath:()=>UK,resolveTripleslashReference:()=>LV,resolveTypeReferenceDirective:()=>fL,resolvingEmptyArray:()=>$d,restHelper:()=>cC,returnFalse:()=>ft,returnNoopFileWatcher:()=>gW,returnTrue:()=>mt,returnUndefined:()=>ht,returnsPromise:()=>K1,runInitializersHelper:()=>nC,sameFlatMap:()=>V,sameMap:()=>j,sameMapping:()=>CU,scanShebangTrivia:()=>ga,scanTokenAtPosition:()=>tf,scanner:()=>UQ,screenStartingMessageCodes:()=>ZJ,semanticDiagnosticsOptionDeclarations:()=>PO,serializeCompilerOptions:()=>KF,server:()=>Lfe,servicesVersion:()=>q5,setCommentRange:()=>SE,setConfigFileInOptions:()=>$F,setConstantValue:()=>DE,setEachParent:()=>qw,setEmitFlags:()=>dE,setFunctionNameHelper:()=>mC,setGetSourceFileAsHashVersioned:()=>TW,setIdentifierAutoGenerate:()=>KE,setIdentifierGeneratedImportReference:()=>WE,setIdentifierTypeArguments:()=>qE,setInternalEmitFlags:()=>pE,setLocalizedDiagnosticMessages:()=>sS,setModuleDefaultHelper:()=>vC,setNodeChildren:()=>KD,setNodeFlags:()=>Uw,setObjectAllocator:()=>iS,setOriginalNode:()=>aE,setParent:()=>Bw,setParentRecursive:()=>Vw,setPrivateIdentifier:()=>fB,setSnippetElement:()=>jE,setSourceMapRange:()=>hE,setStackTraceLimit:()=>Zi,setStartsOnNewLine:()=>bE,setSyntheticLeadingComments:()=>wE,setSyntheticTrailingComments:()=>CE,setSys:()=>wo,setSysLog:()=>ho,setTextRange:()=>vM,setTextRangeEnd:()=>Lw,setTextRangePos:()=>Rw,setTextRangePosEnd:()=>jw,setTextRangePosWidth:()=>zw,setTokenSourceMapRange:()=>yE,setTypeNode:()=>UE,setUILocale:()=>Vt,setValueDeclaration:()=>kh,shouldAllowImportingTsExtension:()=>Rj,shouldPreserveConstEnums:()=>KS,shouldUseUriStyleNodeCoreModules:()=>m0,showModuleSpecifier:()=>Rx,signatureHasLiteralTypes:()=>nU,signatureHasRestParameter:()=>tU,signatureToDisplayParts:()=>GX,single:()=>De,singleElementArray:()=>hn,singleIterator:()=>Y,singleOrMany:()=>Pe,singleOrUndefined:()=>Ie,skipAlias:()=>Sx,skipAssertions:()=>vP,skipConstraint:()=>WZ,skipOuterExpressions:()=>gP,skipParentheses:()=>fg,skipPartiallyEmittedExpressions:()=>Ml,skipTrivia:()=>da,skipTypeChecking:()=>kw,skipTypeParentheses:()=>pg,skipWhile:()=>xn,sliceAfter:()=>bw,some:()=>$,sort:()=>ve,sortAndDeduplicate:()=>ae,sortAndDeduplicateDiagnostics:()=>Ua,sourceFileAffectingCompilerOptions:()=>RO,sourceFileMayBeEmitted:()=>uv,sourceMapCommentRegExp:()=>vU,sourceMapCommentRegExpDontCareLineStart:()=>yU,spacePart:()=>NX,spanMap:()=>Z,spreadArrayHelper:()=>pC,stableSort:()=>xe,startEndContainsRange:()=>kY,startEndOverlapsWithStartEnd:()=>AY,startOnNewLine:()=>bP,startTracing:()=>Er,startsWith:()=>cn,startsWithDirectory:()=>ms,startsWithUnderscore:()=>d0,startsWithUseStrict:()=>dP,stringContainsAt:()=>u0,stringToToken:()=>Ks,stripQuotes:()=>Ky,supportedDeclarationExtensions:()=>JT,supportedJSExtensions:()=>BT,supportedJSExtensionsFlat:()=>qT,supportedLocaleDirectories:()=>gc,supportedTSExtensions:()=>LT,supportedTSExtensionsFlat:()=>jT,supportedTSImplementationExtensions:()=>WT,suppressLeadingAndTrailingTrivia:()=>c$,suppressLeadingTrivia:()=>l$,suppressTrailingTrivia:()=>u$,symbolEscapedNameNoDefault:()=>aX,symbolName:()=>Cc,symbolNameNoDefault:()=>sX,symbolPart:()=>EX,symbolToDisplayParts:()=>HX,syntaxMayBeASICandidate:()=>O$,syntaxRequiresTrailingSemicolonOrASI:()=>M$,sys:()=>To,sysLog:()=>mo,tagNamesAreEquivalent:()=>vO,takeWhile:()=>bn,targetOptionDeclaration:()=>NO,templateObjectHelper:()=>dC,testFormatSettings:()=>AQ,textChangeRangeIsUnchanged:()=>rc,textChangeRangeNewSpan:()=>nc,textChanges:()=>Xde,textOrKeywordPart:()=>OX,textPart:()=>FX,textRangeContainsPositionInclusive:()=>Ja,textSpanContainsPosition:()=>Ka,textSpanContainsTextSpan:()=>Wa,textSpanEnd:()=>qa,textSpanIntersection:()=>$a,textSpanIntersectsWith:()=>Ya,textSpanIntersectsWithPosition:()=>Xa,textSpanIntersectsWithTextSpan:()=>Qa,textSpanIsEmpty:()=>Va,textSpanOverlap:()=>Ga,textSpanOverlapsWith:()=>Ha,textSpansEqual:()=>hX,textToKeywordObj:()=>Cs,timestamp:()=>er,toArray:()=>ct,toBuilderFileEmit:()=>TJ,toBuilderStateFileInfoForMultiEmit:()=>SJ,toEditorSettings:()=>o8,toFileNameLowerCase:()=>bt,toLowerCase:()=>yt,toPath:()=>rs,toProgramEmitPending:()=>wJ,tokenIsIdentifierOrKeyword:()=>ks,tokenIsIdentifierOrKeywordOrGreaterThan:()=>Es,tokenToString:()=>Vs,trace:()=>GR,tracing:()=>ar,tracingEnabled:()=>cr,transferSourceFileChildren:()=>WD,transform:()=>w8,transformClassFields:()=>HB,transformDeclarations:()=>Cq,transformECMAScriptModule:()=>vq,transformES2015:()=>fq,transformES2016:()=>_q,transformES2017:()=>XB,transformES2018:()=>eq,transformES2019:()=>tq,transformES2020:()=>nq,transformES2021:()=>rq,transformESDecorators:()=>ZB,transformESNext:()=>iq,transformGenerators:()=>mq,transformJsx:()=>uq,transformLegacyDecorators:()=>YB,transformModule:()=>hq,transformNamedEvaluation:()=>UB,transformNodeModule:()=>bq,transformNodes:()=>Uq,transformSystemModule:()=>yq,transformTypeScript:()=>WB,transpile:()=>s2,transpileDeclaration:()=>e2,transpileModule:()=>$1,transpileOptionValueCompilerOptions:()=>jO,tryAddToSet:()=>Q,tryAndIgnoreErrors:()=>B$,tryCast:()=>dt,tryDirectoryExists:()=>U$,tryExtractTSExtension:()=>jb,tryFileExists:()=>z$,tryGetClassExtendingExpressionWithTypeArguments:()=>yb,tryGetClassImplementingOrExtendingExpressionWithTypeArguments:()=>vb,tryGetDirectories:()=>L$,tryGetExtensionFromPath:()=>hw,tryGetImportFromModuleSpecifier:()=>Ah,tryGetJSDocSatisfiesTypeNode:()=>mk,tryGetModuleNameFromFile:()=>CP,tryGetModuleSpecifierFromDeclaration:()=>Ch,tryGetNativePerformanceHooks:()=>Xn,tryGetPropertyAccessOrIdentifierToString:()=>Nb,tryGetPropertyNameOfBindingOrAssignmentElement:()=>PP,tryGetSourceMappingURL:()=>SU,tryGetTextOfPropertyName:()=>Up,tryIOAndConsumeErrors:()=>q$,tryParseJson:()=>Jb,tryParsePattern:()=>lw,tryParsePatterns:()=>uw,tryParseRawSourceMap:()=>kU,tryReadDirectory:()=>j$,tryReadFile:()=>gF,tryRemoveDirectoryPrefix:()=>pT,tryRemoveExtension:()=>sw,tryRemovePrefix:()=>un,tryRemoveSuffix:()=>Zt,typeAcquisitionDeclarations:()=>JO,typeAliasNamePart:()=>RX,typeDirectiveIsEqualTo:()=>w_,typeKeywords:()=>zZ,typeParameterNamePart:()=>LX,typeToDisplayParts:()=>WX,unchangedPollThresholds:()=>oo,unchangedTextChangeRange:()=>oc,unescapeLeadingUnderscores:()=>wc,unmangleScopedPackageName:()=>Pj,unorderedRemoveItem:()=>nn,unorderedRemoveItemAt:()=>tn,unreachableCodeIsError:()=>ZS,unsetNodeChildren:()=>JD,unusedLabelIsError:()=>XS,unwrapInnermostStatementOfLabel:()=>Jf,unwrapParenthesizedExpression:()=>Fk,updateErrorForNoInputFiles:()=>fR,updateLanguageServiceSourceFile:()=>p8,updateMissingFilePathsWatch:()=>NV,updateResolutionField:()=>iL,updateSharedExtendedConfigFileWatcher:()=>kV,updateSourceFile:()=>nO,updateWatchingWildcardDirectories:()=>AV,usesExtensionsOnImports:()=>$T,usingSingleLineStringWriter:()=>g_,utf16EncodeAsString:()=>Oa,validateLocaleAndSetLanguage:()=>yc,valuesHelper:()=>hC,version:()=>u,versionMajorMinor:()=>l,visitArray:()=>sU,visitCommaListElements:()=>pU,visitEachChild:()=>fU,visitFunctionBody:()=>dU,visitIterationBody:()=>_U,visitLexicalEnvironment:()=>cU,visitNode:()=>iU,visitNodes:()=>oU,visitParameterList:()=>lU,walkUpBindingElementsAndPatterns:()=>dc,walkUpLexicalEnvironments:()=>dB,walkUpOuterExpressions:()=>yP,walkUpParenthesizedExpressions:()=>dg,walkUpParenthesizedTypes:()=>ug,walkUpParenthesizedTypesAndGetParentAndChild:()=>_g,whitespaceOrMapCommentRegExp:()=>bU,writeCommentRange:()=>jv,writeFile:()=>pv,writeFileEnsuringDirectories:()=>mv,zipWith:()=>x});var Dfe,Pfe=!0;function Mfe(e,t,n,r,i){let o=t?"DeprecationError: ":"DeprecationWarning: ";return o+=`'${e}' `,o+=r?`has been deprecated since v${r}`:"is deprecated",o+=t?" and can no longer be used.":n?` and will no longer be usable after v${n}.`:".",o+=i?` ${oS(i,[e])}`:"",o}function Ofe(e,t={}){const n="string"==typeof t.typeScriptVersion?new Pn(t.typeScriptVersion):t.typeScriptVersion??Dfe??(Dfe=new Pn(u)),r="string"==typeof t.errorAfter?new Pn(t.errorAfter):t.errorAfter,i="string"==typeof t.warnAfter?new Pn(t.warnAfter):t.warnAfter,o="string"==typeof t.since?new Pn(t.since):t.since??i,s=t.error||r&&n.compareTo(r)>=0,a=!i||n.compareTo(i)>=0;return s?function(e,t,n,r){const i=Mfe(e,!0,t,n,r);return()=>{throw new TypeError(i)}}(e,r,o,t.message):a?function(e,t,n,r){let i=!1;return()=>{Pfe&&!i&&(Tn.log.warn(Mfe(e,!1,t,n,r)),i=!0)}}(e,r,o,t.message):pt}function Ffe(e,t,n,r){if(Object.defineProperty(a,"name",{...Object.getOwnPropertyDescriptor(a,"name"),value:e}),r)for(const c of Object.keys(r)){const n=+c;!isNaN(n)&&je(t,`${n}`)&&(t[n]=(i=t[n],function(e,t){return function(){return e(),t.apply(this,arguments)}}(Ofe((null==(o={...r[n],name:e})?void 0:o.name)??Tn.getFunctionName(i),o),i)))}var i,o;const s=function(e,t){return n=>{for(let r=0;je(e,`${r}`)&&je(t,`${r}`);r++){if((0,t[r])(n))return r}}}(t,n);return a;function a(...e){const n=s(e),r=void 0!==n?t[n]:void 0;if("function"==typeof r)return r(...e);throw new TypeError("Invalid arguments")}}function Rfe(e){return{overload:t=>({bind:n=>({finish:()=>Ffe(e,t,n),deprecate:r=>({finish:()=>Ffe(e,t,n,r)})})})}}var Lfe={};a(Lfe,{ActionInvalidate:()=>qG,ActionPackageInstalled:()=>VG,ActionSet:()=>BG,ActionWatchTypingLocations:()=>GG,Arguments:()=>zG,AutoImportProviderProject:()=>Lme,AuxiliaryProject:()=>Fme,CharRangeSection:()=>xge,CloseFileWatcherEvent:()=>rhe,CommandNames:()=>Xhe,ConfigFileDiagEvent:()=>Zme,ConfiguredProject:()=>jme,ConfiguredProjectLoadKind:()=>The,CreateDirectoryWatcherEvent:()=>nhe,CreateFileWatcherEvent:()=>the,Errors:()=>Jfe,EventBeginInstallTypes:()=>JG,EventEndInstallTypes:()=>WG,EventInitializationFailed:()=>HG,EventTypesRegistry:()=>KG,ExternalProject:()=>zme,GcTimer:()=>ame,InferredProject:()=>Ome,LargeFileReferencedEvent:()=>Yme,LineIndex:()=>Cge,LineLeaf:()=>Age,LineNode:()=>Nge,LogLevel:()=>Hfe,Msg:()=>Qfe,OpenFileInfoTelemetryEvent:()=>ehe,Project:()=>Mme,ProjectInfoTelemetryEvent:()=>$me,ProjectKind:()=>Cme,ProjectLanguageServiceStateEvent:()=>Xme,ProjectLoadingFinishEvent:()=>Qme,ProjectLoadingStartEvent:()=>Gme,ProjectService:()=>Bhe,ProjectsUpdatedInBackgroundEvent:()=>Hme,ScriptInfo:()=>Tme,ScriptVersionCache:()=>kge,Session:()=>fge,TextStorage:()=>xme,ThrottledOperations:()=>sme,TypingsCache:()=>Eme,TypingsInstallerAdapter:()=>Dge,allFilesAreJsOrDts:()=>Ime,allRootFilesAreJsOrDts:()=>Ame,asNormalizedPath:()=>$fe,convertCompilerOptions:()=>dhe,convertFormatOptions:()=>uhe,convertScriptKindName:()=>mhe,convertTypeAcquisition:()=>phe,convertUserPreferences:()=>hhe,convertWatchOptions:()=>_he,countEachFileTypes:()=>Nme,createInstallTypingsRequest:()=>Yfe,createModuleSpecifierCache:()=>Khe,createNormalizedPathMap:()=>eme,createPackageJsonCache:()=>Jhe,createSortedArray:()=>ome,emptyArray:()=>Gfe,findArgument:()=>YG,forEachResolvedProjectReferenceProject:()=>whe,formatDiagnosticToProtocol:()=>Zhe,formatMessage:()=>$he,getBaseConfigFileName:()=>cme,getLocationInNewDocument:()=>yge,hasArgument:()=>QG,hasNoTypeScriptSource:()=>Dme,indent:()=>$G,isBackgroundProject:()=>Vme,isConfigFile:()=>qhe,isConfiguredProject:()=>Bme,isDynamicFileName:()=>Sme,isExternalProject:()=>qme,isInferredProject:()=>Ume,isInferredProjectName:()=>tme,isProjectDeferredClose:()=>Kme,makeAutoImportProviderProjectName:()=>rme,makeAuxiliaryProjectName:()=>ime,makeInferredProjectName:()=>nme,maxFileSize:()=>Wme,maxProgramSizeForNonTsFiles:()=>Jme,normalizedPathToPath:()=>Xfe,nowString:()=>ZG,nullCancellationToken:()=>Whe,nullTypingsInstaller:()=>wme,protocol:()=>ume,removeSorted:()=>lme,stringifyIndented:()=>eQ,toEvent:()=>tge,toNormalizedPath:()=>Zfe,tryConvertScriptKindName:()=>fhe,typingsInstaller:()=>jfe,updateProjectIfDirty:()=>Dhe});var jfe={};a(jfe,{TypingsInstaller:()=>Vfe,getNpmCommandForInstallation:()=>qfe,installNpmPackages:()=>Bfe,typingsName:()=>Kfe});var zfe={isEnabled:()=>!1,writeLine:pt};function Ufe(e,t,n,r){try{const r=RL(t,Zo(e,"index.d.ts"),{moduleResolution:2},n);return r.resolvedModule&&r.resolvedModule.resolvedFileName}catch(Mge){return void(r.isEnabled()&&r.writeLine(`Failed to resolve ${t} in folder '${e}': ${Mge.message}`))}}function Bfe(e,t,n,r){let i=!1;for(let o=n.length;o>0;){const s=qfe(e,t,n,o);o=s.remaining,i=r(s.command)||i}return i}function qfe(e,t,n,r){const i=n.length-r;let o,s=r;for(;o=`${e} install --ignore-scripts ${(s===n.length?n:n.slice(i,i+s)).join(" ")} --save-dev --user-agent="typesInstaller/${t}"`,!(o.length<8e3);)s-=Math.floor(s/2);return{command:o,remaining:r-s}}var Vfe=class{constructor(e,t,n,r,i,o=zfe){this.installTypingHost=e,this.globalCachePath=t,this.safeListPath=n,this.typesMapLocation=r,this.throttleLimit=i,this.log=o,this.packageNameToTypingLocation=new Map,this.missingTypingsSet=new Set,this.knownCachesSet=new Set,this.projectWatchers=new Map,this.pendingRunRequests=[],this.installRunCount=1,this.inFlightRequestCount=0,this.latestDistTag="latest";this.log.isEnabled()&&this.log.writeLine(`Global cache location '${t}', safe file path '${n}', types map path ${r}`),this.processCacheLocation(this.globalCachePath)}handleRequest(e){switch(e.kind){case"discover":this.install(e);break;case"closeProject":this.closeProject(e);break;case"typesRegistry":{const e={};this.typesRegistry.forEach(((t,n)=>{e[n]=t}));const t={kind:KG,typesRegistry:e};this.sendResponse(t);break}case"installPackage":this.installPackage(e);break;default:Tn.assertNever(e)}}closeProject(e){this.closeWatchers(e.projectName)}closeWatchers(e){this.log.isEnabled()&&this.log.writeLine(`Closing file watchers for project '${e}'`);this.projectWatchers.get(e)?(this.projectWatchers.delete(e),this.sendResponse({kind:GG,projectName:e,files:[]}),this.log.isEnabled()&&this.log.writeLine(`Closing file watchers for project '${e}' - done.`)):this.log.isEnabled()&&this.log.writeLine(`No watchers are registered for project '${e}'`)}install(e){this.log.isEnabled()&&this.log.writeLine(`Got install request${eQ(e)}`),e.cachePath&&(this.log.isEnabled()&&this.log.writeLine(`Request specifies cache path '${e.cachePath}', loading cached information...`),this.processCacheLocation(e.cachePath)),void 0===this.safeList&&this.initializeSafeList();const t=jG.discoverTypings(this.installTypingHost,this.log.isEnabled()?e=>this.log.writeLine(e):void 0,e.fileNames,e.projectRootPath,this.safeList,this.packageNameToTypingLocation,e.typeAcquisition,e.unresolvedImports,this.typesRegistry,e.compilerOptions);this.watchFiles(e.projectName,t.filesToWatch),t.newTypingNames.length?this.installTypings(e,e.cachePath||this.globalCachePath,t.cachedTypingPaths,t.newTypingNames):(this.sendResponse(this.createSetTypings(e,t.cachedTypingPaths)),this.log.isEnabled()&&this.log.writeLine("No new typings were requested as a result of typings discovery"))}installPackage(e){const{fileName:t,packageName:n,projectName:r,projectRootPath:i,id:o}=e,s=xs(Vo(t),(e=>{if(this.installTypingHost.fileExists(Zo(e,"package.json")))return e}))||i;if(s)this.installWorker(-1,[n],s,(e=>{const t={kind:VG,projectName:r,id:o,success:e,message:e?`Package ${n} installed.`:`There was an error installing ${n}.`};this.sendResponse(t)}));else{const e={kind:VG,projectName:r,id:o,success:!1,message:"Could not determine a project root path."};this.sendResponse(e)}}initializeSafeList(){if(this.typesMapLocation){const e=jG.loadTypesMap(this.installTypingHost,this.typesMapLocation);if(e)return this.log.writeLine(`Loaded safelist from types map file '${this.typesMapLocation}'`),void(this.safeList=e);this.log.writeLine(`Failed to load safelist from types map file '${this.typesMapLocation}'`)}this.safeList=jG.loadSafeList(this.installTypingHost,this.safeListPath)}processCacheLocation(e){if(this.log.isEnabled()&&this.log.writeLine(`Processing cache location '${e}'`),this.knownCachesSet.has(e))return void(this.log.isEnabled()&&this.log.writeLine("Cache location was already processed..."));const t=Zo(e,"package.json"),n=Zo(e,"package-lock.json");if(this.log.isEnabled()&&this.log.writeLine(`Trying to find '${t}'...`),this.installTypingHost.fileExists(t)&&this.installTypingHost.fileExists(n)){const r=JSON.parse(this.installTypingHost.readFile(t)),i=JSON.parse(this.installTypingHost.readFile(n));if(this.log.isEnabled()&&(this.log.writeLine(`Loaded content of '${t}':${eQ(r)}`),this.log.writeLine(`Loaded content of '${n}':${eQ(i)}`)),r.devDependencies&&i.dependencies)for(const t in r.devDependencies){if(!je(i.dependencies,t))continue;const n=Ko(t);if(!n)continue;const r=Ufe(e,n,this.installTypingHost,this.log);if(!r){this.missingTypingsSet.add(n);continue}const o=this.packageNameToTypingLocation.get(n);if(o){if(o.typingLocation===r)continue;this.log.isEnabled()&&this.log.writeLine(`New typing for package ${n} from '${r}' conflicts with existing typing file '${o}'`)}this.log.isEnabled()&&this.log.writeLine(`Adding entry into typings cache: '${n}' => '${r}'`);const s=ze(i.dependencies,t),a=s&&s.version;if(!a)continue;const c={typingLocation:r,version:new Pn(a)};this.packageNameToTypingLocation.set(n,c)}}this.log.isEnabled()&&this.log.writeLine(`Finished processing cache location '${e}'`),this.knownCachesSet.add(e)}filterTypings(e){return J(e,(e=>{const t=Ij(e);if(this.missingTypingsSet.has(t))return void(this.log.isEnabled()&&this.log.writeLine(`'${e}':: '${t}' is in missingTypingsSet - skipping...`));const n=jG.validatePackageName(e);if(n!==jG.NameValidationResult.Ok)return this.missingTypingsSet.add(t),void(this.log.isEnabled()&&this.log.writeLine(jG.renderPackageNameValidationFailure(n,e)));if(this.typesRegistry.has(t)){if(!this.packageNameToTypingLocation.get(t)||!jG.isTypingUpToDate(this.packageNameToTypingLocation.get(t),this.typesRegistry.get(t)))return t;this.log.isEnabled()&&this.log.writeLine(`'${e}':: '${t}' already has an up-to-date typing - skipping...`)}else this.log.isEnabled()&&this.log.writeLine(`'${e}':: Entry for package '${t}' does not exist in local types registry - skipping...`)}))}ensurePackageDirectoryExists(e){const t=Zo(e,"package.json");this.log.isEnabled()&&this.log.writeLine(`Npm config file: ${t}`),this.installTypingHost.fileExists(t)||(this.log.isEnabled()&&this.log.writeLine(`Npm config file: '${t}' is missing, creating new one...`),this.ensureDirectoryExists(e,this.installTypingHost),this.installTypingHost.writeFile(t,'{ "private": true }'))}installTypings(e,t,n,r){this.log.isEnabled()&&this.log.writeLine(`Installing typings ${JSON.stringify(r)}`);const i=this.filterTypings(r);if(0===i.length)return this.log.isEnabled()&&this.log.writeLine("All typings are known to be missing or invalid - no need to install more typings"),void this.sendResponse(this.createSetTypings(e,n));this.ensurePackageDirectoryExists(t);const o=this.installRunCount;this.installRunCount++,this.sendResponse({kind:JG,eventId:o,typingsInstallerVersion:u,projectName:e.projectName});const s=i.map(Kfe);this.installTypingsAsync(o,s,t,(r=>{try{if(!r){this.log.isEnabled()&&this.log.writeLine(`install request failed, marking packages as missing to prevent repeated requests: ${JSON.stringify(i)}`);for(const e of i)this.missingTypingsSet.add(e);return}this.log.isEnabled()&&this.log.writeLine(`Installed typings ${JSON.stringify(s)}`);const o=[];for(const e of i){const n=Ufe(t,e,this.installTypingHost,this.log);if(!n){this.missingTypingsSet.add(e);continue}const r=this.typesRegistry.get(e),i={typingLocation:n,version:new Pn(r[`ts${l}`]||r[this.latestDistTag])};this.packageNameToTypingLocation.set(e,i),o.push(n)}this.log.isEnabled()&&this.log.writeLine(`Installed typing files ${JSON.stringify(o)}`),this.sendResponse(this.createSetTypings(e,n.concat(o)))}finally{const t={kind:WG,eventId:o,projectName:e.projectName,packagesToInstall:s,installSuccess:r,typingsInstallerVersion:u};this.sendResponse(t)}}))}ensureDirectoryExists(e,t){const n=Vo(e);t.directoryExists(n)||this.ensureDirectoryExists(n,t),t.directoryExists(e)||t.createDirectory(e)}watchFiles(e,t){if(!t.length)return void this.closeWatchers(e);const n=this.projectWatchers.get(e),r=new Set(t);!n||m_(r,(e=>!n.has(e)))||m_(n,(e=>!r.has(e)))?(this.projectWatchers.set(e,r),this.sendResponse({kind:GG,projectName:e,files:t})):this.sendResponse({kind:GG,projectName:e,files:void 0})}createSetTypings(e,t){return{projectName:e.projectName,typeAcquisition:e.typeAcquisition,compilerOptions:e.compilerOptions,typings:t,unresolvedImports:e.unresolvedImports,kind:BG}}installTypingsAsync(e,t,n,r){this.pendingRunRequests.unshift({requestId:e,packageNames:t,cwd:n,onRequestCompleted:r}),this.executeWithThrottling()}executeWithThrottling(){for(;this.inFlightRequestCount<this.throttleLimit&&this.pendingRunRequests.length;){this.inFlightRequestCount++;const e=this.pendingRunRequests.pop();this.installWorker(e.requestId,e.packageNames,e.cwd,(t=>{this.inFlightRequestCount--,e.onRequestCompleted(t),this.executeWithThrottling()}))}}};function Kfe(e){return`@types/${e}@ts${l}`}var Jfe,Wfe,Hfe=(e=>(e[e.terse=0]="terse",e[e.normal=1]="normal",e[e.requestTime=2]="requestTime",e[e.verbose=3]="verbose",e))(Hfe||{}),Gfe=[],Qfe=(e=>(e.Err="Err",e.Info="Info",e.Perf="Perf",e))(Qfe||{});function Yfe(e,t,n,r){return{projectName:e.getProjectName(),fileNames:e.getFileNames(!0,!0).concat(e.getExcludedFiles()),compilerOptions:e.getCompilationSettings(),typeAcquisition:t,unresolvedImports:n,projectRootPath:e.getCurrentDirectory(),cachePath:r,kind:"discover"}}function Zfe(e){return ts(e)}function Xfe(e,t,n){return n(Do(e)?e:es(e,t))}function $fe(e){return e}function eme(){const e=new Map;return{get:t=>e.get(t),set(t,n){e.set(t,n)},contains:t=>e.has(t),remove(t){e.delete(t)}}}function tme(e){return/dev\/null\/inferredProject\d+\*/.test(e)}function nme(e){return`/dev/null/inferredProject${e}*`}function rme(e){return`/dev/null/autoImportProviderProject${e}*`}function ime(e){return`/dev/null/auxiliaryProject${e}*`}function ome(){return[]}(Wfe=Jfe||(Jfe={})).ThrowNoProject=function(){throw new Error("No Project.")},Wfe.ThrowProjectLanguageServiceDisabled=function(){throw new Error("The project's language service is disabled.")},Wfe.ThrowProjectDoesNotContainDocument=function(e,t){throw new Error(`Project '${t.getProjectName()}' does not contain document '${e}'`)};var sme=class e{constructor(e,t){this.host=e,this.pendingTimeouts=new Map,this.logger=t.hasLevel(3)?t:void 0}schedule(t,n,r){const i=this.pendingTimeouts.get(t);i&&this.host.clearTimeout(i),this.pendingTimeouts.set(t,this.host.setTimeout(e.run,n,t,this,r)),this.logger&&this.logger.info(`Scheduled: ${t}${i?", Cancelled earlier one":""}`)}cancel(e){const t=this.pendingTimeouts.get(e);return!!t&&(this.host.clearTimeout(t),this.pendingTimeouts.delete(e))}static run(e,t,n){var r,i;null==(r=rr)||r.logStartScheduledOperation(e),t.pendingTimeouts.delete(e),t.logger&&t.logger.info(`Running: ${e}`),n(),null==(i=rr)||i.logStopScheduledOperation()}},ame=class e{constructor(e,t,n){this.host=e,this.delay=t,this.logger=n}scheduleCollect(){this.host.gc&&void 0===this.timerId&&(this.timerId=this.host.setTimeout(e.run,this.delay,this))}static run(e){var t,n;e.timerId=void 0,null==(t=rr)||t.logStartScheduledOperation("GC collect");const r=e.logger.hasLevel(2),i=r&&e.host.getMemoryUsage();if(e.host.gc(),r){const t=e.host.getMemoryUsage();e.logger.perftrc(`GC::before ${i}, after ${t}`)}null==(n=rr)||n.logStopScheduledOperation()}};function cme(e){const t=Ko(e);return"tsconfig.json"===t||"jsconfig.json"===t?t:void 0}function lme(e,t,n){if(!e||0===e.length)return;if(e[0]===t)return void e.splice(0,1);const r=Oe(e,t,gt,n);r>=0&&e.splice(r,1)}var ume={};a(ume,{ClassificationType:()=>zQ,CommandTypes:()=>dme,CompletionTriggerKind:()=>TQ,IndentStyle:()=>mme,JsxEmit:()=>hme,ModuleKind:()=>gme,ModuleResolutionKind:()=>yme,NewLineKind:()=>vme,OrganizeImportsMode:()=>SQ,PollingWatchKind:()=>fme,ScriptTarget:()=>bme,SemicolonPreference:()=>CQ,WatchDirectoryKind:()=>pme,WatchFileKind:()=>_me});var dme=(e=>(e.JsxClosingTag="jsxClosingTag",e.LinkedEditingRange="linkedEditingRange",e.Brace="brace",e.BraceFull="brace-full",e.BraceCompletion="braceCompletion",e.GetSpanOfEnclosingComment="getSpanOfEnclosingComment",e.Change="change",e.Close="close",e.Completions="completions",e.CompletionInfo="completionInfo",e.CompletionsFull="completions-full",e.CompletionDetails="completionEntryDetails",e.CompletionDetailsFull="completionEntryDetails-full",e.CompileOnSaveAffectedFileList="compileOnSaveAffectedFileList",e.CompileOnSaveEmitFile="compileOnSaveEmitFile",e.Configure="configure",e.Definition="definition",e.DefinitionFull="definition-full",e.DefinitionAndBoundSpan="definitionAndBoundSpan",e.DefinitionAndBoundSpanFull="definitionAndBoundSpan-full",e.Implementation="implementation",e.ImplementationFull="implementation-full",e.EmitOutput="emit-output",e.Exit="exit",e.FileReferences="fileReferences",e.FileReferencesFull="fileReferences-full",e.Format="format",e.Formatonkey="formatonkey",e.FormatFull="format-full",e.FormatonkeyFull="formatonkey-full",e.FormatRangeFull="formatRange-full",e.Geterr="geterr",e.GeterrForProject="geterrForProject",e.SemanticDiagnosticsSync="semanticDiagnosticsSync",e.SyntacticDiagnosticsSync="syntacticDiagnosticsSync",e.SuggestionDiagnosticsSync="suggestionDiagnosticsSync",e.NavBar="navbar",e.NavBarFull="navbar-full",e.Navto="navto",e.NavtoFull="navto-full",e.NavTree="navtree",e.NavTreeFull="navtree-full",e.DocumentHighlights="documentHighlights",e.DocumentHighlightsFull="documentHighlights-full",e.Open="open",e.Quickinfo="quickinfo",e.QuickinfoFull="quickinfo-full",e.References="references",e.ReferencesFull="references-full",e.Reload="reload",e.Rename="rename",e.RenameInfoFull="rename-full",e.RenameLocationsFull="renameLocations-full",e.Saveto="saveto",e.SignatureHelp="signatureHelp",e.SignatureHelpFull="signatureHelp-full",e.FindSourceDefinition="findSourceDefinition",e.Status="status",e.TypeDefinition="typeDefinition",e.ProjectInfo="projectInfo",e.ReloadProjects="reloadProjects",e.Unknown="unknown",e.OpenExternalProject="openExternalProject",e.OpenExternalProjects="openExternalProjects",e.CloseExternalProject="closeExternalProject",e.SynchronizeProjectList="synchronizeProjectList",e.ApplyChangedToOpenFiles="applyChangedToOpenFiles",e.UpdateOpen="updateOpen",e.EncodedSyntacticClassificationsFull="encodedSyntacticClassifications-full",e.EncodedSemanticClassificationsFull="encodedSemanticClassifications-full",e.Cleanup="cleanup",e.GetOutliningSpans="getOutliningSpans",e.GetOutliningSpansFull="outliningSpans",e.TodoComments="todoComments",e.Indentation="indentation",e.DocCommentTemplate="docCommentTemplate",e.CompilerOptionsDiagnosticsFull="compilerOptionsDiagnostics-full",e.NameOrDottedNameSpan="nameOrDottedNameSpan",e.BreakpointStatement="breakpointStatement",e.CompilerOptionsForInferredProjects="compilerOptionsForInferredProjects",e.GetCodeFixes="getCodeFixes",e.GetCodeFixesFull="getCodeFixes-full",e.GetCombinedCodeFix="getCombinedCodeFix",e.GetCombinedCodeFixFull="getCombinedCodeFix-full",e.ApplyCodeActionCommand="applyCodeActionCommand",e.GetSupportedCodeFixes="getSupportedCodeFixes",e.GetApplicableRefactors="getApplicableRefactors",e.GetEditsForRefactor="getEditsForRefactor",e.GetMoveToRefactoringFileSuggestions="getMoveToRefactoringFileSuggestions",e.GetPasteEdits="getPasteEdits",e.GetEditsForRefactorFull="getEditsForRefactor-full",e.OrganizeImports="organizeImports",e.OrganizeImportsFull="organizeImports-full",e.GetEditsForFileRename="getEditsForFileRename",e.GetEditsForFileRenameFull="getEditsForFileRename-full",e.ConfigurePlugin="configurePlugin",e.SelectionRange="selectionRange",e.SelectionRangeFull="selectionRange-full",e.ToggleLineComment="toggleLineComment",e.ToggleLineCommentFull="toggleLineComment-full",e.ToggleMultilineComment="toggleMultilineComment",e.ToggleMultilineCommentFull="toggleMultilineComment-full",e.CommentSelection="commentSelection",e.CommentSelectionFull="commentSelection-full",e.UncommentSelection="uncommentSelection",e.UncommentSelectionFull="uncommentSelection-full",e.PrepareCallHierarchy="prepareCallHierarchy",e.ProvideCallHierarchyIncomingCalls="provideCallHierarchyIncomingCalls",e.ProvideCallHierarchyOutgoingCalls="provideCallHierarchyOutgoingCalls",e.ProvideInlayHints="provideInlayHints",e.WatchChange="watchChange",e.MapCode="mapCode",e))(dme||{}),_me=(e=>(e.FixedPollingInterval="FixedPollingInterval",e.PriorityPollingInterval="PriorityPollingInterval",e.DynamicPriorityPolling="DynamicPriorityPolling",e.FixedChunkSizePolling="FixedChunkSizePolling",e.UseFsEvents="UseFsEvents",e.UseFsEventsOnParentDirectory="UseFsEventsOnParentDirectory",e))(_me||{}),pme=(e=>(e.UseFsEvents="UseFsEvents",e.FixedPollingInterval="FixedPollingInterval",e.DynamicPriorityPolling="DynamicPriorityPolling",e.FixedChunkSizePolling="FixedChunkSizePolling",e))(pme||{}),fme=(e=>(e.FixedInterval="FixedInterval",e.PriorityInterval="PriorityInterval",e.DynamicPriority="DynamicPriority",e.FixedChunkSize="FixedChunkSize",e))(fme||{}),mme=(e=>(e.None="None",e.Block="Block",e.Smart="Smart",e))(mme||{}),hme=(e=>(e.None="none",e.Preserve="preserve",e.ReactNative="react-native",e.React="react",e.ReactJSX="react-jsx",e.ReactJSXDev="react-jsxdev",e))(hme||{}),gme=(e=>(e.None="none",e.CommonJS="commonjs",e.AMD="amd",e.UMD="umd",e.System="system",e.ES6="es6",e.ES2015="es2015",e.ES2020="es2020",e.ES2022="es2022",e.ESNext="esnext",e.Node16="node16",e.NodeNext="nodenext",e.Preserve="preserve",e))(gme||{}),yme=(e=>(e.Classic="classic",e.Node="node",e.NodeJs="node",e.Node10="node10",e.Node16="node16",e.NodeNext="nodenext",e.Bundler="bundler",e))(yme||{}),vme=(e=>(e.Crlf="Crlf",e.Lf="Lf",e))(vme||{}),bme=(e=>(e.ES3="es3",e.ES5="es5",e.ES6="es6",e.ES2015="es2015",e.ES2016="es2016",e.ES2017="es2017",e.ES2018="es2018",e.ES2019="es2019",e.ES2020="es2020",e.ES2021="es2021",e.ES2022="es2022",e.ES2023="es2023",e.ESNext="esnext",e.JSON="json",e.Latest="esnext",e))(bme||{}),xme=class{constructor(e,t,n){this.host=e,this.info=t,this.isOpen=!1,this.ownFileText=!1,this.pendingReloadFromDisk=!1,this.version=n||0}getVersion(){return this.svc?`SVC-${this.version}-${this.svc.getSnapshotVersion()}`:`Text-${this.version}`}hasScriptVersionCache_TestOnly(){return void 0!==this.svc}resetSourceMapInfo(){this.info.sourceFileLike=void 0,this.info.closeSourceMapFileWatcher(),this.info.sourceMapFilePath=void 0,this.info.declarationInfoPath=void 0,this.info.sourceInfos=void 0,this.info.documentPositionMapper=void 0}useText(e){this.svc=void 0,this.text=e,this.textSnapshot=void 0,this.lineMap=void 0,this.fileSize=void 0,this.resetSourceMapInfo(),this.version++}edit(e,t,n){this.switchToScriptVersionCache().edit(e,t-e,n),this.ownFileText=!1,this.text=void 0,this.textSnapshot=void 0,this.lineMap=void 0,this.fileSize=void 0,this.resetSourceMapInfo()}reload(e){return Tn.assert(void 0!==e),this.pendingReloadFromDisk=!1,!this.text&&this.svc&&(this.text=KZ(this.svc.getSnapshot())),this.text!==e&&(this.useText(e),this.ownFileText=!1,!0)}reloadWithFileText(e){const{text:t,fileSize:n}=e||!this.info.isDynamicOrHasMixedContent()?this.getFileTextAndSize(e):{text:"",fileSize:void 0},r=this.reload(t);return this.fileSize=n,this.ownFileText=!e||e===this.info.fileName,this.ownFileText&&this.info.mTime===eo.getTime()&&(this.info.mTime=(this.host.getModifiedTime(this.info.fileName)||eo).getTime()),r}scheduleReloadIfNeeded(){return!this.pendingReloadFromDisk&&!this.ownFileText&&(this.pendingReloadFromDisk=!0)}delayReloadFromFileIntoText(){this.pendingReloadFromDisk=!0}getTelemetryFileSize(){return this.fileSize?this.fileSize:this.text?this.text.length:this.svc?this.svc.getSnapshot().getLength():this.getSnapshot().getLength()}getSnapshot(){var e;return(null==(e=this.tryUseScriptVersionCache())?void 0:e.getSnapshot())||(this.textSnapshot??(this.textSnapshot=uQ.fromString(Tn.checkDefined(this.text))))}getAbsolutePositionAndLineText(e){const t=this.tryUseScriptVersionCache();if(t)return t.getAbsolutePositionAndLineText(e);const n=this.getLineMap();return e<=n.length?{absolutePosition:n[e-1],lineText:this.text.substring(n[e-1],n[e])}:{absolutePosition:this.text.length,lineText:void 0}}lineToTextSpan(e){const t=this.tryUseScriptVersionCache();if(t)return t.lineToTextSpan(e);const n=this.getLineMap();return tc(n[e],e+1<n.length?n[e+1]:this.text.length)}lineOffsetToPosition(e,t,n){const r=this.tryUseScriptVersionCache();return r?r.lineOffsetToPosition(e,t):Ys(this.getLineMap(),e-1,t-1,this.text,n)}positionToLineOffset(e){const t=this.tryUseScriptVersionCache();if(t)return t.positionToLineOffset(e);const{line:n,character:r}=Xs(this.getLineMap(),e);return{line:n+1,offset:r+1}}getFileTextAndSize(e){let t;const n=e||this.info.fileName,r=()=>void 0===t?t=this.host.readFile(n)||"":t;if(!ZT(this.info.fileName)){const e=this.host.getFileSize?this.host.getFileSize(n):r().length;if(e>Wme){Tn.assert(!!this.info.containingProjects.length);return this.info.containingProjects[0].projectService.logger.info(`Skipped loading contents of large file ${n} for info ${this.info.fileName}: fileSize: ${e}`),this.info.containingProjects[0].projectService.sendLargeFileReferencedEvent(n,e),{text:"",fileSize:e}}}return{text:r()}}switchToScriptVersionCache(){return this.svc&&!this.pendingReloadFromDisk||(this.svc=kge.fromString(this.getOrLoadText()),this.textSnapshot=void 0,this.version++),this.svc}tryUseScriptVersionCache(){return this.svc&&!this.pendingReloadFromDisk||this.getOrLoadText(),this.isOpen?(this.svc||this.textSnapshot||(this.svc=kge.fromString(Tn.checkDefined(this.text)),this.textSnapshot=void 0),this.svc):this.svc}getOrLoadText(){return(void 0===this.text||this.pendingReloadFromDisk)&&(Tn.assert(!this.svc||this.pendingReloadFromDisk,"ScriptVersionCache should not be set when reloading from disk"),this.reloadWithFileText()),this.text}getLineMap(){return Tn.assert(!this.svc,"ScriptVersionCache should not be set"),this.lineMap||(this.lineMap=Gs(Tn.checkDefined(this.text)))}getLineInfo(){const e=this.tryUseScriptVersionCache();if(e)return{getLineCount:()=>e.getLineCount(),getLineText:t=>e.getAbsolutePositionAndLineText(t+1).lineText};const t=this.getLineMap();return xU(this.text,t)}};function Sme(e){return"^"===e[0]||(e.includes("walkThroughSnippet:/")||e.includes("untitled:/"))&&"^"===Ko(e)[0]||e.includes(":^")&&!e.includes(ko)}var Tme=class{constructor(e,t,n,r,i,o){this.host=e,this.fileName=t,this.scriptKind=n,this.hasMixedContent=r,this.path=i,this.containingProjects=[],this.isDynamic=Sme(t),this.textStorage=new xme(e,this,o),(r||this.isDynamic)&&(this.realpath=this.path),this.scriptKind=n||RT(t)}isDynamicOrHasMixedContent(){return this.hasMixedContent||this.isDynamic}isScriptOpen(){return this.textStorage.isOpen}open(e){this.textStorage.isOpen=!0,void 0!==e&&this.textStorage.reload(e)&&this.markContainingProjectsAsDirty()}close(e=!0){this.textStorage.isOpen=!1,e&&this.textStorage.scheduleReloadIfNeeded()&&this.markContainingProjectsAsDirty()}getSnapshot(){return this.textStorage.getSnapshot()}ensureRealPath(){if(void 0===this.realpath&&(this.realpath=this.path,this.host.realpath)){Tn.assert(!!this.containingProjects.length);const e=this.containingProjects[0],t=this.host.realpath(this.path);t&&(this.realpath=e.toPath(t),this.realpath!==this.path&&e.projectService.realpathToScriptInfos.add(this.realpath,this))}}getRealpathIfDifferent(){return this.realpath&&this.realpath!==this.path?this.realpath:void 0}isSymlink(){return this.realpath&&this.realpath!==this.path}getFormatCodeSettings(){return this.formatSettings}getPreferences(){return this.preferences}attachToProject(e){const t=!this.isAttached(e);return t&&(this.containingProjects.push(e),e.getCompilerOptions().preserveSymlinks||this.ensureRealPath(),e.onFileAddedOrRemoved(this.isSymlink())),t}isAttached(e){switch(this.containingProjects.length){case 0:return!1;case 1:return this.containingProjects[0]===e;case 2:return this.containingProjects[0]===e||this.containingProjects[1]===e;default:return A(this.containingProjects,e)}}detachFromProject(e){switch(this.containingProjects.length){case 0:return;case 1:this.containingProjects[0]===e&&(e.onFileAddedOrRemoved(this.isSymlink()),this.containingProjects.pop());break;case 2:this.containingProjects[0]===e?(e.onFileAddedOrRemoved(this.isSymlink()),this.containingProjects[0]=this.containingProjects.pop()):this.containingProjects[1]===e&&(e.onFileAddedOrRemoved(this.isSymlink()),this.containingProjects.pop());break;default:$t(this.containingProjects,e)&&e.onFileAddedOrRemoved(this.isSymlink())}}detachAllProjects(){for(const e of this.containingProjects){Bme(e)&&e.getCachedDirectoryStructureHost().addOrDeleteFile(this.fileName,this.path,2);const t=e.getRootFilesMap().get(this.path);e.removeFile(this,!1,!1),e.onFileAddedOrRemoved(this.isSymlink()),t&&!Ume(e)&&e.addMissingFileRoot(t.fileName)}F(this.containingProjects)}getDefaultProject(){switch(this.containingProjects.length){case 0:return Jfe.ThrowNoProject();case 1:return Kme(this.containingProjects[0])||Vme(this.containingProjects[0])?Jfe.ThrowNoProject():this.containingProjects[0];default:let e,t,n,r;for(let i=0;i<this.containingProjects.length;i++){const o=this.containingProjects[i];if(Bme(o)){if(o.deferredClose)continue;if(!o.isSourceOfProjectReferenceRedirect(this.fileName)){if(void 0===r&&i!==this.containingProjects.length-1&&(r=o.projectService.findDefaultConfiguredProject(this)||!1),r===o)return o;n||(n=o)}e||(e=o)}else{if(qme(o))return o;!t&&Ume(o)&&(t=o)}}return(r||n||e||t)??Jfe.ThrowNoProject()}}registerFileUpdate(){for(const e of this.containingProjects)e.registerFileUpdate(this.path)}setOptions(e,t){e&&(this.formatSettings?this.formatSettings={...this.formatSettings,...e}:(this.formatSettings=NQ(this.host.newLine),Je(this.formatSettings,e))),t&&(this.preferences||(this.preferences=bQ),this.preferences={...this.preferences,...t})}getLatestVersion(){return this.textStorage.getSnapshot(),this.textStorage.getVersion()}saveTo(e){this.host.writeFile(e,KZ(this.textStorage.getSnapshot()))}delayReloadNonMixedContentFile(){Tn.assert(!this.isDynamicOrHasMixedContent()),this.textStorage.delayReloadFromFileIntoText(),this.markContainingProjectsAsDirty()}reloadFromFile(e){return!!this.textStorage.reloadWithFileText(e)&&(this.markContainingProjectsAsDirty(),!0)}editContent(e,t,n){this.textStorage.edit(e,t,n),this.markContainingProjectsAsDirty()}markContainingProjectsAsDirty(){for(const e of this.containingProjects)e.markFileAsDirty(this.path)}isOrphan(){return this.deferredDelete||!h(this.containingProjects,(e=>!e.isOrphan()))}isContainedByBackgroundProject(){return $(this.containingProjects,Vme)}lineToTextSpan(e){return this.textStorage.lineToTextSpan(e)}lineOffsetToPosition(e,t,n){return this.textStorage.lineOffsetToPosition(e,t,n)}positionToLineOffset(e){!function(e){Tn.assert("number"==typeof e,`Expected position ${e} to be a number.`),Tn.assert(e>=0,"Expected position to be non-negative.")}(e);const t=this.textStorage.positionToLineOffset(e);return function(e){Tn.assert("number"==typeof e.line,`Expected line ${e.line} to be a number.`),Tn.assert("number"==typeof e.offset,`Expected offset ${e.offset} to be a number.`),Tn.assert(e.line>0,"Expected line to be non-"+(0===e.line?"zero":"negative")),Tn.assert(e.offset>0,"Expected offset to be non-"+(0===e.offset?"zero":"negative"))}(t),t}isJavaScript(){return 1===this.scriptKind||2===this.scriptKind}closeSourceMapFileWatcher(){this.sourceMapFilePath&&!lt(this.sourceMapFilePath)&&(FV(this.sourceMapFilePath),this.sourceMapFilePath=void 0)}};var wme={isKnownTypesPackageName:ft,installPackage:xt,enqueueInstallTypingsRequest:pt,attach:pt,onProjectClosed:pt,globalTypingsCacheLocation:void 0};function kme(e,t){if(e===t)return!0;if(0===(e||Gfe).length&&0===(t||Gfe).length)return!0;const n=new Map;let r=0;for(const i of e)!0!==n.get(i)&&(n.set(i,!0),r++);for(const i of t){const e=n.get(i);if(void 0===e)return!1;!0===e&&(n.set(i,!1),r--)}return 0===r}var Eme=class{constructor(e){this.installer=e,this.perProjectCache=new Map}isKnownTypesPackageName(e){return this.installer.isKnownTypesPackageName(e)}installPackage(e){return this.installer.installPackage(e)}enqueueInstallTypingsForProject(e,t,n){const r=e.getTypeAcquisition();if(!r||!r.enable)return;const i=this.perProjectCache.get(e.getProjectName());var o,s,a,c;!n&&i&&(a=r,c=i.typeAcquisition,a.enable===c.enable&&kme(a.include,c.include)&&kme(a.exclude,c.exclude))&&!function(e,t){return HS(e)!==HS(t)}(e.getCompilationSettings(),i.compilerOptions)&&(o=t,s=i.unresolvedImports,o===s||le(o,s))||(this.perProjectCache.set(e.getProjectName(),{compilerOptions:e.getCompilationSettings(),typeAcquisition:r,typings:i?i.typings:Gfe,unresolvedImports:t,poisoned:!0}),this.installer.enqueueInstallTypingsRequest(e,r,t))}updateTypingsForProject(e,t,n,r,i){const o=ve(i);return this.perProjectCache.set(e,{compilerOptions:t,typeAcquisition:n,typings:o,unresolvedImports:r,poisoned:!1}),n&&n.enable?o:Gfe}onProjectClosed(e){this.perProjectCache.delete(e.getProjectName())&&this.installer.onProjectClosed(e)}},Cme=(e=>(e[e.Inferred=0]="Inferred",e[e.Configured=1]="Configured",e[e.External=2]="External",e[e.AutoImportProvider=3]="AutoImportProvider",e[e.Auxiliary=4]="Auxiliary",e))(Cme||{});function Nme(e,t=!1){const n={js:0,jsSize:0,jsx:0,jsxSize:0,ts:0,tsSize:0,tsx:0,tsxSize:0,dts:0,dtsSize:0,deferred:0,deferredSize:0};for(const r of e){const e=t?r.textStorage.getTelemetryFileSize():0;switch(r.scriptKind){case 1:n.js+=1,n.jsSize+=e;break;case 2:n.jsx+=1,n.jsxSize+=e;break;case 3:lO(r.fileName)?(n.dts+=1,n.dtsSize+=e):(n.ts+=1,n.tsSize+=e);break;case 4:n.tsx+=1,n.tsxSize+=e;break;case 7:n.deferred+=1,n.deferredSize+=e}}return n}function Ame(e){const t=Nme(e.getRootScriptInfos());return 0===t.ts&&0===t.tsx}function Ime(e){const t=Nme(e.getScriptInfos());return 0===t.ts&&0===t.tsx}function Dme(e){return!e.some((e=>Lo(e,".ts")&&!lO(e)||Lo(e,".tsx")))}function Pme(e){return void 0!==e.generatedFilePath}var Mme=class e{constructor(e,t,n,r,i,o,s,a,c,l,u){switch(this.projectKind=t,this.projectService=n,this.documentRegistry=r,this.compilerOptions=s,this.compileOnSaveEnabled=a,this.watchOptions=c,this.rootFilesMap=new Map,this.plugins=[],this.cachedUnresolvedImportsPerFile=new Map,this.hasAddedorRemovedFiles=!1,this.hasAddedOrRemovedSymlinks=!1,this.lastReportedVersion=0,this.projectProgramVersion=0,this.projectStateVersion=0,this.isInitialLoadPending=ft,this.dirty=!1,this.typingFiles=Gfe,this.moduleSpecifierCache=Khe(this),this.createHash=tt(this.projectService.host,this.projectService.host.createHash),this.globalCacheResolutionModuleName=jG.nonRelativeModuleNameForTypingCache,this.updateFromProjectInProgress=!1,this.projectName=e,this.directoryStructureHost=l,this.currentDirectory=this.projectService.getNormalizedAbsolutePath(u),this.getCanonicalFileName=this.projectService.toCanonicalFileName,this.jsDocParsingMode=this.projectService.jsDocParsingMode,this.cancellationToken=new h8(this.projectService.cancellationToken,this.projectService.throttleWaitMilliseconds),this.compilerOptions?(i||HS(this.compilerOptions)||this.projectService.hasDeferredExtension())&&(this.compilerOptions.allowNonTsExtensions=!0):(this.compilerOptions={target:1,jsx:1},this.compilerOptions.allowNonTsExtensions=!0,this.compilerOptions.allowJs=!0),n.serverMode){case 0:this.languageServiceEnabled=!0;break;case 1:this.languageServiceEnabled=!0,this.compilerOptions.noResolve=!0,this.compilerOptions.types=[];break;case 2:this.languageServiceEnabled=!1,this.compilerOptions.noResolve=!0,this.compilerOptions.types=[];break;default:Tn.assertNever(n.serverMode)}this.setInternalCompilerOptionsForEmittingJsFiles();const d=this.projectService.host;this.projectService.logger.loggingEnabled()?this.trace=e=>this.writeLog(e):d.trace&&(this.trace=e=>d.trace(e)),this.realpath=tt(d,d.realpath),this.resolutionCache=WJ(this,this.currentDirectory,!0),this.languageService=v8(this,this.documentRegistry,this.projectService.serverMode),o&&this.disableLanguageService(o),this.markAsDirty(),Vme(this)||(this.projectService.pendingEnsureProjectForOpenFiles=!0),this.projectService.onProjectCreation(this)}getResolvedProjectReferenceToRedirect(e){}isNonTsProject(){return Dhe(this),Ime(this)}isJsOnlyProject(){return Dhe(this),function(e){const t=Nme(e.getScriptInfos());return t.js>0&&0===t.ts&&0===t.tsx}(this)}static resolveModule(t,n,r,i){return e.importServicePluginSync({name:t},[n],r,i).resolvedModule}static importServicePluginSync(e,t,n,r){let i,o;Tn.assertIsDefined(n.require);for(const s of t){const t=Qo(n.resolvePath(Zo(s,"node_modules")));r(`Loading ${e.name} from ${s} (resolved to ${t})`);const a=n.require(t,e.name);if(!a.error){o=a.module;break}const c=a.error.stack||a.error.message||JSON.stringify(a.error);(i??(i=[])).push(`Failed to load module '${e.name}' from ${t}: ${c}`)}return{pluginConfigEntry:e,resolvedModule:o,errorLogs:i}}static async importServicePluginAsync(e,t,n,r){let i,o;Tn.assertIsDefined(n.importPlugin);for(const s of t){const t=Zo(s,"node_modules");let a;r(`Dynamically importing ${e.name} from ${s} (resolved to ${t})`);try{a=await n.importPlugin(t,e.name)}catch(Mge){a={module:void 0,error:Mge}}if(!a.error){o=a.module;break}const c=a.error.stack||a.error.message||JSON.stringify(a.error);(i??(i=[])).push(`Failed to dynamically import module '${e.name}' from ${t}: ${c}`)}return{pluginConfigEntry:e,resolvedModule:o,errorLogs:i}}isKnownTypesPackageName(e){return this.typingsCache.isKnownTypesPackageName(e)}installPackage(e){return this.typingsCache.installPackage({...e,projectName:this.projectName,projectRootPath:this.toPath(this.currentDirectory)})}getGlobalTypingsCacheLocation(){return this.getGlobalCache()}get typingsCache(){return this.projectService.typingsCache}getSymlinkCache(){return this.symlinks||(this.symlinks=dT(this.getCurrentDirectory(),this.getCanonicalFileName)),this.program&&!this.symlinks.hasProcessedResolutions()&&this.symlinks.setSymlinksFromResolutions(this.program.forEachResolvedModule,this.program.forEachResolvedTypeReferenceDirective,this.program.getAutomaticTypeDirectiveResolutions()),this.symlinks}getCompilationSettings(){return this.compilerOptions}getCompilerOptions(){return this.getCompilationSettings()}getNewLine(){return this.projectService.host.newLine}getProjectVersion(){return this.projectStateVersion.toString()}getProjectReferences(){}getScriptFileNames(){if(!this.rootFilesMap.size)return _;let e;return this.rootFilesMap.forEach((t=>{(this.languageServiceEnabled||t.info&&t.info.isScriptOpen())&&(e||(e=[])).push(t.fileName)})),me(e,this.typingFiles)||_}getOrCreateScriptInfoAndAttachToProject(e){const t=this.projectService.getOrCreateScriptInfoNotOpenedByClient(e,this.currentDirectory,this.directoryStructureHost,!1);if(t){const e=this.rootFilesMap.get(t.path);e&&e.info!==t&&(e.info=t),t.attachToProject(this)}return t}getScriptKind(e){const t=this.projectService.getScriptInfoForPath(this.toPath(e));return t&&t.scriptKind}getScriptVersion(e){const t=this.projectService.getOrCreateScriptInfoNotOpenedByClient(e,this.currentDirectory,this.directoryStructureHost,!1);return t&&t.getLatestVersion()}getScriptSnapshot(e){const t=this.getOrCreateScriptInfoAndAttachToProject(e);if(t)return t.getSnapshot()}getCancellationToken(){return this.cancellationToken}getCurrentDirectory(){return this.currentDirectory}getDefaultLibFileName(){return Zo(Vo(ts(this.projectService.getExecutingFilePath())),Ba(this.compilerOptions))}useCaseSensitiveFileNames(){return this.projectService.host.useCaseSensitiveFileNames}readDirectory(e,t,n,r,i){return this.directoryStructureHost.readDirectory(e,t,n,r,i)}readFile(e){return this.projectService.host.readFile(e)}writeFile(e,t){return this.projectService.host.writeFile(e,t)}fileExists(e){const t=this.toPath(e);return!this.isWatchedMissingFile(t)&&this.directoryStructureHost.fileExists(e)}resolveModuleNameLiterals(e,t,n,r,i,o){return this.resolutionCache.resolveModuleNameLiterals(e,t,n,r,i,o)}getModuleResolutionCache(){return this.resolutionCache.getModuleResolutionCache()}resolveTypeReferenceDirectiveReferences(e,t,n,r,i,o){return this.resolutionCache.resolveTypeReferenceDirectiveReferences(e,t,n,r,i,o)}resolveLibrary(e,t,n,r){return this.resolutionCache.resolveLibrary(e,t,n,r)}directoryExists(e){return this.directoryStructureHost.directoryExists(e)}getDirectories(e){return this.directoryStructureHost.getDirectories(e)}getCachedDirectoryStructureHost(){}toPath(e){return rs(e,this.currentDirectory,this.projectService.toCanonicalFileName)}watchDirectoryOfFailedLookupLocation(e,t,n){return this.projectService.watchFactory.watchDirectory(e,t,n,this.projectService.getWatchOptions(this),vW.FailedLookupLocations,this)}watchAffectingFileLocation(e,t){return this.projectService.watchFactory.watchFile(e,t,2e3,this.projectService.getWatchOptions(this),vW.AffectingFileLocation,this)}clearInvalidateResolutionOfFailedLookupTimer(){return this.projectService.throttledOperations.cancel(`${this.getProjectName()}FailedLookupInvalidation`)}scheduleInvalidateResolutionsOfFailedLookupLocations(){this.projectService.throttledOperations.schedule(`${this.getProjectName()}FailedLookupInvalidation`,1e3,(()=>{this.resolutionCache.invalidateResolutionsOfFailedLookupLocations()&&this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this)}))}invalidateResolutionsOfFailedLookupLocations(){this.clearInvalidateResolutionOfFailedLookupTimer()&&this.resolutionCache.invalidateResolutionsOfFailedLookupLocations()&&(this.markAsDirty(),this.projectService.delayEnsureProjectForOpenFiles())}onInvalidatedResolution(){this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this)}watchTypeRootsDirectory(e,t,n){return this.projectService.watchFactory.watchDirectory(e,t,n,this.projectService.getWatchOptions(this),vW.TypeRoots,this)}hasChangedAutomaticTypeDirectiveNames(){return this.resolutionCache.hasChangedAutomaticTypeDirectiveNames()}onChangedAutomaticTypeDirectiveNames(){this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this)}getGlobalCache(){return this.getTypeAcquisition().enable?this.projectService.typingsInstaller.globalTypingsCacheLocation:void 0}fileIsOpen(e){return this.projectService.openFiles.has(e)}writeLog(e){this.projectService.logger.info(e)}log(e){this.writeLog(e)}error(e){this.projectService.logger.msg(e,"Err")}setInternalCompilerOptionsForEmittingJsFiles(){0!==this.projectKind&&2!==this.projectKind||(this.compilerOptions.noEmitForJsFiles=!0)}getGlobalProjectErrors(){return M(this.projectErrors,(e=>!e.file))||Gfe}getAllProjectErrors(){return this.projectErrors||Gfe}setProjectErrors(e){this.projectErrors=e}getLanguageService(e=!0){return e&&Dhe(this),this.languageService}getSourceMapper(){return this.getLanguageService().getSourceMapper()}clearSourceMapperCache(){this.languageService.clearSourceMapperCache()}getDocumentPositionMapper(e,t){return this.projectService.getDocumentPositionMapper(this,e,t)}getSourceFileLike(e){return this.projectService.getSourceFileLike(e,this)}shouldEmitFile(e){return e&&!e.isDynamicOrHasMixedContent()&&!this.program.isSourceOfProjectReferenceRedirect(e.path)}getCompileOnSaveAffectedFileList(e){return this.languageServiceEnabled?(Dhe(this),this.builderState=JK.create(this.program,this.builderState,!0),J(JK.getFilesAffectedBy(this.builderState,this.program,e.path,this.cancellationToken,this.projectService.host),(e=>this.shouldEmitFile(this.projectService.getScriptInfoForPath(e.path))?e.fileName:void 0))):[]}emitFile(e,t){if(!this.languageServiceEnabled||!this.shouldEmitFile(e))return{emitSkipped:!0,diagnostics:Gfe};const{emitSkipped:n,diagnostics:r,outputFiles:i}=this.getLanguageService().getEmitOutput(e.fileName);if(!n){for(const e of i){t(es(e.name,this.currentDirectory),e.text,e.writeByteOrderMark)}if(this.builderState&&VS(this.compilerOptions)){const t=i.filter((e=>lO(e.name)));if(1===t.length){const n=this.program.getSourceFile(e.fileName),r=this.projectService.host.createHash?this.projectService.host.createHash(t[0].text):Yi(t[0].text);JK.updateSignatureOfFile(this.builderState,r,n.resolvedPath)}}}return{emitSkipped:n,diagnostics:r}}enableLanguageService(){this.languageServiceEnabled||2===this.projectService.serverMode||(this.languageServiceEnabled=!0,this.lastFileExceededProgramSize=void 0,this.projectService.onUpdateLanguageServiceStateForProject(this,!0))}cleanupProgram(){if(this.program){for(const e of this.program.getSourceFiles())this.detachScriptInfoIfNotRoot(e.fileName);this.program.forEachResolvedProjectReference((e=>this.detachScriptInfoFromProject(e.sourceFile.fileName))),this.program=void 0}}disableLanguageService(e){this.languageServiceEnabled&&(Tn.assert(2!==this.projectService.serverMode),this.languageService.cleanupSemanticCache(),this.languageServiceEnabled=!1,this.cleanupProgram(),this.lastFileExceededProgramSize=e,this.builderState=void 0,this.autoImportProviderHost&&this.autoImportProviderHost.close(),this.autoImportProviderHost=void 0,this.resolutionCache.closeTypeRootsWatch(),this.clearGeneratedFileWatch(),this.projectService.verifyDocumentRegistry(),this.projectService.onUpdateLanguageServiceStateForProject(this,!1))}getProjectName(){return this.projectName}removeLocalTypingsFromTypeAcquisition(e){return e&&e.include?{...e,include:this.removeExistingTypings(e.include)}:e}getExternalFiles(e){return ve(U(this.plugins,(t=>{if("function"==typeof t.module.getExternalFiles)try{return t.module.getExternalFiles(this,e||0)}catch(Mge){this.projectService.logger.info(`A plugin threw an exception in getExternalFiles: ${Mge}`),Mge.stack&&this.projectService.logger.info(Mge.stack)}})))}getSourceFile(e){if(this.program)return this.program.getSourceFileByPath(e)}getSourceFileOrConfigFile(e){const t=this.program.getCompilerOptions();return e===t.configFilePath?t.configFile:this.getSourceFile(e)}close(){var e;this.projectService.typingsCache.onProjectClosed(this),this.closeWatchingTypingLocations(),this.cleanupProgram(),h(this.externalFiles,(e=>this.detachScriptInfoIfNotRoot(e))),this.rootFilesMap.forEach((e=>{var t;return null==(t=e.info)?void 0:t.detachFromProject(this)})),this.projectService.pendingEnsureProjectForOpenFiles=!0,this.rootFilesMap=void 0,this.externalFiles=void 0,this.program=void 0,this.builderState=void 0,this.resolutionCache.clear(),this.resolutionCache=void 0,this.cachedUnresolvedImportsPerFile=void 0,null==(e=this.packageJsonWatches)||e.forEach((e=>{e.projects.delete(this),e.close()})),this.packageJsonWatches=void 0,this.moduleSpecifierCache.clear(),this.moduleSpecifierCache=void 0,this.directoryStructureHost=void 0,this.exportMapCache=void 0,this.projectErrors=void 0,this.plugins.length=0,this.missingFilesMap&&(Nx(this.missingFilesMap,vx),this.missingFilesMap=void 0),this.clearGeneratedFileWatch(),this.clearInvalidateResolutionOfFailedLookupTimer(),this.autoImportProviderHost&&this.autoImportProviderHost.close(),this.autoImportProviderHost=void 0,this.noDtsResolutionProject&&this.noDtsResolutionProject.close(),this.noDtsResolutionProject=void 0,this.languageService.dispose(),this.languageService=void 0}detachScriptInfoIfNotRoot(e){const t=this.projectService.getScriptInfo(e);t&&!this.isRoot(t)&&t.detachFromProject(this)}isClosed(){return void 0===this.rootFilesMap}hasRoots(){var e;return!!(null==(e=this.rootFilesMap)?void 0:e.size)}isOrphan(){return!1}getRootFiles(){return this.rootFilesMap&&Ke(W(this.rootFilesMap.values(),(e=>{var t;return null==(t=e.info)?void 0:t.fileName})))}getRootFilesMap(){return this.rootFilesMap}getRootScriptInfos(){return Ke(W(this.rootFilesMap.values(),(e=>e.info)))}getScriptInfos(){return this.languageServiceEnabled?R(this.program.getSourceFiles(),(e=>{const t=this.projectService.getScriptInfoForPath(e.resolvedPath);return Tn.assert(!!t,"getScriptInfo",(()=>`scriptInfo for a file '${e.fileName}' Path: '${e.path}' / '${e.resolvedPath}' is missing.`)),t})):this.getRootScriptInfos()}getExcludedFiles(){return Gfe}getFileNames(e,t){if(!this.program)return[];if(!this.languageServiceEnabled){let e=this.getRootFiles();if(this.compilerOptions){const t=T8(this.compilerOptions);t&&(e||(e=[])).push(t)}return e}const n=[];for(const r of this.program.getSourceFiles())e&&this.program.isSourceFileFromExternalLibrary(r)||n.push(r.fileName);if(!t){const e=this.program.getCompilerOptions().configFile;if(e&&(n.push(e.fileName),e.extendedSourceFiles))for(const t of e.extendedSourceFiles)n.push(t)}return n}getFileNamesWithRedirectInfo(e){return this.getFileNames().map((t=>({fileName:t,isSourceOfProjectReferenceRedirect:e&&this.isSourceOfProjectReferenceRedirect(t)})))}hasConfigFile(e){if(this.program&&this.languageServiceEnabled){const t=this.program.getCompilerOptions().configFile;if(t){if(e===t.fileName)return!0;if(t.extendedSourceFiles)for(const n of t.extendedSourceFiles)if(e===n)return!0}}return!1}containsScriptInfo(e){if(this.isRoot(e))return!0;if(!this.program)return!1;const t=this.program.getSourceFileByPath(e.path);return!!t&&t.resolvedPath===e.path}containsFile(e,t){const n=this.projectService.getScriptInfoForNormalizedPath(e);return!(!n||!n.isScriptOpen()&&t)&&this.containsScriptInfo(n)}isRoot(e){var t,n;return(null==(n=null==(t=this.rootFilesMap)?void 0:t.get(e.path))?void 0:n.info)===e}addRoot(e,t){Tn.assert(!this.isRoot(e)),this.rootFilesMap.set(e.path,{fileName:t||e.fileName,info:e}),e.attachToProject(this),this.markAsDirty()}addMissingFileRoot(e){const t=this.projectService.toPath(e);this.rootFilesMap.set(t,{fileName:e}),this.markAsDirty()}removeFile(e,t,n){this.isRoot(e)&&this.removeRoot(e),t?this.resolutionCache.removeResolutionsOfFile(e.path):this.resolutionCache.invalidateResolutionOfFile(e.path),this.cachedUnresolvedImportsPerFile.delete(e.path),n&&e.detachFromProject(this),this.markAsDirty()}registerFileUpdate(e){(this.updatedFileNames||(this.updatedFileNames=new Set)).add(e)}markFileAsDirty(e){this.markAsDirty(),this.exportMapCache&&!this.exportMapCache.isEmpty()&&(this.changedFilesForExportMapCache||(this.changedFilesForExportMapCache=new Set)).add(e)}markAsDirty(){this.dirty||(this.projectStateVersion++,this.dirty=!0)}markAutoImportProviderAsDirty(){var e;this.autoImportProviderHost||(this.autoImportProviderHost=void 0),null==(e=this.autoImportProviderHost)||e.markAsDirty()}onAutoImportProviderSettingsChanged(){var e;!1===this.autoImportProviderHost?this.autoImportProviderHost=void 0:null==(e=this.autoImportProviderHost)||e.markAsDirty()}onPackageJsonChange(){this.moduleSpecifierCache.clear(),this.autoImportProviderHost&&this.autoImportProviderHost.markAsDirty()}onFileAddedOrRemoved(e){this.hasAddedorRemovedFiles=!0,e&&(this.hasAddedOrRemovedSymlinks=!0)}onDiscoveredSymlink(){this.hasAddedOrRemovedSymlinks=!0}updateFromProject(){Dhe(this)}updateGraph(){var e,t,n,r;null==(e=ar)||e.push(ar.Phase.Session,"updateGraph",{name:this.projectName,kind:Cme[this.projectKind]}),null==(t=rr)||t.logStartUpdateGraph(),this.resolutionCache.startRecordingFilesWithChangedResolutions();const i=this.updateGraphWorker(),o=this.hasAddedorRemovedFiles;this.hasAddedorRemovedFiles=!1,this.hasAddedOrRemovedSymlinks=!1;const s=this.resolutionCache.finishRecordingFilesWithChangedResolutions()||Gfe;for(const c of s)this.cachedUnresolvedImportsPerFile.delete(c);this.languageServiceEnabled&&0===this.projectService.serverMode&&!this.isOrphan()?((i||s.length)&&(this.lastCachedUnresolvedImportsList=function(e,t){var n,r;const i=e.getSourceFiles();null==(n=ar)||n.push(ar.Phase.Session,"getUnresolvedImports",{count:i.length});const o=e.getTypeChecker().getAmbientModules().map((e=>Ky(e.getName()))),s=ae(U(i,(n=>function(e,t,n,r){return G(r,t.path,(()=>{let r;return e.forEachResolvedModule((({resolvedModule:e},t)=>{e&&pw(e.extension)||za(t)||n.some((e=>e===t))||(r=_e(r,mj(t).packageName))}),t),r||Gfe}))}(e,n,o,t))));return null==(r=ar)||r.pop(),s}(this.program,this.cachedUnresolvedImportsPerFile)),this.projectService.typingsCache.enqueueInstallTypingsForProject(this,this.lastCachedUnresolvedImportsList,o)):this.lastCachedUnresolvedImportsList=void 0;const a=0===this.projectProgramVersion&&i;return i&&this.projectProgramVersion++,o&&this.markAutoImportProviderAsDirty(),a&&this.getPackageJsonAutoImportProvider(),null==(n=rr)||n.logStopUpdateGraph(),null==(r=ar)||r.pop(),!i}updateTypingFiles(e){gn(e,this.typingFiles,jt(!this.useCaseSensitiveFileNames()),pt,(e=>this.detachScriptInfoFromProject(e)))&&(this.typingFiles=e,this.resolutionCache.setFilesWithInvalidatedNonRelativeUnresolvedImports(this.cachedUnresolvedImportsPerFile),this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this))}closeWatchingTypingLocations(){this.typingWatchers&&Nx(this.typingWatchers,vx),this.typingWatchers=void 0}onTypingInstallerWatchInvoke(){this.typingWatchers.isInvoked=!0,this.projectService.updateTypingsForProject({projectName:this.getProjectName(),kind:qG})}watchTypingLocations(e){if(!e)return void(this.typingWatchers.isInvoked=!1);if(!e.length)return void this.closeWatchingTypingLocations();const t=new Map(this.typingWatchers);this.typingWatchers||(this.typingWatchers=new Map),this.typingWatchers.isInvoked=!1;const n=(e,n)=>{const r=this.toPath(e);t.delete(r),this.typingWatchers.has(r)||this.typingWatchers.set(r,"FileWatcher"===n?this.projectService.watchFactory.watchFile(e,(()=>this.typingWatchers.isInvoked?this.writeLog("TypingWatchers already invoked"):this.onTypingInstallerWatchInvoke()),2e3,this.projectService.getWatchOptions(this),vW.TypingInstallerLocationFile,this):this.projectService.watchFactory.watchDirectory(e,(e=>this.typingWatchers.isInvoked?this.writeLog("TypingWatchers already invoked"):Lo(e,".json")?ps(e,Zo(this.projectService.typingsInstaller.globalTypingsCacheLocation,"package.json"),!this.useCaseSensitiveFileNames())?this.writeLog("Ignoring package.json change at global typings location"):void this.onTypingInstallerWatchInvoke():this.writeLog("Ignoring files that are not *.json")),1,this.projectService.getWatchOptions(this),vW.TypingInstallerLocationDirectory,this))};for(const r of e){const e=Ko(r);if("package.json"!==e&&"bower.json"!==e)if(fs(this.currentDirectory,r,this.currentDirectory,!this.useCaseSensitiveFileNames())){const e=r.indexOf(ko,this.currentDirectory.length+1);n(-1!==e?r.substr(0,e):r,"DirectoryWatcher")}else fs(this.projectService.typingsInstaller.globalTypingsCacheLocation,r,this.currentDirectory,!this.useCaseSensitiveFileNames())?n(this.projectService.typingsInstaller.globalTypingsCacheLocation,"DirectoryWatcher"):n(r,"DirectoryWatcher");else n(r,"FileWatcher")}t.forEach(((e,t)=>{e.close(),this.typingWatchers.delete(t)}))}getCurrentProgram(){return this.program}removeExistingTypings(e){const t=yL(this.getCompilerOptions(),this.directoryStructureHost);return e.filter((e=>!t.includes(e)))}updateGraphWorker(){var e,t;const n=this.languageService.getCurrentProgram();Tn.assert(n===this.program),Tn.assert(!this.isClosed(),"Called update graph worker of closed project"),this.writeLog(`Starting updateGraphWorker: Project: ${this.getProjectName()}`);const r=er(),{hasInvalidatedResolutions:i,hasInvalidatedLibResolutions:o}=this.resolutionCache.createHasInvalidatedResolutions(ft,ft);this.hasInvalidatedResolutions=i,this.hasInvalidatedLibResolutions=o,this.resolutionCache.startCachingPerDirectoryResolution(),this.dirty=!1,this.updateFromProjectInProgress=!0,this.program=this.languageService.getProgram(),this.updateFromProjectInProgress=!1,null==(e=ar)||e.push(ar.Phase.Session,"finishCachingPerDirectoryResolution"),this.resolutionCache.finishCachingPerDirectoryResolution(this.program,n),null==(t=ar)||t.pop(),Tn.assert(void 0===n||void 0!==this.program);let s=!1;if(this.program&&(!n||this.program!==n&&2!==this.program.structureIsReused)){if(s=!0,n){for(const e of n.getSourceFiles()){const t=this.program.getSourceFileByPath(e.resolvedPath);(!t||e.resolvedPath===e.path&&t.resolvedPath!==e.path)&&this.detachScriptInfoFromProject(e.fileName,!!this.program.getSourceFileByPath(e.path),!0)}n.forEachResolvedProjectReference((e=>{this.program.getResolvedProjectReferenceByPath(e.sourceFile.path)||this.detachScriptInfoFromProject(e.sourceFile.fileName,void 0,!0)}))}if(this.rootFilesMap.forEach(((e,t)=>{var n;const r=this.program.getSourceFileByPath(t),i=e.info;r&&(null==(n=e.info)?void 0:n.path)!==r.resolvedPath&&(e.info=this.projectService.getScriptInfo(r.fileName),Tn.assert(e.info.isAttached(this)),null==i||i.detachFromProject(this))})),NV(this.program,this.missingFilesMap||(this.missingFilesMap=new Map),((e,t)=>this.addMissingFileWatcher(e,t))),this.generatedFilesMap){const e=this.compilerOptions.outFile;Pme(this.generatedFilesMap)?e&&this.isValidGeneratedFileWatcher(ow(e)+".d.ts",this.generatedFilesMap)||this.clearGeneratedFileWatch():e?this.clearGeneratedFileWatch():this.generatedFilesMap.forEach(((e,t)=>{const n=this.program.getSourceFileByPath(t);n&&n.resolvedPath===t&&this.isValidGeneratedFileWatcher(ov(n.fileName,this.compilerOptions,this.program),e)||(FV(e),this.generatedFilesMap.delete(t))}))}this.languageServiceEnabled&&0===this.projectService.serverMode&&this.resolutionCache.updateTypeRootsWatch()}this.projectService.verifyProgram(this),this.exportMapCache&&!this.exportMapCache.isEmpty()&&(this.exportMapCache.releaseSymbols(),this.hasAddedorRemovedFiles||n&&!this.program.structureIsReused?this.exportMapCache.clear():this.changedFilesForExportMapCache&&n&&this.program&&m_(this.changedFilesForExportMapCache,(e=>{const t=n.getSourceFileByPath(e),r=this.program.getSourceFileByPath(e);return t&&r?this.exportMapCache.onFileChanged(t,r,!!this.getTypeAcquisition().enable):(this.exportMapCache.clear(),!0)}))),this.changedFilesForExportMapCache&&this.changedFilesForExportMapCache.clear(),(this.hasAddedOrRemovedSymlinks||this.program&&!this.program.structureIsReused&&this.getCompilerOptions().preserveSymlinks)&&(this.symlinks=void 0,this.moduleSpecifierCache.clear());const a=this.externalFiles||Gfe;this.externalFiles=this.getExternalFiles(),gn(this.externalFiles,a,jt(!this.useCaseSensitiveFileNames()),(e=>{const t=this.projectService.getOrCreateScriptInfoNotOpenedByClient(e,this.currentDirectory,this.directoryStructureHost,!1);null==t||t.attachToProject(this)}),(e=>this.detachScriptInfoFromProject(e)));const c=er()-r;return this.sendPerformanceEvent("UpdateGraph",c),this.writeLog(`Finishing updateGraphWorker: Project: ${this.getProjectName()} projectStateVersion: ${this.projectStateVersion} projectProgramVersion: ${this.projectProgramVersion} structureChanged: ${s}${this.program?` structureIsReused:: ${qr[this.program.structureIsReused]}`:""} Elapsed: ${c}ms`),this.projectService.logger.isTestLogger?this.program!==n?this.print(!0,this.hasAddedorRemovedFiles,!0):this.writeLog("Same program as before"):this.hasAddedorRemovedFiles?this.print(!0,!0,!1):this.program!==n&&this.writeLog("Different program with same set of files"),this.projectService.verifyDocumentRegistry(),s}sendPerformanceEvent(e,t){this.projectService.sendPerformanceEvent(e,t)}detachScriptInfoFromProject(e,t,n){const r=this.projectService.getScriptInfo(e);r&&(r.detachFromProject(this),t||this.resolutionCache.removeResolutionsOfFile(r.path,n))}addMissingFileWatcher(e,t){var n;if(Bme(this)){const t=this.projectService.configFileExistenceInfoCache.get(e);if(null==(n=null==t?void 0:t.config)?void 0:n.projects.has(this.canonicalConfigFilePath))return hW}const r=this.projectService.watchFactory.watchFile(es(t,this.currentDirectory),((t,n)=>{Bme(this)&&this.getCachedDirectoryStructureHost().addOrDeleteFile(t,e,n),0===n&&this.missingFilesMap.has(e)&&(this.missingFilesMap.delete(e),r.close(),this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this))}),500,this.projectService.getWatchOptions(this),vW.MissingFile,this);return r}isWatchedMissingFile(e){return!!this.missingFilesMap&&this.missingFilesMap.has(e)}addGeneratedFileWatch(e,t){if(this.compilerOptions.outFile)this.generatedFilesMap||(this.generatedFilesMap=this.createGeneratedFileWatcher(e));else{const n=this.toPath(t);if(this.generatedFilesMap){if(Pme(this.generatedFilesMap))return void Tn.fail(`${this.projectName} Expected to not have --out watcher for generated file with options: ${JSON.stringify(this.compilerOptions)}`);if(this.generatedFilesMap.has(n))return}else this.generatedFilesMap=new Map;this.generatedFilesMap.set(n,this.createGeneratedFileWatcher(e))}}createGeneratedFileWatcher(e){return{generatedFilePath:this.toPath(e),watcher:this.projectService.watchFactory.watchFile(e,(()=>{this.clearSourceMapperCache(),this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this)}),2e3,this.projectService.getWatchOptions(this),vW.MissingGeneratedFile,this)}}isValidGeneratedFileWatcher(e,t){return this.toPath(e)===t.generatedFilePath}clearGeneratedFileWatch(){this.generatedFilesMap&&(Pme(this.generatedFilesMap)?FV(this.generatedFilesMap):Nx(this.generatedFilesMap,FV),this.generatedFilesMap=void 0)}getScriptInfoForNormalizedPath(e){const t=this.projectService.getScriptInfoForPath(this.toPath(e));return t&&!t.isAttached(this)?Jfe.ThrowProjectDoesNotContainDocument(e,this):t}getScriptInfo(e){return this.projectService.getScriptInfo(e)}filesToString(e){return this.filesToStringWorker(e,!0,!1)}filesToStringWorker(e,t,n){if(this.isInitialLoadPending())return"\tFiles (0) InitialLoadPending\n";if(!this.program)return"\tFiles (0) NoProgram\n";const r=this.program.getSourceFiles();let i=`\tFiles (${r.length})\n`;if(e){for(const e of r)i+=`\t${e.fileName}${n?` ${e.version} ${JSON.stringify(e.text)}`:""}\n`;t&&(i+="\n\n",cW(this.program,(e=>i+=`\t${e}\n`)))}return i}print(e,t,n){var r;this.writeLog(`Project '${this.projectName}' (${Cme[this.projectKind]})`),this.writeLog(this.filesToStringWorker(e&&this.projectService.logger.hasLevel(3),t&&this.projectService.logger.hasLevel(3),n&&this.projectService.logger.hasLevel(3))),this.writeLog("-----------------------------------------------"),this.autoImportProviderHost&&this.autoImportProviderHost.print(!1,!1,!1),null==(r=this.noDtsResolutionProject)||r.print(!1,!1,!1)}setCompilerOptions(e){var t;if(e){e.allowNonTsExtensions=!0;const n=this.compilerOptions;this.compilerOptions=e,this.setInternalCompilerOptionsForEmittingJsFiles(),null==(t=this.noDtsResolutionProject)||t.setCompilerOptions(this.getCompilerOptionsForNoDtsResolutionProject()),l_(n,e)&&(this.cachedUnresolvedImportsPerFile.clear(),this.lastCachedUnresolvedImportsList=void 0,this.resolutionCache.onChangesAffectModuleResolution(),this.moduleSpecifierCache.clear()),this.markAsDirty()}}setWatchOptions(e){this.watchOptions=e}getWatchOptions(){return this.watchOptions}setTypeAcquisition(e){e&&(this.typeAcquisition=this.removeLocalTypingsFromTypeAcquisition(e))}getTypeAcquisition(){return this.typeAcquisition||{}}getChangesSinceVersion(e,t){var n,r;const i=t?e=>Ke(e.entries(),(([e,t])=>({fileName:e,isSourceOfProjectReferenceRedirect:t}))):e=>Ke(e.keys());this.isInitialLoadPending()||Dhe(this);const o={projectName:this.getProjectName(),version:this.projectProgramVersion,isInferred:Ume(this),options:this.getCompilationSettings(),languageServiceDisabled:!this.languageServiceEnabled,lastFileExceededProgramSize:this.lastFileExceededProgramSize},s=this.updatedFileNames;if(this.updatedFileNames=void 0,this.lastReportedFileNames&&e===this.lastReportedVersion){if(this.projectProgramVersion===this.lastReportedVersion&&!s)return{info:o,projectErrors:this.getGlobalProjectErrors()};const e=this.lastReportedFileNames,r=(null==(n=this.externalFiles)?void 0:n.map((e=>({fileName:Zfe(e),isSourceOfProjectReferenceRedirect:!1}))))||Gfe,a=He(this.getFileNamesWithRedirectInfo(!!t).concat(r),(e=>e.fileName),(e=>e.isSourceOfProjectReferenceRedirect)),c=new Map,l=new Map,u=s?Ke(s.keys()):[],d=[];return f_(a,((n,r)=>{e.has(r)?t&&n!==e.get(r)&&d.push({fileName:r,isSourceOfProjectReferenceRedirect:n}):c.set(r,n)})),f_(e,((e,t)=>{a.has(t)||l.set(t,e)})),this.lastReportedFileNames=a,this.lastReportedVersion=this.projectProgramVersion,{info:o,changes:{added:i(c),removed:i(l),updated:t?u.map((e=>({fileName:e,isSourceOfProjectReferenceRedirect:this.isSourceOfProjectReferenceRedirect(e)}))):u,updatedRedirects:t?d:void 0},projectErrors:this.getGlobalProjectErrors()}}{const e=this.getFileNamesWithRedirectInfo(!!t),n=(null==(r=this.externalFiles)?void 0:r.map((e=>({fileName:Zfe(e),isSourceOfProjectReferenceRedirect:!1}))))||Gfe,i=e.concat(n);return this.lastReportedFileNames=He(i,(e=>e.fileName),(e=>e.isSourceOfProjectReferenceRedirect)),this.lastReportedVersion=this.projectProgramVersion,{info:o,files:t?i:i.map((e=>e.fileName)),projectErrors:this.getGlobalProjectErrors()}}}removeRoot(e){this.rootFilesMap.delete(e.path)}isSourceOfProjectReferenceRedirect(e){return!!this.program&&this.program.isSourceOfProjectReferenceRedirect(e)}getGlobalPluginSearchPaths(){return[...this.projectService.pluginProbeLocations,Zo(this.projectService.getExecutingFilePath(),"../../..")]}enableGlobalPlugins(e){if(!this.projectService.globalPlugins.length)return;const t=this.projectService.host;if(!t.require&&!t.importPlugin)return void this.projectService.logger.info("Plugins were requested but not running in environment that supports 'require'. Nothing will be loaded");const n=this.getGlobalPluginSearchPaths();for(const r of this.projectService.globalPlugins)r&&(e.plugins&&e.plugins.some((e=>e.name===r))||(this.projectService.logger.info(`Loading global plugin ${r}`),this.enablePlugin({name:r,global:!0},n)))}enablePlugin(e,t){this.projectService.requestEnablePlugin(this,e,t)}enableProxy(e,t){try{if("function"!=typeof e)return void this.projectService.logger.info(`Skipped loading plugin ${t.name} because it did not expose a proper factory function`);const n={config:t,project:this,languageService:this.languageService,languageServiceHost:this,serverHost:this.projectService.host,session:this.projectService.session},r=e({typescript:Ife}),i=r.create(n);for(const e of Object.keys(this.languageService))e in i||(this.projectService.logger.info(`Plugin activation warning: Missing proxied method ${e} in created LS. Patching.`),i[e]=this.languageService[e]);this.projectService.logger.info("Plugin validation succeeded"),this.languageService=i,this.plugins.push({name:t.name,module:r})}catch(Mge){this.projectService.logger.info(`Plugin activation failed: ${Mge}`)}}onPluginConfigurationChanged(e,t){this.plugins.filter((t=>t.name===e)).forEach((e=>{e.module.onConfigurationChanged&&e.module.onConfigurationChanged(t)}))}refreshDiagnostics(){this.projectService.sendProjectsUpdatedInBackgroundEvent()}getPackageJsonsVisibleToFile(e,t){return 0!==this.projectService.serverMode?Gfe:this.projectService.getPackageJsonsVisibleToFile(e,this,t)}getNearestAncestorDirectoryWithPackageJson(e){return this.projectService.getNearestAncestorDirectoryWithPackageJson(e)}getPackageJsonsForAutoImport(e){return this.getPackageJsonsVisibleToFile(Zo(this.currentDirectory,SK),e)}getPackageJsonCache(){return this.projectService.packageJsonCache}getCachedExportInfoMap(){return this.exportMapCache||(this.exportMapCache=C0(this))}clearCachedExportInfoMap(){var e;null==(e=this.exportMapCache)||e.clear()}getModuleSpecifierCache(){return this.moduleSpecifierCache}includePackageJsonAutoImports(){return 0!==this.projectService.includePackageJsonAutoImports()&&this.languageServiceEnabled&&!Q$(this.currentDirectory)&&this.isDefaultProjectForOpenFiles()?this.projectService.includePackageJsonAutoImports():0}getHostForAutoImportProvider(){var e,t;return this.program?{fileExists:this.program.fileExists,directoryExists:this.program.directoryExists,realpath:this.program.realpath||(null==(e=this.projectService.host.realpath)?void 0:e.bind(this.projectService.host)),getCurrentDirectory:this.getCurrentDirectory.bind(this),readFile:this.projectService.host.readFile.bind(this.projectService.host),getDirectories:this.projectService.host.getDirectories.bind(this.projectService.host),trace:null==(t=this.projectService.host.trace)?void 0:t.bind(this.projectService.host),useCaseSensitiveFileNames:this.program.useCaseSensitiveFileNames(),readDirectory:this.projectService.host.readDirectory.bind(this.projectService.host)}:this.projectService.host}getPackageJsonAutoImportProvider(){var e,t,n;if(!1===this.autoImportProviderHost)return;if(0!==this.projectService.serverMode)return void(this.autoImportProviderHost=!1);if(this.autoImportProviderHost)return Dhe(this.autoImportProviderHost),this.autoImportProviderHost.isEmpty()?(this.autoImportProviderHost.close(),void(this.autoImportProviderHost=void 0)):this.autoImportProviderHost.getCurrentProgram();const r=this.includePackageJsonAutoImports();if(r){null==(e=ar)||e.push(ar.Phase.Session,"getPackageJsonAutoImportProvider");const i=er();if(this.autoImportProviderHost=Lme.create(r,this,this.getHostForAutoImportProvider(),this.documentRegistry),this.autoImportProviderHost)return Dhe(this.autoImportProviderHost),this.sendPerformanceEvent("CreatePackageJsonAutoImportProvider",er()-i),null==(t=ar)||t.pop(),this.autoImportProviderHost.getCurrentProgram();null==(n=ar)||n.pop()}}isDefaultProjectForOpenFiles(){return!!f_(this.projectService.openFiles,((e,t)=>this.projectService.tryGetDefaultProjectForFile(this.projectService.getScriptInfoForPath(t))===this))}watchNodeModulesForPackageJsonChanges(e){return this.projectService.watchPackageJsonsInNodeModules(e,this)}getIncompleteCompletionsCache(){return this.projectService.getIncompleteCompletionsCache()}getNoDtsResolutionProject(e){return Tn.assert(0===this.projectService.serverMode),this.noDtsResolutionProject||(this.noDtsResolutionProject=new Fme(this.projectService,this.documentRegistry,this.getCompilerOptionsForNoDtsResolutionProject(),this.currentDirectory)),this.noDtsResolutionProject.rootFile!==e&&(this.projectService.setFileNamesOfAutpImportProviderOrAuxillaryProject(this.noDtsResolutionProject,[e]),this.noDtsResolutionProject.rootFile=e),this.noDtsResolutionProject}runWithTemporaryFileUpdate(e,t,n){var r,i,o,s;const a=this.program,c=Tn.checkDefined(null==(r=this.program)?void 0:r.getSourceFile(e),"Expected file to be part of program"),l=Tn.checkDefined(c.getText());null==(i=this.getScriptInfo(e))||i.editContent(0,l.length,t),this.updateGraph();try{n(this.program,a,null==(o=this.program)?void 0:o.getSourceFile(e))}finally{null==(s=this.getScriptInfo(e))||s.editContent(0,this.program.getSourceFile(e).getText().length,l)}}getCompilerOptionsForNoDtsResolutionProject(){return{...this.getCompilerOptions(),noDtsResolution:!0,allowJs:!0,maxNodeModuleJsDepth:3,diagnostics:!1,skipLibCheck:!0,sourceMap:!1,types:_,lib:_,noLib:!0}}};var Ome=class extends Mme{constructor(e,t,n,r,i,o,s){super(e.newInferredProjectName(),0,e,t,void 0,void 0,n,!1,r,e.host,o),this._isJsInferredProject=!1,this.typeAcquisition=s,this.projectRootPath=i&&e.toCanonicalFileName(i),i||e.useSingleInferredProject||(this.canonicalCurrentDirectory=e.toCanonicalFileName(this.currentDirectory)),this.enableGlobalPlugins(this.getCompilerOptions())}toggleJsInferredProject(e){e!==this._isJsInferredProject&&(this._isJsInferredProject=e,this.setCompilerOptions())}setCompilerOptions(e){if(!e&&!this.getCompilationSettings())return;const t=EZ(e||this.getCompilationSettings());this._isJsInferredProject&&"number"!=typeof t.maxNodeModuleJsDepth?t.maxNodeModuleJsDepth=2:this._isJsInferredProject||(t.maxNodeModuleJsDepth=void 0),t.allowJs=!0,super.setCompilerOptions(t)}addRoot(e){Tn.assert(e.isScriptOpen()),this.projectService.startWatchingConfigFilesForInferredProjectRoot(e),!this._isJsInferredProject&&e.isJavaScript()?this.toggleJsInferredProject(!0):this.isOrphan()&&this._isJsInferredProject&&!e.isJavaScript()&&this.toggleJsInferredProject(!1),super.addRoot(e)}removeRoot(e){this.projectService.stopWatchingConfigFilesForScriptInfo(e),super.removeRoot(e),!this.isOrphan()&&this._isJsInferredProject&&e.isJavaScript()&&T(this.getRootScriptInfos(),(e=>!e.isJavaScript()))&&this.toggleJsInferredProject(!1)}isOrphan(){return!this.hasRoots()}isProjectWithSingleRoot(){return!this.projectRootPath&&!this.projectService.useSingleInferredProject||1===this.getRootScriptInfos().length}close(){h(this.getRootScriptInfos(),(e=>this.projectService.stopWatchingConfigFilesForScriptInfo(e))),super.close()}getTypeAcquisition(){return this.typeAcquisition||{enable:Ame(this),include:_,exclude:_}}},Fme=class extends Mme{constructor(e,t,n,r){super(e.newAuxiliaryProjectName(),4,e,t,!1,void 0,n,!1,void 0,e.host,r)}isOrphan(){return!0}scheduleInvalidateResolutionsOfFailedLookupLocations(){}},Rme=class e extends Mme{constructor(e,t,n,r){super(e.projectService.newAutoImportProviderProjectName(),3,e.projectService,n,!1,void 0,r,!1,e.getWatchOptions(),e.projectService.host,e.currentDirectory),this.hostProject=e,this.rootFileNames=t,this.useSourceOfProjectReferenceRedirect=tt(this.hostProject,this.hostProject.useSourceOfProjectReferenceRedirect),this.getParsedCommandLine=tt(this.hostProject,this.hostProject.getParsedCommandLine)}static getRootFileNames(e,t,n,r){var i,o;if(!e)return _;const s=t.getCurrentProgram();if(!s)return _;const a=er();let c,l;const u=Zo(t.currentDirectory,SK),d=t.getPackageJsonsForAutoImport(Zo(t.currentDirectory,u));for(const _ of d)null==(i=_.dependencies)||i.forEach(((e,t)=>y(t))),null==(o=_.peerDependencies)||o.forEach(((e,t)=>y(t)));let p=0;if(c){const i=t.getSymlinkCache();for(const o of Ke(c.keys())){if(2===e&&p>this.maxDependencies)return t.log(`AutoImportProviderProject: attempted to add more than ${this.maxDependencies} dependencies. Aborting.`),_;const a=gL(o,t.currentDirectory,r,n,s.getModuleResolutionCache());if(a){const e=v(a,s,i);if(e){p+=g(e);continue}}if(!h([t.currentDirectory,t.getGlobalTypingsCacheLocation()],(e=>{if(e){const t=gL(`@types/${o}`,e,r,n,s.getModuleResolutionCache());if(t){const e=v(t,s,i);return p+=g(e),!0}}}))&&(a&&r.allowJs&&r.maxNodeModuleJsDepth)){const e=v(a,s,i,!0);p+=g(e)}}}const f=s.getResolvedProjectReferences();let m=0;return(null==f?void 0:f.length)&&t.projectService.getHostPreferences().includeCompletionsForModuleExports&&f.forEach((e=>{if(null==e?void 0:e.commandLine.options.outFile)m+=g(b([cw(e.commandLine.options.outFile,".d.ts")]));else if(e){const n=St((()=>oV(e.commandLine,!t.useCaseSensitiveFileNames())));m+=g(b(J(e.commandLine.fileNames,(r=>lO(r)||Lo(r,".json")||s.getSourceFile(r)?void 0:Zq(r,e.commandLine,!t.useCaseSensitiveFileNames(),n)))))}})),(null==l?void 0:l.size)&&t.log(`AutoImportProviderProject: found ${l.size} root files in ${p} dependencies ${m} referenced projects in ${er()-a} ms`),l?Ke(l.values()):_;function g(e){return(null==e?void 0:e.length)?(l??(l=new Set),e.forEach((e=>l.add(e))),1):0}function y(e){cn(e,"@types/")||(c||(c=new Set)).add(e)}function v(e,i,o,s){var a;const c=sj(e,r,n,i.getModuleResolutionCache(),s);if(c){const r=null==(a=n.realpath)?void 0:a.call(n,e.packageDirectory),i=r?t.toPath(r):void 0,s=i&&i!==t.toPath(e.packageDirectory);return s&&o.setSymlinkedDirectory(e.packageDirectory,{real:os(r),realPath:os(i)}),b(c,s?t=>t.replace(e.packageDirectory,r):void 0)}}function b(e,t){return J(e,(e=>{const n=t?t(e):e;if(!(s.getSourceFile(n)||t&&s.getSourceFile(e)))return n}))}}static create(t,n,r,i){if(0===t)return;const o={...n.getCompilerOptions(),...this.compilerOptionsOverrides},s=this.getRootFileNames(t,n,r,o);return s.length?new e(n,s,i,o):void 0}isEmpty(){return!$(this.rootFileNames)}isOrphan(){return!0}updateGraph(){let t=this.rootFileNames;t||(t=e.getRootFileNames(this.hostProject.includePackageJsonAutoImports(),this.hostProject,this.hostProject.getHostForAutoImportProvider(),this.getCompilationSettings())),this.projectService.setFileNamesOfAutpImportProviderOrAuxillaryProject(this,t),this.rootFileNames=t;const n=this.getCurrentProgram(),r=super.updateGraph();return n&&n!==this.getCurrentProgram()&&this.hostProject.clearCachedExportInfoMap(),r}scheduleInvalidateResolutionsOfFailedLookupLocations(){}hasRoots(){var e;return!!(null==(e=this.rootFileNames)?void 0:e.length)}markAsDirty(){this.rootFileNames=void 0,super.markAsDirty()}getScriptFileNames(){return this.rootFileNames||_}getLanguageService(){throw new Error("AutoImportProviderProject language service should never be used. To get the program, use `project.getCurrentProgram()`.")}onAutoImportProviderSettingsChanged(){throw new Error("AutoImportProviderProject is an auto import provider; use `markAsDirty()` instead.")}onPackageJsonChange(){throw new Error("package.json changes should be notified on an AutoImportProvider's host project")}getHostForAutoImportProvider(){throw new Error("AutoImportProviderProject cannot provide its own host; use `hostProject.getModuleResolutionHostForAutomImportProvider()` instead.")}getProjectReferences(){return this.hostProject.getProjectReferences()}includePackageJsonAutoImports(){return 0}getSymlinkCache(){return this.hostProject.getSymlinkCache()}getModuleResolutionCache(){var e;return null==(e=this.hostProject.getCurrentProgram())?void 0:e.getModuleResolutionCache()}};Rme.maxDependencies=10,Rme.compilerOptionsOverrides={diagnostics:!1,skipLibCheck:!0,sourceMap:!1,types:_,lib:_,noLib:!0};var Lme=Rme,jme=class extends Mme{constructor(e,t,n,r,i,o){super(e,1,n,r,!1,void 0,{},!1,void 0,i,Vo(e)),this.canonicalConfigFilePath=t,this.openFileWatchTriggered=new Map,this.canConfigFileJsonReportNoInputFiles=!1,this.isInitialLoadPending=mt,this.sendLoadingProjectFinish=!1,this.pendingUpdateLevel=2,this.pendingUpdateReason=o}setCompilerHost(e){this.compilerHost=e}getCompilerHost(){return this.compilerHost}useSourceOfProjectReferenceRedirect(){return this.languageServiceEnabled}getParsedCommandLine(e){const t=ts(e),n=this.projectService.toCanonicalFileName(t);let r=this.projectService.configFileExistenceInfoCache.get(n);return r||this.projectService.configFileExistenceInfoCache.set(n,r={exists:this.projectService.host.fileExists(t)}),this.projectService.ensureParsedConfigUptoDate(t,n,r,this),this.languageServiceEnabled&&0===this.projectService.serverMode&&this.projectService.watchWildcards(t,r,this),r.exists?r.config.parsedCommandLine:void 0}onReleaseParsedCommandLine(e){this.releaseParsedConfig(this.projectService.toCanonicalFileName(ts(e)))}releaseParsedConfig(e){this.projectService.stopWatchingWildCards(e,this),this.projectService.releaseParsedConfig(e,this)}updateGraph(){if(this.deferredClose)return!1;const e=this.dirty;this.isInitialLoadPending=ft;const t=this.pendingUpdateLevel;let n;switch(this.pendingUpdateLevel=0,t){case 1:this.openFileWatchTriggered.clear(),n=this.projectService.reloadFileNamesOfConfiguredProject(this);break;case 2:this.openFileWatchTriggered.clear();const e=Tn.checkDefined(this.pendingUpdateReason);this.projectService.reloadConfiguredProject(this,e),n=!0;break;default:n=super.updateGraph()}return this.compilerHost=void 0,this.projectService.sendProjectLoadingFinishEvent(this),this.projectService.sendProjectTelemetry(this),2!==t&&(!n||e&&this.triggerFileForConfigFileDiag&&2!==this.getCurrentProgram().structureIsReused)?this.triggerFileForConfigFileDiag||this.projectService.sendConfigFileDiagEvent(this,void 0,!1):this.triggerFileForConfigFileDiag=void 0,n}getCachedDirectoryStructureHost(){return this.directoryStructureHost}getConfigFilePath(){return this.getProjectName()}getProjectReferences(){return this.projectReferences}updateReferences(e){this.projectReferences=e,this.potentialProjectReferences=void 0}setPotentialProjectReference(e){Tn.assert(this.isInitialLoadPending()),(this.potentialProjectReferences||(this.potentialProjectReferences=new Set)).add(e)}getResolvedProjectReferenceToRedirect(e){const t=this.getCurrentProgram();return t&&t.getResolvedProjectReferenceToRedirect(e)}forEachResolvedProjectReference(e){var t;return null==(t=this.getCurrentProgram())?void 0:t.forEachResolvedProjectReference(e)}enablePluginsWithOptions(e){var t;if(this.plugins.length=0,!(null==(t=e.plugins)?void 0:t.length)&&!this.projectService.globalPlugins.length)return;const n=this.projectService.host;if(!n.require&&!n.importPlugin)return void this.projectService.logger.info("Plugins were requested but not running in environment that supports 'require'. Nothing will be loaded");const r=this.getGlobalPluginSearchPaths();if(this.projectService.allowLocalPluginLoads){const e=Vo(this.canonicalConfigFilePath);this.projectService.logger.info(`Local plugin loading enabled; adding ${e} to search paths`),r.unshift(e)}if(e.plugins)for(const i of e.plugins)this.enablePlugin(i,r);return this.enableGlobalPlugins(e)}getGlobalProjectErrors(){return M(this.projectErrors,(e=>!e.file))||Gfe}getAllProjectErrors(){return this.projectErrors||Gfe}setProjectErrors(e){this.projectErrors=e}close(){this.projectService.configFileExistenceInfoCache.forEach(((e,t)=>this.releaseParsedConfig(t))),this.projectErrors=void 0,this.openFileWatchTriggered.clear(),this.compilerHost=void 0,super.close()}markAsDirty(){this.deferredClose||super.markAsDirty()}isSolution(){return 0===this.getRootFilesMap().size&&!this.canConfigFileJsonReportNoInputFiles}isOrphan(){return!!this.deferredClose}getEffectiveTypeRoots(){return uL(this.getCompilationSettings(),this)||[]}updateErrorOnNoInputFiles(e){fR(e,this.getConfigFilePath(),this.getCompilerOptions().configFile.configFileSpecs,this.projectErrors,this.canConfigFileJsonReportNoInputFiles)}},zme=class extends Mme{constructor(e,t,n,r,i,o,s,a){super(e,2,t,n,!0,i,r,o,a,t.host,Vo(s||Qo(e))),this.externalProjectName=e,this.compileOnSaveEnabled=o,this.excludedFiles=[],this.enableGlobalPlugins(this.getCompilerOptions())}updateGraph(){const e=super.updateGraph();return this.projectService.sendProjectTelemetry(this),e}getExcludedFiles(){return this.excludedFiles}};function Ume(e){return 0===e.projectKind}function Bme(e){return 1===e.projectKind}function qme(e){return 2===e.projectKind}function Vme(e){return 3===e.projectKind||4===e.projectKind}function Kme(e){return Bme(e)&&!!e.deferredClose}var Jme=20971520,Wme=4194304,Hme="projectsUpdatedInBackground",Gme="projectLoadingStart",Qme="projectLoadingFinish",Yme="largeFileReferenced",Zme="configFileDiag",Xme="projectLanguageServiceState",$me="projectInfo",ehe="openFileInfo",the="createFileWatcher",nhe="createDirectoryWatcher",rhe="closeFileWatcher",ihe="*ensureProjectForOpenFiles*";function ohe(e){const t=new Map;for(const n of e)if("object"==typeof n.type){const e=n.type;e.forEach((e=>{Tn.assert("number"==typeof e)})),t.set(n.name,e)}return t}var she=ohe(DO),ahe=ohe(EO),che=new Map(Object.entries({none:0,block:1,smart:2})),lhe={jquery:{match:/jquery(-[\d.]+)?(\.intellisense)?(\.min)?\.js$/i,types:["jquery"]},WinJS:{match:/^(.*\/winjs-[.\d]+)\/js\/base\.js$/i,exclude:[["^",1,"/.*"]],types:["winjs"]},Kendo:{match:/^(.*\/kendo(-ui)?)\/kendo\.all(\.min)?\.js$/i,exclude:[["^",1,"/.*"]],types:["kendo-ui"]},"Office Nuget":{match:/^(.*\/office\/1)\/excel-\d+\.debug\.js$/i,exclude:[["^",1,"/.*"]],types:["office"]},References:{match:/^(.*\/_references\.js)$/i,exclude:[["^",1,"$"]]}};function uhe(e){return lt(e.indentStyle)&&(e.indentStyle=che.get(e.indentStyle.toLowerCase()),Tn.assert(void 0!==e.indentStyle)),e}function dhe(e){return she.forEach(((t,n)=>{const r=e[n];lt(r)&&(e[n]=t.get(r.toLowerCase()))})),e}function _he(e,t){let n,r;return EO.forEach((i=>{const o=e[i.name];if(void 0===o)return;const s=ahe.get(i.name);(n||(n={}))[i.name]=s?lt(o)?s.get(o.toLowerCase()):o:ER(i,o,t||"",r||(r=[]))})),n&&{watchOptions:n,errors:r}}function phe(e){let t;return JO.forEach((n=>{const r=e[n.name];void 0!==r&&((t||(t={}))[n.name]=r)})),t}function fhe(e){return lt(e)?mhe(e):e}function mhe(e){switch(e){case"JS":return 1;case"JSX":return 2;case"TS":return 3;case"TSX":return 4;default:return 0}}function hhe(e){const{lazyConfiguredProjectsFromExternalProject:t,...n}=e;return n}var ghe={getFileName:e=>e,getScriptKind:(e,t)=>{let n;if(t){const r=Wo(e);r&&$(t,(e=>e.extension===r&&(n=e.scriptKind,!0)))}return n},hasMixedContent:(e,t)=>$(t,(t=>t.isMixedContent&&Lo(e,t.extension)))},yhe={getFileName:e=>e.fileName,getScriptKind:e=>fhe(e.scriptKind),hasMixedContent:e=>!!e.hasMixedContent};function vhe(e,t){for(const n of t)if(n.getProjectName()===e)return n}var bhe={close:pt};function xhe(e,t){if(t&&!She(e))return t.get(e.path)}function She(e){return!!e.configFileInfo}var The=(e=>(e[e.Find=0]="Find",e[e.Create=1]="Create",e[e.Reload=2]="Reload",e))(The||{});function whe(e,t,n,r,i,o,s,a){var c;const l=null==(c=e.getCurrentProgram())?void 0:c.getResolvedProjectReferences();if(!l)return;const u=t?e.getResolvedProjectReferenceToRedirect(t):void 0;if(u){const t=Zfe(u.sourceFile.fileName),n=e.projectService.findConfiguredProjectByProjectName(t,o);if(n){const e=_(n);if(e)return e}else if(0!==r){const t=khe(l,e.getCompilerOptions(),((e,t)=>u===e?d(e,t):void 0),r,e.projectService);if(t)return t}}return khe(l,e.getCompilerOptions(),((e,t)=>u!==e?d(e,t):void 0),r,e.projectService);function d(t,c){const l=e.projectService.findCreateOrReloadConfiguredProject(Zfe(t.sourceFile.fileName),c,i,o,s,a);return l&&(c===r?n(l.project,l.sentConfigFileDiag):_(l.project))}function _(e){let t=!1;switch(r){case 1:t=Mhe(e,s);break;case 2:t=e.projectService.reloadConfiguredProjectClearingSemanticCache(e,i,a);break;case 0:break;default:Tn.assertNever(r)}const o=n(e,t);if(o)return o}}function khe(e,t,n,r,i,o){const s=t.disableReferencedProjectLoad?0:r;return h(e,(e=>{if(!e)return;const t=Zfe(e.sourceFile.fileName),r=i.toCanonicalFileName(t),a=null==o?void 0:o.get(r);if(void 0!==a&&a>=s)return;const c=n(e,s);return c||((o||(o=new Map)).set(r,s),e.references&&khe(e.references,e.commandLine.options,n,s,i,o))}))}function Ehe(e,t){return e.potentialProjectReferences&&m_(e.potentialProjectReferences,t)}function Che(e,t,n){const r=n&&e.projectService.configuredProjects.get(n);return r&&t(r)}function Nhe(e,t){return function(e,t,n,r){return e.getCurrentProgram()?e.forEachResolvedProjectReference(t):e.isInitialLoadPending()?Ehe(e,r):h(e.getProjectReferences(),n)}(e,(n=>Che(e,t,n.sourceFile.path)),(n=>Che(e,t,e.toPath(UK(n)))),(n=>Che(e,t,n)))}function Ahe(e,t){return`${lt(t)?`Config: ${t} `:t?`Project: ${t.getProjectName()} `:""}WatchType: ${e}`}function Ihe(e){return!e.isScriptOpen()&&void 0!==e.mTime}function Dhe(e){return e.invalidateResolutionsOfFailedLookupLocations(),e.dirty&&!e.updateGraph()}function Phe(e,t,n){if(!n&&(e.invalidateResolutionsOfFailedLookupLocations(),!e.dirty))return!1;e.triggerFileForConfigFileDiag=t;const r=e.pendingUpdateLevel;if(e.updateGraph(),!e.triggerFileForConfigFileDiag&&!n)return 2===r;const i=e.projectService.sendConfigFileDiagEvent(e,t,n);return e.triggerFileForConfigFileDiag=void 0,i}function Mhe(e,t){if(t){if(Phe(e,t,!1))return!0}else Dhe(e);return!1}function Ohe(e){return`Creating possible configured project for ${e.fileName} to open`}function Fhe(e){return`User requested reload projects: ${e}`}function Rhe(e){Bme(e)&&(e.projectOptions=!0)}function Lhe(e){let t=1;return()=>e(t++)}function jhe(){return{idToCallbacks:new Map,pathToId:new Map}}function zhe(e,t){if(!t||!e.eventHandler||!e.session)return;const n=jhe(),r=jhe(),i=jhe();let o=1;return e.session.addProtocolHandler("watchChange",(e=>{var t;return at(t=e.arguments)?t.forEach(a):a(t),{responseRequired:!1}})),{watchFile:function(e,t){return s(n,e,t,(t=>({eventName:the,data:{id:t,path:e}})))},watchDirectory:function(e,t,n){return s(n?i:r,e,t,(t=>({eventName:nhe,data:{id:t,path:e,recursive:!!n,ignoreUpdate:!e.endsWith("/node_modules")||void 0}})))},getCurrentDirectory:()=>e.host.getCurrentDirectory(),useCaseSensitiveFileNames:e.host.useCaseSensitiveFileNames};function s({pathToId:t,idToCallbacks:n},r,i,s){const a=e.toPath(r);let c=t.get(a);c||t.set(a,c=o++);let l=n.get(c);return l||(n.set(c,l=new Set),e.eventHandler(s(c))),l.add(i),{close(){const r=n.get(c);(null==r?void 0:r.delete(i))&&(r.size||(n.delete(c),t.delete(a),e.eventHandler({eventName:rhe,data:{id:c}})))}}}function a({id:e,created:t,deleted:n,updated:r}){c(e,t,0),c(e,n,2),c(e,r,1)}function c(e,t,o){(null==t?void 0:t.length)&&(l(n,e,t,((e,t)=>e(t,o))),l(r,e,t,((e,t)=>e(t))),l(i,e,t,((e,t)=>e(t))))}function l(e,t,n,r){var i;null==(i=e.idToCallbacks.get(t))||i.forEach((e=>{n.forEach((t=>r(e,Qo(t))))}))}}var Uhe=class e{constructor(e){var t;this.filenameToScriptInfo=new Map,this.nodeModulesWatchers=new Map,this.filenameToScriptInfoVersion=new Map,this.allJsFilesForOpenFileTelemetry=new Map,this.externalProjectToConfiguredProjectMap=new Map,this.externalProjects=[],this.inferredProjects=[],this.configuredProjects=new Map,this.newInferredProjectName=Lhe(nme),this.newAutoImportProviderProjectName=Lhe(rme),this.newAuxiliaryProjectName=Lhe(ime),this.openFiles=new Map,this.configFileForOpenFiles=new Map,this.rootOfInferredProjects=new Set,this.openFilesWithNonRootedDiskPath=new Map,this.compilerOptionsForInferredProjectsPerProjectRoot=new Map,this.watchOptionsForInferredProjectsPerProjectRoot=new Map,this.typeAcquisitionForInferredProjectsPerProjectRoot=new Map,this.projectToSizeMap=new Map,this.configFileExistenceInfoCache=new Map,this.safelist=lhe,this.legacySafelist=new Map,this.pendingProjectUpdates=new Map,this.pendingEnsureProjectForOpenFiles=!1,this.seenProjects=new Map,this.sharedExtendedConfigFileWatchers=new Map,this.extendedConfigCache=new Map,this.baseline=pt,this.verifyDocumentRegistry=pt,this.verifyProgram=pt,this.onProjectCreation=pt,this.host=e.host,this.logger=e.logger,this.cancellationToken=e.cancellationToken,this.useSingleInferredProject=e.useSingleInferredProject,this.useInferredProjectPerProjectRoot=e.useInferredProjectPerProjectRoot,this.typingsInstaller=e.typingsInstaller||wme,this.throttleWaitMilliseconds=e.throttleWaitMilliseconds,this.eventHandler=e.eventHandler,this.suppressDiagnosticEvents=e.suppressDiagnosticEvents,this.globalPlugins=e.globalPlugins||Gfe,this.pluginProbeLocations=e.pluginProbeLocations||Gfe,this.allowLocalPluginLoads=!!e.allowLocalPluginLoads,this.typesMapLocation=void 0===e.typesMapLocation?Zo(Vo(this.getExecutingFilePath()),"typesMap.json"):e.typesMapLocation,this.session=e.session,this.jsDocParsingMode=e.jsDocParsingMode,void 0!==e.serverMode?this.serverMode=e.serverMode:this.serverMode=0,this.host.realpath&&(this.realpathToScriptInfos=nt()),this.currentDirectory=Zfe(this.host.getCurrentDirectory()),this.toCanonicalFileName=rn(this.host.useCaseSensitiveFileNames),this.globalCacheLocationDirectoryPath=this.typingsInstaller.globalTypingsCacheLocation?os(this.toPath(this.typingsInstaller.globalTypingsCacheLocation)):void 0,this.throttledOperations=new sme(this.host,this.logger),this.typesMapLocation?this.loadTypesMap():this.logger.info("No types map provided; using the default"),this.typingsInstaller.attach(this),this.typingsCache=new Eme(this.typingsInstaller),this.hostConfiguration={formatCodeOptions:NQ(this.host.newLine),preferences:bQ,hostInfo:"Unknown host",extraFileExtensions:[]},this.documentRegistry=X0(this.host.useCaseSensitiveFileNames,this.currentDirectory,this.jsDocParsingMode,this);const n=this.logger.hasLevel(3)?2:this.logger.loggingEnabled()?1:0,r=0!==n?e=>this.logger.info(e):pt;this.packageJsonCache=Jhe(this),this.watchFactory=0!==this.serverMode?{watchFile:gW,watchDirectory:gW}:MV(zhe(this,e.canUseWatchEvents)||this.host,n,r,Ahe),null==(t=e.incrementalVerifier)||t.call(e,this)}toPath(e){return rs(e,this.currentDirectory,this.toCanonicalFileName)}getExecutingFilePath(){return this.getNormalizedAbsolutePath(this.host.getExecutingFilePath())}getNormalizedAbsolutePath(e){return es(e,this.host.getCurrentDirectory())}setDocument(e,t,n){Tn.checkDefined(this.getScriptInfoForPath(t)).cacheSourceFile={key:e,sourceFile:n}}getDocument(e,t){const n=this.getScriptInfoForPath(t);return n&&n.cacheSourceFile&&n.cacheSourceFile.key===e?n.cacheSourceFile.sourceFile:void 0}ensureInferredProjectsUpToDate_TestOnly(){this.ensureProjectStructuresUptoDate()}getCompilerOptionsForInferredProjects(){return this.compilerOptionsForInferredProjects}onUpdateLanguageServiceStateForProject(e,t){if(!this.eventHandler)return;const n={eventName:Xme,data:{project:e,languageServiceEnabled:t}};this.eventHandler(n)}loadTypesMap(){try{const e=this.host.readFile(this.typesMapLocation);if(void 0===e)return void this.logger.info(`Provided types map file "${this.typesMapLocation}" doesn't exist`);const t=JSON.parse(e);for(const n of Object.keys(t.typesMap))t.typesMap[n].match=new RegExp(t.typesMap[n].match,"i");this.safelist=t.typesMap;for(const n in t.simpleMap)je(t.simpleMap,n)&&this.legacySafelist.set(n,t.simpleMap[n].toLowerCase())}catch(Mge){this.logger.info(`Error loading types map: ${Mge}`),this.safelist=lhe,this.legacySafelist.clear()}}updateTypingsForProject(e){const t=this.findProject(e.projectName);if(t)switch(e.kind){case BG:return void t.updateTypingFiles(this.typingsCache.updateTypingsForProject(e.projectName,e.compilerOptions,e.typeAcquisition,e.unresolvedImports,e.typings));case qG:return void this.typingsCache.enqueueInstallTypingsForProject(t,t.lastCachedUnresolvedImportsList,!0)}}watchTypingLocations(e){var t;null==(t=this.findProject(e.projectName))||t.watchTypingLocations(e.files)}delayEnsureProjectForOpenFiles(){this.openFiles.size&&(this.pendingEnsureProjectForOpenFiles=!0,this.throttledOperations.schedule(ihe,2500,(()=>{0!==this.pendingProjectUpdates.size?this.delayEnsureProjectForOpenFiles():this.pendingEnsureProjectForOpenFiles&&(this.ensureProjectForOpenFiles(),this.sendProjectsUpdatedInBackgroundEvent())})))}delayUpdateProjectGraph(e){if(Kme(e))return;if(e.markAsDirty(),Vme(e))return;const t=e.getProjectName();this.pendingProjectUpdates.set(t,e),this.throttledOperations.schedule(t,250,(()=>{this.pendingProjectUpdates.delete(t)&&Dhe(e)}))}hasPendingProjectUpdate(e){return this.pendingProjectUpdates.has(e.getProjectName())}sendProjectsUpdatedInBackgroundEvent(){if(!this.eventHandler)return;const e={eventName:Hme,data:{openFiles:Ke(this.openFiles.keys(),(e=>this.getScriptInfoForPath(e).fileName))}};this.eventHandler(e)}sendLargeFileReferencedEvent(e,t){if(!this.eventHandler)return;const n={eventName:Yme,data:{file:e,fileSize:t,maxFileSize:Wme}};this.eventHandler(n)}sendProjectLoadingStartEvent(e,t){if(!this.eventHandler)return;e.sendLoadingProjectFinish=!0;const n={eventName:Gme,data:{project:e,reason:t}};this.eventHandler(n)}sendProjectLoadingFinishEvent(e){if(!this.eventHandler||!e.sendLoadingProjectFinish)return;e.sendLoadingProjectFinish=!1;const t={eventName:Qme,data:{project:e}};this.eventHandler(t)}sendPerformanceEvent(e,t){this.performanceEventHandler&&this.performanceEventHandler({kind:e,durationMs:t})}delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(e){this.delayUpdateProjectGraph(e),this.delayEnsureProjectForOpenFiles()}delayUpdateProjectGraphs(e,t){if(e.length){for(const n of e)t&&n.clearSourceMapperCache(),this.delayUpdateProjectGraph(n);this.delayEnsureProjectForOpenFiles()}}setCompilerOptionsForInferredProjects(e,t){Tn.assert(void 0===t||this.useInferredProjectPerProjectRoot,"Setting compiler options per project root path is only supported when useInferredProjectPerProjectRoot is enabled");const n=dhe(e),r=_he(e,t),i=phe(e);n.allowNonTsExtensions=!0;const o=t&&this.toCanonicalFileName(t);o?(this.compilerOptionsForInferredProjectsPerProjectRoot.set(o,n),this.watchOptionsForInferredProjectsPerProjectRoot.set(o,r||!1),this.typeAcquisitionForInferredProjectsPerProjectRoot.set(o,i)):(this.compilerOptionsForInferredProjects=n,this.watchOptionsForInferredProjects=r,this.typeAcquisitionForInferredProjects=i);for(const s of this.inferredProjects)(o?s.projectRootPath!==o:s.projectRootPath&&this.compilerOptionsForInferredProjectsPerProjectRoot.has(s.projectRootPath))||(s.setCompilerOptions(n),s.setTypeAcquisition(i),s.setWatchOptions(null==r?void 0:r.watchOptions),s.setProjectErrors(null==r?void 0:r.errors),s.compileOnSaveEnabled=n.compileOnSave,s.markAsDirty(),this.delayUpdateProjectGraph(s));this.delayEnsureProjectForOpenFiles()}findProject(e){if(void 0!==e)return tme(e)?vhe(e,this.inferredProjects):this.findExternalProjectByProjectName(e)||this.findConfiguredProjectByProjectName(Zfe(e))}forEachProject(e){this.externalProjects.forEach(e),this.configuredProjects.forEach(e),this.inferredProjects.forEach(e)}forEachEnabledProject(e){this.forEachProject((t=>{!t.isOrphan()&&t.languageServiceEnabled&&e(t)}))}getDefaultProjectForFile(e,t){return t?this.ensureDefaultProjectForFile(e):this.tryGetDefaultProjectForFile(e)}tryGetDefaultProjectForFile(e){const t=lt(e)?this.getScriptInfoForNormalizedPath(e):e;return t&&!t.isOrphan()?t.getDefaultProject():void 0}tryGetDefaultProjectForEnsuringConfiguredProjectForFile(e){var t;const n=lt(e)?this.getScriptInfoForNormalizedPath(e):e;if(n)return(null==(t=this.pendingOpenFileProjectUpdates)?void 0:t.delete(n.path))&&(this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(n,1),n.isOrphan()&&this.assignOrphanScriptInfoToInferredProject(n,this.openFiles.get(n.path))),this.tryGetDefaultProjectForFile(n)}ensureDefaultProjectForFile(e){return this.tryGetDefaultProjectForEnsuringConfiguredProjectForFile(e)||this.doEnsureDefaultProjectForFile(e)}doEnsureDefaultProjectForFile(e){this.ensureProjectStructuresUptoDate();const t=lt(e)?this.getScriptInfoForNormalizedPath(e):e;return t?t.getDefaultProject():(this.logErrorForScriptInfoNotFound(lt(e)?e:e.fileName),Jfe.ThrowNoProject())}getScriptInfoEnsuringProjectsUptoDate(e){return this.ensureProjectStructuresUptoDate(),this.getScriptInfo(e)}ensureProjectStructuresUptoDate(){let e=this.pendingEnsureProjectForOpenFiles;this.pendingProjectUpdates.clear();const t=t=>{e=Dhe(t)||e};this.externalProjects.forEach(t),this.configuredProjects.forEach(t),this.inferredProjects.forEach(t),e&&this.ensureProjectForOpenFiles()}getFormatCodeOptions(e){const t=this.getScriptInfoForNormalizedPath(e);return t&&t.getFormatCodeSettings()||this.hostConfiguration.formatCodeOptions}getPreferences(e){const t=this.getScriptInfoForNormalizedPath(e);return{...this.hostConfiguration.preferences,...t&&t.getPreferences()}}getHostFormatCodeOptions(){return this.hostConfiguration.formatCodeOptions}getHostPreferences(){return this.hostConfiguration.preferences}onSourceFileChanged(e,t){Tn.assert(!e.isScriptOpen()),2===t?this.handleDeletedFile(e,!0):(e.deferredDelete&&(e.deferredDelete=void 0),e.delayReloadNonMixedContentFile(),this.delayUpdateProjectGraphs(e.containingProjects,!1),this.handleSourceMapProjects(e))}handleSourceMapProjects(e){if(e.sourceMapFilePath)if(lt(e.sourceMapFilePath)){const t=this.getScriptInfoForPath(e.sourceMapFilePath);this.delayUpdateSourceInfoProjects(null==t?void 0:t.sourceInfos)}else this.delayUpdateSourceInfoProjects(e.sourceMapFilePath.sourceInfos);this.delayUpdateSourceInfoProjects(e.sourceInfos),e.declarationInfoPath&&this.delayUpdateProjectsOfScriptInfoPath(e.declarationInfoPath)}delayUpdateSourceInfoProjects(e){e&&e.forEach(((e,t)=>this.delayUpdateProjectsOfScriptInfoPath(t)))}delayUpdateProjectsOfScriptInfoPath(e){const t=this.getScriptInfoForPath(e);t&&this.delayUpdateProjectGraphs(t.containingProjects,!0)}handleDeletedFile(e,t){Tn.assert(!e.isScriptOpen()),this.delayUpdateProjectGraphs(e.containingProjects,!1),this.handleSourceMapProjects(e),e.detachAllProjects(),t?(e.delayReloadNonMixedContentFile(),e.deferredDelete=!0):this.deleteScriptInfo(e)}watchWildcardDirectory(e,t,n,r){let i=this.watchFactory.watchDirectory(e,(t=>{const i=this.toPath(t),s=r.cachedDirectoryStructureHost.addOrDeleteFileOrDirectory(t,i);if("package.json"===Ko(i)&&!Q$(i)&&(s&&s.fileExists||!s&&this.host.fileExists(t))){const e=this.getNormalizedAbsolutePath(t);this.logger.info(`Config: ${n} Detected new package.json: ${e}`),this.packageJsonCache.addOrUpdate(e,i),this.watchPackageJsonFile(e,i,o)}const a=this.findConfiguredProjectByProjectName(n);IV({watchedDirPath:this.toPath(e),fileOrDirectory:t,fileOrDirectoryPath:i,configFileName:n,extraFileExtensions:this.hostConfiguration.extraFileExtensions,currentDirectory:this.currentDirectory,options:r.parsedCommandLine.options,program:(null==a?void 0:a.getCurrentProgram())||r.parsedCommandLine.fileNames,useCaseSensitiveFileNames:this.host.useCaseSensitiveFileNames,writeLog:e=>this.logger.info(e),toPath:e=>this.toPath(e),getScriptKind:a?e=>a.getScriptKind(e):void 0})||(2!==r.updateLevel&&(r.updateLevel=1),r.projects.forEach(((e,t)=>{var r;if(!e)return;const o=this.getConfiguredProjectByCanonicalConfigFilePath(t);if(!o)return;if(a!==o&&this.getHostPreferences().includeCompletionsForModuleExports){const e=this.toPath(n);w(null==(r=o.getCurrentProgram())?void 0:r.getResolvedProjectReferences(),(t=>(null==t?void 0:t.sourceFile.path)===e))&&o.markAutoImportProviderAsDirty()}const s=a===o?1:0;if(!(o.pendingUpdateLevel>s))if(this.openFiles.has(i)){if(Tn.checkDefined(this.getScriptInfoForPath(i)).isAttached(o)){const e=Math.max(s,o.openFileWatchTriggered.get(i)||0);o.openFileWatchTriggered.set(i,e)}else o.pendingUpdateLevel=s,this.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(o)}else o.pendingUpdateLevel=s,this.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(o)})))}),t,this.getWatchOptionsFromProjectWatchOptions(r.parsedCommandLine.watchOptions,Vo(n)),vW.WildcardDirectory,n);const o={packageJsonWatches:void 0,close(){var e;i&&(i.close(),i=void 0,null==(e=o.packageJsonWatches)||e.forEach((e=>{e.projects.delete(o),e.close()})),o.packageJsonWatches=void 0)}};return o}delayUpdateProjectsFromParsedConfigOnConfigFileChange(e,t){const n=this.configFileExistenceInfoCache.get(e);if(!(null==n?void 0:n.config))return!1;let r=!1;return n.config.updateLevel=2,n.config.projects.forEach(((n,i)=>{var o;const s=this.getConfiguredProjectByCanonicalConfigFilePath(i);if(s)if(r=!0,i===e){if(s.isInitialLoadPending())return;s.pendingUpdateLevel=2,s.pendingUpdateReason=t,this.delayUpdateProjectGraph(s),s.markAutoImportProviderAsDirty()}else{const t=this.toPath(e);s.resolutionCache.removeResolutionsFromProjectReferenceRedirects(t),this.delayUpdateProjectGraph(s),this.getHostPreferences().includeCompletionsForModuleExports&&w(null==(o=s.getCurrentProgram())?void 0:o.getResolvedProjectReferences(),(e=>(null==e?void 0:e.sourceFile.path)===t))&&s.markAutoImportProviderAsDirty()}})),r}onConfigFileChanged(e,t,n){const r=this.configFileExistenceInfoCache.get(t),i=this.getConfiguredProjectByCanonicalConfigFilePath(t),o=null==i?void 0:i.deferredClose;2===n?(r.exists=!1,i&&(i.deferredClose=!0)):(r.exists=!0,o&&(i.deferredClose=void 0,i.markAsDirty())),this.delayUpdateProjectsFromParsedConfigOnConfigFileChange(t,"Change in config file detected");const s=new Set(i?[i]:void 0);this.openFiles.forEach(((t,n)=>{var i,o;const a=this.configFileForOpenFiles.get(n);if(!(null==(i=r.openFilesImpactedByConfigFile)?void 0:i.has(n)))return;this.configFileForOpenFiles.delete(n);const c=this.getScriptInfoForPath(n),l=this.getConfigFileNameForFile(c,!1);if(!l)return;const u=this.findConfiguredProjectByProjectName(l)??this.createConfiguredProject(l,`Change in config file ${e} detected, ${Ohe(c)}`);(null==(o=this.pendingOpenFileProjectUpdates)?void 0:o.has(n))||(this.pendingOpenFileProjectUpdates??(this.pendingOpenFileProjectUpdates=new Map)).set(n,a),Q(s,u)&&u.isInitialLoadPending()&&this.delayUpdateProjectGraph(u)})),this.delayEnsureProjectForOpenFiles()}removeProject(e){switch(this.logger.info("`remove Project::"),e.print(!0,!0,!1),e.close(),Tn.shouldAssert(1)&&this.filenameToScriptInfo.forEach((t=>Tn.assert(!t.isAttached(e),"Found script Info still attached to project",(()=>`${e.projectName}: ScriptInfos still attached: ${JSON.stringify(Ke(W(this.filenameToScriptInfo.values(),(t=>t.isAttached(e)?{fileName:t.fileName,projects:t.containingProjects.map((e=>e.projectName)),hasMixedContent:t.hasMixedContent}:void 0))),void 0," ")}`)))),this.pendingProjectUpdates.delete(e.getProjectName()),e.projectKind){case 2:nn(this.externalProjects,e),this.projectToSizeMap.delete(e.getProjectName());break;case 1:this.configuredProjects.delete(e.canonicalConfigFilePath),this.projectToSizeMap.delete(e.canonicalConfigFilePath);break;case 0:nn(this.inferredProjects,e)}}assignOrphanScriptInfoToInferredProject(e,t){Tn.assert(e.isOrphan());const n=this.getOrCreateInferredProjectForProjectRootPathIfEnabled(e,t)||this.getOrCreateSingleInferredProjectIfEnabled()||this.getOrCreateSingleInferredWithoutProjectRoot(e.isDynamic?t||this.currentDirectory:Vo(Do(e.fileName)?e.fileName:es(e.fileName,t?this.getNormalizedAbsolutePath(t):this.currentDirectory)));if(n.addRoot(e),e.containingProjects[0]!==n&&($t(e.containingProjects,n),e.containingProjects.unshift(n)),n.updateGraph(),!this.useSingleInferredProject&&!n.projectRootPath)for(const r of this.inferredProjects){if(r===n||r.isOrphan())continue;const e=r.getRootScriptInfos();Tn.assert(1===e.length||!!r.projectRootPath),1===e.length&&h(e[0].containingProjects,(t=>t!==e[0].containingProjects[0]&&!t.isOrphan()))&&r.removeFile(e[0],!0,!0)}return n}assignOrphanScriptInfosToInferredProject(){this.openFiles.forEach(((e,t)=>{const n=this.getScriptInfoForPath(t);n.isOrphan()&&this.assignOrphanScriptInfoToInferredProject(n,e)}))}closeOpenFile(e,t){var n;const r=!e.isDynamic&&this.host.fileExists(e.fileName);e.close(r),this.stopWatchingConfigFilesForScriptInfo(e);const i=this.toCanonicalFileName(e.fileName);this.openFilesWithNonRootedDiskPath.get(i)===e&&this.openFilesWithNonRootedDiskPath.delete(i);let o=!1;for(const s of e.containingProjects){if(Bme(s)){e.hasMixedContent&&e.registerFileUpdate();const t=s.openFileWatchTriggered.get(e.path);void 0!==t&&(s.openFileWatchTriggered.delete(e.path),s.pendingUpdateLevel<t&&(s.pendingUpdateLevel=t,s.markFileAsDirty(e.path)))}else Ume(s)&&s.isRoot(e)&&(s.isProjectWithSingleRoot()&&(o=!0),s.removeFile(e,r,!0));s.languageServiceEnabled||s.markAsDirty()}return this.openFiles.delete(e.path),this.configFileForOpenFiles.delete(e.path),null==(n=this.pendingOpenFileProjectUpdates)||n.delete(e.path),Tn.assert(!this.rootOfInferredProjects.has(e)),!t&&o&&this.assignOrphanScriptInfosToInferredProject(),r?this.watchClosedScriptInfo(e):this.handleDeletedFile(e,!1),o}deleteScriptInfo(e){Tn.assert(!e.isScriptOpen()),this.filenameToScriptInfo.delete(e.path),this.filenameToScriptInfoVersion.set(e.path,e.textStorage.version),this.stopWatchingScriptInfo(e);const t=e.getRealpathIfDifferent();t&&this.realpathToScriptInfos.remove(t,e),e.closeSourceMapFileWatcher()}configFileExists(e,t,n){const r=this.configFileExistenceInfoCache.get(t);let i;if(this.openFiles.has(n.path)&&!She(n)&&(r?(r.openFilesImpactedByConfigFile??(r.openFilesImpactedByConfigFile=new Set)).add(n.path):(i=new Set).add(n.path)),r)return r.exists;const o=this.host.fileExists(e);return this.configFileExistenceInfoCache.set(t,{exists:o,openFilesImpactedByConfigFile:i}),o}createConfigFileWatcherForParsedConfig(e,t,n){var r,i;const o=this.configFileExistenceInfoCache.get(t);o.watcher&&o.watcher!==bhe||(o.watcher=this.watchFactory.watchFile(e,((n,r)=>this.onConfigFileChanged(e,t,r)),2e3,this.getWatchOptionsFromProjectWatchOptions(null==(i=null==(r=null==o?void 0:o.config)?void 0:r.parsedCommandLine)?void 0:i.watchOptions,Vo(e)),vW.ConfigFile,n));const s=o.config.projects;s.set(n.canonicalConfigFilePath,s.get(n.canonicalConfigFilePath)||!1)}releaseParsedConfig(e,t){var n,r,i;const o=this.configFileExistenceInfoCache.get(e);(null==(n=o.config)?void 0:n.projects.delete(t.canonicalConfigFilePath))&&((null==(r=o.config)?void 0:r.projects.size)||(o.config=void 0,EV(e,this.sharedExtendedConfigFileWatchers),Tn.checkDefined(o.watcher),(null==(i=o.openFilesImpactedByConfigFile)?void 0:i.size)?o.inferredProjectRoots?MJ(Ho(Vo(e)))||(o.watcher.close(),o.watcher=bhe):(o.watcher.close(),o.watcher=void 0):(o.watcher.close(),this.configFileExistenceInfoCache.delete(e))))}stopWatchingConfigFilesForScriptInfo(e){if(0!==this.serverMode)return;const t=this.rootOfInferredProjects.delete(e),n=e.isScriptOpen();n&&!t||this.forEachConfigFileLocation(e,(r=>{var i,o,s;const a=this.configFileExistenceInfoCache.get(r);if(a){if(n){if(!(null==(i=null==a?void 0:a.openFilesImpactedByConfigFile)?void 0:i.has(e.path)))return}else if(!(null==(o=a.openFilesImpactedByConfigFile)?void 0:o.delete(e.path)))return;t&&(a.inferredProjectRoots--,!a.watcher||a.config||a.inferredProjectRoots||(a.watcher.close(),a.watcher=void 0)),(null==(s=a.openFilesImpactedByConfigFile)?void 0:s.size)||a.config||(Tn.assert(!a.watcher),this.configFileExistenceInfoCache.delete(r))}}))}startWatchingConfigFilesForInferredProjectRoot(e){0===this.serverMode&&(Tn.assert(e.isScriptOpen()),this.rootOfInferredProjects.add(e),this.forEachConfigFileLocation(e,((t,n)=>{let r=this.configFileExistenceInfoCache.get(t);r?r.inferredProjectRoots=(r.inferredProjectRoots??0)+1:(r={exists:this.host.fileExists(n),inferredProjectRoots:1},this.configFileExistenceInfoCache.set(t,r)),(r.openFilesImpactedByConfigFile??(r.openFilesImpactedByConfigFile=new Set)).add(e.path),r.watcher||(r.watcher=MJ(Ho(Vo(t)))?this.watchFactory.watchFile(n,((e,r)=>this.onConfigFileChanged(n,t,r)),2e3,this.hostConfiguration.watchOptions,vW.ConfigFileForInferredRoot):bhe)})))}forEachConfigFileLocation(e,t){if(0!==this.serverMode)return;Tn.assert(!e.containingProjects||this.openFiles.has(e.path));const n=this.openFiles.get(e.path);if(Tn.checkDefined(this.getScriptInfo(e.path)).isDynamic)return;let r=Vo(e.fileName);const i=()=>fs(n,r,this.currentDirectory,!this.host.useCaseSensitiveFileNames),o=!n||!i();let s=!She(e);do{if(s){const e=Xfe(r,this.currentDirectory,this.toCanonicalFileName),n=Zo(r,"tsconfig.json");let i=t(Zo(e,"tsconfig.json"),n);if(i)return n;const o=Zo(r,"jsconfig.json");if(i=t(Zo(e,"jsconfig.json"),o),i)return o;if(Ss(e))break}const e=Vo(r);if(e===r)break;r=e,s=!0}while(o||i())}findDefaultConfiguredProject(e){var t;return e.isScriptOpen()?null==(t=this.tryFindDefaultConfiguredProjectForOpenScriptInfo(e,0))?void 0:t.defaultProject:void 0}getConfigFileNameForFileFromCache(e,t){if(t){const t=xhe(e,this.pendingOpenFileProjectUpdates);if(void 0!==t)return t}return xhe(e,this.configFileForOpenFiles)}setConfigFileNameForFileInCache(e,t){this.openFiles.has(e.path)&&(She(e)||this.configFileForOpenFiles.set(e.path,t||!1))}getConfigFileNameForFile(e,t){const n=this.getConfigFileNameForFileFromCache(e,t);if(void 0!==n)return n||void 0;if(t)return;const r=this.forEachConfigFileLocation(e,((t,n)=>this.configFileExists(n,t,e)));return this.logger.info(`getConfigFileNameForFile:: File: ${e.fileName} ProjectRootPath: ${this.openFiles.get(e.path)}:: Result: ${r}`),this.setConfigFileNameForFileInCache(e,r),r}printProjects(){this.logger.hasLevel(1)&&(this.logger.startGroup(),this.externalProjects.forEach(Vhe),this.configuredProjects.forEach(Vhe),this.inferredProjects.forEach(Vhe),this.logger.info("Open files: "),this.openFiles.forEach(((e,t)=>{const n=this.getScriptInfoForPath(t);this.logger.info(`\tFileName: ${n.fileName} ProjectRootPath: ${e}`),this.logger.info(`\t\tProjects: ${n.containingProjects.map((e=>e.getProjectName()))}`)})),this.logger.endGroup())}findConfiguredProjectByProjectName(e,t){const n=this.toCanonicalFileName(e),r=this.getConfiguredProjectByCanonicalConfigFilePath(n);return t?r:(null==r?void 0:r.deferredClose)?void 0:r}getConfiguredProjectByCanonicalConfigFilePath(e){return this.configuredProjects.get(e)}findExternalProjectByProjectName(e){return vhe(e,this.externalProjects)}getFilenameForExceededTotalSizeLimitForNonTsFiles(e,t,n,r){if(t&&t.disableSizeLimit||!this.host.getFileSize)return;let i=Jme;this.projectToSizeMap.set(e,0),this.projectToSizeMap.forEach((e=>i-=e||0));let o=0;for(const s of n){const e=r.getFileName(s);if(!ZT(e)&&(o+=this.host.getFileSize(e),o>Jme||o>i)){const t=n.map((e=>r.getFileName(e))).filter((e=>!ZT(e))).map((e=>({name:e,size:this.host.getFileSize(e)}))).sort(((e,t)=>t.size-e.size)).slice(0,5);return this.logger.info(`Non TS file size exceeded limit (${o}). Largest files: ${t.map((e=>`${e.name}:${e.size}`)).join(", ")}`),e}}this.projectToSizeMap.set(e,o)}createExternalProject(e,t,n,r,i){const o=dhe(n),s=_he(n,Vo(Qo(e))),a=new zme(e,this,this.documentRegistry,o,this.getFilenameForExceededTotalSizeLimitForNonTsFiles(e,o,t,yhe),void 0===n.compileOnSave||n.compileOnSave,void 0,null==s?void 0:s.watchOptions);return a.setProjectErrors(null==s?void 0:s.errors),a.excludedFiles=i,this.addFilesToNonInferredProject(a,t,yhe,r),this.externalProjects.push(a),a}sendProjectTelemetry(e){if(this.seenProjects.has(e.projectName))return void Rhe(e);if(this.seenProjects.set(e.projectName,!0),!this.eventHandler||!this.host.createSHA256Hash)return void Rhe(e);const t=Bme(e)?e.projectOptions:void 0;Rhe(e);const n={projectId:this.host.createSHA256Hash(e.projectName),fileStats:Nme(e.getScriptInfos(),!0),compilerOptions:JR(e.getCompilationSettings()),typeAcquisition:function({enable:e,include:t,exclude:n}){return{enable:e,include:void 0!==t&&0!==t.length,exclude:void 0!==n&&0!==n.length}}(e.getTypeAcquisition()),extends:t&&t.configHasExtendsProperty,files:t&&t.configHasFilesProperty,include:t&&t.configHasIncludeProperty,exclude:t&&t.configHasExcludeProperty,compileOnSave:e.compileOnSaveEnabled,configFileName:function(){if(!Bme(e))return"other";return cme(e.getConfigFilePath())||"other"}(),projectType:e instanceof zme?"external":"configured",languageServiceEnabled:e.languageServiceEnabled,version:u};this.eventHandler({eventName:$me,data:n})}addFilesToNonInferredProject(e,t,n,r){this.updateNonInferredProjectFiles(e,t,n),e.setTypeAcquisition(r),e.markAsDirty()}createConfiguredProject(e,t){var n;null==(n=ar)||n.instant(ar.Phase.Session,"createConfiguredProject",{configFilePath:e}),this.logger.info(`Creating configuration project ${e}`);const r=this.toCanonicalFileName(e);let i=this.configFileExistenceInfoCache.get(r);i?i.exists=!0:this.configFileExistenceInfoCache.set(r,i={exists:!0}),i.config||(i.config={cachedDirectoryStructureHost:TV(this.host,this.host.getCurrentDirectory(),this.host.useCaseSensitiveFileNames),projects:new Map,updateLevel:2});const o=new jme(e,r,this,this.documentRegistry,i.config.cachedDirectoryStructureHost,t);return Tn.assert(!this.configuredProjects.has(r)),this.configuredProjects.set(r,o),this.createConfigFileWatcherForParsedConfig(e,r,o),o}loadConfiguredProject(e,t){var n,r;null==(n=ar)||n.push(ar.Phase.Session,"loadConfiguredProject",{configFilePath:e.canonicalConfigFilePath}),this.sendProjectLoadingStartEvent(e,t);const i=ts(e.getConfigFilePath()),o=this.ensureParsedConfigUptoDate(i,e.canonicalConfigFilePath,this.configFileExistenceInfoCache.get(e.canonicalConfigFilePath),e),s=o.config.parsedCommandLine;Tn.assert(!!s.fileNames);const a=s.options;e.projectOptions||(e.projectOptions={configHasExtendsProperty:void 0!==s.raw.extends,configHasFilesProperty:void 0!==s.raw.files,configHasIncludeProperty:void 0!==s.raw.include,configHasExcludeProperty:void 0!==s.raw.exclude}),e.canConfigFileJsonReportNoInputFiles=pR(s.raw),e.setProjectErrors(s.options.configFile.parseDiagnostics),e.updateReferences(s.projectReferences);const c=this.getFilenameForExceededTotalSizeLimitForNonTsFiles(e.canonicalConfigFilePath,a,s.fileNames,ghe);c?(e.disableLanguageService(c),this.configFileExistenceInfoCache.forEach(((t,n)=>this.stopWatchingWildCards(n,e)))):(e.setCompilerOptions(a),e.setWatchOptions(s.watchOptions),e.enableLanguageService(),this.watchWildcards(i,o,e)),e.enablePluginsWithOptions(a);const l=s.fileNames.concat(e.getExternalFiles(2));this.updateRootAndOptionsOfNonInferredProject(e,l,ghe,a,s.typeAcquisition,s.compileOnSave,s.watchOptions),null==(r=ar)||r.pop()}ensureParsedConfigUptoDate(e,t,n,r){var i,o,s;if(n.config){if(!n.config.updateLevel)return n;if(1===n.config.updateLevel)return this.reloadFileNamesOfParsedConfig(e,n.config),n}const a=(null==(i=n.config)?void 0:i.cachedDirectoryStructureHost)||TV(this.host,this.host.getCurrentDirectory(),this.host.useCaseSensitiveFileNames),c=gF(e,(e=>this.host.readFile(e))),l=eO(e,lt(c)?c:""),u=l.parseDiagnostics;lt(c)||u.push(c);const d=Vo(e),_=XF(l,a,d,void 0,e,void 0,this.hostConfiguration.extraFileExtensions,this.extendedConfigCache);_.errors.length&&u.push(..._.errors),this.logger.info(`Config: ${e} : ${JSON.stringify({rootNames:_.fileNames,options:_.options,watchOptions:_.watchOptions,projectReferences:_.projectReferences},void 0," ")}`);const p=null==(o=n.config)?void 0:o.parsedCommandLine;return n.config?(n.config.parsedCommandLine=_,n.config.watchedDirectoriesStale=!0,n.config.updateLevel=void 0):n.config={parsedCommandLine:_,cachedDirectoryStructureHost:a,projects:new Map},p||Cw(this.getWatchOptionsFromProjectWatchOptions(void 0,d),this.getWatchOptionsFromProjectWatchOptions(_.watchOptions,d))||(null==(s=n.watcher)||s.close(),n.watcher=void 0),this.createConfigFileWatcherForParsedConfig(e,t,r),kV(t,_.options,this.sharedExtendedConfigFileWatchers,((t,n)=>this.watchFactory.watchFile(t,(()=>{var e;CV(this.extendedConfigCache,n,(e=>this.toPath(e)));let r=!1;null==(e=this.sharedExtendedConfigFileWatchers.get(n))||e.projects.forEach((e=>{r=this.delayUpdateProjectsFromParsedConfigOnConfigFileChange(e,`Change in extended config file ${t} detected`)||r})),r&&this.delayEnsureProjectForOpenFiles()}),2e3,this.hostConfiguration.watchOptions,vW.ExtendedConfigFile,e)),(e=>this.toPath(e))),n}watchWildcards(e,{exists:t,config:n},r){if(n.projects.set(r.canonicalConfigFilePath,!0),t){if(n.watchedDirectories&&!n.watchedDirectoriesStale)return;n.watchedDirectoriesStale=!1,AV(n.watchedDirectories||(n.watchedDirectories=new Map),n.parsedCommandLine.wildcardDirectories,((t,r)=>this.watchWildcardDirectory(t,r,e,n)))}else{if(n.watchedDirectoriesStale=!1,!n.watchedDirectories)return;Nx(n.watchedDirectories,FV),n.watchedDirectories=void 0}}stopWatchingWildCards(e,t){const n=this.configFileExistenceInfoCache.get(e);n.config&&n.config.projects.get(t.canonicalConfigFilePath)&&(n.config.projects.set(t.canonicalConfigFilePath,!1),f_(n.config.projects,gt)||(n.config.watchedDirectories&&(Nx(n.config.watchedDirectories,FV),n.config.watchedDirectories=void 0),n.config.watchedDirectoriesStale=void 0))}updateNonInferredProjectFiles(e,t,n){var r;const i=e.getRootFilesMap(),o=new Map;for(const s of t){const t=n.getFileName(s),a=Zfe(t);let c;if(Sme(a)||e.fileExists(t)){const t=n.getScriptKind(s,this.hostConfiguration.extraFileExtensions),r=n.hasMixedContent(s,this.hostConfiguration.extraFileExtensions),o=Tn.checkDefined(this.getOrCreateScriptInfoNotOpenedByClientForNormalizedPath(a,e.currentDirectory,t,r,e.directoryStructureHost,!1));c=o.path;const l=i.get(c);l&&l.info===o?l.fileName=a:(e.addRoot(o,a),o.isScriptOpen()&&this.removeRootOfInferredProjectIfNowPartOfOtherProject(o))}else{c=Xfe(a,this.currentDirectory,this.toCanonicalFileName);const t=i.get(c);t?((null==(r=t.info)?void 0:r.path)===c&&(e.removeFile(t.info,!1,!0),t.info=void 0),t.fileName=a):i.set(c,{fileName:a})}o.set(c,!0)}i.size>o.size&&i.forEach(((t,n)=>{o.has(n)||(t.info?e.removeFile(t.info,e.fileExists(t.info.fileName),!0):i.delete(n))}))}updateRootAndOptionsOfNonInferredProject(e,t,n,r,i,o,s){e.setCompilerOptions(r),e.setWatchOptions(s),void 0!==o&&(e.compileOnSaveEnabled=o),this.addFilesToNonInferredProject(e,t,n,i)}reloadFileNamesOfConfiguredProject(e){const t=this.reloadFileNamesOfParsedConfig(e.getConfigFilePath(),this.configFileExistenceInfoCache.get(e.canonicalConfigFilePath).config);return e.updateErrorOnNoInputFiles(t),this.updateNonInferredProjectFiles(e,t.concat(e.getExternalFiles(1)),ghe),e.markAsDirty(),e.updateGraph()}reloadFileNamesOfParsedConfig(e,t){if(void 0===t.updateLevel)return t.parsedCommandLine.fileNames;Tn.assert(1===t.updateLevel);const n=MR(t.parsedCommandLine.options.configFile.configFileSpecs,Vo(e),t.parsedCommandLine.options,t.cachedDirectoryStructureHost,this.hostConfiguration.extraFileExtensions);return t.parsedCommandLine={...t.parsedCommandLine,fileNames:n},n}setFileNamesOfAutpImportProviderOrAuxillaryProject(e,t){this.updateNonInferredProjectFiles(e,t,ghe)}reloadConfiguredProjectClearingSemanticCache(e,t,n){return!!Q(n,e)&&(this.clearSemanticCache(e),this.reloadConfiguredProject(e,Fhe(t)),!0)}reloadConfiguredProject(e,t){e.isInitialLoadPending=ft,e.pendingUpdateReason=void 0,e.pendingUpdateLevel=0;e.getCachedDirectoryStructureHost().clearCache(),this.loadConfiguredProject(e,t),Phe(e,e.triggerFileForConfigFileDiag??e.getConfigFilePath(),!0)}clearSemanticCache(e){e.originalConfiguredProjects=void 0,e.resolutionCache.clear(),e.getLanguageService(!1).cleanupSemanticCache(),e.cleanupProgram(),e.markAsDirty()}sendConfigFileDiagEvent(e,t,n){if(!this.eventHandler||this.suppressDiagnosticEvents)return!1;const r=e.getLanguageService().getCompilerOptionsDiagnostics();return r.push(...e.getAllProjectErrors()),!(!n&&r.length===(e.configDiagDiagnosticsReported??0))&&(e.configDiagDiagnosticsReported=r.length,this.eventHandler({eventName:Zme,data:{configFileName:e.getConfigFilePath(),diagnostics:r,triggerFile:t??e.getConfigFilePath()}}),!0)}getOrCreateInferredProjectForProjectRootPathIfEnabled(e,t){if(!this.useInferredProjectPerProjectRoot||e.isDynamic&&void 0===t)return;if(t){const e=this.toCanonicalFileName(t);for(const t of this.inferredProjects)if(t.projectRootPath===e)return t;return this.createInferredProject(t,!1,t)}let n;for(const r of this.inferredProjects)r.projectRootPath&&fs(r.projectRootPath,e.path,this.host.getCurrentDirectory(),!this.host.useCaseSensitiveFileNames)&&(n&&n.projectRootPath.length>r.projectRootPath.length||(n=r));return n}getOrCreateSingleInferredProjectIfEnabled(){if(this.useSingleInferredProject)return this.inferredProjects.length>0&&void 0===this.inferredProjects[0].projectRootPath?this.inferredProjects[0]:this.createInferredProject("",!0)}getOrCreateSingleInferredWithoutProjectRoot(e){Tn.assert(!this.useSingleInferredProject);const t=this.toCanonicalFileName(this.getNormalizedAbsolutePath(e));for(const n of this.inferredProjects)if(!n.projectRootPath&&n.isOrphan()&&n.canonicalCurrentDirectory===t)return n;return this.createInferredProject(e)}createInferredProject(e,t,n){const r=n&&this.compilerOptionsForInferredProjectsPerProjectRoot.get(n)||this.compilerOptionsForInferredProjects;let i,o;n&&(i=this.watchOptionsForInferredProjectsPerProjectRoot.get(n),o=this.typeAcquisitionForInferredProjectsPerProjectRoot.get(n)),void 0===i&&(i=this.watchOptionsForInferredProjects),void 0===o&&(o=this.typeAcquisitionForInferredProjects),i=i||void 0;const s=new Ome(this,this.documentRegistry,r,null==i?void 0:i.watchOptions,n,e,o);return s.setProjectErrors(null==i?void 0:i.errors),t?this.inferredProjects.unshift(s):this.inferredProjects.push(s),s}getOrCreateScriptInfoNotOpenedByClient(e,t,n,r){return this.getOrCreateScriptInfoNotOpenedByClientForNormalizedPath(Zfe(e),t,void 0,void 0,n,r)}getScriptInfo(e){return this.getScriptInfoForNormalizedPath(Zfe(e))}getScriptInfoOrConfig(e){const t=Zfe(e),n=this.getScriptInfoForNormalizedPath(t);if(n)return n;const r=this.configuredProjects.get(this.toPath(e));return r&&r.getCompilerOptions().configFile}logErrorForScriptInfoNotFound(e){const t=Ke(W(this.filenameToScriptInfo.entries(),(e=>e[1].deferredDelete?void 0:e)),(([e,t])=>({path:e,fileName:t.fileName})));this.logger.msg(`Could not find file ${JSON.stringify(e)}.\nAll files are: ${JSON.stringify(t)}`,"Err")}getSymlinkedProjects(e){let t;if(this.realpathToScriptInfos){const t=e.getRealpathIfDifferent();t&&h(this.realpathToScriptInfos.get(t),n),h(this.realpathToScriptInfos.get(e.path),n)}return t;function n(n){if(n!==e)for(const r of n.containingProjects)!r.languageServiceEnabled||r.isOrphan()||r.getCompilerOptions().preserveSymlinks||e.isAttached(r)||(t?f_(t,((e,t)=>t!==n.path&&A(e,r)))||t.add(n.path,r):(t=nt(),t.add(n.path,r)))}}watchClosedScriptInfo(e){if(Tn.assert(!e.fileWatcher),!(e.isDynamicOrHasMixedContent()||this.globalCacheLocationDirectoryPath&&cn(e.path,this.globalCacheLocationDirectoryPath))){const t=e.fileName.indexOf("/node_modules/");this.host.getModifiedTime&&-1!==t?(e.mTime=this.getModifiedTime(e),e.fileWatcher=this.watchClosedScriptInfoInNodeModules(e.fileName.substring(0,t))):e.fileWatcher=this.watchFactory.watchFile(e.fileName,((t,n)=>this.onSourceFileChanged(e,n)),500,this.hostConfiguration.watchOptions,vW.ClosedScriptInfo)}}createNodeModulesWatcher(e,t){let n=this.watchFactory.watchDirectory(e,(e=>{var n;const i=DJ(this.toPath(e));if(!i)return;const o=Ko(i);if(!(null==(n=r.affectedModuleSpecifierCacheProjects)?void 0:n.size)||"package.json"!==o&&"node_modules"!==o||r.affectedModuleSpecifierCacheProjects.forEach((e=>{var t;null==(t=e.getModuleSpecifierCache())||t.clear()})),r.refreshScriptInfoRefCount)if(t===i)this.refreshScriptInfosInDirectory(t);else{const e=this.filenameToScriptInfo.get(i);e?Ihe(e)&&this.refreshScriptInfo(e):Ro(i)||this.refreshScriptInfosInDirectory(i)}}),1,this.hostConfiguration.watchOptions,vW.NodeModules);const r={refreshScriptInfoRefCount:0,affectedModuleSpecifierCacheProjects:void 0,close:()=>{var e;!n||r.refreshScriptInfoRefCount||(null==(e=r.affectedModuleSpecifierCacheProjects)?void 0:e.size)||(n.close(),n=void 0,this.nodeModulesWatchers.delete(t))}};return this.nodeModulesWatchers.set(t,r),r}watchPackageJsonsInNodeModules(e,t){var n;const r=this.toPath(e),i=this.nodeModulesWatchers.get(r)||this.createNodeModulesWatcher(e,r);return Tn.assert(!(null==(n=i.affectedModuleSpecifierCacheProjects)?void 0:n.has(t))),(i.affectedModuleSpecifierCacheProjects||(i.affectedModuleSpecifierCacheProjects=new Set)).add(t),{close:()=>{var e;null==(e=i.affectedModuleSpecifierCacheProjects)||e.delete(t),i.close()}}}watchClosedScriptInfoInNodeModules(e){const t=e+"/node_modules",n=this.toPath(t),r=this.nodeModulesWatchers.get(n)||this.createNodeModulesWatcher(t,n);return r.refreshScriptInfoRefCount++,{close:()=>{r.refreshScriptInfoRefCount--,r.close()}}}getModifiedTime(e){return(this.host.getModifiedTime(e.fileName)||eo).getTime()}refreshScriptInfo(e){const t=this.getModifiedTime(e);if(t!==e.mTime){const n=_o(e.mTime,t);e.mTime=t,this.onSourceFileChanged(e,n)}}refreshScriptInfosInDirectory(e){e+=ko,this.filenameToScriptInfo.forEach((t=>{Ihe(t)&&cn(t.path,e)&&this.refreshScriptInfo(t)}))}stopWatchingScriptInfo(e){e.fileWatcher&&(e.fileWatcher.close(),e.fileWatcher=void 0)}getOrCreateScriptInfoNotOpenedByClientForNormalizedPath(e,t,n,r,i,o){if(Do(e)||Sme(e))return this.getOrCreateScriptInfoWorker(e,t,!1,void 0,n,!!r,i,o);const s=this.openFilesWithNonRootedDiskPath.get(this.toCanonicalFileName(e));return s||void 0}getOrCreateScriptInfoForNormalizedPath(e,t,n,r,i,o){return this.getOrCreateScriptInfoWorker(e,this.currentDirectory,t,n,r,!!i,o,!1)}getOrCreateScriptInfoWorker(e,t,n,r,i,o,s,a){Tn.assert(void 0===r||n,"ScriptInfo needs to be opened by client to be able to set its user defined content");const c=Xfe(e,t,this.toCanonicalFileName);let l=this.filenameToScriptInfo.get(c);if(l){if(l.deferredDelete){if(Tn.assert(!l.isDynamic),!n&&!(s||this.host).fileExists(e))return a?l:void 0;l.deferredDelete=void 0}}else{const r=Sme(e);if(Tn.assert(Do(e)||r||n,"",(()=>`${JSON.stringify({fileName:e,currentDirectory:t,hostCurrentDirectory:this.currentDirectory,openKeys:Ke(this.openFilesWithNonRootedDiskPath.keys())})}\nScript info with non-dynamic relative file name can only be open script info or in context of host currentDirectory`)),Tn.assert(!Do(e)||this.currentDirectory===t||!this.openFilesWithNonRootedDiskPath.has(this.toCanonicalFileName(e)),"",(()=>`${JSON.stringify({fileName:e,currentDirectory:t,hostCurrentDirectory:this.currentDirectory,openKeys:Ke(this.openFilesWithNonRootedDiskPath.keys())})}\nOpen script files with non rooted disk path opened with current directory context cannot have same canonical names`)),Tn.assert(!r||this.currentDirectory===t||this.useInferredProjectPerProjectRoot,"",(()=>`${JSON.stringify({fileName:e,currentDirectory:t,hostCurrentDirectory:this.currentDirectory,openKeys:Ke(this.openFilesWithNonRootedDiskPath.keys())})}\nDynamic files must always be opened with service's current directory or service should support inferred project per projectRootPath.`)),!n&&!r&&!(s||this.host).fileExists(e))return;l=new Tme(this.host,e,i,o,c,this.filenameToScriptInfoVersion.get(c)),this.filenameToScriptInfo.set(l.path,l),this.filenameToScriptInfoVersion.delete(l.path),n?Do(e)||r&&this.currentDirectory===t||this.openFilesWithNonRootedDiskPath.set(this.toCanonicalFileName(e),l):this.watchClosedScriptInfo(l)}return n&&(this.stopWatchingScriptInfo(l),l.open(r),o&&l.registerFileUpdate()),l}getScriptInfoForNormalizedPath(e){return!Do(e)&&this.openFilesWithNonRootedDiskPath.get(this.toCanonicalFileName(e))||this.getScriptInfoForPath(Xfe(e,this.currentDirectory,this.toCanonicalFileName))}getScriptInfoForPath(e){const t=this.filenameToScriptInfo.get(e);return t&&t.deferredDelete?void 0:t}getDocumentPositionMapper(e,t,n){const r=this.getOrCreateScriptInfoNotOpenedByClient(t,e.currentDirectory,this.host,!1);if(!r)return void(n&&e.addGeneratedFileWatch(t,n));if(r.getSnapshot(),lt(r.sourceMapFilePath)){const t=this.getScriptInfoForPath(r.sourceMapFilePath);if(t&&(t.getSnapshot(),void 0!==t.documentPositionMapper))return t.sourceInfos=this.addSourceInfoToSourceMap(n,e,t.sourceInfos),t.documentPositionMapper?t.documentPositionMapper:void 0;r.sourceMapFilePath=void 0}else{if(r.sourceMapFilePath)return void(r.sourceMapFilePath.sourceInfos=this.addSourceInfoToSourceMap(n,e,r.sourceMapFilePath.sourceInfos));if(void 0!==r.sourceMapFilePath)return}let i,o=(t,n)=>{const r=this.getOrCreateScriptInfoNotOpenedByClient(t,e.currentDirectory,this.host,!0);if(i=r||n,!r||r.deferredDelete)return;const o=r.getSnapshot();return void 0!==r.documentPositionMapper?r.documentPositionMapper:KZ(o)};const s=e.projectName,a=j1({getCanonicalFileName:this.toCanonicalFileName,log:e=>this.logger.info(e),getSourceFileLike:e=>this.getSourceFileLike(e,s,r)},r.fileName,r.textStorage.getLineInfo(),o);return o=void 0,i?lt(i)?r.sourceMapFilePath={watcher:this.addMissingSourceMapFile(e.currentDirectory===this.currentDirectory?i:es(i,e.currentDirectory),r.path),sourceInfos:this.addSourceInfoToSourceMap(n,e)}:(r.sourceMapFilePath=i.path,i.declarationInfoPath=r.path,i.deferredDelete||(i.documentPositionMapper=a||!1),i.sourceInfos=this.addSourceInfoToSourceMap(n,e,i.sourceInfos)):r.sourceMapFilePath=!1,a}addSourceInfoToSourceMap(e,t,n){if(e){const r=this.getOrCreateScriptInfoNotOpenedByClient(e,t.currentDirectory,t.directoryStructureHost,!1);(n||(n=new Set)).add(r.path)}return n}addMissingSourceMapFile(e,t){return this.watchFactory.watchFile(e,(()=>{const e=this.getScriptInfoForPath(t);e&&e.sourceMapFilePath&&!lt(e.sourceMapFilePath)&&(this.delayUpdateProjectGraphs(e.containingProjects,!0),this.delayUpdateSourceInfoProjects(e.sourceMapFilePath.sourceInfos),e.closeSourceMapFileWatcher())}),2e3,this.hostConfiguration.watchOptions,vW.MissingSourceMapFile)}getSourceFileLike(e,t,n){const r=t.projectName?t:this.findProject(t);if(r){const t=r.toPath(e),n=r.getSourceFile(t);if(n&&n.resolvedPath===t)return n}const i=this.getOrCreateScriptInfoNotOpenedByClient(e,(r||this).currentDirectory,r?r.directoryStructureHost:this.host,!1);if(i){if(n&<(n.sourceMapFilePath)&&i!==n){const e=this.getScriptInfoForPath(n.sourceMapFilePath);e&&(e.sourceInfos??(e.sourceInfos=new Set)).add(i.path)}return i.cacheSourceFile?i.cacheSourceFile.sourceFile:(i.sourceFileLike||(i.sourceFileLike={get text(){return Tn.fail("shouldnt need text"),""},getLineAndCharacterOfPosition:e=>{const t=i.positionToLineOffset(e);return{line:t.line-1,character:t.offset-1}},getPositionOfLineAndCharacter:(e,t,n)=>i.lineOffsetToPosition(e+1,t+1,n)}),i.sourceFileLike)}}setPerformanceEventHandler(e){this.performanceEventHandler=e}setHostConfiguration(e){var t;if(e.file){const t=this.getScriptInfoForNormalizedPath(Zfe(e.file));t&&(t.setOptions(uhe(e.formatOptions),e.preferences),this.logger.info(`Host configuration update for file ${e.file}`))}else{if(void 0!==e.hostInfo&&(this.hostConfiguration.hostInfo=e.hostInfo,this.logger.info(`Host information ${e.hostInfo}`)),e.formatOptions&&(this.hostConfiguration.formatCodeOptions={...this.hostConfiguration.formatCodeOptions,...uhe(e.formatOptions)},this.logger.info("Format host information updated")),e.preferences){const{lazyConfiguredProjectsFromExternalProject:t,includePackageJsonAutoImports:n,includeCompletionsForModuleExports:r}=this.hostConfiguration.preferences;this.hostConfiguration.preferences={...this.hostConfiguration.preferences,...e.preferences},t&&!this.hostConfiguration.preferences.lazyConfiguredProjectsFromExternalProject&&this.externalProjectToConfiguredProjectMap.forEach((e=>e.forEach((e=>{e.deferredClose||e.isClosed()||2!==e.pendingUpdateLevel||this.hasPendingProjectUpdate(e)||e.updateGraph()})))),n===e.preferences.includePackageJsonAutoImports&&!!r==!!e.preferences.includeCompletionsForModuleExports||this.forEachProject((e=>{e.onAutoImportProviderSettingsChanged()}))}if(e.extraFileExtensions&&(this.hostConfiguration.extraFileExtensions=e.extraFileExtensions,this.reloadProjects(),this.logger.info("Host file extension mappings updated")),e.watchOptions){const n=null==(t=_he(e.watchOptions))?void 0:t.watchOptions,r=iR(n,this.currentDirectory);this.hostConfiguration.watchOptions=r,this.hostConfiguration.beforeSubstitution=r===n?void 0:n,this.logger.info(`Host watch options changed to ${JSON.stringify(this.hostConfiguration.watchOptions)}, it will be take effect for next watches.`)}}}getWatchOptions(e){return this.getWatchOptionsFromProjectWatchOptions(e.getWatchOptions(),e.getCurrentDirectory())}getWatchOptionsFromProjectWatchOptions(e,t){const n=this.hostConfiguration.beforeSubstitution?iR(this.hostConfiguration.beforeSubstitution,t):this.hostConfiguration.watchOptions;return e&&n?{...n,...e}:e||n}closeLog(){this.logger.close()}reloadProjects(){this.logger.info("reload projects."),this.filenameToScriptInfo.forEach((e=>{this.openFiles.has(e.path)||e.fileWatcher&&this.onSourceFileChanged(e,this.host.fileExists(e.fileName)?e.deferredDelete?0:1:2)})),this.pendingProjectUpdates.forEach(((e,t)=>{this.throttledOperations.cancel(t),this.pendingProjectUpdates.delete(t)})),this.throttledOperations.cancel(ihe),this.pendingOpenFileProjectUpdates=void 0,this.pendingEnsureProjectForOpenFiles=!1,this.configFileExistenceInfoCache.forEach((e=>{e.config&&(e.config.updateLevel=2)})),this.configFileForOpenFiles.clear(),this.externalProjects.forEach((e=>{this.clearSemanticCache(e),e.updateGraph()}));const e=new Set,t=new Set;this.externalProjectToConfiguredProjectMap.forEach(((n,r)=>{const i=`Reloading configured project in external project: ${r}`;n.forEach((n=>{this.getHostPreferences().lazyConfiguredProjectsFromExternalProject?(n.isInitialLoadPending()||(this.clearSemanticCache(n),n.pendingUpdateLevel=2,n.pendingUpdateReason=Fhe(i)),t.add(n)):this.reloadConfiguredProjectClearingSemanticCache(n,i,e)}))})),this.openFiles.forEach(((n,r)=>{const i=this.getScriptInfoForPath(r);w(i.containingProjects,qme)||this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(i,2,e,t)})),t.forEach((t=>e.add(t))),this.inferredProjects.forEach((e=>this.clearSemanticCache(e))),this.ensureProjectForOpenFiles(),this.cleanupProjectsAndScriptInfos(e,new Set(this.openFiles.keys()),new Set(this.externalProjectToConfiguredProjectMap.keys())),this.logger.info("After reloading projects.."),this.printProjects()}removeRootOfInferredProjectIfNowPartOfOtherProject(e){Tn.assert(e.containingProjects.length>0);const t=e.containingProjects[0];!t.isOrphan()&&Ume(t)&&t.isRoot(e)&&h(e.containingProjects,(e=>e!==t&&!e.isOrphan()))&&t.removeFile(e,!0,!0)}ensureProjectForOpenFiles(){this.logger.info("Before ensureProjectForOpenFiles:"),this.printProjects();const e=this.pendingOpenFileProjectUpdates;this.pendingOpenFileProjectUpdates=void 0,null==e||e.forEach(((e,t)=>this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(this.getScriptInfoForPath(t),1))),this.openFiles.forEach(((e,t)=>{const n=this.getScriptInfoForPath(t);n.isOrphan()?this.assignOrphanScriptInfoToInferredProject(n,e):this.removeRootOfInferredProjectIfNowPartOfOtherProject(n)})),this.pendingEnsureProjectForOpenFiles=!1,this.inferredProjects.forEach(Dhe),this.logger.info("After ensureProjectForOpenFiles:"),this.printProjects()}openClientFile(e,t,n,r){return this.openClientFileWithNormalizedPath(Zfe(e),t,n,!1,r?Zfe(r):void 0)}getOriginalLocationEnsuringConfiguredProject(e,t){const n=e.isSourceOfProjectReferenceRedirect(t.fileName),r=n?t:e.getSourceMapper().tryGetSourcePosition(t);if(!r)return;const{fileName:i}=r,o=this.getScriptInfo(i);if(!o&&!this.host.fileExists(i))return;const s={fileName:Zfe(i),path:this.toPath(i)},a=this.getConfigFileNameForFile(s,!1);if(!a)return;let c=this.findConfiguredProjectByProjectName(a);if(!c){if(e.getCompilerOptions().disableReferencedProjectLoad)return n?t:(null==o?void 0:o.containingProjects.length)?r:t;c=this.createConfiguredProject(a,`Creating project for original file: ${s.fileName}${t!==r?" for location: "+t.fileName:""}`)}Dhe(c);const l=e=>{const t=this.getScriptInfo(i);return t&&e.containsScriptInfo(t)&&!e.isSourceOfProjectReferenceRedirect(t.path)};if(c.isSolution()||!l(c)){if(c=whe(c,i,(e=>l(e)?e:void 0),1,`Creating project referenced in solution ${c.projectName} to find possible configured project for original file: ${s.fileName}${t!==r?" for location: "+t.fileName:""}`),!c)return;if(c===e)return r}d(c);const u=this.getScriptInfo(i);if(u&&u.containingProjects.length)return u.containingProjects.forEach((e=>{Bme(e)&&d(e)})),r;function d(t){(e.originalConfiguredProjects??(e.originalConfiguredProjects=new Set)).add(t.canonicalConfigFilePath)}}fileExists(e){return!!this.getScriptInfoForNormalizedPath(e)||this.host.fileExists(e)}findExternalProjectContainingOpenScriptInfo(e){return w(this.externalProjects,(t=>(Dhe(t),t.containsScriptInfo(e))))}getOrCreateOpenScriptInfo(e,t,n,r,i){const o=this.getOrCreateScriptInfoWorker(e,i?this.getNormalizedAbsolutePath(i):this.currentDirectory,!0,t,n,!!r,void 0,!0);return this.openFiles.set(o.path,i),o}assignProjectToOpenedScriptInfo(e){let t,n;let r,i;if(!this.findExternalProjectContainingOpenScriptInfo(e)&&0===this.serverMode){const o=this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(e,1);o&&(r=o.seenProjects,i=o.sentConfigDiag,o.defaultProject&&(t=o.defaultProject.getConfigFilePath(),n=o.defaultProject.getAllProjectErrors()))}return e.containingProjects.forEach(Dhe),e.isOrphan()&&(null==r||r.forEach((t=>{i.has(t)||this.sendConfigFileDiagEvent(t,e.fileName,!0)})),Tn.assert(this.openFiles.has(e.path)),this.assignOrphanScriptInfoToInferredProject(e,this.openFiles.get(e.path))),Tn.assert(!e.isOrphan()),{configFileName:t,configFileErrors:n,retainProjects:r}}findCreateOrReloadConfiguredProject(e,t,n,r,i,o,s,a){let c=this.findConfiguredProjectByProjectName(e,r),l=!1;switch(t){case 0:if(!c)return;break;case 1:c??(c=this.createConfiguredProject(e,n)),l=!s&&Mhe(c,i);break;case 2:c??(c=this.createConfiguredProject(e,Fhe(n))),l=!a&&this.reloadConfiguredProjectClearingSemanticCache(c,n,o),!a||a.has(c)||o.has(c)||(c.pendingUpdateLevel=2,c.pendingUpdateReason=Fhe(n),a.add(c));break;default:Tn.assertNever(t)}return{project:c,sentConfigFileDiag:l}}tryFindDefaultConfiguredProjectForOpenScriptInfo(e,t,n,r){const i=this.getConfigFileNameForFile(e,0===t);if(!i)return;const o=this.findCreateOrReloadConfiguredProject(i,t,Ohe(e),n,e.fileName,r);if(!o)return;const s=new Set,a=new Set(o.sentConfigFileDiag?[o.project]:void 0);let c,l;var u;return d(u=o.project)||function(i){whe(i,e.path,((e,t)=>(t&&a.add(e),d(e))),t,`Creating project referenced in solution ${i.projectName} to find possible configured project for ${e.fileName} to open`,n,e.fileName,r)}(u),{defaultProject:c??l,sentConfigDiag:a,seenProjects:s};function d(t){if(!Q(s,t))return;const n=t.containsScriptInfo(e);if(n&&!t.isSourceOfProjectReferenceRedirect(e.path))return c=t;l??(l=n?t:void 0)}}tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(e,t,n,r){const i=0===t,o=this.tryFindDefaultConfiguredProjectForOpenScriptInfo(e,t,i,n);if(!o)return;const{defaultProject:s,seenProjects:a}=o;return s&&function(e,t,n,r,i,o,s,a){for(;;){if(!t.isInitialLoadPending()&&(!t.getCompilerOptions().composite||t.getCompilerOptions().disableSolutionSearching))return;const c=t.projectService.getConfigFileNameForFile({fileName:t.getConfigFilePath(),path:e.path,configFileInfo:!0},0===r);if(!c)return;const l=t.projectService.findCreateOrReloadConfiguredProject(c,r,i,o,void 0,s,!0,a);if(!l)return;l.project.isInitialLoadPending()&&t.getCompilerOptions().composite&&l.project.setPotentialProjectReference(t.canonicalConfigFilePath);const u=n(l.project);if(u)return u;t=l.project}}(e,s,(e=>{a.add(e)}),t,`Creating project possibly referencing default composite project ${s.getProjectName()} of open file ${e.fileName}`,i,n,r),o}loadAncestorProjectTree(e){e=e||H(this.configuredProjects,((e,t)=>t.isInitialLoadPending()?void 0:[e,!0]));const t=new Set;for(const n of Ke(this.configuredProjects.values()))Ehe(n,(t=>e.has(t)))&&Dhe(n),this.ensureProjectChildren(n,e,t)}ensureProjectChildren(e,t,n){var r;if(!Q(n,e.canonicalConfigFilePath))return;if(e.getCompilerOptions().disableReferencedProjectLoad)return;const i=null==(r=e.getCurrentProgram())?void 0:r.getResolvedProjectReferences();if(i)for(const o of i){if(!o)continue;const r=bK(o.references,(e=>t.has(e.sourceFile.path)?e:void 0));if(!r)continue;const i=Zfe(o.sourceFile.fileName),s=this.findConfiguredProjectByProjectName(i)??this.createConfiguredProject(i,`Creating project referenced by : ${e.projectName} as it references project ${r.sourceFile.fileName}`);Dhe(s),this.ensureProjectChildren(s,t,n)}}cleanupConfiguredProjects(e,t,n){this.getOrphanConfiguredProjects(e,n,t).forEach((e=>this.removeProject(e)))}cleanupProjectsAndScriptInfos(e,t,n){this.cleanupConfiguredProjects(e,n,t);for(const r of this.inferredProjects.slice())r.isOrphan()&&this.removeProject(r);this.removeOrphanScriptInfos()}openClientFileWithNormalizedPath(e,t,n,r,i){const o=this.getOrCreateOpenScriptInfo(e,t,n,r,i),{retainProjects:s,...a}=this.assignProjectToOpenedScriptInfo(o);return this.cleanupProjectsAndScriptInfos(s,new Set([o.path]),void 0),this.telemetryOnOpenFile(o),this.printProjects(),a}getOrphanConfiguredProjects(e,t,n){const r=new Set(this.configuredProjects.values()),i=e=>{!e.originalConfiguredProjects||!Bme(e)&&e.isOrphan()||e.originalConfiguredProjects.forEach(((e,t)=>{const n=this.getConfiguredProjectByCanonicalConfigFilePath(t);return n&&a(n)}))};return null==e||e.forEach(a),this.inferredProjects.forEach(i),this.externalProjects.forEach(i),this.externalProjectToConfiguredProjectMap.forEach(((e,t)=>{(null==n?void 0:n.has(t))||e.forEach(a)})),this.openFiles.forEach(((e,n)=>{if(null==t?void 0:t.has(n))return;const r=this.getScriptInfoForPath(n);if(w(r.containingProjects,qme))return;const i=this.tryFindDefaultConfiguredProjectAndLoadAncestorsForOpenScriptInfo(r,0);(null==i?void 0:i.defaultProject)&&(null==i||i.seenProjects.forEach(a))})),this.configuredProjects.forEach((e=>{r.has(e)&&(s(e)||Nhe(e,o))&&a(e)})),r;function o(e){return!r.has(e)||s(e)}function s(e){var t,n;return(e.deferredClose||e.projectService.hasPendingProjectUpdate(e))&&!!(null==(n=null==(t=e.projectService.configFileExistenceInfoCache.get(e.canonicalConfigFilePath))?void 0:t.openFilesImpactedByConfigFile)?void 0:n.size)}function a(e){r.delete(e)&&(i(e),Nhe(e,a))}}removeOrphanScriptInfos(){const e=new Map(this.filenameToScriptInfo);this.filenameToScriptInfo.forEach((t=>{if(!t.deferredDelete){if(!t.isScriptOpen()&&t.isOrphan()&&!t.isContainedByBackgroundProject()){if(!t.sourceMapFilePath)return;let e;if(lt(t.sourceMapFilePath)){const n=this.filenameToScriptInfo.get(t.sourceMapFilePath);e=null==n?void 0:n.sourceInfos}else e=t.sourceMapFilePath.sourceInfos;if(!e)return;if(!m_(e,(e=>{const t=this.getScriptInfoForPath(e);return!!t&&(t.isScriptOpen()||!t.isOrphan())})))return}if(e.delete(t.path),t.sourceMapFilePath){let n;if(lt(t.sourceMapFilePath)){const r=this.filenameToScriptInfo.get(t.sourceMapFilePath);(null==r?void 0:r.deferredDelete)?t.sourceMapFilePath={watcher:this.addMissingSourceMapFile(r.fileName,t.path),sourceInfos:r.sourceInfos}:e.delete(t.sourceMapFilePath),n=null==r?void 0:r.sourceInfos}else n=t.sourceMapFilePath.sourceInfos;n&&n.forEach(((t,n)=>e.delete(n)))}}})),e.forEach((e=>this.deleteScriptInfo(e)))}telemetryOnOpenFile(e){if(0!==this.serverMode||!this.eventHandler||!e.isJavaScript()||!jx(this.allJsFilesForOpenFileTelemetry,e.path))return;const t=this.ensureDefaultProjectForFile(e);if(!t.languageServiceEnabled)return;const n=t.getSourceFile(e.path),r=!!n&&!!n.checkJsDirective;this.eventHandler({eventName:ehe,data:{info:{checkJs:r}}})}closeClientFile(e,t){const n=this.getScriptInfoForNormalizedPath(Zfe(e)),r=!!n&&this.closeOpenFile(n,t);return t||this.printProjects(),r}collectChanges(e,t,n,r){for(const i of t){const t=w(e,(e=>e.projectName===i.getProjectName()));r.push(i.getChangesSinceVersion(t&&t.version,n))}}synchronizeProjectList(e,t){const n=[];return this.collectChanges(e,this.externalProjects,t,n),this.collectChanges(e,W(this.configuredProjects.values(),(e=>e.deferredClose?void 0:e)),t,n),this.collectChanges(e,this.inferredProjects,t,n),n}applyChangesInOpenFiles(e,t,n){let r,i,o=!1;if(e)for(const s of e){const e=this.getOrCreateOpenScriptInfo(Zfe(s.fileName),s.content,fhe(s.scriptKind),s.hasMixedContent,s.projectRootPath?Zfe(s.projectRootPath):void 0);(r||(r=[])).push(e)}if(t)for(const s of t){const e=this.getScriptInfo(s.fileName);Tn.assert(!!e),this.applyChangesToFile(e,s.changes)}if(n)for(const s of n)o=this.closeClientFile(s,!0)||o;null==r||r.forEach((e=>{var t;return null==(t=this.assignProjectToOpenedScriptInfo(e).retainProjects)?void 0:t.forEach((e=>(i??(i=new Set)).add(e)))})),o&&this.assignOrphanScriptInfosToInferredProject(),r?(this.cleanupProjectsAndScriptInfos(i,new Set(r.map((e=>e.path))),void 0),r.forEach((e=>this.telemetryOnOpenFile(e))),this.printProjects()):m(n)&&this.printProjects()}applyChangesToFile(e,t){for(const n of t)e.editContent(n.span.start,n.span.start+n.span.length,n.newText)}closeExternalProject(e,t){const n=Zfe(e);if(this.externalProjectToConfiguredProjectMap.get(n))this.externalProjectToConfiguredProjectMap.delete(n);else{const t=this.findExternalProjectByProjectName(e);t&&this.removeProject(t)}t&&(this.cleanupConfiguredProjects(),this.printProjects())}openExternalProjects(e){const t=new Set(this.externalProjects.map((e=>e.getProjectName())));this.externalProjectToConfiguredProjectMap.forEach(((e,n)=>t.add(n)));for(const n of e)this.openExternalProject(n,!1),t.delete(n.projectFileName);t.forEach((e=>this.closeExternalProject(e,!1))),this.cleanupConfiguredProjects(),this.printProjects()}static escapeFilenameForRegex(e){return e.replace(this.filenameEscapeRegexp,"\\$&")}resetSafeList(){this.safelist=lhe}applySafeList(e){const t=e.typeAcquisition;Tn.assert(!!t,"proj.typeAcquisition should be set by now");const n=this.applySafeListWorker(e,e.rootFiles,t);return(null==n?void 0:n.excludedFiles)??[]}applySafeListWorker(t,n,r){if(!1===r.enable||r.disableFilenameBasedTypeAcquisition)return;const i=r.include||(r.include=[]),o=[],s=n.map((e=>Qo(e.fileName)));for(const d of Object.keys(this.safelist)){const t=this.safelist[d];for(const n of s)if(t.match.test(n)){if(this.logger.info(`Excluding files based on rule ${d} matching file '${n}'`),t.types)for(const e of t.types)i.includes(e)||i.push(e);if(t.exclude)for(const r of t.exclude){const i=n.replace(t.match,((...t)=>r.map((n=>"number"==typeof n?lt(t[n])?e.escapeFilenameForRegex(t[n]):(this.logger.info(`Incorrect RegExp specification in safelist rule ${d} - not enough groups`),"\\*"):n)).join("")));o.includes(i)||o.push(i)}else{const t=e.escapeFilenameForRegex(n);o.includes(t)||o.push(t)}}}const a=o.map((e=>new RegExp(e,"i")));let c,l;for(let e=0;e<n.length;e++)if(a.some((t=>t.test(s[e]))))u(e);else{if(r.enable){const t=Ko(bt(s[e]));if(Lo(t,"js")){const n=Xt(ow(t)),r=this.legacySafelist.get(n);if(void 0!==r){this.logger.info(`Excluded '${s[e]}' because it matched ${n} from the legacy safelist`),u(e),i.includes(r)||i.push(r);continue}}}/^.+[.-]min\.js$/.test(s[e])?u(e):null==c||c.push(n[e])}return l?{rootFiles:c,excludedFiles:l}:void 0;function u(e){l||(Tn.assert(!c),c=n.slice(0,e),l=[]),l.push(s[e])}}openExternalProject(e,t){const n=this.findExternalProjectByProjectName(e.projectFileName);let r,i=[];for(const o of e.rootFiles){const t=Zfe(o.fileName);if(cme(t)){if(0===this.serverMode&&this.host.fileExists(t)){let n=this.findConfiguredProjectByProjectName(t);n||(n=this.createConfiguredProject(t,`Creating configured project in external project: ${e.projectFileName}`),this.getHostPreferences().lazyConfiguredProjectsFromExternalProject||n.updateGraph()),(r??(r=new Set)).add(n),Tn.assert(!n.isClosed())}}else i.push(o)}if(r)this.externalProjectToConfiguredProjectMap.set(e.projectFileName,r),n&&this.removeProject(n);else{this.externalProjectToConfiguredProjectMap.delete(e.projectFileName);const t=e.typeAcquisition||{};t.include=t.include||[],t.exclude=t.exclude||[],void 0===t.enable&&(t.enable=Dme(i.map((e=>e.fileName))));const r=this.applySafeListWorker(e,i,t),o=(null==r?void 0:r.excludedFiles)??[];if(i=(null==r?void 0:r.rootFiles)??i,n){n.excludedFiles=o;const r=dhe(e.options),s=_he(e.options,n.getCurrentDirectory()),a=this.getFilenameForExceededTotalSizeLimitForNonTsFiles(e.projectFileName,r,i,yhe);a?n.disableLanguageService(a):n.enableLanguageService(),n.setProjectErrors(null==s?void 0:s.errors),this.updateRootAndOptionsOfNonInferredProject(n,i,yhe,r,t,e.options.compileOnSave,null==s?void 0:s.watchOptions),n.updateGraph()}else{this.createExternalProject(e.projectFileName,i,e.options,t,o).updateGraph()}}t&&(this.cleanupConfiguredProjects(r,new Set(e.projectFileName)),this.printProjects())}hasDeferredExtension(){for(const e of this.hostConfiguration.extraFileExtensions)if(7===e.scriptKind)return!0;return!1}requestEnablePlugin(e,t,n){if(this.host.importPlugin||this.host.require)if(this.logger.info(`Enabling plugin ${t.name} from candidate paths: ${n.join(",")}`),!t.name||za(t.name)||/[\\/]\.\.?($|[\\/])/.test(t.name))this.logger.info(`Skipped loading plugin ${t.name||JSON.stringify(t)} because only package name is allowed plugin name`);else{if(this.host.importPlugin){const r=Mme.importServicePluginAsync(t,n,this.host,(e=>this.logger.info(e)));this.pendingPluginEnablements??(this.pendingPluginEnablements=new Map);let i=this.pendingPluginEnablements.get(e);return i||this.pendingPluginEnablements.set(e,i=[]),void i.push(r)}this.endEnablePlugin(e,Mme.importServicePluginSync(t,n,this.host,(e=>this.logger.info(e))))}else this.logger.info("Plugins were requested but not running in environment that supports 'require'. Nothing will be loaded")}endEnablePlugin(e,{pluginConfigEntry:t,resolvedModule:n,errorLogs:r}){var i;if(n){const r=null==(i=this.currentPluginConfigOverrides)?void 0:i.get(t.name);if(r){const e=t.name;(t=r).name=e}e.enableProxy(n,t)}else h(r,(e=>this.logger.info(e))),this.logger.info(`Couldn't find ${t.name}`)}hasNewPluginEnablementRequests(){return!!this.pendingPluginEnablements}hasPendingPluginEnablements(){return!!this.currentPluginEnablementPromise}async waitForPendingPlugins(){for(;this.currentPluginEnablementPromise;)await this.currentPluginEnablementPromise}enableRequestedPlugins(){this.pendingPluginEnablements&&this.enableRequestedPluginsAsync()}async enableRequestedPluginsAsync(){if(this.currentPluginEnablementPromise&&await this.waitForPendingPlugins(),!this.pendingPluginEnablements)return;const e=Ke(this.pendingPluginEnablements.entries());this.pendingPluginEnablements=void 0,this.currentPluginEnablementPromise=this.enableRequestedPluginsWorker(e),await this.currentPluginEnablementPromise}async enableRequestedPluginsWorker(e){Tn.assert(void 0===this.currentPluginEnablementPromise);let t=!1;await Promise.all(R(e,(async([e,n])=>{const r=await Promise.all(n);if(e.isClosed()||Kme(e))this.logger.info(`Cancelling plugin enabling for ${e.getProjectName()} as it is ${e.isClosed()?"closed":"deferred close"}`);else{t=!0;for(const t of r)this.endEnablePlugin(e,t);this.delayUpdateProjectGraph(e)}}))),this.currentPluginEnablementPromise=void 0,t&&this.sendProjectsUpdatedInBackgroundEvent()}configurePlugin(e){this.forEachEnabledProject((t=>t.onPluginConfigurationChanged(e.pluginName,e.configuration))),this.currentPluginConfigOverrides=this.currentPluginConfigOverrides||new Map,this.currentPluginConfigOverrides.set(e.pluginName,e.configuration)}getPackageJsonsVisibleToFile(e,t,n){const r=this.packageJsonCache,i=n&&this.toPath(n),o=[],s=e=>{switch(r.directoryHasPackageJson(e)){case 3:return r.searchDirectoryAndAncestors(e),s(e);case-1:const n=Zo(e,"package.json");this.watchPackageJsonFile(n,this.toPath(n),t);const i=r.getInDirectory(e);i&&o.push(i)}if(i&&i===e)return!0};return xs(Vo(e),s),o}getNearestAncestorDirectoryWithPackageJson(e){return xs(e,(e=>{switch(this.packageJsonCache.directoryHasPackageJson(e)){case-1:return e;case 0:return;case 3:return this.host.fileExists(Zo(e,"package.json"))?e:void 0}}))}watchPackageJsonFile(e,t,n){Tn.assert(void 0!==n);let r=(this.packageJsonFilesMap??(this.packageJsonFilesMap=new Map)).get(t);if(!r){let n=this.watchFactory.watchFile(e,((e,n)=>{switch(n){case 0:case 1:this.packageJsonCache.addOrUpdate(e,t),this.onPackageJsonChange(r);break;case 2:this.packageJsonCache.delete(t),this.onPackageJsonChange(r),r.projects.clear(),r.close()}}),250,this.hostConfiguration.watchOptions,vW.PackageJson);r={projects:new Set,close:()=>{var e;!r.projects.size&&n&&(n.close(),n=void 0,null==(e=this.packageJsonFilesMap)||e.delete(t),this.packageJsonCache.invalidate(t))}},this.packageJsonFilesMap.set(t,r)}r.projects.add(n),(n.packageJsonWatches??(n.packageJsonWatches=new Set)).add(r)}onPackageJsonChange(e){e.projects.forEach((e=>{var t;return null==(t=e.onPackageJsonChange)?void 0:t.call(e)}))}includePackageJsonAutoImports(){switch(this.hostConfiguration.preferences.includePackageJsonAutoImports){case"on":return 1;case"off":return 0;default:return 2}}getIncompleteCompletionsCache(){return this.incompleteCompletionsCache||(this.incompleteCompletionsCache=function(){let e;return{get:()=>e,set(t){e=t},clear(){e=void 0}}}())}};Uhe.filenameEscapeRegexp=/[-/\\^$*+?.()|[\]{}]/g;var Bhe=Uhe;function qhe(e){return void 0!==e.kind}function Vhe(e){e.print(!1,!1,!1)}function Khe(e){let t,n,r;const i={get(e,t,i,o){if(n&&r===s(e,i,o))return n.get(t)},set(n,r,i,s,c,l,u){if(o(n,i,s).set(r,a(c,l,u,!1)),u)for(const o of l)if(o.isInNodeModules){const n=o.path.substring(0,o.path.indexOf(GL)+GL.length-1),r=e.toPath(n);(null==t?void 0:t.has(r))||(t||(t=new Map)).set(r,e.watchNodeModulesForPackageJsonChanges(n))}},setModulePaths(e,t,n,r,i){const s=o(e,n,r),c=s.get(t);c?c.modulePaths=i:s.set(t,a(void 0,i,void 0,void 0))},setBlockedByPackageJsonDependencies(e,t,n,r,i){const s=o(e,n,r),c=s.get(t);c?c.isBlockedByPackageJsonDependencies=i:s.set(t,a(void 0,void 0,void 0,i))},clear(){null==t||t.forEach(vx),null==n||n.clear(),null==t||t.clear(),r=void 0},count:()=>n?n.size:0};return Tn.isDebugging&&Object.defineProperty(i,"__cache",{get:()=>n}),i;function o(e,t,o){const a=s(e,t,o);return n&&r!==a&&i.clear(),r=a,n||(n=new Map)}function s(e,t,n){return`${e},${t.importModuleSpecifierEnding},${t.importModuleSpecifierPreference},${n.overrideImportMode}`}function a(e,t,n,r){return{kind:e,modulePaths:t,moduleSpecifiers:n,isBlockedByPackageJsonDependencies:r}}}function Jhe(e){const t=new Map,n=new Map;return{addOrUpdate:r,invalidate:function(e){t.delete(e),n.delete(Vo(e))},delete:e=>{t.delete(e),n.set(Vo(e),!0)},getInDirectory:n=>t.get(e.toPath(Zo(n,"package.json")))||void 0,directoryHasPackageJson:t=>i(e.toPath(t)),searchDirectoryAndAncestors:t=>{xs(t,(t=>{const o=e.toPath(t);if(3!==i(o))return!0;const s=Zo(t,"package.json");z$(e,s)?r(s,Zo(o,"package.json")):n.set(o,!0)}))}};function r(r,i){const o=Tn.checkDefined(W$(r,e.host));t.set(i,o),n.delete(Vo(i))}function i(e){return t.has(Zo(e,"package.json"))?-1:n.has(e)?0:3}}var Whe={isCancellationRequested:()=>!1,setRequest:()=>{},resetRequest:()=>{}};function Hhe(e,t){if((Ume(e)||qme(e))&&e.isJsOnlyProject()){const n=e.getScriptInfoForNormalizedPath(t);return n&&!n.isJavaScript()}return!1}function Ghe(e,t,n){const r=t.getScriptInfoForNormalizedPath(e);return{start:r.positionToLineOffset(n.start),end:r.positionToLineOffset(n.start+n.length),text:oK(n.messageText,"\n"),code:n.code,category:xi(n),reportsUnnecessary:n.reportsUnnecessary,reportsDeprecated:n.reportsDeprecated,source:n.source,relatedInformation:R(n.relatedInformation,Qhe)}}function Qhe(e){return e.file?{span:{start:Yhe(ta(e.file,e.start)),end:Yhe(ta(e.file,e.start+e.length)),file:e.file.fileName},message:oK(e.messageText,"\n"),category:xi(e),code:e.code}:{message:oK(e.messageText,"\n"),category:xi(e),code:e.code}}function Yhe(e){return{line:e.line+1,offset:e.character+1}}function Zhe(e,t){const n=e.file&&Yhe(ta(e.file,e.start)),r=e.file&&Yhe(ta(e.file,e.start+e.length)),i=oK(e.messageText,"\n"),{code:o,source:s}=e,a={start:n,end:r,text:i,code:o,category:xi(e),reportsUnnecessary:e.reportsUnnecessary,reportsDeprecated:e.reportsDeprecated,source:s,relatedInformation:R(e.relatedInformation,Qhe)};return t?{...a,fileName:e.file&&e.file.fileName}:a}var Xhe=dme;function $he(e,t,n,r){const i=t.hasLevel(3),o=JSON.stringify(e);i&&t.info(`${e.type}:${eQ(e)}`);return`Content-Length: ${1+n(o,"utf8")}\r\n\r\n${o}${r}`}var ege=class{constructor(e){this.operationHost=e}startNew(e){this.complete(),this.requestId=this.operationHost.getCurrentRequestId(),this.executeAction(e)}complete(){void 0!==this.requestId&&(this.operationHost.sendRequestCompletedEvent(this.requestId),this.requestId=void 0),this.setTimerHandle(void 0),this.setImmediateId(void 0)}immediate(e,t){const n=this.requestId;Tn.assert(n===this.operationHost.getCurrentRequestId(),"immediate: incorrect request id"),this.setImmediateId(this.operationHost.getServerHost().setImmediate((()=>{this.immediateId=void 0,this.operationHost.executeWithRequestId(n,(()=>this.executeAction(t)))}),e))}delay(e,t,n){const r=this.requestId;Tn.assert(r===this.operationHost.getCurrentRequestId(),"delay: incorrect request id"),this.setTimerHandle(this.operationHost.getServerHost().setTimeout((()=>{this.timerHandle=void 0,this.operationHost.executeWithRequestId(r,(()=>this.executeAction(n)))}),t,e))}executeAction(e){var t,n,r,i,o,s;let a=!1;try{this.operationHost.isCancellationRequested()?(a=!0,null==(t=ar)||t.instant(ar.Phase.Session,"stepCanceled",{seq:this.requestId,early:!0})):(null==(n=ar)||n.push(ar.Phase.Session,"stepAction",{seq:this.requestId}),e(this),null==(r=ar)||r.pop())}catch(Mge){null==(i=ar)||i.popAll(),a=!0,Mge instanceof jr?null==(o=ar)||o.instant(ar.Phase.Session,"stepCanceled",{seq:this.requestId}):(null==(s=ar)||s.instant(ar.Phase.Session,"stepError",{seq:this.requestId,message:Mge.message}),this.operationHost.logError(Mge,`delayed processing of request ${this.requestId}`))}!a&&this.hasPendingWork()||this.complete()}setTimerHandle(e){void 0!==this.timerHandle&&this.operationHost.getServerHost().clearTimeout(this.timerHandle),this.timerHandle=e}setImmediateId(e){void 0!==this.immediateId&&this.operationHost.getServerHost().clearImmediate(this.immediateId),this.immediateId=e}hasPendingWork(){return!!this.timerHandle||!!this.immediateId}};function tge(e,t){return{seq:0,type:"event",event:e,body:t}}function nge(e){return st((({textSpan:e})=>e.start+100003*e.length),yX(e))}function rge(e,t,n){for(const r of at(e)?e:e.projects)n(r,t);!at(e)&&e.symLinkedProjects&&e.symLinkedProjects.forEach(((e,t)=>{for(const r of e)n(r,t)}))}function ige(e,t,n,r,i,o){const s=new Map,a=ot();a.enqueue({project:t,location:n}),rge(e,n.fileName,((e,t)=>{const r={fileName:t,pos:n.pos};a.enqueue({project:e,location:r})}));const c=t.projectService,l=t.getCancellationToken(),u=function(e,t,n){const r=e.getLanguageService().getDefinitionAtPosition(t.fileName,t.pos,!1,n),i=r&&we(r);return i&&!i.isLocal?{fileName:i.fileName,pos:i.textSpan.start}:void 0}(t,n,r),d=St((()=>t.isSourceOfProjectReferenceRedirect(u.fileName)?u:t.getLanguageService().getSourceMapper().tryGetGeneratedPosition(u))),_=St((()=>t.isSourceOfProjectReferenceRedirect(u.fileName)?u:t.getLanguageService().getSourceMapper().tryGetSourcePosition(u))),p=new Set;e:for(;!a.isEmpty();){for(;!a.isEmpty();){if(l.isCancellationRequested())break e;const{project:e,location:t}=a.dequeue();if(s.has(e))continue;if(sge(e,t))continue;if(Dhe(e),!e.containsFile(Zfe(t.fileName)))continue;const n=f(e,t);s.set(e,n??Gfe),p.add(age(e))}u&&(c.loadAncestorProjectTree(p),c.forEachEnabledProject((e=>{if(l.isCancellationRequested())return;if(s.has(e))return;const t=oge(u,e,d,_);t&&a.enqueue({project:e,location:t})})))}return 1===s.size?Ce(s.values()):s;function f(e,t){const n=i(e,t);if(n){for(const t of n)o(t,(t=>{const n=c.getOriginalLocationEnsuringConfiguredProject(e,t);if(!n)return;const r=c.getScriptInfo(n.fileName);for(const e of r.containingProjects)e.isOrphan()||s.has(e)||a.enqueue({project:e,location:n});const i=c.getSymlinkedProjects(r);i&&i.forEach(((e,t)=>{for(const r of e)r.isOrphan()||s.has(r)||a.enqueue({project:r,location:{fileName:t,pos:n.pos}})}))}));return n}}}function oge(e,t,n,r){if(t.containsFile(Zfe(e.fileName))&&!sge(t,e))return e;const i=n();if(i&&t.containsFile(Zfe(i.fileName)))return i;const o=r();return o&&t.containsFile(Zfe(o.fileName))?o:void 0}function sge(e,t){if(!t)return!1;const n=e.getLanguageService().getProgram();if(!n)return!1;const r=n.getSourceFile(t.fileName);return!!r&&r.resolvedPath!==r.path&&r.resolvedPath!==e.toPath(t.fileName)}function age(e){return Bme(e)?e.canonicalConfigFilePath:e.getProjectName()}function cge({fileName:e,textSpan:t}){return{fileName:e,pos:t.start}}function lge(e,t){return xX(e,t.getSourceMapper(),(e=>t.projectService.fileExists(e)))}function uge(e,t){return SX(e,t.getSourceMapper(),(e=>t.projectService.fileExists(e)))}function dge(e,t){return TX(e,t.getSourceMapper(),(e=>t.projectService.fileExists(e)))}var _ge=["openExternalProject","openExternalProjects","closeExternalProject","synchronizeProjectList","emit-output","compileOnSaveAffectedFileList","compileOnSaveEmitFile","compilerOptionsDiagnostics-full","encodedSemanticClassifications-full","semanticDiagnosticsSync","suggestionDiagnosticsSync","geterrForProject","reload","reloadProjects","getCodeFixes","getCodeFixes-full","getCombinedCodeFix","getCombinedCodeFix-full","applyCodeActionCommand","getSupportedCodeFixes","getApplicableRefactors","getMoveToRefactoringFileSuggestions","getEditsForRefactor","getEditsForRefactor-full","organizeImports","organizeImports-full","getEditsForFileRename","getEditsForFileRename-full","prepareCallHierarchy","provideCallHierarchyIncomingCalls","provideCallHierarchyOutgoingCalls","getPasteEdits"],pge=[..._ge,"definition","definition-full","definitionAndBoundSpan","definitionAndBoundSpan-full","typeDefinition","implementation","implementation-full","references","references-full","rename","renameLocations-full","rename-full","quickinfo","quickinfo-full","completionInfo","completions","completions-full","completionEntryDetails","completionEntryDetails-full","signatureHelp","signatureHelp-full","navto","navto-full","documentHighlights","documentHighlights-full"],fge=class e{constructor(e){this.changeSeq=0,this.handlers=new Map(Object.entries({status:()=>{const e={version:u};return this.requiredResponse(e)},openExternalProject:e=>(this.projectService.openExternalProject(e.arguments,!0),this.requiredResponse(!0)),openExternalProjects:e=>(this.projectService.openExternalProjects(e.arguments.projects),this.requiredResponse(!0)),closeExternalProject:e=>(this.projectService.closeExternalProject(e.arguments.projectFileName,!0),this.requiredResponse(!0)),synchronizeProjectList:e=>{const t=this.projectService.synchronizeProjectList(e.arguments.knownProjects,e.arguments.includeProjectReferenceRedirectInfo);if(!t.some((e=>e.projectErrors&&0!==e.projectErrors.length)))return this.requiredResponse(t);const n=R(t,(e=>e.projectErrors&&0!==e.projectErrors.length?{info:e.info,changes:e.changes,files:e.files,projectErrors:this.convertToDiagnosticsWithLinePosition(e.projectErrors,void 0)}:e));return this.requiredResponse(n)},updateOpen:e=>(this.changeSeq++,this.projectService.applyChangesInOpenFiles(e.arguments.openFiles&&L(e.arguments.openFiles,(e=>({fileName:e.file,content:e.fileContent,scriptKind:e.scriptKindName,projectRootPath:e.projectRootPath}))),e.arguments.changedFiles&&L(e.arguments.changedFiles,(e=>({fileName:e.fileName,changes:W(be(e.textChanges),(t=>{const n=Tn.checkDefined(this.projectService.getScriptInfo(e.fileName)),r=n.lineOffsetToPosition(t.start.line,t.start.offset),i=n.lineOffsetToPosition(t.end.line,t.end.offset);return r>=0?{span:{start:r,length:i-r},newText:t.newText}:void 0}))}))),e.arguments.closedFiles),this.requiredResponse(!0)),applyChangedToOpenFiles:e=>(this.changeSeq++,this.projectService.applyChangesInOpenFiles(e.arguments.openFiles,e.arguments.changedFiles&&L(e.arguments.changedFiles,(e=>({fileName:e.fileName,changes:be(e.changes)}))),e.arguments.closedFiles),this.requiredResponse(!0)),exit:()=>(this.exit(),this.notRequired()),definition:e=>this.requiredResponse(this.getDefinition(e.arguments,!0)),"definition-full":e=>this.requiredResponse(this.getDefinition(e.arguments,!1)),definitionAndBoundSpan:e=>this.requiredResponse(this.getDefinitionAndBoundSpan(e.arguments,!0)),"definitionAndBoundSpan-full":e=>this.requiredResponse(this.getDefinitionAndBoundSpan(e.arguments,!1)),findSourceDefinition:e=>this.requiredResponse(this.findSourceDefinition(e.arguments)),"emit-output":e=>this.requiredResponse(this.getEmitOutput(e.arguments)),typeDefinition:e=>this.requiredResponse(this.getTypeDefinition(e.arguments)),implementation:e=>this.requiredResponse(this.getImplementation(e.arguments,!0)),"implementation-full":e=>this.requiredResponse(this.getImplementation(e.arguments,!1)),references:e=>this.requiredResponse(this.getReferences(e.arguments,!0)),"references-full":e=>this.requiredResponse(this.getReferences(e.arguments,!1)),rename:e=>this.requiredResponse(this.getRenameLocations(e.arguments,!0)),"renameLocations-full":e=>this.requiredResponse(this.getRenameLocations(e.arguments,!1)),"rename-full":e=>this.requiredResponse(this.getRenameInfo(e.arguments)),open:e=>(this.openClientFile(Zfe(e.arguments.file),e.arguments.fileContent,mhe(e.arguments.scriptKindName),e.arguments.projectRootPath?Zfe(e.arguments.projectRootPath):void 0),this.notRequired()),quickinfo:e=>this.requiredResponse(this.getQuickInfoWorker(e.arguments,!0)),"quickinfo-full":e=>this.requiredResponse(this.getQuickInfoWorker(e.arguments,!1)),getOutliningSpans:e=>this.requiredResponse(this.getOutliningSpans(e.arguments,!0)),outliningSpans:e=>this.requiredResponse(this.getOutliningSpans(e.arguments,!1)),todoComments:e=>this.requiredResponse(this.getTodoComments(e.arguments)),indentation:e=>this.requiredResponse(this.getIndentation(e.arguments)),nameOrDottedNameSpan:e=>this.requiredResponse(this.getNameOrDottedNameSpan(e.arguments)),breakpointStatement:e=>this.requiredResponse(this.getBreakpointStatement(e.arguments)),braceCompletion:e=>this.requiredResponse(this.isValidBraceCompletion(e.arguments)),docCommentTemplate:e=>this.requiredResponse(this.getDocCommentTemplate(e.arguments)),getSpanOfEnclosingComment:e=>this.requiredResponse(this.getSpanOfEnclosingComment(e.arguments)),fileReferences:e=>this.requiredResponse(this.getFileReferences(e.arguments,!0)),"fileReferences-full":e=>this.requiredResponse(this.getFileReferences(e.arguments,!1)),format:e=>this.requiredResponse(this.getFormattingEditsForRange(e.arguments)),formatonkey:e=>this.requiredResponse(this.getFormattingEditsAfterKeystroke(e.arguments)),"format-full":e=>this.requiredResponse(this.getFormattingEditsForDocumentFull(e.arguments)),"formatonkey-full":e=>this.requiredResponse(this.getFormattingEditsAfterKeystrokeFull(e.arguments)),"formatRange-full":e=>this.requiredResponse(this.getFormattingEditsForRangeFull(e.arguments)),completionInfo:e=>this.requiredResponse(this.getCompletions(e.arguments,"completionInfo")),completions:e=>this.requiredResponse(this.getCompletions(e.arguments,"completions")),"completions-full":e=>this.requiredResponse(this.getCompletions(e.arguments,"completions-full")),completionEntryDetails:e=>this.requiredResponse(this.getCompletionEntryDetails(e.arguments,!1)),"completionEntryDetails-full":e=>this.requiredResponse(this.getCompletionEntryDetails(e.arguments,!0)),compileOnSaveAffectedFileList:e=>this.requiredResponse(this.getCompileOnSaveAffectedFileList(e.arguments)),compileOnSaveEmitFile:e=>this.requiredResponse(this.emitFile(e.arguments)),signatureHelp:e=>this.requiredResponse(this.getSignatureHelpItems(e.arguments,!0)),"signatureHelp-full":e=>this.requiredResponse(this.getSignatureHelpItems(e.arguments,!1)),"compilerOptionsDiagnostics-full":e=>this.requiredResponse(this.getCompilerOptionsDiagnostics(e.arguments)),"encodedSyntacticClassifications-full":e=>this.requiredResponse(this.getEncodedSyntacticClassifications(e.arguments)),"encodedSemanticClassifications-full":e=>this.requiredResponse(this.getEncodedSemanticClassifications(e.arguments)),cleanup:()=>(this.cleanup(),this.requiredResponse(!0)),semanticDiagnosticsSync:e=>this.requiredResponse(this.getSemanticDiagnosticsSync(e.arguments)),syntacticDiagnosticsSync:e=>this.requiredResponse(this.getSyntacticDiagnosticsSync(e.arguments)),suggestionDiagnosticsSync:e=>this.requiredResponse(this.getSuggestionDiagnosticsSync(e.arguments)),geterr:e=>(this.errorCheck.startNew((t=>this.getDiagnostics(t,e.arguments.delay,e.arguments.files))),this.notRequired()),geterrForProject:e=>(this.errorCheck.startNew((t=>this.getDiagnosticsForProject(t,e.arguments.delay,e.arguments.file))),this.notRequired()),change:e=>(this.change(e.arguments),this.notRequired()),configure:e=>(this.projectService.setHostConfiguration(e.arguments),this.doOutput(void 0,"configure",e.seq,!0),this.notRequired()),reload:e=>(this.reload(e.arguments,e.seq),this.requiredResponse({reloadFinished:!0})),saveto:e=>{const t=e.arguments;return this.saveToTmp(t.file,t.tmpfile),this.notRequired()},close:e=>{const t=e.arguments;return this.closeClientFile(t.file),this.notRequired()},navto:e=>this.requiredResponse(this.getNavigateToItems(e.arguments,!0)),"navto-full":e=>this.requiredResponse(this.getNavigateToItems(e.arguments,!1)),brace:e=>this.requiredResponse(this.getBraceMatching(e.arguments,!0)),"brace-full":e=>this.requiredResponse(this.getBraceMatching(e.arguments,!1)),navbar:e=>this.requiredResponse(this.getNavigationBarItems(e.arguments,!0)),"navbar-full":e=>this.requiredResponse(this.getNavigationBarItems(e.arguments,!1)),navtree:e=>this.requiredResponse(this.getNavigationTree(e.arguments,!0)),"navtree-full":e=>this.requiredResponse(this.getNavigationTree(e.arguments,!1)),documentHighlights:e=>this.requiredResponse(this.getDocumentHighlights(e.arguments,!0)),"documentHighlights-full":e=>this.requiredResponse(this.getDocumentHighlights(e.arguments,!1)),compilerOptionsForInferredProjects:e=>(this.setCompilerOptionsForInferredProjects(e.arguments),this.requiredResponse(!0)),projectInfo:e=>this.requiredResponse(this.getProjectInfo(e.arguments)),reloadProjects:()=>(this.projectService.reloadProjects(),this.notRequired()),jsxClosingTag:e=>this.requiredResponse(this.getJsxClosingTag(e.arguments)),linkedEditingRange:e=>this.requiredResponse(this.getLinkedEditingRange(e.arguments)),getCodeFixes:e=>this.requiredResponse(this.getCodeFixes(e.arguments,!0)),"getCodeFixes-full":e=>this.requiredResponse(this.getCodeFixes(e.arguments,!1)),getCombinedCodeFix:e=>this.requiredResponse(this.getCombinedCodeFix(e.arguments,!0)),"getCombinedCodeFix-full":e=>this.requiredResponse(this.getCombinedCodeFix(e.arguments,!1)),applyCodeActionCommand:e=>this.requiredResponse(this.applyCodeActionCommand(e.arguments)),getSupportedCodeFixes:e=>this.requiredResponse(this.getSupportedCodeFixes(e.arguments)),getApplicableRefactors:e=>this.requiredResponse(this.getApplicableRefactors(e.arguments)),getEditsForRefactor:e=>this.requiredResponse(this.getEditsForRefactor(e.arguments,!0)),getMoveToRefactoringFileSuggestions:e=>this.requiredResponse(this.getMoveToRefactoringFileSuggestions(e.arguments)),getPasteEdits:e=>this.requiredResponse(this.getPasteEdits(e.arguments)),"getEditsForRefactor-full":e=>this.requiredResponse(this.getEditsForRefactor(e.arguments,!1)),organizeImports:e=>this.requiredResponse(this.organizeImports(e.arguments,!0)),"organizeImports-full":e=>this.requiredResponse(this.organizeImports(e.arguments,!1)),getEditsForFileRename:e=>this.requiredResponse(this.getEditsForFileRename(e.arguments,!0)),"getEditsForFileRename-full":e=>this.requiredResponse(this.getEditsForFileRename(e.arguments,!1)),configurePlugin:e=>(this.configurePlugin(e.arguments),this.doOutput(void 0,"configurePlugin",e.seq,!0),this.notRequired()),selectionRange:e=>this.requiredResponse(this.getSmartSelectionRange(e.arguments,!0)),"selectionRange-full":e=>this.requiredResponse(this.getSmartSelectionRange(e.arguments,!1)),prepareCallHierarchy:e=>this.requiredResponse(this.prepareCallHierarchy(e.arguments)),provideCallHierarchyIncomingCalls:e=>this.requiredResponse(this.provideCallHierarchyIncomingCalls(e.arguments)),provideCallHierarchyOutgoingCalls:e=>this.requiredResponse(this.provideCallHierarchyOutgoingCalls(e.arguments)),toggleLineComment:e=>this.requiredResponse(this.toggleLineComment(e.arguments,!0)),"toggleLineComment-full":e=>this.requiredResponse(this.toggleLineComment(e.arguments,!1)),toggleMultilineComment:e=>this.requiredResponse(this.toggleMultilineComment(e.arguments,!0)),"toggleMultilineComment-full":e=>this.requiredResponse(this.toggleMultilineComment(e.arguments,!1)),commentSelection:e=>this.requiredResponse(this.commentSelection(e.arguments,!0)),"commentSelection-full":e=>this.requiredResponse(this.commentSelection(e.arguments,!1)),uncommentSelection:e=>this.requiredResponse(this.uncommentSelection(e.arguments,!0)),"uncommentSelection-full":e=>this.requiredResponse(this.uncommentSelection(e.arguments,!1)),provideInlayHints:e=>this.requiredResponse(this.provideInlayHints(e.arguments)),mapCode:e=>this.requiredResponse(this.mapCode(e.arguments))})),this.host=e.host,this.cancellationToken=e.cancellationToken,this.typingsInstaller=e.typingsInstaller||wme,this.byteLength=e.byteLength,this.hrtime=e.hrtime,this.logger=e.logger,this.canUseEvents=e.canUseEvents,this.suppressDiagnosticEvents=e.suppressDiagnosticEvents,this.noGetErrOnBackgroundUpdate=e.noGetErrOnBackgroundUpdate;const{throttleWaitMilliseconds:t}=e;this.eventHandler=this.canUseEvents?e.eventHandler||(e=>this.defaultEventHandler(e)):void 0;const n={executeWithRequestId:(e,t)=>this.executeWithRequestId(e,t),getCurrentRequestId:()=>this.currentRequestId,getServerHost:()=>this.host,logError:(e,t)=>this.logError(e,t),sendRequestCompletedEvent:e=>this.sendRequestCompletedEvent(e),isCancellationRequested:()=>this.cancellationToken.isCancellationRequested()};this.errorCheck=new ege(n);const r={host:this.host,logger:this.logger,cancellationToken:this.cancellationToken,useSingleInferredProject:e.useSingleInferredProject,useInferredProjectPerProjectRoot:e.useInferredProjectPerProjectRoot,typingsInstaller:this.typingsInstaller,throttleWaitMilliseconds:t,eventHandler:this.eventHandler,suppressDiagnosticEvents:this.suppressDiagnosticEvents,globalPlugins:e.globalPlugins,pluginProbeLocations:e.pluginProbeLocations,allowLocalPluginLoads:e.allowLocalPluginLoads,typesMapLocation:e.typesMapLocation,serverMode:e.serverMode,session:this,canUseWatchEvents:e.canUseWatchEvents,incrementalVerifier:e.incrementalVerifier};switch(this.projectService=new Bhe(r),this.projectService.setPerformanceEventHandler(this.performanceEventHandler.bind(this)),this.gcTimer=new ame(this.host,7e3,this.logger),this.projectService.serverMode){case 0:break;case 1:_ge.forEach((e=>this.handlers.set(e,(e=>{throw new Error(`Request: ${e.command} not allowed in LanguageServiceMode.PartialSemantic`)}))));break;case 2:pge.forEach((e=>this.handlers.set(e,(e=>{throw new Error(`Request: ${e.command} not allowed in LanguageServiceMode.Syntactic`)}))));break;default:Tn.assertNever(this.projectService.serverMode)}}sendRequestCompletedEvent(e){this.event({request_seq:e},"requestCompleted")}addPerformanceData(e,t){this.performanceData||(this.performanceData={}),this.performanceData[e]=(this.performanceData[e]??0)+t}performanceEventHandler(e){switch(e.kind){case"UpdateGraph":this.addPerformanceData("updateGraphDurationMs",e.durationMs);break;case"CreatePackageJsonAutoImportProvider":this.addPerformanceData("createAutoImportProviderProgramDurationMs",e.durationMs)}}defaultEventHandler(e){switch(e.eventName){case Hme:this.projectsUpdatedInBackgroundEvent(e.data.openFiles);break;case Gme:this.event({projectName:e.data.project.getProjectName(),reason:e.data.reason},e.eventName);break;case Qme:this.event({projectName:e.data.project.getProjectName()},e.eventName);break;case Yme:case the:case nhe:case rhe:this.event(e.data,e.eventName);break;case Zme:this.event({triggerFile:e.data.triggerFile,configFile:e.data.configFileName,diagnostics:R(e.data.diagnostics,(e=>Zhe(e,!0)))},e.eventName);break;case Xme:this.event({projectName:e.data.project.getProjectName(),languageServiceEnabled:e.data.languageServiceEnabled},e.eventName);break;case $me:{const t="telemetry";this.event({telemetryEventName:e.eventName,payload:e.data},t);break}}}projectsUpdatedInBackgroundEvent(e){this.projectService.logger.info(`got projects updated in background ${e}`),e.length&&(this.suppressDiagnosticEvents||this.noGetErrOnBackgroundUpdate||(this.projectService.logger.info(`Queueing diagnostics update for ${e}`),this.errorCheck.startNew((t=>this.updateErrorCheck(t,e,100,!0)))),this.event({openFiles:e},Hme))}logError(e,t){this.logErrorWorker(e,t)}logErrorWorker(e,t,n){let r="Exception on executing command "+t;if(e.message&&(r+=":\n"+$G(e.message),e.stack&&(r+="\n"+$G(e.stack))),this.logger.hasLevel(3)){if(n)try{const{file:e,project:t}=this.getFileAndProject(n),i=t.getScriptInfoForNormalizedPath(e);if(i){const e=KZ(i.getSnapshot());r+=`\n\nFile text of ${n.file}:${$G(e)}\n`}}catch{}if(e.ProgramFiles){r+=`\n\nProgram files: ${JSON.stringify(e.ProgramFiles)}\n`,r+="\n\nProjects::\n";let t=0;const n=e=>{r+=`\nProject '${e.projectName}' (${Cme[e.projectKind]}) ${t}\n`,r+=e.filesToString(!0),r+="\n-----------------------------------------------\n",t++};this.projectService.externalProjects.forEach(n),this.projectService.configuredProjects.forEach(n),this.projectService.inferredProjects.forEach(n)}}this.logger.msg(r,"Err")}send(e){"event"!==e.type||this.canUseEvents?this.writeMessage(e):this.logger.hasLevel(3)&&this.logger.info(`Session does not support events: ignored event: ${eQ(e)}`)}writeMessage(e){var t;const n=$he(e,this.logger,this.byteLength,this.host.newLine);null==(t=rr)||t.logEvent(`Response message size: ${n.length}`),this.host.write(n)}event(e,t){this.send(tge(t,e))}doOutput(e,t,n,r,i){const o={seq:0,type:"response",command:t,request_seq:n,success:r,performanceData:this.performanceData};if(r){let t;if(at(e))o.body=e,t=e.metadata,delete e.metadata;else if("object"==typeof e)if(e.metadata){const{metadata:n,...r}=e;o.body=r,t=n}else o.body=e;else o.body=e;t&&(o.metadata=t)}else Tn.assert(void 0===e);i&&(o.message=i),this.send(o)}semanticCheck(e,t){var n,r;null==(n=ar)||n.push(ar.Phase.Session,"semanticCheck",{file:e,configFilePath:t.canonicalConfigFilePath});const i=Hhe(t,e)?Gfe:t.getLanguageService().getSemanticDiagnostics(e).filter((e=>!!e.file));this.sendDiagnosticsEvent(e,t,i,"semanticDiag"),null==(r=ar)||r.pop()}syntacticCheck(e,t){var n,r;null==(n=ar)||n.push(ar.Phase.Session,"syntacticCheck",{file:e,configFilePath:t.canonicalConfigFilePath}),this.sendDiagnosticsEvent(e,t,t.getLanguageService().getSyntacticDiagnostics(e),"syntaxDiag"),null==(r=ar)||r.pop()}suggestionCheck(e,t){var n,r;null==(n=ar)||n.push(ar.Phase.Session,"suggestionCheck",{file:e,configFilePath:t.canonicalConfigFilePath}),this.sendDiagnosticsEvent(e,t,t.getLanguageService().getSuggestionDiagnostics(e),"suggestionDiag"),null==(r=ar)||r.pop()}sendDiagnosticsEvent(e,t,n,r){try{this.event({file:e,diagnostics:n.map((n=>Ghe(e,t,n)))},r)}catch(i){this.logError(i,r)}}updateErrorCheck(e,t,n,r=!0){Tn.assert(!this.suppressDiagnosticEvents);const i=this.changeSeq,o=Math.min(n,200);let s=0;const a=()=>{s++,t.length>s&&e.delay("checkOne",o,c)},c=()=>{if(this.changeSeq!==i)return;let n=t[s];if(lt(n)&&(n=this.toPendingErrorCheck(n),!n))return void a();const{fileName:o,project:c}=n;Dhe(c),c.containsFile(o,r)&&(this.syntacticCheck(o,c),this.changeSeq===i&&(0===c.projectService.serverMode?e.immediate("semanticCheck",(()=>{this.semanticCheck(o,c),this.changeSeq===i&&(this.getPreferences(o).disableSuggestions?a():e.immediate("suggestionCheck",(()=>{this.suggestionCheck(o,c),a()})))})):a()))};t.length>s&&this.changeSeq===i&&e.delay("checkOne",n,c)}cleanProjects(e,t){if(t){this.logger.info(`cleaning ${e}`);for(const e of t)e.getLanguageService(!1).cleanupSemanticCache(),e.cleanupProgram()}}cleanup(){this.cleanProjects("inferred projects",this.projectService.inferredProjects),this.cleanProjects("configured projects",Ke(this.projectService.configuredProjects.values())),this.cleanProjects("external projects",this.projectService.externalProjects),this.host.gc&&(this.logger.info("host.gc()"),this.host.gc())}getEncodedSyntacticClassifications(e){const{file:t,languageService:n}=this.getFileAndLanguageServiceForSyntacticOperation(e);return n.getEncodedSyntacticClassifications(t,e)}getEncodedSemanticClassifications(e){const{file:t,project:n}=this.getFileAndProject(e),r="2020"===e.format?"2020":"original";return n.getLanguageService().getEncodedSemanticClassifications(t,e,r)}getProject(e){return void 0===e?void 0:this.projectService.findProject(e)}getConfigFileAndProject(e){const t=this.getProject(e.projectFileName),n=Zfe(e.file);return{configFile:t&&t.hasConfigFile(n)?n:void 0,project:t}}getConfigFileDiagnostics(e,t,n){const r=M(te(t.getAllProjectErrors(),t.getLanguageService().getCompilerOptionsDiagnostics()),(t=>!!t.file&&t.file.fileName===e));return n?this.convertToDiagnosticsWithLinePositionFromDiagnosticFile(r):R(r,(e=>Zhe(e,!1)))}convertToDiagnosticsWithLinePositionFromDiagnosticFile(e){return e.map((e=>({message:oK(e.messageText,this.host.newLine),start:e.start,length:e.length,category:xi(e),code:e.code,source:e.source,startLocation:e.file&&Yhe(ta(e.file,e.start)),endLocation:e.file&&Yhe(ta(e.file,e.start+e.length)),reportsUnnecessary:e.reportsUnnecessary,reportsDeprecated:e.reportsDeprecated,relatedInformation:R(e.relatedInformation,Qhe)})))}getCompilerOptionsDiagnostics(e){const t=this.getProject(e.projectFileName);return this.convertToDiagnosticsWithLinePosition(M(t.getLanguageService().getCompilerOptionsDiagnostics(),(e=>!e.file)),void 0)}convertToDiagnosticsWithLinePosition(e,t){return e.map((e=>({message:oK(e.messageText,this.host.newLine),start:e.start,length:e.length,category:xi(e),code:e.code,source:e.source,startLocation:t&&t.positionToLineOffset(e.start),endLocation:t&&t.positionToLineOffset(e.start+e.length),reportsUnnecessary:e.reportsUnnecessary,reportsDeprecated:e.reportsDeprecated,relatedInformation:R(e.relatedInformation,Qhe)})))}getDiagnosticsWorker(e,t,n,r){const{project:i,file:o}=this.getFileAndProject(e);if(t&&Hhe(i,o))return Gfe;const s=i.getScriptInfoForNormalizedPath(o),a=n(i,o);return r?this.convertToDiagnosticsWithLinePosition(a,s):a.map((e=>Ghe(o,i,e)))}getDefinition(t,n){const{file:r,project:i}=this.getFileAndProject(t),o=this.getPositionInFile(t,r),s=this.mapDefinitionInfoLocations(i.getLanguageService().getDefinitionAtPosition(r,o)||Gfe,i);return n?this.mapDefinitionInfo(s,i):s.map(e.mapToOriginalLocation)}mapDefinitionInfoLocations(e,t){return e.map((e=>{const n=uge(e,t);return n?{...n,containerKind:e.containerKind,containerName:e.containerName,kind:e.kind,name:e.name,failedAliasResolution:e.failedAliasResolution,...e.unverified&&{unverified:e.unverified}}:e}))}getDefinitionAndBoundSpan(t,n){const{file:r,project:i}=this.getFileAndProject(t),o=this.getPositionInFile(t,r),s=Tn.checkDefined(i.getScriptInfo(r)),a=i.getLanguageService().getDefinitionAndBoundSpan(r,o);if(!a||!a.definitions)return{definitions:Gfe,textSpan:void 0};const c=this.mapDefinitionInfoLocations(a.definitions,i),{textSpan:l}=a;return n?{definitions:this.mapDefinitionInfo(c,i),textSpan:mge(l,s)}:{definitions:c.map(e.mapToOriginalLocation),textSpan:l}}findSourceDefinition(e){var t;const{file:n,project:r}=this.getFileAndProject(e),i=this.getPositionInFile(e,n),o=r.getLanguageService().getDefinitionAtPosition(n,i);let s=this.mapDefinitionInfoLocations(o||Gfe,r).slice();if(0===this.projectService.serverMode&&(!$(s,(e=>Zfe(e.fileName)!==n&&!e.isAmbient))||$(s,(e=>!!e.failedAliasResolution)))){const e=st((e=>e.textSpan.start),yX(this.host.useCaseSensitiveFileNames));null==s||s.forEach((t=>e.add(t)));const o=r.getNoDtsResolutionProject(n),u=o.getLanguageService(),d=null==(t=u.getDefinitionAtPosition(n,i,!0,!1))?void 0:t.filter((e=>Zfe(e.fileName)!==n));if($(d))for(const t of d){if(t.unverified){const n=c(t,r.getLanguageService().getProgram(),u.getProgram());if($(n)){for(const t of n)e.add(t);continue}}e.add(t)}else{const t=s.filter((e=>Zfe(e.fileName)!==n&&e.isAmbient));for(const s of $(t)?t:function(){const e=r.getLanguageService(),t=e.getProgram(),o=HY(t.getSourceFile(n),i);if((Hd(o)||YC(o))&&Bx(o.parent))return Jx(o,(t=>{var r;if(t===o)return;const i=null==(r=e.getDefinitionAtPosition(n,t.getStart(),!0,!1))?void 0:r.filter((e=>Zfe(e.fileName)!==n&&e.isAmbient)).map((e=>({fileName:e.fileName,name:$g(o)})));return $(i)?i:void 0}))||Gfe;return Gfe}()){const t=a(s.fileName,n,o);if(!t)continue;const r=this.projectService.getOrCreateScriptInfoNotOpenedByClient(t,o.currentDirectory,o.directoryStructureHost,!1);if(!r)continue;o.containsScriptInfo(r)||(o.addRoot(r),o.updateGraph());const i=u.getProgram(),c=Tn.checkDefined(i.getSourceFile(t));for(const n of l(s.name,c,i))e.add(n)}}s=Ke(e.values())}return s=s.filter((e=>!e.isAmbient&&!e.failedAliasResolution)),this.mapDefinitionInfo(s,r);function a(e,t,n){var i,o,s;const a=rk(e);if(a&&e.lastIndexOf(GL)===a.topLevelNodeModulesIndex){const c=e.substring(0,a.packageRootIndex),l=null==(i=r.getModuleResolutionCache())?void 0:i.getPackageJsonInfoCache(),u=r.getCompilationSettings(),d=lj(es(c+"/package.json",r.getCurrentDirectory()),cj(l,r,u));if(!d)return;const _=sj(d,{moduleResolution:2},r,r.getModuleResolutionCache()),p=Dj(Pj(e.substring(a.topLevelPackageNameIndex+1,a.packageRootIndex))),f=r.toPath(e);if(_&&$(_,(e=>r.toPath(e)===f)))return null==(o=n.resolutionCache.resolveSingleModuleNameWithoutWatching(p,t).resolvedModule)?void 0:o.resolvedFileName;{const r=`${p}/${ow(e.substring(a.packageRootIndex+1))}`;return null==(s=n.resolutionCache.resolveSingleModuleNameWithoutWatching(r,t).resolvedModule)?void 0:s.resolvedFileName}}}function c(e,t,r){var o;const s=r.getSourceFile(e.fileName);if(!s)return;const a=HY(t.getSourceFile(n),i),c=t.getTypeChecker().getSymbolAtLocation(a),u=c&&r_(c,276);if(!u)return;return l((null==(o=u.propertyName)?void 0:o.text)||u.name.text,s,r)}function l(e,t,n){return J(Ice.Core.getTopMostDeclarationNamesInFile(e,t),(e=>{const t=n.getTypeChecker().getSymbolAtLocation(e),r=yg(e);if(t&&r)return gle.createDefinitionInfo(r,n.getTypeChecker(),t,r,!0)}))}}getEmitOutput(e){const{file:t,project:n}=this.getFileAndProject(e);if(!n.shouldEmitFile(n.getScriptInfo(t)))return{emitSkipped:!0,outputFiles:[],diagnostics:[]};const r=n.getLanguageService().getEmitOutput(t);return e.richResponse?{...r,diagnostics:e.includeLinePosition?this.convertToDiagnosticsWithLinePositionFromDiagnosticFile(r.diagnostics):r.diagnostics.map((e=>Zhe(e,!0)))}:r}mapJSDocTagInfo(e,t,n){return e?e.map((e=>{var r;return{...e,text:n?this.mapDisplayParts(e.text,t):null==(r=e.text)?void 0:r.map((e=>e.text)).join("")}})):[]}mapDisplayParts(e,t){return e?e.map((e=>"linkName"!==e.kind?e:{...e,target:this.toFileSpan(e.target.fileName,e.target.textSpan,t)})):[]}mapSignatureHelpItems(e,t,n){return e.map((e=>({...e,documentation:this.mapDisplayParts(e.documentation,t),parameters:e.parameters.map((e=>({...e,documentation:this.mapDisplayParts(e.documentation,t)}))),tags:this.mapJSDocTagInfo(e.tags,t,n)})))}mapDefinitionInfo(e,t){return e.map((e=>({...this.toFileSpanWithContext(e.fileName,e.textSpan,e.contextSpan,t),...e.unverified&&{unverified:e.unverified}})))}static mapToOriginalLocation(e){return e.originalFileName?(Tn.assert(void 0!==e.originalTextSpan,"originalTextSpan should be present if originalFileName is"),{...e,fileName:e.originalFileName,textSpan:e.originalTextSpan,targetFileName:e.fileName,targetTextSpan:e.textSpan,contextSpan:e.originalContextSpan,targetContextSpan:e.contextSpan}):e}toFileSpan(e,t,n){const r=n.getLanguageService(),i=r.toLineColumnOffset(e,t.start),o=r.toLineColumnOffset(e,qa(t));return{file:e,start:{line:i.line+1,offset:i.character+1},end:{line:o.line+1,offset:o.character+1}}}toFileSpanWithContext(e,t,n,r){const i=this.toFileSpan(e,t,r),o=n&&this.toFileSpan(e,n,r);return o?{...i,contextStart:o.start,contextEnd:o.end}:i}getTypeDefinition(e){const{file:t,project:n}=this.getFileAndProject(e),r=this.getPositionInFile(e,t),i=this.mapDefinitionInfoLocations(n.getLanguageService().getTypeDefinitionAtPosition(t,r)||Gfe,n);return this.mapDefinitionInfo(i,n)}mapImplementationLocations(e,t){return e.map((e=>{const n=uge(e,t);return n?{...n,kind:e.kind,displayParts:e.displayParts}:e}))}getImplementation(t,n){const{file:r,project:i}=this.getFileAndProject(t),o=this.getPositionInFile(t,r),s=this.mapImplementationLocations(i.getLanguageService().getImplementationAtPosition(r,o)||Gfe,i);return n?s.map((({fileName:e,textSpan:t,contextSpan:n})=>this.toFileSpanWithContext(e,t,n,i))):s.map(e.mapToOriginalLocation)}getSyntacticDiagnosticsSync(e){const{configFile:t}=this.getConfigFileAndProject(e);return t?Gfe:this.getDiagnosticsWorker(e,!1,((e,t)=>e.getLanguageService().getSyntacticDiagnostics(t)),!!e.includeLinePosition)}getSemanticDiagnosticsSync(e){const{configFile:t,project:n}=this.getConfigFileAndProject(e);return t?this.getConfigFileDiagnostics(t,n,!!e.includeLinePosition):this.getDiagnosticsWorker(e,!0,((e,t)=>e.getLanguageService().getSemanticDiagnostics(t).filter((e=>!!e.file))),!!e.includeLinePosition)}getSuggestionDiagnosticsSync(e){const{configFile:t}=this.getConfigFileAndProject(e);return t?Gfe:this.getDiagnosticsWorker(e,!0,((e,t)=>e.getLanguageService().getSuggestionDiagnostics(t)),!!e.includeLinePosition)}getJsxClosingTag(e){const{file:t,languageService:n}=this.getFileAndLanguageServiceForSyntacticOperation(e),r=this.getPositionInFile(e,t),i=n.getJsxClosingTagAtPosition(t,r);return void 0===i?void 0:{newText:i.newText,caretOffset:0}}getLinkedEditingRange(e){const{file:t,languageService:n}=this.getFileAndLanguageServiceForSyntacticOperation(e),r=this.getPositionInFile(e,t),i=n.getLinkedEditingRangeAtPosition(t,r),o=this.projectService.getScriptInfoForNormalizedPath(t);if(void 0!==o&&void 0!==i)return function(e,t){const n=e.ranges.map((e=>({start:t.positionToLineOffset(e.start),end:t.positionToLineOffset(e.start+e.length)})));return e.wordPattern?{ranges:n,wordPattern:e.wordPattern}:{ranges:n}}(i,o)}getDocumentHighlights(e,t){const{file:n,project:r}=this.getFileAndProject(e),i=this.getPositionInFile(e,n),o=r.getLanguageService().getDocumentHighlights(n,i,e.filesToSearch);return o?t?o.map((({fileName:e,highlightSpans:t})=>{const n=r.getScriptInfo(e);return{file:e,highlightSpans:t.map((({textSpan:e,kind:t,contextSpan:r})=>({...hge(e,r,n),kind:t})))}})):o:Gfe}provideInlayHints(e){const{file:t,project:n}=this.getFileAndProject(e),r=this.projectService.getScriptInfoForNormalizedPath(t);return n.getLanguageService().provideInlayHints(t,e,this.getPreferences(t)).map((e=>{const{position:t,displayParts:n}=e;return{...e,position:r.positionToLineOffset(t),displayParts:null==n?void 0:n.map((({text:e,span:t,file:n})=>{if(t){Tn.assertIsDefined(n,"Target file should be defined together with its span.");const r=this.projectService.getScriptInfo(n);return{text:e,span:{start:r.positionToLineOffset(t.start),end:r.positionToLineOffset(t.start+t.length),file:n}}}return{text:e}}))}}))}mapCode(e){var t;const n=this.getHostFormatOptions(),r=this.getHostPreferences(),{file:i,languageService:o}=this.getFileAndLanguageServiceForSyntacticOperation(e),s=this.projectService.getScriptInfoForNormalizedPath(i),a=null==(t=e.mapping.focusLocations)?void 0:t.map((e=>e.map((e=>{const t=s.lineOffsetToPosition(e.start.line,e.start.offset);return{start:t,length:s.lineOffsetToPosition(e.end.line,e.end.offset)-t}})))),c=o.mapCode(i,e.mapping.contents,a,n,r);return this.mapTextChangesToCodeEdits(c)}setCompilerOptionsForInferredProjects(e){this.projectService.setCompilerOptionsForInferredProjects(e.options,e.projectRootPath)}getProjectInfo(e){return this.getProjectInfoWorker(e.file,e.projectFileName,e.needFileNameList,!1)}getProjectInfoWorker(e,t,n,r){const{project:i}=this.getFileAndProjectWorker(e,t);Dhe(i);return{configFileName:i.getProjectName(),languageServiceDisabled:!i.languageServiceEnabled,fileNames:n?i.getFileNames(!1,r):void 0}}getRenameInfo(e){const{file:t,project:n}=this.getFileAndProject(e),r=this.getPositionInFile(e,t),i=this.getPreferences(t);return n.getLanguageService().getRenameInfo(t,r,i)}getProjects(e,t,n){let r,i;if(e.projectFileName){const t=this.getProject(e.projectFileName);t&&(r=[t])}else{const o=t?this.projectService.getScriptInfoEnsuringProjectsUptoDate(e.file):this.projectService.getScriptInfo(e.file);if(!o)return n?Gfe:(this.projectService.logErrorForScriptInfoNotFound(e.file),Jfe.ThrowNoProject());t||this.projectService.ensureDefaultProjectForFile(o),r=o.containingProjects,i=this.projectService.getSymlinkedProjects(o)}return r=M(r,(e=>e.languageServiceEnabled&&!e.isOrphan())),n||r&&r.length||i?i?{projects:r,symLinkedProjects:i}:r:(this.projectService.logErrorForScriptInfoNotFound(e.file??e.projectFileName),Jfe.ThrowNoProject())}getDefaultProject(e){if(e.projectFileName){const t=this.getProject(e.projectFileName);if(t)return t;if(!e.file)return Jfe.ThrowNoProject()}return this.projectService.getScriptInfo(e.file).getDefaultProject()}getRenameLocations(e,t){const n=Zfe(e.file),r=this.getPositionInFile(e,n),i=this.getProjects(e),o=this.getDefaultProject(e),s=this.getPreferences(n),a=this.mapRenameInfo(o.getLanguageService().getRenameInfo(n,r,s),Tn.checkDefined(this.projectService.getScriptInfo(n)));if(!a.canRename)return t?{info:a,locs:[]}:[];const c=function(e,t,n,r,i,o,s){const a=ige(e,t,n,!0,((e,t)=>e.getLanguageService().findRenameLocations(t.fileName,t.pos,r,i,o)),((e,t)=>t(cge(e))));if(at(a))return a;const c=[],l=nge(s);return a.forEach(((e,t)=>{for(const n of e)l.has(n)||lge(cge(n),t)||(c.push(n),l.add(n))})),c}(i,o,{fileName:e.file,pos:r},!!e.findInStrings,!!e.findInComments,s,this.host.useCaseSensitiveFileNames);return t?{info:a,locs:this.toSpanGroups(c)}:c}mapRenameInfo(e,t){if(e.canRename){const{canRename:n,fileToRename:r,displayName:i,fullDisplayName:o,kind:s,kindModifiers:a,triggerSpan:c}=e;return{canRename:n,fileToRename:r,displayName:i,fullDisplayName:o,kind:s,kindModifiers:a,triggerSpan:mge(c,t)}}return e}toSpanGroups(e){const t=new Map;for(const{fileName:n,textSpan:r,contextSpan:i,originalContextSpan:o,originalTextSpan:s,originalFileName:a,...c}of e){let e=t.get(n);e||t.set(n,e={file:n,locs:[]});const o=Tn.checkDefined(this.projectService.getScriptInfo(n));e.locs.push({...hge(r,i,o),...c})}return Ke(t.values())}getReferences(e,t){const n=Zfe(e.file),r=this.getProjects(e),i=this.getPositionInFile(e,n),o=function(e,t,n,r,i){var o,s;const a=ige(e,t,n,!1,((e,t)=>(i.info(`Finding references to ${t.fileName} position ${t.pos} in project ${e.getProjectName()}`),e.getLanguageService().findReferences(t.fileName,t.pos))),((e,t)=>{t(cge(e.definition));for(const n of e.references)t(cge(n))}));if(at(a))return a;const c=a.get(t);if(void 0===(null==(s=null==(o=null==c?void 0:c[0])?void 0:o.references[0])?void 0:s.isDefinition))a.forEach((e=>{for(const t of e)for(const e of t.references)delete e.isDefinition}));else{const e=nge(r);for(const n of c)for(const t of n.references)if(t.isDefinition){e.add(t);break}const t=new Set;for(;;){let n=!1;if(a.forEach(((r,i)=>{t.has(i)||i.getLanguageService().updateIsDefinitionOfReferencedSymbols(r,e)&&(t.add(i),n=!0)})),!n)break}a.forEach(((e,n)=>{if(!t.has(n))for(const t of e)for(const e of t.references)e.isDefinition=!1}))}const l=[],u=nge(r);return a.forEach(((e,t)=>{for(const n of e){const e=lge(cge(n.definition),t),i=void 0===e?n.definition:{...n.definition,textSpan:ec(e.pos,n.definition.textSpan.length),fileName:e.fileName,contextSpan:dge(n.definition,t)};let o=w(l,(e=>gX(e.definition,i,r)));o||(o={definition:i,references:[]},l.push(o));for(const r of n.references)u.has(r)||lge(cge(r),t)||(u.add(r),o.references.push(r))}})),l.filter((e=>0!==e.references.length))}(r,this.getDefaultProject(e),{fileName:e.file,pos:i},this.host.useCaseSensitiveFileNames,this.logger);if(!t)return o;const s=this.getPreferences(n),a=this.getDefaultProject(e),c=a.getScriptInfoForNormalizedPath(n),l=a.getLanguageService().getQuickInfoAtPosition(n,i),u=l?a8(l.displayParts):"",d=l&&l.textSpan,_=d?c.positionToLineOffset(d.start).offset:0,p=d?c.getSnapshot().getText(d.start,qa(d)):"";return{refs:U(o,(e=>e.references.map((e=>vge(this.projectService,e,s))))),symbolName:p,symbolStartOffset:_,symbolDisplayString:u}}getFileReferences(e,t){const n=this.getProjects(e),r=e.file,i=this.getPreferences(Zfe(r)),o=[],s=nge(this.host.useCaseSensitiveFileNames);if(rge(n,void 0,(e=>{if(e.getCancellationToken().isCancellationRequested())return;const t=e.getLanguageService().getFileReferences(r);if(t)for(const n of t)s.has(n)||(o.push(n),s.add(n))})),!t)return o;return{refs:o.map((e=>vge(this.projectService,e,i))),symbolName:`"${e.file}"`}}openClientFile(e,t,n,r){this.projectService.openClientFileWithNormalizedPath(e,t,n,!1,r)}getPosition(e,t){return void 0!==e.position?e.position:t.lineOffsetToPosition(e.line,e.offset)}getPositionInFile(e,t){const n=this.projectService.getScriptInfoForNormalizedPath(t);return this.getPosition(e,n)}getFileAndProject(e){return this.getFileAndProjectWorker(e.file,e.projectFileName)}getFileAndLanguageServiceForSyntacticOperation(e){const{file:t,project:n}=this.getFileAndProject(e);return{file:t,languageService:n.getLanguageService(!1)}}getFileAndProjectWorker(e,t){const n=Zfe(e);return{file:n,project:this.getProject(t)||this.projectService.ensureDefaultProjectForFile(n)}}getOutliningSpans(e,t){const{file:n,languageService:r}=this.getFileAndLanguageServiceForSyntacticOperation(e),i=r.getOutliningSpans(n);if(t){const e=this.projectService.getScriptInfoForNormalizedPath(n);return i.map((t=>({textSpan:mge(t.textSpan,e),hintSpan:mge(t.hintSpan,e),bannerText:t.bannerText,autoCollapse:t.autoCollapse,kind:t.kind})))}return i}getTodoComments(e){const{file:t,project:n}=this.getFileAndProject(e);return n.getLanguageService().getTodoComments(t,e.descriptors)}getDocCommentTemplate(e){const{file:t,languageService:n}=this.getFileAndLanguageServiceForSyntacticOperation(e),r=this.getPositionInFile(e,t);return n.getDocCommentTemplateAtPosition(t,r,this.getPreferences(t),this.getFormatOptions(t))}getSpanOfEnclosingComment(e){const{file:t,languageService:n}=this.getFileAndLanguageServiceForSyntacticOperation(e),r=e.onlyMultiLine,i=this.getPositionInFile(e,t);return n.getSpanOfEnclosingComment(t,i,r)}getIndentation(e){const{file:t,languageService:n}=this.getFileAndLanguageServiceForSyntacticOperation(e),r=this.getPositionInFile(e,t),i=e.options?uhe(e.options):this.getFormatOptions(t);return{position:r,indentation:n.getIndentationAtPosition(t,r,i)}}getBreakpointStatement(e){const{file:t,languageService:n}=this.getFileAndLanguageServiceForSyntacticOperation(e),r=this.getPositionInFile(e,t);return n.getBreakpointStatementAtPosition(t,r)}getNameOrDottedNameSpan(e){const{file:t,languageService:n}=this.getFileAndLanguageServiceForSyntacticOperation(e),r=this.getPositionInFile(e,t);return n.getNameOrDottedNameSpan(t,r,r)}isValidBraceCompletion(e){const{file:t,languageService:n}=this.getFileAndLanguageServiceForSyntacticOperation(e),r=this.getPositionInFile(e,t);return n.isValidBraceCompletionAtPosition(t,r,e.openingBrace.charCodeAt(0))}getQuickInfoWorker(e,t){const{file:n,project:r}=this.getFileAndProject(e),i=this.projectService.getScriptInfoForNormalizedPath(n),o=r.getLanguageService().getQuickInfoAtPosition(n,this.getPosition(e,i));if(!o)return;const s=!!this.getPreferences(n).displayPartsForJSDoc;if(t){const e=a8(o.displayParts);return{kind:o.kind,kindModifiers:o.kindModifiers,start:i.positionToLineOffset(o.textSpan.start),end:i.positionToLineOffset(qa(o.textSpan)),displayString:e,documentation:s?this.mapDisplayParts(o.documentation,r):a8(o.documentation),tags:this.mapJSDocTagInfo(o.tags,r,s)}}return s?o:{...o,tags:this.mapJSDocTagInfo(o.tags,r,!1)}}getFormattingEditsForRange(e){const{file:t,languageService:n}=this.getFileAndLanguageServiceForSyntacticOperation(e),r=this.projectService.getScriptInfoForNormalizedPath(t),i=r.lineOffsetToPosition(e.line,e.offset),o=r.lineOffsetToPosition(e.endLine,e.endOffset),s=n.getFormattingEditsForRange(t,i,o,this.getFormatOptions(t));if(s)return s.map((e=>this.convertTextChangeToCodeEdit(e,r)))}getFormattingEditsForRangeFull(e){const{file:t,languageService:n}=this.getFileAndLanguageServiceForSyntacticOperation(e),r=e.options?uhe(e.options):this.getFormatOptions(t);return n.getFormattingEditsForRange(t,e.position,e.endPosition,r)}getFormattingEditsForDocumentFull(e){const{file:t,languageService:n}=this.getFileAndLanguageServiceForSyntacticOperation(e),r=e.options?uhe(e.options):this.getFormatOptions(t);return n.getFormattingEditsForDocument(t,r)}getFormattingEditsAfterKeystrokeFull(e){const{file:t,languageService:n}=this.getFileAndLanguageServiceForSyntacticOperation(e),r=e.options?uhe(e.options):this.getFormatOptions(t);return n.getFormattingEditsAfterKeystroke(t,e.position,e.key,r)}getFormattingEditsAfterKeystroke(e){const{file:t,languageService:n}=this.getFileAndLanguageServiceForSyntacticOperation(e),r=this.projectService.getScriptInfoForNormalizedPath(t),i=r.lineOffsetToPosition(e.line,e.offset),o=this.getFormatOptions(t),s=n.getFormattingEditsAfterKeystroke(t,i,e.key,o);if("\n"===e.key&&(!s||0===s.length||function(e,t){return e.every((e=>qa(e.span)<t))}(s,i))){const{lineText:a,absolutePosition:c}=r.textStorage.getAbsolutePositionAndLineText(e.line);if(a&&a.search("\\S")<0){const e=n.getIndentationAtPosition(t,i,o);let r,l,u=0;for(r=0,l=a.length;r<l;r++)if(" "===a.charAt(r))u++;else{if("\t"!==a.charAt(r))break;u+=o.tabSize}if(e!==u){const t=c+r;s.push({span:tc(c,t),newText:C_e.getIndentationString(e,o)})}}}if(s)return s.map((e=>({start:r.positionToLineOffset(e.span.start),end:r.positionToLineOffset(qa(e.span)),newText:e.newText?e.newText:""})))}getCompletions(e,t){const{file:n,project:r}=this.getFileAndProject(e),i=this.projectService.getScriptInfoForNormalizedPath(n),o=this.getPosition(e,i),s=r.getLanguageService().getCompletionsAtPosition(n,o,{...hhe(this.getPreferences(n)),triggerCharacter:e.triggerCharacter,triggerKind:e.triggerKind,includeExternalModuleExports:e.includeExternalModuleExports,includeInsertTextCompletions:e.includeInsertTextCompletions},r.projectService.getFormatCodeOptions(n));if(void 0===s)return;if("completions-full"===t)return s;const a=e.prefix||"",c=J(s.entries,(e=>{if(s.isMemberCompletion||cn(e.name.toLowerCase(),a.toLowerCase())){const{name:t,kind:n,kindModifiers:r,sortText:o,insertText:s,filterText:a,replacementSpan:c,hasAction:l,source:u,sourceDisplay:d,labelDetails:_,isSnippet:p,isRecommended:f,isPackageJsonImport:m,isImportStatementCompletion:h,data:g}=e;return{name:t,kind:n,kindModifiers:r,sortText:o,insertText:s,filterText:a,replacementSpan:c?mge(c,i):void 0,isSnippet:p,hasAction:l||void 0,source:u,sourceDisplay:d,labelDetails:_,isRecommended:f,isPackageJsonImport:m,isImportStatementCompletion:h,data:g}}}));if("completions"===t)return s.metadata&&(c.metadata=s.metadata),c;return{...s,optionalReplacementSpan:s.optionalReplacementSpan&&mge(s.optionalReplacementSpan,i),entries:c}}getCompletionEntryDetails(e,t){const{file:n,project:r}=this.getFileAndProject(e),i=this.projectService.getScriptInfoForNormalizedPath(n),o=this.getPosition(e,i),s=r.projectService.getFormatCodeOptions(n),a=!!this.getPreferences(n).displayPartsForJSDoc,c=J(e.entryNames,(e=>{const{name:t,source:i,data:a}="string"==typeof e?{name:e,source:void 0,data:void 0}:e;return r.getLanguageService().getCompletionEntryDetails(n,o,t,s,i,this.getPreferences(n),a?_t(a,bge):void 0)}));return t?a?c:c.map((e=>({...e,tags:this.mapJSDocTagInfo(e.tags,r,!1)}))):c.map((e=>({...e,codeActions:R(e.codeActions,(e=>this.mapCodeAction(e))),documentation:this.mapDisplayParts(e.documentation,r),tags:this.mapJSDocTagInfo(e.tags,r,a)})))}getCompileOnSaveAffectedFileList(e){const t=this.getProjects(e,!0,!0),n=this.projectService.getScriptInfo(e.file);return n?function(e,t,n,r){const i=B(at(n)?n:n.projects,(t=>r(t,e)));return!at(n)&&n.symLinkedProjects&&n.symLinkedProjects.forEach(((e,n)=>{const o=t(n);i.push(...U(e,(e=>r(e,o))))})),ie(i,Nt)}(n,(e=>this.projectService.getScriptInfoForPath(e)),t,((e,t)=>{if(!e.compileOnSaveEnabled||!e.languageServiceEnabled||e.isOrphan())return;const n=e.getCompilationSettings();return n.noEmit||lO(t.fileName)&&!function(e){return VS(e)||!!e.emitDecoratorMetadata}(n)?void 0:{projectFileName:e.getProjectName(),fileNames:e.getCompileOnSaveAffectedFileList(t),projectUsesOutFile:!!n.outFile}})):Gfe}emitFile(e){const{file:t,project:n}=this.getFileAndProject(e);if(n||Jfe.ThrowNoProject(),!n.languageServiceEnabled)return!!e.richResponse&&{emitSkipped:!0,diagnostics:[]};const r=n.getScriptInfo(t),{emitSkipped:i,diagnostics:o}=n.emitFile(r,((e,t,n)=>this.host.writeFile(e,t,n)));return e.richResponse?{emitSkipped:i,diagnostics:e.includeLinePosition?this.convertToDiagnosticsWithLinePositionFromDiagnosticFile(o):o.map((e=>Zhe(e,!0)))}:!i}getSignatureHelpItems(e,t){const{file:n,project:r}=this.getFileAndProject(e),i=this.projectService.getScriptInfoForNormalizedPath(n),o=this.getPosition(e,i),s=r.getLanguageService().getSignatureHelpItems(n,o,e),a=!!this.getPreferences(n).displayPartsForJSDoc;if(s&&t){const e=s.applicableSpan;return{...s,applicableSpan:{start:i.positionToLineOffset(e.start),end:i.positionToLineOffset(e.start+e.length)},items:this.mapSignatureHelpItems(s.items,r,a)}}return a||!s?s:{...s,items:s.items.map((e=>({...e,tags:this.mapJSDocTagInfo(e.tags,r,!1)})))}}toPendingErrorCheck(e){const t=Zfe(e),n=this.projectService.tryGetDefaultProjectForFile(t);return n&&{fileName:t,project:n}}getDiagnostics(e,t,n){this.suppressDiagnosticEvents||n.length>0&&this.updateErrorCheck(e,n,t)}change(e){const t=this.projectService.getScriptInfo(e.file);Tn.assert(!!t),t.textStorage.switchToScriptVersionCache();const n=t.lineOffsetToPosition(e.line,e.offset),r=t.lineOffsetToPosition(e.endLine,e.endOffset);n>=0&&(this.changeSeq++,this.projectService.applyChangesToFile(t,Y({span:{start:n,length:r-n},newText:e.insertString})))}reload(e,t){const n=Zfe(e.file),r=void 0===e.tmpfile?void 0:Zfe(e.tmpfile),i=this.projectService.getScriptInfoForNormalizedPath(n);i&&(this.changeSeq++,i.reloadFromFile(r)&&this.doOutput(void 0,"reload",t,!0))}saveToTmp(e,t){const n=this.projectService.getScriptInfo(e);n&&n.saveTo(t)}closeClientFile(e){if(!e)return;const t=ts(e);this.projectService.closeClientFile(t)}mapLocationNavigationBarItems(e,t){return R(e,(e=>({text:e.text,kind:e.kind,kindModifiers:e.kindModifiers,spans:e.spans.map((e=>mge(e,t))),childItems:this.mapLocationNavigationBarItems(e.childItems,t),indent:e.indent})))}getNavigationBarItems(e,t){const{file:n,languageService:r}=this.getFileAndLanguageServiceForSyntacticOperation(e),i=r.getNavigationBarItems(n);return i?t?this.mapLocationNavigationBarItems(i,this.projectService.getScriptInfoForNormalizedPath(n)):i:void 0}toLocationNavigationTree(e,t){return{text:e.text,kind:e.kind,kindModifiers:e.kindModifiers,spans:e.spans.map((e=>mge(e,t))),nameSpan:e.nameSpan&&mge(e.nameSpan,t),childItems:R(e.childItems,(e=>this.toLocationNavigationTree(e,t)))}}getNavigationTree(e,t){const{file:n,languageService:r}=this.getFileAndLanguageServiceForSyntacticOperation(e),i=r.getNavigationTree(n);return i?t?this.toLocationNavigationTree(i,this.projectService.getScriptInfoForNormalizedPath(n)):i:void 0}getNavigateToItems(e,t){const n=this.getFullNavigateToItems(e);return U(n,t?({project:e,navigateToItems:t})=>t.map((t=>{const n=e.getScriptInfo(t.fileName),r={name:t.name,kind:t.kind,kindModifiers:t.kindModifiers,isCaseSensitive:t.isCaseSensitive,matchKind:t.matchKind,file:t.fileName,start:n.positionToLineOffset(t.textSpan.start),end:n.positionToLineOffset(qa(t.textSpan))};return t.kindModifiers&&""!==t.kindModifiers&&(r.kindModifiers=t.kindModifiers),t.containerName&&t.containerName.length>0&&(r.containerName=t.containerName),t.containerKind&&t.containerKind.length>0&&(r.containerKind=t.containerKind),r})):({navigateToItems:e})=>e)}getFullNavigateToItems(e){const{currentFileOnly:t,searchValue:n,maxResultCount:r,projectFileName:i}=e;if(t){Tn.assertIsDefined(e.file);const{file:t,project:i}=this.getFileAndProject(e);return[{project:i,navigateToItems:i.getLanguageService().getNavigateToItems(n,r,t)}]}const o=this.getHostPreferences(),s=[],a=new Map;if(e.file||i){rge(this.getProjects(e),void 0,(e=>c(e)))}else this.projectService.loadAncestorProjectTree(),this.projectService.forEachEnabledProject((e=>c(e)));return s;function c(e){const t=M(e.getLanguageService().getNavigateToItems(n,r,void 0,e.isNonTsProject(),o.excludeLibrarySymbolsInNavTo),(t=>function(e){const t=e.name;if(!a.has(t))return a.set(t,[e]),!0;const n=a.get(t);for(const r of n)if(l(r,e))return!1;return n.push(e),!0}(t)&&!lge(cge(t),e)));t.length&&s.push({project:e,navigateToItems:t})}function l(e,t){return e===t||!(!e||!t)&&(e.containerKind===t.containerKind&&e.containerName===t.containerName&&e.fileName===t.fileName&&e.isCaseSensitive===t.isCaseSensitive&&e.kind===t.kind&&e.kindModifiers===t.kindModifiers&&e.matchKind===t.matchKind&&e.name===t.name&&e.textSpan.start===t.textSpan.start&&e.textSpan.length===t.textSpan.length)}}getSupportedCodeFixes(e){if(!e)return l8();if(e.file){const{file:t,project:n}=this.getFileAndProject(e);return n.getLanguageService().getSupportedCodeFixes(t)}const t=this.getProject(e.projectFileName);return t||Jfe.ThrowNoProject(),t.getLanguageService().getSupportedCodeFixes()}isLocation(e){return void 0!==e.line}extractPositionOrRange(e,t){let n,r;var i;return this.isLocation(e)?n=void 0!==(i=e).position?i.position:t.lineOffsetToPosition(i.line,i.offset):r=this.getRange(e,t),Tn.checkDefined(void 0===n?r:n)}getRange(e,t){const{startPosition:n,endPosition:r}=this.getStartAndEndPosition(e,t);return{pos:n,end:r}}getApplicableRefactors(e){const{file:t,project:n}=this.getFileAndProject(e),r=n.getScriptInfoForNormalizedPath(t);return n.getLanguageService().getApplicableRefactors(t,this.extractPositionOrRange(e,r),this.getPreferences(t),e.triggerReason,e.kind,e.includeInteractiveActions).map((e=>({...e,actions:e.actions.map((e=>({...e,range:e.range?{start:Yhe({line:e.range.start.line,character:e.range.start.offset}),end:Yhe({line:e.range.end.line,character:e.range.end.offset})}:void 0})))})))}getEditsForRefactor(e,t){const{file:n,project:r}=this.getFileAndProject(e),i=r.getScriptInfoForNormalizedPath(n),o=r.getLanguageService().getEditsForRefactor(n,this.getFormatOptions(n),this.extractPositionOrRange(e,i),e.refactor,e.action,this.getPreferences(n),e.interactiveRefactorArguments);if(void 0===o)return{edits:[]};if(t){const{renameFilename:e,renameLocation:t,edits:n}=o;let i;if(void 0!==e&&void 0!==t){i=yge(KZ(r.getScriptInfoForNormalizedPath(Zfe(e)).getSnapshot()),e,t,n)}return{renameLocation:i,renameFilename:e,edits:this.mapTextChangesToCodeEdits(n),notApplicableReason:o.notApplicableReason}}return o}getMoveToRefactoringFileSuggestions(e){const{file:t,project:n}=this.getFileAndProject(e),r=n.getScriptInfoForNormalizedPath(t);return n.getLanguageService().getMoveToRefactoringFileSuggestions(t,this.extractPositionOrRange(e,r),this.getPreferences(t))}getPasteEdits(e){const{file:t,project:n}=this.getFileAndProject(e),r=e.copiedFrom?{file:e.copiedFrom.file,range:e.copiedFrom.spans.map((t=>this.getRange({file:e.copiedFrom.file,startLine:t.start.line,startOffset:t.start.offset,endLine:t.end.line,endOffset:t.end.offset},n.getScriptInfoForNormalizedPath(Zfe(e.copiedFrom.file)))))}:void 0,i=n.getLanguageService().getPasteEdits({targetFile:t,pastedText:e.pastedText,pasteLocations:e.pasteLocations.map((e=>this.getRange({file:t,startLine:e.start.line,startOffset:e.start.offset,endLine:e.end.line,endOffset:e.end.offset},n.getScriptInfoForNormalizedPath(t)))),copiedFrom:r,preferences:this.getPreferences(t)},this.getFormatOptions(t));return i&&this.mapPasteEditsAction(i)}organizeImports(e,t){Tn.assert("file"===e.scope.type);const{file:n,project:r}=this.getFileAndProject(e.scope.args),i=r.getLanguageService().organizeImports({fileName:n,mode:e.mode??(e.skipDestructiveCodeActions?"SortAndCombine":void 0),type:"file"},this.getFormatOptions(n),this.getPreferences(n));return t?this.mapTextChangesToCodeEdits(i):i}getEditsForFileRename(e,t){const n=Zfe(e.oldFilePath),r=Zfe(e.newFilePath),i=this.getHostFormatOptions(),o=this.getHostPreferences(),s=new Set,a=[];return this.projectService.loadAncestorProjectTree(),this.projectService.forEachEnabledProject((e=>{const t=e.getLanguageService().getEditsForFileRename(n,r,i,o),c=[];for(const n of t)s.has(n.fileName)||(a.push(n),c.push(n.fileName));for(const n of c)s.add(n)})),t?a.map((e=>this.mapTextChangeToCodeEdit(e))):a}getCodeFixes(e,t){const{file:n,project:r}=this.getFileAndProject(e),i=r.getScriptInfoForNormalizedPath(n),{startPosition:o,endPosition:s}=this.getStartAndEndPosition(e,i);let a;try{a=r.getLanguageService().getCodeFixesAtPosition(n,o,s,e.errorCodes,this.getFormatOptions(n),this.getPreferences(n))}catch(Mge){const i=r.getLanguageService(),a=[...i.getSyntacticDiagnostics(n),...i.getSemanticDiagnostics(n),...i.getSuggestionDiagnostics(n)].map((e=>Za(o,s-o,e.start,e.length)&&e.code)),c=e.errorCodes.find((e=>!a.includes(e)));throw void 0!==c&&(Mge.message=`BADCLIENT: Bad error code, ${c} not found in range ${o}..${s} (found: ${a.join(", ")}); could have caused this error:\n${Mge.message}`),Mge}return t?a.map((e=>this.mapCodeFixAction(e))):a}getCombinedCodeFix({scope:e,fixId:t},n){Tn.assert("file"===e.type);const{file:r,project:i}=this.getFileAndProject(e.args),o=i.getLanguageService().getCombinedCodeFix({type:"file",fileName:r},t,this.getFormatOptions(r),this.getPreferences(r));return n?{changes:this.mapTextChangesToCodeEdits(o.changes),commands:o.commands}:o}applyCodeActionCommand(e){const t=e.command;for(const n of ct(t)){const{file:e,project:t}=this.getFileAndProject(n);t.getLanguageService().applyCodeActionCommand(n,this.getFormatOptions(e)).then((e=>{}),(e=>{}))}return{}}getStartAndEndPosition(e,t){let n,r;return void 0!==e.startPosition?n=e.startPosition:(n=t.lineOffsetToPosition(e.startLine,e.startOffset),e.startPosition=n),void 0!==e.endPosition?r=e.endPosition:(r=t.lineOffsetToPosition(e.endLine,e.endOffset),e.endPosition=r),{startPosition:n,endPosition:r}}mapCodeAction({description:e,changes:t,commands:n}){return{description:e,changes:this.mapTextChangesToCodeEdits(t),commands:n}}mapCodeFixAction({fixName:e,description:t,changes:n,commands:r,fixId:i,fixAllDescription:o}){return{fixName:e,description:t,changes:this.mapTextChangesToCodeEdits(n),commands:r,fixId:i,fixAllDescription:o}}mapPasteEditsAction({edits:e,fixId:t}){return{edits:this.mapTextChangesToCodeEdits(e),fixId:t}}mapTextChangesToCodeEdits(e){return e.map((e=>this.mapTextChangeToCodeEdit(e)))}mapTextChangeToCodeEdit(e){const t=this.projectService.getScriptInfoOrConfig(e.fileName);return!!e.isNewFile==!!t&&(t||this.projectService.logErrorForScriptInfoNotFound(e.fileName),Tn.fail("Expected isNewFile for (only) new files. "+JSON.stringify({isNewFile:!!e.isNewFile,hasScriptInfo:!!t}))),t?{fileName:e.fileName,textChanges:e.textChanges.map((e=>function(e,t){return{start:gge(t,e.span.start),end:gge(t,qa(e.span)),newText:e.newText}}(e,t)))}:function(e){Tn.assert(1===e.textChanges.length);const t=Ee(e.textChanges);return Tn.assert(0===t.span.start&&0===t.span.length),{fileName:e.fileName,textChanges:[{start:{line:0,offset:0},end:{line:0,offset:0},newText:t.newText}]}}(e)}convertTextChangeToCodeEdit(e,t){return{start:t.positionToLineOffset(e.span.start),end:t.positionToLineOffset(e.span.start+e.span.length),newText:e.newText?e.newText:""}}getBraceMatching(e,t){const{file:n,languageService:r}=this.getFileAndLanguageServiceForSyntacticOperation(e),i=this.projectService.getScriptInfoForNormalizedPath(n),o=this.getPosition(e,i),s=r.getBraceMatchingAtPosition(n,o);return s?t?s.map((e=>mge(e,i))):s:void 0}getDiagnosticsForProject(e,t,n){if(this.suppressDiagnosticEvents)return;const{fileNames:r,languageServiceDisabled:i}=this.getProjectInfoWorker(n,void 0,!0,!0);if(i)return;const o=r.filter((e=>!e.includes("lib.d.ts")));if(0===o.length)return;const s=[],a=[],c=[],l=[],u=Zfe(n),d=this.projectService.ensureDefaultProjectForFile(u);for(const p of o)if(this.getCanonicalFileName(p)===this.getCanonicalFileName(n))s.push(p);else{this.projectService.getScriptInfo(p).isScriptOpen()?a.push(p):lO(p)?l.push(p):c.push(p)}const _=[...s,...a,...c,...l].map((e=>({fileName:e,project:d})));this.updateErrorCheck(e,_,t,!1)}configurePlugin(e){this.projectService.configurePlugin(e)}getSmartSelectionRange(e,t){const{locations:n}=e,{file:r,languageService:i}=this.getFileAndLanguageServiceForSyntacticOperation(e),o=Tn.checkDefined(this.projectService.getScriptInfo(r));return R(n,(e=>{const n=this.getPosition(e,o),s=i.getSmartSelectionRange(r,n);return t?this.mapSelectionRange(s,o):s}))}toggleLineComment(e,t){const{file:n,languageService:r}=this.getFileAndLanguageServiceForSyntacticOperation(e),i=this.projectService.getScriptInfo(n),o=this.getRange(e,i),s=r.toggleLineComment(n,o);if(t){const e=this.projectService.getScriptInfoForNormalizedPath(n);return s.map((t=>this.convertTextChangeToCodeEdit(t,e)))}return s}toggleMultilineComment(e,t){const{file:n,languageService:r}=this.getFileAndLanguageServiceForSyntacticOperation(e),i=this.projectService.getScriptInfoForNormalizedPath(n),o=this.getRange(e,i),s=r.toggleMultilineComment(n,o);if(t){const e=this.projectService.getScriptInfoForNormalizedPath(n);return s.map((t=>this.convertTextChangeToCodeEdit(t,e)))}return s}commentSelection(e,t){const{file:n,languageService:r}=this.getFileAndLanguageServiceForSyntacticOperation(e),i=this.projectService.getScriptInfoForNormalizedPath(n),o=this.getRange(e,i),s=r.commentSelection(n,o);if(t){const e=this.projectService.getScriptInfoForNormalizedPath(n);return s.map((t=>this.convertTextChangeToCodeEdit(t,e)))}return s}uncommentSelection(e,t){const{file:n,languageService:r}=this.getFileAndLanguageServiceForSyntacticOperation(e),i=this.projectService.getScriptInfoForNormalizedPath(n),o=this.getRange(e,i),s=r.uncommentSelection(n,o);if(t){const e=this.projectService.getScriptInfoForNormalizedPath(n);return s.map((t=>this.convertTextChangeToCodeEdit(t,e)))}return s}mapSelectionRange(e,t){const n={textSpan:mge(e.textSpan,t)};return e.parent&&(n.parent=this.mapSelectionRange(e.parent,t)),n}getScriptInfoFromProjectService(e){const t=Zfe(e),n=this.projectService.getScriptInfoForNormalizedPath(t);return n||(this.projectService.logErrorForScriptInfoNotFound(t),Jfe.ThrowNoProject())}toProtocolCallHierarchyItem(e){const t=this.getScriptInfoFromProjectService(e.file);return{name:e.name,kind:e.kind,kindModifiers:e.kindModifiers,file:e.file,containerName:e.containerName,span:mge(e.span,t),selectionSpan:mge(e.selectionSpan,t)}}toProtocolCallHierarchyIncomingCall(e){const t=this.getScriptInfoFromProjectService(e.from.file);return{from:this.toProtocolCallHierarchyItem(e.from),fromSpans:e.fromSpans.map((e=>mge(e,t)))}}toProtocolCallHierarchyOutgoingCall(e,t){return{to:this.toProtocolCallHierarchyItem(e.to),fromSpans:e.fromSpans.map((e=>mge(e,t)))}}prepareCallHierarchy(e){const{file:t,project:n}=this.getFileAndProject(e),r=this.projectService.getScriptInfoForNormalizedPath(t);if(r){const i=this.getPosition(e,r),o=n.getLanguageService().prepareCallHierarchy(t,i);return o&&t0(o,(e=>this.toProtocolCallHierarchyItem(e)))}}provideCallHierarchyIncomingCalls(e){const{file:t,project:n}=this.getFileAndProject(e),r=this.getScriptInfoFromProjectService(t);return n.getLanguageService().provideCallHierarchyIncomingCalls(t,this.getPosition(e,r)).map((e=>this.toProtocolCallHierarchyIncomingCall(e)))}provideCallHierarchyOutgoingCalls(e){const{file:t,project:n}=this.getFileAndProject(e),r=this.getScriptInfoFromProjectService(t);return n.getLanguageService().provideCallHierarchyOutgoingCalls(t,this.getPosition(e,r)).map((e=>this.toProtocolCallHierarchyOutgoingCall(e,r)))}getCanonicalFileName(e){return ts(this.host.useCaseSensitiveFileNames?e:bt(e))}exit(){}notRequired(){return{responseRequired:!1}}requiredResponse(e){return{response:e,responseRequired:!0}}addProtocolHandler(e,t){if(this.handlers.has(e))throw new Error(`Protocol handler already exists for command "${e}"`);this.handlers.set(e,t)}setCurrentRequest(e){Tn.assert(void 0===this.currentRequestId),this.currentRequestId=e,this.cancellationToken.setRequest(e)}resetCurrentRequest(e){Tn.assert(this.currentRequestId===e),this.currentRequestId=void 0,this.cancellationToken.resetRequest(e)}executeWithRequestId(e,t){try{return this.setCurrentRequest(e),t()}finally{this.resetCurrentRequest(e)}}executeCommand(e){const t=this.handlers.get(e.command);if(t){const n=this.executeWithRequestId(e.seq,(()=>t(e)));return this.projectService.enableRequestedPlugins(),n}return this.logger.msg(`Unrecognized JSON command:${eQ(e)}`,"Err"),this.doOutput(void 0,"unknown",e.seq,!1,`Unrecognized JSON command: ${e.command}`),{responseRequired:!1}}onMessage(e){var t,n,r,i,o,s,a,c,l,u,d;let _,p,f;this.gcTimer.scheduleCollect(),this.performanceData=void 0,this.logger.hasLevel(2)&&(_=this.hrtime(),this.logger.hasLevel(3)&&this.logger.info(`request:${$G(this.toStringMessage(e))}`));try{p=this.parseMessage(e),f=p.arguments&&p.arguments.file?p.arguments:void 0,null==(t=ar)||t.instant(ar.Phase.Session,"request",{seq:p.seq,command:p.command}),null==(n=rr)||n.logStartCommand(""+p.command,this.toStringMessage(e).substring(0,100)),null==(r=ar)||r.push(ar.Phase.Session,"executeCommand",{seq:p.seq,command:p.command},!0);const{response:a,responseRequired:c}=this.executeCommand(p);if(null==(i=ar)||i.pop(),this.logger.hasLevel(2)){const e=(m=this.hrtime(_),(1e9*m[0]+m[1])/1e6).toFixed(4);c?this.logger.perftrc(`${p.seq}::${p.command}: elapsed time (in milliseconds) ${e}`):this.logger.perftrc(`${p.seq}::${p.command}: async elapsed time (in milliseconds) ${e}`)}null==(o=rr)||o.logStopCommand(""+p.command,"Success"),null==(s=ar)||s.instant(ar.Phase.Session,"response",{seq:p.seq,command:p.command,success:!!a}),a?this.doOutput(a,p.command,p.seq,!0):c&&this.doOutput(void 0,p.command,p.seq,!1,"No content available.")}catch(h){if(null==(a=ar)||a.popAll(),h instanceof jr)return null==(c=rr)||c.logStopCommand(""+(p&&p.command),"Canceled: "+h),null==(l=ar)||l.instant(ar.Phase.Session,"commandCanceled",{seq:null==p?void 0:p.seq,command:null==p?void 0:p.command}),void this.doOutput({canceled:!0},p.command,p.seq,!0);this.logErrorWorker(h,this.toStringMessage(e),f),null==(u=rr)||u.logStopCommand(""+(p&&p.command),"Error: "+h),null==(d=ar)||d.instant(ar.Phase.Session,"commandError",{seq:null==p?void 0:p.seq,command:null==p?void 0:p.command,message:h.message}),this.doOutput(void 0,p?p.command:"unknown",p?p.seq:0,!1,"Error processing request. "+h.message+"\n"+h.stack)}var m}parseMessage(e){return JSON.parse(e)}toStringMessage(e){return e}getFormatOptions(e){return this.projectService.getFormatCodeOptions(e)}getPreferences(e){return this.projectService.getPreferences(e)}getHostFormatOptions(){return this.projectService.getHostFormatCodeOptions()}getHostPreferences(){return this.projectService.getHostPreferences()}};function mge(e,t){return{start:t.positionToLineOffset(e.start),end:t.positionToLineOffset(qa(e))}}function hge(e,t,n){const r=mge(e,n),i=t&&mge(t,n);return i?{...r,contextStart:i.start,contextEnd:i.end}:r}function gge(e,t){return qhe(e)?{line:(n=e.getLineAndCharacterOfPosition(t)).line+1,offset:n.character+1}:e.positionToLineOffset(t);var n}function yge(e,t,n,r){const i=function(e,t,n){for(const{fileName:r,textChanges:i}of n)if(r===t)for(let t=i.length-1;t>=0;t--){const{newText:n,span:{start:r,length:o}}=i[t];e=e.slice(0,r)+n+e.slice(r+o)}return e}(e,t,r),{line:o,character:s}=Xs(Gs(i),n);return{line:o+1,offset:s+1}}function vge(e,{fileName:t,textSpan:n,contextSpan:r,isWriteAccess:i,isDefinition:o},{disableLineTextInReferences:s}){const a=Tn.checkDefined(e.getScriptInfo(t)),c=hge(n,r,a),l=s?void 0:function(e,t){const n=e.lineToTextSpan(t.start.line-1);return e.getSnapshot().getText(n.start,qa(n)).replace(/\r|\n/g,"")}(a,c);return{file:t,...c,lineText:l,isWriteAccess:i,isDefinition:o}}function bge(e){return void 0===e||e&&"object"==typeof e&&"string"==typeof e.exportName&&(void 0===e.fileName||"string"==typeof e.fileName)&&(void 0===e.ambientModuleName||"string"==typeof e.ambientModuleName&&(void 0===e.isPackageJsonImport||"boolean"==typeof e.isPackageJsonImport))}var xge=(e=>(e[e.PreStart=0]="PreStart",e[e.Start=1]="Start",e[e.Entire=2]="Entire",e[e.Mid=3]="Mid",e[e.End=4]="End",e[e.PostEnd=5]="PostEnd",e))(xge||{}),Sge=class{constructor(){this.goSubtree=!0,this.lineIndex=new Cge,this.endBranch=[],this.state=2,this.initialText="",this.trailingText="",this.lineIndex.root=new Nge,this.startPath=[this.lineIndex.root],this.stack=[this.lineIndex.root]}get done(){return!1}insertLines(e,t){t&&(this.trailingText=""),e=e?this.initialText+e+this.trailingText:this.initialText+this.trailingText;const n=Cge.linesFromText(e).lines;let r,i;n.length>1&&""===n[n.length-1]&&n.pop();for(let s=this.endBranch.length-1;s>=0;s--)this.endBranch[s].updateCounts(),0===this.endBranch[s].charCount()&&(i=this.endBranch[s],r=s>0?this.endBranch[s-1]:this.branchNode);i&&r.remove(i);const o=this.startPath[this.startPath.length-1];if(n.length>0)if(o.text=n[0],n.length>1){let e=new Array(n.length-1),t=o;for(let o=1;o<n.length;o++)e[o-1]=new Age(n[o]);let r=this.startPath.length-2;for(;r>=0;){const n=this.startPath[r];e=n.insertAt(t,e),r--,t=n}let i=e.length;for(;i>0;){const t=new Nge;t.add(this.lineIndex.root),e=t.insertAt(this.lineIndex.root,e),i=e.length,this.lineIndex.root=t}this.lineIndex.root.updateCounts()}else for(let s=this.startPath.length-2;s>=0;s--)this.startPath[s].updateCounts();else{this.startPath[this.startPath.length-2].remove(o);for(let e=this.startPath.length-2;e>=0;e--)this.startPath[e].updateCounts()}return this.lineIndex}post(e,t,n){n===this.lineCollectionAtBranch&&(this.state=4),this.stack.pop()}pre(e,t,n,r,i){const o=this.stack[this.stack.length-1];let s;function a(e){return e.isLeaf()?new Age(""):new Nge}switch(2===this.state&&1===i&&(this.state=1,this.branchNode=o,this.lineCollectionAtBranch=n),i){case 0:this.goSubtree=!1,4!==this.state&&o.add(n);break;case 1:4===this.state?this.goSubtree=!1:(s=a(n),o.add(s),this.startPath.push(s));break;case 2:4!==this.state?(s=a(n),o.add(s),this.startPath.push(s)):n.isLeaf()||(s=a(n),o.add(s),this.endBranch.push(s));break;case 3:this.goSubtree=!1;break;case 4:4!==this.state?this.goSubtree=!1:n.isLeaf()||(s=a(n),o.add(s),this.endBranch.push(s));break;case 5:this.goSubtree=!1,1!==this.state&&o.add(n)}this.goSubtree&&this.stack.push(s)}leaf(e,t,n){1===this.state?this.initialText=n.text.substring(0,e):2===this.state?(this.initialText=n.text.substring(0,e),this.trailingText=n.text.substring(e+t)):this.trailingText=n.text.substring(e+t)}},Tge=class{constructor(e,t,n){this.pos=e,this.deleteLen=t,this.insertedText=n}getTextChangeRange(){return ic(ec(this.pos,this.deleteLen),this.insertedText?this.insertedText.length:0)}},wge=class e{constructor(){this.changes=[],this.versions=new Array(e.maxVersions),this.minVersion=0,this.currentVersion=0}versionToIndex(t){if(!(t<this.minVersion||t>this.currentVersion))return t%e.maxVersions}currentVersionToIndex(){return this.currentVersion%e.maxVersions}edit(t,n,r){this.changes.push(new Tge(t,n,r)),(this.changes.length>e.changeNumberThreshold||n>e.changeLengthThreshold||r&&r.length>e.changeLengthThreshold)&&this.getSnapshot()}getSnapshot(){return this._getSnapshot()}_getSnapshot(){let t=this.versions[this.currentVersionToIndex()];if(this.changes.length>0){let n=t.index;for(const e of this.changes)n=n.edit(e.pos,e.deleteLen,e.insertedText);t=new Ege(this.currentVersion+1,this,n,this.changes),this.currentVersion=t.version,this.versions[this.currentVersionToIndex()]=t,this.changes=[],this.currentVersion-this.minVersion>=e.maxVersions&&(this.minVersion=this.currentVersion-e.maxVersions+1)}return t}getSnapshotVersion(){return this._getSnapshot().version}getAbsolutePositionAndLineText(e){return this._getSnapshot().index.lineNumberToInfo(e)}lineOffsetToPosition(e,t){return this._getSnapshot().index.absolutePositionOfStartOfLine(e)+(t-1)}positionToLineOffset(e){return this._getSnapshot().index.positionToLineOffset(e)}lineToTextSpan(e){const t=this._getSnapshot().index,{lineText:n,absolutePosition:r}=t.lineNumberToInfo(e+1);return ec(r,void 0!==n?n.length:t.absolutePositionOfStartOfLine(e+2)-r)}getTextChangesBetweenVersions(e,t){if(!(e<t))return oc;if(e>=this.minVersion){const n=[];for(let r=e+1;r<=t;r++){const e=this.versions[this.versionToIndex(r)];for(const t of e.changesSincePreviousVersion)n.push(t.getTextChangeRange())}return sc(n)}}getLineCount(){return this._getSnapshot().index.getLineCount()}static fromString(t){const n=new e,r=new Ege(0,n,new Cge);n.versions[n.currentVersion]=r;const i=Cge.linesFromText(t);return r.index.load(i.lines),n}};wge.changeNumberThreshold=8,wge.changeLengthThreshold=256,wge.maxVersions=8;var kge=wge,Ege=class e{constructor(e,t,n,r=Gfe){this.version=e,this.cache=t,this.index=n,this.changesSincePreviousVersion=r}getText(e,t){return this.index.getText(e,t-e)}getLength(){return this.index.getLength()}getChangeRange(t){if(t instanceof e&&this.cache===t.cache)return this.version<=t.version?oc:this.cache.getTextChangesBetweenVersions(t.version,this.version)}},Cge=class e{constructor(){this.checkEdits=!1}absolutePositionOfStartOfLine(e){return this.lineNumberToInfo(e).absolutePosition}positionToLineOffset(e){const{oneBasedLine:t,zeroBasedColumn:n}=this.root.charOffsetToLineInfo(1,e);return{line:t,offset:n+1}}positionToColumnAndLineText(e){return this.root.charOffsetToLineInfo(1,e)}getLineCount(){return this.root.lineCount()}lineNumberToInfo(e){if(e<=this.getLineCount()){const{position:t,leaf:n}=this.root.lineNumberToInfo(e,0);return{absolutePosition:t,lineText:n&&n.text}}return{absolutePosition:this.root.charCount(),lineText:void 0}}load(t){if(t.length>0){const n=[];for(let e=0;e<t.length;e++)n[e]=new Age(t[e]);this.root=e.buildTreeFromBottom(n)}else this.root=new Nge}walk(e,t,n){this.root.walk(e,t,n)}getText(e,t){let n="";return t>0&&e<this.root.charCount()&&this.walk(e,t,{goSubtree:!0,done:!1,leaf:(e,t,r)=>{n=n.concat(r.text.substring(e,e+t))}}),n}getLength(){return this.root.charCount()}every(e,t,n){n||(n=this.root.charCount());const r={goSubtree:!0,done:!1,leaf(t,n,r){e(r,t,n)||(this.done=!0)}};return this.walk(t,n-t,r),!r.done}edit(t,n,r){if(0===this.root.charCount())return Tn.assert(0===n),void 0!==r?(this.load(e.linesFromText(r).lines),this):void 0;{let e;if(this.checkEdits){const i=this.getText(0,this.root.charCount());e=i.slice(0,t)+r+i.slice(t+n)}const i=new Sge;let o=!1;if(t>=this.root.charCount()){t=this.root.charCount()-1;const e=this.getText(t,1);r=r?e+r:e,n=0,o=!0}else if(n>0){const e=t+n,{zeroBasedColumn:i,lineText:o}=this.positionToColumnAndLineText(e);0===i&&(n+=o.length,r=r?r+o:o)}if(this.root.walk(t,n,i),i.insertLines(r,o),this.checkEdits){const t=i.lineIndex.getText(0,i.lineIndex.getLength());Tn.assert(e===t,"buffer edit mismatch")}return i.lineIndex}}static buildTreeFromBottom(e){if(e.length<4)return new Nge(e);const t=new Array(Math.ceil(e.length/4));let n=0;for(let r=0;r<t.length;r++){const i=Math.min(n+4,e.length);t[r]=new Nge(e.slice(n,i)),n=i}return this.buildTreeFromBottom(t)}static linesFromText(e){const t=Gs(e);if(0===t.length)return{lines:[],lineMap:t};const n=new Array(t.length),r=t.length-1;for(let o=0;o<r;o++)n[o]=e.substring(t[o],t[o+1]);const i=e.substring(t[r]);return i.length>0?n[r]=i:n.pop(),{lines:n,lineMap:t}}},Nge=class e{constructor(e=[]){this.children=e,this.totalChars=0,this.totalLines=0,e.length&&this.updateCounts()}isLeaf(){return!1}updateCounts(){this.totalChars=0,this.totalLines=0;for(const e of this.children)this.totalChars+=e.charCount(),this.totalLines+=e.lineCount()}execWalk(e,t,n,r,i){return n.pre&&n.pre(e,t,this.children[r],this,i),n.goSubtree?(this.children[r].walk(e,t,n),n.post&&n.post(e,t,this.children[r],this,i)):n.goSubtree=!0,n.done}skipChild(e,t,n,r,i){r.pre&&!r.done&&(r.pre(e,t,this.children[n],this,i),r.goSubtree=!0)}walk(e,t,n){let r=0,i=this.children[r].charCount(),o=e;for(;o>=i;)this.skipChild(o,t,r,n,0),o-=i,r++,i=this.children[r].charCount();if(o+t<=i){if(this.execWalk(o,t,n,r,2))return}else{if(this.execWalk(o,i-o,n,r,1))return;let e=t-(i-o);r++;for(i=this.children[r].charCount();e>i;){if(this.execWalk(0,i,n,r,3))return;e-=i,r++,i=this.children[r].charCount()}if(e>0&&this.execWalk(0,e,n,r,4))return}if(n.pre){const e=this.children.length;if(r<e-1)for(let t=r+1;t<e;t++)this.skipChild(0,0,t,n,5)}}charOffsetToLineInfo(e,t){if(0===this.children.length)return{oneBasedLine:e,zeroBasedColumn:t,lineText:void 0};for(const r of this.children){if(r.charCount()>t)return r.isLeaf()?{oneBasedLine:e,zeroBasedColumn:t,lineText:r.text}:r.charOffsetToLineInfo(e,t);t-=r.charCount(),e+=r.lineCount()}const n=this.lineCount();if(0===n)return{oneBasedLine:1,zeroBasedColumn:0,lineText:void 0};return{oneBasedLine:n,zeroBasedColumn:Tn.checkDefined(this.lineNumberToInfo(n,0).leaf).charCount(),lineText:void 0}}lineNumberToInfo(e,t){for(const n of this.children){const r=n.lineCount();if(r>=e)return n.isLeaf()?{position:t,leaf:n}:n.lineNumberToInfo(e,t);e-=r,t+=n.charCount()}return{position:t,leaf:void 0}}splitAfter(t){let n;const r=this.children.length,i=++t;if(t<r){for(n=new e;t<r;)n.add(this.children[t]),t++;n.updateCounts()}return this.children.length=i,n}remove(e){const t=this.findChildIndex(e),n=this.children.length;if(t<n-1)for(let r=t;r<n-1;r++)this.children[r]=this.children[r+1];this.children.pop()}findChildIndex(e){const t=this.children.indexOf(e);return Tn.assert(-1!==t),t}insertAt(t,n){let r=this.findChildIndex(t);const i=this.children.length,o=n.length;if(i<4&&r===i-1&&1===o)return this.add(n[0]),this.updateCounts(),[];{const t=this.splitAfter(r);let i=0;for(r++;r<4&&i<o;)this.children[r]=n[i],r++,i++;let s=[],a=0;if(i<o){a=Math.ceil((o-i)/4),s=new Array(a);let t=0;for(let n=0;n<a;n++)s[n]=new e;let r=s[0];for(;i<o;)r.add(n[i]),i++,4===r.children.length&&(t++,r=s[t]);for(let e=s.length-1;e>=0;e--)0===s[e].children.length&&s.pop()}t&&s.push(t),this.updateCounts();for(let e=0;e<a;e++)s[e].updateCounts();return s}}add(e){this.children.push(e),Tn.assert(this.children.length<=4)}charCount(){return this.totalChars}lineCount(){return this.totalLines}},Age=class{constructor(e){this.text=e}isLeaf(){return!0}walk(e,t,n){n.leaf(e,t,this)}charCount(){return this.text.length}lineCount(){return 1}},Ige=class e{constructor(e,t,n,r,i,o){this.telemetryEnabled=e,this.logger=t,this.host=n,this.globalTypingsCacheLocation=r,this.event=i,this.maxActiveRequestCount=o,this.activeRequestCount=0,this.requestQueue=ot(),this.requestMap=new Map,this.requestedRegistry=!1,this.packageInstallId=0}isKnownTypesPackageName(e){var t;return jG.validatePackageName(e)===jG.NameValidationResult.Ok&&(this.requestedRegistry||(this.requestedRegistry=!0,this.installer.send({kind:"typesRegistry"})),!!(null==(t=this.typesRegistryCache)?void 0:t.has(e)))}installPackage(e){this.packageInstallId++;const t={kind:"installPackage",...e,id:this.packageInstallId},n=new Promise(((e,t)=>{(this.packageInstalledPromise??(this.packageInstalledPromise=new Map)).set(this.packageInstallId,{resolve:e,reject:t})}));return this.installer.send(t),n}attach(e){this.projectService=e,this.installer=this.createInstallerProcess()}onProjectClosed(e){this.installer.send({projectName:e.getProjectName(),kind:"closeProject"})}enqueueInstallTypingsRequest(e,t,n){const r=Yfe(e,t,n);this.logger.hasLevel(3)&&this.logger.info(`TIAdapter:: Scheduling throttled operation:${eQ(r)}`),this.activeRequestCount<this.maxActiveRequestCount?this.scheduleRequest(r):(this.logger.hasLevel(3)&&this.logger.info(`TIAdapter:: Deferring request for: ${r.projectName}`),this.requestQueue.enqueue(r),this.requestMap.set(r.projectName,r))}handleMessage(e){var t,n;switch(this.logger.hasLevel(3)&&this.logger.info(`TIAdapter:: Received response:${eQ(e)}`),e.kind){case KG:this.typesRegistryCache=new Map(Object.entries(e.typesRegistry));break;case VG:{const r=null==(t=this.packageInstalledPromise)?void 0:t.get(e.id);Tn.assertIsDefined(r,"Should find the promise for package install"),null==(n=this.packageInstalledPromise)||n.delete(e.id),e.success?r.resolve({successMessage:e.message}):r.reject(e.message),this.projectService.updateTypingsForProject(e),this.event(e,"setTypings");break}case HG:{const t={message:e.message},n="typesInstallerInitializationFailed";this.event(t,n);break}case JG:{const t={eventId:e.eventId,packages:e.packagesToInstall},n="beginInstallTypes";this.event(t,n);break}case WG:{if(this.telemetryEnabled){const t={telemetryEventName:"typingsInstalled",payload:{installedPackages:e.packagesToInstall.join(","),installSuccess:e.installSuccess,typingsInstallerVersion:e.typingsInstallerVersion}},n="telemetry";this.event(t,n)}const t={eventId:e.eventId,packages:e.packagesToInstall,success:e.installSuccess},n="endInstallTypes";this.event(t,n);break}case qG:this.projectService.updateTypingsForProject(e);break;case BG:for(this.activeRequestCount>0?this.activeRequestCount--:Tn.fail("TIAdapter:: Received too many responses");!this.requestQueue.isEmpty();){const e=this.requestQueue.dequeue();if(this.requestMap.get(e.projectName)===e){this.requestMap.delete(e.projectName),this.scheduleRequest(e);break}this.logger.hasLevel(3)&&this.logger.info(`TIAdapter:: Skipping defunct request for: ${e.projectName}`)}this.projectService.updateTypingsForProject(e),this.event(e,"setTypings");break;case GG:this.projectService.watchTypingLocations(e)}}scheduleRequest(t){this.logger.hasLevel(3)&&this.logger.info(`TIAdapter:: Scheduling request for: ${t.projectName}`),this.activeRequestCount++,this.host.setTimeout((()=>{this.logger.hasLevel(3)&&this.logger.info(`TIAdapter:: Sending request:${eQ(t)}`),this.installer.send(t)}),e.requestDelayMillis,`${t.projectName}::${t.kind}`)}};Ige.requestDelayMillis=100;var Dge=Ige,Pge={};a(Pge,{ActionInvalidate:()=>qG,ActionPackageInstalled:()=>VG,ActionSet:()=>BG,ActionWatchTypingLocations:()=>GG,Arguments:()=>zG,AutoImportProviderProject:()=>Lme,AuxiliaryProject:()=>Fme,CharRangeSection:()=>xge,CloseFileWatcherEvent:()=>rhe,CommandNames:()=>Xhe,ConfigFileDiagEvent:()=>Zme,ConfiguredProject:()=>jme,ConfiguredProjectLoadKind:()=>The,CreateDirectoryWatcherEvent:()=>nhe,CreateFileWatcherEvent:()=>the,Errors:()=>Jfe,EventBeginInstallTypes:()=>JG,EventEndInstallTypes:()=>WG,EventInitializationFailed:()=>HG,EventTypesRegistry:()=>KG,ExternalProject:()=>zme,GcTimer:()=>ame,InferredProject:()=>Ome,LargeFileReferencedEvent:()=>Yme,LineIndex:()=>Cge,LineLeaf:()=>Age,LineNode:()=>Nge,LogLevel:()=>Hfe,Msg:()=>Qfe,OpenFileInfoTelemetryEvent:()=>ehe,Project:()=>Mme,ProjectInfoTelemetryEvent:()=>$me,ProjectKind:()=>Cme,ProjectLanguageServiceStateEvent:()=>Xme,ProjectLoadingFinishEvent:()=>Qme,ProjectLoadingStartEvent:()=>Gme,ProjectService:()=>Bhe,ProjectsUpdatedInBackgroundEvent:()=>Hme,ScriptInfo:()=>Tme,ScriptVersionCache:()=>kge,Session:()=>fge,TextStorage:()=>xme,ThrottledOperations:()=>sme,TypingsCache:()=>Eme,TypingsInstallerAdapter:()=>Dge,allFilesAreJsOrDts:()=>Ime,allRootFilesAreJsOrDts:()=>Ame,asNormalizedPath:()=>$fe,convertCompilerOptions:()=>dhe,convertFormatOptions:()=>uhe,convertScriptKindName:()=>mhe,convertTypeAcquisition:()=>phe,convertUserPreferences:()=>hhe,convertWatchOptions:()=>_he,countEachFileTypes:()=>Nme,createInstallTypingsRequest:()=>Yfe,createModuleSpecifierCache:()=>Khe,createNormalizedPathMap:()=>eme,createPackageJsonCache:()=>Jhe,createSortedArray:()=>ome,emptyArray:()=>Gfe,findArgument:()=>YG,forEachResolvedProjectReferenceProject:()=>whe,formatDiagnosticToProtocol:()=>Zhe,formatMessage:()=>$he,getBaseConfigFileName:()=>cme,getLocationInNewDocument:()=>yge,hasArgument:()=>QG,hasNoTypeScriptSource:()=>Dme,indent:()=>$G,isBackgroundProject:()=>Vme,isConfigFile:()=>qhe,isConfiguredProject:()=>Bme,isDynamicFileName:()=>Sme,isExternalProject:()=>qme,isInferredProject:()=>Ume,isInferredProjectName:()=>tme,isProjectDeferredClose:()=>Kme,makeAutoImportProviderProjectName:()=>rme,makeAuxiliaryProjectName:()=>ime,makeInferredProjectName:()=>nme,maxFileSize:()=>Wme,maxProgramSizeForNonTsFiles:()=>Jme,normalizedPathToPath:()=>Xfe,nowString:()=>ZG,nullCancellationToken:()=>Whe,nullTypingsInstaller:()=>wme,protocol:()=>ume,removeSorted:()=>lme,stringifyIndented:()=>eQ,toEvent:()=>tge,toNormalizedPath:()=>Zfe,tryConvertScriptKindName:()=>fhe,typingsInstaller:()=>jfe,updateProjectIfDirty:()=>Dhe}),void 0!==o&&(Tn.loggingHost={log(e,t){switch(e){case 1:return o.error(t);case 2:return o.warn(t);case 3:case 4:return o.log(t)}}})})({get exports(){return a},set exports(t){a=t,e.exports&&(e.exports=t)}})},76782:(e,t,n)=>{"use strict";function r(e,t){return t=t||{},new Promise((function(n,r){var i=new XMLHttpRequest,o=[],s=[],a={},c=function(){return{ok:2==(i.status/100|0),statusText:i.statusText,status:i.status,url:i.responseURL,text:function(){return Promise.resolve(i.responseText)},json:function(){return Promise.resolve(i.responseText).then(JSON.parse)},blob:function(){return Promise.resolve(new Blob([i.response]))},clone:c,headers:{keys:function(){return o},entries:function(){return s},get:function(e){return a[e.toLowerCase()]},has:function(e){return e.toLowerCase()in a}}}};for(var l in i.open(t.method||"get",e,!0),i.onload=function(){i.getAllResponseHeaders().replace(/^(.*?):[^\S\n]*([\s\S]*?)$/gm,(function(e,t,n){o.push(t=t.toLowerCase()),s.push([t,n]),a[t]=a[t]?a[t]+","+n:n})),n(c())},i.onerror=r,i.withCredentials="include"==t.credentials,t.headers)i.setRequestHeader(l,t.headers[l]);i.send(t.body||null)}))}n.r(t),n.d(t,{default:()=>r})},94643:(e,t,n)=>{var r=n(96763);function i(e){try{if(!n.g.localStorage)return!1}catch(r){return!1}var t=n.g.localStorage[e];return null!=t&&"true"===String(t).toLowerCase()}e.exports=function(e,t){if(i("noDeprecation"))return e;var n=!1;return function(){if(!n){if(i("throwDeprecation"))throw new Error(t);i("traceDeprecation")?r.trace(t):r.warn(t),n=!0}return e.apply(this,arguments)}}},51591:e=>{"use strict";e.exports=function(){throw new Error("ws does not work in the browser. Browser clients must use the native WebSocket object")}},44874:(e,t,n)=>{"use strict";const r=n(40793);e.exports=s;const i=function(){function e(e){return void 0!==e&&e}try{return"undefined"!=typeof globalThis||Object.defineProperty(Object.prototype,"globalThis",{get:function(){return delete Object.prototype.globalThis,this.globalThis=this},configurable:!0}),globalThis}catch(t){return e(self)||e(window)||e(this)||{}}}().console||{},o={mapHttpRequest:_,mapHttpResponse:_,wrapRequestSerializer:p,wrapResponseSerializer:p,wrapErrorSerializer:p,req:_,res:_,err:function(e){const t={type:e.constructor.name,msg:e.message,stack:e.stack};for(const n in e)void 0===t[n]&&(t[n]=e[n]);return t}};function s(e){(e=e||{}).browser=e.browser||{};const t=e.browser.transmit;if(t&&"function"!=typeof t.send)throw Error("pino: transmit option must have a send function");const n=e.browser.write||i;e.browser.write&&(e.browser.asObject=!0);const r=e.serializers||{},o=function(e,t){if(Array.isArray(e))return e.filter((function(e){return"!stdSerializers.err"!==e}));return!0===e&&Object.keys(t)}(e.browser.serialize,r);let _=e.browser.serialize;Array.isArray(e.browser.serialize)&&e.browser.serialize.indexOf("!stdSerializers.err")>-1&&(_=!1);"function"==typeof n&&(n.error=n.fatal=n.warn=n.info=n.debug=n.trace=n),!1===e.enabled&&(e.level="silent");const p=e.level||"info",m=Object.create(n);m.log||(m.log=f),Object.defineProperty(m,"levelVal",{get:function(){return"silent"===this.level?1/0:this.levels.values[this.level]}}),Object.defineProperty(m,"level",{get:function(){return this._level},set:function(e){if("silent"!==e&&!this.levels.values[e])throw Error("unknown level "+e);this._level=e,a(h,m,"error","log"),a(h,m,"fatal","error"),a(h,m,"warn","error"),a(h,m,"info","log"),a(h,m,"debug","log"),a(h,m,"trace","log")}});const h={transmit:t,serialize:o,asObject:e.browser.asObject,levels:["error","fatal","warn","info","debug","trace"],timestamp:d(e)};return m.levels=s.levels,m.level=p,m.setMaxListeners=m.getMaxListeners=m.emit=m.addListener=m.on=m.prependListener=m.once=m.prependOnceListener=m.removeListener=m.removeAllListeners=m.listeners=m.listenerCount=m.eventNames=m.write=m.flush=f,m.serializers=r,m._serialize=o,m._stdErrSerialize=_,m.child=function(n,i){if(!n)throw new Error("missing bindings for child Pino");i=i||{},o&&n.serializers&&(i.serializers=n.serializers);const s=i.serializers;if(o&&s){var a=Object.assign({},r,s),d=!0===e.browser.serialize?Object.keys(a):o;delete n.serializers,c([n],d,a,this._stdErrSerialize)}function _(e){this._childLevel=1+(0|e._childLevel),this.error=l(e,n,"error"),this.fatal=l(e,n,"fatal"),this.warn=l(e,n,"warn"),this.info=l(e,n,"info"),this.debug=l(e,n,"debug"),this.trace=l(e,n,"trace"),a&&(this.serializers=a,this._serialize=d),t&&(this._logEvent=u([].concat(e._logEvent.bindings,n)))}return _.prototype=this,new _(this)},t&&(m._logEvent=u()),m}function a(e,t,n,o){const a=Object.getPrototypeOf(t);t[n]=t.levelVal>t.levels.values[n]?f:a[n]?a[n]:i[n]||i[o]||f,function(e,t,n){if(!e.transmit&&t[n]===f)return;t[n]=(o=t[n],function(){const a=e.timestamp(),l=new Array(arguments.length),d=Object.getPrototypeOf&&Object.getPrototypeOf(this)===i?i:this;for(var _=0;_<l.length;_++)l[_]=arguments[_];if(e.serialize&&!e.asObject&&c(l,this._serialize,this.serializers,this._stdErrSerialize),e.asObject?o.call(d,function(e,t,n,i){e._serialize&&c(n,e._serialize,e.serializers,e._stdErrSerialize);const o=n.slice();let a=o[0];const l={};i&&(l.time=i),l.level=s.levels.values[t];let u=1+(0|e._childLevel);if(u<1&&(u=1),null!==a&&"object"==typeof a){for(;u--&&"object"==typeof o[0];)Object.assign(l,o.shift());a=o.length?r(o.shift(),o):void 0}else"string"==typeof a&&(a=r(o.shift(),o));return void 0!==a&&(l.msg=a),l}(this,n,l,a)):o.apply(d,l),e.transmit){const r=e.transmit.level||t.level,i=s.levels.values[r],o=s.levels.values[n];if(o<i)return;!function(e,t,n){const r=t.send,i=t.ts,o=t.methodLevel,s=t.methodValue,a=t.val,l=e._logEvent.bindings;c(n,e._serialize||Object.keys(e.serializers),e.serializers,void 0===e._stdErrSerialize||e._stdErrSerialize),e._logEvent.ts=i,e._logEvent.messages=n.filter((function(e){return-1===l.indexOf(e)})),e._logEvent.level.label=o,e._logEvent.level.value=s,r(o,e._logEvent,a),e._logEvent=u(l)}(this,{ts:a,methodLevel:n,methodValue:o,transmitLevel:r,transmitValue:s.levels.values[e.transmit.level||t.level],send:e.transmit.send,val:t.levelVal},l)}});var o}(e,t,n)}function c(e,t,n,r){for(const i in e)if(r&&e[i]instanceof Error)e[i]=s.stdSerializers.err(e[i]);else if("object"==typeof e[i]&&!Array.isArray(e[i]))for(const r in e[i])t&&t.indexOf(r)>-1&&r in n&&(e[i][r]=n[r](e[i][r]))}function l(e,t,n){return function(){const r=new Array(1+arguments.length);r[0]=t;for(var i=1;i<r.length;i++)r[i]=arguments[i-1];return e[n].apply(this,r)}}function u(e){return{ts:0,messages:[],bindings:e||[],level:{label:"",value:0}}}function d(e){return"function"==typeof e.timestamp?e.timestamp:!1===e.timestamp?m:h}function _(){return{}}function p(e){return e}function f(){}function m(){return!1}function h(){return Date.now()}s.levels={values:{fatal:60,error:50,warn:40,info:30,debug:20,trace:10},labels:{10:"trace",20:"debug",30:"info",40:"warn",50:"error",60:"fatal"}},s.stdSerializers=o,s.stdTimeFunctions=Object.assign({},{nullTime:m,epochTime:h,unixTime:function(){return Math.round(Date.now()/1e3)},isoTime:function(){return new Date(Date.now()).toISOString()}})},60346:(e,t,n)=>{"use strict";n.d(t,{A:()=>S,g:()=>x});var r=/^-?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i,i=Math.ceil,o=Math.floor,s="[BigNumber Error] ",a=s+"Number primitive has more than 15 significant digits: ",c=1e14,l=14,u=9007199254740991,d=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9,1e10,1e11,1e12,1e13],_=1e7,p=1e9;function f(e){var t=0|e;return e>0||e===t?t:t-1}function m(e){for(var t,n,r=1,i=e.length,o=e[0]+"";r<i;){for(t=e[r++]+"",n=l-t.length;n--;t="0"+t);o+=t}for(i=o.length;48===o.charCodeAt(--i););return o.slice(0,i+1||1)}function h(e,t){var n,r,i=e.c,o=t.c,s=e.s,a=t.s,c=e.e,l=t.e;if(!s||!a)return null;if(n=i&&!i[0],r=o&&!o[0],n||r)return n?r?0:-a:s;if(s!=a)return s;if(n=s<0,r=c==l,!i||!o)return r?0:!i^n?1:-1;if(!r)return c>l^n?1:-1;for(a=(c=i.length)<(l=o.length)?c:l,s=0;s<a;s++)if(i[s]!=o[s])return i[s]>o[s]^n?1:-1;return c==l?0:c>l^n?1:-1}function g(e,t,n,r){if(e<t||e>n||e!==o(e))throw Error(s+(r||"Argument")+("number"==typeof e?e<t||e>n?" out of range: ":" not an integer: ":" not a primitive number: ")+String(e))}function y(e){var t=e.c.length-1;return f(e.e/l)==t&&e.c[t]%2!=0}function v(e,t){return(e.length>1?e.charAt(0)+"."+e.slice(1):e)+(t<0?"e":"e+")+t}function b(e,t,n){var r,i;if(t<0){for(i=n+".";++t;i+=n);e=i+e}else if(++t>(r=e.length)){for(i=n,t-=r;--t;i+=n);e+=i}else t<r&&(e=e.slice(0,t)+"."+e.slice(t));return e}var x=function e(t){var n,x,S,T,w,k,E,C,N,A,I=K.prototype={constructor:K,toString:null,valueOf:null},D=new K(1),P=20,M=4,O=-7,F=21,R=-1e7,L=1e7,j=!1,z=1,U=0,B={prefix:"",groupSize:3,secondaryGroupSize:0,groupSeparator:",",decimalSeparator:".",fractionGroupSize:0,fractionGroupSeparator:"\xa0",suffix:""},q="0123456789abcdefghijklmnopqrstuvwxyz",V=!0;function K(e,t){var n,i,s,c,d,_,p,f,m=this;if(!(m instanceof K))return new K(e,t);if(null==t){if(e&&!0===e._isBigNumber)return m.s=e.s,void(!e.c||e.e>L?m.c=m.e=null:e.e<R?m.c=[m.e=0]:(m.e=e.e,m.c=e.c.slice()));if((_="number"==typeof e)&&0*e==0){if(m.s=1/e<0?(e=-e,-1):1,e===~~e){for(c=0,d=e;d>=10;d/=10,c++);return void(c>L?m.c=m.e=null:(m.e=c,m.c=[e]))}f=String(e)}else{if(!r.test(f=String(e)))return S(m,f,_);m.s=45==f.charCodeAt(0)?(f=f.slice(1),-1):1}(c=f.indexOf("."))>-1&&(f=f.replace(".","")),(d=f.search(/e/i))>0?(c<0&&(c=d),c+=+f.slice(d+1),f=f.substring(0,d)):c<0&&(c=f.length)}else{if(g(t,2,q.length,"Base"),10==t&&V)return G(m=new K(e),P+m.e+1,M);if(f=String(e),_="number"==typeof e){if(0*e!=0)return S(m,f,_,t);if(m.s=1/e<0?(f=f.slice(1),-1):1,K.DEBUG&&f.replace(/^0\.0*|\./,"").length>15)throw Error(a+e)}else m.s=45===f.charCodeAt(0)?(f=f.slice(1),-1):1;for(n=q.slice(0,t),c=d=0,p=f.length;d<p;d++)if(n.indexOf(i=f.charAt(d))<0){if("."==i){if(d>c){c=p;continue}}else if(!s&&(f==f.toUpperCase()&&(f=f.toLowerCase())||f==f.toLowerCase()&&(f=f.toUpperCase()))){s=!0,d=-1,c=0;continue}return S(m,String(e),_,t)}_=!1,(c=(f=x(f,t,10,m.s)).indexOf("."))>-1?f=f.replace(".",""):c=f.length}for(d=0;48===f.charCodeAt(d);d++);for(p=f.length;48===f.charCodeAt(--p););if(f=f.slice(d,++p)){if(p-=d,_&&K.DEBUG&&p>15&&(e>u||e!==o(e)))throw Error(a+m.s*e);if((c=c-d-1)>L)m.c=m.e=null;else if(c<R)m.c=[m.e=0];else{if(m.e=c,m.c=[],d=(c+1)%l,c<0&&(d+=l),d<p){for(d&&m.c.push(+f.slice(0,d)),p-=l;d<p;)m.c.push(+f.slice(d,d+=l));d=l-(f=f.slice(d)).length}else d-=p;for(;d--;f+="0");m.c.push(+f)}}else m.c=[m.e=0]}function J(e,t,n,r){var i,o,s,a,c;if(null==n?n=M:g(n,0,8),!e.c)return e.toString();if(i=e.c[0],s=e.e,null==t)c=m(e.c),c=1==r||2==r&&(s<=O||s>=F)?v(c,s):b(c,s,"0");else if(o=(e=G(new K(e),t,n)).e,a=(c=m(e.c)).length,1==r||2==r&&(t<=o||o<=O)){for(;a<t;c+="0",a++);c=v(c,o)}else if(t-=s,c=b(c,o,"0"),o+1>a){if(--t>0)for(c+=".";t--;c+="0");}else if((t+=o-a)>0)for(o+1==a&&(c+=".");t--;c+="0");return e.s<0&&i?"-"+c:c}function W(e,t){for(var n,r,i=1,o=new K(e[0]);i<e.length;i++)(!(r=new K(e[i])).s||(n=h(o,r))===t||0===n&&o.s===t)&&(o=r);return o}function H(e,t,n){for(var r=1,i=t.length;!t[--i];t.pop());for(i=t[0];i>=10;i/=10,r++);return(n=r+n*l-1)>L?e.c=e.e=null:n<R?e.c=[e.e=0]:(e.e=n,e.c=t),e}function G(e,t,n,r){var s,a,u,_,p,f,m,h=e.c,g=d;if(h){e:{for(s=1,_=h[0];_>=10;_/=10,s++);if((a=t-s)<0)a+=l,u=t,p=h[f=0],m=o(p/g[s-u-1]%10);else if((f=i((a+1)/l))>=h.length){if(!r)break e;for(;h.length<=f;h.push(0));p=m=0,s=1,u=(a%=l)-l+1}else{for(p=_=h[f],s=1;_>=10;_/=10,s++);m=(u=(a%=l)-l+s)<0?0:o(p/g[s-u-1]%10)}if(r=r||t<0||null!=h[f+1]||(u<0?p:p%g[s-u-1]),r=n<4?(m||r)&&(0==n||n==(e.s<0?3:2)):m>5||5==m&&(4==n||r||6==n&&(a>0?u>0?p/g[s-u]:0:h[f-1])%10&1||n==(e.s<0?8:7)),t<1||!h[0])return h.length=0,r?(t-=e.e+1,h[0]=g[(l-t%l)%l],e.e=-t||0):h[0]=e.e=0,e;if(0==a?(h.length=f,_=1,f--):(h.length=f+1,_=g[l-a],h[f]=u>0?o(p/g[s-u]%g[u])*_:0),r)for(;;){if(0==f){for(a=1,u=h[0];u>=10;u/=10,a++);for(u=h[0]+=_,_=1;u>=10;u/=10,_++);a!=_&&(e.e++,h[0]==c&&(h[0]=1));break}if(h[f]+=_,h[f]!=c)break;h[f--]=0,_=1}for(a=h.length;0===h[--a];h.pop());}e.e>L?e.c=e.e=null:e.e<R&&(e.c=[e.e=0])}return e}function Q(e){var t,n=e.e;return null===n?e.toString():(t=m(e.c),t=n<=O||n>=F?v(t,n):b(t,n,"0"),e.s<0?"-"+t:t)}return K.clone=e,K.ROUND_UP=0,K.ROUND_DOWN=1,K.ROUND_CEIL=2,K.ROUND_FLOOR=3,K.ROUND_HALF_UP=4,K.ROUND_HALF_DOWN=5,K.ROUND_HALF_EVEN=6,K.ROUND_HALF_CEIL=7,K.ROUND_HALF_FLOOR=8,K.EUCLID=9,K.config=K.set=function(e){var t,n;if(null!=e){if("object"!=typeof e)throw Error(s+"Object expected: "+e);if(e.hasOwnProperty(t="DECIMAL_PLACES")&&(g(n=e[t],0,p,t),P=n),e.hasOwnProperty(t="ROUNDING_MODE")&&(g(n=e[t],0,8,t),M=n),e.hasOwnProperty(t="EXPONENTIAL_AT")&&((n=e[t])&&n.pop?(g(n[0],-p,0,t),g(n[1],0,p,t),O=n[0],F=n[1]):(g(n,-p,p,t),O=-(F=n<0?-n:n))),e.hasOwnProperty(t="RANGE"))if((n=e[t])&&n.pop)g(n[0],-p,-1,t),g(n[1],1,p,t),R=n[0],L=n[1];else{if(g(n,-p,p,t),!n)throw Error(s+t+" cannot be zero: "+n);R=-(L=n<0?-n:n)}if(e.hasOwnProperty(t="CRYPTO")){if((n=e[t])!==!!n)throw Error(s+t+" not true or false: "+n);if(n){if("undefined"==typeof crypto||!crypto||!crypto.getRandomValues&&!crypto.randomBytes)throw j=!n,Error(s+"crypto unavailable");j=n}else j=n}if(e.hasOwnProperty(t="MODULO_MODE")&&(g(n=e[t],0,9,t),z=n),e.hasOwnProperty(t="POW_PRECISION")&&(g(n=e[t],0,p,t),U=n),e.hasOwnProperty(t="FORMAT")){if("object"!=typeof(n=e[t]))throw Error(s+t+" not an object: "+n);B=n}if(e.hasOwnProperty(t="ALPHABET")){if("string"!=typeof(n=e[t])||/^.?$|[+\-.\s]|(.).*\1/.test(n))throw Error(s+t+" invalid: "+n);V="0123456789"==n.slice(0,10),q=n}}return{DECIMAL_PLACES:P,ROUNDING_MODE:M,EXPONENTIAL_AT:[O,F],RANGE:[R,L],CRYPTO:j,MODULO_MODE:z,POW_PRECISION:U,FORMAT:B,ALPHABET:q}},K.isBigNumber=function(e){if(!e||!0!==e._isBigNumber)return!1;if(!K.DEBUG)return!0;var t,n,r=e.c,i=e.e,a=e.s;e:if("[object Array]"=={}.toString.call(r)){if((1===a||-1===a)&&i>=-p&&i<=p&&i===o(i)){if(0===r[0]){if(0===i&&1===r.length)return!0;break e}if((t=(i+1)%l)<1&&(t+=l),String(r[0]).length==t){for(t=0;t<r.length;t++)if((n=r[t])<0||n>=c||n!==o(n))break e;if(0!==n)return!0}}}else if(null===r&&null===i&&(null===a||1===a||-1===a))return!0;throw Error(s+"Invalid BigNumber: "+e)},K.maximum=K.max=function(){return W(arguments,-1)},K.minimum=K.min=function(){return W(arguments,1)},K.random=(T=9007199254740992,w=Math.random()*T&2097151?function(){return o(Math.random()*T)}:function(){return 8388608*(1073741824*Math.random()|0)+(8388608*Math.random()|0)},function(e){var t,n,r,a,c,u=0,_=[],f=new K(D);if(null==e?e=P:g(e,0,p),a=i(e/l),j)if(crypto.getRandomValues){for(t=crypto.getRandomValues(new Uint32Array(a*=2));u<a;)(c=131072*t[u]+(t[u+1]>>>11))>=9e15?(n=crypto.getRandomValues(new Uint32Array(2)),t[u]=n[0],t[u+1]=n[1]):(_.push(c%1e14),u+=2);u=a/2}else{if(!crypto.randomBytes)throw j=!1,Error(s+"crypto unavailable");for(t=crypto.randomBytes(a*=7);u<a;)(c=281474976710656*(31&t[u])+1099511627776*t[u+1]+4294967296*t[u+2]+16777216*t[u+3]+(t[u+4]<<16)+(t[u+5]<<8)+t[u+6])>=9e15?crypto.randomBytes(7).copy(t,u):(_.push(c%1e14),u+=7);u=a/7}if(!j)for(;u<a;)(c=w())<9e15&&(_[u++]=c%1e14);for(a=_[--u],e%=l,a&&e&&(c=d[l-e],_[u]=o(a/c)*c);0===_[u];_.pop(),u--);if(u<0)_=[r=0];else{for(r=-1;0===_[0];_.splice(0,1),r-=l);for(u=1,c=_[0];c>=10;c/=10,u++);u<l&&(r-=l-u)}return f.e=r,f.c=_,f}),K.sum=function(){for(var e=1,t=arguments,n=new K(t[0]);e<t.length;)n=n.plus(t[e++]);return n},x=function(){var e="0123456789";function t(e,t,n,r){for(var i,o,s=[0],a=0,c=e.length;a<c;){for(o=s.length;o--;s[o]*=t);for(s[0]+=r.indexOf(e.charAt(a++)),i=0;i<s.length;i++)s[i]>n-1&&(null==s[i+1]&&(s[i+1]=0),s[i+1]+=s[i]/n|0,s[i]%=n)}return s.reverse()}return function(r,i,o,s,a){var c,l,u,d,_,p,f,h,g=r.indexOf("."),y=P,v=M;for(g>=0&&(d=U,U=0,r=r.replace(".",""),p=(h=new K(i)).pow(r.length-g),U=d,h.c=t(b(m(p.c),p.e,"0"),10,o,e),h.e=h.c.length),u=d=(f=t(r,i,o,a?(c=q,e):(c=e,q))).length;0==f[--d];f.pop());if(!f[0])return c.charAt(0);if(g<0?--u:(p.c=f,p.e=u,p.s=s,f=(p=n(p,h,y,v,o)).c,_=p.r,u=p.e),g=f[l=u+y+1],d=o/2,_=_||l<0||null!=f[l+1],_=v<4?(null!=g||_)&&(0==v||v==(p.s<0?3:2)):g>d||g==d&&(4==v||_||6==v&&1&f[l-1]||v==(p.s<0?8:7)),l<1||!f[0])r=_?b(c.charAt(1),-y,c.charAt(0)):c.charAt(0);else{if(f.length=l,_)for(--o;++f[--l]>o;)f[l]=0,l||(++u,f=[1].concat(f));for(d=f.length;!f[--d];);for(g=0,r="";g<=d;r+=c.charAt(f[g++]));r=b(r,u,c.charAt(0))}return r}}(),n=function(){function e(e,t,n){var r,i,o,s,a=0,c=e.length,l=t%_,u=t/_|0;for(e=e.slice();c--;)a=((i=l*(o=e[c]%_)+(r=u*o+(s=e[c]/_|0)*l)%_*_+a)/n|0)+(r/_|0)+u*s,e[c]=i%n;return a&&(e=[a].concat(e)),e}function t(e,t,n,r){var i,o;if(n!=r)o=n>r?1:-1;else for(i=o=0;i<n;i++)if(e[i]!=t[i]){o=e[i]>t[i]?1:-1;break}return o}function n(e,t,n,r){for(var i=0;n--;)e[n]-=i,i=e[n]<t[n]?1:0,e[n]=i*r+e[n]-t[n];for(;!e[0]&&e.length>1;e.splice(0,1));}return function(r,i,s,a,u){var d,_,p,m,h,g,y,v,b,x,S,T,w,k,E,C,N,A=r.s==i.s?1:-1,I=r.c,D=i.c;if(!(I&&I[0]&&D&&D[0]))return new K(r.s&&i.s&&(I?!D||I[0]!=D[0]:D)?I&&0==I[0]||!D?0*A:A/0:NaN);for(b=(v=new K(A)).c=[],A=s+(_=r.e-i.e)+1,u||(u=c,_=f(r.e/l)-f(i.e/l),A=A/l|0),p=0;D[p]==(I[p]||0);p++);if(D[p]>(I[p]||0)&&_--,A<0)b.push(1),m=!0;else{for(k=I.length,C=D.length,p=0,A+=2,(h=o(u/(D[0]+1)))>1&&(D=e(D,h,u),I=e(I,h,u),C=D.length,k=I.length),w=C,S=(x=I.slice(0,C)).length;S<C;x[S++]=0);N=D.slice(),N=[0].concat(N),E=D[0],D[1]>=u/2&&E++;do{if(h=0,(d=t(D,x,C,S))<0){if(T=x[0],C!=S&&(T=T*u+(x[1]||0)),(h=o(T/E))>1)for(h>=u&&(h=u-1),y=(g=e(D,h,u)).length,S=x.length;1==t(g,x,y,S);)h--,n(g,C<y?N:D,y,u),y=g.length,d=1;else 0==h&&(d=h=1),y=(g=D.slice()).length;if(y<S&&(g=[0].concat(g)),n(x,g,S,u),S=x.length,-1==d)for(;t(D,x,C,S)<1;)h++,n(x,C<S?N:D,S,u),S=x.length}else 0===d&&(h++,x=[0]);b[p++]=h,x[0]?x[S++]=I[w]||0:(x=[I[w]],S=1)}while((w++<k||null!=x[0])&&A--);m=null!=x[0],b[0]||b.splice(0,1)}if(u==c){for(p=1,A=b[0];A>=10;A/=10,p++);G(v,s+(v.e=p+_*l-1)+1,a,m)}else v.e=_,v.r=+m;return v}}(),k=/^(-?)0([xbo])(?=\w[\w.]*$)/i,E=/^([^.]+)\.$/,C=/^\.([^.]+)$/,N=/^-?(Infinity|NaN)$/,A=/^\s*\+(?=[\w.])|^\s+|\s+$/g,S=function(e,t,n,r){var i,o=n?t:t.replace(A,"");if(N.test(o))e.s=isNaN(o)?null:o<0?-1:1;else{if(!n&&(o=o.replace(k,(function(e,t,n){return i="x"==(n=n.toLowerCase())?16:"b"==n?2:8,r&&r!=i?e:t})),r&&(i=r,o=o.replace(E,"$1").replace(C,"0.$1")),t!=o))return new K(o,i);if(K.DEBUG)throw Error(s+"Not a"+(r?" base "+r:"")+" number: "+t);e.s=null}e.c=e.e=null},I.absoluteValue=I.abs=function(){var e=new K(this);return e.s<0&&(e.s=1),e},I.comparedTo=function(e,t){return h(this,new K(e,t))},I.decimalPlaces=I.dp=function(e,t){var n,r,i,o=this;if(null!=e)return g(e,0,p),null==t?t=M:g(t,0,8),G(new K(o),e+o.e+1,t);if(!(n=o.c))return null;if(r=((i=n.length-1)-f(this.e/l))*l,i=n[i])for(;i%10==0;i/=10,r--);return r<0&&(r=0),r},I.dividedBy=I.div=function(e,t){return n(this,new K(e,t),P,M)},I.dividedToIntegerBy=I.idiv=function(e,t){return n(this,new K(e,t),0,1)},I.exponentiatedBy=I.pow=function(e,t){var n,r,a,c,u,d,_,p,f=this;if((e=new K(e)).c&&!e.isInteger())throw Error(s+"Exponent not an integer: "+Q(e));if(null!=t&&(t=new K(t)),u=e.e>14,!f.c||!f.c[0]||1==f.c[0]&&!f.e&&1==f.c.length||!e.c||!e.c[0])return p=new K(Math.pow(+Q(f),u?e.s*(2-y(e)):+Q(e))),t?p.mod(t):p;if(d=e.s<0,t){if(t.c?!t.c[0]:!t.s)return new K(NaN);(r=!d&&f.isInteger()&&t.isInteger())&&(f=f.mod(t))}else{if(e.e>9&&(f.e>0||f.e<-1||(0==f.e?f.c[0]>1||u&&f.c[1]>=24e7:f.c[0]<8e13||u&&f.c[0]<=9999975e7)))return c=f.s<0&&y(e)?-0:0,f.e>-1&&(c=1/c),new K(d?1/c:c);U&&(c=i(U/l+2))}for(u?(n=new K(.5),d&&(e.s=1),_=y(e)):_=(a=Math.abs(+Q(e)))%2,p=new K(D);;){if(_){if(!(p=p.times(f)).c)break;c?p.c.length>c&&(p.c.length=c):r&&(p=p.mod(t))}if(a){if(0===(a=o(a/2)))break;_=a%2}else if(G(e=e.times(n),e.e+1,1),e.e>14)_=y(e);else{if(0===(a=+Q(e)))break;_=a%2}f=f.times(f),c?f.c&&f.c.length>c&&(f.c.length=c):r&&(f=f.mod(t))}return r?p:(d&&(p=D.div(p)),t?p.mod(t):c?G(p,U,M,undefined):p)},I.integerValue=function(e){var t=new K(this);return null==e?e=M:g(e,0,8),G(t,t.e+1,e)},I.isEqualTo=I.eq=function(e,t){return 0===h(this,new K(e,t))},I.isFinite=function(){return!!this.c},I.isGreaterThan=I.gt=function(e,t){return h(this,new K(e,t))>0},I.isGreaterThanOrEqualTo=I.gte=function(e,t){return 1===(t=h(this,new K(e,t)))||0===t},I.isInteger=function(){return!!this.c&&f(this.e/l)>this.c.length-2},I.isLessThan=I.lt=function(e,t){return h(this,new K(e,t))<0},I.isLessThanOrEqualTo=I.lte=function(e,t){return-1===(t=h(this,new K(e,t)))||0===t},I.isNaN=function(){return!this.s},I.isNegative=function(){return this.s<0},I.isPositive=function(){return this.s>0},I.isZero=function(){return!!this.c&&0==this.c[0]},I.minus=function(e,t){var n,r,i,o,s=this,a=s.s;if(t=(e=new K(e,t)).s,!a||!t)return new K(NaN);if(a!=t)return e.s=-t,s.plus(e);var u=s.e/l,d=e.e/l,_=s.c,p=e.c;if(!u||!d){if(!_||!p)return _?(e.s=-t,e):new K(p?s:NaN);if(!_[0]||!p[0])return p[0]?(e.s=-t,e):new K(_[0]?s:3==M?-0:0)}if(u=f(u),d=f(d),_=_.slice(),a=u-d){for((o=a<0)?(a=-a,i=_):(d=u,i=p),i.reverse(),t=a;t--;i.push(0));i.reverse()}else for(r=(o=(a=_.length)<(t=p.length))?a:t,a=t=0;t<r;t++)if(_[t]!=p[t]){o=_[t]<p[t];break}if(o&&(i=_,_=p,p=i,e.s=-e.s),(t=(r=p.length)-(n=_.length))>0)for(;t--;_[n++]=0);for(t=c-1;r>a;){if(_[--r]<p[r]){for(n=r;n&&!_[--n];_[n]=t);--_[n],_[r]+=c}_[r]-=p[r]}for(;0==_[0];_.splice(0,1),--d);return _[0]?H(e,_,d):(e.s=3==M?-1:1,e.c=[e.e=0],e)},I.modulo=I.mod=function(e,t){var r,i,o=this;return e=new K(e,t),!o.c||!e.s||e.c&&!e.c[0]?new K(NaN):!e.c||o.c&&!o.c[0]?new K(o):(9==z?(i=e.s,e.s=1,r=n(o,e,0,3),e.s=i,r.s*=i):r=n(o,e,0,z),(e=o.minus(r.times(e))).c[0]||1!=z||(e.s=o.s),e)},I.multipliedBy=I.times=function(e,t){var n,r,i,o,s,a,u,d,p,m,h,g,y,v,b,x=this,S=x.c,T=(e=new K(e,t)).c;if(!(S&&T&&S[0]&&T[0]))return!x.s||!e.s||S&&!S[0]&&!T||T&&!T[0]&&!S?e.c=e.e=e.s=null:(e.s*=x.s,S&&T?(e.c=[0],e.e=0):e.c=e.e=null),e;for(r=f(x.e/l)+f(e.e/l),e.s*=x.s,(u=S.length)<(m=T.length)&&(y=S,S=T,T=y,i=u,u=m,m=i),i=u+m,y=[];i--;y.push(0));for(v=c,b=_,i=m;--i>=0;){for(n=0,h=T[i]%b,g=T[i]/b|0,o=i+(s=u);o>i;)n=((d=h*(d=S[--s]%b)+(a=g*d+(p=S[s]/b|0)*h)%b*b+y[o]+n)/v|0)+(a/b|0)+g*p,y[o--]=d%v;y[o]=n}return n?++r:y.splice(0,1),H(e,y,r)},I.negated=function(){var e=new K(this);return e.s=-e.s||null,e},I.plus=function(e,t){var n,r=this,i=r.s;if(t=(e=new K(e,t)).s,!i||!t)return new K(NaN);if(i!=t)return e.s=-t,r.minus(e);var o=r.e/l,s=e.e/l,a=r.c,u=e.c;if(!o||!s){if(!a||!u)return new K(i/0);if(!a[0]||!u[0])return u[0]?e:new K(a[0]?r:0*i)}if(o=f(o),s=f(s),a=a.slice(),i=o-s){for(i>0?(s=o,n=u):(i=-i,n=a),n.reverse();i--;n.push(0));n.reverse()}for((i=a.length)-(t=u.length)<0&&(n=u,u=a,a=n,t=i),i=0;t;)i=(a[--t]=a[t]+u[t]+i)/c|0,a[t]=c===a[t]?0:a[t]%c;return i&&(a=[i].concat(a),++s),H(e,a,s)},I.precision=I.sd=function(e,t){var n,r,i,o=this;if(null!=e&&e!==!!e)return g(e,1,p),null==t?t=M:g(t,0,8),G(new K(o),e,t);if(!(n=o.c))return null;if(r=(i=n.length-1)*l+1,i=n[i]){for(;i%10==0;i/=10,r--);for(i=n[0];i>=10;i/=10,r++);}return e&&o.e+1>r&&(r=o.e+1),r},I.shiftedBy=function(e){return g(e,-9007199254740991,u),this.times("1e"+e)},I.squareRoot=I.sqrt=function(){var e,t,r,i,o,s=this,a=s.c,c=s.s,l=s.e,u=P+4,d=new K("0.5");if(1!==c||!a||!a[0])return new K(!c||c<0&&(!a||a[0])?NaN:a?s:1/0);if(0==(c=Math.sqrt(+Q(s)))||c==1/0?(((t=m(a)).length+l)%2==0&&(t+="0"),c=Math.sqrt(+t),l=f((l+1)/2)-(l<0||l%2),r=new K(t=c==1/0?"5e"+l:(t=c.toExponential()).slice(0,t.indexOf("e")+1)+l)):r=new K(c+""),r.c[0])for((c=(l=r.e)+u)<3&&(c=0);;)if(o=r,r=d.times(o.plus(n(s,o,u,1))),m(o.c).slice(0,c)===(t=m(r.c)).slice(0,c)){if(r.e<l&&--c,"9999"!=(t=t.slice(c-3,c+1))&&(i||"4999"!=t)){+t&&(+t.slice(1)||"5"!=t.charAt(0))||(G(r,r.e+P+2,1),e=!r.times(r).eq(s));break}if(!i&&(G(o,o.e+P+2,0),o.times(o).eq(s))){r=o;break}u+=4,c+=4,i=1}return G(r,r.e+P+1,M,e)},I.toExponential=function(e,t){return null!=e&&(g(e,0,p),e++),J(this,e,t,1)},I.toFixed=function(e,t){return null!=e&&(g(e,0,p),e=e+this.e+1),J(this,e,t)},I.toFormat=function(e,t,n){var r,i=this;if(null==n)null!=e&&t&&"object"==typeof t?(n=t,t=null):e&&"object"==typeof e?(n=e,e=t=null):n=B;else if("object"!=typeof n)throw Error(s+"Argument not an object: "+n);if(r=i.toFixed(e,t),i.c){var o,a=r.split("."),c=+n.groupSize,l=+n.secondaryGroupSize,u=n.groupSeparator||"",d=a[0],_=a[1],p=i.s<0,f=p?d.slice(1):d,m=f.length;if(l&&(o=c,c=l,l=o,m-=o),c>0&&m>0){for(o=m%c||c,d=f.substr(0,o);o<m;o+=c)d+=u+f.substr(o,c);l>0&&(d+=u+f.slice(o)),p&&(d="-"+d)}r=_?d+(n.decimalSeparator||"")+((l=+n.fractionGroupSize)?_.replace(new RegExp("\\d{"+l+"}\\B","g"),"$&"+(n.fractionGroupSeparator||"")):_):d}return(n.prefix||"")+r+(n.suffix||"")},I.toFraction=function(e){var t,r,i,o,a,c,u,_,p,f,h,g,y=this,v=y.c;if(null!=e&&(!(u=new K(e)).isInteger()&&(u.c||1!==u.s)||u.lt(D)))throw Error(s+"Argument "+(u.isInteger()?"out of range: ":"not an integer: ")+Q(u));if(!v)return new K(y);for(t=new K(D),p=r=new K(D),i=_=new K(D),g=m(v),a=t.e=g.length-y.e-1,t.c[0]=d[(c=a%l)<0?l+c:c],e=!e||u.comparedTo(t)>0?a>0?t:p:u,c=L,L=1/0,u=new K(g),_.c[0]=0;f=n(u,t,0,1),1!=(o=r.plus(f.times(i))).comparedTo(e);)r=i,i=o,p=_.plus(f.times(o=p)),_=o,t=u.minus(f.times(o=t)),u=o;return o=n(e.minus(r),i,0,1),_=_.plus(o.times(p)),r=r.plus(o.times(i)),_.s=p.s=y.s,h=n(p,i,a*=2,M).minus(y).abs().comparedTo(n(_,r,a,M).minus(y).abs())<1?[p,i]:[_,r],L=c,h},I.toNumber=function(){return+Q(this)},I.toPrecision=function(e,t){return null!=e&&g(e,1,p),J(this,e,t,2)},I.toString=function(e){var t,n=this,r=n.s,i=n.e;return null===i?r?(t="Infinity",r<0&&(t="-"+t)):t="NaN":(null==e?t=i<=O||i>=F?v(m(n.c),i):b(m(n.c),i,"0"):10===e&&V?t=b(m((n=G(new K(n),P+i+1,M)).c),n.e,"0"):(g(e,2,q.length,"Base"),t=x(b(m(n.c),i,"0"),10,e,r,!0)),r<0&&n.c[0]&&(t="-"+t)),t},I.valueOf=I.toJSON=function(){return Q(this)},I._isBigNumber=!0,I[Symbol.toStringTag]="BigNumber",I[Symbol.for("nodejs.util.inspect.custom")]=I.valueOf,null!=t&&K.set(t),K}();const S=x},1636:e=>{"use strict";e.exports={rE:"6.5.5"}}}]); \ No newline at end of file diff --git a/assets/js/388.3d9bfee9.js.LICENSE.txt b/assets/js/388.3d9bfee9.js.LICENSE.txt new file mode 100644 index 00000000..0d0bcd24 --- /dev/null +++ b/assets/js/388.3d9bfee9.js.LICENSE.txt @@ -0,0 +1,29 @@ +/*! + * The buffer module from node.js, for the browser. + * + * @author Feross Aboukhadijeh <https://feross.org> + * @license MIT + */ + +/*! ***************************************************************************** +Copyright (c) Microsoft Corporation. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH +REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY +AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, +INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM +LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR +OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THIS SOFTWARE. +***************************************************************************** */ + +/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */ + +/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */ + +/*! safe-buffer. MIT License. Feross Aboukhadijeh <https://feross.org/opensource> */ + +/*! typedarray-to-buffer. MIT License. Feross Aboukhadijeh <https://feross.org/opensource> */ diff --git a/assets/js/42.aee3fc02.js b/assets/js/42.aee3fc02.js new file mode 100644 index 00000000..f070dea5 --- /dev/null +++ b/assets/js/42.aee3fc02.js @@ -0,0 +1,13621 @@ +"use strict"; +exports.id = 42; +exports.ids = [42]; +exports.modules = { + +/***/ 62334: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + Zp: () => (/* reexport */ layout) +}); + +// UNUSED EXPORTS: acyclic, normalize, rank + +// EXTERNAL MODULE: ./node_modules/lodash-es/forEach.js +var forEach = __webpack_require__(8058); +// EXTERNAL MODULE: ./node_modules/lodash-es/toString.js + 1 modules +var lodash_es_toString = __webpack_require__(28894); +;// CONCATENATED MODULE: ./node_modules/lodash-es/uniqueId.js + + +/** Used to generate unique IDs. */ +var idCounter = 0; + +/** + * Generates a unique ID. If `prefix` is given, the ID is appended to it. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Util + * @param {string} [prefix=''] The value to prefix the ID with. + * @returns {string} Returns the unique ID. + * @example + * + * _.uniqueId('contact_'); + * // => 'contact_104' + * + * _.uniqueId(); + * // => '105' + */ +function uniqueId(prefix) { + var id = ++idCounter; + return (0,lodash_es_toString/* default */.A)(prefix) + id; +} + +/* harmony default export */ const lodash_es_uniqueId = (uniqueId); + +// EXTERNAL MODULE: ./node_modules/lodash-es/has.js + 1 modules +var has = __webpack_require__(48585); +// EXTERNAL MODULE: ./node_modules/lodash-es/constant.js +var constant = __webpack_require__(39142); +// EXTERNAL MODULE: ./node_modules/lodash-es/flatten.js +var flatten = __webpack_require__(34098); +// EXTERNAL MODULE: ./node_modules/lodash-es/map.js +var map = __webpack_require__(74722); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseRange.js +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeCeil = Math.ceil, + nativeMax = Math.max; + +/** + * The base implementation of `_.range` and `_.rangeRight` which doesn't + * coerce arguments. + * + * @private + * @param {number} start The start of the range. + * @param {number} end The end of the range. + * @param {number} step The value to increment or decrement by. + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {Array} Returns the range of numbers. + */ +function baseRange(start, end, step, fromRight) { + var index = -1, + length = nativeMax(nativeCeil((end - start) / (step || 1)), 0), + result = Array(length); + + while (length--) { + result[fromRight ? length : ++index] = start; + start += step; + } + return result; +} + +/* harmony default export */ const _baseRange = (baseRange); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_isIterateeCall.js +var _isIterateeCall = __webpack_require__(6832); +// EXTERNAL MODULE: ./node_modules/lodash-es/toFinite.js + 3 modules +var toFinite = __webpack_require__(74342); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_createRange.js + + + + +/** + * Creates a `_.range` or `_.rangeRight` function. + * + * @private + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {Function} Returns the new range function. + */ +function createRange(fromRight) { + return function(start, end, step) { + if (step && typeof step != 'number' && (0,_isIterateeCall/* default */.A)(start, end, step)) { + end = step = undefined; + } + // Ensure the sign of `-0` is preserved. + start = (0,toFinite/* default */.A)(start); + if (end === undefined) { + end = start; + start = 0; + } else { + end = (0,toFinite/* default */.A)(end); + } + step = step === undefined ? (start < end ? 1 : -1) : (0,toFinite/* default */.A)(step); + return _baseRange(start, end, step, fromRight); + }; +} + +/* harmony default export */ const _createRange = (createRange); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/range.js + + +/** + * Creates an array of numbers (positive and/or negative) progressing from + * `start` up to, but not including, `end`. A step of `-1` is used if a negative + * `start` is specified without an `end` or `step`. If `end` is not specified, + * it's set to `start` with `start` then set to `0`. + * + * **Note:** JavaScript follows the IEEE-754 standard for resolving + * floating-point values which can produce unexpected results. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Util + * @param {number} [start=0] The start of the range. + * @param {number} end The end of the range. + * @param {number} [step=1] The value to increment or decrement by. + * @returns {Array} Returns the range of numbers. + * @see _.inRange, _.rangeRight + * @example + * + * _.range(4); + * // => [0, 1, 2, 3] + * + * _.range(-4); + * // => [0, -1, -2, -3] + * + * _.range(1, 5); + * // => [1, 2, 3, 4] + * + * _.range(0, 20, 5); + * // => [0, 5, 10, 15] + * + * _.range(0, -4, -1); + * // => [0, -1, -2, -3] + * + * _.range(1, 4, 0); + * // => [1, 1, 1] + * + * _.range(0); + * // => [] + */ +var range = _createRange(); + +/* harmony default export */ const lodash_es_range = (range); + +// EXTERNAL MODULE: ./node_modules/dagre-d3-es/src/graphlib/index.js +var graphlib = __webpack_require__(697); +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/data/list.js +/* + * Simple doubly linked list implementation derived from Cormen, et al., + * "Introduction to Algorithms". + */ + + + +class List { + constructor() { + var sentinel = {}; + sentinel._next = sentinel._prev = sentinel; + this._sentinel = sentinel; + } + dequeue() { + var sentinel = this._sentinel; + var entry = sentinel._prev; + if (entry !== sentinel) { + unlink(entry); + return entry; + } + } + enqueue(entry) { + var sentinel = this._sentinel; + if (entry._prev && entry._next) { + unlink(entry); + } + entry._next = sentinel._next; + sentinel._next._prev = entry; + sentinel._next = entry; + entry._prev = sentinel; + } + toString() { + var strs = []; + var sentinel = this._sentinel; + var curr = sentinel._prev; + while (curr !== sentinel) { + strs.push(JSON.stringify(curr, filterOutLinks)); + curr = curr._prev; + } + return '[' + strs.join(', ') + ']'; + } +} + +function unlink(entry) { + entry._prev._next = entry._next; + entry._next._prev = entry._prev; + delete entry._next; + delete entry._prev; +} + +function filterOutLinks(k, v) { + if (k !== '_next' && k !== '_prev') { + return v; + } +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/greedy-fas.js + + + + +/* + * A greedy heuristic for finding a feedback arc set for a graph. A feedback + * arc set is a set of edges that can be removed to make a graph acyclic. + * The algorithm comes from: P. Eades, X. Lin, and W. F. Smyth, "A fast and + * effective heuristic for the feedback arc set problem." This implementation + * adjusts that from the paper to allow for weighted edges. + */ + + +var DEFAULT_WEIGHT_FN = constant/* default */.A(1); + +function greedyFAS(g, weightFn) { + if (g.nodeCount() <= 1) { + return []; + } + var state = buildState(g, weightFn || DEFAULT_WEIGHT_FN); + var results = doGreedyFAS(state.graph, state.buckets, state.zeroIdx); + + // Expand multi-edges + return flatten/* default */.A( + map/* default */.A(results, function (e) { + return g.outEdges(e.v, e.w); + }) + ); +} + +function doGreedyFAS(g, buckets, zeroIdx) { + var results = []; + var sources = buckets[buckets.length - 1]; + var sinks = buckets[0]; + + var entry; + while (g.nodeCount()) { + while ((entry = sinks.dequeue())) { + removeNode(g, buckets, zeroIdx, entry); + } + while ((entry = sources.dequeue())) { + removeNode(g, buckets, zeroIdx, entry); + } + if (g.nodeCount()) { + for (var i = buckets.length - 2; i > 0; --i) { + entry = buckets[i].dequeue(); + if (entry) { + results = results.concat(removeNode(g, buckets, zeroIdx, entry, true)); + break; + } + } + } + } + + return results; +} + +function removeNode(g, buckets, zeroIdx, entry, collectPredecessors) { + var results = collectPredecessors ? [] : undefined; + + forEach/* default */.A(g.inEdges(entry.v), function (edge) { + var weight = g.edge(edge); + var uEntry = g.node(edge.v); + + if (collectPredecessors) { + results.push({ v: edge.v, w: edge.w }); + } + + uEntry.out -= weight; + assignBucket(buckets, zeroIdx, uEntry); + }); + + forEach/* default */.A(g.outEdges(entry.v), function (edge) { + var weight = g.edge(edge); + var w = edge.w; + var wEntry = g.node(w); + wEntry['in'] -= weight; + assignBucket(buckets, zeroIdx, wEntry); + }); + + g.removeNode(entry.v); + + return results; +} + +function buildState(g, weightFn) { + var fasGraph = new graphlib/* Graph */.T(); + var maxIn = 0; + var maxOut = 0; + + forEach/* default */.A(g.nodes(), function (v) { + fasGraph.setNode(v, { v: v, in: 0, out: 0 }); + }); + + // Aggregate weights on nodes, but also sum the weights across multi-edges + // into a single edge for the fasGraph. + forEach/* default */.A(g.edges(), function (e) { + var prevWeight = fasGraph.edge(e.v, e.w) || 0; + var weight = weightFn(e); + var edgeWeight = prevWeight + weight; + fasGraph.setEdge(e.v, e.w, edgeWeight); + maxOut = Math.max(maxOut, (fasGraph.node(e.v).out += weight)); + maxIn = Math.max(maxIn, (fasGraph.node(e.w)['in'] += weight)); + }); + + var buckets = lodash_es_range(maxOut + maxIn + 3).map(function () { + return new List(); + }); + var zeroIdx = maxIn + 1; + + forEach/* default */.A(fasGraph.nodes(), function (v) { + assignBucket(buckets, zeroIdx, fasGraph.node(v)); + }); + + return { graph: fasGraph, buckets: buckets, zeroIdx: zeroIdx }; +} + +function assignBucket(buckets, zeroIdx, entry) { + if (!entry.out) { + buckets[0].enqueue(entry); + } else if (!entry['in']) { + buckets[buckets.length - 1].enqueue(entry); + } else { + buckets[entry.out - entry['in'] + zeroIdx].enqueue(entry); + } +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/acyclic.js + + + + + +function run(g) { + var fas = g.graph().acyclicer === 'greedy' ? greedyFAS(g, weightFn(g)) : dfsFAS(g); + forEach/* default */.A(fas, function (e) { + var label = g.edge(e); + g.removeEdge(e); + label.forwardName = e.name; + label.reversed = true; + g.setEdge(e.w, e.v, label, lodash_es_uniqueId('rev')); + }); + + function weightFn(g) { + return function (e) { + return g.edge(e).weight; + }; + } +} + +function dfsFAS(g) { + var fas = []; + var stack = {}; + var visited = {}; + + function dfs(v) { + if (has/* default */.A(visited, v)) { + return; + } + visited[v] = true; + stack[v] = true; + forEach/* default */.A(g.outEdges(v), function (e) { + if (has/* default */.A(stack, e.w)) { + fas.push(e); + } else { + dfs(e.w); + } + }); + delete stack[v]; + } + + forEach/* default */.A(g.nodes(), dfs); + return fas; +} + +function undo(g) { + forEach/* default */.A(g.edges(), function (e) { + var label = g.edge(e); + if (label.reversed) { + g.removeEdge(e); + + var forwardName = label.forwardName; + delete label.reversed; + delete label.forwardName; + g.setEdge(e.w, e.v, label, forwardName); + } + }); +} + +// EXTERNAL MODULE: ./node_modules/lodash-es/merge.js + 6 modules +var merge = __webpack_require__(42837); +// EXTERNAL MODULE: ./node_modules/lodash-es/_basePickBy.js + 1 modules +var _basePickBy = __webpack_require__(99354); +// EXTERNAL MODULE: ./node_modules/lodash-es/hasIn.js + 1 modules +var hasIn = __webpack_require__(16807); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_basePick.js + + + +/** + * The base implementation of `_.pick` without support for individual + * property identifiers. + * + * @private + * @param {Object} object The source object. + * @param {string[]} paths The property paths to pick. + * @returns {Object} Returns the new object. + */ +function basePick(object, paths) { + return (0,_basePickBy/* default */.A)(object, paths, function(value, path) { + return (0,hasIn/* default */.A)(object, path); + }); +} + +/* harmony default export */ const _basePick = (basePick); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_overRest.js + 1 modules +var _overRest = __webpack_require__(76875); +// EXTERNAL MODULE: ./node_modules/lodash-es/_setToString.js + 2 modules +var _setToString = __webpack_require__(67525); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_flatRest.js + + + + +/** + * A specialized version of `baseRest` which flattens the rest array. + * + * @private + * @param {Function} func The function to apply a rest parameter to. + * @returns {Function} Returns the new function. + */ +function flatRest(func) { + return (0,_setToString/* default */.A)((0,_overRest/* default */.A)(func, undefined, flatten/* default */.A), func + ''); +} + +/* harmony default export */ const _flatRest = (flatRest); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/pick.js + + + +/** + * Creates an object composed of the picked `object` properties. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The source object. + * @param {...(string|string[])} [paths] The property paths to pick. + * @returns {Object} Returns the new object. + * @example + * + * var object = { 'a': 1, 'b': '2', 'c': 3 }; + * + * _.pick(object, ['a', 'c']); + * // => { 'a': 1, 'c': 3 } + */ +var pick = _flatRest(function(object, paths) { + return object == null ? {} : _basePick(object, paths); +}); + +/* harmony default export */ const lodash_es_pick = (pick); + +// EXTERNAL MODULE: ./node_modules/lodash-es/defaults.js +var defaults = __webpack_require__(23068); +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseExtremum.js +var _baseExtremum = __webpack_require__(72559); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseGt.js +/** + * The base implementation of `_.gt` which doesn't coerce arguments. + * + * @private + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {boolean} Returns `true` if `value` is greater than `other`, + * else `false`. + */ +function baseGt(value, other) { + return value > other; +} + +/* harmony default export */ const _baseGt = (baseGt); + +// EXTERNAL MODULE: ./node_modules/lodash-es/identity.js +var identity = __webpack_require__(29008); +;// CONCATENATED MODULE: ./node_modules/lodash-es/max.js + + + + +/** + * Computes the maximum value of `array`. If `array` is empty or falsey, + * `undefined` is returned. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Math + * @param {Array} array The array to iterate over. + * @returns {*} Returns the maximum value. + * @example + * + * _.max([4, 2, 8, 6]); + * // => 8 + * + * _.max([]); + * // => undefined + */ +function max(array) { + return (array && array.length) + ? (0,_baseExtremum/* default */.A)(array, identity/* default */.A, _baseGt) + : undefined; +} + +/* harmony default export */ const lodash_es_max = (max); + +// EXTERNAL MODULE: ./node_modules/lodash-es/last.js +var lodash_es_last = __webpack_require__(26666); +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseAssignValue.js +var _baseAssignValue = __webpack_require__(52528); +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseForOwn.js +var _baseForOwn = __webpack_require__(79841); +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseIteratee.js + 15 modules +var _baseIteratee = __webpack_require__(23958); +;// CONCATENATED MODULE: ./node_modules/lodash-es/mapValues.js + + + + +/** + * Creates an object with the same keys as `object` and values generated + * by running each own enumerable string keyed property of `object` thru + * `iteratee`. The iteratee is invoked with three arguments: + * (value, key, object). + * + * @static + * @memberOf _ + * @since 2.4.0 + * @category Object + * @param {Object} object The object to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Object} Returns the new mapped object. + * @see _.mapKeys + * @example + * + * var users = { + * 'fred': { 'user': 'fred', 'age': 40 }, + * 'pebbles': { 'user': 'pebbles', 'age': 1 } + * }; + * + * _.mapValues(users, function(o) { return o.age; }); + * // => { 'fred': 40, 'pebbles': 1 } (iteration order is not guaranteed) + * + * // The `_.property` iteratee shorthand. + * _.mapValues(users, 'age'); + * // => { 'fred': 40, 'pebbles': 1 } (iteration order is not guaranteed) + */ +function mapValues(object, iteratee) { + var result = {}; + iteratee = (0,_baseIteratee/* default */.A)(iteratee, 3); + + (0,_baseForOwn/* default */.A)(object, function(value, key, object) { + (0,_baseAssignValue/* default */.A)(result, key, iteratee(value, key, object)); + }); + return result; +} + +/* harmony default export */ const lodash_es_mapValues = (mapValues); + +// EXTERNAL MODULE: ./node_modules/lodash-es/isUndefined.js +var isUndefined = __webpack_require__(69592); +// EXTERNAL MODULE: ./node_modules/lodash-es/min.js +var lodash_es_min = __webpack_require__(86452); +// EXTERNAL MODULE: ./node_modules/lodash-es/_root.js +var _root = __webpack_require__(41917); +;// CONCATENATED MODULE: ./node_modules/lodash-es/now.js + + +/** + * Gets the timestamp of the number of milliseconds that have elapsed since + * the Unix epoch (1 January 1970 00:00:00 UTC). + * + * @static + * @memberOf _ + * @since 2.4.0 + * @category Date + * @returns {number} Returns the timestamp. + * @example + * + * _.defer(function(stamp) { + * console.log(_.now() - stamp); + * }, _.now()); + * // => Logs the number of milliseconds it took for the deferred invocation. + */ +var now = function() { + return _root/* default */.A.Date.now(); +}; + +/* harmony default export */ const lodash_es_now = (now); + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/util.js +/* provided dependency */ var console = __webpack_require__(96763); + + + + + +/* + * Adds a dummy node to the graph and return v. + */ +function addDummyNode(g, type, attrs, name) { + var v; + do { + v = lodash_es_uniqueId(name); + } while (g.hasNode(v)); + + attrs.dummy = type; + g.setNode(v, attrs); + return v; +} + +/* + * Returns a new graph with only simple edges. Handles aggregation of data + * associated with multi-edges. + */ +function simplify(g) { + var simplified = new graphlib/* Graph */.T().setGraph(g.graph()); + forEach/* default */.A(g.nodes(), function (v) { + simplified.setNode(v, g.node(v)); + }); + forEach/* default */.A(g.edges(), function (e) { + var simpleLabel = simplified.edge(e.v, e.w) || { weight: 0, minlen: 1 }; + var label = g.edge(e); + simplified.setEdge(e.v, e.w, { + weight: simpleLabel.weight + label.weight, + minlen: Math.max(simpleLabel.minlen, label.minlen), + }); + }); + return simplified; +} + +function asNonCompoundGraph(g) { + var simplified = new graphlib/* Graph */.T({ multigraph: g.isMultigraph() }).setGraph(g.graph()); + forEach/* default */.A(g.nodes(), function (v) { + if (!g.children(v).length) { + simplified.setNode(v, g.node(v)); + } + }); + forEach/* default */.A(g.edges(), function (e) { + simplified.setEdge(e, g.edge(e)); + }); + return simplified; +} + +function successorWeights(g) { + var weightMap = _.map(g.nodes(), function (v) { + var sucs = {}; + _.forEach(g.outEdges(v), function (e) { + sucs[e.w] = (sucs[e.w] || 0) + g.edge(e).weight; + }); + return sucs; + }); + return _.zipObject(g.nodes(), weightMap); +} + +function predecessorWeights(g) { + var weightMap = _.map(g.nodes(), function (v) { + var preds = {}; + _.forEach(g.inEdges(v), function (e) { + preds[e.v] = (preds[e.v] || 0) + g.edge(e).weight; + }); + return preds; + }); + return _.zipObject(g.nodes(), weightMap); +} + +/* + * Finds where a line starting at point ({x, y}) would intersect a rectangle + * ({x, y, width, height}) if it were pointing at the rectangle's center. + */ +function intersectRect(rect, point) { + var x = rect.x; + var y = rect.y; + + // Rectangle intersection algorithm from: + // http://math.stackexchange.com/questions/108113/find-edge-between-two-boxes + var dx = point.x - x; + var dy = point.y - y; + var w = rect.width / 2; + var h = rect.height / 2; + + if (!dx && !dy) { + throw new Error('Not possible to find intersection inside of the rectangle'); + } + + var sx, sy; + if (Math.abs(dy) * w > Math.abs(dx) * h) { + // Intersection is top or bottom of rect. + if (dy < 0) { + h = -h; + } + sx = (h * dx) / dy; + sy = h; + } else { + // Intersection is left or right of rect. + if (dx < 0) { + w = -w; + } + sx = w; + sy = (w * dy) / dx; + } + + return { x: x + sx, y: y + sy }; +} + +/* + * Given a DAG with each node assigned "rank" and "order" properties, this + * function will produce a matrix with the ids of each node. + */ +function buildLayerMatrix(g) { + var layering = map/* default */.A(lodash_es_range(util_maxRank(g) + 1), function () { + return []; + }); + forEach/* default */.A(g.nodes(), function (v) { + var node = g.node(v); + var rank = node.rank; + if (!isUndefined/* default */.A(rank)) { + layering[rank][node.order] = v; + } + }); + return layering; +} + +/* + * Adjusts the ranks for all nodes in the graph such that all nodes v have + * rank(v) >= 0 and at least one node w has rank(w) = 0. + */ +function normalizeRanks(g) { + var min = lodash_es_min/* default */.A( + map/* default */.A(g.nodes(), function (v) { + return g.node(v).rank; + }) + ); + forEach/* default */.A(g.nodes(), function (v) { + var node = g.node(v); + if (has/* default */.A(node, 'rank')) { + node.rank -= min; + } + }); +} + +function removeEmptyRanks(g) { + // Ranks may not start at 0, so we need to offset them + var offset = lodash_es_min/* default */.A( + map/* default */.A(g.nodes(), function (v) { + return g.node(v).rank; + }) + ); + + var layers = []; + forEach/* default */.A(g.nodes(), function (v) { + var rank = g.node(v).rank - offset; + if (!layers[rank]) { + layers[rank] = []; + } + layers[rank].push(v); + }); + + var delta = 0; + var nodeRankFactor = g.graph().nodeRankFactor; + forEach/* default */.A(layers, function (vs, i) { + if (isUndefined/* default */.A(vs) && i % nodeRankFactor !== 0) { + --delta; + } else if (delta) { + forEach/* default */.A(vs, function (v) { + g.node(v).rank += delta; + }); + } + }); +} + +function addBorderNode(g, prefix, rank, order) { + var node = { + width: 0, + height: 0, + }; + if (arguments.length >= 4) { + node.rank = rank; + node.order = order; + } + return addDummyNode(g, 'border', node, prefix); +} + +function util_maxRank(g) { + return lodash_es_max( + map/* default */.A(g.nodes(), function (v) { + var rank = g.node(v).rank; + if (!isUndefined/* default */.A(rank)) { + return rank; + } + }) + ); +} + +/* + * Partition a collection into two groups: `lhs` and `rhs`. If the supplied + * function returns true for an entry it goes into `lhs`. Otherwise it goes + * into `rhs. + */ +function partition(collection, fn) { + var result = { lhs: [], rhs: [] }; + forEach/* default */.A(collection, function (value) { + if (fn(value)) { + result.lhs.push(value); + } else { + result.rhs.push(value); + } + }); + return result; +} + +/* + * Returns a new function that wraps `fn` with a timer. The wrapper logs the + * time it takes to execute the function. + */ +function util_time(name, fn) { + var start = lodash_es_now(); + try { + return fn(); + } finally { + console.log(name + ' time: ' + (lodash_es_now() - start) + 'ms'); + } +} + +function notime(name, fn) { + return fn(); +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/add-border-segments.js + + + + + +function addBorderSegments(g) { + function dfs(v) { + var children = g.children(v); + var node = g.node(v); + if (children.length) { + forEach/* default */.A(children, dfs); + } + + if (has/* default */.A(node, 'minRank')) { + node.borderLeft = []; + node.borderRight = []; + for (var rank = node.minRank, maxRank = node.maxRank + 1; rank < maxRank; ++rank) { + add_border_segments_addBorderNode(g, 'borderLeft', '_bl', v, node, rank); + add_border_segments_addBorderNode(g, 'borderRight', '_br', v, node, rank); + } + } + } + + forEach/* default */.A(g.children(), dfs); +} + +function add_border_segments_addBorderNode(g, prop, prefix, sg, sgNode, rank) { + var label = { width: 0, height: 0, rank: rank, borderType: prop }; + var prev = sgNode[prop][rank - 1]; + var curr = addDummyNode(g, 'border', label, prefix); + sgNode[prop][rank] = curr; + g.setParent(curr, sg); + if (prev) { + g.setEdge(prev, curr, { weight: 1 }); + } +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/coordinate-system.js + + + + +function adjust(g) { + var rankDir = g.graph().rankdir.toLowerCase(); + if (rankDir === 'lr' || rankDir === 'rl') { + swapWidthHeight(g); + } +} + +function coordinate_system_undo(g) { + var rankDir = g.graph().rankdir.toLowerCase(); + if (rankDir === 'bt' || rankDir === 'rl') { + reverseY(g); + } + + if (rankDir === 'lr' || rankDir === 'rl') { + swapXY(g); + swapWidthHeight(g); + } +} + +function swapWidthHeight(g) { + forEach/* default */.A(g.nodes(), function (v) { + swapWidthHeightOne(g.node(v)); + }); + forEach/* default */.A(g.edges(), function (e) { + swapWidthHeightOne(g.edge(e)); + }); +} + +function swapWidthHeightOne(attrs) { + var w = attrs.width; + attrs.width = attrs.height; + attrs.height = w; +} + +function reverseY(g) { + forEach/* default */.A(g.nodes(), function (v) { + reverseYOne(g.node(v)); + }); + + forEach/* default */.A(g.edges(), function (e) { + var edge = g.edge(e); + forEach/* default */.A(edge.points, reverseYOne); + if (has/* default */.A(edge, 'y')) { + reverseYOne(edge); + } + }); +} + +function reverseYOne(attrs) { + attrs.y = -attrs.y; +} + +function swapXY(g) { + forEach/* default */.A(g.nodes(), function (v) { + swapXYOne(g.node(v)); + }); + + forEach/* default */.A(g.edges(), function (e) { + var edge = g.edge(e); + forEach/* default */.A(edge.points, swapXYOne); + if (has/* default */.A(edge, 'x')) { + swapXYOne(edge); + } + }); +} + +function swapXYOne(attrs) { + var x = attrs.x; + attrs.x = attrs.y; + attrs.y = x; +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/normalize.js + + + + + +/* + * Breaks any long edges in the graph into short segments that span 1 layer + * each. This operation is undoable with the denormalize function. + * + * Pre-conditions: + * + * 1. The input graph is a DAG. + * 2. Each node in the graph has a "rank" property. + * + * Post-condition: + * + * 1. All edges in the graph have a length of 1. + * 2. Dummy nodes are added where edges have been split into segments. + * 3. The graph is augmented with a "dummyChains" attribute which contains + * the first dummy in each chain of dummy nodes produced. + */ +function normalize_run(g) { + g.graph().dummyChains = []; + forEach/* default */.A(g.edges(), function (edge) { + normalizeEdge(g, edge); + }); +} + +function normalizeEdge(g, e) { + var v = e.v; + var vRank = g.node(v).rank; + var w = e.w; + var wRank = g.node(w).rank; + var name = e.name; + var edgeLabel = g.edge(e); + var labelRank = edgeLabel.labelRank; + + if (wRank === vRank + 1) return; + + g.removeEdge(e); + + var dummy, attrs, i; + for (i = 0, ++vRank; vRank < wRank; ++i, ++vRank) { + edgeLabel.points = []; + attrs = { + width: 0, + height: 0, + edgeLabel: edgeLabel, + edgeObj: e, + rank: vRank, + }; + dummy = addDummyNode(g, 'edge', attrs, '_d'); + if (vRank === labelRank) { + attrs.width = edgeLabel.width; + attrs.height = edgeLabel.height; + // @ts-expect-error + attrs.dummy = 'edge-label'; + // @ts-expect-error + attrs.labelpos = edgeLabel.labelpos; + } + g.setEdge(v, dummy, { weight: edgeLabel.weight }, name); + if (i === 0) { + g.graph().dummyChains.push(dummy); + } + v = dummy; + } + + g.setEdge(v, w, { weight: edgeLabel.weight }, name); +} + +function normalize_undo(g) { + forEach/* default */.A(g.graph().dummyChains, function (v) { + var node = g.node(v); + var origLabel = node.edgeLabel; + var w; + g.setEdge(node.edgeObj, origLabel); + while (node.dummy) { + w = g.successors(v)[0]; + g.removeNode(v); + origLabel.points.push({ x: node.x, y: node.y }); + if (node.dummy === 'edge-label') { + origLabel.x = node.x; + origLabel.y = node.y; + origLabel.width = node.width; + origLabel.height = node.height; + } + v = w; + node = g.node(v); + } + }); +} + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseLt.js +var _baseLt = __webpack_require__(36224); +;// CONCATENATED MODULE: ./node_modules/lodash-es/minBy.js + + + + +/** + * This method is like `_.min` except that it accepts `iteratee` which is + * invoked for each element in `array` to generate the criterion by which + * the value is ranked. The iteratee is invoked with one argument: (value). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Math + * @param {Array} array The array to iterate over. + * @param {Function} [iteratee=_.identity] The iteratee invoked per element. + * @returns {*} Returns the minimum value. + * @example + * + * var objects = [{ 'n': 1 }, { 'n': 2 }]; + * + * _.minBy(objects, function(o) { return o.n; }); + * // => { 'n': 1 } + * + * // The `_.property` iteratee shorthand. + * _.minBy(objects, 'n'); + * // => { 'n': 1 } + */ +function minBy(array, iteratee) { + return (array && array.length) + ? (0,_baseExtremum/* default */.A)(array, (0,_baseIteratee/* default */.A)(iteratee, 2), _baseLt/* default */.A) + : undefined; +} + +/* harmony default export */ const lodash_es_minBy = (minBy); + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/rank/util.js + + + + +/* + * Initializes ranks for the input graph using the longest path algorithm. This + * algorithm scales well and is fast in practice, it yields rather poor + * solutions. Nodes are pushed to the lowest layer possible, leaving the bottom + * ranks wide and leaving edges longer than necessary. However, due to its + * speed, this algorithm is good for getting an initial ranking that can be fed + * into other algorithms. + * + * This algorithm does not normalize layers because it will be used by other + * algorithms in most cases. If using this algorithm directly, be sure to + * run normalize at the end. + * + * Pre-conditions: + * + * 1. Input graph is a DAG. + * 2. Input graph node labels can be assigned properties. + * + * Post-conditions: + * + * 1. Each node will be assign an (unnormalized) "rank" property. + */ +function longestPath(g) { + var visited = {}; + + function dfs(v) { + var label = g.node(v); + if (has/* default */.A(visited, v)) { + return label.rank; + } + visited[v] = true; + + var rank = lodash_es_min/* default */.A( + map/* default */.A(g.outEdges(v), function (e) { + return dfs(e.w) - g.edge(e).minlen; + }) + ); + + if ( + rank === Number.POSITIVE_INFINITY || // return value of _.map([]) for Lodash 3 + rank === undefined || // return value of _.map([]) for Lodash 4 + rank === null + ) { + // return value of _.map([null]) + rank = 0; + } + + return (label.rank = rank); + } + + forEach/* default */.A(g.sources(), dfs); +} + +/* + * Returns the amount of slack for the given edge. The slack is defined as the + * difference between the length of the edge and its minimum length. + */ +function slack(g, e) { + return g.node(e.w).rank - g.node(e.v).rank - g.edge(e).minlen; +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/rank/feasible-tree.js + + + + + + +/* + * Constructs a spanning tree with tight edges and adjusted the input node's + * ranks to achieve this. A tight edge is one that is has a length that matches + * its "minlen" attribute. + * + * The basic structure for this function is derived from Gansner, et al., "A + * Technique for Drawing Directed Graphs." + * + * Pre-conditions: + * + * 1. Graph must be a DAG. + * 2. Graph must be connected. + * 3. Graph must have at least one node. + * 5. Graph nodes must have been previously assigned a "rank" property that + * respects the "minlen" property of incident edges. + * 6. Graph edges must have a "minlen" property. + * + * Post-conditions: + * + * - Graph nodes will have their rank adjusted to ensure that all edges are + * tight. + * + * Returns a tree (undirected graph) that is constructed using only "tight" + * edges. + */ +function feasibleTree(g) { + var t = new graphlib/* Graph */.T({ directed: false }); + + // Choose arbitrary node from which to start our tree + var start = g.nodes()[0]; + var size = g.nodeCount(); + t.setNode(start, {}); + + var edge, delta; + while (tightTree(t, g) < size) { + edge = findMinSlackEdge(t, g); + delta = t.hasNode(edge.v) ? slack(g, edge) : -slack(g, edge); + shiftRanks(t, g, delta); + } + + return t; +} + +/* + * Finds a maximal tree of tight edges and returns the number of nodes in the + * tree. + */ +function tightTree(t, g) { + function dfs(v) { + forEach/* default */.A(g.nodeEdges(v), function (e) { + var edgeV = e.v, + w = v === edgeV ? e.w : edgeV; + if (!t.hasNode(w) && !slack(g, e)) { + t.setNode(w, {}); + t.setEdge(v, w, {}); + dfs(w); + } + }); + } + + forEach/* default */.A(t.nodes(), dfs); + return t.nodeCount(); +} + +/* + * Finds the edge with the smallest slack that is incident on tree and returns + * it. + */ +function findMinSlackEdge(t, g) { + return lodash_es_minBy(g.edges(), function (e) { + if (t.hasNode(e.v) !== t.hasNode(e.w)) { + return slack(g, e); + } + }); +} + +function shiftRanks(t, g, delta) { + forEach/* default */.A(t.nodes(), function (v) { + g.node(v).rank += delta; + }); +} + +// EXTERNAL MODULE: ./node_modules/lodash-es/find.js + 2 modules +var find = __webpack_require__(16145); +// EXTERNAL MODULE: ./node_modules/lodash-es/filter.js +var filter = __webpack_require__(94092); +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/graphlib/alg/dijkstra.js + + + + + +var DEFAULT_WEIGHT_FUNC = constant/* default */.A(1); + +function dijkstra_dijkstra(g, source, weightFn, edgeFn) { + return runDijkstra( + g, + String(source), + weightFn || DEFAULT_WEIGHT_FUNC, + edgeFn || + function (v) { + return g.outEdges(v); + } + ); +} + +function runDijkstra(g, source, weightFn, edgeFn) { + var results = {}; + var pq = new PriorityQueue(); + var v, vEntry; + + var updateNeighbors = function (edge) { + var w = edge.v !== v ? edge.v : edge.w; + var wEntry = results[w]; + var weight = weightFn(edge); + var distance = vEntry.distance + weight; + + if (weight < 0) { + throw new Error( + 'dijkstra does not allow negative edge weights. ' + + 'Bad edge: ' + + edge + + ' Weight: ' + + weight + ); + } + + if (distance < wEntry.distance) { + wEntry.distance = distance; + wEntry.predecessor = v; + pq.decrease(w, distance); + } + }; + + g.nodes().forEach(function (v) { + var distance = v === source ? 0 : Number.POSITIVE_INFINITY; + results[v] = { distance: distance }; + pq.add(v, distance); + }); + + while (pq.size() > 0) { + v = pq.removeMin(); + vEntry = results[v]; + if (vEntry.distance === Number.POSITIVE_INFINITY) { + break; + } + + edgeFn(v).forEach(updateNeighbors); + } + + return results; +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/graphlib/alg/dijkstra-all.js + + + + + +function dijkstraAll(g, weightFunc, edgeFunc) { + return _.transform( + g.nodes(), + function (acc, v) { + acc[v] = dijkstra(g, v, weightFunc, edgeFunc); + }, + {} + ); +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/graphlib/alg/floyd-warshall.js + + + + +var floyd_warshall_DEFAULT_WEIGHT_FUNC = constant/* default */.A(1); + +function floydWarshall(g, weightFn, edgeFn) { + return runFloydWarshall( + g, + weightFn || floyd_warshall_DEFAULT_WEIGHT_FUNC, + edgeFn || + function (v) { + return g.outEdges(v); + } + ); +} + +function runFloydWarshall(g, weightFn, edgeFn) { + var results = {}; + var nodes = g.nodes(); + + nodes.forEach(function (v) { + results[v] = {}; + results[v][v] = { distance: 0 }; + nodes.forEach(function (w) { + if (v !== w) { + results[v][w] = { distance: Number.POSITIVE_INFINITY }; + } + }); + edgeFn(v).forEach(function (edge) { + var w = edge.v === v ? edge.w : edge.v; + var d = weightFn(edge); + results[v][w] = { distance: d, predecessor: v }; + }); + }); + + nodes.forEach(function (k) { + var rowK = results[k]; + nodes.forEach(function (i) { + var rowI = results[i]; + nodes.forEach(function (j) { + var ik = rowI[k]; + var kj = rowK[j]; + var ij = rowI[j]; + var altDistance = ik.distance + kj.distance; + if (altDistance < ij.distance) { + ij.distance = altDistance; + ij.predecessor = kj.predecessor; + } + }); + }); + }); + + return results; +} + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseKeys.js + 1 modules +var _baseKeys = __webpack_require__(69471); +// EXTERNAL MODULE: ./node_modules/lodash-es/_getTag.js + 3 modules +var _getTag = __webpack_require__(9779); +// EXTERNAL MODULE: ./node_modules/lodash-es/isArrayLike.js +var isArrayLike = __webpack_require__(38446); +// EXTERNAL MODULE: ./node_modules/lodash-es/isString.js +var isString = __webpack_require__(9703); +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseProperty.js +var _baseProperty = __webpack_require__(70805); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_asciiSize.js + + +/** + * Gets the size of an ASCII `string`. + * + * @private + * @param {string} string The string inspect. + * @returns {number} Returns the string size. + */ +var asciiSize = (0,_baseProperty/* default */.A)('length'); + +/* harmony default export */ const _asciiSize = (asciiSize); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_hasUnicode.js +/** Used to compose unicode character classes. */ +var rsAstralRange = '\\ud800-\\udfff', + rsComboMarksRange = '\\u0300-\\u036f', + reComboHalfMarksRange = '\\ufe20-\\ufe2f', + rsComboSymbolsRange = '\\u20d0-\\u20ff', + rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange, + rsVarRange = '\\ufe0e\\ufe0f'; + +/** Used to compose unicode capture groups. */ +var rsZWJ = '\\u200d'; + +/** Used to detect strings with [zero-width joiners or code points from the astral planes](http://eev.ee/blog/2015/09/12/dark-corners-of-unicode/). */ +var reHasUnicode = RegExp('[' + rsZWJ + rsAstralRange + rsComboRange + rsVarRange + ']'); + +/** + * Checks if `string` contains Unicode symbols. + * + * @private + * @param {string} string The string to inspect. + * @returns {boolean} Returns `true` if a symbol is found, else `false`. + */ +function hasUnicode(string) { + return reHasUnicode.test(string); +} + +/* harmony default export */ const _hasUnicode = (hasUnicode); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_unicodeSize.js +/** Used to compose unicode character classes. */ +var _unicodeSize_rsAstralRange = '\\ud800-\\udfff', + _unicodeSize_rsComboMarksRange = '\\u0300-\\u036f', + _unicodeSize_reComboHalfMarksRange = '\\ufe20-\\ufe2f', + _unicodeSize_rsComboSymbolsRange = '\\u20d0-\\u20ff', + _unicodeSize_rsComboRange = _unicodeSize_rsComboMarksRange + _unicodeSize_reComboHalfMarksRange + _unicodeSize_rsComboSymbolsRange, + _unicodeSize_rsVarRange = '\\ufe0e\\ufe0f'; + +/** Used to compose unicode capture groups. */ +var rsAstral = '[' + _unicodeSize_rsAstralRange + ']', + rsCombo = '[' + _unicodeSize_rsComboRange + ']', + rsFitz = '\\ud83c[\\udffb-\\udfff]', + rsModifier = '(?:' + rsCombo + '|' + rsFitz + ')', + rsNonAstral = '[^' + _unicodeSize_rsAstralRange + ']', + rsRegional = '(?:\\ud83c[\\udde6-\\uddff]){2}', + rsSurrPair = '[\\ud800-\\udbff][\\udc00-\\udfff]', + _unicodeSize_rsZWJ = '\\u200d'; + +/** Used to compose unicode regexes. */ +var reOptMod = rsModifier + '?', + rsOptVar = '[' + _unicodeSize_rsVarRange + ']?', + rsOptJoin = '(?:' + _unicodeSize_rsZWJ + '(?:' + [rsNonAstral, rsRegional, rsSurrPair].join('|') + ')' + rsOptVar + reOptMod + ')*', + rsSeq = rsOptVar + reOptMod + rsOptJoin, + rsSymbol = '(?:' + [rsNonAstral + rsCombo + '?', rsCombo, rsRegional, rsSurrPair, rsAstral].join('|') + ')'; + +/** Used to match [string symbols](https://mathiasbynens.be/notes/javascript-unicode). */ +var reUnicode = RegExp(rsFitz + '(?=' + rsFitz + ')|' + rsSymbol + rsSeq, 'g'); + +/** + * Gets the size of a Unicode `string`. + * + * @private + * @param {string} string The string inspect. + * @returns {number} Returns the string size. + */ +function unicodeSize(string) { + var result = reUnicode.lastIndex = 0; + while (reUnicode.test(string)) { + ++result; + } + return result; +} + +/* harmony default export */ const _unicodeSize = (unicodeSize); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_stringSize.js + + + + +/** + * Gets the number of symbols in `string`. + * + * @private + * @param {string} string The string to inspect. + * @returns {number} Returns the string size. + */ +function stringSize(string) { + return _hasUnicode(string) + ? _unicodeSize(string) + : _asciiSize(string); +} + +/* harmony default export */ const _stringSize = (stringSize); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/size.js + + + + + + +/** `Object#toString` result references. */ +var mapTag = '[object Map]', + setTag = '[object Set]'; + +/** + * Gets the size of `collection` by returning its length for array-like + * values or the number of own enumerable string keyed properties for objects. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object|string} collection The collection to inspect. + * @returns {number} Returns the collection size. + * @example + * + * _.size([1, 2, 3]); + * // => 3 + * + * _.size({ 'a': 1, 'b': 2 }); + * // => 2 + * + * _.size('pebbles'); + * // => 7 + */ +function size(collection) { + if (collection == null) { + return 0; + } + if ((0,isArrayLike/* default */.A)(collection)) { + return (0,isString/* default */.A)(collection) ? _stringSize(collection) : collection.length; + } + var tag = (0,_getTag/* default */.A)(collection); + if (tag == mapTag || tag == setTag) { + return collection.size; + } + return (0,_baseKeys/* default */.A)(collection).length; +} + +/* harmony default export */ const lodash_es_size = (size); + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/graphlib/alg/topsort.js + + + + +topsort_topsort.CycleException = topsort_CycleException; + +function topsort_topsort(g) { + var visited = {}; + var stack = {}; + var results = []; + + function visit(node) { + if (has/* default */.A(stack, node)) { + throw new topsort_CycleException(); + } + + if (!has/* default */.A(visited, node)) { + stack[node] = true; + visited[node] = true; + forEach/* default */.A(g.predecessors(node), visit); + delete stack[node]; + results.push(node); + } + } + + forEach/* default */.A(g.sinks(), visit); + + if (lodash_es_size(visited) !== g.nodeCount()) { + throw new topsort_CycleException(); + } + + return results; +} + +function topsort_CycleException() {} +topsort_CycleException.prototype = new Error(); // must be an instance of Error to pass testing + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/graphlib/alg/is-acyclic.js + + + + +function isAcyclic(g) { + try { + topsort(g); + } catch (e) { + if (e instanceof CycleException) { + return false; + } + throw e; + } + return true; +} + +// EXTERNAL MODULE: ./node_modules/lodash-es/isArray.js +var isArray = __webpack_require__(92049); +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/graphlib/alg/dfs.js + + + + +/* + * A helper that preforms a pre- or post-order traversal on the input graph + * and returns the nodes in the order they were visited. If the graph is + * undirected then this algorithm will navigate using neighbors. If the graph + * is directed then this algorithm will navigate using successors. + * + * Order must be one of "pre" or "post". + */ +function dfs(g, vs, order) { + if (!isArray/* default */.A(vs)) { + vs = [vs]; + } + + var navigation = (g.isDirected() ? g.successors : g.neighbors).bind(g); + + var acc = []; + var visited = {}; + forEach/* default */.A(vs, function (v) { + if (!g.hasNode(v)) { + throw new Error('Graph does not have node: ' + v); + } + + doDfs(g, v, order === 'post', visited, navigation, acc); + }); + return acc; +} + +function doDfs(g, v, postorder, visited, navigation, acc) { + if (!has/* default */.A(visited, v)) { + visited[v] = true; + + if (!postorder) { + acc.push(v); + } + forEach/* default */.A(navigation(v), function (w) { + doDfs(g, w, postorder, visited, navigation, acc); + }); + if (postorder) { + acc.push(v); + } + } +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/graphlib/alg/postorder.js + + + + +function postorder(g, vs) { + return dfs(g, vs, 'post'); +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/graphlib/alg/preorder.js + + + + +function preorder(g, vs) { + return dfs(g, vs, 'pre'); +} + +// EXTERNAL MODULE: ./node_modules/dagre-d3-es/src/graphlib/graph.js + 1 modules +var graph = __webpack_require__(37981); +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/graphlib/alg/prim.js + + + + + + +function prim(g, weightFunc) { + var result = new Graph(); + var parents = {}; + var pq = new PriorityQueue(); + var v; + + function updateNeighbors(edge) { + var w = edge.v === v ? edge.w : edge.v; + var pri = pq.priority(w); + if (pri !== undefined) { + var edgeWeight = weightFunc(edge); + if (edgeWeight < pri) { + parents[w] = v; + pq.decrease(w, edgeWeight); + } + } + } + + if (g.nodeCount() === 0) { + return result; + } + + _.each(g.nodes(), function (v) { + pq.add(v, Number.POSITIVE_INFINITY); + result.setNode(v); + }); + + // Start from an arbitrary node + pq.decrease(g.nodes()[0], 0); + + var init = false; + while (pq.size() > 0) { + v = pq.removeMin(); + if (_.has(parents, v)) { + result.setEdge(v, parents[v]); + } else if (init) { + throw new Error('Input graph is not connected: ' + g); + } else { + init = true; + } + + g.nodeEdges(v).forEach(updateNeighbors); + } + + return result; +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/graphlib/alg/index.js + + + + + + + + + + + + + + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/rank/network-simplex.js + + + + + + + + +// Expose some internals for testing purposes +networkSimplex.initLowLimValues = initLowLimValues; +networkSimplex.initCutValues = initCutValues; +networkSimplex.calcCutValue = calcCutValue; +networkSimplex.leaveEdge = leaveEdge; +networkSimplex.enterEdge = enterEdge; +networkSimplex.exchangeEdges = exchangeEdges; + +/* + * The network simplex algorithm assigns ranks to each node in the input graph + * and iteratively improves the ranking to reduce the length of edges. + * + * Preconditions: + * + * 1. The input graph must be a DAG. + * 2. All nodes in the graph must have an object value. + * 3. All edges in the graph must have "minlen" and "weight" attributes. + * + * Postconditions: + * + * 1. All nodes in the graph will have an assigned "rank" attribute that has + * been optimized by the network simplex algorithm. Ranks start at 0. + * + * + * A rough sketch of the algorithm is as follows: + * + * 1. Assign initial ranks to each node. We use the longest path algorithm, + * which assigns ranks to the lowest position possible. In general this + * leads to very wide bottom ranks and unnecessarily long edges. + * 2. Construct a feasible tight tree. A tight tree is one such that all + * edges in the tree have no slack (difference between length of edge + * and minlen for the edge). This by itself greatly improves the assigned + * rankings by shorting edges. + * 3. Iteratively find edges that have negative cut values. Generally a + * negative cut value indicates that the edge could be removed and a new + * tree edge could be added to produce a more compact graph. + * + * Much of the algorithms here are derived from Gansner, et al., "A Technique + * for Drawing Directed Graphs." The structure of the file roughly follows the + * structure of the overall algorithm. + */ +function networkSimplex(g) { + g = simplify(g); + longestPath(g); + var t = feasibleTree(g); + initLowLimValues(t); + initCutValues(t, g); + + var e, f; + while ((e = leaveEdge(t))) { + f = enterEdge(t, g, e); + exchangeEdges(t, g, e, f); + } +} + +/* + * Initializes cut values for all edges in the tree. + */ +function initCutValues(t, g) { + var vs = postorder(t, t.nodes()); + vs = vs.slice(0, vs.length - 1); + forEach/* default */.A(vs, function (v) { + assignCutValue(t, g, v); + }); +} + +function assignCutValue(t, g, child) { + var childLab = t.node(child); + var parent = childLab.parent; + t.edge(child, parent).cutvalue = calcCutValue(t, g, child); +} + +/* + * Given the tight tree, its graph, and a child in the graph calculate and + * return the cut value for the edge between the child and its parent. + */ +function calcCutValue(t, g, child) { + var childLab = t.node(child); + var parent = childLab.parent; + // True if the child is on the tail end of the edge in the directed graph + var childIsTail = true; + // The graph's view of the tree edge we're inspecting + var graphEdge = g.edge(child, parent); + // The accumulated cut value for the edge between this node and its parent + var cutValue = 0; + + if (!graphEdge) { + childIsTail = false; + graphEdge = g.edge(parent, child); + } + + cutValue = graphEdge.weight; + + forEach/* default */.A(g.nodeEdges(child), function (e) { + var isOutEdge = e.v === child, + other = isOutEdge ? e.w : e.v; + + if (other !== parent) { + var pointsToHead = isOutEdge === childIsTail, + otherWeight = g.edge(e).weight; + + cutValue += pointsToHead ? otherWeight : -otherWeight; + if (isTreeEdge(t, child, other)) { + var otherCutValue = t.edge(child, other).cutvalue; + cutValue += pointsToHead ? -otherCutValue : otherCutValue; + } + } + }); + + return cutValue; +} + +function initLowLimValues(tree, root) { + if (arguments.length < 2) { + root = tree.nodes()[0]; + } + dfsAssignLowLim(tree, {}, 1, root); +} + +function dfsAssignLowLim(tree, visited, nextLim, v, parent) { + var low = nextLim; + var label = tree.node(v); + + visited[v] = true; + forEach/* default */.A(tree.neighbors(v), function (w) { + if (!has/* default */.A(visited, w)) { + nextLim = dfsAssignLowLim(tree, visited, nextLim, w, v); + } + }); + + label.low = low; + label.lim = nextLim++; + if (parent) { + label.parent = parent; + } else { + // TODO should be able to remove this when we incrementally update low lim + delete label.parent; + } + + return nextLim; +} + +function leaveEdge(tree) { + return find/* default */.A(tree.edges(), function (e) { + return tree.edge(e).cutvalue < 0; + }); +} + +function enterEdge(t, g, edge) { + var v = edge.v; + var w = edge.w; + + // For the rest of this function we assume that v is the tail and w is the + // head, so if we don't have this edge in the graph we should flip it to + // match the correct orientation. + if (!g.hasEdge(v, w)) { + v = edge.w; + w = edge.v; + } + + var vLabel = t.node(v); + var wLabel = t.node(w); + var tailLabel = vLabel; + var flip = false; + + // If the root is in the tail of the edge then we need to flip the logic that + // checks for the head and tail nodes in the candidates function below. + if (vLabel.lim > wLabel.lim) { + tailLabel = wLabel; + flip = true; + } + + var candidates = filter/* default */.A(g.edges(), function (edge) { + return ( + flip === isDescendant(t, t.node(edge.v), tailLabel) && + flip !== isDescendant(t, t.node(edge.w), tailLabel) + ); + }); + + return lodash_es_minBy(candidates, function (edge) { + return slack(g, edge); + }); +} + +function exchangeEdges(t, g, e, f) { + var v = e.v; + var w = e.w; + t.removeEdge(v, w); + t.setEdge(f.v, f.w, {}); + initLowLimValues(t); + initCutValues(t, g); + updateRanks(t, g); +} + +function updateRanks(t, g) { + var root = find/* default */.A(t.nodes(), function (v) { + return !g.node(v).parent; + }); + var vs = preorder(t, root); + vs = vs.slice(1); + forEach/* default */.A(vs, function (v) { + var parent = t.node(v).parent, + edge = g.edge(v, parent), + flipped = false; + + if (!edge) { + edge = g.edge(parent, v); + flipped = true; + } + + g.node(v).rank = g.node(parent).rank + (flipped ? edge.minlen : -edge.minlen); + }); +} + +/* + * Returns true if the edge is in the tree. + */ +function isTreeEdge(tree, u, v) { + return tree.hasEdge(u, v); +} + +/* + * Returns true if the specified node is descendant of the root node per the + * assigned low and lim attributes in the tree. + */ +function isDescendant(tree, vLabel, rootLabel) { + return rootLabel.low <= vLabel.lim && vLabel.lim <= rootLabel.lim; +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/rank/index.js + + + + + + +/* + * Assigns a rank to each node in the input graph that respects the "minlen" + * constraint specified on edges between nodes. + * + * This basic structure is derived from Gansner, et al., "A Technique for + * Drawing Directed Graphs." + * + * Pre-conditions: + * + * 1. Graph must be a connected DAG + * 2. Graph nodes must be objects + * 3. Graph edges must have "weight" and "minlen" attributes + * + * Post-conditions: + * + * 1. Graph nodes will have a "rank" attribute based on the results of the + * algorithm. Ranks can start at any index (including negative), we'll + * fix them up later. + */ +function rank(g) { + switch (g.graph().ranker) { + case 'network-simplex': + networkSimplexRanker(g); + break; + case 'tight-tree': + tightTreeRanker(g); + break; + case 'longest-path': + longestPathRanker(g); + break; + default: + networkSimplexRanker(g); + } +} + +// A fast and simple ranker, but results are far from optimal. +var longestPathRanker = longestPath; + +function tightTreeRanker(g) { + longestPath(g); + feasibleTree(g); +} + +function networkSimplexRanker(g) { + networkSimplex(g); +} + +// EXTERNAL MODULE: ./node_modules/lodash-es/values.js + 1 modules +var values = __webpack_require__(38207); +// EXTERNAL MODULE: ./node_modules/lodash-es/reduce.js + 2 modules +var reduce = __webpack_require__(89463); +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/nesting-graph.js + + + + + +/* + * A nesting graph creates dummy nodes for the tops and bottoms of subgraphs, + * adds appropriate edges to ensure that all cluster nodes are placed between + * these boundries, and ensures that the graph is connected. + * + * In addition we ensure, through the use of the minlen property, that nodes + * and subgraph border nodes to not end up on the same rank. + * + * Preconditions: + * + * 1. Input graph is a DAG + * 2. Nodes in the input graph has a minlen attribute + * + * Postconditions: + * + * 1. Input graph is connected. + * 2. Dummy nodes are added for the tops and bottoms of subgraphs. + * 3. The minlen attribute for nodes is adjusted to ensure nodes do not + * get placed on the same rank as subgraph border nodes. + * + * The nesting graph idea comes from Sander, "Layout of Compound Directed + * Graphs." + */ +function nesting_graph_run(g) { + var root = addDummyNode(g, 'root', {}, '_root'); + var depths = treeDepths(g); + var height = lodash_es_max(values/* default */.A(depths)) - 1; // Note: depths is an Object not an array + var nodeSep = 2 * height + 1; + + g.graph().nestingRoot = root; + + // Multiply minlen by nodeSep to align nodes on non-border ranks. + forEach/* default */.A(g.edges(), function (e) { + g.edge(e).minlen *= nodeSep; + }); + + // Calculate a weight that is sufficient to keep subgraphs vertically compact + var weight = sumWeights(g) + 1; + + // Create border nodes and link them up + forEach/* default */.A(g.children(), function (child) { + nesting_graph_dfs(g, root, nodeSep, weight, height, depths, child); + }); + + // Save the multiplier for node layers for later removal of empty border + // layers. + g.graph().nodeRankFactor = nodeSep; +} + +function nesting_graph_dfs(g, root, nodeSep, weight, height, depths, v) { + var children = g.children(v); + if (!children.length) { + if (v !== root) { + g.setEdge(root, v, { weight: 0, minlen: nodeSep }); + } + return; + } + + var top = addBorderNode(g, '_bt'); + var bottom = addBorderNode(g, '_bb'); + var label = g.node(v); + + g.setParent(top, v); + label.borderTop = top; + g.setParent(bottom, v); + label.borderBottom = bottom; + + forEach/* default */.A(children, function (child) { + nesting_graph_dfs(g, root, nodeSep, weight, height, depths, child); + + var childNode = g.node(child); + var childTop = childNode.borderTop ? childNode.borderTop : child; + var childBottom = childNode.borderBottom ? childNode.borderBottom : child; + var thisWeight = childNode.borderTop ? weight : 2 * weight; + var minlen = childTop !== childBottom ? 1 : height - depths[v] + 1; + + g.setEdge(top, childTop, { + weight: thisWeight, + minlen: minlen, + nestingEdge: true, + }); + + g.setEdge(childBottom, bottom, { + weight: thisWeight, + minlen: minlen, + nestingEdge: true, + }); + }); + + if (!g.parent(v)) { + g.setEdge(root, top, { weight: 0, minlen: height + depths[v] }); + } +} + +function treeDepths(g) { + var depths = {}; + function dfs(v, depth) { + var children = g.children(v); + if (children && children.length) { + forEach/* default */.A(children, function (child) { + dfs(child, depth + 1); + }); + } + depths[v] = depth; + } + forEach/* default */.A(g.children(), function (v) { + dfs(v, 1); + }); + return depths; +} + +function sumWeights(g) { + return reduce/* default */.A( + g.edges(), + function (acc, e) { + return acc + g.edge(e).weight; + }, + 0 + ); +} + +function cleanup(g) { + var graphLabel = g.graph(); + g.removeNode(graphLabel.nestingRoot); + delete graphLabel.nestingRoot; + forEach/* default */.A(g.edges(), function (e) { + var edge = g.edge(e); + if (edge.nestingEdge) { + g.removeEdge(e); + } + }); +} + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseClone.js + 13 modules +var _baseClone = __webpack_require__(68675); +;// CONCATENATED MODULE: ./node_modules/lodash-es/cloneDeep.js + + +/** Used to compose bitmasks for cloning. */ +var CLONE_DEEP_FLAG = 1, + CLONE_SYMBOLS_FLAG = 4; + +/** + * This method is like `_.clone` except that it recursively clones `value`. + * + * @static + * @memberOf _ + * @since 1.0.0 + * @category Lang + * @param {*} value The value to recursively clone. + * @returns {*} Returns the deep cloned value. + * @see _.clone + * @example + * + * var objects = [{ 'a': 1 }, { 'b': 2 }]; + * + * var deep = _.cloneDeep(objects); + * console.log(deep[0] === objects[0]); + * // => false + */ +function cloneDeep(value) { + return (0,_baseClone/* default */.A)(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG); +} + +/* harmony default export */ const lodash_es_cloneDeep = (cloneDeep); + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/order/add-subgraph-constraints.js + + + + +function addSubgraphConstraints(g, cg, vs) { + var prev = {}, + rootPrev; + + forEach/* default */.A(vs, function (v) { + var child = g.parent(v), + parent, + prevChild; + while (child) { + parent = g.parent(child); + if (parent) { + prevChild = prev[parent]; + prev[parent] = child; + } else { + prevChild = rootPrev; + rootPrev = child; + } + if (prevChild && prevChild !== child) { + cg.setEdge(prevChild, child); + return; + } + child = parent; + } + }); + + /* + function dfs(v) { + var children = v ? g.children(v) : g.children(); + if (children.length) { + var min = Number.POSITIVE_INFINITY, + subgraphs = []; + _.each(children, function(child) { + var childMin = dfs(child); + if (g.children(child).length) { + subgraphs.push({ v: child, order: childMin }); + } + min = Math.min(min, childMin); + }); + _.reduce(_.sortBy(subgraphs, "order"), function(prev, curr) { + cg.setEdge(prev.v, curr.v); + return curr; + }); + return min; + } + return g.node(v).order; + } + dfs(undefined); + */ +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/order/build-layer-graph.js + + + + + +/* + * Constructs a graph that can be used to sort a layer of nodes. The graph will + * contain all base and subgraph nodes from the request layer in their original + * hierarchy and any edges that are incident on these nodes and are of the type + * requested by the "relationship" parameter. + * + * Nodes from the requested rank that do not have parents are assigned a root + * node in the output graph, which is set in the root graph attribute. This + * makes it easy to walk the hierarchy of movable nodes during ordering. + * + * Pre-conditions: + * + * 1. Input graph is a DAG + * 2. Base nodes in the input graph have a rank attribute + * 3. Subgraph nodes in the input graph has minRank and maxRank attributes + * 4. Edges have an assigned weight + * + * Post-conditions: + * + * 1. Output graph has all nodes in the movable rank with preserved + * hierarchy. + * 2. Root nodes in the movable layer are made children of the node + * indicated by the root attribute of the graph. + * 3. Non-movable nodes incident on movable nodes, selected by the + * relationship parameter, are included in the graph (without hierarchy). + * 4. Edges incident on movable nodes, selected by the relationship + * parameter, are added to the output graph. + * 5. The weights for copied edges are aggregated as need, since the output + * graph is not a multi-graph. + */ +function buildLayerGraph(g, rank, relationship) { + var root = createRootNode(g), + result = new graphlib/* Graph */.T({ compound: true }) + .setGraph({ root: root }) + .setDefaultNodeLabel(function (v) { + return g.node(v); + }); + + forEach/* default */.A(g.nodes(), function (v) { + var node = g.node(v), + parent = g.parent(v); + + if (node.rank === rank || (node.minRank <= rank && rank <= node.maxRank)) { + result.setNode(v); + result.setParent(v, parent || root); + + // This assumes we have only short edges! + forEach/* default */.A(g[relationship](v), function (e) { + var u = e.v === v ? e.w : e.v, + edge = result.edge(u, v), + weight = !isUndefined/* default */.A(edge) ? edge.weight : 0; + result.setEdge(u, v, { weight: g.edge(e).weight + weight }); + }); + + if (has/* default */.A(node, 'minRank')) { + result.setNode(v, { + borderLeft: node.borderLeft[rank], + borderRight: node.borderRight[rank], + }); + } + } + }); + + return result; +} + +function createRootNode(g) { + var v; + while (g.hasNode((v = lodash_es_uniqueId('_root')))); + return v; +} + +// EXTERNAL MODULE: ./node_modules/lodash-es/_assignValue.js +var _assignValue = __webpack_require__(52851); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseZipObject.js +/** + * This base implementation of `_.zipObject` which assigns values using `assignFunc`. + * + * @private + * @param {Array} props The property identifiers. + * @param {Array} values The property values. + * @param {Function} assignFunc The function to assign values. + * @returns {Object} Returns the new object. + */ +function baseZipObject(props, values, assignFunc) { + var index = -1, + length = props.length, + valsLength = values.length, + result = {}; + + while (++index < length) { + var value = index < valsLength ? values[index] : undefined; + assignFunc(result, props[index], value); + } + return result; +} + +/* harmony default export */ const _baseZipObject = (baseZipObject); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/zipObject.js + + + +/** + * This method is like `_.fromPairs` except that it accepts two arrays, + * one of property identifiers and one of corresponding values. + * + * @static + * @memberOf _ + * @since 0.4.0 + * @category Array + * @param {Array} [props=[]] The property identifiers. + * @param {Array} [values=[]] The property values. + * @returns {Object} Returns the new object. + * @example + * + * _.zipObject(['a', 'b'], [1, 2]); + * // => { 'a': 1, 'b': 2 } + */ +function zipObject(props, values) { + return _baseZipObject(props || [], values || [], _assignValue/* default */.A); +} + +/* harmony default export */ const lodash_es_zipObject = (zipObject); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseFlatten.js + 1 modules +var _baseFlatten = __webpack_require__(13588); +// EXTERNAL MODULE: ./node_modules/lodash-es/_arrayMap.js +var _arrayMap = __webpack_require__(45572); +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseGet.js +var _baseGet = __webpack_require__(66318); +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseMap.js +var _baseMap = __webpack_require__(52568); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseSortBy.js +/** + * The base implementation of `_.sortBy` which uses `comparer` to define the + * sort order of `array` and replaces criteria objects with their corresponding + * values. + * + * @private + * @param {Array} array The array to sort. + * @param {Function} comparer The function to define sort order. + * @returns {Array} Returns `array`. + */ +function baseSortBy(array, comparer) { + var length = array.length; + + array.sort(comparer); + while (length--) { + array[length] = array[length].value; + } + return array; +} + +/* harmony default export */ const _baseSortBy = (baseSortBy); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseUnary.js +var _baseUnary = __webpack_require__(52789); +// EXTERNAL MODULE: ./node_modules/lodash-es/isSymbol.js +var isSymbol = __webpack_require__(61882); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_compareAscending.js + + +/** + * Compares values to sort them in ascending order. + * + * @private + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {number} Returns the sort order indicator for `value`. + */ +function compareAscending(value, other) { + if (value !== other) { + var valIsDefined = value !== undefined, + valIsNull = value === null, + valIsReflexive = value === value, + valIsSymbol = (0,isSymbol/* default */.A)(value); + + var othIsDefined = other !== undefined, + othIsNull = other === null, + othIsReflexive = other === other, + othIsSymbol = (0,isSymbol/* default */.A)(other); + + if ((!othIsNull && !othIsSymbol && !valIsSymbol && value > other) || + (valIsSymbol && othIsDefined && othIsReflexive && !othIsNull && !othIsSymbol) || + (valIsNull && othIsDefined && othIsReflexive) || + (!valIsDefined && othIsReflexive) || + !valIsReflexive) { + return 1; + } + if ((!valIsNull && !valIsSymbol && !othIsSymbol && value < other) || + (othIsSymbol && valIsDefined && valIsReflexive && !valIsNull && !valIsSymbol) || + (othIsNull && valIsDefined && valIsReflexive) || + (!othIsDefined && valIsReflexive) || + !othIsReflexive) { + return -1; + } + } + return 0; +} + +/* harmony default export */ const _compareAscending = (compareAscending); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_compareMultiple.js + + +/** + * Used by `_.orderBy` to compare multiple properties of a value to another + * and stable sort them. + * + * If `orders` is unspecified, all values are sorted in ascending order. Otherwise, + * specify an order of "desc" for descending or "asc" for ascending sort order + * of corresponding values. + * + * @private + * @param {Object} object The object to compare. + * @param {Object} other The other object to compare. + * @param {boolean[]|string[]} orders The order to sort by for each property. + * @returns {number} Returns the sort order indicator for `object`. + */ +function compareMultiple(object, other, orders) { + var index = -1, + objCriteria = object.criteria, + othCriteria = other.criteria, + length = objCriteria.length, + ordersLength = orders.length; + + while (++index < length) { + var result = _compareAscending(objCriteria[index], othCriteria[index]); + if (result) { + if (index >= ordersLength) { + return result; + } + var order = orders[index]; + return result * (order == 'desc' ? -1 : 1); + } + } + // Fixes an `Array#sort` bug in the JS engine embedded in Adobe applications + // that causes it, under certain circumstances, to provide the same value for + // `object` and `other`. See https://github.com/jashkenas/underscore/pull/1247 + // for more details. + // + // This also ensures a stable sort in V8 and other engines. + // See https://bugs.chromium.org/p/v8/issues/detail?id=90 for more details. + return object.index - other.index; +} + +/* harmony default export */ const _compareMultiple = (compareMultiple); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseOrderBy.js + + + + + + + + + + +/** + * The base implementation of `_.orderBy` without param guards. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function[]|Object[]|string[]} iteratees The iteratees to sort by. + * @param {string[]} orders The sort orders of `iteratees`. + * @returns {Array} Returns the new sorted array. + */ +function baseOrderBy(collection, iteratees, orders) { + if (iteratees.length) { + iteratees = (0,_arrayMap/* default */.A)(iteratees, function(iteratee) { + if ((0,isArray/* default */.A)(iteratee)) { + return function(value) { + return (0,_baseGet/* default */.A)(value, iteratee.length === 1 ? iteratee[0] : iteratee); + } + } + return iteratee; + }); + } else { + iteratees = [identity/* default */.A]; + } + + var index = -1; + iteratees = (0,_arrayMap/* default */.A)(iteratees, (0,_baseUnary/* default */.A)(_baseIteratee/* default */.A)); + + var result = (0,_baseMap/* default */.A)(collection, function(value, key, collection) { + var criteria = (0,_arrayMap/* default */.A)(iteratees, function(iteratee) { + return iteratee(value); + }); + return { 'criteria': criteria, 'index': ++index, 'value': value }; + }); + + return _baseSortBy(result, function(object, other) { + return _compareMultiple(object, other, orders); + }); +} + +/* harmony default export */ const _baseOrderBy = (baseOrderBy); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseRest.js +var _baseRest = __webpack_require__(24326); +;// CONCATENATED MODULE: ./node_modules/lodash-es/sortBy.js + + + + + +/** + * Creates an array of elements, sorted in ascending order by the results of + * running each element in a collection thru each iteratee. This method + * performs a stable sort, that is, it preserves the original sort order of + * equal elements. The iteratees are invoked with one argument: (value). + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {...(Function|Function[])} [iteratees=[_.identity]] + * The iteratees to sort by. + * @returns {Array} Returns the new sorted array. + * @example + * + * var users = [ + * { 'user': 'fred', 'age': 48 }, + * { 'user': 'barney', 'age': 36 }, + * { 'user': 'fred', 'age': 30 }, + * { 'user': 'barney', 'age': 34 } + * ]; + * + * _.sortBy(users, [function(o) { return o.user; }]); + * // => objects for [['barney', 36], ['barney', 34], ['fred', 48], ['fred', 30]] + * + * _.sortBy(users, ['user', 'age']); + * // => objects for [['barney', 34], ['barney', 36], ['fred', 30], ['fred', 48]] + */ +var sortBy = (0,_baseRest/* default */.A)(function(collection, iteratees) { + if (collection == null) { + return []; + } + var length = iteratees.length; + if (length > 1 && (0,_isIterateeCall/* default */.A)(collection, iteratees[0], iteratees[1])) { + iteratees = []; + } else if (length > 2 && (0,_isIterateeCall/* default */.A)(iteratees[0], iteratees[1], iteratees[2])) { + iteratees = [iteratees[0]]; + } + return _baseOrderBy(collection, (0,_baseFlatten/* default */.A)(iteratees, 1), []); +}); + +/* harmony default export */ const lodash_es_sortBy = (sortBy); + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/order/cross-count.js + + + + +/* + * A function that takes a layering (an array of layers, each with an array of + * ordererd nodes) and a graph and returns a weighted crossing count. + * + * Pre-conditions: + * + * 1. Input graph must be simple (not a multigraph), directed, and include + * only simple edges. + * 2. Edges in the input graph must have assigned weights. + * + * Post-conditions: + * + * 1. The graph and layering matrix are left unchanged. + * + * This algorithm is derived from Barth, et al., "Bilayer Cross Counting." + */ +function crossCount(g, layering) { + var cc = 0; + for (var i = 1; i < layering.length; ++i) { + cc += twoLayerCrossCount(g, layering[i - 1], layering[i]); + } + return cc; +} + +function twoLayerCrossCount(g, northLayer, southLayer) { + // Sort all of the edges between the north and south layers by their position + // in the north layer and then the south. Map these edges to the position of + // their head in the south layer. + var southPos = lodash_es_zipObject( + southLayer, + map/* default */.A(southLayer, function (v, i) { + return i; + }) + ); + var southEntries = flatten/* default */.A( + map/* default */.A(northLayer, function (v) { + return lodash_es_sortBy( + map/* default */.A(g.outEdges(v), function (e) { + return { pos: southPos[e.w], weight: g.edge(e).weight }; + }), + 'pos' + ); + }) + ); + + // Build the accumulator tree + var firstIndex = 1; + while (firstIndex < southLayer.length) firstIndex <<= 1; + var treeSize = 2 * firstIndex - 1; + firstIndex -= 1; + var tree = map/* default */.A(new Array(treeSize), function () { + return 0; + }); + + // Calculate the weighted crossings + var cc = 0; + forEach/* default */.A( + // @ts-expect-error + southEntries.forEach(function (entry) { + var index = entry.pos + firstIndex; + tree[index] += entry.weight; + var weightSum = 0; + // @ts-expect-error + while (index > 0) { + // @ts-expect-error + if (index % 2) { + weightSum += tree[index + 1]; + } + // @ts-expect-error + index = (index - 1) >> 1; + tree[index] += entry.weight; + } + cc += entry.weight * weightSum; + }) + ); + + return cc; +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/order/init-order.js + + + + +/* + * Assigns an initial order value for each node by performing a DFS search + * starting from nodes in the first rank. Nodes are assigned an order in their + * rank as they are first visited. + * + * This approach comes from Gansner, et al., "A Technique for Drawing Directed + * Graphs." + * + * Returns a layering matrix with an array per layer and each layer sorted by + * the order of its nodes. + */ +function initOrder(g) { + var visited = {}; + var simpleNodes = filter/* default */.A(g.nodes(), function (v) { + return !g.children(v).length; + }); + var maxRank = lodash_es_max( + map/* default */.A(simpleNodes, function (v) { + return g.node(v).rank; + }) + ); + var layers = map/* default */.A(lodash_es_range(maxRank + 1), function () { + return []; + }); + + function dfs(v) { + if (has/* default */.A(visited, v)) return; + visited[v] = true; + var node = g.node(v); + layers[node.rank].push(v); + forEach/* default */.A(g.successors(v), dfs); + } + + var orderedVs = lodash_es_sortBy(simpleNodes, function (v) { + return g.node(v).rank; + }); + forEach/* default */.A(orderedVs, dfs); + + return layers; +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/order/barycenter.js + + + + +function barycenter(g, movable) { + return map/* default */.A(movable, function (v) { + var inV = g.inEdges(v); + if (!inV.length) { + return { v: v }; + } else { + var result = reduce/* default */.A( + inV, + function (acc, e) { + var edge = g.edge(e), + nodeU = g.node(e.v); + return { + sum: acc.sum + edge.weight * nodeU.order, + weight: acc.weight + edge.weight, + }; + }, + { sum: 0, weight: 0 } + ); + + return { + v: v, + barycenter: result.sum / result.weight, + weight: result.weight, + }; + } + }); +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/order/resolve-conflicts.js + + + + +/* + * Given a list of entries of the form {v, barycenter, weight} and a + * constraint graph this function will resolve any conflicts between the + * constraint graph and the barycenters for the entries. If the barycenters for + * an entry would violate a constraint in the constraint graph then we coalesce + * the nodes in the conflict into a new node that respects the contraint and + * aggregates barycenter and weight information. + * + * This implementation is based on the description in Forster, "A Fast and + * Simple Hueristic for Constrained Two-Level Crossing Reduction," thought it + * differs in some specific details. + * + * Pre-conditions: + * + * 1. Each entry has the form {v, barycenter, weight}, or if the node has + * no barycenter, then {v}. + * + * Returns: + * + * A new list of entries of the form {vs, i, barycenter, weight}. The list + * `vs` may either be a singleton or it may be an aggregation of nodes + * ordered such that they do not violate constraints from the constraint + * graph. The property `i` is the lowest original index of any of the + * elements in `vs`. + */ +function resolveConflicts(entries, cg) { + var mappedEntries = {}; + forEach/* default */.A(entries, function (entry, i) { + var tmp = (mappedEntries[entry.v] = { + indegree: 0, + in: [], + out: [], + vs: [entry.v], + i: i, + }); + if (!isUndefined/* default */.A(entry.barycenter)) { + // @ts-expect-error + tmp.barycenter = entry.barycenter; + // @ts-expect-error + tmp.weight = entry.weight; + } + }); + + forEach/* default */.A(cg.edges(), function (e) { + var entryV = mappedEntries[e.v]; + var entryW = mappedEntries[e.w]; + if (!isUndefined/* default */.A(entryV) && !isUndefined/* default */.A(entryW)) { + entryW.indegree++; + entryV.out.push(mappedEntries[e.w]); + } + }); + + var sourceSet = filter/* default */.A(mappedEntries, function (entry) { + // @ts-expect-error + return !entry.indegree; + }); + + return doResolveConflicts(sourceSet); +} + +function doResolveConflicts(sourceSet) { + var entries = []; + + function handleIn(vEntry) { + return function (uEntry) { + if (uEntry.merged) { + return; + } + if ( + isUndefined/* default */.A(uEntry.barycenter) || + isUndefined/* default */.A(vEntry.barycenter) || + uEntry.barycenter >= vEntry.barycenter + ) { + mergeEntries(vEntry, uEntry); + } + }; + } + + function handleOut(vEntry) { + return function (wEntry) { + wEntry['in'].push(vEntry); + if (--wEntry.indegree === 0) { + sourceSet.push(wEntry); + } + }; + } + + while (sourceSet.length) { + var entry = sourceSet.pop(); + entries.push(entry); + forEach/* default */.A(entry['in'].reverse(), handleIn(entry)); + forEach/* default */.A(entry.out, handleOut(entry)); + } + + return map/* default */.A( + filter/* default */.A(entries, function (entry) { + return !entry.merged; + }), + function (entry) { + return lodash_es_pick(entry, ['vs', 'i', 'barycenter', 'weight']); + } + ); +} + +function mergeEntries(target, source) { + var sum = 0; + var weight = 0; + + if (target.weight) { + sum += target.barycenter * target.weight; + weight += target.weight; + } + + if (source.weight) { + sum += source.barycenter * source.weight; + weight += source.weight; + } + + target.vs = source.vs.concat(target.vs); + target.barycenter = sum / weight; + target.weight = weight; + target.i = Math.min(source.i, target.i); + source.merged = true; +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/order/sort.js + + + + + +function sort(entries, biasRight) { + var parts = partition(entries, function (entry) { + return has/* default */.A(entry, 'barycenter'); + }); + var sortable = parts.lhs, + unsortable = lodash_es_sortBy(parts.rhs, function (entry) { + return -entry.i; + }), + vs = [], + sum = 0, + weight = 0, + vsIndex = 0; + + sortable.sort(compareWithBias(!!biasRight)); + + vsIndex = consumeUnsortable(vs, unsortable, vsIndex); + + forEach/* default */.A(sortable, function (entry) { + vsIndex += entry.vs.length; + vs.push(entry.vs); + sum += entry.barycenter * entry.weight; + weight += entry.weight; + vsIndex = consumeUnsortable(vs, unsortable, vsIndex); + }); + + var result = { vs: flatten/* default */.A(vs) }; + if (weight) { + result.barycenter = sum / weight; + result.weight = weight; + } + return result; +} + +function consumeUnsortable(vs, unsortable, index) { + var last; + while (unsortable.length && (last = lodash_es_last/* default */.A(unsortable)).i <= index) { + unsortable.pop(); + vs.push(last.vs); + index++; + } + return index; +} + +function compareWithBias(bias) { + return function (entryV, entryW) { + if (entryV.barycenter < entryW.barycenter) { + return -1; + } else if (entryV.barycenter > entryW.barycenter) { + return 1; + } + + return !bias ? entryV.i - entryW.i : entryW.i - entryV.i; + }; +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/order/sort-subgraph.js + + + + + + + +function sortSubgraph(g, v, cg, biasRight) { + var movable = g.children(v); + var node = g.node(v); + var bl = node ? node.borderLeft : undefined; + var br = node ? node.borderRight : undefined; + var subgraphs = {}; + + if (bl) { + movable = filter/* default */.A(movable, function (w) { + return w !== bl && w !== br; + }); + } + + var barycenters = barycenter(g, movable); + forEach/* default */.A(barycenters, function (entry) { + if (g.children(entry.v).length) { + var subgraphResult = sortSubgraph(g, entry.v, cg, biasRight); + subgraphs[entry.v] = subgraphResult; + if (has/* default */.A(subgraphResult, 'barycenter')) { + mergeBarycenters(entry, subgraphResult); + } + } + }); + + var entries = resolveConflicts(barycenters, cg); + expandSubgraphs(entries, subgraphs); + + var result = sort(entries, biasRight); + + if (bl) { + result.vs = flatten/* default */.A([bl, result.vs, br]); + if (g.predecessors(bl).length) { + var blPred = g.node(g.predecessors(bl)[0]), + brPred = g.node(g.predecessors(br)[0]); + if (!has/* default */.A(result, 'barycenter')) { + result.barycenter = 0; + result.weight = 0; + } + result.barycenter = + (result.barycenter * result.weight + blPred.order + brPred.order) / (result.weight + 2); + result.weight += 2; + } + } + + return result; +} + +function expandSubgraphs(entries, subgraphs) { + forEach/* default */.A(entries, function (entry) { + entry.vs = flatten/* default */.A( + entry.vs.map(function (v) { + if (subgraphs[v]) { + return subgraphs[v].vs; + } + return v; + }) + ); + }); +} + +function mergeBarycenters(target, other) { + if (!isUndefined/* default */.A(target.barycenter)) { + target.barycenter = + (target.barycenter * target.weight + other.barycenter * other.weight) / + (target.weight + other.weight); + target.weight += other.weight; + } else { + target.barycenter = other.barycenter; + target.weight = other.weight; + } +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/order/index.js + + + + + + + + + + + +/* + * Applies heuristics to minimize edge crossings in the graph and sets the best + * order solution as an order attribute on each node. + * + * Pre-conditions: + * + * 1. Graph must be DAG + * 2. Graph nodes must be objects with a "rank" attribute + * 3. Graph edges must have the "weight" attribute + * + * Post-conditions: + * + * 1. Graph nodes will have an "order" attribute based on the results of the + * algorithm. + */ +function order(g) { + var maxRank = util_maxRank(g), + downLayerGraphs = buildLayerGraphs(g, lodash_es_range(1, maxRank + 1), 'inEdges'), + upLayerGraphs = buildLayerGraphs(g, lodash_es_range(maxRank - 1, -1, -1), 'outEdges'); + + var layering = initOrder(g); + assignOrder(g, layering); + + var bestCC = Number.POSITIVE_INFINITY, + best; + + for (var i = 0, lastBest = 0; lastBest < 4; ++i, ++lastBest) { + sweepLayerGraphs(i % 2 ? downLayerGraphs : upLayerGraphs, i % 4 >= 2); + + layering = buildLayerMatrix(g); + var cc = crossCount(g, layering); + if (cc < bestCC) { + lastBest = 0; + best = lodash_es_cloneDeep(layering); + bestCC = cc; + } + } + + assignOrder(g, best); +} + +function buildLayerGraphs(g, ranks, relationship) { + return map/* default */.A(ranks, function (rank) { + return buildLayerGraph(g, rank, relationship); + }); +} + +function sweepLayerGraphs(layerGraphs, biasRight) { + var cg = new graphlib/* Graph */.T(); + forEach/* default */.A(layerGraphs, function (lg) { + var root = lg.graph().root; + var sorted = sortSubgraph(lg, root, cg, biasRight); + forEach/* default */.A(sorted.vs, function (v, i) { + lg.node(v).order = i; + }); + addSubgraphConstraints(lg, cg, sorted.vs); + }); +} + +function assignOrder(g, layering) { + forEach/* default */.A(layering, function (layer) { + forEach/* default */.A(layer, function (v, i) { + g.node(v).order = i; + }); + }); +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/parent-dummy-chains.js + + + + +function parentDummyChains(g) { + var postorderNums = parent_dummy_chains_postorder(g); + + forEach/* default */.A(g.graph().dummyChains, function (v) { + var node = g.node(v); + var edgeObj = node.edgeObj; + var pathData = findPath(g, postorderNums, edgeObj.v, edgeObj.w); + var path = pathData.path; + var lca = pathData.lca; + var pathIdx = 0; + var pathV = path[pathIdx]; + var ascending = true; + + while (v !== edgeObj.w) { + node = g.node(v); + + if (ascending) { + while ((pathV = path[pathIdx]) !== lca && g.node(pathV).maxRank < node.rank) { + pathIdx++; + } + + if (pathV === lca) { + ascending = false; + } + } + + if (!ascending) { + while ( + pathIdx < path.length - 1 && + g.node((pathV = path[pathIdx + 1])).minRank <= node.rank + ) { + pathIdx++; + } + pathV = path[pathIdx]; + } + + g.setParent(v, pathV); + v = g.successors(v)[0]; + } + }); +} + +// Find a path from v to w through the lowest common ancestor (LCA). Return the +// full path and the LCA. +function findPath(g, postorderNums, v, w) { + var vPath = []; + var wPath = []; + var low = Math.min(postorderNums[v].low, postorderNums[w].low); + var lim = Math.max(postorderNums[v].lim, postorderNums[w].lim); + var parent; + var lca; + + // Traverse up from v to find the LCA + parent = v; + do { + parent = g.parent(parent); + vPath.push(parent); + } while (parent && (postorderNums[parent].low > low || lim > postorderNums[parent].lim)); + lca = parent; + + // Traverse from w to LCA + parent = w; + while ((parent = g.parent(parent)) !== lca) { + wPath.push(parent); + } + + return { path: vPath.concat(wPath.reverse()), lca: lca }; +} + +function parent_dummy_chains_postorder(g) { + var result = {}; + var lim = 0; + + function dfs(v) { + var low = lim; + forEach/* default */.A(g.children(v), dfs); + result[v] = { low: low, lim: lim++ }; + } + forEach/* default */.A(g.children(), dfs); + + return result; +} + +// EXTERNAL MODULE: ./node_modules/lodash-es/_castFunction.js +var _castFunction = __webpack_require__(99922); +;// CONCATENATED MODULE: ./node_modules/lodash-es/forOwn.js + + + +/** + * Iterates over own enumerable string keyed properties of an object and + * invokes `iteratee` for each property. The iteratee is invoked with three + * arguments: (value, key, object). Iteratee functions may exit iteration + * early by explicitly returning `false`. + * + * @static + * @memberOf _ + * @since 0.3.0 + * @category Object + * @param {Object} object The object to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Object} Returns `object`. + * @see _.forOwnRight + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.forOwn(new Foo, function(value, key) { + * console.log(key); + * }); + * // => Logs 'a' then 'b' (iteration order is not guaranteed). + */ +function forOwn(object, iteratee) { + return object && (0,_baseForOwn/* default */.A)(object, (0,_castFunction/* default */.A)(iteratee)); +} + +/* harmony default export */ const lodash_es_forOwn = (forOwn); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseFor.js + 1 modules +var _baseFor = __webpack_require__(4574); +// EXTERNAL MODULE: ./node_modules/lodash-es/keysIn.js + 2 modules +var keysIn = __webpack_require__(55615); +;// CONCATENATED MODULE: ./node_modules/lodash-es/forIn.js + + + + +/** + * Iterates over own and inherited enumerable string keyed properties of an + * object and invokes `iteratee` for each property. The iteratee is invoked + * with three arguments: (value, key, object). Iteratee functions may exit + * iteration early by explicitly returning `false`. + * + * @static + * @memberOf _ + * @since 0.3.0 + * @category Object + * @param {Object} object The object to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Object} Returns `object`. + * @see _.forInRight + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.forIn(new Foo, function(value, key) { + * console.log(key); + * }); + * // => Logs 'a', 'b', then 'c' (iteration order is not guaranteed). + */ +function forIn(object, iteratee) { + return object == null + ? object + : (0,_baseFor/* default */.A)(object, (0,_castFunction/* default */.A)(iteratee), keysIn/* default */.A); +} + +/* harmony default export */ const lodash_es_forIn = (forIn); + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/position/bk.js + + + + +/* + * This module provides coordinate assignment based on Brandes and Köpf, "Fast + * and Simple Horizontal Coordinate Assignment." + */ + + + +/* + * Marks all edges in the graph with a type-1 conflict with the "type1Conflict" + * property. A type-1 conflict is one where a non-inner segment crosses an + * inner segment. An inner segment is an edge with both incident nodes marked + * with the "dummy" property. + * + * This algorithm scans layer by layer, starting with the second, for type-1 + * conflicts between the current layer and the previous layer. For each layer + * it scans the nodes from left to right until it reaches one that is incident + * on an inner segment. It then scans predecessors to determine if they have + * edges that cross that inner segment. At the end a final scan is done for all + * nodes on the current rank to see if they cross the last visited inner + * segment. + * + * This algorithm (safely) assumes that a dummy node will only be incident on a + * single node in the layers being scanned. + */ +function findType1Conflicts(g, layering) { + var conflicts = {}; + + function visitLayer(prevLayer, layer) { + var // last visited node in the previous layer that is incident on an inner + // segment. + k0 = 0, + // Tracks the last node in this layer scanned for crossings with a type-1 + // segment. + scanPos = 0, + prevLayerLength = prevLayer.length, + lastNode = lodash_es_last/* default */.A(layer); + + forEach/* default */.A(layer, function (v, i) { + var w = findOtherInnerSegmentNode(g, v), + k1 = w ? g.node(w).order : prevLayerLength; + + if (w || v === lastNode) { + forEach/* default */.A(layer.slice(scanPos, i + 1), function (scanNode) { + forEach/* default */.A(g.predecessors(scanNode), function (u) { + var uLabel = g.node(u), + uPos = uLabel.order; + if ((uPos < k0 || k1 < uPos) && !(uLabel.dummy && g.node(scanNode).dummy)) { + addConflict(conflicts, u, scanNode); + } + }); + }); + // @ts-expect-error + scanPos = i + 1; + k0 = k1; + } + }); + + return layer; + } + + reduce/* default */.A(layering, visitLayer); + return conflicts; +} + +function findType2Conflicts(g, layering) { + var conflicts = {}; + + function scan(south, southPos, southEnd, prevNorthBorder, nextNorthBorder) { + var v; + forEach/* default */.A(lodash_es_range(southPos, southEnd), function (i) { + v = south[i]; + if (g.node(v).dummy) { + forEach/* default */.A(g.predecessors(v), function (u) { + var uNode = g.node(u); + if (uNode.dummy && (uNode.order < prevNorthBorder || uNode.order > nextNorthBorder)) { + addConflict(conflicts, u, v); + } + }); + } + }); + } + + function visitLayer(north, south) { + var prevNorthPos = -1, + nextNorthPos, + southPos = 0; + + forEach/* default */.A(south, function (v, southLookahead) { + if (g.node(v).dummy === 'border') { + var predecessors = g.predecessors(v); + if (predecessors.length) { + nextNorthPos = g.node(predecessors[0]).order; + scan(south, southPos, southLookahead, prevNorthPos, nextNorthPos); + // @ts-expect-error + southPos = southLookahead; + prevNorthPos = nextNorthPos; + } + } + scan(south, southPos, south.length, nextNorthPos, north.length); + }); + + return south; + } + + reduce/* default */.A(layering, visitLayer); + return conflicts; +} + +function findOtherInnerSegmentNode(g, v) { + if (g.node(v).dummy) { + return find/* default */.A(g.predecessors(v), function (u) { + return g.node(u).dummy; + }); + } +} + +function addConflict(conflicts, v, w) { + if (v > w) { + var tmp = v; + v = w; + w = tmp; + } + + var conflictsV = conflicts[v]; + if (!conflictsV) { + conflicts[v] = conflictsV = {}; + } + conflictsV[w] = true; +} + +function hasConflict(conflicts, v, w) { + if (v > w) { + var tmp = v; + v = w; + w = tmp; + } + return has/* default */.A(conflicts[v], w); +} + +/* + * Try to align nodes into vertical "blocks" where possible. This algorithm + * attempts to align a node with one of its median neighbors. If the edge + * connecting a neighbor is a type-1 conflict then we ignore that possibility. + * If a previous node has already formed a block with a node after the node + * we're trying to form a block with, we also ignore that possibility - our + * blocks would be split in that scenario. + */ +function verticalAlignment(g, layering, conflicts, neighborFn) { + var root = {}, + align = {}, + pos = {}; + + // We cache the position here based on the layering because the graph and + // layering may be out of sync. The layering matrix is manipulated to + // generate different extreme alignments. + forEach/* default */.A(layering, function (layer) { + forEach/* default */.A(layer, function (v, order) { + root[v] = v; + align[v] = v; + pos[v] = order; + }); + }); + + forEach/* default */.A(layering, function (layer) { + var prevIdx = -1; + forEach/* default */.A(layer, function (v) { + var ws = neighborFn(v); + if (ws.length) { + ws = lodash_es_sortBy(ws, function (w) { + return pos[w]; + }); + var mp = (ws.length - 1) / 2; + for (var i = Math.floor(mp), il = Math.ceil(mp); i <= il; ++i) { + var w = ws[i]; + if (align[v] === v && prevIdx < pos[w] && !hasConflict(conflicts, v, w)) { + align[w] = v; + align[v] = root[v] = root[w]; + prevIdx = pos[w]; + } + } + } + }); + }); + + return { root: root, align: align }; +} + +function horizontalCompaction(g, layering, root, align, reverseSep) { + // This portion of the algorithm differs from BK due to a number of problems. + // Instead of their algorithm we construct a new block graph and do two + // sweeps. The first sweep places blocks with the smallest possible + // coordinates. The second sweep removes unused space by moving blocks to the + // greatest coordinates without violating separation. + var xs = {}, + blockG = buildBlockGraph(g, layering, root, reverseSep), + borderType = reverseSep ? 'borderLeft' : 'borderRight'; + + function iterate(setXsFunc, nextNodesFunc) { + var stack = blockG.nodes(); + var elem = stack.pop(); + var visited = {}; + while (elem) { + if (visited[elem]) { + setXsFunc(elem); + } else { + visited[elem] = true; + stack.push(elem); + stack = stack.concat(nextNodesFunc(elem)); + } + + elem = stack.pop(); + } + } + + // First pass, assign smallest coordinates + function pass1(elem) { + xs[elem] = blockG.inEdges(elem).reduce(function (acc, e) { + return Math.max(acc, xs[e.v] + blockG.edge(e)); + }, 0); + } + + // Second pass, assign greatest coordinates + function pass2(elem) { + var min = blockG.outEdges(elem).reduce(function (acc, e) { + return Math.min(acc, xs[e.w] - blockG.edge(e)); + }, Number.POSITIVE_INFINITY); + + var node = g.node(elem); + if (min !== Number.POSITIVE_INFINITY && node.borderType !== borderType) { + xs[elem] = Math.max(xs[elem], min); + } + } + + iterate(pass1, blockG.predecessors.bind(blockG)); + iterate(pass2, blockG.successors.bind(blockG)); + + // Assign x coordinates to all nodes + forEach/* default */.A(align, function (v) { + xs[v] = xs[root[v]]; + }); + + return xs; +} + +function buildBlockGraph(g, layering, root, reverseSep) { + var blockGraph = new graphlib/* Graph */.T(), + graphLabel = g.graph(), + sepFn = sep(graphLabel.nodesep, graphLabel.edgesep, reverseSep); + + forEach/* default */.A(layering, function (layer) { + var u; + forEach/* default */.A(layer, function (v) { + var vRoot = root[v]; + blockGraph.setNode(vRoot); + if (u) { + var uRoot = root[u], + prevMax = blockGraph.edge(uRoot, vRoot); + blockGraph.setEdge(uRoot, vRoot, Math.max(sepFn(g, v, u), prevMax || 0)); + } + u = v; + }); + }); + + return blockGraph; +} + +/* + * Returns the alignment that has the smallest width of the given alignments. + */ +function findSmallestWidthAlignment(g, xss) { + return lodash_es_minBy(values/* default */.A(xss), function (xs) { + var max = Number.NEGATIVE_INFINITY; + var min = Number.POSITIVE_INFINITY; + + lodash_es_forIn(xs, function (x, v) { + var halfWidth = width(g, v) / 2; + + max = Math.max(x + halfWidth, max); + min = Math.min(x - halfWidth, min); + }); + + return max - min; + }); +} + +/* + * Align the coordinates of each of the layout alignments such that + * left-biased alignments have their minimum coordinate at the same point as + * the minimum coordinate of the smallest width alignment and right-biased + * alignments have their maximum coordinate at the same point as the maximum + * coordinate of the smallest width alignment. + */ +function alignCoordinates(xss, alignTo) { + var alignToVals = values/* default */.A(alignTo), + alignToMin = lodash_es_min/* default */.A(alignToVals), + alignToMax = lodash_es_max(alignToVals); + + forEach/* default */.A(['u', 'd'], function (vert) { + forEach/* default */.A(['l', 'r'], function (horiz) { + var alignment = vert + horiz, + xs = xss[alignment], + delta; + if (xs === alignTo) return; + + var xsVals = values/* default */.A(xs); + delta = horiz === 'l' ? alignToMin - lodash_es_min/* default */.A(xsVals) : alignToMax - lodash_es_max(xsVals); + + if (delta) { + xss[alignment] = lodash_es_mapValues(xs, function (x) { + return x + delta; + }); + } + }); + }); +} + +function balance(xss, align) { + return lodash_es_mapValues(xss.ul, function (ignore, v) { + if (align) { + return xss[align.toLowerCase()][v]; + } else { + var xs = lodash_es_sortBy(map/* default */.A(xss, v)); + return (xs[1] + xs[2]) / 2; + } + }); +} + +function positionX(g) { + var layering = buildLayerMatrix(g); + var conflicts = merge/* default */.A(findType1Conflicts(g, layering), findType2Conflicts(g, layering)); + + var xss = {}; + var adjustedLayering; + forEach/* default */.A(['u', 'd'], function (vert) { + adjustedLayering = vert === 'u' ? layering : values/* default */.A(layering).reverse(); + forEach/* default */.A(['l', 'r'], function (horiz) { + if (horiz === 'r') { + adjustedLayering = map/* default */.A(adjustedLayering, function (inner) { + return values/* default */.A(inner).reverse(); + }); + } + + var neighborFn = (vert === 'u' ? g.predecessors : g.successors).bind(g); + var align = verticalAlignment(g, adjustedLayering, conflicts, neighborFn); + var xs = horizontalCompaction(g, adjustedLayering, align.root, align.align, horiz === 'r'); + if (horiz === 'r') { + xs = lodash_es_mapValues(xs, function (x) { + return -x; + }); + } + xss[vert + horiz] = xs; + }); + }); + + var smallestWidth = findSmallestWidthAlignment(g, xss); + alignCoordinates(xss, smallestWidth); + return balance(xss, g.graph().align); +} + +function sep(nodeSep, edgeSep, reverseSep) { + return function (g, v, w) { + var vLabel = g.node(v); + var wLabel = g.node(w); + var sum = 0; + var delta; + + sum += vLabel.width / 2; + if (has/* default */.A(vLabel, 'labelpos')) { + switch (vLabel.labelpos.toLowerCase()) { + case 'l': + delta = -vLabel.width / 2; + break; + case 'r': + delta = vLabel.width / 2; + break; + } + } + if (delta) { + sum += reverseSep ? delta : -delta; + } + delta = 0; + + sum += (vLabel.dummy ? edgeSep : nodeSep) / 2; + sum += (wLabel.dummy ? edgeSep : nodeSep) / 2; + + sum += wLabel.width / 2; + if (has/* default */.A(wLabel, 'labelpos')) { + switch (wLabel.labelpos.toLowerCase()) { + case 'l': + delta = wLabel.width / 2; + break; + case 'r': + delta = -wLabel.width / 2; + break; + } + } + if (delta) { + sum += reverseSep ? delta : -delta; + } + delta = 0; + + return sum; + }; +} + +function width(g, v) { + return g.node(v).width; +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/position/index.js + + + + + + +function position(g) { + g = asNonCompoundGraph(g); + + positionY(g); + lodash_es_forOwn(positionX(g), function (x, v) { + g.node(v).x = x; + }); +} + +function positionY(g) { + var layering = buildLayerMatrix(g); + var rankSep = g.graph().ranksep; + var prevY = 0; + forEach/* default */.A(layering, function (layer) { + var maxHeight = lodash_es_max( + map/* default */.A(layer, function (v) { + return g.node(v).height; + }) + ); + forEach/* default */.A(layer, function (v) { + g.node(v).y = prevY + maxHeight / 2; + }); + prevY += maxHeight + rankSep; + }); +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/layout.js + + + + + + + + + + + + + + + +function layout(g, opts) { + var time = opts && opts.debugTiming ? util_time : notime; + time('layout', function () { + var layoutGraph = time(' buildLayoutGraph', function () { + return buildLayoutGraph(g); + }); + time(' runLayout', function () { + runLayout(layoutGraph, time); + }); + time(' updateInputGraph', function () { + updateInputGraph(g, layoutGraph); + }); + }); +} + +function runLayout(g, time) { + time(' makeSpaceForEdgeLabels', function () { + makeSpaceForEdgeLabels(g); + }); + time(' removeSelfEdges', function () { + removeSelfEdges(g); + }); + time(' acyclic', function () { + run(g); + }); + time(' nestingGraph.run', function () { + nesting_graph_run(g); + }); + time(' rank', function () { + rank(asNonCompoundGraph(g)); + }); + time(' injectEdgeLabelProxies', function () { + injectEdgeLabelProxies(g); + }); + time(' removeEmptyRanks', function () { + removeEmptyRanks(g); + }); + time(' nestingGraph.cleanup', function () { + cleanup(g); + }); + time(' normalizeRanks', function () { + normalizeRanks(g); + }); + time(' assignRankMinMax', function () { + assignRankMinMax(g); + }); + time(' removeEdgeLabelProxies', function () { + removeEdgeLabelProxies(g); + }); + time(' normalize.run', function () { + normalize_run(g); + }); + time(' parentDummyChains', function () { + parentDummyChains(g); + }); + time(' addBorderSegments', function () { + addBorderSegments(g); + }); + time(' order', function () { + order(g); + }); + time(' insertSelfEdges', function () { + insertSelfEdges(g); + }); + time(' adjustCoordinateSystem', function () { + adjust(g); + }); + time(' position', function () { + position(g); + }); + time(' positionSelfEdges', function () { + positionSelfEdges(g); + }); + time(' removeBorderNodes', function () { + removeBorderNodes(g); + }); + time(' normalize.undo', function () { + normalize_undo(g); + }); + time(' fixupEdgeLabelCoords', function () { + fixupEdgeLabelCoords(g); + }); + time(' undoCoordinateSystem', function () { + coordinate_system_undo(g); + }); + time(' translateGraph', function () { + translateGraph(g); + }); + time(' assignNodeIntersects', function () { + assignNodeIntersects(g); + }); + time(' reversePoints', function () { + reversePointsForReversedEdges(g); + }); + time(' acyclic.undo', function () { + undo(g); + }); +} + +/* + * Copies final layout information from the layout graph back to the input + * graph. This process only copies whitelisted attributes from the layout graph + * to the input graph, so it serves as a good place to determine what + * attributes can influence layout. + */ +function updateInputGraph(inputGraph, layoutGraph) { + forEach/* default */.A(inputGraph.nodes(), function (v) { + var inputLabel = inputGraph.node(v); + var layoutLabel = layoutGraph.node(v); + + if (inputLabel) { + inputLabel.x = layoutLabel.x; + inputLabel.y = layoutLabel.y; + + if (layoutGraph.children(v).length) { + inputLabel.width = layoutLabel.width; + inputLabel.height = layoutLabel.height; + } + } + }); + + forEach/* default */.A(inputGraph.edges(), function (e) { + var inputLabel = inputGraph.edge(e); + var layoutLabel = layoutGraph.edge(e); + + inputLabel.points = layoutLabel.points; + if (has/* default */.A(layoutLabel, 'x')) { + inputLabel.x = layoutLabel.x; + inputLabel.y = layoutLabel.y; + } + }); + + inputGraph.graph().width = layoutGraph.graph().width; + inputGraph.graph().height = layoutGraph.graph().height; +} + +var graphNumAttrs = ['nodesep', 'edgesep', 'ranksep', 'marginx', 'marginy']; +var graphDefaults = { ranksep: 50, edgesep: 20, nodesep: 50, rankdir: 'tb' }; +var graphAttrs = ['acyclicer', 'ranker', 'rankdir', 'align']; +var nodeNumAttrs = ['width', 'height']; +var nodeDefaults = { width: 0, height: 0 }; +var edgeNumAttrs = ['minlen', 'weight', 'width', 'height', 'labeloffset']; +var edgeDefaults = { + minlen: 1, + weight: 1, + width: 0, + height: 0, + labeloffset: 10, + labelpos: 'r', +}; +var edgeAttrs = ['labelpos']; + +/* + * Constructs a new graph from the input graph, which can be used for layout. + * This process copies only whitelisted attributes from the input graph to the + * layout graph. Thus this function serves as a good place to determine what + * attributes can influence layout. + */ +function buildLayoutGraph(inputGraph) { + var g = new graphlib/* Graph */.T({ multigraph: true, compound: true }); + var graph = canonicalize(inputGraph.graph()); + + g.setGraph( + merge/* default */.A({}, graphDefaults, selectNumberAttrs(graph, graphNumAttrs), lodash_es_pick(graph, graphAttrs)) + ); + + forEach/* default */.A(inputGraph.nodes(), function (v) { + var node = canonicalize(inputGraph.node(v)); + g.setNode(v, defaults/* default */.A(selectNumberAttrs(node, nodeNumAttrs), nodeDefaults)); + g.setParent(v, inputGraph.parent(v)); + }); + + forEach/* default */.A(inputGraph.edges(), function (e) { + var edge = canonicalize(inputGraph.edge(e)); + g.setEdge( + e, + merge/* default */.A({}, edgeDefaults, selectNumberAttrs(edge, edgeNumAttrs), lodash_es_pick(edge, edgeAttrs)) + ); + }); + + return g; +} + +/* + * This idea comes from the Gansner paper: to account for edge labels in our + * layout we split each rank in half by doubling minlen and halving ranksep. + * Then we can place labels at these mid-points between nodes. + * + * We also add some minimal padding to the width to push the label for the edge + * away from the edge itself a bit. + */ +function makeSpaceForEdgeLabels(g) { + var graph = g.graph(); + graph.ranksep /= 2; + forEach/* default */.A(g.edges(), function (e) { + var edge = g.edge(e); + edge.minlen *= 2; + if (edge.labelpos.toLowerCase() !== 'c') { + if (graph.rankdir === 'TB' || graph.rankdir === 'BT') { + edge.width += edge.labeloffset; + } else { + edge.height += edge.labeloffset; + } + } + }); +} + +/* + * Creates temporary dummy nodes that capture the rank in which each edge's + * label is going to, if it has one of non-zero width and height. We do this + * so that we can safely remove empty ranks while preserving balance for the + * label's position. + */ +function injectEdgeLabelProxies(g) { + forEach/* default */.A(g.edges(), function (e) { + var edge = g.edge(e); + if (edge.width && edge.height) { + var v = g.node(e.v); + var w = g.node(e.w); + var label = { rank: (w.rank - v.rank) / 2 + v.rank, e: e }; + addDummyNode(g, 'edge-proxy', label, '_ep'); + } + }); +} + +function assignRankMinMax(g) { + var maxRank = 0; + forEach/* default */.A(g.nodes(), function (v) { + var node = g.node(v); + if (node.borderTop) { + node.minRank = g.node(node.borderTop).rank; + node.maxRank = g.node(node.borderBottom).rank; + // @ts-expect-error + maxRank = lodash_es_max(maxRank, node.maxRank); + } + }); + g.graph().maxRank = maxRank; +} + +function removeEdgeLabelProxies(g) { + forEach/* default */.A(g.nodes(), function (v) { + var node = g.node(v); + if (node.dummy === 'edge-proxy') { + g.edge(node.e).labelRank = node.rank; + g.removeNode(v); + } + }); +} + +function translateGraph(g) { + var minX = Number.POSITIVE_INFINITY; + var maxX = 0; + var minY = Number.POSITIVE_INFINITY; + var maxY = 0; + var graphLabel = g.graph(); + var marginX = graphLabel.marginx || 0; + var marginY = graphLabel.marginy || 0; + + function getExtremes(attrs) { + var x = attrs.x; + var y = attrs.y; + var w = attrs.width; + var h = attrs.height; + minX = Math.min(minX, x - w / 2); + maxX = Math.max(maxX, x + w / 2); + minY = Math.min(minY, y - h / 2); + maxY = Math.max(maxY, y + h / 2); + } + + forEach/* default */.A(g.nodes(), function (v) { + getExtremes(g.node(v)); + }); + forEach/* default */.A(g.edges(), function (e) { + var edge = g.edge(e); + if (has/* default */.A(edge, 'x')) { + getExtremes(edge); + } + }); + + minX -= marginX; + minY -= marginY; + + forEach/* default */.A(g.nodes(), function (v) { + var node = g.node(v); + node.x -= minX; + node.y -= minY; + }); + + forEach/* default */.A(g.edges(), function (e) { + var edge = g.edge(e); + forEach/* default */.A(edge.points, function (p) { + p.x -= minX; + p.y -= minY; + }); + if (has/* default */.A(edge, 'x')) { + edge.x -= minX; + } + if (has/* default */.A(edge, 'y')) { + edge.y -= minY; + } + }); + + graphLabel.width = maxX - minX + marginX; + graphLabel.height = maxY - minY + marginY; +} + +function assignNodeIntersects(g) { + forEach/* default */.A(g.edges(), function (e) { + var edge = g.edge(e); + var nodeV = g.node(e.v); + var nodeW = g.node(e.w); + var p1, p2; + if (!edge.points) { + edge.points = []; + p1 = nodeW; + p2 = nodeV; + } else { + p1 = edge.points[0]; + p2 = edge.points[edge.points.length - 1]; + } + edge.points.unshift(intersectRect(nodeV, p1)); + edge.points.push(intersectRect(nodeW, p2)); + }); +} + +function fixupEdgeLabelCoords(g) { + forEach/* default */.A(g.edges(), function (e) { + var edge = g.edge(e); + if (has/* default */.A(edge, 'x')) { + if (edge.labelpos === 'l' || edge.labelpos === 'r') { + edge.width -= edge.labeloffset; + } + switch (edge.labelpos) { + case 'l': + edge.x -= edge.width / 2 + edge.labeloffset; + break; + case 'r': + edge.x += edge.width / 2 + edge.labeloffset; + break; + } + } + }); +} + +function reversePointsForReversedEdges(g) { + forEach/* default */.A(g.edges(), function (e) { + var edge = g.edge(e); + if (edge.reversed) { + edge.points.reverse(); + } + }); +} + +function removeBorderNodes(g) { + forEach/* default */.A(g.nodes(), function (v) { + if (g.children(v).length) { + var node = g.node(v); + var t = g.node(node.borderTop); + var b = g.node(node.borderBottom); + var l = g.node(lodash_es_last/* default */.A(node.borderLeft)); + var r = g.node(lodash_es_last/* default */.A(node.borderRight)); + + node.width = Math.abs(r.x - l.x); + node.height = Math.abs(b.y - t.y); + node.x = l.x + node.width / 2; + node.y = t.y + node.height / 2; + } + }); + + forEach/* default */.A(g.nodes(), function (v) { + if (g.node(v).dummy === 'border') { + g.removeNode(v); + } + }); +} + +function removeSelfEdges(g) { + forEach/* default */.A(g.edges(), function (e) { + if (e.v === e.w) { + var node = g.node(e.v); + if (!node.selfEdges) { + node.selfEdges = []; + } + node.selfEdges.push({ e: e, label: g.edge(e) }); + g.removeEdge(e); + } + }); +} + +function insertSelfEdges(g) { + var layers = buildLayerMatrix(g); + forEach/* default */.A(layers, function (layer) { + var orderShift = 0; + forEach/* default */.A(layer, function (v, i) { + var node = g.node(v); + node.order = i + orderShift; + forEach/* default */.A(node.selfEdges, function (selfEdge) { + addDummyNode( + g, + 'selfedge', + { + width: selfEdge.label.width, + height: selfEdge.label.height, + rank: node.rank, + order: i + ++orderShift, + e: selfEdge.e, + label: selfEdge.label, + }, + '_se' + ); + }); + delete node.selfEdges; + }); + }); +} + +function positionSelfEdges(g) { + forEach/* default */.A(g.nodes(), function (v) { + var node = g.node(v); + if (node.dummy === 'selfedge') { + var selfNode = g.node(node.e.v); + var x = selfNode.x + selfNode.width / 2; + var y = selfNode.y; + var dx = node.x - x; + var dy = selfNode.height / 2; + g.setEdge(node.e, node.label); + g.removeNode(v); + node.label.points = [ + { x: x + (2 * dx) / 3, y: y - dy }, + { x: x + (5 * dx) / 6, y: y - dy }, + { x: x + dx, y: y }, + { x: x + (5 * dx) / 6, y: y + dy }, + { x: x + (2 * dx) / 3, y: y + dy }, + ]; + node.label.x = node.x; + node.label.y = node.y; + } + }); +} + +function selectNumberAttrs(obj, attrs) { + return lodash_es_mapValues(lodash_es_pick(obj, attrs), Number); +} + +function canonicalize(attrs) { + var newAttrs = {}; + forEach/* default */.A(attrs, function (v, k) { + newAttrs[k.toLowerCase()] = v; + }); + return newAttrs; +} + +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/dagre/index.js + + + + + + + + +/***/ }), + +/***/ 37981: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + T: () => (/* binding */ Graph) +}); + +// EXTERNAL MODULE: ./node_modules/lodash-es/has.js + 1 modules +var has = __webpack_require__(48585); +// EXTERNAL MODULE: ./node_modules/lodash-es/constant.js +var constant = __webpack_require__(39142); +// EXTERNAL MODULE: ./node_modules/lodash-es/isFunction.js +var isFunction = __webpack_require__(89610); +// EXTERNAL MODULE: ./node_modules/lodash-es/keys.js +var keys = __webpack_require__(27422); +// EXTERNAL MODULE: ./node_modules/lodash-es/filter.js +var filter = __webpack_require__(94092); +// EXTERNAL MODULE: ./node_modules/lodash-es/isEmpty.js +var isEmpty = __webpack_require__(66401); +// EXTERNAL MODULE: ./node_modules/lodash-es/forEach.js +var forEach = __webpack_require__(8058); +// EXTERNAL MODULE: ./node_modules/lodash-es/isUndefined.js +var isUndefined = __webpack_require__(69592); +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseFlatten.js + 1 modules +var _baseFlatten = __webpack_require__(13588); +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseRest.js +var _baseRest = __webpack_require__(24326); +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseUniq.js + 1 modules +var _baseUniq = __webpack_require__(99902); +// EXTERNAL MODULE: ./node_modules/lodash-es/isArrayLikeObject.js +var isArrayLikeObject = __webpack_require__(53533); +;// CONCATENATED MODULE: ./node_modules/lodash-es/union.js + + + + + +/** + * Creates an array of unique values, in order, from all given arrays using + * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * for equality comparisons. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {...Array} [arrays] The arrays to inspect. + * @returns {Array} Returns the new array of combined values. + * @example + * + * _.union([2], [1, 2]); + * // => [2, 1] + */ +var union = (0,_baseRest/* default */.A)(function(arrays) { + return (0,_baseUniq/* default */.A)((0,_baseFlatten/* default */.A)(arrays, 1, isArrayLikeObject/* default */.A, true)); +}); + +/* harmony default export */ const lodash_es_union = (union); + +// EXTERNAL MODULE: ./node_modules/lodash-es/values.js + 1 modules +var values = __webpack_require__(38207); +// EXTERNAL MODULE: ./node_modules/lodash-es/reduce.js + 2 modules +var reduce = __webpack_require__(89463); +;// CONCATENATED MODULE: ./node_modules/dagre-d3-es/src/graphlib/graph.js + + +var DEFAULT_EDGE_NAME = '\x00'; +var GRAPH_NODE = '\x00'; +var EDGE_KEY_DELIM = '\x01'; + +// Implementation notes: +// +// * Node id query functions should return string ids for the nodes +// * Edge id query functions should return an "edgeObj", edge object, that is +// composed of enough information to uniquely identify an edge: {v, w, name}. +// * Internally we use an "edgeId", a stringified form of the edgeObj, to +// reference edges. This is because we need a performant way to look these +// edges up and, object properties, which have string keys, are the closest +// we're going to get to a performant hashtable in JavaScript. + +// Implementation notes: +// +// * Node id query functions should return string ids for the nodes +// * Edge id query functions should return an "edgeObj", edge object, that is +// composed of enough information to uniquely identify an edge: {v, w, name}. +// * Internally we use an "edgeId", a stringified form of the edgeObj, to +// reference edges. This is because we need a performant way to look these +// edges up and, object properties, which have string keys, are the closest +// we're going to get to a performant hashtable in JavaScript. +class Graph { + constructor(opts = {}) { + this._isDirected = has/* default */.A(opts, 'directed') ? opts.directed : true; + this._isMultigraph = has/* default */.A(opts, 'multigraph') ? opts.multigraph : false; + this._isCompound = has/* default */.A(opts, 'compound') ? opts.compound : false; + + // Label for the graph itself + this._label = undefined; + + // Defaults to be set when creating a new node + this._defaultNodeLabelFn = constant/* default */.A(undefined); + + // Defaults to be set when creating a new edge + this._defaultEdgeLabelFn = constant/* default */.A(undefined); + + // v -> label + this._nodes = {}; + + if (this._isCompound) { + // v -> parent + this._parent = {}; + + // v -> children + this._children = {}; + this._children[GRAPH_NODE] = {}; + } + + // v -> edgeObj + this._in = {}; + + // u -> v -> Number + this._preds = {}; + + // v -> edgeObj + this._out = {}; + + // v -> w -> Number + this._sucs = {}; + + // e -> edgeObj + this._edgeObjs = {}; + + // e -> label + this._edgeLabels = {}; + } + /* === Graph functions ========= */ + isDirected() { + return this._isDirected; + } + isMultigraph() { + return this._isMultigraph; + } + isCompound() { + return this._isCompound; + } + setGraph(label) { + this._label = label; + return this; + } + graph() { + return this._label; + } + /* === Node functions ========== */ + setDefaultNodeLabel(newDefault) { + if (!isFunction/* default */.A(newDefault)) { + newDefault = constant/* default */.A(newDefault); + } + this._defaultNodeLabelFn = newDefault; + return this; + } + nodeCount() { + return this._nodeCount; + } + nodes() { + return keys/* default */.A(this._nodes); + } + sources() { + var self = this; + return filter/* default */.A(this.nodes(), function (v) { + return isEmpty/* default */.A(self._in[v]); + }); + } + sinks() { + var self = this; + return filter/* default */.A(this.nodes(), function (v) { + return isEmpty/* default */.A(self._out[v]); + }); + } + setNodes(vs, value) { + var args = arguments; + var self = this; + forEach/* default */.A(vs, function (v) { + if (args.length > 1) { + self.setNode(v, value); + } else { + self.setNode(v); + } + }); + return this; + } + setNode(v, value) { + if (has/* default */.A(this._nodes, v)) { + if (arguments.length > 1) { + this._nodes[v] = value; + } + return this; + } + + // @ts-expect-error + this._nodes[v] = arguments.length > 1 ? value : this._defaultNodeLabelFn(v); + if (this._isCompound) { + this._parent[v] = GRAPH_NODE; + this._children[v] = {}; + this._children[GRAPH_NODE][v] = true; + } + this._in[v] = {}; + this._preds[v] = {}; + this._out[v] = {}; + this._sucs[v] = {}; + ++this._nodeCount; + return this; + } + node(v) { + return this._nodes[v]; + } + hasNode(v) { + return has/* default */.A(this._nodes, v); + } + removeNode(v) { + var self = this; + if (has/* default */.A(this._nodes, v)) { + var removeEdge = function (e) { + self.removeEdge(self._edgeObjs[e]); + }; + delete this._nodes[v]; + if (this._isCompound) { + this._removeFromParentsChildList(v); + delete this._parent[v]; + forEach/* default */.A(this.children(v), function (child) { + self.setParent(child); + }); + delete this._children[v]; + } + forEach/* default */.A(keys/* default */.A(this._in[v]), removeEdge); + delete this._in[v]; + delete this._preds[v]; + forEach/* default */.A(keys/* default */.A(this._out[v]), removeEdge); + delete this._out[v]; + delete this._sucs[v]; + --this._nodeCount; + } + return this; + } + setParent(v, parent) { + if (!this._isCompound) { + throw new Error('Cannot set parent in a non-compound graph'); + } + + if (isUndefined/* default */.A(parent)) { + parent = GRAPH_NODE; + } else { + // Coerce parent to string + parent += ''; + for (var ancestor = parent; !isUndefined/* default */.A(ancestor); ancestor = this.parent(ancestor)) { + if (ancestor === v) { + throw new Error('Setting ' + parent + ' as parent of ' + v + ' would create a cycle'); + } + } + + this.setNode(parent); + } + + this.setNode(v); + this._removeFromParentsChildList(v); + this._parent[v] = parent; + this._children[parent][v] = true; + return this; + } + _removeFromParentsChildList(v) { + delete this._children[this._parent[v]][v]; + } + parent(v) { + if (this._isCompound) { + var parent = this._parent[v]; + if (parent !== GRAPH_NODE) { + return parent; + } + } + } + children(v) { + if (isUndefined/* default */.A(v)) { + v = GRAPH_NODE; + } + + if (this._isCompound) { + var children = this._children[v]; + if (children) { + return keys/* default */.A(children); + } + } else if (v === GRAPH_NODE) { + return this.nodes(); + } else if (this.hasNode(v)) { + return []; + } + } + predecessors(v) { + var predsV = this._preds[v]; + if (predsV) { + return keys/* default */.A(predsV); + } + } + successors(v) { + var sucsV = this._sucs[v]; + if (sucsV) { + return keys/* default */.A(sucsV); + } + } + neighbors(v) { + var preds = this.predecessors(v); + if (preds) { + return lodash_es_union(preds, this.successors(v)); + } + } + isLeaf(v) { + var neighbors; + if (this.isDirected()) { + neighbors = this.successors(v); + } else { + neighbors = this.neighbors(v); + } + return neighbors.length === 0; + } + filterNodes(filter) { + // @ts-expect-error + var copy = new this.constructor({ + directed: this._isDirected, + multigraph: this._isMultigraph, + compound: this._isCompound, + }); + + copy.setGraph(this.graph()); + + var self = this; + forEach/* default */.A(this._nodes, function (value, v) { + if (filter(v)) { + copy.setNode(v, value); + } + }); + + forEach/* default */.A(this._edgeObjs, function (e) { + // @ts-expect-error + if (copy.hasNode(e.v) && copy.hasNode(e.w)) { + copy.setEdge(e, self.edge(e)); + } + }); + + var parents = {}; + function findParent(v) { + var parent = self.parent(v); + if (parent === undefined || copy.hasNode(parent)) { + parents[v] = parent; + return parent; + } else if (parent in parents) { + return parents[parent]; + } else { + return findParent(parent); + } + } + + if (this._isCompound) { + forEach/* default */.A(copy.nodes(), function (v) { + copy.setParent(v, findParent(v)); + }); + } + + return copy; + } + /* === Edge functions ========== */ + setDefaultEdgeLabel(newDefault) { + if (!isFunction/* default */.A(newDefault)) { + newDefault = constant/* default */.A(newDefault); + } + this._defaultEdgeLabelFn = newDefault; + return this; + } + edgeCount() { + return this._edgeCount; + } + edges() { + return values/* default */.A(this._edgeObjs); + } + setPath(vs, value) { + var self = this; + var args = arguments; + reduce/* default */.A(vs, function (v, w) { + if (args.length > 1) { + self.setEdge(v, w, value); + } else { + self.setEdge(v, w); + } + return w; + }); + return this; + } + /* + * setEdge(v, w, [value, [name]]) + * setEdge({ v, w, [name] }, [value]) + */ + setEdge() { + var v, w, name, value; + var valueSpecified = false; + var arg0 = arguments[0]; + + if (typeof arg0 === 'object' && arg0 !== null && 'v' in arg0) { + v = arg0.v; + w = arg0.w; + name = arg0.name; + if (arguments.length === 2) { + value = arguments[1]; + valueSpecified = true; + } + } else { + v = arg0; + w = arguments[1]; + name = arguments[3]; + if (arguments.length > 2) { + value = arguments[2]; + valueSpecified = true; + } + } + + v = '' + v; + w = '' + w; + if (!isUndefined/* default */.A(name)) { + name = '' + name; + } + + var e = edgeArgsToId(this._isDirected, v, w, name); + if (has/* default */.A(this._edgeLabels, e)) { + if (valueSpecified) { + this._edgeLabels[e] = value; + } + return this; + } + + if (!isUndefined/* default */.A(name) && !this._isMultigraph) { + throw new Error('Cannot set a named edge when isMultigraph = false'); + } + + // It didn't exist, so we need to create it. + // First ensure the nodes exist. + this.setNode(v); + this.setNode(w); + + // @ts-expect-error + this._edgeLabels[e] = valueSpecified ? value : this._defaultEdgeLabelFn(v, w, name); + + var edgeObj = edgeArgsToObj(this._isDirected, v, w, name); + // Ensure we add undirected edges in a consistent way. + v = edgeObj.v; + w = edgeObj.w; + + Object.freeze(edgeObj); + this._edgeObjs[e] = edgeObj; + incrementOrInitEntry(this._preds[w], v); + incrementOrInitEntry(this._sucs[v], w); + this._in[w][e] = edgeObj; + this._out[v][e] = edgeObj; + this._edgeCount++; + return this; + } + edge(v, w, name) { + var e = + arguments.length === 1 + ? edgeObjToId(this._isDirected, arguments[0]) + : edgeArgsToId(this._isDirected, v, w, name); + return this._edgeLabels[e]; + } + hasEdge(v, w, name) { + var e = + arguments.length === 1 + ? edgeObjToId(this._isDirected, arguments[0]) + : edgeArgsToId(this._isDirected, v, w, name); + return has/* default */.A(this._edgeLabels, e); + } + removeEdge(v, w, name) { + var e = + arguments.length === 1 + ? edgeObjToId(this._isDirected, arguments[0]) + : edgeArgsToId(this._isDirected, v, w, name); + var edge = this._edgeObjs[e]; + if (edge) { + v = edge.v; + w = edge.w; + delete this._edgeLabels[e]; + delete this._edgeObjs[e]; + decrementOrRemoveEntry(this._preds[w], v); + decrementOrRemoveEntry(this._sucs[v], w); + delete this._in[w][e]; + delete this._out[v][e]; + this._edgeCount--; + } + return this; + } + inEdges(v, u) { + var inV = this._in[v]; + if (inV) { + var edges = values/* default */.A(inV); + if (!u) { + return edges; + } + return filter/* default */.A(edges, function (edge) { + return edge.v === u; + }); + } + } + outEdges(v, w) { + var outV = this._out[v]; + if (outV) { + var edges = values/* default */.A(outV); + if (!w) { + return edges; + } + return filter/* default */.A(edges, function (edge) { + return edge.w === w; + }); + } + } + nodeEdges(v, w) { + var inEdges = this.inEdges(v, w); + if (inEdges) { + return inEdges.concat(this.outEdges(v, w)); + } + } +} + +/* Number of nodes in the graph. Should only be changed by the implementation. */ +Graph.prototype._nodeCount = 0; + +/* Number of edges in the graph. Should only be changed by the implementation. */ +Graph.prototype._edgeCount = 0; + +function incrementOrInitEntry(map, k) { + if (map[k]) { + map[k]++; + } else { + map[k] = 1; + } +} + +function decrementOrRemoveEntry(map, k) { + if (!--map[k]) { + delete map[k]; + } +} + +function edgeArgsToId(isDirected, v_, w_, name) { + var v = '' + v_; + var w = '' + w_; + if (!isDirected && v > w) { + var tmp = v; + v = w; + w = tmp; + } + return v + EDGE_KEY_DELIM + w + EDGE_KEY_DELIM + (isUndefined/* default */.A(name) ? DEFAULT_EDGE_NAME : name); +} + +function edgeArgsToObj(isDirected, v_, w_, name) { + var v = '' + v_; + var w = '' + w_; + if (!isDirected && v > w) { + var tmp = v; + v = w; + w = tmp; + } + var edgeObj = { v: v, w: w }; + if (name) { + edgeObj.name = name; + } + return edgeObj; +} + +function edgeObjToId(isDirected, edgeObj) { + return edgeArgsToId(isDirected, edgeObj.v, edgeObj.w, edgeObj.name); +} + + +/***/ }), + +/***/ 697: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ T: () => (/* reexport safe */ _graph_js__WEBPACK_IMPORTED_MODULE_0__.T) +/* harmony export */ }); +/* unused harmony export version */ +/* harmony import */ var _graph_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(37981); +// Includes only the "core" of graphlib + + + +const version = '2.1.9-pre'; + + + + +/***/ }), + +/***/ 14075: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ M: () => (/* binding */ write) +/* harmony export */ }); +/* unused harmony export read */ +/* harmony import */ var lodash_es__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(69592); +/* harmony import */ var lodash_es__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(50053); +/* harmony import */ var lodash_es__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(74722); +/* harmony import */ var _graph_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(37981); + + + + + +function write(g) { + var json = { + options: { + directed: g.isDirected(), + multigraph: g.isMultigraph(), + compound: g.isCompound(), + }, + nodes: writeNodes(g), + edges: writeEdges(g), + }; + if (!lodash_es__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A(g.graph())) { + json.value = lodash_es__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A(g.graph()); + } + return json; +} + +function writeNodes(g) { + return lodash_es__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A(g.nodes(), function (v) { + var nodeValue = g.node(v); + var parent = g.parent(v); + var node = { v: v }; + if (!lodash_es__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A(nodeValue)) { + node.value = nodeValue; + } + if (!lodash_es__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A(parent)) { + node.parent = parent; + } + return node; + }); +} + +function writeEdges(g) { + return lodash_es__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A(g.edges(), function (e) { + var edgeValue = g.edge(e); + var edge = { v: e.v, w: e.w }; + if (!lodash_es__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A(e.name)) { + edge.name = e.name; + } + if (!lodash_es__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A(edgeValue)) { + edge.value = edgeValue; + } + return edge; + }); +} + +function read(json) { + var g = new Graph(json.options).setGraph(json.value); + _.each(json.nodes, function (entry) { + g.setNode(entry.v, entry.value); + if (entry.parent) { + g.setParent(entry.v, entry.parent); + } + }); + _.each(json.edges, function (entry) { + g.setEdge({ v: entry.v, w: entry.w, name: entry.name }, entry.value); + }); + return g; +} + + +/***/ }), + +/***/ 62062: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ _SetCache) +}); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_MapCache.js + 14 modules +var _MapCache = __webpack_require__(29471); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_setCacheAdd.js +/** Used to stand-in for `undefined` hash values. */ +var HASH_UNDEFINED = '__lodash_hash_undefined__'; + +/** + * Adds `value` to the array cache. + * + * @private + * @name add + * @memberOf SetCache + * @alias push + * @param {*} value The value to cache. + * @returns {Object} Returns the cache instance. + */ +function setCacheAdd(value) { + this.__data__.set(value, HASH_UNDEFINED); + return this; +} + +/* harmony default export */ const _setCacheAdd = (setCacheAdd); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_setCacheHas.js +/** + * Checks if `value` is in the array cache. + * + * @private + * @name has + * @memberOf SetCache + * @param {*} value The value to search for. + * @returns {number} Returns `true` if `value` is found, else `false`. + */ +function setCacheHas(value) { + return this.__data__.has(value); +} + +/* harmony default export */ const _setCacheHas = (setCacheHas); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_SetCache.js + + + + +/** + * + * Creates an array cache object to store unique values. + * + * @private + * @constructor + * @param {Array} [values] The values to cache. + */ +function SetCache(values) { + var index = -1, + length = values == null ? 0 : values.length; + + this.__data__ = new _MapCache/* default */.A; + while (++index < length) { + this.add(values[index]); + } +} + +// Add methods to `SetCache`. +SetCache.prototype.add = SetCache.prototype.push = _setCacheAdd; +SetCache.prototype.has = _setCacheHas; + +/* harmony default export */ const _SetCache = (SetCache); + + +/***/ }), + +/***/ 72641: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * A specialized version of `_.forEach` for arrays without support for + * iteratee shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array} Returns `array`. + */ +function arrayEach(array, iteratee) { + var index = -1, + length = array == null ? 0 : array.length; + + while (++index < length) { + if (iteratee(array[index], index, array) === false) { + break; + } + } + return array; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (arrayEach); + + +/***/ }), + +/***/ 2634: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * A specialized version of `_.filter` for arrays without support for + * iteratee shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {Array} Returns the new filtered array. + */ +function arrayFilter(array, predicate) { + var index = -1, + length = array == null ? 0 : array.length, + resIndex = 0, + result = []; + + while (++index < length) { + var value = array[index]; + if (predicate(value, index, array)) { + result[resIndex++] = value; + } + } + return result; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (arrayFilter); + + +/***/ }), + +/***/ 83149: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _baseIndexOf_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(60818); + + +/** + * A specialized version of `_.includes` for arrays without support for + * specifying an index to search from. + * + * @private + * @param {Array} [array] The array to inspect. + * @param {*} target The value to search for. + * @returns {boolean} Returns `true` if `target` is found, else `false`. + */ +function arrayIncludes(array, value) { + var length = array == null ? 0 : array.length; + return !!length && (0,_baseIndexOf_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(array, value, 0) > -1; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (arrayIncludes); + + +/***/ }), + +/***/ 87809: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * This function is like `arrayIncludes` except that it accepts a comparator. + * + * @private + * @param {Array} [array] The array to inspect. + * @param {*} target The value to search for. + * @param {Function} comparator The comparator invoked per element. + * @returns {boolean} Returns `true` if `target` is found, else `false`. + */ +function arrayIncludesWith(array, value, comparator) { + var index = -1, + length = array == null ? 0 : array.length; + + while (++index < length) { + if (comparator(value, array[index])) { + return true; + } + } + return false; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (arrayIncludesWith); + + +/***/ }), + +/***/ 45572: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * A specialized version of `_.map` for arrays without support for iteratee + * shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array} Returns the new mapped array. + */ +function arrayMap(array, iteratee) { + var index = -1, + length = array == null ? 0 : array.length, + result = Array(length); + + while (++index < length) { + result[index] = iteratee(array[index], index, array); + } + return result; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (arrayMap); + + +/***/ }), + +/***/ 76912: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * Appends the elements of `values` to `array`. + * + * @private + * @param {Array} array The array to modify. + * @param {Array} values The values to append. + * @returns {Array} Returns `array`. + */ +function arrayPush(array, values) { + var index = -1, + length = values.length, + offset = array.length; + + while (++index < length) { + array[offset + index] = values[index]; + } + return array; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (arrayPush); + + +/***/ }), + +/***/ 63736: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * A specialized version of `_.some` for arrays without support for iteratee + * shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {boolean} Returns `true` if any element passes the predicate check, + * else `false`. + */ +function arraySome(array, predicate) { + var index = -1, + length = array == null ? 0 : array.length; + + while (++index < length) { + if (predicate(array[index], index, array)) { + return true; + } + } + return false; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (arraySome); + + +/***/ }), + +/***/ 68675: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ _baseClone) +}); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_Stack.js + 5 modules +var _Stack = __webpack_require__(11754); +// EXTERNAL MODULE: ./node_modules/lodash-es/_arrayEach.js +var _arrayEach = __webpack_require__(72641); +// EXTERNAL MODULE: ./node_modules/lodash-es/_assignValue.js +var _assignValue = __webpack_require__(52851); +// EXTERNAL MODULE: ./node_modules/lodash-es/_copyObject.js +var _copyObject = __webpack_require__(22031); +// EXTERNAL MODULE: ./node_modules/lodash-es/keys.js +var keys = __webpack_require__(27422); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseAssign.js + + + +/** + * The base implementation of `_.assign` without support for multiple sources + * or `customizer` functions. + * + * @private + * @param {Object} object The destination object. + * @param {Object} source The source object. + * @returns {Object} Returns `object`. + */ +function baseAssign(object, source) { + return object && (0,_copyObject/* default */.A)(source, (0,keys/* default */.A)(source), object); +} + +/* harmony default export */ const _baseAssign = (baseAssign); + +// EXTERNAL MODULE: ./node_modules/lodash-es/keysIn.js + 2 modules +var keysIn = __webpack_require__(55615); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseAssignIn.js + + + +/** + * The base implementation of `_.assignIn` without support for multiple sources + * or `customizer` functions. + * + * @private + * @param {Object} object The destination object. + * @param {Object} source The source object. + * @returns {Object} Returns `object`. + */ +function baseAssignIn(object, source) { + return object && (0,_copyObject/* default */.A)(source, (0,keysIn/* default */.A)(source), object); +} + +/* harmony default export */ const _baseAssignIn = (baseAssignIn); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_cloneBuffer.js +var _cloneBuffer = __webpack_require__(80154); +// EXTERNAL MODULE: ./node_modules/lodash-es/_copyArray.js +var _copyArray = __webpack_require__(39759); +// EXTERNAL MODULE: ./node_modules/lodash-es/_getSymbols.js +var _getSymbols = __webpack_require__(14792); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_copySymbols.js + + + +/** + * Copies own symbols of `source` to `object`. + * + * @private + * @param {Object} source The object to copy symbols from. + * @param {Object} [object={}] The object to copy symbols to. + * @returns {Object} Returns `object`. + */ +function copySymbols(source, object) { + return (0,_copyObject/* default */.A)(source, (0,_getSymbols/* default */.A)(source), object); +} + +/* harmony default export */ const _copySymbols = (copySymbols); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_getSymbolsIn.js +var _getSymbolsIn = __webpack_require__(83511); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_copySymbolsIn.js + + + +/** + * Copies own and inherited symbols of `source` to `object`. + * + * @private + * @param {Object} source The object to copy symbols from. + * @param {Object} [object={}] The object to copy symbols to. + * @returns {Object} Returns `object`. + */ +function copySymbolsIn(source, object) { + return (0,_copyObject/* default */.A)(source, (0,_getSymbolsIn/* default */.A)(source), object); +} + +/* harmony default export */ const _copySymbolsIn = (copySymbolsIn); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_getAllKeys.js +var _getAllKeys = __webpack_require__(19042); +// EXTERNAL MODULE: ./node_modules/lodash-es/_getAllKeysIn.js +var _getAllKeysIn = __webpack_require__(83973); +// EXTERNAL MODULE: ./node_modules/lodash-es/_getTag.js + 3 modules +var _getTag = __webpack_require__(9779); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_initCloneArray.js +/** Used for built-in method references. */ +var objectProto = Object.prototype; + +/** Used to check objects for own properties. */ +var _initCloneArray_hasOwnProperty = objectProto.hasOwnProperty; + +/** + * Initializes an array clone. + * + * @private + * @param {Array} array The array to clone. + * @returns {Array} Returns the initialized clone. + */ +function initCloneArray(array) { + var length = array.length, + result = new array.constructor(length); + + // Add properties assigned by `RegExp#exec`. + if (length && typeof array[0] == 'string' && _initCloneArray_hasOwnProperty.call(array, 'index')) { + result.index = array.index; + result.input = array.input; + } + return result; +} + +/* harmony default export */ const _initCloneArray = (initCloneArray); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_cloneArrayBuffer.js +var _cloneArrayBuffer = __webpack_require__(90565); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_cloneDataView.js + + +/** + * Creates a clone of `dataView`. + * + * @private + * @param {Object} dataView The data view to clone. + * @param {boolean} [isDeep] Specify a deep clone. + * @returns {Object} Returns the cloned data view. + */ +function cloneDataView(dataView, isDeep) { + var buffer = isDeep ? (0,_cloneArrayBuffer/* default */.A)(dataView.buffer) : dataView.buffer; + return new dataView.constructor(buffer, dataView.byteOffset, dataView.byteLength); +} + +/* harmony default export */ const _cloneDataView = (cloneDataView); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_cloneRegExp.js +/** Used to match `RegExp` flags from their coerced string values. */ +var reFlags = /\w*$/; + +/** + * Creates a clone of `regexp`. + * + * @private + * @param {Object} regexp The regexp to clone. + * @returns {Object} Returns the cloned regexp. + */ +function cloneRegExp(regexp) { + var result = new regexp.constructor(regexp.source, reFlags.exec(regexp)); + result.lastIndex = regexp.lastIndex; + return result; +} + +/* harmony default export */ const _cloneRegExp = (cloneRegExp); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_Symbol.js +var _Symbol = __webpack_require__(241); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_cloneSymbol.js + + +/** Used to convert symbols to primitives and strings. */ +var symbolProto = _Symbol/* default */.A ? _Symbol/* default */.A.prototype : undefined, + symbolValueOf = symbolProto ? symbolProto.valueOf : undefined; + +/** + * Creates a clone of the `symbol` object. + * + * @private + * @param {Object} symbol The symbol object to clone. + * @returns {Object} Returns the cloned symbol object. + */ +function cloneSymbol(symbol) { + return symbolValueOf ? Object(symbolValueOf.call(symbol)) : {}; +} + +/* harmony default export */ const _cloneSymbol = (cloneSymbol); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_cloneTypedArray.js +var _cloneTypedArray = __webpack_require__(1801); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_initCloneByTag.js + + + + + + +/** `Object#toString` result references. */ +var boolTag = '[object Boolean]', + dateTag = '[object Date]', + mapTag = '[object Map]', + numberTag = '[object Number]', + regexpTag = '[object RegExp]', + setTag = '[object Set]', + stringTag = '[object String]', + symbolTag = '[object Symbol]'; + +var arrayBufferTag = '[object ArrayBuffer]', + dataViewTag = '[object DataView]', + float32Tag = '[object Float32Array]', + float64Tag = '[object Float64Array]', + int8Tag = '[object Int8Array]', + int16Tag = '[object Int16Array]', + int32Tag = '[object Int32Array]', + uint8Tag = '[object Uint8Array]', + uint8ClampedTag = '[object Uint8ClampedArray]', + uint16Tag = '[object Uint16Array]', + uint32Tag = '[object Uint32Array]'; + +/** + * Initializes an object clone based on its `toStringTag`. + * + * **Note:** This function only supports cloning values with tags of + * `Boolean`, `Date`, `Error`, `Map`, `Number`, `RegExp`, `Set`, or `String`. + * + * @private + * @param {Object} object The object to clone. + * @param {string} tag The `toStringTag` of the object to clone. + * @param {boolean} [isDeep] Specify a deep clone. + * @returns {Object} Returns the initialized clone. + */ +function initCloneByTag(object, tag, isDeep) { + var Ctor = object.constructor; + switch (tag) { + case arrayBufferTag: + return (0,_cloneArrayBuffer/* default */.A)(object); + + case boolTag: + case dateTag: + return new Ctor(+object); + + case dataViewTag: + return _cloneDataView(object, isDeep); + + case float32Tag: case float64Tag: + case int8Tag: case int16Tag: case int32Tag: + case uint8Tag: case uint8ClampedTag: case uint16Tag: case uint32Tag: + return (0,_cloneTypedArray/* default */.A)(object, isDeep); + + case mapTag: + return new Ctor; + + case numberTag: + case stringTag: + return new Ctor(object); + + case regexpTag: + return _cloneRegExp(object); + + case setTag: + return new Ctor; + + case symbolTag: + return _cloneSymbol(object); + } +} + +/* harmony default export */ const _initCloneByTag = (initCloneByTag); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_initCloneObject.js + 1 modules +var _initCloneObject = __webpack_require__(18598); +// EXTERNAL MODULE: ./node_modules/lodash-es/isArray.js +var isArray = __webpack_require__(92049); +// EXTERNAL MODULE: ./node_modules/lodash-es/isBuffer.js + 1 modules +var isBuffer = __webpack_require__(99912); +// EXTERNAL MODULE: ./node_modules/lodash-es/isObjectLike.js +var isObjectLike = __webpack_require__(53098); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseIsMap.js + + + +/** `Object#toString` result references. */ +var _baseIsMap_mapTag = '[object Map]'; + +/** + * The base implementation of `_.isMap` without Node.js optimizations. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a map, else `false`. + */ +function baseIsMap(value) { + return (0,isObjectLike/* default */.A)(value) && (0,_getTag/* default */.A)(value) == _baseIsMap_mapTag; +} + +/* harmony default export */ const _baseIsMap = (baseIsMap); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseUnary.js +var _baseUnary = __webpack_require__(52789); +// EXTERNAL MODULE: ./node_modules/lodash-es/_nodeUtil.js +var _nodeUtil = __webpack_require__(64841); +;// CONCATENATED MODULE: ./node_modules/lodash-es/isMap.js + + + + +/* Node.js helper references. */ +var nodeIsMap = _nodeUtil/* default */.A && _nodeUtil/* default */.A.isMap; + +/** + * Checks if `value` is classified as a `Map` object. + * + * @static + * @memberOf _ + * @since 4.3.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a map, else `false`. + * @example + * + * _.isMap(new Map); + * // => true + * + * _.isMap(new WeakMap); + * // => false + */ +var isMap = nodeIsMap ? (0,_baseUnary/* default */.A)(nodeIsMap) : _baseIsMap; + +/* harmony default export */ const lodash_es_isMap = (isMap); + +// EXTERNAL MODULE: ./node_modules/lodash-es/isObject.js +var isObject = __webpack_require__(23149); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseIsSet.js + + + +/** `Object#toString` result references. */ +var _baseIsSet_setTag = '[object Set]'; + +/** + * The base implementation of `_.isSet` without Node.js optimizations. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a set, else `false`. + */ +function baseIsSet(value) { + return (0,isObjectLike/* default */.A)(value) && (0,_getTag/* default */.A)(value) == _baseIsSet_setTag; +} + +/* harmony default export */ const _baseIsSet = (baseIsSet); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/isSet.js + + + + +/* Node.js helper references. */ +var nodeIsSet = _nodeUtil/* default */.A && _nodeUtil/* default */.A.isSet; + +/** + * Checks if `value` is classified as a `Set` object. + * + * @static + * @memberOf _ + * @since 4.3.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a set, else `false`. + * @example + * + * _.isSet(new Set); + * // => true + * + * _.isSet(new WeakSet); + * // => false + */ +var isSet = nodeIsSet ? (0,_baseUnary/* default */.A)(nodeIsSet) : _baseIsSet; + +/* harmony default export */ const lodash_es_isSet = (isSet); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseClone.js + + + + + + + + + + + + + + + + + + + + + + + +/** Used to compose bitmasks for cloning. */ +var CLONE_DEEP_FLAG = 1, + CLONE_FLAT_FLAG = 2, + CLONE_SYMBOLS_FLAG = 4; + +/** `Object#toString` result references. */ +var argsTag = '[object Arguments]', + arrayTag = '[object Array]', + _baseClone_boolTag = '[object Boolean]', + _baseClone_dateTag = '[object Date]', + errorTag = '[object Error]', + funcTag = '[object Function]', + genTag = '[object GeneratorFunction]', + _baseClone_mapTag = '[object Map]', + _baseClone_numberTag = '[object Number]', + objectTag = '[object Object]', + _baseClone_regexpTag = '[object RegExp]', + _baseClone_setTag = '[object Set]', + _baseClone_stringTag = '[object String]', + _baseClone_symbolTag = '[object Symbol]', + weakMapTag = '[object WeakMap]'; + +var _baseClone_arrayBufferTag = '[object ArrayBuffer]', + _baseClone_dataViewTag = '[object DataView]', + _baseClone_float32Tag = '[object Float32Array]', + _baseClone_float64Tag = '[object Float64Array]', + _baseClone_int8Tag = '[object Int8Array]', + _baseClone_int16Tag = '[object Int16Array]', + _baseClone_int32Tag = '[object Int32Array]', + _baseClone_uint8Tag = '[object Uint8Array]', + _baseClone_uint8ClampedTag = '[object Uint8ClampedArray]', + _baseClone_uint16Tag = '[object Uint16Array]', + _baseClone_uint32Tag = '[object Uint32Array]'; + +/** Used to identify `toStringTag` values supported by `_.clone`. */ +var cloneableTags = {}; +cloneableTags[argsTag] = cloneableTags[arrayTag] = +cloneableTags[_baseClone_arrayBufferTag] = cloneableTags[_baseClone_dataViewTag] = +cloneableTags[_baseClone_boolTag] = cloneableTags[_baseClone_dateTag] = +cloneableTags[_baseClone_float32Tag] = cloneableTags[_baseClone_float64Tag] = +cloneableTags[_baseClone_int8Tag] = cloneableTags[_baseClone_int16Tag] = +cloneableTags[_baseClone_int32Tag] = cloneableTags[_baseClone_mapTag] = +cloneableTags[_baseClone_numberTag] = cloneableTags[objectTag] = +cloneableTags[_baseClone_regexpTag] = cloneableTags[_baseClone_setTag] = +cloneableTags[_baseClone_stringTag] = cloneableTags[_baseClone_symbolTag] = +cloneableTags[_baseClone_uint8Tag] = cloneableTags[_baseClone_uint8ClampedTag] = +cloneableTags[_baseClone_uint16Tag] = cloneableTags[_baseClone_uint32Tag] = true; +cloneableTags[errorTag] = cloneableTags[funcTag] = +cloneableTags[weakMapTag] = false; + +/** + * The base implementation of `_.clone` and `_.cloneDeep` which tracks + * traversed objects. + * + * @private + * @param {*} value The value to clone. + * @param {boolean} bitmask The bitmask flags. + * 1 - Deep clone + * 2 - Flatten inherited properties + * 4 - Clone symbols + * @param {Function} [customizer] The function to customize cloning. + * @param {string} [key] The key of `value`. + * @param {Object} [object] The parent object of `value`. + * @param {Object} [stack] Tracks traversed objects and their clone counterparts. + * @returns {*} Returns the cloned value. + */ +function baseClone(value, bitmask, customizer, key, object, stack) { + var result, + isDeep = bitmask & CLONE_DEEP_FLAG, + isFlat = bitmask & CLONE_FLAT_FLAG, + isFull = bitmask & CLONE_SYMBOLS_FLAG; + + if (customizer) { + result = object ? customizer(value, key, object, stack) : customizer(value); + } + if (result !== undefined) { + return result; + } + if (!(0,isObject/* default */.A)(value)) { + return value; + } + var isArr = (0,isArray/* default */.A)(value); + if (isArr) { + result = _initCloneArray(value); + if (!isDeep) { + return (0,_copyArray/* default */.A)(value, result); + } + } else { + var tag = (0,_getTag/* default */.A)(value), + isFunc = tag == funcTag || tag == genTag; + + if ((0,isBuffer/* default */.A)(value)) { + return (0,_cloneBuffer/* default */.A)(value, isDeep); + } + if (tag == objectTag || tag == argsTag || (isFunc && !object)) { + result = (isFlat || isFunc) ? {} : (0,_initCloneObject/* default */.A)(value); + if (!isDeep) { + return isFlat + ? _copySymbolsIn(value, _baseAssignIn(result, value)) + : _copySymbols(value, _baseAssign(result, value)); + } + } else { + if (!cloneableTags[tag]) { + return object ? value : {}; + } + result = _initCloneByTag(value, tag, isDeep); + } + } + // Check for circular references and return its corresponding clone. + stack || (stack = new _Stack/* default */.A); + var stacked = stack.get(value); + if (stacked) { + return stacked; + } + stack.set(value, result); + + if (lodash_es_isSet(value)) { + value.forEach(function(subValue) { + result.add(baseClone(subValue, bitmask, customizer, subValue, value, stack)); + }); + } else if (lodash_es_isMap(value)) { + value.forEach(function(subValue, key) { + result.set(key, baseClone(subValue, bitmask, customizer, key, value, stack)); + }); + } + + var keysFunc = isFull + ? (isFlat ? _getAllKeysIn/* default */.A : _getAllKeys/* default */.A) + : (isFlat ? keysIn/* default */.A : keys/* default */.A); + + var props = isArr ? undefined : keysFunc(value); + (0,_arrayEach/* default */.A)(props || value, function(subValue, key) { + if (props) { + key = subValue; + subValue = value[key]; + } + // Recursively populate clone (susceptible to call stack limits). + (0,_assignValue/* default */.A)(result, key, baseClone(subValue, bitmask, customizer, key, value, stack)); + }); + return result; +} + +/* harmony default export */ const _baseClone = (baseClone); + + +/***/ }), + +/***/ 6240: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ _baseEach) +}); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseForOwn.js +var _baseForOwn = __webpack_require__(79841); +// EXTERNAL MODULE: ./node_modules/lodash-es/isArrayLike.js +var isArrayLike = __webpack_require__(38446); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_createBaseEach.js + + +/** + * Creates a `baseEach` or `baseEachRight` function. + * + * @private + * @param {Function} eachFunc The function to iterate over a collection. + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {Function} Returns the new base function. + */ +function createBaseEach(eachFunc, fromRight) { + return function(collection, iteratee) { + if (collection == null) { + return collection; + } + if (!(0,isArrayLike/* default */.A)(collection)) { + return eachFunc(collection, iteratee); + } + var length = collection.length, + index = fromRight ? length : -1, + iterable = Object(collection); + + while ((fromRight ? index-- : ++index < length)) { + if (iteratee(iterable[index], index, iterable) === false) { + break; + } + } + return collection; + }; +} + +/* harmony default export */ const _createBaseEach = (createBaseEach); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseEach.js + + + +/** + * The base implementation of `_.forEach` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array|Object} Returns `collection`. + */ +var baseEach = _createBaseEach(_baseForOwn/* default */.A); + +/* harmony default export */ const _baseEach = (baseEach); + + +/***/ }), + +/***/ 72559: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _isSymbol_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(61882); + + +/** + * The base implementation of methods like `_.max` and `_.min` which accepts a + * `comparator` to determine the extremum value. + * + * @private + * @param {Array} array The array to iterate over. + * @param {Function} iteratee The iteratee invoked per iteration. + * @param {Function} comparator The comparator used to compare values. + * @returns {*} Returns the extremum value. + */ +function baseExtremum(array, iteratee, comparator) { + var index = -1, + length = array.length; + + while (++index < length) { + var value = array[index], + current = iteratee(value); + + if (current != null && (computed === undefined + ? (current === current && !(0,_isSymbol_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(current)) + : comparator(current, computed) + )) { + var computed = current, + result = value; + } + } + return result; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (baseExtremum); + + +/***/ }), + +/***/ 51790: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _baseEach_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6240); + + +/** + * The base implementation of `_.filter` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {Array} Returns the new filtered array. + */ +function baseFilter(collection, predicate) { + var result = []; + (0,_baseEach_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(collection, function(value, index, collection) { + if (predicate(value, index, collection)) { + result.push(value); + } + }); + return result; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (baseFilter); + + +/***/ }), + +/***/ 25707: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * The base implementation of `_.findIndex` and `_.findLastIndex` without + * support for iteratee shorthands. + * + * @private + * @param {Array} array The array to inspect. + * @param {Function} predicate The function invoked per iteration. + * @param {number} fromIndex The index to search from. + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {number} Returns the index of the matched value, else `-1`. + */ +function baseFindIndex(array, predicate, fromIndex, fromRight) { + var length = array.length, + index = fromIndex + (fromRight ? 1 : -1); + + while ((fromRight ? index-- : ++index < length)) { + if (predicate(array[index], index, array)) { + return index; + } + } + return -1; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (baseFindIndex); + + +/***/ }), + +/***/ 13588: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ _baseFlatten) +}); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_arrayPush.js +var _arrayPush = __webpack_require__(76912); +// EXTERNAL MODULE: ./node_modules/lodash-es/_Symbol.js +var _Symbol = __webpack_require__(241); +// EXTERNAL MODULE: ./node_modules/lodash-es/isArguments.js + 1 modules +var isArguments = __webpack_require__(52274); +// EXTERNAL MODULE: ./node_modules/lodash-es/isArray.js +var isArray = __webpack_require__(92049); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_isFlattenable.js + + + + +/** Built-in value references. */ +var spreadableSymbol = _Symbol/* default */.A ? _Symbol/* default */.A.isConcatSpreadable : undefined; + +/** + * Checks if `value` is a flattenable `arguments` object or array. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is flattenable, else `false`. + */ +function isFlattenable(value) { + return (0,isArray/* default */.A)(value) || (0,isArguments/* default */.A)(value) || + !!(spreadableSymbol && value && value[spreadableSymbol]); +} + +/* harmony default export */ const _isFlattenable = (isFlattenable); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseFlatten.js + + + +/** + * The base implementation of `_.flatten` with support for restricting flattening. + * + * @private + * @param {Array} array The array to flatten. + * @param {number} depth The maximum recursion depth. + * @param {boolean} [predicate=isFlattenable] The function invoked per iteration. + * @param {boolean} [isStrict] Restrict to values that pass `predicate` checks. + * @param {Array} [result=[]] The initial result value. + * @returns {Array} Returns the new flattened array. + */ +function baseFlatten(array, depth, predicate, isStrict, result) { + var index = -1, + length = array.length; + + predicate || (predicate = _isFlattenable); + result || (result = []); + + while (++index < length) { + var value = array[index]; + if (depth > 0 && predicate(value)) { + if (depth > 1) { + // Recursively flatten arrays (susceptible to call stack limits). + baseFlatten(value, depth - 1, predicate, isStrict, result); + } else { + (0,_arrayPush/* default */.A)(result, value); + } + } else if (!isStrict) { + result[result.length] = value; + } + } + return result; +} + +/* harmony default export */ const _baseFlatten = (baseFlatten); + + +/***/ }), + +/***/ 79841: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _baseFor_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4574); +/* harmony import */ var _keys_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(27422); + + + +/** + * The base implementation of `_.forOwn` without support for iteratee shorthands. + * + * @private + * @param {Object} object The object to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Object} Returns `object`. + */ +function baseForOwn(object, iteratee) { + return object && (0,_baseFor_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(object, iteratee, _keys_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A); +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (baseForOwn); + + +/***/ }), + +/***/ 66318: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _castPath_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(7819); +/* harmony import */ var _toKey_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(30901); + + + +/** + * The base implementation of `_.get` without support for default values. + * + * @private + * @param {Object} object The object to query. + * @param {Array|string} path The path of the property to get. + * @returns {*} Returns the resolved value. + */ +function baseGet(object, path) { + path = (0,_castPath_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(path, object); + + var index = 0, + length = path.length; + + while (object != null && index < length) { + object = object[(0,_toKey_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A)(path[index++])]; + } + return (index && index == length) ? object : undefined; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (baseGet); + + +/***/ }), + +/***/ 33831: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _arrayPush_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(76912); +/* harmony import */ var _isArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(92049); + + + +/** + * The base implementation of `getAllKeys` and `getAllKeysIn` which uses + * `keysFunc` and `symbolsFunc` to get the enumerable property names and + * symbols of `object`. + * + * @private + * @param {Object} object The object to query. + * @param {Function} keysFunc The function to get the keys of `object`. + * @param {Function} symbolsFunc The function to get the symbols of `object`. + * @returns {Array} Returns the array of property names and symbols. + */ +function baseGetAllKeys(object, keysFunc, symbolsFunc) { + var result = keysFunc(object); + return (0,_isArray_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(object) ? result : (0,_arrayPush_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A)(result, symbolsFunc(object)); +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (baseGetAllKeys); + + +/***/ }), + +/***/ 60818: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ _baseIndexOf) +}); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseFindIndex.js +var _baseFindIndex = __webpack_require__(25707); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseIsNaN.js +/** + * The base implementation of `_.isNaN` without support for number objects. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`. + */ +function baseIsNaN(value) { + return value !== value; +} + +/* harmony default export */ const _baseIsNaN = (baseIsNaN); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_strictIndexOf.js +/** + * A specialized version of `_.indexOf` which performs strict equality + * comparisons of values, i.e. `===`. + * + * @private + * @param {Array} array The array to inspect. + * @param {*} value The value to search for. + * @param {number} fromIndex The index to search from. + * @returns {number} Returns the index of the matched value, else `-1`. + */ +function strictIndexOf(array, value, fromIndex) { + var index = fromIndex - 1, + length = array.length; + + while (++index < length) { + if (array[index] === value) { + return index; + } + } + return -1; +} + +/* harmony default export */ const _strictIndexOf = (strictIndexOf); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseIndexOf.js + + + + +/** + * The base implementation of `_.indexOf` without `fromIndex` bounds checks. + * + * @private + * @param {Array} array The array to inspect. + * @param {*} value The value to search for. + * @param {number} fromIndex The index to search from. + * @returns {number} Returns the index of the matched value, else `-1`. + */ +function baseIndexOf(array, value, fromIndex) { + return value === value + ? _strictIndexOf(array, value, fromIndex) + : (0,_baseFindIndex/* default */.A)(array, _baseIsNaN, fromIndex); +} + +/* harmony default export */ const _baseIndexOf = (baseIndexOf); + + +/***/ }), + +/***/ 23958: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ _baseIteratee) +}); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_Stack.js + 5 modules +var _Stack = __webpack_require__(11754); +// EXTERNAL MODULE: ./node_modules/lodash-es/_SetCache.js + 2 modules +var _SetCache = __webpack_require__(62062); +// EXTERNAL MODULE: ./node_modules/lodash-es/_arraySome.js +var _arraySome = __webpack_require__(63736); +// EXTERNAL MODULE: ./node_modules/lodash-es/_cacheHas.js +var _cacheHas = __webpack_require__(64099); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_equalArrays.js + + + + +/** Used to compose bitmasks for value comparisons. */ +var COMPARE_PARTIAL_FLAG = 1, + COMPARE_UNORDERED_FLAG = 2; + +/** + * A specialized version of `baseIsEqualDeep` for arrays with support for + * partial deep comparisons. + * + * @private + * @param {Array} array The array to compare. + * @param {Array} other The other array to compare. + * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. + * @param {Function} customizer The function to customize comparisons. + * @param {Function} equalFunc The function to determine equivalents of values. + * @param {Object} stack Tracks traversed `array` and `other` objects. + * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`. + */ +function equalArrays(array, other, bitmask, customizer, equalFunc, stack) { + var isPartial = bitmask & COMPARE_PARTIAL_FLAG, + arrLength = array.length, + othLength = other.length; + + if (arrLength != othLength && !(isPartial && othLength > arrLength)) { + return false; + } + // Check that cyclic values are equal. + var arrStacked = stack.get(array); + var othStacked = stack.get(other); + if (arrStacked && othStacked) { + return arrStacked == other && othStacked == array; + } + var index = -1, + result = true, + seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new _SetCache/* default */.A : undefined; + + stack.set(array, other); + stack.set(other, array); + + // Ignore non-index properties. + while (++index < arrLength) { + var arrValue = array[index], + othValue = other[index]; + + if (customizer) { + var compared = isPartial + ? customizer(othValue, arrValue, index, other, array, stack) + : customizer(arrValue, othValue, index, array, other, stack); + } + if (compared !== undefined) { + if (compared) { + continue; + } + result = false; + break; + } + // Recursively compare arrays (susceptible to call stack limits). + if (seen) { + if (!(0,_arraySome/* default */.A)(other, function(othValue, othIndex) { + if (!(0,_cacheHas/* default */.A)(seen, othIndex) && + (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) { + return seen.push(othIndex); + } + })) { + result = false; + break; + } + } else if (!( + arrValue === othValue || + equalFunc(arrValue, othValue, bitmask, customizer, stack) + )) { + result = false; + break; + } + } + stack['delete'](array); + stack['delete'](other); + return result; +} + +/* harmony default export */ const _equalArrays = (equalArrays); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_Symbol.js +var _Symbol = __webpack_require__(241); +// EXTERNAL MODULE: ./node_modules/lodash-es/_Uint8Array.js +var _Uint8Array = __webpack_require__(43988); +// EXTERNAL MODULE: ./node_modules/lodash-es/eq.js +var eq = __webpack_require__(66984); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_mapToArray.js +/** + * Converts `map` to its key-value pairs. + * + * @private + * @param {Object} map The map to convert. + * @returns {Array} Returns the key-value pairs. + */ +function mapToArray(map) { + var index = -1, + result = Array(map.size); + + map.forEach(function(value, key) { + result[++index] = [key, value]; + }); + return result; +} + +/* harmony default export */ const _mapToArray = (mapToArray); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_setToArray.js +var _setToArray = __webpack_require__(29959); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_equalByTag.js + + + + + + + +/** Used to compose bitmasks for value comparisons. */ +var _equalByTag_COMPARE_PARTIAL_FLAG = 1, + _equalByTag_COMPARE_UNORDERED_FLAG = 2; + +/** `Object#toString` result references. */ +var boolTag = '[object Boolean]', + dateTag = '[object Date]', + errorTag = '[object Error]', + mapTag = '[object Map]', + numberTag = '[object Number]', + regexpTag = '[object RegExp]', + setTag = '[object Set]', + stringTag = '[object String]', + symbolTag = '[object Symbol]'; + +var arrayBufferTag = '[object ArrayBuffer]', + dataViewTag = '[object DataView]'; + +/** Used to convert symbols to primitives and strings. */ +var symbolProto = _Symbol/* default */.A ? _Symbol/* default */.A.prototype : undefined, + symbolValueOf = symbolProto ? symbolProto.valueOf : undefined; + +/** + * A specialized version of `baseIsEqualDeep` for comparing objects of + * the same `toStringTag`. + * + * **Note:** This function only supports comparing values with tags of + * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`. + * + * @private + * @param {Object} object The object to compare. + * @param {Object} other The other object to compare. + * @param {string} tag The `toStringTag` of the objects to compare. + * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. + * @param {Function} customizer The function to customize comparisons. + * @param {Function} equalFunc The function to determine equivalents of values. + * @param {Object} stack Tracks traversed `object` and `other` objects. + * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. + */ +function equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) { + switch (tag) { + case dataViewTag: + if ((object.byteLength != other.byteLength) || + (object.byteOffset != other.byteOffset)) { + return false; + } + object = object.buffer; + other = other.buffer; + + case arrayBufferTag: + if ((object.byteLength != other.byteLength) || + !equalFunc(new _Uint8Array/* default */.A(object), new _Uint8Array/* default */.A(other))) { + return false; + } + return true; + + case boolTag: + case dateTag: + case numberTag: + // Coerce booleans to `1` or `0` and dates to milliseconds. + // Invalid dates are coerced to `NaN`. + return (0,eq/* default */.A)(+object, +other); + + case errorTag: + return object.name == other.name && object.message == other.message; + + case regexpTag: + case stringTag: + // Coerce regexes to strings and treat strings, primitives and objects, + // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring + // for more details. + return object == (other + ''); + + case mapTag: + var convert = _mapToArray; + + case setTag: + var isPartial = bitmask & _equalByTag_COMPARE_PARTIAL_FLAG; + convert || (convert = _setToArray/* default */.A); + + if (object.size != other.size && !isPartial) { + return false; + } + // Assume cyclic values are equal. + var stacked = stack.get(object); + if (stacked) { + return stacked == other; + } + bitmask |= _equalByTag_COMPARE_UNORDERED_FLAG; + + // Recursively compare objects (susceptible to call stack limits). + stack.set(object, other); + var result = _equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack); + stack['delete'](object); + return result; + + case symbolTag: + if (symbolValueOf) { + return symbolValueOf.call(object) == symbolValueOf.call(other); + } + } + return false; +} + +/* harmony default export */ const _equalByTag = (equalByTag); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_getAllKeys.js +var _getAllKeys = __webpack_require__(19042); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_equalObjects.js + + +/** Used to compose bitmasks for value comparisons. */ +var _equalObjects_COMPARE_PARTIAL_FLAG = 1; + +/** Used for built-in method references. */ +var objectProto = Object.prototype; + +/** Used to check objects for own properties. */ +var _equalObjects_hasOwnProperty = objectProto.hasOwnProperty; + +/** + * A specialized version of `baseIsEqualDeep` for objects with support for + * partial deep comparisons. + * + * @private + * @param {Object} object The object to compare. + * @param {Object} other The other object to compare. + * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. + * @param {Function} customizer The function to customize comparisons. + * @param {Function} equalFunc The function to determine equivalents of values. + * @param {Object} stack Tracks traversed `object` and `other` objects. + * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. + */ +function equalObjects(object, other, bitmask, customizer, equalFunc, stack) { + var isPartial = bitmask & _equalObjects_COMPARE_PARTIAL_FLAG, + objProps = (0,_getAllKeys/* default */.A)(object), + objLength = objProps.length, + othProps = (0,_getAllKeys/* default */.A)(other), + othLength = othProps.length; + + if (objLength != othLength && !isPartial) { + return false; + } + var index = objLength; + while (index--) { + var key = objProps[index]; + if (!(isPartial ? key in other : _equalObjects_hasOwnProperty.call(other, key))) { + return false; + } + } + // Check that cyclic values are equal. + var objStacked = stack.get(object); + var othStacked = stack.get(other); + if (objStacked && othStacked) { + return objStacked == other && othStacked == object; + } + var result = true; + stack.set(object, other); + stack.set(other, object); + + var skipCtor = isPartial; + while (++index < objLength) { + key = objProps[index]; + var objValue = object[key], + othValue = other[key]; + + if (customizer) { + var compared = isPartial + ? customizer(othValue, objValue, key, other, object, stack) + : customizer(objValue, othValue, key, object, other, stack); + } + // Recursively compare objects (susceptible to call stack limits). + if (!(compared === undefined + ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack)) + : compared + )) { + result = false; + break; + } + skipCtor || (skipCtor = key == 'constructor'); + } + if (result && !skipCtor) { + var objCtor = object.constructor, + othCtor = other.constructor; + + // Non `Object` object instances with different constructors are not equal. + if (objCtor != othCtor && + ('constructor' in object && 'constructor' in other) && + !(typeof objCtor == 'function' && objCtor instanceof objCtor && + typeof othCtor == 'function' && othCtor instanceof othCtor)) { + result = false; + } + } + stack['delete'](object); + stack['delete'](other); + return result; +} + +/* harmony default export */ const _equalObjects = (equalObjects); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_getTag.js + 3 modules +var _getTag = __webpack_require__(9779); +// EXTERNAL MODULE: ./node_modules/lodash-es/isArray.js +var isArray = __webpack_require__(92049); +// EXTERNAL MODULE: ./node_modules/lodash-es/isBuffer.js + 1 modules +var isBuffer = __webpack_require__(99912); +// EXTERNAL MODULE: ./node_modules/lodash-es/isTypedArray.js + 1 modules +var isTypedArray = __webpack_require__(33858); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseIsEqualDeep.js + + + + + + + + + +/** Used to compose bitmasks for value comparisons. */ +var _baseIsEqualDeep_COMPARE_PARTIAL_FLAG = 1; + +/** `Object#toString` result references. */ +var argsTag = '[object Arguments]', + arrayTag = '[object Array]', + objectTag = '[object Object]'; + +/** Used for built-in method references. */ +var _baseIsEqualDeep_objectProto = Object.prototype; + +/** Used to check objects for own properties. */ +var _baseIsEqualDeep_hasOwnProperty = _baseIsEqualDeep_objectProto.hasOwnProperty; + +/** + * A specialized version of `baseIsEqual` for arrays and objects which performs + * deep comparisons and tracks traversed objects enabling objects with circular + * references to be compared. + * + * @private + * @param {Object} object The object to compare. + * @param {Object} other The other object to compare. + * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. + * @param {Function} customizer The function to customize comparisons. + * @param {Function} equalFunc The function to determine equivalents of values. + * @param {Object} [stack] Tracks traversed `object` and `other` objects. + * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. + */ +function baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) { + var objIsArr = (0,isArray/* default */.A)(object), + othIsArr = (0,isArray/* default */.A)(other), + objTag = objIsArr ? arrayTag : (0,_getTag/* default */.A)(object), + othTag = othIsArr ? arrayTag : (0,_getTag/* default */.A)(other); + + objTag = objTag == argsTag ? objectTag : objTag; + othTag = othTag == argsTag ? objectTag : othTag; + + var objIsObj = objTag == objectTag, + othIsObj = othTag == objectTag, + isSameTag = objTag == othTag; + + if (isSameTag && (0,isBuffer/* default */.A)(object)) { + if (!(0,isBuffer/* default */.A)(other)) { + return false; + } + objIsArr = true; + objIsObj = false; + } + if (isSameTag && !objIsObj) { + stack || (stack = new _Stack/* default */.A); + return (objIsArr || (0,isTypedArray/* default */.A)(object)) + ? _equalArrays(object, other, bitmask, customizer, equalFunc, stack) + : _equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack); + } + if (!(bitmask & _baseIsEqualDeep_COMPARE_PARTIAL_FLAG)) { + var objIsWrapped = objIsObj && _baseIsEqualDeep_hasOwnProperty.call(object, '__wrapped__'), + othIsWrapped = othIsObj && _baseIsEqualDeep_hasOwnProperty.call(other, '__wrapped__'); + + if (objIsWrapped || othIsWrapped) { + var objUnwrapped = objIsWrapped ? object.value() : object, + othUnwrapped = othIsWrapped ? other.value() : other; + + stack || (stack = new _Stack/* default */.A); + return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack); + } + } + if (!isSameTag) { + return false; + } + stack || (stack = new _Stack/* default */.A); + return _equalObjects(object, other, bitmask, customizer, equalFunc, stack); +} + +/* harmony default export */ const _baseIsEqualDeep = (baseIsEqualDeep); + +// EXTERNAL MODULE: ./node_modules/lodash-es/isObjectLike.js +var isObjectLike = __webpack_require__(53098); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseIsEqual.js + + + +/** + * The base implementation of `_.isEqual` which supports partial comparisons + * and tracks traversed objects. + * + * @private + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @param {boolean} bitmask The bitmask flags. + * 1 - Unordered comparison + * 2 - Partial comparison + * @param {Function} [customizer] The function to customize comparisons. + * @param {Object} [stack] Tracks traversed `value` and `other` objects. + * @returns {boolean} Returns `true` if the values are equivalent, else `false`. + */ +function baseIsEqual(value, other, bitmask, customizer, stack) { + if (value === other) { + return true; + } + if (value == null || other == null || (!(0,isObjectLike/* default */.A)(value) && !(0,isObjectLike/* default */.A)(other))) { + return value !== value && other !== other; + } + return _baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack); +} + +/* harmony default export */ const _baseIsEqual = (baseIsEqual); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseIsMatch.js + + + +/** Used to compose bitmasks for value comparisons. */ +var _baseIsMatch_COMPARE_PARTIAL_FLAG = 1, + _baseIsMatch_COMPARE_UNORDERED_FLAG = 2; + +/** + * The base implementation of `_.isMatch` without support for iteratee shorthands. + * + * @private + * @param {Object} object The object to inspect. + * @param {Object} source The object of property values to match. + * @param {Array} matchData The property names, values, and compare flags to match. + * @param {Function} [customizer] The function to customize comparisons. + * @returns {boolean} Returns `true` if `object` is a match, else `false`. + */ +function baseIsMatch(object, source, matchData, customizer) { + var index = matchData.length, + length = index, + noCustomizer = !customizer; + + if (object == null) { + return !length; + } + object = Object(object); + while (index--) { + var data = matchData[index]; + if ((noCustomizer && data[2]) + ? data[1] !== object[data[0]] + : !(data[0] in object) + ) { + return false; + } + } + while (++index < length) { + data = matchData[index]; + var key = data[0], + objValue = object[key], + srcValue = data[1]; + + if (noCustomizer && data[2]) { + if (objValue === undefined && !(key in object)) { + return false; + } + } else { + var stack = new _Stack/* default */.A; + if (customizer) { + var result = customizer(objValue, srcValue, key, object, source, stack); + } + if (!(result === undefined + ? _baseIsEqual(srcValue, objValue, _baseIsMatch_COMPARE_PARTIAL_FLAG | _baseIsMatch_COMPARE_UNORDERED_FLAG, customizer, stack) + : result + )) { + return false; + } + } + } + return true; +} + +/* harmony default export */ const _baseIsMatch = (baseIsMatch); + +// EXTERNAL MODULE: ./node_modules/lodash-es/isObject.js +var isObject = __webpack_require__(23149); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_isStrictComparable.js + + +/** + * Checks if `value` is suitable for strict equality comparisons, i.e. `===`. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` if suitable for strict + * equality comparisons, else `false`. + */ +function isStrictComparable(value) { + return value === value && !(0,isObject/* default */.A)(value); +} + +/* harmony default export */ const _isStrictComparable = (isStrictComparable); + +// EXTERNAL MODULE: ./node_modules/lodash-es/keys.js +var keys = __webpack_require__(27422); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_getMatchData.js + + + +/** + * Gets the property names, values, and compare flags of `object`. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the match data of `object`. + */ +function getMatchData(object) { + var result = (0,keys/* default */.A)(object), + length = result.length; + + while (length--) { + var key = result[length], + value = object[key]; + + result[length] = [key, value, _isStrictComparable(value)]; + } + return result; +} + +/* harmony default export */ const _getMatchData = (getMatchData); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_matchesStrictComparable.js +/** + * A specialized version of `matchesProperty` for source values suitable + * for strict equality comparisons, i.e. `===`. + * + * @private + * @param {string} key The key of the property to get. + * @param {*} srcValue The value to match. + * @returns {Function} Returns the new spec function. + */ +function matchesStrictComparable(key, srcValue) { + return function(object) { + if (object == null) { + return false; + } + return object[key] === srcValue && + (srcValue !== undefined || (key in Object(object))); + }; +} + +/* harmony default export */ const _matchesStrictComparable = (matchesStrictComparable); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseMatches.js + + + + +/** + * The base implementation of `_.matches` which doesn't clone `source`. + * + * @private + * @param {Object} source The object of property values to match. + * @returns {Function} Returns the new spec function. + */ +function baseMatches(source) { + var matchData = _getMatchData(source); + if (matchData.length == 1 && matchData[0][2]) { + return _matchesStrictComparable(matchData[0][0], matchData[0][1]); + } + return function(object) { + return object === source || _baseIsMatch(object, source, matchData); + }; +} + +/* harmony default export */ const _baseMatches = (baseMatches); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseGet.js +var _baseGet = __webpack_require__(66318); +;// CONCATENATED MODULE: ./node_modules/lodash-es/get.js + + +/** + * Gets the value at `path` of `object`. If the resolved value is + * `undefined`, the `defaultValue` is returned in its place. + * + * @static + * @memberOf _ + * @since 3.7.0 + * @category Object + * @param {Object} object The object to query. + * @param {Array|string} path The path of the property to get. + * @param {*} [defaultValue] The value returned for `undefined` resolved values. + * @returns {*} Returns the resolved value. + * @example + * + * var object = { 'a': [{ 'b': { 'c': 3 } }] }; + * + * _.get(object, 'a[0].b.c'); + * // => 3 + * + * _.get(object, ['a', '0', 'b', 'c']); + * // => 3 + * + * _.get(object, 'a.b.c', 'default'); + * // => 'default' + */ +function get(object, path, defaultValue) { + var result = object == null ? undefined : (0,_baseGet/* default */.A)(object, path); + return result === undefined ? defaultValue : result; +} + +/* harmony default export */ const lodash_es_get = (get); + +// EXTERNAL MODULE: ./node_modules/lodash-es/hasIn.js + 1 modules +var hasIn = __webpack_require__(16807); +// EXTERNAL MODULE: ./node_modules/lodash-es/_isKey.js +var _isKey = __webpack_require__(86586); +// EXTERNAL MODULE: ./node_modules/lodash-es/_toKey.js +var _toKey = __webpack_require__(30901); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseMatchesProperty.js + + + + + + + + +/** Used to compose bitmasks for value comparisons. */ +var _baseMatchesProperty_COMPARE_PARTIAL_FLAG = 1, + _baseMatchesProperty_COMPARE_UNORDERED_FLAG = 2; + +/** + * The base implementation of `_.matchesProperty` which doesn't clone `srcValue`. + * + * @private + * @param {string} path The path of the property to get. + * @param {*} srcValue The value to match. + * @returns {Function} Returns the new spec function. + */ +function baseMatchesProperty(path, srcValue) { + if ((0,_isKey/* default */.A)(path) && _isStrictComparable(srcValue)) { + return _matchesStrictComparable((0,_toKey/* default */.A)(path), srcValue); + } + return function(object) { + var objValue = lodash_es_get(object, path); + return (objValue === undefined && objValue === srcValue) + ? (0,hasIn/* default */.A)(object, path) + : _baseIsEqual(srcValue, objValue, _baseMatchesProperty_COMPARE_PARTIAL_FLAG | _baseMatchesProperty_COMPARE_UNORDERED_FLAG); + }; +} + +/* harmony default export */ const _baseMatchesProperty = (baseMatchesProperty); + +// EXTERNAL MODULE: ./node_modules/lodash-es/identity.js +var identity = __webpack_require__(29008); +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseProperty.js +var _baseProperty = __webpack_require__(70805); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_basePropertyDeep.js + + +/** + * A specialized version of `baseProperty` which supports deep paths. + * + * @private + * @param {Array|string} path The path of the property to get. + * @returns {Function} Returns the new accessor function. + */ +function basePropertyDeep(path) { + return function(object) { + return (0,_baseGet/* default */.A)(object, path); + }; +} + +/* harmony default export */ const _basePropertyDeep = (basePropertyDeep); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/property.js + + + + + +/** + * Creates a function that returns the value at `path` of a given object. + * + * @static + * @memberOf _ + * @since 2.4.0 + * @category Util + * @param {Array|string} path The path of the property to get. + * @returns {Function} Returns the new accessor function. + * @example + * + * var objects = [ + * { 'a': { 'b': 2 } }, + * { 'a': { 'b': 1 } } + * ]; + * + * _.map(objects, _.property('a.b')); + * // => [2, 1] + * + * _.map(_.sortBy(objects, _.property(['a', 'b'])), 'a.b'); + * // => [1, 2] + */ +function property(path) { + return (0,_isKey/* default */.A)(path) ? (0,_baseProperty/* default */.A)((0,_toKey/* default */.A)(path)) : _basePropertyDeep(path); +} + +/* harmony default export */ const lodash_es_property = (property); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseIteratee.js + + + + + + +/** + * The base implementation of `_.iteratee`. + * + * @private + * @param {*} [value=_.identity] The value to convert to an iteratee. + * @returns {Function} Returns the iteratee. + */ +function baseIteratee(value) { + // Don't store the `typeof` result in a variable to avoid a JIT bug in Safari 9. + // See https://bugs.webkit.org/show_bug.cgi?id=156034 for more details. + if (typeof value == 'function') { + return value; + } + if (value == null) { + return identity/* default */.A; + } + if (typeof value == 'object') { + return (0,isArray/* default */.A)(value) + ? _baseMatchesProperty(value[0], value[1]) + : _baseMatches(value); + } + return lodash_es_property(value); +} + +/* harmony default export */ const _baseIteratee = (baseIteratee); + + +/***/ }), + +/***/ 36224: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * The base implementation of `_.lt` which doesn't coerce arguments. + * + * @private + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {boolean} Returns `true` if `value` is less than `other`, + * else `false`. + */ +function baseLt(value, other) { + return value < other; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (baseLt); + + +/***/ }), + +/***/ 52568: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _baseEach_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6240); +/* harmony import */ var _isArrayLike_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(38446); + + + +/** + * The base implementation of `_.map` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array} Returns the new mapped array. + */ +function baseMap(collection, iteratee) { + var index = -1, + result = (0,_isArrayLike_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(collection) ? Array(collection.length) : []; + + (0,_baseEach_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A)(collection, function(value, key, collection) { + result[++index] = iteratee(value, key, collection); + }); + return result; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (baseMap); + + +/***/ }), + +/***/ 99354: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ _basePickBy) +}); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseGet.js +var _baseGet = __webpack_require__(66318); +// EXTERNAL MODULE: ./node_modules/lodash-es/_assignValue.js +var _assignValue = __webpack_require__(52851); +// EXTERNAL MODULE: ./node_modules/lodash-es/_castPath.js + 2 modules +var _castPath = __webpack_require__(7819); +// EXTERNAL MODULE: ./node_modules/lodash-es/_isIndex.js +var _isIndex = __webpack_require__(25353); +// EXTERNAL MODULE: ./node_modules/lodash-es/isObject.js +var isObject = __webpack_require__(23149); +// EXTERNAL MODULE: ./node_modules/lodash-es/_toKey.js +var _toKey = __webpack_require__(30901); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseSet.js + + + + + + +/** + * The base implementation of `_.set`. + * + * @private + * @param {Object} object The object to modify. + * @param {Array|string} path The path of the property to set. + * @param {*} value The value to set. + * @param {Function} [customizer] The function to customize path creation. + * @returns {Object} Returns `object`. + */ +function baseSet(object, path, value, customizer) { + if (!(0,isObject/* default */.A)(object)) { + return object; + } + path = (0,_castPath/* default */.A)(path, object); + + var index = -1, + length = path.length, + lastIndex = length - 1, + nested = object; + + while (nested != null && ++index < length) { + var key = (0,_toKey/* default */.A)(path[index]), + newValue = value; + + if (key === '__proto__' || key === 'constructor' || key === 'prototype') { + return object; + } + + if (index != lastIndex) { + var objValue = nested[key]; + newValue = customizer ? customizer(objValue, key, nested) : undefined; + if (newValue === undefined) { + newValue = (0,isObject/* default */.A)(objValue) + ? objValue + : ((0,_isIndex/* default */.A)(path[index + 1]) ? [] : {}); + } + } + (0,_assignValue/* default */.A)(nested, key, newValue); + nested = nested[key]; + } + return object; +} + +/* harmony default export */ const _baseSet = (baseSet); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_basePickBy.js + + + + +/** + * The base implementation of `_.pickBy` without support for iteratee shorthands. + * + * @private + * @param {Object} object The source object. + * @param {string[]} paths The property paths to pick. + * @param {Function} predicate The function invoked per property. + * @returns {Object} Returns the new object. + */ +function basePickBy(object, paths, predicate) { + var index = -1, + length = paths.length, + result = {}; + + while (++index < length) { + var path = paths[index], + value = (0,_baseGet/* default */.A)(object, path); + + if (predicate(value, path)) { + _baseSet(result, (0,_castPath/* default */.A)(path, object), value); + } + } + return result; +} + +/* harmony default export */ const _basePickBy = (basePickBy); + + +/***/ }), + +/***/ 70805: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * The base implementation of `_.property` without support for deep paths. + * + * @private + * @param {string} key The key of the property to get. + * @returns {Function} Returns the new accessor function. + */ +function baseProperty(key) { + return function(object) { + return object == null ? undefined : object[key]; + }; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (baseProperty); + + +/***/ }), + +/***/ 99902: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ _baseUniq) +}); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_SetCache.js + 2 modules +var _SetCache = __webpack_require__(62062); +// EXTERNAL MODULE: ./node_modules/lodash-es/_arrayIncludes.js +var _arrayIncludes = __webpack_require__(83149); +// EXTERNAL MODULE: ./node_modules/lodash-es/_arrayIncludesWith.js +var _arrayIncludesWith = __webpack_require__(87809); +// EXTERNAL MODULE: ./node_modules/lodash-es/_cacheHas.js +var _cacheHas = __webpack_require__(64099); +// EXTERNAL MODULE: ./node_modules/lodash-es/_Set.js +var _Set = __webpack_require__(39857); +// EXTERNAL MODULE: ./node_modules/lodash-es/noop.js +var noop = __webpack_require__(42302); +// EXTERNAL MODULE: ./node_modules/lodash-es/_setToArray.js +var _setToArray = __webpack_require__(29959); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_createSet.js + + + + +/** Used as references for various `Number` constants. */ +var INFINITY = 1 / 0; + +/** + * Creates a set object of `values`. + * + * @private + * @param {Array} values The values to add to the set. + * @returns {Object} Returns the new set. + */ +var createSet = !(_Set/* default */.A && (1 / (0,_setToArray/* default */.A)(new _Set/* default */.A([,-0]))[1]) == INFINITY) ? noop/* default */.A : function(values) { + return new _Set/* default */.A(values); +}; + +/* harmony default export */ const _createSet = (createSet); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseUniq.js + + + + + + + +/** Used as the size to enable large array optimizations. */ +var LARGE_ARRAY_SIZE = 200; + +/** + * The base implementation of `_.uniqBy` without support for iteratee shorthands. + * + * @private + * @param {Array} array The array to inspect. + * @param {Function} [iteratee] The iteratee invoked per element. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns the new duplicate free array. + */ +function baseUniq(array, iteratee, comparator) { + var index = -1, + includes = _arrayIncludes/* default */.A, + length = array.length, + isCommon = true, + result = [], + seen = result; + + if (comparator) { + isCommon = false; + includes = _arrayIncludesWith/* default */.A; + } + else if (length >= LARGE_ARRAY_SIZE) { + var set = iteratee ? null : _createSet(array); + if (set) { + return (0,_setToArray/* default */.A)(set); + } + isCommon = false; + includes = _cacheHas/* default */.A; + seen = new _SetCache/* default */.A; + } + else { + seen = iteratee ? [] : result; + } + outer: + while (++index < length) { + var value = array[index], + computed = iteratee ? iteratee(value) : value; + + value = (comparator || value !== 0) ? value : 0; + if (isCommon && computed === computed) { + var seenIndex = seen.length; + while (seenIndex--) { + if (seen[seenIndex] === computed) { + continue outer; + } + } + if (iteratee) { + seen.push(computed); + } + result.push(value); + } + else if (!includes(seen, computed, comparator)) { + if (seen !== result) { + seen.push(computed); + } + result.push(value); + } + } + return result; +} + +/* harmony default export */ const _baseUniq = (baseUniq); + + +/***/ }), + +/***/ 64099: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * Checks if a `cache` value for `key` exists. + * + * @private + * @param {Object} cache The cache to query. + * @param {string} key The key of the entry to check. + * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. + */ +function cacheHas(cache, key) { + return cache.has(key); +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (cacheHas); + + +/***/ }), + +/***/ 99922: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _identity_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(29008); + + +/** + * Casts `value` to `identity` if it's not a function. + * + * @private + * @param {*} value The value to inspect. + * @returns {Function} Returns cast function. + */ +function castFunction(value) { + return typeof value == 'function' ? value : _identity_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (castFunction); + + +/***/ }), + +/***/ 7819: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ _castPath) +}); + +// EXTERNAL MODULE: ./node_modules/lodash-es/isArray.js +var isArray = __webpack_require__(92049); +// EXTERNAL MODULE: ./node_modules/lodash-es/_isKey.js +var _isKey = __webpack_require__(86586); +// EXTERNAL MODULE: ./node_modules/lodash-es/memoize.js +var memoize = __webpack_require__(46632); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_memoizeCapped.js + + +/** Used as the maximum memoize cache size. */ +var MAX_MEMOIZE_SIZE = 500; + +/** + * A specialized version of `_.memoize` which clears the memoized function's + * cache when it exceeds `MAX_MEMOIZE_SIZE`. + * + * @private + * @param {Function} func The function to have its output memoized. + * @returns {Function} Returns the new memoized function. + */ +function memoizeCapped(func) { + var result = (0,memoize/* default */.A)(func, function(key) { + if (cache.size === MAX_MEMOIZE_SIZE) { + cache.clear(); + } + return key; + }); + + var cache = result.cache; + return result; +} + +/* harmony default export */ const _memoizeCapped = (memoizeCapped); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_stringToPath.js + + +/** Used to match property names within property paths. */ +var rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g; + +/** Used to match backslashes in property paths. */ +var reEscapeChar = /\\(\\)?/g; + +/** + * Converts `string` to a property path array. + * + * @private + * @param {string} string The string to convert. + * @returns {Array} Returns the property path array. + */ +var stringToPath = _memoizeCapped(function(string) { + var result = []; + if (string.charCodeAt(0) === 46 /* . */) { + result.push(''); + } + string.replace(rePropName, function(match, number, quote, subString) { + result.push(quote ? subString.replace(reEscapeChar, '$1') : (number || match)); + }); + return result; +}); + +/* harmony default export */ const _stringToPath = (stringToPath); + +// EXTERNAL MODULE: ./node_modules/lodash-es/toString.js + 1 modules +var lodash_es_toString = __webpack_require__(28894); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_castPath.js + + + + + +/** + * Casts `value` to a path array if it's not one. + * + * @private + * @param {*} value The value to inspect. + * @param {Object} [object] The object to query keys on. + * @returns {Array} Returns the cast property path array. + */ +function castPath(value, object) { + if ((0,isArray/* default */.A)(value)) { + return value; + } + return (0,_isKey/* default */.A)(value, object) ? [value] : _stringToPath((0,lodash_es_toString/* default */.A)(value)); +} + +/* harmony default export */ const _castPath = (castPath); + + +/***/ }), + +/***/ 19042: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _baseGetAllKeys_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(33831); +/* harmony import */ var _getSymbols_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(14792); +/* harmony import */ var _keys_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(27422); + + + + +/** + * Creates an array of own enumerable property names and symbols of `object`. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names and symbols. + */ +function getAllKeys(object) { + return (0,_baseGetAllKeys_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(object, _keys_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A, _getSymbols_js__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A); +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (getAllKeys); + + +/***/ }), + +/***/ 83973: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _baseGetAllKeys_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(33831); +/* harmony import */ var _getSymbolsIn_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(83511); +/* harmony import */ var _keysIn_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(55615); + + + + +/** + * Creates an array of own and inherited enumerable property names and + * symbols of `object`. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names and symbols. + */ +function getAllKeysIn(object) { + return (0,_baseGetAllKeys_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(object, _keysIn_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A, _getSymbolsIn_js__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A); +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (getAllKeysIn); + + +/***/ }), + +/***/ 14792: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _arrayFilter_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(2634); +/* harmony import */ var _stubArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(13153); + + + +/** Used for built-in method references. */ +var objectProto = Object.prototype; + +/** Built-in value references. */ +var propertyIsEnumerable = objectProto.propertyIsEnumerable; + +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeGetSymbols = Object.getOwnPropertySymbols; + +/** + * Creates an array of the own enumerable symbols of `object`. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of symbols. + */ +var getSymbols = !nativeGetSymbols ? _stubArray_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A : function(object) { + if (object == null) { + return []; + } + object = Object(object); + return (0,_arrayFilter_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A)(nativeGetSymbols(object), function(symbol) { + return propertyIsEnumerable.call(object, symbol); + }); +}; + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (getSymbols); + + +/***/ }), + +/***/ 83511: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _arrayPush_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(76912); +/* harmony import */ var _getPrototype_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(15647); +/* harmony import */ var _getSymbols_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(14792); +/* harmony import */ var _stubArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(13153); + + + + + +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeGetSymbols = Object.getOwnPropertySymbols; + +/** + * Creates an array of the own and inherited enumerable symbols of `object`. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of symbols. + */ +var getSymbolsIn = !nativeGetSymbols ? _stubArray_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A : function(object) { + var result = []; + while (object) { + (0,_arrayPush_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A)(result, (0,_getSymbols_js__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A)(object)); + object = (0,_getPrototype_js__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A)(object); + } + return result; +}; + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (getSymbolsIn); + + +/***/ }), + +/***/ 85054: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _castPath_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(7819); +/* harmony import */ var _isArguments_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(52274); +/* harmony import */ var _isArray_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(92049); +/* harmony import */ var _isIndex_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(25353); +/* harmony import */ var _isLength_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(5254); +/* harmony import */ var _toKey_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(30901); + + + + + + + +/** + * Checks if `path` exists on `object`. + * + * @private + * @param {Object} object The object to query. + * @param {Array|string} path The path to check. + * @param {Function} hasFunc The function to check properties. + * @returns {boolean} Returns `true` if `path` exists, else `false`. + */ +function hasPath(object, path, hasFunc) { + path = (0,_castPath_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(path, object); + + var index = -1, + length = path.length, + result = false; + + while (++index < length) { + var key = (0,_toKey_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A)(path[index]); + if (!(result = object != null && hasFunc(object, key))) { + break; + } + object = object[key]; + } + if (result || ++index != length) { + return result; + } + length = object == null ? 0 : object.length; + return !!length && (0,_isLength_js__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A)(length) && (0,_isIndex_js__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A)(key, length) && + ((0,_isArray_js__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .A)(object) || (0,_isArguments_js__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .A)(object)); +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (hasPath); + + +/***/ }), + +/***/ 86586: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _isArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(92049); +/* harmony import */ var _isSymbol_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(61882); + + + +/** Used to match property names within property paths. */ +var reIsDeepProp = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/, + reIsPlainProp = /^\w*$/; + +/** + * Checks if `value` is a property name and not a property path. + * + * @private + * @param {*} value The value to check. + * @param {Object} [object] The object to query keys on. + * @returns {boolean} Returns `true` if `value` is a property name, else `false`. + */ +function isKey(value, object) { + if ((0,_isArray_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(value)) { + return false; + } + var type = typeof value; + if (type == 'number' || type == 'symbol' || type == 'boolean' || + value == null || (0,_isSymbol_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A)(value)) { + return true; + } + return reIsPlainProp.test(value) || !reIsDeepProp.test(value) || + (object != null && value in Object(object)); +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (isKey); + + +/***/ }), + +/***/ 29959: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * Converts `set` to an array of its values. + * + * @private + * @param {Object} set The set to convert. + * @returns {Array} Returns the values. + */ +function setToArray(set) { + var index = -1, + result = Array(set.size); + + set.forEach(function(value) { + result[++index] = value; + }); + return result; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (setToArray); + + +/***/ }), + +/***/ 30901: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _isSymbol_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(61882); + + +/** Used as references for various `Number` constants. */ +var INFINITY = 1 / 0; + +/** + * Converts `value` to a string key if it's not a string or symbol. + * + * @private + * @param {*} value The value to inspect. + * @returns {string|symbol} Returns the key. + */ +function toKey(value) { + if (typeof value == 'string' || (0,_isSymbol_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(value)) { + return value; + } + var result = (value + ''); + return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (toKey); + + +/***/ }), + +/***/ 50053: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _baseClone_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(68675); + + +/** Used to compose bitmasks for cloning. */ +var CLONE_SYMBOLS_FLAG = 4; + +/** + * Creates a shallow clone of `value`. + * + * **Note:** This method is loosely based on the + * [structured clone algorithm](https://mdn.io/Structured_clone_algorithm) + * and supports cloning arrays, array buffers, booleans, date objects, maps, + * numbers, `Object` objects, regexes, sets, strings, symbols, and typed + * arrays. The own enumerable properties of `arguments` objects are cloned + * as plain objects. An empty object is returned for uncloneable values such + * as error objects, functions, DOM nodes, and WeakMaps. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to clone. + * @returns {*} Returns the cloned value. + * @see _.cloneDeep + * @example + * + * var objects = [{ 'a': 1 }, { 'b': 2 }]; + * + * var shallow = _.clone(objects); + * console.log(shallow[0] === objects[0]); + * // => true + */ +function clone(value) { + return (0,_baseClone_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(value, CLONE_SYMBOLS_FLAG); +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (clone); + + +/***/ }), + +/***/ 23068: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _baseRest_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(24326); +/* harmony import */ var _eq_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(66984); +/* harmony import */ var _isIterateeCall_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6832); +/* harmony import */ var _keysIn_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(55615); + + + + + +/** Used for built-in method references. */ +var objectProto = Object.prototype; + +/** Used to check objects for own properties. */ +var hasOwnProperty = objectProto.hasOwnProperty; + +/** + * Assigns own and inherited enumerable string keyed properties of source + * objects to the destination object for all destination properties that + * resolve to `undefined`. Source objects are applied from left to right. + * Once a property is set, additional values of the same property are ignored. + * + * **Note:** This method mutates `object`. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The destination object. + * @param {...Object} [sources] The source objects. + * @returns {Object} Returns `object`. + * @see _.defaultsDeep + * @example + * + * _.defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 }); + * // => { 'a': 1, 'b': 2 } + */ +var defaults = (0,_baseRest_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(function(object, sources) { + object = Object(object); + + var index = -1; + var length = sources.length; + var guard = length > 2 ? sources[2] : undefined; + + if (guard && (0,_isIterateeCall_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A)(sources[0], sources[1], guard)) { + length = 1; + } + + while (++index < length) { + var source = sources[index]; + var props = (0,_keysIn_js__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A)(source); + var propsIndex = -1; + var propsLength = props.length; + + while (++propsIndex < propsLength) { + var key = props[propsIndex]; + var value = object[key]; + + if (value === undefined || + ((0,_eq_js__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A)(value, objectProto[key]) && !hasOwnProperty.call(object, key))) { + object[key] = source[key]; + } + } + } + + return object; +}); + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (defaults); + + +/***/ }), + +/***/ 94092: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _arrayFilter_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(2634); +/* harmony import */ var _baseFilter_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(51790); +/* harmony import */ var _baseIteratee_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(23958); +/* harmony import */ var _isArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(92049); + + + + + +/** + * Iterates over elements of `collection`, returning an array of all elements + * `predicate` returns truthy for. The predicate is invoked with three + * arguments: (value, index|key, collection). + * + * **Note:** Unlike `_.remove`, this method returns a new array. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @returns {Array} Returns the new filtered array. + * @see _.reject + * @example + * + * var users = [ + * { 'user': 'barney', 'age': 36, 'active': true }, + * { 'user': 'fred', 'age': 40, 'active': false } + * ]; + * + * _.filter(users, function(o) { return !o.active; }); + * // => objects for ['fred'] + * + * // The `_.matches` iteratee shorthand. + * _.filter(users, { 'age': 36, 'active': true }); + * // => objects for ['barney'] + * + * // The `_.matchesProperty` iteratee shorthand. + * _.filter(users, ['active', false]); + * // => objects for ['fred'] + * + * // The `_.property` iteratee shorthand. + * _.filter(users, 'active'); + * // => objects for ['barney'] + * + * // Combining several predicates using `_.overEvery` or `_.overSome`. + * _.filter(users, _.overSome([{ 'age': 36 }, ['age', 40]])); + * // => objects for ['fred', 'barney'] + */ +function filter(collection, predicate) { + var func = (0,_isArray_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(collection) ? _arrayFilter_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A : _baseFilter_js__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A; + return func(collection, (0,_baseIteratee_js__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A)(predicate, 3)); +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (filter); + + +/***/ }), + +/***/ 16145: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ lodash_es_find) +}); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseIteratee.js + 15 modules +var _baseIteratee = __webpack_require__(23958); +// EXTERNAL MODULE: ./node_modules/lodash-es/isArrayLike.js +var isArrayLike = __webpack_require__(38446); +// EXTERNAL MODULE: ./node_modules/lodash-es/keys.js +var keys = __webpack_require__(27422); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_createFind.js + + + + +/** + * Creates a `_.find` or `_.findLast` function. + * + * @private + * @param {Function} findIndexFunc The function to find the collection index. + * @returns {Function} Returns the new find function. + */ +function createFind(findIndexFunc) { + return function(collection, predicate, fromIndex) { + var iterable = Object(collection); + if (!(0,isArrayLike/* default */.A)(collection)) { + var iteratee = (0,_baseIteratee/* default */.A)(predicate, 3); + collection = (0,keys/* default */.A)(collection); + predicate = function(key) { return iteratee(iterable[key], key, iterable); }; + } + var index = findIndexFunc(collection, predicate, fromIndex); + return index > -1 ? iterable[iteratee ? collection[index] : index] : undefined; + }; +} + +/* harmony default export */ const _createFind = (createFind); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseFindIndex.js +var _baseFindIndex = __webpack_require__(25707); +// EXTERNAL MODULE: ./node_modules/lodash-es/toInteger.js +var toInteger = __webpack_require__(18593); +;// CONCATENATED MODULE: ./node_modules/lodash-es/findIndex.js + + + + +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeMax = Math.max; + +/** + * This method is like `_.find` except that it returns the index of the first + * element `predicate` returns truthy for instead of the element itself. + * + * @static + * @memberOf _ + * @since 1.1.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @param {number} [fromIndex=0] The index to search from. + * @returns {number} Returns the index of the found element, else `-1`. + * @example + * + * var users = [ + * { 'user': 'barney', 'active': false }, + * { 'user': 'fred', 'active': false }, + * { 'user': 'pebbles', 'active': true } + * ]; + * + * _.findIndex(users, function(o) { return o.user == 'barney'; }); + * // => 0 + * + * // The `_.matches` iteratee shorthand. + * _.findIndex(users, { 'user': 'fred', 'active': false }); + * // => 1 + * + * // The `_.matchesProperty` iteratee shorthand. + * _.findIndex(users, ['active', false]); + * // => 0 + * + * // The `_.property` iteratee shorthand. + * _.findIndex(users, 'active'); + * // => 2 + */ +function findIndex(array, predicate, fromIndex) { + var length = array == null ? 0 : array.length; + if (!length) { + return -1; + } + var index = fromIndex == null ? 0 : (0,toInteger/* default */.A)(fromIndex); + if (index < 0) { + index = nativeMax(length + index, 0); + } + return (0,_baseFindIndex/* default */.A)(array, (0,_baseIteratee/* default */.A)(predicate, 3), index); +} + +/* harmony default export */ const lodash_es_findIndex = (findIndex); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/find.js + + + +/** + * Iterates over elements of `collection`, returning the first element + * `predicate` returns truthy for. The predicate is invoked with three + * arguments: (value, index|key, collection). + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to inspect. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @param {number} [fromIndex=0] The index to search from. + * @returns {*} Returns the matched element, else `undefined`. + * @example + * + * var users = [ + * { 'user': 'barney', 'age': 36, 'active': true }, + * { 'user': 'fred', 'age': 40, 'active': false }, + * { 'user': 'pebbles', 'age': 1, 'active': true } + * ]; + * + * _.find(users, function(o) { return o.age < 40; }); + * // => object for 'barney' + * + * // The `_.matches` iteratee shorthand. + * _.find(users, { 'age': 1, 'active': true }); + * // => object for 'pebbles' + * + * // The `_.matchesProperty` iteratee shorthand. + * _.find(users, ['active', false]); + * // => object for 'fred' + * + * // The `_.property` iteratee shorthand. + * _.find(users, 'active'); + * // => object for 'barney' + */ +var find = _createFind(lodash_es_findIndex); + +/* harmony default export */ const lodash_es_find = (find); + + +/***/ }), + +/***/ 34098: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _baseFlatten_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(13588); + + +/** + * Flattens `array` a single level deep. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to flatten. + * @returns {Array} Returns the new flattened array. + * @example + * + * _.flatten([1, [2, [3, [4]], 5]]); + * // => [1, 2, [3, [4]], 5] + */ +function flatten(array) { + var length = array == null ? 0 : array.length; + return length ? (0,_baseFlatten_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(array, 1) : []; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (flatten); + + +/***/ }), + +/***/ 8058: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _arrayEach_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(72641); +/* harmony import */ var _baseEach_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(6240); +/* harmony import */ var _castFunction_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(99922); +/* harmony import */ var _isArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(92049); + + + + + +/** + * Iterates over elements of `collection` and invokes `iteratee` for each element. + * The iteratee is invoked with three arguments: (value, index|key, collection). + * Iteratee functions may exit iteration early by explicitly returning `false`. + * + * **Note:** As with other "Collections" methods, objects with a "length" + * property are iterated like arrays. To avoid this behavior use `_.forIn` + * or `_.forOwn` for object iteration. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @alias each + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Array|Object} Returns `collection`. + * @see _.forEachRight + * @example + * + * _.forEach([1, 2], function(value) { + * console.log(value); + * }); + * // => Logs `1` then `2`. + * + * _.forEach({ 'a': 1, 'b': 2 }, function(value, key) { + * console.log(key); + * }); + * // => Logs 'a' then 'b' (iteration order is not guaranteed). + */ +function forEach(collection, iteratee) { + var func = (0,_isArray_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(collection) ? _arrayEach_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A : _baseEach_js__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A; + return func(collection, (0,_castFunction_js__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A)(iteratee)); +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (forEach); + + +/***/ }), + +/***/ 48585: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ lodash_es_has) +}); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseHas.js +/** Used for built-in method references. */ +var objectProto = Object.prototype; + +/** Used to check objects for own properties. */ +var _baseHas_hasOwnProperty = objectProto.hasOwnProperty; + +/** + * The base implementation of `_.has` without support for deep paths. + * + * @private + * @param {Object} [object] The object to query. + * @param {Array|string} key The key to check. + * @returns {boolean} Returns `true` if `key` exists, else `false`. + */ +function baseHas(object, key) { + return object != null && _baseHas_hasOwnProperty.call(object, key); +} + +/* harmony default export */ const _baseHas = (baseHas); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_hasPath.js +var _hasPath = __webpack_require__(85054); +;// CONCATENATED MODULE: ./node_modules/lodash-es/has.js + + + +/** + * Checks if `path` is a direct property of `object`. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The object to query. + * @param {Array|string} path The path to check. + * @returns {boolean} Returns `true` if `path` exists, else `false`. + * @example + * + * var object = { 'a': { 'b': 2 } }; + * var other = _.create({ 'a': _.create({ 'b': 2 }) }); + * + * _.has(object, 'a'); + * // => true + * + * _.has(object, 'a.b'); + * // => true + * + * _.has(object, ['a', 'b']); + * // => true + * + * _.has(other, 'a'); + * // => false + */ +function has(object, path) { + return object != null && (0,_hasPath/* default */.A)(object, path, _baseHas); +} + +/* harmony default export */ const lodash_es_has = (has); + + +/***/ }), + +/***/ 16807: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ lodash_es_hasIn) +}); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseHasIn.js +/** + * The base implementation of `_.hasIn` without support for deep paths. + * + * @private + * @param {Object} [object] The object to query. + * @param {Array|string} key The key to check. + * @returns {boolean} Returns `true` if `key` exists, else `false`. + */ +function baseHasIn(object, key) { + return object != null && key in Object(object); +} + +/* harmony default export */ const _baseHasIn = (baseHasIn); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_hasPath.js +var _hasPath = __webpack_require__(85054); +;// CONCATENATED MODULE: ./node_modules/lodash-es/hasIn.js + + + +/** + * Checks if `path` is a direct or inherited property of `object`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Object + * @param {Object} object The object to query. + * @param {Array|string} path The path to check. + * @returns {boolean} Returns `true` if `path` exists, else `false`. + * @example + * + * var object = _.create({ 'a': _.create({ 'b': 2 }) }); + * + * _.hasIn(object, 'a'); + * // => true + * + * _.hasIn(object, 'a.b'); + * // => true + * + * _.hasIn(object, ['a', 'b']); + * // => true + * + * _.hasIn(object, 'b'); + * // => false + */ +function hasIn(object, path) { + return object != null && (0,_hasPath/* default */.A)(object, path, _baseHasIn); +} + +/* harmony default export */ const lodash_es_hasIn = (hasIn); + + +/***/ }), + +/***/ 9703: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _baseGetTag_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(88496); +/* harmony import */ var _isArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(92049); +/* harmony import */ var _isObjectLike_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(53098); + + + + +/** `Object#toString` result references. */ +var stringTag = '[object String]'; + +/** + * Checks if `value` is classified as a `String` primitive or object. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a string, else `false`. + * @example + * + * _.isString('abc'); + * // => true + * + * _.isString(1); + * // => false + */ +function isString(value) { + return typeof value == 'string' || + (!(0,_isArray_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(value) && (0,_isObjectLike_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A)(value) && (0,_baseGetTag_js__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A)(value) == stringTag); +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (isString); + + +/***/ }), + +/***/ 61882: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _baseGetTag_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(88496); +/* harmony import */ var _isObjectLike_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(53098); + + + +/** `Object#toString` result references. */ +var symbolTag = '[object Symbol]'; + +/** + * Checks if `value` is classified as a `Symbol` primitive or object. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a symbol, else `false`. + * @example + * + * _.isSymbol(Symbol.iterator); + * // => true + * + * _.isSymbol('abc'); + * // => false + */ +function isSymbol(value) { + return typeof value == 'symbol' || + ((0,_isObjectLike_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(value) && (0,_baseGetTag_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A)(value) == symbolTag); +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (isSymbol); + + +/***/ }), + +/***/ 69592: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * Checks if `value` is `undefined`. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is `undefined`, else `false`. + * @example + * + * _.isUndefined(void 0); + * // => true + * + * _.isUndefined(null); + * // => false + */ +function isUndefined(value) { + return value === undefined; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (isUndefined); + + +/***/ }), + +/***/ 27422: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _arrayLikeKeys_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(83607); +/* harmony import */ var _baseKeys_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(69471); +/* harmony import */ var _isArrayLike_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(38446); + + + + +/** + * Creates an array of the own enumerable property names of `object`. + * + * **Note:** Non-object values are coerced to objects. See the + * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys) + * for more details. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names. + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.keys(new Foo); + * // => ['a', 'b'] (iteration order is not guaranteed) + * + * _.keys('hi'); + * // => ['0', '1'] + */ +function keys(object) { + return (0,_isArrayLike_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(object) ? (0,_arrayLikeKeys_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A)(object) : (0,_baseKeys_js__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A)(object); +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (keys); + + +/***/ }), + +/***/ 26666: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * Gets the last element of `array`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to query. + * @returns {*} Returns the last element of `array`. + * @example + * + * _.last([1, 2, 3]); + * // => 3 + */ +function last(array) { + var length = array == null ? 0 : array.length; + return length ? array[length - 1] : undefined; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (last); + + +/***/ }), + +/***/ 74722: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _arrayMap_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(45572); +/* harmony import */ var _baseIteratee_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(23958); +/* harmony import */ var _baseMap_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(52568); +/* harmony import */ var _isArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(92049); + + + + + +/** + * Creates an array of values by running each element in `collection` thru + * `iteratee`. The iteratee is invoked with three arguments: + * (value, index|key, collection). + * + * Many lodash methods are guarded to work as iteratees for methods like + * `_.every`, `_.filter`, `_.map`, `_.mapValues`, `_.reject`, and `_.some`. + * + * The guarded methods are: + * `ary`, `chunk`, `curry`, `curryRight`, `drop`, `dropRight`, `every`, + * `fill`, `invert`, `parseInt`, `random`, `range`, `rangeRight`, `repeat`, + * `sampleSize`, `slice`, `some`, `sortBy`, `split`, `take`, `takeRight`, + * `template`, `trim`, `trimEnd`, `trimStart`, and `words` + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Array} Returns the new mapped array. + * @example + * + * function square(n) { + * return n * n; + * } + * + * _.map([4, 8], square); + * // => [16, 64] + * + * _.map({ 'a': 4, 'b': 8 }, square); + * // => [16, 64] (iteration order is not guaranteed) + * + * var users = [ + * { 'user': 'barney' }, + * { 'user': 'fred' } + * ]; + * + * // The `_.property` iteratee shorthand. + * _.map(users, 'user'); + * // => ['barney', 'fred'] + */ +function map(collection, iteratee) { + var func = (0,_isArray_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(collection) ? _arrayMap_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A : _baseMap_js__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A; + return func(collection, (0,_baseIteratee_js__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A)(iteratee, 3)); +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (map); + + +/***/ }), + +/***/ 86452: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _baseExtremum_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(72559); +/* harmony import */ var _baseLt_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(36224); +/* harmony import */ var _identity_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(29008); + + + + +/** + * Computes the minimum value of `array`. If `array` is empty or falsey, + * `undefined` is returned. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Math + * @param {Array} array The array to iterate over. + * @returns {*} Returns the minimum value. + * @example + * + * _.min([4, 2, 8, 6]); + * // => 2 + * + * _.min([]); + * // => undefined + */ +function min(array) { + return (array && array.length) + ? (0,_baseExtremum_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(array, _identity_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A, _baseLt_js__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A) + : undefined; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (min); + + +/***/ }), + +/***/ 42302: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * This method returns `undefined`. + * + * @static + * @memberOf _ + * @since 2.3.0 + * @category Util + * @example + * + * _.times(2, _.noop); + * // => [undefined, undefined] + */ +function noop() { + // No operation performed. +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (noop); + + +/***/ }), + +/***/ 89463: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ lodash_es_reduce) +}); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_arrayReduce.js +/** + * A specialized version of `_.reduce` for arrays without support for + * iteratee shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @param {*} [accumulator] The initial value. + * @param {boolean} [initAccum] Specify using the first element of `array` as + * the initial value. + * @returns {*} Returns the accumulated value. + */ +function arrayReduce(array, iteratee, accumulator, initAccum) { + var index = -1, + length = array == null ? 0 : array.length; + + if (initAccum && length) { + accumulator = array[++index]; + } + while (++index < length) { + accumulator = iteratee(accumulator, array[index], index, array); + } + return accumulator; +} + +/* harmony default export */ const _arrayReduce = (arrayReduce); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseEach.js + 1 modules +var _baseEach = __webpack_require__(6240); +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseIteratee.js + 15 modules +var _baseIteratee = __webpack_require__(23958); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseReduce.js +/** + * The base implementation of `_.reduce` and `_.reduceRight`, without support + * for iteratee shorthands, which iterates over `collection` using `eachFunc`. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @param {*} accumulator The initial value. + * @param {boolean} initAccum Specify using the first or last element of + * `collection` as the initial value. + * @param {Function} eachFunc The function to iterate over `collection`. + * @returns {*} Returns the accumulated value. + */ +function baseReduce(collection, iteratee, accumulator, initAccum, eachFunc) { + eachFunc(collection, function(value, index, collection) { + accumulator = initAccum + ? (initAccum = false, value) + : iteratee(accumulator, value, index, collection); + }); + return accumulator; +} + +/* harmony default export */ const _baseReduce = (baseReduce); + +// EXTERNAL MODULE: ./node_modules/lodash-es/isArray.js +var isArray = __webpack_require__(92049); +;// CONCATENATED MODULE: ./node_modules/lodash-es/reduce.js + + + + + + +/** + * Reduces `collection` to a value which is the accumulated result of running + * each element in `collection` thru `iteratee`, where each successive + * invocation is supplied the return value of the previous. If `accumulator` + * is not given, the first element of `collection` is used as the initial + * value. The iteratee is invoked with four arguments: + * (accumulator, value, index|key, collection). + * + * Many lodash methods are guarded to work as iteratees for methods like + * `_.reduce`, `_.reduceRight`, and `_.transform`. + * + * The guarded methods are: + * `assign`, `defaults`, `defaultsDeep`, `includes`, `merge`, `orderBy`, + * and `sortBy` + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @param {*} [accumulator] The initial value. + * @returns {*} Returns the accumulated value. + * @see _.reduceRight + * @example + * + * _.reduce([1, 2], function(sum, n) { + * return sum + n; + * }, 0); + * // => 3 + * + * _.reduce({ 'a': 1, 'b': 2, 'c': 1 }, function(result, value, key) { + * (result[value] || (result[value] = [])).push(key); + * return result; + * }, {}); + * // => { '1': ['a', 'c'], '2': ['b'] } (iteration order is not guaranteed) + */ +function reduce(collection, iteratee, accumulator) { + var func = (0,isArray/* default */.A)(collection) ? _arrayReduce : _baseReduce, + initAccum = arguments.length < 3; + + return func(collection, (0,_baseIteratee/* default */.A)(iteratee, 4), accumulator, initAccum, _baseEach/* default */.A); +} + +/* harmony default export */ const lodash_es_reduce = (reduce); + + +/***/ }), + +/***/ 13153: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * This method returns a new empty array. + * + * @static + * @memberOf _ + * @since 4.13.0 + * @category Util + * @returns {Array} Returns the new empty array. + * @example + * + * var arrays = _.times(2, _.stubArray); + * + * console.log(arrays); + * // => [[], []] + * + * console.log(arrays[0] === arrays[1]); + * // => false + */ +function stubArray() { + return []; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (stubArray); + + +/***/ }), + +/***/ 74342: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ lodash_es_toFinite) +}); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_trimmedEndIndex.js +/** Used to match a single whitespace character. */ +var reWhitespace = /\s/; + +/** + * Used by `_.trim` and `_.trimEnd` to get the index of the last non-whitespace + * character of `string`. + * + * @private + * @param {string} string The string to inspect. + * @returns {number} Returns the index of the last non-whitespace character. + */ +function trimmedEndIndex(string) { + var index = string.length; + + while (index-- && reWhitespace.test(string.charAt(index))) {} + return index; +} + +/* harmony default export */ const _trimmedEndIndex = (trimmedEndIndex); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseTrim.js + + +/** Used to match leading whitespace. */ +var reTrimStart = /^\s+/; + +/** + * The base implementation of `_.trim`. + * + * @private + * @param {string} string The string to trim. + * @returns {string} Returns the trimmed string. + */ +function baseTrim(string) { + return string + ? string.slice(0, _trimmedEndIndex(string) + 1).replace(reTrimStart, '') + : string; +} + +/* harmony default export */ const _baseTrim = (baseTrim); + +// EXTERNAL MODULE: ./node_modules/lodash-es/isObject.js +var isObject = __webpack_require__(23149); +// EXTERNAL MODULE: ./node_modules/lodash-es/isSymbol.js +var isSymbol = __webpack_require__(61882); +;// CONCATENATED MODULE: ./node_modules/lodash-es/toNumber.js + + + + +/** Used as references for various `Number` constants. */ +var NAN = 0 / 0; + +/** Used to detect bad signed hexadecimal string values. */ +var reIsBadHex = /^[-+]0x[0-9a-f]+$/i; + +/** Used to detect binary string values. */ +var reIsBinary = /^0b[01]+$/i; + +/** Used to detect octal string values. */ +var reIsOctal = /^0o[0-7]+$/i; + +/** Built-in method references without a dependency on `root`. */ +var freeParseInt = parseInt; + +/** + * Converts `value` to a number. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to process. + * @returns {number} Returns the number. + * @example + * + * _.toNumber(3.2); + * // => 3.2 + * + * _.toNumber(Number.MIN_VALUE); + * // => 5e-324 + * + * _.toNumber(Infinity); + * // => Infinity + * + * _.toNumber('3.2'); + * // => 3.2 + */ +function toNumber(value) { + if (typeof value == 'number') { + return value; + } + if ((0,isSymbol/* default */.A)(value)) { + return NAN; + } + if ((0,isObject/* default */.A)(value)) { + var other = typeof value.valueOf == 'function' ? value.valueOf() : value; + value = (0,isObject/* default */.A)(other) ? (other + '') : other; + } + if (typeof value != 'string') { + return value === 0 ? value : +value; + } + value = _baseTrim(value); + var isBinary = reIsBinary.test(value); + return (isBinary || reIsOctal.test(value)) + ? freeParseInt(value.slice(2), isBinary ? 2 : 8) + : (reIsBadHex.test(value) ? NAN : +value); +} + +/* harmony default export */ const lodash_es_toNumber = (toNumber); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/toFinite.js + + +/** Used as references for various `Number` constants. */ +var INFINITY = 1 / 0, + MAX_INTEGER = 1.7976931348623157e+308; + +/** + * Converts `value` to a finite number. + * + * @static + * @memberOf _ + * @since 4.12.0 + * @category Lang + * @param {*} value The value to convert. + * @returns {number} Returns the converted number. + * @example + * + * _.toFinite(3.2); + * // => 3.2 + * + * _.toFinite(Number.MIN_VALUE); + * // => 5e-324 + * + * _.toFinite(Infinity); + * // => 1.7976931348623157e+308 + * + * _.toFinite('3.2'); + * // => 3.2 + */ +function toFinite(value) { + if (!value) { + return value === 0 ? value : 0; + } + value = lodash_es_toNumber(value); + if (value === INFINITY || value === -INFINITY) { + var sign = (value < 0 ? -1 : 1); + return sign * MAX_INTEGER; + } + return value === value ? value : 0; +} + +/* harmony default export */ const lodash_es_toFinite = (toFinite); + + +/***/ }), + +/***/ 18593: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _toFinite_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(74342); + + +/** + * Converts `value` to an integer. + * + * **Note:** This method is loosely based on + * [`ToInteger`](http://www.ecma-international.org/ecma-262/7.0/#sec-tointeger). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to convert. + * @returns {number} Returns the converted integer. + * @example + * + * _.toInteger(3.2); + * // => 3 + * + * _.toInteger(Number.MIN_VALUE); + * // => 0 + * + * _.toInteger(Infinity); + * // => 1.7976931348623157e+308 + * + * _.toInteger('3.2'); + * // => 3 + */ +function toInteger(value) { + var result = (0,_toFinite_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(value), + remainder = result % 1; + + return result === result ? (remainder ? result - remainder : result) : 0; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (toInteger); + + +/***/ }), + +/***/ 28894: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ lodash_es_toString) +}); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_Symbol.js +var _Symbol = __webpack_require__(241); +// EXTERNAL MODULE: ./node_modules/lodash-es/_arrayMap.js +var _arrayMap = __webpack_require__(45572); +// EXTERNAL MODULE: ./node_modules/lodash-es/isArray.js +var isArray = __webpack_require__(92049); +// EXTERNAL MODULE: ./node_modules/lodash-es/isSymbol.js +var isSymbol = __webpack_require__(61882); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseToString.js + + + + + +/** Used as references for various `Number` constants. */ +var INFINITY = 1 / 0; + +/** Used to convert symbols to primitives and strings. */ +var symbolProto = _Symbol/* default */.A ? _Symbol/* default */.A.prototype : undefined, + symbolToString = symbolProto ? symbolProto.toString : undefined; + +/** + * The base implementation of `_.toString` which doesn't convert nullish + * values to empty strings. + * + * @private + * @param {*} value The value to process. + * @returns {string} Returns the string. + */ +function baseToString(value) { + // Exit early for strings to avoid a performance hit in some environments. + if (typeof value == 'string') { + return value; + } + if ((0,isArray/* default */.A)(value)) { + // Recursively convert values (susceptible to call stack limits). + return (0,_arrayMap/* default */.A)(value, baseToString) + ''; + } + if ((0,isSymbol/* default */.A)(value)) { + return symbolToString ? symbolToString.call(value) : ''; + } + var result = (value + ''); + return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result; +} + +/* harmony default export */ const _baseToString = (baseToString); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/toString.js + + +/** + * Converts `value` to a string. An empty string is returned for `null` + * and `undefined` values. The sign of `-0` is preserved. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to convert. + * @returns {string} Returns the converted string. + * @example + * + * _.toString(null); + * // => '' + * + * _.toString(-0); + * // => '-0' + * + * _.toString([1, 2, 3]); + * // => '1,2,3' + */ +function toString_toString(value) { + return value == null ? '' : _baseToString(value); +} + +/* harmony default export */ const lodash_es_toString = (toString_toString); + + +/***/ }), + +/***/ 38207: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ lodash_es_values) +}); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_arrayMap.js +var _arrayMap = __webpack_require__(45572); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseValues.js + + +/** + * The base implementation of `_.values` and `_.valuesIn` which creates an + * array of `object` property values corresponding to the property names + * of `props`. + * + * @private + * @param {Object} object The object to query. + * @param {Array} props The property names to get values for. + * @returns {Object} Returns the array of property values. + */ +function baseValues(object, props) { + return (0,_arrayMap/* default */.A)(props, function(key) { + return object[key]; + }); +} + +/* harmony default export */ const _baseValues = (baseValues); + +// EXTERNAL MODULE: ./node_modules/lodash-es/keys.js +var keys = __webpack_require__(27422); +;// CONCATENATED MODULE: ./node_modules/lodash-es/values.js + + + +/** + * Creates an array of the own enumerable string keyed property values of `object`. + * + * **Note:** Non-object values are coerced to objects. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property values. + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.values(new Foo); + * // => [1, 2] (iteration order is not guaranteed) + * + * _.values('hi'); + * // => ['h', 'i'] + */ +function values(object) { + return object == null ? [] : _baseValues(object, (0,keys/* default */.A)(object)); +} + +/* harmony default export */ const lodash_es_values = (values); + + +/***/ }), + +/***/ 82207: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ _$: () => (/* binding */ classDiagram_default), +/* harmony export */ tM: () => (/* binding */ styles_default), +/* harmony export */ z2: () => (/* binding */ classDb_default) +/* harmony export */ }); +/* harmony import */ var _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(57323); +/* harmony import */ var _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(64994); +/* harmony import */ var d3__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(20007); + + + +// src/diagrams/class/parser/classDiagram.jison +var parser = function() { + var o = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(k, v, o2, l) { + for (o2 = o2 || {}, l = k.length; l--; o2[k[l]] = v) ; + return o2; + }, "o"), $V0 = [1, 17], $V1 = [1, 18], $V2 = [1, 19], $V3 = [1, 39], $V4 = [1, 40], $V5 = [1, 25], $V6 = [1, 23], $V7 = [1, 24], $V8 = [1, 31], $V9 = [1, 32], $Va = [1, 33], $Vb = [1, 34], $Vc = [1, 35], $Vd = [1, 36], $Ve = [1, 26], $Vf = [1, 27], $Vg = [1, 28], $Vh = [1, 29], $Vi = [1, 43], $Vj = [1, 30], $Vk = [1, 42], $Vl = [1, 44], $Vm = [1, 41], $Vn = [1, 45], $Vo = [1, 9], $Vp = [1, 8, 9], $Vq = [1, 56], $Vr = [1, 57], $Vs = [1, 58], $Vt = [1, 59], $Vu = [1, 60], $Vv = [1, 61], $Vw = [1, 62], $Vx = [1, 8, 9, 39], $Vy = [1, 74], $Vz = [1, 8, 9, 12, 13, 21, 37, 39, 42, 59, 60, 61, 62, 63, 64, 65, 70, 72], $VA = [1, 8, 9, 12, 13, 19, 21, 37, 39, 42, 46, 59, 60, 61, 62, 63, 64, 65, 70, 72, 74, 80, 95, 97, 98], $VB = [13, 74, 80, 95, 97, 98], $VC = [13, 64, 65, 74, 80, 95, 97, 98], $VD = [13, 59, 60, 61, 62, 63, 74, 80, 95, 97, 98], $VE = [1, 93], $VF = [1, 110], $VG = [1, 108], $VH = [1, 102], $VI = [1, 103], $VJ = [1, 104], $VK = [1, 105], $VL = [1, 106], $VM = [1, 107], $VN = [1, 109], $VO = [1, 8, 9, 37, 39, 42], $VP = [1, 8, 9, 21], $VQ = [1, 8, 9, 78], $VR = [1, 8, 9, 21, 73, 74, 78, 80, 81, 82, 83, 84, 85]; + var parser2 = { + trace: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function trace() { + }, "trace"), + yy: {}, + symbols_: { "error": 2, "start": 3, "mermaidDoc": 4, "statements": 5, "graphConfig": 6, "CLASS_DIAGRAM": 7, "NEWLINE": 8, "EOF": 9, "statement": 10, "classLabel": 11, "SQS": 12, "STR": 13, "SQE": 14, "namespaceName": 15, "alphaNumToken": 16, "className": 17, "classLiteralName": 18, "GENERICTYPE": 19, "relationStatement": 20, "LABEL": 21, "namespaceStatement": 22, "classStatement": 23, "memberStatement": 24, "annotationStatement": 25, "clickStatement": 26, "styleStatement": 27, "cssClassStatement": 28, "noteStatement": 29, "direction": 30, "acc_title": 31, "acc_title_value": 32, "acc_descr": 33, "acc_descr_value": 34, "acc_descr_multiline_value": 35, "namespaceIdentifier": 36, "STRUCT_START": 37, "classStatements": 38, "STRUCT_STOP": 39, "NAMESPACE": 40, "classIdentifier": 41, "STYLE_SEPARATOR": 42, "members": 43, "CLASS": 44, "ANNOTATION_START": 45, "ANNOTATION_END": 46, "MEMBER": 47, "SEPARATOR": 48, "relation": 49, "NOTE_FOR": 50, "noteText": 51, "NOTE": 52, "direction_tb": 53, "direction_bt": 54, "direction_rl": 55, "direction_lr": 56, "relationType": 57, "lineType": 58, "AGGREGATION": 59, "EXTENSION": 60, "COMPOSITION": 61, "DEPENDENCY": 62, "LOLLIPOP": 63, "LINE": 64, "DOTTED_LINE": 65, "CALLBACK": 66, "LINK": 67, "LINK_TARGET": 68, "CLICK": 69, "CALLBACK_NAME": 70, "CALLBACK_ARGS": 71, "HREF": 72, "STYLE": 73, "ALPHA": 74, "stylesOpt": 75, "CSSCLASS": 76, "style": 77, "COMMA": 78, "styleComponent": 79, "NUM": 80, "COLON": 81, "UNIT": 82, "SPACE": 83, "BRKT": 84, "PCT": 85, "commentToken": 86, "textToken": 87, "graphCodeTokens": 88, "textNoTagsToken": 89, "TAGSTART": 90, "TAGEND": 91, "==": 92, "--": 93, "DEFAULT": 94, "MINUS": 95, "keywords": 96, "UNICODE_TEXT": 97, "BQUOTE_STR": 98, "$accept": 0, "$end": 1 }, + terminals_: { 2: "error", 7: "CLASS_DIAGRAM", 8: "NEWLINE", 9: "EOF", 12: "SQS", 13: "STR", 14: "SQE", 19: "GENERICTYPE", 21: "LABEL", 31: "acc_title", 32: "acc_title_value", 33: "acc_descr", 34: "acc_descr_value", 35: "acc_descr_multiline_value", 37: "STRUCT_START", 39: "STRUCT_STOP", 40: "NAMESPACE", 42: "STYLE_SEPARATOR", 44: "CLASS", 45: "ANNOTATION_START", 46: "ANNOTATION_END", 47: "MEMBER", 48: "SEPARATOR", 50: "NOTE_FOR", 52: "NOTE", 53: "direction_tb", 54: "direction_bt", 55: "direction_rl", 56: "direction_lr", 59: "AGGREGATION", 60: "EXTENSION", 61: "COMPOSITION", 62: "DEPENDENCY", 63: "LOLLIPOP", 64: "LINE", 65: "DOTTED_LINE", 66: "CALLBACK", 67: "LINK", 68: "LINK_TARGET", 69: "CLICK", 70: "CALLBACK_NAME", 71: "CALLBACK_ARGS", 72: "HREF", 73: "STYLE", 74: "ALPHA", 76: "CSSCLASS", 78: "COMMA", 80: "NUM", 81: "COLON", 82: "UNIT", 83: "SPACE", 84: "BRKT", 85: "PCT", 88: "graphCodeTokens", 90: "TAGSTART", 91: "TAGEND", 92: "==", 93: "--", 94: "DEFAULT", 95: "MINUS", 96: "keywords", 97: "UNICODE_TEXT", 98: "BQUOTE_STR" }, + productions_: [0, [3, 1], [3, 1], [4, 1], [6, 4], [5, 1], [5, 2], [5, 3], [11, 3], [15, 1], [15, 2], [17, 1], [17, 1], [17, 2], [17, 2], [17, 2], [10, 1], [10, 2], [10, 1], [10, 1], [10, 1], [10, 1], [10, 1], [10, 1], [10, 1], [10, 1], [10, 1], [10, 2], [10, 2], [10, 1], [22, 4], [22, 5], [36, 2], [38, 1], [38, 2], [38, 3], [23, 1], [23, 3], [23, 4], [23, 6], [41, 2], [41, 3], [25, 4], [43, 1], [43, 2], [24, 1], [24, 2], [24, 1], [24, 1], [20, 3], [20, 4], [20, 4], [20, 5], [29, 3], [29, 2], [30, 1], [30, 1], [30, 1], [30, 1], [49, 3], [49, 2], [49, 2], [49, 1], [57, 1], [57, 1], [57, 1], [57, 1], [57, 1], [58, 1], [58, 1], [26, 3], [26, 4], [26, 3], [26, 4], [26, 4], [26, 5], [26, 3], [26, 4], [26, 4], [26, 5], [26, 4], [26, 5], [26, 5], [26, 6], [27, 3], [28, 3], [75, 1], [75, 3], [77, 1], [77, 2], [79, 1], [79, 1], [79, 1], [79, 1], [79, 1], [79, 1], [79, 1], [79, 1], [79, 1], [86, 1], [86, 1], [87, 1], [87, 1], [87, 1], [87, 1], [87, 1], [87, 1], [87, 1], [89, 1], [89, 1], [89, 1], [89, 1], [16, 1], [16, 1], [16, 1], [16, 1], [18, 1], [51, 1]], + performAction: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function anonymous(yytext, yyleng, yylineno, yy, yystate, $$, _$) { + var $0 = $$.length - 1; + switch (yystate) { + case 8: + this.$ = $$[$0 - 1]; + break; + case 9: + case 11: + case 12: + this.$ = $$[$0]; + break; + case 10: + case 13: + this.$ = $$[$0 - 1] + $$[$0]; + break; + case 14: + case 15: + this.$ = $$[$0 - 1] + "~" + $$[$0] + "~"; + break; + case 16: + yy.addRelation($$[$0]); + break; + case 17: + $$[$0 - 1].title = yy.cleanupLabel($$[$0]); + yy.addRelation($$[$0 - 1]); + break; + case 27: + this.$ = $$[$0].trim(); + yy.setAccTitle(this.$); + break; + case 28: + case 29: + this.$ = $$[$0].trim(); + yy.setAccDescription(this.$); + break; + case 30: + yy.addClassesToNamespace($$[$0 - 3], $$[$0 - 1]); + break; + case 31: + yy.addClassesToNamespace($$[$0 - 4], $$[$0 - 1]); + break; + case 32: + this.$ = $$[$0]; + yy.addNamespace($$[$0]); + break; + case 33: + this.$ = [$$[$0]]; + break; + case 34: + this.$ = [$$[$0 - 1]]; + break; + case 35: + $$[$0].unshift($$[$0 - 2]); + this.$ = $$[$0]; + break; + case 37: + yy.setCssClass($$[$0 - 2], $$[$0]); + break; + case 38: + yy.addMembers($$[$0 - 3], $$[$0 - 1]); + break; + case 39: + yy.setCssClass($$[$0 - 5], $$[$0 - 3]); + yy.addMembers($$[$0 - 5], $$[$0 - 1]); + break; + case 40: + this.$ = $$[$0]; + yy.addClass($$[$0]); + break; + case 41: + this.$ = $$[$0 - 1]; + yy.addClass($$[$0 - 1]); + yy.setClassLabel($$[$0 - 1], $$[$0]); + break; + case 42: + yy.addAnnotation($$[$0], $$[$0 - 2]); + break; + case 43: + this.$ = [$$[$0]]; + break; + case 44: + $$[$0].push($$[$0 - 1]); + this.$ = $$[$0]; + break; + case 45: + break; + case 46: + yy.addMember($$[$0 - 1], yy.cleanupLabel($$[$0])); + break; + case 47: + break; + case 48: + break; + case 49: + this.$ = { "id1": $$[$0 - 2], "id2": $$[$0], relation: $$[$0 - 1], relationTitle1: "none", relationTitle2: "none" }; + break; + case 50: + this.$ = { id1: $$[$0 - 3], id2: $$[$0], relation: $$[$0 - 1], relationTitle1: $$[$0 - 2], relationTitle2: "none" }; + break; + case 51: + this.$ = { id1: $$[$0 - 3], id2: $$[$0], relation: $$[$0 - 2], relationTitle1: "none", relationTitle2: $$[$0 - 1] }; + break; + case 52: + this.$ = { id1: $$[$0 - 4], id2: $$[$0], relation: $$[$0 - 2], relationTitle1: $$[$0 - 3], relationTitle2: $$[$0 - 1] }; + break; + case 53: + yy.addNote($$[$0], $$[$0 - 1]); + break; + case 54: + yy.addNote($$[$0]); + break; + case 55: + yy.setDirection("TB"); + break; + case 56: + yy.setDirection("BT"); + break; + case 57: + yy.setDirection("RL"); + break; + case 58: + yy.setDirection("LR"); + break; + case 59: + this.$ = { type1: $$[$0 - 2], type2: $$[$0], lineType: $$[$0 - 1] }; + break; + case 60: + this.$ = { type1: "none", type2: $$[$0], lineType: $$[$0 - 1] }; + break; + case 61: + this.$ = { type1: $$[$0 - 1], type2: "none", lineType: $$[$0] }; + break; + case 62: + this.$ = { type1: "none", type2: "none", lineType: $$[$0] }; + break; + case 63: + this.$ = yy.relationType.AGGREGATION; + break; + case 64: + this.$ = yy.relationType.EXTENSION; + break; + case 65: + this.$ = yy.relationType.COMPOSITION; + break; + case 66: + this.$ = yy.relationType.DEPENDENCY; + break; + case 67: + this.$ = yy.relationType.LOLLIPOP; + break; + case 68: + this.$ = yy.lineType.LINE; + break; + case 69: + this.$ = yy.lineType.DOTTED_LINE; + break; + case 70: + case 76: + this.$ = $$[$0 - 2]; + yy.setClickEvent($$[$0 - 1], $$[$0]); + break; + case 71: + case 77: + this.$ = $$[$0 - 3]; + yy.setClickEvent($$[$0 - 2], $$[$0 - 1]); + yy.setTooltip($$[$0 - 2], $$[$0]); + break; + case 72: + this.$ = $$[$0 - 2]; + yy.setLink($$[$0 - 1], $$[$0]); + break; + case 73: + this.$ = $$[$0 - 3]; + yy.setLink($$[$0 - 2], $$[$0 - 1], $$[$0]); + break; + case 74: + this.$ = $$[$0 - 3]; + yy.setLink($$[$0 - 2], $$[$0 - 1]); + yy.setTooltip($$[$0 - 2], $$[$0]); + break; + case 75: + this.$ = $$[$0 - 4]; + yy.setLink($$[$0 - 3], $$[$0 - 2], $$[$0]); + yy.setTooltip($$[$0 - 3], $$[$0 - 1]); + break; + case 78: + this.$ = $$[$0 - 3]; + yy.setClickEvent($$[$0 - 2], $$[$0 - 1], $$[$0]); + break; + case 79: + this.$ = $$[$0 - 4]; + yy.setClickEvent($$[$0 - 3], $$[$0 - 2], $$[$0 - 1]); + yy.setTooltip($$[$0 - 3], $$[$0]); + break; + case 80: + this.$ = $$[$0 - 3]; + yy.setLink($$[$0 - 2], $$[$0]); + break; + case 81: + this.$ = $$[$0 - 4]; + yy.setLink($$[$0 - 3], $$[$0 - 1], $$[$0]); + break; + case 82: + this.$ = $$[$0 - 4]; + yy.setLink($$[$0 - 3], $$[$0 - 1]); + yy.setTooltip($$[$0 - 3], $$[$0]); + break; + case 83: + this.$ = $$[$0 - 5]; + yy.setLink($$[$0 - 4], $$[$0 - 2], $$[$0]); + yy.setTooltip($$[$0 - 4], $$[$0 - 1]); + break; + case 84: + this.$ = $$[$0 - 2]; + yy.setCssStyle($$[$0 - 1], $$[$0]); + break; + case 85: + yy.setCssClass($$[$0 - 1], $$[$0]); + break; + case 86: + this.$ = [$$[$0]]; + break; + case 87: + $$[$0 - 2].push($$[$0]); + this.$ = $$[$0 - 2]; + break; + case 89: + this.$ = $$[$0 - 1] + $$[$0]; + break; + } + }, "anonymous"), + table: [{ 3: 1, 4: 2, 5: 3, 6: 4, 7: [1, 6], 10: 5, 16: 37, 17: 20, 18: 38, 20: 7, 22: 8, 23: 9, 24: 10, 25: 11, 26: 12, 27: 13, 28: 14, 29: 15, 30: 16, 31: $V0, 33: $V1, 35: $V2, 36: 21, 40: $V3, 41: 22, 44: $V4, 45: $V5, 47: $V6, 48: $V7, 50: $V8, 52: $V9, 53: $Va, 54: $Vb, 55: $Vc, 56: $Vd, 66: $Ve, 67: $Vf, 69: $Vg, 73: $Vh, 74: $Vi, 76: $Vj, 80: $Vk, 95: $Vl, 97: $Vm, 98: $Vn }, { 1: [3] }, { 1: [2, 1] }, { 1: [2, 2] }, { 1: [2, 3] }, o($Vo, [2, 5], { 8: [1, 46] }), { 8: [1, 47] }, o($Vp, [2, 16], { 21: [1, 48] }), o($Vp, [2, 18]), o($Vp, [2, 19]), o($Vp, [2, 20]), o($Vp, [2, 21]), o($Vp, [2, 22]), o($Vp, [2, 23]), o($Vp, [2, 24]), o($Vp, [2, 25]), o($Vp, [2, 26]), { 32: [1, 49] }, { 34: [1, 50] }, o($Vp, [2, 29]), o($Vp, [2, 45], { 49: 51, 57: 54, 58: 55, 13: [1, 52], 21: [1, 53], 59: $Vq, 60: $Vr, 61: $Vs, 62: $Vt, 63: $Vu, 64: $Vv, 65: $Vw }), { 37: [1, 63] }, o($Vx, [2, 36], { 37: [1, 65], 42: [1, 64] }), o($Vp, [2, 47]), o($Vp, [2, 48]), { 16: 66, 74: $Vi, 80: $Vk, 95: $Vl, 97: $Vm }, { 16: 37, 17: 67, 18: 38, 74: $Vi, 80: $Vk, 95: $Vl, 97: $Vm, 98: $Vn }, { 16: 37, 17: 68, 18: 38, 74: $Vi, 80: $Vk, 95: $Vl, 97: $Vm, 98: $Vn }, { 16: 37, 17: 69, 18: 38, 74: $Vi, 80: $Vk, 95: $Vl, 97: $Vm, 98: $Vn }, { 74: [1, 70] }, { 13: [1, 71] }, { 16: 37, 17: 72, 18: 38, 74: $Vi, 80: $Vk, 95: $Vl, 97: $Vm, 98: $Vn }, { 13: $Vy, 51: 73 }, o($Vp, [2, 55]), o($Vp, [2, 56]), o($Vp, [2, 57]), o($Vp, [2, 58]), o($Vz, [2, 11], { 16: 37, 18: 38, 17: 75, 19: [1, 76], 74: $Vi, 80: $Vk, 95: $Vl, 97: $Vm, 98: $Vn }), o($Vz, [2, 12], { 19: [1, 77] }), { 15: 78, 16: 79, 74: $Vi, 80: $Vk, 95: $Vl, 97: $Vm }, { 16: 37, 17: 80, 18: 38, 74: $Vi, 80: $Vk, 95: $Vl, 97: $Vm, 98: $Vn }, o($VA, [2, 112]), o($VA, [2, 113]), o($VA, [2, 114]), o($VA, [2, 115]), o([1, 8, 9, 12, 13, 19, 21, 37, 39, 42, 59, 60, 61, 62, 63, 64, 65, 70, 72], [2, 116]), o($Vo, [2, 6], { 10: 5, 20: 7, 22: 8, 23: 9, 24: 10, 25: 11, 26: 12, 27: 13, 28: 14, 29: 15, 30: 16, 17: 20, 36: 21, 41: 22, 16: 37, 18: 38, 5: 81, 31: $V0, 33: $V1, 35: $V2, 40: $V3, 44: $V4, 45: $V5, 47: $V6, 48: $V7, 50: $V8, 52: $V9, 53: $Va, 54: $Vb, 55: $Vc, 56: $Vd, 66: $Ve, 67: $Vf, 69: $Vg, 73: $Vh, 74: $Vi, 76: $Vj, 80: $Vk, 95: $Vl, 97: $Vm, 98: $Vn }), { 5: 82, 10: 5, 16: 37, 17: 20, 18: 38, 20: 7, 22: 8, 23: 9, 24: 10, 25: 11, 26: 12, 27: 13, 28: 14, 29: 15, 30: 16, 31: $V0, 33: $V1, 35: $V2, 36: 21, 40: $V3, 41: 22, 44: $V4, 45: $V5, 47: $V6, 48: $V7, 50: $V8, 52: $V9, 53: $Va, 54: $Vb, 55: $Vc, 56: $Vd, 66: $Ve, 67: $Vf, 69: $Vg, 73: $Vh, 74: $Vi, 76: $Vj, 80: $Vk, 95: $Vl, 97: $Vm, 98: $Vn }, o($Vp, [2, 17]), o($Vp, [2, 27]), o($Vp, [2, 28]), { 13: [1, 84], 16: 37, 17: 83, 18: 38, 74: $Vi, 80: $Vk, 95: $Vl, 97: $Vm, 98: $Vn }, { 49: 85, 57: 54, 58: 55, 59: $Vq, 60: $Vr, 61: $Vs, 62: $Vt, 63: $Vu, 64: $Vv, 65: $Vw }, o($Vp, [2, 46]), { 58: 86, 64: $Vv, 65: $Vw }, o($VB, [2, 62], { 57: 87, 59: $Vq, 60: $Vr, 61: $Vs, 62: $Vt, 63: $Vu }), o($VC, [2, 63]), o($VC, [2, 64]), o($VC, [2, 65]), o($VC, [2, 66]), o($VC, [2, 67]), o($VD, [2, 68]), o($VD, [2, 69]), { 8: [1, 89], 23: 90, 38: 88, 41: 22, 44: $V4 }, { 16: 91, 74: $Vi, 80: $Vk, 95: $Vl, 97: $Vm }, { 43: 92, 47: $VE }, { 46: [1, 94] }, { 13: [1, 95] }, { 13: [1, 96] }, { 70: [1, 97], 72: [1, 98] }, { 21: $VF, 73: $VG, 74: $VH, 75: 99, 77: 100, 79: 101, 80: $VI, 81: $VJ, 82: $VK, 83: $VL, 84: $VM, 85: $VN }, { 74: [1, 111] }, { 13: $Vy, 51: 112 }, o($Vp, [2, 54]), o($Vp, [2, 117]), o($Vz, [2, 13]), o($Vz, [2, 14]), o($Vz, [2, 15]), { 37: [2, 32] }, { 15: 113, 16: 79, 37: [2, 9], 74: $Vi, 80: $Vk, 95: $Vl, 97: $Vm }, o($VO, [2, 40], { 11: 114, 12: [1, 115] }), o($Vo, [2, 7]), { 9: [1, 116] }, o($VP, [2, 49]), { 16: 37, 17: 117, 18: 38, 74: $Vi, 80: $Vk, 95: $Vl, 97: $Vm, 98: $Vn }, { 13: [1, 119], 16: 37, 17: 118, 18: 38, 74: $Vi, 80: $Vk, 95: $Vl, 97: $Vm, 98: $Vn }, o($VB, [2, 61], { 57: 120, 59: $Vq, 60: $Vr, 61: $Vs, 62: $Vt, 63: $Vu }), o($VB, [2, 60]), { 39: [1, 121] }, { 23: 90, 38: 122, 41: 22, 44: $V4 }, { 8: [1, 123], 39: [2, 33] }, o($Vx, [2, 37], { 37: [1, 124] }), { 39: [1, 125] }, { 39: [2, 43], 43: 126, 47: $VE }, { 16: 37, 17: 127, 18: 38, 74: $Vi, 80: $Vk, 95: $Vl, 97: $Vm, 98: $Vn }, o($Vp, [2, 70], { 13: [1, 128] }), o($Vp, [2, 72], { 13: [1, 130], 68: [1, 129] }), o($Vp, [2, 76], { 13: [1, 131], 71: [1, 132] }), { 13: [1, 133] }, o($Vp, [2, 84], { 78: [1, 134] }), o($VQ, [2, 86], { 79: 135, 21: $VF, 73: $VG, 74: $VH, 80: $VI, 81: $VJ, 82: $VK, 83: $VL, 84: $VM, 85: $VN }), o($VR, [2, 88]), o($VR, [2, 90]), o($VR, [2, 91]), o($VR, [2, 92]), o($VR, [2, 93]), o($VR, [2, 94]), o($VR, [2, 95]), o($VR, [2, 96]), o($VR, [2, 97]), o($VR, [2, 98]), o($Vp, [2, 85]), o($Vp, [2, 53]), { 37: [2, 10] }, o($VO, [2, 41]), { 13: [1, 136] }, { 1: [2, 4] }, o($VP, [2, 51]), o($VP, [2, 50]), { 16: 37, 17: 137, 18: 38, 74: $Vi, 80: $Vk, 95: $Vl, 97: $Vm, 98: $Vn }, o($VB, [2, 59]), o($Vp, [2, 30]), { 39: [1, 138] }, { 23: 90, 38: 139, 39: [2, 34], 41: 22, 44: $V4 }, { 43: 140, 47: $VE }, o($Vx, [2, 38]), { 39: [2, 44] }, o($Vp, [2, 42]), o($Vp, [2, 71]), o($Vp, [2, 73]), o($Vp, [2, 74], { 68: [1, 141] }), o($Vp, [2, 77]), o($Vp, [2, 78], { 13: [1, 142] }), o($Vp, [2, 80], { 13: [1, 144], 68: [1, 143] }), { 21: $VF, 73: $VG, 74: $VH, 77: 145, 79: 101, 80: $VI, 81: $VJ, 82: $VK, 83: $VL, 84: $VM, 85: $VN }, o($VR, [2, 89]), { 14: [1, 146] }, o($VP, [2, 52]), o($Vp, [2, 31]), { 39: [2, 35] }, { 39: [1, 147] }, o($Vp, [2, 75]), o($Vp, [2, 79]), o($Vp, [2, 81]), o($Vp, [2, 82], { 68: [1, 148] }), o($VQ, [2, 87], { 79: 135, 21: $VF, 73: $VG, 74: $VH, 80: $VI, 81: $VJ, 82: $VK, 83: $VL, 84: $VM, 85: $VN }), o($VO, [2, 8]), o($Vx, [2, 39]), o($Vp, [2, 83])], + defaultActions: { 2: [2, 1], 3: [2, 2], 4: [2, 3], 78: [2, 32], 113: [2, 10], 116: [2, 4], 126: [2, 44], 139: [2, 35] }, + parseError: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function parseError(str, hash) { + if (hash.recoverable) { + this.trace(str); + } else { + var error = new Error(str); + error.hash = hash; + throw error; + } + }, "parseError"), + parse: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function parse(input) { + var self = this, stack = [0], tstack = [], vstack = [null], lstack = [], table = this.table, yytext = "", yylineno = 0, yyleng = 0, recovering = 0, TERROR = 2, EOF = 1; + var args = lstack.slice.call(arguments, 1); + var lexer2 = Object.create(this.lexer); + var sharedState = { yy: {} }; + for (var k in this.yy) { + if (Object.prototype.hasOwnProperty.call(this.yy, k)) { + sharedState.yy[k] = this.yy[k]; + } + } + lexer2.setInput(input, sharedState.yy); + sharedState.yy.lexer = lexer2; + sharedState.yy.parser = this; + if (typeof lexer2.yylloc == "undefined") { + lexer2.yylloc = {}; + } + var yyloc = lexer2.yylloc; + lstack.push(yyloc); + var ranges = lexer2.options && lexer2.options.ranges; + if (typeof sharedState.yy.parseError === "function") { + this.parseError = sharedState.yy.parseError; + } else { + this.parseError = Object.getPrototypeOf(this).parseError; + } + function popStack(n) { + stack.length = stack.length - 2 * n; + vstack.length = vstack.length - n; + lstack.length = lstack.length - n; + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(popStack, "popStack"); + function lex() { + var token; + token = tstack.pop() || lexer2.lex() || EOF; + if (typeof token !== "number") { + if (token instanceof Array) { + tstack = token; + token = tstack.pop(); + } + token = self.symbols_[token] || token; + } + return token; + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(lex, "lex"); + var symbol, preErrorSymbol, state, action, a, r, yyval = {}, p, len, newState, expected; + while (true) { + state = stack[stack.length - 1]; + if (this.defaultActions[state]) { + action = this.defaultActions[state]; + } else { + if (symbol === null || typeof symbol == "undefined") { + symbol = lex(); + } + action = table[state] && table[state][symbol]; + } + if (typeof action === "undefined" || !action.length || !action[0]) { + var errStr = ""; + expected = []; + for (p in table[state]) { + if (this.terminals_[p] && p > TERROR) { + expected.push("'" + this.terminals_[p] + "'"); + } + } + if (lexer2.showPosition) { + errStr = "Parse error on line " + (yylineno + 1) + ":\n" + lexer2.showPosition() + "\nExpecting " + expected.join(", ") + ", got '" + (this.terminals_[symbol] || symbol) + "'"; + } else { + errStr = "Parse error on line " + (yylineno + 1) + ": Unexpected " + (symbol == EOF ? "end of input" : "'" + (this.terminals_[symbol] || symbol) + "'"); + } + this.parseError(errStr, { + text: lexer2.match, + token: this.terminals_[symbol] || symbol, + line: lexer2.yylineno, + loc: yyloc, + expected + }); + } + if (action[0] instanceof Array && action.length > 1) { + throw new Error("Parse Error: multiple actions possible at state: " + state + ", token: " + symbol); + } + switch (action[0]) { + case 1: + stack.push(symbol); + vstack.push(lexer2.yytext); + lstack.push(lexer2.yylloc); + stack.push(action[1]); + symbol = null; + if (!preErrorSymbol) { + yyleng = lexer2.yyleng; + yytext = lexer2.yytext; + yylineno = lexer2.yylineno; + yyloc = lexer2.yylloc; + if (recovering > 0) { + recovering--; + } + } else { + symbol = preErrorSymbol; + preErrorSymbol = null; + } + break; + case 2: + len = this.productions_[action[1]][1]; + yyval.$ = vstack[vstack.length - len]; + yyval._$ = { + first_line: lstack[lstack.length - (len || 1)].first_line, + last_line: lstack[lstack.length - 1].last_line, + first_column: lstack[lstack.length - (len || 1)].first_column, + last_column: lstack[lstack.length - 1].last_column + }; + if (ranges) { + yyval._$.range = [ + lstack[lstack.length - (len || 1)].range[0], + lstack[lstack.length - 1].range[1] + ]; + } + r = this.performAction.apply(yyval, [ + yytext, + yyleng, + yylineno, + sharedState.yy, + action[1], + vstack, + lstack + ].concat(args)); + if (typeof r !== "undefined") { + return r; + } + if (len) { + stack = stack.slice(0, -1 * len * 2); + vstack = vstack.slice(0, -1 * len); + lstack = lstack.slice(0, -1 * len); + } + stack.push(this.productions_[action[1]][0]); + vstack.push(yyval.$); + lstack.push(yyval._$); + newState = table[stack[stack.length - 2]][stack[stack.length - 1]]; + stack.push(newState); + break; + case 3: + return true; + } + } + return true; + }, "parse") + }; + var lexer = /* @__PURE__ */ function() { + var lexer2 = { + EOF: 1, + parseError: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function parseError(str, hash) { + if (this.yy.parser) { + this.yy.parser.parseError(str, hash); + } else { + throw new Error(str); + } + }, "parseError"), + // resets the lexer, sets new input + setInput: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(input, yy) { + this.yy = yy || this.yy || {}; + this._input = input; + this._more = this._backtrack = this.done = false; + this.yylineno = this.yyleng = 0; + this.yytext = this.matched = this.match = ""; + this.conditionStack = ["INITIAL"]; + this.yylloc = { + first_line: 1, + first_column: 0, + last_line: 1, + last_column: 0 + }; + if (this.options.ranges) { + this.yylloc.range = [0, 0]; + } + this.offset = 0; + return this; + }, "setInput"), + // consumes and returns one char from the input + input: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + var ch = this._input[0]; + this.yytext += ch; + this.yyleng++; + this.offset++; + this.match += ch; + this.matched += ch; + var lines = ch.match(/(?:\r\n?|\n).*/g); + if (lines) { + this.yylineno++; + this.yylloc.last_line++; + } else { + this.yylloc.last_column++; + } + if (this.options.ranges) { + this.yylloc.range[1]++; + } + this._input = this._input.slice(1); + return ch; + }, "input"), + // unshifts one char (or a string) into the input + unput: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(ch) { + var len = ch.length; + var lines = ch.split(/(?:\r\n?|\n)/g); + this._input = ch + this._input; + this.yytext = this.yytext.substr(0, this.yytext.length - len); + this.offset -= len; + var oldLines = this.match.split(/(?:\r\n?|\n)/g); + this.match = this.match.substr(0, this.match.length - 1); + this.matched = this.matched.substr(0, this.matched.length - 1); + if (lines.length - 1) { + this.yylineno -= lines.length - 1; + } + var r = this.yylloc.range; + this.yylloc = { + first_line: this.yylloc.first_line, + last_line: this.yylineno + 1, + first_column: this.yylloc.first_column, + last_column: lines ? (lines.length === oldLines.length ? this.yylloc.first_column : 0) + oldLines[oldLines.length - lines.length].length - lines[0].length : this.yylloc.first_column - len + }; + if (this.options.ranges) { + this.yylloc.range = [r[0], r[0] + this.yyleng - len]; + } + this.yyleng = this.yytext.length; + return this; + }, "unput"), + // When called from action, caches matched text and appends it on next action + more: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + this._more = true; + return this; + }, "more"), + // When called from action, signals the lexer that this rule fails to match the input, so the next matching rule (regex) should be tested instead. + reject: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + if (this.options.backtrack_lexer) { + this._backtrack = true; + } else { + return this.parseError("Lexical error on line " + (this.yylineno + 1) + ". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n" + this.showPosition(), { + text: "", + token: null, + line: this.yylineno + }); + } + return this; + }, "reject"), + // retain first n characters of the match + less: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(n) { + this.unput(this.match.slice(n)); + }, "less"), + // displays already matched input, i.e. for error messages + pastInput: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + var past = this.matched.substr(0, this.matched.length - this.match.length); + return (past.length > 20 ? "..." : "") + past.substr(-20).replace(/\n/g, ""); + }, "pastInput"), + // displays upcoming input, i.e. for error messages + upcomingInput: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + var next = this.match; + if (next.length < 20) { + next += this._input.substr(0, 20 - next.length); + } + return (next.substr(0, 20) + (next.length > 20 ? "..." : "")).replace(/\n/g, ""); + }, "upcomingInput"), + // displays the character position where the lexing error occurred, i.e. for error messages + showPosition: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + var pre = this.pastInput(); + var c = new Array(pre.length + 1).join("-"); + return pre + this.upcomingInput() + "\n" + c + "^"; + }, "showPosition"), + // test the lexed token: return FALSE when not a match, otherwise return token + test_match: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(match, indexed_rule) { + var token, lines, backup; + if (this.options.backtrack_lexer) { + backup = { + yylineno: this.yylineno, + yylloc: { + first_line: this.yylloc.first_line, + last_line: this.last_line, + first_column: this.yylloc.first_column, + last_column: this.yylloc.last_column + }, + yytext: this.yytext, + match: this.match, + matches: this.matches, + matched: this.matched, + yyleng: this.yyleng, + offset: this.offset, + _more: this._more, + _input: this._input, + yy: this.yy, + conditionStack: this.conditionStack.slice(0), + done: this.done + }; + if (this.options.ranges) { + backup.yylloc.range = this.yylloc.range.slice(0); + } + } + lines = match[0].match(/(?:\r\n?|\n).*/g); + if (lines) { + this.yylineno += lines.length; + } + this.yylloc = { + first_line: this.yylloc.last_line, + last_line: this.yylineno + 1, + first_column: this.yylloc.last_column, + last_column: lines ? lines[lines.length - 1].length - lines[lines.length - 1].match(/\r?\n?/)[0].length : this.yylloc.last_column + match[0].length + }; + this.yytext += match[0]; + this.match += match[0]; + this.matches = match; + this.yyleng = this.yytext.length; + if (this.options.ranges) { + this.yylloc.range = [this.offset, this.offset += this.yyleng]; + } + this._more = false; + this._backtrack = false; + this._input = this._input.slice(match[0].length); + this.matched += match[0]; + token = this.performAction.call(this, this.yy, this, indexed_rule, this.conditionStack[this.conditionStack.length - 1]); + if (this.done && this._input) { + this.done = false; + } + if (token) { + return token; + } else if (this._backtrack) { + for (var k in backup) { + this[k] = backup[k]; + } + return false; + } + return false; + }, "test_match"), + // return next match in input + next: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + if (this.done) { + return this.EOF; + } + if (!this._input) { + this.done = true; + } + var token, match, tempMatch, index; + if (!this._more) { + this.yytext = ""; + this.match = ""; + } + var rules = this._currentRules(); + for (var i = 0; i < rules.length; i++) { + tempMatch = this._input.match(this.rules[rules[i]]); + if (tempMatch && (!match || tempMatch[0].length > match[0].length)) { + match = tempMatch; + index = i; + if (this.options.backtrack_lexer) { + token = this.test_match(tempMatch, rules[i]); + if (token !== false) { + return token; + } else if (this._backtrack) { + match = false; + continue; + } else { + return false; + } + } else if (!this.options.flex) { + break; + } + } + } + if (match) { + token = this.test_match(match, rules[index]); + if (token !== false) { + return token; + } + return false; + } + if (this._input === "") { + return this.EOF; + } else { + return this.parseError("Lexical error on line " + (this.yylineno + 1) + ". Unrecognized text.\n" + this.showPosition(), { + text: "", + token: null, + line: this.yylineno + }); + } + }, "next"), + // return next match that has a token + lex: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function lex() { + var r = this.next(); + if (r) { + return r; + } else { + return this.lex(); + } + }, "lex"), + // activates a new lexer condition state (pushes the new lexer condition state onto the condition stack) + begin: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function begin(condition) { + this.conditionStack.push(condition); + }, "begin"), + // pop the previously active lexer condition state off the condition stack + popState: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function popState() { + var n = this.conditionStack.length - 1; + if (n > 0) { + return this.conditionStack.pop(); + } else { + return this.conditionStack[0]; + } + }, "popState"), + // produce the lexer rule set which is active for the currently active lexer condition state + _currentRules: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function _currentRules() { + if (this.conditionStack.length && this.conditionStack[this.conditionStack.length - 1]) { + return this.conditions[this.conditionStack[this.conditionStack.length - 1]].rules; + } else { + return this.conditions["INITIAL"].rules; + } + }, "_currentRules"), + // return the currently active lexer condition state; when an index argument is provided it produces the N-th previous condition state, if available + topState: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function topState(n) { + n = this.conditionStack.length - 1 - Math.abs(n || 0); + if (n >= 0) { + return this.conditionStack[n]; + } else { + return "INITIAL"; + } + }, "topState"), + // alias for begin(condition) + pushState: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function pushState(condition) { + this.begin(condition); + }, "pushState"), + // return the number of states currently on the stack + stateStackSize: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function stateStackSize() { + return this.conditionStack.length; + }, "stateStackSize"), + options: {}, + performAction: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function anonymous(yy, yy_, $avoiding_name_collisions, YY_START) { + var YYSTATE = YY_START; + switch ($avoiding_name_collisions) { + case 0: + return 53; + break; + case 1: + return 54; + break; + case 2: + return 55; + break; + case 3: + return 56; + break; + case 4: + break; + case 5: + break; + case 6: + this.begin("acc_title"); + return 31; + break; + case 7: + this.popState(); + return "acc_title_value"; + break; + case 8: + this.begin("acc_descr"); + return 33; + break; + case 9: + this.popState(); + return "acc_descr_value"; + break; + case 10: + this.begin("acc_descr_multiline"); + break; + case 11: + this.popState(); + break; + case 12: + return "acc_descr_multiline_value"; + break; + case 13: + return 8; + break; + case 14: + break; + case 15: + return 7; + break; + case 16: + return 7; + break; + case 17: + return "EDGE_STATE"; + break; + case 18: + this.begin("callback_name"); + break; + case 19: + this.popState(); + break; + case 20: + this.popState(); + this.begin("callback_args"); + break; + case 21: + return 70; + break; + case 22: + this.popState(); + break; + case 23: + return 71; + break; + case 24: + this.popState(); + break; + case 25: + return "STR"; + break; + case 26: + this.begin("string"); + break; + case 27: + return 73; + break; + case 28: + this.begin("namespace"); + return 40; + break; + case 29: + this.popState(); + return 8; + break; + case 30: + break; + case 31: + this.begin("namespace-body"); + return 37; + break; + case 32: + this.popState(); + return 39; + break; + case 33: + return "EOF_IN_STRUCT"; + break; + case 34: + return 8; + break; + case 35: + break; + case 36: + return "EDGE_STATE"; + break; + case 37: + this.begin("class"); + return 44; + break; + case 38: + this.popState(); + return 8; + break; + case 39: + break; + case 40: + this.popState(); + this.popState(); + return 39; + break; + case 41: + this.begin("class-body"); + return 37; + break; + case 42: + this.popState(); + return 39; + break; + case 43: + return "EOF_IN_STRUCT"; + break; + case 44: + return "EDGE_STATE"; + break; + case 45: + return "OPEN_IN_STRUCT"; + break; + case 46: + break; + case 47: + return "MEMBER"; + break; + case 48: + return 76; + break; + case 49: + return 66; + break; + case 50: + return 67; + break; + case 51: + return 69; + break; + case 52: + return 50; + break; + case 53: + return 52; + break; + case 54: + return 45; + break; + case 55: + return 46; + break; + case 56: + return 72; + break; + case 57: + this.popState(); + break; + case 58: + return "GENERICTYPE"; + break; + case 59: + this.begin("generic"); + break; + case 60: + this.popState(); + break; + case 61: + return "BQUOTE_STR"; + break; + case 62: + this.begin("bqstring"); + break; + case 63: + return 68; + break; + case 64: + return 68; + break; + case 65: + return 68; + break; + case 66: + return 68; + break; + case 67: + return 60; + break; + case 68: + return 60; + break; + case 69: + return 62; + break; + case 70: + return 62; + break; + case 71: + return 61; + break; + case 72: + return 59; + break; + case 73: + return 63; + break; + case 74: + return 64; + break; + case 75: + return 65; + break; + case 76: + return 21; + break; + case 77: + return 42; + break; + case 78: + return 95; + break; + case 79: + return "DOT"; + break; + case 80: + return "PLUS"; + break; + case 81: + return 81; + break; + case 82: + return 78; + break; + case 83: + return 84; + break; + case 84: + return 84; + break; + case 85: + return 85; + break; + case 86: + return "EQUALS"; + break; + case 87: + return "EQUALS"; + break; + case 88: + return 74; + break; + case 89: + return 12; + break; + case 90: + return 14; + break; + case 91: + return "PUNCTUATION"; + break; + case 92: + return 80; + break; + case 93: + return 97; + break; + case 94: + return 83; + break; + case 95: + return 83; + break; + case 96: + return 9; + break; + } + }, "anonymous"), + rules: [/^(?:.*direction\s+TB[^\n]*)/, /^(?:.*direction\s+BT[^\n]*)/, /^(?:.*direction\s+RL[^\n]*)/, /^(?:.*direction\s+LR[^\n]*)/, /^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/, /^(?:%%[^\n]*(\r?\n)*)/, /^(?:accTitle\s*:\s*)/, /^(?:(?!\n||)*[^\n]*)/, /^(?:accDescr\s*:\s*)/, /^(?:(?!\n||)*[^\n]*)/, /^(?:accDescr\s*\{\s*)/, /^(?:[\}])/, /^(?:[^\}]*)/, /^(?:\s*(\r?\n)+)/, /^(?:\s+)/, /^(?:classDiagram-v2\b)/, /^(?:classDiagram\b)/, /^(?:\[\*\])/, /^(?:call[\s]+)/, /^(?:\([\s]*\))/, /^(?:\()/, /^(?:[^(]*)/, /^(?:\))/, /^(?:[^)]*)/, /^(?:["])/, /^(?:[^"]*)/, /^(?:["])/, /^(?:style\b)/, /^(?:namespace\b)/, /^(?:\s*(\r?\n)+)/, /^(?:\s+)/, /^(?:[{])/, /^(?:[}])/, /^(?:$)/, /^(?:\s*(\r?\n)+)/, /^(?:\s+)/, /^(?:\[\*\])/, /^(?:class\b)/, /^(?:\s*(\r?\n)+)/, /^(?:\s+)/, /^(?:[}])/, /^(?:[{])/, /^(?:[}])/, /^(?:$)/, /^(?:\[\*\])/, /^(?:[{])/, /^(?:[\n])/, /^(?:[^{}\n]*)/, /^(?:cssClass\b)/, /^(?:callback\b)/, /^(?:link\b)/, /^(?:click\b)/, /^(?:note for\b)/, /^(?:note\b)/, /^(?:<<)/, /^(?:>>)/, /^(?:href\b)/, /^(?:[~])/, /^(?:[^~]*)/, /^(?:~)/, /^(?:[`])/, /^(?:[^`]+)/, /^(?:[`])/, /^(?:_self\b)/, /^(?:_blank\b)/, /^(?:_parent\b)/, /^(?:_top\b)/, /^(?:\s*<\|)/, /^(?:\s*\|>)/, /^(?:\s*>)/, /^(?:\s*<)/, /^(?:\s*\*)/, /^(?:\s*o\b)/, /^(?:\s*\(\))/, /^(?:--)/, /^(?:\.\.)/, /^(?::{1}[^:\n;]+)/, /^(?::{3})/, /^(?:-)/, /^(?:\.)/, /^(?:\+)/, /^(?::)/, /^(?:,)/, /^(?:#)/, /^(?:#)/, /^(?:%)/, /^(?:=)/, /^(?:=)/, /^(?:\w+)/, /^(?:\[)/, /^(?:\])/, /^(?:[!"#$%&'*+,-.`?\\/])/, /^(?:[0-9]+)/, /^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/, /^(?:\s)/, /^(?:\s)/, /^(?:$)/], + conditions: { "namespace-body": { "rules": [26, 32, 33, 34, 35, 36, 37, 48, 49, 50, 51, 52, 53, 54, 55, 56, 59, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 96], "inclusive": false }, "namespace": { "rules": [26, 28, 29, 30, 31, 48, 49, 50, 51, 52, 53, 54, 55, 56, 59, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 96], "inclusive": false }, "class-body": { "rules": [26, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 59, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 96], "inclusive": false }, "class": { "rules": [26, 38, 39, 40, 41, 48, 49, 50, 51, 52, 53, 54, 55, 56, 59, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 96], "inclusive": false }, "acc_descr_multiline": { "rules": [11, 12, 26, 48, 49, 50, 51, 52, 53, 54, 55, 56, 59, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 96], "inclusive": false }, "acc_descr": { "rules": [9, 26, 48, 49, 50, 51, 52, 53, 54, 55, 56, 59, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 96], "inclusive": false }, "acc_title": { "rules": [7, 26, 48, 49, 50, 51, 52, 53, 54, 55, 56, 59, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 96], "inclusive": false }, "callback_args": { "rules": [22, 23, 26, 48, 49, 50, 51, 52, 53, 54, 55, 56, 59, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 96], "inclusive": false }, "callback_name": { "rules": [19, 20, 21, 26, 48, 49, 50, 51, 52, 53, 54, 55, 56, 59, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 96], "inclusive": false }, "href": { "rules": [26, 48, 49, 50, 51, 52, 53, 54, 55, 56, 59, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 96], "inclusive": false }, "struct": { "rules": [26, 48, 49, 50, 51, 52, 53, 54, 55, 56, 59, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 96], "inclusive": false }, "generic": { "rules": [26, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 96], "inclusive": false }, "bqstring": { "rules": [26, 48, 49, 50, 51, 52, 53, 54, 55, 56, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 96], "inclusive": false }, "string": { "rules": [24, 25, 26, 48, 49, 50, 51, 52, 53, 54, 55, 56, 59, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 96], "inclusive": false }, "INITIAL": { "rules": [0, 1, 2, 3, 4, 5, 6, 8, 10, 13, 14, 15, 16, 17, 18, 26, 27, 28, 37, 48, 49, 50, 51, 52, 53, 54, 55, 56, 59, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96], "inclusive": true } } + }; + return lexer2; + }(); + parser2.lexer = lexer; + function Parser() { + this.yy = {}; + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(Parser, "Parser"); + Parser.prototype = parser2; + parser2.Parser = Parser; + return new Parser(); +}(); +parser.parser = parser; +var classDiagram_default = parser; + +// src/diagrams/class/classDb.ts + + +// src/diagrams/class/classTypes.ts +var visibilityValues = ["#", "+", "~", "-", ""]; +var ClassMember = class { + static { + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(this, "ClassMember"); + } + constructor(input, memberType) { + this.memberType = memberType; + this.visibility = ""; + this.classifier = ""; + const sanitizedInput = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .sanitizeText */ .jZ)(input, (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .getConfig2 */ .D7)()); + this.parseMember(sanitizedInput); + } + getDisplayDetails() { + let displayText = this.visibility + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .parseGenericTypes */ .QO)(this.id); + if (this.memberType === "method") { + displayText += `(${(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .parseGenericTypes */ .QO)(this.parameters.trim())})`; + if (this.returnType) { + displayText += " : " + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .parseGenericTypes */ .QO)(this.returnType); + } + } + displayText = displayText.trim(); + const cssStyle = this.parseClassifier(); + return { + displayText, + cssStyle + }; + } + parseMember(input) { + let potentialClassifier = ""; + if (this.memberType === "method") { + const methodRegEx = /([#+~-])?(.+)\((.*)\)([\s$*])?(.*)([$*])?/; + const match = methodRegEx.exec(input); + if (match) { + const detectedVisibility = match[1] ? match[1].trim() : ""; + if (visibilityValues.includes(detectedVisibility)) { + this.visibility = detectedVisibility; + } + this.id = match[2].trim(); + this.parameters = match[3] ? match[3].trim() : ""; + potentialClassifier = match[4] ? match[4].trim() : ""; + this.returnType = match[5] ? match[5].trim() : ""; + if (potentialClassifier === "") { + const lastChar = this.returnType.substring(this.returnType.length - 1); + if (/[$*]/.exec(lastChar)) { + potentialClassifier = lastChar; + this.returnType = this.returnType.substring(0, this.returnType.length - 1); + } + } + } + } else { + const length = input.length; + const firstChar = input.substring(0, 1); + const lastChar = input.substring(length - 1); + if (visibilityValues.includes(firstChar)) { + this.visibility = firstChar; + } + if (/[$*]/.exec(lastChar)) { + potentialClassifier = lastChar; + } + this.id = input.substring( + this.visibility === "" ? 0 : 1, + potentialClassifier === "" ? length : length - 1 + ); + } + this.classifier = potentialClassifier; + } + parseClassifier() { + switch (this.classifier) { + case "*": + return "font-style:italic;"; + case "$": + return "text-decoration:underline;"; + default: + return ""; + } + } +}; + +// src/diagrams/class/classDb.ts +var MERMAID_DOM_ID_PREFIX = "classId-"; +var relations = []; +var classes = /* @__PURE__ */ new Map(); +var notes = []; +var classCounter = 0; +var namespaces = /* @__PURE__ */ new Map(); +var namespaceCounter = 0; +var functions = []; +var sanitizeText2 = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)((txt) => _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .common_default */ .Y2.sanitizeText(txt, (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .getConfig2 */ .D7)()), "sanitizeText"); +var splitClassNameAndType = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(_id) { + const id = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .common_default */ .Y2.sanitizeText(_id, (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .getConfig2 */ .D7)()); + let genericType = ""; + let className = id; + if (id.indexOf("~") > 0) { + const split = id.split("~"); + className = sanitizeText2(split[0]); + genericType = sanitizeText2(split[1]); + } + return { className, type: genericType }; +}, "splitClassNameAndType"); +var setClassLabel = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(_id, label) { + const id = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .common_default */ .Y2.sanitizeText(_id, (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .getConfig2 */ .D7)()); + if (label) { + label = sanitizeText2(label); + } + const { className } = splitClassNameAndType(id); + classes.get(className).label = label; +}, "setClassLabel"); +var addClass = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(_id) { + const id = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .common_default */ .Y2.sanitizeText(_id, (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .getConfig2 */ .D7)()); + const { className, type } = splitClassNameAndType(id); + if (classes.has(className)) { + return; + } + const name = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .common_default */ .Y2.sanitizeText(className, (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .getConfig2 */ .D7)()); + classes.set(name, { + id: name, + type, + label: name, + cssClasses: [], + methods: [], + members: [], + annotations: [], + styles: [], + domId: MERMAID_DOM_ID_PREFIX + name + "-" + classCounter + }); + classCounter++; +}, "addClass"); +var lookUpDomId = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(_id) { + const id = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .common_default */ .Y2.sanitizeText(_id, (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .getConfig2 */ .D7)()); + if (classes.has(id)) { + return classes.get(id).domId; + } + throw new Error("Class not found: " + id); +}, "lookUpDomId"); +var clear2 = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + relations = []; + classes = /* @__PURE__ */ new Map(); + notes = []; + functions = []; + functions.push(setupToolTips); + namespaces = /* @__PURE__ */ new Map(); + namespaceCounter = 0; + direction = "TB"; + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .clear */ .IU)(); +}, "clear"); +var getClass = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(id) { + return classes.get(id); +}, "getClass"); +var getClasses = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + return classes; +}, "getClasses"); +var getRelations = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + return relations; +}, "getRelations"); +var getNotes = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + return notes; +}, "getNotes"); +var addRelation = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(relation) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .log */ .Rm.debug("Adding relation: " + JSON.stringify(relation)); + addClass(relation.id1); + addClass(relation.id2); + relation.id1 = splitClassNameAndType(relation.id1).className; + relation.id2 = splitClassNameAndType(relation.id2).className; + relation.relationTitle1 = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .common_default */ .Y2.sanitizeText(relation.relationTitle1.trim(), (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .getConfig2 */ .D7)()); + relation.relationTitle2 = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .common_default */ .Y2.sanitizeText(relation.relationTitle2.trim(), (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .getConfig2 */ .D7)()); + relations.push(relation); +}, "addRelation"); +var addAnnotation = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(className, annotation) { + const validatedClassName = splitClassNameAndType(className).className; + classes.get(validatedClassName).annotations.push(annotation); +}, "addAnnotation"); +var addMember = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(className, member) { + addClass(className); + const validatedClassName = splitClassNameAndType(className).className; + const theClass = classes.get(validatedClassName); + if (typeof member === "string") { + const memberString = member.trim(); + if (memberString.startsWith("<<") && memberString.endsWith(">>")) { + theClass.annotations.push(sanitizeText2(memberString.substring(2, memberString.length - 2))); + } else if (memberString.indexOf(")") > 0) { + theClass.methods.push(new ClassMember(memberString, "method")); + } else if (memberString) { + theClass.members.push(new ClassMember(memberString, "attribute")); + } + } +}, "addMember"); +var addMembers = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(className, members) { + if (Array.isArray(members)) { + members.reverse(); + members.forEach((member) => addMember(className, member)); + } +}, "addMembers"); +var addNote = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(text, className) { + const note = { + id: `note${notes.length}`, + class: className, + text + }; + notes.push(note); +}, "addNote"); +var cleanupLabel = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(label) { + if (label.startsWith(":")) { + label = label.substring(1); + } + return sanitizeText2(label.trim()); +}, "cleanupLabel"); +var setCssClass = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(ids, className) { + ids.split(",").forEach(function(_id) { + let id = _id; + if (/\d/.exec(_id[0])) { + id = MERMAID_DOM_ID_PREFIX + id; + } + const classNode = classes.get(id); + if (classNode) { + classNode.cssClasses.push(className); + } + }); +}, "setCssClass"); +var setTooltip = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(ids, tooltip) { + ids.split(",").forEach(function(id) { + if (tooltip !== void 0) { + classes.get(id).tooltip = sanitizeText2(tooltip); + } + }); +}, "setTooltip"); +var getTooltip = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(id, namespace) { + if (namespace && namespaces.has(namespace)) { + return namespaces.get(namespace).classes.get(id).tooltip; + } + return classes.get(id).tooltip; +}, "getTooltip"); +var setLink = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(ids, linkStr, target) { + const config = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .getConfig2 */ .D7)(); + ids.split(",").forEach(function(_id) { + let id = _id; + if (/\d/.exec(_id[0])) { + id = MERMAID_DOM_ID_PREFIX + id; + } + const theClass = classes.get(id); + if (theClass) { + theClass.link = _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_0__/* .utils_default */ ._K.formatUrl(linkStr, config); + if (config.securityLevel === "sandbox") { + theClass.linkTarget = "_top"; + } else if (typeof target === "string") { + theClass.linkTarget = sanitizeText2(target); + } else { + theClass.linkTarget = "_blank"; + } + } + }); + setCssClass(ids, "clickable"); +}, "setLink"); +var setClickEvent = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(ids, functionName, functionArgs) { + ids.split(",").forEach(function(id) { + setClickFunc(id, functionName, functionArgs); + classes.get(id).haveCallback = true; + }); + setCssClass(ids, "clickable"); +}, "setClickEvent"); +var setClickFunc = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(_domId, functionName, functionArgs) { + const domId = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .common_default */ .Y2.sanitizeText(_domId, (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .getConfig2 */ .D7)()); + const config = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .getConfig2 */ .D7)(); + if (config.securityLevel !== "loose") { + return; + } + if (functionName === void 0) { + return; + } + const id = domId; + if (classes.has(id)) { + const elemId = lookUpDomId(id); + let argList = []; + if (typeof functionArgs === "string") { + argList = functionArgs.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/); + for (let i = 0; i < argList.length; i++) { + let item = argList[i].trim(); + if (item.startsWith('"') && item.endsWith('"')) { + item = item.substr(1, item.length - 2); + } + argList[i] = item; + } + } + if (argList.length === 0) { + argList.push(elemId); + } + functions.push(function() { + const elem = document.querySelector(`[id="${elemId}"]`); + if (elem !== null) { + elem.addEventListener( + "click", + function() { + _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_0__/* .utils_default */ ._K.runFunc(functionName, ...argList); + }, + false + ); + } + }); + } +}, "setClickFunc"); +var bindFunctions = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(element) { + functions.forEach(function(fun) { + fun(element); + }); +}, "bindFunctions"); +var lineType = { + LINE: 0, + DOTTED_LINE: 1 +}; +var relationType = { + AGGREGATION: 0, + EXTENSION: 1, + COMPOSITION: 2, + DEPENDENCY: 3, + LOLLIPOP: 4 +}; +var setupToolTips = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(element) { + let tooltipElem = (0,d3__WEBPACK_IMPORTED_MODULE_2__/* .select */ .Ltv)(".mermaidTooltip"); + if ((tooltipElem._groups || tooltipElem)[0][0] === null) { + tooltipElem = (0,d3__WEBPACK_IMPORTED_MODULE_2__/* .select */ .Ltv)("body").append("div").attr("class", "mermaidTooltip").style("opacity", 0); + } + const svg = (0,d3__WEBPACK_IMPORTED_MODULE_2__/* .select */ .Ltv)(element).select("svg"); + const nodes = svg.selectAll("g.node"); + nodes.on("mouseover", function() { + const el = (0,d3__WEBPACK_IMPORTED_MODULE_2__/* .select */ .Ltv)(this); + const title = el.attr("title"); + if (title === null) { + return; + } + const rect = this.getBoundingClientRect(); + tooltipElem.transition().duration(200).style("opacity", ".9"); + tooltipElem.text(el.attr("title")).style("left", window.scrollX + rect.left + (rect.right - rect.left) / 2 + "px").style("top", window.scrollY + rect.top - 14 + document.body.scrollTop + "px"); + tooltipElem.html(tooltipElem.html().replace(/<br\/>/g, "<br/>")); + el.classed("hover", true); + }).on("mouseout", function() { + tooltipElem.transition().duration(500).style("opacity", 0); + const el = (0,d3__WEBPACK_IMPORTED_MODULE_2__/* .select */ .Ltv)(this); + el.classed("hover", false); + }); +}, "setupToolTips"); +functions.push(setupToolTips); +var direction = "TB"; +var getDirection = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(() => direction, "getDirection"); +var setDirection = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)((dir) => { + direction = dir; +}, "setDirection"); +var addNamespace = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(id) { + if (namespaces.has(id)) { + return; + } + namespaces.set(id, { + id, + classes: /* @__PURE__ */ new Map(), + children: {}, + domId: MERMAID_DOM_ID_PREFIX + id + "-" + namespaceCounter + }); + namespaceCounter++; +}, "addNamespace"); +var getNamespace = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(name) { + return namespaces.get(name); +}, "getNamespace"); +var getNamespaces = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function() { + return namespaces; +}, "getNamespaces"); +var addClassesToNamespace = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(id, classNames) { + if (!namespaces.has(id)) { + return; + } + for (const name of classNames) { + const { className } = splitClassNameAndType(name); + classes.get(className).parent = id; + namespaces.get(id).classes.set(className, classes.get(className)); + } +}, "addClassesToNamespace"); +var setCssStyle = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(function(id, styles) { + const thisClass = classes.get(id); + if (!styles || !thisClass) { + return; + } + for (const s of styles) { + if (s.includes(",")) { + thisClass.styles.push(...s.split(",")); + } else { + thisClass.styles.push(s); + } + } +}, "setCssStyle"); +var classDb_default = { + setAccTitle: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .setAccTitle */ .SV, + getAccTitle: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .getAccTitle */ .iN, + getAccDescription: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .getAccDescription */ .m7, + setAccDescription: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .setAccDescription */ .EI, + getConfig: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)(() => (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .getConfig2 */ .D7)().class, "getConfig"), + addClass, + bindFunctions, + clear: clear2, + getClass, + getClasses, + getNotes, + addAnnotation, + addNote, + getRelations, + addRelation, + getDirection, + setDirection, + addMember, + addMembers, + cleanupLabel, + lineType, + relationType, + setClickEvent, + setCssClass, + setLink, + getTooltip, + setTooltip, + lookUpDomId, + setDiagramTitle: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .setDiagramTitle */ .ke, + getDiagramTitle: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .getDiagramTitle */ .ab, + setClassLabel, + addNamespace, + addClassesToNamespace, + getNamespace, + getNamespaces, + setCssStyle +}; + +// src/diagrams/class/styles.js +var getStyles = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_1__/* .__name */ .K2)((options) => `g.classGroup text { + fill: ${options.nodeBorder || options.classText}; + stroke: none; + font-family: ${options.fontFamily}; + font-size: 10px; + + .title { + font-weight: bolder; + } + +} + +.nodeLabel, .edgeLabel { + color: ${options.classText}; +} +.edgeLabel .label rect { + fill: ${options.mainBkg}; +} +.label text { + fill: ${options.classText}; +} +.edgeLabel .label span { + background: ${options.mainBkg}; +} + +.classTitle { + font-weight: bolder; +} +.node rect, + .node circle, + .node ellipse, + .node polygon, + .node path { + fill: ${options.mainBkg}; + stroke: ${options.nodeBorder}; + stroke-width: 1px; + } + + +.divider { + stroke: ${options.nodeBorder}; + stroke-width: 1; +} + +g.clickable { + cursor: pointer; +} + +g.classGroup rect { + fill: ${options.mainBkg}; + stroke: ${options.nodeBorder}; +} + +g.classGroup line { + stroke: ${options.nodeBorder}; + stroke-width: 1; +} + +.classLabel .box { + stroke: none; + stroke-width: 0; + fill: ${options.mainBkg}; + opacity: 0.5; +} + +.classLabel .label { + fill: ${options.nodeBorder}; + font-size: 10px; +} + +.relation { + stroke: ${options.lineColor}; + stroke-width: 1; + fill: none; +} + +.dashed-line{ + stroke-dasharray: 3; +} + +.dotted-line{ + stroke-dasharray: 1 2; +} + +#compositionStart, .composition { + fill: ${options.lineColor} !important; + stroke: ${options.lineColor} !important; + stroke-width: 1; +} + +#compositionEnd, .composition { + fill: ${options.lineColor} !important; + stroke: ${options.lineColor} !important; + stroke-width: 1; +} + +#dependencyStart, .dependency { + fill: ${options.lineColor} !important; + stroke: ${options.lineColor} !important; + stroke-width: 1; +} + +#dependencyStart, .dependency { + fill: ${options.lineColor} !important; + stroke: ${options.lineColor} !important; + stroke-width: 1; +} + +#extensionStart, .extension { + fill: transparent !important; + stroke: ${options.lineColor} !important; + stroke-width: 1; +} + +#extensionEnd, .extension { + fill: transparent !important; + stroke: ${options.lineColor} !important; + stroke-width: 1; +} + +#aggregationStart, .aggregation { + fill: transparent !important; + stroke: ${options.lineColor} !important; + stroke-width: 1; +} + +#aggregationEnd, .aggregation { + fill: transparent !important; + stroke: ${options.lineColor} !important; + stroke-width: 1; +} + +#lollipopStart, .lollipop { + fill: ${options.mainBkg} !important; + stroke: ${options.lineColor} !important; + stroke-width: 1; +} + +#lollipopEnd, .lollipop { + fill: ${options.mainBkg} !important; + stroke: ${options.lineColor} !important; + stroke-width: 1; +} + +.edgeTerminals { + font-size: 11px; + line-height: initial; +} + +.classTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${options.textColor}; +} +`, "getStyles"); +var styles_default = getStyles; + + + + +/***/ }), + +/***/ 31953: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ IU: () => (/* binding */ clear), +/* harmony export */ Jo: () => (/* binding */ insertEdge), +/* harmony export */ T_: () => (/* binding */ positionEdgeLabel), +/* harmony export */ g0: () => (/* binding */ markers_default), +/* harmony export */ jP: () => (/* binding */ insertEdgeLabel) +/* harmony export */ }); +/* harmony import */ var _chunk_Z2VRG6XP_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(46578); +/* harmony import */ var _chunk_TINLTEC2_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(48496); +/* harmony import */ var _chunk_OERGPBFJ_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(67895); +/* harmony import */ var _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(57323); +/* harmony import */ var _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(64994); +/* harmony import */ var d3__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(20007); + + + + + + +// src/dagre-wrapper/markers.js +var insertMarkers = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_4__/* .__name */ .K2)((elem, markerArray, type, id) => { + markerArray.forEach((markerName) => { + markers[markerName](elem, type, id); + }); +}, "insertMarkers"); +var extension = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_4__/* .__name */ .K2)((elem, type, id) => { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_4__/* .log */ .Rm.trace("Making markers for ", id); + elem.append("defs").append("marker").attr("id", id + "_" + type + "-extensionStart").attr("class", "marker extension " + type).attr("refX", 18).attr("refY", 7).attr("markerWidth", 190).attr("markerHeight", 240).attr("orient", "auto").append("path").attr("d", "M 1,7 L18,13 V 1 Z"); + elem.append("defs").append("marker").attr("id", id + "_" + type + "-extensionEnd").attr("class", "marker extension " + type).attr("refX", 1).attr("refY", 7).attr("markerWidth", 20).attr("markerHeight", 28).attr("orient", "auto").append("path").attr("d", "M 1,1 V 13 L18,7 Z"); +}, "extension"); +var composition = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_4__/* .__name */ .K2)((elem, type, id) => { + elem.append("defs").append("marker").attr("id", id + "_" + type + "-compositionStart").attr("class", "marker composition " + type).attr("refX", 18).attr("refY", 7).attr("markerWidth", 190).attr("markerHeight", 240).attr("orient", "auto").append("path").attr("d", "M 18,7 L9,13 L1,7 L9,1 Z"); + elem.append("defs").append("marker").attr("id", id + "_" + type + "-compositionEnd").attr("class", "marker composition " + type).attr("refX", 1).attr("refY", 7).attr("markerWidth", 20).attr("markerHeight", 28).attr("orient", "auto").append("path").attr("d", "M 18,7 L9,13 L1,7 L9,1 Z"); +}, "composition"); +var aggregation = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_4__/* .__name */ .K2)((elem, type, id) => { + elem.append("defs").append("marker").attr("id", id + "_" + type + "-aggregationStart").attr("class", "marker aggregation " + type).attr("refX", 18).attr("refY", 7).attr("markerWidth", 190).attr("markerHeight", 240).attr("orient", "auto").append("path").attr("d", "M 18,7 L9,13 L1,7 L9,1 Z"); + elem.append("defs").append("marker").attr("id", id + "_" + type + "-aggregationEnd").attr("class", "marker aggregation " + type).attr("refX", 1).attr("refY", 7).attr("markerWidth", 20).attr("markerHeight", 28).attr("orient", "auto").append("path").attr("d", "M 18,7 L9,13 L1,7 L9,1 Z"); +}, "aggregation"); +var dependency = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_4__/* .__name */ .K2)((elem, type, id) => { + elem.append("defs").append("marker").attr("id", id + "_" + type + "-dependencyStart").attr("class", "marker dependency " + type).attr("refX", 6).attr("refY", 7).attr("markerWidth", 190).attr("markerHeight", 240).attr("orient", "auto").append("path").attr("d", "M 5,7 L9,13 L1,7 L9,1 Z"); + elem.append("defs").append("marker").attr("id", id + "_" + type + "-dependencyEnd").attr("class", "marker dependency " + type).attr("refX", 13).attr("refY", 7).attr("markerWidth", 20).attr("markerHeight", 28).attr("orient", "auto").append("path").attr("d", "M 18,7 L9,13 L14,7 L9,1 Z"); +}, "dependency"); +var lollipop = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_4__/* .__name */ .K2)((elem, type, id) => { + elem.append("defs").append("marker").attr("id", id + "_" + type + "-lollipopStart").attr("class", "marker lollipop " + type).attr("refX", 13).attr("refY", 7).attr("markerWidth", 190).attr("markerHeight", 240).attr("orient", "auto").append("circle").attr("stroke", "black").attr("fill", "transparent").attr("cx", 7).attr("cy", 7).attr("r", 6); + elem.append("defs").append("marker").attr("id", id + "_" + type + "-lollipopEnd").attr("class", "marker lollipop " + type).attr("refX", 1).attr("refY", 7).attr("markerWidth", 190).attr("markerHeight", 240).attr("orient", "auto").append("circle").attr("stroke", "black").attr("fill", "transparent").attr("cx", 7).attr("cy", 7).attr("r", 6); +}, "lollipop"); +var point = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_4__/* .__name */ .K2)((elem, type, id) => { + elem.append("marker").attr("id", id + "_" + type + "-pointEnd").attr("class", "marker " + type).attr("viewBox", "0 0 10 10").attr("refX", 6).attr("refY", 5).attr("markerUnits", "userSpaceOnUse").attr("markerWidth", 12).attr("markerHeight", 12).attr("orient", "auto").append("path").attr("d", "M 0 0 L 10 5 L 0 10 z").attr("class", "arrowMarkerPath").style("stroke-width", 1).style("stroke-dasharray", "1,0"); + elem.append("marker").attr("id", id + "_" + type + "-pointStart").attr("class", "marker " + type).attr("viewBox", "0 0 10 10").attr("refX", 4.5).attr("refY", 5).attr("markerUnits", "userSpaceOnUse").attr("markerWidth", 12).attr("markerHeight", 12).attr("orient", "auto").append("path").attr("d", "M 0 5 L 10 10 L 10 0 z").attr("class", "arrowMarkerPath").style("stroke-width", 1).style("stroke-dasharray", "1,0"); +}, "point"); +var circle = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_4__/* .__name */ .K2)((elem, type, id) => { + elem.append("marker").attr("id", id + "_" + type + "-circleEnd").attr("class", "marker " + type).attr("viewBox", "0 0 10 10").attr("refX", 11).attr("refY", 5).attr("markerUnits", "userSpaceOnUse").attr("markerWidth", 11).attr("markerHeight", 11).attr("orient", "auto").append("circle").attr("cx", "5").attr("cy", "5").attr("r", "5").attr("class", "arrowMarkerPath").style("stroke-width", 1).style("stroke-dasharray", "1,0"); + elem.append("marker").attr("id", id + "_" + type + "-circleStart").attr("class", "marker " + type).attr("viewBox", "0 0 10 10").attr("refX", -1).attr("refY", 5).attr("markerUnits", "userSpaceOnUse").attr("markerWidth", 11).attr("markerHeight", 11).attr("orient", "auto").append("circle").attr("cx", "5").attr("cy", "5").attr("r", "5").attr("class", "arrowMarkerPath").style("stroke-width", 1).style("stroke-dasharray", "1,0"); +}, "circle"); +var cross = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_4__/* .__name */ .K2)((elem, type, id) => { + elem.append("marker").attr("id", id + "_" + type + "-crossEnd").attr("class", "marker cross " + type).attr("viewBox", "0 0 11 11").attr("refX", 12).attr("refY", 5.2).attr("markerUnits", "userSpaceOnUse").attr("markerWidth", 11).attr("markerHeight", 11).attr("orient", "auto").append("path").attr("d", "M 1,1 l 9,9 M 10,1 l -9,9").attr("class", "arrowMarkerPath").style("stroke-width", 2).style("stroke-dasharray", "1,0"); + elem.append("marker").attr("id", id + "_" + type + "-crossStart").attr("class", "marker cross " + type).attr("viewBox", "0 0 11 11").attr("refX", -1).attr("refY", 5.2).attr("markerUnits", "userSpaceOnUse").attr("markerWidth", 11).attr("markerHeight", 11).attr("orient", "auto").append("path").attr("d", "M 1,1 l 9,9 M 10,1 l -9,9").attr("class", "arrowMarkerPath").style("stroke-width", 2).style("stroke-dasharray", "1,0"); +}, "cross"); +var barb = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_4__/* .__name */ .K2)((elem, type, id) => { + elem.append("defs").append("marker").attr("id", id + "_" + type + "-barbEnd").attr("refX", 19).attr("refY", 7).attr("markerWidth", 20).attr("markerHeight", 14).attr("markerUnits", "strokeWidth").attr("orient", "auto").append("path").attr("d", "M 19,7 L9,13 L14,7 L9,1 Z"); +}, "barb"); +var markers = { + extension, + composition, + aggregation, + dependency, + lollipop, + point, + circle, + cross, + barb +}; +var markers_default = insertMarkers; + +// src/dagre-wrapper/edges.js + + +// src/dagre-wrapper/edgeMarker.ts +var addEdgeMarkers = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_4__/* .__name */ .K2)((svgPath, edge, url, id, diagramType) => { + if (edge.arrowTypeStart) { + addEdgeMarker(svgPath, "start", edge.arrowTypeStart, url, id, diagramType); + } + if (edge.arrowTypeEnd) { + addEdgeMarker(svgPath, "end", edge.arrowTypeEnd, url, id, diagramType); + } +}, "addEdgeMarkers"); +var arrowTypesMap = { + arrow_cross: "cross", + arrow_point: "point", + arrow_barb: "barb", + arrow_circle: "circle", + aggregation: "aggregation", + extension: "extension", + composition: "composition", + dependency: "dependency", + lollipop: "lollipop" +}; +var addEdgeMarker = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_4__/* .__name */ .K2)((svgPath, position, arrowType, url, id, diagramType) => { + const endMarkerType = arrowTypesMap[arrowType]; + if (!endMarkerType) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_4__/* .log */ .Rm.warn(`Unknown arrow type: ${arrowType}`); + return; + } + const suffix = position === "start" ? "Start" : "End"; + svgPath.attr(`marker-${position}`, `url(${url}#${id}_${diagramType}-${endMarkerType}${suffix})`); +}, "addEdgeMarker"); + +// src/dagre-wrapper/edges.js +var edgeLabels = {}; +var terminalLabels = {}; +var clear = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_4__/* .__name */ .K2)(() => { + edgeLabels = {}; + terminalLabels = {}; +}, "clear"); +var insertEdgeLabel = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_4__/* .__name */ .K2)((elem, edge) => { + const config = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_4__/* .getConfig2 */ .D7)(); + const useHtmlLabels = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_4__/* .evaluate */ ._3)(config.flowchart.htmlLabels); + const labelElement = edge.labelType === "markdown" ? (0,_chunk_OERGPBFJ_mjs__WEBPACK_IMPORTED_MODULE_2__/* .createText */ .GZ)( + elem, + edge.label, + { + style: edge.labelStyle, + useHtmlLabels, + addSvgBackground: true + }, + config + ) : (0,_chunk_Z2VRG6XP_mjs__WEBPACK_IMPORTED_MODULE_0__/* .createLabel_default */ .DA)(edge.label, edge.labelStyle); + const edgeLabel = elem.insert("g").attr("class", "edgeLabel"); + const label = edgeLabel.insert("g").attr("class", "label"); + label.node().appendChild(labelElement); + let bbox = labelElement.getBBox(); + if (useHtmlLabels) { + const div = labelElement.children[0]; + const dv = (0,d3__WEBPACK_IMPORTED_MODULE_5__/* .select */ .Ltv)(labelElement); + bbox = div.getBoundingClientRect(); + dv.attr("width", bbox.width); + dv.attr("height", bbox.height); + } + label.attr("transform", "translate(" + -bbox.width / 2 + ", " + -bbox.height / 2 + ")"); + edgeLabels[edge.id] = edgeLabel; + edge.width = bbox.width; + edge.height = bbox.height; + let fo; + if (edge.startLabelLeft) { + const startLabelElement = (0,_chunk_Z2VRG6XP_mjs__WEBPACK_IMPORTED_MODULE_0__/* .createLabel_default */ .DA)(edge.startLabelLeft, edge.labelStyle); + const startEdgeLabelLeft = elem.insert("g").attr("class", "edgeTerminals"); + const inner = startEdgeLabelLeft.insert("g").attr("class", "inner"); + fo = inner.node().appendChild(startLabelElement); + const slBox = startLabelElement.getBBox(); + inner.attr("transform", "translate(" + -slBox.width / 2 + ", " + -slBox.height / 2 + ")"); + if (!terminalLabels[edge.id]) { + terminalLabels[edge.id] = {}; + } + terminalLabels[edge.id].startLeft = startEdgeLabelLeft; + setTerminalWidth(fo, edge.startLabelLeft); + } + if (edge.startLabelRight) { + const startLabelElement = (0,_chunk_Z2VRG6XP_mjs__WEBPACK_IMPORTED_MODULE_0__/* .createLabel_default */ .DA)(edge.startLabelRight, edge.labelStyle); + const startEdgeLabelRight = elem.insert("g").attr("class", "edgeTerminals"); + const inner = startEdgeLabelRight.insert("g").attr("class", "inner"); + fo = startEdgeLabelRight.node().appendChild(startLabelElement); + inner.node().appendChild(startLabelElement); + const slBox = startLabelElement.getBBox(); + inner.attr("transform", "translate(" + -slBox.width / 2 + ", " + -slBox.height / 2 + ")"); + if (!terminalLabels[edge.id]) { + terminalLabels[edge.id] = {}; + } + terminalLabels[edge.id].startRight = startEdgeLabelRight; + setTerminalWidth(fo, edge.startLabelRight); + } + if (edge.endLabelLeft) { + const endLabelElement = (0,_chunk_Z2VRG6XP_mjs__WEBPACK_IMPORTED_MODULE_0__/* .createLabel_default */ .DA)(edge.endLabelLeft, edge.labelStyle); + const endEdgeLabelLeft = elem.insert("g").attr("class", "edgeTerminals"); + const inner = endEdgeLabelLeft.insert("g").attr("class", "inner"); + fo = inner.node().appendChild(endLabelElement); + const slBox = endLabelElement.getBBox(); + inner.attr("transform", "translate(" + -slBox.width / 2 + ", " + -slBox.height / 2 + ")"); + endEdgeLabelLeft.node().appendChild(endLabelElement); + if (!terminalLabels[edge.id]) { + terminalLabels[edge.id] = {}; + } + terminalLabels[edge.id].endLeft = endEdgeLabelLeft; + setTerminalWidth(fo, edge.endLabelLeft); + } + if (edge.endLabelRight) { + const endLabelElement = (0,_chunk_Z2VRG6XP_mjs__WEBPACK_IMPORTED_MODULE_0__/* .createLabel_default */ .DA)(edge.endLabelRight, edge.labelStyle); + const endEdgeLabelRight = elem.insert("g").attr("class", "edgeTerminals"); + const inner = endEdgeLabelRight.insert("g").attr("class", "inner"); + fo = inner.node().appendChild(endLabelElement); + const slBox = endLabelElement.getBBox(); + inner.attr("transform", "translate(" + -slBox.width / 2 + ", " + -slBox.height / 2 + ")"); + endEdgeLabelRight.node().appendChild(endLabelElement); + if (!terminalLabels[edge.id]) { + terminalLabels[edge.id] = {}; + } + terminalLabels[edge.id].endRight = endEdgeLabelRight; + setTerminalWidth(fo, edge.endLabelRight); + } + return labelElement; +}, "insertEdgeLabel"); +function setTerminalWidth(fo, value) { + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_4__/* .getConfig2 */ .D7)().flowchart.htmlLabels && fo) { + fo.style.width = value.length * 9 + "px"; + fo.style.height = "12px"; + } +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_4__/* .__name */ .K2)(setTerminalWidth, "setTerminalWidth"); +var positionEdgeLabel = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_4__/* .__name */ .K2)((edge, paths) => { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_4__/* .log */ .Rm.debug("Moving label abc88 ", edge.id, edge.label, edgeLabels[edge.id], paths); + let path = paths.updatedPath ? paths.updatedPath : paths.originalPath; + const siteConfig = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_4__/* .getConfig2 */ .D7)(); + const { subGraphTitleTotalMargin } = (0,_chunk_TINLTEC2_mjs__WEBPACK_IMPORTED_MODULE_1__/* .getSubGraphTitleMargins */ .O)(siteConfig); + if (edge.label) { + const el = edgeLabels[edge.id]; + let x = edge.x; + let y = edge.y; + if (path) { + const pos = _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_3__/* .utils_default */ ._K.calcLabelPosition(path); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_4__/* .log */ .Rm.debug( + "Moving label " + edge.label + " from (", + x, + ",", + y, + ") to (", + pos.x, + ",", + pos.y, + ") abc88" + ); + if (paths.updatedPath) { + x = pos.x; + y = pos.y; + } + } + el.attr("transform", `translate(${x}, ${y + subGraphTitleTotalMargin / 2})`); + } + if (edge.startLabelLeft) { + const el = terminalLabels[edge.id].startLeft; + let x = edge.x; + let y = edge.y; + if (path) { + const pos = _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_3__/* .utils_default */ ._K.calcTerminalLabelPosition(edge.arrowTypeStart ? 10 : 0, "start_left", path); + x = pos.x; + y = pos.y; + } + el.attr("transform", `translate(${x}, ${y})`); + } + if (edge.startLabelRight) { + const el = terminalLabels[edge.id].startRight; + let x = edge.x; + let y = edge.y; + if (path) { + const pos = _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_3__/* .utils_default */ ._K.calcTerminalLabelPosition( + edge.arrowTypeStart ? 10 : 0, + "start_right", + path + ); + x = pos.x; + y = pos.y; + } + el.attr("transform", `translate(${x}, ${y})`); + } + if (edge.endLabelLeft) { + const el = terminalLabels[edge.id].endLeft; + let x = edge.x; + let y = edge.y; + if (path) { + const pos = _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_3__/* .utils_default */ ._K.calcTerminalLabelPosition(edge.arrowTypeEnd ? 10 : 0, "end_left", path); + x = pos.x; + y = pos.y; + } + el.attr("transform", `translate(${x}, ${y})`); + } + if (edge.endLabelRight) { + const el = terminalLabels[edge.id].endRight; + let x = edge.x; + let y = edge.y; + if (path) { + const pos = _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_3__/* .utils_default */ ._K.calcTerminalLabelPosition(edge.arrowTypeEnd ? 10 : 0, "end_right", path); + x = pos.x; + y = pos.y; + } + el.attr("transform", `translate(${x}, ${y})`); + } +}, "positionEdgeLabel"); +var outsideNode = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_4__/* .__name */ .K2)((node, point2) => { + const x = node.x; + const y = node.y; + const dx = Math.abs(point2.x - x); + const dy = Math.abs(point2.y - y); + const w = node.width / 2; + const h = node.height / 2; + if (dx >= w || dy >= h) { + return true; + } + return false; +}, "outsideNode"); +var intersection = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_4__/* .__name */ .K2)((node, outsidePoint, insidePoint) => { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_4__/* .log */ .Rm.debug(`intersection calc abc89: + outsidePoint: ${JSON.stringify(outsidePoint)} + insidePoint : ${JSON.stringify(insidePoint)} + node : x:${node.x} y:${node.y} w:${node.width} h:${node.height}`); + const x = node.x; + const y = node.y; + const dx = Math.abs(x - insidePoint.x); + const w = node.width / 2; + let r = insidePoint.x < outsidePoint.x ? w - dx : w + dx; + const h = node.height / 2; + const Q = Math.abs(outsidePoint.y - insidePoint.y); + const R = Math.abs(outsidePoint.x - insidePoint.x); + if (Math.abs(y - outsidePoint.y) * w > Math.abs(x - outsidePoint.x) * h) { + let q = insidePoint.y < outsidePoint.y ? outsidePoint.y - h - y : y - h - outsidePoint.y; + r = R * q / Q; + const res = { + x: insidePoint.x < outsidePoint.x ? insidePoint.x + r : insidePoint.x - R + r, + y: insidePoint.y < outsidePoint.y ? insidePoint.y + Q - q : insidePoint.y - Q + q + }; + if (r === 0) { + res.x = outsidePoint.x; + res.y = outsidePoint.y; + } + if (R === 0) { + res.x = outsidePoint.x; + } + if (Q === 0) { + res.y = outsidePoint.y; + } + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_4__/* .log */ .Rm.debug(`abc89 topp/bott calc, Q ${Q}, q ${q}, R ${R}, r ${r}`, res); + return res; + } else { + if (insidePoint.x < outsidePoint.x) { + r = outsidePoint.x - w - x; + } else { + r = x - w - outsidePoint.x; + } + let q = Q * r / R; + let _x = insidePoint.x < outsidePoint.x ? insidePoint.x + R - r : insidePoint.x - R + r; + let _y = insidePoint.y < outsidePoint.y ? insidePoint.y + q : insidePoint.y - q; + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_4__/* .log */ .Rm.debug(`sides calc abc89, Q ${Q}, q ${q}, R ${R}, r ${r}`, { _x, _y }); + if (r === 0) { + _x = outsidePoint.x; + _y = outsidePoint.y; + } + if (R === 0) { + _x = outsidePoint.x; + } + if (Q === 0) { + _y = outsidePoint.y; + } + return { x: _x, y: _y }; + } +}, "intersection"); +var cutPathAtIntersect = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_4__/* .__name */ .K2)((_points, boundaryNode) => { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_4__/* .log */ .Rm.debug("abc88 cutPathAtIntersect", _points, boundaryNode); + let points = []; + let lastPointOutside = _points[0]; + let isInside = false; + _points.forEach((point2) => { + if (!outsideNode(boundaryNode, point2) && !isInside) { + const inter = intersection(boundaryNode, lastPointOutside, point2); + let pointPresent = false; + points.forEach((p) => { + pointPresent = pointPresent || p.x === inter.x && p.y === inter.y; + }); + if (!points.some((e) => e.x === inter.x && e.y === inter.y)) { + points.push(inter); + } + isInside = true; + } else { + lastPointOutside = point2; + if (!isInside) { + points.push(point2); + } + } + }); + return points; +}, "cutPathAtIntersect"); +var insertEdge = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_4__/* .__name */ .K2)(function(elem, e, edge, clusterDb, diagramType, graph, id) { + let points = edge.points; + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_4__/* .log */ .Rm.debug("abc88 InsertEdge: edge=", edge, "e=", e); + let pointsHasChanged = false; + const tail = graph.node(e.v); + var head = graph.node(e.w); + if (head?.intersect && tail?.intersect) { + points = points.slice(1, edge.points.length - 1); + points.unshift(tail.intersect(points[0])); + points.push(head.intersect(points[points.length - 1])); + } + if (edge.toCluster) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_4__/* .log */ .Rm.debug("to cluster abc88", clusterDb[edge.toCluster]); + points = cutPathAtIntersect(edge.points, clusterDb[edge.toCluster].node); + pointsHasChanged = true; + } + if (edge.fromCluster) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_4__/* .log */ .Rm.debug("from cluster abc88", clusterDb[edge.fromCluster]); + points = cutPathAtIntersect(points.reverse(), clusterDb[edge.fromCluster].node).reverse(); + pointsHasChanged = true; + } + const lineData = points.filter((p) => !Number.isNaN(p.y)); + let curve = d3__WEBPACK_IMPORTED_MODULE_5__/* .curveBasis */ .qrM; + if (edge.curve && (diagramType === "graph" || diagramType === "flowchart")) { + curve = edge.curve; + } + const { x, y } = (0,_chunk_TINLTEC2_mjs__WEBPACK_IMPORTED_MODULE_1__/* .getLineFunctionsWithOffset */ .R)(edge); + const lineFunction = (0,d3__WEBPACK_IMPORTED_MODULE_5__/* .line */ .n8j)().x(x).y(y).curve(curve); + let strokeClasses; + switch (edge.thickness) { + case "normal": + strokeClasses = "edge-thickness-normal"; + break; + case "thick": + strokeClasses = "edge-thickness-thick"; + break; + case "invisible": + strokeClasses = "edge-thickness-thick"; + break; + default: + strokeClasses = ""; + } + switch (edge.pattern) { + case "solid": + strokeClasses += " edge-pattern-solid"; + break; + case "dotted": + strokeClasses += " edge-pattern-dotted"; + break; + case "dashed": + strokeClasses += " edge-pattern-dashed"; + break; + } + const svgPath = elem.append("path").attr("d", lineFunction(lineData)).attr("id", edge.id).attr("class", " " + strokeClasses + (edge.classes ? " " + edge.classes : "")).attr("style", edge.style); + let url = ""; + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_4__/* .getConfig2 */ .D7)().flowchart.arrowMarkerAbsolute || (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_4__/* .getConfig2 */ .D7)().state.arrowMarkerAbsolute) { + url = window.location.protocol + "//" + window.location.host + window.location.pathname + window.location.search; + url = url.replace(/\(/g, "\\("); + url = url.replace(/\)/g, "\\)"); + } + addEdgeMarkers(svgPath, edge, url, id, diagramType); + let paths = {}; + if (pointsHasChanged) { + paths.updatedPath = points; + } + paths.originalPath = edge.points; + return paths; +}, "insertEdge"); + + + + +/***/ }), + +/***/ 46578: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ DA: () => (/* binding */ createLabel_default), +/* harmony export */ IU: () => (/* binding */ clear), +/* harmony export */ U7: () => (/* binding */ setNodeElem), +/* harmony export */ U_: () => (/* binding */ positionNode), +/* harmony export */ lC: () => (/* binding */ updateNodeBounds), +/* harmony export */ nM: () => (/* binding */ intersect_rect_default), +/* harmony export */ on: () => (/* binding */ insertNode) +/* harmony export */ }); +/* harmony import */ var _chunk_OERGPBFJ_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(67895); +/* harmony import */ var _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(57323); +/* harmony import */ var _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(64994); +/* harmony import */ var d3__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(20007); + + + + +// src/dagre-wrapper/createLabel.js + +function applyStyle(dom, styleFn) { + if (styleFn) { + dom.attr("style", styleFn); + } +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(applyStyle, "applyStyle"); +function addHtmlLabel(node) { + const fo = (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(document.createElementNS("http://www.w3.org/2000/svg", "foreignObject")); + const div = fo.append("xhtml:div"); + const label = node.label; + const labelClass = node.isNode ? "nodeLabel" : "edgeLabel"; + const span = div.append("span"); + span.html(label); + applyStyle(span, node.labelStyle); + span.attr("class", labelClass); + applyStyle(div, node.labelStyle); + div.style("display", "inline-block"); + div.style("white-space", "nowrap"); + div.attr("xmlns", "http://www.w3.org/1999/xhtml"); + return fo.node(); +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(addHtmlLabel, "addHtmlLabel"); +var createLabel = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((_vertexText, style, isTitle, isNode) => { + let vertexText = _vertexText || ""; + if (typeof vertexText === "object") { + vertexText = vertexText[0]; + } + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .evaluate */ ._3)((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)().flowchart.htmlLabels)) { + vertexText = vertexText.replace(/\\n|\n/g, "<br />"); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.debug("vertexText" + vertexText); + const node = { + isNode, + label: (0,_chunk_OERGPBFJ_mjs__WEBPACK_IMPORTED_MODULE_0__/* .replaceIconSubstring */ .hE)((0,_chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_1__/* .decodeEntities */ .Sm)(vertexText)), + labelStyle: style.replace("fill:", "color:") + }; + let vertexNode = addHtmlLabel(node); + return vertexNode; + } else { + const svgLabel = document.createElementNS("http://www.w3.org/2000/svg", "text"); + svgLabel.setAttribute("style", style.replace("color:", "fill:")); + let rows = []; + if (typeof vertexText === "string") { + rows = vertexText.split(/\\n|\n|<br\s*\/?>/gi); + } else if (Array.isArray(vertexText)) { + rows = vertexText; + } else { + rows = []; + } + for (const row of rows) { + const tspan = document.createElementNS("http://www.w3.org/2000/svg", "tspan"); + tspan.setAttributeNS("http://www.w3.org/XML/1998/namespace", "xml:space", "preserve"); + tspan.setAttribute("dy", "1em"); + tspan.setAttribute("x", "0"); + if (isTitle) { + tspan.setAttribute("class", "title-row"); + } else { + tspan.setAttribute("class", "row"); + } + tspan.textContent = row.trim(); + svgLabel.appendChild(tspan); + } + return svgLabel; + } +}, "createLabel"); +var createLabel_default = createLabel; + +// src/dagre-wrapper/shapes/util.js + +var labelHelper = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node, _classes, isNode) => { + const config = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)(); + let classes; + const useHtmlLabels = node.useHtmlLabels || (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .evaluate */ ._3)(config.flowchart.htmlLabels); + if (!_classes) { + classes = "node default"; + } else { + classes = _classes; + } + const shapeSvg = parent.insert("g").attr("class", classes).attr("id", node.domId || node.id); + const label = shapeSvg.insert("g").attr("class", "label").attr("style", node.labelStyle); + let labelText; + if (node.labelText === void 0) { + labelText = ""; + } else { + labelText = typeof node.labelText === "string" ? node.labelText : node.labelText[0]; + } + const textNode = label.node(); + let text; + if (node.labelType === "markdown") { + text = (0,_chunk_OERGPBFJ_mjs__WEBPACK_IMPORTED_MODULE_0__/* .createText */ .GZ)( + label, + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .sanitizeText */ .jZ)((0,_chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_1__/* .decodeEntities */ .Sm)(labelText), config), + { + useHtmlLabels, + width: node.width || config.flowchart.wrappingWidth, + classes: "markdown-node-label" + }, + config + ); + } else { + text = textNode.appendChild( + createLabel_default((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .sanitizeText */ .jZ)((0,_chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_1__/* .decodeEntities */ .Sm)(labelText), config), node.labelStyle, false, isNode) + ); + } + let bbox = text.getBBox(); + const halfPadding = node.padding / 2; + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .evaluate */ ._3)(config.flowchart.htmlLabels)) { + const div = text.children[0]; + const dv = (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(text); + const images = div.getElementsByTagName("img"); + if (images) { + const noImgText = labelText.replace(/<img[^>]*>/g, "").trim() === ""; + await Promise.all( + [...images].map( + (img) => new Promise((res) => { + function setupImage() { + img.style.display = "flex"; + img.style.flexDirection = "column"; + if (noImgText) { + const bodyFontSize = config.fontSize ? config.fontSize : window.getComputedStyle(document.body).fontSize; + const enlargingFactor = 5; + const width = parseInt(bodyFontSize, 10) * enlargingFactor + "px"; + img.style.minWidth = width; + img.style.maxWidth = width; + } else { + img.style.width = "100%"; + } + res(img); + } + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(setupImage, "setupImage"); + setTimeout(() => { + if (img.complete) { + setupImage(); + } + }); + img.addEventListener("error", setupImage); + img.addEventListener("load", setupImage); + }) + ) + ); + } + bbox = div.getBoundingClientRect(); + dv.attr("width", bbox.width); + dv.attr("height", bbox.height); + } + if (useHtmlLabels) { + label.attr("transform", "translate(" + -bbox.width / 2 + ", " + -bbox.height / 2 + ")"); + } else { + label.attr("transform", "translate(0, " + -bbox.height / 2 + ")"); + } + if (node.centerLabel) { + label.attr("transform", "translate(" + -bbox.width / 2 + ", " + -bbox.height / 2 + ")"); + } + label.insert("rect", ":first-child"); + return { shapeSvg, bbox, halfPadding, label }; +}, "labelHelper"); +var updateNodeBounds = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((node, element) => { + const bbox = element.node().getBBox(); + node.width = bbox.width; + node.height = bbox.height; +}, "updateNodeBounds"); +function insertPolygonShape(parent, w, h, points) { + return parent.insert("polygon", ":first-child").attr( + "points", + points.map(function(d) { + return d.x + "," + d.y; + }).join(" ") + ).attr("class", "label-container").attr("transform", "translate(" + -w / 2 + "," + h / 2 + ")"); +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(insertPolygonShape, "insertPolygonShape"); + +// src/dagre-wrapper/nodes.js + + +// src/dagre-wrapper/blockArrowHelper.ts +var expandAndDeduplicateDirections = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((directions) => { + const uniqueDirections = /* @__PURE__ */ new Set(); + for (const direction of directions) { + switch (direction) { + case "x": + uniqueDirections.add("right"); + uniqueDirections.add("left"); + break; + case "y": + uniqueDirections.add("up"); + uniqueDirections.add("down"); + break; + default: + uniqueDirections.add(direction); + break; + } + } + return uniqueDirections; +}, "expandAndDeduplicateDirections"); +var getArrowPoints = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((duplicatedDirections, bbox, node) => { + const directions = expandAndDeduplicateDirections(duplicatedDirections); + const f = 2; + const height = bbox.height + 2 * node.padding; + const midpoint = height / f; + const width = bbox.width + 2 * midpoint + node.padding; + const padding = node.padding / 2; + if (directions.has("right") && directions.has("left") && directions.has("up") && directions.has("down")) { + return [ + // Bottom + { x: 0, y: 0 }, + { x: midpoint, y: 0 }, + { x: width / 2, y: 2 * padding }, + { x: width - midpoint, y: 0 }, + { x: width, y: 0 }, + // Right + { x: width, y: -height / 3 }, + { x: width + 2 * padding, y: -height / 2 }, + { x: width, y: -2 * height / 3 }, + { x: width, y: -height }, + // Top + { x: width - midpoint, y: -height }, + { x: width / 2, y: -height - 2 * padding }, + { x: midpoint, y: -height }, + // Left + { x: 0, y: -height }, + { x: 0, y: -2 * height / 3 }, + { x: -2 * padding, y: -height / 2 }, + { x: 0, y: -height / 3 } + ]; + } + if (directions.has("right") && directions.has("left") && directions.has("up")) { + return [ + { x: midpoint, y: 0 }, + { x: width - midpoint, y: 0 }, + { x: width, y: -height / 2 }, + { x: width - midpoint, y: -height }, + { x: midpoint, y: -height }, + { x: 0, y: -height / 2 } + ]; + } + if (directions.has("right") && directions.has("left") && directions.has("down")) { + return [ + { x: 0, y: 0 }, + { x: midpoint, y: -height }, + { x: width - midpoint, y: -height }, + { x: width, y: 0 } + ]; + } + if (directions.has("right") && directions.has("up") && directions.has("down")) { + return [ + { x: 0, y: 0 }, + { x: width, y: -midpoint }, + { x: width, y: -height + midpoint }, + { x: 0, y: -height } + ]; + } + if (directions.has("left") && directions.has("up") && directions.has("down")) { + return [ + { x: width, y: 0 }, + { x: 0, y: -midpoint }, + { x: 0, y: -height + midpoint }, + { x: width, y: -height } + ]; + } + if (directions.has("right") && directions.has("left")) { + return [ + { x: midpoint, y: 0 }, + { x: midpoint, y: -padding }, + { x: width - midpoint, y: -padding }, + { x: width - midpoint, y: 0 }, + { x: width, y: -height / 2 }, + { x: width - midpoint, y: -height }, + { x: width - midpoint, y: -height + padding }, + { x: midpoint, y: -height + padding }, + { x: midpoint, y: -height }, + { x: 0, y: -height / 2 } + ]; + } + if (directions.has("up") && directions.has("down")) { + return [ + // Bottom center + { x: width / 2, y: 0 }, + // Left pont of bottom arrow + { x: 0, y: -padding }, + { x: midpoint, y: -padding }, + // Left top over vertical section + { x: midpoint, y: -height + padding }, + { x: 0, y: -height + padding }, + // Top of arrow + { x: width / 2, y: -height }, + { x: width, y: -height + padding }, + // Top of right vertical bar + { x: width - midpoint, y: -height + padding }, + { x: width - midpoint, y: -padding }, + { x: width, y: -padding } + ]; + } + if (directions.has("right") && directions.has("up")) { + return [ + { x: 0, y: 0 }, + { x: width, y: -midpoint }, + { x: 0, y: -height } + ]; + } + if (directions.has("right") && directions.has("down")) { + return [ + { x: 0, y: 0 }, + { x: width, y: 0 }, + { x: 0, y: -height } + ]; + } + if (directions.has("left") && directions.has("up")) { + return [ + { x: width, y: 0 }, + { x: 0, y: -midpoint }, + { x: width, y: -height } + ]; + } + if (directions.has("left") && directions.has("down")) { + return [ + { x: width, y: 0 }, + { x: 0, y: 0 }, + { x: width, y: -height } + ]; + } + if (directions.has("right")) { + return [ + { x: midpoint, y: -padding }, + { x: midpoint, y: -padding }, + { x: width - midpoint, y: -padding }, + { x: width - midpoint, y: 0 }, + { x: width, y: -height / 2 }, + { x: width - midpoint, y: -height }, + { x: width - midpoint, y: -height + padding }, + // top left corner of arrow + { x: midpoint, y: -height + padding }, + { x: midpoint, y: -height + padding } + ]; + } + if (directions.has("left")) { + return [ + { x: midpoint, y: 0 }, + { x: midpoint, y: -padding }, + // Two points, the right corners + { x: width - midpoint, y: -padding }, + { x: width - midpoint, y: -height + padding }, + { x: midpoint, y: -height + padding }, + { x: midpoint, y: -height }, + { x: 0, y: -height / 2 } + ]; + } + if (directions.has("up")) { + return [ + // Bottom center + { x: midpoint, y: -padding }, + // Left top over vertical section + { x: midpoint, y: -height + padding }, + { x: 0, y: -height + padding }, + // Top of arrow + { x: width / 2, y: -height }, + { x: width, y: -height + padding }, + // Top of right vertical bar + { x: width - midpoint, y: -height + padding }, + { x: width - midpoint, y: -padding } + ]; + } + if (directions.has("down")) { + return [ + // Bottom center + { x: width / 2, y: 0 }, + // Left pont of bottom arrow + { x: 0, y: -padding }, + { x: midpoint, y: -padding }, + // Left top over vertical section + { x: midpoint, y: -height + padding }, + { x: width - midpoint, y: -height + padding }, + { x: width - midpoint, y: -padding }, + { x: width, y: -padding } + ]; + } + return [{ x: 0, y: 0 }]; +}, "getArrowPoints"); + +// src/dagre-wrapper/intersect/intersect-node.js +function intersectNode(node, point) { + return node.intersect(point); +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(intersectNode, "intersectNode"); +var intersect_node_default = intersectNode; + +// src/dagre-wrapper/intersect/intersect-ellipse.js +function intersectEllipse(node, rx, ry, point) { + var cx = node.x; + var cy = node.y; + var px = cx - point.x; + var py = cy - point.y; + var det = Math.sqrt(rx * rx * py * py + ry * ry * px * px); + var dx = Math.abs(rx * ry * px / det); + if (point.x < cx) { + dx = -dx; + } + var dy = Math.abs(rx * ry * py / det); + if (point.y < cy) { + dy = -dy; + } + return { x: cx + dx, y: cy + dy }; +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(intersectEllipse, "intersectEllipse"); +var intersect_ellipse_default = intersectEllipse; + +// src/dagre-wrapper/intersect/intersect-circle.js +function intersectCircle(node, rx, point) { + return intersect_ellipse_default(node, rx, rx, point); +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(intersectCircle, "intersectCircle"); +var intersect_circle_default = intersectCircle; + +// src/dagre-wrapper/intersect/intersect-line.js +function intersectLine(p1, p2, q1, q2) { + var a1, a2, b1, b2, c1, c2; + var r1, r2, r3, r4; + var denom, offset, num; + var x, y; + a1 = p2.y - p1.y; + b1 = p1.x - p2.x; + c1 = p2.x * p1.y - p1.x * p2.y; + r3 = a1 * q1.x + b1 * q1.y + c1; + r4 = a1 * q2.x + b1 * q2.y + c1; + if (r3 !== 0 && r4 !== 0 && sameSign(r3, r4)) { + return; + } + a2 = q2.y - q1.y; + b2 = q1.x - q2.x; + c2 = q2.x * q1.y - q1.x * q2.y; + r1 = a2 * p1.x + b2 * p1.y + c2; + r2 = a2 * p2.x + b2 * p2.y + c2; + if (r1 !== 0 && r2 !== 0 && sameSign(r1, r2)) { + return; + } + denom = a1 * b2 - a2 * b1; + if (denom === 0) { + return; + } + offset = Math.abs(denom / 2); + num = b1 * c2 - b2 * c1; + x = num < 0 ? (num - offset) / denom : (num + offset) / denom; + num = a2 * c1 - a1 * c2; + y = num < 0 ? (num - offset) / denom : (num + offset) / denom; + return { x, y }; +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(intersectLine, "intersectLine"); +function sameSign(r1, r2) { + return r1 * r2 > 0; +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(sameSign, "sameSign"); +var intersect_line_default = intersectLine; + +// src/dagre-wrapper/intersect/intersect-polygon.js +var intersect_polygon_default = intersectPolygon; +function intersectPolygon(node, polyPoints, point) { + var x1 = node.x; + var y1 = node.y; + var intersections = []; + var minX = Number.POSITIVE_INFINITY; + var minY = Number.POSITIVE_INFINITY; + if (typeof polyPoints.forEach === "function") { + polyPoints.forEach(function(entry) { + minX = Math.min(minX, entry.x); + minY = Math.min(minY, entry.y); + }); + } else { + minX = Math.min(minX, polyPoints.x); + minY = Math.min(minY, polyPoints.y); + } + var left = x1 - node.width / 2 - minX; + var top = y1 - node.height / 2 - minY; + for (var i = 0; i < polyPoints.length; i++) { + var p1 = polyPoints[i]; + var p2 = polyPoints[i < polyPoints.length - 1 ? i + 1 : 0]; + var intersect = intersect_line_default( + node, + point, + { x: left + p1.x, y: top + p1.y }, + { x: left + p2.x, y: top + p2.y } + ); + if (intersect) { + intersections.push(intersect); + } + } + if (!intersections.length) { + return node; + } + if (intersections.length > 1) { + intersections.sort(function(p, q) { + var pdx = p.x - point.x; + var pdy = p.y - point.y; + var distp = Math.sqrt(pdx * pdx + pdy * pdy); + var qdx = q.x - point.x; + var qdy = q.y - point.y; + var distq = Math.sqrt(qdx * qdx + qdy * qdy); + return distp < distq ? -1 : distp === distq ? 0 : 1; + }); + } + return intersections[0]; +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(intersectPolygon, "intersectPolygon"); + +// src/dagre-wrapper/intersect/intersect-rect.js +var intersectRect = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((node, point) => { + var x = node.x; + var y = node.y; + var dx = point.x - x; + var dy = point.y - y; + var w = node.width / 2; + var h = node.height / 2; + var sx, sy; + if (Math.abs(dy) * w > Math.abs(dx) * h) { + if (dy < 0) { + h = -h; + } + sx = dy === 0 ? 0 : h * dx / dy; + sy = h; + } else { + if (dx < 0) { + w = -w; + } + sx = w; + sy = dx === 0 ? 0 : w * dy / dx; + } + return { x: x + sx, y: y + sy }; +}, "intersectRect"); +var intersect_rect_default = intersectRect; + +// src/dagre-wrapper/intersect/index.js +var intersect_default = { + node: intersect_node_default, + circle: intersect_circle_default, + ellipse: intersect_ellipse_default, + polygon: intersect_polygon_default, + rect: intersect_rect_default +}; + +// src/dagre-wrapper/shapes/note.js +var note = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const useHtmlLabels = node.useHtmlLabels || (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)().flowchart.htmlLabels; + if (!useHtmlLabels) { + node.centerLabel = true; + } + const { shapeSvg, bbox, halfPadding } = await labelHelper( + parent, + node, + "node " + node.classes, + true + ); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.info("Classes = ", node.classes); + const rect2 = shapeSvg.insert("rect", ":first-child"); + rect2.attr("rx", node.rx).attr("ry", node.ry).attr("x", -bbox.width / 2 - halfPadding).attr("y", -bbox.height / 2 - halfPadding).attr("width", bbox.width + node.padding).attr("height", bbox.height + node.padding); + updateNodeBounds(node, rect2); + node.intersect = function(point) { + return intersect_default.rect(node, point); + }; + return shapeSvg; +}, "note"); +var note_default = note; + +// src/dagre-wrapper/nodes.js +var formatClass = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((str) => { + if (str) { + return " " + str; + } + return ""; +}, "formatClass"); +var getClassesFromNode = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((node, otherClasses) => { + return `${otherClasses ? otherClasses : "node default"}${formatClass(node.classes)} ${formatClass( + node.class + )}`; +}, "getClassesFromNode"); +var question = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox } = await labelHelper( + parent, + node, + getClassesFromNode(node, void 0), + true + ); + const w = bbox.width + node.padding; + const h = bbox.height + node.padding; + const s = w + h; + const points = [ + { x: s / 2, y: 0 }, + { x: s, y: -s / 2 }, + { x: s / 2, y: -s }, + { x: 0, y: -s / 2 } + ]; + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.info("Question main (Circle)"); + const questionElem = insertPolygonShape(shapeSvg, s, s, points); + questionElem.attr("style", node.style); + updateNodeBounds(node, questionElem); + node.intersect = function(point) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.warn("Intersect called"); + return intersect_default.polygon(node, points, point); + }; + return shapeSvg; +}, "question"); +var choice = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((parent, node) => { + const shapeSvg = parent.insert("g").attr("class", "node default").attr("id", node.domId || node.id); + const s = 28; + const points = [ + { x: 0, y: s / 2 }, + { x: s / 2, y: 0 }, + { x: 0, y: -s / 2 }, + { x: -s / 2, y: 0 } + ]; + const choice2 = shapeSvg.insert("polygon", ":first-child").attr( + "points", + points.map(function(d) { + return d.x + "," + d.y; + }).join(" ") + ); + choice2.attr("class", "state-start").attr("r", 7).attr("width", 28).attr("height", 28); + node.width = 28; + node.height = 28; + node.intersect = function(point) { + return intersect_default.circle(node, 14, point); + }; + return shapeSvg; +}, "choice"); +var hexagon = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox } = await labelHelper( + parent, + node, + getClassesFromNode(node, void 0), + true + ); + const f = 4; + const h = bbox.height + node.padding; + const m = h / f; + const w = bbox.width + 2 * m + node.padding; + const points = [ + { x: m, y: 0 }, + { x: w - m, y: 0 }, + { x: w, y: -h / 2 }, + { x: w - m, y: -h }, + { x: m, y: -h }, + { x: 0, y: -h / 2 } + ]; + const hex = insertPolygonShape(shapeSvg, w, h, points); + hex.attr("style", node.style); + updateNodeBounds(node, hex); + node.intersect = function(point) { + return intersect_default.polygon(node, points, point); + }; + return shapeSvg; +}, "hexagon"); +var block_arrow = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox } = await labelHelper(parent, node, void 0, true); + const f = 2; + const h = bbox.height + 2 * node.padding; + const m = h / f; + const w = bbox.width + 2 * m + node.padding; + const points = getArrowPoints(node.directions, bbox, node); + const blockArrow = insertPolygonShape(shapeSvg, w, h, points); + blockArrow.attr("style", node.style); + updateNodeBounds(node, blockArrow); + node.intersect = function(point) { + return intersect_default.polygon(node, points, point); + }; + return shapeSvg; +}, "block_arrow"); +var rect_left_inv_arrow = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox } = await labelHelper( + parent, + node, + getClassesFromNode(node, void 0), + true + ); + const w = bbox.width + node.padding; + const h = bbox.height + node.padding; + const points = [ + { x: -h / 2, y: 0 }, + { x: w, y: 0 }, + { x: w, y: -h }, + { x: -h / 2, y: -h }, + { x: 0, y: -h / 2 } + ]; + const el = insertPolygonShape(shapeSvg, w, h, points); + el.attr("style", node.style); + node.width = w + h; + node.height = h; + node.intersect = function(point) { + return intersect_default.polygon(node, points, point); + }; + return shapeSvg; +}, "rect_left_inv_arrow"); +var lean_right = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox } = await labelHelper(parent, node, getClassesFromNode(node), true); + const w = bbox.width + node.padding; + const h = bbox.height + node.padding; + const points = [ + { x: -2 * h / 6, y: 0 }, + { x: w - h / 6, y: 0 }, + { x: w + 2 * h / 6, y: -h }, + { x: h / 6, y: -h } + ]; + const el = insertPolygonShape(shapeSvg, w, h, points); + el.attr("style", node.style); + updateNodeBounds(node, el); + node.intersect = function(point) { + return intersect_default.polygon(node, points, point); + }; + return shapeSvg; +}, "lean_right"); +var lean_left = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox } = await labelHelper( + parent, + node, + getClassesFromNode(node, void 0), + true + ); + const w = bbox.width + node.padding; + const h = bbox.height + node.padding; + const points = [ + { x: 2 * h / 6, y: 0 }, + { x: w + h / 6, y: 0 }, + { x: w - 2 * h / 6, y: -h }, + { x: -h / 6, y: -h } + ]; + const el = insertPolygonShape(shapeSvg, w, h, points); + el.attr("style", node.style); + updateNodeBounds(node, el); + node.intersect = function(point) { + return intersect_default.polygon(node, points, point); + }; + return shapeSvg; +}, "lean_left"); +var trapezoid = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox } = await labelHelper( + parent, + node, + getClassesFromNode(node, void 0), + true + ); + const w = bbox.width + node.padding; + const h = bbox.height + node.padding; + const points = [ + { x: -2 * h / 6, y: 0 }, + { x: w + 2 * h / 6, y: 0 }, + { x: w - h / 6, y: -h }, + { x: h / 6, y: -h } + ]; + const el = insertPolygonShape(shapeSvg, w, h, points); + el.attr("style", node.style); + updateNodeBounds(node, el); + node.intersect = function(point) { + return intersect_default.polygon(node, points, point); + }; + return shapeSvg; +}, "trapezoid"); +var inv_trapezoid = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox } = await labelHelper( + parent, + node, + getClassesFromNode(node, void 0), + true + ); + const w = bbox.width + node.padding; + const h = bbox.height + node.padding; + const points = [ + { x: h / 6, y: 0 }, + { x: w - h / 6, y: 0 }, + { x: w + 2 * h / 6, y: -h }, + { x: -2 * h / 6, y: -h } + ]; + const el = insertPolygonShape(shapeSvg, w, h, points); + el.attr("style", node.style); + updateNodeBounds(node, el); + node.intersect = function(point) { + return intersect_default.polygon(node, points, point); + }; + return shapeSvg; +}, "inv_trapezoid"); +var rect_right_inv_arrow = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox } = await labelHelper( + parent, + node, + getClassesFromNode(node, void 0), + true + ); + const w = bbox.width + node.padding; + const h = bbox.height + node.padding; + const points = [ + { x: 0, y: 0 }, + { x: w + h / 2, y: 0 }, + { x: w, y: -h / 2 }, + { x: w + h / 2, y: -h }, + { x: 0, y: -h } + ]; + const el = insertPolygonShape(shapeSvg, w, h, points); + el.attr("style", node.style); + updateNodeBounds(node, el); + node.intersect = function(point) { + return intersect_default.polygon(node, points, point); + }; + return shapeSvg; +}, "rect_right_inv_arrow"); +var cylinder = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox } = await labelHelper( + parent, + node, + getClassesFromNode(node, void 0), + true + ); + const w = bbox.width + node.padding; + const rx = w / 2; + const ry = rx / (2.5 + w / 50); + const h = bbox.height + ry + node.padding; + const shape = "M 0," + ry + " a " + rx + "," + ry + " 0,0,0 " + w + " 0 a " + rx + "," + ry + " 0,0,0 " + -w + " 0 l 0," + h + " a " + rx + "," + ry + " 0,0,0 " + w + " 0 l 0," + -h; + const el = shapeSvg.attr("label-offset-y", ry).insert("path", ":first-child").attr("style", node.style).attr("d", shape).attr("transform", "translate(" + -w / 2 + "," + -(h / 2 + ry) + ")"); + updateNodeBounds(node, el); + node.intersect = function(point) { + const pos = intersect_default.rect(node, point); + const x = pos.x - node.x; + if (rx != 0 && (Math.abs(x) < node.width / 2 || Math.abs(x) == node.width / 2 && Math.abs(pos.y - node.y) > node.height / 2 - ry)) { + let y = ry * ry * (1 - x * x / (rx * rx)); + if (y != 0) { + y = Math.sqrt(y); + } + y = ry - y; + if (point.y - node.y > 0) { + y = -y; + } + pos.y += y; + } + return pos; + }; + return shapeSvg; +}, "cylinder"); +var rect = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox, halfPadding } = await labelHelper( + parent, + node, + "node " + node.classes + " " + node.class, + true + ); + const rect2 = shapeSvg.insert("rect", ":first-child"); + const totalWidth = node.positioned ? node.width : bbox.width + node.padding; + const totalHeight = node.positioned ? node.height : bbox.height + node.padding; + const x = node.positioned ? -totalWidth / 2 : -bbox.width / 2 - halfPadding; + const y = node.positioned ? -totalHeight / 2 : -bbox.height / 2 - halfPadding; + rect2.attr("class", "basic label-container").attr("style", node.style).attr("rx", node.rx).attr("ry", node.ry).attr("x", x).attr("y", y).attr("width", totalWidth).attr("height", totalHeight); + if (node.props) { + const propKeys = new Set(Object.keys(node.props)); + if (node.props.borders) { + applyNodePropertyBorders(rect2, node.props.borders, totalWidth, totalHeight); + propKeys.delete("borders"); + } + propKeys.forEach((propKey) => { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.warn(`Unknown node property ${propKey}`); + }); + } + updateNodeBounds(node, rect2); + node.intersect = function(point) { + return intersect_default.rect(node, point); + }; + return shapeSvg; +}, "rect"); +var composite = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox, halfPadding } = await labelHelper( + parent, + node, + "node " + node.classes, + true + ); + const rect2 = shapeSvg.insert("rect", ":first-child"); + const totalWidth = node.positioned ? node.width : bbox.width + node.padding; + const totalHeight = node.positioned ? node.height : bbox.height + node.padding; + const x = node.positioned ? -totalWidth / 2 : -bbox.width / 2 - halfPadding; + const y = node.positioned ? -totalHeight / 2 : -bbox.height / 2 - halfPadding; + rect2.attr("class", "basic cluster composite label-container").attr("style", node.style).attr("rx", node.rx).attr("ry", node.ry).attr("x", x).attr("y", y).attr("width", totalWidth).attr("height", totalHeight); + if (node.props) { + const propKeys = new Set(Object.keys(node.props)); + if (node.props.borders) { + applyNodePropertyBorders(rect2, node.props.borders, totalWidth, totalHeight); + propKeys.delete("borders"); + } + propKeys.forEach((propKey) => { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.warn(`Unknown node property ${propKey}`); + }); + } + updateNodeBounds(node, rect2); + node.intersect = function(point) { + return intersect_default.rect(node, point); + }; + return shapeSvg; +}, "composite"); +var labelRect = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg } = await labelHelper(parent, node, "label", true); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.trace("Classes = ", node.class); + const rect2 = shapeSvg.insert("rect", ":first-child"); + const totalWidth = 0; + const totalHeight = 0; + rect2.attr("width", totalWidth).attr("height", totalHeight); + shapeSvg.attr("class", "label edgeLabel"); + if (node.props) { + const propKeys = new Set(Object.keys(node.props)); + if (node.props.borders) { + applyNodePropertyBorders(rect2, node.props.borders, totalWidth, totalHeight); + propKeys.delete("borders"); + } + propKeys.forEach((propKey) => { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.warn(`Unknown node property ${propKey}`); + }); + } + updateNodeBounds(node, rect2); + node.intersect = function(point) { + return intersect_default.rect(node, point); + }; + return shapeSvg; +}, "labelRect"); +function applyNodePropertyBorders(rect2, borders, totalWidth, totalHeight) { + const strokeDashArray = []; + const addBorder = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((length) => { + strokeDashArray.push(length, 0); + }, "addBorder"); + const skipBorder = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((length) => { + strokeDashArray.push(0, length); + }, "skipBorder"); + if (borders.includes("t")) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.debug("add top border"); + addBorder(totalWidth); + } else { + skipBorder(totalWidth); + } + if (borders.includes("r")) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.debug("add right border"); + addBorder(totalHeight); + } else { + skipBorder(totalHeight); + } + if (borders.includes("b")) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.debug("add bottom border"); + addBorder(totalWidth); + } else { + skipBorder(totalWidth); + } + if (borders.includes("l")) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.debug("add left border"); + addBorder(totalHeight); + } else { + skipBorder(totalHeight); + } + rect2.attr("stroke-dasharray", strokeDashArray.join(" ")); +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(applyNodePropertyBorders, "applyNodePropertyBorders"); +var rectWithTitle = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((parent, node) => { + let classes; + if (!node.classes) { + classes = "node default"; + } else { + classes = "node " + node.classes; + } + const shapeSvg = parent.insert("g").attr("class", classes).attr("id", node.domId || node.id); + const rect2 = shapeSvg.insert("rect", ":first-child"); + const innerLine = shapeSvg.insert("line"); + const label = shapeSvg.insert("g").attr("class", "label"); + const text2 = node.labelText.flat ? node.labelText.flat() : node.labelText; + let title = ""; + if (typeof text2 === "object") { + title = text2[0]; + } else { + title = text2; + } + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.info("Label text abc79", title, text2, typeof text2 === "object"); + const text = label.node().appendChild(createLabel_default(title, node.labelStyle, true, true)); + let bbox = { width: 0, height: 0 }; + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .evaluate */ ._3)((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)().flowchart.htmlLabels)) { + const div = text.children[0]; + const dv = (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(text); + bbox = div.getBoundingClientRect(); + dv.attr("width", bbox.width); + dv.attr("height", bbox.height); + } + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.info("Text 2", text2); + const textRows = text2.slice(1, text2.length); + let titleBox = text.getBBox(); + const descr = label.node().appendChild( + createLabel_default(textRows.join ? textRows.join("<br/>") : textRows, node.labelStyle, true, true) + ); + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .evaluate */ ._3)((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)().flowchart.htmlLabels)) { + const div = descr.children[0]; + const dv = (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(descr); + bbox = div.getBoundingClientRect(); + dv.attr("width", bbox.width); + dv.attr("height", bbox.height); + } + const halfPadding = node.padding / 2; + (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(descr).attr( + "transform", + "translate( " + // (titleBox.width - bbox.width) / 2 + + (bbox.width > titleBox.width ? 0 : (titleBox.width - bbox.width) / 2) + ", " + (titleBox.height + halfPadding + 5) + ")" + ); + (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(text).attr( + "transform", + "translate( " + // (titleBox.width - bbox.width) / 2 + + (bbox.width < titleBox.width ? 0 : -(titleBox.width - bbox.width) / 2) + ", 0)" + ); + bbox = label.node().getBBox(); + label.attr( + "transform", + "translate(" + -bbox.width / 2 + ", " + (-bbox.height / 2 - halfPadding + 3) + ")" + ); + rect2.attr("class", "outer title-state").attr("x", -bbox.width / 2 - halfPadding).attr("y", -bbox.height / 2 - halfPadding).attr("width", bbox.width + node.padding).attr("height", bbox.height + node.padding); + innerLine.attr("class", "divider").attr("x1", -bbox.width / 2 - halfPadding).attr("x2", bbox.width / 2 + halfPadding).attr("y1", -bbox.height / 2 - halfPadding + titleBox.height + halfPadding).attr("y2", -bbox.height / 2 - halfPadding + titleBox.height + halfPadding); + updateNodeBounds(node, rect2); + node.intersect = function(point) { + return intersect_default.rect(node, point); + }; + return shapeSvg; +}, "rectWithTitle"); +var stadium = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox } = await labelHelper( + parent, + node, + getClassesFromNode(node, void 0), + true + ); + const h = bbox.height + node.padding; + const w = bbox.width + h / 4 + node.padding; + const rect2 = shapeSvg.insert("rect", ":first-child").attr("style", node.style).attr("rx", h / 2).attr("ry", h / 2).attr("x", -w / 2).attr("y", -h / 2).attr("width", w).attr("height", h); + updateNodeBounds(node, rect2); + node.intersect = function(point) { + return intersect_default.rect(node, point); + }; + return shapeSvg; +}, "stadium"); +var circle = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox, halfPadding } = await labelHelper( + parent, + node, + getClassesFromNode(node, void 0), + true + ); + const circle2 = shapeSvg.insert("circle", ":first-child"); + circle2.attr("style", node.style).attr("rx", node.rx).attr("ry", node.ry).attr("r", bbox.width / 2 + halfPadding).attr("width", bbox.width + node.padding).attr("height", bbox.height + node.padding); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.info("Circle main"); + updateNodeBounds(node, circle2); + node.intersect = function(point) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.info("Circle intersect", node, bbox.width / 2 + halfPadding, point); + return intersect_default.circle(node, bbox.width / 2 + halfPadding, point); + }; + return shapeSvg; +}, "circle"); +var doublecircle = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox, halfPadding } = await labelHelper( + parent, + node, + getClassesFromNode(node, void 0), + true + ); + const gap = 5; + const circleGroup = shapeSvg.insert("g", ":first-child"); + const outerCircle = circleGroup.insert("circle"); + const innerCircle = circleGroup.insert("circle"); + circleGroup.attr("class", node.class); + outerCircle.attr("style", node.style).attr("rx", node.rx).attr("ry", node.ry).attr("r", bbox.width / 2 + halfPadding + gap).attr("width", bbox.width + node.padding + gap * 2).attr("height", bbox.height + node.padding + gap * 2); + innerCircle.attr("style", node.style).attr("rx", node.rx).attr("ry", node.ry).attr("r", bbox.width / 2 + halfPadding).attr("width", bbox.width + node.padding).attr("height", bbox.height + node.padding); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.info("DoubleCircle main"); + updateNodeBounds(node, outerCircle); + node.intersect = function(point) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.info("DoubleCircle intersect", node, bbox.width / 2 + halfPadding + gap, point); + return intersect_default.circle(node, bbox.width / 2 + halfPadding + gap, point); + }; + return shapeSvg; +}, "doublecircle"); +var subroutine = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (parent, node) => { + const { shapeSvg, bbox } = await labelHelper( + parent, + node, + getClassesFromNode(node, void 0), + true + ); + const w = bbox.width + node.padding; + const h = bbox.height + node.padding; + const points = [ + { x: 0, y: 0 }, + { x: w, y: 0 }, + { x: w, y: -h }, + { x: 0, y: -h }, + { x: 0, y: 0 }, + { x: -8, y: 0 }, + { x: w + 8, y: 0 }, + { x: w + 8, y: -h }, + { x: -8, y: -h }, + { x: -8, y: 0 } + ]; + const el = insertPolygonShape(shapeSvg, w, h, points); + el.attr("style", node.style); + updateNodeBounds(node, el); + node.intersect = function(point) { + return intersect_default.polygon(node, points, point); + }; + return shapeSvg; +}, "subroutine"); +var start = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((parent, node) => { + const shapeSvg = parent.insert("g").attr("class", "node default").attr("id", node.domId || node.id); + const circle2 = shapeSvg.insert("circle", ":first-child"); + circle2.attr("class", "state-start").attr("r", 7).attr("width", 14).attr("height", 14); + updateNodeBounds(node, circle2); + node.intersect = function(point) { + return intersect_default.circle(node, 7, point); + }; + return shapeSvg; +}, "start"); +var forkJoin = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((parent, node, dir) => { + const shapeSvg = parent.insert("g").attr("class", "node default").attr("id", node.domId || node.id); + let width = 70; + let height = 10; + if (dir === "LR") { + width = 10; + height = 70; + } + const shape = shapeSvg.append("rect").attr("x", -1 * width / 2).attr("y", -1 * height / 2).attr("width", width).attr("height", height).attr("class", "fork-join"); + updateNodeBounds(node, shape); + node.height = node.height + node.padding / 2; + node.width = node.width + node.padding / 2; + node.intersect = function(point) { + return intersect_default.rect(node, point); + }; + return shapeSvg; +}, "forkJoin"); +var end = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((parent, node) => { + const shapeSvg = parent.insert("g").attr("class", "node default").attr("id", node.domId || node.id); + const innerCircle = shapeSvg.insert("circle", ":first-child"); + const circle2 = shapeSvg.insert("circle", ":first-child"); + circle2.attr("class", "state-start").attr("r", 7).attr("width", 14).attr("height", 14); + innerCircle.attr("class", "state-end").attr("r", 5).attr("width", 10).attr("height", 10); + updateNodeBounds(node, circle2); + node.intersect = function(point) { + return intersect_default.circle(node, 7, point); + }; + return shapeSvg; +}, "end"); +var class_box = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((parent, node) => { + const halfPadding = node.padding / 2; + const rowPadding = 4; + const lineHeight = 8; + let classes; + if (!node.classes) { + classes = "node default"; + } else { + classes = "node " + node.classes; + } + const shapeSvg = parent.insert("g").attr("class", classes).attr("id", node.domId || node.id); + const rect2 = shapeSvg.insert("rect", ":first-child"); + const topLine = shapeSvg.insert("line"); + const bottomLine = shapeSvg.insert("line"); + let maxWidth = 0; + let maxHeight = rowPadding; + const labelContainer = shapeSvg.insert("g").attr("class", "label"); + let verticalPos = 0; + const hasInterface = node.classData.annotations?.[0]; + const interfaceLabelText = node.classData.annotations[0] ? "\xAB" + node.classData.annotations[0] + "\xBB" : ""; + const interfaceLabel = labelContainer.node().appendChild(createLabel_default(interfaceLabelText, node.labelStyle, true, true)); + let interfaceBBox = interfaceLabel.getBBox(); + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .evaluate */ ._3)((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)().flowchart.htmlLabels)) { + const div = interfaceLabel.children[0]; + const dv = (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(interfaceLabel); + interfaceBBox = div.getBoundingClientRect(); + dv.attr("width", interfaceBBox.width); + dv.attr("height", interfaceBBox.height); + } + if (node.classData.annotations[0]) { + maxHeight += interfaceBBox.height + rowPadding; + maxWidth += interfaceBBox.width; + } + let classTitleString = node.classData.label; + if (node.classData.type !== void 0 && node.classData.type !== "") { + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)().flowchart.htmlLabels) { + classTitleString += "<" + node.classData.type + ">"; + } else { + classTitleString += "<" + node.classData.type + ">"; + } + } + const classTitleLabel = labelContainer.node().appendChild(createLabel_default(classTitleString, node.labelStyle, true, true)); + (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(classTitleLabel).attr("class", "classTitle"); + let classTitleBBox = classTitleLabel.getBBox(); + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .evaluate */ ._3)((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)().flowchart.htmlLabels)) { + const div = classTitleLabel.children[0]; + const dv = (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(classTitleLabel); + classTitleBBox = div.getBoundingClientRect(); + dv.attr("width", classTitleBBox.width); + dv.attr("height", classTitleBBox.height); + } + maxHeight += classTitleBBox.height + rowPadding; + if (classTitleBBox.width > maxWidth) { + maxWidth = classTitleBBox.width; + } + const classAttributes = []; + node.classData.members.forEach((member) => { + const parsedInfo = member.getDisplayDetails(); + let parsedText = parsedInfo.displayText; + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)().flowchart.htmlLabels) { + parsedText = parsedText.replace(/</g, "<").replace(/>/g, ">"); + } + const lbl = labelContainer.node().appendChild( + createLabel_default( + parsedText, + parsedInfo.cssStyle ? parsedInfo.cssStyle : node.labelStyle, + true, + true + ) + ); + let bbox = lbl.getBBox(); + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .evaluate */ ._3)((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)().flowchart.htmlLabels)) { + const div = lbl.children[0]; + const dv = (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(lbl); + bbox = div.getBoundingClientRect(); + dv.attr("width", bbox.width); + dv.attr("height", bbox.height); + } + if (bbox.width > maxWidth) { + maxWidth = bbox.width; + } + maxHeight += bbox.height + rowPadding; + classAttributes.push(lbl); + }); + maxHeight += lineHeight; + const classMethods = []; + node.classData.methods.forEach((member) => { + const parsedInfo = member.getDisplayDetails(); + let displayText = parsedInfo.displayText; + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)().flowchart.htmlLabels) { + displayText = displayText.replace(/</g, "<").replace(/>/g, ">"); + } + const lbl = labelContainer.node().appendChild( + createLabel_default( + displayText, + parsedInfo.cssStyle ? parsedInfo.cssStyle : node.labelStyle, + true, + true + ) + ); + let bbox = lbl.getBBox(); + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .evaluate */ ._3)((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)().flowchart.htmlLabels)) { + const div = lbl.children[0]; + const dv = (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(lbl); + bbox = div.getBoundingClientRect(); + dv.attr("width", bbox.width); + dv.attr("height", bbox.height); + } + if (bbox.width > maxWidth) { + maxWidth = bbox.width; + } + maxHeight += bbox.height + rowPadding; + classMethods.push(lbl); + }); + maxHeight += lineHeight; + if (hasInterface) { + let diffX2 = (maxWidth - interfaceBBox.width) / 2; + (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(interfaceLabel).attr( + "transform", + "translate( " + (-1 * maxWidth / 2 + diffX2) + ", " + -1 * maxHeight / 2 + ")" + ); + verticalPos = interfaceBBox.height + rowPadding; + } + let diffX = (maxWidth - classTitleBBox.width) / 2; + (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(classTitleLabel).attr( + "transform", + "translate( " + (-1 * maxWidth / 2 + diffX) + ", " + (-1 * maxHeight / 2 + verticalPos) + ")" + ); + verticalPos += classTitleBBox.height + rowPadding; + topLine.attr("class", "divider").attr("x1", -maxWidth / 2 - halfPadding).attr("x2", maxWidth / 2 + halfPadding).attr("y1", -maxHeight / 2 - halfPadding + lineHeight + verticalPos).attr("y2", -maxHeight / 2 - halfPadding + lineHeight + verticalPos); + verticalPos += lineHeight; + classAttributes.forEach((lbl) => { + (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(lbl).attr( + "transform", + "translate( " + -maxWidth / 2 + ", " + (-1 * maxHeight / 2 + verticalPos + lineHeight / 2) + ")" + ); + const memberBBox = lbl?.getBBox(); + verticalPos += (memberBBox?.height ?? 0) + rowPadding; + }); + verticalPos += lineHeight; + bottomLine.attr("class", "divider").attr("x1", -maxWidth / 2 - halfPadding).attr("x2", maxWidth / 2 + halfPadding).attr("y1", -maxHeight / 2 - halfPadding + lineHeight + verticalPos).attr("y2", -maxHeight / 2 - halfPadding + lineHeight + verticalPos); + verticalPos += lineHeight; + classMethods.forEach((lbl) => { + (0,d3__WEBPACK_IMPORTED_MODULE_3__/* .select */ .Ltv)(lbl).attr( + "transform", + "translate( " + -maxWidth / 2 + ", " + (-1 * maxHeight / 2 + verticalPos) + ")" + ); + const memberBBox = lbl?.getBBox(); + verticalPos += (memberBBox?.height ?? 0) + rowPadding; + }); + rect2.attr("style", node.style).attr("class", "outer title-state").attr("x", -maxWidth / 2 - halfPadding).attr("y", -(maxHeight / 2) - halfPadding).attr("width", maxWidth + node.padding).attr("height", maxHeight + node.padding); + updateNodeBounds(node, rect2); + node.intersect = function(point) { + return intersect_default.rect(node, point); + }; + return shapeSvg; +}, "class_box"); +var shapes = { + rhombus: question, + composite, + question, + rect, + labelRect, + rectWithTitle, + choice, + circle, + doublecircle, + stadium, + hexagon, + block_arrow, + rect_left_inv_arrow, + lean_right, + lean_left, + trapezoid, + inv_trapezoid, + rect_right_inv_arrow, + cylinder, + start, + end, + note: note_default, + subroutine, + fork: forkJoin, + join: forkJoin, + class_box +}; +var nodeElems = {}; +var insertNode = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(async (elem, node, dir) => { + let newEl; + let el; + if (node.link) { + let target; + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getConfig2 */ .D7)().securityLevel === "sandbox") { + target = "_top"; + } else if (node.linkTarget) { + target = node.linkTarget || "_blank"; + } + newEl = elem.insert("svg:a").attr("xlink:href", node.link).attr("target", target); + el = await shapes[node.shape](newEl, node, dir); + } else { + el = await shapes[node.shape](elem, node, dir); + newEl = el; + } + if (node.tooltip) { + el.attr("title", node.tooltip); + } + if (node.class) { + el.attr("class", "node default " + node.class); + } + nodeElems[node.id] = newEl; + if (node.haveCallback) { + nodeElems[node.id].attr("class", nodeElems[node.id].attr("class") + " clickable"); + } + return newEl; +}, "insertNode"); +var setNodeElem = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((elem, node) => { + nodeElems[node.id] = elem; +}, "setNodeElem"); +var clear = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)(() => { + nodeElems = {}; +}, "clear"); +var positionNode = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .__name */ .K2)((node) => { + const el = nodeElems[node.id]; + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm.trace( + "Transforming node", + node.diff, + node, + "translate(" + (node.x - node.width / 2 - 5) + ", " + node.width / 2 + ")" + ); + const padding = 8; + const diff = node.diff || 0; + if (node.clusterNode) { + el.attr( + "transform", + "translate(" + (node.x + diff - node.width / 2) + ", " + (node.y - node.height / 2 - padding) + ")" + ); + } else { + el.attr("transform", "translate(" + node.x + ", " + node.y + ")"); + } + return diff; +}, "positionNode"); + + + + +/***/ }), + +/***/ 45042: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ diagram: () => (/* binding */ diagram) +/* harmony export */ }); +/* harmony import */ var _chunk_PDCO53Z4_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(31953); +/* harmony import */ var _chunk_IBIA4ERB_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(82207); +/* harmony import */ var _chunk_Z2VRG6XP_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(46578); +/* harmony import */ var _chunk_TINLTEC2_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(48496); +/* harmony import */ var _chunk_OERGPBFJ_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(67895); +/* harmony import */ var _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(57323); +/* harmony import */ var _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(64994); +/* harmony import */ var d3__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(20007); +/* harmony import */ var dagre_d3_es_src_graphlib_index_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(697); +/* harmony import */ var dagre_d3_es_src_dagre_index_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(62334); +/* harmony import */ var dagre_d3_es_src_graphlib_json_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(14075); + + + + + + + + +// src/diagrams/class/classRenderer-v2.ts + + + +// src/dagre-wrapper/index.js + + + +// src/dagre-wrapper/mermaid-graphlib.js + + +var clusterDb = {}; +var descendants = {}; +var parents = {}; +var clear3 = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .__name */ .K2)(() => { + descendants = {}; + parents = {}; + clusterDb = {}; +}, "clear"); +var isDescendant = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .__name */ .K2)((id, ancestorId) => { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.trace("In isDescendant", ancestorId, " ", id, " = ", descendants[ancestorId].includes(id)); + if (descendants[ancestorId].includes(id)) { + return true; + } + return false; +}, "isDescendant"); +var edgeInCluster = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .__name */ .K2)((edge, clusterId) => { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info("Descendants of ", clusterId, " is ", descendants[clusterId]); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info("Edge is ", edge); + if (edge.v === clusterId) { + return false; + } + if (edge.w === clusterId) { + return false; + } + if (!descendants[clusterId]) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.debug("Tilt, ", clusterId, ",not in descendants"); + return false; + } + return descendants[clusterId].includes(edge.v) || isDescendant(edge.v, clusterId) || isDescendant(edge.w, clusterId) || descendants[clusterId].includes(edge.w); +}, "edgeInCluster"); +var copy = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .__name */ .K2)((clusterId, graph, newGraph, rootId) => { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.warn( + "Copying children of ", + clusterId, + "root", + rootId, + "data", + graph.node(clusterId), + rootId + ); + const nodes = graph.children(clusterId) || []; + if (clusterId !== rootId) { + nodes.push(clusterId); + } + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.warn("Copying (nodes) clusterId", clusterId, "nodes", nodes); + nodes.forEach((node) => { + if (graph.children(node).length > 0) { + copy(node, graph, newGraph, rootId); + } else { + const data = graph.node(node); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info("cp ", node, " to ", rootId, " with parent ", clusterId); + newGraph.setNode(node, data); + if (rootId !== graph.parent(node)) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.warn("Setting parent", node, graph.parent(node)); + newGraph.setParent(node, graph.parent(node)); + } + if (clusterId !== rootId && node !== clusterId) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.debug("Setting parent", node, clusterId); + newGraph.setParent(node, clusterId); + } else { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info("In copy ", clusterId, "root", rootId, "data", graph.node(clusterId), rootId); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.debug( + "Not Setting parent for node=", + node, + "cluster!==rootId", + clusterId !== rootId, + "node!==clusterId", + node !== clusterId + ); + } + const edges = graph.edges(node); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.debug("Copying Edges", edges); + edges.forEach((edge) => { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info("Edge", edge); + const data2 = graph.edge(edge.v, edge.w, edge.name); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info("Edge data", data2, rootId); + try { + if (edgeInCluster(edge, rootId)) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info("Copying as ", edge.v, edge.w, data2, edge.name); + newGraph.setEdge(edge.v, edge.w, data2, edge.name); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info("newGraph edges ", newGraph.edges(), newGraph.edge(newGraph.edges()[0])); + } else { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info( + "Skipping copy of edge ", + edge.v, + "-->", + edge.w, + " rootId: ", + rootId, + " clusterId:", + clusterId + ); + } + } catch (e) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.error(e); + } + }); + } + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.debug("Removing node", node); + graph.removeNode(node); + }); +}, "copy"); +var extractDescendants = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .__name */ .K2)((id, graph) => { + const children = graph.children(id); + let res = [...children]; + for (const child of children) { + parents[child] = id; + res = [...res, ...extractDescendants(child, graph)]; + } + return res; +}, "extractDescendants"); +var findNonClusterChild = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .__name */ .K2)((id, graph) => { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.trace("Searching", id); + const children = graph.children(id); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.trace("Searching children of id ", id, children); + if (children.length < 1) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.trace("This is a valid node", id); + return id; + } + for (const child of children) { + const _id = findNonClusterChild(child, graph); + if (_id) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.trace("Found replacement for", id, " => ", _id); + return _id; + } + } +}, "findNonClusterChild"); +var getAnchorId = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .__name */ .K2)((id) => { + if (!clusterDb[id]) { + return id; + } + if (!clusterDb[id].externalConnections) { + return id; + } + if (clusterDb[id]) { + return clusterDb[id].id; + } + return id; +}, "getAnchorId"); +var adjustClustersAndEdges = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .__name */ .K2)((graph, depth) => { + if (!graph || depth > 10) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.debug("Opting out, no graph "); + return; + } else { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.debug("Opting in, graph "); + } + graph.nodes().forEach(function(id) { + const children = graph.children(id); + if (children.length > 0) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.warn( + "Cluster identified", + id, + " Replacement id in edges: ", + findNonClusterChild(id, graph) + ); + descendants[id] = extractDescendants(id, graph); + clusterDb[id] = { id: findNonClusterChild(id, graph), clusterData: graph.node(id) }; + } + }); + graph.nodes().forEach(function(id) { + const children = graph.children(id); + const edges = graph.edges(); + if (children.length > 0) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.debug("Cluster identified", id, descendants); + edges.forEach((edge) => { + if (edge.v !== id && edge.w !== id) { + const d1 = isDescendant(edge.v, id); + const d2 = isDescendant(edge.w, id); + if (d1 ^ d2) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.warn("Edge: ", edge, " leaves cluster ", id); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.warn("Descendants of XXX ", id, ": ", descendants[id]); + clusterDb[id].externalConnections = true; + } + } + }); + } else { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.debug("Not a cluster ", id, descendants); + } + }); + for (let id of Object.keys(clusterDb)) { + const nonClusterChild = clusterDb[id].id; + const parent = graph.parent(nonClusterChild); + if (parent !== id && clusterDb[parent] && !clusterDb[parent].externalConnections) { + clusterDb[id].id = parent; + } + } + graph.edges().forEach(function(e) { + const edge = graph.edge(e); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.warn("Edge " + e.v + " -> " + e.w + ": " + JSON.stringify(e)); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.warn("Edge " + e.v + " -> " + e.w + ": " + JSON.stringify(graph.edge(e))); + let v = e.v; + let w = e.w; + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.warn( + "Fix XXX", + clusterDb, + "ids:", + e.v, + e.w, + "Translating: ", + clusterDb[e.v], + " --- ", + clusterDb[e.w] + ); + if (clusterDb[e.v] && clusterDb[e.w] && clusterDb[e.v] === clusterDb[e.w]) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.warn("Fixing and trixing link to self - removing XXX", e.v, e.w, e.name); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.warn("Fixing and trixing - removing XXX", e.v, e.w, e.name); + v = getAnchorId(e.v); + w = getAnchorId(e.w); + graph.removeEdge(e.v, e.w, e.name); + const specialId = e.w + "---" + e.v; + graph.setNode(specialId, { + domId: specialId, + id: specialId, + labelStyle: "", + labelText: edge.label, + padding: 0, + shape: "labelRect", + style: "" + }); + const edge1 = structuredClone(edge); + const edge2 = structuredClone(edge); + edge1.label = ""; + edge1.arrowTypeEnd = "none"; + edge2.label = ""; + edge1.fromCluster = e.v; + edge2.toCluster = e.v; + graph.setEdge(v, specialId, edge1, e.name + "-cyclic-special"); + graph.setEdge(specialId, w, edge2, e.name + "-cyclic-special"); + } else if (clusterDb[e.v] || clusterDb[e.w]) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.warn("Fixing and trixing - removing XXX", e.v, e.w, e.name); + v = getAnchorId(e.v); + w = getAnchorId(e.w); + graph.removeEdge(e.v, e.w, e.name); + if (v !== e.v) { + const parent = graph.parent(v); + clusterDb[parent].externalConnections = true; + edge.fromCluster = e.v; + } + if (w !== e.w) { + const parent = graph.parent(w); + clusterDb[parent].externalConnections = true; + edge.toCluster = e.w; + } + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.warn("Fix Replacing with XXX", v, w, e.name); + graph.setEdge(v, w, edge, e.name); + } + }); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.warn("Adjusted Graph", dagre_d3_es_src_graphlib_json_js__WEBPACK_IMPORTED_MODULE_10__/* .write */ .M(graph)); + extractor(graph, 0); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.trace(clusterDb); +}, "adjustClustersAndEdges"); +var extractor = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .__name */ .K2)((graph, depth) => { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.warn("extractor - ", depth, dagre_d3_es_src_graphlib_json_js__WEBPACK_IMPORTED_MODULE_10__/* .write */ .M(graph), graph.children("D")); + if (depth > 10) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.error("Bailing out"); + return; + } + let nodes = graph.nodes(); + let hasChildren = false; + for (const node of nodes) { + const children = graph.children(node); + hasChildren = hasChildren || children.length > 0; + } + if (!hasChildren) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.debug("Done, no node has children", graph.nodes()); + return; + } + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.debug("Nodes = ", nodes, depth); + for (const node of nodes) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.debug( + "Extracting node", + node, + clusterDb, + clusterDb[node] && !clusterDb[node].externalConnections, + !graph.parent(node), + graph.node(node), + graph.children("D"), + " Depth ", + depth + ); + if (!clusterDb[node]) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.debug("Not a cluster", node, depth); + } else if (!clusterDb[node].externalConnections && // !graph.parent(node) && + graph.children(node) && graph.children(node).length > 0) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.warn( + "Cluster without external connections, without a parent and with children", + node, + depth + ); + const graphSettings = graph.graph(); + let dir = graphSettings.rankdir === "TB" ? "LR" : "TB"; + if (clusterDb[node]?.clusterData?.dir) { + dir = clusterDb[node].clusterData.dir; + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.warn("Fixing dir", clusterDb[node].clusterData.dir, dir); + } + const clusterGraph = new dagre_d3_es_src_graphlib_index_js__WEBPACK_IMPORTED_MODULE_8__/* .Graph */ .T({ + multigraph: true, + compound: true + }).setGraph({ + rankdir: dir, + // Todo: set proper spacing + nodesep: 50, + ranksep: 50, + marginx: 8, + marginy: 8 + }).setDefaultEdgeLabel(function() { + return {}; + }); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.warn("Old graph before copy", dagre_d3_es_src_graphlib_json_js__WEBPACK_IMPORTED_MODULE_10__/* .write */ .M(graph)); + copy(node, graph, clusterGraph, node); + graph.setNode(node, { + clusterNode: true, + id: node, + clusterData: clusterDb[node].clusterData, + labelText: clusterDb[node].labelText, + graph: clusterGraph + }); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.warn("New graph after copy node: (", node, ")", dagre_d3_es_src_graphlib_json_js__WEBPACK_IMPORTED_MODULE_10__/* .write */ .M(clusterGraph)); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.debug("Old graph after copy", dagre_d3_es_src_graphlib_json_js__WEBPACK_IMPORTED_MODULE_10__/* .write */ .M(graph)); + } else { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.warn( + "Cluster ** ", + node, + " **not meeting the criteria !externalConnections:", + !clusterDb[node].externalConnections, + " no parent: ", + !graph.parent(node), + " children ", + graph.children(node) && graph.children(node).length > 0, + graph.children("D"), + depth + ); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.debug(clusterDb); + } + } + nodes = graph.nodes(); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.warn("New list of nodes", nodes); + for (const node of nodes) { + const data = graph.node(node); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.warn(" Now next level", node, data); + if (data.clusterNode) { + extractor(data.graph, depth + 1); + } + } +}, "extractor"); +var sorter = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .__name */ .K2)((graph, nodes) => { + if (nodes.length === 0) { + return []; + } + let result = Object.assign(nodes); + nodes.forEach((node) => { + const children = graph.children(node); + const sorted = sorter(graph, children); + result = [...result, ...sorted]; + }); + return result; +}, "sorter"); +var sortNodesByHierarchy = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .__name */ .K2)((graph) => sorter(graph, graph.children()), "sortNodesByHierarchy"); + +// src/dagre-wrapper/clusters.js + +var rect = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .__name */ .K2)((parent, node) => { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info("Creating subgraph rect for ", node.id, node); + const siteConfig = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .getConfig2 */ .D7)(); + const shapeSvg = parent.insert("g").attr("class", "cluster" + (node.class ? " " + node.class : "")).attr("id", node.id); + const rect2 = shapeSvg.insert("rect", ":first-child"); + const useHtmlLabels = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .evaluate */ ._3)(siteConfig.flowchart.htmlLabels); + const label = shapeSvg.insert("g").attr("class", "cluster-label"); + const text = node.labelType === "markdown" ? (0,_chunk_OERGPBFJ_mjs__WEBPACK_IMPORTED_MODULE_4__/* .createText */ .GZ)(label, node.labelText, { style: node.labelStyle, useHtmlLabels }, siteConfig) : label.node().appendChild((0,_chunk_Z2VRG6XP_mjs__WEBPACK_IMPORTED_MODULE_2__/* .createLabel_default */ .DA)(node.labelText, node.labelStyle, void 0, true)); + let bbox = text.getBBox(); + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .evaluate */ ._3)(siteConfig.flowchart.htmlLabels)) { + const div = text.children[0]; + const dv = (0,d3__WEBPACK_IMPORTED_MODULE_7__/* .select */ .Ltv)(text); + bbox = div.getBoundingClientRect(); + dv.attr("width", bbox.width); + dv.attr("height", bbox.height); + } + const padding = 0 * node.padding; + const halfPadding = padding / 2; + const width = node.width <= bbox.width + padding ? bbox.width + padding : node.width; + if (node.width <= bbox.width + padding) { + node.diff = (bbox.width - node.width) / 2 - node.padding / 2; + } else { + node.diff = -node.padding / 2; + } + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.trace("Data ", node, JSON.stringify(node)); + rect2.attr("style", node.style).attr("rx", node.rx).attr("ry", node.ry).attr("x", node.x - width / 2).attr("y", node.y - node.height / 2 - halfPadding).attr("width", width).attr("height", node.height + padding); + const { subGraphTitleTopMargin } = (0,_chunk_TINLTEC2_mjs__WEBPACK_IMPORTED_MODULE_3__/* .getSubGraphTitleMargins */ .O)(siteConfig); + if (useHtmlLabels) { + label.attr( + "transform", + // This puts the label on top of the box instead of inside it + `translate(${node.x - bbox.width / 2}, ${node.y - node.height / 2 + subGraphTitleTopMargin})` + ); + } else { + label.attr( + "transform", + // This puts the label on top of the box instead of inside it + `translate(${node.x}, ${node.y - node.height / 2 + subGraphTitleTopMargin})` + ); + } + const rectBox = rect2.node().getBBox(); + node.width = rectBox.width; + node.height = rectBox.height; + node.intersect = function(point) { + return (0,_chunk_Z2VRG6XP_mjs__WEBPACK_IMPORTED_MODULE_2__/* .intersect_rect_default */ .nM)(node, point); + }; + return shapeSvg; +}, "rect"); +var noteGroup = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .__name */ .K2)((parent, node) => { + const shapeSvg = parent.insert("g").attr("class", "note-cluster").attr("id", node.id); + const rect2 = shapeSvg.insert("rect", ":first-child"); + const padding = 0 * node.padding; + const halfPadding = padding / 2; + rect2.attr("rx", node.rx).attr("ry", node.ry).attr("x", node.x - node.width / 2 - halfPadding).attr("y", node.y - node.height / 2 - halfPadding).attr("width", node.width + padding).attr("height", node.height + padding).attr("fill", "none"); + const rectBox = rect2.node().getBBox(); + node.width = rectBox.width; + node.height = rectBox.height; + node.intersect = function(point) { + return (0,_chunk_Z2VRG6XP_mjs__WEBPACK_IMPORTED_MODULE_2__/* .intersect_rect_default */ .nM)(node, point); + }; + return shapeSvg; +}, "noteGroup"); +var roundedWithTitle = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .__name */ .K2)((parent, node) => { + const siteConfig = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .getConfig2 */ .D7)(); + const shapeSvg = parent.insert("g").attr("class", node.classes).attr("id", node.id); + const rect2 = shapeSvg.insert("rect", ":first-child"); + const label = shapeSvg.insert("g").attr("class", "cluster-label"); + const innerRect = shapeSvg.append("rect"); + const text = label.node().appendChild((0,_chunk_Z2VRG6XP_mjs__WEBPACK_IMPORTED_MODULE_2__/* .createLabel_default */ .DA)(node.labelText, node.labelStyle, void 0, true)); + let bbox = text.getBBox(); + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .evaluate */ ._3)(siteConfig.flowchart.htmlLabels)) { + const div = text.children[0]; + const dv = (0,d3__WEBPACK_IMPORTED_MODULE_7__/* .select */ .Ltv)(text); + bbox = div.getBoundingClientRect(); + dv.attr("width", bbox.width); + dv.attr("height", bbox.height); + } + bbox = text.getBBox(); + const padding = 0 * node.padding; + const halfPadding = padding / 2; + const width = node.width <= bbox.width + node.padding ? bbox.width + node.padding : node.width; + if (node.width <= bbox.width + node.padding) { + node.diff = (bbox.width + node.padding * 0 - node.width) / 2; + } else { + node.diff = -node.padding / 2; + } + rect2.attr("class", "outer").attr("x", node.x - width / 2 - halfPadding).attr("y", node.y - node.height / 2 - halfPadding).attr("width", width + padding).attr("height", node.height + padding); + innerRect.attr("class", "inner").attr("x", node.x - width / 2 - halfPadding).attr("y", node.y - node.height / 2 - halfPadding + bbox.height - 1).attr("width", width + padding).attr("height", node.height + padding - bbox.height - 3); + const { subGraphTitleTopMargin } = (0,_chunk_TINLTEC2_mjs__WEBPACK_IMPORTED_MODULE_3__/* .getSubGraphTitleMargins */ .O)(siteConfig); + label.attr( + "transform", + `translate(${node.x - bbox.width / 2}, ${node.y - node.height / 2 - node.padding / 3 + ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .evaluate */ ._3)(siteConfig.flowchart.htmlLabels) ? 5 : 3) + subGraphTitleTopMargin})` + ); + const rectBox = rect2.node().getBBox(); + node.height = rectBox.height; + node.intersect = function(point) { + return (0,_chunk_Z2VRG6XP_mjs__WEBPACK_IMPORTED_MODULE_2__/* .intersect_rect_default */ .nM)(node, point); + }; + return shapeSvg; +}, "roundedWithTitle"); +var divider = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .__name */ .K2)((parent, node) => { + const shapeSvg = parent.insert("g").attr("class", node.classes).attr("id", node.id); + const rect2 = shapeSvg.insert("rect", ":first-child"); + const padding = 0 * node.padding; + const halfPadding = padding / 2; + rect2.attr("class", "divider").attr("x", node.x - node.width / 2 - halfPadding).attr("y", node.y - node.height / 2).attr("width", node.width + padding).attr("height", node.height + padding); + const rectBox = rect2.node().getBBox(); + node.width = rectBox.width; + node.height = rectBox.height; + node.diff = -node.padding / 2; + node.intersect = function(point) { + return (0,_chunk_Z2VRG6XP_mjs__WEBPACK_IMPORTED_MODULE_2__/* .intersect_rect_default */ .nM)(node, point); + }; + return shapeSvg; +}, "divider"); +var shapes = { rect, roundedWithTitle, noteGroup, divider }; +var clusterElems = {}; +var insertCluster = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .__name */ .K2)((elem, node) => { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.trace("Inserting cluster"); + const shape = node.shape || "rect"; + clusterElems[node.id] = shapes[shape](elem, node); +}, "insertCluster"); +var clear4 = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .__name */ .K2)(() => { + clusterElems = {}; +}, "clear"); + +// src/dagre-wrapper/index.js +var recursiveRender = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .__name */ .K2)(async (_elem, graph, diagramType, id, parentCluster, siteConfig) => { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info("Graph in recursive render: XXX", dagre_d3_es_src_graphlib_json_js__WEBPACK_IMPORTED_MODULE_10__/* .write */ .M(graph), parentCluster); + const dir = graph.graph().rankdir; + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.trace("Dir in recursive render - dir:", dir); + const elem = _elem.insert("g").attr("class", "root"); + if (!graph.nodes()) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info("No nodes found for", graph); + } else { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info("Recursive render XXX", graph.nodes()); + } + if (graph.edges().length > 0) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.trace("Recursive edges", graph.edge(graph.edges()[0])); + } + const clusters = elem.insert("g").attr("class", "clusters"); + const edgePaths = elem.insert("g").attr("class", "edgePaths"); + const edgeLabels = elem.insert("g").attr("class", "edgeLabels"); + const nodes = elem.insert("g").attr("class", "nodes"); + await Promise.all( + graph.nodes().map(async function(v) { + const node = graph.node(v); + if (parentCluster !== void 0) { + const data = JSON.parse(JSON.stringify(parentCluster.clusterData)); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info("Setting data for cluster XXX (", v, ") ", data, parentCluster); + graph.setNode(parentCluster.id, data); + if (!graph.parent(v)) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.trace("Setting parent", v, parentCluster.id); + graph.setParent(v, parentCluster.id, data); + } + } + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info("(Insert) Node XXX" + v + ": " + JSON.stringify(graph.node(v))); + if (node?.clusterNode) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info("Cluster identified", v, node.width, graph.node(v)); + const { ranksep, nodesep } = graph.graph(); + node.graph.setGraph({ + ...node.graph.graph(), + ranksep, + nodesep + }); + const o = await recursiveRender( + nodes, + node.graph, + diagramType, + id, + graph.node(v), + siteConfig + ); + const newEl = o.elem; + (0,_chunk_Z2VRG6XP_mjs__WEBPACK_IMPORTED_MODULE_2__/* .updateNodeBounds */ .lC)(node, newEl); + node.diff = o.diff || 0; + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info("Node bounds (abc123)", v, node, node.width, node.x, node.y); + (0,_chunk_Z2VRG6XP_mjs__WEBPACK_IMPORTED_MODULE_2__/* .setNodeElem */ .U7)(newEl, node); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.warn("Recursive render complete ", newEl, node); + } else { + if (graph.children(v).length > 0) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info("Cluster - the non recursive path XXX", v, node.id, node, graph); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info(findNonClusterChild(node.id, graph)); + clusterDb[node.id] = { id: findNonClusterChild(node.id, graph), node }; + } else { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info("Node - the non recursive path", v, node.id, node); + await (0,_chunk_Z2VRG6XP_mjs__WEBPACK_IMPORTED_MODULE_2__/* .insertNode */ .on)(nodes, graph.node(v), dir); + } + } + }) + ); + graph.edges().forEach(async function(e) { + const edge = graph.edge(e.v, e.w, e.name); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info("Edge " + e.v + " -> " + e.w + ": " + JSON.stringify(e)); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info("Edge " + e.v + " -> " + e.w + ": ", e, " ", JSON.stringify(graph.edge(e))); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info("Fix", clusterDb, "ids:", e.v, e.w, "Translating: ", clusterDb[e.v], clusterDb[e.w]); + await (0,_chunk_PDCO53Z4_mjs__WEBPACK_IMPORTED_MODULE_0__/* .insertEdgeLabel */ .jP)(edgeLabels, edge); + }); + graph.edges().forEach(function(e) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info("Edge " + e.v + " -> " + e.w + ": " + JSON.stringify(e)); + }); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info("Graph before layout:", JSON.stringify(dagre_d3_es_src_graphlib_json_js__WEBPACK_IMPORTED_MODULE_10__/* .write */ .M(graph))); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info("#############################################"); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info("### Layout ###"); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info("#############################################"); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info(graph); + (0,dagre_d3_es_src_dagre_index_js__WEBPACK_IMPORTED_MODULE_9__/* .layout */ .Zp)(graph); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info("Graph after layout:", JSON.stringify(dagre_d3_es_src_graphlib_json_js__WEBPACK_IMPORTED_MODULE_10__/* .write */ .M(graph))); + let diff = 0; + const { subGraphTitleTotalMargin } = (0,_chunk_TINLTEC2_mjs__WEBPACK_IMPORTED_MODULE_3__/* .getSubGraphTitleMargins */ .O)(siteConfig); + sortNodesByHierarchy(graph).forEach(function(v) { + const node = graph.node(v); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info("Position " + v + ": " + JSON.stringify(graph.node(v))); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info( + "Position " + v + ": (" + node.x, + "," + node.y, + ") width: ", + node.width, + " height: ", + node.height + ); + if (node?.clusterNode) { + node.y += subGraphTitleTotalMargin; + (0,_chunk_Z2VRG6XP_mjs__WEBPACK_IMPORTED_MODULE_2__/* .positionNode */ .U_)(node); + } else { + if (graph.children(v).length > 0) { + node.height += subGraphTitleTotalMargin; + insertCluster(clusters, node); + clusterDb[node.id].node = node; + } else { + node.y += subGraphTitleTotalMargin / 2; + (0,_chunk_Z2VRG6XP_mjs__WEBPACK_IMPORTED_MODULE_2__/* .positionNode */ .U_)(node); + } + } + }); + graph.edges().forEach(function(e) { + const edge = graph.edge(e); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info("Edge " + e.v + " -> " + e.w + ": " + JSON.stringify(edge), edge); + edge.points.forEach((point) => point.y += subGraphTitleTotalMargin / 2); + const paths = (0,_chunk_PDCO53Z4_mjs__WEBPACK_IMPORTED_MODULE_0__/* .insertEdge */ .Jo)(edgePaths, e, edge, clusterDb, diagramType, graph, id); + (0,_chunk_PDCO53Z4_mjs__WEBPACK_IMPORTED_MODULE_0__/* .positionEdgeLabel */ .T_)(edge, paths); + }); + graph.nodes().forEach(function(v) { + const n = graph.node(v); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info(v, n.type, n.diff); + if (n.type === "group") { + diff = n.diff; + } + }); + return { elem, diff }; +}, "recursiveRender"); +var render = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .__name */ .K2)(async (elem, graph, markers, diagramType, id) => { + (0,_chunk_PDCO53Z4_mjs__WEBPACK_IMPORTED_MODULE_0__/* .markers_default */ .g0)(elem, markers, diagramType, id); + (0,_chunk_Z2VRG6XP_mjs__WEBPACK_IMPORTED_MODULE_2__/* .clear */ .IU)(); + (0,_chunk_PDCO53Z4_mjs__WEBPACK_IMPORTED_MODULE_0__/* .clear */ .IU)(); + clear4(); + clear3(); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.warn("Graph at first:", JSON.stringify(dagre_d3_es_src_graphlib_json_js__WEBPACK_IMPORTED_MODULE_10__/* .write */ .M(graph))); + adjustClustersAndEdges(graph); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.warn("Graph after:", JSON.stringify(dagre_d3_es_src_graphlib_json_js__WEBPACK_IMPORTED_MODULE_10__/* .write */ .M(graph))); + const siteConfig = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .getConfig2 */ .D7)(); + await recursiveRender(elem, graph, diagramType, id, void 0, siteConfig); +}, "render"); + +// src/diagrams/class/classRenderer-v2.ts +var sanitizeText = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .__name */ .K2)((txt) => _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .common_default */ .Y2.sanitizeText(txt, (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .getConfig2 */ .D7)()), "sanitizeText"); +var conf = { + dividerMargin: 10, + padding: 5, + textHeight: 10, + curve: void 0 +}; +var addNamespaces = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .__name */ .K2)(function(namespaces, g, _id, diagObj) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info("keys:", [...namespaces.keys()]); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info(namespaces); + namespaces.forEach(function(vertex) { + const shape = "rect"; + const node = { + shape, + id: vertex.id, + domId: vertex.domId, + labelText: sanitizeText(vertex.id), + labelStyle: "", + style: "fill: none; stroke: black", + // TODO V10: Flowchart ? Keeping flowchart for backwards compatibility. Remove in next major release + padding: (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .getConfig2 */ .D7)().flowchart?.padding ?? (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .getConfig2 */ .D7)().class?.padding + }; + g.setNode(vertex.id, node); + addClasses(vertex.classes, g, _id, diagObj, vertex.id); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info("setNode", node); + }); +}, "addNamespaces"); +var addClasses = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .__name */ .K2)(function(classes, g, _id, diagObj, parent) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info("keys:", [...classes.keys()]); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info(classes); + [...classes.values()].filter((vertex) => vertex.parent === parent).forEach(function(vertex) { + const cssClassStr = vertex.cssClasses.join(" "); + const styles = (0,_chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_5__/* .getStylesFromArray */ .sM)(vertex.styles); + const vertexText = vertex.label ?? vertex.id; + const radius = 0; + const shape = "class_box"; + const node = { + labelStyle: styles.labelStyle, + shape, + labelText: sanitizeText(vertexText), + classData: vertex, + rx: radius, + ry: radius, + class: cssClassStr, + style: styles.style, + id: vertex.id, + domId: vertex.domId, + tooltip: diagObj.db.getTooltip(vertex.id, parent) || "", + haveCallback: vertex.haveCallback, + link: vertex.link, + width: vertex.type === "group" ? 500 : void 0, + type: vertex.type, + // TODO V10: Flowchart ? Keeping flowchart for backwards compatibility. Remove in next major release + padding: (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .getConfig2 */ .D7)().flowchart?.padding ?? (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .getConfig2 */ .D7)().class?.padding + }; + g.setNode(vertex.id, node); + if (parent) { + g.setParent(vertex.id, parent); + } + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info("setNode", node); + }); +}, "addClasses"); +var addNotes = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .__name */ .K2)(function(notes, g, startEdgeId, classes) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info(notes); + notes.forEach(function(note, i) { + const vertex = note; + const cssNoteStr = ""; + const styles = { labelStyle: "", style: "" }; + const vertexText = vertex.text; + const radius = 0; + const shape = "note"; + const node = { + labelStyle: styles.labelStyle, + shape, + labelText: sanitizeText(vertexText), + noteData: vertex, + rx: radius, + ry: radius, + class: cssNoteStr, + style: styles.style, + id: vertex.id, + domId: vertex.id, + tooltip: "", + type: "note", + // TODO V10: Flowchart ? Keeping flowchart for backwards compatibility. Remove in next major release + padding: (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .getConfig2 */ .D7)().flowchart?.padding ?? (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .getConfig2 */ .D7)().class?.padding + }; + g.setNode(vertex.id, node); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info("setNode", node); + if (!vertex.class || !classes.has(vertex.class)) { + return; + } + const edgeId = startEdgeId + i; + const edgeData = { + id: `edgeNote${edgeId}`, + //Set relationship style and line type + classes: "relation", + pattern: "dotted", + // Set link type for rendering + arrowhead: "none", + //Set edge extra labels + startLabelRight: "", + endLabelLeft: "", + //Set relation arrow types + arrowTypeStart: "none", + arrowTypeEnd: "none", + style: "fill:none", + labelStyle: "", + curve: (0,_chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_5__/* .interpolateToCurve */ .Ib)(conf.curve, d3__WEBPACK_IMPORTED_MODULE_7__/* .curveLinear */ .lUB) + }; + g.setEdge(vertex.id, vertex.class, edgeData, edgeId); + }); +}, "addNotes"); +var addRelations = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .__name */ .K2)(function(relations, g) { + const conf2 = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .getConfig2 */ .D7)().flowchart; + let cnt = 0; + relations.forEach(function(edge) { + cnt++; + const edgeData = { + //Set relationship style and line type + classes: "relation", + pattern: edge.relation.lineType == 1 ? "dashed" : "solid", + id: (0,_chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_5__/* .getEdgeId */ .rY)(edge.id1, edge.id2, { + prefix: "id", + counter: cnt + }), + // Set link type for rendering + arrowhead: edge.type === "arrow_open" ? "none" : "normal", + //Set edge extra labels + startLabelRight: edge.relationTitle1 === "none" ? "" : edge.relationTitle1, + endLabelLeft: edge.relationTitle2 === "none" ? "" : edge.relationTitle2, + //Set relation arrow types + arrowTypeStart: getArrowMarker(edge.relation.type1), + arrowTypeEnd: getArrowMarker(edge.relation.type2), + style: "fill:none", + labelStyle: "", + curve: (0,_chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_5__/* .interpolateToCurve */ .Ib)(conf2?.curve, d3__WEBPACK_IMPORTED_MODULE_7__/* .curveLinear */ .lUB) + }; + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info(edgeData, edge); + if (edge.style !== void 0) { + const styles = (0,_chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_5__/* .getStylesFromArray */ .sM)(edge.style); + edgeData.style = styles.style; + edgeData.labelStyle = styles.labelStyle; + } + edge.text = edge.title; + if (edge.text === void 0) { + if (edge.style !== void 0) { + edgeData.arrowheadStyle = "fill: #333"; + } + } else { + edgeData.arrowheadStyle = "fill: #333"; + edgeData.labelpos = "c"; + if ((0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .getConfig2 */ .D7)().flowchart?.htmlLabels ?? (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .getConfig2 */ .D7)().htmlLabels) { + edgeData.labelType = "html"; + edgeData.label = '<span class="edgeLabel">' + edge.text + "</span>"; + } else { + edgeData.labelType = "text"; + edgeData.label = edge.text.replace(_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .common_default */ .Y2.lineBreakRegex, "\n"); + if (edge.style === void 0) { + edgeData.style = edgeData.style || "stroke: #333; stroke-width: 1.5px;fill:none"; + } + edgeData.labelStyle = edgeData.labelStyle.replace("color:", "fill:"); + } + } + g.setEdge(edge.id1, edge.id2, edgeData, cnt); + }); +}, "addRelations"); +var setConf = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .__name */ .K2)(function(cnf) { + conf = { + ...conf, + ...cnf + }; +}, "setConf"); +var draw = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .__name */ .K2)(async function(text, id, _version, diagObj) { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info("Drawing class - ", id); + const conf2 = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .getConfig2 */ .D7)().flowchart ?? (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .getConfig2 */ .D7)().class; + const securityLevel = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .getConfig2 */ .D7)().securityLevel; + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info("config:", conf2); + const nodeSpacing = conf2?.nodeSpacing ?? 50; + const rankSpacing = conf2?.rankSpacing ?? 50; + const g = new dagre_d3_es_src_graphlib_index_js__WEBPACK_IMPORTED_MODULE_8__/* .Graph */ .T({ + multigraph: true, + compound: true + }).setGraph({ + rankdir: diagObj.db.getDirection(), + nodesep: nodeSpacing, + ranksep: rankSpacing, + marginx: 8, + marginy: 8 + }).setDefaultEdgeLabel(function() { + return {}; + }); + const namespaces = diagObj.db.getNamespaces(); + const classes = diagObj.db.getClasses(); + const relations = diagObj.db.getRelations(); + const notes = diagObj.db.getNotes(); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .log */ .Rm.info(relations); + addNamespaces(namespaces, g, id, diagObj); + addClasses(classes, g, id, diagObj); + addRelations(relations, g); + addNotes(notes, g, relations.length + 1, classes); + let sandboxElement; + if (securityLevel === "sandbox") { + sandboxElement = (0,d3__WEBPACK_IMPORTED_MODULE_7__/* .select */ .Ltv)("#i" + id); + } + const root = securityLevel === "sandbox" ? (0,d3__WEBPACK_IMPORTED_MODULE_7__/* .select */ .Ltv)(sandboxElement.nodes()[0].contentDocument.body) : (0,d3__WEBPACK_IMPORTED_MODULE_7__/* .select */ .Ltv)("body"); + const svg = root.select(`[id="${id}"]`); + const element = root.select("#" + id + " g"); + await render( + element, + g, + ["aggregation", "extension", "composition", "dependency", "lollipop"], + "classDiagram", + id + ); + _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_5__/* .utils_default */ ._K.insertTitle(svg, "classTitleText", conf2?.titleTopMargin ?? 5, diagObj.db.getDiagramTitle()); + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .setupGraphViewbox */ .ot)(g, svg, conf2?.diagramPadding, conf2?.useMaxWidth); + if (!conf2?.htmlLabels) { + const doc = securityLevel === "sandbox" ? sandboxElement.nodes()[0].contentDocument : document; + const labels = doc.querySelectorAll('[id="' + id + '"] .edgeLabel .label'); + for (const label of labels) { + const dim = label.getBBox(); + const rect2 = doc.createElementNS("http://www.w3.org/2000/svg", "rect"); + rect2.setAttribute("rx", 0); + rect2.setAttribute("ry", 0); + rect2.setAttribute("width", dim.width); + rect2.setAttribute("height", dim.height); + label.insertBefore(rect2, label.firstChild); + } + } +}, "draw"); +function getArrowMarker(type) { + let marker; + switch (type) { + case 0: + marker = "aggregation"; + break; + case 1: + marker = "extension"; + break; + case 2: + marker = "composition"; + break; + case 3: + marker = "dependency"; + break; + case 4: + marker = "lollipop"; + break; + default: + marker = "none"; + } + return marker; +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .__name */ .K2)(getArrowMarker, "getArrowMarker"); +var classRenderer_v2_default = { + setConf, + draw +}; + +// src/diagrams/class/classDiagram-v2.ts +var diagram = { + parser: _chunk_IBIA4ERB_mjs__WEBPACK_IMPORTED_MODULE_1__/* .classDiagram_default */ ._$, + db: _chunk_IBIA4ERB_mjs__WEBPACK_IMPORTED_MODULE_1__/* .classDb_default */ .z2, + renderer: classRenderer_v2_default, + styles: _chunk_IBIA4ERB_mjs__WEBPACK_IMPORTED_MODULE_1__/* .styles_default */ .tM, + init: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_6__/* .__name */ .K2)((cnf) => { + if (!cnf.class) { + cnf.class = {}; + } + cnf.class.arrowMarkerAbsolute = cnf.arrowMarkerAbsolute; + _chunk_IBIA4ERB_mjs__WEBPACK_IMPORTED_MODULE_1__/* .classDb_default */ .z2.clear(); + }, "init") +}; + + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/4257.c73e0899.js b/assets/js/4257.c73e0899.js new file mode 100644 index 00000000..6552360a --- /dev/null +++ b/assets/js/4257.c73e0899.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkbeacon_docs=self.webpackChunkbeacon_docs||[]).push([[4257],{69323:(t,e,n)=>{n.d(e,{CP:()=>l,HT:()=>u,PB:()=>h,aC:()=>c,lC:()=>a,m:()=>o,tk:()=>r});var i=n(64994),s=n(16750),r=(0,i.K2)(((t,e)=>{const n=t.append("rect");if(n.attr("x",e.x),n.attr("y",e.y),n.attr("fill",e.fill),n.attr("stroke",e.stroke),n.attr("width",e.width),n.attr("height",e.height),e.name&&n.attr("name",e.name),e.rx&&n.attr("rx",e.rx),e.ry&&n.attr("ry",e.ry),void 0!==e.attrs)for(const i in e.attrs)n.attr(i,e.attrs[i]);return e.class&&n.attr("class",e.class),n}),"drawRect"),a=(0,i.K2)(((t,e)=>{const n={x:e.startx,y:e.starty,width:e.stopx-e.startx,height:e.stopy-e.starty,fill:e.fill,stroke:e.stroke,class:"rect"};r(t,n).lower()}),"drawBackgroundRect"),o=(0,i.K2)(((t,e)=>{const n=e.text.replace(i.H1," "),s=t.append("text");s.attr("x",e.x),s.attr("y",e.y),s.attr("class","legend"),s.style("text-anchor",e.anchor),e.class&&s.attr("class",e.class);const r=s.append("tspan");return r.attr("x",e.x+2*e.textMargin),r.text(n),s}),"drawText"),c=(0,i.K2)(((t,e,n,i)=>{const r=t.append("image");r.attr("x",e),r.attr("y",n);const a=(0,s.J)(i);r.attr("xlink:href",a)}),"drawImage"),l=(0,i.K2)(((t,e,n,i)=>{const r=t.append("use");r.attr("x",e),r.attr("y",n);const a=(0,s.J)(i);r.attr("xlink:href",`#${a}`)}),"drawEmbeddedImage"),h=(0,i.K2)((()=>({x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0})),"getNoteRect"),u=(0,i.K2)((()=>({x:0,y:0,width:100,height:100,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0})),"getTextObj")},4257:(t,e,n)=>{n.d(e,{diagram:()=>Y});var i=n(69323),s=n(64994),r=n(20007),a=function(){var t=(0,s.K2)((function(t,e,n,i){for(n=n||{},i=t.length;i--;n[t[i]]=e);return n}),"o"),e=[6,8,10,11,12,14,16,17,18],n=[1,9],i=[1,10],r=[1,11],a=[1,12],o=[1,13],c=[1,14],l={trace:(0,s.K2)((function(){}),"trace"),yy:{},symbols_:{error:2,start:3,journey:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,title:11,acc_title:12,acc_title_value:13,acc_descr:14,acc_descr_value:15,acc_descr_multiline_value:16,section:17,taskName:18,taskData:19,$accept:0,$end:1},terminals_:{2:"error",4:"journey",6:"EOF",8:"SPACE",10:"NEWLINE",11:"title",12:"acc_title",13:"acc_title_value",14:"acc_descr",15:"acc_descr_value",16:"acc_descr_multiline_value",17:"section",18:"taskName",19:"taskData"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,2]],performAction:(0,s.K2)((function(t,e,n,i,s,r,a){var o=r.length-1;switch(s){case 1:return r[o-1];case 2:case 6:case 7:this.$=[];break;case 3:r[o-1].push(r[o]),this.$=r[o-1];break;case 4:case 5:this.$=r[o];break;case 8:i.setDiagramTitle(r[o].substr(6)),this.$=r[o].substr(6);break;case 9:this.$=r[o].trim(),i.setAccTitle(this.$);break;case 10:case 11:this.$=r[o].trim(),i.setAccDescription(this.$);break;case 12:i.addSection(r[o].substr(8)),this.$=r[o].substr(8);break;case 13:i.addTask(r[o-1],r[o]),this.$="task"}}),"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:n,12:i,14:r,16:a,17:o,18:c},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:15,11:n,12:i,14:r,16:a,17:o,18:c},t(e,[2,5]),t(e,[2,6]),t(e,[2,8]),{13:[1,16]},{15:[1,17]},t(e,[2,11]),t(e,[2,12]),{19:[1,18]},t(e,[2,4]),t(e,[2,9]),t(e,[2,10]),t(e,[2,13])],defaultActions:{},parseError:(0,s.K2)((function(t,e){if(!e.recoverable){var n=new Error(t);throw n.hash=e,n}this.trace(t)}),"parseError"),parse:(0,s.K2)((function(t){var e=this,n=[0],i=[],r=[null],a=[],o=this.table,c="",l=0,h=0,u=0,y=a.slice.call(arguments,1),p=Object.create(this.lexer),d={yy:{}};for(var f in this.yy)Object.prototype.hasOwnProperty.call(this.yy,f)&&(d.yy[f]=this.yy[f]);p.setInput(t,d.yy),d.yy.lexer=p,d.yy.parser=this,void 0===p.yylloc&&(p.yylloc={});var g=p.yylloc;a.push(g);var x=p.options&&p.options.ranges;function m(){var t;return"number"!=typeof(t=i.pop()||p.lex()||1)&&(t instanceof Array&&(t=(i=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof d.yy.parseError?this.parseError=d.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,s.K2)((function(t){n.length=n.length-2*t,r.length=r.length-t,a.length=a.length-t}),"popStack"),(0,s.K2)(m,"lex");for(var k,_,b,w,v,K,$,T,M,S={};;){if(b=n[n.length-1],this.defaultActions[b]?w=this.defaultActions[b]:(null==k&&(k=m()),w=o[b]&&o[b][k]),void 0===w||!w.length||!w[0]){var E="";for(K in M=[],o[b])this.terminals_[K]&&K>2&&M.push("'"+this.terminals_[K]+"'");E=p.showPosition?"Parse error on line "+(l+1)+":\n"+p.showPosition()+"\nExpecting "+M.join(", ")+", got '"+(this.terminals_[k]||k)+"'":"Parse error on line "+(l+1)+": Unexpected "+(1==k?"end of input":"'"+(this.terminals_[k]||k)+"'"),this.parseError(E,{text:p.match,token:this.terminals_[k]||k,line:p.yylineno,loc:g,expected:M})}if(w[0]instanceof Array&&w.length>1)throw new Error("Parse Error: multiple actions possible at state: "+b+", token: "+k);switch(w[0]){case 1:n.push(k),r.push(p.yytext),a.push(p.yylloc),n.push(w[1]),k=null,_?(k=_,_=null):(h=p.yyleng,c=p.yytext,l=p.yylineno,g=p.yylloc,u>0&&u--);break;case 2:if($=this.productions_[w[1]][1],S.$=r[r.length-$],S._$={first_line:a[a.length-($||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-($||1)].first_column,last_column:a[a.length-1].last_column},x&&(S._$.range=[a[a.length-($||1)].range[0],a[a.length-1].range[1]]),void 0!==(v=this.performAction.apply(S,[c,h,l,d.yy,w[1],r,a].concat(y))))return v;$&&(n=n.slice(0,-1*$*2),r=r.slice(0,-1*$),a=a.slice(0,-1*$)),n.push(this.productions_[w[1]][0]),r.push(S.$),a.push(S._$),T=o[n[n.length-2]][n[n.length-1]],n.push(T);break;case 3:return!0}}return!0}),"parse")},h=function(){return{EOF:1,parseError:(0,s.K2)((function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)}),"parseError"),setInput:(0,s.K2)((function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this}),"setInput"),input:(0,s.K2)((function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t}),"input"),unput:(0,s.K2)((function(t){var e=t.length,n=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var i=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var s=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===i.length?this.yylloc.first_column:0)+i[i.length-n.length].length-n[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[s[0],s[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this}),"unput"),more:(0,s.K2)((function(){return this._more=!0,this}),"more"),reject:(0,s.K2)((function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"reject"),less:(0,s.K2)((function(t){this.unput(this.match.slice(t))}),"less"),pastInput:(0,s.K2)((function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")}),"pastInput"),upcomingInput:(0,s.K2)((function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")}),"upcomingInput"),showPosition:(0,s.K2)((function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"}),"showPosition"),test_match:(0,s.K2)((function(t,e){var n,i,s;if(this.options.backtrack_lexer&&(s={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(s.yylloc.range=this.yylloc.range.slice(0))),(i=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=i.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:i?i[i.length-1].length-i[i.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],n=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var r in s)this[r]=s[r];return!1}return!1}),"test_match"),next:(0,s.K2)((function(){if(this.done)return this.EOF;var t,e,n,i;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var s=this._currentRules(),r=0;r<s.length;r++)if((n=this._input.match(this.rules[s[r]]))&&(!e||n[0].length>e[0].length)){if(e=n,i=r,this.options.backtrack_lexer){if(!1!==(t=this.test_match(n,s[r])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,s[i]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})}),"next"),lex:(0,s.K2)((function(){var t=this.next();return t||this.lex()}),"lex"),begin:(0,s.K2)((function(t){this.conditionStack.push(t)}),"begin"),popState:(0,s.K2)((function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]}),"popState"),_currentRules:(0,s.K2)((function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules}),"_currentRules"),topState:(0,s.K2)((function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"}),"topState"),pushState:(0,s.K2)((function(t){this.begin(t)}),"pushState"),stateStackSize:(0,s.K2)((function(){return this.conditionStack.length}),"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,s.K2)((function(t,e,n,i){switch(n){case 0:case 1:case 3:case 4:break;case 2:return 10;case 5:return 4;case 6:return 11;case 7:return this.begin("acc_title"),12;case 8:return this.popState(),"acc_title_value";case 9:return this.begin("acc_descr"),14;case 10:return this.popState(),"acc_descr_value";case 11:this.begin("acc_descr_multiline");break;case 12:this.popState();break;case 13:return"acc_descr_multiline_value";case 14:return 17;case 15:return 18;case 16:return 19;case 17:return":";case 18:return 6;case 19:return"INVALID"}}),"anonymous"),rules:[/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:journey\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:section\s[^#:\n;]+)/i,/^(?:[^#:\n;]+)/i,/^(?::[^#\n;]+)/i,/^(?::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,9,11,14,15,16,17,18,19],inclusive:!0}}}}();function u(){this.yy={}}return l.lexer=h,(0,s.K2)(u,"Parser"),u.prototype=l,l.Parser=u,new u}();a.parser=a;var o=a,c="",l=[],h=[],u=[],y=(0,s.K2)((function(){l.length=0,h.length=0,c="",u.length=0,(0,s.IU)()}),"clear"),p=(0,s.K2)((function(t){c=t,l.push(t)}),"addSection"),d=(0,s.K2)((function(){return l}),"getSections"),f=(0,s.K2)((function(){let t=k();let e=0;for(;!t&&e<100;)t=k(),e++;return h.push(...u),h}),"getTasks"),g=(0,s.K2)((function(){const t=[];h.forEach((e=>{e.people&&t.push(...e.people)}));return[...new Set(t)].sort()}),"updateActors"),x=(0,s.K2)((function(t,e){const n=e.substr(1).split(":");let i=0,s=[];1===n.length?(i=Number(n[0]),s=[]):(i=Number(n[0]),s=n[1].split(","));const r=s.map((t=>t.trim())),a={section:c,type:c,people:r,task:t,score:i};u.push(a)}),"addTask"),m=(0,s.K2)((function(t){const e={section:c,type:c,description:t,task:t,classes:[]};h.push(e)}),"addTaskOrg"),k=(0,s.K2)((function(){const t=(0,s.K2)((function(t){return u[t].processed}),"compileTask");let e=!0;for(const[n,i]of u.entries())t(n),e=e&&i.processed;return e}),"compileTasks"),_=(0,s.K2)((function(){return g()}),"getActors"),b={getConfig:(0,s.K2)((()=>(0,s.D7)().journey),"getConfig"),clear:y,setDiagramTitle:s.ke,getDiagramTitle:s.ab,setAccTitle:s.SV,getAccTitle:s.iN,setAccDescription:s.EI,getAccDescription:s.m7,addSection:p,getSections:d,getTasks:f,addTask:x,addTaskOrg:m,getActors:_},w=(0,s.K2)((t=>`.label {\n font-family: 'trebuchet ms', verdana, arial, sans-serif;\n font-family: var(--mermaid-font-family);\n color: ${t.textColor};\n }\n .mouth {\n stroke: #666;\n }\n\n line {\n stroke: ${t.textColor}\n }\n\n .legend {\n fill: ${t.textColor};\n }\n\n .label text {\n fill: #333;\n }\n .label {\n color: ${t.textColor}\n }\n\n .face {\n ${t.faceColor?`fill: ${t.faceColor}`:"fill: #FFF8DC"};\n stroke: #999;\n }\n\n .node rect,\n .node circle,\n .node ellipse,\n .node polygon,\n .node path {\n fill: ${t.mainBkg};\n stroke: ${t.nodeBorder};\n stroke-width: 1px;\n }\n\n .node .label {\n text-align: center;\n }\n .node.clickable {\n cursor: pointer;\n }\n\n .arrowheadPath {\n fill: ${t.arrowheadColor};\n }\n\n .edgePath .path {\n stroke: ${t.lineColor};\n stroke-width: 1.5px;\n }\n\n .flowchart-link {\n stroke: ${t.lineColor};\n fill: none;\n }\n\n .edgeLabel {\n background-color: ${t.edgeLabelBackground};\n rect {\n opacity: 0.5;\n }\n text-align: center;\n }\n\n .cluster rect {\n }\n\n .cluster text {\n fill: ${t.titleColor};\n }\n\n div.mermaidTooltip {\n position: absolute;\n text-align: center;\n max-width: 200px;\n padding: 2px;\n font-family: 'trebuchet ms', verdana, arial, sans-serif;\n font-family: var(--mermaid-font-family);\n font-size: 12px;\n background: ${t.tertiaryColor};\n border: 1px solid ${t.border2};\n border-radius: 2px;\n pointer-events: none;\n z-index: 100;\n }\n\n .task-type-0, .section-type-0 {\n ${t.fillType0?`fill: ${t.fillType0}`:""};\n }\n .task-type-1, .section-type-1 {\n ${t.fillType0?`fill: ${t.fillType1}`:""};\n }\n .task-type-2, .section-type-2 {\n ${t.fillType0?`fill: ${t.fillType2}`:""};\n }\n .task-type-3, .section-type-3 {\n ${t.fillType0?`fill: ${t.fillType3}`:""};\n }\n .task-type-4, .section-type-4 {\n ${t.fillType0?`fill: ${t.fillType4}`:""};\n }\n .task-type-5, .section-type-5 {\n ${t.fillType0?`fill: ${t.fillType5}`:""};\n }\n .task-type-6, .section-type-6 {\n ${t.fillType0?`fill: ${t.fillType6}`:""};\n }\n .task-type-7, .section-type-7 {\n ${t.fillType0?`fill: ${t.fillType7}`:""};\n }\n\n .actor-0 {\n ${t.actor0?`fill: ${t.actor0}`:""};\n }\n .actor-1 {\n ${t.actor1?`fill: ${t.actor1}`:""};\n }\n .actor-2 {\n ${t.actor2?`fill: ${t.actor2}`:""};\n }\n .actor-3 {\n ${t.actor3?`fill: ${t.actor3}`:""};\n }\n .actor-4 {\n ${t.actor4?`fill: ${t.actor4}`:""};\n }\n .actor-5 {\n ${t.actor5?`fill: ${t.actor5}`:""};\n }\n`),"getStyles"),v=(0,s.K2)((function(t,e){return(0,i.tk)(t,e)}),"drawRect"),K=(0,s.K2)((function(t,e){const n=15,i=t.append("circle").attr("cx",e.cx).attr("cy",e.cy).attr("class","face").attr("r",n).attr("stroke-width",2).attr("overflow","visible"),a=t.append("g");function o(t){const i=(0,r.JLW)().startAngle(Math.PI/2).endAngle(Math.PI/2*3).innerRadius(7.5).outerRadius(n/2.2);t.append("path").attr("class","mouth").attr("d",i).attr("transform","translate("+e.cx+","+(e.cy+2)+")")}function c(t){const i=(0,r.JLW)().startAngle(3*Math.PI/2).endAngle(Math.PI/2*5).innerRadius(7.5).outerRadius(n/2.2);t.append("path").attr("class","mouth").attr("d",i).attr("transform","translate("+e.cx+","+(e.cy+7)+")")}function l(t){t.append("line").attr("class","mouth").attr("stroke",2).attr("x1",e.cx-5).attr("y1",e.cy+7).attr("x2",e.cx+5).attr("y2",e.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}return a.append("circle").attr("cx",e.cx-5).attr("cy",e.cy-5).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),a.append("circle").attr("cx",e.cx+5).attr("cy",e.cy-5).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),(0,s.K2)(o,"smile"),(0,s.K2)(c,"sad"),(0,s.K2)(l,"ambivalent"),e.score>3?o(a):e.score<3?c(a):l(a),i}),"drawFace"),$=(0,s.K2)((function(t,e){const n=t.append("circle");return n.attr("cx",e.cx),n.attr("cy",e.cy),n.attr("class","actor-"+e.pos),n.attr("fill",e.fill),n.attr("stroke",e.stroke),n.attr("r",e.r),void 0!==n.class&&n.attr("class",n.class),void 0!==e.title&&n.append("title").text(e.title),n}),"drawCircle"),T=(0,s.K2)((function(t,e){return(0,i.m)(t,e)}),"drawText"),M=(0,s.K2)((function(t,e){function n(t,e,n,i,s){return t+","+e+" "+(t+n)+","+e+" "+(t+n)+","+(e+i-s)+" "+(t+n-1.2*s)+","+(e+i)+" "+t+","+(e+i)}(0,s.K2)(n,"genPoints");const i=t.append("polygon");i.attr("points",n(e.x,e.y,50,20,7)),i.attr("class","labelBox"),e.y=e.y+e.labelMargin,e.x=e.x+.5*e.labelMargin,T(t,e)}),"drawLabel"),S=(0,s.K2)((function(t,e,n){const s=t.append("g"),r=(0,i.PB)();r.x=e.x,r.y=e.y,r.fill=e.fill,r.width=n.width*e.taskCount+n.diagramMarginX*(e.taskCount-1),r.height=n.height,r.class="journey-section section-type-"+e.num,r.rx=3,r.ry=3,v(s,r),C(n)(e.text,s,r.x,r.y,r.width,r.height,{class:"journey-section section-type-"+e.num},n,e.colour)}),"drawSection"),E=-1,I=(0,s.K2)((function(t,e,n){const s=e.x+n.width/2,r=t.append("g");E++;r.append("line").attr("id","task"+E).attr("x1",s).attr("y1",e.y).attr("x2",s).attr("y2",450).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),K(r,{cx:s,cy:300+30*(5-e.score),score:e.score});const a=(0,i.PB)();a.x=e.x,a.y=e.y,a.fill=e.fill,a.width=n.width,a.height=n.height,a.class="task task-type-"+e.num,a.rx=3,a.ry=3,v(r,a);let o=e.x+14;e.people.forEach((t=>{const n=e.actors[t].color,i={cx:o,cy:e.y,r:7,fill:n,stroke:"#000",title:t,pos:e.actors[t].position};$(r,i),o+=10})),C(n)(e.task,r,a.x,a.y,a.width,a.height,{class:"task"},n,e.colour)}),"drawTask"),P=(0,s.K2)((function(t,e){(0,i.lC)(t,e)}),"drawBackgroundRect"),C=function(){function t(t,e,n,s,r,a,o,c){i(e.append("text").attr("x",n+r/2).attr("y",s+a/2+5).style("font-color",c).style("text-anchor","middle").text(t),o)}function e(t,e,n,s,r,a,o,c,l){const{taskFontSize:h,taskFontFamily:u}=c,y=t.split(/<br\s*\/?>/gi);for(let p=0;p<y.length;p++){const t=p*h-h*(y.length-1)/2,c=e.append("text").attr("x",n+r/2).attr("y",s).attr("fill",l).style("text-anchor","middle").style("font-size",h).style("font-family",u);c.append("tspan").attr("x",n+r/2).attr("dy",t).text(y[p]),c.attr("y",s+a/2).attr("dominant-baseline","central").attr("alignment-baseline","central"),i(c,o)}}function n(t,n,s,r,a,o,c,l){const h=n.append("switch"),u=h.append("foreignObject").attr("x",s).attr("y",r).attr("width",a).attr("height",o).attr("position","fixed").append("xhtml:div").style("display","table").style("height","100%").style("width","100%");u.append("div").attr("class","label").style("display","table-cell").style("text-align","center").style("vertical-align","middle").text(t),e(t,h,s,r,a,o,c,l),i(u,c)}function i(t,e){for(const n in e)n in e&&t.attr(n,e[n])}return(0,s.K2)(t,"byText"),(0,s.K2)(e,"byTspan"),(0,s.K2)(n,"byFo"),(0,s.K2)(i,"_setTextAttrs"),function(i){return"fo"===i.textPlacement?n:"old"===i.textPlacement?t:e}}(),A={drawRect:v,drawCircle:$,drawSection:S,drawText:T,drawLabel:M,drawTask:I,drawBackgroundRect:P,initGraphics:(0,s.K2)((function(t){t.append("defs").append("marker").attr("id","arrowhead").attr("refX",5).attr("refY",2).attr("markerWidth",6).attr("markerHeight",4).attr("orient","auto").append("path").attr("d","M 0,0 V 4 L6,2 Z")}),"initGraphics")},j=(0,s.K2)((function(t){Object.keys(t).forEach((function(e){V[e]=t[e]}))}),"setConf"),D={};function L(t){const e=(0,s.D7)().journey;let n=60;Object.keys(D).forEach((i=>{const s=D[i].color,r={cx:20,cy:n,r:7,fill:s,stroke:"#000",pos:D[i].position};A.drawCircle(t,r);const a={x:40,y:n+7,fill:"#666",text:i,textMargin:5|e.boxTextMargin};A.drawText(t,a),n+=20}))}(0,s.K2)(L,"drawActorLegend");var V=(0,s.D7)().journey,B=V.leftMargin,O=(0,s.K2)((function(t,e,n,i){const a=(0,s.D7)().journey,o=(0,s.D7)().securityLevel;let c;"sandbox"===o&&(c=(0,r.Ltv)("#i"+e));const l="sandbox"===o?(0,r.Ltv)(c.nodes()[0].contentDocument.body):(0,r.Ltv)("body");F.init();const h=l.select("#"+e);A.initGraphics(h);const u=i.db.getTasks(),y=i.db.getDiagramTitle(),p=i.db.getActors();for(const s in D)delete D[s];let d=0;p.forEach((t=>{D[t]={color:a.actorColours[d%a.actorColours.length],position:d},d++})),L(h),F.insert(0,0,B,50*Object.keys(D).length),z(h,u,0);const f=F.getBounds();y&&h.append("text").text(y).attr("x",B).attr("font-size","4ex").attr("font-weight","bold").attr("y",25);const g=f.stopy-f.starty+2*a.diagramMarginY,x=B+f.stopx+2*a.diagramMarginX;(0,s.a$)(h,g,x,a.useMaxWidth),h.append("line").attr("x1",B).attr("y1",4*a.height).attr("x2",x-B-4).attr("y2",4*a.height).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#arrowhead)");const m=y?70:0;h.attr("viewBox",`${f.startx} -25 ${x} ${g+m}`),h.attr("preserveAspectRatio","xMinYMin meet"),h.attr("height",g+m+25)}),"draw"),F={data:{startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},verticalPos:0,sequenceItems:[],init:(0,s.K2)((function(){this.sequenceItems=[],this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},this.verticalPos=0}),"init"),updateVal:(0,s.K2)((function(t,e,n,i){void 0===t[e]?t[e]=n:t[e]=i(n,t[e])}),"updateVal"),updateBounds:(0,s.K2)((function(t,e,n,i){const r=(0,s.D7)().journey,a=this;let o=0;function c(c){return(0,s.K2)((function(s){o++;const l=a.sequenceItems.length-o+1;a.updateVal(s,"starty",e-l*r.boxMargin,Math.min),a.updateVal(s,"stopy",i+l*r.boxMargin,Math.max),a.updateVal(F.data,"startx",t-l*r.boxMargin,Math.min),a.updateVal(F.data,"stopx",n+l*r.boxMargin,Math.max),"activation"!==c&&(a.updateVal(s,"startx",t-l*r.boxMargin,Math.min),a.updateVal(s,"stopx",n+l*r.boxMargin,Math.max),a.updateVal(F.data,"starty",e-l*r.boxMargin,Math.min),a.updateVal(F.data,"stopy",i+l*r.boxMargin,Math.max))}),"updateItemBounds")}(0,s.K2)(c,"updateFn"),this.sequenceItems.forEach(c())}),"updateBounds"),insert:(0,s.K2)((function(t,e,n,i){const s=Math.min(t,n),r=Math.max(t,n),a=Math.min(e,i),o=Math.max(e,i);this.updateVal(F.data,"startx",s,Math.min),this.updateVal(F.data,"starty",a,Math.min),this.updateVal(F.data,"stopx",r,Math.max),this.updateVal(F.data,"stopy",o,Math.max),this.updateBounds(s,a,r,o)}),"insert"),bumpVerticalPos:(0,s.K2)((function(t){this.verticalPos=this.verticalPos+t,this.data.stopy=this.verticalPos}),"bumpVerticalPos"),getVerticalPos:(0,s.K2)((function(){return this.verticalPos}),"getVerticalPos"),getBounds:(0,s.K2)((function(){return this.data}),"getBounds")},N=V.sectionFills,R=V.sectionColours,z=(0,s.K2)((function(t,e,n){const i=(0,s.D7)().journey;let r="";const a=n+(2*i.height+i.diagramMarginY);let o=0,c="#CCC",l="black",h=0;for(const[s,u]of e.entries()){if(r!==u.section){c=N[o%N.length],h=o%N.length,l=R[o%R.length];let n=0;const a=u.section;for(let t=s;t<e.length&&e[t].section==a;t++)n+=1;const y={x:s*i.taskMargin+s*i.width+B,y:50,text:u.section,fill:c,num:h,colour:l,taskCount:n};A.drawSection(t,y,i),r=u.section,o++}const n=u.people.reduce(((t,e)=>(D[e]&&(t[e]=D[e]),t)),{});u.x=s*i.taskMargin+s*i.width+B,u.y=a,u.width=i.diagramMarginX,u.height=i.diagramMarginY,u.colour=l,u.fill=c,u.num=h,u.actors=n,A.drawTask(t,u,i),F.insert(u.x,u.y,u.x+u.width+i.taskMargin,450)}}),"drawTasks"),W={setConf:j,draw:O},Y={parser:o,db:b,renderer:W,styles:w,init:(0,s.K2)((t=>{W.setConf(t.journey),b.clear()}),"init")}}}]); \ No newline at end of file diff --git a/assets/js/43c645a4.a8e41006.js b/assets/js/43c645a4.a8e41006.js new file mode 100644 index 00000000..e6cca495 --- /dev/null +++ b/assets/js/43c645a4.a8e41006.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkbeacon_docs=self.webpackChunkbeacon_docs||[]).push([[7005],{39032:(n,e,t)=>{t.r(e),t.d(e,{assets:()=>r,contentTitle:()=>s,default:()=>f,frontMatter:()=>i,metadata:()=>d,toc:()=>l});var o=t(74848),a=t(28453),c=t(61114);const i={title:"Connection"},s=void 0,d={id:"advanced/flows/connection",title:"Connection",description:"<Mermaid",source:"@site/docs/advanced/flows/connection.mdx",sourceDirName:"advanced/flows",slug:"/advanced/flows/connection",permalink:"/advanced/flows/connection",draft:!1,unlisted:!1,editUrl:"https://github.com/airgap-it/beacon-docs/edit/main/src/docs/advanced/flows/connection.mdx",tags:[],version:"current",frontMatter:{title:"Connection"},sidebar:"docs",previous:{title:"Client Info",permalink:"/advanced/sdk-info"},next:{title:"Extension Communication",permalink:"/advanced/flows/extension-communication"}},r={},l=[];function u(n){return(0,o.jsx)(c.A,{chart:"\ngraph LR\n Z[dApp] --\x3e Y{Extension installed?}\n subgraph Beacon SDK\n Y -- No --\x3e B[Wallet/P2P]\n end\n subgraph Extension\n X -- Yes --\x3e E[Wallet/P2P]\n X -- No --\x3e D[Ledger / Mnemonic]\n Y -- Yes --\x3e X{Wallet Paired?}\n end\n"})}function f(n={}){const{wrapper:e}={...(0,a.R)(),...n.components};return e?(0,o.jsx)(e,{...n,children:(0,o.jsx)(u,{...n})}):u()}},61114:(n,e,t)=>{t.d(e,{A:()=>i});var o=t(96540),a=t(22279),c=t(74848);a.A.initialize({startOnLoad:!0});const i=n=>{let{chart:e}=n;return(0,o.useEffect)((()=>{a.A.contentLoaded()}),[]),(0,c.jsx)("div",{className:"mermaid",children:e})}}}]); \ No newline at end of file diff --git a/assets/js/444.4cf2dabf.js b/assets/js/444.4cf2dabf.js new file mode 100644 index 00000000..c545cb7d --- /dev/null +++ b/assets/js/444.4cf2dabf.js @@ -0,0 +1,25998 @@ +"use strict"; +exports.id = 444; +exports.ids = [444]; +exports.modules = { + +/***/ 59850: +/***/ ((__unused_webpack_module, exports, __webpack_require__) => { + +var __webpack_unused_export__; + +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + *--------------------------------------------------------------------------------------------*/ +__webpack_unused_export__ = ({ value: true }); +exports.Qi = exports.XO = void 0; +const ral_1 = __webpack_require__(69590); +const Is = __webpack_require__(78585); +const events_1 = __webpack_require__(62676); +var CancellationToken; +(function (CancellationToken) { + CancellationToken.None = Object.freeze({ + isCancellationRequested: false, + onCancellationRequested: events_1.Event.None + }); + CancellationToken.Cancelled = Object.freeze({ + isCancellationRequested: true, + onCancellationRequested: events_1.Event.None + }); + function is(value) { + const candidate = value; + return candidate && (candidate === CancellationToken.None + || candidate === CancellationToken.Cancelled + || (Is.boolean(candidate.isCancellationRequested) && !!candidate.onCancellationRequested)); + } + CancellationToken.is = is; +})(CancellationToken || (exports.XO = CancellationToken = {})); +const shortcutEvent = Object.freeze(function (callback, context) { + const handle = (0, ral_1.default)().timer.setTimeout(callback.bind(context), 0); + return { dispose() { handle.dispose(); } }; +}); +class MutableToken { + constructor() { + this._isCancelled = false; + } + cancel() { + if (!this._isCancelled) { + this._isCancelled = true; + if (this._emitter) { + this._emitter.fire(undefined); + this.dispose(); + } + } + } + get isCancellationRequested() { + return this._isCancelled; + } + get onCancellationRequested() { + if (this._isCancelled) { + return shortcutEvent; + } + if (!this._emitter) { + this._emitter = new events_1.Emitter(); + } + return this._emitter.event; + } + dispose() { + if (this._emitter) { + this._emitter.dispose(); + this._emitter = undefined; + } + } +} +class CancellationTokenSource { + get token() { + if (!this._token) { + // be lazy and create the token only when + // actually needed + this._token = new MutableToken(); + } + return this._token; + } + cancel() { + if (!this._token) { + // save an object by returning the default + // cancelled token when cancellation happens + // before someone asks for the token + this._token = CancellationToken.Cancelled; + } + else { + this._token.cancel(); + } + } + dispose() { + if (!this._token) { + // ensure to initialize with an empty token if we had none + this._token = CancellationToken.None; + } + else if (this._token instanceof MutableToken) { + // actually dispose + this._token.dispose(); + } + } +} +exports.Qi = CancellationTokenSource; + + +/***/ }), + +/***/ 62676: +/***/ ((__unused_webpack_module, exports, __webpack_require__) => { + + +/* -------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + * ------------------------------------------------------------------------------------------ */ +Object.defineProperty(exports, "__esModule", ({ value: true })); +exports.Emitter = exports.Event = void 0; +const ral_1 = __webpack_require__(69590); +var Event; +(function (Event) { + const _disposable = { dispose() { } }; + Event.None = function () { return _disposable; }; +})(Event || (exports.Event = Event = {})); +class CallbackList { + add(callback, context = null, bucket) { + if (!this._callbacks) { + this._callbacks = []; + this._contexts = []; + } + this._callbacks.push(callback); + this._contexts.push(context); + if (Array.isArray(bucket)) { + bucket.push({ dispose: () => this.remove(callback, context) }); + } + } + remove(callback, context = null) { + if (!this._callbacks) { + return; + } + let foundCallbackWithDifferentContext = false; + for (let i = 0, len = this._callbacks.length; i < len; i++) { + if (this._callbacks[i] === callback) { + if (this._contexts[i] === context) { + // callback & context match => remove it + this._callbacks.splice(i, 1); + this._contexts.splice(i, 1); + return; + } + else { + foundCallbackWithDifferentContext = true; + } + } + } + if (foundCallbackWithDifferentContext) { + throw new Error('When adding a listener with a context, you should remove it with the same context'); + } + } + invoke(...args) { + if (!this._callbacks) { + return []; + } + const ret = [], callbacks = this._callbacks.slice(0), contexts = this._contexts.slice(0); + for (let i = 0, len = callbacks.length; i < len; i++) { + try { + ret.push(callbacks[i].apply(contexts[i], args)); + } + catch (e) { + // eslint-disable-next-line no-console + (0, ral_1.default)().console.error(e); + } + } + return ret; + } + isEmpty() { + return !this._callbacks || this._callbacks.length === 0; + } + dispose() { + this._callbacks = undefined; + this._contexts = undefined; + } +} +class Emitter { + constructor(_options) { + this._options = _options; + } + /** + * For the public to allow to subscribe + * to events from this Emitter + */ + get event() { + if (!this._event) { + this._event = (listener, thisArgs, disposables) => { + if (!this._callbacks) { + this._callbacks = new CallbackList(); + } + if (this._options && this._options.onFirstListenerAdd && this._callbacks.isEmpty()) { + this._options.onFirstListenerAdd(this); + } + this._callbacks.add(listener, thisArgs); + const result = { + dispose: () => { + if (!this._callbacks) { + // disposable is disposed after emitter is disposed. + return; + } + this._callbacks.remove(listener, thisArgs); + result.dispose = Emitter._noop; + if (this._options && this._options.onLastListenerRemove && this._callbacks.isEmpty()) { + this._options.onLastListenerRemove(this); + } + } + }; + if (Array.isArray(disposables)) { + disposables.push(result); + } + return result; + }; + } + return this._event; + } + /** + * To be kept private to fire an event to + * subscribers + */ + fire(event) { + if (this._callbacks) { + this._callbacks.invoke.call(this._callbacks, event); + } + } + dispose() { + if (this._callbacks) { + this._callbacks.dispose(); + this._callbacks = undefined; + } + } +} +exports.Emitter = Emitter; +Emitter._noop = function () { }; + + +/***/ }), + +/***/ 78585: +/***/ ((__unused_webpack_module, exports) => { + + +/* -------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + * ------------------------------------------------------------------------------------------ */ +Object.defineProperty(exports, "__esModule", ({ value: true })); +exports.stringArray = exports.array = exports.func = exports.error = exports.number = exports.string = exports.boolean = void 0; +function boolean(value) { + return value === true || value === false; +} +exports.boolean = boolean; +function string(value) { + return typeof value === 'string' || value instanceof String; +} +exports.string = string; +function number(value) { + return typeof value === 'number' || value instanceof Number; +} +exports.number = number; +function error(value) { + return value instanceof Error; +} +exports.error = error; +function func(value) { + return typeof value === 'function'; +} +exports.func = func; +function array(value) { + return Array.isArray(value); +} +exports.array = array; +function stringArray(value) { + return array(value) && value.every(elem => string(elem)); +} +exports.stringArray = stringArray; + + +/***/ }), + +/***/ 69590: +/***/ ((__unused_webpack_module, exports) => { + + +/* -------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + * ------------------------------------------------------------------------------------------ */ +Object.defineProperty(exports, "__esModule", ({ value: true })); +let _ral; +function RAL() { + if (_ral === undefined) { + throw new Error(`No runtime abstraction layer installed`); + } + return _ral; +} +(function (RAL) { + function install(ral) { + if (ral === undefined) { + throw new Error(`No runtime abstraction layer provided`); + } + _ral = ral; + } + RAL.install = install; +})(RAL || (RAL = {})); +exports["default"] = RAL; + + +/***/ }), + +/***/ 59903: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ AM: () => (/* binding */ PacketGeneratedModule), +/* harmony export */ K2: () => (/* binding */ __name), +/* harmony export */ KX: () => (/* binding */ PieGeneratedModule), +/* harmony export */ Tm: () => (/* binding */ CommonValueConverter), +/* harmony export */ dg: () => (/* binding */ AbstractMermaidValueConverter), +/* harmony export */ e5: () => (/* binding */ InfoGeneratedModule), +/* harmony export */ mR: () => (/* binding */ AbstractMermaidTokenBuilder), +/* harmony export */ sr: () => (/* binding */ MermaidGeneratedSharedModule) +/* harmony export */ }); +/* unused harmony exports isCommon, Info, isInfo, Packet, isPacket, PacketBlock, isPacketBlock, Pie, isPie, PieSection, isPieSection, CommonTokenBuilder */ +/* harmony import */ var langium__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(13152); +var __defProp = Object.defineProperty; +var __name = (target, value) => __defProp(target, "name", { value, configurable: true }); + +// src/language/generated/ast.ts + +var Common = "Common"; +function isCommon(item) { + return reflection.isInstance(item, Common); +} +__name(isCommon, "isCommon"); +var Info = "Info"; +function isInfo(item) { + return reflection.isInstance(item, Info); +} +__name(isInfo, "isInfo"); +var Packet = "Packet"; +function isPacket(item) { + return reflection.isInstance(item, Packet); +} +__name(isPacket, "isPacket"); +var PacketBlock = "PacketBlock"; +function isPacketBlock(item) { + return reflection.isInstance(item, PacketBlock); +} +__name(isPacketBlock, "isPacketBlock"); +var Pie = "Pie"; +function isPie(item) { + return reflection.isInstance(item, Pie); +} +__name(isPie, "isPie"); +var PieSection = "PieSection"; +function isPieSection(item) { + return reflection.isInstance(item, PieSection); +} +__name(isPieSection, "isPieSection"); +var MermaidAstReflection = class extends langium__WEBPACK_IMPORTED_MODULE_0__/* .AbstractAstReflection */ .kD { + static { + __name(this, "MermaidAstReflection"); + } + getAllTypes() { + return ["Common", "Info", "Packet", "PacketBlock", "Pie", "PieSection"]; + } + computeIsSubtype(subtype, supertype) { + switch (subtype) { + default: { + return false; + } + } + } + getReferenceType(refInfo) { + const referenceId = `${refInfo.container.$type}:${refInfo.property}`; + switch (referenceId) { + default: { + throw new Error(`${referenceId} is not a valid reference id.`); + } + } + } + getTypeMetaData(type) { + switch (type) { + case "Common": { + return { + name: "Common", + properties: [ + { name: "accDescr" }, + { name: "accTitle" }, + { name: "title" } + ] + }; + } + case "Info": { + return { + name: "Info", + properties: [ + { name: "accDescr" }, + { name: "accTitle" }, + { name: "title" } + ] + }; + } + case "Packet": { + return { + name: "Packet", + properties: [ + { name: "accDescr" }, + { name: "accTitle" }, + { name: "blocks", defaultValue: [] }, + { name: "title" } + ] + }; + } + case "PacketBlock": { + return { + name: "PacketBlock", + properties: [ + { name: "end" }, + { name: "label" }, + { name: "start" } + ] + }; + } + case "Pie": { + return { + name: "Pie", + properties: [ + { name: "accDescr" }, + { name: "accTitle" }, + { name: "sections", defaultValue: [] }, + { name: "showData", defaultValue: false }, + { name: "title" } + ] + }; + } + case "PieSection": { + return { + name: "PieSection", + properties: [ + { name: "label" }, + { name: "value" } + ] + }; + } + default: { + return { + name: type, + properties: [] + }; + } + } + } +}; +var reflection = new MermaidAstReflection(); + +// src/language/generated/grammar.ts + +var loadedInfoGrammar; +var InfoGrammar = /* @__PURE__ */ __name(() => loadedInfoGrammar ?? (loadedInfoGrammar = (0,langium__WEBPACK_IMPORTED_MODULE_0__/* .loadGrammarFromJson */ .y0)('{"$type":"Grammar","isDeclared":true,"name":"Info","imports":[],"rules":[{"$type":"ParserRule","name":"Info","entry":true,"definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"info"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[],"cardinality":"*"},{"$type":"Group","elements":[{"$type":"Keyword","value":"showInfo"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[],"cardinality":"*"}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[],"cardinality":"?"}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"TitleAndAccessibilities","fragment":true,"definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"EOL","fragment":true,"dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false}],"definesHiddenTokens":false,"hiddenTokens":[],"interfaces":[{"$type":"Interface","name":"Common","attributes":[{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"types":[],"usedGrammars":[]}')), "InfoGrammar"); +var loadedPacketGrammar; +var PacketGrammar = /* @__PURE__ */ __name(() => loadedPacketGrammar ?? (loadedPacketGrammar = (0,langium__WEBPACK_IMPORTED_MODULE_0__/* .loadGrammarFromJson */ .y0)(`{"$type":"Grammar","isDeclared":true,"name":"Packet","imports":[],"rules":[{"$type":"ParserRule","name":"Packet","entry":true,"definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"packet-beta"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Assignment","feature":"blocks","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]},"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"+"},{"$type":"Assignment","feature":"blocks","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]},"cardinality":"+"}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"*"}]}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"PacketBlock","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"start","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"end","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"?"},{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","definition":{"$type":"RegexToken","regex":"/\\"[^\\"]*\\"|'[^']*'/"},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"TitleAndAccessibilities","fragment":true,"definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"EOL","fragment":true,"dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false}],"definesHiddenTokens":false,"hiddenTokens":[],"interfaces":[{"$type":"Interface","name":"Common","attributes":[{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"types":[],"usedGrammars":[]}`)), "PacketGrammar"); +var loadedPieGrammar; +var PieGrammar = /* @__PURE__ */ __name(() => loadedPieGrammar ?? (loadedPieGrammar = (0,langium__WEBPACK_IMPORTED_MODULE_0__/* .loadGrammarFromJson */ .y0)('{"$type":"Grammar","isDeclared":true,"name":"Pie","imports":[],"rules":[{"$type":"ParserRule","name":"Pie","entry":true,"definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"pie"},{"$type":"Assignment","feature":"showData","operator":"?=","terminal":{"$type":"Keyword","value":"showData"},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Assignment","feature":"sections","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]},"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"+"},{"$type":"Assignment","feature":"sections","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]},"cardinality":"+"}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"*"}]}]},"definesHiddenTokens":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"PieSection","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}]},"definesHiddenTokens":false,"entry":false,"fragment":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"PIE_SECTION_LABEL","definition":{"$type":"RegexToken","regex":"/\\"[^\\"]+\\"/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"PIE_SECTION_VALUE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/(0|[1-9][0-9]*)(\\\\.[0-9]+)?/"},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"TitleAndAccessibilities","fragment":true,"definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}],"cardinality":"+"},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"ParserRule","name":"EOL","fragment":true,"dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"definesHiddenTokens":false,"entry":false,"hiddenTokens":[],"parameters":[],"wildcard":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/"},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/"},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/"},"fragment":false}],"definesHiddenTokens":false,"hiddenTokens":[],"interfaces":[{"$type":"Interface","name":"Common","attributes":[{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"types":[],"usedGrammars":[]}')), "PieGrammar"); + +// src/language/generated/module.ts +var InfoLanguageMetaData = { + languageId: "info", + fileExtensions: [".mmd", ".mermaid"], + caseInsensitive: false +}; +var PacketLanguageMetaData = { + languageId: "packet", + fileExtensions: [".mmd", ".mermaid"], + caseInsensitive: false +}; +var PieLanguageMetaData = { + languageId: "pie", + fileExtensions: [".mmd", ".mermaid"], + caseInsensitive: false +}; +var MermaidGeneratedSharedModule = { + AstReflection: /* @__PURE__ */ __name(() => new MermaidAstReflection(), "AstReflection") +}; +var InfoGeneratedModule = { + Grammar: /* @__PURE__ */ __name(() => InfoGrammar(), "Grammar"), + LanguageMetaData: /* @__PURE__ */ __name(() => InfoLanguageMetaData, "LanguageMetaData"), + parser: {} +}; +var PacketGeneratedModule = { + Grammar: /* @__PURE__ */ __name(() => PacketGrammar(), "Grammar"), + LanguageMetaData: /* @__PURE__ */ __name(() => PacketLanguageMetaData, "LanguageMetaData"), + parser: {} +}; +var PieGeneratedModule = { + Grammar: /* @__PURE__ */ __name(() => PieGrammar(), "Grammar"), + LanguageMetaData: /* @__PURE__ */ __name(() => PieLanguageMetaData, "LanguageMetaData"), + parser: {} +}; + +// src/language/common/tokenBuilder.ts + +var AbstractMermaidTokenBuilder = class extends langium__WEBPACK_IMPORTED_MODULE_0__/* .DefaultTokenBuilder */ .QU { + static { + __name(this, "AbstractMermaidTokenBuilder"); + } + constructor(keywords) { + super(); + this.keywords = new Set(keywords); + } + buildKeywordTokens(rules, terminalTokens, options) { + const tokenTypes = super.buildKeywordTokens(rules, terminalTokens, options); + tokenTypes.forEach((tokenType) => { + if (this.keywords.has(tokenType.name) && tokenType.PATTERN !== void 0) { + tokenType.PATTERN = new RegExp(tokenType.PATTERN.toString() + "(?:(?=%%)|(?!\\S))"); + } + }); + return tokenTypes; + } +}; +var CommonTokenBuilder = class extends AbstractMermaidTokenBuilder { + static { + __name(this, "CommonTokenBuilder"); + } +}; + +// src/language/common/valueConverter.ts + + +// src/language/common/matcher.ts +var accessibilityDescrRegex = /accDescr(?:[\t ]*:([^\n\r]*)|\s*{([^}]*)})/; +var accessibilityTitleRegex = /accTitle[\t ]*:([^\n\r]*)/; +var titleRegex = /title([\t ][^\n\r]*|)/; + +// src/language/common/valueConverter.ts +var rulesRegexes = { + ACC_DESCR: accessibilityDescrRegex, + ACC_TITLE: accessibilityTitleRegex, + TITLE: titleRegex +}; +var AbstractMermaidValueConverter = class extends langium__WEBPACK_IMPORTED_MODULE_0__/* .DefaultValueConverter */ .dM { + static { + __name(this, "AbstractMermaidValueConverter"); + } + runConverter(rule, input, cstNode) { + let value = this.runCommonConverter(rule, input, cstNode); + if (value === void 0) { + value = this.runCustomConverter(rule, input, cstNode); + } + if (value === void 0) { + return super.runConverter(rule, input, cstNode); + } + return value; + } + runCommonConverter(rule, input, _cstNode) { + const regex = rulesRegexes[rule.name]; + if (regex === void 0) { + return void 0; + } + const match = regex.exec(input); + if (match === null) { + return void 0; + } + if (match[1] !== void 0) { + return match[1].trim().replace(/[\t ]{2,}/gm, " "); + } + if (match[2] !== void 0) { + return match[2].replace(/^\s*/gm, "").replace(/\s+$/gm, "").replace(/[\t ]{2,}/gm, " ").replace(/[\n\r]{2,}/gm, "\n"); + } + return void 0; + } +}; +var CommonValueConverter = class extends AbstractMermaidValueConverter { + static { + __name(this, "CommonValueConverter"); + } + runCustomConverter(_rule, _input, _cstNode) { + return void 0; + } +}; + + + + +/***/ }), + +/***/ 25874: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ $: () => (/* binding */ createPacketServices) +/* harmony export */ }); +/* unused harmony export PacketModule */ +/* harmony import */ var _chunk_DHJNZKBA_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(59903); +/* harmony import */ var langium__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(13152); + + +// src/language/packet/module.ts + + +// src/language/packet/tokenBuilder.ts +var PacketTokenBuilder = class extends _chunk_DHJNZKBA_mjs__WEBPACK_IMPORTED_MODULE_0__/* .AbstractMermaidTokenBuilder */ .mR { + static { + (0,_chunk_DHJNZKBA_mjs__WEBPACK_IMPORTED_MODULE_0__/* .__name */ .K2)(this, "PacketTokenBuilder"); + } + constructor() { + super(["packet-beta"]); + } +}; + +// src/language/packet/module.ts +var PacketModule = { + parser: { + TokenBuilder: /* @__PURE__ */ (0,_chunk_DHJNZKBA_mjs__WEBPACK_IMPORTED_MODULE_0__/* .__name */ .K2)(() => new PacketTokenBuilder(), "TokenBuilder"), + ValueConverter: /* @__PURE__ */ (0,_chunk_DHJNZKBA_mjs__WEBPACK_IMPORTED_MODULE_0__/* .__name */ .K2)(() => new _chunk_DHJNZKBA_mjs__WEBPACK_IMPORTED_MODULE_0__/* .CommonValueConverter */ .Tm(), "ValueConverter") + } +}; +function createPacketServices(context = langium__WEBPACK_IMPORTED_MODULE_1__/* .EmptyFileSystem */ .DD) { + const shared = (0,langium__WEBPACK_IMPORTED_MODULE_1__/* .inject */ .WQ)( + (0,langium__WEBPACK_IMPORTED_MODULE_1__/* .createDefaultSharedCoreModule */ .uM)(context), + _chunk_DHJNZKBA_mjs__WEBPACK_IMPORTED_MODULE_0__/* .MermaidGeneratedSharedModule */ .sr + ); + const Packet = (0,langium__WEBPACK_IMPORTED_MODULE_1__/* .inject */ .WQ)( + (0,langium__WEBPACK_IMPORTED_MODULE_1__/* .createDefaultCoreModule */ .tG)({ shared }), + _chunk_DHJNZKBA_mjs__WEBPACK_IMPORTED_MODULE_0__/* .PacketGeneratedModule */ .AM, + PacketModule + ); + shared.ServiceRegistry.register(Packet); + return { shared, Packet }; +} +(0,_chunk_DHJNZKBA_mjs__WEBPACK_IMPORTED_MODULE_0__/* .__name */ .K2)(createPacketServices, "createPacketServices"); + + + + +/***/ }), + +/***/ 22313: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ f: () => (/* binding */ createPieServices) +/* harmony export */ }); +/* unused harmony export PieModule */ +/* harmony import */ var _chunk_DHJNZKBA_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(59903); +/* harmony import */ var langium__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(13152); + + +// src/language/pie/module.ts + + +// src/language/pie/tokenBuilder.ts +var PieTokenBuilder = class extends _chunk_DHJNZKBA_mjs__WEBPACK_IMPORTED_MODULE_0__/* .AbstractMermaidTokenBuilder */ .mR { + static { + (0,_chunk_DHJNZKBA_mjs__WEBPACK_IMPORTED_MODULE_0__/* .__name */ .K2)(this, "PieTokenBuilder"); + } + constructor() { + super(["pie", "showData"]); + } +}; + +// src/language/pie/valueConverter.ts +var PieValueConverter = class extends _chunk_DHJNZKBA_mjs__WEBPACK_IMPORTED_MODULE_0__/* .AbstractMermaidValueConverter */ .dg { + static { + (0,_chunk_DHJNZKBA_mjs__WEBPACK_IMPORTED_MODULE_0__/* .__name */ .K2)(this, "PieValueConverter"); + } + runCustomConverter(rule, input, _cstNode) { + if (rule.name !== "PIE_SECTION_LABEL") { + return void 0; + } + return input.replace(/"/g, "").trim(); + } +}; + +// src/language/pie/module.ts +var PieModule = { + parser: { + TokenBuilder: /* @__PURE__ */ (0,_chunk_DHJNZKBA_mjs__WEBPACK_IMPORTED_MODULE_0__/* .__name */ .K2)(() => new PieTokenBuilder(), "TokenBuilder"), + ValueConverter: /* @__PURE__ */ (0,_chunk_DHJNZKBA_mjs__WEBPACK_IMPORTED_MODULE_0__/* .__name */ .K2)(() => new PieValueConverter(), "ValueConverter") + } +}; +function createPieServices(context = langium__WEBPACK_IMPORTED_MODULE_1__/* .EmptyFileSystem */ .DD) { + const shared = (0,langium__WEBPACK_IMPORTED_MODULE_1__/* .inject */ .WQ)( + (0,langium__WEBPACK_IMPORTED_MODULE_1__/* .createDefaultSharedCoreModule */ .uM)(context), + _chunk_DHJNZKBA_mjs__WEBPACK_IMPORTED_MODULE_0__/* .MermaidGeneratedSharedModule */ .sr + ); + const Pie = (0,langium__WEBPACK_IMPORTED_MODULE_1__/* .inject */ .WQ)( + (0,langium__WEBPACK_IMPORTED_MODULE_1__/* .createDefaultCoreModule */ .tG)({ shared }), + _chunk_DHJNZKBA_mjs__WEBPACK_IMPORTED_MODULE_0__/* .PieGeneratedModule */ .KX, + PieModule + ); + shared.ServiceRegistry.register(Pie); + return { shared, Pie }; +} +(0,_chunk_DHJNZKBA_mjs__WEBPACK_IMPORTED_MODULE_0__/* .__name */ .K2)(createPieServices, "createPieServices"); + + + + +/***/ }), + +/***/ 90827: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ v: () => (/* binding */ createInfoServices) +/* harmony export */ }); +/* unused harmony export InfoModule */ +/* harmony import */ var _chunk_DHJNZKBA_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(59903); +/* harmony import */ var langium__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(13152); + + +// src/language/info/module.ts + + +// src/language/info/tokenBuilder.ts +var InfoTokenBuilder = class extends _chunk_DHJNZKBA_mjs__WEBPACK_IMPORTED_MODULE_0__/* .AbstractMermaidTokenBuilder */ .mR { + static { + (0,_chunk_DHJNZKBA_mjs__WEBPACK_IMPORTED_MODULE_0__/* .__name */ .K2)(this, "InfoTokenBuilder"); + } + constructor() { + super(["info", "showInfo"]); + } +}; + +// src/language/info/module.ts +var InfoModule = { + parser: { + TokenBuilder: /* @__PURE__ */ (0,_chunk_DHJNZKBA_mjs__WEBPACK_IMPORTED_MODULE_0__/* .__name */ .K2)(() => new InfoTokenBuilder(), "TokenBuilder"), + ValueConverter: /* @__PURE__ */ (0,_chunk_DHJNZKBA_mjs__WEBPACK_IMPORTED_MODULE_0__/* .__name */ .K2)(() => new _chunk_DHJNZKBA_mjs__WEBPACK_IMPORTED_MODULE_0__/* .CommonValueConverter */ .Tm(), "ValueConverter") + } +}; +function createInfoServices(context = langium__WEBPACK_IMPORTED_MODULE_1__/* .EmptyFileSystem */ .DD) { + const shared = (0,langium__WEBPACK_IMPORTED_MODULE_1__/* .inject */ .WQ)( + (0,langium__WEBPACK_IMPORTED_MODULE_1__/* .createDefaultSharedCoreModule */ .uM)(context), + _chunk_DHJNZKBA_mjs__WEBPACK_IMPORTED_MODULE_0__/* .MermaidGeneratedSharedModule */ .sr + ); + const Info = (0,langium__WEBPACK_IMPORTED_MODULE_1__/* .inject */ .WQ)( + (0,langium__WEBPACK_IMPORTED_MODULE_1__/* .createDefaultCoreModule */ .tG)({ shared }), + _chunk_DHJNZKBA_mjs__WEBPACK_IMPORTED_MODULE_0__/* .InfoGeneratedModule */ .e5, + InfoModule + ); + shared.ServiceRegistry.register(Info); + return { shared, Info }; +} +(0,_chunk_DHJNZKBA_mjs__WEBPACK_IMPORTED_MODULE_0__/* .__name */ .K2)(createInfoServices, "createInfoServices"); + + + + +/***/ }), + +/***/ 78731: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ qg: () => (/* binding */ parse) +/* harmony export */ }); +/* unused harmony export MermaidParseError */ +/* harmony import */ var _chunks_mermaid_parser_core_chunk_RKFCU2KB_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(90827); +/* harmony import */ var _chunks_mermaid_parser_core_chunk_LJZ6S5TY_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(25874); +/* harmony import */ var _chunks_mermaid_parser_core_chunk_MD7KGQIB_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(22313); +/* harmony import */ var _chunks_mermaid_parser_core_chunk_DHJNZKBA_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(59903); + + + + + +// src/parse.ts +var parsers = {}; +var initializers = { + info: /* @__PURE__ */ (0,_chunks_mermaid_parser_core_chunk_DHJNZKBA_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(async () => { + const { createInfoServices: createInfoServices2 } = await __webpack_require__.e(/* import() */ 573).then(__webpack_require__.bind(__webpack_require__, 35573)); + const parser = createInfoServices2().Info.parser.LangiumParser; + parsers.info = parser; + }, "info"), + packet: /* @__PURE__ */ (0,_chunks_mermaid_parser_core_chunk_DHJNZKBA_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(async () => { + const { createPacketServices: createPacketServices2 } = await __webpack_require__.e(/* import() */ 992).then(__webpack_require__.bind(__webpack_require__, 39992)); + const parser = createPacketServices2().Packet.parser.LangiumParser; + parsers.packet = parser; + }, "packet"), + pie: /* @__PURE__ */ (0,_chunks_mermaid_parser_core_chunk_DHJNZKBA_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(async () => { + const { createPieServices: createPieServices2 } = await __webpack_require__.e(/* import() */ 942).then(__webpack_require__.bind(__webpack_require__, 78942)); + const parser = createPieServices2().Pie.parser.LangiumParser; + parsers.pie = parser; + }, "pie") +}; +async function parse(diagramType, text) { + const initializer = initializers[diagramType]; + if (!initializer) { + throw new Error(`Unknown diagram type: ${diagramType}`); + } + if (!parsers[diagramType]) { + await initializer(); + } + const parser = parsers[diagramType]; + const result = parser.parse(text); + if (result.lexerErrors.length > 0 || result.parserErrors.length > 0) { + throw new MermaidParseError(result); + } + return result.value; +} +(0,_chunks_mermaid_parser_core_chunk_DHJNZKBA_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(parse, "parse"); +var MermaidParseError = class extends Error { + constructor(result) { + const lexerErrors = result.lexerErrors.map((err) => err.message).join("\n"); + const parserErrors = result.parserErrors.map((err) => err.message).join("\n"); + super(`Parsing failed: ${lexerErrors} ${parserErrors}`); + this.result = result; + } + static { + (0,_chunks_mermaid_parser_core_chunk_DHJNZKBA_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(this, "MermaidParseError"); + } +}; + + + +/***/ }), + +/***/ 13152: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + kD: () => (/* reexport */ AbstractAstReflection), + QU: () => (/* reexport */ DefaultTokenBuilder), + dM: () => (/* reexport */ DefaultValueConverter), + DD: () => (/* reexport */ EmptyFileSystem), + tG: () => (/* reexport */ createDefaultCoreModule), + uM: () => (/* reexport */ createDefaultSharedCoreModule), + WQ: () => (/* reexport */ inject), + y0: () => (/* reexport */ loadGrammarFromJson) +}); + +// UNUSED EXPORTS: AbstractCstNode, AbstractLangiumParser, AbstractParserErrorMessageProvider, AbstractThreadedAsyncParser, AstUtils, BiMap, Cancellation, CompositeCstNodeImpl, ContextCache, CstNodeBuilder, CstUtils, DONE_RESULT, DatatypeSymbol, DefaultAstNodeDescriptionProvider, DefaultAstNodeLocator, DefaultAsyncParser, DefaultCommentProvider, DefaultConfigurationProvider, DefaultDocumentBuilder, DefaultDocumentValidator, DefaultHydrator, DefaultIndexManager, DefaultJsonSerializer, DefaultLangiumDocumentFactory, DefaultLangiumDocuments, DefaultLexer, DefaultLinker, DefaultNameProvider, DefaultReferenceDescriptionProvider, DefaultReferences, DefaultScopeComputation, DefaultScopeProvider, DefaultServiceRegistry, DefaultWorkspaceLock, DefaultWorkspaceManager, Deferred, Disposable, DisposableCache, DocumentCache, DocumentState, DocumentValidator, EMPTY_SCOPE, EMPTY_STREAM, Emitter, EmptyFileSystemProvider, ErrorWithLocation, Event, GrammarAST, GrammarUtils, JSDocDocumentationProvider, LangiumCompletionParser, LangiumParser, LangiumParserErrorMessageProvider, LeafCstNodeImpl, MapScope, Module, MultiMap, OperationCancelled, ParserWorker, Reduction, RegExpUtils, RootCstNodeImpl, SimpleCache, StreamImpl, StreamScope, TextDocument, TreeStreamImpl, URI, UriUtils, ValidationCategory, ValidationRegistry, ValueConverter, WorkspaceCache, __esModule, assertUnreachable, createCompletionParser, createGrammarConfig, createLangiumParser, delayNextTick, diagnosticData, eagerLoad, getDiagnosticRange, interruptAndCheck, isAstNode, isAstNodeDescription, isAstNodeWithComment, isCompositeCstNode, isIMultiModeLexerDefinition, isJSDoc, isLeafCstNode, isLinkingError, isNamed, isOperationCancelled, isReference, isRootCstNode, isTokenTypeArray, isTokenTypeDictionary, parseJSDoc, prepareLangiumParser, setInterruptionPeriod, startCancelableOperation, stream, toDiagnosticSeverity + +;// CONCATENATED MODULE: ./node_modules/langium/lib/syntax-tree.js +/****************************************************************************** + * Copyright 2021 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ +function syntax_tree_isAstNode(obj) { + return typeof obj === 'object' && obj !== null && typeof obj.$type === 'string'; +} +function syntax_tree_isReference(obj) { + return typeof obj === 'object' && obj !== null && typeof obj.$refText === 'string'; +} +function isAstNodeDescription(obj) { + return typeof obj === 'object' && obj !== null + && typeof obj.name === 'string' + && typeof obj.type === 'string' + && typeof obj.path === 'string'; +} +function isLinkingError(obj) { + return typeof obj === 'object' && obj !== null + && syntax_tree_isAstNode(obj.container) + && syntax_tree_isReference(obj.reference) + && typeof obj.message === 'string'; +} +/** + * An abstract implementation of the {@link AstReflection} interface. + * Serves to cache subtype computation results to improve performance throughout different parts of Langium. + */ +class AbstractAstReflection { + constructor() { + this.subtypes = {}; + this.allSubtypes = {}; + } + isInstance(node, type) { + return syntax_tree_isAstNode(node) && this.isSubtype(node.$type, type); + } + isSubtype(subtype, supertype) { + if (subtype === supertype) { + return true; + } + let nested = this.subtypes[subtype]; + if (!nested) { + nested = this.subtypes[subtype] = {}; + } + const existing = nested[supertype]; + if (existing !== undefined) { + return existing; + } + else { + const result = this.computeIsSubtype(subtype, supertype); + nested[supertype] = result; + return result; + } + } + getAllSubTypes(type) { + const existing = this.allSubtypes[type]; + if (existing) { + return existing; + } + else { + const allTypes = this.getAllTypes(); + const types = []; + for (const possibleSubType of allTypes) { + if (this.isSubtype(possibleSubType, type)) { + types.push(possibleSubType); + } + } + this.allSubtypes[type] = types; + return types; + } + } +} +function syntax_tree_isCompositeCstNode(node) { + return typeof node === 'object' && node !== null && Array.isArray(node.content); +} +function syntax_tree_isLeafCstNode(node) { + return typeof node === 'object' && node !== null && typeof node.tokenType === 'object'; +} +function isRootCstNode(node) { + return syntax_tree_isCompositeCstNode(node) && typeof node.fullText === 'string'; +} +//# sourceMappingURL=syntax-tree.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/utils/stream.js +/****************************************************************************** + * Copyright 2021 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ +/** + * The default implementation of `Stream` works with two input functions: + * - The first function creates the initial state of an iteration. + * - The second function gets the current state as argument and returns an `IteratorResult`. + */ +class StreamImpl { + constructor(startFn, nextFn) { + this.startFn = startFn; + this.nextFn = nextFn; + } + iterator() { + const iterator = { + state: this.startFn(), + next: () => this.nextFn(iterator.state), + [Symbol.iterator]: () => iterator + }; + return iterator; + } + [Symbol.iterator]() { + return this.iterator(); + } + isEmpty() { + const iterator = this.iterator(); + return Boolean(iterator.next().done); + } + count() { + const iterator = this.iterator(); + let count = 0; + let next = iterator.next(); + while (!next.done) { + count++; + next = iterator.next(); + } + return count; + } + toArray() { + const result = []; + const iterator = this.iterator(); + let next; + do { + next = iterator.next(); + if (next.value !== undefined) { + result.push(next.value); + } + } while (!next.done); + return result; + } + toSet() { + return new Set(this); + } + toMap(keyFn, valueFn) { + const entryStream = this.map(element => [ + keyFn ? keyFn(element) : element, + valueFn ? valueFn(element) : element + ]); + return new Map(entryStream); + } + toString() { + return this.join(); + } + concat(other) { + const iterator = other[Symbol.iterator](); + return new StreamImpl(() => ({ first: this.startFn(), firstDone: false }), state => { + let result; + if (!state.firstDone) { + do { + result = this.nextFn(state.first); + if (!result.done) { + return result; + } + } while (!result.done); + state.firstDone = true; + } + do { + result = iterator.next(); + if (!result.done) { + return result; + } + } while (!result.done); + return DONE_RESULT; + }); + } + join(separator = ',') { + const iterator = this.iterator(); + let value = ''; + let result; + let addSeparator = false; + do { + result = iterator.next(); + if (!result.done) { + if (addSeparator) { + value += separator; + } + value += stream_toString(result.value); + } + addSeparator = true; + } while (!result.done); + return value; + } + indexOf(searchElement, fromIndex = 0) { + const iterator = this.iterator(); + let index = 0; + let next = iterator.next(); + while (!next.done) { + if (index >= fromIndex && next.value === searchElement) { + return index; + } + next = iterator.next(); + index++; + } + return -1; + } + every(predicate) { + const iterator = this.iterator(); + let next = iterator.next(); + while (!next.done) { + if (!predicate(next.value)) { + return false; + } + next = iterator.next(); + } + return true; + } + some(predicate) { + const iterator = this.iterator(); + let next = iterator.next(); + while (!next.done) { + if (predicate(next.value)) { + return true; + } + next = iterator.next(); + } + return false; + } + forEach(callbackfn) { + const iterator = this.iterator(); + let index = 0; + let next = iterator.next(); + while (!next.done) { + callbackfn(next.value, index); + next = iterator.next(); + index++; + } + } + map(callbackfn) { + return new StreamImpl(this.startFn, (state) => { + const { done, value } = this.nextFn(state); + if (done) { + return DONE_RESULT; + } + else { + return { done: false, value: callbackfn(value) }; + } + }); + } + filter(predicate) { + return new StreamImpl(this.startFn, state => { + let result; + do { + result = this.nextFn(state); + if (!result.done && predicate(result.value)) { + return result; + } + } while (!result.done); + return DONE_RESULT; + }); + } + nonNullable() { + return this.filter(e => e !== undefined && e !== null); + } + reduce(callbackfn, initialValue) { + const iterator = this.iterator(); + let previousValue = initialValue; + let next = iterator.next(); + while (!next.done) { + if (previousValue === undefined) { + previousValue = next.value; + } + else { + previousValue = callbackfn(previousValue, next.value); + } + next = iterator.next(); + } + return previousValue; + } + reduceRight(callbackfn, initialValue) { + return this.recursiveReduce(this.iterator(), callbackfn, initialValue); + } + recursiveReduce(iterator, callbackfn, initialValue) { + const next = iterator.next(); + if (next.done) { + return initialValue; + } + const previousValue = this.recursiveReduce(iterator, callbackfn, initialValue); + if (previousValue === undefined) { + return next.value; + } + return callbackfn(previousValue, next.value); + } + find(predicate) { + const iterator = this.iterator(); + let next = iterator.next(); + while (!next.done) { + if (predicate(next.value)) { + return next.value; + } + next = iterator.next(); + } + return undefined; + } + findIndex(predicate) { + const iterator = this.iterator(); + let index = 0; + let next = iterator.next(); + while (!next.done) { + if (predicate(next.value)) { + return index; + } + next = iterator.next(); + index++; + } + return -1; + } + includes(searchElement) { + const iterator = this.iterator(); + let next = iterator.next(); + while (!next.done) { + if (next.value === searchElement) { + return true; + } + next = iterator.next(); + } + return false; + } + flatMap(callbackfn) { + return new StreamImpl(() => ({ this: this.startFn() }), (state) => { + do { + if (state.iterator) { + const next = state.iterator.next(); + if (next.done) { + state.iterator = undefined; + } + else { + return next; + } + } + const { done, value } = this.nextFn(state.this); + if (!done) { + const mapped = callbackfn(value); + if (isIterable(mapped)) { + state.iterator = mapped[Symbol.iterator](); + } + else { + return { done: false, value: mapped }; + } + } + } while (state.iterator); + return DONE_RESULT; + }); + } + flat(depth) { + if (depth === undefined) { + depth = 1; + } + if (depth <= 0) { + return this; + } + const stream = depth > 1 ? this.flat(depth - 1) : this; + return new StreamImpl(() => ({ this: stream.startFn() }), (state) => { + do { + if (state.iterator) { + const next = state.iterator.next(); + if (next.done) { + state.iterator = undefined; + } + else { + return next; + } + } + const { done, value } = stream.nextFn(state.this); + if (!done) { + if (isIterable(value)) { + state.iterator = value[Symbol.iterator](); + } + else { + return { done: false, value: value }; + } + } + } while (state.iterator); + return DONE_RESULT; + }); + } + head() { + const iterator = this.iterator(); + const result = iterator.next(); + if (result.done) { + return undefined; + } + return result.value; + } + tail(skipCount = 1) { + return new StreamImpl(() => { + const state = this.startFn(); + for (let i = 0; i < skipCount; i++) { + const next = this.nextFn(state); + if (next.done) { + return state; + } + } + return state; + }, this.nextFn); + } + limit(maxSize) { + return new StreamImpl(() => ({ size: 0, state: this.startFn() }), state => { + state.size++; + if (state.size > maxSize) { + return DONE_RESULT; + } + return this.nextFn(state.state); + }); + } + distinct(by) { + const set = new Set(); + return this.filter(e => { + const value = by ? by(e) : e; + if (set.has(value)) { + return false; + } + else { + set.add(value); + return true; + } + }); + } + exclude(other, key) { + const otherKeySet = new Set(); + for (const item of other) { + const value = key ? key(item) : item; + otherKeySet.add(value); + } + return this.filter(e => { + const ownKey = key ? key(e) : e; + return !otherKeySet.has(ownKey); + }); + } +} +function stream_toString(item) { + if (typeof item === 'string') { + return item; + } + if (typeof item === 'undefined') { + return 'undefined'; + } + // eslint-disable-next-line @typescript-eslint/no-explicit-any + if (typeof item.toString === 'function') { + // eslint-disable-next-line @typescript-eslint/no-explicit-any + return item.toString(); + } + return Object.prototype.toString.call(item); +} +function isIterable(obj) { + return !!obj && typeof obj[Symbol.iterator] === 'function'; +} +/** + * An empty stream of any type. + */ +// eslint-disable-next-line @typescript-eslint/no-explicit-any +const EMPTY_STREAM = new StreamImpl(() => undefined, () => DONE_RESULT); +/** + * Use this `IteratorResult` when implementing a `StreamImpl` to indicate that there are no more elements in the stream. + */ +const DONE_RESULT = Object.freeze({ done: true, value: undefined }); +/** + * Create a stream from one or more iterables or array-likes. + */ +function stream_stream(...collections) { + if (collections.length === 1) { + const collection = collections[0]; + if (collection instanceof StreamImpl) { + return collection; + } + if (isIterable(collection)) { + return new StreamImpl(() => collection[Symbol.iterator](), (iterator) => iterator.next()); + } + if (typeof collection.length === 'number') { + return new StreamImpl(() => ({ index: 0 }), (state) => { + if (state.index < collection.length) { + return { done: false, value: collection[state.index++] }; + } + else { + return DONE_RESULT; + } + }); + } + } + if (collections.length > 1) { + return new StreamImpl(() => ({ collIndex: 0, arrIndex: 0 }), (state) => { + do { + if (state.iterator) { + const next = state.iterator.next(); + if (!next.done) { + return next; + } + state.iterator = undefined; + } + if (state.array) { + if (state.arrIndex < state.array.length) { + return { done: false, value: state.array[state.arrIndex++] }; + } + state.array = undefined; + state.arrIndex = 0; + } + if (state.collIndex < collections.length) { + const collection = collections[state.collIndex++]; + if (isIterable(collection)) { + state.iterator = collection[Symbol.iterator](); + } + else if (collection && typeof collection.length === 'number') { + state.array = collection; + } + } + } while (state.iterator || state.array || state.collIndex < collections.length); + return DONE_RESULT; + }); + } + return EMPTY_STREAM; +} +/** + * The default implementation of `TreeStream` takes a root element and a function that computes the + * children of its argument. Whether the root node included in the stream is controlled with the + * `includeRoot` option, which defaults to `false`. + */ +class TreeStreamImpl extends StreamImpl { + constructor(root, children, options) { + super(() => ({ + iterators: (options === null || options === void 0 ? void 0 : options.includeRoot) ? [[root][Symbol.iterator]()] : [children(root)[Symbol.iterator]()], + pruned: false + }), state => { + if (state.pruned) { + state.iterators.pop(); + state.pruned = false; + } + while (state.iterators.length > 0) { + const iterator = state.iterators[state.iterators.length - 1]; + const next = iterator.next(); + if (next.done) { + state.iterators.pop(); + } + else { + state.iterators.push(children(next.value)[Symbol.iterator]()); + return next; + } + } + return DONE_RESULT; + }); + } + iterator() { + const iterator = { + state: this.startFn(), + next: () => this.nextFn(iterator.state), + prune: () => { + iterator.state.pruned = true; + }, + [Symbol.iterator]: () => iterator + }; + return iterator; + } +} +/** + * A set of utility functions that reduce a stream to a single value. + */ +var Reduction; +(function (Reduction) { + /** + * Compute the sum of a number stream. + */ + function sum(stream) { + return stream.reduce((a, b) => a + b, 0); + } + Reduction.sum = sum; + /** + * Compute the product of a number stream. + */ + function product(stream) { + return stream.reduce((a, b) => a * b, 0); + } + Reduction.product = product; + /** + * Compute the minimum of a number stream. Returns `undefined` if the stream is empty. + */ + function min(stream) { + return stream.reduce((a, b) => Math.min(a, b)); + } + Reduction.min = min; + /** + * Compute the maximum of a number stream. Returns `undefined` if the stream is empty. + */ + function max(stream) { + return stream.reduce((a, b) => Math.max(a, b)); + } + Reduction.max = max; +})(Reduction || (Reduction = {})); +//# sourceMappingURL=stream.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/utils/cst-utils.js +/****************************************************************************** + * Copyright 2021 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + + +/** + * Create a stream of all CST nodes that are directly and indirectly contained in the given root node, + * including the root node itself. + */ +function streamCst(node) { + return new TreeStreamImpl(node, element => { + if (syntax_tree_isCompositeCstNode(element)) { + return element.content; + } + else { + return []; + } + }, { includeRoot: true }); +} +/** + * Create a stream of all leaf nodes that are directly and indirectly contained in the given root node. + */ +function flattenCst(node) { + return streamCst(node).filter(isLeafCstNode); +} +/** + * Determines whether the specified cst node is a child of the specified parent node. + */ +function isChildNode(child, parent) { + while (child.container) { + child = child.container; + if (child === parent) { + return true; + } + } + return false; +} +function tokenToRange(token) { + // Chevrotain uses 1-based indices everywhere + // So we subtract 1 from every value to align with the LSP + return { + start: { + character: token.startColumn - 1, + line: token.startLine - 1 + }, + end: { + character: token.endColumn, + line: token.endLine - 1 + } + }; +} +function toDocumentSegment(node) { + if (!node) { + return undefined; + } + const { offset, end, range } = node; + return { + range, + offset, + end, + length: end - offset + }; +} +var RangeComparison; +(function (RangeComparison) { + RangeComparison[RangeComparison["Before"] = 0] = "Before"; + RangeComparison[RangeComparison["After"] = 1] = "After"; + RangeComparison[RangeComparison["OverlapFront"] = 2] = "OverlapFront"; + RangeComparison[RangeComparison["OverlapBack"] = 3] = "OverlapBack"; + RangeComparison[RangeComparison["Inside"] = 4] = "Inside"; +})(RangeComparison || (RangeComparison = {})); +function compareRange(range, to) { + if (range.end.line < to.start.line || (range.end.line === to.start.line && range.end.character < range.start.character)) { + return RangeComparison.Before; + } + else if (range.start.line > to.end.line || (range.start.line === to.end.line && range.start.character > to.end.character)) { + return RangeComparison.After; + } + const startInside = range.start.line > to.start.line || (range.start.line === to.start.line && range.start.character >= to.start.character); + const endInside = range.end.line < to.end.line || (range.end.line === to.end.line && range.end.character <= to.end.character); + if (startInside && endInside) { + return RangeComparison.Inside; + } + else if (startInside) { + return RangeComparison.OverlapBack; + } + else { + return RangeComparison.OverlapFront; + } +} +function inRange(range, to) { + const comparison = compareRange(range, to); + return comparison > RangeComparison.After; +} +// The \p{L} regex matches any unicode letter character, i.e. characters from non-english alphabets +// Together with \w it matches any kind of character which can commonly appear in IDs +const DefaultNameRegexp = /^[\w\p{L}]$/u; +/** + * Performs `findLeafNodeAtOffset` with a minor difference: When encountering a character that matches the `nameRegexp` argument, + * it will instead return the leaf node at the `offset - 1` position. + * + * For LSP services, users expect that the declaration of an element is available if the cursor is directly after the element. + */ +function findDeclarationNodeAtOffset(cstNode, offset, nameRegexp = DefaultNameRegexp) { + if (cstNode) { + if (offset > 0) { + const localOffset = offset - cstNode.offset; + const textAtOffset = cstNode.text.charAt(localOffset); + if (!nameRegexp.test(textAtOffset)) { + offset--; + } + } + return findLeafNodeAtOffset(cstNode, offset); + } + return undefined; +} +function findCommentNode(cstNode, commentNames) { + if (cstNode) { + const previous = getPreviousNode(cstNode, true); + if (previous && isCommentNode(previous, commentNames)) { + return previous; + } + if (isRootCstNode(cstNode)) { + // Go from the first non-hidden node through all nodes in reverse order + // We do this to find the comment node which directly precedes the root node + const endIndex = cstNode.content.findIndex(e => !e.hidden); + for (let i = endIndex - 1; i >= 0; i--) { + const child = cstNode.content[i]; + if (isCommentNode(child, commentNames)) { + return child; + } + } + } + } + return undefined; +} +function isCommentNode(cstNode, commentNames) { + return syntax_tree_isLeafCstNode(cstNode) && commentNames.includes(cstNode.tokenType.name); +} +/** + * Finds the leaf CST node at the specified 0-based string offset. + * Note that the given offset will be within the range of the returned leaf node. + * + * If the offset does not point to a CST node (but just white space), this method will return `undefined`. + * + * @param node The CST node to search through. + * @param offset The specified offset. + * @returns The CST node at the specified offset. + */ +function findLeafNodeAtOffset(node, offset) { + if (isLeafCstNode(node)) { + return node; + } + else if (isCompositeCstNode(node)) { + const searchResult = binarySearch(node, offset, false); + if (searchResult) { + return findLeafNodeAtOffset(searchResult, offset); + } + } + return undefined; +} +/** + * Finds the leaf CST node at the specified 0-based string offset. + * If no CST node exists at the specified position, it will return the leaf node before it. + * + * If there is no leaf node before the specified offset, this method will return `undefined`. + * + * @param node The CST node to search through. + * @param offset The specified offset. + * @returns The CST node closest to the specified offset. + */ +function findLeafNodeBeforeOffset(node, offset) { + if (isLeafCstNode(node)) { + return node; + } + else if (isCompositeCstNode(node)) { + const searchResult = binarySearch(node, offset, true); + if (searchResult) { + return findLeafNodeBeforeOffset(searchResult, offset); + } + } + return undefined; +} +function binarySearch(node, offset, closest) { + let left = 0; + let right = node.content.length - 1; + let closestNode = undefined; + while (left <= right) { + const middle = Math.floor((left + right) / 2); + const middleNode = node.content[middle]; + if (middleNode.offset <= offset && middleNode.end > offset) { + // Found an exact match + return middleNode; + } + if (middleNode.end <= offset) { + // Update the closest node (less than offset) and move to the right half + closestNode = closest ? middleNode : undefined; + left = middle + 1; + } + else { + // Move to the left half + right = middle - 1; + } + } + return closestNode; +} +function getPreviousNode(node, hidden = true) { + while (node.container) { + const parent = node.container; + let index = parent.content.indexOf(node); + while (index > 0) { + index--; + const previous = parent.content[index]; + if (hidden || !previous.hidden) { + return previous; + } + } + node = parent; + } + return undefined; +} +function getNextNode(node, hidden = true) { + while (node.container) { + const parent = node.container; + let index = parent.content.indexOf(node); + const last = parent.content.length - 1; + while (index < last) { + index++; + const next = parent.content[index]; + if (hidden || !next.hidden) { + return next; + } + } + node = parent; + } + return undefined; +} +function getStartlineNode(node) { + if (node.range.start.character === 0) { + return node; + } + const line = node.range.start.line; + let last = node; + let index; + while (node.container) { + const parent = node.container; + const selfIndex = index !== null && index !== void 0 ? index : parent.content.indexOf(node); + if (selfIndex === 0) { + node = parent; + index = undefined; + } + else { + index = selfIndex - 1; + node = parent.content[index]; + } + if (node.range.start.line !== line) { + break; + } + last = node; + } + return last; +} +function getInteriorNodes(start, end) { + const commonParent = getCommonParent(start, end); + if (!commonParent) { + return []; + } + return commonParent.parent.content.slice(commonParent.a + 1, commonParent.b); +} +function getCommonParent(a, b) { + const aParents = getParentChain(a); + const bParents = getParentChain(b); + let current; + for (let i = 0; i < aParents.length && i < bParents.length; i++) { + const aParent = aParents[i]; + const bParent = bParents[i]; + if (aParent.parent === bParent.parent) { + current = { + parent: aParent.parent, + a: aParent.index, + b: bParent.index + }; + } + else { + break; + } + } + return current; +} +function getParentChain(node) { + const chain = []; + while (node.container) { + const parent = node.container; + const index = parent.content.indexOf(node); + chain.push({ + parent, + index + }); + node = parent; + } + return chain.reverse(); +} +//# sourceMappingURL=cst-utils.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/utils/errors.js +/****************************************************************************** + * Copyright 2021 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ +class ErrorWithLocation extends Error { + constructor(node, message) { + super(node ? `${message} at ${node.range.start.line}:${node.range.start.character}` : message); + } +} +function assertUnreachable(_) { + throw new Error('Error! The input value was not handled.'); +} +//# sourceMappingURL=errors.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/languages/generated/ast.js +/****************************************************************************** + * This file was generated by langium-cli 3.0.0. + * DO NOT EDIT MANUALLY! + ******************************************************************************/ + +const LangiumGrammarTerminals = { + ID: /\^?[_a-zA-Z][\w_]*/, + STRING: /"(\\.|[^"\\])*"|'(\\.|[^'\\])*'/, + NUMBER: /NaN|-?((\d*\.\d+|\d+)([Ee][+-]?\d+)?|Infinity)/, + RegexLiteral: /\/(?![*+?])(?:[^\r\n\[/\\]|\\.|\[(?:[^\r\n\]\\]|\\.)*\])+\/[a-z]*/, + WS: /\s+/, + ML_COMMENT: /\/\*[\s\S]*?\*\//, + SL_COMMENT: /\/\/[^\n\r]*/, +}; +const AbstractRule = 'AbstractRule'; +function isAbstractRule(item) { + return reflection.isInstance(item, AbstractRule); +} +const AbstractType = 'AbstractType'; +function isAbstractType(item) { + return reflection.isInstance(item, AbstractType); +} +const Condition = 'Condition'; +function isCondition(item) { + return reflection.isInstance(item, Condition); +} +function isFeatureName(item) { + return isPrimitiveType(item) || item === 'current' || item === 'entry' || item === 'extends' || item === 'false' || item === 'fragment' || item === 'grammar' || item === 'hidden' || item === 'import' || item === 'interface' || item === 'returns' || item === 'terminal' || item === 'true' || item === 'type' || item === 'infer' || item === 'infers' || item === 'with' || (typeof item === 'string' && (/\^?[_a-zA-Z][\w_]*/.test(item))); +} +function isPrimitiveType(item) { + return item === 'string' || item === 'number' || item === 'boolean' || item === 'Date' || item === 'bigint'; +} +const TypeDefinition = 'TypeDefinition'; +function isTypeDefinition(item) { + return reflection.isInstance(item, TypeDefinition); +} +const ValueLiteral = 'ValueLiteral'; +function isValueLiteral(item) { + return reflection.isInstance(item, ValueLiteral); +} +const AbstractElement = 'AbstractElement'; +function isAbstractElement(item) { + return reflection.isInstance(item, AbstractElement); +} +const ArrayLiteral = 'ArrayLiteral'; +function isArrayLiteral(item) { + return reflection.isInstance(item, ArrayLiteral); +} +const ArrayType = 'ArrayType'; +function isArrayType(item) { + return reflection.isInstance(item, ArrayType); +} +const BooleanLiteral = 'BooleanLiteral'; +function isBooleanLiteral(item) { + return reflection.isInstance(item, BooleanLiteral); +} +const Conjunction = 'Conjunction'; +function isConjunction(item) { + return reflection.isInstance(item, Conjunction); +} +const Disjunction = 'Disjunction'; +function isDisjunction(item) { + return reflection.isInstance(item, Disjunction); +} +const Grammar = 'Grammar'; +function isGrammar(item) { + return reflection.isInstance(item, Grammar); +} +const GrammarImport = 'GrammarImport'; +function isGrammarImport(item) { + return reflection.isInstance(item, GrammarImport); +} +const InferredType = 'InferredType'; +function isInferredType(item) { + return reflection.isInstance(item, InferredType); +} +const Interface = 'Interface'; +function isInterface(item) { + return reflection.isInstance(item, Interface); +} +const NamedArgument = 'NamedArgument'; +function isNamedArgument(item) { + return reflection.isInstance(item, NamedArgument); +} +const Negation = 'Negation'; +function isNegation(item) { + return reflection.isInstance(item, Negation); +} +const NumberLiteral = 'NumberLiteral'; +function isNumberLiteral(item) { + return reflection.isInstance(item, NumberLiteral); +} +const Parameter = 'Parameter'; +function isParameter(item) { + return reflection.isInstance(item, Parameter); +} +const ParameterReference = 'ParameterReference'; +function isParameterReference(item) { + return reflection.isInstance(item, ParameterReference); +} +const ParserRule = 'ParserRule'; +function isParserRule(item) { + return reflection.isInstance(item, ParserRule); +} +const ReferenceType = 'ReferenceType'; +function isReferenceType(item) { + return reflection.isInstance(item, ReferenceType); +} +const ReturnType = 'ReturnType'; +function isReturnType(item) { + return reflection.isInstance(item, ReturnType); +} +const SimpleType = 'SimpleType'; +function isSimpleType(item) { + return reflection.isInstance(item, SimpleType); +} +const StringLiteral = 'StringLiteral'; +function isStringLiteral(item) { + return reflection.isInstance(item, StringLiteral); +} +const TerminalRule = 'TerminalRule'; +function isTerminalRule(item) { + return reflection.isInstance(item, TerminalRule); +} +const Type = 'Type'; +function isType(item) { + return reflection.isInstance(item, Type); +} +const TypeAttribute = 'TypeAttribute'; +function isTypeAttribute(item) { + return reflection.isInstance(item, TypeAttribute); +} +const UnionType = 'UnionType'; +function isUnionType(item) { + return reflection.isInstance(item, UnionType); +} +const Action = 'Action'; +function isAction(item) { + return reflection.isInstance(item, Action); +} +const Alternatives = 'Alternatives'; +function isAlternatives(item) { + return reflection.isInstance(item, Alternatives); +} +const Assignment = 'Assignment'; +function isAssignment(item) { + return reflection.isInstance(item, Assignment); +} +const CharacterRange = 'CharacterRange'; +function isCharacterRange(item) { + return reflection.isInstance(item, CharacterRange); +} +const CrossReference = 'CrossReference'; +function isCrossReference(item) { + return reflection.isInstance(item, CrossReference); +} +const EndOfFile = 'EndOfFile'; +function isEndOfFile(item) { + return reflection.isInstance(item, EndOfFile); +} +const Group = 'Group'; +function isGroup(item) { + return reflection.isInstance(item, Group); +} +const Keyword = 'Keyword'; +function isKeyword(item) { + return reflection.isInstance(item, Keyword); +} +const NegatedToken = 'NegatedToken'; +function isNegatedToken(item) { + return reflection.isInstance(item, NegatedToken); +} +const RegexToken = 'RegexToken'; +function isRegexToken(item) { + return reflection.isInstance(item, RegexToken); +} +const RuleCall = 'RuleCall'; +function isRuleCall(item) { + return reflection.isInstance(item, RuleCall); +} +const TerminalAlternatives = 'TerminalAlternatives'; +function isTerminalAlternatives(item) { + return reflection.isInstance(item, TerminalAlternatives); +} +const TerminalGroup = 'TerminalGroup'; +function isTerminalGroup(item) { + return reflection.isInstance(item, TerminalGroup); +} +const TerminalRuleCall = 'TerminalRuleCall'; +function isTerminalRuleCall(item) { + return reflection.isInstance(item, TerminalRuleCall); +} +const UnorderedGroup = 'UnorderedGroup'; +function isUnorderedGroup(item) { + return reflection.isInstance(item, UnorderedGroup); +} +const UntilToken = 'UntilToken'; +function isUntilToken(item) { + return reflection.isInstance(item, UntilToken); +} +const Wildcard = 'Wildcard'; +function isWildcard(item) { + return reflection.isInstance(item, Wildcard); +} +class LangiumGrammarAstReflection extends AbstractAstReflection { + getAllTypes() { + return ['AbstractElement', 'AbstractRule', 'AbstractType', 'Action', 'Alternatives', 'ArrayLiteral', 'ArrayType', 'Assignment', 'BooleanLiteral', 'CharacterRange', 'Condition', 'Conjunction', 'CrossReference', 'Disjunction', 'EndOfFile', 'Grammar', 'GrammarImport', 'Group', 'InferredType', 'Interface', 'Keyword', 'NamedArgument', 'NegatedToken', 'Negation', 'NumberLiteral', 'Parameter', 'ParameterReference', 'ParserRule', 'ReferenceType', 'RegexToken', 'ReturnType', 'RuleCall', 'SimpleType', 'StringLiteral', 'TerminalAlternatives', 'TerminalGroup', 'TerminalRule', 'TerminalRuleCall', 'Type', 'TypeAttribute', 'TypeDefinition', 'UnionType', 'UnorderedGroup', 'UntilToken', 'ValueLiteral', 'Wildcard']; + } + computeIsSubtype(subtype, supertype) { + switch (subtype) { + case Action: + case Alternatives: + case Assignment: + case CharacterRange: + case CrossReference: + case EndOfFile: + case Group: + case Keyword: + case NegatedToken: + case RegexToken: + case RuleCall: + case TerminalAlternatives: + case TerminalGroup: + case TerminalRuleCall: + case UnorderedGroup: + case UntilToken: + case Wildcard: { + return this.isSubtype(AbstractElement, supertype); + } + case ArrayLiteral: + case NumberLiteral: + case StringLiteral: { + return this.isSubtype(ValueLiteral, supertype); + } + case ArrayType: + case ReferenceType: + case SimpleType: + case UnionType: { + return this.isSubtype(TypeDefinition, supertype); + } + case BooleanLiteral: { + return this.isSubtype(Condition, supertype) || this.isSubtype(ValueLiteral, supertype); + } + case Conjunction: + case Disjunction: + case Negation: + case ParameterReference: { + return this.isSubtype(Condition, supertype); + } + case InferredType: + case Interface: + case Type: { + return this.isSubtype(AbstractType, supertype); + } + case ParserRule: { + return this.isSubtype(AbstractRule, supertype) || this.isSubtype(AbstractType, supertype); + } + case TerminalRule: { + return this.isSubtype(AbstractRule, supertype); + } + default: { + return false; + } + } + } + getReferenceType(refInfo) { + const referenceId = `${refInfo.container.$type}:${refInfo.property}`; + switch (referenceId) { + case 'Action:type': + case 'CrossReference:type': + case 'Interface:superTypes': + case 'ParserRule:returnType': + case 'SimpleType:typeRef': { + return AbstractType; + } + case 'Grammar:hiddenTokens': + case 'ParserRule:hiddenTokens': + case 'RuleCall:rule': { + return AbstractRule; + } + case 'Grammar:usedGrammars': { + return Grammar; + } + case 'NamedArgument:parameter': + case 'ParameterReference:parameter': { + return Parameter; + } + case 'TerminalRuleCall:rule': { + return TerminalRule; + } + default: { + throw new Error(`${referenceId} is not a valid reference id.`); + } + } + } + getTypeMetaData(type) { + switch (type) { + case 'AbstractElement': { + return { + name: 'AbstractElement', + properties: [ + { name: 'cardinality' }, + { name: 'lookahead' } + ] + }; + } + case 'ArrayLiteral': { + return { + name: 'ArrayLiteral', + properties: [ + { name: 'elements', defaultValue: [] } + ] + }; + } + case 'ArrayType': { + return { + name: 'ArrayType', + properties: [ + { name: 'elementType' } + ] + }; + } + case 'BooleanLiteral': { + return { + name: 'BooleanLiteral', + properties: [ + { name: 'true', defaultValue: false } + ] + }; + } + case 'Conjunction': { + return { + name: 'Conjunction', + properties: [ + { name: 'left' }, + { name: 'right' } + ] + }; + } + case 'Disjunction': { + return { + name: 'Disjunction', + properties: [ + { name: 'left' }, + { name: 'right' } + ] + }; + } + case 'Grammar': { + return { + name: 'Grammar', + properties: [ + { name: 'definesHiddenTokens', defaultValue: false }, + { name: 'hiddenTokens', defaultValue: [] }, + { name: 'imports', defaultValue: [] }, + { name: 'interfaces', defaultValue: [] }, + { name: 'isDeclared', defaultValue: false }, + { name: 'name' }, + { name: 'rules', defaultValue: [] }, + { name: 'types', defaultValue: [] }, + { name: 'usedGrammars', defaultValue: [] } + ] + }; + } + case 'GrammarImport': { + return { + name: 'GrammarImport', + properties: [ + { name: 'path' } + ] + }; + } + case 'InferredType': { + return { + name: 'InferredType', + properties: [ + { name: 'name' } + ] + }; + } + case 'Interface': { + return { + name: 'Interface', + properties: [ + { name: 'attributes', defaultValue: [] }, + { name: 'name' }, + { name: 'superTypes', defaultValue: [] } + ] + }; + } + case 'NamedArgument': { + return { + name: 'NamedArgument', + properties: [ + { name: 'calledByName', defaultValue: false }, + { name: 'parameter' }, + { name: 'value' } + ] + }; + } + case 'Negation': { + return { + name: 'Negation', + properties: [ + { name: 'value' } + ] + }; + } + case 'NumberLiteral': { + return { + name: 'NumberLiteral', + properties: [ + { name: 'value' } + ] + }; + } + case 'Parameter': { + return { + name: 'Parameter', + properties: [ + { name: 'name' } + ] + }; + } + case 'ParameterReference': { + return { + name: 'ParameterReference', + properties: [ + { name: 'parameter' } + ] + }; + } + case 'ParserRule': { + return { + name: 'ParserRule', + properties: [ + { name: 'dataType' }, + { name: 'definesHiddenTokens', defaultValue: false }, + { name: 'definition' }, + { name: 'entry', defaultValue: false }, + { name: 'fragment', defaultValue: false }, + { name: 'hiddenTokens', defaultValue: [] }, + { name: 'inferredType' }, + { name: 'name' }, + { name: 'parameters', defaultValue: [] }, + { name: 'returnType' }, + { name: 'wildcard', defaultValue: false } + ] + }; + } + case 'ReferenceType': { + return { + name: 'ReferenceType', + properties: [ + { name: 'referenceType' } + ] + }; + } + case 'ReturnType': { + return { + name: 'ReturnType', + properties: [ + { name: 'name' } + ] + }; + } + case 'SimpleType': { + return { + name: 'SimpleType', + properties: [ + { name: 'primitiveType' }, + { name: 'stringType' }, + { name: 'typeRef' } + ] + }; + } + case 'StringLiteral': { + return { + name: 'StringLiteral', + properties: [ + { name: 'value' } + ] + }; + } + case 'TerminalRule': { + return { + name: 'TerminalRule', + properties: [ + { name: 'definition' }, + { name: 'fragment', defaultValue: false }, + { name: 'hidden', defaultValue: false }, + { name: 'name' }, + { name: 'type' } + ] + }; + } + case 'Type': { + return { + name: 'Type', + properties: [ + { name: 'name' }, + { name: 'type' } + ] + }; + } + case 'TypeAttribute': { + return { + name: 'TypeAttribute', + properties: [ + { name: 'defaultValue' }, + { name: 'isOptional', defaultValue: false }, + { name: 'name' }, + { name: 'type' } + ] + }; + } + case 'UnionType': { + return { + name: 'UnionType', + properties: [ + { name: 'types', defaultValue: [] } + ] + }; + } + case 'Action': { + return { + name: 'Action', + properties: [ + { name: 'cardinality' }, + { name: 'feature' }, + { name: 'inferredType' }, + { name: 'lookahead' }, + { name: 'operator' }, + { name: 'type' } + ] + }; + } + case 'Alternatives': { + return { + name: 'Alternatives', + properties: [ + { name: 'cardinality' }, + { name: 'elements', defaultValue: [] }, + { name: 'lookahead' } + ] + }; + } + case 'Assignment': { + return { + name: 'Assignment', + properties: [ + { name: 'cardinality' }, + { name: 'feature' }, + { name: 'lookahead' }, + { name: 'operator' }, + { name: 'terminal' } + ] + }; + } + case 'CharacterRange': { + return { + name: 'CharacterRange', + properties: [ + { name: 'cardinality' }, + { name: 'left' }, + { name: 'lookahead' }, + { name: 'right' } + ] + }; + } + case 'CrossReference': { + return { + name: 'CrossReference', + properties: [ + { name: 'cardinality' }, + { name: 'deprecatedSyntax', defaultValue: false }, + { name: 'lookahead' }, + { name: 'terminal' }, + { name: 'type' } + ] + }; + } + case 'EndOfFile': { + return { + name: 'EndOfFile', + properties: [ + { name: 'cardinality' }, + { name: 'lookahead' } + ] + }; + } + case 'Group': { + return { + name: 'Group', + properties: [ + { name: 'cardinality' }, + { name: 'elements', defaultValue: [] }, + { name: 'guardCondition' }, + { name: 'lookahead' } + ] + }; + } + case 'Keyword': { + return { + name: 'Keyword', + properties: [ + { name: 'cardinality' }, + { name: 'lookahead' }, + { name: 'value' } + ] + }; + } + case 'NegatedToken': { + return { + name: 'NegatedToken', + properties: [ + { name: 'cardinality' }, + { name: 'lookahead' }, + { name: 'terminal' } + ] + }; + } + case 'RegexToken': { + return { + name: 'RegexToken', + properties: [ + { name: 'cardinality' }, + { name: 'lookahead' }, + { name: 'regex' } + ] + }; + } + case 'RuleCall': { + return { + name: 'RuleCall', + properties: [ + { name: 'arguments', defaultValue: [] }, + { name: 'cardinality' }, + { name: 'lookahead' }, + { name: 'rule' } + ] + }; + } + case 'TerminalAlternatives': { + return { + name: 'TerminalAlternatives', + properties: [ + { name: 'cardinality' }, + { name: 'elements', defaultValue: [] }, + { name: 'lookahead' } + ] + }; + } + case 'TerminalGroup': { + return { + name: 'TerminalGroup', + properties: [ + { name: 'cardinality' }, + { name: 'elements', defaultValue: [] }, + { name: 'lookahead' } + ] + }; + } + case 'TerminalRuleCall': { + return { + name: 'TerminalRuleCall', + properties: [ + { name: 'cardinality' }, + { name: 'lookahead' }, + { name: 'rule' } + ] + }; + } + case 'UnorderedGroup': { + return { + name: 'UnorderedGroup', + properties: [ + { name: 'cardinality' }, + { name: 'elements', defaultValue: [] }, + { name: 'lookahead' } + ] + }; + } + case 'UntilToken': { + return { + name: 'UntilToken', + properties: [ + { name: 'cardinality' }, + { name: 'lookahead' }, + { name: 'terminal' } + ] + }; + } + case 'Wildcard': { + return { + name: 'Wildcard', + properties: [ + { name: 'cardinality' }, + { name: 'lookahead' } + ] + }; + } + default: { + return { + name: type, + properties: [] + }; + } + } + } +} +const reflection = new LangiumGrammarAstReflection(); +//# sourceMappingURL=ast.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/utils/ast-utils.js +/****************************************************************************** + * Copyright 2021 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + + + +/** + * Link the `$container` and other related properties of every AST node that is directly contained + * in the given `node`. + */ +function linkContentToContainer(node) { + for (const [name, value] of Object.entries(node)) { + if (!name.startsWith('$')) { + if (Array.isArray(value)) { + value.forEach((item, index) => { + if (syntax_tree_isAstNode(item)) { + item.$container = node; + item.$containerProperty = name; + item.$containerIndex = index; + } + }); + } + else if (syntax_tree_isAstNode(value)) { + value.$container = node; + value.$containerProperty = name; + } + } + } +} +/** + * Walk along the hierarchy of containers from the given AST node to the root and return the first + * node that matches the type predicate. If the start node itself matches, it is returned. + * If no container matches, `undefined` is returned. + */ +function getContainerOfType(node, typePredicate) { + let item = node; + while (item) { + if (typePredicate(item)) { + return item; + } + item = item.$container; + } + return undefined; +} +/** + * Walk along the hierarchy of containers from the given AST node to the root and check for existence + * of a container that matches the given predicate. The start node is included in the checks. + */ +function hasContainerOfType(node, predicate) { + let item = node; + while (item) { + if (predicate(item)) { + return true; + } + item = item.$container; + } + return false; +} +/** + * Retrieve the document in which the given AST node is contained. A reference to the document is + * usually held by the root node of the AST. + * + * @throws an error if the node is not contained in a document. + */ +function getDocument(node) { + const rootNode = findRootNode(node); + const result = rootNode.$document; + if (!result) { + throw new Error('AST node has no document.'); + } + return result; +} +/** + * Returns the root node of the given AST node by following the `$container` references. + */ +function findRootNode(node) { + while (node.$container) { + node = node.$container; + } + return node; +} +/** + * Create a stream of all AST nodes that are directly contained in the given node. This includes + * single-valued as well as multi-valued (array) properties. + */ +function streamContents(node, options) { + if (!node) { + throw new Error('Node must be an AstNode.'); + } + const range = options === null || options === void 0 ? void 0 : options.range; + return new StreamImpl(() => ({ + keys: Object.keys(node), + keyIndex: 0, + arrayIndex: 0 + }), state => { + while (state.keyIndex < state.keys.length) { + const property = state.keys[state.keyIndex]; + if (!property.startsWith('$')) { + const value = node[property]; + if (syntax_tree_isAstNode(value)) { + state.keyIndex++; + if (isAstNodeInRange(value, range)) { + return { done: false, value }; + } + } + else if (Array.isArray(value)) { + while (state.arrayIndex < value.length) { + const index = state.arrayIndex++; + const element = value[index]; + if (syntax_tree_isAstNode(element) && isAstNodeInRange(element, range)) { + return { done: false, value: element }; + } + } + state.arrayIndex = 0; + } + } + state.keyIndex++; + } + return DONE_RESULT; + }); +} +/** + * Create a stream of all AST nodes that are directly and indirectly contained in the given root node. + * This does not include the root node itself. + */ +function ast_utils_streamAllContents(root, options) { + if (!root) { + throw new Error('Root node must be an AstNode.'); + } + return new TreeStreamImpl(root, node => streamContents(node, options)); +} +/** + * Create a stream of all AST nodes that are directly and indirectly contained in the given root node, + * including the root node itself. + */ +function streamAst(root, options) { + if (!root) { + throw new Error('Root node must be an AstNode.'); + } + else if ((options === null || options === void 0 ? void 0 : options.range) && !isAstNodeInRange(root, options.range)) { + // Return an empty stream if the root node isn't in range + return new TreeStreamImpl(root, () => []); + } + return new TreeStreamImpl(root, node => streamContents(node, options), { includeRoot: true }); +} +function isAstNodeInRange(astNode, range) { + var _a; + if (!range) { + return true; + } + const nodeRange = (_a = astNode.$cstNode) === null || _a === void 0 ? void 0 : _a.range; + if (!nodeRange) { + return false; + } + return inRange(nodeRange, range); +} +/** + * Create a stream of all cross-references that are held by the given AST node. This includes + * single-valued as well as multi-valued (array) properties. + */ +function streamReferences(node) { + return new StreamImpl(() => ({ + keys: Object.keys(node), + keyIndex: 0, + arrayIndex: 0 + }), state => { + while (state.keyIndex < state.keys.length) { + const property = state.keys[state.keyIndex]; + if (!property.startsWith('$')) { + const value = node[property]; + if (syntax_tree_isReference(value)) { + state.keyIndex++; + return { done: false, value: { reference: value, container: node, property } }; + } + else if (Array.isArray(value)) { + while (state.arrayIndex < value.length) { + const index = state.arrayIndex++; + const element = value[index]; + if (syntax_tree_isReference(element)) { + return { done: false, value: { reference: element, container: node, property, index } }; + } + } + state.arrayIndex = 0; + } + } + state.keyIndex++; + } + return DONE_RESULT; + }); +} +/** + * Returns a Stream of references to the target node from the AstNode tree + * + * @param targetNode AstNode we are looking for + * @param lookup AstNode where we search for references. If not provided, the root node of the document is used as the default value + */ +function findLocalReferences(targetNode, lookup = getDocument(targetNode).parseResult.value) { + const refs = []; + streamAst(lookup).forEach(node => { + streamReferences(node).forEach(refInfo => { + if (refInfo.reference.ref === targetNode) { + refs.push(refInfo.reference); + } + }); + }); + return stream(refs); +} +/** + * Assigns all mandatory AST properties to the specified node. + * + * @param reflection Reflection object used to gather mandatory properties for the node. + * @param node Specified node is modified in place and properties are directly assigned. + */ +function assignMandatoryProperties(reflection, node) { + const typeMetaData = reflection.getTypeMetaData(node.$type); + const genericNode = node; + for (const property of typeMetaData.properties) { + // Only set the value if the property is not already set and if it has a default value + if (property.defaultValue !== undefined && genericNode[property.name] === undefined) { + genericNode[property.name] = copyDefaultValue(property.defaultValue); + } + } +} +function copyDefaultValue(propertyType) { + if (Array.isArray(propertyType)) { + return [...propertyType.map(copyDefaultValue)]; + } + else { + return propertyType; + } +} +/** + * Creates a deep copy of the specified AST node. + * The resulting copy will only contain semantically relevant information, such as the `$type` property and AST properties. + * + * References are copied without resolved cross reference. The specified function is used to rebuild them. + */ +function copyAstNode(node, buildReference) { + const copy = { $type: node.$type }; + for (const [name, value] of Object.entries(node)) { + if (!name.startsWith('$')) { + if (isAstNode(value)) { + copy[name] = copyAstNode(value, buildReference); + } + else if (isReference(value)) { + copy[name] = buildReference(copy, name, value.$refNode, value.$refText); + } + else if (Array.isArray(value)) { + const copiedArray = []; + for (const element of value) { + if (isAstNode(element)) { + copiedArray.push(copyAstNode(element, buildReference)); + } + else if (isReference(element)) { + copiedArray.push(buildReference(copy, name, element.$refNode, element.$refText)); + } + else { + copiedArray.push(element); + } + } + copy[name] = copiedArray; + } + else { + copy[name] = value; + } + } + } + linkContentToContainer(copy); + return copy; +} +//# sourceMappingURL=ast-utils.js.map +;// CONCATENATED MODULE: ./node_modules/@chevrotain/regexp-to-ast/lib/src/utils.js +function cc(char) { + return char.charCodeAt(0); +} +function insertToSet(item, set) { + if (Array.isArray(item)) { + item.forEach(function (subItem) { + set.push(subItem); + }); + } + else { + set.push(item); + } +} +function addFlag(flagObj, flagKey) { + if (flagObj[flagKey] === true) { + throw "duplicate flag " + flagKey; + } + const x = flagObj[flagKey]; + flagObj[flagKey] = true; +} +function ASSERT_EXISTS(obj) { + // istanbul ignore next + if (obj === undefined) { + throw Error("Internal Error - Should never get here!"); + } + return true; +} +// istanbul ignore next +function ASSERT_NEVER_REACH_HERE() { + throw Error("Internal Error - Should never get here!"); +} +function isCharacter(obj) { + return obj["type"] === "Character"; +} +//# sourceMappingURL=utils.js.map +;// CONCATENATED MODULE: ./node_modules/@chevrotain/regexp-to-ast/lib/src/character-classes.js + +const digitsCharCodes = []; +for (let i = cc("0"); i <= cc("9"); i++) { + digitsCharCodes.push(i); +} +const wordCharCodes = [cc("_")].concat(digitsCharCodes); +for (let i = cc("a"); i <= cc("z"); i++) { + wordCharCodes.push(i); +} +for (let i = cc("A"); i <= cc("Z"); i++) { + wordCharCodes.push(i); +} +// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp#character-classes +const whitespaceCodes = [ + cc(" "), + cc("\f"), + cc("\n"), + cc("\r"), + cc("\t"), + cc("\v"), + cc("\t"), + cc("\u00a0"), + cc("\u1680"), + cc("\u2000"), + cc("\u2001"), + cc("\u2002"), + cc("\u2003"), + cc("\u2004"), + cc("\u2005"), + cc("\u2006"), + cc("\u2007"), + cc("\u2008"), + cc("\u2009"), + cc("\u200a"), + cc("\u2028"), + cc("\u2029"), + cc("\u202f"), + cc("\u205f"), + cc("\u3000"), + cc("\ufeff"), +]; +//# sourceMappingURL=character-classes.js.map +;// CONCATENATED MODULE: ./node_modules/@chevrotain/regexp-to-ast/lib/src/regexp-parser.js + + +// consts and utilities +const hexDigitPattern = /[0-9a-fA-F]/; +const decimalPattern = /[0-9]/; +const decimalPatternNoZero = /[1-9]/; +// https://hackernoon.com/the-madness-of-parsing-real-world-javascript-regexps-d9ee336df983 +// https://www.ecma-international.org/ecma-262/8.0/index.html#prod-Pattern +class RegExpParser { + constructor() { + this.idx = 0; + this.input = ""; + this.groupIdx = 0; + } + saveState() { + return { + idx: this.idx, + input: this.input, + groupIdx: this.groupIdx, + }; + } + restoreState(newState) { + this.idx = newState.idx; + this.input = newState.input; + this.groupIdx = newState.groupIdx; + } + pattern(input) { + // parser state + this.idx = 0; + this.input = input; + this.groupIdx = 0; + this.consumeChar("/"); + const value = this.disjunction(); + this.consumeChar("/"); + const flags = { + type: "Flags", + loc: { begin: this.idx, end: input.length }, + global: false, + ignoreCase: false, + multiLine: false, + unicode: false, + sticky: false, + }; + while (this.isRegExpFlag()) { + switch (this.popChar()) { + case "g": + addFlag(flags, "global"); + break; + case "i": + addFlag(flags, "ignoreCase"); + break; + case "m": + addFlag(flags, "multiLine"); + break; + case "u": + addFlag(flags, "unicode"); + break; + case "y": + addFlag(flags, "sticky"); + break; + } + } + if (this.idx !== this.input.length) { + throw Error("Redundant input: " + this.input.substring(this.idx)); + } + return { + type: "Pattern", + flags: flags, + value: value, + loc: this.loc(0), + }; + } + disjunction() { + const alts = []; + const begin = this.idx; + alts.push(this.alternative()); + while (this.peekChar() === "|") { + this.consumeChar("|"); + alts.push(this.alternative()); + } + return { type: "Disjunction", value: alts, loc: this.loc(begin) }; + } + alternative() { + const terms = []; + const begin = this.idx; + while (this.isTerm()) { + terms.push(this.term()); + } + return { type: "Alternative", value: terms, loc: this.loc(begin) }; + } + term() { + if (this.isAssertion()) { + return this.assertion(); + } + else { + return this.atom(); + } + } + assertion() { + const begin = this.idx; + switch (this.popChar()) { + case "^": + return { + type: "StartAnchor", + loc: this.loc(begin), + }; + case "$": + return { type: "EndAnchor", loc: this.loc(begin) }; + // '\b' or '\B' + case "\\": + switch (this.popChar()) { + case "b": + return { + type: "WordBoundary", + loc: this.loc(begin), + }; + case "B": + return { + type: "NonWordBoundary", + loc: this.loc(begin), + }; + } + // istanbul ignore next + throw Error("Invalid Assertion Escape"); + // '(?=' or '(?!' + case "(": + this.consumeChar("?"); + let type; + switch (this.popChar()) { + case "=": + type = "Lookahead"; + break; + case "!": + type = "NegativeLookahead"; + break; + } + ASSERT_EXISTS(type); + const disjunction = this.disjunction(); + this.consumeChar(")"); + return { + type: type, + value: disjunction, + loc: this.loc(begin), + }; + } + // istanbul ignore next + return ASSERT_NEVER_REACH_HERE(); + } + quantifier(isBacktracking = false) { + let range = undefined; + const begin = this.idx; + switch (this.popChar()) { + case "*": + range = { + atLeast: 0, + atMost: Infinity, + }; + break; + case "+": + range = { + atLeast: 1, + atMost: Infinity, + }; + break; + case "?": + range = { + atLeast: 0, + atMost: 1, + }; + break; + case "{": + const atLeast = this.integerIncludingZero(); + switch (this.popChar()) { + case "}": + range = { + atLeast: atLeast, + atMost: atLeast, + }; + break; + case ",": + let atMost; + if (this.isDigit()) { + atMost = this.integerIncludingZero(); + range = { + atLeast: atLeast, + atMost: atMost, + }; + } + else { + range = { + atLeast: atLeast, + atMost: Infinity, + }; + } + this.consumeChar("}"); + break; + } + // throwing exceptions from "ASSERT_EXISTS" during backtracking + // causes severe performance degradations + if (isBacktracking === true && range === undefined) { + return undefined; + } + ASSERT_EXISTS(range); + break; + } + // throwing exceptions from "ASSERT_EXISTS" during backtracking + // causes severe performance degradations + if (isBacktracking === true && range === undefined) { + return undefined; + } + // istanbul ignore else + if (ASSERT_EXISTS(range)) { + if (this.peekChar(0) === "?") { + this.consumeChar("?"); + range.greedy = false; + } + else { + range.greedy = true; + } + range.type = "Quantifier"; + range.loc = this.loc(begin); + return range; + } + } + atom() { + let atom; + const begin = this.idx; + switch (this.peekChar()) { + case ".": + atom = this.dotAll(); + break; + case "\\": + atom = this.atomEscape(); + break; + case "[": + atom = this.characterClass(); + break; + case "(": + atom = this.group(); + break; + } + if (atom === undefined && this.isPatternCharacter()) { + atom = this.patternCharacter(); + } + // istanbul ignore else + if (ASSERT_EXISTS(atom)) { + atom.loc = this.loc(begin); + if (this.isQuantifier()) { + atom.quantifier = this.quantifier(); + } + return atom; + } + // istanbul ignore next + return ASSERT_NEVER_REACH_HERE(); + } + dotAll() { + this.consumeChar("."); + return { + type: "Set", + complement: true, + value: [cc("\n"), cc("\r"), cc("\u2028"), cc("\u2029")], + }; + } + atomEscape() { + this.consumeChar("\\"); + switch (this.peekChar()) { + case "1": + case "2": + case "3": + case "4": + case "5": + case "6": + case "7": + case "8": + case "9": + return this.decimalEscapeAtom(); + case "d": + case "D": + case "s": + case "S": + case "w": + case "W": + return this.characterClassEscape(); + case "f": + case "n": + case "r": + case "t": + case "v": + return this.controlEscapeAtom(); + case "c": + return this.controlLetterEscapeAtom(); + case "0": + return this.nulCharacterAtom(); + case "x": + return this.hexEscapeSequenceAtom(); + case "u": + return this.regExpUnicodeEscapeSequenceAtom(); + default: + return this.identityEscapeAtom(); + } + } + decimalEscapeAtom() { + const value = this.positiveInteger(); + return { type: "GroupBackReference", value: value }; + } + characterClassEscape() { + let set; + let complement = false; + switch (this.popChar()) { + case "d": + set = digitsCharCodes; + break; + case "D": + set = digitsCharCodes; + complement = true; + break; + case "s": + set = whitespaceCodes; + break; + case "S": + set = whitespaceCodes; + complement = true; + break; + case "w": + set = wordCharCodes; + break; + case "W": + set = wordCharCodes; + complement = true; + break; + } + // istanbul ignore else + if (ASSERT_EXISTS(set)) { + return { type: "Set", value: set, complement: complement }; + } + // istanbul ignore next + return ASSERT_NEVER_REACH_HERE(); + } + controlEscapeAtom() { + let escapeCode; + switch (this.popChar()) { + case "f": + escapeCode = cc("\f"); + break; + case "n": + escapeCode = cc("\n"); + break; + case "r": + escapeCode = cc("\r"); + break; + case "t": + escapeCode = cc("\t"); + break; + case "v": + escapeCode = cc("\v"); + break; + } + // istanbul ignore else + if (ASSERT_EXISTS(escapeCode)) { + return { type: "Character", value: escapeCode }; + } + // istanbul ignore next + return ASSERT_NEVER_REACH_HERE(); + } + controlLetterEscapeAtom() { + this.consumeChar("c"); + const letter = this.popChar(); + if (/[a-zA-Z]/.test(letter) === false) { + throw Error("Invalid "); + } + const letterCode = letter.toUpperCase().charCodeAt(0) - 64; + return { type: "Character", value: letterCode }; + } + nulCharacterAtom() { + // TODO implement '[lookahead ∉ DecimalDigit]' + // TODO: for the deprecated octal escape sequence + this.consumeChar("0"); + return { type: "Character", value: cc("\0") }; + } + hexEscapeSequenceAtom() { + this.consumeChar("x"); + return this.parseHexDigits(2); + } + regExpUnicodeEscapeSequenceAtom() { + this.consumeChar("u"); + return this.parseHexDigits(4); + } + identityEscapeAtom() { + // TODO: implement "SourceCharacter but not UnicodeIDContinue" + // // http://unicode.org/reports/tr31/#Specific_Character_Adjustments + const escapedChar = this.popChar(); + return { type: "Character", value: cc(escapedChar) }; + } + classPatternCharacterAtom() { + switch (this.peekChar()) { + // istanbul ignore next + case "\n": + // istanbul ignore next + case "\r": + // istanbul ignore next + case "\u2028": + // istanbul ignore next + case "\u2029": + // istanbul ignore next + case "\\": + // istanbul ignore next + case "]": + throw Error("TBD"); + default: + const nextChar = this.popChar(); + return { type: "Character", value: cc(nextChar) }; + } + } + characterClass() { + const set = []; + let complement = false; + this.consumeChar("["); + if (this.peekChar(0) === "^") { + this.consumeChar("^"); + complement = true; + } + while (this.isClassAtom()) { + const from = this.classAtom(); + const isFromSingleChar = from.type === "Character"; + if (isCharacter(from) && this.isRangeDash()) { + this.consumeChar("-"); + const to = this.classAtom(); + const isToSingleChar = to.type === "Character"; + // a range can only be used when both sides are single characters + if (isCharacter(to)) { + if (to.value < from.value) { + throw Error("Range out of order in character class"); + } + set.push({ from: from.value, to: to.value }); + } + else { + // literal dash + insertToSet(from.value, set); + set.push(cc("-")); + insertToSet(to.value, set); + } + } + else { + insertToSet(from.value, set); + } + } + this.consumeChar("]"); + return { type: "Set", complement: complement, value: set }; + } + classAtom() { + switch (this.peekChar()) { + // istanbul ignore next + case "]": + // istanbul ignore next + case "\n": + // istanbul ignore next + case "\r": + // istanbul ignore next + case "\u2028": + // istanbul ignore next + case "\u2029": + throw Error("TBD"); + case "\\": + return this.classEscape(); + default: + return this.classPatternCharacterAtom(); + } + } + classEscape() { + this.consumeChar("\\"); + switch (this.peekChar()) { + // Matches a backspace. + // (Not to be confused with \b word boundary outside characterClass) + case "b": + this.consumeChar("b"); + return { type: "Character", value: cc("\u0008") }; + case "d": + case "D": + case "s": + case "S": + case "w": + case "W": + return this.characterClassEscape(); + case "f": + case "n": + case "r": + case "t": + case "v": + return this.controlEscapeAtom(); + case "c": + return this.controlLetterEscapeAtom(); + case "0": + return this.nulCharacterAtom(); + case "x": + return this.hexEscapeSequenceAtom(); + case "u": + return this.regExpUnicodeEscapeSequenceAtom(); + default: + return this.identityEscapeAtom(); + } + } + group() { + let capturing = true; + this.consumeChar("("); + switch (this.peekChar(0)) { + case "?": + this.consumeChar("?"); + this.consumeChar(":"); + capturing = false; + break; + default: + this.groupIdx++; + break; + } + const value = this.disjunction(); + this.consumeChar(")"); + const groupAst = { + type: "Group", + capturing: capturing, + value: value, + }; + if (capturing) { + groupAst["idx"] = this.groupIdx; + } + return groupAst; + } + positiveInteger() { + let number = this.popChar(); + // istanbul ignore next - can't ever get here due to previous lookahead checks + // still implementing this error checking in case this ever changes. + if (decimalPatternNoZero.test(number) === false) { + throw Error("Expecting a positive integer"); + } + while (decimalPattern.test(this.peekChar(0))) { + number += this.popChar(); + } + return parseInt(number, 10); + } + integerIncludingZero() { + let number = this.popChar(); + if (decimalPattern.test(number) === false) { + throw Error("Expecting an integer"); + } + while (decimalPattern.test(this.peekChar(0))) { + number += this.popChar(); + } + return parseInt(number, 10); + } + patternCharacter() { + const nextChar = this.popChar(); + switch (nextChar) { + // istanbul ignore next + case "\n": + // istanbul ignore next + case "\r": + // istanbul ignore next + case "\u2028": + // istanbul ignore next + case "\u2029": + // istanbul ignore next + case "^": + // istanbul ignore next + case "$": + // istanbul ignore next + case "\\": + // istanbul ignore next + case ".": + // istanbul ignore next + case "*": + // istanbul ignore next + case "+": + // istanbul ignore next + case "?": + // istanbul ignore next + case "(": + // istanbul ignore next + case ")": + // istanbul ignore next + case "[": + // istanbul ignore next + case "|": + // istanbul ignore next + throw Error("TBD"); + default: + return { type: "Character", value: cc(nextChar) }; + } + } + isRegExpFlag() { + switch (this.peekChar(0)) { + case "g": + case "i": + case "m": + case "u": + case "y": + return true; + default: + return false; + } + } + isRangeDash() { + return this.peekChar() === "-" && this.isClassAtom(1); + } + isDigit() { + return decimalPattern.test(this.peekChar(0)); + } + isClassAtom(howMuch = 0) { + switch (this.peekChar(howMuch)) { + case "]": + case "\n": + case "\r": + case "\u2028": + case "\u2029": + return false; + default: + return true; + } + } + isTerm() { + return this.isAtom() || this.isAssertion(); + } + isAtom() { + if (this.isPatternCharacter()) { + return true; + } + switch (this.peekChar(0)) { + case ".": + case "\\": // atomEscape + case "[": // characterClass + // TODO: isAtom must be called before isAssertion - disambiguate + case "(": // group + return true; + default: + return false; + } + } + isAssertion() { + switch (this.peekChar(0)) { + case "^": + case "$": + return true; + // '\b' or '\B' + case "\\": + switch (this.peekChar(1)) { + case "b": + case "B": + return true; + default: + return false; + } + // '(?=' or '(?!' + case "(": + return (this.peekChar(1) === "?" && + (this.peekChar(2) === "=" || this.peekChar(2) === "!")); + default: + return false; + } + } + isQuantifier() { + const prevState = this.saveState(); + try { + return this.quantifier(true) !== undefined; + } + catch (e) { + return false; + } + finally { + this.restoreState(prevState); + } + } + isPatternCharacter() { + switch (this.peekChar()) { + case "^": + case "$": + case "\\": + case ".": + case "*": + case "+": + case "?": + case "(": + case ")": + case "[": + case "|": + case "/": + case "\n": + case "\r": + case "\u2028": + case "\u2029": + return false; + default: + return true; + } + } + parseHexDigits(howMany) { + let hexString = ""; + for (let i = 0; i < howMany; i++) { + const hexChar = this.popChar(); + if (hexDigitPattern.test(hexChar) === false) { + throw Error("Expecting a HexDecimal digits"); + } + hexString += hexChar; + } + const charCode = parseInt(hexString, 16); + return { type: "Character", value: charCode }; + } + peekChar(howMuch = 0) { + return this.input[this.idx + howMuch]; + } + popChar() { + const nextChar = this.peekChar(0); + this.consumeChar(undefined); + return nextChar; + } + consumeChar(char) { + if (char !== undefined && this.input[this.idx] !== char) { + throw Error("Expected: '" + + char + + "' but found: '" + + this.input[this.idx] + + "' at offset: " + + this.idx); + } + if (this.idx >= this.input.length) { + throw Error("Unexpected end of input"); + } + this.idx++; + } + loc(begin) { + return { begin: begin, end: this.idx }; + } +} +//# sourceMappingURL=regexp-parser.js.map +;// CONCATENATED MODULE: ./node_modules/@chevrotain/regexp-to-ast/lib/src/base-regexp-visitor.js +class BaseRegExpVisitor { + visitChildren(node) { + for (const key in node) { + const child = node[key]; + /* istanbul ignore else */ + if (node.hasOwnProperty(key)) { + if (child.type !== undefined) { + this.visit(child); + } + else if (Array.isArray(child)) { + child.forEach((subChild) => { + this.visit(subChild); + }, this); + } + } + } + } + visit(node) { + switch (node.type) { + case "Pattern": + this.visitPattern(node); + break; + case "Flags": + this.visitFlags(node); + break; + case "Disjunction": + this.visitDisjunction(node); + break; + case "Alternative": + this.visitAlternative(node); + break; + case "StartAnchor": + this.visitStartAnchor(node); + break; + case "EndAnchor": + this.visitEndAnchor(node); + break; + case "WordBoundary": + this.visitWordBoundary(node); + break; + case "NonWordBoundary": + this.visitNonWordBoundary(node); + break; + case "Lookahead": + this.visitLookahead(node); + break; + case "NegativeLookahead": + this.visitNegativeLookahead(node); + break; + case "Character": + this.visitCharacter(node); + break; + case "Set": + this.visitSet(node); + break; + case "Group": + this.visitGroup(node); + break; + case "GroupBackReference": + this.visitGroupBackReference(node); + break; + case "Quantifier": + this.visitQuantifier(node); + break; + } + this.visitChildren(node); + } + visitPattern(node) { } + visitFlags(node) { } + visitDisjunction(node) { } + visitAlternative(node) { } + // Assertion + visitStartAnchor(node) { } + visitEndAnchor(node) { } + visitWordBoundary(node) { } + visitNonWordBoundary(node) { } + visitLookahead(node) { } + visitNegativeLookahead(node) { } + // atoms + visitCharacter(node) { } + visitSet(node) { } + visitGroup(node) { } + visitGroupBackReference(node) { } + visitQuantifier(node) { } +} +//# sourceMappingURL=base-regexp-visitor.js.map +;// CONCATENATED MODULE: ./node_modules/@chevrotain/regexp-to-ast/lib/src/api.js + + +//# sourceMappingURL=api.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/utils/regexp-utils.js +/****************************************************************************** + * Copyright 2021 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + +const NEWLINE_REGEXP = /\r?\n/gm; +const regexpParser = new RegExpParser(); +/** + * This class is in charge of heuristically identifying start/end tokens of terminals. + * + * The way this works is by doing the following: + * 1. Traverse the regular expression in the "start state" + * 2. Add any encountered sets/single characters to the "start regexp" + * 3. Once we encounter any variable-length content (i.e. with quantifiers such as +/?/*), we enter the "end state" + * 4. In the end state, any sets/single characters are added to an "end stack". + * 5. If we re-encounter any variable-length content we reset the end stack + * 6. We continue visiting the regex until the end, reseting the end stack and rebuilding it as necessary + * + * After traversing a regular expression the `startRegexp/endRegexp` properties allow access to the stored start/end of the terminal + */ +class TerminalRegExpVisitor extends BaseRegExpVisitor { + constructor() { + super(...arguments); + this.isStarting = true; + this.endRegexpStack = []; + this.multiline = false; + } + get endRegex() { + return this.endRegexpStack.join(''); + } + reset(regex) { + this.multiline = false; + this.regex = regex; + this.startRegexp = ''; + this.isStarting = true; + this.endRegexpStack = []; + } + visitGroup(node) { + if (node.quantifier) { + this.isStarting = false; + this.endRegexpStack = []; + } + } + visitCharacter(node) { + const char = String.fromCharCode(node.value); + if (!this.multiline && char === '\n') { + this.multiline = true; + } + if (node.quantifier) { + this.isStarting = false; + this.endRegexpStack = []; + } + else { + const escapedChar = escapeRegExp(char); + this.endRegexpStack.push(escapedChar); + if (this.isStarting) { + this.startRegexp += escapedChar; + } + } + } + visitSet(node) { + if (!this.multiline) { + const set = this.regex.substring(node.loc.begin, node.loc.end); + const regex = new RegExp(set); + this.multiline = Boolean('\n'.match(regex)); + } + if (node.quantifier) { + this.isStarting = false; + this.endRegexpStack = []; + } + else { + const set = this.regex.substring(node.loc.begin, node.loc.end); + this.endRegexpStack.push(set); + if (this.isStarting) { + this.startRegexp += set; + } + } + } + visitChildren(node) { + if (node.type === 'Group') { + // Ignore children of groups with quantifier (+/*/?) + // These groups are unrelated to start/end tokens of terminals + const group = node; + if (group.quantifier) { + return; + } + } + super.visitChildren(node); + } +} +const visitor = new TerminalRegExpVisitor(); +function getTerminalParts(regexp) { + try { + if (typeof regexp !== 'string') { + regexp = regexp.source; + } + regexp = `/${regexp}/`; + const pattern = regexpParser.pattern(regexp); + const parts = []; + for (const alternative of pattern.value.value) { + visitor.reset(regexp); + visitor.visit(alternative); + parts.push({ + start: visitor.startRegexp, + end: visitor.endRegex + }); + } + return parts; + } + catch (_a) { + return []; + } +} +function isMultilineComment(regexp) { + try { + if (typeof regexp === 'string') { + regexp = new RegExp(regexp); + } + regexp = regexp.toString(); + visitor.reset(regexp); + // Parsing the pattern might fail (since it's user code) + visitor.visit(regexpParser.pattern(regexp)); + return visitor.multiline; + } + catch (_a) { + return false; + } +} +function isWhitespace(value) { + const regexp = typeof value === 'string' ? new RegExp(value) : value; + return regexp.test(' '); +} +function escapeRegExp(value) { + return value.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); +} +function getCaseInsensitivePattern(keyword) { + return Array.prototype.map.call(keyword, letter => /\w/.test(letter) ? `[${letter.toLowerCase()}${letter.toUpperCase()}]` : escapeRegExp(letter)).join(''); +} +/** + * Determines whether the given input has a partial match with the specified regex. + * @param regex The regex to partially match against + * @param input The input string + * @returns Whether any match exists. + */ +function partialMatches(regex, input) { + const partial = partialRegExp(regex); + const match = input.match(partial); + return !!match && match[0].length > 0; +} +/** + * Builds a partial regex from the input regex. A partial regex is able to match incomplete input strings. E.g. + * a partial regex constructed from `/ab/` is able to match the string `a` without needing a following `b` character. However it won't match `b` alone. + * @param regex The input regex to be converted. + * @returns A partial regex constructed from the input regex. + */ +function partialRegExp(regex) { + if (typeof regex === 'string') { + regex = new RegExp(regex); + } + const re = regex, source = regex.source; + let i = 0; + function process() { + let result = '', tmp; + function appendRaw(nbChars) { + result += source.substr(i, nbChars); + i += nbChars; + } + function appendOptional(nbChars) { + result += '(?:' + source.substr(i, nbChars) + '|$)'; + i += nbChars; + } + while (i < source.length) { + switch (source[i]) { + case '\\': + switch (source[i + 1]) { + case 'c': + appendOptional(3); + break; + case 'x': + appendOptional(4); + break; + case 'u': + if (re.unicode) { + if (source[i + 2] === '{') { + appendOptional(source.indexOf('}', i) - i + 1); + } + else { + appendOptional(6); + } + } + else { + appendOptional(2); + } + break; + case 'p': + case 'P': + if (re.unicode) { + appendOptional(source.indexOf('}', i) - i + 1); + } + else { + appendOptional(2); + } + break; + case 'k': + appendOptional(source.indexOf('>', i) - i + 1); + break; + default: + appendOptional(2); + break; + } + break; + case '[': + tmp = /\[(?:\\.|.)*?\]/g; + tmp.lastIndex = i; + tmp = tmp.exec(source) || []; + appendOptional(tmp[0].length); + break; + case '|': + case '^': + case '$': + case '*': + case '+': + case '?': + appendRaw(1); + break; + case '{': + tmp = /\{\d+,?\d*\}/g; + tmp.lastIndex = i; + tmp = tmp.exec(source); + if (tmp) { + appendRaw(tmp[0].length); + } + else { + appendOptional(1); + } + break; + case '(': + if (source[i + 1] === '?') { + switch (source[i + 2]) { + case ':': + result += '(?:'; + i += 3; + result += process() + '|$)'; + break; + case '=': + result += '(?='; + i += 3; + result += process() + ')'; + break; + case '!': + tmp = i; + i += 3; + process(); + result += source.substr(tmp, i - tmp); + break; + case '<': + switch (source[i + 3]) { + case '=': + case '!': + tmp = i; + i += 4; + process(); + result += source.substr(tmp, i - tmp); + break; + default: + appendRaw(source.indexOf('>', i) - i + 1); + result += process() + '|$)'; + break; + } + break; + } + } + else { + appendRaw(1); + result += process() + '|$)'; + } + break; + case ')': + ++i; + return result; + default: + appendOptional(1); + break; + } + } + return result; + } + return new RegExp(process(), regex.flags); +} +//# sourceMappingURL=regexp-utils.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/utils/grammar-utils.js +/****************************************************************************** + * Copyright 2021-2022 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + + + + + + +/** + * Returns the entry rule of the given grammar, if any. If the grammar file does not contain an entry rule, + * the result is `undefined`. + */ +function getEntryRule(grammar) { + return grammar.rules.find(e => isParserRule(e) && e.entry); +} +/** + * Returns all hidden terminal rules of the given grammar, if any. + */ +function getHiddenRules(grammar) { + return grammar.rules.filter((e) => isTerminalRule(e) && e.hidden); +} +/** + * Returns all rules that can be reached from the topmost rules of the specified grammar (entry and hidden terminal rules). + * + * @param grammar The grammar that contains all rules + * @param allTerminals Whether or not to include terminals that are referenced only by other terminals + * @returns A list of referenced parser and terminal rules. If the grammar contains no entry rule, + * this function returns all rules of the specified grammar. + */ +function getAllReachableRules(grammar, allTerminals) { + const ruleNames = new Set(); + const entryRule = getEntryRule(grammar); + if (!entryRule) { + return new Set(grammar.rules); + } + const topMostRules = [entryRule].concat(getHiddenRules(grammar)); + for (const rule of topMostRules) { + ruleDfs(rule, ruleNames, allTerminals); + } + const rules = new Set(); + for (const rule of grammar.rules) { + if (ruleNames.has(rule.name) || (isTerminalRule(rule) && rule.hidden)) { + rules.add(rule); + } + } + return rules; +} +function ruleDfs(rule, visitedSet, allTerminals) { + visitedSet.add(rule.name); + ast_utils_streamAllContents(rule).forEach(node => { + if (isRuleCall(node) || (allTerminals && isTerminalRuleCall(node))) { + const refRule = node.rule.ref; + if (refRule && !visitedSet.has(refRule.name)) { + ruleDfs(refRule, visitedSet, allTerminals); + } + } + }); +} +/** + * Determines the grammar expression used to parse a cross-reference (usually a reference to a terminal rule). + * A cross-reference can declare this expression explicitly in the form `[Type : Terminal]`, but if `Terminal` + * is omitted, this function attempts to infer it from the name of the referenced `Type` (using `findNameAssignment`). + * + * Returns the grammar expression used to parse the given cross-reference, or `undefined` if it is not declared + * and cannot be inferred. + */ +function getCrossReferenceTerminal(crossRef) { + if (crossRef.terminal) { + return crossRef.terminal; + } + else if (crossRef.type.ref) { + const nameAssigment = findNameAssignment(crossRef.type.ref); + return nameAssigment === null || nameAssigment === void 0 ? void 0 : nameAssigment.terminal; + } + return undefined; +} +/** + * Determines whether the given terminal rule represents a comment. This is true if the rule is marked + * as `hidden` and it does not match white space. This means every hidden token (i.e. excluded from the AST) + * that contains visible characters is considered a comment. + */ +function isCommentTerminal(terminalRule) { + return terminalRule.hidden && !terminalRegex(terminalRule).test(' '); +} +/** + * Find all CST nodes within the given node that contribute to the specified property. + * + * @param node A CST node in which to look for property assignments. If this is undefined, the result is an empty array. + * @param property A property name of the constructed AST node. If this is undefined, the result is an empty array. + */ +function findNodesForProperty(node, property) { + if (!node || !property) { + return []; + } + return findNodesForPropertyInternal(node, property, node.astNode, true); +} +/** + * Find a single CST node within the given node that contributes to the specified property. + * + * @param node A CST node in which to look for property assignments. If this is undefined, the result is `undefined`. + * @param property A property name of the constructed AST node. If this is undefined, the result is `undefined`. + * @param index If no index is specified or the index is less than zero, the first found node is returned. If the + * specified index exceeds the number of assignments to the property, the last found node is returned. Otherwise, + * the node with the specified index is returned. + */ +function findNodeForProperty(node, property, index) { + if (!node || !property) { + return undefined; + } + const nodes = findNodesForPropertyInternal(node, property, node.astNode, true); + if (nodes.length === 0) { + return undefined; + } + if (index !== undefined) { + index = Math.max(0, Math.min(index, nodes.length - 1)); + } + else { + index = 0; + } + return nodes[index]; +} +function findNodesForPropertyInternal(node, property, element, first) { + if (!first) { + const nodeFeature = getContainerOfType(node.grammarSource, isAssignment); + if (nodeFeature && nodeFeature.feature === property) { + return [node]; + } + } + if (syntax_tree_isCompositeCstNode(node) && node.astNode === element) { + return node.content.flatMap(e => findNodesForPropertyInternal(e, property, element, false)); + } + return []; +} +/** + * Find all CST nodes within the given node that correspond to the specified keyword. + * + * @param node A CST node in which to look for keywords. If this is undefined, the result is an empty array. + * @param keyword A keyword as specified in the grammar. + */ +function findNodesForKeyword(node, keyword) { + if (!node) { + return []; + } + return findNodesForKeywordInternal(node, keyword, node === null || node === void 0 ? void 0 : node.astNode); +} +/** + * Find a single CST node within the given node that corresponds to the specified keyword. + * + * @param node A CST node in which to look for keywords. If this is undefined, the result is `undefined`. + * @param keyword A keyword as specified in the grammar. + * @param index If no index is specified or the index is less than zero, the first found node is returned. If the + * specified index exceeds the number of keyword occurrences, the last found node is returned. Otherwise, + * the node with the specified index is returned. + */ +function findNodeForKeyword(node, keyword, index) { + if (!node) { + return undefined; + } + const nodes = findNodesForKeywordInternal(node, keyword, node === null || node === void 0 ? void 0 : node.astNode); + if (nodes.length === 0) { + return undefined; + } + if (index !== undefined) { + index = Math.max(0, Math.min(index, nodes.length - 1)); + } + else { + index = 0; + } + return nodes[index]; +} +function findNodesForKeywordInternal(node, keyword, element) { + if (node.astNode !== element) { + return []; + } + if (isKeyword(node.grammarSource) && node.grammarSource.value === keyword) { + return [node]; + } + const treeIterator = streamCst(node).iterator(); + let result; + const keywordNodes = []; + do { + result = treeIterator.next(); + if (!result.done) { + const childNode = result.value; + if (childNode.astNode === element) { + if (isKeyword(childNode.grammarSource) && childNode.grammarSource.value === keyword) { + keywordNodes.push(childNode); + } + } + else { + treeIterator.prune(); + } + } + } while (!result.done); + return keywordNodes; +} +/** + * If the given CST node was parsed in the context of a property assignment, the respective `Assignment` grammar + * node is returned. If no assignment is found, the result is `undefined`. + * + * @param cstNode A CST node for which to find a property assignment. + */ +function findAssignment(cstNode) { + var _a; + const astNode = cstNode.astNode; + // Only search until the ast node of the parent cst node is no longer the original ast node + // This would make us jump to a preceding rule call, which contains only unrelated assignments + while (astNode === ((_a = cstNode.container) === null || _a === void 0 ? void 0 : _a.astNode)) { + const assignment = getContainerOfType(cstNode.grammarSource, isAssignment); + if (assignment) { + return assignment; + } + cstNode = cstNode.container; + } + return undefined; +} +/** + * Find an assignment to the `name` property for the given grammar type. This requires the `type` to be inferred + * from a parser rule, and that rule must contain an assignment to the `name` property. In all other cases, + * this function returns `undefined`. + */ +function findNameAssignment(type) { + let startNode = type; + if (isInferredType(startNode)) { + // for inferred types, the location to start searching for the name-assignment is different + if (isAction(startNode.$container)) { + // a type which is explicitly inferred by an action: investigate the sibbling of the Action node, i.e. start searching at the Action's parent + startNode = startNode.$container.$container; + } + else if (isParserRule(startNode.$container)) { + // investigate the parser rule with the explicitly inferred type + startNode = startNode.$container; + } + else { + assertUnreachable(startNode.$container); + } + } + return findNameAssignmentInternal(type, startNode, new Map()); +} +function findNameAssignmentInternal(type, startNode, cache) { + var _a; + // the cache is only required to prevent infinite loops + function go(node, refType) { + let childAssignment = undefined; + const parentAssignment = getContainerOfType(node, isAssignment); + // No parent assignment implies unassigned rule call + if (!parentAssignment) { + childAssignment = findNameAssignmentInternal(refType, refType, cache); + } + cache.set(type, childAssignment); + return childAssignment; + } + if (cache.has(type)) { + return cache.get(type); + } + cache.set(type, undefined); + for (const node of ast_utils_streamAllContents(startNode)) { + if (isAssignment(node) && node.feature.toLowerCase() === 'name') { + cache.set(type, node); + return node; + } + else if (isRuleCall(node) && isParserRule(node.rule.ref)) { + return go(node, node.rule.ref); + } + else if (isSimpleType(node) && ((_a = node.typeRef) === null || _a === void 0 ? void 0 : _a.ref)) { + return go(node, node.typeRef.ref); + } + } + return undefined; +} +function getActionAtElement(element) { + const parent = element.$container; + if (ast.isGroup(parent)) { + const elements = parent.elements; + const index = elements.indexOf(element); + for (let i = index - 1; i >= 0; i--) { + const item = elements[i]; + if (ast.isAction(item)) { + return item; + } + else { + const action = streamAllContents(elements[i]).find(ast.isAction); + if (action) { + return action; + } + } + } + } + if (ast.isAbstractElement(parent)) { + return getActionAtElement(parent); + } + else { + return undefined; + } +} +function isOptionalCardinality(cardinality, element) { + return cardinality === '?' || cardinality === '*' || (ast.isGroup(element) && Boolean(element.guardCondition)); +} +function isArrayCardinality(cardinality) { + return cardinality === '*' || cardinality === '+'; +} +function isArrayOperator(operator) { + return operator === '+='; +} +/** + * Determines whether the given parser rule is a _data type rule_, meaning that it has a + * primitive return type like `number`, `boolean`, etc. + */ +function isDataTypeRule(rule) { + return isDataTypeRuleInternal(rule, new Set()); +} +function isDataTypeRuleInternal(rule, visited) { + if (visited.has(rule)) { + return true; + } + else { + visited.add(rule); + } + for (const node of ast_utils_streamAllContents(rule)) { + if (isRuleCall(node)) { + if (!node.rule.ref) { + // RuleCall to unresolved rule. Don't assume `rule` is a DataType rule. + return false; + } + if (isParserRule(node.rule.ref) && !isDataTypeRuleInternal(node.rule.ref, visited)) { + return false; + } + } + else if (isAssignment(node)) { + return false; + } + else if (isAction(node)) { + return false; + } + } + return Boolean(rule.definition); +} +function isDataType(type) { + return isDataTypeInternal(type.type, new Set()); +} +function isDataTypeInternal(type, visited) { + if (visited.has(type)) { + return true; + } + else { + visited.add(type); + } + if (ast.isArrayType(type)) { + return false; + } + else if (ast.isReferenceType(type)) { + return false; + } + else if (ast.isUnionType(type)) { + return type.types.every(e => isDataTypeInternal(e, visited)); + } + else if (ast.isSimpleType(type)) { + if (type.primitiveType !== undefined) { + return true; + } + else if (type.stringType !== undefined) { + return true; + } + else if (type.typeRef !== undefined) { + const ref = type.typeRef.ref; + if (ast.isType(ref)) { + return isDataTypeInternal(ref.type, visited); + } + else { + return false; + } + } + else { + return false; + } + } + else { + return false; + } +} +function getExplicitRuleType(rule) { + if (rule.inferredType) { + return rule.inferredType.name; + } + else if (rule.dataType) { + return rule.dataType; + } + else if (rule.returnType) { + const refType = rule.returnType.ref; + if (refType) { + // check if we need to check Action as return type + if (isParserRule(refType)) { + return refType.name; + } + else if (isInterface(refType) || isType(refType)) { + return refType.name; + } + } + } + return undefined; +} +function getTypeName(type) { + var _a; + if (isParserRule(type)) { + return isDataTypeRule(type) ? type.name : (_a = getExplicitRuleType(type)) !== null && _a !== void 0 ? _a : type.name; + } + else if (isInterface(type) || isType(type) || isReturnType(type)) { + return type.name; + } + else if (isAction(type)) { + const actionType = getActionType(type); + if (actionType) { + return actionType; + } + } + else if (isInferredType(type)) { + return type.name; + } + throw new Error('Cannot get name of Unknown Type'); +} +function getActionType(action) { + var _a; + if (action.inferredType) { + return action.inferredType.name; + } + else if ((_a = action.type) === null || _a === void 0 ? void 0 : _a.ref) { + return getTypeName(action.type.ref); + } + return undefined; // not inferring and not referencing a valid type +} +function getRuleType(rule) { + var _a, _b, _c; + if (isTerminalRule(rule)) { + return (_b = (_a = rule.type) === null || _a === void 0 ? void 0 : _a.name) !== null && _b !== void 0 ? _b : 'string'; + } + else { + return isDataTypeRule(rule) ? rule.name : (_c = getExplicitRuleType(rule)) !== null && _c !== void 0 ? _c : rule.name; + } +} +function terminalRegex(terminalRule) { + const flags = { + s: false, + i: false, + u: false + }; + const source = abstractElementToRegex(terminalRule.definition, flags); + const flagText = Object.entries(flags).filter(([, value]) => value).map(([name]) => name).join(''); + return new RegExp(source, flagText); +} +// Using [\s\S]* allows to match everything, compared to . which doesn't match line terminators +const WILDCARD = /[\s\S]/.source; +function abstractElementToRegex(element, flags) { + if (isTerminalAlternatives(element)) { + return terminalAlternativesToRegex(element); + } + else if (isTerminalGroup(element)) { + return terminalGroupToRegex(element); + } + else if (isCharacterRange(element)) { + return characterRangeToRegex(element); + } + else if (isTerminalRuleCall(element)) { + const rule = element.rule.ref; + if (!rule) { + throw new Error('Missing rule reference.'); + } + return withCardinality(abstractElementToRegex(rule.definition), { + cardinality: element.cardinality, + lookahead: element.lookahead + }); + } + else if (isNegatedToken(element)) { + return negateTokenToRegex(element); + } + else if (isUntilToken(element)) { + return untilTokenToRegex(element); + } + else if (isRegexToken(element)) { + const lastSlash = element.regex.lastIndexOf('/'); + const source = element.regex.substring(1, lastSlash); + const regexFlags = element.regex.substring(lastSlash + 1); + if (flags) { + flags.i = regexFlags.includes('i'); + flags.s = regexFlags.includes('s'); + flags.u = regexFlags.includes('u'); + } + return withCardinality(source, { + cardinality: element.cardinality, + lookahead: element.lookahead, + wrap: false + }); + } + else if (isWildcard(element)) { + return withCardinality(WILDCARD, { + cardinality: element.cardinality, + lookahead: element.lookahead + }); + } + else { + throw new Error(`Invalid terminal element: ${element === null || element === void 0 ? void 0 : element.$type}`); + } +} +function terminalAlternativesToRegex(alternatives) { + return withCardinality(alternatives.elements.map(e => abstractElementToRegex(e)).join('|'), { + cardinality: alternatives.cardinality, + lookahead: alternatives.lookahead + }); +} +function terminalGroupToRegex(group) { + return withCardinality(group.elements.map(e => abstractElementToRegex(e)).join(''), { + cardinality: group.cardinality, + lookahead: group.lookahead + }); +} +function untilTokenToRegex(until) { + return withCardinality(`${WILDCARD}*?${abstractElementToRegex(until.terminal)}`, { + cardinality: until.cardinality, + lookahead: until.lookahead + }); +} +function negateTokenToRegex(negate) { + return withCardinality(`(?!${abstractElementToRegex(negate.terminal)})${WILDCARD}*?`, { + cardinality: negate.cardinality, + lookahead: negate.lookahead + }); +} +function characterRangeToRegex(range) { + if (range.right) { + return withCardinality(`[${keywordToRegex(range.left)}-${keywordToRegex(range.right)}]`, { + cardinality: range.cardinality, + lookahead: range.lookahead, + wrap: false + }); + } + return withCardinality(keywordToRegex(range.left), { + cardinality: range.cardinality, + lookahead: range.lookahead, + wrap: false + }); +} +function keywordToRegex(keyword) { + return escapeRegExp(keyword.value); +} +function withCardinality(regex, options) { + var _a; + if (options.wrap !== false || options.lookahead) { + regex = `(${(_a = options.lookahead) !== null && _a !== void 0 ? _a : ''}${regex})`; + } + if (options.cardinality) { + return `${regex}${options.cardinality}`; + } + return regex; +} +//# sourceMappingURL=grammar-utils.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/languages/grammar-config.js +/****************************************************************************** + * Copyright 2021 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + + + + +/** + * Create the default grammar configuration (used by `createDefaultModule`). This can be overridden in a + * language-specific module. + */ +function createGrammarConfig(services) { + const rules = []; + const grammar = services.Grammar; + for (const rule of grammar.rules) { + if (isTerminalRule(rule) && isCommentTerminal(rule) && isMultilineComment(terminalRegex(rule))) { + rules.push(rule.name); + } + } + return { + multilineCommentRules: rules, + nameRegexp: DefaultNameRegexp + }; +} +//# sourceMappingURL=grammar-config.js.map +// EXTERNAL MODULE: ./node_modules/lodash-es/forEach.js +var forEach = __webpack_require__(8058); +// EXTERNAL MODULE: ./node_modules/lodash-es/values.js + 1 modules +var lodash_es_values = __webpack_require__(38207); +// EXTERNAL MODULE: ./node_modules/lodash-es/isEmpty.js +var isEmpty = __webpack_require__(66401); +// EXTERNAL MODULE: ./node_modules/lodash-es/map.js +var lodash_es_map = __webpack_require__(74722); +// EXTERNAL MODULE: ./node_modules/lodash-es/has.js + 1 modules +var has = __webpack_require__(48585); +// EXTERNAL MODULE: ./node_modules/lodash-es/clone.js +var clone = __webpack_require__(50053); +;// CONCATENATED MODULE: ./node_modules/@chevrotain/utils/lib/src/print.js +/* provided dependency */ var console = __webpack_require__(96763); +function PRINT_ERROR(msg) { + /* istanbul ignore else - can't override global.console in node.js */ + if (console && console.error) { + console.error(`Error: ${msg}`); + } +} +function PRINT_WARNING(msg) { + /* istanbul ignore else - can't override global.console in node.js*/ + if (console && console.warn) { + // TODO: modify docs accordingly + console.warn(`Warning: ${msg}`); + } +} +//# sourceMappingURL=print.js.map +;// CONCATENATED MODULE: ./node_modules/@chevrotain/utils/lib/src/timer.js +function timer(func) { + const start = new Date().getTime(); + const val = func(); + const end = new Date().getTime(); + const total = end - start; + return { time: total, value: val }; +} +//# sourceMappingURL=timer.js.map +;// CONCATENATED MODULE: ./node_modules/@chevrotain/utils/lib/src/to-fast-properties.js +// based on: https://github.com/petkaantonov/bluebird/blob/b97c0d2d487e8c5076e8bd897e0dcd4622d31846/src/util.js#L201-L216 +function toFastProperties(toBecomeFast) { + function FakeConstructor() { } + // If our object is used as a constructor, it would receive + FakeConstructor.prototype = toBecomeFast; + const fakeInstance = new FakeConstructor(); + function fakeAccess() { + return typeof fakeInstance.bar; + } + // help V8 understand this is a "real" prototype by actually using + // the fake instance. + fakeAccess(); + fakeAccess(); + // Always true condition to suppress the Firefox warning of unreachable + // code after a return statement. + if (true) + return toBecomeFast; + // Eval prevents optimization of this method (even though this is dead code) + // - https://esbuild.github.io/content-types/#direct-eval + /* istanbul ignore next */ + // tslint:disable-next-line + (0, eval)(toBecomeFast); +} +//# sourceMappingURL=to-fast-properties.js.map +;// CONCATENATED MODULE: ./node_modules/@chevrotain/utils/lib/src/api.js + + + +//# sourceMappingURL=api.js.map +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseSlice.js +/** + * The base implementation of `_.slice` without an iteratee call guard. + * + * @private + * @param {Array} array The array to slice. + * @param {number} [start=0] The start position. + * @param {number} [end=array.length] The end position. + * @returns {Array} Returns the slice of `array`. + */ +function baseSlice(array, start, end) { + var index = -1, + length = array.length; + + if (start < 0) { + start = -start > length ? 0 : (length + start); + } + end = end > length ? length : end; + if (end < 0) { + end += length; + } + length = start > end ? 0 : ((end - start) >>> 0); + start >>>= 0; + + var result = Array(length); + while (++index < length) { + result[index] = array[index + start]; + } + return result; +} + +/* harmony default export */ const _baseSlice = (baseSlice); + +// EXTERNAL MODULE: ./node_modules/lodash-es/toInteger.js +var toInteger = __webpack_require__(18593); +;// CONCATENATED MODULE: ./node_modules/lodash-es/drop.js + + + +/** + * Creates a slice of `array` with `n` elements dropped from the beginning. + * + * @static + * @memberOf _ + * @since 0.5.0 + * @category Array + * @param {Array} array The array to query. + * @param {number} [n=1] The number of elements to drop. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {Array} Returns the slice of `array`. + * @example + * + * _.drop([1, 2, 3]); + * // => [2, 3] + * + * _.drop([1, 2, 3], 2); + * // => [3] + * + * _.drop([1, 2, 3], 5); + * // => [] + * + * _.drop([1, 2, 3], 0); + * // => [1, 2, 3] + */ +function drop(array, n, guard) { + var length = array == null ? 0 : array.length; + if (!length) { + return []; + } + n = (guard || n === undefined) ? 1 : (0,toInteger/* default */.A)(n); + return _baseSlice(array, n < 0 ? 0 : n, length); +} + +/* harmony default export */ const lodash_es_drop = (drop); + +// EXTERNAL MODULE: ./node_modules/lodash-es/isString.js +var isString = __webpack_require__(9703); +// EXTERNAL MODULE: ./node_modules/lodash-es/_assignValue.js +var _assignValue = __webpack_require__(52851); +// EXTERNAL MODULE: ./node_modules/lodash-es/_copyObject.js +var _copyObject = __webpack_require__(22031); +// EXTERNAL MODULE: ./node_modules/lodash-es/_createAssigner.js +var _createAssigner = __webpack_require__(3767); +// EXTERNAL MODULE: ./node_modules/lodash-es/isArrayLike.js +var isArrayLike = __webpack_require__(38446); +// EXTERNAL MODULE: ./node_modules/lodash-es/_isPrototype.js +var _isPrototype = __webpack_require__(97271); +// EXTERNAL MODULE: ./node_modules/lodash-es/keys.js +var keys = __webpack_require__(27422); +;// CONCATENATED MODULE: ./node_modules/lodash-es/assign.js + + + + + + + +/** Used for built-in method references. */ +var objectProto = Object.prototype; + +/** Used to check objects for own properties. */ +var assign_hasOwnProperty = objectProto.hasOwnProperty; + +/** + * Assigns own enumerable string keyed properties of source objects to the + * destination object. Source objects are applied from left to right. + * Subsequent sources overwrite property assignments of previous sources. + * + * **Note:** This method mutates `object` and is loosely based on + * [`Object.assign`](https://mdn.io/Object/assign). + * + * @static + * @memberOf _ + * @since 0.10.0 + * @category Object + * @param {Object} object The destination object. + * @param {...Object} [sources] The source objects. + * @returns {Object} Returns `object`. + * @see _.assignIn + * @example + * + * function Foo() { + * this.a = 1; + * } + * + * function Bar() { + * this.c = 3; + * } + * + * Foo.prototype.b = 2; + * Bar.prototype.d = 4; + * + * _.assign({ 'a': 0 }, new Foo, new Bar); + * // => { 'a': 1, 'c': 3 } + */ +var assign_assign = (0,_createAssigner/* default */.A)(function(object, source) { + if ((0,_isPrototype/* default */.A)(source) || (0,isArrayLike/* default */.A)(source)) { + (0,_copyObject/* default */.A)(source, (0,keys/* default */.A)(source), object); + return; + } + for (var key in source) { + if (assign_hasOwnProperty.call(source, key)) { + (0,_assignValue/* default */.A)(object, key, source[key]); + } + } +}); + +/* harmony default export */ const lodash_es_assign = (assign_assign); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_arrayMap.js +var _arrayMap = __webpack_require__(45572); +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseIteratee.js + 15 modules +var _baseIteratee = __webpack_require__(23958); +// EXTERNAL MODULE: ./node_modules/lodash-es/_basePickBy.js + 1 modules +var _basePickBy = __webpack_require__(99354); +// EXTERNAL MODULE: ./node_modules/lodash-es/_getAllKeysIn.js +var _getAllKeysIn = __webpack_require__(83973); +;// CONCATENATED MODULE: ./node_modules/lodash-es/pickBy.js + + + + + +/** + * Creates an object composed of the `object` properties `predicate` returns + * truthy for. The predicate is invoked with two arguments: (value, key). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Object + * @param {Object} object The source object. + * @param {Function} [predicate=_.identity] The function invoked per property. + * @returns {Object} Returns the new object. + * @example + * + * var object = { 'a': 1, 'b': '2', 'c': 3 }; + * + * _.pickBy(object, _.isNumber); + * // => { 'a': 1, 'c': 3 } + */ +function pickBy(object, predicate) { + if (object == null) { + return {}; + } + var props = (0,_arrayMap/* default */.A)((0,_getAllKeysIn/* default */.A)(object), function(prop) { + return [prop]; + }); + predicate = (0,_baseIteratee/* default */.A)(predicate); + return (0,_basePickBy/* default */.A)(object, props, function(value, path) { + return predicate(value, path[0]); + }); +} + +/* harmony default export */ const lodash_es_pickBy = (pickBy); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseGetTag.js + 2 modules +var _baseGetTag = __webpack_require__(88496); +// EXTERNAL MODULE: ./node_modules/lodash-es/isObjectLike.js +var isObjectLike = __webpack_require__(53098); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseIsRegExp.js + + + +/** `Object#toString` result references. */ +var regexpTag = '[object RegExp]'; + +/** + * The base implementation of `_.isRegExp` without Node.js optimizations. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a regexp, else `false`. + */ +function baseIsRegExp(value) { + return (0,isObjectLike/* default */.A)(value) && (0,_baseGetTag/* default */.A)(value) == regexpTag; +} + +/* harmony default export */ const _baseIsRegExp = (baseIsRegExp); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseUnary.js +var _baseUnary = __webpack_require__(52789); +// EXTERNAL MODULE: ./node_modules/lodash-es/_nodeUtil.js +var _nodeUtil = __webpack_require__(64841); +;// CONCATENATED MODULE: ./node_modules/lodash-es/isRegExp.js + + + + +/* Node.js helper references. */ +var nodeIsRegExp = _nodeUtil/* default */.A && _nodeUtil/* default */.A.isRegExp; + +/** + * Checks if `value` is classified as a `RegExp` object. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a regexp, else `false`. + * @example + * + * _.isRegExp(/abc/); + * // => true + * + * _.isRegExp('/abc/'); + * // => false + */ +var isRegExp = nodeIsRegExp ? (0,_baseUnary/* default */.A)(nodeIsRegExp) : _baseIsRegExp; + +/* harmony default export */ const lodash_es_isRegExp = (isRegExp); + +;// CONCATENATED MODULE: ./node_modules/@chevrotain/gast/lib/src/model.js + +// TODO: duplicated code to avoid extracting another sub-package -- how to avoid? +function tokenLabel(tokType) { + if (hasTokenLabel(tokType)) { + return tokType.LABEL; + } + else { + return tokType.name; + } +} +// TODO: duplicated code to avoid extracting another sub-package -- how to avoid? +function hasTokenLabel(obj) { + return (0,isString/* default */.A)(obj.LABEL) && obj.LABEL !== ""; +} +class AbstractProduction { + get definition() { + return this._definition; + } + set definition(value) { + this._definition = value; + } + constructor(_definition) { + this._definition = _definition; + } + accept(visitor) { + visitor.visit(this); + (0,forEach/* default */.A)(this.definition, (prod) => { + prod.accept(visitor); + }); + } +} +class model_NonTerminal extends AbstractProduction { + constructor(options) { + super([]); + this.idx = 1; + lodash_es_assign(this, lodash_es_pickBy(options, (v) => v !== undefined)); + } + set definition(definition) { + // immutable + } + get definition() { + if (this.referencedRule !== undefined) { + return this.referencedRule.definition; + } + return []; + } + accept(visitor) { + visitor.visit(this); + // don't visit children of a reference, we will get cyclic infinite loops if we do so + } +} +class Rule extends AbstractProduction { + constructor(options) { + super(options.definition); + this.orgText = ""; + lodash_es_assign(this, lodash_es_pickBy(options, (v) => v !== undefined)); + } +} +class Alternative extends AbstractProduction { + constructor(options) { + super(options.definition); + this.ignoreAmbiguities = false; + lodash_es_assign(this, lodash_es_pickBy(options, (v) => v !== undefined)); + } +} +class Option extends AbstractProduction { + constructor(options) { + super(options.definition); + this.idx = 1; + lodash_es_assign(this, lodash_es_pickBy(options, (v) => v !== undefined)); + } +} +class RepetitionMandatory extends AbstractProduction { + constructor(options) { + super(options.definition); + this.idx = 1; + lodash_es_assign(this, lodash_es_pickBy(options, (v) => v !== undefined)); + } +} +class RepetitionMandatoryWithSeparator extends AbstractProduction { + constructor(options) { + super(options.definition); + this.idx = 1; + lodash_es_assign(this, lodash_es_pickBy(options, (v) => v !== undefined)); + } +} +class Repetition extends AbstractProduction { + constructor(options) { + super(options.definition); + this.idx = 1; + lodash_es_assign(this, lodash_es_pickBy(options, (v) => v !== undefined)); + } +} +class RepetitionWithSeparator extends AbstractProduction { + constructor(options) { + super(options.definition); + this.idx = 1; + lodash_es_assign(this, lodash_es_pickBy(options, (v) => v !== undefined)); + } +} +class Alternation extends AbstractProduction { + get definition() { + return this._definition; + } + set definition(value) { + this._definition = value; + } + constructor(options) { + super(options.definition); + this.idx = 1; + this.ignoreAmbiguities = false; + this.hasPredicates = false; + lodash_es_assign(this, lodash_es_pickBy(options, (v) => v !== undefined)); + } +} +class Terminal { + constructor(options) { + this.idx = 1; + lodash_es_assign(this, lodash_es_pickBy(options, (v) => v !== undefined)); + } + accept(visitor) { + visitor.visit(this); + } +} +function serializeGrammar(topRules) { + return (0,lodash_es_map/* default */.A)(topRules, serializeProduction); +} +function serializeProduction(node) { + function convertDefinition(definition) { + return (0,lodash_es_map/* default */.A)(definition, serializeProduction); + } + /* istanbul ignore else */ + if (node instanceof model_NonTerminal) { + const serializedNonTerminal = { + type: "NonTerminal", + name: node.nonTerminalName, + idx: node.idx, + }; + if ((0,isString/* default */.A)(node.label)) { + serializedNonTerminal.label = node.label; + } + return serializedNonTerminal; + } + else if (node instanceof Alternative) { + return { + type: "Alternative", + definition: convertDefinition(node.definition), + }; + } + else if (node instanceof Option) { + return { + type: "Option", + idx: node.idx, + definition: convertDefinition(node.definition), + }; + } + else if (node instanceof RepetitionMandatory) { + return { + type: "RepetitionMandatory", + idx: node.idx, + definition: convertDefinition(node.definition), + }; + } + else if (node instanceof RepetitionMandatoryWithSeparator) { + return { + type: "RepetitionMandatoryWithSeparator", + idx: node.idx, + separator: (serializeProduction(new Terminal({ terminalType: node.separator }))), + definition: convertDefinition(node.definition), + }; + } + else if (node instanceof RepetitionWithSeparator) { + return { + type: "RepetitionWithSeparator", + idx: node.idx, + separator: (serializeProduction(new Terminal({ terminalType: node.separator }))), + definition: convertDefinition(node.definition), + }; + } + else if (node instanceof Repetition) { + return { + type: "Repetition", + idx: node.idx, + definition: convertDefinition(node.definition), + }; + } + else if (node instanceof Alternation) { + return { + type: "Alternation", + idx: node.idx, + definition: convertDefinition(node.definition), + }; + } + else if (node instanceof Terminal) { + const serializedTerminal = { + type: "Terminal", + name: node.terminalType.name, + label: tokenLabel(node.terminalType), + idx: node.idx, + }; + if ((0,isString/* default */.A)(node.label)) { + serializedTerminal.terminalLabel = node.label; + } + const pattern = node.terminalType.PATTERN; + if (node.terminalType.PATTERN) { + serializedTerminal.pattern = lodash_es_isRegExp(pattern) + ? pattern.source + : pattern; + } + return serializedTerminal; + } + else if (node instanceof Rule) { + return { + type: "Rule", + name: node.name, + orgText: node.orgText, + definition: convertDefinition(node.definition), + }; + /* c8 ignore next 3 */ + } + else { + throw Error("non exhaustive match"); + } +} +//# sourceMappingURL=model.js.map +;// CONCATENATED MODULE: ./node_modules/@chevrotain/gast/lib/src/visitor.js + +class visitor_GAstVisitor { + visit(node) { + const nodeAny = node; + switch (nodeAny.constructor) { + case model_NonTerminal: + return this.visitNonTerminal(nodeAny); + case Alternative: + return this.visitAlternative(nodeAny); + case Option: + return this.visitOption(nodeAny); + case RepetitionMandatory: + return this.visitRepetitionMandatory(nodeAny); + case RepetitionMandatoryWithSeparator: + return this.visitRepetitionMandatoryWithSeparator(nodeAny); + case RepetitionWithSeparator: + return this.visitRepetitionWithSeparator(nodeAny); + case Repetition: + return this.visitRepetition(nodeAny); + case Alternation: + return this.visitAlternation(nodeAny); + case Terminal: + return this.visitTerminal(nodeAny); + case Rule: + return this.visitRule(nodeAny); + /* c8 ignore next 2 */ + default: + throw Error("non exhaustive match"); + } + } + /* c8 ignore next */ + visitNonTerminal(node) { } + /* c8 ignore next */ + visitAlternative(node) { } + /* c8 ignore next */ + visitOption(node) { } + /* c8 ignore next */ + visitRepetition(node) { } + /* c8 ignore next */ + visitRepetitionMandatory(node) { } + /* c8 ignore next 3 */ + visitRepetitionMandatoryWithSeparator(node) { } + /* c8 ignore next */ + visitRepetitionWithSeparator(node) { } + /* c8 ignore next */ + visitAlternation(node) { } + /* c8 ignore next */ + visitTerminal(node) { } + /* c8 ignore next */ + visitRule(node) { } +} +//# sourceMappingURL=visitor.js.map +// EXTERNAL MODULE: ./node_modules/lodash-es/_arraySome.js +var _arraySome = __webpack_require__(63736); +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseEach.js + 1 modules +var _baseEach = __webpack_require__(6240); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseSome.js + + +/** + * The base implementation of `_.some` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {boolean} Returns `true` if any element passes the predicate check, + * else `false`. + */ +function baseSome(collection, predicate) { + var result; + + (0,_baseEach/* default */.A)(collection, function(value, index, collection) { + result = predicate(value, index, collection); + return !result; + }); + return !!result; +} + +/* harmony default export */ const _baseSome = (baseSome); + +// EXTERNAL MODULE: ./node_modules/lodash-es/isArray.js +var isArray = __webpack_require__(92049); +// EXTERNAL MODULE: ./node_modules/lodash-es/_isIterateeCall.js +var _isIterateeCall = __webpack_require__(6832); +;// CONCATENATED MODULE: ./node_modules/lodash-es/some.js + + + + + + +/** + * Checks if `predicate` returns truthy for **any** element of `collection`. + * Iteration is stopped once `predicate` returns truthy. The predicate is + * invoked with three arguments: (value, index|key, collection). + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {boolean} Returns `true` if any element passes the predicate check, + * else `false`. + * @example + * + * _.some([null, 0, 'yes', false], Boolean); + * // => true + * + * var users = [ + * { 'user': 'barney', 'active': true }, + * { 'user': 'fred', 'active': false } + * ]; + * + * // The `_.matches` iteratee shorthand. + * _.some(users, { 'user': 'barney', 'active': false }); + * // => false + * + * // The `_.matchesProperty` iteratee shorthand. + * _.some(users, ['active', false]); + * // => true + * + * // The `_.property` iteratee shorthand. + * _.some(users, 'active'); + * // => true + */ +function some_some(collection, predicate, guard) { + var func = (0,isArray/* default */.A)(collection) ? _arraySome/* default */.A : _baseSome; + if (guard && (0,_isIterateeCall/* default */.A)(collection, predicate, guard)) { + predicate = undefined; + } + return func(collection, (0,_baseIteratee/* default */.A)(predicate, 3)); +} + +/* harmony default export */ const lodash_es_some = (some_some); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseIndexOf.js + 2 modules +var _baseIndexOf = __webpack_require__(60818); +;// CONCATENATED MODULE: ./node_modules/lodash-es/includes.js + + + + + + +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeMax = Math.max; + +/** + * Checks if `value` is in `collection`. If `collection` is a string, it's + * checked for a substring of `value`, otherwise + * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * is used for equality comparisons. If `fromIndex` is negative, it's used as + * the offset from the end of `collection`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object|string} collection The collection to inspect. + * @param {*} value The value to search for. + * @param {number} [fromIndex=0] The index to search from. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.reduce`. + * @returns {boolean} Returns `true` if `value` is found, else `false`. + * @example + * + * _.includes([1, 2, 3], 1); + * // => true + * + * _.includes([1, 2, 3], 1, 2); + * // => false + * + * _.includes({ 'a': 1, 'b': 2 }, 1); + * // => true + * + * _.includes('abcd', 'bc'); + * // => true + */ +function includes(collection, value, fromIndex, guard) { + collection = (0,isArrayLike/* default */.A)(collection) ? collection : (0,lodash_es_values/* default */.A)(collection); + fromIndex = (fromIndex && !guard) ? (0,toInteger/* default */.A)(fromIndex) : 0; + + var length = collection.length; + if (fromIndex < 0) { + fromIndex = nativeMax(length + fromIndex, 0); + } + return (0,isString/* default */.A)(collection) + ? (fromIndex <= length && collection.indexOf(value, fromIndex) > -1) + : (!!length && (0,_baseIndexOf/* default */.A)(collection, value, fromIndex) > -1); +} + +/* harmony default export */ const lodash_es_includes = (includes); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_arrayEvery.js +/** + * A specialized version of `_.every` for arrays without support for + * iteratee shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {boolean} Returns `true` if all elements pass the predicate check, + * else `false`. + */ +function arrayEvery(array, predicate) { + var index = -1, + length = array == null ? 0 : array.length; + + while (++index < length) { + if (!predicate(array[index], index, array)) { + return false; + } + } + return true; +} + +/* harmony default export */ const _arrayEvery = (arrayEvery); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseEvery.js + + +/** + * The base implementation of `_.every` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {boolean} Returns `true` if all elements pass the predicate check, + * else `false` + */ +function baseEvery(collection, predicate) { + var result = true; + (0,_baseEach/* default */.A)(collection, function(value, index, collection) { + result = !!predicate(value, index, collection); + return result; + }); + return result; +} + +/* harmony default export */ const _baseEvery = (baseEvery); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/every.js + + + + + + +/** + * Checks if `predicate` returns truthy for **all** elements of `collection`. + * Iteration is stopped once `predicate` returns falsey. The predicate is + * invoked with three arguments: (value, index|key, collection). + * + * **Note:** This method returns `true` for + * [empty collections](https://en.wikipedia.org/wiki/Empty_set) because + * [everything is true](https://en.wikipedia.org/wiki/Vacuous_truth) of + * elements of empty collections. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {boolean} Returns `true` if all elements pass the predicate check, + * else `false`. + * @example + * + * _.every([true, 1, null, 'yes'], Boolean); + * // => false + * + * var users = [ + * { 'user': 'barney', 'age': 36, 'active': false }, + * { 'user': 'fred', 'age': 40, 'active': false } + * ]; + * + * // The `_.matches` iteratee shorthand. + * _.every(users, { 'user': 'barney', 'active': false }); + * // => false + * + * // The `_.matchesProperty` iteratee shorthand. + * _.every(users, ['active', false]); + * // => true + * + * // The `_.property` iteratee shorthand. + * _.every(users, 'active'); + * // => false + */ +function every(collection, predicate, guard) { + var func = (0,isArray/* default */.A)(collection) ? _arrayEvery : _baseEvery; + if (guard && (0,_isIterateeCall/* default */.A)(collection, predicate, guard)) { + predicate = undefined; + } + return func(collection, (0,_baseIteratee/* default */.A)(predicate, 3)); +} + +/* harmony default export */ const lodash_es_every = (every); + +;// CONCATENATED MODULE: ./node_modules/@chevrotain/gast/lib/src/helpers.js + + +function isSequenceProd(prod) { + return (prod instanceof Alternative || + prod instanceof Option || + prod instanceof Repetition || + prod instanceof RepetitionMandatory || + prod instanceof RepetitionMandatoryWithSeparator || + prod instanceof RepetitionWithSeparator || + prod instanceof Terminal || + prod instanceof Rule); +} +function isOptionalProd(prod, alreadyVisited = []) { + const isDirectlyOptional = prod instanceof Option || + prod instanceof Repetition || + prod instanceof RepetitionWithSeparator; + if (isDirectlyOptional) { + return true; + } + // note that this can cause infinite loop if one optional empty TOP production has a cyclic dependency with another + // empty optional top rule + // may be indirectly optional ((A?B?C?) | (D?E?F?)) + if (prod instanceof Alternation) { + // for OR its enough for just one of the alternatives to be optional + return lodash_es_some(prod.definition, (subProd) => { + return isOptionalProd(subProd, alreadyVisited); + }); + } + else if (prod instanceof model_NonTerminal && lodash_es_includes(alreadyVisited, prod)) { + // avoiding stack overflow due to infinite recursion + return false; + } + else if (prod instanceof AbstractProduction) { + if (prod instanceof model_NonTerminal) { + alreadyVisited.push(prod); + } + return lodash_es_every(prod.definition, (subProd) => { + return isOptionalProd(subProd, alreadyVisited); + }); + } + else { + return false; + } +} +function isBranchingProd(prod) { + return prod instanceof Alternation; +} +function getProductionDslName(prod) { + /* istanbul ignore else */ + if (prod instanceof model_NonTerminal) { + return "SUBRULE"; + } + else if (prod instanceof Option) { + return "OPTION"; + } + else if (prod instanceof Alternation) { + return "OR"; + } + else if (prod instanceof RepetitionMandatory) { + return "AT_LEAST_ONE"; + } + else if (prod instanceof RepetitionMandatoryWithSeparator) { + return "AT_LEAST_ONE_SEP"; + } + else if (prod instanceof RepetitionWithSeparator) { + return "MANY_SEP"; + } + else if (prod instanceof Repetition) { + return "MANY"; + } + else if (prod instanceof Terminal) { + return "CONSUME"; + /* c8 ignore next 3 */ + } + else { + throw Error("non exhaustive match"); + } +} +//# sourceMappingURL=helpers.js.map +;// CONCATENATED MODULE: ./node_modules/@chevrotain/gast/lib/src/api.js + + + +//# sourceMappingURL=api.js.map +;// CONCATENATED MODULE: ./node_modules/chevrotain/lib/src/parse/grammar/rest.js + + +/** + * A Grammar Walker that computes the "remaining" grammar "after" a productions in the grammar. + */ +class RestWalker { + walk(prod, prevRest = []) { + (0,forEach/* default */.A)(prod.definition, (subProd, index) => { + const currRest = lodash_es_drop(prod.definition, index + 1); + /* istanbul ignore else */ + if (subProd instanceof model_NonTerminal) { + this.walkProdRef(subProd, currRest, prevRest); + } + else if (subProd instanceof Terminal) { + this.walkTerminal(subProd, currRest, prevRest); + } + else if (subProd instanceof Alternative) { + this.walkFlat(subProd, currRest, prevRest); + } + else if (subProd instanceof Option) { + this.walkOption(subProd, currRest, prevRest); + } + else if (subProd instanceof RepetitionMandatory) { + this.walkAtLeastOne(subProd, currRest, prevRest); + } + else if (subProd instanceof RepetitionMandatoryWithSeparator) { + this.walkAtLeastOneSep(subProd, currRest, prevRest); + } + else if (subProd instanceof RepetitionWithSeparator) { + this.walkManySep(subProd, currRest, prevRest); + } + else if (subProd instanceof Repetition) { + this.walkMany(subProd, currRest, prevRest); + } + else if (subProd instanceof Alternation) { + this.walkOr(subProd, currRest, prevRest); + } + else { + throw Error("non exhaustive match"); + } + }); + } + walkTerminal(terminal, currRest, prevRest) { } + walkProdRef(refProd, currRest, prevRest) { } + walkFlat(flatProd, currRest, prevRest) { + // ABCDEF => after the D the rest is EF + const fullOrRest = currRest.concat(prevRest); + this.walk(flatProd, fullOrRest); + } + walkOption(optionProd, currRest, prevRest) { + // ABC(DE)?F => after the (DE)? the rest is F + const fullOrRest = currRest.concat(prevRest); + this.walk(optionProd, fullOrRest); + } + walkAtLeastOne(atLeastOneProd, currRest, prevRest) { + // ABC(DE)+F => after the (DE)+ the rest is (DE)?F + const fullAtLeastOneRest = [ + new Option({ definition: atLeastOneProd.definition }), + ].concat(currRest, prevRest); + this.walk(atLeastOneProd, fullAtLeastOneRest); + } + walkAtLeastOneSep(atLeastOneSepProd, currRest, prevRest) { + // ABC DE(,DE)* F => after the (,DE)+ the rest is (,DE)?F + const fullAtLeastOneSepRest = restForRepetitionWithSeparator(atLeastOneSepProd, currRest, prevRest); + this.walk(atLeastOneSepProd, fullAtLeastOneSepRest); + } + walkMany(manyProd, currRest, prevRest) { + // ABC(DE)*F => after the (DE)* the rest is (DE)?F + const fullManyRest = [ + new Option({ definition: manyProd.definition }), + ].concat(currRest, prevRest); + this.walk(manyProd, fullManyRest); + } + walkManySep(manySepProd, currRest, prevRest) { + // ABC (DE(,DE)*)? F => after the (,DE)* the rest is (,DE)?F + const fullManySepRest = restForRepetitionWithSeparator(manySepProd, currRest, prevRest); + this.walk(manySepProd, fullManySepRest); + } + walkOr(orProd, currRest, prevRest) { + // ABC(D|E|F)G => when finding the (D|E|F) the rest is G + const fullOrRest = currRest.concat(prevRest); + // walk all different alternatives + (0,forEach/* default */.A)(orProd.definition, (alt) => { + // wrapping each alternative in a single definition wrapper + // to avoid errors in computing the rest of that alternative in the invocation to computeInProdFollows + // (otherwise for OR([alt1,alt2]) alt2 will be considered in 'rest' of alt1 + const prodWrapper = new Alternative({ definition: [alt] }); + this.walk(prodWrapper, fullOrRest); + }); + } +} +function restForRepetitionWithSeparator(repSepProd, currRest, prevRest) { + const repSepRest = [ + new Option({ + definition: [ + new Terminal({ terminalType: repSepProd.separator }), + ].concat(repSepProd.definition), + }), + ]; + const fullRepSepRest = repSepRest.concat(currRest, prevRest); + return fullRepSepRest; +} +//# sourceMappingURL=rest.js.map +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseUniq.js + 1 modules +var _baseUniq = __webpack_require__(99902); +;// CONCATENATED MODULE: ./node_modules/lodash-es/uniq.js + + +/** + * Creates a duplicate-free version of an array, using + * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * for equality comparisons, in which only the first occurrence of each element + * is kept. The order of result values is determined by the order they occur + * in the array. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to inspect. + * @returns {Array} Returns the new duplicate free array. + * @example + * + * _.uniq([2, 1, 2]); + * // => [2, 1] + */ +function uniq(array) { + return (array && array.length) ? (0,_baseUniq/* default */.A)(array) : []; +} + +/* harmony default export */ const lodash_es_uniq = (uniq); + +// EXTERNAL MODULE: ./node_modules/lodash-es/flatten.js +var lodash_es_flatten = __webpack_require__(34098); +;// CONCATENATED MODULE: ./node_modules/chevrotain/lib/src/parse/grammar/first.js + + +function first(prod) { + /* istanbul ignore else */ + if (prod instanceof model_NonTerminal) { + // this could in theory cause infinite loops if + // (1) prod A refs prod B. + // (2) prod B refs prod A + // (3) AB can match the empty set + // in other words a cycle where everything is optional so the first will keep + // looking ahead for the next optional part and will never exit + // currently there is no safeguard for this unique edge case because + // (1) not sure a grammar in which this can happen is useful for anything (productive) + return first(prod.referencedRule); + } + else if (prod instanceof Terminal) { + return firstForTerminal(prod); + } + else if (isSequenceProd(prod)) { + return firstForSequence(prod); + } + else if (isBranchingProd(prod)) { + return firstForBranching(prod); + } + else { + throw Error("non exhaustive match"); + } +} +function firstForSequence(prod) { + let firstSet = []; + const seq = prod.definition; + let nextSubProdIdx = 0; + let hasInnerProdsRemaining = seq.length > nextSubProdIdx; + let currSubProd; + // so we enter the loop at least once (if the definition is not empty + let isLastInnerProdOptional = true; + // scan a sequence until it's end or until we have found a NONE optional production in it + while (hasInnerProdsRemaining && isLastInnerProdOptional) { + currSubProd = seq[nextSubProdIdx]; + isLastInnerProdOptional = isOptionalProd(currSubProd); + firstSet = firstSet.concat(first(currSubProd)); + nextSubProdIdx = nextSubProdIdx + 1; + hasInnerProdsRemaining = seq.length > nextSubProdIdx; + } + return lodash_es_uniq(firstSet); +} +function firstForBranching(prod) { + const allAlternativesFirsts = (0,lodash_es_map/* default */.A)(prod.definition, (innerProd) => { + return first(innerProd); + }); + return lodash_es_uniq((0,lodash_es_flatten/* default */.A)(allAlternativesFirsts)); +} +function firstForTerminal(terminal) { + return [terminal.terminalType]; +} +//# sourceMappingURL=first.js.map +;// CONCATENATED MODULE: ./node_modules/chevrotain/lib/src/parse/constants.js +// TODO: can this be removed? where is it used? +const constants_IN = "_~IN~_"; +//# sourceMappingURL=constants.js.map +;// CONCATENATED MODULE: ./node_modules/chevrotain/lib/src/parse/grammar/follow.js + + + + + +// This ResyncFollowsWalker computes all of the follows required for RESYNC +// (skipping reference production). +class ResyncFollowsWalker extends RestWalker { + constructor(topProd) { + super(); + this.topProd = topProd; + this.follows = {}; + } + startWalking() { + this.walk(this.topProd); + return this.follows; + } + walkTerminal(terminal, currRest, prevRest) { + // do nothing! just like in the public sector after 13:00 + } + walkProdRef(refProd, currRest, prevRest) { + const followName = buildBetweenProdsFollowPrefix(refProd.referencedRule, refProd.idx) + + this.topProd.name; + const fullRest = currRest.concat(prevRest); + const restProd = new Alternative({ definition: fullRest }); + const t_in_topProd_follows = first(restProd); + this.follows[followName] = t_in_topProd_follows; + } +} +function computeAllProdsFollows(topProductions) { + const reSyncFollows = {}; + (0,forEach/* default */.A)(topProductions, (topProd) => { + const currRefsFollow = new ResyncFollowsWalker(topProd).startWalking(); + lodash_es_assign(reSyncFollows, currRefsFollow); + }); + return reSyncFollows; +} +function buildBetweenProdsFollowPrefix(inner, occurenceInParent) { + return inner.name + occurenceInParent + constants_IN; +} +function buildInProdFollowPrefix(terminal) { + const terminalName = terminal.terminalType.name; + return terminalName + terminal.idx + IN; +} +//# sourceMappingURL=follow.js.map +// EXTERNAL MODULE: ./node_modules/lodash-es/isUndefined.js +var isUndefined = __webpack_require__(69592); +// EXTERNAL MODULE: ./node_modules/lodash-es/defaults.js +var defaults = __webpack_require__(23068); +// EXTERNAL MODULE: ./node_modules/lodash-es/_arrayFilter.js +var _arrayFilter = __webpack_require__(2634); +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseFilter.js +var _baseFilter = __webpack_require__(51790); +;// CONCATENATED MODULE: ./node_modules/lodash-es/negate.js +/** Error message constants. */ +var FUNC_ERROR_TEXT = 'Expected a function'; + +/** + * Creates a function that negates the result of the predicate `func`. The + * `func` predicate is invoked with the `this` binding and arguments of the + * created function. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Function + * @param {Function} predicate The predicate to negate. + * @returns {Function} Returns the new negated function. + * @example + * + * function isEven(n) { + * return n % 2 == 0; + * } + * + * _.filter([1, 2, 3, 4, 5, 6], _.negate(isEven)); + * // => [1, 3, 5] + */ +function negate(predicate) { + if (typeof predicate != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + return function() { + var args = arguments; + switch (args.length) { + case 0: return !predicate.call(this); + case 1: return !predicate.call(this, args[0]); + case 2: return !predicate.call(this, args[0], args[1]); + case 3: return !predicate.call(this, args[0], args[1], args[2]); + } + return !predicate.apply(this, args); + }; +} + +/* harmony default export */ const lodash_es_negate = (negate); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/reject.js + + + + + + +/** + * The opposite of `_.filter`; this method returns the elements of `collection` + * that `predicate` does **not** return truthy for. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @returns {Array} Returns the new filtered array. + * @see _.filter + * @example + * + * var users = [ + * { 'user': 'barney', 'age': 36, 'active': false }, + * { 'user': 'fred', 'age': 40, 'active': true } + * ]; + * + * _.reject(users, function(o) { return !o.active; }); + * // => objects for ['fred'] + * + * // The `_.matches` iteratee shorthand. + * _.reject(users, { 'age': 40, 'active': true }); + * // => objects for ['barney'] + * + * // The `_.matchesProperty` iteratee shorthand. + * _.reject(users, ['active', false]); + * // => objects for ['fred'] + * + * // The `_.property` iteratee shorthand. + * _.reject(users, 'active'); + * // => objects for ['barney'] + */ +function reject(collection, predicate) { + var func = (0,isArray/* default */.A)(collection) ? _arrayFilter/* default */.A : _baseFilter/* default */.A; + return func(collection, lodash_es_negate((0,_baseIteratee/* default */.A)(predicate, 3))); +} + +/* harmony default export */ const lodash_es_reject = (reject); + +// EXTERNAL MODULE: ./node_modules/lodash-es/isFunction.js +var isFunction = __webpack_require__(89610); +;// CONCATENATED MODULE: ./node_modules/lodash-es/indexOf.js + + + +/* Built-in method references for those with the same name as other `lodash` methods. */ +var indexOf_nativeMax = Math.max; + +/** + * Gets the index at which the first occurrence of `value` is found in `array` + * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * for equality comparisons. If `fromIndex` is negative, it's used as the + * offset from the end of `array`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {*} value The value to search for. + * @param {number} [fromIndex=0] The index to search from. + * @returns {number} Returns the index of the matched value, else `-1`. + * @example + * + * _.indexOf([1, 2, 1, 2], 2); + * // => 1 + * + * // Search from the `fromIndex`. + * _.indexOf([1, 2, 1, 2], 2, 2); + * // => 3 + */ +function indexOf(array, value, fromIndex) { + var length = array == null ? 0 : array.length; + if (!length) { + return -1; + } + var index = fromIndex == null ? 0 : (0,toInteger/* default */.A)(fromIndex); + if (index < 0) { + index = indexOf_nativeMax(length + index, 0); + } + return (0,_baseIndexOf/* default */.A)(array, value, index); +} + +/* harmony default export */ const lodash_es_indexOf = (indexOf); + +// EXTERNAL MODULE: ./node_modules/lodash-es/reduce.js + 2 modules +var reduce = __webpack_require__(89463); +// EXTERNAL MODULE: ./node_modules/lodash-es/filter.js +var filter = __webpack_require__(94092); +// EXTERNAL MODULE: ./node_modules/lodash-es/_SetCache.js + 2 modules +var _SetCache = __webpack_require__(62062); +// EXTERNAL MODULE: ./node_modules/lodash-es/_arrayIncludes.js +var _arrayIncludes = __webpack_require__(83149); +// EXTERNAL MODULE: ./node_modules/lodash-es/_arrayIncludesWith.js +var _arrayIncludesWith = __webpack_require__(87809); +// EXTERNAL MODULE: ./node_modules/lodash-es/_cacheHas.js +var _cacheHas = __webpack_require__(64099); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseDifference.js + + + + + + + +/** Used as the size to enable large array optimizations. */ +var LARGE_ARRAY_SIZE = 200; + +/** + * The base implementation of methods like `_.difference` without support + * for excluding multiple arrays or iteratee shorthands. + * + * @private + * @param {Array} array The array to inspect. + * @param {Array} values The values to exclude. + * @param {Function} [iteratee] The iteratee invoked per element. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns the new array of filtered values. + */ +function baseDifference(array, values, iteratee, comparator) { + var index = -1, + includes = _arrayIncludes/* default */.A, + isCommon = true, + length = array.length, + result = [], + valuesLength = values.length; + + if (!length) { + return result; + } + if (iteratee) { + values = (0,_arrayMap/* default */.A)(values, (0,_baseUnary/* default */.A)(iteratee)); + } + if (comparator) { + includes = _arrayIncludesWith/* default */.A; + isCommon = false; + } + else if (values.length >= LARGE_ARRAY_SIZE) { + includes = _cacheHas/* default */.A; + isCommon = false; + values = new _SetCache/* default */.A(values); + } + outer: + while (++index < length) { + var value = array[index], + computed = iteratee == null ? value : iteratee(value); + + value = (comparator || value !== 0) ? value : 0; + if (isCommon && computed === computed) { + var valuesIndex = valuesLength; + while (valuesIndex--) { + if (values[valuesIndex] === computed) { + continue outer; + } + } + result.push(value); + } + else if (!includes(values, computed, comparator)) { + result.push(value); + } + } + return result; +} + +/* harmony default export */ const _baseDifference = (baseDifference); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseFlatten.js + 1 modules +var _baseFlatten = __webpack_require__(13588); +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseRest.js +var _baseRest = __webpack_require__(24326); +// EXTERNAL MODULE: ./node_modules/lodash-es/isArrayLikeObject.js +var isArrayLikeObject = __webpack_require__(53533); +;// CONCATENATED MODULE: ./node_modules/lodash-es/difference.js + + + + + +/** + * Creates an array of `array` values not included in the other given arrays + * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * for equality comparisons. The order and references of result values are + * determined by the first array. + * + * **Note:** Unlike `_.pullAll`, this method returns a new array. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {...Array} [values] The values to exclude. + * @returns {Array} Returns the new array of filtered values. + * @see _.without, _.xor + * @example + * + * _.difference([2, 1], [2, 3]); + * // => [1] + */ +var difference = (0,_baseRest/* default */.A)(function(array, values) { + return (0,isArrayLikeObject/* default */.A)(array) + ? _baseDifference(array, (0,_baseFlatten/* default */.A)(values, 1, isArrayLikeObject/* default */.A, true)) + : []; +}); + +/* harmony default export */ const lodash_es_difference = (difference); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/compact.js +/** + * Creates an array with all falsey values removed. The values `false`, `null`, + * `0`, `""`, `undefined`, and `NaN` are falsey. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to compact. + * @returns {Array} Returns the new array of filtered values. + * @example + * + * _.compact([0, 1, false, 2, '', 3]); + * // => [1, 2, 3] + */ +function compact(array) { + var index = -1, + length = array == null ? 0 : array.length, + resIndex = 0, + result = []; + + while (++index < length) { + var value = array[index]; + if (value) { + result[resIndex++] = value; + } + } + return result; +} + +/* harmony default export */ const lodash_es_compact = (compact); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/head.js +/** + * Gets the first element of `array`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @alias first + * @category Array + * @param {Array} array The array to query. + * @returns {*} Returns the first element of `array`. + * @example + * + * _.head([1, 2, 3]); + * // => 1 + * + * _.head([]); + * // => undefined + */ +function head(array) { + return (array && array.length) ? array[0] : undefined; +} + +/* harmony default export */ const lodash_es_head = (head); + +// EXTERNAL MODULE: ./node_modules/lodash-es/find.js + 2 modules +var find = __webpack_require__(16145); +;// CONCATENATED MODULE: ./node_modules/chevrotain/lib/src/scan/reg_exp_parser.js + +let regExpAstCache = {}; +const regExpParser = new RegExpParser(); +function getRegExpAst(regExp) { + const regExpStr = regExp.toString(); + if (regExpAstCache.hasOwnProperty(regExpStr)) { + return regExpAstCache[regExpStr]; + } + else { + const regExpAst = regExpParser.pattern(regExpStr); + regExpAstCache[regExpStr] = regExpAst; + return regExpAst; + } +} +function clearRegExpParserCache() { + regExpAstCache = {}; +} +//# sourceMappingURL=reg_exp_parser.js.map +;// CONCATENATED MODULE: ./node_modules/chevrotain/lib/src/scan/reg_exp.js + + + + + +const complementErrorMessage = "Complement Sets are not supported for first char optimization"; +const failedOptimizationPrefixMsg = 'Unable to use "first char" lexer optimizations:\n'; +function getOptimizedStartCodesIndices(regExp, ensureOptimizations = false) { + try { + const ast = getRegExpAst(regExp); + const firstChars = firstCharOptimizedIndices(ast.value, {}, ast.flags.ignoreCase); + return firstChars; + } + catch (e) { + /* istanbul ignore next */ + // Testing this relies on the regexp-to-ast library having a bug... */ + // TODO: only the else branch needs to be ignored, try to fix with newer prettier / tsc + if (e.message === complementErrorMessage) { + if (ensureOptimizations) { + PRINT_WARNING(`${failedOptimizationPrefixMsg}` + + `\tUnable to optimize: < ${regExp.toString()} >\n` + + "\tComplement Sets cannot be automatically optimized.\n" + + "\tThis will disable the lexer's first char optimizations.\n" + + "\tSee: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#COMPLEMENT for details."); + } + } + else { + let msgSuffix = ""; + if (ensureOptimizations) { + msgSuffix = + "\n\tThis will disable the lexer's first char optimizations.\n" + + "\tSee: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#REGEXP_PARSING for details."; + } + PRINT_ERROR(`${failedOptimizationPrefixMsg}\n` + + `\tFailed parsing: < ${regExp.toString()} >\n` + + `\tUsing the @chevrotain/regexp-to-ast library\n` + + "\tPlease open an issue at: https://github.com/chevrotain/chevrotain/issues" + + msgSuffix); + } + } + return []; +} +function firstCharOptimizedIndices(ast, result, ignoreCase) { + switch (ast.type) { + case "Disjunction": + for (let i = 0; i < ast.value.length; i++) { + firstCharOptimizedIndices(ast.value[i], result, ignoreCase); + } + break; + case "Alternative": + const terms = ast.value; + for (let i = 0; i < terms.length; i++) { + const term = terms[i]; + // skip terms that cannot effect the first char results + switch (term.type) { + case "EndAnchor": + // A group back reference cannot affect potential starting char. + // because if a back reference is the first production than automatically + // the group being referenced has had to come BEFORE so its codes have already been added + case "GroupBackReference": + // assertions do not affect potential starting codes + case "Lookahead": + case "NegativeLookahead": + case "StartAnchor": + case "WordBoundary": + case "NonWordBoundary": + continue; + } + const atom = term; + switch (atom.type) { + case "Character": + addOptimizedIdxToResult(atom.value, result, ignoreCase); + break; + case "Set": + if (atom.complement === true) { + throw Error(complementErrorMessage); + } + (0,forEach/* default */.A)(atom.value, (code) => { + if (typeof code === "number") { + addOptimizedIdxToResult(code, result, ignoreCase); + } + else { + // range + const range = code; + // cannot optimize when ignoreCase is + if (ignoreCase === true) { + for (let rangeCode = range.from; rangeCode <= range.to; rangeCode++) { + addOptimizedIdxToResult(rangeCode, result, ignoreCase); + } + } + // Optimization (2 orders of magnitude less work for very large ranges) + else { + // handle unoptimized values + for (let rangeCode = range.from; rangeCode <= range.to && rangeCode < minOptimizationVal; rangeCode++) { + addOptimizedIdxToResult(rangeCode, result, ignoreCase); + } + // Less common charCode where we optimize for faster init time, by using larger "buckets" + if (range.to >= minOptimizationVal) { + const minUnOptVal = range.from >= minOptimizationVal + ? range.from + : minOptimizationVal; + const maxUnOptVal = range.to; + const minOptIdx = charCodeToOptimizedIndex(minUnOptVal); + const maxOptIdx = charCodeToOptimizedIndex(maxUnOptVal); + for (let currOptIdx = minOptIdx; currOptIdx <= maxOptIdx; currOptIdx++) { + result[currOptIdx] = currOptIdx; + } + } + } + } + }); + break; + case "Group": + firstCharOptimizedIndices(atom.value, result, ignoreCase); + break; + /* istanbul ignore next */ + default: + throw Error("Non Exhaustive Match"); + } + // reached a mandatory production, no more **start** codes can be found on this alternative + const isOptionalQuantifier = atom.quantifier !== undefined && atom.quantifier.atLeast === 0; + if ( + // A group may be optional due to empty contents /(?:)/ + // or if everything inside it is optional /((a)?)/ + (atom.type === "Group" && isWholeOptional(atom) === false) || + // If this term is not a group it may only be optional if it has an optional quantifier + (atom.type !== "Group" && isOptionalQuantifier === false)) { + break; + } + } + break; + /* istanbul ignore next */ + default: + throw Error("non exhaustive match!"); + } + // console.log(Object.keys(result).length) + return (0,lodash_es_values/* default */.A)(result); +} +function addOptimizedIdxToResult(code, result, ignoreCase) { + const optimizedCharIdx = charCodeToOptimizedIndex(code); + result[optimizedCharIdx] = optimizedCharIdx; + if (ignoreCase === true) { + handleIgnoreCase(code, result); + } +} +function handleIgnoreCase(code, result) { + const char = String.fromCharCode(code); + const upperChar = char.toUpperCase(); + /* istanbul ignore else */ + if (upperChar !== char) { + const optimizedCharIdx = charCodeToOptimizedIndex(upperChar.charCodeAt(0)); + result[optimizedCharIdx] = optimizedCharIdx; + } + else { + const lowerChar = char.toLowerCase(); + if (lowerChar !== char) { + const optimizedCharIdx = charCodeToOptimizedIndex(lowerChar.charCodeAt(0)); + result[optimizedCharIdx] = optimizedCharIdx; + } + } +} +function findCode(setNode, targetCharCodes) { + return (0,find/* default */.A)(setNode.value, (codeOrRange) => { + if (typeof codeOrRange === "number") { + return lodash_es_includes(targetCharCodes, codeOrRange); + } + else { + // range + const range = codeOrRange; + return ((0,find/* default */.A)(targetCharCodes, (targetCode) => range.from <= targetCode && targetCode <= range.to) !== undefined); + } + }); +} +function isWholeOptional(ast) { + const quantifier = ast.quantifier; + if (quantifier && quantifier.atLeast === 0) { + return true; + } + if (!ast.value) { + return false; + } + return (0,isArray/* default */.A)(ast.value) + ? lodash_es_every(ast.value, isWholeOptional) + : isWholeOptional(ast.value); +} +class CharCodeFinder extends BaseRegExpVisitor { + constructor(targetCharCodes) { + super(); + this.targetCharCodes = targetCharCodes; + this.found = false; + } + visitChildren(node) { + // No need to keep looking... + if (this.found === true) { + return; + } + // switch lookaheads as they do not actually consume any characters thus + // finding a charCode at lookahead context does not mean that regexp can actually contain it in a match. + switch (node.type) { + case "Lookahead": + this.visitLookahead(node); + return; + case "NegativeLookahead": + this.visitNegativeLookahead(node); + return; + } + super.visitChildren(node); + } + visitCharacter(node) { + if (lodash_es_includes(this.targetCharCodes, node.value)) { + this.found = true; + } + } + visitSet(node) { + if (node.complement) { + if (findCode(node, this.targetCharCodes) === undefined) { + this.found = true; + } + } + else { + if (findCode(node, this.targetCharCodes) !== undefined) { + this.found = true; + } + } + } +} +function canMatchCharCode(charCodes, pattern) { + if (pattern instanceof RegExp) { + const ast = getRegExpAst(pattern); + const charCodeFinder = new CharCodeFinder(charCodes); + charCodeFinder.visit(ast); + return charCodeFinder.found; + } + else { + return ((0,find/* default */.A)(pattern, (char) => { + return lodash_es_includes(charCodes, char.charCodeAt(0)); + }) !== undefined); + } +} +//# sourceMappingURL=reg_exp.js.map +;// CONCATENATED MODULE: ./node_modules/chevrotain/lib/src/scan/lexer.js + + + + + + +const PATTERN = "PATTERN"; +const DEFAULT_MODE = "defaultMode"; +const MODES = "modes"; +let SUPPORT_STICKY = typeof new RegExp("(?:)").sticky === "boolean"; +function disableSticky() { + SUPPORT_STICKY = false; +} +function enableSticky() { + SUPPORT_STICKY = true; +} +function analyzeTokenTypes(tokenTypes, options) { + options = (0,defaults/* default */.A)(options, { + useSticky: SUPPORT_STICKY, + debug: false, + safeMode: false, + positionTracking: "full", + lineTerminatorCharacters: ["\r", "\n"], + tracer: (msg, action) => action(), + }); + const tracer = options.tracer; + tracer("initCharCodeToOptimizedIndexMap", () => { + initCharCodeToOptimizedIndexMap(); + }); + let onlyRelevantTypes; + tracer("Reject Lexer.NA", () => { + onlyRelevantTypes = lodash_es_reject(tokenTypes, (currType) => { + return currType[PATTERN] === Lexer.NA; + }); + }); + let hasCustom = false; + let allTransformedPatterns; + tracer("Transform Patterns", () => { + hasCustom = false; + allTransformedPatterns = (0,lodash_es_map/* default */.A)(onlyRelevantTypes, (currType) => { + const currPattern = currType[PATTERN]; + /* istanbul ignore else */ + if (lodash_es_isRegExp(currPattern)) { + const regExpSource = currPattern.source; + if (regExpSource.length === 1 && + // only these regExp meta characters which can appear in a length one regExp + regExpSource !== "^" && + regExpSource !== "$" && + regExpSource !== "." && + !currPattern.ignoreCase) { + return regExpSource; + } + else if (regExpSource.length === 2 && + regExpSource[0] === "\\" && + // not a meta character + !lodash_es_includes([ + "d", + "D", + "s", + "S", + "t", + "r", + "n", + "t", + "0", + "c", + "b", + "B", + "f", + "v", + "w", + "W", + ], regExpSource[1])) { + // escaped meta Characters: /\+/ /\[/ + // or redundant escaping: /\a/ + // without the escaping "\" + return regExpSource[1]; + } + else { + return options.useSticky + ? addStickyFlag(currPattern) + : addStartOfInput(currPattern); + } + } + else if ((0,isFunction/* default */.A)(currPattern)) { + hasCustom = true; + // CustomPatternMatcherFunc - custom patterns do not require any transformations, only wrapping in a RegExp Like object + return { exec: currPattern }; + } + else if (typeof currPattern === "object") { + hasCustom = true; + // ICustomPattern + return currPattern; + } + else if (typeof currPattern === "string") { + if (currPattern.length === 1) { + return currPattern; + } + else { + const escapedRegExpString = currPattern.replace(/[\\^$.*+?()[\]{}|]/g, "\\$&"); + const wrappedRegExp = new RegExp(escapedRegExpString); + return options.useSticky + ? addStickyFlag(wrappedRegExp) + : addStartOfInput(wrappedRegExp); + } + } + else { + throw Error("non exhaustive match"); + } + }); + }); + let patternIdxToType; + let patternIdxToGroup; + let patternIdxToLongerAltIdxArr; + let patternIdxToPushMode; + let patternIdxToPopMode; + tracer("misc mapping", () => { + patternIdxToType = (0,lodash_es_map/* default */.A)(onlyRelevantTypes, (currType) => currType.tokenTypeIdx); + patternIdxToGroup = (0,lodash_es_map/* default */.A)(onlyRelevantTypes, (clazz) => { + const groupName = clazz.GROUP; + /* istanbul ignore next */ + if (groupName === Lexer.SKIPPED) { + return undefined; + } + else if ((0,isString/* default */.A)(groupName)) { + return groupName; + } + else if ((0,isUndefined/* default */.A)(groupName)) { + return false; + } + else { + throw Error("non exhaustive match"); + } + }); + patternIdxToLongerAltIdxArr = (0,lodash_es_map/* default */.A)(onlyRelevantTypes, (clazz) => { + const longerAltType = clazz.LONGER_ALT; + if (longerAltType) { + const longerAltIdxArr = (0,isArray/* default */.A)(longerAltType) + ? (0,lodash_es_map/* default */.A)(longerAltType, (type) => lodash_es_indexOf(onlyRelevantTypes, type)) + : [lodash_es_indexOf(onlyRelevantTypes, longerAltType)]; + return longerAltIdxArr; + } + }); + patternIdxToPushMode = (0,lodash_es_map/* default */.A)(onlyRelevantTypes, (clazz) => clazz.PUSH_MODE); + patternIdxToPopMode = (0,lodash_es_map/* default */.A)(onlyRelevantTypes, (clazz) => (0,has/* default */.A)(clazz, "POP_MODE")); + }); + let patternIdxToCanLineTerminator; + tracer("Line Terminator Handling", () => { + const lineTerminatorCharCodes = getCharCodes(options.lineTerminatorCharacters); + patternIdxToCanLineTerminator = (0,lodash_es_map/* default */.A)(onlyRelevantTypes, (tokType) => false); + if (options.positionTracking !== "onlyOffset") { + patternIdxToCanLineTerminator = (0,lodash_es_map/* default */.A)(onlyRelevantTypes, (tokType) => { + if ((0,has/* default */.A)(tokType, "LINE_BREAKS")) { + return !!tokType.LINE_BREAKS; + } + else { + return (checkLineBreaksIssues(tokType, lineTerminatorCharCodes) === false && + canMatchCharCode(lineTerminatorCharCodes, tokType.PATTERN)); + } + }); + } + }); + let patternIdxToIsCustom; + let patternIdxToShort; + let emptyGroups; + let patternIdxToConfig; + tracer("Misc Mapping #2", () => { + patternIdxToIsCustom = (0,lodash_es_map/* default */.A)(onlyRelevantTypes, isCustomPattern); + patternIdxToShort = (0,lodash_es_map/* default */.A)(allTransformedPatterns, isShortPattern); + emptyGroups = (0,reduce/* default */.A)(onlyRelevantTypes, (acc, clazz) => { + const groupName = clazz.GROUP; + if ((0,isString/* default */.A)(groupName) && !(groupName === Lexer.SKIPPED)) { + acc[groupName] = []; + } + return acc; + }, {}); + patternIdxToConfig = (0,lodash_es_map/* default */.A)(allTransformedPatterns, (x, idx) => { + return { + pattern: allTransformedPatterns[idx], + longerAlt: patternIdxToLongerAltIdxArr[idx], + canLineTerminator: patternIdxToCanLineTerminator[idx], + isCustom: patternIdxToIsCustom[idx], + short: patternIdxToShort[idx], + group: patternIdxToGroup[idx], + push: patternIdxToPushMode[idx], + pop: patternIdxToPopMode[idx], + tokenTypeIdx: patternIdxToType[idx], + tokenType: onlyRelevantTypes[idx], + }; + }); + }); + let canBeOptimized = true; + let charCodeToPatternIdxToConfig = []; + if (!options.safeMode) { + tracer("First Char Optimization", () => { + charCodeToPatternIdxToConfig = (0,reduce/* default */.A)(onlyRelevantTypes, (result, currTokType, idx) => { + if (typeof currTokType.PATTERN === "string") { + const charCode = currTokType.PATTERN.charCodeAt(0); + const optimizedIdx = charCodeToOptimizedIndex(charCode); + addToMapOfArrays(result, optimizedIdx, patternIdxToConfig[idx]); + } + else if ((0,isArray/* default */.A)(currTokType.START_CHARS_HINT)) { + let lastOptimizedIdx; + (0,forEach/* default */.A)(currTokType.START_CHARS_HINT, (charOrInt) => { + const charCode = typeof charOrInt === "string" + ? charOrInt.charCodeAt(0) + : charOrInt; + const currOptimizedIdx = charCodeToOptimizedIndex(charCode); + // Avoid adding the config multiple times + /* istanbul ignore else */ + // - Difficult to check this scenario effects as it is only a performance + // optimization that does not change correctness + if (lastOptimizedIdx !== currOptimizedIdx) { + lastOptimizedIdx = currOptimizedIdx; + addToMapOfArrays(result, currOptimizedIdx, patternIdxToConfig[idx]); + } + }); + } + else if (lodash_es_isRegExp(currTokType.PATTERN)) { + if (currTokType.PATTERN.unicode) { + canBeOptimized = false; + if (options.ensureOptimizations) { + PRINT_ERROR(`${failedOptimizationPrefixMsg}` + + `\tUnable to analyze < ${currTokType.PATTERN.toString()} > pattern.\n` + + "\tThe regexp unicode flag is not currently supported by the regexp-to-ast library.\n" + + "\tThis will disable the lexer's first char optimizations.\n" + + "\tFor details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNICODE_OPTIMIZE"); + } + } + else { + const optimizedCodes = getOptimizedStartCodesIndices(currTokType.PATTERN, options.ensureOptimizations); + /* istanbul ignore if */ + // start code will only be empty given an empty regExp or failure of regexp-to-ast library + // the first should be a different validation and the second cannot be tested. + if ((0,isEmpty/* default */.A)(optimizedCodes)) { + // we cannot understand what codes may start possible matches + // The optimization correctness requires knowing start codes for ALL patterns. + // Not actually sure this is an error, no debug message + canBeOptimized = false; + } + (0,forEach/* default */.A)(optimizedCodes, (code) => { + addToMapOfArrays(result, code, patternIdxToConfig[idx]); + }); + } + } + else { + if (options.ensureOptimizations) { + PRINT_ERROR(`${failedOptimizationPrefixMsg}` + + `\tTokenType: <${currTokType.name}> is using a custom token pattern without providing <start_chars_hint> parameter.\n` + + "\tThis will disable the lexer's first char optimizations.\n" + + "\tFor details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_OPTIMIZE"); + } + canBeOptimized = false; + } + return result; + }, []); + }); + } + return { + emptyGroups: emptyGroups, + patternIdxToConfig: patternIdxToConfig, + charCodeToPatternIdxToConfig: charCodeToPatternIdxToConfig, + hasCustom: hasCustom, + canBeOptimized: canBeOptimized, + }; +} +function validatePatterns(tokenTypes, validModesNames) { + let errors = []; + const missingResult = findMissingPatterns(tokenTypes); + errors = errors.concat(missingResult.errors); + const invalidResult = findInvalidPatterns(missingResult.valid); + const validTokenTypes = invalidResult.valid; + errors = errors.concat(invalidResult.errors); + errors = errors.concat(validateRegExpPattern(validTokenTypes)); + errors = errors.concat(findInvalidGroupType(validTokenTypes)); + errors = errors.concat(findModesThatDoNotExist(validTokenTypes, validModesNames)); + errors = errors.concat(findUnreachablePatterns(validTokenTypes)); + return errors; +} +function validateRegExpPattern(tokenTypes) { + let errors = []; + const withRegExpPatterns = (0,filter/* default */.A)(tokenTypes, (currTokType) => lodash_es_isRegExp(currTokType[PATTERN])); + errors = errors.concat(findEndOfInputAnchor(withRegExpPatterns)); + errors = errors.concat(findStartOfInputAnchor(withRegExpPatterns)); + errors = errors.concat(findUnsupportedFlags(withRegExpPatterns)); + errors = errors.concat(findDuplicatePatterns(withRegExpPatterns)); + errors = errors.concat(findEmptyMatchRegExps(withRegExpPatterns)); + return errors; +} +function findMissingPatterns(tokenTypes) { + const tokenTypesWithMissingPattern = (0,filter/* default */.A)(tokenTypes, (currType) => { + return !(0,has/* default */.A)(currType, PATTERN); + }); + const errors = (0,lodash_es_map/* default */.A)(tokenTypesWithMissingPattern, (currType) => { + return { + message: "Token Type: ->" + + currType.name + + "<- missing static 'PATTERN' property", + type: LexerDefinitionErrorType.MISSING_PATTERN, + tokenTypes: [currType], + }; + }); + const valid = lodash_es_difference(tokenTypes, tokenTypesWithMissingPattern); + return { errors, valid }; +} +function findInvalidPatterns(tokenTypes) { + const tokenTypesWithInvalidPattern = (0,filter/* default */.A)(tokenTypes, (currType) => { + const pattern = currType[PATTERN]; + return (!lodash_es_isRegExp(pattern) && + !(0,isFunction/* default */.A)(pattern) && + !(0,has/* default */.A)(pattern, "exec") && + !(0,isString/* default */.A)(pattern)); + }); + const errors = (0,lodash_es_map/* default */.A)(tokenTypesWithInvalidPattern, (currType) => { + return { + message: "Token Type: ->" + + currType.name + + "<- static 'PATTERN' can only be a RegExp, a" + + " Function matching the {CustomPatternMatcherFunc} type or an Object matching the {ICustomPattern} interface.", + type: LexerDefinitionErrorType.INVALID_PATTERN, + tokenTypes: [currType], + }; + }); + const valid = lodash_es_difference(tokenTypes, tokenTypesWithInvalidPattern); + return { errors, valid }; +} +const end_of_input = /[^\\][$]/; +function findEndOfInputAnchor(tokenTypes) { + class EndAnchorFinder extends BaseRegExpVisitor { + constructor() { + super(...arguments); + this.found = false; + } + visitEndAnchor(node) { + this.found = true; + } + } + const invalidRegex = (0,filter/* default */.A)(tokenTypes, (currType) => { + const pattern = currType.PATTERN; + try { + const regexpAst = getRegExpAst(pattern); + const endAnchorVisitor = new EndAnchorFinder(); + endAnchorVisitor.visit(regexpAst); + return endAnchorVisitor.found; + } + catch (e) { + // old behavior in case of runtime exceptions with regexp-to-ast. + /* istanbul ignore next - cannot ensure an error in regexp-to-ast*/ + return end_of_input.test(pattern.source); + } + }); + const errors = (0,lodash_es_map/* default */.A)(invalidRegex, (currType) => { + return { + message: "Unexpected RegExp Anchor Error:\n" + + "\tToken Type: ->" + + currType.name + + "<- static 'PATTERN' cannot contain end of input anchor '$'\n" + + "\tSee chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS" + + "\tfor details.", + type: LexerDefinitionErrorType.EOI_ANCHOR_FOUND, + tokenTypes: [currType], + }; + }); + return errors; +} +function findEmptyMatchRegExps(tokenTypes) { + const matchesEmptyString = (0,filter/* default */.A)(tokenTypes, (currType) => { + const pattern = currType.PATTERN; + return pattern.test(""); + }); + const errors = (0,lodash_es_map/* default */.A)(matchesEmptyString, (currType) => { + return { + message: "Token Type: ->" + + currType.name + + "<- static 'PATTERN' must not match an empty string", + type: LexerDefinitionErrorType.EMPTY_MATCH_PATTERN, + tokenTypes: [currType], + }; + }); + return errors; +} +const start_of_input = /[^\\[][\^]|^\^/; +function findStartOfInputAnchor(tokenTypes) { + class StartAnchorFinder extends BaseRegExpVisitor { + constructor() { + super(...arguments); + this.found = false; + } + visitStartAnchor(node) { + this.found = true; + } + } + const invalidRegex = (0,filter/* default */.A)(tokenTypes, (currType) => { + const pattern = currType.PATTERN; + try { + const regexpAst = getRegExpAst(pattern); + const startAnchorVisitor = new StartAnchorFinder(); + startAnchorVisitor.visit(regexpAst); + return startAnchorVisitor.found; + } + catch (e) { + // old behavior in case of runtime exceptions with regexp-to-ast. + /* istanbul ignore next - cannot ensure an error in regexp-to-ast*/ + return start_of_input.test(pattern.source); + } + }); + const errors = (0,lodash_es_map/* default */.A)(invalidRegex, (currType) => { + return { + message: "Unexpected RegExp Anchor Error:\n" + + "\tToken Type: ->" + + currType.name + + "<- static 'PATTERN' cannot contain start of input anchor '^'\n" + + "\tSee https://chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS" + + "\tfor details.", + type: LexerDefinitionErrorType.SOI_ANCHOR_FOUND, + tokenTypes: [currType], + }; + }); + return errors; +} +function findUnsupportedFlags(tokenTypes) { + const invalidFlags = (0,filter/* default */.A)(tokenTypes, (currType) => { + const pattern = currType[PATTERN]; + return pattern instanceof RegExp && (pattern.multiline || pattern.global); + }); + const errors = (0,lodash_es_map/* default */.A)(invalidFlags, (currType) => { + return { + message: "Token Type: ->" + + currType.name + + "<- static 'PATTERN' may NOT contain global('g') or multiline('m')", + type: LexerDefinitionErrorType.UNSUPPORTED_FLAGS_FOUND, + tokenTypes: [currType], + }; + }); + return errors; +} +// This can only test for identical duplicate RegExps, not semantically equivalent ones. +function findDuplicatePatterns(tokenTypes) { + const found = []; + let identicalPatterns = (0,lodash_es_map/* default */.A)(tokenTypes, (outerType) => { + return (0,reduce/* default */.A)(tokenTypes, (result, innerType) => { + if (outerType.PATTERN.source === innerType.PATTERN.source && + !lodash_es_includes(found, innerType) && + innerType.PATTERN !== Lexer.NA) { + // this avoids duplicates in the result, each Token Type may only appear in one "set" + // in essence we are creating Equivalence classes on equality relation. + found.push(innerType); + result.push(innerType); + return result; + } + return result; + }, []); + }); + identicalPatterns = lodash_es_compact(identicalPatterns); + const duplicatePatterns = (0,filter/* default */.A)(identicalPatterns, (currIdenticalSet) => { + return currIdenticalSet.length > 1; + }); + const errors = (0,lodash_es_map/* default */.A)(duplicatePatterns, (setOfIdentical) => { + const tokenTypeNames = (0,lodash_es_map/* default */.A)(setOfIdentical, (currType) => { + return currType.name; + }); + const dupPatternSrc = lodash_es_head(setOfIdentical).PATTERN; + return { + message: `The same RegExp pattern ->${dupPatternSrc}<-` + + `has been used in all of the following Token Types: ${tokenTypeNames.join(", ")} <-`, + type: LexerDefinitionErrorType.DUPLICATE_PATTERNS_FOUND, + tokenTypes: setOfIdentical, + }; + }); + return errors; +} +function findInvalidGroupType(tokenTypes) { + const invalidTypes = (0,filter/* default */.A)(tokenTypes, (clazz) => { + if (!(0,has/* default */.A)(clazz, "GROUP")) { + return false; + } + const group = clazz.GROUP; + return group !== Lexer.SKIPPED && group !== Lexer.NA && !(0,isString/* default */.A)(group); + }); + const errors = (0,lodash_es_map/* default */.A)(invalidTypes, (currType) => { + return { + message: "Token Type: ->" + + currType.name + + "<- static 'GROUP' can only be Lexer.SKIPPED/Lexer.NA/A String", + type: LexerDefinitionErrorType.INVALID_GROUP_TYPE_FOUND, + tokenTypes: [currType], + }; + }); + return errors; +} +function findModesThatDoNotExist(tokenTypes, validModes) { + const invalidModes = (0,filter/* default */.A)(tokenTypes, (clazz) => { + return (clazz.PUSH_MODE !== undefined && !lodash_es_includes(validModes, clazz.PUSH_MODE)); + }); + const errors = (0,lodash_es_map/* default */.A)(invalidModes, (tokType) => { + const msg = `Token Type: ->${tokType.name}<- static 'PUSH_MODE' value cannot refer to a Lexer Mode ->${tokType.PUSH_MODE}<-` + + `which does not exist`; + return { + message: msg, + type: LexerDefinitionErrorType.PUSH_MODE_DOES_NOT_EXIST, + tokenTypes: [tokType], + }; + }); + return errors; +} +function findUnreachablePatterns(tokenTypes) { + const errors = []; + const canBeTested = (0,reduce/* default */.A)(tokenTypes, (result, tokType, idx) => { + const pattern = tokType.PATTERN; + if (pattern === Lexer.NA) { + return result; + } + // a more comprehensive validation for all forms of regExps would require + // deeper regExp analysis capabilities + if ((0,isString/* default */.A)(pattern)) { + result.push({ str: pattern, idx, tokenType: tokType }); + } + else if (lodash_es_isRegExp(pattern) && noMetaChar(pattern)) { + result.push({ str: pattern.source, idx, tokenType: tokType }); + } + return result; + }, []); + (0,forEach/* default */.A)(tokenTypes, (tokType, testIdx) => { + (0,forEach/* default */.A)(canBeTested, ({ str, idx, tokenType }) => { + if (testIdx < idx && testTokenType(str, tokType.PATTERN)) { + const msg = `Token: ->${tokenType.name}<- can never be matched.\n` + + `Because it appears AFTER the Token Type ->${tokType.name}<-` + + `in the lexer's definition.\n` + + `See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNREACHABLE`; + errors.push({ + message: msg, + type: LexerDefinitionErrorType.UNREACHABLE_PATTERN, + tokenTypes: [tokType, tokenType], + }); + } + }); + }); + return errors; +} +function testTokenType(str, pattern) { + /* istanbul ignore else */ + if (lodash_es_isRegExp(pattern)) { + const regExpArray = pattern.exec(str); + return regExpArray !== null && regExpArray.index === 0; + } + else if ((0,isFunction/* default */.A)(pattern)) { + // maintain the API of custom patterns + return pattern(str, 0, [], {}); + } + else if ((0,has/* default */.A)(pattern, "exec")) { + // maintain the API of custom patterns + return pattern.exec(str, 0, [], {}); + } + else if (typeof pattern === "string") { + return pattern === str; + } + else { + throw Error("non exhaustive match"); + } +} +function noMetaChar(regExp) { + //https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp + const metaChars = [ + ".", + "\\", + "[", + "]", + "|", + "^", + "$", + "(", + ")", + "?", + "*", + "+", + "{", + ]; + return ((0,find/* default */.A)(metaChars, (char) => regExp.source.indexOf(char) !== -1) === undefined); +} +function addStartOfInput(pattern) { + const flags = pattern.ignoreCase ? "i" : ""; + // always wrapping in a none capturing group preceded by '^' to make sure matching can only work on start of input. + // duplicate/redundant start of input markers have no meaning (/^^^^A/ === /^A/) + return new RegExp(`^(?:${pattern.source})`, flags); +} +function addStickyFlag(pattern) { + const flags = pattern.ignoreCase ? "iy" : "y"; + // always wrapping in a none capturing group preceded by '^' to make sure matching can only work on start of input. + // duplicate/redundant start of input markers have no meaning (/^^^^A/ === /^A/) + return new RegExp(`${pattern.source}`, flags); +} +function performRuntimeChecks(lexerDefinition, trackLines, lineTerminatorCharacters) { + const errors = []; + // some run time checks to help the end users. + if (!(0,has/* default */.A)(lexerDefinition, DEFAULT_MODE)) { + errors.push({ + message: "A MultiMode Lexer cannot be initialized without a <" + + DEFAULT_MODE + + "> property in its definition\n", + type: LexerDefinitionErrorType.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE, + }); + } + if (!(0,has/* default */.A)(lexerDefinition, MODES)) { + errors.push({ + message: "A MultiMode Lexer cannot be initialized without a <" + + MODES + + "> property in its definition\n", + type: LexerDefinitionErrorType.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY, + }); + } + if ((0,has/* default */.A)(lexerDefinition, MODES) && + (0,has/* default */.A)(lexerDefinition, DEFAULT_MODE) && + !(0,has/* default */.A)(lexerDefinition.modes, lexerDefinition.defaultMode)) { + errors.push({ + message: `A MultiMode Lexer cannot be initialized with a ${DEFAULT_MODE}: <${lexerDefinition.defaultMode}>` + + `which does not exist\n`, + type: LexerDefinitionErrorType.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST, + }); + } + if ((0,has/* default */.A)(lexerDefinition, MODES)) { + (0,forEach/* default */.A)(lexerDefinition.modes, (currModeValue, currModeName) => { + (0,forEach/* default */.A)(currModeValue, (currTokType, currIdx) => { + if ((0,isUndefined/* default */.A)(currTokType)) { + errors.push({ + message: `A Lexer cannot be initialized using an undefined Token Type. Mode:` + + `<${currModeName}> at index: <${currIdx}>\n`, + type: LexerDefinitionErrorType.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED, + }); + } + else if ((0,has/* default */.A)(currTokType, "LONGER_ALT")) { + const longerAlt = (0,isArray/* default */.A)(currTokType.LONGER_ALT) + ? currTokType.LONGER_ALT + : [currTokType.LONGER_ALT]; + (0,forEach/* default */.A)(longerAlt, (currLongerAlt) => { + if (!(0,isUndefined/* default */.A)(currLongerAlt) && + !lodash_es_includes(currModeValue, currLongerAlt)) { + errors.push({ + message: `A MultiMode Lexer cannot be initialized with a longer_alt <${currLongerAlt.name}> on token <${currTokType.name}> outside of mode <${currModeName}>\n`, + type: LexerDefinitionErrorType.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE, + }); + } + }); + } + }); + }); + } + return errors; +} +function performWarningRuntimeChecks(lexerDefinition, trackLines, lineTerminatorCharacters) { + const warnings = []; + let hasAnyLineBreak = false; + const allTokenTypes = lodash_es_compact((0,lodash_es_flatten/* default */.A)((0,lodash_es_values/* default */.A)(lexerDefinition.modes))); + const concreteTokenTypes = lodash_es_reject(allTokenTypes, (currType) => currType[PATTERN] === Lexer.NA); + const terminatorCharCodes = getCharCodes(lineTerminatorCharacters); + if (trackLines) { + (0,forEach/* default */.A)(concreteTokenTypes, (tokType) => { + const currIssue = checkLineBreaksIssues(tokType, terminatorCharCodes); + if (currIssue !== false) { + const message = buildLineBreakIssueMessage(tokType, currIssue); + const warningDescriptor = { + message, + type: currIssue.issue, + tokenType: tokType, + }; + warnings.push(warningDescriptor); + } + else { + // we don't want to attempt to scan if the user explicitly specified the line_breaks option. + if ((0,has/* default */.A)(tokType, "LINE_BREAKS")) { + if (tokType.LINE_BREAKS === true) { + hasAnyLineBreak = true; + } + } + else { + if (canMatchCharCode(terminatorCharCodes, tokType.PATTERN)) { + hasAnyLineBreak = true; + } + } + } + }); + } + if (trackLines && !hasAnyLineBreak) { + warnings.push({ + message: "Warning: No LINE_BREAKS Found.\n" + + "\tThis Lexer has been defined to track line and column information,\n" + + "\tBut none of the Token Types can be identified as matching a line terminator.\n" + + "\tSee https://chevrotain.io/docs/guide/resolving_lexer_errors.html#LINE_BREAKS \n" + + "\tfor details.", + type: LexerDefinitionErrorType.NO_LINE_BREAKS_FLAGS, + }); + } + return warnings; +} +function cloneEmptyGroups(emptyGroups) { + const clonedResult = {}; + const groupKeys = (0,keys/* default */.A)(emptyGroups); + (0,forEach/* default */.A)(groupKeys, (currKey) => { + const currGroupValue = emptyGroups[currKey]; + /* istanbul ignore else */ + if ((0,isArray/* default */.A)(currGroupValue)) { + clonedResult[currKey] = []; + } + else { + throw Error("non exhaustive match"); + } + }); + return clonedResult; +} +// TODO: refactor to avoid duplication +function isCustomPattern(tokenType) { + const pattern = tokenType.PATTERN; + /* istanbul ignore else */ + if (lodash_es_isRegExp(pattern)) { + return false; + } + else if ((0,isFunction/* default */.A)(pattern)) { + // CustomPatternMatcherFunc - custom patterns do not require any transformations, only wrapping in a RegExp Like object + return true; + } + else if ((0,has/* default */.A)(pattern, "exec")) { + // ICustomPattern + return true; + } + else if ((0,isString/* default */.A)(pattern)) { + return false; + } + else { + throw Error("non exhaustive match"); + } +} +function isShortPattern(pattern) { + if ((0,isString/* default */.A)(pattern) && pattern.length === 1) { + return pattern.charCodeAt(0); + } + else { + return false; + } +} +/** + * Faster than using a RegExp for default newline detection during lexing. + */ +const LineTerminatorOptimizedTester = { + // implements /\n|\r\n?/g.test + test: function (text) { + const len = text.length; + for (let i = this.lastIndex; i < len; i++) { + const c = text.charCodeAt(i); + if (c === 10) { + this.lastIndex = i + 1; + return true; + } + else if (c === 13) { + if (text.charCodeAt(i + 1) === 10) { + this.lastIndex = i + 2; + } + else { + this.lastIndex = i + 1; + } + return true; + } + } + return false; + }, + lastIndex: 0, +}; +function checkLineBreaksIssues(tokType, lineTerminatorCharCodes) { + if ((0,has/* default */.A)(tokType, "LINE_BREAKS")) { + // if the user explicitly declared the line_breaks option we will respect their choice + // and assume it is correct. + return false; + } + else { + /* istanbul ignore else */ + if (lodash_es_isRegExp(tokType.PATTERN)) { + try { + // TODO: why is the casting suddenly needed? + canMatchCharCode(lineTerminatorCharCodes, tokType.PATTERN); + } + catch (e) { + /* istanbul ignore next - to test this we would have to mock <canMatchCharCode> to throw an error */ + return { + issue: LexerDefinitionErrorType.IDENTIFY_TERMINATOR, + errMsg: e.message, + }; + } + return false; + } + else if ((0,isString/* default */.A)(tokType.PATTERN)) { + // string literal patterns can always be analyzed to detect line terminator usage + return false; + } + else if (isCustomPattern(tokType)) { + // custom token types + return { issue: LexerDefinitionErrorType.CUSTOM_LINE_BREAK }; + } + else { + throw Error("non exhaustive match"); + } + } +} +function buildLineBreakIssueMessage(tokType, details) { + /* istanbul ignore else */ + if (details.issue === LexerDefinitionErrorType.IDENTIFY_TERMINATOR) { + return ("Warning: unable to identify line terminator usage in pattern.\n" + + `\tThe problem is in the <${tokType.name}> Token Type\n` + + `\t Root cause: ${details.errMsg}.\n` + + "\tFor details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#IDENTIFY_TERMINATOR"); + } + else if (details.issue === LexerDefinitionErrorType.CUSTOM_LINE_BREAK) { + return ("Warning: A Custom Token Pattern should specify the <line_breaks> option.\n" + + `\tThe problem is in the <${tokType.name}> Token Type\n` + + "\tFor details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_LINE_BREAK"); + } + else { + throw Error("non exhaustive match"); + } +} +function getCharCodes(charsOrCodes) { + const charCodes = (0,lodash_es_map/* default */.A)(charsOrCodes, (numOrString) => { + if ((0,isString/* default */.A)(numOrString)) { + return numOrString.charCodeAt(0); + } + else { + return numOrString; + } + }); + return charCodes; +} +function addToMapOfArrays(map, key, value) { + if (map[key] === undefined) { + map[key] = [value]; + } + else { + map[key].push(value); + } +} +const minOptimizationVal = 256; +/** + * We are mapping charCode above ASCI (256) into buckets each in the size of 256. + * This is because ASCI are the most common start chars so each one of those will get its own + * possible token configs vector. + * + * Tokens starting with charCodes "above" ASCI are uncommon, so we can "afford" + * to place these into buckets of possible token configs, What we gain from + * this is avoiding the case of creating an optimization 'charCodeToPatternIdxToConfig' + * which would contain 10,000+ arrays of small size (e.g unicode Identifiers scenario). + * Our 'charCodeToPatternIdxToConfig' max size will now be: + * 256 + (2^16 / 2^8) - 1 === 511 + * + * note the hack for fast division integer part extraction + * See: https://stackoverflow.com/a/4228528 + */ +let charCodeToOptimizedIdxMap = []; +function charCodeToOptimizedIndex(charCode) { + return charCode < minOptimizationVal + ? charCode + : charCodeToOptimizedIdxMap[charCode]; +} +/** + * This is a compromise between cold start / hot running performance + * Creating this array takes ~3ms on a modern machine, + * But if we perform the computation at runtime as needed the CSS Lexer benchmark + * performance degrades by ~10% + * + * TODO: Perhaps it should be lazy initialized only if a charCode > 255 is used. + */ +function initCharCodeToOptimizedIndexMap() { + if ((0,isEmpty/* default */.A)(charCodeToOptimizedIdxMap)) { + charCodeToOptimizedIdxMap = new Array(65536); + for (let i = 0; i < 65536; i++) { + charCodeToOptimizedIdxMap[i] = i > 255 ? 255 + ~~(i / 255) : i; + } + } +} +//# sourceMappingURL=lexer.js.map +// EXTERNAL MODULE: ./node_modules/lodash-es/identity.js +var identity = __webpack_require__(29008); +// EXTERNAL MODULE: ./node_modules/lodash-es/noop.js +var noop = __webpack_require__(42302); +// EXTERNAL MODULE: ./node_modules/lodash-es/last.js +var last = __webpack_require__(26666); +;// CONCATENATED MODULE: ./node_modules/chevrotain/lib/src/scan/tokens.js + +function tokenStructuredMatcher(tokInstance, tokConstructor) { + const instanceType = tokInstance.tokenTypeIdx; + if (instanceType === tokConstructor.tokenTypeIdx) { + return true; + } + else { + return (tokConstructor.isParent === true && + tokConstructor.categoryMatchesMap[instanceType] === true); + } +} +// Optimized tokenMatcher in case our grammar does not use token categories +// Being so tiny it is much more likely to be in-lined and this avoid the function call overhead +function tokenStructuredMatcherNoCategories(token, tokType) { + return token.tokenTypeIdx === tokType.tokenTypeIdx; +} +let tokenShortNameIdx = 1; +const tokenIdxToClass = {}; +function augmentTokenTypes(tokenTypes) { + // collect the parent Token Types as well. + const tokenTypesAndParents = expandCategories(tokenTypes); + // add required tokenType and categoryMatches properties + assignTokenDefaultProps(tokenTypesAndParents); + // fill up the categoryMatches + assignCategoriesMapProp(tokenTypesAndParents); + assignCategoriesTokensProp(tokenTypesAndParents); + (0,forEach/* default */.A)(tokenTypesAndParents, (tokType) => { + tokType.isParent = tokType.categoryMatches.length > 0; + }); +} +function expandCategories(tokenTypes) { + let result = (0,clone/* default */.A)(tokenTypes); + let categories = tokenTypes; + let searching = true; + while (searching) { + categories = lodash_es_compact((0,lodash_es_flatten/* default */.A)((0,lodash_es_map/* default */.A)(categories, (currTokType) => currTokType.CATEGORIES))); + const newCategories = lodash_es_difference(categories, result); + result = result.concat(newCategories); + if ((0,isEmpty/* default */.A)(newCategories)) { + searching = false; + } + else { + categories = newCategories; + } + } + return result; +} +function assignTokenDefaultProps(tokenTypes) { + (0,forEach/* default */.A)(tokenTypes, (currTokType) => { + if (!hasShortKeyProperty(currTokType)) { + tokenIdxToClass[tokenShortNameIdx] = currTokType; + currTokType.tokenTypeIdx = tokenShortNameIdx++; + } + // CATEGORIES? : TokenType | TokenType[] + if (hasCategoriesProperty(currTokType) && + !(0,isArray/* default */.A)(currTokType.CATEGORIES) + // && + // !isUndefined(currTokType.CATEGORIES.PATTERN) + ) { + currTokType.CATEGORIES = [currTokType.CATEGORIES]; + } + if (!hasCategoriesProperty(currTokType)) { + currTokType.CATEGORIES = []; + } + if (!hasExtendingTokensTypesProperty(currTokType)) { + currTokType.categoryMatches = []; + } + if (!hasExtendingTokensTypesMapProperty(currTokType)) { + currTokType.categoryMatchesMap = {}; + } + }); +} +function assignCategoriesTokensProp(tokenTypes) { + (0,forEach/* default */.A)(tokenTypes, (currTokType) => { + // avoid duplications + currTokType.categoryMatches = []; + (0,forEach/* default */.A)(currTokType.categoryMatchesMap, (val, key) => { + currTokType.categoryMatches.push(tokenIdxToClass[key].tokenTypeIdx); + }); + }); +} +function assignCategoriesMapProp(tokenTypes) { + (0,forEach/* default */.A)(tokenTypes, (currTokType) => { + singleAssignCategoriesToksMap([], currTokType); + }); +} +function singleAssignCategoriesToksMap(path, nextNode) { + (0,forEach/* default */.A)(path, (pathNode) => { + nextNode.categoryMatchesMap[pathNode.tokenTypeIdx] = true; + }); + (0,forEach/* default */.A)(nextNode.CATEGORIES, (nextCategory) => { + const newPath = path.concat(nextNode); + // avoids infinite loops due to cyclic categories. + if (!lodash_es_includes(newPath, nextCategory)) { + singleAssignCategoriesToksMap(newPath, nextCategory); + } + }); +} +function hasShortKeyProperty(tokType) { + return (0,has/* default */.A)(tokType, "tokenTypeIdx"); +} +function hasCategoriesProperty(tokType) { + return (0,has/* default */.A)(tokType, "CATEGORIES"); +} +function hasExtendingTokensTypesProperty(tokType) { + return (0,has/* default */.A)(tokType, "categoryMatches"); +} +function hasExtendingTokensTypesMapProperty(tokType) { + return (0,has/* default */.A)(tokType, "categoryMatchesMap"); +} +function isTokenType(tokType) { + return (0,has/* default */.A)(tokType, "tokenTypeIdx"); +} +//# sourceMappingURL=tokens.js.map +;// CONCATENATED MODULE: ./node_modules/chevrotain/lib/src/scan/lexer_errors_public.js +const defaultLexerErrorProvider = { + buildUnableToPopLexerModeMessage(token) { + return `Unable to pop Lexer Mode after encountering Token ->${token.image}<- The Mode Stack is empty`; + }, + buildUnexpectedCharactersMessage(fullText, startOffset, length, line, column) { + return (`unexpected character: ->${fullText.charAt(startOffset)}<- at offset: ${startOffset},` + ` skipped ${length} characters.`); + }, +}; +//# sourceMappingURL=lexer_errors_public.js.map +;// CONCATENATED MODULE: ./node_modules/chevrotain/lib/src/scan/lexer_public.js +/* provided dependency */ var lexer_public_console = __webpack_require__(96763); + + + + + + +var LexerDefinitionErrorType; +(function (LexerDefinitionErrorType) { + LexerDefinitionErrorType[LexerDefinitionErrorType["MISSING_PATTERN"] = 0] = "MISSING_PATTERN"; + LexerDefinitionErrorType[LexerDefinitionErrorType["INVALID_PATTERN"] = 1] = "INVALID_PATTERN"; + LexerDefinitionErrorType[LexerDefinitionErrorType["EOI_ANCHOR_FOUND"] = 2] = "EOI_ANCHOR_FOUND"; + LexerDefinitionErrorType[LexerDefinitionErrorType["UNSUPPORTED_FLAGS_FOUND"] = 3] = "UNSUPPORTED_FLAGS_FOUND"; + LexerDefinitionErrorType[LexerDefinitionErrorType["DUPLICATE_PATTERNS_FOUND"] = 4] = "DUPLICATE_PATTERNS_FOUND"; + LexerDefinitionErrorType[LexerDefinitionErrorType["INVALID_GROUP_TYPE_FOUND"] = 5] = "INVALID_GROUP_TYPE_FOUND"; + LexerDefinitionErrorType[LexerDefinitionErrorType["PUSH_MODE_DOES_NOT_EXIST"] = 6] = "PUSH_MODE_DOES_NOT_EXIST"; + LexerDefinitionErrorType[LexerDefinitionErrorType["MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE"] = 7] = "MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE"; + LexerDefinitionErrorType[LexerDefinitionErrorType["MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY"] = 8] = "MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY"; + LexerDefinitionErrorType[LexerDefinitionErrorType["MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST"] = 9] = "MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST"; + LexerDefinitionErrorType[LexerDefinitionErrorType["LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED"] = 10] = "LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED"; + LexerDefinitionErrorType[LexerDefinitionErrorType["SOI_ANCHOR_FOUND"] = 11] = "SOI_ANCHOR_FOUND"; + LexerDefinitionErrorType[LexerDefinitionErrorType["EMPTY_MATCH_PATTERN"] = 12] = "EMPTY_MATCH_PATTERN"; + LexerDefinitionErrorType[LexerDefinitionErrorType["NO_LINE_BREAKS_FLAGS"] = 13] = "NO_LINE_BREAKS_FLAGS"; + LexerDefinitionErrorType[LexerDefinitionErrorType["UNREACHABLE_PATTERN"] = 14] = "UNREACHABLE_PATTERN"; + LexerDefinitionErrorType[LexerDefinitionErrorType["IDENTIFY_TERMINATOR"] = 15] = "IDENTIFY_TERMINATOR"; + LexerDefinitionErrorType[LexerDefinitionErrorType["CUSTOM_LINE_BREAK"] = 16] = "CUSTOM_LINE_BREAK"; + LexerDefinitionErrorType[LexerDefinitionErrorType["MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE"] = 17] = "MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE"; +})(LexerDefinitionErrorType || (LexerDefinitionErrorType = {})); +const DEFAULT_LEXER_CONFIG = { + deferDefinitionErrorsHandling: false, + positionTracking: "full", + lineTerminatorsPattern: /\n|\r\n?/g, + lineTerminatorCharacters: ["\n", "\r"], + ensureOptimizations: false, + safeMode: false, + errorMessageProvider: defaultLexerErrorProvider, + traceInitPerf: false, + skipValidations: false, + recoveryEnabled: true, +}; +Object.freeze(DEFAULT_LEXER_CONFIG); +class Lexer { + constructor(lexerDefinition, config = DEFAULT_LEXER_CONFIG) { + this.lexerDefinition = lexerDefinition; + this.lexerDefinitionErrors = []; + this.lexerDefinitionWarning = []; + this.patternIdxToConfig = {}; + this.charCodeToPatternIdxToConfig = {}; + this.modes = []; + this.emptyGroups = {}; + this.trackStartLines = true; + this.trackEndLines = true; + this.hasCustom = false; + this.canModeBeOptimized = {}; + // Duplicated from the parser's perf trace trait to allow future extraction + // of the lexer to a separate package. + this.TRACE_INIT = (phaseDesc, phaseImpl) => { + // No need to optimize this using NOOP pattern because + // It is not called in a hot spot... + if (this.traceInitPerf === true) { + this.traceInitIndent++; + const indent = new Array(this.traceInitIndent + 1).join("\t"); + if (this.traceInitIndent < this.traceInitMaxIdent) { + lexer_public_console.log(`${indent}--> <${phaseDesc}>`); + } + const { time, value } = timer(phaseImpl); + /* istanbul ignore next - Difficult to reproduce specific performance behavior (>10ms) in tests */ + const traceMethod = time > 10 ? lexer_public_console.warn : lexer_public_console.log; + if (this.traceInitIndent < this.traceInitMaxIdent) { + traceMethod(`${indent}<-- <${phaseDesc}> time: ${time}ms`); + } + this.traceInitIndent--; + return value; + } + else { + return phaseImpl(); + } + }; + if (typeof config === "boolean") { + throw Error("The second argument to the Lexer constructor is now an ILexerConfig Object.\n" + + "a boolean 2nd argument is no longer supported"); + } + // todo: defaults func? + this.config = lodash_es_assign({}, DEFAULT_LEXER_CONFIG, config); + const traceInitVal = this.config.traceInitPerf; + if (traceInitVal === true) { + this.traceInitMaxIdent = Infinity; + this.traceInitPerf = true; + } + else if (typeof traceInitVal === "number") { + this.traceInitMaxIdent = traceInitVal; + this.traceInitPerf = true; + } + this.traceInitIndent = -1; + this.TRACE_INIT("Lexer Constructor", () => { + let actualDefinition; + let hasOnlySingleMode = true; + this.TRACE_INIT("Lexer Config handling", () => { + if (this.config.lineTerminatorsPattern === + DEFAULT_LEXER_CONFIG.lineTerminatorsPattern) { + // optimized built-in implementation for the defaults definition of lineTerminators + this.config.lineTerminatorsPattern = LineTerminatorOptimizedTester; + } + else { + if (this.config.lineTerminatorCharacters === + DEFAULT_LEXER_CONFIG.lineTerminatorCharacters) { + throw Error("Error: Missing <lineTerminatorCharacters> property on the Lexer config.\n" + + "\tFor details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#MISSING_LINE_TERM_CHARS"); + } + } + if (config.safeMode && config.ensureOptimizations) { + throw Error('"safeMode" and "ensureOptimizations" flags are mutually exclusive.'); + } + this.trackStartLines = /full|onlyStart/i.test(this.config.positionTracking); + this.trackEndLines = /full/i.test(this.config.positionTracking); + // Convert SingleModeLexerDefinition into a IMultiModeLexerDefinition. + if ((0,isArray/* default */.A)(lexerDefinition)) { + actualDefinition = { + modes: { defaultMode: (0,clone/* default */.A)(lexerDefinition) }, + defaultMode: DEFAULT_MODE, + }; + } + else { + // no conversion needed, input should already be a IMultiModeLexerDefinition + hasOnlySingleMode = false; + actualDefinition = (0,clone/* default */.A)(lexerDefinition); + } + }); + if (this.config.skipValidations === false) { + this.TRACE_INIT("performRuntimeChecks", () => { + this.lexerDefinitionErrors = this.lexerDefinitionErrors.concat(performRuntimeChecks(actualDefinition, this.trackStartLines, this.config.lineTerminatorCharacters)); + }); + this.TRACE_INIT("performWarningRuntimeChecks", () => { + this.lexerDefinitionWarning = this.lexerDefinitionWarning.concat(performWarningRuntimeChecks(actualDefinition, this.trackStartLines, this.config.lineTerminatorCharacters)); + }); + } + // for extra robustness to avoid throwing an none informative error message + actualDefinition.modes = actualDefinition.modes + ? actualDefinition.modes + : {}; + // an error of undefined TokenTypes will be detected in "performRuntimeChecks" above. + // this transformation is to increase robustness in the case of partially invalid lexer definition. + (0,forEach/* default */.A)(actualDefinition.modes, (currModeValue, currModeName) => { + actualDefinition.modes[currModeName] = lodash_es_reject(currModeValue, (currTokType) => (0,isUndefined/* default */.A)(currTokType)); + }); + const allModeNames = (0,keys/* default */.A)(actualDefinition.modes); + (0,forEach/* default */.A)(actualDefinition.modes, (currModDef, currModName) => { + this.TRACE_INIT(`Mode: <${currModName}> processing`, () => { + this.modes.push(currModName); + if (this.config.skipValidations === false) { + this.TRACE_INIT(`validatePatterns`, () => { + this.lexerDefinitionErrors = this.lexerDefinitionErrors.concat(validatePatterns(currModDef, allModeNames)); + }); + } + // If definition errors were encountered, the analysis phase may fail unexpectedly/ + // Considering a lexer with definition errors may never be used, there is no point + // to performing the analysis anyhow... + if ((0,isEmpty/* default */.A)(this.lexerDefinitionErrors)) { + augmentTokenTypes(currModDef); + let currAnalyzeResult; + this.TRACE_INIT(`analyzeTokenTypes`, () => { + currAnalyzeResult = analyzeTokenTypes(currModDef, { + lineTerminatorCharacters: this.config.lineTerminatorCharacters, + positionTracking: config.positionTracking, + ensureOptimizations: config.ensureOptimizations, + safeMode: config.safeMode, + tracer: this.TRACE_INIT, + }); + }); + this.patternIdxToConfig[currModName] = + currAnalyzeResult.patternIdxToConfig; + this.charCodeToPatternIdxToConfig[currModName] = + currAnalyzeResult.charCodeToPatternIdxToConfig; + this.emptyGroups = lodash_es_assign({}, this.emptyGroups, currAnalyzeResult.emptyGroups); + this.hasCustom = currAnalyzeResult.hasCustom || this.hasCustom; + this.canModeBeOptimized[currModName] = + currAnalyzeResult.canBeOptimized; + } + }); + }); + this.defaultMode = actualDefinition.defaultMode; + if (!(0,isEmpty/* default */.A)(this.lexerDefinitionErrors) && + !this.config.deferDefinitionErrorsHandling) { + const allErrMessages = (0,lodash_es_map/* default */.A)(this.lexerDefinitionErrors, (error) => { + return error.message; + }); + const allErrMessagesString = allErrMessages.join("-----------------------\n"); + throw new Error("Errors detected in definition of Lexer:\n" + allErrMessagesString); + } + // Only print warning if there are no errors, This will avoid pl + (0,forEach/* default */.A)(this.lexerDefinitionWarning, (warningDescriptor) => { + PRINT_WARNING(warningDescriptor.message); + }); + this.TRACE_INIT("Choosing sub-methods implementations", () => { + // Choose the relevant internal implementations for this specific parser. + // These implementations should be in-lined by the JavaScript engine + // to provide optimal performance in each scenario. + if (SUPPORT_STICKY) { + this.chopInput = identity/* default */.A; + this.match = this.matchWithTest; + } + else { + this.updateLastIndex = noop/* default */.A; + this.match = this.matchWithExec; + } + if (hasOnlySingleMode) { + this.handleModes = noop/* default */.A; + } + if (this.trackStartLines === false) { + this.computeNewColumn = identity/* default */.A; + } + if (this.trackEndLines === false) { + this.updateTokenEndLineColumnLocation = noop/* default */.A; + } + if (/full/i.test(this.config.positionTracking)) { + this.createTokenInstance = this.createFullToken; + } + else if (/onlyStart/i.test(this.config.positionTracking)) { + this.createTokenInstance = this.createStartOnlyToken; + } + else if (/onlyOffset/i.test(this.config.positionTracking)) { + this.createTokenInstance = this.createOffsetOnlyToken; + } + else { + throw Error(`Invalid <positionTracking> config option: "${this.config.positionTracking}"`); + } + if (this.hasCustom) { + this.addToken = this.addTokenUsingPush; + this.handlePayload = this.handlePayloadWithCustom; + } + else { + this.addToken = this.addTokenUsingMemberAccess; + this.handlePayload = this.handlePayloadNoCustom; + } + }); + this.TRACE_INIT("Failed Optimization Warnings", () => { + const unOptimizedModes = (0,reduce/* default */.A)(this.canModeBeOptimized, (cannotBeOptimized, canBeOptimized, modeName) => { + if (canBeOptimized === false) { + cannotBeOptimized.push(modeName); + } + return cannotBeOptimized; + }, []); + if (config.ensureOptimizations && !(0,isEmpty/* default */.A)(unOptimizedModes)) { + throw Error(`Lexer Modes: < ${unOptimizedModes.join(", ")} > cannot be optimized.\n` + + '\t Disable the "ensureOptimizations" lexer config flag to silently ignore this and run the lexer in an un-optimized mode.\n' + + "\t Or inspect the console log for details on how to resolve these issues."); + } + }); + this.TRACE_INIT("clearRegExpParserCache", () => { + clearRegExpParserCache(); + }); + this.TRACE_INIT("toFastProperties", () => { + toFastProperties(this); + }); + }); + } + tokenize(text, initialMode = this.defaultMode) { + if (!(0,isEmpty/* default */.A)(this.lexerDefinitionErrors)) { + const allErrMessages = (0,lodash_es_map/* default */.A)(this.lexerDefinitionErrors, (error) => { + return error.message; + }); + const allErrMessagesString = allErrMessages.join("-----------------------\n"); + throw new Error("Unable to Tokenize because Errors detected in definition of Lexer:\n" + + allErrMessagesString); + } + return this.tokenizeInternal(text, initialMode); + } + // There is quite a bit of duplication between this and "tokenizeInternalLazy" + // This is intentional due to performance considerations. + // this method also used quite a bit of `!` none null assertions because it is too optimized + // for `tsc` to always understand it is "safe" + tokenizeInternal(text, initialMode) { + let i, j, k, matchAltImage, longerAlt, matchedImage, payload, altPayload, imageLength, group, tokType, newToken, errLength, droppedChar, msg, match; + const orgText = text; + const orgLength = orgText.length; + let offset = 0; + let matchedTokensIndex = 0; + // initializing the tokensArray to the "guessed" size. + // guessing too little will still reduce the number of array re-sizes on pushes. + // guessing too large (Tested by guessing x4 too large) may cost a bit more of memory + // but would still have a faster runtime by avoiding (All but one) array resizing. + const guessedNumberOfTokens = this.hasCustom + ? 0 // will break custom token pattern APIs the matchedTokens array will contain undefined elements. + : Math.floor(text.length / 10); + const matchedTokens = new Array(guessedNumberOfTokens); + const errors = []; + let line = this.trackStartLines ? 1 : undefined; + let column = this.trackStartLines ? 1 : undefined; + const groups = cloneEmptyGroups(this.emptyGroups); + const trackLines = this.trackStartLines; + const lineTerminatorPattern = this.config.lineTerminatorsPattern; + let currModePatternsLength = 0; + let patternIdxToConfig = []; + let currCharCodeToPatternIdxToConfig = []; + const modeStack = []; + const emptyArray = []; + Object.freeze(emptyArray); + let getPossiblePatterns; + function getPossiblePatternsSlow() { + return patternIdxToConfig; + } + function getPossiblePatternsOptimized(charCode) { + const optimizedCharIdx = charCodeToOptimizedIndex(charCode); + const possiblePatterns = currCharCodeToPatternIdxToConfig[optimizedCharIdx]; + if (possiblePatterns === undefined) { + return emptyArray; + } + else { + return possiblePatterns; + } + } + const pop_mode = (popToken) => { + // TODO: perhaps avoid this error in the edge case there is no more input? + if (modeStack.length === 1 && + // if we have both a POP_MODE and a PUSH_MODE this is in-fact a "transition" + // So no error should occur. + popToken.tokenType.PUSH_MODE === undefined) { + // if we try to pop the last mode there lexer will no longer have ANY mode. + // thus the pop is ignored, an error will be created and the lexer will continue parsing in the previous mode. + const msg = this.config.errorMessageProvider.buildUnableToPopLexerModeMessage(popToken); + errors.push({ + offset: popToken.startOffset, + line: popToken.startLine, + column: popToken.startColumn, + length: popToken.image.length, + message: msg, + }); + } + else { + modeStack.pop(); + const newMode = (0,last/* default */.A)(modeStack); + patternIdxToConfig = this.patternIdxToConfig[newMode]; + currCharCodeToPatternIdxToConfig = + this.charCodeToPatternIdxToConfig[newMode]; + currModePatternsLength = patternIdxToConfig.length; + const modeCanBeOptimized = this.canModeBeOptimized[newMode] && this.config.safeMode === false; + if (currCharCodeToPatternIdxToConfig && modeCanBeOptimized) { + getPossiblePatterns = getPossiblePatternsOptimized; + } + else { + getPossiblePatterns = getPossiblePatternsSlow; + } + } + }; + function push_mode(newMode) { + modeStack.push(newMode); + currCharCodeToPatternIdxToConfig = + this.charCodeToPatternIdxToConfig[newMode]; + patternIdxToConfig = this.patternIdxToConfig[newMode]; + currModePatternsLength = patternIdxToConfig.length; + currModePatternsLength = patternIdxToConfig.length; + const modeCanBeOptimized = this.canModeBeOptimized[newMode] && this.config.safeMode === false; + if (currCharCodeToPatternIdxToConfig && modeCanBeOptimized) { + getPossiblePatterns = getPossiblePatternsOptimized; + } + else { + getPossiblePatterns = getPossiblePatternsSlow; + } + } + // this pattern seems to avoid a V8 de-optimization, although that de-optimization does not + // seem to matter performance wise. + push_mode.call(this, initialMode); + let currConfig; + const recoveryEnabled = this.config.recoveryEnabled; + while (offset < orgLength) { + matchedImage = null; + const nextCharCode = orgText.charCodeAt(offset); + const chosenPatternIdxToConfig = getPossiblePatterns(nextCharCode); + const chosenPatternsLength = chosenPatternIdxToConfig.length; + for (i = 0; i < chosenPatternsLength; i++) { + currConfig = chosenPatternIdxToConfig[i]; + const currPattern = currConfig.pattern; + payload = null; + // manually in-lined because > 600 chars won't be in-lined in V8 + const singleCharCode = currConfig.short; + if (singleCharCode !== false) { + if (nextCharCode === singleCharCode) { + // single character string + matchedImage = currPattern; + } + } + else if (currConfig.isCustom === true) { + match = currPattern.exec(orgText, offset, matchedTokens, groups); + if (match !== null) { + matchedImage = match[0]; + if (match.payload !== undefined) { + payload = match.payload; + } + } + else { + matchedImage = null; + } + } + else { + this.updateLastIndex(currPattern, offset); + matchedImage = this.match(currPattern, text, offset); + } + if (matchedImage !== null) { + // even though this pattern matched we must try a another longer alternative. + // this can be used to prioritize keywords over identifiers + longerAlt = currConfig.longerAlt; + if (longerAlt !== undefined) { + // TODO: micro optimize, avoid extra prop access + // by saving/linking longerAlt on the original config? + const longerAltLength = longerAlt.length; + for (k = 0; k < longerAltLength; k++) { + const longerAltConfig = patternIdxToConfig[longerAlt[k]]; + const longerAltPattern = longerAltConfig.pattern; + altPayload = null; + // single Char can never be a longer alt so no need to test it. + // manually in-lined because > 600 chars won't be in-lined in V8 + if (longerAltConfig.isCustom === true) { + match = longerAltPattern.exec(orgText, offset, matchedTokens, groups); + if (match !== null) { + matchAltImage = match[0]; + if (match.payload !== undefined) { + altPayload = match.payload; + } + } + else { + matchAltImage = null; + } + } + else { + this.updateLastIndex(longerAltPattern, offset); + matchAltImage = this.match(longerAltPattern, text, offset); + } + if (matchAltImage && matchAltImage.length > matchedImage.length) { + matchedImage = matchAltImage; + payload = altPayload; + currConfig = longerAltConfig; + // Exit the loop early after matching one of the longer alternatives + // The first matched alternative takes precedence + break; + } + } + } + break; + } + } + // successful match + if (matchedImage !== null) { + imageLength = matchedImage.length; + group = currConfig.group; + if (group !== undefined) { + tokType = currConfig.tokenTypeIdx; + // TODO: "offset + imageLength" and the new column may be computed twice in case of "full" location information inside + // createFullToken method + newToken = this.createTokenInstance(matchedImage, offset, tokType, currConfig.tokenType, line, column, imageLength); + this.handlePayload(newToken, payload); + // TODO: optimize NOOP in case there are no special groups? + if (group === false) { + matchedTokensIndex = this.addToken(matchedTokens, matchedTokensIndex, newToken); + } + else { + groups[group].push(newToken); + } + } + text = this.chopInput(text, imageLength); + offset = offset + imageLength; + // TODO: with newlines the column may be assigned twice + column = this.computeNewColumn(column, imageLength); + if (trackLines === true && currConfig.canLineTerminator === true) { + let numOfLTsInMatch = 0; + let foundTerminator; + let lastLTEndOffset; + lineTerminatorPattern.lastIndex = 0; + do { + foundTerminator = lineTerminatorPattern.test(matchedImage); + if (foundTerminator === true) { + lastLTEndOffset = lineTerminatorPattern.lastIndex - 1; + numOfLTsInMatch++; + } + } while (foundTerminator === true); + if (numOfLTsInMatch !== 0) { + line = line + numOfLTsInMatch; + column = imageLength - lastLTEndOffset; + this.updateTokenEndLineColumnLocation(newToken, group, lastLTEndOffset, numOfLTsInMatch, line, column, imageLength); + } + } + // will be NOOP if no modes present + this.handleModes(currConfig, pop_mode, push_mode, newToken); + } + else { + // error recovery, drop characters until we identify a valid token's start point + const errorStartOffset = offset; + const errorLine = line; + const errorColumn = column; + let foundResyncPoint = recoveryEnabled === false; + while (foundResyncPoint === false && offset < orgLength) { + // Identity Func (when sticky flag is enabled) + text = this.chopInput(text, 1); + offset++; + for (j = 0; j < currModePatternsLength; j++) { + const currConfig = patternIdxToConfig[j]; + const currPattern = currConfig.pattern; + // manually in-lined because > 600 chars won't be in-lined in V8 + const singleCharCode = currConfig.short; + if (singleCharCode !== false) { + if (orgText.charCodeAt(offset) === singleCharCode) { + // single character string + foundResyncPoint = true; + } + } + else if (currConfig.isCustom === true) { + foundResyncPoint = + currPattern.exec(orgText, offset, matchedTokens, groups) !== null; + } + else { + this.updateLastIndex(currPattern, offset); + foundResyncPoint = currPattern.exec(text) !== null; + } + if (foundResyncPoint === true) { + break; + } + } + } + errLength = offset - errorStartOffset; + column = this.computeNewColumn(column, errLength); + // at this point we either re-synced or reached the end of the input text + msg = this.config.errorMessageProvider.buildUnexpectedCharactersMessage(orgText, errorStartOffset, errLength, errorLine, errorColumn); + errors.push({ + offset: errorStartOffset, + line: errorLine, + column: errorColumn, + length: errLength, + message: msg, + }); + if (recoveryEnabled === false) { + break; + } + } + } + // if we do have custom patterns which push directly into the + // TODO: custom tokens should not push directly?? + if (!this.hasCustom) { + // if we guessed a too large size for the tokens array this will shrink it to the right size. + matchedTokens.length = matchedTokensIndex; + } + return { + tokens: matchedTokens, + groups: groups, + errors: errors, + }; + } + handleModes(config, pop_mode, push_mode, newToken) { + if (config.pop === true) { + // need to save the PUSH_MODE property as if the mode is popped + // patternIdxToPopMode is updated to reflect the new mode after popping the stack + const pushMode = config.push; + pop_mode(newToken); + if (pushMode !== undefined) { + push_mode.call(this, pushMode); + } + } + else if (config.push !== undefined) { + push_mode.call(this, config.push); + } + } + chopInput(text, length) { + return text.substring(length); + } + updateLastIndex(regExp, newLastIndex) { + regExp.lastIndex = newLastIndex; + } + // TODO: decrease this under 600 characters? inspect stripping comments option in TSC compiler + updateTokenEndLineColumnLocation(newToken, group, lastLTIdx, numOfLTsInMatch, line, column, imageLength) { + let lastCharIsLT, fixForEndingInLT; + if (group !== undefined) { + // a none skipped multi line Token, need to update endLine/endColumn + lastCharIsLT = lastLTIdx === imageLength - 1; + fixForEndingInLT = lastCharIsLT ? -1 : 0; + if (!(numOfLTsInMatch === 1 && lastCharIsLT === true)) { + // if a token ends in a LT that last LT only affects the line numbering of following Tokens + newToken.endLine = line + fixForEndingInLT; + // the last LT in a token does not affect the endColumn either as the [columnStart ... columnEnd) + // inclusive to exclusive range. + newToken.endColumn = column - 1 + -fixForEndingInLT; + } + // else single LT in the last character of a token, no need to modify the endLine/EndColumn + } + } + computeNewColumn(oldColumn, imageLength) { + return oldColumn + imageLength; + } + createOffsetOnlyToken(image, startOffset, tokenTypeIdx, tokenType) { + return { + image, + startOffset, + tokenTypeIdx, + tokenType, + }; + } + createStartOnlyToken(image, startOffset, tokenTypeIdx, tokenType, startLine, startColumn) { + return { + image, + startOffset, + startLine, + startColumn, + tokenTypeIdx, + tokenType, + }; + } + createFullToken(image, startOffset, tokenTypeIdx, tokenType, startLine, startColumn, imageLength) { + return { + image, + startOffset, + endOffset: startOffset + imageLength - 1, + startLine, + endLine: startLine, + startColumn, + endColumn: startColumn + imageLength - 1, + tokenTypeIdx, + tokenType, + }; + } + addTokenUsingPush(tokenVector, index, tokenToAdd) { + tokenVector.push(tokenToAdd); + return index; + } + addTokenUsingMemberAccess(tokenVector, index, tokenToAdd) { + tokenVector[index] = tokenToAdd; + index++; + return index; + } + handlePayloadNoCustom(token, payload) { } + handlePayloadWithCustom(token, payload) { + if (payload !== null) { + token.payload = payload; + } + } + matchWithTest(pattern, text, offset) { + const found = pattern.test(text); + if (found === true) { + return text.substring(offset, pattern.lastIndex); + } + return null; + } + matchWithExec(pattern, text) { + const regExpArray = pattern.exec(text); + return regExpArray !== null ? regExpArray[0] : null; + } +} +Lexer.SKIPPED = "This marks a skipped Token pattern, this means each token identified by it will" + + "be consumed and then thrown into oblivion, this can be used to for example to completely ignore whitespace."; +Lexer.NA = /NOT_APPLICABLE/; +//# sourceMappingURL=lexer_public.js.map +;// CONCATENATED MODULE: ./node_modules/chevrotain/lib/src/scan/tokens_public.js + + + +function tokens_public_tokenLabel(tokType) { + if (tokens_public_hasTokenLabel(tokType)) { + return tokType.LABEL; + } + else { + return tokType.name; + } +} +function tokenName(tokType) { + return tokType.name; +} +function tokens_public_hasTokenLabel(obj) { + return (0,isString/* default */.A)(obj.LABEL) && obj.LABEL !== ""; +} +const PARENT = "parent"; +const CATEGORIES = "categories"; +const LABEL = "label"; +const GROUP = "group"; +const PUSH_MODE = "push_mode"; +const POP_MODE = "pop_mode"; +const LONGER_ALT = "longer_alt"; +const LINE_BREAKS = "line_breaks"; +const START_CHARS_HINT = "start_chars_hint"; +function createToken(config) { + return createTokenInternal(config); +} +function createTokenInternal(config) { + const pattern = config.pattern; + const tokenType = {}; + tokenType.name = config.name; + if (!(0,isUndefined/* default */.A)(pattern)) { + tokenType.PATTERN = pattern; + } + if ((0,has/* default */.A)(config, PARENT)) { + throw ("The parent property is no longer supported.\n" + + "See: https://github.com/chevrotain/chevrotain/issues/564#issuecomment-349062346 for details."); + } + if ((0,has/* default */.A)(config, CATEGORIES)) { + // casting to ANY as this will be fixed inside `augmentTokenTypes`` + tokenType.CATEGORIES = config[CATEGORIES]; + } + augmentTokenTypes([tokenType]); + if ((0,has/* default */.A)(config, LABEL)) { + tokenType.LABEL = config[LABEL]; + } + if ((0,has/* default */.A)(config, GROUP)) { + tokenType.GROUP = config[GROUP]; + } + if ((0,has/* default */.A)(config, POP_MODE)) { + tokenType.POP_MODE = config[POP_MODE]; + } + if ((0,has/* default */.A)(config, PUSH_MODE)) { + tokenType.PUSH_MODE = config[PUSH_MODE]; + } + if ((0,has/* default */.A)(config, LONGER_ALT)) { + tokenType.LONGER_ALT = config[LONGER_ALT]; + } + if ((0,has/* default */.A)(config, LINE_BREAKS)) { + tokenType.LINE_BREAKS = config[LINE_BREAKS]; + } + if ((0,has/* default */.A)(config, START_CHARS_HINT)) { + tokenType.START_CHARS_HINT = config[START_CHARS_HINT]; + } + return tokenType; +} +const EOF = createToken({ name: "EOF", pattern: Lexer.NA }); +augmentTokenTypes([EOF]); +function createTokenInstance(tokType, image, startOffset, endOffset, startLine, endLine, startColumn, endColumn) { + return { + image, + startOffset, + endOffset, + startLine, + endLine, + startColumn, + endColumn, + tokenTypeIdx: tokType.tokenTypeIdx, + tokenType: tokType, + }; +} +function tokenMatcher(token, tokType) { + return tokenStructuredMatcher(token, tokType); +} +//# sourceMappingURL=tokens_public.js.map +;// CONCATENATED MODULE: ./node_modules/chevrotain/lib/src/parse/errors_public.js + + + +const defaultParserErrorProvider = { + buildMismatchTokenMessage({ expected, actual, previous, ruleName }) { + const hasLabel = tokens_public_hasTokenLabel(expected); + const expectedMsg = hasLabel + ? `--> ${tokens_public_tokenLabel(expected)} <--` + : `token of type --> ${expected.name} <--`; + const msg = `Expecting ${expectedMsg} but found --> '${actual.image}' <--`; + return msg; + }, + buildNotAllInputParsedMessage({ firstRedundant, ruleName }) { + return "Redundant input, expecting EOF but found: " + firstRedundant.image; + }, + buildNoViableAltMessage({ expectedPathsPerAlt, actual, previous, customUserDescription, ruleName, }) { + const errPrefix = "Expecting: "; + // TODO: issue: No Viable Alternative Error may have incomplete details. #502 + const actualText = lodash_es_head(actual).image; + const errSuffix = "\nbut found: '" + actualText + "'"; + if (customUserDescription) { + return errPrefix + customUserDescription + errSuffix; + } + else { + const allLookAheadPaths = (0,reduce/* default */.A)(expectedPathsPerAlt, (result, currAltPaths) => result.concat(currAltPaths), []); + const nextValidTokenSequences = (0,lodash_es_map/* default */.A)(allLookAheadPaths, (currPath) => `[${(0,lodash_es_map/* default */.A)(currPath, (currTokenType) => tokens_public_tokenLabel(currTokenType)).join(", ")}]`); + const nextValidSequenceItems = (0,lodash_es_map/* default */.A)(nextValidTokenSequences, (itemMsg, idx) => ` ${idx + 1}. ${itemMsg}`); + const calculatedDescription = `one of these possible Token sequences:\n${nextValidSequenceItems.join("\n")}`; + return errPrefix + calculatedDescription + errSuffix; + } + }, + buildEarlyExitMessage({ expectedIterationPaths, actual, customUserDescription, ruleName, }) { + const errPrefix = "Expecting: "; + // TODO: issue: No Viable Alternative Error may have incomplete details. #502 + const actualText = lodash_es_head(actual).image; + const errSuffix = "\nbut found: '" + actualText + "'"; + if (customUserDescription) { + return errPrefix + customUserDescription + errSuffix; + } + else { + const nextValidTokenSequences = (0,lodash_es_map/* default */.A)(expectedIterationPaths, (currPath) => `[${(0,lodash_es_map/* default */.A)(currPath, (currTokenType) => tokens_public_tokenLabel(currTokenType)).join(",")}]`); + const calculatedDescription = `expecting at least one iteration which starts with one of these possible Token sequences::\n ` + + `<${nextValidTokenSequences.join(" ,")}>`; + return errPrefix + calculatedDescription + errSuffix; + } + }, +}; +Object.freeze(defaultParserErrorProvider); +const defaultGrammarResolverErrorProvider = { + buildRuleNotFoundError(topLevelRule, undefinedRule) { + const msg = "Invalid grammar, reference to a rule which is not defined: ->" + + undefinedRule.nonTerminalName + + "<-\n" + + "inside top level rule: ->" + + topLevelRule.name + + "<-"; + return msg; + }, +}; +const defaultGrammarValidatorErrorProvider = { + buildDuplicateFoundError(topLevelRule, duplicateProds) { + function getExtraProductionArgument(prod) { + if (prod instanceof Terminal) { + return prod.terminalType.name; + } + else if (prod instanceof model_NonTerminal) { + return prod.nonTerminalName; + } + else { + return ""; + } + } + const topLevelName = topLevelRule.name; + const duplicateProd = lodash_es_head(duplicateProds); + const index = duplicateProd.idx; + const dslName = getProductionDslName(duplicateProd); + const extraArgument = getExtraProductionArgument(duplicateProd); + const hasExplicitIndex = index > 0; + let msg = `->${dslName}${hasExplicitIndex ? index : ""}<- ${extraArgument ? `with argument: ->${extraArgument}<-` : ""} + appears more than once (${duplicateProds.length} times) in the top level rule: ->${topLevelName}<-. + For further details see: https://chevrotain.io/docs/FAQ.html#NUMERICAL_SUFFIXES + `; + // white space trimming time! better to trim afterwards as it allows to use WELL formatted multi line template strings... + msg = msg.replace(/[ \t]+/g, " "); + msg = msg.replace(/\s\s+/g, "\n"); + return msg; + }, + buildNamespaceConflictError(rule) { + const errMsg = `Namespace conflict found in grammar.\n` + + `The grammar has both a Terminal(Token) and a Non-Terminal(Rule) named: <${rule.name}>.\n` + + `To resolve this make sure each Terminal and Non-Terminal names are unique\n` + + `This is easy to accomplish by using the convention that Terminal names start with an uppercase letter\n` + + `and Non-Terminal names start with a lower case letter.`; + return errMsg; + }, + buildAlternationPrefixAmbiguityError(options) { + const pathMsg = (0,lodash_es_map/* default */.A)(options.prefixPath, (currTok) => tokens_public_tokenLabel(currTok)).join(", "); + const occurrence = options.alternation.idx === 0 ? "" : options.alternation.idx; + const errMsg = `Ambiguous alternatives: <${options.ambiguityIndices.join(" ,")}> due to common lookahead prefix\n` + + `in <OR${occurrence}> inside <${options.topLevelRule.name}> Rule,\n` + + `<${pathMsg}> may appears as a prefix path in all these alternatives.\n` + + `See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#COMMON_PREFIX\n` + + `For Further details.`; + return errMsg; + }, + buildAlternationAmbiguityError(options) { + const pathMsg = (0,lodash_es_map/* default */.A)(options.prefixPath, (currtok) => tokens_public_tokenLabel(currtok)).join(", "); + const occurrence = options.alternation.idx === 0 ? "" : options.alternation.idx; + let currMessage = `Ambiguous Alternatives Detected: <${options.ambiguityIndices.join(" ,")}> in <OR${occurrence}>` + + ` inside <${options.topLevelRule.name}> Rule,\n` + + `<${pathMsg}> may appears as a prefix path in all these alternatives.\n`; + currMessage = + currMessage + + `See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES\n` + + `For Further details.`; + return currMessage; + }, + buildEmptyRepetitionError(options) { + let dslName = getProductionDslName(options.repetition); + if (options.repetition.idx !== 0) { + dslName += options.repetition.idx; + } + const errMsg = `The repetition <${dslName}> within Rule <${options.topLevelRule.name}> can never consume any tokens.\n` + + `This could lead to an infinite loop.`; + return errMsg; + }, + // TODO: remove - `errors_public` from nyc.config.js exclude + // once this method is fully removed from this file + buildTokenNameError(options) { + /* istanbul ignore next */ + return "deprecated"; + }, + buildEmptyAlternationError(options) { + const errMsg = `Ambiguous empty alternative: <${options.emptyChoiceIdx + 1}>` + + ` in <OR${options.alternation.idx}> inside <${options.topLevelRule.name}> Rule.\n` + + `Only the last alternative may be an empty alternative.`; + return errMsg; + }, + buildTooManyAlternativesError(options) { + const errMsg = `An Alternation cannot have more than 256 alternatives:\n` + + `<OR${options.alternation.idx}> inside <${options.topLevelRule.name}> Rule.\n has ${options.alternation.definition.length + 1} alternatives.`; + return errMsg; + }, + buildLeftRecursionError(options) { + const ruleName = options.topLevelRule.name; + const pathNames = (0,lodash_es_map/* default */.A)(options.leftRecursionPath, (currRule) => currRule.name); + const leftRecursivePath = `${ruleName} --> ${pathNames + .concat([ruleName]) + .join(" --> ")}`; + const errMsg = `Left Recursion found in grammar.\n` + + `rule: <${ruleName}> can be invoked from itself (directly or indirectly)\n` + + `without consuming any Tokens. The grammar path that causes this is: \n ${leftRecursivePath}\n` + + ` To fix this refactor your grammar to remove the left recursion.\n` + + `see: https://en.wikipedia.org/wiki/LL_parser#Left_factoring.`; + return errMsg; + }, + // TODO: remove - `errors_public` from nyc.config.js exclude + // once this method is fully removed from this file + buildInvalidRuleNameError(options) { + /* istanbul ignore next */ + return "deprecated"; + }, + buildDuplicateRuleNameError(options) { + let ruleName; + if (options.topLevelRule instanceof Rule) { + ruleName = options.topLevelRule.name; + } + else { + ruleName = options.topLevelRule; + } + const errMsg = `Duplicate definition, rule: ->${ruleName}<- is already defined in the grammar: ->${options.grammarName}<-`; + return errMsg; + }, +}; +//# sourceMappingURL=errors_public.js.map +;// CONCATENATED MODULE: ./node_modules/chevrotain/lib/src/parse/grammar/resolver.js + + + +function resolveGrammar(topLevels, errMsgProvider) { + const refResolver = new GastRefResolverVisitor(topLevels, errMsgProvider); + refResolver.resolveRefs(); + return refResolver.errors; +} +class GastRefResolverVisitor extends visitor_GAstVisitor { + constructor(nameToTopRule, errMsgProvider) { + super(); + this.nameToTopRule = nameToTopRule; + this.errMsgProvider = errMsgProvider; + this.errors = []; + } + resolveRefs() { + (0,forEach/* default */.A)((0,lodash_es_values/* default */.A)(this.nameToTopRule), (prod) => { + this.currTopLevel = prod; + prod.accept(this); + }); + } + visitNonTerminal(node) { + const ref = this.nameToTopRule[node.nonTerminalName]; + if (!ref) { + const msg = this.errMsgProvider.buildRuleNotFoundError(this.currTopLevel, node); + this.errors.push({ + message: msg, + type: ParserDefinitionErrorType.UNRESOLVED_SUBRULE_REF, + ruleName: this.currTopLevel.name, + unresolvedRefName: node.nonTerminalName, + }); + } + else { + node.referencedRule = ref; + } + } +} +//# sourceMappingURL=resolver.js.map +;// CONCATENATED MODULE: ./node_modules/lodash-es/flatMap.js + + + +/** + * Creates a flattened array of values by running each element in `collection` + * thru `iteratee` and flattening the mapped results. The iteratee is invoked + * with three arguments: (value, index|key, collection). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Array} Returns the new flattened array. + * @example + * + * function duplicate(n) { + * return [n, n]; + * } + * + * _.flatMap([1, 2], duplicate); + * // => [1, 1, 2, 2] + */ +function flatMap(collection, iteratee) { + return (0,_baseFlatten/* default */.A)((0,lodash_es_map/* default */.A)(collection, iteratee), 1); +} + +/* harmony default export */ const lodash_es_flatMap = (flatMap); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseAssignValue.js +var _baseAssignValue = __webpack_require__(52528); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_arrayAggregator.js +/** + * A specialized version of `baseAggregator` for arrays. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} setter The function to set `accumulator` values. + * @param {Function} iteratee The iteratee to transform keys. + * @param {Object} accumulator The initial aggregated object. + * @returns {Function} Returns `accumulator`. + */ +function arrayAggregator(array, setter, iteratee, accumulator) { + var index = -1, + length = array == null ? 0 : array.length; + + while (++index < length) { + var value = array[index]; + setter(accumulator, value, iteratee(value), array); + } + return accumulator; +} + +/* harmony default export */ const _arrayAggregator = (arrayAggregator); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseAggregator.js + + +/** + * Aggregates elements of `collection` on `accumulator` with keys transformed + * by `iteratee` and values set by `setter`. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} setter The function to set `accumulator` values. + * @param {Function} iteratee The iteratee to transform keys. + * @param {Object} accumulator The initial aggregated object. + * @returns {Function} Returns `accumulator`. + */ +function baseAggregator(collection, setter, iteratee, accumulator) { + (0,_baseEach/* default */.A)(collection, function(value, key, collection) { + setter(accumulator, value, iteratee(value), collection); + }); + return accumulator; +} + +/* harmony default export */ const _baseAggregator = (baseAggregator); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_createAggregator.js + + + + + +/** + * Creates a function like `_.groupBy`. + * + * @private + * @param {Function} setter The function to set accumulator values. + * @param {Function} [initializer] The accumulator object initializer. + * @returns {Function} Returns the new aggregator function. + */ +function createAggregator(setter, initializer) { + return function(collection, iteratee) { + var func = (0,isArray/* default */.A)(collection) ? _arrayAggregator : _baseAggregator, + accumulator = initializer ? initializer() : {}; + + return func(collection, setter, (0,_baseIteratee/* default */.A)(iteratee, 2), accumulator); + }; +} + +/* harmony default export */ const _createAggregator = (createAggregator); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/groupBy.js + + + +/** Used for built-in method references. */ +var groupBy_objectProto = Object.prototype; + +/** Used to check objects for own properties. */ +var groupBy_hasOwnProperty = groupBy_objectProto.hasOwnProperty; + +/** + * Creates an object composed of keys generated from the results of running + * each element of `collection` thru `iteratee`. The order of grouped values + * is determined by the order they occur in `collection`. The corresponding + * value of each key is an array of elements responsible for generating the + * key. The iteratee is invoked with one argument: (value). + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The iteratee to transform keys. + * @returns {Object} Returns the composed aggregate object. + * @example + * + * _.groupBy([6.1, 4.2, 6.3], Math.floor); + * // => { '4': [4.2], '6': [6.1, 6.3] } + * + * // The `_.property` iteratee shorthand. + * _.groupBy(['one', 'two', 'three'], 'length'); + * // => { '3': ['one', 'two'], '5': ['three'] } + */ +var groupBy_groupBy = _createAggregator(function(result, value, key) { + if (groupBy_hasOwnProperty.call(result, key)) { + result[key].push(value); + } else { + (0,_baseAssignValue/* default */.A)(result, key, [value]); + } +}); + +/* harmony default export */ const lodash_es_groupBy = (groupBy_groupBy); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/dropRight.js + + + +/** + * Creates a slice of `array` with `n` elements dropped from the end. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Array + * @param {Array} array The array to query. + * @param {number} [n=1] The number of elements to drop. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {Array} Returns the slice of `array`. + * @example + * + * _.dropRight([1, 2, 3]); + * // => [1, 2] + * + * _.dropRight([1, 2, 3], 2); + * // => [1] + * + * _.dropRight([1, 2, 3], 5); + * // => [] + * + * _.dropRight([1, 2, 3], 0); + * // => [1, 2, 3] + */ +function dropRight(array, n, guard) { + var length = array == null ? 0 : array.length; + if (!length) { + return []; + } + n = (guard || n === undefined) ? 1 : (0,toInteger/* default */.A)(n); + n = length - n; + return _baseSlice(array, 0, n < 0 ? 0 : n); +} + +/* harmony default export */ const lodash_es_dropRight = (dropRight); + +;// CONCATENATED MODULE: ./node_modules/chevrotain/lib/src/parse/grammar/interpreter.js + + + + +class AbstractNextPossibleTokensWalker extends RestWalker { + constructor(topProd, path) { + super(); + this.topProd = topProd; + this.path = path; + this.possibleTokTypes = []; + this.nextProductionName = ""; + this.nextProductionOccurrence = 0; + this.found = false; + this.isAtEndOfPath = false; + } + startWalking() { + this.found = false; + if (this.path.ruleStack[0] !== this.topProd.name) { + throw Error("The path does not start with the walker's top Rule!"); + } + // immutable for the win + this.ruleStack = (0,clone/* default */.A)(this.path.ruleStack).reverse(); // intelij bug requires assertion + this.occurrenceStack = (0,clone/* default */.A)(this.path.occurrenceStack).reverse(); // intelij bug requires assertion + // already verified that the first production is valid, we now seek the 2nd production + this.ruleStack.pop(); + this.occurrenceStack.pop(); + this.updateExpectedNext(); + this.walk(this.topProd); + return this.possibleTokTypes; + } + walk(prod, prevRest = []) { + // stop scanning once we found the path + if (!this.found) { + super.walk(prod, prevRest); + } + } + walkProdRef(refProd, currRest, prevRest) { + // found the next production, need to keep walking in it + if (refProd.referencedRule.name === this.nextProductionName && + refProd.idx === this.nextProductionOccurrence) { + const fullRest = currRest.concat(prevRest); + this.updateExpectedNext(); + this.walk(refProd.referencedRule, fullRest); + } + } + updateExpectedNext() { + // need to consume the Terminal + if ((0,isEmpty/* default */.A)(this.ruleStack)) { + // must reset nextProductionXXX to avoid walking down another Top Level production while what we are + // really seeking is the last Terminal... + this.nextProductionName = ""; + this.nextProductionOccurrence = 0; + this.isAtEndOfPath = true; + } + else { + this.nextProductionName = this.ruleStack.pop(); + this.nextProductionOccurrence = this.occurrenceStack.pop(); + } + } +} +class NextAfterTokenWalker extends AbstractNextPossibleTokensWalker { + constructor(topProd, path) { + super(topProd, path); + this.path = path; + this.nextTerminalName = ""; + this.nextTerminalOccurrence = 0; + this.nextTerminalName = this.path.lastTok.name; + this.nextTerminalOccurrence = this.path.lastTokOccurrence; + } + walkTerminal(terminal, currRest, prevRest) { + if (this.isAtEndOfPath && + terminal.terminalType.name === this.nextTerminalName && + terminal.idx === this.nextTerminalOccurrence && + !this.found) { + const fullRest = currRest.concat(prevRest); + const restProd = new Alternative({ definition: fullRest }); + this.possibleTokTypes = first(restProd); + this.found = true; + } + } +} +/** + * This walker only "walks" a single "TOP" level in the Grammar Ast, this means + * it never "follows" production refs + */ +class AbstractNextTerminalAfterProductionWalker extends RestWalker { + constructor(topRule, occurrence) { + super(); + this.topRule = topRule; + this.occurrence = occurrence; + this.result = { + token: undefined, + occurrence: undefined, + isEndOfRule: undefined, + }; + } + startWalking() { + this.walk(this.topRule); + return this.result; + } +} +class NextTerminalAfterManyWalker extends AbstractNextTerminalAfterProductionWalker { + walkMany(manyProd, currRest, prevRest) { + if (manyProd.idx === this.occurrence) { + const firstAfterMany = lodash_es_head(currRest.concat(prevRest)); + this.result.isEndOfRule = firstAfterMany === undefined; + if (firstAfterMany instanceof Terminal) { + this.result.token = firstAfterMany.terminalType; + this.result.occurrence = firstAfterMany.idx; + } + } + else { + super.walkMany(manyProd, currRest, prevRest); + } + } +} +class NextTerminalAfterManySepWalker extends AbstractNextTerminalAfterProductionWalker { + walkManySep(manySepProd, currRest, prevRest) { + if (manySepProd.idx === this.occurrence) { + const firstAfterManySep = lodash_es_head(currRest.concat(prevRest)); + this.result.isEndOfRule = firstAfterManySep === undefined; + if (firstAfterManySep instanceof Terminal) { + this.result.token = firstAfterManySep.terminalType; + this.result.occurrence = firstAfterManySep.idx; + } + } + else { + super.walkManySep(manySepProd, currRest, prevRest); + } + } +} +class NextTerminalAfterAtLeastOneWalker extends AbstractNextTerminalAfterProductionWalker { + walkAtLeastOne(atLeastOneProd, currRest, prevRest) { + if (atLeastOneProd.idx === this.occurrence) { + const firstAfterAtLeastOne = lodash_es_head(currRest.concat(prevRest)); + this.result.isEndOfRule = firstAfterAtLeastOne === undefined; + if (firstAfterAtLeastOne instanceof Terminal) { + this.result.token = firstAfterAtLeastOne.terminalType; + this.result.occurrence = firstAfterAtLeastOne.idx; + } + } + else { + super.walkAtLeastOne(atLeastOneProd, currRest, prevRest); + } + } +} +// TODO: reduce code duplication in the AfterWalkers +class NextTerminalAfterAtLeastOneSepWalker extends AbstractNextTerminalAfterProductionWalker { + walkAtLeastOneSep(atleastOneSepProd, currRest, prevRest) { + if (atleastOneSepProd.idx === this.occurrence) { + const firstAfterfirstAfterAtLeastOneSep = lodash_es_head(currRest.concat(prevRest)); + this.result.isEndOfRule = firstAfterfirstAfterAtLeastOneSep === undefined; + if (firstAfterfirstAfterAtLeastOneSep instanceof Terminal) { + this.result.token = firstAfterfirstAfterAtLeastOneSep.terminalType; + this.result.occurrence = firstAfterfirstAfterAtLeastOneSep.idx; + } + } + else { + super.walkAtLeastOneSep(atleastOneSepProd, currRest, prevRest); + } + } +} +function possiblePathsFrom(targetDef, maxLength, currPath = []) { + // avoid side effects + currPath = (0,clone/* default */.A)(currPath); + let result = []; + let i = 0; + // TODO: avoid inner funcs + function remainingPathWith(nextDef) { + return nextDef.concat(lodash_es_drop(targetDef, i + 1)); + } + // TODO: avoid inner funcs + function getAlternativesForProd(definition) { + const alternatives = possiblePathsFrom(remainingPathWith(definition), maxLength, currPath); + return result.concat(alternatives); + } + /** + * Mandatory productions will halt the loop as the paths computed from their recursive calls will already contain the + * following (rest) of the targetDef. + * + * For optional productions (Option/Repetition/...) the loop will continue to represent the paths that do not include the + * the optional production. + */ + while (currPath.length < maxLength && i < targetDef.length) { + const prod = targetDef[i]; + /* istanbul ignore else */ + if (prod instanceof Alternative) { + return getAlternativesForProd(prod.definition); + } + else if (prod instanceof model_NonTerminal) { + return getAlternativesForProd(prod.definition); + } + else if (prod instanceof Option) { + result = getAlternativesForProd(prod.definition); + } + else if (prod instanceof RepetitionMandatory) { + const newDef = prod.definition.concat([ + new Repetition({ + definition: prod.definition, + }), + ]); + return getAlternativesForProd(newDef); + } + else if (prod instanceof RepetitionMandatoryWithSeparator) { + const newDef = [ + new Alternative({ definition: prod.definition }), + new Repetition({ + definition: [new Terminal({ terminalType: prod.separator })].concat(prod.definition), + }), + ]; + return getAlternativesForProd(newDef); + } + else if (prod instanceof RepetitionWithSeparator) { + const newDef = prod.definition.concat([ + new Repetition({ + definition: [new Terminal({ terminalType: prod.separator })].concat(prod.definition), + }), + ]); + result = getAlternativesForProd(newDef); + } + else if (prod instanceof Repetition) { + const newDef = prod.definition.concat([ + new Repetition({ + definition: prod.definition, + }), + ]); + result = getAlternativesForProd(newDef); + } + else if (prod instanceof Alternation) { + (0,forEach/* default */.A)(prod.definition, (currAlt) => { + // TODO: this is a limited check for empty alternatives + // It would prevent a common case of infinite loops during parser initialization. + // However **in-directly** empty alternatives may still cause issues. + if ((0,isEmpty/* default */.A)(currAlt.definition) === false) { + result = getAlternativesForProd(currAlt.definition); + } + }); + return result; + } + else if (prod instanceof Terminal) { + currPath.push(prod.terminalType); + } + else { + throw Error("non exhaustive match"); + } + i++; + } + result.push({ + partialPath: currPath, + suffixDef: lodash_es_drop(targetDef, i), + }); + return result; +} +function nextPossibleTokensAfter(initialDef, tokenVector, tokMatcher, maxLookAhead) { + const EXIT_NON_TERMINAL = "EXIT_NONE_TERMINAL"; + // to avoid creating a new Array each time. + const EXIT_NON_TERMINAL_ARR = [EXIT_NON_TERMINAL]; + const EXIT_ALTERNATIVE = "EXIT_ALTERNATIVE"; + let foundCompletePath = false; + const tokenVectorLength = tokenVector.length; + const minimalAlternativesIndex = tokenVectorLength - maxLookAhead - 1; + const result = []; + const possiblePaths = []; + possiblePaths.push({ + idx: -1, + def: initialDef, + ruleStack: [], + occurrenceStack: [], + }); + while (!(0,isEmpty/* default */.A)(possiblePaths)) { + const currPath = possiblePaths.pop(); + // skip alternatives if no more results can be found (assuming deterministic grammar with fixed lookahead) + if (currPath === EXIT_ALTERNATIVE) { + if (foundCompletePath && + (0,last/* default */.A)(possiblePaths).idx <= minimalAlternativesIndex) { + // remove irrelevant alternative + possiblePaths.pop(); + } + continue; + } + const currDef = currPath.def; + const currIdx = currPath.idx; + const currRuleStack = currPath.ruleStack; + const currOccurrenceStack = currPath.occurrenceStack; + // For Example: an empty path could exist in a valid grammar in the case of an EMPTY_ALT + if ((0,isEmpty/* default */.A)(currDef)) { + continue; + } + const prod = currDef[0]; + /* istanbul ignore else */ + if (prod === EXIT_NON_TERMINAL) { + const nextPath = { + idx: currIdx, + def: lodash_es_drop(currDef), + ruleStack: lodash_es_dropRight(currRuleStack), + occurrenceStack: lodash_es_dropRight(currOccurrenceStack), + }; + possiblePaths.push(nextPath); + } + else if (prod instanceof Terminal) { + /* istanbul ignore else */ + if (currIdx < tokenVectorLength - 1) { + const nextIdx = currIdx + 1; + const actualToken = tokenVector[nextIdx]; + if (tokMatcher(actualToken, prod.terminalType)) { + const nextPath = { + idx: nextIdx, + def: lodash_es_drop(currDef), + ruleStack: currRuleStack, + occurrenceStack: currOccurrenceStack, + }; + possiblePaths.push(nextPath); + } + // end of the line + } + else if (currIdx === tokenVectorLength - 1) { + // IGNORE ABOVE ELSE + result.push({ + nextTokenType: prod.terminalType, + nextTokenOccurrence: prod.idx, + ruleStack: currRuleStack, + occurrenceStack: currOccurrenceStack, + }); + foundCompletePath = true; + } + else { + throw Error("non exhaustive match"); + } + } + else if (prod instanceof model_NonTerminal) { + const newRuleStack = (0,clone/* default */.A)(currRuleStack); + newRuleStack.push(prod.nonTerminalName); + const newOccurrenceStack = (0,clone/* default */.A)(currOccurrenceStack); + newOccurrenceStack.push(prod.idx); + const nextPath = { + idx: currIdx, + def: prod.definition.concat(EXIT_NON_TERMINAL_ARR, lodash_es_drop(currDef)), + ruleStack: newRuleStack, + occurrenceStack: newOccurrenceStack, + }; + possiblePaths.push(nextPath); + } + else if (prod instanceof Option) { + // the order of alternatives is meaningful, FILO (Last path will be traversed first). + const nextPathWithout = { + idx: currIdx, + def: lodash_es_drop(currDef), + ruleStack: currRuleStack, + occurrenceStack: currOccurrenceStack, + }; + possiblePaths.push(nextPathWithout); + // required marker to avoid backtracking paths whose higher priority alternatives already matched + possiblePaths.push(EXIT_ALTERNATIVE); + const nextPathWith = { + idx: currIdx, + def: prod.definition.concat(lodash_es_drop(currDef)), + ruleStack: currRuleStack, + occurrenceStack: currOccurrenceStack, + }; + possiblePaths.push(nextPathWith); + } + else if (prod instanceof RepetitionMandatory) { + // TODO:(THE NEW operators here take a while...) (convert once?) + const secondIteration = new Repetition({ + definition: prod.definition, + idx: prod.idx, + }); + const nextDef = prod.definition.concat([secondIteration], lodash_es_drop(currDef)); + const nextPath = { + idx: currIdx, + def: nextDef, + ruleStack: currRuleStack, + occurrenceStack: currOccurrenceStack, + }; + possiblePaths.push(nextPath); + } + else if (prod instanceof RepetitionMandatoryWithSeparator) { + // TODO:(THE NEW operators here take a while...) (convert once?) + const separatorGast = new Terminal({ + terminalType: prod.separator, + }); + const secondIteration = new Repetition({ + definition: [separatorGast].concat(prod.definition), + idx: prod.idx, + }); + const nextDef = prod.definition.concat([secondIteration], lodash_es_drop(currDef)); + const nextPath = { + idx: currIdx, + def: nextDef, + ruleStack: currRuleStack, + occurrenceStack: currOccurrenceStack, + }; + possiblePaths.push(nextPath); + } + else if (prod instanceof RepetitionWithSeparator) { + // the order of alternatives is meaningful, FILO (Last path will be traversed first). + const nextPathWithout = { + idx: currIdx, + def: lodash_es_drop(currDef), + ruleStack: currRuleStack, + occurrenceStack: currOccurrenceStack, + }; + possiblePaths.push(nextPathWithout); + // required marker to avoid backtracking paths whose higher priority alternatives already matched + possiblePaths.push(EXIT_ALTERNATIVE); + const separatorGast = new Terminal({ + terminalType: prod.separator, + }); + const nthRepetition = new Repetition({ + definition: [separatorGast].concat(prod.definition), + idx: prod.idx, + }); + const nextDef = prod.definition.concat([nthRepetition], lodash_es_drop(currDef)); + const nextPathWith = { + idx: currIdx, + def: nextDef, + ruleStack: currRuleStack, + occurrenceStack: currOccurrenceStack, + }; + possiblePaths.push(nextPathWith); + } + else if (prod instanceof Repetition) { + // the order of alternatives is meaningful, FILO (Last path will be traversed first). + const nextPathWithout = { + idx: currIdx, + def: lodash_es_drop(currDef), + ruleStack: currRuleStack, + occurrenceStack: currOccurrenceStack, + }; + possiblePaths.push(nextPathWithout); + // required marker to avoid backtracking paths whose higher priority alternatives already matched + possiblePaths.push(EXIT_ALTERNATIVE); + // TODO: an empty repetition will cause infinite loops here, will the parser detect this in selfAnalysis? + const nthRepetition = new Repetition({ + definition: prod.definition, + idx: prod.idx, + }); + const nextDef = prod.definition.concat([nthRepetition], lodash_es_drop(currDef)); + const nextPathWith = { + idx: currIdx, + def: nextDef, + ruleStack: currRuleStack, + occurrenceStack: currOccurrenceStack, + }; + possiblePaths.push(nextPathWith); + } + else if (prod instanceof Alternation) { + // the order of alternatives is meaningful, FILO (Last path will be traversed first). + for (let i = prod.definition.length - 1; i >= 0; i--) { + const currAlt = prod.definition[i]; + const currAltPath = { + idx: currIdx, + def: currAlt.definition.concat(lodash_es_drop(currDef)), + ruleStack: currRuleStack, + occurrenceStack: currOccurrenceStack, + }; + possiblePaths.push(currAltPath); + possiblePaths.push(EXIT_ALTERNATIVE); + } + } + else if (prod instanceof Alternative) { + possiblePaths.push({ + idx: currIdx, + def: prod.definition.concat(lodash_es_drop(currDef)), + ruleStack: currRuleStack, + occurrenceStack: currOccurrenceStack, + }); + } + else if (prod instanceof Rule) { + // last because we should only encounter at most a single one of these per invocation. + possiblePaths.push(expandTopLevelRule(prod, currIdx, currRuleStack, currOccurrenceStack)); + } + else { + throw Error("non exhaustive match"); + } + } + return result; +} +function expandTopLevelRule(topRule, currIdx, currRuleStack, currOccurrenceStack) { + const newRuleStack = (0,clone/* default */.A)(currRuleStack); + newRuleStack.push(topRule.name); + const newCurrOccurrenceStack = (0,clone/* default */.A)(currOccurrenceStack); + // top rule is always assumed to have been called with occurrence index 1 + newCurrOccurrenceStack.push(1); + return { + idx: currIdx, + def: topRule.definition, + ruleStack: newRuleStack, + occurrenceStack: newCurrOccurrenceStack, + }; +} +//# sourceMappingURL=interpreter.js.map +;// CONCATENATED MODULE: ./node_modules/chevrotain/lib/src/parse/grammar/lookahead.js + + + + + +var PROD_TYPE; +(function (PROD_TYPE) { + PROD_TYPE[PROD_TYPE["OPTION"] = 0] = "OPTION"; + PROD_TYPE[PROD_TYPE["REPETITION"] = 1] = "REPETITION"; + PROD_TYPE[PROD_TYPE["REPETITION_MANDATORY"] = 2] = "REPETITION_MANDATORY"; + PROD_TYPE[PROD_TYPE["REPETITION_MANDATORY_WITH_SEPARATOR"] = 3] = "REPETITION_MANDATORY_WITH_SEPARATOR"; + PROD_TYPE[PROD_TYPE["REPETITION_WITH_SEPARATOR"] = 4] = "REPETITION_WITH_SEPARATOR"; + PROD_TYPE[PROD_TYPE["ALTERNATION"] = 5] = "ALTERNATION"; +})(PROD_TYPE || (PROD_TYPE = {})); +function getProdType(prod) { + /* istanbul ignore else */ + if (prod instanceof Option || prod === "Option") { + return PROD_TYPE.OPTION; + } + else if (prod instanceof Repetition || prod === "Repetition") { + return PROD_TYPE.REPETITION; + } + else if (prod instanceof RepetitionMandatory || + prod === "RepetitionMandatory") { + return PROD_TYPE.REPETITION_MANDATORY; + } + else if (prod instanceof RepetitionMandatoryWithSeparator || + prod === "RepetitionMandatoryWithSeparator") { + return PROD_TYPE.REPETITION_MANDATORY_WITH_SEPARATOR; + } + else if (prod instanceof RepetitionWithSeparator || + prod === "RepetitionWithSeparator") { + return PROD_TYPE.REPETITION_WITH_SEPARATOR; + } + else if (prod instanceof Alternation || prod === "Alternation") { + return PROD_TYPE.ALTERNATION; + } + else { + throw Error("non exhaustive match"); + } +} +function getLookaheadPaths(options) { + const { occurrence, rule, prodType, maxLookahead } = options; + const type = getProdType(prodType); + if (type === PROD_TYPE.ALTERNATION) { + return getLookaheadPathsForOr(occurrence, rule, maxLookahead); + } + else { + return getLookaheadPathsForOptionalProd(occurrence, rule, type, maxLookahead); + } +} +function buildLookaheadFuncForOr(occurrence, ruleGrammar, maxLookahead, hasPredicates, dynamicTokensEnabled, laFuncBuilder) { + const lookAheadPaths = getLookaheadPathsForOr(occurrence, ruleGrammar, maxLookahead); + const tokenMatcher = areTokenCategoriesNotUsed(lookAheadPaths) + ? tokenStructuredMatcherNoCategories + : tokenStructuredMatcher; + return laFuncBuilder(lookAheadPaths, hasPredicates, tokenMatcher, dynamicTokensEnabled); +} +/** + * When dealing with an Optional production (OPTION/MANY/2nd iteration of AT_LEAST_ONE/...) we need to compare + * the lookahead "inside" the production and the lookahead immediately "after" it in the same top level rule (context free). + * + * Example: given a production: + * ABC(DE)?DF + * + * The optional '(DE)?' should only be entered if we see 'DE'. a single Token 'D' is not sufficient to distinguish between the two + * alternatives. + * + * @returns A Lookahead function which will return true IFF the parser should parse the Optional production. + */ +function buildLookaheadFuncForOptionalProd(occurrence, ruleGrammar, k, dynamicTokensEnabled, prodType, lookaheadBuilder) { + const lookAheadPaths = getLookaheadPathsForOptionalProd(occurrence, ruleGrammar, prodType, k); + const tokenMatcher = areTokenCategoriesNotUsed(lookAheadPaths) + ? tokenStructuredMatcherNoCategories + : tokenStructuredMatcher; + return lookaheadBuilder(lookAheadPaths[0], tokenMatcher, dynamicTokensEnabled); +} +function buildAlternativesLookAheadFunc(alts, hasPredicates, tokenMatcher, dynamicTokensEnabled) { + const numOfAlts = alts.length; + const areAllOneTokenLookahead = lodash_es_every(alts, (currAlt) => { + return lodash_es_every(currAlt, (currPath) => { + return currPath.length === 1; + }); + }); + // This version takes into account the predicates as well. + if (hasPredicates) { + /** + * @returns {number} - The chosen alternative index + */ + return function (orAlts) { + // unfortunately the predicates must be extracted every single time + // as they cannot be cached due to references to parameters(vars) which are no longer valid. + // note that in the common case of no predicates, no cpu time will be wasted on this (see else block) + const predicates = (0,lodash_es_map/* default */.A)(orAlts, (currAlt) => currAlt.GATE); + for (let t = 0; t < numOfAlts; t++) { + const currAlt = alts[t]; + const currNumOfPaths = currAlt.length; + const currPredicate = predicates[t]; + if (currPredicate !== undefined && currPredicate.call(this) === false) { + // if the predicate does not match there is no point in checking the paths + continue; + } + nextPath: for (let j = 0; j < currNumOfPaths; j++) { + const currPath = currAlt[j]; + const currPathLength = currPath.length; + for (let i = 0; i < currPathLength; i++) { + const nextToken = this.LA(i + 1); + if (tokenMatcher(nextToken, currPath[i]) === false) { + // mismatch in current path + // try the next pth + continue nextPath; + } + } + // found a full path that matches. + // this will also work for an empty ALT as the loop will be skipped + return t; + } + // none of the paths for the current alternative matched + // try the next alternative + } + // none of the alternatives could be matched + return undefined; + }; + } + else if (areAllOneTokenLookahead && !dynamicTokensEnabled) { + // optimized (common) case of all the lookaheads paths requiring only + // a single token lookahead. These Optimizations cannot work if dynamically defined Tokens are used. + const singleTokenAlts = (0,lodash_es_map/* default */.A)(alts, (currAlt) => { + return (0,lodash_es_flatten/* default */.A)(currAlt); + }); + const choiceToAlt = (0,reduce/* default */.A)(singleTokenAlts, (result, currAlt, idx) => { + (0,forEach/* default */.A)(currAlt, (currTokType) => { + if (!(0,has/* default */.A)(result, currTokType.tokenTypeIdx)) { + result[currTokType.tokenTypeIdx] = idx; + } + (0,forEach/* default */.A)(currTokType.categoryMatches, (currExtendingType) => { + if (!(0,has/* default */.A)(result, currExtendingType)) { + result[currExtendingType] = idx; + } + }); + }); + return result; + }, {}); + /** + * @returns {number} - The chosen alternative index + */ + return function () { + const nextToken = this.LA(1); + return choiceToAlt[nextToken.tokenTypeIdx]; + }; + } + else { + // optimized lookahead without needing to check the predicates at all. + // this causes code duplication which is intentional to improve performance. + /** + * @returns {number} - The chosen alternative index + */ + return function () { + for (let t = 0; t < numOfAlts; t++) { + const currAlt = alts[t]; + const currNumOfPaths = currAlt.length; + nextPath: for (let j = 0; j < currNumOfPaths; j++) { + const currPath = currAlt[j]; + const currPathLength = currPath.length; + for (let i = 0; i < currPathLength; i++) { + const nextToken = this.LA(i + 1); + if (tokenMatcher(nextToken, currPath[i]) === false) { + // mismatch in current path + // try the next pth + continue nextPath; + } + } + // found a full path that matches. + // this will also work for an empty ALT as the loop will be skipped + return t; + } + // none of the paths for the current alternative matched + // try the next alternative + } + // none of the alternatives could be matched + return undefined; + }; + } +} +function buildSingleAlternativeLookaheadFunction(alt, tokenMatcher, dynamicTokensEnabled) { + const areAllOneTokenLookahead = lodash_es_every(alt, (currPath) => { + return currPath.length === 1; + }); + const numOfPaths = alt.length; + // optimized (common) case of all the lookaheads paths requiring only + // a single token lookahead. + if (areAllOneTokenLookahead && !dynamicTokensEnabled) { + const singleTokensTypes = (0,lodash_es_flatten/* default */.A)(alt); + if (singleTokensTypes.length === 1 && + (0,isEmpty/* default */.A)(singleTokensTypes[0].categoryMatches)) { + const expectedTokenType = singleTokensTypes[0]; + const expectedTokenUniqueKey = expectedTokenType.tokenTypeIdx; + return function () { + return this.LA(1).tokenTypeIdx === expectedTokenUniqueKey; + }; + } + else { + const choiceToAlt = (0,reduce/* default */.A)(singleTokensTypes, (result, currTokType, idx) => { + result[currTokType.tokenTypeIdx] = true; + (0,forEach/* default */.A)(currTokType.categoryMatches, (currExtendingType) => { + result[currExtendingType] = true; + }); + return result; + }, []); + return function () { + const nextToken = this.LA(1); + return choiceToAlt[nextToken.tokenTypeIdx] === true; + }; + } + } + else { + return function () { + nextPath: for (let j = 0; j < numOfPaths; j++) { + const currPath = alt[j]; + const currPathLength = currPath.length; + for (let i = 0; i < currPathLength; i++) { + const nextToken = this.LA(i + 1); + if (tokenMatcher(nextToken, currPath[i]) === false) { + // mismatch in current path + // try the next pth + continue nextPath; + } + } + // found a full path that matches. + return true; + } + // none of the paths matched + return false; + }; + } +} +class RestDefinitionFinderWalker extends RestWalker { + constructor(topProd, targetOccurrence, targetProdType) { + super(); + this.topProd = topProd; + this.targetOccurrence = targetOccurrence; + this.targetProdType = targetProdType; + } + startWalking() { + this.walk(this.topProd); + return this.restDef; + } + checkIsTarget(node, expectedProdType, currRest, prevRest) { + if (node.idx === this.targetOccurrence && + this.targetProdType === expectedProdType) { + this.restDef = currRest.concat(prevRest); + return true; + } + // performance optimization, do not iterate over the entire Grammar ast after we have found the target + return false; + } + walkOption(optionProd, currRest, prevRest) { + if (!this.checkIsTarget(optionProd, PROD_TYPE.OPTION, currRest, prevRest)) { + super.walkOption(optionProd, currRest, prevRest); + } + } + walkAtLeastOne(atLeastOneProd, currRest, prevRest) { + if (!this.checkIsTarget(atLeastOneProd, PROD_TYPE.REPETITION_MANDATORY, currRest, prevRest)) { + super.walkOption(atLeastOneProd, currRest, prevRest); + } + } + walkAtLeastOneSep(atLeastOneSepProd, currRest, prevRest) { + if (!this.checkIsTarget(atLeastOneSepProd, PROD_TYPE.REPETITION_MANDATORY_WITH_SEPARATOR, currRest, prevRest)) { + super.walkOption(atLeastOneSepProd, currRest, prevRest); + } + } + walkMany(manyProd, currRest, prevRest) { + if (!this.checkIsTarget(manyProd, PROD_TYPE.REPETITION, currRest, prevRest)) { + super.walkOption(manyProd, currRest, prevRest); + } + } + walkManySep(manySepProd, currRest, prevRest) { + if (!this.checkIsTarget(manySepProd, PROD_TYPE.REPETITION_WITH_SEPARATOR, currRest, prevRest)) { + super.walkOption(manySepProd, currRest, prevRest); + } + } +} +/** + * Returns the definition of a target production in a top level level rule. + */ +class InsideDefinitionFinderVisitor extends visitor_GAstVisitor { + constructor(targetOccurrence, targetProdType, targetRef) { + super(); + this.targetOccurrence = targetOccurrence; + this.targetProdType = targetProdType; + this.targetRef = targetRef; + this.result = []; + } + checkIsTarget(node, expectedProdName) { + if (node.idx === this.targetOccurrence && + this.targetProdType === expectedProdName && + (this.targetRef === undefined || node === this.targetRef)) { + this.result = node.definition; + } + } + visitOption(node) { + this.checkIsTarget(node, PROD_TYPE.OPTION); + } + visitRepetition(node) { + this.checkIsTarget(node, PROD_TYPE.REPETITION); + } + visitRepetitionMandatory(node) { + this.checkIsTarget(node, PROD_TYPE.REPETITION_MANDATORY); + } + visitRepetitionMandatoryWithSeparator(node) { + this.checkIsTarget(node, PROD_TYPE.REPETITION_MANDATORY_WITH_SEPARATOR); + } + visitRepetitionWithSeparator(node) { + this.checkIsTarget(node, PROD_TYPE.REPETITION_WITH_SEPARATOR); + } + visitAlternation(node) { + this.checkIsTarget(node, PROD_TYPE.ALTERNATION); + } +} +function initializeArrayOfArrays(size) { + const result = new Array(size); + for (let i = 0; i < size; i++) { + result[i] = []; + } + return result; +} +/** + * A sort of hash function between a Path in the grammar and a string. + * Note that this returns multiple "hashes" to support the scenario of token categories. + * - A single path with categories may match multiple **actual** paths. + */ +function pathToHashKeys(path) { + let keys = [""]; + for (let i = 0; i < path.length; i++) { + const tokType = path[i]; + const longerKeys = []; + for (let j = 0; j < keys.length; j++) { + const currShorterKey = keys[j]; + longerKeys.push(currShorterKey + "_" + tokType.tokenTypeIdx); + for (let t = 0; t < tokType.categoryMatches.length; t++) { + const categoriesKeySuffix = "_" + tokType.categoryMatches[t]; + longerKeys.push(currShorterKey + categoriesKeySuffix); + } + } + keys = longerKeys; + } + return keys; +} +/** + * Imperative style due to being called from a hot spot + */ +function isUniquePrefixHash(altKnownPathsKeys, searchPathKeys, idx) { + for (let currAltIdx = 0; currAltIdx < altKnownPathsKeys.length; currAltIdx++) { + // We only want to test vs the other alternatives + if (currAltIdx === idx) { + continue; + } + const otherAltKnownPathsKeys = altKnownPathsKeys[currAltIdx]; + for (let searchIdx = 0; searchIdx < searchPathKeys.length; searchIdx++) { + const searchKey = searchPathKeys[searchIdx]; + if (otherAltKnownPathsKeys[searchKey] === true) { + return false; + } + } + } + // None of the SearchPathKeys were found in any of the other alternatives + return true; +} +function lookAheadSequenceFromAlternatives(altsDefs, k) { + const partialAlts = (0,lodash_es_map/* default */.A)(altsDefs, (currAlt) => possiblePathsFrom([currAlt], 1)); + const finalResult = initializeArrayOfArrays(partialAlts.length); + const altsHashes = (0,lodash_es_map/* default */.A)(partialAlts, (currAltPaths) => { + const dict = {}; + (0,forEach/* default */.A)(currAltPaths, (item) => { + const keys = pathToHashKeys(item.partialPath); + (0,forEach/* default */.A)(keys, (currKey) => { + dict[currKey] = true; + }); + }); + return dict; + }); + let newData = partialAlts; + // maxLookahead loop + for (let pathLength = 1; pathLength <= k; pathLength++) { + const currDataset = newData; + newData = initializeArrayOfArrays(currDataset.length); + // alternatives loop + for (let altIdx = 0; altIdx < currDataset.length; altIdx++) { + const currAltPathsAndSuffixes = currDataset[altIdx]; + // paths in current alternative loop + for (let currPathIdx = 0; currPathIdx < currAltPathsAndSuffixes.length; currPathIdx++) { + const currPathPrefix = currAltPathsAndSuffixes[currPathIdx].partialPath; + const suffixDef = currAltPathsAndSuffixes[currPathIdx].suffixDef; + const prefixKeys = pathToHashKeys(currPathPrefix); + const isUnique = isUniquePrefixHash(altsHashes, prefixKeys, altIdx); + // End of the line for this path. + if (isUnique || (0,isEmpty/* default */.A)(suffixDef) || currPathPrefix.length === k) { + const currAltResult = finalResult[altIdx]; + // TODO: Can we implement a containsPath using Maps/Dictionaries? + if (containsPath(currAltResult, currPathPrefix) === false) { + currAltResult.push(currPathPrefix); + // Update all new keys for the current path. + for (let j = 0; j < prefixKeys.length; j++) { + const currKey = prefixKeys[j]; + altsHashes[altIdx][currKey] = true; + } + } + } + // Expand longer paths + else { + const newPartialPathsAndSuffixes = possiblePathsFrom(suffixDef, pathLength + 1, currPathPrefix); + newData[altIdx] = newData[altIdx].concat(newPartialPathsAndSuffixes); + // Update keys for new known paths + (0,forEach/* default */.A)(newPartialPathsAndSuffixes, (item) => { + const prefixKeys = pathToHashKeys(item.partialPath); + (0,forEach/* default */.A)(prefixKeys, (key) => { + altsHashes[altIdx][key] = true; + }); + }); + } + } + } + } + return finalResult; +} +function getLookaheadPathsForOr(occurrence, ruleGrammar, k, orProd) { + const visitor = new InsideDefinitionFinderVisitor(occurrence, PROD_TYPE.ALTERNATION, orProd); + ruleGrammar.accept(visitor); + return lookAheadSequenceFromAlternatives(visitor.result, k); +} +function getLookaheadPathsForOptionalProd(occurrence, ruleGrammar, prodType, k) { + const insideDefVisitor = new InsideDefinitionFinderVisitor(occurrence, prodType); + ruleGrammar.accept(insideDefVisitor); + const insideDef = insideDefVisitor.result; + const afterDefWalker = new RestDefinitionFinderWalker(ruleGrammar, occurrence, prodType); + const afterDef = afterDefWalker.startWalking(); + const insideFlat = new Alternative({ definition: insideDef }); + const afterFlat = new Alternative({ definition: afterDef }); + return lookAheadSequenceFromAlternatives([insideFlat, afterFlat], k); +} +function containsPath(alternative, searchPath) { + compareOtherPath: for (let i = 0; i < alternative.length; i++) { + const otherPath = alternative[i]; + if (otherPath.length !== searchPath.length) { + continue; + } + for (let j = 0; j < otherPath.length; j++) { + const searchTok = searchPath[j]; + const otherTok = otherPath[j]; + const matchingTokens = searchTok === otherTok || + otherTok.categoryMatchesMap[searchTok.tokenTypeIdx] !== undefined; + if (matchingTokens === false) { + continue compareOtherPath; + } + } + return true; + } + return false; +} +function isStrictPrefixOfPath(prefix, other) { + return (prefix.length < other.length && + lodash_es_every(prefix, (tokType, idx) => { + const otherTokType = other[idx]; + return (tokType === otherTokType || + otherTokType.categoryMatchesMap[tokType.tokenTypeIdx]); + })); +} +function areTokenCategoriesNotUsed(lookAheadPaths) { + return lodash_es_every(lookAheadPaths, (singleAltPaths) => lodash_es_every(singleAltPaths, (singlePath) => lodash_es_every(singlePath, (token) => (0,isEmpty/* default */.A)(token.categoryMatches)))); +} +//# sourceMappingURL=lookahead.js.map +;// CONCATENATED MODULE: ./node_modules/chevrotain/lib/src/parse/grammar/checks.js + + + + + + +function validateLookahead(options) { + const lookaheadValidationErrorMessages = options.lookaheadStrategy.validate({ + rules: options.rules, + tokenTypes: options.tokenTypes, + grammarName: options.grammarName, + }); + return (0,lodash_es_map/* default */.A)(lookaheadValidationErrorMessages, (errorMessage) => (Object.assign({ type: ParserDefinitionErrorType.CUSTOM_LOOKAHEAD_VALIDATION }, errorMessage))); +} +function validateGrammar(topLevels, tokenTypes, errMsgProvider, grammarName) { + const duplicateErrors = lodash_es_flatMap(topLevels, (currTopLevel) => validateDuplicateProductions(currTopLevel, errMsgProvider)); + const termsNamespaceConflictErrors = checkTerminalAndNoneTerminalsNameSpace(topLevels, tokenTypes, errMsgProvider); + const tooManyAltsErrors = lodash_es_flatMap(topLevels, (curRule) => validateTooManyAlts(curRule, errMsgProvider)); + const duplicateRulesError = lodash_es_flatMap(topLevels, (curRule) => validateRuleDoesNotAlreadyExist(curRule, topLevels, grammarName, errMsgProvider)); + return duplicateErrors.concat(termsNamespaceConflictErrors, tooManyAltsErrors, duplicateRulesError); +} +function validateDuplicateProductions(topLevelRule, errMsgProvider) { + const collectorVisitor = new OccurrenceValidationCollector(); + topLevelRule.accept(collectorVisitor); + const allRuleProductions = collectorVisitor.allProductions; + const productionGroups = lodash_es_groupBy(allRuleProductions, identifyProductionForDuplicates); + const duplicates = lodash_es_pickBy(productionGroups, (currGroup) => { + return currGroup.length > 1; + }); + const errors = (0,lodash_es_map/* default */.A)((0,lodash_es_values/* default */.A)(duplicates), (currDuplicates) => { + const firstProd = lodash_es_head(currDuplicates); + const msg = errMsgProvider.buildDuplicateFoundError(topLevelRule, currDuplicates); + const dslName = getProductionDslName(firstProd); + const defError = { + message: msg, + type: ParserDefinitionErrorType.DUPLICATE_PRODUCTIONS, + ruleName: topLevelRule.name, + dslName: dslName, + occurrence: firstProd.idx, + }; + const param = getExtraProductionArgument(firstProd); + if (param) { + defError.parameter = param; + } + return defError; + }); + return errors; +} +function identifyProductionForDuplicates(prod) { + return `${getProductionDslName(prod)}_#_${prod.idx}_#_${getExtraProductionArgument(prod)}`; +} +function getExtraProductionArgument(prod) { + if (prod instanceof Terminal) { + return prod.terminalType.name; + } + else if (prod instanceof model_NonTerminal) { + return prod.nonTerminalName; + } + else { + return ""; + } +} +class OccurrenceValidationCollector extends visitor_GAstVisitor { + constructor() { + super(...arguments); + this.allProductions = []; + } + visitNonTerminal(subrule) { + this.allProductions.push(subrule); + } + visitOption(option) { + this.allProductions.push(option); + } + visitRepetitionWithSeparator(manySep) { + this.allProductions.push(manySep); + } + visitRepetitionMandatory(atLeastOne) { + this.allProductions.push(atLeastOne); + } + visitRepetitionMandatoryWithSeparator(atLeastOneSep) { + this.allProductions.push(atLeastOneSep); + } + visitRepetition(many) { + this.allProductions.push(many); + } + visitAlternation(or) { + this.allProductions.push(or); + } + visitTerminal(terminal) { + this.allProductions.push(terminal); + } +} +function validateRuleDoesNotAlreadyExist(rule, allRules, className, errMsgProvider) { + const errors = []; + const occurrences = (0,reduce/* default */.A)(allRules, (result, curRule) => { + if (curRule.name === rule.name) { + return result + 1; + } + return result; + }, 0); + if (occurrences > 1) { + const errMsg = errMsgProvider.buildDuplicateRuleNameError({ + topLevelRule: rule, + grammarName: className, + }); + errors.push({ + message: errMsg, + type: ParserDefinitionErrorType.DUPLICATE_RULE_NAME, + ruleName: rule.name, + }); + } + return errors; +} +// TODO: is there anyway to get only the rule names of rules inherited from the super grammars? +// This is not part of the IGrammarErrorProvider because the validation cannot be performed on +// The grammar structure, only at runtime. +function validateRuleIsOverridden(ruleName, definedRulesNames, className) { + const errors = []; + let errMsg; + if (!lodash_es_includes(definedRulesNames, ruleName)) { + errMsg = + `Invalid rule override, rule: ->${ruleName}<- cannot be overridden in the grammar: ->${className}<-` + + `as it is not defined in any of the super grammars `; + errors.push({ + message: errMsg, + type: ParserDefinitionErrorType.INVALID_RULE_OVERRIDE, + ruleName: ruleName, + }); + } + return errors; +} +function validateNoLeftRecursion(topRule, currRule, errMsgProvider, path = []) { + const errors = []; + const nextNonTerminals = getFirstNoneTerminal(currRule.definition); + if ((0,isEmpty/* default */.A)(nextNonTerminals)) { + return []; + } + else { + const ruleName = topRule.name; + const foundLeftRecursion = lodash_es_includes(nextNonTerminals, topRule); + if (foundLeftRecursion) { + errors.push({ + message: errMsgProvider.buildLeftRecursionError({ + topLevelRule: topRule, + leftRecursionPath: path, + }), + type: ParserDefinitionErrorType.LEFT_RECURSION, + ruleName: ruleName, + }); + } + // we are only looking for cyclic paths leading back to the specific topRule + // other cyclic paths are ignored, we still need this difference to avoid infinite loops... + const validNextSteps = lodash_es_difference(nextNonTerminals, path.concat([topRule])); + const errorsFromNextSteps = lodash_es_flatMap(validNextSteps, (currRefRule) => { + const newPath = (0,clone/* default */.A)(path); + newPath.push(currRefRule); + return validateNoLeftRecursion(topRule, currRefRule, errMsgProvider, newPath); + }); + return errors.concat(errorsFromNextSteps); + } +} +function getFirstNoneTerminal(definition) { + let result = []; + if ((0,isEmpty/* default */.A)(definition)) { + return result; + } + const firstProd = lodash_es_head(definition); + /* istanbul ignore else */ + if (firstProd instanceof model_NonTerminal) { + result.push(firstProd.referencedRule); + } + else if (firstProd instanceof Alternative || + firstProd instanceof Option || + firstProd instanceof RepetitionMandatory || + firstProd instanceof RepetitionMandatoryWithSeparator || + firstProd instanceof RepetitionWithSeparator || + firstProd instanceof Repetition) { + result = result.concat(getFirstNoneTerminal(firstProd.definition)); + } + else if (firstProd instanceof Alternation) { + // each sub definition in alternation is a FLAT + result = (0,lodash_es_flatten/* default */.A)((0,lodash_es_map/* default */.A)(firstProd.definition, (currSubDef) => getFirstNoneTerminal(currSubDef.definition))); + } + else if (firstProd instanceof Terminal) { + // nothing to see, move along + } + else { + throw Error("non exhaustive match"); + } + const isFirstOptional = isOptionalProd(firstProd); + const hasMore = definition.length > 1; + if (isFirstOptional && hasMore) { + const rest = lodash_es_drop(definition); + return result.concat(getFirstNoneTerminal(rest)); + } + else { + return result; + } +} +class OrCollector extends visitor_GAstVisitor { + constructor() { + super(...arguments); + this.alternations = []; + } + visitAlternation(node) { + this.alternations.push(node); + } +} +function validateEmptyOrAlternative(topLevelRule, errMsgProvider) { + const orCollector = new OrCollector(); + topLevelRule.accept(orCollector); + const ors = orCollector.alternations; + const errors = lodash_es_flatMap(ors, (currOr) => { + const exceptLast = lodash_es_dropRight(currOr.definition); + return lodash_es_flatMap(exceptLast, (currAlternative, currAltIdx) => { + const possibleFirstInAlt = nextPossibleTokensAfter([currAlternative], [], tokenStructuredMatcher, 1); + if ((0,isEmpty/* default */.A)(possibleFirstInAlt)) { + return [ + { + message: errMsgProvider.buildEmptyAlternationError({ + topLevelRule: topLevelRule, + alternation: currOr, + emptyChoiceIdx: currAltIdx, + }), + type: ParserDefinitionErrorType.NONE_LAST_EMPTY_ALT, + ruleName: topLevelRule.name, + occurrence: currOr.idx, + alternative: currAltIdx + 1, + }, + ]; + } + else { + return []; + } + }); + }); + return errors; +} +function validateAmbiguousAlternationAlternatives(topLevelRule, globalMaxLookahead, errMsgProvider) { + const orCollector = new OrCollector(); + topLevelRule.accept(orCollector); + let ors = orCollector.alternations; + // New Handling of ignoring ambiguities + // - https://github.com/chevrotain/chevrotain/issues/869 + ors = lodash_es_reject(ors, (currOr) => currOr.ignoreAmbiguities === true); + const errors = lodash_es_flatMap(ors, (currOr) => { + const currOccurrence = currOr.idx; + const actualMaxLookahead = currOr.maxLookahead || globalMaxLookahead; + const alternatives = getLookaheadPathsForOr(currOccurrence, topLevelRule, actualMaxLookahead, currOr); + const altsAmbiguityErrors = checkAlternativesAmbiguities(alternatives, currOr, topLevelRule, errMsgProvider); + const altsPrefixAmbiguityErrors = checkPrefixAlternativesAmbiguities(alternatives, currOr, topLevelRule, errMsgProvider); + return altsAmbiguityErrors.concat(altsPrefixAmbiguityErrors); + }); + return errors; +} +class RepetitionCollector extends visitor_GAstVisitor { + constructor() { + super(...arguments); + this.allProductions = []; + } + visitRepetitionWithSeparator(manySep) { + this.allProductions.push(manySep); + } + visitRepetitionMandatory(atLeastOne) { + this.allProductions.push(atLeastOne); + } + visitRepetitionMandatoryWithSeparator(atLeastOneSep) { + this.allProductions.push(atLeastOneSep); + } + visitRepetition(many) { + this.allProductions.push(many); + } +} +function validateTooManyAlts(topLevelRule, errMsgProvider) { + const orCollector = new OrCollector(); + topLevelRule.accept(orCollector); + const ors = orCollector.alternations; + const errors = lodash_es_flatMap(ors, (currOr) => { + if (currOr.definition.length > 255) { + return [ + { + message: errMsgProvider.buildTooManyAlternativesError({ + topLevelRule: topLevelRule, + alternation: currOr, + }), + type: ParserDefinitionErrorType.TOO_MANY_ALTS, + ruleName: topLevelRule.name, + occurrence: currOr.idx, + }, + ]; + } + else { + return []; + } + }); + return errors; +} +function validateSomeNonEmptyLookaheadPath(topLevelRules, maxLookahead, errMsgProvider) { + const errors = []; + (0,forEach/* default */.A)(topLevelRules, (currTopRule) => { + const collectorVisitor = new RepetitionCollector(); + currTopRule.accept(collectorVisitor); + const allRuleProductions = collectorVisitor.allProductions; + (0,forEach/* default */.A)(allRuleProductions, (currProd) => { + const prodType = getProdType(currProd); + const actualMaxLookahead = currProd.maxLookahead || maxLookahead; + const currOccurrence = currProd.idx; + const paths = getLookaheadPathsForOptionalProd(currOccurrence, currTopRule, prodType, actualMaxLookahead); + const pathsInsideProduction = paths[0]; + if ((0,isEmpty/* default */.A)((0,lodash_es_flatten/* default */.A)(pathsInsideProduction))) { + const errMsg = errMsgProvider.buildEmptyRepetitionError({ + topLevelRule: currTopRule, + repetition: currProd, + }); + errors.push({ + message: errMsg, + type: ParserDefinitionErrorType.NO_NON_EMPTY_LOOKAHEAD, + ruleName: currTopRule.name, + }); + } + }); + }); + return errors; +} +function checkAlternativesAmbiguities(alternatives, alternation, rule, errMsgProvider) { + const foundAmbiguousPaths = []; + const identicalAmbiguities = (0,reduce/* default */.A)(alternatives, (result, currAlt, currAltIdx) => { + // ignore (skip) ambiguities with this alternative + if (alternation.definition[currAltIdx].ignoreAmbiguities === true) { + return result; + } + (0,forEach/* default */.A)(currAlt, (currPath) => { + const altsCurrPathAppearsIn = [currAltIdx]; + (0,forEach/* default */.A)(alternatives, (currOtherAlt, currOtherAltIdx) => { + if (currAltIdx !== currOtherAltIdx && + containsPath(currOtherAlt, currPath) && + // ignore (skip) ambiguities with this "other" alternative + alternation.definition[currOtherAltIdx].ignoreAmbiguities !== true) { + altsCurrPathAppearsIn.push(currOtherAltIdx); + } + }); + if (altsCurrPathAppearsIn.length > 1 && + !containsPath(foundAmbiguousPaths, currPath)) { + foundAmbiguousPaths.push(currPath); + result.push({ + alts: altsCurrPathAppearsIn, + path: currPath, + }); + } + }); + return result; + }, []); + const currErrors = (0,lodash_es_map/* default */.A)(identicalAmbiguities, (currAmbDescriptor) => { + const ambgIndices = (0,lodash_es_map/* default */.A)(currAmbDescriptor.alts, (currAltIdx) => currAltIdx + 1); + const currMessage = errMsgProvider.buildAlternationAmbiguityError({ + topLevelRule: rule, + alternation: alternation, + ambiguityIndices: ambgIndices, + prefixPath: currAmbDescriptor.path, + }); + return { + message: currMessage, + type: ParserDefinitionErrorType.AMBIGUOUS_ALTS, + ruleName: rule.name, + occurrence: alternation.idx, + alternatives: currAmbDescriptor.alts, + }; + }); + return currErrors; +} +function checkPrefixAlternativesAmbiguities(alternatives, alternation, rule, errMsgProvider) { + // flatten + const pathsAndIndices = (0,reduce/* default */.A)(alternatives, (result, currAlt, idx) => { + const currPathsAndIdx = (0,lodash_es_map/* default */.A)(currAlt, (currPath) => { + return { idx: idx, path: currPath }; + }); + return result.concat(currPathsAndIdx); + }, []); + const errors = lodash_es_compact(lodash_es_flatMap(pathsAndIndices, (currPathAndIdx) => { + const alternativeGast = alternation.definition[currPathAndIdx.idx]; + // ignore (skip) ambiguities with this alternative + if (alternativeGast.ignoreAmbiguities === true) { + return []; + } + const targetIdx = currPathAndIdx.idx; + const targetPath = currPathAndIdx.path; + const prefixAmbiguitiesPathsAndIndices = (0,filter/* default */.A)(pathsAndIndices, (searchPathAndIdx) => { + // prefix ambiguity can only be created from lower idx (higher priority) path + return ( + // ignore (skip) ambiguities with this "other" alternative + alternation.definition[searchPathAndIdx.idx].ignoreAmbiguities !== + true && + searchPathAndIdx.idx < targetIdx && + // checking for strict prefix because identical lookaheads + // will be be detected using a different validation. + isStrictPrefixOfPath(searchPathAndIdx.path, targetPath)); + }); + const currPathPrefixErrors = (0,lodash_es_map/* default */.A)(prefixAmbiguitiesPathsAndIndices, (currAmbPathAndIdx) => { + const ambgIndices = [currAmbPathAndIdx.idx + 1, targetIdx + 1]; + const occurrence = alternation.idx === 0 ? "" : alternation.idx; + const message = errMsgProvider.buildAlternationPrefixAmbiguityError({ + topLevelRule: rule, + alternation: alternation, + ambiguityIndices: ambgIndices, + prefixPath: currAmbPathAndIdx.path, + }); + return { + message: message, + type: ParserDefinitionErrorType.AMBIGUOUS_PREFIX_ALTS, + ruleName: rule.name, + occurrence: occurrence, + alternatives: ambgIndices, + }; + }); + return currPathPrefixErrors; + })); + return errors; +} +function checkTerminalAndNoneTerminalsNameSpace(topLevels, tokenTypes, errMsgProvider) { + const errors = []; + const tokenNames = (0,lodash_es_map/* default */.A)(tokenTypes, (currToken) => currToken.name); + (0,forEach/* default */.A)(topLevels, (currRule) => { + const currRuleName = currRule.name; + if (lodash_es_includes(tokenNames, currRuleName)) { + const errMsg = errMsgProvider.buildNamespaceConflictError(currRule); + errors.push({ + message: errMsg, + type: ParserDefinitionErrorType.CONFLICT_TOKENS_RULES_NAMESPACE, + ruleName: currRuleName, + }); + } + }); + return errors; +} +//# sourceMappingURL=checks.js.map +;// CONCATENATED MODULE: ./node_modules/chevrotain/lib/src/parse/grammar/gast/gast_resolver_public.js + + + + +function gast_resolver_public_resolveGrammar(options) { + const actualOptions = (0,defaults/* default */.A)(options, { + errMsgProvider: defaultGrammarResolverErrorProvider, + }); + const topRulesTable = {}; + (0,forEach/* default */.A)(options.rules, (rule) => { + topRulesTable[rule.name] = rule; + }); + return resolveGrammar(topRulesTable, actualOptions.errMsgProvider); +} +function gast_resolver_public_validateGrammar(options) { + options = (0,defaults/* default */.A)(options, { + errMsgProvider: defaultGrammarValidatorErrorProvider, + }); + return validateGrammar(options.rules, options.tokenTypes, options.errMsgProvider, options.grammarName); +} +//# sourceMappingURL=gast_resolver_public.js.map +;// CONCATENATED MODULE: ./node_modules/chevrotain/lib/src/parse/exceptions_public.js + +const MISMATCHED_TOKEN_EXCEPTION = "MismatchedTokenException"; +const NO_VIABLE_ALT_EXCEPTION = "NoViableAltException"; +const EARLY_EXIT_EXCEPTION = "EarlyExitException"; +const NOT_ALL_INPUT_PARSED_EXCEPTION = "NotAllInputParsedException"; +const RECOGNITION_EXCEPTION_NAMES = [ + MISMATCHED_TOKEN_EXCEPTION, + NO_VIABLE_ALT_EXCEPTION, + EARLY_EXIT_EXCEPTION, + NOT_ALL_INPUT_PARSED_EXCEPTION, +]; +Object.freeze(RECOGNITION_EXCEPTION_NAMES); +// hacks to bypass no support for custom Errors in javascript/typescript +function isRecognitionException(error) { + // can't do instanceof on hacked custom js exceptions + return lodash_es_includes(RECOGNITION_EXCEPTION_NAMES, error.name); +} +class RecognitionException extends Error { + constructor(message, token) { + super(message); + this.token = token; + this.resyncedTokens = []; + // fix prototype chain when typescript target is ES5 + Object.setPrototypeOf(this, new.target.prototype); + /* istanbul ignore next - V8 workaround to remove constructor from stacktrace when typescript target is ES5 */ + if (Error.captureStackTrace) { + Error.captureStackTrace(this, this.constructor); + } + } +} +class MismatchedTokenException extends RecognitionException { + constructor(message, token, previousToken) { + super(message, token); + this.previousToken = previousToken; + this.name = MISMATCHED_TOKEN_EXCEPTION; + } +} +class NoViableAltException extends RecognitionException { + constructor(message, token, previousToken) { + super(message, token); + this.previousToken = previousToken; + this.name = NO_VIABLE_ALT_EXCEPTION; + } +} +class NotAllInputParsedException extends RecognitionException { + constructor(message, token) { + super(message, token); + this.name = NOT_ALL_INPUT_PARSED_EXCEPTION; + } +} +class EarlyExitException extends RecognitionException { + constructor(message, token, previousToken) { + super(message, token); + this.previousToken = previousToken; + this.name = EARLY_EXIT_EXCEPTION; + } +} +//# sourceMappingURL=exceptions_public.js.map +;// CONCATENATED MODULE: ./node_modules/chevrotain/lib/src/parse/parser/traits/recoverable.js + + + + + +const EOF_FOLLOW_KEY = {}; +const IN_RULE_RECOVERY_EXCEPTION = "InRuleRecoveryException"; +class InRuleRecoveryException extends Error { + constructor(message) { + super(message); + this.name = IN_RULE_RECOVERY_EXCEPTION; + } +} +/** + * This trait is responsible for the error recovery and fault tolerant logic + */ +class Recoverable { + initRecoverable(config) { + this.firstAfterRepMap = {}; + this.resyncFollows = {}; + this.recoveryEnabled = (0,has/* default */.A)(config, "recoveryEnabled") + ? config.recoveryEnabled // assumes end user provides the correct config value/type + : DEFAULT_PARSER_CONFIG.recoveryEnabled; + // performance optimization, NOOP will be inlined which + // effectively means that this optional feature does not exist + // when not used. + if (this.recoveryEnabled) { + this.attemptInRepetitionRecovery = attemptInRepetitionRecovery; + } + } + getTokenToInsert(tokType) { + const tokToInsert = createTokenInstance(tokType, "", NaN, NaN, NaN, NaN, NaN, NaN); + tokToInsert.isInsertedInRecovery = true; + return tokToInsert; + } + canTokenTypeBeInsertedInRecovery(tokType) { + return true; + } + canTokenTypeBeDeletedInRecovery(tokType) { + return true; + } + tryInRepetitionRecovery(grammarRule, grammarRuleArgs, lookAheadFunc, expectedTokType) { + // TODO: can the resyncTokenType be cached? + const reSyncTokType = this.findReSyncTokenType(); + const savedLexerState = this.exportLexerState(); + const resyncedTokens = []; + let passedResyncPoint = false; + const nextTokenWithoutResync = this.LA(1); + let currToken = this.LA(1); + const generateErrorMessage = () => { + const previousToken = this.LA(0); + // we are preemptively re-syncing before an error has been detected, therefor we must reproduce + // the error that would have been thrown + const msg = this.errorMessageProvider.buildMismatchTokenMessage({ + expected: expectedTokType, + actual: nextTokenWithoutResync, + previous: previousToken, + ruleName: this.getCurrRuleFullName(), + }); + const error = new MismatchedTokenException(msg, nextTokenWithoutResync, this.LA(0)); + // the first token here will be the original cause of the error, this is not part of the resyncedTokens property. + error.resyncedTokens = lodash_es_dropRight(resyncedTokens); + this.SAVE_ERROR(error); + }; + while (!passedResyncPoint) { + // re-synced to a point where we can safely exit the repetition/ + if (this.tokenMatcher(currToken, expectedTokType)) { + generateErrorMessage(); + return; // must return here to avoid reverting the inputIdx + } + else if (lookAheadFunc.call(this)) { + // we skipped enough tokens so we can resync right back into another iteration of the repetition grammar rule + generateErrorMessage(); + // recursive invocation in other to support multiple re-syncs in the same top level repetition grammar rule + grammarRule.apply(this, grammarRuleArgs); + return; // must return here to avoid reverting the inputIdx + } + else if (this.tokenMatcher(currToken, reSyncTokType)) { + passedResyncPoint = true; + } + else { + currToken = this.SKIP_TOKEN(); + this.addToResyncTokens(currToken, resyncedTokens); + } + } + // we were unable to find a CLOSER point to resync inside the Repetition, reset the state. + // The parsing exception we were trying to prevent will happen in the NEXT parsing step. it may be handled by + // "between rules" resync recovery later in the flow. + this.importLexerState(savedLexerState); + } + shouldInRepetitionRecoveryBeTried(expectTokAfterLastMatch, nextTokIdx, notStuck) { + // Edge case of arriving from a MANY repetition which is stuck + // Attempting recovery in this case could cause an infinite loop + if (notStuck === false) { + return false; + } + // no need to recover, next token is what we expect... + if (this.tokenMatcher(this.LA(1), expectTokAfterLastMatch)) { + return false; + } + // error recovery is disabled during backtracking as it can make the parser ignore a valid grammar path + // and prefer some backtracking path that includes recovered errors. + if (this.isBackTracking()) { + return false; + } + // if we can perform inRule recovery (single token insertion or deletion) we always prefer that recovery algorithm + // because if it works, it makes the least amount of changes to the input stream (greedy algorithm) + //noinspection RedundantIfStatementJS + if (this.canPerformInRuleRecovery(expectTokAfterLastMatch, this.getFollowsForInRuleRecovery(expectTokAfterLastMatch, nextTokIdx))) { + return false; + } + return true; + } + // Error Recovery functionality + getFollowsForInRuleRecovery(tokType, tokIdxInRule) { + const grammarPath = this.getCurrentGrammarPath(tokType, tokIdxInRule); + const follows = this.getNextPossibleTokenTypes(grammarPath); + return follows; + } + tryInRuleRecovery(expectedTokType, follows) { + if (this.canRecoverWithSingleTokenInsertion(expectedTokType, follows)) { + const tokToInsert = this.getTokenToInsert(expectedTokType); + return tokToInsert; + } + if (this.canRecoverWithSingleTokenDeletion(expectedTokType)) { + const nextTok = this.SKIP_TOKEN(); + this.consumeToken(); + return nextTok; + } + throw new InRuleRecoveryException("sad sad panda"); + } + canPerformInRuleRecovery(expectedToken, follows) { + return (this.canRecoverWithSingleTokenInsertion(expectedToken, follows) || + this.canRecoverWithSingleTokenDeletion(expectedToken)); + } + canRecoverWithSingleTokenInsertion(expectedTokType, follows) { + if (!this.canTokenTypeBeInsertedInRecovery(expectedTokType)) { + return false; + } + // must know the possible following tokens to perform single token insertion + if ((0,isEmpty/* default */.A)(follows)) { + return false; + } + const mismatchedTok = this.LA(1); + const isMisMatchedTokInFollows = (0,find/* default */.A)(follows, (possibleFollowsTokType) => { + return this.tokenMatcher(mismatchedTok, possibleFollowsTokType); + }) !== undefined; + return isMisMatchedTokInFollows; + } + canRecoverWithSingleTokenDeletion(expectedTokType) { + if (!this.canTokenTypeBeDeletedInRecovery(expectedTokType)) { + return false; + } + const isNextTokenWhatIsExpected = this.tokenMatcher(this.LA(2), expectedTokType); + return isNextTokenWhatIsExpected; + } + isInCurrentRuleReSyncSet(tokenTypeIdx) { + const followKey = this.getCurrFollowKey(); + const currentRuleReSyncSet = this.getFollowSetFromFollowKey(followKey); + return lodash_es_includes(currentRuleReSyncSet, tokenTypeIdx); + } + findReSyncTokenType() { + const allPossibleReSyncTokTypes = this.flattenFollowSet(); + // this loop will always terminate as EOF is always in the follow stack and also always (virtually) in the input + let nextToken = this.LA(1); + let k = 2; + while (true) { + const foundMatch = (0,find/* default */.A)(allPossibleReSyncTokTypes, (resyncTokType) => { + const canMatch = tokenMatcher(nextToken, resyncTokType); + return canMatch; + }); + if (foundMatch !== undefined) { + return foundMatch; + } + nextToken = this.LA(k); + k++; + } + } + getCurrFollowKey() { + // the length is at least one as we always add the ruleName to the stack before invoking the rule. + if (this.RULE_STACK.length === 1) { + return EOF_FOLLOW_KEY; + } + const currRuleShortName = this.getLastExplicitRuleShortName(); + const currRuleIdx = this.getLastExplicitRuleOccurrenceIndex(); + const prevRuleShortName = this.getPreviousExplicitRuleShortName(); + return { + ruleName: this.shortRuleNameToFullName(currRuleShortName), + idxInCallingRule: currRuleIdx, + inRule: this.shortRuleNameToFullName(prevRuleShortName), + }; + } + buildFullFollowKeyStack() { + const explicitRuleStack = this.RULE_STACK; + const explicitOccurrenceStack = this.RULE_OCCURRENCE_STACK; + return (0,lodash_es_map/* default */.A)(explicitRuleStack, (ruleName, idx) => { + if (idx === 0) { + return EOF_FOLLOW_KEY; + } + return { + ruleName: this.shortRuleNameToFullName(ruleName), + idxInCallingRule: explicitOccurrenceStack[idx], + inRule: this.shortRuleNameToFullName(explicitRuleStack[idx - 1]), + }; + }); + } + flattenFollowSet() { + const followStack = (0,lodash_es_map/* default */.A)(this.buildFullFollowKeyStack(), (currKey) => { + return this.getFollowSetFromFollowKey(currKey); + }); + return (0,lodash_es_flatten/* default */.A)(followStack); + } + getFollowSetFromFollowKey(followKey) { + if (followKey === EOF_FOLLOW_KEY) { + return [EOF]; + } + const followName = followKey.ruleName + followKey.idxInCallingRule + constants_IN + followKey.inRule; + return this.resyncFollows[followName]; + } + // It does not make any sense to include a virtual EOF token in the list of resynced tokens + // as EOF does not really exist and thus does not contain any useful information (line/column numbers) + addToResyncTokens(token, resyncTokens) { + if (!this.tokenMatcher(token, EOF)) { + resyncTokens.push(token); + } + return resyncTokens; + } + reSyncTo(tokType) { + const resyncedTokens = []; + let nextTok = this.LA(1); + while (this.tokenMatcher(nextTok, tokType) === false) { + nextTok = this.SKIP_TOKEN(); + this.addToResyncTokens(nextTok, resyncedTokens); + } + // the last token is not part of the error. + return lodash_es_dropRight(resyncedTokens); + } + attemptInRepetitionRecovery(prodFunc, args, lookaheadFunc, dslMethodIdx, prodOccurrence, nextToksWalker, notStuck) { + // by default this is a NO-OP + // The actual implementation is with the function(not method) below + } + getCurrentGrammarPath(tokType, tokIdxInRule) { + const pathRuleStack = this.getHumanReadableRuleStack(); + const pathOccurrenceStack = (0,clone/* default */.A)(this.RULE_OCCURRENCE_STACK); + const grammarPath = { + ruleStack: pathRuleStack, + occurrenceStack: pathOccurrenceStack, + lastTok: tokType, + lastTokOccurrence: tokIdxInRule, + }; + return grammarPath; + } + getHumanReadableRuleStack() { + return (0,lodash_es_map/* default */.A)(this.RULE_STACK, (currShortName) => this.shortRuleNameToFullName(currShortName)); + } +} +function attemptInRepetitionRecovery(prodFunc, args, lookaheadFunc, dslMethodIdx, prodOccurrence, nextToksWalker, notStuck) { + const key = this.getKeyForAutomaticLookahead(dslMethodIdx, prodOccurrence); + let firstAfterRepInfo = this.firstAfterRepMap[key]; + if (firstAfterRepInfo === undefined) { + const currRuleName = this.getCurrRuleFullName(); + const ruleGrammar = this.getGAstProductions()[currRuleName]; + const walker = new nextToksWalker(ruleGrammar, prodOccurrence); + firstAfterRepInfo = walker.startWalking(); + this.firstAfterRepMap[key] = firstAfterRepInfo; + } + let expectTokAfterLastMatch = firstAfterRepInfo.token; + let nextTokIdx = firstAfterRepInfo.occurrence; + const isEndOfRule = firstAfterRepInfo.isEndOfRule; + // special edge case of a TOP most repetition after which the input should END. + // this will force an attempt for inRule recovery in that scenario. + if (this.RULE_STACK.length === 1 && + isEndOfRule && + expectTokAfterLastMatch === undefined) { + expectTokAfterLastMatch = EOF; + nextTokIdx = 1; + } + // We don't have anything to re-sync to... + // this condition was extracted from `shouldInRepetitionRecoveryBeTried` to act as a type-guard + if (expectTokAfterLastMatch === undefined || nextTokIdx === undefined) { + return; + } + if (this.shouldInRepetitionRecoveryBeTried(expectTokAfterLastMatch, nextTokIdx, notStuck)) { + // TODO: performance optimization: instead of passing the original args here, we modify + // the args param (or create a new one) and make sure the lookahead func is explicitly provided + // to avoid searching the cache for it once more. + this.tryInRepetitionRecovery(prodFunc, args, lookaheadFunc, expectTokAfterLastMatch); + } +} +//# sourceMappingURL=recoverable.js.map +;// CONCATENATED MODULE: ./node_modules/chevrotain/lib/src/parse/grammar/keys.js +// Lookahead keys are 32Bit integers in the form +// TTTTTTTT-ZZZZZZZZZZZZ-YYYY-XXXXXXXX +// XXXX -> Occurrence Index bitmap. +// YYYY -> DSL Method Type bitmap. +// ZZZZZZZZZZZZZZZ -> Rule short Index bitmap. +// TTTTTTTTT -> alternation alternative index bitmap +const BITS_FOR_METHOD_TYPE = 4; +const BITS_FOR_OCCURRENCE_IDX = 8; +const BITS_FOR_RULE_IDX = 12; +// TODO: validation, this means that there may at most 2^8 --> 256 alternatives for an alternation. +const BITS_FOR_ALT_IDX = 8; +// short string used as part of mapping keys. +// being short improves the performance when composing KEYS for maps out of these +// The 5 - 8 bits (16 possible values, are reserved for the DSL method indices) +const OR_IDX = 1 << BITS_FOR_OCCURRENCE_IDX; +const OPTION_IDX = 2 << BITS_FOR_OCCURRENCE_IDX; +const MANY_IDX = 3 << BITS_FOR_OCCURRENCE_IDX; +const AT_LEAST_ONE_IDX = 4 << BITS_FOR_OCCURRENCE_IDX; +const MANY_SEP_IDX = 5 << BITS_FOR_OCCURRENCE_IDX; +const AT_LEAST_ONE_SEP_IDX = 6 << BITS_FOR_OCCURRENCE_IDX; +// this actually returns a number, but it is always used as a string (object prop key) +function getKeyForAutomaticLookahead(ruleIdx, dslMethodIdx, occurrence) { + return occurrence | dslMethodIdx | ruleIdx; +} +const BITS_START_FOR_ALT_IDX = 32 - BITS_FOR_ALT_IDX; +//# sourceMappingURL=keys.js.map +;// CONCATENATED MODULE: ./node_modules/chevrotain/lib/src/parse/grammar/llk_lookahead.js + + + + + +class LLkLookaheadStrategy { + constructor(options) { + var _a; + this.maxLookahead = + (_a = options === null || options === void 0 ? void 0 : options.maxLookahead) !== null && _a !== void 0 ? _a : DEFAULT_PARSER_CONFIG.maxLookahead; + } + validate(options) { + const leftRecursionErrors = this.validateNoLeftRecursion(options.rules); + if ((0,isEmpty/* default */.A)(leftRecursionErrors)) { + const emptyAltErrors = this.validateEmptyOrAlternatives(options.rules); + const ambiguousAltsErrors = this.validateAmbiguousAlternationAlternatives(options.rules, this.maxLookahead); + const emptyRepetitionErrors = this.validateSomeNonEmptyLookaheadPath(options.rules, this.maxLookahead); + const allErrors = [ + ...leftRecursionErrors, + ...emptyAltErrors, + ...ambiguousAltsErrors, + ...emptyRepetitionErrors, + ]; + return allErrors; + } + return leftRecursionErrors; + } + validateNoLeftRecursion(rules) { + return lodash_es_flatMap(rules, (currTopRule) => validateNoLeftRecursion(currTopRule, currTopRule, defaultGrammarValidatorErrorProvider)); + } + validateEmptyOrAlternatives(rules) { + return lodash_es_flatMap(rules, (currTopRule) => validateEmptyOrAlternative(currTopRule, defaultGrammarValidatorErrorProvider)); + } + validateAmbiguousAlternationAlternatives(rules, maxLookahead) { + return lodash_es_flatMap(rules, (currTopRule) => validateAmbiguousAlternationAlternatives(currTopRule, maxLookahead, defaultGrammarValidatorErrorProvider)); + } + validateSomeNonEmptyLookaheadPath(rules, maxLookahead) { + return validateSomeNonEmptyLookaheadPath(rules, maxLookahead, defaultGrammarValidatorErrorProvider); + } + buildLookaheadForAlternation(options) { + return buildLookaheadFuncForOr(options.prodOccurrence, options.rule, options.maxLookahead, options.hasPredicates, options.dynamicTokensEnabled, buildAlternativesLookAheadFunc); + } + buildLookaheadForOptional(options) { + return buildLookaheadFuncForOptionalProd(options.prodOccurrence, options.rule, options.maxLookahead, options.dynamicTokensEnabled, getProdType(options.prodType), buildSingleAlternativeLookaheadFunction); + } +} +//# sourceMappingURL=llk_lookahead.js.map +;// CONCATENATED MODULE: ./node_modules/chevrotain/lib/src/parse/parser/traits/looksahead.js + + + + + +/** + * Trait responsible for the lookahead related utilities and optimizations. + */ +class LooksAhead { + initLooksAhead(config) { + this.dynamicTokensEnabled = (0,has/* default */.A)(config, "dynamicTokensEnabled") + ? config.dynamicTokensEnabled // assumes end user provides the correct config value/type + : DEFAULT_PARSER_CONFIG.dynamicTokensEnabled; + this.maxLookahead = (0,has/* default */.A)(config, "maxLookahead") + ? config.maxLookahead // assumes end user provides the correct config value/type + : DEFAULT_PARSER_CONFIG.maxLookahead; + this.lookaheadStrategy = (0,has/* default */.A)(config, "lookaheadStrategy") + ? config.lookaheadStrategy // assumes end user provides the correct config value/type + : new LLkLookaheadStrategy({ maxLookahead: this.maxLookahead }); + this.lookAheadFuncsCache = new Map(); + } + preComputeLookaheadFunctions(rules) { + (0,forEach/* default */.A)(rules, (currRule) => { + this.TRACE_INIT(`${currRule.name} Rule Lookahead`, () => { + const { alternation, repetition, option, repetitionMandatory, repetitionMandatoryWithSeparator, repetitionWithSeparator, } = collectMethods(currRule); + (0,forEach/* default */.A)(alternation, (currProd) => { + const prodIdx = currProd.idx === 0 ? "" : currProd.idx; + this.TRACE_INIT(`${getProductionDslName(currProd)}${prodIdx}`, () => { + const laFunc = this.lookaheadStrategy.buildLookaheadForAlternation({ + prodOccurrence: currProd.idx, + rule: currRule, + maxLookahead: currProd.maxLookahead || this.maxLookahead, + hasPredicates: currProd.hasPredicates, + dynamicTokensEnabled: this.dynamicTokensEnabled, + }); + const key = getKeyForAutomaticLookahead(this.fullRuleNameToShort[currRule.name], OR_IDX, currProd.idx); + this.setLaFuncCache(key, laFunc); + }); + }); + (0,forEach/* default */.A)(repetition, (currProd) => { + this.computeLookaheadFunc(currRule, currProd.idx, MANY_IDX, "Repetition", currProd.maxLookahead, getProductionDslName(currProd)); + }); + (0,forEach/* default */.A)(option, (currProd) => { + this.computeLookaheadFunc(currRule, currProd.idx, OPTION_IDX, "Option", currProd.maxLookahead, getProductionDslName(currProd)); + }); + (0,forEach/* default */.A)(repetitionMandatory, (currProd) => { + this.computeLookaheadFunc(currRule, currProd.idx, AT_LEAST_ONE_IDX, "RepetitionMandatory", currProd.maxLookahead, getProductionDslName(currProd)); + }); + (0,forEach/* default */.A)(repetitionMandatoryWithSeparator, (currProd) => { + this.computeLookaheadFunc(currRule, currProd.idx, AT_LEAST_ONE_SEP_IDX, "RepetitionMandatoryWithSeparator", currProd.maxLookahead, getProductionDslName(currProd)); + }); + (0,forEach/* default */.A)(repetitionWithSeparator, (currProd) => { + this.computeLookaheadFunc(currRule, currProd.idx, MANY_SEP_IDX, "RepetitionWithSeparator", currProd.maxLookahead, getProductionDslName(currProd)); + }); + }); + }); + } + computeLookaheadFunc(rule, prodOccurrence, prodKey, prodType, prodMaxLookahead, dslMethodName) { + this.TRACE_INIT(`${dslMethodName}${prodOccurrence === 0 ? "" : prodOccurrence}`, () => { + const laFunc = this.lookaheadStrategy.buildLookaheadForOptional({ + prodOccurrence, + rule, + maxLookahead: prodMaxLookahead || this.maxLookahead, + dynamicTokensEnabled: this.dynamicTokensEnabled, + prodType, + }); + const key = getKeyForAutomaticLookahead(this.fullRuleNameToShort[rule.name], prodKey, prodOccurrence); + this.setLaFuncCache(key, laFunc); + }); + } + // this actually returns a number, but it is always used as a string (object prop key) + getKeyForAutomaticLookahead(dslMethodIdx, occurrence) { + const currRuleShortName = this.getLastExplicitRuleShortName(); + return getKeyForAutomaticLookahead(currRuleShortName, dslMethodIdx, occurrence); + } + getLaFuncFromCache(key) { + return this.lookAheadFuncsCache.get(key); + } + /* istanbul ignore next */ + setLaFuncCache(key, value) { + this.lookAheadFuncsCache.set(key, value); + } +} +class DslMethodsCollectorVisitor extends visitor_GAstVisitor { + constructor() { + super(...arguments); + this.dslMethods = { + option: [], + alternation: [], + repetition: [], + repetitionWithSeparator: [], + repetitionMandatory: [], + repetitionMandatoryWithSeparator: [], + }; + } + reset() { + this.dslMethods = { + option: [], + alternation: [], + repetition: [], + repetitionWithSeparator: [], + repetitionMandatory: [], + repetitionMandatoryWithSeparator: [], + }; + } + visitOption(option) { + this.dslMethods.option.push(option); + } + visitRepetitionWithSeparator(manySep) { + this.dslMethods.repetitionWithSeparator.push(manySep); + } + visitRepetitionMandatory(atLeastOne) { + this.dslMethods.repetitionMandatory.push(atLeastOne); + } + visitRepetitionMandatoryWithSeparator(atLeastOneSep) { + this.dslMethods.repetitionMandatoryWithSeparator.push(atLeastOneSep); + } + visitRepetition(many) { + this.dslMethods.repetition.push(many); + } + visitAlternation(or) { + this.dslMethods.alternation.push(or); + } +} +const collectorVisitor = new DslMethodsCollectorVisitor(); +function collectMethods(rule) { + collectorVisitor.reset(); + rule.accept(collectorVisitor); + const dslMethods = collectorVisitor.dslMethods; + // avoid uncleaned references + collectorVisitor.reset(); + return dslMethods; +} +//# sourceMappingURL=looksahead.js.map +;// CONCATENATED MODULE: ./node_modules/chevrotain/lib/src/parse/cst/cst.js +/** + * This nodeLocation tracking is not efficient and should only be used + * when error recovery is enabled or the Token Vector contains virtual Tokens + * (e.g, Python Indent/Outdent) + * As it executes the calculation for every single terminal/nonTerminal + * and does not rely on the fact the token vector is **sorted** + */ +function setNodeLocationOnlyOffset(currNodeLocation, newLocationInfo) { + // First (valid) update for this cst node + if (isNaN(currNodeLocation.startOffset) === true) { + // assumption1: Token location information is either NaN or a valid number + // assumption2: Token location information is fully valid if it exist + // (both start/end offsets exist and are numbers). + currNodeLocation.startOffset = newLocationInfo.startOffset; + currNodeLocation.endOffset = newLocationInfo.endOffset; + } + // Once the startOffset has been updated with a valid number it should never receive + // any farther updates as the Token vector is sorted. + // We still have to check this this condition for every new possible location info + // because with error recovery enabled we may encounter invalid tokens (NaN location props) + else if (currNodeLocation.endOffset < newLocationInfo.endOffset === true) { + currNodeLocation.endOffset = newLocationInfo.endOffset; + } +} +/** + * This nodeLocation tracking is not efficient and should only be used + * when error recovery is enabled or the Token Vector contains virtual Tokens + * (e.g, Python Indent/Outdent) + * As it executes the calculation for every single terminal/nonTerminal + * and does not rely on the fact the token vector is **sorted** + */ +function setNodeLocationFull(currNodeLocation, newLocationInfo) { + // First (valid) update for this cst node + if (isNaN(currNodeLocation.startOffset) === true) { + // assumption1: Token location information is either NaN or a valid number + // assumption2: Token location information is fully valid if it exist + // (all start/end props exist and are numbers). + currNodeLocation.startOffset = newLocationInfo.startOffset; + currNodeLocation.startColumn = newLocationInfo.startColumn; + currNodeLocation.startLine = newLocationInfo.startLine; + currNodeLocation.endOffset = newLocationInfo.endOffset; + currNodeLocation.endColumn = newLocationInfo.endColumn; + currNodeLocation.endLine = newLocationInfo.endLine; + } + // Once the start props has been updated with a valid number it should never receive + // any farther updates as the Token vector is sorted. + // We still have to check this this condition for every new possible location info + // because with error recovery enabled we may encounter invalid tokens (NaN location props) + else if (currNodeLocation.endOffset < newLocationInfo.endOffset === true) { + currNodeLocation.endOffset = newLocationInfo.endOffset; + currNodeLocation.endColumn = newLocationInfo.endColumn; + currNodeLocation.endLine = newLocationInfo.endLine; + } +} +function addTerminalToCst(node, token, tokenTypeName) { + if (node.children[tokenTypeName] === undefined) { + node.children[tokenTypeName] = [token]; + } + else { + node.children[tokenTypeName].push(token); + } +} +function addNoneTerminalToCst(node, ruleName, ruleResult) { + if (node.children[ruleName] === undefined) { + node.children[ruleName] = [ruleResult]; + } + else { + node.children[ruleName].push(ruleResult); + } +} +//# sourceMappingURL=cst.js.map +;// CONCATENATED MODULE: ./node_modules/chevrotain/lib/src/lang/lang_extensions.js +const NAME = "name"; +function defineNameProp(obj, nameValue) { + Object.defineProperty(obj, NAME, { + enumerable: false, + configurable: true, + writable: false, + value: nameValue, + }); +} +//# sourceMappingURL=lang_extensions.js.map +;// CONCATENATED MODULE: ./node_modules/chevrotain/lib/src/parse/cst/cst_visitor.js + + +function defaultVisit(ctx, param) { + const childrenNames = (0,keys/* default */.A)(ctx); + const childrenNamesLength = childrenNames.length; + for (let i = 0; i < childrenNamesLength; i++) { + const currChildName = childrenNames[i]; + const currChildArray = ctx[currChildName]; + const currChildArrayLength = currChildArray.length; + for (let j = 0; j < currChildArrayLength; j++) { + const currChild = currChildArray[j]; + // distinction between Tokens Children and CstNode children + if (currChild.tokenTypeIdx === undefined) { + this[currChild.name](currChild.children, param); + } + } + } + // defaultVisit does not support generic out param +} +function createBaseSemanticVisitorConstructor(grammarName, ruleNames) { + const derivedConstructor = function () { }; + // can be overwritten according to: + // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function/ + // name?redirectlocale=en-US&redirectslug=JavaScript%2FReference%2FGlobal_Objects%2FFunction%2Fname + defineNameProp(derivedConstructor, grammarName + "BaseSemantics"); + const semanticProto = { + visit: function (cstNode, param) { + // enables writing more concise visitor methods when CstNode has only a single child + if ((0,isArray/* default */.A)(cstNode)) { + // A CST Node's children dictionary can never have empty arrays as values + // If a key is defined there will be at least one element in the corresponding value array. + cstNode = cstNode[0]; + } + // enables passing optional CstNodes concisely. + if ((0,isUndefined/* default */.A)(cstNode)) { + return undefined; + } + return this[cstNode.name](cstNode.children, param); + }, + validateVisitor: function () { + const semanticDefinitionErrors = validateVisitor(this, ruleNames); + if (!(0,isEmpty/* default */.A)(semanticDefinitionErrors)) { + const errorMessages = (0,lodash_es_map/* default */.A)(semanticDefinitionErrors, (currDefError) => currDefError.msg); + throw Error(`Errors Detected in CST Visitor <${this.constructor.name}>:\n\t` + + `${errorMessages.join("\n\n").replace(/\n/g, "\n\t")}`); + } + }, + }; + derivedConstructor.prototype = semanticProto; + derivedConstructor.prototype.constructor = derivedConstructor; + derivedConstructor._RULE_NAMES = ruleNames; + return derivedConstructor; +} +function createBaseVisitorConstructorWithDefaults(grammarName, ruleNames, baseConstructor) { + const derivedConstructor = function () { }; + // can be overwritten according to: + // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function/ + // name?redirectlocale=en-US&redirectslug=JavaScript%2FReference%2FGlobal_Objects%2FFunction%2Fname + defineNameProp(derivedConstructor, grammarName + "BaseSemanticsWithDefaults"); + const withDefaultsProto = Object.create(baseConstructor.prototype); + (0,forEach/* default */.A)(ruleNames, (ruleName) => { + withDefaultsProto[ruleName] = defaultVisit; + }); + derivedConstructor.prototype = withDefaultsProto; + derivedConstructor.prototype.constructor = derivedConstructor; + return derivedConstructor; +} +var CstVisitorDefinitionError; +(function (CstVisitorDefinitionError) { + CstVisitorDefinitionError[CstVisitorDefinitionError["REDUNDANT_METHOD"] = 0] = "REDUNDANT_METHOD"; + CstVisitorDefinitionError[CstVisitorDefinitionError["MISSING_METHOD"] = 1] = "MISSING_METHOD"; +})(CstVisitorDefinitionError || (CstVisitorDefinitionError = {})); +function validateVisitor(visitorInstance, ruleNames) { + const missingErrors = validateMissingCstMethods(visitorInstance, ruleNames); + return missingErrors; +} +function validateMissingCstMethods(visitorInstance, ruleNames) { + const missingRuleNames = (0,filter/* default */.A)(ruleNames, (currRuleName) => { + return (0,isFunction/* default */.A)(visitorInstance[currRuleName]) === false; + }); + const errors = (0,lodash_es_map/* default */.A)(missingRuleNames, (currRuleName) => { + return { + msg: `Missing visitor method: <${currRuleName}> on ${(visitorInstance.constructor.name)} CST Visitor.`, + type: CstVisitorDefinitionError.MISSING_METHOD, + methodName: currRuleName, + }; + }); + return lodash_es_compact(errors); +} +//# sourceMappingURL=cst_visitor.js.map +;// CONCATENATED MODULE: ./node_modules/chevrotain/lib/src/parse/parser/traits/tree_builder.js + + + + +/** + * This trait is responsible for the CST building logic. + */ +class TreeBuilder { + initTreeBuilder(config) { + this.CST_STACK = []; + // outputCst is no longer exposed/defined in the pubic API + this.outputCst = config.outputCst; + this.nodeLocationTracking = (0,has/* default */.A)(config, "nodeLocationTracking") + ? config.nodeLocationTracking // assumes end user provides the correct config value/type + : DEFAULT_PARSER_CONFIG.nodeLocationTracking; + if (!this.outputCst) { + this.cstInvocationStateUpdate = noop/* default */.A; + this.cstFinallyStateUpdate = noop/* default */.A; + this.cstPostTerminal = noop/* default */.A; + this.cstPostNonTerminal = noop/* default */.A; + this.cstPostRule = noop/* default */.A; + } + else { + if (/full/i.test(this.nodeLocationTracking)) { + if (this.recoveryEnabled) { + this.setNodeLocationFromToken = setNodeLocationFull; + this.setNodeLocationFromNode = setNodeLocationFull; + this.cstPostRule = noop/* default */.A; + this.setInitialNodeLocation = this.setInitialNodeLocationFullRecovery; + } + else { + this.setNodeLocationFromToken = noop/* default */.A; + this.setNodeLocationFromNode = noop/* default */.A; + this.cstPostRule = this.cstPostRuleFull; + this.setInitialNodeLocation = this.setInitialNodeLocationFullRegular; + } + } + else if (/onlyOffset/i.test(this.nodeLocationTracking)) { + if (this.recoveryEnabled) { + this.setNodeLocationFromToken = setNodeLocationOnlyOffset; + this.setNodeLocationFromNode = setNodeLocationOnlyOffset; + this.cstPostRule = noop/* default */.A; + this.setInitialNodeLocation = + this.setInitialNodeLocationOnlyOffsetRecovery; + } + else { + this.setNodeLocationFromToken = noop/* default */.A; + this.setNodeLocationFromNode = noop/* default */.A; + this.cstPostRule = this.cstPostRuleOnlyOffset; + this.setInitialNodeLocation = + this.setInitialNodeLocationOnlyOffsetRegular; + } + } + else if (/none/i.test(this.nodeLocationTracking)) { + this.setNodeLocationFromToken = noop/* default */.A; + this.setNodeLocationFromNode = noop/* default */.A; + this.cstPostRule = noop/* default */.A; + this.setInitialNodeLocation = noop/* default */.A; + } + else { + throw Error(`Invalid <nodeLocationTracking> config option: "${config.nodeLocationTracking}"`); + } + } + } + setInitialNodeLocationOnlyOffsetRecovery(cstNode) { + cstNode.location = { + startOffset: NaN, + endOffset: NaN, + }; + } + setInitialNodeLocationOnlyOffsetRegular(cstNode) { + cstNode.location = { + // without error recovery the starting Location of a new CstNode is guaranteed + // To be the next Token's startOffset (for valid inputs). + // For invalid inputs there won't be any CSTOutput so this potential + // inaccuracy does not matter + startOffset: this.LA(1).startOffset, + endOffset: NaN, + }; + } + setInitialNodeLocationFullRecovery(cstNode) { + cstNode.location = { + startOffset: NaN, + startLine: NaN, + startColumn: NaN, + endOffset: NaN, + endLine: NaN, + endColumn: NaN, + }; + } + /** + * @see setInitialNodeLocationOnlyOffsetRegular for explanation why this work + + * @param cstNode + */ + setInitialNodeLocationFullRegular(cstNode) { + const nextToken = this.LA(1); + cstNode.location = { + startOffset: nextToken.startOffset, + startLine: nextToken.startLine, + startColumn: nextToken.startColumn, + endOffset: NaN, + endLine: NaN, + endColumn: NaN, + }; + } + cstInvocationStateUpdate(fullRuleName) { + const cstNode = { + name: fullRuleName, + children: Object.create(null), + }; + this.setInitialNodeLocation(cstNode); + this.CST_STACK.push(cstNode); + } + cstFinallyStateUpdate() { + this.CST_STACK.pop(); + } + cstPostRuleFull(ruleCstNode) { + // casts to `required<CstNodeLocation>` are safe because `cstPostRuleFull` should only be invoked when full location is enabled + const prevToken = this.LA(0); + const loc = ruleCstNode.location; + // If this condition is true it means we consumed at least one Token + // In this CstNode. + if (loc.startOffset <= prevToken.startOffset === true) { + loc.endOffset = prevToken.endOffset; + loc.endLine = prevToken.endLine; + loc.endColumn = prevToken.endColumn; + } + // "empty" CstNode edge case + else { + loc.startOffset = NaN; + loc.startLine = NaN; + loc.startColumn = NaN; + } + } + cstPostRuleOnlyOffset(ruleCstNode) { + const prevToken = this.LA(0); + // `location' is not null because `cstPostRuleOnlyOffset` will only be invoked when location tracking is enabled. + const loc = ruleCstNode.location; + // If this condition is true it means we consumed at least one Token + // In this CstNode. + if (loc.startOffset <= prevToken.startOffset === true) { + loc.endOffset = prevToken.endOffset; + } + // "empty" CstNode edge case + else { + loc.startOffset = NaN; + } + } + cstPostTerminal(key, consumedToken) { + const rootCst = this.CST_STACK[this.CST_STACK.length - 1]; + addTerminalToCst(rootCst, consumedToken, key); + // This is only used when **both** error recovery and CST Output are enabled. + this.setNodeLocationFromToken(rootCst.location, consumedToken); + } + cstPostNonTerminal(ruleCstResult, ruleName) { + const preCstNode = this.CST_STACK[this.CST_STACK.length - 1]; + addNoneTerminalToCst(preCstNode, ruleName, ruleCstResult); + // This is only used when **both** error recovery and CST Output are enabled. + this.setNodeLocationFromNode(preCstNode.location, ruleCstResult.location); + } + getBaseCstVisitorConstructor() { + if ((0,isUndefined/* default */.A)(this.baseCstVisitorConstructor)) { + const newBaseCstVisitorConstructor = createBaseSemanticVisitorConstructor(this.className, (0,keys/* default */.A)(this.gastProductionsCache)); + this.baseCstVisitorConstructor = newBaseCstVisitorConstructor; + return newBaseCstVisitorConstructor; + } + return this.baseCstVisitorConstructor; + } + getBaseCstVisitorConstructorWithDefaults() { + if ((0,isUndefined/* default */.A)(this.baseCstVisitorWithDefaultsConstructor)) { + const newConstructor = createBaseVisitorConstructorWithDefaults(this.className, (0,keys/* default */.A)(this.gastProductionsCache), this.getBaseCstVisitorConstructor()); + this.baseCstVisitorWithDefaultsConstructor = newConstructor; + return newConstructor; + } + return this.baseCstVisitorWithDefaultsConstructor; + } + getLastExplicitRuleShortName() { + const ruleStack = this.RULE_STACK; + return ruleStack[ruleStack.length - 1]; + } + getPreviousExplicitRuleShortName() { + const ruleStack = this.RULE_STACK; + return ruleStack[ruleStack.length - 2]; + } + getLastExplicitRuleOccurrenceIndex() { + const occurrenceStack = this.RULE_OCCURRENCE_STACK; + return occurrenceStack[occurrenceStack.length - 1]; + } +} +//# sourceMappingURL=tree_builder.js.map +;// CONCATENATED MODULE: ./node_modules/chevrotain/lib/src/parse/parser/traits/lexer_adapter.js + +/** + * Trait responsible abstracting over the interaction with Lexer output (Token vector). + * + * This could be generalized to support other kinds of lexers, e.g. + * - Just in Time Lexing / Lexer-Less parsing. + * - Streaming Lexer. + */ +class LexerAdapter { + initLexerAdapter() { + this.tokVector = []; + this.tokVectorLength = 0; + this.currIdx = -1; + } + set input(newInput) { + // @ts-ignore - `this parameter` not supported in setters/getters + // - https://www.typescriptlang.org/docs/handbook/functions.html#this-parameters + if (this.selfAnalysisDone !== true) { + throw Error(`Missing <performSelfAnalysis> invocation at the end of the Parser's constructor.`); + } + // @ts-ignore - `this parameter` not supported in setters/getters + // - https://www.typescriptlang.org/docs/handbook/functions.html#this-parameters + this.reset(); + this.tokVector = newInput; + this.tokVectorLength = newInput.length; + } + get input() { + return this.tokVector; + } + // skips a token and returns the next token + SKIP_TOKEN() { + if (this.currIdx <= this.tokVector.length - 2) { + this.consumeToken(); + return this.LA(1); + } + else { + return END_OF_FILE; + } + } + // Lexer (accessing Token vector) related methods which can be overridden to implement lazy lexers + // or lexers dependent on parser context. + LA(howMuch) { + const soughtIdx = this.currIdx + howMuch; + if (soughtIdx < 0 || this.tokVectorLength <= soughtIdx) { + return END_OF_FILE; + } + else { + return this.tokVector[soughtIdx]; + } + } + consumeToken() { + this.currIdx++; + } + exportLexerState() { + return this.currIdx; + } + importLexerState(newState) { + this.currIdx = newState; + } + resetLexerState() { + this.currIdx = -1; + } + moveToTerminatedState() { + this.currIdx = this.tokVector.length - 1; + } + getLexerPosition() { + return this.exportLexerState(); + } +} +//# sourceMappingURL=lexer_adapter.js.map +;// CONCATENATED MODULE: ./node_modules/chevrotain/lib/src/parse/parser/traits/recognizer_api.js + + + + + + +/** + * This trait is responsible for implementing the public API + * for defining Chevrotain parsers, i.e: + * - CONSUME + * - RULE + * - OPTION + * - ... + */ +class RecognizerApi { + ACTION(impl) { + return impl.call(this); + } + consume(idx, tokType, options) { + return this.consumeInternal(tokType, idx, options); + } + subrule(idx, ruleToCall, options) { + return this.subruleInternal(ruleToCall, idx, options); + } + option(idx, actionORMethodDef) { + return this.optionInternal(actionORMethodDef, idx); + } + or(idx, altsOrOpts) { + return this.orInternal(altsOrOpts, idx); + } + many(idx, actionORMethodDef) { + return this.manyInternal(idx, actionORMethodDef); + } + atLeastOne(idx, actionORMethodDef) { + return this.atLeastOneInternal(idx, actionORMethodDef); + } + CONSUME(tokType, options) { + return this.consumeInternal(tokType, 0, options); + } + CONSUME1(tokType, options) { + return this.consumeInternal(tokType, 1, options); + } + CONSUME2(tokType, options) { + return this.consumeInternal(tokType, 2, options); + } + CONSUME3(tokType, options) { + return this.consumeInternal(tokType, 3, options); + } + CONSUME4(tokType, options) { + return this.consumeInternal(tokType, 4, options); + } + CONSUME5(tokType, options) { + return this.consumeInternal(tokType, 5, options); + } + CONSUME6(tokType, options) { + return this.consumeInternal(tokType, 6, options); + } + CONSUME7(tokType, options) { + return this.consumeInternal(tokType, 7, options); + } + CONSUME8(tokType, options) { + return this.consumeInternal(tokType, 8, options); + } + CONSUME9(tokType, options) { + return this.consumeInternal(tokType, 9, options); + } + SUBRULE(ruleToCall, options) { + return this.subruleInternal(ruleToCall, 0, options); + } + SUBRULE1(ruleToCall, options) { + return this.subruleInternal(ruleToCall, 1, options); + } + SUBRULE2(ruleToCall, options) { + return this.subruleInternal(ruleToCall, 2, options); + } + SUBRULE3(ruleToCall, options) { + return this.subruleInternal(ruleToCall, 3, options); + } + SUBRULE4(ruleToCall, options) { + return this.subruleInternal(ruleToCall, 4, options); + } + SUBRULE5(ruleToCall, options) { + return this.subruleInternal(ruleToCall, 5, options); + } + SUBRULE6(ruleToCall, options) { + return this.subruleInternal(ruleToCall, 6, options); + } + SUBRULE7(ruleToCall, options) { + return this.subruleInternal(ruleToCall, 7, options); + } + SUBRULE8(ruleToCall, options) { + return this.subruleInternal(ruleToCall, 8, options); + } + SUBRULE9(ruleToCall, options) { + return this.subruleInternal(ruleToCall, 9, options); + } + OPTION(actionORMethodDef) { + return this.optionInternal(actionORMethodDef, 0); + } + OPTION1(actionORMethodDef) { + return this.optionInternal(actionORMethodDef, 1); + } + OPTION2(actionORMethodDef) { + return this.optionInternal(actionORMethodDef, 2); + } + OPTION3(actionORMethodDef) { + return this.optionInternal(actionORMethodDef, 3); + } + OPTION4(actionORMethodDef) { + return this.optionInternal(actionORMethodDef, 4); + } + OPTION5(actionORMethodDef) { + return this.optionInternal(actionORMethodDef, 5); + } + OPTION6(actionORMethodDef) { + return this.optionInternal(actionORMethodDef, 6); + } + OPTION7(actionORMethodDef) { + return this.optionInternal(actionORMethodDef, 7); + } + OPTION8(actionORMethodDef) { + return this.optionInternal(actionORMethodDef, 8); + } + OPTION9(actionORMethodDef) { + return this.optionInternal(actionORMethodDef, 9); + } + OR(altsOrOpts) { + return this.orInternal(altsOrOpts, 0); + } + OR1(altsOrOpts) { + return this.orInternal(altsOrOpts, 1); + } + OR2(altsOrOpts) { + return this.orInternal(altsOrOpts, 2); + } + OR3(altsOrOpts) { + return this.orInternal(altsOrOpts, 3); + } + OR4(altsOrOpts) { + return this.orInternal(altsOrOpts, 4); + } + OR5(altsOrOpts) { + return this.orInternal(altsOrOpts, 5); + } + OR6(altsOrOpts) { + return this.orInternal(altsOrOpts, 6); + } + OR7(altsOrOpts) { + return this.orInternal(altsOrOpts, 7); + } + OR8(altsOrOpts) { + return this.orInternal(altsOrOpts, 8); + } + OR9(altsOrOpts) { + return this.orInternal(altsOrOpts, 9); + } + MANY(actionORMethodDef) { + this.manyInternal(0, actionORMethodDef); + } + MANY1(actionORMethodDef) { + this.manyInternal(1, actionORMethodDef); + } + MANY2(actionORMethodDef) { + this.manyInternal(2, actionORMethodDef); + } + MANY3(actionORMethodDef) { + this.manyInternal(3, actionORMethodDef); + } + MANY4(actionORMethodDef) { + this.manyInternal(4, actionORMethodDef); + } + MANY5(actionORMethodDef) { + this.manyInternal(5, actionORMethodDef); + } + MANY6(actionORMethodDef) { + this.manyInternal(6, actionORMethodDef); + } + MANY7(actionORMethodDef) { + this.manyInternal(7, actionORMethodDef); + } + MANY8(actionORMethodDef) { + this.manyInternal(8, actionORMethodDef); + } + MANY9(actionORMethodDef) { + this.manyInternal(9, actionORMethodDef); + } + MANY_SEP(options) { + this.manySepFirstInternal(0, options); + } + MANY_SEP1(options) { + this.manySepFirstInternal(1, options); + } + MANY_SEP2(options) { + this.manySepFirstInternal(2, options); + } + MANY_SEP3(options) { + this.manySepFirstInternal(3, options); + } + MANY_SEP4(options) { + this.manySepFirstInternal(4, options); + } + MANY_SEP5(options) { + this.manySepFirstInternal(5, options); + } + MANY_SEP6(options) { + this.manySepFirstInternal(6, options); + } + MANY_SEP7(options) { + this.manySepFirstInternal(7, options); + } + MANY_SEP8(options) { + this.manySepFirstInternal(8, options); + } + MANY_SEP9(options) { + this.manySepFirstInternal(9, options); + } + AT_LEAST_ONE(actionORMethodDef) { + this.atLeastOneInternal(0, actionORMethodDef); + } + AT_LEAST_ONE1(actionORMethodDef) { + return this.atLeastOneInternal(1, actionORMethodDef); + } + AT_LEAST_ONE2(actionORMethodDef) { + this.atLeastOneInternal(2, actionORMethodDef); + } + AT_LEAST_ONE3(actionORMethodDef) { + this.atLeastOneInternal(3, actionORMethodDef); + } + AT_LEAST_ONE4(actionORMethodDef) { + this.atLeastOneInternal(4, actionORMethodDef); + } + AT_LEAST_ONE5(actionORMethodDef) { + this.atLeastOneInternal(5, actionORMethodDef); + } + AT_LEAST_ONE6(actionORMethodDef) { + this.atLeastOneInternal(6, actionORMethodDef); + } + AT_LEAST_ONE7(actionORMethodDef) { + this.atLeastOneInternal(7, actionORMethodDef); + } + AT_LEAST_ONE8(actionORMethodDef) { + this.atLeastOneInternal(8, actionORMethodDef); + } + AT_LEAST_ONE9(actionORMethodDef) { + this.atLeastOneInternal(9, actionORMethodDef); + } + AT_LEAST_ONE_SEP(options) { + this.atLeastOneSepFirstInternal(0, options); + } + AT_LEAST_ONE_SEP1(options) { + this.atLeastOneSepFirstInternal(1, options); + } + AT_LEAST_ONE_SEP2(options) { + this.atLeastOneSepFirstInternal(2, options); + } + AT_LEAST_ONE_SEP3(options) { + this.atLeastOneSepFirstInternal(3, options); + } + AT_LEAST_ONE_SEP4(options) { + this.atLeastOneSepFirstInternal(4, options); + } + AT_LEAST_ONE_SEP5(options) { + this.atLeastOneSepFirstInternal(5, options); + } + AT_LEAST_ONE_SEP6(options) { + this.atLeastOneSepFirstInternal(6, options); + } + AT_LEAST_ONE_SEP7(options) { + this.atLeastOneSepFirstInternal(7, options); + } + AT_LEAST_ONE_SEP8(options) { + this.atLeastOneSepFirstInternal(8, options); + } + AT_LEAST_ONE_SEP9(options) { + this.atLeastOneSepFirstInternal(9, options); + } + RULE(name, implementation, config = DEFAULT_RULE_CONFIG) { + if (lodash_es_includes(this.definedRulesNames, name)) { + const errMsg = defaultGrammarValidatorErrorProvider.buildDuplicateRuleNameError({ + topLevelRule: name, + grammarName: this.className, + }); + const error = { + message: errMsg, + type: ParserDefinitionErrorType.DUPLICATE_RULE_NAME, + ruleName: name, + }; + this.definitionErrors.push(error); + } + this.definedRulesNames.push(name); + const ruleImplementation = this.defineRule(name, implementation, config); + this[name] = ruleImplementation; + return ruleImplementation; + } + OVERRIDE_RULE(name, impl, config = DEFAULT_RULE_CONFIG) { + const ruleErrors = validateRuleIsOverridden(name, this.definedRulesNames, this.className); + this.definitionErrors = this.definitionErrors.concat(ruleErrors); + const ruleImplementation = this.defineRule(name, impl, config); + this[name] = ruleImplementation; + return ruleImplementation; + } + BACKTRACK(grammarRule, args) { + return function () { + // save org state + this.isBackTrackingStack.push(1); + const orgState = this.saveRecogState(); + try { + grammarRule.apply(this, args); + // if no exception was thrown we have succeed parsing the rule. + return true; + } + catch (e) { + if (isRecognitionException(e)) { + return false; + } + else { + throw e; + } + } + finally { + this.reloadRecogState(orgState); + this.isBackTrackingStack.pop(); + } + }; + } + // GAST export APIs + getGAstProductions() { + return this.gastProductionsCache; + } + getSerializedGastProductions() { + return serializeGrammar((0,lodash_es_values/* default */.A)(this.gastProductionsCache)); + } +} +//# sourceMappingURL=recognizer_api.js.map +// EXTERNAL MODULE: ./node_modules/lodash-es/isObject.js +var isObject = __webpack_require__(23149); +;// CONCATENATED MODULE: ./node_modules/chevrotain/lib/src/parse/parser/traits/recognizer_engine.js + + + + + + + + + +/** + * This trait is responsible for the runtime parsing engine + * Used by the official API (recognizer_api.ts) + */ +class RecognizerEngine { + initRecognizerEngine(tokenVocabulary, config) { + this.className = this.constructor.name; + // TODO: would using an ES6 Map or plain object be faster (CST building scenario) + this.shortRuleNameToFull = {}; + this.fullRuleNameToShort = {}; + this.ruleShortNameIdx = 256; + this.tokenMatcher = tokenStructuredMatcherNoCategories; + this.subruleIdx = 0; + this.definedRulesNames = []; + this.tokensMap = {}; + this.isBackTrackingStack = []; + this.RULE_STACK = []; + this.RULE_OCCURRENCE_STACK = []; + this.gastProductionsCache = {}; + if ((0,has/* default */.A)(config, "serializedGrammar")) { + throw Error("The Parser's configuration can no longer contain a <serializedGrammar> property.\n" + + "\tSee: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_6-0-0\n" + + "\tFor Further details."); + } + if ((0,isArray/* default */.A)(tokenVocabulary)) { + // This only checks for Token vocabularies provided as arrays. + // That is good enough because the main objective is to detect users of pre-V4.0 APIs + // rather than all edge cases of empty Token vocabularies. + if ((0,isEmpty/* default */.A)(tokenVocabulary)) { + throw Error("A Token Vocabulary cannot be empty.\n" + + "\tNote that the first argument for the parser constructor\n" + + "\tis no longer a Token vector (since v4.0)."); + } + if (typeof tokenVocabulary[0].startOffset === "number") { + throw Error("The Parser constructor no longer accepts a token vector as the first argument.\n" + + "\tSee: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_4-0-0\n" + + "\tFor Further details."); + } + } + if ((0,isArray/* default */.A)(tokenVocabulary)) { + this.tokensMap = (0,reduce/* default */.A)(tokenVocabulary, (acc, tokType) => { + acc[tokType.name] = tokType; + return acc; + }, {}); + } + else if ((0,has/* default */.A)(tokenVocabulary, "modes") && + lodash_es_every((0,lodash_es_flatten/* default */.A)((0,lodash_es_values/* default */.A)(tokenVocabulary.modes)), isTokenType)) { + const allTokenTypes = (0,lodash_es_flatten/* default */.A)((0,lodash_es_values/* default */.A)(tokenVocabulary.modes)); + const uniqueTokens = lodash_es_uniq(allTokenTypes); + this.tokensMap = (0,reduce/* default */.A)(uniqueTokens, (acc, tokType) => { + acc[tokType.name] = tokType; + return acc; + }, {}); + } + else if ((0,isObject/* default */.A)(tokenVocabulary)) { + this.tokensMap = (0,clone/* default */.A)(tokenVocabulary); + } + else { + throw new Error("<tokensDictionary> argument must be An Array of Token constructors," + + " A dictionary of Token constructors or an IMultiModeLexerDefinition"); + } + // always add EOF to the tokenNames -> constructors map. it is useful to assure all the input has been + // parsed with a clear error message ("expecting EOF but found ...") + this.tokensMap["EOF"] = EOF; + const allTokenTypes = (0,has/* default */.A)(tokenVocabulary, "modes") + ? (0,lodash_es_flatten/* default */.A)((0,lodash_es_values/* default */.A)(tokenVocabulary.modes)) + : (0,lodash_es_values/* default */.A)(tokenVocabulary); + const noTokenCategoriesUsed = lodash_es_every(allTokenTypes, (tokenConstructor) => (0,isEmpty/* default */.A)(tokenConstructor.categoryMatches)); + this.tokenMatcher = noTokenCategoriesUsed + ? tokenStructuredMatcherNoCategories + : tokenStructuredMatcher; + // Because ES2015+ syntax should be supported for creating Token classes + // We cannot assume that the Token classes were created using the "extendToken" utilities + // Therefore we must augment the Token classes both on Lexer initialization and on Parser initialization + augmentTokenTypes((0,lodash_es_values/* default */.A)(this.tokensMap)); + } + defineRule(ruleName, impl, config) { + if (this.selfAnalysisDone) { + throw Error(`Grammar rule <${ruleName}> may not be defined after the 'performSelfAnalysis' method has been called'\n` + + `Make sure that all grammar rule definitions are done before 'performSelfAnalysis' is called.`); + } + const resyncEnabled = (0,has/* default */.A)(config, "resyncEnabled") + ? config.resyncEnabled // assumes end user provides the correct config value/type + : DEFAULT_RULE_CONFIG.resyncEnabled; + const recoveryValueFunc = (0,has/* default */.A)(config, "recoveryValueFunc") + ? config.recoveryValueFunc // assumes end user provides the correct config value/type + : DEFAULT_RULE_CONFIG.recoveryValueFunc; + // performance optimization: Use small integers as keys for the longer human readable "full" rule names. + // this greatly improves Map access time (as much as 8% for some performance benchmarks). + const shortName = this.ruleShortNameIdx << (BITS_FOR_METHOD_TYPE + BITS_FOR_OCCURRENCE_IDX); + this.ruleShortNameIdx++; + this.shortRuleNameToFull[shortName] = ruleName; + this.fullRuleNameToShort[ruleName] = shortName; + let invokeRuleWithTry; + // Micro optimization, only check the condition **once** on rule definition + // instead of **every single** rule invocation. + if (this.outputCst === true) { + invokeRuleWithTry = function invokeRuleWithTry(...args) { + try { + this.ruleInvocationStateUpdate(shortName, ruleName, this.subruleIdx); + impl.apply(this, args); + const cst = this.CST_STACK[this.CST_STACK.length - 1]; + this.cstPostRule(cst); + return cst; + } + catch (e) { + return this.invokeRuleCatch(e, resyncEnabled, recoveryValueFunc); + } + finally { + this.ruleFinallyStateUpdate(); + } + }; + } + else { + invokeRuleWithTry = function invokeRuleWithTryCst(...args) { + try { + this.ruleInvocationStateUpdate(shortName, ruleName, this.subruleIdx); + return impl.apply(this, args); + } + catch (e) { + return this.invokeRuleCatch(e, resyncEnabled, recoveryValueFunc); + } + finally { + this.ruleFinallyStateUpdate(); + } + }; + } + const wrappedGrammarRule = Object.assign(invokeRuleWithTry, { ruleName, originalGrammarAction: impl }); + return wrappedGrammarRule; + } + invokeRuleCatch(e, resyncEnabledConfig, recoveryValueFunc) { + const isFirstInvokedRule = this.RULE_STACK.length === 1; + // note the reSync is always enabled for the first rule invocation, because we must always be able to + // reSync with EOF and just output some INVALID ParseTree + // during backtracking reSync recovery is disabled, otherwise we can't be certain the backtracking + // path is really the most valid one + const reSyncEnabled = resyncEnabledConfig && !this.isBackTracking() && this.recoveryEnabled; + if (isRecognitionException(e)) { + const recogError = e; + if (reSyncEnabled) { + const reSyncTokType = this.findReSyncTokenType(); + if (this.isInCurrentRuleReSyncSet(reSyncTokType)) { + recogError.resyncedTokens = this.reSyncTo(reSyncTokType); + if (this.outputCst) { + const partialCstResult = this.CST_STACK[this.CST_STACK.length - 1]; + partialCstResult.recoveredNode = true; + return partialCstResult; + } + else { + return recoveryValueFunc(e); + } + } + else { + if (this.outputCst) { + const partialCstResult = this.CST_STACK[this.CST_STACK.length - 1]; + partialCstResult.recoveredNode = true; + recogError.partialCstResult = partialCstResult; + } + // to be handled Further up the call stack + throw recogError; + } + } + else if (isFirstInvokedRule) { + // otherwise a Redundant input error will be created as well and we cannot guarantee that this is indeed the case + this.moveToTerminatedState(); + // the parser should never throw one of its own errors outside its flow. + // even if error recovery is disabled + return recoveryValueFunc(e); + } + else { + // to be recovered Further up the call stack + throw recogError; + } + } + else { + // some other Error type which we don't know how to handle (for example a built in JavaScript Error) + throw e; + } + } + // Implementation of parsing DSL + optionInternal(actionORMethodDef, occurrence) { + const key = this.getKeyForAutomaticLookahead(OPTION_IDX, occurrence); + return this.optionInternalLogic(actionORMethodDef, occurrence, key); + } + optionInternalLogic(actionORMethodDef, occurrence, key) { + let lookAheadFunc = this.getLaFuncFromCache(key); + let action; + if (typeof actionORMethodDef !== "function") { + action = actionORMethodDef.DEF; + const predicate = actionORMethodDef.GATE; + // predicate present + if (predicate !== undefined) { + const orgLookaheadFunction = lookAheadFunc; + lookAheadFunc = () => { + return predicate.call(this) && orgLookaheadFunction.call(this); + }; + } + } + else { + action = actionORMethodDef; + } + if (lookAheadFunc.call(this) === true) { + return action.call(this); + } + return undefined; + } + atLeastOneInternal(prodOccurrence, actionORMethodDef) { + const laKey = this.getKeyForAutomaticLookahead(AT_LEAST_ONE_IDX, prodOccurrence); + return this.atLeastOneInternalLogic(prodOccurrence, actionORMethodDef, laKey); + } + atLeastOneInternalLogic(prodOccurrence, actionORMethodDef, key) { + let lookAheadFunc = this.getLaFuncFromCache(key); + let action; + if (typeof actionORMethodDef !== "function") { + action = actionORMethodDef.DEF; + const predicate = actionORMethodDef.GATE; + // predicate present + if (predicate !== undefined) { + const orgLookaheadFunction = lookAheadFunc; + lookAheadFunc = () => { + return predicate.call(this) && orgLookaheadFunction.call(this); + }; + } + } + else { + action = actionORMethodDef; + } + if (lookAheadFunc.call(this) === true) { + let notStuck = this.doSingleRepetition(action); + while (lookAheadFunc.call(this) === true && + notStuck === true) { + notStuck = this.doSingleRepetition(action); + } + } + else { + throw this.raiseEarlyExitException(prodOccurrence, PROD_TYPE.REPETITION_MANDATORY, actionORMethodDef.ERR_MSG); + } + // note that while it may seem that this can cause an error because by using a recursive call to + // AT_LEAST_ONE we change the grammar to AT_LEAST_TWO, AT_LEAST_THREE ... , the possible recursive call + // from the tryInRepetitionRecovery(...) will only happen IFF there really are TWO/THREE/.... items. + // Performance optimization: "attemptInRepetitionRecovery" will be defined as NOOP unless recovery is enabled + this.attemptInRepetitionRecovery(this.atLeastOneInternal, [prodOccurrence, actionORMethodDef], lookAheadFunc, AT_LEAST_ONE_IDX, prodOccurrence, NextTerminalAfterAtLeastOneWalker); + } + atLeastOneSepFirstInternal(prodOccurrence, options) { + const laKey = this.getKeyForAutomaticLookahead(AT_LEAST_ONE_SEP_IDX, prodOccurrence); + this.atLeastOneSepFirstInternalLogic(prodOccurrence, options, laKey); + } + atLeastOneSepFirstInternalLogic(prodOccurrence, options, key) { + const action = options.DEF; + const separator = options.SEP; + const firstIterationLookaheadFunc = this.getLaFuncFromCache(key); + // 1st iteration + if (firstIterationLookaheadFunc.call(this) === true) { + action.call(this); + // TODO: Optimization can move this function construction into "attemptInRepetitionRecovery" + // because it is only needed in error recovery scenarios. + const separatorLookAheadFunc = () => { + return this.tokenMatcher(this.LA(1), separator); + }; + // 2nd..nth iterations + while (this.tokenMatcher(this.LA(1), separator) === true) { + // note that this CONSUME will never enter recovery because + // the separatorLookAheadFunc checks that the separator really does exist. + this.CONSUME(separator); + // No need for checking infinite loop here due to consuming the separator. + action.call(this); + } + // Performance optimization: "attemptInRepetitionRecovery" will be defined as NOOP unless recovery is enabled + this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal, [ + prodOccurrence, + separator, + separatorLookAheadFunc, + action, + NextTerminalAfterAtLeastOneSepWalker, + ], separatorLookAheadFunc, AT_LEAST_ONE_SEP_IDX, prodOccurrence, NextTerminalAfterAtLeastOneSepWalker); + } + else { + throw this.raiseEarlyExitException(prodOccurrence, PROD_TYPE.REPETITION_MANDATORY_WITH_SEPARATOR, options.ERR_MSG); + } + } + manyInternal(prodOccurrence, actionORMethodDef) { + const laKey = this.getKeyForAutomaticLookahead(MANY_IDX, prodOccurrence); + return this.manyInternalLogic(prodOccurrence, actionORMethodDef, laKey); + } + manyInternalLogic(prodOccurrence, actionORMethodDef, key) { + let lookaheadFunction = this.getLaFuncFromCache(key); + let action; + if (typeof actionORMethodDef !== "function") { + action = actionORMethodDef.DEF; + const predicate = actionORMethodDef.GATE; + // predicate present + if (predicate !== undefined) { + const orgLookaheadFunction = lookaheadFunction; + lookaheadFunction = () => { + return predicate.call(this) && orgLookaheadFunction.call(this); + }; + } + } + else { + action = actionORMethodDef; + } + let notStuck = true; + while (lookaheadFunction.call(this) === true && notStuck === true) { + notStuck = this.doSingleRepetition(action); + } + // Performance optimization: "attemptInRepetitionRecovery" will be defined as NOOP unless recovery is enabled + this.attemptInRepetitionRecovery(this.manyInternal, [prodOccurrence, actionORMethodDef], lookaheadFunction, MANY_IDX, prodOccurrence, NextTerminalAfterManyWalker, + // The notStuck parameter is only relevant when "attemptInRepetitionRecovery" + // is invoked from manyInternal, in the MANY_SEP case and AT_LEAST_ONE[_SEP] + // An infinite loop cannot occur as: + // - Either the lookahead is guaranteed to consume something (Single Token Separator) + // - AT_LEAST_ONE by definition is guaranteed to consume something (or error out). + notStuck); + } + manySepFirstInternal(prodOccurrence, options) { + const laKey = this.getKeyForAutomaticLookahead(MANY_SEP_IDX, prodOccurrence); + this.manySepFirstInternalLogic(prodOccurrence, options, laKey); + } + manySepFirstInternalLogic(prodOccurrence, options, key) { + const action = options.DEF; + const separator = options.SEP; + const firstIterationLaFunc = this.getLaFuncFromCache(key); + // 1st iteration + if (firstIterationLaFunc.call(this) === true) { + action.call(this); + const separatorLookAheadFunc = () => { + return this.tokenMatcher(this.LA(1), separator); + }; + // 2nd..nth iterations + while (this.tokenMatcher(this.LA(1), separator) === true) { + // note that this CONSUME will never enter recovery because + // the separatorLookAheadFunc checks that the separator really does exist. + this.CONSUME(separator); + // No need for checking infinite loop here due to consuming the separator. + action.call(this); + } + // Performance optimization: "attemptInRepetitionRecovery" will be defined as NOOP unless recovery is enabled + this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal, [ + prodOccurrence, + separator, + separatorLookAheadFunc, + action, + NextTerminalAfterManySepWalker, + ], separatorLookAheadFunc, MANY_SEP_IDX, prodOccurrence, NextTerminalAfterManySepWalker); + } + } + repetitionSepSecondInternal(prodOccurrence, separator, separatorLookAheadFunc, action, nextTerminalAfterWalker) { + while (separatorLookAheadFunc()) { + // note that this CONSUME will never enter recovery because + // the separatorLookAheadFunc checks that the separator really does exist. + this.CONSUME(separator); + action.call(this); + } + // we can only arrive to this function after an error + // has occurred (hence the name 'second') so the following + // IF will always be entered, its possible to remove it... + // however it is kept to avoid confusion and be consistent. + // Performance optimization: "attemptInRepetitionRecovery" will be defined as NOOP unless recovery is enabled + /* istanbul ignore else */ + this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal, [ + prodOccurrence, + separator, + separatorLookAheadFunc, + action, + nextTerminalAfterWalker, + ], separatorLookAheadFunc, AT_LEAST_ONE_SEP_IDX, prodOccurrence, nextTerminalAfterWalker); + } + doSingleRepetition(action) { + const beforeIteration = this.getLexerPosition(); + action.call(this); + const afterIteration = this.getLexerPosition(); + // This boolean will indicate if this repetition progressed + // or if we are "stuck" (potential infinite loop in the repetition). + return afterIteration > beforeIteration; + } + orInternal(altsOrOpts, occurrence) { + const laKey = this.getKeyForAutomaticLookahead(OR_IDX, occurrence); + const alts = (0,isArray/* default */.A)(altsOrOpts) ? altsOrOpts : altsOrOpts.DEF; + const laFunc = this.getLaFuncFromCache(laKey); + const altIdxToTake = laFunc.call(this, alts); + if (altIdxToTake !== undefined) { + const chosenAlternative = alts[altIdxToTake]; + return chosenAlternative.ALT.call(this); + } + this.raiseNoAltException(occurrence, altsOrOpts.ERR_MSG); + } + ruleFinallyStateUpdate() { + this.RULE_STACK.pop(); + this.RULE_OCCURRENCE_STACK.pop(); + // NOOP when cst is disabled + this.cstFinallyStateUpdate(); + if (this.RULE_STACK.length === 0 && this.isAtEndOfInput() === false) { + const firstRedundantTok = this.LA(1); + const errMsg = this.errorMessageProvider.buildNotAllInputParsedMessage({ + firstRedundant: firstRedundantTok, + ruleName: this.getCurrRuleFullName(), + }); + this.SAVE_ERROR(new NotAllInputParsedException(errMsg, firstRedundantTok)); + } + } + subruleInternal(ruleToCall, idx, options) { + let ruleResult; + try { + const args = options !== undefined ? options.ARGS : undefined; + this.subruleIdx = idx; + ruleResult = ruleToCall.apply(this, args); + this.cstPostNonTerminal(ruleResult, options !== undefined && options.LABEL !== undefined + ? options.LABEL + : ruleToCall.ruleName); + return ruleResult; + } + catch (e) { + throw this.subruleInternalError(e, options, ruleToCall.ruleName); + } + } + subruleInternalError(e, options, ruleName) { + if (isRecognitionException(e) && e.partialCstResult !== undefined) { + this.cstPostNonTerminal(e.partialCstResult, options !== undefined && options.LABEL !== undefined + ? options.LABEL + : ruleName); + delete e.partialCstResult; + } + throw e; + } + consumeInternal(tokType, idx, options) { + let consumedToken; + try { + const nextToken = this.LA(1); + if (this.tokenMatcher(nextToken, tokType) === true) { + this.consumeToken(); + consumedToken = nextToken; + } + else { + this.consumeInternalError(tokType, nextToken, options); + } + } + catch (eFromConsumption) { + consumedToken = this.consumeInternalRecovery(tokType, idx, eFromConsumption); + } + this.cstPostTerminal(options !== undefined && options.LABEL !== undefined + ? options.LABEL + : tokType.name, consumedToken); + return consumedToken; + } + consumeInternalError(tokType, nextToken, options) { + let msg; + const previousToken = this.LA(0); + if (options !== undefined && options.ERR_MSG) { + msg = options.ERR_MSG; + } + else { + msg = this.errorMessageProvider.buildMismatchTokenMessage({ + expected: tokType, + actual: nextToken, + previous: previousToken, + ruleName: this.getCurrRuleFullName(), + }); + } + throw this.SAVE_ERROR(new MismatchedTokenException(msg, nextToken, previousToken)); + } + consumeInternalRecovery(tokType, idx, eFromConsumption) { + // no recovery allowed during backtracking, otherwise backtracking may recover invalid syntax and accept it + // but the original syntax could have been parsed successfully without any backtracking + recovery + if (this.recoveryEnabled && + // TODO: more robust checking of the exception type. Perhaps Typescript extending expressions? + eFromConsumption.name === "MismatchedTokenException" && + !this.isBackTracking()) { + const follows = this.getFollowsForInRuleRecovery(tokType, idx); + try { + return this.tryInRuleRecovery(tokType, follows); + } + catch (eFromInRuleRecovery) { + if (eFromInRuleRecovery.name === IN_RULE_RECOVERY_EXCEPTION) { + // failed in RuleRecovery. + // throw the original error in order to trigger reSync error recovery + throw eFromConsumption; + } + else { + throw eFromInRuleRecovery; + } + } + } + else { + throw eFromConsumption; + } + } + saveRecogState() { + // errors is a getter which will clone the errors array + const savedErrors = this.errors; + const savedRuleStack = (0,clone/* default */.A)(this.RULE_STACK); + return { + errors: savedErrors, + lexerState: this.exportLexerState(), + RULE_STACK: savedRuleStack, + CST_STACK: this.CST_STACK, + }; + } + reloadRecogState(newState) { + this.errors = newState.errors; + this.importLexerState(newState.lexerState); + this.RULE_STACK = newState.RULE_STACK; + } + ruleInvocationStateUpdate(shortName, fullName, idxInCallingRule) { + this.RULE_OCCURRENCE_STACK.push(idxInCallingRule); + this.RULE_STACK.push(shortName); + // NOOP when cst is disabled + this.cstInvocationStateUpdate(fullName); + } + isBackTracking() { + return this.isBackTrackingStack.length !== 0; + } + getCurrRuleFullName() { + const shortName = this.getLastExplicitRuleShortName(); + return this.shortRuleNameToFull[shortName]; + } + shortRuleNameToFullName(shortName) { + return this.shortRuleNameToFull[shortName]; + } + isAtEndOfInput() { + return this.tokenMatcher(this.LA(1), EOF); + } + reset() { + this.resetLexerState(); + this.subruleIdx = 0; + this.isBackTrackingStack = []; + this.errors = []; + this.RULE_STACK = []; + // TODO: extract a specific reset for TreeBuilder trait + this.CST_STACK = []; + this.RULE_OCCURRENCE_STACK = []; + } +} +//# sourceMappingURL=recognizer_engine.js.map +;// CONCATENATED MODULE: ./node_modules/chevrotain/lib/src/parse/parser/traits/error_handler.js + + + + +/** + * Trait responsible for runtime parsing errors. + */ +class ErrorHandler { + initErrorHandler(config) { + this._errors = []; + this.errorMessageProvider = (0,has/* default */.A)(config, "errorMessageProvider") + ? config.errorMessageProvider // assumes end user provides the correct config value/type + : DEFAULT_PARSER_CONFIG.errorMessageProvider; + } + SAVE_ERROR(error) { + if (isRecognitionException(error)) { + error.context = { + ruleStack: this.getHumanReadableRuleStack(), + ruleOccurrenceStack: (0,clone/* default */.A)(this.RULE_OCCURRENCE_STACK), + }; + this._errors.push(error); + return error; + } + else { + throw Error("Trying to save an Error which is not a RecognitionException"); + } + } + get errors() { + return (0,clone/* default */.A)(this._errors); + } + set errors(newErrors) { + this._errors = newErrors; + } + // TODO: consider caching the error message computed information + raiseEarlyExitException(occurrence, prodType, userDefinedErrMsg) { + const ruleName = this.getCurrRuleFullName(); + const ruleGrammar = this.getGAstProductions()[ruleName]; + const lookAheadPathsPerAlternative = getLookaheadPathsForOptionalProd(occurrence, ruleGrammar, prodType, this.maxLookahead); + const insideProdPaths = lookAheadPathsPerAlternative[0]; + const actualTokens = []; + for (let i = 1; i <= this.maxLookahead; i++) { + actualTokens.push(this.LA(i)); + } + const msg = this.errorMessageProvider.buildEarlyExitMessage({ + expectedIterationPaths: insideProdPaths, + actual: actualTokens, + previous: this.LA(0), + customUserDescription: userDefinedErrMsg, + ruleName: ruleName, + }); + throw this.SAVE_ERROR(new EarlyExitException(msg, this.LA(1), this.LA(0))); + } + // TODO: consider caching the error message computed information + raiseNoAltException(occurrence, errMsgTypes) { + const ruleName = this.getCurrRuleFullName(); + const ruleGrammar = this.getGAstProductions()[ruleName]; + // TODO: getLookaheadPathsForOr can be slow for large enough maxLookahead and certain grammars, consider caching ? + const lookAheadPathsPerAlternative = getLookaheadPathsForOr(occurrence, ruleGrammar, this.maxLookahead); + const actualTokens = []; + for (let i = 1; i <= this.maxLookahead; i++) { + actualTokens.push(this.LA(i)); + } + const previousToken = this.LA(0); + const errMsg = this.errorMessageProvider.buildNoViableAltMessage({ + expectedPathsPerAlt: lookAheadPathsPerAlternative, + actual: actualTokens, + previous: previousToken, + customUserDescription: errMsgTypes, + ruleName: this.getCurrRuleFullName(), + }); + throw this.SAVE_ERROR(new NoViableAltException(errMsg, this.LA(1), previousToken)); + } +} +//# sourceMappingURL=error_handler.js.map +;// CONCATENATED MODULE: ./node_modules/chevrotain/lib/src/parse/parser/traits/context_assist.js + + +class ContentAssist { + initContentAssist() { } + computeContentAssist(startRuleName, precedingInput) { + const startRuleGast = this.gastProductionsCache[startRuleName]; + if ((0,isUndefined/* default */.A)(startRuleGast)) { + throw Error(`Rule ->${startRuleName}<- does not exist in this grammar.`); + } + return nextPossibleTokensAfter([startRuleGast], precedingInput, this.tokenMatcher, this.maxLookahead); + } + // TODO: should this be a member method or a utility? it does not have any state or usage of 'this'... + // TODO: should this be more explicitly part of the public API? + getNextPossibleTokenTypes(grammarPath) { + const topRuleName = lodash_es_head(grammarPath.ruleStack); + const gastProductions = this.getGAstProductions(); + const topProduction = gastProductions[topRuleName]; + const nextPossibleTokenTypes = new NextAfterTokenWalker(topProduction, grammarPath).startWalking(); + return nextPossibleTokenTypes; + } +} +//# sourceMappingURL=context_assist.js.map +;// CONCATENATED MODULE: ./node_modules/chevrotain/lib/src/parse/parser/traits/gast_recorder.js + + + + + + + +const RECORDING_NULL_OBJECT = { + description: "This Object indicates the Parser is during Recording Phase", +}; +Object.freeze(RECORDING_NULL_OBJECT); +const HANDLE_SEPARATOR = true; +const MAX_METHOD_IDX = Math.pow(2, BITS_FOR_OCCURRENCE_IDX) - 1; +const RFT = createToken({ name: "RECORDING_PHASE_TOKEN", pattern: Lexer.NA }); +augmentTokenTypes([RFT]); +const RECORDING_PHASE_TOKEN = createTokenInstance(RFT, "This IToken indicates the Parser is in Recording Phase\n\t" + + "" + + "See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details", +// Using "-1" instead of NaN (as in EOF) because an actual number is less likely to +// cause errors if the output of LA or CONSUME would be (incorrectly) used during the recording phase. +-1, -1, -1, -1, -1, -1); +Object.freeze(RECORDING_PHASE_TOKEN); +const RECORDING_PHASE_CSTNODE = { + name: "This CSTNode indicates the Parser is in Recording Phase\n\t" + + "See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details", + children: {}, +}; +/** + * This trait handles the creation of the GAST structure for Chevrotain Grammars + */ +class GastRecorder { + initGastRecorder(config) { + this.recordingProdStack = []; + this.RECORDING_PHASE = false; + } + enableRecording() { + this.RECORDING_PHASE = true; + this.TRACE_INIT("Enable Recording", () => { + /** + * Warning Dark Voodoo Magic upcoming! + * We are "replacing" the public parsing DSL methods API + * With **new** alternative implementations on the Parser **instance** + * + * So far this is the only way I've found to avoid performance regressions during parsing time. + * - Approx 30% performance regression was measured on Chrome 75 Canary when attempting to replace the "internal" + * implementations directly instead. + */ + for (let i = 0; i < 10; i++) { + const idx = i > 0 ? i : ""; + this[`CONSUME${idx}`] = function (arg1, arg2) { + return this.consumeInternalRecord(arg1, i, arg2); + }; + this[`SUBRULE${idx}`] = function (arg1, arg2) { + return this.subruleInternalRecord(arg1, i, arg2); + }; + this[`OPTION${idx}`] = function (arg1) { + return this.optionInternalRecord(arg1, i); + }; + this[`OR${idx}`] = function (arg1) { + return this.orInternalRecord(arg1, i); + }; + this[`MANY${idx}`] = function (arg1) { + this.manyInternalRecord(i, arg1); + }; + this[`MANY_SEP${idx}`] = function (arg1) { + this.manySepFirstInternalRecord(i, arg1); + }; + this[`AT_LEAST_ONE${idx}`] = function (arg1) { + this.atLeastOneInternalRecord(i, arg1); + }; + this[`AT_LEAST_ONE_SEP${idx}`] = function (arg1) { + this.atLeastOneSepFirstInternalRecord(i, arg1); + }; + } + // DSL methods with the idx(suffix) as an argument + this[`consume`] = function (idx, arg1, arg2) { + return this.consumeInternalRecord(arg1, idx, arg2); + }; + this[`subrule`] = function (idx, arg1, arg2) { + return this.subruleInternalRecord(arg1, idx, arg2); + }; + this[`option`] = function (idx, arg1) { + return this.optionInternalRecord(arg1, idx); + }; + this[`or`] = function (idx, arg1) { + return this.orInternalRecord(arg1, idx); + }; + this[`many`] = function (idx, arg1) { + this.manyInternalRecord(idx, arg1); + }; + this[`atLeastOne`] = function (idx, arg1) { + this.atLeastOneInternalRecord(idx, arg1); + }; + this.ACTION = this.ACTION_RECORD; + this.BACKTRACK = this.BACKTRACK_RECORD; + this.LA = this.LA_RECORD; + }); + } + disableRecording() { + this.RECORDING_PHASE = false; + // By deleting these **instance** properties, any future invocation + // will be deferred to the original methods on the **prototype** object + // This seems to get rid of any incorrect optimizations that V8 may + // do during the recording phase. + this.TRACE_INIT("Deleting Recording methods", () => { + const that = this; + for (let i = 0; i < 10; i++) { + const idx = i > 0 ? i : ""; + delete that[`CONSUME${idx}`]; + delete that[`SUBRULE${idx}`]; + delete that[`OPTION${idx}`]; + delete that[`OR${idx}`]; + delete that[`MANY${idx}`]; + delete that[`MANY_SEP${idx}`]; + delete that[`AT_LEAST_ONE${idx}`]; + delete that[`AT_LEAST_ONE_SEP${idx}`]; + } + delete that[`consume`]; + delete that[`subrule`]; + delete that[`option`]; + delete that[`or`]; + delete that[`many`]; + delete that[`atLeastOne`]; + delete that.ACTION; + delete that.BACKTRACK; + delete that.LA; + }); + } + // Parser methods are called inside an ACTION? + // Maybe try/catch/finally on ACTIONS while disabling the recorders state changes? + // @ts-expect-error -- noop place holder + ACTION_RECORD(impl) { + // NO-OP during recording + } + // Executing backtracking logic will break our recording logic assumptions + BACKTRACK_RECORD(grammarRule, args) { + return () => true; + } + // LA is part of the official API and may be used for custom lookahead logic + // by end users who may forget to wrap it in ACTION or inside a GATE + LA_RECORD(howMuch) { + // We cannot use the RECORD_PHASE_TOKEN here because someone may depend + // On LA return EOF at the end of the input so an infinite loop may occur. + return END_OF_FILE; + } + topLevelRuleRecord(name, def) { + try { + const newTopLevelRule = new Rule({ definition: [], name: name }); + newTopLevelRule.name = name; + this.recordingProdStack.push(newTopLevelRule); + def.call(this); + this.recordingProdStack.pop(); + return newTopLevelRule; + } + catch (originalError) { + if (originalError.KNOWN_RECORDER_ERROR !== true) { + try { + originalError.message = + originalError.message + + '\n\t This error was thrown during the "grammar recording phase" For more info see:\n\t' + + "https://chevrotain.io/docs/guide/internals.html#grammar-recording"; + } + catch (mutabilityError) { + // We may not be able to modify the original error object + throw originalError; + } + } + throw originalError; + } + } + // Implementation of parsing DSL + optionInternalRecord(actionORMethodDef, occurrence) { + return recordProd.call(this, Option, actionORMethodDef, occurrence); + } + atLeastOneInternalRecord(occurrence, actionORMethodDef) { + recordProd.call(this, RepetitionMandatory, actionORMethodDef, occurrence); + } + atLeastOneSepFirstInternalRecord(occurrence, options) { + recordProd.call(this, RepetitionMandatoryWithSeparator, options, occurrence, HANDLE_SEPARATOR); + } + manyInternalRecord(occurrence, actionORMethodDef) { + recordProd.call(this, Repetition, actionORMethodDef, occurrence); + } + manySepFirstInternalRecord(occurrence, options) { + recordProd.call(this, RepetitionWithSeparator, options, occurrence, HANDLE_SEPARATOR); + } + orInternalRecord(altsOrOpts, occurrence) { + return recordOrProd.call(this, altsOrOpts, occurrence); + } + subruleInternalRecord(ruleToCall, occurrence, options) { + assertMethodIdxIsValid(occurrence); + if (!ruleToCall || (0,has/* default */.A)(ruleToCall, "ruleName") === false) { + const error = new Error(`<SUBRULE${getIdxSuffix(occurrence)}> argument is invalid` + + ` expecting a Parser method reference but got: <${JSON.stringify(ruleToCall)}>` + + `\n inside top level rule: <${this.recordingProdStack[0].name}>`); + error.KNOWN_RECORDER_ERROR = true; + throw error; + } + const prevProd = (0,last/* default */.A)(this.recordingProdStack); + const ruleName = ruleToCall.ruleName; + const newNoneTerminal = new model_NonTerminal({ + idx: occurrence, + nonTerminalName: ruleName, + label: options === null || options === void 0 ? void 0 : options.LABEL, + // The resolving of the `referencedRule` property will be done once all the Rule's GASTs have been created + referencedRule: undefined, + }); + prevProd.definition.push(newNoneTerminal); + return this.outputCst + ? RECORDING_PHASE_CSTNODE + : RECORDING_NULL_OBJECT; + } + consumeInternalRecord(tokType, occurrence, options) { + assertMethodIdxIsValid(occurrence); + if (!hasShortKeyProperty(tokType)) { + const error = new Error(`<CONSUME${getIdxSuffix(occurrence)}> argument is invalid` + + ` expecting a TokenType reference but got: <${JSON.stringify(tokType)}>` + + `\n inside top level rule: <${this.recordingProdStack[0].name}>`); + error.KNOWN_RECORDER_ERROR = true; + throw error; + } + const prevProd = (0,last/* default */.A)(this.recordingProdStack); + const newNoneTerminal = new Terminal({ + idx: occurrence, + terminalType: tokType, + label: options === null || options === void 0 ? void 0 : options.LABEL, + }); + prevProd.definition.push(newNoneTerminal); + return RECORDING_PHASE_TOKEN; + } +} +function recordProd(prodConstructor, mainProdArg, occurrence, handleSep = false) { + assertMethodIdxIsValid(occurrence); + const prevProd = (0,last/* default */.A)(this.recordingProdStack); + const grammarAction = (0,isFunction/* default */.A)(mainProdArg) ? mainProdArg : mainProdArg.DEF; + const newProd = new prodConstructor({ definition: [], idx: occurrence }); + if (handleSep) { + newProd.separator = mainProdArg.SEP; + } + if ((0,has/* default */.A)(mainProdArg, "MAX_LOOKAHEAD")) { + newProd.maxLookahead = mainProdArg.MAX_LOOKAHEAD; + } + this.recordingProdStack.push(newProd); + grammarAction.call(this); + prevProd.definition.push(newProd); + this.recordingProdStack.pop(); + return RECORDING_NULL_OBJECT; +} +function recordOrProd(mainProdArg, occurrence) { + assertMethodIdxIsValid(occurrence); + const prevProd = (0,last/* default */.A)(this.recordingProdStack); + // Only an array of alternatives + const hasOptions = (0,isArray/* default */.A)(mainProdArg) === false; + const alts = hasOptions === false ? mainProdArg : mainProdArg.DEF; + const newOrProd = new Alternation({ + definition: [], + idx: occurrence, + ignoreAmbiguities: hasOptions && mainProdArg.IGNORE_AMBIGUITIES === true, + }); + if ((0,has/* default */.A)(mainProdArg, "MAX_LOOKAHEAD")) { + newOrProd.maxLookahead = mainProdArg.MAX_LOOKAHEAD; + } + const hasPredicates = lodash_es_some(alts, (currAlt) => (0,isFunction/* default */.A)(currAlt.GATE)); + newOrProd.hasPredicates = hasPredicates; + prevProd.definition.push(newOrProd); + (0,forEach/* default */.A)(alts, (currAlt) => { + const currAltFlat = new Alternative({ definition: [] }); + newOrProd.definition.push(currAltFlat); + if ((0,has/* default */.A)(currAlt, "IGNORE_AMBIGUITIES")) { + currAltFlat.ignoreAmbiguities = currAlt.IGNORE_AMBIGUITIES; // assumes end user provides the correct config value/type + } + // **implicit** ignoreAmbiguities due to usage of gate + else if ((0,has/* default */.A)(currAlt, "GATE")) { + currAltFlat.ignoreAmbiguities = true; + } + this.recordingProdStack.push(currAltFlat); + currAlt.ALT.call(this); + this.recordingProdStack.pop(); + }); + return RECORDING_NULL_OBJECT; +} +function getIdxSuffix(idx) { + return idx === 0 ? "" : `${idx}`; +} +function assertMethodIdxIsValid(idx) { + if (idx < 0 || idx > MAX_METHOD_IDX) { + const error = new Error( + // The stack trace will contain all the needed details + `Invalid DSL Method idx value: <${idx}>\n\t` + + `Idx value must be a none negative value smaller than ${MAX_METHOD_IDX + 1}`); + error.KNOWN_RECORDER_ERROR = true; + throw error; + } +} +//# sourceMappingURL=gast_recorder.js.map +;// CONCATENATED MODULE: ./node_modules/chevrotain/lib/src/parse/parser/traits/perf_tracer.js +/* provided dependency */ var perf_tracer_console = __webpack_require__(96763); + + + +/** + * Trait responsible for runtime parsing errors. + */ +class PerformanceTracer { + initPerformanceTracer(config) { + if ((0,has/* default */.A)(config, "traceInitPerf")) { + const userTraceInitPerf = config.traceInitPerf; + const traceIsNumber = typeof userTraceInitPerf === "number"; + this.traceInitMaxIdent = traceIsNumber + ? userTraceInitPerf + : Infinity; + this.traceInitPerf = traceIsNumber + ? userTraceInitPerf > 0 + : userTraceInitPerf; // assumes end user provides the correct config value/type + } + else { + this.traceInitMaxIdent = 0; + this.traceInitPerf = DEFAULT_PARSER_CONFIG.traceInitPerf; + } + this.traceInitIndent = -1; + } + TRACE_INIT(phaseDesc, phaseImpl) { + // No need to optimize this using NOOP pattern because + // It is not called in a hot spot... + if (this.traceInitPerf === true) { + this.traceInitIndent++; + const indent = new Array(this.traceInitIndent + 1).join("\t"); + if (this.traceInitIndent < this.traceInitMaxIdent) { + perf_tracer_console.log(`${indent}--> <${phaseDesc}>`); + } + const { time, value } = timer(phaseImpl); + /* istanbul ignore next - Difficult to reproduce specific performance behavior (>10ms) in tests */ + const traceMethod = time > 10 ? perf_tracer_console.warn : perf_tracer_console.log; + if (this.traceInitIndent < this.traceInitMaxIdent) { + traceMethod(`${indent}<-- <${phaseDesc}> time: ${time}ms`); + } + this.traceInitIndent--; + return value; + } + else { + return phaseImpl(); + } + } +} +//# sourceMappingURL=perf_tracer.js.map +;// CONCATENATED MODULE: ./node_modules/chevrotain/lib/src/parse/parser/utils/apply_mixins.js +function applyMixins(derivedCtor, baseCtors) { + baseCtors.forEach((baseCtor) => { + const baseProto = baseCtor.prototype; + Object.getOwnPropertyNames(baseProto).forEach((propName) => { + if (propName === "constructor") { + return; + } + const basePropDescriptor = Object.getOwnPropertyDescriptor(baseProto, propName); + // Handle Accessors + if (basePropDescriptor && + (basePropDescriptor.get || basePropDescriptor.set)) { + Object.defineProperty(derivedCtor.prototype, propName, basePropDescriptor); + } + else { + derivedCtor.prototype[propName] = baseCtor.prototype[propName]; + } + }); + }); +} +//# sourceMappingURL=apply_mixins.js.map +;// CONCATENATED MODULE: ./node_modules/chevrotain/lib/src/parse/parser/parser.js + + + + + + + + + + + + + + + + + + +const END_OF_FILE = createTokenInstance(EOF, "", NaN, NaN, NaN, NaN, NaN, NaN); +Object.freeze(END_OF_FILE); +const DEFAULT_PARSER_CONFIG = Object.freeze({ + recoveryEnabled: false, + maxLookahead: 3, + dynamicTokensEnabled: false, + outputCst: true, + errorMessageProvider: defaultParserErrorProvider, + nodeLocationTracking: "none", + traceInitPerf: false, + skipValidations: false, +}); +const DEFAULT_RULE_CONFIG = Object.freeze({ + recoveryValueFunc: () => undefined, + resyncEnabled: true, +}); +var ParserDefinitionErrorType; +(function (ParserDefinitionErrorType) { + ParserDefinitionErrorType[ParserDefinitionErrorType["INVALID_RULE_NAME"] = 0] = "INVALID_RULE_NAME"; + ParserDefinitionErrorType[ParserDefinitionErrorType["DUPLICATE_RULE_NAME"] = 1] = "DUPLICATE_RULE_NAME"; + ParserDefinitionErrorType[ParserDefinitionErrorType["INVALID_RULE_OVERRIDE"] = 2] = "INVALID_RULE_OVERRIDE"; + ParserDefinitionErrorType[ParserDefinitionErrorType["DUPLICATE_PRODUCTIONS"] = 3] = "DUPLICATE_PRODUCTIONS"; + ParserDefinitionErrorType[ParserDefinitionErrorType["UNRESOLVED_SUBRULE_REF"] = 4] = "UNRESOLVED_SUBRULE_REF"; + ParserDefinitionErrorType[ParserDefinitionErrorType["LEFT_RECURSION"] = 5] = "LEFT_RECURSION"; + ParserDefinitionErrorType[ParserDefinitionErrorType["NONE_LAST_EMPTY_ALT"] = 6] = "NONE_LAST_EMPTY_ALT"; + ParserDefinitionErrorType[ParserDefinitionErrorType["AMBIGUOUS_ALTS"] = 7] = "AMBIGUOUS_ALTS"; + ParserDefinitionErrorType[ParserDefinitionErrorType["CONFLICT_TOKENS_RULES_NAMESPACE"] = 8] = "CONFLICT_TOKENS_RULES_NAMESPACE"; + ParserDefinitionErrorType[ParserDefinitionErrorType["INVALID_TOKEN_NAME"] = 9] = "INVALID_TOKEN_NAME"; + ParserDefinitionErrorType[ParserDefinitionErrorType["NO_NON_EMPTY_LOOKAHEAD"] = 10] = "NO_NON_EMPTY_LOOKAHEAD"; + ParserDefinitionErrorType[ParserDefinitionErrorType["AMBIGUOUS_PREFIX_ALTS"] = 11] = "AMBIGUOUS_PREFIX_ALTS"; + ParserDefinitionErrorType[ParserDefinitionErrorType["TOO_MANY_ALTS"] = 12] = "TOO_MANY_ALTS"; + ParserDefinitionErrorType[ParserDefinitionErrorType["CUSTOM_LOOKAHEAD_VALIDATION"] = 13] = "CUSTOM_LOOKAHEAD_VALIDATION"; +})(ParserDefinitionErrorType || (ParserDefinitionErrorType = {})); +function EMPTY_ALT(value = undefined) { + return function () { + return value; + }; +} +class Parser { + /** + * @deprecated use the **instance** method with the same name instead + */ + static performSelfAnalysis(parserInstance) { + throw Error("The **static** `performSelfAnalysis` method has been deprecated." + + "\t\nUse the **instance** method with the same name instead."); + } + performSelfAnalysis() { + this.TRACE_INIT("performSelfAnalysis", () => { + let defErrorsMsgs; + this.selfAnalysisDone = true; + const className = this.className; + this.TRACE_INIT("toFastProps", () => { + // Without this voodoo magic the parser would be x3-x4 slower + // It seems it is better to invoke `toFastProperties` **before** + // Any manipulations of the `this` object done during the recording phase. + toFastProperties(this); + }); + this.TRACE_INIT("Grammar Recording", () => { + try { + this.enableRecording(); + // Building the GAST + (0,forEach/* default */.A)(this.definedRulesNames, (currRuleName) => { + const wrappedRule = this[currRuleName]; + const originalGrammarAction = wrappedRule["originalGrammarAction"]; + let recordedRuleGast; + this.TRACE_INIT(`${currRuleName} Rule`, () => { + recordedRuleGast = this.topLevelRuleRecord(currRuleName, originalGrammarAction); + }); + this.gastProductionsCache[currRuleName] = recordedRuleGast; + }); + } + finally { + this.disableRecording(); + } + }); + let resolverErrors = []; + this.TRACE_INIT("Grammar Resolving", () => { + resolverErrors = gast_resolver_public_resolveGrammar({ + rules: (0,lodash_es_values/* default */.A)(this.gastProductionsCache), + }); + this.definitionErrors = this.definitionErrors.concat(resolverErrors); + }); + this.TRACE_INIT("Grammar Validations", () => { + // only perform additional grammar validations IFF no resolving errors have occurred. + // as unresolved grammar may lead to unhandled runtime exceptions in the follow up validations. + if ((0,isEmpty/* default */.A)(resolverErrors) && this.skipValidations === false) { + const validationErrors = gast_resolver_public_validateGrammar({ + rules: (0,lodash_es_values/* default */.A)(this.gastProductionsCache), + tokenTypes: (0,lodash_es_values/* default */.A)(this.tokensMap), + errMsgProvider: defaultGrammarValidatorErrorProvider, + grammarName: className, + }); + const lookaheadValidationErrors = validateLookahead({ + lookaheadStrategy: this.lookaheadStrategy, + rules: (0,lodash_es_values/* default */.A)(this.gastProductionsCache), + tokenTypes: (0,lodash_es_values/* default */.A)(this.tokensMap), + grammarName: className, + }); + this.definitionErrors = this.definitionErrors.concat(validationErrors, lookaheadValidationErrors); + } + }); + // this analysis may fail if the grammar is not perfectly valid + if ((0,isEmpty/* default */.A)(this.definitionErrors)) { + // The results of these computations are not needed unless error recovery is enabled. + if (this.recoveryEnabled) { + this.TRACE_INIT("computeAllProdsFollows", () => { + const allFollows = computeAllProdsFollows((0,lodash_es_values/* default */.A)(this.gastProductionsCache)); + this.resyncFollows = allFollows; + }); + } + this.TRACE_INIT("ComputeLookaheadFunctions", () => { + var _a, _b; + (_b = (_a = this.lookaheadStrategy).initialize) === null || _b === void 0 ? void 0 : _b.call(_a, { + rules: (0,lodash_es_values/* default */.A)(this.gastProductionsCache), + }); + this.preComputeLookaheadFunctions((0,lodash_es_values/* default */.A)(this.gastProductionsCache)); + }); + } + if (!Parser.DEFER_DEFINITION_ERRORS_HANDLING && + !(0,isEmpty/* default */.A)(this.definitionErrors)) { + defErrorsMsgs = (0,lodash_es_map/* default */.A)(this.definitionErrors, (defError) => defError.message); + throw new Error(`Parser Definition Errors detected:\n ${defErrorsMsgs.join("\n-------------------------------\n")}`); + } + }); + } + constructor(tokenVocabulary, config) { + this.definitionErrors = []; + this.selfAnalysisDone = false; + const that = this; + that.initErrorHandler(config); + that.initLexerAdapter(); + that.initLooksAhead(config); + that.initRecognizerEngine(tokenVocabulary, config); + that.initRecoverable(config); + that.initTreeBuilder(config); + that.initContentAssist(); + that.initGastRecorder(config); + that.initPerformanceTracer(config); + if ((0,has/* default */.A)(config, "ignoredIssues")) { + throw new Error("The <ignoredIssues> IParserConfig property has been deprecated.\n\t" + + "Please use the <IGNORE_AMBIGUITIES> flag on the relevant DSL method instead.\n\t" + + "See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#IGNORING_AMBIGUITIES\n\t" + + "For further details."); + } + this.skipValidations = (0,has/* default */.A)(config, "skipValidations") + ? config.skipValidations // casting assumes the end user passing the correct type + : DEFAULT_PARSER_CONFIG.skipValidations; + } +} +// Set this flag to true if you don't want the Parser to throw error when problems in it's definition are detected. +// (normally during the parser's constructor). +// This is a design time flag, it will not affect the runtime error handling of the parser, just design time errors, +// for example: duplicate rule names, referencing an unresolved subrule, ect... +// This flag should not be enabled during normal usage, it is used in special situations, for example when +// needing to display the parser definition errors in some GUI(online playground). +Parser.DEFER_DEFINITION_ERRORS_HANDLING = false; +applyMixins(Parser, [ + Recoverable, + LooksAhead, + TreeBuilder, + LexerAdapter, + RecognizerEngine, + RecognizerApi, + ErrorHandler, + ContentAssist, + GastRecorder, + PerformanceTracer, +]); +class CstParser extends Parser { + constructor(tokenVocabulary, config = DEFAULT_PARSER_CONFIG) { + const configClone = (0,clone/* default */.A)(config); + configClone.outputCst = true; + super(tokenVocabulary, configClone); + } +} +class EmbeddedActionsParser extends Parser { + constructor(tokenVocabulary, config = DEFAULT_PARSER_CONFIG) { + const configClone = (0,clone/* default */.A)(config); + configClone.outputCst = false; + super(tokenVocabulary, configClone); + } +} +//# sourceMappingURL=parser.js.map +;// CONCATENATED MODULE: ./node_modules/@chevrotain/cst-dts-gen/lib/src/model.js + + +function model_buildModel(productions) { + const generator = new CstNodeDefinitionGenerator(); + const allRules = values(productions); + return map(allRules, (rule) => generator.visitRule(rule)); +} +class CstNodeDefinitionGenerator extends (/* unused pure expression or super */ null && (GAstVisitor)) { + visitRule(node) { + const rawElements = this.visitEach(node.definition); + const grouped = groupBy(rawElements, (el) => el.propertyName); + const properties = map(grouped, (group, propertyName) => { + const allNullable = !some(group, (el) => !el.canBeNull); + // In an alternation with a label a property name can have + // multiple types. + let propertyType = group[0].type; + if (group.length > 1) { + propertyType = map(group, (g) => g.type); + } + return { + name: propertyName, + type: propertyType, + optional: allNullable, + }; + }); + return { + name: node.name, + properties: properties, + }; + } + visitAlternative(node) { + return this.visitEachAndOverrideWith(node.definition, { canBeNull: true }); + } + visitOption(node) { + return this.visitEachAndOverrideWith(node.definition, { canBeNull: true }); + } + visitRepetition(node) { + return this.visitEachAndOverrideWith(node.definition, { canBeNull: true }); + } + visitRepetitionMandatory(node) { + return this.visitEach(node.definition); + } + visitRepetitionMandatoryWithSeparator(node) { + return this.visitEach(node.definition).concat({ + propertyName: node.separator.name, + canBeNull: true, + type: getType(node.separator), + }); + } + visitRepetitionWithSeparator(node) { + return this.visitEachAndOverrideWith(node.definition, { + canBeNull: true, + }).concat({ + propertyName: node.separator.name, + canBeNull: true, + type: getType(node.separator), + }); + } + visitAlternation(node) { + return this.visitEachAndOverrideWith(node.definition, { canBeNull: true }); + } + visitTerminal(node) { + return [ + { + propertyName: node.label || node.terminalType.name, + canBeNull: false, + type: getType(node), + }, + ]; + } + visitNonTerminal(node) { + return [ + { + propertyName: node.label || node.nonTerminalName, + canBeNull: false, + type: getType(node), + }, + ]; + } + visitEachAndOverrideWith(definition, override) { + return map(this.visitEach(definition), (definition) => assign({}, definition, override)); + } + visitEach(definition) { + return flatten(map(definition, (definition) => this.visit(definition))); + } +} +function getType(production) { + if (production instanceof NonTerminal) { + return { + kind: "rule", + name: production.referencedRule.name, + }; + } + return { kind: "token" }; +} +//# sourceMappingURL=model.js.map +;// CONCATENATED MODULE: ./node_modules/@chevrotain/cst-dts-gen/lib/src/api.js + + +const defaultOptions = { + includeVisitorInterface: true, + visitorInterfaceName: "ICstNodeVisitor", +}; +function generateCstDts(productions, options) { + const effectiveOptions = Object.assign(Object.assign({}, defaultOptions), options); + const model = buildModel(productions); + return genDts(model, effectiveOptions); +} +//# sourceMappingURL=api.js.map +;// CONCATENATED MODULE: ./node_modules/chevrotain/lib/src/api.js +/* provided dependency */ var api_console = __webpack_require__(96763); +/* istanbul ignore file - tricky to import some things from this module during testing */ +// semantic version + + + +// Tokens utilities + +// Lookahead + + +// Other Utilities + + + +// grammar reflection API + +// GAST Utilities + + +/* istanbul ignore next */ +function clearCache() { + api_console.warn("The clearCache function was 'soft' removed from the Chevrotain API." + + "\n\t It performs no action other than printing this message." + + "\n\t Please avoid using it as it will be completely removed in the future"); +} + +class api_Parser { + constructor() { + throw new Error("The Parser class has been deprecated, use CstParser or EmbeddedActionsParser instead.\t\n" + + "See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_7-0-0"); + } +} +//# sourceMappingURL=api.js.map +;// CONCATENATED MODULE: ./node_modules/chevrotain-allstar/lib/atn.js +/****************************************************************************** + * Copyright 2022 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + + + +function buildATNKey(rule, type, occurrence) { + return `${rule.name}_${type}_${occurrence}`; +} +const ATN_INVALID_TYPE = 0; +const ATN_BASIC = 1; +const ATN_RULE_START = 2; +const ATN_PLUS_BLOCK_START = 4; +const ATN_STAR_BLOCK_START = 5; +// Currently unused as the ATN is not used for lexing +const ATN_TOKEN_START = 6; +const ATN_RULE_STOP = 7; +const ATN_BLOCK_END = 8; +const ATN_STAR_LOOP_BACK = 9; +const ATN_STAR_LOOP_ENTRY = 10; +const ATN_PLUS_LOOP_BACK = 11; +const ATN_LOOP_END = 12; +class AbstractTransition { + constructor(target) { + this.target = target; + } + isEpsilon() { + return false; + } +} +class AtomTransition extends AbstractTransition { + constructor(target, tokenType) { + super(target); + this.tokenType = tokenType; + } +} +class EpsilonTransition extends AbstractTransition { + constructor(target) { + super(target); + } + isEpsilon() { + return true; + } +} +class RuleTransition extends AbstractTransition { + constructor(ruleStart, rule, followState) { + super(ruleStart); + this.rule = rule; + this.followState = followState; + } + isEpsilon() { + return true; + } +} +function createATN(rules) { + const atn = { + decisionMap: {}, + decisionStates: [], + ruleToStartState: new Map(), + ruleToStopState: new Map(), + states: [] + }; + createRuleStartAndStopATNStates(atn, rules); + const ruleLength = rules.length; + for (let i = 0; i < ruleLength; i++) { + const rule = rules[i]; + const ruleBlock = block(atn, rule, rule); + if (ruleBlock === undefined) { + continue; + } + buildRuleHandle(atn, rule, ruleBlock); + } + return atn; +} +function createRuleStartAndStopATNStates(atn, rules) { + const ruleLength = rules.length; + for (let i = 0; i < ruleLength; i++) { + const rule = rules[i]; + const start = newState(atn, rule, undefined, { + type: ATN_RULE_START + }); + const stop = newState(atn, rule, undefined, { + type: ATN_RULE_STOP + }); + start.stop = stop; + atn.ruleToStartState.set(rule, start); + atn.ruleToStopState.set(rule, stop); + } +} +function atom(atn, rule, production) { + if (production instanceof Terminal) { + return tokenRef(atn, rule, production.terminalType, production); + } + else if (production instanceof model_NonTerminal) { + return ruleRef(atn, rule, production); + } + else if (production instanceof Alternation) { + return alternation(atn, rule, production); + } + else if (production instanceof Option) { + return atn_option(atn, rule, production); + } + else if (production instanceof Repetition) { + return repetition(atn, rule, production); + } + else if (production instanceof RepetitionWithSeparator) { + return repetitionSep(atn, rule, production); + } + else if (production instanceof RepetitionMandatory) { + return repetitionMandatory(atn, rule, production); + } + else if (production instanceof RepetitionMandatoryWithSeparator) { + return repetitionMandatorySep(atn, rule, production); + } + else { + return block(atn, rule, production); + } +} +function repetition(atn, rule, repetition) { + const starState = newState(atn, rule, repetition, { + type: ATN_STAR_BLOCK_START + }); + defineDecisionState(atn, starState); + const handle = makeAlts(atn, rule, starState, repetition, block(atn, rule, repetition)); + return star(atn, rule, repetition, handle); +} +function repetitionSep(atn, rule, repetition) { + const starState = newState(atn, rule, repetition, { + type: ATN_STAR_BLOCK_START + }); + defineDecisionState(atn, starState); + const handle = makeAlts(atn, rule, starState, repetition, block(atn, rule, repetition)); + const sep = tokenRef(atn, rule, repetition.separator, repetition); + return star(atn, rule, repetition, handle, sep); +} +function repetitionMandatory(atn, rule, repetition) { + const plusState = newState(atn, rule, repetition, { + type: ATN_PLUS_BLOCK_START + }); + defineDecisionState(atn, plusState); + const handle = makeAlts(atn, rule, plusState, repetition, block(atn, rule, repetition)); + return plus(atn, rule, repetition, handle); +} +function repetitionMandatorySep(atn, rule, repetition) { + const plusState = newState(atn, rule, repetition, { + type: ATN_PLUS_BLOCK_START + }); + defineDecisionState(atn, plusState); + const handle = makeAlts(atn, rule, plusState, repetition, block(atn, rule, repetition)); + const sep = tokenRef(atn, rule, repetition.separator, repetition); + return plus(atn, rule, repetition, handle, sep); +} +function alternation(atn, rule, alternation) { + const start = newState(atn, rule, alternation, { + type: ATN_BASIC + }); + defineDecisionState(atn, start); + const alts = (0,lodash_es_map/* default */.A)(alternation.definition, (e) => atom(atn, rule, e)); + const handle = makeAlts(atn, rule, start, alternation, ...alts); + return handle; +} +function atn_option(atn, rule, option) { + const start = newState(atn, rule, option, { + type: ATN_BASIC + }); + defineDecisionState(atn, start); + const handle = makeAlts(atn, rule, start, option, block(atn, rule, option)); + return optional(atn, rule, option, handle); +} +function block(atn, rule, block) { + const handles = (0,filter/* default */.A)((0,lodash_es_map/* default */.A)(block.definition, (e) => atom(atn, rule, e)), (e) => e !== undefined); + if (handles.length === 1) { + return handles[0]; + } + else if (handles.length === 0) { + return undefined; + } + else { + return makeBlock(atn, handles); + } +} +function plus(atn, rule, plus, handle, sep) { + const blkStart = handle.left; + const blkEnd = handle.right; + const loop = newState(atn, rule, plus, { + type: ATN_PLUS_LOOP_BACK + }); + defineDecisionState(atn, loop); + const end = newState(atn, rule, plus, { + type: ATN_LOOP_END + }); + blkStart.loopback = loop; + end.loopback = loop; + atn.decisionMap[buildATNKey(rule, sep ? 'RepetitionMandatoryWithSeparator' : 'RepetitionMandatory', plus.idx)] = loop; + epsilon(blkEnd, loop); // block can see loop back + // Depending on whether we have a separator we put the exit transition at index 1 or 0 + // This influences the chosen option in the lookahead DFA + if (sep === undefined) { + epsilon(loop, blkStart); // loop back to start + epsilon(loop, end); // exit + } + else { + epsilon(loop, end); // exit + // loop back to start with separator + epsilon(loop, sep.left); + epsilon(sep.right, blkStart); + } + return { + left: blkStart, + right: end + }; +} +function star(atn, rule, star, handle, sep) { + const start = handle.left; + const end = handle.right; + const entry = newState(atn, rule, star, { + type: ATN_STAR_LOOP_ENTRY + }); + defineDecisionState(atn, entry); + const loopEnd = newState(atn, rule, star, { + type: ATN_LOOP_END + }); + const loop = newState(atn, rule, star, { + type: ATN_STAR_LOOP_BACK + }); + entry.loopback = loop; + loopEnd.loopback = loop; + epsilon(entry, start); // loop enter edge (alt 2) + epsilon(entry, loopEnd); // bypass loop edge (alt 1) + epsilon(end, loop); // block end hits loop back + if (sep !== undefined) { + epsilon(loop, loopEnd); // end loop + // loop back to start of handle using separator + epsilon(loop, sep.left); + epsilon(sep.right, start); + } + else { + epsilon(loop, entry); // loop back to entry/exit decision + } + atn.decisionMap[buildATNKey(rule, sep ? 'RepetitionWithSeparator' : 'Repetition', star.idx)] = entry; + return { + left: entry, + right: loopEnd + }; +} +function optional(atn, rule, optional, handle) { + const start = handle.left; + const end = handle.right; + epsilon(start, end); + atn.decisionMap[buildATNKey(rule, 'Option', optional.idx)] = start; + return handle; +} +function defineDecisionState(atn, state) { + atn.decisionStates.push(state); + state.decision = atn.decisionStates.length - 1; + return state.decision; +} +function makeAlts(atn, rule, start, production, ...alts) { + const end = newState(atn, rule, production, { + type: ATN_BLOCK_END, + start + }); + start.end = end; + for (const alt of alts) { + if (alt !== undefined) { + // hook alts up to decision block + epsilon(start, alt.left); + epsilon(alt.right, end); + } + else { + epsilon(start, end); + } + } + const handle = { + left: start, + right: end + }; + atn.decisionMap[buildATNKey(rule, atn_getProdType(production), production.idx)] = start; + return handle; +} +function atn_getProdType(production) { + if (production instanceof Alternation) { + return 'Alternation'; + } + else if (production instanceof Option) { + return 'Option'; + } + else if (production instanceof Repetition) { + return 'Repetition'; + } + else if (production instanceof RepetitionWithSeparator) { + return 'RepetitionWithSeparator'; + } + else if (production instanceof RepetitionMandatory) { + return 'RepetitionMandatory'; + } + else if (production instanceof RepetitionMandatoryWithSeparator) { + return 'RepetitionMandatoryWithSeparator'; + } + else { + throw new Error('Invalid production type encountered'); + } +} +function makeBlock(atn, alts) { + const altsLength = alts.length; + for (let i = 0; i < altsLength - 1; i++) { + const handle = alts[i]; + let transition; + if (handle.left.transitions.length === 1) { + transition = handle.left.transitions[0]; + } + const isRuleTransition = transition instanceof RuleTransition; + const ruleTransition = transition; + const next = alts[i + 1].left; + if (handle.left.type === ATN_BASIC && + handle.right.type === ATN_BASIC && + transition !== undefined && + ((isRuleTransition && ruleTransition.followState === handle.right) || + transition.target === handle.right)) { + // we can avoid epsilon edge to next element + if (isRuleTransition) { + ruleTransition.followState = next; + } + else { + transition.target = next; + } + removeState(atn, handle.right); // we skipped over this state + } + else { + // need epsilon if previous block's right end node is complex + epsilon(handle.right, next); + } + } + const first = alts[0]; + const last = alts[altsLength - 1]; + return { + left: first.left, + right: last.right + }; +} +function tokenRef(atn, rule, tokenType, production) { + const left = newState(atn, rule, production, { + type: ATN_BASIC + }); + const right = newState(atn, rule, production, { + type: ATN_BASIC + }); + addTransition(left, new AtomTransition(right, tokenType)); + return { + left, + right + }; +} +function ruleRef(atn, currentRule, nonTerminal) { + const rule = nonTerminal.referencedRule; + const start = atn.ruleToStartState.get(rule); + const left = newState(atn, currentRule, nonTerminal, { + type: ATN_BASIC + }); + const right = newState(atn, currentRule, nonTerminal, { + type: ATN_BASIC + }); + const call = new RuleTransition(start, rule, right); + addTransition(left, call); + return { + left, + right + }; +} +function buildRuleHandle(atn, rule, block) { + const start = atn.ruleToStartState.get(rule); + epsilon(start, block.left); + const stop = atn.ruleToStopState.get(rule); + epsilon(block.right, stop); + const handle = { + left: start, + right: stop + }; + return handle; +} +function epsilon(a, b) { + const transition = new EpsilonTransition(b); + addTransition(a, transition); +} +function newState(atn, rule, production, partial) { + const t = Object.assign({ atn, + production, epsilonOnlyTransitions: false, rule, transitions: [], nextTokenWithinRule: [], stateNumber: atn.states.length }, partial); + atn.states.push(t); + return t; +} +function addTransition(state, transition) { + // A single ATN state can only contain epsilon transitions or non-epsilon transitions + // Because they are never mixed, only setting the property for the first transition is fine + if (state.transitions.length === 0) { + state.epsilonOnlyTransitions = transition.isEpsilon(); + } + state.transitions.push(transition); +} +function removeState(atn, state) { + atn.states.splice(atn.states.indexOf(state), 1); +} +//# sourceMappingURL=atn.js.map +;// CONCATENATED MODULE: ./node_modules/chevrotain-allstar/lib/dfa.js +/****************************************************************************** + * Copyright 2022 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + +const DFA_ERROR = {}; +class ATNConfigSet { + constructor() { + this.map = {}; + this.configs = []; + } + get size() { + return this.configs.length; + } + finalize() { + // Empties the map to free up memory + this.map = {}; + } + add(config) { + const key = getATNConfigKey(config); + // Only add configs which don't exist in our map already + // While this does not influence the actual algorithm, adding them anyway would massively increase memory consumption + if (!(key in this.map)) { + this.map[key] = this.configs.length; + this.configs.push(config); + } + } + get elements() { + return this.configs; + } + get alts() { + return (0,lodash_es_map/* default */.A)(this.configs, (e) => e.alt); + } + get key() { + let value = ""; + for (const k in this.map) { + value += k + ":"; + } + return value; + } +} +function getATNConfigKey(config, alt = true) { + return `${alt ? `a${config.alt}` : ""}s${config.state.stateNumber}:${config.stack.map((e) => e.stateNumber.toString()).join("_")}`; +} +//# sourceMappingURL=dfa.js.map +// EXTERNAL MODULE: ./node_modules/lodash-es/min.js +var min = __webpack_require__(86452); +;// CONCATENATED MODULE: ./node_modules/lodash-es/uniqBy.js + + + +/** + * This method is like `_.uniq` except that it accepts `iteratee` which is + * invoked for each element in `array` to generate the criterion by which + * uniqueness is computed. The order of result values is determined by the + * order they occur in the array. The iteratee is invoked with one argument: + * (value). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {Function} [iteratee=_.identity] The iteratee invoked per element. + * @returns {Array} Returns the new duplicate free array. + * @example + * + * _.uniqBy([2.1, 1.2, 2.3], Math.floor); + * // => [2.1, 1.2] + * + * // The `_.property` iteratee shorthand. + * _.uniqBy([{ 'x': 1 }, { 'x': 2 }, { 'x': 1 }], 'x'); + * // => [{ 'x': 1 }, { 'x': 2 }] + */ +function uniqBy(array, iteratee) { + return (array && array.length) ? (0,_baseUniq/* default */.A)(array, (0,_baseIteratee/* default */.A)(iteratee, 2)) : []; +} + +/* harmony default export */ const lodash_es_uniqBy = (uniqBy); + +;// CONCATENATED MODULE: ./node_modules/chevrotain-allstar/lib/all-star-lookahead.js +/* provided dependency */ var all_star_lookahead_console = __webpack_require__(96763); +/****************************************************************************** + * Copyright 2022 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + + + + + + + + + + + +function createDFACache(startState, decision) { + const map = {}; + return (predicateSet) => { + const key = predicateSet.toString(); + let existing = map[key]; + if (existing !== undefined) { + return existing; + } + else { + existing = { + atnStartState: startState, + decision, + states: {} + }; + map[key] = existing; + return existing; + } + }; +} +class PredicateSet { + constructor() { + this.predicates = []; + } + is(index) { + return index >= this.predicates.length || this.predicates[index]; + } + set(index, value) { + this.predicates[index] = value; + } + toString() { + let value = ""; + const size = this.predicates.length; + for (let i = 0; i < size; i++) { + value += this.predicates[i] === true ? "1" : "0"; + } + return value; + } +} +const EMPTY_PREDICATES = new PredicateSet(); +class LLStarLookaheadStrategy extends LLkLookaheadStrategy { + constructor(options) { + var _a; + super(); + this.logging = (_a = options === null || options === void 0 ? void 0 : options.logging) !== null && _a !== void 0 ? _a : ((message) => all_star_lookahead_console.log(message)); + } + initialize(options) { + this.atn = createATN(options.rules); + this.dfas = initATNSimulator(this.atn); + } + validateAmbiguousAlternationAlternatives() { + return []; + } + validateEmptyOrAlternatives() { + return []; + } + buildLookaheadForAlternation(options) { + const { prodOccurrence, rule, hasPredicates, dynamicTokensEnabled } = options; + const dfas = this.dfas; + const logging = this.logging; + const key = buildATNKey(rule, 'Alternation', prodOccurrence); + const decisionState = this.atn.decisionMap[key]; + const decisionIndex = decisionState.decision; + const partialAlts = (0,lodash_es_map/* default */.A)(getLookaheadPaths({ + maxLookahead: 1, + occurrence: prodOccurrence, + prodType: "Alternation", + rule: rule + }), (currAlt) => (0,lodash_es_map/* default */.A)(currAlt, (path) => path[0])); + if (isLL1Sequence(partialAlts, false) && !dynamicTokensEnabled) { + const choiceToAlt = (0,reduce/* default */.A)(partialAlts, (result, currAlt, idx) => { + (0,forEach/* default */.A)(currAlt, (currTokType) => { + if (currTokType) { + result[currTokType.tokenTypeIdx] = idx; + (0,forEach/* default */.A)(currTokType.categoryMatches, (currExtendingType) => { + result[currExtendingType] = idx; + }); + } + }); + return result; + }, {}); + if (hasPredicates) { + return function (orAlts) { + var _a; + const nextToken = this.LA(1); + const prediction = choiceToAlt[nextToken.tokenTypeIdx]; + if (orAlts !== undefined && prediction !== undefined) { + const gate = (_a = orAlts[prediction]) === null || _a === void 0 ? void 0 : _a.GATE; + if (gate !== undefined && gate.call(this) === false) { + return undefined; + } + } + return prediction; + }; + } + else { + return function () { + const nextToken = this.LA(1); + return choiceToAlt[nextToken.tokenTypeIdx]; + }; + } + } + else if (hasPredicates) { + return function (orAlts) { + const predicates = new PredicateSet(); + const length = orAlts === undefined ? 0 : orAlts.length; + for (let i = 0; i < length; i++) { + const gate = orAlts === null || orAlts === void 0 ? void 0 : orAlts[i].GATE; + predicates.set(i, gate === undefined || gate.call(this)); + } + const result = adaptivePredict.call(this, dfas, decisionIndex, predicates, logging); + return typeof result === 'number' ? result : undefined; + }; + } + else { + return function () { + const result = adaptivePredict.call(this, dfas, decisionIndex, EMPTY_PREDICATES, logging); + return typeof result === 'number' ? result : undefined; + }; + } + } + buildLookaheadForOptional(options) { + const { prodOccurrence, rule, prodType, dynamicTokensEnabled } = options; + const dfas = this.dfas; + const logging = this.logging; + const key = buildATNKey(rule, prodType, prodOccurrence); + const decisionState = this.atn.decisionMap[key]; + const decisionIndex = decisionState.decision; + const alts = (0,lodash_es_map/* default */.A)(getLookaheadPaths({ + maxLookahead: 1, + occurrence: prodOccurrence, + prodType, + rule + }), (e) => { + return (0,lodash_es_map/* default */.A)(e, (g) => g[0]); + }); + if (isLL1Sequence(alts) && alts[0][0] && !dynamicTokensEnabled) { + const alt = alts[0]; + const singleTokensTypes = (0,lodash_es_flatten/* default */.A)(alt); + if (singleTokensTypes.length === 1 && + (0,isEmpty/* default */.A)(singleTokensTypes[0].categoryMatches)) { + const expectedTokenType = singleTokensTypes[0]; + const expectedTokenUniqueKey = expectedTokenType.tokenTypeIdx; + return function () { + return this.LA(1).tokenTypeIdx === expectedTokenUniqueKey; + }; + } + else { + const choiceToAlt = (0,reduce/* default */.A)(singleTokensTypes, (result, currTokType) => { + if (currTokType !== undefined) { + result[currTokType.tokenTypeIdx] = true; + (0,forEach/* default */.A)(currTokType.categoryMatches, (currExtendingType) => { + result[currExtendingType] = true; + }); + } + return result; + }, {}); + return function () { + const nextToken = this.LA(1); + return choiceToAlt[nextToken.tokenTypeIdx] === true; + }; + } + } + return function () { + const result = adaptivePredict.call(this, dfas, decisionIndex, EMPTY_PREDICATES, logging); + return typeof result === "object" ? false : result === 0; + }; + } +} +function isLL1Sequence(sequences, allowEmpty = true) { + const fullSet = new Set(); + for (const alt of sequences) { + const altSet = new Set(); + for (const tokType of alt) { + if (tokType === undefined) { + if (allowEmpty) { + // Epsilon production encountered + break; + } + else { + return false; + } + } + const indices = [tokType.tokenTypeIdx].concat(tokType.categoryMatches); + for (const index of indices) { + if (fullSet.has(index)) { + if (!altSet.has(index)) { + return false; + } + } + else { + fullSet.add(index); + altSet.add(index); + } + } + } + } + return true; +} +function initATNSimulator(atn) { + const decisionLength = atn.decisionStates.length; + const decisionToDFA = Array(decisionLength); + for (let i = 0; i < decisionLength; i++) { + decisionToDFA[i] = createDFACache(atn.decisionStates[i], i); + } + return decisionToDFA; +} +function adaptivePredict(dfaCaches, decision, predicateSet, logging) { + const dfa = dfaCaches[decision](predicateSet); + let start = dfa.start; + if (start === undefined) { + const closure = computeStartState(dfa.atnStartState); + start = addDFAState(dfa, newDFAState(closure)); + dfa.start = start; + } + const alt = performLookahead.apply(this, [dfa, start, predicateSet, logging]); + return alt; +} +function performLookahead(dfa, s0, predicateSet, logging) { + let previousD = s0; + let i = 1; + const path = []; + let t = this.LA(i++); + while (true) { + let d = getExistingTargetState(previousD, t); + if (d === undefined) { + d = computeLookaheadTarget.apply(this, [dfa, previousD, t, i, predicateSet, logging]); + } + if (d === DFA_ERROR) { + return buildAdaptivePredictError(path, previousD, t); + } + if (d.isAcceptState === true) { + return d.prediction; + } + previousD = d; + path.push(t); + t = this.LA(i++); + } +} +function computeLookaheadTarget(dfa, previousD, token, lookahead, predicateSet, logging) { + const reach = computeReachSet(previousD.configs, token, predicateSet); + if (reach.size === 0) { + addDFAEdge(dfa, previousD, token, DFA_ERROR); + return DFA_ERROR; + } + let newState = newDFAState(reach); + const predictedAlt = getUniqueAlt(reach, predicateSet); + if (predictedAlt !== undefined) { + newState.isAcceptState = true; + newState.prediction = predictedAlt; + newState.configs.uniqueAlt = predictedAlt; + } + else if (hasConflictTerminatingPrediction(reach)) { + const prediction = (0,min/* default */.A)(reach.alts); + newState.isAcceptState = true; + newState.prediction = prediction; + newState.configs.uniqueAlt = prediction; + reportLookaheadAmbiguity.apply(this, [dfa, lookahead, reach.alts, logging]); + } + newState = addDFAEdge(dfa, previousD, token, newState); + return newState; +} +function reportLookaheadAmbiguity(dfa, lookahead, ambiguityIndices, logging) { + const prefixPath = []; + for (let i = 1; i <= lookahead; i++) { + prefixPath.push(this.LA(i).tokenType); + } + const atnState = dfa.atnStartState; + const topLevelRule = atnState.rule; + const production = atnState.production; + const message = buildAmbiguityError({ + topLevelRule, + ambiguityIndices, + production, + prefixPath + }); + logging(message); +} +function buildAmbiguityError(options) { + const pathMsg = (0,lodash_es_map/* default */.A)(options.prefixPath, (currtok) => tokens_public_tokenLabel(currtok)).join(", "); + const occurrence = options.production.idx === 0 ? "" : options.production.idx; + let currMessage = `Ambiguous Alternatives Detected: <${options.ambiguityIndices.join(", ")}> in <${all_star_lookahead_getProductionDslName(options.production)}${occurrence}>` + + ` inside <${options.topLevelRule.name}> Rule,\n` + + `<${pathMsg}> may appears as a prefix path in all these alternatives.\n`; + currMessage = + currMessage + + `See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES\n` + + `For Further details.`; + return currMessage; +} +function all_star_lookahead_getProductionDslName(prod) { + if (prod instanceof model_NonTerminal) { + return "SUBRULE"; + } + else if (prod instanceof Option) { + return "OPTION"; + } + else if (prod instanceof Alternation) { + return "OR"; + } + else if (prod instanceof RepetitionMandatory) { + return "AT_LEAST_ONE"; + } + else if (prod instanceof RepetitionMandatoryWithSeparator) { + return "AT_LEAST_ONE_SEP"; + } + else if (prod instanceof RepetitionWithSeparator) { + return "MANY_SEP"; + } + else if (prod instanceof Repetition) { + return "MANY"; + } + else if (prod instanceof Terminal) { + return "CONSUME"; + } + else { + throw Error("non exhaustive match"); + } +} +function buildAdaptivePredictError(path, previous, current) { + const nextTransitions = lodash_es_flatMap(previous.configs.elements, (e) => e.state.transitions); + const nextTokenTypes = lodash_es_uniqBy(nextTransitions + .filter((e) => e instanceof AtomTransition) + .map((e) => e.tokenType), (e) => e.tokenTypeIdx); + return { + actualToken: current, + possibleTokenTypes: nextTokenTypes, + tokenPath: path + }; +} +function getExistingTargetState(state, token) { + return state.edges[token.tokenTypeIdx]; +} +function computeReachSet(configs, token, predicateSet) { + const intermediate = new ATNConfigSet(); + const skippedStopStates = []; + for (const c of configs.elements) { + if (predicateSet.is(c.alt) === false) { + continue; + } + if (c.state.type === ATN_RULE_STOP) { + skippedStopStates.push(c); + continue; + } + const transitionLength = c.state.transitions.length; + for (let i = 0; i < transitionLength; i++) { + const transition = c.state.transitions[i]; + const target = getReachableTarget(transition, token); + if (target !== undefined) { + intermediate.add({ + state: target, + alt: c.alt, + stack: c.stack + }); + } + } + } + let reach; + if (skippedStopStates.length === 0 && intermediate.size === 1) { + reach = intermediate; + } + if (reach === undefined) { + reach = new ATNConfigSet(); + for (const c of intermediate.elements) { + closure(c, reach); + } + } + if (skippedStopStates.length > 0 && !hasConfigInRuleStopState(reach)) { + for (const c of skippedStopStates) { + reach.add(c); + } + } + return reach; +} +function getReachableTarget(transition, token) { + if (transition instanceof AtomTransition && + tokenMatcher(token, transition.tokenType)) { + return transition.target; + } + return undefined; +} +function getUniqueAlt(configs, predicateSet) { + let alt; + for (const c of configs.elements) { + if (predicateSet.is(c.alt) === true) { + if (alt === undefined) { + alt = c.alt; + } + else if (alt !== c.alt) { + return undefined; + } + } + } + return alt; +} +function newDFAState(closure) { + return { + configs: closure, + edges: {}, + isAcceptState: false, + prediction: -1 + }; +} +function addDFAEdge(dfa, from, token, to) { + to = addDFAState(dfa, to); + from.edges[token.tokenTypeIdx] = to; + return to; +} +function addDFAState(dfa, state) { + if (state === DFA_ERROR) { + return state; + } + // Repetitions have the same config set + // Therefore, storing the key of the config in a map allows us to create a loop in our DFA + const mapKey = state.configs.key; + const existing = dfa.states[mapKey]; + if (existing !== undefined) { + return existing; + } + state.configs.finalize(); + dfa.states[mapKey] = state; + return state; +} +function computeStartState(atnState) { + const configs = new ATNConfigSet(); + const numberOfTransitions = atnState.transitions.length; + for (let i = 0; i < numberOfTransitions; i++) { + const target = atnState.transitions[i].target; + const config = { + state: target, + alt: i, + stack: [] + }; + closure(config, configs); + } + return configs; +} +function closure(config, configs) { + const p = config.state; + if (p.type === ATN_RULE_STOP) { + if (config.stack.length > 0) { + const atnStack = [...config.stack]; + const followState = atnStack.pop(); + const followConfig = { + state: followState, + alt: config.alt, + stack: atnStack + }; + closure(followConfig, configs); + } + else { + // Dipping into outer context, simply add the config + // This will stop computation once every config is at the rule stop state + configs.add(config); + } + return; + } + if (!p.epsilonOnlyTransitions) { + configs.add(config); + } + const transitionLength = p.transitions.length; + for (let i = 0; i < transitionLength; i++) { + const transition = p.transitions[i]; + const c = getEpsilonTarget(config, transition); + if (c !== undefined) { + closure(c, configs); + } + } +} +function getEpsilonTarget(config, transition) { + if (transition instanceof EpsilonTransition) { + return { + state: transition.target, + alt: config.alt, + stack: config.stack + }; + } + else if (transition instanceof RuleTransition) { + const stack = [...config.stack, transition.followState]; + return { + state: transition.target, + alt: config.alt, + stack + }; + } + return undefined; +} +function hasConfigInRuleStopState(configs) { + for (const c of configs.elements) { + if (c.state.type === ATN_RULE_STOP) { + return true; + } + } + return false; +} +function allConfigsInRuleStopStates(configs) { + for (const c of configs.elements) { + if (c.state.type !== ATN_RULE_STOP) { + return false; + } + } + return true; +} +function hasConflictTerminatingPrediction(configs) { + if (allConfigsInRuleStopStates(configs)) { + return true; + } + const altSets = getConflictingAltSets(configs.elements); + const heuristic = hasConflictingAltSet(altSets) && !hasStateAssociatedWithOneAlt(altSets); + return heuristic; +} +function getConflictingAltSets(configs) { + const configToAlts = new Map(); + for (const c of configs) { + const key = getATNConfigKey(c, false); + let alts = configToAlts.get(key); + if (alts === undefined) { + alts = {}; + configToAlts.set(key, alts); + } + alts[c.alt] = true; + } + return configToAlts; +} +function hasConflictingAltSet(altSets) { + for (const value of Array.from(altSets.values())) { + if (Object.keys(value).length > 1) { + return true; + } + } + return false; +} +function hasStateAssociatedWithOneAlt(altSets) { + for (const value of Array.from(altSets.values())) { + if (Object.keys(value).length === 1) { + return true; + } + } + return false; +} +//# sourceMappingURL=all-star-lookahead.js.map +;// CONCATENATED MODULE: ./node_modules/chevrotain-allstar/lib/index.js +/****************************************************************************** + * Copyright 2022 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + +//# sourceMappingURL=index.js.map +;// CONCATENATED MODULE: ./node_modules/vscode-languageserver-types/lib/esm/main.js +/* -------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + * ------------------------------------------------------------------------------------------ */ + +var DocumentUri; +(function (DocumentUri) { + function is(value) { + return typeof value === 'string'; + } + DocumentUri.is = is; +})(DocumentUri || (DocumentUri = {})); +var URI; +(function (URI) { + function is(value) { + return typeof value === 'string'; + } + URI.is = is; +})(URI || (URI = {})); +var integer; +(function (integer) { + integer.MIN_VALUE = -2147483648; + integer.MAX_VALUE = 2147483647; + function is(value) { + return typeof value === 'number' && integer.MIN_VALUE <= value && value <= integer.MAX_VALUE; + } + integer.is = is; +})(integer || (integer = {})); +var uinteger; +(function (uinteger) { + uinteger.MIN_VALUE = 0; + uinteger.MAX_VALUE = 2147483647; + function is(value) { + return typeof value === 'number' && uinteger.MIN_VALUE <= value && value <= uinteger.MAX_VALUE; + } + uinteger.is = is; +})(uinteger || (uinteger = {})); +/** + * The Position namespace provides helper functions to work with + * {@link Position} literals. + */ +var Position; +(function (Position) { + /** + * Creates a new Position literal from the given line and character. + * @param line The position's line. + * @param character The position's character. + */ + function create(line, character) { + if (line === Number.MAX_VALUE) { + line = uinteger.MAX_VALUE; + } + if (character === Number.MAX_VALUE) { + character = uinteger.MAX_VALUE; + } + return { line, character }; + } + Position.create = create; + /** + * Checks whether the given literal conforms to the {@link Position} interface. + */ + function is(value) { + let candidate = value; + return Is.objectLiteral(candidate) && Is.uinteger(candidate.line) && Is.uinteger(candidate.character); + } + Position.is = is; +})(Position || (Position = {})); +/** + * The Range namespace provides helper functions to work with + * {@link Range} literals. + */ +var Range; +(function (Range) { + function create(one, two, three, four) { + if (Is.uinteger(one) && Is.uinteger(two) && Is.uinteger(three) && Is.uinteger(four)) { + return { start: Position.create(one, two), end: Position.create(three, four) }; + } + else if (Position.is(one) && Position.is(two)) { + return { start: one, end: two }; + } + else { + throw new Error(`Range#create called with invalid arguments[${one}, ${two}, ${three}, ${four}]`); + } + } + Range.create = create; + /** + * Checks whether the given literal conforms to the {@link Range} interface. + */ + function is(value) { + let candidate = value; + return Is.objectLiteral(candidate) && Position.is(candidate.start) && Position.is(candidate.end); + } + Range.is = is; +})(Range || (Range = {})); +/** + * The Location namespace provides helper functions to work with + * {@link Location} literals. + */ +var Location; +(function (Location) { + /** + * Creates a Location literal. + * @param uri The location's uri. + * @param range The location's range. + */ + function create(uri, range) { + return { uri, range }; + } + Location.create = create; + /** + * Checks whether the given literal conforms to the {@link Location} interface. + */ + function is(value) { + let candidate = value; + return Is.objectLiteral(candidate) && Range.is(candidate.range) && (Is.string(candidate.uri) || Is.undefined(candidate.uri)); + } + Location.is = is; +})(Location || (Location = {})); +/** + * The LocationLink namespace provides helper functions to work with + * {@link LocationLink} literals. + */ +var LocationLink; +(function (LocationLink) { + /** + * Creates a LocationLink literal. + * @param targetUri The definition's uri. + * @param targetRange The full range of the definition. + * @param targetSelectionRange The span of the symbol definition at the target. + * @param originSelectionRange The span of the symbol being defined in the originating source file. + */ + function create(targetUri, targetRange, targetSelectionRange, originSelectionRange) { + return { targetUri, targetRange, targetSelectionRange, originSelectionRange }; + } + LocationLink.create = create; + /** + * Checks whether the given literal conforms to the {@link LocationLink} interface. + */ + function is(value) { + let candidate = value; + return Is.objectLiteral(candidate) && Range.is(candidate.targetRange) && Is.string(candidate.targetUri) + && Range.is(candidate.targetSelectionRange) + && (Range.is(candidate.originSelectionRange) || Is.undefined(candidate.originSelectionRange)); + } + LocationLink.is = is; +})(LocationLink || (LocationLink = {})); +/** + * The Color namespace provides helper functions to work with + * {@link Color} literals. + */ +var Color; +(function (Color) { + /** + * Creates a new Color literal. + */ + function create(red, green, blue, alpha) { + return { + red, + green, + blue, + alpha, + }; + } + Color.create = create; + /** + * Checks whether the given literal conforms to the {@link Color} interface. + */ + function is(value) { + const candidate = value; + return Is.objectLiteral(candidate) && Is.numberRange(candidate.red, 0, 1) + && Is.numberRange(candidate.green, 0, 1) + && Is.numberRange(candidate.blue, 0, 1) + && Is.numberRange(candidate.alpha, 0, 1); + } + Color.is = is; +})(Color || (Color = {})); +/** + * The ColorInformation namespace provides helper functions to work with + * {@link ColorInformation} literals. + */ +var ColorInformation; +(function (ColorInformation) { + /** + * Creates a new ColorInformation literal. + */ + function create(range, color) { + return { + range, + color, + }; + } + ColorInformation.create = create; + /** + * Checks whether the given literal conforms to the {@link ColorInformation} interface. + */ + function is(value) { + const candidate = value; + return Is.objectLiteral(candidate) && Range.is(candidate.range) && Color.is(candidate.color); + } + ColorInformation.is = is; +})(ColorInformation || (ColorInformation = {})); +/** + * The Color namespace provides helper functions to work with + * {@link ColorPresentation} literals. + */ +var ColorPresentation; +(function (ColorPresentation) { + /** + * Creates a new ColorInformation literal. + */ + function create(label, textEdit, additionalTextEdits) { + return { + label, + textEdit, + additionalTextEdits, + }; + } + ColorPresentation.create = create; + /** + * Checks whether the given literal conforms to the {@link ColorInformation} interface. + */ + function is(value) { + const candidate = value; + return Is.objectLiteral(candidate) && Is.string(candidate.label) + && (Is.undefined(candidate.textEdit) || TextEdit.is(candidate)) + && (Is.undefined(candidate.additionalTextEdits) || Is.typedArray(candidate.additionalTextEdits, TextEdit.is)); + } + ColorPresentation.is = is; +})(ColorPresentation || (ColorPresentation = {})); +/** + * A set of predefined range kinds. + */ +var FoldingRangeKind; +(function (FoldingRangeKind) { + /** + * Folding range for a comment + */ + FoldingRangeKind.Comment = 'comment'; + /** + * Folding range for an import or include + */ + FoldingRangeKind.Imports = 'imports'; + /** + * Folding range for a region (e.g. `#region`) + */ + FoldingRangeKind.Region = 'region'; +})(FoldingRangeKind || (FoldingRangeKind = {})); +/** + * The folding range namespace provides helper functions to work with + * {@link FoldingRange} literals. + */ +var FoldingRange; +(function (FoldingRange) { + /** + * Creates a new FoldingRange literal. + */ + function create(startLine, endLine, startCharacter, endCharacter, kind, collapsedText) { + const result = { + startLine, + endLine + }; + if (Is.defined(startCharacter)) { + result.startCharacter = startCharacter; + } + if (Is.defined(endCharacter)) { + result.endCharacter = endCharacter; + } + if (Is.defined(kind)) { + result.kind = kind; + } + if (Is.defined(collapsedText)) { + result.collapsedText = collapsedText; + } + return result; + } + FoldingRange.create = create; + /** + * Checks whether the given literal conforms to the {@link FoldingRange} interface. + */ + function is(value) { + const candidate = value; + return Is.objectLiteral(candidate) && Is.uinteger(candidate.startLine) && Is.uinteger(candidate.startLine) + && (Is.undefined(candidate.startCharacter) || Is.uinteger(candidate.startCharacter)) + && (Is.undefined(candidate.endCharacter) || Is.uinteger(candidate.endCharacter)) + && (Is.undefined(candidate.kind) || Is.string(candidate.kind)); + } + FoldingRange.is = is; +})(FoldingRange || (FoldingRange = {})); +/** + * The DiagnosticRelatedInformation namespace provides helper functions to work with + * {@link DiagnosticRelatedInformation} literals. + */ +var DiagnosticRelatedInformation; +(function (DiagnosticRelatedInformation) { + /** + * Creates a new DiagnosticRelatedInformation literal. + */ + function create(location, message) { + return { + location, + message + }; + } + DiagnosticRelatedInformation.create = create; + /** + * Checks whether the given literal conforms to the {@link DiagnosticRelatedInformation} interface. + */ + function is(value) { + let candidate = value; + return Is.defined(candidate) && Location.is(candidate.location) && Is.string(candidate.message); + } + DiagnosticRelatedInformation.is = is; +})(DiagnosticRelatedInformation || (DiagnosticRelatedInformation = {})); +/** + * The diagnostic's severity. + */ +var DiagnosticSeverity; +(function (DiagnosticSeverity) { + /** + * Reports an error. + */ + DiagnosticSeverity.Error = 1; + /** + * Reports a warning. + */ + DiagnosticSeverity.Warning = 2; + /** + * Reports an information. + */ + DiagnosticSeverity.Information = 3; + /** + * Reports a hint. + */ + DiagnosticSeverity.Hint = 4; +})(DiagnosticSeverity || (DiagnosticSeverity = {})); +/** + * The diagnostic tags. + * + * @since 3.15.0 + */ +var DiagnosticTag; +(function (DiagnosticTag) { + /** + * Unused or unnecessary code. + * + * Clients are allowed to render diagnostics with this tag faded out instead of having + * an error squiggle. + */ + DiagnosticTag.Unnecessary = 1; + /** + * Deprecated or obsolete code. + * + * Clients are allowed to rendered diagnostics with this tag strike through. + */ + DiagnosticTag.Deprecated = 2; +})(DiagnosticTag || (DiagnosticTag = {})); +/** + * The CodeDescription namespace provides functions to deal with descriptions for diagnostic codes. + * + * @since 3.16.0 + */ +var CodeDescription; +(function (CodeDescription) { + function is(value) { + const candidate = value; + return Is.objectLiteral(candidate) && Is.string(candidate.href); + } + CodeDescription.is = is; +})(CodeDescription || (CodeDescription = {})); +/** + * The Diagnostic namespace provides helper functions to work with + * {@link Diagnostic} literals. + */ +var Diagnostic; +(function (Diagnostic) { + /** + * Creates a new Diagnostic literal. + */ + function create(range, message, severity, code, source, relatedInformation) { + let result = { range, message }; + if (Is.defined(severity)) { + result.severity = severity; + } + if (Is.defined(code)) { + result.code = code; + } + if (Is.defined(source)) { + result.source = source; + } + if (Is.defined(relatedInformation)) { + result.relatedInformation = relatedInformation; + } + return result; + } + Diagnostic.create = create; + /** + * Checks whether the given literal conforms to the {@link Diagnostic} interface. + */ + function is(value) { + var _a; + let candidate = value; + return Is.defined(candidate) + && Range.is(candidate.range) + && Is.string(candidate.message) + && (Is.number(candidate.severity) || Is.undefined(candidate.severity)) + && (Is.integer(candidate.code) || Is.string(candidate.code) || Is.undefined(candidate.code)) + && (Is.undefined(candidate.codeDescription) || (Is.string((_a = candidate.codeDescription) === null || _a === void 0 ? void 0 : _a.href))) + && (Is.string(candidate.source) || Is.undefined(candidate.source)) + && (Is.undefined(candidate.relatedInformation) || Is.typedArray(candidate.relatedInformation, DiagnosticRelatedInformation.is)); + } + Diagnostic.is = is; +})(Diagnostic || (Diagnostic = {})); +/** + * The Command namespace provides helper functions to work with + * {@link Command} literals. + */ +var Command; +(function (Command) { + /** + * Creates a new Command literal. + */ + function create(title, command, ...args) { + let result = { title, command }; + if (Is.defined(args) && args.length > 0) { + result.arguments = args; + } + return result; + } + Command.create = create; + /** + * Checks whether the given literal conforms to the {@link Command} interface. + */ + function is(value) { + let candidate = value; + return Is.defined(candidate) && Is.string(candidate.title) && Is.string(candidate.command); + } + Command.is = is; +})(Command || (Command = {})); +/** + * The TextEdit namespace provides helper function to create replace, + * insert and delete edits more easily. + */ +var TextEdit; +(function (TextEdit) { + /** + * Creates a replace text edit. + * @param range The range of text to be replaced. + * @param newText The new text. + */ + function replace(range, newText) { + return { range, newText }; + } + TextEdit.replace = replace; + /** + * Creates an insert text edit. + * @param position The position to insert the text at. + * @param newText The text to be inserted. + */ + function insert(position, newText) { + return { range: { start: position, end: position }, newText }; + } + TextEdit.insert = insert; + /** + * Creates a delete text edit. + * @param range The range of text to be deleted. + */ + function del(range) { + return { range, newText: '' }; + } + TextEdit.del = del; + function is(value) { + const candidate = value; + return Is.objectLiteral(candidate) + && Is.string(candidate.newText) + && Range.is(candidate.range); + } + TextEdit.is = is; +})(TextEdit || (TextEdit = {})); +var ChangeAnnotation; +(function (ChangeAnnotation) { + function create(label, needsConfirmation, description) { + const result = { label }; + if (needsConfirmation !== undefined) { + result.needsConfirmation = needsConfirmation; + } + if (description !== undefined) { + result.description = description; + } + return result; + } + ChangeAnnotation.create = create; + function is(value) { + const candidate = value; + return Is.objectLiteral(candidate) && Is.string(candidate.label) && + (Is.boolean(candidate.needsConfirmation) || candidate.needsConfirmation === undefined) && + (Is.string(candidate.description) || candidate.description === undefined); + } + ChangeAnnotation.is = is; +})(ChangeAnnotation || (ChangeAnnotation = {})); +var ChangeAnnotationIdentifier; +(function (ChangeAnnotationIdentifier) { + function is(value) { + const candidate = value; + return Is.string(candidate); + } + ChangeAnnotationIdentifier.is = is; +})(ChangeAnnotationIdentifier || (ChangeAnnotationIdentifier = {})); +var AnnotatedTextEdit; +(function (AnnotatedTextEdit) { + /** + * Creates an annotated replace text edit. + * + * @param range The range of text to be replaced. + * @param newText The new text. + * @param annotation The annotation. + */ + function replace(range, newText, annotation) { + return { range, newText, annotationId: annotation }; + } + AnnotatedTextEdit.replace = replace; + /** + * Creates an annotated insert text edit. + * + * @param position The position to insert the text at. + * @param newText The text to be inserted. + * @param annotation The annotation. + */ + function insert(position, newText, annotation) { + return { range: { start: position, end: position }, newText, annotationId: annotation }; + } + AnnotatedTextEdit.insert = insert; + /** + * Creates an annotated delete text edit. + * + * @param range The range of text to be deleted. + * @param annotation The annotation. + */ + function del(range, annotation) { + return { range, newText: '', annotationId: annotation }; + } + AnnotatedTextEdit.del = del; + function is(value) { + const candidate = value; + return TextEdit.is(candidate) && (ChangeAnnotation.is(candidate.annotationId) || ChangeAnnotationIdentifier.is(candidate.annotationId)); + } + AnnotatedTextEdit.is = is; +})(AnnotatedTextEdit || (AnnotatedTextEdit = {})); +/** + * The TextDocumentEdit namespace provides helper function to create + * an edit that manipulates a text document. + */ +var TextDocumentEdit; +(function (TextDocumentEdit) { + /** + * Creates a new `TextDocumentEdit` + */ + function create(textDocument, edits) { + return { textDocument, edits }; + } + TextDocumentEdit.create = create; + function is(value) { + let candidate = value; + return Is.defined(candidate) + && OptionalVersionedTextDocumentIdentifier.is(candidate.textDocument) + && Array.isArray(candidate.edits); + } + TextDocumentEdit.is = is; +})(TextDocumentEdit || (TextDocumentEdit = {})); +var CreateFile; +(function (CreateFile) { + function create(uri, options, annotation) { + let result = { + kind: 'create', + uri + }; + if (options !== undefined && (options.overwrite !== undefined || options.ignoreIfExists !== undefined)) { + result.options = options; + } + if (annotation !== undefined) { + result.annotationId = annotation; + } + return result; + } + CreateFile.create = create; + function is(value) { + let candidate = value; + return candidate && candidate.kind === 'create' && Is.string(candidate.uri) && (candidate.options === undefined || + ((candidate.options.overwrite === undefined || Is.boolean(candidate.options.overwrite)) && (candidate.options.ignoreIfExists === undefined || Is.boolean(candidate.options.ignoreIfExists)))) && (candidate.annotationId === undefined || ChangeAnnotationIdentifier.is(candidate.annotationId)); + } + CreateFile.is = is; +})(CreateFile || (CreateFile = {})); +var RenameFile; +(function (RenameFile) { + function create(oldUri, newUri, options, annotation) { + let result = { + kind: 'rename', + oldUri, + newUri + }; + if (options !== undefined && (options.overwrite !== undefined || options.ignoreIfExists !== undefined)) { + result.options = options; + } + if (annotation !== undefined) { + result.annotationId = annotation; + } + return result; + } + RenameFile.create = create; + function is(value) { + let candidate = value; + return candidate && candidate.kind === 'rename' && Is.string(candidate.oldUri) && Is.string(candidate.newUri) && (candidate.options === undefined || + ((candidate.options.overwrite === undefined || Is.boolean(candidate.options.overwrite)) && (candidate.options.ignoreIfExists === undefined || Is.boolean(candidate.options.ignoreIfExists)))) && (candidate.annotationId === undefined || ChangeAnnotationIdentifier.is(candidate.annotationId)); + } + RenameFile.is = is; +})(RenameFile || (RenameFile = {})); +var DeleteFile; +(function (DeleteFile) { + function create(uri, options, annotation) { + let result = { + kind: 'delete', + uri + }; + if (options !== undefined && (options.recursive !== undefined || options.ignoreIfNotExists !== undefined)) { + result.options = options; + } + if (annotation !== undefined) { + result.annotationId = annotation; + } + return result; + } + DeleteFile.create = create; + function is(value) { + let candidate = value; + return candidate && candidate.kind === 'delete' && Is.string(candidate.uri) && (candidate.options === undefined || + ((candidate.options.recursive === undefined || Is.boolean(candidate.options.recursive)) && (candidate.options.ignoreIfNotExists === undefined || Is.boolean(candidate.options.ignoreIfNotExists)))) && (candidate.annotationId === undefined || ChangeAnnotationIdentifier.is(candidate.annotationId)); + } + DeleteFile.is = is; +})(DeleteFile || (DeleteFile = {})); +var WorkspaceEdit; +(function (WorkspaceEdit) { + function is(value) { + let candidate = value; + return candidate && + (candidate.changes !== undefined || candidate.documentChanges !== undefined) && + (candidate.documentChanges === undefined || candidate.documentChanges.every((change) => { + if (Is.string(change.kind)) { + return CreateFile.is(change) || RenameFile.is(change) || DeleteFile.is(change); + } + else { + return TextDocumentEdit.is(change); + } + })); + } + WorkspaceEdit.is = is; +})(WorkspaceEdit || (WorkspaceEdit = {})); +class TextEditChangeImpl { + constructor(edits, changeAnnotations) { + this.edits = edits; + this.changeAnnotations = changeAnnotations; + } + insert(position, newText, annotation) { + let edit; + let id; + if (annotation === undefined) { + edit = TextEdit.insert(position, newText); + } + else if (ChangeAnnotationIdentifier.is(annotation)) { + id = annotation; + edit = AnnotatedTextEdit.insert(position, newText, annotation); + } + else { + this.assertChangeAnnotations(this.changeAnnotations); + id = this.changeAnnotations.manage(annotation); + edit = AnnotatedTextEdit.insert(position, newText, id); + } + this.edits.push(edit); + if (id !== undefined) { + return id; + } + } + replace(range, newText, annotation) { + let edit; + let id; + if (annotation === undefined) { + edit = TextEdit.replace(range, newText); + } + else if (ChangeAnnotationIdentifier.is(annotation)) { + id = annotation; + edit = AnnotatedTextEdit.replace(range, newText, annotation); + } + else { + this.assertChangeAnnotations(this.changeAnnotations); + id = this.changeAnnotations.manage(annotation); + edit = AnnotatedTextEdit.replace(range, newText, id); + } + this.edits.push(edit); + if (id !== undefined) { + return id; + } + } + delete(range, annotation) { + let edit; + let id; + if (annotation === undefined) { + edit = TextEdit.del(range); + } + else if (ChangeAnnotationIdentifier.is(annotation)) { + id = annotation; + edit = AnnotatedTextEdit.del(range, annotation); + } + else { + this.assertChangeAnnotations(this.changeAnnotations); + id = this.changeAnnotations.manage(annotation); + edit = AnnotatedTextEdit.del(range, id); + } + this.edits.push(edit); + if (id !== undefined) { + return id; + } + } + add(edit) { + this.edits.push(edit); + } + all() { + return this.edits; + } + clear() { + this.edits.splice(0, this.edits.length); + } + assertChangeAnnotations(value) { + if (value === undefined) { + throw new Error(`Text edit change is not configured to manage change annotations.`); + } + } +} +/** + * A helper class + */ +class ChangeAnnotations { + constructor(annotations) { + this._annotations = annotations === undefined ? Object.create(null) : annotations; + this._counter = 0; + this._size = 0; + } + all() { + return this._annotations; + } + get size() { + return this._size; + } + manage(idOrAnnotation, annotation) { + let id; + if (ChangeAnnotationIdentifier.is(idOrAnnotation)) { + id = idOrAnnotation; + } + else { + id = this.nextId(); + annotation = idOrAnnotation; + } + if (this._annotations[id] !== undefined) { + throw new Error(`Id ${id} is already in use.`); + } + if (annotation === undefined) { + throw new Error(`No annotation provided for id ${id}`); + } + this._annotations[id] = annotation; + this._size++; + return id; + } + nextId() { + this._counter++; + return this._counter.toString(); + } +} +/** + * A workspace change helps constructing changes to a workspace. + */ +class WorkspaceChange { + constructor(workspaceEdit) { + this._textEditChanges = Object.create(null); + if (workspaceEdit !== undefined) { + this._workspaceEdit = workspaceEdit; + if (workspaceEdit.documentChanges) { + this._changeAnnotations = new ChangeAnnotations(workspaceEdit.changeAnnotations); + workspaceEdit.changeAnnotations = this._changeAnnotations.all(); + workspaceEdit.documentChanges.forEach((change) => { + if (TextDocumentEdit.is(change)) { + const textEditChange = new TextEditChangeImpl(change.edits, this._changeAnnotations); + this._textEditChanges[change.textDocument.uri] = textEditChange; + } + }); + } + else if (workspaceEdit.changes) { + Object.keys(workspaceEdit.changes).forEach((key) => { + const textEditChange = new TextEditChangeImpl(workspaceEdit.changes[key]); + this._textEditChanges[key] = textEditChange; + }); + } + } + else { + this._workspaceEdit = {}; + } + } + /** + * Returns the underlying {@link WorkspaceEdit} literal + * use to be returned from a workspace edit operation like rename. + */ + get edit() { + this.initDocumentChanges(); + if (this._changeAnnotations !== undefined) { + if (this._changeAnnotations.size === 0) { + this._workspaceEdit.changeAnnotations = undefined; + } + else { + this._workspaceEdit.changeAnnotations = this._changeAnnotations.all(); + } + } + return this._workspaceEdit; + } + getTextEditChange(key) { + if (OptionalVersionedTextDocumentIdentifier.is(key)) { + this.initDocumentChanges(); + if (this._workspaceEdit.documentChanges === undefined) { + throw new Error('Workspace edit is not configured for document changes.'); + } + const textDocument = { uri: key.uri, version: key.version }; + let result = this._textEditChanges[textDocument.uri]; + if (!result) { + const edits = []; + const textDocumentEdit = { + textDocument, + edits + }; + this._workspaceEdit.documentChanges.push(textDocumentEdit); + result = new TextEditChangeImpl(edits, this._changeAnnotations); + this._textEditChanges[textDocument.uri] = result; + } + return result; + } + else { + this.initChanges(); + if (this._workspaceEdit.changes === undefined) { + throw new Error('Workspace edit is not configured for normal text edit changes.'); + } + let result = this._textEditChanges[key]; + if (!result) { + let edits = []; + this._workspaceEdit.changes[key] = edits; + result = new TextEditChangeImpl(edits); + this._textEditChanges[key] = result; + } + return result; + } + } + initDocumentChanges() { + if (this._workspaceEdit.documentChanges === undefined && this._workspaceEdit.changes === undefined) { + this._changeAnnotations = new ChangeAnnotations(); + this._workspaceEdit.documentChanges = []; + this._workspaceEdit.changeAnnotations = this._changeAnnotations.all(); + } + } + initChanges() { + if (this._workspaceEdit.documentChanges === undefined && this._workspaceEdit.changes === undefined) { + this._workspaceEdit.changes = Object.create(null); + } + } + createFile(uri, optionsOrAnnotation, options) { + this.initDocumentChanges(); + if (this._workspaceEdit.documentChanges === undefined) { + throw new Error('Workspace edit is not configured for document changes.'); + } + let annotation; + if (ChangeAnnotation.is(optionsOrAnnotation) || ChangeAnnotationIdentifier.is(optionsOrAnnotation)) { + annotation = optionsOrAnnotation; + } + else { + options = optionsOrAnnotation; + } + let operation; + let id; + if (annotation === undefined) { + operation = CreateFile.create(uri, options); + } + else { + id = ChangeAnnotationIdentifier.is(annotation) ? annotation : this._changeAnnotations.manage(annotation); + operation = CreateFile.create(uri, options, id); + } + this._workspaceEdit.documentChanges.push(operation); + if (id !== undefined) { + return id; + } + } + renameFile(oldUri, newUri, optionsOrAnnotation, options) { + this.initDocumentChanges(); + if (this._workspaceEdit.documentChanges === undefined) { + throw new Error('Workspace edit is not configured for document changes.'); + } + let annotation; + if (ChangeAnnotation.is(optionsOrAnnotation) || ChangeAnnotationIdentifier.is(optionsOrAnnotation)) { + annotation = optionsOrAnnotation; + } + else { + options = optionsOrAnnotation; + } + let operation; + let id; + if (annotation === undefined) { + operation = RenameFile.create(oldUri, newUri, options); + } + else { + id = ChangeAnnotationIdentifier.is(annotation) ? annotation : this._changeAnnotations.manage(annotation); + operation = RenameFile.create(oldUri, newUri, options, id); + } + this._workspaceEdit.documentChanges.push(operation); + if (id !== undefined) { + return id; + } + } + deleteFile(uri, optionsOrAnnotation, options) { + this.initDocumentChanges(); + if (this._workspaceEdit.documentChanges === undefined) { + throw new Error('Workspace edit is not configured for document changes.'); + } + let annotation; + if (ChangeAnnotation.is(optionsOrAnnotation) || ChangeAnnotationIdentifier.is(optionsOrAnnotation)) { + annotation = optionsOrAnnotation; + } + else { + options = optionsOrAnnotation; + } + let operation; + let id; + if (annotation === undefined) { + operation = DeleteFile.create(uri, options); + } + else { + id = ChangeAnnotationIdentifier.is(annotation) ? annotation : this._changeAnnotations.manage(annotation); + operation = DeleteFile.create(uri, options, id); + } + this._workspaceEdit.documentChanges.push(operation); + if (id !== undefined) { + return id; + } + } +} +/** + * The TextDocumentIdentifier namespace provides helper functions to work with + * {@link TextDocumentIdentifier} literals. + */ +var TextDocumentIdentifier; +(function (TextDocumentIdentifier) { + /** + * Creates a new TextDocumentIdentifier literal. + * @param uri The document's uri. + */ + function create(uri) { + return { uri }; + } + TextDocumentIdentifier.create = create; + /** + * Checks whether the given literal conforms to the {@link TextDocumentIdentifier} interface. + */ + function is(value) { + let candidate = value; + return Is.defined(candidate) && Is.string(candidate.uri); + } + TextDocumentIdentifier.is = is; +})(TextDocumentIdentifier || (TextDocumentIdentifier = {})); +/** + * The VersionedTextDocumentIdentifier namespace provides helper functions to work with + * {@link VersionedTextDocumentIdentifier} literals. + */ +var VersionedTextDocumentIdentifier; +(function (VersionedTextDocumentIdentifier) { + /** + * Creates a new VersionedTextDocumentIdentifier literal. + * @param uri The document's uri. + * @param version The document's version. + */ + function create(uri, version) { + return { uri, version }; + } + VersionedTextDocumentIdentifier.create = create; + /** + * Checks whether the given literal conforms to the {@link VersionedTextDocumentIdentifier} interface. + */ + function is(value) { + let candidate = value; + return Is.defined(candidate) && Is.string(candidate.uri) && Is.integer(candidate.version); + } + VersionedTextDocumentIdentifier.is = is; +})(VersionedTextDocumentIdentifier || (VersionedTextDocumentIdentifier = {})); +/** + * The OptionalVersionedTextDocumentIdentifier namespace provides helper functions to work with + * {@link OptionalVersionedTextDocumentIdentifier} literals. + */ +var OptionalVersionedTextDocumentIdentifier; +(function (OptionalVersionedTextDocumentIdentifier) { + /** + * Creates a new OptionalVersionedTextDocumentIdentifier literal. + * @param uri The document's uri. + * @param version The document's version. + */ + function create(uri, version) { + return { uri, version }; + } + OptionalVersionedTextDocumentIdentifier.create = create; + /** + * Checks whether the given literal conforms to the {@link OptionalVersionedTextDocumentIdentifier} interface. + */ + function is(value) { + let candidate = value; + return Is.defined(candidate) && Is.string(candidate.uri) && (candidate.version === null || Is.integer(candidate.version)); + } + OptionalVersionedTextDocumentIdentifier.is = is; +})(OptionalVersionedTextDocumentIdentifier || (OptionalVersionedTextDocumentIdentifier = {})); +/** + * The TextDocumentItem namespace provides helper functions to work with + * {@link TextDocumentItem} literals. + */ +var TextDocumentItem; +(function (TextDocumentItem) { + /** + * Creates a new TextDocumentItem literal. + * @param uri The document's uri. + * @param languageId The document's language identifier. + * @param version The document's version number. + * @param text The document's text. + */ + function create(uri, languageId, version, text) { + return { uri, languageId, version, text }; + } + TextDocumentItem.create = create; + /** + * Checks whether the given literal conforms to the {@link TextDocumentItem} interface. + */ + function is(value) { + let candidate = value; + return Is.defined(candidate) && Is.string(candidate.uri) && Is.string(candidate.languageId) && Is.integer(candidate.version) && Is.string(candidate.text); + } + TextDocumentItem.is = is; +})(TextDocumentItem || (TextDocumentItem = {})); +/** + * Describes the content type that a client supports in various + * result literals like `Hover`, `ParameterInfo` or `CompletionItem`. + * + * Please note that `MarkupKinds` must not start with a `$`. This kinds + * are reserved for internal usage. + */ +var MarkupKind; +(function (MarkupKind) { + /** + * Plain text is supported as a content format + */ + MarkupKind.PlainText = 'plaintext'; + /** + * Markdown is supported as a content format + */ + MarkupKind.Markdown = 'markdown'; + /** + * Checks whether the given value is a value of the {@link MarkupKind} type. + */ + function is(value) { + const candidate = value; + return candidate === MarkupKind.PlainText || candidate === MarkupKind.Markdown; + } + MarkupKind.is = is; +})(MarkupKind || (MarkupKind = {})); +var MarkupContent; +(function (MarkupContent) { + /** + * Checks whether the given value conforms to the {@link MarkupContent} interface. + */ + function is(value) { + const candidate = value; + return Is.objectLiteral(value) && MarkupKind.is(candidate.kind) && Is.string(candidate.value); + } + MarkupContent.is = is; +})(MarkupContent || (MarkupContent = {})); +/** + * The kind of a completion entry. + */ +var CompletionItemKind; +(function (CompletionItemKind) { + CompletionItemKind.Text = 1; + CompletionItemKind.Method = 2; + CompletionItemKind.Function = 3; + CompletionItemKind.Constructor = 4; + CompletionItemKind.Field = 5; + CompletionItemKind.Variable = 6; + CompletionItemKind.Class = 7; + CompletionItemKind.Interface = 8; + CompletionItemKind.Module = 9; + CompletionItemKind.Property = 10; + CompletionItemKind.Unit = 11; + CompletionItemKind.Value = 12; + CompletionItemKind.Enum = 13; + CompletionItemKind.Keyword = 14; + CompletionItemKind.Snippet = 15; + CompletionItemKind.Color = 16; + CompletionItemKind.File = 17; + CompletionItemKind.Reference = 18; + CompletionItemKind.Folder = 19; + CompletionItemKind.EnumMember = 20; + CompletionItemKind.Constant = 21; + CompletionItemKind.Struct = 22; + CompletionItemKind.Event = 23; + CompletionItemKind.Operator = 24; + CompletionItemKind.TypeParameter = 25; +})(CompletionItemKind || (CompletionItemKind = {})); +/** + * Defines whether the insert text in a completion item should be interpreted as + * plain text or a snippet. + */ +var InsertTextFormat; +(function (InsertTextFormat) { + /** + * The primary text to be inserted is treated as a plain string. + */ + InsertTextFormat.PlainText = 1; + /** + * The primary text to be inserted is treated as a snippet. + * + * A snippet can define tab stops and placeholders with `$1`, `$2` + * and `${3:foo}`. `$0` defines the final tab stop, it defaults to + * the end of the snippet. Placeholders with equal identifiers are linked, + * that is typing in one will update others too. + * + * See also: https://microsoft.github.io/language-server-protocol/specifications/specification-current/#snippet_syntax + */ + InsertTextFormat.Snippet = 2; +})(InsertTextFormat || (InsertTextFormat = {})); +/** + * Completion item tags are extra annotations that tweak the rendering of a completion + * item. + * + * @since 3.15.0 + */ +var CompletionItemTag; +(function (CompletionItemTag) { + /** + * Render a completion as obsolete, usually using a strike-out. + */ + CompletionItemTag.Deprecated = 1; +})(CompletionItemTag || (CompletionItemTag = {})); +/** + * The InsertReplaceEdit namespace provides functions to deal with insert / replace edits. + * + * @since 3.16.0 + */ +var InsertReplaceEdit; +(function (InsertReplaceEdit) { + /** + * Creates a new insert / replace edit + */ + function create(newText, insert, replace) { + return { newText, insert, replace }; + } + InsertReplaceEdit.create = create; + /** + * Checks whether the given literal conforms to the {@link InsertReplaceEdit} interface. + */ + function is(value) { + const candidate = value; + return candidate && Is.string(candidate.newText) && Range.is(candidate.insert) && Range.is(candidate.replace); + } + InsertReplaceEdit.is = is; +})(InsertReplaceEdit || (InsertReplaceEdit = {})); +/** + * How whitespace and indentation is handled during completion + * item insertion. + * + * @since 3.16.0 + */ +var InsertTextMode; +(function (InsertTextMode) { + /** + * The insertion or replace strings is taken as it is. If the + * value is multi line the lines below the cursor will be + * inserted using the indentation defined in the string value. + * The client will not apply any kind of adjustments to the + * string. + */ + InsertTextMode.asIs = 1; + /** + * The editor adjusts leading whitespace of new lines so that + * they match the indentation up to the cursor of the line for + * which the item is accepted. + * + * Consider a line like this: <2tabs><cursor><3tabs>foo. Accepting a + * multi line completion item is indented using 2 tabs and all + * following lines inserted will be indented using 2 tabs as well. + */ + InsertTextMode.adjustIndentation = 2; +})(InsertTextMode || (InsertTextMode = {})); +var CompletionItemLabelDetails; +(function (CompletionItemLabelDetails) { + function is(value) { + const candidate = value; + return candidate && (Is.string(candidate.detail) || candidate.detail === undefined) && + (Is.string(candidate.description) || candidate.description === undefined); + } + CompletionItemLabelDetails.is = is; +})(CompletionItemLabelDetails || (CompletionItemLabelDetails = {})); +/** + * The CompletionItem namespace provides functions to deal with + * completion items. + */ +var CompletionItem; +(function (CompletionItem) { + /** + * Create a completion item and seed it with a label. + * @param label The completion item's label + */ + function create(label) { + return { label }; + } + CompletionItem.create = create; +})(CompletionItem || (CompletionItem = {})); +/** + * The CompletionList namespace provides functions to deal with + * completion lists. + */ +var CompletionList; +(function (CompletionList) { + /** + * Creates a new completion list. + * + * @param items The completion items. + * @param isIncomplete The list is not complete. + */ + function create(items, isIncomplete) { + return { items: items ? items : [], isIncomplete: !!isIncomplete }; + } + CompletionList.create = create; +})(CompletionList || (CompletionList = {})); +var MarkedString; +(function (MarkedString) { + /** + * Creates a marked string from plain text. + * + * @param plainText The plain text. + */ + function fromPlainText(plainText) { + return plainText.replace(/[\\`*_{}[\]()#+\-.!]/g, '\\$&'); // escape markdown syntax tokens: http://daringfireball.net/projects/markdown/syntax#backslash + } + MarkedString.fromPlainText = fromPlainText; + /** + * Checks whether the given value conforms to the {@link MarkedString} type. + */ + function is(value) { + const candidate = value; + return Is.string(candidate) || (Is.objectLiteral(candidate) && Is.string(candidate.language) && Is.string(candidate.value)); + } + MarkedString.is = is; +})(MarkedString || (MarkedString = {})); +var Hover; +(function (Hover) { + /** + * Checks whether the given value conforms to the {@link Hover} interface. + */ + function is(value) { + let candidate = value; + return !!candidate && Is.objectLiteral(candidate) && (MarkupContent.is(candidate.contents) || + MarkedString.is(candidate.contents) || + Is.typedArray(candidate.contents, MarkedString.is)) && (value.range === undefined || Range.is(value.range)); + } + Hover.is = is; +})(Hover || (Hover = {})); +/** + * The ParameterInformation namespace provides helper functions to work with + * {@link ParameterInformation} literals. + */ +var ParameterInformation; +(function (ParameterInformation) { + /** + * Creates a new parameter information literal. + * + * @param label A label string. + * @param documentation A doc string. + */ + function create(label, documentation) { + return documentation ? { label, documentation } : { label }; + } + ParameterInformation.create = create; +})(ParameterInformation || (ParameterInformation = {})); +/** + * The SignatureInformation namespace provides helper functions to work with + * {@link SignatureInformation} literals. + */ +var SignatureInformation; +(function (SignatureInformation) { + function create(label, documentation, ...parameters) { + let result = { label }; + if (Is.defined(documentation)) { + result.documentation = documentation; + } + if (Is.defined(parameters)) { + result.parameters = parameters; + } + else { + result.parameters = []; + } + return result; + } + SignatureInformation.create = create; +})(SignatureInformation || (SignatureInformation = {})); +/** + * A document highlight kind. + */ +var DocumentHighlightKind; +(function (DocumentHighlightKind) { + /** + * A textual occurrence. + */ + DocumentHighlightKind.Text = 1; + /** + * Read-access of a symbol, like reading a variable. + */ + DocumentHighlightKind.Read = 2; + /** + * Write-access of a symbol, like writing to a variable. + */ + DocumentHighlightKind.Write = 3; +})(DocumentHighlightKind || (DocumentHighlightKind = {})); +/** + * DocumentHighlight namespace to provide helper functions to work with + * {@link DocumentHighlight} literals. + */ +var DocumentHighlight; +(function (DocumentHighlight) { + /** + * Create a DocumentHighlight object. + * @param range The range the highlight applies to. + * @param kind The highlight kind + */ + function create(range, kind) { + let result = { range }; + if (Is.number(kind)) { + result.kind = kind; + } + return result; + } + DocumentHighlight.create = create; +})(DocumentHighlight || (DocumentHighlight = {})); +/** + * A symbol kind. + */ +var SymbolKind; +(function (SymbolKind) { + SymbolKind.File = 1; + SymbolKind.Module = 2; + SymbolKind.Namespace = 3; + SymbolKind.Package = 4; + SymbolKind.Class = 5; + SymbolKind.Method = 6; + SymbolKind.Property = 7; + SymbolKind.Field = 8; + SymbolKind.Constructor = 9; + SymbolKind.Enum = 10; + SymbolKind.Interface = 11; + SymbolKind.Function = 12; + SymbolKind.Variable = 13; + SymbolKind.Constant = 14; + SymbolKind.String = 15; + SymbolKind.Number = 16; + SymbolKind.Boolean = 17; + SymbolKind.Array = 18; + SymbolKind.Object = 19; + SymbolKind.Key = 20; + SymbolKind.Null = 21; + SymbolKind.EnumMember = 22; + SymbolKind.Struct = 23; + SymbolKind.Event = 24; + SymbolKind.Operator = 25; + SymbolKind.TypeParameter = 26; +})(SymbolKind || (SymbolKind = {})); +/** + * Symbol tags are extra annotations that tweak the rendering of a symbol. + * + * @since 3.16 + */ +var SymbolTag; +(function (SymbolTag) { + /** + * Render a symbol as obsolete, usually using a strike-out. + */ + SymbolTag.Deprecated = 1; +})(SymbolTag || (SymbolTag = {})); +var SymbolInformation; +(function (SymbolInformation) { + /** + * Creates a new symbol information literal. + * + * @param name The name of the symbol. + * @param kind The kind of the symbol. + * @param range The range of the location of the symbol. + * @param uri The resource of the location of symbol. + * @param containerName The name of the symbol containing the symbol. + */ + function create(name, kind, range, uri, containerName) { + let result = { + name, + kind, + location: { uri, range } + }; + if (containerName) { + result.containerName = containerName; + } + return result; + } + SymbolInformation.create = create; +})(SymbolInformation || (SymbolInformation = {})); +var WorkspaceSymbol; +(function (WorkspaceSymbol) { + /** + * Create a new workspace symbol. + * + * @param name The name of the symbol. + * @param kind The kind of the symbol. + * @param uri The resource of the location of the symbol. + * @param range An options range of the location. + * @returns A WorkspaceSymbol. + */ + function create(name, kind, uri, range) { + return range !== undefined + ? { name, kind, location: { uri, range } } + : { name, kind, location: { uri } }; + } + WorkspaceSymbol.create = create; +})(WorkspaceSymbol || (WorkspaceSymbol = {})); +var DocumentSymbol; +(function (DocumentSymbol) { + /** + * Creates a new symbol information literal. + * + * @param name The name of the symbol. + * @param detail The detail of the symbol. + * @param kind The kind of the symbol. + * @param range The range of the symbol. + * @param selectionRange The selectionRange of the symbol. + * @param children Children of the symbol. + */ + function create(name, detail, kind, range, selectionRange, children) { + let result = { + name, + detail, + kind, + range, + selectionRange + }; + if (children !== undefined) { + result.children = children; + } + return result; + } + DocumentSymbol.create = create; + /** + * Checks whether the given literal conforms to the {@link DocumentSymbol} interface. + */ + function is(value) { + let candidate = value; + return candidate && + Is.string(candidate.name) && Is.number(candidate.kind) && + Range.is(candidate.range) && Range.is(candidate.selectionRange) && + (candidate.detail === undefined || Is.string(candidate.detail)) && + (candidate.deprecated === undefined || Is.boolean(candidate.deprecated)) && + (candidate.children === undefined || Array.isArray(candidate.children)) && + (candidate.tags === undefined || Array.isArray(candidate.tags)); + } + DocumentSymbol.is = is; +})(DocumentSymbol || (DocumentSymbol = {})); +/** + * A set of predefined code action kinds + */ +var CodeActionKind; +(function (CodeActionKind) { + /** + * Empty kind. + */ + CodeActionKind.Empty = ''; + /** + * Base kind for quickfix actions: 'quickfix' + */ + CodeActionKind.QuickFix = 'quickfix'; + /** + * Base kind for refactoring actions: 'refactor' + */ + CodeActionKind.Refactor = 'refactor'; + /** + * Base kind for refactoring extraction actions: 'refactor.extract' + * + * Example extract actions: + * + * - Extract method + * - Extract function + * - Extract variable + * - Extract interface from class + * - ... + */ + CodeActionKind.RefactorExtract = 'refactor.extract'; + /** + * Base kind for refactoring inline actions: 'refactor.inline' + * + * Example inline actions: + * + * - Inline function + * - Inline variable + * - Inline constant + * - ... + */ + CodeActionKind.RefactorInline = 'refactor.inline'; + /** + * Base kind for refactoring rewrite actions: 'refactor.rewrite' + * + * Example rewrite actions: + * + * - Convert JavaScript function to class + * - Add or remove parameter + * - Encapsulate field + * - Make method static + * - Move method to base class + * - ... + */ + CodeActionKind.RefactorRewrite = 'refactor.rewrite'; + /** + * Base kind for source actions: `source` + * + * Source code actions apply to the entire file. + */ + CodeActionKind.Source = 'source'; + /** + * Base kind for an organize imports source action: `source.organizeImports` + */ + CodeActionKind.SourceOrganizeImports = 'source.organizeImports'; + /** + * Base kind for auto-fix source actions: `source.fixAll`. + * + * Fix all actions automatically fix errors that have a clear fix that do not require user input. + * They should not suppress errors or perform unsafe fixes such as generating new types or classes. + * + * @since 3.15.0 + */ + CodeActionKind.SourceFixAll = 'source.fixAll'; +})(CodeActionKind || (CodeActionKind = {})); +/** + * The reason why code actions were requested. + * + * @since 3.17.0 + */ +var CodeActionTriggerKind; +(function (CodeActionTriggerKind) { + /** + * Code actions were explicitly requested by the user or by an extension. + */ + CodeActionTriggerKind.Invoked = 1; + /** + * Code actions were requested automatically. + * + * This typically happens when current selection in a file changes, but can + * also be triggered when file content changes. + */ + CodeActionTriggerKind.Automatic = 2; +})(CodeActionTriggerKind || (CodeActionTriggerKind = {})); +/** + * The CodeActionContext namespace provides helper functions to work with + * {@link CodeActionContext} literals. + */ +var CodeActionContext; +(function (CodeActionContext) { + /** + * Creates a new CodeActionContext literal. + */ + function create(diagnostics, only, triggerKind) { + let result = { diagnostics }; + if (only !== undefined && only !== null) { + result.only = only; + } + if (triggerKind !== undefined && triggerKind !== null) { + result.triggerKind = triggerKind; + } + return result; + } + CodeActionContext.create = create; + /** + * Checks whether the given literal conforms to the {@link CodeActionContext} interface. + */ + function is(value) { + let candidate = value; + return Is.defined(candidate) && Is.typedArray(candidate.diagnostics, Diagnostic.is) + && (candidate.only === undefined || Is.typedArray(candidate.only, Is.string)) + && (candidate.triggerKind === undefined || candidate.triggerKind === CodeActionTriggerKind.Invoked || candidate.triggerKind === CodeActionTriggerKind.Automatic); + } + CodeActionContext.is = is; +})(CodeActionContext || (CodeActionContext = {})); +var CodeAction; +(function (CodeAction) { + function create(title, kindOrCommandOrEdit, kind) { + let result = { title }; + let checkKind = true; + if (typeof kindOrCommandOrEdit === 'string') { + checkKind = false; + result.kind = kindOrCommandOrEdit; + } + else if (Command.is(kindOrCommandOrEdit)) { + result.command = kindOrCommandOrEdit; + } + else { + result.edit = kindOrCommandOrEdit; + } + if (checkKind && kind !== undefined) { + result.kind = kind; + } + return result; + } + CodeAction.create = create; + function is(value) { + let candidate = value; + return candidate && Is.string(candidate.title) && + (candidate.diagnostics === undefined || Is.typedArray(candidate.diagnostics, Diagnostic.is)) && + (candidate.kind === undefined || Is.string(candidate.kind)) && + (candidate.edit !== undefined || candidate.command !== undefined) && + (candidate.command === undefined || Command.is(candidate.command)) && + (candidate.isPreferred === undefined || Is.boolean(candidate.isPreferred)) && + (candidate.edit === undefined || WorkspaceEdit.is(candidate.edit)); + } + CodeAction.is = is; +})(CodeAction || (CodeAction = {})); +/** + * The CodeLens namespace provides helper functions to work with + * {@link CodeLens} literals. + */ +var CodeLens; +(function (CodeLens) { + /** + * Creates a new CodeLens literal. + */ + function create(range, data) { + let result = { range }; + if (Is.defined(data)) { + result.data = data; + } + return result; + } + CodeLens.create = create; + /** + * Checks whether the given literal conforms to the {@link CodeLens} interface. + */ + function is(value) { + let candidate = value; + return Is.defined(candidate) && Range.is(candidate.range) && (Is.undefined(candidate.command) || Command.is(candidate.command)); + } + CodeLens.is = is; +})(CodeLens || (CodeLens = {})); +/** + * The FormattingOptions namespace provides helper functions to work with + * {@link FormattingOptions} literals. + */ +var FormattingOptions; +(function (FormattingOptions) { + /** + * Creates a new FormattingOptions literal. + */ + function create(tabSize, insertSpaces) { + return { tabSize, insertSpaces }; + } + FormattingOptions.create = create; + /** + * Checks whether the given literal conforms to the {@link FormattingOptions} interface. + */ + function is(value) { + let candidate = value; + return Is.defined(candidate) && Is.uinteger(candidate.tabSize) && Is.boolean(candidate.insertSpaces); + } + FormattingOptions.is = is; +})(FormattingOptions || (FormattingOptions = {})); +/** + * The DocumentLink namespace provides helper functions to work with + * {@link DocumentLink} literals. + */ +var DocumentLink; +(function (DocumentLink) { + /** + * Creates a new DocumentLink literal. + */ + function create(range, target, data) { + return { range, target, data }; + } + DocumentLink.create = create; + /** + * Checks whether the given literal conforms to the {@link DocumentLink} interface. + */ + function is(value) { + let candidate = value; + return Is.defined(candidate) && Range.is(candidate.range) && (Is.undefined(candidate.target) || Is.string(candidate.target)); + } + DocumentLink.is = is; +})(DocumentLink || (DocumentLink = {})); +/** + * The SelectionRange namespace provides helper function to work with + * SelectionRange literals. + */ +var SelectionRange; +(function (SelectionRange) { + /** + * Creates a new SelectionRange + * @param range the range. + * @param parent an optional parent. + */ + function create(range, parent) { + return { range, parent }; + } + SelectionRange.create = create; + function is(value) { + let candidate = value; + return Is.objectLiteral(candidate) && Range.is(candidate.range) && (candidate.parent === undefined || SelectionRange.is(candidate.parent)); + } + SelectionRange.is = is; +})(SelectionRange || (SelectionRange = {})); +/** + * A set of predefined token types. This set is not fixed + * an clients can specify additional token types via the + * corresponding client capabilities. + * + * @since 3.16.0 + */ +var SemanticTokenTypes; +(function (SemanticTokenTypes) { + SemanticTokenTypes["namespace"] = "namespace"; + /** + * Represents a generic type. Acts as a fallback for types which can't be mapped to + * a specific type like class or enum. + */ + SemanticTokenTypes["type"] = "type"; + SemanticTokenTypes["class"] = "class"; + SemanticTokenTypes["enum"] = "enum"; + SemanticTokenTypes["interface"] = "interface"; + SemanticTokenTypes["struct"] = "struct"; + SemanticTokenTypes["typeParameter"] = "typeParameter"; + SemanticTokenTypes["parameter"] = "parameter"; + SemanticTokenTypes["variable"] = "variable"; + SemanticTokenTypes["property"] = "property"; + SemanticTokenTypes["enumMember"] = "enumMember"; + SemanticTokenTypes["event"] = "event"; + SemanticTokenTypes["function"] = "function"; + SemanticTokenTypes["method"] = "method"; + SemanticTokenTypes["macro"] = "macro"; + SemanticTokenTypes["keyword"] = "keyword"; + SemanticTokenTypes["modifier"] = "modifier"; + SemanticTokenTypes["comment"] = "comment"; + SemanticTokenTypes["string"] = "string"; + SemanticTokenTypes["number"] = "number"; + SemanticTokenTypes["regexp"] = "regexp"; + SemanticTokenTypes["operator"] = "operator"; + /** + * @since 3.17.0 + */ + SemanticTokenTypes["decorator"] = "decorator"; +})(SemanticTokenTypes || (SemanticTokenTypes = {})); +/** + * A set of predefined token modifiers. This set is not fixed + * an clients can specify additional token types via the + * corresponding client capabilities. + * + * @since 3.16.0 + */ +var SemanticTokenModifiers; +(function (SemanticTokenModifiers) { + SemanticTokenModifiers["declaration"] = "declaration"; + SemanticTokenModifiers["definition"] = "definition"; + SemanticTokenModifiers["readonly"] = "readonly"; + SemanticTokenModifiers["static"] = "static"; + SemanticTokenModifiers["deprecated"] = "deprecated"; + SemanticTokenModifiers["abstract"] = "abstract"; + SemanticTokenModifiers["async"] = "async"; + SemanticTokenModifiers["modification"] = "modification"; + SemanticTokenModifiers["documentation"] = "documentation"; + SemanticTokenModifiers["defaultLibrary"] = "defaultLibrary"; +})(SemanticTokenModifiers || (SemanticTokenModifiers = {})); +/** + * @since 3.16.0 + */ +var SemanticTokens; +(function (SemanticTokens) { + function is(value) { + const candidate = value; + return Is.objectLiteral(candidate) && (candidate.resultId === undefined || typeof candidate.resultId === 'string') && + Array.isArray(candidate.data) && (candidate.data.length === 0 || typeof candidate.data[0] === 'number'); + } + SemanticTokens.is = is; +})(SemanticTokens || (SemanticTokens = {})); +/** + * The InlineValueText namespace provides functions to deal with InlineValueTexts. + * + * @since 3.17.0 + */ +var InlineValueText; +(function (InlineValueText) { + /** + * Creates a new InlineValueText literal. + */ + function create(range, text) { + return { range, text }; + } + InlineValueText.create = create; + function is(value) { + const candidate = value; + return candidate !== undefined && candidate !== null && Range.is(candidate.range) && Is.string(candidate.text); + } + InlineValueText.is = is; +})(InlineValueText || (InlineValueText = {})); +/** + * The InlineValueVariableLookup namespace provides functions to deal with InlineValueVariableLookups. + * + * @since 3.17.0 + */ +var InlineValueVariableLookup; +(function (InlineValueVariableLookup) { + /** + * Creates a new InlineValueText literal. + */ + function create(range, variableName, caseSensitiveLookup) { + return { range, variableName, caseSensitiveLookup }; + } + InlineValueVariableLookup.create = create; + function is(value) { + const candidate = value; + return candidate !== undefined && candidate !== null && Range.is(candidate.range) && Is.boolean(candidate.caseSensitiveLookup) + && (Is.string(candidate.variableName) || candidate.variableName === undefined); + } + InlineValueVariableLookup.is = is; +})(InlineValueVariableLookup || (InlineValueVariableLookup = {})); +/** + * The InlineValueEvaluatableExpression namespace provides functions to deal with InlineValueEvaluatableExpression. + * + * @since 3.17.0 + */ +var InlineValueEvaluatableExpression; +(function (InlineValueEvaluatableExpression) { + /** + * Creates a new InlineValueEvaluatableExpression literal. + */ + function create(range, expression) { + return { range, expression }; + } + InlineValueEvaluatableExpression.create = create; + function is(value) { + const candidate = value; + return candidate !== undefined && candidate !== null && Range.is(candidate.range) + && (Is.string(candidate.expression) || candidate.expression === undefined); + } + InlineValueEvaluatableExpression.is = is; +})(InlineValueEvaluatableExpression || (InlineValueEvaluatableExpression = {})); +/** + * The InlineValueContext namespace provides helper functions to work with + * {@link InlineValueContext} literals. + * + * @since 3.17.0 + */ +var InlineValueContext; +(function (InlineValueContext) { + /** + * Creates a new InlineValueContext literal. + */ + function create(frameId, stoppedLocation) { + return { frameId, stoppedLocation }; + } + InlineValueContext.create = create; + /** + * Checks whether the given literal conforms to the {@link InlineValueContext} interface. + */ + function is(value) { + const candidate = value; + return Is.defined(candidate) && Range.is(value.stoppedLocation); + } + InlineValueContext.is = is; +})(InlineValueContext || (InlineValueContext = {})); +/** + * Inlay hint kinds. + * + * @since 3.17.0 + */ +var InlayHintKind; +(function (InlayHintKind) { + /** + * An inlay hint that for a type annotation. + */ + InlayHintKind.Type = 1; + /** + * An inlay hint that is for a parameter. + */ + InlayHintKind.Parameter = 2; + function is(value) { + return value === 1 || value === 2; + } + InlayHintKind.is = is; +})(InlayHintKind || (InlayHintKind = {})); +var InlayHintLabelPart; +(function (InlayHintLabelPart) { + function create(value) { + return { value }; + } + InlayHintLabelPart.create = create; + function is(value) { + const candidate = value; + return Is.objectLiteral(candidate) + && (candidate.tooltip === undefined || Is.string(candidate.tooltip) || MarkupContent.is(candidate.tooltip)) + && (candidate.location === undefined || Location.is(candidate.location)) + && (candidate.command === undefined || Command.is(candidate.command)); + } + InlayHintLabelPart.is = is; +})(InlayHintLabelPart || (InlayHintLabelPart = {})); +var InlayHint; +(function (InlayHint) { + function create(position, label, kind) { + const result = { position, label }; + if (kind !== undefined) { + result.kind = kind; + } + return result; + } + InlayHint.create = create; + function is(value) { + const candidate = value; + return Is.objectLiteral(candidate) && Position.is(candidate.position) + && (Is.string(candidate.label) || Is.typedArray(candidate.label, InlayHintLabelPart.is)) + && (candidate.kind === undefined || InlayHintKind.is(candidate.kind)) + && (candidate.textEdits === undefined) || Is.typedArray(candidate.textEdits, TextEdit.is) + && (candidate.tooltip === undefined || Is.string(candidate.tooltip) || MarkupContent.is(candidate.tooltip)) + && (candidate.paddingLeft === undefined || Is.boolean(candidate.paddingLeft)) + && (candidate.paddingRight === undefined || Is.boolean(candidate.paddingRight)); + } + InlayHint.is = is; +})(InlayHint || (InlayHint = {})); +var StringValue; +(function (StringValue) { + function createSnippet(value) { + return { kind: 'snippet', value }; + } + StringValue.createSnippet = createSnippet; +})(StringValue || (StringValue = {})); +var InlineCompletionItem; +(function (InlineCompletionItem) { + function create(insertText, filterText, range, command) { + return { insertText, filterText, range, command }; + } + InlineCompletionItem.create = create; +})(InlineCompletionItem || (InlineCompletionItem = {})); +var InlineCompletionList; +(function (InlineCompletionList) { + function create(items) { + return { items }; + } + InlineCompletionList.create = create; +})(InlineCompletionList || (InlineCompletionList = {})); +/** + * Describes how an {@link InlineCompletionItemProvider inline completion provider} was triggered. + * + * @since 3.18.0 + * @proposed + */ +var InlineCompletionTriggerKind; +(function (InlineCompletionTriggerKind) { + /** + * Completion was triggered explicitly by a user gesture. + */ + InlineCompletionTriggerKind.Invoked = 0; + /** + * Completion was triggered automatically while editing. + */ + InlineCompletionTriggerKind.Automatic = 1; +})(InlineCompletionTriggerKind || (InlineCompletionTriggerKind = {})); +var SelectedCompletionInfo; +(function (SelectedCompletionInfo) { + function create(range, text) { + return { range, text }; + } + SelectedCompletionInfo.create = create; +})(SelectedCompletionInfo || (SelectedCompletionInfo = {})); +var InlineCompletionContext; +(function (InlineCompletionContext) { + function create(triggerKind, selectedCompletionInfo) { + return { triggerKind, selectedCompletionInfo }; + } + InlineCompletionContext.create = create; +})(InlineCompletionContext || (InlineCompletionContext = {})); +var WorkspaceFolder; +(function (WorkspaceFolder) { + function is(value) { + const candidate = value; + return Is.objectLiteral(candidate) && URI.is(candidate.uri) && Is.string(candidate.name); + } + WorkspaceFolder.is = is; +})(WorkspaceFolder || (WorkspaceFolder = {})); +const EOL = (/* unused pure expression or super */ null && (['\n', '\r\n', '\r'])); +/** + * @deprecated Use the text document from the new vscode-languageserver-textdocument package. + */ +var TextDocument; +(function (TextDocument) { + /** + * Creates a new ITextDocument literal from the given uri and content. + * @param uri The document's uri. + * @param languageId The document's language Id. + * @param version The document's version. + * @param content The document's content. + */ + function create(uri, languageId, version, content) { + return new FullTextDocument(uri, languageId, version, content); + } + TextDocument.create = create; + /** + * Checks whether the given literal conforms to the {@link ITextDocument} interface. + */ + function is(value) { + let candidate = value; + return Is.defined(candidate) && Is.string(candidate.uri) && (Is.undefined(candidate.languageId) || Is.string(candidate.languageId)) && Is.uinteger(candidate.lineCount) + && Is.func(candidate.getText) && Is.func(candidate.positionAt) && Is.func(candidate.offsetAt) ? true : false; + } + TextDocument.is = is; + function applyEdits(document, edits) { + let text = document.getText(); + let sortedEdits = mergeSort(edits, (a, b) => { + let diff = a.range.start.line - b.range.start.line; + if (diff === 0) { + return a.range.start.character - b.range.start.character; + } + return diff; + }); + let lastModifiedOffset = text.length; + for (let i = sortedEdits.length - 1; i >= 0; i--) { + let e = sortedEdits[i]; + let startOffset = document.offsetAt(e.range.start); + let endOffset = document.offsetAt(e.range.end); + if (endOffset <= lastModifiedOffset) { + text = text.substring(0, startOffset) + e.newText + text.substring(endOffset, text.length); + } + else { + throw new Error('Overlapping edit'); + } + lastModifiedOffset = startOffset; + } + return text; + } + TextDocument.applyEdits = applyEdits; + function mergeSort(data, compare) { + if (data.length <= 1) { + // sorted + return data; + } + const p = (data.length / 2) | 0; + const left = data.slice(0, p); + const right = data.slice(p); + mergeSort(left, compare); + mergeSort(right, compare); + let leftIdx = 0; + let rightIdx = 0; + let i = 0; + while (leftIdx < left.length && rightIdx < right.length) { + let ret = compare(left[leftIdx], right[rightIdx]); + if (ret <= 0) { + // smaller_equal -> take left to preserve order + data[i++] = left[leftIdx++]; + } + else { + // greater -> take right + data[i++] = right[rightIdx++]; + } + } + while (leftIdx < left.length) { + data[i++] = left[leftIdx++]; + } + while (rightIdx < right.length) { + data[i++] = right[rightIdx++]; + } + return data; + } +})(TextDocument || (TextDocument = {})); +/** + * @deprecated Use the text document from the new vscode-languageserver-textdocument package. + */ +class FullTextDocument { + constructor(uri, languageId, version, content) { + this._uri = uri; + this._languageId = languageId; + this._version = version; + this._content = content; + this._lineOffsets = undefined; + } + get uri() { + return this._uri; + } + get languageId() { + return this._languageId; + } + get version() { + return this._version; + } + getText(range) { + if (range) { + let start = this.offsetAt(range.start); + let end = this.offsetAt(range.end); + return this._content.substring(start, end); + } + return this._content; + } + update(event, version) { + this._content = event.text; + this._version = version; + this._lineOffsets = undefined; + } + getLineOffsets() { + if (this._lineOffsets === undefined) { + let lineOffsets = []; + let text = this._content; + let isLineStart = true; + for (let i = 0; i < text.length; i++) { + if (isLineStart) { + lineOffsets.push(i); + isLineStart = false; + } + let ch = text.charAt(i); + isLineStart = (ch === '\r' || ch === '\n'); + if (ch === '\r' && i + 1 < text.length && text.charAt(i + 1) === '\n') { + i++; + } + } + if (isLineStart && text.length > 0) { + lineOffsets.push(text.length); + } + this._lineOffsets = lineOffsets; + } + return this._lineOffsets; + } + positionAt(offset) { + offset = Math.max(Math.min(offset, this._content.length), 0); + let lineOffsets = this.getLineOffsets(); + let low = 0, high = lineOffsets.length; + if (high === 0) { + return Position.create(0, offset); + } + while (low < high) { + let mid = Math.floor((low + high) / 2); + if (lineOffsets[mid] > offset) { + high = mid; + } + else { + low = mid + 1; + } + } + // low is the least x for which the line offset is larger than the current offset + // or array.length if no line offset is larger than the current offset + let line = low - 1; + return Position.create(line, offset - lineOffsets[line]); + } + offsetAt(position) { + let lineOffsets = this.getLineOffsets(); + if (position.line >= lineOffsets.length) { + return this._content.length; + } + else if (position.line < 0) { + return 0; + } + let lineOffset = lineOffsets[position.line]; + let nextLineOffset = (position.line + 1 < lineOffsets.length) ? lineOffsets[position.line + 1] : this._content.length; + return Math.max(Math.min(lineOffset + position.character, nextLineOffset), lineOffset); + } + get lineCount() { + return this.getLineOffsets().length; + } +} +var Is; +(function (Is) { + const toString = Object.prototype.toString; + function defined(value) { + return typeof value !== 'undefined'; + } + Is.defined = defined; + function undefined(value) { + return typeof value === 'undefined'; + } + Is.undefined = undefined; + function boolean(value) { + return value === true || value === false; + } + Is.boolean = boolean; + function string(value) { + return toString.call(value) === '[object String]'; + } + Is.string = string; + function number(value) { + return toString.call(value) === '[object Number]'; + } + Is.number = number; + function numberRange(value, min, max) { + return toString.call(value) === '[object Number]' && min <= value && value <= max; + } + Is.numberRange = numberRange; + function integer(value) { + return toString.call(value) === '[object Number]' && -2147483648 <= value && value <= 2147483647; + } + Is.integer = integer; + function uinteger(value) { + return toString.call(value) === '[object Number]' && 0 <= value && value <= 2147483647; + } + Is.uinteger = uinteger; + function func(value) { + return toString.call(value) === '[object Function]'; + } + Is.func = func; + function objectLiteral(value) { + // Strictly speaking class instances pass this check as well. Since the LSP + // doesn't use classes we ignore this for now. If we do we need to add something + // like this: `Object.getPrototypeOf(Object.getPrototypeOf(x)) === null` + return value !== null && typeof value === 'object'; + } + Is.objectLiteral = objectLiteral; + function typedArray(value, check) { + return Array.isArray(value) && value.every(check); + } + Is.typedArray = typedArray; +})(Is || (Is = {})); + +;// CONCATENATED MODULE: ./node_modules/langium/lib/parser/cst-node-builder.js +/****************************************************************************** + * Copyright 2021 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + + + +class CstNodeBuilder { + constructor() { + this.nodeStack = []; + } + get current() { + return this.nodeStack[this.nodeStack.length - 1]; + } + buildRootNode(input) { + this.rootNode = new RootCstNodeImpl(input); + this.rootNode.root = this.rootNode; + this.nodeStack = [this.rootNode]; + return this.rootNode; + } + buildCompositeNode(feature) { + const compositeNode = new CompositeCstNodeImpl(); + compositeNode.grammarSource = feature; + compositeNode.root = this.rootNode; + this.current.content.push(compositeNode); + this.nodeStack.push(compositeNode); + return compositeNode; + } + buildLeafNode(token, feature) { + const leafNode = new LeafCstNodeImpl(token.startOffset, token.image.length, tokenToRange(token), token.tokenType, false); + leafNode.grammarSource = feature; + leafNode.root = this.rootNode; + this.current.content.push(leafNode); + return leafNode; + } + removeNode(node) { + const parent = node.container; + if (parent) { + const index = parent.content.indexOf(node); + if (index >= 0) { + parent.content.splice(index, 1); + } + } + } + construct(item) { + const current = this.current; + // The specified item could be a datatype ($type is symbol) or a fragment ($type is undefined) + // Only if the $type is a string, we actually assign the element + if (typeof item.$type === 'string') { + this.current.astNode = item; + } + item.$cstNode = current; + const node = this.nodeStack.pop(); + // Empty composite nodes are not valid + // Simply remove the node from the tree + if ((node === null || node === void 0 ? void 0 : node.content.length) === 0) { + this.removeNode(node); + } + } + addHiddenTokens(hiddenTokens) { + for (const token of hiddenTokens) { + const hiddenNode = new LeafCstNodeImpl(token.startOffset, token.image.length, tokenToRange(token), token.tokenType, true); + hiddenNode.root = this.rootNode; + this.addHiddenToken(this.rootNode, hiddenNode); + } + } + addHiddenToken(node, token) { + const { offset: tokenStart, end: tokenEnd } = token; + for (let i = 0; i < node.content.length; i++) { + const child = node.content[i]; + const { offset: childStart, end: childEnd } = child; + if (syntax_tree_isCompositeCstNode(child) && tokenStart > childStart && tokenEnd < childEnd) { + this.addHiddenToken(child, token); + return; + } + else if (tokenEnd <= childStart) { + node.content.splice(i, 0, token); + return; + } + } + // We know that we haven't found a suited position for the token + // So we simply add it to the end of the current node + node.content.push(token); + } +} +class AbstractCstNode { + /** @deprecated use `container` instead. */ + get parent() { + return this.container; + } + /** @deprecated use `grammarSource` instead. */ + get feature() { + return this.grammarSource; + } + get hidden() { + return false; + } + get astNode() { + var _a, _b; + const node = typeof ((_a = this._astNode) === null || _a === void 0 ? void 0 : _a.$type) === 'string' ? this._astNode : (_b = this.container) === null || _b === void 0 ? void 0 : _b.astNode; + if (!node) { + throw new Error('This node has no associated AST element'); + } + return node; + } + set astNode(value) { + this._astNode = value; + } + /** @deprecated use `astNode` instead. */ + get element() { + return this.astNode; + } + get text() { + return this.root.fullText.substring(this.offset, this.end); + } +} +class LeafCstNodeImpl extends AbstractCstNode { + get offset() { + return this._offset; + } + get length() { + return this._length; + } + get end() { + return this._offset + this._length; + } + get hidden() { + return this._hidden; + } + get tokenType() { + return this._tokenType; + } + get range() { + return this._range; + } + constructor(offset, length, range, tokenType, hidden = false) { + super(); + this._hidden = hidden; + this._offset = offset; + this._tokenType = tokenType; + this._length = length; + this._range = range; + } +} +class CompositeCstNodeImpl extends AbstractCstNode { + constructor() { + super(...arguments); + this.content = new CstNodeContainer(this); + } + /** @deprecated use `content` instead. */ + get children() { + return this.content; + } + get offset() { + var _a, _b; + return (_b = (_a = this.firstNonHiddenNode) === null || _a === void 0 ? void 0 : _a.offset) !== null && _b !== void 0 ? _b : 0; + } + get length() { + return this.end - this.offset; + } + get end() { + var _a, _b; + return (_b = (_a = this.lastNonHiddenNode) === null || _a === void 0 ? void 0 : _a.end) !== null && _b !== void 0 ? _b : 0; + } + get range() { + const firstNode = this.firstNonHiddenNode; + const lastNode = this.lastNonHiddenNode; + if (firstNode && lastNode) { + if (this._rangeCache === undefined) { + const { range: firstRange } = firstNode; + const { range: lastRange } = lastNode; + this._rangeCache = { start: firstRange.start, end: lastRange.end.line < firstRange.start.line ? firstRange.start : lastRange.end }; + } + return this._rangeCache; + } + else { + return { start: Position.create(0, 0), end: Position.create(0, 0) }; + } + } + get firstNonHiddenNode() { + for (const child of this.content) { + if (!child.hidden) { + return child; + } + } + return this.content[0]; + } + get lastNonHiddenNode() { + for (let i = this.content.length - 1; i >= 0; i--) { + const child = this.content[i]; + if (!child.hidden) { + return child; + } + } + return this.content[this.content.length - 1]; + } +} +class CstNodeContainer extends Array { + constructor(parent) { + super(); + this.parent = parent; + Object.setPrototypeOf(this, CstNodeContainer.prototype); + } + push(...items) { + this.addParents(items); + return super.push(...items); + } + unshift(...items) { + this.addParents(items); + return super.unshift(...items); + } + splice(start, count, ...items) { + this.addParents(items); + return super.splice(start, count, ...items); + } + addParents(items) { + for (const item of items) { + item.container = this.parent; + } + } +} +class RootCstNodeImpl extends CompositeCstNodeImpl { + get text() { + return this._text.substring(this.offset, this.end); + } + get fullText() { + return this._text; + } + constructor(input) { + super(); + this._text = ''; + this._text = input !== null && input !== void 0 ? input : ''; + } +} +//# sourceMappingURL=cst-node-builder.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/parser/langium-parser.js +/****************************************************************************** + * Copyright 2021 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + + + + + + +const DatatypeSymbol = Symbol('Datatype'); +function isDataTypeNode(node) { + return node.$type === DatatypeSymbol; +} +const ruleSuffix = '\u200B'; +const withRuleSuffix = (name) => name.endsWith(ruleSuffix) ? name : name + ruleSuffix; +class AbstractLangiumParser { + constructor(services) { + this._unorderedGroups = new Map(); + this.lexer = services.parser.Lexer; + const tokens = this.lexer.definition; + this.wrapper = new ChevrotainWrapper(tokens, Object.assign(Object.assign({}, services.parser.ParserConfig), { errorMessageProvider: services.parser.ParserErrorMessageProvider })); + } + alternatives(idx, choices) { + this.wrapper.wrapOr(idx, choices); + } + optional(idx, callback) { + this.wrapper.wrapOption(idx, callback); + } + many(idx, callback) { + this.wrapper.wrapMany(idx, callback); + } + atLeastOne(idx, callback) { + this.wrapper.wrapAtLeastOne(idx, callback); + } + isRecording() { + return this.wrapper.IS_RECORDING; + } + get unorderedGroups() { + return this._unorderedGroups; + } + getRuleStack() { + return this.wrapper.RULE_STACK; + } + finalize() { + this.wrapper.wrapSelfAnalysis(); + } +} +class LangiumParser extends AbstractLangiumParser { + get current() { + return this.stack[this.stack.length - 1]; + } + constructor(services) { + super(services); + this.nodeBuilder = new CstNodeBuilder(); + this.stack = []; + this.assignmentMap = new Map(); + this.linker = services.references.Linker; + this.converter = services.parser.ValueConverter; + this.astReflection = services.shared.AstReflection; + } + rule(rule, impl) { + const type = rule.fragment ? undefined : isDataTypeRule(rule) ? DatatypeSymbol : getTypeName(rule); + const ruleMethod = this.wrapper.DEFINE_RULE(withRuleSuffix(rule.name), this.startImplementation(type, impl).bind(this)); + if (rule.entry) { + this.mainRule = ruleMethod; + } + return ruleMethod; + } + parse(input) { + this.nodeBuilder.buildRootNode(input); + const lexerResult = this.lexer.tokenize(input); + this.wrapper.input = lexerResult.tokens; + const result = this.mainRule.call(this.wrapper, {}); + this.nodeBuilder.addHiddenTokens(lexerResult.hidden); + this.unorderedGroups.clear(); + return { + value: result, + lexerErrors: lexerResult.errors, + parserErrors: this.wrapper.errors + }; + } + startImplementation($type, implementation) { + return (args) => { + if (!this.isRecording()) { + const node = { $type }; + this.stack.push(node); + if ($type === DatatypeSymbol) { + node.value = ''; + } + } + let result; + try { + result = implementation(args); + } + catch (err) { + result = undefined; + } + if (!this.isRecording() && result === undefined) { + result = this.construct(); + } + return result; + }; + } + consume(idx, tokenType, feature) { + const token = this.wrapper.wrapConsume(idx, tokenType); + if (!this.isRecording() && this.isValidToken(token)) { + const leafNode = this.nodeBuilder.buildLeafNode(token, feature); + const { assignment, isCrossRef } = this.getAssignment(feature); + const current = this.current; + if (assignment) { + const convertedValue = isKeyword(feature) ? token.image : this.converter.convert(token.image, leafNode); + this.assign(assignment.operator, assignment.feature, convertedValue, leafNode, isCrossRef); + } + else if (isDataTypeNode(current)) { + let text = token.image; + if (!isKeyword(feature)) { + text = this.converter.convert(text, leafNode).toString(); + } + current.value += text; + } + } + } + /** + * Most consumed parser tokens are valid. However there are two cases in which they are not valid: + * + * 1. They were inserted during error recovery by the parser. These tokens don't really exist and should not be further processed + * 2. They contain invalid token ranges. This might include the special EOF token, or other tokens produced by invalid token builders. + */ + isValidToken(token) { + return !token.isInsertedInRecovery && !isNaN(token.startOffset) && typeof token.endOffset === 'number' && !isNaN(token.endOffset); + } + subrule(idx, rule, feature, args) { + let cstNode; + if (!this.isRecording()) { + cstNode = this.nodeBuilder.buildCompositeNode(feature); + } + const subruleResult = this.wrapper.wrapSubrule(idx, rule, args); + if (!this.isRecording() && cstNode && cstNode.length > 0) { + this.performSubruleAssignment(subruleResult, feature, cstNode); + } + } + performSubruleAssignment(result, feature, cstNode) { + const { assignment, isCrossRef } = this.getAssignment(feature); + if (assignment) { + this.assign(assignment.operator, assignment.feature, result, cstNode, isCrossRef); + } + else if (!assignment) { + // If we call a subrule without an assignment we either: + // 1. append the result of the subrule (data type rule) + // 2. override the current object with the newly parsed object + // If the current element is an AST node and the result of the subrule + // is a data type rule, we can safely discard the results. + const current = this.current; + if (isDataTypeNode(current)) { + current.value += result.toString(); + } + else if (typeof result === 'object' && result) { + const resultKind = result.$type; + const object = this.assignWithoutOverride(result, current); + if (resultKind) { + object.$type = resultKind; + } + const newItem = object; + this.stack.pop(); + this.stack.push(newItem); + } + } + } + action($type, action) { + if (!this.isRecording()) { + let last = this.current; + // This branch is used for left recursive grammar rules. + // Those don't call `construct` before another action. + // Therefore, we need to call it here. + if (!last.$cstNode && action.feature && action.operator) { + last = this.construct(false); + const feature = last.$cstNode.feature; + this.nodeBuilder.buildCompositeNode(feature); + } + const newItem = { $type }; + this.stack.pop(); + this.stack.push(newItem); + if (action.feature && action.operator) { + this.assign(action.operator, action.feature, last, last.$cstNode, false); + } + } + } + construct(pop = true) { + if (this.isRecording()) { + return undefined; + } + const obj = this.current; + linkContentToContainer(obj); + this.nodeBuilder.construct(obj); + if (pop) { + this.stack.pop(); + } + if (isDataTypeNode(obj)) { + return this.converter.convert(obj.value, obj.$cstNode); + } + else { + assignMandatoryProperties(this.astReflection, obj); + } + return obj; + } + getAssignment(feature) { + if (!this.assignmentMap.has(feature)) { + const assignment = getContainerOfType(feature, isAssignment); + this.assignmentMap.set(feature, { + assignment: assignment, + isCrossRef: assignment ? isCrossReference(assignment.terminal) : false + }); + } + return this.assignmentMap.get(feature); + } + assign(operator, feature, value, cstNode, isCrossRef) { + const obj = this.current; + let item; + if (isCrossRef && typeof value === 'string') { + item = this.linker.buildReference(obj, feature, cstNode, value); + } + else { + item = value; + } + switch (operator) { + case '=': { + obj[feature] = item; + break; + } + case '?=': { + obj[feature] = true; + break; + } + case '+=': { + if (!Array.isArray(obj[feature])) { + obj[feature] = []; + } + obj[feature].push(item); + } + } + } + assignWithoutOverride(target, source) { + for (const [name, existingValue] of Object.entries(source)) { + const newValue = target[name]; + if (newValue === undefined) { + target[name] = existingValue; + } + else if (Array.isArray(newValue) && Array.isArray(existingValue)) { + existingValue.push(...newValue); + target[name] = existingValue; + } + } + return target; + } + get definitionErrors() { + return this.wrapper.definitionErrors; + } +} +class AbstractParserErrorMessageProvider { + buildMismatchTokenMessage(options) { + return defaultParserErrorProvider.buildMismatchTokenMessage(options); + } + buildNotAllInputParsedMessage(options) { + return defaultParserErrorProvider.buildNotAllInputParsedMessage(options); + } + buildNoViableAltMessage(options) { + return defaultParserErrorProvider.buildNoViableAltMessage(options); + } + buildEarlyExitMessage(options) { + return defaultParserErrorProvider.buildEarlyExitMessage(options); + } +} +class LangiumParserErrorMessageProvider extends AbstractParserErrorMessageProvider { + buildMismatchTokenMessage({ expected, actual }) { + const expectedMsg = expected.LABEL + ? '`' + expected.LABEL + '`' + : expected.name.endsWith(':KW') + ? `keyword '${expected.name.substring(0, expected.name.length - 3)}'` + : `token of type '${expected.name}'`; + return `Expecting ${expectedMsg} but found \`${actual.image}\`.`; + } + buildNotAllInputParsedMessage({ firstRedundant }) { + return `Expecting end of file but found \`${firstRedundant.image}\`.`; + } +} +class LangiumCompletionParser extends AbstractLangiumParser { + constructor() { + super(...arguments); + this.tokens = []; + this.elementStack = []; + this.lastElementStack = []; + this.nextTokenIndex = 0; + this.stackSize = 0; + } + action() { + // NOOP + } + construct() { + // NOOP + return undefined; + } + parse(input) { + this.resetState(); + const tokens = this.lexer.tokenize(input); + this.tokens = tokens.tokens; + this.wrapper.input = [...this.tokens]; + this.mainRule.call(this.wrapper, {}); + this.unorderedGroups.clear(); + return { + tokens: this.tokens, + elementStack: [...this.lastElementStack], + tokenIndex: this.nextTokenIndex + }; + } + rule(rule, impl) { + const ruleMethod = this.wrapper.DEFINE_RULE(withRuleSuffix(rule.name), this.startImplementation(impl).bind(this)); + if (rule.entry) { + this.mainRule = ruleMethod; + } + return ruleMethod; + } + resetState() { + this.elementStack = []; + this.lastElementStack = []; + this.nextTokenIndex = 0; + this.stackSize = 0; + } + startImplementation(implementation) { + return (args) => { + const size = this.keepStackSize(); + try { + implementation(args); + } + finally { + this.resetStackSize(size); + } + }; + } + removeUnexpectedElements() { + this.elementStack.splice(this.stackSize); + } + keepStackSize() { + const size = this.elementStack.length; + this.stackSize = size; + return size; + } + resetStackSize(size) { + this.removeUnexpectedElements(); + this.stackSize = size; + } + consume(idx, tokenType, feature) { + this.wrapper.wrapConsume(idx, tokenType); + if (!this.isRecording()) { + this.lastElementStack = [...this.elementStack, feature]; + this.nextTokenIndex = this.currIdx + 1; + } + } + subrule(idx, rule, feature, args) { + this.before(feature); + this.wrapper.wrapSubrule(idx, rule, args); + this.after(feature); + } + before(element) { + if (!this.isRecording()) { + this.elementStack.push(element); + } + } + after(element) { + if (!this.isRecording()) { + const index = this.elementStack.lastIndexOf(element); + if (index >= 0) { + this.elementStack.splice(index); + } + } + } + get currIdx() { + return this.wrapper.currIdx; + } +} +const defaultConfig = { + recoveryEnabled: true, + nodeLocationTracking: 'full', + skipValidations: true, + errorMessageProvider: new LangiumParserErrorMessageProvider() +}; +/** + * This class wraps the embedded actions parser of chevrotain and exposes protected methods. + * This way, we can build the `LangiumParser` as a composition. + */ +class ChevrotainWrapper extends EmbeddedActionsParser { + constructor(tokens, config) { + const useDefaultLookahead = config && 'maxLookahead' in config; + super(tokens, Object.assign(Object.assign(Object.assign({}, defaultConfig), { lookaheadStrategy: useDefaultLookahead + ? new LLkLookaheadStrategy({ maxLookahead: config.maxLookahead }) + : new LLStarLookaheadStrategy() }), config)); + } + get IS_RECORDING() { + return this.RECORDING_PHASE; + } + DEFINE_RULE(name, impl) { + return this.RULE(name, impl); + } + wrapSelfAnalysis() { + this.performSelfAnalysis(); + } + wrapConsume(idx, tokenType) { + return this.consume(idx, tokenType); + } + wrapSubrule(idx, rule, args) { + return this.subrule(idx, rule, { + ARGS: [args] + }); + } + wrapOr(idx, choices) { + this.or(idx, choices); + } + wrapOption(idx, callback) { + this.option(idx, callback); + } + wrapMany(idx, callback) { + this.many(idx, callback); + } + wrapAtLeastOne(idx, callback) { + this.atLeastOne(idx, callback); + } +} +//# sourceMappingURL=langium-parser.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/parser/parser-builder-base.js +/****************************************************************************** + * Copyright 2022 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + + + + + +function createParser(grammar, parser, tokens) { + const rules = new Map(); + const parserContext = { + parser, + tokens, + rules, + ruleNames: new Map() + }; + buildRules(parserContext, grammar); + return parser; +} +function buildRules(parserContext, grammar) { + const reachable = getAllReachableRules(grammar, false); + const parserRules = stream_stream(grammar.rules).filter(isParserRule).filter(rule => reachable.has(rule)); + for (const rule of parserRules) { + const ctx = Object.assign(Object.assign({}, parserContext), { consume: 1, optional: 1, subrule: 1, many: 1, or: 1 }); + ctx.rules.set(rule.name, parserContext.parser.rule(rule, buildElement(ctx, rule.definition))); + } +} +function buildElement(ctx, element, ignoreGuard = false) { + let method; + if (isKeyword(element)) { + method = buildKeyword(ctx, element); + } + else if (isAction(element)) { + method = buildAction(ctx, element); + } + else if (isAssignment(element)) { + method = buildElement(ctx, element.terminal); + } + else if (isCrossReference(element)) { + method = buildCrossReference(ctx, element); + } + else if (isRuleCall(element)) { + method = buildRuleCall(ctx, element); + } + else if (isAlternatives(element)) { + method = buildAlternatives(ctx, element); + } + else if (isUnorderedGroup(element)) { + method = buildUnorderedGroup(ctx, element); + } + else if (isGroup(element)) { + method = buildGroup(ctx, element); + } + else if (isEndOfFile(element)) { + const idx = ctx.consume++; + method = () => ctx.parser.consume(idx, EOF, element); + } + else { + throw new ErrorWithLocation(element.$cstNode, `Unexpected element type: ${element.$type}`); + } + return wrap(ctx, ignoreGuard ? undefined : getGuardCondition(element), method, element.cardinality); +} +function buildAction(ctx, action) { + const actionType = getTypeName(action); + return () => ctx.parser.action(actionType, action); +} +function buildRuleCall(ctx, ruleCall) { + const rule = ruleCall.rule.ref; + if (isParserRule(rule)) { + const idx = ctx.subrule++; + const predicate = ruleCall.arguments.length > 0 ? buildRuleCallPredicate(rule, ruleCall.arguments) : () => ({}); + return (args) => ctx.parser.subrule(idx, getRule(ctx, rule), ruleCall, predicate(args)); + } + else if (isTerminalRule(rule)) { + const idx = ctx.consume++; + const method = getToken(ctx, rule.name); + return () => ctx.parser.consume(idx, method, ruleCall); + } + else if (!rule) { + throw new ErrorWithLocation(ruleCall.$cstNode, `Undefined rule type: ${ruleCall.$type}`); + } + else { + assertUnreachable(rule); + } +} +function buildRuleCallPredicate(rule, namedArgs) { + const predicates = namedArgs.map(e => buildPredicate(e.value)); + return (args) => { + const ruleArgs = {}; + for (let i = 0; i < predicates.length; i++) { + const ruleTarget = rule.parameters[i]; + const predicate = predicates[i]; + ruleArgs[ruleTarget.name] = predicate(args); + } + return ruleArgs; + }; +} +function buildPredicate(condition) { + if (isDisjunction(condition)) { + const left = buildPredicate(condition.left); + const right = buildPredicate(condition.right); + return (args) => (left(args) || right(args)); + } + else if (isConjunction(condition)) { + const left = buildPredicate(condition.left); + const right = buildPredicate(condition.right); + return (args) => (left(args) && right(args)); + } + else if (isNegation(condition)) { + const value = buildPredicate(condition.value); + return (args) => !value(args); + } + else if (isParameterReference(condition)) { + const name = condition.parameter.ref.name; + return (args) => args !== undefined && args[name] === true; + } + else if (isBooleanLiteral(condition)) { + const value = Boolean(condition.true); + return () => value; + } + assertUnreachable(condition); +} +function buildAlternatives(ctx, alternatives) { + if (alternatives.elements.length === 1) { + return buildElement(ctx, alternatives.elements[0]); + } + else { + const methods = []; + for (const element of alternatives.elements) { + const predicatedMethod = { + // Since we handle the guard condition in the alternative already + // We can ignore the group guard condition inside + ALT: buildElement(ctx, element, true) + }; + const guard = getGuardCondition(element); + if (guard) { + predicatedMethod.GATE = buildPredicate(guard); + } + methods.push(predicatedMethod); + } + const idx = ctx.or++; + return (args) => ctx.parser.alternatives(idx, methods.map(method => { + const alt = { + ALT: () => method.ALT(args) + }; + const gate = method.GATE; + if (gate) { + alt.GATE = () => gate(args); + } + return alt; + })); + } +} +function buildUnorderedGroup(ctx, group) { + if (group.elements.length === 1) { + return buildElement(ctx, group.elements[0]); + } + const methods = []; + for (const element of group.elements) { + const predicatedMethod = { + // Since we handle the guard condition in the alternative already + // We can ignore the group guard condition inside + ALT: buildElement(ctx, element, true) + }; + const guard = getGuardCondition(element); + if (guard) { + predicatedMethod.GATE = buildPredicate(guard); + } + methods.push(predicatedMethod); + } + const orIdx = ctx.or++; + const idFunc = (groupIdx, lParser) => { + const stackId = lParser.getRuleStack().join('-'); + return `uGroup_${groupIdx}_${stackId}`; + }; + const alternatives = (args) => ctx.parser.alternatives(orIdx, methods.map((method, idx) => { + const alt = { ALT: () => true }; + const parser = ctx.parser; + alt.ALT = () => { + method.ALT(args); + if (!parser.isRecording()) { + const key = idFunc(orIdx, parser); + if (!parser.unorderedGroups.get(key)) { + // init after clear state + parser.unorderedGroups.set(key, []); + } + const groupState = parser.unorderedGroups.get(key); + if (typeof (groupState === null || groupState === void 0 ? void 0 : groupState[idx]) === 'undefined') { + // Not accessed yet + groupState[idx] = true; + } + } + }; + const gate = method.GATE; + if (gate) { + alt.GATE = () => gate(args); + } + else { + alt.GATE = () => { + const trackedAlternatives = parser.unorderedGroups.get(idFunc(orIdx, parser)); + const allow = !(trackedAlternatives === null || trackedAlternatives === void 0 ? void 0 : trackedAlternatives[idx]); + return allow; + }; + } + return alt; + })); + const wrapped = wrap(ctx, getGuardCondition(group), alternatives, '*'); + return (args) => { + wrapped(args); + if (!ctx.parser.isRecording()) { + ctx.parser.unorderedGroups.delete(idFunc(orIdx, ctx.parser)); + } + }; +} +function buildGroup(ctx, group) { + const methods = group.elements.map(e => buildElement(ctx, e)); + return (args) => methods.forEach(method => method(args)); +} +function getGuardCondition(element) { + if (isGroup(element)) { + return element.guardCondition; + } + return undefined; +} +function buildCrossReference(ctx, crossRef, terminal = crossRef.terminal) { + if (!terminal) { + if (!crossRef.type.ref) { + throw new Error('Could not resolve reference to type: ' + crossRef.type.$refText); + } + const assignment = findNameAssignment(crossRef.type.ref); + const assignTerminal = assignment === null || assignment === void 0 ? void 0 : assignment.terminal; + if (!assignTerminal) { + throw new Error('Could not find name assignment for type: ' + getTypeName(crossRef.type.ref)); + } + return buildCrossReference(ctx, crossRef, assignTerminal); + } + else if (isRuleCall(terminal) && isParserRule(terminal.rule.ref)) { + const idx = ctx.subrule++; + return (args) => ctx.parser.subrule(idx, getRule(ctx, terminal.rule.ref), crossRef, args); + } + else if (isRuleCall(terminal) && isTerminalRule(terminal.rule.ref)) { + const idx = ctx.consume++; + const terminalRule = getToken(ctx, terminal.rule.ref.name); + return () => ctx.parser.consume(idx, terminalRule, crossRef); + } + else if (isKeyword(terminal)) { + const idx = ctx.consume++; + const keyword = getToken(ctx, terminal.value); + return () => ctx.parser.consume(idx, keyword, crossRef); + } + else { + throw new Error('Could not build cross reference parser'); + } +} +function buildKeyword(ctx, keyword) { + const idx = ctx.consume++; + const token = ctx.tokens[keyword.value]; + if (!token) { + throw new Error('Could not find token for keyword: ' + keyword.value); + } + return () => ctx.parser.consume(idx, token, keyword); +} +function wrap(ctx, guard, method, cardinality) { + const gate = guard && buildPredicate(guard); + if (!cardinality) { + if (gate) { + const idx = ctx.or++; + return (args) => ctx.parser.alternatives(idx, [ + { + ALT: () => method(args), + GATE: () => gate(args) + }, + { + ALT: EMPTY_ALT(), + GATE: () => !gate(args) + } + ]); + } + else { + return method; + } + } + if (cardinality === '*') { + const idx = ctx.many++; + return (args) => ctx.parser.many(idx, { + DEF: () => method(args), + GATE: gate ? () => gate(args) : undefined + }); + } + else if (cardinality === '+') { + const idx = ctx.many++; + if (gate) { + const orIdx = ctx.or++; + // In the case of a guard condition for the `+` group + // We combine it with an empty alternative + // If the condition returns true, it needs to parse at least a single iteration + // If its false, it is not allowed to parse anything + return (args) => ctx.parser.alternatives(orIdx, [ + { + ALT: () => ctx.parser.atLeastOne(idx, { + DEF: () => method(args) + }), + GATE: () => gate(args) + }, + { + ALT: EMPTY_ALT(), + GATE: () => !gate(args) + } + ]); + } + else { + return (args) => ctx.parser.atLeastOne(idx, { + DEF: () => method(args), + }); + } + } + else if (cardinality === '?') { + const idx = ctx.optional++; + return (args) => ctx.parser.optional(idx, { + DEF: () => method(args), + GATE: gate ? () => gate(args) : undefined + }); + } + else { + assertUnreachable(cardinality); + } +} +function getRule(ctx, element) { + const name = getRuleName(ctx, element); + const rule = ctx.rules.get(name); + if (!rule) + throw new Error(`Rule "${name}" not found."`); + return rule; +} +function getRuleName(ctx, element) { + if (isParserRule(element)) { + return element.name; + } + else if (ctx.ruleNames.has(element)) { + return ctx.ruleNames.get(element); + } + else { + let item = element; + let parent = item.$container; + let ruleName = element.$type; + while (!isParserRule(parent)) { + if (isGroup(parent) || isAlternatives(parent) || isUnorderedGroup(parent)) { + const index = parent.elements.indexOf(item); + ruleName = index.toString() + ':' + ruleName; + } + item = parent; + parent = parent.$container; + } + const rule = parent; + ruleName = rule.name + ':' + ruleName; + ctx.ruleNames.set(element, ruleName); + return ruleName; + } +} +function getToken(ctx, name) { + const token = ctx.tokens[name]; + if (!token) + throw new Error(`Token "${name}" not found."`); + return token; +} +//# sourceMappingURL=parser-builder-base.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/parser/completion-parser-builder.js +/****************************************************************************** + * Copyright 2022 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + + +function createCompletionParser(services) { + const grammar = services.Grammar; + const lexer = services.parser.Lexer; + const parser = new LangiumCompletionParser(services); + createParser(grammar, parser, lexer.definition); + parser.finalize(); + return parser; +} +//# sourceMappingURL=completion-parser-builder.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/parser/langium-parser-builder.js +/****************************************************************************** + * Copyright 2021 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + + +/** + * Create and finalize a Langium parser. The parser rules are derived from the grammar, which is + * available at `services.Grammar`. + */ +function createLangiumParser(services) { + const parser = prepareLangiumParser(services); + parser.finalize(); + return parser; +} +/** + * Create a Langium parser without finalizing it. This is used to extract more detailed error + * information when the parser is initially validated. + */ +function prepareLangiumParser(services) { + const grammar = services.Grammar; + const lexer = services.parser.Lexer; + const parser = new LangiumParser(services); + return createParser(grammar, parser, lexer.definition); +} +//# sourceMappingURL=langium-parser-builder.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/parser/token-builder.js +/****************************************************************************** + * Copyright 2021 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + + + + + + +class DefaultTokenBuilder { + buildTokens(grammar, options) { + const reachableRules = stream_stream(getAllReachableRules(grammar, false)); + const terminalTokens = this.buildTerminalTokens(reachableRules); + const tokens = this.buildKeywordTokens(reachableRules, terminalTokens, options); + terminalTokens.forEach(terminalToken => { + const pattern = terminalToken.PATTERN; + if (typeof pattern === 'object' && pattern && 'test' in pattern && isWhitespace(pattern)) { + tokens.unshift(terminalToken); + } + else { + tokens.push(terminalToken); + } + }); + // We don't need to add the EOF token explicitly. + // It is automatically available at the end of the token stream. + return tokens; + } + buildTerminalTokens(rules) { + return rules.filter(isTerminalRule).filter(e => !e.fragment) + .map(terminal => this.buildTerminalToken(terminal)).toArray(); + } + buildTerminalToken(terminal) { + const regex = terminalRegex(terminal); + const pattern = this.requiresCustomPattern(regex) ? this.regexPatternFunction(regex) : regex; + const tokenType = { + name: terminal.name, + PATTERN: pattern, + LINE_BREAKS: true + }; + if (terminal.hidden) { + // Only skip tokens that are able to accept whitespace + tokenType.GROUP = isWhitespace(regex) ? Lexer.SKIPPED : 'hidden'; + } + return tokenType; + } + requiresCustomPattern(regex) { + if (regex.flags.includes('u')) { + // Unicode regexes are not supported by Chevrotain. + return true; + } + else if (regex.source.includes('?<=') || regex.source.includes('?<!')) { + // Negative and positive lookbehind are not supported by Chevrotain yet. + return true; + } + else { + return false; + } + } + regexPatternFunction(regex) { + const stickyRegex = new RegExp(regex, regex.flags + 'y'); + return (text, offset) => { + stickyRegex.lastIndex = offset; + const execResult = stickyRegex.exec(text); + return execResult; + }; + } + buildKeywordTokens(rules, terminalTokens, options) { + return rules + // We filter by parser rules, since keywords in terminal rules get transformed into regex and are not actual tokens + .filter(isParserRule) + .flatMap(rule => ast_utils_streamAllContents(rule).filter(isKeyword)) + .distinct(e => e.value).toArray() + // Sort keywords by descending length + .sort((a, b) => b.value.length - a.value.length) + .map(keyword => this.buildKeywordToken(keyword, terminalTokens, Boolean(options === null || options === void 0 ? void 0 : options.caseInsensitive))); + } + buildKeywordToken(keyword, terminalTokens, caseInsensitive) { + return { + name: keyword.value, + PATTERN: this.buildKeywordPattern(keyword, caseInsensitive), + LONGER_ALT: this.findLongerAlt(keyword, terminalTokens) + }; + } + buildKeywordPattern(keyword, caseInsensitive) { + return caseInsensitive ? + new RegExp(getCaseInsensitivePattern(keyword.value)) : + keyword.value; + } + findLongerAlt(keyword, terminalTokens) { + return terminalTokens.reduce((longerAlts, token) => { + const pattern = token === null || token === void 0 ? void 0 : token.PATTERN; + if ((pattern === null || pattern === void 0 ? void 0 : pattern.source) && partialMatches('^' + pattern.source + '$', keyword.value)) { + longerAlts.push(token); + } + return longerAlts; + }, []); + } +} +//# sourceMappingURL=token-builder.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/parser/value-converter.js +/****************************************************************************** + * Copyright 2021 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + + +class DefaultValueConverter { + convert(input, cstNode) { + let feature = cstNode.grammarSource; + if (isCrossReference(feature)) { + feature = getCrossReferenceTerminal(feature); + } + if (isRuleCall(feature)) { + const rule = feature.rule.ref; + if (!rule) { + throw new Error('This cst node was not parsed by a rule.'); + } + return this.runConverter(rule, input, cstNode); + } + return input; + } + // eslint-disable-next-line @typescript-eslint/no-unused-vars + runConverter(rule, input, cstNode) { + var _a; + switch (rule.name.toUpperCase()) { + case 'INT': return ValueConverter.convertInt(input); + case 'STRING': return ValueConverter.convertString(input); + case 'ID': return ValueConverter.convertID(input); + } + switch ((_a = getRuleType(rule)) === null || _a === void 0 ? void 0 : _a.toLowerCase()) { + case 'number': return ValueConverter.convertNumber(input); + case 'boolean': return ValueConverter.convertBoolean(input); + case 'bigint': return ValueConverter.convertBigint(input); + case 'date': return ValueConverter.convertDate(input); + default: return input; + } + } +} +var ValueConverter; +(function (ValueConverter) { + function convertString(input) { + let result = ''; + for (let i = 1; i < input.length - 1; i++) { + const c = input.charAt(i); + if (c === '\\') { + const c1 = input.charAt(++i); + result += convertEscapeCharacter(c1); + } + else { + result += c; + } + } + return result; + } + ValueConverter.convertString = convertString; + function convertEscapeCharacter(char) { + switch (char) { + case 'b': return '\b'; + case 'f': return '\f'; + case 'n': return '\n'; + case 'r': return '\r'; + case 't': return '\t'; + case 'v': return '\v'; + case '0': return '\0'; + default: return char; + } + } + function convertID(input) { + if (input.charAt(0) === '^') { + return input.substring(1); + } + else { + return input; + } + } + ValueConverter.convertID = convertID; + function convertInt(input) { + return parseInt(input); + } + ValueConverter.convertInt = convertInt; + function convertBigint(input) { + return BigInt(input); + } + ValueConverter.convertBigint = convertBigint; + function convertDate(input) { + return new Date(input); + } + ValueConverter.convertDate = convertDate; + function convertNumber(input) { + return Number(input); + } + ValueConverter.convertNumber = convertNumber; + function convertBoolean(input) { + return input.toLowerCase() === 'true'; + } + ValueConverter.convertBoolean = convertBoolean; +})(ValueConverter || (ValueConverter = {})); +//# sourceMappingURL=value-converter.js.map +// EXTERNAL MODULE: ./node_modules/vscode-jsonrpc/lib/common/cancellation.js +var cancellation = __webpack_require__(59850); +;// CONCATENATED MODULE: ./node_modules/langium/lib/utils/cancellation.js +/****************************************************************************** + * Copyright 2024 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ +// eslint-disable-next-line no-restricted-imports + +//# sourceMappingURL=cancellation.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/utils/promise-utils.js +/****************************************************************************** + * Copyright 2021 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + +/** + * Delays the execution of the current code to the next tick of the event loop. + * Don't call this method directly in a tight loop to prevent too many promises from being created. + */ +function delayNextTick() { + return new Promise(resolve => { + // In case we are running in a non-node environment, `setImmediate` isn't available. + // Using `setTimeout` of the browser API accomplishes the same result. + if (typeof setImmediate === 'undefined') { + setTimeout(resolve, 0); + } + else { + setImmediate(resolve); + } + }); +} +let lastTick = 0; +let globalInterruptionPeriod = 10; +/** + * Reset the global interruption period and create a cancellation token source. + */ +function startCancelableOperation() { + lastTick = Date.now(); + return new CancellationTokenSource(); +} +/** + * Change the period duration for `interruptAndCheck` to the given number of milliseconds. + * The default value is 10ms. + */ +function setInterruptionPeriod(period) { + globalInterruptionPeriod = period; +} +/** + * This symbol may be thrown in an asynchronous context by any Langium service that receives + * a `CancellationToken`. This means that the promise returned by such a service is rejected with + * this symbol as rejection reason. + */ +const promise_utils_OperationCancelled = Symbol('OperationCancelled'); +/** + * Use this in a `catch` block to check whether the thrown object indicates that the operation + * has been cancelled. + */ +function isOperationCancelled(err) { + return err === promise_utils_OperationCancelled; +} +/** + * This function does two things: + * 1. Check the elapsed time since the last call to this function or to `startCancelableOperation`. If the predefined + * period (configured with `setInterruptionPeriod`) is exceeded, execution is delayed with `delayNextTick`. + * 2. If the predefined period is not met yet or execution is resumed after an interruption, the given cancellation + * token is checked, and if cancellation is requested, `OperationCanceled` is thrown. + * + * All services in Langium that receive a `CancellationToken` may potentially call this function, so the + * `CancellationToken` must be caught (with an `async` try-catch block or a `catch` callback attached to + * the promise) to avoid that event being exposed as an error. + */ +async function interruptAndCheck(token) { + if (token === cancellation/* CancellationToken */.XO.None) { + // Early exit in case cancellation was disabled by the caller + return; + } + const current = Date.now(); + if (current - lastTick >= globalInterruptionPeriod) { + lastTick = current; + await delayNextTick(); + } + if (token.isCancellationRequested) { + throw promise_utils_OperationCancelled; + } +} +/** + * Simple implementation of the deferred pattern. + * An object that exposes a promise and functions to resolve and reject it. + */ +class promise_utils_Deferred { + constructor() { + this.promise = new Promise((resolve, reject) => { + this.resolve = (arg) => { + resolve(arg); + return this; + }; + this.reject = (err) => { + reject(err); + return this; + }; + }); + } +} +//# sourceMappingURL=promise-utils.js.map +;// CONCATENATED MODULE: ./node_modules/vscode-languageserver-textdocument/lib/esm/main.js +/* -------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + * ------------------------------------------------------------------------------------------ */ + +class main_FullTextDocument { + constructor(uri, languageId, version, content) { + this._uri = uri; + this._languageId = languageId; + this._version = version; + this._content = content; + this._lineOffsets = undefined; + } + get uri() { + return this._uri; + } + get languageId() { + return this._languageId; + } + get version() { + return this._version; + } + getText(range) { + if (range) { + const start = this.offsetAt(range.start); + const end = this.offsetAt(range.end); + return this._content.substring(start, end); + } + return this._content; + } + update(changes, version) { + for (const change of changes) { + if (main_FullTextDocument.isIncremental(change)) { + // makes sure start is before end + const range = getWellformedRange(change.range); + // update content + const startOffset = this.offsetAt(range.start); + const endOffset = this.offsetAt(range.end); + this._content = this._content.substring(0, startOffset) + change.text + this._content.substring(endOffset, this._content.length); + // update the offsets + const startLine = Math.max(range.start.line, 0); + const endLine = Math.max(range.end.line, 0); + let lineOffsets = this._lineOffsets; + const addedLineOffsets = computeLineOffsets(change.text, false, startOffset); + if (endLine - startLine === addedLineOffsets.length) { + for (let i = 0, len = addedLineOffsets.length; i < len; i++) { + lineOffsets[i + startLine + 1] = addedLineOffsets[i]; + } + } + else { + if (addedLineOffsets.length < 10000) { + lineOffsets.splice(startLine + 1, endLine - startLine, ...addedLineOffsets); + } + else { // avoid too many arguments for splice + this._lineOffsets = lineOffsets = lineOffsets.slice(0, startLine + 1).concat(addedLineOffsets, lineOffsets.slice(endLine + 1)); + } + } + const diff = change.text.length - (endOffset - startOffset); + if (diff !== 0) { + for (let i = startLine + 1 + addedLineOffsets.length, len = lineOffsets.length; i < len; i++) { + lineOffsets[i] = lineOffsets[i] + diff; + } + } + } + else if (main_FullTextDocument.isFull(change)) { + this._content = change.text; + this._lineOffsets = undefined; + } + else { + throw new Error('Unknown change event received'); + } + } + this._version = version; + } + getLineOffsets() { + if (this._lineOffsets === undefined) { + this._lineOffsets = computeLineOffsets(this._content, true); + } + return this._lineOffsets; + } + positionAt(offset) { + offset = Math.max(Math.min(offset, this._content.length), 0); + const lineOffsets = this.getLineOffsets(); + let low = 0, high = lineOffsets.length; + if (high === 0) { + return { line: 0, character: offset }; + } + while (low < high) { + const mid = Math.floor((low + high) / 2); + if (lineOffsets[mid] > offset) { + high = mid; + } + else { + low = mid + 1; + } + } + // low is the least x for which the line offset is larger than the current offset + // or array.length if no line offset is larger than the current offset + const line = low - 1; + offset = this.ensureBeforeEOL(offset, lineOffsets[line]); + return { line, character: offset - lineOffsets[line] }; + } + offsetAt(position) { + const lineOffsets = this.getLineOffsets(); + if (position.line >= lineOffsets.length) { + return this._content.length; + } + else if (position.line < 0) { + return 0; + } + const lineOffset = lineOffsets[position.line]; + if (position.character <= 0) { + return lineOffset; + } + const nextLineOffset = (position.line + 1 < lineOffsets.length) ? lineOffsets[position.line + 1] : this._content.length; + const offset = Math.min(lineOffset + position.character, nextLineOffset); + return this.ensureBeforeEOL(offset, lineOffset); + } + ensureBeforeEOL(offset, lineOffset) { + while (offset > lineOffset && isEOL(this._content.charCodeAt(offset - 1))) { + offset--; + } + return offset; + } + get lineCount() { + return this.getLineOffsets().length; + } + static isIncremental(event) { + const candidate = event; + return candidate !== undefined && candidate !== null && + typeof candidate.text === 'string' && candidate.range !== undefined && + (candidate.rangeLength === undefined || typeof candidate.rangeLength === 'number'); + } + static isFull(event) { + const candidate = event; + return candidate !== undefined && candidate !== null && + typeof candidate.text === 'string' && candidate.range === undefined && candidate.rangeLength === undefined; + } +} +var main_TextDocument; +(function (TextDocument) { + /** + * Creates a new text document. + * + * @param uri The document's uri. + * @param languageId The document's language Id. + * @param version The document's initial version number. + * @param content The document's content. + */ + function create(uri, languageId, version, content) { + return new main_FullTextDocument(uri, languageId, version, content); + } + TextDocument.create = create; + /** + * Updates a TextDocument by modifying its content. + * + * @param document the document to update. Only documents created by TextDocument.create are valid inputs. + * @param changes the changes to apply to the document. + * @param version the changes version for the document. + * @returns The updated TextDocument. Note: That's the same document instance passed in as first parameter. + * + */ + function update(document, changes, version) { + if (document instanceof main_FullTextDocument) { + document.update(changes, version); + return document; + } + else { + throw new Error('TextDocument.update: document must be created by TextDocument.create'); + } + } + TextDocument.update = update; + function applyEdits(document, edits) { + const text = document.getText(); + const sortedEdits = mergeSort(edits.map(getWellformedEdit), (a, b) => { + const diff = a.range.start.line - b.range.start.line; + if (diff === 0) { + return a.range.start.character - b.range.start.character; + } + return diff; + }); + let lastModifiedOffset = 0; + const spans = []; + for (const e of sortedEdits) { + const startOffset = document.offsetAt(e.range.start); + if (startOffset < lastModifiedOffset) { + throw new Error('Overlapping edit'); + } + else if (startOffset > lastModifiedOffset) { + spans.push(text.substring(lastModifiedOffset, startOffset)); + } + if (e.newText.length) { + spans.push(e.newText); + } + lastModifiedOffset = document.offsetAt(e.range.end); + } + spans.push(text.substr(lastModifiedOffset)); + return spans.join(''); + } + TextDocument.applyEdits = applyEdits; +})(main_TextDocument || (main_TextDocument = {})); +function mergeSort(data, compare) { + if (data.length <= 1) { + // sorted + return data; + } + const p = (data.length / 2) | 0; + const left = data.slice(0, p); + const right = data.slice(p); + mergeSort(left, compare); + mergeSort(right, compare); + let leftIdx = 0; + let rightIdx = 0; + let i = 0; + while (leftIdx < left.length && rightIdx < right.length) { + const ret = compare(left[leftIdx], right[rightIdx]); + if (ret <= 0) { + // smaller_equal -> take left to preserve order + data[i++] = left[leftIdx++]; + } + else { + // greater -> take right + data[i++] = right[rightIdx++]; + } + } + while (leftIdx < left.length) { + data[i++] = left[leftIdx++]; + } + while (rightIdx < right.length) { + data[i++] = right[rightIdx++]; + } + return data; +} +function computeLineOffsets(text, isAtLineStart, textOffset = 0) { + const result = isAtLineStart ? [textOffset] : []; + for (let i = 0; i < text.length; i++) { + const ch = text.charCodeAt(i); + if (isEOL(ch)) { + if (ch === 13 /* CharCode.CarriageReturn */ && i + 1 < text.length && text.charCodeAt(i + 1) === 10 /* CharCode.LineFeed */) { + i++; + } + result.push(textOffset + i + 1); + } + } + return result; +} +function isEOL(char) { + return char === 13 /* CharCode.CarriageReturn */ || char === 10 /* CharCode.LineFeed */; +} +function getWellformedRange(range) { + const start = range.start; + const end = range.end; + if (start.line > end.line || (start.line === end.line && start.character > end.character)) { + return { start: end, end: start }; + } + return range; +} +function getWellformedEdit(textEdit) { + const range = getWellformedRange(textEdit.range); + if (range !== textEdit.range) { + return { newText: textEdit.newText, range }; + } + return textEdit; +} + +;// CONCATENATED MODULE: ./node_modules/vscode-uri/lib/esm/index.mjs +/* provided dependency */ var process = __webpack_require__(65606); +var LIB;(()=>{"use strict";var t={470:t=>{function e(t){if("string"!=typeof t)throw new TypeError("Path must be a string. Received "+JSON.stringify(t))}function r(t,e){for(var r,n="",i=0,o=-1,s=0,h=0;h<=t.length;++h){if(h<t.length)r=t.charCodeAt(h);else{if(47===r)break;r=47}if(47===r){if(o===h-1||1===s);else if(o!==h-1&&2===s){if(n.length<2||2!==i||46!==n.charCodeAt(n.length-1)||46!==n.charCodeAt(n.length-2))if(n.length>2){var a=n.lastIndexOf("/");if(a!==n.length-1){-1===a?(n="",i=0):i=(n=n.slice(0,a)).length-1-n.lastIndexOf("/"),o=h,s=0;continue}}else if(2===n.length||1===n.length){n="",i=0,o=h,s=0;continue}e&&(n.length>0?n+="/..":n="..",i=2)}else n.length>0?n+="/"+t.slice(o+1,h):n=t.slice(o+1,h),i=h-o-1;o=h,s=0}else 46===r&&-1!==s?++s:s=-1}return n}var n={resolve:function(){for(var t,n="",i=!1,o=arguments.length-1;o>=-1&&!i;o--){var s;o>=0?s=arguments[o]:(void 0===t&&(t=process.cwd()),s=t),e(s),0!==s.length&&(n=s+"/"+n,i=47===s.charCodeAt(0))}return n=r(n,!i),i?n.length>0?"/"+n:"/":n.length>0?n:"."},normalize:function(t){if(e(t),0===t.length)return".";var n=47===t.charCodeAt(0),i=47===t.charCodeAt(t.length-1);return 0!==(t=r(t,!n)).length||n||(t="."),t.length>0&&i&&(t+="/"),n?"/"+t:t},isAbsolute:function(t){return e(t),t.length>0&&47===t.charCodeAt(0)},join:function(){if(0===arguments.length)return".";for(var t,r=0;r<arguments.length;++r){var i=arguments[r];e(i),i.length>0&&(void 0===t?t=i:t+="/"+i)}return void 0===t?".":n.normalize(t)},relative:function(t,r){if(e(t),e(r),t===r)return"";if((t=n.resolve(t))===(r=n.resolve(r)))return"";for(var i=1;i<t.length&&47===t.charCodeAt(i);++i);for(var o=t.length,s=o-i,h=1;h<r.length&&47===r.charCodeAt(h);++h);for(var a=r.length-h,c=s<a?s:a,f=-1,u=0;u<=c;++u){if(u===c){if(a>c){if(47===r.charCodeAt(h+u))return r.slice(h+u+1);if(0===u)return r.slice(h+u)}else s>c&&(47===t.charCodeAt(i+u)?f=u:0===u&&(f=0));break}var l=t.charCodeAt(i+u);if(l!==r.charCodeAt(h+u))break;47===l&&(f=u)}var g="";for(u=i+f+1;u<=o;++u)u!==o&&47!==t.charCodeAt(u)||(0===g.length?g+="..":g+="/..");return g.length>0?g+r.slice(h+f):(h+=f,47===r.charCodeAt(h)&&++h,r.slice(h))},_makeLong:function(t){return t},dirname:function(t){if(e(t),0===t.length)return".";for(var r=t.charCodeAt(0),n=47===r,i=-1,o=!0,s=t.length-1;s>=1;--s)if(47===(r=t.charCodeAt(s))){if(!o){i=s;break}}else o=!1;return-1===i?n?"/":".":n&&1===i?"//":t.slice(0,i)},basename:function(t,r){if(void 0!==r&&"string"!=typeof r)throw new TypeError('"ext" argument must be a string');e(t);var n,i=0,o=-1,s=!0;if(void 0!==r&&r.length>0&&r.length<=t.length){if(r.length===t.length&&r===t)return"";var h=r.length-1,a=-1;for(n=t.length-1;n>=0;--n){var c=t.charCodeAt(n);if(47===c){if(!s){i=n+1;break}}else-1===a&&(s=!1,a=n+1),h>=0&&(c===r.charCodeAt(h)?-1==--h&&(o=n):(h=-1,o=a))}return i===o?o=a:-1===o&&(o=t.length),t.slice(i,o)}for(n=t.length-1;n>=0;--n)if(47===t.charCodeAt(n)){if(!s){i=n+1;break}}else-1===o&&(s=!1,o=n+1);return-1===o?"":t.slice(i,o)},extname:function(t){e(t);for(var r=-1,n=0,i=-1,o=!0,s=0,h=t.length-1;h>=0;--h){var a=t.charCodeAt(h);if(47!==a)-1===i&&(o=!1,i=h+1),46===a?-1===r?r=h:1!==s&&(s=1):-1!==r&&(s=-1);else if(!o){n=h+1;break}}return-1===r||-1===i||0===s||1===s&&r===i-1&&r===n+1?"":t.slice(r,i)},format:function(t){if(null===t||"object"!=typeof t)throw new TypeError('The "pathObject" argument must be of type Object. Received type '+typeof t);return function(t,e){var r=e.dir||e.root,n=e.base||(e.name||"")+(e.ext||"");return r?r===e.root?r+n:r+"/"+n:n}(0,t)},parse:function(t){e(t);var r={root:"",dir:"",base:"",ext:"",name:""};if(0===t.length)return r;var n,i=t.charCodeAt(0),o=47===i;o?(r.root="/",n=1):n=0;for(var s=-1,h=0,a=-1,c=!0,f=t.length-1,u=0;f>=n;--f)if(47!==(i=t.charCodeAt(f)))-1===a&&(c=!1,a=f+1),46===i?-1===s?s=f:1!==u&&(u=1):-1!==s&&(u=-1);else if(!c){h=f+1;break}return-1===s||-1===a||0===u||1===u&&s===a-1&&s===h+1?-1!==a&&(r.base=r.name=0===h&&o?t.slice(1,a):t.slice(h,a)):(0===h&&o?(r.name=t.slice(1,s),r.base=t.slice(1,a)):(r.name=t.slice(h,s),r.base=t.slice(h,a)),r.ext=t.slice(s,a)),h>0?r.dir=t.slice(0,h-1):o&&(r.dir="/"),r},sep:"/",delimiter:":",win32:null,posix:null};n.posix=n,t.exports=n}},e={};function r(n){var i=e[n];if(void 0!==i)return i.exports;var o=e[n]={exports:{}};return t[n](o,o.exports,r),o.exports}r.d=(t,e)=>{for(var n in e)r.o(e,n)&&!r.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]})},r.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})};var n={};(()=>{let t;if(r.r(n),r.d(n,{URI:()=>f,Utils:()=>P}),"object"==typeof process)t="win32"===process.platform;else if("object"==typeof navigator){let e=navigator.userAgent;t=e.indexOf("Windows")>=0}const e=/^\w[\w\d+.-]*$/,i=/^\//,o=/^\/\//;function s(t,r){if(!t.scheme&&r)throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${t.authority}", path: "${t.path}", query: "${t.query}", fragment: "${t.fragment}"}`);if(t.scheme&&!e.test(t.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(t.path)if(t.authority){if(!i.test(t.path))throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(o.test(t.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}const h="",a="/",c=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class f{static isUri(t){return t instanceof f||!!t&&"string"==typeof t.authority&&"string"==typeof t.fragment&&"string"==typeof t.path&&"string"==typeof t.query&&"string"==typeof t.scheme&&"string"==typeof t.fsPath&&"function"==typeof t.with&&"function"==typeof t.toString}scheme;authority;path;query;fragment;constructor(t,e,r,n,i,o=!1){"object"==typeof t?(this.scheme=t.scheme||h,this.authority=t.authority||h,this.path=t.path||h,this.query=t.query||h,this.fragment=t.fragment||h):(this.scheme=function(t,e){return t||e?t:"file"}(t,o),this.authority=e||h,this.path=function(t,e){switch(t){case"https":case"http":case"file":e?e[0]!==a&&(e=a+e):e=a}return e}(this.scheme,r||h),this.query=n||h,this.fragment=i||h,s(this,o))}get fsPath(){return m(this,!1)}with(t){if(!t)return this;let{scheme:e,authority:r,path:n,query:i,fragment:o}=t;return void 0===e?e=this.scheme:null===e&&(e=h),void 0===r?r=this.authority:null===r&&(r=h),void 0===n?n=this.path:null===n&&(n=h),void 0===i?i=this.query:null===i&&(i=h),void 0===o?o=this.fragment:null===o&&(o=h),e===this.scheme&&r===this.authority&&n===this.path&&i===this.query&&o===this.fragment?this:new l(e,r,n,i,o)}static parse(t,e=!1){const r=c.exec(t);return r?new l(r[2]||h,C(r[4]||h),C(r[5]||h),C(r[7]||h),C(r[9]||h),e):new l(h,h,h,h,h)}static file(e){let r=h;if(t&&(e=e.replace(/\\/g,a)),e[0]===a&&e[1]===a){const t=e.indexOf(a,2);-1===t?(r=e.substring(2),e=a):(r=e.substring(2,t),e=e.substring(t)||a)}return new l("file",r,e,h,h)}static from(t){const e=new l(t.scheme,t.authority,t.path,t.query,t.fragment);return s(e,!0),e}toString(t=!1){return y(this,t)}toJSON(){return this}static revive(t){if(t){if(t instanceof f)return t;{const e=new l(t);return e._formatted=t.external,e._fsPath=t._sep===u?t.fsPath:null,e}}return t}}const u=t?1:void 0;class l extends f{_formatted=null;_fsPath=null;get fsPath(){return this._fsPath||(this._fsPath=m(this,!1)),this._fsPath}toString(t=!1){return t?y(this,!0):(this._formatted||(this._formatted=y(this,!1)),this._formatted)}toJSON(){const t={$mid:1};return this._fsPath&&(t.fsPath=this._fsPath,t._sep=u),this._formatted&&(t.external=this._formatted),this.path&&(t.path=this.path),this.scheme&&(t.scheme=this.scheme),this.authority&&(t.authority=this.authority),this.query&&(t.query=this.query),this.fragment&&(t.fragment=this.fragment),t}}const g={58:"%3A",47:"%2F",63:"%3F",35:"%23",91:"%5B",93:"%5D",64:"%40",33:"%21",36:"%24",38:"%26",39:"%27",40:"%28",41:"%29",42:"%2A",43:"%2B",44:"%2C",59:"%3B",61:"%3D",32:"%20"};function d(t,e,r){let n,i=-1;for(let o=0;o<t.length;o++){const s=t.charCodeAt(o);if(s>=97&&s<=122||s>=65&&s<=90||s>=48&&s<=57||45===s||46===s||95===s||126===s||e&&47===s||r&&91===s||r&&93===s||r&&58===s)-1!==i&&(n+=encodeURIComponent(t.substring(i,o)),i=-1),void 0!==n&&(n+=t.charAt(o));else{void 0===n&&(n=t.substr(0,o));const e=g[s];void 0!==e?(-1!==i&&(n+=encodeURIComponent(t.substring(i,o)),i=-1),n+=e):-1===i&&(i=o)}}return-1!==i&&(n+=encodeURIComponent(t.substring(i))),void 0!==n?n:t}function p(t){let e;for(let r=0;r<t.length;r++){const n=t.charCodeAt(r);35===n||63===n?(void 0===e&&(e=t.substr(0,r)),e+=g[n]):void 0!==e&&(e+=t[r])}return void 0!==e?e:t}function m(e,r){let n;return n=e.authority&&e.path.length>1&&"file"===e.scheme?`//${e.authority}${e.path}`:47===e.path.charCodeAt(0)&&(e.path.charCodeAt(1)>=65&&e.path.charCodeAt(1)<=90||e.path.charCodeAt(1)>=97&&e.path.charCodeAt(1)<=122)&&58===e.path.charCodeAt(2)?r?e.path.substr(1):e.path[1].toLowerCase()+e.path.substr(2):e.path,t&&(n=n.replace(/\//g,"\\")),n}function y(t,e){const r=e?p:d;let n="",{scheme:i,authority:o,path:s,query:h,fragment:c}=t;if(i&&(n+=i,n+=":"),(o||"file"===i)&&(n+=a,n+=a),o){let t=o.indexOf("@");if(-1!==t){const e=o.substr(0,t);o=o.substr(t+1),t=e.lastIndexOf(":"),-1===t?n+=r(e,!1,!1):(n+=r(e.substr(0,t),!1,!1),n+=":",n+=r(e.substr(t+1),!1,!0)),n+="@"}o=o.toLowerCase(),t=o.lastIndexOf(":"),-1===t?n+=r(o,!1,!0):(n+=r(o.substr(0,t),!1,!0),n+=o.substr(t))}if(s){if(s.length>=3&&47===s.charCodeAt(0)&&58===s.charCodeAt(2)){const t=s.charCodeAt(1);t>=65&&t<=90&&(s=`/${String.fromCharCode(t+32)}:${s.substr(3)}`)}else if(s.length>=2&&58===s.charCodeAt(1)){const t=s.charCodeAt(0);t>=65&&t<=90&&(s=`${String.fromCharCode(t+32)}:${s.substr(2)}`)}n+=r(s,!0,!1)}return h&&(n+="?",n+=r(h,!1,!1)),c&&(n+="#",n+=e?c:d(c,!1,!1)),n}function v(t){try{return decodeURIComponent(t)}catch{return t.length>3?t.substr(0,3)+v(t.substr(3)):t}}const b=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function C(t){return t.match(b)?t.replace(b,(t=>v(t))):t}var A=r(470);const w=A.posix||A,x="/";var P;!function(t){t.joinPath=function(t,...e){return t.with({path:w.join(t.path,...e)})},t.resolvePath=function(t,...e){let r=t.path,n=!1;r[0]!==x&&(r=x+r,n=!0);let i=w.resolve(r,...e);return n&&i[0]===x&&!t.authority&&(i=i.substring(1)),t.with({path:i})},t.dirname=function(t){if(0===t.path.length||t.path===x)return t;let e=w.dirname(t.path);return 1===e.length&&46===e.charCodeAt(0)&&(e=""),t.with({path:e})},t.basename=function(t){return w.basename(t.path)},t.extname=function(t){return w.extname(t.path)}}(P||(P={}))})(),LIB=n})();const{URI: esm_URI,Utils}=LIB; +//# sourceMappingURL=index.mjs.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/utils/uri-utils.js +/****************************************************************************** + * Copyright 2022 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + + +var UriUtils; +(function (UriUtils) { + UriUtils.basename = Utils.basename; + UriUtils.dirname = Utils.dirname; + UriUtils.extname = Utils.extname; + UriUtils.joinPath = Utils.joinPath; + UriUtils.resolvePath = Utils.resolvePath; + function equals(a, b) { + return (a === null || a === void 0 ? void 0 : a.toString()) === (b === null || b === void 0 ? void 0 : b.toString()); + } + UriUtils.equals = equals; + function relative(from, to) { + const fromPath = typeof from === 'string' ? from : from.path; + const toPath = typeof to === 'string' ? to : to.path; + const fromParts = fromPath.split('/').filter(e => e.length > 0); + const toParts = toPath.split('/').filter(e => e.length > 0); + let i = 0; + for (; i < fromParts.length; i++) { + if (fromParts[i] !== toParts[i]) { + break; + } + } + const backPart = '../'.repeat(fromParts.length - i); + const toPart = toParts.slice(i).join('/'); + return backPart + toPart; + } + UriUtils.relative = relative; +})(UriUtils || (UriUtils = {})); +//# sourceMappingURL=uri-utils.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/workspace/documents.js +/****************************************************************************** + * Copyright 2021 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ +/** + * Re-export 'TextDocument' from 'vscode-languageserver-textdocument' for convenience, + * including both type _and_ symbol (namespace), as we here and there also refer to the symbol, + * the overhead is very small, just a few kilobytes. + * Everything else of that package (at the time contributing) is also defined + * in 'vscode-languageserver-protocol' or 'vscode-languageserver-types'. + */ + + + + + +/** + * A document is subject to several phases that are run in predefined order. Any state value implies that + * smaller state values are finished as well. + */ +var DocumentState; +(function (DocumentState) { + /** + * The text content has changed and needs to be parsed again. The AST held by this outdated + * document instance is no longer valid. + */ + DocumentState[DocumentState["Changed"] = 0] = "Changed"; + /** + * An AST has been created from the text content. The document structure can be traversed, + * but cross-references cannot be resolved yet. If necessary, the structure can be manipulated + * at this stage as a preprocessing step. + */ + DocumentState[DocumentState["Parsed"] = 1] = "Parsed"; + /** + * The `IndexManager` service has processed AST nodes of this document. This means the + * exported symbols are available in the global scope and can be resolved from other documents. + */ + DocumentState[DocumentState["IndexedContent"] = 2] = "IndexedContent"; + /** + * The `ScopeComputation` service has processed this document. This means the local symbols + * are stored in a MultiMap so they can be looked up by the `ScopeProvider` service. + * Once a document has reached this state, you may follow every reference - it will lazily + * resolve its `ref` property and yield either the target AST node or `undefined` in case + * the target is not in scope. + */ + DocumentState[DocumentState["ComputedScopes"] = 3] = "ComputedScopes"; + /** + * The `Linker` service has processed this document. All outgoing references have been + * resolved or marked as erroneous. + */ + DocumentState[DocumentState["Linked"] = 4] = "Linked"; + /** + * The `IndexManager` service has processed AST node references of this document. This is + * necessary to determine which documents are affected by a change in one of the workspace + * documents. + */ + DocumentState[DocumentState["IndexedReferences"] = 5] = "IndexedReferences"; + /** + * The `DocumentValidator` service has processed this document. The language server listens + * to the results of this phase and sends diagnostics to the client. + */ + DocumentState[DocumentState["Validated"] = 6] = "Validated"; +})(DocumentState || (DocumentState = {})); +class DefaultLangiumDocumentFactory { + constructor(services) { + this.serviceRegistry = services.ServiceRegistry; + this.textDocuments = services.workspace.TextDocuments; + this.fileSystemProvider = services.workspace.FileSystemProvider; + } + async fromUri(uri, cancellationToken = cancellation/* CancellationToken */.XO.None) { + const content = await this.fileSystemProvider.readFile(uri); + return this.createAsync(uri, content, cancellationToken); + } + fromTextDocument(textDocument, uri, cancellationToken) { + uri = uri !== null && uri !== void 0 ? uri : esm_URI.parse(textDocument.uri); + if (cancellationToken) { + return this.createAsync(uri, textDocument, cancellationToken); + } + else { + return this.create(uri, textDocument); + } + } + fromString(text, uri, cancellationToken) { + if (cancellationToken) { + return this.createAsync(uri, text, cancellationToken); + } + else { + return this.create(uri, text); + } + } + fromModel(model, uri) { + return this.create(uri, { $model: model }); + } + create(uri, content) { + if (typeof content === 'string') { + const parseResult = this.parse(uri, content); + return this.createLangiumDocument(parseResult, uri, undefined, content); + } + else if ('$model' in content) { + const parseResult = { value: content.$model, parserErrors: [], lexerErrors: [] }; + return this.createLangiumDocument(parseResult, uri); + } + else { + const parseResult = this.parse(uri, content.getText()); + return this.createLangiumDocument(parseResult, uri, content); + } + } + async createAsync(uri, content, cancelToken) { + if (typeof content === 'string') { + const parseResult = await this.parseAsync(uri, content, cancelToken); + return this.createLangiumDocument(parseResult, uri, undefined, content); + } + else { + const parseResult = await this.parseAsync(uri, content.getText(), cancelToken); + return this.createLangiumDocument(parseResult, uri, content); + } + } + /** + * Create a LangiumDocument from a given parse result. + * + * A TextDocument is created on demand if it is not provided as argument here. Usually this + * should not be necessary because the main purpose of the TextDocument is to convert between + * text ranges and offsets, which is done solely in LSP request handling. + * + * With the introduction of {@link update} below this method is supposed to be mainly called + * during workspace initialization and on addition/recognition of new files, while changes in + * existing documents are processed via {@link update}. + */ + createLangiumDocument(parseResult, uri, textDocument, text) { + let document; + if (textDocument) { + document = { + parseResult, + uri, + state: DocumentState.Parsed, + references: [], + textDocument + }; + } + else { + const textDocumentGetter = this.createTextDocumentGetter(uri, text); + document = { + parseResult, + uri, + state: DocumentState.Parsed, + references: [], + get textDocument() { + return textDocumentGetter(); + } + }; + } + parseResult.value.$document = document; + return document; + } + async update(document, cancellationToken) { + var _a, _b; + // The CST full text property contains the original text that was used to create the AST. + const oldText = (_a = document.parseResult.value.$cstNode) === null || _a === void 0 ? void 0 : _a.root.fullText; + const textDocument = (_b = this.textDocuments) === null || _b === void 0 ? void 0 : _b.get(document.uri.toString()); + const text = textDocument ? textDocument.getText() : await this.fileSystemProvider.readFile(document.uri); + if (textDocument) { + Object.defineProperty(document, 'textDocument', { + value: textDocument + }); + } + else { + const textDocumentGetter = this.createTextDocumentGetter(document.uri, text); + Object.defineProperty(document, 'textDocument', { + get: textDocumentGetter + }); + } + // Some of these documents can be pretty large, so parsing them again can be quite expensive. + // Therefore, we only parse if the text has actually changed. + if (oldText !== text) { + document.parseResult = await this.parseAsync(document.uri, text, cancellationToken); + document.parseResult.value.$document = document; + } + document.state = DocumentState.Parsed; + return document; + } + parse(uri, text) { + const services = this.serviceRegistry.getServices(uri); + return services.parser.LangiumParser.parse(text); + } + parseAsync(uri, text, cancellationToken) { + const services = this.serviceRegistry.getServices(uri); + return services.parser.AsyncParser.parse(text, cancellationToken); + } + createTextDocumentGetter(uri, text) { + const serviceRegistry = this.serviceRegistry; + let textDoc = undefined; + return () => { + return textDoc !== null && textDoc !== void 0 ? textDoc : (textDoc = main_TextDocument.create(uri.toString(), serviceRegistry.getServices(uri).LanguageMetaData.languageId, 0, text !== null && text !== void 0 ? text : '')); + }; + } +} +class DefaultLangiumDocuments { + constructor(services) { + this.documentMap = new Map(); + this.langiumDocumentFactory = services.workspace.LangiumDocumentFactory; + } + get all() { + return stream_stream(this.documentMap.values()); + } + addDocument(document) { + const uriString = document.uri.toString(); + if (this.documentMap.has(uriString)) { + throw new Error(`A document with the URI '${uriString}' is already present.`); + } + this.documentMap.set(uriString, document); + } + getDocument(uri) { + const uriString = uri.toString(); + return this.documentMap.get(uriString); + } + async getOrCreateDocument(uri, cancellationToken) { + let document = this.getDocument(uri); + if (document) { + return document; + } + document = await this.langiumDocumentFactory.fromUri(uri, cancellationToken); + this.addDocument(document); + return document; + } + createDocument(uri, text, cancellationToken) { + if (cancellationToken) { + return this.langiumDocumentFactory.fromString(text, uri, cancellationToken).then(document => { + this.addDocument(document); + return document; + }); + } + else { + const document = this.langiumDocumentFactory.fromString(text, uri); + this.addDocument(document); + return document; + } + } + hasDocument(uri) { + return this.documentMap.has(uri.toString()); + } + invalidateDocument(uri) { + const uriString = uri.toString(); + const langiumDoc = this.documentMap.get(uriString); + if (langiumDoc) { + langiumDoc.state = DocumentState.Changed; + langiumDoc.precomputedScopes = undefined; + langiumDoc.references = []; + langiumDoc.diagnostics = undefined; + } + return langiumDoc; + } + deleteDocument(uri) { + const uriString = uri.toString(); + const langiumDoc = this.documentMap.get(uriString); + if (langiumDoc) { + langiumDoc.state = DocumentState.Changed; + this.documentMap.delete(uriString); + } + return langiumDoc; + } +} +//# sourceMappingURL=documents.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/references/linker.js +/* provided dependency */ var linker_console = __webpack_require__(96763); +/****************************************************************************** + * Copyright 2021 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + + + + + +class DefaultLinker { + constructor(services) { + this.reflection = services.shared.AstReflection; + this.langiumDocuments = () => services.shared.workspace.LangiumDocuments; + this.scopeProvider = services.references.ScopeProvider; + this.astNodeLocator = services.workspace.AstNodeLocator; + } + async link(document, cancelToken = cancellation/* CancellationToken */.XO.None) { + for (const node of streamAst(document.parseResult.value)) { + await interruptAndCheck(cancelToken); + streamReferences(node).forEach(ref => this.doLink(ref, document)); + } + } + doLink(refInfo, document) { + const ref = refInfo.reference; + // The reference may already have been resolved lazily by accessing its `ref` property. + if (ref._ref === undefined) { + try { + const description = this.getCandidate(refInfo); + if (isLinkingError(description)) { + ref._ref = description; + } + else { + ref._nodeDescription = description; + if (this.langiumDocuments().hasDocument(description.documentUri)) { + // The target document is already loaded + const linkedNode = this.loadAstNode(description); + ref._ref = linkedNode !== null && linkedNode !== void 0 ? linkedNode : this.createLinkingError(refInfo, description); + } + } + } + catch (err) { + ref._ref = Object.assign(Object.assign({}, refInfo), { message: `An error occurred while resolving reference to '${ref.$refText}': ${err}` }); + } + } + // Add the reference to the document's array of references + document.references.push(ref); + } + unlink(document) { + for (const ref of document.references) { + delete ref._ref; + delete ref._nodeDescription; + } + document.references = []; + } + getCandidate(refInfo) { + const scope = this.scopeProvider.getScope(refInfo); + const description = scope.getElement(refInfo.reference.$refText); + return description !== null && description !== void 0 ? description : this.createLinkingError(refInfo); + } + buildReference(node, property, refNode, refText) { + // See behavior description in doc of Linker, update that on changes in here. + // eslint-disable-next-line @typescript-eslint/no-this-alias + const linker = this; + const reference = { + $refNode: refNode, + $refText: refText, + get ref() { + var _a; + if (syntax_tree_isAstNode(this._ref)) { + // Most frequent case: the target is already resolved. + return this._ref; + } + else if (isAstNodeDescription(this._nodeDescription)) { + // A candidate has been found before, but it is not loaded yet. + const linkedNode = linker.loadAstNode(this._nodeDescription); + this._ref = linkedNode !== null && linkedNode !== void 0 ? linkedNode : linker.createLinkingError({ reference, container: node, property }, this._nodeDescription); + } + else if (this._ref === undefined) { + // The reference has not been linked yet, so do that now. + const refData = linker.getLinkedNode({ reference, container: node, property }); + if (refData.error && getDocument(node).state < DocumentState.ComputedScopes) { + // Document scope is not ready, don't set `this._ref` so linker can retry later. + return undefined; + } + this._ref = (_a = refData.node) !== null && _a !== void 0 ? _a : refData.error; + this._nodeDescription = refData.descr; + } + return syntax_tree_isAstNode(this._ref) ? this._ref : undefined; + }, + get $nodeDescription() { + return this._nodeDescription; + }, + get error() { + return isLinkingError(this._ref) ? this._ref : undefined; + } + }; + return reference; + } + getLinkedNode(refInfo) { + try { + const description = this.getCandidate(refInfo); + if (isLinkingError(description)) { + return { error: description }; + } + const linkedNode = this.loadAstNode(description); + if (linkedNode) { + return { node: linkedNode, descr: description }; + } + else { + return { + descr: description, + error: this.createLinkingError(refInfo, description) + }; + } + } + catch (err) { + return { + error: Object.assign(Object.assign({}, refInfo), { message: `An error occurred while resolving reference to '${refInfo.reference.$refText}': ${err}` }) + }; + } + } + loadAstNode(nodeDescription) { + if (nodeDescription.node) { + return nodeDescription.node; + } + const doc = this.langiumDocuments().getDocument(nodeDescription.documentUri); + if (!doc) { + return undefined; + } + return this.astNodeLocator.getAstNode(doc.parseResult.value, nodeDescription.path); + } + createLinkingError(refInfo, targetDescription) { + // Check whether the document is sufficiently processed by the DocumentBuilder. If not, this is a hint for a bug + // in the language implementation. + const document = getDocument(refInfo.container); + if (document.state < DocumentState.ComputedScopes) { + linker_console.warn(`Attempted reference resolution before document reached ComputedScopes state (${document.uri}).`); + } + const referenceType = this.reflection.getReferenceType(refInfo); + return Object.assign(Object.assign({}, refInfo), { message: `Could not resolve reference to ${referenceType} named '${refInfo.reference.$refText}'.`, targetDescription }); + } +} +//# sourceMappingURL=linker.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/references/name-provider.js +/****************************************************************************** + * Copyright 2021 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + +function isNamed(node) { + return typeof node.name === 'string'; +} +class DefaultNameProvider { + getName(node) { + if (isNamed(node)) { + return node.name; + } + return undefined; + } + getNameNode(node) { + return findNodeForProperty(node.$cstNode, 'name'); + } +} +//# sourceMappingURL=name-provider.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/references/references.js +/****************************************************************************** + * Copyright 2021 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + + + + + + +class DefaultReferences { + constructor(services) { + this.nameProvider = services.references.NameProvider; + this.index = services.shared.workspace.IndexManager; + this.nodeLocator = services.workspace.AstNodeLocator; + } + findDeclaration(sourceCstNode) { + if (sourceCstNode) { + const assignment = findAssignment(sourceCstNode); + const nodeElem = sourceCstNode.astNode; + if (assignment && nodeElem) { + const reference = nodeElem[assignment.feature]; + if (syntax_tree_isReference(reference)) { + return reference.ref; + } + else if (Array.isArray(reference)) { + for (const ref of reference) { + if (syntax_tree_isReference(ref) && ref.$refNode + && ref.$refNode.offset <= sourceCstNode.offset + && ref.$refNode.end >= sourceCstNode.end) { + return ref.ref; + } + } + } + } + if (nodeElem) { + const nameNode = this.nameProvider.getNameNode(nodeElem); + // Only return the targeted node in case the targeted cst node is the name node or part of it + if (nameNode && (nameNode === sourceCstNode || isChildNode(sourceCstNode, nameNode))) { + return nodeElem; + } + } + } + return undefined; + } + findDeclarationNode(sourceCstNode) { + const astNode = this.findDeclaration(sourceCstNode); + if (astNode === null || astNode === void 0 ? void 0 : astNode.$cstNode) { + const targetNode = this.nameProvider.getNameNode(astNode); + return targetNode !== null && targetNode !== void 0 ? targetNode : astNode.$cstNode; + } + return undefined; + } + findReferences(targetNode, options) { + const refs = []; + if (options.includeDeclaration) { + const ref = this.getReferenceToSelf(targetNode); + if (ref) { + refs.push(ref); + } + } + let indexReferences = this.index.findAllReferences(targetNode, this.nodeLocator.getAstNodePath(targetNode)); + if (options.documentUri) { + indexReferences = indexReferences.filter(ref => UriUtils.equals(ref.sourceUri, options.documentUri)); + } + refs.push(...indexReferences); + return stream_stream(refs); + } + getReferenceToSelf(targetNode) { + const nameNode = this.nameProvider.getNameNode(targetNode); + if (nameNode) { + const doc = getDocument(targetNode); + const path = this.nodeLocator.getAstNodePath(targetNode); + return { + sourceUri: doc.uri, + sourcePath: path, + targetUri: doc.uri, + targetPath: path, + segment: toDocumentSegment(nameNode), + local: true + }; + } + return undefined; + } +} +//# sourceMappingURL=references.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/utils/collections.js +/****************************************************************************** + * Copyright 2021 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + +/** + * A multimap is a variation of a Map that has potentially multiple values for every key. + */ +class MultiMap { + constructor(elements) { + this.map = new Map(); + if (elements) { + for (const [key, value] of elements) { + this.add(key, value); + } + } + } + /** + * The total number of values in the multimap. + */ + get size() { + return Reduction.sum(stream_stream(this.map.values()).map(a => a.length)); + } + /** + * Clear all entries in the multimap. + */ + clear() { + this.map.clear(); + } + /** + * Operates differently depending on whether a `value` is given: + * * With a value, this method deletes the specific key / value pair from the multimap. + * * Without a value, all values associated with the given key are deleted. + * + * @returns `true` if a value existed and has been removed, or `false` if the specified + * key / value does not exist. + */ + delete(key, value) { + if (value === undefined) { + return this.map.delete(key); + } + else { + const values = this.map.get(key); + if (values) { + const index = values.indexOf(value); + if (index >= 0) { + if (values.length === 1) { + this.map.delete(key); + } + else { + values.splice(index, 1); + } + return true; + } + } + return false; + } + } + /** + * Returns an array of all values associated with the given key. If no value exists, + * an empty array is returned. + * + * _Note:_ The returned array is assumed not to be modified. Use the `set` method to add a + * value and `delete` to remove a value from the multimap. + */ + get(key) { + var _a; + return (_a = this.map.get(key)) !== null && _a !== void 0 ? _a : []; + } + /** + * Operates differently depending on whether a `value` is given: + * * With a value, this method returns `true` if the specific key / value pair is present in the multimap. + * * Without a value, this method returns `true` if the given key is present in the multimap. + */ + has(key, value) { + if (value === undefined) { + return this.map.has(key); + } + else { + const values = this.map.get(key); + if (values) { + return values.indexOf(value) >= 0; + } + return false; + } + } + /** + * Add the given key / value pair to the multimap. + */ + add(key, value) { + if (this.map.has(key)) { + this.map.get(key).push(value); + } + else { + this.map.set(key, [value]); + } + return this; + } + /** + * Add the given set of key / value pairs to the multimap. + */ + addAll(key, values) { + if (this.map.has(key)) { + this.map.get(key).push(...values); + } + else { + this.map.set(key, Array.from(values)); + } + return this; + } + /** + * Invokes the given callback function for every key / value pair in the multimap. + */ + forEach(callbackfn) { + this.map.forEach((array, key) => array.forEach(value => callbackfn(value, key, this))); + } + /** + * Returns an iterator of key, value pairs for every entry in the map. + */ + [Symbol.iterator]() { + return this.entries().iterator(); + } + /** + * Returns a stream of key, value pairs for every entry in the map. + */ + entries() { + return stream_stream(this.map.entries()) + .flatMap(([key, array]) => array.map(value => [key, value])); + } + /** + * Returns a stream of keys in the map. + */ + keys() { + return stream_stream(this.map.keys()); + } + /** + * Returns a stream of values in the map. + */ + values() { + return stream_stream(this.map.values()).flat(); + } + /** + * Returns a stream of key, value set pairs for every key in the map. + */ + entriesGroupedByKey() { + return stream_stream(this.map.entries()); + } +} +class BiMap { + get size() { + return this.map.size; + } + constructor(elements) { + this.map = new Map(); + this.inverse = new Map(); + if (elements) { + for (const [key, value] of elements) { + this.set(key, value); + } + } + } + clear() { + this.map.clear(); + this.inverse.clear(); + } + set(key, value) { + this.map.set(key, value); + this.inverse.set(value, key); + return this; + } + get(key) { + return this.map.get(key); + } + getKey(value) { + return this.inverse.get(value); + } + delete(key) { + const value = this.map.get(key); + if (value !== undefined) { + this.map.delete(key); + this.inverse.delete(value); + return true; + } + return false; + } +} +//# sourceMappingURL=collections.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/references/scope-computation.js +/****************************************************************************** + * Copyright 2021-2022 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + + + + +/** + * The default scope computation creates and collectes descriptions of the AST nodes to be exported into the + * _global_ scope from the given document. By default those are the document's root AST node and its directly + * contained child nodes. + * + * Besides, it gathers all AST nodes that have a name (according to the `NameProvider` service) and includes them + * in the local scope of their particular container nodes. As a result, for every cross-reference in the AST, + * target elements from the same level (siblings) and further up towards the root (parents and siblings of parents) + * are visible. Elements being nested inside lower levels (children, children of siblings and parents' siblings) + * are _invisible_ by default, but that can be changed by customizing this service. + */ +class DefaultScopeComputation { + constructor(services) { + this.nameProvider = services.references.NameProvider; + this.descriptions = services.workspace.AstNodeDescriptionProvider; + } + async computeExports(document, cancelToken = cancellation/* CancellationToken */.XO.None) { + return this.computeExportsForNode(document.parseResult.value, document, undefined, cancelToken); + } + /** + * Creates {@link AstNodeDescription AstNodeDescriptions} for the given {@link AstNode parentNode} and its children. + * The list of children to be considered is determined by the function parameter {@link children}. + * By default only the direct children of {@link parentNode} are visited, nested nodes are not exported. + * + * @param parentNode AST node to be exported, i.e., of which an {@link AstNodeDescription} shall be added to the returned list. + * @param document The document containing the AST node to be exported. + * @param children A function called with {@link parentNode} as single argument and returning an {@link Iterable} supplying the children to be visited, which must be directly or transitively contained in {@link parentNode}. + * @param cancelToken Indicates when to cancel the current operation. + * @throws `OperationCanceled` if a user action occurs during execution. + * @returns A list of {@link AstNodeDescription AstNodeDescriptions} to be published to index. + */ + async computeExportsForNode(parentNode, document, children = streamContents, cancelToken = cancellation/* CancellationToken */.XO.None) { + const exports = []; + this.exportNode(parentNode, exports, document); + for (const node of children(parentNode)) { + await interruptAndCheck(cancelToken); + this.exportNode(node, exports, document); + } + return exports; + } + /** + * Add a single node to the list of exports if it has a name. Override this method to change how + * symbols are exported, e.g. by modifying their exported name. + */ + exportNode(node, exports, document) { + const name = this.nameProvider.getName(node); + if (name) { + exports.push(this.descriptions.createDescription(node, name, document)); + } + } + async computeLocalScopes(document, cancelToken = cancellation/* CancellationToken */.XO.None) { + const rootNode = document.parseResult.value; + const scopes = new MultiMap(); + // Here we navigate the full AST - local scopes shall be available in the whole document + for (const node of ast_utils_streamAllContents(rootNode)) { + await interruptAndCheck(cancelToken); + this.processNode(node, document, scopes); + } + return scopes; + } + /** + * Process a single node during scopes computation. The default implementation makes the node visible + * in the subtree of its container (if the node has a name). Override this method to change this, + * e.g. by increasing the visibility to a higher level in the AST. + */ + processNode(node, document, scopes) { + const container = node.$container; + if (container) { + const name = this.nameProvider.getName(node); + if (name) { + scopes.add(container, this.descriptions.createDescription(node, name, document)); + } + } + } +} +//# sourceMappingURL=scope-computation.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/references/scope.js +/****************************************************************************** + * Copyright 2023 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + +/** + * The default scope implementation is based on a `Stream`. It has an optional _outer scope_ describing + * the next level of elements, which are queried when a target element is not found in the stream provided + * to this scope. + */ +class StreamScope { + constructor(elements, outerScope, options) { + var _a; + this.elements = elements; + this.outerScope = outerScope; + this.caseInsensitive = (_a = options === null || options === void 0 ? void 0 : options.caseInsensitive) !== null && _a !== void 0 ? _a : false; + } + getAllElements() { + if (this.outerScope) { + return this.elements.concat(this.outerScope.getAllElements()); + } + else { + return this.elements; + } + } + getElement(name) { + const local = this.caseInsensitive + ? this.elements.find(e => e.name.toLowerCase() === name.toLowerCase()) + : this.elements.find(e => e.name === name); + if (local) { + return local; + } + if (this.outerScope) { + return this.outerScope.getElement(name); + } + return undefined; + } +} +class MapScope { + constructor(elements, outerScope, options) { + var _a; + this.elements = new Map(); + this.caseInsensitive = (_a = options === null || options === void 0 ? void 0 : options.caseInsensitive) !== null && _a !== void 0 ? _a : false; + for (const element of elements) { + const name = this.caseInsensitive + ? element.name.toLowerCase() + : element.name; + this.elements.set(name, element); + } + this.outerScope = outerScope; + } + getElement(name) { + const localName = this.caseInsensitive ? name.toLowerCase() : name; + const local = this.elements.get(localName); + if (local) { + return local; + } + if (this.outerScope) { + return this.outerScope.getElement(name); + } + return undefined; + } + getAllElements() { + let elementStream = stream_stream(this.elements.values()); + if (this.outerScope) { + elementStream = elementStream.concat(this.outerScope.getAllElements()); + } + return elementStream; + } +} +const EMPTY_SCOPE = { + getElement() { + return undefined; + }, + getAllElements() { + return EMPTY_STREAM; + } +}; +//# sourceMappingURL=scope.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/utils/caching.js +/****************************************************************************** + * Copyright 2023 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ +class DisposableCache { + constructor() { + this.toDispose = []; + this.isDisposed = false; + } + onDispose(disposable) { + this.toDispose.push(disposable); + } + dispose() { + this.throwIfDisposed(); + this.clear(); + this.isDisposed = true; + this.toDispose.forEach(disposable => disposable.dispose()); + } + throwIfDisposed() { + if (this.isDisposed) { + throw new Error('This cache has already been disposed'); + } + } +} +class SimpleCache extends DisposableCache { + constructor() { + super(...arguments); + this.cache = new Map(); + } + has(key) { + this.throwIfDisposed(); + return this.cache.has(key); + } + set(key, value) { + this.throwIfDisposed(); + this.cache.set(key, value); + } + get(key, provider) { + this.throwIfDisposed(); + if (this.cache.has(key)) { + return this.cache.get(key); + } + else if (provider) { + const value = provider(); + this.cache.set(key, value); + return value; + } + else { + return undefined; + } + } + delete(key) { + this.throwIfDisposed(); + return this.cache.delete(key); + } + clear() { + this.throwIfDisposed(); + this.cache.clear(); + } +} +class ContextCache extends DisposableCache { + constructor(converter) { + super(); + this.cache = new Map(); + this.converter = converter !== null && converter !== void 0 ? converter : (value => value); + } + has(contextKey, key) { + this.throwIfDisposed(); + return this.cacheForContext(contextKey).has(key); + } + set(contextKey, key, value) { + this.throwIfDisposed(); + this.cacheForContext(contextKey).set(key, value); + } + get(contextKey, key, provider) { + this.throwIfDisposed(); + const contextCache = this.cacheForContext(contextKey); + if (contextCache.has(key)) { + return contextCache.get(key); + } + else if (provider) { + const value = provider(); + contextCache.set(key, value); + return value; + } + else { + return undefined; + } + } + delete(contextKey, key) { + this.throwIfDisposed(); + return this.cacheForContext(contextKey).delete(key); + } + clear(contextKey) { + this.throwIfDisposed(); + if (contextKey) { + const mapKey = this.converter(contextKey); + this.cache.delete(mapKey); + } + else { + this.cache.clear(); + } + } + cacheForContext(contextKey) { + const mapKey = this.converter(contextKey); + let documentCache = this.cache.get(mapKey); + if (!documentCache) { + documentCache = new Map(); + this.cache.set(mapKey, documentCache); + } + return documentCache; + } +} +/** + * Every key/value pair in this cache is scoped to a document. + * If this document is changed or deleted, all associated key/value pairs are deleted. + */ +class DocumentCache extends ContextCache { + constructor(sharedServices) { + super(uri => uri.toString()); + this.onDispose(sharedServices.workspace.DocumentBuilder.onUpdate((changed, deleted) => { + const allUris = changed.concat(deleted); + for (const uri of allUris) { + this.clear(uri); + } + })); + } +} +/** + * Every key/value pair in this cache is scoped to the whole workspace. + * If any document in the workspace changes, the whole cache is evicted. + */ +class WorkspaceCache extends SimpleCache { + constructor(sharedServices) { + super(); + this.onDispose(sharedServices.workspace.DocumentBuilder.onUpdate(() => { + this.clear(); + })); + } +} +//# sourceMappingURL=caching.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/references/scope-provider.js +/****************************************************************************** + * Copyright 2021-2022 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + + + + +class DefaultScopeProvider { + constructor(services) { + this.reflection = services.shared.AstReflection; + this.nameProvider = services.references.NameProvider; + this.descriptions = services.workspace.AstNodeDescriptionProvider; + this.indexManager = services.shared.workspace.IndexManager; + this.globalScopeCache = new WorkspaceCache(services.shared); + } + getScope(context) { + const scopes = []; + const referenceType = this.reflection.getReferenceType(context); + const precomputed = getDocument(context.container).precomputedScopes; + if (precomputed) { + let currentNode = context.container; + do { + const allDescriptions = precomputed.get(currentNode); + if (allDescriptions.length > 0) { + scopes.push(stream_stream(allDescriptions).filter(desc => this.reflection.isSubtype(desc.type, referenceType))); + } + currentNode = currentNode.$container; + } while (currentNode); + } + let result = this.getGlobalScope(referenceType, context); + for (let i = scopes.length - 1; i >= 0; i--) { + result = this.createScope(scopes[i], result); + } + return result; + } + /** + * Create a scope for the given collection of AST node descriptions. + */ + createScope(elements, outerScope, options) { + return new StreamScope(stream_stream(elements), outerScope, options); + } + /** + * Create a scope for the given collection of AST nodes, which need to be transformed into respective + * descriptions first. This is done using the `NameProvider` and `AstNodeDescriptionProvider` services. + */ + createScopeForNodes(elements, outerScope, options) { + const s = stream_stream(elements).map(e => { + const name = this.nameProvider.getName(e); + if (name) { + return this.descriptions.createDescription(e, name); + } + return undefined; + }).nonNullable(); + return new StreamScope(s, outerScope, options); + } + /** + * Create a global scope filtered for the given reference type. + */ + getGlobalScope(referenceType, _context) { + return this.globalScopeCache.get(referenceType, () => new MapScope(this.indexManager.allElements(referenceType))); + } +} +//# sourceMappingURL=scope-provider.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/serializer/json-serializer.js +/****************************************************************************** + * Copyright 2021 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + + + + +function isAstNodeWithComment(node) { + return typeof node.$comment === 'string'; +} +function isIntermediateReference(obj) { + return typeof obj === 'object' && !!obj && ('$ref' in obj || '$error' in obj); +} +class DefaultJsonSerializer { + constructor(services) { + /** The set of AstNode properties to be ignored by the serializer. */ + this.ignoreProperties = new Set(['$container', '$containerProperty', '$containerIndex', '$document', '$cstNode']); + this.langiumDocuments = services.shared.workspace.LangiumDocuments; + this.astNodeLocator = services.workspace.AstNodeLocator; + this.nameProvider = services.references.NameProvider; + this.commentProvider = services.documentation.CommentProvider; + } + serialize(node, options = {}) { + const specificReplacer = options === null || options === void 0 ? void 0 : options.replacer; + const defaultReplacer = (key, value) => this.replacer(key, value, options); + const replacer = specificReplacer ? (key, value) => specificReplacer(key, value, defaultReplacer) : defaultReplacer; + try { + this.currentDocument = getDocument(node); + return JSON.stringify(node, replacer, options === null || options === void 0 ? void 0 : options.space); + } + finally { + this.currentDocument = undefined; + } + } + deserialize(content, options = {}) { + const root = JSON.parse(content); + this.linkNode(root, root, options); + return root; + } + replacer(key, value, { refText, sourceText, textRegions, comments, uriConverter }) { + var _a, _b, _c, _d; + if (this.ignoreProperties.has(key)) { + return undefined; + } + else if (syntax_tree_isReference(value)) { + const refValue = value.ref; + const $refText = refText ? value.$refText : undefined; + if (refValue) { + const targetDocument = getDocument(refValue); + let targetUri = ''; + if (this.currentDocument && this.currentDocument !== targetDocument) { + if (uriConverter) { + targetUri = uriConverter(targetDocument.uri, value); + } + else { + targetUri = targetDocument.uri.toString(); + } + } + const targetPath = this.astNodeLocator.getAstNodePath(refValue); + return { + $ref: `${targetUri}#${targetPath}`, + $refText + }; + } + else { + return { + $error: (_b = (_a = value.error) === null || _a === void 0 ? void 0 : _a.message) !== null && _b !== void 0 ? _b : 'Could not resolve reference', + $refText + }; + } + } + else if (syntax_tree_isAstNode(value)) { + let astNode = undefined; + if (textRegions) { + astNode = this.addAstNodeRegionWithAssignmentsTo(Object.assign({}, value)); + if ((!key || value.$document) && (astNode === null || astNode === void 0 ? void 0 : astNode.$textRegion)) { + // The document URI is added to the root node of the resulting JSON tree + astNode.$textRegion.documentURI = (_c = this.currentDocument) === null || _c === void 0 ? void 0 : _c.uri.toString(); + } + } + if (sourceText && !key) { + astNode !== null && astNode !== void 0 ? astNode : (astNode = Object.assign({}, value)); + astNode.$sourceText = (_d = value.$cstNode) === null || _d === void 0 ? void 0 : _d.text; + } + if (comments) { + astNode !== null && astNode !== void 0 ? astNode : (astNode = Object.assign({}, value)); + const comment = this.commentProvider.getComment(value); + if (comment) { + astNode.$comment = comment.replace(/\r/g, ''); + } + } + return astNode !== null && astNode !== void 0 ? astNode : value; + } + else { + return value; + } + } + addAstNodeRegionWithAssignmentsTo(node) { + const createDocumentSegment = cstNode => ({ + offset: cstNode.offset, + end: cstNode.end, + length: cstNode.length, + range: cstNode.range, + }); + if (node.$cstNode) { + const textRegion = node.$textRegion = createDocumentSegment(node.$cstNode); + const assignments = textRegion.assignments = {}; + Object.keys(node).filter(key => !key.startsWith('$')).forEach(key => { + const propertyAssignments = findNodesForProperty(node.$cstNode, key).map(createDocumentSegment); + if (propertyAssignments.length !== 0) { + assignments[key] = propertyAssignments; + } + }); + return node; + } + return undefined; + } + linkNode(node, root, options, container, containerProperty, containerIndex) { + for (const [propertyName, item] of Object.entries(node)) { + if (Array.isArray(item)) { + for (let index = 0; index < item.length; index++) { + const element = item[index]; + if (isIntermediateReference(element)) { + item[index] = this.reviveReference(node, propertyName, root, element, options); + } + else if (syntax_tree_isAstNode(element)) { + this.linkNode(element, root, options, node, propertyName, index); + } + } + } + else if (isIntermediateReference(item)) { + node[propertyName] = this.reviveReference(node, propertyName, root, item, options); + } + else if (syntax_tree_isAstNode(item)) { + this.linkNode(item, root, options, node, propertyName); + } + } + const mutable = node; + mutable.$container = container; + mutable.$containerProperty = containerProperty; + mutable.$containerIndex = containerIndex; + } + reviveReference(container, property, root, reference, options) { + let refText = reference.$refText; + let error = reference.$error; + if (reference.$ref) { + const ref = this.getRefNode(root, reference.$ref, options.uriConverter); + if (syntax_tree_isAstNode(ref)) { + if (!refText) { + refText = this.nameProvider.getName(ref); + } + return { + $refText: refText !== null && refText !== void 0 ? refText : '', + ref + }; + } + else { + error = ref; + } + } + if (error) { + const ref = { + $refText: refText !== null && refText !== void 0 ? refText : '' + }; + ref.error = { + container, + property, + message: error, + reference: ref + }; + return ref; + } + else { + return undefined; + } + } + getRefNode(root, uri, uriConverter) { + try { + const fragmentIndex = uri.indexOf('#'); + if (fragmentIndex === 0) { + const node = this.astNodeLocator.getAstNode(root, uri.substring(1)); + if (!node) { + return 'Could not resolve path: ' + uri; + } + return node; + } + if (fragmentIndex < 0) { + const documentUri = uriConverter ? uriConverter(uri) : esm_URI.parse(uri); + const document = this.langiumDocuments.getDocument(documentUri); + if (!document) { + return 'Could not find document for URI: ' + uri; + } + return document.parseResult.value; + } + const documentUri = uriConverter ? uriConverter(uri.substring(0, fragmentIndex)) : esm_URI.parse(uri.substring(0, fragmentIndex)); + const document = this.langiumDocuments.getDocument(documentUri); + if (!document) { + return 'Could not find document for URI: ' + uri; + } + if (fragmentIndex === uri.length - 1) { + return document.parseResult.value; + } + const node = this.astNodeLocator.getAstNode(document.parseResult.value, uri.substring(fragmentIndex + 1)); + if (!node) { + return 'Could not resolve URI: ' + uri; + } + return node; + } + catch (err) { + return String(err); + } + } +} +//# sourceMappingURL=json-serializer.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/service-registry.js +/* provided dependency */ var service_registry_console = __webpack_require__(96763); +/****************************************************************************** + * Copyright 2021 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + +/** + * Generic registry for Langium services, but capable of being used with extending service sets as well (such as the lsp-complete LangiumCoreServices set) + */ +class DefaultServiceRegistry { + register(language) { + if (!this.singleton && !this.map) { + // This is the first language to be registered; store it as singleton. + this.singleton = language; + return; + } + if (!this.map) { + this.map = {}; + if (this.singleton) { + // Move the previous singleton instance to the new map. + for (const ext of this.singleton.LanguageMetaData.fileExtensions) { + this.map[ext] = this.singleton; + } + this.singleton = undefined; + } + } + // Store the language services in the map. + for (const ext of language.LanguageMetaData.fileExtensions) { + if (this.map[ext] !== undefined && this.map[ext] !== language) { + service_registry_console.warn(`The file extension ${ext} is used by multiple languages. It is now assigned to '${language.LanguageMetaData.languageId}'.`); + } + this.map[ext] = language; + } + } + getServices(uri) { + if (this.singleton !== undefined) { + return this.singleton; + } + if (this.map === undefined) { + throw new Error('The service registry is empty. Use `register` to register the services of a language.'); + } + const ext = UriUtils.extname(uri); + const services = this.map[ext]; + if (!services) { + throw new Error(`The service registry contains no services for the extension '${ext}'.`); + } + return services; + } + get all() { + if (this.singleton !== undefined) { + return [this.singleton]; + } + if (this.map !== undefined) { + return Object.values(this.map); + } + return []; + } +} +//# sourceMappingURL=service-registry.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/validation/validation-registry.js +/* provided dependency */ var validation_registry_console = __webpack_require__(96763); +/****************************************************************************** + * Copyright 2021 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + + + +/** + * Create DiagnosticData for a given diagnostic code. The result can be put into the `data` field of a DiagnosticInfo. + */ +function diagnosticData(code) { + return { code }; +} +var ValidationCategory; +(function (ValidationCategory) { + ValidationCategory.all = ['fast', 'slow', 'built-in']; +})(ValidationCategory || (ValidationCategory = {})); +/** + * Manages a set of `ValidationCheck`s to be applied when documents are validated. + */ +class ValidationRegistry { + constructor(services) { + this.entries = new MultiMap(); + this.reflection = services.shared.AstReflection; + } + /** + * Register a set of validation checks. Each value in the record can be either a single validation check (i.e. a function) + * or an array of validation checks. + * + * @param checksRecord Set of validation checks to register. + * @param category Optional category for the validation checks (defaults to `'fast'`). + * @param thisObj Optional object to be used as `this` when calling the validation check functions. + */ + register(checksRecord, thisObj = this, category = 'fast') { + if (category === 'built-in') { + throw new Error("The 'built-in' category is reserved for lexer, parser, and linker errors."); + } + for (const [type, ch] of Object.entries(checksRecord)) { + const callbacks = ch; + if (Array.isArray(callbacks)) { + for (const check of callbacks) { + const entry = { + check: this.wrapValidationException(check, thisObj), + category + }; + this.addEntry(type, entry); + } + } + else if (typeof callbacks === 'function') { + const entry = { + check: this.wrapValidationException(callbacks, thisObj), + category + }; + this.addEntry(type, entry); + } + } + } + wrapValidationException(check, thisObj) { + return async (node, accept, cancelToken) => { + try { + await check.call(thisObj, node, accept, cancelToken); + } + catch (err) { + if (isOperationCancelled(err)) { + throw err; + } + validation_registry_console.error('An error occurred during validation:', err); + const message = err instanceof Error ? err.message : String(err); + if (err instanceof Error && err.stack) { + validation_registry_console.error(err.stack); + } + accept('error', 'An error occurred during validation: ' + message, { node }); + } + }; + } + addEntry(type, entry) { + if (type === 'AstNode') { + this.entries.add('AstNode', entry); + return; + } + for (const subtype of this.reflection.getAllSubTypes(type)) { + this.entries.add(subtype, entry); + } + } + getChecks(type, categories) { + let checks = stream_stream(this.entries.get(type)) + .concat(this.entries.get('AstNode')); + if (categories) { + checks = checks.filter(entry => categories.includes(entry.category)); + } + return checks.map(entry => entry.check); + } +} +//# sourceMappingURL=validation-registry.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/validation/document-validator.js +/* provided dependency */ var document_validator_console = __webpack_require__(96763); +/****************************************************************************** + * Copyright 2021 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + + + + + + +class DefaultDocumentValidator { + constructor(services) { + this.validationRegistry = services.validation.ValidationRegistry; + this.metadata = services.LanguageMetaData; + } + async validateDocument(document, options = {}, cancelToken = cancellation/* CancellationToken */.XO.None) { + const parseResult = document.parseResult; + const diagnostics = []; + await interruptAndCheck(cancelToken); + if (!options.categories || options.categories.includes('built-in')) { + this.processLexingErrors(parseResult, diagnostics, options); + if (options.stopAfterLexingErrors && diagnostics.some(d => { var _a; return ((_a = d.data) === null || _a === void 0 ? void 0 : _a.code) === DocumentValidator.LexingError; })) { + return diagnostics; + } + this.processParsingErrors(parseResult, diagnostics, options); + if (options.stopAfterParsingErrors && diagnostics.some(d => { var _a; return ((_a = d.data) === null || _a === void 0 ? void 0 : _a.code) === DocumentValidator.ParsingError; })) { + return diagnostics; + } + this.processLinkingErrors(document, diagnostics, options); + if (options.stopAfterLinkingErrors && diagnostics.some(d => { var _a; return ((_a = d.data) === null || _a === void 0 ? void 0 : _a.code) === DocumentValidator.LinkingError; })) { + return diagnostics; + } + } + // Process custom validations + try { + diagnostics.push(...await this.validateAst(parseResult.value, options, cancelToken)); + } + catch (err) { + if (isOperationCancelled(err)) { + throw err; + } + document_validator_console.error('An error occurred during validation:', err); + } + await interruptAndCheck(cancelToken); + return diagnostics; + } + processLexingErrors(parseResult, diagnostics, _options) { + for (const lexerError of parseResult.lexerErrors) { + const diagnostic = { + severity: toDiagnosticSeverity('error'), + range: { + start: { + line: lexerError.line - 1, + character: lexerError.column - 1 + }, + end: { + line: lexerError.line - 1, + character: lexerError.column + lexerError.length - 1 + } + }, + message: lexerError.message, + data: diagnosticData(DocumentValidator.LexingError), + source: this.getSource() + }; + diagnostics.push(diagnostic); + } + } + processParsingErrors(parseResult, diagnostics, _options) { + for (const parserError of parseResult.parserErrors) { + let range = undefined; + // We can run into the chevrotain error recovery here + // The token contained in the parser error might be automatically inserted + // In this case every position value will be `NaN` + if (isNaN(parserError.token.startOffset)) { + // Some special parser error types contain a `previousToken` + // We can simply append our diagnostic to that token + if ('previousToken' in parserError) { + const token = parserError.previousToken; + if (!isNaN(token.startOffset)) { + const position = { line: token.endLine - 1, character: token.endColumn }; + range = { start: position, end: position }; + } + else { + // No valid prev token. Might be empty document or containing only hidden tokens. + // Point to document start + const position = { line: 0, character: 0 }; + range = { start: position, end: position }; + } + } + } + else { + range = tokenToRange(parserError.token); + } + if (range) { + const diagnostic = { + severity: toDiagnosticSeverity('error'), + range, + message: parserError.message, + data: diagnosticData(DocumentValidator.ParsingError), + source: this.getSource() + }; + diagnostics.push(diagnostic); + } + } + } + processLinkingErrors(document, diagnostics, _options) { + for (const reference of document.references) { + const linkingError = reference.error; + if (linkingError) { + const info = { + node: linkingError.container, + property: linkingError.property, + index: linkingError.index, + data: { + code: DocumentValidator.LinkingError, + containerType: linkingError.container.$type, + property: linkingError.property, + refText: linkingError.reference.$refText + } + }; + diagnostics.push(this.toDiagnostic('error', linkingError.message, info)); + } + } + } + async validateAst(rootNode, options, cancelToken = cancellation/* CancellationToken */.XO.None) { + const validationItems = []; + const acceptor = (severity, message, info) => { + validationItems.push(this.toDiagnostic(severity, message, info)); + }; + await Promise.all(streamAst(rootNode).map(async (node) => { + await interruptAndCheck(cancelToken); + const checks = this.validationRegistry.getChecks(node.$type, options.categories); + for (const check of checks) { + await check(node, acceptor, cancelToken); + } + })); + return validationItems; + } + toDiagnostic(severity, message, info) { + return { + message, + range: getDiagnosticRange(info), + severity: toDiagnosticSeverity(severity), + code: info.code, + codeDescription: info.codeDescription, + tags: info.tags, + relatedInformation: info.relatedInformation, + data: info.data, + source: this.getSource() + }; + } + getSource() { + return this.metadata.languageId; + } +} +function getDiagnosticRange(info) { + if (info.range) { + return info.range; + } + let cstNode; + if (typeof info.property === 'string') { + cstNode = findNodeForProperty(info.node.$cstNode, info.property, info.index); + } + else if (typeof info.keyword === 'string') { + cstNode = findNodeForKeyword(info.node.$cstNode, info.keyword, info.index); + } + cstNode !== null && cstNode !== void 0 ? cstNode : (cstNode = info.node.$cstNode); + if (!cstNode) { + return { + start: { line: 0, character: 0 }, + end: { line: 0, character: 0 } + }; + } + return cstNode.range; +} +function toDiagnosticSeverity(severity) { + switch (severity) { + case 'error': + return 1; // according to vscode-languageserver-types/lib/esm/main.js#DiagnosticSeverity.Error + case 'warning': + return 2; // according to vscode-languageserver-types/lib/esm/main.js#DiagnosticSeverity.Warning + case 'info': + return 3; // according to vscode-languageserver-types/lib/esm/main.js#DiagnosticSeverity.Information + case 'hint': + return 4; // according to vscode-languageserver-types/lib/esm/main.js#DiagnosticSeverity.Hint + default: + throw new Error('Invalid diagnostic severity: ' + severity); + } +} +var DocumentValidator; +(function (DocumentValidator) { + DocumentValidator.LexingError = 'lexing-error'; + DocumentValidator.ParsingError = 'parsing-error'; + DocumentValidator.LinkingError = 'linking-error'; +})(DocumentValidator || (DocumentValidator = {})); +//# sourceMappingURL=document-validator.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/workspace/ast-descriptions.js +/****************************************************************************** + * Copyright 2021 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + + + + + + +class DefaultAstNodeDescriptionProvider { + constructor(services) { + this.astNodeLocator = services.workspace.AstNodeLocator; + this.nameProvider = services.references.NameProvider; + } + createDescription(node, name, document = getDocument(node)) { + name !== null && name !== void 0 ? name : (name = this.nameProvider.getName(node)); + const path = this.astNodeLocator.getAstNodePath(node); + if (!name) { + throw new Error(`Node at path ${path} has no name.`); + } + let nameNodeSegment; + const nameSegmentGetter = () => { var _a; return nameNodeSegment !== null && nameNodeSegment !== void 0 ? nameNodeSegment : (nameNodeSegment = toDocumentSegment((_a = this.nameProvider.getNameNode(node)) !== null && _a !== void 0 ? _a : node.$cstNode)); }; + return { + node, + name, + get nameSegment() { + return nameSegmentGetter(); + }, + selectionSegment: toDocumentSegment(node.$cstNode), + type: node.$type, + documentUri: document.uri, + path + }; + } +} +class DefaultReferenceDescriptionProvider { + constructor(services) { + this.nodeLocator = services.workspace.AstNodeLocator; + } + async createDescriptions(document, cancelToken = cancellation/* CancellationToken */.XO.None) { + const descr = []; + const rootNode = document.parseResult.value; + for (const astNode of streamAst(rootNode)) { + await interruptAndCheck(cancelToken); + streamReferences(astNode).filter(refInfo => !isLinkingError(refInfo)).forEach(refInfo => { + // TODO: Consider logging a warning or throw an exception when DocumentState is < than Linked + const description = this.createDescription(refInfo); + if (description) { + descr.push(description); + } + }); + } + return descr; + } + createDescription(refInfo) { + const targetNodeDescr = refInfo.reference.$nodeDescription; + const refCstNode = refInfo.reference.$refNode; + if (!targetNodeDescr || !refCstNode) { + return undefined; + } + const docUri = getDocument(refInfo.container).uri; + return { + sourceUri: docUri, + sourcePath: this.nodeLocator.getAstNodePath(refInfo.container), + targetUri: targetNodeDescr.documentUri, + targetPath: targetNodeDescr.path, + segment: toDocumentSegment(refCstNode), + local: UriUtils.equals(targetNodeDescr.documentUri, docUri) + }; + } +} +//# sourceMappingURL=ast-descriptions.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/workspace/ast-node-locator.js +/****************************************************************************** + * Copyright 2021 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ +class DefaultAstNodeLocator { + constructor() { + this.segmentSeparator = '/'; + this.indexSeparator = '@'; + } + getAstNodePath(node) { + if (node.$container) { + const containerPath = this.getAstNodePath(node.$container); + const newSegment = this.getPathSegment(node); + const nodePath = containerPath + this.segmentSeparator + newSegment; + return nodePath; + } + return ''; + } + getPathSegment({ $containerProperty, $containerIndex }) { + if (!$containerProperty) { + throw new Error("Missing '$containerProperty' in AST node."); + } + if ($containerIndex !== undefined) { + return $containerProperty + this.indexSeparator + $containerIndex; + } + return $containerProperty; + } + getAstNode(node, path) { + const segments = path.split(this.segmentSeparator); + return segments.reduce((previousValue, currentValue) => { + if (!previousValue || currentValue.length === 0) { + return previousValue; + } + const propertyIndex = currentValue.indexOf(this.indexSeparator); + if (propertyIndex > 0) { + const property = currentValue.substring(0, propertyIndex); + const arrayIndex = parseInt(currentValue.substring(propertyIndex + 1)); + const array = previousValue[property]; + return array === null || array === void 0 ? void 0 : array[arrayIndex]; + } + return previousValue[currentValue]; + }, node); + } +} +//# sourceMappingURL=ast-node-locator.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/workspace/configuration.js +/****************************************************************************** + * Copyright 2022 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + +/** + * Base configuration provider for building up other configuration providers + */ +class DefaultConfigurationProvider { + constructor(services) { + this._ready = new promise_utils_Deferred(); + this.settings = {}; + this.workspaceConfig = false; + this.serviceRegistry = services.ServiceRegistry; + } + get ready() { + return this._ready.promise; + } + initialize(params) { + var _a, _b; + this.workspaceConfig = (_b = (_a = params.capabilities.workspace) === null || _a === void 0 ? void 0 : _a.configuration) !== null && _b !== void 0 ? _b : false; + } + async initialized(params) { + if (this.workspaceConfig) { + if (params.register) { + // params.register(...) is a function to be provided by the calling language server for the sake of + // decoupling this implementation from the concrete LSP implementations, specifically the LSP Connection + const languages = this.serviceRegistry.all; + params.register({ + // Listen to configuration changes for all languages + section: languages.map(lang => this.toSectionName(lang.LanguageMetaData.languageId)) + }); + } + if (params.fetchConfiguration) { + // params.fetchConfiguration(...) is a function to be provided by the calling language server for the sake of + // decoupling this implementation from the concrete LSP implementations, specifically the LSP Connection + const configToUpdate = this.serviceRegistry.all.map(lang => ({ + // Fetch the configuration changes for all languages + section: this.toSectionName(lang.LanguageMetaData.languageId) + })); + // get workspace configurations (default scope URI) + const configs = await params.fetchConfiguration(configToUpdate); + configToUpdate.forEach((conf, idx) => { + this.updateSectionConfiguration(conf.section, configs[idx]); + }); + } + } + this._ready.resolve(); + } + /** + * Updates the cached configurations using the `change` notification parameters. + * + * @param change The parameters of a change configuration notification. + * `settings` property of the change object could be expressed as `Record<string, Record<string, any>>` + */ + updateConfiguration(change) { + if (!change.settings) { + return; + } + Object.keys(change.settings).forEach(section => { + this.updateSectionConfiguration(section, change.settings[section]); + }); + } + updateSectionConfiguration(section, configuration) { + this.settings[section] = configuration; + } + /** + * Returns a configuration value stored for the given language. + * + * @param language The language id + * @param configuration Configuration name + */ + async getConfiguration(language, configuration) { + await this.ready; + const sectionName = this.toSectionName(language); + if (this.settings[sectionName]) { + return this.settings[sectionName][configuration]; + } + } + toSectionName(languageId) { + return `${languageId}`; + } +} +//# sourceMappingURL=configuration.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/utils/disposable.js +/****************************************************************************** + * Copyright 2021 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ +var Disposable; +(function (Disposable) { + function create(callback) { + return { + dispose: async () => await callback() + }; + } + Disposable.create = create; +})(Disposable || (Disposable = {})); +//# sourceMappingURL=disposable.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/workspace/document-builder.js +/****************************************************************************** + * Copyright 2021 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + + + + + + + +class DefaultDocumentBuilder { + constructor(services) { + this.updateBuildOptions = { + // Default: run only the built-in validation checks and those in the _fast_ category (includes those without category) + validation: { + categories: ['built-in', 'fast'] + } + }; + this.updateListeners = []; + this.buildPhaseListeners = new MultiMap(); + this.buildState = new Map(); + this.documentBuildWaiters = new Map(); + this.currentState = DocumentState.Changed; + this.langiumDocuments = services.workspace.LangiumDocuments; + this.langiumDocumentFactory = services.workspace.LangiumDocumentFactory; + this.indexManager = services.workspace.IndexManager; + this.serviceRegistry = services.ServiceRegistry; + } + async build(documents, options = {}, cancelToken = cancellation/* CancellationToken */.XO.None) { + var _a, _b; + for (const document of documents) { + const key = document.uri.toString(); + if (document.state === DocumentState.Validated) { + if (typeof options.validation === 'boolean' && options.validation) { + // Force re-running all validation checks + document.state = DocumentState.IndexedReferences; + document.diagnostics = undefined; + this.buildState.delete(key); + } + else if (typeof options.validation === 'object') { + const buildState = this.buildState.get(key); + const previousCategories = (_a = buildState === null || buildState === void 0 ? void 0 : buildState.result) === null || _a === void 0 ? void 0 : _a.validationChecks; + if (previousCategories) { + // Validation with explicit options was requested for a document that has already been partly validated. + // In this case, we need to merge the previous validation categories with the new ones. + const newCategories = (_b = options.validation.categories) !== null && _b !== void 0 ? _b : ValidationCategory.all; + const categories = newCategories.filter(c => !previousCategories.includes(c)); + if (categories.length > 0) { + this.buildState.set(key, { + completed: false, + options: { + validation: Object.assign(Object.assign({}, options.validation), { categories }) + }, + result: buildState.result + }); + document.state = DocumentState.IndexedReferences; + } + } + } + } + else { + // Default: forget any previous build options + this.buildState.delete(key); + } + } + this.currentState = DocumentState.Changed; + await this.emitUpdate(documents.map(e => e.uri), []); + await this.buildDocuments(documents, options, cancelToken); + } + async update(changed, deleted, cancelToken = cancellation/* CancellationToken */.XO.None) { + this.currentState = DocumentState.Changed; + // Remove all metadata of documents that are reported as deleted + for (const deletedUri of deleted) { + this.langiumDocuments.deleteDocument(deletedUri); + this.buildState.delete(deletedUri.toString()); + this.indexManager.remove(deletedUri); + } + // Set the state of all changed documents to `Changed` so they are completely rebuilt + for (const changedUri of changed) { + const invalidated = this.langiumDocuments.invalidateDocument(changedUri); + if (!invalidated) { + // We create an unparsed, invalid document. + // This will be parsed as soon as we reach the first document builder phase. + // This allows to cancel the parsing process later in case we need it. + const newDocument = this.langiumDocumentFactory.fromModel({ $type: 'INVALID' }, changedUri); + newDocument.state = DocumentState.Changed; + this.langiumDocuments.addDocument(newDocument); + } + this.buildState.delete(changedUri.toString()); + } + // Set the state of all documents that should be relinked to `ComputedScopes` (if not already lower) + const allChangedUris = stream_stream(changed).concat(deleted).map(uri => uri.toString()).toSet(); + this.langiumDocuments.all + .filter(doc => !allChangedUris.has(doc.uri.toString()) && this.shouldRelink(doc, allChangedUris)) + .forEach(doc => { + const linker = this.serviceRegistry.getServices(doc.uri).references.Linker; + linker.unlink(doc); + doc.state = Math.min(doc.state, DocumentState.ComputedScopes); + doc.diagnostics = undefined; + }); + // Notify listeners of the update + await this.emitUpdate(changed, deleted); + // Only allow interrupting the execution after all state changes are done + await interruptAndCheck(cancelToken); + // Collect all documents that we should rebuild + const rebuildDocuments = this.langiumDocuments.all + .filter(doc => { + var _a; + // This includes those that were reported as changed and those that we selected for relinking + return doc.state < DocumentState.Linked + // This includes those for which a previous build has been cancelled + || !((_a = this.buildState.get(doc.uri.toString())) === null || _a === void 0 ? void 0 : _a.completed); + }) + .toArray(); + await this.buildDocuments(rebuildDocuments, this.updateBuildOptions, cancelToken); + } + async emitUpdate(changed, deleted) { + await Promise.all(this.updateListeners.map(listener => listener(changed, deleted))); + } + /** + * Check whether the given document should be relinked after changes were found in the given URIs. + */ + shouldRelink(document, changedUris) { + // Relink documents with linking errors -- maybe those references can be resolved now + if (document.references.some(ref => ref.error !== undefined)) { + return true; + } + // Check whether the document is affected by any of the changed URIs + return this.indexManager.isAffected(document, changedUris); + } + onUpdate(callback) { + this.updateListeners.push(callback); + return Disposable.create(() => { + const index = this.updateListeners.indexOf(callback); + if (index >= 0) { + this.updateListeners.splice(index, 1); + } + }); + } + /** + * Build the given documents by stepping through all build phases. If a document's state indicates + * that a certain build phase is already done, the phase is skipped for that document. + */ + async buildDocuments(documents, options, cancelToken) { + this.prepareBuild(documents, options); + // 0. Parse content + await this.runCancelable(documents, DocumentState.Parsed, cancelToken, doc => this.langiumDocumentFactory.update(doc, cancelToken)); + // 1. Index content + await this.runCancelable(documents, DocumentState.IndexedContent, cancelToken, doc => this.indexManager.updateContent(doc, cancelToken)); + // 2. Compute scopes + await this.runCancelable(documents, DocumentState.ComputedScopes, cancelToken, async (doc) => { + const scopeComputation = this.serviceRegistry.getServices(doc.uri).references.ScopeComputation; + doc.precomputedScopes = await scopeComputation.computeLocalScopes(doc, cancelToken); + }); + // 3. Linking + await this.runCancelable(documents, DocumentState.Linked, cancelToken, doc => { + const linker = this.serviceRegistry.getServices(doc.uri).references.Linker; + return linker.link(doc, cancelToken); + }); + // 4. Index references + await this.runCancelable(documents, DocumentState.IndexedReferences, cancelToken, doc => this.indexManager.updateReferences(doc, cancelToken)); + // 5. Validation + const toBeValidated = documents.filter(doc => this.shouldValidate(doc)); + await this.runCancelable(toBeValidated, DocumentState.Validated, cancelToken, doc => this.validate(doc, cancelToken)); + // If we've made it to this point without being cancelled, we can mark the build state as completed. + for (const doc of documents) { + const state = this.buildState.get(doc.uri.toString()); + if (state) { + state.completed = true; + } + } + } + prepareBuild(documents, options) { + for (const doc of documents) { + const key = doc.uri.toString(); + const state = this.buildState.get(key); + // If the document has no previous build state, we set it. If it has one, but it's already marked + // as completed, we overwrite it. If the previous build was not completed, we keep its state + // and continue where it was cancelled. + if (!state || state.completed) { + this.buildState.set(key, { + completed: false, + options, + result: state === null || state === void 0 ? void 0 : state.result + }); + } + } + } + async runCancelable(documents, targetState, cancelToken, callback) { + const filtered = documents.filter(e => e.state < targetState); + for (const document of filtered) { + await interruptAndCheck(cancelToken); + await callback(document); + document.state = targetState; + } + await this.notifyBuildPhase(filtered, targetState, cancelToken); + this.currentState = targetState; + } + onBuildPhase(targetState, callback) { + this.buildPhaseListeners.add(targetState, callback); + return Disposable.create(() => { + this.buildPhaseListeners.delete(targetState, callback); + }); + } + waitUntil(state, uriOrToken, cancelToken) { + let uri = undefined; + if (uriOrToken && 'path' in uriOrToken) { + uri = uriOrToken; + } + else { + cancelToken = uriOrToken; + } + cancelToken !== null && cancelToken !== void 0 ? cancelToken : (cancelToken = cancellation/* CancellationToken */.XO.None); + if (uri) { + const document = this.langiumDocuments.getDocument(uri); + if (document && document.state > state) { + return Promise.resolve(uri); + } + } + if (this.currentState >= state) { + return Promise.resolve(undefined); + } + else if (cancelToken.isCancellationRequested) { + return Promise.reject(promise_utils_OperationCancelled); + } + return new Promise((resolve, reject) => { + const buildDisposable = this.onBuildPhase(state, () => { + buildDisposable.dispose(); + cancelDisposable.dispose(); + if (uri) { + const document = this.langiumDocuments.getDocument(uri); + resolve(document === null || document === void 0 ? void 0 : document.uri); + } + else { + resolve(undefined); + } + }); + const cancelDisposable = cancelToken.onCancellationRequested(() => { + buildDisposable.dispose(); + cancelDisposable.dispose(); + reject(promise_utils_OperationCancelled); + }); + }); + } + async notifyBuildPhase(documents, state, cancelToken) { + if (documents.length === 0) { + // Don't notify when no document has been processed + return; + } + const listeners = this.buildPhaseListeners.get(state); + for (const listener of listeners) { + await interruptAndCheck(cancelToken); + await listener(documents, cancelToken); + } + } + /** + * Determine whether the given document should be validated during a build. The default + * implementation checks the `validation` property of the build options. If it's set to `true` + * or a `ValidationOptions` object, the document is included in the validation phase. + */ + shouldValidate(document) { + return Boolean(this.getBuildOptions(document).validation); + } + /** + * Run validation checks on the given document and store the resulting diagnostics in the document. + * If the document already contains diagnostics, the new ones are added to the list. + */ + async validate(document, cancelToken) { + var _a, _b; + const validator = this.serviceRegistry.getServices(document.uri).validation.DocumentValidator; + const validationSetting = this.getBuildOptions(document).validation; + const options = typeof validationSetting === 'object' ? validationSetting : undefined; + const diagnostics = await validator.validateDocument(document, options, cancelToken); + if (document.diagnostics) { + document.diagnostics.push(...diagnostics); + } + else { + document.diagnostics = diagnostics; + } + // Store information about the executed validation in the build state + const state = this.buildState.get(document.uri.toString()); + if (state) { + (_a = state.result) !== null && _a !== void 0 ? _a : (state.result = {}); + const newCategories = (_b = options === null || options === void 0 ? void 0 : options.categories) !== null && _b !== void 0 ? _b : ValidationCategory.all; + if (state.result.validationChecks) { + state.result.validationChecks.push(...newCategories); + } + else { + state.result.validationChecks = [...newCategories]; + } + } + } + getBuildOptions(document) { + var _a, _b; + return (_b = (_a = this.buildState.get(document.uri.toString())) === null || _a === void 0 ? void 0 : _a.options) !== null && _b !== void 0 ? _b : {}; + } +} +//# sourceMappingURL=document-builder.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/workspace/index-manager.js +/****************************************************************************** + * Copyright 2021 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + + + + + +class DefaultIndexManager { + constructor(services) { + /** + * The symbol index stores all `AstNodeDescription` items exported by a document. + * The key used in this map is the string representation of the specific document URI. + */ + this.symbolIndex = new Map(); + /** + * This is a cache for the `allElements()` method. + * It caches the descriptions from `symbolIndex` grouped by types. + */ + this.symbolByTypeIndex = new ContextCache(); + /** + * This index keeps track of all `ReferenceDescription` items exported by a document. + * This is used to compute which elements are affected by a document change + * and for finding references to an AST node. + */ + this.referenceIndex = new Map(); + this.documents = services.workspace.LangiumDocuments; + this.serviceRegistry = services.ServiceRegistry; + this.astReflection = services.AstReflection; + } + findAllReferences(targetNode, astNodePath) { + const targetDocUri = getDocument(targetNode).uri; + const result = []; + this.referenceIndex.forEach(docRefs => { + docRefs.forEach(refDescr => { + if (UriUtils.equals(refDescr.targetUri, targetDocUri) && refDescr.targetPath === astNodePath) { + result.push(refDescr); + } + }); + }); + return stream_stream(result); + } + allElements(nodeType, uris) { + let documentUris = stream_stream(this.symbolIndex.keys()); + if (uris) { + documentUris = documentUris.filter(uri => !uris || uris.has(uri)); + } + return documentUris + .map(uri => this.getFileDescriptions(uri, nodeType)) + .flat(); + } + getFileDescriptions(uri, nodeType) { + var _a; + if (!nodeType) { + return (_a = this.symbolIndex.get(uri)) !== null && _a !== void 0 ? _a : []; + } + const descriptions = this.symbolByTypeIndex.get(uri, nodeType, () => { + var _a; + const allFileDescriptions = (_a = this.symbolIndex.get(uri)) !== null && _a !== void 0 ? _a : []; + return allFileDescriptions.filter(e => this.astReflection.isSubtype(e.type, nodeType)); + }); + return descriptions; + } + remove(uri) { + const uriString = uri.toString(); + this.symbolIndex.delete(uriString); + this.symbolByTypeIndex.clear(uriString); + this.referenceIndex.delete(uriString); + } + async updateContent(document, cancelToken = cancellation/* CancellationToken */.XO.None) { + const services = this.serviceRegistry.getServices(document.uri); + const exports = await services.references.ScopeComputation.computeExports(document, cancelToken); + const uri = document.uri.toString(); + this.symbolIndex.set(uri, exports); + this.symbolByTypeIndex.clear(uri); + } + async updateReferences(document, cancelToken = cancellation/* CancellationToken */.XO.None) { + const services = this.serviceRegistry.getServices(document.uri); + const indexData = await services.workspace.ReferenceDescriptionProvider.createDescriptions(document, cancelToken); + this.referenceIndex.set(document.uri.toString(), indexData); + } + isAffected(document, changedUris) { + const references = this.referenceIndex.get(document.uri.toString()); + if (!references) { + return false; + } + return references.some(ref => !ref.local && changedUris.has(ref.targetUri.toString())); + } +} +//# sourceMappingURL=index-manager.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/workspace/workspace-manager.js +/****************************************************************************** + * Copyright 2022 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + + + +class DefaultWorkspaceManager { + constructor(services) { + this.initialBuildOptions = {}; + this._ready = new promise_utils_Deferred(); + this.serviceRegistry = services.ServiceRegistry; + this.langiumDocuments = services.workspace.LangiumDocuments; + this.documentBuilder = services.workspace.DocumentBuilder; + this.fileSystemProvider = services.workspace.FileSystemProvider; + this.mutex = services.workspace.WorkspaceLock; + } + get ready() { + return this._ready.promise; + } + initialize(params) { + var _a; + this.folders = (_a = params.workspaceFolders) !== null && _a !== void 0 ? _a : undefined; + } + initialized(_params) { + // Initialize the workspace even if there are no workspace folders + // We still want to load additional documents (language library or similar) during initialization + return this.mutex.write(token => { var _a; return this.initializeWorkspace((_a = this.folders) !== null && _a !== void 0 ? _a : [], token); }); + } + async initializeWorkspace(folders, cancelToken = cancellation/* CancellationToken */.XO.None) { + const documents = await this.performStartup(folders); + // Only after creating all documents do we check whether we need to cancel the initialization + // The document builder will later pick up on all unprocessed documents + await interruptAndCheck(cancelToken); + await this.documentBuilder.build(documents, this.initialBuildOptions, cancelToken); + } + /** + * Performs the uninterruptable startup sequence of the workspace manager. + * This methods loads all documents in the workspace and other documents and returns them. + */ + async performStartup(folders) { + const fileExtensions = this.serviceRegistry.all.flatMap(e => e.LanguageMetaData.fileExtensions); + const documents = []; + const collector = (document) => { + documents.push(document); + if (!this.langiumDocuments.hasDocument(document.uri)) { + this.langiumDocuments.addDocument(document); + } + }; + // Even though we don't await the initialization of the workspace manager, + // we can still assume that all library documents and file documents are loaded by the time we start building documents. + // The mutex prevents anything from performing a workspace build until we check the cancellation token + await this.loadAdditionalDocuments(folders, collector); + await Promise.all(folders.map(wf => [wf, this.getRootFolder(wf)]) + .map(async (entry) => this.traverseFolder(...entry, fileExtensions, collector))); + this._ready.resolve(); + return documents; + } + /** + * Load all additional documents that shall be visible in the context of the given workspace + * folders and add them to the collector. This can be used to include built-in libraries of + * your language, which can be either loaded from provided files or constructed in memory. + */ + loadAdditionalDocuments(_folders, _collector) { + return Promise.resolve(); + } + /** + * Determine the root folder of the source documents in the given workspace folder. + * The default implementation returns the URI of the workspace folder, but you can override + * this to return a subfolder like `src` instead. + */ + getRootFolder(workspaceFolder) { + return esm_URI.parse(workspaceFolder.uri); + } + /** + * Traverse the file system folder identified by the given URI and its subfolders. All + * contained files that match the file extensions are added to the collector. + */ + async traverseFolder(workspaceFolder, folderPath, fileExtensions, collector) { + const content = await this.fileSystemProvider.readDirectory(folderPath); + await Promise.all(content.map(async (entry) => { + if (this.includeEntry(workspaceFolder, entry, fileExtensions)) { + if (entry.isDirectory) { + await this.traverseFolder(workspaceFolder, entry.uri, fileExtensions, collector); + } + else if (entry.isFile) { + const document = await this.langiumDocuments.getOrCreateDocument(entry.uri); + collector(document); + } + } + })); + } + /** + * Determine whether the given folder entry shall be included while indexing the workspace. + */ + includeEntry(_workspaceFolder, entry, fileExtensions) { + const name = UriUtils.basename(entry.uri); + if (name.startsWith('.')) { + return false; + } + if (entry.isDirectory) { + return name !== 'node_modules' && name !== 'out'; + } + else if (entry.isFile) { + const extname = UriUtils.extname(entry.uri); + return fileExtensions.includes(extname); + } + return false; + } +} +//# sourceMappingURL=workspace-manager.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/parser/lexer.js +/****************************************************************************** + * Copyright 2022 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + +class DefaultLexer { + constructor(services) { + const tokens = services.parser.TokenBuilder.buildTokens(services.Grammar, { + caseInsensitive: services.LanguageMetaData.caseInsensitive + }); + this.tokenTypes = this.toTokenTypeDictionary(tokens); + const lexerTokens = isTokenTypeDictionary(tokens) ? Object.values(tokens) : tokens; + this.chevrotainLexer = new Lexer(lexerTokens, { + positionTracking: 'full' + }); + } + get definition() { + return this.tokenTypes; + } + tokenize(text) { + var _a; + const chevrotainResult = this.chevrotainLexer.tokenize(text); + return { + tokens: chevrotainResult.tokens, + errors: chevrotainResult.errors, + hidden: (_a = chevrotainResult.groups.hidden) !== null && _a !== void 0 ? _a : [] + }; + } + toTokenTypeDictionary(buildTokens) { + if (isTokenTypeDictionary(buildTokens)) + return buildTokens; + const tokens = isIMultiModeLexerDefinition(buildTokens) ? Object.values(buildTokens.modes).flat() : buildTokens; + const res = {}; + tokens.forEach(token => res[token.name] = token); + return res; + } +} +/** + * Returns a check whether the given TokenVocabulary is TokenType array + */ +function isTokenTypeArray(tokenVocabulary) { + return Array.isArray(tokenVocabulary) && (tokenVocabulary.length === 0 || 'name' in tokenVocabulary[0]); +} +/** + * Returns a check whether the given TokenVocabulary is IMultiModeLexerDefinition + */ +function isIMultiModeLexerDefinition(tokenVocabulary) { + return tokenVocabulary && 'modes' in tokenVocabulary && 'defaultMode' in tokenVocabulary; +} +/** + * Returns a check whether the given TokenVocabulary is TokenTypeDictionary + */ +function isTokenTypeDictionary(tokenVocabulary) { + return !isTokenTypeArray(tokenVocabulary) && !isIMultiModeLexerDefinition(tokenVocabulary); +} +//# sourceMappingURL=lexer.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/documentation/jsdoc.js +/****************************************************************************** + * Copyright 2023 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + + + +function parseJSDoc(node, start, options) { + let opts; + let position; + if (typeof node === 'string') { + position = start; + opts = options; + } + else { + position = node.range.start; + opts = start; + } + if (!position) { + position = Position.create(0, 0); + } + const lines = getLines(node); + const normalizedOptions = normalizeOptions(opts); + const tokens = tokenize({ + lines, + position, + options: normalizedOptions + }); + return parseJSDocComment({ + index: 0, + tokens, + position + }); +} +function isJSDoc(node, options) { + const normalizedOptions = normalizeOptions(options); + const lines = getLines(node); + if (lines.length === 0) { + return false; + } + const first = lines[0]; + const last = lines[lines.length - 1]; + const firstRegex = normalizedOptions.start; + const lastRegex = normalizedOptions.end; + return Boolean(firstRegex === null || firstRegex === void 0 ? void 0 : firstRegex.exec(first)) && Boolean(lastRegex === null || lastRegex === void 0 ? void 0 : lastRegex.exec(last)); +} +function getLines(node) { + let content = ''; + if (typeof node === 'string') { + content = node; + } + else { + content = node.text; + } + const lines = content.split(NEWLINE_REGEXP); + return lines; +} +const tagRegex = /\s*(@([\p{L}][\p{L}\p{N}]*)?)/uy; +const inlineTagRegex = /\{(@[\p{L}][\p{L}\p{N}]*)(\s*)([^\r\n}]+)?\}/gu; +function tokenize(context) { + var _a, _b, _c; + const tokens = []; + let currentLine = context.position.line; + let currentCharacter = context.position.character; + for (let i = 0; i < context.lines.length; i++) { + const first = i === 0; + const last = i === context.lines.length - 1; + let line = context.lines[i]; + let index = 0; + if (first && context.options.start) { + const match = (_a = context.options.start) === null || _a === void 0 ? void 0 : _a.exec(line); + if (match) { + index = match.index + match[0].length; + } + } + else { + const match = (_b = context.options.line) === null || _b === void 0 ? void 0 : _b.exec(line); + if (match) { + index = match.index + match[0].length; + } + } + if (last) { + const match = (_c = context.options.end) === null || _c === void 0 ? void 0 : _c.exec(line); + if (match) { + line = line.substring(0, match.index); + } + } + line = line.substring(0, lastCharacter(line)); + const whitespaceEnd = skipWhitespace(line, index); + if (whitespaceEnd >= line.length) { + // Only create a break token when we already have previous tokens + if (tokens.length > 0) { + const position = Position.create(currentLine, currentCharacter); + tokens.push({ + type: 'break', + content: '', + range: Range.create(position, position) + }); + } + } + else { + tagRegex.lastIndex = index; + const tagMatch = tagRegex.exec(line); + if (tagMatch) { + const fullMatch = tagMatch[0]; + const value = tagMatch[1]; + const start = Position.create(currentLine, currentCharacter + index); + const end = Position.create(currentLine, currentCharacter + index + fullMatch.length); + tokens.push({ + type: 'tag', + content: value, + range: Range.create(start, end) + }); + index += fullMatch.length; + index = skipWhitespace(line, index); + } + if (index < line.length) { + const rest = line.substring(index); + const inlineTagMatches = Array.from(rest.matchAll(inlineTagRegex)); + tokens.push(...buildInlineTokens(inlineTagMatches, rest, currentLine, currentCharacter + index)); + } + } + currentLine++; + currentCharacter = 0; + } + // Remove last break token if there is one + if (tokens.length > 0 && tokens[tokens.length - 1].type === 'break') { + return tokens.slice(0, -1); + } + return tokens; +} +function buildInlineTokens(tags, line, lineIndex, characterIndex) { + const tokens = []; + if (tags.length === 0) { + const start = Position.create(lineIndex, characterIndex); + const end = Position.create(lineIndex, characterIndex + line.length); + tokens.push({ + type: 'text', + content: line, + range: Range.create(start, end) + }); + } + else { + let lastIndex = 0; + for (const match of tags) { + const matchIndex = match.index; + const startContent = line.substring(lastIndex, matchIndex); + if (startContent.length > 0) { + tokens.push({ + type: 'text', + content: line.substring(lastIndex, matchIndex), + range: Range.create(Position.create(lineIndex, lastIndex + characterIndex), Position.create(lineIndex, matchIndex + characterIndex)) + }); + } + let offset = startContent.length + 1; + const tagName = match[1]; + tokens.push({ + type: 'inline-tag', + content: tagName, + range: Range.create(Position.create(lineIndex, lastIndex + offset + characterIndex), Position.create(lineIndex, lastIndex + offset + tagName.length + characterIndex)) + }); + offset += tagName.length; + if (match.length === 4) { + offset += match[2].length; + const value = match[3]; + tokens.push({ + type: 'text', + content: value, + range: Range.create(Position.create(lineIndex, lastIndex + offset + characterIndex), Position.create(lineIndex, lastIndex + offset + value.length + characterIndex)) + }); + } + else { + tokens.push({ + type: 'text', + content: '', + range: Range.create(Position.create(lineIndex, lastIndex + offset + characterIndex), Position.create(lineIndex, lastIndex + offset + characterIndex)) + }); + } + lastIndex = matchIndex + match[0].length; + } + const endContent = line.substring(lastIndex); + if (endContent.length > 0) { + tokens.push({ + type: 'text', + content: endContent, + range: Range.create(Position.create(lineIndex, lastIndex + characterIndex), Position.create(lineIndex, lastIndex + characterIndex + endContent.length)) + }); + } + } + return tokens; +} +const nonWhitespaceRegex = /\S/; +const whitespaceEndRegex = /\s*$/; +function skipWhitespace(line, index) { + const match = line.substring(index).match(nonWhitespaceRegex); + if (match) { + return index + match.index; + } + else { + return line.length; + } +} +function lastCharacter(line) { + const match = line.match(whitespaceEndRegex); + if (match && typeof match.index === 'number') { + return match.index; + } + return undefined; +} +// Parsing +function parseJSDocComment(context) { + var _a, _b, _c, _d; + const startPosition = Position.create(context.position.line, context.position.character); + if (context.tokens.length === 0) { + return new JSDocCommentImpl([], Range.create(startPosition, startPosition)); + } + const elements = []; + while (context.index < context.tokens.length) { + const element = parseJSDocElement(context, elements[elements.length - 1]); + if (element) { + elements.push(element); + } + } + const start = (_b = (_a = elements[0]) === null || _a === void 0 ? void 0 : _a.range.start) !== null && _b !== void 0 ? _b : startPosition; + const end = (_d = (_c = elements[elements.length - 1]) === null || _c === void 0 ? void 0 : _c.range.end) !== null && _d !== void 0 ? _d : startPosition; + return new JSDocCommentImpl(elements, Range.create(start, end)); +} +function parseJSDocElement(context, last) { + const next = context.tokens[context.index]; + if (next.type === 'tag') { + return parseJSDocTag(context, false); + } + else if (next.type === 'text' || next.type === 'inline-tag') { + return parseJSDocText(context); + } + else { + appendEmptyLine(next, last); + context.index++; + return undefined; + } +} +function appendEmptyLine(token, element) { + if (element) { + const line = new JSDocLineImpl('', token.range); + if ('inlines' in element) { + element.inlines.push(line); + } + else { + element.content.inlines.push(line); + } + } +} +function parseJSDocText(context) { + let token = context.tokens[context.index]; + const firstToken = token; + let lastToken = token; + const lines = []; + while (token && token.type !== 'break' && token.type !== 'tag') { + lines.push(parseJSDocInline(context)); + lastToken = token; + token = context.tokens[context.index]; + } + return new JSDocTextImpl(lines, Range.create(firstToken.range.start, lastToken.range.end)); +} +function parseJSDocInline(context) { + const token = context.tokens[context.index]; + if (token.type === 'inline-tag') { + return parseJSDocTag(context, true); + } + else { + return parseJSDocLine(context); + } +} +function parseJSDocTag(context, inline) { + const tagToken = context.tokens[context.index++]; + const name = tagToken.content.substring(1); + const nextToken = context.tokens[context.index]; + if ((nextToken === null || nextToken === void 0 ? void 0 : nextToken.type) === 'text') { + if (inline) { + const docLine = parseJSDocLine(context); + return new JSDocTagImpl(name, new JSDocTextImpl([docLine], docLine.range), inline, Range.create(tagToken.range.start, docLine.range.end)); + } + else { + const textDoc = parseJSDocText(context); + return new JSDocTagImpl(name, textDoc, inline, Range.create(tagToken.range.start, textDoc.range.end)); + } + } + else { + const range = tagToken.range; + return new JSDocTagImpl(name, new JSDocTextImpl([], range), inline, range); + } +} +function parseJSDocLine(context) { + const token = context.tokens[context.index++]; + return new JSDocLineImpl(token.content, token.range); +} +function normalizeOptions(options) { + if (!options) { + return normalizeOptions({ + start: '/**', + end: '*/', + line: '*' + }); + } + const { start, end, line } = options; + return { + start: normalizeOption(start, true), + end: normalizeOption(end, false), + line: normalizeOption(line, true) + }; +} +function normalizeOption(option, start) { + if (typeof option === 'string' || typeof option === 'object') { + const escaped = typeof option === 'string' ? escapeRegExp(option) : option.source; + if (start) { + return new RegExp(`^\\s*${escaped}`); + } + else { + return new RegExp(`\\s*${escaped}\\s*$`); + } + } + else { + return option; + } +} +class JSDocCommentImpl { + constructor(elements, range) { + this.elements = elements; + this.range = range; + } + getTag(name) { + return this.getAllTags().find(e => e.name === name); + } + getTags(name) { + return this.getAllTags().filter(e => e.name === name); + } + getAllTags() { + return this.elements.filter((e) => 'name' in e); + } + toString() { + let value = ''; + for (const element of this.elements) { + if (value.length === 0) { + value = element.toString(); + } + else { + const text = element.toString(); + value += fillNewlines(value) + text; + } + } + return value.trim(); + } + toMarkdown(options) { + let value = ''; + for (const element of this.elements) { + if (value.length === 0) { + value = element.toMarkdown(options); + } + else { + const text = element.toMarkdown(options); + value += fillNewlines(value) + text; + } + } + return value.trim(); + } +} +class JSDocTagImpl { + constructor(name, content, inline, range) { + this.name = name; + this.content = content; + this.inline = inline; + this.range = range; + } + toString() { + let text = `@${this.name}`; + const content = this.content.toString(); + if (this.content.inlines.length === 1) { + text = `${text} ${content}`; + } + else if (this.content.inlines.length > 1) { + text = `${text}\n${content}`; + } + if (this.inline) { + // Inline tags are surrounded by curly braces + return `{${text}}`; + } + else { + return text; + } + } + toMarkdown(options) { + var _a, _b; + return (_b = (_a = options === null || options === void 0 ? void 0 : options.renderTag) === null || _a === void 0 ? void 0 : _a.call(options, this)) !== null && _b !== void 0 ? _b : this.toMarkdownDefault(options); + } + toMarkdownDefault(options) { + const content = this.content.toMarkdown(options); + if (this.inline) { + const rendered = renderInlineTag(this.name, content, options !== null && options !== void 0 ? options : {}); + if (typeof rendered === 'string') { + return rendered; + } + } + let marker = ''; + if ((options === null || options === void 0 ? void 0 : options.tag) === 'italic' || (options === null || options === void 0 ? void 0 : options.tag) === undefined) { + marker = '*'; + } + else if ((options === null || options === void 0 ? void 0 : options.tag) === 'bold') { + marker = '**'; + } + else if ((options === null || options === void 0 ? void 0 : options.tag) === 'bold-italic') { + marker = '***'; + } + let text = `${marker}@${this.name}${marker}`; + if (this.content.inlines.length === 1) { + text = `${text} — ${content}`; + } + else if (this.content.inlines.length > 1) { + text = `${text}\n${content}`; + } + if (this.inline) { + // Inline tags are surrounded by curly braces + return `{${text}}`; + } + else { + return text; + } + } +} +function renderInlineTag(tag, content, options) { + var _a, _b; + if (tag === 'linkplain' || tag === 'linkcode' || tag === 'link') { + const index = content.indexOf(' '); + let display = content; + if (index > 0) { + const displayStart = skipWhitespace(content, index); + display = content.substring(displayStart); + content = content.substring(0, index); + } + if (tag === 'linkcode' || (tag === 'link' && options.link === 'code')) { + // Surround the display value in a markdown inline code block + display = `\`${display}\``; + } + const renderedLink = (_b = (_a = options.renderLink) === null || _a === void 0 ? void 0 : _a.call(options, content, display)) !== null && _b !== void 0 ? _b : renderLinkDefault(content, display); + return renderedLink; + } + return undefined; +} +function renderLinkDefault(content, display) { + try { + esm_URI.parse(content, true); + return `[${display}](${content})`; + } + catch (_a) { + return content; + } +} +class JSDocTextImpl { + constructor(lines, range) { + this.inlines = lines; + this.range = range; + } + toString() { + let text = ''; + for (let i = 0; i < this.inlines.length; i++) { + const inline = this.inlines[i]; + const next = this.inlines[i + 1]; + text += inline.toString(); + if (next && next.range.start.line > inline.range.start.line) { + text += '\n'; + } + } + return text; + } + toMarkdown(options) { + let text = ''; + for (let i = 0; i < this.inlines.length; i++) { + const inline = this.inlines[i]; + const next = this.inlines[i + 1]; + text += inline.toMarkdown(options); + if (next && next.range.start.line > inline.range.start.line) { + text += '\n'; + } + } + return text; + } +} +class JSDocLineImpl { + constructor(text, range) { + this.text = text; + this.range = range; + } + toString() { + return this.text; + } + toMarkdown() { + return this.text; + } +} +function fillNewlines(text) { + if (text.endsWith('\n')) { + return '\n'; + } + else { + return '\n\n'; + } +} +//# sourceMappingURL=jsdoc.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/documentation/documentation-provider.js +/****************************************************************************** + * Copyright 2023 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + + +class JSDocDocumentationProvider { + constructor(services) { + this.indexManager = services.shared.workspace.IndexManager; + this.commentProvider = services.documentation.CommentProvider; + } + getDocumentation(node) { + const comment = this.commentProvider.getComment(node); + if (comment && isJSDoc(comment)) { + const parsedJSDoc = parseJSDoc(comment); + return parsedJSDoc.toMarkdown({ + renderLink: (link, display) => { + return this.documentationLinkRenderer(node, link, display); + }, + renderTag: (tag) => { + return this.documentationTagRenderer(node, tag); + } + }); + } + return undefined; + } + documentationLinkRenderer(node, name, display) { + var _a; + const description = (_a = this.findNameInPrecomputedScopes(node, name)) !== null && _a !== void 0 ? _a : this.findNameInGlobalScope(node, name); + if (description && description.nameSegment) { + const line = description.nameSegment.range.start.line + 1; + const character = description.nameSegment.range.start.character + 1; + const uri = description.documentUri.with({ fragment: `L${line},${character}` }); + return `[${display}](${uri.toString()})`; + } + else { + return undefined; + } + } + documentationTagRenderer(_node, _tag) { + // Fall back to the default tag rendering + return undefined; + } + findNameInPrecomputedScopes(node, name) { + const document = getDocument(node); + const precomputed = document.precomputedScopes; + if (!precomputed) { + return undefined; + } + let currentNode = node; + do { + const allDescriptions = precomputed.get(currentNode); + const description = allDescriptions.find(e => e.name === name); + if (description) { + return description; + } + currentNode = currentNode.$container; + } while (currentNode); + return undefined; + } + findNameInGlobalScope(node, name) { + const description = this.indexManager.allElements().find(e => e.name === name); + return description; + } +} +//# sourceMappingURL=documentation-provider.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/documentation/comment-provider.js +/****************************************************************************** + * Copyright 2023 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + + +class DefaultCommentProvider { + constructor(services) { + this.grammarConfig = () => services.parser.GrammarConfig; + } + getComment(node) { + var _a; + if (isAstNodeWithComment(node)) { + return node.$comment; + } + return (_a = findCommentNode(node.$cstNode, this.grammarConfig().multilineCommentRules)) === null || _a === void 0 ? void 0 : _a.text; + } +} +//# sourceMappingURL=comment-provider.js.map +// EXTERNAL MODULE: ./node_modules/vscode-jsonrpc/lib/common/events.js +var events = __webpack_require__(62676); +;// CONCATENATED MODULE: ./node_modules/langium/lib/utils/event.js +/****************************************************************************** + * Copyright 2024 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ +// eslint-disable-next-line no-restricted-imports + +//# sourceMappingURL=event.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/parser/async-parser.js +/****************************************************************************** + * Copyright 2023 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + + +/** + * Default implementation of the async parser. This implementation only wraps the sync parser in a promise. + * + * A real implementation would create worker threads or web workers to offload the parsing work. + */ +class DefaultAsyncParser { + constructor(services) { + this.syncParser = services.parser.LangiumParser; + } + parse(text) { + return Promise.resolve(this.syncParser.parse(text)); + } +} +class AbstractThreadedAsyncParser { + constructor(services) { + /** + * The thread count determines how many threads are used to parse files in parallel. + * The default value is 8. Decreasing this value increases startup performance, but decreases parallel parsing performance. + */ + this.threadCount = 8; + /** + * The termination delay determines how long the parser waits for a thread to finish after a cancellation request. + * The default value is 200(ms). + */ + this.terminationDelay = 200; + this.workerPool = []; + this.queue = []; + this.hydrator = services.serializer.Hydrator; + } + initializeWorkers() { + while (this.workerPool.length < this.threadCount) { + const worker = this.createWorker(); + worker.onReady(() => { + if (this.queue.length > 0) { + const deferred = this.queue.shift(); + if (deferred) { + worker.lock(); + deferred.resolve(worker); + } + } + }); + this.workerPool.push(worker); + } + } + async parse(text, cancelToken) { + const worker = await this.acquireParserWorker(cancelToken); + const deferred = new Deferred(); + let timeout; + // If the cancellation token is requested, we wait for a certain time before terminating the worker. + // Since the cancellation token lives longer than the parsing process, we need to dispose the event listener. + // Otherwise, we might accidentally terminate the worker after the parsing process has finished. + const cancellation = cancelToken.onCancellationRequested(() => { + timeout = setTimeout(() => { + this.terminateWorker(worker); + }, this.terminationDelay); + }); + worker.parse(text).then(result => { + const hydrated = this.hydrator.hydrate(result); + deferred.resolve(hydrated); + }).catch(err => { + deferred.reject(err); + }).finally(() => { + cancellation.dispose(); + clearTimeout(timeout); + }); + return deferred.promise; + } + terminateWorker(worker) { + worker.terminate(); + const index = this.workerPool.indexOf(worker); + if (index >= 0) { + this.workerPool.splice(index, 1); + } + } + async acquireParserWorker(cancelToken) { + this.initializeWorkers(); + for (const worker of this.workerPool) { + if (worker.ready) { + worker.lock(); + return worker; + } + } + const deferred = new Deferred(); + cancelToken.onCancellationRequested(() => { + const index = this.queue.indexOf(deferred); + if (index >= 0) { + this.queue.splice(index, 1); + } + deferred.reject(OperationCancelled); + }); + this.queue.push(deferred); + return deferred.promise; + } +} +class ParserWorker { + get ready() { + return this._ready; + } + get onReady() { + return this.onReadyEmitter.event; + } + constructor(sendMessage, onMessage, onError, terminate) { + this.onReadyEmitter = new Emitter(); + this.deferred = new Deferred(); + this._ready = true; + this._parsing = false; + this.sendMessage = sendMessage; + this._terminate = terminate; + onMessage(result => { + const parseResult = result; + this.deferred.resolve(parseResult); + this.unlock(); + }); + onError(error => { + this.deferred.reject(error); + this.unlock(); + }); + } + terminate() { + this.deferred.reject(OperationCancelled); + this._terminate(); + } + lock() { + this._ready = false; + } + unlock() { + this._parsing = false; + this._ready = true; + this.onReadyEmitter.fire(); + } + parse(text) { + if (this._parsing) { + throw new Error('Parser worker is busy'); + } + this._parsing = true; + this.deferred = new Deferred(); + this.sendMessage(text); + return this.deferred.promise; + } +} +//# sourceMappingURL=async-parser.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/workspace/workspace-lock.js +/****************************************************************************** + * Copyright 2023 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + + +class DefaultWorkspaceLock { + constructor() { + this.previousTokenSource = new cancellation/* CancellationTokenSource */.Qi(); + this.writeQueue = []; + this.readQueue = []; + this.done = true; + } + write(action) { + this.cancelWrite(); + const tokenSource = new cancellation/* CancellationTokenSource */.Qi(); + this.previousTokenSource = tokenSource; + return this.enqueue(this.writeQueue, action, tokenSource.token); + } + read(action) { + return this.enqueue(this.readQueue, action); + } + enqueue(queue, action, cancellationToken) { + const deferred = new promise_utils_Deferred(); + const entry = { + action, + deferred, + cancellationToken: cancellationToken !== null && cancellationToken !== void 0 ? cancellationToken : cancellation/* CancellationToken */.XO.None + }; + queue.push(entry); + this.performNextOperation(); + return deferred.promise; + } + async performNextOperation() { + if (!this.done) { + return; + } + const entries = []; + if (this.writeQueue.length > 0) { + // Just perform the next write action + entries.push(this.writeQueue.shift()); + } + else if (this.readQueue.length > 0) { + // Empty the read queue and perform all actions in parallel + entries.push(...this.readQueue.splice(0, this.readQueue.length)); + } + else { + return; + } + this.done = false; + await Promise.all(entries.map(async ({ action, deferred, cancellationToken }) => { + try { + // Move the execution of the action to the next event loop tick via `Promise.resolve()` + const result = await Promise.resolve().then(() => action(cancellationToken)); + deferred.resolve(result); + } + catch (err) { + if (isOperationCancelled(err)) { + // If the operation was cancelled, we don't want to reject the promise + deferred.resolve(undefined); + } + else { + deferred.reject(err); + } + } + })); + this.done = true; + this.performNextOperation(); + } + cancelWrite() { + this.previousTokenSource.cancel(); + } +} +//# sourceMappingURL=workspace-lock.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/serializer/hydrator.js +/****************************************************************************** + * Copyright 2024 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + + + + + + +class DefaultHydrator { + constructor(services) { + this.grammarElementIdMap = new BiMap(); + this.tokenTypeIdMap = new BiMap(); + this.grammar = services.Grammar; + this.lexer = services.parser.Lexer; + this.linker = services.references.Linker; + } + dehydrate(result) { + return { + // We need to create shallow copies of the errors + // The original errors inherit from the `Error` class, which is not transferable across worker threads + lexerErrors: result.lexerErrors.map(e => (Object.assign({}, e))), + parserErrors: result.parserErrors.map(e => (Object.assign({}, e))), + value: this.dehydrateAstNode(result.value, this.createDehyrationContext(result.value)) + }; + } + createDehyrationContext(node) { + const astNodes = new Map(); + const cstNodes = new Map(); + for (const astNode of streamAst(node)) { + astNodes.set(astNode, {}); + } + if (node.$cstNode) { + for (const cstNode of streamCst(node.$cstNode)) { + cstNodes.set(cstNode, {}); + } + } + return { + astNodes, + cstNodes + }; + } + dehydrateAstNode(node, context) { + const obj = context.astNodes.get(node); + obj.$type = node.$type; + obj.$containerIndex = node.$containerIndex; + obj.$containerProperty = node.$containerProperty; + if (node.$cstNode !== undefined) { + obj.$cstNode = this.dehydrateCstNode(node.$cstNode, context); + } + for (const [name, value] of Object.entries(node)) { + if (name.startsWith('$')) { + continue; + } + if (Array.isArray(value)) { + const arr = []; + obj[name] = arr; + for (const item of value) { + if (syntax_tree_isAstNode(item)) { + arr.push(this.dehydrateAstNode(item, context)); + } + else if (syntax_tree_isReference(item)) { + arr.push(this.dehydrateReference(item, context)); + } + else { + arr.push(item); + } + } + } + else if (syntax_tree_isAstNode(value)) { + obj[name] = this.dehydrateAstNode(value, context); + } + else if (syntax_tree_isReference(value)) { + obj[name] = this.dehydrateReference(value, context); + } + else if (value !== undefined) { + obj[name] = value; + } + } + return obj; + } + dehydrateReference(reference, context) { + const obj = {}; + obj.$refText = reference.$refText; + if (reference.$refNode) { + obj.$refNode = context.cstNodes.get(reference.$refNode); + } + return obj; + } + dehydrateCstNode(node, context) { + const cstNode = context.cstNodes.get(node); + if (isRootCstNode(node)) { + cstNode.fullText = node.fullText; + } + else { + // Note: This returns undefined for hidden nodes (i.e. comments) + cstNode.grammarSource = this.getGrammarElementId(node.grammarSource); + } + cstNode.hidden = node.hidden; + cstNode.astNode = context.astNodes.get(node.astNode); + if (syntax_tree_isCompositeCstNode(node)) { + cstNode.content = node.content.map(child => this.dehydrateCstNode(child, context)); + } + else if (syntax_tree_isLeafCstNode(node)) { + cstNode.tokenType = node.tokenType.name; + cstNode.offset = node.offset; + cstNode.length = node.length; + cstNode.startLine = node.range.start.line; + cstNode.startColumn = node.range.start.character; + cstNode.endLine = node.range.end.line; + cstNode.endColumn = node.range.end.character; + } + return cstNode; + } + hydrate(result) { + const node = result.value; + const context = this.createHydrationContext(node); + if ('$cstNode' in node) { + this.hydrateCstNode(node.$cstNode, context); + } + return { + lexerErrors: result.lexerErrors, + parserErrors: result.parserErrors, + value: this.hydrateAstNode(node, context) + }; + } + createHydrationContext(node) { + const astNodes = new Map(); + const cstNodes = new Map(); + for (const astNode of streamAst(node)) { + astNodes.set(astNode, {}); + } + let root; + if (node.$cstNode) { + for (const cstNode of streamCst(node.$cstNode)) { + let cst; + if ('fullText' in cstNode) { + cst = new RootCstNodeImpl(cstNode.fullText); + root = cst; + } + else if ('content' in cstNode) { + cst = new CompositeCstNodeImpl(); + } + else if ('tokenType' in cstNode) { + cst = this.hydrateCstLeafNode(cstNode); + } + if (cst) { + cstNodes.set(cstNode, cst); + cst.root = root; + } + } + } + return { + astNodes, + cstNodes + }; + } + hydrateAstNode(node, context) { + const astNode = context.astNodes.get(node); + astNode.$type = node.$type; + astNode.$containerIndex = node.$containerIndex; + astNode.$containerProperty = node.$containerProperty; + if (node.$cstNode) { + astNode.$cstNode = context.cstNodes.get(node.$cstNode); + } + for (const [name, value] of Object.entries(node)) { + if (name.startsWith('$')) { + continue; + } + if (Array.isArray(value)) { + const arr = []; + astNode[name] = arr; + for (const item of value) { + if (syntax_tree_isAstNode(item)) { + arr.push(this.setParent(this.hydrateAstNode(item, context), astNode)); + } + else if (syntax_tree_isReference(item)) { + arr.push(this.hydrateReference(item, astNode, name, context)); + } + else { + arr.push(item); + } + } + } + else if (syntax_tree_isAstNode(value)) { + astNode[name] = this.setParent(this.hydrateAstNode(value, context), astNode); + } + else if (syntax_tree_isReference(value)) { + astNode[name] = this.hydrateReference(value, astNode, name, context); + } + else if (value !== undefined) { + astNode[name] = value; + } + } + return astNode; + } + setParent(node, parent) { + node.$container = parent; + return node; + } + hydrateReference(reference, node, name, context) { + return this.linker.buildReference(node, name, context.cstNodes.get(reference.$refNode), reference.$refText); + } + hydrateCstNode(cstNode, context, num = 0) { + const cstNodeObj = context.cstNodes.get(cstNode); + if (typeof cstNode.grammarSource === 'number') { + cstNodeObj.grammarSource = this.getGrammarElement(cstNode.grammarSource); + } + cstNodeObj.astNode = context.astNodes.get(cstNode.astNode); + if (syntax_tree_isCompositeCstNode(cstNodeObj)) { + for (const child of cstNode.content) { + const hydrated = this.hydrateCstNode(child, context, num++); + cstNodeObj.content.push(hydrated); + } + } + return cstNodeObj; + } + hydrateCstLeafNode(cstNode) { + const tokenType = this.getTokenType(cstNode.tokenType); + const offset = cstNode.offset; + const length = cstNode.length; + const startLine = cstNode.startLine; + const startColumn = cstNode.startColumn; + const endLine = cstNode.endLine; + const endColumn = cstNode.endColumn; + const hidden = cstNode.hidden; + const node = new LeafCstNodeImpl(offset, length, { + start: { + line: startLine, + character: startColumn + }, + end: { + line: endLine, + character: endColumn + } + }, tokenType, hidden); + return node; + } + getTokenType(name) { + return this.lexer.definition[name]; + } + getGrammarElementId(node) { + if (this.grammarElementIdMap.size === 0) { + this.createGrammarElementIdMap(); + } + return this.grammarElementIdMap.get(node); + } + getGrammarElement(id) { + if (this.grammarElementIdMap.size === 0) { + this.createGrammarElementIdMap(); + } + const element = this.grammarElementIdMap.getKey(id); + if (element) { + return element; + } + else { + throw new Error('Invalid grammar element id: ' + id); + } + } + createGrammarElementIdMap() { + let id = 0; + for (const element of streamAst(this.grammar)) { + if (isAbstractElement(element)) { + this.grammarElementIdMap.set(element, id++); + } + } + } +} +//# sourceMappingURL=hydrator.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/default-module.js +/****************************************************************************** + * Copyright 2021 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. +******************************************************************************/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +/** + * Creates a dependency injection module configuring the default core services. + * This is a set of services that are dedicated to a specific language. + */ +function createDefaultCoreModule(context) { + return { + documentation: { + CommentProvider: (services) => new DefaultCommentProvider(services), + DocumentationProvider: (services) => new JSDocDocumentationProvider(services) + }, + parser: { + AsyncParser: (services) => new DefaultAsyncParser(services), + GrammarConfig: (services) => createGrammarConfig(services), + LangiumParser: (services) => createLangiumParser(services), + CompletionParser: (services) => createCompletionParser(services), + ValueConverter: () => new DefaultValueConverter(), + TokenBuilder: () => new DefaultTokenBuilder(), + Lexer: (services) => new DefaultLexer(services), + ParserErrorMessageProvider: () => new LangiumParserErrorMessageProvider() + }, + workspace: { + AstNodeLocator: () => new DefaultAstNodeLocator(), + AstNodeDescriptionProvider: (services) => new DefaultAstNodeDescriptionProvider(services), + ReferenceDescriptionProvider: (services) => new DefaultReferenceDescriptionProvider(services) + }, + references: { + Linker: (services) => new DefaultLinker(services), + NameProvider: () => new DefaultNameProvider(), + ScopeProvider: (services) => new DefaultScopeProvider(services), + ScopeComputation: (services) => new DefaultScopeComputation(services), + References: (services) => new DefaultReferences(services) + }, + serializer: { + Hydrator: (services) => new DefaultHydrator(services), + JsonSerializer: (services) => new DefaultJsonSerializer(services) + }, + validation: { + DocumentValidator: (services) => new DefaultDocumentValidator(services), + ValidationRegistry: (services) => new ValidationRegistry(services) + }, + shared: () => context.shared + }; +} +/** + * Creates a dependency injection module configuring the default shared core services. + * This is the set of services that are shared between multiple languages. + */ +function createDefaultSharedCoreModule(context) { + return { + ServiceRegistry: () => new DefaultServiceRegistry(), + workspace: { + LangiumDocuments: (services) => new DefaultLangiumDocuments(services), + LangiumDocumentFactory: (services) => new DefaultLangiumDocumentFactory(services), + DocumentBuilder: (services) => new DefaultDocumentBuilder(services), + IndexManager: (services) => new DefaultIndexManager(services), + WorkspaceManager: (services) => new DefaultWorkspaceManager(services), + FileSystemProvider: (services) => context.fileSystemProvider(services), + WorkspaceLock: () => new DefaultWorkspaceLock(), + ConfigurationProvider: (services) => new DefaultConfigurationProvider(services) + } + }; +} +//# sourceMappingURL=default-module.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/dependency-injection.js +/****************************************************************************** + * Copyright 2021 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ +var Module; +(function (Module) { + Module.merge = (m1, m2) => _merge(_merge({}, m1), m2); +})(Module || (Module = {})); +/** + * Given a set of modules, the inject function returns a lazily evaluated injector + * that injects dependencies into the requested service when it is requested the + * first time. Subsequent requests will return the same service. + * + * In the case of cyclic dependencies, an Error will be thrown. This can be fixed + * by injecting a provider `() => T` instead of a `T`. + * + * Please note that the arguments may be objects or arrays. However, the result will + * be an object. Using it with for..of will have no effect. + * + * @param module1 first Module + * @param module2 (optional) second Module + * @param module3 (optional) third Module + * @param module4 (optional) fourth Module + * @param module5 (optional) fifth Module + * @param module6 (optional) sixth Module + * @param module7 (optional) seventh Module + * @param module8 (optional) eighth Module + * @param module9 (optional) ninth Module + * @returns a new object of type I + */ +function inject(module1, module2, module3, module4, module5, module6, module7, module8, module9) { + const module = [module1, module2, module3, module4, module5, module6, module7, module8, module9].reduce(_merge, {}); + return _inject(module); +} +const isProxy = Symbol('isProxy'); +/** + * Eagerly load all services in the given dependency injection container. This is sometimes + * necessary because services can register event listeners in their constructors. + */ +function eagerLoad(item) { + if (item && item[isProxy]) { + for (const value of Object.values(item)) { + eagerLoad(value); + } + } + return item; +} +/** + * Helper function that returns an injector by creating a proxy. + * Invariant: injector is of type I. If injector is undefined, then T = I. + */ +function _inject(module, injector) { + const proxy = new Proxy({}, { + deleteProperty: () => false, + get: (obj, prop) => _resolve(obj, prop, module, injector || proxy), + getOwnPropertyDescriptor: (obj, prop) => (_resolve(obj, prop, module, injector || proxy), Object.getOwnPropertyDescriptor(obj, prop)), + has: (_, prop) => prop in module, + ownKeys: () => [...Reflect.ownKeys(module), isProxy] // used by for..in + }); + proxy[isProxy] = true; + return proxy; +} +/** + * Internally used to tag a requested dependency, directly before calling the factory. + * This allows us to find cycles during instance creation. + */ +const __requested__ = Symbol(); +/** + * Returns the value `obj[prop]`. If the value does not exist, yet, it is resolved from + * the module description. The result of service factories is cached. Groups are + * recursively proxied. + * + * @param obj an object holding all group proxies and services + * @param prop the key of a value within obj + * @param module an object containing groups and service factories + * @param injector the first level proxy that provides access to all values + * @returns the requested value `obj[prop]` + * @throws Error if a dependency cycle is detected + */ +function _resolve(obj, prop, module, injector) { + if (prop in obj) { + if (obj[prop] instanceof Error) { + throw new Error('Construction failure. Please make sure that your dependencies are constructable.', { cause: obj[prop] }); + } + if (obj[prop] === __requested__) { + throw new Error('Cycle detected. Please make "' + String(prop) + '" lazy. See https://langium.org/docs/configuration-services/#resolving-cyclic-dependencies'); + } + return obj[prop]; + } + else if (prop in module) { + const value = module[prop]; + obj[prop] = __requested__; + try { + obj[prop] = (typeof value === 'function') ? value(injector) : _inject(value, injector); + } + catch (error) { + obj[prop] = error instanceof Error ? error : undefined; + throw error; + } + return obj[prop]; + } + else { + return undefined; + } +} +/** + * Performs a deep-merge of two modules by writing source entries into the target module. + * + * @param target the module which is written + * @param source the module which is read + * @returns the target module + */ +function _merge(target, source) { + if (source) { + for (const [key, value2] of Object.entries(source)) { + if (value2 !== undefined) { + const value1 = target[key]; + if (value1 !== null && value2 !== null && typeof value1 === 'object' && typeof value2 === 'object') { + target[key] = _merge(value1, value2); + } + else { + target[key] = value2; + } + } + } + } + return target; +} +//# sourceMappingURL=dependency-injection.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/documentation/index.js +/****************************************************************************** + * Copyright 2023 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + + + +//# sourceMappingURL=index.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/languages/index.js +/****************************************************************************** + * Copyright 2023 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + + +//# sourceMappingURL=index.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/parser/index.js +/****************************************************************************** + * Copyright 2023 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + + + + + + + + + +//# sourceMappingURL=index.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/references/index.js +/****************************************************************************** + * Copyright 2023 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + + + + + + +//# sourceMappingURL=index.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/serializer/index.js +/****************************************************************************** + * Copyright 2023 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + + +//# sourceMappingURL=index.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/workspace/file-system-provider.js +/****************************************************************************** + * Copyright 2022 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ +class EmptyFileSystemProvider { + readFile() { + throw new Error('No file system is available.'); + } + async readDirectory() { + return []; + } +} +const EmptyFileSystem = { + fileSystemProvider: () => new EmptyFileSystemProvider() +}; +//# sourceMappingURL=file-system-provider.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/utils/grammar-loader.js +/****************************************************************************** + * Copyright 2023 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + + + + + +const minimalGrammarModule = { + Grammar: () => undefined, + LanguageMetaData: () => ({ + caseInsensitive: false, + fileExtensions: ['.langium'], + languageId: 'langium' + }) +}; +const minimalSharedGrammarModule = { + AstReflection: () => new LangiumGrammarAstReflection() +}; +function createMinimalGrammarServices() { + const shared = inject(createDefaultSharedCoreModule(EmptyFileSystem), minimalSharedGrammarModule); + const grammar = inject(createDefaultCoreModule({ shared }), minimalGrammarModule); + shared.ServiceRegistry.register(grammar); + return grammar; +} +/** + * Load a Langium grammar for your language from a JSON string. This is used by several services, + * most notably the parser builder which interprets the grammar to create a parser. + */ +function loadGrammarFromJson(json) { + var _a; + const services = createMinimalGrammarServices(); + const astNode = services.serializer.JsonSerializer.deserialize(json); + services.shared.workspace.LangiumDocumentFactory.fromModel(astNode, esm_URI.parse(`memory://${(_a = astNode.name) !== null && _a !== void 0 ? _a : 'grammar'}.langium`)); + return astNode; +} +//# sourceMappingURL=grammar-loader.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/utils/index.js +/****************************************************************************** + * Copyright 2023 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + + + + + + + + + + + + + + + +//# sourceMappingURL=index.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/validation/index.js +/****************************************************************************** + * Copyright 2023 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + + +//# sourceMappingURL=index.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/workspace/index.js +/****************************************************************************** + * Copyright 2023 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + + + + + + + + + +//# sourceMappingURL=index.js.map +;// CONCATENATED MODULE: ./node_modules/langium/lib/index.js +/****************************************************************************** + * Copyright 2021 TypeFox GmbH + * This program and the accompanying materials are made available under the + * terms of the MIT License, which is available in the project root. + ******************************************************************************/ + + + + + + + + + + + + + +// Export the Langium Grammar AST definitions in the `GrammarAST` namespace + + +//# sourceMappingURL=index.js.map + +/***/ }), + +/***/ 62062: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ _SetCache) +}); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_MapCache.js + 14 modules +var _MapCache = __webpack_require__(29471); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_setCacheAdd.js +/** Used to stand-in for `undefined` hash values. */ +var HASH_UNDEFINED = '__lodash_hash_undefined__'; + +/** + * Adds `value` to the array cache. + * + * @private + * @name add + * @memberOf SetCache + * @alias push + * @param {*} value The value to cache. + * @returns {Object} Returns the cache instance. + */ +function setCacheAdd(value) { + this.__data__.set(value, HASH_UNDEFINED); + return this; +} + +/* harmony default export */ const _setCacheAdd = (setCacheAdd); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_setCacheHas.js +/** + * Checks if `value` is in the array cache. + * + * @private + * @name has + * @memberOf SetCache + * @param {*} value The value to search for. + * @returns {number} Returns `true` if `value` is found, else `false`. + */ +function setCacheHas(value) { + return this.__data__.has(value); +} + +/* harmony default export */ const _setCacheHas = (setCacheHas); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_SetCache.js + + + + +/** + * + * Creates an array cache object to store unique values. + * + * @private + * @constructor + * @param {Array} [values] The values to cache. + */ +function SetCache(values) { + var index = -1, + length = values == null ? 0 : values.length; + + this.__data__ = new _MapCache/* default */.A; + while (++index < length) { + this.add(values[index]); + } +} + +// Add methods to `SetCache`. +SetCache.prototype.add = SetCache.prototype.push = _setCacheAdd; +SetCache.prototype.has = _setCacheHas; + +/* harmony default export */ const _SetCache = (SetCache); + + +/***/ }), + +/***/ 72641: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * A specialized version of `_.forEach` for arrays without support for + * iteratee shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array} Returns `array`. + */ +function arrayEach(array, iteratee) { + var index = -1, + length = array == null ? 0 : array.length; + + while (++index < length) { + if (iteratee(array[index], index, array) === false) { + break; + } + } + return array; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (arrayEach); + + +/***/ }), + +/***/ 2634: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * A specialized version of `_.filter` for arrays without support for + * iteratee shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {Array} Returns the new filtered array. + */ +function arrayFilter(array, predicate) { + var index = -1, + length = array == null ? 0 : array.length, + resIndex = 0, + result = []; + + while (++index < length) { + var value = array[index]; + if (predicate(value, index, array)) { + result[resIndex++] = value; + } + } + return result; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (arrayFilter); + + +/***/ }), + +/***/ 83149: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _baseIndexOf_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(60818); + + +/** + * A specialized version of `_.includes` for arrays without support for + * specifying an index to search from. + * + * @private + * @param {Array} [array] The array to inspect. + * @param {*} target The value to search for. + * @returns {boolean} Returns `true` if `target` is found, else `false`. + */ +function arrayIncludes(array, value) { + var length = array == null ? 0 : array.length; + return !!length && (0,_baseIndexOf_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(array, value, 0) > -1; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (arrayIncludes); + + +/***/ }), + +/***/ 87809: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * This function is like `arrayIncludes` except that it accepts a comparator. + * + * @private + * @param {Array} [array] The array to inspect. + * @param {*} target The value to search for. + * @param {Function} comparator The comparator invoked per element. + * @returns {boolean} Returns `true` if `target` is found, else `false`. + */ +function arrayIncludesWith(array, value, comparator) { + var index = -1, + length = array == null ? 0 : array.length; + + while (++index < length) { + if (comparator(value, array[index])) { + return true; + } + } + return false; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (arrayIncludesWith); + + +/***/ }), + +/***/ 45572: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * A specialized version of `_.map` for arrays without support for iteratee + * shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array} Returns the new mapped array. + */ +function arrayMap(array, iteratee) { + var index = -1, + length = array == null ? 0 : array.length, + result = Array(length); + + while (++index < length) { + result[index] = iteratee(array[index], index, array); + } + return result; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (arrayMap); + + +/***/ }), + +/***/ 76912: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * Appends the elements of `values` to `array`. + * + * @private + * @param {Array} array The array to modify. + * @param {Array} values The values to append. + * @returns {Array} Returns `array`. + */ +function arrayPush(array, values) { + var index = -1, + length = values.length, + offset = array.length; + + while (++index < length) { + array[offset + index] = values[index]; + } + return array; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (arrayPush); + + +/***/ }), + +/***/ 63736: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * A specialized version of `_.some` for arrays without support for iteratee + * shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {boolean} Returns `true` if any element passes the predicate check, + * else `false`. + */ +function arraySome(array, predicate) { + var index = -1, + length = array == null ? 0 : array.length; + + while (++index < length) { + if (predicate(array[index], index, array)) { + return true; + } + } + return false; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (arraySome); + + +/***/ }), + +/***/ 68675: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ _baseClone) +}); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_Stack.js + 5 modules +var _Stack = __webpack_require__(11754); +// EXTERNAL MODULE: ./node_modules/lodash-es/_arrayEach.js +var _arrayEach = __webpack_require__(72641); +// EXTERNAL MODULE: ./node_modules/lodash-es/_assignValue.js +var _assignValue = __webpack_require__(52851); +// EXTERNAL MODULE: ./node_modules/lodash-es/_copyObject.js +var _copyObject = __webpack_require__(22031); +// EXTERNAL MODULE: ./node_modules/lodash-es/keys.js +var keys = __webpack_require__(27422); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseAssign.js + + + +/** + * The base implementation of `_.assign` without support for multiple sources + * or `customizer` functions. + * + * @private + * @param {Object} object The destination object. + * @param {Object} source The source object. + * @returns {Object} Returns `object`. + */ +function baseAssign(object, source) { + return object && (0,_copyObject/* default */.A)(source, (0,keys/* default */.A)(source), object); +} + +/* harmony default export */ const _baseAssign = (baseAssign); + +// EXTERNAL MODULE: ./node_modules/lodash-es/keysIn.js + 2 modules +var keysIn = __webpack_require__(55615); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseAssignIn.js + + + +/** + * The base implementation of `_.assignIn` without support for multiple sources + * or `customizer` functions. + * + * @private + * @param {Object} object The destination object. + * @param {Object} source The source object. + * @returns {Object} Returns `object`. + */ +function baseAssignIn(object, source) { + return object && (0,_copyObject/* default */.A)(source, (0,keysIn/* default */.A)(source), object); +} + +/* harmony default export */ const _baseAssignIn = (baseAssignIn); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_cloneBuffer.js +var _cloneBuffer = __webpack_require__(80154); +// EXTERNAL MODULE: ./node_modules/lodash-es/_copyArray.js +var _copyArray = __webpack_require__(39759); +// EXTERNAL MODULE: ./node_modules/lodash-es/_getSymbols.js +var _getSymbols = __webpack_require__(14792); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_copySymbols.js + + + +/** + * Copies own symbols of `source` to `object`. + * + * @private + * @param {Object} source The object to copy symbols from. + * @param {Object} [object={}] The object to copy symbols to. + * @returns {Object} Returns `object`. + */ +function copySymbols(source, object) { + return (0,_copyObject/* default */.A)(source, (0,_getSymbols/* default */.A)(source), object); +} + +/* harmony default export */ const _copySymbols = (copySymbols); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_getSymbolsIn.js +var _getSymbolsIn = __webpack_require__(83511); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_copySymbolsIn.js + + + +/** + * Copies own and inherited symbols of `source` to `object`. + * + * @private + * @param {Object} source The object to copy symbols from. + * @param {Object} [object={}] The object to copy symbols to. + * @returns {Object} Returns `object`. + */ +function copySymbolsIn(source, object) { + return (0,_copyObject/* default */.A)(source, (0,_getSymbolsIn/* default */.A)(source), object); +} + +/* harmony default export */ const _copySymbolsIn = (copySymbolsIn); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_getAllKeys.js +var _getAllKeys = __webpack_require__(19042); +// EXTERNAL MODULE: ./node_modules/lodash-es/_getAllKeysIn.js +var _getAllKeysIn = __webpack_require__(83973); +// EXTERNAL MODULE: ./node_modules/lodash-es/_getTag.js + 3 modules +var _getTag = __webpack_require__(9779); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_initCloneArray.js +/** Used for built-in method references. */ +var objectProto = Object.prototype; + +/** Used to check objects for own properties. */ +var _initCloneArray_hasOwnProperty = objectProto.hasOwnProperty; + +/** + * Initializes an array clone. + * + * @private + * @param {Array} array The array to clone. + * @returns {Array} Returns the initialized clone. + */ +function initCloneArray(array) { + var length = array.length, + result = new array.constructor(length); + + // Add properties assigned by `RegExp#exec`. + if (length && typeof array[0] == 'string' && _initCloneArray_hasOwnProperty.call(array, 'index')) { + result.index = array.index; + result.input = array.input; + } + return result; +} + +/* harmony default export */ const _initCloneArray = (initCloneArray); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_cloneArrayBuffer.js +var _cloneArrayBuffer = __webpack_require__(90565); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_cloneDataView.js + + +/** + * Creates a clone of `dataView`. + * + * @private + * @param {Object} dataView The data view to clone. + * @param {boolean} [isDeep] Specify a deep clone. + * @returns {Object} Returns the cloned data view. + */ +function cloneDataView(dataView, isDeep) { + var buffer = isDeep ? (0,_cloneArrayBuffer/* default */.A)(dataView.buffer) : dataView.buffer; + return new dataView.constructor(buffer, dataView.byteOffset, dataView.byteLength); +} + +/* harmony default export */ const _cloneDataView = (cloneDataView); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_cloneRegExp.js +/** Used to match `RegExp` flags from their coerced string values. */ +var reFlags = /\w*$/; + +/** + * Creates a clone of `regexp`. + * + * @private + * @param {Object} regexp The regexp to clone. + * @returns {Object} Returns the cloned regexp. + */ +function cloneRegExp(regexp) { + var result = new regexp.constructor(regexp.source, reFlags.exec(regexp)); + result.lastIndex = regexp.lastIndex; + return result; +} + +/* harmony default export */ const _cloneRegExp = (cloneRegExp); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_Symbol.js +var _Symbol = __webpack_require__(241); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_cloneSymbol.js + + +/** Used to convert symbols to primitives and strings. */ +var symbolProto = _Symbol/* default */.A ? _Symbol/* default */.A.prototype : undefined, + symbolValueOf = symbolProto ? symbolProto.valueOf : undefined; + +/** + * Creates a clone of the `symbol` object. + * + * @private + * @param {Object} symbol The symbol object to clone. + * @returns {Object} Returns the cloned symbol object. + */ +function cloneSymbol(symbol) { + return symbolValueOf ? Object(symbolValueOf.call(symbol)) : {}; +} + +/* harmony default export */ const _cloneSymbol = (cloneSymbol); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_cloneTypedArray.js +var _cloneTypedArray = __webpack_require__(1801); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_initCloneByTag.js + + + + + + +/** `Object#toString` result references. */ +var boolTag = '[object Boolean]', + dateTag = '[object Date]', + mapTag = '[object Map]', + numberTag = '[object Number]', + regexpTag = '[object RegExp]', + setTag = '[object Set]', + stringTag = '[object String]', + symbolTag = '[object Symbol]'; + +var arrayBufferTag = '[object ArrayBuffer]', + dataViewTag = '[object DataView]', + float32Tag = '[object Float32Array]', + float64Tag = '[object Float64Array]', + int8Tag = '[object Int8Array]', + int16Tag = '[object Int16Array]', + int32Tag = '[object Int32Array]', + uint8Tag = '[object Uint8Array]', + uint8ClampedTag = '[object Uint8ClampedArray]', + uint16Tag = '[object Uint16Array]', + uint32Tag = '[object Uint32Array]'; + +/** + * Initializes an object clone based on its `toStringTag`. + * + * **Note:** This function only supports cloning values with tags of + * `Boolean`, `Date`, `Error`, `Map`, `Number`, `RegExp`, `Set`, or `String`. + * + * @private + * @param {Object} object The object to clone. + * @param {string} tag The `toStringTag` of the object to clone. + * @param {boolean} [isDeep] Specify a deep clone. + * @returns {Object} Returns the initialized clone. + */ +function initCloneByTag(object, tag, isDeep) { + var Ctor = object.constructor; + switch (tag) { + case arrayBufferTag: + return (0,_cloneArrayBuffer/* default */.A)(object); + + case boolTag: + case dateTag: + return new Ctor(+object); + + case dataViewTag: + return _cloneDataView(object, isDeep); + + case float32Tag: case float64Tag: + case int8Tag: case int16Tag: case int32Tag: + case uint8Tag: case uint8ClampedTag: case uint16Tag: case uint32Tag: + return (0,_cloneTypedArray/* default */.A)(object, isDeep); + + case mapTag: + return new Ctor; + + case numberTag: + case stringTag: + return new Ctor(object); + + case regexpTag: + return _cloneRegExp(object); + + case setTag: + return new Ctor; + + case symbolTag: + return _cloneSymbol(object); + } +} + +/* harmony default export */ const _initCloneByTag = (initCloneByTag); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_initCloneObject.js + 1 modules +var _initCloneObject = __webpack_require__(18598); +// EXTERNAL MODULE: ./node_modules/lodash-es/isArray.js +var isArray = __webpack_require__(92049); +// EXTERNAL MODULE: ./node_modules/lodash-es/isBuffer.js + 1 modules +var isBuffer = __webpack_require__(99912); +// EXTERNAL MODULE: ./node_modules/lodash-es/isObjectLike.js +var isObjectLike = __webpack_require__(53098); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseIsMap.js + + + +/** `Object#toString` result references. */ +var _baseIsMap_mapTag = '[object Map]'; + +/** + * The base implementation of `_.isMap` without Node.js optimizations. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a map, else `false`. + */ +function baseIsMap(value) { + return (0,isObjectLike/* default */.A)(value) && (0,_getTag/* default */.A)(value) == _baseIsMap_mapTag; +} + +/* harmony default export */ const _baseIsMap = (baseIsMap); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseUnary.js +var _baseUnary = __webpack_require__(52789); +// EXTERNAL MODULE: ./node_modules/lodash-es/_nodeUtil.js +var _nodeUtil = __webpack_require__(64841); +;// CONCATENATED MODULE: ./node_modules/lodash-es/isMap.js + + + + +/* Node.js helper references. */ +var nodeIsMap = _nodeUtil/* default */.A && _nodeUtil/* default */.A.isMap; + +/** + * Checks if `value` is classified as a `Map` object. + * + * @static + * @memberOf _ + * @since 4.3.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a map, else `false`. + * @example + * + * _.isMap(new Map); + * // => true + * + * _.isMap(new WeakMap); + * // => false + */ +var isMap = nodeIsMap ? (0,_baseUnary/* default */.A)(nodeIsMap) : _baseIsMap; + +/* harmony default export */ const lodash_es_isMap = (isMap); + +// EXTERNAL MODULE: ./node_modules/lodash-es/isObject.js +var isObject = __webpack_require__(23149); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseIsSet.js + + + +/** `Object#toString` result references. */ +var _baseIsSet_setTag = '[object Set]'; + +/** + * The base implementation of `_.isSet` without Node.js optimizations. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a set, else `false`. + */ +function baseIsSet(value) { + return (0,isObjectLike/* default */.A)(value) && (0,_getTag/* default */.A)(value) == _baseIsSet_setTag; +} + +/* harmony default export */ const _baseIsSet = (baseIsSet); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/isSet.js + + + + +/* Node.js helper references. */ +var nodeIsSet = _nodeUtil/* default */.A && _nodeUtil/* default */.A.isSet; + +/** + * Checks if `value` is classified as a `Set` object. + * + * @static + * @memberOf _ + * @since 4.3.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a set, else `false`. + * @example + * + * _.isSet(new Set); + * // => true + * + * _.isSet(new WeakSet); + * // => false + */ +var isSet = nodeIsSet ? (0,_baseUnary/* default */.A)(nodeIsSet) : _baseIsSet; + +/* harmony default export */ const lodash_es_isSet = (isSet); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseClone.js + + + + + + + + + + + + + + + + + + + + + + + +/** Used to compose bitmasks for cloning. */ +var CLONE_DEEP_FLAG = 1, + CLONE_FLAT_FLAG = 2, + CLONE_SYMBOLS_FLAG = 4; + +/** `Object#toString` result references. */ +var argsTag = '[object Arguments]', + arrayTag = '[object Array]', + _baseClone_boolTag = '[object Boolean]', + _baseClone_dateTag = '[object Date]', + errorTag = '[object Error]', + funcTag = '[object Function]', + genTag = '[object GeneratorFunction]', + _baseClone_mapTag = '[object Map]', + _baseClone_numberTag = '[object Number]', + objectTag = '[object Object]', + _baseClone_regexpTag = '[object RegExp]', + _baseClone_setTag = '[object Set]', + _baseClone_stringTag = '[object String]', + _baseClone_symbolTag = '[object Symbol]', + weakMapTag = '[object WeakMap]'; + +var _baseClone_arrayBufferTag = '[object ArrayBuffer]', + _baseClone_dataViewTag = '[object DataView]', + _baseClone_float32Tag = '[object Float32Array]', + _baseClone_float64Tag = '[object Float64Array]', + _baseClone_int8Tag = '[object Int8Array]', + _baseClone_int16Tag = '[object Int16Array]', + _baseClone_int32Tag = '[object Int32Array]', + _baseClone_uint8Tag = '[object Uint8Array]', + _baseClone_uint8ClampedTag = '[object Uint8ClampedArray]', + _baseClone_uint16Tag = '[object Uint16Array]', + _baseClone_uint32Tag = '[object Uint32Array]'; + +/** Used to identify `toStringTag` values supported by `_.clone`. */ +var cloneableTags = {}; +cloneableTags[argsTag] = cloneableTags[arrayTag] = +cloneableTags[_baseClone_arrayBufferTag] = cloneableTags[_baseClone_dataViewTag] = +cloneableTags[_baseClone_boolTag] = cloneableTags[_baseClone_dateTag] = +cloneableTags[_baseClone_float32Tag] = cloneableTags[_baseClone_float64Tag] = +cloneableTags[_baseClone_int8Tag] = cloneableTags[_baseClone_int16Tag] = +cloneableTags[_baseClone_int32Tag] = cloneableTags[_baseClone_mapTag] = +cloneableTags[_baseClone_numberTag] = cloneableTags[objectTag] = +cloneableTags[_baseClone_regexpTag] = cloneableTags[_baseClone_setTag] = +cloneableTags[_baseClone_stringTag] = cloneableTags[_baseClone_symbolTag] = +cloneableTags[_baseClone_uint8Tag] = cloneableTags[_baseClone_uint8ClampedTag] = +cloneableTags[_baseClone_uint16Tag] = cloneableTags[_baseClone_uint32Tag] = true; +cloneableTags[errorTag] = cloneableTags[funcTag] = +cloneableTags[weakMapTag] = false; + +/** + * The base implementation of `_.clone` and `_.cloneDeep` which tracks + * traversed objects. + * + * @private + * @param {*} value The value to clone. + * @param {boolean} bitmask The bitmask flags. + * 1 - Deep clone + * 2 - Flatten inherited properties + * 4 - Clone symbols + * @param {Function} [customizer] The function to customize cloning. + * @param {string} [key] The key of `value`. + * @param {Object} [object] The parent object of `value`. + * @param {Object} [stack] Tracks traversed objects and their clone counterparts. + * @returns {*} Returns the cloned value. + */ +function baseClone(value, bitmask, customizer, key, object, stack) { + var result, + isDeep = bitmask & CLONE_DEEP_FLAG, + isFlat = bitmask & CLONE_FLAT_FLAG, + isFull = bitmask & CLONE_SYMBOLS_FLAG; + + if (customizer) { + result = object ? customizer(value, key, object, stack) : customizer(value); + } + if (result !== undefined) { + return result; + } + if (!(0,isObject/* default */.A)(value)) { + return value; + } + var isArr = (0,isArray/* default */.A)(value); + if (isArr) { + result = _initCloneArray(value); + if (!isDeep) { + return (0,_copyArray/* default */.A)(value, result); + } + } else { + var tag = (0,_getTag/* default */.A)(value), + isFunc = tag == funcTag || tag == genTag; + + if ((0,isBuffer/* default */.A)(value)) { + return (0,_cloneBuffer/* default */.A)(value, isDeep); + } + if (tag == objectTag || tag == argsTag || (isFunc && !object)) { + result = (isFlat || isFunc) ? {} : (0,_initCloneObject/* default */.A)(value); + if (!isDeep) { + return isFlat + ? _copySymbolsIn(value, _baseAssignIn(result, value)) + : _copySymbols(value, _baseAssign(result, value)); + } + } else { + if (!cloneableTags[tag]) { + return object ? value : {}; + } + result = _initCloneByTag(value, tag, isDeep); + } + } + // Check for circular references and return its corresponding clone. + stack || (stack = new _Stack/* default */.A); + var stacked = stack.get(value); + if (stacked) { + return stacked; + } + stack.set(value, result); + + if (lodash_es_isSet(value)) { + value.forEach(function(subValue) { + result.add(baseClone(subValue, bitmask, customizer, subValue, value, stack)); + }); + } else if (lodash_es_isMap(value)) { + value.forEach(function(subValue, key) { + result.set(key, baseClone(subValue, bitmask, customizer, key, value, stack)); + }); + } + + var keysFunc = isFull + ? (isFlat ? _getAllKeysIn/* default */.A : _getAllKeys/* default */.A) + : (isFlat ? keysIn/* default */.A : keys/* default */.A); + + var props = isArr ? undefined : keysFunc(value); + (0,_arrayEach/* default */.A)(props || value, function(subValue, key) { + if (props) { + key = subValue; + subValue = value[key]; + } + // Recursively populate clone (susceptible to call stack limits). + (0,_assignValue/* default */.A)(result, key, baseClone(subValue, bitmask, customizer, key, value, stack)); + }); + return result; +} + +/* harmony default export */ const _baseClone = (baseClone); + + +/***/ }), + +/***/ 6240: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ _baseEach) +}); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseForOwn.js +var _baseForOwn = __webpack_require__(79841); +// EXTERNAL MODULE: ./node_modules/lodash-es/isArrayLike.js +var isArrayLike = __webpack_require__(38446); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_createBaseEach.js + + +/** + * Creates a `baseEach` or `baseEachRight` function. + * + * @private + * @param {Function} eachFunc The function to iterate over a collection. + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {Function} Returns the new base function. + */ +function createBaseEach(eachFunc, fromRight) { + return function(collection, iteratee) { + if (collection == null) { + return collection; + } + if (!(0,isArrayLike/* default */.A)(collection)) { + return eachFunc(collection, iteratee); + } + var length = collection.length, + index = fromRight ? length : -1, + iterable = Object(collection); + + while ((fromRight ? index-- : ++index < length)) { + if (iteratee(iterable[index], index, iterable) === false) { + break; + } + } + return collection; + }; +} + +/* harmony default export */ const _createBaseEach = (createBaseEach); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseEach.js + + + +/** + * The base implementation of `_.forEach` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array|Object} Returns `collection`. + */ +var baseEach = _createBaseEach(_baseForOwn/* default */.A); + +/* harmony default export */ const _baseEach = (baseEach); + + +/***/ }), + +/***/ 72559: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _isSymbol_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(61882); + + +/** + * The base implementation of methods like `_.max` and `_.min` which accepts a + * `comparator` to determine the extremum value. + * + * @private + * @param {Array} array The array to iterate over. + * @param {Function} iteratee The iteratee invoked per iteration. + * @param {Function} comparator The comparator used to compare values. + * @returns {*} Returns the extremum value. + */ +function baseExtremum(array, iteratee, comparator) { + var index = -1, + length = array.length; + + while (++index < length) { + var value = array[index], + current = iteratee(value); + + if (current != null && (computed === undefined + ? (current === current && !(0,_isSymbol_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(current)) + : comparator(current, computed) + )) { + var computed = current, + result = value; + } + } + return result; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (baseExtremum); + + +/***/ }), + +/***/ 51790: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _baseEach_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6240); + + +/** + * The base implementation of `_.filter` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {Array} Returns the new filtered array. + */ +function baseFilter(collection, predicate) { + var result = []; + (0,_baseEach_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(collection, function(value, index, collection) { + if (predicate(value, index, collection)) { + result.push(value); + } + }); + return result; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (baseFilter); + + +/***/ }), + +/***/ 25707: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * The base implementation of `_.findIndex` and `_.findLastIndex` without + * support for iteratee shorthands. + * + * @private + * @param {Array} array The array to inspect. + * @param {Function} predicate The function invoked per iteration. + * @param {number} fromIndex The index to search from. + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {number} Returns the index of the matched value, else `-1`. + */ +function baseFindIndex(array, predicate, fromIndex, fromRight) { + var length = array.length, + index = fromIndex + (fromRight ? 1 : -1); + + while ((fromRight ? index-- : ++index < length)) { + if (predicate(array[index], index, array)) { + return index; + } + } + return -1; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (baseFindIndex); + + +/***/ }), + +/***/ 13588: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ _baseFlatten) +}); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_arrayPush.js +var _arrayPush = __webpack_require__(76912); +// EXTERNAL MODULE: ./node_modules/lodash-es/_Symbol.js +var _Symbol = __webpack_require__(241); +// EXTERNAL MODULE: ./node_modules/lodash-es/isArguments.js + 1 modules +var isArguments = __webpack_require__(52274); +// EXTERNAL MODULE: ./node_modules/lodash-es/isArray.js +var isArray = __webpack_require__(92049); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_isFlattenable.js + + + + +/** Built-in value references. */ +var spreadableSymbol = _Symbol/* default */.A ? _Symbol/* default */.A.isConcatSpreadable : undefined; + +/** + * Checks if `value` is a flattenable `arguments` object or array. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is flattenable, else `false`. + */ +function isFlattenable(value) { + return (0,isArray/* default */.A)(value) || (0,isArguments/* default */.A)(value) || + !!(spreadableSymbol && value && value[spreadableSymbol]); +} + +/* harmony default export */ const _isFlattenable = (isFlattenable); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseFlatten.js + + + +/** + * The base implementation of `_.flatten` with support for restricting flattening. + * + * @private + * @param {Array} array The array to flatten. + * @param {number} depth The maximum recursion depth. + * @param {boolean} [predicate=isFlattenable] The function invoked per iteration. + * @param {boolean} [isStrict] Restrict to values that pass `predicate` checks. + * @param {Array} [result=[]] The initial result value. + * @returns {Array} Returns the new flattened array. + */ +function baseFlatten(array, depth, predicate, isStrict, result) { + var index = -1, + length = array.length; + + predicate || (predicate = _isFlattenable); + result || (result = []); + + while (++index < length) { + var value = array[index]; + if (depth > 0 && predicate(value)) { + if (depth > 1) { + // Recursively flatten arrays (susceptible to call stack limits). + baseFlatten(value, depth - 1, predicate, isStrict, result); + } else { + (0,_arrayPush/* default */.A)(result, value); + } + } else if (!isStrict) { + result[result.length] = value; + } + } + return result; +} + +/* harmony default export */ const _baseFlatten = (baseFlatten); + + +/***/ }), + +/***/ 79841: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _baseFor_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4574); +/* harmony import */ var _keys_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(27422); + + + +/** + * The base implementation of `_.forOwn` without support for iteratee shorthands. + * + * @private + * @param {Object} object The object to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Object} Returns `object`. + */ +function baseForOwn(object, iteratee) { + return object && (0,_baseFor_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(object, iteratee, _keys_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A); +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (baseForOwn); + + +/***/ }), + +/***/ 66318: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _castPath_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(7819); +/* harmony import */ var _toKey_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(30901); + + + +/** + * The base implementation of `_.get` without support for default values. + * + * @private + * @param {Object} object The object to query. + * @param {Array|string} path The path of the property to get. + * @returns {*} Returns the resolved value. + */ +function baseGet(object, path) { + path = (0,_castPath_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(path, object); + + var index = 0, + length = path.length; + + while (object != null && index < length) { + object = object[(0,_toKey_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A)(path[index++])]; + } + return (index && index == length) ? object : undefined; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (baseGet); + + +/***/ }), + +/***/ 33831: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _arrayPush_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(76912); +/* harmony import */ var _isArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(92049); + + + +/** + * The base implementation of `getAllKeys` and `getAllKeysIn` which uses + * `keysFunc` and `symbolsFunc` to get the enumerable property names and + * symbols of `object`. + * + * @private + * @param {Object} object The object to query. + * @param {Function} keysFunc The function to get the keys of `object`. + * @param {Function} symbolsFunc The function to get the symbols of `object`. + * @returns {Array} Returns the array of property names and symbols. + */ +function baseGetAllKeys(object, keysFunc, symbolsFunc) { + var result = keysFunc(object); + return (0,_isArray_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(object) ? result : (0,_arrayPush_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A)(result, symbolsFunc(object)); +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (baseGetAllKeys); + + +/***/ }), + +/***/ 60818: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ _baseIndexOf) +}); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseFindIndex.js +var _baseFindIndex = __webpack_require__(25707); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseIsNaN.js +/** + * The base implementation of `_.isNaN` without support for number objects. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`. + */ +function baseIsNaN(value) { + return value !== value; +} + +/* harmony default export */ const _baseIsNaN = (baseIsNaN); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_strictIndexOf.js +/** + * A specialized version of `_.indexOf` which performs strict equality + * comparisons of values, i.e. `===`. + * + * @private + * @param {Array} array The array to inspect. + * @param {*} value The value to search for. + * @param {number} fromIndex The index to search from. + * @returns {number} Returns the index of the matched value, else `-1`. + */ +function strictIndexOf(array, value, fromIndex) { + var index = fromIndex - 1, + length = array.length; + + while (++index < length) { + if (array[index] === value) { + return index; + } + } + return -1; +} + +/* harmony default export */ const _strictIndexOf = (strictIndexOf); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseIndexOf.js + + + + +/** + * The base implementation of `_.indexOf` without `fromIndex` bounds checks. + * + * @private + * @param {Array} array The array to inspect. + * @param {*} value The value to search for. + * @param {number} fromIndex The index to search from. + * @returns {number} Returns the index of the matched value, else `-1`. + */ +function baseIndexOf(array, value, fromIndex) { + return value === value + ? _strictIndexOf(array, value, fromIndex) + : (0,_baseFindIndex/* default */.A)(array, _baseIsNaN, fromIndex); +} + +/* harmony default export */ const _baseIndexOf = (baseIndexOf); + + +/***/ }), + +/***/ 23958: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ _baseIteratee) +}); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_Stack.js + 5 modules +var _Stack = __webpack_require__(11754); +// EXTERNAL MODULE: ./node_modules/lodash-es/_SetCache.js + 2 modules +var _SetCache = __webpack_require__(62062); +// EXTERNAL MODULE: ./node_modules/lodash-es/_arraySome.js +var _arraySome = __webpack_require__(63736); +// EXTERNAL MODULE: ./node_modules/lodash-es/_cacheHas.js +var _cacheHas = __webpack_require__(64099); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_equalArrays.js + + + + +/** Used to compose bitmasks for value comparisons. */ +var COMPARE_PARTIAL_FLAG = 1, + COMPARE_UNORDERED_FLAG = 2; + +/** + * A specialized version of `baseIsEqualDeep` for arrays with support for + * partial deep comparisons. + * + * @private + * @param {Array} array The array to compare. + * @param {Array} other The other array to compare. + * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. + * @param {Function} customizer The function to customize comparisons. + * @param {Function} equalFunc The function to determine equivalents of values. + * @param {Object} stack Tracks traversed `array` and `other` objects. + * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`. + */ +function equalArrays(array, other, bitmask, customizer, equalFunc, stack) { + var isPartial = bitmask & COMPARE_PARTIAL_FLAG, + arrLength = array.length, + othLength = other.length; + + if (arrLength != othLength && !(isPartial && othLength > arrLength)) { + return false; + } + // Check that cyclic values are equal. + var arrStacked = stack.get(array); + var othStacked = stack.get(other); + if (arrStacked && othStacked) { + return arrStacked == other && othStacked == array; + } + var index = -1, + result = true, + seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new _SetCache/* default */.A : undefined; + + stack.set(array, other); + stack.set(other, array); + + // Ignore non-index properties. + while (++index < arrLength) { + var arrValue = array[index], + othValue = other[index]; + + if (customizer) { + var compared = isPartial + ? customizer(othValue, arrValue, index, other, array, stack) + : customizer(arrValue, othValue, index, array, other, stack); + } + if (compared !== undefined) { + if (compared) { + continue; + } + result = false; + break; + } + // Recursively compare arrays (susceptible to call stack limits). + if (seen) { + if (!(0,_arraySome/* default */.A)(other, function(othValue, othIndex) { + if (!(0,_cacheHas/* default */.A)(seen, othIndex) && + (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) { + return seen.push(othIndex); + } + })) { + result = false; + break; + } + } else if (!( + arrValue === othValue || + equalFunc(arrValue, othValue, bitmask, customizer, stack) + )) { + result = false; + break; + } + } + stack['delete'](array); + stack['delete'](other); + return result; +} + +/* harmony default export */ const _equalArrays = (equalArrays); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_Symbol.js +var _Symbol = __webpack_require__(241); +// EXTERNAL MODULE: ./node_modules/lodash-es/_Uint8Array.js +var _Uint8Array = __webpack_require__(43988); +// EXTERNAL MODULE: ./node_modules/lodash-es/eq.js +var eq = __webpack_require__(66984); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_mapToArray.js +/** + * Converts `map` to its key-value pairs. + * + * @private + * @param {Object} map The map to convert. + * @returns {Array} Returns the key-value pairs. + */ +function mapToArray(map) { + var index = -1, + result = Array(map.size); + + map.forEach(function(value, key) { + result[++index] = [key, value]; + }); + return result; +} + +/* harmony default export */ const _mapToArray = (mapToArray); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_setToArray.js +var _setToArray = __webpack_require__(29959); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_equalByTag.js + + + + + + + +/** Used to compose bitmasks for value comparisons. */ +var _equalByTag_COMPARE_PARTIAL_FLAG = 1, + _equalByTag_COMPARE_UNORDERED_FLAG = 2; + +/** `Object#toString` result references. */ +var boolTag = '[object Boolean]', + dateTag = '[object Date]', + errorTag = '[object Error]', + mapTag = '[object Map]', + numberTag = '[object Number]', + regexpTag = '[object RegExp]', + setTag = '[object Set]', + stringTag = '[object String]', + symbolTag = '[object Symbol]'; + +var arrayBufferTag = '[object ArrayBuffer]', + dataViewTag = '[object DataView]'; + +/** Used to convert symbols to primitives and strings. */ +var symbolProto = _Symbol/* default */.A ? _Symbol/* default */.A.prototype : undefined, + symbolValueOf = symbolProto ? symbolProto.valueOf : undefined; + +/** + * A specialized version of `baseIsEqualDeep` for comparing objects of + * the same `toStringTag`. + * + * **Note:** This function only supports comparing values with tags of + * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`. + * + * @private + * @param {Object} object The object to compare. + * @param {Object} other The other object to compare. + * @param {string} tag The `toStringTag` of the objects to compare. + * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. + * @param {Function} customizer The function to customize comparisons. + * @param {Function} equalFunc The function to determine equivalents of values. + * @param {Object} stack Tracks traversed `object` and `other` objects. + * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. + */ +function equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) { + switch (tag) { + case dataViewTag: + if ((object.byteLength != other.byteLength) || + (object.byteOffset != other.byteOffset)) { + return false; + } + object = object.buffer; + other = other.buffer; + + case arrayBufferTag: + if ((object.byteLength != other.byteLength) || + !equalFunc(new _Uint8Array/* default */.A(object), new _Uint8Array/* default */.A(other))) { + return false; + } + return true; + + case boolTag: + case dateTag: + case numberTag: + // Coerce booleans to `1` or `0` and dates to milliseconds. + // Invalid dates are coerced to `NaN`. + return (0,eq/* default */.A)(+object, +other); + + case errorTag: + return object.name == other.name && object.message == other.message; + + case regexpTag: + case stringTag: + // Coerce regexes to strings and treat strings, primitives and objects, + // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring + // for more details. + return object == (other + ''); + + case mapTag: + var convert = _mapToArray; + + case setTag: + var isPartial = bitmask & _equalByTag_COMPARE_PARTIAL_FLAG; + convert || (convert = _setToArray/* default */.A); + + if (object.size != other.size && !isPartial) { + return false; + } + // Assume cyclic values are equal. + var stacked = stack.get(object); + if (stacked) { + return stacked == other; + } + bitmask |= _equalByTag_COMPARE_UNORDERED_FLAG; + + // Recursively compare objects (susceptible to call stack limits). + stack.set(object, other); + var result = _equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack); + stack['delete'](object); + return result; + + case symbolTag: + if (symbolValueOf) { + return symbolValueOf.call(object) == symbolValueOf.call(other); + } + } + return false; +} + +/* harmony default export */ const _equalByTag = (equalByTag); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_getAllKeys.js +var _getAllKeys = __webpack_require__(19042); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_equalObjects.js + + +/** Used to compose bitmasks for value comparisons. */ +var _equalObjects_COMPARE_PARTIAL_FLAG = 1; + +/** Used for built-in method references. */ +var objectProto = Object.prototype; + +/** Used to check objects for own properties. */ +var _equalObjects_hasOwnProperty = objectProto.hasOwnProperty; + +/** + * A specialized version of `baseIsEqualDeep` for objects with support for + * partial deep comparisons. + * + * @private + * @param {Object} object The object to compare. + * @param {Object} other The other object to compare. + * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. + * @param {Function} customizer The function to customize comparisons. + * @param {Function} equalFunc The function to determine equivalents of values. + * @param {Object} stack Tracks traversed `object` and `other` objects. + * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. + */ +function equalObjects(object, other, bitmask, customizer, equalFunc, stack) { + var isPartial = bitmask & _equalObjects_COMPARE_PARTIAL_FLAG, + objProps = (0,_getAllKeys/* default */.A)(object), + objLength = objProps.length, + othProps = (0,_getAllKeys/* default */.A)(other), + othLength = othProps.length; + + if (objLength != othLength && !isPartial) { + return false; + } + var index = objLength; + while (index--) { + var key = objProps[index]; + if (!(isPartial ? key in other : _equalObjects_hasOwnProperty.call(other, key))) { + return false; + } + } + // Check that cyclic values are equal. + var objStacked = stack.get(object); + var othStacked = stack.get(other); + if (objStacked && othStacked) { + return objStacked == other && othStacked == object; + } + var result = true; + stack.set(object, other); + stack.set(other, object); + + var skipCtor = isPartial; + while (++index < objLength) { + key = objProps[index]; + var objValue = object[key], + othValue = other[key]; + + if (customizer) { + var compared = isPartial + ? customizer(othValue, objValue, key, other, object, stack) + : customizer(objValue, othValue, key, object, other, stack); + } + // Recursively compare objects (susceptible to call stack limits). + if (!(compared === undefined + ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack)) + : compared + )) { + result = false; + break; + } + skipCtor || (skipCtor = key == 'constructor'); + } + if (result && !skipCtor) { + var objCtor = object.constructor, + othCtor = other.constructor; + + // Non `Object` object instances with different constructors are not equal. + if (objCtor != othCtor && + ('constructor' in object && 'constructor' in other) && + !(typeof objCtor == 'function' && objCtor instanceof objCtor && + typeof othCtor == 'function' && othCtor instanceof othCtor)) { + result = false; + } + } + stack['delete'](object); + stack['delete'](other); + return result; +} + +/* harmony default export */ const _equalObjects = (equalObjects); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_getTag.js + 3 modules +var _getTag = __webpack_require__(9779); +// EXTERNAL MODULE: ./node_modules/lodash-es/isArray.js +var isArray = __webpack_require__(92049); +// EXTERNAL MODULE: ./node_modules/lodash-es/isBuffer.js + 1 modules +var isBuffer = __webpack_require__(99912); +// EXTERNAL MODULE: ./node_modules/lodash-es/isTypedArray.js + 1 modules +var isTypedArray = __webpack_require__(33858); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseIsEqualDeep.js + + + + + + + + + +/** Used to compose bitmasks for value comparisons. */ +var _baseIsEqualDeep_COMPARE_PARTIAL_FLAG = 1; + +/** `Object#toString` result references. */ +var argsTag = '[object Arguments]', + arrayTag = '[object Array]', + objectTag = '[object Object]'; + +/** Used for built-in method references. */ +var _baseIsEqualDeep_objectProto = Object.prototype; + +/** Used to check objects for own properties. */ +var _baseIsEqualDeep_hasOwnProperty = _baseIsEqualDeep_objectProto.hasOwnProperty; + +/** + * A specialized version of `baseIsEqual` for arrays and objects which performs + * deep comparisons and tracks traversed objects enabling objects with circular + * references to be compared. + * + * @private + * @param {Object} object The object to compare. + * @param {Object} other The other object to compare. + * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. + * @param {Function} customizer The function to customize comparisons. + * @param {Function} equalFunc The function to determine equivalents of values. + * @param {Object} [stack] Tracks traversed `object` and `other` objects. + * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. + */ +function baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) { + var objIsArr = (0,isArray/* default */.A)(object), + othIsArr = (0,isArray/* default */.A)(other), + objTag = objIsArr ? arrayTag : (0,_getTag/* default */.A)(object), + othTag = othIsArr ? arrayTag : (0,_getTag/* default */.A)(other); + + objTag = objTag == argsTag ? objectTag : objTag; + othTag = othTag == argsTag ? objectTag : othTag; + + var objIsObj = objTag == objectTag, + othIsObj = othTag == objectTag, + isSameTag = objTag == othTag; + + if (isSameTag && (0,isBuffer/* default */.A)(object)) { + if (!(0,isBuffer/* default */.A)(other)) { + return false; + } + objIsArr = true; + objIsObj = false; + } + if (isSameTag && !objIsObj) { + stack || (stack = new _Stack/* default */.A); + return (objIsArr || (0,isTypedArray/* default */.A)(object)) + ? _equalArrays(object, other, bitmask, customizer, equalFunc, stack) + : _equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack); + } + if (!(bitmask & _baseIsEqualDeep_COMPARE_PARTIAL_FLAG)) { + var objIsWrapped = objIsObj && _baseIsEqualDeep_hasOwnProperty.call(object, '__wrapped__'), + othIsWrapped = othIsObj && _baseIsEqualDeep_hasOwnProperty.call(other, '__wrapped__'); + + if (objIsWrapped || othIsWrapped) { + var objUnwrapped = objIsWrapped ? object.value() : object, + othUnwrapped = othIsWrapped ? other.value() : other; + + stack || (stack = new _Stack/* default */.A); + return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack); + } + } + if (!isSameTag) { + return false; + } + stack || (stack = new _Stack/* default */.A); + return _equalObjects(object, other, bitmask, customizer, equalFunc, stack); +} + +/* harmony default export */ const _baseIsEqualDeep = (baseIsEqualDeep); + +// EXTERNAL MODULE: ./node_modules/lodash-es/isObjectLike.js +var isObjectLike = __webpack_require__(53098); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseIsEqual.js + + + +/** + * The base implementation of `_.isEqual` which supports partial comparisons + * and tracks traversed objects. + * + * @private + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @param {boolean} bitmask The bitmask flags. + * 1 - Unordered comparison + * 2 - Partial comparison + * @param {Function} [customizer] The function to customize comparisons. + * @param {Object} [stack] Tracks traversed `value` and `other` objects. + * @returns {boolean} Returns `true` if the values are equivalent, else `false`. + */ +function baseIsEqual(value, other, bitmask, customizer, stack) { + if (value === other) { + return true; + } + if (value == null || other == null || (!(0,isObjectLike/* default */.A)(value) && !(0,isObjectLike/* default */.A)(other))) { + return value !== value && other !== other; + } + return _baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack); +} + +/* harmony default export */ const _baseIsEqual = (baseIsEqual); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseIsMatch.js + + + +/** Used to compose bitmasks for value comparisons. */ +var _baseIsMatch_COMPARE_PARTIAL_FLAG = 1, + _baseIsMatch_COMPARE_UNORDERED_FLAG = 2; + +/** + * The base implementation of `_.isMatch` without support for iteratee shorthands. + * + * @private + * @param {Object} object The object to inspect. + * @param {Object} source The object of property values to match. + * @param {Array} matchData The property names, values, and compare flags to match. + * @param {Function} [customizer] The function to customize comparisons. + * @returns {boolean} Returns `true` if `object` is a match, else `false`. + */ +function baseIsMatch(object, source, matchData, customizer) { + var index = matchData.length, + length = index, + noCustomizer = !customizer; + + if (object == null) { + return !length; + } + object = Object(object); + while (index--) { + var data = matchData[index]; + if ((noCustomizer && data[2]) + ? data[1] !== object[data[0]] + : !(data[0] in object) + ) { + return false; + } + } + while (++index < length) { + data = matchData[index]; + var key = data[0], + objValue = object[key], + srcValue = data[1]; + + if (noCustomizer && data[2]) { + if (objValue === undefined && !(key in object)) { + return false; + } + } else { + var stack = new _Stack/* default */.A; + if (customizer) { + var result = customizer(objValue, srcValue, key, object, source, stack); + } + if (!(result === undefined + ? _baseIsEqual(srcValue, objValue, _baseIsMatch_COMPARE_PARTIAL_FLAG | _baseIsMatch_COMPARE_UNORDERED_FLAG, customizer, stack) + : result + )) { + return false; + } + } + } + return true; +} + +/* harmony default export */ const _baseIsMatch = (baseIsMatch); + +// EXTERNAL MODULE: ./node_modules/lodash-es/isObject.js +var isObject = __webpack_require__(23149); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_isStrictComparable.js + + +/** + * Checks if `value` is suitable for strict equality comparisons, i.e. `===`. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` if suitable for strict + * equality comparisons, else `false`. + */ +function isStrictComparable(value) { + return value === value && !(0,isObject/* default */.A)(value); +} + +/* harmony default export */ const _isStrictComparable = (isStrictComparable); + +// EXTERNAL MODULE: ./node_modules/lodash-es/keys.js +var keys = __webpack_require__(27422); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_getMatchData.js + + + +/** + * Gets the property names, values, and compare flags of `object`. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the match data of `object`. + */ +function getMatchData(object) { + var result = (0,keys/* default */.A)(object), + length = result.length; + + while (length--) { + var key = result[length], + value = object[key]; + + result[length] = [key, value, _isStrictComparable(value)]; + } + return result; +} + +/* harmony default export */ const _getMatchData = (getMatchData); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_matchesStrictComparable.js +/** + * A specialized version of `matchesProperty` for source values suitable + * for strict equality comparisons, i.e. `===`. + * + * @private + * @param {string} key The key of the property to get. + * @param {*} srcValue The value to match. + * @returns {Function} Returns the new spec function. + */ +function matchesStrictComparable(key, srcValue) { + return function(object) { + if (object == null) { + return false; + } + return object[key] === srcValue && + (srcValue !== undefined || (key in Object(object))); + }; +} + +/* harmony default export */ const _matchesStrictComparable = (matchesStrictComparable); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseMatches.js + + + + +/** + * The base implementation of `_.matches` which doesn't clone `source`. + * + * @private + * @param {Object} source The object of property values to match. + * @returns {Function} Returns the new spec function. + */ +function baseMatches(source) { + var matchData = _getMatchData(source); + if (matchData.length == 1 && matchData[0][2]) { + return _matchesStrictComparable(matchData[0][0], matchData[0][1]); + } + return function(object) { + return object === source || _baseIsMatch(object, source, matchData); + }; +} + +/* harmony default export */ const _baseMatches = (baseMatches); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseGet.js +var _baseGet = __webpack_require__(66318); +;// CONCATENATED MODULE: ./node_modules/lodash-es/get.js + + +/** + * Gets the value at `path` of `object`. If the resolved value is + * `undefined`, the `defaultValue` is returned in its place. + * + * @static + * @memberOf _ + * @since 3.7.0 + * @category Object + * @param {Object} object The object to query. + * @param {Array|string} path The path of the property to get. + * @param {*} [defaultValue] The value returned for `undefined` resolved values. + * @returns {*} Returns the resolved value. + * @example + * + * var object = { 'a': [{ 'b': { 'c': 3 } }] }; + * + * _.get(object, 'a[0].b.c'); + * // => 3 + * + * _.get(object, ['a', '0', 'b', 'c']); + * // => 3 + * + * _.get(object, 'a.b.c', 'default'); + * // => 'default' + */ +function get(object, path, defaultValue) { + var result = object == null ? undefined : (0,_baseGet/* default */.A)(object, path); + return result === undefined ? defaultValue : result; +} + +/* harmony default export */ const lodash_es_get = (get); + +// EXTERNAL MODULE: ./node_modules/lodash-es/hasIn.js + 1 modules +var hasIn = __webpack_require__(16807); +// EXTERNAL MODULE: ./node_modules/lodash-es/_isKey.js +var _isKey = __webpack_require__(86586); +// EXTERNAL MODULE: ./node_modules/lodash-es/_toKey.js +var _toKey = __webpack_require__(30901); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseMatchesProperty.js + + + + + + + + +/** Used to compose bitmasks for value comparisons. */ +var _baseMatchesProperty_COMPARE_PARTIAL_FLAG = 1, + _baseMatchesProperty_COMPARE_UNORDERED_FLAG = 2; + +/** + * The base implementation of `_.matchesProperty` which doesn't clone `srcValue`. + * + * @private + * @param {string} path The path of the property to get. + * @param {*} srcValue The value to match. + * @returns {Function} Returns the new spec function. + */ +function baseMatchesProperty(path, srcValue) { + if ((0,_isKey/* default */.A)(path) && _isStrictComparable(srcValue)) { + return _matchesStrictComparable((0,_toKey/* default */.A)(path), srcValue); + } + return function(object) { + var objValue = lodash_es_get(object, path); + return (objValue === undefined && objValue === srcValue) + ? (0,hasIn/* default */.A)(object, path) + : _baseIsEqual(srcValue, objValue, _baseMatchesProperty_COMPARE_PARTIAL_FLAG | _baseMatchesProperty_COMPARE_UNORDERED_FLAG); + }; +} + +/* harmony default export */ const _baseMatchesProperty = (baseMatchesProperty); + +// EXTERNAL MODULE: ./node_modules/lodash-es/identity.js +var identity = __webpack_require__(29008); +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseProperty.js +var _baseProperty = __webpack_require__(70805); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_basePropertyDeep.js + + +/** + * A specialized version of `baseProperty` which supports deep paths. + * + * @private + * @param {Array|string} path The path of the property to get. + * @returns {Function} Returns the new accessor function. + */ +function basePropertyDeep(path) { + return function(object) { + return (0,_baseGet/* default */.A)(object, path); + }; +} + +/* harmony default export */ const _basePropertyDeep = (basePropertyDeep); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/property.js + + + + + +/** + * Creates a function that returns the value at `path` of a given object. + * + * @static + * @memberOf _ + * @since 2.4.0 + * @category Util + * @param {Array|string} path The path of the property to get. + * @returns {Function} Returns the new accessor function. + * @example + * + * var objects = [ + * { 'a': { 'b': 2 } }, + * { 'a': { 'b': 1 } } + * ]; + * + * _.map(objects, _.property('a.b')); + * // => [2, 1] + * + * _.map(_.sortBy(objects, _.property(['a', 'b'])), 'a.b'); + * // => [1, 2] + */ +function property(path) { + return (0,_isKey/* default */.A)(path) ? (0,_baseProperty/* default */.A)((0,_toKey/* default */.A)(path)) : _basePropertyDeep(path); +} + +/* harmony default export */ const lodash_es_property = (property); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseIteratee.js + + + + + + +/** + * The base implementation of `_.iteratee`. + * + * @private + * @param {*} [value=_.identity] The value to convert to an iteratee. + * @returns {Function} Returns the iteratee. + */ +function baseIteratee(value) { + // Don't store the `typeof` result in a variable to avoid a JIT bug in Safari 9. + // See https://bugs.webkit.org/show_bug.cgi?id=156034 for more details. + if (typeof value == 'function') { + return value; + } + if (value == null) { + return identity/* default */.A; + } + if (typeof value == 'object') { + return (0,isArray/* default */.A)(value) + ? _baseMatchesProperty(value[0], value[1]) + : _baseMatches(value); + } + return lodash_es_property(value); +} + +/* harmony default export */ const _baseIteratee = (baseIteratee); + + +/***/ }), + +/***/ 36224: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * The base implementation of `_.lt` which doesn't coerce arguments. + * + * @private + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {boolean} Returns `true` if `value` is less than `other`, + * else `false`. + */ +function baseLt(value, other) { + return value < other; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (baseLt); + + +/***/ }), + +/***/ 52568: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _baseEach_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6240); +/* harmony import */ var _isArrayLike_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(38446); + + + +/** + * The base implementation of `_.map` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array} Returns the new mapped array. + */ +function baseMap(collection, iteratee) { + var index = -1, + result = (0,_isArrayLike_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(collection) ? Array(collection.length) : []; + + (0,_baseEach_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A)(collection, function(value, key, collection) { + result[++index] = iteratee(value, key, collection); + }); + return result; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (baseMap); + + +/***/ }), + +/***/ 99354: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ _basePickBy) +}); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseGet.js +var _baseGet = __webpack_require__(66318); +// EXTERNAL MODULE: ./node_modules/lodash-es/_assignValue.js +var _assignValue = __webpack_require__(52851); +// EXTERNAL MODULE: ./node_modules/lodash-es/_castPath.js + 2 modules +var _castPath = __webpack_require__(7819); +// EXTERNAL MODULE: ./node_modules/lodash-es/_isIndex.js +var _isIndex = __webpack_require__(25353); +// EXTERNAL MODULE: ./node_modules/lodash-es/isObject.js +var isObject = __webpack_require__(23149); +// EXTERNAL MODULE: ./node_modules/lodash-es/_toKey.js +var _toKey = __webpack_require__(30901); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseSet.js + + + + + + +/** + * The base implementation of `_.set`. + * + * @private + * @param {Object} object The object to modify. + * @param {Array|string} path The path of the property to set. + * @param {*} value The value to set. + * @param {Function} [customizer] The function to customize path creation. + * @returns {Object} Returns `object`. + */ +function baseSet(object, path, value, customizer) { + if (!(0,isObject/* default */.A)(object)) { + return object; + } + path = (0,_castPath/* default */.A)(path, object); + + var index = -1, + length = path.length, + lastIndex = length - 1, + nested = object; + + while (nested != null && ++index < length) { + var key = (0,_toKey/* default */.A)(path[index]), + newValue = value; + + if (key === '__proto__' || key === 'constructor' || key === 'prototype') { + return object; + } + + if (index != lastIndex) { + var objValue = nested[key]; + newValue = customizer ? customizer(objValue, key, nested) : undefined; + if (newValue === undefined) { + newValue = (0,isObject/* default */.A)(objValue) + ? objValue + : ((0,_isIndex/* default */.A)(path[index + 1]) ? [] : {}); + } + } + (0,_assignValue/* default */.A)(nested, key, newValue); + nested = nested[key]; + } + return object; +} + +/* harmony default export */ const _baseSet = (baseSet); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_basePickBy.js + + + + +/** + * The base implementation of `_.pickBy` without support for iteratee shorthands. + * + * @private + * @param {Object} object The source object. + * @param {string[]} paths The property paths to pick. + * @param {Function} predicate The function invoked per property. + * @returns {Object} Returns the new object. + */ +function basePickBy(object, paths, predicate) { + var index = -1, + length = paths.length, + result = {}; + + while (++index < length) { + var path = paths[index], + value = (0,_baseGet/* default */.A)(object, path); + + if (predicate(value, path)) { + _baseSet(result, (0,_castPath/* default */.A)(path, object), value); + } + } + return result; +} + +/* harmony default export */ const _basePickBy = (basePickBy); + + +/***/ }), + +/***/ 70805: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * The base implementation of `_.property` without support for deep paths. + * + * @private + * @param {string} key The key of the property to get. + * @returns {Function} Returns the new accessor function. + */ +function baseProperty(key) { + return function(object) { + return object == null ? undefined : object[key]; + }; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (baseProperty); + + +/***/ }), + +/***/ 99902: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ _baseUniq) +}); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_SetCache.js + 2 modules +var _SetCache = __webpack_require__(62062); +// EXTERNAL MODULE: ./node_modules/lodash-es/_arrayIncludes.js +var _arrayIncludes = __webpack_require__(83149); +// EXTERNAL MODULE: ./node_modules/lodash-es/_arrayIncludesWith.js +var _arrayIncludesWith = __webpack_require__(87809); +// EXTERNAL MODULE: ./node_modules/lodash-es/_cacheHas.js +var _cacheHas = __webpack_require__(64099); +// EXTERNAL MODULE: ./node_modules/lodash-es/_Set.js +var _Set = __webpack_require__(39857); +// EXTERNAL MODULE: ./node_modules/lodash-es/noop.js +var noop = __webpack_require__(42302); +// EXTERNAL MODULE: ./node_modules/lodash-es/_setToArray.js +var _setToArray = __webpack_require__(29959); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_createSet.js + + + + +/** Used as references for various `Number` constants. */ +var INFINITY = 1 / 0; + +/** + * Creates a set object of `values`. + * + * @private + * @param {Array} values The values to add to the set. + * @returns {Object} Returns the new set. + */ +var createSet = !(_Set/* default */.A && (1 / (0,_setToArray/* default */.A)(new _Set/* default */.A([,-0]))[1]) == INFINITY) ? noop/* default */.A : function(values) { + return new _Set/* default */.A(values); +}; + +/* harmony default export */ const _createSet = (createSet); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseUniq.js + + + + + + + +/** Used as the size to enable large array optimizations. */ +var LARGE_ARRAY_SIZE = 200; + +/** + * The base implementation of `_.uniqBy` without support for iteratee shorthands. + * + * @private + * @param {Array} array The array to inspect. + * @param {Function} [iteratee] The iteratee invoked per element. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns the new duplicate free array. + */ +function baseUniq(array, iteratee, comparator) { + var index = -1, + includes = _arrayIncludes/* default */.A, + length = array.length, + isCommon = true, + result = [], + seen = result; + + if (comparator) { + isCommon = false; + includes = _arrayIncludesWith/* default */.A; + } + else if (length >= LARGE_ARRAY_SIZE) { + var set = iteratee ? null : _createSet(array); + if (set) { + return (0,_setToArray/* default */.A)(set); + } + isCommon = false; + includes = _cacheHas/* default */.A; + seen = new _SetCache/* default */.A; + } + else { + seen = iteratee ? [] : result; + } + outer: + while (++index < length) { + var value = array[index], + computed = iteratee ? iteratee(value) : value; + + value = (comparator || value !== 0) ? value : 0; + if (isCommon && computed === computed) { + var seenIndex = seen.length; + while (seenIndex--) { + if (seen[seenIndex] === computed) { + continue outer; + } + } + if (iteratee) { + seen.push(computed); + } + result.push(value); + } + else if (!includes(seen, computed, comparator)) { + if (seen !== result) { + seen.push(computed); + } + result.push(value); + } + } + return result; +} + +/* harmony default export */ const _baseUniq = (baseUniq); + + +/***/ }), + +/***/ 64099: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * Checks if a `cache` value for `key` exists. + * + * @private + * @param {Object} cache The cache to query. + * @param {string} key The key of the entry to check. + * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. + */ +function cacheHas(cache, key) { + return cache.has(key); +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (cacheHas); + + +/***/ }), + +/***/ 99922: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _identity_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(29008); + + +/** + * Casts `value` to `identity` if it's not a function. + * + * @private + * @param {*} value The value to inspect. + * @returns {Function} Returns cast function. + */ +function castFunction(value) { + return typeof value == 'function' ? value : _identity_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (castFunction); + + +/***/ }), + +/***/ 7819: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ _castPath) +}); + +// EXTERNAL MODULE: ./node_modules/lodash-es/isArray.js +var isArray = __webpack_require__(92049); +// EXTERNAL MODULE: ./node_modules/lodash-es/_isKey.js +var _isKey = __webpack_require__(86586); +// EXTERNAL MODULE: ./node_modules/lodash-es/memoize.js +var memoize = __webpack_require__(46632); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_memoizeCapped.js + + +/** Used as the maximum memoize cache size. */ +var MAX_MEMOIZE_SIZE = 500; + +/** + * A specialized version of `_.memoize` which clears the memoized function's + * cache when it exceeds `MAX_MEMOIZE_SIZE`. + * + * @private + * @param {Function} func The function to have its output memoized. + * @returns {Function} Returns the new memoized function. + */ +function memoizeCapped(func) { + var result = (0,memoize/* default */.A)(func, function(key) { + if (cache.size === MAX_MEMOIZE_SIZE) { + cache.clear(); + } + return key; + }); + + var cache = result.cache; + return result; +} + +/* harmony default export */ const _memoizeCapped = (memoizeCapped); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_stringToPath.js + + +/** Used to match property names within property paths. */ +var rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g; + +/** Used to match backslashes in property paths. */ +var reEscapeChar = /\\(\\)?/g; + +/** + * Converts `string` to a property path array. + * + * @private + * @param {string} string The string to convert. + * @returns {Array} Returns the property path array. + */ +var stringToPath = _memoizeCapped(function(string) { + var result = []; + if (string.charCodeAt(0) === 46 /* . */) { + result.push(''); + } + string.replace(rePropName, function(match, number, quote, subString) { + result.push(quote ? subString.replace(reEscapeChar, '$1') : (number || match)); + }); + return result; +}); + +/* harmony default export */ const _stringToPath = (stringToPath); + +// EXTERNAL MODULE: ./node_modules/lodash-es/toString.js + 1 modules +var lodash_es_toString = __webpack_require__(28894); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_castPath.js + + + + + +/** + * Casts `value` to a path array if it's not one. + * + * @private + * @param {*} value The value to inspect. + * @param {Object} [object] The object to query keys on. + * @returns {Array} Returns the cast property path array. + */ +function castPath(value, object) { + if ((0,isArray/* default */.A)(value)) { + return value; + } + return (0,_isKey/* default */.A)(value, object) ? [value] : _stringToPath((0,lodash_es_toString/* default */.A)(value)); +} + +/* harmony default export */ const _castPath = (castPath); + + +/***/ }), + +/***/ 19042: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _baseGetAllKeys_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(33831); +/* harmony import */ var _getSymbols_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(14792); +/* harmony import */ var _keys_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(27422); + + + + +/** + * Creates an array of own enumerable property names and symbols of `object`. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names and symbols. + */ +function getAllKeys(object) { + return (0,_baseGetAllKeys_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(object, _keys_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A, _getSymbols_js__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A); +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (getAllKeys); + + +/***/ }), + +/***/ 83973: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _baseGetAllKeys_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(33831); +/* harmony import */ var _getSymbolsIn_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(83511); +/* harmony import */ var _keysIn_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(55615); + + + + +/** + * Creates an array of own and inherited enumerable property names and + * symbols of `object`. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names and symbols. + */ +function getAllKeysIn(object) { + return (0,_baseGetAllKeys_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(object, _keysIn_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A, _getSymbolsIn_js__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A); +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (getAllKeysIn); + + +/***/ }), + +/***/ 14792: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _arrayFilter_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(2634); +/* harmony import */ var _stubArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(13153); + + + +/** Used for built-in method references. */ +var objectProto = Object.prototype; + +/** Built-in value references. */ +var propertyIsEnumerable = objectProto.propertyIsEnumerable; + +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeGetSymbols = Object.getOwnPropertySymbols; + +/** + * Creates an array of the own enumerable symbols of `object`. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of symbols. + */ +var getSymbols = !nativeGetSymbols ? _stubArray_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A : function(object) { + if (object == null) { + return []; + } + object = Object(object); + return (0,_arrayFilter_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A)(nativeGetSymbols(object), function(symbol) { + return propertyIsEnumerable.call(object, symbol); + }); +}; + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (getSymbols); + + +/***/ }), + +/***/ 83511: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _arrayPush_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(76912); +/* harmony import */ var _getPrototype_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(15647); +/* harmony import */ var _getSymbols_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(14792); +/* harmony import */ var _stubArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(13153); + + + + + +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeGetSymbols = Object.getOwnPropertySymbols; + +/** + * Creates an array of the own and inherited enumerable symbols of `object`. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of symbols. + */ +var getSymbolsIn = !nativeGetSymbols ? _stubArray_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A : function(object) { + var result = []; + while (object) { + (0,_arrayPush_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A)(result, (0,_getSymbols_js__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A)(object)); + object = (0,_getPrototype_js__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A)(object); + } + return result; +}; + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (getSymbolsIn); + + +/***/ }), + +/***/ 85054: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _castPath_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(7819); +/* harmony import */ var _isArguments_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(52274); +/* harmony import */ var _isArray_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(92049); +/* harmony import */ var _isIndex_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(25353); +/* harmony import */ var _isLength_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(5254); +/* harmony import */ var _toKey_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(30901); + + + + + + + +/** + * Checks if `path` exists on `object`. + * + * @private + * @param {Object} object The object to query. + * @param {Array|string} path The path to check. + * @param {Function} hasFunc The function to check properties. + * @returns {boolean} Returns `true` if `path` exists, else `false`. + */ +function hasPath(object, path, hasFunc) { + path = (0,_castPath_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(path, object); + + var index = -1, + length = path.length, + result = false; + + while (++index < length) { + var key = (0,_toKey_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A)(path[index]); + if (!(result = object != null && hasFunc(object, key))) { + break; + } + object = object[key]; + } + if (result || ++index != length) { + return result; + } + length = object == null ? 0 : object.length; + return !!length && (0,_isLength_js__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A)(length) && (0,_isIndex_js__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A)(key, length) && + ((0,_isArray_js__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .A)(object) || (0,_isArguments_js__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .A)(object)); +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (hasPath); + + +/***/ }), + +/***/ 86586: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _isArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(92049); +/* harmony import */ var _isSymbol_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(61882); + + + +/** Used to match property names within property paths. */ +var reIsDeepProp = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/, + reIsPlainProp = /^\w*$/; + +/** + * Checks if `value` is a property name and not a property path. + * + * @private + * @param {*} value The value to check. + * @param {Object} [object] The object to query keys on. + * @returns {boolean} Returns `true` if `value` is a property name, else `false`. + */ +function isKey(value, object) { + if ((0,_isArray_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(value)) { + return false; + } + var type = typeof value; + if (type == 'number' || type == 'symbol' || type == 'boolean' || + value == null || (0,_isSymbol_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A)(value)) { + return true; + } + return reIsPlainProp.test(value) || !reIsDeepProp.test(value) || + (object != null && value in Object(object)); +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (isKey); + + +/***/ }), + +/***/ 29959: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * Converts `set` to an array of its values. + * + * @private + * @param {Object} set The set to convert. + * @returns {Array} Returns the values. + */ +function setToArray(set) { + var index = -1, + result = Array(set.size); + + set.forEach(function(value) { + result[++index] = value; + }); + return result; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (setToArray); + + +/***/ }), + +/***/ 30901: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _isSymbol_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(61882); + + +/** Used as references for various `Number` constants. */ +var INFINITY = 1 / 0; + +/** + * Converts `value` to a string key if it's not a string or symbol. + * + * @private + * @param {*} value The value to inspect. + * @returns {string|symbol} Returns the key. + */ +function toKey(value) { + if (typeof value == 'string' || (0,_isSymbol_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(value)) { + return value; + } + var result = (value + ''); + return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (toKey); + + +/***/ }), + +/***/ 50053: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _baseClone_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(68675); + + +/** Used to compose bitmasks for cloning. */ +var CLONE_SYMBOLS_FLAG = 4; + +/** + * Creates a shallow clone of `value`. + * + * **Note:** This method is loosely based on the + * [structured clone algorithm](https://mdn.io/Structured_clone_algorithm) + * and supports cloning arrays, array buffers, booleans, date objects, maps, + * numbers, `Object` objects, regexes, sets, strings, symbols, and typed + * arrays. The own enumerable properties of `arguments` objects are cloned + * as plain objects. An empty object is returned for uncloneable values such + * as error objects, functions, DOM nodes, and WeakMaps. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to clone. + * @returns {*} Returns the cloned value. + * @see _.cloneDeep + * @example + * + * var objects = [{ 'a': 1 }, { 'b': 2 }]; + * + * var shallow = _.clone(objects); + * console.log(shallow[0] === objects[0]); + * // => true + */ +function clone(value) { + return (0,_baseClone_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(value, CLONE_SYMBOLS_FLAG); +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (clone); + + +/***/ }), + +/***/ 23068: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _baseRest_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(24326); +/* harmony import */ var _eq_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(66984); +/* harmony import */ var _isIterateeCall_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6832); +/* harmony import */ var _keysIn_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(55615); + + + + + +/** Used for built-in method references. */ +var objectProto = Object.prototype; + +/** Used to check objects for own properties. */ +var hasOwnProperty = objectProto.hasOwnProperty; + +/** + * Assigns own and inherited enumerable string keyed properties of source + * objects to the destination object for all destination properties that + * resolve to `undefined`. Source objects are applied from left to right. + * Once a property is set, additional values of the same property are ignored. + * + * **Note:** This method mutates `object`. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The destination object. + * @param {...Object} [sources] The source objects. + * @returns {Object} Returns `object`. + * @see _.defaultsDeep + * @example + * + * _.defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 }); + * // => { 'a': 1, 'b': 2 } + */ +var defaults = (0,_baseRest_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(function(object, sources) { + object = Object(object); + + var index = -1; + var length = sources.length; + var guard = length > 2 ? sources[2] : undefined; + + if (guard && (0,_isIterateeCall_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A)(sources[0], sources[1], guard)) { + length = 1; + } + + while (++index < length) { + var source = sources[index]; + var props = (0,_keysIn_js__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A)(source); + var propsIndex = -1; + var propsLength = props.length; + + while (++propsIndex < propsLength) { + var key = props[propsIndex]; + var value = object[key]; + + if (value === undefined || + ((0,_eq_js__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A)(value, objectProto[key]) && !hasOwnProperty.call(object, key))) { + object[key] = source[key]; + } + } + } + + return object; +}); + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (defaults); + + +/***/ }), + +/***/ 94092: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _arrayFilter_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(2634); +/* harmony import */ var _baseFilter_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(51790); +/* harmony import */ var _baseIteratee_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(23958); +/* harmony import */ var _isArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(92049); + + + + + +/** + * Iterates over elements of `collection`, returning an array of all elements + * `predicate` returns truthy for. The predicate is invoked with three + * arguments: (value, index|key, collection). + * + * **Note:** Unlike `_.remove`, this method returns a new array. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @returns {Array} Returns the new filtered array. + * @see _.reject + * @example + * + * var users = [ + * { 'user': 'barney', 'age': 36, 'active': true }, + * { 'user': 'fred', 'age': 40, 'active': false } + * ]; + * + * _.filter(users, function(o) { return !o.active; }); + * // => objects for ['fred'] + * + * // The `_.matches` iteratee shorthand. + * _.filter(users, { 'age': 36, 'active': true }); + * // => objects for ['barney'] + * + * // The `_.matchesProperty` iteratee shorthand. + * _.filter(users, ['active', false]); + * // => objects for ['fred'] + * + * // The `_.property` iteratee shorthand. + * _.filter(users, 'active'); + * // => objects for ['barney'] + * + * // Combining several predicates using `_.overEvery` or `_.overSome`. + * _.filter(users, _.overSome([{ 'age': 36 }, ['age', 40]])); + * // => objects for ['fred', 'barney'] + */ +function filter(collection, predicate) { + var func = (0,_isArray_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(collection) ? _arrayFilter_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A : _baseFilter_js__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A; + return func(collection, (0,_baseIteratee_js__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A)(predicate, 3)); +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (filter); + + +/***/ }), + +/***/ 16145: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ lodash_es_find) +}); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseIteratee.js + 15 modules +var _baseIteratee = __webpack_require__(23958); +// EXTERNAL MODULE: ./node_modules/lodash-es/isArrayLike.js +var isArrayLike = __webpack_require__(38446); +// EXTERNAL MODULE: ./node_modules/lodash-es/keys.js +var keys = __webpack_require__(27422); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_createFind.js + + + + +/** + * Creates a `_.find` or `_.findLast` function. + * + * @private + * @param {Function} findIndexFunc The function to find the collection index. + * @returns {Function} Returns the new find function. + */ +function createFind(findIndexFunc) { + return function(collection, predicate, fromIndex) { + var iterable = Object(collection); + if (!(0,isArrayLike/* default */.A)(collection)) { + var iteratee = (0,_baseIteratee/* default */.A)(predicate, 3); + collection = (0,keys/* default */.A)(collection); + predicate = function(key) { return iteratee(iterable[key], key, iterable); }; + } + var index = findIndexFunc(collection, predicate, fromIndex); + return index > -1 ? iterable[iteratee ? collection[index] : index] : undefined; + }; +} + +/* harmony default export */ const _createFind = (createFind); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseFindIndex.js +var _baseFindIndex = __webpack_require__(25707); +// EXTERNAL MODULE: ./node_modules/lodash-es/toInteger.js +var toInteger = __webpack_require__(18593); +;// CONCATENATED MODULE: ./node_modules/lodash-es/findIndex.js + + + + +/* Built-in method references for those with the same name as other `lodash` methods. */ +var nativeMax = Math.max; + +/** + * This method is like `_.find` except that it returns the index of the first + * element `predicate` returns truthy for instead of the element itself. + * + * @static + * @memberOf _ + * @since 1.1.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @param {number} [fromIndex=0] The index to search from. + * @returns {number} Returns the index of the found element, else `-1`. + * @example + * + * var users = [ + * { 'user': 'barney', 'active': false }, + * { 'user': 'fred', 'active': false }, + * { 'user': 'pebbles', 'active': true } + * ]; + * + * _.findIndex(users, function(o) { return o.user == 'barney'; }); + * // => 0 + * + * // The `_.matches` iteratee shorthand. + * _.findIndex(users, { 'user': 'fred', 'active': false }); + * // => 1 + * + * // The `_.matchesProperty` iteratee shorthand. + * _.findIndex(users, ['active', false]); + * // => 0 + * + * // The `_.property` iteratee shorthand. + * _.findIndex(users, 'active'); + * // => 2 + */ +function findIndex(array, predicate, fromIndex) { + var length = array == null ? 0 : array.length; + if (!length) { + return -1; + } + var index = fromIndex == null ? 0 : (0,toInteger/* default */.A)(fromIndex); + if (index < 0) { + index = nativeMax(length + index, 0); + } + return (0,_baseFindIndex/* default */.A)(array, (0,_baseIteratee/* default */.A)(predicate, 3), index); +} + +/* harmony default export */ const lodash_es_findIndex = (findIndex); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/find.js + + + +/** + * Iterates over elements of `collection`, returning the first element + * `predicate` returns truthy for. The predicate is invoked with three + * arguments: (value, index|key, collection). + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to inspect. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @param {number} [fromIndex=0] The index to search from. + * @returns {*} Returns the matched element, else `undefined`. + * @example + * + * var users = [ + * { 'user': 'barney', 'age': 36, 'active': true }, + * { 'user': 'fred', 'age': 40, 'active': false }, + * { 'user': 'pebbles', 'age': 1, 'active': true } + * ]; + * + * _.find(users, function(o) { return o.age < 40; }); + * // => object for 'barney' + * + * // The `_.matches` iteratee shorthand. + * _.find(users, { 'age': 1, 'active': true }); + * // => object for 'pebbles' + * + * // The `_.matchesProperty` iteratee shorthand. + * _.find(users, ['active', false]); + * // => object for 'fred' + * + * // The `_.property` iteratee shorthand. + * _.find(users, 'active'); + * // => object for 'barney' + */ +var find = _createFind(lodash_es_findIndex); + +/* harmony default export */ const lodash_es_find = (find); + + +/***/ }), + +/***/ 34098: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _baseFlatten_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(13588); + + +/** + * Flattens `array` a single level deep. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to flatten. + * @returns {Array} Returns the new flattened array. + * @example + * + * _.flatten([1, [2, [3, [4]], 5]]); + * // => [1, 2, [3, [4]], 5] + */ +function flatten(array) { + var length = array == null ? 0 : array.length; + return length ? (0,_baseFlatten_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(array, 1) : []; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (flatten); + + +/***/ }), + +/***/ 8058: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _arrayEach_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(72641); +/* harmony import */ var _baseEach_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(6240); +/* harmony import */ var _castFunction_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(99922); +/* harmony import */ var _isArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(92049); + + + + + +/** + * Iterates over elements of `collection` and invokes `iteratee` for each element. + * The iteratee is invoked with three arguments: (value, index|key, collection). + * Iteratee functions may exit iteration early by explicitly returning `false`. + * + * **Note:** As with other "Collections" methods, objects with a "length" + * property are iterated like arrays. To avoid this behavior use `_.forIn` + * or `_.forOwn` for object iteration. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @alias each + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Array|Object} Returns `collection`. + * @see _.forEachRight + * @example + * + * _.forEach([1, 2], function(value) { + * console.log(value); + * }); + * // => Logs `1` then `2`. + * + * _.forEach({ 'a': 1, 'b': 2 }, function(value, key) { + * console.log(key); + * }); + * // => Logs 'a' then 'b' (iteration order is not guaranteed). + */ +function forEach(collection, iteratee) { + var func = (0,_isArray_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(collection) ? _arrayEach_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A : _baseEach_js__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A; + return func(collection, (0,_castFunction_js__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A)(iteratee)); +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (forEach); + + +/***/ }), + +/***/ 48585: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ lodash_es_has) +}); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseHas.js +/** Used for built-in method references. */ +var objectProto = Object.prototype; + +/** Used to check objects for own properties. */ +var _baseHas_hasOwnProperty = objectProto.hasOwnProperty; + +/** + * The base implementation of `_.has` without support for deep paths. + * + * @private + * @param {Object} [object] The object to query. + * @param {Array|string} key The key to check. + * @returns {boolean} Returns `true` if `key` exists, else `false`. + */ +function baseHas(object, key) { + return object != null && _baseHas_hasOwnProperty.call(object, key); +} + +/* harmony default export */ const _baseHas = (baseHas); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_hasPath.js +var _hasPath = __webpack_require__(85054); +;// CONCATENATED MODULE: ./node_modules/lodash-es/has.js + + + +/** + * Checks if `path` is a direct property of `object`. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The object to query. + * @param {Array|string} path The path to check. + * @returns {boolean} Returns `true` if `path` exists, else `false`. + * @example + * + * var object = { 'a': { 'b': 2 } }; + * var other = _.create({ 'a': _.create({ 'b': 2 }) }); + * + * _.has(object, 'a'); + * // => true + * + * _.has(object, 'a.b'); + * // => true + * + * _.has(object, ['a', 'b']); + * // => true + * + * _.has(other, 'a'); + * // => false + */ +function has(object, path) { + return object != null && (0,_hasPath/* default */.A)(object, path, _baseHas); +} + +/* harmony default export */ const lodash_es_has = (has); + + +/***/ }), + +/***/ 16807: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ lodash_es_hasIn) +}); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseHasIn.js +/** + * The base implementation of `_.hasIn` without support for deep paths. + * + * @private + * @param {Object} [object] The object to query. + * @param {Array|string} key The key to check. + * @returns {boolean} Returns `true` if `key` exists, else `false`. + */ +function baseHasIn(object, key) { + return object != null && key in Object(object); +} + +/* harmony default export */ const _baseHasIn = (baseHasIn); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_hasPath.js +var _hasPath = __webpack_require__(85054); +;// CONCATENATED MODULE: ./node_modules/lodash-es/hasIn.js + + + +/** + * Checks if `path` is a direct or inherited property of `object`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Object + * @param {Object} object The object to query. + * @param {Array|string} path The path to check. + * @returns {boolean} Returns `true` if `path` exists, else `false`. + * @example + * + * var object = _.create({ 'a': _.create({ 'b': 2 }) }); + * + * _.hasIn(object, 'a'); + * // => true + * + * _.hasIn(object, 'a.b'); + * // => true + * + * _.hasIn(object, ['a', 'b']); + * // => true + * + * _.hasIn(object, 'b'); + * // => false + */ +function hasIn(object, path) { + return object != null && (0,_hasPath/* default */.A)(object, path, _baseHasIn); +} + +/* harmony default export */ const lodash_es_hasIn = (hasIn); + + +/***/ }), + +/***/ 9703: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _baseGetTag_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(88496); +/* harmony import */ var _isArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(92049); +/* harmony import */ var _isObjectLike_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(53098); + + + + +/** `Object#toString` result references. */ +var stringTag = '[object String]'; + +/** + * Checks if `value` is classified as a `String` primitive or object. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a string, else `false`. + * @example + * + * _.isString('abc'); + * // => true + * + * _.isString(1); + * // => false + */ +function isString(value) { + return typeof value == 'string' || + (!(0,_isArray_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(value) && (0,_isObjectLike_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A)(value) && (0,_baseGetTag_js__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A)(value) == stringTag); +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (isString); + + +/***/ }), + +/***/ 61882: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _baseGetTag_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(88496); +/* harmony import */ var _isObjectLike_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(53098); + + + +/** `Object#toString` result references. */ +var symbolTag = '[object Symbol]'; + +/** + * Checks if `value` is classified as a `Symbol` primitive or object. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a symbol, else `false`. + * @example + * + * _.isSymbol(Symbol.iterator); + * // => true + * + * _.isSymbol('abc'); + * // => false + */ +function isSymbol(value) { + return typeof value == 'symbol' || + ((0,_isObjectLike_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(value) && (0,_baseGetTag_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A)(value) == symbolTag); +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (isSymbol); + + +/***/ }), + +/***/ 69592: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * Checks if `value` is `undefined`. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is `undefined`, else `false`. + * @example + * + * _.isUndefined(void 0); + * // => true + * + * _.isUndefined(null); + * // => false + */ +function isUndefined(value) { + return value === undefined; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (isUndefined); + + +/***/ }), + +/***/ 27422: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _arrayLikeKeys_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(83607); +/* harmony import */ var _baseKeys_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(69471); +/* harmony import */ var _isArrayLike_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(38446); + + + + +/** + * Creates an array of the own enumerable property names of `object`. + * + * **Note:** Non-object values are coerced to objects. See the + * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys) + * for more details. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names. + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.keys(new Foo); + * // => ['a', 'b'] (iteration order is not guaranteed) + * + * _.keys('hi'); + * // => ['0', '1'] + */ +function keys(object) { + return (0,_isArrayLike_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(object) ? (0,_arrayLikeKeys_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A)(object) : (0,_baseKeys_js__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A)(object); +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (keys); + + +/***/ }), + +/***/ 26666: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * Gets the last element of `array`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to query. + * @returns {*} Returns the last element of `array`. + * @example + * + * _.last([1, 2, 3]); + * // => 3 + */ +function last(array) { + var length = array == null ? 0 : array.length; + return length ? array[length - 1] : undefined; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (last); + + +/***/ }), + +/***/ 74722: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _arrayMap_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(45572); +/* harmony import */ var _baseIteratee_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(23958); +/* harmony import */ var _baseMap_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(52568); +/* harmony import */ var _isArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(92049); + + + + + +/** + * Creates an array of values by running each element in `collection` thru + * `iteratee`. The iteratee is invoked with three arguments: + * (value, index|key, collection). + * + * Many lodash methods are guarded to work as iteratees for methods like + * `_.every`, `_.filter`, `_.map`, `_.mapValues`, `_.reject`, and `_.some`. + * + * The guarded methods are: + * `ary`, `chunk`, `curry`, `curryRight`, `drop`, `dropRight`, `every`, + * `fill`, `invert`, `parseInt`, `random`, `range`, `rangeRight`, `repeat`, + * `sampleSize`, `slice`, `some`, `sortBy`, `split`, `take`, `takeRight`, + * `template`, `trim`, `trimEnd`, `trimStart`, and `words` + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Array} Returns the new mapped array. + * @example + * + * function square(n) { + * return n * n; + * } + * + * _.map([4, 8], square); + * // => [16, 64] + * + * _.map({ 'a': 4, 'b': 8 }, square); + * // => [16, 64] (iteration order is not guaranteed) + * + * var users = [ + * { 'user': 'barney' }, + * { 'user': 'fred' } + * ]; + * + * // The `_.property` iteratee shorthand. + * _.map(users, 'user'); + * // => ['barney', 'fred'] + */ +function map(collection, iteratee) { + var func = (0,_isArray_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(collection) ? _arrayMap_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A : _baseMap_js__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A; + return func(collection, (0,_baseIteratee_js__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A)(iteratee, 3)); +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (map); + + +/***/ }), + +/***/ 86452: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _baseExtremum_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(72559); +/* harmony import */ var _baseLt_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(36224); +/* harmony import */ var _identity_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(29008); + + + + +/** + * Computes the minimum value of `array`. If `array` is empty or falsey, + * `undefined` is returned. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Math + * @param {Array} array The array to iterate over. + * @returns {*} Returns the minimum value. + * @example + * + * _.min([4, 2, 8, 6]); + * // => 2 + * + * _.min([]); + * // => undefined + */ +function min(array) { + return (array && array.length) + ? (0,_baseExtremum_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(array, _identity_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A, _baseLt_js__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A) + : undefined; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (min); + + +/***/ }), + +/***/ 42302: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * This method returns `undefined`. + * + * @static + * @memberOf _ + * @since 2.3.0 + * @category Util + * @example + * + * _.times(2, _.noop); + * // => [undefined, undefined] + */ +function noop() { + // No operation performed. +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (noop); + + +/***/ }), + +/***/ 89463: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ lodash_es_reduce) +}); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_arrayReduce.js +/** + * A specialized version of `_.reduce` for arrays without support for + * iteratee shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @param {*} [accumulator] The initial value. + * @param {boolean} [initAccum] Specify using the first element of `array` as + * the initial value. + * @returns {*} Returns the accumulated value. + */ +function arrayReduce(array, iteratee, accumulator, initAccum) { + var index = -1, + length = array == null ? 0 : array.length; + + if (initAccum && length) { + accumulator = array[++index]; + } + while (++index < length) { + accumulator = iteratee(accumulator, array[index], index, array); + } + return accumulator; +} + +/* harmony default export */ const _arrayReduce = (arrayReduce); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseEach.js + 1 modules +var _baseEach = __webpack_require__(6240); +// EXTERNAL MODULE: ./node_modules/lodash-es/_baseIteratee.js + 15 modules +var _baseIteratee = __webpack_require__(23958); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseReduce.js +/** + * The base implementation of `_.reduce` and `_.reduceRight`, without support + * for iteratee shorthands, which iterates over `collection` using `eachFunc`. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @param {*} accumulator The initial value. + * @param {boolean} initAccum Specify using the first or last element of + * `collection` as the initial value. + * @param {Function} eachFunc The function to iterate over `collection`. + * @returns {*} Returns the accumulated value. + */ +function baseReduce(collection, iteratee, accumulator, initAccum, eachFunc) { + eachFunc(collection, function(value, index, collection) { + accumulator = initAccum + ? (initAccum = false, value) + : iteratee(accumulator, value, index, collection); + }); + return accumulator; +} + +/* harmony default export */ const _baseReduce = (baseReduce); + +// EXTERNAL MODULE: ./node_modules/lodash-es/isArray.js +var isArray = __webpack_require__(92049); +;// CONCATENATED MODULE: ./node_modules/lodash-es/reduce.js + + + + + + +/** + * Reduces `collection` to a value which is the accumulated result of running + * each element in `collection` thru `iteratee`, where each successive + * invocation is supplied the return value of the previous. If `accumulator` + * is not given, the first element of `collection` is used as the initial + * value. The iteratee is invoked with four arguments: + * (accumulator, value, index|key, collection). + * + * Many lodash methods are guarded to work as iteratees for methods like + * `_.reduce`, `_.reduceRight`, and `_.transform`. + * + * The guarded methods are: + * `assign`, `defaults`, `defaultsDeep`, `includes`, `merge`, `orderBy`, + * and `sortBy` + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @param {*} [accumulator] The initial value. + * @returns {*} Returns the accumulated value. + * @see _.reduceRight + * @example + * + * _.reduce([1, 2], function(sum, n) { + * return sum + n; + * }, 0); + * // => 3 + * + * _.reduce({ 'a': 1, 'b': 2, 'c': 1 }, function(result, value, key) { + * (result[value] || (result[value] = [])).push(key); + * return result; + * }, {}); + * // => { '1': ['a', 'c'], '2': ['b'] } (iteration order is not guaranteed) + */ +function reduce(collection, iteratee, accumulator) { + var func = (0,isArray/* default */.A)(collection) ? _arrayReduce : _baseReduce, + initAccum = arguments.length < 3; + + return func(collection, (0,_baseIteratee/* default */.A)(iteratee, 4), accumulator, initAccum, _baseEach/* default */.A); +} + +/* harmony default export */ const lodash_es_reduce = (reduce); + + +/***/ }), + +/***/ 13153: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/** + * This method returns a new empty array. + * + * @static + * @memberOf _ + * @since 4.13.0 + * @category Util + * @returns {Array} Returns the new empty array. + * @example + * + * var arrays = _.times(2, _.stubArray); + * + * console.log(arrays); + * // => [[], []] + * + * console.log(arrays[0] === arrays[1]); + * // => false + */ +function stubArray() { + return []; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (stubArray); + + +/***/ }), + +/***/ 74342: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ lodash_es_toFinite) +}); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_trimmedEndIndex.js +/** Used to match a single whitespace character. */ +var reWhitespace = /\s/; + +/** + * Used by `_.trim` and `_.trimEnd` to get the index of the last non-whitespace + * character of `string`. + * + * @private + * @param {string} string The string to inspect. + * @returns {number} Returns the index of the last non-whitespace character. + */ +function trimmedEndIndex(string) { + var index = string.length; + + while (index-- && reWhitespace.test(string.charAt(index))) {} + return index; +} + +/* harmony default export */ const _trimmedEndIndex = (trimmedEndIndex); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseTrim.js + + +/** Used to match leading whitespace. */ +var reTrimStart = /^\s+/; + +/** + * The base implementation of `_.trim`. + * + * @private + * @param {string} string The string to trim. + * @returns {string} Returns the trimmed string. + */ +function baseTrim(string) { + return string + ? string.slice(0, _trimmedEndIndex(string) + 1).replace(reTrimStart, '') + : string; +} + +/* harmony default export */ const _baseTrim = (baseTrim); + +// EXTERNAL MODULE: ./node_modules/lodash-es/isObject.js +var isObject = __webpack_require__(23149); +// EXTERNAL MODULE: ./node_modules/lodash-es/isSymbol.js +var isSymbol = __webpack_require__(61882); +;// CONCATENATED MODULE: ./node_modules/lodash-es/toNumber.js + + + + +/** Used as references for various `Number` constants. */ +var NAN = 0 / 0; + +/** Used to detect bad signed hexadecimal string values. */ +var reIsBadHex = /^[-+]0x[0-9a-f]+$/i; + +/** Used to detect binary string values. */ +var reIsBinary = /^0b[01]+$/i; + +/** Used to detect octal string values. */ +var reIsOctal = /^0o[0-7]+$/i; + +/** Built-in method references without a dependency on `root`. */ +var freeParseInt = parseInt; + +/** + * Converts `value` to a number. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to process. + * @returns {number} Returns the number. + * @example + * + * _.toNumber(3.2); + * // => 3.2 + * + * _.toNumber(Number.MIN_VALUE); + * // => 5e-324 + * + * _.toNumber(Infinity); + * // => Infinity + * + * _.toNumber('3.2'); + * // => 3.2 + */ +function toNumber(value) { + if (typeof value == 'number') { + return value; + } + if ((0,isSymbol/* default */.A)(value)) { + return NAN; + } + if ((0,isObject/* default */.A)(value)) { + var other = typeof value.valueOf == 'function' ? value.valueOf() : value; + value = (0,isObject/* default */.A)(other) ? (other + '') : other; + } + if (typeof value != 'string') { + return value === 0 ? value : +value; + } + value = _baseTrim(value); + var isBinary = reIsBinary.test(value); + return (isBinary || reIsOctal.test(value)) + ? freeParseInt(value.slice(2), isBinary ? 2 : 8) + : (reIsBadHex.test(value) ? NAN : +value); +} + +/* harmony default export */ const lodash_es_toNumber = (toNumber); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/toFinite.js + + +/** Used as references for various `Number` constants. */ +var INFINITY = 1 / 0, + MAX_INTEGER = 1.7976931348623157e+308; + +/** + * Converts `value` to a finite number. + * + * @static + * @memberOf _ + * @since 4.12.0 + * @category Lang + * @param {*} value The value to convert. + * @returns {number} Returns the converted number. + * @example + * + * _.toFinite(3.2); + * // => 3.2 + * + * _.toFinite(Number.MIN_VALUE); + * // => 5e-324 + * + * _.toFinite(Infinity); + * // => 1.7976931348623157e+308 + * + * _.toFinite('3.2'); + * // => 3.2 + */ +function toFinite(value) { + if (!value) { + return value === 0 ? value : 0; + } + value = lodash_es_toNumber(value); + if (value === INFINITY || value === -INFINITY) { + var sign = (value < 0 ? -1 : 1); + return sign * MAX_INTEGER; + } + return value === value ? value : 0; +} + +/* harmony default export */ const lodash_es_toFinite = (toFinite); + + +/***/ }), + +/***/ 18593: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var _toFinite_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(74342); + + +/** + * Converts `value` to an integer. + * + * **Note:** This method is loosely based on + * [`ToInteger`](http://www.ecma-international.org/ecma-262/7.0/#sec-tointeger). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to convert. + * @returns {number} Returns the converted integer. + * @example + * + * _.toInteger(3.2); + * // => 3 + * + * _.toInteger(Number.MIN_VALUE); + * // => 0 + * + * _.toInteger(Infinity); + * // => 1.7976931348623157e+308 + * + * _.toInteger('3.2'); + * // => 3 + */ +function toInteger(value) { + var result = (0,_toFinite_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(value), + remainder = result % 1; + + return result === result ? (remainder ? result - remainder : result) : 0; +} + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (toInteger); + + +/***/ }), + +/***/ 28894: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ lodash_es_toString) +}); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_Symbol.js +var _Symbol = __webpack_require__(241); +// EXTERNAL MODULE: ./node_modules/lodash-es/_arrayMap.js +var _arrayMap = __webpack_require__(45572); +// EXTERNAL MODULE: ./node_modules/lodash-es/isArray.js +var isArray = __webpack_require__(92049); +// EXTERNAL MODULE: ./node_modules/lodash-es/isSymbol.js +var isSymbol = __webpack_require__(61882); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseToString.js + + + + + +/** Used as references for various `Number` constants. */ +var INFINITY = 1 / 0; + +/** Used to convert symbols to primitives and strings. */ +var symbolProto = _Symbol/* default */.A ? _Symbol/* default */.A.prototype : undefined, + symbolToString = symbolProto ? symbolProto.toString : undefined; + +/** + * The base implementation of `_.toString` which doesn't convert nullish + * values to empty strings. + * + * @private + * @param {*} value The value to process. + * @returns {string} Returns the string. + */ +function baseToString(value) { + // Exit early for strings to avoid a performance hit in some environments. + if (typeof value == 'string') { + return value; + } + if ((0,isArray/* default */.A)(value)) { + // Recursively convert values (susceptible to call stack limits). + return (0,_arrayMap/* default */.A)(value, baseToString) + ''; + } + if ((0,isSymbol/* default */.A)(value)) { + return symbolToString ? symbolToString.call(value) : ''; + } + var result = (value + ''); + return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result; +} + +/* harmony default export */ const _baseToString = (baseToString); + +;// CONCATENATED MODULE: ./node_modules/lodash-es/toString.js + + +/** + * Converts `value` to a string. An empty string is returned for `null` + * and `undefined` values. The sign of `-0` is preserved. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to convert. + * @returns {string} Returns the converted string. + * @example + * + * _.toString(null); + * // => '' + * + * _.toString(-0); + * // => '-0' + * + * _.toString([1, 2, 3]); + * // => '1,2,3' + */ +function toString_toString(value) { + return value == null ? '' : _baseToString(value); +} + +/* harmony default export */ const lodash_es_toString = (toString_toString); + + +/***/ }), + +/***/ 38207: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + A: () => (/* binding */ lodash_es_values) +}); + +// EXTERNAL MODULE: ./node_modules/lodash-es/_arrayMap.js +var _arrayMap = __webpack_require__(45572); +;// CONCATENATED MODULE: ./node_modules/lodash-es/_baseValues.js + + +/** + * The base implementation of `_.values` and `_.valuesIn` which creates an + * array of `object` property values corresponding to the property names + * of `props`. + * + * @private + * @param {Object} object The object to query. + * @param {Array} props The property names to get values for. + * @returns {Object} Returns the array of property values. + */ +function baseValues(object, props) { + return (0,_arrayMap/* default */.A)(props, function(key) { + return object[key]; + }); +} + +/* harmony default export */ const _baseValues = (baseValues); + +// EXTERNAL MODULE: ./node_modules/lodash-es/keys.js +var keys = __webpack_require__(27422); +;// CONCATENATED MODULE: ./node_modules/lodash-es/values.js + + + +/** + * Creates an array of the own enumerable string keyed property values of `object`. + * + * **Note:** Non-object values are coerced to objects. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property values. + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.values(new Foo); + * // => [1, 2] (iteration order is not guaranteed) + * + * _.values('hi'); + * // => ['h', 'i'] + */ +function values(object) { + return object == null ? [] : _baseValues(object, (0,keys/* default */.A)(object)); +} + +/* harmony default export */ const lodash_es_values = (values); + + +/***/ }), + +/***/ 77459: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ S: () => (/* binding */ populateCommonDb) +/* harmony export */ }); +/* harmony import */ var _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(64994); + + +// src/diagrams/common/populateCommonDb.ts +function populateCommonDb(ast, db) { + if (ast.accDescr) { + db.setAccDescription?.(ast.accDescr); + } + if (ast.accTitle) { + db.setAccTitle?.(ast.accTitle); + } + if (ast.title) { + db.setDiagramTitle?.(ast.title); + } +} +(0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_0__/* .__name */ .K2)(populateCommonDb, "populateCommonDb"); + + + + +/***/ }), + +/***/ 48444: +/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { + +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ diagram: () => (/* binding */ diagram) +/* harmony export */ }); +/* harmony import */ var _chunk_JJENOPKO_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(77459); +/* harmony import */ var _chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(57323); +/* harmony import */ var _chunk_DLZUUSFL_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(48852); +/* harmony import */ var _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(64994); +/* harmony import */ var _mermaid_js_parser__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(78731); +/* harmony import */ var d3__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(20007); + + + + + +// src/diagrams/pie/pieParser.ts + + +// src/diagrams/pie/pieDb.ts +var DEFAULT_PIE_CONFIG = _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .defaultConfig_default */ .UI.pie; +var DEFAULT_PIE_DB = { + sections: /* @__PURE__ */ new Map(), + showData: false, + config: DEFAULT_PIE_CONFIG +}; +var sections = DEFAULT_PIE_DB.sections; +var showData = DEFAULT_PIE_DB.showData; +var config = structuredClone(DEFAULT_PIE_CONFIG); +var getConfig2 = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(() => structuredClone(config), "getConfig"); +var clear2 = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(() => { + sections = /* @__PURE__ */ new Map(); + showData = DEFAULT_PIE_DB.showData; + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .clear */ .IU)(); +}, "clear"); +var addSection = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(({ label, value }) => { + if (!sections.has(label)) { + sections.set(label, value); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .log */ .Rm.debug(`added new section: ${label}, with value: ${value}`); + } +}, "addSection"); +var getSections = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(() => sections, "getSections"); +var setShowData = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)((toggle) => { + showData = toggle; +}, "setShowData"); +var getShowData = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(() => showData, "getShowData"); +var db = { + getConfig: getConfig2, + clear: clear2, + setDiagramTitle: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .setDiagramTitle */ .ke, + getDiagramTitle: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .getDiagramTitle */ .ab, + setAccTitle: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .setAccTitle */ .SV, + getAccTitle: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .getAccTitle */ .iN, + setAccDescription: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .setAccDescription */ .EI, + getAccDescription: _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .getAccDescription */ .m7, + addSection, + getSections, + setShowData, + getShowData +}; + +// src/diagrams/pie/pieParser.ts +var populateDb = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)((ast, db2) => { + (0,_chunk_JJENOPKO_mjs__WEBPACK_IMPORTED_MODULE_0__/* .populateCommonDb */ .S)(ast, db2); + db2.setShowData(ast.showData); + ast.sections.map(db2.addSection); +}, "populateDb"); +var parser = { + parse: /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)(async (input) => { + const ast = await (0,_mermaid_js_parser__WEBPACK_IMPORTED_MODULE_4__/* .parse */ .qg)("pie", input); + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .log */ .Rm.debug(ast); + populateDb(ast, db); + }, "parse") +}; + +// src/diagrams/pie/pieStyles.ts +var getStyles = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)((options) => ` + .pieCircle{ + stroke: ${options.pieStrokeColor}; + stroke-width : ${options.pieStrokeWidth}; + opacity : ${options.pieOpacity}; + } + .pieOuterCircle{ + stroke: ${options.pieOuterStrokeColor}; + stroke-width: ${options.pieOuterStrokeWidth}; + fill: none; + } + .pieTitleText { + text-anchor: middle; + font-size: ${options.pieTitleTextSize}; + fill: ${options.pieTitleTextColor}; + font-family: ${options.fontFamily}; + } + .slice { + font-family: ${options.fontFamily}; + fill: ${options.pieSectionTextColor}; + font-size:${options.pieSectionTextSize}; + // fill: white; + } + .legend text { + fill: ${options.pieLegendTextColor}; + font-family: ${options.fontFamily}; + font-size: ${options.pieLegendTextSize}; + } +`, "getStyles"); +var pieStyles_default = getStyles; + +// src/diagrams/pie/pieRenderer.ts + +var createPieArcs = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)((sections2) => { + const pieData = [...sections2.entries()].map((element) => { + return { + label: element[0], + value: element[1] + }; + }).sort((a, b) => { + return b.value - a.value; + }); + const pie = (0,d3__WEBPACK_IMPORTED_MODULE_5__/* .pie */ .rLf)().value( + (d3Section) => d3Section.value + ); + return pie(pieData); +}, "createPieArcs"); +var draw = /* @__PURE__ */ (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .__name */ .K2)((text, id, _version, diagObj) => { + _chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .log */ .Rm.debug("rendering pie chart\n" + text); + const db2 = diagObj.db; + const globalConfig = (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .getConfig2 */ .D7)(); + const pieConfig = (0,_chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_1__/* .cleanAndMerge */ .$t)(db2.getConfig(), globalConfig.pie); + const MARGIN = 40; + const LEGEND_RECT_SIZE = 18; + const LEGEND_SPACING = 4; + const height = 450; + const pieWidth = height; + const svg = (0,_chunk_DLZUUSFL_mjs__WEBPACK_IMPORTED_MODULE_2__/* .selectSvgElement */ .D)(id); + const group = svg.append("g"); + group.attr("transform", "translate(" + pieWidth / 2 + "," + height / 2 + ")"); + const { themeVariables } = globalConfig; + let [outerStrokeWidth] = (0,_chunk_VKXSJROQ_mjs__WEBPACK_IMPORTED_MODULE_1__/* .parseFontSize */ .I5)(themeVariables.pieOuterStrokeWidth); + outerStrokeWidth ??= 2; + const textPosition = pieConfig.textPosition; + const radius = Math.min(pieWidth, height) / 2 - MARGIN; + const arcGenerator = (0,d3__WEBPACK_IMPORTED_MODULE_5__/* .arc */ .JLW)().innerRadius(0).outerRadius(radius); + const labelArcGenerator = (0,d3__WEBPACK_IMPORTED_MODULE_5__/* .arc */ .JLW)().innerRadius(radius * textPosition).outerRadius(radius * textPosition); + group.append("circle").attr("cx", 0).attr("cy", 0).attr("r", radius + outerStrokeWidth / 2).attr("class", "pieOuterCircle"); + const sections2 = db2.getSections(); + const arcs = createPieArcs(sections2); + const myGeneratedColors = [ + themeVariables.pie1, + themeVariables.pie2, + themeVariables.pie3, + themeVariables.pie4, + themeVariables.pie5, + themeVariables.pie6, + themeVariables.pie7, + themeVariables.pie8, + themeVariables.pie9, + themeVariables.pie10, + themeVariables.pie11, + themeVariables.pie12 + ]; + const color = (0,d3__WEBPACK_IMPORTED_MODULE_5__/* .scaleOrdinal */ .UMr)(myGeneratedColors); + group.selectAll("mySlices").data(arcs).enter().append("path").attr("d", arcGenerator).attr("fill", (datum) => { + return color(datum.data.label); + }).attr("class", "pieCircle"); + let sum = 0; + sections2.forEach((section) => { + sum += section; + }); + group.selectAll("mySlices").data(arcs).enter().append("text").text((datum) => { + return (datum.data.value / sum * 100).toFixed(0) + "%"; + }).attr("transform", (datum) => { + return "translate(" + labelArcGenerator.centroid(datum) + ")"; + }).style("text-anchor", "middle").attr("class", "slice"); + group.append("text").text(db2.getDiagramTitle()).attr("x", 0).attr("y", -(height - 50) / 2).attr("class", "pieTitleText"); + const legend = group.selectAll(".legend").data(color.domain()).enter().append("g").attr("class", "legend").attr("transform", (_datum, index) => { + const height2 = LEGEND_RECT_SIZE + LEGEND_SPACING; + const offset = height2 * color.domain().length / 2; + const horizontal = 12 * LEGEND_RECT_SIZE; + const vertical = index * height2 - offset; + return "translate(" + horizontal + "," + vertical + ")"; + }); + legend.append("rect").attr("width", LEGEND_RECT_SIZE).attr("height", LEGEND_RECT_SIZE).style("fill", color).style("stroke", color); + legend.data(arcs).append("text").attr("x", LEGEND_RECT_SIZE + LEGEND_SPACING).attr("y", LEGEND_RECT_SIZE - LEGEND_SPACING).text((datum) => { + const { label, value } = datum.data; + if (db2.getShowData()) { + return `${label} [${value}]`; + } + return label; + }); + const longestTextWidth = Math.max( + ...legend.selectAll("text").nodes().map((node) => node?.getBoundingClientRect().width ?? 0) + ); + const totalWidth = pieWidth + MARGIN + LEGEND_RECT_SIZE + LEGEND_SPACING + longestTextWidth; + svg.attr("viewBox", `0 0 ${totalWidth} ${height}`); + (0,_chunk_O2AGWWWV_mjs__WEBPACK_IMPORTED_MODULE_3__/* .configureSvgSize */ .a$)(svg, height, totalWidth, pieConfig.useMaxWidth); +}, "draw"); +var renderer = { draw }; + +// src/diagrams/pie/pieDiagram.ts +var diagram = { + parser, + db, + renderer, + styles: pieStyles_default +}; + + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/456ed9d3.e2cbdef6.js b/assets/js/456ed9d3.e2cbdef6.js new file mode 100644 index 00000000..7a32540e --- /dev/null +++ b/assets/js/456ed9d3.e2cbdef6.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkbeacon_docs=self.webpackChunkbeacon_docs||[]).push([[4963],{1473:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>r,contentTitle:()=>s,default:()=>p,frontMatter:()=>i,metadata:()=>c,toc:()=>l});var a=t(74848),o=t(28453);const i={title:"Standalone Delegation"},s=void 0,c={id:"guides/standalone-delegation",title:"Standalone Delegation",description:"You can easily integrate beacon into your website, even if it's just a simple landing page or wordpress site.",source:"@site/docs/guides/standalone-delegation.mdx",sourceDirName:"guides",slug:"/guides/standalone-delegation",permalink:"/guides/standalone-delegation",draft:!1,unlisted:!1,editUrl:"https://github.com/airgap-it/beacon-docs/edit/main/src/docs/guides/standalone-delegation.mdx",tags:[],version:"current",frontMatter:{title:"Standalone Delegation"},sidebar:"docs",previous:{title:"WalletConnect events",permalink:"/guides/WC-events"},next:{title:"Performance Metrics",permalink:"/guides/metrics"}},r={},l=[];function d(e){const n={admonition:"admonition",code:"code",p:"p",pre:"pre",...(0,o.R)(),...e.components};return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(n.p,{children:"You can easily integrate beacon into your website, even if it's just a simple landing page or wordpress site."}),"\n",(0,a.jsx)(n.p,{children:'Below is an example of a very simple page that adds a "delegate" button that establishes a Beacon connection and then sends a delegation request to the wallet.'}),"\n",(0,a.jsxs)(n.p,{children:["To try this example, you can copy and paste the following snippet into a local file called ",(0,a.jsx)(n.code,{children:"index.html"})," and open it in the browser."]}),"\n",(0,a.jsx)(n.admonition,{title:"Browser Extensions",type:"tip",children:(0,a.jsxs)(n.p,{children:["Browser Extensions don't work if the ",(0,a.jsx)(n.code,{children:"index.html"})," file is opened directly. Instead, you have to start a small webserver.\nYou can do this with python: ",(0,a.jsx)(n.code,{children:"python -m SimpleHTTPServer 8080"})]})}),"\n",(0,a.jsx)(n.pre,{children:(0,a.jsx)(n.code,{className:"language-html",children:'<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">\n<html lang="en">\n <head>\n <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />\n <meta http-equiv="Content-Style-Type" content="text/css" />\n <title>Beacon Delegation Example\n \x3c!--\n Make sure you replace "2.3.13" with the latest version.\n https://www.srihash.org/\n --\x3e\n <\/script>\n \n \n Beacon Delegation Example\n \n\n + \ No newline at end of file diff --git a/blockchains/introduction/index.html b/blockchains/introduction/index.html new file mode 100644 index 00000000..a875322b --- /dev/null +++ b/blockchains/introduction/index.html @@ -0,0 +1,39 @@ + + + + + +Introduction | Beacon Docs + + + + +

    Introduction

    Since the release of beacon-sdk version 3.0, Beacon supports multiple blockchains.

    +

    Currently, 3 separate blockchain packages are available:

    +
      +
    • Substrate (@airgap/beacon-blockchain-substrate)
    • +
    • Tezos (@airgap/beacon-blockchain-tezos)
    • +
    • Tezos Sapling (@airgap/beacon-blockchain-tezos-sapling)
    • +
    +

    Structure

    +

    Every blockchain can define their own messages. Those messages are then wrapped in a message with additional metadata from the beacon protocol.

    +

    See the docs about the individual packages for more information about the messages specific to certain blockchains.

    +

    Wrapper

    +

    In the Beacon protocol, every message is wrapped in the following wrapper.

    +
    export interface BeaconMessageWrapper<T extends BeaconBaseMessage> {
    id: string; // ID of the message. The same ID is used in the request and response
    version: string;
    senderId: string; // ID of the sender. This is used to identify the
    message: T;
    }
    +

    Blockchain Message

    +

    The layout for the basic message is the same for all blockchains.

    +
    export interface BlockchainMessage<T extends string = string> {
    blockchainIdentifier: T;
    type: unknown;
    blockchainData: unknown;
    }
    +

    Permission Message

    +

    One core concept of Beacon is that as a first step (after establishing the connection), the dApp needs to request permissions to receive information about accounts and execute certain actions.

    +

    For this reason, there are two messages, PermissionRequest and PermissionResponse, that are used to do the permission management.

    +

    Those messages are handled differently from the generic BlockchainRequest and BlockchainResponse messages because they have to be completed first before any other action can take place.

    +
    export interface PermissionRequestV3<T extends string = string>
    extends BlockchainMessage<T> {
    blockchainIdentifier: T;
    type: BeaconMessageType.PermissionRequest;
    blockchainData: {
    appMetadata: AppMetadata; // Some additional information about the dApp
    scopes: string[];

    }
    +
    export interface PermissionResponseV3<T extends string = string>
    extends BlockchainMessage<T> {
    blockchainIdentifier: T;
    type: BeaconMessageType.PermissionResponse;
    blockchainData: {
    appMetadata: AppMetadata; // Some additional information about the Wallet
    scopes: string[]; // Permissions that have been granted for this specific address / account

    }
    +

    Request / Response

    +

    Following are the generic messages of the Beacon Protocol. They can be extended by every blockchain to add blockchain specific data and behaviour.

    +

    Please see the docs about the specific blockchain messages for examples.

    +
    export interface BlockchainRequestV3<T extends string = string>
    extends BlockchainMessage<T> {
    blockchainIdentifier: T;
    type: BeaconMessageType.BlockchainRequest;
    accountId: string;
    blockchainData: {
    type: string;
    scope: string;

    }
    +
    export interface BlockchainResponseV3<T extends string = string>
    extends BlockchainMessage<T> {
    blockchainIdentifier: T;
    type: BeaconMessageType.BlockchainResponse;
    // accountId is not present, because it can be fetched from the request
    blockchainData: unknown;
    }
    + + \ No newline at end of file diff --git a/blockchains/substrate/index.html b/blockchains/substrate/index.html new file mode 100644 index 00000000..981ad5d9 --- /dev/null +++ b/blockchains/substrate/index.html @@ -0,0 +1,37 @@ + + + + + +Substrate | Beacon Docs + + + + +

    Substrate

    Permission Scopes

    +

    The following permission scopes are available in the Substrate package.

    +
    export enum SubstratePermissionScope {
    "transfer" = "transfer",
    "sign_payload_json" = "sign_payload_json",
    "sign_payload_raw" = "sign_payload_raw",
    }
    +

    Message Types

    +

    The supported message types.

    +
    export enum SubstrateMessageType {
    "transfer_request" = "transfer_request",
    "sign_payload_request" = "sign_payload_request",
    }
    +

    Messages

    +

    Permission Request

    +

    This message is used to request permissions to use an account.

    +
    export interface SubstratePermissionRequest
    extends PermissionRequestV3<"substrate"> {
    blockchainData: {
    scopes: SubstratePermissionScope[]; // enum
    appMetadata: AppMetadata;
    network?: {
    genesisHash: string; // Wallet shows only those accounts
    rpc?: string; // For development nodes?
    }[]; // Array to "whitelist" certain networks? (optional)

    }
    +

    Permission Response

    +

    This message is used to share information about an account with a dApp.

    +
    export interface SubstratePermissionResponse
    extends PermissionResponseV3<"substrate"> {
    blockchainData: {
    appMetadata: AppMetadata;
    scopes: SubstratePermissionScope[]; // enum
    accounts: {
    accountId: string;
    network?: {
    genesisHash: string;
    rpc?: string;

    publicKey: string;
    address: string;
    }[];

    }
    +

    Transfer Request

    +

    This message is used to initiate a transfer between two accounts.

    +
    export interface SubstrateTransferRequest
    extends BlockchainMessage<"substrate"> {
    blockchainData: {
    type: SubstrateMessageType.transfer_request;
    scope: SubstratePermissionScope.transfer;
    sourceAddress: string;
    amount: string;
    recipient: string;
    network: {
    genesisHash: string;
    rpc?: string;

    mode: "submit" | "submit-and-return" | "return"; // TODO: Wording

    }
    +

    Transfer Response

    +

    This message is used to share information about a requested operation with the dApp.

    +
    export type SubstrateTransferResponse =
    | {
    transactionHash: string;
    }
    | {
    transactionHash: string;
    signature: string;
    payload?: string;
    }
    | {
    signature: string;
    payload?: string;

    +

    Sign Payload Request

    +

    This message is used to request the signature for a payload.

    +
    export interface SubstrateSignPayloadRequest
    extends BlockchainMessage<"substrate"> {
    blockchainData: {
    type: SubstrateMessageType.sign_payload_request;
    scope:
    | SubstratePermissionScope.sign_payload_json
    | SubstratePermissionScope.sign_payload_json;

    // This type is the same as the "SignerPayloadJSON" of polkadot.js https://github.com/polkadot-js/api/blob/f169ca08a80ea9c3865dc545e03e921c50f0d284/packages/types/src/types/extrinsic.ts#L32
    payload:
    | {
    type: "json";

    /**
    * @description The checkpoint hash of the block, in hex
    */
    blockHash: string;

    /**
    * @description The checkpoint block number, in hex
    */
    blockNumber: string;

    /**
    * @description The era for this transaction, in hex
    */
    era: string;

    /**
    * @description The genesis hash of the chain, in hex
    */
    genesisHash: string;

    /**
    * @description The encoded method (with arguments) in hex
    */
    method: string;

    /**
    * @description The nonce for this transaction, in hex
    */
    nonce: string;

    /**
    * @description The current spec version for the runtime
    */
    specVersion: string;

    /**
    * @description The tip for this transaction, in hex
    */
    tip: string;

    /**
    * @description The current transaction version for the runtime
    */
    transactionVersion: string;

    /**
    * @description The applicable signed extensions for this runtime
    */
    signedExtensions: string[];

    /**
    * @description The version of the extrinsic we are dealing with
    */
    version: number;
    }
    | {
    type: "raw";
    isMutable: boolean;
    dataType: "bytes" | "payload";
    data: string;
    mode: "submit" | "submit-and-return" | "return";
    }
    +

    Sign Payload Response

    +

    This message is used to share information about a requested signature with the dApp.

    +
    export type SubstrateSignPayloadResponse =
    | {
    transactionHash: string;
    }
    | {
    transactionHash: string;
    signature: string;
    payload?: string;
    }
    | {
    signature: string;
    payload?: string;

    + + \ No newline at end of file diff --git a/blockchains/tezos-sapling/index.html b/blockchains/tezos-sapling/index.html new file mode 100644 index 00000000..dcba6ed3 --- /dev/null +++ b/blockchains/tezos-sapling/index.html @@ -0,0 +1,32 @@ + + + + + +Tezos Sapling | Beacon Docs + + + + +

    Tezos Sapling

    The Tezos Sapling package enables messages related to the Sapling implementation on the Tezos blockchain. Sapling adds support for private transactions.

    +

    Permission Scopes

    +

    The following permission scopes are available in the Tezos Sapling package.

    +
    export enum TezosSaplingPermissionScope {
    /**
    * The "viewing_key" permission is used to signal to the wallet that a dApp requests access to the viewing key. Sharing the viewing key will give up ALL privacy advantages of sapling, so this permission should only be granted in very specific cases.
    */
    "viewing_key" = "viewing_key",
    /**
    * This permission allows wallets to do normal transfers from one sapling account to another.
    */
    "transfer" = "transfer",
    }
    +

    Message Types

    +

    At the moment, only simple transfers are supported. At a later stage, this package will be extended to include shield and unshield operations, as well as shielded contract calls.

    +
    export enum TezosSaplingMessageType {
    /**
    * This message type is used for transfers from one sapling address to another.
    */
    "transfer_request" = "transfer_request",
    // In a later version, support for shield and unshield operations will most likely be added.
    }
    +

    Messages

    +

    Permission Request

    +

    This message is used to request permissions to use an account.

    +
    export interface TezosSaplingPermissionRequest
    extends PermissionRequestV3<"tezos-sapling"> {
    blockchainData: {
    scopes: TezosSaplingPermissionScope[]; // enum
    appMetadata: AppMetadata;
    network: {
    contract: string; // sapling contract
    type: NetworkType;
    name?: string;
    rpcUrl?: string;
    }
    +

    Permission Response

    +

    This message is used to share information about an account with a dApp.

    +
    export interface TezosSaplingPermissionResponse
    extends PermissionResponseV3<"tezos-sapling"> {
    blockchainData: {
    appMetadata: AppMetadata;
    scopes: TezosSaplingPermissionScope[]; // enum
    accounts: {
    accountId: string;
    address: string;
    viewingKey?: string; // If the "viewing key" scope is not set, this value has to be removed by the SDK
    network: {
    contract: string; // sapling contract
    type: NetworkType;
    name?: string;
    rpcUrl?: string;

    }[];

    }
    +

    Transfer Request

    +

    This message is used to initiate a transfer between two accounts.

    +
    export interface TezosSaplingTransferRequest
    extends BlockchainMessage<"tezos-sapling"> {
    blockchainData: {
    type: TezosSaplingMessageType.transfer_request;
    scope: TezosSaplingPermissionScope.transfer;
    sourceAddress: string;
    amount: string;
    recipient: string;
    // No network required because we can get it from account id
    mode: "submit" | "submit-and-return" | "return"; // TODO: Wording

    }
    +

    Transfer Response

    +

    This message is used to share information about a requested operation with the dApp.

    +
    export type TezosSaplingTransferResponse =
    | {
    transactionHash: string;
    }
    | {
    transactionHash: string;
    signature: string;
    payload?: string;
    }
    | {
    signature: string;
    payload?: string;

    + + \ No newline at end of file diff --git a/blockchains/tezos/index.html b/blockchains/tezos/index.html new file mode 100644 index 00000000..5a131b31 --- /dev/null +++ b/blockchains/tezos/index.html @@ -0,0 +1,13 @@ + + + + + +Tezos | Beacon Docs + + + + + + + \ No newline at end of file diff --git a/blockchains/usage/index.html b/blockchains/usage/index.html new file mode 100644 index 00000000..2ad697de --- /dev/null +++ b/blockchains/usage/index.html @@ -0,0 +1,16 @@ + + + + + +Usage | Beacon Docs + + + + +

    Usage

    Let's look at an example how a dApp can be initialized with support for a substrate based blockchain.

    +
    import { DAppClient } from "@airgap/beacon-dapp";
    import { SubstrateBlockchain } from "@airgap/beacon-blockchain-substrate";

    const client = new DAppClient({
    name: "Example dApp",
    });

    const substrateBlockchain = new SubstrateBlockchain();
    client.addBlockchain(substrateBlockchain);

    client.getActiveAccount().then((activeAccount) => {
    client
    .request({
    blockchainIdentifier: "substrate",
    type: "blockchain_request",
    blockchainData: {
    type: "transfer_request",
    scope: "transfer",
    sourceAddress: activeAccount.address,
    amount: "1",
    recipient: activeAccount.address, // Send to self
    network: {
    genesisHash:
    "0xe3777fa922cafbff200cadeaea1a76bd7898ad5b89f7848999058b50e715f636",
    },
    mode: "return",
    },
    })
    .then((response) => {
    console.log("response", response);
    });
    });
    +

    On the wallet side, the blockchain doesn't explicitly have to be registered, it can be filtered by the blockchainIdentifier property.

    +
    import { WalletClient } from "@airgap/beacon-wallet";
    import { BeaconMessageType } from "@airgap/beacon-types";

    const client = new WalletClient({
    name: "Example Wallet", // Name of the Wallet
    });

    await client.init();

    client.connect(async (message) => {
    if (message.version === "3") {
    // Example: Handle PermissionRequest. A wallet should handle all request types
    if (message.message.type === beacon.BeaconMessageType.PermissionRequest) {
    if (message.message.blockchainIdentifier !== "substrate") {
    throw new Error("Only KSM supported");
    }
    console.log("SUBSTRATE MESSAGE");
    // Show a UI to the user where he can confirm sharing an account with the dApp

    const response = {
    id: message.id,
    type: BeaconMessageType.PermissionResponse,
    blockchainData: {
    appMetadata: { name: "Example Wallet" },
    scopes: [0],
    accounts: [
    {
    network: {
    genesisHash:
    "0xe3777fa922cafbff200cadeaea1a76bd7898ad5b89f7848999058b50e715f636",
    },
    addressPrefix: 0,
    publicKey:
    "3b92229274683b338cf8b040cf91ac0f8e19e410f06eda5537ef077e718e0024",
    },
    ],
    }, // Send response back to dApp
    client.respond(response);
    }
    }
    });
    + + \ No newline at end of file diff --git a/contributing/index.html b/contributing/index.html new file mode 100644 index 00000000..f397835e --- /dev/null +++ b/contributing/index.html @@ -0,0 +1,21 @@ + + + + + +Contributing | Beacon Docs + + + + +

    Contributing

    We welcome any kind of contribution to the beacon-sdk. If you find bugs or have feature requests, feel free to open an issue on github.

    +

    If you plan to add a new feature and create a Pull Request, please quickly reach out to us first so we can make sure the changes can be included.

    +

    To set up the project, run the following commands:

    +
    $ npm i
    $ npm run build
    $ npm run test
    +

    Once the SDK is built, you can open the example-dapp.html file in your browser and try out the basic functionality. +To support browser extensions as well, the file should be viewed over a webserver. +You can easily start one with python -m SimpleHTTPServer 8000 and then open the file with http://localhost:8000/example-dapp.html.

    +

    There is also a example-wallet.html file where a basic permission request can be tested.

    +
    info

    If you plan to use both the dapp and wallet examples, make sure you use different browsers, otherwise the shared local storage causes problems.

    + + \ No newline at end of file diff --git a/dapps/index.html b/dapps/index.html new file mode 100644 index 00000000..6e82c957 --- /dev/null +++ b/dapps/index.html @@ -0,0 +1,15 @@ + + + + + +dApps | Beacon Docs + + + + +

    dApps

    This is a list of all the dApps that are using beacon and their version. If a dApp is missing, please let us know.

    +

    dApps should always use the latest beacon-sdk version for the latest features and fixes.

    +

    Last check: 2023-10-05

    + + \ No newline at end of file diff --git a/getting-started/advanced-example/index.html b/getting-started/advanced-example/index.html new file mode 100644 index 00000000..c4ebfc19 --- /dev/null +++ b/getting-started/advanced-example/index.html @@ -0,0 +1,168 @@ + + + + + +Advanced Example | Beacon Docs + + + + +

    Advanced Example

    The following example will show:

    +
      +
    1. How to set the correct color mode
    2. +
    3. How to connect a dApp to a wallet
    4. +
    5. How to re-use an existing connection after a page refreshed
    6. +
    7. How to send an operation request
    8. +
    9. How to "disconnect" a wallet
    10. +
    +
    Example
    import {
    +  ColorMode,
    +  DAppClient,
    +  Network,
    +  NetworkType,
    +  TezosOperationType,
    +} from "@airgap/beacon-sdk";
    +
    +// Set the network (Mainnet is default)
    +const network: Network = { type: NetworkType.MAINNET };
    +
    +// Create a new DAppClient instance
    +const dAppClient = new DAppClient({
    +  name: "Beacon Docs",
    +  preferredNetwork: network.type,
    +});
    +
    +let myAddress: string | undefined;
    +
    +// OPTIONAL: Set the color mode
    +// Read the current theme of the docs page from local storage. This depends on your dApp state
    +const theme = localStorage.getItem("theme");
    +await dAppClient.setColorMode(
    +  theme === "dark" ? ColorMode.DARK : ColorMode.LIGHT,
    +);
    +
    +// This code should be called every time the page is loaded or refreshed to see if the user has already connected to a wallet.
    +const activeAccount = await dAppClient.getActiveAccount();
    +if (activeAccount) {
    +  // If defined, the user is connected to a wallet.
    +  // You can now do an operation request, sign request, or send another permission request to switch wallet
    +  console.log("Already connected:", activeAccount.address);
    +
    +  // You probably want to show the address in your UI somewhere.
    +  myAddress = activeAccount.address;
    +} else {
    +  // The user is NOT connected to a wallet.
    +
    +  // The following permission request should not be called on pageload,
    +  // it should be triggered when the user clicks on a "connect" button on your page.
    +  // This will trigger the pairing alert UI where the user can select which wallet to pair.
    +  const permissions = await dAppClient.requestPermissions({
    +    network: network,
    +  });
    +  console.log("New connection: ", permissions.address);
    +  myAddress = permissions.address;
    +}
    +
    +// At this point we are connected to an account.
    +// Let's send a simple transaction to the wallet that sends 1 mutez to ourselves.
    +const response = await dAppClient.requestOperation({
    +  operationDetails: [
    +    {
    +      kind: TezosOperationType.TRANSACTION,
    +      destination: myAddress, // Send to ourselves
    +      amount: "1", // Amount in mutez, the smallest unit in Tezos
    +    },
    +  ],
    +});
    +
    +console.log("Operation Hash:", response.transactionHash);
    +
    +// Let's generate a link to see the transaction on a block explorer
    +const explorerLink = await dAppClient.blockExplorer.getTransactionLink(
    +  response.transactionHash,
    +  network,
    +);
    +
    +console.log("Block Explorer:", explorerLink);
    +
    +// If you want to "disconnect" a wallet, clear the active account.
    +// This means the next time the active account is checked or a permission request is triggered, it will be like it's the users first interaction.
    +await dAppClient.clearActiveAccount();
    +
    Loading...
    + + \ No newline at end of file diff --git a/getting-started/best-practices/index.html b/getting-started/best-practices/index.html new file mode 100644 index 00000000..f982cce6 --- /dev/null +++ b/getting-started/best-practices/index.html @@ -0,0 +1,43 @@ + + + + + +Best Practices | Beacon Docs + + + + +

    Best Practices

    Connect Wallet

    +

    The following best practice outlines recommendations for the user interface to create a uniform user experience across dApps in the ecosystem.

    +

    Before being able to interact with a wallet through Beacon, the user first needs to perform an action to trigger the wallet connection.

    +

    Button Content

    +

    Within the default Beacon configuration where multiple wallets are supported, the connection button should be labeled "Connect Wallet".

    +

    In some communities the term "sync" has been established and can also be used, but "Connect Wallet" should be preferred.

    +
      +
    1. Button is clearly visible e.g. distinct border, background color or drop shadow
    2. +
    3. Button is labeled with "Connect Wallet"
    4. +
    +
    https://mydapp.com
    Beacon Pairing
    +

    Button States And Actions

    +

    The following two states should be supported: "unconnected" and "connected"

    +

    Unconnected

    +

    Button label has the wording "Connect Wallet" (or "sync").

    +

    Connected

    +
      +
    • The button has a connection indicator e.g. a green dot
    • +
    • The button label is the shortened Tezos address of the connected account e.g. tz1Mj...UAdtT
    • +
    • A click on the button prompts a dropdown: +
        +
      • Disconnect Wallet (or "unsync", if "sync" is used instead of "Connect Wallet") - Disconnects the wallet from the dApp, resetting the button state and prompting a new Beacon Connection request when the user clicks again
      • +
      • Open Blockexplorer - Opens a link to the address on a blockexplorer in a new tab
      • +
      +
    • +
    +
    https://mydapp.com
    Beacon Pairing
    +

    Button Placement

    +

    The button should be placed that the connection state and the connected address always remains visible.

    +

    A recommended position would be on the top right in the header of the application.

    +
    https://mydapp.com
    Beacon Pairing
    + + \ No newline at end of file diff --git a/getting-started/first-dapp/index.html b/getting-started/first-dapp/index.html new file mode 100644 index 00000000..be63d0fb --- /dev/null +++ b/getting-started/first-dapp/index.html @@ -0,0 +1,209 @@ + + + + + +First dApp | Beacon Docs + + + + +

    First dApp

    Installation

    +

    Let's get started with your first dApp. You have to install the necessary dependencies.

    +
    npm install --save @airgap/beacon-sdk
    +

    Setup

    +

    You can then import the beacon-sdk package and create a DAppClient instance. This instance will be used throughout your dApp to interact with the users wallet. +Once created, you can send a permission request to prompt the user to connect to his wallet.

    +
    Example
    import { DAppClient } from "@airgap/beacon-sdk";
    +
    +const dAppClient = new DAppClient({ name: "Beacon Docs" });
    +
    +// Listen for all the active account changes
    +dAppClient.subscribeToEvent(BeaconEvent.ACTIVE_ACCOUNT_SET, (account) => {
    +  // An active account has been set, update the dApp UI
    +  console.log(`${BeaconEvent.ACTIVE_ACCOUNT_SET} triggered: `, account);
    +});
    +
    +try {
    +  console.log("Requesting permissions...");
    +  const permissions = await dAppClient.requestPermissions();
    +  console.log("Got permissions:", permissions.address);
    +} catch (error) {
    +  console.error("Got error:", error);
    +}
    +
    Loading...
    +

    After the connection is successfully established and the user has shared his account, the result will be returned.

    +
    info

    The DAppClient instance should be a singleton. Avoid creating multiple copies of it, which could lead to unexpected behaviour.

    +

    Check

    +

    Now let's introduce a check to see if the SDK is already connected to the dApp. +This code should be run after the page is loaded to get the users address and show it in your UI. +If the following code returns an address, there is no need to send another permission request, unless you want to pair a different account.

    +
    Example
    import { DAppClient } from "@airgap/beacon-sdk";
    +
    +const dAppClient = new DAppClient({ name: "Beacon Docs" });
    +
    +// The following code should always be run during pageload if you want to show if the user is connected.
    +const activeAccount = await dAppClient.getActiveAccount();
    +if (activeAccount) {
    +  // User already has account connected, everything is ready
    +  // You can now do an operation request, sign request, or send another permission request to switch wallet
    +  console.log("Already connected:", activeAccount.address);
    +  return activeAccount;
    +} else {
    +  // The user is not connected. A button should be displayed where the user can connect to his wallet.
    +  console.error("Not connected!");
    +}
    +
    Loading...
    +

    The beacon-sdk is now fully set up and ready to receive operation requests.

    +

    Operation Request

    +

    This code snippet will construct an Operation request. +If the user has already granted permissions and is connected, you can directly send them operation requests for signing. +Remember, each operation request should be constructed carefully, considering the specific action you want the user to authorize, like transferring tokens or interacting with a smart contract.

    +
    Example
    import {
    +  BeaconEvent,
    +  DAppClient,
    +  TezosOperationType,
    +} from "@airgap/beacon-sdk";
    +
    +const dAppClient = new DAppClient({ name: "Beacon Docs" });
    +
    +// Listen for all the active account changes
    +dAppClient.subscribeToEvent(BeaconEvent.ACTIVE_ACCOUNT_SET, async (account) => {
    +  // An active account has been set, update the dApp UI
    +  console.log(`${BeaconEvent.ACTIVE_ACCOUNT_SET} triggered: `, account);
    +
    +  // At this point we are connected to an account.
    +  // Let's send a simple transaction to the wallet that sends 1 mutez to ourselves.
    +  const response = await dAppClient.requestOperation({
    +    operationDetails: [
    +      {
    +        kind: TezosOperationType.TRANSACTION,
    +        destination: account.address, // Send to ourselves
    +        amount: "1", // Amount in mutez, the smallest unit in Tezos
    +      },
    +    ],
    +  });
    +
    +  console.log(response);
    +});
    +
    +// Check if we are connected. If not, do a permission request first.
    +const activeAccount = await dAppClient.getActiveAccount();
    +if (!activeAccount) {
    +  await dAppClient.requestPermissions();
    +}
    +
    Loading...
    +

    Disconnect

    +

    Please refer to our dedicated page on how to disconnect your dApp based on your needs.

    +

    Destroy

    +

    destroy should be implemented to ensure proper lifecycle management of dAppClient.

    +

    This function is designed to be called as the final action of dAppClient when it is no longer needed.

    +

    The destroy function is used to clean up resources and remove all Beacon values from storage.

    +

    Once this function is executed, the current instance of dAppClient becomes unusable.

    +
    Example
    import { DAppClient } from "@airgap/beacon-sdk";
    +
    +const dAppClient = new DAppClient({ name: "Beacon Docs" });
    +
    +dAppClient
    +  .destroy()
    +  .then(() => {
    +    logger.log("Instance destroyed.");
    +  })
    +  .catch((err) => logger.log("Error: ", err.message));
    +
    Loading...
    +

    User Interaction Best Practice

    +

    Take a look a the best practice for recommendations on Beacon user interface components.

    + + \ No newline at end of file diff --git a/getting-started/high-performance/index.html b/getting-started/high-performance/index.html new file mode 100644 index 00000000..2bd19684 --- /dev/null +++ b/getting-started/high-performance/index.html @@ -0,0 +1,52 @@ + + + + + +High Performance | Beacon Docs + + + + +

    High Performance

    There are a few best practices dApp developers can follow to make their dApps more performant. We will go into a few of those here. Which ones are relevant to your dApp is always depending on the type of dApp. If you need help, feel free to reach out to us on Discord in the #beacon channel.

    +

    Make sure beacon-sdk is up to date

    +

    The beacon-sdk receives frequent updates with small bugfixes and performance improvements. We keep breaking changes to a minimum, so updating is usually as easy as increasing the version number.

    +

    Reusing connected accounts

    +

    This one is a basic concept of Beacon, but still very important.

    +

    Every time a user connects their wallet and shares permission to use an account, that account is persisted on the dApp side. At this point, the UI should reflect that the user is connected and display the address that was shared. The "Connect" or "Sync" button should be replaced by a "Disconnect" or "Unsync" button. Even when the user refreshes, the account is still present and can be retrieved by calling dAppClient.getActiveAccount().

    +
    import { DAppClient } from "@airgap/beacon-sdk";

    const dAppClient = new DAppClient({ name: "Beacon Docs" });

    // The following code should always be run during pageload if you want to show if the user is connected.
    const activeAccount = await dAppClient.getActiveAccount();
    if (activeAccount) {
    // User already has account connected, everything is ready
    // You can now do an operation request, sign request, or send another permission request to switch wallet
    console.log("Already connected:", activeAccount.address);
    return activeAccount;
    } else {
    // The user is not connected. A button should be displayed where the user can connect to his wallet.
    console.error("Not connected!");
    }
    +

    Connect to multiple RPCs

    +

    If a high number of users are using your dApp at the same time, the load on the RPC can spike. Ideally, the server infrastructure should be using a load balancer and caching to handle the load. If no such infrastructure is available, it is a good idea to provide an array of nodes and randomly select one on pageload. In case one of the nodes goes down, a user can connect to a different one by refreshing.

    +

    An even better approach is to add a node selection to your dApp, including a way for users to provide their own RPC.

    +
    import { TezosToolkit } from "@taquito/taquito";
    import { BeaconWallet } from "@taquito/beacon-wallet";

    // Define an array of nodes
    const RPCs = ["https://mainnet.api.tez.ie"];

    // Select random node from array
    const randomRpc = RPCs[Math.floor(RPCs.length * Math.random())];

    const Tezos = new TezosToolkit(randomRpc);
    const wallet = new BeaconWallet({ name: "Beacon Docs" }); // Takes the same arguments as the DAppClient constructor

    Tezos.setWalletProvider(wallet);
    +

    Allow users to connect their Wallet early on

    +

    In case your dApp is focussed around a specific time (eg. NFT drop or a countdown of some sorts), you should already provide a way for users to pair their wallet with the dApp. This will reduce the load on the Beacon Network once the countdown hits 0.

    +
    import { DAppClient } from "@airgap/beacon-sdk";

    const dAppClient = new DAppClient({ name: "Beacon Docs" });

    try {
    console.log("Requesting permissions...");
    const permissions = await dAppClient.requestPermissions();
    console.log("Got permissions:", permissions.address);
    } catch (error) {
    console.error("Got error:", error);
    }
    +

    Reduce number of requests made to RPCs

    +

    Whenever doing a call in taquito, it internally has to fetch data from the chain. Under normal circumstances, those requests are not a big deal. But if a high number of users are using your dApp at the same time, those requests can become a problem for the RPCs.

    +

    Use beacon without taquito

    +

    When the beacon-sdk is used without taquito, no connection to any RPC is required. So if your dApp offers only simple functionality (eg. only calling the mint entrypoint with one parameter), it is more performant to construct the contract call yourself and send it to the Beacon Network direcly, without going through taquito first.

    +
    const result = await dAppClient.requestOperation({
    operationDetails: [
    {
    kind: TezosOperationType.TRANSACTION,
    amount: "0",
    destination: NFT_CONTRACT,
    parameters: {
    entrypoint: "mint",
    value: {
    int: 3,
    },
    },
    },
    ],
    });
    +

    See a full example here

    +

    Use Caching with taquito

    +

    Taquito offers a couple of optional features to reduce the number of network requests.

    +

    Enable caching

    +
    import { TezosToolkit } from "@taquito/taquito";
    import { RpcClient, RpcClientCache } from "@taquito/rpc";

    const rpc = new RpcClientCache(new RpcClient(RPC_URL));
    this.tezos = new TezosToolkit(rpc);
    +

    More information in the official Taquito RPC Caching Docs

    +

    Provide contract data locally

    +
    import { TezosToolkit } from "@taquito/taquito";
    import { ContractsLibrary } from "@taquito/contracts-library";

    const contractsLibrary = new ContractsLibrary();

    const contractInfo = {}; // A JSON file of the contract data.
    contractsLibrary.addContract(contractInfo);

    const Tezos = new TezosToolkit(RPC_URL);
    Tezos.addExtension(contractsLibrary);
    +

    More information in the official Taquito Contracts Library Docs

    +

    Local Packing

    +
    import { TezosToolkit } from "@taquito/taquito";
    import { MichelCodecPacker } from "@taquito/taquito";

    const Tezos = new TezosToolkit(RPC_URL);
    Tezos.setPackerProvider(new MichelCodecPacker());
    +

    More information in the official Taquito Local Packing Docs

    +

    Provide fee and gas estimates

    +

    Depending on the contract that is used on your dApp, the storage_limit or gas_limit can change with each contract call. This means if multiple people are interacting with the contract in the same block, it is possible that operations will fail because the previously estimated values are no longer correct.

    +

    The contract developer should be able to give rough estimates of what the storage_limit and gas_limit should be. If they change frequently, the dApp should provide a preset for those parameters. Beacon will send those presets to the Wallet, which will take them into consideration when preparing the operation.

    +
    const result = await dAppClient.requestOperation({
    operationDetails: [
    {
    kind: TezosOperationType.TRANSACTION,
    amount: "1",
    destination: recipientAddress,
    fee: "10000", // Set this depending on your contract
    gas_limit: "10000", // Set this depending on your contract
    storage_limit: "1000", // Set this depending on your contract
    },
    ],
    });
    +

    Check Beacon Network Status

    +

    You can check the performance of the Beacon Network here in our Dashboard. If you see spikes, it is possible that performance is affected. Usually, the network recovers once the load reduces.

    +
    info

    When using Browser Extension wallets (eg. Temple or Spire), the status of the Beacon Network does NOT affect the connection to the wallet. If something doesn't work in conjunction with Temple or Spire, it is most likely the RPC of the dApp or Wallet.

    +

    Reach out to the Beacon Team

    +

    If you have any questions or doubts about the integration of Beacon on your dApp, feel free to reach out to us on Discord in the #beacon channel. If are developing a dApp with a scheduled event, please contact us in advance so we have enough time to help you prepare for the release.

    + + \ No newline at end of file diff --git a/getting-started/installation/index.html b/getting-started/installation/index.html new file mode 100644 index 00000000..8f8ea301 --- /dev/null +++ b/getting-started/installation/index.html @@ -0,0 +1,20 @@ + + + + + +Installation | Beacon Docs + + + + +

    Installation

    Simple dApp

    +

    First, you need to install the @airgap/beacon-sdk package.

    +
    npm install --save @airgap/beacon-sdk
    +

    dApp with Contract Interaction

    +

    If you plan to interact with contracts, you will most likely instead want to +install @taquito. Taquito installs the beacon-sdk as a dependency, so it +doesn't have to be installed manually.

    +
    npm install --save @taquito/taquito @taquito/beacon-wallet
    + + \ No newline at end of file diff --git a/getting-started/simple-example/index.html b/getting-started/simple-example/index.html new file mode 100644 index 00000000..6fe57930 --- /dev/null +++ b/getting-started/simple-example/index.html @@ -0,0 +1,86 @@ + + + + + +Simple Example | Beacon Docs + + + + +

    Simple Example

    The following example will show:

    +
      +
    1. How to connect a dApp to a wallet
    2. +
    3. How to re-use an existing connection after a page refreshed
    4. +
    5. How to send an operation request
    6. +
    +
    Example
    import { DAppClient, TezosOperationType } from "@airgap/beacon-sdk";
    +
    +const dAppClient = new DAppClient({ name: "Beacon Docs" });
    +
    +let myAddress: string | undefined;
    +
    +// This code should be called every time the page is loaded or refreshed to see if the user has already connected to a wallet.
    +const activeAccount = await dAppClient.getActiveAccount();
    +if (activeAccount) {
    +  // If defined, the user is connected to a wallet.
    +  // You can now do an operation request, sign request, or send another permission request to switch wallet
    +  console.log("Already connected:", activeAccount.address);
    +  myAddress = activeAccount.address;
    +} else {
    +  const permissions = await dAppClient.requestPermissions();
    +  console.log("New connection:", permissions.address);
    +  myAddress = permissions.address;
    +}
    +
    +// At this point we are connected to an account.
    +// Let's send a simple transaction to the wallet that sends 1 mutez to ourselves.
    +const response = await dAppClient.requestOperation({
    +  operationDetails: [
    +    {
    +      kind: TezosOperationType.TRANSACTION,
    +      destination: myAddress, // Send to ourselves
    +      amount: "1", // Amount in mutez, the smallest unit in Tezos
    +    },
    +  ],
    +});
    +
    +console.log("Operation Hash: ", response.transactionHash);
    +
    Loading...
    + + \ No newline at end of file diff --git a/getting-started/subscribe-to-active-account/index.html b/getting-started/subscribe-to-active-account/index.html new file mode 100644 index 00000000..a8a308f4 --- /dev/null +++ b/getting-started/subscribe-to-active-account/index.html @@ -0,0 +1,59 @@ + + + + + +Subscribe to ACTIVE_ACCOUNT_SET Advanced Example | Beacon Docs + + + + +

    Subscribe to ACTIVE_ACCOUNT_SET Advanced Example

    +

    Beacon provides developers the ability to subscribe to its internal state, as shown on the dedicated page. Since version 4.2.0, subscribing to ACTIVE_ACCOUNT_SET has become mandatory. This page provides a custom example with user validation by requesting the wallet to sign a payload.

    +

    Before Starting

    +

    Be aware that calling one of the functions listed below will also trigger ACTIVE_ACCOUNT_SET. Be careful when calling such functions inside the handler to avoid causing your dApp to enter an endless loop.

    +

    List of functions:

    +
      +
    • requestPermissions
    • +
    • setActiveAccount
    • +
    • clearActiveAccount
    • +
    • disconnect
    • +
    • removeAccount
    • +
    • removeAllAccounts
    • +
    • destroy
    • +
    +

    Example

    +

    After initializing your dAppClient instance, you need to subscribe to ACTIVE_ACCOUNT_SET as shown below:

    +
    const dAppClient = new DAppClient({
    name: "Beacon Docs",
    });

    dAppClient.subscribeToEvent(BeaconEvent.ACTIVE_ACCOUNT_SET, (account) => {
    console.log(`${BeaconEvent.ACTIVE_ACCOUNT_SET} triggered: `, account);
    });
    +

    The handler should be as concise as possible. Ideally, it should just globally update your active account on your dApp. However, in some cases, adding extra lines of code may be necessary.

    +

    Adding requestSignPayload

    +

    Sometimes requestPermissions may not be enough, and you want to ensure the user who has synced with the wallet is authorized. A common way to accomplish this is by sending a sign_payload request to the wallet.

    +
    dAppClient.subscribeToEvent(BeaconEvent.ACTIVE_ACCOUNT_SET, async (account) => {
    console.log(
    `${BeaconEvent.ACTIVE_ACCOUNT_SET} triggered: `,
    account?.address,
    );

    if (!account) {
    return;
    }

    try {
    await dAppClient.requestSignPayload({
    payload:
    "05010000004254657a6f73205369676e6564204d6573736167653a207465737455726c20323032332d30322d30385431303a33363a31382e3435345a2048656c6c6f20576f726c64",
    });
    } catch (err: any) {
    // The request was rejected
    // handle disconnection
    }
    });
    +
    +

    Note: ACTIVE_ACCOUNT_SET gets triggered both when setting a new account and resetting the current one. Make sure not to send a sign_payload request without an account.

    +
    +

    Multi-tab Synchronization

    +

    While the example above works for single-page dApps, it may become problematic in a multi-tab setup. Beacon emits an event to keep each tab synced with the internal state. Therefore, if your dApp needs multiple tabs support, the above approach may cause issues. Each tab will send a sign_payload request to the wallet, which is not intended and may lead to request rejection if a certain threshold is reached.

    +

    To address this, we need to implement multi-tab synchronization. There are multiple ways to achieve this; for simplicity, we use broadcast-channel.

    +
    note

    The following example is designed to be as simple as possible to help developers kickstart synchronization in their dApp. Please note that not all edge cases are covered.

    +

    Step 1: Install broadcast-channel

    +

    Run the following command:

    +
    npm install --save broadcast-channel
    +

    Step 2: Set Up the Channel

    +

    The main idea is to elect a tab as the Leader so that only this tab will send a request to the wallet. First, set up a channel.

    +
    const channel = new BroadcastChannel("beacon-channel"); // "beacon-channel" is an example, you can choose any name you want
    const elector = createLeaderElection(channel);
    // Auxiliary variable needed for handling beforeUnload.
    // Closing a tab causes the elector to be killed immediately
    let wasLeader: boolean = false;
    +

    Check if a leader already exists, otherwise request leadership. +We also need to handle the case in which the Leader tab gets closed and therefore we need to transfer the leadership to another tab.

    +
    elector.hasLeader().then(async (hasLeader) => {
    if (!hasLeader) {
    await elector.awaitLeadership();
    wasLeader = elector.isLeader;
    }
    });

    // NOTE: If you are using a JS framework, do not call window.onbeforeunload directly.
    // Refer to your framework's guidelines for handling this scenario.
    window.onbeforeunload = async () => {
    if (wasLeader) {
    await elector.die();
    channel.postMessage("LEADER_DEAD");
    }
    };

    channel.onmessage = async (message: any) => {
    if (message === "LEADER_DEAD") {
    await elector.awaitLeadership();
    }
    };
    +

    Step 3: Update the Handler

    +

    Now, inside the handler, check whether the current tab has the leadership. If not, do not send a sign_payload request.

    +
    dAppClient.subscribeToEvent(BeaconEvent.ACTIVE_ACCOUNT_SET, async (account) => {
    console.log(
    `${BeaconEvent.ACTIVE_ACCOUNT_SET} triggered: `,
    account?.address,
    );

    if (!account || !elector.isLeader) {
    return;
    }

    try {
    await dAppClient.requestSignPayload({
    payload:
    "05010000004254657a6f73205369676e6564204d6573736167653a207465737455726c20323032332d30322d30385431303a33363a31382e3435345a2048656c6c6f20576f726c64",
    });
    } catch (err: any) {
    // The request was rejected
    // handle disconnection
    }
    });
    +

    Conclusion

    +

    The end result should look like this:

    +
    import { DAppClient, BeaconEvent } from "@airgap/beacon-dapp";
    import { NetworkType } from "@airgap/beacon-types";
    import { BroadcastChannel, createLeaderElection } from "broadcast-channel";

    const channel = new BroadcastChannel("beacon-test");
    const elector = createLeaderElection(channel);
    let wasLeader: boolean = false;

    elector.hasLeader().then(async (hasLeader) => {
    if (!hasLeader) {
    await elector.awaitLeadership();
    wasLeader = elector.isLeader;
    }
    });

    window.onbeforeunload = async () => {
    if (wasLeader) {
    await elector.die();
    channel.postMessage("LEADER_DEAD");
    }
    };

    channel.onmessage = async (message: any) => {
    if (message === "LEADER_DEAD") {
    await elector.awaitLeadership();
    }
    };

    const dAppClient = new DAppClient({
    name: "Beacon Docs",
    network: {
    type: NetworkType.GHOSTNET,
    },
    });

    dAppClient.subscribeToEvent(BeaconEvent.ACTIVE_ACCOUNT_SET, async (account) => {
    console.log(
    `${BeaconEvent.ACTIVE_ACCOUNT_SET} triggered: `,
    account?.address,
    );

    if (!account || !elector.isLeader) {
    return;
    }

    try {
    await dAppClient.requestSignPayload({
    payload:
    "05010000004254657a6f73205369676e6564204d6573736167653a207465737455726c20323032332d30322d30385431303a33363a31382e3435345a2048656c6f20576f726c64",
    });
    } catch (err: any) {
    // The request was rejected
    // handle disconnection
    }
    });

    dAppClient.requestPermissions();
    +

    References

    +
      +
    1. BroadcastChannel: Documentation and usage examples for the broadcast-channel library.
    2. +
    + + \ No newline at end of file diff --git a/guides/WC-events/index.html b/guides/WC-events/index.html new file mode 100644 index 00000000..4155cff2 --- /dev/null +++ b/guides/WC-events/index.html @@ -0,0 +1,51 @@ + + + + + +WalletConnect events | Beacon Docs + + + + +

    WalletConnect events

    Overview

    +

    In Beacon we use signClient to manage all WalletConnect's connections.

    +

    signClient manages the lifecycle and communication of sessions between a dApp and +a wallet.

    +

    This page outlines the various events that Beacon handles through signClient.

    +

    Session Events

    +
      +
    1. +

      session_event: Triggered by any significant occurrence within a session not explicitly covered by more specific events. It can be used for logging, debugging, or extending functionality.

      +

      In Beacon we use this event to acknowledge requests sent to a wallet.

      +
    2. +
    3. +

      session_update: Occurs when a session's state changes, such as updating permissions, accounts, or chain information. This is crucial for dApps to adjust their state in response to changes in the session parameters.

      +
    4. +
    5. +

      session_expire: Fired when a session reaches its expiry time and is no longer valid. This event is critical for managing session lifecycle and ensuring that expired sessions are refreshed or terminated as needed.

      +
    6. +
    7. +

      session_delete: This event is fired when a session is terminated either by the user, the dApp, or due to external factors leading to a disconnection.

      +
    8. +
    +

    Pairing Events

    +
      +
    1. +

      pairing_delete: This event is triggered when a pairing is intentionally deleted, either by user action or programmatically by the dApp or wallet. This is used to manage the list of available pairings, ensuring that only valid or required pairings are maintained.

      +
    2. +
    3. +

      pairing_expire: Occurs when a pairing reaches its defined expiry time. Since pairings are typically temporary connections before establishing a full session, this event handles the automatic cleanup of these temporary states.

      +
    4. +
    +

    References

    +
      +
    1. +

      Session Events: This document outlines the various session events that can be handled by WalletConnect's signClient, providing details on each event's significance and usage.

      +
    2. +
    3. +

      Pairing API: A guide to understanding the pairing process within WalletConnect, explaining how dApps can establish preliminary connections with wallets before initiating a full session.

      +
    4. +
    + + \ No newline at end of file diff --git a/guides/active-account/index.html b/guides/active-account/index.html new file mode 100644 index 00000000..8b3d53a0 --- /dev/null +++ b/guides/active-account/index.html @@ -0,0 +1,60 @@ + + + + + +Active Account | Beacon Docs + + + + +

    Active Account

    The Active Account feature in the Beacon SDK is crucial for your dApp to interact effectively with the user's wallet. +Here's how it works:

    +
      +
    • getActiveAccount: This function returns the current active account. Use it to check the user's active account when they first start using your dApp.
    • +
    • Active Account Subscription: Beyond just checking the current account, Beacon SDK allows your dApp to subscribe to any changes in the active account (BeaconEvent.ACTIVE_ACCOUNT_SET): This includes when the user switches to a different account or disconnects an account from their wallet.
    • +
    +
    +

    It's important to implement this subscription so your dApp can react to account changes in real-time. This ensures your application always interacts with the correct account.

    +
    +
    Example
    import { BeaconEvent, DAppClient } from "@airgap/beacon-sdk";
    +
    +const dAppClient = new DAppClient({ name: "Beacon Docs" });
    +
    +// Listen for all the active account changes
    +dAppClient.subscribeToEvent(BeaconEvent.ACTIVE_ACCOUNT_SET, async (account) => {
    +  // An active account has been set, update the dApp UI
    +  console.log(`${BeaconEvent.ACTIVE_ACCOUNT_SET} triggered: `, account);
    +});
    +
    +try {
    +  console.log("Requesting permissions...");
    +  const permissions = await dAppClient.requestPermissions();
    +  console.log("Got permissions:", permissions.address);
    +} catch (error) {
    +  console.error("Got error:", error.message);
    +}
    +
    Loading...
    + + \ No newline at end of file diff --git a/guides/broadcast-request/index.html b/guides/broadcast-request/index.html new file mode 100644 index 00000000..c9c72bbe --- /dev/null +++ b/guides/broadcast-request/index.html @@ -0,0 +1,38 @@ + + + + + +Broadcast Request | Beacon Docs + + + + +

    Broadcast Request

    Broadcast Request is a feature in Beacon SDK that enables applications to send transaction requests. This is primarily used for broadcasting signed transactions to the network.

    +
    Example
    import { DAppClient } from "@airgap/beacon-sdk";
    +
    +const dAppClient = new DAppClient({ name: "Beacon Docs" });
    +
    +const response = await dAppClient.requestBroadcast({
    +  // a valid, forged and signed transaction
    +  signedTransaction: `1ef017b560494ae7b102be63f4d64e64d70114ff4652df23f34ae4460645b3266b00641b67c32672f0b11263b89b05b51e42faa64a3f940ad8d79101904e0000c64ac48e550c2c289af4c5ce5fe52ca7ba7a91d1a411745313e154eff8d118f16c00641b67c32672f0b11263b89b05b51e42faa64a3fdc0bd9d79101bc5000000000641b67c32672f0b11263b89b05b51e42faa64a3f0085dcfbba4a00c5b4f89914c1819ccd8466f6328b74073d50406394e59fe32d89e62112fec2d5a9bc1e6787206fe50e26f90999ae3061ca76247b57e08b6e490a`,
    +});
    +
    +console.log("transaction hash", response.transactionHash);
    +
    Loading...
    + + \ No newline at end of file diff --git a/guides/bug-report/index.html b/guides/bug-report/index.html new file mode 100644 index 00000000..5db7f5e3 --- /dev/null +++ b/guides/bug-report/index.html @@ -0,0 +1,26 @@ + + + + + +Bug Reporting | Beacon Docs + + + + +

    Bug Reporting

    +
    warning

    To enable this feature, please refer to the performance metrics page.

    +

    Overview

    +

    Beacon includes a bug reporting feature, designed to gather and transmit user generated issue. This document outlines the structure and usage of the bug reporting system.

    +
    Beacon Pairing
    +

    Bug Report Object

    +

    When a user encounters a bug, they can submit a report which is sent to our backend for analysis. +Here is an overview of each field in the bug report object sent:

    +
    {
    userId: string, // A unique identifier for the user submitting the report. This helps in tracking bugs specific to user accounts or in following up with the user if needed.
    sdkVersion: string, // The version of the SDK.
    title: string, // [User generated] A brief, descriptive title of the bug. This should be concise yet informative enough to give an overview of the issue.
    description: string, // [User generated] A detailed description of the bug. It should include what the user expected to happen and what actually happened. This field can contain error messages, observations, and any relevant details about the bug's behavior.
    steps: string, // [User generated] A step-by-step guide on how to reproduce the bug. This is crucial for developers to understand and fix the issue. Clear and precise steps can significantly speed up the debugging process.
    os: string, // The operating system of the user's device. This information is vital as some bugs are OS-specific.
    browser: string, // The browser on which the bug was encountered. Browser-specific bugs are common, and this information helps in pinpointing such issues.
    localStorage: string, // A stringified version of the user's Beacon local storage data. Beacon's local storage often contains user settings and other information that could be relevant in understanding the bug.
    wcStorage: string // A stringified version of the user's WalletConnect storage data.
    }
    +

    Snapshot of Broken State

    +

    Beacon creates a copy of the user's storage data at the moment of disconnection. This snapshot includes a copy of local and WalletConnect storage data at the time of disconnection. +These snapshots provide us with a clear picture of the application's state at the time of the bug, which is crucial for understanding and rectifying the issue.

    +

    Data Privacy

    +

    Sensitive information should not be included in bug reports unless it's crucial for the issue resolution. User-specific data is not transmitted.

    + + \ No newline at end of file diff --git a/guides/contract-error-handling/index.html b/guides/contract-error-handling/index.html new file mode 100644 index 00000000..aa4a8b2c --- /dev/null +++ b/guides/contract-error-handling/index.html @@ -0,0 +1,18 @@ + + + + + +Handling Contract Errors | Beacon Docs + + + + +

    Handling Contract Errors

    When calling contracts, a number of errors can occur.

    +

    Generally, it is the responsiblity of the wallet to handle all errors and display them to the user. +That way, certain errors (eg. counter too low) can be handled directly and as an example, give the user the option to retry.

    +

    Wallets can optionally choose to relay the error messages back to the dApp. +This is especially helpful if the contract call failed with an error specific to a certain contract. +The simple contract page contains an example of how those error messages can be handled.

    + + \ No newline at end of file diff --git a/guides/disconnecting-a-wallet/index.html b/guides/disconnecting-a-wallet/index.html new file mode 100644 index 00000000..e1cf8ab1 --- /dev/null +++ b/guides/disconnecting-a-wallet/index.html @@ -0,0 +1,85 @@ + + + + + +Disconnecting from a Wallet | Beacon Docs + + + + +

    Disconnecting from a Wallet

    This section explains all the available ways to disconnect a dApp in Beacon.

    +

    Disconnect

    +

    disconnect will only work while connected to a wallet, otherwise appropriate errors are thrown. +It clears all transport references ensuring a clean and complete disconnection from the wallet.

    +

    Errors

    +

    Namely there are 3 errors that disconnect can throw which are:

    +
      +
    • "Syncing stopped manually.": This happens while disconnecting a P2P connection
    • +
    • "No transport available.": This happens when the transport hasn't resolved yet (likely because your dApp is not connected yet to a wallet)
    • +
    • "Not connected.": This error is thrown to prevent dApps from disconnecting multiple times.
    • +
    + +
    Example
    import { DAppClient } from "@airgap/beacon-sdk";
    +const dAppClient = new DAppClient({ name: "Beacon Docs" });
    +
    +dAppClient
    +  .disconnect()
    +  .then(() => {
    +    console.log("Disconnected.");
    +  })
    +  .catch((err) => console.error(err.message));
    +
    Loading...
    +

    ClearActiveAccount

    +

    clearActiveAccount manages the process of clearing the currently active account and only its associated active transport. +This method ensures that all data linked to the active account is removed, and the active transport connection is terminated.

    +

    clearActiveAccount gets also invoked when calling:

    +
      +
    1. removeAccount: if the argument accountIdentifier matches the active account
    2. +
    3. removeAllAccounts: always
    4. +
    +
    +

    Note: Only for WalletConnect, clearActiveAccount will also resets all transport references behaving similarly to disconnect

    +
    +
    Example
    import { DAppClient } from "@airgap/beacon-sdk";
    +const dAppClient = new DAppClient({ name: "Beacon Docs" });
    +
    +dAppClient
    +  .clearActiveAccount()
    +  .then(() => {
    +    const account = await dAppClient.getActiveAccount();
    +    console.log("Active Account", account);
    +  })
    +  .catch((err) => console.error(err.message));
    +
    Loading...
    + + \ No newline at end of file diff --git a/guides/fa1.2-transfer/index.html b/guides/fa1.2-transfer/index.html new file mode 100644 index 00000000..fbe1164a --- /dev/null +++ b/guides/fa1.2-transfer/index.html @@ -0,0 +1,47 @@ + + + + + +FA1.2 Transfer | Beacon Docs + + + + +

    FA1.2 Transfer

    The FA1.2 Transfer feature in Beacon SDK allows token transfers following the FA1.2 standard.

    +
    Example
    import { TezosToolkit } from "@taquito/taquito";
    +import { BeaconWallet } from "@taquito/beacon-wallet";
    +
    +const Tezos = new TezosToolkit("https://mainnet.api.tez.ie");
    +const wallet = new BeaconWallet({ name: "Beacon Docs" });
    +
    +Tezos.setWalletProvider(wallet);
    +
    +const address = await wallet.getPKH();
    +if (!address) {
    +  await wallet.requestPermissions();
    +}
    +
    +// Connect to a specific contract on the tezos blockchain.
    +// Make sure the contract is deployed on the network you requested permissions for.
    +const contract = await Tezos.wallet.at(
    +  "KT1PWx2mnDueood7fEmfbBDKx1D9BAnnXitn", // For this example, we use the TZBTC contract on mainnet.
    +);
    +
    +// Call a method on the contract. In this case, we use the transfer entrypoint.
    +// Taquito will automatically check if the entrypoint exists and if we call it with the right parameters.
    +// In this case the parameters are [from, to, amount].
    +// This will prepare the contract call and send the request to the connected wallet.
    +const result = await contract.methods
    +  .transfer(
    +    "tz1d75oB6T4zUMexzkr5WscGktZ1Nss1JrT7",
    +    "tz1Mj7RzPmMAqDUNFBn5t5VbXmWW4cSUAdtT",
    +    1,
    +  )
    +  .send();
    +
    +// As soon as the operation is broadcasted, you will receive the operation hash
    +return result.opHash;
    +
    Loading...
    + + \ No newline at end of file diff --git a/guides/fa2-transfer/index.html b/guides/fa2-transfer/index.html new file mode 100644 index 00000000..46117eac --- /dev/null +++ b/guides/fa2-transfer/index.html @@ -0,0 +1,57 @@ + + + + + +FA2 Transfer | Beacon Docs + + + + +

    FA2 Transfer

    The FA2 Transfer feature in the Beacon SDK is designed for handling token transfers using the FA2 standard. FA2 is a multi-asset interface, enabling a wide range of token types and configurations, including fungible, non-fungible, and multi-asset tokens.

    +
    Example
    import { TezosToolkit } from "@taquito/taquito";
    +import { BeaconWallet } from "@taquito/beacon-wallet";
    +
    +const Tezos = new TezosToolkit("https://mainnet.api.tez.ie");
    +const wallet = new BeaconWallet({ name: "Beacon Docs" });
    +
    +Tezos.setWalletProvider(wallet);
    +
    +const address = await wallet.getPKH();
    +if (!address) {
    +  await wallet.requestPermissions();
    +}
    +
    +// Connect to a specific contract on the tezos blockchain.
    +// Make sure the contract is deployed on the network you requested permissions for.
    +const contract = await Tezos.wallet.at(
    +  "KT1CpeSQKdkhWi4pinYcseCFKmDhs5M74BkU", // For this example, we use the tzcolors contract on mainnet.
    +);
    +
    +const TOKEN_ID = 0; // FA2 token id
    +const recipient = address; // Send to ourself
    +
    +// Call a method on the contract. In this case, we use the transfer entrypoint.
    +// Taquito will automatically check if the entrypoint exists and if we call it with the right parameters.
    +// In this case the parameters are [from, to, amount].
    +// This will prepare the contract call and send the request to the connected wallet.
    +const result = await contract.methods
    +  .transfer([
    +    {
    +      from_: address,
    +      txs: [
    +        {
    +          to_: recipient,
    +          token_id: TOKEN_ID,
    +          amount: 1,
    +        },
    +      ],
    +    },
    +  ])
    +  .send();
    +
    +// As soon as the operation is broadcasted, you will receive the operation hash
    +return result.opHash;
    +
    Loading...
    + + \ No newline at end of file diff --git a/guides/metrics/index.html b/guides/metrics/index.html new file mode 100644 index 00000000..541cb742 --- /dev/null +++ b/guides/metrics/index.html @@ -0,0 +1,38 @@ + + + + + +Performance Metrics | Beacon Docs + + + + +

    Performance Metrics

    +

    Overview

    +

    In Beacon, we have implemented a system to monitor the performance of requests made to the wallet. This system helps identifying issues related to wallet interactions. This document details the structure and purpose of the performance metrics feature.

    +

    Enabling Performance Metrics

    +

    To activate performance metrics in your DApp, you need to set the enableMetrics parameter to true in the DAppClientOptions. Here's an example of how to enable it:

    +
    const client = new DAppClient({
    name: "Beacon Docs", // Name of the DApp
    // ...
    enableMetrics: true, // Activating performance metrics
    });
    +

    Your dApp will now start collecting and transmitting data on every wallet requests

    +
    important

    When enableMetrics is set to true, an initial request is sent to our backend. +This serves two key purposes: verifying if the dApp is authorized to send metrics to our system and preemptively checking for any potential network issues. +It's crucial to note that if this initial request fails because of a Netwrok error, Beacon will automatically disable all metrics collection to prevent any operational disruptions and reliability of the metrics collection process.

    +

    Performance Metrics Object

    +

    For each request sent to the wallet, we record and send two key pieces of data to our backend: the initial request and the outcome of the request (successful, error, or aborted). The object transmitted contains the following fields:

    +
    {
    userId: string, // The unique identifier of the user making the request
    os: string, // The operating system of the user's device.
    walletName: string, // The name of the wallet being used.
    walletType: string, // The type of wallet being interacted with, categorized as "extension", "mobile", "web", or "desktop".
    sdkVersion: string, // The version of the SDK.
    transport: string, // The method used for connecting to the wallet. Options include "extension", "p2p" (peer-to-peer), "walletconnect", or "website".
    time: Date, // The timestamp when the request was made.
    action: string, // The type of action being performed, such as "connect", "message", or "disconnect".
    status: string // The status of the request, which can be "start", "abort", "success", or "error".
    }
    +
    note

    userId is a UUID generated when instantiating DAppClient, not on page refresh.

    +

    Use of Performance Metrics

    +

    These performance metrics are critical for several reasons:

    +
      +
    • They enable real-time monitoring of wallet interactions, helping identify patterns or issues in user experience.
    • +
    • Understanding how different wallet types and transports behave under various conditions helps in optimizing the application for better user experience.
    • +
    +

    Data Collection Process

    +

    To collect these metrics, the application automatically wraps every wallet request with the necessary data logging. This process is run:

    +
      +
    1. When a user initiates an action with the wallet, the application logs the start of the request with the user's details and action information.
    2. +
    3. When an outcome is received (success, error, or aborted).
    4. +
    + + \ No newline at end of file diff --git a/guides/migration-guide/index.html b/guides/migration-guide/index.html new file mode 100644 index 00000000..64d7c51d --- /dev/null +++ b/guides/migration-guide/index.html @@ -0,0 +1,64 @@ + + + + + +Migration Guide: Updating to Event Subscription | Beacon Docs + + + + +

    Migration Guide: Updating to Event Subscription

    +
    Mandatory Subscription

    Since version 4.2.0, it is mandatory to subscribe to ACTIVE_ACCOUNT_SET.

    +

    This guide outlines the steps to migrate from using dAppClient.getActiveAccount() to the new event subscription method with BeaconEvent.ACTIVE_ACCOUNT_SET for handling active account changes.

    +

    Why Migrate?

    +

    The shift to using the event subscription method is crucial for several reasons:

    +
      +
    • +

      Real-Time Update: Subscribing to BeaconEvent.ACTIVE_ACCOUNT_SET enables your dApp to detect and respond to account changes in real-time, ensuring the application always reflects the current active account.

      +
    • +
    • +

      Improved Reliability: This method prevents scenarios where your dApp might operate with outdated account information, enhancing the overall reliability and user experience.

      +
    • +
    +

    Step-by-Step Migration

    +

    1. Update requestPermissions Usage

    +

    requestPermissions() still returns an active account. However, be aware that it might not capture subsequent account changes made in the wallet.

    +
    // Old usage
    const permissions = await dAppClient.requestPermissions();
    +

    2. Set Up the Event Subscription

    +

    Next, implement an event listener for BeaconEvent.ACTIVE_ACCOUNT_SET. This event is triggered whenever there is a change in the active account, allowing your dApp to stay updated.

    +
    // New method
    dAppClient.subscribeToEvent(BeaconEvent.ACTIVE_ACCOUNT_SET, (account) => {
    // An active account has been set, update the dApp UI
    console.log(`${BeaconEvent.ACTIVE_ACCOUNT_SET} triggered: `, account);
    });
    +

    3. Handle the Active Account

    +

    Adapt your dApp's logic to handle updates from both requestPermissions and the event subscription. This ensures your dApp remains synchronized with the current active account.

    +

    The end result should look something like this:

    +
    Example
    import { BeaconEvent, DAppClient } from "@airgap/beacon-sdk";
    +
    +const dAppClient = new DAppClient({ name: "Beacon Docs" });
    +
    +// Listen for all the active account changes
    +dAppClient.subscribeToEvent(BeaconEvent.ACTIVE_ACCOUNT_SET, (account) => {
    +  // An active account has been set, update the dApp UI
    +  console.log(`${BeaconEvent.ACTIVE_ACCOUNT_SET} triggered: `, account);
    +});
    +
    +const permissions = await dAppClient.requestPermissions();
    +
    Loading...
    +

    Advanced Example

    +

    If you need to add some custom logic inside the handler, check out our dedicated advanced example.

    + + \ No newline at end of file diff --git a/guides/network/index.html b/guides/network/index.html new file mode 100644 index 00000000..1259c9dd --- /dev/null +++ b/guides/network/index.html @@ -0,0 +1,149 @@ + + + + + +Network | Beacon Docs + + + + +

    Network

    The Network configuration in Beacon SDK allows developers to specify the blockchain network their application will interact with. +This includes using predefined networks like Mainnet or Testnet, as well as defining custom networks and RPC endpoints.

    + +

    Mainnet With Custom RPC

    +
    Example
    import { DAppClient, NetworkType } from "@airgap/beacon-sdk";
    +
    +const dAppClient = new DAppClient({ name: "Beacon Docs" });
    +
    +// Mainnet with different rpcUrl
    +const result = await dAppClient.requestPermissions({
    +  network: {
    +    type: NetworkType.MAINNET,
    +    rpcUrl: "https://mainnet.api.tez.ie",
    +  },
    +});
    +
    Loading...
    +

    Testnet

    +
    Example
    import { DAppClient, NetworkType } from "@airgap/beacon-sdk";
    +
    +const dAppClient = new DAppClient({
    +  name: "Beacon Docs",
    +  preferredNetwork: NetworkType.EDONET,
    +});
    +
    +// Edonet with default rpcUrl
    +const result = await dAppClient.requestPermissions({
    +  network: {
    +    type: NetworkType.EDONET,
    +  },
    +});
    +
    Loading...
    +

    Testnet With Custom RPC

    +
    Example
    import { DAppClient, NetworkType } from "@airgap/beacon-sdk";
    +
    +const dAppClient = new DAppClient({
    +  name: "Beacon Docs",
    +  preferredNetwork: NetworkType.EDONET,
    +});
    +
    +// Edonet with different rpcUrl
    +const result = await dAppClient.requestPermissions({
    +  network: {
    +    type: NetworkType.EDONET,
    +    rpcUrl: "https://testnet-tezos.giganode.io/",
    +  },
    +});
    +
    Loading...
    +

    Custom Network

    +
    Example
    import { DAppClient, NetworkType } from "@airgap/beacon-sdk";
    +
    +const dAppClient = new DAppClient({
    +  name: "Beacon Docs",
    +  preferredNetwork: NetworkType.CUSTOM,
    +});
    +
    +// Custom network (eg. local development or latest testnet)
    +const result = await dAppClient.requestPermissions({
    +  network: {
    +    type: NetworkType.CUSTOM,
    +    name: "Local Node",
    +    rpcUrl: "http://localhost:8732/",
    +  },
    +});
    +
    Loading...
    + + \ No newline at end of file diff --git a/guides/request-permissions/index.html b/guides/request-permissions/index.html new file mode 100644 index 00000000..c9420395 --- /dev/null +++ b/guides/request-permissions/index.html @@ -0,0 +1,52 @@ + + + + + +Request Permissions | Beacon Docs + + + + +

    Request Permissions

    RequestPermissions helps dApps connect with users' wallets. This involves asking for and getting the user's permission to access certain wallet features, which is needed for any actions the dApp wants to perform with the user's account.

    +
    Example
    import { DAppClient, PermissionScope } from "@airgap/beacon-sdk";
    +
    +const dAppClient = new DAppClient({ name: "Beacon Docs" });
    +
    +// You can request specific permissions if you want
    +const scopes: PermissionScope[] = [
    +  PermissionScope.OPERATION_REQUEST,
    +  PermissionScope.SIGN,
    +];
    +
    +try {
    +  console.log("Requesting permissions...");
    +  const permissions = await dAppClient.requestPermissions({ scopes });
    +  console.log("Got permissions:", permissions.address);
    +} catch (error) {
    +  console.error("Got error:", error);
    +}
    +
    Loading...
    + + \ No newline at end of file diff --git a/guides/sign-payload/index.html b/guides/sign-payload/index.html new file mode 100644 index 00000000..909ed399 --- /dev/null +++ b/guides/sign-payload/index.html @@ -0,0 +1,100 @@ + + + + + +Sign Payload | Beacon Docs + + + + +

    Sign Payload

    The SignPayload functionality in Beacon allows developers to sign various types of payloads. +This page provides some examples for signing payloads in different formats: HEX Prefixed with 05, HEX Prefixed with 03, and RAW.

    +

    HEX Prefixed With 05

    +
    Example
    import { DAppClient, SigningType } from "@airgap/beacon-sdk";
    +
    +const dAppClient = new DAppClient({ name: "Beacon Docs" });
    +
    +const response = await dAppClient.requestSignPayload({
    +  signingType: SigningType.MICHELINE,
    +  // This hex string needs to be prefixed with 05
    +  // The following is packed data, it can also be signed by Kukai
    +  payload: `05010000004254657a6f73205369676e6564204d6573736167653a206d79646170702e636f6d20323032312d30312d31345431353a31363a30345a2048656c6c6f20776f726c6421`,
    +});
    +
    +console.log(`Signature: ${response.signature}`);
    +
    Loading...
    +

    HEX Prefixed With 03

    +
    Example
    import { DAppClient, SigningType } from "@airgap/beacon-sdk";
    +
    +const dAppClient = new DAppClient({ name: "Beacon Docs" });
    +
    +const response = await dAppClient.requestSignPayload({
    +  signingType: SigningType.OPERATION,
    +  payload: "0300", // This hex string needs to be prefixed with 03
    +});
    +
    +console.log(`Signature: ${response.signature}`);
    +
    Loading...
    +

    RAW

    +
    warning

    Not all wallets support the RAW signing type. Additionally, the signatures can be different depending on the wallet that was used. For the preferred way of signing arbitrary data, please check the docs here: https://tezostaquito.io/docs/signing/#generating-a-signature-with-beacon-sdk

    +
    Example
    import { DAppClient, SigningType } from "@airgap/beacon-sdk";
    +
    +const dAppClient = new DAppClient({ name: "Beacon Docs" });
    +
    +const response = await dAppClient.requestSignPayload({
    +  signingType: SigningType.RAW,
    +  payload: "any string that will be signed",
    +});
    +
    +console.log(`Signature: ${response.signature}`);
    +
    Loading...
    + + \ No newline at end of file diff --git a/guides/simple-contract-call/index.html b/guides/simple-contract-call/index.html new file mode 100644 index 00000000..f6bc6675 --- /dev/null +++ b/guides/simple-contract-call/index.html @@ -0,0 +1,87 @@ + + + + + +Simple Contract Call | Beacon Docs + + + + +

    Simple Contract Call

    The following example shows how to do a simple contract call with Beacon.

    +
    tip

    The beacon-sdk itself does not do any type checking on the parameters you pass. Use taquito if you don't want to construct the parameters yourself.

    +

    The wallet will process and validate the operation. If there are any errors, they have to be displayed in the wallet. run_operation errors can optionally be sent back to the dApp as well.

    +
    Example
    import { DAppClient, TezosOperationType } from "@airgap/beacon-sdk";
    +
    +// Create a new DAppClient instance
    +const dAppClient = new DAppClient({ name: "Beacon Docs" });
    +
    +const activeAccount = await dAppClient.getActiveAccount();
    +if (activeAccount) {
    +  // User already has account connected, everything is ready
    +  // You can now do an operation request, sign request, or send another permission request to switch wallet
    +  console.log("Already connected:", activeAccount.address);
    +} else {
    +  const permissions = await dAppClient.requestPermissions();
    +  console.log("New connection:", permissions.address);
    +}
    +
    +const TZ_BUTTON_COLORS_CONTRACT = "KT1RPW5kTX6WFxg8JK34rGEU24gqEEudyfvz";
    +const tokenId = "925";
    +
    +// Setting the color of TzButton is only possible if you are currently the leader and own a color
    +// So this call will likely fail
    +try {
    +  const result = await dAppClient.requestOperation({
    +    operationDetails: [
    +      {
    +        kind: TezosOperationType.TRANSACTION,
    +        amount: "0",
    +        destination: TZ_BUTTON_COLORS_CONTRACT,
    +        parameters: {
    +          entrypoint: "set_color",
    +          value: {
    +            int: tokenId,
    +          },
    +        },
    +      },
    +    ],
    +  });
    +
    +  console.log(result);
    +} catch (error) {
    +  console.error(
    +    `The contract call failed and the following error was returned:`,
    +    error?.data[1]?.with?.string,
    +  );
    +}
    +
    Loading...
    + + \ No newline at end of file diff --git a/guides/standalone-delegation/index.html b/guides/standalone-delegation/index.html new file mode 100644 index 00000000..406dc74a --- /dev/null +++ b/guides/standalone-delegation/index.html @@ -0,0 +1,18 @@ + + + + + +Standalone Delegation | Beacon Docs + + + + +

    Standalone Delegation

    You can easily integrate beacon into your website, even if it's just a simple landing page or wordpress site.

    +

    Below is an example of a very simple page that adds a "delegate" button that establishes a Beacon connection and then sends a delegation request to the wallet.

    +

    To try this example, you can copy and paste the following snippet into a local file called index.html and open it in the browser.

    +
    Browser Extensions

    Browser Extensions don't work if the index.html file is opened directly. Instead, you have to start a small webserver. +You can do this with python: python -m SimpleHTTPServer 8080

    +
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
    <html lang="en">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <meta http-equiv="Content-Style-Type" content="text/css" />
    <title>Beacon Delegation Example</title>
    <!--
    Make sure you replace "2.3.13" with the latest version.
    https://www.srihash.org/
    -->
    <script
    src="https://unpkg.com/@airgap/beacon-sdk@2.3.13/dist/walletbeacon.min.js"
    integrity="sha384-oblhhE/eZ3yddPJZ4uyZeMBlMF25tKNIG5M1x7tExGI3mPk/aF0QusFnC3PzFSwI"
    crossorigin="anonymous"
    ></script>
    </head>
    <body>
    Beacon Delegation Example
    <button id="connect">Connect and Delegate</button>

    <script>
    const bakerAddress = "tz1MJx9vhaNRSimcuXPK2rW4fLccQnDAnVKJ"; // Replace with baker address
    const bakerName = "Delegation Example dApp"; // Replace with baker name / website

    // Initiate DAppClient
    const client = new beacon.DAppClient({
    name: bakerName,
    });

    const delegate = () => {
    client.requestOperation({
    operationDetails: [
    {
    kind: beacon.TezosOperationType.DELEGATION,
    delegate: bakerAddress,
    },
    ],
    });

    // Add event listener to the button
    document.getElementById("connect").addEventListener("click", () => {
    // Check if we have an active account
    client.getActiveAccount().then((activeAccount) => {
    if (activeAccount) {
    // If we have an active account, send the delegate operation directly
    delegate();
    } else {
    // If we don't have an active account, we need to request permissions first and then send the delegate operation
    client.requestPermissions().then((permissions) => {
    delegate();
    });
    }
    });
    });
    </script>
    </body>
    </html>
    + + \ No newline at end of file diff --git a/guides/subscribe-to-event/index.html b/guides/subscribe-to-event/index.html new file mode 100644 index 00000000..6b53ab3f --- /dev/null +++ b/guides/subscribe-to-event/index.html @@ -0,0 +1,81 @@ + + + + + +Subscribe To Event | Beacon Docs + + + + +

    Subscribe To Event

    In Beacon SDK, various events are emitted to signal different states and actions in the application's lifecycle.
    +These events provide developers with hooks to respond to changes, errors, user interactions, and other significant occurrences in the application flow.

    +

    Events

    +

    The list below showcases all the events that are currently available for subscription.

    +
      +
    1. PERMISSION_REQUEST_SENT: Fired when a permission request is sent to the user.
    2. +
    3. PERMISSION_REQUEST_SUCCESS: Triggered when a permission request is successfully granted by the user.
    4. +
    5. PERMISSION_REQUEST_ERROR: Occurs when there is an error in the permission request process.
    6. +
    7. PROOF_OF_EVENT_CHALLENGE_REQUEST_SENT: Emitted when a request for a proof of event challenge is sent.
    8. +
    9. PROOF_OF_EVENT_CHALLENGE_REQUEST_SUCCESS: Triggered when a proof of event challenge request is successfully completed.
    10. +
    11. PROOF_OF_EVENT_CHALLENGE_REQUEST_ERROR: Occurs when there is an error in the proof of event challenge request process.
    12. +
    13. OPERATION_REQUEST_SENT: Fired when an operation request (like a transaction) is sent.
    14. +
    15. OPERATION_REQUEST_SUCCESS: Triggered when an operation request is successfully processed.
    16. +
    17. OPERATION_REQUEST_ERROR: Occurs when there is an error in processing an operation request.
    18. +
    19. SIGN_REQUEST_SENT: Emitted when a request to sign a payload is sent.
    20. +
    21. SIGN_REQUEST_SUCCESS: Triggered when a sign request is successfully completed.
    22. +
    23. SIGN_REQUEST_ERROR: Occurs when there is an error in the sign request process.
    24. +
    25. BROADCAST_REQUEST_SENT: Fired when a request to broadcast a transaction to the network is sent.
    26. +
    27. BROADCAST_REQUEST_SUCCESS: Triggered when a broadcast request is successfully completed.
    28. +
    29. BROADCAST_REQUEST_ERROR: Occurs when there is an error in the broadcast request process.
    30. +
    31. ACKNOWLEDGE_RECEIVED: Emitted when an acknowledgement from the user is received.
    32. +
    33. LOCAL_RATE_LIMIT_REACHED: Triggered when a local rate limit is reached.
    34. +
    35. NO_PERMISSIONS: Occurs when no permissions are granted for the requested operation.
    36. +
    37. ACTIVE_ACCOUNT_SET: Fired when an active account is set in the application.
    38. +
    39. ACTIVE_TRANSPORT_SET: Triggered when an active transport layer is set.
    40. +
    41. SHOW_PREPARE: Emitted when the UI is being prepared to show some content or process.
    42. +
    43. HIDE_UI: Occurs when the UI is hidden.
    44. +
    45. INVALID_ACTIVE_ACCOUNT_STATE: Fired when there's an invalid state in the active account.
    46. +
    47. PAIR_INIT: Emitted at the initiation of a pairing process.
    48. +
    49. PAIR_SUCCESS: Triggered when a pairing process completes successfully.
    50. +
    51. CHANNEL_CLOSED: Occurs when a communication channel is closed.
    52. +
    53. INTERNAL_ERROR: Fired when an internal error occurs within the SDK.
    54. +
    55. UNKNOWN: Triggered for any unknown events.
    56. +
    +

    Example

    +
    Example
    import { BeaconEvent, DAppClient } from "@airgap/beacon-sdk";
    +
    +const dAppClient = new DAppClient({
    +  name: "Beacon Docs",
    +});
    +
    +await dAppClient.clearActiveAccount();
    +
    +console.log(await dAppClient.getActiveAccount());
    +
    +dAppClient.subscribeToEvent(BeaconEvent.PAIR_SUCCESS, (data) => {
    +  console.log(`${BeaconEvent.PAIR_SUCCESS} triggered: `, data);
    +});
    +
    +await dAppClient.requestPermissions();
    +
    Loading...
    + + \ No newline at end of file diff --git a/img/beacon-android-pairing-2.png b/img/beacon-android-pairing-2.png new file mode 100644 index 0000000000000000000000000000000000000000..e0a075054ad95ba07610b9ff5fa0b54bbfe35f6a GIT binary patch literal 117940 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 z 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

    l(+)1i*>C-`i#xNm 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 GzvdsUOj3CO literal 0 HcmV?d00001 diff --git a/img/beacon-pairing-ui.png b/img/beacon-pairing-ui.png new file mode 100644 index 0000000000000000000000000000000000000000..846b54eb69d47e454ea077060b06aa3fed8d98d2 GIT binary patch literal 224025 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

    U{mdkhMLi6a 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

    sg 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

    liK^C~}o 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 b+xv;RUN@h5ynnF|{JW-YsD-_3^Ys4#!pQ1B literal 0 HcmV?d00001 diff --git a/img/bug_report_alert.png b/img/bug_report_alert.png new file mode 100644 index 0000000000000000000000000000000000000000..5c835edaa6923d4a96ee697bdabe251ffd5682fc GIT binary patch literal 117321 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 f2l^F8ANGRfb-IxAyvl4Y)z}c5 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%0A-=0dBe?Vd!lAvOU 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 literal 0 HcmV?d00001 diff --git a/img/favicon.ico b/img/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..02dd1d6fe108c508464341b9ac55bb048e14a28b GIT binary patch literal 4286 zcmeH}U2LCI9LG;}Q>=7eA`7*4h9Jbt5)qblULukOUEZj71_` ziI)q;76~RUCNg=J?80P2yv19aGGW-?8e2ox$LI6xod2FaZTVY!Bk?q!p7Z=(zQ1$M zbIxf)XyK>3JNP@SpBuu-A%wF5Q& zVGsNWx4>*@1M8gtuJwcP6Syv$;aYHAjJ*}iRYR?RTnA#(diK)a4ZGm_l0Esmv2B7e z_!Mr3xsd#})-zWPwbU&9Q%yhm7trnm*K$R)6)Car{(Bv){W6>m6Lgb}Rt>+|hoJVP z<+X!jeiYn4wyjXEZOr|ke*;W73uSTq#;frNBu#6S!^-++;v0m|psO5bADrvg@GYDR z+9qg~4KYS7HPyC8Ii%3g26uqtTod2RW7B_I^!F!!Y@O2uP>fkydZOQ4HPyC8QL_>= z3%hITxw+h!^wUjf9&rqNVF#QRZONy$HF~wD zC&qZ!x<6ilQ==_~qTS>}WIY zDA){+;Vf7LU&30L^uBa3_{8m1yTCK%-#l%8v-`jrDcAOKFybr)1%VJ%t^{VeFZU*bS_qK!gsrPQpBU;9=MR??hgWHhsnv_YCb+vWIO~Gtx@i7O_9Ac^>wF{^N;xdUg!wdH-NO z*0Q=b8bZ%V2wfwqI=kxiTE{>=ZyOxU`-g_sZOgJXS(ZHj?`7Mv`cSsNo^8oTS_hWQ oYpaLOj?vIr%fsT@*uv4;SWl#Fpf(l)_K@dWTJwCgCsob=0=GEa+W-In literal 0 HcmV?d00001 diff --git a/img/guides.svg b/img/guides.svg new file mode 100644 index 00000000..bdb2fbd2 --- /dev/null +++ b/img/guides.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + diff --git a/img/hello-world.svg b/img/hello-world.svg new file mode 100644 index 00000000..889b2f56 --- /dev/null +++ b/img/hello-world.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + diff --git a/img/logo-white.svg b/img/logo-white.svg new file mode 100644 index 00000000..1e7fc152 --- /dev/null +++ b/img/logo-white.svg @@ -0,0 +1,49 @@ + + + + + + + + + + + + + + diff --git a/img/logo.svg b/img/logo.svg new file mode 100644 index 00000000..bf15de84 --- /dev/null +++ b/img/logo.svg @@ -0,0 +1 @@ +beacon_logoy_type_hor_padding \ No newline at end of file diff --git a/index.html b/index.html new file mode 100644 index 00000000..612a82f1 --- /dev/null +++ b/index.html @@ -0,0 +1,35 @@ + + + + + +Getting Started | Beacon Docs + + + + +

    Getting Started

    Hello World
    Guides
    +

    Learn About Beacon

    +

    Beacon is the implementation of the tzip-10 proposal, which describes an interaction standard between a wallet and a dApp.

    +

    A dApp implementing the beacon-sdk can build up a channel and send messages over a peer to peer communication layer to a wallet. This allows for a communication for example of a mobile wallet with a desktop application. The requests of the dApp are sent to the wallet, signed and returned to the application. The beacon-sdk can also communicate to chrome extensions if compatible ones are installed.

    +

    The beacon-sdk should allow developers to integrate this functionality with minimal coding, but still be customizable to support more complex flows.

    +

    Design Principles

    +

    The beacon-sdk handles almost everything for you, but is still customizable if needed. +It detects whether or not a browser extension is installed, tracks what connections have been established and the accounts that have been shared with the dApp.

    +

    Generally, you only have to initialize a DAppClient instance (see Getting Started), the rest should be handled for you. +Refer to the guides section for some common use cases.

    +

    Messages

    +

    The messages used in the Beacon communication are defined in the tzip-10 proposal.

    +

    Every message contains a unique, random ID that allows use to match request and response. It also contains the ID of the sender.

    +

    Some of the messages accept a network as input (default is mainnet). This is used to ask for permissions or broadcast a transaction on another network. This can either be a testnet, or a local development setup.

    +

    To see all message types, please refer to the typedocs.

    +

    Errors

    +

    The errors used in the Beacon communication are defined in the tzip-10 proposal.

    +

    If the wallet encounters an error while processing a request, the response will return an error.

    +

    To see all error types, please refer to the typedocs.

    +

    Default UI Elements

    +

    The beacon-sdk includes default UI elements for pairing wallets and show the status of a request. +We highly discourage the overwriting of the default UI elements. +You can read more details about this in the UI Elements section.

    + + \ No newline at end of file diff --git a/playground/index.html b/playground/index.html new file mode 100644 index 00000000..cba04f13 --- /dev/null +++ b/playground/index.html @@ -0,0 +1,13 @@ + + + + + +Beacon Docs + + + + +
    + + \ No newline at end of file diff --git a/post-mortem-2/index.html b/post-mortem-2/index.html new file mode 100644 index 00000000..b320c55b --- /dev/null +++ b/post-mortem-2/index.html @@ -0,0 +1,49 @@ + + + + + +Postmortem Incident 2 | Beacon Docs + + + + +

    Postmortem Incident 2

    Date: 2022-04-12

    +

    Authors: Andreas Gassmann

    +

    Status: Complete, action items in progress

    +

    Summary: A security vulnerability was discovered in the beacon-sdk that would allow attackers in some circumstances to inject arbitrary Javascript into dApps.

    +

    Impact: If a dApp was opened in an iFrame on a malicious website, through a hyperlink from a malicious website, or if a malicious browser extension was installed, the attacker would have been able to inject arbitrary Javascript that would be executed in the dApp context. The vulnerability only affected dApps, it did not affect wallets or the Beacon network.

    +

    Root Causes: The beacon-sdk used innerHTML to display user provided data. The source of the user provided data was not checked, nor was the data sanitised before it was displayed. This made injection of Javascript into the website possible vis DOM based XSS (Cross Site Scripting).

    +

    Resolution: Two separate mitigations were implemented:

    +
      +
    1. The origin of the data the SDK receives through the postMessage interface is now checked and messages from unsafe origins are ignored.
    2. +
    3. The UI no longer uses innerHTML to display data. Instead, only text is displayed, making it impossible to inject malicious Javascript.
    4. +
    +

    Detection: The vulnerability was found by Maciej Domanski, Security Engineer at Trail of Bits, during a security review of another project. After discovering that the beacon-sdk was the cause of the issue, the Trail of Bits team privately reached out to us to disclose the vulnerabilty.

    +

    Action Items:

    +
    Action ItemTypeOwnerState
    Update beacon-sdk to fix vulnerabilitymitigateandreasCOMPLETE
    Monitor dApp ecosystem and reach out to developersmitigateandreasIN PROGRESS
    +

    Conclusion

    +
      +
    • The vulnerability was found, fixed and most dApps updated in a little over a week. A huge thanks to the community for reacting quickly.
    • +
    • As far as we are aware, the vulnerability has not been actively exploited.
    • +
    • The security vulnerability only affected dApps. Wallets and the Beacon Network were not affected.
    • +
    +

    Timeline

    +

    (all times UTC)

    +
      +
    • 2022-04-05 20:30 The Trail of Bits team reached out to the Beacon team to inform us of a security vulnerability they found in the beacon-sdk during one of their audits
    • +
    • 2022-04-05 23:00 The Beacon team was able to verify the vulnerability and started planning the fix and its rollout
    • +
    • 2022-04-06 18:00 A proof of concept of the mitigations was implemented and fixed the security vulnerability
    • +
    • 2022-04-07 17:00 Both mitigations were implemented and an internal review was started
    • +
    • 2022-04-08 11:30 The fix was released to NPM with the version number 2.3.11
    • +
    • 2022-04-08 12:00 The Beacon team started privately reaching out to dApps in the Tezos ecosystem, informing them that a new update is available and urging them to update as soon as possible
    • +
    • 2022-04-08 18:00 A small fix was deployed to address build issues with server side rendering, beacon-sdk version 2.3.12
    • +
    • 2022-04-11 12:00 More dApps were contacted and notified about the update
    • +
    • 2022-04-12 23:30 The vulnerability has been posted in various developer communities
    • +
    • 2022-04-13 15:00 The vulnerability has been publicly disclosed
    • +
    +

    Support

    +

    We want to thank all the developers in the Tezos ecosystem that were involved in addressing this issue as soon as possible in a very effective manner.

    +

    Special thanks to the Trail of Bits team for reporting the vulnerability, as well as the Ecad Labs, Tezos Commons, Codecrafting Labs and Kukai Wallet teams for helping us coordinate the communication in the Tezos Developer ecosystem.

    + + \ No newline at end of file diff --git a/post-mortem/index.html b/post-mortem/index.html new file mode 100644 index 00000000..0566c390 --- /dev/null +++ b/post-mortem/index.html @@ -0,0 +1,51 @@ + + + + + +Postmortem Incident 1 | Beacon Docs + + + + +

    Postmortem Incident 1

    Date: 2021-10-24

    +

    Authors: Andreas Gassmann

    +

    Status: Complete, action items in progress

    +

    Summary: For about 1 hour (19:00 UTC - 20:00 UTC) the Beacon p2p network experienced a congestion and was mostly unusable or very slow.

    +

    Impact: New connection attempts between dApps and wallets during that time usually timed out or were very slow. Existing connections persisted and did allow for messages to be sent back and forth, but they were also slower or did not work at all, depending on the node the user was connected to. You can visit the Beacon Monitoring Dashboard for more information regarding the network activity.

    +

    Root Causes: Due to the high volume of users trying to pair their wallets at the same time, the Beacon network was overloaded and the requests were slowed down or timed out. The nodes struggled to handle the requests and were slowed down, which resulted in users retrying and adding additional load.

    +

    Trigger: The Neonz NFT sale went public at 19:00 UTC, which created a traffic spike around that time and lead to many users pairing their wallets at the same time.

    +

    Resolution: The nodes started recovering about one hour after the initial outage. After 2 hours, the functionality was fully restored.

    +

    Detection: The network was being used by the team around the time of the NFT drop.

    +

    Action Items:

    +
    Action ItemTypeOwnerState
    Add 5 additional nodes (8 total)mitigatelionelPLANNED
    Investigate if the Beacon Node config can be improvedmitigatelionelPLANNED
    Investigate if Dendrite, the new version of Matrix Synapse, improves performancemitigatelionelPLANNED
    Improve reconnection logic in Beacon SDKmitigateandreasPR OPEN
    Add additional transport layer to Beacon SDK for web wallets, to reduce the general load on the networkimproveandreasPLANNED
    +

    Lessons Learned

    +

    What went wrong

    +
      +
    • +

      At the start of the Neonz public sale at 19:00 UTC, all connected wallets were disconnected from the neonz.xyz dApp. We were able to pinpoint an issue in the Beacon integration of the Neonz website where a user would be disconnected from the Neonz dApp in a certain case. This resulted in all users having to re-pair their wallets again before being able to mint neonz. Because many people tried to mint Neonz at once, this caused a massive load on the Beacon Nodes.
      +Thanks to EyeJack, part of the team behind the Neonz project, for providing the source code of the frontend and help us with our investigation.

      +
    • +
    • +

      Due to the high load, some Beacon Nodes became temporarily unreachable. This triggered the reconnection logic within the Beacon SDK, routing all traffic to the next available Beacon Node, which then also became unavailable. This resulted in a "waterfall" effect that took down all 4 Beacon Node in the Beacon network.

      +
    • +
    +

    Conclusion

    +
      +
    • We are planning to add more nodes to the Beacon network to handle such spikes better.
    • +
    • The logic in the Beacon SDK was changed to better distribute reconnection attempts to different nodes.
    • +
    • The additional transport layer for web wallets was bumped up in the priority list.
    • +
    • The outage did not affect Browser Extensions.
    • +
    +

    Timeline

    +

    2021-10-24 (all times UTC)

    +
      +
    • 19:00 https://neonz.xyz public sale goes live
    • +
    • 19:01 Connection became unstable
    • +
    • 19:02 Connectivity issues were visible in the monitoring system
    • +
    • 19:05 investigation started
    • +
    • 20:00 (approx.) the network recovered
    • +
    • 20:30 (approx.) the investigation showed that the network was overloaded, a meeting was scheduled for the next day to discuss possible mitigations for the future
    • +
    + + \ No newline at end of file diff --git a/security-audits/index.html b/security-audits/index.html new file mode 100644 index 00000000..9a209481 --- /dev/null +++ b/security-audits/index.html @@ -0,0 +1,23 @@ + + + + + +Security Audits | Beacon Docs + + + + +

    Security Audits

    Beacon SDK has and will be regularly audited by third parties, their reports will be made publicly available.

    +

    17.09.20 - Beacon SDK Audit by Least Authority

    +

    In collaboration with the AirGap team, Least Authority conducted an audit of the tzip-10 Typescript implementation Beacon SDK. In total 5 issues have been identified by Least Authority. 3 of these have been resolved, 1 has been partially addressed and 1 was consciously not resolved.

    + +

    Disclosing Security Vulnerabilities

    +

    If you discover a security vulnerability within this library, please send an e-mail to hi@airgap.it. All security vulnerabilities will be promptly addressed.

    + + \ No newline at end of file diff --git a/sitemap.xml b/sitemap.xml new file mode 100644 index 00000000..ee2fee6c --- /dev/null +++ b/sitemap.xml @@ -0,0 +1 @@ +https://docs.walletbeacon.io/playgroundweekly0.5https://docs.walletbeacon.io/advanced/custom-block-explorerweekly0.5https://docs.walletbeacon.io/advanced/debug-walletweekly0.5https://docs.walletbeacon.io/advanced/different-nodeweekly0.5https://docs.walletbeacon.io/advanced/flows/connectionweekly0.5https://docs.walletbeacon.io/advanced/flows/extension-communicationweekly0.5https://docs.walletbeacon.io/advanced/flows/ledger-extensionweekly0.5https://docs.walletbeacon.io/advanced/flows/local-mnemonicweekly0.5https://docs.walletbeacon.io/advanced/flows/p2p-directweekly0.5https://docs.walletbeacon.io/advanced/flows/p2p-extensionweekly0.5https://docs.walletbeacon.io/advanced/push-notificationweekly0.5https://docs.walletbeacon.io/advanced/sdk-infoweekly0.5https://docs.walletbeacon.io/advanced/ui-elementsweekly0.5https://docs.walletbeacon.io/blockchains/introductionweekly0.5https://docs.walletbeacon.io/blockchains/substrateweekly0.5https://docs.walletbeacon.io/blockchains/tezosweekly0.5https://docs.walletbeacon.io/blockchains/tezos-saplingweekly0.5https://docs.walletbeacon.io/blockchains/usageweekly0.5https://docs.walletbeacon.io/contributingweekly0.5https://docs.walletbeacon.io/dappsweekly0.5https://docs.walletbeacon.io/FAQweekly0.5https://docs.walletbeacon.io/getting-started/advanced-exampleweekly0.5https://docs.walletbeacon.io/getting-started/best-practicesweekly0.5https://docs.walletbeacon.io/getting-started/first-dappweekly0.5https://docs.walletbeacon.io/getting-started/high-performanceweekly0.5https://docs.walletbeacon.io/getting-started/installationweekly0.5https://docs.walletbeacon.io/getting-started/simple-exampleweekly0.5https://docs.walletbeacon.io/getting-started/subscribe-to-active-accountweekly0.5https://docs.walletbeacon.io/guides/active-accountweekly0.5https://docs.walletbeacon.io/guides/broadcast-requestweekly0.5https://docs.walletbeacon.io/guides/bug-reportweekly0.5https://docs.walletbeacon.io/guides/contract-error-handlingweekly0.5https://docs.walletbeacon.io/guides/disconnecting-a-walletweekly0.5https://docs.walletbeacon.io/guides/fa1.2-transferweekly0.5https://docs.walletbeacon.io/guides/fa2-transferweekly0.5https://docs.walletbeacon.io/guides/metricsweekly0.5https://docs.walletbeacon.io/guides/migration-guideweekly0.5https://docs.walletbeacon.io/guides/networkweekly0.5https://docs.walletbeacon.io/guides/request-permissionsweekly0.5https://docs.walletbeacon.io/guides/sign-payloadweekly0.5https://docs.walletbeacon.io/guides/simple-contract-callweekly0.5https://docs.walletbeacon.io/guides/standalone-delegationweekly0.5https://docs.walletbeacon.io/guides/subscribe-to-eventweekly0.5https://docs.walletbeacon.io/guides/WC-eventsweekly0.5https://docs.walletbeacon.io/post-mortemweekly0.5https://docs.walletbeacon.io/post-mortem-2weekly0.5https://docs.walletbeacon.io/security-auditsweekly0.5https://docs.walletbeacon.io/supported-walletsweekly0.5https://docs.walletbeacon.io/wallet/advanced/android/configurationweekly0.5https://docs.walletbeacon.io/wallet/advanced/android/coroutines-alternativesweekly0.5https://docs.walletbeacon.io/wallet/advanced/ios/configurationweekly0.5https://docs.walletbeacon.io/wallet/errorsweekly0.5https://docs.walletbeacon.io/wallet/getting-started/android/connect-to-dappweekly0.5https://docs.walletbeacon.io/wallet/getting-started/android/disconnect-from-dappweekly0.5https://docs.walletbeacon.io/wallet/getting-started/android/installationweekly0.5https://docs.walletbeacon.io/wallet/getting-started/ios/connect-to-dappweekly0.5https://docs.walletbeacon.io/wallet/getting-started/ios/disconnect-from-dappweekly0.5https://docs.walletbeacon.io/wallet/getting-started/ios/installationweekly0.5https://docs.walletbeacon.io/wallet/getting-started/web/getting-startedweekly0.5https://docs.walletbeacon.io/wallet/introductionweekly0.5https://docs.walletbeacon.io/wallet/messages/substrateweekly0.5https://docs.walletbeacon.io/wallet/messages/tezosweekly0.5https://docs.walletbeacon.io/wallet/securityweekly0.5https://docs.walletbeacon.io/weekly0.5 \ No newline at end of file diff --git a/supported-wallets.html/index.html b/supported-wallets.html/index.html new file mode 100644 index 00000000..018d0a0b --- /dev/null +++ b/supported-wallets.html/index.html @@ -0,0 +1,11 @@ + + + + + + + + + \ No newline at end of file diff --git a/supported-wallets/index.html b/supported-wallets/index.html new file mode 100644 index 00000000..618f9552 --- /dev/null +++ b/supported-wallets/index.html @@ -0,0 +1,32 @@ + + + + + +Wallets | Beacon Docs + + + + +

    Wallets

    AirGap Wallet

    +

    AirGap Wallet is a mobile wallet for Android and iOS that works in conjunction with AirGap Vault.

    +

    Altme

    +

    Altme is the first universal wallet for Android and iOS that supports your decentralized identity, ID documents, cryptos and NFTs.

    +

    Autonomy

    +

    Autonomy is the world’s first and only digital art wallet. It gives you one easy-to-use app to securely collect, view and discover digital art you love. Autonomy works with Ethereum and Tezos and is built to support all new chains as they emerge.

    +

    Galleon

    +

    Galleon is a deployment of Tezori, an open-source wallet frame-work for Tezos, supporting both software and hardware wallets in eight languages on Mac, Windows, and Linux.

    +

    Kukai

    +

    Kukai is a Tezos web wallet based on three principles: Security, Community and Reliability.

    +

    Spire

    +

    Spire is a browser extension and supports connection to mobile wallets like AirGap Wallet, Ledger hardware wallets as well as a local mnemonic option recommended for developers.

    +

    Temple

    +

    Temple is a web extension for your browser, easy-to-use browser extension wallet for interacting with the Tezos ecosystem.

    +

    Umami

    +

    Umami is a Tezos desktop wallet that combines best-in-class features to deliver a smooth user experience for both beginner and advanced users.

    +

    Can I use all features of Beacon with all wallets?

    +

    Wallets are encouraged to support all features that Beacon offers. Please refer to the following matrix to check which features are supported in major wallets.

    +
    AirGapAltmeAutonomyGalleonKukaiSpireTempleUmami
    permissionRequest
    operationRequest
    signRequest (RAW)❌ ***
    signRequest (MICHELINE)
    signRequest (TRANSACTION)
    broadcastRequest
    +

    *** 05 or 03 prefixed operations only

    + + \ No newline at end of file diff --git a/wallet/advanced/android/configuration/index.html b/wallet/advanced/android/configuration/index.html new file mode 100644 index 00000000..653275d1 --- /dev/null +++ b/wallet/advanced/android/configuration/index.html @@ -0,0 +1,28 @@ + + + + + +Configuration | Beacon Docs + + + + +

    Configuration

    +

    Ignore unsupported blockchains

    +

    If BeaconWalletClient encounters a structure that belongs to a blockchain that hasn't been registered in the client, it's considered an error by default and the client may fail at runtime. Usually, this means the developer has made an error and forgot to configure the client with that blockchain.

    +

    Sometimes, however, such situations aren't the result of a developer error and shouldn't cause the app to crash. The default behaviour can therefore be overriden with the BeaconWalletClient.Builder#ignoreUnsupportedBlockchains flag.

    +
    import it.airgap.beaconsdk.client.wallet.BeaconWalletClient

    val beaconWallet = BeaconWalletClient {
    ...

    ignoreUnsupportedBlockchains = true
    }
    +

    Custom storage

    +

    Beacon Android SDK is not a stateless library and bases part of its functionality on preserved data. By default the SDK stores its data in SharedPreferences. However, it is possible to override the default storage and provide your own implementation. The :core module ships with 3 public interfaces that can be satisfied and provided externally during the BeaconWalletClient setup: Storage, ExtendedStorage (an extended version of Storage) and SecureStorage.

    +
    import it.airgap.beaconsdk.client.wallet.BeaconWalletClient
    import it.airgap.beaconsdk.core.storage.ExtendedStorage
    import it.airgap.beaconsdk.core.storage.SecureStorage
    import it.airgap.beaconsdk.core.storage.Storage

    val beaconWallet = BeaconWalletClient {
    ...

    storage = MyStorage() /* or MyExtendedStorage() */
    secureStorage = MySecureStorage()
    }

    class MyStorage : Storage {
    // implementation
    }

    class MyExtendedStorage : ExtendedStorage {
    // implementation
    }

    class MySecureStorage : SecureStorage {
    // implementation
    }
    +

    Plugins

    +

    Some modules may require additional data to store. Those modules usually come with their own storage plugin interfaces which can be satisfied and provided externally.

    +

    :transport-p2p-matrix

    +

    The :transport-p2p-matrix module defines P2pMatrixStoragePlugin and ExtendedP2pMatrixStoragePlugin interfaces.

    +
    import it.airgap.beaconsdk.client.wallet.BeaconWalletClient
    import it.airgap.beaconsdk.transport.p2p.matrix.p2pMatrix
    import it.airgap.beaconsdk.transport.p2p.matrix.storage.ExtendedP2pMatrixStoragePlugin
    import it.airgap.beaconsdk.transport.p2p.matrix.storage.P2pMatrixStoragePlugin

    val beaconWallet = BeaconWalletClient {
    ...

    use(p2pMatrix(storagePlugin = MyP2pMatrixStoragePlugin() /* or MyExtendedP2pMatrixStoragePlugin() */))
    }

    class MyP2pMatrixStoragePlugin : P2pMatrixStoragePlugin {
    // implementation
    }

    class MyExtendedP2pMatrixStoragePlugin : ExtendedP2pMatrixStoragePlugin {
    // implementation
    }
    +

    Custom Matrix nodes

    +

    You can provide your own Matrix node URLs while setting BeaconWalletClient up with the :transport-p2p-matrix transport layer. Use the p2pMatrix factory arguments to set your values.

    +
    import it.airgap.beaconsdk.client.wallet.BeaconWalletClient
    import it.airgap.beaconsdk.transport.p2p.matrix.p2pMatrix

    val beaconWallet = BeaconWalletClient {
    ...

    use(p2pMatrix(matrixNodes = listOf("my.matrix.node")))
    }
    + + \ No newline at end of file diff --git a/wallet/advanced/android/coroutines-alternatives/index.html b/wallet/advanced/android/coroutines-alternatives/index.html new file mode 100644 index 00000000..1f5cf17c --- /dev/null +++ b/wallet/advanced/android/coroutines-alternatives/index.html @@ -0,0 +1,32 @@ + + + + + +Coroutines Alternatives | Beacon Docs + + + + +

    Coroutines Alternatives

    +

    Beacon Android SDK by default uses Coroutines to handle asynchronous code. If you don't want to use Coroutines in your application, see the alternatives below.

    +

    :client-wallet-compat

    +

    Beacon Adndroid SDK ships with :client-wallet-compat module that provides a supplementary callback-based interface for :client-wallet. See the snippets below to learn how to use it.

    +
    tip

    See the Installation page for more information about the :client-wallet-compat module and how to install it.

    +

    Create a wallet client

    +
    import it.airgap.beaconsdk.client.wallet.BeaconWalletClient
    import it.airgap.beaconsdk.client.wallet.compat.BuildCallback
    import it.airgap.beaconsdk.client.wallet.compat.build

    lateinit var beaconWallet: BeaconWalletClient

    BeaconWalletClient.Builder("My App").apply {
    support(/* blockchains */)
    use(/* connections */)
    }.build(object : BuildCallback {
    override fun onSuccess(beaconClient: BeaconWalletClient) {
    beaconWallet = beaconClient
    }

    override fun onError(error: Throwable) {
    error.printStackTrace()
    }

    override fun onCancel() {
    super.onCancel()
    }
    })
    +

    Subscribe to incoming requests

    +
    import it.airgap.beaconsdk.client.wallet.compat.OnNewMessageListener
    import it.airgap.beaconsdk.client.wallet.compat.connect

    beaconWallet.connect(object : OnNewMessageListener {
    override fun onNewMessage(message: BeaconMessage) {
    ...
    }

    override fun onError(error: Throwable) {
    ...
    }
    })
    +

    Connect to a dApp

    +
    import it.airgap.beaconsdk.client.wallet.compat.SetCallback
    import it.airgap.beaconsdk.client.wallet.compat.addPeers
    import it.airgap.beaconsdk.core.data.P2pPeer

    val dApp = P2pPeer(
    id = "id",
    name = "name",
    publicKey = "publicKey",
    relayServer = "relayServer",
    version = "version",
    )

    beaconWallet.addPeers(dApp, callback = object : SetCallback {
    override fun onSuccess() {
    TODO("Not yet implemented")
    }

    override fun onError(error: Throwable) {
    TODO("Not yet implemented")
    }
    })
    +

    Handle requests from the dApp

    +
    import it.airgap.beaconsdk.client.wallet.compat.ResponseCallback
    import it.airgap.beaconsdk.client.wallet.compat.respond

    beaconWallet.respond(response, object : ResponseCallback {
    override fun onSuccess() {
    ...
    }

    override fun onError(error: Throwable) {
    ...
    }
    })
    +

    Integration with other asynchronous libraries

    +

    See the guides below to learn how to integrate Beacon Android SDK with other asynchronous libraries.

    +
    + + \ No newline at end of file diff --git a/wallet/advanced/ios/configuration/index.html b/wallet/advanced/ios/configuration/index.html new file mode 100644 index 00000000..0ef49fbe --- /dev/null +++ b/wallet/advanced/ios/configuration/index.html @@ -0,0 +1,27 @@ + + + + + +Configuration | Beacon Docs + + + + +

    Configuration

    +

    Custom storage

    +

    Beacon iOS SDK is not a stateless library and bases part of its functionality on preserved data. By default the SDK stores its data in UserDefaults. However, it is possible to override the default storage and provide your own implementation. The BeaconCore package ships with 3 public protocols that can be satisfied and provided externally during the Beacon.WalletClient setup: Storage, ExtendedStorage (an extended version of Storage) and SecureStorage.

    +
    import BeaconCore
    import BeaconClientWallet

    Beacon.WalletClient.create(
    with: .init(
    ...,
    storage: MyStorage() /* or MyExtendedStorage() */,
    secureStorage: MySecureStorage()
    )
    )

    struct MyStorage: Storage {
    // implementation
    }

    struct MyExtendedStorage: ExtendedStorage {
    // implementation
    }

    struct MySecureStorage: SecureStorage {
    // implementation
    }
    +

    Plugins

    +

    Some packages may require additional data to store. Those packages usually come with their own storage plugin protocols which can be satisfied and provided externally.

    +

    BeaconTransportP2PMatrix

    +

    The BeaconTransportP2PMatrix package defines P2PMatrixStoragePlugin and ExtendedP2PMatrixStoragePlugin protocols.

    +
    import BeaconClientWallet
    import BeaconTransportP2PMatrix

    Beacon.WalletClient.create(
    with: .init(
    ...,
    connections: [try Transport.P2P.Matrix.connection(storagePlugin: MyP2PMatrixStoragePlugin() /* or MyExtendedP2PMatrixStoragePlugin */)]
    )
    )

    struct MyP2PMatrixStoragePlugin: P2pMatrixStoragePlugin {
    // implementation
    }

    struct MyExtendedP2PMatrixStoragePlugin: ExtendedP2pMatrixStoragePlugin {
    // implementation
    }
    +

    Custom Matrix nodes

    +

    You can provide your own Matrix node URLs while setting Beacon.WalletClient up with the BeaconTransportP2PMatrix transport layer. Use the Transport.P2P.Matrix.connection factory arguments to set your values.

    +
    import BeaconClientWallet
    import BeaconTransportP2PMatrix

    Beacon.WalletClient.create(
    ...,
    connections: [try Transport.P2P.Matrix.connection(matrixNodes: ["my.matrix.node"])]
    )
    +

    Custom URLSession

    +

    You can use your own URLSession implementation while setting Beacon.WalletClient up with BeaconTransportP2PMatrix transport layer. Use the Transport.P2P.Matrix.connection factory arguments to provide an instance.

    +
    import Foundation
    import BeaconClientWallet
    import BeaconTransportP2PMatrix

    Beacon.WalletClient.create(
    ...,
    connections: [urlSession: MyURLSession()]
    )

    struct MyURLSession: URLSession {
    // implementation
    }
    + + \ No newline at end of file diff --git a/wallet/errors/index.html b/wallet/errors/index.html new file mode 100644 index 00000000..3ec16c49 --- /dev/null +++ b/wallet/errors/index.html @@ -0,0 +1,13 @@ + + + + + +errors | Beacon Docs + + + + + + + \ No newline at end of file diff --git a/wallet/getting-started/android/connect-to-dapp/index.html b/wallet/getting-started/android/connect-to-dapp/index.html new file mode 100644 index 00000000..9146ead3 --- /dev/null +++ b/wallet/getting-started/android/connect-to-dapp/index.html @@ -0,0 +1,43 @@ + + + + + +Connect to a dApp | Beacon Docs + + + + +

    Connect to a dApp

    +

    Requirements

    +

    Make sure you have added the following modules as your dependencies:

    +
    :core
    :client-wallet
    +

    You should have also decided which blockchains will be supported in your application and what transport layers to use to establish the communication. Make sure you have added the appropriate Blockchain and Transport modules as your dependencies as well.

    +
    tip

    See the Installation page for more information about the modules and how to install them.

    +
    caution

    Beacon Android SDK by default uses Coroutines to handle asynchronous code. If you don't want to use Coroutines in your application, see the Coroutines Alternatives to learn other approaches.

    +

    How to listen for messages and respond

    +

    Follow the steps below to learn how to interact with a dApp. The guide assumes all blockchains and transport layers are supported.

    +

    Create a wallet client

    +

    Create a BeaconWalletClient instance by providing your app's name, registering supported blockchains and transport layers that will be used for communication.

    +

    The example below creates a new BeaconWalletClient instance with default settings. See the Configuration guide to learn about more advanced setups.

    +
    import it.airgap.beaconsdk.blockchain.substrate.substrate
    import it.airgap.beaconsdk.blockchain.tezos.tezos
    import it.airgap.beaconsdk.client.wallet.BeaconWalletClient
    import it.airgap.beaconsdk.transport.p2p.matrix.p2pMatrix

    myCoroutineScope.launch {
    val beaconWallet = BeaconWalletClient("My App") {
    support(substrate(), tezos()) // set support for Substrate and Tezos blockchains
    use(p2pMatrix()) // use Matrix to communicate with the Beacon network
    }
    }
    +
    caution

    Currently only one instance of BeaconWalletClient should be created per application.

    +

    Subscribe to incoming requests

    +

    Listen to requests from the dApp by collecting the Flow returned from the BeaconWalletClient#connect method. The Flow emits BeaconRequest packed in a Result.

    +
    import it.airgap.beaconsdk.core.message.BeaconRequest

    myCoroutineScope.launch {
    // connect to the network and collect the messages
    beaconWallet.connect().collect { result -> //: Result<BeaconRequest>
    result.getOrNull()?.let { onBeaconRequest(it) } // if success
    result.exceptionOrNull()?.let { onError(it) } // if failure
    }
    }

    fun onBeaconRequest(request: BeaconRequest) {
    TODO("Not yet implemented")
    }

    fun onError(e: Throwable) {
    e.printStackTrace()
    }
    +

    Connect to a dApp

    +

    To connect to a new dApp take the pairing request (obtained from, for example, a paring QR code) and transform it to P2pPeer. Next, register the new instance of P2pPeer in your wallet client.

    +
    import it.airgap.beaconsdk.core.data.P2pPeer

    // replace placeholder values with data provided in the dApp's pairing request
    val dApp = P2pPeer(
    id = "id",
    name = "name",
    publicKey = "publicKey",
    relayServer = "relayServer",
    version = "version",
    )

    myCoroutineScope.launch {
    try {
    // connect to a new peer
    beaconWallet.addPeers(dApp)
    } catch (e: Exception) {
    e.printStackTrace()
    }
    }
    +

    Handle requests from the dApp

    +

    Having received a request, you can create a response and send it back to the dApp. The response should always be created from an incoming request. Attempting to send a response that was not created from a request awaiting answer will result in an error.

    +

    The first request your app receives from a dApp is a permission request. The example below shows how to respond to it in the most basic way. To get more information about other kinds of requests or learn more advanced use cases see the Blockchain guides.

    +
    import it.airgap.beaconsdk.blockchain.substrate.data.SubstrateAccount
    import it.airgap.beaconsdk.blockchain.substrate.data.SubstrateNetwork
    import it.airgap.beaconsdk.blockchain.substrate.message.request.PermissionSubstrateRequest
    import it.airgap.beaconsdk.blockchain.substrate.message.response.PermissionSubstrateResponse
    import it.airgap.beaconsdk.blockchain.tezos.message.request.PermissionTezosRequest
    import it.airgap.beaconsdk.blockchain.tezos.message.response.PermissionTezosResponse
    import it.airgap.beaconsdk.core.data.BeaconError
    import it.airgap.beaconsdk.core.message.BeaconRequest
    import it.airgap.beaconsdk.core.message.ErrorBeaconResponse

    fun onBeaconRequest(request: BeaconRequest) {
    // create a response based on the request
    val response = when (request) {
    is PermissionSubstrateRequest -> PermissionSubstrateResponse.from(request, request.networks.map { substrateAccount(it) })
    is PermissionTezosRequest -> PermissionTezosResponse.from(request, tezosAccount(request.network))
    else -> ErrorBeaconResponse.from(request, BeaconError.Aborted)
    }

    myCoroutineScope.launch {
    try {
    // send the response
    beaconWallet.respond(response)
    } catch (e: Exception) {
    e.printStackTrace()
    }
    }
    }

    // replace placeholder values with valid data
    fun substrateAccount(network: SubstrateNetwork) = SubstrateAccount(
    "substratePublicKey",
    "substrateAddress",
    network,
    )

    fun tezosAccount(network: TezosNetwork) = TezosAccount(
    "tezosPublicKey",
    "tezosAddress",
    network,
    )
    +

    Example Code

    +

    The following example shows how to create a simple Activity which connects to a dApp using Matrix and handles Substrate and Tezos messages based on the steps described earlier.

    +
    build.gradle.kts
    allprojects {
    repositories {
    maven("https://jitpack.io")
    }
    }
    +

    stable +latest

    +
    app/build.gradle.kts
    dependencies {
    // Beacon
    val beaconVersion = "x.y.z"

    implementation("com.github.airgap-it.beacon-android-sdk:core:$beaconVersion")
    implementation("com.github.airgap-it.beacon-android-sdk:client-wallet:$beaconVersion")
    implementation("com.github.airgap-it.beacon-android-sdk:blockchain-substrate:$beaconVersion")
    implementation("com.github.airgap-it.beacon-android-sdk:blockchain-tezos:$beaconVersion")
    implementation("com.github.airgap-it.beacon-android-sdk:transport-p2p-matrix:$beaconVersion")

    // Android
    val androidActivityVersion = "x.y.z"
    implementation("androidx.activity:activity-ktx:$androidActivityVersion")

    val androidLifecycleVersion = "x.y.z"
    implementation("androidx.lifecycle:lifecycle-livedata-ktx:$androidLifecycleVersion")
    }
    +
    app/src/main/java/com/example/MainActivity.kt
    package com.example

    import android.os.Bundle
    import androidx.appcompat.app.AppCompatActivity
    import androidx.lifecycle.asLiveData
    import androidx.lifecycle.lifecycleScope
    import it.airgap.beaconsdk.blockchain.substrate.data.SubstrateAccount
    import it.airgap.beaconsdk.blockchain.substrate.data.SubstrateNetwork
    import it.airgap.beaconsdk.blockchain.substrate.message.request.PermissionSubstrateRequest
    import it.airgap.beaconsdk.blockchain.substrate.message.response.PermissionSubstrateResponse
    import it.airgap.beaconsdk.blockchain.substrate.substrate
    import it.airgap.beaconsdk.blockchain.tezos.data.TezosAccount
    import it.airgap.beaconsdk.blockchain.tezos.data.TezosNetwork
    import it.airgap.beaconsdk.blockchain.tezos.message.request.PermissionTezosRequest
    import it.airgap.beaconsdk.blockchain.tezos.message.response.PermissionTezosResponse
    import it.airgap.beaconsdk.blockchain.tezos.tezos
    import it.airgap.beaconsdk.client.wallet.BeaconWalletClient
    import it.airgap.beaconsdk.core.data.BeaconError
    import it.airgap.beaconsdk.core.data.P2pPeer
    import it.airgap.beaconsdk.core.message.BeaconRequest
    import it.airgap.beaconsdk.core.message.ErrorBeaconResponse
    import it.airgap.beaconsdk.transport.p2p.matrix.p2pMatrix
    import kotlinx.coroutines.launch

    class MainActivity : AppCompatActivity() {
    lateinit var beaconWallet: BeaconWalletClient

    val dApp = P2pPeer(
    "0b02d44c-de33-b5ab-7730-ff8e62f61869" /* TODO: change me */,
    "My dApp",
    "6c7870aa1e42477fd7c2baaf4763bd826971e470772f71a0a388c1763de3ea1e" /* TODO: change me */,
    "beacon-node-1.sky.papers.tech" /* TODO: change me */,
    "2" /* TODO: change me */,
    )

    fun substrateAccount(network: SubstrateNetwork) = SubstrateAccount(
    "f4c6095213a2f6d09464ed882b12d6024d20f7170c3b8bd5c1b071e4b00ced72" /* TODO: change me */,
    "16XwWkdUqFXFY1tJNf1Q6fGgxQnGYUS6M95wPcrbp2sjjuoC" /* TODO: change me */,
    network,
    )

    fun tezosAccount(network: TezosNetwork) = TezosAccount(
    "9ae0875d510904b0b15d251d8def1f5f3353e9799841c0ed6d7ac718f04459a0" /* TODO: change me */,
    "tz1SkbBZg15BXPRkYCrSzhY6rq4tKGtpUSWv" /* TODO: change me */,
    network,
    )

    override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_main)

    lifecycleScope.launch {
    createWalletClient()
    subscribeToRequests()
    connectToDApp()
    }
    }

    suspend fun createWalletClient() {
    beaconWallet = BeaconWalletClient("My App") {
    support(substrate(), tezos())
    use(p2pMatrix())
    }
    }

    fun subscribeToRequests() {
    beaconWallet.connect().asLiveData().observe(this) { result ->
    result.getOrNull()?.let { onBeaconRequest(it) }
    result.exceptionOrNull()?.let { onError(it) }
    }
    }

    suspend fun connectToDApp() {
    try {
    beaconWallet.addPeers(dApp)
    } catch (e: Exception) {
    onError(e)
    }
    }

    fun onBeaconRequest(request: BeaconRequest) {
    val response = when (request) {
    is PermissionSubstrateRequest -> PermissionSubstrateResponse.from(request, request.networks.map { substrateAccount(it) })
    is PermissionTezosRequest -> PermissionTezosResponse.from(request, tezosAccount(request.network))
    else -> ErrorBeaconResponse.from(request, BeaconError.Aborted)
    }

    lifecycleScope.launch {
    try {
    beaconWallet.respond(response)
    } catch (e: Exception) {
    onError(e)
    }
    }
    }

    fun onError(e: Throwable) {
    e.printStackTrace()
    }
    }
    + + \ No newline at end of file diff --git a/wallet/getting-started/android/disconnect-from-dapp/index.html b/wallet/getting-started/android/disconnect-from-dapp/index.html new file mode 100644 index 00000000..d4cadae5 --- /dev/null +++ b/wallet/getting-started/android/disconnect-from-dapp/index.html @@ -0,0 +1,27 @@ + + + + + +Disconnect from a dApp | Beacon Docs + + + + +

    Disconnect from a dApp

    +
    info

    This guide is a continuation of Connect to a dApp and may assume that certain code components have been defined.

    +

    Disconnect from a dApp

    +

    To disconnect form a subscribed dApp remove its peer entry from the client.

    +
    myCoroutineScope.launch {
    try {
    val peers = beaconWallet.getPeers() // get subscribed peers
    val dApp = peers.find { it.name == "MyApp" }
    beaconWallet.removePeers(dApp)
    } catch (e: Exception) {
    e.printStackTrace()
    }
    }
    +

    Disconnect from all dApps

    +

    To disconnect from all subscribed dApps remove all peers that were previously registered in the client.

    +
    myCoroutineScope.launch {
    try {
    beaconWallet.removeAllPeers()
    } catch (e: Exception) {
    e.printStackTrace()
    }
    }
    +

    Example Code

    +

    The following example extends the code presented in the Connect to a dApp guide. The Activity listens for incoming requests from a dApp, waits 1s and cancels connection.

    +
    build.gradle.kts
    allprojects {
    repositories {
    maven("https://jitpack.io")
    }
    }
    +

    stable +latest

    +
    app/build.gradle.kts
    dependencies {
    // Beacon
    val beaconVersion = "x.y.z"

    implementation("com.github.airgap-it.beacon-android-sdk:core:$beaconVersion")
    implementation("com.github.airgap-it.beacon-android-sdk:client-wallet:$beaconVersion")
    implementation("com.github.airgap-it.beacon-android-sdk:blockchain-substrate:$beaconVersion")
    implementation("com.github.airgap-it.beacon-android-sdk:blockchain-tezos:$beaconVersion")
    implementation("com.github.airgap-it.beacon-android-sdk:transport-p2p-matrix:$beaconVersion")

    // Android
    val androidActivityVersion = "x.y.z"
    implementation("androidx.activity:activity-ktx:$androidActivityVersion")

    val androidLifecycleVersion = "x.y.z"
    implementation("androidx.lifecycle:lifecycle-livedata-ktx:$androidLifecycleVersion")
    }
    +
    app/src/main/java/com/example/MainActivity.kt
    package com.example

    import android.os.Bundle
    import androidx.appcompat.app.AppCompatActivity
    import androidx.lifecycle.asLiveData
    import androidx.lifecycle.lifecycleScope
    import it.airgap.beaconsdk.blockchain.substrate.data.SubstrateAccount
    import it.airgap.beaconsdk.blockchain.substrate.data.SubstrateNetwork
    import it.airgap.beaconsdk.blockchain.substrate.message.request.PermissionSubstrateRequest
    import it.airgap.beaconsdk.blockchain.substrate.message.response.PermissionSubstrateResponse
    import it.airgap.beaconsdk.blockchain.substrate.substrate
    import it.airgap.beaconsdk.blockchain.tezos.data.TezosAccount
    import it.airgap.beaconsdk.blockchain.tezos.data.TezosNetwork
    import it.airgap.beaconsdk.blockchain.tezos.message.request.PermissionTezosRequest
    import it.airgap.beaconsdk.blockchain.tezos.message.response.PermissionTezosResponse
    import it.airgap.beaconsdk.blockchain.tezos.tezos
    import it.airgap.beaconsdk.client.wallet.BeaconWalletClient
    import it.airgap.beaconsdk.core.data.BeaconError
    import it.airgap.beaconsdk.core.data.P2pPeer
    import it.airgap.beaconsdk.core.message.BeaconRequest
    import it.airgap.beaconsdk.core.message.ErrorBeaconResponse
    import it.airgap.beaconsdk.transport.p2p.matrix.p2pMatrix
    import kotlinx.coroutines.delay
    import kotlinx.coroutines.launch

    class MainActivity : AppCompatActivity() {
    lateinit var beaconWallet: BeaconWalletClient

    val dApp = P2pPeer(
    "0b02d44c-de33-b5ab-7730-ff8e62f61869" /* TODO: change me */,
    "My dApp",
    "6c7870aa1e42477fd7c2baaf4763bd826971e470772f71a0a388c1763de3ea1e" /* TODO: change me */,
    "beacon-node-1.sky.papers.tech" /* TODO: change me */,
    "2" /* TODO: change me */,
    )

    fun substrateAccount(network: SubstrateNetwork) = SubstrateAccount(
    "f4c6095213a2f6d09464ed882b12d6024d20f7170c3b8bd5c1b071e4b00ced72" /* TODO: change me */,
    "16XwWkdUqFXFY1tJNf1Q6fGgxQnGYUS6M95wPcrbp2sjjuoC" /* TODO: change me */,
    network,
    )

    fun tezosAccount(network: TezosNetwork) = TezosAccount(
    "9ae0875d510904b0b15d251d8def1f5f3353e9799841c0ed6d7ac718f04459a0" /* TODO: change me */,
    "tz1SkbBZg15BXPRkYCrSzhY6rq4tKGtpUSWv" /* TODO: change me */,
    network,
    )

    override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_main)

    lifecycleScope.launch {
    createWalletClient()
    subscribeToRequests()
    connectToDApp()
    }
    }

    suspend fun createWalletClient() {
    beaconWallet = BeaconWalletClient("My App") {
    support(substrate(), tezos())
    use(p2pMatrix())
    }
    }

    fun subscribeToRequests() {
    beaconWallet.connect().asLiveData().observe(this) { result ->
    result.getOrNull()?.let { onBeaconRequest(it) }
    result.exceptionOrNull()?.let { onError(it) }
    }
    }

    suspend fun connectToDApp() {
    try {
    beaconWallet.addPeers(dApp)
    } catch (e: Exception) {
    onError(e)
    }
    }

    fun onBeaconRequest(request: BeaconRequest) {
    val response = when (request) {
    is PermissionSubstrateRequest -> PermissionSubstrateResponse.from(request, request.networks.map { substrateAccount(it) })
    is PermissionTezosRequest -> PermissionTezosResponse.from(request, tezosAccount(request.network))
    else -> ErrorBeaconResponse.from(request, BeaconError.Aborted)
    }

    lifecycleScope.launch {
    try {
    beaconWallet.respond(response)
    delay(1000)
    beaconWallet.removePeers(dApp)
    } catch (e: Exception) {
    onError(e)
    }
    }
    }

    fun onError(e: Throwable) {
    e.printStackTrace()
    }
    }
    + + \ No newline at end of file diff --git a/wallet/getting-started/android/installation/index.html b/wallet/getting-started/android/installation/index.html new file mode 100644 index 00000000..6d2ef65c --- /dev/null +++ b/wallet/getting-started/android/installation/index.html @@ -0,0 +1,54 @@ + + + + + +Installation | Beacon Docs + + + + +

    Installation

    +

    How to install Beacon Android SDK

    +

    To add Beacon Android SDK into your project:

    +
      +
    1. Make sure the JitPack repository is included in your root build.gradle file:
    2. +
    +
    allprojects {
    repositories {
    ...
    maven("https://jitpack.io")
    }
    }
    +
      +
    1. Add the dependencies:
    2. +
    +

    stable +latest

    +
    dependencies {
    val beaconVersion = "x.y.z"

    // REQUIRED, core
    implementation("com.github.airgap-it.beacon-android-sdk:core:$beaconVersion")

    // optional, client-wallet
    implementation("com.github.airgap-it.beacon-android-sdk:client-wallet:$beaconVersion")
    // optional, client-wallet-compat
    implementation("com.github.airgap-it.beacon-android-sdk:client-wallet-compat:$beaconVersion")

    // optional, blockchain-substrate
    implementation("com.github.airgap-it.beacon-android-sdk:blockchain-substrate:$beaconVersion")
    // optional, blockchain-tezos
    implementation("com.github.airgap-it.beacon-android-sdk:blockchain-tezos:$beaconVersion")

    // optional, transport-p2p-matrix
    implementation("com.github.airgap-it.beacon-android-sdk:transport-p2p-matrix:$beaconVersion")

    ---

    // alternatively, all modules
    implementation("com.github.airgap-it:beacon-android-sdk:$beaconVersion")
    }
    +

    Modules Overview

    +

    The library modules and their relations are described below.

    +

    Core

    +

    Core modules are the basis for other modules. They are required for the SDK to work as expected.

    +
    ModuleDescriptionDependenciesRequired by
    :coreBase for other modules✖️:client-wallet
    :client-wallet-compat

    :blockchain-substrate
    :blockchain-tezos

    :transport-p2p-matrix
    +

    Client

    +

    Client modules ship with Beacon implementations for different parts of the network.

    +
    ModuleDescriptionDependenciesRequired by
    :client-walletBeacon implementation for wallets:core:client-wallet-compat
    :client-wallet-compatProvides a supplementary interface for :client-wallet for use without Coroutines:core
    :client-wallet
    ✖️
    +

    Blockchain

    +

    Blockchain modules provide support for different blockchains.

    +
    ModuleDescriptionDependenciesRequired by
    :blockchain-substrateSubstrate specific components:core✖️
    :blockchain-tezosTezos specific components:core✖️
    +

    Transport

    +

    Transport modules provide various interfaces used to establish connection between Beacon clients.

    +
    ModuleDescriptionDependenciesRequired by
    :transport-p2p-matrixBeacon P2P implementation which uses Matrix for the communication:core✖️
    +

    Proguard and R8

    +

    Beacon Android SDK internally uses various libraries that may require custom ProGuard rules. If you're using ProGuard or R8, please follow the guides listed below to make sure your app works correctly after obfuscation:

    + +

    Troubleshooting

    +

    See the list of known issues and how to fix them if you run into problems after adding the dependencies:

    +
      +
    • +

      Native library (com/sun/jna/xxxxx/libjnidispatch.so) not found in resource path

      +

      Add the "net.java.dev.jna:jna:x.y.z@aar" dependency and exclude the net.java.dev.jna group from the Beacon dependencies.

      +
    • +
    +
    fun ModuleDependency.excludeJna(): ModuleDependency = apply {
    exclude(group = "net.java.dev.jna")
    }

    implementation("com.github.airgap-it.beacon-android-sdk:core:$beaconVersion") { withoutJna() }
    implementation("com.github.airgap-it.beacon-android-sdk:client-wallet:$beaconVersion") { withoutJna() }
    ...

    val jnaVersion = "x.y.z"

    implementation("net.java.dev.jna:jna:$jnaVersion@aar")
    + + \ No newline at end of file diff --git a/wallet/getting-started/ios/connect-to-dapp/index.html b/wallet/getting-started/ios/connect-to-dapp/index.html new file mode 100644 index 00000000..1d59d918 --- /dev/null +++ b/wallet/getting-started/ios/connect-to-dapp/index.html @@ -0,0 +1,41 @@ + + + + + +Connect to a dApp | Beacon Docs + + + + +

    Connect to a dApp

    +

    Requirements

    +

    Make sure you have added the following packages as your dependencies:

    +
    BeaconCore
    BeaconClientWallet
    +

    You should have also decided which blockchains will be supported in your application and what transport layers to use to establish the communication. Make sure you have added the appropriate Blockchain and Transport packages as your dependencies as well.

    +
    tip

    See the Installation page for more information about the packages and how to install them.

    +

    How to listen for messages and respond

    +

    Follow the steps below to learn how to interact with a dApp. The guide assumes all blockchains and transport layers are supported.

    +

    Create a wallet client

    +

    Create a Beacon.WalletClient instance by providing your app's name, registering supported blockchains and transport layers that will be used for communication.

    +

    The example below creates a new Beacon.WalletClient instance with default settings. See the Configuration guide to learn about more advanced setups.

    +
    import BeaconCore
    import BeaconBlockchainSubstrate
    import BeaconBlockchainTezos
    import BeaconClientWallet
    import BeaconTransportP2PMatrix

    ...

    var beaconWallet: Beacon.WalletClient!

    do {
    Beacon.WalletClient.create(
    with: .init(
    name: "MyApp",
    blockchains: [Substrate.factory, Tezos.factory], // set support for Substrate and Tezos blockchains
    connections: [try Transport.P2P.Matrix.connection()] // use Matrix to communicate with the Beacon network
    )
    ) { result in
    switch result {
    case let .success(client):
    beaconWallet = client
    case let .failure(error):
    print(error)
    }
    }
    } catch {
    print(error)
    }
    +
    caution

    Currently only one instance of Beacon.WalletClient should be created per application.

    +

    Subscribe to incoming requests

    +

    Subscribe to requests from the dApp by connecting to the Beacon network and listening to incoming requests.

    +
    import BeaconCore
    import BeaconBlockchainSubstrate
    import BeaconBlockchainTezos
    import BeaconClientWallet

    ...

    beaconWallet.connect { result in
    switch result {
    case .success(_):
    beaconWallet.listen(onRequest: onSubstrateRequest) // listen for Substrate requests
    beaconWallet.listen(onRequest: onTezosRequest) // listen for Tezos requests
    case let .failure(error):
    print(error)
    }
    }

    ...

    func onSubstrateRequest(_ request: Result<BeaconRequest<Substrate>, Beacon.Error>) {
    // TODO: Not yet implemented
    }

    func onTezosRequest(_ request: Result<BeaconRequest<Tezos>, Beacon.Error>) {
    // TODO: Not yet implemented
    }
    +

    Connect to a dApp

    +

    To connect to a new dApp take the pairing request (obtained from, for example, a paring QR code) and transform it to Beacon.P2PPeer. Next, register the new instance of Beacon.P2PPeer in your wallet client.

    +
    import BeaconCore
    import BeaconClientWallet

    // replace placeholder values with data provided in the dApp's pairing request
    let dApp = Beacon.P2PPeer(
    id: "id",
    name: "name",
    publicKey: "publicKey",
    relayServer: "relayServer",
    version: "version"
    )

    // connect to a new peer
    beaconWallet.add([.p2p(dApp)]) { result in
    switch result {
    case .success(_):
    print("dApp connected")
    case let .failure(error):
    print(error)
    }
    }
    +

    Handle requests from the dApp

    +

    Having received a request, you can create a response and send it back to the dApp. The response should always be created from an incoming request. Attempting to send a response that was not created from a request awaiting answer will result in an error.

    +

    The first request your app receives from a dApp is a permission request. The example below shows how to respond to it in the most basic way. To get more information about other kinds of requests or learn more advanced use cases see the Blockchain guides.

    +
    import BeaconCore
    import BeaconBlockchainSubstrate
    import BeaconBlockchainTezos
    import BeaconClientWallet

    func onSubstrateRequest(_ request: Result<BeaconRequest<Substrate>, Beacon.Error>) {
    do {
    let request = try request.get()
    let response = try response(from: request)

    beaconWallet.respond(with: response) { result in
    switch result {
    case .success(_):
    print("Response sent")
    case let .failure(error):
    print(error)
    }
    }
    } catch {
    print(error)
    }
    }

    func response(from request: BeaconRequest<Substrate>) throws -> BeaconResponse<Substrate> {
    switch request {
    case let .permission(content):
    let accounts = try content.networks.map { try substrateAccount(network: $0) }
    return .permission(PermissionSubstrateResponse(from: content, accounts: accounts))
    case let .blockchain(blockchain):
    return .error(ErrorBeaconResponse(from: blockchain, errorType: .aborted))
    }
    }

    func onTezosRequest(_ request: Result<BeaconRequest<Tezos>, Beacon.Error>) {
    do {
    let request = try request.get()
    let response = try response(from: request)

    beaconWallet.respond(with: response) { result in
    switch result {
    case .success(_):
    print("Response sent")
    case let .failure(error):
    print(error)
    }
    }
    } catch {
    print(error)
    }
    }

    func response(from request: BeaconRequest<Tezos>) throws -> BeaconResponse<Tezos> {
    switch request {
    case let .permission(content):
    let account = try tezosAccount(network: content.network)
    return .permission(PermissionTezosResponse(from: content, account: account))
    case let .blockchain(blockchain):
    return .error(ErrorBeaconResponse(from: blockchain, errorType: .aborted))
    }
    }

    // replace placeholder values with valid data
    func substrateAccount(network: Substrate.Network) throws -> Substrate.Account {
    try Substrate.Account(
    publicKey: "substratePublicKey",
    address: "substrateAddress",
    network: network
    )
    }

    func tezosAccount(network: Tezos.Network) throws -> Tezos.Account {
    try Tezos.Network(
    publicKey: "tezosPublicKey",
    address: "tezosAddress",
    network: network
    )
    }
    +

    Example Code

    +

    The following example shows how to create a simple class which connects to a dApp using Matrix and handles Substrate and Tezos messages based on the steps described earlier.

    +

    stable +latest

    +
    Package.swift
    dependencies: [
    .package(url: "https://github.com/airgap-it/beacon-ios-sdk", from: "x.y.z")
    ],

    Or in Xcode open the Add Package Dependency window (as described in the official guide) and enter the Beacon iOS SDK GitHub repository URL

    https://github.com/airgap-it/beacon-ios-sdk
    +
    BeaconExample.swift
    import Foundation
    import BeaconCore
    import BeaconBlockchainSubstrate
    import BeaconBlockchainTezos
    import BeaconClientWallet
    import BeaconTransportP2PMatrix

    class BeaconExample {
    var beaconWallet: Beacon.WalletClient!

    let dApp = Beacon.P2PPeer(
    id: "0b02d44c-de33-b5ab-7730-ff8e62f61869" /* TODO: change me */,,
    name: "My dApp",
    publicKey: "6c7870aa1e42477fd7c2baaf4763bd826971e470772f71a0a388c1763de3ea1e" /* TODO: change me */,
    relayServer: "beacon-node-1.sky.papers.tech" /* TODO: change me */,
    version: "2" /* TODO: change me */
    )

    func substrateAccount(network: Substrate.Network) throws -> Substrate.Account {
    try Substrate.Account(
    publicKey: "f4c6095213a2f6d09464ed882b12d6024d20f7170c3b8bd5c1b071e4b00ced72" /* TODO: change me */,
    address: "16XwWkdUqFXFY1tJNf1Q6fGgxQnGYUS6M95wPcrbp2sjjuoC" /* TODO: change me */,
    network: network
    )
    }

    func tezosAccount(network: Tezos.Network) throws -> Tezos.Account {
    try Tezos.Network(
    publicKey: "9ae0875d510904b0b15d251d8def1f5f3353e9799841c0ed6d7ac718f04459a0" /* TODO: change me */,
    address: "tz1SkbBZg15BXPRkYCrSzhY6rq4tKGtpUSWv" /* TODO: change me */,
    network: network
    )
    }

    func run() {
    createBeaconWallet { result in
    guard case .success(_) = result else {
    return
    }

    self.subscribeToRequests { result in
    guard case .success(_) = result else {
    return
    }

    self.connectToDApp { result in
    guard case .success(_) = result else {
    return
    }
    }
    }
    }
    }

    func createBeaconWallet(completion: @escaping (Result<(), Error>) -> ()) {
    do {
    Beacon.WalletClient.create(
    with: .init(
    name: "MyApp",
    blockchains: [Substrate.factory, Tezos.factory],
    connections: [try Transport.P2P.Matrix.connection()]
    )
    ) { result in
    switch result {
    case let .success(client):
    self.beaconWallet = client
    completion(.success(()))
    case let .failure(error):
    completion(.failure(error))
    }
    }
    } catch {
    completion(.failure(error))
    }
    }

    func subscribeToRequests(completion: @escaping (Result<(), Error>) -> ()) {
    beaconWallet.connect { result in
    switch result {
    case .success(_):
    self.beaconWallet.listen(onRequest: self.onSubstrateRequest)
    self.beaconWallet.listen(onRequest: self.onTezosRequest)
    completion(.success(()))
    case let .failure(error):
    completion(.failure(error))
    }
    }
    }

    func connectToDApp(completion: @escaping (Result<(), Error>) -> ()) {
    beaconWallet.add([.p2p(dApp)]) { result in
    switch result {
    case .success(_):
    completion(.success(()))
    case let .failure(error):
    completion(.failure(error))
    }
    }
    }

    func onSubstrateRequest(_ request: Result<BeaconRequest<Substrate>, Beacon.Error>) {
    do {
    let request = try request.get()
    let response = try response(from: request)

    beaconWallet.respond(with: response) { result in
    switch result {
    case .success(_):
    print("Response sent")
    case let .failure(error):
    print(error)
    }
    }
    } catch {
    print(error)
    }
    }

    func response(from request: BeaconRequest<Substrate>) throws -> BeaconResponse<Substrate> {
    switch request {
    case let .permission(content):
    let accounts = try content.networks.map { try substrateAccount(network: $0) }
    return .permission(PermissionSubstrateResponse(from: content, accounts: accounts))
    case let .blockchain(blockchain):
    return .error(ErrorBeaconResponse(from: blockchain, errorType: .aborted))
    }
    }

    func onTezosRequest(_ request: Result<BeaconRequest<Tezos>, Beacon.Error>) {
    do {
    let request = try request.get()
    let response = try response(from: request)

    beaconWallet.respond(with: response) { result in
    switch result {
    case .success(_):
    print("Response sent")
    case let .failure(error):
    print(error)
    }
    }
    } catch {
    print(error)
    }
    }

    func response(from request: BeaconRequest<Tezos>) throws -> BeaconResponse<Tezos> {
    switch request {
    case let .permission(content):
    let account = try tezosAccount(network: content.network)
    return .permission(PermissionTezosResponse(from: content, account: account))
    case let .blockchain(blockchain):
    return .error(ErrorBeaconResponse(from: blockchain, errorType: .aborted))
    }
    }
    }
    + + \ No newline at end of file diff --git a/wallet/getting-started/ios/disconnect-from-dapp/index.html b/wallet/getting-started/ios/disconnect-from-dapp/index.html new file mode 100644 index 00000000..d9e57f2f --- /dev/null +++ b/wallet/getting-started/ios/disconnect-from-dapp/index.html @@ -0,0 +1,26 @@ + + + + + +Disconnect from a dApp | Beacon Docs + + + + +

    Disconnect from a dApp

    +
    info

    This guide is a continuation of Connect to a dApp and may assume that certain code components have been defined.

    +

    Disconnect from a dApp

    +

    To disconnect form a subscribed dApp remove its peer entry from the client.

    +
    beaconWallet.getPeers { result in
    guard case let .success(peers) = result else {
    return
    }

    guard let dApp = peers.first(where: { $0.name == "MyApp" }) else {
    return
    }

    beaconWallet.remove([dApp]) { result in
    guard case .success(_) = result else {
    return
    }
    }
    }
    +

    Disconnect from all dApps

    +

    To disconnect from all subscribed dApps remove all peers that were previously registered in the client.

    +
    beaconWallet.removeAllPeers { result in
    guard case .success(_) = result else {
    return
    }
    }
    +

    Example Code

    +

    The following example extends the code presented in the Connect to a dApp guide. The example class listens for incoming requests from a dApp, waits 1s and cancels connection.

    +

    stable +latest

    +
    Package.swift
    dependencies: [
    .package(url: "https://github.com/airgap-it/beacon-ios-sdk", from: "x.y.z")
    ],

    Or in Xcode open the Add Package Dependency window (as described in the official guide) and enter the Beacon iOS SDK GitHub repository URL

    https://github.com/airgap-it/beacon-ios-sdk
    +
    BeaconExample.swift
    import Foundation
    import BeaconCore
    import BeaconBlockchainSubstrate
    import BeaconBlockchainTezos
    import BeaconClientWallet
    import BeaconTransportP2PMatrix

    class BeaconExample {
    var beaconWallet: Beacon.WalletClient!

    let dApp = Beacon.P2PPeer(
    id: "0b02d44c-de33-b5ab-7730-ff8e62f61869" /* TODO: change me */,,
    name: "My dApp",
    publicKey: "6c7870aa1e42477fd7c2baaf4763bd826971e470772f71a0a388c1763de3ea1e" /* TODO: change me */,
    relayServer: "beacon-node-1.sky.papers.tech" /* TODO: change me */,
    version: "2" /* TODO: change me */
    )

    func substrateAccount(network: Substrate.Network) throws -> Substrate.Account {
    try Substrate.Account(
    publicKey: "f4c6095213a2f6d09464ed882b12d6024d20f7170c3b8bd5c1b071e4b00ced72" /* TODO: change me */,
    address: "16XwWkdUqFXFY1tJNf1Q6fGgxQnGYUS6M95wPcrbp2sjjuoC" /* TODO: change me */,
    network: network
    )
    }

    func tezosAccount(network: Tezos.Network) throws -> Tezos.Account {
    try Tezos.Network(
    publicKey: "9ae0875d510904b0b15d251d8def1f5f3353e9799841c0ed6d7ac718f04459a0" /* TODO: change me */,
    address: "tz1SkbBZg15BXPRkYCrSzhY6rq4tKGtpUSWv" /* TODO: change me */,
    network: network
    )
    }

    func run() {
    createBeaconWallet { result in
    guard case .success(_) = result else {
    return
    }

    self.subscribeToRequests { result in
    guard case .success(_) = result else {
    return
    }

    self.connectToDApp { result in
    guard case .success(_) = result else {
    return
    }
    }
    }
    }
    }

    func createBeaconWallet(completion: @escaping (Result<(), Error>) -> ()) {
    do {
    Beacon.WalletClient.create(
    with: .init(
    name: "MyApp",
    blockchains: [Substrate.factory, Tezos.factory],
    connections: [try Transport.P2P.Matrix.connection()]
    )
    ) { result in
    switch result {
    case let .success(client):
    self.beaconWallet = client
    completion(.success(()))
    case let .failure(error):
    completion(.failure(error))
    }
    }
    } catch {
    completion(.failure(error))
    }
    }

    func subscribeToRequests(completion: @escaping (Result<(), Error>) -> ()) {
    beaconWallet.connect { result in
    switch result {
    case .success(_):
    self.beaconWallet.listen(onRequest: self.onSubstrateRequest)
    self.beaconWallet.listen(onRequest: self.onTezosRequest)
    completion(.success(()))
    case let .failure(error):
    completion(.failure(error))
    }
    }
    }

    func connectToDApp(completion: @escaping (Result<(), Error>) -> ()) {
    beaconWallet.add([.p2p(dApp)]) { result in
    switch result {
    case .success(_):
    completion(.success(()))
    case let .failure(error):
    completion(.failure(error))
    }
    }
    }

    func onSubstrateRequest(_ request: Result<BeaconRequest<Substrate>, Beacon.Error>) {
    do {
    let request = try request.get()
    let response = try response(from: request)

    beaconWallet.respond(with: response) { result in
    switch result {
    case .success(_):
    print("Response sent")
    DispatchQueue.main.asyncAfter(deadline: .now() + 1.0) {
    self.beaconWallet.remove([.p2p(self.dApp)]) { result in
    switch result {
    case .success(_):
    print("Disconnected")
    case let .failure(error):
    print(error)
    }
    }
    }
    case let .failure(error):
    print(error)
    }
    }
    } catch {
    print(error)
    }
    }

    func response(from request: BeaconRequest<Substrate>) throws -> BeaconResponse<Substrate> {
    switch request {
    case let .permission(content):
    let accounts = try content.networks.map { try substrateAccount(network: $0) }
    return .permission(PermissionSubstrateResponse(from: content, accounts: accounts))
    case let .blockchain(blockchain):
    return .error(ErrorBeaconResponse(from: blockchain, errorType: .aborted))
    }
    }

    func onTezosRequest(_ request: Result<BeaconRequest<Tezos>, Beacon.Error>) {
    do {
    let request = try request.get()
    let response = try response(from: request)

    beaconWallet.respond(with: response) { result in
    switch result {
    case .success(_):
    print("Response sent")
    DispatchQueue.main.asyncAfter(deadline: .now() + 1.0) {
    self.beaconWallet.remove([.p2p(self.dApp)]) { result in
    switch result {
    case .success(_):
    print("Disconnected")
    case let .failure(error):
    print(error)
    }
    }
    }
    case let .failure(error):
    print(error)
    }
    }
    } catch {
    print(error)
    }
    }

    func response(from request: BeaconRequest<Tezos>) throws -> BeaconResponse<Tezos> {
    switch request {
    case let .permission(content):
    let account = try tezosAccount(network: content.network)
    return .permission(PermissionTezosResponse(from: content, account: account))
    case let .blockchain(blockchain):
    return .error(ErrorBeaconResponse(from: blockchain, errorType: .aborted))
    }
    }
    }
    + + \ No newline at end of file diff --git a/wallet/getting-started/ios/installation/index.html b/wallet/getting-started/ios/installation/index.html new file mode 100644 index 00000000..93623fd5 --- /dev/null +++ b/wallet/getting-started/ios/installation/index.html @@ -0,0 +1,32 @@ + + + + + +Installation | Beacon Docs + + + + +

    Installation

    +

    How to install Beacon iOS SDK

    +

    To add Beacon iOS SDK into your project add the dependencies:

    +

    stable +latest

    +
    Package.swift
    dependencies: [
    .package(url: "https://github.com/airgap-it/beacon-ios-sdk", from: "x.y.z")
    ],

    Or in Xcode open the Add Package Dependency window (as described in the official guide) and enter the Beacon iOS SDK GitHub repository URL

    https://github.com/airgap-it/beacon-ios-sdk
    +

    Packages Overview

    +

    The library packages and their relations are described below.

    +

    Core

    +

    Core packages are the basis for other packages. They are required for the SDK to work as expected.

    +
    ModuleDescriptionDependenciesRequired by
    BeaconCoreBase for other modules✖️BeaconClientWallet

    BeaconBlockchainSubstrate
    BeaconBlockchainTezos

    BeaconTransportP2PMatrix
    +

    Client

    +

    Client packages ship with Beacon implementations for different parts of the network.

    +
    ModuleDescriptionDependenciesRequired by
    BeaconClientWalletBeacon implementation for walletsBeaconCore✖️
    +

    Blockchain

    +

    Blockchain packages provide support for different blockchains.

    +
    ModuleDescriptionDependenciesRequired by
    BeaconBlockchainSubstrateSubstrate specific componentsBeaconCore✖️
    BeaconBlockchainTezosTezos specific componentsBeaconCore✖️
    +

    Transport

    +

    Transport packages provide various interfaces used to establish connection between Beacon clients.

    +
    ModuleDescriptionDependenciesRequired by
    BeaconTransportP2PMatrixBeacon P2P implementation which uses Matrix for the communicationBeaconCore✖️
    + + \ No newline at end of file diff --git a/wallet/getting-started/web/getting-started/index.html b/wallet/getting-started/web/getting-started/index.html new file mode 100644 index 00000000..41d7e862 --- /dev/null +++ b/wallet/getting-started/web/getting-started/index.html @@ -0,0 +1,25 @@ + + + + + +Getting Started | Beacon Docs + + + + +

    Getting Started

    First, you need to install the beacon-sdk package.

    +

    npm install --save @airgap/beacon-sdk

    +

    After that you need to import the Beacon SDK in your code and initialize the WalletClient.

    +

    The beacon-sdk will automatically establish a connection and listen to all Beacon messages.

    +
    caution

    The RPC URL that is provided by the dApp can be an insecure http:// connection. The reason for this is because it allows for easy development with a local node, without setting up a local SSL certificate.

    Especially the wallet should care about this and potentially show a warning to the user if the RPC URL is not a secure https:// URL.

    +
    import {
    WalletClient,
    BeaconMessageType,
    PermissionScope,
    PermissionResponseInput,
    } from "@airgap/beacon-sdk";

    const connectApp = async (): Promise<void> => {
    // Only ONE WalletClient should be created and reused everywhere.
    const client = new WalletClient({ name: "My Wallet" });
    await client.init(); // Establish P2P connection

    client
    .connect(async (message) => {
    console.log("beacon message", message);
    let response: BeaconResponseInputMessage;
    switch (message.type) {
    case BeaconMessageType.PermissionRequest:
    // Prompt user for permissions. If multiple accounts are available, let user choose one of them
    response = {
    type: BeaconMessageType.PermissionResponse,
    network: message.network, // Use the same network that the user requested
    scopes: message.scopes,
    id: message.id,
    publicKey:
    "3b92229274683b311cf8b040cf91ac0f8e19e410f06eda5537ef077e718e0024"
    }

    // Optional
    // If the user aborts an action at any time, you can send back an error:
    response = {
    type: BeaconMessageType.Error,
    id: message.id,
    errorType: BeaconErrorType.ABORTED_ERROR
    }
    break;
    case BeaconMessageType.SignPayloadRequest:
    // Sign message.payload and return signature
    response = {
    type: BeaconMessageType.SignPayloadResponse,
    id: message.id,
    signingType: message.signingType,
    signature: "edsig..."
    }
    break;
    case BeaconMessageType.OperationRequest:
    // Prepare transaction based on the details give in message.operationDetails
    // message.operationDetails only contains a partial tezos transaction. Not all fields are mandatory
    // The fields that are not present (eg. counter, fee, gas_limit) have to be set by the wallet
    // If one of the optional fields is set, then that one should be used and not replaced by the wallet
    response = {
    type: BeaconMessageType.OperationResponse,
    id: message.id,
    transactionHash: "op..."
    }

    // Optional
    // If the transaction cannot be prepared, (eg. run_operations fails), an error containing the rpc error can be returned
    let error = [
    {
    kind: "temporary",
    id: "proto.008-PtEdo2Zk.contract.balance_too_low",
    contract: "tz1...",
    balance: "100",
    amount: "200"
    },
    ]; // RPC error
    response = {
    type: BeaconMessageType.Error,
    id: message.id,
    errorType: BeaconErrorType.TRANSACTION_INVALID_ERROR,
    errorData: error
    }
    break;
    case BeaconMessageType.BroadcastRequest:
    response = {
    type: BeaconMessageType.OperationResponse,
    id: message.id,
    transactionHash: "op..."
    }
    break;
    default:
    response = {
    type: BeaconMessageType.Error,
    id: message.id,
    errorType: BeaconErrorType.ABORTED_ERROR
    }
    }

    client.respond(response);
    })
    .catch((error) => console.error("connect error", error));

    connectApp().catch((error) => console.error("connect error", error));
    +

    By adding the code above, our app is now ready to receive messages. Now all that is left for us to do is connecting to a dApp.

    +

    To establish a connection over the P2P network, a handshake message has to be given from the dApp to the wallet. How this is done depends on the platform. +It can be through QR scanning, Deeplinks or Copy-Pasting the handshake message. Once the handshake is received, the new peer has to be added:

    +
    const isBeaconMessage: (obj: unknown) => obj is P2PPairingRequest = (
    obj: unknown,
    ): obj is P2PPairingRequest => {
    return (
    typeof (obj as P2PPairingRequest).name === "string" &&
    typeof (obj as P2PPairingRequest).publicKey === "string" &&
    typeof (obj as P2PPairingRequest).relayServer === "string"
    );


    const handshakeMessage = ""; // This was received from the dApp, eg. through QR scanning or deeplink

    const deserialized = await new Serializer().deserialize(handshakeMessage);

    if (isBeaconMessage(deserialized)) {
    // This will add the peer and establish a connection
    client.addPeer(peerInfo);
    }
    +

    That's it, now the dApp and the Wallet are connected.

    +

    There are some additional features that the WalletClient provides, such as client.getPermissions() or client.getPeers() to listing all the connected peers and permissions that were granted to dApps.

    +

    Using client.removePeer(peer) the wallet can disconnect from a peer. If this is done, the dApp will receive a message that the wallet has disconnected.

    + + \ No newline at end of file diff --git a/wallet/introduction/index.html b/wallet/introduction/index.html new file mode 100644 index 00000000..6a05aa5f --- /dev/null +++ b/wallet/introduction/index.html @@ -0,0 +1,13 @@ + + + + + +introduction | Beacon Docs + + + + + + + \ No newline at end of file diff --git a/wallet/messages/substrate/index.html b/wallet/messages/substrate/index.html new file mode 100644 index 00000000..f5498b25 --- /dev/null +++ b/wallet/messages/substrate/index.html @@ -0,0 +1,13 @@ + + + + + +Substrate | Beacon Docs + + + + + + + \ No newline at end of file diff --git a/wallet/messages/tezos/index.html b/wallet/messages/tezos/index.html new file mode 100644 index 00000000..13f1127d --- /dev/null +++ b/wallet/messages/tezos/index.html @@ -0,0 +1,13 @@ + + + + + +Tezos | Beacon Docs + + + + + + + \ No newline at end of file diff --git a/wallet/security/index.html b/wallet/security/index.html new file mode 100644 index 00000000..549517a4 --- /dev/null +++ b/wallet/security/index.html @@ -0,0 +1,14 @@ + + + + + +Security | Beacon Docs + + + + +

    Security

    The RPC URL that is provided by the dApp can be an insecure http:// connection. The reason for this is because it allows for easy development with a local node, without setting up a local SSL certificate.

    +

    Especially the wallet should care about this and potentially show a warning to the user if the RPC URL is not a secure https:// URL.

    + + \ No newline at end of file

    #neMU#UF^`S15n!9%2KkDA@sDM)~rC{Of*;fY=Iv_`za4xvXi; z_iq9!9QiB}7N~;&LI2`8#xPy^X@ec`7+ktIEO?XmUL$wzuoR7q^a4?qLJ(V-ZJ0Rf z2R>G#6bMQ0)00s@MRA(9iczDSP?|523RBld(9vf_4@;{vr$@2_8`UGNdLUg`VTxBM z5I~6M{sQijbbRYe>N5m{**!-BR1~lLy`orgY4NcF{`3|8w7vSWPCm$d8c1E_e%We$ z8xF3`?8i(Gf3Z zR0ifbrtU!Aj<%cA+%f|~DTm(L(H_$xf-q; z?gt}m4%H2yY3n0D&#njcF>?YJJw3`u_|rJe`l1*l`WR?UQ7~;Vjd0k&uLwvN3le$6 zOr4ll{UEtw*!bsG84Lf!jY684p+$pd0BhCQ!cO?;{J!HrFO~1h(oc>rIgOSnJpzt? zJY=2N4j9(7=qx2@;L=;Qmcj#hBQM*k8;n|s+4<*OIe?>gwur0V0BP0s8EU}}jh2jf zh<9nkc|2ggjUZPl?|!Mt9Qtax<=Z_%R){zJl-bj@2D53rGc&pO+vzT;C5FfY^svtC z(L0|W6n{$_5PPDcMzWGifw3!SU`v-dQQFfZ=?aHn>YclUciq;jur0Q*C=hL;0o5ciP`QCcr_yuRB4o07$Ox#^gZV zaX==su&0z_TT{{SNj#{8gsnZDz&~s$a1vSvv!f=Ak4%NJKq?%e-C<+mNGqLvvGtZ( zI%LC_XXE{ntN_@~U%CE>^KDVQNt7{|cuHtw2$iF9Iq}iZ-popV(yfJ8URa0;XJ`?y z!c6*vIj_0%=q|%T@G$@ESNaKY0IBy&p4zaNIm%p-Mki2_12C#=))Bd*H<(g2T{hV|CEm4GDvJ#FwbD^>!l+a^_cx^lX39k$mnG!JNEPyf!HS;-} z9o%>XSbJhh0XQB4?t_efF{y9DT}nzXB3;lRrhkhcFCFrCzo|$gM<1#P zY;Ll>ilRW&4;&8`A;5>_cq`up;t5V}Sosgo=f8@`|L*Drky|LKmvZYG`q(Xr|v^?hS)ZV1l4Hf1lutR>V0B}%t5h_-hSq(E= zY<^F$X=|MqZEm}zA5+LuCpOKkt5)Xw_nK}Dlkrb41H@dEExcKsdEX)NiJdlGziGn2 z($~E;Ea{eAp==6(b!RK%917)lHPCGe;u!XGQ-@v+5`AzxH8P*2#Qx{QiA0 z3bC}O9xUYFBFajcE2+=OjOip@h5DuK$W>cl`S=}4P@EDOI+4^HK5+he`X@sL$I#Y} z%!N5c%{dpu9W*)hQ{M=ox%$&gNlBjd|9}j`TC~c?*l+p$j#$3t{XLR$>X1K{>Z#*I zcwh@p|1Y0P6R&gi{YGcB6ld?CqF&;M;O9=_$C_2q4~!B&%xrgBXHV-MyPouaw0v;w zMkp@2NqTIq-PjrM-!7Oz{7pzMXup!WyZB)d@($3lxRN%fSK$eer;i9VM|n-HS|vdB zZtTeCAP6YPSKuF8O=wj59PB?)GG|7-x4r4gU0?mkns@~LdTVp31L?iouH~cT8D0_0 z(yLVU-h7&SQj`R?f)*_8(v}-HT#p}RfHYktWanODnW545?z;_&Uus%z&KWHgS8XGd zQ>pu7p+7jGQR%|u6R4(63UqUp^|U~Fgh4}{_uXMV9w+#HRnI8^-7hbjslQ{blE()SyPZ zyDhGvQJ#C`!G{u&WP6}Dt75y^XFGjcON@KNqd`$Q-t!V$Rr7~z%qD=b^)wZzbz`FIa04WXAa zP<&q}EE#12HprUQQ*;Z-f}8n2{MO$8Kf~jZ=TAt1Adt(k0o>V-)CY3g70lzNw6Va-pmVHGGQv?3}UoY8n1!pJDo|9Qj zH-~!NusW~C5Ps`LG0l3Cq=M^vbVF`_R3AQSVykjN0-`H50f8RC^ zjRAA^sVJo<{eF$S>rElWjvE8q2v?vYIJnOu=4gQX$X~g5Ξ5vv;nFEy7i|>gT^0 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 Y-MoWQcgMIk*(T2G4atH@mI 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 literal 0 HcmV?d00001 diff --git a/img/beacon-ios-pairing-2.png b/img/beacon-ios-pairing-2.png new file mode 100644 index 0000000000000000000000000000000000000000..c8cdb8291a1d1fc54430393f6b79438bf57aa697 GIT binary patch literal 114734 zcmeEtgjlT)HkTUDDl+ba%Xm=TRSj zzxPjg-}^b2v+Oy$J3BKwJ3I5e!E*23K1F$s0s{l{R6<-t0R{#R3IhZG4CygYvvldw z0Rw}wXeul$Cm}3MDrakLWNKju10xFfu9C35;ZM z23C}S5b{eh+R4~E@DmMu(0yg1oFeBQzPh)9Dl7=y4zS}D@s(NIxg zbEW$|W6#g!q?D{QKVM&+@82trUceEc!_Z=`88n8*2ir36=p0fGTfjtQ=FZzlR2d}g zr%A_WAZNT``H>fWW0(|8^DL894;y#Mw+s^oo;9992Eoh1cPoLrUTGAa`-vgpOI=Da zXZ9ZAH)QeQtk3cLdiwgFZ;-|G%ef-M;PCVmuJT_>--g^9_ug;p7C}aHH@~CFRoLb={EXsC~sv4~iu})suax%JV`sg}7)C6@keA{*9i} z4$el9{<=&lBQLAdbjRED_#O(JOVl>l`H_#exRu5|cS^-UnQDnlp(skDKazjwk{Zcg z$F$SguAsWzW?N?9o<&($i!w@xefh2vftfbgYfFx6UOv>y-M}GT8fZG3RzmlDpokM-MGRj&7`FxhdZZYd5uWroaLgSaa7CRQO&zhQ|-!5CW zwKe!X%gM1g>Y%O33nlni0o*~I+{af0Jg~|BAmQY}N4faV{pJNy_28*n!D@&c-o~wrU!Eei z${)aS;p#luXt_L~t|5Z>ptpWLP`{ve!{77P{Z4@-5QFhJBV3J)u?-Pf6e|Kp|%eLL` zV=EdTlWX{9k%+@5+BBEv4%3}Le1y7Q3*P*p{Ju^8`<4L{#-@BW3%jtf==WsxYiEu7fivm80molW{~PDT>HqqqoHI#lyv| zV`E~T#AwBQj}?(Di0z3Dqt{m0Qoa&Vq0o$Q?+P~HcE-Mhsg1qyx``7?{~}jUiyULo zLoNAqjc5&dEt6GdN+Th&PgUoeR^Du`o75$4tT=miSsrSh^C;`q$E~MZ5h(KQBJFSe z3(6F}DXjTP#`gr#%Z#b8E3qruXKs;=_2xe^b7IG4=Vx!!Xw;~j=C0&>F2t5~Ip|bj zU*TSXTH(PHW+k~XII<~vLUDq2RRaAA^>qooQaF`7Rovoz;-~k0k%jeHB0=Y~^Jl5X zn|<#GF#0B0GOap_2uNNTnK_vvy+UE%V&5}!8#ge!GR-!}Gv_en8~<*iZsKpwG&Egg zFKBK;?Vdd&J>T~|q0@+OG@z2Hf}$ecRMlK}gm`FZ40$keb7zn{hb^mj@N`&aglUYo z=ymSfk>f$^pRrrXL#{1K#$^cveYWe)>m`j<9%+qQp2Z%4ce&nqf)yCexx=;)Y!k2 zqYPC0Ub|jfr8WtCxw^Ibb=Rfu6rGcy8eA=G^~g?o18IFHab&}4@rV7w_WVlAiTKgQ zP-ds%LiD!!+U02PV90*u!Z!CzQgR1hpU0Zz3e&08!QJA@R{8gwG5o`)2TUis2a3lb zX9WkY%hrpjTe{o)M2pW#7}MA>2%izD5lyxaEgf*NCoPd~q~Qu~_;$BMw&1qN3Ns32 zkuljV)e72G|8Rdb;FRK|qezRi=4bWPoyh2U71z#$jh2&|li@`<(oE1A=5Ay~muO@l z`NCW0x0YdBVH_cGZ>!toK45(?)8}iu>WFJQYwHiw#B^lWVbH-@Nb-^ml9)_oVO_Ak ztGc`m4hu#IKF9k4QiCoY2^IMhpvp33fR;f#DSk4aWO!mu{0V!CmcuCRq8zEwkKLSR zoS83mZWQj)nziM~ol=%l6rxxowo;(%_HvtajM!+wZX&oD6QswJvB+Q>!HI#X3W zHp+MTcVn;x=n%3Z30*t)qW9Xxd*dAnMy7f{>nua6v_W>XGv&z@+Kml4Z?fv01Bb$xUNlW7>V|qwO$nIOTKGM;BMeORli}?@>`$igc~?~`Bb`ih1@HZOJB?JJn) z{$w(to{gd?YCOF>&-i*8uhKp>*CWc3rQRU;IceaNL;Nt;cuY z_fXYW9dN(9^+qH>*WvGT=9+G}!aS2-`ViY`C|i-LbZc~{=^m~)kf*aSZ!Sxb>TrH| zrE>?mzLoO4W9um|+i)2$f4uYf9oiN8yxYrr(R-=x-l23K&)mBY8w};DO*c!Yos~;9 zOLr5)6CbQO8pqsR7n57-sv=7wY4+I`!aZnjaxV`TX~uKT21-*?!$Frm_X>AoH|D+7 zi`L;CteqW{T6B&XxB`Q)Iax3V>oC(KosR_SkYP;k3_N+s23Hf``!stlcN4n_CBfwG z!I7E~z>rPAPRe^%RpffoUxAP^Gh8@fW@Z>VnndFCtvP>&>;zX)hj(_&e}(m8e!OUY zI5}x@IypIE_G-!sM#GNg`s$-RcW9%*b2Sb$vbpV#i~Foo$M<<1O#|=WJVHD;zf9FZ zCG_wUFtY$$-cN>V5=JsIF!Vqf2?ieaISc|&f(5>Ou!MigVz9I@kN&BLgMkS&g@OO| z&O6}#@QDDv4{iRvKZ*)~K?MH80=`aZaKGP%gQh+DU50-KJcAKb6qb+x?us954GpdA zOsv63U;z)H0@+4f-3|r@kLuwIE1^Jn0Q5g$s-y;1lac26U~LJ~GqBb-1UXsSJoE$e z#)$_gS{j1&NS!P#tn7H4c**~Hg9j)-R5O#4{__ghoR?fpMvhe2+SZVi1H=MiA?HIO zB_(}hYhc8qAR_jwIq)AZxd|9-!^6z%=;#P?WCK~-8Z*D-=H_N*VP$4zWdhz{vU9cq z>p3x5*-`x4$?twd4DCMHn%aO(t*uBO`qk67wg>Z)lRpgf=kqU}hEAscjbvr_Yg)hr znIE1ozXY)`|LGfO`sSgQN6ysA&_Z3r)DqwsFb3aCmRDSF{%P=kJ^F9RznZH3*OY_% zf3*DT$^UMtY-eaIY;6gQ3FiAxUcZL@`{A#KZ&7M^M6*~rNH*Vw)v6M24O~!M!_q| z!9Kb!t{#7G=2DPTXACtqHd=5=nfv(@0?EHqmOY=*bw9ON?+km<>mLj+?)Bd#87e^F zZxwt>iyru2rMLig+TdES0379?OD+nY7A#e!=`8nOod6sT^bO+w=q(Dy-%7%P0sYfo zop}kxZ@?f&{J8`qu+j#Zx~S zZvvtYc_|DshOz1QxqDT=320=>r>R3D}NO)D+f8SOu!V31=dVNvFyc2tOQ z{-PDeA2je6QKa5clmh9RQFA@M{f9XA?td|fc_R4g>$X9SAYtRf-a&p-)l~Ejf)_yK3BIiWFV>MwD7{0Y&=w z;#Y$hM(=Ey#2$wkOBzkf%Ge5vDTS}>=G0FKIbuF@OpBY17v_b#o^FjD9S`vL4u6v} zZ1F*0HU2?#d9_`}&mvTcG}cB3r^=0culJjnS31Mv!};&Ha?0{se~f8t z#<44bkeRMk)T|52s#QT434Ads^Z7fE#$|r3=$BYt{#CN6e8UB*#Yyc&y5*!UouLF2 z1ANzoRWR3U1wXb6z76^}Gg-TTieaCna$C5EP{-Y}s9(-{Fc}t%mbCO-x-1;&#)>Or z5B9BA9NBLN(Vint38)7X<{p`IKGj9kA}|V%I8vwB9LGp`Zue^%0xcL`&AfXxD_Oct z9(1aHS%lSQWAp^vwpnk^CO_cR6HkswZ3=l+z2>iP)-H52eHr}ZuA&5L6pfLdZpuk# zJ*d<3oS|vqlmi8X5Ivc#qbhH0W3~RDd4qv_OX6Pf=)~LK#F}*m0N?`=RAYHM~ z&y^7>@r`1E{;Rl^d!|#q*3!h(j77KOg-Lbff0D2YT7~gkl$H=Rp}l|qKAUJ(?6>Wc zgMpu}vSipuc1+oUZbJ|TpGQhWQ+Hcd&ry%$6xig9y^-HshL^KKUh6RwXmllW?X?`m zmQZ*3rp!;L==qL;+22Yjqfho%cg{30{IgQb4N5&dJx4l@*(kley=&QtR>OC72}iM4 zRc6fK-liHE5mEl!GC5rvOOw|E!8+`8Ki=U$Ii7-||J8AU7ECYPYR~&Sgb7fcU~3?H z{ET(eoQ`r)935D9OKI%|B$I!~!_nn6EqKKFfbf^j;$V227dNP&aV>hmnMHak>Nv0A zUT*N;|4dEytCrhT*o-^)*)L4-uL<_PKz{Q4l{nOX8_%-^IgZO}maBHBtQV^=oh2lD z@Y^6$A6sRrqDPbIZntd=T*Ja~*iaC^+MQWu&*TgFx7C8!7 zbvV#X^|c?QGSHw=(}MWkElVaJ)e{%&*%xu1OlA7enENa~{P6Sjt}WM6lsUlY^xRw? zvk}|PLG8cEByu!5AFTMKVldS;2Gw}~!+TP6_#vlV;iyVJ^7GKv*9x#{*CUeT#7h7Wm-`<83 zy8t#mP64BCOm_3T%gj0sm94AuHCy$5&$MP3654Uh;w^d^Q2zjP<~=Y3&Ovfr5mPAu-543p$@?2zK%1hzdf5_wOj8~D{3uy)%u+9E%f-u zYkMVRRrPj|LqYhUG6c!cQh5{x*O_bxKJxl9LL6^?ixS*&x1MMXF_;oP*utd9=Nr|` z*m#WkuXt%`;XKIkKezFkhA>ri)iz+%vK%q$Hfj;OY^JNV?WG42(+}|9*C*M0M=lMT zQ!h7?X!5wb%Kg%ARfz$m^WHwHvrqosORZYS9;aTe>x%}N{b4^HtG8wU!*V`$OlI?| zlOG3S-xU$7K~MwziEX)2KfEWv-4pbH#Ly476S|&7OzqSv?>B`g3`E=?wxY$F9c0vK z8d*-~t;T_}RftZCK8`Ty)ucW2|7-qkKZKSWDW4WeJ|xIfS8a$+)N)B1ERUe_a7 zW+&xi2f@){CrP4_$`zwZsphnh>g7UQGWBnua+NRfZyA%bXuhgz(ldXru3iEu z%%?TPu&dlPY;#i==`pj*7r6~n#hyDBengo=x_;CvUgR+|*-`R4X?4OmKQp7y>t5=N>#F%$KpEGUu@#fUk zc-)B}q*;N0=Szymb@p+kqx%v18;rz3;oF0jfO~d6HY!E_oB0f4njQq^V}TD_KS%ST z)kjk&!)ycuEnB#~?VfEQ0N#PXDS3p%s*i|P@s+=Miv&$_){>50Kf4cqmPI=Rvo_JP zD#4=uu!GfpOKA!)t_FQyUMdvp@M=3$-S-uEv+e4J>Q__xgZw@?o38~Hz?)`g6+uSE z4DyL|h|}HOm(b)pvDFtxJeBL6nG_%0O=tH`lFeCH677CXzuOsISE9StD~n<7@25Ay zCvf1lO5et1l=lO{KLH8pNNIoh;63==Mrl$43}G!VB8lDuHJl8`_;aGAZ*SqNCTed# z3DolAhhOu8eFU%1Y1Ts>S9V@6m|QjJf6oc;83WJ2X{568olMfbPYN*LmGC|yAPxNZ z8MvNLQaex)tBoJYr>!m!a{S#Vwz>kuS^C&@->AT??_OzUw~^1H*kaV+&NZAhRrORU z!hR!j^1N5?={!Z|r7J3&L+Ej=*`NMCs&I*49ejS;X80oZwAdT#u;k5$IuyIO;#DlA zS~ak)=k4jMk2qC~NVC!&B6`jS3|6*9Bq}0mmWK%;gZ?EVTwh30tuW9lR-&Xp!8^lV zSJu#<)KiA>edy7Gr@~s_`3c8^Sm>e$MO}RgYdq{HZwtT$e9XLMd!WR z4Sn88t#+$n@(ChFH&0BSSG2g%lT1(3LxPPoX$$hpoQ$LylsDX6EX(lZD_|QNf|@Z{ zV|P#0)-a4o&0I5muBdY6tG37>AB<9WNS>#e`xg9;iH9zOFh zB4`~rU@BX=;;^3AS~NyDTq)xc!>vo$di&buqgOc7owU!F_S9tQhJ$T?n{vfx69`1T zfJxeZLmh)~XyWF+M2OnUxn=v3O7f%v0FlE8k_hz@MHm8#Lesci%=Y zgcqlY@Q*i9`O!A<`^t=f4VYFNPS0=8<9e3{Fb3{B7-hJ1msqu2iwwo}Wy7~q2tGm+ zqEvbIJy;s!4qn#?=-Kbo)X3g6Kwykql|6*A_ESMugGop6!?$Rqkex;33vpS`;H@L| ztqUxi`j05u*6J8y?pG(>T;Lu2IE$N$Ll>+>CX-=UWw+M5k`5P9w19!7cNj6Gae6Po zR4do0>8tT_{9%M~aFiE28G9CfdmqAi*DF@P-?qkVn;{l9l?1e=P9!#?lcT$1#*`J2 z_)LuM?;?&8h^^N7fu=umkoA9gDSRN=D}C4Gu>p66{<_SoUK%)@wu_R6cC}+tT}B1v z>T{-&<9CLg)#?y?Th1#n>Q|dEL2)5)W?dxKY`qZ`BoLJI*es+zIrl~Ccuz=k<+ATd zu=)>VbBCWct#Td>we>aMK|kttaC0V8KGS+leh=@$;}KjVE$;Op7)LP)Ll8o>CoDA` z7v2;CUr~*sllkB7!plD!!$RrJ#QbW~#F=dqF===DXd1^Kq3|oxq0u>P4-)nzdDvCU zVVtH_-bqJ2i~bB1_%IDN+iA1*Y}#Bn*gh%H#P?iFfDmIO0SFePRUrA{)^eFWV+TB} zxMyA^`kV{o_=ut1J$j-1kKervnp?(&g0{2C!ey!O^jeBO1#3F6`NZ`?c@??o{mjV; zg_0~?y<;pjrk=;E1h%e`S-QsQYQfQnr@0jPJo6qbN5B*5v7azRYjqe?R{hqNPRBM= zQwK_aL20GcNvyp3)nR3X2)!_TeuBan3yKjm@Fw#IzAOsXR?5y*LC7Nx1DB6)lTKHN z1U8BH4-u0ULFpk5zH6nO#3Aj2$WKD4Cg$K7UTcn{$HByS4B z2hZhW04iAAcqJLee|I6?sk5nHec}hYu_3crYSLKjHtkoo1bJHWd!km9y^p7B36U`U z5%V@Z1X%DdfSO5f>YW~A5Qd13Ip~IYX)D6g7I{K?`SJ4b%$fA1@3jAi z=NuMlROaMoy_DbvkK8Vj0J5XnsNNTpBff!{n-1!N-$#FJYd=;*lDTf7>H6Fb_!919 z(c3}QR>!=1A6VCpq5(nJAc^2YYtT5%MrjWp9bnhJ-mforJL;y15_N6iGAbQ&&{hG3| zd}Rja&*#{6PoKYvz+=*AdrrgI2V103NnfzZ?$78T)tRw^V!@Tk)xz9Z>yHz;L=g`2&iirt!h8L9z_kw=e5|QvC>i*)het#d+F*= zQFV!|9Z!0Uz2Wdeuop7%vaT=_)RJ0s9W+O+X5X;)jEf)Rs4rGah%=hSA$Cc7!`&G< zli3OR@HH|Hv$usG2!ecxV^uYI8Wpx}h%s+_+vpqrB5{^E)zO{L*?Al7N~d1vy!cC5 z-XkRyE#B2s4f$qN8-4-tm)4(X$7Qs%>%N3qp*wU0^?pRwR%Buf#E?v&_9kNvs3JR( zKElp2a-Eco_j0(c(f-~O%WTo$z^6)h;|J-5ODbqCpTVlw+477hMWgSmoVy-`MP(;8 z(&`=~Nx1o>ZRj*n+Y?$4-e3<<8X<6pWI$m%1a(8z9u1cJVxuZxHk=jAs8J!#ymI9y zF>on4g`!n>1Lgwm1Q}2+oO4z{`5vA(|AhJupW&V79QQ^mLXD`(6CM_ ztEhaE&Ja0GBxfTU{`74#Yb~J>$b$8h;idiI(G35HOZ?(FcCkdzFlA34xc=d&8bJa# zg)-*`1$p@;I6ZdsH|&iwKqq>XN(;Kviw((1o;7kb-;xWiWdM0 zagr>x+f;xeQB!9>gmH@vObDd7h0Ixe4@pm^mfw7i_0kQhla`hVTD>?c7x9Cn*1>T# zqr6@U?TRGVO7C9g@@RqtlZ)N-uxx8DRld*T-7YMbjvLKU-PF%+y8XJK)bR}Oz04`K z^=$&Rr1SaHE1fK0J3x;7aJ4~N6|6t;#nR9yY%$eg zL8yv3?{Hn06LeD_SzZ{>62%SwN6XE zoGr|bNuLlCMY&$ZZwJ)qyjm(^>)i)9^Mzh(=!up`f=)WY+bnOET{h?X(@xWFuqbQV zwh+Rln{C=4yYXv&iL_TptMuS#Hv|?W#9*xvRAn*;dE-e{m_!E`emZc2i0y?=)xtLU zwmKYZSQjc_oIdX}`#HU4A3}!51Kzocp2%VJ2 zTgx8=;eYUOPCg0mV5+Qs%{XFmD6T*1k^HzWqxs!KVKaaVmppZ(pOjGEYytt*A~11> z9c%1-!ql=-s&81EOc`E_>`aw>;av$@(;iy4fpPDHL%oItg;ZNOi;5=+uj{EfZFll{ zkTXg;W2jhGC=*T5sAXg>1DjN{TCM* zVpWn2jcmHaRKQWWq>3o$5;Z@>O5R9u1)T-F#jVYTy~L>tBzDPd7G;@G5(h-5jX#JA z+TI4dw-P^L({h%W;(=M##~cr2?OI-?aS{h%R-Z zOh&m-_chgKYKWPZ&wy;qRR58tgF4`)vKFpQ6cbOlOq5=TD%v2|a~1YLmRu^>u@(2X zT_P8#Bun|EZ5vRyquJT_u7<>0ST()#V6vrW>1(ig|+)``cHa@q%rEInv4m4p?WLBkHR&_VEpg4boYMFfv z55sWy3zb7}lVWjQGT$qXd-dI_#e~_o?U#spj=`TDA9(3eSO!rM7=tnDNVGz~)nA>iDj1${tqscEkRD0|_v4 zh6O@gug^0aiI&qVZ6aL`eSAFqJ`?|D|JYgPYw%&>yqwBHmnuNg?J(Y%BD7@p?zbV~@~*kAH|H*0cDyZXU*y)*e7z0~z|OjWAE<f?44nB!K+mmF2s)cHp>YEuB@hq(_L6&b=1i&upUL?~#9^g}0>J`1o zo;s4AQ)>Qu{nbZ^EX}^YOn35}cZ2wlD|u!s`ZK51_A$+o+Wcx+>$V(-+mZ2!hc#HnBCtlI(Ty9=K3}sMGT-TT?h$}nYsAlQo;^i; zHgeG-bRk$XMYq%X$gT6>)qXtbvwp(Ws(F`fNpz$$4|x&D)BqJ%e^qX({0~^w1{|n- zFdIK|46%2OD1^J$#2ZObDZ{eLoX5|I5YNXNHhd61143Z_%YO z%C;JxUgj}&PCPLldq!ez1?hZN#Uz2GjZ}Dl-E@x%CM=mjD!m>6upOCQ<;Qh#WQCBr zJs!(Tu;oAnnm#@VL#Nj^+kMAUY*k;oN(lct!{do}i$;=^5AGEZhd?&$J{?~{xn1wa zKH=Ts7Dy))iJ6f|bHNgq+_b7$3gF4MO6IYb#9|B;ekOkl1j(?t`B3J#N}+|x2Lh@PmTgWCoB-~8xhdnD5aJNlubl{~_v)QLN=6&@DKG>E* z@Aqkug|H88?Fcej244s4lPR@Qk0MsX5mignB55l=rj8Y~5nEd{3#Vi2p$UV%#qdYy zd3*aFmRcUm-wH}>}-8WF`0X#2a1&%xtk`dI(Rxv+lpN4?K zCI^F36gE*AI5lw$E(9uyR0Ifxh41 z?4?D$E3Vrq3$fOeCTR}D+YM$Tz{_12_y(MyqcNaPast=8eje{1f*ZtefaDaZ`7oJ` zfdD)cF)5h_&&Oqv7j<(%^2Y@F6NBnev~1utPeaBR=^>A7FShjU-$i$kroApm2-^N8 z>(i4sDSGRgcg6eBjw*ayi^ZTv8U_OY1#Fzdh0vgF^~JDw)3ITkQ<{5fJ#Xu(+>-Mg z$bZnjgA6U4Y2TAbjgDLD|=``M;V@fXw z>%(P&g`iH)3DmM0MBivVtC&m%OIR@b*i_1dXq`T;smPiyQ@MlKc6S{)4fibL|H>`U z+QNxNbT~h&8WgQPFl;#LVOS~5=;?tj1rV+#7^g^#$)+a?$-|>UCg3usoY-y9_8uGV zD$Ne5ggFWbi^w+Viqwj?r8ry!nndo>agltq<5fQToj1T?^maqiCVE3n(Tb(fha6|x z=2?yH50S}4ieuAwZ--F_sV@0u!{{P)30Htk17avh?P}ll%h8F?k3;>129TRWUX|MP zVG~j$c3Sin4ZZ>Nc|1C=;d9R5DHdJ8K7{s(iDOvYT&O<&(2IZ4eP%}PagoHYG$t5= z>}QN=3r+}XV~ZFTf9FzYU%*}BK+_zK`#Gh~_vS)S7AH$T*mFs!X3~MRl|H>sX48k8 zPA-@f#qoOq$$ul*&mySCrsfzM%V|b$?$~G>xvA>Rd9fC@EgY$t@MPj&q=Awh+$A2g zSz9_zn_mjTZAlA$8mxca7DCB0r}Vs!8Ce5P#3Q60Hl{@VrCl$szcs>!W%u=F2Z`TbA>D( zq|OdoL}V>|Y$xhvkB>cOX6*D4c9wuO)_YLzg;i8pK%Ek`6hI;JFA5{PMAP#9KwrH~ zo~UYl6eVA(Effx|uQBR>PVmY^P6Le4Bt#3o?ZWB3lGay!;p>s^_ktbvvRZEMkqwy_ z($lg#a`YRsnUpPA_>5`XWLSA}hg$WfgN)%HIJL16HVD5GMNY^{-v&iBF^utTFR zWW7v5)V>oz+hU6^0y7gzG%dJQjy~Xx2lnWogNTg4t4D^)V;*HaUlZd$R~G6aMmpd_-F;mFC>2PT@W5cbTcE_NpT%WC@|k%pT}!dnjx_B#_blU6h#59T`xuW8}g=` zBdJwZIxqzV!_EtE(wwCd_|d+(I~%)ZEr-d(BYs`&iAEb^xnim?1zGOpRS&+l1)51^ z^od`%7y))_IdP#0@FVzrAh87kHu@;0s>$z#VW)QEh3XI4jorZO;{p0M)3{(EPAMCN z212(Fj#tJ;1q^8Kr&dwo{VjCiVLcbB9#td?i4pf`FzU`zuN`+7^mTmx#T)^+pYTyw z&|IppvYBdYX6-tMSl;tlHsc}GkJt0A`ww|W!y|*W#|a;Nx%I7wFs$L>VJz5)Il(A9%a^!i^d1|}l_{)kQ36i3{ z+{%Bv)}ie%k}YF+y;~h$R6VbuQDs5bpU4>>@RZOjJ`lhsY#9~mG-$j}*M@@g+|K75 zSsnMZF1HGb4W=th%WRf}R29p0;$ztHpJoj9LjmZ#{PpObP32L7GTHaVz=H4I-A`~8 z7=u@l-)6UlQ7Nlp?HVWi)`$1-%XpdV2T>T%>>Z)YtU;!j6mjSaB+T)QcqA>vjEg0s z5s)H&Vfz$R#6Xexoa|SY84E!EB)aD)Y#I%Ox&F!v0y%B~i$O`|Ad|4p#*7%%DH&?+ zeHmK51w=ct-N$C$auVv#{sC5{Eh14;iOE|j7^pRm zc}2)&Uu`;qf>&wH*MXYESfyI|8Hsel*k{MTa_TV1I7Hr*{*epsE?)H^$sPZUX380ph)b4fr3II#ceww-U!g<^43p!m(P+O_cuyu2 zjh7)2PZIkSfFJ1pfge!HmB1g735Ce-tP8I$X91A0$<)V$|6v_a;AtI3TuY&!wB*u6 zId8QVIe+OGsW&-I1bRBENc;P#{`fA0aG~<`Ee`vg$xUg@IfT!vhS_yk-BQkN;=?jhB*J>^rrv;KL4D&UN;q7 zN(!!iW4`Ig0cZv>`u~~>4*U@l&+gUEnp<;Odv-(8KJ-{#H-?86usixXe+bVYkFah* z=5k0rv&CApkT++hk&iFv%g-GdLu<0ffqEF!r2N*Ev`u76rdMpRW!qKpY`fSFiA*fJ zYbDp6vBmV;Xm(F5Zfhf`O(#7G?(Lh((Mv-)m*{*N?7#k}-6>(CfD zB11B>2Kyn!wfKL!!^BRT{5X_E-n_Lw!2Un( zbD^ner()!tdR)icp9Ne-_I@F}d}^UmHp$S4-h68`k5#`7iGb5eE1v+To(`v!QEpSL z%_Oztpow?M51ZD8g4Mv`*P088_HwrlE10G1IjQO&g>AV8IGTOq6dCR_A;nO)j{_yE zO^C*v!bGuX_JRe=BXx&O{Ti3l6zB$DE758&0VTks$hV@pj-qGg0!T zd+ZgBKh_V}WPYaT;vz;_x{?|NJ|(1foOjN#E~j%E8B&r;-*)sF%as?tJ1zF?ZoJ-0 zd>6d%M*}{kcrDyEO``35=A4fxfIuYyH*^IUZ%>19?A_*7^6EokPtf=A;TpR6z*Ep~ zlhTcOFaq1|kfxX|9ofs=qy<)eb3)TE9JPN;wU9 z)}KE5+`|cM##<7{fPpx+w6({t9~0U%;z`g19LD>*^CrXcevV^aiC>T~09}{%3fW*7 zsokb+!Q;B<=62sR9xy8x9MwD_b5VFuK^kVp+8~*?k=xfZi;sV?Bo`0f=an#-u-Bw$ z-#u_Nt7zgunUBH+US@Q&eQ6%KhvI)TVmR|#A)DZRPJ}%)u^TyRUXq%{qz*vn@}R+U zQ9$06hAx9))^)!j$;s%4%R>4fWT z^}rGOnNVNS?nA8dm-32}hE{c{2@rEOUaluz`Kt;ltKgSvDhP4*1$V^@!Y5zN0vVWp zE&n1phL~~9S?@Wtlf+Z&L0y~83VbJ-2!OsE4A3P)8oJk2;W<3R z;_`qfL{w4S0v3tgnDUL$Aw*|0fVUKYkdaLR2;)bu6AAuki#RD7oF2O*#QqX_3;>pCz2o_rCD(o( zi)pq2_d{t^h;s+oZ_@Vm>Xc#8>ix){X8DBPB|Oylm^=^0h1EcuwxV_vJKu-COQ`~A z(mhmbXH4+M$p$ygF!mP*9uW7Z@SyqwA!p#EAk3aM+GZt>GFL*5&&y-GDsBoy4Re1O zQvY56fQ!QpS8hBI*XVv7z*h($6GdsjnL)GOj}Uv1X_7FY9}@oBi6tYOAC7X43+|4a z!VI{jno2^PpSpkzsOSkH2O~I;mEyN~1%5)n>J4B>RI+7LiLWrE1b6U04}K=M9rEQ| za4QG426nLV|9bnuo`Gstqr?N%cJ!-h{j8KCdy!2df9M(gv17T^@EOw5Y~r8PcjB@J z8}=Ko4S-WD>usy-fAb-Q6@A|mLuWf}nj@+&m`;eSTG1z8R6AGa7!RyQ(E`8!JSOq9 zuNXA|I@SPihaH}vwa7GZ1jT~%C6t%0vknUxWzS0fR!{*r(g+#&$2+PP`qiXN z(5awVzyS2*%4ZHD{^gDfz`??Y@m-k!tNon-q$e>%Vh1m2uwQI71N8#0qKAh3cYp#| zR9+xh`nyfnBaIZ61P*XlqUIZ1uPyrPzY1}(k!*}x z6xF&3`eD=j1;G~(gPW=s_>QCYM8EnyBXsJMR&(Q4enFOMu}%PxU;OKbBtjU^*o;E8 z9OvxGY@y{i&`Bob^lQM`kOH_f%iCP}pE?S_y@Pwea|0O8fm)_MNt8K^7+Zib4pvCb zeM0{+h7Z0hIL{nkxeMS7BeWK24i!`*aCN$Ee7p`ICw`lc2mx_83b9Zidlul=r_D|1 zZ)HfG#||ViaE{urWyQD0ixk&B{#mIHi}j5+z{Z}JokZ9kh;M%g;npcz4fTs|a#+o( zJ!}!p{mOsSs)tNu+eKF9bhunH#jut+Smc+bFA5UE|1kn&F&kvNwSGhK9~xlsy z(0!Rrwagf_kLVR$&EUG);7PN^{f}S~%7}tgP(Fi5spdBbYAwp#^&PP4`DIE&hG6(|)cW0`L(}cfdV5*g!AgWhfxL#gv=&nx0 zGK>{Ob4H0h<%k0!7UIdDIYL#Q*#XD%m?z%23?3>Ie##0>I@)>acDGU7AYvpSOyC5^ zLK;TI&3c2z$6Zi4_*r<>hk*igk)$0q)^vMTSN~cs!|iG+{^&N!FpLPdzzovV2%dCy zoyyTP&QmVWw&t^_x!prFT+3JH87RF)i^l6uH0&FAh~xObg+Xr|XgbJutA3xp$m2a) zw{cgdiTLiQKfBuIv-?sk=P6{yVodDngoiXy|C2-NM{C&#(^SvAnWmMq-7Kk%Fw;(~ z3SK6*CM9HVE^_8C0r;OL`|CtGLFuloPdU2)FTmXCXe6-NSl6wHxxQrFPlnK{#+#_d z8h^?;XZKs5aSowXgQ5!kHu|s^_I2-iqUBa}bOEq(P$HXe5JFbH-@eU)hnP|TDK^a8 z;}yEp?)wx^iT#?}Dov>c3bbGyam@Y0n~>t}HVMTOOz?D(@5vjJ)QU{x>6AF`Z04q1 zWEJW$h_ zl&CS@2ED8s1#&#jm75(vN$R=bnqB3imi&UAFe>+k7UMc8%Wx9R1 z7S4YkgU){?($RG6Jt^B0!6~;ANz%?~tKOd_KB@g+B3S|{fA@5% z_`K(Z++B7hH=MlFMI&CNNfLka1|dHSg_GZ%#&R=Pvjf z&|< zy_#%Gn^%eHUi~HO$gXo5QY1y7|Z=D>4p=x2Dy7F@QK1;;dhYY%r{I z(8OI3#8C^O1Ji*~cVa?klWKIH>(N70ggD<-Bfz-rH=G+J+mF9wyu8Hs#-+EIv~)zn zy`Uyzw=4^O@@CghKx$97E{BiU`Gzjxu;1dgL1IPB_UtE3c9k9(0JYsLBZ+5@w>K-y zyzwHG`23uG`0Vo$LTCB=C31DgWczOt(PCwKVbDT=2ca7OUW_Zj&eUQD|W0se{uD<+`wc@%KqEr3u#c8#?h4SrDZ*iIQ zXTQRxd6%m3@byTEA0wb;;eHUC z9@=5;a-WH|{p~46-uF?sqdvKbigW%ilx$7^hrPFqi}L&W{ZTrH5Jsg#KpK&dZjcZV zDd|$_Zf2;VB@_^l5)cr98A4#_ZV-@W=g z?Y-XXbEW3S4a_ydpK(;8@=FNBs&l_mSJWUDS(LkR9IChb^X~e6LY_Gf2o+{WJ!;yk zrNntQL+z4bt-^-!j#kX`qmHT8M!o>aDKYIKkVFXUHJp7mMWJRkAfamDmY`fUB(VyE z9u2P)783q4g&-f%_)B{=4fskdY08?ly-j$!xJng%GHE(*^lUY{LVN~h5^%h$B7D#3 zCS?q@-z~>EtG44W#mTv#Jy_2m@P437Pw#Em#fHa04z2_pY!_M`z;d$Kk~9V z{?d>@=geV)e?$+888_*-Ck727k&+i1%Bh0uhQ=q**>m!U5jC3)W@fA3Gf@-TOPza^ zoo6v8@pR~(cWFZ4(K1_)P-TUwDZE)~rv}v~GiEEtO^? zYwCF>4Wd^seS@OLY-ZR?A@h!YPgT=U+h1=z2#nescf6h>b{|; zAgX4iaH))PUAYG>IpanK_xbHlcI&ar-{8MFj@H8Qc#)%_VZBJa|K35TfE5hSFrKgS z;CykL!n`|>^o5@Ove^I9qeC5}+d~njUd_?bBlt2K)zFuDwD?^E3y$sCtFzHMjV}{C z>YbptMdJWBvKt=;anFIvFCy=w6=|w6T!59hQ7Xy=LC@ZYG@3sG=!qx%DZgyP!O^)U zqd^b;J~|~@mn!h8&!E>e9re%fsdwsW-Ep?w^b;b-b+}4+s^0;Qf4}$1QkdbMS`zN| zb}Y&%x3A)^;d0z>D`-{1FDc!nx9n;(PK=|znX`?k zQ(d1O8yb3Rs$;}L@9SQW_rJ6N=+3^MSu03JOsMjRRQwrX;)?T{L6L2apP3o+*UvWZH4B0gd zOE;vA266d|yH-D(aa&I3d+^zodN8RZtIWkmf8SsI+Dzp5mkZ1wQxCDJU;LDw+z=B{8yE8^r#dBC^`W+v+YS>PmmdcU*LHK$m33yC{kG{JWN(Zkl z|B1%QzohQ!q4by(-a#6JH6^bwsOJ(e!N_+p)rP{?K@T5k)WY4x zyC@2acUO*=N;dWP%)@H1 zc`8=pqF>^?waAx}XF<;t+F0dlp)j*Lb?c05HuW4fXrz(>92nFi-Bql)L?dz}JJ-DNHL%L4#oyLsB#2d{0)7 zIV}8HmaQ1qnFaDE0W-Um5X0dw6r-5h)T>v^$p>LQs68lyAV*TkP$>1N!mv7{u@oPy6eU1KXCpANs-~F7$dMSoQ=+?0zzs88>>Pk-fc#)t_G#%EOwoYTM&F zkw|Ak^o3g=`Rs|9NW(;q$n7lX4NFM%=^p98fdjFM^GI`iS}Kj}??-I50WWvJUOuHX z^ZuxYLRJ}eI*2^tx$1jc%P?$1_9Yz8jwkEiubFN<(H?oON?LF%){KIg=Z^(HN(Qx3 znc($#rPlg9&QjABa{S^9X(7hl1R~_TfyTHr&MoEF8y1SEq3cA_f-l$%H})F0f4g?K zpsl$^=&+>~5z6J*GMZuuqE5juNAgp}7mm)+pQZNB8m~GpMqzRngO)5D>@5x*@;BYO z8#%G4y~jVVZ#icw7C6dEqP)$>St%@DGm^tN8>y4;BeM38)okqa%U|W;VcpjBF+N}rS-mJGrN~*r}N;te4$(oB=<6oFx>chw2^CAleTNlZr{O2 zC2v69Q?+p>u1s85G^CmOCt%Mor?2~KT zYrGp)G5=nrbMLHr-jj0`J;n6qhX7jUdrRl(>V0cUq6CKWn6$8o$8_%kR$8#{SXZGz z8Y~C|-MIPW=}W=uC@gwir17Ng6$_H}sXN);W=bx4W4Y%vi`!kmz;xGlVb3BgsbSpD zuo=5jpzxSgd4pBUDRCL6kNtAl5wV-U>>5{&p60R)e#jcdxXR?d%lB!{Zb^<~x>cBC z>%Qzmlk6GXg{^}lyJhzb6Dec#`Ks%q5wXkbw#xfXz1K1wgm z*M?@t0H749gv%BTfuiLW2&t5ZDPQQ;8+@78H zSL)`wXl69mm5{H<*rBfLvrWa)0|JfeI35d9fDekbBAmU)Mw|OS4>!qlYT7ad_RJ3^DT zSlAD)gTWi)nA(S67F0)Tv7E_D&ArBYTl)5uv4p^~mQV5T*Muup(+u1^uxOFyDdEqR zJR3OvYw$h+dHsfDABj-Mcalj}j|uJbhz*LR4f4g`x^rT}9@gnJjE{Wh(u_wU3!s zNdw1{t&k0z)pD2*v3Gpq(*FBxEoMIpL@H?{=W|6n1~msM<8~mgNX@c;S)g}&3R?0! zQAObAbY47BQ=5g>m1t*g#`FH?JOrkm**kd~n6ZDwG!rRxXY`0X3-yD-dIDUuWyow<@SG?{O*YcWxT!RE2 z)TQEGK$>lcF#Q}mj%vkAXF|S;a>g)zYAM^+0f7Ssx~0q^8Zr61t1q{Yy3w+@yt z;ls5;;Wy1z=QS_(*ju}IDAok1v+cq?dhLe?xZMA@9oxSO!78x^R`dqK?nNXoe1FVIxtbrZ8+pJ(q_Z`w|{X$5ftx3G?6 z4<3MDC#q9BF{vl%JTkw8H}2^ss4INqv@GLT;1J}Cc*3*FNL?j;}cty;e3@G zBGO0Trx{txqqz~b8+LJYvwxZVT4Oflz}-`MJE0oeQyNg4)oqLVNm?*e*%7-Nyx@>< zj;;)G)VTb}=$}9q>yo@)GJ&QY|3HL>T%M}YBK|>nV`w^;2)ZvM z9KCc`XE>8_e|~@eoyL%zCf}eHOYNV#0>p+@b`NH#78*$t530n~EaZTF1@vN=t@qDW zEf3+L%i{Ry!Lr7d-U*ZA#j34*X9Q0D7OK8{78#Iwwp<%iKi5-0dRRSwW46^Hi02Yc zCg`N*G>dTx`m)UOkF)gD{%>a)1aKo*`ux_R`avJ~ZMt?*HhmeFbZZn;eJxwq_z!<7 zwWfVD(<;?Ymj#=*lJXGQfL8;il`gY!@;c^uhj~-@F8Rs`zbJo4_6c~vF5CUa=zZ<2 zdTni^g;CQXX}^;=wqzSe{7@J9L9<^$Ka|MNe9)og4Na5ZKXRN4! z`>0?e*PYV$-SpMlvi})C1Q`HDEvw#rIorW?%+2^t57E$`*BSQ`a!8k{5FEs5J8X74 z%MC9rje$WaqcQcl;eNnbX*cot@0K5wut_O-w-ZT7z2soGm2uFyMC0X?^4;2md8%&x z-WBWe2v@^2iK>;<2mfm6nh+x6Z4wKR#8pzb@Fy9f98)r?9U4mCfs3)LU5a0~Qs?47 ze#cphQgexv60}H>*a%SC9Y5D7R&S8GiB99}tqebR(9M5^9wGS@cB=Ely@9FCG1uTs z(%B?`PBHv=6bQ_)FUi^d9XK<}e+CW_;?3TkhTq_1_WUMN;~}17!%gF8k*gaeu`E00T!Pkfw5*prhRsFgG(G=F7B`@aP|#%{i8Z?UBYezW_K6x%JC|qWhFq7auBqY zn48dL|&ug{zp`OBmP z%7Dmg+Af@{?}6MSXa`Ur-db!v|C7Addm%8iU(5jH@C;wqO@Hu{kt2r|)_>Y^&%d_Z zM4xYw!qMnc{lueRgRdx9Uwr|aKm{r}NV4rr{i-y-Oc?|y6u5LK2YB`uaj02#bU!p9 z2}1r-_WXGGW_dK27A&?=@*#yLJklYB=>6*%S>e4~IkBhi>P`yi??c2reRe^_HE9CW zp>PV-&LnRatR?cVSkV|fqqI8LZ)biq;8#SuXbJLQO_FSL@Vuio_`+Uc3d}p})*M1Y zOmeO-H?dpX4psJfO{hCk6I|WqN4;!R_)NDsZW;-vWAgZ79R`^W8ExBAi-v?+Ybpm5 z9fosXitrvPzax+A*@pDJMbL5NAMn^&5~TSbg!`FZ{%I{3|4wn6Ki9uvW>FP>12dz| zDVF+yNud^R79-0NraHG=aQIfYlR>yjGDo*e2vxVNH=Ln;l^Xj zo&|G^5R0^`=T*SZs#q;((%C*K@d<>Uo+ zG~a^j4(|VOo-fjenT!TRL)QwwZ7Q2p#QC1Ga;*^G9a(3Hor?`ThQ7l)4*OL@Fz69Q z(6AO$Xg3(I*hpJFuh>!Pkh^T%>if%i*y1!EkiY0>j`JFq9AEvs7vSyPOWT%6vDQh$ zrZ-C1WQfO;j!;How1%1=4*)_89why5hPg>;=$%^IYNCbTq*6QT;2THW7iTf^yaJBw zN45A!6)-=k95~ywW-WS?GA_4U#vCdxmbA1MQMQE%TEt( zl!s7_u#SNpQ{<|9E4)}jF|`u6Z}`#sf9G!Uwqu-$iEq8mbnhg(JE&`}9LE#13LOd) zOBG(MhE*#p%{<3<=wOfGlu4Y2&!qIT;~UW(piqso<5x48=v{HzMzY|C%p56trJ24% z!k1(^IG2q1WxTI71F#*G9=T*Xu@Au})Dw$q~uD6?M|+hvmXrB=x9F?7lQgv?>hAu!5J$McOznX@-v-XJ&ws}ERUJX?WD_bSlpYRXOx7bY48q*t^)5oWBe zno$+vM3-&2AjI1<)zY)w`Vr6aCISW6;;!1}^3xG_A6E7TVO}G}GhN*TiNua+F}2MB z>QgcKX?2b_$z|VLIouXsV9J7?cJxp>bj7bG4A#dJ(7vMwalOagolviuv2a_ZItcSW z81C|Q)4`wBPD-L1=Z>JK=$dlmg^Ky@*3|9fnLM^IlH1wUCvj^#-?MD&@|c5B*1C-U zbG|0*(DB|VU6ZOfk9icP?)Myj`_sWU!T`VeW~_;~5$fNOFgUF!(Q2&`PAOdv2|W`2 z*r!%Dl=4^%m-CF27DSWKuXgQGL6`NgVcMq4VKop^`+<|)1poS*FE&3slogms>NPH> z^u>o79GJcCr>!(%S{u{P|0Flaf(>0Vmw96!=)EvUy*_{w0-SQ)GZFgCL~zjuqWL0H z{S;Dc;d>E=c+ZGB%>Sr0YDhQfF6Y#lEm}x?Y;vE96Lr@g0pQaL)|k9T0t>p+b*lG1 z^BjbOOC74C9k)u>klUC16jMkjWLA;S{*Q=1jF9MMtIB1@SLCk`hv!%KFy)r;{=_1i zA2w=mOzjb(IrNBN15sZAlU-{r*v7&mPh4nN5c}K~$QuL!f1dCX=9u_)t>ZEGMyEkW{JIKA>>;tZwANQ=oYw7x^J}+iBk?2u zR{UvgPh`p($GtQZNhYH^ELiP3t@#L6Y|iUNK1r!sW&~?}ARVlQ-qc=|q&zfNW$Ks; zxQN-p)fSXBGL89Fqlo$}5@x{#(3$cGpe|NH2Y@951qkuwSv_b%oc(`j0<7){E2WMK2#GRKp@a(+a~RR$3thgJ(h zh-ZEp*^4h%_YDF#pf-2L<9KPldxk$4g-sfVj=w>ys!47UZ%KG6uU1MgwKjCKpzEJL zO9RC}+0;1`H^rquZAPDLc3N17sWOAzeMG}$70Hy2c1M6i@!ZFWs#B_9X9u-Ky!xBD z@WN#HPL2sYC3uq4eWK=D@Ygahci@_#Zr*ouH)r+hfDWeRNP`j;WmGy{H)Dayk0 zDcW|UmJ}l`?O$|=LGk`2P`>Wi$ojoQ@==VeaA!q~!hh3|0OTW02k6t{H0KWyW3&(a zM~mP7X^|DsEa-8#r*1|w8yLIr?q4D%Lb+LEBPYe;W1eB@--SdrsP^u^l-~YAgh4ca z8^!ppAdEpO{J#rF;-!NC@m=B#pmGC4dPePE5(!%cxT|lLz%5|72>eU(JYWZ&bzp4v z|J=1O+5gx0|M0~AZyFY$R2{$zdh|!yBPj$N*A@SrJ`6!0u$}>H@(lp;f55(4;o;;w zo+97hDvzZV`_g4#1w@wCSV@3Qc#kOK`uA_7_<#u050{8hkzTwJ)Bm%~1OxvKCZO7U zFN4M^l6cbCDPQ6Ls4QU!^8Py~4}j4Af12q3Hx1kWTL=HY=0RbS=*!6a-=FuBxf1gF zpz$6P21;8K2)2PV!B4tr)e)Mn53P+WeJlI3nv~ZDOuxkj6xtg#H9ohS*8eIrB`?6< z=d4Uf#q&k#?s`PH3x|4CcXceGyj(5sV$Xz>`klXkVRbH$s{S4yw**MAexeU}%TsAP z2C#O*Bv#?|s$X~#M5!HE)E^5I^wTFUR?kC|fzy`50o@{9b(BK*;i+1} z`z5ppUZ*2``jwL>-eVL~Gdtgl&7Xz0N$AyIf+Y4ut;WyPrn}oZpt6Q%yQCUEswwQA zpms}Jg;I=_tWP$`I9;FdIbOXD&+JCt0eZije^37!e0Mn0gzUcZ^9p~K7Q(vK1kDB9 z9u{1cjFYB2v8Eo+-a@W{L}&F+JAH>!XYY=V_i4pJSpb<4taf=q_`+ORsyPSz_zh6M-_D-`UL$m}{sNun zxIHQa==FS(Ek9NHXSAMkl7D~>rDoo8>07d$S9NP~aEm#+` z33PJ+Ze0fvjIrt0&Iqu5CF)cF`p1Q3;&<%u=xz_U9Dt2hhca=$_dZ`23w0!j+?V|$ z>($vmb<|CvvH7Xs7$680wPsvJwyIoIX-pPt4KqQm{gc^=Je7$^KM%tX`?z%A&cbvZJ%# zoHz`8-ByJNez$$CgEt#sjhHM@s-z^w24$fwC;v;TqVCJ-hB%|3%%g3eL!b++I)rK4l?I3d|bv z0KCq24wG#5_S)z6x4`=Q3HX%2`$CpSV*&KuMjDB=Tjj@A5`9^Ha~=a<1$)n(kWfp^fdHG+e$!HA=YJy7%@0=4ZvC?7AJ+=?k)yU44C}V9MA1)K1Ju#ioDQL#2TsxIX)56vRTBwJe>_hv z%UxGFb`#Fh$V+GIb{Ns_yE_SPyIZ`CUm1ZEu`WVnX^8G;hFwXm7HkjC`qAA^G=lRo z9$wPZ09)K+_h0lpx((lmQ<#2C>^U&nUMulHO6{ZD6Fgt%4$`}$RVjd;6-*YgJ$iIq zA%Jg;cV0NsI0U(jF8|>Ozk(2YK!0gb9aUnU!yiw;+hQJ3Tn*i&V0==`af5!ps^%bX;Tw-&%@X8DC6P8}qz}x5AO#{Z(H>V>I z;`f7>x&j@i_pO6@!|cIaM&APv3w3B7u@~F?rud=Bz z*v$mO${nxIjYahkA!lR4r-8;C4xKUYR_;1CqQ!+|XHp`Kk%t-3qxlngu8L*7k*47s zGB6#>#jV8=>?P8f_E&)Lu@2!6zeG@3Mix?=FhforPs5^Fn-qe z(pEkcSgkZ$-GINqU!9y|tS>?~?!q}c{*SpHx(A^u! z>kSH@&9Sn=`Ggx(sIsW~ji<}+6s#crt32V+kgk2-B#5KTn-ES|TEY3)*a>r~|VQt7_`L@WNwwgYShPzEP(C8usP8GouEAgkQJU6-!qk z*L56+k=t1kS}v0j@7?KXkfwS!-(a}*VvFXtiOcAoyU|m;CM~fRGv{ zmyr4PK9!9H;rDFLdv4u9Z}m~zxkkLZ$Adg=7h7L%`IR-=^Y{1^8~AmJMDNP(Iz0)&o6j^5sZ^C@=COGj^*xl5F%Pj@VkkV_XXR4w1DTe z-%-A3SZrOD-UJ+S3Ps*ZTwiDh&QPyFzQNvxuIA?W#ZPh zFnalZOKx_(Xt-l51&F(SGk{&CX2d|J5*X}%QMi=fv`WP-SHsr)n13ZU+qe8NPi6{) zP$ufY3dy+C8ce-5Rgm?=FqnGfTfjVbX};`+$KJ2B(bpP(<~ccs3wnbE_jb=c8iO!n zCl(tHu&LPajNOhMOQx&lCH-C+Q<4*mcfD6?%GnMtB@l3%Lvl;gn0o)lFg8sI$W2U9 zqBb`GtVplG)8e5H7c)gkc?q5wWFT(d4}U%Q+dMR8*1|9VIQ~&K;7cyN4ICq(ctg5o zkFlkvOPA0L-fbf$20fY#qh2uFSJPx%f0t%&L1>JpjrS%Z#L>^|weF`~D~VGx%)`Sa zPNywuva2oNh*@QKzuL^P8Tl#4fmKHTZ$|c1Z(p4_fz1hdNz$^j+II&JyR#ctGx#tN zL$erYMjYN9GzJoAuXe1^|rmmA|_4jw}V=hyfNtja@Y^jt$w#?c3=pzrl8>5WJFH}q* zmg41wS~)kB3fckqhl6~B4`HB0(kDOV2h28w@+5v=R)kE?wk?TRl`EDWJoz3za{S;5g}{;M4- z{kNyh)>79NSqZTcZw;*nZaY()jqch`@kqwwXzv=yoAzxP{o1o}`|^8(WBo|4@FzH6 zqrXzk=qC;V5!+)!0zYnfJXtmOuoi4k#0O5~v@Es551zk4cfo(fpG03w+mW6g7YiGWDF!&Y&4Cct0I45{6~!eW||7oK#0 zuNFdYMYn%ZxKr@4M5l>zp$_z_EG?GKPrs3Ck-kvAdjqJN3WOo+4T&3gUkl%4;_fnM zBnFmIaD6Ndv?Qn7l7Xa>J3hawS(ky7RdYWlts$**W)6%fb+TPs3qGb8_h*@iq1g`c zcmIT|>#M)L3yX{>9c6fp$s~mJ#Bf7a8HI1r`_V|6%VLR*PH_iTtI38nUGqNuO%G-B zNftyqjI`<1<&<2%MGiYwOorKuFziQUa%L_H!B4j7R=r3#^UBUPi34uhUgwS74N_9HO^%cB+-Hy=nNdo%y23QwnLjZd`ygd~P1Pp(-9l@adNDO>DiL4G>=yxcO!d z$M^2;48b99-zKh}DO6JC(aZH%gIXzmtcQd`%<2Ql+S0f6!&gKllZOV*-gf^Wq)b1| z0)!a|*UA5;W>=DsL$7rB$y|oB1mDA{*gYAMX3hJ>s5!sy#@`Tio1PifUK-Y)4vE4o z?|?|PD3sG*j^CevUPzyBff{=|N;sA9vje0&l!vRdbK3kYG_YP{mc{I8%^E#8FVZZb z>-KpLF0|^PnmEmjxP#cLjaVqYkLNAtkC-81Z4xG-X7F?SsNQo^m4oKED*z`HQ>Z@d zQM^em48O0xLZ`#%XjU02NTk*QU5Rrns?$O&<3nTbk(7*tI3KFs-J6mx-{s zV0b&qV!bSRKwd(gu~`m}e0&in`j}*?wXrZY?FE-Ft5DgtVyvrL7CIChg6wkfPAJ0) zg|Gwtp7HE0t{|J>n2Asi{`R*}=IvyPhe(`@Bz?||g4yK>>#<>A5+TUL**dTrhQ@(? z-R|Idhc`(je9+b4wZUgBE}uRj{9po8--9ue@u9hvP%a19)LHRKfck@zGe3G;LhjxQoLW+DUD@X6NbN3EM1~$saaCr0AD)} z3FDpPM6-UL8iY#opVQHkFRq@`r-TH2qH!YhJf{ZV2 z_E9Ajb5`Rm&!UG3P!(zwkMt6l>R2)OHAFt(#;yM$ykEH+vj?6pQD0aDsEUnEaSYp zE^GWd2n=$#z96$1c5}GKB6_G3bB+Wr&AIEZc>9W~Ng|l^@651aXzUq2HS|q8KkK|v zKp$-_JG1-zopU+eQ5$OcfQd}6b?CVxk@<@_EjZ6Z&#+2rUAYm&!KV&&l5r?HKkUG{ zlrPh*Gx90DGhn_P2+3?z|A~J45vNHnCCa9n(lEvREhSd618I! zT84I>T1&N6ZI1u)(6Fm!L*=1$@aco~NAi@P$!g*FMPW+I>W_aOBV<@I6MxUaQFK6|^Jd|M@A247{e9$uV^jG*qzdZZgtTKk9X-H#&1gCy9uAnYl; z4=Zvjp&sMLN{0MKvJ+MAldIEIk$kcfGgxLdf!NIU&&J>B`WKwf5ucgYf}}Y8&Q>Iq$SRy$h|n;+@I;TA5x~#BWSycm5Z| z6sfH&7wFcKC+w+=@AQpd>B8}V@-m~yZ(!}VJntW^^2wZI@hq(5v(DQYqWAB$&Zb(y zlDM}@xs^A3(W8mr>LJ0^B?>KZJ|a*+i@>WFx@dCHWB=-mC(F;S-BG_B^NtyE+LdfS zKgl6z7M@^_|-BE-ydO0kB*hZjdA8jBPC;WCgUj1_(81tVIDNPt|RnNbgCqP zd|wB~6cP14+hh{_ikVE3jwlsDf$&)4&MDe@yFq==i~CE3>OPl|Pg7|!yMwf}-g(YH znXPq%!MU&1YGh>3tpqL1(Ryh&W@Z;s*7%*bRZm2=PRUnO?b0FQ`c8lCMgOV5h!y+C zhs}dibe9JN#uu&c{cdv{;IQHJzhzs4n1Lw@wBFIwbWn5=F1>(LD^e(>250V*l)f9| zxXb+ED~@(S5RX1kYGaQGeNb!Xm;SG-*+@D-bPyAON%YU3Jz3_p346p(a}pTEgkd*C zX26{`tMEhoYe#SYRIUj|L(!KOZyA69p%;rh)P$&Y$K)HBd_!&{1`H@EcgCqo5t+!e8 z3YT86zQT+Z9>zswm1aWIuOXfJ#r+N6C)~xbi5Wh5v?g^n8mJ}O;8Q$kIIT!exmu)% zJmzE%+9lq~&!A1Z#831>&SVXGwnKKxEFE(?bc1PlLhFXNvuFcYXCr8eZvS z?EBAGZ~5%a`XL(5-WJVO7M-ET3hzaW3eDt{t*;52j+Wf*jej;GmFmAszBwzR(hDB$ zG$h({4@Xs>x6{wgQA5(!K7;&!K)!8o)8=qiTjBLo`9~NbeflgW%{1W1-l97}^x0?^y!-^SP3mN)mayKHhekCo3=jp@3_&glt_p$O*(c-FCrmH$4~4_WZhj9z@bw!KTD##Ed~!CnYb!jaXs_@k0)>~F?Quqe83`NEyatZIqOT0PSB0*T_ntr> zV}81VpB1QG7jp+xS{`_ zBpQgn(E}XYi=PO6#yxeG+M_K2bw1~$$9g67Be&V-&D6I;a@TTc*RL`DL`j*fY`Q;U z)^ieMl^rdXdVSb6>4!QmTjE%TXw;rB8Mlk*eaK-x%WLP%IIv~AQH@+_6K&$l;XEsT z?Wj>4wl$&D^*yrP|QBQrkBCvFesjJe<=hBx=2 z%yeIvwvKbigO?BZa>YM}SJ{77f>>vgwdkxNE=pBu&e3%mKHW=H!tv@g#`qxGrRz|) z=X0mg;RJo}@589P3e z(LD6}MKs%1NsH^!gjD$Ax)tfOs*Q!8{fH_od_w$JY8O)n>D2Jf?wjmsFxA)OUwY4_ zrB59&v`vRYH4N~a=l3@YBx{a;a-Z}i-6utbOK#jo3qM*|cQp#_7}IaS_Zj2gh8ib( z9gfeLK5RJ`+Lg#a<^*$c#@Wqx`DA_hmY61fol8&hx&E!*wiS^*{&2_5s5dpH&^7^O z1ewV^Op0n{>)N8ZIiUQ*0*GyA`R1D-ym)L_c3;<{ob= zxH8wR_mHRS{Jdxc_T>?RCTotc#NQJ8L&LKdV3*TraoIisy_;9 zu)LD2+c!T#%jr>^pNFhLG$DLl7-iYF+q%(nyU*S0SnT z51X1GexaSO=$KlHQk|O^p|25B2P(C0rnhy`Qpf|`*O$<-<7r9p`UoF(m^8|o@Ws`t zM8y>`aeQ>6LiLK>WzlRm%y_G=cbztMZz=No5 zrB}Vk#ZRl>#nAXARde$p6zWT>x9Fn!=X4^#^01<;zN4khD~YrALIF=t(j|$W-g*d> z(o^4NBwo~TN7r@lHl?{}n8bmTr^<#pe_Cc-OH6wG{irgT!y1Pru^2hg5CC40sGZRs6FXl>* zmUnLsj(T|%-StwN$Wfa3G>y}@qApc#4<+L_)mGT3&NEr(Qw4M=+T^2u%(I6Ol~atyv*EqYSWP1n62%lJ8d9G zt&8*`8@(Amc{uvHiw7w}sa1{(83oIVC{5CHJRD)AQs810A)Cv+`G92thh7#)*6E8o zD?9+1cHcC)=H1iFk^XT&`DC&S91XYGuWN4z)qn0%i318;7>RHrHQpi2tiM?nuD4mF zcSvt`n!TNg%n~nSQgDz9vSstng zuV6;smwXrma`pc{AkfGj8uv`RqG4X07svHZ@FQWBCD026M262VppT|2sgQY4o}FrlDcc55n^iMzeRNnzHHa$I`FQfJfp2TRKh+A zm$Klib{XW2RZRyS;F8>WV{f)>pOngk2^%lqdyqQUKV8ZfZs=K>ygN|3bKwW|9*2bQ z11_Pg+s~eickix~KYIBxWLIJa$y(}%~yok6AG+IIW(*X`)DYSG9gVAf_*gVv=6dnqW|!B%7v3w*on=7kvwNKcq2*YO5gvMqDD86) z*+>W<)l4RC61jbg79yM>hvDuy7h7Tuw>uDCSYjab+No`v4IixG&K>ihv(Ght<6hAj zPrh9>VyCZ{nd1jJn|$F7R>?F&ckp`CMbS1q8TR;-CO>iSM>#c{9~T`mJi!6Udmgkq zaJRGWoX+43;xt()IS%T;#f2MX1R5LBc9<@B=SABiTkqwZT%6sMBbiRZ5q`@{s^Smh z^v?Sg+@H|-XW&iHW1((eU$R-4Zk@EC#55oi#-Xu zykDN}hCqjJ9sPcF1FPQXqZIo!B_?GZG(`BqUFOfhsL0-6C#%$O)Gdv?*W!;0&@ujZ zas)|R+jD)*KH?gY1H#@qDv`2v9ajz^eNj5$Dkk5rDrP zyOdSTX=1aRXN32kRyns`sns1=EVfuQ#1cy)>=Dk33CS1t!OB$r^Vv@pE?(l_fE$h_ zqBSy>{7&=}#~Tz56zq|{(KjtUw0hW1D3ef3E&6F`EE(Uk{idphR%iQlHZ?mMDxvfh zsq;(D>CmO=GlGNR=yQ`;DQ*Kgy@chhizEj}em1h)#xV=Q=;PQ{7ufQq=`?2&LpO3O z#8kDIxSDY>Az#1P#p8$n54>u%1<=d>kY~c(VskbzQi0B>mQ3nKl1_ix?(-zV@@W70 zGofmeda1W}C%v5mjB>AB?)Yx;+76>kc~=TN)|+&M4XO&_XWm0!|d1vVCM8jq3?Jh8jEv9&Jkv$4Yi zoVBkw_{%ySOBbhV02QXL+MYu(jCk_}jOCeh+j} z6X@dq$KHEJHMw=|!WIM+6tM&l0SPD@NkS8lE(#(=*n&z4Jp@#m^bR6YLlKZBO;JRp zcL+^N00~7vL+Cw}&_O!#t)P2vpXWL6`=0N|H^w*4I6wAg3?#YdnroJ8UURN>O9UyU zk`KHX2>OIjG#ZliE-D)p-tNs|W9vl*)~OK9h7x+{{Dxf>-@|2y9#i@$kE&LCye+~i zJ~Osv%|Bit9o(C?Zr$bZ>?SR8ogmY@cc*w2Zl*JMyWER8J zMZ?{;lv?Z9_p(}%dyBrU=08RZUoN;US0{?QHm-beANOZCK-}%%r17%yTZbL)vD@4&)#>7gzD{G z2H4teGrw0_8NOsFyC$xDU{d=LyI|D>gX|ZNg7K>r5!!xHSsYcAvR@Giw>%NedD&fb-&cQGx)kb--Z6^t;zNsZtHw^WuIvpTZH-Wb2My)ybyq(a-1H9@m313jzhbjD#vsDs zwVuwjrSAHp?&Y3GgYy-B>F?@Hf{C{CZ~A^Ph;g{K`~2{|+1DK9HCod;*1n|%7b2T1 zJmhzAIUMP!qoVp9yqIdB(6xi?ox9n}u}3Do+1nPzW|Vb=GT3-+iG|GxC-G#@GTaZ77eOqnz>W8j`@4U9L3A5%n z<*~czT|FhaS+4fLYwKIM;a9Diy;r`O6t63mqd4)$Urs!0M|J-qR(8EqR!^^0YCgHd zI(ca&9cFNQ4ToPBS$L2m^8>d~kt04Ecq1XjN{L*_UdUZODYX=iOx^lG8dn@l6W?WG z@98JCxxe(@t<{1&V|>dpzVMYPsncMhVxcCJwgdOAmtW5bz4B@8*rdL?Oz~zh&A`JE z&A@3!MfSn-P8*!9nqDO1R!`k+!`)_))|ASfO1k`Gs7Zs>mbKt1_=(=4%O(t_tB}UQ zLf2k8_70Dgpb{&Y?|J+p{IcYnm;8I=Zpb#Z#`fDu>9^ubjE!Q36+0hE-zTfmYodwe zMR}Fut?J?r*z30y)LpFXn>cT;_{wg6Au-B6&LNRXDn5@M+aUkga~50h#>g*2F;gxDiXuQAg$kD$75^&_p z^6SzzKV0nR8LA)J;%joM<_ZVZ7nmxBvsw*z2e+9@pgZ+^d-y{mD>*Z7 z^4`v4`xYykUb!F6UNbfc)t=u6N#I1~i{mN<;|qG zdd}WO*;Ss_L5xh#&ZiajeyI`5y|p8GTBod;y;R)Q=WX^%_R5F>T6;snl2z9}rg-${ zAWSE#$*Uyd=`fvs!Q_rkke*Afu5!6bp62(Ew@)u0 z`WSGbO|sfY_R&AMfS#O6=^wq$9^SQ%+u2L$X6(K zXb;6;>AmHBtMSCS>#7|zNp^LWg*NVU0WTYOyJ@bd|M(CPGf-JfJj_ciPGDuPkX#VA zG0+ofh_ zUA@^~{cw;_HNmOu5HHP%b>3X-6RqCSQYV+1$TKlSj9mWi>@`$!#e9#j?zo!fBc`6X z#FnFd#d|w)5;os`HZ_Ao=Jc-M1}1dh*0wKDZ0+7Zwst3VdxEc;kod!j-|*GihA;=Q z>gFuTmp0jmw4}AHs ze*^^1f85ZVsAP^Cmj%e? zdB$aXY6*yjPh~&#o)+t)pc(0tz)r?_f5El#^9MPxE+rXycM30vgXTTcpcWs)pCeX> zsyAZQ^`%@cqN=tga>S~4R>fe0c^G#y+Z?`P!@ay}J&yspg{Pj=hRzE%xNYmb;n+dJ z4S`-KZYasqAe{ z&)pkfg{zL8H7s=tI&OHae8{`h!gt$gNzPB*b4R81aNoA}(8{}TF?VanC>#yfV-+e( zOv;?HgY0(rUgyp#%AiYccVU~!`(%H~uGDh!nuU1^aodmNy@!)URK=_jC;O{iXWC^v ze2)KE2}C$h#p><|UMit%q8DWo?PC5(B_HM2S-ZX8Y_1Gdly1H;bk(vS_(5h!4djan z_i9jT^?qnLd9O-rjo*8H7sFT5t>-x>=UHJjqBFPcvatJQ?B(8|!9c}$RxEtWYyGe} ztm*<7j4eNa-BgWf5>NJp({E)^4$6Q6_G$+yxV%yMM0+QWbcmTX$ zxe|*>SzhR`3V@`v4)C%DPEYEF$ZWpmd%4@KS6+&BZ?q}T2Q1p$>1 z4)%^_<@X}v|J!om@A3iw`adYay#5!U|GT`nMJ0NMf-OycVas3T2<6BBf2yAUyNv%M zcf(zUG0w!xdiuoMmHm43GUL_p=Ql2kXu=t_LH+C;bR_Gx9Jf(jf&CJWNplY*A7!eF zvb!_pKWp$L|7($hNiiLpYdk^OzH?{ZLP40ebK;OU3f^@3qJ1BDI*2_uT5gs>+-I%w zWO*&0nva?%!@05aJp;T6CNgts<90dwb#olVhr70GwCn=`xIujU(>UNJ*9MOaXtuo3 zKcG2pvR|cJC|)?a(93Cq`?Slc zffMI<8_v{U46^3vPU4O?37h4XvNQZC)k9kD>47Si+aS4EAKS0`T@#$t1;vV|v(1V7 ztiY@?Rpg>|bs-OkoT5kKL9zX$q7|DSce>9qR=9s(U#AX&Twrjd!CxzCO5*6tr(gG_ zz67N9v&zq4G5f_W966-q!gsCLBpSH+p?4R=K7TqL2>W<@Hf7;zU#xxtIzBcJGq)C<6f#-W5K0f zB_Gy-YJ8{8$Wx0-NrEseuli+f;=-uOWu#_LP(1>RoJN{734sjZ#B@kA3P0L6nG^W>1G` z!64wYteL_MERHQ7U`mKy9rgXi@o)*mT*(&liWY>? zX!aNvJD0ou>>*osYu-@^k&uxx-Nz~-oXQ&21UC1pYap_~b zosi#gGv^XK(1x(lu|tRUpQr}CKeZ;Xu6nakarHIE8{B)j3#Dh_OJhQ={bIl9xh~Y- zX}-ZA?O>~(Ss0+mF%>#xB7e6!#CUe2)1Y`o8asbJ?y1Wse{X=Wm{!xhIn%f0u0 zC>*$|jz4QaTd`8y&F_9MgJ(-4TSBeDJbrx&Yk#c?lX3OcPdhk#;J$!&CL6oZ41Hr#l%^C9`beF z^F=k*#Kl?e4z_2HbGzyY=k$cFZz-;iTt?hNi0U0L?Fh9lTvlog7Mu9>r7O@UD_bJn zdiIMk)X()3yU?uAq#K?hV+sM$BE>zWl<##u@jz(oGV8JZm0LWS43yT(8W}8o{Ue`& zN^5@QP))RZ1#F0S-(o>zx1@S(Kr@1Sw=fX>J|J-NPmTun-O)ENEjF#*9;>;ERI+IW zw@8@8od5B5wNv`XlK561qp2$d@5@G6M7obhC_4REHm}l*p+u;Cr2pwiNRIa|8DqrK zqY$7V123B`>*jaE>Y+o}tC3`2IW59=WAxLGbre&yW+;~P2}lLX^74KZE9Nm_P-_|pcLpKDS8ure+}J+f)-x{Jx`!)mfjszf zX4}!jpIhNS4cTZCdLSReS8*YJmJ@~X(6y6mCNov$>pAK@G#4ubv0lfFyOE`nyuYvk zcFViNBe!UZuG^d^n+p-Uwd`y>##oUE&E#Jz^F3L*HIqS;Gi##7au6+a9MhfS=;-;) zwzt9hJ;*NkmJw{`+UczO(M9rk{BZ_F(J!oZTk-V8e&eYpA`^JdU5NNew@Y#y%%r+N_(x7^3+AdnqZO8fp_%0zUM)u#ntHVEllXX1QcsGXL?xeou<}k|* zN%X!w%vw^d9)7f(tbg;W1^OIZ^yYfO)@4*&QW8uB>|1OEyZNo0pAxy}ey3vhpE#hN z@}1%HHM@?KoRfSJZBG0CR8Dg+^N7oL=3DP7)FK(%bmMP^g?8+sr9T>m4IQ5Y=`Mz4 z$<}`rYg|_lC0{~=R2&}ZzGKarEJNmq9LaIn!3VS}zb)9O`#;U!xW=wl_wtE1k$E~Z z`XN;h^ME1Y&DO+5(x4g;DK3KJH<28v*uB^$iUr@cZ%M`LwYF~Csr>Uj2P~-PyN`T+ zk%7JD69I&J)wG%x9(~8t48=nUjy-6qrr$P?<_NnJ%~_lG^wR}0>X*3J1G&Ope_gs%1aV`=?8QtaIV!(?rh7pWZiDQ+(2;H2RJIs*YhOJ&&-ZBAesg zX#}Nqr9k*{W}h6-ISWiB|4c4Qcu?}*gKnzOJkt@?wiM>#Mu?N<7E%QaRRp`v0DTFAu zyM_&O<3eC@1CcvdX9|CA{q`5vxM{{4ShQh}f0Bm3=#Pm6$d%@w8S4V$ABU=;TawL`bUjmhXadmk( z$2pMC-w8>T{C?wsmcHY?0_O#TN;)&PB|>sx93rZQC2FCkAYFX=ZIoM{oW~Sh|6KBoKk2NpG@o$29nwe4lq?M`W@ei zMpEV2&7PSn8+GgJ8!T>03+re;-W582bNe}VLS@VGVQbDUYhq&Fn%s7bMBTNm=1APx z&!~E>Y4`VRL6{!n#^YVc63Y`6k5dpNRo4{jAmc(f@x_>YTXP_SwYtj`1nH3cs3hUH z-N*OghYC?DGv+1DkKk^r55lZzswIwWqT`R|&)XmaVZ?k{@*k5>8q2%_kG$Q&#mn~o zc@RcpY(#0C^|Qd--Ipq&T6!VpwadV-`UNauhN|5!4H*x8B83z&z^MHXcKL?v3m1F# zaFpVx$ykqV-6{c|aG2k9`;b7FmSdjHIYoW`ZK?o`#we9)1e{gZyyPozmv}QC$-hHM zY_6*|T!b8C{m}k>sLZBV<8E2R5#$27|9e@}LF6pV(2@gQ(R|({Q$aq?nj7(sl@n@N zO^O6F_gpmht--Iv=vnbhT}31<(vl25t;3RM+5#ncsgl96o;h&^gD{%LxnG#Z3V*QxvKAmeHC&&os$0Xd+V>E2>zT1$CZoK^!(G}Z%knHYI{VdhR#r4(? zPGkgngF|aa^BunbxRtbdodZ}EMH-dSwPxPY;OC6~Ko$&g9l8C=@ok%(Z&hz8w5onG zF47numLMo&nt4)xS|y=I+K$s=#%iX2p2 ztpL8#Z|27CM)BK4$ZNGXeIpCC7y8jYG^TTU7AT;P3Ct~p=~v2Xm{)yi6fnZZA=<9nH5f~R3aQZ>Fj#F&RjlaDa3sBYftS1__eg#%)Zuh-2>Wss?_D_$!?GA zJ(hIz$p-~tr4#<8xi%9GYX_^;u8uqln?c9w6ZBk0{McB|-PePOZE(GELT!JtL-nAx zpC}~a(k6?Dhl@9~tm$*WOZ#4}yP_@HDrWBG%uEaIE#f^C97gC;NZ(jVyWs71?-Vc+ z_)tGNo5y@ltb?*9_?|M=J=qKhF|H$pIL;RIgW$9H5;K)wnwwKZln>i=Jf%Obx+bR# z=Oc?)O&N8qow&8JSLEigx)uxg2D>J;%fEKPNx0*CF5@+L72qq zS|l@kz%iM-=Ma_M9hHw+e66T;9~^q(UE&Rcux78A1P$|OCt!&cS>knToRO^WScCAj z>5#(~718!8)i01P3M8IB8vl|B%yf*ca>8aluXij`_&EXP{D6I1n{l8k+F7jKrdE(Mx*w1_M0U6SpGAg z%)&z9*BGCk)|rJa6_i5hyy`*jh**lT7B7KU(hf3qp85<@a6Nhs38yBw@J+^e@s=zG zKR;Q_0K#@voHa{&VLU(G;dgkC+l;aG=_;b;U)n*?DJU*_Gyug)oL~#T*S&QLLpaOQ z)#Zt`4(*nZETT9%>^H}nt0A1$W{$BN2>YtQl$LlVa%$NxH8wGb%JN|F$;2iTrlaw= zvpS1hRm|dnAterIFXS#Xe3*?B4l?h+Exmkxv<^m2T&?$hTiOsGykgvAEL2gpk4Ds- zl9iY79y-hd`Xr0sQtb-MwrksiHFW`UX8#ZP6=W7@`n{Y1no|; z*i1L?6mKc8*GOL1g;Eegsi|ReKE&59u`nx9rCLkZE~%40?JZ_^MdckFVG@@zvcF$EktN9;C8M98hxO*^rldSHP0rsyMw;k$$lsW^%St~$ z@S)0QaQ6p~A2-(H_0&ak=t1NYC>2jWQQ^9otpa2xkpJch=onl-zVCi@6PJtPEfsDt zkfCE|Rdfg@e}+XBN83-YE7S3d54ntWw6FQJvQRSNj*uaQS~Yg_B@_YSPZ0h>iJkF1 zAtr-GSesK&jk{*z6Ts|6$va)lzcY(- zf?4?FxBy{?S6V3Xw>I!v%a9@gM2{7_O9G@_!>e`; zFdaRi^4)dv>HgC(LIVUxVnp!^)k~g#Fi5X{@!RIc=0&|RDm`E`ENj7Nb|ceI(5}Mc%D}Z8_+F_PM|et z>DH#tEIVJrcZx|;U4TBW^}TA~{C7adJ--{gm;cP_QrB{RTQ4Zni-Xh&C7K}NB( z!2-#cQk^p6@lTy-TLoGTQx2$Y-X_b^*&do0MSnU|kgrPaTTfhi%CsT^!XZL&F}NPr zcAEY$@L5(UHuqxQi?n%4N_v1g?M|axx2Nb30JlmR1oeFOyQ>Fl_L;yWS~^L1x1)Ba z)qSS;dzU)&NnCa&XQX1^xVGv(i!Uw`2n)5y_KTjoA>S|xBCAv5DKS1VfabBVY+AYC z*&6_T%5qgfw?8d6J@yH~p{EJWS^e^$AZsu&YMr1ph$tnxJ_W{k6a8|^By(d;ISWa^ z7ZacA*~I9PUm0X*h4r;j7>2c<5}B7U>N7ATK~%Kxj%+AL05)d4BBIgYC3Y5 zEo*q_E%1hMHT9%cE)Pdi#^*^@fHz zCenj4;5F*tn%i2)wxt92eWKA4w0fc;ERP$jzeA*z72Kx|Q> zunJJ{Dm2wdjG5%=3h^O|r-TNY&MNa!lklBveCAaB`JYEkn2n^m&{ePsZF<5Ez_)tr z?z8QVQiM_5n#kpq?5W!1dd(QD&3l8j*P*v(*&ZC<3E|hiy5ysWz?+63PYa-+j zU5Q3^pMm~XKy%#*Ny`ygj+Ll3=xEvkSzY8b^jFP_7>VwLMZSaTO zSh|hYJ(BLMDhM!@}jLF%waE{8=WXLwvSEKlA4T6Qe5FK;ANtoBrhK zJ{nL1VCG^)s^hXn%*UlZHs+#QmT?Y6@EjQkf4kT1JuuMkbTM7yQTztm3`zouN-M@~ z{i@=f7A5{+8m%~UA9va5H(nTs!M?y6nr5n|mOmNVvB}1@Ib6Nbs7J>~_pKH)Eu{18 zyf&RofutzHtSeH-HcugTTDLwlLh9FkawPE)4KLI+upd*OE!Qs ztkt(XgIZdi?Ox^S$dY@wD*@U}Ej=~lzlusgnEHLHy^ZH`?D*b%8;nuB@|V6_*D<4_ z4&GZ%0AAh;=wKWLpARen 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 literal 0 HcmV?d00001 diff --git a/img/beacon-ios-pairing.png b/img/beacon-ios-pairing.png new file mode 100644 index 0000000000000000000000000000000000000000..edc285941f554d3f346d0d9518e433f49cd42177 GIT binary patch literal 90671 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